diff --git a/asm/memcpy_strlen_strchr_0CED70.s b/asm/memcpy_strlen_strchr_0CED70.s deleted file mode 100755 index 57651cef..00000000 --- a/asm/memcpy_strlen_strchr_0CED70.s +++ /dev/null @@ -1,62 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel memcpy -/* 0CED70 800CE170 00801025 */ move $v0, $a0 -/* 0CED74 800CE174 10C00007 */ beqz $a2, .L800CE194 -/* 0CED78 800CE178 00A01825 */ move $v1, $a1 -.L800CE17C: -/* 0CED7C 800CE17C 906E0000 */ lbu $t6, ($v1) -/* 0CED80 800CE180 24C6FFFF */ addiu $a2, $a2, -1 -/* 0CED84 800CE184 24420001 */ addiu $v0, $v0, 1 -/* 0CED88 800CE188 24630001 */ addiu $v1, $v1, 1 -/* 0CED8C 800CE18C 14C0FFFB */ bnez $a2, .L800CE17C -/* 0CED90 800CE190 A04EFFFF */ sb $t6, -1($v0) -.L800CE194: -/* 0CED94 800CE194 03E00008 */ jr $ra -/* 0CED98 800CE198 00801025 */ move $v0, $a0 - -glabel strlen -/* 0CED9C 800CE19C 908E0000 */ lbu $t6, ($a0) -/* 0CEDA0 800CE1A0 00801825 */ move $v1, $a0 -/* 0CEDA4 800CE1A4 11C00005 */ beqz $t6, .L800CE1BC -/* 0CEDA8 800CE1A8 00000000 */ nop -/* 0CEDAC 800CE1AC 906F0001 */ lbu $t7, 1($v1) -.L800CE1B0: -/* 0CEDB0 800CE1B0 24630001 */ addiu $v1, $v1, 1 -/* 0CEDB4 800CE1B4 55E0FFFE */ bnezl $t7, .L800CE1B0 -/* 0CEDB8 800CE1B8 906F0001 */ lbu $t7, 1($v1) -.L800CE1BC: -/* 0CEDBC 800CE1BC 03E00008 */ jr $ra -/* 0CEDC0 800CE1C0 00641023 */ subu $v0, $v1, $a0 - -glabel strchr -/* 0CEDC4 800CE1C4 90830000 */ lbu $v1, ($a0) -/* 0CEDC8 800CE1C8 30AE00FF */ andi $t6, $a1, 0xff -/* 0CEDCC 800CE1CC 30A200FF */ andi $v0, $a1, 0xff -/* 0CEDD0 800CE1D0 51C3000A */ beql $t6, $v1, .L800CE1FC -/* 0CEDD4 800CE1D4 00801025 */ move $v0, $a0 -.L800CE1D8: -/* 0CEDD8 800CE1D8 54600004 */ bnezl $v1, .L800CE1EC -/* 0CEDDC 800CE1DC 90830001 */ lbu $v1, 1($a0) -/* 0CEDE0 800CE1E0 03E00008 */ jr $ra -/* 0CEDE4 800CE1E4 00001025 */ move $v0, $zero - -/* 0CEDE8 800CE1E8 90830001 */ lbu $v1, 1($a0) -.L800CE1EC: -/* 0CEDEC 800CE1EC 24840001 */ addiu $a0, $a0, 1 -/* 0CEDF0 800CE1F0 1443FFF9 */ bne $v0, $v1, .L800CE1D8 -/* 0CEDF4 800CE1F4 00000000 */ nop -/* 0CEDF8 800CE1F8 00801025 */ move $v0, $a0 -.L800CE1FC: -/* 0CEDFC 800CE1FC 03E00008 */ jr $ra -/* 0CEE00 800CE200 00000000 */ nop - -/* 0CEE04 800CE204 00000000 */ nop -/* 0CEE08 800CE208 00000000 */ nop -/* 0CEE0C 800CE20C 00000000 */ nop diff --git a/asm/entrypoint_001000.s b/asm/non_matchings/entrypoint_001000/EntryPoint.s old mode 100755 new mode 100644 similarity index 85% rename from asm/entrypoint_001000.s rename to asm/non_matchings/entrypoint_001000/EntryPoint.s index bc71ffdc..8d80253a --- a/asm/entrypoint_001000.s +++ b/asm/non_matchings/entrypoint_001000/EntryPoint.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel EntryPoint /* 001000 80000400 3C08800F */ lui $t0, %hi(D_800EBF60) # $t0, 0x800f /* 001004 80000404 3C090004 */ lui $t1, (0x00041490 >> 16) # lui $t1, 4 @@ -28,3 +20,4 @@ glabel EntryPoint /* 001044 80000444 00000000 */ nop /* 001048 80000448 00000000 */ nop /* 00104C 8000044C 00000000 */ nop + diff --git a/asm/non_matchings/memcpy_strlen_strchr_0CED70/memcpy.s b/asm/non_matchings/memcpy_strlen_strchr_0CED70/memcpy.s new file mode 100644 index 00000000..f7b87510 --- /dev/null +++ b/asm/non_matchings/memcpy_strlen_strchr_0CED70/memcpy.s @@ -0,0 +1,15 @@ +glabel memcpy +/* 0CED70 800CE170 00801025 */ move $v0, $a0 +/* 0CED74 800CE174 10C00007 */ beqz $a2, .L800CE194 +/* 0CED78 800CE178 00A01825 */ move $v1, $a1 +.L800CE17C: +/* 0CED7C 800CE17C 906E0000 */ lbu $t6, ($v1) +/* 0CED80 800CE180 24C6FFFF */ addiu $a2, $a2, -1 +/* 0CED84 800CE184 24420001 */ addiu $v0, $v0, 1 +/* 0CED88 800CE188 24630001 */ addiu $v1, $v1, 1 +/* 0CED8C 800CE18C 14C0FFFB */ bnez $a2, .L800CE17C +/* 0CED90 800CE190 A04EFFFF */ sb $t6, -1($v0) +.L800CE194: +/* 0CED94 800CE194 03E00008 */ jr $ra +/* 0CED98 800CE198 00801025 */ move $v0, $a0 + diff --git a/asm/non_matchings/memcpy_strlen_strchr_0CED70/strchr.s b/asm/non_matchings/memcpy_strlen_strchr_0CED70/strchr.s new file mode 100644 index 00000000..f6992119 --- /dev/null +++ b/asm/non_matchings/memcpy_strlen_strchr_0CED70/strchr.s @@ -0,0 +1,26 @@ +glabel strchr +/* 0CEDC4 800CE1C4 90830000 */ lbu $v1, ($a0) +/* 0CEDC8 800CE1C8 30AE00FF */ andi $t6, $a1, 0xff +/* 0CEDCC 800CE1CC 30A200FF */ andi $v0, $a1, 0xff +/* 0CEDD0 800CE1D0 51C3000A */ beql $t6, $v1, .L800CE1FC +/* 0CEDD4 800CE1D4 00801025 */ move $v0, $a0 +.L800CE1D8: +/* 0CEDD8 800CE1D8 54600004 */ bnezl $v1, .L800CE1EC +/* 0CEDDC 800CE1DC 90830001 */ lbu $v1, 1($a0) +/* 0CEDE0 800CE1E0 03E00008 */ jr $ra +/* 0CEDE4 800CE1E4 00001025 */ move $v0, $zero + +/* 0CEDE8 800CE1E8 90830001 */ lbu $v1, 1($a0) +.L800CE1EC: +/* 0CEDEC 800CE1EC 24840001 */ addiu $a0, $a0, 1 +/* 0CEDF0 800CE1F0 1443FFF9 */ bne $v0, $v1, .L800CE1D8 +/* 0CEDF4 800CE1F4 00000000 */ nop +/* 0CEDF8 800CE1F8 00801025 */ move $v0, $a0 +.L800CE1FC: +/* 0CEDFC 800CE1FC 03E00008 */ jr $ra +/* 0CEE00 800CE200 00000000 */ nop + +/* 0CEE04 800CE204 00000000 */ nop +/* 0CEE08 800CE208 00000000 */ nop +/* 0CEE0C 800CE20C 00000000 */ nop + diff --git a/asm/non_matchings/memcpy_strlen_strchr_0CED70/strlen.s b/asm/non_matchings/memcpy_strlen_strchr_0CED70/strlen.s new file mode 100644 index 00000000..7281ab25 --- /dev/null +++ b/asm/non_matchings/memcpy_strlen_strchr_0CED70/strlen.s @@ -0,0 +1,14 @@ +glabel strlen +/* 0CED9C 800CE19C 908E0000 */ lbu $t6, ($a0) +/* 0CEDA0 800CE1A0 00801825 */ move $v1, $a0 +/* 0CEDA4 800CE1A4 11C00005 */ beqz $t6, .L800CE1BC +/* 0CEDA8 800CE1A8 00000000 */ nop +/* 0CEDAC 800CE1AC 906F0001 */ lbu $t7, 1($v1) +.L800CE1B0: +/* 0CEDB0 800CE1B0 24630001 */ addiu $v1, $v1, 1 +/* 0CEDB4 800CE1B4 55E0FFFE */ bnezl $t7, .L800CE1B0 +/* 0CEDB8 800CE1B8 906F0001 */ lbu $t7, 1($v1) +.L800CE1BC: +/* 0CEDBC 800CE1BC 03E00008 */ jr $ra +/* 0CEDC0 800CE1C0 00641023 */ subu $v0, $v1, $a0 + diff --git a/asm/osCreateThread_0C9450.s b/asm/non_matchings/osCreateThread_0C9450/osCreateThread.s old mode 100755 new mode 100644 similarity index 95% rename from asm/osCreateThread_0C9450.s rename to asm/non_matchings/osCreateThread_0C9450/osCreateThread.s index 4980df10..e6a12776 --- a/asm/osCreateThread_0C9450.s +++ b/asm/non_matchings/osCreateThread_0C9450/osCreateThread.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel osCreateThread /* 0C9450 800C8850 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0C9454 800C8854 AFA40028 */ sw $a0, 0x28($sp) @@ -92,3 +84,4 @@ glabel osCreateThread /* 0C9594 800C8994 00000000 */ nop /* 0C9598 800C8998 00000000 */ nop /* 0C959C 800C899C 00000000 */ nop + diff --git a/asm/osEepromRead_0CEE80.s b/asm/non_matchings/osEepromRead_0CEE80/osEepromRead.s old mode 100755 new mode 100644 similarity index 97% rename from asm/osEepromRead_0CEE80.s rename to asm/non_matchings/osEepromRead_0CEE80/osEepromRead.s index f56b3592..21a418f8 --- a/asm/osEepromRead_0CEE80.s +++ b/asm/non_matchings/osEepromRead_0CEE80/osEepromRead.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel osEepromRead /* 0CEE80 800CE280 27BDFFC8 */ addiu $sp, $sp, -0x38 /* 0CEE84 800CE284 AFA5003C */ sw $a1, 0x3c($sp) @@ -141,3 +133,4 @@ glabel osEepromRead /* 0CF064 800CE464 27BD0038 */ addiu $sp, $sp, 0x38 /* 0CF068 800CE468 03E00008 */ jr $ra /* 0CF06C 800CE46C 00000000 */ nop + diff --git a/asm/osEepromWrite_0CF180.s b/asm/non_matchings/osEepromWrite_0CF180/osEepromWrite.s old mode 100755 new mode 100644 similarity index 96% rename from asm/osEepromWrite_0CF180.s rename to asm/non_matchings/osEepromWrite_0CF180/osEepromWrite.s index f1e604a5..759f639b --- a/asm/osEepromWrite_0CF180.s +++ b/asm/non_matchings/osEepromWrite_0CF180/osEepromWrite.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel osEepromWrite /* 0CF180 800CE580 27BDFFC8 */ addiu $sp, $sp, -0x38 /* 0CF184 800CE584 AFA5003C */ sw $a1, 0x3c($sp) @@ -123,3 +115,4 @@ glabel osEepromWrite /* 0CF324 800CE724 27BD0038 */ addiu $sp, $sp, 0x38 /* 0CF328 800CE728 03E00008 */ jr $ra /* 0CF32C 800CE72C 00000000 */ nop + diff --git a/asm/osSetEventMsg_0CD7B0.s b/asm/non_matchings/osSetEventMsg_0CD7B0/osSetEventMsg.s old mode 100755 new mode 100644 similarity index 87% rename from asm/osSetEventMsg_0CD7B0.s rename to asm/non_matchings/osSetEventMsg_0CD7B0/osSetEventMsg.s index d1e5b76a..8a2be78c --- a/asm/osSetEventMsg_0CD7B0.s +++ b/asm/non_matchings/osSetEventMsg_0CD7B0/osSetEventMsg.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel osSetEventMsg /* 0CD7B0 800CCBB0 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0CD7B4 800CCBB4 AFBF001C */ sw $ra, 0x1c($sp) @@ -36,3 +28,4 @@ glabel osSetEventMsg /* 0CD818 800CCC18 00000000 */ nop /* 0CD81C 800CCC1C 00000000 */ nop + diff --git a/asm/osSetTime_0CDE60.s b/asm/non_matchings/osSetTime_0CDE60/osSetTime.s old mode 100755 new mode 100644 similarity index 75% rename from asm/osSetTime_0CDE60.s rename to asm/non_matchings/osSetTime_0CDE60/osSetTime.s index 7a1da3d3..2c7d89a6 --- a/asm/osSetTime_0CDE60.s +++ b/asm/non_matchings/osSetTime_0CDE60/osSetTime.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel osSetTime /* 0CDE60 800CD260 AFA40000 */ sw $a0, ($sp) /* 0CDE64 800CD264 8FAE0000 */ lw $t6, ($sp) @@ -20,3 +12,4 @@ glabel osSetTime /* 0CDE84 800CD284 00000000 */ nop /* 0CDE88 800CD288 00000000 */ nop /* 0CDE8C 800CD28C 00000000 */ nop + diff --git a/asm/osStartThread_0C95A0.s b/asm/non_matchings/osStartThread_0C95A0/osStartThread.s old mode 100755 new mode 100644 similarity index 95% rename from asm/osStartThread_0C95A0.s rename to asm/non_matchings/osStartThread_0C95A0/osStartThread.s index 244af3f0..290a89ea --- a/asm/osStartThread_0C95A0.s +++ b/asm/non_matchings/osStartThread_0C95A0/osStartThread.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel osStartThread /* 0C95A0 800C89A0 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0C95A4 800C89A4 AFBF001C */ sw $ra, 0x1c($sp) @@ -97,3 +89,4 @@ glabel osStartThread /* 0C96E4 800C8AE4 8FB10018 */ lw $s1, 0x18($sp) /* 0C96E8 800C8AE8 03E00008 */ jr $ra /* 0C96EC 800C8AEC 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/osViSetEventMsg_0D2980.s b/asm/non_matchings/osViSetEventMsg_0D2980/osViSetEventMsg.s old mode 100755 new mode 100644 similarity index 88% rename from asm/osViSetEventMsg_0D2980.s rename to asm/non_matchings/osViSetEventMsg_0D2980/osViSetEventMsg.s index 50873fa2..9f1687c1 --- a/asm/osViSetEventMsg_0D2980.s +++ b/asm/non_matchings/osViSetEventMsg_0D2980/osViSetEventMsg.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel osViSetEventMsg /* 0D2980 800D1D80 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0D2984 800D1D84 AFBF001C */ sw $ra, 0x1c($sp) @@ -36,3 +28,4 @@ glabel osViSetEventMsg /* 0D29E8 800D1DE8 00000000 */ nop /* 0D29EC 800D1DEC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80031B60.s b/asm/non_matchings/unknown_032760/func_80031B60.s new file mode 100644 index 00000000..cd026180 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80031B60.s @@ -0,0 +1,25 @@ +glabel func_80031B60 +/* 032760 80031B60 3C04800E */ lui $a0, %hi(D_800DC950) # $a0, 0x800e +/* 032764 80031B64 8C84C950 */ lw $a0, %lo(D_800DC950)($a0) +/* 032768 80031B68 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 03276C 80031B6C 1080000B */ beqz $a0, .L80031B9C +/* 032770 80031B70 AFBF0014 */ sw $ra, 0x14($sp) +/* 032774 80031B74 0C01C450 */ jal func_80071140 +/* 032778 80031B78 00000000 */ nop +/* 03277C 80031B7C 3C01800E */ lui $at, %hi(D_800DC950) # $at, 0x800e +/* 032780 80031B80 AC20C950 */ sw $zero, %lo(D_800DC950)($at) +/* 032784 80031B84 3C01800E */ lui $at, %hi(D_800DC954) # $at, 0x800e +/* 032788 80031B88 AC20C954 */ sw $zero, %lo(D_800DC954)($at) +/* 03278C 80031B8C 3C01800E */ lui $at, %hi(D_800DC960) # $at, 0x800e +/* 032790 80031B90 AC20C960 */ sw $zero, %lo(D_800DC960)($at) +/* 032794 80031B94 3C01800E */ lui $at, %hi(D_800DC964) # $at, 0x800e +/* 032798 80031B98 AC20C964 */ sw $zero, %lo(D_800DC964)($at) +.L80031B9C: +/* 03279C 80031B9C 3C01800E */ lui $at, %hi(D_800DC95C) # $at, 0x800e +/* 0327A0 80031BA0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0327A4 80031BA4 AC20C95C */ sw $zero, %lo(D_800DC95C)($at) +/* 0327A8 80031BA8 3C01800E */ lui $at, %hi(D_800DC958) # $at, 0x800e +/* 0327AC 80031BAC AC20C958 */ sw $zero, %lo(D_800DC958)($at) +/* 0327B0 80031BB0 03E00008 */ jr $ra +/* 0327B4 80031BB4 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_032760/func_80031BB8.s b/asm/non_matchings/unknown_032760/func_80031BB8.s new file mode 100644 index 00000000..9d9c6d9f --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80031BB8.s @@ -0,0 +1,65 @@ +glabel func_80031BB8 +/* 0327B8 80031BB8 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0327BC 80031BBC AFBF0014 */ sw $ra, 0x14($sp) +/* 0327C0 80031BC0 0C00C6D8 */ jal func_80031B60 +/* 0327C4 80031BC4 AFA40018 */ sw $a0, 0x18($sp) +/* 0327C8 80031BC8 8FAE0018 */ lw $t6, 0x18($sp) +/* 0327CC 80031BCC 3C06800E */ lui $a2, %hi(D_800DC958) # $a2, 0x800e +/* 0327D0 80031BD0 000E7880 */ sll $t7, $t6, 2 +/* 0327D4 80031BD4 01EE7823 */ subu $t7, $t7, $t6 +/* 0327D8 80031BD8 000F7880 */ sll $t7, $t7, 2 +/* 0327DC 80031BDC 01EE7823 */ subu $t7, $t7, $t6 +/* 0327E0 80031BE0 000F7880 */ sll $t7, $t7, 2 +/* 0327E4 80031BE4 24C6C958 */ addiu $a2, %lo(D_800DC958) # addiu $a2, $a2, -0x36a8 +/* 0327E8 80031BE8 3C05FF00 */ lui $a1, (0xFF00FFFF >> 16) # lui $a1, 0xff00 +/* 0327EC 80031BEC 01EE7823 */ subu $t7, $t7, $t6 +/* 0327F0 80031BF0 000F2080 */ sll $a0, $t7, 2 +/* 0327F4 80031BF4 34A5FFFF */ ori $a1, (0xFF00FFFF & 0xFFFF) # ori $a1, $a1, 0xffff +/* 0327F8 80031BF8 0C01C327 */ jal func_80070C9C +/* 0327FC 80031BFC ACCE0000 */ sw $t6, ($a2) +/* 032800 80031C00 3C06800E */ lui $a2, %hi(D_800DC958) # $a2, 0x800e +/* 032804 80031C04 24C6C958 */ addiu $a2, %lo(D_800DC958) # addiu $a2, $a2, -0x36a8 +/* 032808 80031C08 8CC80000 */ lw $t0, ($a2) +/* 03280C 80031C0C 3C05800E */ lui $a1, %hi(D_800DC954) # $a1, 0x800e +/* 032810 80031C10 00085900 */ sll $t3, $t0, 4 +/* 032814 80031C14 0008C080 */ sll $t8, $t0, 2 +/* 032818 80031C18 01685821 */ addu $t3, $t3, $t0 +/* 03281C 80031C1C 0058C821 */ addu $t9, $v0, $t8 +/* 032820 80031C20 000B58C0 */ sll $t3, $t3, 3 +/* 032824 80031C24 00087080 */ sll $t6, $t0, 2 +/* 032828 80031C28 3C07800E */ lui $a3, %hi(D_800DC950) # $a3, 0x800e +/* 03282C 80031C2C 3C09800E */ lui $t1, %hi(D_800DC960) # $t1, 0x800e +/* 032830 80031C30 032B6021 */ addu $t4, $t9, $t3 +/* 032834 80031C34 01C87021 */ addu $t6, $t6, $t0 +/* 032838 80031C38 2529C960 */ addiu $t1, %lo(D_800DC960) # addiu $t1, $t1, -0x36a0 +/* 03283C 80031C3C 24E7C950 */ addiu $a3, %lo(D_800DC950) # addiu $a3, $a3, -0x36b0 +/* 032840 80031C40 24A5C954 */ addiu $a1, %lo(D_800DC954) # addiu $a1, $a1, -0x36ac +/* 032844 80031C44 000E7080 */ sll $t6, $t6, 2 +/* 032848 80031C48 ACE20000 */ sw $v0, ($a3) +/* 03284C 80031C4C ACB90000 */ sw $t9, ($a1) +/* 032850 80031C50 AD2C0000 */ sw $t4, ($t1) +/* 032854 80031C54 018E7821 */ addu $t7, $t4, $t6 +/* 032858 80031C58 3C01800E */ lui $at, %hi(D_800DC964) # $at, 0x800e +/* 03285C 80031C5C AC2FC964 */ sw $t7, %lo(D_800DC964)($at) +/* 032860 80031C60 1900000E */ blez $t0, .L80031C9C +/* 032864 80031C64 00001825 */ move $v1, $zero +/* 032868 80031C68 00001025 */ move $v0, $zero +/* 03286C 80031C6C 00002025 */ move $a0, $zero +.L80031C70: +/* 032870 80031C70 8CB80000 */ lw $t8, ($a1) +/* 032874 80031C74 8CEA0000 */ lw $t2, ($a3) +/* 032878 80031C78 0098C821 */ addu $t9, $a0, $t8 +/* 03287C 80031C7C 01425821 */ addu $t3, $t2, $v0 +/* 032880 80031C80 AD790000 */ sw $t9, ($t3) +/* 032884 80031C84 8CCC0000 */ lw $t4, ($a2) +/* 032888 80031C88 24630001 */ addiu $v1, $v1, 1 +/* 03288C 80031C8C 006C082A */ slt $at, $v1, $t4 +/* 032890 80031C90 24420004 */ addiu $v0, $v0, 4 +/* 032894 80031C94 1420FFF6 */ bnez $at, .L80031C70 +/* 032898 80031C98 24840088 */ addiu $a0, $a0, 0x88 +.L80031C9C: +/* 03289C 80031C9C 8FBF0014 */ lw $ra, 0x14($sp) +/* 0328A0 80031CA0 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0328A4 80031CA4 03E00008 */ jr $ra +/* 0328A8 80031CA8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80031CAC.s b/asm/non_matchings/unknown_032760/func_80031CAC.s new file mode 100644 index 00000000..1bddc3f0 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80031CAC.s @@ -0,0 +1,194 @@ +glabel func_80031CAC +/* 0328AC 80031CAC 3C03800E */ lui $v1, %hi(D_800DC95C) # $v1, 0x800e +/* 0328B0 80031CB0 2463C95C */ addiu $v1, %lo(D_800DC95C) # addiu $v1, $v1, -0x36a4 +/* 0328B4 80031CB4 3C0E800E */ lui $t6, %hi(D_800DC958) # $t6, 0x800e +/* 0328B8 80031CB8 8DCEC958 */ lw $t6, %lo(D_800DC958)($t6) +/* 0328BC 80031CBC 8C620000 */ lw $v0, ($v1) +/* 0328C0 80031CC0 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0328C4 80031CC4 004E082A */ slt $at, $v0, $t6 +/* 0328C8 80031CC8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0328CC 80031CCC 102000AA */ beqz $at, .L80031F78 +/* 0328D0 80031CD0 00003025 */ move $a2, $zero +/* 0328D4 80031CD4 3C0F800E */ lui $t7, %hi(D_800DC950) # $t7, 0x800e +/* 0328D8 80031CD8 8DEFC950 */ lw $t7, %lo(D_800DC950)($t7) +/* 0328DC 80031CDC 0002C080 */ sll $t8, $v0, 2 +/* 0328E0 80031CE0 01F8C821 */ addu $t9, $t7, $t8 +/* 0328E4 80031CE4 8F260000 */ lw $a2, ($t9) +/* 0328E8 80031CE8 24490001 */ addiu $t1, $v0, 1 +/* 0328EC 80031CEC AC690000 */ sw $t1, ($v1) +/* 0328F0 80031CF0 90AA0008 */ lbu $t2, 8($a1) +/* 0328F4 80031CF4 00000000 */ nop +/* 0328F8 80031CF8 314B00F0 */ andi $t3, $t2, 0xf0 +/* 0328FC 80031CFC 000B6103 */ sra $t4, $t3, 4 +/* 032900 80031D00 A0CC0000 */ sb $t4, ($a2) +/* 032904 80031D04 90AD0008 */ lbu $t5, 8($a1) +/* 032908 80031D08 240B0001 */ li $t3, 1 +/* 03290C 80031D0C 31AE000F */ andi $t6, $t5, 0xf +/* 032910 80031D10 A0CE0003 */ sb $t6, 3($a2) +/* 032914 80031D14 90AF0009 */ lbu $t7, 9($a1) +/* 032918 80031D18 00000000 */ nop +/* 03291C 80031D1C 31F800E0 */ andi $t8, $t7, 0xe0 +/* 032920 80031D20 0018C943 */ sra $t9, $t8, 5 +/* 032924 80031D24 A0D90001 */ sb $t9, 1($a2) +/* 032928 80031D28 90A90009 */ lbu $t1, 9($a1) +/* 03292C 80031D2C A0CB0004 */ sb $t3, 4($a2) +/* 032930 80031D30 312A001F */ andi $t2, $t1, 0x1f +/* 032934 80031D34 A0CA0002 */ sb $t2, 2($a2) +/* 032938 80031D38 ACC0000C */ sw $zero, 0xc($a2) +/* 03293C 80031D3C A4C00006 */ sh $zero, 6($a2) +/* 032940 80031D40 A4C00008 */ sh $zero, 8($a2) +/* 032944 80031D44 1080000A */ beqz $a0, .L80031D70 +/* 032948 80031D48 A4C0000A */ sh $zero, 0xa($a2) +/* 03294C 80031D4C C484000C */ lwc1 $f4, 0xc($a0) +/* 032950 80031D50 00000000 */ nop +/* 032954 80031D54 E4C40010 */ swc1 $f4, 0x10($a2) +/* 032958 80031D58 C4860010 */ lwc1 $f6, 0x10($a0) +/* 03295C 80031D5C 00000000 */ nop +/* 032960 80031D60 E4C60014 */ swc1 $f6, 0x14($a2) +/* 032964 80031D64 C4880014 */ lwc1 $f8, 0x14($a0) +/* 032968 80031D68 10000013 */ b .L80031DB8 +/* 03296C 80031D6C E4C80018 */ swc1 $f8, 0x18($a2) +.L80031D70: +/* 032970 80031D70 84AC0002 */ lh $t4, 2($a1) +/* 032974 80031D74 00000000 */ nop +/* 032978 80031D78 448C5000 */ mtc1 $t4, $f10 +/* 03297C 80031D7C 00000000 */ nop +/* 032980 80031D80 46805420 */ cvt.s.w $f16, $f10 +/* 032984 80031D84 E4D00010 */ swc1 $f16, 0x10($a2) +/* 032988 80031D88 84AD0004 */ lh $t5, 4($a1) +/* 03298C 80031D8C 00000000 */ nop +/* 032990 80031D90 448D9000 */ mtc1 $t5, $f18 +/* 032994 80031D94 00000000 */ nop +/* 032998 80031D98 46809120 */ cvt.s.w $f4, $f18 +/* 03299C 80031D9C E4C40014 */ swc1 $f4, 0x14($a2) +/* 0329A0 80031DA0 84AE0006 */ lh $t6, 6($a1) +/* 0329A4 80031DA4 00000000 */ nop +/* 0329A8 80031DA8 448E3000 */ mtc1 $t6, $f6 +/* 0329AC 80031DAC 00000000 */ nop +/* 0329B0 80031DB0 46803220 */ cvt.s.w $f8, $f6 +/* 0329B4 80031DB4 E4C80018 */ swc1 $f8, 0x18($a2) +.L80031DB8: +/* 0329B8 80031DB8 90AF000A */ lbu $t7, 0xa($a1) +/* 0329BC 80031DBC ACC0002C */ sw $zero, 0x2c($a2) +/* 0329C0 80031DC0 000FC400 */ sll $t8, $t7, 0x10 +/* 0329C4 80031DC4 ACD8001C */ sw $t8, 0x1c($a2) +/* 0329C8 80031DC8 A4C0003C */ sh $zero, 0x3c($a2) +/* 0329CC 80031DCC 90B9000B */ lbu $t9, 0xb($a1) +/* 0329D0 80031DD0 ACC00030 */ sw $zero, 0x30($a2) +/* 0329D4 80031DD4 00194C00 */ sll $t1, $t9, 0x10 +/* 0329D8 80031DD8 ACC90020 */ sw $t1, 0x20($a2) +/* 0329DC 80031DDC A4C0003E */ sh $zero, 0x3e($a2) +/* 0329E0 80031DE0 90AA000C */ lbu $t2, 0xc($a1) +/* 0329E4 80031DE4 ACC00034 */ sw $zero, 0x34($a2) +/* 0329E8 80031DE8 000A5C00 */ sll $t3, $t2, 0x10 +/* 0329EC 80031DEC ACCB0024 */ sw $t3, 0x24($a2) +/* 0329F0 80031DF0 A4C00040 */ sh $zero, 0x40($a2) +/* 0329F4 80031DF4 90AC000D */ lbu $t4, 0xd($a1) +/* 0329F8 80031DF8 ACC00038 */ sw $zero, 0x38($a2) +/* 0329FC 80031DFC 000C6C00 */ sll $t5, $t4, 0x10 +/* 032A00 80031E00 ACCD0028 */ sw $t5, 0x28($a2) +/* 032A04 80031E04 A4C00042 */ sh $zero, 0x42($a2) +/* 032A08 80031E08 ACC00044 */ sw $zero, 0x44($a2) +/* 032A0C 80031E0C 90AE001C */ lbu $t6, 0x1c($a1) +/* 032A10 80031E10 00000000 */ nop +/* 032A14 80031E14 29C10007 */ slti $at, $t6, 7 +/* 032A18 80031E18 10200020 */ beqz $at, .L80031E9C +/* 032A1C 80031E1C 00000000 */ nop +/* 032A20 80031E20 AFA50024 */ sw $a1, 0x24($sp) +/* 032A24 80031E24 0C01AF6C */ jal func_8006BDB0 +/* 032A28 80031E28 AFA60018 */ sw $a2, 0x18($sp) +/* 032A2C 80031E2C 8FA50024 */ lw $a1, 0x24($sp) +/* 032A30 80031E30 8FA60018 */ lw $a2, 0x18($sp) +/* 032A34 80031E34 90AF001C */ lbu $t7, 0x1c($a1) +/* 032A38 80031E38 2401FFFF */ li $at, -1 +/* 032A3C 80031E3C 000FC080 */ sll $t8, $t7, 2 +/* 032A40 80031E40 0058C821 */ addu $t9, $v0, $t8 +/* 032A44 80031E44 8F280074 */ lw $t0, 0x74($t9) +/* 032A48 80031E48 00001825 */ move $v1, $zero +/* 032A4C 80031E4C 11010013 */ beq $t0, $at, .L80031E9C +/* 032A50 80031E50 250A0014 */ addiu $t2, $t0, 0x14 +/* 032A54 80031E54 ACC80044 */ sw $t0, 0x44($a2) +/* 032A58 80031E58 8D090000 */ lw $t1, ($t0) +/* 032A5C 80031E5C A4C0004A */ sh $zero, 0x4a($a2) +/* 032A60 80031E60 3124FFFF */ andi $a0, $t1, 0xffff +/* 032A64 80031E64 A4C0004C */ sh $zero, 0x4c($a2) +/* 032A68 80031E68 A4C0004E */ sh $zero, 0x4e($a2) +/* 032A6C 80031E6C ACCA0044 */ sw $t2, 0x44($a2) +/* 032A70 80031E70 1880000A */ blez $a0, .L80031E9C +/* 032A74 80031E74 A4C90048 */ sh $t1, 0x48($a2) +/* 032A78 80031E78 01401025 */ move $v0, $t2 +.L80031E7C: +/* 032A7C 80031E7C 94CB004E */ lhu $t3, 0x4e($a2) +/* 032A80 80031E80 8C4C0004 */ lw $t4, 4($v0) +/* 032A84 80031E84 24630001 */ addiu $v1, $v1, 1 +/* 032A88 80031E88 0064082A */ slt $at, $v1, $a0 +/* 032A8C 80031E8C 016C6821 */ addu $t5, $t3, $t4 +/* 032A90 80031E90 A4CD004E */ sh $t5, 0x4e($a2) +/* 032A94 80031E94 1420FFF9 */ bnez $at, .L80031E7C +/* 032A98 80031E98 24420008 */ addiu $v0, $v0, 8 +.L80031E9C: +/* 032A9C 80031E9C 84AE000E */ lh $t6, 0xe($a1) +/* 032AA0 80031EA0 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 032AA4 80031EA4 448E5000 */ mtc1 $t6, $f10 +/* 032AA8 80031EA8 340BFFFF */ li $t3, 65535 +/* 032AAC 80031EAC 46805420 */ cvt.s.w $f16, $f10 +/* 032AB0 80031EB0 00C02025 */ move $a0, $a2 +/* 032AB4 80031EB4 E4D0005C */ swc1 $f16, 0x5c($a2) +/* 032AB8 80031EB8 84AF0010 */ lh $t7, 0x10($a1) +/* 032ABC 80031EBC C4C0005C */ lwc1 $f0, 0x5c($a2) +/* 032AC0 80031EC0 448F9000 */ mtc1 $t7, $f18 +/* 032AC4 80031EC4 44818000 */ mtc1 $at, $f16 +/* 032AC8 80031EC8 46809120 */ cvt.s.w $f4, $f18 +/* 032ACC 80031ECC 340FFFFF */ li $t7, 65535 +/* 032AD0 80031ED0 46008483 */ div.s $f18, $f16, $f0 +/* 032AD4 80031ED4 E4C40060 */ swc1 $f4, 0x60($a2) +/* 032AD8 80031ED8 84B80012 */ lh $t8, 0x12($a1) +/* 032ADC 80031EDC 46000282 */ mul.s $f10, $f0, $f0 +/* 032AE0 80031EE0 44983000 */ mtc1 $t8, $f6 +/* 032AE4 80031EE4 24180001 */ li $t8, 1 +/* 032AE8 80031EE8 E4CA0068 */ swc1 $f10, 0x68($a2) +/* 032AEC 80031EEC 46803220 */ cvt.s.w $f8, $f6 +/* 032AF0 80031EF0 E4D2006C */ swc1 $f18, 0x6c($a2) +/* 032AF4 80031EF4 E4C80064 */ swc1 $f8, 0x64($a2) +/* 032AF8 80031EF8 84B90014 */ lh $t9, 0x14($a1) +/* 032AFC 80031EFC 00000000 */ nop +/* 032B00 80031F00 A4D90070 */ sh $t9, 0x70($a2) +/* 032B04 80031F04 84A90018 */ lh $t1, 0x18($a1) +/* 032B08 80031F08 00000000 */ nop +/* 032B0C 80031F0C A4C90074 */ sh $t1, 0x74($a2) +/* 032B10 80031F10 84AA0018 */ lh $t2, 0x18($a1) +/* 032B14 80031F14 00000000 */ nop +/* 032B18 80031F18 11400003 */ beqz $t2, .L80031F28 +/* 032B1C 80031F1C 00000000 */ nop +/* 032B20 80031F20 10000002 */ b .L80031F2C +/* 032B24 80031F24 A4CB0078 */ sh $t3, 0x78($a2) +.L80031F28: +/* 032B28 80031F28 A4C00078 */ sh $zero, 0x78($a2) +.L80031F2C: +/* 032B2C 80031F2C 84AC0016 */ lh $t4, 0x16($a1) +/* 032B30 80031F30 00000000 */ nop +/* 032B34 80031F34 A4CC0072 */ sh $t4, 0x72($a2) +/* 032B38 80031F38 84AD001A */ lh $t5, 0x1a($a1) +/* 032B3C 80031F3C 00000000 */ nop +/* 032B40 80031F40 A4CD0076 */ sh $t5, 0x76($a2) +/* 032B44 80031F44 84AE001A */ lh $t6, 0x1a($a1) +/* 032B48 80031F48 00002825 */ move $a1, $zero +/* 032B4C 80031F4C 11C00004 */ beqz $t6, .L80031F60 +/* 032B50 80031F50 00000000 */ nop +/* 032B54 80031F54 A4CF007A */ sh $t7, 0x7a($a2) +/* 032B58 80031F58 10000002 */ b .L80031F64 +/* 032B5C 80031F5C A4C0007A */ sh $zero, 0x7a($a2) +.L80031F60: +/* 032B60 80031F60 A4C0007A */ sh $zero, 0x7a($a2) +.L80031F64: +/* 032B64 80031F64 A0D80005 */ sb $t8, 5($a2) +/* 032B68 80031F68 0C00C909 */ jal func_80032424 +/* 032B6C 80031F6C AFA60018 */ sw $a2, 0x18($sp) +/* 032B70 80031F70 8FA60018 */ lw $a2, 0x18($sp) +/* 032B74 80031F74 00000000 */ nop +.L80031F78: +/* 032B78 80031F78 8FBF0014 */ lw $ra, 0x14($sp) +/* 032B7C 80031F7C 27BD0020 */ addiu $sp, $sp, 0x20 +/* 032B80 80031F80 03E00008 */ jr $ra +/* 032B84 80031F84 00C01025 */ move $v0, $a2 + diff --git a/asm/non_matchings/unknown_032760/func_80031F88.s b/asm/non_matchings/unknown_032760/func_80031F88.s new file mode 100644 index 00000000..f1c60e69 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80031F88.s @@ -0,0 +1,289 @@ +glabel func_80031F88 +/* 032B88 80031F88 3C03800E */ lui $v1, %hi(D_800DC95C) # $v1, 0x800e +/* 032B8C 80031F8C 2463C95C */ addiu $v1, %lo(D_800DC95C) # addiu $v1, $v1, -0x36a4 +/* 032B90 80031F90 3C0E800E */ lui $t6, %hi(D_800DC958) # $t6, 0x800e +/* 032B94 80031F94 8DCEC958 */ lw $t6, %lo(D_800DC958)($t6) +/* 032B98 80031F98 8C620000 */ lw $v0, ($v1) +/* 032B9C 80031F9C 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 032BA0 80031FA0 004E082A */ slt $at, $v0, $t6 +/* 032BA4 80031FA4 AFBF0014 */ sw $ra, 0x14($sp) +/* 032BA8 80031FA8 10200095 */ beqz $at, .L80032200 +/* 032BAC 80031FAC 00003025 */ move $a2, $zero +/* 032BB0 80031FB0 3C0F800E */ lui $t7, %hi(D_800DC950) # $t7, 0x800e +/* 032BB4 80031FB4 8DEFC950 */ lw $t7, %lo(D_800DC950)($t7) +/* 032BB8 80031FB8 0002C080 */ sll $t8, $v0, 2 +/* 032BBC 80031FBC 01F8C821 */ addu $t9, $t7, $t8 +/* 032BC0 80031FC0 8F260000 */ lw $a2, ($t9) +/* 032BC4 80031FC4 24480001 */ addiu $t0, $v0, 1 +/* 032BC8 80031FC8 AC680000 */ sw $t0, ($v1) +/* 032BCC 80031FCC 8CA90008 */ lw $t1, 8($a1) +/* 032BD0 80031FD0 3401FFFF */ li $at, 65535 +/* 032BD4 80031FD4 00095702 */ srl $t2, $t1, 0x1c +/* 032BD8 80031FD8 A0CA0000 */ sb $t2, ($a2) +/* 032BDC 80031FDC 90AB0009 */ lbu $t3, 9($a1) +/* 032BE0 80031FE0 00000000 */ nop +/* 032BE4 80031FE4 A0CB0001 */ sb $t3, 1($a2) +/* 032BE8 80031FE8 90AC000B */ lbu $t4, 0xb($a1) +/* 032BEC 80031FEC 00000000 */ nop +/* 032BF0 80031FF0 A0CC0002 */ sb $t4, 2($a2) +/* 032BF4 80031FF4 90AD000A */ lbu $t5, 0xa($a1) +/* 032BF8 80031FF8 00000000 */ nop +/* 032BFC 80031FFC A0CD0003 */ sb $t5, 3($a2) +/* 032C00 80032000 90AE0008 */ lbu $t6, 8($a1) +/* 032C04 80032004 ACC4000C */ sw $a0, 0xc($a2) +/* 032C08 80032008 31CF000F */ andi $t7, $t6, 0xf +/* 032C0C 8003200C A0CF0004 */ sb $t7, 4($a2) +/* 032C10 80032010 84B8000C */ lh $t8, 0xc($a1) +/* 032C14 80032014 00000000 */ nop +/* 032C18 80032018 A4D80006 */ sh $t8, 6($a2) +/* 032C1C 8003201C 84B9000E */ lh $t9, 0xe($a1) +/* 032C20 80032020 84C90006 */ lh $t1, 6($a2) +/* 032C24 80032024 A4D90008 */ sh $t9, 8($a2) +/* 032C28 80032028 84A80010 */ lh $t0, 0x10($a1) +/* 032C2C 8003202C 84CA0008 */ lh $t2, 8($a2) +/* 032C30 80032030 A4C8000A */ sh $t0, 0xa($a2) +/* 032C34 80032034 84CB000A */ lh $t3, 0xa($a2) +/* 032C38 80032038 44892000 */ mtc1 $t1, $f4 +/* 032C3C 8003203C 448A4000 */ mtc1 $t2, $f8 +/* 032C40 80032040 448B8000 */ mtc1 $t3, $f16 +/* 032C44 80032044 468021A0 */ cvt.s.w $f6, $f4 +/* 032C48 80032048 468042A0 */ cvt.s.w $f10, $f8 +/* 032C4C 8003204C E4C60010 */ swc1 $f6, 0x10($a2) +/* 032C50 80032050 468084A0 */ cvt.s.w $f18, $f16 +/* 032C54 80032054 E4CA0014 */ swc1 $f10, 0x14($a2) +/* 032C58 80032058 E4D20018 */ swc1 $f18, 0x18($a2) +/* 032C5C 8003205C 90AC0002 */ lbu $t4, 2($a1) +/* 032C60 80032060 ACC0002C */ sw $zero, 0x2c($a2) +/* 032C64 80032064 000C6C00 */ sll $t5, $t4, 0x10 +/* 032C68 80032068 ACCD001C */ sw $t5, 0x1c($a2) +/* 032C6C 8003206C A4C0003C */ sh $zero, 0x3c($a2) +/* 032C70 80032070 90AE0003 */ lbu $t6, 3($a1) +/* 032C74 80032074 ACC00030 */ sw $zero, 0x30($a2) +/* 032C78 80032078 000E7C00 */ sll $t7, $t6, 0x10 +/* 032C7C 8003207C ACCF0020 */ sw $t7, 0x20($a2) +/* 032C80 80032080 A4C0003E */ sh $zero, 0x3e($a2) +/* 032C84 80032084 90B80004 */ lbu $t8, 4($a1) +/* 032C88 80032088 ACC00034 */ sw $zero, 0x34($a2) +/* 032C8C 8003208C 0018CC00 */ sll $t9, $t8, 0x10 +/* 032C90 80032090 ACD90024 */ sw $t9, 0x24($a2) +/* 032C94 80032094 A4C00040 */ sh $zero, 0x40($a2) +/* 032C98 80032098 90A80005 */ lbu $t0, 5($a1) +/* 032C9C 8003209C ACC00038 */ sw $zero, 0x38($a2) +/* 032CA0 800320A0 00084C00 */ sll $t1, $t0, 0x10 +/* 032CA4 800320A4 ACC90028 */ sw $t1, 0x28($a2) +/* 032CA8 800320A8 A4C00042 */ sh $zero, 0x42($a2) +/* 032CAC 800320AC 94A40006 */ lhu $a0, 6($a1) +/* 032CB0 800320B0 00000000 */ nop +/* 032CB4 800320B4 1081001C */ beq $a0, $at, .L80032128 +/* 032CB8 800320B8 00000000 */ nop +/* 032CBC 800320BC AFA50024 */ sw $a1, 0x24($sp) +/* 032CC0 800320C0 0C0078A7 */ jal func_8001E29C +/* 032CC4 800320C4 AFA60018 */ sw $a2, 0x18($sp) +/* 032CC8 800320C8 8FA60018 */ lw $a2, 0x18($sp) +/* 032CCC 800320CC 8FA50024 */ lw $a1, 0x24($sp) +/* 032CD0 800320D0 ACC20044 */ sw $v0, 0x44($a2) +/* 032CD4 800320D4 8C4A0000 */ lw $t2, ($v0) +/* 032CD8 800320D8 244B0014 */ addiu $t3, $v0, 0x14 +/* 032CDC 800320DC 3144FFFF */ andi $a0, $t2, 0xffff +/* 032CE0 800320E0 00001825 */ move $v1, $zero +/* 032CE4 800320E4 A4C0004A */ sh $zero, 0x4a($a2) +/* 032CE8 800320E8 A4C0004C */ sh $zero, 0x4c($a2) +/* 032CEC 800320EC A4C0004E */ sh $zero, 0x4e($a2) +/* 032CF0 800320F0 ACCB0044 */ sw $t3, 0x44($a2) +/* 032CF4 800320F4 1880000D */ blez $a0, .L8003212C +/* 032CF8 800320F8 A4CA0048 */ sh $t2, 0x48($a2) +/* 032CFC 800320FC 01601025 */ move $v0, $t3 +.L80032100: +/* 032D00 80032100 94CC004E */ lhu $t4, 0x4e($a2) +/* 032D04 80032104 8C4D0004 */ lw $t5, 4($v0) +/* 032D08 80032108 24630001 */ addiu $v1, $v1, 1 +/* 032D0C 8003210C 0064082A */ slt $at, $v1, $a0 +/* 032D10 80032110 018D7021 */ addu $t6, $t4, $t5 +/* 032D14 80032114 A4CE004E */ sh $t6, 0x4e($a2) +/* 032D18 80032118 1420FFF9 */ bnez $at, .L80032100 +/* 032D1C 8003211C 24420008 */ addiu $v0, $v0, 8 +/* 032D20 80032120 10000003 */ b .L80032130 +/* 032D24 80032124 94AF0012 */ lhu $t7, 0x12($a1) +.L80032128: +/* 032D28 80032128 ACC00044 */ sw $zero, 0x44($a2) +.L8003212C: +/* 032D2C 8003212C 94AF0012 */ lhu $t7, 0x12($a1) +.L80032130: +/* 032D30 80032130 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 032D34 80032134 448F2000 */ mtc1 $t7, $f4 +/* 032D38 80032138 05E10004 */ bgez $t7, .L8003214C +/* 032D3C 8003213C 468021A0 */ cvt.s.w $f6, $f4 +/* 032D40 80032140 44814000 */ mtc1 $at, $f8 +/* 032D44 80032144 00000000 */ nop +/* 032D48 80032148 46083180 */ add.s $f6, $f6, $f8 +.L8003214C: +/* 032D4C 8003214C E4C6005C */ swc1 $f6, 0x5c($a2) +/* 032D50 80032150 94B80014 */ lhu $t8, 0x14($a1) +/* 032D54 80032154 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 032D58 80032158 44985000 */ mtc1 $t8, $f10 +/* 032D5C 8003215C 07010004 */ bgez $t8, .L80032170 +/* 032D60 80032160 46805420 */ cvt.s.w $f16, $f10 +/* 032D64 80032164 44819000 */ mtc1 $at, $f18 +/* 032D68 80032168 00000000 */ nop +/* 032D6C 8003216C 46128400 */ add.s $f16, $f16, $f18 +.L80032170: +/* 032D70 80032170 E4D00060 */ swc1 $f16, 0x60($a2) +/* 032D74 80032174 94B90016 */ lhu $t9, 0x16($a1) +/* 032D78 80032178 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 032D7C 8003217C 44992000 */ mtc1 $t9, $f4 +/* 032D80 80032180 07210004 */ bgez $t9, .L80032194 +/* 032D84 80032184 46802220 */ cvt.s.w $f8, $f4 +/* 032D88 80032188 44813000 */ mtc1 $at, $f6 +/* 032D8C 8003218C 00000000 */ nop +/* 032D90 80032190 46064200 */ add.s $f8, $f8, $f6 +.L80032194: +/* 032D94 80032194 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 032D98 80032198 C4C0005C */ lwc1 $f0, 0x5c($a2) +/* 032D9C 8003219C 44819000 */ mtc1 $at, $f18 +/* 032DA0 800321A0 46000282 */ mul.s $f10, $f0, $f0 +/* 032DA4 800321A4 00000000 */ nop +/* 032DA8 800321A8 46009403 */ div.s $f16, $f18, $f0 +/* 032DAC 800321AC E4C80064 */ swc1 $f8, 0x64($a2) +/* 032DB0 800321B0 240C0001 */ li $t4, 1 +/* 032DB4 800321B4 E4CA0068 */ swc1 $f10, 0x68($a2) +/* 032DB8 800321B8 00C02025 */ move $a0, $a2 +/* 032DBC 800321BC E4D0006C */ swc1 $f16, 0x6c($a2) +/* 032DC0 800321C0 90A80000 */ lbu $t0, ($a1) +/* 032DC4 800321C4 A4C00074 */ sh $zero, 0x74($a2) +/* 032DC8 800321C8 00084A00 */ sll $t1, $t0, 8 +/* 032DCC 800321CC A4C90070 */ sh $t1, 0x70($a2) +/* 032DD0 800321D0 A4C00078 */ sh $zero, 0x78($a2) +/* 032DD4 800321D4 90AA0001 */ lbu $t2, 1($a1) +/* 032DD8 800321D8 A4C00076 */ sh $zero, 0x76($a2) +/* 032DDC 800321DC 000A5A00 */ sll $t3, $t2, 8 +/* 032DE0 800321E0 A4CB0072 */ sh $t3, 0x72($a2) +/* 032DE4 800321E4 A4C0007A */ sh $zero, 0x7a($a2) +/* 032DE8 800321E8 A0CC0005 */ sb $t4, 5($a2) +/* 032DEC 800321EC AFA60018 */ sw $a2, 0x18($sp) +/* 032DF0 800321F0 0C00C909 */ jal func_80032424 +/* 032DF4 800321F4 00002825 */ move $a1, $zero +/* 032DF8 800321F8 8FA60018 */ lw $a2, 0x18($sp) +/* 032DFC 800321FC 00000000 */ nop +.L80032200: +/* 032E00 80032200 8FBF0014 */ lw $ra, 0x14($sp) +/* 032E04 80032204 27BD0020 */ addiu $sp, $sp, 0x20 +/* 032E08 80032208 03E00008 */ jr $ra +/* 032E0C 8003220C 00C01025 */ move $v0, $a2 + +/* 032E10 80032210 03E00008 */ jr $ra +/* 032E14 80032214 A0800004 */ sb $zero, 4($a0) + +/* 032E18 80032218 240E0001 */ li $t6, 1 +/* 032E1C 8003221C 03E00008 */ jr $ra +/* 032E20 80032220 A08E0004 */ sb $t6, 4($a0) + +/* 032E24 80032224 908E0004 */ lbu $t6, 4($a0) +/* 032E28 80032228 24010001 */ li $at, 1 +/* 032E2C 8003222C 15C10003 */ bne $t6, $at, .L8003223C +/* 032E30 80032230 240F0001 */ li $t7, 1 +/* 032E34 80032234 03E00008 */ jr $ra +/* 032E38 80032238 A0800004 */ sb $zero, 4($a0) + +.L8003223C: +/* 032E3C 8003223C A08F0004 */ sb $t7, 4($a0) +/* 032E40 80032240 03E00008 */ jr $ra +/* 032E44 80032244 00000000 */ nop + +/* 032E48 80032248 18C00012 */ blez $a2, .L80032294 +/* 032E4C 8003224C 00000000 */ nop +/* 032E50 80032250 8C8F001C */ lw $t7, 0x1c($a0) +/* 032E54 80032254 00057400 */ sll $t6, $a1, 0x10 +/* 032E58 80032258 01CFC023 */ subu $t8, $t6, $t7 +/* 032E5C 8003225C 0306001A */ div $zero, $t8, $a2 +/* 032E60 80032260 A486003C */ sh $a2, 0x3c($a0) +/* 032E64 80032264 14C00002 */ bnez $a2, .L80032270 +/* 032E68 80032268 00000000 */ nop +/* 032E6C 8003226C 0007000D */ break 7 +.L80032270: +/* 032E70 80032270 2401FFFF */ li $at, -1 +/* 032E74 80032274 14C10004 */ bne $a2, $at, .L80032288 +/* 032E78 80032278 3C018000 */ lui $at, 0x8000 +/* 032E7C 8003227C 17010002 */ bne $t8, $at, .L80032288 +/* 032E80 80032280 00000000 */ nop +/* 032E84 80032284 0006000D */ break 6 +.L80032288: +/* 032E88 80032288 0000C812 */ mflo $t9 +/* 032E8C 8003228C AC99002C */ sw $t9, 0x2c($a0) +/* 032E90 80032290 00000000 */ nop +.L80032294: +/* 032E94 80032294 8FA20010 */ lw $v0, 0x10($sp) +/* 032E98 80032298 00000000 */ nop +/* 032E9C 8003229C 18400012 */ blez $v0, .L800322E8 +/* 032EA0 800322A0 00000000 */ nop +/* 032EA4 800322A4 8C890020 */ lw $t1, 0x20($a0) +/* 032EA8 800322A8 00074400 */ sll $t0, $a3, 0x10 +/* 032EAC 800322AC 01095023 */ subu $t2, $t0, $t1 +/* 032EB0 800322B0 0142001A */ div $zero, $t2, $v0 +/* 032EB4 800322B4 A482003E */ sh $v0, 0x3e($a0) +/* 032EB8 800322B8 14400002 */ bnez $v0, .L800322C4 +/* 032EBC 800322BC 00000000 */ nop +/* 032EC0 800322C0 0007000D */ break 7 +.L800322C4: +/* 032EC4 800322C4 2401FFFF */ li $at, -1 +/* 032EC8 800322C8 14410004 */ bne $v0, $at, .L800322DC +/* 032ECC 800322CC 3C018000 */ lui $at, 0x8000 +/* 032ED0 800322D0 15410002 */ bne $t2, $at, .L800322DC +/* 032ED4 800322D4 00000000 */ nop +/* 032ED8 800322D8 0006000D */ break 6 +.L800322DC: +/* 032EDC 800322DC 00005812 */ mflo $t3 +/* 032EE0 800322E0 AC8B0030 */ sw $t3, 0x30($a0) +/* 032EE4 800322E4 00000000 */ nop +.L800322E8: +/* 032EE8 800322E8 8FA20018 */ lw $v0, 0x18($sp) +/* 032EEC 800322EC 8FAC0014 */ lw $t4, 0x14($sp) +/* 032EF0 800322F0 18400012 */ blez $v0, .L8003233C +/* 032EF4 800322F4 00000000 */ nop +/* 032EF8 800322F8 8C8E0024 */ lw $t6, 0x24($a0) +/* 032EFC 800322FC 000C6C00 */ sll $t5, $t4, 0x10 +/* 032F00 80032300 01AE7823 */ subu $t7, $t5, $t6 +/* 032F04 80032304 01E2001A */ div $zero, $t7, $v0 +/* 032F08 80032308 A4820040 */ sh $v0, 0x40($a0) +/* 032F0C 8003230C 14400002 */ bnez $v0, .L80032318 +/* 032F10 80032310 00000000 */ nop +/* 032F14 80032314 0007000D */ break 7 +.L80032318: +/* 032F18 80032318 2401FFFF */ li $at, -1 +/* 032F1C 8003231C 14410004 */ bne $v0, $at, .L80032330 +/* 032F20 80032320 3C018000 */ lui $at, 0x8000 +/* 032F24 80032324 15E10002 */ bne $t7, $at, .L80032330 +/* 032F28 80032328 00000000 */ nop +/* 032F2C 8003232C 0006000D */ break 6 +.L80032330: +/* 032F30 80032330 0000C012 */ mflo $t8 +/* 032F34 80032334 AC980034 */ sw $t8, 0x34($a0) +/* 032F38 80032338 00000000 */ nop +.L8003233C: +/* 032F3C 8003233C 03E00008 */ jr $ra +/* 032F40 80032340 00000000 */ nop + +/* 032F44 80032344 18C00012 */ blez $a2, .L80032390 +/* 032F48 80032348 00000000 */ nop +/* 032F4C 8003234C 8C8F0028 */ lw $t7, 0x28($a0) +/* 032F50 80032350 00057400 */ sll $t6, $a1, 0x10 +/* 032F54 80032354 01CFC023 */ subu $t8, $t6, $t7 +/* 032F58 80032358 0306001A */ div $zero, $t8, $a2 +/* 032F5C 8003235C A4860042 */ sh $a2, 0x42($a0) +/* 032F60 80032360 14C00002 */ bnez $a2, .L8003236C +/* 032F64 80032364 00000000 */ nop +/* 032F68 80032368 0007000D */ break 7 +.L8003236C: +/* 032F6C 8003236C 2401FFFF */ li $at, -1 +/* 032F70 80032370 14C10004 */ bne $a2, $at, .L80032384 +/* 032F74 80032374 3C018000 */ lui $at, 0x8000 +/* 032F78 80032378 17010002 */ bne $t8, $at, .L80032384 +/* 032F7C 8003237C 00000000 */ nop +/* 032F80 80032380 0006000D */ break 6 +.L80032384: +/* 032F84 80032384 0000C812 */ mflo $t9 +/* 032F88 80032388 AC990038 */ sw $t9, 0x38($a0) +/* 032F8C 8003238C 00000000 */ nop +.L80032390: +/* 032F90 80032390 03E00008 */ jr $ra +/* 032F94 80032394 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80032398.s b/asm/non_matchings/unknown_032760/func_80032398.s new file mode 100644 index 00000000..7402fe33 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80032398.s @@ -0,0 +1,39 @@ +glabel func_80032398 +/* 032F98 80032398 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 032F9C 8003239C AFB30024 */ sw $s3, 0x24($sp) +/* 032FA0 800323A0 3C13800E */ lui $s3, %hi(D_800DC95C) # $s3, 0x800e +/* 032FA4 800323A4 2673C95C */ addiu $s3, %lo(D_800DC95C) # addiu $s3, $s3, -0x36a4 +/* 032FA8 800323A8 8E6E0000 */ lw $t6, ($s3) +/* 032FAC 800323AC AFB20020 */ sw $s2, 0x20($sp) +/* 032FB0 800323B0 AFB00018 */ sw $s0, 0x18($sp) +/* 032FB4 800323B4 00809025 */ move $s2, $a0 +/* 032FB8 800323B8 AFBF002C */ sw $ra, 0x2c($sp) +/* 032FBC 800323BC AFB40028 */ sw $s4, 0x28($sp) +/* 032FC0 800323C0 AFB1001C */ sw $s1, 0x1c($sp) +/* 032FC4 800323C4 19C0000F */ blez $t6, .L80032404 +/* 032FC8 800323C8 00008025 */ move $s0, $zero +/* 032FCC 800323CC 3C14800E */ lui $s4, %hi(D_800DC950) # $s4, 0x800e +/* 032FD0 800323D0 2694C950 */ addiu $s4, %lo(D_800DC950) # addiu $s4, $s4, -0x36b0 +/* 032FD4 800323D4 00008825 */ move $s1, $zero +.L800323D8: +/* 032FD8 800323D8 8E8F0000 */ lw $t7, ($s4) +/* 032FDC 800323DC 02402825 */ move $a1, $s2 +/* 032FE0 800323E0 01F1C021 */ addu $t8, $t7, $s1 +/* 032FE4 800323E4 8F040000 */ lw $a0, ($t8) +/* 032FE8 800323E8 0C00C909 */ jal func_80032424 +/* 032FEC 800323EC 00000000 */ nop +/* 032FF0 800323F0 8E790000 */ lw $t9, ($s3) +/* 032FF4 800323F4 26100001 */ addiu $s0, $s0, 1 +/* 032FF8 800323F8 0219082A */ slt $at, $s0, $t9 +/* 032FFC 800323FC 1420FFF6 */ bnez $at, .L800323D8 +/* 033000 80032400 26310004 */ addiu $s1, $s1, 4 +.L80032404: +/* 033004 80032404 8FBF002C */ lw $ra, 0x2c($sp) +/* 033008 80032408 8FB00018 */ lw $s0, 0x18($sp) +/* 03300C 8003240C 8FB1001C */ lw $s1, 0x1c($sp) +/* 033010 80032410 8FB20020 */ lw $s2, 0x20($sp) +/* 033014 80032414 8FB30024 */ lw $s3, 0x24($sp) +/* 033018 80032418 8FB40028 */ lw $s4, 0x28($sp) +/* 03301C 8003241C 03E00008 */ jr $ra +/* 033020 80032420 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_032760/func_80032424.s b/asm/non_matchings/unknown_032760/func_80032424.s new file mode 100644 index 00000000..e0c50118 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80032424.s @@ -0,0 +1,516 @@ +glabel func_80032424 +/* 033024 80032424 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 033028 80032428 AFBF001C */ sw $ra, 0x1c($sp) +/* 03302C 8003242C AFB00018 */ sw $s0, 0x18($sp) +/* 033030 80032430 8C87000C */ lw $a3, 0xc($a0) +/* 033034 80032434 00A08025 */ move $s0, $a1 +/* 033038 80032438 10E00022 */ beqz $a3, .L800324C4 +/* 03303C 8003243C 00803025 */ move $a2, $a0 +/* 033040 80032440 848E0006 */ lh $t6, 6($a0) +/* 033044 80032444 848F0008 */ lh $t7, 8($a0) +/* 033048 80032448 8498000A */ lh $t8, 0xa($a0) +/* 03304C 8003244C 448E2000 */ mtc1 $t6, $f4 +/* 033050 80032450 448F4000 */ mtc1 $t7, $f8 +/* 033054 80032454 44988000 */ mtc1 $t8, $f16 +/* 033058 80032458 468021A0 */ cvt.s.w $f6, $f4 +/* 03305C 8003245C 24C50010 */ addiu $a1, $a2, 0x10 +/* 033060 80032460 468042A0 */ cvt.s.w $f10, $f8 +/* 033064 80032464 E4860010 */ swc1 $f6, 0x10($a0) +/* 033068 80032468 468084A0 */ cvt.s.w $f18, $f16 +/* 03306C 8003246C E48A0014 */ swc1 $f10, 0x14($a0) +/* 033070 80032470 E4920018 */ swc1 $f18, 0x18($a0) +/* 033074 80032474 AFA60048 */ sw $a2, 0x48($sp) +/* 033078 80032478 0C01C0C8 */ jal func_80070320 +/* 03307C 8003247C 00E02025 */ move $a0, $a3 +/* 033080 80032480 8FA60048 */ lw $a2, 0x48($sp) +/* 033084 80032484 240B0001 */ li $t3, 1 +/* 033088 80032488 8CC7000C */ lw $a3, 0xc($a2) +/* 03308C 8003248C C4C40010 */ lwc1 $f4, 0x10($a2) +/* 033090 80032490 C4E6000C */ lwc1 $f6, 0xc($a3) +/* 033094 80032494 C4CA0014 */ lwc1 $f10, 0x14($a2) +/* 033098 80032498 46062200 */ add.s $f8, $f4, $f6 +/* 03309C 8003249C C4C40018 */ lwc1 $f4, 0x18($a2) +/* 0330A0 800324A0 E4C80010 */ swc1 $f8, 0x10($a2) +/* 0330A4 800324A4 C4F00010 */ lwc1 $f16, 0x10($a3) +/* 0330A8 800324A8 00000000 */ nop +/* 0330AC 800324AC 46105480 */ add.s $f18, $f10, $f16 +/* 0330B0 800324B0 E4D20014 */ swc1 $f18, 0x14($a2) +/* 0330B4 800324B4 C4E60014 */ lwc1 $f6, 0x14($a3) +/* 0330B8 800324B8 A0CB0005 */ sb $t3, 5($a2) +/* 0330BC 800324BC 46062200 */ add.s $f8, $f4, $f6 +/* 0330C0 800324C0 E4C80018 */ swc1 $f8, 0x18($a2) +.L800324C4: +/* 0330C4 800324C4 8CC50044 */ lw $a1, 0x44($a2) +/* 0330C8 800324C8 240B0001 */ li $t3, 1 +/* 0330CC 800324CC 10A0006E */ beqz $a1, .L80032688 +/* 0330D0 800324D0 00000000 */ nop +/* 0330D4 800324D4 94D9004C */ lhu $t9, 0x4c($a2) +/* 0330D8 800324D8 94C2004A */ lhu $v0, 0x4a($a2) +/* 0330DC 800324DC 03306021 */ addu $t4, $t9, $s0 +/* 0330E0 800324E0 000268C0 */ sll $t5, $v0, 3 +/* 0330E4 800324E4 A4CC004C */ sh $t4, 0x4c($a2) +/* 0330E8 800324E8 00AD7021 */ addu $t6, $a1, $t5 +/* 0330EC 800324EC 8DC30004 */ lw $v1, 4($t6) +/* 0330F0 800324F0 3184FFFF */ andi $a0, $t4, 0xffff +/* 0330F4 800324F4 0083082A */ slt $at, $a0, $v1 +/* 0330F8 800324F8 14200014 */ bnez $at, .L8003254C +/* 0330FC 800324FC 00000000 */ nop +.L80032500: +/* 033100 80032500 94D90048 */ lhu $t9, 0x48($a2) +/* 033104 80032504 24580001 */ addiu $t8, $v0, 1 +/* 033108 80032508 3302FFFF */ andi $v0, $t8, 0xffff +/* 03310C 8003250C 00837823 */ subu $t7, $a0, $v1 +/* 033110 80032510 0322082A */ slt $at, $t9, $v0 +/* 033114 80032514 A4CF004C */ sh $t7, 0x4c($a2) +/* 033118 80032518 10200004 */ beqz $at, .L8003252C +/* 03311C 8003251C A4D8004A */ sh $t8, 0x4a($a2) +/* 033120 80032520 8CC50044 */ lw $a1, 0x44($a2) +/* 033124 80032524 A4C0004A */ sh $zero, 0x4a($a2) +/* 033128 80032528 3002FFFF */ andi $v0, $zero, 0xffff +.L8003252C: +/* 03312C 8003252C 000260C0 */ sll $t4, $v0, 3 +/* 033130 80032530 00AC6821 */ addu $t5, $a1, $t4 +/* 033134 80032534 8DA30004 */ lw $v1, 4($t5) +/* 033138 80032538 94C4004C */ lhu $a0, 0x4c($a2) +/* 03313C 8003253C 00000000 */ nop +/* 033140 80032540 0083082A */ slt $at, $a0, $v1 +/* 033144 80032544 1020FFEE */ beqz $at, .L80032500 +/* 033148 80032548 00000000 */ nop +.L8003254C: +/* 03314C 8003254C 94CF0048 */ lhu $t7, 0x48($a2) +/* 033150 80032550 000270C0 */ sll $t6, $v0, 3 +/* 033154 80032554 25F8FFFF */ addiu $t8, $t7, -1 +/* 033158 80032558 0058082A */ slt $at, $v0, $t8 +/* 03315C 8003255C 00AE1821 */ addu $v1, $a1, $t6 +/* 033160 80032560 10200005 */ beqz $at, .L80032578 +/* 033164 80032564 00404025 */ move $t0, $v0 +/* 033168 80032568 25190001 */ addiu $t9, $t0, 1 +/* 03316C 8003256C 001960C0 */ sll $t4, $t9, 3 +/* 033170 80032570 10000002 */ b .L8003257C +/* 033174 80032574 00AC3821 */ addu $a3, $a1, $t4 +.L80032578: +/* 033178 80032578 00A03825 */ move $a3, $a1 +.L8003257C: +/* 03317C 8003257C 8C6D0004 */ lw $t5, 4($v1) +/* 033180 80032580 3C0E0001 */ lui $t6, 1 +/* 033184 80032584 01CD001A */ div $zero, $t6, $t5 +/* 033188 80032588 90650000 */ lbu $a1, ($v1) +/* 03318C 8003258C 90EF0000 */ lbu $t7, ($a3) +/* 033190 80032590 15A00002 */ bnez $t5, .L8003259C +/* 033194 80032594 00000000 */ nop +/* 033198 80032598 0007000D */ break 7 +.L8003259C: +/* 03319C 8003259C 2401FFFF */ li $at, -1 +/* 0331A0 800325A0 15A10004 */ bne $t5, $at, .L800325B4 +/* 0331A4 800325A4 3C018000 */ lui $at, 0x8000 +/* 0331A8 800325A8 15C10002 */ bne $t6, $at, .L800325B4 +/* 0331AC 800325AC 00000000 */ nop +/* 0331B0 800325B0 0006000D */ break 6 +.L800325B4: +/* 0331B4 800325B4 01E5C023 */ subu $t8, $t7, $a1 +/* 0331B8 800325B8 00057400 */ sll $t6, $a1, 0x10 +/* 0331BC 800325BC 00001012 */ mflo $v0 +/* 0331C0 800325C0 00000000 */ nop +/* 0331C4 800325C4 00000000 */ nop +/* 0331C8 800325C8 03040019 */ multu $t8, $a0 +/* 0331CC 800325CC 0000C812 */ mflo $t9 +/* 0331D0 800325D0 00000000 */ nop +/* 0331D4 800325D4 00000000 */ nop +/* 0331D8 800325D8 03220019 */ multu $t9, $v0 +/* 0331DC 800325DC 00006012 */ mflo $t4 +/* 0331E0 800325E0 018E6821 */ addu $t5, $t4, $t6 +/* 0331E4 800325E4 ACCD001C */ sw $t5, 0x1c($a2) +/* 0331E8 800325E8 90EF0001 */ lbu $t7, 1($a3) +/* 0331EC 800325EC 90680001 */ lbu $t0, 1($v1) +/* 0331F0 800325F0 00000000 */ nop +/* 0331F4 800325F4 01E8C023 */ subu $t8, $t7, $t0 +/* 0331F8 800325F8 03040019 */ multu $t8, $a0 +/* 0331FC 800325FC 00087400 */ sll $t6, $t0, 0x10 +/* 033200 80032600 0000C812 */ mflo $t9 +/* 033204 80032604 00000000 */ nop +/* 033208 80032608 00000000 */ nop +/* 03320C 8003260C 03220019 */ multu $t9, $v0 +/* 033210 80032610 00006012 */ mflo $t4 +/* 033214 80032614 018E6821 */ addu $t5, $t4, $t6 +/* 033218 80032618 ACCD0020 */ sw $t5, 0x20($a2) +/* 03321C 8003261C 90EF0002 */ lbu $t7, 2($a3) +/* 033220 80032620 90690002 */ lbu $t1, 2($v1) +/* 033224 80032624 00000000 */ nop +/* 033228 80032628 01E9C023 */ subu $t8, $t7, $t1 +/* 03322C 8003262C 03040019 */ multu $t8, $a0 +/* 033230 80032630 00097400 */ sll $t6, $t1, 0x10 +/* 033234 80032634 0000C812 */ mflo $t9 +/* 033238 80032638 00000000 */ nop +/* 03323C 8003263C 00000000 */ nop +/* 033240 80032640 03220019 */ multu $t9, $v0 +/* 033244 80032644 00006012 */ mflo $t4 +/* 033248 80032648 018E6821 */ addu $t5, $t4, $t6 +/* 03324C 8003264C ACCD0024 */ sw $t5, 0x24($a2) +/* 033250 80032650 90EF0003 */ lbu $t7, 3($a3) +/* 033254 80032654 906A0003 */ lbu $t2, 3($v1) +/* 033258 80032658 00000000 */ nop +/* 03325C 8003265C 01EAC023 */ subu $t8, $t7, $t2 +/* 033260 80032660 03040019 */ multu $t8, $a0 +/* 033264 80032664 000A7400 */ sll $t6, $t2, 0x10 +/* 033268 80032668 0000C812 */ mflo $t9 +/* 03326C 8003266C 00000000 */ nop +/* 033270 80032670 00000000 */ nop +/* 033274 80032674 03220019 */ multu $t9, $v0 +/* 033278 80032678 00006012 */ mflo $t4 +/* 03327C 8003267C 018E6821 */ addu $t5, $t4, $t6 +/* 033280 80032680 10000059 */ b .L800327E8 +/* 033284 80032684 ACCD0028 */ sw $t5, 0x28($a2) +.L80032688: +/* 033288 80032688 94C3003C */ lhu $v1, 0x3c($a2) +/* 03328C 8003268C 00000000 */ nop +/* 033290 80032690 10600013 */ beqz $v1, .L800326E0 +/* 033294 80032694 0203082A */ slt $at, $s0, $v1 +/* 033298 80032698 1020000A */ beqz $at, .L800326C4 +/* 03329C 8003269C 00601025 */ move $v0, $v1 +/* 0332A0 800326A0 8CD8002C */ lw $t8, 0x2c($a2) +/* 0332A4 800326A4 8CCF001C */ lw $t7, 0x1c($a2) +/* 0332A8 800326A8 03100019 */ multu $t8, $s0 +/* 0332AC 800326AC 00707023 */ subu $t6, $v1, $s0 +/* 0332B0 800326B0 A4CE003C */ sh $t6, 0x3c($a2) +/* 0332B4 800326B4 0000C812 */ mflo $t9 +/* 0332B8 800326B8 01F96021 */ addu $t4, $t7, $t9 +/* 0332BC 800326BC 10000008 */ b .L800326E0 +/* 0332C0 800326C0 ACCC001C */ sw $t4, 0x1c($a2) +.L800326C4: +/* 0332C4 800326C4 8CD8002C */ lw $t8, 0x2c($a2) +/* 0332C8 800326C8 8CCD001C */ lw $t5, 0x1c($a2) +/* 0332CC 800326CC 03020019 */ multu $t8, $v0 +/* 0332D0 800326D0 A4C0003C */ sh $zero, 0x3c($a2) +/* 0332D4 800326D4 00007812 */ mflo $t7 +/* 0332D8 800326D8 01AFC821 */ addu $t9, $t5, $t7 +/* 0332DC 800326DC ACD9001C */ sw $t9, 0x1c($a2) +.L800326E0: +/* 0332E0 800326E0 94C3003E */ lhu $v1, 0x3e($a2) +/* 0332E4 800326E4 00000000 */ nop +/* 0332E8 800326E8 10600013 */ beqz $v1, .L80032738 +/* 0332EC 800326EC 0203082A */ slt $at, $s0, $v1 +/* 0332F0 800326F0 1020000A */ beqz $at, .L8003271C +/* 0332F4 800326F4 00601025 */ move $v0, $v1 +/* 0332F8 800326F8 8CCE0030 */ lw $t6, 0x30($a2) +/* 0332FC 800326FC 8CCC0020 */ lw $t4, 0x20($a2) +/* 033300 80032700 01D00019 */ multu $t6, $s0 +/* 033304 80032704 00707823 */ subu $t7, $v1, $s0 +/* 033308 80032708 A4CF003E */ sh $t7, 0x3e($a2) +/* 03330C 8003270C 0000C012 */ mflo $t8 +/* 033310 80032710 01986821 */ addu $t5, $t4, $t8 +/* 033314 80032714 10000008 */ b .L80032738 +/* 033318 80032718 ACCD0020 */ sw $t5, 0x20($a2) +.L8003271C: +/* 03331C 8003271C 8CCE0030 */ lw $t6, 0x30($a2) +/* 033320 80032720 8CD90020 */ lw $t9, 0x20($a2) +/* 033324 80032724 01C20019 */ multu $t6, $v0 +/* 033328 80032728 A4C0003E */ sh $zero, 0x3e($a2) +/* 03332C 8003272C 00006012 */ mflo $t4 +/* 033330 80032730 032CC021 */ addu $t8, $t9, $t4 +/* 033334 80032734 ACD80020 */ sw $t8, 0x20($a2) +.L80032738: +/* 033338 80032738 94C30040 */ lhu $v1, 0x40($a2) +/* 03333C 8003273C 00000000 */ nop +/* 033340 80032740 10600013 */ beqz $v1, .L80032790 +/* 033344 80032744 0203082A */ slt $at, $s0, $v1 +/* 033348 80032748 1020000A */ beqz $at, .L80032774 +/* 03334C 8003274C 00601025 */ move $v0, $v1 +/* 033350 80032750 8CCF0034 */ lw $t7, 0x34($a2) +/* 033354 80032754 8CCD0024 */ lw $t5, 0x24($a2) +/* 033358 80032758 01F00019 */ multu $t7, $s0 +/* 03335C 8003275C 00706023 */ subu $t4, $v1, $s0 +/* 033360 80032760 A4CC0040 */ sh $t4, 0x40($a2) +/* 033364 80032764 00007012 */ mflo $t6 +/* 033368 80032768 01AEC821 */ addu $t9, $t5, $t6 +/* 03336C 8003276C 10000008 */ b .L80032790 +/* 033370 80032770 ACD90024 */ sw $t9, 0x24($a2) +.L80032774: +/* 033374 80032774 8CCF0034 */ lw $t7, 0x34($a2) +/* 033378 80032778 8CD80024 */ lw $t8, 0x24($a2) +/* 03337C 8003277C 01E20019 */ multu $t7, $v0 +/* 033380 80032780 A4C00040 */ sh $zero, 0x40($a2) +/* 033384 80032784 00006812 */ mflo $t5 +/* 033388 80032788 030D7021 */ addu $t6, $t8, $t5 +/* 03338C 8003278C ACCE0024 */ sw $t6, 0x24($a2) +.L80032790: +/* 033390 80032790 94C30042 */ lhu $v1, 0x42($a2) +/* 033394 80032794 00000000 */ nop +/* 033398 80032798 10600013 */ beqz $v1, .L800327E8 +/* 03339C 8003279C 0203082A */ slt $at, $s0, $v1 +/* 0333A0 800327A0 1020000A */ beqz $at, .L800327CC +/* 0333A4 800327A4 00601025 */ move $v0, $v1 +/* 0333A8 800327A8 8CCC0038 */ lw $t4, 0x38($a2) +/* 0333AC 800327AC 8CD90028 */ lw $t9, 0x28($a2) +/* 0333B0 800327B0 01900019 */ multu $t4, $s0 +/* 0333B4 800327B4 00706823 */ subu $t5, $v1, $s0 +/* 0333B8 800327B8 A4CD0042 */ sh $t5, 0x42($a2) +/* 0333BC 800327BC 00007812 */ mflo $t7 +/* 0333C0 800327C0 032FC021 */ addu $t8, $t9, $t7 +/* 0333C4 800327C4 10000008 */ b .L800327E8 +/* 0333C8 800327C8 ACD80028 */ sw $t8, 0x28($a2) +.L800327CC: +/* 0333CC 800327CC 8CCC0038 */ lw $t4, 0x38($a2) +/* 0333D0 800327D0 8CCE0028 */ lw $t6, 0x28($a2) +/* 0333D4 800327D4 01820019 */ multu $t4, $v0 +/* 0333D8 800327D8 A4C00042 */ sh $zero, 0x42($a2) +/* 0333DC 800327DC 0000C812 */ mflo $t9 +/* 0333E0 800327E0 01D97821 */ addu $t7, $t6, $t9 +/* 0333E4 800327E4 ACCF0028 */ sw $t7, 0x28($a2) +.L800327E8: +/* 0333E8 800327E8 94C30078 */ lhu $v1, 0x78($a2) +/* 0333EC 800327EC 3401FFFF */ li $at, 65535 +/* 0333F0 800327F0 1060001E */ beqz $v1, .L8003286C +/* 0333F4 800327F4 00000000 */ nop +/* 0333F8 800327F8 14610008 */ bne $v1, $at, .L8003281C +/* 0333FC 800327FC 00601025 */ move $v0, $v1 +/* 033400 80032800 84CD0074 */ lh $t5, 0x74($a2) +/* 033404 80032804 84D80070 */ lh $t8, 0x70($a2) +/* 033408 80032808 01B00019 */ multu $t5, $s0 +/* 03340C 8003280C 00006012 */ mflo $t4 +/* 033410 80032810 030C7021 */ addu $t6, $t8, $t4 +/* 033414 80032814 10000014 */ b .L80032868 +/* 033418 80032818 A4CE0070 */ sh $t6, 0x70($a2) +.L8003281C: +/* 03341C 8003281C 0202082A */ slt $at, $s0, $v0 +/* 033420 80032820 1020000A */ beqz $at, .L8003284C +/* 033424 80032824 00000000 */ nop +/* 033428 80032828 84CF0074 */ lh $t7, 0x74($a2) +/* 03342C 8003282C 84D90070 */ lh $t9, 0x70($a2) +/* 033430 80032830 01F00019 */ multu $t7, $s0 +/* 033434 80032834 00506023 */ subu $t4, $v0, $s0 +/* 033438 80032838 A4CC0078 */ sh $t4, 0x78($a2) +/* 03343C 8003283C 00006812 */ mflo $t5 +/* 033440 80032840 032DC021 */ addu $t8, $t9, $t5 +/* 033444 80032844 10000008 */ b .L80032868 +/* 033448 80032848 A4D80070 */ sh $t8, 0x70($a2) +.L8003284C: +/* 03344C 8003284C 84CF0074 */ lh $t7, 0x74($a2) +/* 033450 80032850 84CE0070 */ lh $t6, 0x70($a2) +/* 033454 80032854 01E20019 */ multu $t7, $v0 +/* 033458 80032858 A4C00078 */ sh $zero, 0x78($a2) +/* 03345C 8003285C 0000C812 */ mflo $t9 +/* 033460 80032860 01D96821 */ addu $t5, $t6, $t9 +/* 033464 80032864 A4CD0070 */ sh $t5, 0x70($a2) +.L80032868: +/* 033468 80032868 A0CB0005 */ sb $t3, 5($a2) +.L8003286C: +/* 03346C 8003286C 94C3007A */ lhu $v1, 0x7a($a2) +/* 033470 80032870 3401FFFF */ li $at, 65535 +/* 033474 80032874 1060001E */ beqz $v1, .L800328F0 +/* 033478 80032878 00000000 */ nop +/* 03347C 8003287C 14610008 */ bne $v1, $at, .L800328A0 +/* 033480 80032880 00601025 */ move $v0, $v1 +/* 033484 80032884 84CC0076 */ lh $t4, 0x76($a2) +/* 033488 80032888 84D80072 */ lh $t8, 0x72($a2) +/* 03348C 8003288C 01900019 */ multu $t4, $s0 +/* 033490 80032890 00007812 */ mflo $t7 +/* 033494 80032894 030F7021 */ addu $t6, $t8, $t7 +/* 033498 80032898 10000014 */ b .L800328EC +/* 03349C 8003289C A4CE0072 */ sh $t6, 0x72($a2) +.L800328A0: +/* 0334A0 800328A0 0202082A */ slt $at, $s0, $v0 +/* 0334A4 800328A4 1020000A */ beqz $at, .L800328D0 +/* 0334A8 800328A8 00000000 */ nop +/* 0334AC 800328AC 84CD0076 */ lh $t5, 0x76($a2) +/* 0334B0 800328B0 84D90072 */ lh $t9, 0x72($a2) +/* 0334B4 800328B4 01B00019 */ multu $t5, $s0 +/* 0334B8 800328B8 00507823 */ subu $t7, $v0, $s0 +/* 0334BC 800328BC A4CF007A */ sh $t7, 0x7a($a2) +/* 0334C0 800328C0 00006012 */ mflo $t4 +/* 0334C4 800328C4 032CC021 */ addu $t8, $t9, $t4 +/* 0334C8 800328C8 10000008 */ b .L800328EC +/* 0334CC 800328CC A4D80072 */ sh $t8, 0x72($a2) +.L800328D0: +/* 0334D0 800328D0 84CD0076 */ lh $t5, 0x76($a2) +/* 0334D4 800328D4 84CE0072 */ lh $t6, 0x72($a2) +/* 0334D8 800328D8 01A20019 */ multu $t5, $v0 +/* 0334DC 800328DC A4C0007A */ sh $zero, 0x7a($a2) +/* 0334E0 800328E0 0000C812 */ mflo $t9 +/* 0334E4 800328E4 01D96021 */ addu $t4, $t6, $t9 +/* 0334E8 800328E8 A4CC0072 */ sh $t4, 0x72($a2) +.L800328EC: +/* 0334EC 800328EC A0CB0005 */ sb $t3, 5($a2) +.L800328F0: +/* 0334F0 800328F0 90D80005 */ lbu $t8, 5($a2) +/* 0334F4 800328F4 00000000 */ nop +/* 0334F8 800328F8 130000A9 */ beqz $t8, .L80032BA0 +/* 0334FC 800328FC 8FBF001C */ lw $ra, 0x1c($sp) +/* 033500 80032900 C4C20010 */ lwc1 $f2, 0x10($a2) +/* 033504 80032904 C4C0005C */ lwc1 $f0, 0x5c($a2) +/* 033508 80032908 90CC0000 */ lbu $t4, ($a2) +/* 03350C 8003290C 46001281 */ sub.s $f10, $f2, $f0 +/* 033510 80032910 24D0007C */ addiu $s0, $a2, 0x7c +/* 033514 80032914 444FF800 */ cfc1 $t7, $31 +/* 033518 80032918 02002825 */ move $a1, $s0 +/* 03351C 8003291C 35E10003 */ ori $at, $t7, 3 +/* 033520 80032920 38210002 */ xori $at, $at, 2 +/* 033524 80032924 44C1F800 */ ctc1 $at, $31 +/* 033528 80032928 27A40040 */ addiu $a0, $sp, 0x40 +/* 03352C 8003292C 46005424 */ cvt.w.s $f16, $f10 +/* 033530 80032930 44CFF800 */ ctc1 $t7, $31 +/* 033534 80032934 440D8000 */ mfc1 $t5, $f16 +/* 033538 80032938 46001480 */ add.s $f18, $f2, $f0 +/* 03353C 8003293C A4CD0050 */ sh $t5, 0x50($a2) +/* 033540 80032940 444EF800 */ cfc1 $t6, $31 +/* 033544 80032944 00000000 */ nop +/* 033548 80032948 35C10003 */ ori $at, $t6, 3 +/* 03354C 8003294C 38210002 */ xori $at, $at, 2 +/* 033550 80032950 44C1F800 */ ctc1 $at, $31 +/* 033554 80032954 24010001 */ li $at, 1 +/* 033558 80032958 46009124 */ cvt.w.s $f4, $f18 +/* 03355C 8003295C 44192000 */ mfc1 $t9, $f4 +/* 033560 80032960 44CEF800 */ ctc1 $t6, $31 +/* 033564 80032964 1581001A */ bne $t4, $at, .L800329D0 +/* 033568 80032968 A4D90056 */ sh $t9, 0x56($a2) +/* 03356C 8003296C C4C20014 */ lwc1 $f2, 0x14($a2) +/* 033570 80032970 00000000 */ nop +/* 033574 80032974 46001181 */ sub.s $f6, $f2, $f0 +/* 033578 80032978 4458F800 */ cfc1 $t8, $31 +/* 03357C 8003297C 00000000 */ nop +/* 033580 80032980 37010003 */ ori $at, $t8, 3 +/* 033584 80032984 38210002 */ xori $at, $at, 2 +/* 033588 80032988 44C1F800 */ ctc1 $at, $31 +/* 03358C 8003298C 00000000 */ nop +/* 033590 80032990 46003224 */ cvt.w.s $f8, $f6 +/* 033594 80032994 44D8F800 */ ctc1 $t8, $31 +/* 033598 80032998 440F4000 */ mfc1 $t7, $f8 +/* 03359C 8003299C 46001280 */ add.s $f10, $f2, $f0 +/* 0335A0 800329A0 A4CF0052 */ sh $t7, 0x52($a2) +/* 0335A4 800329A4 444DF800 */ cfc1 $t5, $31 +/* 0335A8 800329A8 00000000 */ nop +/* 0335AC 800329AC 35A10003 */ ori $at, $t5, 3 +/* 0335B0 800329B0 38210002 */ xori $at, $at, 2 +/* 0335B4 800329B4 44C1F800 */ ctc1 $at, $31 +/* 0335B8 800329B8 00000000 */ nop +/* 0335BC 800329BC 46005424 */ cvt.w.s $f16, $f10 +/* 0335C0 800329C0 440E8000 */ mfc1 $t6, $f16 +/* 0335C4 800329C4 44CDF800 */ ctc1 $t5, $31 +/* 0335C8 800329C8 1000001B */ b .L80032A38 +/* 0335CC 800329CC A4CE0058 */ sh $t6, 0x58($a2) +.L800329D0: +/* 0335D0 800329D0 C4C20014 */ lwc1 $f2, 0x14($a2) +/* 0335D4 800329D4 C4C00060 */ lwc1 $f0, 0x60($a2) +/* 0335D8 800329D8 00000000 */ nop +/* 0335DC 800329DC 46001481 */ sub.s $f18, $f2, $f0 +/* 0335E0 800329E0 4459F800 */ cfc1 $t9, $31 +/* 0335E4 800329E4 00000000 */ nop +/* 0335E8 800329E8 37210003 */ ori $at, $t9, 3 +/* 0335EC 800329EC 38210002 */ xori $at, $at, 2 +/* 0335F0 800329F0 44C1F800 */ ctc1 $at, $31 +/* 0335F4 800329F4 00000000 */ nop +/* 0335F8 800329F8 46009124 */ cvt.w.s $f4, $f18 +/* 0335FC 800329FC 44D9F800 */ ctc1 $t9, $31 +/* 033600 80032A00 440C2000 */ mfc1 $t4, $f4 +/* 033604 80032A04 46001180 */ add.s $f6, $f2, $f0 +/* 033608 80032A08 A4CC0052 */ sh $t4, 0x52($a2) +/* 03360C 80032A0C 4458F800 */ cfc1 $t8, $31 +/* 033610 80032A10 00000000 */ nop +/* 033614 80032A14 37010003 */ ori $at, $t8, 3 +/* 033618 80032A18 38210002 */ xori $at, $at, 2 +/* 03361C 80032A1C 44C1F800 */ ctc1 $at, $31 +/* 033620 80032A20 00000000 */ nop +/* 033624 80032A24 46003224 */ cvt.w.s $f8, $f6 +/* 033628 80032A28 440F4000 */ mfc1 $t7, $f8 +/* 03362C 80032A2C 44D8F800 */ ctc1 $t8, $31 +/* 033630 80032A30 A4CF0058 */ sh $t7, 0x58($a2) +/* 033634 80032A34 00000000 */ nop +.L80032A38: +/* 033638 80032A38 90CD0000 */ lbu $t5, ($a2) +/* 03363C 80032A3C 00000000 */ nop +/* 033640 80032A40 15A0001B */ bnez $t5, .L80032AB0 +/* 033644 80032A44 00000000 */ nop +/* 033648 80032A48 C4C20018 */ lwc1 $f2, 0x18($a2) +/* 03364C 80032A4C C4C00064 */ lwc1 $f0, 0x64($a2) +/* 033650 80032A50 00000000 */ nop +/* 033654 80032A54 46001281 */ sub.s $f10, $f2, $f0 +/* 033658 80032A58 444EF800 */ cfc1 $t6, $31 +/* 03365C 80032A5C 00000000 */ nop +/* 033660 80032A60 35C10003 */ ori $at, $t6, 3 +/* 033664 80032A64 38210002 */ xori $at, $at, 2 +/* 033668 80032A68 44C1F800 */ ctc1 $at, $31 +/* 03366C 80032A6C 00000000 */ nop +/* 033670 80032A70 46005424 */ cvt.w.s $f16, $f10 +/* 033674 80032A74 44CEF800 */ ctc1 $t6, $31 +/* 033678 80032A78 44198000 */ mfc1 $t9, $f16 +/* 03367C 80032A7C 46001480 */ add.s $f18, $f2, $f0 +/* 033680 80032A80 A4D90054 */ sh $t9, 0x54($a2) +/* 033684 80032A84 444CF800 */ cfc1 $t4, $31 +/* 033688 80032A88 00000000 */ nop +/* 03368C 80032A8C 35810003 */ ori $at, $t4, 3 +/* 033690 80032A90 38210002 */ xori $at, $at, 2 +/* 033694 80032A94 44C1F800 */ ctc1 $at, $31 +/* 033698 80032A98 00000000 */ nop +/* 03369C 80032A9C 46009124 */ cvt.w.s $f4, $f18 +/* 0336A0 80032AA0 44182000 */ mfc1 $t8, $f4 +/* 0336A4 80032AA4 44CCF800 */ ctc1 $t4, $31 +/* 0336A8 80032AA8 1000001B */ b .L80032B18 +/* 0336AC 80032AAC A4D8005A */ sh $t8, 0x5a($a2) +.L80032AB0: +/* 0336B0 80032AB0 C4C20018 */ lwc1 $f2, 0x18($a2) +/* 0336B4 80032AB4 C4C0005C */ lwc1 $f0, 0x5c($a2) +/* 0336B8 80032AB8 00000000 */ nop +/* 0336BC 80032ABC 46001181 */ sub.s $f6, $f2, $f0 +/* 0336C0 80032AC0 444FF800 */ cfc1 $t7, $31 +/* 0336C4 80032AC4 00000000 */ nop +/* 0336C8 80032AC8 35E10003 */ ori $at, $t7, 3 +/* 0336CC 80032ACC 38210002 */ xori $at, $at, 2 +/* 0336D0 80032AD0 44C1F800 */ ctc1 $at, $31 +/* 0336D4 80032AD4 00000000 */ nop +/* 0336D8 80032AD8 46003224 */ cvt.w.s $f8, $f6 +/* 0336DC 80032ADC 44CFF800 */ ctc1 $t7, $31 +/* 0336E0 80032AE0 440D4000 */ mfc1 $t5, $f8 +/* 0336E4 80032AE4 46001280 */ add.s $f10, $f2, $f0 +/* 0336E8 80032AE8 A4CD0054 */ sh $t5, 0x54($a2) +/* 0336EC 80032AEC 444EF800 */ cfc1 $t6, $31 +/* 0336F0 80032AF0 00000000 */ nop +/* 0336F4 80032AF4 35C10003 */ ori $at, $t6, 3 +/* 0336F8 80032AF8 38210002 */ xori $at, $at, 2 +/* 0336FC 80032AFC 44C1F800 */ ctc1 $at, $31 +/* 033700 80032B00 00000000 */ nop +/* 033704 80032B04 46005424 */ cvt.w.s $f16, $f10 +/* 033708 80032B08 44198000 */ mfc1 $t9, $f16 +/* 03370C 80032B0C 44CEF800 */ ctc1 $t6, $31 +/* 033710 80032B10 A4D9005A */ sh $t9, 0x5a($a2) +/* 033714 80032B14 00000000 */ nop +.L80032B18: +/* 033718 80032B18 90CC0001 */ lbu $t4, 1($a2) +/* 03371C 80032B1C 24010002 */ li $at, 2 +/* 033720 80032B20 1581001D */ bne $t4, $at, .L80032B98 +/* 033724 80032B24 3C01BF80 */ li $at, 0xBF800000 # -1.000000 +/* 033728 80032B28 44819000 */ mtc1 $at, $f18 +/* 03372C 80032B2C 84D80070 */ lh $t8, 0x70($a2) +/* 033730 80032B30 E4D20084 */ swc1 $f18, 0x84($a2) +/* 033734 80032B34 A7B80040 */ sh $t8, 0x40($sp) +/* 033738 80032B38 84CF0072 */ lh $t7, 0x72($a2) +/* 03373C 80032B3C A7A00044 */ sh $zero, 0x44($sp) +/* 033740 80032B40 AFA60048 */ sw $a2, 0x48($sp) +/* 033744 80032B44 0C01C124 */ jal func_80070490 +/* 033748 80032B48 A7AF0042 */ sh $t7, 0x42($sp) +/* 03374C 80032B4C 8FA60048 */ lw $a2, 0x48($sp) +/* 033750 80032B50 02002825 */ move $a1, $s0 +/* 033754 80032B54 8CC7000C */ lw $a3, 0xc($a2) +/* 033758 80032B58 00000000 */ nop +/* 03375C 80032B5C 10E00005 */ beqz $a3, .L80032B74 +/* 033760 80032B60 00E02025 */ move $a0, $a3 +/* 033764 80032B64 0C01C0C8 */ jal func_80070320 +/* 033768 80032B68 AFA60048 */ sw $a2, 0x48($sp) +/* 03376C 80032B6C 8FA60048 */ lw $a2, 0x48($sp) +/* 033770 80032B70 00000000 */ nop +.L80032B74: +/* 033774 80032B74 C4C4007C */ lwc1 $f4, 0x7c($a2) +/* 033778 80032B78 C4C80080 */ lwc1 $f8, 0x80($a2) +/* 03377C 80032B7C C4D00084 */ lwc1 $f16, 0x84($a2) +/* 033780 80032B80 46002187 */ neg.s $f6, $f4 +/* 033784 80032B84 46004287 */ neg.s $f10, $f8 +/* 033788 80032B88 46008487 */ neg.s $f18, $f16 +/* 03378C 80032B8C E4C6007C */ swc1 $f6, 0x7c($a2) +/* 033790 80032B90 E4CA0080 */ swc1 $f10, 0x80($a2) +/* 033794 80032B94 E4D20084 */ swc1 $f18, 0x84($a2) +.L80032B98: +/* 033798 80032B98 A0C00005 */ sb $zero, 5($a2) +/* 03379C 80032B9C 8FBF001C */ lw $ra, 0x1c($sp) +.L80032BA0: +/* 0337A0 80032BA0 8FB00018 */ lw $s0, 0x18($sp) +/* 0337A4 80032BA4 03E00008 */ jr $ra +/* 0337A8 80032BA8 27BD0048 */ addiu $sp, $sp, 0x48 + diff --git a/asm/non_matchings/unknown_032760/func_80032BAC.s b/asm/non_matchings/unknown_032760/func_80032BAC.s new file mode 100644 index 00000000..4d714f4a --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80032BAC.s @@ -0,0 +1,56 @@ +glabel func_80032BAC +/* 0337AC 80032BAC 3C08800E */ lui $t0, %hi(D_800DC95C) # $t0, 0x800e +/* 0337B0 80032BB0 2508C95C */ addiu $t0, %lo(D_800DC95C) # addiu $t0, $t0, -0x36a4 +/* 0337B4 80032BB4 8D050000 */ lw $a1, ($t0) +/* 0337B8 80032BB8 00001025 */ move $v0, $zero +/* 0337BC 80032BBC 18A0000E */ blez $a1, .L80032BF8 +/* 0337C0 80032BC0 00001825 */ move $v1, $zero +/* 0337C4 80032BC4 3C0E800E */ lui $t6, %hi(D_800DC950) # $t6, 0x800e +/* 0337C8 80032BC8 8DCEC950 */ lw $t6, %lo(D_800DC950)($t6) +/* 0337CC 80032BCC 00007880 */ sll $t7, $zero, 2 +/* 0337D0 80032BD0 01CF3021 */ addu $a2, $t6, $t7 +.L80032BD4: +/* 0337D4 80032BD4 8CC70000 */ lw $a3, ($a2) +/* 0337D8 80032BD8 24630001 */ addiu $v1, $v1, 1 +/* 0337DC 80032BDC 14870002 */ bne $a0, $a3, .L80032BE8 +/* 0337E0 80032BE0 0065082A */ slt $at, $v1, $a1 +/* 0337E4 80032BE4 00E01025 */ move $v0, $a3 +.L80032BE8: +/* 0337E8 80032BE8 10200003 */ beqz $at, .L80032BF8 +/* 0337EC 80032BEC 24C60004 */ addiu $a2, $a2, 4 +/* 0337F0 80032BF0 1040FFF8 */ beqz $v0, .L80032BD4 +/* 0337F4 80032BF4 00000000 */ nop +.L80032BF8: +/* 0337F8 80032BF8 1040001A */ beqz $v0, .L80032C64 +/* 0337FC 80032BFC 24B8FFFF */ addiu $t8, $a1, -1 +/* 033800 80032C00 2463FFFF */ addiu $v1, $v1, -1 +/* 033804 80032C04 0078082A */ slt $at, $v1, $t8 +/* 033808 80032C08 AD180000 */ sw $t8, ($t0) +/* 03380C 80032C0C 1020000F */ beqz $at, .L80032C4C +/* 033810 80032C10 03002825 */ move $a1, $t8 +/* 033814 80032C14 3C07800E */ lui $a3, %hi(D_800DC950) # $a3, 0x800e +/* 033818 80032C18 24E7C950 */ addiu $a3, %lo(D_800DC950) # addiu $a3, $a3, -0x36b0 +/* 03381C 80032C1C 00032080 */ sll $a0, $v1, 2 +.L80032C20: +/* 033820 80032C20 8CF90000 */ lw $t9, ($a3) +/* 033824 80032C24 24630001 */ addiu $v1, $v1, 1 +/* 033828 80032C28 03243021 */ addu $a2, $t9, $a0 +/* 03382C 80032C2C 8CC90004 */ lw $t1, 4($a2) +/* 033830 80032C30 24840004 */ addiu $a0, $a0, 4 +/* 033834 80032C34 ACC90000 */ sw $t1, ($a2) +/* 033838 80032C38 8D050000 */ lw $a1, ($t0) +/* 03383C 80032C3C 00000000 */ nop +/* 033840 80032C40 0065082A */ slt $at, $v1, $a1 +/* 033844 80032C44 1420FFF6 */ bnez $at, .L80032C20 +/* 033848 80032C48 00000000 */ nop +.L80032C4C: +/* 03384C 80032C4C 3C07800E */ lui $a3, %hi(D_800DC950) # $a3, 0x800e +/* 033850 80032C50 24E7C950 */ addiu $a3, %lo(D_800DC950) # addiu $a3, $a3, -0x36b0 +/* 033854 80032C54 8CEA0000 */ lw $t2, ($a3) +/* 033858 80032C58 00055880 */ sll $t3, $a1, 2 +/* 03385C 80032C5C 014B6021 */ addu $t4, $t2, $t3 +/* 033860 80032C60 AD820000 */ sw $v0, ($t4) +.L80032C64: +/* 033864 80032C64 03E00008 */ jr $ra +/* 033868 80032C68 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80032C6C.s b/asm/non_matchings/unknown_032760/func_80032C6C.s new file mode 100644 index 00000000..75fcf544 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80032C6C.s @@ -0,0 +1,6 @@ +glabel func_80032C6C +/* 03386C 80032C6C 3C02800E */ lui $v0, %hi(D_800DC95C) # $v0, 0x800e +/* 033870 80032C70 8C42C95C */ lw $v0, %lo(D_800DC95C)($v0) +/* 033874 80032C74 03E00008 */ jr $ra +/* 033878 80032C78 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80032C7C.s b/asm/non_matchings/unknown_032760/func_80032C7C.s new file mode 100644 index 00000000..7b7a983c --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80032C7C.s @@ -0,0 +1,760 @@ +glabel func_80032C7C +/* 03387C 80032C7C 27BDFF70 */ addiu $sp, $sp, -0x90 +/* 033880 80032C80 AFBF005C */ sw $ra, 0x5c($sp) +/* 033884 80032C84 AFBE0058 */ sw $fp, 0x58($sp) +/* 033888 80032C88 AFB70054 */ sw $s7, 0x54($sp) +/* 03388C 80032C8C AFB60050 */ sw $s6, 0x50($sp) +/* 033890 80032C90 AFB5004C */ sw $s5, 0x4c($sp) +/* 033894 80032C94 AFB40048 */ sw $s4, 0x48($sp) +/* 033898 80032C98 AFB30044 */ sw $s3, 0x44($sp) +/* 03389C 80032C9C AFB20040 */ sw $s2, 0x40($sp) +/* 0338A0 80032CA0 AFB1003C */ sw $s1, 0x3c($sp) +/* 0338A4 80032CA4 AFB00038 */ sw $s0, 0x38($sp) +/* 0338A8 80032CA8 E7BB0030 */ swc1 $f27, 0x30($sp) +/* 0338AC 80032CAC E7BA0034 */ swc1 $f26, 0x34($sp) +/* 0338B0 80032CB0 E7B90028 */ swc1 $f25, 0x28($sp) +/* 0338B4 80032CB4 E7B8002C */ swc1 $f24, 0x2c($sp) +/* 0338B8 80032CB8 E7B70020 */ swc1 $f23, 0x20($sp) +/* 0338BC 80032CBC E7B60024 */ swc1 $f22, 0x24($sp) +/* 0338C0 80032CC0 E7B50018 */ swc1 $f21, 0x18($sp) +/* 0338C4 80032CC4 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 0338C8 80032CC8 8C830040 */ lw $v1, 0x40($a0) +/* 0338CC 80032CCC 0080F025 */ move $fp, $a0 +/* 0338D0 80032CD0 906E003D */ lbu $t6, 0x3d($v1) +/* 0338D4 80032CD4 00000000 */ nop +/* 0338D8 80032CD8 15C002AF */ bnez $t6, .L80033798 +/* 0338DC 80032CDC 8FBF005C */ lw $ra, 0x5c($sp) +/* 0338E0 80032CE0 80620053 */ lb $v0, 0x53($v1) +/* 0338E4 80032CE4 24010001 */ li $at, 1 +/* 0338E8 80032CE8 10400009 */ beqz $v0, .L80032D10 +/* 0338EC 80032CEC 3C178012 */ lui $s7, %hi(D_8011D4CC) # $s7, 0x8012 +/* 0338F0 80032CF0 10410009 */ beq $v0, $at, .L80032D18 +/* 0338F4 80032CF4 24010002 */ li $at, 2 +/* 0338F8 80032CF8 10410009 */ beq $v0, $at, .L80032D20 +/* 0338FC 80032CFC 24010003 */ li $at, 3 +/* 033900 80032D00 10410009 */ beq $v0, $at, .L80032D28 +/* 033904 80032D04 24030004 */ li $v1, 4 +/* 033908 80032D08 10000007 */ b .L80032D28 +/* 03390C 80032D0C 00001825 */ move $v1, $zero +.L80032D10: +/* 033910 80032D10 10000005 */ b .L80032D28 +/* 033914 80032D14 24030002 */ li $v1, 2 +.L80032D18: +/* 033918 80032D18 10000003 */ b .L80032D28 +/* 03391C 80032D1C 24030004 */ li $v1, 4 +.L80032D20: +/* 033920 80032D20 10000001 */ b .L80032D28 +/* 033924 80032D24 24030004 */ li $v1, 4 +.L80032D28: +/* 033928 80032D28 444FF800 */ cfc1 $t7, $31 +/* 03392C 80032D2C C7C4000C */ lwc1 $f4, 0xc($fp) +/* 033930 80032D30 35E10003 */ ori $at, $t7, 3 +/* 033934 80032D34 38210002 */ xori $at, $at, 2 +/* 033938 80032D38 44C1F800 */ ctc1 $at, $31 +/* 03393C 80032D3C 3C11800E */ lui $s1, %hi(D_800DC968) # $s1, 0x800e +/* 033940 80032D40 460021A4 */ cvt.w.s $f6, $f4 +/* 033944 80032D44 2631C968 */ addiu $s1, %lo(D_800DC968) # addiu $s1, $s1, -0x3698 +/* 033948 80032D48 44CFF800 */ ctc1 $t7, $31 +/* 03394C 80032D4C 44183000 */ mfc1 $t8, $f6 +/* 033950 80032D50 3C0D800E */ lui $t5, %hi(D_800DC95C) # $t5, 0x800e +/* 033954 80032D54 4459F800 */ cfc1 $t9, $31 +/* 033958 80032D58 A7B80082 */ sh $t8, 0x82($sp) +/* 03395C 80032D5C 37210003 */ ori $at, $t9, 3 +/* 033960 80032D60 38210002 */ xori $at, $at, 2 +/* 033964 80032D64 44C1F800 */ ctc1 $at, $31 +/* 033968 80032D68 C7C80010 */ lwc1 $f8, 0x10($fp) +/* 03396C 80032D6C 0000A825 */ move $s5, $zero +/* 033970 80032D70 460042A4 */ cvt.w.s $f10, $f8 +/* 033974 80032D74 00001025 */ move $v0, $zero +/* 033978 80032D78 44D9F800 */ ctc1 $t9, $31 +/* 03397C 80032D7C 440A5000 */ mfc1 $t2, $f10 +/* 033980 80032D80 26F7D4CC */ addiu $s7, %lo(D_8011D4CC) # addiu $s7, $s7, -0x2b34 +/* 033984 80032D84 444BF800 */ cfc1 $t3, $31 +/* 033988 80032D88 A7AA0080 */ sh $t2, 0x80($sp) +/* 03398C 80032D8C 35610003 */ ori $at, $t3, 3 +/* 033990 80032D90 38210002 */ xori $at, $at, 2 +/* 033994 80032D94 44C1F800 */ ctc1 $at, $31 +/* 033998 80032D98 C7D00014 */ lwc1 $f16, 0x14($fp) +/* 03399C 80032D9C AE200000 */ sw $zero, ($s1) +/* 0339A0 80032DA0 460084A4 */ cvt.w.s $f18, $f16 +/* 0339A4 80032DA4 8DADC95C */ lw $t5, %lo(D_800DC95C)($t5) +/* 0339A8 80032DA8 440C9000 */ mfc1 $t4, $f18 +/* 0339AC 80032DAC 44CBF800 */ ctc1 $t3, $31 +/* 0339B0 80032DB0 19A00137 */ blez $t5, .L80033290 +/* 0339B4 80032DB4 A7AC007E */ sh $t4, 0x7e($sp) +/* 0339B8 80032DB8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0339BC 80032DBC 3C168012 */ lui $s6, %hi(D_8011D4C4) # $s6, 0x8012 +/* 0339C0 80032DC0 3C148012 */ lui $s4, %hi(D_8011D4C8) # $s4, 0x8012 +/* 0339C4 80032DC4 3C13800E */ lui $s3, %hi(D_800DC960) # $s3, 0x800e +/* 0339C8 80032DC8 4481C000 */ mtc1 $at, $f24 +/* 0339CC 80032DCC 4480D000 */ mtc1 $zero, $f26 +/* 0339D0 80032DD0 4480B000 */ mtc1 $zero, $f22 +/* 0339D4 80032DD4 2673C960 */ addiu $s3, %lo(D_800DC960) # addiu $s3, $s3, -0x36a0 +/* 0339D8 80032DD8 2694D4C8 */ addiu $s4, %lo(D_8011D4C8) # addiu $s4, $s4, -0x2b38 +/* 0339DC 80032DDC 26D6D4C4 */ addiu $s6, %lo(D_8011D4C4) # addiu $s6, $s6, -0x2b3c +/* 0339E0 80032DE0 AFA30064 */ sw $v1, 0x64($sp) +/* 0339E4 80032DE4 24120014 */ li $s2, 20 +.L80032DE8: +/* 0339E8 80032DE8 3C0E800E */ lui $t6, %hi(D_800DC950) # $t6, 0x800e +/* 0339EC 80032DEC 8DCEC950 */ lw $t6, %lo(D_800DC950)($t6) +/* 0339F0 80032DF0 8FB90064 */ lw $t9, 0x64($sp) +/* 0339F4 80032DF4 01C27821 */ addu $t7, $t6, $v0 +/* 0339F8 80032DF8 8DF00000 */ lw $s0, ($t7) +/* 0339FC 80032DFC 00000000 */ nop +/* 033A00 80032E00 92180002 */ lbu $t8, 2($s0) +/* 033A04 80032E04 00000000 */ nop +/* 033A08 80032E08 03195024 */ and $t2, $t8, $t9 +/* 033A0C 80032E0C 1140011A */ beqz $t2, .L80033278 +/* 033A10 80032E10 00000000 */ nop +/* 033A14 80032E14 920B0004 */ lbu $t3, 4($s0) +/* 033A18 80032E18 24010001 */ li $at, 1 +/* 033A1C 80032E1C 15610116 */ bne $t3, $at, .L80033278 +/* 033A20 80032E20 00000000 */ nop +/* 033A24 80032E24 87AC0082 */ lh $t4, 0x82($sp) +/* 033A28 80032E28 860D0050 */ lh $t5, 0x50($s0) +/* 033A2C 80032E2C 00000000 */ nop +/* 033A30 80032E30 018D082A */ slt $at, $t4, $t5 +/* 033A34 80032E34 14200110 */ bnez $at, .L80033278 +/* 033A38 80032E38 00000000 */ nop +/* 033A3C 80032E3C 860E0056 */ lh $t6, 0x56($s0) +/* 033A40 80032E40 87AF0080 */ lh $t7, 0x80($sp) +/* 033A44 80032E44 01CC082A */ slt $at, $t6, $t4 +/* 033A48 80032E48 1420010B */ bnez $at, .L80033278 +/* 033A4C 80032E4C 00000000 */ nop +/* 033A50 80032E50 86180052 */ lh $t8, 0x52($s0) +/* 033A54 80032E54 00000000 */ nop +/* 033A58 80032E58 01F8082A */ slt $at, $t7, $t8 +/* 033A5C 80032E5C 14200106 */ bnez $at, .L80033278 +/* 033A60 80032E60 00000000 */ nop +/* 033A64 80032E64 86190058 */ lh $t9, 0x58($s0) +/* 033A68 80032E68 87AA007E */ lh $t2, 0x7e($sp) +/* 033A6C 80032E6C 032F082A */ slt $at, $t9, $t7 +/* 033A70 80032E70 14200101 */ bnez $at, .L80033278 +/* 033A74 80032E74 00000000 */ nop +/* 033A78 80032E78 860B0054 */ lh $t3, 0x54($s0) +/* 033A7C 80032E7C 00000000 */ nop +/* 033A80 80032E80 014B082A */ slt $at, $t2, $t3 +/* 033A84 80032E84 142000FC */ bnez $at, .L80033278 +/* 033A88 80032E88 00000000 */ nop +/* 033A8C 80032E8C 860D005A */ lh $t5, 0x5a($s0) +/* 033A90 80032E90 00000000 */ nop +/* 033A94 80032E94 01AA082A */ slt $at, $t5, $t2 +/* 033A98 80032E98 142000F7 */ bnez $at, .L80033278 +/* 033A9C 80032E9C 00000000 */ nop +/* 033AA0 80032EA0 920E0000 */ lbu $t6, ($s0) +/* 033AA4 80032EA4 00000000 */ nop +/* 033AA8 80032EA8 15C00035 */ bnez $t6, .L80032F80 +/* 033AAC 80032EAC 00000000 */ nop +/* 033AB0 80032EB0 8E0C0028 */ lw $t4, 0x28($s0) +/* 033AB4 80032EB4 3C010001 */ lui $at, 1 +/* 033AB8 80032EB8 0181082A */ slt $at, $t4, $at +/* 033ABC 80032EBC 142000EE */ bnez $at, .L80033278 +/* 033AC0 80032EC0 00000000 */ nop +/* 033AC4 80032EC4 8E390000 */ lw $t9, ($s1) +/* 033AC8 80032EC8 8E780000 */ lw $t8, ($s3) +/* 033ACC 80032ECC 03320019 */ multu $t9, $s2 +/* 033AD0 80032ED0 00007812 */ mflo $t7 +/* 033AD4 80032ED4 030F5821 */ addu $t3, $t8, $t7 +/* 033AD8 80032ED8 AD700000 */ sw $s0, ($t3) +/* 033ADC 80032EDC 8E2C0000 */ lw $t4, ($s1) +/* 033AE0 80032EE0 8E6E0000 */ lw $t6, ($s3) +/* 033AE4 80032EE4 01920019 */ multu $t4, $s2 +/* 033AE8 80032EE8 8E0D001C */ lw $t5, 0x1c($s0) +/* 033AEC 80032EEC 00000000 */ nop +/* 033AF0 80032EF0 000D5403 */ sra $t2, $t5, 0x10 +/* 033AF4 80032EF4 0000C812 */ mflo $t9 +/* 033AF8 80032EF8 01D9C021 */ addu $t8, $t6, $t9 +/* 033AFC 80032EFC AF0A0004 */ sw $t2, 4($t8) +/* 033B00 80032F00 8E2C0000 */ lw $t4, ($s1) +/* 033B04 80032F04 8E6D0000 */ lw $t5, ($s3) +/* 033B08 80032F08 01920019 */ multu $t4, $s2 +/* 033B0C 80032F0C 8E0F0020 */ lw $t7, 0x20($s0) +/* 033B10 80032F10 00000000 */ nop +/* 033B14 80032F14 000F5C03 */ sra $t3, $t7, 0x10 +/* 033B18 80032F18 00007012 */ mflo $t6 +/* 033B1C 80032F1C 01AEC821 */ addu $t9, $t5, $t6 +/* 033B20 80032F20 AF2B0008 */ sw $t3, 8($t9) +/* 033B24 80032F24 8E2C0000 */ lw $t4, ($s1) +/* 033B28 80032F28 8E6F0000 */ lw $t7, ($s3) +/* 033B2C 80032F2C 01920019 */ multu $t4, $s2 +/* 033B30 80032F30 8E0A0024 */ lw $t2, 0x24($s0) +/* 033B34 80032F34 00000000 */ nop +/* 033B38 80032F38 000AC403 */ sra $t8, $t2, 0x10 +/* 033B3C 80032F3C 00006812 */ mflo $t5 +/* 033B40 80032F40 01ED7021 */ addu $t6, $t7, $t5 +/* 033B44 80032F44 ADD8000C */ sw $t8, 0xc($t6) +/* 033B48 80032F48 8E2C0000 */ lw $t4, ($s1) +/* 033B4C 80032F4C 8E6A0000 */ lw $t2, ($s3) +/* 033B50 80032F50 01920019 */ multu $t4, $s2 +/* 033B54 80032F54 8E0B0028 */ lw $t3, 0x28($s0) +/* 033B58 80032F58 00000000 */ nop +/* 033B5C 80032F5C 000BCC03 */ sra $t9, $t3, 0x10 +/* 033B60 80032F60 00007812 */ mflo $t7 +/* 033B64 80032F64 014F6821 */ addu $t5, $t2, $t7 +/* 033B68 80032F68 ADB90010 */ sw $t9, 0x10($t5) +/* 033B6C 80032F6C 8E380000 */ lw $t8, ($s1) +/* 033B70 80032F70 00000000 */ nop +/* 033B74 80032F74 270E0001 */ addiu $t6, $t8, 1 +/* 033B78 80032F78 100000BF */ b .L80033278 +/* 033B7C 80032F7C AE2E0000 */ sw $t6, ($s1) +.L80032F80: +/* 033B80 80032F80 C6040010 */ lwc1 $f4, 0x10($s0) +/* 033B84 80032F84 C7C6000C */ lwc1 $f6, 0xc($fp) +/* 033B88 80032F88 24010002 */ li $at, 2 +/* 033B8C 80032F8C 46062201 */ sub.s $f8, $f4, $f6 +/* 033B90 80032F90 E6C80000 */ swc1 $f8, ($s6) +/* 033B94 80032F94 C7D00010 */ lwc1 $f16, 0x10($fp) +/* 033B98 80032F98 C60A0014 */ lwc1 $f10, 0x14($s0) +/* 033B9C 80032F9C 00000000 */ nop +/* 033BA0 80032FA0 46105481 */ sub.s $f18, $f10, $f16 +/* 033BA4 80032FA4 E6920000 */ swc1 $f18, ($s4) +/* 033BA8 80032FA8 C7C60014 */ lwc1 $f6, 0x14($fp) +/* 033BAC 80032FAC C6040018 */ lwc1 $f4, 0x18($s0) +/* 033BB0 80032FB0 00000000 */ nop +/* 033BB4 80032FB4 46062201 */ sub.s $f8, $f4, $f6 +/* 033BB8 80032FB8 E6E80000 */ swc1 $f8, ($s7) +/* 033BBC 80032FBC 920B0000 */ lbu $t3, ($s0) +/* 033BC0 80032FC0 00000000 */ nop +/* 033BC4 80032FC4 15610002 */ bne $t3, $at, .L80032FD0 +/* 033BC8 80032FC8 00000000 */ nop +/* 033BCC 80032FCC E6960000 */ swc1 $f22, ($s4) +.L80032FD0: +/* 033BD0 80032FD0 C6C00000 */ lwc1 $f0, ($s6) +/* 033BD4 80032FD4 C6820000 */ lwc1 $f2, ($s4) +/* 033BD8 80032FD8 46000282 */ mul.s $f10, $f0, $f0 +/* 033BDC 80032FDC C6EC0000 */ lwc1 $f12, ($s7) +/* 033BE0 80032FE0 3C018012 */ lui $at, %hi(D_8011D4C0) # $at, 0x8012 +/* 033BE4 80032FE4 46021402 */ mul.s $f16, $f2, $f2 +/* 033BE8 80032FE8 00000000 */ nop +/* 033BEC 80032FEC 460C6102 */ mul.s $f4, $f12, $f12 +/* 033BF0 80032FF0 46105480 */ add.s $f18, $f10, $f16 +/* 033BF4 80032FF4 46049180 */ add.s $f6, $f18, $f4 +/* 033BF8 80032FF8 E426D4C0 */ swc1 $f6, %lo(D_8011D4C0)($at) +/* 033BFC 80032FFC C6080068 */ lwc1 $f8, 0x68($s0) +/* 033C00 80033000 00000000 */ nop +/* 033C04 80033004 4608303C */ c.lt.s $f6, $f8 +/* 033C08 80033008 00000000 */ nop +/* 033C0C 8003300C 4500009A */ bc1f .L80033278 +/* 033C10 80033010 00000000 */ nop +/* 033C14 80033014 920C0001 */ lbu $t4, 1($s0) +/* 033C18 80033018 24010002 */ li $at, 2 +/* 033C1C 8003301C 15810006 */ bne $t4, $at, .L80033038 +/* 033C20 80033020 02002025 */ move $a0, $s0 +/* 033C24 80033024 0C00CF02 */ jal func_80033C08 +/* 033C28 80033028 AFA20068 */ sw $v0, 0x68($sp) +/* 033C2C 8003302C 8FA20068 */ lw $v0, 0x68($sp) +/* 033C30 80033030 10000002 */ b .L8003303C +/* 033C34 80033034 46000506 */ mov.s $f20, $f0 +.L80033038: +/* 033C38 80033038 4600C506 */ mov.s $f20, $f24 +.L8003303C: +/* 033C3C 8003303C 4614B03C */ c.lt.s $f22, $f20 +/* 033C40 80033040 02002025 */ move $a0, $s0 +/* 033C44 80033044 4500008C */ bc1f .L80033278 +/* 033C48 80033048 00000000 */ nop +/* 033C4C 8003304C 0C00CE85 */ jal func_80033A14 +/* 033C50 80033050 AFA20068 */ sw $v0, 0x68($sp) +/* 033C54 80033054 4600A502 */ mul.s $f20, $f20, $f0 +/* 033C58 80033058 8FA20068 */ lw $v0, 0x68($sp) +/* 033C5C 8003305C 3C08800E */ lui $t0, %hi(D_800DC964) # $t0, 0x800e +/* 033C60 80033060 2508C964 */ addiu $t0, %lo(D_800DC964) # addiu $t0, $t0, -0x369c +/* 033C64 80033064 4614B03C */ c.lt.s $f22, $f20 +/* 033C68 80033068 2409000C */ li $t1, 12 +/* 033C6C 8003306C 45000082 */ bc1f .L80033278 +/* 033C70 80033070 00000000 */ nop +/* 033C74 80033074 8FCA0040 */ lw $t2, 0x40($fp) +/* 033C78 80033078 3C018012 */ lui $at, %hi(D_8011D4C0) # $at, 0x8012 +/* 033C7C 8003307C 914F0071 */ lbu $t7, 0x71($t2) +/* 033C80 80033080 00000000 */ nop +/* 033C84 80033084 11E00033 */ beqz $t7, .L80033154 +/* 033C88 80033088 00000000 */ nop +/* 033C8C 8003308C C42CD4C0 */ lwc1 $f12, %lo(D_8011D4C0)($at) +/* 033C90 80033090 3C01BF80 */ li $at, 0xBF800000 # -1.000000 +/* 033C94 80033094 460CB03C */ c.lt.s $f22, $f12 +/* 033C98 80033098 00000000 */ nop +/* 033C9C 8003309C 45000014 */ bc1f .L800330F0 +/* 033CA0 800330A0 00000000 */ nop +/* 033CA4 800330A4 0C0326B4 */ jal sqrtf +/* 033CA8 800330A8 AFA20068 */ sw $v0, 0x68($sp) +/* 033CAC 800330AC 00000000 */ nop +/* 033CB0 800330B0 4600C083 */ div.s $f2, $f24, $f0 +/* 033CB4 800330B4 C6CA0000 */ lwc1 $f10, ($s6) +/* 033CB8 800330B8 C6920000 */ lwc1 $f18, ($s4) +/* 033CBC 800330BC C6E60000 */ lwc1 $f6, ($s7) +/* 033CC0 800330C0 8FA20068 */ lw $v0, 0x68($sp) +/* 033CC4 800330C4 3C08800E */ lui $t0, %hi(D_800DC964) # $t0, 0x800e +/* 033CC8 800330C8 2508C964 */ addiu $t0, %lo(D_800DC964) # addiu $t0, $t0, -0x369c +/* 033CCC 800330CC 2409000C */ li $t1, 12 +/* 033CD0 800330D0 46025402 */ mul.s $f16, $f10, $f2 +/* 033CD4 800330D4 00000000 */ nop +/* 033CD8 800330D8 46029102 */ mul.s $f4, $f18, $f2 +/* 033CDC 800330DC E6D00000 */ swc1 $f16, ($s6) +/* 033CE0 800330E0 46023202 */ mul.s $f8, $f6, $f2 +/* 033CE4 800330E4 E6840000 */ swc1 $f4, ($s4) +/* 033CE8 800330E8 10000005 */ b .L80033100 +/* 033CEC 800330EC E6E80000 */ swc1 $f8, ($s7) +.L800330F0: +/* 033CF0 800330F0 44815000 */ mtc1 $at, $f10 +/* 033CF4 800330F4 E6DA0000 */ swc1 $f26, ($s6) +/* 033CF8 800330F8 E69A0000 */ swc1 $f26, ($s4) +/* 033CFC 800330FC E6EA0000 */ swc1 $f10, ($s7) +.L80033100: +/* 033D00 80033100 8E2D0000 */ lw $t5, ($s1) +/* 033D04 80033104 8D190000 */ lw $t9, ($t0) +/* 033D08 80033108 01A90019 */ multu $t5, $t1 +/* 033D0C 8003310C C6D00000 */ lwc1 $f16, ($s6) +/* 033D10 80033110 0000C012 */ mflo $t8 +/* 033D14 80033114 03387021 */ addu $t6, $t9, $t8 +/* 033D18 80033118 E5D00000 */ swc1 $f16, ($t6) +/* 033D1C 8003311C 8E2C0000 */ lw $t4, ($s1) +/* 033D20 80033120 8D0B0000 */ lw $t3, ($t0) +/* 033D24 80033124 01890019 */ multu $t4, $t1 +/* 033D28 80033128 C6920000 */ lwc1 $f18, ($s4) +/* 033D2C 8003312C 00005012 */ mflo $t2 +/* 033D30 80033130 016A7821 */ addu $t7, $t3, $t2 +/* 033D34 80033134 E5F20004 */ swc1 $f18, 4($t7) +/* 033D38 80033138 8E390000 */ lw $t9, ($s1) +/* 033D3C 8003313C 8D0D0000 */ lw $t5, ($t0) +/* 033D40 80033140 03290019 */ multu $t9, $t1 +/* 033D44 80033144 C6E40000 */ lwc1 $f4, ($s7) +/* 033D48 80033148 0000C012 */ mflo $t8 +/* 033D4C 8003314C 01B87021 */ addu $t6, $t5, $t8 +/* 033D50 80033150 E5C40008 */ swc1 $f4, 8($t6) +.L80033154: +/* 033D54 80033154 8E2B0000 */ lw $t3, ($s1) +/* 033D58 80033158 8E6C0000 */ lw $t4, ($s3) +/* 033D5C 8003315C 01720019 */ multu $t3, $s2 +/* 033D60 80033160 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 033D64 80033164 00005012 */ mflo $t2 +/* 033D68 80033168 018A7821 */ addu $t7, $t4, $t2 +/* 033D6C 8003316C ADF00000 */ sw $s0, ($t7) +/* 033D70 80033170 8E2E0000 */ lw $t6, ($s1) +/* 033D74 80033174 8E780000 */ lw $t8, ($s3) +/* 033D78 80033178 01D20019 */ multu $t6, $s2 +/* 033D7C 8003317C 8E19001C */ lw $t9, 0x1c($s0) +/* 033D80 80033180 00000000 */ nop +/* 033D84 80033184 00196C03 */ sra $t5, $t9, 0x10 +/* 033D88 80033188 00005812 */ mflo $t3 +/* 033D8C 8003318C 030B6021 */ addu $t4, $t8, $t3 +/* 033D90 80033190 AD8D0004 */ sw $t5, 4($t4) +/* 033D94 80033194 8E2E0000 */ lw $t6, ($s1) +/* 033D98 80033198 8E790000 */ lw $t9, ($s3) +/* 033D9C 8003319C 01D20019 */ multu $t6, $s2 +/* 033DA0 800331A0 8E0A0020 */ lw $t2, 0x20($s0) +/* 033DA4 800331A4 00000000 */ nop +/* 033DA8 800331A8 000A7C03 */ sra $t7, $t2, 0x10 +/* 033DAC 800331AC 0000C012 */ mflo $t8 +/* 033DB0 800331B0 03385821 */ addu $t3, $t9, $t8 +/* 033DB4 800331B4 AD6F0008 */ sw $t7, 8($t3) +/* 033DB8 800331B8 8E2E0000 */ lw $t6, ($s1) +/* 033DBC 800331BC 444FF800 */ cfc1 $t7, $31 +/* 033DC0 800331C0 01D20019 */ multu $t6, $s2 +/* 033DC4 800331C4 240B0001 */ li $t3, 1 +/* 033DC8 800331C8 44CBF800 */ ctc1 $t3, $31 +/* 033DCC 800331CC 8E6A0000 */ lw $t2, ($s3) +/* 033DD0 800331D0 4600A1A4 */ cvt.w.s $f6, $f20 +/* 033DD4 800331D4 8E0D0024 */ lw $t5, 0x24($s0) +/* 033DD8 800331D8 444BF800 */ cfc1 $t3, $31 +/* 033DDC 800331DC 000D6403 */ sra $t4, $t5, 0x10 +/* 033DE0 800331E0 316B0078 */ andi $t3, $t3, 0x78 +/* 033DE4 800331E4 0000C812 */ mflo $t9 +/* 033DE8 800331E8 0159C021 */ addu $t8, $t2, $t9 +/* 033DEC 800331EC 11600012 */ beqz $t3, .L80033238 +/* 033DF0 800331F0 AF0C000C */ sw $t4, 0xc($t8) +/* 033DF4 800331F4 44813000 */ mtc1 $at, $f6 +/* 033DF8 800331F8 240B0001 */ li $t3, 1 +/* 033DFC 800331FC 4606A181 */ sub.s $f6, $f20, $f6 +/* 033E00 80033200 3C018000 */ lui $at, 0x8000 +/* 033E04 80033204 44CBF800 */ ctc1 $t3, $31 +/* 033E08 80033208 00000000 */ nop +/* 033E0C 8003320C 460031A4 */ cvt.w.s $f6, $f6 +/* 033E10 80033210 444BF800 */ cfc1 $t3, $31 +/* 033E14 80033214 00000000 */ nop +/* 033E18 80033218 316B0078 */ andi $t3, $t3, 0x78 +/* 033E1C 8003321C 15600004 */ bnez $t3, .L80033230 +/* 033E20 80033220 00000000 */ nop +/* 033E24 80033224 440B3000 */ mfc1 $t3, $f6 +/* 033E28 80033228 10000007 */ b .L80033248 +/* 033E2C 8003322C 01615825 */ or $t3, $t3, $at +.L80033230: +/* 033E30 80033230 10000005 */ b .L80033248 +/* 033E34 80033234 240BFFFF */ li $t3, -1 +.L80033238: +/* 033E38 80033238 440B3000 */ mfc1 $t3, $f6 +/* 033E3C 8003323C 00000000 */ nop +/* 033E40 80033240 0560FFFB */ bltz $t3, .L80033230 +/* 033E44 80033244 00000000 */ nop +.L80033248: +/* 033E48 80033248 8E2A0000 */ lw $t2, ($s1) +/* 033E4C 8003324C 8E6E0000 */ lw $t6, ($s3) +/* 033E50 80033250 01520019 */ multu $t2, $s2 +/* 033E54 80033254 316D00FF */ andi $t5, $t3, 0xff +/* 033E58 80033258 44CFF800 */ ctc1 $t7, $31 +/* 033E5C 8003325C 0000C812 */ mflo $t9 +/* 033E60 80033260 01D96021 */ addu $t4, $t6, $t9 +/* 033E64 80033264 AD8D0010 */ sw $t5, 0x10($t4) +/* 033E68 80033268 8E380000 */ lw $t8, ($s1) +/* 033E6C 8003326C 00000000 */ nop +/* 033E70 80033270 270F0001 */ addiu $t7, $t8, 1 +/* 033E74 80033274 AE2F0000 */ sw $t7, ($s1) +.L80033278: +/* 033E78 80033278 3C0B800E */ lui $t3, %hi(D_800DC95C) # $t3, 0x800e +/* 033E7C 8003327C 8D6BC95C */ lw $t3, %lo(D_800DC95C)($t3) +/* 033E80 80033280 26B50001 */ addiu $s5, $s5, 1 +/* 033E84 80033284 02AB082A */ slt $at, $s5, $t3 +/* 033E88 80033288 1420FED7 */ bnez $at, .L80032DE8 +/* 033E8C 8003328C 24420004 */ addiu $v0, $v0, 4 +.L80033290: +/* 033E90 80033290 8FCA0040 */ lw $t2, 0x40($fp) +/* 033E94 80033294 3C08800E */ lui $t0, %hi(D_800DC964) # $t0, 0x800e +/* 033E98 80033298 914E0071 */ lbu $t6, 0x71($t2) +/* 033E9C 8003329C 3C13800E */ lui $s3, %hi(D_800DC960) # $s3, 0x800e +/* 033EA0 800332A0 2673C960 */ addiu $s3, %lo(D_800DC960) # addiu $s3, $s3, -0x36a0 +/* 033EA4 800332A4 2508C964 */ addiu $t0, %lo(D_800DC964) # addiu $t0, $t0, -0x369c +/* 033EA8 800332A8 2409000C */ li $t1, 12 +/* 033EAC 800332AC 11C00111 */ beqz $t6, .L800336F4 +/* 033EB0 800332B0 24120014 */ li $s2, 20 +/* 033EB4 800332B4 8E270000 */ lw $a3, ($s1) +/* 033EB8 800332B8 24010001 */ li $at, 1 +/* 033EBC 800332BC 14E00007 */ bnez $a3, .L800332DC +/* 033EC0 800332C0 00000000 */ nop +/* 033EC4 800332C4 8FD90054 */ lw $t9, 0x54($fp) +/* 033EC8 800332C8 00000000 */ nop +/* 033ECC 800332CC A3200007 */ sb $zero, 7($t9) +/* 033ED0 800332D0 8FCD0054 */ lw $t5, 0x54($fp) +/* 033ED4 800332D4 1000012F */ b .L80033794 +/* 033ED8 800332D8 A1A00011 */ sb $zero, 0x11($t5) +.L800332DC: +/* 033EDC 800332DC 14E10043 */ bne $a3, $at, .L800333EC +/* 033EE0 800332E0 00000000 */ nop +/* 033EE4 800332E4 8E6C0000 */ lw $t4, ($s3) +/* 033EE8 800332E8 8FCF0054 */ lw $t7, 0x54($fp) +/* 033EEC 800332EC 8D980004 */ lw $t8, 4($t4) +/* 033EF0 800332F0 3C014600 */ li $at, 0x46000000 # 8192.000000 +/* 033EF4 800332F4 A1F80004 */ sb $t8, 4($t7) +/* 033EF8 800332F8 8E6B0000 */ lw $t3, ($s3) +/* 033EFC 800332FC 8FCE0054 */ lw $t6, 0x54($fp) +/* 033F00 80033300 8D6A0008 */ lw $t2, 8($t3) +/* 033F04 80033304 44810000 */ mtc1 $at, $f0 +/* 033F08 80033308 A1CA0005 */ sb $t2, 5($t6) +/* 033F0C 8003330C 8E790000 */ lw $t9, ($s3) +/* 033F10 80033310 8FCC0054 */ lw $t4, 0x54($fp) +/* 033F14 80033314 8F2D000C */ lw $t5, 0xc($t9) +/* 033F18 80033318 00000000 */ nop +/* 033F1C 8003331C A18D0006 */ sb $t5, 6($t4) +/* 033F20 80033320 8E780000 */ lw $t8, ($s3) +/* 033F24 80033324 8FCB0054 */ lw $t3, 0x54($fp) +/* 033F28 80033328 8F0F0010 */ lw $t7, 0x10($t8) +/* 033F2C 8003332C 00000000 */ nop +/* 033F30 80033330 A16F0007 */ sb $t7, 7($t3) +/* 033F34 80033334 8FCA0054 */ lw $t2, 0x54($fp) +/* 033F38 80033338 00000000 */ nop +/* 033F3C 8003333C A1400011 */ sb $zero, 0x11($t2) +/* 033F40 80033340 8D0E0000 */ lw $t6, ($t0) +/* 033F44 80033344 8FCC0054 */ lw $t4, 0x54($fp) +/* 033F48 80033348 C5C80000 */ lwc1 $f8, ($t6) +/* 033F4C 8003334C 00000000 */ nop +/* 033F50 80033350 46004282 */ mul.s $f10, $f8, $f0 +/* 033F54 80033354 4459F800 */ cfc1 $t9, $31 +/* 033F58 80033358 00000000 */ nop +/* 033F5C 8003335C 37210003 */ ori $at, $t9, 3 +/* 033F60 80033360 38210002 */ xori $at, $at, 2 +/* 033F64 80033364 44C1F800 */ ctc1 $at, $31 +/* 033F68 80033368 00000000 */ nop +/* 033F6C 8003336C 46005424 */ cvt.w.s $f16, $f10 +/* 033F70 80033370 440D8000 */ mfc1 $t5, $f16 +/* 033F74 80033374 44D9F800 */ ctc1 $t9, $31 +/* 033F78 80033378 A58D0008 */ sh $t5, 8($t4) +/* 033F7C 8003337C 8D180000 */ lw $t8, ($t0) +/* 033F80 80033380 8FCA0054 */ lw $t2, 0x54($fp) +/* 033F84 80033384 C7120004 */ lwc1 $f18, 4($t8) +/* 033F88 80033388 00000000 */ nop +/* 033F8C 8003338C 46009102 */ mul.s $f4, $f18, $f0 +/* 033F90 80033390 444FF800 */ cfc1 $t7, $31 +/* 033F94 80033394 00000000 */ nop +/* 033F98 80033398 35E10003 */ ori $at, $t7, 3 +/* 033F9C 8003339C 38210002 */ xori $at, $at, 2 +/* 033FA0 800333A0 44C1F800 */ ctc1 $at, $31 +/* 033FA4 800333A4 37210003 */ ori $at, $t9, 3 +/* 033FA8 800333A8 460021A4 */ cvt.w.s $f6, $f4 +/* 033FAC 800333AC 38210002 */ xori $at, $at, 2 +/* 033FB0 800333B0 440B3000 */ mfc1 $t3, $f6 +/* 033FB4 800333B4 44CFF800 */ ctc1 $t7, $31 +/* 033FB8 800333B8 A54B000A */ sh $t3, 0xa($t2) +/* 033FBC 800333BC 8D0E0000 */ lw $t6, ($t0) +/* 033FC0 800333C0 8FCC0054 */ lw $t4, 0x54($fp) +/* 033FC4 800333C4 C5C80008 */ lwc1 $f8, 8($t6) +/* 033FC8 800333C8 00000000 */ nop +/* 033FCC 800333CC 46004282 */ mul.s $f10, $f8, $f0 +/* 033FD0 800333D0 44C1F800 */ ctc1 $at, $31 +/* 033FD4 800333D4 00000000 */ nop +/* 033FD8 800333D8 46005424 */ cvt.w.s $f16, $f10 +/* 033FDC 800333DC 440D8000 */ mfc1 $t5, $f16 +/* 033FE0 800333E0 44D9F800 */ ctc1 $t9, $31 +/* 033FE4 800333E4 100000EB */ b .L80033794 +/* 033FE8 800333E8 A58D000C */ sh $t5, 0xc($t4) +.L800333EC: +/* 033FEC 800333EC 8E660000 */ lw $a2, ($s3) +/* 033FF0 800333F0 24040001 */ li $a0, 1 +/* 033FF4 800333F4 8CD80024 */ lw $t8, 0x24($a2) +/* 033FF8 800333F8 8CCF0010 */ lw $t7, 0x10($a2) +/* 033FFC 800333FC 00002825 */ move $a1, $zero +/* 034000 80033400 030F082A */ slt $at, $t8, $t7 +/* 034004 80033404 10200004 */ beqz $at, .L80033418 +/* 034008 80033408 24C30028 */ addiu $v1, $a2, 0x28 +/* 03400C 8003340C 00002025 */ move $a0, $zero +/* 034010 80033410 10000001 */ b .L80033418 +/* 034014 80033414 24050001 */ li $a1, 1 +.L80033418: +/* 034018 80033418 28E10003 */ slti $at, $a3, 3 +/* 03401C 8003341C 14200020 */ bnez $at, .L800334A0 +/* 034020 80033420 24150002 */ li $s5, 2 +.L80033424: +/* 034024 80033424 00B20019 */ multu $a1, $s2 +/* 034028 80033428 8C620010 */ lw $v0, 0x10($v1) +/* 03402C 8003342C 00005812 */ mflo $t3 +/* 034030 80033430 00CB5021 */ addu $t2, $a2, $t3 +/* 034034 80033434 8D4E0010 */ lw $t6, 0x10($t2) +/* 034038 80033438 00000000 */ nop +/* 03403C 8003343C 01C2082A */ slt $at, $t6, $v0 +/* 034040 80033440 10200013 */ beqz $at, .L80033490 +/* 034044 80033444 00000000 */ nop +/* 034048 80033448 00920019 */ multu $a0, $s2 +/* 03404C 8003344C 00152C00 */ sll $a1, $s5, 0x10 +/* 034050 80033450 00055C03 */ sra $t3, $a1, 0x10 +/* 034054 80033454 01602825 */ move $a1, $t3 +/* 034058 80033458 0000C812 */ mflo $t9 +/* 03405C 8003345C 00D96821 */ addu $t5, $a2, $t9 +/* 034060 80033460 8DAC0010 */ lw $t4, 0x10($t5) +/* 034064 80033464 00000000 */ nop +/* 034068 80033468 0182082A */ slt $at, $t4, $v0 +/* 03406C 8003346C 10200008 */ beqz $at, .L80033490 +/* 034070 80033470 00000000 */ nop +/* 034074 80033474 00042C00 */ sll $a1, $a0, 0x10 +/* 034078 80033478 00152400 */ sll $a0, $s5, 0x10 +/* 03407C 8003347C 0005C403 */ sra $t8, $a1, 0x10 +/* 034080 80033480 00047C03 */ sra $t7, $a0, 0x10 +/* 034084 80033484 03002825 */ move $a1, $t8 +/* 034088 80033488 10000001 */ b .L80033490 +/* 03408C 8003348C 01E02025 */ move $a0, $t7 +.L80033490: +/* 034090 80033490 26B50001 */ addiu $s5, $s5, 1 +/* 034094 80033494 02A7082A */ slt $at, $s5, $a3 +/* 034098 80033498 1420FFE2 */ bnez $at, .L80033424 +/* 03409C 8003349C 24630014 */ addiu $v1, $v1, 0x14 +.L800334A0: +/* 0340A0 800334A0 00920019 */ multu $a0, $s2 +/* 0340A4 800334A4 8FD90054 */ lw $t9, 0x54($fp) +/* 0340A8 800334A8 3C014600 */ li $at, 0x46000000 # 8192.000000 +/* 0340AC 800334AC 44810000 */ mtc1 $at, $f0 +/* 0340B0 800334B0 00001012 */ mflo $v0 +/* 0340B4 800334B4 00C25021 */ addu $t2, $a2, $v0 +/* 0340B8 800334B8 8D4E0004 */ lw $t6, 4($t2) +/* 0340BC 800334BC 00890019 */ multu $a0, $t1 +/* 0340C0 800334C0 A32E0004 */ sb $t6, 4($t9) +/* 0340C4 800334C4 8E6D0000 */ lw $t5, ($s3) +/* 0340C8 800334C8 8FCF0054 */ lw $t7, 0x54($fp) +/* 0340CC 800334CC 01A26021 */ addu $t4, $t5, $v0 +/* 0340D0 800334D0 8D980008 */ lw $t8, 8($t4) +/* 0340D4 800334D4 00000000 */ nop +/* 0340D8 800334D8 A1F80005 */ sb $t8, 5($t7) +/* 0340DC 800334DC 8E6B0000 */ lw $t3, ($s3) +/* 0340E0 800334E0 8FD90054 */ lw $t9, 0x54($fp) +/* 0340E4 800334E4 01625021 */ addu $t2, $t3, $v0 +/* 0340E8 800334E8 8D4E000C */ lw $t6, 0xc($t2) +/* 0340EC 800334EC 00001812 */ mflo $v1 +/* 0340F0 800334F0 A32E0006 */ sb $t6, 6($t9) +/* 0340F4 800334F4 8E6D0000 */ lw $t5, ($s3) +/* 0340F8 800334F8 8FCF0054 */ lw $t7, 0x54($fp) +/* 0340FC 800334FC 01A26021 */ addu $t4, $t5, $v0 +/* 034100 80033500 8D980010 */ lw $t8, 0x10($t4) +/* 034104 80033504 00B20019 */ multu $a1, $s2 +/* 034108 80033508 A1F80007 */ sb $t8, 7($t7) +/* 03410C 8003350C 8D0B0000 */ lw $t3, ($t0) +/* 034110 80033510 8FCD0054 */ lw $t5, 0x54($fp) +/* 034114 80033514 01635021 */ addu $t2, $t3, $v1 +/* 034118 80033518 C5520000 */ lwc1 $f18, ($t2) +/* 03411C 8003351C 00000000 */ nop +/* 034120 80033520 46009102 */ mul.s $f4, $f18, $f0 +/* 034124 80033524 444EF800 */ cfc1 $t6, $31 +/* 034128 80033528 00003812 */ mflo $a3 +/* 03412C 8003352C 35C10003 */ ori $at, $t6, 3 +/* 034130 80033530 38210002 */ xori $at, $at, 2 +/* 034134 80033534 44C1F800 */ ctc1 $at, $31 +/* 034138 80033538 00A90019 */ multu $a1, $t1 +/* 03413C 8003353C 460021A4 */ cvt.w.s $f6, $f4 +/* 034140 80033540 44193000 */ mfc1 $t9, $f6 +/* 034144 80033544 44CEF800 */ ctc1 $t6, $31 +/* 034148 80033548 A5B90008 */ sh $t9, 8($t5) +/* 03414C 8003354C 8D0C0000 */ lw $t4, ($t0) +/* 034150 80033550 8FCA0054 */ lw $t2, 0x54($fp) +/* 034154 80033554 0183C021 */ addu $t8, $t4, $v1 +/* 034158 80033558 C7080004 */ lwc1 $f8, 4($t8) +/* 03415C 8003355C 00000000 */ nop +/* 034160 80033560 46004282 */ mul.s $f10, $f8, $f0 +/* 034164 80033564 00001012 */ mflo $v0 +/* 034168 80033568 444FF800 */ cfc1 $t7, $31 +/* 03416C 8003356C 00000000 */ nop +/* 034170 80033570 35E10003 */ ori $at, $t7, 3 +/* 034174 80033574 38210002 */ xori $at, $at, 2 +/* 034178 80033578 44C1F800 */ ctc1 $at, $31 +/* 03417C 8003357C 00000000 */ nop +/* 034180 80033580 46005424 */ cvt.w.s $f16, $f10 +/* 034184 80033584 440B8000 */ mfc1 $t3, $f16 +/* 034188 80033588 44CFF800 */ ctc1 $t7, $31 +/* 03418C 8003358C A54B000A */ sh $t3, 0xa($t2) +/* 034190 80033590 8D0E0000 */ lw $t6, ($t0) +/* 034194 80033594 8FD80054 */ lw $t8, 0x54($fp) +/* 034198 80033598 01C3C821 */ addu $t9, $t6, $v1 +/* 03419C 8003359C C7320008 */ lwc1 $f18, 8($t9) +/* 0341A0 800335A0 00000000 */ nop +/* 0341A4 800335A4 46009102 */ mul.s $f4, $f18, $f0 +/* 0341A8 800335A8 444DF800 */ cfc1 $t5, $31 +/* 0341AC 800335AC 00000000 */ nop +/* 0341B0 800335B0 35A10003 */ ori $at, $t5, 3 +/* 0341B4 800335B4 38210002 */ xori $at, $at, 2 +/* 0341B8 800335B8 44C1F800 */ ctc1 $at, $31 +/* 0341BC 800335BC 00000000 */ nop +/* 0341C0 800335C0 460021A4 */ cvt.w.s $f6, $f4 +/* 0341C4 800335C4 440C3000 */ mfc1 $t4, $f6 +/* 0341C8 800335C8 44CDF800 */ ctc1 $t5, $31 +/* 0341CC 800335CC A70C000C */ sh $t4, 0xc($t8) +/* 0341D0 800335D0 8E6F0000 */ lw $t7, ($s3) +/* 0341D4 800335D4 8FCE0054 */ lw $t6, 0x54($fp) +/* 0341D8 800335D8 01E75821 */ addu $t3, $t7, $a3 +/* 0341DC 800335DC 8D6A0004 */ lw $t2, 4($t3) +/* 0341E0 800335E0 00000000 */ nop +/* 0341E4 800335E4 A1CA000E */ sb $t2, 0xe($t6) +/* 0341E8 800335E8 8E790000 */ lw $t9, ($s3) +/* 0341EC 800335EC 8FD80054 */ lw $t8, 0x54($fp) +/* 0341F0 800335F0 03276821 */ addu $t5, $t9, $a3 +/* 0341F4 800335F4 8DAC0008 */ lw $t4, 8($t5) +/* 0341F8 800335F8 00000000 */ nop +/* 0341FC 800335FC A30C000F */ sb $t4, 0xf($t8) +/* 034200 80033600 8E6F0000 */ lw $t7, ($s3) +/* 034204 80033604 8FCE0054 */ lw $t6, 0x54($fp) +/* 034208 80033608 01E75821 */ addu $t3, $t7, $a3 +/* 03420C 8003360C 8D6A000C */ lw $t2, 0xc($t3) +/* 034210 80033610 00000000 */ nop +/* 034214 80033614 A1CA0010 */ sb $t2, 0x10($t6) +/* 034218 80033618 8E790000 */ lw $t9, ($s3) +/* 03421C 8003361C 8FD80054 */ lw $t8, 0x54($fp) +/* 034220 80033620 03276821 */ addu $t5, $t9, $a3 +/* 034224 80033624 8DAC0010 */ lw $t4, 0x10($t5) +/* 034228 80033628 00000000 */ nop +/* 03422C 8003362C A30C0011 */ sb $t4, 0x11($t8) +/* 034230 80033630 8D0F0000 */ lw $t7, ($t0) +/* 034234 80033634 8FD90054 */ lw $t9, 0x54($fp) +/* 034238 80033638 01E25821 */ addu $t3, $t7, $v0 +/* 03423C 8003363C C5680000 */ lwc1 $f8, ($t3) +/* 034240 80033640 00000000 */ nop +/* 034244 80033644 46004282 */ mul.s $f10, $f8, $f0 +/* 034248 80033648 444AF800 */ cfc1 $t2, $31 +/* 03424C 8003364C 00000000 */ nop +/* 034250 80033650 35410003 */ ori $at, $t2, 3 +/* 034254 80033654 38210002 */ xori $at, $at, 2 +/* 034258 80033658 44C1F800 */ ctc1 $at, $31 +/* 03425C 8003365C 00000000 */ nop +/* 034260 80033660 46005424 */ cvt.w.s $f16, $f10 +/* 034264 80033664 440E8000 */ mfc1 $t6, $f16 +/* 034268 80033668 44CAF800 */ ctc1 $t2, $31 +/* 03426C 8003366C A72E0012 */ sh $t6, 0x12($t9) +/* 034270 80033670 8D0D0000 */ lw $t5, ($t0) +/* 034274 80033674 8FCB0054 */ lw $t3, 0x54($fp) +/* 034278 80033678 01A26021 */ addu $t4, $t5, $v0 +/* 03427C 8003367C C5920004 */ lwc1 $f18, 4($t4) +/* 034280 80033680 00000000 */ nop +/* 034284 80033684 46009102 */ mul.s $f4, $f18, $f0 +/* 034288 80033688 4458F800 */ cfc1 $t8, $31 +/* 03428C 8003368C 00000000 */ nop +/* 034290 80033690 37010003 */ ori $at, $t8, 3 +/* 034294 80033694 38210002 */ xori $at, $at, 2 +/* 034298 80033698 44C1F800 */ ctc1 $at, $31 +/* 03429C 8003369C 00000000 */ nop +/* 0342A0 800336A0 460021A4 */ cvt.w.s $f6, $f4 +/* 0342A4 800336A4 440F3000 */ mfc1 $t7, $f6 +/* 0342A8 800336A8 44D8F800 */ ctc1 $t8, $31 +/* 0342AC 800336AC A56F0014 */ sh $t7, 0x14($t3) +/* 0342B0 800336B0 8D0A0000 */ lw $t2, ($t0) +/* 0342B4 800336B4 8FCC0054 */ lw $t4, 0x54($fp) +/* 0342B8 800336B8 01427021 */ addu $t6, $t2, $v0 +/* 0342BC 800336BC C5C80008 */ lwc1 $f8, 8($t6) +/* 0342C0 800336C0 00000000 */ nop +/* 0342C4 800336C4 46004282 */ mul.s $f10, $f8, $f0 +/* 0342C8 800336C8 4459F800 */ cfc1 $t9, $31 +/* 0342CC 800336CC 00000000 */ nop +/* 0342D0 800336D0 37210003 */ ori $at, $t9, 3 +/* 0342D4 800336D4 38210002 */ xori $at, $at, 2 +/* 0342D8 800336D8 44C1F800 */ ctc1 $at, $31 +/* 0342DC 800336DC 00000000 */ nop +/* 0342E0 800336E0 46005424 */ cvt.w.s $f16, $f10 +/* 0342E4 800336E4 440D8000 */ mfc1 $t5, $f16 +/* 0342E8 800336E8 44D9F800 */ ctc1 $t9, $31 +/* 0342EC 800336EC 10000029 */ b .L80033794 +/* 0342F0 800336F0 A58D0016 */ sh $t5, 0x16($t4) +.L800336F4: +/* 0342F4 800336F4 8E270000 */ lw $a3, ($s1) +/* 0342F8 800336F8 00000000 */ nop +/* 0342FC 800336FC 18E00019 */ blez $a3, .L80033764 +/* 034300 80033700 28E10002 */ slti $at, $a3, 2 +/* 034304 80033704 14200003 */ bnez $at, .L80033714 +/* 034308 80033708 00000000 */ nop +/* 03430C 8003370C 0C00CDF9 */ jal func_800337E4 +/* 034310 80033710 00000000 */ nop +.L80033714: +/* 034314 80033714 8E780000 */ lw $t8, ($s3) +/* 034318 80033718 8FCB0054 */ lw $t3, 0x54($fp) +/* 03431C 8003371C 8F0F0004 */ lw $t7, 4($t8) +/* 034320 80033720 00000000 */ nop +/* 034324 80033724 A16F0004 */ sb $t7, 4($t3) +/* 034328 80033728 8E6A0000 */ lw $t2, ($s3) +/* 03432C 8003372C 8FD90054 */ lw $t9, 0x54($fp) +/* 034330 80033730 8D4E0008 */ lw $t6, 8($t2) +/* 034334 80033734 00000000 */ nop +/* 034338 80033738 A32E0005 */ sb $t6, 5($t9) +/* 03433C 8003373C 8E6D0000 */ lw $t5, ($s3) +/* 034340 80033740 8FD80054 */ lw $t8, 0x54($fp) +/* 034344 80033744 8DAC000C */ lw $t4, 0xc($t5) +/* 034348 80033748 00000000 */ nop +/* 03434C 8003374C A30C0006 */ sb $t4, 6($t8) +/* 034350 80033750 8E6F0000 */ lw $t7, ($s3) +/* 034354 80033754 8FCA0054 */ lw $t2, 0x54($fp) +/* 034358 80033758 8DEB0010 */ lw $t3, 0x10($t7) +/* 03435C 8003375C 1000000D */ b .L80033794 +/* 034360 80033760 A14B0007 */ sb $t3, 7($t2) +.L80033764: +/* 034364 80033764 8FCE0054 */ lw $t6, 0x54($fp) +/* 034368 80033768 240200FF */ li $v0, 255 +/* 03436C 8003376C A1C20004 */ sb $v0, 4($t6) +/* 034370 80033770 8FD90054 */ lw $t9, 0x54($fp) +/* 034374 80033774 00000000 */ nop +/* 034378 80033778 A3220005 */ sb $v0, 5($t9) +/* 03437C 8003377C 8FCD0054 */ lw $t5, 0x54($fp) +/* 034380 80033780 00000000 */ nop +/* 034384 80033784 A1A20006 */ sb $v0, 6($t5) +/* 034388 80033788 8FCC0054 */ lw $t4, 0x54($fp) +/* 03438C 8003378C 00000000 */ nop +/* 034390 80033790 A1800007 */ sb $zero, 7($t4) +.L80033794: +/* 034394 80033794 8FBF005C */ lw $ra, 0x5c($sp) +.L80033798: +/* 034398 80033798 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 03439C 8003379C C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 0343A0 800337A0 C7B70020 */ lwc1 $f23, 0x20($sp) +/* 0343A4 800337A4 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 0343A8 800337A8 C7B90028 */ lwc1 $f25, 0x28($sp) +/* 0343AC 800337AC C7B8002C */ lwc1 $f24, 0x2c($sp) +/* 0343B0 800337B0 C7BB0030 */ lwc1 $f27, 0x30($sp) +/* 0343B4 800337B4 C7BA0034 */ lwc1 $f26, 0x34($sp) +/* 0343B8 800337B8 8FB00038 */ lw $s0, 0x38($sp) +/* 0343BC 800337BC 8FB1003C */ lw $s1, 0x3c($sp) +/* 0343C0 800337C0 8FB20040 */ lw $s2, 0x40($sp) +/* 0343C4 800337C4 8FB30044 */ lw $s3, 0x44($sp) +/* 0343C8 800337C8 8FB40048 */ lw $s4, 0x48($sp) +/* 0343CC 800337CC 8FB5004C */ lw $s5, 0x4c($sp) +/* 0343D0 800337D0 8FB60050 */ lw $s6, 0x50($sp) +/* 0343D4 800337D4 8FB70054 */ lw $s7, 0x54($sp) +/* 0343D8 800337D8 8FBE0058 */ lw $fp, 0x58($sp) +/* 0343DC 800337DC 03E00008 */ jr $ra +/* 0343E0 800337E0 27BD0090 */ addiu $sp, $sp, 0x90 + diff --git a/asm/non_matchings/unknown_032760/func_800337E4.s b/asm/non_matchings/unknown_032760/func_800337E4.s new file mode 100644 index 00000000..7f2d8a32 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800337E4.s @@ -0,0 +1,153 @@ +glabel func_800337E4 +/* 0343E4 800337E4 3C0A800E */ lui $t2, %hi(D_800DC968) # $t2, 0x800e +/* 0343E8 800337E8 254AC968 */ addiu $t2, %lo(D_800DC968) # addiu $t2, $t2, -0x3698 +/* 0343EC 800337EC 8D4E0000 */ lw $t6, ($t2) +/* 0343F0 800337F0 24020001 */ li $v0, 1 +/* 0343F4 800337F4 29C10002 */ slti $at, $t6, 2 +/* 0343F8 800337F8 14200084 */ bnez $at, .L80033A0C +/* 0343FC 800337FC 24040014 */ li $a0, 20 +/* 034400 80033800 3C0B800E */ lui $t3, %hi(D_800DC960) # $t3, 0x800e +/* 034404 80033804 256BC960 */ addiu $t3, %lo(D_800DC960) # addiu $t3, $t3, -0x36a0 +/* 034408 80033808 240C00FF */ li $t4, 255 +.L8003380C: +/* 03440C 8003380C 8D630000 */ lw $v1, ($t3) +/* 034410 80033810 00000000 */ nop +/* 034414 80033814 00642821 */ addu $a1, $v1, $a0 +/* 034418 80033818 8CA60010 */ lw $a2, 0x10($a1) +/* 03441C 8003381C 00000000 */ nop +/* 034420 80033820 28C10002 */ slti $at, $a2, 2 +/* 034424 80033824 14200074 */ bnez $at, .L800339F8 +/* 034428 80033828 00000000 */ nop +/* 03442C 8003382C 8C670010 */ lw $a3, 0x10($v1) +/* 034430 80033830 8C690004 */ lw $t1, 4($v1) +/* 034434 80033834 00E6082A */ slt $at, $a3, $a2 +/* 034438 80033838 1420002A */ bnez $at, .L800338E4 +/* 03443C 8003383C 00077C00 */ sll $t7, $a3, 0x10 +/* 034440 80033840 00067C00 */ sll $t7, $a2, 0x10 +/* 034444 80033844 01E7001A */ div $zero, $t7, $a3 +/* 034448 80033848 8CB80004 */ lw $t8, 4($a1) +/* 03444C 8003384C 14E00002 */ bnez $a3, .L80033858 +/* 034450 80033850 00000000 */ nop +/* 034454 80033854 0007000D */ break 7 +.L80033858: +/* 034458 80033858 2401FFFF */ li $at, -1 +/* 03445C 8003385C 14E10004 */ bne $a3, $at, .L80033870 +/* 034460 80033860 3C018000 */ lui $at, 0x8000 +/* 034464 80033864 15E10002 */ bne $t7, $at, .L80033870 +/* 034468 80033868 00000000 */ nop +/* 03446C 8003386C 0006000D */ break 6 +.L80033870: +/* 034470 80033870 00004012 */ mflo $t0 +/* 034474 80033874 00000000 */ nop +/* 034478 80033878 00000000 */ nop +/* 03447C 8003387C 03080019 */ multu $t8, $t0 +/* 034480 80033880 0000C812 */ mflo $t9 +/* 034484 80033884 00196C03 */ sra $t5, $t9, 0x10 +/* 034488 80033888 012D7021 */ addu $t6, $t1, $t5 +/* 03448C 8003388C AC6E0004 */ sw $t6, 4($v1) +/* 034490 80033890 8D630000 */ lw $v1, ($t3) +/* 034494 80033894 00000000 */ nop +/* 034498 80033898 0064C021 */ addu $t8, $v1, $a0 +/* 03449C 8003389C 8F190008 */ lw $t9, 8($t8) +/* 0344A0 800338A0 8C6F0008 */ lw $t7, 8($v1) +/* 0344A4 800338A4 03280019 */ multu $t9, $t0 +/* 0344A8 800338A8 00006812 */ mflo $t5 +/* 0344AC 800338AC 000D7403 */ sra $t6, $t5, 0x10 +/* 0344B0 800338B0 01EEC021 */ addu $t8, $t7, $t6 +/* 0344B4 800338B4 AC780008 */ sw $t8, 8($v1) +/* 0344B8 800338B8 8D630000 */ lw $v1, ($t3) +/* 0344BC 800338BC 00000000 */ nop +/* 0344C0 800338C0 00646821 */ addu $t5, $v1, $a0 +/* 0344C4 800338C4 8DAF000C */ lw $t7, 0xc($t5) +/* 0344C8 800338C8 8C79000C */ lw $t9, 0xc($v1) +/* 0344CC 800338CC 01E80019 */ multu $t7, $t0 +/* 0344D0 800338D0 00007012 */ mflo $t6 +/* 0344D4 800338D4 000EC403 */ sra $t8, $t6, 0x10 +/* 0344D8 800338D8 03386821 */ addu $t5, $t9, $t8 +/* 0344DC 800338DC 1000002E */ b .L80033998 +/* 0344E0 800338E0 AC6D000C */ sw $t5, 0xc($v1) +.L800338E4: +/* 0344E4 800338E4 01E6001A */ div $zero, $t7, $a2 +/* 0344E8 800338E8 8CAE0004 */ lw $t6, 4($a1) +/* 0344EC 800338EC 14C00002 */ bnez $a2, .L800338F8 +/* 0344F0 800338F0 00000000 */ nop +/* 0344F4 800338F4 0007000D */ break 7 +.L800338F8: +/* 0344F8 800338F8 2401FFFF */ li $at, -1 +/* 0344FC 800338FC 14C10004 */ bne $a2, $at, .L80033910 +/* 034500 80033900 3C018000 */ lui $at, 0x8000 +/* 034504 80033904 15E10002 */ bne $t7, $at, .L80033910 +/* 034508 80033908 00000000 */ nop +/* 03450C 8003390C 0006000D */ break 6 +.L80033910: +/* 034510 80033910 00004012 */ mflo $t0 +/* 034514 80033914 00000000 */ nop +/* 034518 80033918 00000000 */ nop +/* 03451C 8003391C 01280019 */ multu $t1, $t0 +/* 034520 80033920 0000C812 */ mflo $t9 +/* 034524 80033924 0019C403 */ sra $t8, $t9, 0x10 +/* 034528 80033928 01D86821 */ addu $t5, $t6, $t8 +/* 03452C 8003392C AC6D0004 */ sw $t5, 4($v1) +/* 034530 80033930 8D630000 */ lw $v1, ($t3) +/* 034534 80033934 00000000 */ nop +/* 034538 80033938 8C6E0008 */ lw $t6, 8($v1) +/* 03453C 8003393C 00647821 */ addu $t7, $v1, $a0 +/* 034540 80033940 01C80019 */ multu $t6, $t0 +/* 034544 80033944 8DF90008 */ lw $t9, 8($t7) +/* 034548 80033948 0000C012 */ mflo $t8 +/* 03454C 8003394C 00186C03 */ sra $t5, $t8, 0x10 +/* 034550 80033950 032D7821 */ addu $t7, $t9, $t5 +/* 034554 80033954 AC6F0008 */ sw $t7, 8($v1) +/* 034558 80033958 8D630000 */ lw $v1, ($t3) +/* 03455C 8003395C 00000000 */ nop +/* 034560 80033960 8C79000C */ lw $t9, 0xc($v1) +/* 034564 80033964 00647021 */ addu $t6, $v1, $a0 +/* 034568 80033968 03280019 */ multu $t9, $t0 +/* 03456C 8003396C 8DD8000C */ lw $t8, 0xc($t6) +/* 034570 80033970 00006812 */ mflo $t5 +/* 034574 80033974 000D7C03 */ sra $t7, $t5, 0x10 +/* 034578 80033978 030F7021 */ addu $t6, $t8, $t7 +/* 03457C 8003397C AC6E000C */ sw $t6, 0xc($v1) +/* 034580 80033980 8D630000 */ lw $v1, ($t3) +/* 034584 80033984 00000000 */ nop +/* 034588 80033988 0064C821 */ addu $t9, $v1, $a0 +/* 03458C 8003398C 8F2D0010 */ lw $t5, 0x10($t9) +/* 034590 80033990 00000000 */ nop +/* 034594 80033994 AC6D0010 */ sw $t5, 0x10($v1) +.L80033998: +/* 034598 80033998 8D630000 */ lw $v1, ($t3) +/* 03459C 8003399C 00000000 */ nop +/* 0345A0 800339A0 8C780004 */ lw $t8, 4($v1) +/* 0345A4 800339A4 00000000 */ nop +/* 0345A8 800339A8 2B010100 */ slti $at, $t8, 0x100 +/* 0345AC 800339AC 14200004 */ bnez $at, .L800339C0 +/* 0345B0 800339B0 00000000 */ nop +/* 0345B4 800339B4 AC6C0004 */ sw $t4, 4($v1) +/* 0345B8 800339B8 8D630000 */ lw $v1, ($t3) +/* 0345BC 800339BC 00000000 */ nop +.L800339C0: +/* 0345C0 800339C0 8C6F0008 */ lw $t7, 8($v1) +/* 0345C4 800339C4 00000000 */ nop +/* 0345C8 800339C8 29E10100 */ slti $at, $t7, 0x100 +/* 0345CC 800339CC 14200004 */ bnez $at, .L800339E0 +/* 0345D0 800339D0 00000000 */ nop +/* 0345D4 800339D4 AC6C0008 */ sw $t4, 8($v1) +/* 0345D8 800339D8 8D630000 */ lw $v1, ($t3) +/* 0345DC 800339DC 00000000 */ nop +.L800339E0: +/* 0345E0 800339E0 8C6E000C */ lw $t6, 0xc($v1) +/* 0345E4 800339E4 00000000 */ nop +/* 0345E8 800339E8 29C10100 */ slti $at, $t6, 0x100 +/* 0345EC 800339EC 14200002 */ bnez $at, .L800339F8 +/* 0345F0 800339F0 00000000 */ nop +/* 0345F4 800339F4 AC6C000C */ sw $t4, 0xc($v1) +.L800339F8: +/* 0345F8 800339F8 8D590000 */ lw $t9, ($t2) +/* 0345FC 800339FC 24420001 */ addiu $v0, $v0, 1 +/* 034600 80033A00 0059082A */ slt $at, $v0, $t9 +/* 034604 80033A04 1420FF81 */ bnez $at, .L8003380C +/* 034608 80033A08 24840014 */ addiu $a0, $a0, 0x14 +.L80033A0C: +/* 03460C 80033A0C 03E00008 */ jr $ra +/* 034610 80033A10 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80033A14.s b/asm/non_matchings/unknown_032760/func_80033A14.s new file mode 100644 index 00000000..56b03f2b --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80033A14.s @@ -0,0 +1,129 @@ +glabel func_80033A14 +/* 034614 80033A14 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 034618 80033A18 AFBF0024 */ sw $ra, 0x24($sp) +/* 03461C 80033A1C AFB00020 */ sw $s0, 0x20($sp) +/* 034620 80033A20 E7B50018 */ swc1 $f21, 0x18($sp) +/* 034624 80033A24 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 034628 80033A28 8C8E0028 */ lw $t6, 0x28($a0) +/* 03462C 80033A2C 908F0003 */ lbu $t7, 3($a0) +/* 034630 80033A30 448E2000 */ mtc1 $t6, $f4 +/* 034634 80033A34 3C014780 */ li $at, 0x47800000 # 65536.000000 +/* 034638 80033A38 44814000 */ mtc1 $at, $f8 +/* 03463C 80033A3C 468021A0 */ cvt.s.w $f6, $f4 +/* 034640 80033A40 25F8FFFF */ addiu $t8, $t7, -1 +/* 034644 80033A44 2F010005 */ sltiu $at, $t8, 5 +/* 034648 80033A48 00808025 */ move $s0, $a0 +/* 03464C 80033A4C 10200067 */ beqz $at, .L80033BEC +/* 034650 80033A50 46083503 */ div.s $f20, $f6, $f8 +/* 034654 80033A54 0018C080 */ sll $t8, $t8, 2 +/* 034658 80033A58 3C01800E */ lui $at, 0x800e +/* 03465C 80033A5C 00380821 */ addu $at, $at, $t8 +/* 034660 80033A60 8C385F80 */ lw $t8, 0x5f80($at) +/* 034664 80033A64 00000000 */ nop +/* 034668 80033A68 03000008 */ jr $t8 +/* 03466C 80033A6C 00000000 */ nop +/* 034670 80033A70 3C018012 */ lui $at, %hi(D_8011D4C0) # $at, 0x8012 +/* 034674 80033A74 C42CD4C0 */ lwc1 $f12, %lo(D_8011D4C0)($at) +/* 034678 80033A78 0C0326B4 */ jal sqrtf +/* 03467C 80033A7C 00000000 */ nop +/* 034680 80033A80 C610006C */ lwc1 $f16, 0x6c($s0) +/* 034684 80033A84 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 034688 80033A88 46100482 */ mul.s $f18, $f0, $f16 +/* 03468C 80033A8C 44815000 */ mtc1 $at, $f10 +/* 034690 80033A90 00000000 */ nop +/* 034694 80033A94 46125081 */ sub.s $f2, $f10, $f18 +/* 034698 80033A98 4602A502 */ mul.s $f20, $f20, $f2 +/* 03469C 80033A9C 10000054 */ b .L80033BF0 +/* 0346A0 80033AA0 8FBF0024 */ lw $ra, 0x24($sp) +/* 0346A4 80033AA4 3C018012 */ lui $at, %hi(D_8011D4C0) # $at, 0x8012 +/* 0346A8 80033AA8 C42CD4C0 */ lwc1 $f12, %lo(D_8011D4C0)($at) +/* 0346AC 80033AAC 0C0326B4 */ jal sqrtf +/* 0346B0 80033AB0 00000000 */ nop +/* 0346B4 80033AB4 C604006C */ lwc1 $f4, 0x6c($s0) +/* 0346B8 80033AB8 00000000 */ nop +/* 0346BC 80033ABC 46040302 */ mul.s $f12, $f0, $f4 +/* 0346C0 80033AC0 0C0326B4 */ jal sqrtf +/* 0346C4 80033AC4 00000000 */ nop +/* 0346C8 80033AC8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0346CC 80033ACC 44813000 */ mtc1 $at, $f6 +/* 0346D0 80033AD0 00000000 */ nop +/* 0346D4 80033AD4 46003201 */ sub.s $f8, $f6, $f0 +/* 0346D8 80033AD8 4608A502 */ mul.s $f20, $f20, $f8 +/* 0346DC 80033ADC 10000044 */ b .L80033BF0 +/* 0346E0 80033AE0 8FBF0024 */ lw $ra, 0x24($sp) +/* 0346E4 80033AE4 3C018012 */ lui $at, %hi(D_8011D4C0) # $at, 0x8012 +/* 0346E8 80033AE8 C42CD4C0 */ lwc1 $f12, %lo(D_8011D4C0)($at) +/* 0346EC 80033AEC 0C0326B4 */ jal sqrtf +/* 0346F0 80033AF0 00000000 */ nop +/* 0346F4 80033AF4 C610006C */ lwc1 $f16, 0x6c($s0) +/* 0346F8 80033AF8 3C014680 */ li $at, 0x46800000 # 16384.000000 +/* 0346FC 80033AFC 46100282 */ mul.s $f10, $f0, $f16 +/* 034700 80033B00 44819000 */ mtc1 $at, $f18 +/* 034704 80033B04 00000000 */ nop +/* 034708 80033B08 46125102 */ mul.s $f4, $f10, $f18 +/* 03470C 80033B0C 4459F800 */ cfc1 $t9, $31 +/* 034710 80033B10 00000000 */ nop +/* 034714 80033B14 37210003 */ ori $at, $t9, 3 +/* 034718 80033B18 38210002 */ xori $at, $at, 2 +/* 03471C 80033B1C 44C1F800 */ ctc1 $at, $31 +/* 034720 80033B20 00000000 */ nop +/* 034724 80033B24 460021A4 */ cvt.w.s $f6, $f4 +/* 034728 80033B28 44043000 */ mfc1 $a0, $f6 +/* 03472C 80033B2C 44D9F800 */ ctc1 $t9, $31 +/* 034730 80033B30 00044400 */ sll $t0, $a0, 0x10 +/* 034734 80033B34 0C01C1FE */ jal func_800707F8 +/* 034738 80033B38 00082403 */ sra $a0, $t0, 0x10 +/* 03473C 80033B3C 4600A502 */ mul.s $f20, $f20, $f0 +/* 034740 80033B40 1000002B */ b .L80033BF0 +/* 034744 80033B44 8FBF0024 */ lw $ra, 0x24($sp) +/* 034748 80033B48 3C018012 */ lui $at, %hi(D_8011D4C0) # $at, 0x8012 +/* 03474C 80033B4C C42CD4C0 */ lwc1 $f12, %lo(D_8011D4C0)($at) +/* 034750 80033B50 0C0326B4 */ jal sqrtf +/* 034754 80033B54 00000000 */ nop +/* 034758 80033B58 C608006C */ lwc1 $f8, 0x6c($s0) +/* 03475C 80033B5C 3C014680 */ li $at, 0x46800000 # 16384.000000 +/* 034760 80033B60 46080402 */ mul.s $f16, $f0, $f8 +/* 034764 80033B64 44815000 */ mtc1 $at, $f10 +/* 034768 80033B68 00000000 */ nop +/* 03476C 80033B6C 460A8482 */ mul.s $f18, $f16, $f10 +/* 034770 80033B70 444AF800 */ cfc1 $t2, $31 +/* 034774 80033B74 00000000 */ nop +/* 034778 80033B78 35410003 */ ori $at, $t2, 3 +/* 03477C 80033B7C 38210002 */ xori $at, $at, 2 +/* 034780 80033B80 44C1F800 */ ctc1 $at, $31 +/* 034784 80033B84 00000000 */ nop +/* 034788 80033B88 46009124 */ cvt.w.s $f4, $f18 +/* 03478C 80033B8C 44042000 */ mfc1 $a0, $f4 +/* 034790 80033B90 44CAF800 */ ctc1 $t2, $31 +/* 034794 80033B94 00045C00 */ sll $t3, $a0, 0x10 +/* 034798 80033B98 0C01C1FE */ jal func_800707F8 +/* 03479C 80033B9C 000B2403 */ sra $a0, $t3, 0x10 +/* 0347A0 80033BA0 46000182 */ mul.s $f6, $f0, $f0 +/* 0347A4 80033BA4 00000000 */ nop +/* 0347A8 80033BA8 4606A502 */ mul.s $f20, $f20, $f6 +/* 0347AC 80033BAC 1000000F */ b .L80033BEC +/* 0347B0 80033BB0 00000000 */ nop +/* 0347B4 80033BB4 3C018012 */ lui $at, %hi(D_8011D4C0) # $at, 0x8012 +/* 0347B8 80033BB8 C42CD4C0 */ lwc1 $f12, %lo(D_8011D4C0)($at) +/* 0347BC 80033BBC 0C0326B4 */ jal sqrtf +/* 0347C0 80033BC0 00000000 */ nop +/* 0347C4 80033BC4 C610006C */ lwc1 $f16, 0x6c($s0) +/* 0347C8 80033BC8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0347CC 80033BCC 46100282 */ mul.s $f10, $f0, $f16 +/* 0347D0 80033BD0 44814000 */ mtc1 $at, $f8 +/* 0347D4 80033BD4 00000000 */ nop +/* 0347D8 80033BD8 460A4081 */ sub.s $f2, $f8, $f10 +/* 0347DC 80033BDC 46021082 */ mul.s $f2, $f2, $f2 +/* 0347E0 80033BE0 00000000 */ nop +/* 0347E4 80033BE4 4602A502 */ mul.s $f20, $f20, $f2 +/* 0347E8 80033BE8 00000000 */ nop +.L80033BEC: +/* 0347EC 80033BEC 8FBF0024 */ lw $ra, 0x24($sp) +.L80033BF0: +/* 0347F0 80033BF0 4600A006 */ mov.s $f0, $f20 +/* 0347F4 80033BF4 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 0347F8 80033BF8 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 0347FC 80033BFC 8FB00020 */ lw $s0, 0x20($sp) +/* 034800 80033C00 03E00008 */ jr $ra +/* 034804 80033C04 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_032760/func_80033C08.s b/asm/non_matchings/unknown_032760/func_80033C08.s new file mode 100644 index 00000000..c899ea08 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80033C08.s @@ -0,0 +1,50 @@ +glabel func_80033C08 +/* 034808 80033C08 3C018012 */ lui $at, %hi(D_8011D4C0) # $at, 0x8012 +/* 03480C 80033C0C 44807000 */ mtc1 $zero, $f14 +/* 034810 80033C10 C42CD4C0 */ lwc1 $f12, %lo(D_8011D4C0)($at) +/* 034814 80033C14 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 034818 80033C18 460C703C */ c.lt.s $f14, $f12 +/* 03481C 80033C1C AFBF0014 */ sw $ra, 0x14($sp) +/* 034820 80033C20 45000020 */ bc1f .L80033CA4 +/* 034824 80033C24 3C013F80 */ lui $at, 0x3f80 +/* 034828 80033C28 0C0326B4 */ jal sqrtf +/* 03482C 80033C2C AFA40018 */ sw $a0, 0x18($sp) +/* 034830 80033C30 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 034834 80033C34 44812000 */ mtc1 $at, $f4 +/* 034838 80033C38 3C018012 */ lui $at, %hi(D_8011D4C4) # $at, 0x8012 +/* 03483C 80033C3C 46002083 */ div.s $f2, $f4, $f0 +/* 034840 80033C40 C426D4C4 */ lwc1 $f6, %lo(D_8011D4C4)($at) +/* 034844 80033C44 8FA40018 */ lw $a0, 0x18($sp) +/* 034848 80033C48 3C018012 */ lui $at, %hi(D_8011D4C8) # $at, 0x8012 +/* 03484C 80033C4C C48A007C */ lwc1 $f10, 0x7c($a0) +/* 034850 80033C50 C432D4C8 */ lwc1 $f18, %lo(D_8011D4C8)($at) +/* 034854 80033C54 3C018012 */ li $at, 0x80120000 # -0.000000 +/* 034858 80033C58 44807000 */ mtc1 $zero, $f14 +/* 03485C 80033C5C 46023202 */ mul.s $f8, $f6, $f2 +/* 034860 80033C60 C4860080 */ lwc1 $f6, 0x80($a0) +/* 034864 80033C64 460A4402 */ mul.s $f16, $f8, $f10 +/* 034868 80033C68 00000000 */ nop +/* 03486C 80033C6C 46029102 */ mul.s $f4, $f18, $f2 +/* 034870 80033C70 C432D4CC */ lwc1 $f18, %lo(D_8011D4CC)($at) +/* 034874 80033C74 46062202 */ mul.s $f8, $f4, $f6 +/* 034878 80033C78 C4860084 */ lwc1 $f6, 0x84($a0) +/* 03487C 80033C7C 46029102 */ mul.s $f4, $f18, $f2 +/* 034880 80033C80 46088280 */ add.s $f10, $f16, $f8 +/* 034884 80033C84 46062402 */ mul.s $f16, $f4, $f6 +/* 034888 80033C88 46105300 */ add.s $f12, $f10, $f16 +/* 03488C 80033C8C 460E603C */ c.lt.s $f12, $f14 +/* 034890 80033C90 00000000 */ nop +/* 034894 80033C94 45000005 */ bc1f .L80033CAC +/* 034898 80033C98 00000000 */ nop +/* 03489C 80033C9C 10000003 */ b .L80033CAC +/* 0348A0 80033CA0 46007306 */ mov.s $f12, $f14 +.L80033CA4: +/* 0348A4 80033CA4 44816000 */ mtc1 $at, $f12 +/* 0348A8 80033CA8 00000000 */ nop +.L80033CAC: +/* 0348AC 80033CAC 8FBF0014 */ lw $ra, 0x14($sp) +/* 0348B0 80033CB0 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0348B4 80033CB4 03E00008 */ jr $ra +/* 0348B8 80033CB8 46006006 */ mov.s $f0, $f12 + +/* 0348BC 80033CBC 00000000 */ nop diff --git a/asm/non_matchings/unknown_032760/func_80033CC0.s b/asm/non_matchings/unknown_032760/func_80033CC0.s new file mode 100644 index 00000000..d4602c15 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80033CC0.s @@ -0,0 +1,73 @@ +glabel func_80033CC0 +/* 0348C0 80033CC0 848E0006 */ lh $t6, 6($a0) +/* 0348C4 80033CC4 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 0348C8 80033CC8 35CF0002 */ ori $t7, $t6, 2 +/* 0348CC 80033CCC A48F0006 */ sh $t7, 6($a0) +/* 0348D0 80033CD0 90B90009 */ lbu $t9, 9($a1) +/* 0348D4 80033CD4 44811000 */ mtc1 $at, $f2 +/* 0348D8 80033CD8 44992000 */ mtc1 $t9, $f4 +/* 0348DC 80033CDC 3C014280 */ li $at, 0x42800000 # 64.000000 +/* 0348E0 80033CE0 46802020 */ cvt.s.w $f0, $f4 +/* 0348E4 80033CE4 44813000 */ mtc1 $at, $f6 +/* 0348E8 80033CE8 4602003C */ c.lt.s $f0, $f2 +/* 0348EC 80033CEC 00000000 */ nop +/* 0348F0 80033CF0 45000003 */ bc1f .L80033D00 +/* 0348F4 80033CF4 00000000 */ nop +/* 0348F8 80033CF8 46001006 */ mov.s $f0, $f2 +/* 0348FC 80033CFC 00000000 */ nop +.L80033D00: +/* 034900 80033D00 46060003 */ div.s $f0, $f0, $f6 +/* 034904 80033D04 8C820040 */ lw $v0, 0x40($a0) +/* 034908 80033D08 8C880050 */ lw $t0, 0x50($a0) +/* 03490C 80033D0C C448000C */ lwc1 $f8, 0xc($v0) +/* 034910 80033D10 00000000 */ nop +/* 034914 80033D14 46004282 */ mul.s $f10, $f8, $f0 +/* 034918 80033D18 E48A0008 */ swc1 $f10, 8($a0) +/* 03491C 80033D1C C4500004 */ lwc1 $f16, 4($v0) +/* 034920 80033D20 00000000 */ nop +/* 034924 80033D24 46008482 */ mul.s $f18, $f16, $f0 +/* 034928 80033D28 E5120000 */ swc1 $f18, ($t0) +/* 03492C 80033D2C 90A90008 */ lbu $t1, 8($a1) +/* 034930 80033D30 00000000 */ nop +/* 034934 80033D34 A089003A */ sb $t1, 0x3a($a0) +/* 034938 80033D38 90AB000A */ lbu $t3, 0xa($a1) +/* 03493C 80033D3C 00000000 */ nop +/* 034940 80033D40 000B6280 */ sll $t4, $t3, 0xa +/* 034944 80033D44 A48C0000 */ sh $t4, ($a0) +/* 034948 80033D48 90AD000B */ lbu $t5, 0xb($a1) +/* 03494C 80033D4C 00000000 */ nop +/* 034950 80033D50 11A00014 */ beqz $t5, .L80033DA4 +/* 034954 80033D54 00000000 */ nop +/* 034958 80033D58 8C8F004C */ lw $t7, 0x4c($a0) +/* 03495C 80033D5C 240E0001 */ li $t6, 1 +/* 034960 80033D60 A5EE0014 */ sh $t6, 0x14($t7) +/* 034964 80033D64 8C99004C */ lw $t9, 0x4c($a0) +/* 034968 80033D68 24180001 */ li $t8, 1 +/* 03496C 80033D6C A3380011 */ sb $t8, 0x11($t9) +/* 034970 80033D70 8C89004C */ lw $t1, 0x4c($a0) +/* 034974 80033D74 24080014 */ li $t0, 20 +/* 034978 80033D78 A1280010 */ sb $t0, 0x10($t1) +/* 03497C 80033D7C 8C8A004C */ lw $t2, 0x4c($a0) +/* 034980 80033D80 240BFFFB */ li $t3, -5 +/* 034984 80033D84 A1400012 */ sb $zero, 0x12($t2) +/* 034988 80033D88 8C8C004C */ lw $t4, 0x4c($a0) +/* 03498C 80033D8C 00000000 */ nop +/* 034990 80033D90 A18B0016 */ sb $t3, 0x16($t4) +/* 034994 80033D94 8C8E004C */ lw $t6, 0x4c($a0) +/* 034998 80033D98 90AD000B */ lbu $t5, 0xb($a1) +/* 03499C 80033D9C 00000000 */ nop +/* 0349A0 80033DA0 A1CD0017 */ sb $t5, 0x17($t6) +.L80033DA4: +/* 0349A4 80033DA4 8C980040 */ lw $t8, 0x40($a0) +/* 0349A8 80033DA8 808F003A */ lb $t7, 0x3a($a0) +/* 0349AC 80033DAC 83190055 */ lb $t9, 0x55($t8) +/* 0349B0 80033DB0 00000000 */ nop +/* 0349B4 80033DB4 01F9082A */ slt $at, $t7, $t9 +/* 0349B8 80033DB8 14200002 */ bnez $at, .L80033DC4 +/* 0349BC 80033DBC 00000000 */ nop +/* 0349C0 80033DC0 A080003A */ sb $zero, 0x3a($a0) +.L80033DC4: +/* 0349C4 80033DC4 AC800078 */ sw $zero, 0x78($a0) +/* 0349C8 80033DC8 03E00008 */ jr $ra +/* 0349CC 80033DCC AC80007C */ sw $zero, 0x7c($a0) + diff --git a/asm/non_matchings/unknown_032760/func_80033DD0.s b/asm/non_matchings/unknown_032760/func_80033DD0.s new file mode 100644 index 00000000..02f8cb2e --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80033DD0.s @@ -0,0 +1,102 @@ +glabel func_80033DD0 +/* 0349D0 80033DD0 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0349D4 80033DD4 AFBF0024 */ sw $ra, 0x24($sp) +/* 0349D8 80033DD8 AFB00020 */ sw $s0, 0x20($sp) +/* 0349DC 80033DDC 8C82004C */ lw $v0, 0x4c($a0) +/* 0349E0 80033DE0 00808025 */ move $s0, $a0 +/* 0349E4 80033DE4 10400054 */ beqz $v0, .L80033F38 +/* 0349E8 80033DE8 8FBF0024 */ lw $ra, 0x24($sp) +/* 0349EC 80033DEC 848E007C */ lh $t6, 0x7c($a0) +/* 0349F0 80033DF0 24830078 */ addiu $v1, $a0, 0x78 +/* 0349F4 80033DF4 19C00007 */ blez $t6, .L80033E14 +/* 0349F8 80033DF8 00000000 */ nop +/* 0349FC 80033DFC 846F0004 */ lh $t7, 4($v1) +/* 034A00 80033E00 00000000 */ nop +/* 034A04 80033E04 01E5C023 */ subu $t8, $t7, $a1 +/* 034A08 80033E08 A4780004 */ sh $t8, 4($v1) +/* 034A0C 80033E0C 8C82004C */ lw $v0, 0x4c($a0) +/* 034A10 80033E10 00000000 */ nop +.L80033E14: +/* 034A14 80033E14 84590014 */ lh $t9, 0x14($v0) +/* 034A18 80033E18 26030078 */ addiu $v1, $s0, 0x78 +/* 034A1C 80033E1C 33280040 */ andi $t0, $t9, 0x40 +/* 034A20 80033E20 11000032 */ beqz $t0, .L80033EEC +/* 034A24 80033E24 00000000 */ nop +/* 034A28 80033E28 84690004 */ lh $t1, 4($v1) +/* 034A2C 80033E2C 2404013C */ li $a0, 316 +/* 034A30 80033E30 1D20002E */ bgtz $t1, .L80033EEC +/* 034A34 80033E34 240A0004 */ li $t2, 4 +/* 034A38 80033E38 8E05000C */ lw $a1, 0xc($s0) +/* 034A3C 80033E3C 8E060010 */ lw $a2, 0x10($s0) +/* 034A40 80033E40 8E070014 */ lw $a3, 0x14($s0) +/* 034A44 80033E44 AFA30028 */ sw $v1, 0x28($sp) +/* 034A48 80033E48 AFA00014 */ sw $zero, 0x14($sp) +/* 034A4C 80033E4C 0C002556 */ jal func_80009558 +/* 034A50 80033E50 AFAA0010 */ sw $t2, 0x10($sp) +/* 034A54 80033E54 8E0B004C */ lw $t3, 0x4c($s0) +/* 034A58 80033E58 8FA30028 */ lw $v1, 0x28($sp) +/* 034A5C 80033E5C 8D6C0000 */ lw $t4, ($t3) +/* 034A60 80033E60 240D071C */ li $t5, 1820 +/* 034A64 80033E64 240E000A */ li $t6, 10 +/* 034A68 80033E68 A46D0006 */ sh $t5, 6($v1) +/* 034A6C 80033E6C A46E0004 */ sh $t6, 4($v1) +/* 034A70 80033E70 0C0270F2 */ jal func_8009C3C8 +/* 034A74 80033E74 AC6C0000 */ sw $t4, ($v1) +/* 034A78 80033E78 8FA30028 */ lw $v1, 0x28($sp) +/* 034A7C 80033E7C 28410002 */ slti $at, $v0, 2 +/* 034A80 80033E80 1020001F */ beqz $at, .L80033F00 +/* 034A84 80033E84 00000000 */ nop +/* 034A88 80033E88 8E0F0040 */ lw $t7, 0x40($s0) +/* 034A8C 80033E8C 24010001 */ li $at, 1 +/* 034A90 80033E90 81E20057 */ lb $v0, 0x57($t7) +/* 034A94 80033E94 00000000 */ nop +/* 034A98 80033E98 18400019 */ blez $v0, .L80033F00 +/* 034A9C 80033E9C 00000000 */ nop +/* 034AA0 80033EA0 14410003 */ bne $v0, $at, .L80033EB0 +/* 034AA4 80033EA4 00002025 */ move $a0, $zero +/* 034AA8 80033EA8 10000006 */ b .L80033EC4 +/* 034AAC 80033EAC 00003025 */ move $a2, $zero +.L80033EB0: +/* 034AB0 80033EB0 2445FFFF */ addiu $a1, $v0, -1 +/* 034AB4 80033EB4 0C01BE53 */ jal func_8006F94C +/* 034AB8 80033EB8 AFA30028 */ sw $v1, 0x28($sp) +/* 034ABC 80033EBC 8FA30028 */ lw $v1, 0x28($sp) +/* 034AC0 80033EC0 00403025 */ move $a2, $v0 +.L80033EC4: +/* 034AC4 80033EC4 24180001 */ li $t8, 1 +/* 034AC8 80033EC8 00D8C804 */ sllv $t9, $t8, $a2 +/* 034ACC 80033ECC AE190074 */ sw $t9, 0x74($s0) +/* 034AD0 80033ED0 AFA30028 */ sw $v1, 0x28($sp) +/* 034AD4 80033ED4 02002025 */ move $a0, $s0 +/* 034AD8 80033ED8 0C02BF0F */ jal func_800AFC3C +/* 034ADC 80033EDC 24050002 */ li $a1, 2 +/* 034AE0 80033EE0 8FA30028 */ lw $v1, 0x28($sp) +/* 034AE4 80033EE4 10000007 */ b .L80033F04 +/* 034AE8 80033EE8 84690006 */ lh $t1, 6($v1) +.L80033EEC: +/* 034AEC 80033EEC 84680004 */ lh $t0, 4($v1) +/* 034AF0 80033EF0 00000000 */ nop +/* 034AF4 80033EF4 1D000002 */ bgtz $t0, .L80033F00 +/* 034AF8 80033EF8 00000000 */ nop +/* 034AFC 80033EFC AC600000 */ sw $zero, ($v1) +.L80033F00: +/* 034B00 80033F00 84690006 */ lh $t1, 6($v1) +.L80033F04: +/* 034B04 80033F04 00000000 */ nop +/* 034B08 80033F08 A6090004 */ sh $t1, 4($s0) +/* 034B0C 80033F0C 846A0006 */ lh $t2, 6($v1) +/* 034B10 80033F10 00000000 */ nop +/* 034B14 80033F14 000A0823 */ negu $at, $t2 +/* 034B18 80033F18 00015880 */ sll $t3, $at, 2 +/* 034B1C 80033F1C 01615823 */ subu $t3, $t3, $at +/* 034B20 80033F20 000B58C0 */ sll $t3, $t3, 3 +/* 034B24 80033F24 01615821 */ addu $t3, $t3, $at +/* 034B28 80033F28 000B58C0 */ sll $t3, $t3, 3 +/* 034B2C 80033F2C 000B6203 */ sra $t4, $t3, 8 +/* 034B30 80033F30 A46C0006 */ sh $t4, 6($v1) +/* 034B34 80033F34 8FBF0024 */ lw $ra, 0x24($sp) +.L80033F38: +/* 034B38 80033F38 8FB00020 */ lw $s0, 0x20($sp) +/* 034B3C 80033F3C 03E00008 */ jr $ra +/* 034B40 80033F40 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_032760/func_80033F44.s b/asm/non_matchings/unknown_032760/func_80033F44.s new file mode 100644 index 00000000..dfff52f4 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80033F44.s @@ -0,0 +1,9 @@ +glabel func_80033F44 +/* 034B44 80033F44 AFA50004 */ sw $a1, 4($sp) +/* 034B48 80033F48 8C8F004C */ lw $t7, 0x4c($a0) +/* 034B4C 80033F4C 240E0002 */ li $t6, 2 +/* 034B50 80033F50 A5EE0014 */ sh $t6, 0x14($t7) +/* 034B54 80033F54 8C98004C */ lw $t8, 0x4c($a0) +/* 034B58 80033F58 03E00008 */ jr $ra +/* 034B5C 80033F5C A3000011 */ sb $zero, 0x11($t8) + diff --git a/asm/non_matchings/unknown_032760/func_80033F60.s b/asm/non_matchings/unknown_032760/func_80033F60.s new file mode 100644 index 00000000..868184b5 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80033F60.s @@ -0,0 +1,395 @@ +glabel func_80033F60 +/* 034B60 80033F60 27BDFF78 */ addiu $sp, $sp, -0x88 +/* 034B64 80033F64 44852000 */ mtc1 $a1, $f4 +/* 034B68 80033F68 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 +/* 034B6C 80033F6C 46802020 */ cvt.s.w $f0, $f4 +/* 034B70 80033F70 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) +/* 034B74 80033F74 AFBF002C */ sw $ra, 0x2c($sp) +/* 034B78 80033F78 AFB00028 */ sw $s0, 0x28($sp) +/* 034B7C 80033F7C AFA5008C */ sw $a1, 0x8c($sp) +/* 034B80 80033F80 8C830078 */ lw $v1, 0x78($a0) +/* 034B84 80033F84 00808025 */ move $s0, $a0 +/* 034B88 80033F88 15E00008 */ bnez $t7, .L80033FAC +/* 034B8C 80033F8C E7A0007C */ swc1 $f0, 0x7c($sp) +/* 034B90 80033F90 3C01800E */ lui $at, %hi(D_800E5FE4) # $at, 0x800e +/* 034B94 80033F94 C4295FE0 */ lwc1 $f9, %lo(D_800E5FE0)($at) +/* 034B98 80033F98 C4285FE4 */ lwc1 $f8, %lo(D_800E5FE4)($at) +/* 034B9C 80033F9C 460001A1 */ cvt.d.s $f6, $f0 +/* 034BA0 80033FA0 46283282 */ mul.d $f10, $f6, $f8 +/* 034BA4 80033FA4 46205120 */ cvt.s.d $f4, $f10 +/* 034BA8 80033FA8 E7A4007C */ swc1 $f4, 0x7c($sp) +.L80033FAC: +/* 034BAC 80033FAC 86180048 */ lh $t8, 0x48($s0) +/* 034BB0 80033FB0 24010074 */ li $at, 116 +/* 034BB4 80033FB4 17010015 */ bne $t8, $at, .L8003400C +/* 034BB8 80033FB8 00000000 */ nop +/* 034BBC 80033FBC 8E19007C */ lw $t9, 0x7c($s0) +/* 034BC0 80033FC0 00000000 */ nop +/* 034BC4 80033FC4 07210011 */ bgez $t9, .L8003400C +/* 034BC8 80033FC8 00000000 */ nop +/* 034BCC 80033FCC 44800000 */ mtc1 $zero, $f0 +/* 034BD0 80033FD0 00000000 */ nop +/* 034BD4 80033FD4 E600000C */ swc1 $f0, 0xc($s0) +/* 034BD8 80033FD8 E6000010 */ swc1 $f0, 0x10($s0) +/* 034BDC 80033FDC E6000014 */ swc1 $f0, 0x14($s0) +/* 034BE0 80033FE0 0C004558 */ jal func_80011560 +/* 034BE4 80033FE4 AFA30084 */ sw $v1, 0x84($sp) +/* 034BE8 80033FE8 8FA30084 */ lw $v1, 0x84($sp) +/* 034BEC 80033FEC 02002025 */ move $a0, $s0 +/* 034BF0 80033FF0 8C65000C */ lw $a1, 0xc($v1) +/* 034BF4 80033FF4 8C660010 */ lw $a2, 0x10($v1) +/* 034BF8 80033FF8 8C670014 */ lw $a3, 0x14($v1) +/* 034BFC 80033FFC 0C00455C */ jal func_80011570 +/* 034C00 80034000 00000000 */ nop +/* 034C04 80034004 100000AC */ b .L800342B8 +/* 034C08 80034008 8FAE008C */ lw $t6, 0x8c($sp) +.L8003400C: +/* 034C0C 8003400C C466000C */ lwc1 $f6, 0xc($v1) +/* 034C10 80034010 C608000C */ lwc1 $f8, 0xc($s0) +/* 034C14 80034014 3C01800E */ lui $at, %hi(D_800E5FEC) # $at, 0x800e +/* 034C18 80034018 46083281 */ sub.s $f10, $f6, $f8 +/* 034C1C 8003401C C4335FE8 */ lwc1 $f19, %lo(D_800E5FE8)($at) +/* 034C20 80034020 C4325FEC */ lwc1 $f18, %lo(D_800E5FEC)($at) +/* 034C24 80034024 46005121 */ cvt.d.s $f4, $f10 +/* 034C28 80034028 46322182 */ mul.d $f6, $f4, $f18 +/* 034C2C 8003402C 3C014024 */ li $at, 0x40240000 # 2.562500 +/* 034C30 80034030 44814800 */ mtc1 $at, $f9 +/* 034C34 80034034 44804000 */ mtc1 $zero, $f8 +/* 034C38 80034038 C7A4007C */ lwc1 $f4, 0x7c($sp) +/* 034C3C 8003403C 462030A0 */ cvt.s.d $f2, $f6 +/* 034C40 80034040 44805000 */ mtc1 $zero, $f10 +/* 034C44 80034044 46001021 */ cvt.d.s $f0, $f2 +/* 034C48 80034048 4620403C */ c.lt.d $f8, $f0 +/* 034C4C 8003404C 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 034C50 80034050 45000004 */ bc1f .L80034064 +/* 034C54 80034054 46002421 */ cvt.d.s $f16, $f4 +/* 034C58 80034058 44811000 */ mtc1 $at, $f2 +/* 034C5C 8003405C 00000000 */ nop +/* 034C60 80034060 46001021 */ cvt.d.s $f0, $f2 +.L80034064: +/* 034C64 80034064 3C01C024 */ li $at, 0xC0240000 # -2.562500 +/* 034C68 80034068 44815800 */ mtc1 $at, $f11 +/* 034C6C 8003406C 3C01C120 */ li $at, 0xC1200000 # -10.000000 +/* 034C70 80034070 462A003C */ c.lt.d $f0, $f10 +/* 034C74 80034074 44805000 */ mtc1 $zero, $f10 +/* 034C78 80034078 45000003 */ bc1f .L80034088 +/* 034C7C 8003407C 00000000 */ nop +/* 034C80 80034080 44811000 */ mtc1 $at, $f2 +/* 034C84 80034084 00000000 */ nop +.L80034088: +/* 034C88 80034088 C60E001C */ lwc1 $f14, 0x1c($s0) +/* 034C8C 8003408C 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 034C90 80034090 460E1181 */ sub.s $f6, $f2, $f14 +/* 034C94 80034094 44815800 */ mtc1 $at, $f11 +/* 034C98 80034098 46003221 */ cvt.d.s $f8, $f6 +/* 034C9C 8003409C 462A4102 */ mul.d $f4, $f8, $f10 +/* 034CA0 800340A0 46007221 */ cvt.d.s $f8, $f14 +/* 034CA4 800340A4 3C014024 */ li $at, 0x40240000 # 2.562500 +/* 034CA8 800340A8 46302182 */ mul.d $f6, $f4, $f16 +/* 034CAC 800340AC 46264280 */ add.d $f10, $f8, $f6 +/* 034CB0 800340B0 C6060010 */ lwc1 $f6, 0x10($s0) +/* 034CB4 800340B4 46205120 */ cvt.s.d $f4, $f10 +/* 034CB8 800340B8 44813800 */ mtc1 $at, $f7 +/* 034CBC 800340BC E604001C */ swc1 $f4, 0x1c($s0) +/* 034CC0 800340C0 C4680010 */ lwc1 $f8, 0x10($v1) +/* 034CC4 800340C4 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 034CC8 800340C8 46064281 */ sub.s $f10, $f8, $f6 +/* 034CCC 800340CC 44803000 */ mtc1 $zero, $f6 +/* 034CD0 800340D0 46005121 */ cvt.d.s $f4, $f10 +/* 034CD4 800340D4 46322202 */ mul.d $f8, $f4, $f18 +/* 034CD8 800340D8 44805000 */ mtc1 $zero, $f10 +/* 034CDC 800340DC 462040A0 */ cvt.s.d $f2, $f8 +/* 034CE0 800340E0 46001021 */ cvt.d.s $f0, $f2 +/* 034CE4 800340E4 4620303C */ c.lt.d $f6, $f0 +/* 034CE8 800340E8 44803000 */ mtc1 $zero, $f6 +/* 034CEC 800340EC 45000004 */ bc1f .L80034100 +/* 034CF0 800340F0 00000000 */ nop +/* 034CF4 800340F4 44811000 */ mtc1 $at, $f2 +/* 034CF8 800340F8 00000000 */ nop +/* 034CFC 800340FC 46001021 */ cvt.d.s $f0, $f2 +.L80034100: +/* 034D00 80034100 3C01C024 */ li $at, 0xC0240000 # -2.562500 +/* 034D04 80034104 44815800 */ mtc1 $at, $f11 +/* 034D08 80034108 3C01C120 */ li $at, 0xC1200000 # -10.000000 +/* 034D0C 8003410C 462A003C */ c.lt.d $f0, $f10 +/* 034D10 80034110 00000000 */ nop +/* 034D14 80034114 45000003 */ bc1f .L80034124 +/* 034D18 80034118 00000000 */ nop +/* 034D1C 8003411C 44811000 */ mtc1 $at, $f2 +/* 034D20 80034120 00000000 */ nop +.L80034124: +/* 034D24 80034124 C60C0020 */ lwc1 $f12, 0x20($s0) +/* 034D28 80034128 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 034D2C 8003412C 460C1101 */ sub.s $f4, $f2, $f12 +/* 034D30 80034130 44813800 */ mtc1 $at, $f7 +/* 034D34 80034134 46002221 */ cvt.d.s $f8, $f4 +/* 034D38 80034138 46264282 */ mul.d $f10, $f8, $f6 +/* 034D3C 8003413C 46006221 */ cvt.d.s $f8, $f12 +/* 034D40 80034140 3C014024 */ li $at, 0x40240000 # 2.562500 +/* 034D44 80034144 46305102 */ mul.d $f4, $f10, $f16 +/* 034D48 80034148 46244180 */ add.d $f6, $f8, $f4 +/* 034D4C 8003414C C6040014 */ lwc1 $f4, 0x14($s0) +/* 034D50 80034150 462032A0 */ cvt.s.d $f10, $f6 +/* 034D54 80034154 44812800 */ mtc1 $at, $f5 +/* 034D58 80034158 E60A0020 */ swc1 $f10, 0x20($s0) +/* 034D5C 8003415C C4680014 */ lwc1 $f8, 0x14($v1) +/* 034D60 80034160 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 034D64 80034164 46044181 */ sub.s $f6, $f8, $f4 +/* 034D68 80034168 44802000 */ mtc1 $zero, $f4 +/* 034D6C 8003416C 460032A1 */ cvt.d.s $f10, $f6 +/* 034D70 80034170 46325202 */ mul.d $f8, $f10, $f18 +/* 034D74 80034174 44803000 */ mtc1 $zero, $f6 +/* 034D78 80034178 462040A0 */ cvt.s.d $f2, $f8 +/* 034D7C 8003417C 46001021 */ cvt.d.s $f0, $f2 +/* 034D80 80034180 4620203C */ c.lt.d $f4, $f0 +/* 034D84 80034184 44802000 */ mtc1 $zero, $f4 +/* 034D88 80034188 45000004 */ bc1f .L8003419C +/* 034D8C 8003418C 00000000 */ nop +/* 034D90 80034190 44811000 */ mtc1 $at, $f2 +/* 034D94 80034194 00000000 */ nop +/* 034D98 80034198 46001021 */ cvt.d.s $f0, $f2 +.L8003419C: +/* 034D9C 8003419C 3C01C024 */ li $at, 0xC0240000 # -2.562500 +/* 034DA0 800341A0 44813800 */ mtc1 $at, $f7 +/* 034DA4 800341A4 3C01C120 */ li $at, 0xC1200000 # -10.000000 +/* 034DA8 800341A8 4626003C */ c.lt.d $f0, $f6 +/* 034DAC 800341AC 00000000 */ nop +/* 034DB0 800341B0 45000003 */ bc1f .L800341C0 +/* 034DB4 800341B4 00000000 */ nop +/* 034DB8 800341B8 44811000 */ mtc1 $at, $f2 +/* 034DBC 800341BC 00000000 */ nop +.L800341C0: +/* 034DC0 800341C0 C6000024 */ lwc1 $f0, 0x24($s0) +/* 034DC4 800341C4 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 034DC8 800341C8 46001281 */ sub.s $f10, $f2, $f0 +/* 034DCC 800341CC 44812800 */ mtc1 $at, $f5 +/* 034DD0 800341D0 46005221 */ cvt.d.s $f8, $f10 +/* 034DD4 800341D4 46244182 */ mul.d $f6, $f8, $f4 +/* 034DD8 800341D8 46000221 */ cvt.d.s $f8, $f0 +/* 034DDC 800341DC C60E001C */ lwc1 $f14, 0x1c($s0) +/* 034DE0 800341E0 46303282 */ mul.d $f10, $f6, $f16 +/* 034DE4 800341E4 462A4100 */ add.d $f4, $f8, $f10 +/* 034DE8 800341E8 462021A0 */ cvt.s.d $f6, $f4 +/* 034DEC 800341EC 460E7202 */ mul.s $f8, $f14, $f14 +/* 034DF0 800341F0 E6060024 */ swc1 $f6, 0x24($s0) +/* 034DF4 800341F4 C6000024 */ lwc1 $f0, 0x24($s0) +/* 034DF8 800341F8 00000000 */ nop +/* 034DFC 800341FC 46000282 */ mul.s $f10, $f0, $f0 +/* 034E00 80034200 0C0326B4 */ jal sqrtf +/* 034E04 80034204 460A4300 */ add.s $f12, $f8, $f10 +/* 034E08 80034208 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 034E0C 8003420C 44812800 */ mtc1 $at, $f5 +/* 034E10 80034210 44802000 */ mtc1 $zero, $f4 +/* 034E14 80034214 460001A1 */ cvt.d.s $f6, $f0 +/* 034E18 80034218 4626203C */ c.lt.d $f4, $f6 +/* 034E1C 8003421C C7A2007C */ lwc1 $f2, 0x7c($sp) +/* 034E20 80034220 4500000C */ bc1f .L80034254 +/* 034E24 80034224 00000000 */ nop +/* 034E28 80034228 C60C001C */ lwc1 $f12, 0x1c($s0) +/* 034E2C 8003422C C60E0024 */ lwc1 $f14, 0x24($s0) +/* 034E30 80034230 0C01C1D4 */ jal func_80070750 +/* 034E34 80034234 00000000 */ nop +/* 034E38 80034238 C7A2007C */ lwc1 $f2, 0x7c($sp) +/* 034E3C 8003423C A6020000 */ sh $v0, ($s0) +/* 034E40 80034240 8FA9008C */ lw $t1, 0x8c($sp) +/* 034E44 80034244 86080002 */ lh $t0, 2($s0) +/* 034E48 80034248 00095240 */ sll $t2, $t1, 9 +/* 034E4C 8003424C 010A5823 */ subu $t3, $t0, $t2 +/* 034E50 80034250 A60B0002 */ sh $t3, 2($s0) +.L80034254: +/* 034E54 80034254 C608001C */ lwc1 $f8, 0x1c($s0) +/* 034E58 80034258 C6040020 */ lwc1 $f4, 0x20($s0) +/* 034E5C 8003425C 46024282 */ mul.s $f10, $f8, $f2 +/* 034E60 80034260 C6080024 */ lwc1 $f8, 0x24($s0) +/* 034E64 80034264 02002025 */ move $a0, $s0 +/* 034E68 80034268 46022182 */ mul.s $f6, $f4, $f2 +/* 034E6C 8003426C 44055000 */ mfc1 $a1, $f10 +/* 034E70 80034270 46024282 */ mul.s $f10, $f8, $f2 +/* 034E74 80034274 44063000 */ mfc1 $a2, $f6 +/* 034E78 80034278 44075000 */ mfc1 $a3, $f10 +/* 034E7C 8003427C 0C00455C */ jal func_80011570 +/* 034E80 80034280 00000000 */ nop +/* 034E84 80034284 860C004A */ lh $t4, 0x4a($s0) +/* 034E88 80034288 2401012A */ li $at, 298 +/* 034E8C 8003428C 15810009 */ bne $t4, $at, .L800342B4 +/* 034E90 80034290 27A5004C */ addiu $a1, $sp, 0x4c +/* 034E94 80034294 C60C0010 */ lwc1 $f12, 0x10($s0) +/* 034E98 80034298 0C00AB42 */ jal func_8002AD08 +/* 034E9C 8003429C 00003025 */ move $a2, $zero +/* 034EA0 800342A0 10400005 */ beqz $v0, .L800342B8 +/* 034EA4 800342A4 8FAE008C */ lw $t6, 0x8c($sp) +/* 034EA8 800342A8 C7A4004C */ lwc1 $f4, 0x4c($sp) +/* 034EAC 800342AC 00000000 */ nop +/* 034EB0 800342B0 E6040010 */ swc1 $f4, 0x10($s0) +.L800342B4: +/* 034EB4 800342B4 8FAE008C */ lw $t6, 0x8c($sp) +.L800342B8: +/* 034EB8 800342B8 860D0018 */ lh $t5, 0x18($s0) +/* 034EBC 800342BC 000E7880 */ sll $t7, $t6, 2 +/* 034EC0 800342C0 01EE7821 */ addu $t7, $t7, $t6 +/* 034EC4 800342C4 000F7840 */ sll $t7, $t7, 1 +/* 034EC8 800342C8 8E190064 */ lw $t9, 0x64($s0) +/* 034ECC 800342CC 01AFC021 */ addu $t8, $t5, $t7 +/* 034ED0 800342D0 A6180018 */ sh $t8, 0x18($s0) +/* 034ED4 800342D4 AFB90074 */ sw $t9, 0x74($sp) +/* 034ED8 800342D8 8E02004C */ lw $v0, 0x4c($s0) +/* 034EDC 800342DC 00000000 */ nop +/* 034EE0 800342E0 8C440000 */ lw $a0, ($v0) +/* 034EE4 800342E4 00000000 */ nop +/* 034EE8 800342E8 10800032 */ beqz $a0, .L800343B4 +/* 034EEC 800342EC 00000000 */ nop +/* 034EF0 800342F0 90490013 */ lbu $t1, 0x13($v0) +/* 034EF4 800342F4 00000000 */ nop +/* 034EF8 800342F8 2921003C */ slti $at, $t1, 0x3c +/* 034EFC 800342FC 1020002D */ beqz $at, .L800343B4 +/* 034F00 80034300 00000000 */ nop +/* 034F04 80034304 8C880040 */ lw $t0, 0x40($a0) +/* 034F08 80034308 24050001 */ li $a1, 1 +/* 034F0C 8003430C 810A0054 */ lb $t2, 0x54($t0) +/* 034F10 80034310 00801825 */ move $v1, $a0 +/* 034F14 80034314 14AA0027 */ bne $a1, $t2, .L800343B4 +/* 034F18 80034318 00000000 */ nop +/* 034F1C 8003431C 8C820064 */ lw $v0, 0x64($a0) +/* 034F20 80034320 2401FFFF */ li $at, -1 +/* 034F24 80034324 844B0000 */ lh $t3, ($v0) +/* 034F28 80034328 00000000 */ nop +/* 034F2C 8003432C 11610021 */ beq $t3, $at, .L800343B4 +/* 034F30 80034330 00000000 */ nop +/* 034F34 80034334 860C0048 */ lh $t4, 0x48($s0) +/* 034F38 80034338 2401006C */ li $at, 108 +/* 034F3C 8003433C 15810012 */ bne $t4, $at, .L80034388 +/* 034F40 80034340 240E0014 */ li $t6, 20 +/* 034F44 80034344 A0450187 */ sb $a1, 0x187($v0) +/* 034F48 80034348 8E060014 */ lw $a2, 0x14($s0) +/* 034F4C 8003434C C60E0010 */ lwc1 $f14, 0x10($s0) +/* 034F50 80034350 C60C000C */ lwc1 $f12, 0xc($s0) +/* 034F54 80034354 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 034F58 80034358 44813000 */ mtc1 $at, $f6 +/* 034F5C 8003435C AE0E007C */ sw $t6, 0x7c($s0) +/* 034F60 80034360 240D0011 */ li $t5, 17 +/* 034F64 80034364 AFAD0010 */ sw $t5, 0x10($sp) +/* 034F68 80034368 AFA50018 */ sw $a1, 0x18($sp) +/* 034F6C 8003436C 2407002C */ li $a3, 44 +/* 034F70 80034370 0C00FF11 */ jal func_8003FC44 +/* 034F74 80034374 E7A60014 */ swc1 $f6, 0x14($sp) +/* 034F78 80034378 0C003FEE */ jal func_8000FFB8 +/* 034F7C 8003437C 02002025 */ move $a0, $s0 +/* 034F80 80034380 1000000D */ b .L800343B8 +/* 034F84 80034384 86090048 */ lh $t1, 0x48($s0) +.L80034388: +/* 034F88 80034388 8E0F007C */ lw $t7, 0x7c($s0) +/* 034F8C 8003438C 2418003C */ li $t8, 60 +/* 034F90 80034390 19E00008 */ blez $t7, .L800343B4 +/* 034F94 80034394 2419FFC4 */ li $t9, -60 +/* 034F98 80034398 A4580204 */ sh $t8, 0x204($v0) +/* 034F9C 8003439C AE19007C */ sw $t9, 0x7c($s0) +/* 034FA0 800343A0 AE030078 */ sw $v1, 0x78($s0) +/* 034FA4 800343A4 8FA50074 */ lw $a1, 0x74($sp) +/* 034FA8 800343A8 2404024A */ li $a0, 586 +/* 034FAC 800343AC 0C000741 */ jal func_80001D04 +/* 034FB0 800343B0 24A5001C */ addiu $a1, $a1, 0x1c +.L800343B4: +/* 034FB4 800343B4 86090048 */ lh $t1, 0x48($s0) +.L800343B8: +/* 034FB8 800343B8 2401006C */ li $at, 108 +/* 034FBC 800343BC 15210032 */ bne $t1, $at, .L80034488 +/* 034FC0 800343C0 24080001 */ li $t0, 1 +/* 034FC4 800343C4 AE080074 */ sw $t0, 0x74($s0) +/* 034FC8 800343C8 8FA5008C */ lw $a1, 0x8c($sp) +/* 034FCC 800343CC 0C02BF0F */ jal func_800AFC3C +/* 034FD0 800343D0 02002025 */ move $a0, $s0 +/* 034FD4 800343D4 8E0A007C */ lw $t2, 0x7c($s0) +/* 034FD8 800343D8 8FAB008C */ lw $t3, 0x8c($sp) +/* 034FDC 800343DC 00000000 */ nop +/* 034FE0 800343E0 014B6023 */ subu $t4, $t2, $t3 +/* 034FE4 800343E4 0581004E */ bgez $t4, .L80034520 +/* 034FE8 800343E8 AE0C007C */ sw $t4, 0x7c($s0) +/* 034FEC 800343EC 860D004A */ lh $t5, 0x4a($s0) +/* 034FF0 800343F0 2401012A */ li $at, 298 +/* 034FF4 800343F4 15A1000F */ bne $t5, $at, .L80034434 +/* 034FF8 800343F8 00000000 */ nop +/* 034FFC 800343FC 0C003FEE */ jal func_8000FFB8 +/* 035000 80034400 02002025 */ move $a0, $s0 +/* 035004 80034404 C60C000C */ lwc1 $f12, 0xc($s0) +/* 035008 80034408 C60E0010 */ lwc1 $f14, 0x10($s0) +/* 03500C 8003440C 8E060014 */ lw $a2, 0x14($s0) +/* 035010 80034410 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 035014 80034414 44814000 */ mtc1 $at, $f8 +/* 035018 80034418 240F0011 */ li $t7, 17 +/* 03501C 8003441C 24180001 */ li $t8, 1 +/* 035020 80034420 AFB80018 */ sw $t8, 0x18($sp) +/* 035024 80034424 AFAF0010 */ sw $t7, 0x10($sp) +/* 035028 80034428 2407002C */ li $a3, 44 +/* 03502C 8003442C 0C00FF11 */ jal func_8003FC44 +/* 035030 80034430 E7A80014 */ swc1 $f8, 0x14($sp) +.L80034434: +/* 035034 80034434 3C01800E */ lui $at, %hi(D_800E5FF4) # $at, 0x800e +/* 035038 80034438 C60A0008 */ lwc1 $f10, 8($s0) +/* 03503C 8003443C C4275FF0 */ lwc1 $f7, %lo(D_800E5FF0)($at) +/* 035040 80034440 C4265FF4 */ lwc1 $f6, %lo(D_800E5FF4)($at) +/* 035044 80034444 46005121 */ cvt.d.s $f4, $f10 +/* 035048 80034448 46262202 */ mul.d $f8, $f4, $f6 +/* 03504C 8003444C 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 035050 80034450 462042A0 */ cvt.s.d $f10, $f8 +/* 035054 80034454 44804000 */ mtc1 $zero, $f8 +/* 035058 80034458 E60A0008 */ swc1 $f10, 8($s0) +/* 03505C 8003445C C6040008 */ lwc1 $f4, 8($s0) +/* 035060 80034460 44814800 */ mtc1 $at, $f9 +/* 035064 80034464 460021A1 */ cvt.d.s $f6, $f4 +/* 035068 80034468 4628303C */ c.lt.d $f6, $f8 +/* 03506C 8003446C 00000000 */ nop +/* 035070 80034470 4500002C */ bc1f .L80034524 +/* 035074 80034474 8FBF002C */ lw $ra, 0x2c($sp) +/* 035078 80034478 0C003FEE */ jal func_8000FFB8 +/* 03507C 8003447C 02002025 */ move $a0, $s0 +/* 035080 80034480 10000028 */ b .L80034524 +/* 035084 80034484 8FBF002C */ lw $ra, 0x2c($sp) +.L80034488: +/* 035088 80034488 8E02007C */ lw $v0, 0x7c($s0) +/* 03508C 8003448C 8FA8008C */ lw $t0, 0x8c($sp) +/* 035090 80034490 0441000A */ bgez $v0, .L800344BC +/* 035094 80034494 00485023 */ subu $t2, $v0, $t0 +/* 035098 80034498 8FB9008C */ lw $t9, 0x8c($sp) +/* 03509C 8003449C 00000000 */ nop +/* 0350A0 800344A0 00594821 */ addu $t1, $v0, $t9 +/* 0350A4 800344A4 AE09007C */ sw $t1, 0x7c($s0) +/* 0350A8 800344A8 05200009 */ bltz $t1, .L800344D0 +/* 0350AC 800344AC 01201025 */ move $v0, $t1 +/* 0350B0 800344B0 AE00007C */ sw $zero, 0x7c($s0) +/* 0350B4 800344B4 10000006 */ b .L800344D0 +/* 0350B8 800344B8 00001025 */ move $v0, $zero +.L800344BC: +/* 0350BC 800344BC AE0A007C */ sw $t2, 0x7c($s0) +/* 0350C0 800344C0 1D400003 */ bgtz $t2, .L800344D0 +/* 0350C4 800344C4 01401025 */ move $v0, $t2 +/* 0350C8 800344C8 AE00007C */ sw $zero, 0x7c($s0) +/* 0350CC 800344CC 00001025 */ move $v0, $zero +.L800344D0: +/* 0350D0 800344D0 14400014 */ bnez $v0, .L80034524 +/* 0350D4 800344D4 8FBF002C */ lw $ra, 0x2c($sp) +/* 0350D8 800344D8 8FAB0074 */ lw $t3, 0x74($sp) +/* 0350DC 800344DC 00000000 */ nop +/* 0350E0 800344E0 8D64001C */ lw $a0, 0x1c($t3) +/* 0350E4 800344E4 00000000 */ nop +/* 0350E8 800344E8 10800003 */ beqz $a0, .L800344F8 +/* 0350EC 800344EC 00000000 */ nop +/* 0350F0 800344F0 0C001223 */ jal func_8000488C +/* 0350F4 800344F4 00000000 */ nop +.L800344F8: +/* 0350F8 800344F8 8E05000C */ lw $a1, 0xc($s0) +/* 0350FC 800344FC 8E060010 */ lw $a2, 0x10($s0) +/* 035100 80034500 8E070014 */ lw $a3, 0x14($s0) +/* 035104 80034504 240C0004 */ li $t4, 4 +/* 035108 80034508 AFAC0010 */ sw $t4, 0x10($sp) +/* 03510C 8003450C AFA00014 */ sw $zero, 0x14($sp) +/* 035110 80034510 0C002556 */ jal func_80009558 +/* 035114 80034514 24040155 */ li $a0, 341 +/* 035118 80034518 0C003FEE */ jal func_8000FFB8 +/* 03511C 8003451C 02002025 */ move $a0, $s0 +.L80034520: +/* 035120 80034520 8FBF002C */ lw $ra, 0x2c($sp) +.L80034524: +/* 035124 80034524 8FB00028 */ lw $s0, 0x28($sp) +/* 035128 80034528 03E00008 */ jr $ra +/* 03512C 8003452C 27BD0088 */ addiu $sp, $sp, 0x88 + diff --git a/asm/non_matchings/unknown_032760/func_80034530.s b/asm/non_matchings/unknown_032760/func_80034530.s new file mode 100644 index 00000000..ef804f0d --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80034530.s @@ -0,0 +1,30 @@ +glabel func_80034530 +/* 035130 80034530 8C8F004C */ lw $t7, 0x4c($a0) +/* 035134 80034534 240E0022 */ li $t6, 34 +/* 035138 80034538 A5EE0014 */ sh $t6, 0x14($t7) +/* 03513C 8003453C 8C98004C */ lw $t8, 0x4c($a0) +/* 035140 80034540 00000000 */ nop +/* 035144 80034544 A3000011 */ sb $zero, 0x11($t8) +/* 035148 80034548 8C820064 */ lw $v0, 0x64($a0) +/* 03514C 8003454C 80B9000A */ lb $t9, 0xa($a1) +/* 035150 80034550 00000000 */ nop +/* 035154 80034554 A059000E */ sb $t9, 0xe($v0) +/* 035158 80034558 80A8000B */ lb $t0, 0xb($a1) +/* 03515C 8003455C 00000000 */ nop +/* 035160 80034560 A048000F */ sb $t0, 0xf($v0) +/* 035164 80034564 90A9000C */ lbu $t1, 0xc($a1) +/* 035168 80034568 804B000F */ lb $t3, 0xf($v0) +/* 03516C 8003456C A0490010 */ sb $t1, 0x10($v0) +/* 035170 80034570 90AA000D */ lbu $t2, 0xd($a1) +/* 035174 80034574 A44B000C */ sh $t3, 0xc($v0) +/* 035178 80034578 A04A0011 */ sb $t2, 0x11($v0) +/* 03517C 8003457C 90AD0008 */ lbu $t5, 8($a1) +/* 035180 80034580 00000000 */ nop +/* 035184 80034584 000D7200 */ sll $t6, $t5, 8 +/* 035188 80034588 A48E0000 */ sh $t6, ($a0) +/* 03518C 8003458C 90B80009 */ lbu $t8, 9($a1) +/* 035190 80034590 00000000 */ nop +/* 035194 80034594 0018CA00 */ sll $t9, $t8, 8 +/* 035198 80034598 03E00008 */ jr $ra +/* 03519C 8003459C A4990002 */ sh $t9, 2($a0) + diff --git a/asm/non_matchings/unknown_032760/func_800345A0.s b/asm/non_matchings/unknown_032760/func_800345A0.s new file mode 100644 index 00000000..f71cd76d --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800345A0.s @@ -0,0 +1,176 @@ +glabel func_800345A0 +/* 0351A0 800345A0 27BDFF38 */ addiu $sp, $sp, -0xc8 +/* 0351A4 800345A4 AFBF003C */ sw $ra, 0x3c($sp) +/* 0351A8 800345A8 AFB10038 */ sw $s1, 0x38($sp) +/* 0351AC 800345AC AFB00034 */ sw $s0, 0x34($sp) +/* 0351B0 800345B0 E7B70028 */ swc1 $f23, 0x28($sp) +/* 0351B4 800345B4 E7B6002C */ swc1 $f22, 0x2c($sp) +/* 0351B8 800345B8 E7B50020 */ swc1 $f21, 0x20($sp) +/* 0351BC 800345BC E7B40024 */ swc1 $f20, 0x24($sp) +/* 0351C0 800345C0 8C910064 */ lw $s1, 0x64($a0) +/* 0351C4 800345C4 00808025 */ move $s0, $a0 +/* 0351C8 800345C8 8622000C */ lh $v0, 0xc($s1) +/* 0351CC 800345CC 00000000 */ nop +/* 0351D0 800345D0 18400003 */ blez $v0, .L800345E0 +/* 0351D4 800345D4 00457023 */ subu $t6, $v0, $a1 +/* 0351D8 800345D8 10000091 */ b .L80034820 +/* 0351DC 800345DC A62E000C */ sh $t6, 0xc($s1) +.L800345E0: +/* 0351E0 800345E0 8E03004C */ lw $v1, 0x4c($s0) +/* 0351E4 800345E4 922F0011 */ lbu $t7, 0x11($s1) +/* 0351E8 800345E8 90780013 */ lbu $t8, 0x13($v1) +/* 0351EC 800345EC 00000000 */ nop +/* 0351F0 800345F0 01F8082A */ slt $at, $t7, $t8 +/* 0351F4 800345F4 1420008B */ bnez $at, .L80034824 +/* 0351F8 800345F8 8FBF003C */ lw $ra, 0x3c($sp) +/* 0351FC 800345FC 8239000E */ lb $t9, 0xe($s1) +/* 035200 80034600 00000000 */ nop +/* 035204 80034604 1320002D */ beqz $t9, .L800346BC +/* 035208 80034608 00000000 */ nop +/* 03520C 8003460C 8C620000 */ lw $v0, ($v1) +/* 035210 80034610 00000000 */ nop +/* 035214 80034614 10400029 */ beqz $v0, .L800346BC +/* 035218 80034618 00000000 */ nop +/* 03521C 8003461C 84480048 */ lh $t0, 0x48($v0) +/* 035220 80034620 24010001 */ li $at, 1 +/* 035224 80034624 15010025 */ bne $t0, $at, .L800346BC +/* 035228 80034628 00000000 */ nop +/* 03522C 8003462C C604000C */ lwc1 $f4, 0xc($s0) +/* 035230 80034630 C446000C */ lwc1 $f6, 0xc($v0) +/* 035234 80034634 C6080010 */ lwc1 $f8, 0x10($s0) +/* 035238 80034638 46062501 */ sub.s $f20, $f4, $f6 +/* 03523C 8003463C C44A0010 */ lwc1 $f10, 0x10($v0) +/* 035240 80034640 4614A102 */ mul.s $f4, $f20, $f20 +/* 035244 80034644 460A4581 */ sub.s $f22, $f8, $f10 +/* 035248 80034648 C6100014 */ lwc1 $f16, 0x14($s0) +/* 03524C 8003464C C4520014 */ lwc1 $f18, 0x14($v0) +/* 035250 80034650 4616B182 */ mul.s $f6, $f22, $f22 +/* 035254 80034654 46128381 */ sub.s $f14, $f16, $f18 +/* 035258 80034658 E7AE0058 */ swc1 $f14, 0x58($sp) +/* 03525C 8003465C 460E7282 */ mul.s $f10, $f14, $f14 +/* 035260 80034660 46062200 */ add.s $f8, $f4, $f6 +/* 035264 80034664 0C0326B4 */ jal sqrtf +/* 035268 80034668 460A4300 */ add.s $f12, $f8, $f10 +/* 03526C 8003466C 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 035270 80034670 44818000 */ mtc1 $at, $f16 +/* 035274 80034674 C7AE0058 */ lwc1 $f14, 0x58($sp) +/* 035278 80034678 4600803C */ c.lt.s $f16, $f0 +/* 03527C 8003467C 00000000 */ nop +/* 035280 80034680 4500000E */ bc1f .L800346BC +/* 035284 80034684 00000000 */ nop +/* 035288 80034688 4600A303 */ div.s $f12, $f20, $f0 +/* 03528C 8003468C 00000000 */ nop +/* 035290 80034690 4600B583 */ div.s $f22, $f22, $f0 +/* 035294 80034694 0C01C1D4 */ jal func_80070750 +/* 035298 80034698 46007383 */ div.s $f14, $f14, $f0 +/* 03529C 8003469C 24018000 */ li $at, -32768 +/* 0352A0 800346A0 00415021 */ addu $t2, $v0, $at +/* 0352A4 800346A4 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0352A8 800346A8 44817000 */ mtc1 $at, $f14 +/* 0352AC 800346AC A60A0000 */ sh $t2, ($s0) +/* 0352B0 800346B0 0C01C1D4 */ jal func_80070750 +/* 0352B4 800346B4 4600B306 */ mov.s $f12, $f22 +/* 0352B8 800346B8 A6020002 */ sh $v0, 2($s0) +.L800346BC: +/* 0352BC 800346BC 444DF800 */ cfc1 $t5, $31 +/* 0352C0 800346C0 822C000F */ lb $t4, 0xf($s1) +/* 0352C4 800346C4 35A10003 */ ori $at, $t5, 3 +/* 0352C8 800346C8 38210002 */ xori $at, $at, 2 +/* 0352CC 800346CC A62C000C */ sh $t4, 0xc($s1) +/* 0352D0 800346D0 C612000C */ lwc1 $f18, 0xc($s0) +/* 0352D4 800346D4 44C1F800 */ ctc1 $at, $31 +/* 0352D8 800346D8 24090008 */ li $t1, 8 +/* 0352DC 800346DC 46009124 */ cvt.w.s $f4, $f18 +/* 0352E0 800346E0 240A00C6 */ li $t2, 198 +/* 0352E4 800346E4 44CDF800 */ ctc1 $t5, $31 +/* 0352E8 800346E8 440E2000 */ mfc1 $t6, $f4 +/* 0352EC 800346EC 240B0004 */ li $t3, 4 +/* 0352F0 800346F0 444FF800 */ cfc1 $t7, $31 +/* 0352F4 800346F4 A7AE004A */ sh $t6, 0x4a($sp) +/* 0352F8 800346F8 35E10003 */ ori $at, $t7, 3 +/* 0352FC 800346FC 38210002 */ xori $at, $at, 2 +/* 035300 80034700 44C1F800 */ ctc1 $at, $31 +/* 035304 80034704 C6060010 */ lwc1 $f6, 0x10($s0) +/* 035308 80034708 24040133 */ li $a0, 307 +/* 03530C 8003470C 46003224 */ cvt.w.s $f8, $f6 +/* 035310 80034710 44CFF800 */ ctc1 $t7, $31 +/* 035314 80034714 44184000 */ mfc1 $t8, $f8 +/* 035318 80034718 00000000 */ nop +/* 03531C 8003471C 4459F800 */ cfc1 $t9, $31 +/* 035320 80034720 A7B8004C */ sh $t8, 0x4c($sp) +/* 035324 80034724 37210003 */ ori $at, $t9, 3 +/* 035328 80034728 38210002 */ xori $at, $at, 2 +/* 03532C 8003472C 44C1F800 */ ctc1 $at, $31 +/* 035330 80034730 C60A0014 */ lwc1 $f10, 0x14($s0) +/* 035334 80034734 A3A90049 */ sb $t1, 0x49($sp) +/* 035338 80034738 46005424 */ cvt.w.s $f16, $f10 +/* 03533C 8003473C A3AA0048 */ sb $t2, 0x48($sp) +/* 035340 80034740 44088000 */ mfc1 $t0, $f16 +/* 035344 80034744 44D9F800 */ ctc1 $t9, $31 +/* 035348 80034748 A7A8004E */ sh $t0, 0x4e($sp) +/* 03534C 8003474C 8E070014 */ lw $a3, 0x14($s0) +/* 035350 80034750 8E060010 */ lw $a2, 0x10($s0) +/* 035354 80034754 8E05000C */ lw $a1, 0xc($s0) +/* 035358 80034758 AFA00014 */ sw $zero, 0x14($sp) +/* 03535C 8003475C 0C002556 */ jal func_80009558 +/* 035360 80034760 AFAB0010 */ sw $t3, 0x10($sp) +/* 035364 80034764 27A40048 */ addiu $a0, $sp, 0x48 +/* 035368 80034768 0C003A95 */ jal func_8000EA54 +/* 03536C 8003476C 24050001 */ li $a1, 1 +/* 035370 80034770 1040002B */ beqz $v0, .L80034820 +/* 035374 80034774 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 035378 80034778 AC40003C */ sw $zero, 0x3c($v0) +/* 03537C 8003477C 860C0000 */ lh $t4, ($s0) +/* 035380 80034780 4480B000 */ mtc1 $zero, $f22 +/* 035384 80034784 A44C0000 */ sh $t4, ($v0) +/* 035388 80034788 860D0002 */ lh $t5, 2($s0) +/* 03538C 8003478C 44819000 */ mtc1 $at, $f18 +/* 035390 80034790 A44D0002 */ sh $t5, 2($v0) +/* 035394 80034794 922E0010 */ lbu $t6, 0x10($s1) +/* 035398 80034798 AC51007C */ sw $s1, 0x7c($v0) +/* 03539C 8003479C AC4E0078 */ sw $t6, 0x78($v0) +/* 0353A0 800347A0 E7B600B0 */ swc1 $f22, 0xb0($sp) +/* 0353A4 800347A4 E7B600B4 */ swc1 $f22, 0xb4($sp) +/* 0353A8 800347A8 E7B600B8 */ swc1 $f22, 0xb8($sp) +/* 0353AC 800347AC E7B200AC */ swc1 $f18, 0xac($sp) +/* 0353B0 800347B0 860F0000 */ lh $t7, ($s0) +/* 0353B4 800347B4 27A40064 */ addiu $a0, $sp, 0x64 +/* 0353B8 800347B8 A7AF00A4 */ sh $t7, 0xa4($sp) +/* 0353BC 800347BC 86180002 */ lh $t8, 2($s0) +/* 0353C0 800347C0 A7A000A8 */ sh $zero, 0xa8($sp) +/* 0353C4 800347C4 AFA200C0 */ sw $v0, 0xc0($sp) +/* 0353C8 800347C8 27A500A4 */ addiu $a1, $sp, 0xa4 +/* 0353CC 800347CC 0C01BF0C */ jal func_8006FC30 +/* 0353D0 800347D0 A7B800A6 */ sh $t8, 0xa6($sp) +/* 0353D4 800347D4 8239000E */ lb $t9, 0xe($s1) +/* 0353D8 800347D8 3C0141F0 */ li $at, 0x41F00000 # 30.000000 +/* 0353DC 800347DC 8FA300C0 */ lw $v1, 0xc0($sp) +/* 0353E0 800347E0 4481A000 */ mtc1 $at, $f20 +/* 0353E4 800347E4 17200004 */ bnez $t9, .L800347F8 +/* 0353E8 800347E8 27A40064 */ addiu $a0, $sp, 0x64 +/* 0353EC 800347EC 3C014234 */ li $at, 0x42340000 # 45.000000 +/* 0353F0 800347F0 4481A000 */ mtc1 $at, $f20 +/* 0353F4 800347F4 00000000 */ nop +.L800347F8: +/* 0353F8 800347F8 4405B000 */ mfc1 $a1, $f22 +/* 0353FC 800347FC 4406B000 */ mfc1 $a2, $f22 +/* 035400 80034800 4407A000 */ mfc1 $a3, $f20 +/* 035404 80034804 2468001C */ addiu $t0, $v1, 0x1c +/* 035408 80034808 24690020 */ addiu $t1, $v1, 0x20 +/* 03540C 8003480C 246A0024 */ addiu $t2, $v1, 0x24 +/* 035410 80034810 AFAA0018 */ sw $t2, 0x18($sp) +/* 035414 80034814 AFA90014 */ sw $t1, 0x14($sp) +/* 035418 80034818 0C01BD93 */ jal func_8006F64C +/* 03541C 8003481C AFA80010 */ sw $t0, 0x10($sp) +.L80034820: +/* 035420 80034820 8FBF003C */ lw $ra, 0x3c($sp) +.L80034824: +/* 035424 80034824 C7B50020 */ lwc1 $f21, 0x20($sp) +/* 035428 80034828 C7B40024 */ lwc1 $f20, 0x24($sp) +/* 03542C 8003482C C7B70028 */ lwc1 $f23, 0x28($sp) +/* 035430 80034830 C7B6002C */ lwc1 $f22, 0x2c($sp) +/* 035434 80034834 8FB00034 */ lw $s0, 0x34($sp) +/* 035438 80034838 8FB10038 */ lw $s1, 0x38($sp) +/* 03543C 8003483C 03E00008 */ jr $ra +/* 035440 80034840 27BD00C8 */ addiu $sp, $sp, 0xc8 + diff --git a/asm/non_matchings/unknown_032760/func_80034844.s b/asm/non_matchings/unknown_032760/func_80034844.s new file mode 100644 index 00000000..3959bca5 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80034844.s @@ -0,0 +1,9 @@ +glabel func_80034844 +/* 035444 80034844 AFA50004 */ sw $a1, 4($sp) +/* 035448 80034848 8C8F004C */ lw $t7, 0x4c($a0) +/* 03544C 8003484C 240E0002 */ li $t6, 2 +/* 035450 80034850 A5EE0014 */ sh $t6, 0x14($t7) +/* 035454 80034854 8C98004C */ lw $t8, 0x4c($a0) +/* 035458 80034858 03E00008 */ jr $ra +/* 03545C 8003485C A3000011 */ sb $zero, 0x11($t8) + diff --git a/asm/non_matchings/unknown_032760/func_80034860.s b/asm/non_matchings/unknown_032760/func_80034860.s new file mode 100644 index 00000000..0bd05489 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80034860.s @@ -0,0 +1,175 @@ +glabel func_80034860 +/* 035460 80034860 44852000 */ mtc1 $a1, $f4 +/* 035464 80034864 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 +/* 035468 80034868 468020A0 */ cvt.s.w $f2, $f4 +/* 03546C 8003486C 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) +/* 035470 80034870 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 035474 80034874 AFB00028 */ sw $s0, 0x28($sp) +/* 035478 80034878 00808025 */ move $s0, $a0 +/* 03547C 8003487C AFBF002C */ sw $ra, 0x2c($sp) +/* 035480 80034880 AFA50064 */ sw $a1, 0x64($sp) +/* 035484 80034884 00004025 */ move $t0, $zero +/* 035488 80034888 15E00007 */ bnez $t7, .L800348A8 +/* 03548C 8003488C 46001006 */ mov.s $f0, $f2 +/* 035490 80034890 3C01800E */ lui $at, %hi(D_800E5FFC) # $at, 0x800e +/* 035494 80034894 C4295FF8 */ lwc1 $f9, %lo(D_800E5FF8)($at) +/* 035498 80034898 C4285FFC */ lwc1 $f8, %lo(D_800E5FFC)($at) +/* 03549C 8003489C 460011A1 */ cvt.d.s $f6, $f2 +/* 0354A0 800348A0 46283282 */ mul.d $f10, $f6, $f8 +/* 0354A4 800348A4 46205020 */ cvt.s.d $f0, $f10 +.L800348A8: +/* 0354A8 800348A8 C612001C */ lwc1 $f18, 0x1c($s0) +/* 0354AC 800348AC C610000C */ lwc1 $f16, 0xc($s0) +/* 0354B0 800348B0 46009102 */ mul.s $f4, $f18, $f0 +/* 0354B4 800348B4 3C014110 */ li $at, 0x41100000 # 9.000000 +/* 0354B8 800348B8 2605000C */ addiu $a1, $s0, 0xc +/* 0354BC 800348BC 24040001 */ li $a0, 1 +/* 0354C0 800348C0 46048180 */ add.s $f6, $f16, $f4 +/* 0354C4 800348C4 27A60040 */ addiu $a2, $sp, 0x40 +/* 0354C8 800348C8 E7A60040 */ swc1 $f6, 0x40($sp) +/* 0354CC 800348CC C60A0020 */ lwc1 $f10, 0x20($s0) +/* 0354D0 800348D0 C6080010 */ lwc1 $f8, 0x10($s0) +/* 0354D4 800348D4 46005482 */ mul.s $f18, $f10, $f0 +/* 0354D8 800348D8 2407FFFF */ li $a3, -1 +/* 0354DC 800348DC 46124400 */ add.s $f16, $f8, $f18 +/* 0354E0 800348E0 44819000 */ mtc1 $at, $f18 +/* 0354E4 800348E4 E7B00044 */ swc1 $f16, 0x44($sp) +/* 0354E8 800348E8 C6060024 */ lwc1 $f6, 0x24($s0) +/* 0354EC 800348EC C6040014 */ lwc1 $f4, 0x14($s0) +/* 0354F0 800348F0 46003282 */ mul.s $f10, $f6, $f0 +/* 0354F4 800348F4 E7A0005C */ swc1 $f0, 0x5c($sp) +/* 0354F8 800348F8 A3A8004F */ sb $t0, 0x4f($sp) +/* 0354FC 800348FC AFA50034 */ sw $a1, 0x34($sp) +/* 035500 80034900 460A2200 */ add.s $f8, $f4, $f10 +/* 035504 80034904 E7B2003C */ swc1 $f18, 0x3c($sp) +/* 035508 80034908 0C00C44C */ jal func_80031130 +/* 03550C 8003490C E7A80048 */ swc1 $f8, 0x48($sp) +/* 035510 80034910 8FA40034 */ lw $a0, 0x34($sp) +/* 035514 80034914 24180001 */ li $t8, 1 +/* 035518 80034918 27B90038 */ addiu $t9, $sp, 0x38 +/* 03551C 8003491C AFA00038 */ sw $zero, 0x38($sp) +/* 035520 80034920 AFB90014 */ sw $t9, 0x14($sp) +/* 035524 80034924 AFB80010 */ sw $t8, 0x10($sp) +/* 035528 80034928 27A50040 */ addiu $a1, $sp, 0x40 +/* 03552C 8003492C 27A6003C */ addiu $a2, $sp, 0x3c +/* 035530 80034930 0C00C580 */ jal func_80031600 +/* 035534 80034934 27A7004E */ addiu $a3, $sp, 0x4e +/* 035538 80034938 8FA90038 */ lw $t1, 0x38($sp) +/* 03553C 8003493C 83A8004F */ lb $t0, 0x4f($sp) +/* 035540 80034940 C7A0005C */ lwc1 $f0, 0x5c($sp) +/* 035544 80034944 11200014 */ beqz $t1, .L80034998 +/* 035548 80034948 00000000 */ nop +/* 03554C 8003494C C7B00040 */ lwc1 $f16, 0x40($sp) +/* 035550 80034950 C606000C */ lwc1 $f6, 0xc($s0) +/* 035554 80034954 C6120010 */ lwc1 $f18, 0x10($s0) +/* 035558 80034958 46068101 */ sub.s $f4, $f16, $f6 +/* 03555C 8003495C 00000000 */ nop +/* 035560 80034960 46002283 */ div.s $f10, $f4, $f0 +/* 035564 80034964 E60A001C */ swc1 $f10, 0x1c($s0) +/* 035568 80034968 C7A80044 */ lwc1 $f8, 0x44($sp) +/* 03556C 8003496C C60A0014 */ lwc1 $f10, 0x14($s0) +/* 035570 80034970 46124401 */ sub.s $f16, $f8, $f18 +/* 035574 80034974 00000000 */ nop +/* 035578 80034978 46008183 */ div.s $f6, $f16, $f0 +/* 03557C 8003497C E6060020 */ swc1 $f6, 0x20($s0) +/* 035580 80034980 C7A40048 */ lwc1 $f4, 0x48($sp) +/* 035584 80034984 00000000 */ nop +/* 035588 80034988 460A2201 */ sub.s $f8, $f4, $f10 +/* 03558C 8003498C 00000000 */ nop +/* 035590 80034990 46004483 */ div.s $f18, $f8, $f0 +/* 035594 80034994 E6120024 */ swc1 $f18, 0x24($s0) +.L80034998: +/* 035598 80034998 C610001C */ lwc1 $f16, 0x1c($s0) +/* 03559C 8003499C C6040020 */ lwc1 $f4, 0x20($s0) +/* 0355A0 800349A0 46008182 */ mul.s $f6, $f16, $f0 +/* 0355A4 800349A4 C6080024 */ lwc1 $f8, 0x24($s0) +/* 0355A8 800349A8 A3A8004F */ sb $t0, 0x4f($sp) +/* 0355AC 800349AC 02002025 */ move $a0, $s0 +/* 0355B0 800349B0 46002282 */ mul.s $f10, $f4, $f0 +/* 0355B4 800349B4 44053000 */ mfc1 $a1, $f6 +/* 0355B8 800349B8 46004482 */ mul.s $f18, $f8, $f0 +/* 0355BC 800349BC 44065000 */ mfc1 $a2, $f10 +/* 0355C0 800349C0 44079000 */ mfc1 $a3, $f18 +/* 0355C4 800349C4 0C00455C */ jal func_80011570 +/* 0355C8 800349C8 00000000 */ nop +/* 0355CC 800349CC 8FAA0038 */ lw $t2, 0x38($sp) +/* 0355D0 800349D0 83A8004F */ lb $t0, 0x4f($sp) +/* 0355D4 800349D4 1140000E */ beqz $t2, .L80034A10 +/* 0355D8 800349D8 3C014210 */ li $at, 0x42100000 # 36.000000 +/* 0355DC 800349DC C6100010 */ lwc1 $f16, 0x10($s0) +/* 0355E0 800349E0 44813000 */ mtc1 $at, $f6 +/* 0355E4 800349E4 3C01800E */ lui $at, %hi(D_800E6000) # $at, 0x800e +/* 0355E8 800349E8 C60C000C */ lwc1 $f12, 0xc($s0) +/* 0355EC 800349EC 8E060014 */ lw $a2, 0x14($s0) +/* 0355F0 800349F0 C4246000 */ lwc1 $f4, %lo(D_800E6000)($at) +/* 0355F4 800349F4 AFA00018 */ sw $zero, 0x18($sp) +/* 0355F8 800349F8 AFA00010 */ sw $zero, 0x10($sp) +/* 0355FC 800349FC 2407002C */ li $a3, 44 +/* 035600 80034A00 46068381 */ sub.s $f14, $f16, $f6 +/* 035604 80034A04 0C00FF11 */ jal func_8003FC44 +/* 035608 80034A08 E7A40014 */ swc1 $f4, 0x14($sp) +/* 03560C 80034A0C 24080001 */ li $t0, 1 +.L80034A10: +/* 035610 80034A10 8E020078 */ lw $v0, 0x78($s0) +/* 035614 80034A14 8FAB0064 */ lw $t3, 0x64($sp) +/* 035618 80034A18 18400003 */ blez $v0, .L80034A28 +/* 03561C 80034A1C 004B6023 */ subu $t4, $v0, $t3 +/* 035620 80034A20 10000002 */ b .L80034A2C +/* 035624 80034A24 AE0C0078 */ sw $t4, 0x78($s0) +.L80034A28: +/* 035628 80034A28 24080001 */ li $t0, 1 +.L80034A2C: +/* 03562C 80034A2C 8E03004C */ lw $v1, 0x4c($s0) +/* 035630 80034A30 00000000 */ nop +/* 035634 80034A34 906D0013 */ lbu $t5, 0x13($v1) +/* 035638 80034A38 00000000 */ nop +/* 03563C 80034A3C 29A10050 */ slti $at, $t5, 0x50 +/* 035640 80034A40 10200023 */ beqz $at, .L80034AD0 +/* 035644 80034A44 00000000 */ nop +/* 035648 80034A48 8C620000 */ lw $v0, ($v1) +/* 03564C 80034A4C 00000000 */ nop +/* 035650 80034A50 1040001F */ beqz $v0, .L80034AD0 +/* 035654 80034A54 00000000 */ nop +/* 035658 80034A58 844E0048 */ lh $t6, 0x48($v0) +/* 03565C 80034A5C 24040001 */ li $a0, 1 +/* 035660 80034A60 148E001B */ bne $a0, $t6, .L80034AD0 +/* 035664 80034A64 2407002C */ li $a3, 44 +/* 035668 80034A68 8C430064 */ lw $v1, 0x64($v0) +/* 03566C 80034A6C 2401FFFF */ li $at, -1 +/* 035670 80034A70 846F0000 */ lh $t7, ($v1) +/* 035674 80034A74 24080001 */ li $t0, 1 +/* 035678 80034A78 11E10002 */ beq $t7, $at, .L80034A84 +/* 03567C 80034A7C 24190011 */ li $t9, 17 +/* 035680 80034A80 A0640187 */ sb $a0, 0x187($v1) +.L80034A84: +/* 035684 80034A84 8E02007C */ lw $v0, 0x7c($s0) +/* 035688 80034A88 241800B4 */ li $t8, 180 +/* 03568C 80034A8C 10400002 */ beqz $v0, .L80034A98 +/* 035690 80034A90 3C014210 */ li $at, 0x42100000 # 36.000000 +/* 035694 80034A94 A458000C */ sh $t8, 0xc($v0) +.L80034A98: +/* 035698 80034A98 C60A0010 */ lwc1 $f10, 0x10($s0) +/* 03569C 80034A9C 44814000 */ mtc1 $at, $f8 +/* 0356A0 80034AA0 C60C000C */ lwc1 $f12, 0xc($s0) +/* 0356A4 80034AA4 8E060014 */ lw $a2, 0x14($s0) +/* 0356A8 80034AA8 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 0356AC 80034AAC 44819000 */ mtc1 $at, $f18 +/* 0356B0 80034AB0 A3A8004F */ sb $t0, 0x4f($sp) +/* 0356B4 80034AB4 AFA00018 */ sw $zero, 0x18($sp) +/* 0356B8 80034AB8 AFB90010 */ sw $t9, 0x10($sp) +/* 0356BC 80034ABC 46085381 */ sub.s $f14, $f10, $f8 +/* 0356C0 80034AC0 0C00FF11 */ jal func_8003FC44 +/* 0356C4 80034AC4 E7B20014 */ swc1 $f18, 0x14($sp) +/* 0356C8 80034AC8 83A8004F */ lb $t0, 0x4f($sp) +/* 0356CC 80034ACC 00000000 */ nop +.L80034AD0: +/* 0356D0 80034AD0 11000004 */ beqz $t0, .L80034AE4 +/* 0356D4 80034AD4 8FBF002C */ lw $ra, 0x2c($sp) +/* 0356D8 80034AD8 0C003FEE */ jal func_8000FFB8 +/* 0356DC 80034ADC 02002025 */ move $a0, $s0 +/* 0356E0 80034AE0 8FBF002C */ lw $ra, 0x2c($sp) +.L80034AE4: +/* 0356E4 80034AE4 8FB00028 */ lw $s0, 0x28($sp) +/* 0356E8 80034AE8 03E00008 */ jr $ra +/* 0356EC 80034AEC 27BD0060 */ addiu $sp, $sp, 0x60 + diff --git a/asm/non_matchings/unknown_032760/func_80034AF0.s b/asm/non_matchings/unknown_032760/func_80034AF0.s new file mode 100644 index 00000000..ce04da31 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80034AF0.s @@ -0,0 +1,26 @@ +glabel func_80034AF0 +/* 0356F0 80034AF0 90AF0009 */ lbu $t7, 9($a1) +/* 0356F4 80034AF4 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 0356F8 80034AF8 448F2000 */ mtc1 $t7, $f4 +/* 0356FC 80034AFC 44811000 */ mtc1 $at, $f2 +/* 035700 80034B00 46802020 */ cvt.s.w $f0, $f4 +/* 035704 80034B04 3C014280 */ li $at, 0x42800000 # 64.000000 +/* 035708 80034B08 44813000 */ mtc1 $at, $f6 +/* 03570C 80034B0C 4602003C */ c.lt.s $f0, $f2 +/* 035710 80034B10 00000000 */ nop +/* 035714 80034B14 45000003 */ bc1f .L80034B24 +/* 035718 80034B18 00000000 */ nop +/* 03571C 80034B1C 46001006 */ mov.s $f0, $f2 +/* 035720 80034B20 00000000 */ nop +.L80034B24: +/* 035724 80034B24 46060003 */ div.s $f0, $f0, $f6 +/* 035728 80034B28 8C980040 */ lw $t8, 0x40($a0) +/* 03572C 80034B2C 00000000 */ nop +/* 035730 80034B30 C708000C */ lwc1 $f8, 0xc($t8) +/* 035734 80034B34 00000000 */ nop +/* 035738 80034B38 46004282 */ mul.s $f10, $f8, $f0 +/* 03573C 80034B3C E48A0008 */ swc1 $f10, 8($a0) +/* 035740 80034B40 90B90008 */ lbu $t9, 8($a1) +/* 035744 80034B44 03E00008 */ jr $ra +/* 035748 80034B48 AC990078 */ sw $t9, 0x78($a0) + diff --git a/asm/non_matchings/unknown_032760/func_80034B4C.s b/asm/non_matchings/unknown_032760/func_80034B4C.s new file mode 100644 index 00000000..af45fd39 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80034B4C.s @@ -0,0 +1,9 @@ +glabel func_80034B4C +/* 03574C 80034B4C 8C8F0078 */ lw $t7, 0x78($a0) +/* 035750 80034B50 848E0018 */ lh $t6, 0x18($a0) +/* 035754 80034B54 01E50019 */ multu $t7, $a1 +/* 035758 80034B58 0000C012 */ mflo $t8 +/* 03575C 80034B5C 01D8C821 */ addu $t9, $t6, $t8 +/* 035760 80034B60 03E00008 */ jr $ra +/* 035764 80034B64 A4990018 */ sh $t9, 0x18($a0) + diff --git a/asm/non_matchings/unknown_032760/func_80034B68.s b/asm/non_matchings/unknown_032760/func_80034B68.s new file mode 100644 index 00000000..6a60eaba --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80034B68.s @@ -0,0 +1,5 @@ +glabel func_80034B68 +/* 035768 80034B68 AFA40000 */ sw $a0, ($sp) +/* 03576C 80034B6C 03E00008 */ jr $ra +/* 035770 80034B70 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_80034B74.s b/asm/non_matchings/unknown_032760/func_80034B74.s new file mode 100644 index 00000000..de293b6c --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80034B74.s @@ -0,0 +1,201 @@ +glabel func_80034B74 +/* 035774 80034B74 27BDFF68 */ addiu $sp, $sp, -0x98 +/* 035778 80034B78 AFBF004C */ sw $ra, 0x4c($sp) +/* 03577C 80034B7C AFB00048 */ sw $s0, 0x48($sp) +/* 035780 80034B80 E7BF0040 */ swc1 $f31, 0x40($sp) +/* 035784 80034B84 E7BE0044 */ swc1 $f30, 0x44($sp) +/* 035788 80034B88 E7BD0038 */ swc1 $f29, 0x38($sp) +/* 03578C 80034B8C E7BC003C */ swc1 $f28, 0x3c($sp) +/* 035790 80034B90 E7BB0030 */ swc1 $f27, 0x30($sp) +/* 035794 80034B94 E7BA0034 */ swc1 $f26, 0x34($sp) +/* 035798 80034B98 E7B90028 */ swc1 $f25, 0x28($sp) +/* 03579C 80034B9C E7B8002C */ swc1 $f24, 0x2c($sp) +/* 0357A0 80034BA0 E7B70020 */ swc1 $f23, 0x20($sp) +/* 0357A4 80034BA4 E7B60024 */ swc1 $f22, 0x24($sp) +/* 0357A8 80034BA8 E7B50018 */ swc1 $f21, 0x18($sp) +/* 0357AC 80034BAC E7B4001C */ swc1 $f20, 0x1c($sp) +/* 0357B0 80034BB0 AFA5009C */ sw $a1, 0x9c($sp) +/* 0357B4 80034BB4 8C90003C */ lw $s0, 0x3c($a0) +/* 0357B8 80034BB8 00803025 */ move $a2, $a0 +/* 0357BC 80034BBC AFA60098 */ sw $a2, 0x98($sp) +/* 0357C0 80034BC0 0C006E9D */ jal func_8001BA74 +/* 0357C4 80034BC4 27A4008C */ addiu $a0, $sp, 0x8c +/* 0357C8 80034BC8 AFA20094 */ sw $v0, 0x94($sp) +/* 0357CC 80034BCC 9204000B */ lbu $a0, 0xb($s0) +/* 0357D0 80034BD0 00000000 */ nop +/* 0357D4 80034BD4 00047200 */ sll $t6, $a0, 8 +/* 0357D8 80034BD8 000E2023 */ negu $a0, $t6 +/* 0357DC 80034BDC 00047C00 */ sll $t7, $a0, 0x10 +/* 0357E0 80034BE0 0C01C1FE */ jal func_800707F8 +/* 0357E4 80034BE4 000F2403 */ sra $a0, $t7, 0x10 +/* 0357E8 80034BE8 9204000B */ lbu $a0, 0xb($s0) +/* 0357EC 80034BEC 46000506 */ mov.s $f20, $f0 +/* 0357F0 80034BF0 0004CA00 */ sll $t9, $a0, 8 +/* 0357F4 80034BF4 00192023 */ negu $a0, $t9 +/* 0357F8 80034BF8 00044400 */ sll $t0, $a0, 0x10 +/* 0357FC 80034BFC 0C01C1F1 */ jal func_800707C4 +/* 035800 80034C00 00082403 */ sra $a0, $t0, 0x10 +/* 035804 80034C04 920A0008 */ lbu $t2, 8($s0) +/* 035808 80034C08 24020003 */ li $v0, 3 +/* 03580C 80034C0C 01420019 */ multu $t2, $v0 +/* 035810 80034C10 920C0009 */ lbu $t4, 9($s0) +/* 035814 80034C14 920E000A */ lbu $t6, 0xa($s0) +/* 035818 80034C18 8FB8008C */ lw $t8, 0x8c($sp) +/* 03581C 80034C1C 8FA60098 */ lw $a2, 0x98($sp) +/* 035820 80034C20 8FA50094 */ lw $a1, 0x94($sp) +/* 035824 80034C24 00002025 */ move $a0, $zero +/* 035828 80034C28 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 03582C 80034C2C 24070001 */ li $a3, 1 +/* 035830 80034C30 00005812 */ mflo $t3 +/* 035834 80034C34 448B2000 */ mtc1 $t3, $f4 +/* 035838 80034C38 00000000 */ nop +/* 03583C 80034C3C 01820019 */ multu $t4, $v0 +/* 035840 80034C40 468025A0 */ cvt.s.w $f22, $f4 +/* 035844 80034C44 00006812 */ mflo $t5 +/* 035848 80034C48 448D3000 */ mtc1 $t5, $f6 +/* 03584C 80034C4C 00000000 */ nop +/* 035850 80034C50 01C20019 */ multu $t6, $v0 +/* 035854 80034C54 468034A0 */ cvt.s.w $f18, $f6 +/* 035858 80034C58 00007812 */ mflo $t7 +/* 03585C 80034C5C 448F4000 */ mtc1 $t7, $f8 +/* 035860 80034C60 1B000073 */ blez $t8, .L80034E30 +/* 035864 80034C64 46804620 */ cvt.s.w $f24, $f8 +/* 035868 80034C68 4481F000 */ mtc1 $at, $f30 +/* 03586C 80034C6C 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 035870 80034C70 4481D800 */ mtc1 $at, $f27 +/* 035874 80034C74 4480D000 */ mtc1 $zero, $f26 +/* 035878 80034C78 46009707 */ neg.s $f28, $f18 +.L80034C7C: +/* 03587C 80034C7C 8CA30000 */ lw $v1, ($a1) +/* 035880 80034C80 C4C4000C */ lwc1 $f4, 0xc($a2) +/* 035884 80034C84 C4C80010 */ lwc1 $f8, 0x10($a2) +/* 035888 80034C88 C46A000C */ lwc1 $f10, 0xc($v1) +/* 03588C 80034C8C C4660010 */ lwc1 $f6, 0x10($v1) +/* 035890 80034C90 46045381 */ sub.s $f14, $f10, $f4 +/* 035894 80034C94 C4C40014 */ lwc1 $f4, 0x14($a2) +/* 035898 80034C98 46083081 */ sub.s $f2, $f6, $f8 +/* 03589C 80034C9C C46A0014 */ lwc1 $f10, 0x14($v1) +/* 0358A0 80034CA0 4602E03C */ c.lt.s $f28, $f2 +/* 0358A4 80034CA4 46045301 */ sub.s $f12, $f10, $f4 +/* 0358A8 80034CA8 4500005E */ bc1f .L80034E24 +/* 0358AC 80034CAC 8FAD008C */ lw $t5, 0x8c($sp) +/* 0358B0 80034CB0 4612103C */ c.lt.s $f2, $f18 +/* 0358B4 80034CB4 00000000 */ nop +/* 0358B8 80034CB8 4500005A */ bc1f .L80034E24 +/* 0358BC 80034CBC 8FAD008C */ lw $t5, 0x8c($sp) +/* 0358C0 80034CC0 46147182 */ mul.s $f6, $f14, $f20 +/* 0358C4 80034CC4 4600B287 */ neg.s $f10, $f22 +/* 0358C8 80034CC8 46006202 */ mul.s $f8, $f12, $f0 +/* 0358CC 80034CCC 46083400 */ add.s $f16, $f6, $f8 +/* 0358D0 80034CD0 4610503C */ c.lt.s $f10, $f16 +/* 0358D4 80034CD4 00000000 */ nop +/* 0358D8 80034CD8 45000052 */ bc1f .L80034E24 +/* 0358DC 80034CDC 8FAD008C */ lw $t5, 0x8c($sp) +/* 0358E0 80034CE0 4616803C */ c.lt.s $f16, $f22 +/* 0358E4 80034CE4 00000000 */ nop +/* 0358E8 80034CE8 4500004E */ bc1f .L80034E24 +/* 0358EC 80034CEC 8FAD008C */ lw $t5, 0x8c($sp) +/* 0358F0 80034CF0 46007107 */ neg.s $f4, $f14 +/* 0358F4 80034CF4 46002182 */ mul.s $f6, $f4, $f0 +/* 0358F8 80034CF8 4600C287 */ neg.s $f10, $f24 +/* 0358FC 80034CFC 46146202 */ mul.s $f8, $f12, $f20 +/* 035900 80034D00 46083300 */ add.s $f12, $f6, $f8 +/* 035904 80034D04 460C503C */ c.lt.s $f10, $f12 +/* 035908 80034D08 00000000 */ nop +/* 03590C 80034D0C 45000045 */ bc1f .L80034E24 +/* 035910 80034D10 8FAD008C */ lw $t5, 0x8c($sp) +/* 035914 80034D14 4618603C */ c.lt.s $f12, $f24 +/* 035918 80034D18 00000000 */ nop +/* 03591C 80034D1C 45000040 */ bc1f .L80034E20 +/* 035920 80034D20 00000000 */ nop +/* 035924 80034D24 461E9303 */ div.s $f12, $f18, $f30 +/* 035928 80034D28 8C620064 */ lw $v0, 0x64($v1) +/* 03592C 80034D2C 9219000C */ lbu $t9, 0xc($s0) +/* 035930 80034D30 00000000 */ nop +/* 035934 80034D34 A05901FE */ sb $t9, 0x1fe($v0) +/* 035938 80034D38 9208000D */ lbu $t0, 0xd($s0) +/* 03593C 80034D3C 332900FF */ andi $t1, $t9, 0xff +/* 035940 80034D40 A04801FF */ sb $t0, 0x1ff($v0) +/* 035944 80034D44 4602603C */ c.lt.s $f12, $f2 +/* 035948 80034D48 00000000 */ nop +/* 03594C 80034D4C 45000035 */ bc1f .L80034E24 +/* 035950 80034D50 8FAD008C */ lw $t5, 0x8c($sp) +/* 035954 80034D54 14E90033 */ bne $a3, $t1, .L80034E24 +/* 035958 80034D58 8FAD008C */ lw $t5, 0x8c($sp) +/* 03595C 80034D5C 460C1101 */ sub.s $f4, $f2, $f12 +/* 035960 80034D60 310A00FF */ andi $t2, $t0, 0xff +/* 035964 80034D64 460C2183 */ div.s $f6, $f4, $f12 +/* 035968 80034D68 448A2000 */ mtc1 $t2, $f4 +/* 03596C 80034D6C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 035970 80034D70 46003221 */ cvt.d.s $f8, $f6 +/* 035974 80034D74 4628D281 */ sub.d $f10, $f26, $f8 +/* 035978 80034D78 462050A0 */ cvt.s.d $f2, $f10 +/* 03597C 80034D7C 05410004 */ bgez $t2, .L80034D90 +/* 035980 80034D80 468021A0 */ cvt.s.w $f6, $f4 +/* 035984 80034D84 44814000 */ mtc1 $at, $f8 +/* 035988 80034D88 00000000 */ nop +/* 03598C 80034D8C 46083180 */ add.s $f6, $f6, $f8 +.L80034D90: +/* 035990 80034D90 46023282 */ mul.s $f10, $f6, $f2 +/* 035994 80034D94 240C0001 */ li $t4, 1 +/* 035998 80034D98 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 03599C 80034D9C 444BF800 */ cfc1 $t3, $31 +/* 0359A0 80034DA0 44CCF800 */ ctc1 $t4, $31 +/* 0359A4 80034DA4 00000000 */ nop +/* 0359A8 80034DA8 46005124 */ cvt.w.s $f4, $f10 +/* 0359AC 80034DAC 444CF800 */ cfc1 $t4, $31 +/* 0359B0 80034DB0 00000000 */ nop +/* 0359B4 80034DB4 318C0078 */ andi $t4, $t4, 0x78 +/* 0359B8 80034DB8 11800012 */ beqz $t4, .L80034E04 +/* 0359BC 80034DBC 00000000 */ nop +/* 0359C0 80034DC0 44812000 */ mtc1 $at, $f4 +/* 0359C4 80034DC4 240C0001 */ li $t4, 1 +/* 0359C8 80034DC8 46045101 */ sub.s $f4, $f10, $f4 +/* 0359CC 80034DCC 3C018000 */ lui $at, 0x8000 +/* 0359D0 80034DD0 44CCF800 */ ctc1 $t4, $31 +/* 0359D4 80034DD4 00000000 */ nop +/* 0359D8 80034DD8 46002124 */ cvt.w.s $f4, $f4 +/* 0359DC 80034DDC 444CF800 */ cfc1 $t4, $31 +/* 0359E0 80034DE0 00000000 */ nop +/* 0359E4 80034DE4 318C0078 */ andi $t4, $t4, 0x78 +/* 0359E8 80034DE8 15800004 */ bnez $t4, .L80034DFC +/* 0359EC 80034DEC 00000000 */ nop +/* 0359F0 80034DF0 440C2000 */ mfc1 $t4, $f4 +/* 0359F4 80034DF4 10000007 */ b .L80034E14 +/* 0359F8 80034DF8 01816025 */ or $t4, $t4, $at +.L80034DFC: +/* 0359FC 80034DFC 10000005 */ b .L80034E14 +/* 035A00 80034E00 240CFFFF */ li $t4, -1 +.L80034E04: +/* 035A04 80034E04 440C2000 */ mfc1 $t4, $f4 +/* 035A08 80034E08 00000000 */ nop +/* 035A0C 80034E0C 0580FFFB */ bltz $t4, .L80034DFC +/* 035A10 80034E10 00000000 */ nop +.L80034E14: +/* 035A14 80034E14 44CBF800 */ ctc1 $t3, $31 +/* 035A18 80034E18 A04C01FF */ sb $t4, 0x1ff($v0) +/* 035A1C 80034E1C 00000000 */ nop +.L80034E20: +/* 035A20 80034E20 8FAD008C */ lw $t5, 0x8c($sp) +.L80034E24: +/* 035A24 80034E24 24840001 */ addiu $a0, $a0, 1 +/* 035A28 80034E28 148DFF94 */ bne $a0, $t5, .L80034C7C +/* 035A2C 80034E2C 24A50004 */ addiu $a1, $a1, 4 +.L80034E30: +/* 035A30 80034E30 8FBF004C */ lw $ra, 0x4c($sp) +/* 035A34 80034E34 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 035A38 80034E38 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 035A3C 80034E3C C7B70020 */ lwc1 $f23, 0x20($sp) +/* 035A40 80034E40 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 035A44 80034E44 C7B90028 */ lwc1 $f25, 0x28($sp) +/* 035A48 80034E48 C7B8002C */ lwc1 $f24, 0x2c($sp) +/* 035A4C 80034E4C C7BB0030 */ lwc1 $f27, 0x30($sp) +/* 035A50 80034E50 C7BA0034 */ lwc1 $f26, 0x34($sp) +/* 035A54 80034E54 C7BD0038 */ lwc1 $f29, 0x38($sp) +/* 035A58 80034E58 C7BC003C */ lwc1 $f28, 0x3c($sp) +/* 035A5C 80034E5C C7BF0040 */ lwc1 $f31, 0x40($sp) +/* 035A60 80034E60 C7BE0044 */ lwc1 $f30, 0x44($sp) +/* 035A64 80034E64 8FB00048 */ lw $s0, 0x48($sp) +/* 035A68 80034E68 03E00008 */ jr $ra +/* 035A6C 80034E6C 27BD0098 */ addiu $sp, $sp, 0x98 + diff --git a/asm/non_matchings/unknown_032760/func_80034E70.s b/asm/non_matchings/unknown_032760/func_80034E70.s new file mode 100644 index 00000000..e5486199 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80034E70.s @@ -0,0 +1,13 @@ +glabel func_80034E70 +/* 035A70 80034E70 8C8F004C */ lw $t7, 0x4c($a0) +/* 035A74 80034E74 240E0001 */ li $t6, 1 +/* 035A78 80034E78 A5EE0014 */ sh $t6, 0x14($t7) +/* 035A7C 80034E7C 8C99004C */ lw $t9, 0x4c($a0) +/* 035A80 80034E80 24180002 */ li $t8, 2 +/* 035A84 80034E84 A3380011 */ sb $t8, 0x11($t9) +/* 035A88 80034E88 90A90008 */ lbu $t1, 8($a1) +/* 035A8C 80034E8C 00000000 */ nop +/* 035A90 80034E90 00095280 */ sll $t2, $t1, 0xa +/* 035A94 80034E94 03E00008 */ jr $ra +/* 035A98 80034E98 A48A0000 */ sh $t2, ($a0) + diff --git a/asm/non_matchings/unknown_032760/func_80034E9C.s b/asm/non_matchings/unknown_032760/func_80034E9C.s new file mode 100644 index 00000000..510f63c6 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80034E9C.s @@ -0,0 +1,245 @@ +glabel func_80034E9C +/* 035A9C 80034E9C 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 035AA0 80034EA0 AFBF001C */ sw $ra, 0x1c($sp) +/* 035AA4 80034EA4 AFB00018 */ sw $s0, 0x18($sp) +/* 035AA8 80034EA8 00808025 */ move $s0, $a0 +/* 035AAC 80034EAC 0C01BAA4 */ jal func_8006EA90 +/* 035AB0 80034EB0 AFA5005C */ sw $a1, 0x5c($sp) +/* 035AB4 80034EB4 0C01AF6C */ jal func_8006BDB0 +/* 035AB8 80034EB8 AFA20054 */ sw $v0, 0x54($sp) +/* 035ABC 80034EBC 8E0E0064 */ lw $t6, 0x64($s0) +/* 035AC0 80034EC0 8FA30054 */ lw $v1, 0x54($sp) +/* 035AC4 80034EC4 AFAE0050 */ sw $t6, 0x50($sp) +/* 035AC8 80034EC8 8E0F007C */ lw $t7, 0x7c($s0) +/* 035ACC 80034ECC 00000000 */ nop +/* 035AD0 80034ED0 15E00029 */ bnez $t7, .L80034F78 +/* 035AD4 80034ED4 00000000 */ nop +/* 035AD8 80034ED8 8044004C */ lb $a0, 0x4c($v0) +/* 035ADC 80034EDC 24010007 */ li $at, 7 +/* 035AE0 80034EE0 10810025 */ beq $a0, $at, .L80034F78 +/* 035AE4 80034EE4 24010006 */ li $at, 6 +/* 035AE8 80034EE8 10810023 */ beq $a0, $at, .L80034F78 +/* 035AEC 80034EEC 24180001 */ li $t8, 1 +/* 035AF0 80034EF0 AE18007C */ sw $t8, 0x7c($s0) +/* 035AF4 80034EF4 90680048 */ lbu $t0, 0x48($v1) +/* 035AF8 80034EF8 9479000E */ lhu $t9, 0xe($v1) +/* 035AFC 80034EFC 2509FFFF */ addiu $t1, $t0, -1 +/* 035B00 80034F00 00095040 */ sll $t2, $t1, 1 +/* 035B04 80034F04 01595807 */ srav $t3, $t9, $t2 +/* 035B08 80034F08 316C0003 */ andi $t4, $t3, 3 +/* 035B0C 80034F0C 1180001A */ beqz $t4, .L80034F78 +/* 035B10 80034F10 240D0080 */ li $t5, 128 +/* 035B14 80034F14 A3AD0044 */ sb $t5, 0x44($sp) +/* 035B18 80034F18 8E0E003C */ lw $t6, 0x3c($s0) +/* 035B1C 80034F1C 240A0008 */ li $t2, 8 +/* 035B20 80034F20 85CF0002 */ lh $t7, 2($t6) +/* 035B24 80034F24 27A40044 */ addiu $a0, $sp, 0x44 +/* 035B28 80034F28 A7AF0046 */ sh $t7, 0x46($sp) +/* 035B2C 80034F2C 8E18003C */ lw $t8, 0x3c($s0) +/* 035B30 80034F30 24050001 */ li $a1, 1 +/* 035B34 80034F34 87080004 */ lh $t0, 4($t8) +/* 035B38 80034F38 00000000 */ nop +/* 035B3C 80034F3C A7A80048 */ sh $t0, 0x48($sp) +/* 035B40 80034F40 8E09003C */ lw $t1, 0x3c($s0) +/* 035B44 80034F44 00000000 */ nop +/* 035B48 80034F48 85390006 */ lh $t9, 6($t1) +/* 035B4C 80034F4C A3AA0045 */ sb $t2, 0x45($sp) +/* 035B50 80034F50 AFA30054 */ sw $v1, 0x54($sp) +/* 035B54 80034F54 0C003A95 */ jal func_8000EA54 +/* 035B58 80034F58 A7B9004A */ sh $t9, 0x4a($sp) +/* 035B5C 80034F5C 8FA30054 */ lw $v1, 0x54($sp) +/* 035B60 80034F60 10400005 */ beqz $v0, .L80034F78 +/* 035B64 80034F64 00000000 */ nop +/* 035B68 80034F68 AC40003C */ sw $zero, 0x3c($v0) +/* 035B6C 80034F6C 860B0000 */ lh $t3, ($s0) +/* 035B70 80034F70 00000000 */ nop +/* 035B74 80034F74 A44B0000 */ sh $t3, ($v0) +.L80034F78: +/* 035B78 80034F78 3C01800E */ lui $at, %hi(D_800E6004) # $at, 0x800e +/* 035B7C 80034F7C C4246004 */ lwc1 $f4, %lo(D_800E6004)($at) +/* 035B80 80034F80 8E0C0054 */ lw $t4, 0x54($s0) +/* 035B84 80034F84 44803000 */ mtc1 $zero, $f6 +/* 035B88 80034F88 E584002C */ swc1 $f4, 0x2c($t4) +/* 035B8C 80034F8C 8E0D0054 */ lw $t5, 0x54($s0) +/* 035B90 80034F90 00002025 */ move $a0, $zero +/* 035B94 80034F94 E5A60028 */ swc1 $f6, 0x28($t5) +/* 035B98 80034F98 0C006EB2 */ jal func_8001BAC8 +/* 035B9C 80034F9C AFA30054 */ sw $v1, 0x54($sp) +/* 035BA0 80034FA0 8FA30054 */ lw $v1, 0x54($sp) +/* 035BA4 80034FA4 1040009E */ beqz $v0, .L80035220 +/* 035BA8 80034FA8 8FBF001C */ lw $ra, 0x1c($sp) +/* 035BAC 80034FAC C608000C */ lwc1 $f8, 0xc($s0) +/* 035BB0 80034FB0 C44A000C */ lwc1 $f10, 0xc($v0) +/* 035BB4 80034FB4 C6100014 */ lwc1 $f16, 0x14($s0) +/* 035BB8 80034FB8 460A4001 */ sub.s $f0, $f8, $f10 +/* 035BBC 80034FBC C4520014 */ lwc1 $f18, 0x14($v0) +/* 035BC0 80034FC0 46000102 */ mul.s $f4, $f0, $f0 +/* 035BC4 80034FC4 46128081 */ sub.s $f2, $f16, $f18 +/* 035BC8 80034FC8 AFA30054 */ sw $v1, 0x54($sp) +/* 035BCC 80034FCC 46021182 */ mul.s $f6, $f2, $f2 +/* 035BD0 80034FD0 0C0326B4 */ jal sqrtf +/* 035BD4 80034FD4 46062300 */ add.s $f12, $f4, $f6 +/* 035BD8 80034FD8 8FA30054 */ lw $v1, 0x54($sp) +/* 035BDC 80034FDC 240C0001 */ li $t4, 1 +/* 035BE0 80034FE0 90640048 */ lbu $a0, 0x48($v1) +/* 035BE4 80034FE4 8C6F0000 */ lw $t7, ($v1) +/* 035BE8 80034FE8 0004C040 */ sll $t8, $a0, 1 +/* 035BEC 80034FEC 01F84021 */ addu $t0, $t7, $t8 +/* 035BF0 80034FF0 85090000 */ lh $t1, ($t0) +/* 035BF4 80034FF4 9462000C */ lhu $v0, 0xc($v1) +/* 035BF8 80034FF8 29390008 */ slti $t9, $t1, 8 +/* 035BFC 80034FFC 3B390001 */ xori $t9, $t9, 1 +/* 035C00 80035000 AFB90028 */ sw $t9, 0x28($sp) +/* 035C04 80035004 13200006 */ beqz $t9, .L80035020 +/* 035C08 80035008 344E0800 */ ori $t6, $v0, 0x800 +/* 035C0C 8003500C 248B0006 */ addiu $t3, $a0, 6 +/* 035C10 80035010 016C6804 */ sllv $t5, $t4, $t3 +/* 035C14 80035014 01AE7024 */ and $t6, $t5, $t6 +/* 035C18 80035018 000E782B */ sltu $t7, $zero, $t6 +/* 035C1C 8003501C AFAF0028 */ sw $t7, 0x28($sp) +.L80035020: +/* 035C20 80035020 8E180078 */ lw $t8, 0x78($s0) +/* 035C24 80035024 00000000 */ nop +/* 035C28 80035028 17000027 */ bnez $t8, .L800350C8 +/* 035C2C 8003502C 8FA30050 */ lw $v1, 0x50($sp) +/* 035C30 80035030 0C030D00 */ jal func_800C3400 +/* 035C34 80035034 00000000 */ nop +/* 035C38 80035038 14400023 */ bnez $v0, .L800350C8 +/* 035C3C 8003503C 8FA30050 */ lw $v1, 0x50($sp) +/* 035C40 80035040 8E08005C */ lw $t0, 0x5c($s0) +/* 035C44 80035044 8FA30050 */ lw $v1, 0x50($sp) +/* 035C48 80035048 8D090100 */ lw $t1, 0x100($t0) +/* 035C4C 8003504C 00000000 */ nop +/* 035C50 80035050 1120001C */ beqz $t1, .L800350C4 +/* 035C54 80035054 00000000 */ nop +/* 035C58 80035058 84790004 */ lh $t9, 4($v1) +/* 035C5C 8003505C 8FAA0028 */ lw $t2, 0x28($sp) +/* 035C60 80035060 17200019 */ bnez $t9, .L800350C8 +/* 035C64 80035064 8FA30050 */ lw $v1, 0x50($sp) +/* 035C68 80035068 11400009 */ beqz $t2, .L80035090 +/* 035C6C 8003506C 240C0001 */ li $t4, 1 +/* 035C70 80035070 AE0C0078 */ sw $t4, 0x78($s0) +/* 035C74 80035074 2404012F */ li $a0, 303 +/* 035C78 80035078 0C000741 */ jal func_80001D04 +/* 035C7C 8003507C 00002825 */ move $a1, $zero +/* 035C80 80035080 0C028E1C */ jal func_800A3870 +/* 035C84 80035084 00000000 */ nop +/* 035C88 80035088 1000000F */ b .L800350C8 +/* 035C8C 8003508C 8FA30050 */ lw $v1, 0x50($sp) +.L80035090: +/* 035C90 80035090 0C030C7B */ jal func_800C31EC +/* 035C94 80035094 24040004 */ li $a0, 4 +/* 035C98 80035098 8FAD0050 */ lw $t5, 0x50($sp) +/* 035C9C 8003509C 240B00B4 */ li $t3, 180 +/* 035CA0 800350A0 240E008C */ li $t6, 140 +/* 035CA4 800350A4 24040010 */ li $a0, 16 +/* 035CA8 800350A8 A5AB0004 */ sh $t3, 4($t5) +/* 035CAC 800350AC 0C00030E */ jal func_80000C38 +/* 035CB0 800350B0 ADAE0000 */ sw $t6, ($t5) +/* 035CB4 800350B4 0C000326 */ jal func_80000C98 +/* 035CB8 800350B8 2404FFF8 */ li $a0, -8 +/* 035CBC 800350BC 0C0006F0 */ jal func_80001BC0 +/* 035CC0 800350C0 24040011 */ li $a0, 17 +.L800350C4: +/* 035CC4 800350C4 8FA30050 */ lw $v1, 0x50($sp) +.L800350C8: +/* 035CC8 800350C8 00000000 */ nop +/* 035CCC 800350CC 8C6F0000 */ lw $t7, ($v1) +/* 035CD0 800350D0 00000000 */ nop +/* 035CD4 800350D4 11E00013 */ beqz $t7, .L80035124 +/* 035CD8 800350D8 00000000 */ nop +/* 035CDC 800350DC 0C000702 */ jal func_80001C08 +/* 035CE0 800350E0 00000000 */ nop +/* 035CE4 800350E4 1440000F */ bnez $v0, .L80035124 +/* 035CE8 800350E8 00000000 */ nop +/* 035CEC 800350EC 8FB80050 */ lw $t8, 0x50($sp) +/* 035CF0 800350F0 8FA8005C */ lw $t0, 0x5c($sp) +/* 035CF4 800350F4 8F020000 */ lw $v0, ($t8) +/* 035CF8 800350F8 8FB90050 */ lw $t9, 0x50($sp) +/* 035CFC 800350FC 0102082A */ slt $at, $t0, $v0 +/* 035D00 80035100 10200004 */ beqz $at, .L80035114 +/* 035D04 80035104 24040008 */ li $a0, 8 +/* 035D08 80035108 00484823 */ subu $t1, $v0, $t0 +/* 035D0C 8003510C 10000005 */ b .L80035124 +/* 035D10 80035110 AF090000 */ sw $t1, ($t8) +.L80035114: +/* 035D14 80035114 0C000326 */ jal func_80000C98 +/* 035D18 80035118 AF200000 */ sw $zero, ($t9) +/* 035D1C 8003511C 0C00030E */ jal func_80000C38 +/* 035D20 80035120 24040006 */ li $a0, 6 +.L80035124: +/* 035D24 80035124 8E0A005C */ lw $t2, 0x5c($s0) +/* 035D28 80035128 8FA30050 */ lw $v1, 0x50($sp) +/* 035D2C 8003512C 8D4C0100 */ lw $t4, 0x100($t2) +/* 035D30 80035130 00000000 */ nop +/* 035D34 80035134 15800008 */ bnez $t4, .L80035158 +/* 035D38 80035138 240B00B4 */ li $t3, 180 +/* 035D3C 8003513C 0C030D00 */ jal func_800C3400 +/* 035D40 80035140 00000000 */ nop +/* 035D44 80035144 10400006 */ beqz $v0, .L80035160 +/* 035D48 80035148 8FA30050 */ lw $v1, 0x50($sp) +/* 035D4C 8003514C 8FA30050 */ lw $v1, 0x50($sp) +/* 035D50 80035150 00000000 */ nop +/* 035D54 80035154 240B00B4 */ li $t3, 180 +.L80035158: +/* 035D58 80035158 A46B0004 */ sh $t3, 4($v1) +/* 035D5C 8003515C 8FA30050 */ lw $v1, 0x50($sp) +.L80035160: +/* 035D60 80035160 8FAE005C */ lw $t6, 0x5c($sp) +/* 035D64 80035164 84620004 */ lh $v0, 4($v1) +/* 035D68 80035168 00000000 */ nop +/* 035D6C 8003516C 18400003 */ blez $v0, .L8003517C +/* 035D70 80035170 004E6823 */ subu $t5, $v0, $t6 +/* 035D74 80035174 10000002 */ b .L80035180 +/* 035D78 80035178 A46D0004 */ sh $t5, 4($v1) +.L8003517C: +/* 035D7C 8003517C A4600004 */ sh $zero, 4($v1) +.L80035180: +/* 035D80 80035180 8E0F0078 */ lw $t7, 0x78($s0) +/* 035D84 80035184 24010001 */ li $at, 1 +/* 035D88 80035188 15E10019 */ bne $t7, $at, .L800351F0 +/* 035D8C 8003518C 00000000 */ nop +/* 035D90 80035190 0C02AC6B */ jal func_800AB1AC +/* 035D94 80035194 24040003 */ li $a0, 3 +/* 035D98 80035198 0C02AC75 */ jal func_800AB1D4 +/* 035D9C 8003519C 00002025 */ move $a0, $zero +/* 035DA0 800351A0 0C0273FB */ jal func_8009CFEC +/* 035DA4 800351A4 24040004 */ li $a0, 4 +/* 035DA8 800351A8 1040000F */ beqz $v0, .L800351E8 +/* 035DAC 800351AC 24040004 */ li $a0, 4 +/* 035DB0 800351B0 AE000078 */ sw $zero, 0x78($s0) +/* 035DB4 800351B4 0C0273DA */ jal func_8009CF68 +/* 035DB8 800351B8 AFA20034 */ sw $v0, 0x34($sp) +/* 035DBC 800351BC 8FA30034 */ lw $v1, 0x34($sp) +/* 035DC0 800351C0 24010001 */ li $at, 1 +/* 035DC4 800351C4 14610006 */ bne $v1, $at, .L800351E0 +/* 035DC8 800351C8 00000000 */ nop +/* 035DCC 800351CC 0C01BC95 */ jal func_8006F254 +/* 035DD0 800351D0 00000000 */ nop +/* 035DD4 800351D4 24080002 */ li $t0, 2 +/* 035DD8 800351D8 10000003 */ b .L800351E8 +/* 035DDC 800351DC AE080078 */ sw $t0, 0x78($s0) +.L800351E0: +/* 035DE0 800351E0 0C02AC75 */ jal func_800AB1D4 +/* 035DE4 800351E4 24040001 */ li $a0, 1 +.L800351E8: +/* 035DE8 800351E8 0C0168EC */ jal func_8005A3B0 +/* 035DEC 800351EC 00000000 */ nop +.L800351F0: +/* 035DF0 800351F0 8E09005C */ lw $t1, 0x5c($s0) +/* 035DF4 800351F4 3C01800E */ lui $at, %hi(D_800E6008) # $at, 0x800e +/* 035DF8 800351F8 AD200100 */ sw $zero, 0x100($t1) +/* 035DFC 800351FC 8FB80028 */ lw $t8, 0x28($sp) +/* 035E00 80035200 00000000 */ nop +/* 035E04 80035204 13000006 */ beqz $t8, .L80035220 +/* 035E08 80035208 8FBF001C */ lw $ra, 0x1c($sp) +/* 035E0C 8003520C C4286008 */ lwc1 $f8, %lo(D_800E6008)($at) +/* 035E10 80035210 8E190054 */ lw $t9, 0x54($s0) +/* 035E14 80035214 00000000 */ nop +/* 035E18 80035218 E7280028 */ swc1 $f8, 0x28($t9) +/* 035E1C 8003521C 8FBF001C */ lw $ra, 0x1c($sp) +.L80035220: +/* 035E20 80035220 8FB00018 */ lw $s0, 0x18($sp) +/* 035E24 80035224 03E00008 */ jr $ra +/* 035E28 80035228 27BD0058 */ addiu $sp, $sp, 0x58 + diff --git a/asm/non_matchings/unknown_032760/func_8003522C.s b/asm/non_matchings/unknown_032760/func_8003522C.s new file mode 100644 index 00000000..65dca978 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003522C.s @@ -0,0 +1,15 @@ +glabel func_8003522C +/* 035E2C 8003522C AFA50004 */ sw $a1, 4($sp) +/* 035E30 80035230 8C8F004C */ lw $t7, 0x4c($a0) +/* 035E34 80035234 240E0002 */ li $t6, 2 +/* 035E38 80035238 A5EE0014 */ sh $t6, 0x14($t7) +/* 035E3C 8003523C 8C98004C */ lw $t8, 0x4c($a0) +/* 035E40 80035240 24190014 */ li $t9, 20 +/* 035E44 80035244 A3000011 */ sb $zero, 0x11($t8) +/* 035E48 80035248 8C88004C */ lw $t0, 0x4c($a0) +/* 035E4C 8003524C 00000000 */ nop +/* 035E50 80035250 A1190010 */ sb $t9, 0x10($t0) +/* 035E54 80035254 8C89004C */ lw $t1, 0x4c($a0) +/* 035E58 80035258 03E00008 */ jr $ra +/* 035E5C 8003525C A1200012 */ sb $zero, 0x12($t1) + diff --git a/asm/non_matchings/unknown_032760/func_80035260.s b/asm/non_matchings/unknown_032760/func_80035260.s new file mode 100644 index 00000000..c852bce2 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80035260.s @@ -0,0 +1,269 @@ +glabel func_80035260 +/* 035E60 80035260 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 035E64 80035264 44852000 */ mtc1 $a1, $f4 +/* 035E68 80035268 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 +/* 035E6C 8003526C 468020A0 */ cvt.s.w $f2, $f4 +/* 035E70 80035270 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) +/* 035E74 80035274 AFBF0024 */ sw $ra, 0x24($sp) +/* 035E78 80035278 AFB10020 */ sw $s1, 0x20($sp) +/* 035E7C 8003527C AFB0001C */ sw $s0, 0x1c($sp) +/* 035E80 80035280 8C910064 */ lw $s1, 0x64($a0) +/* 035E84 80035284 00808025 */ move $s0, $a0 +/* 035E88 80035288 15C00007 */ bnez $t6, .L800352A8 +/* 035E8C 8003528C 46001006 */ mov.s $f0, $f2 +/* 035E90 80035290 3C01800E */ lui $at, %hi(D_800E6014) # $at, 0x800e +/* 035E94 80035294 C4296010 */ lwc1 $f9, %lo(D_800E6010)($at) +/* 035E98 80035298 C4286014 */ lwc1 $f8, %lo(D_800E6014)($at) +/* 035E9C 8003529C 460011A1 */ cvt.d.s $f6, $f2 +/* 035EA0 800352A0 46283282 */ mul.d $f10, $f6, $f8 +/* 035EA4 800352A4 46205020 */ cvt.s.d $f0, $f10 +.L800352A8: +/* 035EA8 800352A8 8222000B */ lb $v0, 0xb($s1) +/* 035EAC 800352AC 24010002 */ li $at, 2 +/* 035EB0 800352B0 1040000A */ beqz $v0, .L800352DC +/* 035EB4 800352B4 02002025 */ move $a0, $s0 +/* 035EB8 800352B8 1041000C */ beq $v0, $at, .L800352EC +/* 035EBC 800352BC 24040001 */ li $a0, 1 +/* 035EC0 800352C0 24010003 */ li $at, 3 +/* 035EC4 800352C4 1041009D */ beq $v0, $at, .L8003553C +/* 035EC8 800352C8 24010004 */ li $at, 4 +/* 035ECC 800352CC 104100C9 */ beq $v0, $at, .L800355F4 +/* 035ED0 800352D0 00000000 */ nop +/* 035ED4 800352D4 100000D6 */ b .L80035630 +/* 035ED8 800352D8 8FBF0024 */ lw $ra, 0x24($sp) +.L800352DC: +/* 035EDC 800352DC 0C00D810 */ jal func_80036040 +/* 035EE0 800352E0 02202825 */ move $a1, $s1 +/* 035EE4 800352E4 100000D2 */ b .L80035630 +/* 035EE8 800352E8 8FBF0024 */ lw $ra, 0x24($sp) +.L800352EC: +/* 035EEC 800352EC C612001C */ lwc1 $f18, 0x1c($s0) +/* 035EF0 800352F0 860F0006 */ lh $t7, 6($s0) +/* 035EF4 800352F4 46009102 */ mul.s $f4, $f18, $f0 +/* 035EF8 800352F8 C610000C */ lwc1 $f16, 0xc($s0) +/* 035EFC 800352FC 31F8BFFF */ andi $t8, $t7, 0xbfff +/* 035F00 80035300 A6180006 */ sh $t8, 6($s0) +/* 035F04 80035304 46048180 */ add.s $f6, $f16, $f4 +/* 035F08 80035308 3C014110 */ li $at, 0x41100000 # 9.000000 +/* 035F0C 8003530C E7A60040 */ swc1 $f6, 0x40($sp) +/* 035F10 80035310 C60A0020 */ lwc1 $f10, 0x20($s0) +/* 035F14 80035314 C6080010 */ lwc1 $f8, 0x10($s0) +/* 035F18 80035318 46005482 */ mul.s $f18, $f10, $f0 +/* 035F1C 8003531C 2605000C */ addiu $a1, $s0, 0xc +/* 035F20 80035320 27A60040 */ addiu $a2, $sp, 0x40 +/* 035F24 80035324 2407FFFF */ li $a3, -1 +/* 035F28 80035328 46124400 */ add.s $f16, $f8, $f18 +/* 035F2C 8003532C 44819000 */ mtc1 $at, $f18 +/* 035F30 80035330 E7B00044 */ swc1 $f16, 0x44($sp) +/* 035F34 80035334 C6060024 */ lwc1 $f6, 0x24($s0) +/* 035F38 80035338 C6040014 */ lwc1 $f4, 0x14($s0) +/* 035F3C 8003533C 46003282 */ mul.s $f10, $f6, $f0 +/* 035F40 80035340 E7A00038 */ swc1 $f0, 0x38($sp) +/* 035F44 80035344 AFA50028 */ sw $a1, 0x28($sp) +/* 035F48 80035348 E7B2003C */ swc1 $f18, 0x3c($sp) +/* 035F4C 8003534C 460A2200 */ add.s $f8, $f4, $f10 +/* 035F50 80035350 0C00C44C */ jal func_80031130 +/* 035F54 80035354 E7A80048 */ swc1 $f8, 0x48($sp) +/* 035F58 80035358 8FA40028 */ lw $a0, 0x28($sp) +/* 035F5C 8003535C 24190001 */ li $t9, 1 +/* 035F60 80035360 27A80034 */ addiu $t0, $sp, 0x34 +/* 035F64 80035364 AFA00034 */ sw $zero, 0x34($sp) +/* 035F68 80035368 A3A00033 */ sb $zero, 0x33($sp) +/* 035F6C 8003536C AFA80014 */ sw $t0, 0x14($sp) +/* 035F70 80035370 AFB90010 */ sw $t9, 0x10($sp) +/* 035F74 80035374 27A50040 */ addiu $a1, $sp, 0x40 +/* 035F78 80035378 27A6003C */ addiu $a2, $sp, 0x3c +/* 035F7C 8003537C 0C00C580 */ jal func_80031600 +/* 035F80 80035380 27A70033 */ addiu $a3, $sp, 0x33 +/* 035F84 80035384 C7B00040 */ lwc1 $f16, 0x40($sp) +/* 035F88 80035388 C606000C */ lwc1 $f6, 0xc($s0) +/* 035F8C 8003538C C7A00038 */ lwc1 $f0, 0x38($sp) +/* 035F90 80035390 46068101 */ sub.s $f4, $f16, $f6 +/* 035F94 80035394 3C01800E */ lui $at, %hi(D_800E601C) # $at, 0x800e +/* 035F98 80035398 46002283 */ div.s $f10, $f4, $f0 +/* 035F9C 8003539C C4236018 */ lwc1 $f3, %lo(D_800E6018)($at) +/* 035FA0 800353A0 C422601C */ lwc1 $f2, %lo(D_800E601C)($at) +/* 035FA4 800353A4 C6120010 */ lwc1 $f18, 0x10($s0) +/* 035FA8 800353A8 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 035FAC 800353AC E60A001C */ swc1 $f10, 0x1c($s0) +/* 035FB0 800353B0 C7A80044 */ lwc1 $f8, 0x44($sp) +/* 035FB4 800353B4 C60A0014 */ lwc1 $f10, 0x14($s0) +/* 035FB8 800353B8 46124401 */ sub.s $f16, $f8, $f18 +/* 035FBC 800353BC 00000000 */ nop +/* 035FC0 800353C0 46008183 */ div.s $f6, $f16, $f0 +/* 035FC4 800353C4 E6060020 */ swc1 $f6, 0x20($s0) +/* 035FC8 800353C8 C7A40048 */ lwc1 $f4, 0x48($sp) +/* 035FCC 800353CC 00000000 */ nop +/* 035FD0 800353D0 460A2201 */ sub.s $f8, $f4, $f10 +/* 035FD4 800353D4 C60A0020 */ lwc1 $f10, 0x20($s0) +/* 035FD8 800353D8 46004483 */ div.s $f18, $f8, $f0 +/* 035FDC 800353DC 44819800 */ mtc1 $at, $f19 +/* 035FE0 800353E0 46005221 */ cvt.d.s $f8, $f10 +/* 035FE4 800353E4 3C01800E */ lui $at, %hi(D_800E6020) # $at, 0x800e +/* 035FE8 800353E8 E6120024 */ swc1 $f18, 0x24($s0) +/* 035FEC 800353EC C7B00040 */ lwc1 $f16, 0x40($sp) +/* 035FF0 800353F0 44809000 */ mtc1 $zero, $f18 +/* 035FF4 800353F4 E610000C */ swc1 $f16, 0xc($s0) +/* 035FF8 800353F8 C7A60044 */ lwc1 $f6, 0x44($sp) +/* 035FFC 800353FC 46324401 */ sub.d $f16, $f8, $f18 +/* 036000 80035400 E6060010 */ swc1 $f6, 0x10($s0) +/* 036004 80035404 C7A40048 */ lwc1 $f4, 0x48($sp) +/* 036008 80035408 462081A0 */ cvt.s.d $f6, $f16 +/* 03600C 8003540C E6040014 */ swc1 $f4, 0x14($s0) +/* 036010 80035410 C604001C */ lwc1 $f4, 0x1c($s0) +/* 036014 80035414 C6100024 */ lwc1 $f16, 0x24($s0) +/* 036018 80035418 460022A1 */ cvt.d.s $f10, $f4 +/* 03601C 8003541C 46225202 */ mul.d $f8, $f10, $f2 +/* 036020 80035420 E6060020 */ swc1 $f6, 0x20($s0) +/* 036024 80035424 460081A1 */ cvt.d.s $f6, $f16 +/* 036028 80035428 46223102 */ mul.d $f4, $f6, $f2 +/* 03602C 8003542C 462044A0 */ cvt.s.d $f18, $f8 +/* 036030 80035430 C6080020 */ lwc1 $f8, 0x20($s0) +/* 036034 80035434 E612001C */ swc1 $f18, 0x1c($s0) +/* 036038 80035438 462022A0 */ cvt.s.d $f10, $f4 +/* 03603C 8003543C E60A0024 */ swc1 $f10, 0x24($s0) +/* 036040 80035440 C4306024 */ lwc1 $f16, %lo(D_800E6024)($at) +/* 036044 80035444 C4316020 */ lwc1 $f17, %lo(D_800E6020)($at) +/* 036048 80035448 460044A1 */ cvt.d.s $f18, $f8 +/* 03604C 8003544C 46309182 */ mul.d $f6, $f18, $f16 +/* 036050 80035450 3C01C4FA */ li $at, 0xC4FA0000 # -2000.000000 +/* 036054 80035454 44814000 */ mtc1 $at, $f8 +/* 036058 80035458 C60A0010 */ lwc1 $f10, 0x10($s0) +/* 03605C 8003545C 00000000 */ nop +/* 036060 80035460 4608503C */ c.lt.s $f10, $f8 +/* 036064 80035464 46203120 */ cvt.s.d $f4, $f6 +/* 036068 80035468 45010009 */ bc1t .L80035490 +/* 03606C 8003546C E6040020 */ swc1 $f4, 0x20($s0) +/* 036070 80035470 8FA90034 */ lw $t1, 0x34($sp) +/* 036074 80035474 83AA0033 */ lb $t2, 0x33($sp) +/* 036078 80035478 1120000C */ beqz $t1, .L800354AC +/* 03607C 8003547C 29410005 */ slti $at, $t2, 5 +/* 036080 80035480 14200003 */ bnez $at, .L80035490 +/* 036084 80035484 2941000A */ slti $at, $t2, 0xa +/* 036088 80035488 14200009 */ bnez $at, .L800354B0 +/* 03608C 8003548C 8FAB0034 */ lw $t3, 0x34($sp) +.L80035490: +/* 036090 80035490 8E220004 */ lw $v0, 4($s1) +/* 036094 80035494 00000000 */ nop +/* 036098 80035498 10400002 */ beqz $v0, .L800354A4 +/* 03609C 8003549C 00000000 */ nop +/* 0360A0 800354A0 AC400078 */ sw $zero, 0x78($v0) +.L800354A4: +/* 0360A4 800354A4 0C003FEE */ jal func_8000FFB8 +/* 0360A8 800354A8 02002025 */ move $a0, $s0 +.L800354AC: +/* 0360AC 800354AC 8FAB0034 */ lw $t3, 0x34($sp) +.L800354B0: +/* 0360B0 800354B0 83AC0033 */ lb $t4, 0x33($sp) +/* 0360B4 800354B4 11600007 */ beqz $t3, .L800354D4 +/* 0360B8 800354B8 24010005 */ li $at, 5 +/* 0360BC 800354BC 15810006 */ bne $t4, $at, .L800354D8 +/* 0360C0 800354C0 8FAD0034 */ lw $t5, 0x34($sp) +/* 0360C4 800354C4 44800000 */ mtc1 $zero, $f0 +/* 0360C8 800354C8 A220000B */ sb $zero, 0xb($s1) +/* 0360CC 800354CC E600001C */ swc1 $f0, 0x1c($s0) +/* 0360D0 800354D0 E6000024 */ swc1 $f0, 0x24($s0) +.L800354D4: +/* 0360D4 800354D4 8FAD0034 */ lw $t5, 0x34($sp) +.L800354D8: +/* 0360D8 800354D8 83AE0033 */ lb $t6, 0x33($sp) +/* 0360DC 800354DC 11A00053 */ beqz $t5, .L8003562C +/* 0360E0 800354E0 29C10006 */ slti $at, $t6, 6 +/* 0360E4 800354E4 14200051 */ bnez $at, .L8003562C +/* 0360E8 800354E8 29C1000A */ slti $at, $t6, 0xa +/* 0360EC 800354EC 1020004F */ beqz $at, .L8003562C +/* 0360F0 800354F0 25CFFFFA */ addiu $t7, $t6, -6 +/* 0360F4 800354F4 A22F000A */ sb $t7, 0xa($s1) +/* 0360F8 800354F8 24180003 */ li $t8, 3 +/* 0360FC 800354FC 8224000A */ lb $a0, 0xa($s1) +/* 036100 80035500 0C006EB2 */ jal func_8001BAC8 +/* 036104 80035504 A238000B */ sb $t8, 0xb($s1) +/* 036108 80035508 44800000 */ mtc1 $zero, $f0 +/* 03610C 8003550C 10400007 */ beqz $v0, .L8003552C +/* 036110 80035510 24090258 */ li $t1, 600 +/* 036114 80035514 8C460064 */ lw $a2, 0x64($v0) +/* 036118 80035518 00000000 */ nop +/* 03611C 8003551C 80D901CF */ lb $t9, 0x1cf($a2) +/* 036120 80035520 00000000 */ nop +/* 036124 80035524 27280001 */ addiu $t0, $t9, 1 +/* 036128 80035528 A0C801CF */ sb $t0, 0x1cf($a2) +.L8003552C: +/* 03612C 8003552C A6290008 */ sh $t1, 8($s1) +/* 036130 80035530 E600001C */ swc1 $f0, 0x1c($s0) +/* 036134 80035534 1000003D */ b .L8003562C +/* 036138 80035538 E6000024 */ swc1 $f0, 0x24($s0) +.L8003553C: +/* 03613C 8003553C 862A0008 */ lh $t2, 8($s1) +/* 036140 80035540 8224000A */ lb $a0, 0xa($s1) +/* 036144 80035544 01455823 */ subu $t3, $t2, $a1 +/* 036148 80035548 0C006EB2 */ jal func_8001BAC8 +/* 03614C 8003554C A62B0008 */ sh $t3, 8($s1) +/* 036150 80035550 10400004 */ beqz $v0, .L80035564 +/* 036154 80035554 00403825 */ move $a3, $v0 +/* 036158 80035558 8C460064 */ lw $a2, 0x64($v0) +/* 03615C 8003555C 00000000 */ nop +/* 036160 80035560 AFA6004C */ sw $a2, 0x4c($sp) +.L80035564: +/* 036164 80035564 86230008 */ lh $v1, 8($s1) +/* 036168 80035568 8FA6004C */ lw $a2, 0x4c($sp) +/* 03616C 8003556C 1C60000C */ bgtz $v1, .L800355A0 +/* 036170 80035570 240E0004 */ li $t6, 4 +/* 036174 80035574 10400005 */ beqz $v0, .L8003558C +/* 036178 80035578 00000000 */ nop +/* 03617C 8003557C 80CC0193 */ lb $t4, 0x193($a2) +/* 036180 80035580 00000000 */ nop +/* 036184 80035584 258D0001 */ addiu $t5, $t4, 1 +/* 036188 80035588 A0CD0193 */ sb $t5, 0x193($a2) +.L8003558C: +/* 03618C 8003558C 8E2F0004 */ lw $t7, 4($s1) +/* 036190 80035590 A22E000B */ sb $t6, 0xb($s1) +/* 036194 80035594 ADE00078 */ sw $zero, 0x78($t7) +/* 036198 80035598 86230008 */ lh $v1, 8($s1) +/* 03619C 8003559C 00000000 */ nop +.L800355A0: +/* 0361A0 800355A0 2861021C */ slti $at, $v1, 0x21c +/* 0361A4 800355A4 10200008 */ beqz $at, .L800355C8 +/* 0361A8 800355A8 02002025 */ move $a0, $s0 +/* 0361AC 800355AC 02202825 */ move $a1, $s1 +/* 0361B0 800355B0 AFA6004C */ sw $a2, 0x4c($sp) +/* 0361B4 800355B4 0C00D810 */ jal func_80036040 +/* 0361B8 800355B8 AFA70050 */ sw $a3, 0x50($sp) +/* 0361BC 800355BC 8FA6004C */ lw $a2, 0x4c($sp) +/* 0361C0 800355C0 8FA70050 */ lw $a3, 0x50($sp) +/* 0361C4 800355C4 00000000 */ nop +.L800355C8: +/* 0361C8 800355C8 10E00019 */ beqz $a3, .L80035630 +/* 0361CC 800355CC 8FBF0024 */ lw $ra, 0x24($sp) +/* 0361D0 800355D0 8238000B */ lb $t8, 0xb($s1) +/* 0361D4 800355D4 24010003 */ li $at, 3 +/* 0361D8 800355D8 13010015 */ beq $t8, $at, .L80035630 +/* 0361DC 800355DC 8FBF0024 */ lw $ra, 0x24($sp) +/* 0361E0 800355E0 80D901CF */ lb $t9, 0x1cf($a2) +/* 0361E4 800355E4 00000000 */ nop +/* 0361E8 800355E8 2728FFFF */ addiu $t0, $t9, -1 +/* 0361EC 800355EC 1000000F */ b .L8003562C +/* 0361F0 800355F0 A0C801CF */ sb $t0, 0x1cf($a2) +.L800355F4: +/* 0361F4 800355F4 8224000A */ lb $a0, 0xa($s1) +/* 0361F8 800355F8 0C006EB2 */ jal func_8001BAC8 +/* 0361FC 800355FC 00000000 */ nop +/* 036200 80035600 10400009 */ beqz $v0, .L80035628 +/* 036204 80035604 240B0080 */ li $t3, 128 +/* 036208 80035608 8C460064 */ lw $a2, 0x64($v0) +/* 03620C 8003560C 240A0001 */ li $t2, 1 +/* 036210 80035610 80C90193 */ lb $t1, 0x193($a2) +/* 036214 80035614 00000000 */ nop +/* 036218 80035618 29210003 */ slti $at, $t1, 3 +/* 03621C 8003561C 14200002 */ bnez $at, .L80035628 +/* 036220 80035620 00000000 */ nop +/* 036224 80035624 A0CA01D8 */ sb $t2, 0x1d8($a2) +.L80035628: +/* 036228 80035628 A60B0018 */ sh $t3, 0x18($s0) +.L8003562C: +/* 03622C 8003562C 8FBF0024 */ lw $ra, 0x24($sp) +.L80035630: +/* 036230 80035630 8FB0001C */ lw $s0, 0x1c($sp) +/* 036234 80035634 8FB10020 */ lw $s1, 0x20($sp) +/* 036238 80035638 03E00008 */ jr $ra +/* 03623C 8003563C 27BD0058 */ addiu $sp, $sp, 0x58 + diff --git a/asm/non_matchings/unknown_032760/func_80035640.s b/asm/non_matchings/unknown_032760/func_80035640.s new file mode 100644 index 00000000..b87fbf5b --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80035640.s @@ -0,0 +1,5 @@ +glabel func_80035640 +/* 036240 80035640 AFA40000 */ sw $a0, ($sp) +/* 036244 80035644 03E00008 */ jr $ra +/* 036248 80035648 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_8003564C.s b/asm/non_matchings/unknown_032760/func_8003564C.s new file mode 100644 index 00000000..8a822205 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003564C.s @@ -0,0 +1,59 @@ +glabel func_8003564C +/* 03624C 8003564C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 036250 80035650 AFBF0014 */ sw $ra, 0x14($sp) +/* 036254 80035654 AFA5002C */ sw $a1, 0x2c($sp) +/* 036258 80035658 8C8E0078 */ lw $t6, 0x78($a0) +/* 03625C 8003565C 00803025 */ move $a2, $a0 +/* 036260 80035660 15C0002F */ bnez $t6, .L80035720 +/* 036264 80035664 8FBF0014 */ lw $ra, 0x14($sp) +/* 036268 80035668 444FF800 */ cfc1 $t7, $31 +/* 03626C 8003566C C484000C */ lwc1 $f4, 0xc($a0) +/* 036270 80035670 35E10003 */ ori $at, $t7, 3 +/* 036274 80035674 38210002 */ xori $at, $at, 2 +/* 036278 80035678 44C1F800 */ ctc1 $at, $31 +/* 03627C 8003567C 240B0008 */ li $t3, 8 +/* 036280 80035680 460021A4 */ cvt.w.s $f6, $f4 +/* 036284 80035684 240C0034 */ li $t4, 52 +/* 036288 80035688 44CFF800 */ ctc1 $t7, $31 +/* 03628C 8003568C 44183000 */ mfc1 $t8, $f6 +/* 036290 80035690 24050001 */ li $a1, 1 +/* 036294 80035694 4459F800 */ cfc1 $t9, $31 +/* 036298 80035698 A7B80022 */ sh $t8, 0x22($sp) +/* 03629C 8003569C 37210003 */ ori $at, $t9, 3 +/* 0362A0 800356A0 38210002 */ xori $at, $at, 2 +/* 0362A4 800356A4 44C1F800 */ ctc1 $at, $31 +/* 0362A8 800356A8 C4880010 */ lwc1 $f8, 0x10($a0) +/* 0362AC 800356AC 00000000 */ nop +/* 0362B0 800356B0 460042A4 */ cvt.w.s $f10, $f8 +/* 0362B4 800356B4 44D9F800 */ ctc1 $t9, $31 +/* 0362B8 800356B8 44085000 */ mfc1 $t0, $f10 +/* 0362BC 800356BC 00000000 */ nop +/* 0362C0 800356C0 4449F800 */ cfc1 $t1, $31 +/* 0362C4 800356C4 A7A80024 */ sh $t0, 0x24($sp) +/* 0362C8 800356C8 35210003 */ ori $at, $t1, 3 +/* 0362CC 800356CC 38210002 */ xori $at, $at, 2 +/* 0362D0 800356D0 44C1F800 */ ctc1 $at, $31 +/* 0362D4 800356D4 C4900014 */ lwc1 $f16, 0x14($a0) +/* 0362D8 800356D8 A3AB0021 */ sb $t3, 0x21($sp) +/* 0362DC 800356DC 460084A4 */ cvt.w.s $f18, $f16 +/* 0362E0 800356E0 A3AC0020 */ sb $t4, 0x20($sp) +/* 0362E4 800356E4 440A9000 */ mfc1 $t2, $f18 +/* 0362E8 800356E8 44C9F800 */ ctc1 $t1, $31 +/* 0362EC 800356EC AFA60028 */ sw $a2, 0x28($sp) +/* 0362F0 800356F0 27A40020 */ addiu $a0, $sp, 0x20 +/* 0362F4 800356F4 0C003A95 */ jal func_8000EA54 +/* 0362F8 800356F8 A7AA0026 */ sh $t2, 0x26($sp) +/* 0362FC 800356FC 8FA60028 */ lw $a2, 0x28($sp) +/* 036300 80035700 10400007 */ beqz $v0, .L80035720 +/* 036304 80035704 8FBF0014 */ lw $ra, 0x14($sp) +/* 036308 80035708 8C430064 */ lw $v1, 0x64($v0) +/* 03630C 8003570C 00000000 */ nop +/* 036310 80035710 AC660004 */ sw $a2, 4($v1) +/* 036314 80035714 ACC20078 */ sw $v0, 0x78($a2) +/* 036318 80035718 AC40003C */ sw $zero, 0x3c($v0) +/* 03631C 8003571C 8FBF0014 */ lw $ra, 0x14($sp) +.L80035720: +/* 036320 80035720 27BD0028 */ addiu $sp, $sp, 0x28 +/* 036324 80035724 03E00008 */ jr $ra +/* 036328 80035728 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003572C.s b/asm/non_matchings/unknown_032760/func_8003572C.s new file mode 100644 index 00000000..7fd113ff --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003572C.s @@ -0,0 +1,46 @@ +glabel func_8003572C +/* 03632C 8003572C 90AF0009 */ lbu $t7, 9($a1) +/* 036330 80035730 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 036334 80035734 448F2000 */ mtc1 $t7, $f4 +/* 036338 80035738 44811000 */ mtc1 $at, $f2 +/* 03633C 8003573C 46802020 */ cvt.s.w $f0, $f4 +/* 036340 80035740 3C014280 */ li $at, 0x42800000 # 64.000000 +/* 036344 80035744 44813000 */ mtc1 $at, $f6 +/* 036348 80035748 4602003C */ c.lt.s $f0, $f2 +/* 03634C 8003574C 00000000 */ nop +/* 036350 80035750 45000003 */ bc1f .L80035760 +/* 036354 80035754 00000000 */ nop +/* 036358 80035758 46001006 */ mov.s $f0, $f2 +/* 03635C 8003575C 00000000 */ nop +.L80035760: +/* 036360 80035760 46060003 */ div.s $f0, $f0, $f6 +/* 036364 80035764 8C820040 */ lw $v0, 0x40($a0) +/* 036368 80035768 8089003A */ lb $t1, 0x3a($a0) +/* 03636C 8003576C C448000C */ lwc1 $f8, 0xc($v0) +/* 036370 80035770 00000000 */ nop +/* 036374 80035774 46004282 */ mul.s $f10, $f8, $f0 +/* 036378 80035778 E48A0008 */ swc1 $f10, 8($a0) +/* 03637C 8003577C 90B9000A */ lbu $t9, 0xa($a1) +/* 036380 80035780 00000000 */ nop +/* 036384 80035784 00194280 */ sll $t0, $t9, 0xa +/* 036388 80035788 A4880000 */ sh $t0, ($a0) +/* 03638C 8003578C 804A0055 */ lb $t2, 0x55($v0) +/* 036390 80035790 00000000 */ nop +/* 036394 80035794 012A082A */ slt $at, $t1, $t2 +/* 036398 80035798 14200002 */ bnez $at, .L800357A4 +/* 03639C 8003579C 00000000 */ nop +/* 0363A0 800357A0 A080003A */ sb $zero, 0x3a($a0) +.L800357A4: +/* 0363A4 800357A4 8C8C004C */ lw $t4, 0x4c($a0) +/* 0363A8 800357A8 240B0001 */ li $t3, 1 +/* 0363AC 800357AC A58B0014 */ sh $t3, 0x14($t4) +/* 0363B0 800357B0 8C8E004C */ lw $t6, 0x4c($a0) +/* 0363B4 800357B4 240D0002 */ li $t5, 2 +/* 0363B8 800357B8 A1CD0011 */ sb $t5, 0x11($t6) +/* 0363BC 800357BC 8C98004C */ lw $t8, 0x4c($a0) +/* 0363C0 800357C0 240F0014 */ li $t7, 20 +/* 0363C4 800357C4 A30F0010 */ sb $t7, 0x10($t8) +/* 0363C8 800357C8 8C99004C */ lw $t9, 0x4c($a0) +/* 0363CC 800357CC 03E00008 */ jr $ra +/* 0363D0 800357D0 A3200012 */ sb $zero, 0x12($t9) + diff --git a/asm/non_matchings/unknown_032760/func_800357D4.s b/asm/non_matchings/unknown_032760/func_800357D4.s new file mode 100644 index 00000000..e861fd37 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800357D4.s @@ -0,0 +1,50 @@ +glabel func_800357D4 +/* 0363D4 800357D4 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0363D8 800357D8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0363DC 800357DC AFA40020 */ sw $a0, 0x20($sp) +/* 0363E0 800357E0 AFA50024 */ sw $a1, 0x24($sp) +/* 0363E4 800357E4 0C006EB2 */ jal func_8001BAC8 +/* 0363E8 800357E8 00002025 */ move $a0, $zero +/* 0363EC 800357EC 1040001F */ beqz $v0, .L8003586C +/* 0363F0 800357F0 8FAC0020 */ lw $t4, 0x20($sp) +/* 0363F4 800357F4 8FAE0020 */ lw $t6, 0x20($sp) +/* 0363F8 800357F8 00000000 */ nop +/* 0363FC 800357FC 8DC3004C */ lw $v1, 0x4c($t6) +/* 036400 80035800 00000000 */ nop +/* 036404 80035804 906F0013 */ lbu $t7, 0x13($v1) +/* 036408 80035808 00000000 */ nop +/* 03640C 8003580C 29E100C8 */ slti $at, $t7, 0xc8 +/* 036410 80035810 10200016 */ beqz $at, .L8003586C +/* 036414 80035814 8FAC0020 */ lw $t4, 0x20($sp) +/* 036418 80035818 8C780000 */ lw $t8, ($v1) +/* 03641C 8003581C 00002025 */ move $a0, $zero +/* 036420 80035820 14580012 */ bne $v0, $t8, .L8003586C +/* 036424 80035824 8FAC0020 */ lw $t4, 0x20($sp) +/* 036428 80035828 0C01A955 */ jal func_8006A554 +/* 03642C 8003582C AFA2001C */ sw $v0, 0x1c($sp) +/* 036430 80035830 8FA5001C */ lw $a1, 0x1c($sp) +/* 036434 80035834 30592000 */ andi $t9, $v0, 0x2000 +/* 036438 80035838 17200009 */ bnez $t9, .L80035860 +/* 03643C 8003583C 00000000 */ nop +/* 036440 80035840 8FA80020 */ lw $t0, 0x20($sp) +/* 036444 80035844 00000000 */ nop +/* 036448 80035848 8D09005C */ lw $t1, 0x5c($t0) +/* 03644C 8003584C 00000000 */ nop +/* 036450 80035850 8D2A0100 */ lw $t2, 0x100($t1) +/* 036454 80035854 00000000 */ nop +/* 036458 80035858 14AA0004 */ bne $a1, $t2, .L8003586C +/* 03645C 8003585C 8FAC0020 */ lw $t4, 0x20($sp) +.L80035860: +/* 036460 80035860 0C01BCA7 */ jal func_8006F29C +/* 036464 80035864 00000000 */ nop +/* 036468 80035868 8FAC0020 */ lw $t4, 0x20($sp) +.L8003586C: +/* 03646C 8003586C 240B00FF */ li $t3, 255 +/* 036470 80035870 8D8D004C */ lw $t5, 0x4c($t4) +/* 036474 80035874 00000000 */ nop +/* 036478 80035878 A1AB0013 */ sb $t3, 0x13($t5) +/* 03647C 8003587C 8FBF0014 */ lw $ra, 0x14($sp) +/* 036480 80035880 27BD0020 */ addiu $sp, $sp, 0x20 +/* 036484 80035884 03E00008 */ jr $ra +/* 036488 80035888 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003588C.s b/asm/non_matchings/unknown_032760/func_8003588C.s new file mode 100644 index 00000000..3d21eacc --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003588C.s @@ -0,0 +1,61 @@ +glabel func_8003588C +/* 03648C 8003588C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 036490 80035890 AFBF0014 */ sw $ra, 0x14($sp) +/* 036494 80035894 90AF0009 */ lbu $t7, 9($a1) +/* 036498 80035898 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 03649C 8003589C 448F2000 */ mtc1 $t7, $f4 +/* 0364A0 800358A0 44811000 */ mtc1 $at, $f2 +/* 0364A4 800358A4 46802020 */ cvt.s.w $f0, $f4 +/* 0364A8 800358A8 3C014280 */ li $at, 0x42800000 # 64.000000 +/* 0364AC 800358AC 44813000 */ mtc1 $at, $f6 +/* 0364B0 800358B0 4602003C */ c.lt.s $f0, $f2 +/* 0364B4 800358B4 00000000 */ nop +/* 0364B8 800358B8 45000003 */ bc1f .L800358C8 +/* 0364BC 800358BC 00000000 */ nop +/* 0364C0 800358C0 46001006 */ mov.s $f0, $f2 +/* 0364C4 800358C4 00000000 */ nop +.L800358C8: +/* 0364C8 800358C8 46060003 */ div.s $f0, $f0, $f6 +/* 0364CC 800358CC 8C820040 */ lw $v0, 0x40($a0) +/* 0364D0 800358D0 8089003A */ lb $t1, 0x3a($a0) +/* 0364D4 800358D4 C448000C */ lwc1 $f8, 0xc($v0) +/* 0364D8 800358D8 00000000 */ nop +/* 0364DC 800358DC 46004282 */ mul.s $f10, $f8, $f0 +/* 0364E0 800358E0 E48A0008 */ swc1 $f10, 8($a0) +/* 0364E4 800358E4 90B9000A */ lbu $t9, 0xa($a1) +/* 0364E8 800358E8 00000000 */ nop +/* 0364EC 800358EC 00194280 */ sll $t0, $t9, 0xa +/* 0364F0 800358F0 A4880000 */ sh $t0, ($a0) +/* 0364F4 800358F4 804A0055 */ lb $t2, 0x55($v0) +/* 0364F8 800358F8 00000000 */ nop +/* 0364FC 800358FC 012A082A */ slt $at, $t1, $t2 +/* 036500 80035900 14200002 */ bnez $at, .L8003590C +/* 036504 80035904 00000000 */ nop +/* 036508 80035908 A080003A */ sb $zero, 0x3a($a0) +.L8003590C: +/* 03650C 8003590C 8C8C004C */ lw $t4, 0x4c($a0) +/* 036510 80035910 240B0002 */ li $t3, 2 +/* 036514 80035914 A58B0014 */ sh $t3, 0x14($t4) +/* 036518 80035918 8C8D004C */ lw $t5, 0x4c($a0) +/* 03651C 8003591C 240E0014 */ li $t6, 20 +/* 036520 80035920 A1A00011 */ sb $zero, 0x11($t5) +/* 036524 80035924 8C8F004C */ lw $t7, 0x4c($a0) +/* 036528 80035928 00000000 */ nop +/* 03652C 8003592C A1EE0010 */ sb $t6, 0x10($t7) +/* 036530 80035930 8C98004C */ lw $t8, 0x4c($a0) +/* 036534 80035934 00000000 */ nop +/* 036538 80035938 A3000012 */ sb $zero, 0x12($t8) +/* 03653C 8003593C 0C0270C3 */ jal func_8009C30C +/* 036540 80035940 AFA40018 */ sw $a0, 0x18($sp) +/* 036544 80035944 8FA40018 */ lw $a0, 0x18($sp) +/* 036548 80035948 0002CA80 */ sll $t9, $v0, 0xa +/* 03654C 8003594C 07210004 */ bgez $t9, .L80035960 +/* 036550 80035950 8FBF0014 */ lw $ra, 0x14($sp) +/* 036554 80035954 0C003FEE */ jal func_8000FFB8 +/* 036558 80035958 00000000 */ nop +/* 03655C 8003595C 8FBF0014 */ lw $ra, 0x14($sp) +.L80035960: +/* 036560 80035960 27BD0018 */ addiu $sp, $sp, 0x18 +/* 036564 80035964 03E00008 */ jr $ra +/* 036568 80035968 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003596C.s b/asm/non_matchings/unknown_032760/func_8003596C.s new file mode 100644 index 00000000..41da3de5 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003596C.s @@ -0,0 +1,103 @@ +glabel func_8003596C +/* 03656C 8003596C 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 036570 80035970 AFBF002C */ sw $ra, 0x2c($sp) +/* 036574 80035974 AFB30024 */ sw $s3, 0x24($sp) +/* 036578 80035978 00809825 */ move $s3, $a0 +/* 03657C 8003597C AFB40028 */ sw $s4, 0x28($sp) +/* 036580 80035980 AFB20020 */ sw $s2, 0x20($sp) +/* 036584 80035984 AFB1001C */ sw $s1, 0x1c($sp) +/* 036588 80035988 AFB00018 */ sw $s0, 0x18($sp) +/* 03658C 8003598C 0C003873 */ jal func_8000E1CC +/* 036590 80035990 AFA5005C */ sw $a1, 0x5c($sp) +/* 036594 80035994 14400006 */ bnez $v0, .L800359B0 +/* 036598 80035998 00000000 */ nop +/* 03659C 8003599C 866E0006 */ lh $t6, 6($s3) +/* 0365A0 800359A0 00000000 */ nop +/* 0365A4 800359A4 35CF4000 */ ori $t7, $t6, 0x4000 +/* 0365A8 800359A8 10000005 */ b .L800359C0 +/* 0365AC 800359AC A66F0006 */ sh $t7, 6($s3) +.L800359B0: +/* 0365B0 800359B0 86780006 */ lh $t8, 6($s3) +/* 0365B4 800359B4 00000000 */ nop +/* 0365B8 800359B8 3319BFFF */ andi $t9, $t8, 0xbfff +/* 0365BC 800359BC A6790006 */ sh $t9, 6($s3) +.L800359C0: +/* 0365C0 800359C0 8E68004C */ lw $t0, 0x4c($s3) +/* 0365C4 800359C4 00000000 */ nop +/* 0365C8 800359C8 91090013 */ lbu $t1, 0x13($t0) +/* 0365CC 800359CC 00000000 */ nop +/* 0365D0 800359D0 29210064 */ slti $at, $t1, 0x64 +/* 0365D4 800359D4 1020003D */ beqz $at, .L80035ACC +/* 0365D8 800359D8 8FBF002C */ lw $ra, 0x2c($sp) +/* 0365DC 800359DC 866A0006 */ lh $t2, 6($s3) +/* 0365E0 800359E0 00000000 */ nop +/* 0365E4 800359E4 314B4000 */ andi $t3, $t2, 0x4000 +/* 0365E8 800359E8 15600038 */ bnez $t3, .L80035ACC +/* 0365EC 800359EC 8FBF002C */ lw $ra, 0x2c($sp) +/* 0365F0 800359F0 0C006E9D */ jal func_8001BA74 +/* 0365F4 800359F4 27A40040 */ addiu $a0, $sp, 0x40 +/* 0365F8 800359F8 8FAC0040 */ lw $t4, 0x40($sp) +/* 0365FC 800359FC 00008825 */ move $s1, $zero +/* 036600 80035A00 19800031 */ blez $t4, .L80035AC8 +/* 036604 80035A04 00409025 */ move $s2, $v0 +/* 036608 80035A08 24140001 */ li $s4, 1 +.L80035A0C: +/* 03660C 80035A0C 8E420000 */ lw $v0, ($s2) +/* 036610 80035A10 00000000 */ nop +/* 036614 80035A14 8C500064 */ lw $s0, 0x64($v0) +/* 036618 80035A18 00000000 */ nop +/* 03661C 80035A1C 920D01F5 */ lbu $t5, 0x1f5($s0) +/* 036620 80035A20 00000000 */ nop +/* 036624 80035A24 15A00024 */ bnez $t5, .L80035AB8 +/* 036628 80035A28 8FB90040 */ lw $t9, 0x40($sp) +/* 03662C 80035A2C 820E01D3 */ lb $t6, 0x1d3($s0) +/* 036630 80035A30 00000000 */ nop +/* 036634 80035A34 29C1000F */ slti $at, $t6, 0xf +/* 036638 80035A38 1020001F */ beqz $at, .L80035AB8 +/* 03663C 80035A3C 8FB90040 */ lw $t9, 0x40($sp) +/* 036640 80035A40 C444000C */ lwc1 $f4, 0xc($v0) +/* 036644 80035A44 C666000C */ lwc1 $f6, 0xc($s3) +/* 036648 80035A48 C4480010 */ lwc1 $f8, 0x10($v0) +/* 03664C 80035A4C 46062001 */ sub.s $f0, $f4, $f6 +/* 036650 80035A50 C66A0010 */ lwc1 $f10, 0x10($s3) +/* 036654 80035A54 46000102 */ mul.s $f4, $f0, $f0 +/* 036658 80035A58 460A4081 */ sub.s $f2, $f8, $f10 +/* 03665C 80035A5C C4500014 */ lwc1 $f16, 0x14($v0) +/* 036660 80035A60 C6720014 */ lwc1 $f18, 0x14($s3) +/* 036664 80035A64 46021182 */ mul.s $f6, $f2, $f2 +/* 036668 80035A68 46128381 */ sub.s $f14, $f16, $f18 +/* 03666C 80035A6C 460E7282 */ mul.s $f10, $f14, $f14 +/* 036670 80035A70 46062200 */ add.s $f8, $f4, $f6 +/* 036674 80035A74 0C0326B4 */ jal sqrtf +/* 036678 80035A78 460A4300 */ add.s $f12, $f8, $f10 +/* 03667C 80035A7C 444FF800 */ cfc1 $t7, $31 +/* 036680 80035A80 00000000 */ nop +/* 036684 80035A84 35E10003 */ ori $at, $t7, 3 +/* 036688 80035A88 38210002 */ xori $at, $at, 2 +/* 03668C 80035A8C 44C1F800 */ ctc1 $at, $31 +/* 036690 80035A90 00000000 */ nop +/* 036694 80035A94 46000424 */ cvt.w.s $f16, $f0 +/* 036698 80035A98 44188000 */ mfc1 $t8, $f16 +/* 03669C 80035A9C 44CFF800 */ ctc1 $t7, $31 +/* 0366A0 80035AA0 2B010064 */ slti $at, $t8, 0x64 +/* 0366A4 80035AA4 10200004 */ beqz $at, .L80035AB8 +/* 0366A8 80035AA8 8FB90040 */ lw $t9, 0x40($sp) +/* 0366AC 80035AAC A21401F5 */ sb $s4, 0x1f5($s0) +/* 0366B0 80035AB0 AE13014C */ sw $s3, 0x14c($s0) +/* 0366B4 80035AB4 8FB90040 */ lw $t9, 0x40($sp) +.L80035AB8: +/* 0366B8 80035AB8 26310001 */ addiu $s1, $s1, 1 +/* 0366BC 80035ABC 0239082A */ slt $at, $s1, $t9 +/* 0366C0 80035AC0 1420FFD2 */ bnez $at, .L80035A0C +/* 0366C4 80035AC4 26520004 */ addiu $s2, $s2, 4 +.L80035AC8: +/* 0366C8 80035AC8 8FBF002C */ lw $ra, 0x2c($sp) +.L80035ACC: +/* 0366CC 80035ACC 8FB00018 */ lw $s0, 0x18($sp) +/* 0366D0 80035AD0 8FB1001C */ lw $s1, 0x1c($sp) +/* 0366D4 80035AD4 8FB20020 */ lw $s2, 0x20($sp) +/* 0366D8 80035AD8 8FB30024 */ lw $s3, 0x24($sp) +/* 0366DC 80035ADC 8FB40028 */ lw $s4, 0x28($sp) +/* 0366E0 80035AE0 03E00008 */ jr $ra +/* 0366E4 80035AE4 27BD0058 */ addiu $sp, $sp, 0x58 + diff --git a/asm/non_matchings/unknown_032760/func_80035AE8.s b/asm/non_matchings/unknown_032760/func_80035AE8.s new file mode 100644 index 00000000..a9277027 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80035AE8.s @@ -0,0 +1,97 @@ +glabel func_80035AE8 +/* 0366E8 80035AE8 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0366EC 80035AEC AFBF0014 */ sw $ra, 0x14($sp) +/* 0366F0 80035AF0 90AF0009 */ lbu $t7, 9($a1) +/* 0366F4 80035AF4 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 0366F8 80035AF8 448F2000 */ mtc1 $t7, $f4 +/* 0366FC 80035AFC 44811000 */ mtc1 $at, $f2 +/* 036700 80035B00 46802020 */ cvt.s.w $f0, $f4 +/* 036704 80035B04 3C014280 */ li $at, 0x42800000 # 64.000000 +/* 036708 80035B08 44813000 */ mtc1 $at, $f6 +/* 03670C 80035B0C 4602003C */ c.lt.s $f0, $f2 +/* 036710 80035B10 240F00FF */ li $t7, 255 +/* 036714 80035B14 45000003 */ bc1f .L80035B24 +/* 036718 80035B18 00000000 */ nop +/* 03671C 80035B1C 46001006 */ mov.s $f0, $f2 +/* 036720 80035B20 00000000 */ nop +.L80035B24: +/* 036724 80035B24 46060003 */ div.s $f0, $f0, $f6 +/* 036728 80035B28 8C820040 */ lw $v0, 0x40($a0) +/* 03672C 80035B2C 8C980050 */ lw $t8, 0x50($a0) +/* 036730 80035B30 C448000C */ lwc1 $f8, 0xc($v0) +/* 036734 80035B34 00000000 */ nop +/* 036738 80035B38 46004282 */ mul.s $f10, $f8, $f0 +/* 03673C 80035B3C E48A0008 */ swc1 $f10, 8($a0) +/* 036740 80035B40 C4500004 */ lwc1 $f16, 4($v0) +/* 036744 80035B44 00000000 */ nop +/* 036748 80035B48 46008482 */ mul.s $f18, $f16, $f0 +/* 03674C 80035B4C E7120000 */ swc1 $f18, ($t8) +/* 036750 80035B50 90A8000A */ lbu $t0, 0xa($a1) +/* 036754 80035B54 8C8B0040 */ lw $t3, 0x40($a0) +/* 036758 80035B58 00084A80 */ sll $t1, $t0, 0xa +/* 03675C 80035B5C A4890000 */ sh $t1, ($a0) +/* 036760 80035B60 808A003A */ lb $t2, 0x3a($a0) +/* 036764 80035B64 816C0055 */ lb $t4, 0x55($t3) +/* 036768 80035B68 00000000 */ nop +/* 03676C 80035B6C 014C082A */ slt $at, $t2, $t4 +/* 036770 80035B70 14200003 */ bnez $at, .L80035B80 +/* 036774 80035B74 3C0141E0 */ lui $at, 0x41e0 +/* 036778 80035B78 A080003A */ sb $zero, 0x3a($a0) +/* 03677C 80035B7C 3C0141E0 */ li $at, 0x41E00000 # 28.000000 +.L80035B80: +/* 036780 80035B80 44812000 */ mtc1 $at, $f4 +/* 036784 80035B84 00000000 */ nop +/* 036788 80035B88 46002182 */ mul.s $f6, $f4, $f0 +/* 03678C 80035B8C 444DF800 */ cfc1 $t5, $31 +/* 036790 80035B90 00000000 */ nop +/* 036794 80035B94 35A10003 */ ori $at, $t5, 3 +/* 036798 80035B98 38210002 */ xori $at, $at, 2 +/* 03679C 80035B9C 44C1F800 */ ctc1 $at, $31 +/* 0367A0 80035BA0 00000000 */ nop +/* 0367A4 80035BA4 46003224 */ cvt.w.s $f8, $f6 +/* 0367A8 80035BA8 44024000 */ mfc1 $v0, $f8 +/* 0367AC 80035BAC 44CDF800 */ ctc1 $t5, $31 +/* 0367B0 80035BB0 2442000F */ addiu $v0, $v0, 0xf +/* 0367B4 80035BB4 04410002 */ bgez $v0, .L80035BC0 +/* 0367B8 80035BB8 AC820078 */ sw $v0, 0x78($a0) +/* 0367BC 80035BBC AC800078 */ sw $zero, 0x78($a0) +.L80035BC0: +/* 0367C0 80035BC0 8C8E0078 */ lw $t6, 0x78($a0) +/* 0367C4 80035BC4 00000000 */ nop +/* 0367C8 80035BC8 29C10100 */ slti $at, $t6, 0x100 +/* 0367CC 80035BCC 14200002 */ bnez $at, .L80035BD8 +/* 0367D0 80035BD0 00000000 */ nop +/* 0367D4 80035BD4 AC8F0078 */ sw $t7, 0x78($a0) +.L80035BD8: +/* 0367D8 80035BD8 8C99004C */ lw $t9, 0x4c($a0) +/* 0367DC 80035BDC 24180002 */ li $t8, 2 +/* 0367E0 80035BE0 A7380014 */ sh $t8, 0x14($t9) +/* 0367E4 80035BE4 8C88004C */ lw $t0, 0x4c($a0) +/* 0367E8 80035BE8 24090014 */ li $t1, 20 +/* 0367EC 80035BEC A1000011 */ sb $zero, 0x11($t0) +/* 0367F0 80035BF0 8C8B004C */ lw $t3, 0x4c($a0) +/* 0367F4 80035BF4 240CFF9C */ li $t4, -100 +/* 0367F8 80035BF8 A1690010 */ sb $t1, 0x10($t3) +/* 0367FC 80035BFC 8C8A004C */ lw $t2, 0x4c($a0) +/* 036800 80035C00 240E0064 */ li $t6, 100 +/* 036804 80035C04 A1400012 */ sb $zero, 0x12($t2) +/* 036808 80035C08 8C8D004C */ lw $t5, 0x4c($a0) +/* 03680C 80035C0C 00000000 */ nop +/* 036810 80035C10 A1AC0016 */ sb $t4, 0x16($t5) +/* 036814 80035C14 8C8F004C */ lw $t7, 0x4c($a0) +/* 036818 80035C18 00000000 */ nop +/* 03681C 80035C1C A1EE0017 */ sb $t6, 0x17($t7) +/* 036820 80035C20 0C0270C3 */ jal func_8009C30C +/* 036824 80035C24 AFA40018 */ sw $a0, 0x18($sp) +/* 036828 80035C28 8FA40018 */ lw $a0, 0x18($sp) +/* 03682C 80035C2C 0002C280 */ sll $t8, $v0, 0xa +/* 036830 80035C30 07010004 */ bgez $t8, .L80035C44 +/* 036834 80035C34 8FBF0014 */ lw $ra, 0x14($sp) +/* 036838 80035C38 0C003FEE */ jal func_8000FFB8 +/* 03683C 80035C3C 00000000 */ nop +/* 036840 80035C40 8FBF0014 */ lw $ra, 0x14($sp) +.L80035C44: +/* 036844 80035C44 27BD0018 */ addiu $sp, $sp, 0x18 +/* 036848 80035C48 03E00008 */ jr $ra +/* 03684C 80035C4C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80035C50.s b/asm/non_matchings/unknown_032760/func_80035C50.s new file mode 100644 index 00000000..b18def50 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80035C50.s @@ -0,0 +1,124 @@ +glabel func_80035C50 +/* 036850 80035C50 27BDFF98 */ addiu $sp, $sp, -0x68 +/* 036854 80035C54 AFBF003C */ sw $ra, 0x3c($sp) +/* 036858 80035C58 AFB60038 */ sw $s6, 0x38($sp) +/* 03685C 80035C5C AFB50034 */ sw $s5, 0x34($sp) +/* 036860 80035C60 AFB40030 */ sw $s4, 0x30($sp) +/* 036864 80035C64 AFB3002C */ sw $s3, 0x2c($sp) +/* 036868 80035C68 AFB20028 */ sw $s2, 0x28($sp) +/* 03686C 80035C6C AFB10024 */ sw $s1, 0x24($sp) +/* 036870 80035C70 AFB00020 */ sw $s0, 0x20($sp) +/* 036874 80035C74 AFA5006C */ sw $a1, 0x6c($sp) +/* 036878 80035C78 848E0006 */ lh $t6, 6($a0) +/* 03687C 80035C7C 00809025 */ move $s2, $a0 +/* 036880 80035C80 31CFBFFF */ andi $t7, $t6, 0xbfff +/* 036884 80035C84 A48F0006 */ sh $t7, 6($a0) +/* 036888 80035C88 84980006 */ lh $t8, 6($a0) +/* 03688C 80035C8C 00000000 */ nop +/* 036890 80035C90 37191000 */ ori $t9, $t8, 0x1000 +/* 036894 80035C94 A4990006 */ sh $t9, 6($a0) +/* 036898 80035C98 0C006EB2 */ jal func_8001BAC8 +/* 03689C 80035C9C 00002025 */ move $a0, $zero +/* 0368A0 80035CA0 8E48004C */ lw $t0, 0x4c($s2) +/* 0368A4 80035CA4 8E4A0078 */ lw $t2, 0x78($s2) +/* 0368A8 80035CA8 91090013 */ lbu $t1, 0x13($t0) +/* 0368AC 80035CAC 00000000 */ nop +/* 0368B0 80035CB0 012A082A */ slt $at, $t1, $t2 +/* 0368B4 80035CB4 10200051 */ beqz $at, .L80035DFC +/* 0368B8 80035CB8 8FBF003C */ lw $ra, 0x3c($sp) +/* 0368BC 80035CBC 0C006E9D */ jal func_8001BA74 +/* 0368C0 80035CC0 27A40054 */ addiu $a0, $sp, 0x54 +/* 0368C4 80035CC4 8FAB0054 */ lw $t3, 0x54($sp) +/* 0368C8 80035CC8 00009825 */ move $s3, $zero +/* 0368CC 80035CCC 1960004A */ blez $t3, .L80035DF8 +/* 0368D0 80035CD0 0040A025 */ move $s4, $v0 +/* 0368D4 80035CD4 24160002 */ li $s6, 2 +/* 0368D8 80035CD8 2415FFFF */ li $s5, -1 +.L80035CDC: +/* 0368DC 80035CDC 8E910000 */ lw $s1, ($s4) +/* 0368E0 80035CE0 00000000 */ nop +/* 0368E4 80035CE4 8E300064 */ lw $s0, 0x64($s1) +/* 0368E8 80035CE8 00000000 */ nop +/* 0368EC 80035CEC 820C01D3 */ lb $t4, 0x1d3($s0) +/* 0368F0 80035CF0 00000000 */ nop +/* 0368F4 80035CF4 2981000F */ slti $at, $t4, 0xf +/* 0368F8 80035CF8 1020003B */ beqz $at, .L80035DE8 +/* 0368FC 80035CFC 8FAC0054 */ lw $t4, 0x54($sp) +/* 036900 80035D00 820D01E2 */ lb $t5, 0x1e2($s0) +/* 036904 80035D04 00000000 */ nop +/* 036908 80035D08 11A00037 */ beqz $t5, .L80035DE8 +/* 03690C 80035D0C 8FAC0054 */ lw $t4, 0x54($sp) +/* 036910 80035D10 C624000C */ lwc1 $f4, 0xc($s1) +/* 036914 80035D14 C646000C */ lwc1 $f6, 0xc($s2) +/* 036918 80035D18 C6280010 */ lwc1 $f8, 0x10($s1) +/* 03691C 80035D1C 46062001 */ sub.s $f0, $f4, $f6 +/* 036920 80035D20 C64A0010 */ lwc1 $f10, 0x10($s2) +/* 036924 80035D24 46000102 */ mul.s $f4, $f0, $f0 +/* 036928 80035D28 460A4081 */ sub.s $f2, $f8, $f10 +/* 03692C 80035D2C C6300014 */ lwc1 $f16, 0x14($s1) +/* 036930 80035D30 C6520014 */ lwc1 $f18, 0x14($s2) +/* 036934 80035D34 46021182 */ mul.s $f6, $f2, $f2 +/* 036938 80035D38 46128381 */ sub.s $f14, $f16, $f18 +/* 03693C 80035D3C 460E7282 */ mul.s $f10, $f14, $f14 +/* 036940 80035D40 46062200 */ add.s $f8, $f4, $f6 +/* 036944 80035D44 0C0326B4 */ jal sqrtf +/* 036948 80035D48 460A4300 */ add.s $f12, $f8, $f10 +/* 03694C 80035D4C 444EF800 */ cfc1 $t6, $31 +/* 036950 80035D50 8E580078 */ lw $t8, 0x78($s2) +/* 036954 80035D54 35C10003 */ ori $at, $t6, 3 +/* 036958 80035D58 38210002 */ xori $at, $at, 2 +/* 03695C 80035D5C 44C1F800 */ ctc1 $at, $31 +/* 036960 80035D60 00000000 */ nop +/* 036964 80035D64 46000424 */ cvt.w.s $f16, $f0 +/* 036968 80035D68 440F8000 */ mfc1 $t7, $f16 +/* 03696C 80035D6C 44CEF800 */ ctc1 $t6, $31 +/* 036970 80035D70 01F8082A */ slt $at, $t7, $t8 +/* 036974 80035D74 1020001C */ beqz $at, .L80035DE8 +/* 036978 80035D78 8FAC0054 */ lw $t4, 0x54($sp) +/* 03697C 80035D7C 86190000 */ lh $t9, ($s0) +/* 036980 80035D80 24040107 */ li $a0, 263 +/* 036984 80035D84 12B90006 */ beq $s5, $t9, .L80035DA0 +/* 036988 80035D88 00000000 */ nop +/* 03698C 80035D8C 8E25000C */ lw $a1, 0xc($s1) +/* 036990 80035D90 8E260010 */ lw $a2, 0x10($s1) +/* 036994 80035D94 8E270014 */ lw $a3, 0x14($s1) +/* 036998 80035D98 0C0007AA */ jal func_80001EA8 +/* 03699C 80035D9C AFA00010 */ sw $zero, 0x10($sp) +.L80035DA0: +/* 0369A0 80035DA0 0C00322D */ jal func_8000C8B4 +/* 0369A4 80035DA4 2404002D */ li $a0, 45 +/* 0369A8 80035DA8 9208020C */ lbu $t0, 0x20c($s0) +/* 0369AC 80035DAC A20201D3 */ sb $v0, 0x1d3($s0) +/* 0369B0 80035DB0 11000005 */ beqz $t0, .L80035DC8 +/* 0369B4 80035DB4 A2160203 */ sb $s6, 0x203($s0) +/* 0369B8 80035DB8 82090203 */ lb $t1, 0x203($s0) +/* 0369BC 80035DBC 00000000 */ nop +/* 0369C0 80035DC0 352A0004 */ ori $t2, $t1, 4 +/* 0369C4 80035DC4 A20A0203 */ sb $t2, 0x203($s0) +.L80035DC8: +/* 0369C8 80035DC8 820B01D8 */ lb $t3, 0x1d8($s0) +/* 0369CC 80035DCC 00000000 */ nop +/* 0369D0 80035DD0 15600005 */ bnez $t3, .L80035DE8 +/* 0369D4 80035DD4 8FAC0054 */ lw $t4, 0x54($sp) +/* 0369D8 80035DD8 86040000 */ lh $a0, ($s0) +/* 0369DC 80035DDC 0C01C8D2 */ jal func_80072348 +/* 0369E0 80035DE0 24050008 */ li $a1, 8 +/* 0369E4 80035DE4 8FAC0054 */ lw $t4, 0x54($sp) +.L80035DE8: +/* 0369E8 80035DE8 26730001 */ addiu $s3, $s3, 1 +/* 0369EC 80035DEC 026C082A */ slt $at, $s3, $t4 +/* 0369F0 80035DF0 1420FFBA */ bnez $at, .L80035CDC +/* 0369F4 80035DF4 26940004 */ addiu $s4, $s4, 4 +.L80035DF8: +/* 0369F8 80035DF8 8FBF003C */ lw $ra, 0x3c($sp) +.L80035DFC: +/* 0369FC 80035DFC 8FB00020 */ lw $s0, 0x20($sp) +/* 036A00 80035E00 8FB10024 */ lw $s1, 0x24($sp) +/* 036A04 80035E04 8FB20028 */ lw $s2, 0x28($sp) +/* 036A08 80035E08 8FB3002C */ lw $s3, 0x2c($sp) +/* 036A0C 80035E0C 8FB40030 */ lw $s4, 0x30($sp) +/* 036A10 80035E10 8FB50034 */ lw $s5, 0x34($sp) +/* 036A14 80035E14 8FB60038 */ lw $s6, 0x38($sp) +/* 036A18 80035E18 03E00008 */ jr $ra +/* 036A1C 80035E1C 27BD0068 */ addiu $sp, $sp, 0x68 + diff --git a/asm/non_matchings/unknown_032760/func_80035E20.s b/asm/non_matchings/unknown_032760/func_80035E20.s new file mode 100644 index 00000000..48711ec3 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80035E20.s @@ -0,0 +1,7 @@ +glabel func_80035E20 +/* 036A20 80035E20 AFA50004 */ sw $a1, 4($sp) +/* 036A24 80035E24 8C8E0040 */ lw $t6, 0x40($a0) +/* 036A28 80035E28 AC800078 */ sw $zero, 0x78($a0) +/* 036A2C 80035E2C 03E00008 */ jr $ra +/* 036A30 80035E30 AC8E007C */ sw $t6, 0x7c($a0) + diff --git a/asm/non_matchings/unknown_032760/func_80035E34.s b/asm/non_matchings/unknown_032760/func_80035E34.s new file mode 100644 index 00000000..abac12f7 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80035E34.s @@ -0,0 +1,54 @@ +glabel func_80035E34 +/* 036A34 80035E34 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 036A38 80035E38 AFBF001C */ sw $ra, 0x1c($sp) +/* 036A3C 80035E3C AFB00018 */ sw $s0, 0x18($sp) +/* 036A40 80035E40 AFA50024 */ sw $a1, 0x24($sp) +/* 036A44 80035E44 240E0028 */ li $t6, 40 +/* 036A48 80035E48 00808025 */ move $s0, $a0 +/* 036A4C 80035E4C A080003B */ sb $zero, 0x3b($a0) +/* 036A50 80035E50 0C0044E7 */ jal func_8001139C +/* 036A54 80035E54 A48E0018 */ sh $t6, 0x18($a0) +/* 036A58 80035E58 14400006 */ bnez $v0, .L80035E74 +/* 036A5C 80035E5C 00000000 */ nop +/* 036A60 80035E60 8E0F0078 */ lw $t7, 0x78($s0) +/* 036A64 80035E64 8FB80024 */ lw $t8, 0x24($sp) +/* 036A68 80035E68 00000000 */ nop +/* 036A6C 80035E6C 01F8C821 */ addu $t9, $t7, $t8 +/* 036A70 80035E70 AE190078 */ sw $t9, 0x78($s0) +.L80035E74: +/* 036A74 80035E74 0C016790 */ jal func_80059E40 +/* 036A78 80035E78 02002025 */ move $a0, $s0 +/* 036A7C 80035E7C 8FA50024 */ lw $a1, 0x24($sp) +/* 036A80 80035E80 0C02BF0F */ jal func_800AFC3C +/* 036A84 80035E84 02002025 */ move $a0, $s0 +/* 036A88 80035E88 0C006EB2 */ jal func_8001BAC8 +/* 036A8C 80035E8C 00002025 */ move $a0, $zero +/* 036A90 80035E90 8E030060 */ lw $v1, 0x60($s0) +/* 036A94 80035E94 24050001 */ li $a1, 1 +/* 036A98 80035E98 8C680000 */ lw $t0, ($v1) +/* 036A9C 80035E9C 8C440064 */ lw $a0, 0x64($v0) +/* 036AA0 80035EA0 14A80012 */ bne $a1, $t0, .L80035EEC +/* 036AA4 80035EA4 8FBF001C */ lw $ra, 0x1c($sp) +/* 036AA8 80035EA8 808201D6 */ lb $v0, 0x1d6($a0) +/* 036AAC 80035EAC 24010002 */ li $at, 2 +/* 036AB0 80035EB0 10450003 */ beq $v0, $a1, .L80035EC0 +/* 036AB4 80035EB4 00000000 */ nop +/* 036AB8 80035EB8 1441000C */ bne $v0, $at, .L80035EEC +/* 036ABC 80035EBC 8FBF001C */ lw $ra, 0x1c($sp) +.L80035EC0: +/* 036AC0 80035EC0 8C620004 */ lw $v0, 4($v1) +/* 036AC4 80035EC4 24094000 */ li $t1, 16384 +/* 036AC8 80035EC8 804A003A */ lb $t2, 0x3a($v0) +/* 036ACC 80035ECC A4490000 */ sh $t1, ($v0) +/* 036AD0 80035ED0 254B0001 */ addiu $t3, $t2, 1 +/* 036AD4 80035ED4 A04B003A */ sb $t3, 0x3a($v0) +/* 036AD8 80035ED8 804C003A */ lb $t4, 0x3a($v0) +/* 036ADC 80035EDC 00000000 */ nop +/* 036AE0 80035EE0 318D0001 */ andi $t5, $t4, 1 +/* 036AE4 80035EE4 A04D003A */ sb $t5, 0x3a($v0) +/* 036AE8 80035EE8 8FBF001C */ lw $ra, 0x1c($sp) +.L80035EEC: +/* 036AEC 80035EEC 8FB00018 */ lw $s0, 0x18($sp) +/* 036AF0 80035EF0 03E00008 */ jr $ra +/* 036AF4 80035EF4 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_032760/func_80035EF8.s b/asm/non_matchings/unknown_032760/func_80035EF8.s new file mode 100644 index 00000000..2ec02ffc --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80035EF8.s @@ -0,0 +1,32 @@ +glabel func_80035EF8 +/* 036AF8 80035EF8 84AE000E */ lh $t6, 0xe($a1) +/* 036AFC 80035EFC 240FFFFF */ li $t7, -1 +/* 036B00 80035F00 AC8F007C */ sw $t7, 0x7c($a0) +/* 036B04 80035F04 AC8E0078 */ sw $t6, 0x78($a0) +/* 036B08 80035F08 84B9000C */ lh $t9, 0xc($a1) +/* 036B0C 80035F0C 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 036B10 80035F10 00194280 */ sll $t0, $t9, 0xa +/* 036B14 80035F14 A4880000 */ sh $t0, ($a0) +/* 036B18 80035F18 84A9000A */ lh $t1, 0xa($a1) +/* 036B1C 80035F1C 44811000 */ mtc1 $at, $f2 +/* 036B20 80035F20 312A00FF */ andi $t2, $t1, 0xff +/* 036B24 80035F24 448A2000 */ mtc1 $t2, $f4 +/* 036B28 80035F28 3C014280 */ li $at, 0x42800000 # 64.000000 +/* 036B2C 80035F2C 46802020 */ cvt.s.w $f0, $f4 +/* 036B30 80035F30 44813000 */ mtc1 $at, $f6 +/* 036B34 80035F34 4602003C */ c.lt.s $f0, $f2 +/* 036B38 80035F38 00000000 */ nop +/* 036B3C 80035F3C 45000003 */ bc1f .L80035F4C +/* 036B40 80035F40 00000000 */ nop +/* 036B44 80035F44 46001006 */ mov.s $f0, $f2 +/* 036B48 80035F48 00000000 */ nop +.L80035F4C: +/* 036B4C 80035F4C 46060003 */ div.s $f0, $f0, $f6 +/* 036B50 80035F50 8C8B0040 */ lw $t3, 0x40($a0) +/* 036B54 80035F54 00000000 */ nop +/* 036B58 80035F58 C568000C */ lwc1 $f8, 0xc($t3) +/* 036B5C 80035F5C 00000000 */ nop +/* 036B60 80035F60 46004282 */ mul.s $f10, $f8, $f0 +/* 036B64 80035F64 03E00008 */ jr $ra +/* 036B68 80035F68 E48A0008 */ swc1 $f10, 8($a0) + diff --git a/asm/non_matchings/unknown_032760/func_80035F6C.s b/asm/non_matchings/unknown_032760/func_80035F6C.s new file mode 100644 index 00000000..0401a283 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80035F6C.s @@ -0,0 +1,59 @@ +glabel func_80035F6C +/* 036B6C 80035F6C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 036B70 80035F70 AFBF0014 */ sw $ra, 0x14($sp) +/* 036B74 80035F74 AFA5001C */ sw $a1, 0x1c($sp) +/* 036B78 80035F78 8C8E007C */ lw $t6, 0x7c($a0) +/* 036B7C 80035F7C 00803025 */ move $a2, $a0 +/* 036B80 80035F80 05C1002C */ bgez $t6, .L80036034 +/* 036B84 80035F84 8FBF0014 */ lw $ra, 0x14($sp) +/* 036B88 80035F88 8C840078 */ lw $a0, 0x78($a0) +/* 036B8C 80035F8C 0C006EB2 */ jal func_8001BAC8 +/* 036B90 80035F90 AFA60018 */ sw $a2, 0x18($sp) +/* 036B94 80035F94 8FA60018 */ lw $a2, 0x18($sp) +/* 036B98 80035F98 10400025 */ beqz $v0, .L80036030 +/* 036B9C 80035F9C 3C18800E */ lui $t8, %hi(D_800DC980) # $t8, 0x800e +/* 036BA0 80035FA0 8C440064 */ lw $a0, 0x64($v0) +/* 036BA4 80035FA4 8CC30064 */ lw $v1, 0x64($a2) +/* 036BA8 80035FA8 808F0003 */ lb $t7, 3($a0) +/* 036BAC 80035FAC 2718C980 */ addiu $t8, %lo(D_800DC980) # addiu $t8, $t8, -0x3680 +/* 036BB0 80035FB0 05E00004 */ bltz $t7, .L80035FC4 +/* 036BB4 80035FB4 ACCF007C */ sw $t7, 0x7c($a2) +/* 036BB8 80035FB8 29E1000A */ slti $at, $t7, 0xa +/* 036BBC 80035FBC 14200002 */ bnez $at, .L80035FC8 +/* 036BC0 80035FC0 00000000 */ nop +.L80035FC4: +/* 036BC4 80035FC4 ACC0007C */ sw $zero, 0x7c($a2) +.L80035FC8: +/* 036BC8 80035FC8 AC780020 */ sw $t8, 0x20($v1) +/* 036BCC 80035FCC 8CC8007C */ lw $t0, 0x7c($a2) +/* 036BD0 80035FD0 8CD90068 */ lw $t9, 0x68($a2) +/* 036BD4 80035FD4 00084880 */ sll $t1, $t0, 2 +/* 036BD8 80035FD8 03295021 */ addu $t2, $t9, $t1 +/* 036BDC 80035FDC 8D4B0000 */ lw $t3, ($t2) +/* 036BE0 80035FE0 3C0E4000 */ lui $t6, (0x40000103 >> 16) # lui $t6, 0x4000 +/* 036BE4 80035FE4 AC6B0024 */ sw $t3, 0x24($v1) +/* 036BE8 80035FE8 91620000 */ lbu $v0, ($t3) +/* 036BEC 80035FEC 91640001 */ lbu $a0, 1($t3) +/* 036BF0 80035FF0 2442FFFF */ addiu $v0, $v0, -1 +/* 036BF4 80035FF4 2484FFFF */ addiu $a0, $a0, -1 +/* 036BF8 80035FF8 00026540 */ sll $t4, $v0, 0x15 +/* 036BFC 80035FFC 00046940 */ sll $t5, $a0, 5 +/* 036C00 80036000 3C0F4001 */ lui $t7, (0x40010203 >> 16) # lui $t7, 0x4001 +/* 036C04 80036004 35CE0103 */ ori $t6, (0x40000103 & 0xFFFF) # ori $t6, $t6, 0x103 +/* 036C08 80036008 35EF0203 */ ori $t7, (0x40010203 & 0xFFFF) # ori $t7, $t7, 0x203 +/* 036C0C 8003600C 018DC025 */ or $t8, $t4, $t5 +/* 036C10 80036010 AC6E0000 */ sw $t6, ($v1) +/* 036C14 80036014 AC600004 */ sw $zero, 4($v1) +/* 036C18 80036018 AC6C0008 */ sw $t4, 8($v1) +/* 036C1C 8003601C AC6D000C */ sw $t5, 0xc($v1) +/* 036C20 80036020 AC6F0010 */ sw $t7, 0x10($v1) +/* 036C24 80036024 AC6C0014 */ sw $t4, 0x14($v1) +/* 036C28 80036028 AC780018 */ sw $t8, 0x18($v1) +/* 036C2C 8003602C AC6D001C */ sw $t5, 0x1c($v1) +.L80036030: +/* 036C30 80036030 8FBF0014 */ lw $ra, 0x14($sp) +.L80036034: +/* 036C34 80036034 27BD0018 */ addiu $sp, $sp, 0x18 +/* 036C38 80036038 03E00008 */ jr $ra +/* 036C3C 8003603C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80036040.s b/asm/non_matchings/unknown_032760/func_80036040.s new file mode 100644 index 00000000..be3f2a6d --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80036040.s @@ -0,0 +1,88 @@ +glabel func_80036040 +/* 036C40 80036040 27BDFF68 */ addiu $sp, $sp, -0x98 +/* 036C44 80036044 AFBF002C */ sw $ra, 0x2c($sp) +/* 036C48 80036048 AFB00028 */ sw $s0, 0x28($sp) +/* 036C4C 8003604C 8C83004C */ lw $v1, 0x4c($a0) +/* 036C50 80036050 00808025 */ move $s0, $a0 +/* 036C54 80036054 906E0013 */ lbu $t6, 0x13($v1) +/* 036C58 80036058 00000000 */ nop +/* 036C5C 8003605C 29C10028 */ slti $at, $t6, 0x28 +/* 036C60 80036060 10200049 */ beqz $at, .L80036188 +/* 036C64 80036064 8FBF002C */ lw $ra, 0x2c($sp) +/* 036C68 80036068 8C620000 */ lw $v0, ($v1) +/* 036C6C 8003606C 24070001 */ li $a3, 1 +/* 036C70 80036070 8C4F0040 */ lw $t7, 0x40($v0) +/* 036C74 80036074 00000000 */ nop +/* 036C78 80036078 81F80054 */ lb $t8, 0x54($t7) +/* 036C7C 8003607C 00000000 */ nop +/* 036C80 80036080 14F80041 */ bne $a3, $t8, .L80036188 +/* 036C84 80036084 8FBF002C */ lw $ra, 0x2c($sp) +/* 036C88 80036088 8C430064 */ lw $v1, 0x64($v0) +/* 036C8C 8003608C 00000000 */ nop +/* 036C90 80036090 8C790144 */ lw $t9, 0x144($v1) +/* 036C94 80036094 00000000 */ nop +/* 036C98 80036098 1720003B */ bnez $t9, .L80036188 +/* 036C9C 8003609C 8FBF002C */ lw $ra, 0x2c($sp) +/* 036CA0 800360A0 A0A7000B */ sb $a3, 0xb($a1) +/* 036CA4 800360A4 84880006 */ lh $t0, 6($a0) +/* 036CA8 800360A8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 036CAC 800360AC 35094000 */ ori $t1, $t0, 0x4000 +/* 036CB0 800360B0 A4890006 */ sh $t1, 6($a0) +/* 036CB4 800360B4 AC640144 */ sw $a0, 0x144($v1) +/* 036CB8 800360B8 844A0000 */ lh $t2, ($v0) +/* 036CBC 800360BC 44812000 */ mtc1 $at, $f4 +/* 036CC0 800360C0 000A5823 */ negu $t3, $t2 +/* 036CC4 800360C4 A7AB0038 */ sh $t3, 0x38($sp) +/* 036CC8 800360C8 844C0002 */ lh $t4, 2($v0) +/* 036CCC 800360CC 27A40050 */ addiu $a0, $sp, 0x50 +/* 036CD0 800360D0 000C6823 */ negu $t5, $t4 +/* 036CD4 800360D4 A7AD003A */ sh $t5, 0x3a($sp) +/* 036CD8 800360D8 844E0004 */ lh $t6, 4($v0) +/* 036CDC 800360DC E7A40040 */ swc1 $f4, 0x40($sp) +/* 036CE0 800360E0 000E7823 */ negu $t7, $t6 +/* 036CE4 800360E4 A7AF003C */ sh $t7, 0x3c($sp) +/* 036CE8 800360E8 C446000C */ lwc1 $f6, 0xc($v0) +/* 036CEC 800360EC 27A50038 */ addiu $a1, $sp, 0x38 +/* 036CF0 800360F0 46003207 */ neg.s $f8, $f6 +/* 036CF4 800360F4 E7A80044 */ swc1 $f8, 0x44($sp) +/* 036CF8 800360F8 C44A0010 */ lwc1 $f10, 0x10($v0) +/* 036CFC 800360FC 00000000 */ nop +/* 036D00 80036100 46005407 */ neg.s $f16, $f10 +/* 036D04 80036104 E7B00048 */ swc1 $f16, 0x48($sp) +/* 036D08 80036108 C4520014 */ lwc1 $f18, 0x14($v0) +/* 036D0C 8003610C AFA20090 */ sw $v0, 0x90($sp) +/* 036D10 80036110 46009107 */ neg.s $f4, $f18 +/* 036D14 80036114 0C01BF9D */ jal func_8006FE74 +/* 036D18 80036118 E7A4004C */ swc1 $f4, 0x4c($sp) +/* 036D1C 8003611C 8E05000C */ lw $a1, 0xc($s0) +/* 036D20 80036120 8E060010 */ lw $a2, 0x10($s0) +/* 036D24 80036124 8E070014 */ lw $a3, 0x14($s0) +/* 036D28 80036128 2618000C */ addiu $t8, $s0, 0xc +/* 036D2C 8003612C 26190010 */ addiu $t9, $s0, 0x10 +/* 036D30 80036130 26080014 */ addiu $t0, $s0, 0x14 +/* 036D34 80036134 AFA80018 */ sw $t0, 0x18($sp) +/* 036D38 80036138 AFB90014 */ sw $t9, 0x14($sp) +/* 036D3C 8003613C AFB80010 */ sw $t8, 0x10($sp) +/* 036D40 80036140 0C01BD93 */ jal func_8006F64C +/* 036D44 80036144 27A40050 */ addiu $a0, $sp, 0x50 +/* 036D48 80036148 8FA20090 */ lw $v0, 0x90($sp) +/* 036D4C 8003614C C606000C */ lwc1 $f6, 0xc($s0) +/* 036D50 80036150 C4480008 */ lwc1 $f8, 8($v0) +/* 036D54 80036154 C6100010 */ lwc1 $f16, 0x10($s0) +/* 036D58 80036158 46083283 */ div.s $f10, $f6, $f8 +/* 036D5C 8003615C C6060014 */ lwc1 $f6, 0x14($s0) +/* 036D60 80036160 E60A000C */ swc1 $f10, 0xc($s0) +/* 036D64 80036164 C4520008 */ lwc1 $f18, 8($v0) +/* 036D68 80036168 00000000 */ nop +/* 036D6C 8003616C 46128103 */ div.s $f4, $f16, $f18 +/* 036D70 80036170 E6040010 */ swc1 $f4, 0x10($s0) +/* 036D74 80036174 C4480008 */ lwc1 $f8, 8($v0) +/* 036D78 80036178 00000000 */ nop +/* 036D7C 8003617C 46083283 */ div.s $f10, $f6, $f8 +/* 036D80 80036180 E60A0014 */ swc1 $f10, 0x14($s0) +/* 036D84 80036184 8FBF002C */ lw $ra, 0x2c($sp) +.L80036188: +/* 036D88 80036188 8FB00028 */ lw $s0, 0x28($sp) +/* 036D8C 8003618C 03E00008 */ jr $ra +/* 036D90 80036190 27BD0098 */ addiu $sp, $sp, 0x98 + diff --git a/asm/non_matchings/unknown_032760/func_80036194.s b/asm/non_matchings/unknown_032760/func_80036194.s new file mode 100644 index 00000000..97f3a120 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80036194.s @@ -0,0 +1,21 @@ +glabel func_80036194 +/* 036D94 80036194 AFA50004 */ sw $a1, 4($sp) +/* 036D98 80036198 8C8F004C */ lw $t7, 0x4c($a0) +/* 036D9C 8003619C 240E0001 */ li $t6, 1 +/* 036DA0 800361A0 A5EE0014 */ sh $t6, 0x14($t7) +/* 036DA4 800361A4 8C98004C */ lw $t8, 0x4c($a0) +/* 036DA8 800361A8 2419001E */ li $t9, 30 +/* 036DAC 800361AC A3000011 */ sb $zero, 0x11($t8) +/* 036DB0 800361B0 8C88004C */ lw $t0, 0x4c($a0) +/* 036DB4 800361B4 44802000 */ mtc1 $zero, $f4 +/* 036DB8 800361B8 A1190010 */ sb $t9, 0x10($t0) +/* 036DBC 800361BC 8C89004C */ lw $t1, 0x4c($a0) +/* 036DC0 800361C0 240A00FF */ li $t2, 255 +/* 036DC4 800361C4 A1200012 */ sb $zero, 0x12($t1) +/* 036DC8 800361C8 8C820064 */ lw $v0, 0x64($a0) +/* 036DCC 800361CC 3C018012 */ lui $at, 0x8012 +/* 036DD0 800361D0 A04A000D */ sb $t2, 0xd($v0) +/* 036DD4 800361D4 E4440000 */ swc1 $f4, ($v0) +/* 036DD8 800361D8 03E00008 */ jr $ra +/* 036DDC 800361DC AC20D4D8 */ sw $zero, -0x2b28($at) + diff --git a/asm/non_matchings/unknown_032760/func_800361E0.s b/asm/non_matchings/unknown_032760/func_800361E0.s new file mode 100644 index 00000000..0b930458 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800361E0.s @@ -0,0 +1,679 @@ +glabel func_800361E0 +/* 036DE0 800361E0 27BDFF80 */ addiu $sp, $sp, -0x80 +/* 036DE4 800361E4 44853000 */ mtc1 $a1, $f6 +/* 036DE8 800361E8 AFBF002C */ sw $ra, 0x2c($sp) +/* 036DEC 800361EC AFB10028 */ sw $s1, 0x28($sp) +/* 036DF0 800361F0 AFB00024 */ sw $s0, 0x24($sp) +/* 036DF4 800361F4 AFA50084 */ sw $a1, 0x84($sp) +/* 036DF8 800361F8 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 +/* 036DFC 800361FC 46803020 */ cvt.s.w $f0, $f6 +/* 036E00 80036200 C4840010 */ lwc1 $f4, 0x10($a0) +/* 036E04 80036204 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) +/* 036E08 80036208 00808025 */ move $s0, $a0 +/* 036E0C 8003620C 46000086 */ mov.s $f2, $f0 +/* 036E10 80036210 15E00007 */ bnez $t7, .L80036230 +/* 036E14 80036214 E7A4006C */ swc1 $f4, 0x6c($sp) +/* 036E18 80036218 3C01800E */ lui $at, %hi(D_800E602C) # $at, 0x800e +/* 036E1C 8003621C C42B6028 */ lwc1 $f11, %lo(D_800E6028)($at) +/* 036E20 80036220 C42A602C */ lwc1 $f10, %lo(D_800E602C)($at) +/* 036E24 80036224 46000221 */ cvt.d.s $f8, $f0 +/* 036E28 80036228 462A4482 */ mul.d $f18, $f8, $f10 +/* 036E2C 8003622C 462090A0 */ cvt.s.d $f2, $f18 +.L80036230: +/* 036E30 80036230 86180018 */ lh $t8, 0x18($s0) +/* 036E34 80036234 8E110064 */ lw $s1, 0x64($s0) +/* 036E38 80036238 1700000D */ bnez $t8, .L80036270 +/* 036E3C 8003623C 00000000 */ nop +/* 036E40 80036240 C6260004 */ lwc1 $f6, 4($s1) +/* 036E44 80036244 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 036E48 80036248 44812800 */ mtc1 $at, $f5 +/* 036E4C 8003624C 44802000 */ mtc1 $zero, $f4 +/* 036E50 80036250 46003221 */ cvt.d.s $f8, $f6 +/* 036E54 80036254 4628203C */ c.lt.d $f4, $f8 +/* 036E58 80036258 00000000 */ nop +/* 036E5C 8003625C 45000004 */ bc1f .L80036270 +/* 036E60 80036260 00000000 */ nop +/* 036E64 80036264 44805000 */ mtc1 $zero, $f10 +/* 036E68 80036268 00000000 */ nop +/* 036E6C 8003626C E62A0004 */ swc1 $f10, 4($s1) +.L80036270: +/* 036E70 80036270 0C01AF6C */ jal func_8006BDB0 +/* 036E74 80036274 E7A2007C */ swc1 $f2, 0x7c($sp) +/* 036E78 80036278 44800000 */ mtc1 $zero, $f0 +/* 036E7C 8003627C AFA2004C */ sw $v0, 0x4c($sp) +/* 036E80 80036280 E7A00070 */ swc1 $f0, 0x70($sp) +/* 036E84 80036284 00002025 */ move $a0, $zero +/* 036E88 80036288 E600001C */ swc1 $f0, 0x1c($s0) +/* 036E8C 8003628C 0C006EB2 */ jal func_8001BAC8 +/* 036E90 80036290 E6000024 */ swc1 $f0, 0x24($s0) +/* 036E94 80036294 00402825 */ move $a1, $v0 +/* 036E98 80036298 10400042 */ beqz $v0, .L800363A4 +/* 036E9C 8003629C AFA20064 */ sw $v0, 0x64($sp) +/* 036EA0 800362A0 8C420064 */ lw $v0, 0x64($v0) +/* 036EA4 800362A4 3C014248 */ li $at, 0x42480000 # 50.000000 +/* 036EA8 800362A8 44810000 */ mtc1 $at, $f0 +/* 036EAC 800362AC C4460038 */ lwc1 $f6, 0x38($v0) +/* 036EB0 800362B0 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 036EB4 800362B4 46003102 */ mul.s $f4, $f6, $f0 +/* 036EB8 800362B8 44811000 */ mtc1 $at, $f2 +/* 036EBC 800362BC C44A0050 */ lwc1 $f10, 0x50($v0) +/* 036EC0 800362C0 C4B2000C */ lwc1 $f18, 0xc($a1) +/* 036EC4 800362C4 46025182 */ mul.s $f6, $f10, $f2 +/* 036EC8 800362C8 46049201 */ sub.s $f8, $f18, $f4 +/* 036ECC 800362CC C604000C */ lwc1 $f4, 0xc($s0) +/* 036ED0 800362D0 C4AA0014 */ lwc1 $f10, 0x14($a1) +/* 036ED4 800362D4 46064481 */ sub.s $f18, $f8, $f6 +/* 036ED8 800362D8 C4480040 */ lwc1 $f8, 0x40($v0) +/* 036EDC 800362DC 46049381 */ sub.s $f14, $f18, $f4 +/* 036EE0 800362E0 C4440058 */ lwc1 $f4, 0x58($v0) +/* 036EE4 800362E4 46004182 */ mul.s $f6, $f8, $f0 +/* 036EE8 800362E8 00000000 */ nop +/* 036EEC 800362EC 46022202 */ mul.s $f8, $f4, $f2 +/* 036EF0 800362F0 46065481 */ sub.s $f18, $f10, $f6 +/* 036EF4 800362F4 C6060014 */ lwc1 $f6, 0x14($s0) +/* 036EF8 800362F8 E7AE0078 */ swc1 $f14, 0x78($sp) +/* 036EFC 800362FC 46089281 */ sub.s $f10, $f18, $f8 +/* 036F00 80036300 AFA50064 */ sw $a1, 0x64($sp) +/* 036F04 80036304 460E7102 */ mul.s $f4, $f14, $f14 +/* 036F08 80036308 46065401 */ sub.s $f16, $f10, $f6 +/* 036F0C 8003630C AFA20050 */ sw $v0, 0x50($sp) +/* 036F10 80036310 E7B00074 */ swc1 $f16, 0x74($sp) +/* 036F14 80036314 46108482 */ mul.s $f18, $f16, $f16 +/* 036F18 80036318 0C0326B4 */ jal sqrtf +/* 036F1C 8003631C 46122300 */ add.s $f12, $f4, $f18 +/* 036F20 80036320 E7A00070 */ swc1 $f0, 0x70($sp) +/* 036F24 80036324 8FA20064 */ lw $v0, 0x64($sp) +/* 036F28 80036328 C6040014 */ lwc1 $f4, 0x14($s0) +/* 036F2C 8003632C C60A000C */ lwc1 $f10, 0xc($s0) +/* 036F30 80036330 C448000C */ lwc1 $f8, 0xc($v0) +/* 036F34 80036334 C4460014 */ lwc1 $f6, 0x14($v0) +/* 036F38 80036338 460A4301 */ sub.s $f12, $f8, $f10 +/* 036F3C 8003633C 0C01C1D4 */ jal func_80070750 +/* 036F40 80036340 46043381 */ sub.s $f14, $f6, $f4 +/* 036F44 80036344 8FB90064 */ lw $t9, 0x64($sp) +/* 036F48 80036348 34018001 */ li $at, 32769 +/* 036F4C 8003634C 87280000 */ lh $t0, ($t9) +/* 036F50 80036350 240C0001 */ li $t4, 1 +/* 036F54 80036354 3109FFFF */ andi $t1, $t0, 0xffff +/* 036F58 80036358 00491823 */ subu $v1, $v0, $t1 +/* 036F5C 8003635C 0061082A */ slt $at, $v1, $at +/* 036F60 80036360 14200004 */ bnez $at, .L80036374 +/* 036F64 80036364 28618000 */ slti $at, $v1, -0x8000 +/* 036F68 80036368 3C03FFFF */ lui $v1, (0xFFFF0001 >> 16) # lui $v1, 0xffff +/* 036F6C 8003636C 34630001 */ ori $v1, (0xFFFF0001 & 0xFFFF) # ori $v1, $v1, 1 +/* 036F70 80036370 28618000 */ slti $at, $v1, -0x8000 +.L80036374: +/* 036F74 80036374 10200003 */ beqz $at, .L80036384 +/* 036F78 80036378 8FAA0050 */ lw $t2, 0x50($sp) +/* 036F7C 8003637C 3403FFFF */ li $v1, 65535 +/* 036F80 80036380 8FAA0050 */ lw $t2, 0x50($sp) +.L80036384: +/* 036F84 80036384 AFA3005C */ sw $v1, 0x5c($sp) +/* 036F88 80036388 8D4B0108 */ lw $t3, 0x108($t2) +/* 036F8C 8003638C 00000000 */ nop +/* 036F90 80036390 11600004 */ beqz $t3, .L800363A4 +/* 036F94 80036394 00000000 */ nop +/* 036F98 80036398 AE000078 */ sw $zero, 0x78($s0) +/* 036F9C 8003639C AE0C007C */ sw $t4, 0x7c($s0) +/* 036FA0 800363A0 AFA3005C */ sw $v1, 0x5c($sp) +.L800363A4: +/* 036FA4 800363A4 0C01A955 */ jal func_8006A554 +/* 036FA8 800363A8 00002025 */ move $a0, $zero +/* 036FAC 800363AC 8E0D0078 */ lw $t5, 0x78($s0) +/* 036FB0 800363B0 8FA3005C */ lw $v1, 0x5c($sp) +/* 036FB4 800363B4 15A00047 */ bnez $t5, .L800364D4 +/* 036FB8 800363B8 3C01800E */ lui $at, %hi(D_800E6034) # $at, 0x800e +/* 036FBC 800363BC C7B20070 */ lwc1 $f18, 0x70($sp) +/* 036FC0 800363C0 C42B6030 */ lwc1 $f11, %lo(D_800E6030)($at) +/* 036FC4 800363C4 C42A6034 */ lwc1 $f10, %lo(D_800E6034)($at) +/* 036FC8 800363C8 46009221 */ cvt.d.s $f8, $f18 +/* 036FCC 800363CC 462A403C */ c.lt.d $f8, $f10 +/* 036FD0 800363D0 00000000 */ nop +/* 036FD4 800363D4 4500003F */ bc1f .L800364D4 +/* 036FD8 800363D8 00000000 */ nop +/* 036FDC 800363DC 8E0E007C */ lw $t6, 0x7c($s0) +/* 036FE0 800363E0 2861E001 */ slti $at, $v1, -0x1fff +/* 036FE4 800363E4 15C0003B */ bnez $t6, .L800364D4 +/* 036FE8 800363E8 00000000 */ nop +/* 036FEC 800363EC 14200039 */ bnez $at, .L800364D4 +/* 036FF0 800363F0 28612000 */ slti $at, $v1, 0x2000 +/* 036FF4 800363F4 10200037 */ beqz $at, .L800364D4 +/* 036FF8 800363F8 00000000 */ nop +/* 036FFC 800363FC 8E03004C */ lw $v1, 0x4c($s0) +/* 037000 80036400 8FB90064 */ lw $t9, 0x64($sp) +/* 037004 80036404 846F0014 */ lh $t7, 0x14($v1) +/* 037008 80036408 30492000 */ andi $t1, $v0, 0x2000 +/* 03700C 8003640C 31F80008 */ andi $t8, $t7, 8 +/* 037010 80036410 13000005 */ beqz $t8, .L80036428 +/* 037014 80036414 00000000 */ nop +/* 037018 80036418 8C680000 */ lw $t0, ($v1) +/* 03701C 8003641C 00000000 */ nop +/* 037020 80036420 13280003 */ beq $t9, $t0, .L80036430 +/* 037024 80036424 304A2000 */ andi $t2, $v0, 0x2000 +.L80036428: +/* 037028 80036428 1120002A */ beqz $t1, .L800364D4 +/* 03702C 8003642C 304A2000 */ andi $t2, $v0, 0x2000 +.L80036430: +/* 037030 80036430 11400006 */ beqz $t2, .L8003644C +/* 037034 80036434 240B0001 */ li $t3, 1 +/* 037038 80036438 8FA40064 */ lw $a0, 0x64($sp) +/* 03703C 8003643C 8FA50050 */ lw $a1, 0x50($sp) +/* 037040 80036440 0C015A4C */ jal func_80056930 +/* 037044 80036444 00000000 */ nop +/* 037048 80036448 240B0001 */ li $t3, 1 +.L8003644C: +/* 03704C 8003644C AE0B0078 */ sw $t3, 0x78($s0) +/* 037050 80036450 262C0012 */ addiu $t4, $s1, 0x12 +/* 037054 80036454 262D0013 */ addiu $t5, $s1, 0x13 +/* 037058 80036458 AFAD0014 */ sw $t5, 0x14($sp) +/* 03705C 8003645C AFAC0010 */ sw $t4, 0x10($sp) +/* 037060 80036460 00002025 */ move $a0, $zero +/* 037064 80036464 26250020 */ addiu $a1, $s1, 0x20 +/* 037068 80036468 26260022 */ addiu $a2, $s1, 0x22 +/* 03706C 8003646C 0C00C1D4 */ jal func_80030750 +/* 037070 80036470 26270011 */ addiu $a3, $s1, 0x11 +/* 037074 80036474 240E0384 */ li $t6, 900 +/* 037078 80036478 240F03E6 */ li $t7, 998 +/* 03707C 8003647C 241800F0 */ li $t8, 240 +/* 037080 80036480 AFB80018 */ sw $t8, 0x18($sp) +/* 037084 80036484 AFAF0014 */ sw $t7, 0x14($sp) +/* 037088 80036488 AFAE0010 */ sw $t6, 0x10($sp) +/* 03708C 8003648C 00002025 */ move $a0, $zero +/* 037090 80036490 24050080 */ li $a1, 128 +/* 037094 80036494 24060080 */ li $a2, 128 +/* 037098 80036498 0C00C378 */ jal func_80030DE0 +/* 03709C 8003649C 240700FF */ li $a3, 255 +/* 0370A0 800364A0 0C0004BA */ jal func_800012E8 +/* 0370A4 800364A4 00000000 */ nop +/* 0370A8 800364A8 0C0002CD */ jal func_80000B34 +/* 0370AC 800364AC 24040024 */ li $a0, 36 +/* 0370B0 800364B0 8FB90064 */ lw $t9, 0x64($sp) +/* 0370B4 800364B4 00000000 */ nop +/* 0370B8 800364B8 13200006 */ beqz $t9, .L800364D4 +/* 0370BC 800364BC 00000000 */ nop +/* 0370C0 800364C0 0C001AB2 */ jal func_80006AC8 +/* 0370C4 800364C4 03202025 */ move $a0, $t9 +/* 0370C8 800364C8 8FA80050 */ lw $t0, 0x50($sp) +/* 0370CC 800364CC 00000000 */ nop +/* 0370D0 800364D0 AD000118 */ sw $zero, 0x118($t0) +.L800364D4: +/* 0370D4 800364D4 8E020078 */ lw $v0, 0x78($s0) +/* 0370D8 800364D8 00000000 */ nop +/* 0370DC 800364DC 10400008 */ beqz $v0, .L80036500 +/* 0370E0 800364E0 28410002 */ slti $at, $v0, 2 +/* 0370E4 800364E4 0C0168EC */ jal func_8005A3B0 +/* 0370E8 800364E8 00000000 */ nop +/* 0370EC 800364EC 0C02AC65 */ jal func_800AB194 +/* 0370F0 800364F0 24040003 */ li $a0, 3 +/* 0370F4 800364F4 8E020078 */ lw $v0, 0x78($s0) +/* 0370F8 800364F8 00000000 */ nop +/* 0370FC 800364FC 28410002 */ slti $at, $v0, 2 +.L80036500: +/* 037100 80036500 14200005 */ bnez $at, .L80036518 +/* 037104 80036504 00000000 */ nop +/* 037108 80036508 0C0273FB */ jal func_8009CFEC +/* 03710C 8003650C 24040002 */ li $a0, 2 +/* 037110 80036510 10000004 */ b .L80036524 +/* 037114 80036514 00401825 */ move $v1, $v0 +.L80036518: +/* 037118 80036518 0C0273DA */ jal func_8009CF68 +/* 03711C 8003651C 24040002 */ li $a0, 2 +/* 037120 80036520 00001825 */ move $v1, $zero +.L80036524: +/* 037124 80036524 8E020078 */ lw $v0, 0x78($s0) +/* 037128 80036528 24010001 */ li $at, 1 +/* 03712C 8003652C 1041000A */ beq $v0, $at, .L80036558 +/* 037130 80036530 240900FF */ li $t1, 255 +/* 037134 80036534 24010002 */ li $at, 2 +/* 037138 80036538 10410078 */ beq $v0, $at, .L8003671C +/* 03713C 8003653C 24010003 */ li $at, 3 +/* 037140 80036540 104100C4 */ beq $v0, $at, .L80036854 +/* 037144 80036544 24010004 */ li $at, 4 +/* 037148 80036548 10410118 */ beq $v0, $at, .L800369AC +/* 03714C 8003654C 00000000 */ nop +/* 037150 80036550 10000127 */ b .L800369F0 +/* 037154 80036554 02202025 */ move $a0, $s1 +.L80036558: +/* 037158 80036558 A200003B */ sb $zero, 0x3b($s0) +/* 03715C 8003655C A229000D */ sb $t1, 0xd($s1) +/* 037160 80036560 C7A60070 */ lwc1 $f6, 0x70($sp) +/* 037164 80036564 3C014059 */ li $at, 0x40590000 # 3.390625 +/* 037168 80036568 44812800 */ mtc1 $at, $f5 +/* 03716C 8003656C 44802000 */ mtc1 $zero, $f4 +/* 037170 80036570 46003021 */ cvt.d.s $f0, $f6 +/* 037174 80036574 4624003C */ c.lt.d $f0, $f4 +/* 037178 80036578 00000000 */ nop +/* 03717C 8003657C 45000008 */ bc1f .L800365A0 +/* 037180 80036580 3C014024 */ lui $at, 0x4024 +/* 037184 80036584 E7A10038 */ swc1 $f1, 0x38($sp) +/* 037188 80036588 0C0168F0 */ jal func_8005A3C0 +/* 03718C 8003658C E7A0003C */ swc1 $f0, 0x3c($sp) +/* 037190 80036590 C7A10038 */ lwc1 $f1, 0x38($sp) +/* 037194 80036594 C7A0003C */ lwc1 $f0, 0x3c($sp) +/* 037198 80036598 00000000 */ nop +/* 03719C 8003659C 3C014024 */ li $at, 0x40240000 # 2.562500 +.L800365A0: +/* 0371A0 800365A0 44819800 */ mtc1 $at, $f19 +/* 0371A4 800365A4 44809000 */ mtc1 $zero, $f18 +/* 0371A8 800365A8 C7A80078 */ lwc1 $f8, 0x78($sp) +/* 0371AC 800365AC 4620903C */ c.lt.d $f18, $f0 +/* 0371B0 800365B0 C7AA0070 */ lwc1 $f10, 0x70($sp) +/* 0371B4 800365B4 45000046 */ bc1f .L800366D0 +/* 0371B8 800365B8 240D0002 */ li $t5, 2 +/* 0371BC 800365BC C7A60074 */ lwc1 $f6, 0x74($sp) +/* 0371C0 800365C0 460A4303 */ div.s $f12, $f8, $f10 +/* 0371C4 800365C4 0C01C1D4 */ jal func_80070750 +/* 0371C8 800365C8 460A3383 */ div.s $f14, $f6, $f10 +/* 0371CC 800365CC 86040000 */ lh $a0, ($s0) +/* 0371D0 800365D0 34018000 */ li $at, 32768 +/* 0371D4 800365D4 308AFFFF */ andi $t2, $a0, 0xffff +/* 0371D8 800365D8 004A1823 */ subu $v1, $v0, $t2 +/* 0371DC 800365DC 00611821 */ addu $v1, $v1, $at +/* 0371E0 800365E0 34018001 */ li $at, 32769 +/* 0371E4 800365E4 0061082A */ slt $at, $v1, $at +/* 0371E8 800365E8 14200003 */ bnez $at, .L800365F8 +/* 0371EC 800365EC 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 0371F0 800365F0 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 0371F4 800365F4 00611821 */ addu $v1, $v1, $at +.L800365F8: +/* 0371F8 800365F8 28618000 */ slti $at, $v1, -0x8000 +/* 0371FC 800365FC 10200002 */ beqz $at, .L80036608 +/* 037200 80036600 3401FFFF */ li $at, 65535 +/* 037204 80036604 00611821 */ addu $v1, $v1, $at +.L80036608: +/* 037208 80036608 18600004 */ blez $v1, .L8003661C +/* 03720C 8003660C 28610010 */ slti $at, $v1, 0x10 +/* 037210 80036610 10200003 */ beqz $at, .L80036620 +/* 037214 80036614 3C01C000 */ lui $at, 0xc000 +/* 037218 80036618 24030010 */ li $v1, 16 +.L8003661C: +/* 03721C 8003661C 3C01C000 */ li $at, 0xC0000000 # -2.000000 +.L80036620: +/* 037220 80036620 00035903 */ sra $t3, $v1, 4 +/* 037224 80036624 44811000 */ mtc1 $at, $f2 +/* 037228 80036628 008B6021 */ addu $t4, $a0, $t3 +/* 03722C 8003662C 28610801 */ slti $at, $v1, 0x801 +/* 037230 80036630 10200003 */ beqz $at, .L80036640 +/* 037234 80036634 A60C0000 */ sh $t4, ($s0) +/* 037238 80036638 2861F800 */ slti $at, $v1, -0x800 +/* 03723C 8003663C 10200003 */ beqz $at, .L8003664C +.L80036640: +/* 037240 80036640 3C01BF00 */ li $at, 0xBF000000 # -0.500000 +/* 037244 80036644 44811000 */ mtc1 $at, $f2 +/* 037248 80036648 00000000 */ nop +.L8003664C: +/* 03724C 8003664C C6200014 */ lwc1 $f0, 0x14($s1) +/* 037250 80036650 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 037254 80036654 46001101 */ sub.s $f4, $f2, $f0 +/* 037258 80036658 44814800 */ mtc1 $at, $f9 +/* 03725C 8003665C 44804000 */ mtc1 $zero, $f8 +/* 037260 80036660 460024A1 */ cvt.d.s $f18, $f4 +/* 037264 80036664 46289182 */ mul.d $f6, $f18, $f8 +/* 037268 80036668 460002A1 */ cvt.d.s $f10, $f0 +/* 03726C 8003666C 46265100 */ add.d $f4, $f10, $f6 +/* 037270 80036670 462024A0 */ cvt.s.d $f18, $f4 +/* 037274 80036674 E6320014 */ swc1 $f18, 0x14($s1) +/* 037278 80036678 86040000 */ lh $a0, ($s0) +/* 03727C 8003667C 0C01C1F1 */ jal func_800707C4 +/* 037280 80036680 00000000 */ nop +/* 037284 80036684 C6280014 */ lwc1 $f8, 0x14($s1) +/* 037288 80036688 86040000 */ lh $a0, ($s0) +/* 03728C 8003668C 46080282 */ mul.s $f10, $f0, $f8 +/* 037290 80036690 0C01C1FE */ jal func_800707F8 +/* 037294 80036694 E60A001C */ swc1 $f10, 0x1c($s0) +/* 037298 80036698 C6260014 */ lwc1 $f6, 0x14($s1) +/* 03729C 8003669C C7A2007C */ lwc1 $f2, 0x7c($sp) +/* 0372A0 800366A0 46060102 */ mul.s $f4, $f0, $f6 +/* 0372A4 800366A4 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 0372A8 800366A8 44814000 */ mtc1 $at, $f8 +/* 0372AC 800366AC E6040024 */ swc1 $f4, 0x24($s0) +/* 0372B0 800366B0 C6320014 */ lwc1 $f18, 0x14($s1) +/* 0372B4 800366B4 C6240004 */ lwc1 $f4, 4($s1) +/* 0372B8 800366B8 46089282 */ mul.s $f10, $f18, $f8 +/* 0372BC 800366BC 00000000 */ nop +/* 0372C0 800366C0 46025182 */ mul.s $f6, $f10, $f2 +/* 0372C4 800366C4 46062481 */ sub.s $f18, $f4, $f6 +/* 0372C8 800366C8 10000004 */ b .L800366DC +/* 0372CC 800366CC E6320004 */ swc1 $f18, 4($s1) +.L800366D0: +/* 0372D0 800366D0 AE0D0078 */ sw $t5, 0x78($s0) +/* 0372D4 800366D4 C7A2007C */ lwc1 $f2, 0x7c($sp) +/* 0372D8 800366D8 00000000 */ nop +.L800366DC: +/* 0372DC 800366DC C608001C */ lwc1 $f8, 0x1c($s0) +/* 0372E0 800366E0 C6040020 */ lwc1 $f4, 0x20($s0) +/* 0372E4 800366E4 46024282 */ mul.s $f10, $f8, $f2 +/* 0372E8 800366E8 C6120024 */ lwc1 $f18, 0x24($s0) +/* 0372EC 800366EC 02002025 */ move $a0, $s0 +/* 0372F0 800366F0 46022182 */ mul.s $f6, $f4, $f2 +/* 0372F4 800366F4 44055000 */ mfc1 $a1, $f10 +/* 0372F8 800366F8 46029202 */ mul.s $f8, $f18, $f2 +/* 0372FC 800366FC 44063000 */ mfc1 $a2, $f6 +/* 037300 80036700 44074000 */ mfc1 $a3, $f8 +/* 037304 80036704 0C00455C */ jal func_80011570 +/* 037308 80036708 00000000 */ nop +/* 03730C 8003670C 0C01BCE2 */ jal func_8006F388 +/* 037310 80036710 24040001 */ li $a0, 1 +/* 037314 80036714 100000E7 */ b .L80036AB4 +/* 037318 80036718 C7AA006C */ lwc1 $f10, 0x6c($sp) +.L8003671C: +/* 03731C 8003671C 0C0168F0 */ jal func_8005A3C0 +/* 037320 80036720 00000000 */ nop +/* 037324 80036724 C7A2007C */ lwc1 $f2, 0x7c($sp) +/* 037328 80036728 3C014008 */ li $at, 0x40080000 # 2.125000 +/* 03732C 8003672C 44815800 */ mtc1 $at, $f11 +/* 037330 80036730 44805000 */ mtc1 $zero, $f10 +/* 037334 80036734 46001121 */ cvt.d.s $f4, $f2 +/* 037338 80036738 46245182 */ mul.d $f6, $f10, $f4 +/* 03733C 8003673C A200003B */ sb $zero, 0x3b($s0) +/* 037340 80036740 C6320004 */ lwc1 $f18, 4($s1) +/* 037344 80036744 34018000 */ li $at, 32768 +/* 037348 80036748 46009221 */ cvt.d.s $f8, $f18 +/* 03734C 8003674C 46264280 */ add.d $f10, $f8, $f6 +/* 037350 80036750 46205120 */ cvt.s.d $f4, $f10 +/* 037354 80036754 E6240004 */ swc1 $f4, 4($s1) +/* 037358 80036758 8FAE0064 */ lw $t6, 0x64($sp) +/* 03735C 8003675C 86040000 */ lh $a0, ($s0) +/* 037360 80036760 85CF0000 */ lh $t7, ($t6) +/* 037364 80036764 3098FFFF */ andi $t8, $a0, 0xffff +/* 037368 80036768 01F81823 */ subu $v1, $t7, $t8 +/* 03736C 8003676C 00611821 */ addu $v1, $v1, $at +/* 037370 80036770 34018001 */ li $at, 32769 +/* 037374 80036774 0061082A */ slt $at, $v1, $at +/* 037378 80036778 14200003 */ bnez $at, .L80036788 +/* 03737C 8003677C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 037380 80036780 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 037384 80036784 00611821 */ addu $v1, $v1, $at +.L80036788: +/* 037388 80036788 28618000 */ slti $at, $v1, -0x8000 +/* 03738C 8003678C 10200002 */ beqz $at, .L80036798 +/* 037390 80036790 3401FFFF */ li $at, 65535 +/* 037394 80036794 00611821 */ addu $v1, $v1, $at +.L80036798: +/* 037398 80036798 18600004 */ blez $v1, .L800367AC +/* 03739C 8003679C 28610010 */ slti $at, $v1, 0x10 +/* 0373A0 800367A0 10200002 */ beqz $at, .L800367AC +/* 0373A4 800367A4 00000000 */ nop +/* 0373A8 800367A8 24030010 */ li $v1, 16 +.L800367AC: +/* 0373AC 800367AC 3C01800E */ lui $at, %hi(D_800E603C) # $at, 0x800e +/* 0373B0 800367B0 0003C903 */ sra $t9, $v1, 4 +/* 0373B4 800367B4 C4216038 */ lwc1 $f1, %lo(D_800E6038)($at) +/* 0373B8 800367B8 C420603C */ lwc1 $f0, %lo(D_800E603C)($at) +/* 0373BC 800367BC 00994021 */ addu $t0, $a0, $t9 +/* 0373C0 800367C0 A6080000 */ sh $t0, ($s0) +/* 0373C4 800367C4 C7B20078 */ lwc1 $f18, 0x78($sp) +/* 0373C8 800367C8 28610500 */ slti $at, $v1, 0x500 +/* 0373CC 800367CC 46009221 */ cvt.d.s $f8, $f18 +/* 0373D0 800367D0 46204182 */ mul.d $f6, $f8, $f0 +/* 0373D4 800367D4 462032A0 */ cvt.s.d $f10, $f6 +/* 0373D8 800367D8 E60A001C */ swc1 $f10, 0x1c($s0) +/* 0373DC 800367DC C7A40074 */ lwc1 $f4, 0x74($sp) +/* 0373E0 800367E0 00000000 */ nop +/* 0373E4 800367E4 460024A1 */ cvt.d.s $f18, $f4 +/* 0373E8 800367E8 46209202 */ mul.d $f8, $f18, $f0 +/* 0373EC 800367EC 462041A0 */ cvt.s.d $f6, $f8 +/* 0373F0 800367F0 1020000A */ beqz $at, .L8003681C +/* 0373F4 800367F4 E6060024 */ swc1 $f6, 0x24($s0) +/* 0373F8 800367F8 2861FB01 */ slti $at, $v1, -0x4ff +/* 0373FC 800367FC 14200007 */ bnez $at, .L8003681C +/* 037400 80036800 24090003 */ li $t1, 3 +/* 037404 80036804 AE090078 */ sw $t1, 0x78($s0) +/* 037408 80036808 24040141 */ li $a0, 321 +/* 03740C 8003680C 0C00DAF3 */ jal func_80036BCC +/* 037410 80036810 24050001 */ li $a1, 1 +/* 037414 80036814 C7A2007C */ lwc1 $f2, 0x7c($sp) +/* 037418 80036818 00000000 */ nop +.L8003681C: +/* 03741C 8003681C C60A001C */ lwc1 $f10, 0x1c($s0) +/* 037420 80036820 C6120020 */ lwc1 $f18, 0x20($s0) +/* 037424 80036824 46025102 */ mul.s $f4, $f10, $f2 +/* 037428 80036828 C6060024 */ lwc1 $f6, 0x24($s0) +/* 03742C 8003682C 02002025 */ move $a0, $s0 +/* 037430 80036830 46029202 */ mul.s $f8, $f18, $f2 +/* 037434 80036834 44052000 */ mfc1 $a1, $f4 +/* 037438 80036838 46023282 */ mul.s $f10, $f6, $f2 +/* 03743C 8003683C 44064000 */ mfc1 $a2, $f8 +/* 037440 80036840 44075000 */ mfc1 $a3, $f10 +/* 037444 80036844 0C00455C */ jal func_80011570 +/* 037448 80036848 00000000 */ nop +/* 03744C 8003684C 10000099 */ b .L80036AB4 +/* 037450 80036850 C7AA006C */ lwc1 $f10, 0x6c($sp) +.L80036854: +/* 037454 80036854 3C01800E */ lui $at, %hi(D_800E6044) # $at, 0x800e +/* 037458 80036858 C7A40078 */ lwc1 $f4, 0x78($sp) +/* 03745C 8003685C C4216040 */ lwc1 $f1, %lo(D_800E6040)($at) +/* 037460 80036860 C4206044 */ lwc1 $f0, %lo(D_800E6044)($at) +/* 037464 80036864 460024A1 */ cvt.d.s $f18, $f4 +/* 037468 80036868 46209202 */ mul.d $f8, $f18, $f0 +/* 03746C 8003686C 240A0001 */ li $t2, 1 +/* 037470 80036870 462041A0 */ cvt.s.d $f6, $f8 +/* 037474 80036874 E606001C */ swc1 $f6, 0x1c($s0) +/* 037478 80036878 C7AA0074 */ lwc1 $f10, 0x74($sp) +/* 03747C 8003687C A20A003B */ sb $t2, 0x3b($s0) +/* 037480 80036880 46005121 */ cvt.d.s $f4, $f10 +/* 037484 80036884 46202482 */ mul.d $f18, $f4, $f0 +/* 037488 80036888 46209220 */ cvt.s.d $f8, $f18 +/* 03748C 8003688C E6080024 */ swc1 $f8, 0x24($s0) +/* 037490 80036890 C6260004 */ lwc1 $f6, 4($s1) +/* 037494 80036894 C7A4007C */ lwc1 $f4, 0x7c($sp) +/* 037498 80036898 460032A1 */ cvt.d.s $f10, $f6 +/* 03749C 8003689C 460024A1 */ cvt.d.s $f18, $f4 +/* 0374A0 800368A0 46325200 */ add.d $f8, $f10, $f18 +/* 0374A4 800368A4 462041A0 */ cvt.s.d $f6, $f8 +/* 0374A8 800368A8 E6260004 */ swc1 $f6, 4($s1) +/* 0374AC 800368AC 0C0168F0 */ jal func_8005A3C0 +/* 0374B0 800368B0 AFA30058 */ sw $v1, 0x58($sp) +/* 0374B4 800368B4 8FA30058 */ lw $v1, 0x58($sp) +/* 0374B8 800368B8 24010003 */ li $at, 3 +/* 0374BC 800368BC 1461002A */ bne $v1, $at, .L80036968 +/* 0374C0 800368C0 240B0004 */ li $t3, 4 +/* 0374C4 800368C4 0C003932 */ jal func_8000E4C8 +/* 0374C8 800368C8 AE0B0078 */ sw $t3, 0x78($s0) +/* 0374CC 800368CC 10400006 */ beqz $v0, .L800368E8 +/* 0374D0 800368D0 24040143 */ li $a0, 323 +/* 0374D4 800368D4 24040142 */ li $a0, 322 +/* 0374D8 800368D8 0C00DAF3 */ jal func_80036BCC +/* 0374DC 800368DC 24050001 */ li $a1, 1 +/* 0374E0 800368E0 10000004 */ b .L800368F4 +/* 0374E4 800368E4 862C0020 */ lh $t4, 0x20($s1) +.L800368E8: +/* 0374E8 800368E8 0C00DAF3 */ jal func_80036BCC +/* 0374EC 800368EC 24050001 */ li $a1, 1 +/* 0374F0 800368F0 862C0020 */ lh $t4, 0x20($s1) +.L800368F4: +/* 0374F4 800368F4 92250011 */ lbu $a1, 0x11($s1) +/* 0374F8 800368F8 92260012 */ lbu $a2, 0x12($s1) +/* 0374FC 800368FC 92270013 */ lbu $a3, 0x13($s1) +/* 037500 80036900 AFAC0010 */ sw $t4, 0x10($sp) +/* 037504 80036904 862D0022 */ lh $t5, 0x22($s1) +/* 037508 80036908 240E00B4 */ li $t6, 180 +/* 03750C 8003690C AFAE0018 */ sw $t6, 0x18($sp) +/* 037510 80036910 00002025 */ move $a0, $zero +/* 037514 80036914 0C00C378 */ jal func_80030DE0 +/* 037518 80036918 AFAD0014 */ sw $t5, 0x14($sp) +/* 03751C 8003691C 8FAF004C */ lw $t7, 0x4c($sp) +/* 037520 80036920 00000000 */ nop +/* 037524 80036924 91E40052 */ lbu $a0, 0x52($t7) +/* 037528 80036928 0C0002CD */ jal func_80000B34 +/* 03752C 8003692C 00000000 */ nop +/* 037530 80036930 8FB8004C */ lw $t8, 0x4c($sp) +/* 037534 80036934 00000000 */ nop +/* 037538 80036938 97040054 */ lhu $a0, 0x54($t8) +/* 03753C 8003693C 0C00041D */ jal func_80001074 +/* 037540 80036940 00000000 */ nop +/* 037544 80036944 8FB90050 */ lw $t9, 0x50($sp) +/* 037548 80036948 00000000 */ nop +/* 03754C 8003694C 83240003 */ lb $a0, 3($t9) +/* 037550 80036950 832501D6 */ lb $a1, 0x1d6($t9) +/* 037554 80036954 0C0012D0 */ jal func_80004B40 +/* 037558 80036958 00000000 */ nop +/* 03755C 8003695C 8FA80050 */ lw $t0, 0x50($sp) +/* 037560 80036960 00000000 */ nop +/* 037564 80036964 AD020118 */ sw $v0, 0x118($t0) +.L80036968: +/* 037568 80036968 C7A0007C */ lwc1 $f0, 0x7c($sp) +/* 03756C 8003696C C604001C */ lwc1 $f4, 0x1c($s0) +/* 037570 80036970 C6120020 */ lwc1 $f18, 0x20($s0) +/* 037574 80036974 46002282 */ mul.s $f10, $f4, $f0 +/* 037578 80036978 C6060024 */ lwc1 $f6, 0x24($s0) +/* 03757C 8003697C 240900B4 */ li $t1, 180 +/* 037580 80036980 AE09007C */ sw $t1, 0x7c($s0) +/* 037584 80036984 46009202 */ mul.s $f8, $f18, $f0 +/* 037588 80036988 44055000 */ mfc1 $a1, $f10 +/* 03758C 8003698C 02002025 */ move $a0, $s0 +/* 037590 80036990 46003102 */ mul.s $f4, $f6, $f0 +/* 037594 80036994 44064000 */ mfc1 $a2, $f8 +/* 037598 80036998 44072000 */ mfc1 $a3, $f4 +/* 03759C 8003699C 0C00455C */ jal func_80011570 +/* 0375A0 800369A0 00000000 */ nop +/* 0375A4 800369A4 10000043 */ b .L80036AB4 +/* 0375A8 800369A8 C7AA006C */ lwc1 $f10, 0x6c($sp) +.L800369AC: +/* 0375AC 800369AC C62A0004 */ lwc1 $f10, 4($s1) +/* 0375B0 800369B0 C7A8007C */ lwc1 $f8, 0x7c($sp) +/* 0375B4 800369B4 460054A1 */ cvt.d.s $f18, $f10 +/* 0375B8 800369B8 460041A1 */ cvt.d.s $f6, $f8 +/* 0375BC 800369BC 46269100 */ add.d $f4, $f18, $f6 +/* 0375C0 800369C0 462022A0 */ cvt.s.d $f10, $f4 +/* 0375C4 800369C4 0C0168F0 */ jal func_8005A3C0 +/* 0375C8 800369C8 E62A0004 */ swc1 $f10, 4($s1) +/* 0375CC 800369CC 8E02007C */ lw $v0, 0x7c($s0) +/* 0375D0 800369D0 00000000 */ nop +/* 0375D4 800369D4 2841008C */ slti $at, $v0, 0x8c +/* 0375D8 800369D8 10200035 */ beqz $at, .L80036AB0 +/* 0375DC 800369DC 244A003C */ addiu $t2, $v0, 0x3c +/* 0375E0 800369E0 AE0A007C */ sw $t2, 0x7c($s0) +/* 0375E4 800369E4 AE000078 */ sw $zero, 0x78($s0) +/* 0375E8 800369E8 10000031 */ b .L80036AB0 +/* 0375EC 800369EC A200003B */ sb $zero, 0x3b($s0) +.L800369F0: +/* 0375F0 800369F0 A200003B */ sb $zero, 0x3b($s0) +/* 0375F4 800369F4 44804000 */ mtc1 $zero, $f8 +/* 0375F8 800369F8 922B000D */ lbu $t3, 0xd($s1) +/* 0375FC 800369FC 240100FF */ li $at, 255 +/* 037600 80036A00 1561001B */ bne $t3, $at, .L80036A70 +/* 037604 80036A04 E6280014 */ swc1 $f8, 0x14($s1) +/* 037608 80036A08 C60C000C */ lwc1 $f12, 0xc($s0) +/* 03760C 80036A0C C60E0010 */ lwc1 $f14, 0x10($s0) +/* 037610 80036A10 8E060014 */ lw $a2, 0x14($s0) +/* 037614 80036A14 0C007149 */ jal func_8001C524 +/* 037618 80036A18 00003825 */ move $a3, $zero +/* 03761C 80036A1C 304400FF */ andi $a0, $v0, 0xff +/* 037620 80036A20 240100FF */ li $at, 255 +/* 037624 80036A24 10810022 */ beq $a0, $at, .L80036AB0 +/* 037628 80036A28 A222000D */ sb $v0, 0xd($s1) +/* 03762C 80036A2C 2405FFFF */ li $a1, -1 +/* 037630 80036A30 0C007312 */ jal func_8001CC48 +/* 037634 80036A34 00003025 */ move $a2, $zero +/* 037638 80036A38 9225000D */ lbu $a1, 0xd($s1) +/* 03763C 80036A3C A222000E */ sb $v0, 0xe($s1) +/* 037640 80036A40 304400FF */ andi $a0, $v0, 0xff +/* 037644 80036A44 0C007312 */ jal func_8001CC48 +/* 037648 80036A48 00003025 */ move $a2, $zero +/* 03764C 80036A4C 9225000E */ lbu $a1, 0xe($s1) +/* 037650 80036A50 A222000F */ sb $v0, 0xf($s1) +/* 037654 80036A54 304400FF */ andi $a0, $v0, 0xff +/* 037658 80036A58 0C007312 */ jal func_8001CC48 +/* 03765C 80036A5C 00003025 */ move $a2, $zero +/* 037660 80036A60 922C000D */ lbu $t4, 0xd($s1) +/* 037664 80036A64 A2220010 */ sb $v0, 0x10($s1) +/* 037668 80036A68 10000011 */ b .L80036AB0 +/* 03766C 80036A6C A22C000C */ sb $t4, 0xc($s1) +.L80036A70: +/* 037670 80036A70 8FA6007C */ lw $a2, 0x7c($sp) +/* 037674 80036A74 02002825 */ move $a1, $s0 +/* 037678 80036A78 3C073F80 */ lui $a3, 0x3f80 +/* 03767C 80036A7C 0C0071B1 */ jal func_8001C6C4 +/* 037680 80036A80 AFA00010 */ sw $zero, 0x10($sp) +/* 037684 80036A84 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 +/* 037688 80036A88 44813800 */ mtc1 $at, $f7 +/* 03768C 80036A8C 44803000 */ mtc1 $zero, $f6 +/* 037690 80036A90 460004A1 */ cvt.d.s $f18, $f0 +/* 037694 80036A94 46269102 */ mul.d $f4, $f18, $f6 +/* 037698 80036A98 C62A0004 */ lwc1 $f10, 4($s1) +/* 03769C 80036A9C 00000000 */ nop +/* 0376A0 80036AA0 46005221 */ cvt.d.s $f8, $f10 +/* 0376A4 80036AA4 46244480 */ add.d $f18, $f8, $f4 +/* 0376A8 80036AA8 462091A0 */ cvt.s.d $f6, $f18 +/* 0376AC 80036AAC E6260004 */ swc1 $f6, 4($s1) +.L80036AB0: +/* 0376B0 80036AB0 C7AA006C */ lwc1 $f10, 0x6c($sp) +.L80036AB4: +/* 0376B4 80036AB4 8604002E */ lh $a0, 0x2e($s0) +/* 0376B8 80036AB8 8E05000C */ lw $a1, 0xc($s0) +/* 0376BC 80036ABC 8E060014 */ lw $a2, 0x14($s0) +/* 0376C0 80036AC0 27A70048 */ addiu $a3, $sp, 0x48 +/* 0376C4 80036AC4 0C00AC3D */ jal func_8002B0F4 +/* 0376C8 80036AC8 E60A0010 */ swc1 $f10, 0x10($s0) +/* 0376CC 80036ACC 1040001E */ beqz $v0, .L80036B48 +/* 0376D0 80036AD0 2443FFFF */ addiu $v1, $v0, -1 +/* 0376D4 80036AD4 0460001C */ bltz $v1, .L80036B48 +/* 0376D8 80036AD8 00032080 */ sll $a0, $v1, 2 +/* 0376DC 80036ADC 44800800 */ mtc1 $zero, $f1 +/* 0376E0 80036AE0 44800000 */ mtc1 $zero, $f0 +/* 0376E4 80036AE4 2406000E */ li $a2, 14 +/* 0376E8 80036AE8 2405000B */ li $a1, 11 +/* 0376EC 80036AEC 8FAD0048 */ lw $t5, 0x48($sp) +.L80036AF0: +/* 0376F0 80036AF0 00000000 */ nop +/* 0376F4 80036AF4 01A47021 */ addu $t6, $t5, $a0 +/* 0376F8 80036AF8 8DC20000 */ lw $v0, ($t6) +/* 0376FC 80036AFC 2484FFFC */ addiu $a0, $a0, -4 +/* 037700 80036B00 80430010 */ lb $v1, 0x10($v0) +/* 037704 80036B04 00000000 */ nop +/* 037708 80036B08 10A3000D */ beq $a1, $v1, .L80036B40 +/* 03770C 80036B0C 00000000 */ nop +/* 037710 80036B10 10C3000B */ beq $a2, $v1, .L80036B40 +/* 037714 80036B14 00000000 */ nop +/* 037718 80036B18 C4480008 */ lwc1 $f8, 8($v0) +/* 03771C 80036B1C 00000000 */ nop +/* 037720 80036B20 46004121 */ cvt.d.s $f4, $f8 +/* 037724 80036B24 4624003C */ c.lt.d $f0, $f4 +/* 037728 80036B28 00000000 */ nop +/* 03772C 80036B2C 45000004 */ bc1f .L80036B40 +/* 037730 80036B30 00000000 */ nop +/* 037734 80036B34 C4520000 */ lwc1 $f18, ($v0) +/* 037738 80036B38 00000000 */ nop +/* 03773C 80036B3C E6120010 */ swc1 $f18, 0x10($s0) +.L80036B40: +/* 037740 80036B40 0481FFEB */ bgez $a0, .L80036AF0 +/* 037744 80036B44 8FAD0048 */ lw $t5, 0x48($sp) +.L80036B48: +/* 037748 80036B48 8E0F0078 */ lw $t7, 0x78($s0) +/* 03774C 80036B4C A6000002 */ sh $zero, 2($s0) +/* 037750 80036B50 11E00004 */ beqz $t7, .L80036B64 +/* 037754 80036B54 A6000004 */ sh $zero, 4($s0) +/* 037758 80036B58 C6060010 */ lwc1 $f6, 0x10($s0) +/* 03775C 80036B5C 3C018012 */ lui $at, %hi(D_8011D4D0) # $at, 0x8012 +/* 037760 80036B60 E426D4D0 */ swc1 $f6, %lo(D_8011D4D0)($at) +.L80036B64: +/* 037764 80036B64 C62A0004 */ lwc1 $f10, 4($s1) +/* 037768 80036B68 02002025 */ move $a0, $s0 +/* 03776C 80036B6C 46005221 */ cvt.d.s $f8, $f10 +/* 037770 80036B70 4458F800 */ cfc1 $t8, $31 +/* 037774 80036B74 00000000 */ nop +/* 037778 80036B78 37010003 */ ori $at, $t8, 3 +/* 03777C 80036B7C 38210002 */ xori $at, $at, 2 +/* 037780 80036B80 44C1F800 */ ctc1 $at, $31 +/* 037784 80036B84 00000000 */ nop +/* 037788 80036B88 46204124 */ cvt.w.d $f4, $f8 +/* 03778C 80036B8C 44192000 */ mfc1 $t9, $f4 +/* 037790 80036B90 44D8F800 */ ctc1 $t8, $31 +/* 037794 80036B94 0C018703 */ jal func_80061C0C +/* 037798 80036B98 A6190018 */ sh $t9, 0x18($s0) +/* 03779C 80036B9C 8E02007C */ lw $v0, 0x7c($s0) +/* 0377A0 80036BA0 8FA80084 */ lw $t0, 0x84($sp) +/* 0377A4 80036BA4 18400003 */ blez $v0, .L80036BB4 +/* 0377A8 80036BA8 00484823 */ subu $t1, $v0, $t0 +/* 0377AC 80036BAC 10000002 */ b .L80036BB8 +/* 0377B0 80036BB0 AE09007C */ sw $t1, 0x7c($s0) +.L80036BB4: +/* 0377B4 80036BB4 AE00007C */ sw $zero, 0x7c($s0) +.L80036BB8: +/* 0377B8 80036BB8 8FBF002C */ lw $ra, 0x2c($sp) +/* 0377BC 80036BBC 8FB00024 */ lw $s0, 0x24($sp) +/* 0377C0 80036BC0 8FB10028 */ lw $s1, 0x28($sp) +/* 0377C4 80036BC4 03E00008 */ jr $ra +/* 0377C8 80036BC8 27BD0080 */ addiu $sp, $sp, 0x80 + diff --git a/asm/non_matchings/unknown_032760/func_80036BCC.s b/asm/non_matchings/unknown_032760/func_80036BCC.s new file mode 100644 index 00000000..98f684a1 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80036BCC.s @@ -0,0 +1,29 @@ +glabel func_80036BCC +/* 0377CC 80036BCC 3C078012 */ lui $a3, %hi(D_8011D4D8) # $a3, 0x8012 +/* 0377D0 80036BD0 24E7D4D8 */ addiu $a3, %lo(D_8011D4D8) # addiu $a3, $a3, -0x2b28 +/* 0377D4 80036BD4 8CE60000 */ lw $a2, ($a3) +/* 0377D8 80036BD8 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0377DC 80036BDC AFBF0014 */ sw $ra, 0x14($sp) +/* 0377E0 80036BE0 10C0000A */ beqz $a2, .L80036C0C +/* 0377E4 80036BE4 AFA40018 */ sw $a0, 0x18($sp) +/* 0377E8 80036BE8 30AE0001 */ andi $t6, $a1, 1 +/* 0377EC 80036BEC 11C00007 */ beqz $t6, .L80036C0C +/* 0377F0 80036BF0 00000000 */ nop +/* 0377F4 80036BF4 0C001223 */ jal func_8000488C +/* 0377F8 80036BF8 00C02025 */ move $a0, $a2 +/* 0377FC 80036BFC 3C078012 */ lui $a3, %hi(D_8011D4D8) # $a3, 0x8012 +/* 037800 80036C00 24E7D4D8 */ addiu $a3, %lo(D_8011D4D8) # addiu $a3, $a3, -0x2b28 +/* 037804 80036C04 ACE00000 */ sw $zero, ($a3) +/* 037808 80036C08 00003025 */ move $a2, $zero +.L80036C0C: +/* 03780C 80036C0C 14C00005 */ bnez $a2, .L80036C24 +/* 037810 80036C10 8FBF0014 */ lw $ra, 0x14($sp) +/* 037814 80036C14 97A4001A */ lhu $a0, 0x1a($sp) +/* 037818 80036C18 0C000741 */ jal func_80001D04 +/* 03781C 80036C1C 00E02825 */ move $a1, $a3 +/* 037820 80036C20 8FBF0014 */ lw $ra, 0x14($sp) +.L80036C24: +/* 037824 80036C24 27BD0018 */ addiu $sp, $sp, 0x18 +/* 037828 80036C28 03E00008 */ jr $ra +/* 03782C 80036C2C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80036C30.s b/asm/non_matchings/unknown_032760/func_80036C30.s new file mode 100644 index 00000000..3f841729 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80036C30.s @@ -0,0 +1,311 @@ +glabel func_80036C30 +/* 037830 80036C30 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 037834 80036C34 AFBF0024 */ sw $ra, 0x24($sp) +/* 037838 80036C38 AFB20020 */ sw $s2, 0x20($sp) +/* 03783C 80036C3C AFB1001C */ sw $s1, 0x1c($sp) +/* 037840 80036C40 AFB00018 */ sw $s0, 0x18($sp) +/* 037844 80036C44 AFA60048 */ sw $a2, 0x48($sp) +/* 037848 80036C48 90AE000E */ lbu $t6, 0xe($a1) +/* 03784C 80036C4C 8C900064 */ lw $s0, 0x64($a0) +/* 037850 80036C50 000E7900 */ sll $t7, $t6, 4 +/* 037854 80036C54 A60F0100 */ sh $t7, 0x100($s0) +/* 037858 80036C58 90B8000F */ lbu $t8, 0xf($a1) +/* 03785C 80036C5C 00808825 */ move $s1, $a0 +/* 037860 80036C60 0018CA00 */ sll $t9, $t8, 8 +/* 037864 80036C64 A6190104 */ sh $t9, 0x104($s0) +/* 037868 80036C68 94A80008 */ lhu $t0, 8($a1) +/* 03786C 80036C6C 00A09025 */ move $s2, $a1 +/* 037870 80036C70 44882000 */ mtc1 $t0, $f4 +/* 037874 80036C74 05010005 */ bgez $t0, .L80036C8C +/* 037878 80036C78 468021A0 */ cvt.s.w $f6, $f4 +/* 03787C 80036C7C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 037880 80036C80 44814000 */ mtc1 $at, $f8 +/* 037884 80036C84 00000000 */ nop +/* 037888 80036C88 46083180 */ add.s $f6, $f6, $f8 +.L80036C8C: +/* 03788C 80036C8C E6060114 */ swc1 $f6, 0x114($s0) +/* 037890 80036C90 9249000A */ lbu $t1, 0xa($s2) +/* 037894 80036C94 00000000 */ nop +/* 037898 80036C98 44895000 */ mtc1 $t1, $f10 +/* 03789C 80036C9C 05210005 */ bgez $t1, .L80036CB4 +/* 0378A0 80036CA0 468054A0 */ cvt.s.w $f18, $f10 +/* 0378A4 80036CA4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0378A8 80036CA8 44812000 */ mtc1 $at, $f4 +/* 0378AC 80036CAC 00000000 */ nop +/* 0378B0 80036CB0 46049480 */ add.s $f18, $f18, $f4 +.L80036CB4: +/* 0378B4 80036CB4 E6120118 */ swc1 $f18, 0x118($s0) +/* 0378B8 80036CB8 864A0002 */ lh $t2, 2($s2) +/* 0378BC 80036CBC 00000000 */ nop +/* 0378C0 80036CC0 448A4000 */ mtc1 $t2, $f8 +/* 0378C4 80036CC4 00000000 */ nop +/* 0378C8 80036CC8 468041A0 */ cvt.s.w $f6, $f8 +/* 0378CC 80036CCC E6060108 */ swc1 $f6, 0x108($s0) +/* 0378D0 80036CD0 864B0004 */ lh $t3, 4($s2) +/* 0378D4 80036CD4 00000000 */ nop +/* 0378D8 80036CD8 448B5000 */ mtc1 $t3, $f10 +/* 0378DC 80036CDC 00000000 */ nop +/* 0378E0 80036CE0 46805120 */ cvt.s.w $f4, $f10 +/* 0378E4 80036CE4 E604010C */ swc1 $f4, 0x10c($s0) +/* 0378E8 80036CE8 864C0006 */ lh $t4, 6($s2) +/* 0378EC 80036CEC 00000000 */ nop +/* 0378F0 80036CF0 448C9000 */ mtc1 $t4, $f18 +/* 0378F4 80036CF4 00000000 */ nop +/* 0378F8 80036CF8 46809220 */ cvt.s.w $f8, $f18 +/* 0378FC 80036CFC E6080110 */ swc1 $f8, 0x110($s0) +/* 037900 80036D00 8FAD0048 */ lw $t5, 0x48($sp) +/* 037904 80036D04 00000000 */ nop +/* 037908 80036D08 15A0000E */ bnez $t5, .L80036D44 +/* 03790C 80036D0C 00002025 */ move $a0, $zero +/* 037910 80036D10 0C01BE53 */ jal func_8006F94C +/* 037914 80036D14 3C050001 */ lui $a1, 1 +/* 037918 80036D18 A60200FE */ sh $v0, 0xfe($s0) +/* 03791C 80036D1C 00002025 */ move $a0, $zero +/* 037920 80036D20 0C01BE53 */ jal func_8006F94C +/* 037924 80036D24 3C050001 */ lui $a1, 1 +/* 037928 80036D28 A6020102 */ sh $v0, 0x102($s0) +/* 03792C 80036D2C 00002025 */ move $a0, $zero +/* 037930 80036D30 0C01BE53 */ jal func_8006F94C +/* 037934 80036D34 3C050001 */ lui $a1, 1 +/* 037938 80036D38 A6020106 */ sh $v0, 0x106($s0) +/* 03793C 80036D3C 10000005 */ b .L80036D54 +/* 037940 80036D40 A20000FD */ sb $zero, 0xfd($s0) +.L80036D44: +/* 037944 80036D44 860F0104 */ lh $t7, 0x104($s0) +/* 037948 80036D48 240E4000 */ li $t6, 16384 +/* 03794C 80036D4C A60E00FE */ sh $t6, 0xfe($s0) +/* 037950 80036D50 A62F0000 */ sh $t7, ($s1) +.L80036D54: +/* 037954 80036D54 861800FE */ lh $t8, 0xfe($s0) +/* 037958 80036D58 00000000 */ nop +/* 03795C 80036D5C 0018CC40 */ sll $t9, $t8, 0x11 +/* 037960 80036D60 0C01C1F1 */ jal func_800707C4 +/* 037964 80036D64 00192403 */ sra $a0, $t9, 0x10 +/* 037968 80036D68 C6060114 */ lwc1 $f6, 0x114($s0) +/* 03796C 80036D6C 00000000 */ nop +/* 037970 80036D70 46060282 */ mul.s $f10, $f0, $f6 +/* 037974 80036D74 E7AA0030 */ swc1 $f10, 0x30($sp) +/* 037978 80036D78 860400FE */ lh $a0, 0xfe($s0) +/* 03797C 80036D7C 0C01C1FE */ jal func_800707F8 +/* 037980 80036D80 00000000 */ nop +/* 037984 80036D84 C6040114 */ lwc1 $f4, 0x114($s0) +/* 037988 80036D88 00000000 */ nop +/* 03798C 80036D8C 46040482 */ mul.s $f18, $f0, $f4 +/* 037990 80036D90 E7B2002C */ swc1 $f18, 0x2c($sp) +/* 037994 80036D94 86040104 */ lh $a0, 0x104($s0) +/* 037998 80036D98 0C01C1F1 */ jal func_800707C4 +/* 03799C 80036D9C 00000000 */ nop +/* 0379A0 80036DA0 86040104 */ lh $a0, 0x104($s0) +/* 0379A4 80036DA4 0C01C1FE */ jal func_800707F8 +/* 0379A8 80036DA8 E7A00028 */ swc1 $f0, 0x28($sp) +/* 0379AC 80036DAC C7A20030 */ lwc1 $f2, 0x30($sp) +/* 0379B0 80036DB0 C7AC0028 */ lwc1 $f12, 0x28($sp) +/* 0379B4 80036DB4 46001202 */ mul.s $f8, $f2, $f0 +/* 0379B8 80036DB8 C7B0002C */ lwc1 $f16, 0x2c($sp) +/* 0379BC 80036DBC C6120108 */ lwc1 $f18, 0x108($s0) +/* 0379C0 80036DC0 460C8182 */ mul.s $f6, $f16, $f12 +/* 0379C4 80036DC4 E632000C */ swc1 $f18, 0xc($s1) +/* 0379C8 80036DC8 46008282 */ mul.s $f10, $f16, $f0 +/* 0379CC 80036DCC 46064380 */ add.s $f14, $f8, $f6 +/* 0379D0 80036DD0 C6080110 */ lwc1 $f8, 0x110($s0) +/* 0379D4 80036DD4 460C1102 */ mul.s $f4, $f2, $f12 +/* 0379D8 80036DD8 E6280014 */ swc1 $f8, 0x14($s1) +/* 0379DC 80036DDC E7AE0030 */ swc1 $f14, 0x30($sp) +/* 0379E0 80036DE0 46045401 */ sub.s $f16, $f10, $f4 +/* 0379E4 80036DE4 0C004558 */ jal func_80011560 +/* 0379E8 80036DE8 E7B0002C */ swc1 $f16, 0x2c($sp) +/* 0379EC 80036DEC 8FA50030 */ lw $a1, 0x30($sp) +/* 0379F0 80036DF0 8FA7002C */ lw $a3, 0x2c($sp) +/* 0379F4 80036DF4 02202025 */ move $a0, $s1 +/* 0379F8 80036DF8 0C00455C */ jal func_80011570 +/* 0379FC 80036DFC 24060000 */ li $a2, 0 +/* 037A00 80036E00 8FA90048 */ lw $t1, 0x48($sp) +/* 037A04 80036E04 02001825 */ move $v1, $s0 +/* 037A08 80036E08 15200031 */ bnez $t1, .L80036ED0 +/* 037A0C 80036E0C 3C02800E */ lui $v0, %hi(D_800DC9D0) # $v0, 0x800e +/* 037A10 80036E10 3C04800E */ lui $a0, %hi(D_800DCA50) # $a0, 0x800e +/* 037A14 80036E14 2484CA50 */ addiu $a0, %lo(D_800DCA50) # addiu $a0, $a0, -0x35b0 +/* 037A18 80036E18 2442C9D0 */ addiu $v0, %lo(D_800DC9D0) # addiu $v0, $v0, -0x3630 +.L80036E1C: +/* 037A1C 80036E1C 904A0000 */ lbu $t2, ($v0) +/* 037A20 80036E20 24420010 */ addiu $v0, $v0, 0x10 +/* 037A24 80036E24 A06A0000 */ sb $t2, ($v1) +/* 037A28 80036E28 904BFFF1 */ lbu $t3, -0xf($v0) +/* 037A2C 80036E2C 0044082B */ sltu $at, $v0, $a0 +/* 037A30 80036E30 A06B0001 */ sb $t3, 1($v1) +/* 037A34 80036E34 904CFFF2 */ lbu $t4, -0xe($v0) +/* 037A38 80036E38 24630010 */ addiu $v1, $v1, 0x10 +/* 037A3C 80036E3C A06CFFF2 */ sb $t4, -0xe($v1) +/* 037A40 80036E40 904DFFF3 */ lbu $t5, -0xd($v0) +/* 037A44 80036E44 1420FFF5 */ bnez $at, .L80036E1C +/* 037A48 80036E48 A06DFFF3 */ sb $t5, -0xd($v1) +/* 037A4C 80036E4C 3C03800E */ lui $v1, %hi(D_800DC9A8) # $v1, 0x800e +/* 037A50 80036E50 2463C9A8 */ addiu $v1, %lo(D_800DC9A8) # addiu $v1, $v1, -0x3658 +/* 037A54 80036E54 00003025 */ move $a2, $zero +/* 037A58 80036E58 02001025 */ move $v0, $s0 +/* 037A5C 80036E5C 24050006 */ li $a1, 6 +/* 037A60 80036E60 240400FF */ li $a0, 255 +.L80036E64: +/* 037A64 80036E64 846E0000 */ lh $t6, ($v1) +/* 037A68 80036E68 24C60001 */ addiu $a2, $a2, 1 +/* 037A6C 80036E6C A44E0080 */ sh $t6, 0x80($v0) +/* 037A70 80036E70 846F0002 */ lh $t7, 2($v1) +/* 037A74 80036E74 2442000A */ addiu $v0, $v0, 0xa +/* 037A78 80036E78 A44F0078 */ sh $t7, 0x78($v0) +/* 037A7C 80036E7C 84780004 */ lh $t8, 4($v1) +/* 037A80 80036E80 A044007C */ sb $a0, 0x7c($v0) +/* 037A84 80036E84 A044007D */ sb $a0, 0x7d($v0) +/* 037A88 80036E88 A044007E */ sb $a0, 0x7e($v0) +/* 037A8C 80036E8C A044007F */ sb $a0, 0x7f($v0) +/* 037A90 80036E90 A458007A */ sh $t8, 0x7a($v0) +/* 037A94 80036E94 84790000 */ lh $t9, ($v1) +/* 037A98 80036E98 24630006 */ addiu $v1, $v1, 6 +/* 037A9C 80036E9C A45900B2 */ sh $t9, 0xb2($v0) +/* 037AA0 80036EA0 8468FFFC */ lh $t0, -4($v1) +/* 037AA4 80036EA4 00000000 */ nop +/* 037AA8 80036EA8 A44800B4 */ sh $t0, 0xb4($v0) +/* 037AAC 80036EAC 8469FFFE */ lh $t1, -2($v1) +/* 037AB0 80036EB0 A04400B8 */ sb $a0, 0xb8($v0) +/* 037AB4 80036EB4 A04400B9 */ sb $a0, 0xb9($v0) +/* 037AB8 80036EB8 A04400BA */ sb $a0, 0xba($v0) +/* 037ABC 80036EBC A04400BB */ sb $a0, 0xbb($v0) +/* 037AC0 80036EC0 14C5FFE8 */ bne $a2, $a1, .L80036E64 +/* 037AC4 80036EC4 A44900B6 */ sh $t1, 0xb6($v0) +/* 037AC8 80036EC8 240A0001 */ li $t2, 1 +/* 037ACC 80036ECC A20A00FC */ sb $t2, 0xfc($s0) +.L80036ED0: +/* 037AD0 80036ED0 924B000C */ lbu $t3, 0xc($s2) +/* 037AD4 80036ED4 02001825 */ move $v1, $s0 +/* 037AD8 80036ED8 448B3000 */ mtc1 $t3, $f6 +/* 037ADC 80036EDC 05610005 */ bgez $t3, .L80036EF4 +/* 037AE0 80036EE0 468032A0 */ cvt.s.w $f10, $f6 +/* 037AE4 80036EE4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 037AE8 80036EE8 44812000 */ mtc1 $at, $f4 +/* 037AEC 80036EEC 00000000 */ nop +/* 037AF0 80036EF0 46045280 */ add.s $f10, $f10, $f4 +.L80036EF4: +/* 037AF4 80036EF4 3C01800E */ lui $at, %hi(D_800E6048) # $at, 0x800e +/* 037AF8 80036EF8 C4326048 */ lwc1 $f18, %lo(D_800E6048)($at) +/* 037AFC 80036EFC 8E2C0040 */ lw $t4, 0x40($s1) +/* 037B00 80036F00 46125202 */ mul.s $f8, $f10, $f18 +/* 037B04 80036F04 3C06800E */ lui $a2, %hi(D_800DCA50) # $a2, 0x800e +/* 037B08 80036F08 00002025 */ move $a0, $zero +/* 037B0C 80036F0C 00002825 */ move $a1, $zero +/* 037B10 80036F10 E6280008 */ swc1 $f8, 8($s1) +/* 037B14 80036F14 9242000B */ lbu $v0, 0xb($s2) +/* 037B18 80036F18 818D0055 */ lb $t5, 0x55($t4) +/* 037B1C 80036F1C 24C6CA50 */ addiu $a2, %lo(D_800DCA50) # addiu $a2, $a2, -0x35b0 +/* 037B20 80036F20 004D082A */ slt $at, $v0, $t5 +/* 037B24 80036F24 10200007 */ beqz $at, .L80036F44 +/* 037B28 80036F28 00000000 */ nop +/* 037B2C 80036F2C 8E2E0068 */ lw $t6, 0x68($s1) +/* 037B30 80036F30 00027880 */ sll $t7, $v0, 2 +/* 037B34 80036F34 01CFC021 */ addu $t8, $t6, $t7 +/* 037B38 80036F38 8F190000 */ lw $t9, ($t8) +/* 037B3C 80036F3C 10000006 */ b .L80036F58 +/* 037B40 80036F40 AE1900F8 */ sw $t9, 0xf8($s0) +.L80036F44: +/* 037B44 80036F44 8E280068 */ lw $t0, 0x68($s1) +/* 037B48 80036F48 00000000 */ nop +/* 037B4C 80036F4C 8D090000 */ lw $t1, ($t0) +/* 037B50 80036F50 00000000 */ nop +/* 037B54 80036F54 AE0900F8 */ sw $t1, 0xf8($s0) +.L80036F58: +/* 037B58 80036F58 8E0200F8 */ lw $v0, 0xf8($s0) +/* 037B5C 80036F5C 00000000 */ nop +/* 037B60 80036F60 1040000A */ beqz $v0, .L80036F8C +/* 037B64 80036F64 00000000 */ nop +/* 037B68 80036F68 90440000 */ lbu $a0, ($v0) +/* 037B6C 80036F6C 90450001 */ lbu $a1, 1($v0) +/* 037B70 80036F70 2484FFFF */ addiu $a0, $a0, -1 +/* 037B74 80036F74 24A5FFFF */ addiu $a1, $a1, -1 +/* 037B78 80036F78 00045140 */ sll $t2, $a0, 5 +/* 037B7C 80036F7C 00055940 */ sll $t3, $a1, 5 +/* 037B80 80036F80 01402025 */ move $a0, $t2 +/* 037B84 80036F84 10000001 */ b .L80036F8C +/* 037B88 80036F88 01602825 */ move $a1, $t3 +.L80036F8C: +/* 037B8C 80036F8C 3C02800E */ lui $v0, %hi(D_800DC9D0) # $v0, 0x800e +/* 037B90 80036F90 2442C9D0 */ addiu $v0, %lo(D_800DC9D0) # addiu $v0, $v0, -0x3630 +.L80036F94: +/* 037B94 80036F94 844C0004 */ lh $t4, 4($v0) +/* 037B98 80036F98 24420020 */ addiu $v0, $v0, 0x20 +/* 037B9C 80036F9C 01840019 */ multu $t4, $a0 +/* 037BA0 80036FA0 24630020 */ addiu $v1, $v1, 0x20 +/* 037BA4 80036FA4 00006812 */ mflo $t5 +/* 037BA8 80036FA8 000D7083 */ sra $t6, $t5, 2 +/* 037BAC 80036FAC A46EFFE4 */ sh $t6, -0x1c($v1) +/* 037BB0 80036FB0 844FFFE6 */ lh $t7, -0x1a($v0) +/* 037BB4 80036FB4 00000000 */ nop +/* 037BB8 80036FB8 01E50019 */ multu $t7, $a1 +/* 037BBC 80036FBC 0000C012 */ mflo $t8 +/* 037BC0 80036FC0 0018C883 */ sra $t9, $t8, 2 +/* 037BC4 80036FC4 A479FFE6 */ sh $t9, -0x1a($v1) +/* 037BC8 80036FC8 8448FFE8 */ lh $t0, -0x18($v0) +/* 037BCC 80036FCC 00000000 */ nop +/* 037BD0 80036FD0 01040019 */ multu $t0, $a0 +/* 037BD4 80036FD4 00004812 */ mflo $t1 +/* 037BD8 80036FD8 00095083 */ sra $t2, $t1, 2 +/* 037BDC 80036FDC A46AFFE8 */ sh $t2, -0x18($v1) +/* 037BE0 80036FE0 844BFFEA */ lh $t3, -0x16($v0) +/* 037BE4 80036FE4 00000000 */ nop +/* 037BE8 80036FE8 01650019 */ multu $t3, $a1 +/* 037BEC 80036FEC 00006012 */ mflo $t4 +/* 037BF0 80036FF0 000C6883 */ sra $t5, $t4, 2 +/* 037BF4 80036FF4 A46DFFEA */ sh $t5, -0x16($v1) +/* 037BF8 80036FF8 844EFFEC */ lh $t6, -0x14($v0) +/* 037BFC 80036FFC 00000000 */ nop +/* 037C00 80037000 01C40019 */ multu $t6, $a0 +/* 037C04 80037004 00007812 */ mflo $t7 +/* 037C08 80037008 000FC083 */ sra $t8, $t7, 2 +/* 037C0C 8003700C A478FFEC */ sh $t8, -0x14($v1) +/* 037C10 80037010 8459FFEE */ lh $t9, -0x12($v0) +/* 037C14 80037014 00000000 */ nop +/* 037C18 80037018 03250019 */ multu $t9, $a1 +/* 037C1C 8003701C 00004012 */ mflo $t0 +/* 037C20 80037020 00084883 */ sra $t1, $t0, 2 +/* 037C24 80037024 A469FFEE */ sh $t1, -0x12($v1) +/* 037C28 80037028 844AFFF4 */ lh $t2, -0xc($v0) +/* 037C2C 8003702C 00000000 */ nop +/* 037C30 80037030 01440019 */ multu $t2, $a0 +/* 037C34 80037034 00005812 */ mflo $t3 +/* 037C38 80037038 000B6083 */ sra $t4, $t3, 2 +/* 037C3C 8003703C A46CFFF4 */ sh $t4, -0xc($v1) +/* 037C40 80037040 844DFFF6 */ lh $t5, -0xa($v0) +/* 037C44 80037044 00000000 */ nop +/* 037C48 80037048 01A50019 */ multu $t5, $a1 +/* 037C4C 8003704C 00007012 */ mflo $t6 +/* 037C50 80037050 000E7883 */ sra $t7, $t6, 2 +/* 037C54 80037054 A46FFFF6 */ sh $t7, -0xa($v1) +/* 037C58 80037058 8458FFF8 */ lh $t8, -8($v0) +/* 037C5C 8003705C 00000000 */ nop +/* 037C60 80037060 03040019 */ multu $t8, $a0 +/* 037C64 80037064 0000C812 */ mflo $t9 +/* 037C68 80037068 00194083 */ sra $t0, $t9, 2 +/* 037C6C 8003706C A468FFF8 */ sh $t0, -8($v1) +/* 037C70 80037070 8449FFFA */ lh $t1, -6($v0) +/* 037C74 80037074 00000000 */ nop +/* 037C78 80037078 01250019 */ multu $t1, $a1 +/* 037C7C 8003707C 00005012 */ mflo $t2 +/* 037C80 80037080 000A5883 */ sra $t3, $t2, 2 +/* 037C84 80037084 A46BFFFA */ sh $t3, -6($v1) +/* 037C88 80037088 844CFFFC */ lh $t4, -4($v0) +/* 037C8C 8003708C 00000000 */ nop +/* 037C90 80037090 01840019 */ multu $t4, $a0 +/* 037C94 80037094 00006812 */ mflo $t5 +/* 037C98 80037098 000D7083 */ sra $t6, $t5, 2 +/* 037C9C 8003709C A46EFFFC */ sh $t6, -4($v1) +/* 037CA0 800370A0 844FFFFE */ lh $t7, -2($v0) +/* 037CA4 800370A4 00000000 */ nop +/* 037CA8 800370A8 01E50019 */ multu $t7, $a1 +/* 037CAC 800370AC 0000C012 */ mflo $t8 +/* 037CB0 800370B0 0018C883 */ sra $t9, $t8, 2 +/* 037CB4 800370B4 1446FFB7 */ bne $v0, $a2, .L80036F94 +/* 037CB8 800370B8 A479FFFE */ sh $t9, -2($v1) +/* 037CBC 800370BC 8FBF0024 */ lw $ra, 0x24($sp) +/* 037CC0 800370C0 8FB00018 */ lw $s0, 0x18($sp) +/* 037CC4 800370C4 8FB1001C */ lw $s1, 0x1c($sp) +/* 037CC8 800370C8 8FB20020 */ lw $s2, 0x20($sp) +/* 037CCC 800370CC 03E00008 */ jr $ra +/* 037CD0 800370D0 27BD0040 */ addiu $sp, $sp, 0x40 + diff --git a/asm/non_matchings/unknown_032760/func_800370D4.s b/asm/non_matchings/unknown_032760/func_800370D4.s new file mode 100644 index 00000000..55b19218 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800370D4.s @@ -0,0 +1,312 @@ +glabel func_800370D4 +/* 037CD4 800370D4 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 037CD8 800370D8 AFBF001C */ sw $ra, 0x1c($sp) +/* 037CDC 800370DC AFB10018 */ sw $s1, 0x18($sp) +/* 037CE0 800370E0 00808825 */ move $s1, $a0 +/* 037CE4 800370E4 AFB00014 */ sw $s0, 0x14($sp) +/* 037CE8 800370E8 0C019884 */ jal func_80066210 +/* 037CEC 800370EC AFA50074 */ sw $a1, 0x74($sp) +/* 037CF0 800370F0 18400005 */ blez $v0, .L80037108 +/* 037CF4 800370F4 00000000 */ nop +/* 037CF8 800370F8 0C003FEE */ jal func_8000FFB8 +/* 037CFC 800370FC 02202025 */ move $a0, $s1 +/* 037D00 80037100 10000119 */ b .L80037568 +/* 037D04 80037104 8FBF001C */ lw $ra, 0x1c($sp) +.L80037108: +/* 037D08 80037108 8E300064 */ lw $s0, 0x64($s1) +/* 037D0C 8003710C C6200010 */ lwc1 $f0, 0x10($s1) +/* 037D10 80037110 920300FD */ lbu $v1, 0xfd($s0) +/* 037D14 80037114 00000000 */ nop +/* 037D18 80037118 1060001B */ beqz $v1, .L80037188 +/* 037D1C 8003711C 00601025 */ move $v0, $v1 +/* 037D20 80037120 8FA50074 */ lw $a1, 0x74($sp) +/* 037D24 80037124 00000000 */ nop +/* 037D28 80037128 0065082A */ slt $at, $v1, $a1 +/* 037D2C 8003712C 14200009 */ bnez $at, .L80037154 +/* 037D30 80037130 00000000 */ nop +/* 037D34 80037134 44853000 */ mtc1 $a1, $f6 +/* 037D38 80037138 C6240020 */ lwc1 $f4, 0x20($s1) +/* 037D3C 8003713C 46803220 */ cvt.s.w $f8, $f6 +/* 037D40 80037140 00457023 */ subu $t6, $v0, $a1 +/* 037D44 80037144 A20E00FD */ sb $t6, 0xfd($s0) +/* 037D48 80037148 46082282 */ mul.s $f10, $f4, $f8 +/* 037D4C 8003714C 1000000C */ b .L80037180 +/* 037D50 80037150 460A0000 */ add.s $f0, $f0, $f10 +.L80037154: +/* 037D54 80037154 44832000 */ mtc1 $v1, $f4 +/* 037D58 80037158 C6260020 */ lwc1 $f6, 0x20($s1) +/* 037D5C 8003715C 04610005 */ bgez $v1, .L80037174 +/* 037D60 80037160 46802220 */ cvt.s.w $f8, $f4 +/* 037D64 80037164 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 037D68 80037168 44815000 */ mtc1 $at, $f10 +/* 037D6C 8003716C 00000000 */ nop +/* 037D70 80037170 460A4200 */ add.s $f8, $f8, $f10 +.L80037174: +/* 037D74 80037174 46083102 */ mul.s $f4, $f6, $f8 +/* 037D78 80037178 A20000FD */ sb $zero, 0xfd($s0) +/* 037D7C 8003717C 46040000 */ add.s $f0, $f0, $f4 +.L80037180: +/* 037D80 80037180 1000003D */ b .L80037278 +/* 037D84 80037184 E7A00068 */ swc1 $f0, 0x68($sp) +.L80037188: +/* 037D88 80037188 00002025 */ move $a0, $zero +/* 037D8C 8003718C 24050007 */ li $a1, 7 +/* 037D90 80037190 0C01BE53 */ jal func_8006F94C +/* 037D94 80037194 E7A00068 */ swc1 $f0, 0x68($sp) +/* 037D98 80037198 14400037 */ bnez $v0, .L80037278 +/* 037D9C 8003719C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 037DA0 800371A0 C60A0118 */ lwc1 $f10, 0x118($s0) +/* 037DA4 800371A4 44813000 */ mtc1 $at, $f6 +/* 037DA8 800371A8 240400A0 */ li $a0, 160 +/* 037DAC 800371AC 460A303E */ c.le.s $f6, $f10 +/* 037DB0 800371B0 00000000 */ nop +/* 037DB4 800371B4 45000031 */ bc1f .L8003727C +/* 037DB8 800371B8 8FA50074 */ lw $a1, 0x74($sp) +/* 037DBC 800371BC 0C01BE53 */ jal func_8006F94C +/* 037DC0 800371C0 240500FF */ li $a1, 255 +/* 037DC4 800371C4 444FF800 */ cfc1 $t7, $31 +/* 037DC8 800371C8 C6080118 */ lwc1 $f8, 0x118($s0) +/* 037DCC 800371CC 35E10003 */ ori $at, $t7, 3 +/* 037DD0 800371D0 38210002 */ xori $at, $at, 2 +/* 037DD4 800371D4 44C1F800 */ ctc1 $at, $31 +/* 037DD8 800371D8 A20200FD */ sb $v0, 0xfd($s0) +/* 037DDC 800371DC 46004124 */ cvt.w.s $f4, $f8 +/* 037DE0 800371E0 00002025 */ move $a0, $zero +/* 037DE4 800371E4 44052000 */ mfc1 $a1, $f4 +/* 037DE8 800371E8 44CFF800 */ ctc1 $t7, $31 +/* 037DEC 800371EC 0C01BE53 */ jal func_8006F94C +/* 037DF0 800371F0 00000000 */ nop +/* 037DF4 800371F4 C6200010 */ lwc1 $f0, 0x10($s1) +/* 037DF8 800371F8 C60A010C */ lwc1 $f10, 0x10c($s0) +/* 037DFC 800371FC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 037E00 80037200 46005181 */ sub.s $f6, $f10, $f0 +/* 037E04 80037204 E6260020 */ swc1 $f6, 0x20($s1) +/* 037E08 80037208 C608010C */ lwc1 $f8, 0x10c($s0) +/* 037E0C 8003720C 00000000 */ nop +/* 037E10 80037210 4608003C */ c.lt.s $f0, $f8 +/* 037E14 80037214 00000000 */ nop +/* 037E18 80037218 45000007 */ bc1f .L80037238 +/* 037E1C 8003721C 00000000 */ nop +/* 037E20 80037220 44825000 */ mtc1 $v0, $f10 +/* 037E24 80037224 C6240020 */ lwc1 $f4, 0x20($s1) +/* 037E28 80037228 468051A0 */ cvt.s.w $f6, $f10 +/* 037E2C 8003722C 46062200 */ add.s $f8, $f4, $f6 +/* 037E30 80037230 10000006 */ b .L8003724C +/* 037E34 80037234 E6280020 */ swc1 $f8, 0x20($s1) +.L80037238: +/* 037E38 80037238 44822000 */ mtc1 $v0, $f4 +/* 037E3C 8003723C C62A0020 */ lwc1 $f10, 0x20($s1) +/* 037E40 80037240 468021A0 */ cvt.s.w $f6, $f4 +/* 037E44 80037244 46065201 */ sub.s $f8, $f10, $f6 +/* 037E48 80037248 E6280020 */ swc1 $f8, 0x20($s1) +.L8003724C: +/* 037E4C 8003724C 921800FD */ lbu $t8, 0xfd($s0) +/* 037E50 80037250 C6240020 */ lwc1 $f4, 0x20($s1) +/* 037E54 80037254 44985000 */ mtc1 $t8, $f10 +/* 037E58 80037258 07010004 */ bgez $t8, .L8003726C +/* 037E5C 8003725C 468051A0 */ cvt.s.w $f6, $f10 +/* 037E60 80037260 44814000 */ mtc1 $at, $f8 +/* 037E64 80037264 00000000 */ nop +/* 037E68 80037268 46083180 */ add.s $f6, $f6, $f8 +.L8003726C: +/* 037E6C 8003726C 00000000 */ nop +/* 037E70 80037270 46062283 */ div.s $f10, $f4, $f6 +/* 037E74 80037274 E62A0020 */ swc1 $f10, 0x20($s1) +.L80037278: +/* 037E78 80037278 8FA50074 */ lw $a1, 0x74($sp) +.L8003727C: +/* 037E7C 8003727C 86080100 */ lh $t0, 0x100($s0) +/* 037E80 80037280 861900FE */ lh $t9, 0xfe($s0) +/* 037E84 80037284 00A80019 */ multu $a1, $t0 +/* 037E88 80037288 00004812 */ mflo $t1 +/* 037E8C 8003728C 03295021 */ addu $t2, $t9, $t1 +/* 037E90 80037290 A60A00FE */ sh $t2, 0xfe($s0) +/* 037E94 80037294 860B00FE */ lh $t3, 0xfe($s0) +/* 037E98 80037298 00000000 */ nop +/* 037E9C 8003729C 000B6440 */ sll $t4, $t3, 0x11 +/* 037EA0 800372A0 0C01C1F1 */ jal func_800707C4 +/* 037EA4 800372A4 000C2403 */ sra $a0, $t4, 0x10 +/* 037EA8 800372A8 C6080114 */ lwc1 $f8, 0x114($s0) +/* 037EAC 800372AC 860400FE */ lh $a0, 0xfe($s0) +/* 037EB0 800372B0 46080302 */ mul.s $f12, $f0, $f8 +/* 037EB4 800372B4 0C01C1FE */ jal func_800707F8 +/* 037EB8 800372B8 E7AC006C */ swc1 $f12, 0x6c($sp) +/* 037EBC 800372BC C6040114 */ lwc1 $f4, 0x114($s0) +/* 037EC0 800372C0 86040104 */ lh $a0, 0x104($s0) +/* 037EC4 800372C4 46040082 */ mul.s $f2, $f0, $f4 +/* 037EC8 800372C8 0C01C1F1 */ jal func_800707C4 +/* 037ECC 800372CC E7A20064 */ swc1 $f2, 0x64($sp) +/* 037ED0 800372D0 86040104 */ lh $a0, 0x104($s0) +/* 037ED4 800372D4 0C01C1FE */ jal func_800707F8 +/* 037ED8 800372D8 E7A0004C */ swc1 $f0, 0x4c($sp) +/* 037EDC 800372DC C7AE006C */ lwc1 $f14, 0x6c($sp) +/* 037EE0 800372E0 C7A20064 */ lwc1 $f2, 0x64($sp) +/* 037EE4 800372E4 46007182 */ mul.s $f6, $f14, $f0 +/* 037EE8 800372E8 C7B0004C */ lwc1 $f16, 0x4c($sp) +/* 037EEC 800372EC 44809000 */ mtc1 $zero, $f18 +/* 037EF0 800372F0 46101282 */ mul.s $f10, $f2, $f16 +/* 037EF4 800372F4 00000000 */ nop +/* 037EF8 800372F8 46001202 */ mul.s $f8, $f2, $f0 +/* 037EFC 800372FC 460A3300 */ add.s $f12, $f6, $f10 +/* 037F00 80037300 C6060108 */ lwc1 $f6, 0x108($s0) +/* 037F04 80037304 C60A0110 */ lwc1 $f10, 0x110($s0) +/* 037F08 80037308 46107102 */ mul.s $f4, $f14, $f16 +/* 037F0C 8003730C 46066300 */ add.s $f12, $f12, $f6 +/* 037F10 80037310 46044081 */ sub.s $f2, $f8, $f4 +/* 037F14 80037314 C628000C */ lwc1 $f8, 0xc($s1) +/* 037F18 80037318 460A1080 */ add.s $f2, $f2, $f10 +/* 037F1C 8003731C C7AA0068 */ lwc1 $f10, 0x68($sp) +/* 037F20 80037320 460C4101 */ sub.s $f4, $f8, $f12 +/* 037F24 80037324 E7A40060 */ swc1 $f4, 0x60($sp) +/* 037F28 80037328 C6260010 */ lwc1 $f6, 0x10($s1) +/* 037F2C 8003732C 00000000 */ nop +/* 037F30 80037330 460A3201 */ sub.s $f8, $f6, $f10 +/* 037F34 80037334 E7A8005C */ swc1 $f8, 0x5c($sp) +/* 037F38 80037338 C6240014 */ lwc1 $f4, 0x14($s1) +/* 037F3C 8003733C 00000000 */ nop +/* 037F40 80037340 46022181 */ sub.s $f6, $f4, $f2 +/* 037F44 80037344 E7A60058 */ swc1 $f6, 0x58($sp) +/* 037F48 80037348 E632000C */ swc1 $f18, 0xc($s1) +/* 037F4C 8003734C E6320010 */ swc1 $f18, 0x10($s1) +/* 037F50 80037350 E6320014 */ swc1 $f18, 0x14($s1) +/* 037F54 80037354 E7AC006C */ swc1 $f12, 0x6c($sp) +/* 037F58 80037358 0C004558 */ jal func_80011560 +/* 037F5C 8003735C E7A20064 */ swc1 $f2, 0x64($sp) +/* 037F60 80037360 C7A20064 */ lwc1 $f2, 0x64($sp) +/* 037F64 80037364 C7AC006C */ lwc1 $f12, 0x6c($sp) +/* 037F68 80037368 8FA60068 */ lw $a2, 0x68($sp) +/* 037F6C 8003736C 44071000 */ mfc1 $a3, $f2 +/* 037F70 80037370 44056000 */ mfc1 $a1, $f12 +/* 037F74 80037374 0C00455C */ jal func_80011570 +/* 037F78 80037378 02202025 */ move $a0, $s1 +/* 037F7C 8003737C C7A00060 */ lwc1 $f0, 0x60($sp) +/* 037F80 80037380 C7B00058 */ lwc1 $f16, 0x58($sp) +/* 037F84 80037384 46000282 */ mul.s $f10, $f0, $f0 +/* 037F88 80037388 C7A2005C */ lwc1 $f2, 0x5c($sp) +/* 037F8C 8003738C 46108202 */ mul.s $f8, $f16, $f16 +/* 037F90 80037390 46085380 */ add.s $f14, $f10, $f8 +/* 037F94 80037394 46021102 */ mul.s $f4, $f2, $f2 +/* 037F98 80037398 E7AE0020 */ swc1 $f14, 0x20($sp) +/* 037F9C 8003739C 0C0326B4 */ jal sqrtf +/* 037FA0 800373A0 460E2300 */ add.s $f12, $f4, $f14 +/* 037FA4 800373A4 C7AC0020 */ lwc1 $f12, 0x20($sp) +/* 037FA8 800373A8 0C0326B4 */ jal sqrtf +/* 037FAC 800373AC E7A00050 */ swc1 $f0, 0x50($sp) +/* 037FB0 800373B0 3C0144C0 */ li $at, 0x44C00000 # 1536.000000 +/* 037FB4 800373B4 44815000 */ mtc1 $at, $f10 +/* 037FB8 800373B8 C7A60050 */ lwc1 $f6, 0x50($sp) +/* 037FBC 800373BC E7A00054 */ swc1 $f0, 0x54($sp) +/* 037FC0 800373C0 460A3202 */ mul.s $f8, $f6, $f10 +/* 037FC4 800373C4 86180106 */ lh $t8, 0x106($s0) +/* 037FC8 800373C8 444EF800 */ cfc1 $t6, $31 +/* 037FCC 800373CC 00000000 */ nop +/* 037FD0 800373D0 35C10003 */ ori $at, $t6, 3 +/* 037FD4 800373D4 38210002 */ xori $at, $at, 2 +/* 037FD8 800373D8 44C1F800 */ ctc1 $at, $31 +/* 037FDC 800373DC 00000000 */ nop +/* 037FE0 800373E0 46004124 */ cvt.w.s $f4, $f8 +/* 037FE4 800373E4 440F2000 */ mfc1 $t7, $f4 +/* 037FE8 800373E8 44CEF800 */ ctc1 $t6, $31 +/* 037FEC 800373EC 030F4021 */ addu $t0, $t8, $t7 +/* 037FF0 800373F0 A6080106 */ sh $t0, 0x106($s0) +/* 037FF4 800373F4 C7AE0058 */ lwc1 $f14, 0x58($sp) +/* 037FF8 800373F8 C7AC0060 */ lwc1 $f12, 0x60($sp) +/* 037FFC 800373FC 0C01C1D4 */ jal func_80070750 +/* 038000 80037400 00000000 */ nop +/* 038004 80037404 A6220000 */ sh $v0, ($s1) +/* 038008 80037408 C7AC005C */ lwc1 $f12, 0x5c($sp) +/* 03800C 8003740C C7AE0054 */ lwc1 $f14, 0x54($sp) +/* 038010 80037410 0C01C1D4 */ jal func_80070750 +/* 038014 80037414 46006307 */ neg.s $f12, $f12 +/* 038018 80037418 86230002 */ lh $v1, 2($s1) +/* 03801C 8003741C 8FAE0074 */ lw $t6, 0x74($sp) +/* 038020 80037420 00432023 */ subu $a0, $v0, $v1 +/* 038024 80037424 00622823 */ subu $a1, $v1, $v0 +/* 038028 80037428 3099FFFF */ andi $t9, $a0, 0xffff +/* 03802C 8003742C 30A9FFFF */ andi $t1, $a1, 0xffff +/* 038030 80037430 0329082A */ slt $at, $t9, $t1 +/* 038034 80037434 10200009 */ beqz $at, .L8003745C +/* 038038 80037438 01202825 */ move $a1, $t1 +/* 03803C 8003743C 8FAA0074 */ lw $t2, 0x74($sp) +/* 038040 80037440 00000000 */ nop +/* 038044 80037444 032A0019 */ multu $t9, $t2 +/* 038048 80037448 00005812 */ mflo $t3 +/* 03804C 8003744C 000B60C3 */ sra $t4, $t3, 3 +/* 038050 80037450 006C6821 */ addu $t5, $v1, $t4 +/* 038054 80037454 10000006 */ b .L80037470 +/* 038058 80037458 A62D0002 */ sh $t5, 2($s1) +.L8003745C: +/* 03805C 8003745C 00AE0019 */ multu $a1, $t6 +/* 038060 80037460 0000C012 */ mflo $t8 +/* 038064 80037464 001878C3 */ sra $t7, $t8, 3 +/* 038068 80037468 006F4023 */ subu $t0, $v1, $t7 +/* 03806C 8003746C A6280002 */ sh $t0, 2($s1) +.L80037470: +/* 038070 80037470 921900FC */ lbu $t9, 0xfc($s0) +/* 038074 80037474 24090001 */ li $t1, 1 +/* 038078 80037478 01395023 */ subu $t2, $t1, $t9 +/* 03807C 8003747C 314B00FF */ andi $t3, $t2, 0xff +/* 038080 80037480 000B6080 */ sll $t4, $t3, 2 +/* 038084 80037484 018B6023 */ subu $t4, $t4, $t3 +/* 038088 80037488 000C6040 */ sll $t4, $t4, 1 +/* 03808C 8003748C 000C6880 */ sll $t5, $t4, 2 +/* 038090 80037490 01AC6821 */ addu $t5, $t5, $t4 +/* 038094 80037494 000D6840 */ sll $t5, $t5, 1 +/* 038098 80037498 020D1821 */ addu $v1, $s0, $t5 +/* 03809C 8003749C A20A00FC */ sb $t2, 0xfc($s0) +/* 0380A0 800374A0 24630080 */ addiu $v1, $v1, 0x80 +/* 0380A4 800374A4 86040106 */ lh $a0, 0x106($s0) +/* 0380A8 800374A8 0C01C20C */ jal func_80070830 +/* 0380AC 800374AC AFA30028 */ sw $v1, 0x28($sp) +/* 0380B0 800374B0 000288C3 */ sra $s1, $v0, 3 +/* 0380B4 800374B4 00112400 */ sll $a0, $s1, 0x10 +/* 0380B8 800374B8 00047403 */ sra $t6, $a0, 0x10 +/* 0380BC 800374BC 0C01C1FE */ jal func_800707F8 +/* 0380C0 800374C0 01C02025 */ move $a0, $t6 +/* 0380C4 800374C4 3C014200 */ li $at, 0x42000000 # 32.000000 +/* 0380C8 800374C8 44813000 */ mtc1 $at, $f6 +/* 0380CC 800374CC 00112400 */ sll $a0, $s1, 0x10 +/* 0380D0 800374D0 46060282 */ mul.s $f10, $f0, $f6 +/* 0380D4 800374D4 00047C03 */ sra $t7, $a0, 0x10 +/* 0380D8 800374D8 01E02025 */ move $a0, $t7 +/* 0380DC 800374DC 4458F800 */ cfc1 $t8, $31 +/* 0380E0 800374E0 00000000 */ nop +/* 0380E4 800374E4 37010003 */ ori $at, $t8, 3 +/* 0380E8 800374E8 38210002 */ xori $at, $at, 2 +/* 0380EC 800374EC 44C1F800 */ ctc1 $at, $31 +/* 0380F0 800374F0 00000000 */ nop +/* 0380F4 800374F4 46005224 */ cvt.w.s $f8, $f10 +/* 0380F8 800374F8 44104000 */ mfc1 $s0, $f8 +/* 0380FC 800374FC 44D8F800 */ ctc1 $t8, $31 +/* 038100 80037500 0C01C1F1 */ jal func_800707C4 +/* 038104 80037504 00000000 */ nop +/* 038108 80037508 3C014200 */ li $at, 0x42000000 # 32.000000 +/* 03810C 8003750C 44812000 */ mtc1 $at, $f4 +/* 038110 80037510 8FA30028 */ lw $v1, 0x28($sp) +/* 038114 80037514 46040182 */ mul.s $f6, $f0, $f4 +/* 038118 80037518 84690014 */ lh $t1, 0x14($v1) +/* 03811C 8003751C 846A0018 */ lh $t2, 0x18($v1) +/* 038120 80037520 846C001E */ lh $t4, 0x1e($v1) +/* 038124 80037524 4448F800 */ cfc1 $t0, $31 +/* 038128 80037528 846E0022 */ lh $t6, 0x22($v1) +/* 03812C 8003752C 35010003 */ ori $at, $t0, 3 +/* 038130 80037530 38210002 */ xori $at, $at, 2 +/* 038134 80037534 44C1F800 */ ctc1 $at, $31 +/* 038138 80037538 01505821 */ addu $t3, $t2, $s0 +/* 03813C 8003753C 460032A4 */ cvt.w.s $f10, $f6 +/* 038140 80037540 01D0C021 */ addu $t8, $t6, $s0 +/* 038144 80037544 44025000 */ mfc1 $v0, $f10 +/* 038148 80037548 44C8F800 */ ctc1 $t0, $31 +/* 03814C 8003754C 0122C821 */ addu $t9, $t1, $v0 +/* 038150 80037550 01826821 */ addu $t5, $t4, $v0 +/* 038154 80037554 A4790028 */ sh $t9, 0x28($v1) +/* 038158 80037558 A46B002C */ sh $t3, 0x2c($v1) +/* 03815C 8003755C A46D0032 */ sh $t5, 0x32($v1) +/* 038160 80037560 A4780036 */ sh $t8, 0x36($v1) +/* 038164 80037564 8FBF001C */ lw $ra, 0x1c($sp) +.L80037568: +/* 038168 80037568 8FB00014 */ lw $s0, 0x14($sp) +/* 03816C 8003756C 8FB10018 */ lw $s1, 0x18($sp) +/* 038170 80037570 03E00008 */ jr $ra +/* 038174 80037574 27BD0070 */ addiu $sp, $sp, 0x70 + diff --git a/asm/non_matchings/unknown_032760/func_80037578.s b/asm/non_matchings/unknown_032760/func_80037578.s new file mode 100644 index 00000000..bdddd63a --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80037578.s @@ -0,0 +1,9 @@ +glabel func_80037578 +/* 038178 80037578 90AE0009 */ lbu $t6, 9($a1) +/* 03817C 8003757C 00000000 */ nop +/* 038180 80037580 000E7840 */ sll $t7, $t6, 1 +/* 038184 80037584 AC8F0078 */ sw $t7, 0x78($a0) +/* 038188 80037588 90B80008 */ lbu $t8, 8($a1) +/* 03818C 8003758C 03E00008 */ jr $ra +/* 038190 80037590 AC98007C */ sw $t8, 0x7c($a0) + diff --git a/asm/non_matchings/unknown_032760/func_80037594.s b/asm/non_matchings/unknown_032760/func_80037594.s new file mode 100644 index 00000000..41fca3f5 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80037594.s @@ -0,0 +1,40 @@ +glabel func_80037594 +/* 038194 80037594 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 038198 80037598 AFBF0014 */ sw $ra, 0x14($sp) +/* 03819C 8003759C 8C820078 */ lw $v0, 0x78($a0) +/* 0381A0 800375A0 00803025 */ move $a2, $a0 +/* 0381A4 800375A4 18400007 */ blez $v0, .L800375C4 +/* 0381A8 800375A8 00055080 */ sll $t2, $a1, 2 +/* 0381AC 800375AC 848F0006 */ lh $t7, 6($a0) +/* 0381B0 800375B0 00457023 */ subu $t6, $v0, $a1 +/* 0381B4 800375B4 35F84000 */ ori $t8, $t7, 0x4000 +/* 0381B8 800375B8 AC8E0078 */ sw $t6, 0x78($a0) +/* 0381BC 800375BC 10000015 */ b .L80037614 +/* 0381C0 800375C0 A4980006 */ sh $t8, 6($a0) +.L800375C4: +/* 0381C4 800375C4 84C90018 */ lh $t1, 0x18($a2) +/* 0381C8 800375C8 84D90006 */ lh $t9, 6($a2) +/* 0381CC 800375CC 012A5821 */ addu $t3, $t1, $t2 +/* 0381D0 800375D0 A4CB0018 */ sh $t3, 0x18($a2) +/* 0381D4 800375D4 84CC0018 */ lh $t4, 0x18($a2) +/* 0381D8 800375D8 3328BFFF */ andi $t0, $t9, 0xbfff +/* 0381DC 800375DC 29810100 */ slti $at, $t4, 0x100 +/* 0381E0 800375E0 1420000C */ bnez $at, .L80037614 +/* 0381E4 800375E4 A4C80006 */ sh $t0, 6($a2) +/* 0381E8 800375E8 A4C00018 */ sh $zero, 0x18($a2) +/* 0381EC 800375EC AFA60018 */ sw $a2, 0x18($sp) +/* 0381F0 800375F0 00002025 */ move $a0, $zero +/* 0381F4 800375F4 0C01BE53 */ jal func_8006F94C +/* 0381F8 800375F8 2405001E */ li $a1, 30 +/* 0381FC 800375FC 8FA60018 */ lw $a2, 0x18($sp) +/* 038200 80037600 00000000 */ nop +/* 038204 80037604 8CCD007C */ lw $t5, 0x7c($a2) +/* 038208 80037608 00000000 */ nop +/* 03820C 8003760C 004D7021 */ addu $t6, $v0, $t5 +/* 038210 80037610 ACCE0078 */ sw $t6, 0x78($a2) +.L80037614: +/* 038214 80037614 8FBF0014 */ lw $ra, 0x14($sp) +/* 038218 80037618 27BD0018 */ addiu $sp, $sp, 0x18 +/* 03821C 8003761C 03E00008 */ jr $ra +/* 038220 80037620 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80037624.s b/asm/non_matchings/unknown_032760/func_80037624.s new file mode 100644 index 00000000..bdbbccd3 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80037624.s @@ -0,0 +1,8 @@ +glabel func_80037624 +/* 038224 80037624 AFA50004 */ sw $a1, 4($sp) +/* 038228 80037628 848E0006 */ lh $t6, 6($a0) +/* 03822C 8003762C 00000000 */ nop +/* 038230 80037630 35CF4000 */ ori $t7, $t6, 0x4000 +/* 038234 80037634 03E00008 */ jr $ra +/* 038238 80037638 A48F0006 */ sh $t7, 6($a0) + diff --git a/asm/non_matchings/unknown_032760/func_8003763C.s b/asm/non_matchings/unknown_032760/func_8003763C.s new file mode 100644 index 00000000..45287811 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003763C.s @@ -0,0 +1,45 @@ +glabel func_8003763C +/* 03823C 8003763C 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 038240 80037640 AFBF0014 */ sw $ra, 0x14($sp) +/* 038244 80037644 AFA40030 */ sw $a0, 0x30($sp) +/* 038248 80037648 AFA50034 */ sw $a1, 0x34($sp) +/* 03824C 8003764C 848E0006 */ lh $t6, 6($a0) +/* 038250 80037650 00802825 */ move $a1, $a0 +/* 038254 80037654 35CF4000 */ ori $t7, $t6, 0x4000 +/* 038258 80037658 A48F0006 */ sh $t7, 6($a0) +/* 03825C 8003765C AFA50030 */ sw $a1, 0x30($sp) +/* 038260 80037660 0C006EAB */ jal func_8001BAAC +/* 038264 80037664 27A40020 */ addiu $a0, $sp, 0x20 +/* 038268 80037668 8FA50030 */ lw $a1, 0x30($sp) +/* 03826C 8003766C 8FB80020 */ lw $t8, 0x20($sp) +/* 038270 80037670 8CA30078 */ lw $v1, 0x78($a1) +/* 038274 80037674 00000000 */ nop +/* 038278 80037678 0078082A */ slt $at, $v1, $t8 +/* 03827C 8003767C 10200014 */ beqz $at, .L800376D0 +/* 038280 80037680 0003C880 */ sll $t9, $v1, 2 +/* 038284 80037684 00594021 */ addu $t0, $v0, $t9 +/* 038288 80037688 8D040000 */ lw $a0, ($t0) +/* 03828C 8003768C 2401FFFF */ li $at, -1 +/* 038290 80037690 8C860064 */ lw $a2, 0x64($a0) +/* 038294 80037694 00000000 */ nop +/* 038298 80037698 84C90000 */ lh $t1, ($a2) +/* 03829C 8003769C 00000000 */ nop +/* 0382A0 800376A0 15210009 */ bne $t1, $at, .L800376C8 +/* 0382A4 800376A4 000361C0 */ sll $t4, $v1, 7 +/* 0382A8 800376A8 84AA0006 */ lh $t2, 6($a1) +/* 0382AC 800376AC 00000000 */ nop +/* 0382B0 800376B0 314BBFFF */ andi $t3, $t2, 0xbfff +/* 0382B4 800376B4 A4AB0006 */ sh $t3, 6($a1) +/* 0382B8 800376B8 ACC50150 */ sw $a1, 0x150($a2) +/* 0382BC 800376BC 8CA30078 */ lw $v1, 0x78($a1) +/* 0382C0 800376C0 00000000 */ nop +/* 0382C4 800376C4 000361C0 */ sll $t4, $v1, 7 +.L800376C8: +/* 0382C8 800376C8 01836023 */ subu $t4, $t4, $v1 +/* 0382CC 800376CC A4AC0018 */ sh $t4, 0x18($a1) +.L800376D0: +/* 0382D0 800376D0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0382D4 800376D4 27BD0030 */ addiu $sp, $sp, 0x30 +/* 0382D8 800376D8 03E00008 */ jr $ra +/* 0382DC 800376DC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_800376E0.s b/asm/non_matchings/unknown_032760/func_800376E0.s new file mode 100644 index 00000000..79fe671c --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800376E0.s @@ -0,0 +1,71 @@ +glabel func_800376E0 +/* 0382E0 800376E0 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0382E4 800376E4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0382E8 800376E8 AFA60028 */ sw $a2, 0x28($sp) +/* 0382EC 800376EC 8C830064 */ lw $v1, 0x64($a0) +/* 0382F0 800376F0 AFA40020 */ sw $a0, 0x20($sp) +/* 0382F4 800376F4 AFA50024 */ sw $a1, 0x24($sp) +/* 0382F8 800376F8 0C00B1F1 */ jal func_8002C7C4 +/* 0382FC 800376FC AFA3001C */ sw $v1, 0x1c($sp) +/* 038300 80037700 8FA50024 */ lw $a1, 0x24($sp) +/* 038304 80037704 AFA20018 */ sw $v0, 0x18($sp) +/* 038308 80037708 8FA3001C */ lw $v1, 0x1c($sp) +/* 03830C 8003770C 80AE0008 */ lb $t6, 8($a1) +/* 038310 80037710 8FA70020 */ lw $a3, 0x20($sp) +/* 038314 80037714 A46E0002 */ sh $t6, 2($v1) +/* 038318 80037718 80AF0009 */ lb $t7, 9($a1) +/* 03831C 8003771C 00000000 */ nop +/* 038320 80037720 A46F0004 */ sh $t7, 4($v1) +/* 038324 80037724 80B8000A */ lb $t8, 0xa($a1) +/* 038328 80037728 00000000 */ nop +/* 03832C 8003772C A4780006 */ sh $t8, 6($v1) +/* 038330 80037730 8CE60014 */ lw $a2, 0x14($a3) +/* 038334 80037734 C4EE0010 */ lwc1 $f14, 0x10($a3) +/* 038338 80037738 C4EC000C */ lwc1 $f12, 0xc($a3) +/* 03833C 8003773C 0C00A7C6 */ jal func_80029F18 +/* 038340 80037740 00000000 */ nop +/* 038344 80037744 8FA3001C */ lw $v1, 0x1c($sp) +/* 038348 80037748 8FA70020 */ lw $a3, 0x20($sp) +/* 03834C 8003774C A4620000 */ sh $v0, ($v1) +/* 038350 80037750 8FB90028 */ lw $t9, 0x28($sp) +/* 038354 80037754 00000000 */ nop +/* 038358 80037758 17200003 */ bnez $t9, .L80037768 +/* 03835C 8003775C 00000000 */ nop +/* 038360 80037760 A4600008 */ sh $zero, 8($v1) +/* 038364 80037764 A460000A */ sh $zero, 0xa($v1) +.L80037768: +/* 038368 80037768 84620000 */ lh $v0, ($v1) +/* 03836C 8003776C 2401FFFF */ li $at, -1 +/* 038370 80037770 10410016 */ beq $v0, $at, .L800377CC +/* 038374 80037774 00E02025 */ move $a0, $a3 +/* 038378 80037778 84640002 */ lh $a0, 2($v1) +/* 03837C 8003777C 00000000 */ nop +/* 038380 80037780 04810006 */ bgez $a0, .L8003779C +/* 038384 80037784 8FA80018 */ lw $t0, 0x18($sp) +/* 038388 80037788 A4600002 */ sh $zero, 2($v1) +/* 03838C 8003778C 84640002 */ lh $a0, 2($v1) +/* 038390 80037790 84620000 */ lh $v0, ($v1) +/* 038394 80037794 00000000 */ nop +/* 038398 80037798 8FA80018 */ lw $t0, 0x18($sp) +.L8003779C: +/* 03839C 8003779C 00025100 */ sll $t2, $v0, 4 +/* 0383A0 800377A0 8D090004 */ lw $t1, 4($t0) +/* 0383A4 800377A4 01425021 */ addu $t2, $t2, $v0 +/* 0383A8 800377A8 000A5080 */ sll $t2, $t2, 2 +/* 0383AC 800377AC 012A5821 */ addu $t3, $t1, $t2 +/* 0383B0 800377B0 85650020 */ lh $a1, 0x20($t3) +/* 0383B4 800377B4 00000000 */ nop +/* 0383B8 800377B8 0085082A */ slt $at, $a0, $a1 +/* 0383BC 800377BC 14200002 */ bnez $at, .L800377C8 +/* 0383C0 800377C0 24ACFFFF */ addiu $t4, $a1, -1 +/* 0383C4 800377C4 A46C0002 */ sh $t4, 2($v1) +.L800377C8: +/* 0383C8 800377C8 00E02025 */ move $a0, $a3 +.L800377CC: +/* 0383CC 800377CC 0C00DDF9 */ jal func_800377E4 +/* 0383D0 800377D0 3C050002 */ lui $a1, 2 +/* 0383D4 800377D4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0383D8 800377D8 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0383DC 800377DC 03E00008 */ jr $ra +/* 0383E0 800377E0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_800377E4.s b/asm/non_matchings/unknown_032760/func_800377E4.s new file mode 100644 index 00000000..0bcfe4ca --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800377E4.s @@ -0,0 +1,151 @@ +glabel func_800377E4 +/* 0383E4 800377E4 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 0383E8 800377E8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0383EC 800377EC 8C830064 */ lw $v1, 0x64($a0) +/* 0383F0 800377F0 2401FFFF */ li $at, -1 +/* 0383F4 800377F4 84680004 */ lh $t0, 4($v1) +/* 0383F8 800377F8 84690006 */ lh $t1, 6($v1) +/* 0383FC 800377FC 01050019 */ multu $t0, $a1 +/* 038400 80037800 84780008 */ lh $t8, 8($v1) +/* 038404 80037804 00004012 */ mflo $t0 +/* 038408 80037808 00087100 */ sll $t6, $t0, 4 +/* 03840C 8003780C 030EC821 */ addu $t9, $t8, $t6 +/* 038410 80037810 01250019 */ multu $t1, $a1 +/* 038414 80037814 846E000A */ lh $t6, 0xa($v1) +/* 038418 80037818 A4790008 */ sh $t9, 8($v1) +/* 03841C 8003781C 84620008 */ lh $v0, 8($v1) +/* 038420 80037820 00000000 */ nop +/* 038424 80037824 3058000F */ andi $t8, $v0, 0xf +/* 038428 80037828 A4780008 */ sh $t8, 8($v1) +/* 03842C 8003782C 00024103 */ sra $t0, $v0, 4 +/* 038430 80037830 00004812 */ mflo $t1 +/* 038434 80037834 00097900 */ sll $t7, $t1, 4 +/* 038438 80037838 01CF7821 */ addu $t7, $t6, $t7 +/* 03843C 8003783C A46F000A */ sh $t7, 0xa($v1) +/* 038440 80037840 8466000A */ lh $a2, 0xa($v1) +/* 038444 80037844 846E0000 */ lh $t6, ($v1) +/* 038448 80037848 30D9000F */ andi $t9, $a2, 0xf +/* 03844C 8003784C A479000A */ sh $t9, 0xa($v1) +/* 038450 80037850 11C1006D */ beq $t6, $at, .L80037A08 +/* 038454 80037854 00064903 */ sra $t1, $a2, 4 +/* 038458 80037858 AFA3003C */ sw $v1, 0x3c($sp) +/* 03845C 8003785C AFA80020 */ sw $t0, 0x20($sp) +/* 038460 80037860 0C00B1F1 */ jal func_8002C7C4 +/* 038464 80037864 AFA9001C */ sw $t1, 0x1c($sp) +/* 038468 80037868 8FA3003C */ lw $v1, 0x3c($sp) +/* 03846C 8003786C 8C4F0004 */ lw $t7, 4($v0) +/* 038470 80037870 84780000 */ lh $t8, ($v1) +/* 038474 80037874 8FA80020 */ lw $t0, 0x20($sp) +/* 038478 80037878 0018C900 */ sll $t9, $t8, 4 +/* 03847C 8003787C 0338C821 */ addu $t9, $t9, $t8 +/* 038480 80037880 84780002 */ lh $t8, 2($v1) +/* 038484 80037884 0019C880 */ sll $t9, $t9, 2 +/* 038488 80037888 01F95021 */ addu $t2, $t7, $t9 +/* 03848C 8003788C 00187880 */ sll $t7, $t8, 2 +/* 038490 80037890 8D4E000C */ lw $t6, 0xc($t2) +/* 038494 80037894 01F87823 */ subu $t7, $t7, $t8 +/* 038498 80037898 000F7880 */ sll $t7, $t7, 2 +/* 03849C 8003789C 01CF2021 */ addu $a0, $t6, $t7 +/* 0384A0 800378A0 908D0000 */ lbu $t5, ($a0) +/* 0384A4 800378A4 8FA9001C */ lw $t1, 0x1c($sp) +/* 0384A8 800378A8 848C0004 */ lh $t4, 4($a0) +/* 0384AC 800378AC 848B0010 */ lh $t3, 0x10($a0) +/* 0384B0 800378B0 240100FF */ li $at, 255 +/* 0384B4 800378B4 11A10055 */ beq $t5, $at, .L80037A0C +/* 0384B8 800378B8 8FBF0014 */ lw $ra, 0x14($sp) +/* 0384BC 800378BC 8C590000 */ lw $t9, ($v0) +/* 0384C0 800378C0 000DC0C0 */ sll $t8, $t5, 3 +/* 0384C4 800378C4 03387021 */ addu $t6, $t9, $t8 +/* 0384C8 800378C8 8DC70000 */ lw $a3, ($t6) +/* 0384CC 800378CC 018B082A */ slt $at, $t4, $t3 +/* 0384D0 800378D0 90E30000 */ lbu $v1, ($a3) +/* 0384D4 800378D4 01803025 */ move $a2, $t4 +/* 0384D8 800378D8 000329C0 */ sll $a1, $v1, 7 +/* 0384DC 800378DC 1020004A */ beqz $at, .L80037A08 +/* 0384E0 800378E0 00A02025 */ move $a0, $a1 +.L800378E4: +/* 0384E4 800378E4 8D590004 */ lw $t9, 4($t2) +/* 0384E8 800378E8 0006C100 */ sll $t8, $a2, 4 +/* 0384EC 800378EC 03381021 */ addu $v0, $t9, $t8 +/* 0384F0 800378F0 904E0000 */ lbu $t6, ($v0) +/* 0384F4 800378F4 24C60001 */ addiu $a2, $a2, 1 +/* 0384F8 800378F8 31CF0080 */ andi $t7, $t6, 0x80 +/* 0384FC 800378FC 15E00040 */ bnez $t7, .L80037A00 +/* 038500 80037900 00000000 */ nop +/* 038504 80037904 84430006 */ lh $v1, 6($v0) +/* 038508 80037908 0005C840 */ sll $t9, $a1, 1 +/* 03850C 8003790C 0323082A */ slt $at, $t9, $v1 +/* 038510 80037910 1020000A */ beqz $at, .L8003793C +/* 038514 80037914 00043840 */ sll $a3, $a0, 1 +/* 038518 80037918 0065C023 */ subu $t8, $v1, $a1 +/* 03851C 8003791C 844E000A */ lh $t6, 0xa($v0) +/* 038520 80037920 8459000E */ lh $t9, 0xe($v0) +/* 038524 80037924 A4580006 */ sh $t8, 6($v0) +/* 038528 80037928 01C57823 */ subu $t7, $t6, $a1 +/* 03852C 8003792C 0325C023 */ subu $t8, $t9, $a1 +/* 038530 80037930 84430006 */ lh $v1, 6($v0) +/* 038534 80037934 A44F000A */ sh $t7, 0xa($v0) +/* 038538 80037938 A458000E */ sh $t8, 0xe($v0) +.L8003793C: +/* 03853C 8003793C 04610008 */ bgez $v1, .L80037960 +/* 038540 80037940 00657021 */ addu $t6, $v1, $a1 +/* 038544 80037944 844F000A */ lh $t7, 0xa($v0) +/* 038548 80037948 8458000E */ lh $t8, 0xe($v0) +/* 03854C 8003794C A44E0006 */ sh $t6, 6($v0) +/* 038550 80037950 01E5C821 */ addu $t9, $t7, $a1 +/* 038554 80037954 03057021 */ addu $t6, $t8, $a1 +/* 038558 80037958 A459000A */ sh $t9, 0xa($v0) +/* 03855C 8003795C A44E000E */ sh $t6, 0xe($v0) +.L80037960: +/* 038560 80037960 84430004 */ lh $v1, 4($v0) +/* 038564 80037964 00000000 */ nop +/* 038568 80037968 00E3082A */ slt $at, $a3, $v1 +/* 03856C 8003796C 10200009 */ beqz $at, .L80037994 +/* 038570 80037970 00647823 */ subu $t7, $v1, $a0 +/* 038574 80037974 84590008 */ lh $t9, 8($v0) +/* 038578 80037978 844E000C */ lh $t6, 0xc($v0) +/* 03857C 8003797C A44F0004 */ sh $t7, 4($v0) +/* 038580 80037980 0324C023 */ subu $t8, $t9, $a0 +/* 038584 80037984 01C47823 */ subu $t7, $t6, $a0 +/* 038588 80037988 84430004 */ lh $v1, 4($v0) +/* 03858C 8003798C A4580008 */ sh $t8, 8($v0) +/* 038590 80037990 A44F000C */ sh $t7, 0xc($v0) +.L80037994: +/* 038594 80037994 04610009 */ bgez $v1, .L800379BC +/* 038598 80037998 0064C821 */ addu $t9, $v1, $a0 +/* 03859C 8003799C 84580008 */ lh $t8, 8($v0) +/* 0385A0 800379A0 844F000C */ lh $t7, 0xc($v0) +/* 0385A4 800379A4 A4590004 */ sh $t9, 4($v0) +/* 0385A8 800379A8 03047021 */ addu $t6, $t8, $a0 +/* 0385AC 800379AC 01E4C821 */ addu $t9, $t7, $a0 +/* 0385B0 800379B0 84430004 */ lh $v1, 4($v0) +/* 0385B4 800379B4 A44E0008 */ sh $t6, 8($v0) +/* 0385B8 800379B8 A459000C */ sh $t9, 0xc($v0) +.L800379BC: +/* 0385BC 800379BC 84580006 */ lh $t8, 6($v0) +/* 0385C0 800379C0 844F000A */ lh $t7, 0xa($v0) +/* 0385C4 800379C4 03097021 */ addu $t6, $t8, $t1 +/* 0385C8 800379C8 8458000E */ lh $t8, 0xe($v0) +/* 0385CC 800379CC A44E0006 */ sh $t6, 6($v0) +/* 0385D0 800379D0 01E9C821 */ addu $t9, $t7, $t1 +/* 0385D4 800379D4 03097021 */ addu $t6, $t8, $t1 +/* 0385D8 800379D8 A459000A */ sh $t9, 0xa($v0) +/* 0385DC 800379DC A44E000E */ sh $t6, 0xe($v0) +/* 0385E0 800379E0 84590008 */ lh $t9, 8($v0) +/* 0385E4 800379E4 844E000C */ lh $t6, 0xc($v0) +/* 0385E8 800379E8 00687821 */ addu $t7, $v1, $t0 +/* 0385EC 800379EC A44F0004 */ sh $t7, 4($v0) +/* 0385F0 800379F0 0328C021 */ addu $t8, $t9, $t0 +/* 0385F4 800379F4 01C87821 */ addu $t7, $t6, $t0 +/* 0385F8 800379F8 A4580008 */ sh $t8, 8($v0) +/* 0385FC 800379FC A44F000C */ sh $t7, 0xc($v0) +.L80037A00: +/* 038600 80037A00 14CBFFB8 */ bne $a2, $t3, .L800378E4 +/* 038604 80037A04 00000000 */ nop +.L80037A08: +/* 038608 80037A08 8FBF0014 */ lw $ra, 0x14($sp) +.L80037A0C: +/* 03860C 80037A0C 27BD0048 */ addiu $sp, $sp, 0x48 +/* 038610 80037A10 03E00008 */ jr $ra +/* 038614 80037A14 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80037A18.s b/asm/non_matchings/unknown_032760/func_80037A18.s new file mode 100644 index 00000000..6adff54c --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80037A18.s @@ -0,0 +1,197 @@ +glabel func_80037A18 +/* 038618 80037A18 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 03861C 80037A1C AFBF001C */ sw $ra, 0x1c($sp) +/* 038620 80037A20 AFB00018 */ sw $s0, 0x18($sp) +/* 038624 80037A24 AFA60030 */ sw $a2, 0x30($sp) +/* 038628 80037A28 90AF000B */ lbu $t7, 0xb($a1) +/* 03862C 80037A2C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 038630 80037A30 448F2000 */ mtc1 $t7, $f4 +/* 038634 80037A34 44811000 */ mtc1 $at, $f2 +/* 038638 80037A38 46802020 */ cvt.s.w $f0, $f4 +/* 03863C 80037A3C 3C014280 */ li $at, 0x42800000 # 64.000000 +/* 038640 80037A40 44813000 */ mtc1 $at, $f6 +/* 038644 80037A44 4602003C */ c.lt.s $f0, $f2 +/* 038648 80037A48 00808025 */ move $s0, $a0 +/* 03864C 80037A4C 45000002 */ bc1f .L80037A58 +/* 038650 80037A50 00A03825 */ move $a3, $a1 +/* 038654 80037A54 46001006 */ mov.s $f0, $f2 +.L80037A58: +/* 038658 80037A58 00000000 */ nop +/* 03865C 80037A5C 46060003 */ div.s $f0, $f0, $f6 +/* 038660 80037A60 8E180040 */ lw $t8, 0x40($s0) +/* 038664 80037A64 2401FFFE */ li $at, -2 +/* 038668 80037A68 C708000C */ lwc1 $f8, 0xc($t8) +/* 03866C 80037A6C 00000000 */ nop +/* 038670 80037A70 46004282 */ mul.s $f10, $f8, $f0 +/* 038674 80037A74 E60A0008 */ swc1 $f10, 8($s0) +/* 038678 80037A78 90F9000A */ lbu $t9, 0xa($a3) +/* 03867C 80037A7C 00000000 */ nop +/* 038680 80037A80 00194200 */ sll $t0, $t9, 8 +/* 038684 80037A84 A6080000 */ sh $t0, ($s0) +/* 038688 80037A88 90E90009 */ lbu $t1, 9($a3) +/* 03868C 80037A8C 00000000 */ nop +/* 038690 80037A90 00095200 */ sll $t2, $t1, 8 +/* 038694 80037A94 A60A0002 */ sh $t2, 2($s0) +/* 038698 80037A98 90EB0008 */ lbu $t3, 8($a3) +/* 03869C 80037A9C 00000000 */ nop +/* 0386A0 80037AA0 000B6200 */ sll $t4, $t3, 8 +/* 0386A4 80037AA4 A60C0004 */ sh $t4, 4($s0) +/* 0386A8 80037AA8 80E40010 */ lb $a0, 0x10($a3) +/* 0386AC 80037AAC 00000000 */ nop +/* 0386B0 80037AB0 14810006 */ bne $a0, $at, .L80037ACC +/* 0386B4 80037AB4 00000000 */ nop +/* 0386B8 80037AB8 0C007CEE */ jal func_8001F3B8 +/* 0386BC 80037ABC AFA7002C */ sw $a3, 0x2c($sp) +/* 0386C0 80037AC0 8FA7002C */ lw $a3, 0x2c($sp) +/* 0386C4 80037AC4 1000000C */ b .L80037AF8 +/* 0386C8 80037AC8 A0E20010 */ sb $v0, 0x10($a3) +.L80037ACC: +/* 0386CC 80037ACC 04810006 */ bgez $a0, .L80037AE8 +/* 0386D0 80037AD0 2881FFFE */ slti $at, $a0, -2 +/* 0386D4 80037AD4 14200004 */ bnez $at, .L80037AE8 +/* 0386D8 80037AD8 00000000 */ nop +/* 0386DC 80037ADC A0E00010 */ sb $zero, 0x10($a3) +/* 0386E0 80037AE0 80E40010 */ lb $a0, 0x10($a3) +/* 0386E4 80037AE4 00000000 */ nop +.L80037AE8: +/* 0386E8 80037AE8 0C007CF2 */ jal func_8001F3C8 +/* 0386EC 80037AEC AFA7002C */ sw $a3, 0x2c($sp) +/* 0386F0 80037AF0 8FA7002C */ lw $a3, 0x2c($sp) +/* 0386F4 80037AF4 00000000 */ nop +.L80037AF8: +/* 0386F8 80037AF8 80E30021 */ lb $v1, 0x21($a3) +/* 0386FC 80037AFC 2401FFFF */ li $at, -1 +/* 038700 80037B00 14610009 */ bne $v1, $at, .L80037B28 +/* 038704 80037B04 24010014 */ li $at, 20 +/* 038708 80037B08 0C007910 */ jal func_8001E440 +/* 03870C 80037B0C AFA7002C */ sw $a3, 0x2c($sp) +/* 038710 80037B10 8FA7002C */ lw $a3, 0x2c($sp) +/* 038714 80037B14 00000000 */ nop +/* 038718 80037B18 A0E20021 */ sb $v0, 0x21($a3) +/* 03871C 80037B1C 80E30021 */ lb $v1, 0x21($a3) +/* 038720 80037B20 00000000 */ nop +/* 038724 80037B24 24010014 */ li $at, 20 +.L80037B28: +/* 038728 80037B28 14610005 */ bne $v1, $at, .L80037B40 +/* 03872C 80037B2C 00000000 */ nop +/* 038730 80037B30 80ED0010 */ lb $t5, 0x10($a3) +/* 038734 80037B34 00000000 */ nop +/* 038738 80037B38 35AE0080 */ ori $t6, $t5, 0x80 +/* 03873C 80037B3C A0EE0010 */ sb $t6, 0x10($a3) +.L80037B40: +/* 038740 80037B40 80E40010 */ lb $a0, 0x10($a3) +/* 038744 80037B44 0C007CFB */ jal func_8001F3EC +/* 038748 80037B48 AFA7002C */ sw $a3, 0x2c($sp) +/* 03874C 80037B4C 8FA7002C */ lw $a3, 0x2c($sp) +/* 038750 80037B50 2401FFFE */ li $at, -2 +/* 038754 80037B54 80E30011 */ lb $v1, 0x11($a3) +/* 038758 80037B58 00000000 */ nop +/* 03875C 80037B5C 14610008 */ bne $v1, $at, .L80037B80 +/* 038760 80037B60 00000000 */ nop +/* 038764 80037B64 A0E20011 */ sb $v0, 0x11($a3) +/* 038768 80037B68 80EF0011 */ lb $t7, 0x11($a3) +/* 03876C 80037B6C 00000000 */ nop +/* 038770 80037B70 05E1000D */ bgez $t7, .L80037BA8 +/* 038774 80037B74 00000000 */ nop +/* 038778 80037B78 1000000B */ b .L80037BA8 +/* 03877C 80037B7C A0E00011 */ sb $zero, 0x11($a3) +.L80037B80: +/* 038780 80037B80 04400006 */ bltz $v0, .L80037B9C +/* 038784 80037B84 0062082A */ slt $at, $v1, $v0 +/* 038788 80037B88 14200004 */ bnez $at, .L80037B9C +/* 03878C 80037B8C 00000000 */ nop +/* 038790 80037B90 A0E20011 */ sb $v0, 0x11($a3) +/* 038794 80037B94 80E30011 */ lb $v1, 0x11($a3) +/* 038798 80037B98 00000000 */ nop +.L80037B9C: +/* 03879C 80037B9C 04610002 */ bgez $v1, .L80037BA8 +/* 0387A0 80037BA0 00000000 */ nop +/* 0387A4 80037BA4 A0E00011 */ sb $zero, 0x11($a3) +.L80037BA8: +/* 0387A8 80037BA8 0C0044E4 */ jal func_80011390 +/* 0387AC 80037BAC AFA7002C */ sw $a3, 0x2c($sp) +/* 0387B0 80037BB0 8FA7002C */ lw $a3, 0x2c($sp) +/* 0387B4 80037BB4 00002025 */ move $a0, $zero +/* 0387B8 80037BB8 80F80010 */ lb $t8, 0x10($a3) +/* 0387BC 80037BBC 00000000 */ nop +/* 0387C0 80037BC0 AE18007C */ sw $t8, 0x7c($s0) +/* 0387C4 80037BC4 8FB90030 */ lw $t9, 0x30($sp) +/* 0387C8 80037BC8 00000000 */ nop +/* 0387CC 80037BCC AE190078 */ sw $t9, 0x78($s0) +/* 0387D0 80037BD0 8FA80030 */ lw $t0, 0x30($sp) +/* 0387D4 80037BD4 00000000 */ nop +/* 0387D8 80037BD8 11000008 */ beqz $t0, .L80037BFC +/* 0387DC 80037BDC 00000000 */ nop +/* 0387E0 80037BE0 0C01A955 */ jal func_8006A554 +/* 0387E4 80037BE4 AFA7002C */ sw $a3, 0x2c($sp) +/* 0387E8 80037BE8 8FA7002C */ lw $a3, 0x2c($sp) +/* 0387EC 80037BEC 30490001 */ andi $t1, $v0, 1 +/* 0387F0 80037BF0 11200002 */ beqz $t1, .L80037BFC +/* 0387F4 80037BF4 240A0002 */ li $t2, 2 +/* 0387F8 80037BF8 AE0A0078 */ sw $t2, 0x78($s0) +.L80037BFC: +/* 0387FC 80037BFC 0C007910 */ jal func_8001E440 +/* 038800 80037C00 AFA7002C */ sw $a3, 0x2c($sp) +/* 038804 80037C04 8FA7002C */ lw $a3, 0x2c($sp) +/* 038808 80037C08 24010014 */ li $at, 20 +/* 03880C 80037C0C 80E30021 */ lb $v1, 0x21($a3) +/* 038810 80037C10 00000000 */ nop +/* 038814 80037C14 10430003 */ beq $v0, $v1, .L80037C24 +/* 038818 80037C18 00000000 */ nop +/* 03881C 80037C1C 14610012 */ bne $v1, $at, .L80037C68 +/* 038820 80037C20 00000000 */ nop +.L80037C24: +/* 038824 80037C24 8E0B0064 */ lw $t3, 0x64($s0) +/* 038828 80037C28 00000000 */ nop +/* 03882C 80037C2C 1560000E */ bnez $t3, .L80037C68 +/* 038830 80037C30 00000000 */ nop +/* 038834 80037C34 80EC0011 */ lb $t4, 0x11($a3) +/* 038838 80037C38 00000000 */ nop +/* 03883C 80037C3C 1580000A */ bnez $t4, .L80037C68 +/* 038840 80037C40 00000000 */ nop +/* 038844 80037C44 84ED000C */ lh $t5, 0xc($a3) +/* 038848 80037C48 2401FFFF */ li $at, -1 +/* 03884C 80037C4C 11A10006 */ beq $t5, $at, .L80037C68 +/* 038850 80037C50 02002025 */ move $a0, $s0 +/* 038854 80037C54 00E02825 */ move $a1, $a3 +/* 038858 80037C58 0C007C8F */ jal func_8001F23C +/* 03885C 80037C5C AFA7002C */ sw $a3, 0x2c($sp) +/* 038860 80037C60 8FA7002C */ lw $a3, 0x2c($sp) +/* 038864 80037C64 00000000 */ nop +.L80037C68: +/* 038868 80037C68 8E020064 */ lw $v0, 0x64($s0) +/* 03886C 80037C6C 02002025 */ move $a0, $s0 +/* 038870 80037C70 10400012 */ beqz $v0, .L80037CBC +/* 038874 80037C74 00402825 */ move $a1, $v0 +/* 038878 80037C78 AFA20024 */ sw $v0, 0x24($sp) +/* 03887C 80037C7C 0C007BE9 */ jal func_8001EFA4 +/* 038880 80037C80 AFA7002C */ sw $a3, 0x2c($sp) +/* 038884 80037C84 8FA7002C */ lw $a3, 0x2c($sp) +/* 038888 80037C88 8FA50024 */ lw $a1, 0x24($sp) +/* 03888C 80037C8C 80EE0011 */ lb $t6, 0x11($a3) +/* 038890 80037C90 00000000 */ nop +/* 038894 80037C94 15C00006 */ bnez $t6, .L80037CB0 +/* 038898 80037C98 00000000 */ nop +/* 03889C 80037C9C 84EF000C */ lh $t7, 0xc($a3) +/* 0388A0 80037CA0 84B8004A */ lh $t8, 0x4a($a1) +/* 0388A4 80037CA4 00000000 */ nop +/* 0388A8 80037CA8 11F80004 */ beq $t7, $t8, .L80037CBC +/* 0388AC 80037CAC 00000000 */ nop +.L80037CB0: +/* 0388B0 80037CB0 0C003FEE */ jal func_8000FFB8 +/* 0388B4 80037CB4 00A02025 */ move $a0, $a1 +/* 0388B8 80037CB8 AE000064 */ sw $zero, 0x64($s0) +.L80037CBC: +/* 0388BC 80037CBC 8E04007C */ lw $a0, 0x7c($s0) +/* 0388C0 80037CC0 0C008580 */ jal func_80021600 +/* 0388C4 80037CC4 00000000 */ nop +/* 0388C8 80037CC8 10400004 */ beqz $v0, .L80037CDC +/* 0388CC 80037CCC 8FBF001C */ lw $ra, 0x1c($sp) +/* 0388D0 80037CD0 0C007B9D */ jal func_8001EE74 +/* 0388D4 80037CD4 00000000 */ nop +/* 0388D8 80037CD8 8FBF001C */ lw $ra, 0x1c($sp) +.L80037CDC: +/* 0388DC 80037CDC 8FB00018 */ lw $s0, 0x18($sp) +/* 0388E0 80037CE0 03E00008 */ jr $ra +/* 0388E4 80037CE4 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_032760/func_80037CE8.s b/asm/non_matchings/unknown_032760/func_80037CE8.s new file mode 100644 index 00000000..bc236401 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80037CE8.s @@ -0,0 +1,10 @@ +glabel func_80037CE8 +/* 0388E8 80037CE8 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0388EC 80037CEC AFBF0014 */ sw $ra, 0x14($sp) +/* 0388F0 80037CF0 0C007D18 */ jal func_8001F460 +/* 0388F4 80037CF4 00803025 */ move $a2, $a0 +/* 0388F8 80037CF8 8FBF0014 */ lw $ra, 0x14($sp) +/* 0388FC 80037CFC 27BD0018 */ addiu $sp, $sp, 0x18 +/* 038900 80037D00 03E00008 */ jr $ra +/* 038904 80037D04 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80037D08.s b/asm/non_matchings/unknown_032760/func_80037D08.s new file mode 100644 index 00000000..4dfe053d --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80037D08.s @@ -0,0 +1,22 @@ +glabel func_80037D08 +/* 038908 80037D08 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 03890C 80037D0C AFBF0014 */ sw $ra, 0x14($sp) +/* 038910 80037D10 8C8E0064 */ lw $t6, 0x64($a0) +/* 038914 80037D14 00803025 */ move $a2, $a0 +/* 038918 80037D18 0C007D18 */ jal func_8001F460 +/* 03891C 80037D1C AFAE0018 */ sw $t6, 0x18($sp) +/* 038920 80037D20 8FB80018 */ lw $t8, 0x18($sp) +/* 038924 80037D24 240F0001 */ li $t7, 1 +/* 038928 80037D28 8719002A */ lh $t9, 0x2a($t8) +/* 03892C 80037D2C 01E22023 */ subu $a0, $t7, $v0 +/* 038930 80037D30 1B200002 */ blez $t9, .L80037D3C +/* 038934 80037D34 00000000 */ nop +/* 038938 80037D38 00002025 */ move $a0, $zero +.L80037D3C: +/* 03893C 80037D3C 0C008D74 */ jal func_800235D0 +/* 038940 80037D40 00000000 */ nop +/* 038944 80037D44 8FBF0014 */ lw $ra, 0x14($sp) +/* 038948 80037D48 27BD0020 */ addiu $sp, $sp, 0x20 +/* 03894C 80037D4C 03E00008 */ jr $ra +/* 038950 80037D50 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80037D54.s b/asm/non_matchings/unknown_032760/func_80037D54.s new file mode 100644 index 00000000..d15ce8bf --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80037D54.s @@ -0,0 +1,9 @@ +glabel func_80037D54 +/* 038954 80037D54 AFA40000 */ sw $a0, ($sp) +/* 038958 80037D58 03E00008 */ jr $ra +/* 03895C 80037D5C AFA50004 */ sw $a1, 4($sp) + +/* 038960 80037D60 AFA40000 */ sw $a0, ($sp) +/* 038964 80037D64 03E00008 */ jr $ra +/* 038968 80037D68 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_80037D6C.s b/asm/non_matchings/unknown_032760/func_80037D6C.s new file mode 100644 index 00000000..c5561fd3 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80037D6C.s @@ -0,0 +1,5 @@ +glabel func_80037D6C +/* 03896C 80037D6C AFA40000 */ sw $a0, ($sp) +/* 038970 80037D70 03E00008 */ jr $ra +/* 038974 80037D74 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_80037D78.s b/asm/non_matchings/unknown_032760/func_80037D78.s new file mode 100644 index 00000000..ca312ffa --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80037D78.s @@ -0,0 +1,232 @@ +glabel func_80037D78 +/* 038978 80037D78 27BDFED8 */ addiu $sp, $sp, -0x128 +/* 03897C 80037D7C AFB00038 */ sw $s0, 0x38($sp) +/* 038980 80037D80 00808025 */ move $s0, $a0 +/* 038984 80037D84 AFBF005C */ sw $ra, 0x5c($sp) +/* 038988 80037D88 AFB1003C */ sw $s1, 0x3c($sp) +/* 03898C 80037D8C 00A08825 */ move $s1, $a1 +/* 038990 80037D90 AFBE0058 */ sw $fp, 0x58($sp) +/* 038994 80037D94 AFB70054 */ sw $s7, 0x54($sp) +/* 038998 80037D98 AFB60050 */ sw $s6, 0x50($sp) +/* 03899C 80037D9C AFB5004C */ sw $s5, 0x4c($sp) +/* 0389A0 80037DA0 AFB40048 */ sw $s4, 0x48($sp) +/* 0389A4 80037DA4 AFB30044 */ sw $s3, 0x44($sp) +/* 0389A8 80037DA8 AFB20040 */ sw $s2, 0x40($sp) +/* 0389AC 80037DAC E7B70030 */ swc1 $f23, 0x30($sp) +/* 0389B0 80037DB0 E7B60034 */ swc1 $f22, 0x34($sp) +/* 0389B4 80037DB4 E7B50028 */ swc1 $f21, 0x28($sp) +/* 0389B8 80037DB8 E7B4002C */ swc1 $f20, 0x2c($sp) +/* 0389BC 80037DBC 0C007D18 */ jal func_8001F460 +/* 0389C0 80037DC0 02003025 */ move $a2, $s0 +/* 0389C4 80037DC4 8E0E0068 */ lw $t6, 0x68($s0) +/* 0389C8 80037DC8 00000000 */ nop +/* 0389CC 80037DCC 8DC30000 */ lw $v1, ($t6) +/* 0389D0 80037DD0 00000000 */ nop +/* 0389D4 80037DD4 106000B9 */ beqz $v1, .L800380BC +/* 0389D8 80037DD8 8FBF005C */ lw $ra, 0x5c($sp) +/* 0389DC 80037DDC 8E02007C */ lw $v0, 0x7c($s0) +/* 0389E0 80037DE0 8C730000 */ lw $s3, ($v1) +/* 0389E4 80037DE4 18400003 */ blez $v0, .L80037DF4 +/* 0389E8 80037DE8 00517823 */ subu $t7, $v0, $s1 +/* 0389EC 80037DEC 10000002 */ b .L80037DF8 +/* 0389F0 80037DF0 AE0F007C */ sw $t7, 0x7c($s0) +.L80037DF4: +/* 0389F4 80037DF4 AE00007C */ sw $zero, 0x7c($s0) +.L80037DF8: +/* 0389F8 80037DF8 8E180060 */ lw $t8, 0x60($s0) +/* 0389FC 80037DFC 00000000 */ nop +/* 038A00 80037E00 130000AE */ beqz $t8, .L800380BC +/* 038A04 80037E04 8FBF005C */ lw $ra, 0x5c($sp) +/* 038A08 80037E08 8E19007C */ lw $t9, 0x7c($s0) +/* 038A0C 80037E0C 00000000 */ nop +/* 038A10 80037E10 172000AA */ bnez $t9, .L800380BC +/* 038A14 80037E14 8FBF005C */ lw $ra, 0x5c($sp) +/* 038A18 80037E18 8E090074 */ lw $t1, 0x74($s0) +/* 038A1C 80037E1C 240B0014 */ li $t3, 20 +/* 038A20 80037E20 312A0001 */ andi $t2, $t1, 1 +/* 038A24 80037E24 114000A4 */ beqz $t2, .L800380B8 +/* 038A28 80037E28 27A400CC */ addiu $a0, $sp, 0xcc +/* 038A2C 80037E2C AE0B007C */ sw $t3, 0x7c($s0) +/* 038A30 80037E30 0C01BF0C */ jal func_8006FC30 +/* 038A34 80037E34 02002825 */ move $a1, $s0 +/* 038A38 80037E38 4480A000 */ mtc1 $zero, $f20 +/* 038A3C 80037E3C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 038A40 80037E40 44812000 */ mtc1 $at, $f4 +/* 038A44 80037E44 E7B40078 */ swc1 $f20, 0x78($sp) +/* 038A48 80037E48 E7B4007C */ swc1 $f20, 0x7c($sp) +/* 038A4C 80037E4C E7B40080 */ swc1 $f20, 0x80($sp) +/* 038A50 80037E50 E7A40074 */ swc1 $f4, 0x74($sp) +/* 038A54 80037E54 860C0000 */ lh $t4, ($s0) +/* 038A58 80037E58 27B4008C */ addiu $s4, $sp, 0x8c +/* 038A5C 80037E5C A7AC006C */ sh $t4, 0x6c($sp) +/* 038A60 80037E60 860D0002 */ lh $t5, 2($s0) +/* 038A64 80037E64 A7A00070 */ sh $zero, 0x70($sp) +/* 038A68 80037E68 02802025 */ move $a0, $s4 +/* 038A6C 80037E6C 27A5006C */ addiu $a1, $sp, 0x6c +/* 038A70 80037E70 0C01BF0C */ jal func_8006FC30 +/* 038A74 80037E74 A7AD006E */ sh $t5, 0x6e($sp) +/* 038A78 80037E78 8E020060 */ lw $v0, 0x60($s0) +/* 038A7C 80037E7C 00008825 */ move $s1, $zero +/* 038A80 80037E80 8C4E0000 */ lw $t6, ($v0) +/* 038A84 80037E84 3C01C1F0 */ li $at, 0xC1F00000 # -30.000000 +/* 038A88 80037E88 19C0008B */ blez $t6, .L800380B8 +/* 038A8C 80037E8C 27BE0084 */ addiu $fp, $sp, 0x84 +/* 038A90 80037E90 4481B000 */ mtc1 $at, $f22 +/* 038A94 80037E94 27B70114 */ addiu $s7, $sp, 0x114 +/* 038A98 80037E98 27B60118 */ addiu $s6, $sp, 0x118 +/* 038A9C 80037E9C 27B5011C */ addiu $s5, $sp, 0x11c +/* 038AA0 80037EA0 2412000A */ li $s2, 10 +.L80037EA4: +/* 038AA4 80037EA4 8C4F002C */ lw $t7, 0x2c($v0) +/* 038AA8 80037EA8 00000000 */ nop +/* 038AAC 80037EAC 01F1C021 */ addu $t8, $t7, $s1 +/* 038AB0 80037EB0 83030000 */ lb $v1, ($t8) +/* 038AB4 80037EB4 00000000 */ nop +/* 038AB8 80037EB8 04600078 */ bltz $v1, .L8003809C +/* 038ABC 80037EBC 00000000 */ nop +/* 038AC0 80037EC0 86790018 */ lh $t9, 0x18($s3) +/* 038AC4 80037EC4 00000000 */ nop +/* 038AC8 80037EC8 0079082A */ slt $at, $v1, $t9 +/* 038ACC 80037ECC 10200073 */ beqz $at, .L8003809C +/* 038AD0 80037ED0 00000000 */ nop +/* 038AD4 80037ED4 8E080044 */ lw $t0, 0x44($s0) +/* 038AD8 80037ED8 00000000 */ nop +/* 038ADC 80037EDC 1100006F */ beqz $t0, .L8003809C +/* 038AE0 80037EE0 00000000 */ nop +/* 038AE4 80037EE4 8E690014 */ lw $t1, 0x14($s3) +/* 038AE8 80037EE8 00031040 */ sll $v0, $v1, 1 +/* 038AEC 80037EEC 01225021 */ addu $t2, $t1, $v0 +/* 038AF0 80037EF0 854B0000 */ lh $t3, ($t2) +/* 038AF4 80037EF4 27A400CC */ addiu $a0, $sp, 0xcc +/* 038AF8 80037EF8 01720019 */ multu $t3, $s2 +/* 038AFC 80037EFC 00006012 */ mflo $t4 +/* 038B00 80037F00 010C6821 */ addu $t5, $t0, $t4 +/* 038B04 80037F04 85AE0000 */ lh $t6, ($t5) +/* 038B08 80037F08 00000000 */ nop +/* 038B0C 80037F0C 448E3000 */ mtc1 $t6, $f6 +/* 038B10 80037F10 00000000 */ nop +/* 038B14 80037F14 46803220 */ cvt.s.w $f8, $f6 +/* 038B18 80037F18 E7A8011C */ swc1 $f8, 0x11c($sp) +/* 038B1C 80037F1C 8E780014 */ lw $t8, 0x14($s3) +/* 038B20 80037F20 8E0F0044 */ lw $t7, 0x44($s0) +/* 038B24 80037F24 0302C821 */ addu $t9, $t8, $v0 +/* 038B28 80037F28 87290000 */ lh $t1, ($t9) +/* 038B2C 80037F2C 8FA5011C */ lw $a1, 0x11c($sp) +/* 038B30 80037F30 01320019 */ multu $t1, $s2 +/* 038B34 80037F34 00005012 */ mflo $t2 +/* 038B38 80037F38 01EA5821 */ addu $t3, $t7, $t2 +/* 038B3C 80037F3C 856C0002 */ lh $t4, 2($t3) +/* 038B40 80037F40 00000000 */ nop +/* 038B44 80037F44 448C5000 */ mtc1 $t4, $f10 +/* 038B48 80037F48 00000000 */ nop +/* 038B4C 80037F4C 46805420 */ cvt.s.w $f16, $f10 +/* 038B50 80037F50 E7B00118 */ swc1 $f16, 0x118($sp) +/* 038B54 80037F54 8E6E0014 */ lw $t6, 0x14($s3) +/* 038B58 80037F58 8E0D0044 */ lw $t5, 0x44($s0) +/* 038B5C 80037F5C 01C2C021 */ addu $t8, $t6, $v0 +/* 038B60 80037F60 87190000 */ lh $t9, ($t8) +/* 038B64 80037F64 8FA60118 */ lw $a2, 0x118($sp) +/* 038B68 80037F68 03320019 */ multu $t9, $s2 +/* 038B6C 80037F6C 00004812 */ mflo $t1 +/* 038B70 80037F70 01A97821 */ addu $t7, $t5, $t1 +/* 038B74 80037F74 85EA0004 */ lh $t2, 4($t7) +/* 038B78 80037F78 AFB70018 */ sw $s7, 0x18($sp) +/* 038B7C 80037F7C 448A9000 */ mtc1 $t2, $f18 +/* 038B80 80037F80 AFB60014 */ sw $s6, 0x14($sp) +/* 038B84 80037F84 46809120 */ cvt.s.w $f4, $f18 +/* 038B88 80037F88 AFB50010 */ sw $s5, 0x10($sp) +/* 038B8C 80037F8C E7A40114 */ swc1 $f4, 0x114($sp) +/* 038B90 80037F90 8FA70114 */ lw $a3, 0x114($sp) +/* 038B94 80037F94 0C01BD93 */ jal func_8006F64C +/* 038B98 80037F98 00000000 */ nop +/* 038B9C 80037F9C 444BF800 */ cfc1 $t3, $31 +/* 038BA0 80037FA0 C7A6011C */ lwc1 $f6, 0x11c($sp) +/* 038BA4 80037FA4 35610003 */ ori $at, $t3, 3 +/* 038BA8 80037FA8 38210002 */ xori $at, $at, 2 +/* 038BAC 80037FAC 44C1F800 */ ctc1 $at, $31 +/* 038BB0 80037FB0 C7AA0118 */ lwc1 $f10, 0x118($sp) +/* 038BB4 80037FB4 46003224 */ cvt.w.s $f8, $f6 +/* 038BB8 80037FB8 C7B20114 */ lwc1 $f18, 0x114($sp) +/* 038BBC 80037FBC 44CBF800 */ ctc1 $t3, $31 +/* 038BC0 80037FC0 440C4000 */ mfc1 $t4, $f8 +/* 038BC4 80037FC4 24090008 */ li $t1, 8 +/* 038BC8 80037FC8 444EF800 */ cfc1 $t6, $31 +/* 038BCC 80037FCC 240F00C6 */ li $t7, 198 +/* 038BD0 80037FD0 35C10003 */ ori $at, $t6, 3 +/* 038BD4 80037FD4 38210002 */ xori $at, $at, 2 +/* 038BD8 80037FD8 44C1F800 */ ctc1 $at, $31 +/* 038BDC 80037FDC A3A90085 */ sb $t1, 0x85($sp) +/* 038BE0 80037FE0 46005424 */ cvt.w.s $f16, $f10 +/* 038BE4 80037FE4 A3AF0084 */ sb $t7, 0x84($sp) +/* 038BE8 80037FE8 44CEF800 */ ctc1 $t6, $31 +/* 038BEC 80037FEC 44188000 */ mfc1 $t8, $f16 +/* 038BF0 80037FF0 03C02025 */ move $a0, $fp +/* 038BF4 80037FF4 4459F800 */ cfc1 $t9, $31 +/* 038BF8 80037FF8 24050001 */ li $a1, 1 +/* 038BFC 80037FFC 37210003 */ ori $at, $t9, 3 +/* 038C00 80038000 38210002 */ xori $at, $at, 2 +/* 038C04 80038004 44C1F800 */ ctc1 $at, $31 +/* 038C08 80038008 A7AC0086 */ sh $t4, 0x86($sp) +/* 038C0C 8003800C 46009124 */ cvt.w.s $f4, $f18 +/* 038C10 80038010 A7B80088 */ sh $t8, 0x88($sp) +/* 038C14 80038014 440D2000 */ mfc1 $t5, $f4 +/* 038C18 80038018 44D9F800 */ ctc1 $t9, $31 +/* 038C1C 8003801C 0C003A95 */ jal func_8000EA54 +/* 038C20 80038020 A7AD008A */ sh $t5, 0x8a($sp) +/* 038C24 80038024 1040001D */ beqz $v0, .L8003809C +/* 038C28 80038028 34018000 */ li $at, 32768 +/* 038C2C 8003802C AC40003C */ sw $zero, 0x3c($v0) +/* 038C30 80038030 860A0000 */ lh $t2, ($s0) +/* 038C34 80038034 2418003C */ li $t8, 60 +/* 038C38 80038038 01415821 */ addu $t3, $t2, $at +/* 038C3C 8003803C A44B0000 */ sh $t3, ($v0) +/* 038C40 80038040 860C0002 */ lh $t4, 2($s0) +/* 038C44 80038044 AC580078 */ sw $t8, 0x78($v0) +/* 038C48 80038048 000C7023 */ negu $t6, $t4 +/* 038C4C 8003804C A44E0002 */ sh $t6, 2($v0) +/* 038C50 80038050 4405A000 */ mfc1 $a1, $f20 +/* 038C54 80038054 4406A000 */ mfc1 $a2, $f20 +/* 038C58 80038058 4407B000 */ mfc1 $a3, $f22 +/* 038C5C 8003805C 2459001C */ addiu $t9, $v0, 0x1c +/* 038C60 80038060 244D0020 */ addiu $t5, $v0, 0x20 +/* 038C64 80038064 24490024 */ addiu $t1, $v0, 0x24 +/* 038C68 80038068 AFA90018 */ sw $t1, 0x18($sp) +/* 038C6C 8003806C AFAD0014 */ sw $t5, 0x14($sp) +/* 038C70 80038070 AFB90010 */ sw $t9, 0x10($sp) +/* 038C74 80038074 0C01BD93 */ jal func_8006F64C +/* 038C78 80038078 02802025 */ move $a0, $s4 +/* 038C7C 8003807C 8E05000C */ lw $a1, 0xc($s0) +/* 038C80 80038080 8E060010 */ lw $a2, 0x10($s0) +/* 038C84 80038084 8E070014 */ lw $a3, 0x14($s0) +/* 038C88 80038088 240F0004 */ li $t7, 4 +/* 038C8C 8003808C AFAF0010 */ sw $t7, 0x10($sp) +/* 038C90 80038090 AFA00014 */ sw $zero, 0x14($sp) +/* 038C94 80038094 0C002556 */ jal func_80009558 +/* 038C98 80038098 24040133 */ li $a0, 307 +.L8003809C: +/* 038C9C 8003809C 8E020060 */ lw $v0, 0x60($s0) +/* 038CA0 800380A0 26310001 */ addiu $s1, $s1, 1 +/* 038CA4 800380A4 8C4A0000 */ lw $t2, ($v0) +/* 038CA8 800380A8 00000000 */ nop +/* 038CAC 800380AC 022A082A */ slt $at, $s1, $t2 +/* 038CB0 800380B0 1420FF7C */ bnez $at, .L80037EA4 +/* 038CB4 800380B4 00000000 */ nop +.L800380B8: +/* 038CB8 800380B8 8FBF005C */ lw $ra, 0x5c($sp) +.L800380BC: +/* 038CBC 800380BC C7B50028 */ lwc1 $f21, 0x28($sp) +/* 038CC0 800380C0 C7B4002C */ lwc1 $f20, 0x2c($sp) +/* 038CC4 800380C4 C7B70030 */ lwc1 $f23, 0x30($sp) +/* 038CC8 800380C8 C7B60034 */ lwc1 $f22, 0x34($sp) +/* 038CCC 800380CC 8FB00038 */ lw $s0, 0x38($sp) +/* 038CD0 800380D0 8FB1003C */ lw $s1, 0x3c($sp) +/* 038CD4 800380D4 8FB20040 */ lw $s2, 0x40($sp) +/* 038CD8 800380D8 8FB30044 */ lw $s3, 0x44($sp) +/* 038CDC 800380DC 8FB40048 */ lw $s4, 0x48($sp) +/* 038CE0 800380E0 8FB5004C */ lw $s5, 0x4c($sp) +/* 038CE4 800380E4 8FB60050 */ lw $s6, 0x50($sp) +/* 038CE8 800380E8 8FB70054 */ lw $s7, 0x54($sp) +/* 038CEC 800380EC 8FBE0058 */ lw $fp, 0x58($sp) +/* 038CF0 800380F0 03E00008 */ jr $ra +/* 038CF4 800380F4 27BD0128 */ addiu $sp, $sp, 0x128 + diff --git a/asm/non_matchings/unknown_032760/func_800380F8.s b/asm/non_matchings/unknown_032760/func_800380F8.s new file mode 100644 index 00000000..81f4fe2a --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800380F8.s @@ -0,0 +1,43 @@ +glabel func_800380F8 +/* 038CF8 800380F8 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 038CFC 800380FC AFBF0014 */ sw $ra, 0x14($sp) +/* 038D00 80038100 AFA40018 */ sw $a0, 0x18($sp) +/* 038D04 80038104 0C007D18 */ jal func_8001F460 +/* 038D08 80038108 00803025 */ move $a2, $a0 +/* 038D0C 8003810C 8FA40018 */ lw $a0, 0x18($sp) +/* 038D10 80038110 00000000 */ nop +/* 038D14 80038114 8C830060 */ lw $v1, 0x60($a0) +/* 038D18 80038118 00000000 */ nop +/* 038D1C 8003811C 10600018 */ beqz $v1, .L80038180 +/* 038D20 80038120 8FBF0014 */ lw $ra, 0x14($sp) +/* 038D24 80038124 8C620000 */ lw $v0, ($v1) +/* 038D28 80038128 24010003 */ li $at, 3 +/* 038D2C 8003812C 18400013 */ blez $v0, .L8003817C +/* 038D30 80038130 240E4000 */ li $t6, 16384 +/* 038D34 80038134 14410004 */ bne $v0, $at, .L80038148 +/* 038D38 80038138 00000000 */ nop +/* 038D3C 8003813C 8C62000C */ lw $v0, 0xc($v1) +/* 038D40 80038140 10000004 */ b .L80038154 +/* 038D44 80038144 804F003A */ lb $t7, 0x3a($v0) +.L80038148: +/* 038D48 80038148 8C620004 */ lw $v0, 4($v1) +/* 038D4C 8003814C 00000000 */ nop +/* 038D50 80038150 804F003A */ lb $t7, 0x3a($v0) +.L80038154: +/* 038D54 80038154 8C590040 */ lw $t9, 0x40($v0) +/* 038D58 80038158 25F80001 */ addiu $t8, $t7, 1 +/* 038D5C 8003815C A058003A */ sb $t8, 0x3a($v0) +/* 038D60 80038160 A44E0000 */ sh $t6, ($v0) +/* 038D64 80038164 8049003A */ lb $t1, 0x3a($v0) +/* 038D68 80038168 83280055 */ lb $t0, 0x55($t9) +/* 038D6C 8003816C 00000000 */ nop +/* 038D70 80038170 15090003 */ bne $t0, $t1, .L80038180 +/* 038D74 80038174 8FBF0014 */ lw $ra, 0x14($sp) +/* 038D78 80038178 A040003A */ sb $zero, 0x3a($v0) +.L8003817C: +/* 038D7C 8003817C 8FBF0014 */ lw $ra, 0x14($sp) +.L80038180: +/* 038D80 80038180 27BD0018 */ addiu $sp, $sp, 0x18 +/* 038D84 80038184 03E00008 */ jr $ra +/* 038D88 80038188 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003818C.s b/asm/non_matchings/unknown_032760/func_8003818C.s new file mode 100644 index 00000000..d25f5d3a --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003818C.s @@ -0,0 +1,15 @@ +glabel func_8003818C +/* 038D8C 8003818C AFA50004 */ sw $a1, 4($sp) +/* 038D90 80038190 8C8F004C */ lw $t7, 0x4c($a0) +/* 038D94 80038194 240E0081 */ li $t6, 129 +/* 038D98 80038198 A5EE0014 */ sh $t6, 0x14($t7) +/* 038D9C 8003819C 8C99004C */ lw $t9, 0x4c($a0) +/* 038DA0 800381A0 24180002 */ li $t8, 2 +/* 038DA4 800381A4 A3380011 */ sb $t8, 0x11($t9) +/* 038DA8 800381A8 8C89004C */ lw $t1, 0x4c($a0) +/* 038DAC 800381AC 24080014 */ li $t0, 20 +/* 038DB0 800381B0 A1280010 */ sb $t0, 0x10($t1) +/* 038DB4 800381B4 8C8A004C */ lw $t2, 0x4c($a0) +/* 038DB8 800381B8 03E00008 */ jr $ra +/* 038DBC 800381BC A1400012 */ sb $zero, 0x12($t2) + diff --git a/asm/non_matchings/unknown_032760/func_800381C0.s b/asm/non_matchings/unknown_032760/func_800381C0.s new file mode 100644 index 00000000..f101cc3d --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800381C0.s @@ -0,0 +1,10 @@ +glabel func_800381C0 +/* 038DC0 800381C0 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 038DC4 800381C4 AFBF0014 */ sw $ra, 0x14($sp) +/* 038DC8 800381C8 0C007D18 */ jal func_8001F460 +/* 038DCC 800381CC 00803025 */ move $a2, $a0 +/* 038DD0 800381D0 8FBF0014 */ lw $ra, 0x14($sp) +/* 038DD4 800381D4 27BD0018 */ addiu $sp, $sp, 0x18 +/* 038DD8 800381D8 03E00008 */ jr $ra +/* 038DDC 800381DC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_800381E0.s b/asm/non_matchings/unknown_032760/func_800381E0.s new file mode 100644 index 00000000..faa4f807 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800381E0.s @@ -0,0 +1,15 @@ +glabel func_800381E0 +/* 038DE0 800381E0 AFA50004 */ sw $a1, 4($sp) +/* 038DE4 800381E4 8C8F004C */ lw $t7, 0x4c($a0) +/* 038DE8 800381E8 240E0001 */ li $t6, 1 +/* 038DEC 800381EC A5EE0014 */ sh $t6, 0x14($t7) +/* 038DF0 800381F0 8C99004C */ lw $t9, 0x4c($a0) +/* 038DF4 800381F4 24180002 */ li $t8, 2 +/* 038DF8 800381F8 A3380011 */ sb $t8, 0x11($t9) +/* 038DFC 800381FC 8C89004C */ lw $t1, 0x4c($a0) +/* 038E00 80038200 24080014 */ li $t0, 20 +/* 038E04 80038204 A1280010 */ sb $t0, 0x10($t1) +/* 038E08 80038208 8C8A004C */ lw $t2, 0x4c($a0) +/* 038E0C 8003820C 03E00008 */ jr $ra +/* 038E10 80038210 A1400012 */ sb $zero, 0x12($t2) + diff --git a/asm/non_matchings/unknown_032760/func_80038214.s b/asm/non_matchings/unknown_032760/func_80038214.s new file mode 100644 index 00000000..ee29dee5 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80038214.s @@ -0,0 +1,15 @@ +glabel func_80038214 +/* 038E14 80038214 AFA50004 */ sw $a1, 4($sp) +/* 038E18 80038218 8C8F004C */ lw $t7, 0x4c($a0) +/* 038E1C 8003821C 240E0081 */ li $t6, 129 +/* 038E20 80038220 A5EE0014 */ sh $t6, 0x14($t7) +/* 038E24 80038224 8C99004C */ lw $t9, 0x4c($a0) +/* 038E28 80038228 24180002 */ li $t8, 2 +/* 038E2C 8003822C A3380011 */ sb $t8, 0x11($t9) +/* 038E30 80038230 8C89004C */ lw $t1, 0x4c($a0) +/* 038E34 80038234 24080014 */ li $t0, 20 +/* 038E38 80038238 A1280010 */ sb $t0, 0x10($t1) +/* 038E3C 8003823C 8C8A004C */ lw $t2, 0x4c($a0) +/* 038E40 80038240 03E00008 */ jr $ra +/* 038E44 80038244 A1400012 */ sb $zero, 0x12($t2) + diff --git a/asm/non_matchings/unknown_032760/func_80038248.s b/asm/non_matchings/unknown_032760/func_80038248.s new file mode 100644 index 00000000..c71edec7 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80038248.s @@ -0,0 +1,15 @@ +glabel func_80038248 +/* 038E48 80038248 AFA50004 */ sw $a1, 4($sp) +/* 038E4C 8003824C 8C8F004C */ lw $t7, 0x4c($a0) +/* 038E50 80038250 240E0001 */ li $t6, 1 +/* 038E54 80038254 A5EE0014 */ sh $t6, 0x14($t7) +/* 038E58 80038258 8C99004C */ lw $t9, 0x4c($a0) +/* 038E5C 8003825C 24180002 */ li $t8, 2 +/* 038E60 80038260 A3380011 */ sb $t8, 0x11($t9) +/* 038E64 80038264 8C89004C */ lw $t1, 0x4c($a0) +/* 038E68 80038268 24080014 */ li $t0, 20 +/* 038E6C 8003826C A1280010 */ sb $t0, 0x10($t1) +/* 038E70 80038270 8C8A004C */ lw $t2, 0x4c($a0) +/* 038E74 80038274 03E00008 */ jr $ra +/* 038E78 80038278 A1400012 */ sb $zero, 0x12($t2) + diff --git a/asm/non_matchings/unknown_032760/func_8003827C.s b/asm/non_matchings/unknown_032760/func_8003827C.s new file mode 100644 index 00000000..33d2f2e9 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003827C.s @@ -0,0 +1,54 @@ +glabel func_8003827C +/* 038E7C 8003827C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 038E80 80038280 AFBF0024 */ sw $ra, 0x24($sp) +/* 038E84 80038284 AFB00020 */ sw $s0, 0x20($sp) +/* 038E88 80038288 AFA5002C */ sw $a1, 0x2c($sp) +/* 038E8C 8003828C 8C820064 */ lw $v0, 0x64($a0) +/* 038E90 80038290 00808025 */ move $s0, $a0 +/* 038E94 80038294 84430024 */ lh $v1, 0x24($v0) +/* 038E98 80038298 00000000 */ nop +/* 038E9C 8003829C 14600008 */ bnez $v1, .L800382C0 +/* 038EA0 800382A0 00000000 */ nop +/* 038EA4 800382A4 80440038 */ lb $a0, 0x38($v0) +/* 038EA8 800382A8 00000000 */ nop +/* 038EAC 800382AC 10800004 */ beqz $a0, .L800382C0 +/* 038EB0 800382B0 308E00FF */ andi $t6, $a0, 0xff +/* 038EB4 800382B4 A44E0024 */ sh $t6, 0x24($v0) +/* 038EB8 800382B8 84430024 */ lh $v1, 0x24($v0) +/* 038EBC 800382BC 00000000 */ nop +.L800382C0: +/* 038EC0 800382C0 10600014 */ beqz $v1, .L80038314 +/* 038EC4 800382C4 8FA5002C */ lw $a1, 0x2c($sp) +/* 038EC8 800382C8 8C480020 */ lw $t0, 0x20($v0) +/* 038ECC 800382CC 3064FFFF */ andi $a0, $v1, 0xffff +/* 038ED0 800382D0 1500000A */ bnez $t0, .L800382FC +/* 038ED4 800382D4 240F0001 */ li $t7, 1 +/* 038ED8 800382D8 8E05000C */ lw $a1, 0xc($s0) +/* 038EDC 800382DC 8E060010 */ lw $a2, 0x10($s0) +/* 038EE0 800382E0 8E070014 */ lw $a3, 0x14($s0) +/* 038EE4 800382E4 24580020 */ addiu $t8, $v0, 0x20 +/* 038EE8 800382E8 AFB80014 */ sw $t8, 0x14($sp) +/* 038EEC 800382EC 0C002556 */ jal func_80009558 +/* 038EF0 800382F0 AFAF0010 */ sw $t7, 0x10($sp) +/* 038EF4 800382F4 10000007 */ b .L80038314 +/* 038EF8 800382F8 8FA5002C */ lw $a1, 0x2c($sp) +.L800382FC: +/* 038EFC 800382FC 8E05000C */ lw $a1, 0xc($s0) +/* 038F00 80038300 8E060010 */ lw $a2, 0x10($s0) +/* 038F04 80038304 8E070014 */ lw $a3, 0x14($s0) +/* 038F08 80038308 0C0025B6 */ jal func_800096D8 +/* 038F0C 8003830C 01002025 */ move $a0, $t0 +/* 038F10 80038310 8FA5002C */ lw $a1, 0x2c($sp) +.L80038314: +/* 038F14 80038314 02002025 */ move $a0, $s0 +/* 038F18 80038318 0C007D18 */ jal func_8001F460 +/* 038F1C 8003831C 02003025 */ move $a2, $s0 +/* 038F20 80038320 8FBF0024 */ lw $ra, 0x24($sp) +/* 038F24 80038324 8FB00020 */ lw $s0, 0x20($sp) +/* 038F28 80038328 03E00008 */ jr $ra +/* 038F2C 8003832C 27BD0028 */ addiu $sp, $sp, 0x28 + +/* 038F30 80038330 AFA40000 */ sw $a0, ($sp) +/* 038F34 80038334 03E00008 */ jr $ra +/* 038F38 80038338 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_8003833C.s b/asm/non_matchings/unknown_032760/func_8003833C.s new file mode 100644 index 00000000..9cf77047 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003833C.s @@ -0,0 +1,269 @@ +glabel func_8003833C +/* 038F3C 8003833C 27BDFF88 */ addiu $sp, $sp, -0x78 +/* 038F40 80038340 AFBF0024 */ sw $ra, 0x24($sp) +/* 038F44 80038344 AFB2001C */ sw $s2, 0x1c($sp) +/* 038F48 80038348 AFB00014 */ sw $s0, 0x14($sp) +/* 038F4C 8003834C 00809025 */ move $s2, $a0 +/* 038F50 80038350 AFB30020 */ sw $s3, 0x20($sp) +/* 038F54 80038354 AFB10018 */ sw $s1, 0x18($sp) +/* 038F58 80038358 AFA5007C */ sw $a1, 0x7c($sp) +/* 038F5C 8003835C 00008025 */ move $s0, $zero +/* 038F60 80038360 0C007D18 */ jal func_8001F460 +/* 038F64 80038364 00003025 */ move $a2, $zero +/* 038F68 80038368 8E430064 */ lw $v1, 0x64($s2) +/* 038F6C 8003836C AE400074 */ sw $zero, 0x74($s2) +/* 038F70 80038370 106000E1 */ beqz $v1, .L800386F8 +/* 038F74 80038374 8FBF0024 */ lw $ra, 0x24($sp) +/* 038F78 80038378 824F003A */ lb $t7, 0x3a($s2) +/* 038F7C 8003837C 8E4E0068 */ lw $t6, 0x68($s2) +/* 038F80 80038380 000FC080 */ sll $t8, $t7, 2 +/* 038F84 80038384 01D8C821 */ addu $t9, $t6, $t8 +/* 038F88 80038388 8F220000 */ lw $v0, ($t9) +/* 038F8C 8003838C 00000000 */ nop +/* 038F90 80038390 104000D9 */ beqz $v0, .L800386F8 +/* 038F94 80038394 8FBF0024 */ lw $ra, 0x24($sp) +/* 038F98 80038398 8C530000 */ lw $s3, ($v0) +/* 038F9C 8003839C 0C027B34 */ jal is_drumstick_unlocked +/* 038FA0 800383A0 AFA30064 */ sw $v1, 0x64($sp) +/* 038FA4 800383A4 1040000C */ beqz $v0, .L800383D8 +/* 038FA8 800383A8 00000000 */ nop +/* 038FAC 800383AC 0C027B2E */ jal is_tt_unlocked +/* 038FB0 800383B0 00000000 */ nop +/* 038FB4 800383B4 10400005 */ beqz $v0, .L800383CC +/* 038FB8 800383B8 3C06800E */ lui $a2, 0x800e +/* 038FBC 800383BC 3C06800E */ lui $a2, %hi(D_800DCA70) # $a2, 0x800e +/* 038FC0 800383C0 24C6CA70 */ addiu $a2, %lo(D_800DCA70) # addiu $a2, $a2, -0x3590 +/* 038FC4 800383C4 1000000E */ b .L80038400 +/* 038FC8 800383C8 2404000A */ li $a0, 10 +.L800383CC: +/* 038FCC 800383CC 24C6CA58 */ addiu $a2, $a2, -0x35a8 +/* 038FD0 800383D0 1000000B */ b .L80038400 +/* 038FD4 800383D4 24040009 */ li $a0, 9 +.L800383D8: +/* 038FD8 800383D8 0C027B2E */ jal is_tt_unlocked +/* 038FDC 800383DC 00000000 */ nop +/* 038FE0 800383E0 10400005 */ beqz $v0, .L800383F8 +/* 038FE4 800383E4 3C06800E */ lui $a2, 0x800e +/* 038FE8 800383E8 3C06800E */ lui $a2, %hi(D_800DCA64) # $a2, 0x800e +/* 038FEC 800383EC 24C6CA64 */ addiu $a2, %lo(D_800DCA64) # addiu $a2, $a2, -0x359c +/* 038FF0 800383F0 10000003 */ b .L80038400 +/* 038FF4 800383F4 24040009 */ li $a0, 9 +.L800383F8: +/* 038FF8 800383F8 24C6CA50 */ addiu $a2, $a2, -0x35b0 +/* 038FFC 800383FC 24040008 */ li $a0, 8 +.L80038400: +/* 039000 80038400 1880000E */ blez $a0, .L8003843C +/* 039004 80038404 00002825 */ move $a1, $zero +/* 039008 80038408 8FA90064 */ lw $t1, 0x64($sp) +/* 03900C 8003840C 00C01021 */ addu $v0, $a2, $zero +/* 039010 80038410 85230028 */ lh $v1, 0x28($t1) +/* 039014 80038414 00000000 */ nop +.L80038418: +/* 039018 80038418 904A0000 */ lbu $t2, ($v0) +/* 03901C 8003841C 24A50001 */ addiu $a1, $a1, 1 +/* 039020 80038420 146A0002 */ bne $v1, $t2, .L8003842C +/* 039024 80038424 00A4082A */ slt $at, $a1, $a0 +/* 039028 80038428 24100001 */ li $s0, 1 +.L8003842C: +/* 03902C 8003842C 10200003 */ beqz $at, .L8003843C +/* 039030 80038430 24420001 */ addiu $v0, $v0, 1 +/* 039034 80038434 1200FFF8 */ beqz $s0, .L80038418 +/* 039038 80038438 00000000 */ nop +.L8003843C: +/* 03903C 8003843C 1200006E */ beqz $s0, .L800385F8 +/* 039040 80038440 24A5FFFF */ addiu $a1, $a1, -1 +/* 039044 80038444 240B0001 */ li $t3, 1 +/* 039048 80038448 A24B003B */ sb $t3, 0x3b($s2) +/* 03904C 8003844C 00008025 */ move $s0, $zero +/* 039050 80038450 00001825 */ move $v1, $zero +/* 039054 80038454 27B10050 */ addiu $s1, $sp, 0x50 +/* 039058 80038458 02002025 */ move $a0, $s0 +.L8003845C: +/* 03905C 8003845C A3A3004F */ sb $v1, 0x4f($sp) +/* 039060 80038460 0C0270A0 */ jal func_8009C280 +/* 039064 80038464 AFA50070 */ sw $a1, 0x70($sp) +/* 039068 80038468 8FA50070 */ lw $a1, 0x70($sp) +/* 03906C 8003846C 93A3004F */ lbu $v1, 0x4f($sp) +/* 039070 80038470 14450006 */ bne $v0, $a1, .L8003848C +/* 039074 80038474 24010004 */ li $at, 4 +/* 039078 80038478 02236021 */ addu $t4, $s1, $v1 +/* 03907C 8003847C 24630001 */ addiu $v1, $v1, 1 +/* 039080 80038480 306D00FF */ andi $t5, $v1, 0xff +/* 039084 80038484 01A01825 */ move $v1, $t5 +/* 039088 80038488 A1900000 */ sb $s0, ($t4) +.L8003848C: +/* 03908C 8003848C 26100001 */ addiu $s0, $s0, 1 +/* 039090 80038490 1601FFF2 */ bne $s0, $at, .L8003845C +/* 039094 80038494 02002025 */ move $a0, $s0 +/* 039098 80038498 3C0F800E */ lui $t7, %hi(D_800DCA7C) # $t7, 0x800e +/* 03909C 8003849C 25EFCA7C */ addiu $t7, %lo(D_800DCA7C) # addiu $t7, $t7, -0x3584 +/* 0390A0 800384A0 00AF1021 */ addu $v0, $a1, $t7 +/* 0390A4 800384A4 904E0000 */ lbu $t6, ($v0) +/* 0390A8 800384A8 8FB8007C */ lw $t8, 0x7c($sp) +/* 0390AC 800384AC 3C0D800E */ lui $t5, %hi(D_800DCA88) # $t5, 0x800e +/* 0390B0 800384B0 01D8C821 */ addu $t9, $t6, $t8 +/* 0390B4 800384B4 332400FF */ andi $a0, $t9, 0xff +/* 0390B8 800384B8 28810010 */ slti $at, $a0, 0x10 +/* 0390BC 800384BC 14200009 */ bnez $at, .L800384E4 +/* 0390C0 800384C0 A0590000 */ sb $t9, ($v0) +/* 0390C4 800384C4 3C0A800E */ lui $t2, %hi(D_800DCA88) # $t2, 0x800e +/* 0390C8 800384C8 254ACA88 */ addiu $t2, %lo(D_800DCA88) # addiu $t2, $t2, -0x3578 +/* 0390CC 800384CC 00AA4021 */ addu $t0, $a1, $t2 +/* 0390D0 800384D0 910B0000 */ lbu $t3, ($t0) +/* 0390D4 800384D4 3089000F */ andi $t1, $a0, 0xf +/* 0390D8 800384D8 256C0001 */ addiu $t4, $t3, 1 +/* 0390DC 800384DC A0490000 */ sb $t1, ($v0) +/* 0390E0 800384E0 A10C0000 */ sb $t4, ($t0) +.L800384E4: +/* 0390E4 800384E4 25ADCA88 */ addiu $t5, %lo(D_800DCA88) # addiu $t5, $t5, -0x3578 +/* 0390E8 800384E8 00AD4021 */ addu $t0, $a1, $t5 +/* 0390EC 800384EC 910F0000 */ lbu $t7, ($t0) +/* 0390F0 800384F0 00603825 */ move $a3, $v1 +/* 0390F4 800384F4 01E3082A */ slt $at, $t7, $v1 +/* 0390F8 800384F8 14200002 */ bnez $at, .L80038504 +/* 0390FC 800384FC 00000000 */ nop +/* 039100 80038500 A1000000 */ sb $zero, ($t0) +.L80038504: +/* 039104 80038504 18E0003C */ blez $a3, .L800385F8 +/* 039108 80038508 00000000 */ nop +/* 03910C 8003850C AFA70040 */ sw $a3, 0x40($sp) +/* 039110 80038510 0C02709D */ jal func_8009C274 +/* 039114 80038514 AFA80044 */ sw $t0, 0x44($sp) +/* 039118 80038518 8FA70040 */ lw $a3, 0x40($sp) +/* 03911C 8003851C 8FA80044 */ lw $t0, 0x44($sp) +/* 039120 80038520 00403025 */ move $a2, $v0 +/* 039124 80038524 18E0001B */ blez $a3, .L80038594 +/* 039128 80038528 00001825 */ move $v1, $zero +/* 03912C 8003852C 27A20050 */ addiu $v0, $sp, 0x50 +/* 039130 80038530 24100001 */ li $s0, 1 +.L80038534: +/* 039134 80038534 904E0000 */ lbu $t6, ($v0) +/* 039138 80038538 24010001 */ li $at, 1 +/* 03913C 8003853C 01C6C021 */ addu $t8, $t6, $a2 +/* 039140 80038540 83190000 */ lb $t9, ($t8) +/* 039144 80038544 02402025 */ move $a0, $s2 +/* 039148 80038548 1721000E */ bne $t9, $at, .L80038584 +/* 03914C 8003854C 24050002 */ li $a1, 2 +/* 039150 80038550 AE500074 */ sw $s0, 0x74($s2) +/* 039154 80038554 AFA80044 */ sw $t0, 0x44($sp) +/* 039158 80038558 AFA70040 */ sw $a3, 0x40($sp) +/* 03915C 8003855C AFA60058 */ sw $a2, 0x58($sp) +/* 039160 80038560 AFA30074 */ sw $v1, 0x74($sp) +/* 039164 80038564 0C02BF0F */ jal func_800AFC3C +/* 039168 80038568 AFA2003C */ sw $v0, 0x3c($sp) +/* 03916C 8003856C 8FA2003C */ lw $v0, 0x3c($sp) +/* 039170 80038570 8FA30074 */ lw $v1, 0x74($sp) +/* 039174 80038574 8FA60058 */ lw $a2, 0x58($sp) +/* 039178 80038578 8FA70040 */ lw $a3, 0x40($sp) +/* 03917C 8003857C 8FA80044 */ lw $t0, 0x44($sp) +/* 039180 80038580 00000000 */ nop +.L80038584: +/* 039184 80038584 24630001 */ addiu $v1, $v1, 1 +/* 039188 80038588 1467FFEA */ bne $v1, $a3, .L80038534 +/* 03918C 8003858C 24420001 */ addiu $v0, $v0, 1 +/* 039190 80038590 00001825 */ move $v1, $zero +.L80038594: +/* 039194 80038594 86660028 */ lh $a2, 0x28($s3) +/* 039198 80038598 00001025 */ move $v0, $zero +/* 03919C 8003859C 18C00015 */ blez $a2, .L800385F4 +/* 0391A0 800385A0 00000000 */ nop +.L800385A4: +/* 0391A4 800385A4 8E690038 */ lw $t1, 0x38($s3) +/* 0391A8 800385A8 24630001 */ addiu $v1, $v1, 1 +/* 0391AC 800385AC 01222021 */ addu $a0, $t1, $v0 +/* 0391B0 800385B0 90850000 */ lbu $a1, ($a0) +/* 0391B4 800385B4 00000000 */ nop +/* 0391B8 800385B8 04A0000B */ bltz $a1, .L800385E8 +/* 0391BC 800385BC 28A10004 */ slti $at, $a1, 4 +/* 0391C0 800385C0 1020000A */ beqz $at, .L800385EC +/* 0391C4 800385C4 0066082A */ slt $at, $v1, $a2 +/* 0391C8 800385C8 910A0000 */ lbu $t2, ($t0) +/* 0391CC 800385CC 00000000 */ nop +/* 0391D0 800385D0 022A5821 */ addu $t3, $s1, $t2 +/* 0391D4 800385D4 916C0000 */ lbu $t4, ($t3) +/* 0391D8 800385D8 00000000 */ nop +/* 0391DC 800385DC A08C0000 */ sb $t4, ($a0) +/* 0391E0 800385E0 86660028 */ lh $a2, 0x28($s3) +/* 0391E4 800385E4 00000000 */ nop +.L800385E8: +/* 0391E8 800385E8 0066082A */ slt $at, $v1, $a2 +.L800385EC: +/* 0391EC 800385EC 1420FFED */ bnez $at, .L800385A4 +/* 0391F0 800385F0 2442000C */ addiu $v0, $v0, 0xc +.L800385F4: +/* 0391F4 800385F4 A240003B */ sb $zero, 0x3b($s2) +.L800385F8: +/* 0391F8 800385F8 8242003B */ lb $v0, 0x3b($s2) +/* 0391FC 800385FC 00000000 */ nop +/* 039200 80038600 0440003D */ bltz $v0, .L800386F8 +/* 039204 80038604 8FBF0024 */ lw $ra, 0x24($sp) +/* 039208 80038608 866D0048 */ lh $t5, 0x48($s3) +/* 03920C 8003860C 8FA90064 */ lw $t1, 0x64($sp) +/* 039210 80038610 004D082A */ slt $at, $v0, $t5 +/* 039214 80038614 10200037 */ beqz $at, .L800386F4 +/* 039218 80038618 000270C0 */ sll $t6, $v0, 3 +/* 03921C 8003861C 8E6F0044 */ lw $t7, 0x44($s3) +/* 039220 80038620 912A002C */ lbu $t2, 0x2c($t1) +/* 039224 80038624 01EEC021 */ addu $t8, $t7, $t6 +/* 039228 80038628 8F050004 */ lw $a1, 4($t8) +/* 03922C 8003862C 24010001 */ li $at, 1 +/* 039230 80038630 24A5FFFF */ addiu $a1, $a1, -1 +/* 039234 80038634 1541002F */ bne $t2, $at, .L800386F4 +/* 039238 80038638 0005C900 */ sll $t9, $a1, 4 +/* 03923C 8003863C 0C00057E */ jal func_800015F8 +/* 039240 80038640 AFB90070 */ sw $t9, 0x70($sp) +/* 039244 80038644 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 039248 80038648 44819800 */ mtc1 $at, $f19 +/* 03924C 8003864C 44809000 */ mtc1 $zero, $f18 +/* 039250 80038650 460003A1 */ cvt.d.s $f14, $f0 +/* 039254 80038654 462E903C */ c.lt.d $f18, $f14 +/* 039258 80038658 8FA50070 */ lw $a1, 0x70($sp) +/* 03925C 8003865C 45000015 */ bc1f .L800386B4 +/* 039260 80038660 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 039264 80038664 46327101 */ sub.d $f4, $f14, $f18 +/* 039268 80038668 44854000 */ mtc1 $a1, $f8 +/* 03926C 8003866C 46202320 */ cvt.s.d $f12, $f4 +/* 039270 80038670 460060A1 */ cvt.d.s $f2, $f12 +/* 039274 80038674 46221180 */ add.d $f6, $f2, $f2 +/* 039278 80038678 46804420 */ cvt.s.w $f16, $f8 +/* 03927C 8003867C 46203320 */ cvt.s.d $f12, $f6 +/* 039280 80038680 46106282 */ mul.s $f10, $f12, $f16 +/* 039284 80038684 460A8101 */ sub.s $f4, $f16, $f10 +/* 039288 80038688 444BF800 */ cfc1 $t3, $31 +/* 03928C 8003868C 00000000 */ nop +/* 039290 80038690 35610003 */ ori $at, $t3, 3 +/* 039294 80038694 38210002 */ xori $at, $at, 2 +/* 039298 80038698 44C1F800 */ ctc1 $at, $31 +/* 03929C 8003869C 00000000 */ nop +/* 0392A0 800386A0 460021A4 */ cvt.w.s $f6, $f4 +/* 0392A4 800386A4 440C3000 */ mfc1 $t4, $f6 +/* 0392A8 800386A8 44CBF800 */ ctc1 $t3, $31 +/* 0392AC 800386AC 10000011 */ b .L800386F4 +/* 0392B0 800386B0 A64C0018 */ sh $t4, 0x18($s2) +.L800386B4: +/* 0392B4 800386B4 44814000 */ mtc1 $at, $f8 +/* 0392B8 800386B8 44855000 */ mtc1 $a1, $f10 +/* 0392BC 800386BC 46080302 */ mul.s $f12, $f0, $f8 +/* 0392C0 800386C0 46805120 */ cvt.s.w $f4, $f10 +/* 0392C4 800386C4 460C2182 */ mul.s $f6, $f4, $f12 +/* 0392C8 800386C8 444DF800 */ cfc1 $t5, $31 +/* 0392CC 800386CC 00000000 */ nop +/* 0392D0 800386D0 35A10003 */ ori $at, $t5, 3 +/* 0392D4 800386D4 38210002 */ xori $at, $at, 2 +/* 0392D8 800386D8 44C1F800 */ ctc1 $at, $31 +/* 0392DC 800386DC 00000000 */ nop +/* 0392E0 800386E0 46003224 */ cvt.w.s $f8, $f6 +/* 0392E4 800386E4 440F4000 */ mfc1 $t7, $f8 +/* 0392E8 800386E8 44CDF800 */ ctc1 $t5, $31 +/* 0392EC 800386EC A64F0018 */ sh $t7, 0x18($s2) +/* 0392F0 800386F0 00000000 */ nop +.L800386F4: +/* 0392F4 800386F4 8FBF0024 */ lw $ra, 0x24($sp) +.L800386F8: +/* 0392F8 800386F8 8FB00014 */ lw $s0, 0x14($sp) +/* 0392FC 800386FC 8FB10018 */ lw $s1, 0x18($sp) +/* 039300 80038700 8FB2001C */ lw $s2, 0x1c($sp) +/* 039304 80038704 8FB30020 */ lw $s3, 0x20($sp) +/* 039308 80038708 03E00008 */ jr $ra +/* 03930C 8003870C 27BD0078 */ addiu $sp, $sp, 0x78 + diff --git a/asm/non_matchings/unknown_032760/func_80038710.s b/asm/non_matchings/unknown_032760/func_80038710.s new file mode 100644 index 00000000..53389f7f --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80038710.s @@ -0,0 +1,52 @@ +glabel func_80038710 +/* 039310 80038710 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 039314 80038714 AFB00028 */ sw $s0, 0x28($sp) +/* 039318 80038718 00808025 */ move $s0, $a0 +/* 03931C 8003871C AFBF002C */ sw $ra, 0x2c($sp) +/* 039320 80038720 0C007D18 */ jal func_8001F460 +/* 039324 80038724 02003025 */ move $a2, $s0 +/* 039328 80038728 860E0006 */ lh $t6, 6($s0) +/* 03932C 8003872C 8E180064 */ lw $t8, 0x64($s0) +/* 039330 80038730 35CF4000 */ ori $t7, $t6, 0x4000 +/* 039334 80038734 A60F0006 */ sh $t7, 6($s0) +/* 039338 80038738 1440001D */ bnez $v0, .L800387B0 +/* 03933C 8003873C AFB80034 */ sw $t8, 0x34($sp) +/* 039340 80038740 0C019884 */ jal func_80066210 +/* 039344 80038744 00000000 */ nop +/* 039348 80038748 14400008 */ bnez $v0, .L8003876C +/* 03934C 8003874C 24030001 */ li $v1, 1 +/* 039350 80038750 8FB90034 */ lw $t9, 0x34($sp) +/* 039354 80038754 00000000 */ nop +/* 039358 80038758 83240044 */ lb $a0, 0x44($t9) +/* 03935C 8003875C 0C008433 */ jal func_800210CC +/* 039360 80038760 00000000 */ nop +/* 039364 80038764 10000001 */ b .L8003876C +/* 039368 80038768 00401825 */ move $v1, $v0 +.L8003876C: +/* 03936C 8003876C 10600010 */ beqz $v1, .L800387B0 +/* 039370 80038770 340A8000 */ li $t2, 32768 +/* 039374 80038774 8FA80034 */ lw $t0, 0x34($sp) +/* 039378 80038778 86090000 */ lh $t1, ($s0) +/* 03937C 8003877C 8E05000C */ lw $a1, 0xc($s0) +/* 039380 80038780 8E060010 */ lw $a2, 0x10($s0) +/* 039384 80038784 8E070014 */ lw $a3, 0x14($s0) +/* 039388 80038788 81040030 */ lb $a0, 0x30($t0) +/* 03938C 8003878C 01495823 */ subu $t3, $t2, $t1 +/* 039390 80038790 AFAB0010 */ sw $t3, 0x10($sp) +/* 039394 80038794 860C0002 */ lh $t4, 2($s0) +/* 039398 80038798 00000000 */ nop +/* 03939C 8003879C 000C6823 */ negu $t5, $t4 +/* 0393A0 800387A0 AFAD0014 */ sw $t5, 0x14($sp) +/* 0393A4 800387A4 860E0004 */ lh $t6, 4($s0) +/* 0393A8 800387A8 0C019922 */ jal func_80066488 +/* 0393AC 800387AC AFAE0018 */ sw $t6, 0x18($sp) +.L800387B0: +/* 0393B0 800387B0 8FBF002C */ lw $ra, 0x2c($sp) +/* 0393B4 800387B4 8FB00028 */ lw $s0, 0x28($sp) +/* 0393B8 800387B8 03E00008 */ jr $ra +/* 0393BC 800387BC 27BD0040 */ addiu $sp, $sp, 0x40 + +/* 0393C0 800387C0 AFA40000 */ sw $a0, ($sp) +/* 0393C4 800387C4 03E00008 */ jr $ra +/* 0393C8 800387C8 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_800387CC.s b/asm/non_matchings/unknown_032760/func_800387CC.s new file mode 100644 index 00000000..a93b0ae6 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800387CC.s @@ -0,0 +1,39 @@ +glabel func_800387CC +/* 0393CC 800387CC 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0393D0 800387D0 AFBF0014 */ sw $ra, 0x14($sp) +/* 0393D4 800387D4 AFA50024 */ sw $a1, 0x24($sp) +/* 0393D8 800387D8 8C820078 */ lw $v0, 0x78($a0) +/* 0393DC 800387DC 00803825 */ move $a3, $a0 +/* 0393E0 800387E0 10400006 */ beqz $v0, .L800387FC +/* 0393E4 800387E4 00001825 */ move $v1, $zero +/* 0393E8 800387E8 2444FFFF */ addiu $a0, $v0, -1 +/* 0393EC 800387EC 0C006EB2 */ jal func_8001BAC8 +/* 0393F0 800387F0 AFA70020 */ sw $a3, 0x20($sp) +/* 0393F4 800387F4 8FA70020 */ lw $a3, 0x20($sp) +/* 0393F8 800387F8 00401825 */ move $v1, $v0 +.L800387FC: +/* 0393FC 800387FC 8FA50024 */ lw $a1, 0x24($sp) +/* 039400 80038800 00E02025 */ move $a0, $a3 +/* 039404 80038804 00E03025 */ move $a2, $a3 +/* 039408 80038808 AFA3001C */ sw $v1, 0x1c($sp) +/* 03940C 8003880C 0C007D18 */ jal func_8001F460 +/* 039410 80038810 AFA70020 */ sw $a3, 0x20($sp) +/* 039414 80038814 8FA70020 */ lw $a3, 0x20($sp) +/* 039418 80038818 8FA3001C */ lw $v1, 0x1c($sp) +/* 03941C 8003881C 84EE0006 */ lh $t6, 6($a3) +/* 039420 80038820 ACE2007C */ sw $v0, 0x7c($a3) +/* 039424 80038824 35CF4000 */ ori $t7, $t6, 0x4000 +/* 039428 80038828 14400006 */ bnez $v0, .L80038844 +/* 03942C 8003882C A4EF0006 */ sh $t7, 6($a3) +/* 039430 80038830 10600005 */ beqz $v1, .L80038848 +/* 039434 80038834 8FBF0014 */ lw $ra, 0x14($sp) +/* 039438 80038838 8C620064 */ lw $v0, 0x64($v1) +/* 03943C 8003883C 00000000 */ nop +/* 039440 80038840 AC470148 */ sw $a3, 0x148($v0) +.L80038844: +/* 039444 80038844 8FBF0014 */ lw $ra, 0x14($sp) +.L80038848: +/* 039448 80038848 27BD0020 */ addiu $sp, $sp, 0x20 +/* 03944C 8003884C 03E00008 */ jr $ra +/* 039450 80038850 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80038854.s b/asm/non_matchings/unknown_032760/func_80038854.s new file mode 100644 index 00000000..e45bb357 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80038854.s @@ -0,0 +1,36 @@ +glabel func_80038854 +/* 039454 80038854 90AE0009 */ lbu $t6, 9($a1) +/* 039458 80038858 240F0021 */ li $t7, 33 +/* 03945C 8003885C 11C00004 */ beqz $t6, .L80038870 +/* 039460 80038860 00000000 */ nop +/* 039464 80038864 8C98004C */ lw $t8, 0x4c($a0) +/* 039468 80038868 10000004 */ b .L8003887C +/* 03946C 8003886C A70F0014 */ sh $t7, 0x14($t8) +.L80038870: +/* 039470 80038870 8C88004C */ lw $t0, 0x4c($a0) +/* 039474 80038874 24190022 */ li $t9, 34 +/* 039478 80038878 A5190014 */ sh $t9, 0x14($t0) +.L8003887C: +/* 03947C 8003887C 8C89004C */ lw $t1, 0x4c($a0) +/* 039480 80038880 240A000F */ li $t2, 15 +/* 039484 80038884 A1200011 */ sb $zero, 0x11($t1) +/* 039488 80038888 8C8B004C */ lw $t3, 0x4c($a0) +/* 03948C 8003888C 00000000 */ nop +/* 039490 80038890 A16A0010 */ sb $t2, 0x10($t3) +/* 039494 80038894 8C8C004C */ lw $t4, 0x4c($a0) +/* 039498 80038898 00000000 */ nop +/* 03949C 8003889C A1800012 */ sb $zero, 0x12($t4) +/* 0394A0 800388A0 90AE000A */ lbu $t6, 0xa($a1) +/* 0394A4 800388A4 90AD0008 */ lbu $t5, 8($a1) +/* 0394A8 800388A8 000E7C00 */ sll $t7, $t6, 0x10 +/* 0394AC 800388AC 01AFC025 */ or $t8, $t5, $t7 +/* 0394B0 800388B0 AC980078 */ sw $t8, 0x78($a0) +/* 0394B4 800388B4 90B90009 */ lbu $t9, 9($a1) +/* 0394B8 800388B8 00000000 */ nop +/* 0394BC 800388BC AC99007C */ sw $t9, 0x7c($a0) +/* 0394C0 800388C0 90A8000B */ lbu $t0, 0xb($a1) +/* 0394C4 800388C4 00000000 */ nop +/* 0394C8 800388C8 00084A80 */ sll $t1, $t0, 0xa +/* 0394CC 800388CC 03E00008 */ jr $ra +/* 0394D0 800388D0 A4890000 */ sh $t1, ($a0) + diff --git a/asm/non_matchings/unknown_032760/func_800388D4.s b/asm/non_matchings/unknown_032760/func_800388D4.s new file mode 100644 index 00000000..ca21960f --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800388D4.s @@ -0,0 +1,59 @@ +glabel func_800388D4 +/* 0394D4 800388D4 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0394D8 800388D8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0394DC 800388DC AFA40018 */ sw $a0, 0x18($sp) +/* 0394E0 800388E0 AFA5001C */ sw $a1, 0x1c($sp) +/* 0394E4 800388E4 8C8E007C */ lw $t6, 0x7c($a0) +/* 0394E8 800388E8 00802825 */ move $a1, $a0 +/* 0394EC 800388EC 15C00006 */ bnez $t6, .L80038908 +/* 0394F0 800388F0 00000000 */ nop +/* 0394F4 800388F4 848F0006 */ lh $t7, 6($a0) +/* 0394F8 800388F8 00000000 */ nop +/* 0394FC 800388FC 35F84000 */ ori $t8, $t7, 0x4000 +/* 039500 80038900 10000005 */ b .L80038918 +/* 039504 80038904 A4980006 */ sh $t8, 6($a0) +.L80038908: +/* 039508 80038908 84B90006 */ lh $t9, 6($a1) +/* 03950C 8003890C 00000000 */ nop +/* 039510 80038910 3328BFFF */ andi $t0, $t9, 0xbfff +/* 039514 80038914 A4A80006 */ sh $t0, 6($a1) +.L80038918: +/* 039518 80038918 8CA2004C */ lw $v0, 0x4c($a1) +/* 03951C 8003891C 8CAA0078 */ lw $t2, 0x78($a1) +/* 039520 80038920 90490013 */ lbu $t1, 0x13($v0) +/* 039524 80038924 000A5C03 */ sra $t3, $t2, 0x10 +/* 039528 80038928 316C00FF */ andi $t4, $t3, 0xff +/* 03952C 8003892C 012C082A */ slt $at, $t1, $t4 +/* 039530 80038930 1020001B */ beqz $at, .L800389A0 +/* 039534 80038934 8FBF0014 */ lw $ra, 0x14($sp) +/* 039538 80038938 8C430000 */ lw $v1, ($v0) +/* 03953C 8003893C 24010001 */ li $at, 1 +/* 039540 80038940 8C6D0040 */ lw $t5, 0x40($v1) +/* 039544 80038944 00000000 */ nop +/* 039548 80038948 81AE0054 */ lb $t6, 0x54($t5) +/* 03954C 8003894C 00000000 */ nop +/* 039550 80038950 15C10013 */ bne $t6, $at, .L800389A0 +/* 039554 80038954 8FBF0014 */ lw $ra, 0x14($sp) +/* 039558 80038958 8C620064 */ lw $v0, 0x64($v1) +/* 03955C 8003895C 2401FFFF */ li $at, -1 +/* 039560 80038960 84440000 */ lh $a0, ($v0) +/* 039564 80038964 00000000 */ nop +/* 039568 80038968 1081000D */ beq $a0, $at, .L800389A0 +/* 03956C 8003896C 8FBF0014 */ lw $ra, 0x14($sp) +/* 039570 80038970 0C01A955 */ jal func_8006A554 +/* 039574 80038974 AFA50018 */ sw $a1, 0x18($sp) +/* 039578 80038978 8FA50018 */ lw $a1, 0x18($sp) +/* 03957C 8003897C 304F2000 */ andi $t7, $v0, 0x2000 +/* 039580 80038980 11E00007 */ beqz $t7, .L800389A0 +/* 039584 80038984 8FBF0014 */ lw $ra, 0x14($sp) +/* 039588 80038988 8CA40078 */ lw $a0, 0x78($a1) +/* 03958C 8003898C 00000000 */ nop +/* 039590 80038990 309800FF */ andi $t8, $a0, 0xff +/* 039594 80038994 0C030C7B */ jal func_800C31EC +/* 039598 80038998 03002025 */ move $a0, $t8 +/* 03959C 8003899C 8FBF0014 */ lw $ra, 0x14($sp) +.L800389A0: +/* 0395A0 800389A0 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0395A4 800389A4 03E00008 */ jr $ra +/* 0395A8 800389A8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_800389AC.s b/asm/non_matchings/unknown_032760/func_800389AC.s new file mode 100644 index 00000000..9e0e570a --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800389AC.s @@ -0,0 +1,5 @@ +glabel func_800389AC +/* 0395AC 800389AC AFA40000 */ sw $a0, ($sp) +/* 0395B0 800389B0 03E00008 */ jr $ra +/* 0395B4 800389B4 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_800389B8.s b/asm/non_matchings/unknown_032760/func_800389B8.s new file mode 100644 index 00000000..f1be889d --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800389B8.s @@ -0,0 +1,49 @@ +glabel func_800389B8 +/* 0395B8 800389B8 44852000 */ mtc1 $a1, $f4 +/* 0395BC 800389BC 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 +/* 0395C0 800389C0 468020A0 */ cvt.s.w $f2, $f4 +/* 0395C4 800389C4 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) +/* 0395C8 800389C8 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0395CC 800389CC AFBF0014 */ sw $ra, 0x14($sp) +/* 0395D0 800389D0 15C00007 */ bnez $t6, .L800389F0 +/* 0395D4 800389D4 46001006 */ mov.s $f0, $f2 +/* 0395D8 800389D8 3C01800E */ lui $at, %hi(D_800E6054) # $at, 0x800e +/* 0395DC 800389DC C4296050 */ lwc1 $f9, %lo(D_800E6050)($at) +/* 0395E0 800389E0 C4286054 */ lwc1 $f8, %lo(D_800E6054)($at) +/* 0395E4 800389E4 460011A1 */ cvt.d.s $f6, $f2 +/* 0395E8 800389E8 46283282 */ mul.d $f10, $f6, $f8 +/* 0395EC 800389EC 46205020 */ cvt.s.d $f0, $f10 +.L800389F0: +/* 0395F0 800389F0 C492001C */ lwc1 $f18, 0x1c($a0) +/* 0395F4 800389F4 C490000C */ lwc1 $f16, 0xc($a0) +/* 0395F8 800389F8 46009102 */ mul.s $f4, $f18, $f0 +/* 0395FC 800389FC C48A0020 */ lwc1 $f10, 0x20($a0) +/* 039600 80038A00 848F0018 */ lh $t7, 0x18($a0) +/* 039604 80038A04 0005C100 */ sll $t8, $a1, 4 +/* 039608 80038A08 46048180 */ add.s $f6, $f16, $f4 +/* 03960C 80038A0C 01F8C821 */ addu $t9, $t7, $t8 +/* 039610 80038A10 46005482 */ mul.s $f18, $f10, $f0 +/* 039614 80038A14 E486000C */ swc1 $f6, 0xc($a0) +/* 039618 80038A18 C4860024 */ lwc1 $f6, 0x24($a0) +/* 03961C 80038A1C C4880010 */ lwc1 $f8, 0x10($a0) +/* 039620 80038A20 46003282 */ mul.s $f10, $f6, $f0 +/* 039624 80038A24 A4990018 */ sh $t9, 0x18($a0) +/* 039628 80038A28 C4840014 */ lwc1 $f4, 0x14($a0) +/* 03962C 80038A2C 84880018 */ lh $t0, 0x18($a0) +/* 039630 80038A30 46124400 */ add.s $f16, $f8, $f18 +/* 039634 80038A34 29010100 */ slti $at, $t0, 0x100 +/* 039638 80038A38 460A2200 */ add.s $f8, $f4, $f10 +/* 03963C 80038A3C E4900010 */ swc1 $f16, 0x10($a0) +/* 039640 80038A40 14200006 */ bnez $at, .L80038A5C +/* 039644 80038A44 E4880014 */ swc1 $f8, 0x14($a0) +/* 039648 80038A48 0C003FEE */ jal func_8000FFB8 +/* 03964C 80038A4C AFA40018 */ sw $a0, 0x18($sp) +/* 039650 80038A50 8FA40018 */ lw $a0, 0x18($sp) +/* 039654 80038A54 240900FF */ li $t1, 255 +/* 039658 80038A58 A4890018 */ sh $t1, 0x18($a0) +.L80038A5C: +/* 03965C 80038A5C 8FBF0014 */ lw $ra, 0x14($sp) +/* 039660 80038A60 27BD0018 */ addiu $sp, $sp, 0x18 +/* 039664 80038A64 03E00008 */ jr $ra +/* 039668 80038A68 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80038A6C.s b/asm/non_matchings/unknown_032760/func_80038A6C.s new file mode 100644 index 00000000..e0289553 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80038A6C.s @@ -0,0 +1,5 @@ +glabel func_80038A6C +/* 03966C 80038A6C AFA40000 */ sw $a0, ($sp) +/* 039670 80038A70 03E00008 */ jr $ra +/* 039674 80038A74 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_80038A78.s b/asm/non_matchings/unknown_032760/func_80038A78.s new file mode 100644 index 00000000..c3ae9c61 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80038A78.s @@ -0,0 +1,23 @@ +glabel func_80038A78 +/* 039678 80038A78 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 03967C 80038A7C AFBF0014 */ sw $ra, 0x14($sp) +/* 039680 80038A80 848E0018 */ lh $t6, 0x18($a0) +/* 039684 80038A84 000578C0 */ sll $t7, $a1, 3 +/* 039688 80038A88 01CFC021 */ addu $t8, $t6, $t7 +/* 03968C 80038A8C A4980018 */ sh $t8, 0x18($a0) +/* 039690 80038A90 84990018 */ lh $t9, 0x18($a0) +/* 039694 80038A94 00000000 */ nop +/* 039698 80038A98 2B210100 */ slti $at, $t9, 0x100 +/* 03969C 80038A9C 14200007 */ bnez $at, .L80038ABC +/* 0396A0 80038AA0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0396A4 80038AA4 0C003FEE */ jal func_8000FFB8 +/* 0396A8 80038AA8 AFA40018 */ sw $a0, 0x18($sp) +/* 0396AC 80038AAC 8FA40018 */ lw $a0, 0x18($sp) +/* 0396B0 80038AB0 240800FF */ li $t0, 255 +/* 0396B4 80038AB4 A4880018 */ sh $t0, 0x18($a0) +/* 0396B8 80038AB8 8FBF0014 */ lw $ra, 0x14($sp) +.L80038ABC: +/* 0396BC 80038ABC 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0396C0 80038AC0 03E00008 */ jr $ra +/* 0396C4 80038AC4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80038AC8.s b/asm/non_matchings/unknown_032760/func_80038AC8.s new file mode 100644 index 00000000..9583f0a6 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80038AC8.s @@ -0,0 +1,5 @@ +glabel func_80038AC8 +/* 0396C8 80038AC8 AFA40000 */ sw $a0, ($sp) +/* 0396CC 80038ACC 03E00008 */ jr $ra +/* 0396D0 80038AD0 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_80038AD4.s b/asm/non_matchings/unknown_032760/func_80038AD4.s new file mode 100644 index 00000000..73cc6db9 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80038AD4.s @@ -0,0 +1,44 @@ +glabel func_80038AD4 +/* 0396D4 80038AD4 44852000 */ mtc1 $a1, $f4 +/* 0396D8 80038AD8 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 +/* 0396DC 80038ADC 468020A0 */ cvt.s.w $f2, $f4 +/* 0396E0 80038AE0 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) +/* 0396E4 80038AE4 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0396E8 80038AE8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0396EC 80038AEC 15C00007 */ bnez $t6, .L80038B0C +/* 0396F0 80038AF0 46001006 */ mov.s $f0, $f2 +/* 0396F4 80038AF4 3C01800E */ lui $at, %hi(D_800E605C) # $at, 0x800e +/* 0396F8 80038AF8 C4296058 */ lwc1 $f9, %lo(D_800E6058)($at) +/* 0396FC 80038AFC C428605C */ lwc1 $f8, %lo(D_800E605C)($at) +/* 039700 80038B00 460011A1 */ cvt.d.s $f6, $f2 +/* 039704 80038B04 46283282 */ mul.d $f10, $f6, $f8 +/* 039708 80038B08 46205020 */ cvt.s.d $f0, $f10 +.L80038B0C: +/* 03970C 80038B0C 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 039710 80038B10 44819800 */ mtc1 $at, $f19 +/* 039714 80038B14 44809000 */ mtc1 $zero, $f18 +/* 039718 80038B18 46000421 */ cvt.d.s $f16, $f0 +/* 03971C 80038B1C 46328102 */ mul.d $f4, $f16, $f18 +/* 039720 80038B20 848F0018 */ lh $t7, 0x18($a0) +/* 039724 80038B24 C4860010 */ lwc1 $f6, 0x10($a0) +/* 039728 80038B28 0005C080 */ sll $t8, $a1, 2 +/* 03972C 80038B2C 01F8C821 */ addu $t9, $t7, $t8 +/* 039730 80038B30 A4990018 */ sh $t9, 0x18($a0) +/* 039734 80038B34 46003221 */ cvt.d.s $f8, $f6 +/* 039738 80038B38 46244280 */ add.d $f10, $f8, $f4 +/* 03973C 80038B3C 84880018 */ lh $t0, 0x18($a0) +/* 039740 80038B40 46205420 */ cvt.s.d $f16, $f10 +/* 039744 80038B44 29010100 */ slti $at, $t0, 0x100 +/* 039748 80038B48 14200006 */ bnez $at, .L80038B64 +/* 03974C 80038B4C E4900010 */ swc1 $f16, 0x10($a0) +/* 039750 80038B50 0C003FEE */ jal func_8000FFB8 +/* 039754 80038B54 AFA40018 */ sw $a0, 0x18($sp) +/* 039758 80038B58 8FA40018 */ lw $a0, 0x18($sp) +/* 03975C 80038B5C 240900FF */ li $t1, 255 +/* 039760 80038B60 A4890018 */ sh $t1, 0x18($a0) +.L80038B64: +/* 039764 80038B64 8FBF0014 */ lw $ra, 0x14($sp) +/* 039768 80038B68 27BD0018 */ addiu $sp, $sp, 0x18 +/* 03976C 80038B6C 03E00008 */ jr $ra +/* 039770 80038B70 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80038B74.s b/asm/non_matchings/unknown_032760/func_80038B74.s new file mode 100644 index 00000000..5888aa3a --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80038B74.s @@ -0,0 +1,35 @@ +glabel func_80038B74 +/* 039774 80038B74 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 039778 80038B78 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 03977C 80038B7C 44812000 */ mtc1 $at, $f4 +/* 039780 80038B80 AFBF0014 */ sw $ra, 0x14($sp) +/* 039784 80038B84 AFA5001C */ sw $a1, 0x1c($sp) +/* 039788 80038B88 00803025 */ move $a2, $a0 +/* 03978C 80038B8C A4800018 */ sh $zero, 0x18($a0) +/* 039790 80038B90 E4840008 */ swc1 $f4, 8($a0) +/* 039794 80038B94 8CCE0040 */ lw $t6, 0x40($a2) +/* 039798 80038B98 00002025 */ move $a0, $zero +/* 03979C 80038B9C 81C50055 */ lb $a1, 0x55($t6) +/* 0397A0 80038BA0 AFA60018 */ sw $a2, 0x18($sp) +/* 0397A4 80038BA4 0C01BE53 */ jal func_8006F94C +/* 0397A8 80038BA8 24A5FFFF */ addiu $a1, $a1, -1 +/* 0397AC 80038BAC 8FA4001C */ lw $a0, 0x1c($sp) +/* 0397B0 80038BB0 8FA60018 */ lw $a2, 0x18($sp) +/* 0397B4 80038BB4 240F00FF */ li $t7, 255 +/* 0397B8 80038BB8 A0C2003A */ sb $v0, 0x3a($a2) +/* 0397BC 80038BBC ACC00078 */ sw $zero, 0x78($a2) +/* 0397C0 80038BC0 ACCF007C */ sw $t7, 0x7c($a2) +/* 0397C4 80038BC4 80830008 */ lb $v1, 8($a0) +/* 0397C8 80038BC8 240A0001 */ li $t2, 1 +/* 0397CC 80038BCC 10600004 */ beqz $v1, .L80038BE0 +/* 0397D0 80038BD0 0003CA00 */ sll $t9, $v1, 8 +/* 0397D4 80038BD4 3328FF00 */ andi $t0, $t9, 0xff00 +/* 0397D8 80038BD8 01E84825 */ or $t1, $t7, $t0 +/* 0397DC 80038BDC ACC9007C */ sw $t1, 0x7c($a2) +.L80038BE0: +/* 0397E0 80038BE0 ACCA0074 */ sw $t2, 0x74($a2) +/* 0397E4 80038BE4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0397E8 80038BE8 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0397EC 80038BEC 03E00008 */ jr $ra +/* 0397F0 80038BF0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80038BF4.s b/asm/non_matchings/unknown_032760/func_80038BF4.s new file mode 100644 index 00000000..79e25306 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80038BF4.s @@ -0,0 +1,97 @@ +glabel func_80038BF4 +/* 0397F4 80038BF4 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0397F8 80038BF8 AFBF002C */ sw $ra, 0x2c($sp) +/* 0397FC 80038BFC AFB00028 */ sw $s0, 0x28($sp) +/* 039800 80038C00 8C8E0078 */ lw $t6, 0x78($a0) +/* 039804 80038C04 8C88007C */ lw $t0, 0x7c($a0) +/* 039808 80038C08 01C51021 */ addu $v0, $t6, $a1 +/* 03980C 80038C0C 2841000B */ slti $at, $v0, 0xb +/* 039810 80038C10 00081A03 */ sra $v1, $t0, 8 +/* 039814 80038C14 00808025 */ move $s0, $a0 +/* 039818 80038C18 AC820078 */ sw $v0, 0x78($a0) +/* 03981C 80038C1C 14200012 */ bnez $at, .L80038C68 +/* 039820 80038C20 307800FF */ andi $t8, $v1, 0xff +/* 039824 80038C24 13000010 */ beqz $t8, .L80038C68 +/* 039828 80038C28 0018CA00 */ sll $t9, $t8, 8 +/* 03982C 80038C2C 01194826 */ xor $t1, $t0, $t9 +/* 039830 80038C30 C48C000C */ lwc1 $f12, 0xc($a0) +/* 039834 80038C34 C48E0010 */ lwc1 $f14, 0x10($a0) +/* 039838 80038C38 8C860014 */ lw $a2, 0x14($a0) +/* 03983C 80038C3C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 039840 80038C40 44812000 */ mtc1 $at, $f4 +/* 039844 80038C44 AC89007C */ sw $t1, 0x7c($a0) +/* 039848 80038C48 270AFFFF */ addiu $t2, $t8, -1 +/* 03984C 80038C4C AFAA0018 */ sw $t2, 0x18($sp) +/* 039850 80038C50 AFA00010 */ sw $zero, 0x10($sp) +/* 039854 80038C54 2407002C */ li $a3, 44 +/* 039858 80038C58 0C00FF11 */ jal func_8003FC44 +/* 03985C 80038C5C E7A40014 */ swc1 $f4, 0x14($sp) +/* 039860 80038C60 8E020078 */ lw $v0, 0x78($s0) +/* 039864 80038C64 00000000 */ nop +.L80038C68: +/* 039868 80038C68 28410014 */ slti $at, $v0, 0x14 +/* 03986C 80038C6C 10200013 */ beqz $at, .L80038CBC +/* 039870 80038C70 28410028 */ slti $at, $v0, 0x28 +/* 039874 80038C74 44823000 */ mtc1 $v0, $f6 +/* 039878 80038C78 3C0141A0 */ li $at, 0x41A00000 # 20.000000 +/* 03987C 80038C7C 46803220 */ cvt.s.w $f8, $f6 +/* 039880 80038C80 44815000 */ mtc1 $at, $f10 +/* 039884 80038C84 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 039888 80038C88 460A4403 */ div.s $f16, $f8, $f10 +/* 03988C 80038C8C 44819000 */ mtc1 $at, $f18 +/* 039890 80038C90 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 039894 80038C94 44813000 */ mtc1 $at, $f6 +/* 039898 80038C98 8E0B007C */ lw $t3, 0x7c($s0) +/* 03989C 80038C9C 00000000 */ nop +/* 0398A0 80038CA0 356C00FF */ ori $t4, $t3, 0xff +/* 0398A4 80038CA4 AE0C007C */ sw $t4, 0x7c($s0) +/* 0398A8 80038CA8 46128102 */ mul.s $f4, $f16, $f18 +/* 0398AC 80038CAC 46062200 */ add.s $f8, $f4, $f6 +/* 0398B0 80038CB0 10000019 */ b .L80038D18 +/* 0398B4 80038CB4 E6080008 */ swc1 $f8, 8($s0) +/* 0398B8 80038CB8 28410028 */ slti $at, $v0, 0x28 +.L80038CBC: +/* 0398BC 80038CBC 10200014 */ beqz $at, .L80038D10 +/* 0398C0 80038CC0 244DFFEC */ addiu $t5, $v0, -0x14 +/* 0398C4 80038CC4 448D5000 */ mtc1 $t5, $f10 +/* 0398C8 80038CC8 3C0141A0 */ li $at, 0x41A00000 # 20.000000 +/* 0398CC 80038CCC 46805420 */ cvt.s.w $f16, $f10 +/* 0398D0 80038CD0 44819000 */ mtc1 $at, $f18 +/* 0398D4 80038CD4 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 0398D8 80038CD8 46128103 */ div.s $f4, $f16, $f18 +/* 0398DC 80038CDC 44813000 */ mtc1 $at, $f6 +/* 0398E0 80038CE0 3C014128 */ li $at, 0x41280000 # 10.500000 +/* 0398E4 80038CE4 00027080 */ sll $t6, $v0, 2 +/* 0398E8 80038CE8 44815000 */ mtc1 $at, $f10 +/* 0398EC 80038CEC 01C27023 */ subu $t6, $t6, $v0 +/* 0398F0 80038CF0 000E7080 */ sll $t6, $t6, 2 +/* 0398F4 80038CF4 240F01EF */ li $t7, 495 +/* 0398F8 80038CF8 01EEC023 */ subu $t8, $t7, $t6 +/* 0398FC 80038CFC AE18007C */ sw $t8, 0x7c($s0) +/* 039900 80038D00 46062202 */ mul.s $f8, $f4, $f6 +/* 039904 80038D04 460A4400 */ add.s $f16, $f8, $f10 +/* 039908 80038D08 10000003 */ b .L80038D18 +/* 03990C 80038D0C E6100008 */ swc1 $f16, 8($s0) +.L80038D10: +/* 039910 80038D10 0C003FEE */ jal func_8000FFB8 +/* 039914 80038D14 02002025 */ move $a0, $s0 +.L80038D18: +/* 039918 80038D18 8E190074 */ lw $t9, 0x74($s0) +/* 03991C 80038D1C 00000000 */ nop +/* 039920 80038D20 1320000A */ beqz $t9, .L80038D4C +/* 039924 80038D24 8FBF002C */ lw $ra, 0x2c($sp) +/* 039928 80038D28 0C0270F2 */ jal func_8009C3C8 +/* 03992C 80038D2C 00000000 */ nop +/* 039930 80038D30 28410002 */ slti $at, $v0, 2 +/* 039934 80038D34 10200004 */ beqz $at, .L80038D48 +/* 039938 80038D38 02002025 */ move $a0, $s0 +/* 03993C 80038D3C 0C02BF0F */ jal func_800AFC3C +/* 039940 80038D40 24050002 */ li $a1, 2 +/* 039944 80038D44 AE000074 */ sw $zero, 0x74($s0) +.L80038D48: +/* 039948 80038D48 8FBF002C */ lw $ra, 0x2c($sp) +.L80038D4C: +/* 03994C 80038D4C 8FB00028 */ lw $s0, 0x28($sp) +/* 039950 80038D50 03E00008 */ jr $ra +/* 039954 80038D54 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_032760/func_80038D58.s b/asm/non_matchings/unknown_032760/func_80038D58.s new file mode 100644 index 00000000..1d099db9 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80038D58.s @@ -0,0 +1,30 @@ +glabel func_80038D58 +/* 039958 80038D58 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 03995C 80038D5C AFBF0014 */ sw $ra, 0x14($sp) +/* 039960 80038D60 AFA5001C */ sw $a1, 0x1c($sp) +/* 039964 80038D64 8C8F004C */ lw $t7, 0x4c($a0) +/* 039968 80038D68 240E0002 */ li $t6, 2 +/* 03996C 80038D6C A5EE0014 */ sh $t6, 0x14($t7) +/* 039970 80038D70 8C98004C */ lw $t8, 0x4c($a0) +/* 039974 80038D74 2419000F */ li $t9, 15 +/* 039978 80038D78 A3000011 */ sb $zero, 0x11($t8) +/* 03997C 80038D7C 8C88004C */ lw $t0, 0x4c($a0) +/* 039980 80038D80 00000000 */ nop +/* 039984 80038D84 A1190010 */ sb $t9, 0x10($t0) +/* 039988 80038D88 8C89004C */ lw $t1, 0x4c($a0) +/* 03998C 80038D8C 00000000 */ nop +/* 039990 80038D90 A1200012 */ sb $zero, 0x12($t1) +/* 039994 80038D94 0C01BAA4 */ jal func_8006EA90 +/* 039998 80038D98 AFA40018 */ sw $a0, 0x18($sp) +/* 03999C 80038D9C 8C4A0010 */ lw $t2, 0x10($v0) +/* 0399A0 80038DA0 8FA40018 */ lw $a0, 0x18($sp) +/* 0399A4 80038DA4 314B0001 */ andi $t3, $t2, 1 +/* 0399A8 80038DA8 11600002 */ beqz $t3, .L80038DB4 +/* 0399AC 80038DAC 240C0001 */ li $t4, 1 +/* 0399B0 80038DB0 AC8C0078 */ sw $t4, 0x78($a0) +.L80038DB4: +/* 0399B4 80038DB4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0399B8 80038DB8 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0399BC 80038DBC 03E00008 */ jr $ra +/* 0399C0 80038DC0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80038DC4.s b/asm/non_matchings/unknown_032760/func_80038DC4.s new file mode 100644 index 00000000..1826a037 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80038DC4.s @@ -0,0 +1,33 @@ +glabel func_80038DC4 +/* 0399C4 80038DC4 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0399C8 80038DC8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0399CC 80038DCC AFA5001C */ sw $a1, 0x1c($sp) +/* 0399D0 80038DD0 8C8E0078 */ lw $t6, 0x78($a0) +/* 0399D4 80038DD4 00803025 */ move $a2, $a0 +/* 0399D8 80038DD8 11C00015 */ beqz $t6, .L80038E30 +/* 0399DC 80038DDC 8FBF0014 */ lw $ra, 0x14($sp) +/* 0399E0 80038DE0 8C8F004C */ lw $t7, 0x4c($a0) +/* 0399E4 80038DE4 8C82003C */ lw $v0, 0x3c($a0) +/* 0399E8 80038DE8 91F80013 */ lbu $t8, 0x13($t7) +/* 0399EC 80038DEC 00000000 */ nop +/* 0399F0 80038DF0 2B010078 */ slti $at, $t8, 0x78 +/* 0399F4 80038DF4 1020000E */ beqz $at, .L80038E30 +/* 0399F8 80038DF8 8FBF0014 */ lw $ra, 0x14($sp) +/* 0399FC 80038DFC 80440008 */ lb $a0, 8($v0) +/* 039A00 80038E00 0C01BCCE */ jal func_8006F338 +/* 039A04 80038E04 AFA60018 */ sw $a2, 0x18($sp) +/* 039A08 80038E08 8FA60018 */ lw $a2, 0x18($sp) +/* 039A0C 80038E0C 24040030 */ li $a0, 48 +/* 039A10 80038E10 00002825 */ move $a1, $zero +/* 039A14 80038E14 0C000741 */ jal func_80001D04 +/* 039A18 80038E18 ACC00078 */ sw $zero, 0x78($a2) +/* 039A1C 80038E1C 2404012A */ li $a0, 298 +/* 039A20 80038E20 00002825 */ move $a1, $zero +/* 039A24 80038E24 0C0003F7 */ jal func_80000FDC +/* 039A28 80038E28 3C063F80 */ lui $a2, 0x3f80 +/* 039A2C 80038E2C 8FBF0014 */ lw $ra, 0x14($sp) +.L80038E30: +/* 039A30 80038E30 27BD0018 */ addiu $sp, $sp, 0x18 +/* 039A34 80038E34 03E00008 */ jr $ra +/* 039A38 80038E38 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80038E3C.s b/asm/non_matchings/unknown_032760/func_80038E3C.s new file mode 100644 index 00000000..f3c80a5c --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80038E3C.s @@ -0,0 +1,74 @@ +glabel func_80038E3C +/* 039A3C 80038E3C 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 039A40 80038E40 AFBF0014 */ sw $ra, 0x14($sp) +/* 039A44 80038E44 90AF0010 */ lbu $t7, 0x10($a1) +/* 039A48 80038E48 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 039A4C 80038E4C 448F2000 */ mtc1 $t7, $f4 +/* 039A50 80038E50 44811000 */ mtc1 $at, $f2 +/* 039A54 80038E54 46802020 */ cvt.s.w $f0, $f4 +/* 039A58 80038E58 3C014300 */ li $at, 0x43000000 # 128.000000 +/* 039A5C 80038E5C 44813000 */ mtc1 $at, $f6 +/* 039A60 80038E60 4602003C */ c.lt.s $f0, $f2 +/* 039A64 80038E64 00803025 */ move $a2, $a0 +/* 039A68 80038E68 45000003 */ bc1f .L80038E78 +/* 039A6C 80038E6C 00000000 */ nop +/* 039A70 80038E70 46001006 */ mov.s $f0, $f2 +/* 039A74 80038E74 00000000 */ nop +.L80038E78: +/* 039A78 80038E78 46060003 */ div.s $f0, $f0, $f6 +/* 039A7C 80038E7C 8CC20064 */ lw $v0, 0x64($a2) +/* 039A80 80038E80 E4C00008 */ swc1 $f0, 8($a2) +/* 039A84 80038E84 90B90011 */ lbu $t9, 0x11($a1) +/* 039A88 80038E88 00000000 */ nop +/* 039A8C 80038E8C 00194280 */ sll $t0, $t9, 0xa +/* 039A90 80038E90 A4C80000 */ sh $t0, ($a2) +/* 039A94 80038E94 84C40000 */ lh $a0, ($a2) +/* 039A98 80038E98 AFA60020 */ sw $a2, 0x20($sp) +/* 039A9C 80038E9C AFA50024 */ sw $a1, 0x24($sp) +/* 039AA0 80038EA0 0C01C1F1 */ jal func_800707C4 +/* 039AA4 80038EA4 AFA20018 */ sw $v0, 0x18($sp) +/* 039AA8 80038EA8 8FA20018 */ lw $v0, 0x18($sp) +/* 039AAC 80038EAC 8FA60020 */ lw $a2, 0x20($sp) +/* 039AB0 80038EB0 44804000 */ mtc1 $zero, $f8 +/* 039AB4 80038EB4 E4400000 */ swc1 $f0, ($v0) +/* 039AB8 80038EB8 E4480004 */ swc1 $f8, 4($v0) +/* 039ABC 80038EBC 84C40000 */ lh $a0, ($a2) +/* 039AC0 80038EC0 0C01C1FE */ jal func_800707F8 +/* 039AC4 80038EC4 00000000 */ nop +/* 039AC8 80038EC8 8FA20018 */ lw $v0, 0x18($sp) +/* 039ACC 80038ECC 8FA60020 */ lw $a2, 0x20($sp) +/* 039AD0 80038ED0 8FA50024 */ lw $a1, 0x24($sp) +/* 039AD4 80038ED4 E4400008 */ swc1 $f0, 8($v0) +/* 039AD8 80038ED8 C44A0000 */ lwc1 $f10, ($v0) +/* 039ADC 80038EDC C4D0000C */ lwc1 $f16, 0xc($a2) +/* 039AE0 80038EE0 C4C40014 */ lwc1 $f4, 0x14($a2) +/* 039AE4 80038EE4 46105482 */ mul.s $f18, $f10, $f16 +/* 039AE8 80038EE8 240B0002 */ li $t3, 2 +/* 039AEC 80038EEC 46040182 */ mul.s $f6, $f0, $f4 +/* 039AF0 80038EF0 46069200 */ add.s $f8, $f18, $f6 +/* 039AF4 80038EF4 46004287 */ neg.s $f10, $f8 +/* 039AF8 80038EF8 E44A000C */ swc1 $f10, 0xc($v0) +/* 039AFC 80038EFC 90A90010 */ lbu $t1, 0x10($a1) +/* 039B00 80038F00 00000000 */ nop +/* 039B04 80038F04 AC490010 */ sw $t1, 0x10($v0) +/* 039B08 80038F08 80AA0018 */ lb $t2, 0x18($a1) +/* 039B0C 80038F0C 00000000 */ nop +/* 039B10 80038F10 A04A0014 */ sb $t2, 0x14($v0) +/* 039B14 80038F14 8CCC004C */ lw $t4, 0x4c($a2) +/* 039B18 80038F18 00000000 */ nop +/* 039B1C 80038F1C A58B0014 */ sh $t3, 0x14($t4) +/* 039B20 80038F20 8CCD004C */ lw $t5, 0x4c($a2) +/* 039B24 80038F24 00000000 */ nop +/* 039B28 80038F28 A1A00011 */ sb $zero, 0x11($t5) +/* 039B2C 80038F2C 8CCF004C */ lw $t7, 0x4c($a2) +/* 039B30 80038F30 90AE0010 */ lbu $t6, 0x10($a1) +/* 039B34 80038F34 00000000 */ nop +/* 039B38 80038F38 A1EE0010 */ sb $t6, 0x10($t7) +/* 039B3C 80038F3C 8CD8004C */ lw $t8, 0x4c($a2) +/* 039B40 80038F40 00000000 */ nop +/* 039B44 80038F44 A3000012 */ sb $zero, 0x12($t8) +/* 039B48 80038F48 8FBF0014 */ lw $ra, 0x14($sp) +/* 039B4C 80038F4C 27BD0020 */ addiu $sp, $sp, 0x20 +/* 039B50 80038F50 03E00008 */ jr $ra +/* 039B54 80038F54 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80038F58.s b/asm/non_matchings/unknown_032760/func_80038F58.s new file mode 100644 index 00000000..9f460a40 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80038F58.s @@ -0,0 +1,138 @@ +glabel func_80038F58 +/* 039B58 80038F58 27BDFF80 */ addiu $sp, $sp, -0x80 +/* 039B5C 80038F5C AFBF0044 */ sw $ra, 0x44($sp) +/* 039B60 80038F60 AFB70040 */ sw $s7, 0x40($sp) +/* 039B64 80038F64 AFB6003C */ sw $s6, 0x3c($sp) +/* 039B68 80038F68 AFB50038 */ sw $s5, 0x38($sp) +/* 039B6C 80038F6C AFB40034 */ sw $s4, 0x34($sp) +/* 039B70 80038F70 AFB30030 */ sw $s3, 0x30($sp) +/* 039B74 80038F74 AFB2002C */ sw $s2, 0x2c($sp) +/* 039B78 80038F78 AFB10028 */ sw $s1, 0x28($sp) +/* 039B7C 80038F7C AFB00024 */ sw $s0, 0x24($sp) +/* 039B80 80038F80 E7B70018 */ swc1 $f23, 0x18($sp) +/* 039B84 80038F84 E7B6001C */ swc1 $f22, 0x1c($sp) +/* 039B88 80038F88 E7B50010 */ swc1 $f21, 0x10($sp) +/* 039B8C 80038F8C E7B40014 */ swc1 $f20, 0x14($sp) +/* 039B90 80038F90 AFA50084 */ sw $a1, 0x84($sp) +/* 039B94 80038F94 8C950064 */ lw $s5, 0x64($a0) +/* 039B98 80038F98 0080A025 */ move $s4, $a0 +/* 039B9C 80038F9C 0C01BAA4 */ jal func_8006EA90 +/* 039BA0 80038FA0 24100001 */ li $s0, 1 +/* 039BA4 80038FA4 82A30014 */ lb $v1, 0x14($s5) +/* 039BA8 80038FA8 00000000 */ nop +/* 039BAC 80038FAC 1460000B */ bnez $v1, .L80038FDC +/* 039BB0 80038FB0 24010001 */ li $at, 1 +/* 039BB4 80038FB4 904F0048 */ lbu $t7, 0x48($v0) +/* 039BB8 80038FB8 8C4E0000 */ lw $t6, ($v0) +/* 039BBC 80038FBC 000FC040 */ sll $t8, $t7, 1 +/* 039BC0 80038FC0 01D8C821 */ addu $t9, $t6, $t8 +/* 039BC4 80038FC4 87280000 */ lh $t0, ($t9) +/* 039BC8 80038FC8 24010008 */ li $at, 8 +/* 039BCC 80038FCC 15010003 */ bne $t0, $at, .L80038FDC +/* 039BD0 80038FD0 24010001 */ li $at, 1 +/* 039BD4 80038FD4 00008025 */ move $s0, $zero +/* 039BD8 80038FD8 24010001 */ li $at, 1 +.L80038FDC: +/* 039BDC 80038FDC 1461000B */ bne $v1, $at, .L8003900C +/* 039BE0 80038FE0 00000000 */ nop +/* 039BE4 80038FE4 904A0048 */ lbu $t2, 0x48($v0) +/* 039BE8 80038FE8 8C490000 */ lw $t1, ($v0) +/* 039BEC 80038FEC 000A5840 */ sll $t3, $t2, 1 +/* 039BF0 80038FF0 012B6021 */ addu $t4, $t1, $t3 +/* 039BF4 80038FF4 858D0000 */ lh $t5, ($t4) +/* 039BF8 80038FF8 00000000 */ nop +/* 039BFC 80038FFC 29A10008 */ slti $at, $t5, 8 +/* 039C00 80039000 10200002 */ beqz $at, .L8003900C +/* 039C04 80039004 00000000 */ nop +/* 039C08 80039008 00008025 */ move $s0, $zero +.L8003900C: +/* 039C0C 8003900C 12000046 */ beqz $s0, .L80039128 +/* 039C10 80039010 8FBF0044 */ lw $ra, 0x44($sp) +/* 039C14 80039014 8E8F004C */ lw $t7, 0x4c($s4) +/* 039C18 80039018 8EA20010 */ lw $v0, 0x10($s5) +/* 039C1C 8003901C 91EE0013 */ lbu $t6, 0x13($t7) +/* 039C20 80039020 27A40074 */ addiu $a0, $sp, 0x74 +/* 039C24 80039024 01C2082A */ slt $at, $t6, $v0 +/* 039C28 80039028 1020003F */ beqz $at, .L80039128 +/* 039C2C 8003902C 8FBF0044 */ lw $ra, 0x44($sp) +/* 039C30 80039030 44822000 */ mtc1 $v0, $f4 +/* 039C34 80039034 0C006E9D */ jal func_8001BA74 +/* 039C38 80039038 468025A0 */ cvt.s.w $f22, $f4 +/* 039C3C 8003903C 8FB80074 */ lw $t8, 0x74($sp) +/* 039C40 80039040 00009025 */ move $s2, $zero +/* 039C44 80039044 1B000037 */ blez $t8, .L80039124 +/* 039C48 80039048 00409825 */ move $s3, $v0 +/* 039C4C 8003904C 4480A000 */ mtc1 $zero, $f20 +/* 039C50 80039050 2417FF88 */ li $s7, -120 +/* 039C54 80039054 2416FFFF */ li $s6, -1 +.L80039058: +/* 039C58 80039058 8E700000 */ lw $s0, ($s3) +/* 039C5C 8003905C 00000000 */ nop +/* 039C60 80039060 8E110064 */ lw $s1, 0x64($s0) +/* 039C64 80039064 00000000 */ nop +/* 039C68 80039068 86390000 */ lh $t9, ($s1) +/* 039C6C 8003906C 00000000 */ nop +/* 039C70 80039070 12D90028 */ beq $s6, $t9, .L80039114 +/* 039C74 80039074 8FAA0074 */ lw $t2, 0x74($sp) +/* 039C78 80039078 8E280108 */ lw $t0, 0x108($s1) +/* 039C7C 8003907C 00000000 */ nop +/* 039C80 80039080 15000024 */ bnez $t0, .L80039114 +/* 039C84 80039084 8FAA0074 */ lw $t2, 0x74($sp) +/* 039C88 80039088 C606000C */ lwc1 $f6, 0xc($s0) +/* 039C8C 8003908C C688000C */ lwc1 $f8, 0xc($s4) +/* 039C90 80039090 C60A0010 */ lwc1 $f10, 0x10($s0) +/* 039C94 80039094 46083001 */ sub.s $f0, $f6, $f8 +/* 039C98 80039098 C6900010 */ lwc1 $f16, 0x10($s4) +/* 039C9C 8003909C 46000182 */ mul.s $f6, $f0, $f0 +/* 039CA0 800390A0 46105081 */ sub.s $f2, $f10, $f16 +/* 039CA4 800390A4 C6120014 */ lwc1 $f18, 0x14($s0) +/* 039CA8 800390A8 C6840014 */ lwc1 $f4, 0x14($s4) +/* 039CAC 800390AC 46021202 */ mul.s $f8, $f2, $f2 +/* 039CB0 800390B0 46049381 */ sub.s $f14, $f18, $f4 +/* 039CB4 800390B4 460E7402 */ mul.s $f16, $f14, $f14 +/* 039CB8 800390B8 46083280 */ add.s $f10, $f6, $f8 +/* 039CBC 800390BC 0C0326B4 */ jal sqrtf +/* 039CC0 800390C0 46105300 */ add.s $f12, $f10, $f16 +/* 039CC4 800390C4 4616003C */ c.lt.s $f0, $f22 +/* 039CC8 800390C8 00000000 */ nop +/* 039CCC 800390CC 45000011 */ bc1f .L80039114 +/* 039CD0 800390D0 8FAA0074 */ lw $t2, 0x74($sp) +/* 039CD4 800390D4 C6B20000 */ lwc1 $f18, ($s5) +/* 039CD8 800390D8 C604000C */ lwc1 $f4, 0xc($s0) +/* 039CDC 800390DC C6A80008 */ lwc1 $f8, 8($s5) +/* 039CE0 800390E0 46049182 */ mul.s $f6, $f18, $f4 +/* 039CE4 800390E4 C60A0014 */ lwc1 $f10, 0x14($s0) +/* 039CE8 800390E8 C6A4000C */ lwc1 $f4, 0xc($s5) +/* 039CEC 800390EC 460A4402 */ mul.s $f16, $f8, $f10 +/* 039CF0 800390F0 46103480 */ add.s $f18, $f6, $f16 +/* 039CF4 800390F4 46049000 */ add.s $f0, $f18, $f4 +/* 039CF8 800390F8 4614003C */ c.lt.s $f0, $f20 +/* 039CFC 800390FC 00000000 */ nop +/* 039D00 80039100 45000004 */ bc1f .L80039114 +/* 039D04 80039104 8FAA0074 */ lw $t2, 0x74($sp) +/* 039D08 80039108 AE340108 */ sw $s4, 0x108($s1) +/* 039D0C 8003910C A2370200 */ sb $s7, 0x200($s1) +/* 039D10 80039110 8FAA0074 */ lw $t2, 0x74($sp) +.L80039114: +/* 039D14 80039114 26520001 */ addiu $s2, $s2, 1 +/* 039D18 80039118 024A082A */ slt $at, $s2, $t2 +/* 039D1C 8003911C 1420FFCE */ bnez $at, .L80039058 +/* 039D20 80039120 26730004 */ addiu $s3, $s3, 4 +.L80039124: +/* 039D24 80039124 8FBF0044 */ lw $ra, 0x44($sp) +.L80039128: +/* 039D28 80039128 C7B50010 */ lwc1 $f21, 0x10($sp) +/* 039D2C 8003912C C7B40014 */ lwc1 $f20, 0x14($sp) +/* 039D30 80039130 C7B70018 */ lwc1 $f23, 0x18($sp) +/* 039D34 80039134 C7B6001C */ lwc1 $f22, 0x1c($sp) +/* 039D38 80039138 8FB00024 */ lw $s0, 0x24($sp) +/* 039D3C 8003913C 8FB10028 */ lw $s1, 0x28($sp) +/* 039D40 80039140 8FB2002C */ lw $s2, 0x2c($sp) +/* 039D44 80039144 8FB30030 */ lw $s3, 0x30($sp) +/* 039D48 80039148 8FB40034 */ lw $s4, 0x34($sp) +/* 039D4C 8003914C 8FB50038 */ lw $s5, 0x38($sp) +/* 039D50 80039150 8FB6003C */ lw $s6, 0x3c($sp) +/* 039D54 80039154 8FB70040 */ lw $s7, 0x40($sp) +/* 039D58 80039158 03E00008 */ jr $ra +/* 039D5C 8003915C 27BD0080 */ addiu $sp, $sp, 0x80 + diff --git a/asm/non_matchings/unknown_032760/func_80039160.s b/asm/non_matchings/unknown_032760/func_80039160.s new file mode 100644 index 00000000..da68646b --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80039160.s @@ -0,0 +1,11 @@ +glabel func_80039160 +/* 039D60 80039160 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 039D64 80039164 AFBF0014 */ sw $ra, 0x14($sp) +/* 039D68 80039168 80AE0008 */ lb $t6, 8($a1) +/* 039D6C 8003916C 0C0044E4 */ jal func_80011390 +/* 039D70 80039170 AC8E0078 */ sw $t6, 0x78($a0) +/* 039D74 80039174 8FBF0014 */ lw $ra, 0x14($sp) +/* 039D78 80039178 27BD0018 */ addiu $sp, $sp, 0x18 +/* 039D7C 8003917C 03E00008 */ jr $ra +/* 039D80 80039180 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80039184.s b/asm/non_matchings/unknown_032760/func_80039184.s new file mode 100644 index 00000000..cddb8e1a --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80039184.s @@ -0,0 +1,5 @@ +glabel func_80039184 +/* 039D84 80039184 AFA40000 */ sw $a0, ($sp) +/* 039D88 80039188 03E00008 */ jr $ra +/* 039D8C 8003918C AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_80039190.s b/asm/non_matchings/unknown_032760/func_80039190.s new file mode 100644 index 00000000..000805e0 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80039190.s @@ -0,0 +1,13 @@ +glabel func_80039190 +/* 039D90 80039190 90AE0008 */ lbu $t6, 8($a1) +/* 039D94 80039194 00000000 */ nop +/* 039D98 80039198 AC8E0078 */ sw $t6, 0x78($a0) +/* 039D9C 8003919C 90AF0009 */ lbu $t7, 9($a1) +/* 039DA0 800391A0 00000000 */ nop +/* 039DA4 800391A4 AC8F007C */ sw $t7, 0x7c($a0) +/* 039DA8 800391A8 90B9000A */ lbu $t9, 0xa($a1) +/* 039DAC 800391AC 00000000 */ nop +/* 039DB0 800391B0 00194280 */ sll $t0, $t9, 0xa +/* 039DB4 800391B4 03E00008 */ jr $ra +/* 039DB8 800391B8 A4880000 */ sh $t0, ($a0) + diff --git a/asm/non_matchings/unknown_032760/func_800391BC.s b/asm/non_matchings/unknown_032760/func_800391BC.s new file mode 100644 index 00000000..18ee5e57 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800391BC.s @@ -0,0 +1,5 @@ +glabel func_800391BC +/* 039DBC 800391BC AFA40000 */ sw $a0, ($sp) +/* 039DC0 800391C0 03E00008 */ jr $ra +/* 039DC4 800391C4 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_800391C8.s b/asm/non_matchings/unknown_032760/func_800391C8.s new file mode 100644 index 00000000..c136f290 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800391C8.s @@ -0,0 +1,15 @@ +glabel func_800391C8 +/* 039DC8 800391C8 AFA50004 */ sw $a1, 4($sp) +/* 039DCC 800391CC 8C8F004C */ lw $t7, 0x4c($a0) +/* 039DD0 800391D0 240E0001 */ li $t6, 1 +/* 039DD4 800391D4 A5EE0014 */ sh $t6, 0x14($t7) +/* 039DD8 800391D8 8C99004C */ lw $t9, 0x4c($a0) +/* 039DDC 800391DC 24180003 */ li $t8, 3 +/* 039DE0 800391E0 A3380011 */ sb $t8, 0x11($t9) +/* 039DE4 800391E4 8C89004C */ lw $t1, 0x4c($a0) +/* 039DE8 800391E8 24080014 */ li $t0, 20 +/* 039DEC 800391EC A1280010 */ sb $t0, 0x10($t1) +/* 039DF0 800391F0 8C8A004C */ lw $t2, 0x4c($a0) +/* 039DF4 800391F4 03E00008 */ jr $ra +/* 039DF8 800391F8 A1400012 */ sb $zero, 0x12($t2) + diff --git a/asm/non_matchings/unknown_032760/func_800391FC.s b/asm/non_matchings/unknown_032760/func_800391FC.s new file mode 100644 index 00000000..88826b81 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800391FC.s @@ -0,0 +1,53 @@ +glabel func_800391FC +/* 039DFC 800391FC 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 039E00 80039200 AFBF0024 */ sw $ra, 0x24($sp) +/* 039E04 80039204 AFB00020 */ sw $s0, 0x20($sp) +/* 039E08 80039208 8C820078 */ lw $v0, 0x78($a0) +/* 039E0C 8003920C 00808025 */ move $s0, $a0 +/* 039E10 80039210 18400006 */ blez $v0, .L8003922C +/* 039E14 80039214 02003025 */ move $a2, $s0 +/* 039E18 80039218 00457023 */ subu $t6, $v0, $a1 +/* 039E1C 8003921C 00057840 */ sll $t7, $a1, 1 +/* 039E20 80039220 AC8E0078 */ sw $t6, 0x78($a0) +/* 039E24 80039224 10000002 */ b .L80039230 +/* 039E28 80039228 01E02825 */ move $a1, $t7 +.L8003922C: +/* 039E2C 8003922C AE000078 */ sw $zero, 0x78($s0) +.L80039230: +/* 039E30 80039230 86180018 */ lh $t8, 0x18($s0) +/* 039E34 80039234 02002025 */ move $a0, $s0 +/* 039E38 80039238 0C007D18 */ jal func_8001F460 +/* 039E3C 8003923C AFB8002C */ sw $t8, 0x2c($sp) +/* 039E40 80039240 8FA6002C */ lw $a2, 0x2c($sp) +/* 039E44 80039244 241900AD */ li $t9, 173 +/* 039E48 80039248 AFB90010 */ sw $t9, 0x10($sp) +/* 039E4C 8003924C 02002025 */ move $a0, $s0 +/* 039E50 80039250 00002825 */ move $a1, $zero +/* 039E54 80039254 0C0044F3 */ jal func_800113CC +/* 039E58 80039258 240700AC */ li $a3, 172 +/* 039E5C 8003925C 8E08004C */ lw $t0, 0x4c($s0) +/* 039E60 80039260 00000000 */ nop +/* 039E64 80039264 91090013 */ lbu $t1, 0x13($t0) +/* 039E68 80039268 00000000 */ nop +/* 039E6C 8003926C 292100FF */ slti $at, $t1, 0xff +/* 039E70 80039270 1020000E */ beqz $at, .L800392AC +/* 039E74 80039274 8FBF0024 */ lw $ra, 0x24($sp) +/* 039E78 80039278 8E0A0078 */ lw $t2, 0x78($s0) +/* 039E7C 8003927C 240B003C */ li $t3, 60 +/* 039E80 80039280 15400009 */ bnez $t2, .L800392A8 +/* 039E84 80039284 2404023B */ li $a0, 571 +/* 039E88 80039288 8E05000C */ lw $a1, 0xc($s0) +/* 039E8C 8003928C 8E060010 */ lw $a2, 0x10($s0) +/* 039E90 80039290 8E070014 */ lw $a3, 0x14($s0) +/* 039E94 80039294 AE0B0078 */ sw $t3, 0x78($s0) +/* 039E98 80039298 240C0004 */ li $t4, 4 +/* 039E9C 8003929C AFAC0010 */ sw $t4, 0x10($sp) +/* 039EA0 800392A0 0C002556 */ jal func_80009558 +/* 039EA4 800392A4 AFA00014 */ sw $zero, 0x14($sp) +.L800392A8: +/* 039EA8 800392A8 8FBF0024 */ lw $ra, 0x24($sp) +.L800392AC: +/* 039EAC 800392AC 8FB00020 */ lw $s0, 0x20($sp) +/* 039EB0 800392B0 03E00008 */ jr $ra +/* 039EB4 800392B4 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_032760/func_800392B8.s b/asm/non_matchings/unknown_032760/func_800392B8.s new file mode 100644 index 00000000..e1310ac1 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800392B8.s @@ -0,0 +1,28 @@ +glabel func_800392B8 +/* 039EB8 800392B8 AFA50004 */ sw $a1, 4($sp) +/* 039EBC 800392BC 8C8F004C */ lw $t7, 0x4c($a0) +/* 039EC0 800392C0 240E0001 */ li $t6, 1 +/* 039EC4 800392C4 A5EE0014 */ sh $t6, 0x14($t7) +/* 039EC8 800392C8 8C98004C */ lw $t8, 0x4c($a0) +/* 039ECC 800392CC 2419001E */ li $t9, 30 +/* 039ED0 800392D0 A3000011 */ sb $zero, 0x11($t8) +/* 039ED4 800392D4 8C88004C */ lw $t0, 0x4c($a0) +/* 039ED8 800392D8 44802000 */ mtc1 $zero, $f4 +/* 039EDC 800392DC A1190010 */ sb $t9, 0x10($t0) +/* 039EE0 800392E0 8C89004C */ lw $t1, 0x4c($a0) +/* 039EE4 800392E4 240A00FF */ li $t2, 255 +/* 039EE8 800392E8 A1200012 */ sb $zero, 0x12($t1) +/* 039EEC 800392EC 8C820064 */ lw $v0, 0x64($a0) +/* 039EF0 800392F0 3C018012 */ lui $at, %hi(D_8011D4D4) # $at, 0x8012 +/* 039EF4 800392F4 A04A000D */ sb $t2, 0xd($v0) +/* 039EF8 800392F8 E4440000 */ swc1 $f4, ($v0) +/* 039EFC 800392FC A4400028 */ sh $zero, 0x28($v0) +/* 039F00 80039300 AC40002C */ sw $zero, 0x2c($v0) +/* 039F04 80039304 A4400034 */ sh $zero, 0x34($v0) +/* 039F08 80039308 A0400036 */ sb $zero, 0x36($v0) +/* 039F0C 8003930C AC20D4D4 */ sw $zero, %lo(D_8011D4D4)($at) +/* 039F10 80039310 3C018012 */ lui $at, 0x8012 +/* 039F14 80039314 240B010F */ li $t3, 271 +/* 039F18 80039318 03E00008 */ jr $ra +/* 039F1C 8003931C A42BD4E2 */ sh $t3, -0x2b1e($at) + diff --git a/asm/non_matchings/unknown_032760/func_80039320.s b/asm/non_matchings/unknown_032760/func_80039320.s new file mode 100644 index 00000000..606434a0 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80039320.s @@ -0,0 +1,6 @@ +glabel func_80039320 +/* 039F20 80039320 3C018012 */ lui $at, 0x8012 +/* 039F24 80039324 AFA40000 */ sw $a0, ($sp) +/* 039F28 80039328 03E00008 */ jr $ra +/* 039F2C 8003932C A424D4E2 */ sh $a0, -0x2b1e($at) + diff --git a/asm/non_matchings/unknown_032760/func_80039330.s b/asm/non_matchings/unknown_032760/func_80039330.s new file mode 100644 index 00000000..35b7e963 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80039330.s @@ -0,0 +1,1709 @@ +glabel func_80039330 +/* 039F30 80039330 27BDFF50 */ addiu $sp, $sp, -0xb0 +/* 039F34 80039334 44853000 */ mtc1 $a1, $f6 +/* 039F38 80039338 AFBF002C */ sw $ra, 0x2c($sp) +/* 039F3C 8003933C AFB10028 */ sw $s1, 0x28($sp) +/* 039F40 80039340 AFB00024 */ sw $s0, 0x24($sp) +/* 039F44 80039344 AFA500B4 */ sw $a1, 0xb4($sp) +/* 039F48 80039348 A3A0006B */ sb $zero, 0x6b($sp) +/* 039F4C 8003934C 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 +/* 039F50 80039350 468030A0 */ cvt.s.w $f2, $f6 +/* 039F54 80039354 C4840010 */ lwc1 $f4, 0x10($a0) +/* 039F58 80039358 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) +/* 039F5C 8003935C 00808025 */ move $s0, $a0 +/* 039F60 80039360 46001006 */ mov.s $f0, $f2 +/* 039F64 80039364 15E00007 */ bnez $t7, .L80039384 +/* 039F68 80039368 E7A40098 */ swc1 $f4, 0x98($sp) +/* 039F6C 8003936C 3C01800E */ lui $at, %hi(D_800E6064) # $at, 0x800e +/* 039F70 80039370 C42B6060 */ lwc1 $f11, %lo(D_800E6060)($at) +/* 039F74 80039374 C42A6064 */ lwc1 $f10, %lo(D_800E6064)($at) +/* 039F78 80039378 46001221 */ cvt.d.s $f8, $f2 +/* 039F7C 8003937C 462A4402 */ mul.d $f16, $f8, $f10 +/* 039F80 80039380 46208020 */ cvt.s.d $f0, $f16 +.L80039384: +/* 039F84 80039384 8E110064 */ lw $s1, 0x64($s0) +/* 039F88 80039388 E7A20048 */ swc1 $f2, 0x48($sp) +/* 039F8C 8003938C 0C01AF6C */ jal func_8006BDB0 +/* 039F90 80039390 E7A000AC */ swc1 $f0, 0xac($sp) +/* 039F94 80039394 AFA20064 */ sw $v0, 0x64($sp) +/* 039F98 80039398 86180018 */ lh $t8, 0x18($s0) +/* 039F9C 8003939C AE000074 */ sw $zero, 0x74($s0) +/* 039FA0 800393A0 1700000D */ bnez $t8, .L800393D8 +/* 039FA4 800393A4 00000000 */ nop +/* 039FA8 800393A8 C6240004 */ lwc1 $f4, 4($s1) +/* 039FAC 800393AC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 039FB0 800393B0 44819800 */ mtc1 $at, $f19 +/* 039FB4 800393B4 44809000 */ mtc1 $zero, $f18 +/* 039FB8 800393B8 460021A1 */ cvt.d.s $f6, $f4 +/* 039FBC 800393BC 4626903C */ c.lt.d $f18, $f6 +/* 039FC0 800393C0 00000000 */ nop +/* 039FC4 800393C4 45000004 */ bc1f .L800393D8 +/* 039FC8 800393C8 00000000 */ nop +/* 039FCC 800393CC 44800000 */ mtc1 $zero, $f0 +/* 039FD0 800393D0 00000000 */ nop +/* 039FD4 800393D4 E6200004 */ swc1 $f0, 4($s1) +.L800393D8: +/* 039FD8 800393D8 44800000 */ mtc1 $zero, $f0 +/* 039FDC 800393DC 00002025 */ move $a0, $zero +/* 039FE0 800393E0 E7A0009C */ swc1 $f0, 0x9c($sp) +/* 039FE4 800393E4 E600001C */ swc1 $f0, 0x1c($s0) +/* 039FE8 800393E8 0C006EB2 */ jal func_8001BAC8 +/* 039FEC 800393EC E6000024 */ swc1 $f0, 0x24($s0) +/* 039FF0 800393F0 00401825 */ move $v1, $v0 +/* 039FF4 800393F4 10400019 */ beqz $v0, .L8003945C +/* 039FF8 800393F8 AFA20090 */ sw $v0, 0x90($sp) +/* 039FFC 800393FC 8C420064 */ lw $v0, 0x64($v0) +/* 03A000 80039400 3C014248 */ li $at, 0x42480000 # 50.000000 +/* 03A004 80039404 44817000 */ mtc1 $at, $f14 +/* 03A008 80039408 C44A0038 */ lwc1 $f10, 0x38($v0) +/* 03A00C 8003940C C468000C */ lwc1 $f8, 0xc($v1) +/* 03A010 80039410 460E5402 */ mul.s $f16, $f10, $f14 +/* 03A014 80039414 C44A0040 */ lwc1 $f10, 0x40($v0) +/* 03A018 80039418 C612000C */ lwc1 $f18, 0xc($s0) +/* 03A01C 8003941C C4660014 */ lwc1 $f6, 0x14($v1) +/* 03A020 80039420 46104101 */ sub.s $f4, $f8, $f16 +/* 03A024 80039424 460E5202 */ mul.s $f8, $f10, $f14 +/* 03A028 80039428 46122001 */ sub.s $f0, $f4, $f18 +/* 03A02C 8003942C C6040014 */ lwc1 $f4, 0x14($s0) +/* 03A030 80039430 E7A000A8 */ swc1 $f0, 0xa8($sp) +/* 03A034 80039434 46083401 */ sub.s $f16, $f6, $f8 +/* 03A038 80039438 AFA30090 */ sw $v1, 0x90($sp) +/* 03A03C 8003943C 46000482 */ mul.s $f18, $f0, $f0 +/* 03A040 80039440 46048081 */ sub.s $f2, $f16, $f4 +/* 03A044 80039444 AFA20070 */ sw $v0, 0x70($sp) +/* 03A048 80039448 E7A200A0 */ swc1 $f2, 0xa0($sp) +/* 03A04C 8003944C 46021282 */ mul.s $f10, $f2, $f2 +/* 03A050 80039450 0C0326B4 */ jal sqrtf +/* 03A054 80039454 460A9300 */ add.s $f12, $f18, $f10 +/* 03A058 80039458 E7A0009C */ swc1 $f0, 0x9c($sp) +.L8003945C: +/* 03A05C 8003945C 0C01A955 */ jal func_8006A554 +/* 03A060 80039460 00002025 */ move $a0, $zero +/* 03A064 80039464 8E190078 */ lw $t9, 0x78($s0) +/* 03A068 80039468 00003025 */ move $a2, $zero +/* 03A06C 8003946C 1720003C */ bnez $t9, .L80039560 +/* 03A070 80039470 3C01800E */ lui $at, %hi(D_800E606C) # $at, 0x800e +/* 03A074 80039474 C7A6009C */ lwc1 $f6, 0x9c($sp) +/* 03A078 80039478 C4316068 */ lwc1 $f17, %lo(D_800E6068)($at) +/* 03A07C 8003947C C430606C */ lwc1 $f16, %lo(D_800E606C)($at) +/* 03A080 80039480 46003221 */ cvt.d.s $f8, $f6 +/* 03A084 80039484 4630403C */ c.lt.d $f8, $f16 +/* 03A088 80039488 00000000 */ nop +/* 03A08C 8003948C 45000034 */ bc1f .L80039560 +/* 03A090 80039490 00000000 */ nop +/* 03A094 80039494 8E03004C */ lw $v1, 0x4c($s0) +/* 03A098 80039498 8FAA0090 */ lw $t2, 0x90($sp) +/* 03A09C 8003949C 84680014 */ lh $t0, 0x14($v1) +/* 03A0A0 800394A0 304C2000 */ andi $t4, $v0, 0x2000 +/* 03A0A4 800394A4 31090008 */ andi $t1, $t0, 8 +/* 03A0A8 800394A8 11200005 */ beqz $t1, .L800394C0 +/* 03A0AC 800394AC 00000000 */ nop +/* 03A0B0 800394B0 8C6B0000 */ lw $t3, ($v1) +/* 03A0B4 800394B4 00000000 */ nop +/* 03A0B8 800394B8 114B0003 */ beq $t2, $t3, .L800394C8 +/* 03A0BC 800394BC 304D2000 */ andi $t5, $v0, 0x2000 +.L800394C0: +/* 03A0C0 800394C0 11800027 */ beqz $t4, .L80039560 +/* 03A0C4 800394C4 304D2000 */ andi $t5, $v0, 0x2000 +.L800394C8: +/* 03A0C8 800394C8 11A00008 */ beqz $t5, .L800394EC +/* 03A0CC 800394CC 8FAE0090 */ lw $t6, 0x90($sp) +/* 03A0D0 800394D0 8FA40090 */ lw $a0, 0x90($sp) +/* 03A0D4 800394D4 8FA50070 */ lw $a1, 0x70($sp) +/* 03A0D8 800394D8 0C015A4C */ jal func_80056930 +/* 03A0DC 800394DC AFA60084 */ sw $a2, 0x84($sp) +/* 03A0E0 800394E0 8FA60084 */ lw $a2, 0x84($sp) +/* 03A0E4 800394E4 00000000 */ nop +/* 03A0E8 800394E8 8FAE0090 */ lw $t6, 0x90($sp) +.L800394EC: +/* 03A0EC 800394EC C612000C */ lwc1 $f18, 0xc($s0) +/* 03A0F0 800394F0 C6060014 */ lwc1 $f6, 0x14($s0) +/* 03A0F4 800394F4 C5C4000C */ lwc1 $f4, 0xc($t6) +/* 03A0F8 800394F8 C5CA0014 */ lwc1 $f10, 0x14($t6) +/* 03A0FC 800394FC AFA60084 */ sw $a2, 0x84($sp) +/* 03A100 80039500 46122301 */ sub.s $f12, $f4, $f18 +/* 03A104 80039504 0C01C1D4 */ jal func_80070750 +/* 03A108 80039508 46065381 */ sub.s $f14, $f10, $f6 +/* 03A10C 8003950C 8FAF0090 */ lw $t7, 0x90($sp) +/* 03A110 80039510 34018001 */ li $at, 32769 +/* 03A114 80039514 85F80000 */ lh $t8, ($t7) +/* 03A118 80039518 8FA60084 */ lw $a2, 0x84($sp) +/* 03A11C 8003951C 3319FFFF */ andi $t9, $t8, 0xffff +/* 03A120 80039520 00591823 */ subu $v1, $v0, $t9 +/* 03A124 80039524 0061082A */ slt $at, $v1, $at +/* 03A128 80039528 14200004 */ bnez $at, .L8003953C +/* 03A12C 8003952C 28618000 */ slti $at, $v1, -0x8000 +/* 03A130 80039530 3C03FFFF */ lui $v1, (0xFFFF0001 >> 16) # lui $v1, 0xffff +/* 03A134 80039534 34630001 */ ori $v1, (0xFFFF0001 & 0xFFFF) # ori $v1, $v1, 1 +/* 03A138 80039538 28618000 */ slti $at, $v1, -0x8000 +.L8003953C: +/* 03A13C 8003953C 10200003 */ beqz $at, .L8003954C +/* 03A140 80039540 2861E001 */ slti $at, $v1, -0x1fff +/* 03A144 80039544 3403FFFF */ li $v1, 65535 +/* 03A148 80039548 2861E001 */ slti $at, $v1, -0x1fff +.L8003954C: +/* 03A14C 8003954C 14200004 */ bnez $at, .L80039560 +/* 03A150 80039550 28612000 */ slti $at, $v1, 0x2000 +/* 03A154 80039554 10200002 */ beqz $at, .L80039560 +/* 03A158 80039558 00000000 */ nop +/* 03A15C 8003955C 24060001 */ li $a2, 1 +.L80039560: +/* 03A160 80039560 8E09004C */ lw $t1, 0x4c($s0) +/* 03A164 80039564 24080001 */ li $t0, 1 +/* 03A168 80039568 A5280014 */ sh $t0, 0x14($t1) +/* 03A16C 8003956C 0C014862 */ jal func_80052188 +/* 03A170 80039570 AFA60084 */ sw $a2, 0x84($sp) +/* 03A174 80039574 8FA60084 */ lw $a2, 0x84($sp) +/* 03A178 80039578 14400003 */ bnez $v0, .L80039588 +/* 03A17C 8003957C 00000000 */ nop +/* 03A180 80039580 10C00047 */ beqz $a2, .L800396A0 +/* 03A184 80039584 00000000 */ nop +.L80039588: +/* 03A188 80039588 8E020078 */ lw $v0, 0x78($s0) +/* 03A18C 8003958C 2401001F */ li $at, 31 +/* 03A190 80039590 10400003 */ beqz $v0, .L800395A0 +/* 03A194 80039594 00000000 */ nop +/* 03A198 80039598 14410041 */ bne $v0, $at, .L800396A0 +/* 03A19C 8003959C 00000000 */ nop +.L800395A0: +/* 03A1A0 800395A0 0C0004BA */ jal func_800012E8 +/* 03A1A4 800395A4 AFA60084 */ sw $a2, 0x84($sp) +/* 03A1A8 800395A8 0C0002F8 */ jal func_80000BE0 +/* 03A1AC 800395AC 24040018 */ li $a0, 24 +/* 03A1B0 800395B0 0C0002CD */ jal func_80000B34 +/* 03A1B4 800395B4 24040020 */ li $a0, 32 +/* 03A1B8 800395B8 8FAA0090 */ lw $t2, 0x90($sp) +/* 03A1BC 800395BC 8FA60084 */ lw $a2, 0x84($sp) +/* 03A1C0 800395C0 11400006 */ beqz $t2, .L800395DC +/* 03A1C4 800395C4 01402025 */ move $a0, $t2 +/* 03A1C8 800395C8 0C001AB2 */ jal func_80006AC8 +/* 03A1CC 800395CC AFA60084 */ sw $a2, 0x84($sp) +/* 03A1D0 800395D0 8FAB0070 */ lw $t3, 0x70($sp) +/* 03A1D4 800395D4 8FA60084 */ lw $a2, 0x84($sp) +/* 03A1D8 800395D8 AD600118 */ sw $zero, 0x118($t3) +.L800395DC: +/* 03A1DC 800395DC 0C002050 */ jal func_80008140 +/* 03A1E0 800395E0 AFA60084 */ sw $a2, 0x84($sp) +/* 03A1E4 800395E4 8FA20090 */ lw $v0, 0x90($sp) +/* 03A1E8 800395E8 C610000C */ lwc1 $f16, 0xc($s0) +/* 03A1EC 800395EC C6120014 */ lwc1 $f18, 0x14($s0) +/* 03A1F0 800395F0 C448000C */ lwc1 $f8, 0xc($v0) +/* 03A1F4 800395F4 C4440014 */ lwc1 $f4, 0x14($v0) +/* 03A1F8 800395F8 46104301 */ sub.s $f12, $f8, $f16 +/* 03A1FC 800395FC 0C01C1D4 */ jal func_80070750 +/* 03A200 80039600 46122381 */ sub.s $f14, $f4, $f18 +/* 03A204 80039604 8FAC0090 */ lw $t4, 0x90($sp) +/* 03A208 80039608 34018001 */ li $at, 32769 +/* 03A20C 8003960C 858D0000 */ lh $t5, ($t4) +/* 03A210 80039610 8FA60084 */ lw $a2, 0x84($sp) +/* 03A214 80039614 31AEFFFF */ andi $t6, $t5, 0xffff +/* 03A218 80039618 004E1823 */ subu $v1, $v0, $t6 +/* 03A21C 8003961C 0061082A */ slt $at, $v1, $at +/* 03A220 80039620 14200001 */ bnez $at, .L80039628 +/* 03A224 80039624 00002025 */ move $a0, $zero +.L80039628: +/* 03A228 80039628 10C00004 */ beqz $a2, .L8003963C +/* 03A22C 8003962C 26250020 */ addiu $a1, $s1, 0x20 +/* 03A230 80039630 240F0001 */ li $t7, 1 +/* 03A234 80039634 10000005 */ b .L8003964C +/* 03A238 80039638 AE0F0078 */ sw $t7, 0x78($s0) +.L8003963C: +/* 03A23C 8003963C 2418000A */ li $t8, 10 +/* 03A240 80039640 AE180078 */ sw $t8, 0x78($s0) +/* 03A244 80039644 24190001 */ li $t9, 1 +/* 03A248 80039648 A3B9006B */ sb $t9, 0x6b($sp) +.L8003964C: +/* 03A24C 8003964C 26280012 */ addiu $t0, $s1, 0x12 +/* 03A250 80039650 26290013 */ addiu $t1, $s1, 0x13 +/* 03A254 80039654 AFA90014 */ sw $t1, 0x14($sp) +/* 03A258 80039658 AFA80010 */ sw $t0, 0x10($sp) +/* 03A25C 8003965C 26260022 */ addiu $a2, $s1, 0x22 +/* 03A260 80039660 0C00C1D4 */ jal func_80030750 +/* 03A264 80039664 26270011 */ addiu $a3, $s1, 0x11 +/* 03A268 80039668 240A03C0 */ li $t2, 960 +/* 03A26C 8003966C 240B044C */ li $t3, 1100 +/* 03A270 80039670 240C00F0 */ li $t4, 240 +/* 03A274 80039674 AFAC0018 */ sw $t4, 0x18($sp) +/* 03A278 80039678 AFAB0014 */ sw $t3, 0x14($sp) +/* 03A27C 8003967C AFAA0010 */ sw $t2, 0x10($sp) +/* 03A280 80039680 00002025 */ move $a0, $zero +/* 03A284 80039684 240500FF */ li $a1, 255 +/* 03A288 80039688 00003025 */ move $a2, $zero +/* 03A28C 8003968C 0C00C378 */ jal func_80030DE0 +/* 03A290 80039690 24070078 */ li $a3, 120 +/* 03A294 80039694 44805000 */ mtc1 $zero, $f10 +/* 03A298 80039698 00000000 */ nop +/* 03A29C 8003969C E62A0004 */ swc1 $f10, 4($s1) +.L800396A0: +/* 03A2A0 800396A0 8E020078 */ lw $v0, 0x78($s0) +/* 03A2A4 800396A4 2401001E */ li $at, 30 +/* 03A2A8 800396A8 1040000E */ beqz $v0, .L800396E4 +/* 03A2AC 800396AC 24070003 */ li $a3, 3 +/* 03A2B0 800396B0 1041000B */ beq $v0, $at, .L800396E0 +/* 03A2B4 800396B4 24010014 */ li $at, 20 +/* 03A2B8 800396B8 10410009 */ beq $v0, $at, .L800396E0 +/* 03A2BC 800396BC 24010015 */ li $at, 21 +/* 03A2C0 800396C0 10410008 */ beq $v0, $at, .L800396E4 +/* 03A2C4 800396C4 24070003 */ li $a3, 3 +/* 03A2C8 800396C8 0C0168EC */ jal func_8005A3B0 +/* 03A2CC 800396CC 00000000 */ nop +/* 03A2D0 800396D0 0C02AC65 */ jal func_800AB194 +/* 03A2D4 800396D4 24040003 */ li $a0, 3 +/* 03A2D8 800396D8 8E020078 */ lw $v0, 0x78($s0) +/* 03A2DC 800396DC 00000000 */ nop +.L800396E0: +/* 03A2E0 800396E0 24070003 */ li $a3, 3 +.L800396E4: +/* 03A2E4 800396E4 10470007 */ beq $v0, $a3, .L80039704 +/* 03A2E8 800396E8 24010004 */ li $at, 4 +/* 03A2EC 800396EC 10410005 */ beq $v0, $at, .L80039704 +/* 03A2F0 800396F0 24010005 */ li $at, 5 +/* 03A2F4 800396F4 10410003 */ beq $v0, $at, .L80039704 +/* 03A2F8 800396F8 24010006 */ li $at, 6 +/* 03A2FC 800396FC 14410006 */ bne $v0, $at, .L80039718 +/* 03A300 80039700 00000000 */ nop +.L80039704: +/* 03A304 80039704 0C0273FB */ jal func_8009CFEC +/* 03A308 80039708 00002025 */ move $a0, $zero +/* 03A30C 8003970C 24070003 */ li $a3, 3 +/* 03A310 80039710 10000005 */ b .L80039728 +/* 03A314 80039714 AFA2007C */ sw $v0, 0x7c($sp) +.L80039718: +/* 03A318 80039718 0C0273DA */ jal func_8009CF68 +/* 03A31C 8003971C 00002025 */ move $a0, $zero +/* 03A320 80039720 24070003 */ li $a3, 3 +/* 03A324 80039724 AFA0007C */ sw $zero, 0x7c($sp) +.L80039728: +/* 03A328 80039728 8E020078 */ lw $v0, 0x78($s0) +/* 03A32C 8003972C 00000000 */ nop +/* 03A330 80039730 244DFFFF */ addiu $t5, $v0, -1 +/* 03A334 80039734 2DA10015 */ sltiu $at, $t5, 0x15 +/* 03A338 80039738 1020000B */ beqz $at, .L80039768 +/* 03A33C 8003973C 000D6880 */ sll $t5, $t5, 2 +/* 03A340 80039740 3C01800E */ lui $at, 0x800e +/* 03A344 80039744 002D0821 */ addu $at, $at, $t5 +/* 03A348 80039748 8C2D6070 */ lw $t5, 0x6070($at) +/* 03A34C 8003974C 00000000 */ nop +/* 03A350 80039750 01A00008 */ jr $t5 +/* 03A354 80039754 00000000 */ nop +/* 03A358 80039758 0C01BCE2 */ jal func_8006F388 +/* 03A35C 8003975C 24040001 */ li $a0, 1 +/* 03A360 80039760 8E020078 */ lw $v0, 0x78($s0) +/* 03A364 80039764 24070003 */ li $a3, 3 +.L80039768: +/* 03A368 80039768 1040000A */ beqz $v0, .L80039794 +/* 03A36C 8003976C 244FFFFF */ addiu $t7, $v0, -1 +/* 03A370 80039770 8FAE007C */ lw $t6, 0x7c($sp) +/* 03A374 80039774 28410004 */ slti $at, $v0, 4 +/* 03A378 80039778 11C00006 */ beqz $t6, .L80039794 +/* 03A37C 8003977C 244FFFFF */ addiu $t7, $v0, -1 +/* 03A380 80039780 10200004 */ beqz $at, .L80039794 +/* 03A384 80039784 244FFFFF */ addiu $t7, $v0, -1 +/* 03A388 80039788 24020004 */ li $v0, 4 +/* 03A38C 8003978C AE020078 */ sw $v0, 0x78($s0) +/* 03A390 80039790 244FFFFF */ addiu $t7, $v0, -1 +.L80039794: +/* 03A394 80039794 2DE1001E */ sltiu $at, $t7, 0x1e +/* 03A398 80039798 10200384 */ beqz $at, .L8003A5AC +/* 03A39C 8003979C 24030004 */ li $v1, 4 +/* 03A3A0 800397A0 000F7880 */ sll $t7, $t7, 2 +/* 03A3A4 800397A4 3C01800E */ lui $at, 0x800e +/* 03A3A8 800397A8 002F0821 */ addu $at, $at, $t7 +/* 03A3AC 800397AC 8C2F60C4 */ lw $t7, 0x60c4($at) +/* 03A3B0 800397B0 00000000 */ nop +/* 03A3B4 800397B4 01E00008 */ jr $t7 +/* 03A3B8 800397B8 00000000 */ nop +/* 03A3BC 800397BC C7A2009C */ lwc1 $f2, 0x9c($sp) +/* 03A3C0 800397C0 3C014059 */ li $at, 0x40590000 # 3.390625 +/* 03A3C4 800397C4 44813800 */ mtc1 $at, $f7 +/* 03A3C8 800397C8 44803000 */ mtc1 $zero, $f6 +/* 03A3CC 800397CC 46001021 */ cvt.d.s $f0, $f2 +/* 03A3D0 800397D0 4626003C */ c.lt.d $f0, $f6 +/* 03A3D4 800397D4 A200003B */ sb $zero, 0x3b($s0) +/* 03A3D8 800397D8 241800FF */ li $t8, 255 +/* 03A3DC 800397DC 45000008 */ bc1f .L80039800 +/* 03A3E0 800397E0 A238000D */ sb $t8, 0xd($s1) +/* 03A3E4 800397E4 E7A10040 */ swc1 $f1, 0x40($sp) +/* 03A3E8 800397E8 0C0168F0 */ jal func_8005A3C0 +/* 03A3EC 800397EC E7A00044 */ swc1 $f0, 0x44($sp) +/* 03A3F0 800397F0 C7A10040 */ lwc1 $f1, 0x40($sp) +/* 03A3F4 800397F4 C7A00044 */ lwc1 $f0, 0x44($sp) +/* 03A3F8 800397F8 C7A2009C */ lwc1 $f2, 0x9c($sp) +/* 03A3FC 800397FC 00000000 */ nop +.L80039800: +/* 03A400 80039800 3C014024 */ li $at, 0x40240000 # 2.562500 +/* 03A404 80039804 44814800 */ mtc1 $at, $f9 +/* 03A408 80039808 44804000 */ mtc1 $zero, $f8 +/* 03A40C 8003980C C7B000A8 */ lwc1 $f16, 0xa8($sp) +/* 03A410 80039810 4620403C */ c.lt.d $f8, $f0 +/* 03A414 80039814 C7A400A0 */ lwc1 $f4, 0xa0($sp) +/* 03A418 80039818 45000046 */ bc1f .L80039934 +/* 03A41C 8003981C 240A0002 */ li $t2, 2 +/* 03A420 80039820 00000000 */ nop +/* 03A424 80039824 46028303 */ div.s $f12, $f16, $f2 +/* 03A428 80039828 0C01C1D4 */ jal func_80070750 +/* 03A42C 8003982C 46022383 */ div.s $f14, $f4, $f2 +/* 03A430 80039830 86050000 */ lh $a1, ($s0) +/* 03A434 80039834 34018000 */ li $at, 32768 +/* 03A438 80039838 30B9FFFF */ andi $t9, $a1, 0xffff +/* 03A43C 8003983C 00591823 */ subu $v1, $v0, $t9 +/* 03A440 80039840 00611821 */ addu $v1, $v1, $at +/* 03A444 80039844 34018001 */ li $at, 32769 +/* 03A448 80039848 0061082A */ slt $at, $v1, $at +/* 03A44C 8003984C 14200003 */ bnez $at, .L8003985C +/* 03A450 80039850 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 03A454 80039854 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 03A458 80039858 00611821 */ addu $v1, $v1, $at +.L8003985C: +/* 03A45C 8003985C 28618000 */ slti $at, $v1, -0x8000 +/* 03A460 80039860 10200002 */ beqz $at, .L8003986C +/* 03A464 80039864 3401FFFF */ li $at, 65535 +/* 03A468 80039868 00611821 */ addu $v1, $v1, $at +.L8003986C: +/* 03A46C 8003986C 18600004 */ blez $v1, .L80039880 +/* 03A470 80039870 28610010 */ slti $at, $v1, 0x10 +/* 03A474 80039874 10200003 */ beqz $at, .L80039884 +/* 03A478 80039878 3C01C000 */ lui $at, 0xc000 +/* 03A47C 8003987C 24030010 */ li $v1, 16 +.L80039880: +/* 03A480 80039880 3C01C000 */ li $at, 0xC0000000 # -2.000000 +.L80039884: +/* 03A484 80039884 00034103 */ sra $t0, $v1, 4 +/* 03A488 80039888 44811000 */ mtc1 $at, $f2 +/* 03A48C 8003988C 00A84821 */ addu $t1, $a1, $t0 +/* 03A490 80039890 28610801 */ slti $at, $v1, 0x801 +/* 03A494 80039894 10200003 */ beqz $at, .L800398A4 +/* 03A498 80039898 A6090000 */ sh $t1, ($s0) +/* 03A49C 8003989C 2861F800 */ slti $at, $v1, -0x800 +/* 03A4A0 800398A0 10200003 */ beqz $at, .L800398B0 +.L800398A4: +/* 03A4A4 800398A4 3C01BF00 */ li $at, 0xBF000000 # -0.500000 +/* 03A4A8 800398A8 44811000 */ mtc1 $at, $f2 +/* 03A4AC 800398AC 00000000 */ nop +.L800398B0: +/* 03A4B0 800398B0 C6200014 */ lwc1 $f0, 0x14($s1) +/* 03A4B4 800398B4 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 03A4B8 800398B8 46001281 */ sub.s $f10, $f2, $f0 +/* 03A4BC 800398BC 44816800 */ mtc1 $at, $f13 +/* 03A4C0 800398C0 44806000 */ mtc1 $zero, $f12 +/* 03A4C4 800398C4 460051A1 */ cvt.d.s $f6, $f10 +/* 03A4C8 800398C8 462C3202 */ mul.d $f8, $f6, $f12 +/* 03A4CC 800398CC 460004A1 */ cvt.d.s $f18, $f0 +/* 03A4D0 800398D0 46289400 */ add.d $f16, $f18, $f8 +/* 03A4D4 800398D4 46208120 */ cvt.s.d $f4, $f16 +/* 03A4D8 800398D8 E6240014 */ swc1 $f4, 0x14($s1) +/* 03A4DC 800398DC 86040000 */ lh $a0, ($s0) +/* 03A4E0 800398E0 0C01C1F1 */ jal func_800707C4 +/* 03A4E4 800398E4 00000000 */ nop +/* 03A4E8 800398E8 C62A0014 */ lwc1 $f10, 0x14($s1) +/* 03A4EC 800398EC 86040000 */ lh $a0, ($s0) +/* 03A4F0 800398F0 460A0182 */ mul.s $f6, $f0, $f10 +/* 03A4F4 800398F4 0C01C1FE */ jal func_800707F8 +/* 03A4F8 800398F8 E606001C */ swc1 $f6, 0x1c($s0) +/* 03A4FC 800398FC C6320014 */ lwc1 $f18, 0x14($s1) +/* 03A500 80039900 C7A200AC */ lwc1 $f2, 0xac($sp) +/* 03A504 80039904 46120202 */ mul.s $f8, $f0, $f18 +/* 03A508 80039908 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 03A50C 8003990C 44812000 */ mtc1 $at, $f4 +/* 03A510 80039910 E6080024 */ swc1 $f8, 0x24($s0) +/* 03A514 80039914 C6300014 */ lwc1 $f16, 0x14($s1) +/* 03A518 80039918 C6320004 */ lwc1 $f18, 4($s1) +/* 03A51C 8003991C 46048282 */ mul.s $f10, $f16, $f4 +/* 03A520 80039920 00000000 */ nop +/* 03A524 80039924 46025182 */ mul.s $f6, $f10, $f2 +/* 03A528 80039928 46069201 */ sub.s $f8, $f18, $f6 +/* 03A52C 8003992C 10000004 */ b .L80039940 +/* 03A530 80039930 E6280004 */ swc1 $f8, 4($s1) +.L80039934: +/* 03A534 80039934 AE0A0078 */ sw $t2, 0x78($s0) +/* 03A538 80039938 C7A200AC */ lwc1 $f2, 0xac($sp) +/* 03A53C 8003993C 00000000 */ nop +.L80039940: +/* 03A540 80039940 C610001C */ lwc1 $f16, 0x1c($s0) +/* 03A544 80039944 C60A0020 */ lwc1 $f10, 0x20($s0) +/* 03A548 80039948 46028102 */ mul.s $f4, $f16, $f2 +/* 03A54C 8003994C C6060024 */ lwc1 $f6, 0x24($s0) +/* 03A550 80039950 02002025 */ move $a0, $s0 +/* 03A554 80039954 46025482 */ mul.s $f18, $f10, $f2 +/* 03A558 80039958 44052000 */ mfc1 $a1, $f4 +/* 03A55C 8003995C 46023202 */ mul.s $f8, $f6, $f2 +/* 03A560 80039960 44069000 */ mfc1 $a2, $f18 +/* 03A564 80039964 44074000 */ mfc1 $a3, $f8 +/* 03A568 80039968 0C00455C */ jal func_80011570 +/* 03A56C 8003996C 00000000 */ nop +/* 03A570 80039970 10000464 */ b .L8003AB04 +/* 03A574 80039974 C7B00098 */ lwc1 $f16, 0x98($sp) +/* 03A578 80039978 0C0168F0 */ jal func_8005A3C0 +/* 03A57C 8003997C 00000000 */ nop +/* 03A580 80039980 C7AE00AC */ lwc1 $f14, 0xac($sp) +/* 03A584 80039984 A200003B */ sb $zero, 0x3b($s0) +/* 03A588 80039988 C6300004 */ lwc1 $f16, 4($s1) +/* 03A58C 8003998C 46007021 */ cvt.d.s $f0, $f14 +/* 03A590 80039990 46200280 */ add.d $f10, $f0, $f0 +/* 03A594 80039994 34018000 */ li $at, 32768 +/* 03A598 80039998 46008121 */ cvt.d.s $f4, $f16 +/* 03A59C 8003999C 462A2480 */ add.d $f18, $f4, $f10 +/* 03A5A0 800399A0 24070003 */ li $a3, 3 +/* 03A5A4 800399A4 462091A0 */ cvt.s.d $f6, $f18 +/* 03A5A8 800399A8 E6260004 */ swc1 $f6, 4($s1) +/* 03A5AC 800399AC 8FAB0090 */ lw $t3, 0x90($sp) +/* 03A5B0 800399B0 86050000 */ lh $a1, ($s0) +/* 03A5B4 800399B4 856C0000 */ lh $t4, ($t3) +/* 03A5B8 800399B8 30ADFFFF */ andi $t5, $a1, 0xffff +/* 03A5BC 800399BC 018D1823 */ subu $v1, $t4, $t5 +/* 03A5C0 800399C0 00611821 */ addu $v1, $v1, $at +/* 03A5C4 800399C4 34018001 */ li $at, 32769 +/* 03A5C8 800399C8 0061082A */ slt $at, $v1, $at +/* 03A5CC 800399CC 14200003 */ bnez $at, .L800399DC +/* 03A5D0 800399D0 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 03A5D4 800399D4 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 03A5D8 800399D8 00611821 */ addu $v1, $v1, $at +.L800399DC: +/* 03A5DC 800399DC 28618000 */ slti $at, $v1, -0x8000 +/* 03A5E0 800399E0 10200002 */ beqz $at, .L800399EC +/* 03A5E4 800399E4 3401FFFF */ li $at, 65535 +/* 03A5E8 800399E8 00611821 */ addu $v1, $v1, $at +.L800399EC: +/* 03A5EC 800399EC 18600004 */ blez $v1, .L80039A00 +/* 03A5F0 800399F0 28610010 */ slti $at, $v1, 0x10 +/* 03A5F4 800399F4 10200003 */ beqz $at, .L80039A04 +/* 03A5F8 800399F8 000370C3 */ sra $t6, $v1, 3 +/* 03A5FC 800399FC 24030010 */ li $v1, 16 +.L80039A00: +/* 03A600 80039A00 000370C3 */ sra $t6, $v1, 3 +.L80039A04: +/* 03A604 80039A04 00AE7821 */ addu $t7, $a1, $t6 +/* 03A608 80039A08 28610400 */ slti $at, $v1, 0x400 +/* 03A60C 80039A0C 10200017 */ beqz $at, .L80039A6C +/* 03A610 80039A10 A60F0000 */ sh $t7, ($s0) +/* 03A614 80039A14 2861FC01 */ slti $at, $v1, -0x3ff +/* 03A618 80039A18 14200014 */ bnez $at, .L80039A6C +/* 03A61C 80039A1C 00000000 */ nop +/* 03A620 80039A20 C7A8009C */ lwc1 $f8, 0x9c($sp) +/* 03A624 80039A24 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 03A628 80039A28 44812800 */ mtc1 $at, $f5 +/* 03A62C 80039A2C 44802000 */ mtc1 $zero, $f4 +/* 03A630 80039A30 46004421 */ cvt.d.s $f16, $f8 +/* 03A634 80039A34 4624803C */ c.lt.d $f16, $f4 +/* 03A638 80039A38 3C048012 */ lui $a0, %hi(D_8011D4E2) # $a0, 0x8012 +/* 03A63C 80039A3C 4500000B */ bc1f .L80039A6C +/* 03A640 80039A40 00000000 */ nop +/* 03A644 80039A44 44805000 */ mtc1 $zero, $f10 +/* 03A648 80039A48 AE070078 */ sw $a3, 0x78($s0) +/* 03A64C 80039A4C E62A0004 */ swc1 $f10, 4($s1) +/* 03A650 80039A50 9484D4E2 */ lhu $a0, %lo(D_8011D4E2)($a0) +/* 03A654 80039A54 0C00EB0F */ jal func_8003AC3C +/* 03A658 80039A58 24050001 */ li $a1, 1 +/* 03A65C 80039A5C 2418010F */ li $t8, 271 +/* 03A660 80039A60 3C018012 */ lui $at, %hi(D_8011D4E2) # $at, 0x8012 +/* 03A664 80039A64 C7AE00AC */ lwc1 $f14, 0xac($sp) +/* 03A668 80039A68 A438D4E2 */ sh $t8, %lo(D_8011D4E2)($at) +.L80039A6C: +/* 03A66C 80039A6C C7B200A8 */ lwc1 $f18, 0xa8($sp) +/* 03A670 80039A70 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 03A674 80039A74 44816800 */ mtc1 $at, $f13 +/* 03A678 80039A78 44806000 */ mtc1 $zero, $f12 +/* 03A67C 80039A7C 460091A1 */ cvt.d.s $f6, $f18 +/* 03A680 80039A80 462C3202 */ mul.d $f8, $f6, $f12 +/* 03A684 80039A84 44808000 */ mtc1 $zero, $f16 +/* 03A688 80039A88 02002025 */ move $a0, $s0 +/* 03A68C 80039A8C E6100020 */ swc1 $f16, 0x20($s0) +/* 03A690 80039A90 46204020 */ cvt.s.d $f0, $f8 +/* 03A694 80039A94 44804000 */ mtc1 $zero, $f8 +/* 03A698 80039A98 E600001C */ swc1 $f0, 0x1c($s0) +/* 03A69C 80039A9C C7A400A0 */ lwc1 $f4, 0xa0($sp) +/* 03A6A0 80039AA0 00000000 */ nop +/* 03A6A4 80039AA4 460022A1 */ cvt.d.s $f10, $f4 +/* 03A6A8 80039AA8 462C5482 */ mul.d $f18, $f10, $f12 +/* 03A6AC 80039AAC 00000000 */ nop +/* 03A6B0 80039AB0 460E0182 */ mul.s $f6, $f0, $f14 +/* 03A6B4 80039AB4 462090A0 */ cvt.s.d $f2, $f18 +/* 03A6B8 80039AB8 E6020024 */ swc1 $f2, 0x24($s0) +/* 03A6BC 80039ABC 460E4402 */ mul.s $f16, $f8, $f14 +/* 03A6C0 80039AC0 44053000 */ mfc1 $a1, $f6 +/* 03A6C4 80039AC4 460E1102 */ mul.s $f4, $f2, $f14 +/* 03A6C8 80039AC8 44068000 */ mfc1 $a2, $f16 +/* 03A6CC 80039ACC 44072000 */ mfc1 $a3, $f4 +/* 03A6D0 80039AD0 0C00455C */ jal func_80011570 +/* 03A6D4 80039AD4 00000000 */ nop +/* 03A6D8 80039AD8 1000040A */ b .L8003AB04 +/* 03A6DC 80039ADC C7B00098 */ lwc1 $f16, 0x98($sp) +/* 03A6E0 80039AE0 24190001 */ li $t9, 1 +/* 03A6E4 80039AE4 44805000 */ mtc1 $zero, $f10 +/* 03A6E8 80039AE8 A219003B */ sb $t9, 0x3b($s0) +/* 03A6EC 80039AEC E62A0014 */ swc1 $f10, 0x14($s1) +/* 03A6F0 80039AF0 C7A800AC */ lwc1 $f8, 0xac($sp) +/* 03A6F4 80039AF4 C6320004 */ lwc1 $f18, 4($s1) +/* 03A6F8 80039AF8 46004421 */ cvt.d.s $f16, $f8 +/* 03A6FC 80039AFC 460091A1 */ cvt.d.s $f6, $f18 +/* 03A700 80039B00 46303100 */ add.d $f4, $f6, $f16 +/* 03A704 80039B04 3C01800E */ lui $at, %hi(D_800E6140) # $at, 0x800e +/* 03A708 80039B08 462022A0 */ cvt.s.d $f10, $f4 +/* 03A70C 80039B0C E62A0004 */ swc1 $f10, 4($s1) +/* 03A710 80039B10 C6280004 */ lwc1 $f8, 4($s1) +/* 03A714 80039B14 C4326144 */ lwc1 $f18, %lo(D_800E6144)($at) +/* 03A718 80039B18 C4336140 */ lwc1 $f19, %lo(D_800E6140)($at) +/* 03A71C 80039B1C 460041A1 */ cvt.d.s $f6, $f8 +/* 03A720 80039B20 4626903C */ c.lt.d $f18, $f6 +/* 03A724 80039B24 3C01429A */ li $at, 0x429A0000 # 77.000000 +/* 03A728 80039B28 45000008 */ bc1f .L80039B4C +/* 03A72C 80039B2C 8FA80090 */ lw $t0, 0x90($sp) +/* 03A730 80039B30 44818000 */ mtc1 $at, $f16 +/* 03A734 80039B34 3C01BF80 */ li $at, 0xBF800000 # -1.000000 +/* 03A738 80039B38 44812000 */ mtc1 $at, $f4 +/* 03A73C 80039B3C E6300004 */ swc1 $f16, 4($s1) +/* 03A740 80039B40 E6240018 */ swc1 $f4, 0x18($s1) +/* 03A744 80039B44 AE030078 */ sw $v1, 0x78($s0) +/* 03A748 80039B48 8FA80090 */ lw $t0, 0x90($sp) +.L80039B4C: +/* 03A74C 80039B4C 86050000 */ lh $a1, ($s0) +/* 03A750 80039B50 85090000 */ lh $t1, ($t0) +/* 03A754 80039B54 30AAFFFF */ andi $t2, $a1, 0xffff +/* 03A758 80039B58 34018000 */ li $at, 32768 +/* 03A75C 80039B5C 012A1823 */ subu $v1, $t1, $t2 +/* 03A760 80039B60 00611821 */ addu $v1, $v1, $at +/* 03A764 80039B64 34018001 */ li $at, 32769 +/* 03A768 80039B68 0061082A */ slt $at, $v1, $at +/* 03A76C 80039B6C 14200003 */ bnez $at, .L80039B7C +/* 03A770 80039B70 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 03A774 80039B74 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 03A778 80039B78 00611821 */ addu $v1, $v1, $at +.L80039B7C: +/* 03A77C 80039B7C 28618000 */ slti $at, $v1, -0x8000 +/* 03A780 80039B80 10200002 */ beqz $at, .L80039B8C +/* 03A784 80039B84 3401FFFF */ li $at, 65535 +/* 03A788 80039B88 00611821 */ addu $v1, $v1, $at +.L80039B8C: +/* 03A78C 80039B8C 18600004 */ blez $v1, .L80039BA0 +/* 03A790 80039B90 28610010 */ slti $at, $v1, 0x10 +/* 03A794 80039B94 10200003 */ beqz $at, .L80039BA4 +/* 03A798 80039B98 00035903 */ sra $t3, $v1, 4 +/* 03A79C 80039B9C 24030010 */ li $v1, 16 +.L80039BA0: +/* 03A7A0 80039BA0 00035903 */ sra $t3, $v1, 4 +.L80039BA4: +/* 03A7A4 80039BA4 00AB6021 */ addu $t4, $a1, $t3 +/* 03A7A8 80039BA8 0C0168F0 */ jal func_8005A3C0 +/* 03A7AC 80039BAC A60C0000 */ sh $t4, ($s0) +/* 03A7B0 80039BB0 100003D4 */ b .L8003AB04 +/* 03A7B4 80039BB4 C7B00098 */ lwc1 $f16, 0x98($sp) +/* 03A7B8 80039BB8 A203003B */ sb $v1, 0x3b($s0) +/* 03A7BC 80039BBC C62A0004 */ lwc1 $f10, 4($s1) +/* 03A7C0 80039BC0 C7B200AC */ lwc1 $f18, 0xac($sp) +/* 03A7C4 80039BC4 46005221 */ cvt.d.s $f8, $f10 +/* 03A7C8 80039BC8 460091A1 */ cvt.d.s $f6, $f18 +/* 03A7CC 80039BCC 46264400 */ add.d $f16, $f8, $f6 +/* 03A7D0 80039BD0 46208120 */ cvt.s.d $f4, $f16 +/* 03A7D4 80039BD4 0C0168F0 */ jal func_8005A3C0 +/* 03A7D8 80039BD8 E6240004 */ swc1 $f4, 4($s1) +/* 03A7DC 80039BDC 8FA6007C */ lw $a2, 0x7c($sp) +/* 03A7E0 80039BE0 24070003 */ li $a3, 3 +/* 03A7E4 80039BE4 10C70002 */ beq $a2, $a3, .L80039BF0 +/* 03A7E8 80039BE8 24010004 */ li $at, 4 +/* 03A7EC 80039BEC 14C1002E */ bne $a2, $at, .L80039CA8 +.L80039BF0: +/* 03A7F0 80039BF0 24010004 */ li $at, 4 +/* 03A7F4 80039BF4 14C10004 */ bne $a2, $at, .L80039C08 +/* 03A7F8 80039BF8 240F0002 */ li $t7, 2 +/* 03A7FC 80039BFC 240D0008 */ li $t5, 8 +/* 03A800 80039C00 10000003 */ b .L80039C10 +/* 03A804 80039C04 AE0D0078 */ sw $t5, 0x78($s0) +.L80039C08: +/* 03A808 80039C08 240E0007 */ li $t6, 7 +/* 03A80C 80039C0C AE0E0078 */ sw $t6, 0x78($s0) +.L80039C10: +/* 03A810 80039C10 3C01800E */ li $at, 0x800E0000 # -0.000000 +/* 03A814 80039C14 C42A6148 */ lwc1 $f10, %lo(D_800E6148)($at) +/* 03A818 80039C18 24040111 */ li $a0, 273 +/* 03A81C 80039C1C E62A0004 */ swc1 $f10, 4($s1) +/* 03A820 80039C20 A20F003B */ sb $t7, 0x3b($s0) +/* 03A824 80039C24 A620001C */ sh $zero, 0x1c($s1) +/* 03A828 80039C28 0C00EB0F */ jal func_8003AC3C +/* 03A82C 80039C2C 24050001 */ li $a1, 1 +/* 03A830 80039C30 86380020 */ lh $t8, 0x20($s1) +/* 03A834 80039C34 92250011 */ lbu $a1, 0x11($s1) +/* 03A838 80039C38 92260012 */ lbu $a2, 0x12($s1) +/* 03A83C 80039C3C 92270013 */ lbu $a3, 0x13($s1) +/* 03A840 80039C40 AFB80010 */ sw $t8, 0x10($sp) +/* 03A844 80039C44 86390022 */ lh $t9, 0x22($s1) +/* 03A848 80039C48 240800B4 */ li $t0, 180 +/* 03A84C 80039C4C AFA80018 */ sw $t0, 0x18($sp) +/* 03A850 80039C50 00002025 */ move $a0, $zero +/* 03A854 80039C54 0C00C378 */ jal func_80030DE0 +/* 03A858 80039C58 AFB90014 */ sw $t9, 0x14($sp) +/* 03A85C 80039C5C 8FA90064 */ lw $t1, 0x64($sp) +/* 03A860 80039C60 00000000 */ nop +/* 03A864 80039C64 912400B3 */ lbu $a0, 0xb3($t1) +/* 03A868 80039C68 0C0002F8 */ jal func_80000BE0 +/* 03A86C 80039C6C 00000000 */ nop +/* 03A870 80039C70 8FAA0064 */ lw $t2, 0x64($sp) +/* 03A874 80039C74 00000000 */ nop +/* 03A878 80039C78 91440052 */ lbu $a0, 0x52($t2) +/* 03A87C 80039C7C 0C0002CD */ jal func_80000B34 +/* 03A880 80039C80 00000000 */ nop +/* 03A884 80039C84 8FAB0064 */ lw $t3, 0x64($sp) +/* 03A888 80039C88 00000000 */ nop +/* 03A88C 80039C8C 95640054 */ lhu $a0, 0x54($t3) +/* 03A890 80039C90 0C00041D */ jal func_80001074 +/* 03A894 80039C94 00000000 */ nop +/* 03A898 80039C98 0C00205A */ jal func_80008168 +/* 03A89C 80039C9C 00000000 */ nop +/* 03A8A0 80039CA0 8FA6007C */ lw $a2, 0x7c($sp) +/* 03A8A4 80039CA4 00000000 */ nop +.L80039CA8: +/* 03A8A8 80039CA8 30CC0080 */ andi $t4, $a2, 0x80 +/* 03A8AC 80039CAC 1180001C */ beqz $t4, .L80039D20 +/* 03A8B0 80039CB0 3C038012 */ lui $v1, %hi(D_8011D4E0) # $v1, 0x8012 +/* 03A8B4 80039CB4 2463D4E0 */ addiu $v1, %lo(D_8011D4E0) # addiu $v1, $v1, -0x2b20 +/* 03A8B8 80039CB8 30CD007F */ andi $t5, $a2, 0x7f +/* 03A8BC 80039CBC 8FAE0070 */ lw $t6, 0x70($sp) +/* 03A8C0 80039CC0 A06D0000 */ sb $t5, ($v1) +/* 03A8C4 80039CC4 80780000 */ lb $t8, ($v1) +/* 03A8C8 80039CC8 81CF01D6 */ lb $t7, 0x1d6($t6) +/* 03A8CC 80039CCC 24190005 */ li $t9, 5 +/* 03A8D0 80039CD0 11F8000F */ beq $t7, $t8, .L80039D10 +/* 03A8D4 80039CD4 24040062 */ li $a0, 98 +/* 03A8D8 80039CD8 44809000 */ mtc1 $zero, $f18 +/* 03A8DC 80039CDC AE190078 */ sw $t9, 0x78($s0) +/* 03A8E0 80039CE0 E6320004 */ swc1 $f18, 4($s1) +/* 03A8E4 80039CE4 8FA80070 */ lw $t0, 0x70($sp) +/* 03A8E8 80039CE8 24050001 */ li $a1, 1 +/* 03A8EC 80039CEC 810401D6 */ lb $a0, 0x1d6($t0) +/* 03A8F0 80039CF0 00000000 */ nop +/* 03A8F4 80039CF4 24840235 */ addiu $a0, $a0, 0x235 +/* 03A8F8 80039CF8 3089FFFF */ andi $t1, $a0, 0xffff +/* 03A8FC 80039CFC 0C00EB0F */ jal func_8003AC3C +/* 03A900 80039D00 01202025 */ move $a0, $t1 +/* 03A904 80039D04 8FA6007C */ lw $a2, 0x7c($sp) +/* 03A908 80039D08 10000005 */ b .L80039D20 +/* 03A90C 80039D0C 00000000 */ nop +.L80039D10: +/* 03A910 80039D10 0C0274CF */ jal func_8009D33C +/* 03A914 80039D14 24050002 */ li $a1, 2 +/* 03A918 80039D18 8FA6007C */ lw $a2, 0x7c($sp) +/* 03A91C 80039D1C 00000000 */ nop +.L80039D20: +/* 03A920 80039D20 3C038012 */ lui $v1, %hi(D_8011D4E0) # $v1, 0x8012 +/* 03A924 80039D24 30CA0040 */ andi $t2, $a2, 0x40 +/* 03A928 80039D28 11400024 */ beqz $t2, .L80039DBC +/* 03A92C 80039D2C 2463D4E0 */ addiu $v1, %lo(D_8011D4E0) # addiu $v1, $v1, -0x2b20 +/* 03A930 80039D30 30CB000F */ andi $t3, $a2, 0xf +/* 03A934 80039D34 8FAC0070 */ lw $t4, 0x70($sp) +/* 03A938 80039D38 A06B0000 */ sb $t3, ($v1) +/* 03A93C 80039D3C 80620000 */ lb $v0, ($v1) +/* 03A940 80039D40 818D01D6 */ lb $t5, 0x1d6($t4) +/* 03A944 80039D44 2408000F */ li $t0, 15 +/* 03A948 80039D48 11A20011 */ beq $t5, $v0, .L80039D90 +/* 03A94C 80039D4C 3C04800E */ lui $a0, %hi(D_800E0235) # $a0, 0x800e +/* 03A950 80039D50 344E0080 */ ori $t6, $v0, 0x80 +/* 03A954 80039D54 44804000 */ mtc1 $zero, $f8 +/* 03A958 80039D58 A06E0000 */ sb $t6, ($v1) +/* 03A95C 80039D5C 240F0005 */ li $t7, 5 +/* 03A960 80039D60 AE0F0078 */ sw $t7, 0x78($s0) +/* 03A964 80039D64 E6280004 */ swc1 $f8, 4($s1) +/* 03A968 80039D68 8FB80070 */ lw $t8, 0x70($sp) +/* 03A96C 80039D6C 24050001 */ li $a1, 1 +/* 03A970 80039D70 830401D6 */ lb $a0, 0x1d6($t8) +/* 03A974 80039D74 00000000 */ nop +/* 03A978 80039D78 24840235 */ addiu $a0, %lo(D_800E0235) # addiu $a0, $a0, 0x235 +/* 03A97C 80039D7C 3099FFFF */ andi $t9, $a0, 0xffff +/* 03A980 80039D80 0C00EB0F */ jal func_8003AC3C +/* 03A984 80039D84 03202025 */ move $a0, $t9 +/* 03A988 80039D88 1000035E */ b .L8003AB04 +/* 03A98C 80039D8C C7B00098 */ lwc1 $f16, 0x98($sp) +.L80039D90: +/* 03A990 80039D90 AE080078 */ sw $t0, 0x78($s0) +/* 03A994 80039D94 24090001 */ li $t1, 1 +/* 03A998 80039D98 A3A9006B */ sb $t1, 0x6b($sp) +/* 03A99C 80039D9C 0C030076 */ jal func_800C01D8 +/* 03A9A0 80039DA0 2484C978 */ addiu $a0, $a0, -0x3688 +/* 03A9A4 80039DA4 24040110 */ li $a0, 272 +/* 03A9A8 80039DA8 0C00EB0F */ jal func_8003AC3C +/* 03A9AC 80039DAC 24050001 */ li $a1, 1 +/* 03A9B0 80039DB0 44803000 */ mtc1 $zero, $f6 +/* 03A9B4 80039DB4 00000000 */ nop +/* 03A9B8 80039DB8 E6260004 */ swc1 $f6, 4($s1) +.L80039DBC: +/* 03A9BC 80039DBC 10000351 */ b .L8003AB04 +/* 03A9C0 80039DC0 C7B00098 */ lwc1 $f16, 0x98($sp) +/* 03A9C4 80039DC4 240A0005 */ li $t2, 5 +/* 03A9C8 80039DC8 0C0168F0 */ jal func_8005A3C0 +/* 03A9CC 80039DCC A20A003B */ sb $t2, 0x3b($s0) +/* 03A9D0 80039DD0 C7B000AC */ lwc1 $f16, 0xac($sp) +/* 03A9D4 80039DD4 C6240004 */ lwc1 $f4, 4($s1) +/* 03A9D8 80039DD8 46008021 */ cvt.d.s $f0, $f16 +/* 03A9DC 80039DDC 46200480 */ add.d $f18, $f0, $f0 +/* 03A9E0 80039DE0 3C014039 */ li $at, 0x40390000 # 2.890625 +/* 03A9E4 80039DE4 460022A1 */ cvt.d.s $f10, $f4 +/* 03A9E8 80039DE8 46325200 */ add.d $f8, $f10, $f18 +/* 03A9EC 80039DEC 44802000 */ mtc1 $zero, $f4 +/* 03A9F0 80039DF0 462041A0 */ cvt.s.d $f6, $f8 +/* 03A9F4 80039DF4 44812800 */ mtc1 $at, $f5 +/* 03A9F8 80039DF8 E6260004 */ swc1 $f6, 4($s1) +/* 03A9FC 80039DFC C6300004 */ lwc1 $f16, 4($s1) +/* 03AA00 80039E00 3C014049 */ li $at, 0x40490000 # 3.140625 +/* 03AA04 80039E04 460080A1 */ cvt.d.s $f2, $f16 +/* 03AA08 80039E08 4622203C */ c.lt.d $f4, $f2 +/* 03AA0C 80039E0C 44819800 */ mtc1 $at, $f19 +/* 03AA10 80039E10 44809000 */ mtc1 $zero, $f18 +/* 03AA14 80039E14 45000006 */ bc1f .L80039E30 +/* 03AA18 80039E18 3C01404E */ li $at, 0x404E0000 # 3.218750 +/* 03AA1C 80039E1C 240B000B */ li $t3, 11 +/* 03AA20 80039E20 AE0B0074 */ sw $t3, 0x74($s0) +/* 03AA24 80039E24 C62A0004 */ lwc1 $f10, 4($s1) +/* 03AA28 80039E28 00000000 */ nop +/* 03AA2C 80039E2C 460050A1 */ cvt.d.s $f2, $f10 +.L80039E30: +/* 03AA30 80039E30 4622903C */ c.lt.d $f18, $f2 +/* 03AA34 80039E34 44813800 */ mtc1 $at, $f7 +/* 03AA38 80039E38 44803000 */ mtc1 $zero, $f6 +/* 03AA3C 80039E3C 45000005 */ bc1f .L80039E54 +/* 03AA40 80039E40 3C014270 */ li $at, 0x42700000 # 60.000000 +/* 03AA44 80039E44 AE000074 */ sw $zero, 0x74($s0) +/* 03AA48 80039E48 C6280004 */ lwc1 $f8, 4($s1) +/* 03AA4C 80039E4C 00000000 */ nop +/* 03AA50 80039E50 460040A1 */ cvt.d.s $f2, $f8 +.L80039E54: +/* 03AA54 80039E54 4622303C */ c.lt.d $f6, $f2 +/* 03AA58 80039E58 00000000 */ nop +/* 03AA5C 80039E5C 4500001C */ bc1f .L80039ED0 +/* 03AA60 80039E60 00000000 */ nop +/* 03AA64 80039E64 44818000 */ mtc1 $at, $f16 +/* 03AA68 80039E68 8FA60070 */ lw $a2, 0x70($sp) +/* 03AA6C 80039E6C E6300004 */ swc1 $f16, 4($s1) +/* 03AA70 80039E70 8FA300B4 */ lw $v1, 0xb4($sp) +/* 03AA74 80039E74 90C201F7 */ lbu $v0, 0x1f7($a2) +/* 03AA78 80039E78 00036100 */ sll $t4, $v1, 4 +/* 03AA7C 80039E7C 0182082A */ slt $at, $t4, $v0 +/* 03AA80 80039E80 10200004 */ beqz $at, .L80039E94 +/* 03AA84 80039E84 3C038012 */ lui $v1, %hi(D_8011D4E0) # $v1, 0x8012 +/* 03AA88 80039E88 004C6823 */ subu $t5, $v0, $t4 +/* 03AA8C 80039E8C 1000031C */ b .L8003AB00 +/* 03AA90 80039E90 A0CD01F7 */ sb $t5, 0x1f7($a2) +.L80039E94: +/* 03AA94 80039E94 2463D4E0 */ addiu $v1, %lo(D_8011D4E0) # addiu $v1, $v1, -0x2b20 +/* 03AA98 80039E98 A0C001F7 */ sb $zero, 0x1f7($a2) +/* 03AA9C 80039E9C 80650000 */ lb $a1, ($v1) +/* 03AAA0 80039EA0 8FA40090 */ lw $a0, 0x90($sp) +/* 03AAA4 80039EA4 30AE000F */ andi $t6, $a1, 0xf +/* 03AAA8 80039EA8 0C00387B */ jal func_8000E1EC +/* 03AAAC 80039EAC 01C02825 */ move $a1, $t6 +/* 03AAB0 80039EB0 240F0006 */ li $t7, 6 +/* 03AAB4 80039EB4 AE0F0078 */ sw $t7, 0x78($s0) +/* 03AAB8 80039EB8 24040113 */ li $a0, 275 +/* 03AABC 80039EBC 0C000741 */ jal func_80001D04 +/* 03AAC0 80039EC0 00002825 */ move $a1, $zero +/* 03AAC4 80039EC4 3C04800E */ lui $a0, %hi(D_800DC970) # $a0, 0x800e +/* 03AAC8 80039EC8 0C030076 */ jal func_800C01D8 +/* 03AACC 80039ECC 2484C970 */ addiu $a0, %lo(D_800DC970) # addiu $a0, $a0, -0x3690 +.L80039ED0: +/* 03AAD0 80039ED0 1000030C */ b .L8003AB04 +/* 03AAD4 80039ED4 C7B00098 */ lwc1 $f16, 0x98($sp) +/* 03AAD8 80039ED8 0C0168F0 */ jal func_8005A3C0 +/* 03AADC 80039EDC 00000000 */ nop +/* 03AAE0 80039EE0 8FB80090 */ lw $t8, 0x90($sp) +/* 03AAE4 80039EE4 240900FF */ li $t1, 255 +/* 03AAE8 80039EE8 1300003A */ beqz $t8, .L80039FD4 +/* 03AAEC 80039EEC 00000000 */ nop +/* 03AAF0 80039EF0 C62C0004 */ lwc1 $f12, 4($s1) +/* 03AAF4 80039EF4 44802000 */ mtc1 $zero, $f4 +/* 03AAF8 80039EF8 3C014020 */ li $at, 0x40200000 # 2.500000 +/* 03AAFC 80039EFC 460C2032 */ c.eq.s $f4, $f12 +/* 03AB00 80039F00 240C00FF */ li $t4, 255 +/* 03AB04 80039F04 45010008 */ bc1t .L80039F28 +/* 03AB08 80039F08 8FA600B4 */ lw $a2, 0xb4($sp) +/* 03AB0C 80039F0C 44819800 */ mtc1 $at, $f19 +/* 03AB10 80039F10 44809000 */ mtc1 $zero, $f18 +/* 03AB14 80039F14 460062A1 */ cvt.d.s $f10, $f12 +/* 03AB18 80039F18 46325200 */ add.d $f8, $f10, $f18 +/* 03AB1C 80039F1C 462041A0 */ cvt.s.d $f6, $f8 +/* 03AB20 80039F20 E6260004 */ swc1 $f6, 4($s1) +/* 03AB24 80039F24 8FA600B4 */ lw $a2, 0xb4($sp) +.L80039F28: +/* 03AB28 80039F28 8FA30070 */ lw $v1, 0x70($sp) +/* 03AB2C 80039F2C 28C10005 */ slti $at, $a2, 5 +/* 03AB30 80039F30 14200002 */ bnez $at, .L80039F3C +/* 03AB34 80039F34 00000000 */ nop +/* 03AB38 80039F38 24060004 */ li $a2, 4 +.L80039F3C: +/* 03AB3C 80039F3C 906201F7 */ lbu $v0, 0x1f7($v1) +/* 03AB40 80039F40 00064140 */ sll $t0, $a2, 5 +/* 03AB44 80039F44 01285023 */ subu $t2, $t1, $t0 +/* 03AB48 80039F48 004A082A */ slt $at, $v0, $t2 +/* 03AB4C 80039F4C 10200003 */ beqz $at, .L80039F5C +/* 03AB50 80039F50 00485821 */ addu $t3, $v0, $t0 +/* 03AB54 80039F54 100002EA */ b .L8003AB00 +/* 03AB58 80039F58 A06B01F7 */ sb $t3, 0x1f7($v1) +.L80039F5C: +/* 03AB5C 80039F5C A06C01F7 */ sb $t4, 0x1f7($v1) +/* 03AB60 80039F60 C6300004 */ lwc1 $f16, 4($s1) +/* 03AB64 80039F64 44800800 */ mtc1 $zero, $f1 +/* 03AB68 80039F68 44800000 */ mtc1 $zero, $f0 +/* 03AB6C 80039F6C 46008121 */ cvt.d.s $f4, $f16 +/* 03AB70 80039F70 46240032 */ c.eq.d $f0, $f4 +/* 03AB74 80039F74 3C038012 */ lui $v1, %hi(D_8011D4E0) # $v1, 0x8012 +/* 03AB78 80039F78 45000016 */ bc1f .L80039FD4 +/* 03AB7C 80039F7C 2463D4E0 */ addiu $v1, %lo(D_8011D4E0) # addiu $v1, $v1, -0x2b20 +/* 03AB80 80039F80 806D0000 */ lb $t5, ($v1) +/* 03AB84 80039F84 24190004 */ li $t9, 4 +/* 03AB88 80039F88 31AE0080 */ andi $t6, $t5, 0x80 +/* 03AB8C 80039F8C 11C0000E */ beqz $t6, .L80039FC8 +/* 03AB90 80039F90 24040062 */ li $a0, 98 +/* 03AB94 80039F94 3C04800E */ lui $a0, %hi(D_800DC978) # $a0, 0x800e +/* 03AB98 80039F98 240F0001 */ li $t7, 1 +/* 03AB9C 80039F9C A3AF006B */ sb $t7, 0x6b($sp) +/* 03ABA0 80039FA0 0C030076 */ jal func_800C01D8 +/* 03ABA4 80039FA4 2484C978 */ addiu $a0, %lo(D_800DC978) # addiu $a0, $a0, -0x3688 +/* 03ABA8 80039FA8 2418000F */ li $t8, 15 +/* 03ABAC 80039FAC AE180078 */ sw $t8, 0x78($s0) +/* 03ABB0 80039FB0 24040110 */ li $a0, 272 +/* 03ABB4 80039FB4 0C000741 */ jal func_80001D04 +/* 03ABB8 80039FB8 00002825 */ move $a1, $zero +/* 03ABBC 80039FBC 44805000 */ mtc1 $zero, $f10 +/* 03ABC0 80039FC0 100002CF */ b .L8003AB00 +/* 03ABC4 80039FC4 E62A0004 */ swc1 $f10, 4($s1) +.L80039FC8: +/* 03ABC8 80039FC8 AE190078 */ sw $t9, 0x78($s0) +/* 03ABCC 80039FCC 0C0274CF */ jal func_8009D33C +/* 03ABD0 80039FD0 24050002 */ li $a1, 2 +.L80039FD4: +/* 03ABD4 80039FD4 100002CB */ b .L8003AB04 +/* 03ABD8 80039FD8 C7B00098 */ lwc1 $f16, 0x98($sp) +/* 03ABDC 80039FDC C62C0004 */ lwc1 $f12, 4($s1) +/* 03ABE0 80039FE0 44800800 */ mtc1 $zero, $f1 +/* 03ABE4 80039FE4 44800000 */ mtc1 $zero, $f0 +/* 03ABE8 80039FE8 460060A1 */ cvt.d.s $f2, $f12 +/* 03ABEC 80039FEC 46220032 */ c.eq.d $f0, $f2 +/* 03ABF0 80039FF0 C7A800AC */ lwc1 $f8, 0xac($sp) +/* 03ABF4 80039FF4 4501000A */ bc1t .L8003A020 +/* 03ABF8 80039FF8 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 03ABFC 80039FFC 44819800 */ mtc1 $at, $f19 +/* 03AC00 8003A000 44809000 */ mtc1 $zero, $f18 +/* 03AC04 8003A004 460041A1 */ cvt.d.s $f6, $f8 +/* 03AC08 8003A008 46269402 */ mul.d $f16, $f18, $f6 +/* 03AC0C 8003A00C 46301100 */ add.d $f4, $f2, $f16 +/* 03AC10 8003A010 462022A0 */ cvt.s.d $f10, $f4 +/* 03AC14 8003A014 E62A0004 */ swc1 $f10, 4($s1) +/* 03AC18 8003A018 C62C0004 */ lwc1 $f12, 4($s1) +/* 03AC1C 8003A01C 00000000 */ nop +.L8003A020: +/* 03AC20 8003A020 44804000 */ mtc1 $zero, $f8 +/* 03AC24 8003A024 24080001 */ li $t0, 1 +/* 03AC28 8003A028 460C4032 */ c.eq.s $f8, $f12 +/* 03AC2C 8003A02C 00000000 */ nop +/* 03AC30 8003A030 450002B3 */ bc1f .L8003AB00 +/* 03AC34 8003A034 00000000 */ nop +/* 03AC38 8003A038 A3A8006B */ sb $t0, 0x6b($sp) +/* 03AC3C 8003A03C 8E090078 */ lw $t1, 0x78($s0) +/* 03AC40 8003A040 24010008 */ li $at, 8 +/* 03AC44 8003A044 15210014 */ bne $t1, $at, .L8003A098 +/* 03AC48 8003A048 240A0014 */ li $t2, 20 +/* 03AC4C 8003A04C 8FA20070 */ lw $v0, 0x70($sp) +/* 03AC50 8003A050 3C014248 */ li $at, 0x42480000 # 50.000000 +/* 03AC54 8003A054 44813000 */ mtc1 $at, $f6 +/* 03AC58 8003A058 C4520038 */ lwc1 $f18, 0x38($v0) +/* 03AC5C 8003A05C C4480040 */ lwc1 $f8, 0x40($v0) +/* 03AC60 8003A060 46069402 */ mul.s $f16, $f18, $f6 +/* 03AC64 8003A064 44819000 */ mtc1 $at, $f18 +/* 03AC68 8003A068 C604000C */ lwc1 $f4, 0xc($s0) +/* 03AC6C 8003A06C 8604002E */ lh $a0, 0x2e($s0) +/* 03AC70 8003A070 46124182 */ mul.s $f6, $f8, $f18 +/* 03AC74 8003A074 46102281 */ sub.s $f10, $f4, $f16 +/* 03AC78 8003A078 C6040014 */ lwc1 $f4, 0x14($s0) +/* 03AC7C 8003A07C 44055000 */ mfc1 $a1, $f10 +/* 03AC80 8003A080 46062401 */ sub.s $f16, $f4, $f6 +/* 03AC84 8003A084 8E060010 */ lw $a2, 0x10($s0) +/* 03AC88 8003A088 44078000 */ mfc1 $a3, $f16 +/* 03AC8C 8003A08C 0C008B3F */ jal func_80022CFC +/* 03AC90 8003A090 00000000 */ nop +/* 03AC94 8003A094 240A0014 */ li $t2, 20 +.L8003A098: +/* 03AC98 8003A098 AE0A0078 */ sw $t2, 0x78($s0) +/* 03AC9C 8003A09C 24040110 */ li $a0, 272 +/* 03ACA0 8003A0A0 0C000741 */ jal func_80001D04 +/* 03ACA4 8003A0A4 00002825 */ move $a1, $zero +/* 03ACA8 8003A0A8 8FA20070 */ lw $v0, 0x70($sp) +/* 03ACAC 8003A0AC 00000000 */ nop +/* 03ACB0 8003A0B0 80440003 */ lb $a0, 3($v0) +/* 03ACB4 8003A0B4 804501D6 */ lb $a1, 0x1d6($v0) +/* 03ACB8 8003A0B8 0C0012D0 */ jal func_80004B40 +/* 03ACBC 8003A0BC 00000000 */ nop +/* 03ACC0 8003A0C0 8FAB0070 */ lw $t3, 0x70($sp) +/* 03ACC4 8003A0C4 1000028E */ b .L8003AB00 +/* 03ACC8 8003A0C8 AD620118 */ sw $v0, 0x118($t3) +/* 03ACCC 8003A0CC 44805000 */ mtc1 $zero, $f10 +/* 03ACD0 8003A0D0 A207003B */ sb $a3, 0x3b($s0) +/* 03ACD4 8003A0D4 240C00FF */ li $t4, 255 +/* 03ACD8 8003A0D8 A22C000D */ sb $t4, 0xd($s1) +/* 03ACDC 8003A0DC E62A0014 */ swc1 $f10, 0x14($s1) +/* 03ACE0 8003A0E0 C7A800AC */ lwc1 $f8, 0xac($sp) +/* 03ACE4 8003A0E4 C6320004 */ lwc1 $f18, 4($s1) +/* 03ACE8 8003A0E8 46004021 */ cvt.d.s $f0, $f8 +/* 03ACEC 8003A0EC 46200180 */ add.d $f6, $f0, $f0 +/* 03ACF0 8003A0F0 3C01429E */ li $at, 0x429E0000 # 79.000000 +/* 03ACF4 8003A0F4 46009121 */ cvt.d.s $f4, $f18 +/* 03ACF8 8003A0F8 46262400 */ add.d $f16, $f4, $f6 +/* 03ACFC 8003A0FC 44811000 */ mtc1 $at, $f2 +/* 03AD00 8003A100 462082A0 */ cvt.s.d $f10, $f16 +/* 03AD04 8003A104 3C0141A0 */ li $at, 0x41A00000 # 20.000000 +/* 03AD08 8003A108 E62A0004 */ swc1 $f10, 4($s1) +/* 03AD0C 8003A10C C62C0004 */ lwc1 $f12, 4($s1) +/* 03AD10 8003A110 44814000 */ mtc1 $at, $f8 +/* 03AD14 8003A114 460C103C */ c.lt.s $f2, $f12 +/* 03AD18 8003A118 24040110 */ li $a0, 272 +/* 03AD1C 8003A11C 45000004 */ bc1f .L8003A130 +/* 03AD20 8003A120 00002825 */ move $a1, $zero +/* 03AD24 8003A124 E6220004 */ swc1 $f2, 4($s1) +/* 03AD28 8003A128 C62C0004 */ lwc1 $f12, 4($s1) +/* 03AD2C 8003A12C 00000000 */ nop +.L8003A130: +/* 03AD30 8003A130 8FA600B4 */ lw $a2, 0xb4($sp) +/* 03AD34 8003A134 4608603C */ c.lt.s $f12, $f8 +/* 03AD38 8003A138 000668C0 */ sll $t5, $a2, 3 +/* 03AD3C 8003A13C 45000002 */ bc1f .L8003A148 +/* 03AD40 8003A140 01A03025 */ move $a2, $t5 +/* 03AD44 8003A144 00003025 */ move $a2, $zero +.L8003A148: +/* 03AD48 8003A148 92020039 */ lbu $v0, 0x39($s0) +/* 03AD4C 8003A14C 240F0001 */ li $t7, 1 +/* 03AD50 8003A150 00C2082A */ slt $at, $a2, $v0 +/* 03AD54 8003A154 10200003 */ beqz $at, .L8003A164 +/* 03AD58 8003A158 00467023 */ subu $t6, $v0, $a2 +/* 03AD5C 8003A15C 10000268 */ b .L8003AB00 +/* 03AD60 8003A160 A20E0039 */ sb $t6, 0x39($s0) +.L8003A164: +/* 03AD64 8003A164 0C000741 */ jal func_80001D04 +/* 03AD68 8003A168 A3AF006B */ sb $t7, 0x6b($sp) +/* 03AD6C 8003A16C 8FA20070 */ lw $v0, 0x70($sp) +/* 03AD70 8003A170 8FA30090 */ lw $v1, 0x90($sp) +/* 03AD74 8003A174 2418000B */ li $t8, 11 +/* 03AD78 8003A178 3C014316 */ li $at, 0x43160000 # 150.000000 +/* 03AD7C 8003A17C A2000039 */ sb $zero, 0x39($s0) +/* 03AD80 8003A180 AE180078 */ sw $t8, 0x78($s0) +/* 03AD84 8003A184 44810000 */ mtc1 $at, $f0 +/* 03AD88 8003A188 C4440038 */ lwc1 $f4, 0x38($v0) +/* 03AD8C 8003A18C C472000C */ lwc1 $f18, 0xc($v1) +/* 03AD90 8003A190 46002182 */ mul.s $f6, $f4, $f0 +/* 03AD94 8003A194 C60E0010 */ lwc1 $f14, 0x10($s0) +/* 03AD98 8003A198 46069401 */ sub.s $f16, $f18, $f6 +/* 03AD9C 8003A19C E610000C */ swc1 $f16, 0xc($s0) +/* 03ADA0 8003A1A0 C4480040 */ lwc1 $f8, 0x40($v0) +/* 03ADA4 8003A1A4 C46A0014 */ lwc1 $f10, 0x14($v1) +/* 03ADA8 8003A1A8 46004102 */ mul.s $f4, $f8, $f0 +/* 03ADAC 8003A1AC C60C000C */ lwc1 $f12, 0xc($s0) +/* 03ADB0 8003A1B0 46045481 */ sub.s $f18, $f10, $f4 +/* 03ADB4 8003A1B4 E6120014 */ swc1 $f18, 0x14($s0) +/* 03ADB8 8003A1B8 8E060014 */ lw $a2, 0x14($s0) +/* 03ADBC 8003A1BC 0C00A7C6 */ jal func_80029F18 +/* 03ADC0 8003A1C0 00000000 */ nop +/* 03ADC4 8003A1C4 A602002E */ sh $v0, 0x2e($s0) +/* 03ADC8 8003A1C8 8FB90090 */ lw $t9, 0x90($sp) +/* 03ADCC 8003A1CC 34018000 */ li $at, 32768 +/* 03ADD0 8003A1D0 87280000 */ lh $t0, ($t9) +/* 03ADD4 8003A1D4 00000000 */ nop +/* 03ADD8 8003A1D8 01014821 */ addu $t1, $t0, $at +/* 03ADDC 8003A1DC A6090000 */ sh $t1, ($s0) +/* 03ADE0 8003A1E0 10000248 */ b .L8003AB04 +/* 03ADE4 8003A1E4 C7B00098 */ lwc1 $f16, 0x98($sp) +/* 03ADE8 8003A1E8 A207003B */ sb $a3, 0x3b($s0) +/* 03ADEC 8003A1EC C7A600AC */ lwc1 $f6, 0xac($sp) +/* 03ADF0 8003A1F0 C6300004 */ lwc1 $f16, 4($s1) +/* 03ADF4 8003A1F4 46003021 */ cvt.d.s $f0, $f6 +/* 03ADF8 8003A1F8 46200280 */ add.d $f10, $f0, $f0 +/* 03ADFC 8003A1FC 44801000 */ mtc1 $zero, $f2 +/* 03AE00 8003A200 46008221 */ cvt.d.s $f8, $f16 +/* 03AE04 8003A204 462A4101 */ sub.d $f4, $f8, $f10 +/* 03AE08 8003A208 240B00FF */ li $t3, 255 +/* 03AE0C 8003A20C 462024A0 */ cvt.s.d $f18, $f4 +/* 03AE10 8003A210 240E00FF */ li $t6, 255 +/* 03AE14 8003A214 E6320004 */ swc1 $f18, 4($s1) +/* 03AE18 8003A218 C6260004 */ lwc1 $f6, 4($s1) +/* 03AE1C 8003A21C 240F0001 */ li $t7, 1 +/* 03AE20 8003A220 4602303C */ c.lt.s $f6, $f2 +/* 03AE24 8003A224 00000000 */ nop +/* 03AE28 8003A228 45000003 */ bc1f .L8003A238 +/* 03AE2C 8003A22C 8FA300B4 */ lw $v1, 0xb4($sp) +/* 03AE30 8003A230 E6220004 */ swc1 $f2, 4($s1) +/* 03AE34 8003A234 8FA300B4 */ lw $v1, 0xb4($sp) +.L8003A238: +/* 03AE38 8003A238 92020039 */ lbu $v0, 0x39($s0) +/* 03AE3C 8003A23C 00035080 */ sll $t2, $v1, 2 +/* 03AE40 8003A240 016A6023 */ subu $t4, $t3, $t2 +/* 03AE44 8003A244 004C082A */ slt $at, $v0, $t4 +/* 03AE48 8003A248 10200003 */ beqz $at, .L8003A258 +/* 03AE4C 8003A24C 004A6821 */ addu $t5, $v0, $t2 +/* 03AE50 8003A250 1000022B */ b .L8003AB00 +/* 03AE54 8003A254 A20D0039 */ sb $t5, 0x39($s0) +.L8003A258: +/* 03AE58 8003A258 A20E0039 */ sb $t6, 0x39($s0) +/* 03AE5C 8003A25C AE0F0078 */ sw $t7, 0x78($s0) +/* 03AE60 8003A260 10000228 */ b .L8003AB04 +/* 03AE64 8003A264 C7B00098 */ lwc1 $f16, 0x98($sp) +/* 03AE68 8003A268 44808000 */ mtc1 $zero, $f16 +/* 03AE6C 8003A26C A207003B */ sb $a3, 0x3b($s0) +/* 03AE70 8003A270 241800FF */ li $t8, 255 +/* 03AE74 8003A274 A238000D */ sb $t8, 0xd($s1) +/* 03AE78 8003A278 E6300014 */ swc1 $f16, 0x14($s1) +/* 03AE7C 8003A27C C7A800AC */ lwc1 $f8, 0xac($sp) +/* 03AE80 8003A280 C62A0004 */ lwc1 $f10, 4($s1) +/* 03AE84 8003A284 46004021 */ cvt.d.s $f0, $f8 +/* 03AE88 8003A288 46200480 */ add.d $f18, $f0, $f0 +/* 03AE8C 8003A28C 3C01429E */ li $at, 0x429E0000 # 79.000000 +/* 03AE90 8003A290 46005121 */ cvt.d.s $f4, $f10 +/* 03AE94 8003A294 46322180 */ add.d $f6, $f4, $f18 +/* 03AE98 8003A298 44811000 */ mtc1 $at, $f2 +/* 03AE9C 8003A29C 46203420 */ cvt.s.d $f16, $f6 +/* 03AEA0 8003A2A0 3C0141A0 */ li $at, 0x41A00000 # 20.000000 +/* 03AEA4 8003A2A4 E6300004 */ swc1 $f16, 4($s1) +/* 03AEA8 8003A2A8 C62C0004 */ lwc1 $f12, 4($s1) +/* 03AEAC 8003A2AC 44814000 */ mtc1 $at, $f8 +/* 03AEB0 8003A2B0 460C103C */ c.lt.s $f2, $f12 +/* 03AEB4 8003A2B4 00000000 */ nop +/* 03AEB8 8003A2B8 45000005 */ bc1f .L8003A2D0 +/* 03AEBC 8003A2BC 8FA600B4 */ lw $a2, 0xb4($sp) +/* 03AEC0 8003A2C0 E6220004 */ swc1 $f2, 4($s1) +/* 03AEC4 8003A2C4 C62C0004 */ lwc1 $f12, 4($s1) +/* 03AEC8 8003A2C8 00000000 */ nop +/* 03AECC 8003A2CC 8FA600B4 */ lw $a2, 0xb4($sp) +.L8003A2D0: +/* 03AED0 8003A2D0 4608603C */ c.lt.s $f12, $f8 +/* 03AED4 8003A2D4 0006C8C0 */ sll $t9, $a2, 3 +/* 03AED8 8003A2D8 45000002 */ bc1f .L8003A2E4 +/* 03AEDC 8003A2DC 03203025 */ move $a2, $t9 +/* 03AEE0 8003A2E0 00003025 */ move $a2, $zero +.L8003A2E4: +/* 03AEE4 8003A2E4 92020039 */ lbu $v0, 0x39($s0) +/* 03AEE8 8003A2E8 00000000 */ nop +/* 03AEEC 8003A2EC 00C2082A */ slt $at, $a2, $v0 +/* 03AEF0 8003A2F0 10200003 */ beqz $at, .L8003A300 +/* 03AEF4 8003A2F4 00464023 */ subu $t0, $v0, $a2 +/* 03AEF8 8003A2F8 10000201 */ b .L8003AB00 +/* 03AEFC 8003A2FC A2080039 */ sb $t0, 0x39($s0) +.L8003A300: +/* 03AF00 8003A300 8FA20070 */ lw $v0, 0x70($sp) +/* 03AF04 8003A304 00000000 */ nop +/* 03AF08 8003A308 80440003 */ lb $a0, 3($v0) +/* 03AF0C 8003A30C 804501D6 */ lb $a1, 0x1d6($v0) +/* 03AF10 8003A310 0C0012D0 */ jal func_80004B40 +/* 03AF14 8003A314 00000000 */ nop +/* 03AF18 8003A318 8FA90070 */ lw $t1, 0x70($sp) +/* 03AF1C 8003A31C 240C00B4 */ li $t4, 180 +/* 03AF20 8003A320 AD220118 */ sw $v0, 0x118($t1) +/* 03AF24 8003A324 862A0020 */ lh $t2, 0x20($s1) +/* 03AF28 8003A328 92270013 */ lbu $a3, 0x13($s1) +/* 03AF2C 8003A32C 92260012 */ lbu $a2, 0x12($s1) +/* 03AF30 8003A330 92250011 */ lbu $a1, 0x11($s1) +/* 03AF34 8003A334 AFAA0010 */ sw $t2, 0x10($sp) +/* 03AF38 8003A338 862B0022 */ lh $t3, 0x22($s1) +/* 03AF3C 8003A33C AFAC0018 */ sw $t4, 0x18($sp) +/* 03AF40 8003A340 00002025 */ move $a0, $zero +/* 03AF44 8003A344 0C00C378 */ jal func_80030DE0 +/* 03AF48 8003A348 AFAB0014 */ sw $t3, 0x14($sp) +/* 03AF4C 8003A34C 8FAD0064 */ lw $t5, 0x64($sp) +/* 03AF50 8003A350 00000000 */ nop +/* 03AF54 8003A354 91A400B3 */ lbu $a0, 0xb3($t5) +/* 03AF58 8003A358 0C0002F8 */ jal func_80000BE0 +/* 03AF5C 8003A35C 00000000 */ nop +/* 03AF60 8003A360 8FAE0064 */ lw $t6, 0x64($sp) +/* 03AF64 8003A364 00000000 */ nop +/* 03AF68 8003A368 91C40052 */ lbu $a0, 0x52($t6) +/* 03AF6C 8003A36C 0C0002CD */ jal func_80000B34 +/* 03AF70 8003A370 00000000 */ nop +/* 03AF74 8003A374 8FAF0064 */ lw $t7, 0x64($sp) +/* 03AF78 8003A378 00000000 */ nop +/* 03AF7C 8003A37C 95E40054 */ lhu $a0, 0x54($t7) +/* 03AF80 8003A380 0C00041D */ jal func_80001074 +/* 03AF84 8003A384 00000000 */ nop +/* 03AF88 8003A388 8FB80070 */ lw $t8, 0x70($sp) +/* 03AF8C 8003A38C 00000000 */ nop +/* 03AF90 8003A390 830401D6 */ lb $a0, 0x1d6($t8) +/* 03AF94 8003A394 0C008A3B */ jal func_800228EC +/* 03AF98 8003A398 00000000 */ nop +/* 03AF9C 8003A39C C60C000C */ lwc1 $f12, 0xc($s0) +/* 03AFA0 8003A3A0 C60E0014 */ lwc1 $f14, 0x14($s0) +/* 03AFA4 8003A3A4 0C008D0B */ jal func_8002342C +/* 03AFA8 8003A3A8 00000000 */ nop +/* 03AFAC 8003A3AC 10400010 */ beqz $v0, .L8003A3F0 +/* 03AFB0 8003A3B0 240B001E */ li $t3, 30 +/* 03AFB4 8003A3B4 C44A000C */ lwc1 $f10, 0xc($v0) +/* 03AFB8 8003A3B8 34018000 */ li $at, 32768 +/* 03AFBC 8003A3BC E60A000C */ swc1 $f10, 0xc($s0) +/* 03AFC0 8003A3C0 C4440014 */ lwc1 $f4, 0x14($v0) +/* 03AFC4 8003A3C4 00000000 */ nop +/* 03AFC8 8003A3C8 E6040014 */ swc1 $f4, 0x14($s0) +/* 03AFCC 8003A3CC 8459002E */ lh $t9, 0x2e($v0) +/* 03AFD0 8003A3D0 00000000 */ nop +/* 03AFD4 8003A3D4 A619002E */ sh $t9, 0x2e($s0) +/* 03AFD8 8003A3D8 8FA80090 */ lw $t0, 0x90($sp) +/* 03AFDC 8003A3DC 00000000 */ nop +/* 03AFE0 8003A3E0 85090000 */ lh $t1, ($t0) +/* 03AFE4 8003A3E4 00000000 */ nop +/* 03AFE8 8003A3E8 01215021 */ addu $t2, $t1, $at +/* 03AFEC 8003A3EC A60A0000 */ sh $t2, ($s0) +.L8003A3F0: +/* 03AFF0 8003A3F0 AE0B0078 */ sw $t3, 0x78($s0) +/* 03AFF4 8003A3F4 100001C3 */ b .L8003AB04 +/* 03AFF8 8003A3F8 C7B00098 */ lwc1 $f16, 0x98($sp) +/* 03AFFC 8003A3FC 44809000 */ mtc1 $zero, $f18 +/* 03B000 8003A400 A207003B */ sb $a3, 0x3b($s0) +/* 03B004 8003A404 240C00FF */ li $t4, 255 +/* 03B008 8003A408 A22C000D */ sb $t4, 0xd($s1) +/* 03B00C 8003A40C E6320014 */ swc1 $f18, 0x14($s1) +/* 03B010 8003A410 C7A600AC */ lwc1 $f6, 0xac($sp) +/* 03B014 8003A414 C6300004 */ lwc1 $f16, 4($s1) +/* 03B018 8003A418 46003021 */ cvt.d.s $f0, $f6 +/* 03B01C 8003A41C 46200280 */ add.d $f10, $f0, $f0 +/* 03B020 8003A420 3C01429E */ li $at, 0x429E0000 # 79.000000 +/* 03B024 8003A424 46008221 */ cvt.d.s $f8, $f16 +/* 03B028 8003A428 462A4100 */ add.d $f4, $f8, $f10 +/* 03B02C 8003A42C 44811000 */ mtc1 $at, $f2 +/* 03B030 8003A430 462024A0 */ cvt.s.d $f18, $f4 +/* 03B034 8003A434 3C0141A0 */ li $at, 0x41A00000 # 20.000000 +/* 03B038 8003A438 E6320004 */ swc1 $f18, 4($s1) +/* 03B03C 8003A43C C62C0004 */ lwc1 $f12, 4($s1) +/* 03B040 8003A440 44813000 */ mtc1 $at, $f6 +/* 03B044 8003A444 460C103C */ c.lt.s $f2, $f12 +/* 03B048 8003A448 240F0015 */ li $t7, 21 +/* 03B04C 8003A44C 45000005 */ bc1f .L8003A464 +/* 03B050 8003A450 8FA600B4 */ lw $a2, 0xb4($sp) +/* 03B054 8003A454 E6220004 */ swc1 $f2, 4($s1) +/* 03B058 8003A458 C62C0004 */ lwc1 $f12, 4($s1) +/* 03B05C 8003A45C 00000000 */ nop +/* 03B060 8003A460 8FA600B4 */ lw $a2, 0xb4($sp) +.L8003A464: +/* 03B064 8003A464 4606603C */ c.lt.s $f12, $f6 +/* 03B068 8003A468 000668C0 */ sll $t5, $a2, 3 +/* 03B06C 8003A46C 45000002 */ bc1f .L8003A478 +/* 03B070 8003A470 01A03025 */ move $a2, $t5 +/* 03B074 8003A474 00003025 */ move $a2, $zero +.L8003A478: +/* 03B078 8003A478 92020039 */ lbu $v0, 0x39($s0) +/* 03B07C 8003A47C 00000000 */ nop +/* 03B080 8003A480 00C2082A */ slt $at, $a2, $v0 +/* 03B084 8003A484 10200003 */ beqz $at, .L8003A494 +/* 03B088 8003A488 00467023 */ subu $t6, $v0, $a2 +/* 03B08C 8003A48C 1000019C */ b .L8003AB00 +/* 03B090 8003A490 A20E0039 */ sb $t6, 0x39($s0) +.L8003A494: +/* 03B094 8003A494 C60C000C */ lwc1 $f12, 0xc($s0) +/* 03B098 8003A498 C60E0014 */ lwc1 $f14, 0x14($s0) +/* 03B09C 8003A49C A2000039 */ sb $zero, 0x39($s0) +/* 03B0A0 8003A4A0 0C008D0B */ jal func_8002342C +/* 03B0A4 8003A4A4 AE0F0078 */ sw $t7, 0x78($s0) +/* 03B0A8 8003A4A8 10400010 */ beqz $v0, .L8003A4EC +/* 03B0AC 8003A4AC 00000000 */ nop +/* 03B0B0 8003A4B0 C450000C */ lwc1 $f16, 0xc($v0) +/* 03B0B4 8003A4B4 34018000 */ li $at, 32768 +/* 03B0B8 8003A4B8 E610000C */ swc1 $f16, 0xc($s0) +/* 03B0BC 8003A4BC C4480014 */ lwc1 $f8, 0x14($v0) +/* 03B0C0 8003A4C0 00000000 */ nop +/* 03B0C4 8003A4C4 E6080014 */ swc1 $f8, 0x14($s0) +/* 03B0C8 8003A4C8 8458002E */ lh $t8, 0x2e($v0) +/* 03B0CC 8003A4CC 00000000 */ nop +/* 03B0D0 8003A4D0 A618002E */ sh $t8, 0x2e($s0) +/* 03B0D4 8003A4D4 8FB90090 */ lw $t9, 0x90($sp) +/* 03B0D8 8003A4D8 00000000 */ nop +/* 03B0DC 8003A4DC 87280000 */ lh $t0, ($t9) +/* 03B0E0 8003A4E0 00000000 */ nop +/* 03B0E4 8003A4E4 01014821 */ addu $t1, $t0, $at +/* 03B0E8 8003A4E8 A6090000 */ sh $t1, ($s0) +.L8003A4EC: +/* 03B0EC 8003A4EC 10000185 */ b .L8003AB04 +/* 03B0F0 8003A4F0 C7B00098 */ lwc1 $f16, 0x98($sp) +/* 03B0F4 8003A4F4 A207003B */ sb $a3, 0x3b($s0) +/* 03B0F8 8003A4F8 C7AA00AC */ lwc1 $f10, 0xac($sp) +/* 03B0FC 8003A4FC C6240004 */ lwc1 $f4, 4($s1) +/* 03B100 8003A500 46005021 */ cvt.d.s $f0, $f10 +/* 03B104 8003A504 46200180 */ add.d $f6, $f0, $f0 +/* 03B108 8003A508 44801000 */ mtc1 $zero, $f2 +/* 03B10C 8003A50C 460024A1 */ cvt.d.s $f18, $f4 +/* 03B110 8003A510 46269401 */ sub.d $f16, $f18, $f6 +/* 03B114 8003A514 240B00FF */ li $t3, 255 +/* 03B118 8003A518 46208220 */ cvt.s.d $f8, $f16 +/* 03B11C 8003A51C 240E00FF */ li $t6, 255 +/* 03B120 8003A520 E6280004 */ swc1 $f8, 4($s1) +/* 03B124 8003A524 C62A0004 */ lwc1 $f10, 4($s1) +/* 03B128 8003A528 00000000 */ nop +/* 03B12C 8003A52C 4602503C */ c.lt.s $f10, $f2 +/* 03B130 8003A530 00000000 */ nop +/* 03B134 8003A534 45000003 */ bc1f .L8003A544 +/* 03B138 8003A538 8FA300B4 */ lw $v1, 0xb4($sp) +/* 03B13C 8003A53C E6220004 */ swc1 $f2, 4($s1) +/* 03B140 8003A540 8FA300B4 */ lw $v1, 0xb4($sp) +.L8003A544: +/* 03B144 8003A544 92020039 */ lbu $v0, 0x39($s0) +/* 03B148 8003A548 00035080 */ sll $t2, $v1, 2 +/* 03B14C 8003A54C 016A6023 */ subu $t4, $t3, $t2 +/* 03B150 8003A550 004C082A */ slt $at, $v0, $t4 +/* 03B154 8003A554 10200003 */ beqz $at, .L8003A564 +/* 03B158 8003A558 004A6821 */ addu $t5, $v0, $t2 +/* 03B15C 8003A55C 10000168 */ b .L8003AB00 +/* 03B160 8003A560 A20D0039 */ sb $t5, 0x39($s0) +.L8003A564: +/* 03B164 8003A564 A20E0039 */ sb $t6, 0x39($s0) +/* 03B168 8003A568 AE000078 */ sw $zero, 0x78($s0) +/* 03B16C 8003A56C 10000165 */ b .L8003AB04 +/* 03B170 8003A570 C7B00098 */ lwc1 $f16, 0x98($sp) +/* 03B174 8003A574 8E0F004C */ lw $t7, 0x4c($s0) +/* 03B178 8003A578 24180006 */ li $t8, 6 +/* 03B17C 8003A57C A5E00014 */ sh $zero, 0x14($t7) +/* 03B180 8003A580 241900FF */ li $t9, 255 +/* 03B184 8003A584 A218003B */ sb $t8, 0x3b($s0) +/* 03B188 8003A588 A2190039 */ sb $t9, 0x39($s0) +/* 03B18C 8003A58C C6240004 */ lwc1 $f4, 4($s1) +/* 03B190 8003A590 C7A600AC */ lwc1 $f6, 0xac($sp) +/* 03B194 8003A594 460024A1 */ cvt.d.s $f18, $f4 +/* 03B198 8003A598 46003421 */ cvt.d.s $f16, $f6 +/* 03B19C 8003A59C 46309200 */ add.d $f8, $f18, $f16 +/* 03B1A0 8003A5A0 462042A0 */ cvt.s.d $f10, $f8 +/* 03B1A4 8003A5A4 10000156 */ b .L8003AB00 +/* 03B1A8 8003A5A8 E62A0004 */ swc1 $f10, 4($s1) +.L8003A5AC: +/* 03B1AC 8003A5AC A200003B */ sb $zero, 0x3b($s0) +/* 03B1B0 8003A5B0 44802000 */ mtc1 $zero, $f4 +/* 03B1B4 8003A5B4 9228000D */ lbu $t0, 0xd($s1) +/* 03B1B8 8003A5B8 240100FF */ li $at, 255 +/* 03B1BC 8003A5BC 1501001B */ bne $t0, $at, .L8003A62C +/* 03B1C0 8003A5C0 E6240014 */ swc1 $f4, 0x14($s1) +/* 03B1C4 8003A5C4 C60C000C */ lwc1 $f12, 0xc($s0) +/* 03B1C8 8003A5C8 C60E0010 */ lwc1 $f14, 0x10($s0) +/* 03B1CC 8003A5CC 8E060014 */ lw $a2, 0x14($s0) +/* 03B1D0 8003A5D0 0C007149 */ jal func_8001C524 +/* 03B1D4 8003A5D4 00003825 */ move $a3, $zero +/* 03B1D8 8003A5D8 304400FF */ andi $a0, $v0, 0xff +/* 03B1DC 8003A5DC 240100FF */ li $at, 255 +/* 03B1E0 8003A5E0 1081007F */ beq $a0, $at, .L8003A7E0 +/* 03B1E4 8003A5E4 A222000D */ sb $v0, 0xd($s1) +/* 03B1E8 8003A5E8 2405FFFF */ li $a1, -1 +/* 03B1EC 8003A5EC 0C007312 */ jal func_8001CC48 +/* 03B1F0 8003A5F0 00003025 */ move $a2, $zero +/* 03B1F4 8003A5F4 9225000D */ lbu $a1, 0xd($s1) +/* 03B1F8 8003A5F8 A222000E */ sb $v0, 0xe($s1) +/* 03B1FC 8003A5FC 304400FF */ andi $a0, $v0, 0xff +/* 03B200 8003A600 0C007312 */ jal func_8001CC48 +/* 03B204 8003A604 00003025 */ move $a2, $zero +/* 03B208 8003A608 9225000E */ lbu $a1, 0xe($s1) +/* 03B20C 8003A60C A222000F */ sb $v0, 0xf($s1) +/* 03B210 8003A610 304400FF */ andi $a0, $v0, 0xff +/* 03B214 8003A614 0C007312 */ jal func_8001CC48 +/* 03B218 8003A618 00003025 */ move $a2, $zero +/* 03B21C 8003A61C 9229000D */ lbu $t1, 0xd($s1) +/* 03B220 8003A620 A2220010 */ sb $v0, 0x10($s1) +/* 03B224 8003A624 1000006E */ b .L8003A7E0 +/* 03B228 8003A628 A229000C */ sb $t1, 0xc($s1) +.L8003A62C: +/* 03B22C 8003A62C 3C01425C */ li $at, 0x425C0000 # 55.000000 +/* 03B230 8003A630 44819000 */ mtc1 $at, $f18 +/* 03B234 8003A634 C7A6009C */ lwc1 $f6, 0x9c($sp) +/* 03B238 8003A638 00000000 */ nop +/* 03B23C 8003A63C 4612303C */ c.lt.s $f6, $f18 +/* 03B240 8003A640 00000000 */ nop +/* 03B244 8003A644 45000010 */ bc1f .L8003A688 +/* 03B248 8003A648 00000000 */ nop +/* 03B24C 8003A64C 862A001C */ lh $t2, 0x1c($s1) +/* 03B250 8003A650 8FAB0090 */ lw $t3, 0x90($sp) +/* 03B254 8003A654 1540000C */ bnez $t2, .L8003A688 +/* 03B258 8003A658 00000000 */ nop +/* 03B25C 8003A65C 1160000A */ beqz $t3, .L8003A688 +/* 03B260 8003A660 240C00F0 */ li $t4, 240 +/* 03B264 8003A664 A62C001C */ sh $t4, 0x1c($s1) +/* 03B268 8003A668 C7A8009C */ lwc1 $f8, 0x9c($sp) +/* 03B26C 8003A66C C7AA00A0 */ lwc1 $f10, 0xa0($sp) +/* 03B270 8003A670 C7B000A8 */ lwc1 $f16, 0xa8($sp) +/* 03B274 8003A674 46085383 */ div.s $f14, $f10, $f8 +/* 03B278 8003A678 0C01C1D4 */ jal func_80070750 +/* 03B27C 8003A67C 46088303 */ div.s $f12, $f16, $f8 +/* 03B280 8003A680 244D4000 */ addiu $t5, $v0, 0x4000 +/* 03B284 8003A684 A62D001E */ sh $t5, 0x1e($s1) +.L8003A688: +/* 03B288 8003A688 8622001C */ lh $v0, 0x1c($s1) +/* 03B28C 8003A68C 8FAE00B4 */ lw $t6, 0xb4($sp) +/* 03B290 8003A690 18400003 */ blez $v0, .L8003A6A0 +/* 03B294 8003A694 004E7823 */ subu $t7, $v0, $t6 +/* 03B298 8003A698 10000002 */ b .L8003A6A4 +/* 03B29C 8003A69C A62F001C */ sh $t7, 0x1c($s1) +.L8003A6A0: +/* 03B2A0 8003A6A0 A620001C */ sh $zero, 0x1c($s1) +.L8003A6A4: +/* 03B2A4 8003A6A4 8638001C */ lh $t8, 0x1c($s1) +/* 03B2A8 8003A6A8 8FA900B4 */ lw $t1, 0xb4($sp) +/* 03B2AC 8003A6AC 2B010078 */ slti $at, $t8, 0x78 +/* 03B2B0 8003A6B0 1020000B */ beqz $at, .L8003A6E0 +/* 03B2B4 8003A6B4 02202025 */ move $a0, $s1 +/* 03B2B8 8003A6B8 8FA600AC */ lw $a2, 0xac($sp) +/* 03B2BC 8003A6BC 02002825 */ move $a1, $s0 +/* 03B2C0 8003A6C0 3C073F80 */ lui $a3, 0x3f80 +/* 03B2C4 8003A6C4 0C0071B1 */ jal func_8001C6C4 +/* 03B2C8 8003A6C8 AFA00010 */ sw $zero, 0x10($sp) +/* 03B2CC 8003A6CC C6240004 */ lwc1 $f4, 4($s1) +/* 03B2D0 8003A6D0 00000000 */ nop +/* 03B2D4 8003A6D4 46002180 */ add.s $f6, $f4, $f0 +/* 03B2D8 8003A6D8 10000041 */ b .L8003A7E0 +/* 03B2DC 8003A6DC E6260004 */ swc1 $f6, 4($s1) +.L8003A6E0: +/* 03B2E0 8003A6E0 86050000 */ lh $a1, ($s0) +/* 03B2E4 8003A6E4 8639001E */ lh $t9, 0x1e($s1) +/* 03B2E8 8003A6E8 30A8FFFF */ andi $t0, $a1, 0xffff +/* 03B2EC 8003A6EC 34018001 */ li $at, 32769 +/* 03B2F0 8003A6F0 03283023 */ subu $a2, $t9, $t0 +/* 03B2F4 8003A6F4 00C1082A */ slt $at, $a2, $at +/* 03B2F8 8003A6F8 14200003 */ bnez $at, .L8003A708 +/* 03B2FC 8003A6FC 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 03B300 8003A700 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 03B304 8003A704 00C13021 */ addu $a2, $a2, $at +.L8003A708: +/* 03B308 8003A708 28C18000 */ slti $at, $a2, -0x8000 +/* 03B30C 8003A70C 10200002 */ beqz $at, .L8003A718 +/* 03B310 8003A710 3401FFFF */ li $at, 65535 +/* 03B314 8003A714 00C13021 */ addu $a2, $a2, $at +.L8003A718: +/* 03B318 8003A718 00C90019 */ multu $a2, $t1 +/* 03B31C 8003A71C 34018000 */ li $at, 32768 +/* 03B320 8003A720 00005012 */ mflo $t2 +/* 03B324 8003A724 000A5903 */ sra $t3, $t2, 4 +/* 03B328 8003A728 00AB6021 */ addu $t4, $a1, $t3 +/* 03B32C 8003A72C A60C0000 */ sh $t4, ($s0) +/* 03B330 8003A730 86040000 */ lh $a0, ($s0) +/* 03B334 8003A734 00000000 */ nop +/* 03B338 8003A738 00812021 */ addu $a0, $a0, $at +/* 03B33C 8003A73C 00046C00 */ sll $t5, $a0, 0x10 +/* 03B340 8003A740 0C01C1F1 */ jal func_800707C4 +/* 03B344 8003A744 000D2403 */ sra $a0, $t5, 0x10 +/* 03B348 8003A748 E7A000A8 */ swc1 $f0, 0xa8($sp) +/* 03B34C 8003A74C 86040000 */ lh $a0, ($s0) +/* 03B350 8003A750 34018000 */ li $at, 32768 +/* 03B354 8003A754 00812021 */ addu $a0, $a0, $at +/* 03B358 8003A758 00047C00 */ sll $t7, $a0, 0x10 +/* 03B35C 8003A75C 0C01C1FE */ jal func_800707F8 +/* 03B360 8003A760 000F2403 */ sra $a0, $t7, 0x10 +/* 03B364 8003A764 C7AC0048 */ lwc1 $f12, 0x48($sp) +/* 03B368 8003A768 C7B200A8 */ lwc1 $f18, 0xa8($sp) +/* 03B36C 8003A76C 3C01800E */ lui $at, %hi(D_800E6154) # $at, 0x800e +/* 03B370 8003A770 46126402 */ mul.s $f16, $f12, $f18 +/* 03B374 8003A774 C4236150 */ lwc1 $f3, %lo(D_800E6150)($at) +/* 03B378 8003A778 C4226154 */ lwc1 $f2, %lo(D_800E6154)($at) +/* 03B37C 8003A77C 02002025 */ move $a0, $s0 +/* 03B380 8003A780 460082A1 */ cvt.d.s $f10, $f16 +/* 03B384 8003A784 46225202 */ mul.d $f8, $f10, $f2 +/* 03B388 8003A788 24060000 */ li $a2, 0 +/* 03B38C 8003A78C 46006182 */ mul.s $f6, $f12, $f0 +/* 03B390 8003A790 46204120 */ cvt.s.d $f4, $f8 +/* 03B394 8003A794 44052000 */ mfc1 $a1, $f4 +/* 03B398 8003A798 460034A1 */ cvt.d.s $f18, $f6 +/* 03B39C 8003A79C 46229402 */ mul.d $f16, $f18, $f2 +/* 03B3A0 8003A7A0 462082A0 */ cvt.s.d $f10, $f16 +/* 03B3A4 8003A7A4 44075000 */ mfc1 $a3, $f10 +/* 03B3A8 8003A7A8 0C00455C */ jal func_80011570 +/* 03B3AC 8003A7AC 00000000 */ nop +/* 03B3B0 8003A7B0 8FB900B4 */ lw $t9, 0xb4($sp) +/* 03B3B4 8003A7B4 3C01800E */ lui $at, %hi(D_800E615C) # $at, 0x800e +/* 03B3B8 8003A7B8 44994000 */ mtc1 $t9, $f8 +/* 03B3BC 8003A7BC C4276158 */ lwc1 $f7, %lo(D_800E6158)($at) +/* 03B3C0 8003A7C0 46804121 */ cvt.d.w $f4, $f8 +/* 03B3C4 8003A7C4 C426615C */ lwc1 $f6, %lo(D_800E615C)($at) +/* 03B3C8 8003A7C8 C6300004 */ lwc1 $f16, 4($s1) +/* 03B3CC 8003A7CC 46262482 */ mul.d $f18, $f4, $f6 +/* 03B3D0 8003A7D0 460082A1 */ cvt.d.s $f10, $f16 +/* 03B3D4 8003A7D4 46325200 */ add.d $f8, $f10, $f18 +/* 03B3D8 8003A7D8 46204120 */ cvt.s.d $f4, $f8 +/* 03B3DC 8003A7DC E6240004 */ swc1 $f4, 4($s1) +.L8003A7E0: +/* 03B3E0 8003A7E0 0C006E9D */ jal func_8001BA74 +/* 03B3E4 8003A7E4 27A40078 */ addiu $a0, $sp, 0x78 +/* 03B3E8 8003A7E8 8C480000 */ lw $t0, ($v0) +/* 03B3EC 8003A7EC 00000000 */ nop +/* 03B3F0 8003A7F0 1100005E */ beqz $t0, .L8003A96C +/* 03B3F4 8003A7F4 00000000 */ nop +/* 03B3F8 8003A7F8 8C420000 */ lw $v0, ($v0) +/* 03B3FC 8003A7FC C610000C */ lwc1 $f16, 0xc($s0) +/* 03B400 8003A800 C446000C */ lwc1 $f6, 0xc($v0) +/* 03B404 8003A804 C6120010 */ lwc1 $f18, 0x10($s0) +/* 03B408 8003A808 46103081 */ sub.s $f2, $f6, $f16 +/* 03B40C 8003A80C C44A0010 */ lwc1 $f10, 0x10($v0) +/* 03B410 8003A810 46021182 */ mul.s $f6, $f2, $f2 +/* 03B414 8003A814 46125001 */ sub.s $f0, $f10, $f18 +/* 03B418 8003A818 C6040014 */ lwc1 $f4, 0x14($s0) +/* 03B41C 8003A81C C4480014 */ lwc1 $f8, 0x14($v0) +/* 03B420 8003A820 46000402 */ mul.s $f16, $f0, $f0 +/* 03B424 8003A824 46044381 */ sub.s $f14, $f8, $f4 +/* 03B428 8003A828 460E7482 */ mul.s $f18, $f14, $f14 +/* 03B42C 8003A82C 46103280 */ add.s $f10, $f6, $f16 +/* 03B430 8003A830 0C0326B4 */ jal sqrtf +/* 03B434 8003A834 46125300 */ add.s $f12, $f10, $f18 +/* 03B438 8003A838 3C01447A */ li $at, 0x447A0000 # 1000.000000 +/* 03B43C 8003A83C 44816000 */ mtc1 $at, $f12 +/* 03B440 8003A840 00000000 */ nop +/* 03B444 8003A844 460C003C */ c.lt.s $f0, $f12 +/* 03B448 8003A848 00000000 */ nop +/* 03B44C 8003A84C 45000041 */ bc1f .L8003A954 +/* 03B450 8003A850 00000000 */ nop +/* 03B454 8003A854 46006081 */ sub.s $f2, $f12, $f0 +/* 03B458 8003A858 0C01A75F */ jal func_80069D7C +/* 03B45C 8003A85C E7A2005C */ swc1 $f2, 0x5c($sp) +/* 03B460 8003A860 C608000C */ lwc1 $f8, 0xc($s0) +/* 03B464 8003A864 C444000C */ lwc1 $f4, 0xc($v0) +/* 03B468 8003A868 C6060014 */ lwc1 $f6, 0x14($s0) +/* 03B46C 8003A86C C4500014 */ lwc1 $f16, 0x14($v0) +/* 03B470 8003A870 84460000 */ lh $a2, ($v0) +/* 03B474 8003A874 46044301 */ sub.s $f12, $f8, $f4 +/* 03B478 8003A878 0C002430 */ jal func_800090C0 +/* 03B47C 8003A87C 46103381 */ sub.s $f14, $f6, $f16 +/* 03B480 8003A880 3C0142FE */ li $at, 0x42FE0000 # 127.000000 +/* 03B484 8003A884 C7A2005C */ lwc1 $f2, 0x5c($sp) +/* 03B488 8003A888 44815000 */ mtc1 $at, $f10 +/* 03B48C 8003A88C 3C01447A */ li $at, 0x447A0000 # 1000.000000 +/* 03B490 8003A890 46025482 */ mul.s $f18, $f10, $f2 +/* 03B494 8003A894 44814000 */ mtc1 $at, $f8 +/* 03B498 8003A898 AFA20054 */ sw $v0, 0x54($sp) +/* 03B49C 8003A89C 2404000A */ li $a0, 10 +/* 03B4A0 8003A8A0 46089103 */ div.s $f4, $f18, $f8 +/* 03B4A4 8003A8A4 4449F800 */ cfc1 $t1, $31 +/* 03B4A8 8003A8A8 00000000 */ nop +/* 03B4AC 8003A8AC 35210003 */ ori $at, $t1, 3 +/* 03B4B0 8003A8B0 38210002 */ xori $at, $at, 2 +/* 03B4B4 8003A8B4 44C1F800 */ ctc1 $at, $31 +/* 03B4B8 8003A8B8 00000000 */ nop +/* 03B4BC 8003A8BC 460021A4 */ cvt.w.s $f6, $f4 +/* 03B4C0 8003A8C0 44033000 */ mfc1 $v1, $f6 +/* 03B4C4 8003A8C4 44C9F800 */ ctc1 $t1, $31 +/* 03B4C8 8003A8C8 306500FF */ andi $a1, $v1, 0xff +/* 03B4CC 8003A8CC AFA5003C */ sw $a1, 0x3c($sp) +/* 03B4D0 8003A8D0 0C00049A */ jal func_80001268 +/* 03B4D4 8003A8D4 AFA30048 */ sw $v1, 0x48($sp) +/* 03B4D8 8003A8D8 93A5003F */ lbu $a1, 0x3f($sp) +/* 03B4DC 8003A8DC 0C00049A */ jal func_80001268 +/* 03B4E0 8003A8E0 2404000B */ li $a0, 11 +/* 03B4E4 8003A8E4 93A5003F */ lbu $a1, 0x3f($sp) +/* 03B4E8 8003A8E8 0C00049A */ jal func_80001268 +/* 03B4EC 8003A8EC 2404000F */ li $a0, 15 +/* 03B4F0 8003A8F0 93A50057 */ lbu $a1, 0x57($sp) +/* 03B4F4 8003A8F4 2404000A */ li $a0, 10 +/* 03B4F8 8003A8F8 0C00046A */ jal func_800011A8 +/* 03B4FC 8003A8FC AFA5003C */ sw $a1, 0x3c($sp) +/* 03B500 8003A900 93A5003F */ lbu $a1, 0x3f($sp) +/* 03B504 8003A904 0C00046A */ jal func_800011A8 +/* 03B508 8003A908 2404000B */ li $a0, 11 +/* 03B50C 8003A90C 93A5003F */ lbu $a1, 0x3f($sp) +/* 03B510 8003A910 0C00046A */ jal func_800011A8 +/* 03B514 8003A914 2404000F */ li $a0, 15 +/* 03B518 8003A918 0C00045C */ jal func_80001170 +/* 03B51C 8003A91C 2404000A */ li $a0, 10 +/* 03B520 8003A920 0C00045C */ jal func_80001170 +/* 03B524 8003A924 2404000B */ li $a0, 11 +/* 03B528 8003A928 0C00045C */ jal func_80001170 +/* 03B52C 8003A92C 2404000F */ li $a0, 15 +/* 03B530 8003A930 8FAA0048 */ lw $t2, 0x48($sp) +/* 03B534 8003A934 240B007F */ li $t3, 127 +/* 03B538 8003A938 016A2823 */ subu $a1, $t3, $t2 +/* 03B53C 8003A93C 30AC00FF */ andi $t4, $a1, 0xff +/* 03B540 8003A940 01802825 */ move $a1, $t4 +/* 03B544 8003A944 0C00049A */ jal func_80001268 +/* 03B548 8003A948 24040003 */ li $a0, 3 +/* 03B54C 8003A94C 10000008 */ b .L8003A970 +/* 03B550 8003A950 82230036 */ lb $v1, 0x36($s1) +.L8003A954: +/* 03B554 8003A954 0C000445 */ jal func_80001114 +/* 03B558 8003A958 2404000A */ li $a0, 10 +/* 03B55C 8003A95C 0C000445 */ jal func_80001114 +/* 03B560 8003A960 2404000B */ li $a0, 11 +/* 03B564 8003A964 0C000445 */ jal func_80001114 +/* 03B568 8003A968 2404000F */ li $a0, 15 +.L8003A96C: +/* 03B56C 8003A96C 82230036 */ lb $v1, 0x36($s1) +.L8003A970: +/* 03B570 8003A970 8FA200B4 */ lw $v0, 0xb4($sp) +/* 03B574 8003A974 10600005 */ beqz $v1, .L8003A98C +/* 03B578 8003A978 24010001 */ li $at, 1 +/* 03B57C 8003A97C 10610039 */ beq $v1, $at, .L8003AA64 +/* 03B580 8003A980 00000000 */ nop +/* 03B584 8003A984 1000005A */ b .L8003AAF0 +/* 03B588 8003A988 00000000 */ nop +.L8003A98C: +/* 03B58C 8003A98C 96230034 */ lhu $v1, 0x34($s1) +/* 03B590 8003A990 000269C0 */ sll $t5, $v0, 7 +/* 03B594 8003A994 01A3082A */ slt $at, $t5, $v1 +/* 03B598 8003A998 1020000D */ beqz $at, .L8003A9D0 +/* 03B59C 8003A99C 2404000E */ li $a0, 14 +/* 03B5A0 8003A9A0 006D7023 */ subu $t6, $v1, $t5 +/* 03B5A4 8003A9A4 A62E0034 */ sh $t6, 0x34($s1) +/* 03B5A8 8003A9A8 0C00045C */ jal func_80001170 +/* 03B5AC 8003A9AC 2404000E */ li $a0, 14 +/* 03B5B0 8003A9B0 96250034 */ lhu $a1, 0x34($s1) +/* 03B5B4 8003A9B4 2404000E */ li $a0, 14 +/* 03B5B8 8003A9B8 00057A03 */ sra $t7, $a1, 8 +/* 03B5BC 8003A9BC 0C00049A */ jal func_80001268 +/* 03B5C0 8003A9C0 31E500FF */ andi $a1, $t7, 0xff +/* 03B5C4 8003A9C4 AE200030 */ sw $zero, 0x30($s1) +/* 03B5C8 8003A9C8 1000000C */ b .L8003A9FC +/* 03B5CC 8003A9CC 00001825 */ move $v1, $zero +.L8003A9D0: +/* 03B5D0 8003A9D0 0C000445 */ jal func_80001114 +/* 03B5D4 8003A9D4 A6200034 */ sh $zero, 0x34($s1) +/* 03B5D8 8003A9D8 8E230030 */ lw $v1, 0x30($s1) +/* 03B5DC 8003A9DC 24040258 */ li $a0, 600 +/* 03B5E0 8003A9E0 14600006 */ bnez $v1, .L8003A9FC +/* 03B5E4 8003A9E4 00000000 */ nop +/* 03B5E8 8003A9E8 0C01BE53 */ jal func_8006F94C +/* 03B5EC 8003A9EC 24050384 */ li $a1, 900 +/* 03B5F0 8003A9F0 AE220030 */ sw $v0, 0x30($s1) +/* 03B5F4 8003A9F4 AE20002C */ sw $zero, 0x2c($s1) +/* 03B5F8 8003A9F8 00401825 */ move $v1, $v0 +.L8003A9FC: +/* 03B5FC 8003A9FC 10600016 */ beqz $v1, .L8003AA58 +/* 03B600 8003AA00 00000000 */ nop +/* 03B604 8003AA04 0C000417 */ jal func_8000105C +/* 03B608 8003AA08 00000000 */ nop +/* 03B60C 8003AA0C 2401BFFF */ li $at, -16385 +/* 03B610 8003AA10 0041C824 */ and $t9, $v0, $at +/* 03B614 8003AA14 2401000B */ li $at, 11 +/* 03B618 8003AA18 1721000F */ bne $t9, $at, .L8003AA58 +/* 03B61C 8003AA1C 00000000 */ nop +/* 03B620 8003AA20 8E28002C */ lw $t0, 0x2c($s1) +/* 03B624 8003AA24 8FA900B4 */ lw $t1, 0xb4($sp) +/* 03B628 8003AA28 8E2A0030 */ lw $t2, 0x30($s1) +/* 03B62C 8003AA2C 01095821 */ addu $t3, $t0, $t1 +/* 03B630 8003AA30 014B082A */ slt $at, $t2, $t3 +/* 03B634 8003AA34 1020002E */ beqz $at, .L8003AAF0 +/* 03B638 8003AA38 AE2B002C */ sw $t3, 0x2c($s1) +/* 03B63C 8003AA3C 240D0001 */ li $t5, 1 +/* 03B640 8003AA40 A22D0036 */ sb $t5, 0x36($s1) +/* 03B644 8003AA44 24040258 */ li $a0, 600 +/* 03B648 8003AA48 0C01BE53 */ jal func_8006F94C +/* 03B64C 8003AA4C 24050384 */ li $a1, 900 +/* 03B650 8003AA50 10000027 */ b .L8003AAF0 +/* 03B654 8003AA54 AE22002C */ sw $v0, 0x2c($s1) +.L8003AA58: +/* 03B658 8003AA58 AE20002C */ sw $zero, 0x2c($s1) +/* 03B65C 8003AA5C 10000024 */ b .L8003AAF0 +/* 03B660 8003AA60 AE200030 */ sw $zero, 0x30($s1) +.L8003AA64: +/* 03B664 8003AA64 0C000417 */ jal func_8000105C +/* 03B668 8003AA68 00000000 */ nop +/* 03B66C 8003AA6C 2401BFFF */ li $at, -16385 +/* 03B670 8003AA70 00417024 */ and $t6, $v0, $at +/* 03B674 8003AA74 2401000B */ li $at, 11 +/* 03B678 8003AA78 15C1001A */ bne $t6, $at, .L8003AAE4 +/* 03B67C 8003AA7C 00000000 */ nop +/* 03B680 8003AA80 8FA200B4 */ lw $v0, 0xb4($sp) +/* 03B684 8003AA84 962F0034 */ lhu $t7, 0x34($s1) +/* 03B688 8003AA88 0002C1C0 */ sll $t8, $v0, 7 +/* 03B68C 8003AA8C 01F8C821 */ addu $t9, $t7, $t8 +/* 03B690 8003AA90 3328FFFF */ andi $t0, $t9, 0xffff +/* 03B694 8003AA94 29017F01 */ slti $at, $t0, 0x7f01 +/* 03B698 8003AA98 14200003 */ bnez $at, .L8003AAA8 +/* 03B69C 8003AA9C A6390034 */ sh $t9, 0x34($s1) +/* 03B6A0 8003AAA0 24097F00 */ li $t1, 32512 +/* 03B6A4 8003AAA4 A6290034 */ sh $t1, 0x34($s1) +.L8003AAA8: +/* 03B6A8 8003AAA8 8E2B002C */ lw $t3, 0x2c($s1) +/* 03B6AC 8003AAAC 00000000 */ nop +/* 03B6B0 8003AAB0 01625023 */ subu $t2, $t3, $v0 +/* 03B6B4 8003AAB4 05410002 */ bgez $t2, .L8003AAC0 +/* 03B6B8 8003AAB8 AE2A002C */ sw $t2, 0x2c($s1) +/* 03B6BC 8003AABC A2200036 */ sb $zero, 0x36($s1) +.L8003AAC0: +/* 03B6C0 8003AAC0 0C00045C */ jal func_80001170 +/* 03B6C4 8003AAC4 2404000E */ li $a0, 14 +/* 03B6C8 8003AAC8 96250034 */ lhu $a1, 0x34($s1) +/* 03B6CC 8003AACC 2404000E */ li $a0, 14 +/* 03B6D0 8003AAD0 00056A03 */ sra $t5, $a1, 8 +/* 03B6D4 8003AAD4 0C00049A */ jal func_80001268 +/* 03B6D8 8003AAD8 31A500FF */ andi $a1, $t5, 0xff +/* 03B6DC 8003AADC 10000004 */ b .L8003AAF0 +/* 03B6E0 8003AAE0 00000000 */ nop +.L8003AAE4: +/* 03B6E4 8003AAE4 A2200036 */ sb $zero, 0x36($s1) +/* 03B6E8 8003AAE8 AE20002C */ sw $zero, 0x2c($s1) +/* 03B6EC 8003AAEC AE200030 */ sw $zero, 0x30($s1) +.L8003AAF0: +/* 03B6F0 8003AAF0 0C000417 */ jal func_8000105C +/* 03B6F4 8003AAF4 00000000 */ nop +/* 03B6F8 8003AAF8 304FBFFF */ andi $t7, $v0, 0xbfff +/* 03B6FC 8003AAFC A62F0028 */ sh $t7, 0x28($s1) +.L8003AB00: +/* 03B700 8003AB00 C7B00098 */ lwc1 $f16, 0x98($sp) +.L8003AB04: +/* 03B704 8003AB04 8604002E */ lh $a0, 0x2e($s0) +/* 03B708 8003AB08 8E05000C */ lw $a1, 0xc($s0) +/* 03B70C 8003AB0C 8E060014 */ lw $a2, 0x14($s0) +/* 03B710 8003AB10 27A70094 */ addiu $a3, $sp, 0x94 +/* 03B714 8003AB14 0C00AC3D */ jal func_8002B0F4 +/* 03B718 8003AB18 E6100010 */ swc1 $f16, 0x10($s0) +/* 03B71C 8003AB1C 44800800 */ mtc1 $zero, $f1 +/* 03B720 8003AB20 44800000 */ mtc1 $zero, $f0 +/* 03B724 8003AB24 1040001C */ beqz $v0, .L8003AB98 +/* 03B728 8003AB28 2446FFFF */ addiu $a2, $v0, -1 +/* 03B72C 8003AB2C 04C0001A */ bltz $a2, .L8003AB98 +/* 03B730 8003AB30 00062080 */ sll $a0, $a2, 2 +/* 03B734 8003AB34 2406000B */ li $a2, 11 +/* 03B738 8003AB38 2405000E */ li $a1, 14 +/* 03B73C 8003AB3C 8FB80094 */ lw $t8, 0x94($sp) +.L8003AB40: +/* 03B740 8003AB40 00000000 */ nop +/* 03B744 8003AB44 0304C821 */ addu $t9, $t8, $a0 +/* 03B748 8003AB48 8F220000 */ lw $v0, ($t9) +/* 03B74C 8003AB4C 2484FFFC */ addiu $a0, $a0, -4 +/* 03B750 8003AB50 80430010 */ lb $v1, 0x10($v0) +/* 03B754 8003AB54 00000000 */ nop +/* 03B758 8003AB58 10C3000D */ beq $a2, $v1, .L8003AB90 +/* 03B75C 8003AB5C 00000000 */ nop +/* 03B760 8003AB60 10A3000B */ beq $a1, $v1, .L8003AB90 +/* 03B764 8003AB64 00000000 */ nop +/* 03B768 8003AB68 C44A0008 */ lwc1 $f10, 8($v0) +/* 03B76C 8003AB6C 00000000 */ nop +/* 03B770 8003AB70 460054A1 */ cvt.d.s $f18, $f10 +/* 03B774 8003AB74 4632003C */ c.lt.d $f0, $f18 +/* 03B778 8003AB78 00000000 */ nop +/* 03B77C 8003AB7C 45000004 */ bc1f .L8003AB90 +/* 03B780 8003AB80 00000000 */ nop +/* 03B784 8003AB84 C4480000 */ lwc1 $f8, ($v0) +/* 03B788 8003AB88 00000000 */ nop +/* 03B78C 8003AB8C E6080010 */ swc1 $f8, 0x10($s0) +.L8003AB90: +/* 03B790 8003AB90 0481FFEB */ bgez $a0, .L8003AB40 +/* 03B794 8003AB94 8FB80094 */ lw $t8, 0x94($sp) +.L8003AB98: +/* 03B798 8003AB98 8E080078 */ lw $t0, 0x78($s0) +/* 03B79C 8003AB9C A6000002 */ sh $zero, 2($s0) +/* 03B7A0 8003ABA0 11000004 */ beqz $t0, .L8003ABB4 +/* 03B7A4 8003ABA4 A6000004 */ sh $zero, 4($s0) +/* 03B7A8 8003ABA8 C6040010 */ lwc1 $f4, 0x10($s0) +/* 03B7AC 8003ABAC 3C018012 */ lui $at, %hi(D_8011D4D0) # $at, 0x8012 +/* 03B7B0 8003ABB0 E424D4D0 */ swc1 $f4, %lo(D_8011D4D0)($at) +.L8003ABB4: +/* 03B7B4 8003ABB4 83A9006B */ lb $t1, 0x6b($sp) +/* 03B7B8 8003ABB8 2407000C */ li $a3, 12 +/* 03B7BC 8003ABBC 11200009 */ beqz $t1, .L8003ABE4 +/* 03B7C0 8003ABC0 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 03B7C4 8003ABC4 C60C000C */ lwc1 $f12, 0xc($s0) +/* 03B7C8 8003ABC8 C60E0010 */ lwc1 $f14, 0x10($s0) +/* 03B7CC 8003ABCC 8E060014 */ lw $a2, 0x14($s0) +/* 03B7D0 8003ABD0 44813000 */ mtc1 $at, $f6 +/* 03B7D4 8003ABD4 AFA00018 */ sw $zero, 0x18($sp) +/* 03B7D8 8003ABD8 AFA00010 */ sw $zero, 0x10($sp) +/* 03B7DC 8003ABDC 0C00FF11 */ jal func_8003FC44 +/* 03B7E0 8003ABE0 E7A60014 */ swc1 $f6, 0x14($sp) +.L8003ABE4: +/* 03B7E4 8003ABE4 C6300004 */ lwc1 $f16, 4($s1) +/* 03B7E8 8003ABE8 02002025 */ move $a0, $s0 +/* 03B7EC 8003ABEC 460082A1 */ cvt.d.s $f10, $f16 +/* 03B7F0 8003ABF0 444BF800 */ cfc1 $t3, $31 +/* 03B7F4 8003ABF4 00000000 */ nop +/* 03B7F8 8003ABF8 35610003 */ ori $at, $t3, 3 +/* 03B7FC 8003ABFC 38210002 */ xori $at, $at, 2 +/* 03B800 8003AC00 44C1F800 */ ctc1 $at, $31 +/* 03B804 8003AC04 00000000 */ nop +/* 03B808 8003AC08 462054A4 */ cvt.w.d $f18, $f10 +/* 03B80C 8003AC0C 440A9000 */ mfc1 $t2, $f18 +/* 03B810 8003AC10 44CBF800 */ ctc1 $t3, $31 +/* 03B814 8003AC14 0C018703 */ jal func_80061C0C +/* 03B818 8003AC18 A60A0018 */ sh $t2, 0x18($s0) +/* 03B81C 8003AC1C 8FA500B4 */ lw $a1, 0xb4($sp) +/* 03B820 8003AC20 0C02BF0F */ jal func_800AFC3C +/* 03B824 8003AC24 02002025 */ move $a0, $s0 +/* 03B828 8003AC28 8FBF002C */ lw $ra, 0x2c($sp) +/* 03B82C 8003AC2C 8FB00024 */ lw $s0, 0x24($sp) +/* 03B830 8003AC30 8FB10028 */ lw $s1, 0x28($sp) +/* 03B834 8003AC34 03E00008 */ jr $ra +/* 03B838 8003AC38 27BD00B0 */ addiu $sp, $sp, 0xb0 + diff --git a/asm/non_matchings/unknown_032760/func_8003AC3C.s b/asm/non_matchings/unknown_032760/func_8003AC3C.s new file mode 100644 index 00000000..0baa22dd --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003AC3C.s @@ -0,0 +1,29 @@ +glabel func_8003AC3C +/* 03B83C 8003AC3C 3C078012 */ lui $a3, %hi(D_8011D4D4) # $a3, 0x8012 +/* 03B840 8003AC40 24E7D4D4 */ addiu $a3, %lo(D_8011D4D4) # addiu $a3, $a3, -0x2b2c +/* 03B844 8003AC44 8CE60000 */ lw $a2, ($a3) +/* 03B848 8003AC48 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 03B84C 8003AC4C AFBF0014 */ sw $ra, 0x14($sp) +/* 03B850 8003AC50 10C0000A */ beqz $a2, .L8003AC7C +/* 03B854 8003AC54 AFA40018 */ sw $a0, 0x18($sp) +/* 03B858 8003AC58 30AE0001 */ andi $t6, $a1, 1 +/* 03B85C 8003AC5C 11C00007 */ beqz $t6, .L8003AC7C +/* 03B860 8003AC60 00000000 */ nop +/* 03B864 8003AC64 0C001223 */ jal func_8000488C +/* 03B868 8003AC68 00C02025 */ move $a0, $a2 +/* 03B86C 8003AC6C 3C078012 */ lui $a3, %hi(D_8011D4D4) # $a3, 0x8012 +/* 03B870 8003AC70 24E7D4D4 */ addiu $a3, %lo(D_8011D4D4) # addiu $a3, $a3, -0x2b2c +/* 03B874 8003AC74 ACE00000 */ sw $zero, ($a3) +/* 03B878 8003AC78 00003025 */ move $a2, $zero +.L8003AC7C: +/* 03B87C 8003AC7C 14C00005 */ bnez $a2, .L8003AC94 +/* 03B880 8003AC80 8FBF0014 */ lw $ra, 0x14($sp) +/* 03B884 8003AC84 97A4001A */ lhu $a0, 0x1a($sp) +/* 03B888 8003AC88 0C000741 */ jal func_80001D04 +/* 03B88C 8003AC8C 00E02825 */ move $a1, $a3 +/* 03B890 8003AC90 8FBF0014 */ lw $ra, 0x14($sp) +.L8003AC94: +/* 03B894 8003AC94 27BD0018 */ addiu $sp, $sp, 0x18 +/* 03B898 8003AC98 03E00008 */ jr $ra +/* 03B89C 8003AC9C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003ACA0.s b/asm/non_matchings/unknown_032760/func_8003ACA0.s new file mode 100644 index 00000000..920594f0 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003ACA0.s @@ -0,0 +1,5 @@ +glabel func_8003ACA0 +/* 03B8A0 8003ACA0 AFA40000 */ sw $a0, ($sp) +/* 03B8A4 8003ACA4 03E00008 */ jr $ra +/* 03B8A8 8003ACA8 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_8003ACAC.s b/asm/non_matchings/unknown_032760/func_8003ACAC.s new file mode 100644 index 00000000..ac09dfa3 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003ACAC.s @@ -0,0 +1,6 @@ +glabel func_8003ACAC +/* 03B8AC 8003ACAC 3C018012 */ lui $at, %hi(D_8011D4D0) # $at, 0x8012 +/* 03B8B0 8003ACB0 C420D4D0 */ lwc1 $f0, %lo(D_8011D4D0)($at) +/* 03B8B4 8003ACB4 03E00008 */ jr $ra +/* 03B8B8 8003ACB8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003ACBC.s b/asm/non_matchings/unknown_032760/func_8003ACBC.s new file mode 100644 index 00000000..9b882233 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003ACBC.s @@ -0,0 +1,30 @@ +glabel func_8003ACBC +/* 03B8BC 8003ACBC 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 03B8C0 8003ACC0 AFBF0014 */ sw $ra, 0x14($sp) +/* 03B8C4 8003ACC4 AFA60020 */ sw $a2, 0x20($sp) +/* 03B8C8 8003ACC8 90AF0008 */ lbu $t7, 8($a1) +/* 03B8CC 8003ACCC 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 03B8D0 8003ACD0 448F2000 */ mtc1 $t7, $f4 +/* 03B8D4 8003ACD4 44811000 */ mtc1 $at, $f2 +/* 03B8D8 8003ACD8 46802020 */ cvt.s.w $f0, $f4 +/* 03B8DC 8003ACDC 3C014280 */ li $at, 0x42800000 # 64.000000 +/* 03B8E0 8003ACE0 44813000 */ mtc1 $at, $f6 +/* 03B8E4 8003ACE4 4602003C */ c.lt.s $f0, $f2 +/* 03B8E8 8003ACE8 00000000 */ nop +/* 03B8EC 8003ACEC 45000003 */ bc1f .L8003ACFC +/* 03B8F0 8003ACF0 00000000 */ nop +/* 03B8F4 8003ACF4 46001006 */ mov.s $f0, $f2 +/* 03B8F8 8003ACF8 00000000 */ nop +.L8003ACFC: +/* 03B8FC 8003ACFC 46060003 */ div.s $f0, $f0, $f6 +/* 03B900 8003AD00 E4800008 */ swc1 $f0, 8($a0) +/* 03B904 8003AD04 90B9000A */ lbu $t9, 0xa($a1) +/* 03B908 8003AD08 00000000 */ nop +/* 03B90C 8003AD0C 00194280 */ sll $t0, $t9, 0xa +/* 03B910 8003AD10 0C0044E4 */ jal func_80011390 +/* 03B914 8003AD14 A4880000 */ sh $t0, ($a0) +/* 03B918 8003AD18 8FBF0014 */ lw $ra, 0x14($sp) +/* 03B91C 8003AD1C 27BD0018 */ addiu $sp, $sp, 0x18 +/* 03B920 8003AD20 03E00008 */ jr $ra +/* 03B924 8003AD24 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003AD28.s b/asm/non_matchings/unknown_032760/func_8003AD28.s new file mode 100644 index 00000000..ede2fbc6 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003AD28.s @@ -0,0 +1,5 @@ +glabel func_8003AD28 +/* 03B928 8003AD28 AFA40000 */ sw $a0, ($sp) +/* 03B92C 8003AD2C 03E00008 */ jr $ra +/* 03B930 8003AD30 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_8003AD34.s b/asm/non_matchings/unknown_032760/func_8003AD34.s new file mode 100644 index 00000000..57d3406b --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003AD34.s @@ -0,0 +1,74 @@ +glabel func_8003AD34 +/* 03B934 8003AD34 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 03B938 8003AD38 AFBF0014 */ sw $ra, 0x14($sp) +/* 03B93C 8003AD3C 90AF0008 */ lbu $t7, 8($a1) +/* 03B940 8003AD40 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 03B944 8003AD44 448F2000 */ mtc1 $t7, $f4 +/* 03B948 8003AD48 44811000 */ mtc1 $at, $f2 +/* 03B94C 8003AD4C 46802020 */ cvt.s.w $f0, $f4 +/* 03B950 8003AD50 3C014300 */ li $at, 0x43000000 # 128.000000 +/* 03B954 8003AD54 44813000 */ mtc1 $at, $f6 +/* 03B958 8003AD58 4602003C */ c.lt.s $f0, $f2 +/* 03B95C 8003AD5C 00803025 */ move $a2, $a0 +/* 03B960 8003AD60 45000003 */ bc1f .L8003AD70 +/* 03B964 8003AD64 00000000 */ nop +/* 03B968 8003AD68 46001006 */ mov.s $f0, $f2 +/* 03B96C 8003AD6C 00000000 */ nop +.L8003AD70: +/* 03B970 8003AD70 46060003 */ div.s $f0, $f0, $f6 +/* 03B974 8003AD74 8CC20064 */ lw $v0, 0x64($a2) +/* 03B978 8003AD78 E4C00008 */ swc1 $f0, 8($a2) +/* 03B97C 8003AD7C 90B90009 */ lbu $t9, 9($a1) +/* 03B980 8003AD80 00000000 */ nop +/* 03B984 8003AD84 00194280 */ sll $t0, $t9, 0xa +/* 03B988 8003AD88 A4C80000 */ sh $t0, ($a2) +/* 03B98C 8003AD8C 84C40000 */ lh $a0, ($a2) +/* 03B990 8003AD90 AFA60020 */ sw $a2, 0x20($sp) +/* 03B994 8003AD94 AFA50024 */ sw $a1, 0x24($sp) +/* 03B998 8003AD98 0C01C1F1 */ jal func_800707C4 +/* 03B99C 8003AD9C AFA20018 */ sw $v0, 0x18($sp) +/* 03B9A0 8003ADA0 8FA20018 */ lw $v0, 0x18($sp) +/* 03B9A4 8003ADA4 8FA60020 */ lw $a2, 0x20($sp) +/* 03B9A8 8003ADA8 44804000 */ mtc1 $zero, $f8 +/* 03B9AC 8003ADAC E4400000 */ swc1 $f0, ($v0) +/* 03B9B0 8003ADB0 E4480004 */ swc1 $f8, 4($v0) +/* 03B9B4 8003ADB4 84C40000 */ lh $a0, ($a2) +/* 03B9B8 8003ADB8 0C01C1FE */ jal func_800707F8 +/* 03B9BC 8003ADBC 00000000 */ nop +/* 03B9C0 8003ADC0 8FA20018 */ lw $v0, 0x18($sp) +/* 03B9C4 8003ADC4 8FA60020 */ lw $a2, 0x20($sp) +/* 03B9C8 8003ADC8 8FA50024 */ lw $a1, 0x24($sp) +/* 03B9CC 8003ADCC E4400008 */ swc1 $f0, 8($v0) +/* 03B9D0 8003ADD0 C44A0000 */ lwc1 $f10, ($v0) +/* 03B9D4 8003ADD4 C4D0000C */ lwc1 $f16, 0xc($a2) +/* 03B9D8 8003ADD8 C4C40014 */ lwc1 $f4, 0x14($a2) +/* 03B9DC 8003ADDC 46105482 */ mul.s $f18, $f10, $f16 +/* 03B9E0 8003ADE0 240B0002 */ li $t3, 2 +/* 03B9E4 8003ADE4 46040182 */ mul.s $f6, $f0, $f4 +/* 03B9E8 8003ADE8 46069200 */ add.s $f8, $f18, $f6 +/* 03B9EC 8003ADEC 46004287 */ neg.s $f10, $f8 +/* 03B9F0 8003ADF0 E44A000C */ swc1 $f10, 0xc($v0) +/* 03B9F4 8003ADF4 90A90008 */ lbu $t1, 8($a1) +/* 03B9F8 8003ADF8 00000000 */ nop +/* 03B9FC 8003ADFC AC490010 */ sw $t1, 0x10($v0) +/* 03BA00 8003AE00 90AA000A */ lbu $t2, 0xa($a1) +/* 03BA04 8003AE04 00000000 */ nop +/* 03BA08 8003AE08 A04A0014 */ sb $t2, 0x14($v0) +/* 03BA0C 8003AE0C 8CCC004C */ lw $t4, 0x4c($a2) +/* 03BA10 8003AE10 00000000 */ nop +/* 03BA14 8003AE14 A58B0014 */ sh $t3, 0x14($t4) +/* 03BA18 8003AE18 8CCD004C */ lw $t5, 0x4c($a2) +/* 03BA1C 8003AE1C 00000000 */ nop +/* 03BA20 8003AE20 A1A00011 */ sb $zero, 0x11($t5) +/* 03BA24 8003AE24 8CCF004C */ lw $t7, 0x4c($a2) +/* 03BA28 8003AE28 90AE0008 */ lbu $t6, 8($a1) +/* 03BA2C 8003AE2C 00000000 */ nop +/* 03BA30 8003AE30 A1EE0010 */ sb $t6, 0x10($t7) +/* 03BA34 8003AE34 8CD8004C */ lw $t8, 0x4c($a2) +/* 03BA38 8003AE38 00000000 */ nop +/* 03BA3C 8003AE3C A3000012 */ sb $zero, 0x12($t8) +/* 03BA40 8003AE40 8FBF0014 */ lw $ra, 0x14($sp) +/* 03BA44 8003AE44 27BD0020 */ addiu $sp, $sp, 0x20 +/* 03BA48 8003AE48 03E00008 */ jr $ra +/* 03BA4C 8003AE4C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003AE50.s b/asm/non_matchings/unknown_032760/func_8003AE50.s new file mode 100644 index 00000000..3b7da49a --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003AE50.s @@ -0,0 +1,141 @@ +glabel func_8003AE50 +/* 03BA50 8003AE50 27BDFF80 */ addiu $sp, $sp, -0x80 +/* 03BA54 8003AE54 AFBF0044 */ sw $ra, 0x44($sp) +/* 03BA58 8003AE58 AFB70040 */ sw $s7, 0x40($sp) +/* 03BA5C 8003AE5C AFB6003C */ sw $s6, 0x3c($sp) +/* 03BA60 8003AE60 AFB50038 */ sw $s5, 0x38($sp) +/* 03BA64 8003AE64 AFB40034 */ sw $s4, 0x34($sp) +/* 03BA68 8003AE68 AFB30030 */ sw $s3, 0x30($sp) +/* 03BA6C 8003AE6C AFB2002C */ sw $s2, 0x2c($sp) +/* 03BA70 8003AE70 AFB10028 */ sw $s1, 0x28($sp) +/* 03BA74 8003AE74 AFB00024 */ sw $s0, 0x24($sp) +/* 03BA78 8003AE78 E7B70018 */ swc1 $f23, 0x18($sp) +/* 03BA7C 8003AE7C E7B6001C */ swc1 $f22, 0x1c($sp) +/* 03BA80 8003AE80 E7B50010 */ swc1 $f21, 0x10($sp) +/* 03BA84 8003AE84 E7B40014 */ swc1 $f20, 0x14($sp) +/* 03BA88 8003AE88 AFA50084 */ sw $a1, 0x84($sp) +/* 03BA8C 8003AE8C 8C920064 */ lw $s2, 0x64($a0) +/* 03BA90 8003AE90 8C8E004C */ lw $t6, 0x4c($a0) +/* 03BA94 8003AE94 8E420010 */ lw $v0, 0x10($s2) +/* 03BA98 8003AE98 91CF0013 */ lbu $t7, 0x13($t6) +/* 03BA9C 8003AE9C 00809825 */ move $s3, $a0 +/* 03BAA0 8003AEA0 01E2082A */ slt $at, $t7, $v0 +/* 03BAA4 8003AEA4 1020005D */ beqz $at, .L8003B01C +/* 03BAA8 8003AEA8 27A40074 */ addiu $a0, $sp, 0x74 +/* 03BAAC 8003AEAC 44822000 */ mtc1 $v0, $f4 +/* 03BAB0 8003AEB0 0C006E9D */ jal func_8001BA74 +/* 03BAB4 8003AEB4 468025A0 */ cvt.s.w $f22, $f4 +/* 03BAB8 8003AEB8 8FB80074 */ lw $t8, 0x74($sp) +/* 03BABC 8003AEBC 0000A025 */ move $s4, $zero +/* 03BAC0 8003AEC0 1B000056 */ blez $t8, .L8003B01C +/* 03BAC4 8003AEC4 0040A825 */ move $s5, $v0 +/* 03BAC8 8003AEC8 4480A000 */ mtc1 $zero, $f20 +/* 03BACC 8003AECC 241700FF */ li $s7, 255 +/* 03BAD0 8003AED0 24160004 */ li $s6, 4 +.L8003AED4: +/* 03BAD4 8003AED4 8EB00000 */ lw $s0, ($s5) +/* 03BAD8 8003AED8 92590014 */ lbu $t9, 0x14($s2) +/* 03BADC 8003AEDC 8E110064 */ lw $s1, 0x64($s0) +/* 03BAE0 8003AEE0 00000000 */ nop +/* 03BAE4 8003AEE4 822801D6 */ lb $t0, 0x1d6($s1) +/* 03BAE8 8003AEE8 00000000 */ nop +/* 03BAEC 8003AEEC 13280047 */ beq $t9, $t0, .L8003B00C +/* 03BAF0 8003AEF0 8FAD0074 */ lw $t5, 0x74($sp) +/* 03BAF4 8003AEF4 C606000C */ lwc1 $f6, 0xc($s0) +/* 03BAF8 8003AEF8 C668000C */ lwc1 $f8, 0xc($s3) +/* 03BAFC 8003AEFC C60A0010 */ lwc1 $f10, 0x10($s0) +/* 03BB00 8003AF00 46083001 */ sub.s $f0, $f6, $f8 +/* 03BB04 8003AF04 C6700010 */ lwc1 $f16, 0x10($s3) +/* 03BB08 8003AF08 46000182 */ mul.s $f6, $f0, $f0 +/* 03BB0C 8003AF0C 46105081 */ sub.s $f2, $f10, $f16 +/* 03BB10 8003AF10 C6120014 */ lwc1 $f18, 0x14($s0) +/* 03BB14 8003AF14 C6640014 */ lwc1 $f4, 0x14($s3) +/* 03BB18 8003AF18 46021202 */ mul.s $f8, $f2, $f2 +/* 03BB1C 8003AF1C 46049381 */ sub.s $f14, $f18, $f4 +/* 03BB20 8003AF20 460E7402 */ mul.s $f16, $f14, $f14 +/* 03BB24 8003AF24 46083280 */ add.s $f10, $f6, $f8 +/* 03BB28 8003AF28 0C0326B4 */ jal sqrtf +/* 03BB2C 8003AF2C 46105300 */ add.s $f12, $f10, $f16 +/* 03BB30 8003AF30 4616003C */ c.lt.s $f0, $f22 +/* 03BB34 8003AF34 00000000 */ nop +/* 03BB38 8003AF38 45000034 */ bc1f .L8003B00C +/* 03BB3C 8003AF3C 8FAD0074 */ lw $t5, 0x74($sp) +/* 03BB40 8003AF40 C6520000 */ lwc1 $f18, ($s2) +/* 03BB44 8003AF44 C604000C */ lwc1 $f4, 0xc($s0) +/* 03BB48 8003AF48 C6480008 */ lwc1 $f8, 8($s2) +/* 03BB4C 8003AF4C 46049182 */ mul.s $f6, $f18, $f4 +/* 03BB50 8003AF50 C60A0014 */ lwc1 $f10, 0x14($s0) +/* 03BB54 8003AF54 C644000C */ lwc1 $f4, 0xc($s2) +/* 03BB58 8003AF58 460A4402 */ mul.s $f16, $f8, $f10 +/* 03BB5C 8003AF5C 46103480 */ add.s $f18, $f6, $f16 +/* 03BB60 8003AF60 46049000 */ add.s $f0, $f18, $f4 +/* 03BB64 8003AF64 4614003C */ c.lt.s $f0, $f20 +/* 03BB68 8003AF68 00000000 */ nop +/* 03BB6C 8003AF6C 45000027 */ bc1f .L8003B00C +/* 03BB70 8003AF70 8FAD0074 */ lw $t5, 0x74($sp) +/* 03BB74 8003AF74 A22001E0 */ sb $zero, 0x1e0($s1) +/* 03BB78 8003AF78 92420014 */ lbu $v0, 0x14($s2) +/* 03BB7C 8003AF7C 00000000 */ nop +/* 03BB80 8003AF80 14400004 */ bnez $v0, .L8003AF94 +/* 03BB84 8003AF84 00000000 */ nop +/* 03BB88 8003AF88 822901D7 */ lb $t1, 0x1d7($s1) +/* 03BB8C 8003AF8C 10000002 */ b .L8003AF98 +/* 03BB90 8003AF90 A22901D6 */ sb $t1, 0x1d6($s1) +.L8003AF94: +/* 03BB94 8003AF94 A22201D6 */ sb $v0, 0x1d6($s1) +.L8003AF98: +/* 03BB98 8003AF98 924A0014 */ lbu $t2, 0x14($s2) +/* 03BB9C 8003AF9C 00000000 */ nop +/* 03BBA0 8003AFA0 16CA0016 */ bne $s6, $t2, .L8003AFFC +/* 03BBA4 8003AFA4 00000000 */ nop +/* 03BBA8 8003AFA8 822B01D8 */ lb $t3, 0x1d8($s1) +/* 03BBAC 8003AFAC 00000000 */ nop +/* 03BBB0 8003AFB0 15600004 */ bnez $t3, .L8003AFC4 +/* 03BBB4 8003AFB4 00000000 */ nop +/* 03BBB8 8003AFB8 86240000 */ lh $a0, ($s1) +/* 03BBBC 8003AFBC 0C01C8D2 */ jal func_80072348 +/* 03BBC0 8003AFC0 24050008 */ li $a1, 8 +.L8003AFC4: +/* 03BBC4 8003AFC4 C60C000C */ lwc1 $f12, 0xc($s0) +/* 03BBC8 8003AFC8 C60E0010 */ lwc1 $f14, 0x10($s0) +/* 03BBCC 8003AFCC 8E060014 */ lw $a2, 0x14($s0) +/* 03BBD0 8003AFD0 0C007149 */ jal func_8001C524 +/* 03BBD4 8003AFD4 00003825 */ move $a3, $zero +/* 03BBD8 8003AFD8 10570005 */ beq $v0, $s7, .L8003AFF0 +/* 03BBDC 8003AFDC 00402025 */ move $a0, $v0 +/* 03BBE0 8003AFE0 0C007485 */ jal func_8001D214 +/* 03BBE4 8003AFE4 00000000 */ nop +/* 03BBE8 8003AFE8 10000002 */ b .L8003AFF4 +/* 03BBEC 8003AFEC AE220158 */ sw $v0, 0x158($s1) +.L8003AFF0: +/* 03BBF0 8003AFF0 AE200158 */ sw $zero, 0x158($s1) +.L8003AFF4: +/* 03BBF4 8003AFF4 AE20015C */ sw $zero, 0x15c($s1) +/* 03BBF8 8003AFF8 A620019A */ sh $zero, 0x19a($s1) +.L8003AFFC: +/* 03BBFC 8003AFFC 866C0000 */ lh $t4, ($s3) +/* 03BC00 8003B000 00000000 */ nop +/* 03BC04 8003B004 A62C0198 */ sh $t4, 0x198($s1) +/* 03BC08 8003B008 8FAD0074 */ lw $t5, 0x74($sp) +.L8003B00C: +/* 03BC0C 8003B00C 26940001 */ addiu $s4, $s4, 1 +/* 03BC10 8003B010 028D082A */ slt $at, $s4, $t5 +/* 03BC14 8003B014 1420FFAF */ bnez $at, .L8003AED4 +/* 03BC18 8003B018 26B50004 */ addiu $s5, $s5, 4 +.L8003B01C: +/* 03BC1C 8003B01C 8FBF0044 */ lw $ra, 0x44($sp) +/* 03BC20 8003B020 C7B50010 */ lwc1 $f21, 0x10($sp) +/* 03BC24 8003B024 C7B40014 */ lwc1 $f20, 0x14($sp) +/* 03BC28 8003B028 C7B70018 */ lwc1 $f23, 0x18($sp) +/* 03BC2C 8003B02C C7B6001C */ lwc1 $f22, 0x1c($sp) +/* 03BC30 8003B030 8FB00024 */ lw $s0, 0x24($sp) +/* 03BC34 8003B034 8FB10028 */ lw $s1, 0x28($sp) +/* 03BC38 8003B038 8FB2002C */ lw $s2, 0x2c($sp) +/* 03BC3C 8003B03C 8FB30030 */ lw $s3, 0x30($sp) +/* 03BC40 8003B040 8FB40034 */ lw $s4, 0x34($sp) +/* 03BC44 8003B044 8FB50038 */ lw $s5, 0x38($sp) +/* 03BC48 8003B048 8FB6003C */ lw $s6, 0x3c($sp) +/* 03BC4C 8003B04C 8FB70040 */ lw $s7, 0x40($sp) +/* 03BC50 8003B050 03E00008 */ jr $ra +/* 03BC54 8003B054 27BD0080 */ addiu $sp, $sp, 0x80 + diff --git a/asm/non_matchings/unknown_032760/func_8003B058.s b/asm/non_matchings/unknown_032760/func_8003B058.s new file mode 100644 index 00000000..837878f1 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003B058.s @@ -0,0 +1,74 @@ +glabel func_8003B058 +/* 03BC58 8003B058 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 03BC5C 8003B05C AFBF0014 */ sw $ra, 0x14($sp) +/* 03BC60 8003B060 90AF0008 */ lbu $t7, 8($a1) +/* 03BC64 8003B064 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 03BC68 8003B068 448F2000 */ mtc1 $t7, $f4 +/* 03BC6C 8003B06C 44811000 */ mtc1 $at, $f2 +/* 03BC70 8003B070 46802020 */ cvt.s.w $f0, $f4 +/* 03BC74 8003B074 3C014300 */ li $at, 0x43000000 # 128.000000 +/* 03BC78 8003B078 44813000 */ mtc1 $at, $f6 +/* 03BC7C 8003B07C 4602003C */ c.lt.s $f0, $f2 +/* 03BC80 8003B080 00803025 */ move $a2, $a0 +/* 03BC84 8003B084 45000003 */ bc1f .L8003B094 +/* 03BC88 8003B088 00000000 */ nop +/* 03BC8C 8003B08C 46001006 */ mov.s $f0, $f2 +/* 03BC90 8003B090 00000000 */ nop +.L8003B094: +/* 03BC94 8003B094 46060003 */ div.s $f0, $f0, $f6 +/* 03BC98 8003B098 8CC20064 */ lw $v0, 0x64($a2) +/* 03BC9C 8003B09C E4C00008 */ swc1 $f0, 8($a2) +/* 03BCA0 8003B0A0 90B90009 */ lbu $t9, 9($a1) +/* 03BCA4 8003B0A4 00000000 */ nop +/* 03BCA8 8003B0A8 00194280 */ sll $t0, $t9, 0xa +/* 03BCAC 8003B0AC A4C80000 */ sh $t0, ($a2) +/* 03BCB0 8003B0B0 84C40000 */ lh $a0, ($a2) +/* 03BCB4 8003B0B4 AFA60020 */ sw $a2, 0x20($sp) +/* 03BCB8 8003B0B8 AFA50024 */ sw $a1, 0x24($sp) +/* 03BCBC 8003B0BC 0C01C1F1 */ jal func_800707C4 +/* 03BCC0 8003B0C0 AFA20018 */ sw $v0, 0x18($sp) +/* 03BCC4 8003B0C4 8FA20018 */ lw $v0, 0x18($sp) +/* 03BCC8 8003B0C8 8FA60020 */ lw $a2, 0x20($sp) +/* 03BCCC 8003B0CC 44804000 */ mtc1 $zero, $f8 +/* 03BCD0 8003B0D0 E4400000 */ swc1 $f0, ($v0) +/* 03BCD4 8003B0D4 E4480004 */ swc1 $f8, 4($v0) +/* 03BCD8 8003B0D8 84C40000 */ lh $a0, ($a2) +/* 03BCDC 8003B0DC 0C01C1FE */ jal func_800707F8 +/* 03BCE0 8003B0E0 00000000 */ nop +/* 03BCE4 8003B0E4 8FA20018 */ lw $v0, 0x18($sp) +/* 03BCE8 8003B0E8 8FA60020 */ lw $a2, 0x20($sp) +/* 03BCEC 8003B0EC 8FA50024 */ lw $a1, 0x24($sp) +/* 03BCF0 8003B0F0 E4400008 */ swc1 $f0, 8($v0) +/* 03BCF4 8003B0F4 C44A0000 */ lwc1 $f10, ($v0) +/* 03BCF8 8003B0F8 C4D0000C */ lwc1 $f16, 0xc($a2) +/* 03BCFC 8003B0FC C4C40014 */ lwc1 $f4, 0x14($a2) +/* 03BD00 8003B100 46105482 */ mul.s $f18, $f10, $f16 +/* 03BD04 8003B104 240B0002 */ li $t3, 2 +/* 03BD08 8003B108 46040182 */ mul.s $f6, $f0, $f4 +/* 03BD0C 8003B10C 46069200 */ add.s $f8, $f18, $f6 +/* 03BD10 8003B110 46004287 */ neg.s $f10, $f8 +/* 03BD14 8003B114 E44A000C */ swc1 $f10, 0xc($v0) +/* 03BD18 8003B118 90A90008 */ lbu $t1, 8($a1) +/* 03BD1C 8003B11C 00000000 */ nop +/* 03BD20 8003B120 AC490010 */ sw $t1, 0x10($v0) +/* 03BD24 8003B124 90AA000A */ lbu $t2, 0xa($a1) +/* 03BD28 8003B128 00000000 */ nop +/* 03BD2C 8003B12C A04A0014 */ sb $t2, 0x14($v0) +/* 03BD30 8003B130 8CCC004C */ lw $t4, 0x4c($a2) +/* 03BD34 8003B134 00000000 */ nop +/* 03BD38 8003B138 A58B0014 */ sh $t3, 0x14($t4) +/* 03BD3C 8003B13C 8CCD004C */ lw $t5, 0x4c($a2) +/* 03BD40 8003B140 00000000 */ nop +/* 03BD44 8003B144 A1A00011 */ sb $zero, 0x11($t5) +/* 03BD48 8003B148 8CCF004C */ lw $t7, 0x4c($a2) +/* 03BD4C 8003B14C 90AE0008 */ lbu $t6, 8($a1) +/* 03BD50 8003B150 00000000 */ nop +/* 03BD54 8003B154 A1EE0010 */ sb $t6, 0x10($t7) +/* 03BD58 8003B158 8CD8004C */ lw $t8, 0x4c($a2) +/* 03BD5C 8003B15C 00000000 */ nop +/* 03BD60 8003B160 A3000012 */ sb $zero, 0x12($t8) +/* 03BD64 8003B164 8FBF0014 */ lw $ra, 0x14($sp) +/* 03BD68 8003B168 27BD0020 */ addiu $sp, $sp, 0x20 +/* 03BD6C 8003B16C 03E00008 */ jr $ra +/* 03BD70 8003B170 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003B174.s b/asm/non_matchings/unknown_032760/func_8003B174.s new file mode 100644 index 00000000..5c544939 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003B174.s @@ -0,0 +1,131 @@ +glabel func_8003B174 +/* 03BD74 8003B174 27BDFF70 */ addiu $sp, $sp, -0x90 +/* 03BD78 8003B178 AFBF0054 */ sw $ra, 0x54($sp) +/* 03BD7C 8003B17C AFB60050 */ sw $s6, 0x50($sp) +/* 03BD80 8003B180 AFB5004C */ sw $s5, 0x4c($sp) +/* 03BD84 8003B184 AFB40048 */ sw $s4, 0x48($sp) +/* 03BD88 8003B188 AFB30044 */ sw $s3, 0x44($sp) +/* 03BD8C 8003B18C AFB20040 */ sw $s2, 0x40($sp) +/* 03BD90 8003B190 AFB1003C */ sw $s1, 0x3c($sp) +/* 03BD94 8003B194 AFB00038 */ sw $s0, 0x38($sp) +/* 03BD98 8003B198 E7B90030 */ swc1 $f25, 0x30($sp) +/* 03BD9C 8003B19C E7B80034 */ swc1 $f24, 0x34($sp) +/* 03BDA0 8003B1A0 E7B70028 */ swc1 $f23, 0x28($sp) +/* 03BDA4 8003B1A4 E7B6002C */ swc1 $f22, 0x2c($sp) +/* 03BDA8 8003B1A8 E7B50020 */ swc1 $f21, 0x20($sp) +/* 03BDAC 8003B1AC E7B40024 */ swc1 $f20, 0x24($sp) +/* 03BDB0 8003B1B0 AFA50094 */ sw $a1, 0x94($sp) +/* 03BDB4 8003B1B4 8C940064 */ lw $s4, 0x64($a0) +/* 03BDB8 8003B1B8 8C8E004C */ lw $t6, 0x4c($a0) +/* 03BDBC 8003B1BC 8E820010 */ lw $v0, 0x10($s4) +/* 03BDC0 8003B1C0 91CF0013 */ lbu $t7, 0x13($t6) +/* 03BDC4 8003B1C4 0080A825 */ move $s5, $a0 +/* 03BDC8 8003B1C8 01E2082A */ slt $at, $t7, $v0 +/* 03BDCC 8003B1CC 10200056 */ beqz $at, .L8003B328 +/* 03BDD0 8003B1D0 27A40084 */ addiu $a0, $sp, 0x84 +/* 03BDD4 8003B1D4 44822000 */ mtc1 $v0, $f4 +/* 03BDD8 8003B1D8 0C006E9D */ jal func_8001BA74 +/* 03BDDC 8003B1DC 468025A0 */ cvt.s.w $f22, $f4 +/* 03BDE0 8003B1E0 8FB80084 */ lw $t8, 0x84($sp) +/* 03BDE4 8003B1E4 00009025 */ move $s2, $zero +/* 03BDE8 8003B1E8 1B00004F */ blez $t8, .L8003B328 +/* 03BDEC 8003B1EC 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 03BDF0 8003B1F0 44814800 */ mtc1 $at, $f9 +/* 03BDF4 8003B1F4 44804000 */ mtc1 $zero, $f8 +/* 03BDF8 8003B1F8 4600B1A1 */ cvt.d.s $f6, $f22 +/* 03BDFC 8003B1FC 46283282 */ mul.d $f10, $f6, $f8 +/* 03BE00 8003B200 4480C000 */ mtc1 $zero, $f24 +/* 03BE04 8003B204 00409825 */ move $s3, $v0 +/* 03BE08 8003B208 2416000A */ li $s6, 10 +/* 03BE0C 8003B20C 46205520 */ cvt.s.d $f20, $f10 +.L8003B210: +/* 03BE10 8003B210 8E700000 */ lw $s0, ($s3) +/* 03BE14 8003B214 C6B20010 */ lwc1 $f18, 0x10($s5) +/* 03BE18 8003B218 C6100010 */ lwc1 $f16, 0x10($s0) +/* 03BE1C 8003B21C 8E110064 */ lw $s1, 0x64($s0) +/* 03BE20 8003B220 46128381 */ sub.s $f14, $f16, $f18 +/* 03BE24 8003B224 4614703C */ c.lt.s $f14, $f20 +/* 03BE28 8003B228 00000000 */ nop +/* 03BE2C 8003B22C 4500003A */ bc1f .L8003B318 +/* 03BE30 8003B230 8FAA0084 */ lw $t2, 0x84($sp) +/* 03BE34 8003B234 4600A107 */ neg.s $f4, $f20 +/* 03BE38 8003B238 460E203C */ c.lt.s $f4, $f14 +/* 03BE3C 8003B23C 00000000 */ nop +/* 03BE40 8003B240 45000035 */ bc1f .L8003B318 +/* 03BE44 8003B244 8FAA0084 */ lw $t2, 0x84($sp) +/* 03BE48 8003B248 C606000C */ lwc1 $f6, 0xc($s0) +/* 03BE4C 8003B24C C6A8000C */ lwc1 $f8, 0xc($s5) +/* 03BE50 8003B250 C60A0014 */ lwc1 $f10, 0x14($s0) +/* 03BE54 8003B254 46083001 */ sub.s $f0, $f6, $f8 +/* 03BE58 8003B258 C6B00014 */ lwc1 $f16, 0x14($s5) +/* 03BE5C 8003B25C 46000482 */ mul.s $f18, $f0, $f0 +/* 03BE60 8003B260 46105081 */ sub.s $f2, $f10, $f16 +/* 03BE64 8003B264 460E7102 */ mul.s $f4, $f14, $f14 +/* 03BE68 8003B268 00000000 */ nop +/* 03BE6C 8003B26C 46021202 */ mul.s $f8, $f2, $f2 +/* 03BE70 8003B270 46049180 */ add.s $f6, $f18, $f4 +/* 03BE74 8003B274 0C0326B4 */ jal sqrtf +/* 03BE78 8003B278 46083300 */ add.s $f12, $f6, $f8 +/* 03BE7C 8003B27C 4616003C */ c.lt.s $f0, $f22 +/* 03BE80 8003B280 00000000 */ nop +/* 03BE84 8003B284 45000024 */ bc1f .L8003B318 +/* 03BE88 8003B288 8FAA0084 */ lw $t2, 0x84($sp) +/* 03BE8C 8003B28C C68A0000 */ lwc1 $f10, ($s4) +/* 03BE90 8003B290 C610000C */ lwc1 $f16, 0xc($s0) +/* 03BE94 8003B294 C6840008 */ lwc1 $f4, 8($s4) +/* 03BE98 8003B298 46105482 */ mul.s $f18, $f10, $f16 +/* 03BE9C 8003B29C C6060014 */ lwc1 $f6, 0x14($s0) +/* 03BEA0 8003B2A0 C690000C */ lwc1 $f16, 0xc($s4) +/* 03BEA4 8003B2A4 46062202 */ mul.s $f8, $f4, $f6 +/* 03BEA8 8003B2A8 46089280 */ add.s $f10, $f18, $f8 +/* 03BEAC 8003B2AC 46105000 */ add.s $f0, $f10, $f16 +/* 03BEB0 8003B2B0 4618003C */ c.lt.s $f0, $f24 +/* 03BEB4 8003B2B4 00000000 */ nop +/* 03BEB8 8003B2B8 45000017 */ bc1f .L8003B318 +/* 03BEBC 8003B2BC 8FAA0084 */ lw $t2, 0x84($sp) +/* 03BEC0 8003B2C0 82390185 */ lb $t9, 0x185($s1) +/* 03BEC4 8003B2C4 24040022 */ li $a0, 34 +/* 03BEC8 8003B2C8 2B21000A */ slti $at, $t9, 0xa +/* 03BECC 8003B2CC 10200011 */ beqz $at, .L8003B314 +/* 03BED0 8003B2D0 24080004 */ li $t0, 4 +/* 03BED4 8003B2D4 A2360185 */ sb $s6, 0x185($s1) +/* 03BED8 8003B2D8 8E070014 */ lw $a3, 0x14($s0) +/* 03BEDC 8003B2DC 8E060010 */ lw $a2, 0x10($s0) +/* 03BEE0 8003B2E0 8E05000C */ lw $a1, 0xc($s0) +/* 03BEE4 8003B2E4 AFA00014 */ sw $zero, 0x14($sp) +/* 03BEE8 8003B2E8 0C002556 */ jal func_80009558 +/* 03BEEC 8003B2EC AFA80010 */ sw $t0, 0x10($sp) +/* 03BEF0 8003B2F0 82240003 */ lb $a0, 3($s1) +/* 03BEF4 8003B2F4 8E05000C */ lw $a1, 0xc($s0) +/* 03BEF8 8003B2F8 2484007B */ addiu $a0, $a0, 0x7b +/* 03BEFC 8003B2FC 3089FFFF */ andi $t1, $a0, 0xffff +/* 03BF00 8003B300 8E060010 */ lw $a2, 0x10($s0) +/* 03BF04 8003B304 8E070014 */ lw $a3, 0x14($s0) +/* 03BF08 8003B308 AFA00010 */ sw $zero, 0x10($sp) +/* 03BF0C 8003B30C 0C0007AA */ jal func_80001EA8 +/* 03BF10 8003B310 01202025 */ move $a0, $t1 +.L8003B314: +/* 03BF14 8003B314 8FAA0084 */ lw $t2, 0x84($sp) +.L8003B318: +/* 03BF18 8003B318 26520001 */ addiu $s2, $s2, 1 +/* 03BF1C 8003B31C 024A082A */ slt $at, $s2, $t2 +/* 03BF20 8003B320 1420FFBB */ bnez $at, .L8003B210 +/* 03BF24 8003B324 26730004 */ addiu $s3, $s3, 4 +.L8003B328: +/* 03BF28 8003B328 8FBF0054 */ lw $ra, 0x54($sp) +/* 03BF2C 8003B32C C7B50020 */ lwc1 $f21, 0x20($sp) +/* 03BF30 8003B330 C7B40024 */ lwc1 $f20, 0x24($sp) +/* 03BF34 8003B334 C7B70028 */ lwc1 $f23, 0x28($sp) +/* 03BF38 8003B338 C7B6002C */ lwc1 $f22, 0x2c($sp) +/* 03BF3C 8003B33C C7B90030 */ lwc1 $f25, 0x30($sp) +/* 03BF40 8003B340 C7B80034 */ lwc1 $f24, 0x34($sp) +/* 03BF44 8003B344 8FB00038 */ lw $s0, 0x38($sp) +/* 03BF48 8003B348 8FB1003C */ lw $s1, 0x3c($sp) +/* 03BF4C 8003B34C 8FB20040 */ lw $s2, 0x40($sp) +/* 03BF50 8003B350 8FB30044 */ lw $s3, 0x44($sp) +/* 03BF54 8003B354 8FB40048 */ lw $s4, 0x48($sp) +/* 03BF58 8003B358 8FB5004C */ lw $s5, 0x4c($sp) +/* 03BF5C 8003B35C 8FB60050 */ lw $s6, 0x50($sp) +/* 03BF60 8003B360 03E00008 */ jr $ra +/* 03BF64 8003B364 27BD0090 */ addiu $sp, $sp, 0x90 + diff --git a/asm/non_matchings/unknown_032760/func_8003B368.s b/asm/non_matchings/unknown_032760/func_8003B368.s new file mode 100644 index 00000000..edca63cf --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003B368.s @@ -0,0 +1,94 @@ +glabel func_8003B368 +/* 03BF68 8003B368 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 03BF6C 8003B36C AFBF001C */ sw $ra, 0x1c($sp) +/* 03BF70 8003B370 AFB00018 */ sw $s0, 0x18($sp) +/* 03BF74 8003B374 80A70008 */ lb $a3, 8($a1) +/* 03BF78 8003B378 2401FFFF */ li $at, -1 +/* 03BF7C 8003B37C 00808025 */ move $s0, $a0 +/* 03BF80 8003B380 14E10006 */ bne $a3, $at, .L8003B39C +/* 03BF84 8003B384 00A03025 */ move $a2, $a1 +/* 03BF88 8003B388 0C003308 */ jal func_8000CC20 +/* 03BF8C 8003B38C AFA50024 */ sw $a1, 0x24($sp) +/* 03BF90 8003B390 8FA60024 */ lw $a2, 0x24($sp) +/* 03BF94 8003B394 10000007 */ b .L8003B3B4 +/* 03BF98 8003B398 A0C20008 */ sb $v0, 8($a2) +.L8003B39C: +/* 03BF9C 8003B39C 02002025 */ move $a0, $s0 +/* 03BFA0 8003B3A0 00E02825 */ move $a1, $a3 +/* 03BFA4 8003B3A4 0C0032FC */ jal func_8000CBF0 +/* 03BFA8 8003B3A8 AFA60024 */ sw $a2, 0x24($sp) +/* 03BFAC 8003B3AC 8FA60024 */ lw $a2, 0x24($sp) +/* 03BFB0 8003B3B0 00000000 */ nop +.L8003B3B4: +/* 03BFB4 8003B3B4 80CE0008 */ lb $t6, 8($a2) +/* 03BFB8 8003B3B8 2401FFFF */ li $at, -1 +/* 03BFBC 8003B3BC 15C10006 */ bne $t6, $at, .L8003B3D8 +/* 03BFC0 8003B3C0 3C04800E */ lui $a0, %hi(D_800E5FA0) # $a0, 0x800e +/* 03BFC4 8003B3C4 24845FA0 */ addiu $a0, %lo(D_800E5FA0) # addiu $a0, $a0, 0x5fa0 +/* 03BFC8 8003B3C8 0C032755 */ jal func_800C9D54 +/* 03BFCC 8003B3CC AFA60024 */ sw $a2, 0x24($sp) +/* 03BFD0 8003B3D0 8FA60024 */ lw $a2, 0x24($sp) +/* 03BFD4 8003B3D4 00000000 */ nop +.L8003B3D8: +/* 03BFD8 8003B3D8 8E18004C */ lw $t8, 0x4c($s0) +/* 03BFDC 8003B3DC 240F0002 */ li $t7, 2 +/* 03BFE0 8003B3E0 A70F0014 */ sh $t7, 0x14($t8) +/* 03BFE4 8003B3E4 8E08004C */ lw $t0, 0x4c($s0) +/* 03BFE8 8003B3E8 24190004 */ li $t9, 4 +/* 03BFEC 8003B3EC A1190011 */ sb $t9, 0x11($t0) +/* 03BFF0 8003B3F0 8E0A004C */ lw $t2, 0x4c($s0) +/* 03BFF4 8003B3F4 24090014 */ li $t1, 20 +/* 03BFF8 8003B3F8 A1490010 */ sb $t1, 0x10($t2) +/* 03BFFC 8003B3FC 8E0B004C */ lw $t3, 0x4c($s0) +/* 03C000 8003B400 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 03C004 8003B404 A1600012 */ sb $zero, 0x12($t3) +/* 03C008 8003B408 90CD0009 */ lbu $t5, 9($a2) +/* 03C00C 8003B40C 44811000 */ mtc1 $at, $f2 +/* 03C010 8003B410 448D2000 */ mtc1 $t5, $f4 +/* 03C014 8003B414 3C014280 */ li $at, 0x42800000 # 64.000000 +/* 03C018 8003B418 46802020 */ cvt.s.w $f0, $f4 +/* 03C01C 8003B41C 44813000 */ mtc1 $at, $f6 +/* 03C020 8003B420 4602003C */ c.lt.s $f0, $f2 +/* 03C024 8003B424 00000000 */ nop +/* 03C028 8003B428 45000003 */ bc1f .L8003B438 +/* 03C02C 8003B42C 00000000 */ nop +/* 03C030 8003B430 46001006 */ mov.s $f0, $f2 +/* 03C034 8003B434 00000000 */ nop +.L8003B438: +/* 03C038 8003B438 46060003 */ div.s $f0, $f0, $f6 +/* 03C03C 8003B43C 8E0E0040 */ lw $t6, 0x40($s0) +/* 03C040 8003B440 8E020064 */ lw $v0, 0x64($s0) +/* 03C044 8003B444 C5C8000C */ lwc1 $f8, 0xc($t6) +/* 03C048 8003B448 44808000 */ mtc1 $zero, $f16 +/* 03C04C 8003B44C 240F00FF */ li $t7, 255 +/* 03C050 8003B450 46004282 */ mul.s $f10, $f8, $f0 +/* 03C054 8003B454 E60A0008 */ swc1 $f10, 8($s0) +/* 03C058 8003B458 A04F000D */ sb $t7, 0xd($v0) +/* 03C05C 8003B45C E4500000 */ swc1 $f16, ($v0) +/* 03C060 8003B460 AE000078 */ sw $zero, 0x78($s0) +/* 03C064 8003B464 80D8000A */ lb $t8, 0xa($a2) +/* 03C068 8003B468 00000000 */ nop +/* 03C06C 8003B46C 13000010 */ beqz $t8, .L8003B4B0 +/* 03C070 8003B470 8FBF001C */ lw $ra, 0x1c($sp) +/* 03C074 8003B474 0C01BAA4 */ jal func_8006EA90 +/* 03C078 8003B478 AFA60024 */ sw $a2, 0x24($sp) +/* 03C07C 8003B47C 8FA60024 */ lw $a2, 0x24($sp) +/* 03C080 8003B480 94590014 */ lhu $t9, 0x14($v0) +/* 03C084 8003B484 80C8000A */ lb $t0, 0xa($a2) +/* 03C088 8003B488 240A0001 */ li $t2, 1 +/* 03C08C 8003B48C 25090002 */ addiu $t1, $t0, 2 +/* 03C090 8003B490 012A5804 */ sllv $t3, $t2, $t1 +/* 03C094 8003B494 032B6024 */ and $t4, $t9, $t3 +/* 03C098 8003B498 11800003 */ beqz $t4, .L8003B4A8 +/* 03C09C 8003B49C 240D0001 */ li $t5, 1 +/* 03C0A0 8003B4A0 10000002 */ b .L8003B4AC +/* 03C0A4 8003B4A4 AE000078 */ sw $zero, 0x78($s0) +.L8003B4A8: +/* 03C0A8 8003B4A8 AE0D0078 */ sw $t5, 0x78($s0) +.L8003B4AC: +/* 03C0AC 8003B4AC 8FBF001C */ lw $ra, 0x1c($sp) +.L8003B4B0: +/* 03C0B0 8003B4B0 8FB00018 */ lw $s0, 0x18($sp) +/* 03C0B4 8003B4B4 03E00008 */ jr $ra +/* 03C0B8 8003B4B8 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_032760/func_8003B4BC.s b/asm/non_matchings/unknown_032760/func_8003B4BC.s new file mode 100644 index 00000000..fb6bd7b0 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003B4BC.s @@ -0,0 +1,211 @@ +glabel func_8003B4BC +/* 03C0BC 8003B4BC 44852000 */ mtc1 $a1, $f4 +/* 03C0C0 8003B4C0 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 03C0C4 8003B4C4 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 +/* 03C0C8 8003B4C8 46802020 */ cvt.s.w $f0, $f4 +/* 03C0CC 8003B4CC 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) +/* 03C0D0 8003B4D0 AFB10020 */ sw $s1, 0x20($sp) +/* 03C0D4 8003B4D4 00808825 */ move $s1, $a0 +/* 03C0D8 8003B4D8 AFBF0024 */ sw $ra, 0x24($sp) +/* 03C0DC 8003B4DC AFB0001C */ sw $s0, 0x1c($sp) +/* 03C0E0 8003B4E0 AFA50054 */ sw $a1, 0x54($sp) +/* 03C0E4 8003B4E4 15E00007 */ bnez $t7, .L8003B504 +/* 03C0E8 8003B4E8 46000086 */ mov.s $f2, $f0 +/* 03C0EC 8003B4EC 3C01800E */ lui $at, %hi(D_800E6164) # $at, 0x800e +/* 03C0F0 8003B4F0 C4296160 */ lwc1 $f9, %lo(D_800E6160)($at) +/* 03C0F4 8003B4F4 C4286164 */ lwc1 $f8, %lo(D_800E6164)($at) +/* 03C0F8 8003B4F8 460001A1 */ cvt.d.s $f6, $f0 +/* 03C0FC 8003B4FC 46283282 */ mul.d $f10, $f6, $f8 +/* 03C100 8003B500 462050A0 */ cvt.s.d $f2, $f10 +.L8003B504: +/* 03C104 8003B504 3C18A000 */ lui $t8, %hi(D_A0000284) # $t8, 0xa000 +/* 03C108 8003B508 8F190284 */ lw $t9, %lo(D_A0000284)($t8) +/* 03C10C 8003B50C 3C01240B */ lui $at, (0x240B17D7 >> 16) # lui $at, 0x240b +/* 03C110 8003B510 342117D7 */ ori $at, (0x240B17D7 & 0xFFFF) # ori $at, $at, 0x17d7 +/* 03C114 8003B514 13210002 */ beq $t9, $at, .L8003B520 +/* 03C118 8003B518 00008025 */ move $s0, $zero +/* 03C11C 8003B51C 24100001 */ li $s0, 1 +.L8003B520: +/* 03C120 8003B520 0C01BAA4 */ jal func_8006EA90 +/* 03C124 8003B524 E7A2002C */ swc1 $f2, 0x2c($sp) +/* 03C128 8003B528 904B0049 */ lbu $t3, 0x49($v0) +/* 03C12C 8003B52C 8E23003C */ lw $v1, 0x3c($s1) +/* 03C130 8003B530 8C4A0004 */ lw $t2, 4($v0) +/* 03C134 8003B534 000B6080 */ sll $t4, $t3, 2 +/* 03C138 8003B538 80680008 */ lb $t0, 8($v1) +/* 03C13C 8003B53C 014C6821 */ addu $t5, $t2, $t4 +/* 03C140 8003B540 8DAE0000 */ lw $t6, ($t5) +/* 03C144 8003B544 3C090001 */ lui $t1, 1 +/* 03C148 8003B548 01092804 */ sllv $a1, $t1, $t0 +/* 03C14C 8003B54C 01C57824 */ and $t7, $t6, $a1 +/* 03C150 8003B550 11E00013 */ beqz $t7, .L8003B5A0 +/* 03C154 8003B554 00000000 */ nop +/* 03C158 8003B558 8E38007C */ lw $t8, 0x7c($s1) +/* 03C15C 8003B55C 24190002 */ li $t9, 2 +/* 03C160 8003B560 1B00000B */ blez $t8, .L8003B590 +/* 03C164 8003B564 00000000 */ nop +/* 03C168 8003B568 AE390074 */ sw $t9, 0x74($s1) +/* 03C16C 8003B56C 8FA50054 */ lw $a1, 0x54($sp) +/* 03C170 8003B570 0C02BF0F */ jal func_800AFC3C +/* 03C174 8003B574 02202025 */ move $a0, $s1 +/* 03C178 8003B578 8E29007C */ lw $t1, 0x7c($s1) +/* 03C17C 8003B57C 8FA80054 */ lw $t0, 0x54($sp) +/* 03C180 8003B580 00000000 */ nop +/* 03C184 8003B584 01285823 */ subu $t3, $t1, $t0 +/* 03C188 8003B588 1000008B */ b .L8003B7B8 +/* 03C18C 8003B58C AE2B007C */ sw $t3, 0x7c($s1) +.L8003B590: +/* 03C190 8003B590 0C003FEE */ jal func_8000FFB8 +/* 03C194 8003B594 02202025 */ move $a0, $s1 +/* 03C198 8003B598 10000088 */ b .L8003B7BC +/* 03C19C 8003B59C 8FBF0024 */ lw $ra, 0x24($sp) +.L8003B5A0: +/* 03C1A0 8003B5A0 862A0006 */ lh $t2, 6($s1) +/* 03C1A4 8003B5A4 8E2D0078 */ lw $t5, 0x78($s1) +/* 03C1A8 8003B5A8 354C4000 */ ori $t4, $t2, 0x4000 +/* 03C1AC 8003B5AC 15A00082 */ bnez $t5, .L8003B7B8 +/* 03C1B0 8003B5B0 A62C0006 */ sh $t4, 6($s1) +/* 03C1B4 8003B5B4 862E0006 */ lh $t6, 6($s1) +/* 03C1B8 8003B5B8 92240039 */ lbu $a0, 0x39($s1) +/* 03C1BC 8003B5BC 31CFBFFF */ andi $t7, $t6, 0xbfff +/* 03C1C0 8003B5C0 A62F0006 */ sh $t7, 6($s1) +/* 03C1C4 8003B5C4 8FA30054 */ lw $v1, 0x54($sp) +/* 03C1C8 8003B5C8 241900FF */ li $t9, 255 +/* 03C1CC 8003B5CC 0003C040 */ sll $t8, $v1, 1 +/* 03C1D0 8003B5D0 03384823 */ subu $t1, $t9, $t8 +/* 03C1D4 8003B5D4 0089082A */ slt $at, $a0, $t1 +/* 03C1D8 8003B5D8 10200004 */ beqz $at, .L8003B5EC +/* 03C1DC 8003B5DC 240B00FF */ li $t3, 255 +/* 03C1E0 8003B5E0 00984021 */ addu $t0, $a0, $t8 +/* 03C1E4 8003B5E4 10000002 */ b .L8003B5F0 +/* 03C1E8 8003B5E8 A2280039 */ sb $t0, 0x39($s1) +.L8003B5EC: +/* 03C1EC 8003B5EC A22B0039 */ sb $t3, 0x39($s1) +.L8003B5F0: +/* 03C1F0 8003B5F0 8E24004C */ lw $a0, 0x4c($s1) +/* 03C1F4 8003B5F4 00000000 */ nop +/* 03C1F8 8003B5F8 908A0013 */ lbu $t2, 0x13($a0) +/* 03C1FC 8003B5FC 00000000 */ nop +/* 03C200 8003B600 2941002D */ slti $at, $t2, 0x2d +/* 03C204 8003B604 1020003C */ beqz $at, .L8003B6F8 +/* 03C208 8003B608 00000000 */ nop +/* 03C20C 8003B60C 1600003A */ bnez $s0, .L8003B6F8 +/* 03C210 8003B610 00000000 */ nop +/* 03C214 8003B614 8C830000 */ lw $v1, ($a0) +/* 03C218 8003B618 00000000 */ nop +/* 03C21C 8003B61C 10600036 */ beqz $v1, .L8003B6F8 +/* 03C220 8003B620 00000000 */ nop +/* 03C224 8003B624 8C6C0040 */ lw $t4, 0x40($v1) +/* 03C228 8003B628 24060001 */ li $a2, 1 +/* 03C22C 8003B62C 818D0054 */ lb $t5, 0x54($t4) +/* 03C230 8003B630 00000000 */ nop +/* 03C234 8003B634 14CD0030 */ bne $a2, $t5, .L8003B6F8 +/* 03C238 8003B638 00000000 */ nop +/* 03C23C 8003B63C 8C640064 */ lw $a0, 0x64($v1) +/* 03C240 8003B640 00000000 */ nop +/* 03C244 8003B644 848E0000 */ lh $t6, ($a0) +/* 03C248 8003B648 00000000 */ nop +/* 03C24C 8003B64C 15C0002A */ bnez $t6, .L8003B6F8 +/* 03C250 8003B650 00000000 */ nop +/* 03C254 8003B654 90580048 */ lbu $t8, 0x48($v0) +/* 03C258 8003B658 8C4F0000 */ lw $t7, ($v0) +/* 03C25C 8003B65C 0018C840 */ sll $t9, $t8, 1 +/* 03C260 8003B660 01F91821 */ addu $v1, $t7, $t9 +/* 03C264 8003B664 84690000 */ lh $t1, ($v1) +/* 03C268 8003B668 00000000 */ nop +/* 03C26C 8003B66C 25280001 */ addiu $t0, $t1, 1 +/* 03C270 8003B670 A4680000 */ sh $t0, ($v1) +/* 03C274 8003B674 904B0048 */ lbu $t3, 0x48($v0) +/* 03C278 8003B678 00000000 */ nop +/* 03C27C 8003B67C 11600007 */ beqz $t3, .L8003B69C +/* 03C280 8003B680 00000000 */ nop +/* 03C284 8003B684 8C430000 */ lw $v1, ($v0) +/* 03C288 8003B688 00000000 */ nop +/* 03C28C 8003B68C 846A0000 */ lh $t2, ($v1) +/* 03C290 8003B690 00000000 */ nop +/* 03C294 8003B694 254C0001 */ addiu $t4, $t2, 1 +/* 03C298 8003B698 A46C0000 */ sh $t4, ($v1) +.L8003B69C: +/* 03C29C 8003B69C 904E0049 */ lbu $t6, 0x49($v0) +/* 03C2A0 8003B6A0 8C4D0004 */ lw $t5, 4($v0) +/* 03C2A4 8003B6A4 000EC080 */ sll $t8, $t6, 2 +/* 03C2A8 8003B6A8 01B81821 */ addu $v1, $t5, $t8 +/* 03C2AC 8003B6AC 8C6F0000 */ lw $t7, ($v1) +/* 03C2B0 8003B6B0 2404023D */ li $a0, 573 +/* 03C2B4 8003B6B4 01E5C825 */ or $t9, $t7, $a1 +/* 03C2B8 8003B6B8 AC790000 */ sw $t9, ($v1) +/* 03C2BC 8003B6BC 8E270014 */ lw $a3, 0x14($s1) +/* 03C2C0 8003B6C0 8E260010 */ lw $a2, 0x10($s1) +/* 03C2C4 8003B6C4 8E25000C */ lw $a1, 0xc($s1) +/* 03C2C8 8003B6C8 0C0007AA */ jal func_80001EA8 +/* 03C2CC 8003B6CC AFA00010 */ sw $zero, 0x10($sp) +/* 03C2D0 8003B6D0 862B0006 */ lh $t3, 6($s1) +/* 03C2D4 8003B6D4 24090010 */ li $t1, 16 +/* 03C2D8 8003B6D8 24080002 */ li $t0, 2 +/* 03C2DC 8003B6DC 356A4000 */ ori $t2, $t3, 0x4000 +/* 03C2E0 8003B6E0 AE29007C */ sw $t1, 0x7c($s1) +/* 03C2E4 8003B6E4 AE280074 */ sw $t0, 0x74($s1) +/* 03C2E8 8003B6E8 A62A0006 */ sh $t2, 6($s1) +/* 03C2EC 8003B6EC 8FA50054 */ lw $a1, 0x54($sp) +/* 03C2F0 8003B6F0 0C02BF0F */ jal func_800AFC3C +/* 03C2F4 8003B6F4 02202025 */ move $a0, $s1 +.L8003B6F8: +/* 03C2F8 8003B6F8 44801000 */ mtc1 $zero, $f2 +/* 03C2FC 8003B6FC 8E300064 */ lw $s0, 0x64($s1) +/* 03C300 8003B700 A220003B */ sb $zero, 0x3b($s1) +/* 03C304 8003B704 E6020014 */ swc1 $f2, 0x14($s0) +/* 03C308 8003B708 922C0039 */ lbu $t4, 0x39($s1) +/* 03C30C 8003B70C 02202825 */ move $a1, $s1 +/* 03C310 8003B710 298100FF */ slti $at, $t4, 0xff +/* 03C314 8003B714 10200003 */ beqz $at, .L8003B724 +/* 03C318 8003B718 02002025 */ move $a0, $s0 +/* 03C31C 8003B71C 10000004 */ b .L8003B730 +/* 03C320 8003B720 46001006 */ mov.s $f0, $f2 +.L8003B724: +/* 03C324 8003B724 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 03C328 8003B728 44810000 */ mtc1 $at, $f0 +/* 03C32C 8003B72C 00000000 */ nop +.L8003B730: +/* 03C330 8003B730 920E000D */ lbu $t6, 0xd($s0) +/* 03C334 8003B734 240100FF */ li $at, 255 +/* 03C338 8003B738 15C1001C */ bne $t6, $at, .L8003B7AC +/* 03C33C 8003B73C 8FA6002C */ lw $a2, 0x2c($sp) +/* 03C340 8003B740 C62C000C */ lwc1 $f12, 0xc($s1) +/* 03C344 8003B744 C62E0010 */ lwc1 $f14, 0x10($s1) +/* 03C348 8003B748 8E260014 */ lw $a2, 0x14($s1) +/* 03C34C 8003B74C 0C007149 */ jal func_8001C524 +/* 03C350 8003B750 00003825 */ move $a3, $zero +/* 03C354 8003B754 304400FF */ andi $a0, $v0, 0xff +/* 03C358 8003B758 240100FF */ li $at, 255 +/* 03C35C 8003B75C 10810016 */ beq $a0, $at, .L8003B7B8 +/* 03C360 8003B760 A202000D */ sb $v0, 0xd($s0) +/* 03C364 8003B764 2405FFFF */ li $a1, -1 +/* 03C368 8003B768 0C007312 */ jal func_8001CC48 +/* 03C36C 8003B76C 00003025 */ move $a2, $zero +/* 03C370 8003B770 9205000D */ lbu $a1, 0xd($s0) +/* 03C374 8003B774 A202000E */ sb $v0, 0xe($s0) +/* 03C378 8003B778 304400FF */ andi $a0, $v0, 0xff +/* 03C37C 8003B77C 0C007312 */ jal func_8001CC48 +/* 03C380 8003B780 00003025 */ move $a2, $zero +/* 03C384 8003B784 9205000E */ lbu $a1, 0xe($s0) +/* 03C388 8003B788 A202000F */ sb $v0, 0xf($s0) +/* 03C38C 8003B78C 304400FF */ andi $a0, $v0, 0xff +/* 03C390 8003B790 0C007312 */ jal func_8001CC48 +/* 03C394 8003B794 00003025 */ move $a2, $zero +/* 03C398 8003B798 920D000D */ lbu $t5, 0xd($s0) +/* 03C39C 8003B79C A2020010 */ sb $v0, 0x10($s0) +/* 03C3A0 8003B7A0 10000005 */ b .L8003B7B8 +/* 03C3A4 8003B7A4 A20D000C */ sb $t5, 0xc($s0) +/* 03C3A8 8003B7A8 8FA6002C */ lw $a2, 0x2c($sp) +.L8003B7AC: +/* 03C3AC 8003B7AC 44070000 */ mfc1 $a3, $f0 +/* 03C3B0 8003B7B0 0C0071B1 */ jal func_8001C6C4 +/* 03C3B4 8003B7B4 AFA00010 */ sw $zero, 0x10($sp) +.L8003B7B8: +/* 03C3B8 8003B7B8 8FBF0024 */ lw $ra, 0x24($sp) +.L8003B7BC: +/* 03C3BC 8003B7BC 8FB0001C */ lw $s0, 0x1c($sp) +/* 03C3C0 8003B7C0 8FB10020 */ lw $s1, 0x20($sp) +/* 03C3C4 8003B7C4 03E00008 */ jr $ra +/* 03C3C8 8003B7C8 27BD0050 */ addiu $sp, $sp, 0x50 + diff --git a/asm/non_matchings/unknown_032760/func_8003B7CC.s b/asm/non_matchings/unknown_032760/func_8003B7CC.s new file mode 100644 index 00000000..44a1e1d2 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003B7CC.s @@ -0,0 +1,118 @@ +glabel func_8003B7CC +/* 03C3CC 8003B7CC 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 03C3D0 8003B7D0 AFBF001C */ sw $ra, 0x1c($sp) +/* 03C3D4 8003B7D4 AFB00018 */ sw $s0, 0x18($sp) +/* 03C3D8 8003B7D8 80A7000C */ lb $a3, 0xc($a1) +/* 03C3DC 8003B7DC 8C830064 */ lw $v1, 0x64($a0) +/* 03C3E0 8003B7E0 2401FFFF */ li $at, -1 +/* 03C3E4 8003B7E4 00808025 */ move $s0, $a0 +/* 03C3E8 8003B7E8 14E10008 */ bne $a3, $at, .L8003B80C +/* 03C3EC 8003B7EC 00A03025 */ move $a2, $a1 +/* 03C3F0 8003B7F0 AFA30024 */ sw $v1, 0x24($sp) +/* 03C3F4 8003B7F4 0C003308 */ jal func_8000CC20 +/* 03C3F8 8003B7F8 AFA5002C */ sw $a1, 0x2c($sp) +/* 03C3FC 8003B7FC 8FA6002C */ lw $a2, 0x2c($sp) +/* 03C400 8003B800 8FA30024 */ lw $v1, 0x24($sp) +/* 03C404 8003B804 10000009 */ b .L8003B82C +/* 03C408 8003B808 A0C2000C */ sb $v0, 0xc($a2) +.L8003B80C: +/* 03C40C 8003B80C 02002025 */ move $a0, $s0 +/* 03C410 8003B810 00E02825 */ move $a1, $a3 +/* 03C414 8003B814 AFA30024 */ sw $v1, 0x24($sp) +/* 03C418 8003B818 0C0032FC */ jal func_8000CBF0 +/* 03C41C 8003B81C AFA6002C */ sw $a2, 0x2c($sp) +/* 03C420 8003B820 8FA30024 */ lw $v1, 0x24($sp) +/* 03C424 8003B824 8FA6002C */ lw $a2, 0x2c($sp) +/* 03C428 8003B828 00000000 */ nop +.L8003B82C: +/* 03C42C 8003B82C 80CE000C */ lb $t6, 0xc($a2) +/* 03C430 8003B830 2401FFFF */ li $at, -1 +/* 03C434 8003B834 A06E000E */ sb $t6, 0xe($v1) +/* 03C438 8003B838 90CF000E */ lbu $t7, 0xe($a2) +/* 03C43C 8003B83C 8069000E */ lb $t1, 0xe($v1) +/* 03C440 8003B840 A06F000F */ sb $t7, 0xf($v1) +/* 03C444 8003B844 90D8000D */ lbu $t8, 0xd($a2) +/* 03C448 8003B848 3C04800E */ lui $a0, %hi(D_800E5FB4) # $a0, 0x800e +/* 03C44C 8003B84C A0780011 */ sb $t8, 0x11($v1) +/* 03C450 8003B850 90D9000D */ lbu $t9, 0xd($a2) +/* 03C454 8003B854 24845FB4 */ addiu $a0, %lo(D_800E5FB4) # addiu $a0, $a0, 0x5fb4 +/* 03C458 8003B858 A0790010 */ sb $t9, 0x10($v1) +/* 03C45C 8003B85C 90C8000B */ lbu $t0, 0xb($a2) +/* 03C460 8003B860 15210007 */ bne $t1, $at, .L8003B880 +/* 03C464 8003B864 A0680012 */ sb $t0, 0x12($v1) +/* 03C468 8003B868 AFA30024 */ sw $v1, 0x24($sp) +/* 03C46C 8003B86C 0C032755 */ jal func_800C9D54 +/* 03C470 8003B870 AFA6002C */ sw $a2, 0x2c($sp) +/* 03C474 8003B874 8FA30024 */ lw $v1, 0x24($sp) +/* 03C478 8003B878 8FA6002C */ lw $a2, 0x2c($sp) +/* 03C47C 8003B87C 00000000 */ nop +.L8003B880: +/* 03C480 8003B880 90CA000A */ lbu $t2, 0xa($a2) +/* 03C484 8003B884 C6040010 */ lwc1 $f4, 0x10($s0) +/* 03C488 8003B888 A20A003A */ sb $t2, 0x3a($s0) +/* 03C48C 8003B88C 90CC0008 */ lbu $t4, 8($a2) +/* 03C490 8003B890 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 03C494 8003B894 000C6A80 */ sll $t5, $t4, 0xa +/* 03C498 8003B898 A60D0000 */ sh $t5, ($s0) +/* 03C49C 8003B89C AC600008 */ sw $zero, 8($v1) +/* 03C4A0 8003B8A0 E4640000 */ swc1 $f4, ($v1) +/* 03C4A4 8003B8A4 860E0000 */ lh $t6, ($s0) +/* 03C4A8 8003B8A8 44811000 */ mtc1 $at, $f2 +/* 03C4AC 8003B8AC AE0E0078 */ sw $t6, 0x78($s0) +/* 03C4B0 8003B8B0 90CF0009 */ lbu $t7, 9($a2) +/* 03C4B4 8003B8B4 3C014280 */ li $at, 0x42800000 # 64.000000 +/* 03C4B8 8003B8B8 31F8003F */ andi $t8, $t7, 0x3f +/* 03C4BC 8003B8BC 0018CA80 */ sll $t9, $t8, 0xa +/* 03C4C0 8003B8C0 AE19007C */ sw $t9, 0x7c($s0) +/* 03C4C4 8003B8C4 90C90012 */ lbu $t1, 0x12($a2) +/* 03C4C8 8003B8C8 44814000 */ mtc1 $at, $f8 +/* 03C4CC 8003B8CC 44893000 */ mtc1 $t1, $f6 +/* 03C4D0 8003B8D0 00000000 */ nop +/* 03C4D4 8003B8D4 46803020 */ cvt.s.w $f0, $f6 +/* 03C4D8 8003B8D8 4602003C */ c.lt.s $f0, $f2 +/* 03C4DC 8003B8DC 00000000 */ nop +/* 03C4E0 8003B8E0 45000003 */ bc1f .L8003B8F0 +/* 03C4E4 8003B8E4 00000000 */ nop +/* 03C4E8 8003B8E8 46001006 */ mov.s $f0, $f2 +/* 03C4EC 8003B8EC 00000000 */ nop +.L8003B8F0: +/* 03C4F0 8003B8F0 46080003 */ div.s $f0, $f0, $f8 +/* 03C4F4 8003B8F4 8E0A0040 */ lw $t2, 0x40($s0) +/* 03C4F8 8003B8F8 240D0021 */ li $t5, 33 +/* 03C4FC 8003B8FC C54A000C */ lwc1 $f10, 0xc($t2) +/* 03C500 8003B900 240F0002 */ li $t7, 2 +/* 03C504 8003B904 24190014 */ li $t9, 20 +/* 03C508 8003B908 46005402 */ mul.s $f16, $f10, $f0 +/* 03C50C 8003B90C E6100008 */ swc1 $f16, 8($s0) +/* 03C510 8003B910 90CB000F */ lbu $t3, 0xf($a2) +/* 03C514 8003B914 00000000 */ nop +/* 03C518 8003B918 A06B0013 */ sb $t3, 0x13($v1) +/* 03C51C 8003B91C 80CC0011 */ lb $t4, 0x11($a2) +/* 03C520 8003B920 00000000 */ nop +/* 03C524 8003B924 A06C0014 */ sb $t4, 0x14($v1) +/* 03C528 8003B928 8E0E004C */ lw $t6, 0x4c($s0) +/* 03C52C 8003B92C 00000000 */ nop +/* 03C530 8003B930 A5CD0014 */ sh $t5, 0x14($t6) +/* 03C534 8003B934 8E18004C */ lw $t8, 0x4c($s0) +/* 03C538 8003B938 00000000 */ nop +/* 03C53C 8003B93C A30F0011 */ sb $t7, 0x11($t8) +/* 03C540 8003B940 8E08004C */ lw $t0, 0x4c($s0) +/* 03C544 8003B944 00000000 */ nop +/* 03C548 8003B948 A1190010 */ sb $t9, 0x10($t0) +/* 03C54C 8003B94C 8E09004C */ lw $t1, 0x4c($s0) +/* 03C550 8003B950 00000000 */ nop +/* 03C554 8003B954 A1200012 */ sb $zero, 0x12($t1) +/* 03C558 8003B958 8E0B0040 */ lw $t3, 0x40($s0) +/* 03C55C 8003B95C 820A003A */ lb $t2, 0x3a($s0) +/* 03C560 8003B960 816C0055 */ lb $t4, 0x55($t3) +/* 03C564 8003B964 00000000 */ nop +/* 03C568 8003B968 014C082A */ slt $at, $t2, $t4 +/* 03C56C 8003B96C 14200003 */ bnez $at, .L8003B97C +/* 03C570 8003B970 8FBF001C */ lw $ra, 0x1c($sp) +/* 03C574 8003B974 A200003A */ sb $zero, 0x3a($s0) +/* 03C578 8003B978 8FBF001C */ lw $ra, 0x1c($sp) +.L8003B97C: +/* 03C57C 8003B97C 8FB00018 */ lw $s0, 0x18($sp) +/* 03C580 8003B980 03E00008 */ jr $ra +/* 03C584 8003B984 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_032760/func_8003B988.s b/asm/non_matchings/unknown_032760/func_8003B988.s new file mode 100644 index 00000000..06f05d1a --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003B988.s @@ -0,0 +1,578 @@ +glabel func_8003B988 +/* 03C588 8003B988 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 03C58C 8003B98C 44852000 */ mtc1 $a1, $f4 +/* 03C590 8003B990 AFBF0024 */ sw $ra, 0x24($sp) +/* 03C594 8003B994 AFB00020 */ sw $s0, 0x20($sp) +/* 03C598 8003B998 AFA50064 */ sw $a1, 0x64($sp) +/* 03C59C 8003B99C 3C188000 */ lui $t8, %hi(D_80000300) # $t8, 0x8000 +/* 03C5A0 8003B9A0 46802020 */ cvt.s.w $f0, $f4 +/* 03C5A4 8003B9A4 8C8E003C */ lw $t6, 0x3c($a0) +/* 03C5A8 8003B9A8 8F180300 */ lw $t8, %lo(D_80000300)($t8) +/* 03C5AC 8003B9AC 00808025 */ move $s0, $a0 +/* 03C5B0 8003B9B0 46000086 */ mov.s $f2, $f0 +/* 03C5B4 8003B9B4 17000007 */ bnez $t8, .L8003B9D4 +/* 03C5B8 8003B9B8 AFAE0034 */ sw $t6, 0x34($sp) +/* 03C5BC 8003B9BC 3C01800E */ lui $at, %hi(D_800E616C) # $at, 0x800e +/* 03C5C0 8003B9C0 C4296168 */ lwc1 $f9, %lo(D_800E6168)($at) +/* 03C5C4 8003B9C4 C428616C */ lwc1 $f8, %lo(D_800E616C)($at) +/* 03C5C8 8003B9C8 460001A1 */ cvt.d.s $f6, $f0 +/* 03C5CC 8003B9CC 46283282 */ mul.d $f10, $f6, $f8 +/* 03C5D0 8003B9D0 462050A0 */ cvt.s.d $f2, $f10 +.L8003B9D4: +/* 03C5D4 8003B9D4 0C01BAA4 */ jal func_8006EA90 +/* 03C5D8 8003B9D8 E7A20030 */ swc1 $f2, 0x30($sp) +/* 03C5DC 8003B9DC 904B0049 */ lbu $t3, 0x49($v0) +/* 03C5E0 8003B9E0 8C590004 */ lw $t9, 4($v0) +/* 03C5E4 8003B9E4 8E080064 */ lw $t0, 0x64($s0) +/* 03C5E8 8003B9E8 000B6080 */ sll $t4, $t3, 2 +/* 03C5EC 8003B9EC 8103000E */ lb $v1, 0xe($t0) +/* 03C5F0 8003B9F0 032C6821 */ addu $t5, $t9, $t4 +/* 03C5F4 8003B9F4 8DA50000 */ lw $a1, ($t5) +/* 03C5F8 8003B9F8 046001E6 */ bltz $v1, .L8003C194 +/* 03C5FC 8003B9FC 00404825 */ move $t1, $v0 +/* 03C600 8003BA00 3C0E0001 */ lui $t6, 1 +/* 03C604 8003BA04 006E7804 */ sllv $t7, $t6, $v1 +/* 03C608 8003BA08 AFAF0054 */ sw $t7, 0x54($sp) +/* 03C60C 8003BA0C 8E02004C */ lw $v0, 0x4c($s0) +/* 03C610 8003BA10 00000000 */ nop +/* 03C614 8003BA14 90440013 */ lbu $a0, 0x13($v0) +/* 03C618 8003BA18 00000000 */ nop +/* 03C61C 8003BA1C AFA40050 */ sw $a0, 0x50($sp) +/* 03C620 8003BA20 9118000F */ lbu $t8, 0xf($t0) +/* 03C624 8003BA24 00000000 */ nop +/* 03C628 8003BA28 330B0001 */ andi $t3, $t8, 1 +/* 03C62C 8003BA2C 15600003 */ bnez $t3, .L8003BA3C +/* 03C630 8003BA30 8FB90054 */ lw $t9, 0x54($sp) +/* 03C634 8003BA34 AFA00050 */ sw $zero, 0x50($sp) +/* 03C638 8003BA38 8FB90054 */ lw $t9, 0x54($sp) +.L8003BA3C: +/* 03C63C 8003BA3C 00000000 */ nop +/* 03C640 8003BA40 00B96024 */ and $t4, $a1, $t9 +/* 03C644 8003BA44 15800050 */ bnez $t4, .L8003BB88 +/* 03C648 8003BA48 AFAC0028 */ sw $t4, 0x28($sp) +/* 03C64C 8003BA4C 910E0012 */ lbu $t6, 0x12($t0) +/* 03C650 8003BA50 00000000 */ nop +/* 03C654 8003BA54 008E082A */ slt $at, $a0, $t6 +/* 03C658 8003BA58 1020004B */ beqz $at, .L8003BB88 +/* 03C65C 8003BA5C 00000000 */ nop +/* 03C660 8003BA60 8C430000 */ lw $v1, ($v0) +/* 03C664 8003BA64 00000000 */ nop +/* 03C668 8003BA68 10600047 */ beqz $v1, .L8003BB88 +/* 03C66C 8003BA6C 00000000 */ nop +/* 03C670 8003BA70 8C6F0040 */ lw $t7, 0x40($v1) +/* 03C674 8003BA74 24060001 */ li $a2, 1 +/* 03C678 8003BA78 81F80054 */ lb $t8, 0x54($t7) +/* 03C67C 8003BA7C 00000000 */ nop +/* 03C680 8003BA80 14D80041 */ bne $a2, $t8, .L8003BB88 +/* 03C684 8003BA84 00000000 */ nop +/* 03C688 8003BA88 8C620064 */ lw $v0, 0x64($v1) +/* 03C68C 8003BA8C 2401FFFF */ li $at, -1 +/* 03C690 8003BA90 844B0000 */ lh $t3, ($v0) +/* 03C694 8003BA94 00000000 */ nop +/* 03C698 8003BA98 11610033 */ beq $t3, $at, .L8003BB68 +/* 03C69C 8003BA9C 00000000 */ nop +/* 03C6A0 8003BAA0 8E19005C */ lw $t9, 0x5c($s0) +/* 03C6A4 8003BAA4 00000000 */ nop +/* 03C6A8 8003BAA8 8F2C0100 */ lw $t4, 0x100($t9) +/* 03C6AC 8003BAAC 00000000 */ nop +/* 03C6B0 8003BAB0 146C002D */ bne $v1, $t4, .L8003BB68 +/* 03C6B4 8003BAB4 00000000 */ nop +/* 03C6B8 8003BAB8 810D0013 */ lb $t5, 0x13($t0) +/* 03C6BC 8003BABC 2401FFFF */ li $at, -1 +/* 03C6C0 8003BAC0 11A10028 */ beq $t5, $at, .L8003BB64 +/* 03C6C4 8003BAC4 240B012C */ li $t3, 300 +/* 03C6C8 8003BAC8 AFA80044 */ sw $t0, 0x44($sp) +/* 03C6CC 8003BACC 0C030D00 */ jal func_800C3400 +/* 03C6D0 8003BAD0 AFA90040 */ sw $t1, 0x40($sp) +/* 03C6D4 8003BAD4 8FA80044 */ lw $t0, 0x44($sp) +/* 03C6D8 8003BAD8 8FA90040 */ lw $t1, 0x40($sp) +/* 03C6DC 8003BADC 14400021 */ bnez $v0, .L8003BB64 +/* 03C6E0 8003BAE0 240B012C */ li $t3, 300 +/* 03C6E4 8003BAE4 850E000C */ lh $t6, 0xc($t0) +/* 03C6E8 8003BAE8 2404FFF8 */ li $a0, -8 +/* 03C6EC 8003BAEC 15C0001D */ bnez $t6, .L8003BB64 +/* 03C6F0 8003BAF0 240B012C */ li $t3, 300 +/* 03C6F4 8003BAF4 AFA80044 */ sw $t0, 0x44($sp) +/* 03C6F8 8003BAF8 0C000326 */ jal func_80000C98 +/* 03C6FC 8003BAFC AFA90040 */ sw $t1, 0x40($sp) +/* 03C700 8003BB00 8FA80044 */ lw $t0, 0x44($sp) +/* 03C704 8003BB04 240F008C */ li $t7, 140 +/* 03C708 8003BB08 24040010 */ li $a0, 16 +/* 03C70C 8003BB0C 0C00030E */ jal func_80000C38 +/* 03C710 8003BB10 AD0F0008 */ sw $t7, 8($t0) +/* 03C714 8003BB14 0C002050 */ jal func_80008140 +/* 03C718 8003BB18 00000000 */ nop +/* 03C71C 8003BB1C 0C0006F0 */ jal func_80001BC0 +/* 03C720 8003BB20 24040011 */ li $a0, 17 +/* 03C724 8003BB24 8FA80044 */ lw $t0, 0x44($sp) +/* 03C728 8003BB28 00000000 */ nop +/* 03C72C 8003BB2C 91040010 */ lbu $a0, 0x10($t0) +/* 03C730 8003BB30 0C030C50 */ jal func_800C3140 +/* 03C734 8003BB34 00000000 */ nop +/* 03C738 8003BB38 8FA80044 */ lw $t0, 0x44($sp) +/* 03C73C 8003BB3C 00000000 */ nop +/* 03C740 8003BB40 81040013 */ lb $a0, 0x13($t0) +/* 03C744 8003BB44 00000000 */ nop +/* 03C748 8003BB48 309800FF */ andi $t8, $a0, 0xff +/* 03C74C 8003BB4C 0C030C7B */ jal func_800C31EC +/* 03C750 8003BB50 03002025 */ move $a0, $t8 +/* 03C754 8003BB54 8FA80044 */ lw $t0, 0x44($sp) +/* 03C758 8003BB58 8FA90040 */ lw $t1, 0x40($sp) +/* 03C75C 8003BB5C 00000000 */ nop +/* 03C760 8003BB60 240B012C */ li $t3, 300 +.L8003BB64: +/* 03C764 8003BB64 A50B000C */ sh $t3, 0xc($t0) +.L8003BB68: +/* 03C768 8003BB68 AFA80044 */ sw $t0, 0x44($sp) +/* 03C76C 8003BB6C 0C030D00 */ jal func_800C3400 +/* 03C770 8003BB70 AFA90040 */ sw $t1, 0x40($sp) +/* 03C774 8003BB74 8FA80044 */ lw $t0, 0x44($sp) +/* 03C778 8003BB78 8FA90040 */ lw $t1, 0x40($sp) +/* 03C77C 8003BB7C 10400002 */ beqz $v0, .L8003BB88 +/* 03C780 8003BB80 2419012C */ li $t9, 300 +/* 03C784 8003BB84 A519000C */ sh $t9, 0xc($t0) +.L8003BB88: +/* 03C788 8003BB88 8D0C0008 */ lw $t4, 8($t0) +/* 03C78C 8003BB8C 00000000 */ nop +/* 03C790 8003BB90 1180001B */ beqz $t4, .L8003BC00 +/* 03C794 8003BB94 00000000 */ nop +/* 03C798 8003BB98 AFA80044 */ sw $t0, 0x44($sp) +/* 03C79C 8003BB9C 0C000702 */ jal func_80001C08 +/* 03C7A0 8003BBA0 AFA90040 */ sw $t1, 0x40($sp) +/* 03C7A4 8003BBA4 8FA80044 */ lw $t0, 0x44($sp) +/* 03C7A8 8003BBA8 8FA90040 */ lw $t1, 0x40($sp) +/* 03C7AC 8003BBAC 14400014 */ bnez $v0, .L8003BC00 +/* 03C7B0 8003BBB0 00000000 */ nop +/* 03C7B4 8003BBB4 8FA30064 */ lw $v1, 0x64($sp) +/* 03C7B8 8003BBB8 8D020008 */ lw $v0, 8($t0) +/* 03C7BC 8003BBBC 24040008 */ li $a0, 8 +/* 03C7C0 8003BBC0 0062082A */ slt $at, $v1, $v0 +/* 03C7C4 8003BBC4 10200003 */ beqz $at, .L8003BBD4 +/* 03C7C8 8003BBC8 00436823 */ subu $t5, $v0, $v1 +/* 03C7CC 8003BBCC 1000000C */ b .L8003BC00 +/* 03C7D0 8003BBD0 AD0D0008 */ sw $t5, 8($t0) +.L8003BBD4: +/* 03C7D4 8003BBD4 AD000008 */ sw $zero, 8($t0) +/* 03C7D8 8003BBD8 AFA90040 */ sw $t1, 0x40($sp) +/* 03C7DC 8003BBDC 0C000326 */ jal func_80000C98 +/* 03C7E0 8003BBE0 AFA80044 */ sw $t0, 0x44($sp) +/* 03C7E4 8003BBE4 0C00030E */ jal func_80000C38 +/* 03C7E8 8003BBE8 24040006 */ li $a0, 6 +/* 03C7EC 8003BBEC 0C00205A */ jal func_80008168 +/* 03C7F0 8003BBF0 00000000 */ nop +/* 03C7F4 8003BBF4 8FA80044 */ lw $t0, 0x44($sp) +/* 03C7F8 8003BBF8 8FA90040 */ lw $t1, 0x40($sp) +/* 03C7FC 8003BBFC 00000000 */ nop +.L8003BC00: +/* 03C800 8003BC00 8502000C */ lh $v0, 0xc($t0) +/* 03C804 8003BC04 8FA30064 */ lw $v1, 0x64($sp) +/* 03C808 8003BC08 18400004 */ blez $v0, .L8003BC1C +/* 03C80C 8003BC0C 24060001 */ li $a2, 1 +/* 03C810 8003BC10 00437023 */ subu $t6, $v0, $v1 +/* 03C814 8003BC14 10000002 */ b .L8003BC20 +/* 03C818 8003BC18 A50E000C */ sh $t6, 0xc($t0) +.L8003BC1C: +/* 03C81C 8003BC1C A500000C */ sh $zero, 0xc($t0) +.L8003BC20: +/* 03C820 8003BC20 8E02004C */ lw $v0, 0x4c($s0) +/* 03C824 8003BC24 91180012 */ lbu $t8, 0x12($t0) +/* 03C828 8003BC28 904F0013 */ lbu $t7, 0x13($v0) +/* 03C82C 8003BC2C 8FAA0034 */ lw $t2, 0x34($sp) +/* 03C830 8003BC30 01F8082A */ slt $at, $t7, $t8 +/* 03C834 8003BC34 10200018 */ beqz $at, .L8003BC98 +/* 03C838 8003BC38 00002025 */ move $a0, $zero +/* 03C83C 8003BC3C 8C430000 */ lw $v1, ($v0) +/* 03C840 8003BC40 00000000 */ nop +/* 03C844 8003BC44 10600014 */ beqz $v1, .L8003BC98 +/* 03C848 8003BC48 00000000 */ nop +/* 03C84C 8003BC4C 8C6B0040 */ lw $t3, 0x40($v1) +/* 03C850 8003BC50 00000000 */ nop +/* 03C854 8003BC54 81790054 */ lb $t9, 0x54($t3) +/* 03C858 8003BC58 00000000 */ nop +/* 03C85C 8003BC5C 14D9000E */ bne $a2, $t9, .L8003BC98 +/* 03C860 8003BC60 00000000 */ nop +/* 03C864 8003BC64 8C620064 */ lw $v0, 0x64($v1) +/* 03C868 8003BC68 24010002 */ li $at, 2 +/* 03C86C 8003BC6C 804401D6 */ lb $a0, 0x1d6($v0) +/* 03C870 8003BC70 00000000 */ nop +/* 03C874 8003BC74 10860005 */ beq $a0, $a2, .L8003BC8C +/* 03C878 8003BC78 00000000 */ nop +/* 03C87C 8003BC7C 10810006 */ beq $a0, $at, .L8003BC98 +/* 03C880 8003BC80 24040004 */ li $a0, 4 +/* 03C884 8003BC84 10000004 */ b .L8003BC98 +/* 03C888 8003BC88 00C02025 */ move $a0, $a2 +.L8003BC8C: +/* 03C88C 8003BC8C 10000002 */ b .L8003BC98 +/* 03C890 8003BC90 24040002 */ li $a0, 2 +/* 03C894 8003BC94 24040004 */ li $a0, 4 +.L8003BC98: +/* 03C898 8003BC98 914C0010 */ lbu $t4, 0x10($t2) +/* 03C89C 8003BC9C 91420000 */ lbu $v0, ($t2) +/* 03C8A0 8003BCA0 24010087 */ li $at, 135 +/* 03C8A4 8003BCA4 10410004 */ beq $v0, $at, .L8003BCB8 +/* 03C8A8 8003BCA8 008C2024 */ and $a0, $a0, $t4 +/* 03C8AC 8003BCAC 240100D7 */ li $at, 215 +/* 03C8B0 8003BCB0 1441000B */ bne $v0, $at, .L8003BCE0 +/* 03C8B4 8003BCB4 00000000 */ nop +.L8003BCB8: +/* 03C8B8 8003BCB8 AFA4004C */ sw $a0, 0x4c($sp) +/* 03C8BC 8003BCBC AFA80044 */ sw $t0, 0x44($sp) +/* 03C8C0 8003BCC0 0C008D70 */ jal func_800235C0 +/* 03C8C4 8003BCC4 AFA90040 */ sw $t1, 0x40($sp) +/* 03C8C8 8003BCC8 8FA4004C */ lw $a0, 0x4c($sp) +/* 03C8CC 8003BCCC 8FA80044 */ lw $t0, 0x44($sp) +/* 03C8D0 8003BCD0 8FA90040 */ lw $t1, 0x40($sp) +/* 03C8D4 8003BCD4 10400002 */ beqz $v0, .L8003BCE0 +/* 03C8D8 8003BCD8 00000000 */ nop +/* 03C8DC 8003BCDC AFA00050 */ sw $zero, 0x50($sp) +.L8003BCE0: +/* 03C8E0 8003BCE0 810D0015 */ lb $t5, 0x15($t0) +/* 03C8E4 8003BCE4 8FAA0034 */ lw $t2, 0x34($sp) +/* 03C8E8 8003BCE8 15A00012 */ bnez $t5, .L8003BD34 +/* 03C8EC 8003BCEC 24060001 */ li $a2, 1 +/* 03C8F0 8003BCF0 91020012 */ lbu $v0, 0x12($t0) +/* 03C8F4 8003BCF4 1480000A */ bnez $a0, .L8003BD20 +/* 03C8F8 8003BCF8 8FB80050 */ lw $t8, 0x50($sp) +/* 03C8FC 8003BCFC 8FAE0028 */ lw $t6, 0x28($sp) +/* 03C900 8003BD00 8FAF0050 */ lw $t7, 0x50($sp) +/* 03C904 8003BD04 11C00005 */ beqz $t6, .L8003BD1C +/* 03C908 8003BD08 01E2082A */ slt $at, $t7, $v0 +/* 03C90C 8003BD0C 10200004 */ beqz $at, .L8003BD20 +/* 03C910 8003BD10 8FB80050 */ lw $t8, 0x50($sp) +/* 03C914 8003BD14 10000007 */ b .L8003BD34 +/* 03C918 8003BD18 A1060015 */ sb $a2, 0x15($t0) +.L8003BD1C: +/* 03C91C 8003BD1C 8FB80050 */ lw $t8, 0x50($sp) +.L8003BD20: +/* 03C920 8003BD20 244B000A */ addiu $t3, $v0, 0xa +/* 03C924 8003BD24 0178082A */ slt $at, $t3, $t8 +/* 03C928 8003BD28 10200002 */ beqz $at, .L8003BD34 +/* 03C92C 8003BD2C 2419FFFF */ li $t9, -1 +/* 03C930 8003BD30 A1190015 */ sb $t9, 0x15($t0) +.L8003BD34: +/* 03C934 8003BD34 910C000F */ lbu $t4, 0xf($t0) +/* 03C938 8003BD38 8FAE0028 */ lw $t6, 0x28($sp) +/* 03C93C 8003BD3C 318D0002 */ andi $t5, $t4, 2 +/* 03C940 8003BD40 11A0005E */ beqz $t5, .L8003BEBC +/* 03C944 8003BD44 00002825 */ move $a1, $zero +/* 03C948 8003BD48 11C00033 */ beqz $t6, .L8003BE18 +/* 03C94C 8003BD4C 00000000 */ nop +/* 03C950 8003BD50 914F0000 */ lbu $t7, ($t2) +/* 03C954 8003BD54 24010019 */ li $at, 25 +/* 03C958 8003BD58 15E1002F */ bne $t7, $at, .L8003BE18 +/* 03C95C 8003BD5C 00000000 */ nop +/* 03C960 8003BD60 814B0014 */ lb $t3, 0x14($t2) +/* 03C964 8003BD64 8D380004 */ lw $t8, 4($t1) +/* 03C968 8003BD68 000BC880 */ sll $t9, $t3, 2 +/* 03C96C 8003BD6C 03196021 */ addu $t4, $t8, $t9 +/* 03C970 8003BD70 8D820000 */ lw $v0, ($t4) +/* 03C974 8003BD74 00000000 */ nop +/* 03C978 8003BD78 304D0002 */ andi $t5, $v0, 2 +/* 03C97C 8003BD7C 11A00023 */ beqz $t5, .L8003BE0C +/* 03C980 8003BD80 304E0004 */ andi $t6, $v0, 4 +/* 03C984 8003BD84 91220048 */ lbu $v0, 0x48($t1) +/* 03C988 8003BD88 24010005 */ li $at, 5 +/* 03C98C 8003BD8C 10410006 */ beq $v0, $at, .L8003BDA8 +/* 03C990 8003BD90 240F0001 */ li $t7, 1 +/* 03C994 8003BD94 952E000C */ lhu $t6, 0xc($t1) +/* 03C998 8003BD98 004F5804 */ sllv $t3, $t7, $v0 +/* 03C99C 8003BD9C 01CBC024 */ and $t8, $t6, $t3 +/* 03C9A0 8003BDA0 13000012 */ beqz $t8, .L8003BDEC +/* 03C9A4 8003BDA4 00000000 */ nop +.L8003BDA8: +/* 03C9A8 8003BDA8 91590015 */ lbu $t9, 0x15($t2) +/* 03C9AC 8003BDAC 240F0002 */ li $t7, 2 +/* 03C9B0 8003BDB0 332C00FF */ andi $t4, $t9, 0xff +/* 03C9B4 8003BDB4 2981000A */ slti $at, $t4, 0xa +/* 03C9B8 8003BDB8 14200004 */ bnez $at, .L8003BDCC +/* 03C9BC 8003BDBC A1190010 */ sb $t9, 0x10($t0) +/* 03C9C0 8003BDC0 240D0003 */ li $t5, 3 +/* 03C9C4 8003BDC4 10000002 */ b .L8003BDD0 +/* 03C9C8 8003BDC8 A20D003A */ sb $t5, 0x3a($s0) +.L8003BDCC: +/* 03C9CC 8003BDCC A20F003A */ sb $t7, 0x3a($s0) +.L8003BDD0: +/* 03C9D0 8003BDD0 814B0014 */ lb $t3, 0x14($t2) +/* 03C9D4 8003BDD4 8D2E0004 */ lw $t6, 4($t1) +/* 03C9D8 8003BDD8 000BC080 */ sll $t8, $t3, 2 +/* 03C9DC 8003BDDC 01D8C821 */ addu $t9, $t6, $t8 +/* 03C9E0 8003BDE0 8F220000 */ lw $v0, ($t9) +/* 03C9E4 8003BDE4 10000009 */ b .L8003BE0C +/* 03C9E8 8003BDE8 304E0004 */ andi $t6, $v0, 4 +.L8003BDEC: +/* 03C9EC 8003BDEC A200003A */ sb $zero, 0x3a($s0) +/* 03C9F0 8003BDF0 814D0014 */ lb $t5, 0x14($t2) +/* 03C9F4 8003BDF4 8D2C0004 */ lw $t4, 4($t1) +/* 03C9F8 8003BDF8 000D7880 */ sll $t7, $t5, 2 +/* 03C9FC 8003BDFC 018F5821 */ addu $t3, $t4, $t7 +/* 03CA00 8003BE00 8D620000 */ lw $v0, ($t3) +/* 03CA04 8003BE04 00000000 */ nop +/* 03CA08 8003BE08 304E0004 */ andi $t6, $v0, 4 +.L8003BE0C: +/* 03CA0C 8003BE0C 11C00002 */ beqz $t6, .L8003BE18 +/* 03CA10 8003BE10 00000000 */ nop +/* 03CA14 8003BE14 A206003A */ sb $a2, 0x3a($s0) +.L8003BE18: +/* 03CA18 8003BE18 81030015 */ lb $v1, 0x15($t0) +/* 03CA1C 8003BE1C 2401FFFF */ li $at, -1 +/* 03CA20 8003BE20 14C30015 */ bne $a2, $v1, .L8003BE78 +/* 03CA24 8003BE24 00000000 */ nop +/* 03CA28 8003BE28 3C01800E */ lui $at, %hi(D_800E6174) # $at, 0x800e +/* 03CA2C 8003BE2C C5120000 */ lwc1 $f18, ($t0) +/* 03CA30 8003BE30 C4276170 */ lwc1 $f7, %lo(D_800E6170)($at) +/* 03CA34 8003BE34 C4266174 */ lwc1 $f6, %lo(D_800E6174)($at) +/* 03CA38 8003BE38 C6100010 */ lwc1 $f16, 0x10($s0) +/* 03CA3C 8003BE3C 46009121 */ cvt.d.s $f4, $f18 +/* 03CA40 8003BE40 46262200 */ add.d $f8, $f4, $f6 +/* 03CA44 8003BE44 C7AA0030 */ lwc1 $f10, 0x30($sp) +/* 03CA48 8003BE48 460080A1 */ cvt.d.s $f2, $f16 +/* 03CA4C 8003BE4C 4628103C */ c.lt.d $f2, $f8 +/* 03CA50 8003BE50 00000000 */ nop +/* 03CA54 8003BE54 45000064 */ bc1f .L8003BFE8 +/* 03CA58 8003BE58 00000000 */ nop +/* 03CA5C 8003BE5C 46005021 */ cvt.d.s $f0, $f10 +/* 03CA60 8003BE60 46200400 */ add.d $f16, $f0, $f0 +/* 03CA64 8003BE64 24050001 */ li $a1, 1 +/* 03CA68 8003BE68 46301480 */ add.d $f18, $f2, $f16 +/* 03CA6C 8003BE6C 46209120 */ cvt.s.d $f4, $f18 +/* 03CA70 8003BE70 1000005D */ b .L8003BFE8 +/* 03CA74 8003BE74 E6040010 */ swc1 $f4, 0x10($s0) +.L8003BE78: +/* 03CA78 8003BE78 1461005B */ bne $v1, $at, .L8003BFE8 +/* 03CA7C 8003BE7C 00000000 */ nop +/* 03CA80 8003BE80 C6020010 */ lwc1 $f2, 0x10($s0) +/* 03CA84 8003BE84 C5060000 */ lwc1 $f6, ($t0) +/* 03CA88 8003BE88 C7A80030 */ lwc1 $f8, 0x30($sp) +/* 03CA8C 8003BE8C 4602303C */ c.lt.s $f6, $f2 +/* 03CA90 8003BE90 00000000 */ nop +/* 03CA94 8003BE94 45000054 */ bc1f .L8003BFE8 +/* 03CA98 8003BE98 00000000 */ nop +/* 03CA9C 8003BE9C 46004021 */ cvt.d.s $f0, $f8 +/* 03CAA0 8003BEA0 46200400 */ add.d $f16, $f0, $f0 +/* 03CAA4 8003BEA4 24050001 */ li $a1, 1 +/* 03CAA8 8003BEA8 460012A1 */ cvt.d.s $f10, $f2 +/* 03CAAC 8003BEAC 46305481 */ sub.d $f18, $f10, $f16 +/* 03CAB0 8003BEB0 46209120 */ cvt.s.d $f4, $f18 +/* 03CAB4 8003BEB4 1000004C */ b .L8003BFE8 +/* 03CAB8 8003BEB8 E6040010 */ swc1 $f4, 0x10($s0) +.L8003BEBC: +/* 03CABC 8003BEBC 91580000 */ lbu $t8, ($t2) +/* 03CAC0 8003BEC0 240100D7 */ li $at, 215 +/* 03CAC4 8003BEC4 17010025 */ bne $t8, $at, .L8003BF5C +/* 03CAC8 8003BEC8 24190001 */ li $t9, 1 +/* 03CACC 8003BECC A200003A */ sb $zero, 0x3a($s0) +/* 03CAD0 8003BED0 91240048 */ lbu $a0, 0x48($t1) +/* 03CAD4 8003BED4 9523000C */ lhu $v1, 0xc($t1) +/* 03CAD8 8003BED8 00996804 */ sllv $t5, $t9, $a0 +/* 03CADC 8003BEDC 006D6024 */ and $t4, $v1, $t5 +/* 03CAE0 8003BEE0 1180000C */ beqz $t4, .L8003BF14 +/* 03CAE4 8003BEE4 00801025 */ move $v0, $a0 +/* 03CAE8 8003BEE8 8D2F0000 */ lw $t7, ($t1) +/* 03CAEC 8003BEEC 00045840 */ sll $t3, $a0, 1 +/* 03CAF0 8003BEF0 01EB7021 */ addu $t6, $t7, $t3 +/* 03CAF4 8003BEF4 85D80000 */ lh $t8, ($t6) +/* 03CAF8 8003BEF8 24010008 */ li $at, 8 +/* 03CAFC 8003BEFC 17010006 */ bne $t8, $at, .L8003BF18 +/* 03CB00 8003BF00 24590006 */ addiu $t9, $v0, 6 +/* 03CB04 8003BF04 A206003A */ sb $a2, 0x3a($s0) +/* 03CB08 8003BF08 9523000C */ lhu $v1, 0xc($t1) +/* 03CB0C 8003BF0C 91220048 */ lbu $v0, 0x48($t1) +/* 03CB10 8003BF10 00000000 */ nop +.L8003BF14: +/* 03CB14 8003BF14 24590006 */ addiu $t9, $v0, 6 +.L8003BF18: +/* 03CB18 8003BF18 240D0001 */ li $t5, 1 +/* 03CB1C 8003BF1C 032D6004 */ sllv $t4, $t5, $t9 +/* 03CB20 8003BF20 006C7824 */ and $t7, $v1, $t4 +/* 03CB24 8003BF24 11E00005 */ beqz $t7, .L8003BF3C +/* 03CB28 8003BF28 24010005 */ li $at, 5 +/* 03CB2C 8003BF2C 240B0002 */ li $t3, 2 +/* 03CB30 8003BF30 A20B003A */ sb $t3, 0x3a($s0) +/* 03CB34 8003BF34 91220048 */ lbu $v0, 0x48($t1) +/* 03CB38 8003BF38 00000000 */ nop +.L8003BF3C: +/* 03CB3C 8003BF3C 14410007 */ bne $v0, $at, .L8003BF5C +/* 03CB40 8003BF40 00000000 */ nop +/* 03CB44 8003BF44 8202003A */ lb $v0, 0x3a($s0) +/* 03CB48 8003BF48 00000000 */ nop +/* 03CB4C 8003BF4C 28410002 */ slti $at, $v0, 2 +/* 03CB50 8003BF50 10200002 */ beqz $at, .L8003BF5C +/* 03CB54 8003BF54 244E0001 */ addiu $t6, $v0, 1 +/* 03CB58 8003BF58 A20E003A */ sb $t6, 0x3a($s0) +.L8003BF5C: +/* 03CB5C 8003BF5C 81030015 */ lb $v1, 0x15($t0) +/* 03CB60 8003BF60 00001025 */ move $v0, $zero +/* 03CB64 8003BF64 14C30008 */ bne $a2, $v1, .L8003BF88 +/* 03CB68 8003BF68 2401FFFF */ li $at, -1 +/* 03CB6C 8003BF6C 86180000 */ lh $t8, ($s0) +/* 03CB70 8003BF70 8E0D007C */ lw $t5, 0x7c($s0) +/* 03CB74 8003BF74 00000000 */ nop +/* 03CB78 8003BF78 030D1023 */ subu $v0, $t8, $t5 +/* 03CB7C 8003BF7C 0002CC00 */ sll $t9, $v0, 0x10 +/* 03CB80 8003BF80 10000009 */ b .L8003BFA8 +/* 03CB84 8003BF84 00191403 */ sra $v0, $t9, 0x10 +.L8003BF88: +/* 03CB88 8003BF88 14610008 */ bne $v1, $at, .L8003BFAC +/* 03CB8C 8003BF8C 000268C3 */ sra $t5, $v0, 3 +/* 03CB90 8003BF90 860F0000 */ lh $t7, ($s0) +/* 03CB94 8003BF94 8E0B0078 */ lw $t3, 0x78($s0) +/* 03CB98 8003BF98 00000000 */ nop +/* 03CB9C 8003BF9C 01EB1023 */ subu $v0, $t7, $t3 +/* 03CBA0 8003BFA0 00027400 */ sll $t6, $v0, 0x10 +/* 03CBA4 8003BFA4 000E1403 */ sra $v0, $t6, 0x10 +.L8003BFA8: +/* 03CBA8 8003BFA8 000268C3 */ sra $t5, $v0, 3 +.L8003BFAC: +/* 03CBAC 8003BFAC 000DCC00 */ sll $t9, $t5, 0x10 +/* 03CBB0 8003BFB0 00191403 */ sra $v0, $t9, 0x10 +/* 03CBB4 8003BFB4 28410201 */ slti $at, $v0, 0x201 +/* 03CBB8 8003BFB8 86030000 */ lh $v1, ($s0) +/* 03CBBC 8003BFBC 14200003 */ bnez $at, .L8003BFCC +/* 03CBC0 8003BFC0 2841FE00 */ slti $at, $v0, -0x200 +/* 03CBC4 8003BFC4 24020200 */ li $v0, 512 +/* 03CBC8 8003BFC8 2841FE00 */ slti $at, $v0, -0x200 +.L8003BFCC: +/* 03CBCC 8003BFCC 10200003 */ beqz $at, .L8003BFDC +/* 03CBD0 8003BFD0 00627823 */ subu $t7, $v1, $v0 +/* 03CBD4 8003BFD4 2402FE00 */ li $v0, -512 +/* 03CBD8 8003BFD8 00627823 */ subu $t7, $v1, $v0 +.L8003BFDC: +/* 03CBDC 8003BFDC 10400002 */ beqz $v0, .L8003BFE8 +/* 03CBE0 8003BFE0 A60F0000 */ sh $t7, ($s0) +/* 03CBE4 8003BFE4 24050001 */ li $a1, 1 +.L8003BFE8: +/* 03CBE8 8003BFE8 10A00013 */ beqz $a1, .L8003C038 +/* 03CBEC 8003BFEC 00000000 */ nop +/* 03CBF0 8003BFF0 8D0B0004 */ lw $t3, 4($t0) +/* 03CBF4 8003BFF4 24040222 */ li $a0, 546 +/* 03CBF8 8003BFF8 1560001B */ bnez $t3, .L8003C068 +/* 03CBFC 8003BFFC 240E0001 */ li $t6, 1 +/* 03CC00 8003C000 8E05000C */ lw $a1, 0xc($s0) +/* 03CC04 8003C004 8E060010 */ lw $a2, 0x10($s0) +/* 03CC08 8003C008 8E070014 */ lw $a3, 0x14($s0) +/* 03CC0C 8003C00C 25180004 */ addiu $t8, $t0, 4 +/* 03CC10 8003C010 AFB80014 */ sw $t8, 0x14($sp) +/* 03CC14 8003C014 AFA90040 */ sw $t1, 0x40($sp) +/* 03CC18 8003C018 AFA80044 */ sw $t0, 0x44($sp) +/* 03CC1C 8003C01C 0C002556 */ jal func_80009558 +/* 03CC20 8003C020 AFAE0010 */ sw $t6, 0x10($sp) +/* 03CC24 8003C024 8FA80044 */ lw $t0, 0x44($sp) +/* 03CC28 8003C028 8FA90040 */ lw $t1, 0x40($sp) +/* 03CC2C 8003C02C 8FAA0034 */ lw $t2, 0x34($sp) +/* 03CC30 8003C030 1000000E */ b .L8003C06C +/* 03CC34 8003C034 81020014 */ lb $v0, 0x14($t0) +.L8003C038: +/* 03CC38 8003C038 8D020004 */ lw $v0, 4($t0) +/* 03CC3C 8003C03C A1000015 */ sb $zero, 0x15($t0) +/* 03CC40 8003C040 10400009 */ beqz $v0, .L8003C068 +/* 03CC44 8003C044 00402025 */ move $a0, $v0 +/* 03CC48 8003C048 AFA80044 */ sw $t0, 0x44($sp) +/* 03CC4C 8003C04C 0C0025BE */ jal func_800096F8 +/* 03CC50 8003C050 AFA90040 */ sw $t1, 0x40($sp) +/* 03CC54 8003C054 8FA80044 */ lw $t0, 0x44($sp) +/* 03CC58 8003C058 8FA90040 */ lw $t1, 0x40($sp) +/* 03CC5C 8003C05C AD000004 */ sw $zero, 4($t0) +/* 03CC60 8003C060 8FAA0034 */ lw $t2, 0x34($sp) +/* 03CC64 8003C064 00000000 */ nop +.L8003C068: +/* 03CC68 8003C068 81020014 */ lb $v0, 0x14($t0) +.L8003C06C: +/* 03CC6C 8003C06C 240D0001 */ li $t5, 1 +/* 03CC70 8003C070 04400010 */ bltz $v0, .L8003C0B4 +/* 03CC74 8003C074 00000000 */ nop +/* 03CC78 8003C078 95390008 */ lhu $t9, 8($t1) +/* 03CC7C 8003C07C 004D2004 */ sllv $a0, $t5, $v0 +/* 03CC80 8003C080 03246024 */ and $t4, $t9, $a0 +/* 03CC84 8003C084 11800043 */ beqz $t4, .L8003C194 +/* 03CC88 8003C088 00000000 */ nop +/* 03CC8C 8003C08C 912B0049 */ lbu $t3, 0x49($t1) +/* 03CC90 8003C090 8D2F0004 */ lw $t7, 4($t1) +/* 03CC94 8003C094 000B7080 */ sll $t6, $t3, 2 +/* 03CC98 8003C098 01EE1021 */ addu $v0, $t7, $t6 +/* 03CC9C 8003C09C 8C580000 */ lw $t8, ($v0) +/* 03CCA0 8003C0A0 8FAD0054 */ lw $t5, 0x54($sp) +/* 03CCA4 8003C0A4 00000000 */ nop +/* 03CCA8 8003C0A8 030DC825 */ or $t9, $t8, $t5 +/* 03CCAC 8003C0AC 10000039 */ b .L8003C194 +/* 03CCB0 8003C0B0 AC590000 */ sw $t9, ($v0) +.L8003C0B4: +/* 03CCB4 8003C0B4 814C0013 */ lb $t4, 0x13($t2) +/* 03CCB8 8003C0B8 8D230004 */ lw $v1, 4($t1) +/* 03CCBC 8003C0BC 1580001A */ bnez $t4, .L8003C128 +/* 03CCC0 8003C0C0 00000000 */ nop +/* 03CCC4 8003C0C4 8D2B0000 */ lw $t3, ($t1) +/* 03CCC8 8003C0C8 910E0010 */ lbu $t6, 0x10($t0) +/* 03CCCC 8003C0CC 856F0000 */ lh $t7, ($t3) +/* 03CCD0 8003C0D0 00000000 */ nop +/* 03CCD4 8003C0D4 01EE082A */ slt $at, $t7, $t6 +/* 03CCD8 8003C0D8 1420000A */ bnez $at, .L8003C104 +/* 03CCDC 8003C0DC 00000000 */ nop +/* 03CCE0 8003C0E0 91380049 */ lbu $t8, 0x49($t1) +/* 03CCE4 8003C0E4 8FAC0054 */ lw $t4, 0x54($sp) +/* 03CCE8 8003C0E8 00186880 */ sll $t5, $t8, 2 +/* 03CCEC 8003C0EC 006D1021 */ addu $v0, $v1, $t5 +/* 03CCF0 8003C0F0 8C590000 */ lw $t9, ($v0) +/* 03CCF4 8003C0F4 00000000 */ nop +/* 03CCF8 8003C0F8 032C5825 */ or $t3, $t9, $t4 +/* 03CCFC 8003C0FC 10000025 */ b .L8003C194 +/* 03CD00 8003C100 AC4B0000 */ sw $t3, ($v0) +.L8003C104: +/* 03CD04 8003C104 912F0049 */ lbu $t7, 0x49($t1) +/* 03CD08 8003C108 8FAD0054 */ lw $t5, 0x54($sp) +/* 03CD0C 8003C10C 000F7080 */ sll $t6, $t7, 2 +/* 03CD10 8003C110 006E1021 */ addu $v0, $v1, $t6 +/* 03CD14 8003C114 8C580000 */ lw $t8, ($v0) +/* 03CD18 8003C118 01A0C827 */ not $t9, $t5 +/* 03CD1C 8003C11C 03196024 */ and $t4, $t8, $t9 +/* 03CD20 8003C120 1000001C */ b .L8003C194 +/* 03CD24 8003C124 AC4C0000 */ sw $t4, ($v0) +.L8003C128: +/* 03CD28 8003C128 912F0048 */ lbu $t7, 0x48($t1) +/* 03CD2C 8003C12C 8D2B0000 */ lw $t3, ($t1) +/* 03CD30 8003C130 000F7040 */ sll $t6, $t7, 1 +/* 03CD34 8003C134 016E6821 */ addu $t5, $t3, $t6 +/* 03CD38 8003C138 85B80000 */ lh $t8, ($t5) +/* 03CD3C 8003C13C 91190010 */ lbu $t9, 0x10($t0) +/* 03CD40 8003C140 00000000 */ nop +/* 03CD44 8003C144 0319082A */ slt $at, $t8, $t9 +/* 03CD48 8003C148 1420000A */ bnez $at, .L8003C174 +/* 03CD4C 8003C14C 00000000 */ nop +/* 03CD50 8003C150 912C0049 */ lbu $t4, 0x49($t1) +/* 03CD54 8003C154 8FAE0054 */ lw $t6, 0x54($sp) +/* 03CD58 8003C158 000C7880 */ sll $t7, $t4, 2 +/* 03CD5C 8003C15C 006F1021 */ addu $v0, $v1, $t7 +/* 03CD60 8003C160 8C4B0000 */ lw $t3, ($v0) +/* 03CD64 8003C164 00000000 */ nop +/* 03CD68 8003C168 016E6825 */ or $t5, $t3, $t6 +/* 03CD6C 8003C16C 10000009 */ b .L8003C194 +/* 03CD70 8003C170 AC4D0000 */ sw $t5, ($v0) +.L8003C174: +/* 03CD74 8003C174 91380049 */ lbu $t8, 0x49($t1) +/* 03CD78 8003C178 8FAF0054 */ lw $t7, 0x54($sp) +/* 03CD7C 8003C17C 0018C880 */ sll $t9, $t8, 2 +/* 03CD80 8003C180 00791021 */ addu $v0, $v1, $t9 +/* 03CD84 8003C184 8C4C0000 */ lw $t4, ($v0) +/* 03CD88 8003C188 01E05827 */ not $t3, $t7 +/* 03CD8C 8003C18C 018B7024 */ and $t6, $t4, $t3 +/* 03CD90 8003C190 AC4E0000 */ sw $t6, ($v0) +.L8003C194: +/* 03CD94 8003C194 8E18004C */ lw $t8, 0x4c($s0) +/* 03CD98 8003C198 240D00FF */ li $t5, 255 +/* 03CD9C 8003C19C A30D0013 */ sb $t5, 0x13($t8) +/* 03CDA0 8003C1A0 8E19004C */ lw $t9, 0x4c($s0) +/* 03CDA4 8003C1A4 00000000 */ nop +/* 03CDA8 8003C1A8 AF200000 */ sw $zero, ($t9) +/* 03CDAC 8003C1AC 8E02004C */ lw $v0, 0x4c($s0) +/* 03CDB0 8003C1B0 00000000 */ nop +/* 03CDB4 8003C1B4 844F0014 */ lh $t7, 0x14($v0) +/* 03CDB8 8003C1B8 00000000 */ nop +/* 03CDBC 8003C1BC 31ECFFF7 */ andi $t4, $t7, 0xfff7 +/* 03CDC0 8003C1C0 A44C0014 */ sh $t4, 0x14($v0) +/* 03CDC4 8003C1C4 8E0B005C */ lw $t3, 0x5c($s0) +/* 03CDC8 8003C1C8 00000000 */ nop +/* 03CDCC 8003C1CC AD600100 */ sw $zero, 0x100($t3) +/* 03CDD0 8003C1D0 8FBF0024 */ lw $ra, 0x24($sp) +/* 03CDD4 8003C1D4 8FB00020 */ lw $s0, 0x20($sp) +/* 03CDD8 8003C1D8 03E00008 */ jr $ra +/* 03CDDC 8003C1DC 27BD0060 */ addiu $sp, $sp, 0x60 + diff --git a/asm/non_matchings/unknown_032760/func_8003C1E0.s b/asm/non_matchings/unknown_032760/func_8003C1E0.s new file mode 100644 index 00000000..6df732ab --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003C1E0.s @@ -0,0 +1,69 @@ +glabel func_8003C1E0 +/* 03CDE0 8003C1E0 A080003A */ sb $zero, 0x3a($a0) +/* 03CDE4 8003C1E4 90AF0008 */ lbu $t7, 8($a1) +/* 03CDE8 8003C1E8 8C820064 */ lw $v0, 0x64($a0) +/* 03CDEC 8003C1EC 000FC280 */ sll $t8, $t7, 0xa +/* 03CDF0 8003C1F0 A4980000 */ sh $t8, ($a0) +/* 03CDF4 8003C1F4 80B9000E */ lb $t9, 0xe($a1) +/* 03CDF8 8003C1F8 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 03CDFC 8003C1FC A059000F */ sb $t9, 0xf($v0) +/* 03CE00 8003C200 90A8000B */ lbu $t0, 0xb($a1) +/* 03CE04 8003C204 44811000 */ mtc1 $at, $f2 +/* 03CE08 8003C208 A0480013 */ sb $t0, 0x13($v0) +/* 03CE0C 8003C20C C4840010 */ lwc1 $f4, 0x10($a0) +/* 03CE10 8003C210 AC400008 */ sw $zero, 8($v0) +/* 03CE14 8003C214 E4440000 */ swc1 $f4, ($v0) +/* 03CE18 8003C218 90A9000A */ lbu $t1, 0xa($a1) +/* 03CE1C 8003C21C 3C014280 */ li $at, 0x42800000 # 64.000000 +/* 03CE20 8003C220 A0490012 */ sb $t1, 0x12($v0) +/* 03CE24 8003C224 848A0000 */ lh $t2, ($a0) +/* 03CE28 8003C228 44814000 */ mtc1 $at, $f8 +/* 03CE2C 8003C22C AC8A0078 */ sw $t2, 0x78($a0) +/* 03CE30 8003C230 90AB0009 */ lbu $t3, 9($a1) +/* 03CE34 8003C234 00000000 */ nop +/* 03CE38 8003C238 316C003F */ andi $t4, $t3, 0x3f +/* 03CE3C 8003C23C 000C6A80 */ sll $t5, $t4, 0xa +/* 03CE40 8003C240 AC8D007C */ sw $t5, 0x7c($a0) +/* 03CE44 8003C244 90AF000C */ lbu $t7, 0xc($a1) +/* 03CE48 8003C248 00000000 */ nop +/* 03CE4C 8003C24C 448F3000 */ mtc1 $t7, $f6 +/* 03CE50 8003C250 00000000 */ nop +/* 03CE54 8003C254 46803020 */ cvt.s.w $f0, $f6 +/* 03CE58 8003C258 4602003C */ c.lt.s $f0, $f2 +/* 03CE5C 8003C25C 00000000 */ nop +/* 03CE60 8003C260 45000003 */ bc1f .L8003C270 +/* 03CE64 8003C264 00000000 */ nop +/* 03CE68 8003C268 46001006 */ mov.s $f0, $f2 +/* 03CE6C 8003C26C 00000000 */ nop +.L8003C270: +/* 03CE70 8003C270 46080003 */ div.s $f0, $f0, $f8 +/* 03CE74 8003C274 8C980040 */ lw $t8, 0x40($a0) +/* 03CE78 8003C278 8C88004C */ lw $t0, 0x4c($a0) +/* 03CE7C 8003C27C C70A000C */ lwc1 $f10, 0xc($t8) +/* 03CE80 8003C280 24190021 */ li $t9, 33 +/* 03CE84 8003C284 24090002 */ li $t1, 2 +/* 03CE88 8003C288 240B0014 */ li $t3, 20 +/* 03CE8C 8003C28C 46005402 */ mul.s $f16, $f10, $f0 +/* 03CE90 8003C290 E4900008 */ swc1 $f16, 8($a0) +/* 03CE94 8003C294 A5190014 */ sh $t9, 0x14($t0) +/* 03CE98 8003C298 8C8A004C */ lw $t2, 0x4c($a0) +/* 03CE9C 8003C29C 00000000 */ nop +/* 03CEA0 8003C2A0 A1490011 */ sb $t1, 0x11($t2) +/* 03CEA4 8003C2A4 8C8C004C */ lw $t4, 0x4c($a0) +/* 03CEA8 8003C2A8 00000000 */ nop +/* 03CEAC 8003C2AC A18B0010 */ sb $t3, 0x10($t4) +/* 03CEB0 8003C2B0 8C8D004C */ lw $t5, 0x4c($a0) +/* 03CEB4 8003C2B4 00000000 */ nop +/* 03CEB8 8003C2B8 A1A00012 */ sb $zero, 0x12($t5) +/* 03CEBC 8003C2BC 8C8F0040 */ lw $t7, 0x40($a0) +/* 03CEC0 8003C2C0 808E003A */ lb $t6, 0x3a($a0) +/* 03CEC4 8003C2C4 81F80055 */ lb $t8, 0x55($t7) +/* 03CEC8 8003C2C8 00000000 */ nop +/* 03CECC 8003C2CC 01D8082A */ slt $at, $t6, $t8 +/* 03CED0 8003C2D0 14200002 */ bnez $at, .L8003C2DC +/* 03CED4 8003C2D4 00000000 */ nop +/* 03CED8 8003C2D8 A080003A */ sb $zero, 0x3a($a0) +.L8003C2DC: +/* 03CEDC 8003C2DC 03E00008 */ jr $ra +/* 03CEE0 8003C2E0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003C2E4.s b/asm/non_matchings/unknown_032760/func_8003C2E4.s new file mode 100644 index 00000000..912054a5 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003C2E4.s @@ -0,0 +1,236 @@ +glabel func_8003C2E4 +/* 03CEE4 8003C2E4 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 03CEE8 8003C2E8 AFBF0024 */ sw $ra, 0x24($sp) +/* 03CEEC 8003C2EC AFB10020 */ sw $s1, 0x20($sp) +/* 03CEF0 8003C2F0 AFB0001C */ sw $s0, 0x1c($sp) +/* 03CEF4 8003C2F4 AFA50034 */ sw $a1, 0x34($sp) +/* 03CEF8 8003C2F8 8C900064 */ lw $s0, 0x64($a0) +/* 03CEFC 8003C2FC 0C01BAA4 */ jal func_8006EA90 +/* 03CF00 8003C300 00808825 */ move $s1, $a0 +/* 03CF04 8003C304 AFA2002C */ sw $v0, 0x2c($sp) +/* 03CF08 8003C308 920E000F */ lbu $t6, 0xf($s0) +/* 03CF0C 8003C30C 00000000 */ nop +/* 03CF10 8003C310 15C00007 */ bnez $t6, .L8003C330 +/* 03CF14 8003C314 00000000 */ nop +/* 03CF18 8003C318 904F0016 */ lbu $t7, 0x16($v0) +/* 03CF1C 8003C31C 3C18800E */ lui $t8, 0x800e +/* 03CF20 8003C320 030FC021 */ addu $t8, $t8, $t7 +/* 03CF24 8003C324 8318CA94 */ lb $t8, -0x356c($t8) +/* 03CF28 8003C328 10000007 */ b .L8003C348 +/* 03CF2C 8003C32C A238003A */ sb $t8, 0x3a($s1) +.L8003C330: +/* 03CF30 8003C330 90590016 */ lbu $t9, 0x16($v0) +/* 03CF34 8003C334 3C08800E */ lui $t0, 0x800e +/* 03CF38 8003C338 01194021 */ addu $t0, $t0, $t9 +/* 03CF3C 8003C33C 8108CA9C */ lb $t0, -0x3564($t0) +/* 03CF40 8003C340 00000000 */ nop +/* 03CF44 8003C344 A228003A */ sb $t0, 0x3a($s1) +.L8003C348: +/* 03CF48 8003C348 8E23004C */ lw $v1, 0x4c($s1) +/* 03CF4C 8003C34C 920A0012 */ lbu $t2, 0x12($s0) +/* 03CF50 8003C350 90690013 */ lbu $t1, 0x13($v1) +/* 03CF54 8003C354 00000000 */ nop +/* 03CF58 8003C358 012A082A */ slt $at, $t1, $t2 +/* 03CF5C 8003C35C 10200043 */ beqz $at, .L8003C46C +/* 03CF60 8003C360 00000000 */ nop +/* 03CF64 8003C364 904B0016 */ lbu $t3, 0x16($v0) +/* 03CF68 8003C368 00000000 */ nop +/* 03CF6C 8003C36C 29610004 */ slti $at, $t3, 4 +/* 03CF70 8003C370 14200008 */ bnez $at, .L8003C394 +/* 03CF74 8003C374 00000000 */ nop +/* 03CF78 8003C378 8C4C0000 */ lw $t4, ($v0) +/* 03CF7C 8003C37C 00000000 */ nop +/* 03CF80 8003C380 858D0000 */ lh $t5, ($t4) +/* 03CF84 8003C384 00000000 */ nop +/* 03CF88 8003C388 29A1002F */ slti $at, $t5, 0x2f +/* 03CF8C 8003C38C 10200037 */ beqz $at, .L8003C46C +/* 03CF90 8003C390 00000000 */ nop +.L8003C394: +/* 03CF94 8003C394 8C620000 */ lw $v0, ($v1) +/* 03CF98 8003C398 00000000 */ nop +/* 03CF9C 8003C39C 10400033 */ beqz $v0, .L8003C46C +/* 03CFA0 8003C3A0 00000000 */ nop +/* 03CFA4 8003C3A4 8C4E0040 */ lw $t6, 0x40($v0) +/* 03CFA8 8003C3A8 24010001 */ li $at, 1 +/* 03CFAC 8003C3AC 81CF0054 */ lb $t7, 0x54($t6) +/* 03CFB0 8003C3B0 00000000 */ nop +/* 03CFB4 8003C3B4 15E1002D */ bne $t7, $at, .L8003C46C +/* 03CFB8 8003C3B8 00000000 */ nop +/* 03CFBC 8003C3BC 8C430064 */ lw $v1, 0x64($v0) +/* 03CFC0 8003C3C0 2404FFFF */ li $a0, -1 +/* 03CFC4 8003C3C4 84780000 */ lh $t8, ($v1) +/* 03CFC8 8003C3C8 00000000 */ nop +/* 03CFCC 8003C3CC 10980022 */ beq $a0, $t8, .L8003C458 +/* 03CFD0 8003C3D0 00000000 */ nop +/* 03CFD4 8003C3D4 8E39005C */ lw $t9, 0x5c($s1) +/* 03CFD8 8003C3D8 00000000 */ nop +/* 03CFDC 8003C3DC 8F280100 */ lw $t0, 0x100($t9) +/* 03CFE0 8003C3E0 00000000 */ nop +/* 03CFE4 8003C3E4 1448001C */ bne $v0, $t0, .L8003C458 +/* 03CFE8 8003C3E8 00000000 */ nop +/* 03CFEC 8003C3EC 82090013 */ lb $t1, 0x13($s0) +/* 03CFF0 8003C3F0 00000000 */ nop +/* 03CFF4 8003C3F4 10890017 */ beq $a0, $t1, .L8003C454 +/* 03CFF8 8003C3F8 240D012C */ li $t5, 300 +/* 03CFFC 8003C3FC 0C030D00 */ jal func_800C3400 +/* 03D000 8003C400 00000000 */ nop +/* 03D004 8003C404 14400013 */ bnez $v0, .L8003C454 +/* 03D008 8003C408 240D012C */ li $t5, 300 +/* 03D00C 8003C40C 860A000C */ lh $t2, 0xc($s0) +/* 03D010 8003C410 00000000 */ nop +/* 03D014 8003C414 1540000F */ bnez $t2, .L8003C454 +/* 03D018 8003C418 240D012C */ li $t5, 300 +/* 03D01C 8003C41C 0C000326 */ jal func_80000C98 +/* 03D020 8003C420 2404FFF8 */ li $a0, -8 +/* 03D024 8003C424 240B008C */ li $t3, 140 +/* 03D028 8003C428 AE0B0008 */ sw $t3, 8($s0) +/* 03D02C 8003C42C 0C00030E */ jal func_80000C38 +/* 03D030 8003C430 24040010 */ li $a0, 16 +/* 03D034 8003C434 0C0006F0 */ jal func_80001BC0 +/* 03D038 8003C438 24040011 */ li $a0, 17 +/* 03D03C 8003C43C 82040013 */ lb $a0, 0x13($s0) +/* 03D040 8003C440 00000000 */ nop +/* 03D044 8003C444 308C00FF */ andi $t4, $a0, 0xff +/* 03D048 8003C448 0C030C7B */ jal func_800C31EC +/* 03D04C 8003C44C 01802025 */ move $a0, $t4 +/* 03D050 8003C450 240D012C */ li $t5, 300 +.L8003C454: +/* 03D054 8003C454 A60D000C */ sh $t5, 0xc($s0) +.L8003C458: +/* 03D058 8003C458 0C030D00 */ jal func_800C3400 +/* 03D05C 8003C45C 00000000 */ nop +/* 03D060 8003C460 10400002 */ beqz $v0, .L8003C46C +/* 03D064 8003C464 240E012C */ li $t6, 300 +/* 03D068 8003C468 A60E000C */ sh $t6, 0xc($s0) +.L8003C46C: +/* 03D06C 8003C46C 8E0F0008 */ lw $t7, 8($s0) +/* 03D070 8003C470 00000000 */ nop +/* 03D074 8003C474 11E00011 */ beqz $t7, .L8003C4BC +/* 03D078 8003C478 00000000 */ nop +/* 03D07C 8003C47C 0C000702 */ jal func_80001C08 +/* 03D080 8003C480 00000000 */ nop +/* 03D084 8003C484 1440000D */ bnez $v0, .L8003C4BC +/* 03D088 8003C488 00000000 */ nop +/* 03D08C 8003C48C 8FA30034 */ lw $v1, 0x34($sp) +/* 03D090 8003C490 8E020008 */ lw $v0, 8($s0) +/* 03D094 8003C494 24040008 */ li $a0, 8 +/* 03D098 8003C498 0062082A */ slt $at, $v1, $v0 +/* 03D09C 8003C49C 10200003 */ beqz $at, .L8003C4AC +/* 03D0A0 8003C4A0 0043C023 */ subu $t8, $v0, $v1 +/* 03D0A4 8003C4A4 10000005 */ b .L8003C4BC +/* 03D0A8 8003C4A8 AE180008 */ sw $t8, 8($s0) +.L8003C4AC: +/* 03D0AC 8003C4AC 0C000326 */ jal func_80000C98 +/* 03D0B0 8003C4B0 AE000008 */ sw $zero, 8($s0) +/* 03D0B4 8003C4B4 0C00030E */ jal func_80000C38 +/* 03D0B8 8003C4B8 24040006 */ li $a0, 6 +.L8003C4BC: +/* 03D0BC 8003C4BC 8602000C */ lh $v0, 0xc($s0) +/* 03D0C0 8003C4C0 8FA30034 */ lw $v1, 0x34($sp) +/* 03D0C4 8003C4C4 18400003 */ blez $v0, .L8003C4D4 +/* 03D0C8 8003C4C8 0043C823 */ subu $t9, $v0, $v1 +/* 03D0CC 8003C4CC 10000002 */ b .L8003C4D8 +/* 03D0D0 8003C4D0 A619000C */ sh $t9, 0xc($s0) +.L8003C4D4: +/* 03D0D4 8003C4D4 A600000C */ sh $zero, 0xc($s0) +.L8003C4D8: +/* 03D0D8 8003C4D8 8FA8002C */ lw $t0, 0x2c($sp) +/* 03D0DC 8003C4DC 24040001 */ li $a0, 1 +/* 03D0E0 8003C4E0 91090016 */ lbu $t1, 0x16($t0) +/* 03D0E4 8003C4E4 00000000 */ nop +/* 03D0E8 8003C4E8 29210004 */ slti $at, $t1, 4 +/* 03D0EC 8003C4EC 14200016 */ bnez $at, .L8003C548 +/* 03D0F0 8003C4F0 00000000 */ nop +/* 03D0F4 8003C4F4 8E2A004C */ lw $t2, 0x4c($s1) +/* 03D0F8 8003C4F8 920C0012 */ lbu $t4, 0x12($s0) +/* 03D0FC 8003C4FC 914B0013 */ lbu $t3, 0x13($t2) +/* 03D100 8003C500 00000000 */ nop +/* 03D104 8003C504 016C082A */ slt $at, $t3, $t4 +/* 03D108 8003C508 1020000F */ beqz $at, .L8003C548 +/* 03D10C 8003C50C 00000000 */ nop +/* 03D110 8003C510 8D0D0000 */ lw $t5, ($t0) +/* 03D114 8003C514 00000000 */ nop +/* 03D118 8003C518 85AE0000 */ lh $t6, ($t5) +/* 03D11C 8003C51C 00000000 */ nop +/* 03D120 8003C520 29C1002F */ slti $at, $t6, 0x2f +/* 03D124 8003C524 14200008 */ bnez $at, .L8003C548 +/* 03D128 8003C528 00000000 */ nop +/* 03D12C 8003C52C 86230000 */ lh $v1, ($s1) +/* 03D130 8003C530 8E2F007C */ lw $t7, 0x7c($s1) +/* 03D134 8003C534 00000000 */ nop +/* 03D138 8003C538 006F1023 */ subu $v0, $v1, $t7 +/* 03D13C 8003C53C 0002C400 */ sll $t8, $v0, 0x10 +/* 03D140 8003C540 10000007 */ b .L8003C560 +/* 03D144 8003C544 00181403 */ sra $v0, $t8, 0x10 +.L8003C548: +/* 03D148 8003C548 86230000 */ lh $v1, ($s1) +/* 03D14C 8003C54C 8E290078 */ lw $t1, 0x78($s1) +/* 03D150 8003C550 00000000 */ nop +/* 03D154 8003C554 00691023 */ subu $v0, $v1, $t1 +/* 03D158 8003C558 00025400 */ sll $t2, $v0, 0x10 +/* 03D15C 8003C55C 000A1403 */ sra $v0, $t2, 0x10 +.L8003C560: +/* 03D160 8003C560 000260C3 */ sra $t4, $v0, 3 +/* 03D164 8003C564 000C4400 */ sll $t0, $t4, 0x10 +/* 03D168 8003C568 00081403 */ sra $v0, $t0, 0x10 +/* 03D16C 8003C56C 28410201 */ slti $at, $v0, 0x201 +/* 03D170 8003C570 14200003 */ bnez $at, .L8003C580 +/* 03D174 8003C574 2841FE00 */ slti $at, $v0, -0x200 +/* 03D178 8003C578 24020200 */ li $v0, 512 +/* 03D17C 8003C57C 2841FE00 */ slti $at, $v0, -0x200 +.L8003C580: +/* 03D180 8003C580 10200003 */ beqz $at, .L8003C590 +/* 03D184 8003C584 00627023 */ subu $t6, $v1, $v0 +/* 03D188 8003C588 2402FE00 */ li $v0, -512 +/* 03D18C 8003C58C 00627023 */ subu $t6, $v1, $v0 +.L8003C590: +/* 03D190 8003C590 14400002 */ bnez $v0, .L8003C59C +/* 03D194 8003C594 A62E0000 */ sh $t6, ($s1) +/* 03D198 8003C598 00002025 */ move $a0, $zero +.L8003C59C: +/* 03D19C 8003C59C 1080000E */ beqz $a0, .L8003C5D8 +/* 03D1A0 8003C5A0 00000000 */ nop +/* 03D1A4 8003C5A4 8E0F0004 */ lw $t7, 4($s0) +/* 03D1A8 8003C5A8 24040222 */ li $a0, 546 +/* 03D1AC 8003C5AC 15E00011 */ bnez $t7, .L8003C5F4 +/* 03D1B0 8003C5B0 24180001 */ li $t8, 1 +/* 03D1B4 8003C5B4 8E25000C */ lw $a1, 0xc($s1) +/* 03D1B8 8003C5B8 8E260010 */ lw $a2, 0x10($s1) +/* 03D1BC 8003C5BC 8E270014 */ lw $a3, 0x14($s1) +/* 03D1C0 8003C5C0 26190004 */ addiu $t9, $s0, 4 +/* 03D1C4 8003C5C4 AFB90014 */ sw $t9, 0x14($sp) +/* 03D1C8 8003C5C8 0C002556 */ jal func_80009558 +/* 03D1CC 8003C5CC AFB80010 */ sw $t8, 0x10($sp) +/* 03D1D0 8003C5D0 10000009 */ b .L8003C5F8 +/* 03D1D4 8003C5D4 8E2A004C */ lw $t2, 0x4c($s1) +.L8003C5D8: +/* 03D1D8 8003C5D8 8E020004 */ lw $v0, 4($s0) +/* 03D1DC 8003C5DC 00000000 */ nop +/* 03D1E0 8003C5E0 10400004 */ beqz $v0, .L8003C5F4 +/* 03D1E4 8003C5E4 00000000 */ nop +/* 03D1E8 8003C5E8 0C0025BE */ jal func_800096F8 +/* 03D1EC 8003C5EC 00402025 */ move $a0, $v0 +/* 03D1F0 8003C5F0 AE000004 */ sw $zero, 4($s0) +.L8003C5F4: +/* 03D1F4 8003C5F4 8E2A004C */ lw $t2, 0x4c($s1) +.L8003C5F8: +/* 03D1F8 8003C5F8 240900FF */ li $t1, 255 +/* 03D1FC 8003C5FC A1490013 */ sb $t1, 0x13($t2) +/* 03D200 8003C600 8E2B004C */ lw $t3, 0x4c($s1) +/* 03D204 8003C604 00000000 */ nop +/* 03D208 8003C608 AD600000 */ sw $zero, ($t3) +/* 03D20C 8003C60C 8E23004C */ lw $v1, 0x4c($s1) +/* 03D210 8003C610 00000000 */ nop +/* 03D214 8003C614 846C0014 */ lh $t4, 0x14($v1) +/* 03D218 8003C618 00000000 */ nop +/* 03D21C 8003C61C 3188FFF7 */ andi $t0, $t4, 0xfff7 +/* 03D220 8003C620 A4680014 */ sh $t0, 0x14($v1) +/* 03D224 8003C624 8E2D005C */ lw $t5, 0x5c($s1) +/* 03D228 8003C628 00000000 */ nop +/* 03D22C 8003C62C ADA00100 */ sw $zero, 0x100($t5) +/* 03D230 8003C630 8FBF0024 */ lw $ra, 0x24($sp) +/* 03D234 8003C634 8FB10020 */ lw $s1, 0x20($sp) +/* 03D238 8003C638 8FB0001C */ lw $s0, 0x1c($sp) +/* 03D23C 8003C63C 03E00008 */ jr $ra +/* 03D240 8003C640 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_032760/func_8003C644.s b/asm/non_matchings/unknown_032760/func_8003C644.s new file mode 100644 index 00000000..90612073 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003C644.s @@ -0,0 +1,94 @@ +glabel func_8003C644 +/* 03D244 8003C644 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 03D248 8003C648 AFBF001C */ sw $ra, 0x1c($sp) +/* 03D24C 8003C64C AFB10018 */ sw $s1, 0x18($sp) +/* 03D250 8003C650 AFB00014 */ sw $s0, 0x14($sp) +/* 03D254 8003C654 80A60009 */ lb $a2, 9($a1) +/* 03D258 8003C658 2401FFFF */ li $at, -1 +/* 03D25C 8003C65C 00808025 */ move $s0, $a0 +/* 03D260 8003C660 14C10005 */ bne $a2, $at, .L8003C678 +/* 03D264 8003C664 00A08825 */ move $s1, $a1 +/* 03D268 8003C668 0C003308 */ jal func_8000CC20 +/* 03D26C 8003C66C 00000000 */ nop +/* 03D270 8003C670 10000004 */ b .L8003C684 +/* 03D274 8003C674 A2220009 */ sb $v0, 9($s1) +.L8003C678: +/* 03D278 8003C678 02002025 */ move $a0, $s0 +/* 03D27C 8003C67C 0C0032FC */ jal func_8000CBF0 +/* 03D280 8003C680 00C02825 */ move $a1, $a2 +.L8003C684: +/* 03D284 8003C684 822E0009 */ lb $t6, 9($s1) +/* 03D288 8003C688 2401FFFF */ li $at, -1 +/* 03D28C 8003C68C 15C10003 */ bne $t6, $at, .L8003C69C +/* 03D290 8003C690 3C04800E */ lui $a0, %hi(D_800E5FC8) # $a0, 0x800e +/* 03D294 8003C694 0C032755 */ jal func_800C9D54 +/* 03D298 8003C698 24845FC8 */ addiu $a0, %lo(D_800E5FC8) # addiu $a0, $a0, 0x5fc8 +.L8003C69C: +/* 03D29C 8003C69C 92380008 */ lbu $t8, 8($s1) +/* 03D2A0 8003C6A0 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 03D2A4 8003C6A4 44982000 */ mtc1 $t8, $f4 +/* 03D2A8 8003C6A8 44811000 */ mtc1 $at, $f2 +/* 03D2AC 8003C6AC 46802020 */ cvt.s.w $f0, $f4 +/* 03D2B0 8003C6B0 3C014300 */ li $at, 0x43000000 # 128.000000 +/* 03D2B4 8003C6B4 44813000 */ mtc1 $at, $f6 +/* 03D2B8 8003C6B8 4602003C */ c.lt.s $f0, $f2 +/* 03D2BC 8003C6BC 00000000 */ nop +/* 03D2C0 8003C6C0 45000003 */ bc1f .L8003C6D0 +/* 03D2C4 8003C6C4 00000000 */ nop +/* 03D2C8 8003C6C8 46001006 */ mov.s $f0, $f2 +/* 03D2CC 8003C6CC 00000000 */ nop +.L8003C6D0: +/* 03D2D0 8003C6D0 46060003 */ div.s $f0, $f0, $f6 +/* 03D2D4 8003C6D4 8E020064 */ lw $v0, 0x64($s0) +/* 03D2D8 8003C6D8 E6000008 */ swc1 $f0, 8($s0) +/* 03D2DC 8003C6DC 9228000A */ lbu $t0, 0xa($s1) +/* 03D2E0 8003C6E0 00000000 */ nop +/* 03D2E4 8003C6E4 00084A80 */ sll $t1, $t0, 0xa +/* 03D2E8 8003C6E8 A6090000 */ sh $t1, ($s0) +/* 03D2EC 8003C6EC 86040000 */ lh $a0, ($s0) +/* 03D2F0 8003C6F0 0C01C1F1 */ jal func_800707C4 +/* 03D2F4 8003C6F4 AFA20020 */ sw $v0, 0x20($sp) +/* 03D2F8 8003C6F8 8FA20020 */ lw $v0, 0x20($sp) +/* 03D2FC 8003C6FC 44804000 */ mtc1 $zero, $f8 +/* 03D300 8003C700 E4400000 */ swc1 $f0, ($v0) +/* 03D304 8003C704 E4480004 */ swc1 $f8, 4($v0) +/* 03D308 8003C708 86040000 */ lh $a0, ($s0) +/* 03D30C 8003C70C 0C01C1FE */ jal func_800707F8 +/* 03D310 8003C710 00000000 */ nop +/* 03D314 8003C714 8FA20020 */ lw $v0, 0x20($sp) +/* 03D318 8003C718 240C0002 */ li $t4, 2 +/* 03D31C 8003C71C E4400008 */ swc1 $f0, 8($v0) +/* 03D320 8003C720 C610000C */ lwc1 $f16, 0xc($s0) +/* 03D324 8003C724 C44A0000 */ lwc1 $f10, ($v0) +/* 03D328 8003C728 C6040014 */ lwc1 $f4, 0x14($s0) +/* 03D32C 8003C72C 46105482 */ mul.s $f18, $f10, $f16 +/* 03D330 8003C730 00000000 */ nop +/* 03D334 8003C734 46040182 */ mul.s $f6, $f0, $f4 +/* 03D338 8003C738 46069200 */ add.s $f8, $f18, $f6 +/* 03D33C 8003C73C 46004287 */ neg.s $f10, $f8 +/* 03D340 8003C740 E44A000C */ swc1 $f10, 0xc($v0) +/* 03D344 8003C744 922A0008 */ lbu $t2, 8($s1) +/* 03D348 8003C748 00000000 */ nop +/* 03D34C 8003C74C AC4A0010 */ sw $t2, 0x10($v0) +/* 03D350 8003C750 922B000D */ lbu $t3, 0xd($s1) +/* 03D354 8003C754 00000000 */ nop +/* 03D358 8003C758 A04B0014 */ sb $t3, 0x14($v0) +/* 03D35C 8003C75C 8E0D004C */ lw $t5, 0x4c($s0) +/* 03D360 8003C760 00000000 */ nop +/* 03D364 8003C764 A5AC0014 */ sh $t4, 0x14($t5) +/* 03D368 8003C768 8E0E004C */ lw $t6, 0x4c($s0) +/* 03D36C 8003C76C 00000000 */ nop +/* 03D370 8003C770 A1C00011 */ sb $zero, 0x11($t6) +/* 03D374 8003C774 8E18004C */ lw $t8, 0x4c($s0) +/* 03D378 8003C778 922F0008 */ lbu $t7, 8($s1) +/* 03D37C 8003C77C 00000000 */ nop +/* 03D380 8003C780 A30F0010 */ sb $t7, 0x10($t8) +/* 03D384 8003C784 8E19004C */ lw $t9, 0x4c($s0) +/* 03D388 8003C788 00000000 */ nop +/* 03D38C 8003C78C A3200012 */ sb $zero, 0x12($t9) +/* 03D390 8003C790 8FBF001C */ lw $ra, 0x1c($sp) +/* 03D394 8003C794 8FB10018 */ lw $s1, 0x18($sp) +/* 03D398 8003C798 8FB00014 */ lw $s0, 0x14($sp) +/* 03D39C 8003C79C 03E00008 */ jr $ra +/* 03D3A0 8003C7A0 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_032760/func_8003C7A4.s b/asm/non_matchings/unknown_032760/func_8003C7A4.s new file mode 100644 index 00000000..9a200dde --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003C7A4.s @@ -0,0 +1,156 @@ +glabel func_8003C7A4 +/* 03D3A4 8003C7A4 27BDFF68 */ addiu $sp, $sp, -0x98 +/* 03D3A8 8003C7A8 AFBF004C */ sw $ra, 0x4c($sp) +/* 03D3AC 8003C7AC AFBE0048 */ sw $fp, 0x48($sp) +/* 03D3B0 8003C7B0 AFB70044 */ sw $s7, 0x44($sp) +/* 03D3B4 8003C7B4 AFB60040 */ sw $s6, 0x40($sp) +/* 03D3B8 8003C7B8 AFB5003C */ sw $s5, 0x3c($sp) +/* 03D3BC 8003C7BC AFB40038 */ sw $s4, 0x38($sp) +/* 03D3C0 8003C7C0 AFB30034 */ sw $s3, 0x34($sp) +/* 03D3C4 8003C7C4 AFB20030 */ sw $s2, 0x30($sp) +/* 03D3C8 8003C7C8 AFB1002C */ sw $s1, 0x2c($sp) +/* 03D3CC 8003C7CC AFB00028 */ sw $s0, 0x28($sp) +/* 03D3D0 8003C7D0 E7B70020 */ swc1 $f23, 0x20($sp) +/* 03D3D4 8003C7D4 E7B60024 */ swc1 $f22, 0x24($sp) +/* 03D3D8 8003C7D8 E7B50018 */ swc1 $f21, 0x18($sp) +/* 03D3DC 8003C7DC E7B4001C */ swc1 $f20, 0x1c($sp) +/* 03D3E0 8003C7E0 AFA5009C */ sw $a1, 0x9c($sp) +/* 03D3E4 8003C7E4 8C9E003C */ lw $fp, 0x3c($a0) +/* 03D3E8 8003C7E8 8C920064 */ lw $s2, 0x64($a0) +/* 03D3EC 8003C7EC 0C01BAA4 */ jal func_8006EA90 +/* 03D3F0 8003C7F0 0080A025 */ move $s4, $a0 +/* 03D3F4 8003C7F4 904F0049 */ lbu $t7, 0x49($v0) +/* 03D3F8 8003C7F8 8C4E0004 */ lw $t6, 4($v0) +/* 03D3FC 8003C7FC 000FC080 */ sll $t8, $t7, 2 +/* 03D400 8003C800 01D8C821 */ addu $t9, $t6, $t8 +/* 03D404 8003C804 8F300000 */ lw $s0, ($t9) +/* 03D408 8003C808 0C01AF66 */ jal func_8006BD98 +/* 03D40C 8003C80C 0040B825 */ move $s7, $v0 +/* 03D410 8003C810 83C30009 */ lb $v1, 9($fp) +/* 03D414 8003C814 00000000 */ nop +/* 03D418 8003C818 04600065 */ bltz $v1, .L8003C9B0 +/* 03D41C 8003C81C 8FBF004C */ lw $ra, 0x4c($sp) +/* 03D420 8003C820 8E89004C */ lw $t1, 0x4c($s4) +/* 03D424 8003C824 8E450010 */ lw $a1, 0x10($s2) +/* 03D428 8003C828 912A0013 */ lbu $t2, 0x13($t1) +/* 03D42C 8003C82C 3C080001 */ lui $t0, 1 +/* 03D430 8003C830 0145082A */ slt $at, $t2, $a1 +/* 03D434 8003C834 1020005D */ beqz $at, .L8003C9AC +/* 03D438 8003C838 00683004 */ sllv $a2, $t0, $v1 +/* 03D43C 8003C83C 304B00FF */ andi $t3, $v0, 0xff +/* 03D440 8003C840 24010005 */ li $at, 5 +/* 03D444 8003C844 15610003 */ bne $t3, $at, .L8003C854 +/* 03D448 8003C848 02066024 */ and $t4, $s0, $a2 +/* 03D44C 8003C84C 15800058 */ bnez $t4, .L8003C9B0 +/* 03D450 8003C850 8FBF004C */ lw $ra, 0x4c($sp) +.L8003C854: +/* 03D454 8003C854 44852000 */ mtc1 $a1, $f4 +/* 03D458 8003C858 27A4008C */ addiu $a0, $sp, 0x8c +/* 03D45C 8003C85C AFA60060 */ sw $a2, 0x60($sp) +/* 03D460 8003C860 0C006E9D */ jal func_8001BA74 +/* 03D464 8003C864 468025A0 */ cvt.s.w $f22, $f4 +/* 03D468 8003C868 8FAD008C */ lw $t5, 0x8c($sp) +/* 03D46C 8003C86C 00009825 */ move $s3, $zero +/* 03D470 8003C870 19A0004E */ blez $t5, .L8003C9AC +/* 03D474 8003C874 00408825 */ move $s1, $v0 +/* 03D478 8003C878 4480A000 */ mtc1 $zero, $f20 +/* 03D47C 8003C87C 241600FF */ li $s6, 255 +/* 03D480 8003C880 2415FFFF */ li $s5, -1 +.L8003C884: +/* 03D484 8003C884 8E300000 */ lw $s0, ($s1) +/* 03D488 8003C888 92430014 */ lbu $v1, 0x14($s2) +/* 03D48C 8003C88C 8E020064 */ lw $v0, 0x64($s0) +/* 03D490 8003C890 306F0001 */ andi $t7, $v1, 1 +/* 03D494 8003C894 15E00005 */ bnez $t7, .L8003C8AC +/* 03D498 8003C898 30780002 */ andi $t8, $v1, 2 +/* 03D49C 8003C89C 844E0000 */ lh $t6, ($v0) +/* 03D4A0 8003C8A0 00000000 */ nop +/* 03D4A4 8003C8A4 12AE0007 */ beq $s5, $t6, .L8003C8C4 +/* 03D4A8 8003C8A8 00000000 */ nop +.L8003C8AC: +/* 03D4AC 8003C8AC 1700003B */ bnez $t8, .L8003C99C +/* 03D4B0 8003C8B0 8FAF008C */ lw $t7, 0x8c($sp) +/* 03D4B4 8003C8B4 84590000 */ lh $t9, ($v0) +/* 03D4B8 8003C8B8 00000000 */ nop +/* 03D4BC 8003C8BC 12B90037 */ beq $s5, $t9, .L8003C99C +/* 03D4C0 8003C8C0 8FAF008C */ lw $t7, 0x8c($sp) +.L8003C8C4: +/* 03D4C4 8003C8C4 C606000C */ lwc1 $f6, 0xc($s0) +/* 03D4C8 8003C8C8 C688000C */ lwc1 $f8, 0xc($s4) +/* 03D4CC 8003C8CC C60A0010 */ lwc1 $f10, 0x10($s0) +/* 03D4D0 8003C8D0 46083001 */ sub.s $f0, $f6, $f8 +/* 03D4D4 8003C8D4 C6900010 */ lwc1 $f16, 0x10($s4) +/* 03D4D8 8003C8D8 46000182 */ mul.s $f6, $f0, $f0 +/* 03D4DC 8003C8DC 46105081 */ sub.s $f2, $f10, $f16 +/* 03D4E0 8003C8E0 C6120014 */ lwc1 $f18, 0x14($s0) +/* 03D4E4 8003C8E4 C6840014 */ lwc1 $f4, 0x14($s4) +/* 03D4E8 8003C8E8 46021202 */ mul.s $f8, $f2, $f2 +/* 03D4EC 8003C8EC 46049381 */ sub.s $f14, $f18, $f4 +/* 03D4F0 8003C8F0 460E7402 */ mul.s $f16, $f14, $f14 +/* 03D4F4 8003C8F4 46083280 */ add.s $f10, $f6, $f8 +/* 03D4F8 8003C8F8 0C0326B4 */ jal sqrtf +/* 03D4FC 8003C8FC 46105300 */ add.s $f12, $f10, $f16 +/* 03D500 8003C900 4616003C */ c.lt.s $f0, $f22 +/* 03D504 8003C904 00000000 */ nop +/* 03D508 8003C908 45000024 */ bc1f .L8003C99C +/* 03D50C 8003C90C 8FAF008C */ lw $t7, 0x8c($sp) +/* 03D510 8003C910 C6520000 */ lwc1 $f18, ($s2) +/* 03D514 8003C914 C604000C */ lwc1 $f4, 0xc($s0) +/* 03D518 8003C918 C6480008 */ lwc1 $f8, 8($s2) +/* 03D51C 8003C91C 46049182 */ mul.s $f6, $f18, $f4 +/* 03D520 8003C920 C60A0014 */ lwc1 $f10, 0x14($s0) +/* 03D524 8003C924 C644000C */ lwc1 $f4, 0xc($s2) +/* 03D528 8003C928 8FAC0060 */ lw $t4, 0x60($sp) +/* 03D52C 8003C92C 460A4402 */ mul.s $f16, $f8, $f10 +/* 03D530 8003C930 46103480 */ add.s $f18, $f6, $f16 +/* 03D534 8003C934 46049000 */ add.s $f0, $f18, $f4 +/* 03D538 8003C938 4614003C */ c.lt.s $f0, $f20 +/* 03D53C 8003C93C 00000000 */ nop +/* 03D540 8003C940 45000016 */ bc1f .L8003C99C +/* 03D544 8003C944 8FAF008C */ lw $t7, 0x8c($sp) +/* 03D548 8003C948 92E90049 */ lbu $t1, 0x49($s7) +/* 03D54C 8003C94C 8EE80004 */ lw $t0, 4($s7) +/* 03D550 8003C950 00095080 */ sll $t2, $t1, 2 +/* 03D554 8003C954 010A1021 */ addu $v0, $t0, $t2 +/* 03D558 8003C958 8C4B0000 */ lw $t3, ($v0) +/* 03D55C 8003C95C 00000000 */ nop +/* 03D560 8003C960 016C6825 */ or $t5, $t3, $t4 +/* 03D564 8003C964 AC4D0000 */ sw $t5, ($v0) +/* 03D568 8003C968 93C4000B */ lbu $a0, 0xb($fp) +/* 03D56C 8003C96C 00000000 */ nop +/* 03D570 8003C970 12C40003 */ beq $s6, $a0, .L8003C980 +/* 03D574 8003C974 00000000 */ nop +/* 03D578 8003C978 0C030C7B */ jal func_800C31EC +/* 03D57C 8003C97C 00000000 */ nop +.L8003C980: +/* 03D580 8003C980 93C2000C */ lbu $v0, 0xc($fp) +/* 03D584 8003C984 00000000 */ nop +/* 03D588 8003C988 12C20004 */ beq $s6, $v0, .L8003C99C +/* 03D58C 8003C98C 8FAF008C */ lw $t7, 0x8c($sp) +/* 03D590 8003C990 0C008500 */ jal func_80021400 +/* 03D594 8003C994 24440080 */ addiu $a0, $v0, 0x80 +/* 03D598 8003C998 8FAF008C */ lw $t7, 0x8c($sp) +.L8003C99C: +/* 03D59C 8003C99C 26730001 */ addiu $s3, $s3, 1 +/* 03D5A0 8003C9A0 026F082A */ slt $at, $s3, $t7 +/* 03D5A4 8003C9A4 1420FFB7 */ bnez $at, .L8003C884 +/* 03D5A8 8003C9A8 26310004 */ addiu $s1, $s1, 4 +.L8003C9AC: +/* 03D5AC 8003C9AC 8FBF004C */ lw $ra, 0x4c($sp) +.L8003C9B0: +/* 03D5B0 8003C9B0 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 03D5B4 8003C9B4 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 03D5B8 8003C9B8 C7B70020 */ lwc1 $f23, 0x20($sp) +/* 03D5BC 8003C9BC C7B60024 */ lwc1 $f22, 0x24($sp) +/* 03D5C0 8003C9C0 8FB00028 */ lw $s0, 0x28($sp) +/* 03D5C4 8003C9C4 8FB1002C */ lw $s1, 0x2c($sp) +/* 03D5C8 8003C9C8 8FB20030 */ lw $s2, 0x30($sp) +/* 03D5CC 8003C9CC 8FB30034 */ lw $s3, 0x34($sp) +/* 03D5D0 8003C9D0 8FB40038 */ lw $s4, 0x38($sp) +/* 03D5D4 8003C9D4 8FB5003C */ lw $s5, 0x3c($sp) +/* 03D5D8 8003C9D8 8FB60040 */ lw $s6, 0x40($sp) +/* 03D5DC 8003C9DC 8FB70044 */ lw $s7, 0x44($sp) +/* 03D5E0 8003C9E0 8FBE0048 */ lw $fp, 0x48($sp) +/* 03D5E4 8003C9E4 03E00008 */ jr $ra +/* 03D5E8 8003C9E8 27BD0098 */ addiu $sp, $sp, 0x98 + diff --git a/asm/non_matchings/unknown_032760/func_8003C9EC.s b/asm/non_matchings/unknown_032760/func_8003C9EC.s new file mode 100644 index 00000000..8d2e83b0 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003C9EC.s @@ -0,0 +1,34 @@ +glabel func_8003C9EC +/* 03D5EC 8003C9EC 90AE0008 */ lbu $t6, 8($a1) +/* 03D5F0 8003C9F0 8C820064 */ lw $v0, 0x64($a0) +/* 03D5F4 8003C9F4 A08E003A */ sb $t6, 0x3a($a0) +/* 03D5F8 8003C9F8 90B80009 */ lbu $t8, 9($a1) +/* 03D5FC 8003C9FC C4840010 */ lwc1 $f4, 0x10($a0) +/* 03D600 8003CA00 0018CA80 */ sll $t9, $t8, 0xa +/* 03D604 8003CA04 A4990000 */ sh $t9, ($a0) +/* 03D608 8003CA08 E4440000 */ swc1 $f4, ($v0) +/* 03D60C 8003CA0C 8C89004C */ lw $t1, 0x4c($a0) +/* 03D610 8003CA10 24080021 */ li $t0, 33 +/* 03D614 8003CA14 A5280014 */ sh $t0, 0x14($t1) +/* 03D618 8003CA18 8C8B004C */ lw $t3, 0x4c($a0) +/* 03D61C 8003CA1C 240A0002 */ li $t2, 2 +/* 03D620 8003CA20 A16A0011 */ sb $t2, 0x11($t3) +/* 03D624 8003CA24 8C8D004C */ lw $t5, 0x4c($a0) +/* 03D628 8003CA28 240C0014 */ li $t4, 20 +/* 03D62C 8003CA2C A1AC0010 */ sb $t4, 0x10($t5) +/* 03D630 8003CA30 8C8E004C */ lw $t6, 0x4c($a0) +/* 03D634 8003CA34 00000000 */ nop +/* 03D638 8003CA38 A1C00012 */ sb $zero, 0x12($t6) +/* 03D63C 8003CA3C AC400004 */ sw $zero, 4($v0) +/* 03D640 8003CA40 8C980040 */ lw $t8, 0x40($a0) +/* 03D644 8003CA44 808F003A */ lb $t7, 0x3a($a0) +/* 03D648 8003CA48 83190055 */ lb $t9, 0x55($t8) +/* 03D64C 8003CA4C 00000000 */ nop +/* 03D650 8003CA50 01F9082A */ slt $at, $t7, $t9 +/* 03D654 8003CA54 14200002 */ bnez $at, .L8003CA60 +/* 03D658 8003CA58 00000000 */ nop +/* 03D65C 8003CA5C A080003A */ sb $zero, 0x3a($a0) +.L8003CA60: +/* 03D660 8003CA60 03E00008 */ jr $ra +/* 03D664 8003CA64 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003CA68.s b/asm/non_matchings/unknown_032760/func_8003CA68.s new file mode 100644 index 00000000..ce308981 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003CA68.s @@ -0,0 +1,278 @@ +glabel func_8003CA68 +/* 03D668 8003CA68 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 03D66C 8003CA6C 44852000 */ mtc1 $a1, $f4 +/* 03D670 8003CA70 AFBF0024 */ sw $ra, 0x24($sp) +/* 03D674 8003CA74 AFB00020 */ sw $s0, 0x20($sp) +/* 03D678 8003CA78 AFA50074 */ sw $a1, 0x74($sp) +/* 03D67C 8003CA7C 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 +/* 03D680 8003CA80 46802020 */ cvt.s.w $f0, $f4 +/* 03D684 8003CA84 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) +/* 03D688 8003CA88 8C830064 */ lw $v1, 0x64($a0) +/* 03D68C 8003CA8C 8C88003C */ lw $t0, 0x3c($a0) +/* 03D690 8003CA90 00808025 */ move $s0, $a0 +/* 03D694 8003CA94 15E00007 */ bnez $t7, .L8003CAB4 +/* 03D698 8003CA98 46000306 */ mov.s $f12, $f0 +/* 03D69C 8003CA9C 3C01800E */ lui $at, %hi(D_800E617C) # $at, 0x800e +/* 03D6A0 8003CAA0 C4296178 */ lwc1 $f9, %lo(D_800E6178)($at) +/* 03D6A4 8003CAA4 C428617C */ lwc1 $f8, %lo(D_800E617C)($at) +/* 03D6A8 8003CAA8 460001A1 */ cvt.d.s $f6, $f0 +/* 03D6AC 8003CAAC 46283282 */ mul.d $f10, $f6, $f8 +/* 03D6B0 8003CAB0 46205320 */ cvt.s.d $f12, $f10 +.L8003CAB4: +/* 03D6B4 8003CAB4 9118000B */ lbu $t8, 0xb($t0) +/* 03D6B8 8003CAB8 24010003 */ li $at, 3 +/* 03D6BC 8003CABC 1301004B */ beq $t8, $at, .L8003CBEC +/* 03D6C0 8003CAC0 00000000 */ nop +/* 03D6C4 8003CAC4 8E190078 */ lw $t9, 0x78($s0) +/* 03D6C8 8003CAC8 00000000 */ nop +/* 03D6CC 8003CACC 13200029 */ beqz $t9, .L8003CB74 +/* 03D6D0 8003CAD0 00000000 */ nop +/* 03D6D4 8003CAD4 8109000E */ lb $t1, 0xe($t0) +/* 03D6D8 8003CAD8 44803000 */ mtc1 $zero, $f6 +/* 03D6DC 8003CADC 44898000 */ mtc1 $t1, $f16 +/* 03D6E0 8003CAE0 00000000 */ nop +/* 03D6E4 8003CAE4 468084A0 */ cvt.s.w $f18, $f16 +/* 03D6E8 8003CAE8 46009021 */ cvt.d.s $f0, $f18 +/* 03D6EC 8003CAEC 46200100 */ add.d $f4, $f0, $f0 +/* 03D6F0 8003CAF0 462020A0 */ cvt.s.d $f2, $f4 +/* 03D6F4 8003CAF4 4602303C */ c.lt.s $f6, $f2 +/* 03D6F8 8003CAF8 00000000 */ nop +/* 03D6FC 8003CAFC 4500000F */ bc1f .L8003CB3C +/* 03D700 8003CB00 00000000 */ nop +/* 03D704 8003CB04 C4680000 */ lwc1 $f8, ($v1) +/* 03D708 8003CB08 C6000010 */ lwc1 $f0, 0x10($s0) +/* 03D70C 8003CB0C 46024280 */ add.s $f10, $f8, $f2 +/* 03D710 8003CB10 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 03D714 8003CB14 460A003C */ c.lt.s $f0, $f10 +/* 03D718 8003CB18 00000000 */ nop +/* 03D71C 8003CB1C 45000080 */ bc1f .L8003CD20 +/* 03D720 8003CB20 00000000 */ nop +/* 03D724 8003CB24 44818000 */ mtc1 $at, $f16 +/* 03D728 8003CB28 00000000 */ nop +/* 03D72C 8003CB2C 46106482 */ mul.s $f18, $f12, $f16 +/* 03D730 8003CB30 46120100 */ add.s $f4, $f0, $f18 +/* 03D734 8003CB34 1000007A */ b .L8003CD20 +/* 03D738 8003CB38 E6040010 */ swc1 $f4, 0x10($s0) +.L8003CB3C: +/* 03D73C 8003CB3C C4660000 */ lwc1 $f6, ($v1) +/* 03D740 8003CB40 C6000010 */ lwc1 $f0, 0x10($s0) +/* 03D744 8003CB44 46023200 */ add.s $f8, $f6, $f2 +/* 03D748 8003CB48 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 03D74C 8003CB4C 4600403C */ c.lt.s $f8, $f0 +/* 03D750 8003CB50 00000000 */ nop +/* 03D754 8003CB54 45000072 */ bc1f .L8003CD20 +/* 03D758 8003CB58 00000000 */ nop +/* 03D75C 8003CB5C 44815000 */ mtc1 $at, $f10 +/* 03D760 8003CB60 00000000 */ nop +/* 03D764 8003CB64 460A6402 */ mul.s $f16, $f12, $f10 +/* 03D768 8003CB68 46100481 */ sub.s $f18, $f0, $f16 +/* 03D76C 8003CB6C 1000006C */ b .L8003CD20 +/* 03D770 8003CB70 E6120010 */ swc1 $f18, 0x10($s0) +.L8003CB74: +/* 03D774 8003CB74 910A000C */ lbu $t2, 0xc($t0) +/* 03D778 8003CB78 00000000 */ nop +/* 03D77C 8003CB7C 1940000E */ blez $t2, .L8003CBB8 +/* 03D780 8003CB80 00000000 */ nop +/* 03D784 8003CB84 C6000010 */ lwc1 $f0, 0x10($s0) +/* 03D788 8003CB88 C4640000 */ lwc1 $f4, ($v1) +/* 03D78C 8003CB8C 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 03D790 8003CB90 4600203C */ c.lt.s $f4, $f0 +/* 03D794 8003CB94 00000000 */ nop +/* 03D798 8003CB98 45000061 */ bc1f .L8003CD20 +/* 03D79C 8003CB9C 00000000 */ nop +/* 03D7A0 8003CBA0 44813000 */ mtc1 $at, $f6 +/* 03D7A4 8003CBA4 00000000 */ nop +/* 03D7A8 8003CBA8 46066202 */ mul.s $f8, $f12, $f6 +/* 03D7AC 8003CBAC 46080281 */ sub.s $f10, $f0, $f8 +/* 03D7B0 8003CBB0 1000005B */ b .L8003CD20 +/* 03D7B4 8003CBB4 E60A0010 */ swc1 $f10, 0x10($s0) +.L8003CBB8: +/* 03D7B8 8003CBB8 C6000010 */ lwc1 $f0, 0x10($s0) +/* 03D7BC 8003CBBC C4700000 */ lwc1 $f16, ($v1) +/* 03D7C0 8003CBC0 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 03D7C4 8003CBC4 4610003C */ c.lt.s $f0, $f16 +/* 03D7C8 8003CBC8 00000000 */ nop +/* 03D7CC 8003CBCC 45000054 */ bc1f .L8003CD20 +/* 03D7D0 8003CBD0 00000000 */ nop +/* 03D7D4 8003CBD4 44819000 */ mtc1 $at, $f18 +/* 03D7D8 8003CBD8 00000000 */ nop +/* 03D7DC 8003CBDC 46126102 */ mul.s $f4, $f12, $f18 +/* 03D7E0 8003CBE0 46040180 */ add.s $f6, $f0, $f4 +/* 03D7E4 8003CBE4 1000004E */ b .L8003CD20 +/* 03D7E8 8003CBE8 E6060010 */ swc1 $f6, 0x10($s0) +.L8003CBEC: +/* 03D7EC 8003CBEC 8E0B0078 */ lw $t3, 0x78($s0) +/* 03D7F0 8003CBF0 00000000 */ nop +/* 03D7F4 8003CBF4 11600023 */ beqz $t3, .L8003CC84 +/* 03D7F8 8003CBF8 00000000 */ nop +/* 03D7FC 8003CBFC 86020002 */ lh $v0, 2($s0) +/* 03D800 8003CC00 8FAC0074 */ lw $t4, 0x74($sp) +/* 03D804 8003CC04 2841ED01 */ slti $at, $v0, -0x12ff +/* 03D808 8003CC08 14200008 */ bnez $at, .L8003CC2C +/* 03D80C 8003CC0C 000C6880 */ sll $t5, $t4, 2 +/* 03D810 8003CC10 01AC6823 */ subu $t5, $t5, $t4 +/* 03D814 8003CC14 000D6880 */ sll $t5, $t5, 2 +/* 03D818 8003CC18 01AC6823 */ subu $t5, $t5, $t4 +/* 03D81C 8003CC1C 000D6880 */ sll $t5, $t5, 2 +/* 03D820 8003CC20 01AC6821 */ addu $t5, $t5, $t4 +/* 03D824 8003CC24 004D7023 */ subu $t6, $v0, $t5 +/* 03D828 8003CC28 A60E0002 */ sh $t6, 2($s0) +.L8003CC2C: +/* 03D82C 8003CC2C 8C6F0004 */ lw $t7, 4($v1) +/* 03D830 8003CC30 27A50050 */ addiu $a1, $sp, 0x50 +/* 03D834 8003CC34 15E0003A */ bnez $t7, .L8003CD20 +/* 03D838 8003CC38 27A6004C */ addiu $a2, $sp, 0x4c +/* 03D83C 8003CC3C 9104000A */ lbu $a0, 0xa($t0) +/* 03D840 8003CC40 AFA8005C */ sw $t0, 0x5c($sp) +/* 03D844 8003CC44 AFA30060 */ sw $v1, 0x60($sp) +/* 03D848 8003CC48 0C0078DB */ jal func_8001E36C +/* 03D84C 8003CC4C 27A70048 */ addiu $a3, $sp, 0x48 +/* 03D850 8003CC50 8FA30060 */ lw $v1, 0x60($sp) +/* 03D854 8003CC54 8FA50050 */ lw $a1, 0x50($sp) +/* 03D858 8003CC58 8FA6004C */ lw $a2, 0x4c($sp) +/* 03D85C 8003CC5C 8FA70048 */ lw $a3, 0x48($sp) +/* 03D860 8003CC60 24180001 */ li $t8, 1 +/* 03D864 8003CC64 24790004 */ addiu $t9, $v1, 4 +/* 03D868 8003CC68 AFB90014 */ sw $t9, 0x14($sp) +/* 03D86C 8003CC6C AFB80010 */ sw $t8, 0x10($sp) +/* 03D870 8003CC70 0C002556 */ jal func_80009558 +/* 03D874 8003CC74 24040249 */ li $a0, 585 +/* 03D878 8003CC78 8FA8005C */ lw $t0, 0x5c($sp) +/* 03D87C 8003CC7C 10000029 */ b .L8003CD24 +/* 03D880 8003CC80 9103000B */ lbu $v1, 0xb($t0) +.L8003CC84: +/* 03D884 8003CC84 86020002 */ lh $v0, 2($s0) +/* 03D888 8003CC88 8FA90074 */ lw $t1, 0x74($sp) +/* 03D88C 8003CC8C 0441001B */ bgez $v0, .L8003CCFC +/* 03D890 8003CC90 00095080 */ sll $t2, $t1, 2 +/* 03D894 8003CC94 01495021 */ addu $t2, $t2, $t1 +/* 03D898 8003CC98 000A50C0 */ sll $t2, $t2, 3 +/* 03D89C 8003CC9C 004A5821 */ addu $t3, $v0, $t2 +/* 03D8A0 8003CCA0 A60B0002 */ sh $t3, 2($s0) +/* 03D8A4 8003CCA4 8C6C0004 */ lw $t4, 4($v1) +/* 03D8A8 8003CCA8 27A50044 */ addiu $a1, $sp, 0x44 +/* 03D8AC 8003CCAC 1580001C */ bnez $t4, .L8003CD20 +/* 03D8B0 8003CCB0 27A60040 */ addiu $a2, $sp, 0x40 +/* 03D8B4 8003CCB4 9104000A */ lbu $a0, 0xa($t0) +/* 03D8B8 8003CCB8 AFA8005C */ sw $t0, 0x5c($sp) +/* 03D8BC 8003CCBC AFA30060 */ sw $v1, 0x60($sp) +/* 03D8C0 8003CCC0 0C0078DB */ jal func_8001E36C +/* 03D8C4 8003CCC4 27A7003C */ addiu $a3, $sp, 0x3c +/* 03D8C8 8003CCC8 8FA30060 */ lw $v1, 0x60($sp) +/* 03D8CC 8003CCCC 8FA50044 */ lw $a1, 0x44($sp) +/* 03D8D0 8003CCD0 8FA60040 */ lw $a2, 0x40($sp) +/* 03D8D4 8003CCD4 8FA7003C */ lw $a3, 0x3c($sp) +/* 03D8D8 8003CCD8 240D0001 */ li $t5, 1 +/* 03D8DC 8003CCDC 246E0004 */ addiu $t6, $v1, 4 +/* 03D8E0 8003CCE0 AFAE0014 */ sw $t6, 0x14($sp) +/* 03D8E4 8003CCE4 AFAD0010 */ sw $t5, 0x10($sp) +/* 03D8E8 8003CCE8 0C002556 */ jal func_80009558 +/* 03D8EC 8003CCEC 24040249 */ li $a0, 585 +/* 03D8F0 8003CCF0 8FA8005C */ lw $t0, 0x5c($sp) +/* 03D8F4 8003CCF4 1000000B */ b .L8003CD24 +/* 03D8F8 8003CCF8 9103000B */ lbu $v1, 0xb($t0) +.L8003CCFC: +/* 03D8FC 8003CCFC A6000002 */ sh $zero, 2($s0) +/* 03D900 8003CD00 8C640004 */ lw $a0, 4($v1) +/* 03D904 8003CD04 00000000 */ nop +/* 03D908 8003CD08 10800005 */ beqz $a0, .L8003CD20 +/* 03D90C 8003CD0C 00000000 */ nop +/* 03D910 8003CD10 0C0025BE */ jal func_800096F8 +/* 03D914 8003CD14 AFA8005C */ sw $t0, 0x5c($sp) +/* 03D918 8003CD18 8FA8005C */ lw $t0, 0x5c($sp) +/* 03D91C 8003CD1C 00000000 */ nop +.L8003CD20: +/* 03D920 8003CD20 9103000B */ lbu $v1, 0xb($t0) +.L8003CD24: +/* 03D924 8003CD24 24010002 */ li $at, 2 +/* 03D928 8003CD28 10600005 */ beqz $v1, .L8003CD40 +/* 03D92C 8003CD2C 00000000 */ nop +/* 03D930 8003CD30 1061000E */ beq $v1, $at, .L8003CD6C +/* 03D934 8003CD34 24090001 */ li $t1, 1 +/* 03D938 8003CD38 10000029 */ b .L8003CDE0 +/* 03D93C 8003CD3C 9104000A */ lbu $a0, 0xa($t0) +.L8003CD40: +/* 03D940 8003CD40 8E02004C */ lw $v0, 0x4c($s0) +/* 03D944 8003CD44 AE000078 */ sw $zero, 0x78($s0) +/* 03D948 8003CD48 9118000C */ lbu $t8, 0xc($t0) +/* 03D94C 8003CD4C 904F0013 */ lbu $t7, 0x13($v0) +/* 03D950 8003CD50 24190001 */ li $t9, 1 +/* 03D954 8003CD54 01F8082A */ slt $at, $t7, $t8 +/* 03D958 8003CD58 10200034 */ beqz $at, .L8003CE2C +/* 03D95C 8003CD5C 241800FF */ li $t8, 255 +/* 03D960 8003CD60 8E02004C */ lw $v0, 0x4c($s0) +/* 03D964 8003CD64 10000030 */ b .L8003CE28 +/* 03D968 8003CD68 AE190078 */ sw $t9, 0x78($s0) +.L8003CD6C: +/* 03D96C 8003CD6C AE090078 */ sw $t1, 0x78($s0) +/* 03D970 8003CD70 AFA8005C */ sw $t0, 0x5c($sp) +/* 03D974 8003CD74 0C006EB2 */ jal func_8001BAC8 +/* 03D978 8003CD78 00002025 */ move $a0, $zero +/* 03D97C 8003CD7C 8FA8005C */ lw $t0, 0x5c($sp) +/* 03D980 8003CD80 10400013 */ beqz $v0, .L8003CDD0 +/* 03D984 8003CD84 00000000 */ nop +/* 03D988 8003CD88 8C440064 */ lw $a0, 0x64($v0) +/* 03D98C 8003CD8C 24010001 */ li $at, 1 +/* 03D990 8003CD90 808301D6 */ lb $v1, 0x1d6($a0) +/* 03D994 8003CD94 00000000 */ nop +/* 03D998 8003CD98 10610005 */ beq $v1, $at, .L8003CDB0 +/* 03D99C 8003CD9C 24010002 */ li $at, 2 +/* 03D9A0 8003CDA0 10610005 */ beq $v1, $at, .L8003CDB8 +/* 03D9A4 8003CDA4 24020004 */ li $v0, 4 +/* 03D9A8 8003CDA8 10000003 */ b .L8003CDB8 +/* 03D9AC 8003CDAC 24020001 */ li $v0, 1 +.L8003CDB0: +/* 03D9B0 8003CDB0 10000001 */ b .L8003CDB8 +/* 03D9B4 8003CDB4 24020002 */ li $v0, 2 +.L8003CDB8: +/* 03D9B8 8003CDB8 910A000F */ lbu $t2, 0xf($t0) +/* 03D9BC 8003CDBC 00000000 */ nop +/* 03D9C0 8003CDC0 01425824 */ and $t3, $t2, $v0 +/* 03D9C4 8003CDC4 11600002 */ beqz $t3, .L8003CDD0 +/* 03D9C8 8003CDC8 00000000 */ nop +/* 03D9CC 8003CDCC AE000078 */ sw $zero, 0x78($s0) +.L8003CDD0: +/* 03D9D0 8003CDD0 8E02004C */ lw $v0, 0x4c($s0) +/* 03D9D4 8003CDD4 10000015 */ b .L8003CE2C +/* 03D9D8 8003CDD8 241800FF */ li $t8, 255 +/* 03D9DC 8003CDDC 9104000A */ lbu $a0, 0xa($t0) +.L8003CDE0: +/* 03D9E0 8003CDE0 0C0078BB */ jal func_8001E2EC +/* 03D9E4 8003CDE4 AFA8005C */ sw $t0, 0x5c($sp) +/* 03D9E8 8003CDE8 8FA8005C */ lw $t0, 0x5c($sp) +/* 03D9EC 8003CDEC 10400005 */ beqz $v0, .L8003CE04 +/* 03D9F0 8003CDF0 00000000 */ nop +/* 03D9F4 8003CDF4 910C000D */ lbu $t4, 0xd($t0) +/* 03D9F8 8003CDF8 00000000 */ nop +/* 03D9FC 8003CDFC 000C6840 */ sll $t5, $t4, 1 +/* 03DA00 8003CE00 AE0D0078 */ sw $t5, 0x78($s0) +.L8003CE04: +/* 03DA04 8003CE04 8E020078 */ lw $v0, 0x78($s0) +/* 03DA08 8003CE08 8FAE0074 */ lw $t6, 0x74($sp) +/* 03DA0C 8003CE0C 18400003 */ blez $v0, .L8003CE1C +/* 03DA10 8003CE10 004E7823 */ subu $t7, $v0, $t6 +/* 03DA14 8003CE14 10000002 */ b .L8003CE20 +/* 03DA18 8003CE18 AE0F0078 */ sw $t7, 0x78($s0) +.L8003CE1C: +/* 03DA1C 8003CE1C AE000078 */ sw $zero, 0x78($s0) +.L8003CE20: +/* 03DA20 8003CE20 8E02004C */ lw $v0, 0x4c($s0) +/* 03DA24 8003CE24 00000000 */ nop +.L8003CE28: +/* 03DA28 8003CE28 241800FF */ li $t8, 255 +.L8003CE2C: +/* 03DA2C 8003CE2C A0580013 */ sb $t8, 0x13($v0) +/* 03DA30 8003CE30 8E19004C */ lw $t9, 0x4c($s0) +/* 03DA34 8003CE34 00000000 */ nop +/* 03DA38 8003CE38 AF200000 */ sw $zero, ($t9) +/* 03DA3C 8003CE3C 8E02004C */ lw $v0, 0x4c($s0) +/* 03DA40 8003CE40 00000000 */ nop +/* 03DA44 8003CE44 84490014 */ lh $t1, 0x14($v0) +/* 03DA48 8003CE48 00000000 */ nop +/* 03DA4C 8003CE4C 312AFFF7 */ andi $t2, $t1, 0xfff7 +/* 03DA50 8003CE50 A44A0014 */ sh $t2, 0x14($v0) +/* 03DA54 8003CE54 8FBF0024 */ lw $ra, 0x24($sp) +/* 03DA58 8003CE58 8FB00020 */ lw $s0, 0x20($sp) +/* 03DA5C 8003CE5C 03E00008 */ jr $ra +/* 03DA60 8003CE60 27BD0070 */ addiu $sp, $sp, 0x70 + diff --git a/asm/non_matchings/unknown_032760/func_8003CE64.s b/asm/non_matchings/unknown_032760/func_8003CE64.s new file mode 100644 index 00000000..3e39b4ca --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003CE64.s @@ -0,0 +1,17 @@ +glabel func_8003CE64 +/* 03DA64 8003CE64 8C8F004C */ lw $t7, 0x4c($a0) +/* 03DA68 8003CE68 240E0002 */ li $t6, 2 +/* 03DA6C 8003CE6C A5EE0014 */ sh $t6, 0x14($t7) +/* 03DA70 8003CE70 8C98004C */ lw $t8, 0x4c($a0) +/* 03DA74 8003CE74 24190014 */ li $t9, 20 +/* 03DA78 8003CE78 A3000011 */ sb $zero, 0x11($t8) +/* 03DA7C 8003CE7C 8C88004C */ lw $t0, 0x4c($a0) +/* 03DA80 8003CE80 00000000 */ nop +/* 03DA84 8003CE84 A1190010 */ sb $t9, 0x10($t0) +/* 03DA88 8003CE88 8C89004C */ lw $t1, 0x4c($a0) +/* 03DA8C 8003CE8C 00000000 */ nop +/* 03DA90 8003CE90 A1200012 */ sb $zero, 0x12($t1) +/* 03DA94 8003CE94 90AA0008 */ lbu $t2, 8($a1) +/* 03DA98 8003CE98 03E00008 */ jr $ra +/* 03DA9C 8003CE9C AC8A0078 */ sw $t2, 0x78($a0) + diff --git a/asm/non_matchings/unknown_032760/func_8003CEA0.s b/asm/non_matchings/unknown_032760/func_8003CEA0.s new file mode 100644 index 00000000..0eefded9 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003CEA0.s @@ -0,0 +1,27 @@ +glabel func_8003CEA0 +/* 03DAA0 8003CEA0 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 03DAA4 8003CEA4 AFBF0014 */ sw $ra, 0x14($sp) +/* 03DAA8 8003CEA8 AFA40018 */ sw $a0, 0x18($sp) +/* 03DAAC 8003CEAC AFA5001C */ sw $a1, 0x1c($sp) +/* 03DAB0 8003CEB0 8C82004C */ lw $v0, 0x4c($a0) +/* 03DAB4 8003CEB4 00802825 */ move $a1, $a0 +/* 03DAB8 8003CEB8 904E0013 */ lbu $t6, 0x13($v0) +/* 03DABC 8003CEBC 00000000 */ nop +/* 03DAC0 8003CEC0 29C1002D */ slti $at, $t6, 0x2d +/* 03DAC4 8003CEC4 10200009 */ beqz $at, .L8003CEEC +/* 03DAC8 8003CEC8 240F00FF */ li $t7, 255 +/* 03DACC 8003CECC 8C840078 */ lw $a0, 0x78($a0) +/* 03DAD0 8003CED0 0C0078D1 */ jal func_8001E344 +/* 03DAD4 8003CED4 AFA50018 */ sw $a1, 0x18($sp) +/* 03DAD8 8003CED8 8FA50018 */ lw $a1, 0x18($sp) +/* 03DADC 8003CEDC 00000000 */ nop +/* 03DAE0 8003CEE0 8CA2004C */ lw $v0, 0x4c($a1) +/* 03DAE4 8003CEE4 00000000 */ nop +/* 03DAE8 8003CEE8 240F00FF */ li $t7, 255 +.L8003CEEC: +/* 03DAEC 8003CEEC A04F0013 */ sb $t7, 0x13($v0) +/* 03DAF0 8003CEF0 8FBF0014 */ lw $ra, 0x14($sp) +/* 03DAF4 8003CEF4 27BD0018 */ addiu $sp, $sp, 0x18 +/* 03DAF8 8003CEF8 03E00008 */ jr $ra +/* 03DAFC 8003CEFC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003CF00.s b/asm/non_matchings/unknown_032760/func_8003CF00.s new file mode 100644 index 00000000..ff305434 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003CF00.s @@ -0,0 +1,5 @@ +glabel func_8003CF00 +/* 03DB00 8003CF00 AFA40000 */ sw $a0, ($sp) +/* 03DB04 8003CF04 03E00008 */ jr $ra +/* 03DB08 8003CF08 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_8003CF0C.s b/asm/non_matchings/unknown_032760/func_8003CF0C.s new file mode 100644 index 00000000..1c110d39 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003CF0C.s @@ -0,0 +1,5 @@ +glabel func_8003CF0C +/* 03DB0C 8003CF0C AFA40000 */ sw $a0, ($sp) +/* 03DB10 8003CF10 03E00008 */ jr $ra +/* 03DB14 8003CF14 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_8003CF18.s b/asm/non_matchings/unknown_032760/func_8003CF18.s new file mode 100644 index 00000000..49ed687a --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003CF18.s @@ -0,0 +1,19 @@ +glabel func_8003CF18 +/* 03DB18 8003CF18 90AE0008 */ lbu $t6, 8($a1) +/* 03DB1C 8003CF1C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 03DB20 8003CF20 448E2000 */ mtc1 $t6, $f4 +/* 03DB24 8003CF24 05C10004 */ bgez $t6, .L8003CF38 +/* 03DB28 8003CF28 468021A0 */ cvt.s.w $f6, $f4 +/* 03DB2C 8003CF2C 44814000 */ mtc1 $at, $f8 +/* 03DB30 8003CF30 00000000 */ nop +/* 03DB34 8003CF34 46083180 */ add.s $f6, $f6, $f8 +.L8003CF38: +/* 03DB38 8003CF38 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 03DB3C 8003CF3C 44815000 */ mtc1 $at, $f10 +/* 03DB40 8003CF40 00000000 */ nop +/* 03DB44 8003CF44 460A3002 */ mul.s $f0, $f6, $f10 +/* 03DB48 8003CF48 00000000 */ nop +/* 03DB4C 8003CF4C 46000002 */ mul.s $f0, $f0, $f0 +/* 03DB50 8003CF50 03E00008 */ jr $ra +/* 03DB54 8003CF54 E4800078 */ swc1 $f0, 0x78($a0) + diff --git a/asm/non_matchings/unknown_032760/func_8003CF58.s b/asm/non_matchings/unknown_032760/func_8003CF58.s new file mode 100644 index 00000000..01d3d8aa --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003CF58.s @@ -0,0 +1,18 @@ +glabel func_8003CF58 +/* 03DB58 8003CF58 8C8F004C */ lw $t7, 0x4c($a0) +/* 03DB5C 8003CF5C 240E0002 */ li $t6, 2 +/* 03DB60 8003CF60 A5EE0014 */ sh $t6, 0x14($t7) +/* 03DB64 8003CF64 8C98004C */ lw $t8, 0x4c($a0) +/* 03DB68 8003CF68 00000000 */ nop +/* 03DB6C 8003CF6C A3000011 */ sb $zero, 0x11($t8) +/* 03DB70 8003CF70 90B90009 */ lbu $t9, 9($a1) +/* 03DB74 8003CF74 8C88004C */ lw $t0, 0x4c($a0) +/* 03DB78 8003CF78 00000000 */ nop +/* 03DB7C 8003CF7C A1190010 */ sb $t9, 0x10($t0) +/* 03DB80 8003CF80 90A90008 */ lbu $t1, 8($a1) +/* 03DB84 8003CF84 00000000 */ nop +/* 03DB88 8003CF88 AC890078 */ sw $t1, 0x78($a0) +/* 03DB8C 8003CF8C 90AA0009 */ lbu $t2, 9($a1) +/* 03DB90 8003CF90 03E00008 */ jr $ra +/* 03DB94 8003CF94 AC8A007C */ sw $t2, 0x7c($a0) + diff --git a/asm/non_matchings/unknown_032760/func_8003CF98.s b/asm/non_matchings/unknown_032760/func_8003CF98.s new file mode 100644 index 00000000..3194c301 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003CF98.s @@ -0,0 +1,21 @@ +glabel func_8003CF98 +/* 03DB98 8003CF98 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 03DB9C 8003CF9C AFBF0014 */ sw $ra, 0x14($sp) +/* 03DBA0 8003CFA0 AFA40018 */ sw $a0, 0x18($sp) +/* 03DBA4 8003CFA4 AFA5001C */ sw $a1, 0x1c($sp) +/* 03DBA8 8003CFA8 8C8E004C */ lw $t6, 0x4c($a0) +/* 03DBAC 8003CFAC 8C98007C */ lw $t8, 0x7c($a0) +/* 03DBB0 8003CFB0 91CF0013 */ lbu $t7, 0x13($t6) +/* 03DBB4 8003CFB4 00000000 */ nop +/* 03DBB8 8003CFB8 01F8082A */ slt $at, $t7, $t8 +/* 03DBBC 8003CFBC 10200005 */ beqz $at, .L8003CFD4 +/* 03DBC0 8003CFC0 8FBF0014 */ lw $ra, 0x14($sp) +/* 03DBC4 8003CFC4 8C840078 */ lw $a0, 0x78($a0) +/* 03DBC8 8003CFC8 0C00A011 */ jal func_80028044 +/* 03DBCC 8003CFCC 00000000 */ nop +/* 03DBD0 8003CFD0 8FBF0014 */ lw $ra, 0x14($sp) +.L8003CFD4: +/* 03DBD4 8003CFD4 27BD0018 */ addiu $sp, $sp, 0x18 +/* 03DBD8 8003CFD8 03E00008 */ jr $ra +/* 03DBDC 8003CFDC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003CFE0.s b/asm/non_matchings/unknown_032760/func_8003CFE0.s new file mode 100644 index 00000000..3c059d70 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003CFE0.s @@ -0,0 +1,22 @@ +glabel func_8003CFE0 +/* 03DBE0 8003CFE0 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 03DBE4 8003CFE4 AFBF0014 */ sw $ra, 0x14($sp) +/* 03DBE8 8003CFE8 90A60009 */ lbu $a2, 9($a1) +/* 03DBEC 8003CFEC 240100FF */ li $at, 255 +/* 03DBF0 8003CFF0 14C10006 */ bne $a2, $at, .L8003D00C +/* 03DBF4 8003CFF4 00000000 */ nop +/* 03DBF8 8003CFF8 0C007123 */ jal func_8001C48C +/* 03DBFC 8003CFFC AFA5001C */ sw $a1, 0x1c($sp) +/* 03DC00 8003D000 8FA5001C */ lw $a1, 0x1c($sp) +/* 03DC04 8003D004 304600FF */ andi $a2, $v0, 0xff +/* 03DC08 8003D008 A0A20009 */ sb $v0, 9($a1) +.L8003D00C: +/* 03DC0C 8003D00C 0C00746F */ jal func_8001D1BC +/* 03DC10 8003D010 00C02025 */ move $a0, $a2 +/* 03DC14 8003D014 0C00746B */ jal func_8001D1AC +/* 03DC18 8003D018 00000000 */ nop +/* 03DC1C 8003D01C 8FBF0014 */ lw $ra, 0x14($sp) +/* 03DC20 8003D020 27BD0018 */ addiu $sp, $sp, 0x18 +/* 03DC24 8003D024 03E00008 */ jr $ra +/* 03DC28 8003D028 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003D02C.s b/asm/non_matchings/unknown_032760/func_8003D02C.s new file mode 100644 index 00000000..f2ec2131 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003D02C.s @@ -0,0 +1,5 @@ +glabel func_8003D02C +/* 03DC2C 8003D02C AFA40000 */ sw $a0, ($sp) +/* 03DC30 8003D030 03E00008 */ jr $ra +/* 03DC34 8003D034 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_8003D038.s b/asm/non_matchings/unknown_032760/func_8003D038.s new file mode 100644 index 00000000..98882fb7 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003D038.s @@ -0,0 +1,10 @@ +glabel func_8003D038 +/* 03DC38 8003D038 240E0078 */ li $t6, 120 +/* 03DC3C 8003D03C A48E0018 */ sh $t6, 0x18($a0) +/* 03DC40 8003D040 80AF0008 */ lb $t7, 8($a1) +/* 03DC44 8003D044 00000000 */ nop +/* 03DC48 8003D048 25F8FFFF */ addiu $t8, $t7, -1 +/* 03DC4C 8003D04C 33190003 */ andi $t9, $t8, 3 +/* 03DC50 8003D050 03E00008 */ jr $ra +/* 03DC54 8003D054 AC990078 */ sw $t9, 0x78($a0) + diff --git a/asm/non_matchings/unknown_032760/func_8003D058.s b/asm/non_matchings/unknown_032760/func_8003D058.s new file mode 100644 index 00000000..7cabb7bc --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003D058.s @@ -0,0 +1,157 @@ +glabel func_8003D058 +/* 03DC58 8003D058 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 03DC5C 8003D05C AFBF0014 */ sw $ra, 0x14($sp) +/* 03DC60 8003D060 AFA5004C */ sw $a1, 0x4c($sp) +/* 03DC64 8003D064 00803025 */ move $a2, $a0 +/* 03DC68 8003D068 8C840078 */ lw $a0, 0x78($a0) +/* 03DC6C 8003D06C 0C006EB2 */ jal func_8001BAC8 +/* 03DC70 8003D070 AFA60048 */ sw $a2, 0x48($sp) +/* 03DC74 8003D074 8FA60048 */ lw $a2, 0x48($sp) +/* 03DC78 8003D078 10400088 */ beqz $v0, .L8003D29C +/* 03DC7C 8003D07C 00401825 */ move $v1, $v0 +/* 03DC80 8003D080 8C470064 */ lw $a3, 0x64($v0) +/* 03DC84 8003D084 00002025 */ move $a0, $zero +/* 03DC88 8003D088 80EE0185 */ lb $t6, 0x185($a3) +/* 03DC8C 8003D08C 00000000 */ nop +/* 03DC90 8003D090 11C0001C */ beqz $t6, .L8003D104 +/* 03DC94 8003D094 00000000 */ nop +/* 03DC98 8003D098 8CCF007C */ lw $t7, 0x7c($a2) +/* 03DC9C 8003D09C 00000000 */ nop +/* 03DCA0 8003D0A0 15E00018 */ bnez $t7, .L8003D104 +/* 03DCA4 8003D0A4 00000000 */ nop +/* 03DCA8 8003D0A8 C4C4000C */ lwc1 $f4, 0xc($a2) +/* 03DCAC 8003D0AC C446000C */ lwc1 $f6, 0xc($v0) +/* 03DCB0 8003D0B0 C4C80010 */ lwc1 $f8, 0x10($a2) +/* 03DCB4 8003D0B4 46062001 */ sub.s $f0, $f4, $f6 +/* 03DCB8 8003D0B8 C44A0010 */ lwc1 $f10, 0x10($v0) +/* 03DCBC 8003D0BC 46000102 */ mul.s $f4, $f0, $f0 +/* 03DCC0 8003D0C0 460A4081 */ sub.s $f2, $f8, $f10 +/* 03DCC4 8003D0C4 C4D00014 */ lwc1 $f16, 0x14($a2) +/* 03DCC8 8003D0C8 C4520014 */ lwc1 $f18, 0x14($v0) +/* 03DCCC 8003D0CC 46021182 */ mul.s $f6, $f2, $f2 +/* 03DCD0 8003D0D0 46128301 */ sub.s $f12, $f16, $f18 +/* 03DCD4 8003D0D4 3C01800E */ lui $at, %hi(D_800E6180) # $at, 0x800e +/* 03DCD8 8003D0D8 C4306180 */ lwc1 $f16, %lo(D_800E6180)($at) +/* 03DCDC 8003D0DC 460C6282 */ mul.s $f10, $f12, $f12 +/* 03DCE0 8003D0E0 46062200 */ add.s $f8, $f4, $f6 +/* 03DCE4 8003D0E4 24180008 */ li $t8, 8 +/* 03DCE8 8003D0E8 460A4000 */ add.s $f0, $f8, $f10 +/* 03DCEC 8003D0EC 4610003C */ c.lt.s $f0, $f16 +/* 03DCF0 8003D0F0 00000000 */ nop +/* 03DCF4 8003D0F4 45000003 */ bc1f .L8003D104 +/* 03DCF8 8003D0F8 00000000 */ nop +/* 03DCFC 8003D0FC ACD8007C */ sw $t8, 0x7c($a2) +/* 03DD00 8003D100 24040001 */ li $a0, 1 +.L8003D104: +/* 03DD04 8003D104 8CC2007C */ lw $v0, 0x7c($a2) +/* 03DD08 8003D108 8FB9004C */ lw $t9, 0x4c($sp) +/* 03DD0C 8003D10C 18400010 */ blez $v0, .L8003D150 +/* 03DD10 8003D110 00594023 */ subu $t0, $v0, $t9 +/* 03DD14 8003D114 1D00000E */ bgtz $t0, .L8003D150 +/* 03DD18 8003D118 ACC8007C */ sw $t0, 0x7c($a2) +/* 03DD1C 8003D11C 80E20185 */ lb $v0, 0x185($a3) +/* 03DD20 8003D120 240C0008 */ li $t4, 8 +/* 03DD24 8003D124 18400009 */ blez $v0, .L8003D14C +/* 03DD28 8003D128 244AFFFF */ addiu $t2, $v0, -1 +/* 03DD2C 8003D12C A0EA0185 */ sb $t2, 0x185($a3) +/* 03DD30 8003D130 80EB0185 */ lb $t3, 0x185($a3) +/* 03DD34 8003D134 00000000 */ nop +/* 03DD38 8003D138 11600002 */ beqz $t3, .L8003D144 +/* 03DD3C 8003D13C 00000000 */ nop +/* 03DD40 8003D140 24040001 */ li $a0, 1 +.L8003D144: +/* 03DD44 8003D144 10000002 */ b .L8003D150 +/* 03DD48 8003D148 ACCC007C */ sw $t4, 0x7c($a2) +.L8003D14C: +/* 03DD4C 8003D14C ACC0007C */ sw $zero, 0x7c($a2) +.L8003D150: +/* 03DD50 8003D150 10800053 */ beqz $a0, .L8003D2A0 +/* 03DD54 8003D154 8FBF0014 */ lw $ra, 0x14($sp) +/* 03DD58 8003D158 444DF800 */ cfc1 $t5, $31 +/* 03DD5C 8003D15C C472000C */ lwc1 $f18, 0xc($v1) +/* 03DD60 8003D160 35A10003 */ ori $at, $t5, 3 +/* 03DD64 8003D164 38210002 */ xori $at, $at, 2 +/* 03DD68 8003D168 44C1F800 */ ctc1 $at, $31 +/* 03DD6C 8003D16C 240C0008 */ li $t4, 8 +/* 03DD70 8003D170 46009124 */ cvt.w.s $f4, $f18 +/* 03DD74 8003D174 27A40024 */ addiu $a0, $sp, 0x24 +/* 03DD78 8003D178 44CDF800 */ ctc1 $t5, $31 +/* 03DD7C 8003D17C 440E2000 */ mfc1 $t6, $f4 +/* 03DD80 8003D180 240D0061 */ li $t5, 97 +/* 03DD84 8003D184 444FF800 */ cfc1 $t7, $31 +/* 03DD88 8003D188 A7AE0026 */ sh $t6, 0x26($sp) +/* 03DD8C 8003D18C 35E10003 */ ori $at, $t7, 3 +/* 03DD90 8003D190 38210002 */ xori $at, $at, 2 +/* 03DD94 8003D194 44C1F800 */ ctc1 $at, $31 +/* 03DD98 8003D198 C4660010 */ lwc1 $f6, 0x10($v1) +/* 03DD9C 8003D19C 24050001 */ li $a1, 1 +/* 03DDA0 8003D1A0 46003224 */ cvt.w.s $f8, $f6 +/* 03DDA4 8003D1A4 44CFF800 */ ctc1 $t7, $31 +/* 03DDA8 8003D1A8 44084000 */ mfc1 $t0, $f8 +/* 03DDAC 8003D1AC 00000000 */ nop +/* 03DDB0 8003D1B0 444AF800 */ cfc1 $t2, $31 +/* 03DDB4 8003D1B4 2509000A */ addiu $t1, $t0, 0xa +/* 03DDB8 8003D1B8 A7A90028 */ sh $t1, 0x28($sp) +/* 03DDBC 8003D1BC 35410003 */ ori $at, $t2, 3 +/* 03DDC0 8003D1C0 C46A0014 */ lwc1 $f10, 0x14($v1) +/* 03DDC4 8003D1C4 38210002 */ xori $at, $at, 2 +/* 03DDC8 8003D1C8 44C1F800 */ ctc1 $at, $31 +/* 03DDCC 8003D1CC A3AC0025 */ sb $t4, 0x25($sp) +/* 03DDD0 8003D1D0 46005424 */ cvt.w.s $f16, $f10 +/* 03DDD4 8003D1D4 A3AD0024 */ sb $t5, 0x24($sp) +/* 03DDD8 8003D1D8 440B8000 */ mfc1 $t3, $f16 +/* 03DDDC 8003D1DC 44CAF800 */ ctc1 $t2, $31 +/* 03DDE0 8003D1E0 AFA7003C */ sw $a3, 0x3c($sp) +/* 03DDE4 8003D1E4 AFA60048 */ sw $a2, 0x48($sp) +/* 03DDE8 8003D1E8 AFA30044 */ sw $v1, 0x44($sp) +/* 03DDEC 8003D1EC 0C003A95 */ jal func_8000EA54 +/* 03DDF0 8003D1F0 A7AB002A */ sh $t3, 0x2a($sp) +/* 03DDF4 8003D1F4 8FA30044 */ lw $v1, 0x44($sp) +/* 03DDF8 8003D1F8 8FA60048 */ lw $a2, 0x48($sp) +/* 03DDFC 8003D1FC 8FA7003C */ lw $a3, 0x3c($sp) +/* 03DE00 8003D200 10400026 */ beqz $v0, .L8003D29C +/* 03DE04 8003D204 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 03DE08 8003D208 44811000 */ mtc1 $at, $f2 +/* 03DE0C 8003D20C 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 03DE10 8003D210 44819000 */ mtc1 $at, $f18 +/* 03DE14 8003D214 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 03DE18 8003D218 46121102 */ mul.s $f4, $f2, $f18 +/* 03DE1C 8003D21C 44814800 */ mtc1 $at, $f9 +/* 03DE20 8003D220 44804000 */ mtc1 $zero, $f8 +/* 03DE24 8003D224 AC40003C */ sw $zero, 0x3c($v0) +/* 03DE28 8003D228 460021A1 */ cvt.d.s $f6, $f4 +/* 03DE2C 8003D22C 00000000 */ nop +/* 03DE30 8003D230 46283283 */ div.d $f10, $f6, $f8 +/* 03DE34 8003D234 E4420020 */ swc1 $f2, 0x20($v0) +/* 03DE38 8003D238 C472000C */ lwc1 $f18, 0xc($v1) +/* 03DE3C 8003D23C C4D0000C */ lwc1 $f16, 0xc($a2) +/* 03DE40 8003D240 00000000 */ nop +/* 03DE44 8003D244 46128101 */ sub.s $f4, $f16, $f18 +/* 03DE48 8003D248 46205020 */ cvt.s.d $f0, $f10 +/* 03DE4C 8003D24C 00000000 */ nop +/* 03DE50 8003D250 46002183 */ div.s $f6, $f4, $f0 +/* 03DE54 8003D254 E446001C */ swc1 $f6, 0x1c($v0) +/* 03DE58 8003D258 C46A0014 */ lwc1 $f10, 0x14($v1) +/* 03DE5C 8003D25C C4C80014 */ lwc1 $f8, 0x14($a2) +/* 03DE60 8003D260 AC47007C */ sw $a3, 0x7c($v0) +/* 03DE64 8003D264 460A4401 */ sub.s $f16, $f8, $f10 +/* 03DE68 8003D268 00000000 */ nop +/* 03DE6C 8003D26C 46008483 */ div.s $f18, $f16, $f0 +/* 03DE70 8003D270 444EF800 */ cfc1 $t6, $31 +/* 03DE74 8003D274 E4520024 */ swc1 $f18, 0x24($v0) +/* 03DE78 8003D278 35C10003 */ ori $at, $t6, 3 +/* 03DE7C 8003D27C 38210002 */ xori $at, $at, 2 +/* 03DE80 8003D280 44C1F800 */ ctc1 $at, $31 +/* 03DE84 8003D284 00000000 */ nop +/* 03DE88 8003D288 46000124 */ cvt.w.s $f4, $f0 +/* 03DE8C 8003D28C 440F2000 */ mfc1 $t7, $f4 +/* 03DE90 8003D290 44CEF800 */ ctc1 $t6, $31 +/* 03DE94 8003D294 AC4F0078 */ sw $t7, 0x78($v0) +/* 03DE98 8003D298 00000000 */ nop +.L8003D29C: +/* 03DE9C 8003D29C 8FBF0014 */ lw $ra, 0x14($sp) +.L8003D2A0: +/* 03DEA0 8003D2A0 27BD0048 */ addiu $sp, $sp, 0x48 +/* 03DEA4 8003D2A4 03E00008 */ jr $ra +/* 03DEA8 8003D2A8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003D2AC.s b/asm/non_matchings/unknown_032760/func_8003D2AC.s new file mode 100644 index 00000000..73789654 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003D2AC.s @@ -0,0 +1,5 @@ +glabel func_8003D2AC +/* 03DEAC 8003D2AC AFA40000 */ sw $a0, ($sp) +/* 03DEB0 8003D2B0 03E00008 */ jr $ra +/* 03DEB4 8003D2B4 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_8003D2B8.s b/asm/non_matchings/unknown_032760/func_8003D2B8.s new file mode 100644 index 00000000..673867c1 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003D2B8.s @@ -0,0 +1,83 @@ +glabel func_8003D2B8 +/* 03DEB8 8003D2B8 44852000 */ mtc1 $a1, $f4 +/* 03DEBC 8003D2BC 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 +/* 03DEC0 8003D2C0 468020A0 */ cvt.s.w $f2, $f4 +/* 03DEC4 8003D2C4 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) +/* 03DEC8 8003D2C8 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 03DECC 8003D2CC AFB00018 */ sw $s0, 0x18($sp) +/* 03DED0 8003D2D0 00808025 */ move $s0, $a0 +/* 03DED4 8003D2D4 AFBF001C */ sw $ra, 0x1c($sp) +/* 03DED8 8003D2D8 AFA5002C */ sw $a1, 0x2c($sp) +/* 03DEDC 8003D2DC 15E00007 */ bnez $t7, .L8003D2FC +/* 03DEE0 8003D2E0 46001006 */ mov.s $f0, $f2 +/* 03DEE4 8003D2E4 3C01800E */ lui $at, %hi(D_800E618C) # $at, 0x800e +/* 03DEE8 8003D2E8 C4296188 */ lwc1 $f9, %lo(D_800E6188)($at) +/* 03DEEC 8003D2EC C428618C */ lwc1 $f8, %lo(D_800E618C)($at) +/* 03DEF0 8003D2F0 460011A1 */ cvt.d.s $f6, $f2 +/* 03DEF4 8003D2F4 46283282 */ mul.d $f10, $f6, $f8 +/* 03DEF8 8003D2F8 46205020 */ cvt.s.d $f0, $f10 +.L8003D2FC: +/* 03DEFC 8003D2FC 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 03DF00 8003D300 44818800 */ mtc1 $at, $f17 +/* 03DF04 8003D304 44808000 */ mtc1 $zero, $f16 +/* 03DF08 8003D308 460004A1 */ cvt.d.s $f18, $f0 +/* 03DF0C 8003D30C 46328102 */ mul.d $f4, $f16, $f18 +/* 03DF10 8003D310 C6060020 */ lwc1 $f6, 0x20($s0) +/* 03DF14 8003D314 C612001C */ lwc1 $f18, 0x1c($s0) +/* 03DF18 8003D318 46003221 */ cvt.d.s $f8, $f6 +/* 03DF1C 8003D31C 02002025 */ move $a0, $s0 +/* 03DF20 8003D320 46244281 */ sub.d $f10, $f8, $f4 +/* 03DF24 8003D324 46205420 */ cvt.s.d $f16, $f10 +/* 03DF28 8003D328 C60A0024 */ lwc1 $f10, 0x24($s0) +/* 03DF2C 8003D32C 46009182 */ mul.s $f6, $f18, $f0 +/* 03DF30 8003D330 E6100020 */ swc1 $f16, 0x20($s0) +/* 03DF34 8003D334 C6080020 */ lwc1 $f8, 0x20($s0) +/* 03DF38 8003D338 00000000 */ nop +/* 03DF3C 8003D33C 46004102 */ mul.s $f4, $f8, $f0 +/* 03DF40 8003D340 44053000 */ mfc1 $a1, $f6 +/* 03DF44 8003D344 46005402 */ mul.s $f16, $f10, $f0 +/* 03DF48 8003D348 44062000 */ mfc1 $a2, $f4 +/* 03DF4C 8003D34C 44078000 */ mfc1 $a3, $f16 +/* 03DF50 8003D350 0C00455C */ jal func_80011570 +/* 03DF54 8003D354 00000000 */ nop +/* 03DF58 8003D358 8E180078 */ lw $t8, 0x78($s0) +/* 03DF5C 8003D35C 8FB9002C */ lw $t9, 0x2c($sp) +/* 03DF60 8003D360 02002025 */ move $a0, $s0 +/* 03DF64 8003D364 03194023 */ subu $t0, $t8, $t9 +/* 03DF68 8003D368 1D000017 */ bgtz $t0, .L8003D3C8 +/* 03DF6C 8003D36C AE080078 */ sw $t0, 0x78($s0) +/* 03DF70 8003D370 8E02007C */ lw $v0, 0x7c($s0) +/* 03DF74 8003D374 240D0001 */ li $t5, 1 +/* 03DF78 8003D378 804A0193 */ lb $t2, 0x193($v0) +/* 03DF7C 8003D37C 00000000 */ nop +/* 03DF80 8003D380 254B0001 */ addiu $t3, $t2, 1 +/* 03DF84 8003D384 A04B0193 */ sb $t3, 0x193($v0) +/* 03DF88 8003D388 804C0193 */ lb $t4, 0x193($v0) +/* 03DF8C 8003D38C 00000000 */ nop +/* 03DF90 8003D390 2981000A */ slti $at, $t4, 0xa +/* 03DF94 8003D394 14200002 */ bnez $at, .L8003D3A0 +/* 03DF98 8003D398 00000000 */ nop +/* 03DF9C 8003D39C A04D01D8 */ sb $t5, 0x1d8($v0) +.L8003D3A0: +/* 03DFA0 8003D3A0 0C003FEE */ jal func_8000FFB8 +/* 03DFA4 8003D3A4 AFA20020 */ sw $v0, 0x20($sp) +/* 03DFA8 8003D3A8 8FA20020 */ lw $v0, 0x20($sp) +/* 03DFAC 8003D3AC 2401FFFF */ li $at, -1 +/* 03DFB0 8003D3B0 844E0000 */ lh $t6, ($v0) +/* 03DFB4 8003D3B4 24040022 */ li $a0, 34 +/* 03DFB8 8003D3B8 11C10004 */ beq $t6, $at, .L8003D3CC +/* 03DFBC 8003D3BC 8FB8002C */ lw $t8, 0x2c($sp) +/* 03DFC0 8003D3C0 0C000741 */ jal func_80001D04 +/* 03DFC4 8003D3C4 00002825 */ move $a1, $zero +.L8003D3C8: +/* 03DFC8 8003D3C8 8FB8002C */ lw $t8, 0x2c($sp) +.L8003D3CC: +/* 03DFCC 8003D3CC 860F0018 */ lh $t7, 0x18($s0) +/* 03DFD0 8003D3D0 0018C8C0 */ sll $t9, $t8, 3 +/* 03DFD4 8003D3D4 01F94021 */ addu $t0, $t7, $t9 +/* 03DFD8 8003D3D8 A6080018 */ sh $t0, 0x18($s0) +/* 03DFDC 8003D3DC 8FBF001C */ lw $ra, 0x1c($sp) +/* 03DFE0 8003D3E0 8FB00018 */ lw $s0, 0x18($sp) +/* 03DFE4 8003D3E4 03E00008 */ jr $ra +/* 03DFE8 8003D3E8 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_032760/func_8003D3EC.s b/asm/non_matchings/unknown_032760/func_8003D3EC.s new file mode 100644 index 00000000..05b1e752 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003D3EC.s @@ -0,0 +1,6 @@ +glabel func_8003D3EC +/* 03DFEC 8003D3EC AFA50004 */ sw $a1, 4($sp) +/* 03DFF0 8003D3F0 240E0064 */ li $t6, 100 +/* 03DFF4 8003D3F4 03E00008 */ jr $ra +/* 03DFF8 8003D3F8 A48E0018 */ sh $t6, 0x18($a0) + diff --git a/asm/non_matchings/unknown_032760/func_8003D3FC.s b/asm/non_matchings/unknown_032760/func_8003D3FC.s new file mode 100644 index 00000000..bdb194dc --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003D3FC.s @@ -0,0 +1,83 @@ +glabel func_8003D3FC +/* 03DFFC 8003D3FC 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 03E000 8003D400 AFBF002C */ sw $ra, 0x2c($sp) +/* 03E004 8003D404 AFB00028 */ sw $s0, 0x28($sp) +/* 03E008 8003D408 8C8E007C */ lw $t6, 0x7c($a0) +/* 03E00C 8003D40C 00808025 */ move $s0, $a0 +/* 03E010 8003D410 11C00005 */ beqz $t6, .L8003D428 +/* 03E014 8003D414 00000000 */ nop +/* 03E018 8003D418 8C8F0078 */ lw $t7, 0x78($a0) +/* 03E01C 8003D41C 00000000 */ nop +/* 03E020 8003D420 01E5C023 */ subu $t8, $t7, $a1 +/* 03E024 8003D424 AC980078 */ sw $t8, 0x78($a0) +.L8003D428: +/* 03E028 8003D428 8E190078 */ lw $t9, 0x78($s0) +/* 03E02C 8003D42C 00000000 */ nop +/* 03E030 8003D430 1F20003D */ bgtz $t9, .L8003D528 +/* 03E034 8003D434 8FBF002C */ lw $ra, 0x2c($sp) +/* 03E038 8003D438 4448F800 */ cfc1 $t0, $31 +/* 03E03C 8003D43C C604000C */ lwc1 $f4, 0xc($s0) +/* 03E040 8003D440 35010003 */ ori $at, $t0, 3 +/* 03E044 8003D444 38210002 */ xori $at, $at, 2 +/* 03E048 8003D448 44C1F800 */ ctc1 $at, $31 +/* 03E04C 8003D44C 24190008 */ li $t9, 8 +/* 03E050 8003D450 460021A4 */ cvt.w.s $f6, $f4 +/* 03E054 8003D454 27A40038 */ addiu $a0, $sp, 0x38 +/* 03E058 8003D458 44C8F800 */ ctc1 $t0, $31 +/* 03E05C 8003D45C 44093000 */ mfc1 $t1, $f6 +/* 03E060 8003D460 24080053 */ li $t0, 83 +/* 03E064 8003D464 444AF800 */ cfc1 $t2, $31 +/* 03E068 8003D468 A7A9003A */ sh $t1, 0x3a($sp) +/* 03E06C 8003D46C 35410003 */ ori $at, $t2, 3 +/* 03E070 8003D470 38210002 */ xori $at, $at, 2 +/* 03E074 8003D474 44C1F800 */ ctc1 $at, $31 +/* 03E078 8003D478 C6080010 */ lwc1 $f8, 0x10($s0) +/* 03E07C 8003D47C 24050001 */ li $a1, 1 +/* 03E080 8003D480 460042A4 */ cvt.w.s $f10, $f8 +/* 03E084 8003D484 44CAF800 */ ctc1 $t2, $31 +/* 03E088 8003D488 440D5000 */ mfc1 $t5, $f10 +/* 03E08C 8003D48C 00000000 */ nop +/* 03E090 8003D490 444FF800 */ cfc1 $t7, $31 +/* 03E094 8003D494 25AEFFFD */ addiu $t6, $t5, -3 +/* 03E098 8003D498 35E10003 */ ori $at, $t7, 3 +/* 03E09C 8003D49C A7AE003C */ sh $t6, 0x3c($sp) +/* 03E0A0 8003D4A0 38210002 */ xori $at, $at, 2 +/* 03E0A4 8003D4A4 44C1F800 */ ctc1 $at, $31 +/* 03E0A8 8003D4A8 C6100014 */ lwc1 $f16, 0x14($s0) +/* 03E0AC 8003D4AC A3B90039 */ sb $t9, 0x39($sp) +/* 03E0B0 8003D4B0 460084A4 */ cvt.w.s $f18, $f16 +/* 03E0B4 8003D4B4 A3A80038 */ sb $t0, 0x38($sp) +/* 03E0B8 8003D4B8 44189000 */ mfc1 $t8, $f18 +/* 03E0BC 8003D4BC 44CFF800 */ ctc1 $t7, $31 +/* 03E0C0 8003D4C0 0C003A95 */ jal func_8000EA54 +/* 03E0C4 8003D4C4 A7B8003E */ sh $t8, 0x3e($sp) +/* 03E0C8 8003D4C8 24090001 */ li $t1, 1 +/* 03E0CC 8003D4CC 10400013 */ beqz $v0, .L8003D51C +/* 03E0D0 8003D4D0 AE09007C */ sw $t1, 0x7c($s0) +/* 03E0D4 8003D4D4 AC40003C */ sw $zero, 0x3c($v0) +/* 03E0D8 8003D4D8 8C420064 */ lw $v0, 0x64($v0) +/* 03E0DC 8003D4DC 3C014160 */ li $at, 0x41600000 # 14.000000 +/* 03E0E0 8003D4E0 AC500004 */ sw $s0, 4($v0) +/* 03E0E4 8003D4E4 C6040010 */ lwc1 $f4, 0x10($s0) +/* 03E0E8 8003D4E8 44813000 */ mtc1 $at, $f6 +/* 03E0EC 8003D4EC 3C013E80 */ li $at, 0x3E800000 # 0.250000 +/* 03E0F0 8003D4F0 8E060014 */ lw $a2, 0x14($s0) +/* 03E0F4 8003D4F4 C60C000C */ lwc1 $f12, 0xc($s0) +/* 03E0F8 8003D4F8 44814000 */ mtc1 $at, $f8 +/* 03E0FC 8003D4FC 240A0022 */ li $t2, 34 +/* 03E100 8003D500 AFAA0010 */ sw $t2, 0x10($sp) +/* 03E104 8003D504 AFA00018 */ sw $zero, 0x18($sp) +/* 03E108 8003D508 2407002C */ li $a3, 44 +/* 03E10C 8003D50C 46062381 */ sub.s $f14, $f4, $f6 +/* 03E110 8003D510 0C00FF11 */ jal func_8003FC44 +/* 03E114 8003D514 E7A80014 */ swc1 $f8, 0x14($sp) +/* 03E118 8003D518 AE00007C */ sw $zero, 0x7c($s0) +.L8003D51C: +/* 03E11C 8003D51C 240B04B0 */ li $t3, 1200 +/* 03E120 8003D520 AE0B0078 */ sw $t3, 0x78($s0) +/* 03E124 8003D524 8FBF002C */ lw $ra, 0x2c($sp) +.L8003D528: +/* 03E128 8003D528 8FB00028 */ lw $s0, 0x28($sp) +/* 03E12C 8003D52C 03E00008 */ jr $ra +/* 03E130 8003D530 27BD0040 */ addiu $sp, $sp, 0x40 + diff --git a/asm/non_matchings/unknown_032760/func_8003D534.s b/asm/non_matchings/unknown_032760/func_8003D534.s new file mode 100644 index 00000000..e73aacdb --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003D534.s @@ -0,0 +1,30 @@ +glabel func_8003D534 +/* 03E134 8003D534 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 03E138 8003D538 AFBF0014 */ sw $ra, 0x14($sp) +/* 03E13C 8003D53C AFA5001C */ sw $a1, 0x1c($sp) +/* 03E140 8003D540 8C8F004C */ lw $t7, 0x4c($a0) +/* 03E144 8003D544 240E0002 */ li $t6, 2 +/* 03E148 8003D548 A5EE0014 */ sh $t6, 0x14($t7) +/* 03E14C 8003D54C 8C98004C */ lw $t8, 0x4c($a0) +/* 03E150 8003D550 2419001E */ li $t9, 30 +/* 03E154 8003D554 A3000011 */ sb $zero, 0x11($t8) +/* 03E158 8003D558 8C88004C */ lw $t0, 0x4c($a0) +/* 03E15C 8003D55C 24090014 */ li $t1, 20 +/* 03E160 8003D560 A1190010 */ sb $t9, 0x10($t0) +/* 03E164 8003D564 240A0010 */ li $t2, 16 +/* 03E168 8003D568 A489007C */ sh $t1, 0x7c($a0) +/* 03E16C 8003D56C A48A007E */ sh $t2, 0x7e($a0) +/* 03E170 8003D570 0C0270C3 */ jal func_8009C30C +/* 03E174 8003D574 AFA40018 */ sw $a0, 0x18($sp) +/* 03E178 8003D578 8FA40018 */ lw $a0, 0x18($sp) +/* 03E17C 8003D57C 304B1000 */ andi $t3, $v0, 0x1000 +/* 03E180 8003D580 11600004 */ beqz $t3, .L8003D594 +/* 03E184 8003D584 8FBF0014 */ lw $ra, 0x14($sp) +/* 03E188 8003D588 0C003FEE */ jal func_8000FFB8 +/* 03E18C 8003D58C 00000000 */ nop +/* 03E190 8003D590 8FBF0014 */ lw $ra, 0x14($sp) +.L8003D594: +/* 03E194 8003D594 27BD0018 */ addiu $sp, $sp, 0x18 +/* 03E198 8003D598 03E00008 */ jr $ra +/* 03E19C 8003D59C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003D5A0.s b/asm/non_matchings/unknown_032760/func_8003D5A0.s new file mode 100644 index 00000000..bdec07d6 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003D5A0.s @@ -0,0 +1,406 @@ +glabel func_8003D5A0 +/* 03E1A0 8003D5A0 44852000 */ mtc1 $a1, $f4 +/* 03E1A4 8003D5A4 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 +/* 03E1A8 8003D5A8 468020A0 */ cvt.s.w $f2, $f4 +/* 03E1AC 8003D5AC 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) +/* 03E1B0 8003D5B0 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 03E1B4 8003D5B4 AFB00020 */ sw $s0, 0x20($sp) +/* 03E1B8 8003D5B8 00808025 */ move $s0, $a0 +/* 03E1BC 8003D5BC AFBF0024 */ sw $ra, 0x24($sp) +/* 03E1C0 8003D5C0 AFA50074 */ sw $a1, 0x74($sp) +/* 03E1C4 8003D5C4 15E00007 */ bnez $t7, .L8003D5E4 +/* 03E1C8 8003D5C8 46001006 */ mov.s $f0, $f2 +/* 03E1CC 8003D5CC 3C01800E */ lui $at, %hi(D_800E6194) # $at, 0x800e +/* 03E1D0 8003D5D0 C4296190 */ lwc1 $f9, %lo(D_800E6190)($at) +/* 03E1D4 8003D5D4 C4286194 */ lwc1 $f8, %lo(D_800E6194)($at) +/* 03E1D8 8003D5D8 460011A1 */ cvt.d.s $f6, $f2 +/* 03E1DC 8003D5DC 46283282 */ mul.d $f10, $f6, $f8 +/* 03E1E0 8003D5E0 46205020 */ cvt.s.d $f0, $f10 +.L8003D5E4: +/* 03E1E4 8003D5E4 8E180064 */ lw $t8, 0x64($s0) +/* 03E1E8 8003D5E8 8FAA0074 */ lw $t2, 0x74($sp) +/* 03E1EC 8003D5EC AFB8003C */ sw $t8, 0x3c($sp) +/* 03E1F0 8003D5F0 86190018 */ lh $t9, 0x18($s0) +/* 03E1F4 8003D5F4 8E0D0078 */ lw $t5, 0x78($s0) +/* 03E1F8 8003D5F8 000A58C0 */ sll $t3, $t2, 3 +/* 03E1FC 8003D5FC 2401FFFF */ li $at, -1 +/* 03E200 8003D600 032B6021 */ addu $t4, $t9, $t3 +/* 03E204 8003D604 15A10019 */ bne $t5, $at, .L8003D66C +/* 03E208 8003D608 A60C0018 */ sh $t4, 0x18($s0) +/* 03E20C 8003D60C 860E0006 */ lh $t6, 6($s0) +/* 03E210 8003D610 26090078 */ addiu $t1, $s0, 0x78 +/* 03E214 8003D614 35CF4000 */ ori $t7, $t6, 0x4000 +/* 03E218 8003D618 A60F0006 */ sh $t7, 6($s0) +/* 03E21C 8003D61C 8FAA0074 */ lw $t2, 0x74($sp) +/* 03E220 8003D620 85380006 */ lh $t8, 6($t1) +/* 03E224 8003D624 240B0001 */ li $t3, 1 +/* 03E228 8003D628 030AC823 */ subu $t9, $t8, $t2 +/* 03E22C 8003D62C A5390006 */ sh $t9, 6($t1) +/* 03E230 8003D630 AE0B0074 */ sw $t3, 0x74($s0) +/* 03E234 8003D634 8FA50074 */ lw $a1, 0x74($sp) +/* 03E238 8003D638 AFA90030 */ sw $t1, 0x30($sp) +/* 03E23C 8003D63C 0C02BF0F */ jal func_800AFC3C +/* 03E240 8003D640 02002025 */ move $a0, $s0 +/* 03E244 8003D644 8FA90030 */ lw $t1, 0x30($sp) +/* 03E248 8003D648 00000000 */ nop +/* 03E24C 8003D64C 852C0006 */ lh $t4, 6($t1) +/* 03E250 8003D650 00000000 */ nop +/* 03E254 8003D654 1D80014F */ bgtz $t4, .L8003DB94 +/* 03E258 8003D658 8FBF0024 */ lw $ra, 0x24($sp) +/* 03E25C 8003D65C 0C003FEE */ jal func_8000FFB8 +/* 03E260 8003D660 02002025 */ move $a0, $s0 +/* 03E264 8003D664 1000014B */ b .L8003DB94 +/* 03E268 8003D668 8FBF0024 */ lw $ra, 0x24($sp) +.L8003D66C: +/* 03E26C 8003D66C 8FAD003C */ lw $t5, 0x3c($sp) +/* 03E270 8003D670 8FAE0074 */ lw $t6, 0x74($sp) +/* 03E274 8003D674 81A20008 */ lb $v0, 8($t5) +/* 03E278 8003D678 8FB8003C */ lw $t8, 0x3c($sp) +/* 03E27C 8003D67C 18400004 */ blez $v0, .L8003D690 +/* 03E280 8003D680 26090078 */ addiu $t1, $s0, 0x78 +/* 03E284 8003D684 004E7823 */ subu $t7, $v0, $t6 +/* 03E288 8003D688 10000003 */ b .L8003D698 +/* 03E28C 8003D68C A1AF0008 */ sb $t7, 8($t5) +.L8003D690: +/* 03E290 8003D690 A3000008 */ sb $zero, 8($t8) +/* 03E294 8003D694 AF000000 */ sw $zero, ($t8) +.L8003D698: +/* 03E298 8003D698 8D2A0000 */ lw $t2, ($t1) +/* 03E29C 8003D69C 24010001 */ li $at, 1 +/* 03E2A0 8003D6A0 1541009B */ bne $t2, $at, .L8003D910 +/* 03E2A4 8003D6A4 8FAD003C */ lw $t5, 0x3c($sp) +/* 03E2A8 8003D6A8 C612001C */ lwc1 $f18, 0x1c($s0) +/* 03E2AC 8003D6AC C610000C */ lwc1 $f16, 0xc($s0) +/* 03E2B0 8003D6B0 46009102 */ mul.s $f4, $f18, $f0 +/* 03E2B4 8003D6B4 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 03E2B8 8003D6B8 2605000C */ addiu $a1, $s0, 0xc +/* 03E2BC 8003D6BC 24040001 */ li $a0, 1 +/* 03E2C0 8003D6C0 46048180 */ add.s $f6, $f16, $f4 +/* 03E2C4 8003D6C4 27A6005C */ addiu $a2, $sp, 0x5c +/* 03E2C8 8003D6C8 E7A6005C */ swc1 $f6, 0x5c($sp) +/* 03E2CC 8003D6CC C60A0020 */ lwc1 $f10, 0x20($s0) +/* 03E2D0 8003D6D0 C6080010 */ lwc1 $f8, 0x10($s0) +/* 03E2D4 8003D6D4 46005482 */ mul.s $f18, $f10, $f0 +/* 03E2D8 8003D6D8 2407FFFF */ li $a3, -1 +/* 03E2DC 8003D6DC 46124400 */ add.s $f16, $f8, $f18 +/* 03E2E0 8003D6E0 44819000 */ mtc1 $at, $f18 +/* 03E2E4 8003D6E4 E7B00060 */ swc1 $f16, 0x60($sp) +/* 03E2E8 8003D6E8 C6060024 */ lwc1 $f6, 0x24($s0) +/* 03E2EC 8003D6EC C6040014 */ lwc1 $f4, 0x14($s0) +/* 03E2F0 8003D6F0 46003282 */ mul.s $f10, $f6, $f0 +/* 03E2F4 8003D6F4 E7A00054 */ swc1 $f0, 0x54($sp) +/* 03E2F8 8003D6F8 AFA90030 */ sw $t1, 0x30($sp) +/* 03E2FC 8003D6FC AFA5002C */ sw $a1, 0x2c($sp) +/* 03E300 8003D700 460A2200 */ add.s $f8, $f4, $f10 +/* 03E304 8003D704 E7B20058 */ swc1 $f18, 0x58($sp) +/* 03E308 8003D708 0C00C44C */ jal func_80031130 +/* 03E30C 8003D70C E7A80064 */ swc1 $f8, 0x64($sp) +/* 03E310 8003D710 8FA4002C */ lw $a0, 0x2c($sp) +/* 03E314 8003D714 24190001 */ li $t9, 1 +/* 03E318 8003D718 27AB0048 */ addiu $t3, $sp, 0x48 +/* 03E31C 8003D71C AFA00048 */ sw $zero, 0x48($sp) +/* 03E320 8003D720 AFAB0014 */ sw $t3, 0x14($sp) +/* 03E324 8003D724 AFB90010 */ sw $t9, 0x10($sp) +/* 03E328 8003D728 27A5005C */ addiu $a1, $sp, 0x5c +/* 03E32C 8003D72C 27A60058 */ addiu $a2, $sp, 0x58 +/* 03E330 8003D730 0C00C580 */ jal func_80031600 +/* 03E334 8003D734 27A70043 */ addiu $a3, $sp, 0x43 +/* 03E338 8003D738 C7B0005C */ lwc1 $f16, 0x5c($sp) +/* 03E33C 8003D73C C606000C */ lwc1 $f6, 0xc($s0) +/* 03E340 8003D740 C7A00054 */ lwc1 $f0, 0x54($sp) +/* 03E344 8003D744 46068101 */ sub.s $f4, $f16, $f6 +/* 03E348 8003D748 8FA90030 */ lw $t1, 0x30($sp) +/* 03E34C 8003D74C 46002283 */ div.s $f10, $f4, $f0 +/* 03E350 8003D750 C6120010 */ lwc1 $f18, 0x10($s0) +/* 03E354 8003D754 24010002 */ li $at, 2 +/* 03E358 8003D758 44806800 */ mtc1 $zero, $f13 +/* 03E35C 8003D75C 02002025 */ move $a0, $s0 +/* 03E360 8003D760 27A50058 */ addiu $a1, $sp, 0x58 +/* 03E364 8003D764 00003025 */ move $a2, $zero +/* 03E368 8003D768 24070001 */ li $a3, 1 +/* 03E36C 8003D76C E60A001C */ swc1 $f10, 0x1c($s0) +/* 03E370 8003D770 C7A80060 */ lwc1 $f8, 0x60($sp) +/* 03E374 8003D774 C60A0014 */ lwc1 $f10, 0x14($s0) +/* 03E378 8003D778 46124401 */ sub.s $f16, $f8, $f18 +/* 03E37C 8003D77C 00000000 */ nop +/* 03E380 8003D780 46008183 */ div.s $f6, $f16, $f0 +/* 03E384 8003D784 E6060020 */ swc1 $f6, 0x20($s0) +/* 03E388 8003D788 C7A40064 */ lwc1 $f4, 0x64($sp) +/* 03E38C 8003D78C 00000000 */ nop +/* 03E390 8003D790 460A2201 */ sub.s $f8, $f4, $f10 +/* 03E394 8003D794 00000000 */ nop +/* 03E398 8003D798 46004483 */ div.s $f18, $f8, $f0 +/* 03E39C 8003D79C E6120024 */ swc1 $f18, 0x24($s0) +/* 03E3A0 8003D7A0 C7B0005C */ lwc1 $f16, 0x5c($sp) +/* 03E3A4 8003D7A4 00000000 */ nop +/* 03E3A8 8003D7A8 E610000C */ swc1 $f16, 0xc($s0) +/* 03E3AC 8003D7AC C7A60060 */ lwc1 $f6, 0x60($sp) +/* 03E3B0 8003D7B0 00000000 */ nop +/* 03E3B4 8003D7B4 E6060010 */ swc1 $f6, 0x10($s0) +/* 03E3B8 8003D7B8 C7A40064 */ lwc1 $f4, 0x64($sp) +/* 03E3BC 8003D7BC 00000000 */ nop +/* 03E3C0 8003D7C0 E6040014 */ swc1 $f4, 0x14($s0) +/* 03E3C4 8003D7C4 8FAC003C */ lw $t4, 0x3c($sp) +/* 03E3C8 8003D7C8 00000000 */ nop +/* 03E3CC 8003D7CC 818E0009 */ lb $t6, 9($t4) +/* 03E3D0 8003D7D0 00000000 */ nop +/* 03E3D4 8003D7D4 11C10016 */ beq $t6, $at, .L8003D830 +/* 03E3D8 8003D7D8 3C01800E */ lui $at, %hi(D_800E619C) # $at, 0x800e +/* 03E3DC 8003D7DC C4216198 */ lwc1 $f1, %lo(D_800E6198)($at) +/* 03E3E0 8003D7E0 C420619C */ lwc1 $f0, %lo(D_800E619C)($at) +/* 03E3E4 8003D7E4 C60A0020 */ lwc1 $f10, 0x20($s0) +/* 03E3E8 8003D7E8 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 03E3EC 8003D7EC 44819800 */ mtc1 $at, $f19 +/* 03E3F0 8003D7F0 44809000 */ mtc1 $zero, $f18 +/* 03E3F4 8003D7F4 46005221 */ cvt.d.s $f8, $f10 +/* 03E3F8 8003D7F8 46324401 */ sub.d $f16, $f8, $f18 +/* 03E3FC 8003D7FC C604001C */ lwc1 $f4, 0x1c($s0) +/* 03E400 8003D800 462081A0 */ cvt.s.d $f6, $f16 +/* 03E404 8003D804 C6100024 */ lwc1 $f16, 0x24($s0) +/* 03E408 8003D808 460022A1 */ cvt.d.s $f10, $f4 +/* 03E40C 8003D80C 46205202 */ mul.d $f8, $f10, $f0 +/* 03E410 8003D810 E6060020 */ swc1 $f6, 0x20($s0) +/* 03E414 8003D814 460081A1 */ cvt.d.s $f6, $f16 +/* 03E418 8003D818 46203102 */ mul.d $f4, $f6, $f0 +/* 03E41C 8003D81C 462044A0 */ cvt.s.d $f18, $f8 +/* 03E420 8003D820 E612001C */ swc1 $f18, 0x1c($s0) +/* 03E424 8003D824 462022A0 */ cvt.s.d $f10, $f4 +/* 03E428 8003D828 10000006 */ b .L8003D844 +/* 03E42C 8003D82C E60A0024 */ swc1 $f10, 0x24($s0) +.L8003D830: +/* 03E430 8003D830 44800000 */ mtc1 $zero, $f0 +/* 03E434 8003D834 00000000 */ nop +/* 03E438 8003D838 E600001C */ swc1 $f0, 0x1c($s0) +/* 03E43C 8003D83C E6000020 */ swc1 $f0, 0x20($s0) +/* 03E440 8003D840 E6000024 */ swc1 $f0, 0x24($s0) +.L8003D844: +/* 03E444 8003D844 C602001C */ lwc1 $f2, 0x1c($s0) +/* 03E448 8003D848 44806000 */ mtc1 $zero, $f12 +/* 03E44C 8003D84C 46001221 */ cvt.d.s $f8, $f2 +/* 03E450 8003D850 462C403C */ c.lt.d $f8, $f12 +/* 03E454 8003D854 8FAF0048 */ lw $t7, 0x48($sp) +/* 03E458 8003D858 45000002 */ bc1f .L8003D864 +/* 03E45C 8003D85C 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 03E460 8003D860 46001087 */ neg.s $f2, $f2 +.L8003D864: +/* 03E464 8003D864 C6000024 */ lwc1 $f0, 0x24($s0) +/* 03E468 8003D868 00000000 */ nop +/* 03E46C 8003D86C 460004A1 */ cvt.d.s $f18, $f0 +/* 03E470 8003D870 462C903C */ c.lt.d $f18, $f12 +/* 03E474 8003D874 00000000 */ nop +/* 03E478 8003D878 45000002 */ bc1f .L8003D884 +/* 03E47C 8003D87C 00000000 */ nop +/* 03E480 8003D880 46000007 */ neg.s $f0, $f0 +.L8003D884: +/* 03E484 8003D884 19E0000E */ blez $t7, .L8003D8C0 +/* 03E488 8003D888 00000000 */ nop +/* 03E48C 8003D88C 44816800 */ mtc1 $at, $f13 +/* 03E490 8003D890 44806000 */ mtc1 $zero, $f12 +/* 03E494 8003D894 46001421 */ cvt.d.s $f16, $f2 +/* 03E498 8003D898 462C803C */ c.lt.d $f16, $f12 +/* 03E49C 8003D89C 00000000 */ nop +/* 03E4A0 8003D8A0 45000007 */ bc1f .L8003D8C0 +/* 03E4A4 8003D8A4 00000000 */ nop +/* 03E4A8 8003D8A8 460001A1 */ cvt.d.s $f6, $f0 +/* 03E4AC 8003D8AC 462C303C */ c.lt.d $f6, $f12 +/* 03E4B0 8003D8B0 00000000 */ nop +/* 03E4B4 8003D8B4 45000002 */ bc1f .L8003D8C0 +/* 03E4B8 8003D8B8 00000000 */ nop +/* 03E4BC 8003D8BC AD200000 */ sw $zero, ($t1) +.L8003D8C0: +/* 03E4C0 8003D8C0 3C01800E */ lui $at, %hi(D_800E61A0) # $at, 0x800e +/* 03E4C4 8003D8C4 C42461A0 */ lwc1 $f4, %lo(D_800E61A0)($at) +/* 03E4C8 8003D8C8 AFA90030 */ sw $t1, 0x30($sp) +/* 03E4CC 8003D8CC 0C00AE6F */ jal func_8002B9BC +/* 03E4D0 8003D8D0 E7A40058 */ swc1 $f4, 0x58($sp) +/* 03E4D4 8003D8D4 8FA90030 */ lw $t1, 0x30($sp) +/* 03E4D8 8003D8D8 1040000D */ beqz $v0, .L8003D910 +/* 03E4DC 8003D8DC 8FAD003C */ lw $t5, 0x3c($sp) +/* 03E4E0 8003D8E0 C60A0010 */ lwc1 $f10, 0x10($s0) +/* 03E4E4 8003D8E4 C7A80058 */ lwc1 $f8, 0x58($sp) +/* 03E4E8 8003D8E8 00000000 */ nop +/* 03E4EC 8003D8EC 4608503C */ c.lt.s $f10, $f8 +/* 03E4F0 8003D8F0 00000000 */ nop +/* 03E4F4 8003D8F4 45000006 */ bc1f .L8003D910 +/* 03E4F8 8003D8F8 8FAD003C */ lw $t5, 0x3c($sp) +/* 03E4FC 8003D8FC AD200000 */ sw $zero, ($t1) +/* 03E500 8003D900 C7B20058 */ lwc1 $f18, 0x58($sp) +/* 03E504 8003D904 00000000 */ nop +/* 03E508 8003D908 E6120010 */ swc1 $f18, 0x10($s0) +/* 03E50C 8003D90C 8FAD003C */ lw $t5, 0x3c($sp) +.L8003D910: +/* 03E510 8003D910 24010002 */ li $at, 2 +/* 03E514 8003D914 81B80009 */ lb $t8, 9($t5) +/* 03E518 8003D918 8FAA0074 */ lw $t2, 0x74($sp) +/* 03E51C 8003D91C 13010002 */ beq $t8, $at, .L8003D928 +/* 03E520 8003D920 24040046 */ li $a0, 70 +/* 03E524 8003D924 24040037 */ li $a0, 55 +.L8003D928: +/* 03E528 8003D928 85220004 */ lh $v0, 4($t1) +/* 03E52C 8003D92C 00000000 */ nop +/* 03E530 8003D930 18400003 */ blez $v0, .L8003D940 +/* 03E534 8003D934 004AC823 */ subu $t9, $v0, $t2 +/* 03E538 8003D938 10000002 */ b .L8003D944 +/* 03E53C 8003D93C A5390004 */ sh $t9, 4($t1) +.L8003D940: +/* 03E540 8003D940 A5200004 */ sh $zero, 4($t1) +.L8003D944: +/* 03E544 8003D944 8E0B004C */ lw $t3, 0x4c($s0) +/* 03E548 8003D948 00000000 */ nop +/* 03E54C 8003D94C 916C0013 */ lbu $t4, 0x13($t3) +/* 03E550 8003D950 00000000 */ nop +/* 03E554 8003D954 29810078 */ slti $at, $t4, 0x78 +/* 03E558 8003D958 1020001C */ beqz $at, .L8003D9CC +/* 03E55C 8003D95C 00000000 */ nop +/* 03E560 8003D960 AFA40044 */ sw $a0, 0x44($sp) +/* 03E564 8003D964 0C01AF66 */ jal func_8006BD98 +/* 03E568 8003D968 AFA90030 */ sw $t1, 0x30($sp) +/* 03E56C 8003D96C 8FA40044 */ lw $a0, 0x44($sp) +/* 03E570 8003D970 8FA90030 */ lw $t1, 0x30($sp) +/* 03E574 8003D974 24010041 */ li $at, 65 +/* 03E578 8003D978 14410014 */ bne $v0, $at, .L8003D9CC +/* 03E57C 8003D97C 00000000 */ nop +/* 03E580 8003D980 8E0E004C */ lw $t6, 0x4c($s0) +/* 03E584 8003D984 00000000 */ nop +/* 03E588 8003D988 8DC30000 */ lw $v1, ($t6) +/* 03E58C 8003D98C 00000000 */ nop +/* 03E590 8003D990 1060000E */ beqz $v1, .L8003D9CC +/* 03E594 8003D994 00000000 */ nop +/* 03E598 8003D998 8C6F0040 */ lw $t7, 0x40($v1) +/* 03E59C 8003D99C 24010001 */ li $at, 1 +/* 03E5A0 8003D9A0 81ED0054 */ lb $t5, 0x54($t7) +/* 03E5A4 8003D9A4 00000000 */ nop +/* 03E5A8 8003D9A8 15A10008 */ bne $t5, $at, .L8003D9CC +/* 03E5AC 8003D9AC 00000000 */ nop +/* 03E5B0 8003D9B0 8C680064 */ lw $t0, 0x64($v1) +/* 03E5B4 8003D9B4 2401FFFF */ li $at, -1 +/* 03E5B8 8003D9B8 85180000 */ lh $t8, ($t0) +/* 03E5BC 8003D9BC 00000000 */ nop +/* 03E5C0 8003D9C0 17010002 */ bne $t8, $at, .L8003D9CC +/* 03E5C4 8003D9C4 00000000 */ nop +/* 03E5C8 8003D9C8 2484001E */ addiu $a0, $a0, 0x1e +.L8003D9CC: +/* 03E5CC 8003D9CC 8E02004C */ lw $v0, 0x4c($s0) +/* 03E5D0 8003D9D0 00000000 */ nop +/* 03E5D4 8003D9D4 904A0013 */ lbu $t2, 0x13($v0) +/* 03E5D8 8003D9D8 00000000 */ nop +/* 03E5DC 8003D9DC 0144082A */ slt $at, $t2, $a0 +/* 03E5E0 8003D9E0 1020006C */ beqz $at, .L8003DB94 +/* 03E5E4 8003D9E4 8FBF0024 */ lw $ra, 0x24($sp) +/* 03E5E8 8003D9E8 85390004 */ lh $t9, 4($t1) +/* 03E5EC 8003D9EC 00000000 */ nop +/* 03E5F0 8003D9F0 17200068 */ bnez $t9, .L8003DB94 +/* 03E5F4 8003D9F4 8FBF0024 */ lw $ra, 0x24($sp) +/* 03E5F8 8003D9F8 8C430000 */ lw $v1, ($v0) +/* 03E5FC 8003D9FC 00000000 */ nop +/* 03E600 8003DA00 10600064 */ beqz $v1, .L8003DB94 +/* 03E604 8003DA04 8FBF0024 */ lw $ra, 0x24($sp) +/* 03E608 8003DA08 8C6B0040 */ lw $t3, 0x40($v1) +/* 03E60C 8003DA0C 24010001 */ li $at, 1 +/* 03E610 8003DA10 816C0054 */ lb $t4, 0x54($t3) +/* 03E614 8003DA14 00000000 */ nop +/* 03E618 8003DA18 1581005E */ bne $t4, $at, .L8003DB94 +/* 03E61C 8003DA1C 8FBF0024 */ lw $ra, 0x24($sp) +/* 03E620 8003DA20 8C680064 */ lw $t0, 0x64($v1) +/* 03E624 8003DA24 AFA90030 */ sw $t1, 0x30($sp) +/* 03E628 8003DA28 AFA3006C */ sw $v1, 0x6c($sp) +/* 03E62C 8003DA2C 0C01AF66 */ jal func_8006BD98 +/* 03E630 8003DA30 AFA80068 */ sw $t0, 0x68($sp) +/* 03E634 8003DA34 8FA3006C */ lw $v1, 0x6c($sp) +/* 03E638 8003DA38 8FA80068 */ lw $t0, 0x68($sp) +/* 03E63C 8003DA3C 8FA90030 */ lw $t1, 0x30($sp) +/* 03E640 8003DA40 24010041 */ li $at, 65 +/* 03E644 8003DA44 14410006 */ bne $v0, $at, .L8003DA60 +/* 03E648 8003DA48 24040022 */ li $a0, 34 +/* 03E64C 8003DA4C 810E0185 */ lb $t6, 0x185($t0) +/* 03E650 8003DA50 00000000 */ nop +/* 03E654 8003DA54 29C10002 */ slti $at, $t6, 2 +/* 03E658 8003DA58 1020004E */ beqz $at, .L8003DB94 +/* 03E65C 8003DA5C 8FBF0024 */ lw $ra, 0x24($sp) +.L8003DA60: +/* 03E660 8003DA60 8D0F0180 */ lw $t7, 0x180($t0) +/* 03E664 8003DA64 240D0004 */ li $t5, 4 +/* 03E668 8003DA68 AFAF0034 */ sw $t7, 0x34($sp) +/* 03E66C 8003DA6C 8C670014 */ lw $a3, 0x14($v1) +/* 03E670 8003DA70 8C660010 */ lw $a2, 0x10($v1) +/* 03E674 8003DA74 8C65000C */ lw $a1, 0xc($v1) +/* 03E678 8003DA78 25180180 */ addiu $t8, $t0, 0x180 +/* 03E67C 8003DA7C AFB80014 */ sw $t8, 0x14($sp) +/* 03E680 8003DA80 AFA90030 */ sw $t1, 0x30($sp) +/* 03E684 8003DA84 AFA80068 */ sw $t0, 0x68($sp) +/* 03E688 8003DA88 AFA3006C */ sw $v1, 0x6c($sp) +/* 03E68C 8003DA8C 0C002556 */ jal func_80009558 +/* 03E690 8003DA90 AFAD0010 */ sw $t5, 0x10($sp) +/* 03E694 8003DA94 8FA40034 */ lw $a0, 0x34($sp) +/* 03E698 8003DA98 8FA3006C */ lw $v1, 0x6c($sp) +/* 03E69C 8003DA9C 8FA80068 */ lw $t0, 0x68($sp) +/* 03E6A0 8003DAA0 8FA90030 */ lw $t1, 0x30($sp) +/* 03E6A4 8003DAA4 10800009 */ beqz $a0, .L8003DACC +/* 03E6A8 8003DAA8 00000000 */ nop +/* 03E6AC 8003DAAC AFA3006C */ sw $v1, 0x6c($sp) +/* 03E6B0 8003DAB0 AFA80068 */ sw $t0, 0x68($sp) +/* 03E6B4 8003DAB4 0C0025BE */ jal func_800096F8 +/* 03E6B8 8003DAB8 AFA90030 */ sw $t1, 0x30($sp) +/* 03E6BC 8003DABC 8FA3006C */ lw $v1, 0x6c($sp) +/* 03E6C0 8003DAC0 8FA80068 */ lw $t0, 0x68($sp) +/* 03E6C4 8003DAC4 8FA90030 */ lw $t1, 0x30($sp) +/* 03E6C8 8003DAC8 00000000 */ nop +.L8003DACC: +/* 03E6CC 8003DACC 850A0000 */ lh $t2, ($t0) +/* 03E6D0 8003DAD0 2401FFFF */ li $at, -1 +/* 03E6D4 8003DAD4 11410013 */ beq $t2, $at, .L8003DB24 +/* 03E6D8 8003DAD8 00000000 */ nop +/* 03E6DC 8003DADC 81190185 */ lb $t9, 0x185($t0) +/* 03E6E0 8003DAE0 24010009 */ li $at, 9 +/* 03E6E4 8003DAE4 1721000F */ bne $t9, $at, .L8003DB24 +/* 03E6E8 8003DAE8 00000000 */ nop +/* 03E6EC 8003DAEC 81040003 */ lb $a0, 3($t0) +/* 03E6F0 8003DAF0 8C65000C */ lw $a1, 0xc($v1) +/* 03E6F4 8003DAF4 8C660010 */ lw $a2, 0x10($v1) +/* 03E6F8 8003DAF8 8C670014 */ lw $a3, 0x14($v1) +/* 03E6FC 8003DAFC 2484007B */ addiu $a0, $a0, 0x7b +/* 03E700 8003DB00 308BFFFF */ andi $t3, $a0, 0xffff +/* 03E704 8003DB04 01602025 */ move $a0, $t3 +/* 03E708 8003DB08 AFA90030 */ sw $t1, 0x30($sp) +/* 03E70C 8003DB0C AFA80068 */ sw $t0, 0x68($sp) +/* 03E710 8003DB10 0C0007AA */ jal func_80001EA8 +/* 03E714 8003DB14 AFA00010 */ sw $zero, 0x10($sp) +/* 03E718 8003DB18 8FA80068 */ lw $t0, 0x68($sp) +/* 03E71C 8003DB1C 8FA90030 */ lw $t1, 0x30($sp) +/* 03E720 8003DB20 00000000 */ nop +.L8003DB24: +/* 03E724 8003DB24 810C0185 */ lb $t4, 0x185($t0) +/* 03E728 8003DB28 240D0001 */ li $t5, 1 +/* 03E72C 8003DB2C 258E0001 */ addiu $t6, $t4, 1 +/* 03E730 8003DB30 A10E0185 */ sb $t6, 0x185($t0) +/* 03E734 8003DB34 8FAF003C */ lw $t7, 0x3c($sp) +/* 03E738 8003DB38 00000000 */ nop +/* 03E73C 8003DB3C 8DE20004 */ lw $v0, 4($t7) +/* 03E740 8003DB40 00000000 */ nop +/* 03E744 8003DB44 10400002 */ beqz $v0, .L8003DB50 +/* 03E748 8003DB48 00000000 */ nop +/* 03E74C 8003DB4C AC4D007C */ sw $t5, 0x7c($v0) +.L8003DB50: +/* 03E750 8003DB50 0C0270F2 */ jal func_8009C3C8 +/* 03E754 8003DB54 AFA90030 */ sw $t1, 0x30($sp) +/* 03E758 8003DB58 8FA90030 */ lw $t1, 0x30($sp) +/* 03E75C 8003DB5C 28410002 */ slti $at, $v0, 2 +/* 03E760 8003DB60 14200005 */ bnez $at, .L8003DB78 +/* 03E764 8003DB64 2418FFFF */ li $t8, -1 +/* 03E768 8003DB68 0C003FEE */ jal func_8000FFB8 +/* 03E76C 8003DB6C 02002025 */ move $a0, $s0 +/* 03E770 8003DB70 10000008 */ b .L8003DB94 +/* 03E774 8003DB74 8FBF0024 */ lw $ra, 0x24($sp) +.L8003DB78: +/* 03E778 8003DB78 AD380000 */ sw $t8, ($t1) +/* 03E77C 8003DB7C 240A0001 */ li $t2, 1 +/* 03E780 8003DB80 AE0A0074 */ sw $t2, 0x74($s0) +/* 03E784 8003DB84 8FA50074 */ lw $a1, 0x74($sp) +/* 03E788 8003DB88 0C02BF0F */ jal func_800AFC3C +/* 03E78C 8003DB8C 02002025 */ move $a0, $s0 +/* 03E790 8003DB90 8FBF0024 */ lw $ra, 0x24($sp) +.L8003DB94: +/* 03E794 8003DB94 8FB00020 */ lw $s0, 0x20($sp) +/* 03E798 8003DB98 03E00008 */ jr $ra +/* 03E79C 8003DB9C 27BD0070 */ addiu $sp, $sp, 0x70 + diff --git a/asm/non_matchings/unknown_032760/func_8003DBA0.s b/asm/non_matchings/unknown_032760/func_8003DBA0.s new file mode 100644 index 00000000..b56ef3f2 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003DBA0.s @@ -0,0 +1,52 @@ +glabel func_8003DBA0 +/* 03E7A0 8003DBA0 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 03E7A4 8003DBA4 AFBF0014 */ sw $ra, 0x14($sp) +/* 03E7A8 8003DBA8 AFA5001C */ sw $a1, 0x1c($sp) +/* 03E7AC 8003DBAC 8C8F004C */ lw $t7, 0x4c($a0) +/* 03E7B0 8003DBB0 240E0002 */ li $t6, 2 +/* 03E7B4 8003DBB4 A5EE0014 */ sh $t6, 0x14($t7) +/* 03E7B8 8003DBB8 8C98004C */ lw $t8, 0x4c($a0) +/* 03E7BC 8003DBBC 2419001E */ li $t9, 30 +/* 03E7C0 8003DBC0 A3000011 */ sb $zero, 0x11($t8) +/* 03E7C4 8003DBC4 8C88004C */ lw $t0, 0x4c($a0) +/* 03E7C8 8003DBC8 24090003 */ li $t1, 3 +/* 03E7CC 8003DBCC A1190010 */ sb $t9, 0x10($t0) +/* 03E7D0 8003DBD0 240A0010 */ li $t2, 16 +/* 03E7D4 8003DBD4 AC890078 */ sw $t1, 0x78($a0) +/* 03E7D8 8003DBD8 AC8A007C */ sw $t2, 0x7c($a0) +/* 03E7DC 8003DBDC 0C0270B4 */ jal func_8009C2D0 +/* 03E7E0 8003DBE0 AFA40018 */ sw $a0, 0x18($sp) +/* 03E7E4 8003DBE4 8FA40018 */ lw $a0, 0x18($sp) +/* 03E7E8 8003DBE8 1440000F */ bnez $v0, .L8003DC28 +/* 03E7EC 8003DBEC 00000000 */ nop +/* 03E7F0 8003DBF0 0C003877 */ jal func_8000E1DC +/* 03E7F4 8003DBF4 AFA40018 */ sw $a0, 0x18($sp) +/* 03E7F8 8003DBF8 8FA40018 */ lw $a0, 0x18($sp) +/* 03E7FC 8003DBFC 10400009 */ beqz $v0, .L8003DC24 +/* 03E800 8003DC00 240B0003 */ li $t3, 3 +/* 03E804 8003DC04 0C027B1C */ jal func_8009EC70 +/* 03E808 8003DC08 AFA40018 */ sw $a0, 0x18($sp) +/* 03E80C 8003DC0C 8FA40018 */ lw $a0, 0x18($sp) +/* 03E810 8003DC10 10400004 */ beqz $v0, .L8003DC24 +/* 03E814 8003DC14 240B0003 */ li $t3, 3 +/* 03E818 8003DC18 10000003 */ b .L8003DC28 +/* 03E81C 8003DC1C AC800078 */ sw $zero, 0x78($a0) +/* 03E820 8003DC20 240B0003 */ li $t3, 3 +.L8003DC24: +/* 03E824 8003DC24 AC8B0078 */ sw $t3, 0x78($a0) +.L8003DC28: +/* 03E828 8003DC28 8C8C0078 */ lw $t4, 0x78($a0) +/* 03E82C 8003DC2C 24010003 */ li $at, 3 +/* 03E830 8003DC30 15810007 */ bne $t4, $at, .L8003DC50 +/* 03E834 8003DC34 8FBF0014 */ lw $ra, 0x14($sp) +/* 03E838 8003DC38 848D0006 */ lh $t5, 6($a0) +/* 03E83C 8003DC3C 00000000 */ nop +/* 03E840 8003DC40 35AE0600 */ ori $t6, $t5, 0x600 +/* 03E844 8003DC44 0C003FEE */ jal func_8000FFB8 +/* 03E848 8003DC48 A48E0006 */ sh $t6, 6($a0) +/* 03E84C 8003DC4C 8FBF0014 */ lw $ra, 0x14($sp) +.L8003DC50: +/* 03E850 8003DC50 27BD0018 */ addiu $sp, $sp, 0x18 +/* 03E854 8003DC54 03E00008 */ jr $ra +/* 03E858 8003DC58 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003DC5C.s b/asm/non_matchings/unknown_032760/func_8003DC5C.s new file mode 100644 index 00000000..25c933f8 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003DC5C.s @@ -0,0 +1,51 @@ +glabel func_8003DC5C +/* 03E85C 8003DC5C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 03E860 8003DC60 AFBF0014 */ sw $ra, 0x14($sp) +/* 03E864 8003DC64 AFA5001C */ sw $a1, 0x1c($sp) +/* 03E868 8003DC68 8C8F004C */ lw $t7, 0x4c($a0) +/* 03E86C 8003DC6C 240E0002 */ li $t6, 2 +/* 03E870 8003DC70 A5EE0014 */ sh $t6, 0x14($t7) +/* 03E874 8003DC74 8C98004C */ lw $t8, 0x4c($a0) +/* 03E878 8003DC78 2419001E */ li $t9, 30 +/* 03E87C 8003DC7C A3000011 */ sb $zero, 0x11($t8) +/* 03E880 8003DC80 8C88004C */ lw $t0, 0x4c($a0) +/* 03E884 8003DC84 24090003 */ li $t1, 3 +/* 03E888 8003DC88 A1190010 */ sb $t9, 0x10($t0) +/* 03E88C 8003DC8C AC890078 */ sw $t1, 0x78($a0) +/* 03E890 8003DC90 AC80007C */ sw $zero, 0x7c($a0) +/* 03E894 8003DC94 0C0270B4 */ jal func_8009C2D0 +/* 03E898 8003DC98 AFA40018 */ sw $a0, 0x18($sp) +/* 03E89C 8003DC9C 8FA40018 */ lw $a0, 0x18($sp) +/* 03E8A0 8003DCA0 1440000F */ bnez $v0, .L8003DCE0 +/* 03E8A4 8003DCA4 00000000 */ nop +/* 03E8A8 8003DCA8 0C003877 */ jal func_8000E1DC +/* 03E8AC 8003DCAC AFA40018 */ sw $a0, 0x18($sp) +/* 03E8B0 8003DCB0 8FA40018 */ lw $a0, 0x18($sp) +/* 03E8B4 8003DCB4 10400009 */ beqz $v0, .L8003DCDC +/* 03E8B8 8003DCB8 240A0003 */ li $t2, 3 +/* 03E8BC 8003DCBC 0C027B1C */ jal func_8009EC70 +/* 03E8C0 8003DCC0 AFA40018 */ sw $a0, 0x18($sp) +/* 03E8C4 8003DCC4 8FA40018 */ lw $a0, 0x18($sp) +/* 03E8C8 8003DCC8 14400004 */ bnez $v0, .L8003DCDC +/* 03E8CC 8003DCCC 240A0003 */ li $t2, 3 +/* 03E8D0 8003DCD0 10000003 */ b .L8003DCE0 +/* 03E8D4 8003DCD4 AC800078 */ sw $zero, 0x78($a0) +/* 03E8D8 8003DCD8 240A0003 */ li $t2, 3 +.L8003DCDC: +/* 03E8DC 8003DCDC AC8A0078 */ sw $t2, 0x78($a0) +.L8003DCE0: +/* 03E8E0 8003DCE0 8C8B0078 */ lw $t3, 0x78($a0) +/* 03E8E4 8003DCE4 24010003 */ li $at, 3 +/* 03E8E8 8003DCE8 15610007 */ bne $t3, $at, .L8003DD08 +/* 03E8EC 8003DCEC 8FBF0014 */ lw $ra, 0x14($sp) +/* 03E8F0 8003DCF0 848C0006 */ lh $t4, 6($a0) +/* 03E8F4 8003DCF4 00000000 */ nop +/* 03E8F8 8003DCF8 358D0600 */ ori $t5, $t4, 0x600 +/* 03E8FC 8003DCFC 0C003FEE */ jal func_8000FFB8 +/* 03E900 8003DD00 A48D0006 */ sh $t5, 6($a0) +/* 03E904 8003DD04 8FBF0014 */ lw $ra, 0x14($sp) +.L8003DD08: +/* 03E908 8003DD08 27BD0018 */ addiu $sp, $sp, 0x18 +/* 03E90C 8003DD0C 03E00008 */ jr $ra +/* 03E910 8003DD10 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003DD14.s b/asm/non_matchings/unknown_032760/func_8003DD14.s new file mode 100644 index 00000000..7c2876ca --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003DD14.s @@ -0,0 +1,95 @@ +glabel func_8003DD14 +/* 03E914 8003DD14 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 03E918 8003DD18 AFBF0014 */ sw $ra, 0x14($sp) +/* 03E91C 8003DD1C AFA50024 */ sw $a1, 0x24($sp) +/* 03E920 8003DD20 0C01B067 */ jal func_8006C19C +/* 03E924 8003DD24 AFA40020 */ sw $a0, 0x20($sp) +/* 03E928 8003DD28 8FA60020 */ lw $a2, 0x20($sp) +/* 03E92C 8003DD2C 8FA70024 */ lw $a3, 0x24($sp) +/* 03E930 8003DD30 10400005 */ beqz $v0, .L8003DD48 +/* 03E934 8003DD34 00000000 */ nop +/* 03E938 8003DD38 8CC50078 */ lw $a1, 0x78($a2) +/* 03E93C 8003DD3C 24010003 */ li $at, 3 +/* 03E940 8003DD40 14A10007 */ bne $a1, $at, .L8003DD60 +/* 03E944 8003DD44 00000000 */ nop +.L8003DD48: +/* 03E948 8003DD48 1440003D */ bnez $v0, .L8003DE40 +/* 03E94C 8003DD4C 00000000 */ nop +/* 03E950 8003DD50 8CC50078 */ lw $a1, 0x78($a2) +/* 03E954 8003DD54 00000000 */ nop +/* 03E958 8003DD58 14A00039 */ bnez $a1, .L8003DE40 +/* 03E95C 8003DD5C 00000000 */ nop +.L8003DD60: +/* 03E960 8003DD60 8CC2004C */ lw $v0, 0x4c($a2) +/* 03E964 8003DD64 00000000 */ nop +/* 03E968 8003DD68 904E0013 */ lbu $t6, 0x13($v0) +/* 03E96C 8003DD6C 00000000 */ nop +/* 03E970 8003DD70 29C10050 */ slti $at, $t6, 0x50 +/* 03E974 8003DD74 1020002E */ beqz $at, .L8003DE30 +/* 03E978 8003DD78 00000000 */ nop +/* 03E97C 8003DD7C 8C430000 */ lw $v1, ($v0) +/* 03E980 8003DD80 00000000 */ nop +/* 03E984 8003DD84 1060002A */ beqz $v1, .L8003DE30 +/* 03E988 8003DD88 00000000 */ nop +/* 03E98C 8003DD8C 8C6F0040 */ lw $t7, 0x40($v1) +/* 03E990 8003DD90 24010001 */ li $at, 1 +/* 03E994 8003DD94 81F80054 */ lb $t8, 0x54($t7) +/* 03E998 8003DD98 00000000 */ nop +/* 03E99C 8003DD9C 17010024 */ bne $t8, $at, .L8003DE30 +/* 03E9A0 8003DDA0 00000000 */ nop +/* 03E9A4 8003DDA4 8C620064 */ lw $v0, 0x64($v1) +/* 03E9A8 8003DDA8 2401FFFF */ li $at, -1 +/* 03E9AC 8003DDAC 84440000 */ lh $a0, ($v0) +/* 03E9B0 8003DDB0 00000000 */ nop +/* 03E9B4 8003DDB4 1081001E */ beq $a0, $at, .L8003DE30 +/* 03E9B8 8003DDB8 00000000 */ nop +/* 03E9BC 8003DDBC 805901D8 */ lb $t9, 0x1d8($v0) +/* 03E9C0 8003DDC0 24080001 */ li $t0, 1 +/* 03E9C4 8003DDC4 1720001A */ bnez $t9, .L8003DE30 +/* 03E9C8 8003DDC8 00881804 */ sllv $v1, $t0, $a0 +/* 03E9CC 8003DDCC 00A34824 */ and $t1, $a1, $v1 +/* 03E9D0 8003DDD0 15200017 */ bnez $t1, .L8003DE30 +/* 03E9D4 8003DDD4 00A35025 */ or $t2, $a1, $v1 +/* 03E9D8 8003DDD8 240B0010 */ li $t3, 16 +/* 03E9DC 8003DDDC ACCA0078 */ sw $t2, 0x78($a2) +/* 03E9E0 8003DDE0 ACCB007C */ sw $t3, 0x7c($a2) +/* 03E9E4 8003DDE4 844D0000 */ lh $t5, ($v0) +/* 03E9E8 8003DDE8 84CC0006 */ lh $t4, 6($a2) +/* 03E9EC 8003DDEC 240E0200 */ li $t6, 512 +/* 03E9F0 8003DDF0 01AE7804 */ sllv $t7, $t6, $t5 +/* 03E9F4 8003DDF4 018FC025 */ or $t8, $t4, $t7 +/* 03E9F8 8003DDF8 A4D80006 */ sh $t8, 6($a2) +/* 03E9FC 8003DDFC 80440202 */ lb $a0, 0x202($v0) +/* 03EA00 8003DE00 AFA60020 */ sw $a2, 0x20($sp) +/* 03EA04 8003DE04 2484002B */ addiu $a0, $a0, 0x2b +/* 03EA08 8003DE08 309900FF */ andi $t9, $a0, 0xff +/* 03EA0C 8003DE0C 03202025 */ move $a0, $t9 +/* 03EA10 8003DE10 0C0006F0 */ jal func_80001BC0 +/* 03EA14 8003DE14 AFA20018 */ sw $v0, 0x18($sp) +/* 03EA18 8003DE18 8FA20018 */ lw $v0, 0x18($sp) +/* 03EA1C 8003DE1C 8FA60020 */ lw $a2, 0x20($sp) +/* 03EA20 8003DE20 80480202 */ lb $t0, 0x202($v0) +/* 03EA24 8003DE24 8FA70024 */ lw $a3, 0x24($sp) +/* 03EA28 8003DE28 25090001 */ addiu $t1, $t0, 1 +/* 03EA2C 8003DE2C A0490202 */ sb $t1, 0x202($v0) +.L8003DE30: +/* 03EA30 8003DE30 84CA0018 */ lh $t2, 0x18($a2) +/* 03EA34 8003DE34 000758C0 */ sll $t3, $a3, 3 +/* 03EA38 8003DE38 014B7021 */ addu $t6, $t2, $t3 +/* 03EA3C 8003DE3C A4CE0018 */ sh $t6, 0x18($a2) +.L8003DE40: +/* 03EA40 8003DE40 8CC2007C */ lw $v0, 0x7c($a2) +/* 03EA44 8003DE44 240C0001 */ li $t4, 1 +/* 03EA48 8003DE48 18400006 */ blez $v0, .L8003DE64 +/* 03EA4C 8003DE4C 00476823 */ subu $t5, $v0, $a3 +/* 03EA50 8003DE50 ACCD007C */ sw $t5, 0x7c($a2) +/* 03EA54 8003DE54 ACCC0074 */ sw $t4, 0x74($a2) +/* 03EA58 8003DE58 00C02025 */ move $a0, $a2 +/* 03EA5C 8003DE5C 0C02BF0F */ jal func_800AFC3C +/* 03EA60 8003DE60 00E02825 */ move $a1, $a3 +.L8003DE64: +/* 03EA64 8003DE64 8FBF0014 */ lw $ra, 0x14($sp) +/* 03EA68 8003DE68 27BD0020 */ addiu $sp, $sp, 0x20 +/* 03EA6C 8003DE6C 03E00008 */ jr $ra +/* 03EA70 8003DE70 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003DE74.s b/asm/non_matchings/unknown_032760/func_8003DE74.s new file mode 100644 index 00000000..2cc11bae --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003DE74.s @@ -0,0 +1,41 @@ +glabel func_8003DE74 +/* 03EA74 8003DE74 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 03EA78 8003DE78 AFBF0014 */ sw $ra, 0x14($sp) +/* 03EA7C 8003DE7C 8C8F004C */ lw $t7, 0x4c($a0) +/* 03EA80 8003DE80 240E0002 */ li $t6, 2 +/* 03EA84 8003DE84 A5EE0014 */ sh $t6, 0x14($t7) +/* 03EA88 8003DE88 8C98004C */ lw $t8, 0x4c($a0) +/* 03EA8C 8003DE8C 2419001E */ li $t9, 30 +/* 03EA90 8003DE90 A3000011 */ sb $zero, 0x11($t8) +/* 03EA94 8003DE94 8C88004C */ lw $t0, 0x4c($a0) +/* 03EA98 8003DE98 00000000 */ nop +/* 03EA9C 8003DE9C A1190010 */ sb $t9, 0x10($t0) +/* 03EAA0 8003DEA0 90A90008 */ lbu $t1, 8($a1) +/* 03EAA4 8003DEA4 00000000 */ nop +/* 03EAA8 8003DEA8 312A000F */ andi $t2, $t1, 0xf +/* 03EAAC 8003DEAC A0AA0008 */ sb $t2, 8($a1) +/* 03EAB0 8003DEB0 314B00FF */ andi $t3, $t2, 0xff +/* 03EAB4 8003DEB4 AC8B0078 */ sw $t3, 0x78($a0) +/* 03EAB8 8003DEB8 0C01BAA4 */ jal func_8006EA90 +/* 03EABC 8003DEBC AFA40020 */ sw $a0, 0x20($sp) +/* 03EAC0 8003DEC0 0C0270B4 */ jal func_8009C2D0 +/* 03EAC4 8003DEC4 AFA2001C */ sw $v0, 0x1c($sp) +/* 03EAC8 8003DEC8 8FA40020 */ lw $a0, 0x20($sp) +/* 03EACC 8003DECC 14400008 */ bnez $v0, .L8003DEF0 +/* 03EAD0 8003DED0 240F0001 */ li $t7, 1 +/* 03EAD4 8003DED4 8FAC001C */ lw $t4, 0x1c($sp) +/* 03EAD8 8003DED8 8C8E0078 */ lw $t6, 0x78($a0) +/* 03EADC 8003DEDC 958D0008 */ lhu $t5, 8($t4) +/* 03EAE0 8003DEE0 01CFC004 */ sllv $t8, $t7, $t6 +/* 03EAE4 8003DEE4 01B8C824 */ and $t9, $t5, $t8 +/* 03EAE8 8003DEE8 13200004 */ beqz $t9, .L8003DEFC +/* 03EAEC 8003DEEC 8FBF0014 */ lw $ra, 0x14($sp) +.L8003DEF0: +/* 03EAF0 8003DEF0 0C003FEE */ jal func_8000FFB8 +/* 03EAF4 8003DEF4 00000000 */ nop +/* 03EAF8 8003DEF8 8FBF0014 */ lw $ra, 0x14($sp) +.L8003DEFC: +/* 03EAFC 8003DEFC 27BD0020 */ addiu $sp, $sp, 0x20 +/* 03EB00 8003DF00 03E00008 */ jr $ra +/* 03EB04 8003DF04 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003DF08.s b/asm/non_matchings/unknown_032760/func_8003DF08.s new file mode 100644 index 00000000..3592de61 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003DF08.s @@ -0,0 +1,52 @@ +glabel func_8003DF08 +/* 03EB08 8003DF08 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 03EB0C 8003DF0C AFBF0014 */ sw $ra, 0x14($sp) +/* 03EB10 8003DF10 AFA5001C */ sw $a1, 0x1c($sp) +/* 03EB14 8003DF14 8C83004C */ lw $v1, 0x4c($a0) +/* 03EB18 8003DF18 00803025 */ move $a2, $a0 +/* 03EB1C 8003DF1C 906E0013 */ lbu $t6, 0x13($v1) +/* 03EB20 8003DF20 00000000 */ nop +/* 03EB24 8003DF24 29C10032 */ slti $at, $t6, 0x32 +/* 03EB28 8003DF28 10200020 */ beqz $at, .L8003DFAC +/* 03EB2C 8003DF2C 8FAE001C */ lw $t6, 0x1c($sp) +/* 03EB30 8003DF30 8C620000 */ lw $v0, ($v1) +/* 03EB34 8003DF34 00000000 */ nop +/* 03EB38 8003DF38 1040001C */ beqz $v0, .L8003DFAC +/* 03EB3C 8003DF3C 8FAE001C */ lw $t6, 0x1c($sp) +/* 03EB40 8003DF40 8C4F0040 */ lw $t7, 0x40($v0) +/* 03EB44 8003DF44 24010001 */ li $at, 1 +/* 03EB48 8003DF48 81F80054 */ lb $t8, 0x54($t7) +/* 03EB4C 8003DF4C 00000000 */ nop +/* 03EB50 8003DF50 17010016 */ bne $t8, $at, .L8003DFAC +/* 03EB54 8003DF54 8FAE001C */ lw $t6, 0x1c($sp) +/* 03EB58 8003DF58 8C430064 */ lw $v1, 0x64($v0) +/* 03EB5C 8003DF5C 2401FFFF */ li $at, -1 +/* 03EB60 8003DF60 84790000 */ lh $t9, ($v1) +/* 03EB64 8003DF64 24040036 */ li $a0, 54 +/* 03EB68 8003DF68 13210010 */ beq $t9, $at, .L8003DFAC +/* 03EB6C 8003DF6C 8FAE001C */ lw $t6, 0x1c($sp) +/* 03EB70 8003DF70 0C0006F0 */ jal func_80001BC0 +/* 03EB74 8003DF74 AFA60018 */ sw $a2, 0x18($sp) +/* 03EB78 8003DF78 0C01BAA4 */ jal func_8006EA90 +/* 03EB7C 8003DF7C 00000000 */ nop +/* 03EB80 8003DF80 8FA40018 */ lw $a0, 0x18($sp) +/* 03EB84 8003DF84 94480008 */ lhu $t0, 8($v0) +/* 03EB88 8003DF88 8C890078 */ lw $t1, 0x78($a0) +/* 03EB8C 8003DF8C 240A0001 */ li $t2, 1 +/* 03EB90 8003DF90 012A5804 */ sllv $t3, $t2, $t1 +/* 03EB94 8003DF94 010B6025 */ or $t4, $t0, $t3 +/* 03EB98 8003DF98 0C003FEE */ jal func_8000FFB8 +/* 03EB9C 8003DF9C A44C0008 */ sh $t4, 8($v0) +/* 03EBA0 8003DFA0 8FA60018 */ lw $a2, 0x18($sp) +/* 03EBA4 8003DFA4 00000000 */ nop +/* 03EBA8 8003DFA8 8FAE001C */ lw $t6, 0x1c($sp) +.L8003DFAC: +/* 03EBAC 8003DFAC 84CD0000 */ lh $t5, ($a2) +/* 03EBB0 8003DFB0 000E7A00 */ sll $t7, $t6, 8 +/* 03EBB4 8003DFB4 01AFC021 */ addu $t8, $t5, $t7 +/* 03EBB8 8003DFB8 A4D80000 */ sh $t8, ($a2) +/* 03EBBC 8003DFBC 8FBF0014 */ lw $ra, 0x14($sp) +/* 03EBC0 8003DFC0 27BD0018 */ addiu $sp, $sp, 0x18 +/* 03EBC4 8003DFC4 03E00008 */ jr $ra +/* 03EBC8 8003DFC8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003DFCC.s b/asm/non_matchings/unknown_032760/func_8003DFCC.s new file mode 100644 index 00000000..ec958611 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003DFCC.s @@ -0,0 +1,104 @@ +glabel func_8003DFCC +/* 03EBCC 8003DFCC 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 03EBD0 8003DFD0 AFBF0014 */ sw $ra, 0x14($sp) +/* 03EBD4 8003DFD4 8C8F004C */ lw $t7, 0x4c($a0) +/* 03EBD8 8003DFD8 240E0002 */ li $t6, 2 +/* 03EBDC 8003DFDC A5EE0014 */ sh $t6, 0x14($t7) +/* 03EBE0 8003DFE0 8C99004C */ lw $t9, 0x4c($a0) +/* 03EBE4 8003DFE4 24180004 */ li $t8, 4 +/* 03EBE8 8003DFE8 A3380011 */ sb $t8, 0x11($t9) +/* 03EBEC 8003DFEC 8C89004C */ lw $t1, 0x4c($a0) +/* 03EBF0 8003DFF0 24080014 */ li $t0, 20 +/* 03EBF4 8003DFF4 A1280010 */ sb $t0, 0x10($t1) +/* 03EBF8 8003DFF8 AFA5001C */ sw $a1, 0x1c($sp) +/* 03EBFC 8003DFFC 0C0270C3 */ jal func_8009C30C +/* 03EC00 8003E000 AFA40018 */ sw $a0, 0x18($sp) +/* 03EC04 8003E004 8FA40018 */ lw $a0, 0x18($sp) +/* 03EC08 8003E008 8FA5001C */ lw $a1, 0x1c($sp) +/* 03EC0C 8003E00C 00025380 */ sll $t2, $v0, 0xe +/* 03EC10 8003E010 05410003 */ bgez $t2, .L8003E020 +/* 03EC14 8003E014 304B8000 */ andi $t3, $v0, 0x8000 +/* 03EC18 8003E018 10000013 */ b .L8003E068 +/* 03EC1C 8003E01C A0A00009 */ sb $zero, 9($a1) +.L8003E020: +/* 03EC20 8003E020 11600004 */ beqz $t3, .L8003E034 +/* 03EC24 8003E024 00026BC0 */ sll $t5, $v0, 0xf +/* 03EC28 8003E028 240C0001 */ li $t4, 1 +/* 03EC2C 8003E02C 1000000E */ b .L8003E068 +/* 03EC30 8003E030 A0AC0009 */ sb $t4, 9($a1) +.L8003E034: +/* 03EC34 8003E034 05A10004 */ bgez $t5, .L8003E048 +/* 03EC38 8003E038 00027B40 */ sll $t7, $v0, 0xd +/* 03EC3C 8003E03C 240E0002 */ li $t6, 2 +/* 03EC40 8003E040 10000009 */ b .L8003E068 +/* 03EC44 8003E044 A0AE0009 */ sb $t6, 9($a1) +.L8003E048: +/* 03EC48 8003E048 05E10004 */ bgez $t7, .L8003E05C +/* 03EC4C 8003E04C 0002CB00 */ sll $t9, $v0, 0xc +/* 03EC50 8003E050 24180003 */ li $t8, 3 +/* 03EC54 8003E054 10000004 */ b .L8003E068 +/* 03EC58 8003E058 A0B80009 */ sb $t8, 9($a1) +.L8003E05C: +/* 03EC5C 8003E05C 07210002 */ bgez $t9, .L8003E068 +/* 03EC60 8003E060 24080004 */ li $t0, 4 +/* 03EC64 8003E064 A0A80009 */ sb $t0, 9($a1) +.L8003E068: +/* 03EC68 8003E068 90A90008 */ lbu $t1, 8($a1) +/* 03EC6C 8003E06C 00000000 */ nop +/* 03EC70 8003E070 29210006 */ slti $at, $t1, 6 +/* 03EC74 8003E074 14200002 */ bnez $at, .L8003E080 +/* 03EC78 8003E078 00000000 */ nop +/* 03EC7C 8003E07C A0A00008 */ sb $zero, 8($a1) +.L8003E080: +/* 03EC80 8003E080 8C8B0040 */ lw $t3, 0x40($a0) +/* 03EC84 8003E084 808A003A */ lb $t2, 0x3a($a0) +/* 03EC88 8003E088 816C0055 */ lb $t4, 0x55($t3) +/* 03EC8C 8003E08C 00000000 */ nop +/* 03EC90 8003E090 014C082A */ slt $at, $t2, $t4 +/* 03EC94 8003E094 14200002 */ bnez $at, .L8003E0A0 +/* 03EC98 8003E098 00000000 */ nop +/* 03EC9C 8003E09C A080003A */ sb $zero, 0x3a($a0) +.L8003E0A0: +/* 03ECA0 8003E0A0 90AD0009 */ lbu $t5, 9($a1) +/* 03ECA4 8003E0A4 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 03ECA8 8003E0A8 A08D003A */ sb $t5, 0x3a($a0) +/* 03ECAC 8003E0AC 808E003A */ lb $t6, 0x3a($a0) +/* 03ECB0 8003E0B0 44811000 */ mtc1 $at, $f2 +/* 03ECB4 8003E0B4 AC8E0078 */ sw $t6, 0x78($a0) +/* 03ECB8 8003E0B8 90B8000A */ lbu $t8, 0xa($a1) +/* 03ECBC 8003E0BC 3C014280 */ li $at, 0x42800000 # 64.000000 +/* 03ECC0 8003E0C0 44982000 */ mtc1 $t8, $f4 +/* 03ECC4 8003E0C4 44813000 */ mtc1 $at, $f6 +/* 03ECC8 8003E0C8 46802020 */ cvt.s.w $f0, $f4 +/* 03ECCC 8003E0CC 4602003C */ c.lt.s $f0, $f2 +/* 03ECD0 8003E0D0 00000000 */ nop +/* 03ECD4 8003E0D4 45000003 */ bc1f .L8003E0E4 +/* 03ECD8 8003E0D8 00000000 */ nop +/* 03ECDC 8003E0DC 46001006 */ mov.s $f0, $f2 +/* 03ECE0 8003E0E0 00000000 */ nop +.L8003E0E4: +/* 03ECE4 8003E0E4 46060003 */ div.s $f0, $f0, $f6 +/* 03ECE8 8003E0E8 8C990040 */ lw $t9, 0x40($a0) +/* 03ECEC 8003E0EC 8C820064 */ lw $v0, 0x64($a0) +/* 03ECF0 8003E0F0 C728000C */ lwc1 $f8, 0xc($t9) +/* 03ECF4 8003E0F4 00000000 */ nop +/* 03ECF8 8003E0F8 46004282 */ mul.s $f10, $f8, $f0 +/* 03ECFC 8003E0FC E48A0008 */ swc1 $f10, 8($a0) +/* 03ED00 8003E100 C4900008 */ lwc1 $f16, 8($a0) +/* 03ED04 8003E104 A4400004 */ sh $zero, 4($v0) +/* 03ED08 8003E108 E4500000 */ swc1 $f16, ($v0) +/* 03ED0C 8003E10C AC80007C */ sw $zero, 0x7c($a0) +/* 03ED10 8003E110 0C0270C3 */ jal func_8009C30C +/* 03ED14 8003E114 AFA40018 */ sw $a0, 0x18($sp) +/* 03ED18 8003E118 8FA40018 */ lw $a0, 0x18($sp) +/* 03ED1C 8003E11C 30480800 */ andi $t0, $v0, 0x800 +/* 03ED20 8003E120 11000004 */ beqz $t0, .L8003E134 +/* 03ED24 8003E124 8FBF0014 */ lw $ra, 0x14($sp) +/* 03ED28 8003E128 0C003FEE */ jal func_8000FFB8 +/* 03ED2C 8003E12C 00000000 */ nop +/* 03ED30 8003E130 8FBF0014 */ lw $ra, 0x14($sp) +.L8003E134: +/* 03ED34 8003E134 27BD0018 */ addiu $sp, $sp, 0x18 +/* 03ED38 8003E138 03E00008 */ jr $ra +/* 03ED3C 8003E13C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003E140.s b/asm/non_matchings/unknown_032760/func_8003E140.s new file mode 100644 index 00000000..c071cd5c --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003E140.s @@ -0,0 +1,310 @@ +glabel func_8003E140 +/* 03ED40 8003E140 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 03ED44 8003E144 AFBF0024 */ sw $ra, 0x24($sp) +/* 03ED48 8003E148 AFB00020 */ sw $s0, 0x20($sp) +/* 03ED4C 8003E14C AFA50044 */ sw $a1, 0x44($sp) +/* 03ED50 8003E150 8C860064 */ lw $a2, 0x64($a0) +/* 03ED54 8003E154 3C0142B4 */ li $at, 0x42B40000 # 90.000000 +/* 03ED58 8003E158 84CE0004 */ lh $t6, 4($a2) +/* 03ED5C 8003E15C 44814000 */ mtc1 $at, $f8 +/* 03ED60 8003E160 448E2000 */ mtc1 $t6, $f4 +/* 03ED64 8003E164 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 03ED68 8003E168 468021A0 */ cvt.s.w $f6, $f4 +/* 03ED6C 8003E16C 44819800 */ mtc1 $at, $f19 +/* 03ED70 8003E170 44809000 */ mtc1 $zero, $f18 +/* 03ED74 8003E174 46083283 */ div.s $f10, $f6, $f8 +/* 03ED78 8003E178 C4C60000 */ lwc1 $f6, ($a2) +/* 03ED7C 8003E17C 3C01800E */ lui $at, %hi(D_800E61A8) # $at, 0x800e +/* 03ED80 8003E180 46003221 */ cvt.d.s $f8, $f6 +/* 03ED84 8003E184 00808025 */ move $s0, $a0 +/* 03ED88 8003E188 240A0001 */ li $t2, 1 +/* 03ED8C 8003E18C 46005421 */ cvt.d.s $f16, $f10 +/* 03ED90 8003E190 46309101 */ sub.d $f4, $f18, $f16 +/* 03ED94 8003E194 46244282 */ mul.d $f10, $f8, $f4 +/* 03ED98 8003E198 462054A0 */ cvt.s.d $f18, $f10 +/* 03ED9C 8003E19C E4920008 */ swc1 $f18, 8($a0) +/* 03EDA0 8003E1A0 C4900008 */ lwc1 $f16, 8($a0) +/* 03EDA4 8003E1A4 C42661AC */ lwc1 $f6, %lo(D_800E61AC)($at) +/* 03EDA8 8003E1A8 C42761A8 */ lwc1 $f7, %lo(D_800E61A8)($at) +/* 03EDAC 8003E1AC 46008021 */ cvt.d.s $f0, $f16 +/* 03EDB0 8003E1B0 4626003C */ c.lt.d $f0, $f6 +/* 03EDB4 8003E1B4 3C01800E */ lui $at, %hi(D_800E61B0) # $at, 0x800e +/* 03EDB8 8003E1B8 45000007 */ bc1f .L8003E1D8 +/* 03EDBC 8003E1BC 00000000 */ nop +/* 03EDC0 8003E1C0 C42861B0 */ lwc1 $f8, %lo(D_800E61B0)($at) +/* 03EDC4 8003E1C4 00000000 */ nop +/* 03EDC8 8003E1C8 E4880008 */ swc1 $f8, 8($a0) +/* 03EDCC 8003E1CC C4840008 */ lwc1 $f4, 8($a0) +/* 03EDD0 8003E1D0 00000000 */ nop +/* 03EDD4 8003E1D4 46002021 */ cvt.d.s $f0, $f4 +.L8003E1D8: +/* 03EDD8 8003E1D8 3C01800E */ lui $at, %hi(D_800E61BC) # $at, 0x800e +/* 03EDDC 8003E1DC C42B61B8 */ lwc1 $f11, %lo(D_800E61B8)($at) +/* 03EDE0 8003E1E0 C42A61BC */ lwc1 $f10, %lo(D_800E61BC)($at) +/* 03EDE4 8003E1E4 02002025 */ move $a0, $s0 +/* 03EDE8 8003E1E8 462A003C */ c.lt.d $f0, $f10 +/* 03EDEC 8003E1EC 00000000 */ nop +/* 03EDF0 8003E1F0 45000006 */ bc1f .L8003E20C +/* 03EDF4 8003E1F4 00000000 */ nop +/* 03EDF8 8003E1F8 860F0006 */ lh $t7, 6($s0) +/* 03EDFC 8003E1FC 00000000 */ nop +/* 03EE00 8003E200 35F84000 */ ori $t8, $t7, 0x4000 +/* 03EE04 8003E204 10000005 */ b .L8003E21C +/* 03EE08 8003E208 A6180006 */ sh $t8, 6($s0) +.L8003E20C: +/* 03EE0C 8003E20C 86190006 */ lh $t9, 6($s0) +/* 03EE10 8003E210 00000000 */ nop +/* 03EE14 8003E214 3328BFFF */ andi $t0, $t9, 0xbfff +/* 03EE18 8003E218 A6080006 */ sh $t0, 6($s0) +.L8003E21C: +/* 03EE1C 8003E21C 8E09007C */ lw $t1, 0x7c($s0) +/* 03EE20 8003E220 00000000 */ nop +/* 03EE24 8003E224 1920000C */ blez $t1, .L8003E258 +/* 03EE28 8003E228 00000000 */ nop +/* 03EE2C 8003E22C AE0A0074 */ sw $t2, 0x74($s0) +/* 03EE30 8003E230 8FA50044 */ lw $a1, 0x44($sp) +/* 03EE34 8003E234 0C02BF0F */ jal func_800AFC3C +/* 03EE38 8003E238 AFA60034 */ sw $a2, 0x34($sp) +/* 03EE3C 8003E23C 8E0B007C */ lw $t3, 0x7c($s0) +/* 03EE40 8003E240 8FAC0044 */ lw $t4, 0x44($sp) +/* 03EE44 8003E244 00000000 */ nop +/* 03EE48 8003E248 016C6823 */ subu $t5, $t3, $t4 +/* 03EE4C 8003E24C AE0D007C */ sw $t5, 0x7c($s0) +/* 03EE50 8003E250 8FA60034 */ lw $a2, 0x34($sp) +/* 03EE54 8003E254 00000000 */ nop +.L8003E258: +/* 03EE58 8003E258 84C20004 */ lh $v0, 4($a2) +/* 03EE5C 8003E25C 2401005A */ li $at, 90 +/* 03EE60 8003E260 10400015 */ beqz $v0, .L8003E2B8 +/* 03EE64 8003E264 00000000 */ nop +/* 03EE68 8003E268 14410009 */ bne $v0, $at, .L8003E290 +/* 03EE6C 8003E26C 8FB80044 */ lw $t8, 0x44($sp) +/* 03EE70 8003E270 8E0E004C */ lw $t6, 0x4c($s0) +/* 03EE74 8003E274 00000000 */ nop +/* 03EE78 8003E278 91CF0013 */ lbu $t7, 0x13($t6) +/* 03EE7C 8003E27C 00000000 */ nop +/* 03EE80 8003E280 29E1002D */ slti $at, $t7, 0x2d +/* 03EE84 8003E284 14200008 */ bnez $at, .L8003E2A8 +/* 03EE88 8003E288 00000000 */ nop +/* 03EE8C 8003E28C 8FB80044 */ lw $t8, 0x44($sp) +.L8003E290: +/* 03EE90 8003E290 00000000 */ nop +/* 03EE94 8003E294 0058C823 */ subu $t9, $v0, $t8 +/* 03EE98 8003E298 03384023 */ subu $t0, $t9, $t8 +/* 03EE9C 8003E29C A4C80004 */ sh $t0, 4($a2) +/* 03EEA0 8003E2A0 84C20004 */ lh $v0, 4($a2) +/* 03EEA4 8003E2A4 00000000 */ nop +.L8003E2A8: +/* 03EEA8 8003E2A8 044100BE */ bgez $v0, .L8003E5A4 +/* 03EEAC 8003E2AC 8FBF0024 */ lw $ra, 0x24($sp) +/* 03EEB0 8003E2B0 100000BB */ b .L8003E5A0 +/* 03EEB4 8003E2B4 A4C00004 */ sh $zero, 4($a2) +.L8003E2B8: +/* 03EEB8 8003E2B8 8E03004C */ lw $v1, 0x4c($s0) +/* 03EEBC 8003E2BC 00000000 */ nop +/* 03EEC0 8003E2C0 90690013 */ lbu $t1, 0x13($v1) +/* 03EEC4 8003E2C4 00000000 */ nop +/* 03EEC8 8003E2C8 2921002D */ slti $at, $t1, 0x2d +/* 03EECC 8003E2CC 102000B5 */ beqz $at, .L8003E5A4 +/* 03EED0 8003E2D0 8FBF0024 */ lw $ra, 0x24($sp) +/* 03EED4 8003E2D4 8C620000 */ lw $v0, ($v1) +/* 03EED8 8003E2D8 00000000 */ nop +/* 03EEDC 8003E2DC 104000B1 */ beqz $v0, .L8003E5A4 +/* 03EEE0 8003E2E0 8FBF0024 */ lw $ra, 0x24($sp) +/* 03EEE4 8003E2E4 8C4A0040 */ lw $t2, 0x40($v0) +/* 03EEE8 8003E2E8 24040001 */ li $a0, 1 +/* 03EEEC 8003E2EC 814B0054 */ lb $t3, 0x54($t2) +/* 03EEF0 8003E2F0 00000000 */ nop +/* 03EEF4 8003E2F4 148B00AB */ bne $a0, $t3, .L8003E5A4 +/* 03EEF8 8003E2F8 8FBF0024 */ lw $ra, 0x24($sp) +/* 03EEFC 8003E2FC 8C430064 */ lw $v1, 0x64($v0) +/* 03EF00 8003E300 00000000 */ nop +/* 03EF04 8003E304 806C01D6 */ lb $t4, 0x1d6($v1) +/* 03EF08 8003E308 00000000 */ nop +/* 03EF0C 8003E30C 29810005 */ slti $at, $t4, 5 +/* 03EF10 8003E310 14200005 */ bnez $at, .L8003E328 +/* 03EF14 8003E314 00000000 */ nop +/* 03EF18 8003E318 846D0000 */ lh $t5, ($v1) +/* 03EF1C 8003E31C 2401FFFF */ li $at, -1 +/* 03EF20 8003E320 11A100A0 */ beq $t5, $at, .L8003E5A4 +/* 03EF24 8003E324 8FBF0024 */ lw $ra, 0x24($sp) +.L8003E328: +/* 03EF28 8003E328 8E0E0078 */ lw $t6, 0x78($s0) +/* 03EF2C 8003E32C 80620172 */ lb $v0, 0x172($v1) +/* 03EF30 8003E330 A06E0172 */ sb $t6, 0x172($v1) +/* 03EF34 8003E334 806F0172 */ lb $t7, 0x172($v1) +/* 03EF38 8003E338 00000000 */ nop +/* 03EF3C 8003E33C 144F000A */ bne $v0, $t7, .L8003E368 +/* 03EF40 8003E340 00000000 */ nop +/* 03EF44 8003E344 80790173 */ lb $t9, 0x173($v1) +/* 03EF48 8003E348 00000000 */ nop +/* 03EF4C 8003E34C 13200006 */ beqz $t9, .L8003E368 +/* 03EF50 8003E350 00000000 */ nop +/* 03EF54 8003E354 80780174 */ lb $t8, 0x174($v1) +/* 03EF58 8003E358 00000000 */ nop +/* 03EF5C 8003E35C 27080001 */ addiu $t0, $t8, 1 +/* 03EF60 8003E360 10000002 */ b .L8003E36C +/* 03EF64 8003E364 A0680174 */ sb $t0, 0x174($v1) +.L8003E368: +/* 03EF68 8003E368 A0600174 */ sb $zero, 0x174($v1) +.L8003E36C: +/* 03EF6C 8003E36C AFA30038 */ sw $v1, 0x38($sp) +/* 03EF70 8003E370 0C01AF66 */ jal func_8006BD98 +/* 03EF74 8003E374 AFA60034 */ sw $a2, 0x34($sp) +/* 03EF78 8003E378 8FA30038 */ lw $v1, 0x38($sp) +/* 03EF7C 8003E37C 30490040 */ andi $t1, $v0, 0x40 +/* 03EF80 8003E380 1120000C */ beqz $t1, .L8003E3B4 +/* 03EF84 8003E384 24040001 */ li $a0, 1 +/* 03EF88 8003E388 806A0174 */ lb $t2, 0x174($v1) +/* 03EF8C 8003E38C 00000000 */ nop +/* 03EF90 8003E390 29410002 */ slti $at, $t2, 2 +/* 03EF94 8003E394 14200002 */ bnez $at, .L8003E3A0 +/* 03EF98 8003E398 00000000 */ nop +/* 03EF9C 8003E39C A0640174 */ sb $a0, 0x174($v1) +.L8003E3A0: +/* 03EFA0 8003E3A0 806B0172 */ lb $t3, 0x172($v1) +/* 03EFA4 8003E3A4 24010002 */ li $at, 2 +/* 03EFA8 8003E3A8 15610003 */ bne $t3, $at, .L8003E3B8 +/* 03EFAC 8003E3AC 240C0003 */ li $t4, 3 +/* 03EFB0 8003E3B0 A0640174 */ sb $a0, 0x174($v1) +.L8003E3B4: +/* 03EFB4 8003E3B4 240C0003 */ li $t4, 3 +.L8003E3B8: +/* 03EFB8 8003E3B8 A3AC002D */ sb $t4, 0x2d($sp) +/* 03EFBC 8003E3BC 0C0270C3 */ jal func_8009C30C +/* 03EFC0 8003E3C0 AFA30038 */ sw $v1, 0x38($sp) +/* 03EFC4 8003E3C4 8FA30038 */ lw $v1, 0x38($sp) +/* 03EFC8 8003E3C8 00026AC0 */ sll $t5, $v0, 0xb +/* 03EFCC 8003E3CC 05A10002 */ bgez $t5, .L8003E3D8 +/* 03EFD0 8003E3D0 24040002 */ li $a0, 2 +/* 03EFD4 8003E3D4 A0640174 */ sb $a0, 0x174($v1) +.L8003E3D8: +/* 03EFD8 8003E3D8 806E0174 */ lb $t6, 0x174($v1) +/* 03EFDC 8003E3DC 00000000 */ nop +/* 03EFE0 8003E3E0 29C10003 */ slti $at, $t6, 3 +/* 03EFE4 8003E3E4 14200003 */ bnez $at, .L8003E3F4 +/* 03EFE8 8003E3E8 00000000 */ nop +/* 03EFEC 8003E3EC A0640174 */ sb $a0, 0x174($v1) +/* 03EFF0 8003E3F0 A3A4002D */ sb $a0, 0x2d($sp) +.L8003E3F4: +/* 03EFF4 8003E3F4 2404000C */ li $a0, 12 +/* 03EFF8 8003E3F8 0C0078A7 */ jal func_8001E29C +/* 03EFFC 8003E3FC AFA30038 */ sw $v1, 0x38($sp) +/* 03F000 8003E400 8FA30038 */ lw $v1, 0x38($sp) +/* 03F004 8003E404 00000000 */ nop +/* 03F008 8003E408 806F0172 */ lb $t7, 0x172($v1) +/* 03F00C 8003E40C 80780174 */ lb $t8, 0x174($v1) +/* 03F010 8003E410 000FC880 */ sll $t9, $t7, 2 +/* 03F014 8003E414 032FC821 */ addu $t9, $t9, $t7 +/* 03F018 8003E418 0019C840 */ sll $t9, $t9, 1 +/* 03F01C 8003E41C 00184040 */ sll $t0, $t8, 1 +/* 03F020 8003E420 03284821 */ addu $t1, $t9, $t0 +/* 03F024 8003E424 906C0209 */ lbu $t4, 0x209($v1) +/* 03F028 8003E428 01225021 */ addu $t2, $t1, $v0 +/* 03F02C 8003E42C 814B0001 */ lb $t3, 1($t2) +/* 03F030 8003E430 80660173 */ lb $a2, 0x173($v1) +/* 03F034 8003E434 358D0001 */ ori $t5, $t4, 1 +/* 03F038 8003E438 A06D0209 */ sb $t5, 0x209($v1) +/* 03F03C 8003E43C A06B0173 */ sb $t3, 0x173($v1) +/* 03F040 8003E440 0C0270F2 */ jal func_8009C3C8 +/* 03F044 8003E444 A3A6002E */ sb $a2, 0x2e($sp) +/* 03F048 8003E448 8FA30038 */ lw $v1, 0x38($sp) +/* 03F04C 8003E44C 83A6002E */ lb $a2, 0x2e($sp) +/* 03F050 8003E450 28410002 */ slti $at, $v0, 2 +/* 03F054 8003E454 10200002 */ beqz $at, .L8003E460 +/* 03F058 8003E458 240E0010 */ li $t6, 16 +/* 03F05C 8003E45C AE0E007C */ sw $t6, 0x7c($s0) +.L8003E460: +/* 03F060 8003E460 84670000 */ lh $a3, ($v1) +/* 03F064 8003E464 2401FFFF */ li $at, -1 +/* 03F068 8003E468 14E1000A */ bne $a3, $at, .L8003E494 +/* 03F06C 8003E46C 2404000E */ li $a0, 14 +/* 03F070 8003E470 8E05000C */ lw $a1, 0xc($s0) +/* 03F074 8003E474 8E060010 */ lw $a2, 0x10($s0) +/* 03F078 8003E478 8E070014 */ lw $a3, 0x14($s0) +/* 03F07C 8003E47C 240F0004 */ li $t7, 4 +/* 03F080 8003E480 AFAF0010 */ sw $t7, 0x10($sp) +/* 03F084 8003E484 0C002556 */ jal func_80009558 +/* 03F088 8003E488 AFA00014 */ sw $zero, 0x14($sp) +/* 03F08C 8003E48C 1000003D */ b .L8003E584 +/* 03F090 8003E490 240D0001 */ li $t5, 1 +.L8003E494: +/* 03F094 8003E494 80620174 */ lb $v0, 0x174($v1) +/* 03F098 8003E498 83B8002D */ lb $t8, 0x2d($sp) +/* 03F09C 8003E49C 00000000 */ nop +/* 03F0A0 8003E4A0 17020024 */ bne $t8, $v0, .L8003E534 +/* 03F0A4 8003E4A4 00000000 */ nop +/* 03F0A8 8003E4A8 807901D8 */ lb $t9, 0x1d8($v1) +/* 03F0AC 8003E4AC 00000000 */ nop +/* 03F0B0 8003E4B0 17200034 */ bnez $t9, .L8003E584 +/* 03F0B4 8003E4B4 240D0001 */ li $t5, 1 +/* 03F0B8 8003E4B8 80680173 */ lb $t0, 0x173($v1) +/* 03F0BC 8003E4BC 2404000E */ li $a0, 14 +/* 03F0C0 8003E4C0 10C80014 */ beq $a2, $t0, .L8003E514 +/* 03F0C4 8003E4C4 240A0004 */ li $t2, 4 +/* 03F0C8 8003E4C8 2404013E */ li $a0, 318 +/* 03F0CC 8003E4CC 3C053F80 */ lui $a1, 0x3f80 +/* 03F0D0 8003E4D0 00E03025 */ move $a2, $a3 +/* 03F0D4 8003E4D4 0C029D21 */ jal func_800A7484 +/* 03F0D8 8003E4D8 AFA30038 */ sw $v1, 0x38($sp) +/* 03F0DC 8003E4DC 8FA30038 */ lw $v1, 0x38($sp) +/* 03F0E0 8003E4E0 00002825 */ move $a1, $zero +/* 03F0E4 8003E4E4 80660174 */ lb $a2, 0x174($v1) +/* 03F0E8 8003E4E8 00000000 */ nop +/* 03F0EC 8003E4EC 28C10003 */ slti $at, $a2, 3 +/* 03F0F0 8003E4F0 14200003 */ bnez $at, .L8003E500 +/* 03F0F4 8003E4F4 24C400A0 */ addiu $a0, $a2, 0xa0 +/* 03F0F8 8003E4F8 24060002 */ li $a2, 2 +/* 03F0FC 8003E4FC 24C400A0 */ addiu $a0, $a2, 0xa0 +.L8003E500: +/* 03F100 8003E500 3089FFFF */ andi $t1, $a0, 0xffff +/* 03F104 8003E504 0C000741 */ jal func_80001D04 +/* 03F108 8003E508 01202025 */ move $a0, $t1 +/* 03F10C 8003E50C 1000001D */ b .L8003E584 +/* 03F110 8003E510 240D0001 */ li $t5, 1 +.L8003E514: +/* 03F114 8003E514 8E05000C */ lw $a1, 0xc($s0) +/* 03F118 8003E518 8E060010 */ lw $a2, 0x10($s0) +/* 03F11C 8003E51C 8E070014 */ lw $a3, 0x14($s0) +/* 03F120 8003E520 AFA00014 */ sw $zero, 0x14($sp) +/* 03F124 8003E524 0C002556 */ jal func_80009558 +/* 03F128 8003E528 AFAA0010 */ sw $t2, 0x10($sp) +/* 03F12C 8003E52C 10000015 */ b .L8003E584 +/* 03F130 8003E530 240D0001 */ li $t5, 1 +.L8003E534: +/* 03F134 8003E534 806B01D8 */ lb $t3, 0x1d8($v1) +/* 03F138 8003E538 00000000 */ nop +/* 03F13C 8003E53C 15600011 */ bnez $t3, .L8003E584 +/* 03F140 8003E540 240D0001 */ li $t5, 1 +/* 03F144 8003E544 18400009 */ blez $v0, .L8003E56C +/* 03F148 8003E548 2404013E */ li $a0, 318 +/* 03F14C 8003E54C 3C053F80 */ lui $a1, 0x3f80 +/* 03F150 8003E550 00E03025 */ move $a2, $a3 +/* 03F154 8003E554 0C029D21 */ jal func_800A7484 +/* 03F158 8003E558 AFA30038 */ sw $v1, 0x38($sp) +/* 03F15C 8003E55C 8FA30038 */ lw $v1, 0x38($sp) +/* 03F160 8003E560 00000000 */ nop +/* 03F164 8003E564 80620174 */ lb $v0, 0x174($v1) +/* 03F168 8003E568 00000000 */ nop +.L8003E56C: +/* 03F16C 8003E56C 244400A0 */ addiu $a0, $v0, 0xa0 +/* 03F170 8003E570 308CFFFF */ andi $t4, $a0, 0xffff +/* 03F174 8003E574 01802025 */ move $a0, $t4 +/* 03F178 8003E578 0C000741 */ jal func_80001D04 +/* 03F17C 8003E57C 00002825 */ move $a1, $zero +/* 03F180 8003E580 240D0001 */ li $t5, 1 +.L8003E584: +/* 03F184 8003E584 AE0D0074 */ sw $t5, 0x74($s0) +/* 03F188 8003E588 8FA50044 */ lw $a1, 0x44($sp) +/* 03F18C 8003E58C 0C02BF0F */ jal func_800AFC3C +/* 03F190 8003E590 02002025 */ move $a0, $s0 +/* 03F194 8003E594 8FAF0034 */ lw $t7, 0x34($sp) +/* 03F198 8003E598 240E005A */ li $t6, 90 +/* 03F19C 8003E59C A5EE0004 */ sh $t6, 4($t7) +.L8003E5A0: +/* 03F1A0 8003E5A0 8FBF0024 */ lw $ra, 0x24($sp) +.L8003E5A4: +/* 03F1A4 8003E5A4 8FB00020 */ lw $s0, 0x20($sp) +/* 03F1A8 8003E5A8 03E00008 */ jr $ra +/* 03F1AC 8003E5AC 27BD0040 */ addiu $sp, $sp, 0x40 + diff --git a/asm/non_matchings/unknown_032760/func_8003E5B0.s b/asm/non_matchings/unknown_032760/func_8003E5B0.s new file mode 100644 index 00000000..9d057684 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003E5B0.s @@ -0,0 +1,5 @@ +glabel func_8003E5B0 +/* 03F1B0 8003E5B0 AFA40000 */ sw $a0, ($sp) +/* 03F1B4 8003E5B4 03E00008 */ jr $ra +/* 03F1B8 8003E5B8 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_8003E5BC.s b/asm/non_matchings/unknown_032760/func_8003E5BC.s new file mode 100644 index 00000000..f2bb3f84 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003E5BC.s @@ -0,0 +1,5 @@ +glabel func_8003E5BC +/* 03F1BC 8003E5BC AFA40000 */ sw $a0, ($sp) +/* 03F1C0 8003E5C0 03E00008 */ jr $ra +/* 03F1C4 8003E5C4 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_8003E5C8.s b/asm/non_matchings/unknown_032760/func_8003E5C8.s new file mode 100644 index 00000000..ff52fed9 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003E5C8.s @@ -0,0 +1,28 @@ +glabel func_8003E5C8 +/* 03F1C8 8003E5C8 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 03F1CC 8003E5CC AFBF0014 */ sw $ra, 0x14($sp) +/* 03F1D0 8003E5D0 AFA40018 */ sw $a0, 0x18($sp) +/* 03F1D4 8003E5D4 AFA5001C */ sw $a1, 0x1c($sp) +/* 03F1D8 8003E5D8 8C8F004C */ lw $t7, 0x4c($a0) +/* 03F1DC 8003E5DC 240E0002 */ li $t6, 2 +/* 03F1E0 8003E5E0 A5EE0014 */ sh $t6, 0x14($t7) +/* 03F1E4 8003E5E4 8C98004C */ lw $t8, 0x4c($a0) +/* 03F1E8 8003E5E8 24190018 */ li $t9, 24 +/* 03F1EC 8003E5EC A3000011 */ sb $zero, 0x11($t8) +/* 03F1F0 8003E5F0 8C88004C */ lw $t0, 0x4c($a0) +/* 03F1F4 8003E5F4 00802825 */ move $a1, $a0 +/* 03F1F8 8003E5F8 A1190010 */ sb $t9, 0x10($t0) +/* 03F1FC 8003E5FC 8C89004C */ lw $t1, 0x4c($a0) +/* 03F200 8003E600 240401E0 */ li $a0, 480 +/* 03F204 8003E604 A1200012 */ sb $zero, 0x12($t1) +/* 03F208 8003E608 0C00322D */ jal func_8000C8B4 +/* 03F20C 8003E60C AFA50018 */ sw $a1, 0x18($sp) +/* 03F210 8003E610 8FA50018 */ lw $a1, 0x18($sp) +/* 03F214 8003E614 00000000 */ nop +/* 03F218 8003E618 ACA20078 */ sw $v0, 0x78($a1) +/* 03F21C 8003E61C ACA0007C */ sw $zero, 0x7c($a1) +/* 03F220 8003E620 8FBF0014 */ lw $ra, 0x14($sp) +/* 03F224 8003E624 27BD0018 */ addiu $sp, $sp, 0x18 +/* 03F228 8003E628 03E00008 */ jr $ra +/* 03F22C 8003E62C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003E630.s b/asm/non_matchings/unknown_032760/func_8003E630.s new file mode 100644 index 00000000..a6cd11cc --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003E630.s @@ -0,0 +1,29 @@ +glabel func_8003E630 +/* 03F230 8003E630 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 03F234 8003E634 AFBF0014 */ sw $ra, 0x14($sp) +/* 03F238 8003E638 8C820064 */ lw $v0, 0x64($a0) +/* 03F23C 8003E63C 00000000 */ nop +/* 03F240 8003E640 904E0018 */ lbu $t6, 0x18($v0) +/* 03F244 8003E644 00000000 */ nop +/* 03F248 8003E648 2DC1000C */ sltiu $at, $t6, 0xc +/* 03F24C 8003E64C 1020000D */ beqz $at, .L8003E684 +/* 03F250 8003E650 000E7080 */ sll $t6, $t6, 2 +/* 03F254 8003E654 3C01800E */ lui $at, 0x800e +/* 03F258 8003E658 002E0821 */ addu $at, $at, $t6 +/* 03F25C 8003E65C 8C2E61C0 */ lw $t6, 0x61c0($at) +/* 03F260 8003E660 00000000 */ nop +/* 03F264 8003E664 01C00008 */ jr $t6 +/* 03F268 8003E668 00000000 */ nop +/* 03F26C 8003E66C 0C00F9A5 */ jal func_8003E694 +/* 03F270 8003E670 00000000 */ nop +/* 03F274 8003E674 10000004 */ b .L8003E688 +/* 03F278 8003E678 8FBF0014 */ lw $ra, 0x14($sp) +/* 03F27C 8003E67C 0C00FCBA */ jal func_8003F2E8 +/* 03F280 8003E680 00000000 */ nop +.L8003E684: +/* 03F284 8003E684 8FBF0014 */ lw $ra, 0x14($sp) +.L8003E688: +/* 03F288 8003E688 27BD0018 */ addiu $sp, $sp, 0x18 +/* 03F28C 8003E68C 03E00008 */ jr $ra +/* 03F290 8003E690 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003E694.s b/asm/non_matchings/unknown_032760/func_8003E694.s new file mode 100644 index 00000000..e87cf001 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003E694.s @@ -0,0 +1,375 @@ +glabel func_8003E694 +/* 03F294 8003E694 27BDFF18 */ addiu $sp, $sp, -0xe8 +/* 03F298 8003E698 AFBF002C */ sw $ra, 0x2c($sp) +/* 03F29C 8003E69C AFB10028 */ sw $s1, 0x28($sp) +/* 03F2A0 8003E6A0 AFB00024 */ sw $s0, 0x24($sp) +/* 03F2A4 8003E6A4 AFA500EC */ sw $a1, 0xec($sp) +/* 03F2A8 8003E6A8 8C83004C */ lw $v1, 0x4c($a0) +/* 03F2AC 8003E6AC 44800000 */ mtc1 $zero, $f0 +/* 03F2B0 8003E6B0 846E0014 */ lh $t6, 0x14($v1) +/* 03F2B4 8003E6B4 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 03F2B8 8003E6B8 35CF0100 */ ori $t7, $t6, 0x100 +/* 03F2BC 8003E6BC A46F0014 */ sh $t7, 0x14($v1) +/* 03F2C0 8003E6C0 C484000C */ lwc1 $f4, 0xc($a0) +/* 03F2C4 8003E6C4 8C910064 */ lw $s1, 0x64($a0) +/* 03F2C8 8003E6C8 E7A400BC */ swc1 $f4, 0xbc($sp) +/* 03F2CC 8003E6CC C4860010 */ lwc1 $f6, 0x10($a0) +/* 03F2D0 8003E6D0 44815000 */ mtc1 $at, $f10 +/* 03F2D4 8003E6D4 E7A600B8 */ swc1 $f6, 0xb8($sp) +/* 03F2D8 8003E6D8 C4880014 */ lwc1 $f8, 0x14($a0) +/* 03F2DC 8003E6DC 00808025 */ move $s0, $a0 +/* 03F2E0 8003E6E0 E7A800B4 */ swc1 $f8, 0xb4($sp) +/* 03F2E4 8003E6E4 84980000 */ lh $t8, ($a0) +/* 03F2E8 8003E6E8 27A5003C */ addiu $a1, $sp, 0x3c +/* 03F2EC 8003E6EC A7B8003C */ sh $t8, 0x3c($sp) +/* 03F2F0 8003E6F0 84990002 */ lh $t9, 2($a0) +/* 03F2F4 8003E6F4 A7A00040 */ sh $zero, 0x40($sp) +/* 03F2F8 8003E6F8 27A40054 */ addiu $a0, $sp, 0x54 +/* 03F2FC 8003E6FC E7A00048 */ swc1 $f0, 0x48($sp) +/* 03F300 8003E700 E7A0004C */ swc1 $f0, 0x4c($sp) +/* 03F304 8003E704 E7A00050 */ swc1 $f0, 0x50($sp) +/* 03F308 8003E708 E7AA0044 */ swc1 $f10, 0x44($sp) +/* 03F30C 8003E70C 0C01BF0C */ jal func_8006FC30 +/* 03F310 8003E710 A7B9003E */ sh $t9, 0x3e($sp) +/* 03F314 8003E714 44800000 */ mtc1 $zero, $f0 +/* 03F318 8003E718 8E270010 */ lw $a3, 0x10($s1) +/* 03F31C 8003E71C 2608001C */ addiu $t0, $s0, 0x1c +/* 03F320 8003E720 26090020 */ addiu $t1, $s0, 0x20 +/* 03F324 8003E724 260A0024 */ addiu $t2, $s0, 0x24 +/* 03F328 8003E728 44050000 */ mfc1 $a1, $f0 +/* 03F32C 8003E72C 44060000 */ mfc1 $a2, $f0 +/* 03F330 8003E730 AFAA0018 */ sw $t2, 0x18($sp) +/* 03F334 8003E734 AFA90014 */ sw $t1, 0x14($sp) +/* 03F338 8003E738 AFA80010 */ sw $t0, 0x10($sp) +/* 03F33C 8003E73C 0C01BD93 */ jal func_8006F64C +/* 03F340 8003E740 27A40054 */ addiu $a0, $sp, 0x54 +/* 03F344 8003E744 8FAB00EC */ lw $t3, 0xec($sp) +/* 03F348 8003E748 3C0C8000 */ lui $t4, %hi(D_80000300) # $t4, 0x8000 +/* 03F34C 8003E74C 448B8000 */ mtc1 $t3, $f16 +/* 03F350 8003E750 8D8C0300 */ lw $t4, %lo(D_80000300)($t4) +/* 03F354 8003E754 46808020 */ cvt.s.w $f0, $f16 +/* 03F358 8003E758 3C01800E */ lui $at, %hi(D_800E61F4) # $at, 0x800e +/* 03F35C 8003E75C 15800006 */ bnez $t4, .L8003E778 +/* 03F360 8003E760 46000086 */ mov.s $f2, $f0 +/* 03F364 8003E764 C42561F0 */ lwc1 $f5, %lo(D_800E61F0)($at) +/* 03F368 8003E768 C42461F4 */ lwc1 $f4, %lo(D_800E61F4)($at) +/* 03F36C 8003E76C 460004A1 */ cvt.d.s $f18, $f0 +/* 03F370 8003E770 46249182 */ mul.d $f6, $f18, $f4 +/* 03F374 8003E774 462030A0 */ cvt.s.d $f2, $f6 +.L8003E778: +/* 03F378 8003E778 C60A001C */ lwc1 $f10, 0x1c($s0) +/* 03F37C 8003E77C C608000C */ lwc1 $f8, 0xc($s0) +/* 03F380 8003E780 46025402 */ mul.s $f16, $f10, $f2 +/* 03F384 8003E784 24010006 */ li $at, 6 +/* 03F388 8003E788 24040001 */ li $a0, 1 +/* 03F38C 8003E78C 2605000C */ addiu $a1, $s0, 0xc +/* 03F390 8003E790 46104480 */ add.s $f18, $f8, $f16 +/* 03F394 8003E794 27A600C8 */ addiu $a2, $sp, 0xc8 +/* 03F398 8003E798 E7B200C8 */ swc1 $f18, 0xc8($sp) +/* 03F39C 8003E79C C6060020 */ lwc1 $f6, 0x20($s0) +/* 03F3A0 8003E7A0 C6040010 */ lwc1 $f4, 0x10($s0) +/* 03F3A4 8003E7A4 46023282 */ mul.s $f10, $f6, $f2 +/* 03F3A8 8003E7A8 2407FFFF */ li $a3, -1 +/* 03F3AC 8003E7AC 460A2200 */ add.s $f8, $f4, $f10 +/* 03F3B0 8003E7B0 E7A800CC */ swc1 $f8, 0xcc($sp) +/* 03F3B4 8003E7B4 C6120024 */ lwc1 $f18, 0x24($s0) +/* 03F3B8 8003E7B8 C6100014 */ lwc1 $f16, 0x14($s0) +/* 03F3BC 8003E7BC 46029182 */ mul.s $f6, $f18, $f2 +/* 03F3C0 8003E7C0 46068100 */ add.s $f4, $f16, $f6 +/* 03F3C4 8003E7C4 E7A400D0 */ swc1 $f4, 0xd0($sp) +/* 03F3C8 8003E7C8 922D0018 */ lbu $t5, 0x18($s1) +/* 03F3CC 8003E7CC 00000000 */ nop +/* 03F3D0 8003E7D0 11A1001E */ beq $t5, $at, .L8003E84C +/* 03F3D4 8003E7D4 3C014180 */ li $at, 0x41800000 # 16.000000 +/* 03F3D8 8003E7D8 44815000 */ mtc1 $at, $f10 +/* 03F3DC 8003E7DC AFA50038 */ sw $a1, 0x38($sp) +/* 03F3E0 8003E7E0 E7A200C0 */ swc1 $f2, 0xc0($sp) +/* 03F3E4 8003E7E4 0C00C44C */ jal func_80031130 +/* 03F3E8 8003E7E8 E7AA00C4 */ swc1 $f10, 0xc4($sp) +/* 03F3EC 8003E7EC 240EFFFF */ li $t6, -1 +/* 03F3F0 8003E7F0 8FA40038 */ lw $a0, 0x38($sp) +/* 03F3F4 8003E7F4 240F0001 */ li $t7, 1 +/* 03F3F8 8003E7F8 27B800A4 */ addiu $t8, $sp, 0xa4 +/* 03F3FC 8003E7FC AFA000A4 */ sw $zero, 0xa4($sp) +/* 03F400 8003E800 A3AE0097 */ sb $t6, 0x97($sp) +/* 03F404 8003E804 AFB80014 */ sw $t8, 0x14($sp) +/* 03F408 8003E808 AFAF0010 */ sw $t7, 0x10($sp) +/* 03F40C 8003E80C 27A500C8 */ addiu $a1, $sp, 0xc8 +/* 03F410 8003E810 27A600C4 */ addiu $a2, $sp, 0xc4 +/* 03F414 8003E814 0C00C580 */ jal func_80031600 +/* 03F418 8003E818 27A70097 */ addiu $a3, $sp, 0x97 +/* 03F41C 8003E81C 8FB900A4 */ lw $t9, 0xa4($sp) +/* 03F420 8003E820 C7A200C0 */ lwc1 $f2, 0xc0($sp) +/* 03F424 8003E824 1B200009 */ blez $t9, .L8003E84C +/* 03F428 8003E828 27A400B0 */ addiu $a0, $sp, 0xb0 +/* 03F42C 8003E82C 27A500AC */ addiu $a1, $sp, 0xac +/* 03F430 8003E830 27A600A8 */ addiu $a2, $sp, 0xa8 +/* 03F434 8003E834 0C00AB35 */ jal func_8002ACD4 +/* 03F438 8003E838 E7A200C0 */ swc1 $f2, 0xc0($sp) +/* 03F43C 8003E83C C7A200C0 */ lwc1 $f2, 0xc0($sp) +/* 03F440 8003E840 10400002 */ beqz $v0, .L8003E84C +/* 03F444 8003E844 00000000 */ nop +/* 03F448 8003E848 AE000078 */ sw $zero, 0x78($s0) +.L8003E84C: +/* 03F44C 8003E84C C7A800C8 */ lwc1 $f8, 0xc8($sp) +/* 03F450 8003E850 C7B200BC */ lwc1 $f18, 0xbc($sp) +/* 03F454 8003E854 C7B000CC */ lwc1 $f16, 0xcc($sp) +/* 03F458 8003E858 C7A600B8 */ lwc1 $f6, 0xb8($sp) +/* 03F45C 8003E85C C7A400D0 */ lwc1 $f4, 0xd0($sp) +/* 03F460 8003E860 C7AA00B4 */ lwc1 $f10, 0xb4($sp) +/* 03F464 8003E864 46124001 */ sub.s $f0, $f8, $f18 +/* 03F468 8003E868 02002025 */ move $a0, $s0 +/* 03F46C 8003E86C 46068301 */ sub.s $f12, $f16, $f6 +/* 03F470 8003E870 44050000 */ mfc1 $a1, $f0 +/* 03F474 8003E874 460A2381 */ sub.s $f14, $f4, $f10 +/* 03F478 8003E878 44066000 */ mfc1 $a2, $f12 +/* 03F47C 8003E87C 44077000 */ mfc1 $a3, $f14 +/* 03F480 8003E880 E7AE00A8 */ swc1 $f14, 0xa8($sp) +/* 03F484 8003E884 E7AC00AC */ swc1 $f12, 0xac($sp) +/* 03F488 8003E888 E7A000B0 */ swc1 $f0, 0xb0($sp) +/* 03F48C 8003E88C 0C00455C */ jal func_80011570 +/* 03F490 8003E890 E7A200C0 */ swc1 $f2, 0xc0($sp) +/* 03F494 8003E894 C7A200C0 */ lwc1 $f2, 0xc0($sp) +/* 03F498 8003E898 10400002 */ beqz $v0, .L8003E8A4 +/* 03F49C 8003E89C 00000000 */ nop +/* 03F4A0 8003E8A0 AE000078 */ sw $zero, 0x78($s0) +.L8003E8A4: +/* 03F4A4 8003E8A4 C7A800B0 */ lwc1 $f8, 0xb0($sp) +/* 03F4A8 8003E8A8 C7B000A8 */ lwc1 $f16, 0xa8($sp) +/* 03F4AC 8003E8AC 46084482 */ mul.s $f18, $f8, $f8 +/* 03F4B0 8003E8B0 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 03F4B4 8003E8B4 46108182 */ mul.s $f6, $f16, $f16 +/* 03F4B8 8003E8B8 44818000 */ mtc1 $at, $f16 +/* 03F4BC 8003E8BC 46069100 */ add.s $f4, $f18, $f6 +/* 03F4C0 8003E8C0 00000000 */ nop +/* 03F4C4 8003E8C4 46022283 */ div.s $f10, $f4, $f2 +/* 03F4C8 8003E8C8 E7AA00B0 */ swc1 $f10, 0xb0($sp) +/* 03F4CC 8003E8CC C6200010 */ lwc1 $f0, 0x10($s1) +/* 03F4D0 8003E8D0 C7A600B0 */ lwc1 $f6, 0xb0($sp) +/* 03F4D4 8003E8D4 46000202 */ mul.s $f8, $f0, $f0 +/* 03F4D8 8003E8D8 00000000 */ nop +/* 03F4DC 8003E8DC 46104483 */ div.s $f18, $f8, $f16 +/* 03F4E0 8003E8E0 4612303C */ c.lt.s $f6, $f18 +/* 03F4E4 8003E8E4 E7B200A8 */ swc1 $f18, 0xa8($sp) +/* 03F4E8 8003E8E8 45000002 */ bc1f .L8003E8F4 +/* 03F4EC 8003E8EC 00000000 */ nop +/* 03F4F0 8003E8F0 AE000078 */ sw $zero, 0x78($s0) +.L8003E8F4: +/* 03F4F4 8003E8F4 92220018 */ lbu $v0, 0x18($s1) +/* 03F4F8 8003E8F8 00000000 */ nop +/* 03F4FC 8003E8FC 14400023 */ bnez $v0, .L8003E98C +/* 03F500 8003E900 00000000 */ nop +/* 03F504 8003E904 0C006E99 */ jal func_8001BA64 +/* 03F508 8003E908 00000000 */ nop +/* 03F50C 8003E90C 1840001D */ blez $v0, .L8003E984 +/* 03F510 8003E910 240DFFFF */ li $t5, -1 +/* 03F514 8003E914 82240019 */ lb $a0, 0x19($s1) +/* 03F518 8003E918 C7A400B4 */ lwc1 $f4, 0xb4($sp) +/* 03F51C 8003E91C 8FA600BC */ lw $a2, 0xbc($sp) +/* 03F520 8003E920 8FA700B8 */ lw $a3, 0xb8($sp) +/* 03F524 8003E924 2628000C */ addiu $t0, $s1, 0xc +/* 03F528 8003E928 27A90097 */ addiu $t1, $sp, 0x97 +/* 03F52C 8003E92C AFA90018 */ sw $t1, 0x18($sp) +/* 03F530 8003E930 AFA80014 */ sw $t0, 0x14($sp) +/* 03F534 8003E934 AFA2009C */ sw $v0, 0x9c($sp) +/* 03F538 8003E938 02002825 */ move $a1, $s0 +/* 03F53C 8003E93C 0C006179 */ jal func_800185E4 +/* 03F540 8003E940 E7A40010 */ swc1 $f4, 0x10($sp) +/* 03F544 8003E944 8FA3009C */ lw $v1, 0x9c($sp) +/* 03F548 8003E948 1440000B */ bnez $v0, .L8003E978 +/* 03F54C 8003E94C 00000000 */ nop +/* 03F550 8003E950 822A0019 */ lb $t2, 0x19($s1) +/* 03F554 8003E954 00000000 */ nop +/* 03F558 8003E958 254B0001 */ addiu $t3, $t2, 1 +/* 03F55C 8003E95C A22B0019 */ sb $t3, 0x19($s1) +/* 03F560 8003E960 822C0019 */ lb $t4, 0x19($s1) +/* 03F564 8003E964 00000000 */ nop +/* 03F568 8003E968 0183082A */ slt $at, $t4, $v1 +/* 03F56C 8003E96C 14200002 */ bnez $at, .L8003E978 +/* 03F570 8003E970 00000000 */ nop +/* 03F574 8003E974 A2200019 */ sb $zero, 0x19($s1) +.L8003E978: +/* 03F578 8003E978 92220018 */ lbu $v0, 0x18($s1) +/* 03F57C 8003E97C 10000003 */ b .L8003E98C +/* 03F580 8003E980 00000000 */ nop +.L8003E984: +/* 03F584 8003E984 92220018 */ lbu $v0, 0x18($s1) +/* 03F588 8003E988 A22D0019 */ sb $t5, 0x19($s1) +.L8003E98C: +/* 03F58C 8003E98C 14400007 */ bnez $v0, .L8003E9AC +/* 03F590 8003E990 02002025 */ move $a0, $s0 +/* 03F594 8003E994 8FA500EC */ lw $a1, 0xec($sp) +/* 03F598 8003E998 02002025 */ move $a0, $s0 +/* 03F59C 8003E99C 0C00FB76 */ jal func_8003EDD8 +/* 03F5A0 8003E9A0 02203025 */ move $a2, $s1 +/* 03F5A4 8003E9A4 10000005 */ b .L8003E9BC +/* 03F5A8 8003E9A8 8E03004C */ lw $v1, 0x4c($s0) +.L8003E9AC: +/* 03F5AC 8003E9AC 8FA500EC */ lw $a1, 0xec($sp) +/* 03F5B0 8003E9B0 0C00FB05 */ jal func_8003EC14 +/* 03F5B4 8003E9B4 02203025 */ move $a2, $s1 +/* 03F5B8 8003E9B8 8E03004C */ lw $v1, 0x4c($s0) +.L8003E9BC: +/* 03F5BC 8003E9BC 00000000 */ nop +/* 03F5C0 8003E9C0 8C620000 */ lw $v0, ($v1) +/* 03F5C4 8003E9C4 00000000 */ nop +/* 03F5C8 8003E9C8 1040004E */ beqz $v0, .L8003EB04 +/* 03F5CC 8003E9CC 00000000 */ nop +/* 03F5D0 8003E9D0 8E2E0004 */ lw $t6, 4($s1) +/* 03F5D4 8003E9D4 00402825 */ move $a1, $v0 +/* 03F5D8 8003E9D8 144E000C */ bne $v0, $t6, .L8003EA0C +/* 03F5DC 8003E9DC 240401C2 */ li $a0, 450 +/* 03F5E0 8003E9E0 0C00322D */ jal func_8000C8B4 +/* 03F5E4 8003E9E4 AFA200E4 */ sw $v0, 0xe4($sp) +/* 03F5E8 8003E9E8 8E030078 */ lw $v1, 0x78($s0) +/* 03F5EC 8003E9EC 8FA500E4 */ lw $a1, 0xe4($sp) +/* 03F5F0 8003E9F0 0062082A */ slt $at, $v1, $v0 +/* 03F5F4 8003E9F4 10200043 */ beqz $at, .L8003EB04 +/* 03F5F8 8003E9F8 00000000 */ nop +/* 03F5FC 8003E9FC 10600041 */ beqz $v1, .L8003EB04 +/* 03F600 8003EA00 00000000 */ nop +/* 03F604 8003EA04 8E03004C */ lw $v1, 0x4c($s0) +/* 03F608 8003EA08 00000000 */ nop +.L8003EA0C: +/* 03F60C 8003EA0C 922F0018 */ lbu $t7, 0x18($s1) +/* 03F610 8003EA10 2402003C */ li $v0, 60 +/* 03F614 8003EA14 15E00009 */ bnez $t7, .L8003EA3C +/* 03F618 8003EA18 00000000 */ nop +/* 03F61C 8003EA1C 8E380000 */ lw $t8, ($s1) +/* 03F620 8003EA20 00000000 */ nop +/* 03F624 8003EA24 14B80003 */ bne $a1, $t8, .L8003EA34 +/* 03F628 8003EA28 00000000 */ nop +/* 03F62C 8003EA2C 10000003 */ b .L8003EA3C +/* 03F630 8003EA30 2402004B */ li $v0, 75 +.L8003EA34: +/* 03F634 8003EA34 10000001 */ b .L8003EA3C +/* 03F638 8003EA38 24020014 */ li $v0, 20 +.L8003EA3C: +/* 03F63C 8003EA3C 90790013 */ lbu $t9, 0x13($v1) +/* 03F640 8003EA40 00000000 */ nop +/* 03F644 8003EA44 0322082A */ slt $at, $t9, $v0 +/* 03F648 8003EA48 1020002E */ beqz $at, .L8003EB04 +/* 03F64C 8003EA4C 00000000 */ nop +/* 03F650 8003EA50 8CA80040 */ lw $t0, 0x40($a1) +/* 03F654 8003EA54 24040001 */ li $a0, 1 +/* 03F658 8003EA58 81090054 */ lb $t1, 0x54($t0) +/* 03F65C 8003EA5C 00000000 */ nop +/* 03F660 8003EA60 14890018 */ bne $a0, $t1, .L8003EAC4 +/* 03F664 8003EA64 00000000 */ nop +/* 03F668 8003EA68 8CA30064 */ lw $v1, 0x64($a1) +/* 03F66C 8003EA6C 2406FFFF */ li $a2, -1 +/* 03F670 8003EA70 A0640187 */ sb $a0, 0x187($v1) +/* 03F674 8003EA74 8E2A0004 */ lw $t2, 4($s1) +/* 03F678 8003EA78 846B0000 */ lh $t3, ($v1) +/* 03F67C 8003EA7C 8D420064 */ lw $v0, 0x64($t2) +/* 03F680 8003EA80 14CB0005 */ bne $a2, $t3, .L8003EA98 +/* 03F684 8003EA84 00000000 */ nop +/* 03F688 8003EA88 844C0000 */ lh $t4, ($v0) +/* 03F68C 8003EA8C 00000000 */ nop +/* 03F690 8003EA90 10CC0005 */ beq $a2, $t4, .L8003EAA8 +/* 03F694 8003EA94 00000000 */ nop +.L8003EA98: +/* 03F698 8003EA98 904D01EF */ lbu $t5, 0x1ef($v0) +/* 03F69C 8003EA9C 00000000 */ nop +/* 03F6A0 8003EAA0 35AE0002 */ ori $t6, $t5, 2 +/* 03F6A4 8003EAA4 A04E01EF */ sb $t6, 0x1ef($v0) +.L8003EAA8: +/* 03F6A8 8003EAA8 806F01D8 */ lb $t7, 0x1d8($v1) +/* 03F6AC 8003EAAC 00000000 */ nop +/* 03F6B0 8003EAB0 15E00004 */ bnez $t7, .L8003EAC4 +/* 03F6B4 8003EAB4 00000000 */ nop +/* 03F6B8 8003EAB8 84640000 */ lh $a0, ($v1) +/* 03F6BC 8003EABC 0C01C8D2 */ jal func_80072348 +/* 03F6C0 8003EAC0 24050009 */ li $a1, 9 +.L8003EAC4: +/* 03F6C4 8003EAC4 C60C000C */ lwc1 $f12, 0xc($s0) +/* 03F6C8 8003EAC8 C60E0010 */ lwc1 $f14, 0x10($s0) +/* 03F6CC 8003EACC 8E060014 */ lw $a2, 0x14($s0) +/* 03F6D0 8003EAD0 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 03F6D4 8003EAD4 44815000 */ mtc1 $at, $f10 +/* 03F6D8 8003EAD8 24180011 */ li $t8, 17 +/* 03F6DC 8003EADC 24190001 */ li $t9, 1 +/* 03F6E0 8003EAE0 AFB90018 */ sw $t9, 0x18($sp) +/* 03F6E4 8003EAE4 AFB80010 */ sw $t8, 0x10($sp) +/* 03F6E8 8003EAE8 2407002C */ li $a3, 44 +/* 03F6EC 8003EAEC 0C00FF11 */ jal func_8003FC44 +/* 03F6F0 8003EAF0 E7AA0014 */ swc1 $f10, 0x14($sp) +/* 03F6F4 8003EAF4 0C003FEE */ jal func_8000FFB8 +/* 03F6F8 8003EAF8 02002025 */ move $a0, $s0 +/* 03F6FC 8003EAFC 10000041 */ b .L8003EC04 +/* 03F700 8003EB00 8FBF002C */ lw $ra, 0x2c($sp) +.L8003EB04: +/* 03F704 8003EB04 8E08007C */ lw $t0, 0x7c($s0) +/* 03F708 8003EB08 8FA900EC */ lw $t1, 0xec($sp) +/* 03F70C 8003EB0C 8E030060 */ lw $v1, 0x60($s0) +/* 03F710 8003EB10 01095021 */ addu $t2, $t0, $t1 +/* 03F714 8003EB14 10600027 */ beqz $v1, .L8003EBB4 +/* 03F718 8003EB18 AE0A007C */ sw $t2, 0x7c($s0) +/* 03F71C 8003EB1C 8C710004 */ lw $s1, 4($v1) +/* 03F720 8003EB20 29410008 */ slti $at, $t2, 8 +/* 03F724 8003EB24 10200009 */ beqz $at, .L8003EB4C +/* 03F728 8003EB28 01401025 */ move $v0, $t2 +/* 03F72C 8003EB2C 44824000 */ mtc1 $v0, $f8 +/* 03F730 8003EB30 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 03F734 8003EB34 46804420 */ cvt.s.w $f16, $f8 +/* 03F738 8003EB38 44813000 */ mtc1 $at, $f6 +/* 03F73C 8003EB3C 00000000 */ nop +/* 03F740 8003EB40 46068482 */ mul.s $f18, $f16, $f6 +/* 03F744 8003EB44 1000001B */ b .L8003EBB4 +/* 03F748 8003EB48 E6320008 */ swc1 $f18, 8($s1) +.L8003EB4C: +/* 03F74C 8003EB4C 28410010 */ slti $at, $v0, 0x10 +/* 03F750 8003EB50 1020000D */ beqz $at, .L8003EB88 +/* 03F754 8003EB54 00402025 */ move $a0, $v0 +/* 03F758 8003EB58 244BFFF8 */ addiu $t3, $v0, -8 +/* 03F75C 8003EB5C 448B2000 */ mtc1 $t3, $f4 +/* 03F760 8003EB60 3C013E80 */ li $at, 0x3E800000 # 0.250000 +/* 03F764 8003EB64 468022A0 */ cvt.s.w $f10, $f4 +/* 03F768 8003EB68 44814000 */ mtc1 $at, $f8 +/* 03F76C 8003EB6C 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 03F770 8003EB70 46085402 */ mul.s $f16, $f10, $f8 +/* 03F774 8003EB74 44813000 */ mtc1 $at, $f6 +/* 03F778 8003EB78 00000000 */ nop +/* 03F77C 8003EB7C 46103481 */ sub.s $f18, $f6, $f16 +/* 03F780 8003EB80 1000000C */ b .L8003EBB4 +/* 03F784 8003EB84 E6320008 */ swc1 $f18, 8($s1) +.L8003EB88: +/* 03F788 8003EB88 00046700 */ sll $t4, $a0, 0x1c +/* 03F78C 8003EB8C 0C01C1F1 */ jal func_800707C4 +/* 03F790 8003EB90 000C2403 */ sra $a0, $t4, 0x10 +/* 03F794 8003EB94 3C013E80 */ li $at, 0x3E800000 # 0.250000 +/* 03F798 8003EB98 44812000 */ mtc1 $at, $f4 +/* 03F79C 8003EB9C 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 03F7A0 8003EBA0 46040282 */ mul.s $f10, $f0, $f4 +/* 03F7A4 8003EBA4 44814000 */ mtc1 $at, $f8 +/* 03F7A8 8003EBA8 00000000 */ nop +/* 03F7AC 8003EBAC 46085180 */ add.s $f6, $f10, $f8 +/* 03F7B0 8003EBB0 E6260008 */ swc1 $f6, 8($s1) +.L8003EBB4: +/* 03F7B4 8003EBB4 8E0E0078 */ lw $t6, 0x78($s0) +/* 03F7B8 8003EBB8 8FAF00EC */ lw $t7, 0xec($sp) +/* 03F7BC 8003EBBC 2407002C */ li $a3, 44 +/* 03F7C0 8003EBC0 01CFC023 */ subu $t8, $t6, $t7 +/* 03F7C4 8003EBC4 0701000E */ bgez $t8, .L8003EC00 +/* 03F7C8 8003EBC8 AE180078 */ sw $t8, 0x78($s0) +/* 03F7CC 8003EBCC C60C000C */ lwc1 $f12, 0xc($s0) +/* 03F7D0 8003EBD0 C60E0010 */ lwc1 $f14, 0x10($s0) +/* 03F7D4 8003EBD4 8E060014 */ lw $a2, 0x14($s0) +/* 03F7D8 8003EBD8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 03F7DC 8003EBDC 44818000 */ mtc1 $at, $f16 +/* 03F7E0 8003EBE0 24080011 */ li $t0, 17 +/* 03F7E4 8003EBE4 24090001 */ li $t1, 1 +/* 03F7E8 8003EBE8 AFA90018 */ sw $t1, 0x18($sp) +/* 03F7EC 8003EBEC AFA80010 */ sw $t0, 0x10($sp) +/* 03F7F0 8003EBF0 0C00FF11 */ jal func_8003FC44 +/* 03F7F4 8003EBF4 E7B00014 */ swc1 $f16, 0x14($sp) +/* 03F7F8 8003EBF8 0C003FEE */ jal func_8000FFB8 +/* 03F7FC 8003EBFC 02002025 */ move $a0, $s0 +.L8003EC00: +/* 03F800 8003EC00 8FBF002C */ lw $ra, 0x2c($sp) +.L8003EC04: +/* 03F804 8003EC04 8FB00024 */ lw $s0, 0x24($sp) +/* 03F808 8003EC08 8FB10028 */ lw $s1, 0x28($sp) +/* 03F80C 8003EC0C 03E00008 */ jr $ra +/* 03F810 8003EC10 27BD00E8 */ addiu $sp, $sp, 0xe8 + diff --git a/asm/non_matchings/unknown_032760/func_8003EC14.s b/asm/non_matchings/unknown_032760/func_8003EC14.s new file mode 100644 index 00000000..14bf42b5 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003EC14.s @@ -0,0 +1,123 @@ +glabel func_8003EC14 +/* 03F814 8003EC14 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 03F818 8003EC18 AFBF001C */ sw $ra, 0x1c($sp) +/* 03F81C 8003EC1C AFB00018 */ sw $s0, 0x18($sp) +/* 03F820 8003EC20 AFA5003C */ sw $a1, 0x3c($sp) +/* 03F824 8003EC24 8C82004C */ lw $v0, 0x4c($a0) +/* 03F828 8003EC28 00C08025 */ move $s0, $a2 +/* 03F82C 8003EC2C 904E0013 */ lbu $t6, 0x13($v0) +/* 03F830 8003EC30 00803825 */ move $a3, $a0 +/* 03F834 8003EC34 29C10050 */ slti $at, $t6, 0x50 +/* 03F838 8003EC38 14200005 */ bnez $at, .L8003EC50 +/* 03F83C 8003EC3C 00000000 */ nop +/* 03F840 8003EC40 8CCF0008 */ lw $t7, 8($a2) +/* 03F844 8003EC44 00000000 */ nop +/* 03F848 8003EC48 11E0000E */ beqz $t7, .L8003EC84 +/* 03F84C 8003EC4C 00000000 */ nop +.L8003EC50: +/* 03F850 8003EC50 8C450000 */ lw $a1, ($v0) +/* 03F854 8003EC54 00000000 */ nop +/* 03F858 8003EC58 10A0000A */ beqz $a1, .L8003EC84 +/* 03F85C 8003EC5C 00000000 */ nop +/* 03F860 8003EC60 8E180004 */ lw $t8, 4($s0) +/* 03F864 8003EC64 00000000 */ nop +/* 03F868 8003EC68 10B80006 */ beq $a1, $t8, .L8003EC84 +/* 03F86C 8003EC6C 00000000 */ nop +/* 03F870 8003EC70 84B90048 */ lh $t9, 0x48($a1) +/* 03F874 8003EC74 24010001 */ li $at, 1 +/* 03F878 8003EC78 17210002 */ bne $t9, $at, .L8003EC84 +/* 03F87C 8003EC7C 00000000 */ nop +/* 03F880 8003EC80 AE050008 */ sw $a1, 8($s0) +.L8003EC84: +/* 03F884 8003EC84 8E020008 */ lw $v0, 8($s0) +/* 03F888 8003EC88 00000000 */ nop +/* 03F88C 8003EC8C 1040004B */ beqz $v0, .L8003EDBC +/* 03F890 8003EC90 00E02025 */ move $a0, $a3 +/* 03F894 8003EC94 C444000C */ lwc1 $f4, 0xc($v0) +/* 03F898 8003EC98 C4E6000C */ lwc1 $f6, 0xc($a3) +/* 03F89C 8003EC9C C4480010 */ lwc1 $f8, 0x10($v0) +/* 03F8A0 8003ECA0 46062001 */ sub.s $f0, $f4, $f6 +/* 03F8A4 8003ECA4 C4EA0010 */ lwc1 $f10, 0x10($a3) +/* 03F8A8 8003ECA8 46000102 */ mul.s $f4, $f0, $f0 +/* 03F8AC 8003ECAC 460A4081 */ sub.s $f2, $f8, $f10 +/* 03F8B0 8003ECB0 C4500014 */ lwc1 $f16, 0x14($v0) +/* 03F8B4 8003ECB4 C4F20014 */ lwc1 $f18, 0x14($a3) +/* 03F8B8 8003ECB8 46021182 */ mul.s $f6, $f2, $f2 +/* 03F8BC 8003ECBC 46128381 */ sub.s $f14, $f16, $f18 +/* 03F8C0 8003ECC0 E7A20028 */ swc1 $f2, 0x28($sp) +/* 03F8C4 8003ECC4 E7AE0024 */ swc1 $f14, 0x24($sp) +/* 03F8C8 8003ECC8 460E7282 */ mul.s $f10, $f14, $f14 +/* 03F8CC 8003ECCC 46062200 */ add.s $f8, $f4, $f6 +/* 03F8D0 8003ECD0 E7A0002C */ swc1 $f0, 0x2c($sp) +/* 03F8D4 8003ECD4 AFA70038 */ sw $a3, 0x38($sp) +/* 03F8D8 8003ECD8 460A4300 */ add.s $f12, $f8, $f10 +/* 03F8DC 8003ECDC 0C0326B4 */ jal sqrtf +/* 03F8E0 8003ECE0 AFA20034 */ sw $v0, 0x34($sp) +/* 03F8E4 8003ECE4 44808000 */ mtc1 $zero, $f16 +/* 03F8E8 8003ECE8 8FA50034 */ lw $a1, 0x34($sp) +/* 03F8EC 8003ECEC 4600803C */ c.lt.s $f16, $f0 +/* 03F8F0 8003ECF0 8FA70038 */ lw $a3, 0x38($sp) +/* 03F8F4 8003ECF4 C7AE0024 */ lwc1 $f14, 0x24($sp) +/* 03F8F8 8003ECF8 4500002F */ bc1f .L8003EDB8 +/* 03F8FC 8003ECFC E7A00030 */ swc1 $f0, 0x30($sp) +/* 03F900 8003ED00 3C01C1C8 */ li $at, 0xC1C80000 # -25.000000 +/* 03F904 8003ED04 44819000 */ mtc1 $at, $f18 +/* 03F908 8003ED08 00000000 */ nop +/* 03F90C 8003ED0C E6120010 */ swc1 $f18, 0x10($s0) +/* 03F910 8003ED10 C7AC002C */ lwc1 $f12, 0x2c($sp) +/* 03F914 8003ED14 AFA70038 */ sw $a3, 0x38($sp) +/* 03F918 8003ED18 0C01C1D4 */ jal func_80070750 +/* 03F91C 8003ED1C AFA50034 */ sw $a1, 0x34($sp) +/* 03F920 8003ED20 8FA70038 */ lw $a3, 0x38($sp) +/* 03F924 8003ED24 24018000 */ li $at, -32768 +/* 03F928 8003ED28 84E90000 */ lh $t1, ($a3) +/* 03F92C 8003ED2C 00411821 */ addu $v1, $v0, $at +/* 03F930 8003ED30 3066FFFF */ andi $a2, $v1, 0xffff +/* 03F934 8003ED34 312AFFFF */ andi $t2, $t1, 0xffff +/* 03F938 8003ED38 00CA2023 */ subu $a0, $a2, $t2 +/* 03F93C 8003ED3C 34018001 */ li $at, 32769 +/* 03F940 8003ED40 8FA50034 */ lw $a1, 0x34($sp) +/* 03F944 8003ED44 0081082A */ slt $at, $a0, $at +/* 03F948 8003ED48 14200003 */ bnez $at, .L8003ED58 +/* 03F94C 8003ED4C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 03F950 8003ED50 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 03F954 8003ED54 00812021 */ addu $a0, $a0, $at +.L8003ED58: +/* 03F958 8003ED58 28818000 */ slti $at, $a0, -0x8000 +/* 03F95C 8003ED5C 10200002 */ beqz $at, .L8003ED68 +/* 03F960 8003ED60 3401FFFF */ li $at, 65535 +/* 03F964 8003ED64 00812021 */ addu $a0, $a0, $at +.L8003ED68: +/* 03F968 8003ED68 28816001 */ slti $at, $a0, 0x6001 +/* 03F96C 8003ED6C 10200003 */ beqz $at, .L8003ED7C +/* 03F970 8003ED70 2881A000 */ slti $at, $a0, -0x6000 +/* 03F974 8003ED74 10200007 */ beqz $at, .L8003ED94 +/* 03F978 8003ED78 00000000 */ nop +.L8003ED7C: +/* 03F97C 8003ED7C 8CEB004C */ lw $t3, 0x4c($a3) +/* 03F980 8003ED80 240C0001 */ li $t4, 1 +/* 03F984 8003ED84 AD650000 */ sw $a1, ($t3) +/* 03F988 8003ED88 8CED004C */ lw $t5, 0x4c($a3) +/* 03F98C 8003ED8C 00000000 */ nop +/* 03F990 8003ED90 A1AC0013 */ sb $t4, 0x13($t5) +.L8003ED94: +/* 03F994 8003ED94 C7AC0028 */ lwc1 $f12, 0x28($sp) +/* 03F998 8003ED98 C7AE0030 */ lwc1 $f14, 0x30($sp) +/* 03F99C 8003ED9C AFA60020 */ sw $a2, 0x20($sp) +/* 03F9A0 8003EDA0 0C01C1D4 */ jal func_80070750 +/* 03F9A4 8003EDA4 AFA70038 */ sw $a3, 0x38($sp) +/* 03F9A8 8003EDA8 8FA70038 */ lw $a3, 0x38($sp) +/* 03F9AC 8003EDAC 8FA60020 */ lw $a2, 0x20($sp) +/* 03F9B0 8003EDB0 A4E20002 */ sh $v0, 2($a3) +/* 03F9B4 8003EDB4 A4E60000 */ sh $a2, ($a3) +.L8003EDB8: +/* 03F9B8 8003EDB8 00E02025 */ move $a0, $a3 +.L8003EDBC: +/* 03F9BC 8003EDBC 02002825 */ move $a1, $s0 +/* 03F9C0 8003EDC0 0C00FC3E */ jal func_8003F0F8 +/* 03F9C4 8003EDC4 24060137 */ li $a2, 311 +/* 03F9C8 8003EDC8 8FBF001C */ lw $ra, 0x1c($sp) +/* 03F9CC 8003EDCC 8FB00018 */ lw $s0, 0x18($sp) +/* 03F9D0 8003EDD0 03E00008 */ jr $ra +/* 03F9D4 8003EDD4 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_032760/func_8003EDD8.s b/asm/non_matchings/unknown_032760/func_8003EDD8.s new file mode 100644 index 00000000..e28f1ffd --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003EDD8.s @@ -0,0 +1,206 @@ +glabel func_8003EDD8 +/* 03F9D8 8003EDD8 27BDFF88 */ addiu $sp, $sp, -0x78 +/* 03F9DC 8003EDDC AFBF0034 */ sw $ra, 0x34($sp) +/* 03F9E0 8003EDE0 AFB10030 */ sw $s1, 0x30($sp) +/* 03F9E4 8003EDE4 AFB0002C */ sw $s0, 0x2c($sp) +/* 03F9E8 8003EDE8 AFA5007C */ sw $a1, 0x7c($sp) +/* 03F9EC 8003EDEC 8CC20000 */ lw $v0, ($a2) +/* 03F9F0 8003EDF0 00808025 */ move $s0, $a0 +/* 03F9F4 8003EDF4 104000A1 */ beqz $v0, .L8003F07C +/* 03F9F8 8003EDF8 00C08825 */ move $s1, $a2 +/* 03F9FC 8003EDFC 8C430064 */ lw $v1, 0x64($v0) +/* 03FA00 8003EE00 3C01800E */ lui $at, %hi(D_800E61FC) # $at, 0x800e +/* 03FA04 8003EE04 846E01BA */ lh $t6, 0x1ba($v1) +/* 03FA08 8003EE08 C42D61F8 */ lwc1 $f13, %lo(D_800E61F8)($at) +/* 03FA0C 8003EE0C C42C61FC */ lwc1 $f12, %lo(D_800E61FC)($at) +/* 03FA10 8003EE10 000E7843 */ sra $t7, $t6, 1 +/* 03FA14 8003EE14 A4CF0014 */ sh $t7, 0x14($a2) +/* 03FA18 8003EE18 847801BC */ lh $t8, 0x1bc($v1) +/* 03FA1C 8003EE1C 00404025 */ move $t0, $v0 +/* 03FA20 8003EE20 0018C843 */ sra $t9, $t8, 1 +/* 03FA24 8003EE24 A4D90016 */ sh $t9, 0x16($a2) +/* 03FA28 8003EE28 C486000C */ lwc1 $f6, 0xc($a0) +/* 03FA2C 8003EE2C C444000C */ lwc1 $f4, 0xc($v0) +/* 03FA30 8003EE30 00000000 */ nop +/* 03FA34 8003EE34 46062201 */ sub.s $f8, $f4, $f6 +/* 03FA38 8003EE38 E7A80068 */ swc1 $f8, 0x68($sp) +/* 03FA3C 8003EE3C C4920010 */ lwc1 $f18, 0x10($a0) +/* 03FA40 8003EE40 C44A0010 */ lwc1 $f10, 0x10($v0) +/* 03FA44 8003EE44 00000000 */ nop +/* 03FA48 8003EE48 46125101 */ sub.s $f4, $f10, $f18 +/* 03FA4C 8003EE4C C7B20068 */ lwc1 $f18, 0x68($sp) +/* 03FA50 8003EE50 E7A40064 */ swc1 $f4, 0x64($sp) +/* 03FA54 8003EE54 C4880014 */ lwc1 $f8, 0x14($a0) +/* 03FA58 8003EE58 C4460014 */ lwc1 $f6, 0x14($v0) +/* 03FA5C 8003EE5C 46129102 */ mul.s $f4, $f18, $f18 +/* 03FA60 8003EE60 46083281 */ sub.s $f10, $f6, $f8 +/* 03FA64 8003EE64 E7AA0060 */ swc1 $f10, 0x60($sp) +/* 03FA68 8003EE68 C7A60060 */ lwc1 $f6, 0x60($sp) +/* 03FA6C 8003EE6C C7AA0064 */ lwc1 $f10, 0x64($sp) +/* 03FA70 8003EE70 46063202 */ mul.s $f8, $f6, $f6 +/* 03FA74 8003EE74 46082400 */ add.s $f16, $f4, $f8 +/* 03FA78 8003EE78 460A5082 */ mul.s $f2, $f10, $f10 +/* 03FA7C 8003EE7C 460084A1 */ cvt.d.s $f18, $f16 +/* 03FA80 8003EE80 462C903C */ c.lt.d $f18, $f12 +/* 03FA84 8003EE84 00000000 */ nop +/* 03FA88 8003EE88 45000008 */ bc1f .L8003EEAC +/* 03FA8C 8003EE8C 46001386 */ mov.s $f14, $f2 +/* 03FA90 8003EE90 460011A1 */ cvt.d.s $f6, $f2 +/* 03FA94 8003EE94 4626603C */ c.lt.d $f12, $f6 +/* 03FA98 8003EE98 00000000 */ nop +/* 03FA9C 8003EE9C 45000003 */ bc1f .L8003EEAC +/* 03FAA0 8003EEA0 00000000 */ nop +/* 03FAA4 8003EEA4 10000085 */ b .L8003F0BC +/* 03FAA8 8003EEA8 ACC00000 */ sw $zero, ($a2) +.L8003EEAC: +/* 03FAAC 8003EEAC 460E8300 */ add.s $f12, $f16, $f14 +/* 03FAB0 8003EEB0 AFA30070 */ sw $v1, 0x70($sp) +/* 03FAB4 8003EEB4 0C0326B4 */ jal sqrtf +/* 03FAB8 8003EEB8 AFA80074 */ sw $t0, 0x74($sp) +/* 03FABC 8003EEBC 3C014396 */ li $at, 0x43960000 # 300.000000 +/* 03FAC0 8003EEC0 44812000 */ mtc1 $at, $f4 +/* 03FAC4 8003EEC4 8FA30070 */ lw $v1, 0x70($sp) +/* 03FAC8 8003EEC8 4600203C */ c.lt.s $f4, $f0 +/* 03FACC 8003EECC 8FA80074 */ lw $t0, 0x74($sp) +/* 03FAD0 8003EED0 45000021 */ bc1f .L8003EF58 +/* 03FAD4 8003EED4 E7A0006C */ swc1 $f0, 0x6c($sp) +/* 03FAD8 8003EED8 82250019 */ lb $a1, 0x19($s1) +/* 03FADC 8003EEDC 2401FFFF */ li $at, -1 +/* 03FAE0 8003EEE0 10A1001E */ beq $a1, $at, .L8003EF5C +/* 03FAE4 8003EEE4 3C01C1C8 */ lui $at, 0xc1c8 +/* 03FAE8 8003EEE8 8E2A0008 */ lw $t2, 8($s1) +/* 03FAEC 8003EEEC 02002025 */ move $a0, $s0 +/* 03FAF0 8003EEF0 15400019 */ bnez $t2, .L8003EF58 +/* 03FAF4 8003EEF4 27AC0068 */ addiu $t4, $sp, 0x68 +/* 03FAF8 8003EEF8 862B0016 */ lh $t3, 0x16($s1) +/* 03FAFC 8003EEFC 906601C8 */ lbu $a2, 0x1c8($v1) +/* 03FB00 8003EF00 86270014 */ lh $a3, 0x14($s1) +/* 03FB04 8003EF04 AFAB0010 */ sw $t3, 0x10($sp) +/* 03FB08 8003EF08 C628000C */ lwc1 $f8, 0xc($s1) +/* 03FB0C 8003EF0C 27AD0064 */ addiu $t5, $sp, 0x64 +/* 03FB10 8003EF10 27AE0060 */ addiu $t6, $sp, 0x60 +/* 03FB14 8003EF14 AFAE0020 */ sw $t6, 0x20($sp) +/* 03FB18 8003EF18 AFAD001C */ sw $t5, 0x1c($sp) +/* 03FB1C 8003EF1C AFA80074 */ sw $t0, 0x74($sp) +/* 03FB20 8003EF20 AFAC0018 */ sw $t4, 0x18($sp) +/* 03FB24 8003EF24 0C006557 */ jal func_8001955C +/* 03FB28 8003EF28 E7A80014 */ swc1 $f8, 0x14($sp) +/* 03FB2C 8003EF2C 3C0143FA */ li $at, 0x43FA0000 # 500.000000 +/* 03FB30 8003EF30 44817000 */ mtc1 $at, $f14 +/* 03FB34 8003EF34 C7AC0064 */ lwc1 $f12, 0x64($sp) +/* 03FB38 8003EF38 0C01C1D4 */ jal func_80070750 +/* 03FB3C 8003EF3C AFA20058 */ sw $v0, 0x58($sp) +/* 03FB40 8003EF40 8FA80074 */ lw $t0, 0x74($sp) +/* 03FB44 8003EF44 304FFFFF */ andi $t7, $v0, 0xffff +/* 03FB48 8003EF48 24180003 */ li $t8, 3 +/* 03FB4C 8003EF4C AFAF0050 */ sw $t7, 0x50($sp) +/* 03FB50 8003EF50 10000006 */ b .L8003EF6C +/* 03FB54 8003EF54 AFB80048 */ sw $t8, 0x48($sp) +.L8003EF58: +/* 03FB58 8003EF58 3C01C1C8 */ li $at, 0xC1C80000 # -25.000000 +.L8003EF5C: +/* 03FB5C 8003EF5C 44815000 */ mtc1 $at, $f10 +/* 03FB60 8003EF60 AE280008 */ sw $t0, 8($s1) +/* 03FB64 8003EF64 E62A0010 */ swc1 $f10, 0x10($s1) +/* 03FB68 8003EF68 AFA00058 */ sw $zero, 0x58($sp) +.L8003EF6C: +/* 03FB6C 8003EF6C C7AC0068 */ lwc1 $f12, 0x68($sp) +/* 03FB70 8003EF70 C7AE0060 */ lwc1 $f14, 0x60($sp) +/* 03FB74 8003EF74 0C01C1D4 */ jal func_80070750 +/* 03FB78 8003EF78 AFA80074 */ sw $t0, 0x74($sp) +/* 03FB7C 8003EF7C 86050000 */ lh $a1, ($s0) +/* 03FB80 8003EF80 24018000 */ li $at, -32768 +/* 03FB84 8003EF84 00412021 */ addu $a0, $v0, $at +/* 03FB88 8003EF88 3086FFFF */ andi $a2, $a0, 0xffff +/* 03FB8C 8003EF8C 30AAFFFF */ andi $t2, $a1, 0xffff +/* 03FB90 8003EF90 34078001 */ li $a3, 32769 +/* 03FB94 8003EF94 00CA1823 */ subu $v1, $a2, $t2 +/* 03FB98 8003EF98 8FA80074 */ lw $t0, 0x74($sp) +/* 03FB9C 8003EF9C 8FA90048 */ lw $t1, 0x48($sp) +/* 03FBA0 8003EFA0 0067082A */ slt $at, $v1, $a3 +/* 03FBA4 8003EFA4 8FAB0058 */ lw $t3, 0x58($sp) +/* 03FBA8 8003EFA8 14200003 */ bnez $at, .L8003EFB8 +/* 03FBAC 8003EFAC 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 03FBB0 8003EFB0 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 03FBB4 8003EFB4 00611821 */ addu $v1, $v1, $at +.L8003EFB8: +/* 03FBB8 8003EFB8 28618000 */ slti $at, $v1, -0x8000 +/* 03FBBC 8003EFBC 10200002 */ beqz $at, .L8003EFC8 +/* 03FBC0 8003EFC0 3401FFFF */ li $at, 65535 +/* 03FBC4 8003EFC4 00611821 */ addu $v1, $v1, $at +.L8003EFC8: +/* 03FBC8 8003EFC8 1160001B */ beqz $t3, .L8003F038 +/* 03FBCC 8003EFCC 28616001 */ slti $at, $v1, 0x6001 +/* 03FBD0 8003EFD0 8FA4007C */ lw $a0, 0x7c($sp) +/* 03FBD4 8003EFD4 86020002 */ lh $v0, 2($s0) +/* 03FBD8 8003EFD8 00640019 */ multu $v1, $a0 +/* 03FBDC 8003EFDC 3058FFFF */ andi $t8, $v0, 0xffff +/* 03FBE0 8003EFE0 00006012 */ mflo $t4 +/* 03FBE4 8003EFE4 012C6807 */ srav $t5, $t4, $t1 +/* 03FBE8 8003EFE8 00AD7021 */ addu $t6, $a1, $t5 +/* 03FBEC 8003EFEC A60E0000 */ sh $t6, ($s0) +/* 03FBF0 8003EFF0 8FAF0050 */ lw $t7, 0x50($sp) +/* 03FBF4 8003EFF4 00000000 */ nop +/* 03FBF8 8003EFF8 01F81823 */ subu $v1, $t7, $t8 +/* 03FBFC 8003EFFC 0067082A */ slt $at, $v1, $a3 +/* 03FC00 8003F000 14200003 */ bnez $at, .L8003F010 +/* 03FC04 8003F004 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 03FC08 8003F008 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 03FC0C 8003F00C 00611821 */ addu $v1, $v1, $at +.L8003F010: +/* 03FC10 8003F010 28618000 */ slti $at, $v1, -0x8000 +/* 03FC14 8003F014 10200002 */ beqz $at, .L8003F020 +/* 03FC18 8003F018 3401FFFF */ li $at, 65535 +/* 03FC1C 8003F01C 00611821 */ addu $v1, $v1, $at +.L8003F020: +/* 03FC20 8003F020 00640019 */ multu $v1, $a0 +/* 03FC24 8003F024 0000C812 */ mflo $t9 +/* 03FC28 8003F028 01395007 */ srav $t2, $t9, $t1 +/* 03FC2C 8003F02C 004A5821 */ addu $t3, $v0, $t2 +/* 03FC30 8003F030 10000012 */ b .L8003F07C +/* 03FC34 8003F034 A60B0002 */ sh $t3, 2($s0) +.L8003F038: +/* 03FC38 8003F038 10200003 */ beqz $at, .L8003F048 +/* 03FC3C 8003F03C 2861A000 */ slti $at, $v1, -0x6000 +/* 03FC40 8003F040 10200007 */ beqz $at, .L8003F060 +/* 03FC44 8003F044 00000000 */ nop +.L8003F048: +/* 03FC48 8003F048 8E0C004C */ lw $t4, 0x4c($s0) +/* 03FC4C 8003F04C 240D0001 */ li $t5, 1 +/* 03FC50 8003F050 AD880000 */ sw $t0, ($t4) +/* 03FC54 8003F054 8E0E004C */ lw $t6, 0x4c($s0) +/* 03FC58 8003F058 00000000 */ nop +/* 03FC5C 8003F05C A1CD0013 */ sb $t5, 0x13($t6) +.L8003F060: +/* 03FC60 8003F060 C7AC0064 */ lwc1 $f12, 0x64($sp) +/* 03FC64 8003F064 C7AE006C */ lwc1 $f14, 0x6c($sp) +/* 03FC68 8003F068 0C01C1D4 */ jal func_80070750 +/* 03FC6C 8003F06C AFA60054 */ sw $a2, 0x54($sp) +/* 03FC70 8003F070 8FA60054 */ lw $a2, 0x54($sp) +/* 03FC74 8003F074 A6020002 */ sh $v0, 2($s0) +/* 03FC78 8003F078 A6060000 */ sh $a2, ($s0) +.L8003F07C: +/* 03FC7C 8003F07C 02002025 */ move $a0, $s0 +/* 03FC80 8003F080 02202825 */ move $a1, $s1 +/* 03FC84 8003F084 0C00FC3E */ jal func_8003F0F8 +/* 03FC88 8003F088 24060136 */ li $a2, 310 +/* 03FC8C 8003F08C 0C0270F2 */ jal func_8009C3C8 +/* 03FC90 8003F090 00000000 */ nop +/* 03FC94 8003F094 28410003 */ slti $at, $v0, 3 +/* 03FC98 8003F098 10200009 */ beqz $at, .L8003F0C0 +/* 03FC9C 8003F09C 8FBF0034 */ lw $ra, 0x34($sp) +/* 03FCA0 8003F0A0 8E180074 */ lw $t8, 0x74($s0) +/* 03FCA4 8003F0A4 02002025 */ move $a0, $s0 +/* 03FCA8 8003F0A8 37190001 */ ori $t9, $t8, 1 +/* 03FCAC 8003F0AC AE190074 */ sw $t9, 0x74($s0) +/* 03FCB0 8003F0B0 8FA5007C */ lw $a1, 0x7c($sp) +/* 03FCB4 8003F0B4 0C02BF0F */ jal func_800AFC3C +/* 03FCB8 8003F0B8 00000000 */ nop +.L8003F0BC: +/* 03FCBC 8003F0BC 8FBF0034 */ lw $ra, 0x34($sp) +.L8003F0C0: +/* 03FCC0 8003F0C0 8FB0002C */ lw $s0, 0x2c($sp) +/* 03FCC4 8003F0C4 8FB10030 */ lw $s1, 0x30($sp) +/* 03FCC8 8003F0C8 03E00008 */ jr $ra +/* 03FCCC 8003F0CC 27BD0078 */ addiu $sp, $sp, 0x78 + diff --git a/asm/non_matchings/unknown_032760/func_8003F0D0.s b/asm/non_matchings/unknown_032760/func_8003F0D0.s new file mode 100644 index 00000000..77cebc37 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003F0D0.s @@ -0,0 +1,5 @@ +glabel func_8003F0D0 +/* 03FCD0 8003F0D0 3C018012 */ lui $at, 0x8012 +/* 03FCD4 8003F0D4 03E00008 */ jr $ra +/* 03FCD8 8003F0D8 AC20D4DC */ sw $zero, -0x2b24($at) + diff --git a/asm/non_matchings/unknown_032760/func_8003F0DC.s b/asm/non_matchings/unknown_032760/func_8003F0DC.s new file mode 100644 index 00000000..9abbc61e --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003F0DC.s @@ -0,0 +1,9 @@ +glabel func_8003F0DC +/* 03FCDC 8003F0DC 3C028012 */ lui $v0, %hi(D_8011D4DC) # $v0, 0x8012 +/* 03FCE0 8003F0E0 2442D4DC */ addiu $v0, %lo(D_8011D4DC) # addiu $v0, $v0, -0x2b24 +/* 03FCE4 8003F0E4 8C4E0000 */ lw $t6, ($v0) +/* 03FCE8 8003F0E8 00000000 */ nop +/* 03FCEC 8003F0EC 25CFFFFF */ addiu $t7, $t6, -1 +/* 03FCF0 8003F0F0 03E00008 */ jr $ra +/* 03FCF4 8003F0F4 AC4F0000 */ sw $t7, ($v0) + diff --git a/asm/non_matchings/unknown_032760/func_8003F0F8.s b/asm/non_matchings/unknown_032760/func_8003F0F8.s new file mode 100644 index 00000000..f25a004f --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003F0F8.s @@ -0,0 +1,134 @@ +glabel func_8003F0F8 +/* 03FCF8 8003F0F8 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 03FCFC 8003F0FC AFB20030 */ sw $s2, 0x30($sp) +/* 03FD00 8003F100 00809025 */ move $s2, $a0 +/* 03FD04 8003F104 AFBF0044 */ sw $ra, 0x44($sp) +/* 03FD08 8003F108 AFB60040 */ sw $s6, 0x40($sp) +/* 03FD0C 8003F10C AFB5003C */ sw $s5, 0x3c($sp) +/* 03FD10 8003F110 AFB40038 */ sw $s4, 0x38($sp) +/* 03FD14 8003F114 00A0A825 */ move $s5, $a1 +/* 03FD18 8003F118 30D6FFFF */ andi $s6, $a2, 0xffff +/* 03FD1C 8003F11C AFB30034 */ sw $s3, 0x34($sp) +/* 03FD20 8003F120 AFB1002C */ sw $s1, 0x2c($sp) +/* 03FD24 8003F124 AFB00028 */ sw $s0, 0x28($sp) +/* 03FD28 8003F128 E7B50020 */ swc1 $f21, 0x20($sp) +/* 03FD2C 8003F12C E7B40024 */ swc1 $f20, 0x24($sp) +/* 03FD30 8003F130 AFA60078 */ sw $a2, 0x78($sp) +/* 03FD34 8003F134 0000A025 */ move $s4, $zero +/* 03FD38 8003F138 0C006EA4 */ jal func_8001BA90 +/* 03FD3C 8003F13C 27A40060 */ addiu $a0, $sp, 0x60 +/* 03FD40 8003F140 8FAE0060 */ lw $t6, 0x60($sp) +/* 03FD44 8003F144 00008025 */ move $s0, $zero +/* 03FD48 8003F148 19C00030 */ blez $t6, .L8003F20C +/* 03FD4C 8003F14C 00408825 */ move $s1, $v0 +/* 03FD50 8003F150 2413FFFF */ li $s3, -1 +.L8003F154: +/* 03FD54 8003F154 8E220000 */ lw $v0, ($s1) +/* 03FD58 8003F158 8EAF0004 */ lw $t7, 4($s5) +/* 03FD5C 8003F15C 00000000 */ nop +/* 03FD60 8003F160 11E20026 */ beq $t7, $v0, .L8003F1FC +/* 03FD64 8003F164 8FA80060 */ lw $t0, 0x60($sp) +/* 03FD68 8003F168 8C580064 */ lw $t8, 0x64($v0) +/* 03FD6C 8003F16C 00000000 */ nop +/* 03FD70 8003F170 87190000 */ lh $t9, ($t8) +/* 03FD74 8003F174 00000000 */ nop +/* 03FD78 8003F178 12790020 */ beq $s3, $t9, .L8003F1FC +/* 03FD7C 8003F17C 8FA80060 */ lw $t0, 0x60($sp) +/* 03FD80 8003F180 C444000C */ lwc1 $f4, 0xc($v0) +/* 03FD84 8003F184 C646000C */ lwc1 $f6, 0xc($s2) +/* 03FD88 8003F188 C4480010 */ lwc1 $f8, 0x10($v0) +/* 03FD8C 8003F18C 46062001 */ sub.s $f0, $f4, $f6 +/* 03FD90 8003F190 C64A0010 */ lwc1 $f10, 0x10($s2) +/* 03FD94 8003F194 46000102 */ mul.s $f4, $f0, $f0 +/* 03FD98 8003F198 460A4081 */ sub.s $f2, $f8, $f10 +/* 03FD9C 8003F19C C4500014 */ lwc1 $f16, 0x14($v0) +/* 03FDA0 8003F1A0 C6520014 */ lwc1 $f18, 0x14($s2) +/* 03FDA4 8003F1A4 46021182 */ mul.s $f6, $f2, $f2 +/* 03FDA8 8003F1A8 46128381 */ sub.s $f14, $f16, $f18 +/* 03FDAC 8003F1AC 460E7282 */ mul.s $f10, $f14, $f14 +/* 03FDB0 8003F1B0 46062200 */ add.s $f8, $f4, $f6 +/* 03FDB4 8003F1B4 0C0326B4 */ jal sqrtf +/* 03FDB8 8003F1B8 460A4300 */ add.s $f12, $f8, $f10 +/* 03FDBC 8003F1BC 46000506 */ mov.s $f20, $f0 +/* 03FDC0 8003F1C0 0C00072E */ jal func_80001CB8 +/* 03FDC4 8003F1C4 32C4FFFF */ andi $a0, $s6, 0xffff +/* 03FDC8 8003F1C8 44828000 */ mtc1 $v0, $f16 +/* 03FDCC 8003F1CC 04410005 */ bgez $v0, .L8003F1E4 +/* 03FDD0 8003F1D0 468084A0 */ cvt.s.w $f18, $f16 +/* 03FDD4 8003F1D4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 03FDD8 8003F1D8 44812000 */ mtc1 $at, $f4 +/* 03FDDC 8003F1DC 00000000 */ nop +/* 03FDE0 8003F1E0 46049480 */ add.s $f18, $f18, $f4 +.L8003F1E4: +/* 03FDE4 8003F1E4 4612A03E */ c.le.s $f20, $f18 +/* 03FDE8 8003F1E8 00000000 */ nop +/* 03FDEC 8003F1EC 45000003 */ bc1f .L8003F1FC +/* 03FDF0 8003F1F0 8FA80060 */ lw $t0, 0x60($sp) +/* 03FDF4 8003F1F4 24140001 */ li $s4, 1 +/* 03FDF8 8003F1F8 8FA80060 */ lw $t0, 0x60($sp) +.L8003F1FC: +/* 03FDFC 8003F1FC 26100001 */ addiu $s0, $s0, 1 +/* 03FE00 8003F200 0208082A */ slt $at, $s0, $t0 +/* 03FE04 8003F204 1420FFD3 */ bnez $at, .L8003F154 +/* 03FE08 8003F208 26310004 */ addiu $s1, $s1, 4 +.L8003F20C: +/* 03FE0C 8003F20C 1280001D */ beqz $s4, .L8003F284 +/* 03FE10 8003F210 00000000 */ nop +/* 03FE14 8003F214 8EA4001C */ lw $a0, 0x1c($s5) +/* 03FE18 8003F218 3C108012 */ lui $s0, %hi(D_8011D4DC) # $s0, 0x8012 +/* 03FE1C 8003F21C 14800012 */ bnez $a0, .L8003F268 +/* 03FE20 8003F220 2610D4DC */ addiu $s0, %lo(D_8011D4DC) # addiu $s0, $s0, -0x2b24 +/* 03FE24 8003F224 8E090000 */ lw $t1, ($s0) +/* 03FE28 8003F228 32C4FFFF */ andi $a0, $s6, 0xffff +/* 03FE2C 8003F22C 29210008 */ slti $at, $t1, 8 +/* 03FE30 8003F230 10200021 */ beqz $at, .L8003F2B8 +/* 03FE34 8003F234 240A0001 */ li $t2, 1 +/* 03FE38 8003F238 8E45000C */ lw $a1, 0xc($s2) +/* 03FE3C 8003F23C 8E460010 */ lw $a2, 0x10($s2) +/* 03FE40 8003F240 8E470014 */ lw $a3, 0x14($s2) +/* 03FE44 8003F244 26AB001C */ addiu $t3, $s5, 0x1c +/* 03FE48 8003F248 AFAB0014 */ sw $t3, 0x14($sp) +/* 03FE4C 8003F24C 0C002556 */ jal func_80009558 +/* 03FE50 8003F250 AFAA0010 */ sw $t2, 0x10($sp) +/* 03FE54 8003F254 8E0C0000 */ lw $t4, ($s0) +/* 03FE58 8003F258 00000000 */ nop +/* 03FE5C 8003F25C 258D0001 */ addiu $t5, $t4, 1 +/* 03FE60 8003F260 10000015 */ b .L8003F2B8 +/* 03FE64 8003F264 AE0D0000 */ sw $t5, ($s0) +.L8003F268: +/* 03FE68 8003F268 8E45000C */ lw $a1, 0xc($s2) +/* 03FE6C 8003F26C 8E460010 */ lw $a2, 0x10($s2) +/* 03FE70 8003F270 8E470014 */ lw $a3, 0x14($s2) +/* 03FE74 8003F274 0C0025B6 */ jal func_800096D8 +/* 03FE78 8003F278 00000000 */ nop +/* 03FE7C 8003F27C 1000000F */ b .L8003F2BC +/* 03FE80 8003F280 8FBF0044 */ lw $ra, 0x44($sp) +.L8003F284: +/* 03FE84 8003F284 8EA4001C */ lw $a0, 0x1c($s5) +/* 03FE88 8003F288 00000000 */ nop +/* 03FE8C 8003F28C 1080000B */ beqz $a0, .L8003F2BC +/* 03FE90 8003F290 8FBF0044 */ lw $ra, 0x44($sp) +/* 03FE94 8003F294 0C0025BE */ jal func_800096F8 +/* 03FE98 8003F298 00000000 */ nop +/* 03FE9C 8003F29C 3C108012 */ lui $s0, %hi(D_8011D4DC) # $s0, 0x8012 +/* 03FEA0 8003F2A0 2610D4DC */ addiu $s0, %lo(D_8011D4DC) # addiu $s0, $s0, -0x2b24 +/* 03FEA4 8003F2A4 AEA0001C */ sw $zero, 0x1c($s5) +/* 03FEA8 8003F2A8 8E0E0000 */ lw $t6, ($s0) +/* 03FEAC 8003F2AC 00000000 */ nop +/* 03FEB0 8003F2B0 25CFFFFF */ addiu $t7, $t6, -1 +/* 03FEB4 8003F2B4 AE0F0000 */ sw $t7, ($s0) +.L8003F2B8: +/* 03FEB8 8003F2B8 8FBF0044 */ lw $ra, 0x44($sp) +.L8003F2BC: +/* 03FEBC 8003F2BC C7B50020 */ lwc1 $f21, 0x20($sp) +/* 03FEC0 8003F2C0 C7B40024 */ lwc1 $f20, 0x24($sp) +/* 03FEC4 8003F2C4 8FB00028 */ lw $s0, 0x28($sp) +/* 03FEC8 8003F2C8 8FB1002C */ lw $s1, 0x2c($sp) +/* 03FECC 8003F2CC 8FB20030 */ lw $s2, 0x30($sp) +/* 03FED0 8003F2D0 8FB30034 */ lw $s3, 0x34($sp) +/* 03FED4 8003F2D4 8FB40038 */ lw $s4, 0x38($sp) +/* 03FED8 8003F2D8 8FB5003C */ lw $s5, 0x3c($sp) +/* 03FEDC 8003F2DC 8FB60040 */ lw $s6, 0x40($sp) +/* 03FEE0 8003F2E0 03E00008 */ jr $ra +/* 03FEE4 8003F2E4 27BD0070 */ addiu $sp, $sp, 0x70 + diff --git a/asm/non_matchings/unknown_032760/func_8003F2E8.s b/asm/non_matchings/unknown_032760/func_8003F2E8.s new file mode 100644 index 00000000..988deaea --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003F2E8.s @@ -0,0 +1,638 @@ +glabel func_8003F2E8 +/* 03FEE8 8003F2E8 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 03FEEC 8003F2EC AFBF002C */ sw $ra, 0x2c($sp) +/* 03FEF0 8003F2F0 AFB00028 */ sw $s0, 0x28($sp) +/* 03FEF4 8003F2F4 AFA50074 */ sw $a1, 0x74($sp) +/* 03FEF8 8003F2F8 8C8E0064 */ lw $t6, 0x64($a0) +/* 03FEFC 8003F2FC 44852000 */ mtc1 $a1, $f4 +/* 03FF00 8003F300 AFAE0040 */ sw $t6, 0x40($sp) +/* 03FF04 8003F304 8DD80004 */ lw $t8, 4($t6) +/* 03FF08 8003F308 3C0B8000 */ lui $t3, %hi(D_80000300) # $t3, 0x8000 +/* 03FF0C 8003F30C 468020A0 */ cvt.s.w $f2, $f4 +/* 03FF10 8003F310 8D6B0300 */ lw $t3, %lo(D_80000300)($t3) +/* 03FF14 8003F314 8F190064 */ lw $t9, 0x64($t8) +/* 03FF18 8003F318 00808025 */ move $s0, $a0 +/* 03FF1C 8003F31C 46001006 */ mov.s $f0, $f2 +/* 03FF20 8003F320 15600007 */ bnez $t3, .L8003F340 +/* 03FF24 8003F324 AFB90064 */ sw $t9, 0x64($sp) +/* 03FF28 8003F328 3C01800E */ lui $at, %hi(D_800E6204) # $at, 0x800e +/* 03FF2C 8003F32C C4296200 */ lwc1 $f9, %lo(D_800E6200)($at) +/* 03FF30 8003F330 C4286204 */ lwc1 $f8, %lo(D_800E6204)($at) +/* 03FF34 8003F334 460011A1 */ cvt.d.s $f6, $f2 +/* 03FF38 8003F338 46283282 */ mul.d $f10, $f6, $f8 +/* 03FF3C 8003F33C 46205020 */ cvt.s.d $f0, $f10 +.L8003F340: +/* 03FF40 8003F340 26080078 */ addiu $t0, $s0, 0x78 +/* 03FF44 8003F344 910C0004 */ lbu $t4, 4($t0) +/* 03FF48 8003F348 00000000 */ nop +/* 03FF4C 8003F34C 15800081 */ bnez $t4, .L8003F554 +/* 03FF50 8003F350 8FAA0040 */ lw $t2, 0x40($sp) +/* 03FF54 8003F354 C612001C */ lwc1 $f18, 0x1c($s0) +/* 03FF58 8003F358 C610000C */ lwc1 $f16, 0xc($s0) +/* 03FF5C 8003F35C 46009102 */ mul.s $f4, $f18, $f0 +/* 03FF60 8003F360 3C014110 */ li $at, 0x41100000 # 9.000000 +/* 03FF64 8003F364 2605000C */ addiu $a1, $s0, 0xc +/* 03FF68 8003F368 24040001 */ li $a0, 1 +/* 03FF6C 8003F36C 46048180 */ add.s $f6, $f16, $f4 +/* 03FF70 8003F370 27A60058 */ addiu $a2, $sp, 0x58 +/* 03FF74 8003F374 E7A60058 */ swc1 $f6, 0x58($sp) +/* 03FF78 8003F378 C60A0020 */ lwc1 $f10, 0x20($s0) +/* 03FF7C 8003F37C C6080010 */ lwc1 $f8, 0x10($s0) +/* 03FF80 8003F380 46005482 */ mul.s $f18, $f10, $f0 +/* 03FF84 8003F384 2407FFFF */ li $a3, -1 +/* 03FF88 8003F388 46124400 */ add.s $f16, $f8, $f18 +/* 03FF8C 8003F38C 44819000 */ mtc1 $at, $f18 +/* 03FF90 8003F390 E7B0005C */ swc1 $f16, 0x5c($sp) +/* 03FF94 8003F394 C6060024 */ lwc1 $f6, 0x24($s0) +/* 03FF98 8003F398 C6040014 */ lwc1 $f4, 0x14($s0) +/* 03FF9C 8003F39C 46003282 */ mul.s $f10, $f6, $f0 +/* 03FFA0 8003F3A0 E7A00050 */ swc1 $f0, 0x50($sp) +/* 03FFA4 8003F3A4 AFA80038 */ sw $t0, 0x38($sp) +/* 03FFA8 8003F3A8 AFA50034 */ sw $a1, 0x34($sp) +/* 03FFAC 8003F3AC 460A2200 */ add.s $f8, $f4, $f10 +/* 03FFB0 8003F3B0 E7B20054 */ swc1 $f18, 0x54($sp) +/* 03FFB4 8003F3B4 0C00C44C */ jal func_80031130 +/* 03FFB8 8003F3B8 E7A80060 */ swc1 $f8, 0x60($sp) +/* 03FFBC 8003F3BC 240DFFFF */ li $t5, -1 +/* 03FFC0 8003F3C0 8FA40034 */ lw $a0, 0x34($sp) +/* 03FFC4 8003F3C4 240E0001 */ li $t6, 1 +/* 03FFC8 8003F3C8 27AF004C */ addiu $t7, $sp, 0x4c +/* 03FFCC 8003F3CC AFA0004C */ sw $zero, 0x4c($sp) +/* 03FFD0 8003F3D0 A3AD0047 */ sb $t5, 0x47($sp) +/* 03FFD4 8003F3D4 AFAF0014 */ sw $t7, 0x14($sp) +/* 03FFD8 8003F3D8 AFAE0010 */ sw $t6, 0x10($sp) +/* 03FFDC 8003F3DC 27A50058 */ addiu $a1, $sp, 0x58 +/* 03FFE0 8003F3E0 27A60054 */ addiu $a2, $sp, 0x54 +/* 03FFE4 8003F3E4 0C00C580 */ jal func_80031600 +/* 03FFE8 8003F3E8 27A70047 */ addiu $a3, $sp, 0x47 +/* 03FFEC 8003F3EC C7B00058 */ lwc1 $f16, 0x58($sp) +/* 03FFF0 8003F3F0 C606000C */ lwc1 $f6, 0xc($s0) +/* 03FFF4 8003F3F4 C7A00050 */ lwc1 $f0, 0x50($sp) +/* 03FFF8 8003F3F8 46068101 */ sub.s $f4, $f16, $f6 +/* 03FFFC 8003F3FC 8FA80038 */ lw $t0, 0x38($sp) +/* 040000 8003F400 46002283 */ div.s $f10, $f4, $f0 +/* 040004 8003F404 C6120010 */ lwc1 $f18, 0x10($s0) +/* 040008 8003F408 240B0001 */ li $t3, 1 +/* 04000C 8003F40C 02002025 */ move $a0, $s0 +/* 040010 8003F410 27A50054 */ addiu $a1, $sp, 0x54 +/* 040014 8003F414 00003025 */ move $a2, $zero +/* 040018 8003F418 24070001 */ li $a3, 1 +/* 04001C 8003F41C E60A001C */ swc1 $f10, 0x1c($s0) +/* 040020 8003F420 C7A8005C */ lwc1 $f8, 0x5c($sp) +/* 040024 8003F424 C60A0014 */ lwc1 $f10, 0x14($s0) +/* 040028 8003F428 46124401 */ sub.s $f16, $f8, $f18 +/* 04002C 8003F42C 00000000 */ nop +/* 040030 8003F430 46008183 */ div.s $f6, $f16, $f0 +/* 040034 8003F434 E6060020 */ swc1 $f6, 0x20($s0) +/* 040038 8003F438 C7A40060 */ lwc1 $f4, 0x60($sp) +/* 04003C 8003F43C 00000000 */ nop +/* 040040 8003F440 460A2201 */ sub.s $f8, $f4, $f10 +/* 040044 8003F444 00000000 */ nop +/* 040048 8003F448 46004483 */ div.s $f18, $f8, $f0 +/* 04004C 8003F44C E6120024 */ swc1 $f18, 0x24($s0) +/* 040050 8003F450 C7B00058 */ lwc1 $f16, 0x58($sp) +/* 040054 8003F454 00000000 */ nop +/* 040058 8003F458 E610000C */ swc1 $f16, 0xc($s0) +/* 04005C 8003F45C C7A6005C */ lwc1 $f6, 0x5c($sp) +/* 040060 8003F460 00000000 */ nop +/* 040064 8003F464 E6060010 */ swc1 $f6, 0x10($s0) +/* 040068 8003F468 C7A40060 */ lwc1 $f4, 0x60($sp) +/* 04006C 8003F46C 00000000 */ nop +/* 040070 8003F470 E6040014 */ swc1 $f4, 0x14($s0) +/* 040074 8003F474 8FB8004C */ lw $t8, 0x4c($sp) +/* 040078 8003F478 8FB90064 */ lw $t9, 0x64($sp) +/* 04007C 8003F47C 17000005 */ bnez $t8, .L8003F494 +/* 040080 8003F480 00000000 */ nop +/* 040084 8003F484 832A01D6 */ lb $t2, 0x1d6($t9) +/* 040088 8003F488 24010002 */ li $at, 2 +/* 04008C 8003F48C 15410013 */ bne $t2, $at, .L8003F4DC +/* 040090 8003F490 00000000 */ nop +.L8003F494: +/* 040094 8003F494 44805000 */ mtc1 $zero, $f10 +/* 040098 8003F498 44804000 */ mtc1 $zero, $f8 +/* 04009C 8003F49C E60A001C */ swc1 $f10, 0x1c($s0) +/* 0400A0 8003F4A0 E6080024 */ swc1 $f8, 0x24($s0) +/* 0400A4 8003F4A4 A10B0004 */ sb $t3, 4($t0) +/* 0400A8 8003F4A8 A1000005 */ sb $zero, 5($t0) +/* 0400AC 8003F4AC A5000006 */ sh $zero, 6($t0) +/* 0400B0 8003F4B0 8FAC0040 */ lw $t4, 0x40($sp) +/* 0400B4 8003F4B4 2401000A */ li $at, 10 +/* 0400B8 8003F4B8 918D0018 */ lbu $t5, 0x18($t4) +/* 0400BC 8003F4BC 00000000 */ nop +/* 0400C0 8003F4C0 15A10006 */ bne $t5, $at, .L8003F4DC +/* 0400C4 8003F4C4 3C014180 */ li $at, 0x41800000 # 16.000000 +/* 0400C8 8003F4C8 44818000 */ mtc1 $at, $f16 +/* 0400CC 8003F4CC C6120010 */ lwc1 $f18, 0x10($s0) +/* 0400D0 8003F4D0 00000000 */ nop +/* 0400D4 8003F4D4 46109180 */ add.s $f6, $f18, $f16 +/* 0400D8 8003F4D8 E6060010 */ swc1 $f6, 0x10($s0) +.L8003F4DC: +/* 0400DC 8003F4DC 3C01800E */ lui $at, %hi(D_800E6208) # $at, 0x800e +/* 0400E0 8003F4E0 C4246208 */ lwc1 $f4, %lo(D_800E6208)($at) +/* 0400E4 8003F4E4 AFA80038 */ sw $t0, 0x38($sp) +/* 0400E8 8003F4E8 0C00AE6F */ jal func_8002B9BC +/* 0400EC 8003F4EC E7A40054 */ swc1 $f4, 0x54($sp) +/* 0400F0 8003F4F0 8FA80038 */ lw $t0, 0x38($sp) +/* 0400F4 8003F4F4 10400017 */ beqz $v0, .L8003F554 +/* 0400F8 8003F4F8 8FAA0040 */ lw $t2, 0x40($sp) +/* 0400FC 8003F4FC C60A0010 */ lwc1 $f10, 0x10($s0) +/* 040100 8003F500 C7A80054 */ lwc1 $f8, 0x54($sp) +/* 040104 8003F504 240E0001 */ li $t6, 1 +/* 040108 8003F508 4608503C */ c.lt.s $f10, $f8 +/* 04010C 8003F50C 240F0001 */ li $t7, 1 +/* 040110 8003F510 45000010 */ bc1f .L8003F554 +/* 040114 8003F514 8FAA0040 */ lw $t2, 0x40($sp) +/* 040118 8003F518 A10E0004 */ sb $t6, 4($t0) +/* 04011C 8003F51C A10F0005 */ sb $t7, 5($t0) +/* 040120 8003F520 A5000006 */ sh $zero, 6($t0) +/* 040124 8003F524 8FB80040 */ lw $t8, 0x40($sp) +/* 040128 8003F528 2401000A */ li $at, 10 +/* 04012C 8003F52C 93190018 */ lbu $t9, 0x18($t8) +/* 040130 8003F530 00000000 */ nop +/* 040134 8003F534 17210006 */ bne $t9, $at, .L8003F550 +/* 040138 8003F538 3C014180 */ li $at, 0x41800000 # 16.000000 +/* 04013C 8003F53C 44818000 */ mtc1 $at, $f16 +/* 040140 8003F540 C6120010 */ lwc1 $f18, 0x10($s0) +/* 040144 8003F544 00000000 */ nop +/* 040148 8003F548 46109180 */ add.s $f6, $f18, $f16 +/* 04014C 8003F54C E6060010 */ swc1 $f6, 0x10($s0) +.L8003F550: +/* 040150 8003F550 8FAA0040 */ lw $t2, 0x40($sp) +.L8003F554: +/* 040154 8003F554 24010003 */ li $at, 3 +/* 040158 8003F558 914B0018 */ lbu $t3, 0x18($t2) +/* 04015C 8003F55C 00000000 */ nop +/* 040160 8003F560 1561003F */ bne $t3, $at, .L8003F660 +/* 040164 8003F564 8FAD0040 */ lw $t5, 0x40($sp) +/* 040168 8003F568 91020004 */ lbu $v0, 4($t0) +/* 04016C 8003F56C 24010001 */ li $at, 1 +/* 040170 8003F570 1040003B */ beqz $v0, .L8003F660 +/* 040174 8003F574 8FAD0040 */ lw $t5, 0x40($sp) +/* 040178 8003F578 1441000D */ bne $v0, $at, .L8003F5B0 +/* 04017C 8003F57C 00000000 */ nop +/* 040180 8003F580 850C0006 */ lh $t4, 6($t0) +/* 040184 8003F584 8FAD0074 */ lw $t5, 0x74($sp) +/* 040188 8003F588 2418000C */ li $t8, 12 +/* 04018C 8003F58C 018D7021 */ addu $t6, $t4, $t5 +/* 040190 8003F590 A50E0006 */ sh $t6, 6($t0) +/* 040194 8003F594 850F0006 */ lh $t7, 6($t0) +/* 040198 8003F598 00000000 */ nop +/* 04019C 8003F59C 29E1000D */ slti $at, $t7, 0xd +/* 0401A0 8003F5A0 14200012 */ bnez $at, .L8003F5EC +/* 0401A4 8003F5A4 8FAE0064 */ lw $t6, 0x64($sp) +/* 0401A8 8003F5A8 1000000F */ b .L8003F5E8 +/* 0401AC 8003F5AC A5180006 */ sh $t8, 6($t0) +.L8003F5B0: +/* 0401B0 8003F5B0 85190006 */ lh $t9, 6($t0) +/* 0401B4 8003F5B4 8FAA0074 */ lw $t2, 0x74($sp) +/* 0401B8 8003F5B8 240D0001 */ li $t5, 1 +/* 0401BC 8003F5BC 032A5823 */ subu $t3, $t9, $t2 +/* 0401C0 8003F5C0 A50B0006 */ sh $t3, 6($t0) +/* 0401C4 8003F5C4 850C0006 */ lh $t4, 6($t0) +/* 0401C8 8003F5C8 02002025 */ move $a0, $s0 +/* 0401CC 8003F5CC 1D800007 */ bgtz $t4, .L8003F5EC +/* 0401D0 8003F5D0 8FAE0064 */ lw $t6, 0x64($sp) +/* 0401D4 8003F5D4 A50D0006 */ sh $t5, 6($t0) +/* 0401D8 8003F5D8 0C003FEE */ jal func_8000FFB8 +/* 0401DC 8003F5DC AFA80038 */ sw $t0, 0x38($sp) +/* 0401E0 8003F5E0 8FA80038 */ lw $t0, 0x38($sp) +/* 0401E4 8003F5E4 00000000 */ nop +.L8003F5E8: +/* 0401E8 8003F5E8 8FAE0064 */ lw $t6, 0x64($sp) +.L8003F5EC: +/* 0401EC 8003F5EC 24010002 */ li $at, 2 +/* 0401F0 8003F5F0 81CF01D6 */ lb $t7, 0x1d6($t6) +/* 0401F4 8003F5F4 00000000 */ nop +/* 0401F8 8003F5F8 11E10019 */ beq $t7, $at, .L8003F660 +/* 0401FC 8003F5FC 8FAD0040 */ lw $t5, 0x40($sp) +/* 040200 8003F600 91180005 */ lbu $t8, 5($t0) +/* 040204 8003F604 85020006 */ lh $v0, 6($t0) +/* 040208 8003F608 13000009 */ beqz $t8, .L8003F630 +/* 04020C 8003F60C 00000000 */ nop +/* 040210 8003F610 44822000 */ mtc1 $v0, $f4 +/* 040214 8003F614 3C01800E */ lui $at, %hi(D_800E620C) # $at, 0x800e +/* 040218 8003F618 468022A0 */ cvt.s.w $f10, $f4 +/* 04021C 8003F61C C428620C */ lwc1 $f8, %lo(D_800E620C)($at) +/* 040220 8003F620 8E190058 */ lw $t9, 0x58($s0) +/* 040224 8003F624 46085482 */ mul.s $f18, $f10, $f8 +/* 040228 8003F628 10000008 */ b .L8003F64C +/* 04022C 8003F62C E7320000 */ swc1 $f18, ($t9) +.L8003F630: +/* 040230 8003F630 44828000 */ mtc1 $v0, $f16 +/* 040234 8003F634 3C01800E */ lui $at, %hi(D_800E6210) # $at, 0x800e +/* 040238 8003F638 468081A0 */ cvt.s.w $f6, $f16 +/* 04023C 8003F63C C4246210 */ lwc1 $f4, %lo(D_800E6210)($at) +/* 040240 8003F640 8E0A0050 */ lw $t2, 0x50($s0) +/* 040244 8003F644 46043282 */ mul.s $f10, $f6, $f4 +/* 040248 8003F648 E54A0000 */ swc1 $f10, ($t2) +.L8003F64C: +/* 04024C 8003F64C 860B0006 */ lh $t3, 6($s0) +/* 040250 8003F650 00000000 */ nop +/* 040254 8003F654 356C1000 */ ori $t4, $t3, 0x1000 +/* 040258 8003F658 A60C0006 */ sh $t4, 6($s0) +/* 04025C 8003F65C 8FAD0040 */ lw $t5, 0x40($sp) +.L8003F660: +/* 040260 8003F660 2401000A */ li $at, 10 +/* 040264 8003F664 91AE0018 */ lbu $t6, 0x18($t5) +/* 040268 8003F668 00000000 */ nop +/* 04026C 8003F66C 15C10076 */ bne $t6, $at, .L8003F848 +/* 040270 8003F670 00000000 */ nop +/* 040274 8003F674 8DAF0000 */ lw $t7, ($t5) +/* 040278 8003F678 00000000 */ nop +/* 04027C 8003F67C 11E00013 */ beqz $t7, .L8003F6CC +/* 040280 8003F680 00000000 */ nop +/* 040284 8003F684 44800000 */ mtc1 $zero, $f0 +/* 040288 8003F688 00000000 */ nop +/* 04028C 8003F68C E600000C */ swc1 $f0, 0xc($s0) +/* 040290 8003F690 E6000010 */ swc1 $f0, 0x10($s0) +/* 040294 8003F694 E6000014 */ swc1 $f0, 0x14($s0) +/* 040298 8003F698 0C004558 */ jal func_80011560 +/* 04029C 8003F69C AFA80038 */ sw $t0, 0x38($sp) +/* 0402A0 8003F6A0 8FB80040 */ lw $t8, 0x40($sp) +/* 0402A4 8003F6A4 02002025 */ move $a0, $s0 +/* 0402A8 8003F6A8 8F020000 */ lw $v0, ($t8) +/* 0402AC 8003F6AC 00000000 */ nop +/* 0402B0 8003F6B0 8C45000C */ lw $a1, 0xc($v0) +/* 0402B4 8003F6B4 8C460010 */ lw $a2, 0x10($v0) +/* 0402B8 8003F6B8 8C470014 */ lw $a3, 0x14($v0) +/* 0402BC 8003F6BC 0C00455C */ jal func_80011570 +/* 0402C0 8003F6C0 00000000 */ nop +/* 0402C4 8003F6C4 8FA80038 */ lw $t0, 0x38($sp) +/* 0402C8 8003F6C8 00000000 */ nop +.L8003F6CC: +/* 0402CC 8003F6CC 91020004 */ lbu $v0, 4($t0) +/* 0402D0 8003F6D0 24010001 */ li $at, 1 +/* 0402D4 8003F6D4 10410003 */ beq $v0, $at, .L8003F6E4 +/* 0402D8 8003F6D8 24010002 */ li $at, 2 +/* 0402DC 8003F6DC 1441000C */ bne $v0, $at, .L8003F710 +/* 0402E0 8003F6E0 00000000 */ nop +.L8003F6E4: +/* 0402E4 8003F6E4 85190006 */ lh $t9, 6($t0) +/* 0402E8 8003F6E8 8FAA0074 */ lw $t2, 0x74($sp) +/* 0402EC 8003F6EC 240E0014 */ li $t6, 20 +/* 0402F0 8003F6F0 032A5821 */ addu $t3, $t9, $t2 +/* 0402F4 8003F6F4 A50B0006 */ sh $t3, 6($t0) +/* 0402F8 8003F6F8 850C0006 */ lh $t4, 6($t0) +/* 0402FC 8003F6FC 00000000 */ nop +/* 040300 8003F700 29810015 */ slti $at, $t4, 0x15 +/* 040304 8003F704 14200002 */ bnez $at, .L8003F710 +/* 040308 8003F708 00000000 */ nop +/* 04030C 8003F70C A50E0006 */ sh $t6, 6($t0) +.L8003F710: +/* 040310 8003F710 910D0004 */ lbu $t5, 4($t0) +/* 040314 8003F714 24010002 */ li $at, 2 +/* 040318 8003F718 15A10020 */ bne $t5, $at, .L8003F79C +/* 04031C 8003F71C 00000000 */ nop +/* 040320 8003F720 910F0005 */ lbu $t7, 5($t0) +/* 040324 8003F724 8FB80074 */ lw $t8, 0x74($sp) +/* 040328 8003F728 240B0003 */ li $t3, 3 +/* 04032C 8003F72C 01F8C821 */ addu $t9, $t7, $t8 +/* 040330 8003F730 332A00FF */ andi $t2, $t9, 0xff +/* 040334 8003F734 29410079 */ slti $at, $t2, 0x79 +/* 040338 8003F738 14200018 */ bnez $at, .L8003F79C +/* 04033C 8003F73C A1190005 */ sb $t9, 5($t0) +/* 040340 8003F740 A10B0004 */ sb $t3, 4($t0) +/* 040344 8003F744 8FAC0040 */ lw $t4, 0x40($sp) +/* 040348 8003F748 00000000 */ nop +/* 04034C 8003F74C 8D84001C */ lw $a0, 0x1c($t4) +/* 040350 8003F750 00000000 */ nop +/* 040354 8003F754 10800006 */ beqz $a0, .L8003F770 +/* 040358 8003F758 00000000 */ nop +/* 04035C 8003F75C 0C0025BE */ jal func_800096F8 +/* 040360 8003F760 AFA80038 */ sw $t0, 0x38($sp) +/* 040364 8003F764 8FAE0040 */ lw $t6, 0x40($sp) +/* 040368 8003F768 8FA80038 */ lw $t0, 0x38($sp) +/* 04036C 8003F76C ADC0001C */ sw $zero, 0x1c($t6) +.L8003F770: +/* 040370 8003F770 8E05000C */ lw $a1, 0xc($s0) +/* 040374 8003F774 8E060010 */ lw $a2, 0x10($s0) +/* 040378 8003F778 8E070014 */ lw $a3, 0x14($s0) +/* 04037C 8003F77C 240D0004 */ li $t5, 4 +/* 040380 8003F780 AFAD0010 */ sw $t5, 0x10($sp) +/* 040384 8003F784 AFA80038 */ sw $t0, 0x38($sp) +/* 040388 8003F788 AFA00014 */ sw $zero, 0x14($sp) +/* 04038C 8003F78C 0C002556 */ jal func_80009558 +/* 040390 8003F790 24040155 */ li $a0, 341 +/* 040394 8003F794 8FA80038 */ lw $t0, 0x38($sp) +/* 040398 8003F798 00000000 */ nop +.L8003F79C: +/* 04039C 8003F79C 910F0004 */ lbu $t7, 4($t0) +/* 0403A0 8003F7A0 24010003 */ li $at, 3 +/* 0403A4 8003F7A4 15E10018 */ bne $t7, $at, .L8003F808 +/* 0403A8 8003F7A8 24180001 */ li $t8, 1 +/* 0403AC 8003F7AC AE180074 */ sw $t8, 0x74($s0) +/* 0403B0 8003F7B0 8FA50074 */ lw $a1, 0x74($sp) +/* 0403B4 8003F7B4 AFA80038 */ sw $t0, 0x38($sp) +/* 0403B8 8003F7B8 0C02BF0F */ jal func_800AFC3C +/* 0403BC 8003F7BC 02002025 */ move $a0, $s0 +/* 0403C0 8003F7C0 86190006 */ lh $t9, 6($s0) +/* 0403C4 8003F7C4 8FA80038 */ lw $t0, 0x38($sp) +/* 0403C8 8003F7C8 372A4000 */ ori $t2, $t9, 0x4000 +/* 0403CC 8003F7CC A60A0006 */ sh $t2, 6($s0) +/* 0403D0 8003F7D0 8FAC0074 */ lw $t4, 0x74($sp) +/* 0403D4 8003F7D4 850B0006 */ lh $t3, 6($t0) +/* 0403D8 8003F7D8 240F0001 */ li $t7, 1 +/* 0403DC 8003F7DC 016C7023 */ subu $t6, $t3, $t4 +/* 0403E0 8003F7E0 A50E0006 */ sh $t6, 6($t0) +/* 0403E4 8003F7E4 850D0006 */ lh $t5, 6($t0) +/* 0403E8 8003F7E8 02002025 */ move $a0, $s0 +/* 0403EC 8003F7EC 1DA00006 */ bgtz $t5, .L8003F808 +/* 0403F0 8003F7F0 00000000 */ nop +/* 0403F4 8003F7F4 A50F0006 */ sh $t7, 6($t0) +/* 0403F8 8003F7F8 0C003FEE */ jal func_8000FFB8 +/* 0403FC 8003F7FC AFA80038 */ sw $t0, 0x38($sp) +/* 040400 8003F800 8FA80038 */ lw $t0, 0x38($sp) +/* 040404 8003F804 00000000 */ nop +.L8003F808: +/* 040408 8003F808 91180004 */ lbu $t8, 4($t0) +/* 04040C 8003F80C 00000000 */ nop +/* 040410 8003F810 13000009 */ beqz $t8, .L8003F838 +/* 040414 8003F814 8FAB0074 */ lw $t3, 0x74($sp) +/* 040418 8003F818 85190006 */ lh $t9, 6($t0) +/* 04041C 8003F81C 3C01800E */ lui $at, %hi(D_800E6214) # $at, 0x800e +/* 040420 8003F820 44994000 */ mtc1 $t9, $f8 +/* 040424 8003F824 C4306214 */ lwc1 $f16, %lo(D_800E6214)($at) +/* 040428 8003F828 468044A0 */ cvt.s.w $f18, $f8 +/* 04042C 8003F82C 46109182 */ mul.s $f6, $f18, $f16 +/* 040430 8003F830 E6060008 */ swc1 $f6, 8($s0) +/* 040434 8003F834 8FAB0074 */ lw $t3, 0x74($sp) +.L8003F838: +/* 040438 8003F838 860A0018 */ lh $t2, 0x18($s0) +/* 04043C 8003F83C 000B6100 */ sll $t4, $t3, 4 +/* 040440 8003F840 014C7021 */ addu $t6, $t2, $t4 +/* 040444 8003F844 A60E0018 */ sh $t6, 0x18($s0) +.L8003F848: +/* 040448 8003F848 910D0004 */ lbu $t5, 4($t0) +/* 04044C 8003F84C 8FAF0064 */ lw $t7, 0x64($sp) +/* 040450 8003F850 29A10002 */ slti $at, $t5, 2 +/* 040454 8003F854 102000F8 */ beqz $at, .L8003FC38 +/* 040458 8003F858 8FBF002C */ lw $ra, 0x2c($sp) +/* 04045C 8003F85C 81F801D6 */ lb $t8, 0x1d6($t7) +/* 040460 8003F860 24010002 */ li $at, 2 +/* 040464 8003F864 13010015 */ beq $t8, $at, .L8003F8BC +/* 040468 8003F868 2405003C */ li $a1, 60 +/* 04046C 8003F86C 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 040470 8003F870 44816000 */ mtc1 $at, $f12 +/* 040474 8003F874 C6040020 */ lwc1 $f4, 0x20($s0) +/* 040478 8003F878 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 04047C 8003F87C 44814800 */ mtc1 $at, $f9 +/* 040480 8003F880 44804000 */ mtc1 $zero, $f8 +/* 040484 8003F884 C600001C */ lwc1 $f0, 0x1c($s0) +/* 040488 8003F888 C6020024 */ lwc1 $f2, 0x24($s0) +/* 04048C 8003F88C 460022A1 */ cvt.d.s $f10, $f4 +/* 040490 8003F890 46285481 */ sub.d $f18, $f10, $f8 +/* 040494 8003F894 24050022 */ li $a1, 34 +/* 040498 8003F898 460C0183 */ div.s $f6, $f0, $f12 +/* 04049C 8003F89C 46209420 */ cvt.s.d $f16, $f18 +/* 0404A0 8003F8A0 E6100020 */ swc1 $f16, 0x20($s0) +/* 0404A4 8003F8A4 460C1283 */ div.s $f10, $f2, $f12 +/* 0404A8 8003F8A8 46060101 */ sub.s $f4, $f0, $f6 +/* 0404AC 8003F8AC E604001C */ swc1 $f4, 0x1c($s0) +/* 0404B0 8003F8B0 460A1201 */ sub.s $f8, $f2, $f10 +/* 0404B4 8003F8B4 10000009 */ b .L8003F8DC +/* 0404B8 8003F8B8 E6080024 */ swc1 $f8, 0x24($s0) +.L8003F8BC: +/* 0404BC 8003F8BC 44809000 */ mtc1 $zero, $f18 +/* 0404C0 8003F8C0 86190018 */ lh $t9, 0x18($s0) +/* 0404C4 8003F8C4 E6120020 */ swc1 $f18, 0x20($s0) +/* 0404C8 8003F8C8 8FAB0074 */ lw $t3, 0x74($sp) +/* 0404CC 8003F8CC 00000000 */ nop +/* 0404D0 8003F8D0 000B50C0 */ sll $t2, $t3, 3 +/* 0404D4 8003F8D4 032A6021 */ addu $t4, $t9, $t2 +/* 0404D8 8003F8D8 A60C0018 */ sh $t4, 0x18($s0) +.L8003F8DC: +/* 0404DC 8003F8DC 8FAE0040 */ lw $t6, 0x40($sp) +/* 0404E0 8003F8E0 2401000A */ li $at, 10 +/* 0404E4 8003F8E4 91C20018 */ lbu $v0, 0x18($t6) +/* 0404E8 8003F8E8 8FAF0040 */ lw $t7, 0x40($sp) +/* 0404EC 8003F8EC 10410004 */ beq $v0, $at, .L8003F900 +/* 0404F0 8003F8F0 00056843 */ sra $t5, $a1, 1 +/* 0404F4 8003F8F4 24010003 */ li $at, 3 +/* 0404F8 8003F8F8 14410002 */ bne $v0, $at, .L8003F904 +/* 0404FC 8003F8FC 00000000 */ nop +.L8003F900: +/* 040500 8003F900 00AD2821 */ addu $a1, $a1, $t5 +.L8003F904: +/* 040504 8003F904 8E02004C */ lw $v0, 0x4c($s0) +/* 040508 8003F908 00000000 */ nop +/* 04050C 8003F90C 8C440000 */ lw $a0, ($v0) +/* 040510 8003F910 00000000 */ nop +/* 040514 8003F914 10800094 */ beqz $a0, .L8003FB68 +/* 040518 8003F918 00000000 */ nop +/* 04051C 8003F91C 8DF80004 */ lw $t8, 4($t7) +/* 040520 8003F920 00000000 */ nop +/* 040524 8003F924 1498000D */ bne $a0, $t8, .L8003F95C +/* 040528 8003F928 240401C2 */ li $a0, 450 +/* 04052C 8003F92C AFA50048 */ sw $a1, 0x48($sp) +/* 040530 8003F930 0C00322D */ jal func_8000C8B4 +/* 040534 8003F934 AFA80038 */ sw $t0, 0x38($sp) +/* 040538 8003F938 8FA80038 */ lw $t0, 0x38($sp) +/* 04053C 8003F93C 8FA50048 */ lw $a1, 0x48($sp) +/* 040540 8003F940 8D0B0000 */ lw $t3, ($t0) +/* 040544 8003F944 00000000 */ nop +/* 040548 8003F948 0162082A */ slt $at, $t3, $v0 +/* 04054C 8003F94C 10200086 */ beqz $at, .L8003FB68 +/* 040550 8003F950 00000000 */ nop +/* 040554 8003F954 8E02004C */ lw $v0, 0x4c($s0) +/* 040558 8003F958 00000000 */ nop +.L8003F95C: +/* 04055C 8003F95C 90590013 */ lbu $t9, 0x13($v0) +/* 040560 8003F960 00000000 */ nop +/* 040564 8003F964 0325082A */ slt $at, $t9, $a1 +/* 040568 8003F968 1020007F */ beqz $at, .L8003FB68 +/* 04056C 8003F96C 00000000 */ nop +/* 040570 8003F970 8C430000 */ lw $v1, ($v0) +/* 040574 8003F974 24010001 */ li $at, 1 +/* 040578 8003F978 8C6A0040 */ lw $t2, 0x40($v1) +/* 04057C 8003F97C 00000000 */ nop +/* 040580 8003F980 814C0054 */ lb $t4, 0x54($t2) +/* 040584 8003F984 00000000 */ nop +/* 040588 8003F988 15810077 */ bne $t4, $at, .L8003FB68 +/* 04058C 8003F98C 00000000 */ nop +/* 040590 8003F990 8C690064 */ lw $t1, 0x64($v1) +/* 040594 8003F994 240E0001 */ li $t6, 1 +/* 040598 8003F998 A12E0187 */ sb $t6, 0x187($t1) +/* 04059C 8003F99C 8FAD0040 */ lw $t5, 0x40($sp) +/* 0405A0 8003F9A0 24010002 */ li $at, 2 +/* 0405A4 8003F9A4 91A20018 */ lbu $v0, 0x18($t5) +/* 0405A8 8003F9A8 2407002C */ li $a3, 44 +/* 0405AC 8003F9AC 14410011 */ bne $v0, $at, .L8003F9F4 +/* 0405B0 8003F9B0 240F0011 */ li $t7, 17 +/* 0405B4 8003F9B4 C60C000C */ lwc1 $f12, 0xc($s0) +/* 0405B8 8003F9B8 C60E0010 */ lwc1 $f14, 0x10($s0) +/* 0405BC 8003F9BC 8E060014 */ lw $a2, 0x14($s0) +/* 0405C0 8003F9C0 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0405C4 8003F9C4 44818000 */ mtc1 $at, $f16 +/* 0405C8 8003F9C8 24180001 */ li $t8, 1 +/* 0405CC 8003F9CC AFB80018 */ sw $t8, 0x18($sp) +/* 0405D0 8003F9D0 AFA90068 */ sw $t1, 0x68($sp) +/* 0405D4 8003F9D4 AFA80038 */ sw $t0, 0x38($sp) +/* 0405D8 8003F9D8 AFAF0010 */ sw $t7, 0x10($sp) +/* 0405DC 8003F9DC 0C00FF11 */ jal func_8003FC44 +/* 0405E0 8003F9E0 E7B00014 */ swc1 $f16, 0x14($sp) +/* 0405E4 8003F9E4 8FA80038 */ lw $t0, 0x38($sp) +/* 0405E8 8003F9E8 8FA90068 */ lw $t1, 0x68($sp) +/* 0405EC 8003F9EC 10000035 */ b .L8003FAC4 +/* 0405F0 8003F9F0 812C01D8 */ lb $t4, 0x1d8($t1) +.L8003F9F4: +/* 0405F4 8003F9F4 2401000A */ li $at, 10 +/* 0405F8 8003F9F8 1441002C */ bne $v0, $at, .L8003FAAC +/* 0405FC 8003F9FC 24010003 */ li $at, 3 +/* 040600 8003FA00 852B018E */ lh $t3, 0x18e($t1) +/* 040604 8003FA04 8FAE0040 */ lw $t6, 0x40($sp) +/* 040608 8003FA08 19600014 */ blez $t3, .L8003FA5C +/* 04060C 8003FA0C 24040152 */ li $a0, 338 +/* 040610 8003FA10 81390189 */ lb $t9, 0x189($t1) +/* 040614 8003FA14 240A0003 */ li $t2, 3 +/* 040618 8003FA18 2B210003 */ slti $at, $t9, 3 +/* 04061C 8003FA1C 1420000F */ bnez $at, .L8003FA5C +/* 040620 8003FA20 240C0004 */ li $t4, 4 +/* 040624 8003FA24 A10A0004 */ sb $t2, 4($t0) +/* 040628 8003FA28 8E070014 */ lw $a3, 0x14($s0) +/* 04062C 8003FA2C 8E060010 */ lw $a2, 0x10($s0) +/* 040630 8003FA30 8E05000C */ lw $a1, 0xc($s0) +/* 040634 8003FA34 AFA90068 */ sw $t1, 0x68($sp) +/* 040638 8003FA38 AFA80038 */ sw $t0, 0x38($sp) +/* 04063C 8003FA3C AFA00014 */ sw $zero, 0x14($sp) +/* 040640 8003FA40 AFAC0010 */ sw $t4, 0x10($sp) +/* 040644 8003FA44 0C002556 */ jal func_80009558 +/* 040648 8003FA48 24040155 */ li $a0, 341 +/* 04064C 8003FA4C 8FA80038 */ lw $t0, 0x38($sp) +/* 040650 8003FA50 8FA90068 */ lw $t1, 0x68($sp) +/* 040654 8003FA54 1000001B */ b .L8003FAC4 +/* 040658 8003FA58 812C01D8 */ lb $t4, 0x1d8($t1) +.L8003FA5C: +/* 04065C 8003FA5C ADC30000 */ sw $v1, ($t6) +/* 040660 8003FA60 8C670014 */ lw $a3, 0x14($v1) +/* 040664 8003FA64 8C660010 */ lw $a2, 0x10($v1) +/* 040668 8003FA68 8C65000C */ lw $a1, 0xc($v1) +/* 04066C 8003FA6C 240D0004 */ li $t5, 4 +/* 040670 8003FA70 25CF001C */ addiu $t7, $t6, 0x1c +/* 040674 8003FA74 AFAF0014 */ sw $t7, 0x14($sp) +/* 040678 8003FA78 AFAD0010 */ sw $t5, 0x10($sp) +/* 04067C 8003FA7C AFA90068 */ sw $t1, 0x68($sp) +/* 040680 8003FA80 0C002556 */ jal func_80009558 +/* 040684 8003FA84 AFA80038 */ sw $t0, 0x38($sp) +/* 040688 8003FA88 8FA80038 */ lw $t0, 0x38($sp) +/* 04068C 8003FA8C 8FA90068 */ lw $t1, 0x68($sp) +/* 040690 8003FA90 24180006 */ li $t8, 6 +/* 040694 8003FA94 240B0002 */ li $t3, 2 +/* 040698 8003FA98 A1380187 */ sb $t8, 0x187($t1) +/* 04069C 8003FA9C A10B0004 */ sb $t3, 4($t0) +/* 0406A0 8003FAA0 10000007 */ b .L8003FAC0 +/* 0406A4 8003FAA4 A1000005 */ sb $zero, 5($t0) +/* 0406A8 8003FAA8 24010003 */ li $at, 3 +.L8003FAAC: +/* 0406AC 8003FAAC 14410004 */ bne $v0, $at, .L8003FAC0 +/* 0406B0 8003FAB0 24190002 */ li $t9, 2 +/* 0406B4 8003FAB4 A1390187 */ sb $t9, 0x187($t1) +/* 0406B8 8003FAB8 240A0002 */ li $t2, 2 +/* 0406BC 8003FABC A10A0004 */ sb $t2, 4($t0) +.L8003FAC0: +/* 0406C0 8003FAC0 812C01D8 */ lb $t4, 0x1d8($t1) +.L8003FAC4: +/* 0406C4 8003FAC4 2405000D */ li $a1, 13 +/* 0406C8 8003FAC8 15800009 */ bnez $t4, .L8003FAF0 +/* 0406CC 8003FACC 8FAD0040 */ lw $t5, 0x40($sp) +/* 0406D0 8003FAD0 85240000 */ lh $a0, ($t1) +/* 0406D4 8003FAD4 AFA90068 */ sw $t1, 0x68($sp) +/* 0406D8 8003FAD8 0C01C8D2 */ jal func_80072348 +/* 0406DC 8003FADC AFA80038 */ sw $t0, 0x38($sp) +/* 0406E0 8003FAE0 8FA80038 */ lw $t0, 0x38($sp) +/* 0406E4 8003FAE4 8FA90068 */ lw $t1, 0x68($sp) +/* 0406E8 8003FAE8 00000000 */ nop +/* 0406EC 8003FAEC 8FAD0040 */ lw $t5, 0x40($sp) +.L8003FAF0: +/* 0406F0 8003FAF0 2402FFFF */ li $v0, -1 +/* 0406F4 8003FAF4 8DAE0004 */ lw $t6, 4($t5) +/* 0406F8 8003FAF8 00000000 */ nop +/* 0406FC 8003FAFC 8DCF0064 */ lw $t7, 0x64($t6) +/* 040700 8003FB00 00000000 */ nop +/* 040704 8003FB04 AFAF0064 */ sw $t7, 0x64($sp) +/* 040708 8003FB08 85380000 */ lh $t8, ($t1) +/* 04070C 8003FB0C 8FB90064 */ lw $t9, 0x64($sp) +/* 040710 8003FB10 14580005 */ bne $v0, $t8, .L8003FB28 +/* 040714 8003FB14 00000000 */ nop +/* 040718 8003FB18 85EB0000 */ lh $t3, ($t7) +/* 04071C 8003FB1C 00000000 */ nop +/* 040720 8003FB20 104B0006 */ beq $v0, $t3, .L8003FB3C +/* 040724 8003FB24 8FAD0040 */ lw $t5, 0x40($sp) +.L8003FB28: +/* 040728 8003FB28 932A01EF */ lbu $t2, 0x1ef($t9) +/* 04072C 8003FB2C 00000000 */ nop +/* 040730 8003FB30 354C0002 */ ori $t4, $t2, 2 +/* 040734 8003FB34 A32C01EF */ sb $t4, 0x1ef($t9) +/* 040738 8003FB38 8FAD0040 */ lw $t5, 0x40($sp) +.L8003FB3C: +/* 04073C 8003FB3C 24010003 */ li $at, 3 +/* 040740 8003FB40 91A20018 */ lbu $v0, 0x18($t5) +/* 040744 8003FB44 00000000 */ nop +/* 040748 8003FB48 10410007 */ beq $v0, $at, .L8003FB68 +/* 04074C 8003FB4C 2401000A */ li $at, 10 +/* 040750 8003FB50 10410005 */ beq $v0, $at, .L8003FB68 +/* 040754 8003FB54 00000000 */ nop +/* 040758 8003FB58 0C003FEE */ jal func_8000FFB8 +/* 04075C 8003FB5C 02002025 */ move $a0, $s0 +/* 040760 8003FB60 10000035 */ b .L8003FC38 +/* 040764 8003FB64 8FBF002C */ lw $ra, 0x2c($sp) +.L8003FB68: +/* 040768 8003FB68 8D0E0000 */ lw $t6, ($t0) +/* 04076C 8003FB6C 8FB80074 */ lw $t8, 0x74($sp) +/* 040770 8003FB70 910B0004 */ lbu $t3, 4($t0) +/* 040774 8003FB74 01D87823 */ subu $t7, $t6, $t8 +/* 040778 8003FB78 29610002 */ slti $at, $t3, 2 +/* 04077C 8003FB7C 1020002D */ beqz $at, .L8003FC34 +/* 040780 8003FB80 AD0F0000 */ sw $t7, ($t0) +/* 040784 8003FB84 2404FAD8 */ li $a0, -1320 +/* 040788 8003FB88 0C00322D */ jal func_8000C8B4 +/* 04078C 8003FB8C AFA80038 */ sw $t0, 0x38($sp) +/* 040790 8003FB90 8FA80038 */ lw $t0, 0x38($sp) +/* 040794 8003FB94 8FAC0040 */ lw $t4, 0x40($sp) +/* 040798 8003FB98 8D0A0000 */ lw $t2, ($t0) +/* 04079C 8003FB9C 00000000 */ nop +/* 0407A0 8003FBA0 0142082A */ slt $at, $t2, $v0 +/* 0407A4 8003FBA4 10200024 */ beqz $at, .L8003FC38 +/* 0407A8 8003FBA8 8FBF002C */ lw $ra, 0x2c($sp) +/* 0407AC 8003FBAC 91820018 */ lbu $v0, 0x18($t4) +/* 0407B0 8003FBB0 24010003 */ li $at, 3 +/* 0407B4 8003FBB4 14410003 */ bne $v0, $at, .L8003FBC4 +/* 0407B8 8003FBB8 24190002 */ li $t9, 2 +/* 0407BC 8003FBBC 1000001D */ b .L8003FC34 +/* 0407C0 8003FBC0 A1190004 */ sb $t9, 4($t0) +.L8003FBC4: +/* 0407C4 8003FBC4 2401000A */ li $at, 10 +/* 0407C8 8003FBC8 1441000D */ bne $v0, $at, .L8003FC00 +/* 0407CC 8003FBCC 2407002C */ li $a3, 44 +/* 0407D0 8003FBD0 240D0003 */ li $t5, 3 +/* 0407D4 8003FBD4 A10D0004 */ sb $t5, 4($t0) +/* 0407D8 8003FBD8 8E070014 */ lw $a3, 0x14($s0) +/* 0407DC 8003FBDC 8E060010 */ lw $a2, 0x10($s0) +/* 0407E0 8003FBE0 8E05000C */ lw $a1, 0xc($s0) +/* 0407E4 8003FBE4 240E0004 */ li $t6, 4 +/* 0407E8 8003FBE8 AFAE0010 */ sw $t6, 0x10($sp) +/* 0407EC 8003FBEC AFA00014 */ sw $zero, 0x14($sp) +/* 0407F0 8003FBF0 0C002556 */ jal func_80009558 +/* 0407F4 8003FBF4 24040155 */ li $a0, 341 +/* 0407F8 8003FBF8 1000000F */ b .L8003FC38 +/* 0407FC 8003FBFC 8FBF002C */ lw $ra, 0x2c($sp) +.L8003FC00: +/* 040800 8003FC00 C60C000C */ lwc1 $f12, 0xc($s0) +/* 040804 8003FC04 C60E0010 */ lwc1 $f14, 0x10($s0) +/* 040808 8003FC08 8E060014 */ lw $a2, 0x14($s0) +/* 04080C 8003FC0C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 040810 8003FC10 44813000 */ mtc1 $at, $f6 +/* 040814 8003FC14 24180011 */ li $t8, 17 +/* 040818 8003FC18 240F0001 */ li $t7, 1 +/* 04081C 8003FC1C AFAF0018 */ sw $t7, 0x18($sp) +/* 040820 8003FC20 AFB80010 */ sw $t8, 0x10($sp) +/* 040824 8003FC24 0C00FF11 */ jal func_8003FC44 +/* 040828 8003FC28 E7A60014 */ swc1 $f6, 0x14($sp) +/* 04082C 8003FC2C 0C003FEE */ jal func_8000FFB8 +/* 040830 8003FC30 02002025 */ move $a0, $s0 +.L8003FC34: +/* 040834 8003FC34 8FBF002C */ lw $ra, 0x2c($sp) +.L8003FC38: +/* 040838 8003FC38 8FB00028 */ lw $s0, 0x28($sp) +/* 04083C 8003FC3C 03E00008 */ jr $ra +/* 040840 8003FC40 27BD0070 */ addiu $sp, $sp, 0x70 + diff --git a/asm/non_matchings/unknown_032760/func_8003FC44.s b/asm/non_matchings/unknown_032760/func_8003FC44.s new file mode 100644 index 00000000..48cbd17f --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003FC44.s @@ -0,0 +1,77 @@ +glabel func_8003FC44 +/* 040844 8003FC44 444EF800 */ cfc1 $t6, $31 +/* 040848 8003FC48 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 04084C 8003FC4C 35C10003 */ ori $at, $t6, 3 +/* 040850 8003FC50 E7AC0030 */ swc1 $f12, 0x30($sp) +/* 040854 8003FC54 38210002 */ xori $at, $at, 2 +/* 040858 8003FC58 44C1F800 */ ctc1 $at, $31 +/* 04085C 8003FC5C C7A40030 */ lwc1 $f4, 0x30($sp) +/* 040860 8003FC60 E7AE0034 */ swc1 $f14, 0x34($sp) +/* 040864 8003FC64 460021A4 */ cvt.w.s $f6, $f4 +/* 040868 8003FC68 C7A80034 */ lwc1 $f8, 0x34($sp) +/* 04086C 8003FC6C 44CEF800 */ ctc1 $t6, $31 +/* 040870 8003FC70 AFA60038 */ sw $a2, 0x38($sp) +/* 040874 8003FC74 C7B00038 */ lwc1 $f16, 0x38($sp) +/* 040878 8003FC78 4458F800 */ cfc1 $t8, $31 +/* 04087C 8003FC7C 440F3000 */ mfc1 $t7, $f6 +/* 040880 8003FC80 37010003 */ ori $at, $t8, 3 +/* 040884 8003FC84 38210002 */ xori $at, $at, 2 +/* 040888 8003FC88 44C1F800 */ ctc1 $at, $31 +/* 04088C 8003FC8C 8FAE0048 */ lw $t6, 0x48($sp) +/* 040890 8003FC90 460042A4 */ cvt.w.s $f10, $f8 +/* 040894 8003FC94 AFBF001C */ sw $ra, 0x1c($sp) +/* 040898 8003FC98 44D8F800 */ ctc1 $t8, $31 +/* 04089C 8003FC9C 44095000 */ mfc1 $t1, $f10 +/* 0408A0 8003FCA0 240D000A */ li $t5, 10 +/* 0408A4 8003FCA4 444BF800 */ cfc1 $t3, $31 +/* 0408A8 8003FCA8 252A0024 */ addiu $t2, $t1, 0x24 +/* 0408AC 8003FCAC 35610003 */ ori $at, $t3, 3 +/* 0408B0 8003FCB0 38210002 */ xori $at, $at, 2 +/* 0408B4 8003FCB4 44C1F800 */ ctc1 $at, $31 +/* 0408B8 8003FCB8 A7AA0028 */ sh $t2, 0x28($sp) +/* 0408BC 8003FCBC 460084A4 */ cvt.w.s $f18, $f16 +/* 0408C0 8003FCC0 A3AD0025 */ sb $t5, 0x25($sp) +/* 0408C4 8003FCC4 440C9000 */ mfc1 $t4, $f18 +/* 0408C8 8003FCC8 44CBF800 */ ctc1 $t3, $31 +/* 0408CC 8003FCCC A3A70024 */ sb $a3, 0x24($sp) +/* 0408D0 8003FCD0 27A40024 */ addiu $a0, $sp, 0x24 +/* 0408D4 8003FCD4 24050001 */ li $a1, 1 +/* 0408D8 8003FCD8 A7AF0026 */ sh $t7, 0x26($sp) +/* 0408DC 8003FCDC A3AE002C */ sb $t6, 0x2c($sp) +/* 0408E0 8003FCE0 0C003A95 */ jal func_8000EA54 +/* 0408E4 8003FCE4 A7AC002A */ sh $t4, 0x2a($sp) +/* 0408E8 8003FCE8 10400011 */ beqz $v0, .L8003FD30 +/* 0408EC 8003FCEC 3C01400C */ li $at, 0x400C0000 # 2.187500 +/* 0408F0 8003FCF0 44800000 */ mtc1 $zero, $f0 +/* 0408F4 8003FCF4 C4440008 */ lwc1 $f4, 8($v0) +/* 0408F8 8003FCF8 44814800 */ mtc1 $at, $f9 +/* 0408FC 8003FCFC 44804000 */ mtc1 $zero, $f8 +/* 040900 8003FD00 460021A1 */ cvt.d.s $f6, $f4 +/* 040904 8003FD04 46283282 */ mul.d $f10, $f6, $f8 +/* 040908 8003FD08 AC40003C */ sw $zero, 0x3c($v0) +/* 04090C 8003FD0C E440001C */ swc1 $f0, 0x1c($v0) +/* 040910 8003FD10 E4400020 */ swc1 $f0, 0x20($v0) +/* 040914 8003FD14 E4400024 */ swc1 $f0, 0x24($v0) +/* 040918 8003FD18 C7B00044 */ lwc1 $f16, 0x44($sp) +/* 04091C 8003FD1C 00000000 */ nop +/* 040920 8003FD20 460084A1 */ cvt.d.s $f18, $f16 +/* 040924 8003FD24 46325102 */ mul.d $f4, $f10, $f18 +/* 040928 8003FD28 462021A0 */ cvt.s.d $f6, $f4 +/* 04092C 8003FD2C E4460008 */ swc1 $f6, 8($v0) +.L8003FD30: +/* 040930 8003FD30 8FA20040 */ lw $v0, 0x40($sp) +/* 040934 8003FD34 8FA50030 */ lw $a1, 0x30($sp) +/* 040938 8003FD38 10400007 */ beqz $v0, .L8003FD58 +/* 04093C 8003FD3C 3044FFFF */ andi $a0, $v0, 0xffff +/* 040940 8003FD40 8FA60034 */ lw $a2, 0x34($sp) +/* 040944 8003FD44 8FA70038 */ lw $a3, 0x38($sp) +/* 040948 8003FD48 240F0004 */ li $t7, 4 +/* 04094C 8003FD4C AFAF0010 */ sw $t7, 0x10($sp) +/* 040950 8003FD50 0C002556 */ jal func_80009558 +/* 040954 8003FD54 AFA00014 */ sw $zero, 0x14($sp) +.L8003FD58: +/* 040958 8003FD58 8FBF001C */ lw $ra, 0x1c($sp) +/* 04095C 8003FD5C 27BD0030 */ addiu $sp, $sp, 0x30 +/* 040960 8003FD60 03E00008 */ jr $ra +/* 040964 8003FD64 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8003FD68.s b/asm/non_matchings/unknown_032760/func_8003FD68.s new file mode 100644 index 00000000..95c763a7 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003FD68.s @@ -0,0 +1,103 @@ +glabel func_8003FD68 +/* 040968 8003FD68 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 04096C 8003FD6C AFBF003C */ sw $ra, 0x3c($sp) +/* 040970 8003FD70 AFB00038 */ sw $s0, 0x38($sp) +/* 040974 8003FD74 AFA40048 */ sw $a0, 0x48($sp) +/* 040978 8003FD78 8C830064 */ lw $v1, 0x64($a0) +/* 04097C 8003FD7C 94AF0008 */ lhu $t7, 8($a1) +/* 040980 8003FD80 00A08025 */ move $s0, $a1 +/* 040984 8003FD84 A46F0000 */ sh $t7, ($v1) +/* 040988 8003FD88 94B8000A */ lhu $t8, 0xa($a1) +/* 04098C 8003FD8C 31E4FFFF */ andi $a0, $t7, 0xffff +/* 040990 8003FD90 A4780002 */ sh $t8, 2($v1) +/* 040994 8003FD94 90B9000F */ lbu $t9, 0xf($a1) +/* 040998 8003FD98 00000000 */ nop +/* 04099C 8003FD9C A079000C */ sb $t9, 0xc($v1) +/* 0409A0 8003FDA0 90A8000E */ lbu $t0, 0xe($a1) +/* 0409A4 8003FDA4 00000000 */ nop +/* 0409A8 8003FDA8 A0680006 */ sb $t0, 6($v1) +/* 0409AC 8003FDAC 90A9000C */ lbu $t1, 0xc($a1) +/* 0409B0 8003FDB0 00000000 */ nop +/* 0409B4 8003FDB4 A0690004 */ sb $t1, 4($v1) +/* 0409B8 8003FDB8 90AA000D */ lbu $t2, 0xd($a1) +/* 0409BC 8003FDBC 00000000 */ nop +/* 0409C0 8003FDC0 A06A0005 */ sb $t2, 5($v1) +/* 0409C4 8003FDC4 90AB0010 */ lbu $t3, 0x10($a1) +/* 0409C8 8003FDC8 AC600008 */ sw $zero, 8($v1) +/* 0409CC 8003FDCC A06B000D */ sb $t3, 0xd($v1) +/* 0409D0 8003FDD0 0C00086C */ jal func_800021B0 +/* 0409D4 8003FDD4 AFA30044 */ sw $v1, 0x44($sp) +/* 0409D8 8003FDD8 8FA30044 */ lw $v1, 0x44($sp) +/* 0409DC 8003FDDC 10400021 */ beqz $v0, .L8003FE64 +/* 0409E0 8003FDE0 2418000A */ li $t8, 10 +/* 0409E4 8003FDE4 860C0002 */ lh $t4, 2($s0) +/* 0409E8 8003FDE8 860D0004 */ lh $t5, 4($s0) +/* 0409EC 8003FDEC 860E0006 */ lh $t6, 6($s0) +/* 0409F0 8003FDF0 94640000 */ lhu $a0, ($v1) +/* 0409F4 8003FDF4 240F0009 */ li $t7, 9 +/* 0409F8 8003FDF8 AFAF0010 */ sw $t7, 0x10($sp) +/* 0409FC 8003FDFC 90780005 */ lbu $t8, 5($v1) +/* 040A00 8003FE00 448C2000 */ mtc1 $t4, $f4 +/* 040A04 8003FE04 AFB80014 */ sw $t8, 0x14($sp) +/* 040A08 8003FE08 90790004 */ lbu $t9, 4($v1) +/* 040A0C 8003FE0C 448D3000 */ mtc1 $t5, $f6 +/* 040A10 8003FE10 AFB90018 */ sw $t9, 0x18($sp) +/* 040A14 8003FE14 94680002 */ lhu $t0, 2($v1) +/* 040A18 8003FE18 448E4000 */ mtc1 $t6, $f8 +/* 040A1C 8003FE1C AFA8001C */ sw $t0, 0x1c($sp) +/* 040A20 8003FE20 9069000C */ lbu $t1, 0xc($v1) +/* 040A24 8003FE24 46802120 */ cvt.s.w $f4, $f4 +/* 040A28 8003FE28 AFA90020 */ sw $t1, 0x20($sp) +/* 040A2C 8003FE2C 906A0006 */ lbu $t2, 6($v1) +/* 040A30 8003FE30 468031A0 */ cvt.s.w $f6, $f6 +/* 040A34 8003FE34 AFAA0024 */ sw $t2, 0x24($sp) +/* 040A38 8003FE38 906B000D */ lbu $t3, 0xd($v1) +/* 040A3C 8003FE3C 46804220 */ cvt.s.w $f8, $f8 +/* 040A40 8003FE40 44063000 */ mfc1 $a2, $f6 +/* 040A44 8003FE44 44052000 */ mfc1 $a1, $f4 +/* 040A48 8003FE48 44074000 */ mfc1 $a3, $f8 +/* 040A4C 8003FE4C 246C0008 */ addiu $t4, $v1, 8 +/* 040A50 8003FE50 AFAC002C */ sw $t4, 0x2c($sp) +/* 040A54 8003FE54 0C0025D3 */ jal func_8000974C +/* 040A58 8003FE58 AFAB0028 */ sw $t3, 0x28($sp) +/* 040A5C 8003FE5C 1000001F */ b .L8003FEDC +/* 040A60 8003FE60 8FA40048 */ lw $a0, 0x48($sp) +.L8003FE64: +/* 040A64 8003FE64 860D0002 */ lh $t5, 2($s0) +/* 040A68 8003FE68 860E0004 */ lh $t6, 4($s0) +/* 040A6C 8003FE6C 860F0006 */ lh $t7, 6($s0) +/* 040A70 8003FE70 94640000 */ lhu $a0, ($v1) +/* 040A74 8003FE74 AFB80010 */ sw $t8, 0x10($sp) +/* 040A78 8003FE78 90790005 */ lbu $t9, 5($v1) +/* 040A7C 8003FE7C 448D5000 */ mtc1 $t5, $f10 +/* 040A80 8003FE80 AFB90014 */ sw $t9, 0x14($sp) +/* 040A84 8003FE84 90680004 */ lbu $t0, 4($v1) +/* 040A88 8003FE88 448E8000 */ mtc1 $t6, $f16 +/* 040A8C 8003FE8C AFA80018 */ sw $t0, 0x18($sp) +/* 040A90 8003FE90 94690002 */ lhu $t1, 2($v1) +/* 040A94 8003FE94 448F9000 */ mtc1 $t7, $f18 +/* 040A98 8003FE98 AFA9001C */ sw $t1, 0x1c($sp) +/* 040A9C 8003FE9C 906A000C */ lbu $t2, 0xc($v1) +/* 040AA0 8003FEA0 468052A0 */ cvt.s.w $f10, $f10 +/* 040AA4 8003FEA4 AFAA0020 */ sw $t2, 0x20($sp) +/* 040AA8 8003FEA8 906B0006 */ lbu $t3, 6($v1) +/* 040AAC 8003FEAC 46808420 */ cvt.s.w $f16, $f16 +/* 040AB0 8003FEB0 AFAB0024 */ sw $t3, 0x24($sp) +/* 040AB4 8003FEB4 906C000D */ lbu $t4, 0xd($v1) +/* 040AB8 8003FEB8 468094A0 */ cvt.s.w $f18, $f18 +/* 040ABC 8003FEBC 44068000 */ mfc1 $a2, $f16 +/* 040AC0 8003FEC0 44055000 */ mfc1 $a1, $f10 +/* 040AC4 8003FEC4 44079000 */ mfc1 $a3, $f18 +/* 040AC8 8003FEC8 246D0008 */ addiu $t5, $v1, 8 +/* 040ACC 8003FECC AFAD002C */ sw $t5, 0x2c($sp) +/* 040AD0 8003FED0 0C0025D3 */ jal func_8000974C +/* 040AD4 8003FED4 AFAC0028 */ sw $t4, 0x28($sp) +/* 040AD8 8003FED8 8FA40048 */ lw $a0, 0x48($sp) +.L8003FEDC: +/* 040ADC 8003FEDC 0C003FEE */ jal func_8000FFB8 +/* 040AE0 8003FEE0 00000000 */ nop +/* 040AE4 8003FEE4 8FBF003C */ lw $ra, 0x3c($sp) +/* 040AE8 8003FEE8 8FB00038 */ lw $s0, 0x38($sp) +/* 040AEC 8003FEEC 03E00008 */ jr $ra +/* 040AF0 8003FEF0 27BD0048 */ addiu $sp, $sp, 0x48 + diff --git a/asm/non_matchings/unknown_032760/func_8003FEF4.s b/asm/non_matchings/unknown_032760/func_8003FEF4.s new file mode 100644 index 00000000..cdbfe645 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8003FEF4.s @@ -0,0 +1,76 @@ +glabel func_8003FEF4 +/* 040AF4 8003FEF4 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 040AF8 8003FEF8 AFBF0044 */ sw $ra, 0x44($sp) +/* 040AFC 8003FEFC AFB00040 */ sw $s0, 0x40($sp) +/* 040B00 8003FF00 AFA40048 */ sw $a0, 0x48($sp) +/* 040B04 8003FF04 8C820064 */ lw $v0, 0x64($a0) +/* 040B08 8003FF08 90AF0008 */ lbu $t7, 8($a1) +/* 040B0C 8003FF0C 00A08025 */ move $s0, $a1 +/* 040B10 8003FF10 A04F0000 */ sb $t7, ($v0) +/* 040B14 8003FF14 94B8000A */ lhu $t8, 0xa($a1) +/* 040B18 8003FF18 31E400FF */ andi $a0, $t7, 0xff +/* 040B1C 8003FF1C A4580002 */ sh $t8, 2($v0) +/* 040B20 8003FF20 90B9000C */ lbu $t9, 0xc($a1) +/* 040B24 8003FF24 00000000 */ nop +/* 040B28 8003FF28 A059000C */ sb $t9, 0xc($v0) +/* 040B2C 8003FF2C 90A8000D */ lbu $t0, 0xd($a1) +/* 040B30 8003FF30 AC400008 */ sw $zero, 8($v0) +/* 040B34 8003FF34 A048000D */ sb $t0, 0xd($v0) +/* 040B38 8003FF38 94A9000E */ lhu $t1, 0xe($a1) +/* 040B3C 8003FF3C 00000000 */ nop +/* 040B40 8003FF40 A4490004 */ sh $t1, 4($v0) +/* 040B44 8003FF44 90AA0012 */ lbu $t2, 0x12($a1) +/* 040B48 8003FF48 00000000 */ nop +/* 040B4C 8003FF4C A04A0011 */ sb $t2, 0x11($v0) +/* 040B50 8003FF50 90AB0011 */ lbu $t3, 0x11($a1) +/* 040B54 8003FF54 00000000 */ nop +/* 040B58 8003FF58 A04B0010 */ sb $t3, 0x10($v0) +/* 040B5C 8003FF5C 90AC0009 */ lbu $t4, 9($a1) +/* 040B60 8003FF60 00000000 */ nop +/* 040B64 8003FF64 A04C000E */ sb $t4, 0xe($v0) +/* 040B68 8003FF68 90AD0010 */ lbu $t5, 0x10($a1) +/* 040B6C 8003FF6C 00000000 */ nop +/* 040B70 8003FF70 A04D000F */ sb $t5, 0xf($v0) +/* 040B74 8003FF74 90AE0013 */ lbu $t6, 0x13($a1) +/* 040B78 8003FF78 3305FFFF */ andi $a1, $t8, 0xffff +/* 040B7C 8003FF7C A04E0012 */ sb $t6, 0x12($v0) +/* 040B80 8003FF80 86190006 */ lh $t9, 6($s0) +/* 040B84 8003FF84 86180004 */ lh $t8, 4($s0) +/* 040B88 8003FF88 44994000 */ mtc1 $t9, $f8 +/* 040B8C 8003FF8C 860F0002 */ lh $t7, 2($s0) +/* 040B90 8003FF90 468042A0 */ cvt.s.w $f10, $f8 +/* 040B94 8003FF94 44983000 */ mtc1 $t8, $f6 +/* 040B98 8003FF98 448F2000 */ mtc1 $t7, $f4 +/* 040B9C 8003FF9C E7AA0010 */ swc1 $f10, 0x10($sp) +/* 040BA0 8003FFA0 9048000F */ lbu $t0, 0xf($v0) +/* 040BA4 8003FFA4 468031A0 */ cvt.s.w $f6, $f6 +/* 040BA8 8003FFA8 AFA80014 */ sw $t0, 0x14($sp) +/* 040BAC 8003FFAC 9049000E */ lbu $t1, 0xe($v0) +/* 040BB0 8003FFB0 46802120 */ cvt.s.w $f4, $f4 +/* 040BB4 8003FFB4 AFA90018 */ sw $t1, 0x18($sp) +/* 040BB8 8003FFB8 904A0010 */ lbu $t2, 0x10($v0) +/* 040BBC 8003FFBC 44062000 */ mfc1 $a2, $f4 +/* 040BC0 8003FFC0 AFAA001C */ sw $t2, 0x1c($sp) +/* 040BC4 8003FFC4 904B0012 */ lbu $t3, 0x12($v0) +/* 040BC8 8003FFC8 44073000 */ mfc1 $a3, $f6 +/* 040BCC 8003FFCC AFAB0020 */ sw $t3, 0x20($sp) +/* 040BD0 8003FFD0 944C0004 */ lhu $t4, 4($v0) +/* 040BD4 8003FFD4 00000000 */ nop +/* 040BD8 8003FFD8 AFAC0024 */ sw $t4, 0x24($sp) +/* 040BDC 8003FFDC 904D0011 */ lbu $t5, 0x11($v0) +/* 040BE0 8003FFE0 00000000 */ nop +/* 040BE4 8003FFE4 AFAD0028 */ sw $t5, 0x28($sp) +/* 040BE8 8003FFE8 904E000C */ lbu $t6, 0xc($v0) +/* 040BEC 8003FFEC 00000000 */ nop +/* 040BF0 8003FFF0 AFAE002C */ sw $t6, 0x2c($sp) +/* 040BF4 8003FFF4 904F000D */ lbu $t7, 0xd($v0) +/* 040BF8 8003FFF8 0C002629 */ jal func_800098A4 +/* 040BFC 8003FFFC AFAF0030 */ sw $t7, 0x30($sp) +/* 040C00 80040000 8FA40048 */ lw $a0, 0x48($sp) +/* 040C04 80040004 0C003FEE */ jal func_8000FFB8 +/* 040C08 80040008 00000000 */ nop +/* 040C0C 8004000C 8FBF0044 */ lw $ra, 0x44($sp) +/* 040C10 80040010 8FB00040 */ lw $s0, 0x40($sp) +/* 040C14 80040014 03E00008 */ jr $ra +/* 040C18 80040018 27BD0048 */ addiu $sp, $sp, 0x48 + diff --git a/asm/non_matchings/unknown_032760/func_8004001C.s b/asm/non_matchings/unknown_032760/func_8004001C.s new file mode 100644 index 00000000..73b3a337 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8004001C.s @@ -0,0 +1,36 @@ +glabel func_8004001C +/* 040C1C 8004001C 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 040C20 80040020 AFBF001C */ sw $ra, 0x1c($sp) +/* 040C24 80040024 AFA40020 */ sw $a0, 0x20($sp) +/* 040C28 80040028 8C820064 */ lw $v0, 0x64($a0) +/* 040C2C 8004002C 90AF0008 */ lbu $t7, 8($a1) +/* 040C30 80040030 00000000 */ nop +/* 040C34 80040034 A44F0002 */ sh $t7, 2($v0) +/* 040C38 80040038 90B80009 */ lbu $t8, 9($a1) +/* 040C3C 8004003C 90470003 */ lbu $a3, 3($v0) +/* 040C40 80040040 A0580004 */ sb $t8, 4($v0) +/* 040C44 80040044 90B9000A */ lbu $t9, 0xa($a1) +/* 040C48 80040048 330B00FF */ andi $t3, $t8, 0xff +/* 040C4C 8004004C A0590005 */ sb $t9, 5($v0) +/* 040C50 80040050 84AA0006 */ lh $t2, 6($a1) +/* 040C54 80040054 84A90004 */ lh $t1, 4($a1) +/* 040C58 80040058 448A4000 */ mtc1 $t2, $f8 +/* 040C5C 8004005C 84A80002 */ lh $t0, 2($a1) +/* 040C60 80040060 46804220 */ cvt.s.w $f8, $f8 +/* 040C64 80040064 AFAB0010 */ sw $t3, 0x10($sp) +/* 040C68 80040068 904C0005 */ lbu $t4, 5($v0) +/* 040C6C 8004006C 44893000 */ mtc1 $t1, $f6 +/* 040C70 80040070 44882000 */ mtc1 $t0, $f4 +/* 040C74 80040074 44064000 */ mfc1 $a2, $f8 +/* 040C78 80040078 AFAC0014 */ sw $t4, 0x14($sp) +/* 040C7C 8004007C 468033A0 */ cvt.s.w $f14, $f6 +/* 040C80 80040080 0C00265A */ jal func_80009968 +/* 040C84 80040084 46802320 */ cvt.s.w $f12, $f4 +/* 040C88 80040088 8FA40020 */ lw $a0, 0x20($sp) +/* 040C8C 8004008C 0C003FEE */ jal func_8000FFB8 +/* 040C90 80040090 00000000 */ nop +/* 040C94 80040094 8FBF001C */ lw $ra, 0x1c($sp) +/* 040C98 80040098 27BD0020 */ addiu $sp, $sp, 0x20 +/* 040C9C 8004009C 03E00008 */ jr $ra +/* 040CA0 800400A0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_800400A4.s b/asm/non_matchings/unknown_032760/func_800400A4.s new file mode 100644 index 00000000..565a7ba8 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800400A4.s @@ -0,0 +1,46 @@ +glabel func_800400A4 +/* 040CA4 800400A4 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 040CA8 800400A8 AFBF0014 */ sw $ra, 0x14($sp) +/* 040CAC 800400AC AFA60028 */ sw $a2, 0x28($sp) +/* 040CB0 800400B0 8C830064 */ lw $v1, 0x64($a0) +/* 040CB4 800400B4 AFA50024 */ sw $a1, 0x24($sp) +/* 040CB8 800400B8 0C00B1F1 */ jal func_8002C7C4 +/* 040CBC 800400BC AFA3001C */ sw $v1, 0x1c($sp) +/* 040CC0 800400C0 8FA70024 */ lw $a3, 0x24($sp) +/* 040CC4 800400C4 8FA3001C */ lw $v1, 0x1c($sp) +/* 040CC8 800400C8 84EE0008 */ lh $t6, 8($a3) +/* 040CCC 800400CC 00000000 */ nop +/* 040CD0 800400D0 A46E0000 */ sh $t6, ($v1) +/* 040CD4 800400D4 84640000 */ lh $a0, ($v1) +/* 040CD8 800400D8 00000000 */ nop +/* 040CDC 800400DC 04810004 */ bgez $a0, .L800400F0 +/* 040CE0 800400E0 00000000 */ nop +/* 040CE4 800400E4 A4600000 */ sh $zero, ($v1) +/* 040CE8 800400E8 84640000 */ lh $a0, ($v1) +/* 040CEC 800400EC 00000000 */ nop +.L800400F0: +/* 040CF0 800400F0 84450018 */ lh $a1, 0x18($v0) +/* 040CF4 800400F4 00000000 */ nop +/* 040CF8 800400F8 0085082A */ slt $at, $a0, $a1 +/* 040CFC 800400FC 14200002 */ bnez $at, .L80040108 +/* 040D00 80040100 24AFFFFF */ addiu $t7, $a1, -1 +/* 040D04 80040104 A46F0000 */ sh $t7, ($v1) +.L80040108: +/* 040D08 80040108 80F8000A */ lb $t8, 0xa($a3) +/* 040D0C 8004010C 00000000 */ nop +/* 040D10 80040110 A4780004 */ sh $t8, 4($v1) +/* 040D14 80040114 80F9000B */ lb $t9, 0xb($a3) +/* 040D18 80040118 00000000 */ nop +/* 040D1C 8004011C A4790006 */ sh $t9, 6($v1) +/* 040D20 80040120 8FA80028 */ lw $t0, 0x28($sp) +/* 040D24 80040124 00000000 */ nop +/* 040D28 80040128 15000004 */ bnez $t0, .L8004013C +/* 040D2C 8004012C 8FBF0014 */ lw $ra, 0x14($sp) +/* 040D30 80040130 A4600008 */ sh $zero, 8($v1) +/* 040D34 80040134 A460000A */ sh $zero, 0xa($v1) +/* 040D38 80040138 8FBF0014 */ lw $ra, 0x14($sp) +.L8004013C: +/* 040D3C 8004013C 27BD0020 */ addiu $sp, $sp, 0x20 +/* 040D40 80040140 03E00008 */ jr $ra +/* 040D44 80040144 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80040148.s b/asm/non_matchings/unknown_032760/func_80040148.s new file mode 100644 index 00000000..8d32dfac --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80040148.s @@ -0,0 +1,165 @@ +glabel func_80040148 +/* 040D48 80040148 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 040D4C 8004014C AFBF001C */ sw $ra, 0x1c($sp) +/* 040D50 80040150 AFB00018 */ sw $s0, 0x18($sp) +/* 040D54 80040154 AFA5003C */ sw $a1, 0x3c($sp) +/* 040D58 80040158 8C8D0064 */ lw $t5, 0x64($a0) +/* 040D5C 8004015C 0C00B1F1 */ jal func_8002C7C4 +/* 040D60 80040160 AFAD0024 */ sw $t5, 0x24($sp) +/* 040D64 80040164 8FAD0024 */ lw $t5, 0x24($sp) +/* 040D68 80040168 8FAA003C */ lw $t2, 0x3c($sp) +/* 040D6C 8004016C 85A80004 */ lh $t0, 4($t5) +/* 040D70 80040170 85A90006 */ lh $t1, 6($t5) +/* 040D74 80040174 010A0019 */ multu $t0, $t2 +/* 040D78 80040178 85AF0000 */ lh $t7, ($t5) +/* 040D7C 8004017C 8C4E0000 */ lw $t6, ($v0) +/* 040D80 80040180 000FC0C0 */ sll $t8, $t7, 3 +/* 040D84 80040184 01D8C821 */ addu $t9, $t6, $t8 +/* 040D88 80040188 8F230000 */ lw $v1, ($t9) +/* 040D8C 8004018C 85B80008 */ lh $t8, 8($t5) +/* 040D90 80040190 90660000 */ lbu $a2, ($v1) +/* 040D94 80040194 90670001 */ lbu $a3, 1($v1) +/* 040D98 80040198 00067A00 */ sll $t7, $a2, 8 +/* 040D9C 8004019C 01E03025 */ move $a2, $t7 +/* 040DA0 800401A0 85AF000A */ lh $t7, 0xa($t5) +/* 040DA4 800401A4 00004012 */ mflo $t0 +/* 040DA8 800401A8 00077200 */ sll $t6, $a3, 8 +/* 040DAC 800401AC 01C03825 */ move $a3, $t6 +/* 040DB0 800401B0 012A0019 */ multu $t1, $t2 +/* 040DB4 800401B4 0308C821 */ addu $t9, $t8, $t0 +/* 040DB8 800401B8 A5B90008 */ sh $t9, 8($t5) +/* 040DBC 800401BC 85A40008 */ lh $a0, 8($t5) +/* 040DC0 800401C0 00408025 */ move $s0, $v0 +/* 040DC4 800401C4 30980003 */ andi $t8, $a0, 3 +/* 040DC8 800401C8 A5B80008 */ sh $t8, 8($t5) +/* 040DCC 800401CC 0000F825 */ move $ra, $zero +/* 040DD0 800401D0 00044083 */ sra $t0, $a0, 2 +/* 040DD4 800401D4 00004812 */ mflo $t1 +/* 040DD8 800401D8 01E97021 */ addu $t6, $t7, $t1 +/* 040DDC 800401DC A5AE000A */ sh $t6, 0xa($t5) +/* 040DE0 800401E0 85A5000A */ lh $a1, 0xa($t5) +/* 040DE4 800401E4 00000000 */ nop +/* 040DE8 800401E8 30B90003 */ andi $t9, $a1, 3 +/* 040DEC 800401EC A5B9000A */ sh $t9, 0xa($t5) +/* 040DF0 800401F0 844F001A */ lh $t7, 0x1a($v0) +/* 040DF4 800401F4 8C430004 */ lw $v1, 4($v0) +/* 040DF8 800401F8 19E00067 */ blez $t7, .L80040398 +/* 040DFC 800401FC 00054883 */ sra $t1, $a1, 2 +/* 040E00 80040200 00605825 */ move $t3, $v1 +.L80040204: +/* 040E04 80040204 85620020 */ lh $v0, 0x20($t3) +/* 040E08 80040208 8D63000C */ lw $v1, 0xc($t3) +/* 040E0C 8004020C 1840005D */ blez $v0, .L80040384 +/* 040E10 80040210 00006025 */ move $t4, $zero +/* 040E14 80040214 00605025 */ move $t2, $v1 +.L80040218: +/* 040E18 80040218 85AE0000 */ lh $t6, ($t5) +/* 040E1C 8004021C 91580000 */ lbu $t8, ($t2) +/* 040E20 80040220 258C0001 */ addiu $t4, $t4, 1 +/* 040E24 80040224 15D80055 */ bne $t6, $t8, .L8004037C +/* 040E28 80040228 0182082A */ slt $at, $t4, $v0 +/* 040E2C 8004022C 85450004 */ lh $a1, 4($t2) +/* 040E30 80040230 85440010 */ lh $a0, 0x10($t2) +/* 040E34 80040234 00000000 */ nop +/* 040E38 80040238 00A4082A */ slt $at, $a1, $a0 +/* 040E3C 8004023C 1020004F */ beqz $at, .L8004037C +/* 040E40 80040240 0182082A */ slt $at, $t4, $v0 +.L80040244: +/* 040E44 80040244 8D790004 */ lw $t9, 4($t3) +/* 040E48 80040248 00057900 */ sll $t7, $a1, 4 +/* 040E4C 8004024C 032F1021 */ addu $v0, $t9, $t7 +/* 040E50 80040250 904E0000 */ lbu $t6, ($v0) +/* 040E54 80040254 24A50001 */ addiu $a1, $a1, 1 +/* 040E58 80040258 31D80080 */ andi $t8, $t6, 0x80 +/* 040E5C 8004025C 17000042 */ bnez $t8, .L80040368 +/* 040E60 80040260 00A4082A */ slt $at, $a1, $a0 +/* 040E64 80040264 84430006 */ lh $v1, 6($v0) +/* 040E68 80040268 00000000 */ nop +/* 040E6C 8004026C 00E3082A */ slt $at, $a3, $v1 +/* 040E70 80040270 10200009 */ beqz $at, .L80040298 +/* 040E74 80040274 0067C823 */ subu $t9, $v1, $a3 +/* 040E78 80040278 844F000A */ lh $t7, 0xa($v0) +/* 040E7C 8004027C 8458000E */ lh $t8, 0xe($v0) +/* 040E80 80040280 A4590006 */ sh $t9, 6($v0) +/* 040E84 80040284 01E77023 */ subu $t6, $t7, $a3 +/* 040E88 80040288 0307C823 */ subu $t9, $t8, $a3 +/* 040E8C 8004028C 84430006 */ lh $v1, 6($v0) +/* 040E90 80040290 A44E000A */ sh $t6, 0xa($v0) +/* 040E94 80040294 A459000E */ sh $t9, 0xe($v0) +.L80040298: +/* 040E98 80040298 04610008 */ bgez $v1, .L800402BC +/* 040E9C 8004029C 00677821 */ addu $t7, $v1, $a3 +/* 040EA0 800402A0 844E000A */ lh $t6, 0xa($v0) +/* 040EA4 800402A4 8459000E */ lh $t9, 0xe($v0) +/* 040EA8 800402A8 A44F0006 */ sh $t7, 6($v0) +/* 040EAC 800402AC 01C7C021 */ addu $t8, $t6, $a3 +/* 040EB0 800402B0 03277821 */ addu $t7, $t9, $a3 +/* 040EB4 800402B4 A458000A */ sh $t8, 0xa($v0) +/* 040EB8 800402B8 A44F000E */ sh $t7, 0xe($v0) +.L800402BC: +/* 040EBC 800402BC 84430004 */ lh $v1, 4($v0) +/* 040EC0 800402C0 00000000 */ nop +/* 040EC4 800402C4 00C3082A */ slt $at, $a2, $v1 +/* 040EC8 800402C8 10200009 */ beqz $at, .L800402F0 +/* 040ECC 800402CC 00667023 */ subu $t6, $v1, $a2 +/* 040ED0 800402D0 84580008 */ lh $t8, 8($v0) +/* 040ED4 800402D4 844F000C */ lh $t7, 0xc($v0) +/* 040ED8 800402D8 A44E0004 */ sh $t6, 4($v0) +/* 040EDC 800402DC 0306C823 */ subu $t9, $t8, $a2 +/* 040EE0 800402E0 01E67023 */ subu $t6, $t7, $a2 +/* 040EE4 800402E4 84430004 */ lh $v1, 4($v0) +/* 040EE8 800402E8 A4590008 */ sh $t9, 8($v0) +/* 040EEC 800402EC A44E000C */ sh $t6, 0xc($v0) +.L800402F0: +/* 040EF0 800402F0 04610009 */ bgez $v1, .L80040318 +/* 040EF4 800402F4 0066C021 */ addu $t8, $v1, $a2 +/* 040EF8 800402F8 84590008 */ lh $t9, 8($v0) +/* 040EFC 800402FC 844E000C */ lh $t6, 0xc($v0) +/* 040F00 80040300 A4580004 */ sh $t8, 4($v0) +/* 040F04 80040304 03267821 */ addu $t7, $t9, $a2 +/* 040F08 80040308 01C6C021 */ addu $t8, $t6, $a2 +/* 040F0C 8004030C 84430004 */ lh $v1, 4($v0) +/* 040F10 80040310 A44F0008 */ sh $t7, 8($v0) +/* 040F14 80040314 A458000C */ sh $t8, 0xc($v0) +.L80040318: +/* 040F18 80040318 84590006 */ lh $t9, 6($v0) +/* 040F1C 8004031C 844E000A */ lh $t6, 0xa($v0) +/* 040F20 80040320 03297821 */ addu $t7, $t9, $t1 +/* 040F24 80040324 8459000E */ lh $t9, 0xe($v0) +/* 040F28 80040328 A44F0006 */ sh $t7, 6($v0) +/* 040F2C 8004032C 01C9C021 */ addu $t8, $t6, $t1 +/* 040F30 80040330 03297821 */ addu $t7, $t9, $t1 +/* 040F34 80040334 A458000A */ sh $t8, 0xa($v0) +/* 040F38 80040338 A44F000E */ sh $t7, 0xe($v0) +/* 040F3C 8004033C 84580008 */ lh $t8, 8($v0) +/* 040F40 80040340 844F000C */ lh $t7, 0xc($v0) +/* 040F44 80040344 00687021 */ addu $t6, $v1, $t0 +/* 040F48 80040348 A44E0004 */ sh $t6, 4($v0) +/* 040F4C 8004034C 0308C821 */ addu $t9, $t8, $t0 +/* 040F50 80040350 01E87021 */ addu $t6, $t7, $t0 +/* 040F54 80040354 A4590008 */ sh $t9, 8($v0) +/* 040F58 80040358 A44E000C */ sh $t6, 0xc($v0) +/* 040F5C 8004035C 85440010 */ lh $a0, 0x10($t2) +/* 040F60 80040360 00000000 */ nop +/* 040F64 80040364 00A4082A */ slt $at, $a1, $a0 +.L80040368: +/* 040F68 80040368 1420FFB6 */ bnez $at, .L80040244 +/* 040F6C 8004036C 00000000 */ nop +/* 040F70 80040370 85620020 */ lh $v0, 0x20($t3) +/* 040F74 80040374 00000000 */ nop +/* 040F78 80040378 0182082A */ slt $at, $t4, $v0 +.L8004037C: +/* 040F7C 8004037C 1420FFA6 */ bnez $at, .L80040218 +/* 040F80 80040380 254A000C */ addiu $t2, $t2, 0xc +.L80040384: +/* 040F84 80040384 8618001A */ lh $t8, 0x1a($s0) +/* 040F88 80040388 27FF0001 */ addiu $ra, $ra, 1 +/* 040F8C 8004038C 03F8082A */ slt $at, $ra, $t8 +/* 040F90 80040390 1420FF9C */ bnez $at, .L80040204 +/* 040F94 80040394 256B0044 */ addiu $t3, $t3, 0x44 +.L80040398: +/* 040F98 80040398 8FBF001C */ lw $ra, 0x1c($sp) +/* 040F9C 8004039C 8FB00018 */ lw $s0, 0x18($sp) +/* 040FA0 800403A0 03E00008 */ jr $ra +/* 040FA4 800403A4 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_032760/func_800403A8.s b/asm/non_matchings/unknown_032760/func_800403A8.s new file mode 100644 index 00000000..70bfd84c --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800403A8.s @@ -0,0 +1,14 @@ +glabel func_800403A8 +/* 040FA8 800403A8 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 040FAC 800403AC AFBF0014 */ sw $ra, 0x14($sp) +/* 040FB0 800403B0 AFA40018 */ sw $a0, 0x18($sp) +/* 040FB4 800403B4 0C00C72B */ jal func_80031CAC +/* 040FB8 800403B8 AFA60020 */ sw $a2, 0x20($sp) +/* 040FBC 800403BC 8FAE0018 */ lw $t6, 0x18($sp) +/* 040FC0 800403C0 00000000 */ nop +/* 040FC4 800403C4 ADC20064 */ sw $v0, 0x64($t6) +/* 040FC8 800403C8 8FBF0014 */ lw $ra, 0x14($sp) +/* 040FCC 800403CC 27BD0018 */ addiu $sp, $sp, 0x18 +/* 040FD0 800403D0 03E00008 */ jr $ra +/* 040FD4 800403D4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_800403D8.s b/asm/non_matchings/unknown_032760/func_800403D8.s new file mode 100644 index 00000000..b9c47767 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800403D8.s @@ -0,0 +1,30 @@ +glabel func_800403D8 +/* 040FD8 800403D8 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 040FDC 800403DC AFBF0014 */ sw $ra, 0x14($sp) +/* 040FE0 800403E0 AFA5001C */ sw $a1, 0x1c($sp) +/* 040FE4 800403E4 AFA60020 */ sw $a2, 0x20($sp) +/* 040FE8 800403E8 00803825 */ move $a3, $a0 +/* 040FEC 800403EC 8CE5000C */ lw $a1, 0xc($a3) +/* 040FF0 800403F0 8CE60014 */ lw $a2, 0x14($a3) +/* 040FF4 800403F4 8484002E */ lh $a0, 0x2e($a0) +/* 040FF8 800403F8 0C02F995 */ jal func_800BE654 +/* 040FFC 800403FC AFA70018 */ sw $a3, 0x18($sp) +/* 041000 80040400 8FA70018 */ lw $a3, 0x18($sp) +/* 041004 80040404 240E0001 */ li $t6, 1 +/* 041008 80040408 8CEF004C */ lw $t7, 0x4c($a3) +/* 04100C 8004040C ACE20064 */ sw $v0, 0x64($a3) +/* 041010 80040410 A5EE0014 */ sh $t6, 0x14($t7) +/* 041014 80040414 8CF8004C */ lw $t8, 0x4c($a3) +/* 041018 80040418 2419001E */ li $t9, 30 +/* 04101C 8004041C A3000011 */ sb $zero, 0x11($t8) +/* 041020 80040420 8CE8004C */ lw $t0, 0x4c($a3) +/* 041024 80040424 00000000 */ nop +/* 041028 80040428 A1190010 */ sb $t9, 0x10($t0) +/* 04102C 8004042C 8CE9004C */ lw $t1, 0x4c($a3) +/* 041030 80040430 00000000 */ nop +/* 041034 80040434 A1200012 */ sb $zero, 0x12($t1) +/* 041038 80040438 8FBF0014 */ lw $ra, 0x14($sp) +/* 04103C 8004043C 27BD0018 */ addiu $sp, $sp, 0x18 +/* 041040 80040440 03E00008 */ jr $ra +/* 041044 80040444 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80040448.s b/asm/non_matchings/unknown_032760/func_80040448.s new file mode 100644 index 00000000..fa536c52 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80040448.s @@ -0,0 +1,24 @@ +glabel func_80040448 +/* 041048 80040448 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 04104C 8004044C AFBF0014 */ sw $ra, 0x14($sp) +/* 041050 80040450 AFA5001C */ sw $a1, 0x1c($sp) +/* 041054 80040454 8C870064 */ lw $a3, 0x64($a0) +/* 041058 80040458 00803025 */ move $a2, $a0 +/* 04105C 8004045C 10E00006 */ beqz $a3, .L80040478 +/* 041060 80040460 00E02025 */ move $a0, $a3 +/* 041064 80040464 0C02FBAD */ jal func_800BEEB4 +/* 041068 80040468 AFA60018 */ sw $a2, 0x18($sp) +/* 04106C 8004046C 8FA60018 */ lw $a2, 0x18($sp) +/* 041070 80040470 00000000 */ nop +/* 041074 80040474 E4C00010 */ swc1 $f0, 0x10($a2) +.L80040478: +/* 041078 80040478 8FAF001C */ lw $t7, 0x1c($sp) +/* 04107C 8004047C 84CE0018 */ lh $t6, 0x18($a2) +/* 041080 80040480 000FC0C0 */ sll $t8, $t7, 3 +/* 041084 80040484 01D8C821 */ addu $t9, $t6, $t8 +/* 041088 80040488 A4D90018 */ sh $t9, 0x18($a2) +/* 04108C 8004048C 8FBF0014 */ lw $ra, 0x14($sp) +/* 041090 80040490 27BD0018 */ addiu $sp, $sp, 0x18 +/* 041094 80040494 03E00008 */ jr $ra +/* 041098 80040498 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8004049C.s b/asm/non_matchings/unknown_032760/func_8004049C.s new file mode 100644 index 00000000..fe381cf6 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8004049C.s @@ -0,0 +1,56 @@ +glabel func_8004049C +/* 04109C 8004049C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0410A0 800404A0 AFBF0014 */ sw $ra, 0x14($sp) +/* 0410A4 800404A4 AFA5001C */ sw $a1, 0x1c($sp) +/* 0410A8 800404A8 AFA60020 */ sw $a2, 0x20($sp) +/* 0410AC 800404AC 00803825 */ move $a3, $a0 +/* 0410B0 800404B0 8CE5000C */ lw $a1, 0xc($a3) +/* 0410B4 800404B4 8CE60014 */ lw $a2, 0x14($a3) +/* 0410B8 800404B8 8484002E */ lh $a0, 0x2e($a0) +/* 0410BC 800404BC 0C02F995 */ jal func_800BE654 +/* 0410C0 800404C0 AFA70018 */ sw $a3, 0x18($sp) +/* 0410C4 800404C4 8FA70018 */ lw $a3, 0x18($sp) +/* 0410C8 800404C8 8FA3001C */ lw $v1, 0x1c($sp) +/* 0410CC 800404CC 8CEF004C */ lw $t7, 0x4c($a3) +/* 0410D0 800404D0 240E0001 */ li $t6, 1 +/* 0410D4 800404D4 ACE20064 */ sw $v0, 0x64($a3) +/* 0410D8 800404D8 A5EE0014 */ sh $t6, 0x14($t7) +/* 0410DC 800404DC 8CF9004C */ lw $t9, 0x4c($a3) +/* 0410E0 800404E0 24180002 */ li $t8, 2 +/* 0410E4 800404E4 A3380011 */ sb $t8, 0x11($t9) +/* 0410E8 800404E8 8CE9004C */ lw $t1, 0x4c($a3) +/* 0410EC 800404EC 2408001E */ li $t0, 30 +/* 0410F0 800404F0 A1280010 */ sb $t0, 0x10($t1) +/* 0410F4 800404F4 906B0009 */ lbu $t3, 9($v1) +/* 0410F8 800404F8 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 0410FC 800404FC 448B2000 */ mtc1 $t3, $f4 +/* 041100 80040500 44811000 */ mtc1 $at, $f2 +/* 041104 80040504 46802020 */ cvt.s.w $f0, $f4 +/* 041108 80040508 3C014280 */ li $at, 0x42800000 # 64.000000 +/* 04110C 8004050C 44813000 */ mtc1 $at, $f6 +/* 041110 80040510 4602003C */ c.lt.s $f0, $f2 +/* 041114 80040514 00000000 */ nop +/* 041118 80040518 45000003 */ bc1f .L80040528 +/* 04111C 8004051C 00000000 */ nop +/* 041120 80040520 46001006 */ mov.s $f0, $f2 +/* 041124 80040524 00000000 */ nop +.L80040528: +/* 041128 80040528 46060003 */ div.s $f0, $f0, $f6 +/* 04112C 8004052C 8CEC0040 */ lw $t4, 0x40($a3) +/* 041130 80040530 00000000 */ nop +/* 041134 80040534 C588000C */ lwc1 $f8, 0xc($t4) +/* 041138 80040538 00000000 */ nop +/* 04113C 8004053C 46004282 */ mul.s $f10, $f8, $f0 +/* 041140 80040540 E4EA0008 */ swc1 $f10, 8($a3) +/* 041144 80040544 906D0008 */ lbu $t5, 8($v1) +/* 041148 80040548 00000000 */ nop +/* 04114C 8004054C A0ED003A */ sb $t5, 0x3a($a3) +/* 041150 80040550 906F000A */ lbu $t7, 0xa($v1) +/* 041154 80040554 00000000 */ nop +/* 041158 80040558 000FC280 */ sll $t8, $t7, 0xa +/* 04115C 8004055C A4F80000 */ sh $t8, ($a3) +/* 041160 80040560 8FBF0014 */ lw $ra, 0x14($sp) +/* 041164 80040564 27BD0018 */ addiu $sp, $sp, 0x18 +/* 041168 80040568 03E00008 */ jr $ra +/* 04116C 8004056C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80040570.s b/asm/non_matchings/unknown_032760/func_80040570.s new file mode 100644 index 00000000..86286164 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80040570.s @@ -0,0 +1,177 @@ +glabel func_80040570 +/* 041170 80040570 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 041174 80040574 AFBF0014 */ sw $ra, 0x14($sp) +/* 041178 80040578 AFA5002C */ sw $a1, 0x2c($sp) +/* 04117C 8004057C 8C870064 */ lw $a3, 0x64($a0) +/* 041180 80040580 00803025 */ move $a2, $a0 +/* 041184 80040584 10E00006 */ beqz $a3, .L800405A0 +/* 041188 80040588 00E02025 */ move $a0, $a3 +/* 04118C 8004058C 0C02FBAD */ jal func_800BEEB4 +/* 041190 80040590 AFA60028 */ sw $a2, 0x28($sp) +/* 041194 80040594 8FA60028 */ lw $a2, 0x28($sp) +/* 041198 80040598 10000009 */ b .L800405C0 +/* 04119C 8004059C E4C00010 */ swc1 $f0, 0x10($a2) +.L800405A0: +/* 0411A0 800405A0 8CCE003C */ lw $t6, 0x3c($a2) +/* 0411A4 800405A4 00000000 */ nop +/* 0411A8 800405A8 85CF0004 */ lh $t7, 4($t6) +/* 0411AC 800405AC 00000000 */ nop +/* 0411B0 800405B0 448F2000 */ mtc1 $t7, $f4 +/* 0411B4 800405B4 00000000 */ nop +/* 0411B8 800405B8 468021A0 */ cvt.s.w $f6, $f4 +/* 0411BC 800405BC E4C60010 */ swc1 $f6, 0x10($a2) +.L800405C0: +/* 0411C0 800405C0 8CC2005C */ lw $v0, 0x5c($a2) +/* 0411C4 800405C4 00000000 */ nop +/* 0411C8 800405C8 8C580100 */ lw $t8, 0x100($v0) +/* 0411CC 800405CC 00000000 */ nop +/* 0411D0 800405D0 1300005D */ beqz $t8, .L80040748 +/* 0411D4 800405D4 00000000 */ nop +/* 0411D8 800405D8 8CD9007C */ lw $t9, 0x7c($a2) +/* 0411DC 800405DC 24010001 */ li $at, 1 +/* 0411E0 800405E0 27280001 */ addiu $t0, $t9, 1 +/* 0411E4 800405E4 ACC8007C */ sw $t0, 0x7c($a2) +/* 0411E8 800405E8 8C430100 */ lw $v1, 0x100($v0) +/* 0411EC 800405EC 00000000 */ nop +/* 0411F0 800405F0 84690048 */ lh $t1, 0x48($v1) +/* 0411F4 800405F4 00000000 */ nop +/* 0411F8 800405F8 15210016 */ bne $t1, $at, .L80040654 +/* 0411FC 800405FC 00000000 */ nop +/* 041200 80040600 8C620064 */ lw $v0, 0x64($v1) +/* 041204 80040604 3C01C010 */ li $at, 0xC0100000 # -2.250000 +/* 041208 80040608 C448002C */ lwc1 $f8, 0x2c($v0) +/* 04120C 8004060C 44818800 */ mtc1 $at, $f17 +/* 041210 80040610 44808000 */ mtc1 $zero, $f16 +/* 041214 80040614 460042A1 */ cvt.d.s $f10, $f8 +/* 041218 80040618 4630503C */ c.lt.d $f10, $f16 +/* 04121C 8004061C 00000000 */ nop +/* 041220 80040620 4500000C */ bc1f .L80040654 +/* 041224 80040624 00000000 */ nop +/* 041228 80040628 804A01D8 */ lb $t2, 0x1d8($v0) +/* 04122C 8004062C 24050012 */ li $a1, 18 +/* 041230 80040630 15400008 */ bnez $t2, .L80040654 +/* 041234 80040634 00000000 */ nop +/* 041238 80040638 84440000 */ lh $a0, ($v0) +/* 04123C 8004063C AFA60028 */ sw $a2, 0x28($sp) +/* 041240 80040640 0C01C8D2 */ jal func_80072348 +/* 041244 80040644 AFA30024 */ sw $v1, 0x24($sp) +/* 041248 80040648 8FA30024 */ lw $v1, 0x24($sp) +/* 04124C 8004064C 8FA60028 */ lw $a2, 0x28($sp) +/* 041250 80040650 00000000 */ nop +.L80040654: +/* 041254 80040654 84C40000 */ lh $a0, ($a2) +/* 041258 80040658 AFA60028 */ sw $a2, 0x28($sp) +/* 04125C 8004065C 00042023 */ negu $a0, $a0 +/* 041260 80040660 00045C00 */ sll $t3, $a0, 0x10 +/* 041264 80040664 000B2403 */ sra $a0, $t3, 0x10 +/* 041268 80040668 0C01C1F1 */ jal func_800707C4 +/* 04126C 8004066C AFA30024 */ sw $v1, 0x24($sp) +/* 041270 80040670 8FA60028 */ lw $a2, 0x28($sp) +/* 041274 80040674 00000000 */ nop +/* 041278 80040678 84C40000 */ lh $a0, ($a2) +/* 04127C 8004067C E7A00018 */ swc1 $f0, 0x18($sp) +/* 041280 80040680 00042023 */ negu $a0, $a0 +/* 041284 80040684 00046C00 */ sll $t5, $a0, 0x10 +/* 041288 80040688 0C01C1FE */ jal func_800707F8 +/* 04128C 8004068C 000D2403 */ sra $a0, $t5, 0x10 +/* 041290 80040690 8FA30024 */ lw $v1, 0x24($sp) +/* 041294 80040694 8FA60028 */ lw $a2, 0x28($sp) +/* 041298 80040698 C464000C */ lwc1 $f4, 0xc($v1) +/* 04129C 8004069C C4D2000C */ lwc1 $f18, 0xc($a2) +/* 0412A0 800406A0 C4680014 */ lwc1 $f8, 0x14($v1) +/* 0412A4 800406A4 46049081 */ sub.s $f2, $f18, $f4 +/* 0412A8 800406A8 C4C60014 */ lwc1 $f6, 0x14($a2) +/* 0412AC 800406AC 46001282 */ mul.s $f10, $f2, $f0 +/* 0412B0 800406B0 C7AE0018 */ lwc1 $f14, 0x18($sp) +/* 0412B4 800406B4 C472001C */ lwc1 $f18, 0x1c($v1) +/* 0412B8 800406B8 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 0412BC 800406BC 46083301 */ sub.s $f12, $f6, $f8 +/* 0412C0 800406C0 C4660024 */ lwc1 $f6, 0x24($v1) +/* 0412C4 800406C4 460E6402 */ mul.s $f16, $f12, $f14 +/* 0412C8 800406C8 8CCF0078 */ lw $t7, 0x78($a2) +/* 0412CC 800406CC 240AFE00 */ li $t2, -512 +/* 0412D0 800406D0 460E9102 */ mul.s $f4, $f18, $f14 +/* 0412D4 800406D4 46105080 */ add.s $f2, $f10, $f16 +/* 0412D8 800406D8 44815000 */ mtc1 $at, $f10 +/* 0412DC 800406DC 46003202 */ mul.s $f8, $f6, $f0 +/* 0412E0 800406E0 46082301 */ sub.s $f12, $f4, $f8 +/* 0412E4 800406E4 460C1082 */ mul.s $f2, $f2, $f12 +/* 0412E8 800406E8 00000000 */ nop +/* 0412EC 800406EC 460A1403 */ div.s $f16, $f2, $f10 +/* 0412F0 800406F0 4458F800 */ cfc1 $t8, $31 +/* 0412F4 800406F4 00000000 */ nop +/* 0412F8 800406F8 37010003 */ ori $at, $t8, 3 +/* 0412FC 800406FC 38210002 */ xori $at, $at, 2 +/* 041300 80040700 44C1F800 */ ctc1 $at, $31 +/* 041304 80040704 00000000 */ nop +/* 041308 80040708 460084A4 */ cvt.w.s $f18, $f16 +/* 04130C 8004070C 44199000 */ mfc1 $t9, $f18 +/* 041310 80040710 44D8F800 */ ctc1 $t8, $31 +/* 041314 80040714 01F91023 */ subu $v0, $t7, $t9 +/* 041318 80040718 28410201 */ slti $at, $v0, 0x201 +/* 04131C 8004071C 14200003 */ bnez $at, .L8004072C +/* 041320 80040720 ACC20078 */ sw $v0, 0x78($a2) +/* 041324 80040724 24020200 */ li $v0, 512 +/* 041328 80040728 ACC20078 */ sw $v0, 0x78($a2) +.L8004072C: +/* 04132C 8004072C 2841FE00 */ slti $at, $v0, -0x200 +/* 041330 80040730 10200002 */ beqz $at, .L8004073C +/* 041334 80040734 00000000 */ nop +/* 041338 80040738 ACCA0078 */ sw $t2, 0x78($a2) +.L8004073C: +/* 04133C 8004073C 8CC3007C */ lw $v1, 0x7c($a2) +/* 041340 80040740 10000008 */ b .L80040764 +/* 041344 80040744 44834000 */ mtc1 $v1, $f8 +.L80040748: +/* 041348 80040748 8CC3007C */ lw $v1, 0x7c($a2) +/* 04134C 8004074C 00000000 */ nop +/* 041350 80040750 18600003 */ blez $v1, .L80040760 +/* 041354 80040754 246BFFFF */ addiu $t3, $v1, -1 +/* 041358 80040758 ACCB007C */ sw $t3, 0x7c($a2) +/* 04135C 8004075C 01601825 */ move $v1, $t3 +.L80040760: +/* 041360 80040760 44834000 */ mtc1 $v1, $f8 +.L80040764: +/* 041364 80040764 C4C60010 */ lwc1 $f6, 0x10($a2) +/* 041368 80040768 468042A0 */ cvt.s.w $f10, $f8 +/* 04136C 8004076C 8CC20078 */ lw $v0, 0x78($a2) +/* 041370 80040770 46005421 */ cvt.d.s $f16, $f10 +/* 041374 80040774 46003121 */ cvt.d.s $f4, $f6 +/* 041378 80040778 46302481 */ sub.d $f18, $f4, $f16 +/* 04137C 8004077C 462091A0 */ cvt.s.d $f6, $f18 +/* 041380 80040780 18400009 */ blez $v0, .L800407A8 +/* 041384 80040784 E4C60010 */ swc1 $f6, 0x10($a2) +/* 041388 80040788 8FAC002C */ lw $t4, 0x2c($sp) +/* 04138C 8004078C 00000000 */ nop +/* 041390 80040790 004C6823 */ subu $t5, $v0, $t4 +/* 041394 80040794 ACCD0078 */ sw $t5, 0x78($a2) +/* 041398 80040798 05A10003 */ bgez $t5, .L800407A8 +/* 04139C 8004079C 01A01025 */ move $v0, $t5 +/* 0413A0 800407A0 ACC00078 */ sw $zero, 0x78($a2) +/* 0413A4 800407A4 00001025 */ move $v0, $zero +.L800407A8: +/* 0413A8 800407A8 0441000A */ bgez $v0, .L800407D4 +/* 0413AC 800407AC 8FB9002C */ lw $t9, 0x2c($sp) +/* 0413B0 800407B0 8FAE002C */ lw $t6, 0x2c($sp) +/* 0413B4 800407B4 00000000 */ nop +/* 0413B8 800407B8 004EC021 */ addu $t8, $v0, $t6 +/* 0413BC 800407BC ACD80078 */ sw $t8, 0x78($a2) +/* 0413C0 800407C0 1B000003 */ blez $t8, .L800407D0 +/* 0413C4 800407C4 03001025 */ move $v0, $t8 +/* 0413C8 800407C8 ACC00078 */ sw $zero, 0x78($a2) +/* 0413CC 800407CC 00001025 */ move $v0, $zero +.L800407D0: +/* 0413D0 800407D0 8FB9002C */ lw $t9, 0x2c($sp) +.L800407D4: +/* 0413D4 800407D4 84CF0000 */ lh $t7, ($a2) +/* 0413D8 800407D8 00590019 */ multu $v0, $t9 +/* 0413DC 800407DC 8CCA005C */ lw $t2, 0x5c($a2) +/* 0413E0 800407E0 00004012 */ mflo $t0 +/* 0413E4 800407E4 01E84821 */ addu $t1, $t7, $t0 +/* 0413E8 800407E8 A4C90000 */ sh $t1, ($a2) +/* 0413EC 800407EC AD400100 */ sw $zero, 0x100($t2) +/* 0413F0 800407F0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0413F4 800407F4 27BD0028 */ addiu $sp, $sp, 0x28 +/* 0413F8 800407F8 03E00008 */ jr $ra +/* 0413FC 800407FC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80040800.s b/asm/non_matchings/unknown_032760/func_80040800.s new file mode 100644 index 00000000..3ed8b66b --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80040800.s @@ -0,0 +1,10 @@ +glabel func_80040800 +/* 041400 80040800 84AE0008 */ lh $t6, 8($a1) +/* 041404 80040804 00000000 */ nop +/* 041408 80040808 448E2000 */ mtc1 $t6, $f4 +/* 04140C 8004080C 00000000 */ nop +/* 041410 80040810 46802020 */ cvt.s.w $f0, $f4 +/* 041414 80040814 46000002 */ mul.s $f0, $f0, $f0 +/* 041418 80040818 03E00008 */ jr $ra +/* 04141C 8004081C E4800078 */ swc1 $f0, 0x78($a0) + diff --git a/asm/non_matchings/unknown_032760/func_80040820.s b/asm/non_matchings/unknown_032760/func_80040820.s new file mode 100644 index 00000000..686105dd --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80040820.s @@ -0,0 +1,73 @@ +glabel func_80040820 +/* 041420 80040820 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 041424 80040824 AFBF001C */ sw $ra, 0x1c($sp) +/* 041428 80040828 AFA40058 */ sw $a0, 0x58($sp) +/* 04142C 8004082C 0C019888 */ jal func_80066220 +/* 041430 80040830 AFA5005C */ sw $a1, 0x5c($sp) +/* 041434 80040834 27A40050 */ addiu $a0, $sp, 0x50 +/* 041438 80040838 0C006E9D */ jal func_8001BA74 +/* 04143C 8004083C AFA20054 */ sw $v0, 0x54($sp) +/* 041440 80040840 8FA50050 */ lw $a1, 0x50($sp) +/* 041444 80040844 8FA60054 */ lw $a2, 0x54($sp) +/* 041448 80040848 8FA80058 */ lw $t0, 0x58($sp) +/* 04144C 8004084C 10A00033 */ beqz $a1, .L8004091C +/* 041450 80040850 24A4FFFF */ addiu $a0, $a1, -1 +/* 041454 80040854 00047080 */ sll $t6, $a0, 2 +/* 041458 80040858 01C23821 */ addu $a3, $t6, $v0 +/* 04145C 8004085C 2443FFFC */ addiu $v1, $v0, -4 +.L80040860: +/* 041460 80040860 8C640004 */ lw $a0, 4($v1) +/* 041464 80040864 24630004 */ addiu $v1, $v1, 4 +/* 041468 80040868 0067082B */ sltu $at, $v1, $a3 +/* 04146C 8004086C 8C850064 */ lw $a1, 0x64($a0) +/* 041470 80040870 10200005 */ beqz $at, .L80040888 +/* 041474 80040874 00000000 */ nop +/* 041478 80040878 84AF0000 */ lh $t7, ($a1) +/* 04147C 8004087C 00000000 */ nop +/* 041480 80040880 14CFFFF7 */ bne $a2, $t7, .L80040860 +/* 041484 80040884 00000000 */ nop +.L80040888: +/* 041488 80040888 C504000C */ lwc1 $f4, 0xc($t0) +/* 04148C 8004088C C486000C */ lwc1 $f6, 0xc($a0) +/* 041490 80040890 C5080014 */ lwc1 $f8, 0x14($t0) +/* 041494 80040894 46062001 */ sub.s $f0, $f4, $f6 +/* 041498 80040898 C48A0014 */ lwc1 $f10, 0x14($a0) +/* 04149C 8004089C 46000402 */ mul.s $f16, $f0, $f0 +/* 0414A0 800408A0 460A4081 */ sub.s $f2, $f8, $f10 +/* 0414A4 800408A4 C50C0078 */ lwc1 $f12, 0x78($t0) +/* 0414A8 800408A8 8D03003C */ lw $v1, 0x3c($t0) +/* 0414AC 800408AC 46021482 */ mul.s $f18, $f2, $f2 +/* 0414B0 800408B0 46128100 */ add.s $f4, $f16, $f18 +/* 0414B4 800408B4 460C203E */ c.le.s $f4, $f12 +/* 0414B8 800408B8 00000000 */ nop +/* 0414BC 800408BC 45000018 */ bc1f .L80040920 +/* 0414C0 800408C0 8FBF001C */ lw $ra, 0x1c($sp) +/* 0414C4 800408C4 906A0010 */ lbu $t2, 0x10($v1) +/* 0414C8 800408C8 24020101 */ li $v0, 257 +/* 0414CC 800408CC 01420019 */ multu $t2, $v0 +/* 0414D0 800408D0 906B0011 */ lbu $t3, 0x11($v1) +/* 0414D4 800408D4 8464000A */ lh $a0, 0xa($v1) +/* 0414D8 800408D8 8465000C */ lh $a1, 0xc($v1) +/* 0414DC 800408DC 8466000E */ lh $a2, 0xe($v1) +/* 0414E0 800408E0 0004C200 */ sll $t8, $a0, 8 +/* 0414E4 800408E4 0005CA00 */ sll $t9, $a1, 8 +/* 0414E8 800408E8 00064A00 */ sll $t1, $a2, 8 +/* 0414EC 800408EC 01203025 */ move $a2, $t1 +/* 0414F0 800408F0 03202825 */ move $a1, $t9 +/* 0414F4 800408F4 03002025 */ move $a0, $t8 +/* 0414F8 800408F8 00003812 */ mflo $a3 +/* 0414FC 800408FC 00000000 */ nop +/* 041500 80040900 00000000 */ nop +/* 041504 80040904 01620019 */ multu $t3, $v0 +/* 041508 80040908 00006012 */ mflo $t4 +/* 04150C 8004090C AFAC0010 */ sw $t4, 0x10($sp) +/* 041510 80040910 846D0012 */ lh $t5, 0x12($v1) +/* 041514 80040914 0C02AF17 */ jal func_800ABC5C +/* 041518 80040918 AFAD0014 */ sw $t5, 0x14($sp) +.L8004091C: +/* 04151C 8004091C 8FBF001C */ lw $ra, 0x1c($sp) +.L80040920: +/* 041520 80040920 27BD0058 */ addiu $sp, $sp, 0x58 +/* 041524 80040924 03E00008 */ jr $ra +/* 041528 80040928 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8004092C.s b/asm/non_matchings/unknown_032760/func_8004092C.s new file mode 100644 index 00000000..b48ee8ed --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8004092C.s @@ -0,0 +1,10 @@ +glabel func_8004092C +/* 04152C 8004092C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 041530 80040930 AFBF0014 */ sw $ra, 0x14($sp) +/* 041534 80040934 0C02B22A */ jal func_800AC8A8 +/* 041538 80040938 AFA5001C */ sw $a1, 0x1c($sp) +/* 04153C 8004093C 8FBF0014 */ lw $ra, 0x14($sp) +/* 041540 80040940 27BD0018 */ addiu $sp, $sp, 0x18 +/* 041544 80040944 03E00008 */ jr $ra +/* 041548 80040948 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8004094C.s b/asm/non_matchings/unknown_032760/func_8004094C.s new file mode 100644 index 00000000..430b97ae --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8004094C.s @@ -0,0 +1,24 @@ +glabel func_8004094C +/* 04154C 8004094C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 041550 80040950 AFBF0014 */ sw $ra, 0x14($sp) +/* 041554 80040954 AFA5001C */ sw $a1, 0x1c($sp) +/* 041558 80040958 AFA60020 */ sw $a2, 0x20($sp) +/* 04155C 8004095C 0C02B3D8 */ jal func_800ACF60 +/* 041560 80040960 AFA40018 */ sw $a0, 0x18($sp) +/* 041564 80040964 8FAE001C */ lw $t6, 0x1c($sp) +/* 041568 80040968 8FA40018 */ lw $a0, 0x18($sp) +/* 04156C 8004096C 85CF0008 */ lh $t7, 8($t6) +/* 041570 80040970 3C014220 */ li $at, 0x42200000 # 40.000000 +/* 041574 80040974 448F2000 */ mtc1 $t7, $f4 +/* 041578 80040978 44815000 */ mtc1 $at, $f10 +/* 04157C 8004097C 468021A0 */ cvt.s.w $f6, $f4 +/* 041580 80040980 E4860008 */ swc1 $f6, 8($a0) +/* 041584 80040984 C4880008 */ lwc1 $f8, 8($a0) +/* 041588 80040988 00000000 */ nop +/* 04158C 8004098C 460A4403 */ div.s $f16, $f8, $f10 +/* 041590 80040990 E4900008 */ swc1 $f16, 8($a0) +/* 041594 80040994 8FBF0014 */ lw $ra, 0x14($sp) +/* 041598 80040998 27BD0018 */ addiu $sp, $sp, 0x18 +/* 04159C 8004099C 03E00008 */ jr $ra +/* 0415A0 800409A0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_800409A4.s b/asm/non_matchings/unknown_032760/func_800409A4.s new file mode 100644 index 00000000..1e232be3 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800409A4.s @@ -0,0 +1,11 @@ +glabel func_800409A4 +/* 0415A4 800409A4 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0415A8 800409A8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0415AC 800409AC AFA5001C */ sw $a1, 0x1c($sp) +/* 0415B0 800409B0 0C02FD49 */ jal func_800BF524 +/* 0415B4 800409B4 AFA60020 */ sw $a2, 0x20($sp) +/* 0415B8 800409B8 8FBF0014 */ lw $ra, 0x14($sp) +/* 0415BC 800409BC 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0415C0 800409C0 03E00008 */ jr $ra +/* 0415C4 800409C4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_800409C8.s b/asm/non_matchings/unknown_032760/func_800409C8.s new file mode 100644 index 00000000..7a1c1c7f --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800409C8.s @@ -0,0 +1,173 @@ +glabel func_800409C8 +/* 0415C8 800409C8 AFA50004 */ sw $a1, 4($sp) +/* 0415CC 800409CC 8C820064 */ lw $v0, 0x64($a0) +/* 0415D0 800409D0 14C0003B */ bnez $a2, .L80040AC0 +/* 0415D4 800409D4 240E0180 */ li $t6, 384 +/* 0415D8 800409D8 44800000 */ mtc1 $zero, $f0 +/* 0415DC 800409DC 3C06800E */ lui $a2, %hi(D_800DCAA8) # $a2, 0x800e +/* 0415E0 800409E0 E4800020 */ swc1 $f0, 0x20($a0) +/* 0415E4 800409E4 3C03800E */ lui $v1, %hi(D_800DCB28) # $v1, 0x800e +/* 0415E8 800409E8 A04000FE */ sb $zero, 0xfe($v0) +/* 0415EC 800409EC AC400100 */ sw $zero, 0x100($v0) +/* 0415F0 800409F0 A4400104 */ sh $zero, 0x104($v0) +/* 0415F4 800409F4 A04000FD */ sb $zero, 0xfd($v0) +/* 0415F8 800409F8 A44E0106 */ sh $t6, 0x106($v0) +/* 0415FC 800409FC 2463CB28 */ addiu $v1, %lo(D_800DCB28) # addiu $v1, $v1, -0x34d8 +/* 041600 80040A00 24C6CAA8 */ addiu $a2, %lo(D_800DCAA8) # addiu $a2, $a2, -0x3558 +/* 041604 80040A04 00402825 */ move $a1, $v0 +/* 041608 80040A08 E4400108 */ swc1 $f0, 0x108($v0) +.L80040A0C: +/* 04160C 80040A0C 90CF0000 */ lbu $t7, ($a2) +/* 041610 80040A10 24C60010 */ addiu $a2, $a2, 0x10 +/* 041614 80040A14 A0AF0000 */ sb $t7, ($a1) +/* 041618 80040A18 90D8FFF1 */ lbu $t8, -0xf($a2) +/* 04161C 80040A1C 00C3082B */ sltu $at, $a2, $v1 +/* 041620 80040A20 A0B80001 */ sb $t8, 1($a1) +/* 041624 80040A24 90D9FFF2 */ lbu $t9, -0xe($a2) +/* 041628 80040A28 24A50010 */ addiu $a1, $a1, 0x10 +/* 04162C 80040A2C A0B9FFF2 */ sb $t9, -0xe($a1) +/* 041630 80040A30 90C9FFF3 */ lbu $t1, -0xd($a2) +/* 041634 80040A34 1420FFF5 */ bnez $at, .L80040A0C +/* 041638 80040A38 A0A9FFF3 */ sb $t1, -0xd($a1) +/* 04163C 80040A3C 3C06800E */ lui $a2, %hi(D_800DCB28) # $a2, 0x800e +/* 041640 80040A40 24C6CB28 */ addiu $a2, %lo(D_800DCB28) # addiu $a2, $a2, -0x34d8 +/* 041644 80040A44 00001825 */ move $v1, $zero +/* 041648 80040A48 00402825 */ move $a1, $v0 +/* 04164C 80040A4C 24080006 */ li $t0, 6 +/* 041650 80040A50 240700FF */ li $a3, 255 +.L80040A54: +/* 041654 80040A54 84CA0000 */ lh $t2, ($a2) +/* 041658 80040A58 24630001 */ addiu $v1, $v1, 1 +/* 04165C 80040A5C A4AA0080 */ sh $t2, 0x80($a1) +/* 041660 80040A60 84CB0002 */ lh $t3, 2($a2) +/* 041664 80040A64 24A5000A */ addiu $a1, $a1, 0xa +/* 041668 80040A68 A4AB0078 */ sh $t3, 0x78($a1) +/* 04166C 80040A6C 84CC0004 */ lh $t4, 4($a2) +/* 041670 80040A70 A0A7007C */ sb $a3, 0x7c($a1) +/* 041674 80040A74 A0A7007D */ sb $a3, 0x7d($a1) +/* 041678 80040A78 A0A7007E */ sb $a3, 0x7e($a1) +/* 04167C 80040A7C A0A7007F */ sb $a3, 0x7f($a1) +/* 041680 80040A80 A4AC007A */ sh $t4, 0x7a($a1) +/* 041684 80040A84 84CD0000 */ lh $t5, ($a2) +/* 041688 80040A88 24C60006 */ addiu $a2, $a2, 6 +/* 04168C 80040A8C A4AD00B2 */ sh $t5, 0xb2($a1) +/* 041690 80040A90 84CEFFFC */ lh $t6, -4($a2) +/* 041694 80040A94 00000000 */ nop +/* 041698 80040A98 A4AE00B4 */ sh $t6, 0xb4($a1) +/* 04169C 80040A9C 84CFFFFE */ lh $t7, -2($a2) +/* 0416A0 80040AA0 A0A700B8 */ sb $a3, 0xb8($a1) +/* 0416A4 80040AA4 A0A700B9 */ sb $a3, 0xb9($a1) +/* 0416A8 80040AA8 A0A700BA */ sb $a3, 0xba($a1) +/* 0416AC 80040AAC A0A700BB */ sb $a3, 0xbb($a1) +/* 0416B0 80040AB0 1468FFE8 */ bne $v1, $t0, .L80040A54 +/* 0416B4 80040AB4 A4AF00B6 */ sh $t7, 0xb6($a1) +/* 0416B8 80040AB8 24180001 */ li $t8, 1 +/* 0416BC 80040ABC A05800FC */ sb $t8, 0xfc($v0) +.L80040AC0: +/* 0416C0 80040AC0 8FB90004 */ lw $t9, 4($sp) +/* 0416C4 80040AC4 00402825 */ move $a1, $v0 +/* 0416C8 80040AC8 9329000B */ lbu $t1, 0xb($t9) +/* 0416CC 80040ACC 3C06800E */ lui $a2, %hi(D_800DCAA8) # $a2, 0x800e +/* 0416D0 80040AD0 44892000 */ mtc1 $t1, $f4 +/* 0416D4 80040AD4 05210005 */ bgez $t1, .L80040AEC +/* 0416D8 80040AD8 468021A0 */ cvt.s.w $f6, $f4 +/* 0416DC 80040ADC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0416E0 80040AE0 44814000 */ mtc1 $at, $f8 +/* 0416E4 80040AE4 00000000 */ nop +/* 0416E8 80040AE8 46083180 */ add.s $f6, $f6, $f8 +.L80040AEC: +/* 0416EC 80040AEC 3C01800E */ lui $at, %hi(D_800E6218) # $at, 0x800e +/* 0416F0 80040AF0 C42A6218 */ lwc1 $f10, %lo(D_800E6218)($at) +/* 0416F4 80040AF4 8C8B0040 */ lw $t3, 0x40($a0) +/* 0416F8 80040AF8 460A3402 */ mul.s $f16, $f6, $f10 +/* 0416FC 80040AFC 00003825 */ move $a3, $zero +/* 041700 80040B00 24C6CAA8 */ addiu $a2, %lo(D_800DCAA8) # addiu $a2, $a2, -0x3558 +/* 041704 80040B04 E4900008 */ swc1 $f16, 8($a0) +/* 041708 80040B08 8FAA0004 */ lw $t2, 4($sp) +/* 04170C 80040B0C 816C0055 */ lb $t4, 0x55($t3) +/* 041710 80040B10 9143000A */ lbu $v1, 0xa($t2) +/* 041714 80040B14 00000000 */ nop +/* 041718 80040B18 006C082A */ slt $at, $v1, $t4 +/* 04171C 80040B1C 10200007 */ beqz $at, .L80040B3C +/* 041720 80040B20 00000000 */ nop +/* 041724 80040B24 8C8D0068 */ lw $t5, 0x68($a0) +/* 041728 80040B28 00037080 */ sll $t6, $v1, 2 +/* 04172C 80040B2C 01AE7821 */ addu $t7, $t5, $t6 +/* 041730 80040B30 8DF80000 */ lw $t8, ($t7) +/* 041734 80040B34 10000006 */ b .L80040B50 +/* 041738 80040B38 AC5800F8 */ sw $t8, 0xf8($v0) +.L80040B3C: +/* 04173C 80040B3C 8C990068 */ lw $t9, 0x68($a0) +/* 041740 80040B40 00000000 */ nop +/* 041744 80040B44 8F290000 */ lw $t1, ($t9) +/* 041748 80040B48 00000000 */ nop +/* 04174C 80040B4C AC4900F8 */ sw $t1, 0xf8($v0) +.L80040B50: +/* 041750 80040B50 8C4300F8 */ lw $v1, 0xf8($v0) +/* 041754 80040B54 3C02800E */ lui $v0, %hi(D_800DCB28) # $v0, 0x800e +/* 041758 80040B58 1060000A */ beqz $v1, .L80040B84 +/* 04175C 80040B5C 2442CB28 */ addiu $v0, %lo(D_800DCB28) # addiu $v0, $v0, -0x34d8 +/* 041760 80040B60 90670000 */ lbu $a3, ($v1) +/* 041764 80040B64 90640001 */ lbu $a0, 1($v1) +/* 041768 80040B68 24E7FFFF */ addiu $a3, $a3, -1 +/* 04176C 80040B6C 2484FFFF */ addiu $a0, $a0, -1 +/* 041770 80040B70 00075140 */ sll $t2, $a3, 5 +/* 041774 80040B74 00045940 */ sll $t3, $a0, 5 +/* 041778 80040B78 01403825 */ move $a3, $t2 +/* 04177C 80040B7C 10000002 */ b .L80040B88 +/* 041780 80040B80 01602025 */ move $a0, $t3 +.L80040B84: +/* 041784 80040B84 00002025 */ move $a0, $zero +.L80040B88: +/* 041788 80040B88 84CC0004 */ lh $t4, 4($a2) +/* 04178C 80040B8C 24C60020 */ addiu $a2, $a2, 0x20 +/* 041790 80040B90 01876824 */ and $t5, $t4, $a3 +/* 041794 80040B94 A4AD0004 */ sh $t5, 4($a1) +/* 041798 80040B98 84CEFFE6 */ lh $t6, -0x1a($a2) +/* 04179C 80040B9C 24A50020 */ addiu $a1, $a1, 0x20 +/* 0417A0 80040BA0 01C47824 */ and $t7, $t6, $a0 +/* 0417A4 80040BA4 A4AFFFE6 */ sh $t7, -0x1a($a1) +/* 0417A8 80040BA8 84D8FFE8 */ lh $t8, -0x18($a2) +/* 0417AC 80040BAC 00000000 */ nop +/* 0417B0 80040BB0 0307C824 */ and $t9, $t8, $a3 +/* 0417B4 80040BB4 A4B9FFE8 */ sh $t9, -0x18($a1) +/* 0417B8 80040BB8 84C9FFEA */ lh $t1, -0x16($a2) +/* 0417BC 80040BBC 00000000 */ nop +/* 0417C0 80040BC0 01245024 */ and $t2, $t1, $a0 +/* 0417C4 80040BC4 A4AAFFEA */ sh $t2, -0x16($a1) +/* 0417C8 80040BC8 84CBFFEC */ lh $t3, -0x14($a2) +/* 0417CC 80040BCC 00000000 */ nop +/* 0417D0 80040BD0 01676024 */ and $t4, $t3, $a3 +/* 0417D4 80040BD4 A4ACFFEC */ sh $t4, -0x14($a1) +/* 0417D8 80040BD8 84CDFFEE */ lh $t5, -0x12($a2) +/* 0417DC 80040BDC 00000000 */ nop +/* 0417E0 80040BE0 01A47024 */ and $t6, $t5, $a0 +/* 0417E4 80040BE4 A4AEFFEE */ sh $t6, -0x12($a1) +/* 0417E8 80040BE8 84CFFFF4 */ lh $t7, -0xc($a2) +/* 0417EC 80040BEC 00000000 */ nop +/* 0417F0 80040BF0 01E7C024 */ and $t8, $t7, $a3 +/* 0417F4 80040BF4 A4B8FFF4 */ sh $t8, -0xc($a1) +/* 0417F8 80040BF8 84D9FFF6 */ lh $t9, -0xa($a2) +/* 0417FC 80040BFC 00000000 */ nop +/* 041800 80040C00 03244824 */ and $t1, $t9, $a0 +/* 041804 80040C04 A4A9FFF6 */ sh $t1, -0xa($a1) +/* 041808 80040C08 84CAFFF8 */ lh $t2, -8($a2) +/* 04180C 80040C0C 00000000 */ nop +/* 041810 80040C10 01475824 */ and $t3, $t2, $a3 +/* 041814 80040C14 A4ABFFF8 */ sh $t3, -8($a1) +/* 041818 80040C18 84CCFFFA */ lh $t4, -6($a2) +/* 04181C 80040C1C 00000000 */ nop +/* 041820 80040C20 01846824 */ and $t5, $t4, $a0 +/* 041824 80040C24 A4ADFFFA */ sh $t5, -6($a1) +/* 041828 80040C28 84CEFFFC */ lh $t6, -4($a2) +/* 04182C 80040C2C 00000000 */ nop +/* 041830 80040C30 01C77824 */ and $t7, $t6, $a3 +/* 041834 80040C34 A4AFFFFC */ sh $t7, -4($a1) +/* 041838 80040C38 84D8FFFE */ lh $t8, -2($a2) +/* 04183C 80040C3C 00000000 */ nop +/* 041840 80040C40 0304C824 */ and $t9, $t8, $a0 +/* 041844 80040C44 14C2FFD0 */ bne $a2, $v0, .L80040B88 +/* 041848 80040C48 A4B9FFFE */ sh $t9, -2($a1) +/* 04184C 80040C4C 03E00008 */ jr $ra +/* 041850 80040C50 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80040C54.s b/asm/non_matchings/unknown_032760/func_80040C54.s new file mode 100644 index 00000000..4e64b555 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80040C54.s @@ -0,0 +1,969 @@ +glabel func_80040C54 +/* 041854 80040C54 27BDFF68 */ addiu $sp, $sp, -0x98 +/* 041858 80040C58 AFBF0024 */ sw $ra, 0x24($sp) +/* 04185C 80040C5C AFB00020 */ sw $s0, 0x20($sp) +/* 041860 80040C60 AFA5009C */ sw $a1, 0x9c($sp) +/* 041864 80040C64 8C89003C */ lw $t1, 0x3c($a0) +/* 041868 80040C68 8C880064 */ lw $t0, 0x64($a0) +/* 04186C 80040C6C 912E000A */ lbu $t6, 0xa($t1) +/* 041870 80040C70 8FAC009C */ lw $t4, 0x9c($sp) +/* 041874 80040C74 39CF0002 */ xori $t7, $t6, 2 +/* 041878 80040C78 2DEF0001 */ sltiu $t7, $t7, 1 +/* 04187C 80040C7C AFAF0064 */ sw $t7, 0x64($sp) +/* 041880 80040C80 85030106 */ lh $v1, 0x106($t0) +/* 041884 80040C84 00808025 */ move $s0, $a0 +/* 041888 80040C88 00035400 */ sll $t2, $v1, 0x10 +/* 04188C 80040C8C 000AC403 */ sra $t8, $t2, 0x10 +/* 041890 80040C90 07010004 */ bgez $t8, .L80040CA4 +/* 041894 80040C94 03005025 */ move $t2, $t8 +/* 041898 80040C98 00185023 */ negu $t2, $t8 +/* 04189C 80040C9C 000ACC00 */ sll $t9, $t2, 0x10 +/* 0418A0 80040CA0 00195403 */ sra $t2, $t9, 0x10 +.L80040CA4: +/* 0418A4 80040CA4 014C0019 */ multu $t2, $t4 +/* 0418A8 80040CA8 3C01800E */ lui $at, %hi(D_800E621C) # $at, 0x800e +/* 0418AC 80040CAC C420621C */ lwc1 $f0, %lo(D_800E621C)($at) +/* 0418B0 80040CB0 8FAF0064 */ lw $t7, 0x64($sp) +/* 0418B4 80040CB4 3C01800E */ lui $at, %hi(D_800E6220) # $at, 0x800e +/* 0418B8 80040CB8 46000406 */ mov.s $f16, $f0 +/* 0418BC 80040CBC 00005012 */ mflo $t2 +/* 0418C0 80040CC0 000A6C00 */ sll $t5, $t2, 0x10 +/* 0418C4 80040CC4 11E00005 */ beqz $t7, .L80040CDC +/* 0418C8 80040CC8 000D5403 */ sra $t2, $t5, 0x10 +/* 0418CC 80040CCC C4246220 */ lwc1 $f4, %lo(D_800E6220)($at) +/* 0418D0 80040CD0 00000000 */ nop +/* 0418D4 80040CD4 46040402 */ mul.s $f16, $f0, $f4 +/* 0418D8 80040CD8 00000000 */ nop +.L80040CDC: +/* 0418DC 80040CDC 3C014040 */ li $at, 0x40400000 # 3.000000 +/* 0418E0 80040CE0 44810000 */ mtc1 $at, $f0 +/* 0418E4 80040CE4 8FB80064 */ lw $t8, 0x64($sp) +/* 0418E8 80040CE8 3C01800E */ lui $at, %hi(D_800E6224) # $at, 0x800e +/* 0418EC 80040CEC 13000005 */ beqz $t8, .L80040D04 +/* 0418F0 80040CF0 E7A00078 */ swc1 $f0, 0x78($sp) +/* 0418F4 80040CF4 C4266224 */ lwc1 $f6, %lo(D_800E6224)($at) +/* 0418F8 80040CF8 00000000 */ nop +/* 0418FC 80040CFC 46060202 */ mul.s $f8, $f0, $f6 +/* 041900 80040D00 E7A80078 */ swc1 $f8, 0x78($sp) +.L80040D04: +/* 041904 80040D04 910200FD */ lbu $v0, 0xfd($t0) +/* 041908 80040D08 00000000 */ nop +/* 04190C 80040D0C 2C410005 */ sltiu $at, $v0, 5 +/* 041910 80040D10 102002C9 */ beqz $at, .L80041838 +/* 041914 80040D14 0002C880 */ sll $t9, $v0, 2 +/* 041918 80040D18 3C01800E */ lui $at, 0x800e +/* 04191C 80040D1C 00390821 */ addu $at, $at, $t9 +/* 041920 80040D20 8C396228 */ lw $t9, 0x6228($at) +/* 041924 80040D24 00000000 */ nop +/* 041928 80040D28 03200008 */ jr $t9 +/* 04192C 80040D2C 00000000 */ nop +/* 041930 80040D30 44807000 */ mtc1 $zero, $f14 +/* 041934 80040D34 240E0001 */ li $t6, 1 +/* 041938 80040D38 E50E0108 */ swc1 $f14, 0x108($t0) +/* 04193C 80040D3C 952B0008 */ lhu $t3, 8($t1) +/* 041940 80040D40 27AF0044 */ addiu $t7, $sp, 0x44 +/* 041944 80040D44 448B5000 */ mtc1 $t3, $f10 +/* 041948 80040D48 05610005 */ bgez $t3, .L80040D60 +/* 04194C 80040D4C 46805020 */ cvt.s.w $f0, $f10 +/* 041950 80040D50 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 041954 80040D54 44819000 */ mtc1 $at, $f18 +/* 041958 80040D58 00000000 */ nop +/* 04195C 80040D5C 46120000 */ add.s $f0, $f0, $f18 +.L80040D60: +/* 041960 80040D60 852D0006 */ lh $t5, 6($t1) +/* 041964 80040D64 852C0002 */ lh $t4, 2($t1) +/* 041968 80040D68 448D3000 */ mtc1 $t5, $f6 +/* 04196C 80040D6C 448C2000 */ mtc1 $t4, $f4 +/* 041970 80040D70 468031A0 */ cvt.s.w $f6, $f6 +/* 041974 80040D74 44070000 */ mfc1 $a3, $f0 +/* 041978 80040D78 E7A00084 */ swc1 $f0, 0x84($sp) +/* 04197C 80040D7C 44063000 */ mfc1 $a2, $f6 +/* 041980 80040D80 AFA90038 */ sw $t1, 0x38($sp) +/* 041984 80040D84 AFA8003C */ sw $t0, 0x3c($sp) +/* 041988 80040D88 AFAF0014 */ sw $t7, 0x14($sp) +/* 04198C 80040D8C AFAE0010 */ sw $t6, 0x10($sp) +/* 041990 80040D90 0C005B7A */ jal func_80016DE8 +/* 041994 80040D94 46802320 */ cvt.s.w $f12, $f4 +/* 041998 80040D98 0002C400 */ sll $t8, $v0, 0x10 +/* 04199C 80040D9C 8FA8003C */ lw $t0, 0x3c($sp) +/* 0419A0 80040DA0 8FA90038 */ lw $t1, 0x38($sp) +/* 0419A4 80040DA4 C7A00084 */ lwc1 $f0, 0x84($sp) +/* 0419A8 80040DA8 0018CC03 */ sra $t9, $t8, 0x10 +/* 0419AC 80040DAC 1B200008 */ blez $t9, .L80040DD0 +/* 0419B0 80040DB0 24180001 */ li $t8, 1 +/* 0419B4 80040DB4 8FAB0044 */ lw $t3, 0x44($sp) +/* 0419B8 80040DB8 240C00F0 */ li $t4, 240 +/* 0419BC 80040DBC 240D0003 */ li $t5, 3 +/* 0419C0 80040DC0 A50C0104 */ sh $t4, 0x104($t0) +/* 0419C4 80040DC4 A10D00FD */ sb $t5, 0xfd($t0) +/* 0419C8 80040DC8 10000014 */ b .L80040E1C +/* 0419CC 80040DCC AD0B0100 */ sw $t3, 0x100($t0) +.L80040DD0: +/* 0419D0 80040DD0 852F0006 */ lh $t7, 6($t1) +/* 0419D4 80040DD4 852E0002 */ lh $t6, 2($t1) +/* 0419D8 80040DD8 448F5000 */ mtc1 $t7, $f10 +/* 0419DC 80040DDC 448E4000 */ mtc1 $t6, $f8 +/* 0419E0 80040DE0 468052A0 */ cvt.s.w $f10, $f10 +/* 0419E4 80040DE4 44807000 */ mtc1 $zero, $f14 +/* 0419E8 80040DE8 44070000 */ mfc1 $a3, $f0 +/* 0419EC 80040DEC 44065000 */ mfc1 $a2, $f10 +/* 0419F0 80040DF0 AFA8003C */ sw $t0, 0x3c($sp) +/* 0419F4 80040DF4 AFB80010 */ sw $t8, 0x10($sp) +/* 0419F8 80040DF8 0C005B1A */ jal func_80016C68 +/* 0419FC 80040DFC 46804320 */ cvt.s.w $f12, $f8 +/* 041A00 80040E00 8FA8003C */ lw $t0, 0x3c($sp) +/* 041A04 80040E04 10400005 */ beqz $v0, .L80040E1C +/* 041A08 80040E08 AD020100 */ sw $v0, 0x100($t0) +/* 041A0C 80040E0C 241900F0 */ li $t9, 240 +/* 041A10 80040E10 240B0003 */ li $t3, 3 +/* 041A14 80040E14 A5190104 */ sh $t9, 0x104($t0) +/* 041A18 80040E18 A10B00FD */ sb $t3, 0xfd($t0) +.L80040E1C: +/* 041A1C 80040E1C 860C0018 */ lh $t4, 0x18($s0) +/* 041A20 80040E20 8FAD009C */ lw $t5, 0x9c($sp) +/* 041A24 80040E24 24190078 */ li $t9, 120 +/* 041A28 80040E28 018D7021 */ addu $t6, $t4, $t5 +/* 041A2C 80040E2C 31CF00FF */ andi $t7, $t6, 0xff +/* 041A30 80040E30 A60F0018 */ sh $t7, 0x18($s0) +/* 041A34 80040E34 8FB80064 */ lw $t8, 0x64($sp) +/* 041A38 80040E38 00000000 */ nop +/* 041A3C 80040E3C 13000002 */ beqz $t8, .L80040E48 +/* 041A40 80040E40 00000000 */ nop +/* 041A44 80040E44 A6190018 */ sh $t9, 0x18($s0) +.L80040E48: +/* 041A48 80040E48 910200FD */ lbu $v0, 0xfd($t0) +/* 041A4C 80040E4C 1000027A */ b .L80041838 +/* 041A50 80040E50 00000000 */ nop +/* 041A54 80040E54 28610480 */ slti $at, $v1, 0x480 +/* 041A58 80040E58 1020000C */ beqz $at, .L80040E8C +/* 041A5C 80040E5C 00000000 */ nop +/* 041A60 80040E60 8FAB009C */ lw $t3, 0x9c($sp) +/* 041A64 80040E64 240F0480 */ li $t7, 1152 +/* 041A68 80040E68 000B6100 */ sll $t4, $t3, 4 +/* 041A6C 80040E6C 006C6821 */ addu $t5, $v1, $t4 +/* 041A70 80040E70 A50D0106 */ sh $t5, 0x106($t0) +/* 041A74 80040E74 850E0106 */ lh $t6, 0x106($t0) +/* 041A78 80040E78 00000000 */ nop +/* 041A7C 80040E7C 29C10481 */ slti $at, $t6, 0x481 +/* 041A80 80040E80 14200002 */ bnez $at, .L80040E8C +/* 041A84 80040E84 00000000 */ nop +/* 041A88 80040E88 A50F0106 */ sh $t7, 0x106($t0) +.L80040E8C: +/* 041A8C 80040E8C 85380002 */ lh $t8, 2($t1) +/* 041A90 80040E90 C612000C */ lwc1 $f18, 0xc($s0) +/* 041A94 80040E94 C6080014 */ lwc1 $f8, 0x14($s0) +/* 041A98 80040E98 85390006 */ lh $t9, 6($t1) +/* 041A9C 80040E9C 44982000 */ mtc1 $t8, $f4 +/* 041AA0 80040EA0 44995000 */ mtc1 $t9, $f10 +/* 041AA4 80040EA4 468021A0 */ cvt.s.w $f6, $f4 +/* 041AA8 80040EA8 8FAB009C */ lw $t3, 0x9c($sp) +/* 041AAC 80040EAC E7B0007C */ swc1 $f16, 0x7c($sp) +/* 041AB0 80040EB0 46805120 */ cvt.s.w $f4, $f10 +/* 041AB4 80040EB4 000B6100 */ sll $t4, $t3, 4 +/* 041AB8 80040EB8 AFAC002C */ sw $t4, 0x2c($sp) +/* 041ABC 80040EBC 46069301 */ sub.s $f12, $f18, $f6 +/* 041AC0 80040EC0 A7AA0072 */ sh $t2, 0x72($sp) +/* 041AC4 80040EC4 46044381 */ sub.s $f14, $f8, $f4 +/* 041AC8 80040EC8 E7AC0094 */ swc1 $f12, 0x94($sp) +/* 041ACC 80040ECC E7AE008C */ swc1 $f14, 0x8c($sp) +/* 041AD0 80040ED0 AFA90038 */ sw $t1, 0x38($sp) +/* 041AD4 80040ED4 0C01C1D4 */ jal func_80070750 +/* 041AD8 80040ED8 AFA8003C */ sw $t0, 0x3c($sp) +/* 041ADC 80040EDC 86040000 */ lh $a0, ($s0) +/* 041AE0 80040EE0 8FA8003C */ lw $t0, 0x3c($sp) +/* 041AE4 80040EE4 00441823 */ subu $v1, $v0, $a0 +/* 041AE8 80040EE8 00037C00 */ sll $t7, $v1, 0x10 +/* 041AEC 80040EEC 8FA90038 */ lw $t1, 0x38($sp) +/* 041AF0 80040EF0 87AA0072 */ lh $t2, 0x72($sp) +/* 041AF4 80040EF4 C7B0007C */ lwc1 $f16, 0x7c($sp) +/* 041AF8 80040EF8 000FC403 */ sra $t8, $t7, 0x10 +/* 041AFC 80040EFC 0701000A */ bgez $t8, .L80040F28 +/* 041B00 80040F00 03001825 */ move $v1, $t8 +/* 041B04 80040F04 000AC823 */ negu $t9, $t2 +/* 041B08 80040F08 0338082A */ slt $at, $t9, $t8 +/* 041B0C 80040F0C 10200004 */ beqz $at, .L80040F20 +/* 041B10 80040F10 008A6023 */ subu $t4, $a0, $t2 +/* 041B14 80040F14 00985821 */ addu $t3, $a0, $t8 +/* 041B18 80040F18 1000000B */ b .L80040F48 +/* 041B1C 80040F1C A60B0000 */ sh $t3, ($s0) +.L80040F20: +/* 041B20 80040F20 10000009 */ b .L80040F48 +/* 041B24 80040F24 A60C0000 */ sh $t4, ($s0) +.L80040F28: +/* 041B28 80040F28 18600007 */ blez $v1, .L80040F48 +/* 041B2C 80040F2C 006A082A */ slt $at, $v1, $t2 +/* 041B30 80040F30 10200004 */ beqz $at, .L80040F44 +/* 041B34 80040F34 008A7021 */ addu $t6, $a0, $t2 +/* 041B38 80040F38 00836821 */ addu $t5, $a0, $v1 +/* 041B3C 80040F3C 10000002 */ b .L80040F48 +/* 041B40 80040F40 A60D0000 */ sh $t5, ($s0) +.L80040F44: +/* 041B44 80040F44 A60E0000 */ sh $t6, ($s0) +.L80040F48: +/* 041B48 80040F48 852F0004 */ lh $t7, 4($t1) +/* 041B4C 80040F4C C60A0010 */ lwc1 $f10, 0x10($s0) +/* 041B50 80040F50 448F9000 */ mtc1 $t7, $f18 +/* 041B54 80040F54 44804000 */ mtc1 $zero, $f8 +/* 041B58 80040F58 468091A0 */ cvt.s.w $f6, $f18 +/* 041B5C 80040F5C 8FB8009C */ lw $t8, 0x9c($sp) +/* 041B60 80040F60 240F0001 */ li $t7, 1 +/* 041B64 80040F64 460A3001 */ sub.s $f0, $f6, $f10 +/* 041B68 80040F68 4608003C */ c.lt.s $f0, $f8 +/* 041B6C 80040F6C 00000000 */ nop +/* 041B70 80040F70 4500000F */ bc1f .L80040FB0 +/* 041B74 80040F74 00000000 */ nop +/* 041B78 80040F78 44989000 */ mtc1 $t8, $f18 +/* 041B7C 80040F7C C6040020 */ lwc1 $f4, 0x20($s0) +/* 041B80 80040F80 468091A0 */ cvt.s.w $f6, $f18 +/* 041B84 80040F84 46068282 */ mul.s $f10, $f16, $f6 +/* 041B88 80040F88 460A2201 */ sub.s $f8, $f4, $f10 +/* 041B8C 80040F8C E6080020 */ swc1 $f8, 0x20($s0) +/* 041B90 80040F90 C6120020 */ lwc1 $f18, 0x20($s0) +/* 041B94 80040F94 00000000 */ nop +/* 041B98 80040F98 4600903C */ c.lt.s $f18, $f0 +/* 041B9C 80040F9C 00000000 */ nop +/* 041BA0 80040FA0 4500001A */ bc1f .L8004100C +/* 041BA4 80040FA4 00000000 */ nop +/* 041BA8 80040FA8 10000018 */ b .L8004100C +/* 041BAC 80040FAC E6000020 */ swc1 $f0, 0x20($s0) +.L80040FB0: +/* 041BB0 80040FB0 44803000 */ mtc1 $zero, $f6 +/* 041BB4 80040FB4 8FB9009C */ lw $t9, 0x9c($sp) +/* 041BB8 80040FB8 4600303C */ c.lt.s $f6, $f0 +/* 041BBC 80040FBC 00000000 */ nop +/* 041BC0 80040FC0 4500000F */ bc1f .L80041000 +/* 041BC4 80040FC4 00000000 */ nop +/* 041BC8 80040FC8 44995000 */ mtc1 $t9, $f10 +/* 041BCC 80040FCC C6040020 */ lwc1 $f4, 0x20($s0) +/* 041BD0 80040FD0 46805220 */ cvt.s.w $f8, $f10 +/* 041BD4 80040FD4 46088482 */ mul.s $f18, $f16, $f8 +/* 041BD8 80040FD8 46122180 */ add.s $f6, $f4, $f18 +/* 041BDC 80040FDC E6060020 */ swc1 $f6, 0x20($s0) +/* 041BE0 80040FE0 C60A0020 */ lwc1 $f10, 0x20($s0) +/* 041BE4 80040FE4 00000000 */ nop +/* 041BE8 80040FE8 460A003C */ c.lt.s $f0, $f10 +/* 041BEC 80040FEC 00000000 */ nop +/* 041BF0 80040FF0 45000006 */ bc1f .L8004100C +/* 041BF4 80040FF4 00000000 */ nop +/* 041BF8 80040FF8 10000004 */ b .L8004100C +/* 041BFC 80040FFC E6000020 */ swc1 $f0, 0x20($s0) +.L80041000: +/* 041C00 80041000 44804000 */ mtc1 $zero, $f8 +/* 041C04 80041004 00000000 */ nop +/* 041C08 80041008 E6080020 */ swc1 $f8, 0x20($s0) +.L8004100C: +/* 041C0C 8004100C 910B00FD */ lbu $t3, 0xfd($t0) +/* 041C10 80041010 24010001 */ li $at, 1 +/* 041C14 80041014 1561003B */ bne $t3, $at, .L80041104 +/* 041C18 80041018 27B80044 */ addiu $t8, $sp, 0x44 +/* 041C1C 8004101C 952C0008 */ lhu $t4, 8($t1) +/* 041C20 80041020 44807000 */ mtc1 $zero, $f14 +/* 041C24 80041024 448C2000 */ mtc1 $t4, $f4 +/* 041C28 80041028 05810005 */ bgez $t4, .L80041040 +/* 041C2C 8004102C 46802020 */ cvt.s.w $f0, $f4 +/* 041C30 80041030 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 041C34 80041034 44819000 */ mtc1 $at, $f18 +/* 041C38 80041038 00000000 */ nop +/* 041C3C 8004103C 46120000 */ add.s $f0, $f0, $f18 +.L80041040: +/* 041C40 80041040 852E0006 */ lh $t6, 6($t1) +/* 041C44 80041044 852D0002 */ lh $t5, 2($t1) +/* 041C48 80041048 448E5000 */ mtc1 $t6, $f10 +/* 041C4C 8004104C 448D3000 */ mtc1 $t5, $f6 +/* 041C50 80041050 468052A0 */ cvt.s.w $f10, $f10 +/* 041C54 80041054 44070000 */ mfc1 $a3, $f0 +/* 041C58 80041058 E7A00084 */ swc1 $f0, 0x84($sp) +/* 041C5C 8004105C 44065000 */ mfc1 $a2, $f10 +/* 041C60 80041060 AFA90038 */ sw $t1, 0x38($sp) +/* 041C64 80041064 AFA8003C */ sw $t0, 0x3c($sp) +/* 041C68 80041068 AFB80014 */ sw $t8, 0x14($sp) +/* 041C6C 8004106C AFAF0010 */ sw $t7, 0x10($sp) +/* 041C70 80041070 0C005B7A */ jal func_80016DE8 +/* 041C74 80041074 46803320 */ cvt.s.w $f12, $f6 +/* 041C78 80041078 0002CC00 */ sll $t9, $v0, 0x10 +/* 041C7C 8004107C 8FA8003C */ lw $t0, 0x3c($sp) +/* 041C80 80041080 8FA90038 */ lw $t1, 0x38($sp) +/* 041C84 80041084 C7A00084 */ lwc1 $f0, 0x84($sp) +/* 041C88 80041088 00195C03 */ sra $t3, $t9, 0x10 +/* 041C8C 8004108C 19600008 */ blez $t3, .L800410B0 +/* 041C90 80041090 24190001 */ li $t9, 1 +/* 041C94 80041094 8FAC0044 */ lw $t4, 0x44($sp) +/* 041C98 80041098 240D0078 */ li $t5, 120 +/* 041C9C 8004109C 240E0003 */ li $t6, 3 +/* 041CA0 800410A0 A50D0104 */ sh $t5, 0x104($t0) +/* 041CA4 800410A4 A10E00FD */ sb $t6, 0xfd($t0) +/* 041CA8 800410A8 10000016 */ b .L80041104 +/* 041CAC 800410AC AD0C0100 */ sw $t4, 0x100($t0) +.L800410B0: +/* 041CB0 800410B0 85380006 */ lh $t8, 6($t1) +/* 041CB4 800410B4 852F0002 */ lh $t7, 2($t1) +/* 041CB8 800410B8 44982000 */ mtc1 $t8, $f4 +/* 041CBC 800410BC 448F4000 */ mtc1 $t7, $f8 +/* 041CC0 800410C0 46802120 */ cvt.s.w $f4, $f4 +/* 041CC4 800410C4 44807000 */ mtc1 $zero, $f14 +/* 041CC8 800410C8 44070000 */ mfc1 $a3, $f0 +/* 041CCC 800410CC 44062000 */ mfc1 $a2, $f4 +/* 041CD0 800410D0 AFA90038 */ sw $t1, 0x38($sp) +/* 041CD4 800410D4 AFA8003C */ sw $t0, 0x3c($sp) +/* 041CD8 800410D8 AFB90010 */ sw $t9, 0x10($sp) +/* 041CDC 800410DC 0C005B1A */ jal func_80016C68 +/* 041CE0 800410E0 46804320 */ cvt.s.w $f12, $f8 +/* 041CE4 800410E4 8FA8003C */ lw $t0, 0x3c($sp) +/* 041CE8 800410E8 8FA90038 */ lw $t1, 0x38($sp) +/* 041CEC 800410EC 10400005 */ beqz $v0, .L80041104 +/* 041CF0 800410F0 AD020100 */ sw $v0, 0x100($t0) +/* 041CF4 800410F4 240B00F0 */ li $t3, 240 +/* 041CF8 800410F8 240C0003 */ li $t4, 3 +/* 041CFC 800410FC A50B0104 */ sh $t3, 0x104($t0) +/* 041D00 80041100 A10C00FD */ sb $t4, 0xfd($t0) +.L80041104: +/* 041D04 80041104 910D00FD */ lbu $t5, 0xfd($t0) +/* 041D08 80041108 24010003 */ li $at, 3 +/* 041D0C 8004110C 11A1002C */ beq $t5, $at, .L800411C0 +/* 041D10 80041110 00000000 */ nop +/* 041D14 80041114 852E0004 */ lh $t6, 4($t1) +/* 041D18 80041118 C7A00094 */ lwc1 $f0, 0x94($sp) +/* 041D1C 8004111C 448E3000 */ mtc1 $t6, $f6 +/* 041D20 80041120 C6120010 */ lwc1 $f18, 0x10($s0) +/* 041D24 80041124 468032A0 */ cvt.s.w $f10, $f6 +/* 041D28 80041128 C7AE008C */ lwc1 $f14, 0x8c($sp) +/* 041D2C 8004112C AFA8003C */ sw $t0, 0x3c($sp) +/* 041D30 80041130 46000202 */ mul.s $f8, $f0, $f0 +/* 041D34 80041134 460A9081 */ sub.s $f2, $f18, $f10 +/* 041D38 80041138 E7A20090 */ swc1 $f2, 0x90($sp) +/* 041D3C 8004113C 46021102 */ mul.s $f4, $f2, $f2 +/* 041D40 80041140 00000000 */ nop +/* 041D44 80041144 460E7482 */ mul.s $f18, $f14, $f14 +/* 041D48 80041148 46044180 */ add.s $f6, $f8, $f4 +/* 041D4C 8004114C 0C0326B4 */ jal sqrtf +/* 041D50 80041150 46123300 */ add.s $f12, $f6, $f18 +/* 041D54 80041154 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 041D58 80041158 44815000 */ mtc1 $at, $f10 +/* 041D5C 8004115C 8FA8003C */ lw $t0, 0x3c($sp) +/* 041D60 80041160 460A003C */ c.lt.s $f0, $f10 +/* 041D64 80041164 C7A20090 */ lwc1 $f2, 0x90($sp) +/* 041D68 80041168 45000015 */ bc1f .L800411C0 +/* 041D6C 8004116C 00000000 */ nop +/* 041D70 80041170 AFA8003C */ sw $t0, 0x3c($sp) +/* 041D74 80041174 0C004558 */ jal func_80011560 +/* 041D78 80041178 E7A20090 */ swc1 $f2, 0x90($sp) +/* 041D7C 8004117C C7A20090 */ lwc1 $f2, 0x90($sp) +/* 041D80 80041180 C7A80094 */ lwc1 $f8, 0x94($sp) +/* 041D84 80041184 C7B2008C */ lwc1 $f18, 0x8c($sp) +/* 041D88 80041188 46001187 */ neg.s $f6, $f2 +/* 041D8C 8004118C 46004107 */ neg.s $f4, $f8 +/* 041D90 80041190 46009287 */ neg.s $f10, $f18 +/* 041D94 80041194 44075000 */ mfc1 $a3, $f10 +/* 041D98 80041198 44052000 */ mfc1 $a1, $f4 +/* 041D9C 8004119C 44063000 */ mfc1 $a2, $f6 +/* 041DA0 800411A0 0C00455C */ jal func_80011570 +/* 041DA4 800411A4 02002025 */ move $a0, $s0 +/* 041DA8 800411A8 8FA8003C */ lw $t0, 0x3c($sp) +/* 041DAC 800411AC 44804000 */ mtc1 $zero, $f8 +/* 041DB0 800411B0 44802000 */ mtc1 $zero, $f4 +/* 041DB4 800411B4 E6080020 */ swc1 $f8, 0x20($s0) +/* 041DB8 800411B8 A10000FD */ sb $zero, 0xfd($t0) +/* 041DBC 800411BC E5040108 */ swc1 $f4, 0x108($t0) +.L800411C0: +/* 041DC0 800411C0 860F0018 */ lh $t7, 0x18($s0) +/* 041DC4 800411C4 8FB8002C */ lw $t8, 0x2c($sp) +/* 041DC8 800411C8 00000000 */ nop +/* 041DCC 800411CC 01F8C821 */ addu $t9, $t7, $t8 +/* 041DD0 800411D0 332B00FF */ andi $t3, $t9, 0xff +/* 041DD4 800411D4 A60B0018 */ sh $t3, 0x18($s0) +/* 041DD8 800411D8 910200FD */ lbu $v0, 0xfd($t0) +/* 041DDC 800411DC 10000196 */ b .L80041838 +/* 041DE0 800411E0 00000000 */ nop +/* 041DE4 800411E4 28610480 */ slti $at, $v1, 0x480 +/* 041DE8 800411E8 1020000C */ beqz $at, .L8004121C +/* 041DEC 800411EC 00000000 */ nop +/* 041DF0 800411F0 8FAC009C */ lw $t4, 0x9c($sp) +/* 041DF4 800411F4 24180480 */ li $t8, 1152 +/* 041DF8 800411F8 000C6900 */ sll $t5, $t4, 4 +/* 041DFC 800411FC 006D7021 */ addu $t6, $v1, $t5 +/* 041E00 80041200 A50E0106 */ sh $t6, 0x106($t0) +/* 041E04 80041204 850F0106 */ lh $t7, 0x106($t0) +/* 041E08 80041208 00000000 */ nop +/* 041E0C 8004120C 29E10481 */ slti $at, $t7, 0x481 +/* 041E10 80041210 14200002 */ bnez $at, .L8004121C +/* 041E14 80041214 00000000 */ nop +/* 041E18 80041218 A5180106 */ sh $t8, 0x106($t0) +.L8004121C: +/* 041E1C 8004121C 85390002 */ lh $t9, 2($t1) +/* 041E20 80041220 8D020100 */ lw $v0, 0x100($t0) +/* 041E24 80041224 44999000 */ mtc1 $t9, $f18 +/* 041E28 80041228 952C0008 */ lhu $t4, 8($t1) +/* 041E2C 8004122C 468092A0 */ cvt.s.w $f10, $f18 +/* 041E30 80041230 C446000C */ lwc1 $f6, 0xc($v0) +/* 041E34 80041234 000C6840 */ sll $t5, $t4, 1 +/* 041E38 80041238 460A3081 */ sub.s $f2, $f6, $f10 +/* 041E3C 8004123C 448D3000 */ mtc1 $t5, $f6 +/* 041E40 80041240 852B0006 */ lh $t3, 6($t1) +/* 041E44 80041244 46803020 */ cvt.s.w $f0, $f6 +/* 041E48 80041248 448B2000 */ mtc1 $t3, $f4 +/* 041E4C 8004124C C4480014 */ lwc1 $f8, 0x14($v0) +/* 041E50 80041250 46000002 */ mul.s $f0, $f0, $f0 +/* 041E54 80041254 8FAE009C */ lw $t6, 0x9c($sp) +/* 041E58 80041258 27AD0044 */ addiu $t5, $sp, 0x44 +/* 041E5C 8004125C 000E7900 */ sll $t7, $t6, 4 +/* 041E60 80041260 468024A0 */ cvt.s.w $f18, $f4 +/* 041E64 80041264 AFAF002C */ sw $t7, 0x2c($sp) +/* 041E68 80041268 240C0001 */ li $t4, 1 +/* 041E6C 8004126C 46021282 */ mul.s $f10, $f2, $f2 +/* 041E70 80041270 46124301 */ sub.s $f12, $f8, $f18 +/* 041E74 80041274 460C6102 */ mul.s $f4, $f12, $f12 +/* 041E78 80041278 46045200 */ add.s $f8, $f10, $f4 +/* 041E7C 8004127C 4608003C */ c.lt.s $f0, $f8 +/* 041E80 80041280 00000000 */ nop +/* 041E84 80041284 4500003E */ bc1f .L80041380 +/* 041E88 80041288 00000000 */ nop +/* 041E8C 8004128C AD000100 */ sw $zero, 0x100($t0) +/* 041E90 80041290 95380008 */ lhu $t8, 8($t1) +/* 041E94 80041294 44807000 */ mtc1 $zero, $f14 +/* 041E98 80041298 44989000 */ mtc1 $t8, $f18 +/* 041E9C 8004129C 07010005 */ bgez $t8, .L800412B4 +/* 041EA0 800412A0 46809020 */ cvt.s.w $f0, $f18 +/* 041EA4 800412A4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 041EA8 800412A8 44813000 */ mtc1 $at, $f6 +/* 041EAC 800412AC 00000000 */ nop +/* 041EB0 800412B0 46060000 */ add.s $f0, $f0, $f6 +.L800412B4: +/* 041EB4 800412B4 85390002 */ lh $t9, 2($t1) +/* 041EB8 800412B8 852B0006 */ lh $t3, 6($t1) +/* 041EBC 800412BC 44995000 */ mtc1 $t9, $f10 +/* 041EC0 800412C0 448B2000 */ mtc1 $t3, $f4 +/* 041EC4 800412C4 44070000 */ mfc1 $a3, $f0 +/* 041EC8 800412C8 46802120 */ cvt.s.w $f4, $f4 +/* 041ECC 800412CC E7B0007C */ swc1 $f16, 0x7c($sp) +/* 041ED0 800412D0 E7A00084 */ swc1 $f0, 0x84($sp) +/* 041ED4 800412D4 44062000 */ mfc1 $a2, $f4 +/* 041ED8 800412D8 A7AA0072 */ sh $t2, 0x72($sp) +/* 041EDC 800412DC AFA90038 */ sw $t1, 0x38($sp) +/* 041EE0 800412E0 AFA8003C */ sw $t0, 0x3c($sp) +/* 041EE4 800412E4 AFAD0014 */ sw $t5, 0x14($sp) +/* 041EE8 800412E8 AFAC0010 */ sw $t4, 0x10($sp) +/* 041EEC 800412EC 0C005B7A */ jal func_80016DE8 +/* 041EF0 800412F0 46805320 */ cvt.s.w $f12, $f10 +/* 041EF4 800412F4 00027400 */ sll $t6, $v0, 0x10 +/* 041EF8 800412F8 8FA8003C */ lw $t0, 0x3c($sp) +/* 041EFC 800412FC 8FA90038 */ lw $t1, 0x38($sp) +/* 041F00 80041300 87AA0072 */ lh $t2, 0x72($sp) +/* 041F04 80041304 C7A00084 */ lwc1 $f0, 0x84($sp) +/* 041F08 80041308 C7B0007C */ lwc1 $f16, 0x7c($sp) +/* 041F0C 8004130C 000E7C03 */ sra $t7, $t6, 0x10 +/* 041F10 80041310 19E00006 */ blez $t7, .L8004132C +/* 041F14 80041314 240D0001 */ li $t5, 1 +/* 041F18 80041318 8FB80044 */ lw $t8, 0x44($sp) +/* 041F1C 8004131C 241900F0 */ li $t9, 240 +/* 041F20 80041320 A5190104 */ sh $t9, 0x104($t0) +/* 041F24 80041324 10000016 */ b .L80041380 +/* 041F28 80041328 AD180100 */ sw $t8, 0x100($t0) +.L8004132C: +/* 041F2C 8004132C 852C0006 */ lh $t4, 6($t1) +/* 041F30 80041330 852B0002 */ lh $t3, 2($t1) +/* 041F34 80041334 448C9000 */ mtc1 $t4, $f18 +/* 041F38 80041338 448B4000 */ mtc1 $t3, $f8 +/* 041F3C 8004133C 468094A0 */ cvt.s.w $f18, $f18 +/* 041F40 80041340 44807000 */ mtc1 $zero, $f14 +/* 041F44 80041344 44070000 */ mfc1 $a3, $f0 +/* 041F48 80041348 44069000 */ mfc1 $a2, $f18 +/* 041F4C 8004134C E7B0007C */ swc1 $f16, 0x7c($sp) +/* 041F50 80041350 A7AA0072 */ sh $t2, 0x72($sp) +/* 041F54 80041354 AFA8003C */ sw $t0, 0x3c($sp) +/* 041F58 80041358 AFAD0010 */ sw $t5, 0x10($sp) +/* 041F5C 8004135C 0C005B1A */ jal func_80016C68 +/* 041F60 80041360 46804320 */ cvt.s.w $f12, $f8 +/* 041F64 80041364 8FA8003C */ lw $t0, 0x3c($sp) +/* 041F68 80041368 87AA0072 */ lh $t2, 0x72($sp) +/* 041F6C 8004136C C7B0007C */ lwc1 $f16, 0x7c($sp) +/* 041F70 80041370 10400003 */ beqz $v0, .L80041380 +/* 041F74 80041374 AD020100 */ sw $v0, 0x100($t0) +/* 041F78 80041378 240E00F0 */ li $t6, 240 +/* 041F7C 8004137C A50E0104 */ sh $t6, 0x104($t0) +.L80041380: +/* 041F80 80041380 8D020100 */ lw $v0, 0x100($t0) +/* 041F84 80041384 240E0001 */ li $t6, 1 +/* 041F88 80041388 10400062 */ beqz $v0, .L80041514 +/* 041F8C 8004138C 00000000 */ nop +/* 041F90 80041390 C606000C */ lwc1 $f6, 0xc($s0) +/* 041F94 80041394 C44A000C */ lwc1 $f10, 0xc($v0) +/* 041F98 80041398 C6040014 */ lwc1 $f4, 0x14($s0) +/* 041F9C 8004139C C4480014 */ lwc1 $f8, 0x14($v0) +/* 041FA0 800413A0 460A3301 */ sub.s $f12, $f6, $f10 +/* 041FA4 800413A4 E7B0007C */ swc1 $f16, 0x7c($sp) +/* 041FA8 800413A8 46082381 */ sub.s $f14, $f4, $f8 +/* 041FAC 800413AC E7AC0094 */ swc1 $f12, 0x94($sp) +/* 041FB0 800413B0 E7AE008C */ swc1 $f14, 0x8c($sp) +/* 041FB4 800413B4 A7AA0072 */ sh $t2, 0x72($sp) +/* 041FB8 800413B8 0C01C1D4 */ jal func_80070750 +/* 041FBC 800413BC AFA8003C */ sw $t0, 0x3c($sp) +/* 041FC0 800413C0 86040000 */ lh $a0, ($s0) +/* 041FC4 800413C4 8FA8003C */ lw $t0, 0x3c($sp) +/* 041FC8 800413C8 00441823 */ subu $v1, $v0, $a0 +/* 041FCC 800413CC 0003CC00 */ sll $t9, $v1, 0x10 +/* 041FD0 800413D0 87AA0072 */ lh $t2, 0x72($sp) +/* 041FD4 800413D4 C7B0007C */ lwc1 $f16, 0x7c($sp) +/* 041FD8 800413D8 00195C03 */ sra $t3, $t9, 0x10 +/* 041FDC 800413DC 0561000A */ bgez $t3, .L80041408 +/* 041FE0 800413E0 01601825 */ move $v1, $t3 +/* 041FE4 800413E4 000A6023 */ negu $t4, $t2 +/* 041FE8 800413E8 018B082A */ slt $at, $t4, $t3 +/* 041FEC 800413EC 10200004 */ beqz $at, .L80041400 +/* 041FF0 800413F0 008A7023 */ subu $t6, $a0, $t2 +/* 041FF4 800413F4 008B6821 */ addu $t5, $a0, $t3 +/* 041FF8 800413F8 1000000B */ b .L80041428 +/* 041FFC 800413FC A60D0000 */ sh $t5, ($s0) +.L80041400: +/* 042000 80041400 10000009 */ b .L80041428 +/* 042004 80041404 A60E0000 */ sh $t6, ($s0) +.L80041408: +/* 042008 80041408 18600007 */ blez $v1, .L80041428 +/* 04200C 8004140C 006A082A */ slt $at, $v1, $t2 +/* 042010 80041410 10200004 */ beqz $at, .L80041424 +/* 042014 80041414 008AC021 */ addu $t8, $a0, $t2 +/* 042018 80041418 00837821 */ addu $t7, $a0, $v1 +/* 04201C 8004141C 10000002 */ b .L80041428 +/* 042020 80041420 A60F0000 */ sh $t7, ($s0) +.L80041424: +/* 042024 80041424 A6180000 */ sh $t8, ($s0) +.L80041428: +/* 042028 80041428 8D190100 */ lw $t9, 0x100($t0) +/* 04202C 8004142C 3C014180 */ li $at, 0x41800000 # 16.000000 +/* 042030 80041430 44813000 */ mtc1 $at, $f6 +/* 042034 80041434 C7320010 */ lwc1 $f18, 0x10($t9) +/* 042038 80041438 C6040010 */ lwc1 $f4, 0x10($s0) +/* 04203C 8004143C 46069280 */ add.s $f10, $f18, $f6 +/* 042040 80041440 44804000 */ mtc1 $zero, $f8 +/* 042044 80041444 46045001 */ sub.s $f0, $f10, $f4 +/* 042048 80041448 8FAB009C */ lw $t3, 0x9c($sp) +/* 04204C 8004144C 4608003C */ c.lt.s $f0, $f8 +/* 042050 80041450 240D0004 */ li $t5, 4 +/* 042054 80041454 4500000F */ bc1f .L80041494 +/* 042058 80041458 00000000 */ nop +/* 04205C 8004145C 448B3000 */ mtc1 $t3, $f6 +/* 042060 80041460 C6120020 */ lwc1 $f18, 0x20($s0) +/* 042064 80041464 468032A0 */ cvt.s.w $f10, $f6 +/* 042068 80041468 460A8102 */ mul.s $f4, $f16, $f10 +/* 04206C 8004146C 46049201 */ sub.s $f8, $f18, $f4 +/* 042070 80041470 E6080020 */ swc1 $f8, 0x20($s0) +/* 042074 80041474 C6060020 */ lwc1 $f6, 0x20($s0) +/* 042078 80041478 00000000 */ nop +/* 04207C 8004147C 4600303C */ c.lt.s $f6, $f0 +/* 042080 80041480 00000000 */ nop +/* 042084 80041484 45000016 */ bc1f .L800414E0 +/* 042088 80041488 00000000 */ nop +/* 04208C 8004148C 10000014 */ b .L800414E0 +/* 042090 80041490 E6000020 */ swc1 $f0, 0x20($s0) +.L80041494: +/* 042094 80041494 44805000 */ mtc1 $zero, $f10 +/* 042098 80041498 8FAC009C */ lw $t4, 0x9c($sp) +/* 04209C 8004149C 4600503C */ c.lt.s $f10, $f0 +/* 0420A0 800414A0 00000000 */ nop +/* 0420A4 800414A4 4500000E */ bc1f .L800414E0 +/* 0420A8 800414A8 00000000 */ nop +/* 0420AC 800414AC 448C2000 */ mtc1 $t4, $f4 +/* 0420B0 800414B0 C6120020 */ lwc1 $f18, 0x20($s0) +/* 0420B4 800414B4 46802220 */ cvt.s.w $f8, $f4 +/* 0420B8 800414B8 46088182 */ mul.s $f6, $f16, $f8 +/* 0420BC 800414BC 46069280 */ add.s $f10, $f18, $f6 +/* 0420C0 800414C0 E60A0020 */ swc1 $f10, 0x20($s0) +/* 0420C4 800414C4 C6040020 */ lwc1 $f4, 0x20($s0) +/* 0420C8 800414C8 00000000 */ nop +/* 0420CC 800414CC 4604003C */ c.lt.s $f0, $f4 +/* 0420D0 800414D0 00000000 */ nop +/* 0420D4 800414D4 45000002 */ bc1f .L800414E0 +/* 0420D8 800414D8 00000000 */ nop +/* 0420DC 800414DC E6000020 */ swc1 $f0, 0x20($s0) +.L800414E0: +/* 0420E0 800414E0 C7A00094 */ lwc1 $f0, 0x94($sp) +/* 0420E4 800414E4 C7A2008C */ lwc1 $f2, 0x8c($sp) +/* 0420E8 800414E8 46000202 */ mul.s $f8, $f0, $f0 +/* 0420EC 800414EC 3C014380 */ li $at, 0x43800000 # 256.000000 +/* 0420F0 800414F0 44815000 */ mtc1 $at, $f10 +/* 0420F4 800414F4 46021482 */ mul.s $f18, $f2, $f2 +/* 0420F8 800414F8 46124180 */ add.s $f6, $f8, $f18 +/* 0420FC 800414FC 460A303C */ c.lt.s $f6, $f10 +/* 042100 80041500 00000000 */ nop +/* 042104 80041504 45000004 */ bc1f .L80041518 +/* 042108 80041508 00000000 */ nop +/* 04210C 8004150C 10000002 */ b .L80041518 +/* 042110 80041510 A10D00FD */ sb $t5, 0xfd($t0) +.L80041514: +/* 042114 80041514 A10E00FD */ sb $t6, 0xfd($t0) +.L80041518: +/* 042118 80041518 860F0018 */ lh $t7, 0x18($s0) +/* 04211C 8004151C 8FB8002C */ lw $t8, 0x2c($sp) +/* 042120 80041520 00000000 */ nop +/* 042124 80041524 01F8C821 */ addu $t9, $t7, $t8 +/* 042128 80041528 332B00FF */ andi $t3, $t9, 0xff +/* 04212C 8004152C A60B0018 */ sh $t3, 0x18($s0) +/* 042130 80041530 910200FD */ lbu $v0, 0xfd($t0) +/* 042134 80041534 100000C0 */ b .L80041838 +/* 042138 80041538 00000000 */ nop +/* 04213C 8004153C 28610181 */ slti $at, $v1, 0x181 +/* 042140 80041540 1420000C */ bnez $at, .L80041574 +/* 042144 80041544 00000000 */ nop +/* 042148 80041548 8FAC009C */ lw $t4, 0x9c($sp) +/* 04214C 8004154C 24180180 */ li $t8, 384 +/* 042150 80041550 000C6900 */ sll $t5, $t4, 4 +/* 042154 80041554 006D7023 */ subu $t6, $v1, $t5 +/* 042158 80041558 A50E0106 */ sh $t6, 0x106($t0) +/* 04215C 8004155C 850F0106 */ lh $t7, 0x106($t0) +/* 042160 80041560 00000000 */ nop +/* 042164 80041564 29E10180 */ slti $at, $t7, 0x180 +/* 042168 80041568 10200002 */ beqz $at, .L80041574 +/* 04216C 8004156C 00000000 */ nop +/* 042170 80041570 A5180106 */ sh $t8, 0x106($t0) +.L80041574: +/* 042174 80041574 85390002 */ lh $t9, 2($t1) +/* 042178 80041578 C604000C */ lwc1 $f4, 0xc($s0) +/* 04217C 8004157C 44994000 */ mtc1 $t9, $f8 +/* 042180 80041580 952C0008 */ lhu $t4, 8($t1) +/* 042184 80041584 468044A0 */ cvt.s.w $f18, $f8 +/* 042188 80041588 000C6840 */ sll $t5, $t4, 1 +/* 04218C 8004158C 852B0006 */ lh $t3, 6($t1) +/* 042190 80041590 46122081 */ sub.s $f2, $f4, $f18 +/* 042194 80041594 448D2000 */ mtc1 $t5, $f4 +/* 042198 80041598 448B5000 */ mtc1 $t3, $f10 +/* 04219C 8004159C 46802020 */ cvt.s.w $f0, $f4 +/* 0421A0 800415A0 C6060014 */ lwc1 $f6, 0x14($s0) +/* 0421A4 800415A4 8FAE009C */ lw $t6, 0x9c($sp) +/* 0421A8 800415A8 46000002 */ mul.s $f0, $f0, $f0 +/* 0421AC 800415AC 8FB9009C */ lw $t9, 0x9c($sp) +/* 0421B0 800415B0 000E7900 */ sll $t7, $t6, 4 +/* 0421B4 800415B4 AFAF002C */ sw $t7, 0x2c($sp) +/* 0421B8 800415B8 46805220 */ cvt.s.w $f8, $f10 +/* 0421BC 800415BC 24180002 */ li $t8, 2 +/* 0421C0 800415C0 46021482 */ mul.s $f18, $f2, $f2 +/* 0421C4 800415C4 46083301 */ sub.s $f12, $f6, $f8 +/* 0421C8 800415C8 460C6282 */ mul.s $f10, $f12, $f12 +/* 0421CC 800415CC 460A9180 */ add.s $f6, $f18, $f10 +/* 0421D0 800415D0 4606003C */ c.lt.s $f0, $f6 +/* 0421D4 800415D4 00000000 */ nop +/* 0421D8 800415D8 45000003 */ bc1f .L800415E8 +/* 0421DC 800415DC 00000000 */ nop +/* 0421E0 800415E0 1000008D */ b .L80041818 +/* 0421E4 800415E4 A11800FD */ sb $t8, 0xfd($t0) +.L800415E8: +/* 0421E8 800415E8 95020104 */ lhu $v0, 0x104($t0) +/* 0421EC 800415EC 3C074316 */ lui $a3, 0x4316 +/* 0421F0 800415F0 0322082A */ slt $at, $t9, $v0 +/* 0421F4 800415F4 10200004 */ beqz $at, .L80041608 +/* 0421F8 800415F8 240C0001 */ li $t4, 1 +/* 0421FC 800415FC 00595823 */ subu $t3, $v0, $t9 +/* 042200 80041600 1000002C */ b .L800416B4 +/* 042204 80041604 A50B0104 */ sh $t3, 0x104($t0) +.L80041608: +/* 042208 80041608 A5000104 */ sh $zero, 0x104($t0) +/* 04220C 8004160C 8E060014 */ lw $a2, 0x14($s0) +/* 042210 80041610 C60C000C */ lwc1 $f12, 0xc($s0) +/* 042214 80041614 44807000 */ mtc1 $zero, $f14 +/* 042218 80041618 27AD0044 */ addiu $t5, $sp, 0x44 +/* 04221C 8004161C AFAD0014 */ sw $t5, 0x14($sp) +/* 042220 80041620 E7B0007C */ swc1 $f16, 0x7c($sp) +/* 042224 80041624 AFA8003C */ sw $t0, 0x3c($sp) +/* 042228 80041628 0C005B7A */ jal func_80016DE8 +/* 04222C 8004162C AFAC0010 */ sw $t4, 0x10($sp) +/* 042230 80041630 00022C00 */ sll $a1, $v0, 0x10 +/* 042234 80041634 00021C00 */ sll $v1, $v0, 0x10 +/* 042238 80041638 00057403 */ sra $t6, $a1, 0x10 +/* 04223C 8004163C 8FA8003C */ lw $t0, 0x3c($sp) +/* 042240 80041640 C7B0007C */ lwc1 $f16, 0x7c($sp) +/* 042244 80041644 00037C03 */ sra $t7, $v1, 0x10 +/* 042248 80041648 01C02825 */ move $a1, $t6 +/* 04224C 8004164C 15E00005 */ bnez $t7, .L80041664 +/* 042250 80041650 01E01825 */ move $v1, $t7 +/* 042254 80041654 24180001 */ li $t8, 1 +/* 042258 80041658 AD000100 */ sw $zero, 0x100($t0) +/* 04225C 8004165C 10000015 */ b .L800416B4 +/* 042260 80041660 A11800FD */ sb $t8, 0xfd($t0) +.L80041664: +/* 042264 80041664 28610002 */ slti $at, $v1, 2 +/* 042268 80041668 14200009 */ bnez $at, .L80041690 +/* 04226C 8004166C 24040001 */ li $a0, 1 +/* 042270 80041670 AFA8003C */ sw $t0, 0x3c($sp) +/* 042274 80041674 0C01BE53 */ jal func_8006F94C +/* 042278 80041678 E7B0007C */ swc1 $f16, 0x7c($sp) +/* 04227C 8004167C 00021C00 */ sll $v1, $v0, 0x10 +/* 042280 80041680 00035C03 */ sra $t3, $v1, 0x10 +/* 042284 80041684 8FA8003C */ lw $t0, 0x3c($sp) +/* 042288 80041688 C7B0007C */ lwc1 $f16, 0x7c($sp) +/* 04228C 8004168C 01601825 */ move $v1, $t3 +.L80041690: +/* 042290 80041690 2465FFFF */ addiu $a1, $v1, -1 +/* 042294 80041694 00056400 */ sll $t4, $a1, 0x10 +/* 042298 80041698 000C6C03 */ sra $t5, $t4, 0x10 +/* 04229C 8004169C 000D7080 */ sll $t6, $t5, 2 +/* 0422A0 800416A0 03AE7821 */ addu $t7, $sp, $t6 +/* 0422A4 800416A4 8DEF0044 */ lw $t7, 0x44($t7) +/* 0422A8 800416A8 241800F0 */ li $t8, 240 +/* 0422AC 800416AC A5180104 */ sh $t8, 0x104($t0) +/* 0422B0 800416B0 AD0F0100 */ sw $t7, 0x100($t0) +.L800416B4: +/* 0422B4 800416B4 911900FD */ lbu $t9, 0xfd($t0) +/* 0422B8 800416B8 24010004 */ li $at, 4 +/* 0422BC 800416BC 17210056 */ bne $t9, $at, .L80041818 +/* 0422C0 800416C0 00000000 */ nop +/* 0422C4 800416C4 8D020100 */ lw $v0, 0x100($t0) +/* 0422C8 800416C8 C608000C */ lwc1 $f8, 0xc($s0) +/* 0422CC 800416CC C444000C */ lwc1 $f4, 0xc($v0) +/* 0422D0 800416D0 C6120014 */ lwc1 $f18, 0x14($s0) +/* 0422D4 800416D4 46044001 */ sub.s $f0, $f8, $f4 +/* 0422D8 800416D8 C44A0014 */ lwc1 $f10, 0x14($v0) +/* 0422DC 800416DC 46000202 */ mul.s $f8, $f0, $f0 +/* 0422E0 800416E0 460A9081 */ sub.s $f2, $f18, $f10 +/* 0422E4 800416E4 3C01800E */ lui $at, %hi(D_800E623C) # $at, 0x800e +/* 0422E8 800416E8 C426623C */ lwc1 $f6, %lo(D_800E623C)($at) +/* 0422EC 800416EC 46021102 */ mul.s $f4, $f2, $f2 +/* 0422F0 800416F0 240B0003 */ li $t3, 3 +/* 0422F4 800416F4 00002025 */ move $a0, $zero +/* 0422F8 800416F8 24050064 */ li $a1, 100 +/* 0422FC 800416FC 46044480 */ add.s $f18, $f8, $f4 +/* 042300 80041700 4612303C */ c.lt.s $f6, $f18 +/* 042304 80041704 00000000 */ nop +/* 042308 80041708 45000003 */ bc1f .L80041718 +/* 04230C 8004170C 00000000 */ nop +/* 042310 80041710 10000041 */ b .L80041818 +/* 042314 80041714 A10B00FD */ sb $t3, 0xfd($t0) +.L80041718: +/* 042318 80041718 AFA8003C */ sw $t0, 0x3c($sp) +/* 04231C 8004171C 0C01BE53 */ jal func_8006F94C +/* 042320 80041720 E7B0007C */ swc1 $f16, 0x7c($sp) +/* 042324 80041724 8FA8003C */ lw $t0, 0x3c($sp) +/* 042328 80041728 C7B0007C */ lwc1 $f16, 0x7c($sp) +/* 04232C 8004172C 28410063 */ slti $at, $v0, 0x63 +/* 042330 80041730 14200006 */ bnez $at, .L8004174C +/* 042334 80041734 8FA2009C */ lw $v0, 0x9c($sp) +/* 042338 80041738 850C0106 */ lh $t4, 0x106($t0) +/* 04233C 8004173C 00000000 */ nop +/* 042340 80041740 000C6823 */ negu $t5, $t4 +/* 042344 80041744 A50D0106 */ sh $t5, 0x106($t0) +/* 042348 80041748 8FA2009C */ lw $v0, 0x9c($sp) +.L8004174C: +/* 04234C 8004174C 850F0106 */ lh $t7, 0x106($t0) +/* 042350 80041750 860E0000 */ lh $t6, ($s0) +/* 042354 80041754 004F0019 */ multu $v0, $t7 +/* 042358 80041758 3C014280 */ li $at, 0x42800000 # 64.000000 +/* 04235C 8004175C 44815000 */ mtc1 $at, $f10 +/* 042360 80041760 C6000010 */ lwc1 $f0, 0x10($s0) +/* 042364 80041764 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 042368 80041768 0000C012 */ mflo $t8 +/* 04236C 8004176C 01D8C821 */ addu $t9, $t6, $t8 +/* 042370 80041770 A6190000 */ sh $t9, ($s0) +/* 042374 80041774 8D0B0100 */ lw $t3, 0x100($t0) +/* 042378 80041778 00000000 */ nop +/* 04237C 8004177C C5620010 */ lwc1 $f2, 0x10($t3) +/* 042380 80041780 00000000 */ nop +/* 042384 80041784 460A1200 */ add.s $f8, $f2, $f10 +/* 042388 80041788 4600403C */ c.lt.s $f8, $f0 +/* 04238C 8004178C 00000000 */ nop +/* 042390 80041790 45000003 */ bc1f .L800417A0 +/* 042394 80041794 00000000 */ nop +/* 042398 80041798 10000009 */ b .L800417C0 +/* 04239C 8004179C A10000FE */ sb $zero, 0xfe($t0) +.L800417A0: +/* 0423A0 800417A0 44812000 */ mtc1 $at, $f4 +/* 0423A4 800417A4 240C0001 */ li $t4, 1 +/* 0423A8 800417A8 46041180 */ add.s $f6, $f2, $f4 +/* 0423AC 800417AC 4606003C */ c.lt.s $f0, $f6 +/* 0423B0 800417B0 00000000 */ nop +/* 0423B4 800417B4 45000002 */ bc1f .L800417C0 +/* 0423B8 800417B8 00000000 */ nop +/* 0423BC 800417BC A10C00FE */ sb $t4, 0xfe($t0) +.L800417C0: +/* 0423C0 800417C0 910D00FE */ lbu $t5, 0xfe($t0) +/* 0423C4 800417C4 00000000 */ nop +/* 0423C8 800417C8 11A00008 */ beqz $t5, .L800417EC +/* 0423CC 800417CC 00000000 */ nop +/* 0423D0 800417D0 44825000 */ mtc1 $v0, $f10 +/* 0423D4 800417D4 C6120020 */ lwc1 $f18, 0x20($s0) +/* 0423D8 800417D8 46805220 */ cvt.s.w $f8, $f10 +/* 0423DC 800417DC 46088102 */ mul.s $f4, $f16, $f8 +/* 0423E0 800417E0 46049180 */ add.s $f6, $f18, $f4 +/* 0423E4 800417E4 10000007 */ b .L80041804 +/* 0423E8 800417E8 E6060020 */ swc1 $f6, 0x20($s0) +.L800417EC: +/* 0423EC 800417EC 44824000 */ mtc1 $v0, $f8 +/* 0423F0 800417F0 C60A0020 */ lwc1 $f10, 0x20($s0) +/* 0423F4 800417F4 468044A0 */ cvt.s.w $f18, $f8 +/* 0423F8 800417F8 46128102 */ mul.s $f4, $f16, $f18 +/* 0423FC 800417FC 46045181 */ sub.s $f6, $f10, $f4 +/* 042400 80041800 E6060020 */ swc1 $f6, 0x20($s0) +.L80041804: +/* 042404 80041804 860F0000 */ lh $t7, ($s0) +/* 042408 80041808 850E0106 */ lh $t6, 0x106($t0) +/* 04240C 8004180C 00000000 */ nop +/* 042410 80041810 01EEC021 */ addu $t8, $t7, $t6 +/* 042414 80041814 A6180000 */ sh $t8, ($s0) +.L80041818: +/* 042418 80041818 86190018 */ lh $t9, 0x18($s0) +/* 04241C 8004181C 8FAB002C */ lw $t3, 0x2c($sp) +/* 042420 80041820 00000000 */ nop +/* 042424 80041824 032B6021 */ addu $t4, $t9, $t3 +/* 042428 80041828 318D00FF */ andi $t5, $t4, 0xff +/* 04242C 8004182C A60D0018 */ sh $t5, 0x18($s0) +/* 042430 80041830 910200FD */ lbu $v0, 0xfd($t0) +/* 042434 80041834 00000000 */ nop +.L80041838: +/* 042438 80041838 10400018 */ beqz $v0, .L8004189C +/* 04243C 8004183C 00000000 */ nop +/* 042440 80041840 C5000108 */ lwc1 $f0, 0x108($t0) +/* 042444 80041844 C7A80078 */ lwc1 $f8, 0x78($sp) +/* 042448 80041848 8FAF009C */ lw $t7, 0x9c($sp) +/* 04244C 8004184C 4608003C */ c.lt.s $f0, $f8 +/* 042450 80041850 00000000 */ nop +/* 042454 80041854 45000011 */ bc1f .L8004189C +/* 042458 80041858 00000000 */ nop +/* 04245C 8004185C 448F5000 */ mtc1 $t7, $f10 +/* 042460 80041860 3C013E80 */ li $at, 0x3E800000 # 0.250000 +/* 042464 80041864 46805120 */ cvt.s.w $f4, $f10 +/* 042468 80041868 44819000 */ mtc1 $at, $f18 +/* 04246C 8004186C 00000000 */ nop +/* 042470 80041870 46049182 */ mul.s $f6, $f18, $f4 +/* 042474 80041874 46060200 */ add.s $f8, $f0, $f6 +/* 042478 80041878 E5080108 */ swc1 $f8, 0x108($t0) +/* 04247C 8004187C C5120108 */ lwc1 $f18, 0x108($t0) +/* 042480 80041880 C7AA0078 */ lwc1 $f10, 0x78($sp) +/* 042484 80041884 00000000 */ nop +/* 042488 80041888 4612503C */ c.lt.s $f10, $f18 +/* 04248C 8004188C 00000000 */ nop +/* 042490 80041890 45000002 */ bc1f .L8004189C +/* 042494 80041894 00000000 */ nop +/* 042498 80041898 E50A0108 */ swc1 $f10, 0x108($t0) +.L8004189C: +/* 04249C 8004189C 44807000 */ mtc1 $zero, $f14 +/* 0424A0 800418A0 C5040108 */ lwc1 $f4, 0x108($t0) +/* 0424A4 800418A4 8FB80064 */ lw $t8, 0x64($sp) +/* 0424A8 800418A8 46047032 */ c.eq.s $f14, $f4 +/* 0424AC 800418AC 00000000 */ nop +/* 0424B0 800418B0 4501003D */ bc1t .L800419A8 +/* 0424B4 800418B4 00000000 */ nop +/* 0424B8 800418B8 910E00FD */ lbu $t6, 0xfd($t0) +/* 0424BC 800418BC 24010004 */ li $at, 4 +/* 0424C0 800418C0 11C10004 */ beq $t6, $at, .L800418D4 +/* 0424C4 800418C4 3C01800E */ lui $at, %hi(D_800E6240) # $at, 0x800e +/* 0424C8 800418C8 C4206240 */ lwc1 $f0, %lo(D_800E6240)($at) +/* 0424CC 800418CC 10000004 */ b .L800418E0 +/* 0424D0 800418D0 00000000 */ nop +.L800418D4: +/* 0424D4 800418D4 3C01800E */ lui $at, %hi(D_800E6244) # $at, 0x800e +/* 0424D8 800418D8 C4206244 */ lwc1 $f0, %lo(D_800E6244)($at) +/* 0424DC 800418DC 00000000 */ nop +.L800418E0: +/* 0424E0 800418E0 13000005 */ beqz $t8, .L800418F8 +/* 0424E4 800418E4 3C01800E */ lui $at, %hi(D_800E6248) # $at, 0x800e +/* 0424E8 800418E8 C4266248 */ lwc1 $f6, %lo(D_800E6248)($at) +/* 0424EC 800418EC 00000000 */ nop +/* 0424F0 800418F0 46060002 */ mul.s $f0, $f0, $f6 +/* 0424F4 800418F4 00000000 */ nop +.L800418F8: +/* 0424F8 800418F8 C6020020 */ lwc1 $f2, 0x20($s0) +/* 0424FC 800418FC 46000307 */ neg.s $f12, $f0 +/* 042500 80041900 460C103C */ c.lt.s $f2, $f12 +/* 042504 80041904 00000000 */ nop +/* 042508 80041908 45000004 */ bc1f .L8004191C +/* 04250C 8004190C 00000000 */ nop +/* 042510 80041910 E60C0020 */ swc1 $f12, 0x20($s0) +/* 042514 80041914 C6020020 */ lwc1 $f2, 0x20($s0) +/* 042518 80041918 00000000 */ nop +.L8004191C: +/* 04251C 8004191C 4602003C */ c.lt.s $f0, $f2 +/* 042520 80041920 00000000 */ nop +/* 042524 80041924 45000002 */ bc1f .L80041930 +/* 042528 80041928 00000000 */ nop +/* 04252C 8004192C E6000020 */ swc1 $f0, 0x20($s0) +.L80041930: +/* 042530 80041930 C5080108 */ lwc1 $f8, 0x108($t0) +/* 042534 80041934 00000000 */ nop +/* 042538 80041938 46087032 */ c.eq.s $f14, $f8 +/* 04253C 8004193C 00000000 */ nop +/* 042540 80041940 45010019 */ bc1t .L800419A8 +/* 042544 80041944 00000000 */ nop +/* 042548 80041948 86040000 */ lh $a0, ($s0) +/* 04254C 8004194C 0C01C1F1 */ jal func_800707C4 +/* 042550 80041950 AFA8003C */ sw $t0, 0x3c($sp) +/* 042554 80041954 8FA8003C */ lw $t0, 0x3c($sp) +/* 042558 80041958 86040000 */ lh $a0, ($s0) +/* 04255C 8004195C C5120108 */ lwc1 $f18, 0x108($t0) +/* 042560 80041960 00000000 */ nop +/* 042564 80041964 46009287 */ neg.s $f10, $f18 +/* 042568 80041968 460A0102 */ mul.s $f4, $f0, $f10 +/* 04256C 8004196C 0C01C1FE */ jal func_800707F8 +/* 042570 80041970 E604001C */ swc1 $f4, 0x1c($s0) +/* 042574 80041974 8FA8003C */ lw $t0, 0x3c($sp) +/* 042578 80041978 8E05001C */ lw $a1, 0x1c($s0) +/* 04257C 8004197C C5060108 */ lwc1 $f6, 0x108($t0) +/* 042580 80041980 8E060020 */ lw $a2, 0x20($s0) +/* 042584 80041984 46003207 */ neg.s $f8, $f6 +/* 042588 80041988 46080482 */ mul.s $f18, $f0, $f8 +/* 04258C 8004198C 02002025 */ move $a0, $s0 +/* 042590 80041990 E6120024 */ swc1 $f18, 0x24($s0) +/* 042594 80041994 8E070024 */ lw $a3, 0x24($s0) +/* 042598 80041998 0C00455C */ jal func_80011570 +/* 04259C 8004199C 00000000 */ nop +/* 0425A0 800419A0 8FA8003C */ lw $t0, 0x3c($sp) +/* 0425A4 800419A4 00000000 */ nop +.L800419A8: +/* 0425A8 800419A8 911900FC */ lbu $t9, 0xfc($t0) +/* 0425AC 800419AC 240B0001 */ li $t3, 1 +/* 0425B0 800419B0 01796023 */ subu $t4, $t3, $t9 +/* 0425B4 800419B4 318D00FF */ andi $t5, $t4, 0xff +/* 0425B8 800419B8 000D7880 */ sll $t7, $t5, 2 +/* 0425BC 800419BC 01ED7823 */ subu $t7, $t7, $t5 +/* 0425C0 800419C0 000F7840 */ sll $t7, $t7, 1 +/* 0425C4 800419C4 000F7080 */ sll $t6, $t7, 2 +/* 0425C8 800419C8 A10C00FC */ sb $t4, 0xfc($t0) +/* 0425CC 800419CC 01CF7021 */ addu $t6, $t6, $t7 +/* 0425D0 800419D0 8FB80064 */ lw $t8, 0x64($sp) +/* 0425D4 800419D4 000E7040 */ sll $t6, $t6, 1 +/* 0425D8 800419D8 010E3021 */ addu $a2, $t0, $t6 +/* 0425DC 800419DC 17000003 */ bnez $t8, .L800419EC +/* 0425E0 800419E0 24C60080 */ addiu $a2, $a2, 0x80 +/* 0425E4 800419E4 10000002 */ b .L800419F0 +/* 0425E8 800419E8 24050007 */ li $a1, 7 +.L800419EC: +/* 0425EC 800419EC 24050008 */ li $a1, 8 +.L800419F0: +/* 0425F0 800419F0 860B0018 */ lh $t3, 0x18($s0) +/* 0425F4 800419F4 AFA60040 */ sw $a2, 0x40($sp) +/* 0425F8 800419F8 00AB2004 */ sllv $a0, $t3, $a1 +/* 0425FC 800419FC 0004CC00 */ sll $t9, $a0, 0x10 +/* 042600 80041A00 00192403 */ sra $a0, $t9, 0x10 +/* 042604 80041A04 0C01C20C */ jal func_80070830 +/* 042608 80041A08 A7A50076 */ sh $a1, 0x76($sp) +/* 04260C 80041A0C 87A50076 */ lh $a1, 0x76($sp) +/* 042610 80041A10 860D0018 */ lh $t5, 0x18($s0) +/* 042614 80041A14 00021A83 */ sra $v1, $v0, 0xa +/* 042618 80041A18 00AD2004 */ sllv $a0, $t5, $a1 +/* 04261C 80041A1C 00047C00 */ sll $t7, $a0, 0x10 +/* 042620 80041A20 000F2403 */ sra $a0, $t7, 0x10 +/* 042624 80041A24 0C01C20B */ jal func_8007082C +/* 042628 80041A28 AFA3006C */ sw $v1, 0x6c($sp) +/* 04262C 80041A2C 8FA3006C */ lw $v1, 0x6c($sp) +/* 042630 80041A30 8FA60040 */ lw $a2, 0x40($sp) +/* 042634 80041A34 00022283 */ sra $a0, $v0, 0xa +/* 042638 80041A38 04610002 */ bgez $v1, .L80041A44 +/* 04263C 80041A3C 00802825 */ move $a1, $a0 +/* 042640 80041A40 00031823 */ negu $v1, $v1 +.L80041A44: +/* 042644 80041A44 8FB80064 */ lw $t8, 0x64($sp) +/* 042648 80041A48 00031023 */ negu $v0, $v1 +/* 04264C 80041A4C 17000004 */ bnez $t8, .L80041A60 +/* 042650 80041A50 00000000 */ nop +/* 042654 80041A54 04810002 */ bgez $a0, .L80041A60 +/* 042658 80041A58 00000000 */ nop +/* 04265C 80041A5C 00042823 */ negu $a1, $a0 +.L80041A60: +/* 042660 80041A60 A4C20000 */ sh $v0, ($a2) +/* 042664 80041A64 A4C50002 */ sh $a1, 2($a2) +/* 042668 80041A68 A4C2000A */ sh $v0, 0xa($a2) +/* 04266C 80041A6C A4C5000C */ sh $a1, 0xc($a2) +/* 042670 80041A70 A4C30028 */ sh $v1, 0x28($a2) +/* 042674 80041A74 A4C5002A */ sh $a1, 0x2a($a2) +/* 042678 80041A78 A4C30032 */ sh $v1, 0x32($a2) +/* 04267C 80041A7C A4C50034 */ sh $a1, 0x34($a2) +/* 042680 80041A80 8FBF0024 */ lw $ra, 0x24($sp) +/* 042684 80041A84 8FB00020 */ lw $s0, 0x20($sp) +/* 042688 80041A88 03E00008 */ jr $ra +/* 04268C 80041A8C 27BD0098 */ addiu $sp, $sp, 0x98 + diff --git a/asm/non_matchings/unknown_032760/func_80041A90.s b/asm/non_matchings/unknown_032760/func_80041A90.s new file mode 100644 index 00000000..2331dc48 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80041A90.s @@ -0,0 +1,266 @@ +glabel func_80041A90 +/* 042690 80041A90 27BDFF00 */ addiu $sp, $sp, -0x100 +/* 042694 80041A94 AFBF003C */ sw $ra, 0x3c($sp) +/* 042698 80041A98 AFB00038 */ sw $s0, 0x38($sp) +/* 04269C 80041A9C E7B70030 */ swc1 $f23, 0x30($sp) +/* 0426A0 80041AA0 E7B60034 */ swc1 $f22, 0x34($sp) +/* 0426A4 80041AA4 E7B50028 */ swc1 $f21, 0x28($sp) +/* 0426A8 80041AA8 E7B4002C */ swc1 $f20, 0x2c($sp) +/* 0426AC 80041AAC 90AF0009 */ lbu $t7, 9($a1) +/* 0426B0 80041AB0 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0426B4 80041AB4 000FC280 */ sll $t8, $t7, 0xa +/* 0426B8 80041AB8 A4980000 */ sh $t8, ($a0) +/* 0426BC 80041ABC 90A90008 */ lbu $t1, 8($a1) +/* 0426C0 80041AC0 4481B000 */ mtc1 $at, $f22 +/* 0426C4 80041AC4 44892000 */ mtc1 $t1, $f4 +/* 0426C8 80041AC8 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 0426CC 80041ACC 46802020 */ cvt.s.w $f0, $f4 +/* 0426D0 80041AD0 8C880064 */ lw $t0, 0x64($a0) +/* 0426D4 80041AD4 44813000 */ mtc1 $at, $f6 +/* 0426D8 80041AD8 4616003C */ c.lt.s $f0, $f22 +/* 0426DC 80041ADC 00808025 */ move $s0, $a0 +/* 0426E0 80041AE0 45000002 */ bc1f .L80041AEC +/* 0426E4 80041AE4 00A03025 */ move $a2, $a1 +/* 0426E8 80041AE8 4600B006 */ mov.s $f0, $f22 +.L80041AEC: +/* 0426EC 80041AEC 00000000 */ nop +/* 0426F0 80041AF0 46060003 */ div.s $f0, $f0, $f6 +/* 0426F4 80041AF4 8E0A0040 */ lw $t2, 0x40($s0) +/* 0426F8 80041AF8 860B0000 */ lh $t3, ($s0) +/* 0426FC 80041AFC C548000C */ lwc1 $f8, 0xc($t2) +/* 042700 80041B00 4480A000 */ mtc1 $zero, $f20 +/* 042704 80041B04 27A4008C */ addiu $a0, $sp, 0x8c +/* 042708 80041B08 27A500E0 */ addiu $a1, $sp, 0xe0 +/* 04270C 80041B0C 46004282 */ mul.s $f10, $f8, $f0 +/* 042710 80041B10 E60A0008 */ swc1 $f10, 8($s0) +/* 042714 80041B14 A7AB00E0 */ sh $t3, 0xe0($sp) +/* 042718 80041B18 860C0002 */ lh $t4, 2($s0) +/* 04271C 80041B1C 00000000 */ nop +/* 042720 80041B20 A7AC00E2 */ sh $t4, 0xe2($sp) +/* 042724 80041B24 860D0004 */ lh $t5, 4($s0) +/* 042728 80041B28 E7B600E8 */ swc1 $f22, 0xe8($sp) +/* 04272C 80041B2C AFA800FC */ sw $t0, 0xfc($sp) +/* 042730 80041B30 AFA60104 */ sw $a2, 0x104($sp) +/* 042734 80041B34 E7B400EC */ swc1 $f20, 0xec($sp) +/* 042738 80041B38 E7B400F0 */ swc1 $f20, 0xf0($sp) +/* 04273C 80041B3C E7B400F4 */ swc1 $f20, 0xf4($sp) +/* 042740 80041B40 0C01BF0C */ jal func_8006FC30 +/* 042744 80041B44 A7AD00E4 */ sh $t5, 0xe4($sp) +/* 042748 80041B48 4405A000 */ mfc1 $a1, $f20 +/* 04274C 80041B4C 4406A000 */ mfc1 $a2, $f20 +/* 042750 80041B50 4407B000 */ mfc1 $a3, $f22 +/* 042754 80041B54 27AE00DC */ addiu $t6, $sp, 0xdc +/* 042758 80041B58 27AF00D8 */ addiu $t7, $sp, 0xd8 +/* 04275C 80041B5C 27B800D4 */ addiu $t8, $sp, 0xd4 +/* 042760 80041B60 AFB80018 */ sw $t8, 0x18($sp) +/* 042764 80041B64 AFAF0014 */ sw $t7, 0x14($sp) +/* 042768 80041B68 AFAE0010 */ sw $t6, 0x10($sp) +/* 04276C 80041B6C 0C01BD93 */ jal func_8006F64C +/* 042770 80041B70 27A4008C */ addiu $a0, $sp, 0x8c +/* 042774 80041B74 8FA800FC */ lw $t0, 0xfc($sp) +/* 042778 80041B78 C7A400DC */ lwc1 $f4, 0xdc($sp) +/* 04277C 80041B7C 8FA40104 */ lw $a0, 0x104($sp) +/* 042780 80041B80 E5040008 */ swc1 $f4, 8($t0) +/* 042784 80041B84 C7A600D8 */ lwc1 $f6, 0xd8($sp) +/* 042788 80041B88 00001025 */ move $v0, $zero +/* 04278C 80041B8C E506000C */ swc1 $f6, 0xc($t0) +/* 042790 80041B90 C7A800D4 */ lwc1 $f8, 0xd4($sp) +/* 042794 80041B94 01001825 */ move $v1, $t0 +/* 042798 80041B98 E5080010 */ swc1 $f8, 0x10($t0) +/* 04279C 80041B9C C7A400DC */ lwc1 $f4, 0xdc($sp) +/* 0427A0 80041BA0 C60A000C */ lwc1 $f10, 0xc($s0) +/* 0427A4 80041BA4 C6080010 */ lwc1 $f8, 0x10($s0) +/* 0427A8 80041BA8 46045182 */ mul.s $f6, $f10, $f4 +/* 0427AC 80041BAC C7AA00D8 */ lwc1 $f10, 0xd8($sp) +/* 0427B0 80041BB0 00000000 */ nop +/* 0427B4 80041BB4 460A4102 */ mul.s $f4, $f8, $f10 +/* 0427B8 80041BB8 C60A0014 */ lwc1 $f10, 0x14($s0) +/* 0427BC 80041BBC 46043200 */ add.s $f8, $f6, $f4 +/* 0427C0 80041BC0 C7A600D4 */ lwc1 $f6, 0xd4($sp) +/* 0427C4 80041BC4 00000000 */ nop +/* 0427C8 80041BC8 46065102 */ mul.s $f4, $f10, $f6 +/* 0427CC 80041BCC 46044280 */ add.s $f10, $f8, $f4 +/* 0427D0 80041BD0 46005187 */ neg.s $f6, $f10 +/* 0427D4 80041BD4 E5060014 */ swc1 $f6, 0x14($t0) +/* 0427D8 80041BD8 9099001A */ lbu $t9, 0x1a($a0) +/* 0427DC 80041BDC 00000000 */ nop +/* 0427E0 80041BE0 A1190002 */ sb $t9, 2($t0) +/* 0427E4 80041BE4 9089001B */ lbu $t1, 0x1b($a0) +/* 0427E8 80041BE8 00000000 */ nop +/* 0427EC 80041BEC A1090040 */ sb $t1, 0x40($t0) +.L80041BF0: +/* 0427F0 80041BF0 908A000A */ lbu $t2, 0xa($a0) +/* 0427F4 80041BF4 24420001 */ addiu $v0, $v0, 1 +/* 0427F8 80041BF8 2841000F */ slti $at, $v0, 0xf +/* 0427FC 80041BFC 24630001 */ addiu $v1, $v1, 1 +/* 042800 80041C00 24840001 */ addiu $a0, $a0, 1 +/* 042804 80041C04 1420FFFA */ bnez $at, .L80041BF0 +/* 042808 80041C08 A06A002F */ sb $t2, 0x2f($v1) +/* 04280C 80041C0C 8E0B0068 */ lw $t3, 0x68($s0) +/* 042810 80041C10 2402000A */ li $v0, 10 +/* 042814 80041C14 8D650000 */ lw $a1, ($t3) +/* 042818 80041C18 00000000 */ nop +/* 04281C 80041C1C 8CA40000 */ lw $a0, ($a1) +/* 042820 80041C20 00000000 */ nop +/* 042824 80041C24 8C860004 */ lw $a2, 4($a0) +/* 042828 80041C28 84870024 */ lh $a3, 0x24($a0) +/* 04282C 80041C2C 24C3000A */ addiu $v1, $a2, 0xa +/* 042830 80041C30 846C0000 */ lh $t4, ($v1) +/* 042834 80041C34 846D0002 */ lh $t5, 2($v1) +/* 042838 80041C38 846E0004 */ lh $t6, 4($v1) +/* 04283C 80041C3C 448C4000 */ mtc1 $t4, $f8 +/* 042840 80041C40 448D2000 */ mtc1 $t5, $f4 +/* 042844 80041C44 448E5000 */ mtc1 $t6, $f10 +/* 042848 80041C48 468040A0 */ cvt.s.w $f2, $f8 +/* 04284C 80041C4C 00072880 */ sll $a1, $a3, 2 +/* 042850 80041C50 00A72821 */ addu $a1, $a1, $a3 +/* 042854 80041C54 46802520 */ cvt.s.w $f20, $f4 +/* 042858 80041C58 28E10002 */ slti $at, $a3, 2 +/* 04285C 80041C5C 00052840 */ sll $a1, $a1, 1 +/* 042860 80041C60 46805320 */ cvt.s.w $f12, $f10 +/* 042864 80041C64 24C4000A */ addiu $a0, $a2, 0xa +/* 042868 80041C68 46001386 */ mov.s $f14, $f2 +/* 04286C 80041C6C 4600A586 */ mov.s $f22, $f20 +/* 042870 80041C70 14200031 */ bnez $at, .L80041D38 +/* 042874 80041C74 46006406 */ mov.s $f16, $f12 +.L80041C78: +/* 042878 80041C78 848F0000 */ lh $t7, ($a0) +/* 04287C 80041C7C 2442000A */ addiu $v0, $v0, 0xa +/* 042880 80041C80 448F3000 */ mtc1 $t7, $f6 +/* 042884 80041C84 0045082A */ slt $at, $v0, $a1 +/* 042888 80041C88 46803020 */ cvt.s.w $f0, $f6 +/* 04288C 80041C8C 00801825 */ move $v1, $a0 +/* 042890 80041C90 460E003C */ c.lt.s $f0, $f14 +/* 042894 80041C94 00000000 */ nop +/* 042898 80041C98 45000002 */ bc1f .L80041CA4 +/* 04289C 80041C9C 00000000 */ nop +/* 0428A0 80041CA0 46000386 */ mov.s $f14, $f0 +.L80041CA4: +/* 0428A4 80041CA4 4600103C */ c.lt.s $f2, $f0 +/* 0428A8 80041CA8 00000000 */ nop +/* 0428AC 80041CAC 45000002 */ bc1f .L80041CB8 +/* 0428B0 80041CB0 00000000 */ nop +/* 0428B4 80041CB4 46000086 */ mov.s $f2, $f0 +.L80041CB8: +/* 0428B8 80041CB8 84780002 */ lh $t8, 2($v1) +/* 0428BC 80041CBC 00000000 */ nop +/* 0428C0 80041CC0 44984000 */ mtc1 $t8, $f8 +/* 0428C4 80041CC4 00000000 */ nop +/* 0428C8 80041CC8 46804020 */ cvt.s.w $f0, $f8 +/* 0428CC 80041CCC 4616003C */ c.lt.s $f0, $f22 +/* 0428D0 80041CD0 00000000 */ nop +/* 0428D4 80041CD4 45000002 */ bc1f .L80041CE0 +/* 0428D8 80041CD8 00000000 */ nop +/* 0428DC 80041CDC 46000586 */ mov.s $f22, $f0 +.L80041CE0: +/* 0428E0 80041CE0 4600A03C */ c.lt.s $f20, $f0 +/* 0428E4 80041CE4 00000000 */ nop +/* 0428E8 80041CE8 45000002 */ bc1f .L80041CF4 +/* 0428EC 80041CEC 00000000 */ nop +/* 0428F0 80041CF0 46000506 */ mov.s $f20, $f0 +.L80041CF4: +/* 0428F4 80041CF4 84790004 */ lh $t9, 4($v1) +/* 0428F8 80041CF8 00000000 */ nop +/* 0428FC 80041CFC 44992000 */ mtc1 $t9, $f4 +/* 042900 80041D00 00000000 */ nop +/* 042904 80041D04 46802020 */ cvt.s.w $f0, $f4 +/* 042908 80041D08 4610003C */ c.lt.s $f0, $f16 +/* 04290C 80041D0C 00000000 */ nop +/* 042910 80041D10 45000002 */ bc1f .L80041D1C +/* 042914 80041D14 00000000 */ nop +/* 042918 80041D18 46000406 */ mov.s $f16, $f0 +.L80041D1C: +/* 04291C 80041D1C 4600603C */ c.lt.s $f12, $f0 +/* 042920 80041D20 00000000 */ nop +/* 042924 80041D24 45000002 */ bc1f .L80041D30 +/* 042928 80041D28 00000000 */ nop +/* 04292C 80041D2C 46000306 */ mov.s $f12, $f0 +.L80041D30: +/* 042930 80041D30 1420FFD1 */ bnez $at, .L80041C78 +/* 042934 80041D34 2484000A */ addiu $a0, $a0, 0xa +.L80041D38: +/* 042938 80041D38 86040000 */ lh $a0, ($s0) +/* 04293C 80041D3C E7B0007C */ swc1 $f16, 0x7c($sp) +/* 042940 80041D40 E7AE0080 */ swc1 $f14, 0x80($sp) +/* 042944 80041D44 E7AC006C */ swc1 $f12, 0x6c($sp) +/* 042948 80041D48 E7A20070 */ swc1 $f2, 0x70($sp) +/* 04294C 80041D4C 0C01C1FE */ jal func_800707F8 +/* 042950 80041D50 AFA800FC */ sw $t0, 0xfc($sp) +/* 042954 80041D54 E7A00068 */ swc1 $f0, 0x68($sp) +/* 042958 80041D58 86040000 */ lh $a0, ($s0) +/* 04295C 80041D5C 0C01C1F1 */ jal func_800707C4 +/* 042960 80041D60 00000000 */ nop +/* 042964 80041D64 C7AE0080 */ lwc1 $f14, 0x80($sp) +/* 042968 80041D68 C7AA0068 */ lwc1 $f10, 0x68($sp) +/* 04296C 80041D6C C7B0007C */ lwc1 $f16, 0x7c($sp) +/* 042970 80041D70 460A7182 */ mul.s $f6, $f14, $f10 +/* 042974 80041D74 46007486 */ mov.s $f18, $f14 +/* 042978 80041D78 C7A20070 */ lwc1 $f2, 0x70($sp) +/* 04297C 80041D7C C7AC006C */ lwc1 $f12, 0x6c($sp) +/* 042980 80041D80 46008202 */ mul.s $f8, $f16, $f0 +/* 042984 80041D84 8FA800FC */ lw $t0, 0xfc($sp) +/* 042988 80041D88 460A8102 */ mul.s $f4, $f16, $f10 +/* 04298C 80041D8C 46083380 */ add.s $f14, $f6, $f8 +/* 042990 80041D90 46009182 */ mul.s $f6, $f18, $f0 +/* 042994 80041D94 46001486 */ mov.s $f18, $f2 +/* 042998 80041D98 460A1202 */ mul.s $f8, $f2, $f10 +/* 04299C 80041D9C 46062401 */ sub.s $f16, $f4, $f6 +/* 0429A0 80041DA0 46006102 */ mul.s $f4, $f12, $f0 +/* 0429A4 80041DA4 46044080 */ add.s $f2, $f8, $f4 +/* 0429A8 80041DA8 460A6182 */ mul.s $f6, $f12, $f10 +/* 0429AC 80041DAC 460E103C */ c.lt.s $f2, $f14 +/* 0429B0 80041DB0 46009202 */ mul.s $f8, $f18, $f0 +/* 0429B4 80041DB4 45000004 */ bc1f .L80041DC8 +/* 0429B8 80041DB8 46083301 */ sub.s $f12, $f6, $f8 +/* 0429BC 80041DBC 46001006 */ mov.s $f0, $f2 +/* 0429C0 80041DC0 46007086 */ mov.s $f2, $f14 +/* 0429C4 80041DC4 46000386 */ mov.s $f14, $f0 +.L80041DC8: +/* 0429C8 80041DC8 4610603C */ c.lt.s $f12, $f16 +/* 0429CC 80041DCC 00000000 */ nop +/* 0429D0 80041DD0 45000004 */ bc1f .L80041DE4 +/* 0429D4 80041DD4 00000000 */ nop +/* 0429D8 80041DD8 46006006 */ mov.s $f0, $f12 +/* 0429DC 80041DDC 46008306 */ mov.s $f12, $f16 +/* 0429E0 80041DE0 46000406 */ mov.s $f16, $f0 +.L80041DE4: +/* 0429E4 80041DE4 C6040008 */ lwc1 $f4, 8($s0) +/* 0429E8 80041DE8 C606000C */ lwc1 $f6, 0xc($s0) +/* 0429EC 80041DEC 460E2282 */ mul.s $f10, $f4, $f14 +/* 0429F0 80041DF0 46065200 */ add.s $f8, $f10, $f6 +/* 0429F4 80041DF4 E5080018 */ swc1 $f8, 0x18($t0) +/* 0429F8 80041DF8 C6040008 */ lwc1 $f4, 8($s0) +/* 0429FC 80041DFC C6060010 */ lwc1 $f6, 0x10($s0) +/* 042A00 80041E00 46162282 */ mul.s $f10, $f4, $f22 +/* 042A04 80041E04 46065200 */ add.s $f8, $f10, $f6 +/* 042A08 80041E08 E508001C */ swc1 $f8, 0x1c($t0) +/* 042A0C 80041E0C C6040008 */ lwc1 $f4, 8($s0) +/* 042A10 80041E10 C6060014 */ lwc1 $f6, 0x14($s0) +/* 042A14 80041E14 46102282 */ mul.s $f10, $f4, $f16 +/* 042A18 80041E18 46065200 */ add.s $f8, $f10, $f6 +/* 042A1C 80041E1C E5080020 */ swc1 $f8, 0x20($t0) +/* 042A20 80041E20 C6040008 */ lwc1 $f4, 8($s0) +/* 042A24 80041E24 C606000C */ lwc1 $f6, 0xc($s0) +/* 042A28 80041E28 46022282 */ mul.s $f10, $f4, $f2 +/* 042A2C 80041E2C 46065200 */ add.s $f8, $f10, $f6 +/* 042A30 80041E30 E5080024 */ swc1 $f8, 0x24($t0) +/* 042A34 80041E34 C6040008 */ lwc1 $f4, 8($s0) +/* 042A38 80041E38 C6060010 */ lwc1 $f6, 0x10($s0) +/* 042A3C 80041E3C 46142282 */ mul.s $f10, $f4, $f20 +/* 042A40 80041E40 46065200 */ add.s $f8, $f10, $f6 +/* 042A44 80041E44 E5080028 */ swc1 $f8, 0x28($t0) +/* 042A48 80041E48 C6040008 */ lwc1 $f4, 8($s0) +/* 042A4C 80041E4C C6060014 */ lwc1 $f6, 0x14($s0) +/* 042A50 80041E50 460C2282 */ mul.s $f10, $f4, $f12 +/* 042A54 80041E54 A1000001 */ sb $zero, 1($t0) +/* 042A58 80041E58 46065200 */ add.s $f8, $f10, $f6 +/* 042A5C 80041E5C E508002C */ swc1 $f8, 0x2c($t0) +/* 042A60 80041E60 8FBF003C */ lw $ra, 0x3c($sp) +/* 042A64 80041E64 8FB00038 */ lw $s0, 0x38($sp) +/* 042A68 80041E68 C7B60034 */ lwc1 $f22, 0x34($sp) +/* 042A6C 80041E6C C7B70030 */ lwc1 $f23, 0x30($sp) +/* 042A70 80041E70 C7B4002C */ lwc1 $f20, 0x2c($sp) +/* 042A74 80041E74 C7B50028 */ lwc1 $f21, 0x28($sp) +/* 042A78 80041E78 03E00008 */ jr $ra +/* 042A7C 80041E7C 27BD0100 */ addiu $sp, $sp, 0x100 + diff --git a/asm/non_matchings/unknown_032760/func_80041E80.s b/asm/non_matchings/unknown_032760/func_80041E80.s new file mode 100644 index 00000000..01140733 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80041E80.s @@ -0,0 +1,107 @@ +glabel func_80041E80 +/* 042A80 80041E80 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 042A84 80041E84 AFBF001C */ sw $ra, 0x1c($sp) +/* 042A88 80041E88 AFB10018 */ sw $s1, 0x18($sp) +/* 042A8C 80041E8C AFB00014 */ sw $s0, 0x14($sp) +/* 042A90 80041E90 8C860064 */ lw $a2, 0x64($a0) +/* 042A94 80041E94 94AE000A */ lhu $t6, 0xa($a1) +/* 042A98 80041E98 00A08025 */ move $s0, $a1 +/* 042A9C 80041E9C A4CE0002 */ sh $t6, 2($a2) +/* 042AA0 80041EA0 94AF0008 */ lhu $t7, 8($a1) +/* 042AA4 80041EA4 31D9FFFF */ andi $t9, $t6, 0xffff +/* 042AA8 80041EA8 A4CF0000 */ sh $t7, ($a2) +/* 042AAC 80041EAC 90B8001C */ lbu $t8, 0x1c($a1) +/* 042AB0 80041EB0 31E2FFFF */ andi $v0, $t7, 0xffff +/* 042AB4 80041EB4 0322082A */ slt $at, $t9, $v0 +/* 042AB8 80041EB8 00808825 */ move $s1, $a0 +/* 042ABC 80041EBC 10200003 */ beqz $at, .L80041ECC +/* 042AC0 80041EC0 A0D8001C */ sb $t8, 0x1c($a2) +/* 042AC4 80041EC4 2448000A */ addiu $t0, $v0, 0xa +/* 042AC8 80041EC8 A4C80002 */ sh $t0, 2($a2) +.L80041ECC: +/* 042ACC 80041ECC A6200004 */ sh $zero, 4($s1) +/* 042AD0 80041ED0 A6200002 */ sh $zero, 2($s1) +/* 042AD4 80041ED4 A6200000 */ sh $zero, ($s1) +/* 042AD8 80041ED8 9209000C */ lbu $t1, 0xc($s0) +/* 042ADC 80041EDC 24040003 */ li $a0, 3 +/* 042AE0 80041EE0 A0C9000C */ sb $t1, 0xc($a2) +/* 042AE4 80041EE4 920A000D */ lbu $t2, 0xd($s0) +/* 042AE8 80041EE8 24C20003 */ addiu $v0, $a2, 3 +/* 042AEC 80041EEC A0CA000D */ sb $t2, 0xd($a2) +/* 042AF0 80041EF0 920B000E */ lbu $t3, 0xe($s0) +/* 042AF4 80041EF4 26030003 */ addiu $v1, $s0, 3 +/* 042AF8 80041EF8 2405000F */ li $a1, 15 +/* 042AFC 80041EFC A0CB000E */ sb $t3, 0xe($a2) +.L80041F00: +/* 042B00 80041F00 906C000C */ lbu $t4, 0xc($v1) +/* 042B04 80041F04 24840004 */ addiu $a0, $a0, 4 +/* 042B08 80041F08 A04C000C */ sb $t4, 0xc($v0) +/* 042B0C 80041F0C 906D000D */ lbu $t5, 0xd($v1) +/* 042B10 80041F10 24420004 */ addiu $v0, $v0, 4 +/* 042B14 80041F14 A04D0009 */ sb $t5, 9($v0) +/* 042B18 80041F18 906E000E */ lbu $t6, 0xe($v1) +/* 042B1C 80041F1C 24630004 */ addiu $v1, $v1, 4 +/* 042B20 80041F20 A04E000A */ sb $t6, 0xa($v0) +/* 042B24 80041F24 906F000B */ lbu $t7, 0xb($v1) +/* 042B28 80041F28 1485FFF5 */ bne $a0, $a1, .L80041F00 +/* 042B2C 80041F2C A04F000B */ sb $t7, 0xb($v0) +/* 042B30 80041F30 8E380068 */ lw $t8, 0x68($s1) +/* 042B34 80041F34 00000000 */ nop +/* 042B38 80041F38 8F030000 */ lw $v1, ($t8) +/* 042B3C 80041F3C 00000000 */ nop +/* 042B40 80041F40 8C640000 */ lw $a0, ($v1) +/* 042B44 80041F44 00000000 */ nop +/* 042B48 80041F48 8C820004 */ lw $v0, 4($a0) +/* 042B4C 80041F4C 00000000 */ nop +/* 042B50 80041F50 8459000A */ lh $t9, 0xa($v0) +/* 042B54 80041F54 8448000C */ lh $t0, 0xc($v0) +/* 042B58 80041F58 44992000 */ mtc1 $t9, $f4 +/* 042B5C 80041F5C 44883000 */ mtc1 $t0, $f6 +/* 042B60 80041F60 46802020 */ cvt.s.w $f0, $f4 +/* 042B64 80041F64 8449000E */ lh $t1, 0xe($v0) +/* 042B68 80041F68 AFA60024 */ sw $a2, 0x24($sp) +/* 042B6C 80041F6C 46000282 */ mul.s $f10, $f0, $f0 +/* 042B70 80041F70 44894000 */ mtc1 $t1, $f8 +/* 042B74 80041F74 2442000A */ addiu $v0, $v0, 0xa +/* 042B78 80041F78 468030A0 */ cvt.s.w $f2, $f6 +/* 042B7C 80041F7C 46021402 */ mul.s $f16, $f2, $f2 +/* 042B80 80041F80 468043A0 */ cvt.s.w $f14, $f8 +/* 042B84 80041F84 460E7102 */ mul.s $f4, $f14, $f14 +/* 042B88 80041F88 46105480 */ add.s $f18, $f10, $f16 +/* 042B8C 80041F8C 0C0326B4 */ jal sqrtf +/* 042B90 80041F90 46049300 */ add.s $f12, $f18, $f4 +/* 042B94 80041F94 960A0008 */ lhu $t2, 8($s0) +/* 042B98 80041F98 8FA60024 */ lw $a2, 0x24($sp) +/* 042B9C 80041F9C 448A3000 */ mtc1 $t2, $f6 +/* 042BA0 80041FA0 05410005 */ bgez $t2, .L80041FB8 +/* 042BA4 80041FA4 46803220 */ cvt.s.w $f8, $f6 +/* 042BA8 80041FA8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 042BAC 80041FAC 44815000 */ mtc1 $at, $f10 +/* 042BB0 80041FB0 00000000 */ nop +/* 042BB4 80041FB4 460A4200 */ add.s $f8, $f8, $f10 +.L80041FB8: +/* 042BB8 80041FB8 00000000 */ nop +/* 042BBC 80041FBC 46004403 */ div.s $f16, $f8, $f0 +/* 042BC0 80041FC0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 042BC4 80041FC4 E4D00004 */ swc1 $f16, 4($a2) +/* 042BC8 80041FC8 960B000A */ lhu $t3, 0xa($s0) +/* 042BCC 80041FCC 00000000 */ nop +/* 042BD0 80041FD0 448B9000 */ mtc1 $t3, $f18 +/* 042BD4 80041FD4 05610004 */ bgez $t3, .L80041FE8 +/* 042BD8 80041FD8 46809120 */ cvt.s.w $f4, $f18 +/* 042BDC 80041FDC 44813000 */ mtc1 $at, $f6 +/* 042BE0 80041FE0 00000000 */ nop +/* 042BE4 80041FE4 46062100 */ add.s $f4, $f4, $f6 +.L80041FE8: +/* 042BE8 80041FE8 00000000 */ nop +/* 042BEC 80041FEC 46002283 */ div.s $f10, $f4, $f0 +/* 042BF0 80041FF0 E4CA0008 */ swc1 $f10, 8($a2) +/* 042BF4 80041FF4 C4C80008 */ lwc1 $f8, 8($a2) +/* 042BF8 80041FF8 00000000 */ nop +/* 042BFC 80041FFC E6280008 */ swc1 $f8, 8($s1) +/* 042C00 80042000 8FBF001C */ lw $ra, 0x1c($sp) +/* 042C04 80042004 8FB10018 */ lw $s1, 0x18($sp) +/* 042C08 80042008 8FB00014 */ lw $s0, 0x14($sp) +/* 042C0C 8004200C 03E00008 */ jr $ra +/* 042C10 80042010 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_032760/func_80042014.s b/asm/non_matchings/unknown_032760/func_80042014.s new file mode 100644 index 00000000..6a1de13e --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80042014.s @@ -0,0 +1,12 @@ +glabel func_80042014 +/* 042C14 80042014 8C820064 */ lw $v0, 0x64($a0) +/* 042C18 80042018 94AE0008 */ lhu $t6, 8($a1) +/* 042C1C 8004201C 00000000 */ nop +/* 042C20 80042020 A44E0000 */ sh $t6, ($v0) +/* 042C24 80042024 90AF000A */ lbu $t7, 0xa($a1) +/* 042C28 80042028 00000000 */ nop +/* 042C2C 8004202C A04F0002 */ sb $t7, 2($v0) +/* 042C30 80042030 90B8000B */ lbu $t8, 0xb($a1) +/* 042C34 80042034 03E00008 */ jr $ra +/* 042C38 80042038 A0580003 */ sb $t8, 3($v0) + diff --git a/asm/non_matchings/unknown_032760/func_8004203C.s b/asm/non_matchings/unknown_032760/func_8004203C.s new file mode 100644 index 00000000..9b178e6d --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8004203C.s @@ -0,0 +1,23 @@ +glabel func_8004203C +/* 042C3C 8004203C 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 042C40 80042040 AFBF001C */ sw $ra, 0x1c($sp) +/* 042C44 80042044 AFA40020 */ sw $a0, 0x20($sp) +/* 042C48 80042048 AFA50024 */ sw $a1, 0x24($sp) +/* 042C4C 8004204C 00A07825 */ move $t7, $a1 +/* 042C50 80042050 91E60008 */ lbu $a2, 8($t7) +/* 042C54 80042054 90A50009 */ lbu $a1, 9($a1) +/* 042C58 80042058 8C84006C */ lw $a0, 0x6c($a0) +/* 042C5C 8004205C AFA00014 */ sw $zero, 0x14($sp) +/* 042C60 80042060 AFA00010 */ sw $zero, 0x10($sp) +/* 042C64 80042064 0C02BC4D */ jal func_800AF134 +/* 042C68 80042068 00003825 */ move $a3, $zero +/* 042C6C 8004206C 8FB80024 */ lw $t8, 0x24($sp) +/* 042C70 80042070 8FA80020 */ lw $t0, 0x20($sp) +/* 042C74 80042074 9719000A */ lhu $t9, 0xa($t8) +/* 042C78 80042078 00000000 */ nop +/* 042C7C 8004207C AD190078 */ sw $t9, 0x78($t0) +/* 042C80 80042080 8FBF001C */ lw $ra, 0x1c($sp) +/* 042C84 80042084 27BD0020 */ addiu $sp, $sp, 0x20 +/* 042C88 80042088 03E00008 */ jr $ra +/* 042C8C 8004208C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80042090.s b/asm/non_matchings/unknown_032760/func_80042090.s new file mode 100644 index 00000000..bd3c4103 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80042090.s @@ -0,0 +1,36 @@ +glabel func_80042090 +/* 042C90 80042090 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 042C94 80042094 AFBF0014 */ sw $ra, 0x14($sp) +/* 042C98 80042098 AFA5001C */ sw $a1, 0x1c($sp) +/* 042C9C 8004209C 00803025 */ move $a2, $a0 +/* 042CA0 800420A0 AFA60018 */ sw $a2, 0x18($sp) +/* 042CA4 800420A4 00002025 */ move $a0, $zero +/* 042CA8 800420A8 0C01BE53 */ jal func_8006F94C +/* 042CAC 800420AC 24050400 */ li $a1, 1024 +/* 042CB0 800420B0 8FA60018 */ lw $a2, 0x18($sp) +/* 042CB4 800420B4 240F0001 */ li $t7, 1 +/* 042CB8 800420B8 8CCE0078 */ lw $t6, 0x78($a2) +/* 042CBC 800420BC 00000000 */ nop +/* 042CC0 800420C0 01C2082A */ slt $at, $t6, $v0 +/* 042CC4 800420C4 14200003 */ bnez $at, .L800420D4 +/* 042CC8 800420C8 00000000 */ nop +/* 042CCC 800420CC 10000002 */ b .L800420D8 +/* 042CD0 800420D0 ACCF0074 */ sw $t7, 0x74($a2) +.L800420D4: +/* 042CD4 800420D4 ACC00074 */ sw $zero, 0x74($a2) +.L800420D8: +/* 042CD8 800420D8 0C0270F2 */ jal func_8009C3C8 +/* 042CDC 800420DC AFA60018 */ sw $a2, 0x18($sp) +/* 042CE0 800420E0 8FA60018 */ lw $a2, 0x18($sp) +/* 042CE4 800420E4 28410002 */ slti $at, $v0, 2 +/* 042CE8 800420E8 10200005 */ beqz $at, .L80042100 +/* 042CEC 800420EC 8FBF0014 */ lw $ra, 0x14($sp) +/* 042CF0 800420F0 8FA5001C */ lw $a1, 0x1c($sp) +/* 042CF4 800420F4 0C02BF0F */ jal func_800AFC3C +/* 042CF8 800420F8 00C02025 */ move $a0, $a2 +/* 042CFC 800420FC 8FBF0014 */ lw $ra, 0x14($sp) +.L80042100: +/* 042D00 80042100 27BD0018 */ addiu $sp, $sp, 0x18 +/* 042D04 80042104 03E00008 */ jr $ra +/* 042D08 80042108 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_8004210C.s b/asm/non_matchings/unknown_032760/func_8004210C.s new file mode 100644 index 00000000..d3062de8 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8004210C.s @@ -0,0 +1,19 @@ +glabel func_8004210C +/* 042D0C 8004210C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 042D10 80042110 AFBF0014 */ sw $ra, 0x14($sp) +/* 042D14 80042114 AFA40018 */ sw $a0, 0x18($sp) +/* 042D18 80042118 AFA5001C */ sw $a1, 0x1c($sp) +/* 042D1C 8004211C 0C0078A7 */ jal func_8001E29C +/* 042D20 80042120 24040014 */ li $a0, 20 +/* 042D24 80042124 8FAE001C */ lw $t6, 0x1c($sp) +/* 042D28 80042128 8FA30018 */ lw $v1, 0x18($sp) +/* 042D2C 8004212C 81CF0008 */ lb $t7, 8($t6) +/* 042D30 80042130 AC60003C */ sw $zero, 0x3c($v1) +/* 042D34 80042134 000FC1C0 */ sll $t8, $t7, 7 +/* 042D38 80042138 0302C821 */ addu $t9, $t8, $v0 +/* 042D3C 8004213C AC790064 */ sw $t9, 0x64($v1) +/* 042D40 80042140 8FBF0014 */ lw $ra, 0x14($sp) +/* 042D44 80042144 27BD0018 */ addiu $sp, $sp, 0x18 +/* 042D48 80042148 03E00008 */ jr $ra +/* 042D4C 8004214C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80042150.s b/asm/non_matchings/unknown_032760/func_80042150.s new file mode 100644 index 00000000..5e29523f --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80042150.s @@ -0,0 +1,6 @@ +glabel func_80042150 +/* 042D50 80042150 AFA40000 */ sw $a0, ($sp) +/* 042D54 80042154 AFA50004 */ sw $a1, 4($sp) +/* 042D58 80042158 03E00008 */ jr $ra +/* 042D5C 8004215C AFA60008 */ sw $a2, 8($sp) + diff --git a/asm/non_matchings/unknown_032760/func_80042160.s b/asm/non_matchings/unknown_032760/func_80042160.s new file mode 100644 index 00000000..71da718b --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80042160.s @@ -0,0 +1,5 @@ +glabel func_80042160 +/* 042D60 80042160 AFA40000 */ sw $a0, ($sp) +/* 042D64 80042164 03E00008 */ jr $ra +/* 042D68 80042168 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_8004216C.s b/asm/non_matchings/unknown_032760/func_8004216C.s new file mode 100644 index 00000000..e4af6a0c --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_8004216C.s @@ -0,0 +1,5 @@ +glabel func_8004216C +/* 042D6C 8004216C AFA40000 */ sw $a0, ($sp) +/* 042D70 80042170 03E00008 */ jr $ra +/* 042D74 80042174 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_032760/func_80042178.s b/asm/non_matchings/unknown_032760/func_80042178.s new file mode 100644 index 00000000..c283bebe --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80042178.s @@ -0,0 +1,43 @@ +glabel func_80042178 +/* 042D78 80042178 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 042D7C 8004217C AFBF001C */ sw $ra, 0x1c($sp) +/* 042D80 80042180 AFA5004C */ sw $a1, 0x4c($sp) +/* 042D84 80042184 8C83003C */ lw $v1, 0x3c($a0) +/* 042D88 80042188 8C860014 */ lw $a2, 0x14($a0) +/* 042D8C 8004218C 946E0008 */ lhu $t6, 8($v1) +/* 042D90 80042190 C48C000C */ lwc1 $f12, 0xc($a0) +/* 042D94 80042194 448E2000 */ mtc1 $t6, $f4 +/* 042D98 80042198 44807000 */ mtc1 $zero, $f14 +/* 042D9C 8004219C 05C10005 */ bgez $t6, .L800421B4 +/* 042DA0 800421A0 46802120 */ cvt.s.w $f4, $f4 +/* 042DA4 800421A4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 042DA8 800421A8 44813000 */ mtc1 $at, $f6 +/* 042DAC 800421AC 00000000 */ nop +/* 042DB0 800421B0 46062100 */ add.s $f4, $f4, $f6 +.L800421B4: +/* 042DB4 800421B4 44072000 */ mfc1 $a3, $f4 +/* 042DB8 800421B8 240F0001 */ li $t7, 1 +/* 042DBC 800421BC 27B80020 */ addiu $t8, $sp, 0x20 +/* 042DC0 800421C0 AFB80014 */ sw $t8, 0x14($sp) +/* 042DC4 800421C4 AFAF0010 */ sw $t7, 0x10($sp) +/* 042DC8 800421C8 AFA30040 */ sw $v1, 0x40($sp) +/* 042DCC 800421CC 0C005B7A */ jal func_80016DE8 +/* 042DD0 800421D0 AFA40048 */ sw $a0, 0x48($sp) +/* 042DD4 800421D4 8FA30040 */ lw $v1, 0x40($sp) +/* 042DD8 800421D8 8FA40048 */ lw $a0, 0x48($sp) +/* 042DDC 800421DC 18400004 */ blez $v0, .L800421F0 +/* 042DE0 800421E0 00000000 */ nop +/* 042DE4 800421E4 9479000A */ lhu $t9, 0xa($v1) +/* 042DE8 800421E8 10000002 */ b .L800421F4 +/* 042DEC 800421EC AC990074 */ sw $t9, 0x74($a0) +.L800421F0: +/* 042DF0 800421F0 AC800074 */ sw $zero, 0x74($a0) +.L800421F4: +/* 042DF4 800421F4 8FA5004C */ lw $a1, 0x4c($sp) +/* 042DF8 800421F8 0C02BF0F */ jal func_800AFC3C +/* 042DFC 800421FC 00000000 */ nop +/* 042E00 80042200 8FBF001C */ lw $ra, 0x1c($sp) +/* 042E04 80042204 27BD0048 */ addiu $sp, $sp, 0x48 +/* 042E08 80042208 03E00008 */ jr $ra +/* 042E0C 8004220C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80042210.s b/asm/non_matchings/unknown_032760/func_80042210.s new file mode 100644 index 00000000..746da9f0 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80042210.s @@ -0,0 +1,61 @@ +glabel func_80042210 +/* 042E10 80042210 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 042E14 80042214 AFBF0014 */ sw $ra, 0x14($sp) +/* 042E18 80042218 8C820064 */ lw $v0, 0x64($a0) +/* 042E1C 8004221C 90AE000A */ lbu $t6, 0xa($a1) +/* 042E20 80042220 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 042E24 80042224 A04E0015 */ sb $t6, 0x15($v0) +/* 042E28 80042228 C484000C */ lwc1 $f4, 0xc($a0) +/* 042E2C 8004222C 31D800FF */ andi $t8, $t6, 0xff +/* 042E30 80042230 E4440000 */ swc1 $f4, ($v0) +/* 042E34 80042234 C4860010 */ lwc1 $f6, 0x10($a0) +/* 042E38 80042238 24190001 */ li $t9, 1 +/* 042E3C 8004223C E4460004 */ swc1 $f6, 4($v0) +/* 042E40 80042240 C4880014 */ lwc1 $f8, 0x14($a0) +/* 042E44 80042244 00000000 */ nop +/* 042E48 80042248 E4480008 */ swc1 $f8, 8($v0) +/* 042E4C 8004224C 84AF0008 */ lh $t7, 8($a1) +/* 042E50 80042250 A0400014 */ sb $zero, 0x14($v0) +/* 042E54 80042254 448F5000 */ mtc1 $t7, $f10 +/* 042E58 80042258 44814000 */ mtc1 $at, $f8 +/* 042E5C 8004225C 46805420 */ cvt.s.w $f16, $f10 +/* 042E60 80042260 E450000C */ swc1 $f16, 0xc($v0) +/* 042E64 80042264 C440000C */ lwc1 $f0, 0xc($v0) +/* 042E68 80042268 00000000 */ nop +/* 042E6C 8004226C 46000482 */ mul.s $f18, $f0, $f0 +/* 042E70 80042270 E4520010 */ swc1 $f18, 0x10($v0) +/* 042E74 80042274 C484000C */ lwc1 $f4, 0xc($a0) +/* 042E78 80042278 00000000 */ nop +/* 042E7C 8004227C E4440020 */ swc1 $f4, 0x20($v0) +/* 042E80 80042280 C4860014 */ lwc1 $f6, 0x14($a0) +/* 042E84 80042284 A0400019 */ sb $zero, 0x19($v0) +/* 042E88 80042288 E4480030 */ swc1 $f8, 0x30($v0) +/* 042E8C 8004228C 13000013 */ beqz $t8, .L800422DC +/* 042E90 80042290 E4460024 */ swc1 $f6, 0x24($v0) +/* 042E94 80042294 A099003A */ sb $t9, 0x3a($a0) +/* 042E98 80042298 0C027B34 */ jal is_drumstick_unlocked +/* 042E9C 8004229C AFA40018 */ sw $a0, 0x18($sp) +/* 042EA0 800422A0 8FA40018 */ lw $a0, 0x18($sp) +/* 042EA4 800422A4 14400009 */ bnez $v0, .L800422CC +/* 042EA8 800422A8 00000000 */ nop +/* 042EAC 800422AC 0C01BAA4 */ jal func_8006EA90 +/* 042EB0 800422B0 AFA40018 */ sw $a0, 0x18($sp) +/* 042EB4 800422B4 9448000E */ lhu $t0, 0xe($v0) +/* 042EB8 800422B8 8FA40018 */ lw $a0, 0x18($sp) +/* 042EBC 800422BC 240100FF */ li $at, 255 +/* 042EC0 800422C0 310900FF */ andi $t1, $t0, 0xff +/* 042EC4 800422C4 11210007 */ beq $t1, $at, .L800422E4 +/* 042EC8 800422C8 8FBF0014 */ lw $ra, 0x14($sp) +.L800422CC: +/* 042ECC 800422CC 0C003FEE */ jal func_8000FFB8 +/* 042ED0 800422D0 00000000 */ nop +/* 042ED4 800422D4 10000003 */ b .L800422E4 +/* 042ED8 800422D8 8FBF0014 */ lw $ra, 0x14($sp) +.L800422DC: +/* 042EDC 800422DC A080003A */ sb $zero, 0x3a($a0) +/* 042EE0 800422E0 8FBF0014 */ lw $ra, 0x14($sp) +.L800422E4: +/* 042EE4 800422E4 27BD0018 */ addiu $sp, $sp, 0x18 +/* 042EE8 800422E8 03E00008 */ jr $ra +/* 042EEC 800422EC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_800422F0.s b/asm/non_matchings/unknown_032760/func_800422F0.s new file mode 100644 index 00000000..2bd1a587 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_800422F0.s @@ -0,0 +1,451 @@ +glabel func_800422F0 +/* 042EF0 800422F0 27BDFEF0 */ addiu $sp, $sp, -0x110 +/* 042EF4 800422F4 44852000 */ mtc1 $a1, $f4 +/* 042EF8 800422F8 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 +/* 042EFC 800422FC 46802020 */ cvt.s.w $f0, $f4 +/* 042F00 80042300 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) +/* 042F04 80042304 AFB10030 */ sw $s1, 0x30($sp) +/* 042F08 80042308 00808825 */ move $s1, $a0 +/* 042F0C 8004230C AFBF0034 */ sw $ra, 0x34($sp) +/* 042F10 80042310 AFB0002C */ sw $s0, 0x2c($sp) +/* 042F14 80042314 E7B70020 */ swc1 $f23, 0x20($sp) +/* 042F18 80042318 E7B60024 */ swc1 $f22, 0x24($sp) +/* 042F1C 8004231C E7B50018 */ swc1 $f21, 0x18($sp) +/* 042F20 80042320 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 042F24 80042324 15C00007 */ bnez $t6, .L80042344 +/* 042F28 80042328 46000086 */ mov.s $f2, $f0 +/* 042F2C 8004232C 3C01800E */ lui $at, %hi(D_800E6254) # $at, 0x800e +/* 042F30 80042330 C4296250 */ lwc1 $f9, %lo(D_800E6250)($at) +/* 042F34 80042334 C4286254 */ lwc1 $f8, %lo(D_800E6254)($at) +/* 042F38 80042338 460001A1 */ cvt.d.s $f6, $f0 +/* 042F3C 8004233C 46283282 */ mul.d $f10, $f6, $f8 +/* 042F40 80042340 462050A0 */ cvt.s.d $f2, $f10 +.L80042344: +/* 042F44 80042344 8E300064 */ lw $s0, 0x64($s1) +/* 042F48 80042348 00000000 */ nop +/* 042F4C 8004234C 920F0014 */ lbu $t7, 0x14($s0) +/* 042F50 80042350 00000000 */ nop +/* 042F54 80042354 2DE10005 */ sltiu $at, $t7, 5 +/* 042F58 80042358 10200186 */ beqz $at, .L80042974 +/* 042F5C 8004235C 000F7880 */ sll $t7, $t7, 2 +/* 042F60 80042360 3C01800E */ lui $at, 0x800e +/* 042F64 80042364 002F0821 */ addu $at, $at, $t7 +/* 042F68 80042368 8C2F6258 */ lw $t7, 0x6258($at) +/* 042F6C 8004236C 00000000 */ nop +/* 042F70 80042370 01E00008 */ jr $t7 +/* 042F74 80042374 00000000 */ nop +/* 042F78 80042378 AFA00104 */ sw $zero, 0x104($sp) +/* 042F7C 8004237C 82020019 */ lb $v0, 0x19($s0) +/* 042F80 80042380 3C0742C0 */ lui $a3, 0x42c0 +/* 042F84 80042384 18400003 */ blez $v0, .L80042394 +/* 042F88 80042388 24190001 */ li $t9, 1 +/* 042F8C 8004238C 0045C023 */ subu $t8, $v0, $a1 +/* 042F90 80042390 A2180019 */ sb $t8, 0x19($s0) +.L80042394: +/* 042F94 80042394 C62C000C */ lwc1 $f12, 0xc($s1) +/* 042F98 80042398 C62E0010 */ lwc1 $f14, 0x10($s1) +/* 042F9C 8004239C 8E260014 */ lw $a2, 0x14($s1) +/* 042FA0 800423A0 27A80044 */ addiu $t0, $sp, 0x44 +/* 042FA4 800423A4 AFA80014 */ sw $t0, 0x14($sp) +/* 042FA8 800423A8 AFA50114 */ sw $a1, 0x114($sp) +/* 042FAC 800423AC 0C005B7A */ jal func_80016DE8 +/* 042FB0 800423B0 AFB90010 */ sw $t9, 0x10($sp) +/* 042FB4 800423B4 8FA50114 */ lw $a1, 0x114($sp) +/* 042FB8 800423B8 1840004E */ blez $v0, .L800424F4 +/* 042FBC 800423BC 00000000 */ nop +/* 042FC0 800423C0 8FA90044 */ lw $t1, 0x44($sp) +/* 042FC4 800423C4 C620000C */ lwc1 $f0, 0xc($s1) +/* 042FC8 800423C8 C62C0010 */ lwc1 $f12, 0x10($s1) +/* 042FCC 800423CC C6220014 */ lwc1 $f2, 0x14($s1) +/* 042FD0 800423D0 820A0019 */ lb $t2, 0x19($s0) +/* 042FD4 800423D4 C530000C */ lwc1 $f16, 0xc($t1) +/* 042FD8 800423D8 C5320010 */ lwc1 $f18, 0x10($t1) +/* 042FDC 800423DC C5240014 */ lwc1 $f4, 0x14($t1) +/* 042FE0 800423E0 46100501 */ sub.s $f20, $f0, $f16 +/* 042FE4 800423E4 46126381 */ sub.s $f14, $f12, $f18 +/* 042FE8 800423E8 1D40002E */ bgtz $t2, .L800424A4 +/* 042FEC 800423EC 46041581 */ sub.s $f22, $f2, $f4 +/* 042FF0 800423F0 4614A182 */ mul.s $f6, $f20, $f20 +/* 042FF4 800423F4 3C0144C8 */ li $at, 0x44C80000 # 1600.000000 +/* 042FF8 800423F8 44812000 */ mtc1 $at, $f4 +/* 042FFC 800423FC 460E7202 */ mul.s $f8, $f14, $f14 +/* 043000 80042400 00000000 */ nop +/* 043004 80042404 4616B402 */ mul.s $f16, $f22, $f22 +/* 043008 80042408 46083280 */ add.s $f10, $f6, $f8 +/* 04300C 8004240C 46105480 */ add.s $f18, $f10, $f16 +/* 043010 80042410 4604903C */ c.lt.s $f18, $f4 +/* 043014 80042414 00000000 */ nop +/* 043018 80042418 45000022 */ bc1f .L800424A4 +/* 04301C 8004241C 00000000 */ nop +/* 043020 80042420 920B0015 */ lbu $t3, 0x15($s0) +/* 043024 80042424 240D0002 */ li $t5, 2 +/* 043028 80042428 11600014 */ beqz $t3, .L8004247C +/* 04302C 8004242C 2404013F */ li $a0, 319 +/* 043030 80042430 44050000 */ mfc1 $a1, $f0 +/* 043034 80042434 44066000 */ mfc1 $a2, $f12 +/* 043038 80042438 44071000 */ mfc1 $a3, $f2 +/* 04303C 8004243C 240C0004 */ li $t4, 4 +/* 043040 80042440 AFAC0010 */ sw $t4, 0x10($sp) +/* 043044 80042444 24040174 */ li $a0, 372 +/* 043048 80042448 0C002556 */ jal func_80009558 +/* 04304C 8004244C AFA00014 */ sw $zero, 0x14($sp) +/* 043050 80042450 24040000 */ li $a0, 0 +/* 043054 80042454 0C027A9E */ jal func_8009EA78 +/* 043058 80042458 24050002 */ li $a1, 2 +/* 04305C 8004245C 0C0270B8 */ jal func_8009C2E0 +/* 043060 80042460 24040002 */ li $a0, 2 +/* 043064 80042464 0C01B629 */ jal func_8006D8A4 +/* 043068 80042468 00000000 */ nop +/* 04306C 8004246C 0C003FEE */ jal func_8000FFB8 +/* 043070 80042470 02202025 */ move $a0, $s1 +/* 043074 80042474 10000140 */ b .L80042978 +/* 043078 80042478 8FBF0034 */ lw $ra, 0x34($sp) +.L8004247C: +/* 04307C 8004247C A20D0014 */ sb $t5, 0x14($s0) +/* 043080 80042480 8E270014 */ lw $a3, 0x14($s1) +/* 043084 80042484 8E260010 */ lw $a2, 0x10($s1) +/* 043088 80042488 8E25000C */ lw $a1, 0xc($s1) +/* 04308C 8004248C 240E0004 */ li $t6, 4 +/* 043090 80042490 AFAE0010 */ sw $t6, 0x10($sp) +/* 043094 80042494 0C002556 */ jal func_80009558 +/* 043098 80042498 AFA00014 */ sw $zero, 0x14($sp) +/* 04309C 8004249C 1000002A */ b .L80042548 +/* 0430A0 800424A0 8FAE0104 */ lw $t6, 0x104($sp) +.L800424A4: +/* 0430A4 800424A4 3C014290 */ li $at, 0x42900000 # 72.000000 +/* 0430A8 800424A8 44813000 */ mtc1 $at, $f6 +/* 0430AC 800424AC 920F0015 */ lbu $t7, 0x15($s0) +/* 0430B0 800424B0 4600A307 */ neg.s $f12, $f20 +/* 0430B4 800424B4 11E00007 */ beqz $t7, .L800424D4 +/* 0430B8 800424B8 E606001C */ swc1 $f6, 0x1c($s0) +/* 0430BC 800424BC 3C01800E */ lui $at, %hi(D_800E626C) # $at, 0x800e +/* 0430C0 800424C0 C42A626C */ lwc1 $f10, %lo(D_800E626C)($at) +/* 0430C4 800424C4 C608001C */ lwc1 $f8, 0x1c($s0) +/* 0430C8 800424C8 00000000 */ nop +/* 0430CC 800424CC 460A4402 */ mul.s $f16, $f8, $f10 +/* 0430D0 800424D0 E610001C */ swc1 $f16, 0x1c($s0) +.L800424D4: +/* 0430D4 800424D4 0C01C1D4 */ jal func_80070750 +/* 0430D8 800424D8 4600B387 */ neg.s $f14, $f22 +/* 0430DC 800424DC 34018000 */ li $at, 32768 +/* 0430E0 800424E0 0041C021 */ addu $t8, $v0, $at +/* 0430E4 800424E4 A618001A */ sh $t8, 0x1a($s0) +/* 0430E8 800424E8 24190001 */ li $t9, 1 +/* 0430EC 800424EC 10000015 */ b .L80042544 +/* 0430F0 800424F0 AFB90104 */ sw $t9, 0x104($sp) +.L800424F4: +/* 0430F4 800424F4 86080016 */ lh $t0, 0x16($s0) +/* 0430F8 800424F8 240B0001 */ li $t3, 1 +/* 0430FC 800424FC 01054823 */ subu $t1, $t0, $a1 +/* 043100 80042500 A6090016 */ sh $t1, 0x16($s0) +/* 043104 80042504 860A0016 */ lh $t2, 0x16($s0) +/* 043108 80042508 24050048 */ li $a1, 72 +/* 04310C 8004250C 0541000D */ bgez $t2, .L80042544 +/* 043110 80042510 24040028 */ li $a0, 40 +/* 043114 80042514 0C01BE53 */ jal func_8006F94C +/* 043118 80042518 AFAB0104 */ sw $t3, 0x104($sp) +/* 04311C 8004251C 44829000 */ mtc1 $v0, $f18 +/* 043120 80042520 2404C000 */ li $a0, -16384 +/* 043124 80042524 46809120 */ cvt.s.w $f4, $f18 +/* 043128 80042528 24054000 */ li $a1, 16384 +/* 04312C 8004252C 0C01BE53 */ jal func_8006F94C +/* 043130 80042530 E604001C */ swc1 $f4, 0x1c($s0) +/* 043134 80042534 862C0000 */ lh $t4, ($s1) +/* 043138 80042538 00000000 */ nop +/* 04313C 8004253C 004C6821 */ addu $t5, $v0, $t4 +/* 043140 80042540 A60D001A */ sh $t5, 0x1a($s0) +.L80042544: +/* 043144 80042544 8FAE0104 */ lw $t6, 0x104($sp) +.L80042548: +/* 043148 80042548 00001025 */ move $v0, $zero +/* 04314C 8004254C 11C00109 */ beqz $t6, .L80042974 +/* 043150 80042550 00001825 */ move $v1, $zero +.L80042554: +/* 043154 80042554 8604001A */ lh $a0, 0x1a($s0) +/* 043158 80042558 AFA30100 */ sw $v1, 0x100($sp) +/* 04315C 8004255C 0C01C1F1 */ jal func_800707C4 +/* 043160 80042560 AFA20108 */ sw $v0, 0x108($sp) +/* 043164 80042564 C606001C */ lwc1 $f6, 0x1c($s0) +/* 043168 80042568 8604001A */ lh $a0, 0x1a($s0) +/* 04316C 8004256C 46060202 */ mul.s $f8, $f0, $f6 +/* 043170 80042570 0C01C1FE */ jal func_800707F8 +/* 043174 80042574 E6080028 */ swc1 $f8, 0x28($s0) +/* 043178 80042578 C60A001C */ lwc1 $f10, 0x1c($s0) +/* 04317C 8004257C 8FA20108 */ lw $v0, 0x108($sp) +/* 043180 80042580 46005407 */ neg.s $f16, $f10 +/* 043184 80042584 46100082 */ mul.s $f2, $f0, $f16 +/* 043188 80042588 8FA30100 */ lw $v1, 0x100($sp) +/* 04318C 8004258C C6040028 */ lwc1 $f4, 0x28($s0) +/* 043190 80042590 C6080000 */ lwc1 $f8, ($s0) +/* 043194 80042594 E602002C */ swc1 $f2, 0x2c($s0) +/* 043198 80042598 C632000C */ lwc1 $f18, 0xc($s1) +/* 04319C 8004259C C62A0014 */ lwc1 $f10, 0x14($s1) +/* 0431A0 800425A0 46049180 */ add.s $f6, $f18, $f4 +/* 0431A4 800425A4 C6120008 */ lwc1 $f18, 8($s0) +/* 0431A8 800425A8 46083501 */ sub.s $f20, $f6, $f8 +/* 0431AC 800425AC 24420001 */ addiu $v0, $v0, 1 +/* 0431B0 800425B0 46025400 */ add.s $f16, $f10, $f2 +/* 0431B4 800425B4 C60A0010 */ lwc1 $f10, 0x10($s0) +/* 0431B8 800425B8 4614A102 */ mul.s $f4, $f20, $f20 +/* 0431BC 800425BC 46128581 */ sub.s $f22, $f16, $f18 +/* 0431C0 800425C0 28410004 */ slti $at, $v0, 4 +/* 0431C4 800425C4 4616B182 */ mul.s $f6, $f22, $f22 +/* 0431C8 800425C8 46062200 */ add.s $f8, $f4, $f6 +/* 0431CC 800425CC 460A403C */ c.lt.s $f8, $f10 +/* 0431D0 800425D0 00000000 */ nop +/* 0431D4 800425D4 45000003 */ bc1f .L800425E4 +/* 0431D8 800425D8 00000000 */ nop +/* 0431DC 800425DC 10000005 */ b .L800425F4 +/* 0431E0 800425E0 24030001 */ li $v1, 1 +.L800425E4: +/* 0431E4 800425E4 860F001A */ lh $t7, 0x1a($s0) +/* 0431E8 800425E8 00000000 */ nop +/* 0431EC 800425EC 25F84000 */ addiu $t8, $t7, 0x4000 +/* 0431F0 800425F0 A618001A */ sh $t8, 0x1a($s0) +.L800425F4: +/* 0431F4 800425F4 10200003 */ beqz $at, .L80042604 +/* 0431F8 800425F8 00000000 */ nop +/* 0431FC 800425FC 1060FFD5 */ beqz $v1, .L80042554 +/* 043200 80042600 00000000 */ nop +.L80042604: +/* 043204 80042604 C620000C */ lwc1 $f0, 0xc($s1) +/* 043208 80042608 C6220014 */ lwc1 $f2, 0x14($s1) +/* 04320C 8004260C 1460000A */ bnez $v1, .L80042638 +/* 043210 80042610 00000000 */ nop +/* 043214 80042614 C6100000 */ lwc1 $f16, ($s0) +/* 043218 80042618 C6120008 */ lwc1 $f18, 8($s0) +/* 04321C 8004261C 46008301 */ sub.s $f12, $f16, $f0 +/* 043220 80042620 0C01C1D4 */ jal func_80070750 +/* 043224 80042624 46029381 */ sub.s $f14, $f18, $f2 +/* 043228 80042628 A602001A */ sh $v0, 0x1a($s0) +/* 04322C 8004262C C6220014 */ lwc1 $f2, 0x14($s1) +/* 043230 80042630 C620000C */ lwc1 $f0, 0xc($s1) +/* 043234 80042634 00000000 */ nop +.L80042638: +/* 043238 80042638 92190015 */ lbu $t9, 0x15($s0) +/* 04323C 8004263C 2404002B */ li $a0, 43 +/* 043240 80042640 1320000B */ beqz $t9, .L80042670 +/* 043244 80042644 24090004 */ li $t1, 4 +/* 043248 80042648 8E260010 */ lw $a2, 0x10($s1) +/* 04324C 8004264C 44050000 */ mfc1 $a1, $f0 +/* 043250 80042650 44071000 */ mfc1 $a3, $f2 +/* 043254 80042654 24080004 */ li $t0, 4 +/* 043258 80042658 AFA80010 */ sw $t0, 0x10($sp) +/* 04325C 8004265C AFA00014 */ sw $zero, 0x14($sp) +/* 043260 80042660 0C002556 */ jal func_80009558 +/* 043264 80042664 240401A4 */ li $a0, 420 +/* 043268 80042668 10000008 */ b .L8004268C +/* 04326C 8004266C 240A0001 */ li $t2, 1 +.L80042670: +/* 043270 80042670 8E260010 */ lw $a2, 0x10($s1) +/* 043274 80042674 44050000 */ mfc1 $a1, $f0 +/* 043278 80042678 44071000 */ mfc1 $a3, $f2 +/* 04327C 8004267C AFA00014 */ sw $zero, 0x14($sp) +/* 043280 80042680 0C002556 */ jal func_80009558 +/* 043284 80042684 AFA90010 */ sw $t1, 0x10($sp) +/* 043288 80042688 240A0001 */ li $t2, 1 +.L8004268C: +/* 04328C 8004268C A20A0014 */ sb $t2, 0x14($s0) +/* 043290 80042690 C624000C */ lwc1 $f4, 0xc($s1) +/* 043294 80042694 860C001A */ lh $t4, 0x1a($s0) +/* 043298 80042698 E6040020 */ swc1 $f4, 0x20($s0) +/* 04329C 8004269C C6260014 */ lwc1 $f6, 0x14($s1) +/* 0432A0 800426A0 240B0020 */ li $t3, 32 +/* 0432A4 800426A4 A20B0018 */ sb $t3, 0x18($s0) +/* 0432A8 800426A8 000C6823 */ negu $t5, $t4 +/* 0432AC 800426AC E6060024 */ swc1 $f6, 0x24($s0) +/* 0432B0 800426B0 100000B0 */ b .L80042974 +/* 0432B4 800426B4 A62D0000 */ sh $t5, ($s1) +/* 0432B8 800426B8 820E0018 */ lb $t6, 0x18($s0) +/* 0432BC 800426BC 82020019 */ lb $v0, 0x19($s0) +/* 0432C0 800426C0 01C57823 */ subu $t7, $t6, $a1 +/* 0432C4 800426C4 18400003 */ blez $v0, .L800426D4 +/* 0432C8 800426C8 A20F0018 */ sb $t7, 0x18($s0) +/* 0432CC 800426CC 0045C023 */ subu $t8, $v0, $a1 +/* 0432D0 800426D0 A2180019 */ sb $t8, 0x19($s0) +.L800426D4: +/* 0432D4 800426D4 82030018 */ lb $v1, 0x18($s0) +/* 0432D8 800426D8 00002025 */ move $a0, $zero +/* 0432DC 800426DC 04610006 */ bgez $v1, .L800426F8 +/* 0432E0 800426E0 2405012C */ li $a1, 300 +/* 0432E4 800426E4 0C01BE53 */ jal func_8006F94C +/* 0432E8 800426E8 A2000014 */ sb $zero, 0x14($s0) +/* 0432EC 800426EC A2000018 */ sb $zero, 0x18($s0) +/* 0432F0 800426F0 82030018 */ lb $v1, 0x18($s0) +/* 0432F4 800426F4 A6020016 */ sh $v0, 0x16($s0) +.L800426F8: +/* 0432F8 800426F8 24190020 */ li $t9, 32 +/* 0432FC 800426FC 03234023 */ subu $t0, $t9, $v1 +/* 043300 80042700 000848C0 */ sll $t1, $t0, 3 +/* 043304 80042704 24010003 */ li $at, 3 +/* 043308 80042708 0121001A */ div $zero, $t1, $at +/* 04330C 8004270C 00005012 */ mflo $t2 +/* 043310 80042710 A62A0018 */ sh $t2, 0x18($s1) +/* 043314 80042714 820B0018 */ lb $t3, 0x18($s0) +/* 043318 80042718 00000000 */ nop +/* 04331C 8004271C 000B6680 */ sll $t4, $t3, 0x1a +/* 043320 80042720 0C01C1FE */ jal func_800707F8 +/* 043324 80042724 000C2403 */ sra $a0, $t4, 0x10 +/* 043328 80042728 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 04332C 8004272C 44816000 */ mtc1 $at, $f12 +/* 043330 80042730 C6080020 */ lwc1 $f8, 0x20($s0) +/* 043334 80042734 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 043338 80042738 44819000 */ mtc1 $at, $f18 +/* 04333C 8004273C 460C0400 */ add.s $f16, $f0, $f12 +/* 043340 80042740 E628000C */ swc1 $f8, 0xc($s1) +/* 043344 80042744 C60A0024 */ lwc1 $f10, 0x24($s0) +/* 043348 80042748 46128082 */ mul.s $f2, $f16, $f18 +/* 04334C 8004274C E62A0014 */ swc1 $f10, 0x14($s1) +/* 043350 80042750 C6040028 */ lwc1 $f4, 0x28($s0) +/* 043354 80042754 00000000 */ nop +/* 043358 80042758 46022182 */ mul.s $f6, $f4, $f2 +/* 04335C 8004275C E626001C */ swc1 $f6, 0x1c($s1) +/* 043360 80042760 C608002C */ lwc1 $f8, 0x2c($s0) +/* 043364 80042764 00000000 */ nop +/* 043368 80042768 46024282 */ mul.s $f10, $f8, $f2 +/* 04336C 8004276C 0C004558 */ jal func_80011560 +/* 043370 80042770 E62A0024 */ swc1 $f10, 0x24($s1) +/* 043374 80042774 4480A000 */ mtc1 $zero, $f20 +/* 043378 80042778 8E25001C */ lw $a1, 0x1c($s1) +/* 04337C 8004277C 8E270024 */ lw $a3, 0x24($s1) +/* 043380 80042780 4406A000 */ mfc1 $a2, $f20 +/* 043384 80042784 0C00455C */ jal func_80011570 +/* 043388 80042788 02202025 */ move $a0, $s1 +/* 04338C 8004278C 8624002E */ lh $a0, 0x2e($s1) +/* 043390 80042790 8E25000C */ lw $a1, 0xc($s1) +/* 043394 80042794 8E260014 */ lw $a2, 0x14($s1) +/* 043398 80042798 0C00AEAC */ jal func_8002BAB0 +/* 04339C 8004279C 27A7006C */ addiu $a3, $sp, 0x6c +/* 0433A0 800427A0 10400008 */ beqz $v0, .L800427C4 +/* 0433A4 800427A4 00000000 */ nop +/* 0433A8 800427A8 0C004558 */ jal func_80011560 +/* 0433AC 800427AC E6340010 */ swc1 $f20, 0x10($s1) +/* 0433B0 800427B0 4405A000 */ mfc1 $a1, $f20 +/* 0433B4 800427B4 8FA6006C */ lw $a2, 0x6c($sp) +/* 0433B8 800427B8 4407A000 */ mfc1 $a3, $f20 +/* 0433BC 800427BC 0C00455C */ jal func_80011570 +/* 0433C0 800427C0 02202025 */ move $a0, $s1 +.L800427C4: +/* 0433C4 800427C4 820E0019 */ lb $t6, 0x19($s0) +/* 0433C8 800427C8 00000000 */ nop +/* 0433CC 800427CC 1DC0006A */ bgtz $t6, .L80042978 +/* 0433D0 800427D0 8FBF0034 */ lw $ra, 0x34($sp) +/* 0433D4 800427D4 82030018 */ lb $v1, 0x18($s0) +/* 0433D8 800427D8 3C074220 */ lui $a3, 0x4220 +/* 0433DC 800427DC 28610006 */ slti $at, $v1, 6 +/* 0433E0 800427E0 14200004 */ bnez $at, .L800427F4 +/* 0433E4 800427E4 27AF0044 */ addiu $t7, $sp, 0x44 +/* 0433E8 800427E8 2861001B */ slti $at, $v1, 0x1b +/* 0433EC 800427EC 14200062 */ bnez $at, .L80042978 +/* 0433F0 800427F0 8FBF0034 */ lw $ra, 0x34($sp) +.L800427F4: +/* 0433F4 800427F4 C62C000C */ lwc1 $f12, 0xc($s1) +/* 0433F8 800427F8 C62E0010 */ lwc1 $f14, 0x10($s1) +/* 0433FC 800427FC 8E260014 */ lw $a2, 0x14($s1) +/* 043400 80042800 AFAF0014 */ sw $t7, 0x14($sp) +/* 043404 80042804 0C005B7A */ jal func_80016DE8 +/* 043408 80042808 AFA00010 */ sw $zero, 0x10($sp) +/* 04340C 8004280C 1040005A */ beqz $v0, .L80042978 +/* 043410 80042810 8FBF0034 */ lw $ra, 0x34($sp) +/* 043414 80042814 92180015 */ lbu $t8, 0x15($s0) +/* 043418 80042818 24080002 */ li $t0, 2 +/* 04341C 8004281C 13000014 */ beqz $t8, .L80042870 +/* 043420 80042820 2404013F */ li $a0, 319 +/* 043424 80042824 8E25000C */ lw $a1, 0xc($s1) +/* 043428 80042828 8E260010 */ lw $a2, 0x10($s1) +/* 04342C 8004282C 8E270014 */ lw $a3, 0x14($s1) +/* 043430 80042830 24190004 */ li $t9, 4 +/* 043434 80042834 AFB90010 */ sw $t9, 0x10($sp) +/* 043438 80042838 AFA00014 */ sw $zero, 0x14($sp) +/* 04343C 8004283C 0C002556 */ jal func_80009558 +/* 043440 80042840 24040174 */ li $a0, 372 +/* 043444 80042844 24040000 */ li $a0, 0 +/* 043448 80042848 0C027A9E */ jal func_8009EA78 +/* 04344C 8004284C 24050002 */ li $a1, 2 +/* 043450 80042850 0C0270B8 */ jal func_8009C2E0 +/* 043454 80042854 24040002 */ li $a0, 2 +/* 043458 80042858 0C01B629 */ jal func_8006D8A4 +/* 04345C 8004285C 00000000 */ nop +/* 043460 80042860 0C003FEE */ jal func_8000FFB8 +/* 043464 80042864 02202025 */ move $a0, $s1 +/* 043468 80042868 10000043 */ b .L80042978 +/* 04346C 8004286C 8FBF0034 */ lw $ra, 0x34($sp) +.L80042870: +/* 043470 80042870 A2080014 */ sb $t0, 0x14($s0) +/* 043474 80042874 8E270014 */ lw $a3, 0x14($s1) +/* 043478 80042878 8E260010 */ lw $a2, 0x10($s1) +/* 04347C 8004287C 8E25000C */ lw $a1, 0xc($s1) +/* 043480 80042880 24090004 */ li $t1, 4 +/* 043484 80042884 AFA90010 */ sw $t1, 0x10($sp) +/* 043488 80042888 0C002556 */ jal func_80009558 +/* 04348C 8004288C AFA00014 */ sw $zero, 0x14($sp) +/* 043490 80042890 10000039 */ b .L80042978 +/* 043494 80042894 8FBF0034 */ lw $ra, 0x34($sp) +/* 043498 80042898 3C01800E */ lui $at, %hi(D_800E6270) # $at, 0x800e +/* 04349C 8004289C C4206270 */ lwc1 $f0, %lo(D_800E6270)($at) +/* 0434A0 800428A0 3C01800E */ lui $at, %hi(D_800E6274) # $at, 0x800e +/* 0434A4 800428A4 C4326274 */ lwc1 $f18, %lo(D_800E6274)($at) +/* 0434A8 800428A8 C6100030 */ lwc1 $f16, 0x30($s0) +/* 0434AC 800428AC 46029102 */ mul.s $f4, $f18, $f2 +/* 0434B0 800428B0 240A0003 */ li $t2, 3 +/* 0434B4 800428B4 240B0028 */ li $t3, 40 +/* 0434B8 800428B8 46048181 */ sub.s $f6, $f16, $f4 +/* 0434BC 800428BC E6060030 */ swc1 $f6, 0x30($s0) +/* 0434C0 800428C0 C6080030 */ lwc1 $f8, 0x30($s0) +/* 0434C4 800428C4 00000000 */ nop +/* 0434C8 800428C8 4600403C */ c.lt.s $f8, $f0 +/* 0434CC 800428CC 00000000 */ nop +/* 0434D0 800428D0 45000029 */ bc1f .L80042978 +/* 0434D4 800428D4 8FBF0034 */ lw $ra, 0x34($sp) +/* 0434D8 800428D8 E6000030 */ swc1 $f0, 0x30($s0) +/* 0434DC 800428DC A20A0014 */ sb $t2, 0x14($s0) +/* 0434E0 800428E0 10000024 */ b .L80042974 +/* 0434E4 800428E4 A60B0016 */ sh $t3, 0x16($s0) +/* 0434E8 800428E8 860C0016 */ lh $t4, 0x16($s0) +/* 0434EC 800428EC 240F0004 */ li $t7, 4 +/* 0434F0 800428F0 01856823 */ subu $t5, $t4, $a1 +/* 0434F4 800428F4 A60D0016 */ sh $t5, 0x16($s0) +/* 0434F8 800428F8 860E0016 */ lh $t6, 0x16($s0) +/* 0434FC 800428FC 24040140 */ li $a0, 320 +/* 043500 80042900 05C1001C */ bgez $t6, .L80042974 +/* 043504 80042904 24180004 */ li $t8, 4 +/* 043508 80042908 A20F0014 */ sb $t7, 0x14($s0) +/* 04350C 8004290C 8E270014 */ lw $a3, 0x14($s1) +/* 043510 80042910 8E260010 */ lw $a2, 0x10($s1) +/* 043514 80042914 8E25000C */ lw $a1, 0xc($s1) +/* 043518 80042918 AFA00014 */ sw $zero, 0x14($sp) +/* 04351C 8004291C 0C002556 */ jal func_80009558 +/* 043520 80042920 AFB80010 */ sw $t8, 0x10($sp) +/* 043524 80042924 10000014 */ b .L80042978 +/* 043528 80042928 8FBF0034 */ lw $ra, 0x34($sp) +/* 04352C 8004292C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 043530 80042930 44816000 */ mtc1 $at, $f12 +/* 043534 80042934 C6000030 */ lwc1 $f0, 0x30($s0) +/* 043538 80042938 2419003C */ li $t9, 60 +/* 04353C 8004293C 4600603C */ c.lt.s $f12, $f0 +/* 043540 80042940 3C01800E */ lui $at, %hi(D_800E6278) # $at, 0x800e +/* 043544 80042944 45000006 */ bc1f .L80042960 +/* 043548 80042948 00000000 */ nop +/* 04354C 8004294C E60C0030 */ swc1 $f12, 0x30($s0) +/* 043550 80042950 A2000014 */ sb $zero, 0x14($s0) +/* 043554 80042954 A6000016 */ sh $zero, 0x16($s0) +/* 043558 80042958 10000006 */ b .L80042974 +/* 04355C 8004295C A2190019 */ sb $t9, 0x19($s0) +.L80042960: +/* 043560 80042960 C42A6278 */ lwc1 $f10, %lo(D_800E6278)($at) +/* 043564 80042964 00000000 */ nop +/* 043568 80042968 46025482 */ mul.s $f18, $f10, $f2 +/* 04356C 8004296C 46120400 */ add.s $f16, $f0, $f18 +/* 043570 80042970 E6100030 */ swc1 $f16, 0x30($s0) +.L80042974: +/* 043574 80042974 8FBF0034 */ lw $ra, 0x34($sp) +.L80042978: +/* 043578 80042978 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 04357C 8004297C C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 043580 80042980 C7B70020 */ lwc1 $f23, 0x20($sp) +/* 043584 80042984 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 043588 80042988 8FB0002C */ lw $s0, 0x2c($sp) +/* 04358C 8004298C 8FB10030 */ lw $s1, 0x30($sp) +/* 043590 80042990 03E00008 */ jr $ra +/* 043594 80042994 27BD0110 */ addiu $sp, $sp, 0x110 + diff --git a/asm/non_matchings/unknown_032760/func_80042998.s b/asm/non_matchings/unknown_032760/func_80042998.s new file mode 100644 index 00000000..8bd1c656 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80042998.s @@ -0,0 +1,37 @@ +glabel func_80042998 +/* 043598 80042998 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 04359C 8004299C AFBF001C */ sw $ra, 0x1c($sp) +/* 0435A0 800429A0 AFA50024 */ sw $a1, 0x24($sp) +/* 0435A4 800429A4 AFA40020 */ sw $a0, 0x20($sp) +/* 0435A8 800429A8 0C007D18 */ jal func_8001F460 +/* 0435AC 800429AC 00803025 */ move $a2, $a0 +/* 0435B0 800429B0 0C002FD1 */ jal func_8000BF44 +/* 0435B4 800429B4 2404FFFF */ li $a0, -1 +/* 0435B8 800429B8 10400015 */ beqz $v0, .L80042A10 +/* 0435BC 800429BC 8FBF001C */ lw $ra, 0x1c($sp) +/* 0435C0 800429C0 8C430064 */ lw $v1, 0x64($v0) +/* 0435C4 800429C4 AC400078 */ sw $zero, 0x78($v0) +/* 0435C8 800429C8 10600010 */ beqz $v1, .L80042A0C +/* 0435CC 800429CC 24190002 */ li $t9, 2 +/* 0435D0 800429D0 8FAF0024 */ lw $t7, 0x24($sp) +/* 0435D4 800429D4 906E0072 */ lbu $t6, 0x72($v1) +/* 0435D8 800429D8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0435DC 800429DC 44812000 */ mtc1 $at, $f4 +/* 0435E0 800429E0 01CFC021 */ addu $t8, $t6, $t7 +/* 0435E4 800429E4 A0780072 */ sb $t8, 0x72($v1) +/* 0435E8 800429E8 A0790070 */ sb $t9, 0x70($v1) +/* 0435EC 800429EC E4640074 */ swc1 $f4, 0x74($v1) +/* 0435F0 800429F0 8FA40020 */ lw $a0, 0x20($sp) +/* 0435F4 800429F4 24080001 */ li $t0, 1 +/* 0435F8 800429F8 AFA80010 */ sw $t0, 0x10($sp) +/* 0435FC 800429FC 2405FFFF */ li $a1, -1 +/* 043600 80042A00 24060002 */ li $a2, 2 +/* 043604 80042A04 0C002DD4 */ jal func_8000B750 +/* 043608 80042A08 24070001 */ li $a3, 1 +.L80042A0C: +/* 04360C 80042A0C 8FBF001C */ lw $ra, 0x1c($sp) +.L80042A10: +/* 043610 80042A10 27BD0020 */ addiu $sp, $sp, 0x20 +/* 043614 80042A14 03E00008 */ jr $ra +/* 043618 80042A18 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80042A1C.s b/asm/non_matchings/unknown_032760/func_80042A1C.s new file mode 100644 index 00000000..6e31836a --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80042A1C.s @@ -0,0 +1,32 @@ +glabel func_80042A1C +/* 04361C 80042A1C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 043620 80042A20 AFBF0014 */ sw $ra, 0x14($sp) +/* 043624 80042A24 80AE0009 */ lb $t6, 9($a1) +/* 043628 80042A28 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 04362C 80042A2C 448E2000 */ mtc1 $t6, $f4 +/* 043630 80042A30 44814000 */ mtc1 $at, $f8 +/* 043634 80042A34 468021A0 */ cvt.s.w $f6, $f4 +/* 043638 80042A38 46083282 */ mul.s $f10, $f6, $f8 +/* 04363C 80042A3C E48A0078 */ swc1 $f10, 0x78($a0) +/* 043640 80042A40 C4800078 */ lwc1 $f0, 0x78($a0) +/* 043644 80042A44 00000000 */ nop +/* 043648 80042A48 46000402 */ mul.s $f16, $f0, $f0 +/* 04364C 80042A4C E4900078 */ swc1 $f16, 0x78($a0) +/* 043650 80042A50 80AF0008 */ lb $t7, 8($a1) +/* 043654 80042A54 A480007E */ sh $zero, 0x7e($a0) +/* 043658 80042A58 A48F007C */ sh $t7, 0x7c($a0) +/* 04365C 80042A5C 0C0270B4 */ jal func_8009C2D0 +/* 043660 80042A60 AFA40018 */ sw $a0, 0x18($sp) +/* 043664 80042A64 8FA40018 */ lw $a0, 0x18($sp) +/* 043668 80042A68 10400003 */ beqz $v0, .L80042A78 +/* 04366C 80042A6C 00000000 */ nop +/* 043670 80042A70 0C003FEE */ jal func_8000FFB8 +/* 043674 80042A74 00000000 */ nop +.L80042A78: +/* 043678 80042A78 0C0315B4 */ jal func_800C56D0 +/* 04367C 80042A7C 24040004 */ li $a0, 4 +/* 043680 80042A80 8FBF0014 */ lw $ra, 0x14($sp) +/* 043684 80042A84 27BD0018 */ addiu $sp, $sp, 0x18 +/* 043688 80042A88 03E00008 */ jr $ra +/* 04368C 80042A8C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_032760/func_80042A90.s b/asm/non_matchings/unknown_032760/func_80042A90.s new file mode 100644 index 00000000..53cb63ae --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80042A90.s @@ -0,0 +1,151 @@ +glabel func_80042A90 +/* 043690 80042A90 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 043694 80042A94 AFBF0024 */ sw $ra, 0x24($sp) +/* 043698 80042A98 00803025 */ move $a2, $a0 +/* 04369C 80042A9C AFB00020 */ sw $s0, 0x20($sp) +/* 0436A0 80042AA0 AFA5005C */ sw $a1, 0x5c($sp) +/* 0436A4 80042AA4 AFA60058 */ sw $a2, 0x58($sp) +/* 0436A8 80042AA8 0C006EC6 */ jal func_8001BB18 +/* 0436AC 80042AAC 00002025 */ move $a0, $zero +/* 0436B0 80042AB0 8FA3005C */ lw $v1, 0x5c($sp) +/* 0436B4 80042AB4 8FA60058 */ lw $a2, 0x58($sp) +/* 0436B8 80042AB8 10400082 */ beqz $v0, .L80042CC4 +/* 0436BC 80042ABC 8FBF0024 */ lw $ra, 0x24($sp) +/* 0436C0 80042AC0 C4C4000C */ lwc1 $f4, 0xc($a2) +/* 0436C4 80042AC4 C446000C */ lwc1 $f6, 0xc($v0) +/* 0436C8 80042AC8 C4C80014 */ lwc1 $f8, 0x14($a2) +/* 0436CC 80042ACC 46062001 */ sub.s $f0, $f4, $f6 +/* 0436D0 80042AD0 C44A0014 */ lwc1 $f10, 0x14($v0) +/* 0436D4 80042AD4 46000402 */ mul.s $f16, $f0, $f0 +/* 0436D8 80042AD8 460A4081 */ sub.s $f2, $f8, $f10 +/* 0436DC 80042ADC C4C60078 */ lwc1 $f6, 0x78($a2) +/* 0436E0 80042AE0 24D00078 */ addiu $s0, $a2, 0x78 +/* 0436E4 80042AE4 46021482 */ mul.s $f18, $f2, $f2 +/* 0436E8 80042AE8 46128100 */ add.s $f4, $f16, $f18 +/* 0436EC 80042AEC 4606203C */ c.lt.s $f4, $f6 +/* 0436F0 80042AF0 00000000 */ nop +/* 0436F4 80042AF4 4500000F */ bc1f .L80042B34 +/* 0436F8 80042AF8 00000000 */ nop +/* 0436FC 80042AFC 24D00078 */ addiu $s0, $a2, 0x78 +/* 043700 80042B00 860E0006 */ lh $t6, 6($s0) +/* 043704 80042B04 00037900 */ sll $t7, $v1, 4 +/* 043708 80042B08 01CFC021 */ addu $t8, $t6, $t7 +/* 04370C 80042B0C A6180006 */ sh $t8, 6($s0) +/* 043710 80042B10 86020006 */ lh $v0, 6($s0) +/* 043714 80042B14 24190100 */ li $t9, 256 +/* 043718 80042B18 28410101 */ slti $at, $v0, 0x101 +/* 04371C 80042B1C 14200010 */ bnez $at, .L80042B60 +/* 043720 80042B20 00000000 */ nop +/* 043724 80042B24 A6190006 */ sh $t9, 6($s0) +/* 043728 80042B28 86020006 */ lh $v0, 6($s0) +/* 04372C 80042B2C 1000000C */ b .L80042B60 +/* 043730 80042B30 00000000 */ nop +.L80042B34: +/* 043734 80042B34 86080006 */ lh $t0, 6($s0) +/* 043738 80042B38 00034900 */ sll $t1, $v1, 4 +/* 04373C 80042B3C 01095023 */ subu $t2, $t0, $t1 +/* 043740 80042B40 A60A0006 */ sh $t2, 6($s0) +/* 043744 80042B44 86020006 */ lh $v0, 6($s0) +/* 043748 80042B48 00000000 */ nop +/* 04374C 80042B4C 04410004 */ bgez $v0, .L80042B60 +/* 043750 80042B50 00000000 */ nop +/* 043754 80042B54 A6000006 */ sh $zero, 6($s0) +/* 043758 80042B58 86020006 */ lh $v0, 6($s0) +/* 04375C 80042B5C 00000000 */ nop +.L80042B60: +/* 043760 80042B60 18400058 */ blez $v0, .L80042CC4 +/* 043764 80042B64 8FBF0024 */ lw $ra, 0x24($sp) +/* 043768 80042B68 86040004 */ lh $a0, 4($s0) +/* 04376C 80042B6C 0C01AF77 */ jal func_8006BDDC +/* 043770 80042B70 00000000 */ nop +/* 043774 80042B74 AFA2002C */ sw $v0, 0x2c($sp) +/* 043778 80042B78 00402025 */ move $a0, $v0 +/* 04377C 80042B7C 00002825 */ move $a1, $zero +/* 043780 80042B80 0C031368 */ jal func_800C4DA0 +/* 043784 80042B84 00003025 */ move $a2, $zero +/* 043788 80042B88 24430018 */ addiu $v1, $v0, 0x18 +/* 04378C 80042B8C 00035843 */ sra $t3, $v1, 1 +/* 043790 80042B90 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 +/* 043794 80042B94 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) +/* 043798 80042B98 240C00A0 */ li $t4, 160 +/* 04379C 80042B9C 018B6823 */ subu $t5, $t4, $t3 +/* 0437A0 80042BA0 256E00A0 */ addiu $t6, $t3, 0xa0 +/* 0437A4 80042BA4 AFAD0050 */ sw $t5, 0x50($sp) +/* 0437A8 80042BA8 15E00006 */ bnez $t7, .L80042BC4 +/* 0437AC 80042BAC AFAE0048 */ sw $t6, 0x48($sp) +/* 0437B0 80042BB0 241800E0 */ li $t8, 224 +/* 0437B4 80042BB4 241900F8 */ li $t9, 248 +/* 0437B8 80042BB8 AFB8004C */ sw $t8, 0x4c($sp) +/* 0437BC 80042BBC 10000005 */ b .L80042BD4 +/* 0437C0 80042BC0 AFB90044 */ sw $t9, 0x44($sp) +.L80042BC4: +/* 0437C4 80042BC4 240800CA */ li $t0, 202 +/* 0437C8 80042BC8 240900DE */ li $t1, 222 +/* 0437CC 80042BCC AFA8004C */ sw $t0, 0x4c($sp) +/* 0437D0 80042BD0 AFA90044 */ sw $t1, 0x44($sp) +.L80042BD4: +/* 0437D4 80042BD4 0C031525 */ jal func_800C5494 +/* 0437D8 80042BD8 24040004 */ li $a0, 4 +/* 0437DC 80042BDC 8FAA0044 */ lw $t2, 0x44($sp) +/* 0437E0 80042BE0 8FA50050 */ lw $a1, 0x50($sp) +/* 0437E4 80042BE4 8FA6004C */ lw $a2, 0x4c($sp) +/* 0437E8 80042BE8 8FA70048 */ lw $a3, 0x48($sp) +/* 0437EC 80042BEC 24040004 */ li $a0, 4 +/* 0437F0 80042BF0 0C0313B7 */ jal func_800C4EDC +/* 0437F4 80042BF4 AFAA0010 */ sw $t2, 0x10($sp) +/* 0437F8 80042BF8 860B0006 */ lh $t3, 6($s0) +/* 0437FC 80042BFC 24040004 */ li $a0, 4 +/* 043800 80042C00 000B6080 */ sll $t4, $t3, 2 +/* 043804 80042C04 018B6021 */ addu $t4, $t4, $t3 +/* 043808 80042C08 000C6140 */ sll $t4, $t4, 5 +/* 04380C 80042C0C 000C6A03 */ sra $t5, $t4, 8 +/* 043810 80042C10 AFAD0010 */ sw $t5, 0x10($sp) +/* 043814 80042C14 24050080 */ li $a1, 128 +/* 043818 80042C18 24060040 */ li $a2, 64 +/* 04381C 80042C1C 0C0313EF */ jal func_800C4FBC +/* 043820 80042C20 24070080 */ li $a3, 128 +/* 043824 80042C24 24040004 */ li $a0, 4 +/* 043828 80042C28 00002825 */ move $a1, $zero +/* 04382C 80042C2C 00003025 */ move $a2, $zero +/* 043830 80042C30 00003825 */ move $a3, $zero +/* 043834 80042C34 0C031414 */ jal func_800C5050 +/* 043838 80042C38 AFA00010 */ sw $zero, 0x10($sp) +/* 04383C 80042C3C 24040004 */ li $a0, 4 +/* 043840 80042C40 0C0313DF */ jal func_800C4F7C +/* 043844 80042C44 00002825 */ move $a1, $zero +/* 043848 80042C48 AFA00010 */ sw $zero, 0x10($sp) +/* 04384C 80042C4C 860E0006 */ lh $t6, 6($s0) +/* 043850 80042C50 24040004 */ li $a0, 4 +/* 043854 80042C54 000E7A00 */ sll $t7, $t6, 8 +/* 043858 80042C58 01EE7823 */ subu $t7, $t7, $t6 +/* 04385C 80042C5C 000FC203 */ sra $t8, $t7, 8 +/* 043860 80042C60 AFB80014 */ sw $t8, 0x14($sp) +/* 043864 80042C64 240500FF */ li $a1, 255 +/* 043868 80042C68 240600FF */ li $a2, 255 +/* 04386C 80042C6C 0C031400 */ jal func_800C5000 +/* 043870 80042C70 240700FF */ li $a3, 255 +/* 043874 80042C74 8FB90048 */ lw $t9, 0x48($sp) +/* 043878 80042C78 8FA80050 */ lw $t0, 0x50($sp) +/* 04387C 80042C7C 8FAA0044 */ lw $t2, 0x44($sp) +/* 043880 80042C80 8FAB004C */ lw $t3, 0x4c($sp) +/* 043884 80042C84 03282823 */ subu $a1, $t9, $t0 +/* 043888 80042C88 014B3023 */ subu $a2, $t2, $t3 +/* 04388C 80042C8C 00066043 */ sra $t4, $a2, 1 +/* 043890 80042C90 00054843 */ sra $t1, $a1, 1 +/* 043894 80042C94 8FA7002C */ lw $a3, 0x2c($sp) +/* 043898 80042C98 240D0001 */ li $t5, 1 +/* 04389C 80042C9C 240E000C */ li $t6, 12 +/* 0438A0 80042CA0 AFAE0014 */ sw $t6, 0x14($sp) +/* 0438A4 80042CA4 AFAD0010 */ sw $t5, 0x10($sp) +/* 0438A8 80042CA8 01202825 */ move $a1, $t1 +/* 0438AC 80042CAC 25860002 */ addiu $a2, $t4, 2 +/* 0438B0 80042CB0 0C03145A */ jal func_800C5168 +/* 0438B4 80042CB4 24040004 */ li $a0, 4 +/* 0438B8 80042CB8 0C03157D */ jal func_800C55F4 +/* 0438BC 80042CBC 24040004 */ li $a0, 4 +/* 0438C0 80042CC0 8FBF0024 */ lw $ra, 0x24($sp) +.L80042CC4: +/* 0438C4 80042CC4 8FB00020 */ lw $s0, 0x20($sp) +/* 0438C8 80042CC8 03E00008 */ jr $ra +/* 0438CC 80042CCC 27BD0058 */ addiu $sp, $sp, 0x58 + diff --git a/asm/non_matchings/unknown_032760/func_80042CD0.s b/asm/non_matchings/unknown_032760/func_80042CD0.s new file mode 100644 index 00000000..c59a75e7 --- /dev/null +++ b/asm/non_matchings/unknown_032760/func_80042CD0.s @@ -0,0 +1,23 @@ +glabel func_80042CD0 +/* 0438D0 80042CD0 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0438D4 80042CD4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0438D8 80042CD8 AFA5001C */ sw $a1, 0x1c($sp) +/* 0438DC 80042CDC AFA40018 */ sw $a0, 0x18($sp) +/* 0438E0 80042CE0 0C007D18 */ jal func_8001F460 +/* 0438E4 80042CE4 00803025 */ move $a2, $a0 +/* 0438E8 80042CE8 8FA40018 */ lw $a0, 0x18($sp) +/* 0438EC 80042CEC 8FAF001C */ lw $t7, 0x1c($sp) +/* 0438F0 80042CF0 848E0018 */ lh $t6, 0x18($a0) +/* 0438F4 80042CF4 000FC0C0 */ sll $t8, $t7, 3 +/* 0438F8 80042CF8 01D8C821 */ addu $t9, $t6, $t8 +/* 0438FC 80042CFC 332800FF */ andi $t0, $t9, 0xff +/* 043900 80042D00 A4880018 */ sh $t0, 0x18($a0) +/* 043904 80042D04 8FBF0014 */ lw $ra, 0x14($sp) +/* 043908 80042D08 27BD0018 */ addiu $sp, $sp, 0x18 +/* 04390C 80042D0C 03E00008 */ jr $ra +/* 043910 80042D10 00000000 */ nop + +/* 043914 80042D14 00000000 */ nop +/* 043918 80042D18 00000000 */ nop +/* 04391C 80042D1C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_80042D20.s b/asm/non_matchings/unknown_043920/func_80042D20.s new file mode 100644 index 00000000..f88c2a6f --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80042D20.s @@ -0,0 +1,1211 @@ +glabel func_80042D20 +/* 043920 80042D20 27BDFF68 */ addiu $sp, $sp, -0x98 +/* 043924 80042D24 AFBF001C */ sw $ra, 0x1c($sp) +/* 043928 80042D28 AFB00018 */ sw $s0, 0x18($sp) +/* 04392C 80042D2C AFA40098 */ sw $a0, 0x98($sp) +/* 043930 80042D30 AFA600A0 */ sw $a2, 0xa0($sp) +/* 043934 80042D34 80AE01CA */ lb $t6, 0x1ca($a1) +/* 043938 80042D38 00A08025 */ move $s0, $a1 +/* 04393C 80042D3C 24040001 */ li $a0, 1 +/* 043940 80042D40 0C0078A7 */ jal func_8001E29C +/* 043944 80042D44 A7AE006E */ sh $t6, 0x6e($sp) +/* 043948 80042D48 AFA20040 */ sw $v0, 0x40($sp) +/* 04394C 80042D4C 0C0078A7 */ jal func_8001E29C +/* 043950 80042D50 24040002 */ li $a0, 2 +/* 043954 80042D54 0C01AF6C */ jal func_8006BDB0 +/* 043958 80042D58 AFA20044 */ sw $v0, 0x44($sp) +/* 04395C 80042D5C AFA20050 */ sw $v0, 0x50($sp) +/* 043960 80042D60 0C006EAB */ jal func_8001BAAC +/* 043964 80042D64 27A40068 */ addiu $a0, $sp, 0x68 +/* 043968 80042D68 0C01B063 */ jal func_8006C18C +/* 04396C 80042D6C AFA20060 */ sw $v0, 0x60($sp) +/* 043970 80042D70 AFA20054 */ sw $v0, 0x54($sp) +/* 043974 80042D74 860301C6 */ lh $v1, 0x1c6($s0) +/* 043978 80042D78 8FAA0060 */ lw $t2, 0x60($sp) +/* 04397C 80042D7C 18600006 */ blez $v1, .L80042D98 +/* 043980 80042D80 00000000 */ nop +/* 043984 80042D84 8FAF00A0 */ lw $t7, 0xa0($sp) +/* 043988 80042D88 00000000 */ nop +/* 04398C 80042D8C 006FC023 */ subu $t8, $v1, $t7 +/* 043990 80042D90 10000002 */ b .L80042D9C +/* 043994 80042D94 A61801C6 */ sh $t8, 0x1c6($s0) +.L80042D98: +/* 043998 80042D98 A60001C6 */ sh $zero, 0x1c6($s0) +.L80042D9C: +/* 04399C 80042D9C 0C006B91 */ jal func_8001AE44 +/* 0439A0 80042DA0 AFAA0060 */ sw $t2, 0x60($sp) +/* 0439A4 80042DA4 8FAA0060 */ lw $t2, 0x60($sp) +/* 0439A8 80042DA8 10400007 */ beqz $v0, .L80042DC8 +/* 0439AC 80042DAC 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 +/* 0439B0 80042DB0 2442D528 */ addiu $v0, %lo(D_8011D528) # addiu $v0, $v0, -0x2ad8 +/* 0439B4 80042DB4 8C590000 */ lw $t9, ($v0) +/* 0439B8 80042DB8 00000000 */ nop +/* 0439BC 80042DBC 372E8000 */ ori $t6, $t9, 0x8000 +/* 0439C0 80042DC0 1000043E */ b .L80043EBC +/* 0439C4 80042DC4 AC4E0000 */ sw $t6, ($v0) +.L80042DC8: +/* 0439C8 80042DC8 8FAF0068 */ lw $t7, 0x68($sp) +/* 0439CC 80042DCC 00001825 */ move $v1, $zero +/* 0439D0 80042DD0 00006825 */ move $t5, $zero +/* 0439D4 80042DD4 00004025 */ move $t0, $zero +/* 0439D8 80042DD8 240CFFFF */ li $t4, -1 +/* 0439DC 80042DDC 19E00024 */ blez $t7, .L80042E70 +/* 0439E0 80042DE0 24020001 */ li $v0, 1 +/* 0439E4 80042DE4 241FFFFF */ li $ra, -1 +/* 0439E8 80042DE8 0003C080 */ sll $t8, $v1, 2 +.L80042DEC: +/* 0439EC 80042DEC 0158C821 */ addu $t9, $t2, $t8 +/* 0439F0 80042DF0 8F2E0000 */ lw $t6, ($t9) +/* 0439F4 80042DF4 00000000 */ nop +/* 0439F8 80042DF8 8DC90064 */ lw $t1, 0x64($t6) +/* 0439FC 80042DFC 00000000 */ nop +/* 043A00 80042E00 15300003 */ bne $t1, $s0, .L80042E10 +/* 043A04 80042E04 00000000 */ nop +/* 043A08 80042E08 00001025 */ move $v0, $zero +/* 043A0C 80042E0C A7A30072 */ sh $v1, 0x72($sp) +.L80042E10: +/* 043A10 80042E10 852F0000 */ lh $t7, ($t1) +/* 043A14 80042E14 00000000 */ nop +/* 043A18 80042E18 17EF0009 */ bne $ra, $t7, .L80042E40 +/* 043A1C 80042E1C 00000000 */ nop +/* 043A20 80042E20 25080001 */ addiu $t0, $t0, 1 +/* 043A24 80042E24 0008C400 */ sll $t8, $t0, 0x10 +/* 043A28 80042E28 1040000A */ beqz $v0, .L80042E54 +/* 043A2C 80042E2C 00184403 */ sra $t0, $t8, 0x10 +/* 043A30 80042E30 25AD0001 */ addiu $t5, $t5, 1 +/* 043A34 80042E34 000D7400 */ sll $t6, $t5, 0x10 +/* 043A38 80042E38 10000006 */ b .L80042E54 +/* 043A3C 80042E3C 000E6C03 */ sra $t5, $t6, 0x10 +.L80042E40: +/* 043A40 80042E40 159F0004 */ bne $t4, $ra, .L80042E54 +/* 043A44 80042E44 00000000 */ nop +/* 043A48 80042E48 00036400 */ sll $t4, $v1, 0x10 +/* 043A4C 80042E4C 000CC403 */ sra $t8, $t4, 0x10 +/* 043A50 80042E50 03006025 */ move $t4, $t8 +.L80042E54: +/* 043A54 80042E54 24630001 */ addiu $v1, $v1, 1 +/* 043A58 80042E58 8FAF0068 */ lw $t7, 0x68($sp) +/* 043A5C 80042E5C 0003CC00 */ sll $t9, $v1, 0x10 +/* 043A60 80042E60 00191C03 */ sra $v1, $t9, 0x10 +/* 043A64 80042E64 006F082A */ slt $at, $v1, $t7 +/* 043A68 80042E68 1420FFE0 */ bnez $at, .L80042DEC +/* 043A6C 80042E6C 0003C080 */ sll $t8, $v1, 2 +.L80042E70: +/* 043A70 80042E70 241FFFFF */ li $ra, -1 +/* 043A74 80042E74 159F0002 */ bne $t4, $ra, .L80042E80 +/* 043A78 80042E78 00000000 */ nop +/* 043A7C 80042E7C 00006025 */ move $t4, $zero +.L80042E80: +/* 043A80 80042E80 1100040F */ beqz $t0, .L80043EC0 +/* 043A84 80042E84 8FBF001C */ lw $ra, 0x1c($sp) +/* 043A88 80042E88 A7A80076 */ sh $t0, 0x76($sp) +/* 043A8C 80042E8C AFAA0060 */ sw $t2, 0x60($sp) +/* 043A90 80042E90 A7AC0034 */ sh $t4, 0x34($sp) +/* 043A94 80042E94 0C008D5A */ jal func_80023568 +/* 043A98 80042E98 A7AD0078 */ sh $t5, 0x78($sp) +/* 043A9C 80042E9C 3C188012 */ lui $t8, %hi(D_8011D540) # $t8, 0x8012 +/* 043AA0 80042EA0 8F18D540 */ lw $t8, %lo(D_8011D540)($t8) +/* 043AA4 80042EA4 87A80076 */ lh $t0, 0x76($sp) +/* 043AA8 80042EA8 8FAA0060 */ lw $t2, 0x60($sp) +/* 043AAC 80042EAC 87AC0034 */ lh $t4, 0x34($sp) +/* 043AB0 80042EB0 87AD0078 */ lh $t5, 0x78($sp) +/* 043AB4 80042EB4 241FFFFF */ li $ra, -1 +/* 043AB8 80042EB8 17000088 */ bnez $t8, .L800430DC +/* 043ABC 80042EBC A7A20070 */ sh $v0, 0x70($sp) +/* 043AC0 80042EC0 821901D6 */ lb $t9, 0x1d6($s0) +/* 043AC4 80042EC4 24010004 */ li $at, 4 +/* 043AC8 80042EC8 13210085 */ beq $t9, $at, .L800430E0 +/* 043ACC 80042ECC 87A70072 */ lh $a3, 0x72($sp) +/* 043AD0 80042ED0 87A70072 */ lh $a3, 0x72($sp) +/* 043AD4 80042ED4 9204020B */ lbu $a0, 0x20b($s0) +/* 043AD8 80042ED8 24E3FFFF */ addiu $v1, $a3, -1 +/* 043ADC 80042EDC 0087082A */ slt $at, $a0, $a3 +/* 043AE0 80042EE0 10200043 */ beqz $at, .L80042FF0 +/* 043AE4 80042EE4 00037400 */ sll $t6, $v1, 0x10 +/* 043AE8 80042EE8 000E7C03 */ sra $t7, $t6, 0x10 +/* 043AEC 80042EEC 05E00041 */ bltz $t7, .L80042FF4 +/* 043AF0 80042EF0 87AE0072 */ lh $t6, 0x72($sp) +/* 043AF4 80042EF4 8FB80068 */ lw $t8, 0x68($sp) +/* 043AF8 80042EF8 000FC880 */ sll $t9, $t7, 2 +/* 043AFC 80042EFC 01F8082A */ slt $at, $t7, $t8 +/* 043B00 80042F00 1020003B */ beqz $at, .L80042FF0 +/* 043B04 80042F04 01595821 */ addu $t3, $t2, $t9 +/* 043B08 80042F08 8D6E0000 */ lw $t6, ($t3) +/* 043B0C 80042F0C 0002C400 */ sll $t8, $v0, 0x10 +/* 043B10 80042F10 8DC90064 */ lw $t1, 0x64($t6) +/* 043B14 80042F14 0018CC03 */ sra $t9, $t8, 0x10 +/* 043B18 80042F18 852F0000 */ lh $t7, ($t1) +/* 043B1C 80042F1C 00000000 */ nop +/* 043B20 80042F20 13EF0034 */ beq $ra, $t7, .L80042FF4 +/* 043B24 80042F24 87AE0072 */ lh $t6, 0x72($sp) +/* 043B28 80042F28 17200011 */ bnez $t9, .L80042F70 +/* 043B2C 80042F2C 240501C2 */ li $a1, 450 +/* 043B30 80042F30 8FA40098 */ lw $a0, 0x98($sp) +/* 043B34 80042F34 24060008 */ li $a2, 8 +/* 043B38 80042F38 24070003 */ li $a3, 3 +/* 043B3C 80042F3C A7A80076 */ sh $t0, 0x76($sp) +/* 043B40 80042F40 AFAA0060 */ sw $t2, 0x60($sp) +/* 043B44 80042F44 AFAB0024 */ sw $t3, 0x24($sp) +/* 043B48 80042F48 A7AC0034 */ sh $t4, 0x34($sp) +/* 043B4C 80042F4C 0C015C2E */ jal func_800570B8 +/* 043B50 80042F50 A7AD0078 */ sh $t5, 0x78($sp) +/* 043B54 80042F54 87A80076 */ lh $t0, 0x76($sp) +/* 043B58 80042F58 8FAA0060 */ lw $t2, 0x60($sp) +/* 043B5C 80042F5C 8FAB0024 */ lw $t3, 0x24($sp) +/* 043B60 80042F60 87AC0034 */ lh $t4, 0x34($sp) +/* 043B64 80042F64 87AD0078 */ lh $t5, 0x78($sp) +/* 043B68 80042F68 10000013 */ b .L80042FB8 +/* 043B6C 80042F6C 8D640000 */ lw $a0, ($t3) +.L80042F70: +/* 043B70 80042F70 8FA20098 */ lw $v0, 0x98($sp) +/* 043B74 80042F74 24070005 */ li $a3, 5 +/* 043B78 80042F78 C44C000C */ lwc1 $f12, 0xc($v0) +/* 043B7C 80042F7C C44E0010 */ lwc1 $f14, 0x10($v0) +/* 043B80 80042F80 8C460014 */ lw $a2, 0x14($v0) +/* 043B84 80042F84 A7AD0078 */ sh $t5, 0x78($sp) +/* 043B88 80042F88 A7AC0034 */ sh $t4, 0x34($sp) +/* 043B8C 80042F8C AFAB0024 */ sw $t3, 0x24($sp) +/* 043B90 80042F90 AFAA0060 */ sw $t2, 0x60($sp) +/* 043B94 80042F94 0C0172A1 */ jal func_8005CA84 +/* 043B98 80042F98 A7A80076 */ sh $t0, 0x76($sp) +/* 043B9C 80042F9C 87A80076 */ lh $t0, 0x76($sp) +/* 043BA0 80042FA0 8FAA0060 */ lw $t2, 0x60($sp) +/* 043BA4 80042FA4 8FAB0024 */ lw $t3, 0x24($sp) +/* 043BA8 80042FA8 87AC0034 */ lh $t4, 0x34($sp) +/* 043BAC 80042FAC 87AD0078 */ lh $t5, 0x78($sp) +/* 043BB0 80042FB0 00000000 */ nop +/* 043BB4 80042FB4 8D640000 */ lw $a0, ($t3) +.L80042FB8: +/* 043BB8 80042FB8 A7AD0078 */ sh $t5, 0x78($sp) +/* 043BBC 80042FBC A7AC0034 */ sh $t4, 0x34($sp) +/* 043BC0 80042FC0 AFAA0060 */ sw $t2, 0x60($sp) +/* 043BC4 80042FC4 A7A80076 */ sh $t0, 0x76($sp) +/* 043BC8 80042FC8 24050162 */ li $a1, 354 +/* 043BCC 80042FCC 24060008 */ li $a2, 8 +/* 043BD0 80042FD0 0C015C2E */ jal func_800570B8 +/* 043BD4 80042FD4 24070002 */ li $a3, 2 +/* 043BD8 80042FD8 87A80076 */ lh $t0, 0x76($sp) +/* 043BDC 80042FDC 8FAA0060 */ lw $t2, 0x60($sp) +/* 043BE0 80042FE0 87AC0034 */ lh $t4, 0x34($sp) +/* 043BE4 80042FE4 87AD0078 */ lh $t5, 0x78($sp) +/* 043BE8 80042FE8 9204020B */ lbu $a0, 0x20b($s0) +/* 043BEC 80042FEC 241FFFFF */ li $ra, -1 +.L80042FF0: +/* 043BF0 80042FF0 87AE0072 */ lh $t6, 0x72($sp) +.L80042FF4: +/* 043BF4 80042FF4 00000000 */ nop +/* 043BF8 80042FF8 01C4082A */ slt $at, $t6, $a0 +/* 043BFC 80042FFC 10200037 */ beqz $at, .L800430DC +/* 043C00 80043000 25C20001 */ addiu $v0, $t6, 1 +/* 043C04 80043004 00027C00 */ sll $t7, $v0, 0x10 +/* 043C08 80043008 000FC403 */ sra $t8, $t7, 0x10 +/* 043C0C 8004300C 07000034 */ bltz $t8, .L800430E0 +/* 043C10 80043010 87A70072 */ lh $a3, 0x72($sp) +/* 043C14 80043014 8FB90068 */ lw $t9, 0x68($sp) +/* 043C18 80043018 00187880 */ sll $t7, $t8, 2 +/* 043C1C 8004301C 0319082A */ slt $at, $t8, $t9 +/* 043C20 80043020 1020002E */ beqz $at, .L800430DC +/* 043C24 80043024 014FC021 */ addu $t8, $t2, $t7 +/* 043C28 80043028 8F190000 */ lw $t9, ($t8) +/* 043C2C 8004302C 000EC080 */ sll $t8, $t6, 2 +/* 043C30 80043030 8F290064 */ lw $t1, 0x64($t9) +/* 043C34 80043034 0158C821 */ addu $t9, $t2, $t8 +/* 043C38 80043038 852F0000 */ lh $t7, ($t1) +/* 043C3C 8004303C 240501C2 */ li $a1, 450 +/* 043C40 80043040 13EF0026 */ beq $ra, $t7, .L800430DC +/* 043C44 80043044 24060008 */ li $a2, 8 +/* 043C48 80043048 8F240004 */ lw $a0, 4($t9) +/* 043C4C 8004304C A7AD0078 */ sh $t5, 0x78($sp) +/* 043C50 80043050 A7AC0034 */ sh $t4, 0x34($sp) +/* 043C54 80043054 A7A80076 */ sh $t0, 0x76($sp) +/* 043C58 80043058 0C015C2E */ jal func_800570B8 +/* 043C5C 8004305C 24070002 */ li $a3, 2 +/* 043C60 80043060 87AF0070 */ lh $t7, 0x70($sp) +/* 043C64 80043064 87A80076 */ lh $t0, 0x76($sp) +/* 043C68 80043068 87AC0034 */ lh $t4, 0x34($sp) +/* 043C6C 8004306C 87AD0078 */ lh $t5, 0x78($sp) +/* 043C70 80043070 15E0000D */ bnez $t7, .L800430A8 +/* 043C74 80043074 24050162 */ li $a1, 354 +/* 043C78 80043078 8FA40098 */ lw $a0, 0x98($sp) +/* 043C7C 8004307C 24060008 */ li $a2, 8 +/* 043C80 80043080 24070003 */ li $a3, 3 +/* 043C84 80043084 A7A80076 */ sh $t0, 0x76($sp) +/* 043C88 80043088 A7AC0034 */ sh $t4, 0x34($sp) +/* 043C8C 8004308C 0C015C2E */ jal func_800570B8 +/* 043C90 80043090 A7AD0078 */ sh $t5, 0x78($sp) +/* 043C94 80043094 87A80076 */ lh $t0, 0x76($sp) +/* 043C98 80043098 87AC0034 */ lh $t4, 0x34($sp) +/* 043C9C 8004309C 87AD0078 */ lh $t5, 0x78($sp) +/* 043CA0 800430A0 1000000F */ b .L800430E0 +/* 043CA4 800430A4 87A70072 */ lh $a3, 0x72($sp) +.L800430A8: +/* 043CA8 800430A8 8FA20098 */ lw $v0, 0x98($sp) +/* 043CAC 800430AC 24070003 */ li $a3, 3 +/* 043CB0 800430B0 C44C000C */ lwc1 $f12, 0xc($v0) +/* 043CB4 800430B4 C44E0010 */ lwc1 $f14, 0x10($v0) +/* 043CB8 800430B8 8C460014 */ lw $a2, 0x14($v0) +/* 043CBC 800430BC A7AD0078 */ sh $t5, 0x78($sp) +/* 043CC0 800430C0 A7AC0034 */ sh $t4, 0x34($sp) +/* 043CC4 800430C4 0C0172A1 */ jal func_8005CA84 +/* 043CC8 800430C8 A7A80076 */ sh $t0, 0x76($sp) +/* 043CCC 800430CC 87A80076 */ lh $t0, 0x76($sp) +/* 043CD0 800430D0 87AC0034 */ lh $t4, 0x34($sp) +/* 043CD4 800430D4 87AD0078 */ lh $t5, 0x78($sp) +/* 043CD8 800430D8 00000000 */ nop +.L800430DC: +/* 043CDC 800430DC 87A70072 */ lh $a3, 0x72($sp) +.L800430E0: +/* 043CE0 800430E0 44800000 */ mtc1 $zero, $f0 +/* 043CE4 800430E4 A207020B */ sb $a3, 0x20b($s0) +/* 043CE8 800430E8 A7AD0078 */ sh $t5, 0x78($sp) +/* 043CEC 800430EC A7AC0034 */ sh $t4, 0x34($sp) +/* 043CF0 800430F0 AFA0005C */ sw $zero, 0x5c($sp) +/* 043CF4 800430F4 A7A80076 */ sh $t0, 0x76($sp) +/* 043CF8 800430F8 02002025 */ move $a0, $s0 +/* 043CFC 800430FC 24050001 */ li $a1, 1 +/* 043D00 80043100 27A60094 */ addiu $a2, $sp, 0x94 +/* 043D04 80043104 E7A00094 */ swc1 $f0, 0x94($sp) +/* 043D08 80043108 0C006DEA */ jal func_8001B7A8 +/* 043D0C 8004310C E7A00090 */ swc1 $f0, 0x90($sp) +/* 043D10 80043110 87A80076 */ lh $t0, 0x76($sp) +/* 043D14 80043114 8FA9005C */ lw $t1, 0x5c($sp) +/* 043D18 80043118 87AC0034 */ lh $t4, 0x34($sp) +/* 043D1C 8004311C 87AD0078 */ lh $t5, 0x78($sp) +/* 043D20 80043120 10400003 */ beqz $v0, .L80043130 +/* 043D24 80043124 241FFFFF */ li $ra, -1 +/* 043D28 80043128 8C490064 */ lw $t1, 0x64($v0) +/* 043D2C 8004312C 00000000 */ nop +.L80043130: +/* 043D30 80043130 03E02825 */ move $a1, $ra +/* 043D34 80043134 AFA00058 */ sw $zero, 0x58($sp) +/* 043D38 80043138 02002025 */ move $a0, $s0 +/* 043D3C 8004313C 27A60090 */ addiu $a2, $sp, 0x90 +/* 043D40 80043140 A7A80076 */ sh $t0, 0x76($sp) +/* 043D44 80043144 AFA9005C */ sw $t1, 0x5c($sp) +/* 043D48 80043148 A7AC0034 */ sh $t4, 0x34($sp) +/* 043D4C 8004314C 0C006DEA */ jal func_8001B7A8 +/* 043D50 80043150 A7AD0078 */ sh $t5, 0x78($sp) +/* 043D54 80043154 87A80076 */ lh $t0, 0x76($sp) +/* 043D58 80043158 8FA9005C */ lw $t1, 0x5c($sp) +/* 043D5C 8004315C 87AC0034 */ lh $t4, 0x34($sp) +/* 043D60 80043160 87AD0078 */ lh $t5, 0x78($sp) +/* 043D64 80043164 10400004 */ beqz $v0, .L80043178 +/* 043D68 80043168 29010007 */ slti $at, $t0, 7 +/* 043D6C 8004316C 8C4E0064 */ lw $t6, 0x64($v0) +/* 043D70 80043170 00000000 */ nop +/* 043D74 80043174 AFAE0058 */ sw $t6, 0x58($sp) +.L80043178: +/* 043D78 80043178 82180003 */ lb $t8, 3($s0) +/* 043D7C 8004317C 11200004 */ beqz $t1, .L80043190 +/* 043D80 80043180 A3B8003E */ sb $t8, 0x3e($sp) +/* 043D84 80043184 81390003 */ lb $t9, 3($t1) +/* 043D88 80043188 00000000 */ nop +/* 043D8C 8004318C A3B9003F */ sb $t9, 0x3f($sp) +.L80043190: +/* 043D90 80043190 1020002A */ beqz $at, .L8004323C +/* 043D94 80043194 00000000 */ nop +/* 043D98 80043198 AFA9005C */ sw $t1, 0x5c($sp) +/* 043D9C 8004319C A7AC0034 */ sh $t4, 0x34($sp) +/* 043DA0 800431A0 0C02658B */ jal func_8009962C +/* 043DA4 800431A4 A7AD0078 */ sh $t5, 0x78($sp) +/* 043DA8 800431A8 8FA9005C */ lw $t1, 0x5c($sp) +/* 043DAC 800431AC 87AC0034 */ lh $t4, 0x34($sp) +/* 043DB0 800431B0 87AD0078 */ lh $t5, 0x78($sp) +/* 043DB4 800431B4 14400021 */ bnez $v0, .L8004323C +/* 043DB8 800431B8 00000000 */ nop +/* 043DBC 800431BC AFA9005C */ sw $t1, 0x5c($sp) +/* 043DC0 800431C0 A7AC0034 */ sh $t4, 0x34($sp) +/* 043DC4 800431C4 0C008D5A */ jal func_80023568 +/* 043DC8 800431C8 A7AD0078 */ sh $t5, 0x78($sp) +/* 043DCC 800431CC 8FA9005C */ lw $t1, 0x5c($sp) +/* 043DD0 800431D0 87AC0034 */ lh $t4, 0x34($sp) +/* 043DD4 800431D4 87AD0078 */ lh $t5, 0x78($sp) +/* 043DD8 800431D8 14400018 */ bnez $v0, .L8004323C +/* 043DDC 800431DC 00000000 */ nop +/* 043DE0 800431E0 AFA9005C */ sw $t1, 0x5c($sp) +/* 043DE4 800431E4 A7AC0034 */ sh $t4, 0x34($sp) +/* 043DE8 800431E8 0C008D07 */ jal func_8002341C +/* 043DEC 800431EC A7AD0078 */ sh $t5, 0x78($sp) +/* 043DF0 800431F0 8FA9005C */ lw $t1, 0x5c($sp) +/* 043DF4 800431F4 87AC0034 */ lh $t4, 0x34($sp) +/* 043DF8 800431F8 87AD0078 */ lh $t5, 0x78($sp) +/* 043DFC 800431FC 1440000F */ bnez $v0, .L8004323C +/* 043E00 80043200 3C0F8012 */ lui $t7, %hi(D_8011D540) # $t7, 0x8012 +/* 043E04 80043204 8DEFD540 */ lw $t7, %lo(D_8011D540)($t7) +/* 043E08 80043208 24010064 */ li $at, 100 +/* 043E0C 8004320C 15E10022 */ bne $t7, $at, .L80043298 +/* 043E10 80043210 00002025 */ move $a0, $zero +/* 043E14 80043214 24050002 */ li $a1, 2 +/* 043E18 80043218 AFA9005C */ sw $t1, 0x5c($sp) +/* 043E1C 8004321C A7AC0034 */ sh $t4, 0x34($sp) +/* 043E20 80043220 0C01BE53 */ jal func_8006F94C +/* 043E24 80043224 A7AD0078 */ sh $t5, 0x78($sp) +/* 043E28 80043228 8FA9005C */ lw $t1, 0x5c($sp) +/* 043E2C 8004322C 87AC0034 */ lh $t4, 0x34($sp) +/* 043E30 80043230 87AD0078 */ lh $t5, 0x78($sp) +/* 043E34 80043234 10000018 */ b .L80043298 +/* 043E38 80043238 A20201CC */ sb $v0, 0x1cc($s0) +.L8004323C: +/* 043E3C 8004323C AFA9005C */ sw $t1, 0x5c($sp) +/* 043E40 80043240 A7AC0034 */ sh $t4, 0x34($sp) +/* 043E44 80043244 0C02658B */ jal func_8009962C +/* 043E48 80043248 A7AD0078 */ sh $t5, 0x78($sp) +/* 043E4C 8004324C 8FA9005C */ lw $t1, 0x5c($sp) +/* 043E50 80043250 87AC0034 */ lh $t4, 0x34($sp) +/* 043E54 80043254 87AD0078 */ lh $t5, 0x78($sp) +/* 043E58 80043258 10400009 */ beqz $v0, .L80043280 +/* 043E5C 8004325C 8FAE0050 */ lw $t6, 0x50($sp) +/* 043E60 80043260 8FAE0050 */ lw $t6, 0x50($sp) +/* 043E64 80043264 83B8003E */ lb $t8, 0x3e($sp) +/* 043E68 80043268 00000000 */ nop +/* 043E6C 8004326C 01D8C821 */ addu $t9, $t6, $t8 +/* 043E70 80043270 932F0016 */ lbu $t7, 0x16($t9) +/* 043E74 80043274 10000008 */ b .L80043298 +/* 043E78 80043278 A20F01CC */ sb $t7, 0x1cc($s0) +/* 043E7C 8004327C 8FAE0050 */ lw $t6, 0x50($sp) +.L80043280: +/* 043E80 80043280 83B8003E */ lb $t8, 0x3e($sp) +/* 043E84 80043284 00000000 */ nop +/* 043E88 80043288 01D8C821 */ addu $t9, $t6, $t8 +/* 043E8C 8004328C 932F000C */ lbu $t7, 0xc($t9) +/* 043E90 80043290 00000000 */ nop +/* 043E94 80043294 A20F01CC */ sb $t7, 0x1cc($s0) +.L80043298: +/* 043E98 80043298 3C018012 */ lui $at, %hi(D_8011D544) # $at, 0x8012 +/* 043E9C 8004329C C420D544 */ lwc1 $f0, %lo(D_8011D544)($at) +/* 043EA0 800432A0 44802000 */ mtc1 $zero, $f4 +/* 043EA4 800432A4 2404000C */ li $a0, 12 +/* 043EA8 800432A8 46002032 */ c.eq.s $f4, $f0 +/* 043EAC 800432AC 00000000 */ nop +/* 043EB0 800432B0 45010009 */ bc1t .L800432D8 +/* 043EB4 800432B4 00000000 */ nop +/* 043EB8 800432B8 860E01AE */ lh $t6, 0x1ae($s0) +/* 043EBC 800432BC 3C18800E */ lui $t8, 0x800e +/* 043EC0 800432C0 030EC021 */ addu $t8, $t8, $t6 +/* 043EC4 800432C4 8318CDA0 */ lb $t8, -0x3260($t8) +/* 043EC8 800432C8 3C018012 */ lui $at, %hi(D_8011D544) # $at, 0x8012 +/* 043ECC 800432CC A21801CA */ sb $t8, 0x1ca($s0) +/* 043ED0 800432D0 C420D544 */ lwc1 $f0, %lo(D_8011D544)($at) +/* 043ED4 800432D4 00000000 */ nop +.L800432D8: +/* 043ED8 800432D8 820301CC */ lb $v1, 0x1cc($s0) +/* 043EDC 800432DC 3C014396 */ li $at, 0x43960000 # 300.000000 +/* 043EE0 800432E0 246EFFFE */ addiu $t6, $v1, -2 +/* 043EE4 800432E4 000EC480 */ sll $t8, $t6, 0x12 +/* 043EE8 800432E8 00181C03 */ sra $v1, $t8, 0x10 +/* 043EEC 800432EC 44835000 */ mtc1 $v1, $f10 +/* 043EF0 800432F0 44813000 */ mtc1 $at, $f6 +/* 043EF4 800432F4 46805420 */ cvt.s.w $f16, $f10 +/* 043EF8 800432F8 46003201 */ sub.s $f8, $f6, $f0 +/* 043EFC 800432FC 4608803E */ c.le.s $f16, $f8 +/* 043F00 80043300 00000000 */ nop +/* 043F04 80043304 45000005 */ bc1f .L8004331C +/* 043F08 80043308 3C0F8012 */ lui $t7, %hi(D_8011D528) # $t7, 0x8012 +/* 043F0C 8004330C 8DEFD528 */ lw $t7, %lo(D_8011D528)($t7) +/* 043F10 80043310 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 +/* 043F14 80043314 35EE8000 */ ori $t6, $t7, 0x8000 +/* 043F18 80043318 AC2ED528 */ sw $t6, %lo(D_8011D528)($at) +.L8004331C: +/* 043F1C 8004331C AFA9005C */ sw $t1, 0x5c($sp) +/* 043F20 80043320 A7AC0034 */ sh $t4, 0x34($sp) +/* 043F24 80043324 0C0078A7 */ jal func_8001E29C +/* 043F28 80043328 A7AD0078 */ sh $t5, 0x78($sp) +/* 043F2C 8004332C 82080174 */ lb $t0, 0x174($s0) +/* 043F30 80043330 8FA9005C */ lw $t1, 0x5c($sp) +/* 043F34 80043334 87AC0034 */ lh $t4, 0x34($sp) +/* 043F38 80043338 87AD0078 */ lh $t5, 0x78($sp) +/* 043F3C 8004333C 29010003 */ slti $at, $t0, 3 +/* 043F40 80043340 1020000A */ beqz $at, .L8004336C +/* 043F44 80043344 241FFFFF */ li $ra, -1 +/* 043F48 80043348 82180172 */ lb $t8, 0x172($s0) +/* 043F4C 8004334C 00000000 */ nop +/* 043F50 80043350 0018C880 */ sll $t9, $t8, 2 +/* 043F54 80043354 0338C823 */ subu $t9, $t9, $t8 +/* 043F58 80043358 03287821 */ addu $t7, $t9, $t0 +/* 043F5C 8004335C 01E27021 */ addu $t6, $t7, $v0 +/* 043F60 80043360 81CA0000 */ lb $t2, ($t6) +/* 043F64 80043364 10000004 */ b .L80043378 +/* 043F68 80043368 8FB80054 */ lw $t8, 0x54($sp) +.L8004336C: +/* 043F6C 8004336C 820A0172 */ lb $t2, 0x172($s0) +/* 043F70 80043370 00000000 */ nop +/* 043F74 80043374 8FB80054 */ lw $t8, 0x54($sp) +.L80043378: +/* 043F78 80043378 24020007 */ li $v0, 7 +/* 043F7C 8004337C 8303000C */ lb $v1, 0xc($t8) +/* 043F80 80043380 8319000D */ lb $t9, 0xd($t8) +/* 043F84 80043384 004D5823 */ subu $t3, $v0, $t5 +/* 043F88 80043388 03237823 */ subu $t7, $t9, $v1 +/* 043F8C 8004338C 01EB0019 */ multu $t7, $t3 +/* 043F90 80043390 00007012 */ mflo $t6 +/* 043F94 80043394 00000000 */ nop +/* 043F98 80043398 00000000 */ nop +/* 043F9C 8004339C 01C2001A */ div $zero, $t6, $v0 +/* 043FA0 800433A0 14400002 */ bnez $v0, .L800433AC +/* 043FA4 800433A4 00000000 */ nop +/* 043FA8 800433A8 0007000D */ break 7 +.L800433AC: +/* 043FAC 800433AC 2401FFFF */ li $at, -1 +/* 043FB0 800433B0 14410004 */ bne $v0, $at, .L800433C4 +/* 043FB4 800433B4 3C018000 */ lui $at, 0x8000 +/* 043FB8 800433B8 15C10002 */ bne $t6, $at, .L800433C4 +/* 043FBC 800433BC 00000000 */ nop +/* 043FC0 800433C0 0006000D */ break 6 +.L800433C4: +/* 043FC4 800433C4 0000C812 */ mflo $t9 +/* 043FC8 800433C8 03237821 */ addu $t7, $t9, $v1 +/* 043FCC 800433CC A7AF0038 */ sh $t7, 0x38($sp) +/* 043FD0 800433D0 830E0011 */ lb $t6, 0x11($t8) +/* 043FD4 800433D4 83040010 */ lb $a0, 0x10($t8) +/* 043FD8 800433D8 00000000 */ nop +/* 043FDC 800433DC 01C4C823 */ subu $t9, $t6, $a0 +/* 043FE0 800433E0 032B0019 */ multu $t9, $t3 +/* 043FE4 800433E4 00007012 */ mflo $t6 +/* 043FE8 800433E8 00000000 */ nop +/* 043FEC 800433EC 00000000 */ nop +/* 043FF0 800433F0 01C2001A */ div $zero, $t6, $v0 +/* 043FF4 800433F4 14400002 */ bnez $v0, .L80043400 +/* 043FF8 800433F8 00000000 */ nop +/* 043FFC 800433FC 0007000D */ break 7 +.L80043400: +/* 044000 80043400 2401FFFF */ li $at, -1 +/* 044004 80043404 14410004 */ bne $v0, $at, .L80043418 +/* 044008 80043408 3C018000 */ lui $at, 0x8000 +/* 04400C 8004340C 15C10002 */ bne $t6, $at, .L80043418 +/* 044010 80043410 00000000 */ nop +/* 044014 80043414 0006000D */ break 6 +.L80043418: +/* 044018 80043418 0000C812 */ mflo $t9 +/* 04401C 8004341C 03247021 */ addu $t6, $t9, $a0 +/* 044020 80043420 A7AE0036 */ sh $t6, 0x36($sp) +/* 044024 80043424 83190009 */ lb $t9, 9($t8) +/* 044028 80043428 83050008 */ lb $a1, 8($t8) +/* 04402C 8004342C 00000000 */ nop +/* 044030 80043430 03257023 */ subu $t6, $t9, $a1 +/* 044034 80043434 01CB0019 */ multu $t6, $t3 +/* 044038 80043438 0000C812 */ mflo $t9 +/* 04403C 8004343C 00000000 */ nop +/* 044040 80043440 00000000 */ nop +/* 044044 80043444 0322001A */ div $zero, $t9, $v0 +/* 044048 80043448 14400002 */ bnez $v0, .L80043454 +/* 04404C 8004344C 00000000 */ nop +/* 044050 80043450 0007000D */ break 7 +.L80043454: +/* 044054 80043454 2401FFFF */ li $at, -1 +/* 044058 80043458 14410004 */ bne $v0, $at, .L8004346C +/* 04405C 8004345C 3C018000 */ lui $at, 0x8000 +/* 044060 80043460 17210002 */ bne $t9, $at, .L8004346C +/* 044064 80043464 00000000 */ nop +/* 044068 80043468 0006000D */ break 6 +.L8004346C: +/* 04406C 8004346C 00007012 */ mflo $t6 +/* 044070 80043470 01C5C821 */ addu $t9, $t6, $a1 +/* 044074 80043474 A7B9003A */ sh $t9, 0x3a($sp) +/* 044078 80043478 830E0015 */ lb $t6, 0x15($t8) +/* 04407C 8004347C 83060014 */ lb $a2, 0x14($t8) +/* 044080 80043480 00000000 */ nop +/* 044084 80043484 01C6C823 */ subu $t9, $t6, $a2 +/* 044088 80043488 032B0019 */ multu $t9, $t3 +/* 04408C 8004348C 0000C012 */ mflo $t8 +/* 044090 80043490 00000000 */ nop +/* 044094 80043494 00000000 */ nop +/* 044098 80043498 0302001A */ div $zero, $t8, $v0 +/* 04409C 8004349C 14400002 */ bnez $v0, .L800434A8 +/* 0440A0 800434A0 00000000 */ nop +/* 0440A4 800434A4 0007000D */ break 7 +.L800434A8: +/* 0440A8 800434A8 2401FFFF */ li $at, -1 +/* 0440AC 800434AC 14410004 */ bne $v0, $at, .L800434C0 +/* 0440B0 800434B0 3C018000 */ lui $at, 0x8000 +/* 0440B4 800434B4 17010002 */ bne $t8, $at, .L800434C0 +/* 0440B8 800434B8 00000000 */ nop +/* 0440BC 800434BC 0006000D */ break 6 +.L800434C0: +/* 0440C0 800434C0 00007012 */ mflo $t6 +/* 0440C4 800434C4 01C6C821 */ addu $t9, $t6, $a2 +/* 0440C8 800434C8 A7B9003C */ sh $t9, 0x3c($sp) +/* 0440CC 800434CC 92070209 */ lbu $a3, 0x209($s0) +/* 0440D0 800434D0 AFAB0028 */ sw $t3, 0x28($sp) +/* 0440D4 800434D4 30F80001 */ andi $t8, $a3, 1 +/* 0440D8 800434D8 130000AF */ beqz $t8, .L80043798 +/* 0440DC 800434DC 00000000 */ nop +/* 0440E0 800434E0 820E0201 */ lb $t6, 0x201($s0) +/* 0440E4 800434E4 00000000 */ nop +/* 0440E8 800434E8 15C00025 */ bnez $t6, .L80043580 +/* 0440EC 800434EC 00000000 */ nop +/* 0440F0 800434F0 15000012 */ bnez $t0, .L8004353C +/* 0440F4 800434F4 000F2400 */ sll $a0, $t7, 0x10 +/* 0440F8 800434F8 0004CC03 */ sra $t9, $a0, 0x10 +/* 0440FC 800434FC 03202025 */ move $a0, $t9 +/* 044100 80043500 AFA9005C */ sw $t1, 0x5c($sp) +/* 044104 80043504 A3AA004B */ sb $t2, 0x4b($sp) +/* 044108 80043508 A7AC0034 */ sh $t4, 0x34($sp) +/* 04410C 8004350C 0C011114 */ jal func_80044450 +/* 044110 80043510 A7AD0078 */ sh $t5, 0x78($sp) +/* 044114 80043514 8FA9005C */ lw $t1, 0x5c($sp) +/* 044118 80043518 83AA004B */ lb $t2, 0x4b($sp) +/* 04411C 8004351C 87AC0034 */ lh $t4, 0x34($sp) +/* 044120 80043520 87AD0078 */ lh $t5, 0x78($sp) +/* 044124 80043524 10400005 */ beqz $v0, .L8004353C +/* 044128 80043528 241FFFFF */ li $ra, -1 +/* 04412C 8004352C 82180174 */ lb $t8, 0x174($s0) +/* 044130 80043530 00000000 */ nop +/* 044134 80043534 270E0001 */ addiu $t6, $t8, 1 +/* 044138 80043538 A20E0174 */ sb $t6, 0x174($s0) +.L8004353C: +/* 04413C 8004353C 15800010 */ bnez $t4, .L80043580 +/* 044140 80043540 29A10003 */ slti $at, $t5, 3 +/* 044144 80043544 1020000E */ beqz $at, .L80043580 +/* 044148 80043548 00000000 */ nop +/* 04414C 8004354C 87A4003C */ lh $a0, 0x3c($sp) +/* 044150 80043550 AFA9005C */ sw $t1, 0x5c($sp) +/* 044154 80043554 A3AA004B */ sb $t2, 0x4b($sp) +/* 044158 80043558 A7AC0034 */ sh $t4, 0x34($sp) +/* 04415C 8004355C 0C011114 */ jal func_80044450 +/* 044160 80043560 A7AD0078 */ sh $t5, 0x78($sp) +/* 044164 80043564 8FA9005C */ lw $t1, 0x5c($sp) +/* 044168 80043568 83AA004B */ lb $t2, 0x4b($sp) +/* 04416C 8004356C 87AC0034 */ lh $t4, 0x34($sp) +/* 044170 80043570 87AD0078 */ lh $t5, 0x78($sp) +/* 044174 80043574 10400002 */ beqz $v0, .L80043580 +/* 044178 80043578 241FFFFF */ li $ra, -1 +/* 04417C 8004357C A2000172 */ sb $zero, 0x172($s0) +.L80043580: +/* 044180 80043580 820F01D3 */ lb $t7, 0x1d3($s0) +/* 044184 80043584 3C19800E */ lui $t9, 0x800e +/* 044188 80043588 15E00016 */ bnez $t7, .L800435E4 +/* 04418C 8004358C 032AC821 */ addu $t9, $t9, $t2 +/* 044190 80043590 8339CD90 */ lb $t9, -0x3270($t9) +/* 044194 80043594 24010004 */ li $at, 4 +/* 044198 80043598 17210012 */ bne $t9, $at, .L800435E4 +/* 04419C 8004359C 00000000 */ nop +/* 0441A0 800435A0 87A4003C */ lh $a0, 0x3c($sp) +/* 0441A4 800435A4 AFA9005C */ sw $t1, 0x5c($sp) +/* 0441A8 800435A8 A3AA004B */ sb $t2, 0x4b($sp) +/* 0441AC 800435AC A7AC0034 */ sh $t4, 0x34($sp) +/* 0441B0 800435B0 0C011114 */ jal func_80044450 +/* 0441B4 800435B4 A7AD0078 */ sh $t5, 0x78($sp) +/* 0441B8 800435B8 8FA9005C */ lw $t1, 0x5c($sp) +/* 0441BC 800435BC 83AA004B */ lb $t2, 0x4b($sp) +/* 0441C0 800435C0 87AC0034 */ lh $t4, 0x34($sp) +/* 0441C4 800435C4 87AD0078 */ lh $t5, 0x78($sp) +/* 0441C8 800435C8 10400006 */ beqz $v0, .L800435E4 +/* 0441CC 800435CC 241FFFFF */ li $ra, -1 +/* 0441D0 800435D0 3C188012 */ lui $t8, %hi(D_8011D530) # $t8, 0x8012 +/* 0441D4 800435D4 8F18D530 */ lw $t8, %lo(D_8011D530)($t8) +/* 0441D8 800435D8 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 +/* 0441DC 800435DC 370E2000 */ ori $t6, $t8, 0x2000 +/* 0441E0 800435E0 AC2ED530 */ sw $t6, %lo(D_8011D530)($at) +.L800435E4: +/* 0441E4 800435E4 820F0173 */ lb $t7, 0x173($s0) +/* 0441E8 800435E8 3C19800E */ lui $t9, %hi(D_800DCD90) # $t9, 0x800e +/* 0441EC 800435EC 11E00065 */ beqz $t7, .L80043784 +/* 0441F0 800435F0 2739CD90 */ addiu $t9, %lo(D_800DCD90) # addiu $t9, $t9, -0x3270 +/* 0441F4 800435F4 01591821 */ addu $v1, $t2, $t9 +/* 0441F8 800435F8 80780000 */ lb $t8, ($v1) +/* 0441FC 800435FC 24010001 */ li $at, 1 +/* 044200 80043600 1701002F */ bne $t8, $at, .L800436C0 +/* 044204 80043604 00000000 */ nop +/* 044208 80043608 11200014 */ beqz $t1, .L8004365C +/* 04420C 8004360C 87A40036 */ lh $a0, 0x36($sp) +/* 044210 80043610 852E0000 */ lh $t6, ($t1) +/* 044214 80043614 29810004 */ slti $at, $t4, 4 +/* 044218 80043618 17EE0010 */ bne $ra, $t6, .L8004365C +/* 04421C 8004361C 87A40036 */ lh $a0, 0x36($sp) +/* 044220 80043620 10200027 */ beqz $at, .L800436C0 +/* 044224 80043624 00000000 */ nop +/* 044228 80043628 83AF003E */ lb $t7, 0x3e($sp) +/* 04422C 8004362C 8FB90044 */ lw $t9, 0x44($sp) +/* 044230 80043630 00000000 */ nop +/* 044234 80043634 01F9C021 */ addu $t8, $t7, $t9 +/* 044238 80043638 830E0000 */ lb $t6, ($t8) +/* 04423C 8004363C 24190004 */ li $t9, 4 +/* 044240 80043640 000E7900 */ sll $t7, $t6, 4 +/* 044244 80043644 01EE7823 */ subu $t7, $t7, $t6 +/* 044248 80043648 000F7880 */ sll $t7, $t7, 2 +/* 04424C 8004364C A60F01C6 */ sh $t7, 0x1c6($s0) +/* 044250 80043650 1000001B */ b .L800436C0 +/* 044254 80043654 A21901C9 */ sb $t9, 0x1c9($s0) +/* 044258 80043658 87A40036 */ lh $a0, 0x36($sp) +.L8004365C: +/* 04425C 8004365C AFA3002C */ sw $v1, 0x2c($sp) +/* 044260 80043660 AFA9005C */ sw $t1, 0x5c($sp) +/* 044264 80043664 A7AC0034 */ sh $t4, 0x34($sp) +/* 044268 80043668 0C011114 */ jal func_80044450 +/* 04426C 8004366C A7AD0078 */ sh $t5, 0x78($sp) +/* 044270 80043670 8FA3002C */ lw $v1, 0x2c($sp) +/* 044274 80043674 8FA9005C */ lw $t1, 0x5c($sp) +/* 044278 80043678 87AC0034 */ lh $t4, 0x34($sp) +/* 04427C 8004367C 87AD0078 */ lh $t5, 0x78($sp) +/* 044280 80043680 1040000F */ beqz $v0, .L800436C0 +/* 044284 80043684 241FFFFF */ li $ra, -1 +/* 044288 80043688 29810002 */ slti $at, $t4, 2 +/* 04428C 8004368C 1020000C */ beqz $at, .L800436C0 +/* 044290 80043690 00000000 */ nop +/* 044294 80043694 83B8003E */ lb $t8, 0x3e($sp) +/* 044298 80043698 8FAE0044 */ lw $t6, 0x44($sp) +/* 04429C 8004369C 00000000 */ nop +/* 0442A0 800436A0 030E7821 */ addu $t7, $t8, $t6 +/* 0442A4 800436A4 81F90000 */ lb $t9, ($t7) +/* 0442A8 800436A8 240E0004 */ li $t6, 4 +/* 0442AC 800436AC 0019C100 */ sll $t8, $t9, 4 +/* 0442B0 800436B0 0319C023 */ subu $t8, $t8, $t9 +/* 0442B4 800436B4 0018C080 */ sll $t8, $t8, 2 +/* 0442B8 800436B8 A61801C6 */ sh $t8, 0x1c6($s0) +/* 0442BC 800436BC A20E01C9 */ sb $t6, 0x1c9($s0) +.L800436C0: +/* 0442C0 800436C0 806F0000 */ lb $t7, ($v1) +/* 0442C4 800436C4 24010002 */ li $at, 2 +/* 0442C8 800436C8 15E1002E */ bne $t7, $at, .L80043784 +/* 0442CC 800436CC 00000000 */ nop +/* 0442D0 800436D0 8FA30058 */ lw $v1, 0x58($sp) +/* 0442D4 800436D4 87A40036 */ lh $a0, 0x36($sp) +/* 0442D8 800436D8 10600013 */ beqz $v1, .L80043728 +/* 0442DC 800436DC 00000000 */ nop +/* 0442E0 800436E0 84790000 */ lh $t9, ($v1) +/* 0442E4 800436E4 29810004 */ slti $at, $t4, 4 +/* 0442E8 800436E8 17F9000F */ bne $ra, $t9, .L80043728 +/* 0442EC 800436EC 00000000 */ nop +/* 0442F0 800436F0 10200024 */ beqz $at, .L80043784 +/* 0442F4 800436F4 00000000 */ nop +/* 0442F8 800436F8 83B8003E */ lb $t8, 0x3e($sp) +/* 0442FC 800436FC 8FAE0044 */ lw $t6, 0x44($sp) +/* 044300 80043700 00000000 */ nop +/* 044304 80043704 030E7821 */ addu $t7, $t8, $t6 +/* 044308 80043708 81F90000 */ lb $t9, ($t7) +/* 04430C 8004370C 240E0005 */ li $t6, 5 +/* 044310 80043710 0019C100 */ sll $t8, $t9, 4 +/* 044314 80043714 0319C023 */ subu $t8, $t8, $t9 +/* 044318 80043718 0018C080 */ sll $t8, $t8, 2 +/* 04431C 8004371C A61801C6 */ sh $t8, 0x1c6($s0) +/* 044320 80043720 10000018 */ b .L80043784 +/* 044324 80043724 A20E01C9 */ sb $t6, 0x1c9($s0) +.L80043728: +/* 044328 80043728 AFA9005C */ sw $t1, 0x5c($sp) +/* 04432C 8004372C A7AC0034 */ sh $t4, 0x34($sp) +/* 044330 80043730 0C011114 */ jal func_80044450 +/* 044334 80043734 A7AD0078 */ sh $t5, 0x78($sp) +/* 044338 80043738 8FA9005C */ lw $t1, 0x5c($sp) +/* 04433C 8004373C 87AC0034 */ lh $t4, 0x34($sp) +/* 044340 80043740 87AD0078 */ lh $t5, 0x78($sp) +/* 044344 80043744 1040000F */ beqz $v0, .L80043784 +/* 044348 80043748 241FFFFF */ li $ra, -1 +/* 04434C 8004374C 29810002 */ slti $at, $t4, 2 +/* 044350 80043750 1020000C */ beqz $at, .L80043784 +/* 044354 80043754 00000000 */ nop +/* 044358 80043758 83AF003E */ lb $t7, 0x3e($sp) +/* 04435C 8004375C 8FB90044 */ lw $t9, 0x44($sp) +/* 044360 80043760 00000000 */ nop +/* 044364 80043764 01F9C021 */ addu $t8, $t7, $t9 +/* 044368 80043768 830E0000 */ lb $t6, ($t8) +/* 04436C 8004376C 24190005 */ li $t9, 5 +/* 044370 80043770 000E7900 */ sll $t7, $t6, 4 +/* 044374 80043774 01EE7823 */ subu $t7, $t7, $t6 +/* 044378 80043778 000F7880 */ sll $t7, $t7, 2 +/* 04437C 8004377C A60F01C6 */ sh $t7, 0x1c6($s0) +/* 044380 80043780 A21901C9 */ sb $t9, 0x1c9($s0) +.L80043784: +/* 044384 80043784 92180209 */ lbu $t8, 0x209($s0) +/* 044388 80043788 00000000 */ nop +/* 04438C 8004378C 330EFFFE */ andi $t6, $t8, 0xfffe +/* 044390 80043790 A20E0209 */ sb $t6, 0x209($s0) +/* 044394 80043794 31C700FF */ andi $a3, $t6, 0xff +.L80043798: +/* 044398 80043798 820F01D3 */ lb $t7, 0x1d3($s0) +/* 04439C 8004379C 8FA30058 */ lw $v1, 0x58($sp) +/* 0443A0 800437A0 11E00021 */ beqz $t7, .L80043828 +/* 0443A4 800437A4 30F90002 */ andi $t9, $a3, 2 +/* 0443A8 800437A8 17200016 */ bnez $t9, .L80043804 +/* 0443AC 800437AC 30F80004 */ andi $t8, $a3, 4 +/* 0443B0 800437B0 87A4003A */ lh $a0, 0x3a($sp) +/* 0443B4 800437B4 AFA9005C */ sw $t1, 0x5c($sp) +/* 0443B8 800437B8 A7AC0034 */ sh $t4, 0x34($sp) +/* 0443BC 800437BC 0C011114 */ jal func_80044450 +/* 0443C0 800437C0 A7AD0078 */ sh $t5, 0x78($sp) +/* 0443C4 800437C4 8FA9005C */ lw $t1, 0x5c($sp) +/* 0443C8 800437C8 87AC0034 */ lh $t4, 0x34($sp) +/* 0443CC 800437CC 87AD0078 */ lh $t5, 0x78($sp) +/* 0443D0 800437D0 10400005 */ beqz $v0, .L800437E8 +/* 0443D4 800437D4 241FFFFF */ li $ra, -1 +/* 0443D8 800437D8 92180209 */ lbu $t8, 0x209($s0) +/* 0443DC 800437DC 00000000 */ nop +/* 0443E0 800437E0 370E0004 */ ori $t6, $t8, 4 +/* 0443E4 800437E4 A20E0209 */ sb $t6, 0x209($s0) +.L800437E8: +/* 0443E8 800437E8 920F0209 */ lbu $t7, 0x209($s0) +/* 0443EC 800437EC 00000000 */ nop +/* 0443F0 800437F0 35F90002 */ ori $t9, $t7, 2 +/* 0443F4 800437F4 A2190209 */ sb $t9, 0x209($s0) +/* 0443F8 800437F8 8FA30058 */ lw $v1, 0x58($sp) +/* 0443FC 800437FC 332700FF */ andi $a3, $t9, 0xff +/* 044400 80043800 30F80004 */ andi $t8, $a3, 4 +.L80043804: +/* 044404 80043804 13000014 */ beqz $t8, .L80043858 +/* 044408 80043808 3C0E8012 */ lui $t6, %hi(D_8011D528) # $t6, 0x8012 +/* 04440C 8004380C 8DCED528 */ lw $t6, %lo(D_8011D528)($t6) +/* 044410 80043810 3C01FFFF */ lui $at, (0xFFFF7FFF >> 16) # lui $at, 0xffff +/* 044414 80043814 34217FFF */ ori $at, (0xFFFF7FFF & 0xFFFF) # ori $at, $at, 0x7fff +/* 044418 80043818 01C17824 */ and $t7, $t6, $at +/* 04441C 8004381C 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 +/* 044420 80043820 1000000D */ b .L80043858 +/* 044424 80043824 AC2FD528 */ sw $t7, %lo(D_8011D528)($at) +.L80043828: +/* 044428 80043828 2401FFFD */ li $at, -3 +/* 04442C 8004382C 00E1C824 */ and $t9, $a3, $at +/* 044430 80043830 C604002C */ lwc1 $f4, 0x2c($s0) +/* 044434 80043834 3C01C028 */ li $at, 0xC0280000 # -2.625000 +/* 044438 80043838 44819800 */ mtc1 $at, $f19 +/* 04443C 8004383C 44809000 */ mtc1 $zero, $f18 +/* 044440 80043840 460021A1 */ cvt.d.s $f6, $f4 +/* 044444 80043844 4626903C */ c.lt.d $f18, $f6 +/* 044448 80043848 A2190209 */ sb $t9, 0x209($s0) +/* 04444C 8004384C 45000002 */ bc1f .L80043858 +/* 044450 80043850 332EFFFB */ andi $t6, $t9, 0xfffb +/* 044454 80043854 A20E0209 */ sb $t6, 0x209($s0) +.L80043858: +/* 044458 80043858 920F0209 */ lbu $t7, 0x209($s0) +/* 04445C 8004385C 00000000 */ nop +/* 044460 80043860 31F90004 */ andi $t9, $t7, 4 +/* 044464 80043864 13200007 */ beqz $t9, .L80043884 +/* 044468 80043868 3C188012 */ lui $t8, %hi(D_8011D528) # $t8, 0x8012 +/* 04446C 8004386C 8F18D528 */ lw $t8, %lo(D_8011D528)($t8) +/* 044470 80043870 3C01FFFF */ lui $at, (0xFFFF7FFF >> 16) # lui $at, 0xffff +/* 044474 80043874 34217FFF */ ori $at, (0xFFFF7FFF & 0xFFFF) # ori $at, $at, 0x7fff +/* 044478 80043878 03017024 */ and $t6, $t8, $at +/* 04447C 8004387C 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 +/* 044480 80043880 AC2ED528 */ sw $t6, %lo(D_8011D528)($at) +.L80043884: +/* 044484 80043884 860F01C6 */ lh $t7, 0x1c6($s0) +/* 044488 80043888 00000000 */ nop +/* 04448C 8004388C 15E00043 */ bnez $t7, .L8004399C +/* 044490 80043890 8FAF0028 */ lw $t7, 0x28($sp) +/* 044494 80043894 920201C9 */ lbu $v0, 0x1c9($s0) +/* 044498 80043898 24010004 */ li $at, 4 +/* 04449C 8004389C 10410004 */ beq $v0, $at, .L800438B0 +/* 0444A0 800438A0 3C198012 */ lui $t9, %hi(D_8011D530) # $t9, 0x8012 +/* 0444A4 800438A4 24010005 */ li $at, 5 +/* 0444A8 800438A8 14410005 */ bne $v0, $at, .L800438C0 +/* 0444AC 800438AC 00000000 */ nop +.L800438B0: +/* 0444B0 800438B0 8F39D530 */ lw $t9, %lo(D_8011D530)($t9) +/* 0444B4 800438B4 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 +/* 0444B8 800438B8 37382000 */ ori $t8, $t9, 0x2000 +/* 0444BC 800438BC AC38D530 */ sw $t8, %lo(D_8011D530)($at) +.L800438C0: +/* 0444C0 800438C0 1060001D */ beqz $v1, .L80043938 +/* 0444C4 800438C4 A20001C9 */ sb $zero, 0x1c9($s0) +/* 0444C8 800438C8 846E0000 */ lh $t6, ($v1) +/* 0444CC 800438CC C7AA0090 */ lwc1 $f10, 0x90($sp) +/* 0444D0 800438D0 13EE0019 */ beq $ra, $t6, .L80043938 +/* 0444D4 800438D4 3C014348 */ li $at, 0x43480000 # 200.000000 +/* 0444D8 800438D8 44814000 */ mtc1 $at, $f8 +/* 0444DC 800438DC 00000000 */ nop +/* 0444E0 800438E0 4608503C */ c.lt.s $f10, $f8 +/* 0444E4 800438E4 00000000 */ nop +/* 0444E8 800438E8 45000013 */ bc1f .L80043938 +/* 0444EC 800438EC 00000000 */ nop +/* 0444F0 800438F0 11A00011 */ beqz $t5, .L80043938 +/* 0444F4 800438F4 29810003 */ slti $at, $t4, 3 +/* 0444F8 800438F8 1020000F */ beqz $at, .L80043938 +/* 0444FC 800438FC 00000000 */ nop +/* 044500 80043900 83AF003E */ lb $t7, 0x3e($sp) +/* 044504 80043904 83B8003F */ lb $t8, 0x3f($sp) +/* 044508 80043908 000FC880 */ sll $t9, $t7, 2 +/* 04450C 8004390C 032FC821 */ addu $t9, $t9, $t7 +/* 044510 80043910 8FAF0040 */ lw $t7, 0x40($sp) +/* 044514 80043914 0019C840 */ sll $t9, $t9, 1 +/* 044518 80043918 03387021 */ addu $t6, $t9, $t8 +/* 04451C 8004391C 01CFC821 */ addu $t9, $t6, $t7 +/* 044520 80043920 83380000 */ lb $t8, ($t9) +/* 044524 80043924 240E0005 */ li $t6, 5 +/* 044528 80043928 2B010005 */ slti $at, $t8, 5 +/* 04452C 8004392C 10200002 */ beqz $at, .L80043938 +/* 044530 80043930 00000000 */ nop +/* 044534 80043934 A20E01C9 */ sb $t6, 0x1c9($s0) +.L80043938: +/* 044538 80043938 3C018012 */ lui $at, %hi(D_8011D544) # $at, 0x8012 +/* 04453C 8004393C C424D544 */ lwc1 $f4, %lo(D_8011D544)($at) +/* 044540 80043940 44808000 */ mtc1 $zero, $f16 +/* 044544 80043944 3C0F800E */ lui $t7, 0x800e +/* 044548 80043948 46048032 */ c.eq.s $f16, $f4 +/* 04454C 8004394C 01ED7821 */ addu $t7, $t7, $t5 +/* 044550 80043950 4500000F */ bc1f .L80043990 +/* 044554 80043954 8FA30058 */ lw $v1, 0x58($sp) +/* 044558 80043958 81EFCDA8 */ lb $t7, -0x3258($t7) +/* 04455C 8004395C 00000000 */ nop +/* 044560 80043960 A20F01CA */ sb $t7, 0x1ca($s0) +/* 044564 80043964 87A4003C */ lh $a0, 0x3c($sp) +/* 044568 80043968 0C011114 */ jal func_80044450 +/* 04456C 8004396C AFA9005C */ sw $t1, 0x5c($sp) +/* 044570 80043970 8FA9005C */ lw $t1, 0x5c($sp) +/* 044574 80043974 10400005 */ beqz $v0, .L8004398C +/* 044578 80043978 241FFFFF */ li $ra, -1 +/* 04457C 8004397C 821901CA */ lb $t9, 0x1ca($s0) +/* 044580 80043980 00000000 */ nop +/* 044584 80043984 2738FFFF */ addiu $t8, $t9, -1 +/* 044588 80043988 A21801CA */ sb $t8, 0x1ca($s0) +.L8004398C: +/* 04458C 8004398C 8FA30058 */ lw $v1, 0x58($sp) +.L80043990: +/* 044590 80043990 240E012C */ li $t6, 300 +/* 044594 80043994 A60E01C6 */ sh $t6, 0x1c6($s0) +/* 044598 80043998 8FAF0028 */ lw $t7, 0x28($sp) +.L8004399C: +/* 04459C 8004399C 24010007 */ li $at, 7 +/* 0445A0 800439A0 15E1000F */ bne $t7, $at, .L800439E0 +/* 0445A4 800439A4 00000000 */ nop +/* 0445A8 800439A8 1060000D */ beqz $v1, .L800439E0 +/* 0445AC 800439AC 3C01800E */ lui $at, %hi(D_800E62AC) # $at, 0x800e +/* 0445B0 800439B0 C7B20090 */ lwc1 $f18, 0x90($sp) +/* 0445B4 800439B4 C42B62A8 */ lwc1 $f11, %lo(D_800E62A8)($at) +/* 0445B8 800439B8 C42A62AC */ lwc1 $f10, %lo(D_800E62AC)($at) +/* 0445BC 800439BC 460091A1 */ cvt.d.s $f6, $f18 +/* 0445C0 800439C0 462A303C */ c.lt.d $f6, $f10 +/* 0445C4 800439C4 240E0001 */ li $t6, 1 +/* 0445C8 800439C8 45000005 */ bc1f .L800439E0 +/* 0445CC 800439CC 00000000 */ nop +/* 0445D0 800439D0 92190209 */ lbu $t9, 0x209($s0) +/* 0445D4 800439D4 A20E01CA */ sb $t6, 0x1ca($s0) +/* 0445D8 800439D8 3338FFFB */ andi $t8, $t9, 0xfffb +/* 0445DC 800439DC A2180209 */ sb $t8, 0x209($s0) +.L800439E0: +/* 0445E0 800439E0 3C0F8012 */ lui $t7, %hi(D_8011D540) # $t7, 0x8012 +/* 0445E4 800439E4 8DEFD540 */ lw $t7, %lo(D_8011D540)($t7) +/* 0445E8 800439E8 8FB90054 */ lw $t9, 0x54($sp) +/* 0445EC 800439EC 15E00050 */ bnez $t7, .L80043B30 +/* 0445F0 800439F0 3C01800E */ lui $at, %hi(D_800E62B4) # $at, 0x800e +/* 0445F4 800439F4 C72E0004 */ lwc1 $f14, 4($t9) +/* 0445F8 800439F8 C43162B0 */ lwc1 $f17, %lo(D_800E62B0)($at) +/* 0445FC 800439FC C43062B4 */ lwc1 $f16, %lo(D_800E62B4)($at) +/* 044600 80043A00 46007221 */ cvt.d.s $f8, $f14 +/* 044604 80043A04 46304102 */ mul.d $f4, $f8, $f16 +/* 044608 80043A08 3C01800E */ lui $at, %hi(D_800E62BC) # $at, 0x800e +/* 04460C 80043A0C C43362B8 */ lwc1 $f19, %lo(D_800E62B8)($at) +/* 044610 80043A10 C43262BC */ lwc1 $f18, %lo(D_800E62BC)($at) +/* 044614 80043A14 3C01800E */ lui $at, %hi(D_800E62C4) # $at, 0x800e +/* 044618 80043A18 C42B62C0 */ lwc1 $f11, %lo(D_800E62C0)($at) +/* 04461C 80043A1C C42A62C4 */ lwc1 $f10, %lo(D_800E62C4)($at) +/* 044620 80043A20 46322180 */ add.d $f6, $f4, $f18 +/* 044624 80043A24 AFA9005C */ sw $t1, 0x5c($sp) +/* 044628 80043A28 462A3203 */ div.d $f8, $f6, $f10 +/* 04462C 80043A2C 0C0326B4 */ jal sqrtf +/* 044630 80043A30 46204320 */ cvt.s.d $f12, $f8 +/* 044634 80043A34 8FB80054 */ lw $t8, 0x54($sp) +/* 044638 80043A38 3C01800E */ lui $at, %hi(D_800E62CC) # $at, 0x800e +/* 04463C 80043A3C C7020000 */ lwc1 $f2, ($t8) +/* 044640 80043A40 C42562C8 */ lwc1 $f5, %lo(D_800E62C8)($at) +/* 044644 80043A44 C42462CC */ lwc1 $f4, %lo(D_800E62CC)($at) +/* 044648 80043A48 46001421 */ cvt.d.s $f16, $f2 +/* 04464C 80043A4C 46248482 */ mul.d $f18, $f16, $f4 +/* 044650 80043A50 3C01800E */ lui $at, %hi(D_800E62D4) # $at, 0x800e +/* 044654 80043A54 C42762D0 */ lwc1 $f7, %lo(D_800E62D0)($at) +/* 044658 80043A58 C42662D4 */ lwc1 $f6, %lo(D_800E62D4)($at) +/* 04465C 80043A5C 3C01800E */ lui $at, %hi(D_800E62DC) # $at, 0x800e +/* 044660 80043A60 C42962D8 */ lwc1 $f9, %lo(D_800E62D8)($at) +/* 044664 80043A64 C42862DC */ lwc1 $f8, %lo(D_800E62DC)($at) +/* 044668 80043A68 46269280 */ add.d $f10, $f18, $f6 +/* 04466C 80043A6C E7A00080 */ swc1 $f0, 0x80($sp) +/* 044670 80043A70 46285403 */ div.d $f16, $f10, $f8 +/* 044674 80043A74 0C0326B4 */ jal sqrtf +/* 044678 80043A78 46208320 */ cvt.s.d $f12, $f16 +/* 04467C 80043A7C 240E0007 */ li $t6, 7 +/* 044680 80043A80 448E9000 */ mtc1 $t6, $f18 +/* 044684 80043A84 C7AE0080 */ lwc1 $f14, 0x80($sp) +/* 044688 80043A88 468091A0 */ cvt.s.w $f6, $f18 +/* 04468C 80043A8C 8FAF0028 */ lw $t7, 0x28($sp) +/* 044690 80043A90 820201CA */ lb $v0, 0x1ca($s0) +/* 044694 80043A94 46007101 */ sub.s $f4, $f14, $f0 +/* 044698 80043A98 448F4000 */ mtc1 $t7, $f8 +/* 04469C 80043A9C 46062283 */ div.s $f10, $f4, $f6 +/* 0446A0 80043AA0 46804420 */ cvt.s.w $f16, $f8 +/* 0446A4 80043AA4 8FA9005C */ lw $t1, 0x5c($sp) +/* 0446A8 80043AA8 28410002 */ slti $at, $v0, 2 +/* 0446AC 80043AAC 241FFFFF */ li $ra, -1 +/* 0446B0 80043AB0 2459FFFF */ addiu $t9, $v0, -1 +/* 0446B4 80043AB4 46105482 */ mul.s $f18, $f10, $f16 +/* 0446B8 80043AB8 46120300 */ add.s $f12, $f0, $f18 +/* 0446BC 80043ABC 1420000B */ bnez $at, .L80043AEC +/* 0446C0 80043AC0 46006086 */ mov.s $f2, $f12 +/* 0446C4 80043AC4 44992000 */ mtc1 $t9, $f4 +/* 0446C8 80043AC8 3C01800E */ lui $at, %hi(D_800E62E4) # $at, 0x800e +/* 0446CC 80043ACC 468021A0 */ cvt.s.w $f6, $f4 +/* 0446D0 80043AD0 C42B62E0 */ lwc1 $f11, %lo(D_800E62E0)($at) +/* 0446D4 80043AD4 C42A62E4 */ lwc1 $f10, %lo(D_800E62E4)($at) +/* 0446D8 80043AD8 46003221 */ cvt.d.s $f8, $f6 +/* 0446DC 80043ADC 462A4402 */ mul.d $f16, $f8, $f10 +/* 0446E0 80043AE0 460064A1 */ cvt.d.s $f18, $f12 +/* 0446E4 80043AE4 46309100 */ add.d $f4, $f18, $f16 +/* 0446E8 80043AE8 462020A0 */ cvt.s.d $f2, $f4 +.L80043AEC: +/* 0446EC 80043AEC 46021182 */ mul.s $f6, $f2, $f2 +/* 0446F0 80043AF0 3C01800E */ lui $at, %hi(D_800E62EC) # $at, 0x800e +/* 0446F4 80043AF4 C42B62E8 */ lwc1 $f11, %lo(D_800E62E8)($at) +/* 0446F8 80043AF8 C42A62EC */ lwc1 $f10, %lo(D_800E62EC)($at) +/* 0446FC 80043AFC 46003221 */ cvt.d.s $f8, $f6 +/* 044700 80043B00 462A4482 */ mul.d $f18, $f8, $f10 +/* 044704 80043B04 3C01800E */ lui $at, %hi(D_800E62F4) # $at, 0x800e +/* 044708 80043B08 C43162F0 */ lwc1 $f17, %lo(D_800E62F0)($at) +/* 04470C 80043B0C C43062F4 */ lwc1 $f16, %lo(D_800E62F4)($at) +/* 044710 80043B10 3C01800E */ lui $at, %hi(D_800E62FC) # $at, 0x800e +/* 044714 80043B14 C42762F8 */ lwc1 $f7, %lo(D_800E62F8)($at) +/* 044718 80043B18 C42662FC */ lwc1 $f6, %lo(D_800E62FC)($at) +/* 04471C 80043B1C 46309101 */ sub.d $f4, $f18, $f16 +/* 044720 80043B20 00000000 */ nop +/* 044724 80043B24 46262203 */ div.d $f8, $f4, $f6 +/* 044728 80043B28 462040A0 */ cvt.s.d $f2, $f8 +/* 04472C 80043B2C E6020124 */ swc1 $f2, 0x124($s0) +.L80043B30: +/* 044730 80043B30 8FA30058 */ lw $v1, 0x58($sp) +/* 044734 80043B34 1120000E */ beqz $t1, .L80043B70 +/* 044738 80043B38 00000000 */ nop +/* 04473C 80043B3C 821801CA */ lb $t8, 0x1ca($s0) +/* 044740 80043B40 24010003 */ li $at, 3 +/* 044744 80043B44 1701000A */ bne $t8, $at, .L80043B70 +/* 044748 80043B48 3C01800E */ lui $at, %hi(D_800E6304) # $at, 0x800e +/* 04474C 80043B4C C7B20094 */ lwc1 $f18, 0x94($sp) +/* 044750 80043B50 C42B6300 */ lwc1 $f11, %lo(D_800E6300)($at) +/* 044754 80043B54 C42A6304 */ lwc1 $f10, %lo(D_800E6304)($at) +/* 044758 80043B58 46009421 */ cvt.d.s $f16, $f18 +/* 04475C 80043B5C 4630503C */ c.lt.d $f10, $f16 +/* 044760 80043B60 240E0002 */ li $t6, 2 +/* 044764 80043B64 45000002 */ bc1f .L80043B70 +/* 044768 80043B68 00000000 */ nop +/* 04476C 80043B6C A20E01CA */ sb $t6, 0x1ca($s0) +.L80043B70: +/* 044770 80043B70 920201C9 */ lbu $v0, 0x1c9($s0) +/* 044774 80043B74 24010004 */ li $at, 4 +/* 044778 80043B78 10400007 */ beqz $v0, .L80043B98 +/* 04477C 80043B7C 00000000 */ nop +/* 044780 80043B80 10410023 */ beq $v0, $at, .L80043C10 +/* 044784 80043B84 24010005 */ li $at, 5 +/* 044788 80043B88 10410026 */ beq $v0, $at, .L80043C24 +/* 04478C 80043B8C 00000000 */ nop +/* 044790 80043B90 10000029 */ b .L80043C38 +/* 044794 80043B94 00000000 */ nop +.L80043B98: +/* 044798 80043B98 11200027 */ beqz $t1, .L80043C38 +/* 04479C 80043B9C 00000000 */ nop +/* 0447A0 80043BA0 852F0000 */ lh $t7, ($t1) +/* 0447A4 80043BA4 00000000 */ nop +/* 0447A8 80043BA8 17EF0023 */ bne $ra, $t7, .L80043C38 +/* 0447AC 80043BAC 00000000 */ nop +/* 0447B0 80043BB0 913901C9 */ lbu $t9, 0x1c9($t1) +/* 0447B4 80043BB4 00000000 */ nop +/* 0447B8 80043BB8 1720001F */ bnez $t9, .L80043C38 +/* 0447BC 80043BBC 00000000 */ nop +/* 0447C0 80043BC0 820201CA */ lb $v0, 0x1ca($s0) +/* 0447C4 80043BC4 813801CA */ lb $t8, 0x1ca($t1) +/* 0447C8 80043BC8 C7A40094 */ lwc1 $f4, 0x94($sp) +/* 0447CC 80043BCC 1458001A */ bne $v0, $t8, .L80043C38 +/* 0447D0 80043BD0 3C014059 */ li $at, 0x40590000 # 3.390625 +/* 0447D4 80043BD4 44814800 */ mtc1 $at, $f9 +/* 0447D8 80043BD8 44804000 */ mtc1 $zero, $f8 +/* 0447DC 80043BDC 460021A1 */ cvt.d.s $f6, $f4 +/* 0447E0 80043BE0 4628303C */ c.lt.d $f6, $f8 +/* 0447E4 80043BE4 244E0001 */ addiu $t6, $v0, 1 +/* 0447E8 80043BE8 45000013 */ bc1f .L80043C38 +/* 0447EC 80043BEC 00000000 */ nop +/* 0447F0 80043BF0 A20E01CA */ sb $t6, 0x1ca($s0) +/* 0447F4 80043BF4 820F01CA */ lb $t7, 0x1ca($s0) +/* 0447F8 80043BF8 24190003 */ li $t9, 3 +/* 0447FC 80043BFC 29E10004 */ slti $at, $t7, 4 +/* 044800 80043C00 1420000D */ bnez $at, .L80043C38 +/* 044804 80043C04 00000000 */ nop +/* 044808 80043C08 1000000B */ b .L80043C38 +/* 04480C 80043C0C A21901CA */ sb $t9, 0x1ca($s0) +.L80043C10: +/* 044810 80043C10 11200009 */ beqz $t1, .L80043C38 +/* 044814 80043C14 00000000 */ nop +/* 044818 80043C18 853801BA */ lh $t8, 0x1ba($t1) +/* 04481C 80043C1C 10000006 */ b .L80043C38 +/* 044820 80043C20 A61801BA */ sh $t8, 0x1ba($s0) +.L80043C24: +/* 044824 80043C24 10600004 */ beqz $v1, .L80043C38 +/* 044828 80043C28 00000000 */ nop +/* 04482C 80043C2C 846E01BA */ lh $t6, 0x1ba($v1) +/* 044830 80043C30 00000000 */ nop +/* 044834 80043C34 A60E01BA */ sh $t6, 0x1ba($s0) +.L80043C38: +/* 044838 80043C38 0C008D07 */ jal func_8002341C +/* 04483C 80043C3C 00000000 */ nop +/* 044840 80043C40 00021C00 */ sll $v1, $v0, 0x10 +/* 044844 80043C44 0002CC00 */ sll $t9, $v0, 0x10 +/* 044848 80043C48 0019C403 */ sra $t8, $t9, 0x10 +/* 04484C 80043C4C 00037C03 */ sra $t7, $v1, 0x10 +/* 044850 80043C50 17000005 */ bnez $t8, .L80043C68 +/* 044854 80043C54 01E01825 */ move $v1, $t7 +/* 044858 80043C58 87AE0070 */ lh $t6, 0x70($sp) +/* 04485C 80043C5C 00000000 */ nop +/* 044860 80043C60 11C00016 */ beqz $t6, .L80043CBC +/* 044864 80043C64 87AE0070 */ lh $t6, 0x70($sp) +.L80043C68: +/* 044868 80043C68 A20001CA */ sb $zero, 0x1ca($s0) +/* 04486C 80043C6C A20001C9 */ sb $zero, 0x1c9($s0) +/* 044870 80043C70 87AF0070 */ lh $t7, 0x70($sp) +/* 044874 80043C74 24040011 */ li $a0, 17 +/* 044878 80043C78 11E00006 */ beqz $t7, .L80043C94 +/* 04487C 80043C7C 00000000 */ nop +/* 044880 80043C80 0C0078A7 */ jal func_8001E29C +/* 044884 80043C84 24040012 */ li $a0, 18 +/* 044888 80043C88 87A30070 */ lh $v1, 0x70($sp) +/* 04488C 80043C8C 10000006 */ b .L80043CA8 +/* 044890 80043C90 0003C880 */ sll $t9, $v1, 2 +.L80043C94: +/* 044894 80043C94 0C0078A7 */ jal func_8001E29C +/* 044898 80043C98 A7A3007A */ sh $v1, 0x7a($sp) +/* 04489C 80043C9C 87A3007A */ lh $v1, 0x7a($sp) +/* 0448A0 80043CA0 00000000 */ nop +/* 0448A4 80043CA4 0003C880 */ sll $t9, $v1, 2 +.L80043CA8: +/* 0448A8 80043CA8 0059C021 */ addu $t8, $v0, $t9 +/* 0448AC 80043CAC C712FFFC */ lwc1 $f18, -4($t8) +/* 0448B0 80043CB0 00000000 */ nop +/* 0448B4 80043CB4 E6120124 */ swc1 $f18, 0x124($s0) +/* 0448B8 80043CB8 87AE0070 */ lh $t6, 0x70($sp) +.L80043CBC: +/* 0448BC 80043CBC 3C0F8012 */ lui $t7, %hi(D_8011D540) # $t7, 0x8012 +/* 0448C0 80043CC0 11C00061 */ beqz $t6, .L80043E48 +/* 0448C4 80043CC4 00000000 */ nop +/* 0448C8 80043CC8 8DEFD540 */ lw $t7, %lo(D_8011D540)($t7) +/* 0448CC 80043CCC 3C038012 */ lui $v1, %hi(D_8011D5B8) # $v1, 0x8012 +/* 0448D0 80043CD0 11E00006 */ beqz $t7, .L80043CEC +/* 0448D4 80043CD4 2463D5B8 */ addiu $v1, %lo(D_8011D5B8) # addiu $v1, $v1, -0x2a48 +/* 0448D8 80043CD8 3C038012 */ lui $v1, %hi(D_8011D5B8) # $v1, 0x8012 +/* 0448DC 80043CDC 2463D5B8 */ addiu $v1, %lo(D_8011D5B8) # addiu $v1, $v1, -0x2a48 +/* 0448E0 80043CE0 24190384 */ li $t9, 900 +/* 0448E4 80043CE4 10000040 */ b .L80043DE8 +/* 0448E8 80043CE8 A4790000 */ sh $t9, ($v1) +.L80043CEC: +/* 0448EC 80043CEC 84780000 */ lh $t8, ($v1) +/* 0448F0 80043CF0 8FAE00A0 */ lw $t6, 0xa0($sp) +/* 0448F4 80043CF4 00000000 */ nop +/* 0448F8 80043CF8 030E7823 */ subu $t7, $t8, $t6 +/* 0448FC 80043CFC A46F0000 */ sh $t7, ($v1) +/* 044900 80043D00 84620000 */ lh $v0, ($v1) +/* 044904 80043D04 00000000 */ nop +/* 044908 80043D08 04410016 */ bgez $v0, .L80043D64 +/* 04490C 80043D0C 284102D1 */ slti $at, $v0, 0x2d1 +/* 044910 80043D10 87B90072 */ lh $t9, 0x72($sp) +/* 044914 80043D14 24010001 */ li $at, 1 +/* 044918 80043D18 17210033 */ bne $t9, $at, .L80043DE8 +/* 04491C 80043D1C A4600000 */ sh $zero, ($v1) +/* 044920 80043D20 3C01800E */ lui $at, %hi(D_800E630C) # $at, 0x800e +/* 044924 80043D24 C7B00094 */ lwc1 $f16, 0x94($sp) +/* 044928 80043D28 C42B6308 */ lwc1 $f11, %lo(D_800E6308)($at) +/* 04492C 80043D2C C42A630C */ lwc1 $f10, %lo(D_800E630C)($at) +/* 044930 80043D30 46008121 */ cvt.d.s $f4, $f16 +/* 044934 80043D34 4624503C */ c.lt.d $f10, $f4 +/* 044938 80043D38 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 04493C 80043D3C 4500002A */ bc1f .L80043DE8 +/* 044940 80043D40 00000000 */ nop +/* 044944 80043D44 C6060124 */ lwc1 $f6, 0x124($s0) +/* 044948 80043D48 44819800 */ mtc1 $at, $f19 +/* 04494C 80043D4C 44809000 */ mtc1 $zero, $f18 +/* 044950 80043D50 46003221 */ cvt.d.s $f8, $f6 +/* 044954 80043D54 46324400 */ add.d $f16, $f8, $f18 +/* 044958 80043D58 462082A0 */ cvt.s.d $f10, $f16 +/* 04495C 80043D5C 10000022 */ b .L80043DE8 +/* 044960 80043D60 E60A0124 */ swc1 $f10, 0x124($s0) +.L80043D64: +/* 044964 80043D64 C6000124 */ lwc1 $f0, 0x124($s0) +/* 044968 80043D68 14200008 */ bnez $at, .L80043D8C +/* 04496C 80043D6C 46000386 */ mov.s $f14, $f0 +/* 044970 80043D70 3C014014 */ li $at, 0x40140000 # 2.312500 +/* 044974 80043D74 44813800 */ mtc1 $at, $f7 +/* 044978 80043D78 44803000 */ mtc1 $zero, $f6 +/* 04497C 80043D7C 46007121 */ cvt.d.s $f4, $f14 +/* 044980 80043D80 46262200 */ add.d $f8, $f4, $f6 +/* 044984 80043D84 10000013 */ b .L80043DD4 +/* 044988 80043D88 462043A0 */ cvt.s.d $f14, $f8 +.L80043D8C: +/* 04498C 80043D8C 87B80072 */ lh $t8, 0x72($sp) +/* 044990 80043D90 24010001 */ li $at, 1 +/* 044994 80043D94 1301000A */ beq $t8, $at, .L80043DC0 +/* 044998 80043D98 3C014024 */ lui $at, 0x4024 +/* 04499C 80043D9C C7B20090 */ lwc1 $f18, 0x90($sp) +/* 0449A0 80043DA0 3C014069 */ li $at, 0x40690000 # 3.640625 +/* 0449A4 80043DA4 44815800 */ mtc1 $at, $f11 +/* 0449A8 80043DA8 44805000 */ mtc1 $zero, $f10 +/* 0449AC 80043DAC 46009421 */ cvt.d.s $f16, $f18 +/* 0449B0 80043DB0 462A803C */ c.lt.d $f16, $f10 +/* 0449B4 80043DB4 00000000 */ nop +/* 0449B8 80043DB8 45000006 */ bc1f .L80043DD4 +/* 0449BC 80043DBC 3C014024 */ li $at, 0x40240000 # 2.562500 +.L80043DC0: +/* 0449C0 80043DC0 44813800 */ mtc1 $at, $f7 +/* 0449C4 80043DC4 44803000 */ mtc1 $zero, $f6 +/* 0449C8 80043DC8 46007121 */ cvt.d.s $f4, $f14 +/* 0449CC 80043DCC 46262200 */ add.d $f8, $f4, $f6 +/* 0449D0 80043DD0 462043A0 */ cvt.s.d $f14, $f8 +.L80043DD4: +/* 0449D4 80043DD4 460E003C */ c.lt.s $f0, $f14 +/* 0449D8 80043DD8 00000000 */ nop +/* 0449DC 80043DDC 45000002 */ bc1f .L80043DE8 +/* 0449E0 80043DE0 00000000 */ nop +/* 0449E4 80043DE4 E60E0124 */ swc1 $f14, 0x124($s0) +.L80043DE8: +/* 0449E8 80043DE8 820E01D8 */ lb $t6, 0x1d8($s0) +/* 0449EC 80043DEC 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 +/* 0449F0 80043DF0 11C00015 */ beqz $t6, .L80043E48 +/* 0449F4 80043DF4 2442D528 */ addiu $v0, %lo(D_8011D528) # addiu $v0, $v0, -0x2ad8 +/* 0449F8 80043DF8 A20001D3 */ sb $zero, 0x1d3($s0) +/* 0449FC 80043DFC A2000213 */ sb $zero, 0x213($s0) +/* 044A00 80043E00 8C4F0000 */ lw $t7, ($v0) +/* 044A04 80043E04 3C01FFFF */ lui $at, (0xFFFF7FFF >> 16) # lui $at, 0xffff +/* 044A08 80043E08 34217FFF */ ori $at, (0xFFFF7FFF & 0xFFFF) # ori $at, $at, 0x7fff +/* 044A0C 80043E0C 01E1C824 */ and $t9, $t7, $at +/* 044A10 80043E10 AC590000 */ sw $t9, ($v0) +/* 044A14 80043E14 372E4000 */ ori $t6, $t9, 0x4000 +/* 044A18 80043E18 AC4E0000 */ sw $t6, ($v0) +/* 044A1C 80043E1C 3C01800E */ lui $at, %hi(D_800E6314) # $at, 0x800e +/* 044A20 80043E20 C610002C */ lwc1 $f16, 0x2c($s0) +/* 044A24 80043E24 C4336310 */ lwc1 $f19, %lo(D_800E6310)($at) +/* 044A28 80043E28 C4326314 */ lwc1 $f18, %lo(D_800E6314)($at) +/* 044A2C 80043E2C 460082A1 */ cvt.d.s $f10, $f16 +/* 044A30 80043E30 462A903C */ c.lt.d $f18, $f10 +/* 044A34 80043E34 35D98000 */ ori $t9, $t6, 0x8000 +/* 044A38 80043E38 45000003 */ bc1f .L80043E48 +/* 044A3C 80043E3C 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 044A40 80043E40 AC590000 */ sw $t9, ($v0) +/* 044A44 80043E44 AC20D534 */ sw $zero, %lo(D_8011D534)($at) +.L80043E48: +/* 044A48 80043E48 82180214 */ lb $t8, 0x214($s0) +/* 044A4C 80043E4C 87AE006E */ lh $t6, 0x6e($sp) +/* 044A50 80043E50 13000002 */ beqz $t8, .L80043E5C +/* 044A54 80043E54 24190040 */ li $t9, 64 +/* 044A58 80043E58 A20E01CA */ sb $t6, 0x1ca($s0) +.L80043E5C: +/* 044A5C 80043E5C 860F01BA */ lh $t7, 0x1ba($s0) +/* 044A60 80043E60 240E0028 */ li $t6, 40 +/* 044A64 80043E64 29E10041 */ slti $at, $t7, 0x41 +/* 044A68 80043E68 14200002 */ bnez $at, .L80043E74 +/* 044A6C 80043E6C 00000000 */ nop +/* 044A70 80043E70 A61901BA */ sh $t9, 0x1ba($s0) +.L80043E74: +/* 044A74 80043E74 861801BC */ lh $t8, 0x1bc($s0) +/* 044A78 80043E78 2419FFC0 */ li $t9, -64 +/* 044A7C 80043E7C 2B010029 */ slti $at, $t8, 0x29 +/* 044A80 80043E80 14200002 */ bnez $at, .L80043E8C +/* 044A84 80043E84 00000000 */ nop +/* 044A88 80043E88 A60E01BC */ sh $t6, 0x1bc($s0) +.L80043E8C: +/* 044A8C 80043E8C 860F01BA */ lh $t7, 0x1ba($s0) +/* 044A90 80043E90 240EFFD8 */ li $t6, -40 +/* 044A94 80043E94 29E1FFC0 */ slti $at, $t7, -0x40 +/* 044A98 80043E98 10200002 */ beqz $at, .L80043EA4 +/* 044A9C 80043E9C 00000000 */ nop +/* 044AA0 80043EA0 A61901BA */ sh $t9, 0x1ba($s0) +.L80043EA4: +/* 044AA4 80043EA4 861801BC */ lh $t8, 0x1bc($s0) +/* 044AA8 80043EA8 00000000 */ nop +/* 044AAC 80043EAC 2B01FFD8 */ slti $at, $t8, -0x28 +/* 044AB0 80043EB0 10200003 */ beqz $at, .L80043EC0 +/* 044AB4 80043EB4 8FBF001C */ lw $ra, 0x1c($sp) +/* 044AB8 80043EB8 A60E01BC */ sh $t6, 0x1bc($s0) +.L80043EBC: +/* 044ABC 80043EBC 8FBF001C */ lw $ra, 0x1c($sp) +.L80043EC0: +/* 044AC0 80043EC0 8FB00018 */ lw $s0, 0x18($sp) +/* 044AC4 80043EC4 03E00008 */ jr $ra +/* 044AC8 80043EC8 27BD0098 */ addiu $sp, $sp, 0x98 + diff --git a/asm/non_matchings/unknown_043920/func_80043ECC.s b/asm/non_matchings/unknown_043920/func_80043ECC.s new file mode 100644 index 00000000..2d1c4ba7 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80043ECC.s @@ -0,0 +1,193 @@ +glabel func_80043ECC +/* 044ACC 80043ECC 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 044AD0 80043ED0 AFBF0014 */ sw $ra, 0x14($sp) +/* 044AD4 80043ED4 14800008 */ bnez $a0, .L80043EF8 +/* 044AD8 80043ED8 AFA60028 */ sw $a2, 0x28($sp) +/* 044ADC 80043EDC 3C018012 */ lui $at, %hi(D_8011D5BA) # $at, 0x8012 +/* 044AE0 80043EE0 A020D5BA */ sb $zero, %lo(D_8011D5BA)($at) +/* 044AE4 80043EE4 3C018012 */ lui $at, %hi(D_8011D5BB) # $at, 0x8012 +/* 044AE8 80043EE8 A020D5BB */ sb $zero, %lo(D_8011D5BB)($at) +/* 044AEC 80043EEC 3C018012 */ lui $at, %hi(D_8011D5BC) # $at, 0x8012 +/* 044AF0 80043EF0 1000009B */ b .L80044160 +/* 044AF4 80043EF4 A020D5BC */ sb $zero, %lo(D_8011D5BC)($at) +.L80043EF8: +/* 044AF8 80043EF8 0C01B063 */ jal func_8006C18C +/* 044AFC 80043EFC AFA50024 */ sw $a1, 0x24($sp) +/* 044B00 80043F00 8FA50024 */ lw $a1, 0x24($sp) +/* 044B04 80043F04 00403025 */ move $a2, $v0 +/* 044B08 80043F08 80AE01D3 */ lb $t6, 0x1d3($a1) +/* 044B0C 80043F0C 3C018012 */ lui $at, 0x8012 +/* 044B10 80043F10 11C0001A */ beqz $t6, .L80043F7C +/* 044B14 80043F14 2404000C */ li $a0, 12 +/* 044B18 80043F18 3C0F8012 */ lui $t7, %hi(D_8011D5BB) # $t7, 0x8012 +/* 044B1C 80043F1C 81EFD5BB */ lb $t7, %lo(D_8011D5BB)($t7) +/* 044B20 80043F20 240C0001 */ li $t4, 1 +/* 044B24 80043F24 15E0000B */ bnez $t7, .L80043F54 +/* 044B28 80043F28 3C0D8012 */ lui $t5, %hi(D_8011D528) # $t5, 0x8012 +/* 044B2C 80043F2C 80580014 */ lb $t8, 0x14($v0) +/* 044B30 80043F30 80590016 */ lb $t9, 0x16($v0) +/* 044B34 80043F34 80490015 */ lb $t1, 0x15($v0) +/* 044B38 80043F38 804A0017 */ lb $t2, 0x17($v0) +/* 044B3C 80043F3C 03194021 */ addu $t0, $t8, $t9 +/* 044B40 80043F40 012A5821 */ addu $t3, $t1, $t2 +/* 044B44 80043F44 A0480014 */ sb $t0, 0x14($v0) +/* 044B48 80043F48 A04B0015 */ sb $t3, 0x15($v0) +/* 044B4C 80043F4C 3C018012 */ lui $at, %hi(D_8011D5BB) # $at, 0x8012 +/* 044B50 80043F50 A02CD5BB */ sb $t4, %lo(D_8011D5BB)($at) +.L80043F54: +/* 044B54 80043F54 8DADD528 */ lw $t5, %lo(D_8011D528)($t5) +/* 044B58 80043F58 8FB80028 */ lw $t8, 0x28($sp) +/* 044B5C 80043F5C 31AE8000 */ andi $t6, $t5, 0x8000 +/* 044B60 80043F60 15C00016 */ bnez $t6, .L80043FBC +/* 044B64 80043F64 3C0F8012 */ lui $t7, %hi(D_8011D5BA) # $t7, 0x8012 +/* 044B68 80043F68 81EFD5BA */ lb $t7, %lo(D_8011D5BA)($t7) +/* 044B6C 80043F6C 3C018012 */ lui $at, %hi(D_8011D5BB) # $at, 0x8012 +/* 044B70 80043F70 01F8C821 */ addu $t9, $t7, $t8 +/* 044B74 80043F74 10000011 */ b .L80043FBC +/* 044B78 80043F78 A039D5BA */ sb $t9, %lo(D_8011D5BA)($at) +.L80043F7C: +/* 044B7C 80043F7C 3C088012 */ lui $t0, %hi(D_8011D5BA) # $t0, 0x8012 +/* 044B80 80043F80 8108D5BA */ lb $t0, %lo(D_8011D5BA)($t0) +/* 044B84 80043F84 A020D5BB */ sb $zero, %lo(D_8011D5BB)($at) +/* 044B88 80043F88 29010015 */ slti $at, $t0, 0x15 +/* 044B8C 80043F8C 14200009 */ bnez $at, .L80043FB4 +/* 044B90 80043F90 00000000 */ nop +/* 044B94 80043F94 80490008 */ lb $t1, 8($v0) +/* 044B98 80043F98 804A000A */ lb $t2, 0xa($v0) +/* 044B9C 80043F9C 804C0009 */ lb $t4, 9($v0) +/* 044BA0 80043FA0 804D000B */ lb $t5, 0xb($v0) +/* 044BA4 80043FA4 012A5821 */ addu $t3, $t1, $t2 +/* 044BA8 80043FA8 018D7021 */ addu $t6, $t4, $t5 +/* 044BAC 80043FAC A04B0008 */ sb $t3, 8($v0) +/* 044BB0 80043FB0 A04E0009 */ sb $t6, 9($v0) +.L80043FB4: +/* 044BB4 80043FB4 3C018012 */ lui $at, %hi(D_8011D5BA) # $at, 0x8012 +/* 044BB8 80043FB8 A020D5BA */ sb $zero, %lo(D_8011D5BA)($at) +.L80043FBC: +/* 044BBC 80043FBC 80AF0173 */ lb $t7, 0x173($a1) +/* 044BC0 80043FC0 3C188012 */ lui $t8, %hi(D_8011D5BC) # $t8, 0x8012 +/* 044BC4 80043FC4 11E00014 */ beqz $t7, .L80044018 +/* 044BC8 80043FC8 3C018012 */ lui $at, 0x8012 +/* 044BCC 80043FCC 80A30174 */ lb $v1, 0x174($a1) +/* 044BD0 80043FD0 8318D5BC */ lb $t8, %lo(D_8011D5BC)($t8) +/* 044BD4 80043FD4 00000000 */ nop +/* 044BD8 80043FD8 0303082A */ slt $at, $t8, $v1 +/* 044BDC 80043FDC 1020000B */ beqz $at, .L8004400C +/* 044BE0 80043FE0 00000000 */ nop +/* 044BE4 80043FE4 8059000C */ lb $t9, 0xc($v0) +/* 044BE8 80043FE8 8048000E */ lb $t0, 0xe($v0) +/* 044BEC 80043FEC 804A000D */ lb $t2, 0xd($v0) +/* 044BF0 80043FF0 804B000F */ lb $t3, 0xf($v0) +/* 044BF4 80043FF4 03284821 */ addu $t1, $t9, $t0 +/* 044BF8 80043FF8 014B6021 */ addu $t4, $t2, $t3 +/* 044BFC 80043FFC A049000C */ sb $t1, 0xc($v0) +/* 044C00 80044000 A04C000D */ sb $t4, 0xd($v0) +/* 044C04 80044004 80A30174 */ lb $v1, 0x174($a1) +/* 044C08 80044008 00000000 */ nop +.L8004400C: +/* 044C0C 8004400C 3C018012 */ lui $at, %hi(D_8011D5BC) # $at, 0x8012 +/* 044C10 80044010 10000002 */ b .L8004401C +/* 044C14 80044014 A023D5BC */ sb $v1, %lo(D_8011D5BC)($at) +.L80044018: +/* 044C18 80044018 A020D5BC */ sb $zero, %lo(D_8011D5BC)($at) +.L8004401C: +/* 044C1C 8004401C AFA50024 */ sw $a1, 0x24($sp) +/* 044C20 80044020 0C0078A7 */ jal func_8001E29C +/* 044C24 80044024 AFA6001C */ sw $a2, 0x1c($sp) +/* 044C28 80044028 3C0D8012 */ lui $t5, %hi(D_8011D530) # $t5, 0x8012 +/* 044C2C 8004402C 8DADD530 */ lw $t5, %lo(D_8011D530)($t5) +/* 044C30 80044030 8FA50024 */ lw $a1, 0x24($sp) +/* 044C34 80044034 8FA6001C */ lw $a2, 0x1c($sp) +/* 044C38 80044038 31AE2000 */ andi $t6, $t5, 0x2000 +/* 044C3C 8004403C 11C00022 */ beqz $t6, .L800440C8 +/* 044C40 80044040 00000000 */ nop +/* 044C44 80044044 80AF0173 */ lb $t7, 0x173($a1) +/* 044C48 80044048 3C0A800E */ lui $t2, 0x800e +/* 044C4C 8004404C 11E0001E */ beqz $t7, .L800440C8 +/* 044C50 80044050 00000000 */ nop +/* 044C54 80044054 80A30174 */ lb $v1, 0x174($a1) +/* 044C58 80044058 00000000 */ nop +/* 044C5C 8004405C 28610003 */ slti $at, $v1, 3 +/* 044C60 80044060 1020000A */ beqz $at, .L8004408C +/* 044C64 80044064 00000000 */ nop +/* 044C68 80044068 80B80172 */ lb $t8, 0x172($a1) +/* 044C6C 8004406C 00000000 */ nop +/* 044C70 80044070 0018C880 */ sll $t9, $t8, 2 +/* 044C74 80044074 0338C823 */ subu $t9, $t9, $t8 +/* 044C78 80044078 03234021 */ addu $t0, $t9, $v1 +/* 044C7C 8004407C 01024821 */ addu $t1, $t0, $v0 +/* 044C80 80044080 81240000 */ lb $a0, ($t1) +/* 044C84 80044084 10000004 */ b .L80044098 +/* 044C88 80044088 01445021 */ addu $t2, $t2, $a0 +.L8004408C: +/* 044C8C 8004408C 80A40172 */ lb $a0, 0x172($a1) +/* 044C90 80044090 00000000 */ nop +/* 044C94 80044094 01445021 */ addu $t2, $t2, $a0 +.L80044098: +/* 044C98 80044098 814ACD90 */ lb $t2, -0x3270($t2) +/* 044C9C 8004409C 24010001 */ li $at, 1 +/* 044CA0 800440A0 1541000A */ bne $t2, $at, .L800440CC +/* 044CA4 800440A4 00C01025 */ move $v0, $a2 +/* 044CA8 800440A8 80CB0010 */ lb $t3, 0x10($a2) +/* 044CAC 800440AC 80CC0012 */ lb $t4, 0x12($a2) +/* 044CB0 800440B0 80CE0011 */ lb $t6, 0x11($a2) +/* 044CB4 800440B4 80CF0013 */ lb $t7, 0x13($a2) +/* 044CB8 800440B8 016C6821 */ addu $t5, $t3, $t4 +/* 044CBC 800440BC 01CFC021 */ addu $t8, $t6, $t7 +/* 044CC0 800440C0 A0CD0010 */ sb $t5, 0x10($a2) +/* 044CC4 800440C4 A0D80011 */ sb $t8, 0x11($a2) +.L800440C8: +/* 044CC8 800440C8 00C01025 */ move $v0, $a2 +.L800440CC: +/* 044CCC 800440CC 24060002 */ li $a2, 2 +/* 044CD0 800440D0 00002825 */ move $a1, $zero +/* 044CD4 800440D4 24040064 */ li $a0, 100 +.L800440D8: +/* 044CD8 800440D8 8043000C */ lb $v1, 0xc($v0) +/* 044CDC 800440DC 24A50001 */ addiu $a1, $a1, 1 +/* 044CE0 800440E0 28610065 */ slti $at, $v1, 0x65 +/* 044CE4 800440E4 10200003 */ beqz $at, .L800440F4 +/* 044CE8 800440E8 00000000 */ nop +/* 044CEC 800440EC 04610002 */ bgez $v1, .L800440F8 +/* 044CF0 800440F0 00000000 */ nop +.L800440F4: +/* 044CF4 800440F4 A044000C */ sb $a0, 0xc($v0) +.L800440F8: +/* 044CF8 800440F8 80430008 */ lb $v1, 8($v0) +/* 044CFC 800440FC 00000000 */ nop +/* 044D00 80044100 28610065 */ slti $at, $v1, 0x65 +/* 044D04 80044104 10200003 */ beqz $at, .L80044114 +/* 044D08 80044108 00000000 */ nop +/* 044D0C 8004410C 04610002 */ bgez $v1, .L80044118 +/* 044D10 80044110 00000000 */ nop +.L80044114: +/* 044D14 80044114 A0440008 */ sb $a0, 8($v0) +.L80044118: +/* 044D18 80044118 80430014 */ lb $v1, 0x14($v0) +/* 044D1C 8004411C 00000000 */ nop +/* 044D20 80044120 28610065 */ slti $at, $v1, 0x65 +/* 044D24 80044124 10200003 */ beqz $at, .L80044134 +/* 044D28 80044128 00000000 */ nop +/* 044D2C 8004412C 04610002 */ bgez $v1, .L80044138 +/* 044D30 80044130 00000000 */ nop +.L80044134: +/* 044D34 80044134 A0440014 */ sb $a0, 0x14($v0) +.L80044138: +/* 044D38 80044138 80430010 */ lb $v1, 0x10($v0) +/* 044D3C 8004413C 00000000 */ nop +/* 044D40 80044140 28610065 */ slti $at, $v1, 0x65 +/* 044D44 80044144 10200003 */ beqz $at, .L80044154 +/* 044D48 80044148 00000000 */ nop +/* 044D4C 8004414C 04610002 */ bgez $v1, .L80044158 +/* 044D50 80044150 00000000 */ nop +.L80044154: +/* 044D54 80044154 A0440010 */ sb $a0, 0x10($v0) +.L80044158: +/* 044D58 80044158 14A6FFDF */ bne $a1, $a2, .L800440D8 +/* 044D5C 8004415C 24420001 */ addiu $v0, $v0, 1 +.L80044160: +/* 044D60 80044160 8FBF0014 */ lw $ra, 0x14($sp) +/* 044D64 80044164 27BD0020 */ addiu $sp, $sp, 0x20 +/* 044D68 80044168 03E00008 */ jr $ra +/* 044D6C 8004416C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_80044170.s b/asm/non_matchings/unknown_043920/func_80044170.s new file mode 100644 index 00000000..d4c6ca42 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80044170.s @@ -0,0 +1,202 @@ +glabel func_80044170 +/* 044D70 80044170 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 044D74 80044174 AFBF0014 */ sw $ra, 0x14($sp) +/* 044D78 80044178 AFA60028 */ sw $a2, 0x28($sp) +/* 044D7C 8004417C AFA40020 */ sw $a0, 0x20($sp) +/* 044D80 80044180 0C01AF66 */ jal func_8006BD98 +/* 044D84 80044184 AFA50024 */ sw $a1, 0x24($sp) +/* 044D88 80044188 8FA40020 */ lw $a0, 0x20($sp) +/* 044D8C 8004418C 8FA50024 */ lw $a1, 0x24($sp) +/* 044D90 80044190 24010040 */ li $at, 64 +/* 044D94 80044194 10410008 */ beq $v0, $at, .L800441B8 +/* 044D98 80044198 00403825 */ move $a3, $v0 +/* 044D9C 8004419C 24010041 */ li $at, 65 +/* 044DA0 800441A0 10410005 */ beq $v0, $at, .L800441B8 +/* 044DA4 800441A4 24010042 */ li $at, 66 +/* 044DA8 800441A8 1041000C */ beq $v0, $at, .L800441DC +/* 044DAC 800441AC 8FA60028 */ lw $a2, 0x28($sp) +/* 044DB0 800441B0 10000012 */ b .L800441FC +/* 044DB4 800441B4 8FA60028 */ lw $a2, 0x28($sp) +.L800441B8: +/* 044DB8 800441B8 8FA60028 */ lw $a2, 0x28($sp) +/* 044DBC 800441BC AFA50024 */ sw $a1, 0x24($sp) +/* 044DC0 800441C0 0C01111F */ jal func_8004447C +/* 044DC4 800441C4 AFA7001C */ sw $a3, 0x1c($sp) +/* 044DC8 800441C8 8FA50024 */ lw $a1, 0x24($sp) +/* 044DCC 800441CC 8FA7001C */ lw $a3, 0x1c($sp) +/* 044DD0 800441D0 10000011 */ b .L80044218 +/* 044DD4 800441D4 80AE0214 */ lb $t6, 0x214($a1) +/* 044DD8 800441D8 8FA60028 */ lw $a2, 0x28($sp) +.L800441DC: +/* 044DDC 800441DC AFA50024 */ sw $a1, 0x24($sp) +/* 044DE0 800441E0 0C0114A8 */ jal func_800452A0 +/* 044DE4 800441E4 AFA7001C */ sw $a3, 0x1c($sp) +/* 044DE8 800441E8 8FA50024 */ lw $a1, 0x24($sp) +/* 044DEC 800441EC 8FA7001C */ lw $a3, 0x1c($sp) +/* 044DF0 800441F0 10000009 */ b .L80044218 +/* 044DF4 800441F4 80AE0214 */ lb $t6, 0x214($a1) +/* 044DF8 800441F8 8FA60028 */ lw $a2, 0x28($sp) +.L800441FC: +/* 044DFC 800441FC AFA50024 */ sw $a1, 0x24($sp) +/* 044E00 80044200 0C011712 */ jal func_80045C48 +/* 044E04 80044204 AFA7001C */ sw $a3, 0x1c($sp) +/* 044E08 80044208 8FA50024 */ lw $a1, 0x24($sp) +/* 044E0C 8004420C 8FA7001C */ lw $a3, 0x1c($sp) +/* 044E10 80044210 00000000 */ nop +/* 044E14 80044214 80AE0214 */ lb $t6, 0x214($a1) +.L80044218: +/* 044E18 80044218 44805000 */ mtc1 $zero, $f10 +/* 044E1C 8004421C 15C00012 */ bnez $t6, .L80044268 +/* 044E20 80044220 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 044E24 80044224 C4A4002C */ lwc1 $f4, 0x2c($a1) +/* 044E28 80044228 44814800 */ mtc1 $at, $f9 +/* 044E2C 8004422C 44804000 */ mtc1 $zero, $f8 +/* 044E30 80044230 460021A1 */ cvt.d.s $f6, $f4 +/* 044E34 80044234 4628303C */ c.lt.d $f6, $f8 +/* 044E38 80044238 8FA30028 */ lw $v1, 0x28($sp) +/* 044E3C 8004423C 4500000A */ bc1f .L80044268 +/* 044E40 80044240 00000000 */ nop +/* 044E44 80044244 80AF0215 */ lb $t7, 0x215($a1) +/* 044E48 80044248 00000000 */ nop +/* 044E4C 8004424C 01E3C023 */ subu $t8, $t7, $v1 +/* 044E50 80044250 A0B80215 */ sb $t8, 0x215($a1) +/* 044E54 80044254 80B90215 */ lb $t9, 0x215($a1) +/* 044E58 80044258 00000000 */ nop +/* 044E5C 8004425C 07210002 */ bgez $t9, .L80044268 +/* 044E60 80044260 00000000 */ nop +/* 044E64 80044264 A0A00215 */ sb $zero, 0x215($a1) +.L80044268: +/* 044E68 80044268 C4B0002C */ lwc1 $f16, 0x2c($a1) +/* 044E6C 8004426C 3C01BFF0 */ li $at, 0xBFF00000 # -1.875000 +/* 044E70 80044270 44815800 */ mtc1 $at, $f11 +/* 044E74 80044274 460084A1 */ cvt.d.s $f18, $f16 +/* 044E78 80044278 4632503C */ c.lt.d $f10, $f18 +/* 044E7C 8004427C 8FA30028 */ lw $v1, 0x28($sp) +/* 044E80 80044280 80A20214 */ lb $v0, 0x214($a1) +/* 044E84 80044284 4500003B */ bc1f .L80044374 +/* 044E88 80044288 00435023 */ subu $t2, $v0, $v1 +/* 044E8C 8004428C 14400038 */ bnez $v0, .L80044370 +/* 044E90 80044290 3C088012 */ lui $t0, %hi(D_8011D540) # $t0, 0x8012 +/* 044E94 80044294 8D08D540 */ lw $t0, %lo(D_8011D540)($t0) +/* 044E98 80044298 3C018012 */ lui $at, %hi(D_8011D544) # $at, 0x8012 +/* 044E9C 8004429C 15000035 */ bnez $t0, .L80044374 +/* 044EA0 800442A0 00435023 */ subu $t2, $v0, $v1 +/* 044EA4 800442A4 44802000 */ mtc1 $zero, $f4 +/* 044EA8 800442A8 C426D544 */ lwc1 $f6, %lo(D_8011D544)($at) +/* 044EAC 800442AC 00000000 */ nop +/* 044EB0 800442B0 46062032 */ c.eq.s $f4, $f6 +/* 044EB4 800442B4 00000000 */ nop +/* 044EB8 800442B8 4500002E */ bc1f .L80044374 +/* 044EBC 800442BC 00435023 */ subu $t2, $v0, $v1 +/* 044EC0 800442C0 80A901E2 */ lb $t1, 0x1e2($a1) +/* 044EC4 800442C4 00000000 */ nop +/* 044EC8 800442C8 1120002A */ beqz $t1, .L80044374 +/* 044ECC 800442CC 00435023 */ subu $t2, $v0, $v1 +/* 044ED0 800442D0 80AA0215 */ lb $t2, 0x215($a1) +/* 044ED4 800442D4 00000000 */ nop +/* 044ED8 800442D8 15400026 */ bnez $t2, .L80044374 +/* 044EDC 800442DC 00435023 */ subu $t2, $v0, $v1 +/* 044EE0 800442E0 80AB0213 */ lb $t3, 0x213($a1) +/* 044EE4 800442E4 240E003C */ li $t6, 60 +/* 044EE8 800442E8 01636021 */ addu $t4, $t3, $v1 +/* 044EEC 800442EC A0AC0213 */ sb $t4, 0x213($a1) +/* 044EF0 800442F0 80AD0213 */ lb $t5, 0x213($a1) +/* 044EF4 800442F4 240F0078 */ li $t7, 120 +/* 044EF8 800442F8 29A1003D */ slti $at, $t5, 0x3d +/* 044EFC 800442FC 14200019 */ bnez $at, .L80044364 +/* 044F00 80044300 30F80040 */ andi $t8, $a3, 0x40 +/* 044F04 80044304 A0A00213 */ sb $zero, 0x213($a1) +/* 044F08 80044308 A0AE0214 */ sb $t6, 0x214($a1) +/* 044F0C 8004430C 17000007 */ bnez $t8, .L8004432C +/* 044F10 80044310 A0AF0215 */ sb $t7, 0x215($a1) +/* 044F14 80044314 80B901CA */ lb $t9, 0x1ca($a1) +/* 044F18 80044318 00000000 */ nop +/* 044F1C 8004431C 27280001 */ addiu $t0, $t9, 1 +/* 044F20 80044320 31090003 */ andi $t1, $t0, 3 +/* 044F24 80044324 1000000F */ b .L80044364 +/* 044F28 80044328 A0A901CA */ sb $t1, 0x1ca($a1) +.L8004432C: +/* 044F2C 8004432C 24010040 */ li $at, 64 +/* 044F30 80044330 10E10003 */ beq $a3, $at, .L80044340 +/* 044F34 80044334 24010041 */ li $at, 65 +/* 044F38 80044338 14E1000A */ bne $a3, $at, .L80044364 +/* 044F3C 8004433C 00000000 */ nop +.L80044340: +/* 044F40 80044340 90A401CE */ lbu $a0, 0x1ce($a1) +/* 044F44 80044344 240100FF */ li $at, 255 +/* 044F48 80044348 10810006 */ beq $a0, $at, .L80044364 +/* 044F4C 8004434C 00000000 */ nop +/* 044F50 80044350 0C007485 */ jal func_8001D214 +/* 044F54 80044354 AFA50024 */ sw $a1, 0x24($sp) +/* 044F58 80044358 8FA50024 */ lw $a1, 0x24($sp) +/* 044F5C 8004435C 00000000 */ nop +/* 044F60 80044360 ACA20154 */ sw $v0, 0x154($a1) +.L80044364: +/* 044F64 80044364 80A20214 */ lb $v0, 0x214($a1) +/* 044F68 80044368 1000000A */ b .L80044394 +/* 044F6C 8004436C 00000000 */ nop +.L80044370: +/* 044F70 80044370 00435023 */ subu $t2, $v0, $v1 +.L80044374: +/* 044F74 80044374 A0AA0214 */ sb $t2, 0x214($a1) +/* 044F78 80044378 80A20214 */ lb $v0, 0x214($a1) +/* 044F7C 8004437C A0A00213 */ sb $zero, 0x213($a1) +/* 044F80 80044380 04410004 */ bgez $v0, .L80044394 +/* 044F84 80044384 00000000 */ nop +/* 044F88 80044388 A0A00214 */ sb $zero, 0x214($a1) +/* 044F8C 8004438C 80A20214 */ lb $v0, 0x214($a1) +/* 044F90 80044390 00000000 */ nop +.L80044394: +/* 044F94 80044394 10400012 */ beqz $v0, .L800443E0 +/* 044F98 80044398 3C038012 */ lui $v1, %hi(D_8011D534) # $v1, 0x8012 +/* 044F9C 8004439C 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 +/* 044FA0 800443A0 2442D528 */ addiu $v0, %lo(D_8011D528) # addiu $v0, $v0, -0x2ad8 +/* 044FA4 800443A4 8C4D0000 */ lw $t5, ($v0) +/* 044FA8 800443A8 3C01FFFF */ lui $at, (0xFFFF7FFF >> 16) # lui $at, 0xffff +/* 044FAC 800443AC 2463D534 */ addiu $v1, %lo(D_8011D534) # addiu $v1, $v1, -0x2acc +/* 044FB0 800443B0 34217FFF */ ori $at, (0xFFFF7FFF & 0xFFFF) # ori $at, $at, 0x7fff +/* 044FB4 800443B4 8C6B0000 */ lw $t3, ($v1) +/* 044FB8 800443B8 01A17024 */ and $t6, $t5, $at +/* 044FBC 800443BC 3C048012 */ lui $a0, %hi(D_8011D538) # $a0, 0x8012 +/* 044FC0 800443C0 2484D538 */ addiu $a0, %lo(D_8011D538) # addiu $a0, $a0, -0x2ac8 +/* 044FC4 800443C4 AC4E0000 */ sw $t6, ($v0) +/* 044FC8 800443C8 240FFFCE */ li $t7, -50 +/* 044FCC 800443CC 35D94000 */ ori $t9, $t6, 0x4000 +/* 044FD0 800443D0 000B6023 */ negu $t4, $t3 +/* 044FD4 800443D4 AC6C0000 */ sw $t4, ($v1) +/* 044FD8 800443D8 AC8F0000 */ sw $t7, ($a0) +/* 044FDC 800443DC AC590000 */ sw $t9, ($v0) +.L800443E0: +/* 044FE0 800443E0 3C038012 */ lui $v1, %hi(D_8011D534) # $v1, 0x8012 +/* 044FE4 800443E4 2463D534 */ addiu $v1, %lo(D_8011D534) # addiu $v1, $v1, -0x2acc +/* 044FE8 800443E8 8C620000 */ lw $v0, ($v1) +/* 044FEC 800443EC 3C048012 */ lui $a0, %hi(D_8011D538) # $a0, 0x8012 +/* 044FF0 800443F0 2841004C */ slti $at, $v0, 0x4c +/* 044FF4 800443F4 14200003 */ bnez $at, .L80044404 +/* 044FF8 800443F8 2484D538 */ addiu $a0, %lo(D_8011D538) # addiu $a0, $a0, -0x2ac8 +/* 044FFC 800443FC 2402004B */ li $v0, 75 +/* 045000 80044400 AC620000 */ sw $v0, ($v1) +.L80044404: +/* 045004 80044404 2841FFB5 */ slti $at, $v0, -0x4b +/* 045008 80044408 10200002 */ beqz $at, .L80044414 +/* 04500C 8004440C 2409FFB5 */ li $t1, -75 +/* 045010 80044410 AC690000 */ sw $t1, ($v1) +.L80044414: +/* 045014 80044414 8C820000 */ lw $v0, ($a0) +/* 045018 80044418 240BFFB5 */ li $t3, -75 +/* 04501C 8004441C 2841004C */ slti $at, $v0, 0x4c +/* 045020 80044420 14200004 */ bnez $at, .L80044434 +/* 045024 80044424 2841FFB5 */ slti $at, $v0, -0x4b +/* 045028 80044428 2402004B */ li $v0, 75 +/* 04502C 8004442C AC820000 */ sw $v0, ($a0) +/* 045030 80044430 2841FFB5 */ slti $at, $v0, -0x4b +.L80044434: +/* 045034 80044434 10200003 */ beqz $at, .L80044444 +/* 045038 80044438 8FBF0014 */ lw $ra, 0x14($sp) +/* 04503C 8004443C AC8B0000 */ sw $t3, ($a0) +/* 045040 80044440 8FBF0014 */ lw $ra, 0x14($sp) +.L80044444: +/* 045044 80044444 27BD0020 */ addiu $sp, $sp, 0x20 +/* 045048 80044448 03E00008 */ jr $ra +/* 04504C 8004444C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_80044450.s b/asm/non_matchings/unknown_043920/func_80044450.s new file mode 100644 index 00000000..d313aa72 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80044450.s @@ -0,0 +1,13 @@ +glabel func_80044450 +/* 045050 80044450 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 045054 80044454 AFBF0014 */ sw $ra, 0x14($sp) +/* 045058 80044458 AFA40018 */ sw $a0, 0x18($sp) +/* 04505C 8004445C 00002025 */ move $a0, $zero +/* 045060 80044460 0C01BE53 */ jal func_8006F94C +/* 045064 80044464 24050063 */ li $a1, 99 +/* 045068 80044468 8FAE0018 */ lw $t6, 0x18($sp) +/* 04506C 8004446C 8FBF0014 */ lw $ra, 0x14($sp) +/* 045070 80044470 27BD0018 */ addiu $sp, $sp, 0x18 +/* 045074 80044474 03E00008 */ jr $ra +/* 045078 80044478 004E102A */ slt $v0, $v0, $t6 + diff --git a/asm/non_matchings/unknown_043920/func_8004447C.s b/asm/non_matchings/unknown_043920/func_8004447C.s new file mode 100644 index 00000000..d5f83721 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8004447C.s @@ -0,0 +1,878 @@ +glabel func_8004447C +/* 04507C 8004447C 3C018012 */ lui $at, %hi(D_8011D52C) # $at, 0x8012 +/* 045080 80044480 AC20D52C */ sw $zero, %lo(D_8011D52C)($at) +/* 045084 80044484 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 +/* 045088 80044488 AC20D530 */ sw $zero, %lo(D_8011D530)($at) +/* 04508C 8004448C 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 +/* 045090 80044490 27BDFF88 */ addiu $sp, $sp, -0x78 +/* 045094 80044494 AC20D528 */ sw $zero, %lo(D_8011D528)($at) +/* 045098 80044498 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 04509C 8004449C AC20D534 */ sw $zero, %lo(D_8011D534)($at) +/* 0450A0 800444A0 AFBF001C */ sw $ra, 0x1c($sp) +/* 0450A4 800444A4 AFB00018 */ sw $s0, 0x18($sp) +/* 0450A8 800444A8 AFA40078 */ sw $a0, 0x78($sp) +/* 0450AC 800444AC 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 +/* 0450B0 800444B0 00A08025 */ move $s0, $a1 +/* 0450B4 800444B4 AFA60080 */ sw $a2, 0x80($sp) +/* 0450B8 800444B8 AC20D538 */ sw $zero, %lo(D_8011D538)($at) +/* 0450BC 800444BC 0C006E9D */ jal func_8001BA74 +/* 0450C0 800444C0 27A40058 */ addiu $a0, $sp, 0x58 +/* 0450C4 800444C4 8FAE0058 */ lw $t6, 0x58($sp) +/* 0450C8 800444C8 24010004 */ li $at, 4 +/* 0450CC 800444CC 15C10313 */ bne $t6, $at, .L8004511C +/* 0450D0 800444D0 8FBF001C */ lw $ra, 0x1c($sp) +/* 0450D4 800444D4 0C01AF6C */ jal func_8006BDB0 +/* 0450D8 800444D8 00000000 */ nop +/* 0450DC 800444DC 804F004C */ lb $t7, 0x4c($v0) +/* 0450E0 800444E0 2458002A */ addiu $t8, $v0, 0x2a +/* 0450E4 800444E4 AFB80038 */ sw $t8, 0x38($sp) +/* 0450E8 800444E8 A3AF003F */ sb $t7, 0x3f($sp) +/* 0450EC 800444EC 921901CD */ lbu $t9, 0x1cd($s0) +/* 0450F0 800444F0 8FA20078 */ lw $v0, 0x78($sp) +/* 0450F4 800444F4 17200010 */ bnez $t9, .L80044538 +/* 0450F8 800444F8 00000000 */ nop +/* 0450FC 800444FC C44C000C */ lwc1 $f12, 0xc($v0) +/* 045100 80044500 C44E0010 */ lwc1 $f14, 0x10($v0) +/* 045104 80044504 8C460014 */ lw $a2, 0x14($v0) +/* 045108 80044508 0C007149 */ jal func_8001C524 +/* 04510C 8004450C 00003825 */ move $a3, $zero +/* 045110 80044510 240100FF */ li $at, 255 +/* 045114 80044514 10410008 */ beq $v0, $at, .L80044538 +/* 045118 80044518 AFA20058 */ sw $v0, 0x58($sp) +/* 04511C 8004451C 0C007485 */ jal func_8001D214 +/* 045120 80044520 00402025 */ move $a0, $v0 +/* 045124 80044524 240C0001 */ li $t4, 1 +/* 045128 80044528 240D00FF */ li $t5, 255 +/* 04512C 8004452C AE020154 */ sw $v0, 0x154($s0) +/* 045130 80044530 A20C01CD */ sb $t4, 0x1cd($s0) +/* 045134 80044534 A20D01CE */ sb $t5, 0x1ce($s0) +.L80044538: +/* 045138 80044538 8E060154 */ lw $a2, 0x154($s0) +/* 04513C 8004453C 00000000 */ nop +/* 045140 80044540 10C00032 */ beqz $a2, .L8004460C +/* 045144 80044544 00000000 */ nop +/* 045148 80044548 8CCE003C */ lw $t6, 0x3c($a2) +/* 04514C 8004454C 8FA20078 */ lw $v0, 0x78($sp) +/* 045150 80044550 AFAE006C */ sw $t6, 0x6c($sp) +/* 045154 80044554 C4C4000C */ lwc1 $f4, 0xc($a2) +/* 045158 80044558 C446000C */ lwc1 $f6, 0xc($v0) +/* 04515C 8004455C C4C80014 */ lwc1 $f8, 0x14($a2) +/* 045160 80044560 46062001 */ sub.s $f0, $f4, $f6 +/* 045164 80044564 C44A0014 */ lwc1 $f10, 0x14($v0) +/* 045168 80044568 46000402 */ mul.s $f16, $f0, $f0 +/* 04516C 8004456C 460A4381 */ sub.s $f14, $f8, $f10 +/* 045170 80044570 E7A00064 */ swc1 $f0, 0x64($sp) +/* 045174 80044574 E7AE0060 */ swc1 $f14, 0x60($sp) +/* 045178 80044578 460E7482 */ mul.s $f18, $f14, $f14 +/* 04517C 8004457C AFA60074 */ sw $a2, 0x74($sp) +/* 045180 80044580 0C0326B4 */ jal sqrtf +/* 045184 80044584 46128300 */ add.s $f12, $f16, $f18 +/* 045188 80044588 44802800 */ mtc1 $zero, $f5 +/* 04518C 8004458C 44802000 */ mtc1 $zero, $f4 +/* 045190 80044590 460001A1 */ cvt.d.s $f6, $f0 +/* 045194 80044594 4626203C */ c.lt.d $f4, $f6 +/* 045198 80044598 8FA60074 */ lw $a2, 0x74($sp) +/* 04519C 8004459C C7AE0060 */ lwc1 $f14, 0x60($sp) +/* 0451A0 800445A0 4500001A */ bc1f .L8004460C +/* 0451A4 800445A4 E7A0005C */ swc1 $f0, 0x5c($sp) +/* 0451A8 800445A8 C7AC0064 */ lwc1 $f12, 0x64($sp) +/* 0451AC 800445AC 0C01C1D4 */ jal func_80070750 +/* 0451B0 800445B0 AFA60074 */ sw $a2, 0x74($sp) +/* 0451B4 800445B4 24018000 */ li $at, -32768 +/* 0451B8 800445B8 00417821 */ addu $t7, $v0, $at +/* 0451BC 800445BC 31F8FFFF */ andi $t8, $t7, 0xffff +/* 0451C0 800445C0 AFB80058 */ sw $t8, 0x58($sp) +/* 0451C4 800445C4 861901A0 */ lh $t9, 0x1a0($s0) +/* 0451C8 800445C8 34018001 */ li $at, 32769 +/* 0451CC 800445CC 332CFFFF */ andi $t4, $t9, 0xffff +/* 0451D0 800445D0 030C1823 */ subu $v1, $t8, $t4 +/* 0451D4 800445D4 8FA60074 */ lw $a2, 0x74($sp) +/* 0451D8 800445D8 0061082A */ slt $at, $v1, $at +/* 0451DC 800445DC 14200003 */ bnez $at, .L800445EC +/* 0451E0 800445E0 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 0451E4 800445E4 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 0451E8 800445E8 00611821 */ addu $v1, $v1, $at +.L800445EC: +/* 0451EC 800445EC 28618000 */ slti $at, $v1, -0x8000 +/* 0451F0 800445F0 10200002 */ beqz $at, .L800445FC +/* 0451F4 800445F4 3401FFFF */ li $at, 65535 +/* 0451F8 800445F8 00611821 */ addu $v1, $v1, $at +.L800445FC: +/* 0451FC 800445FC 00036823 */ negu $t5, $v1 +/* 045200 80044600 000D7103 */ sra $t6, $t5, 4 +/* 045204 80044604 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 045208 80044608 AC2ED534 */ sw $t6, %lo(D_8011D534)($at) +.L8004460C: +/* 04520C 8004460C 3C0F8012 */ lui $t7, %hi(D_8011D540) # $t7, 0x8012 +/* 045210 80044610 8DEFD540 */ lw $t7, %lo(D_8011D540)($t7) +/* 045214 80044614 00000000 */ nop +/* 045218 80044618 11E00002 */ beqz $t7, .L80044624 +/* 04521C 8004461C 00000000 */ nop +/* 045220 80044620 A60001C6 */ sh $zero, 0x1c6($s0) +.L80044624: +/* 045224 80044624 920301CD */ lbu $v1, 0x1cd($s0) +/* 045228 80044628 24010002 */ li $at, 2 +/* 04522C 8004462C 10610005 */ beq $v1, $at, .L80044644 +/* 045230 80044630 24010004 */ li $at, 4 +/* 045234 80044634 10610003 */ beq $v1, $at, .L80044644 +/* 045238 80044638 24010005 */ li $at, 5 +/* 04523C 8004463C 14610009 */ bne $v1, $at, .L80044664 +/* 045240 80044640 8FAC0078 */ lw $t4, 0x78($sp) +.L80044644: +/* 045244 80044644 860201C6 */ lh $v0, 0x1c6($s0) +/* 045248 80044648 8FB90080 */ lw $t9, 0x80($sp) +/* 04524C 8004464C 18400003 */ blez $v0, .L8004465C +/* 045250 80044650 0059C023 */ subu $t8, $v0, $t9 +/* 045254 80044654 10000002 */ b .L80044660 +/* 045258 80044658 A61801C6 */ sh $t8, 0x1c6($s0) +.L8004465C: +/* 04525C 8004465C A60001C6 */ sh $zero, 0x1c6($s0) +.L80044660: +/* 045260 80044660 8FAC0078 */ lw $t4, 0x78($sp) +.L80044664: +/* 045264 80044664 00000000 */ nop +/* 045268 80044668 C58C0010 */ lwc1 $f12, 0x10($t4) +/* 04526C 8004466C 0C007106 */ jal func_8001C418 +/* 045270 80044670 AFA60074 */ sw $a2, 0x74($sp) +/* 045274 80044674 920301CD */ lbu $v1, 0x1cd($s0) +/* 045278 80044678 8FA60074 */ lw $a2, 0x74($sp) +/* 04527C 8004467C 246DFFFF */ addiu $t5, $v1, -1 +/* 045280 80044680 2DA10007 */ sltiu $at, $t5, 7 +/* 045284 80044684 A2020212 */ sb $v0, 0x212($s0) +/* 045288 80044688 10200245 */ beqz $at, .L80044FA0 +/* 04528C 8004468C 24050001 */ li $a1, 1 +/* 045290 80044690 000D6880 */ sll $t5, $t5, 2 +/* 045294 80044694 3C01800E */ lui $at, 0x800e +/* 045298 80044698 002D0821 */ addu $at, $at, $t5 +/* 04529C 8004469C 8C2D6318 */ lw $t5, 0x6318($at) +/* 0452A0 800446A0 00000000 */ nop +/* 0452A4 800446A4 01A00008 */ jr $t5 +/* 0452A8 800446A8 00000000 */ nop +/* 0452AC 800446AC 00002025 */ move $a0, $zero +/* 0452B0 800446B0 0C01BE53 */ jal func_8006F94C +/* 0452B4 800446B4 24050009 */ li $a1, 9 +/* 0452B8 800446B8 820E0173 */ lb $t6, 0x173($s0) +/* 0452BC 800446BC 8FAD0038 */ lw $t5, 0x38($sp) +/* 0452C0 800446C0 15C00035 */ bnez $t6, .L80044798 +/* 0452C4 800446C4 00000000 */ nop +/* 0452C8 800446C8 8FAF0038 */ lw $t7, 0x38($sp) +/* 0452CC 800446CC 00000000 */ nop +/* 0452D0 800446D0 81E40003 */ lb $a0, 3($t7) +/* 0452D4 800446D4 0C011114 */ jal func_80044450 +/* 0452D8 800446D8 00000000 */ nop +/* 0452DC 800446DC 10400003 */ beqz $v0, .L800446EC +/* 0452E0 800446E0 24190003 */ li $t9, 3 +/* 0452E4 800446E4 1000022E */ b .L80044FA0 +/* 0452E8 800446E8 A21901CD */ sb $t9, 0x1cd($s0) +.L800446EC: +/* 0452EC 800446EC 8FB80038 */ lw $t8, 0x38($sp) +/* 0452F0 800446F0 00000000 */ nop +/* 0452F4 800446F4 83040006 */ lb $a0, 6($t8) +/* 0452F8 800446F8 0C011114 */ jal func_80044450 +/* 0452FC 800446FC 00000000 */ nop +/* 045300 80044700 1040000D */ beqz $v0, .L80044738 +/* 045304 80044704 8FAF0038 */ lw $t7, 0x38($sp) +/* 045308 80044708 83AC003F */ lb $t4, 0x3f($sp) +/* 04530C 8004470C 24010041 */ li $at, 65 +/* 045310 80044710 15810009 */ bne $t4, $at, .L80044738 +/* 045314 80044714 8FAF0038 */ lw $t7, 0x38($sp) +/* 045318 80044718 820D0185 */ lb $t5, 0x185($s0) +/* 04531C 8004471C 240E0007 */ li $t6, 7 +/* 045320 80044720 29A10002 */ slti $at, $t5, 2 +/* 045324 80044724 14200004 */ bnez $at, .L80044738 +/* 045328 80044728 8FAF0038 */ lw $t7, 0x38($sp) +/* 04532C 8004472C 1000021C */ b .L80044FA0 +/* 045330 80044730 A20E01CD */ sb $t6, 0x1cd($s0) +/* 045334 80044734 8FAF0038 */ lw $t7, 0x38($sp) +.L80044738: +/* 045338 80044738 00000000 */ nop +/* 04533C 8004473C 81E40005 */ lb $a0, 5($t7) +/* 045340 80044740 0C011114 */ jal func_80044450 +/* 045344 80044744 00000000 */ nop +/* 045348 80044748 1040000E */ beqz $v0, .L80044784 +/* 04534C 8004474C 3C188012 */ lui $t8, %hi(D_8011D58C) # $t8, 0x8012 +/* 045350 80044750 82190002 */ lb $t9, 2($s0) +/* 045354 80044754 2718D58C */ addiu $t8, %lo(D_8011D58C) # addiu $t8, $t8, -0x2a74 +/* 045358 80044758 03381021 */ addu $v0, $t9, $t8 +/* 04535C 8004475C 804C0000 */ lb $t4, ($v0) +/* 045360 80044760 240D04B0 */ li $t5, 1200 +/* 045364 80044764 11800007 */ beqz $t4, .L80044784 +/* 045368 80044768 24190005 */ li $t9, 5 +/* 04536C 8004476C A60D01C6 */ sh $t5, 0x1c6($s0) +/* 045370 80044770 804E0000 */ lb $t6, ($v0) +/* 045374 80044774 A21901CD */ sb $t9, 0x1cd($s0) +/* 045378 80044778 25CFFFFF */ addiu $t7, $t6, -1 +/* 04537C 8004477C 10000208 */ b .L80044FA0 +/* 045380 80044780 A20F01CF */ sb $t7, 0x1cf($s0) +.L80044784: +/* 045384 80044784 24180002 */ li $t8, 2 +/* 045388 80044788 240C012C */ li $t4, 300 +/* 04538C 8004478C A21801CD */ sb $t8, 0x1cd($s0) +/* 045390 80044790 10000203 */ b .L80044FA0 +/* 045394 80044794 A60C01C6 */ sh $t4, 0x1c6($s0) +.L80044798: +/* 045398 80044798 81A40006 */ lb $a0, 6($t5) +/* 04539C 8004479C 0C011114 */ jal func_80044450 +/* 0453A0 800447A0 00000000 */ nop +/* 0453A4 800447A4 1040000D */ beqz $v0, .L800447DC +/* 0453A8 800447A8 8FB80038 */ lw $t8, 0x38($sp) +/* 0453AC 800447AC 83AE003F */ lb $t6, 0x3f($sp) +/* 0453B0 800447B0 24010041 */ li $at, 65 +/* 0453B4 800447B4 15C10009 */ bne $t6, $at, .L800447DC +/* 0453B8 800447B8 8FB80038 */ lw $t8, 0x38($sp) +/* 0453BC 800447BC 820F0185 */ lb $t7, 0x185($s0) +/* 0453C0 800447C0 24190007 */ li $t9, 7 +/* 0453C4 800447C4 29E10002 */ slti $at, $t7, 2 +/* 0453C8 800447C8 14200004 */ bnez $at, .L800447DC +/* 0453CC 800447CC 8FB80038 */ lw $t8, 0x38($sp) +/* 0453D0 800447D0 100001F3 */ b .L80044FA0 +/* 0453D4 800447D4 A21901CD */ sb $t9, 0x1cd($s0) +/* 0453D8 800447D8 8FB80038 */ lw $t8, 0x38($sp) +.L800447DC: +/* 0453DC 800447DC 00000000 */ nop +/* 0453E0 800447E0 83040000 */ lb $a0, ($t8) +/* 0453E4 800447E4 0C011114 */ jal func_80044450 +/* 0453E8 800447E8 00000000 */ nop +/* 0453EC 800447EC 10400081 */ beqz $v0, .L800449F4 +/* 0453F0 800447F0 24180002 */ li $t8, 2 +/* 0453F4 800447F4 0C011114 */ jal func_80044450 +/* 0453F8 800447F8 24040032 */ li $a0, 50 +/* 0453FC 800447FC 8FAC0038 */ lw $t4, 0x38($sp) +/* 045400 80044800 10400003 */ beqz $v0, .L80044810 +/* 045404 80044804 00005025 */ move $t2, $zero +/* 045408 80044808 10000001 */ b .L80044810 +/* 04540C 8004480C 240A0001 */ li $t2, 1 +.L80044810: +/* 045410 80044810 81840001 */ lb $a0, 1($t4) +/* 045414 80044814 0C011114 */ jal func_80044450 +/* 045418 80044818 A7AA004C */ sh $t2, 0x4c($sp) +/* 04541C 8004481C 87AA004C */ lh $t2, 0x4c($sp) +/* 045420 80044820 10400003 */ beqz $v0, .L80044830 +/* 045424 80044824 2408FFFF */ li $t0, -1 +/* 045428 80044828 10000002 */ b .L80044834 +/* 04542C 8004482C 00004825 */ move $t1, $zero +.L80044830: +/* 045430 80044830 24090001 */ li $t1, 1 +.L80044834: +/* 045434 80044834 01203825 */ move $a3, $t1 +/* 045438 80044838 00076D00 */ sll $t5, $a3, 0x14 +/* 04543C 8004483C 000D3C03 */ sra $a3, $t5, 0x10 +/* 045440 80044840 00002825 */ move $a1, $zero +.L80044844: +/* 045444 80044844 11400006 */ beqz $t2, .L80044860 +/* 045448 80044848 3C0D8012 */ lui $t5, 0x8012 +/* 04544C 8004484C 240F0003 */ li $t7, 3 +/* 045450 80044850 01E53023 */ subu $a2, $t7, $a1 +/* 045454 80044854 0006CC00 */ sll $t9, $a2, 0x10 +/* 045458 80044858 10000004 */ b .L8004486C +/* 04545C 8004485C 00193403 */ sra $a2, $t9, 0x10 +.L80044860: +/* 045460 80044860 00053400 */ sll $a2, $a1, 0x10 +/* 045464 80044864 00066403 */ sra $t4, $a2, 0x10 +/* 045468 80044868 01803025 */ move $a2, $t4 +.L8004486C: +/* 04546C 8004486C 01A66821 */ addu $t5, $t5, $a2 +/* 045470 80044870 81ADD58C */ lb $t5, -0x2a74($t5) +/* 045474 80044874 00000000 */ nop +/* 045478 80044878 15A0002D */ bnez $t5, .L80044930 +/* 04547C 8004487C 00000000 */ nop +/* 045480 80044880 820E0002 */ lb $t6, 2($s0) +/* 045484 80044884 00C02025 */ move $a0, $a2 +/* 045488 80044888 10CE0029 */ beq $a2, $t6, .L80044930 +/* 04548C 8004488C 00000000 */ nop +/* 045490 80044890 A7A50052 */ sh $a1, 0x52($sp) +/* 045494 80044894 A7A60050 */ sh $a2, 0x50($sp) +/* 045498 80044898 A7A70048 */ sh $a3, 0x48($sp) +/* 04549C 8004489C A7A8004A */ sh $t0, 0x4a($sp) +/* 0454A0 800448A0 A7A90046 */ sh $t1, 0x46($sp) +/* 0454A4 800448A4 0C006EB2 */ jal func_8001BAC8 +/* 0454A8 800448A8 A7AA004C */ sh $t2, 0x4c($sp) +/* 0454AC 800448AC 87A90046 */ lh $t1, 0x46($sp) +/* 0454B0 800448B0 87A50052 */ lh $a1, 0x52($sp) +/* 0454B4 800448B4 87A60050 */ lh $a2, 0x50($sp) +/* 0454B8 800448B8 87A70048 */ lh $a3, 0x48($sp) +/* 0454BC 800448BC 87A8004A */ lh $t0, 0x4a($sp) +/* 0454C0 800448C0 87AA004C */ lh $t2, 0x4c($sp) +/* 0454C4 800448C4 8C430064 */ lw $v1, 0x64($v0) +/* 0454C8 800448C8 1520000D */ bnez $t1, .L80044900 +/* 0454CC 800448CC 00000000 */ nop +/* 0454D0 800448D0 80620185 */ lb $v0, 0x185($v1) +/* 0454D4 800448D4 00000000 */ nop +/* 0454D8 800448D8 00E2082A */ slt $at, $a3, $v0 +/* 0454DC 800448DC 10200014 */ beqz $at, .L80044930 +/* 0454E0 800448E0 00000000 */ nop +/* 0454E4 800448E4 00023C00 */ sll $a3, $v0, 0x10 +/* 0454E8 800448E8 00064400 */ sll $t0, $a2, 0x10 +/* 0454EC 800448EC 00077C03 */ sra $t7, $a3, 0x10 +/* 0454F0 800448F0 0008CC03 */ sra $t9, $t0, 0x10 +/* 0454F4 800448F4 01E03825 */ move $a3, $t7 +/* 0454F8 800448F8 1000000D */ b .L80044930 +/* 0454FC 800448FC 03204025 */ move $t0, $t9 +.L80044900: +/* 045500 80044900 80620185 */ lb $v0, 0x185($v1) +/* 045504 80044904 00000000 */ nop +/* 045508 80044908 18400009 */ blez $v0, .L80044930 +/* 04550C 8004490C 0047082A */ slt $at, $v0, $a3 +/* 045510 80044910 10200007 */ beqz $at, .L80044930 +/* 045514 80044914 00000000 */ nop +/* 045518 80044918 00023C00 */ sll $a3, $v0, 0x10 +/* 04551C 8004491C 00064400 */ sll $t0, $a2, 0x10 +/* 045520 80044920 0007C403 */ sra $t8, $a3, 0x10 +/* 045524 80044924 00086403 */ sra $t4, $t0, 0x10 +/* 045528 80044928 03003825 */ move $a3, $t8 +/* 04552C 8004492C 01804025 */ move $t0, $t4 +.L80044930: +/* 045530 80044930 24A50001 */ addiu $a1, $a1, 1 +/* 045534 80044934 00056C00 */ sll $t5, $a1, 0x10 +/* 045538 80044938 000D2C03 */ sra $a1, $t5, 0x10 +/* 04553C 8004493C 28A10004 */ slti $at, $a1, 4 +/* 045540 80044940 1420FFC0 */ bnez $at, .L80044844 +/* 045544 80044944 00000000 */ nop +/* 045548 80044948 8FAF0038 */ lw $t7, 0x38($sp) +/* 04554C 8004494C 00000000 */ nop +/* 045550 80044950 81E40002 */ lb $a0, 2($t7) +/* 045554 80044954 A7A8004A */ sh $t0, 0x4a($sp) +/* 045558 80044958 0C011114 */ jal func_80044450 +/* 04555C 8004495C A7A60050 */ sh $a2, 0x50($sp) +/* 045560 80044960 87A60050 */ lh $a2, 0x50($sp) +/* 045564 80044964 87A8004A */ lh $t0, 0x4a($sp) +/* 045568 80044968 10400011 */ beqz $v0, .L800449B0 +/* 04556C 8004496C 00000000 */ nop +/* 045570 80044970 A7A60050 */ sh $a2, 0x50($sp) +/* 045574 80044974 0C019884 */ jal func_80066210 +/* 045578 80044978 A7A8004A */ sh $t0, 0x4a($sp) +/* 04557C 8004497C 87A60050 */ lh $a2, 0x50($sp) +/* 045580 80044980 87A8004A */ lh $t0, 0x4a($sp) +/* 045584 80044984 1440000A */ bnez $v0, .L800449B0 +/* 045588 80044988 00C02025 */ move $a0, $a2 +/* 04558C 8004498C 0C006EB2 */ jal func_8001BAC8 +/* 045590 80044990 A7A8004A */ sh $t0, 0x4a($sp) +/* 045594 80044994 8C430064 */ lw $v1, 0x64($v0) +/* 045598 80044998 87A8004A */ lh $t0, 0x4a($sp) +/* 04559C 8004499C 80790185 */ lb $t9, 0x185($v1) +/* 0455A0 800449A0 00000000 */ nop +/* 0455A4 800449A4 1B200002 */ blez $t9, .L800449B0 +/* 0455A8 800449A8 00000000 */ nop +/* 0455AC 800449AC 00004025 */ move $t0, $zero +.L800449B0: +/* 0455B0 800449B0 0500000C */ bltz $t0, .L800449E4 +/* 0455B4 800449B4 240F0002 */ li $t7, 2 +/* 0455B8 800449B8 82180002 */ lb $t8, 2($s0) +/* 0455BC 800449BC 3C018012 */ lui $at, 0x8012 +/* 0455C0 800449C0 A20801CF */ sb $t0, 0x1cf($s0) +/* 0455C4 800449C4 00280821 */ addu $at, $at, $t0 +/* 0455C8 800449C8 270C0001 */ addiu $t4, $t8, 1 +/* 0455CC 800449CC A02CD58C */ sb $t4, -0x2a74($at) +/* 0455D0 800449D0 240D0004 */ li $t5, 4 +/* 0455D4 800449D4 240E04B0 */ li $t6, 1200 +/* 0455D8 800449D8 A20D01CD */ sb $t5, 0x1cd($s0) +/* 0455DC 800449DC 10000170 */ b .L80044FA0 +/* 0455E0 800449E0 A60E01C6 */ sh $t6, 0x1c6($s0) +.L800449E4: +/* 0455E4 800449E4 241904B0 */ li $t9, 1200 +/* 0455E8 800449E8 A20F01CD */ sb $t7, 0x1cd($s0) +/* 0455EC 800449EC 1000016C */ b .L80044FA0 +/* 0455F0 800449F0 A61901C6 */ sh $t9, 0x1c6($s0) +.L800449F4: +/* 0455F4 800449F4 240C012C */ li $t4, 300 +/* 0455F8 800449F8 A21801CD */ sb $t8, 0x1cd($s0) +/* 0455FC 800449FC 10000168 */ b .L80044FA0 +/* 045600 80044A00 A60C01C6 */ sh $t4, 0x1c6($s0) +/* 045604 80044A04 246DFFFE */ addiu $t5, $v1, -2 +/* 045608 80044A08 2DA10006 */ sltiu $at, $t5, 6 +/* 04560C 80044A0C 10200033 */ beqz $at, .L80044ADC +/* 045610 80044A10 000D6880 */ sll $t5, $t5, 2 +/* 045614 80044A14 3C01800E */ lui $at, 0x800e +/* 045618 80044A18 002D0821 */ addu $at, $at, $t5 +/* 04561C 80044A1C 8C2D6334 */ lw $t5, 0x6334($at) +/* 045620 80044A20 00000000 */ nop +/* 045624 80044A24 01A00008 */ jr $t5 +/* 045628 80044A28 00000000 */ nop +/* 04562C 80044A2C 860E01C6 */ lh $t6, 0x1c6($s0) +/* 045630 80044A30 00000000 */ nop +/* 045634 80044A34 15C00029 */ bnez $t6, .L80044ADC +/* 045638 80044A38 00000000 */ nop +/* 04563C 80044A3C 10000027 */ b .L80044ADC +/* 045640 80044A40 A20501CD */ sb $a1, 0x1cd($s0) +/* 045644 80044A44 820F0172 */ lb $t7, 0x172($s0) +/* 045648 80044A48 24190002 */ li $t9, 2 +/* 04564C 80044A4C 11E00023 */ beqz $t7, .L80044ADC +/* 045650 80044A50 241800B4 */ li $t8, 180 +/* 045654 80044A54 A21901CD */ sb $t9, 0x1cd($s0) +/* 045658 80044A58 10000020 */ b .L80044ADC +/* 04565C 80044A5C A61801C6 */ sh $t8, 0x1c6($s0) +/* 045660 80044A60 820C0173 */ lb $t4, 0x173($s0) +/* 045664 80044A64 3C018012 */ lui $at, 0x8012 +/* 045668 80044A68 11800005 */ beqz $t4, .L80044A80 +/* 04566C 80044A6C 00000000 */ nop +/* 045670 80044A70 860D01C6 */ lh $t5, 0x1c6($s0) +/* 045674 80044A74 00000000 */ nop +/* 045678 80044A78 15A00018 */ bnez $t5, .L80044ADC +/* 04567C 80044A7C 00000000 */ nop +.L80044A80: +/* 045680 80044A80 820E01CF */ lb $t6, 0x1cf($s0) +/* 045684 80044A84 A20501CD */ sb $a1, 0x1cd($s0) +/* 045688 80044A88 002E0821 */ addu $at, $at, $t6 +/* 04568C 80044A8C 10000013 */ b .L80044ADC +/* 045690 80044A90 A020D58C */ sb $zero, -0x2a74($at) +/* 045694 80044A94 820F0002 */ lb $t7, 2($s0) +/* 045698 80044A98 3C198012 */ lui $t9, 0x8012 +/* 04569C 80044A9C 032FC821 */ addu $t9, $t9, $t7 +/* 0456A0 80044AA0 8339D58C */ lb $t9, -0x2a74($t9) +/* 0456A4 80044AA4 00000000 */ nop +/* 0456A8 80044AA8 13200005 */ beqz $t9, .L80044AC0 +/* 0456AC 80044AAC 00000000 */ nop +/* 0456B0 80044AB0 861801C6 */ lh $t8, 0x1c6($s0) +/* 0456B4 80044AB4 00000000 */ nop +/* 0456B8 80044AB8 17000008 */ bnez $t8, .L80044ADC +/* 0456BC 80044ABC 00000000 */ nop +.L80044AC0: +/* 0456C0 80044AC0 10000006 */ b .L80044ADC +/* 0456C4 80044AC4 A20501CD */ sb $a1, 0x1cd($s0) +/* 0456C8 80044AC8 820C0185 */ lb $t4, 0x185($s0) +/* 0456CC 80044ACC 00000000 */ nop +/* 0456D0 80044AD0 15800002 */ bnez $t4, .L80044ADC +/* 0456D4 80044AD4 00000000 */ nop +/* 0456D8 80044AD8 A20501CD */ sb $a1, 0x1cd($s0) +.L80044ADC: +/* 0456DC 80044ADC 920401CE */ lbu $a0, 0x1ce($s0) +/* 0456E0 80044AE0 240100FF */ li $at, 255 +/* 0456E4 80044AE4 10810026 */ beq $a0, $at, .L80044B80 +/* 0456E8 80044AE8 00000000 */ nop +/* 0456EC 80044AEC 82030212 */ lb $v1, 0x212($s0) +/* 0456F0 80044AF0 AFA60074 */ sw $a2, 0x74($sp) +/* 0456F4 80044AF4 0C007485 */ jal func_8001D214 +/* 0456F8 80044AF8 A7A3004E */ sh $v1, 0x4e($sp) +/* 0456FC 80044AFC 8FAB006C */ lw $t3, 0x6c($sp) +/* 045700 80044B00 8C4A003C */ lw $t2, 0x3c($v0) +/* 045704 80044B04 8164000E */ lb $a0, 0xe($t3) +/* 045708 80044B08 8145000E */ lb $a1, 0xe($t2) +/* 04570C 80044B0C 87A3004E */ lh $v1, 0x4e($sp) +/* 045710 80044B10 8FA60074 */ lw $a2, 0x74($sp) +/* 045714 80044B14 0085082A */ slt $at, $a0, $a1 +/* 045718 80044B18 10200008 */ beqz $at, .L80044B3C +/* 04571C 80044B1C 00004825 */ move $t1, $zero +/* 045720 80044B20 00A3082A */ slt $at, $a1, $v1 +/* 045724 80044B24 14200003 */ bnez $at, .L80044B34 +/* 045728 80044B28 0064082A */ slt $at, $v1, $a0 +/* 04572C 80044B2C 10200009 */ beqz $at, .L80044B54 +/* 045730 80044B30 00000000 */ nop +.L80044B34: +/* 045734 80044B34 10000007 */ b .L80044B54 +/* 045738 80044B38 24090001 */ li $t1, 1 +.L80044B3C: +/* 04573C 80044B3C 0083082A */ slt $at, $a0, $v1 +/* 045740 80044B40 14200003 */ bnez $at, .L80044B50 +/* 045744 80044B44 0065082A */ slt $at, $v1, $a1 +/* 045748 80044B48 10200002 */ beqz $at, .L80044B54 +/* 04574C 80044B4C 00000000 */ nop +.L80044B50: +/* 045750 80044B50 24090001 */ li $t1, 1 +.L80044B54: +/* 045754 80044B54 1120000A */ beqz $t1, .L80044B80 +/* 045758 80044B58 240F0006 */ li $t7, 6 +/* 04575C 80044B5C 920D01CD */ lbu $t5, 0x1cd($s0) +/* 045760 80044B60 24010004 */ li $at, 4 +/* 045764 80044B64 15A10005 */ bne $t5, $at, .L80044B7C +/* 045768 80044B68 00000000 */ nop +/* 04576C 80044B6C 820E01CF */ lb $t6, 0x1cf($s0) +/* 045770 80044B70 3C018012 */ lui $at, 0x8012 +/* 045774 80044B74 002E0821 */ addu $at, $at, $t6 +/* 045778 80044B78 A020D58C */ sb $zero, -0x2a74($at) +.L80044B7C: +/* 04577C 80044B7C A20F01CD */ sb $t7, 0x1cd($s0) +.L80044B80: +/* 045780 80044B80 3C028012 */ lui $v0, %hi(D_8011D534) # $v0, 0x8012 +/* 045784 80044B84 8C42D534 */ lw $v0, %lo(D_8011D534)($v0) +/* 045788 80044B88 00000000 */ nop +/* 04578C 80044B8C 2841FFE3 */ slti $at, $v0, -0x1d +/* 045790 80044B90 1420000E */ bnez $at, .L80044BCC +/* 045794 80044B94 2841001E */ slti $at, $v0, 0x1e +/* 045798 80044B98 1020000C */ beqz $at, .L80044BCC +/* 04579C 80044B9C 00000000 */ nop +/* 0457A0 80044BA0 C60A002C */ lwc1 $f10, 0x2c($s0) +/* 0457A4 80044BA4 3C01C024 */ li $at, 0xC0240000 # -2.562500 +/* 0457A8 80044BA8 44814800 */ mtc1 $at, $f9 +/* 0457AC 80044BAC 44804000 */ mtc1 $zero, $f8 +/* 0457B0 80044BB0 46005421 */ cvt.d.s $f16, $f10 +/* 0457B4 80044BB4 4630403C */ c.lt.d $f8, $f16 +/* 0457B8 80044BB8 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 +/* 0457BC 80044BBC 4500001B */ bc1f .L80044C2C +/* 0457C0 80044BC0 34198000 */ li $t9, 32768 +/* 0457C4 80044BC4 10000019 */ b .L80044C2C +/* 0457C8 80044BC8 AC39D528 */ sw $t9, %lo(D_8011D528)($at) +.L80044BCC: +/* 0457CC 80044BCC C604002C */ lwc1 $f4, 0x2c($s0) +/* 0457D0 80044BD0 3C01C010 */ li $at, 0xC0100000 # -2.250000 +/* 0457D4 80044BD4 44819800 */ mtc1 $at, $f19 +/* 0457D8 80044BD8 44809000 */ mtc1 $zero, $f18 +/* 0457DC 80044BDC 460021A1 */ cvt.d.s $f6, $f4 +/* 0457E0 80044BE0 4626903C */ c.lt.d $f18, $f6 +/* 0457E4 80044BE4 44805000 */ mtc1 $zero, $f10 +/* 0457E8 80044BE8 45000005 */ bc1f .L80044C00 +/* 0457EC 80044BEC 240C4000 */ li $t4, 16384 +/* 0457F0 80044BF0 3418C000 */ li $t8, 49152 +/* 0457F4 80044BF4 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 +/* 0457F8 80044BF8 10000003 */ b .L80044C08 +/* 0457FC 80044BFC AC38D528 */ sw $t8, %lo(D_8011D528)($at) +.L80044C00: +/* 045800 80044C00 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 +/* 045804 80044C04 AC2CD528 */ sw $t4, %lo(D_8011D528)($at) +.L80044C08: +/* 045808 80044C08 C608002C */ lwc1 $f8, 0x2c($s0) +/* 04580C 80044C0C 3C01BFF0 */ li $at, 0xBFF00000 # -1.875000 +/* 045810 80044C10 44815800 */ mtc1 $at, $f11 +/* 045814 80044C14 46004421 */ cvt.d.s $f16, $f8 +/* 045818 80044C18 4630503C */ c.lt.d $f10, $f16 +/* 04581C 80044C1C 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 +/* 045820 80044C20 45000002 */ bc1f .L80044C2C +/* 045824 80044C24 340D8000 */ li $t5, 32768 +/* 045828 80044C28 AC2DD528 */ sw $t5, %lo(D_8011D528)($at) +.L80044C2C: +/* 04582C 80044C2C 8E080158 */ lw $t0, 0x158($s0) +/* 045830 80044C30 00000000 */ nop +/* 045834 80044C34 1100003B */ beqz $t0, .L80044D24 +/* 045838 80044C38 00000000 */ nop +/* 04583C 80044C3C C504000C */ lwc1 $f4, 0xc($t0) +/* 045840 80044C40 C4D2000C */ lwc1 $f18, 0xc($a2) +/* 045844 80044C44 C5060014 */ lwc1 $f6, 0x14($t0) +/* 045848 80044C48 46122001 */ sub.s $f0, $f4, $f18 +/* 04584C 80044C4C C4C80014 */ lwc1 $f8, 0x14($a2) +/* 045850 80044C50 46000282 */ mul.s $f10, $f0, $f0 +/* 045854 80044C54 46083381 */ sub.s $f14, $f6, $f8 +/* 045858 80044C58 E7A00064 */ swc1 $f0, 0x64($sp) +/* 04585C 80044C5C E7AE0060 */ swc1 $f14, 0x60($sp) +/* 045860 80044C60 460E7402 */ mul.s $f16, $f14, $f14 +/* 045864 80044C64 0C0326B4 */ jal sqrtf +/* 045868 80044C68 46105300 */ add.s $f12, $f10, $f16 +/* 04586C 80044C6C 44802800 */ mtc1 $zero, $f5 +/* 045870 80044C70 44802000 */ mtc1 $zero, $f4 +/* 045874 80044C74 460004A1 */ cvt.d.s $f18, $f0 +/* 045878 80044C78 4632203C */ c.lt.d $f4, $f18 +/* 04587C 80044C7C C7AE0060 */ lwc1 $f14, 0x60($sp) +/* 045880 80044C80 45000028 */ bc1f .L80044D24 +/* 045884 80044C84 00000000 */ nop +/* 045888 80044C88 C7AC0064 */ lwc1 $f12, 0x64($sp) +/* 04588C 80044C8C 0C01C1D4 */ jal func_80070750 +/* 045890 80044C90 00000000 */ nop +/* 045894 80044C94 24018000 */ li $at, -32768 +/* 045898 80044C98 00417021 */ addu $t6, $v0, $at +/* 04589C 80044C9C 31CFFFFF */ andi $t7, $t6, 0xffff +/* 0458A0 80044CA0 AFAF0058 */ sw $t7, 0x58($sp) +/* 0458A4 80044CA4 861901A0 */ lh $t9, 0x1a0($s0) +/* 0458A8 80044CA8 34018001 */ li $at, 32769 +/* 0458AC 80044CAC 3338FFFF */ andi $t8, $t9, 0xffff +/* 0458B0 80044CB0 01F81823 */ subu $v1, $t7, $t8 +/* 0458B4 80044CB4 0061082A */ slt $at, $v1, $at +/* 0458B8 80044CB8 14200003 */ bnez $at, .L80044CC8 +/* 0458BC 80044CBC 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 0458C0 80044CC0 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 0458C4 80044CC4 00611821 */ addu $v1, $v1, $at +.L80044CC8: +/* 0458C8 80044CC8 28618000 */ slti $at, $v1, -0x8000 +/* 0458CC 80044CCC 10200002 */ beqz $at, .L80044CD8 +/* 0458D0 80044CD0 3401FFFF */ li $at, 65535 +/* 0458D4 80044CD4 00611821 */ addu $v1, $v1, $at +.L80044CD8: +/* 0458D8 80044CD8 28611501 */ slti $at, $v1, 0x1501 +/* 0458DC 80044CDC 10200003 */ beqz $at, .L80044CEC +/* 0458E0 80044CE0 2861EB00 */ slti $at, $v1, -0x1500 +/* 0458E4 80044CE4 1020000F */ beqz $at, .L80044D24 +/* 0458E8 80044CE8 00000000 */ nop +.L80044CEC: +/* 0458EC 80044CEC C608002C */ lwc1 $f8, 0x2c($s0) +/* 0458F0 80044CF0 3C01C010 */ li $at, 0xC0100000 # -2.250000 +/* 0458F4 80044CF4 44813800 */ mtc1 $at, $f7 +/* 0458F8 80044CF8 44803000 */ mtc1 $zero, $f6 +/* 0458FC 80044CFC 460042A1 */ cvt.d.s $f10, $f8 +/* 045900 80044D00 462A303C */ c.lt.d $f6, $f10 +/* 045904 80044D04 3C018012 */ lui $at, 0x8012 +/* 045908 80044D08 45000005 */ bc1f .L80044D20 +/* 04590C 80044D0C 240D4000 */ li $t5, 16384 +/* 045910 80044D10 340CC000 */ li $t4, 49152 +/* 045914 80044D14 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 +/* 045918 80044D18 10000002 */ b .L80044D24 +/* 04591C 80044D1C AC2CD528 */ sw $t4, %lo(D_8011D528)($at) +.L80044D20: +/* 045920 80044D20 AC2DD528 */ sw $t5, %lo(D_8011D528)($at) +.L80044D24: +/* 045924 80044D24 3C01800E */ lui $at, %hi(D_800E6354) # $at, 0x800e +/* 045928 80044D28 C7B0005C */ lwc1 $f16, 0x5c($sp) +/* 04592C 80044D2C C4336350 */ lwc1 $f19, %lo(D_800E6350)($at) +/* 045930 80044D30 C4326354 */ lwc1 $f18, %lo(D_800E6354)($at) +/* 045934 80044D34 46008121 */ cvt.d.s $f4, $f16 +/* 045938 80044D38 4632203C */ c.lt.d $f4, $f18 +/* 04593C 80044D3C 8FAB006C */ lw $t3, 0x6c($sp) +/* 045940 80044D40 E7A40024 */ swc1 $f4, 0x24($sp) +/* 045944 80044D44 45000066 */ bc1f .L80044EE0 +/* 045948 80044D48 E7A50020 */ swc1 $f5, 0x20($sp) +/* 04594C 80044D4C 8E0E0158 */ lw $t6, 0x158($s0) +/* 045950 80044D50 00000000 */ nop +/* 045954 80044D54 15C00063 */ bnez $t6, .L80044EE4 +/* 045958 80044D58 3C014049 */ lui $at, 0x4049 +/* 04595C 80044D5C 920201CD */ lbu $v0, 0x1cd($s0) +/* 045960 80044D60 24010003 */ li $at, 3 +/* 045964 80044D64 1041000D */ beq $v0, $at, .L80044D9C +/* 045968 80044D68 24010004 */ li $at, 4 +/* 04596C 80044D6C 10410012 */ beq $v0, $at, .L80044DB8 +/* 045970 80044D70 00000000 */ nop +/* 045974 80044D74 921901CE */ lbu $t9, 0x1ce($s0) +/* 045978 80044D78 82070002 */ lb $a3, 2($s0) +/* 04597C 80044D7C 24010005 */ li $at, 5 +/* 045980 80044D80 1041002F */ beq $v0, $at, .L80044E40 +/* 045984 80044D84 AFB90028 */ sw $t9, 0x28($sp) +/* 045988 80044D88 24010007 */ li $at, 7 +/* 04598C 80044D8C 10410032 */ beq $v0, $at, .L80044E58 +/* 045990 80044D90 00000000 */ nop +/* 045994 80044D94 10000037 */ b .L80044E74 +/* 045998 80044D98 91640009 */ lbu $a0, 9($t3) +.L80044D9C: +/* 04599C 80044D9C 91640009 */ lbu $a0, 9($t3) +/* 0459A0 80044DA0 920601CE */ lbu $a2, 0x1ce($s0) +/* 0459A4 80044DA4 82070002 */ lb $a3, 2($s0) +/* 0459A8 80044DA8 0C00734A */ jal func_8001CD28 +/* 0459AC 80044DAC 24050001 */ li $a1, 1 +/* 0459B0 80044DB0 10000034 */ b .L80044E84 +/* 0459B4 80044DB4 AFA20058 */ sw $v0, 0x58($sp) +.L80044DB8: +/* 0459B8 80044DB8 820401CF */ lb $a0, 0x1cf($s0) +/* 0459BC 80044DBC 0C006EB2 */ jal func_8001BAC8 +/* 0459C0 80044DC0 00000000 */ nop +/* 0459C4 80044DC4 8C430064 */ lw $v1, 0x64($v0) +/* 0459C8 80044DC8 2401FFFF */ li $at, -1 +/* 0459CC 80044DCC 846F0000 */ lh $t7, ($v1) +/* 0459D0 80044DD0 8FB8006C */ lw $t8, 0x6c($sp) +/* 0459D4 80044DD4 15E1000C */ bne $t7, $at, .L80044E08 +/* 0459D8 80044DD8 00404025 */ move $t0, $v0 +/* 0459DC 80044DDC 8C680154 */ lw $t0, 0x154($v1) +/* 0459E0 80044DE0 93040009 */ lbu $a0, 9($t8) +/* 0459E4 80044DE4 8D0A003C */ lw $t2, 0x3c($t0) +/* 0459E8 80044DE8 920601CE */ lbu $a2, 0x1ce($s0) +/* 0459EC 80044DEC 91450009 */ lbu $a1, 9($t2) +/* 0459F0 80044DF0 82070002 */ lb $a3, 2($s0) +/* 0459F4 80044DF4 34AC0100 */ ori $t4, $a1, 0x100 +/* 0459F8 80044DF8 0C00734A */ jal func_8001CD28 +/* 0459FC 80044DFC 01802825 */ move $a1, $t4 +/* 045A00 80044E00 10000020 */ b .L80044E84 +/* 045A04 80044E04 AFA20058 */ sw $v0, 0x58($sp) +.L80044E08: +/* 045A08 80044E08 C50C000C */ lwc1 $f12, 0xc($t0) +/* 045A0C 80044E0C C50E0010 */ lwc1 $f14, 0x10($t0) +/* 045A10 80044E10 8D060014 */ lw $a2, 0x14($t0) +/* 045A14 80044E14 0C007149 */ jal func_8001C524 +/* 045A18 80044E18 00003825 */ move $a3, $zero +/* 045A1C 80044E1C AFA20058 */ sw $v0, 0x58($sp) +/* 045A20 80044E20 8FAD006C */ lw $t5, 0x6c($sp) +/* 045A24 80044E24 82070002 */ lb $a3, 2($s0) +/* 045A28 80044E28 920601CE */ lbu $a2, 0x1ce($s0) +/* 045A2C 80044E2C 91A40009 */ lbu $a0, 9($t5) +/* 045A30 80044E30 0C00734A */ jal func_8001CD28 +/* 045A34 80044E34 34450100 */ ori $a1, $v0, 0x100 +/* 045A38 80044E38 10000012 */ b .L80044E84 +/* 045A3C 80044E3C AFA20058 */ sw $v0, 0x58($sp) +.L80044E40: +/* 045A40 80044E40 91640009 */ lbu $a0, 9($t3) +/* 045A44 80044E44 8FA60028 */ lw $a2, 0x28($sp) +/* 045A48 80044E48 0C00734A */ jal func_8001CD28 +/* 045A4C 80044E4C 24050001 */ li $a1, 1 +/* 045A50 80044E50 1000000C */ b .L80044E84 +/* 045A54 80044E54 AFA20058 */ sw $v0, 0x58($sp) +.L80044E58: +/* 045A58 80044E58 91640009 */ lbu $a0, 9($t3) +/* 045A5C 80044E5C 8FA60028 */ lw $a2, 0x28($sp) +/* 045A60 80044E60 0C00734A */ jal func_8001CD28 +/* 045A64 80044E64 24E50004 */ addiu $a1, $a3, 4 +/* 045A68 80044E68 10000006 */ b .L80044E84 +/* 045A6C 80044E6C AFA20058 */ sw $v0, 0x58($sp) +/* 045A70 80044E70 91640009 */ lbu $a0, 9($t3) +.L80044E74: +/* 045A74 80044E74 8FA50028 */ lw $a1, 0x28($sp) +/* 045A78 80044E78 0C007312 */ jal func_8001CC48 +/* 045A7C 80044E7C 00E03025 */ move $a2, $a3 +/* 045A80 80044E80 AFA20058 */ sw $v0, 0x58($sp) +.L80044E84: +/* 045A84 80044E84 240100FF */ li $at, 255 +/* 045A88 80044E88 10410008 */ beq $v0, $at, .L80044EAC +/* 045A8C 80044E8C 00000000 */ nop +/* 045A90 80044E90 8FA40058 */ lw $a0, 0x58($sp) +/* 045A94 80044E94 0C007485 */ jal func_8001D214 +/* 045A98 80044E98 00000000 */ nop +/* 045A9C 80044E9C AE020158 */ sw $v0, 0x158($s0) +/* 045AA0 80044EA0 8FAB006C */ lw $t3, 0x6c($sp) +/* 045AA4 80044EA4 1000000F */ b .L80044EE4 +/* 045AA8 80044EA8 3C014049 */ lui $at, 0x4049 +.L80044EAC: +/* 045AAC 80044EAC 920401CE */ lbu $a0, 0x1ce($s0) +/* 045AB0 80044EB0 240100FF */ li $at, 255 +/* 045AB4 80044EB4 10810007 */ beq $a0, $at, .L80044ED4 +/* 045AB8 80044EB8 00000000 */ nop +/* 045ABC 80044EBC 0C007485 */ jal func_8001D214 +/* 045AC0 80044EC0 00000000 */ nop +/* 045AC4 80044EC4 AE020158 */ sw $v0, 0x158($s0) +/* 045AC8 80044EC8 8FAB006C */ lw $t3, 0x6c($sp) +/* 045ACC 80044ECC 10000005 */ b .L80044EE4 +/* 045AD0 80044ED0 3C014049 */ lui $at, 0x4049 +.L80044ED4: +/* 045AD4 80044ED4 AE000158 */ sw $zero, 0x158($s0) +/* 045AD8 80044ED8 8FAB006C */ lw $t3, 0x6c($sp) +/* 045ADC 80044EDC 00000000 */ nop +.L80044EE0: +/* 045AE0 80044EE0 3C014049 */ li $at, 0x40490000 # 3.140625 +.L80044EE4: +/* 045AE4 80044EE4 44813800 */ mtc1 $at, $f7 +/* 045AE8 80044EE8 C7A90020 */ lwc1 $f9, 0x20($sp) +/* 045AEC 80044EEC C7A80024 */ lwc1 $f8, 0x24($sp) +/* 045AF0 80044EF0 44803000 */ mtc1 $zero, $f6 +/* 045AF4 80044EF4 3C014074 */ li $at, 0x40740000 # 3.812500 +/* 045AF8 80044EF8 4626403C */ c.lt.d $f8, $f6 +/* 045AFC 80044EFC 00000000 */ nop +/* 045B00 80044F00 4501000C */ bc1t .L80044F34 +/* 045B04 80044F04 00000000 */ nop +/* 045B08 80044F08 44815800 */ mtc1 $at, $f11 +/* 045B0C 80044F0C 44805000 */ mtc1 $zero, $f10 +/* 045B10 80044F10 00000000 */ nop +/* 045B14 80044F14 4628503C */ c.lt.d $f10, $f8 +/* 045B18 80044F18 00000000 */ nop +/* 045B1C 80044F1C 45000021 */ bc1f .L80044FA4 +/* 045B20 80044F20 00002825 */ move $a1, $zero +/* 045B24 80044F24 8E0E0158 */ lw $t6, 0x158($s0) +/* 045B28 80044F28 00000000 */ nop +/* 045B2C 80044F2C 11C0001D */ beqz $t6, .L80044FA4 +/* 045B30 80044F30 00002825 */ move $a1, $zero +.L80044F34: +/* 045B34 80044F34 91790009 */ lbu $t9, 9($t3) +/* 045B38 80044F38 8E020158 */ lw $v0, 0x158($s0) +/* 045B3C 80044F3C A21901CE */ sb $t9, 0x1ce($s0) +/* 045B40 80044F40 14400002 */ bnez $v0, .L80044F4C +/* 045B44 80044F44 AE020154 */ sw $v0, 0x154($s0) +/* 045B48 80044F48 A20001CD */ sb $zero, 0x1cd($s0) +.L80044F4C: +/* 045B4C 80044F4C 10000014 */ b .L80044FA0 +/* 045B50 80044F50 AE000158 */ sw $zero, 0x158($s0) +/* 045B54 80044F54 8FAF0078 */ lw $t7, 0x78($sp) +/* 045B58 80044F58 24070002 */ li $a3, 2 +/* 045B5C 80044F5C C5EC000C */ lwc1 $f12, 0xc($t7) +/* 045B60 80044F60 C5EE0010 */ lwc1 $f14, 0x10($t7) +/* 045B64 80044F64 8DE60014 */ lw $a2, 0x14($t7) +/* 045B68 80044F68 0C007149 */ jal func_8001C524 +/* 045B6C 80044F6C 00000000 */ nop +/* 045B70 80044F70 240100FF */ li $at, 255 +/* 045B74 80044F74 24050001 */ li $a1, 1 +/* 045B78 80044F78 10410008 */ beq $v0, $at, .L80044F9C +/* 045B7C 80044F7C AFA20058 */ sw $v0, 0x58($sp) +/* 045B80 80044F80 0C007485 */ jal func_8001D214 +/* 045B84 80044F84 00402025 */ move $a0, $v0 +/* 045B88 80044F88 24050001 */ li $a1, 1 +/* 045B8C 80044F8C 241800FF */ li $t8, 255 +/* 045B90 80044F90 AE020154 */ sw $v0, 0x154($s0) +/* 045B94 80044F94 A20501CD */ sb $a1, 0x1cd($s0) +/* 045B98 80044F98 A21801CE */ sb $t8, 0x1ce($s0) +.L80044F9C: +/* 045B9C 80044F9C A20501C9 */ sb $a1, 0x1c9($s0) +.L80044FA0: +/* 045BA0 80044FA0 00002825 */ move $a1, $zero +.L80044FA4: +/* 045BA4 80044FA4 820C0002 */ lb $t4, 2($s0) +/* 045BA8 80044FA8 00A02025 */ move $a0, $a1 +/* 045BAC 80044FAC 10AC0054 */ beq $a1, $t4, .L80045100 +/* 045BB0 80044FB0 00000000 */ nop +/* 045BB4 80044FB4 0C006EB2 */ jal func_8001BAC8 +/* 045BB8 80044FB8 A7A50052 */ sh $a1, 0x52($sp) +/* 045BBC 80044FBC 8C430064 */ lw $v1, 0x64($v0) +/* 045BC0 80044FC0 87A50052 */ lh $a1, 0x52($sp) +/* 045BC4 80044FC4 846D0000 */ lh $t5, ($v1) +/* 045BC8 80044FC8 2401FFFF */ li $at, -1 +/* 045BCC 80044FCC 11A10005 */ beq $t5, $at, .L80044FE4 +/* 045BD0 80044FD0 00404025 */ move $t0, $v0 +/* 045BD4 80044FD4 806E0212 */ lb $t6, 0x212($v1) +/* 045BD8 80044FD8 3C018012 */ lui $at, 0x8012 +/* 045BDC 80044FDC 00250821 */ addu $at, $at, $a1 +/* 045BE0 80044FE0 A02ED5B4 */ sb $t6, -0x2a4c($at) +.L80044FE4: +/* 045BE4 80044FE4 3C0F8012 */ lui $t7, %hi(D_8011D5B4) # $t7, 0x8012 +/* 045BE8 80044FE8 82190002 */ lb $t9, 2($s0) +/* 045BEC 80044FEC 25EFD5B4 */ addiu $t7, %lo(D_8011D5B4) # addiu $t7, $t7, -0x2a4c +/* 045BF0 80044FF0 00AF6821 */ addu $t5, $a1, $t7 +/* 045BF4 80044FF4 032FC021 */ addu $t8, $t9, $t7 +/* 045BF8 80044FF8 830C0000 */ lb $t4, ($t8) +/* 045BFC 80044FFC 81AE0000 */ lb $t6, ($t5) +/* 045C00 80045000 8FA20078 */ lw $v0, 0x78($sp) +/* 045C04 80045004 158E003E */ bne $t4, $t6, .L80045100 +/* 045C08 80045008 00000000 */ nop +/* 045C0C 8004500C C450000C */ lwc1 $f16, 0xc($v0) +/* 045C10 80045010 C504000C */ lwc1 $f4, 0xc($t0) +/* 045C14 80045014 C4520014 */ lwc1 $f18, 0x14($v0) +/* 045C18 80045018 46048001 */ sub.s $f0, $f16, $f4 +/* 045C1C 8004501C C5060014 */ lwc1 $f6, 0x14($t0) +/* 045C20 80045020 46000282 */ mul.s $f10, $f0, $f0 +/* 045C24 80045024 46069381 */ sub.s $f14, $f18, $f6 +/* 045C28 80045028 E7A00064 */ swc1 $f0, 0x64($sp) +/* 045C2C 8004502C E7AE0060 */ swc1 $f14, 0x60($sp) +/* 045C30 80045030 460E7202 */ mul.s $f8, $f14, $f14 +/* 045C34 80045034 A7A50052 */ sh $a1, 0x52($sp) +/* 045C38 80045038 0C0326B4 */ jal sqrtf +/* 045C3C 8004503C 46085300 */ add.s $f12, $f10, $f8 +/* 045C40 80045040 3C014089 */ li $at, 0x40890000 # 4.281250 +/* 045C44 80045044 44812800 */ mtc1 $at, $f5 +/* 045C48 80045048 44802000 */ mtc1 $zero, $f4 +/* 045C4C 8004504C 46000421 */ cvt.d.s $f16, $f0 +/* 045C50 80045050 4624803C */ c.lt.d $f16, $f4 +/* 045C54 80045054 87A50052 */ lh $a1, 0x52($sp) +/* 045C58 80045058 C7AE0060 */ lwc1 $f14, 0x60($sp) +/* 045C5C 8004505C 45000028 */ bc1f .L80045100 +/* 045C60 80045060 00000000 */ nop +/* 045C64 80045064 C7AC0064 */ lwc1 $f12, 0x64($sp) +/* 045C68 80045068 0C01C1D4 */ jal func_80070750 +/* 045C6C 8004506C A7A50052 */ sh $a1, 0x52($sp) +/* 045C70 80045070 8FB90078 */ lw $t9, 0x78($sp) +/* 045C74 80045074 AFA20058 */ sw $v0, 0x58($sp) +/* 045C78 80045078 87380000 */ lh $t8, ($t9) +/* 045C7C 8004507C 34018001 */ li $at, 32769 +/* 045C80 80045080 330FFFFF */ andi $t7, $t8, 0xffff +/* 045C84 80045084 004F6823 */ subu $t5, $v0, $t7 +/* 045C88 80045088 87A50052 */ lh $a1, 0x52($sp) +/* 045C8C 8004508C 01A1082A */ slt $at, $t5, $at +/* 045C90 80045090 14200004 */ bnez $at, .L800450A4 +/* 045C94 80045094 AFAD0058 */ sw $t5, 0x58($sp) +/* 045C98 80045098 3C0EFFFF */ lui $t6, (0xFFFF0001 >> 16) # lui $t6, 0xffff +/* 045C9C 8004509C 35CE0001 */ ori $t6, (0xFFFF0001 & 0xFFFF) # ori $t6, $t6, 1 +/* 045CA0 800450A0 AFAE0058 */ sw $t6, 0x58($sp) +.L800450A4: +/* 045CA4 800450A4 8FB90058 */ lw $t9, 0x58($sp) +/* 045CA8 800450A8 3418FFFF */ li $t8, 65535 +/* 045CAC 800450AC 2B218000 */ slti $at, $t9, -0x8000 +/* 045CB0 800450B0 10200002 */ beqz $at, .L800450BC +/* 045CB4 800450B4 24030800 */ li $v1, 2048 +/* 045CB8 800450B8 AFB80058 */ sw $t8, 0x58($sp) +.L800450BC: +/* 045CBC 800450BC 820F0174 */ lb $t7, 0x174($s0) +/* 045CC0 800450C0 24010001 */ li $at, 1 +/* 045CC4 800450C4 15E10003 */ bne $t7, $at, .L800450D4 +/* 045CC8 800450C8 00000000 */ nop +/* 045CCC 800450CC 10000001 */ b .L800450D4 +/* 045CD0 800450D0 24031000 */ li $v1, 4096 +.L800450D4: +/* 045CD4 800450D4 8FAC0058 */ lw $t4, 0x58($sp) +/* 045CD8 800450D8 00036823 */ negu $t5, $v1 +/* 045CDC 800450DC 01AC082A */ slt $at, $t5, $t4 +/* 045CE0 800450E0 10200007 */ beqz $at, .L80045100 +/* 045CE4 800450E4 0183082A */ slt $at, $t4, $v1 +/* 045CE8 800450E8 10200005 */ beqz $at, .L80045100 +/* 045CEC 800450EC 3C0E8012 */ lui $t6, %hi(D_8011D530) # $t6, 0x8012 +/* 045CF0 800450F0 8DCED530 */ lw $t6, %lo(D_8011D530)($t6) +/* 045CF4 800450F4 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 +/* 045CF8 800450F8 35D92000 */ ori $t9, $t6, 0x2000 +/* 045CFC 800450FC AC39D530 */ sw $t9, %lo(D_8011D530)($at) +.L80045100: +/* 045D00 80045100 24A50001 */ addiu $a1, $a1, 1 +/* 045D04 80045104 0005C400 */ sll $t8, $a1, 0x10 +/* 045D08 80045108 00182C03 */ sra $a1, $t8, 0x10 +/* 045D0C 8004510C 28A10004 */ slti $at, $a1, 4 +/* 045D10 80045110 1420FFA4 */ bnez $at, .L80044FA4 +/* 045D14 80045114 00000000 */ nop +/* 045D18 80045118 8FBF001C */ lw $ra, 0x1c($sp) +.L8004511C: +/* 045D1C 8004511C 8FB00018 */ lw $s0, 0x18($sp) +/* 045D20 80045120 03E00008 */ jr $ra +/* 045D24 80045124 27BD0078 */ addiu $sp, $sp, 0x78 + diff --git a/asm/non_matchings/unknown_043920/func_80045128.s b/asm/non_matchings/unknown_043920/func_80045128.s new file mode 100644 index 00000000..52d825e6 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80045128.s @@ -0,0 +1,104 @@ +glabel func_80045128 +/* 045D28 80045128 8C8E0000 */ lw $t6, ($a0) +/* 045D2C 8004512C 3C018012 */ lui $at, %hi(D_8011D588) # $at, 0x8012 +/* 045D30 80045130 8DC20064 */ lw $v0, 0x64($t6) +/* 045D34 80045134 00801825 */ move $v1, $a0 +/* 045D38 80045138 804F0193 */ lb $t7, 0x193($v0) +/* 045D3C 8004513C 3C198012 */ lui $t9, %hi(D_8011D588) # $t9, 0x8012 +/* 045D40 80045140 A02FD588 */ sb $t7, %lo(D_8011D588)($at) +/* 045D44 80045144 805801CF */ lb $t8, 0x1cf($v0) +/* 045D48 80045148 3C0F8012 */ lui $t7, %hi(D_8011D589) # $t7, 0x8012 +/* 045D4C 8004514C 13000005 */ beqz $t8, .L80045164 +/* 045D50 80045150 3C0A8012 */ lui $t2, %hi(D_8011D588) # $t2, 0x8012 +/* 045D54 80045154 8339D588 */ lb $t9, %lo(D_8011D588)($t9) +/* 045D58 80045158 3C018012 */ lui $at, %hi(D_8011D588) # $at, 0x8012 +/* 045D5C 8004515C 37280040 */ ori $t0, $t9, 0x40 +/* 045D60 80045160 A028D588 */ sb $t0, %lo(D_8011D588)($at) +.L80045164: +/* 045D64 80045164 8C490144 */ lw $t1, 0x144($v0) +/* 045D68 80045168 3C088012 */ lui $t0, %hi(D_8011D589) # $t0, 0x8012 +/* 045D6C 8004516C 11200005 */ beqz $t1, .L80045184 +/* 045D70 80045170 00000000 */ nop +/* 045D74 80045174 814AD588 */ lb $t2, %lo(D_8011D588)($t2) +/* 045D78 80045178 3C018012 */ lui $at, %hi(D_8011D588) # $at, 0x8012 +/* 045D7C 8004517C 354B0080 */ ori $t3, $t2, 0x80 +/* 045D80 80045180 A02BD588 */ sb $t3, %lo(D_8011D588)($at) +.L80045184: +/* 045D84 80045184 8C6C0004 */ lw $t4, 4($v1) +/* 045D88 80045188 3C018012 */ lui $at, %hi(D_8011D589) # $at, 0x8012 +/* 045D8C 8004518C 8D820064 */ lw $v0, 0x64($t4) +/* 045D90 80045190 00000000 */ nop +/* 045D94 80045194 804D0193 */ lb $t5, 0x193($v0) +/* 045D98 80045198 00000000 */ nop +/* 045D9C 8004519C A02DD589 */ sb $t5, %lo(D_8011D589)($at) +/* 045DA0 800451A0 804E01CF */ lb $t6, 0x1cf($v0) +/* 045DA4 800451A4 3C0D8012 */ lui $t5, %hi(D_8011D58A) # $t5, 0x8012 +/* 045DA8 800451A8 11C00005 */ beqz $t6, .L800451C0 +/* 045DAC 800451AC 00000000 */ nop +/* 045DB0 800451B0 81EFD589 */ lb $t7, %lo(D_8011D589)($t7) +/* 045DB4 800451B4 3C018012 */ lui $at, %hi(D_8011D589) # $at, 0x8012 +/* 045DB8 800451B8 35F80040 */ ori $t8, $t7, 0x40 +/* 045DBC 800451BC A038D589 */ sb $t8, %lo(D_8011D589)($at) +.L800451C0: +/* 045DC0 800451C0 8C590144 */ lw $t9, 0x144($v0) +/* 045DC4 800451C4 3C188012 */ lui $t8, %hi(D_8011D58A) # $t8, 0x8012 +/* 045DC8 800451C8 13200005 */ beqz $t9, .L800451E0 +/* 045DCC 800451CC 00000000 */ nop +/* 045DD0 800451D0 8108D589 */ lb $t0, %lo(D_8011D589)($t0) +/* 045DD4 800451D4 3C018012 */ lui $at, %hi(D_8011D589) # $at, 0x8012 +/* 045DD8 800451D8 35090080 */ ori $t1, $t0, 0x80 +/* 045DDC 800451DC A029D589 */ sb $t1, %lo(D_8011D589)($at) +.L800451E0: +/* 045DE0 800451E0 8C6A0008 */ lw $t2, 8($v1) +/* 045DE4 800451E4 3C018012 */ lui $at, %hi(D_8011D58A) # $at, 0x8012 +/* 045DE8 800451E8 8D420064 */ lw $v0, 0x64($t2) +/* 045DEC 800451EC 00000000 */ nop +/* 045DF0 800451F0 804B0193 */ lb $t3, 0x193($v0) +/* 045DF4 800451F4 00000000 */ nop +/* 045DF8 800451F8 A02BD58A */ sb $t3, %lo(D_8011D58A)($at) +/* 045DFC 800451FC 804C01CF */ lb $t4, 0x1cf($v0) +/* 045E00 80045200 3C0B8012 */ lui $t3, %hi(D_8011D58B) # $t3, 0x8012 +/* 045E04 80045204 11800005 */ beqz $t4, .L8004521C +/* 045E08 80045208 00000000 */ nop +/* 045E0C 8004520C 81ADD58A */ lb $t5, %lo(D_8011D58A)($t5) +/* 045E10 80045210 3C018012 */ lui $at, %hi(D_8011D58A) # $at, 0x8012 +/* 045E14 80045214 35AE0040 */ ori $t6, $t5, 0x40 +/* 045E18 80045218 A02ED58A */ sb $t6, %lo(D_8011D58A)($at) +.L8004521C: +/* 045E1C 8004521C 8C4F0144 */ lw $t7, 0x144($v0) +/* 045E20 80045220 3C0E8012 */ lui $t6, %hi(D_8011D58B) # $t6, 0x8012 +/* 045E24 80045224 11E00005 */ beqz $t7, .L8004523C +/* 045E28 80045228 00000000 */ nop +/* 045E2C 8004522C 8318D58A */ lb $t8, %lo(D_8011D58A)($t8) +/* 045E30 80045230 3C018012 */ lui $at, %hi(D_8011D58A) # $at, 0x8012 +/* 045E34 80045234 37190080 */ ori $t9, $t8, 0x80 +/* 045E38 80045238 A039D58A */ sb $t9, %lo(D_8011D58A)($at) +.L8004523C: +/* 045E3C 8004523C 8C68000C */ lw $t0, 0xc($v1) +/* 045E40 80045240 3C018012 */ lui $at, %hi(D_8011D58B) # $at, 0x8012 +/* 045E44 80045244 8D020064 */ lw $v0, 0x64($t0) +/* 045E48 80045248 00000000 */ nop +/* 045E4C 8004524C 80490193 */ lb $t1, 0x193($v0) +/* 045E50 80045250 00000000 */ nop +/* 045E54 80045254 A029D58B */ sb $t1, %lo(D_8011D58B)($at) +/* 045E58 80045258 804A01CF */ lb $t2, 0x1cf($v0) +/* 045E5C 8004525C 00000000 */ nop +/* 045E60 80045260 11400005 */ beqz $t2, .L80045278 +/* 045E64 80045264 00000000 */ nop +/* 045E68 80045268 816BD58B */ lb $t3, %lo(D_8011D58B)($t3) +/* 045E6C 8004526C 3C018012 */ lui $at, %hi(D_8011D58B) # $at, 0x8012 +/* 045E70 80045270 356C0040 */ ori $t4, $t3, 0x40 +/* 045E74 80045274 A02CD58B */ sb $t4, %lo(D_8011D58B)($at) +.L80045278: +/* 045E78 80045278 8C4D0144 */ lw $t5, 0x144($v0) +/* 045E7C 8004527C 00000000 */ nop +/* 045E80 80045280 11A00005 */ beqz $t5, .L80045298 +/* 045E84 80045284 00000000 */ nop +/* 045E88 80045288 81CED58B */ lb $t6, %lo(D_8011D58B)($t6) +/* 045E8C 8004528C 3C018012 */ lui $at, %hi(D_8011D58B) # $at, 0x8012 +/* 045E90 80045290 35CF0080 */ ori $t7, $t6, 0x80 +/* 045E94 80045294 A02FD58B */ sb $t7, %lo(D_8011D58B)($at) +.L80045298: +/* 045E98 80045298 03E00008 */ jr $ra +/* 045E9C 8004529C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_800452A0.s b/asm/non_matchings/unknown_043920/func_800452A0.s new file mode 100644 index 00000000..1a4dab2d --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_800452A0.s @@ -0,0 +1,682 @@ +glabel func_800452A0 +/* 045EA0 800452A0 27BDFF48 */ addiu $sp, $sp, -0xb8 +/* 045EA4 800452A4 3C018012 */ lui $at, %hi(D_8011D52C) # $at, 0x8012 +/* 045EA8 800452A8 AC20D52C */ sw $zero, %lo(D_8011D52C)($at) +/* 045EAC 800452AC 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 +/* 045EB0 800452B0 AC20D530 */ sw $zero, %lo(D_8011D530)($at) +/* 045EB4 800452B4 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 +/* 045EB8 800452B8 340E8000 */ li $t6, 32768 +/* 045EBC 800452BC AC2ED528 */ sw $t6, %lo(D_8011D528)($at) +/* 045EC0 800452C0 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 045EC4 800452C4 AFB60048 */ sw $s6, 0x48($sp) +/* 045EC8 800452C8 AC20D534 */ sw $zero, %lo(D_8011D534)($at) +/* 045ECC 800452CC 0080B025 */ move $s6, $a0 +/* 045ED0 800452D0 AFBF0054 */ sw $ra, 0x54($sp) +/* 045ED4 800452D4 AFB50044 */ sw $s5, 0x44($sp) +/* 045ED8 800452D8 AFB00030 */ sw $s0, 0x30($sp) +/* 045EDC 800452DC 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 +/* 045EE0 800452E0 00C08025 */ move $s0, $a2 +/* 045EE4 800452E4 00A0A825 */ move $s5, $a1 +/* 045EE8 800452E8 AFBE0050 */ sw $fp, 0x50($sp) +/* 045EEC 800452EC AFB7004C */ sw $s7, 0x4c($sp) +/* 045EF0 800452F0 AFB40040 */ sw $s4, 0x40($sp) +/* 045EF4 800452F4 AFB3003C */ sw $s3, 0x3c($sp) +/* 045EF8 800452F8 AFB20038 */ sw $s2, 0x38($sp) +/* 045EFC 800452FC AFB10034 */ sw $s1, 0x34($sp) +/* 045F00 80045300 E7B90028 */ swc1 $f25, 0x28($sp) +/* 045F04 80045304 E7B8002C */ swc1 $f24, 0x2c($sp) +/* 045F08 80045308 E7B70020 */ swc1 $f23, 0x20($sp) +/* 045F0C 8004530C E7B60024 */ swc1 $f22, 0x24($sp) +/* 045F10 80045310 E7B50018 */ swc1 $f21, 0x18($sp) +/* 045F14 80045314 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 045F18 80045318 AC20D538 */ sw $zero, %lo(D_8011D538)($at) +/* 045F1C 8004531C 0C006E9D */ jal func_8001BA74 +/* 045F20 80045320 27A4009C */ addiu $a0, $sp, 0x9c +/* 045F24 80045324 8FAF009C */ lw $t7, 0x9c($sp) +/* 045F28 80045328 24010004 */ li $at, 4 +/* 045F2C 8004532C 15E10235 */ bne $t7, $at, .L80045C04 +/* 045F30 80045330 8FBF0054 */ lw $ra, 0x54($sp) +/* 045F34 80045334 0C01AF6C */ jal func_8006BDB0 +/* 045F38 80045338 00000000 */ nop +/* 045F3C 8004533C 2458002A */ addiu $t8, $v0, 0x2a +/* 045F40 80045340 AFB80074 */ sw $t8, 0x74($sp) +/* 045F44 80045344 82B901E2 */ lb $t9, 0x1e2($s5) +/* 045F48 80045348 00000000 */ nop +/* 045F4C 8004534C 1320000E */ beqz $t9, .L80045388 +/* 045F50 80045350 00000000 */ nop +/* 045F54 80045354 86A801C6 */ lh $t0, 0x1c6($s5) +/* 045F58 80045358 240B0003 */ li $t3, 3 +/* 045F5C 8004535C 01104821 */ addu $t1, $t0, $s0 +/* 045F60 80045360 A6A901C6 */ sh $t1, 0x1c6($s5) +/* 045F64 80045364 86AA01C6 */ lh $t2, 0x1c6($s5) +/* 045F68 80045368 00000000 */ nop +/* 045F6C 8004536C 2941003D */ slti $at, $t2, 0x3d +/* 045F70 80045370 14200006 */ bnez $at, .L8004538C +/* 045F74 80045374 00000000 */ nop +/* 045F78 80045378 A6A001C6 */ sh $zero, 0x1c6($s5) +/* 045F7C 8004537C A2A001CD */ sb $zero, 0x1cd($s5) +/* 045F80 80045380 10000002 */ b .L8004538C +/* 045F84 80045384 A2AB01CE */ sb $t3, 0x1ce($s5) +.L80045388: +/* 045F88 80045388 A6A001C6 */ sh $zero, 0x1c6($s5) +.L8004538C: +/* 045F8C 8004538C 92A301CD */ lbu $v1, 0x1cd($s5) +/* 045F90 80045390 00000000 */ nop +/* 045F94 80045394 14600144 */ bnez $v1, .L800458A8 +/* 045F98 80045398 00000000 */ nop +/* 045F9C 8004539C 8FBE0080 */ lw $fp, 0x80($sp) +/* 045FA0 800453A0 24170003 */ li $s7, 3 +.L800453A4: +/* 045FA4 800453A4 3C058012 */ lui $a1, %hi(D_8011D58B) # $a1, 0x8012 +/* 045FA8 800453A8 2411FFFF */ li $s1, -1 +/* 045FAC 800453AC 00008025 */ move $s0, $zero +/* 045FB0 800453B0 00009025 */ move $s2, $zero +/* 045FB4 800453B4 24A5D58B */ addiu $a1, %lo(D_8011D58B) # addiu $a1, $a1, -0x2a75 +/* 045FB8 800453B8 02E02025 */ move $a0, $s7 +/* 045FBC 800453BC 00009825 */ move $s3, $zero +.L800453C0: +/* 045FC0 800453C0 80A20000 */ lb $v0, ($a1) +/* 045FC4 800453C4 00000000 */ nop +/* 045FC8 800453C8 304C000F */ andi $t4, $v0, 0xf +/* 045FCC 800453CC 01970019 */ multu $t4, $s7 +/* 045FD0 800453D0 304F0040 */ andi $t7, $v0, 0x40 +/* 045FD4 800453D4 30480080 */ andi $t0, $v0, 0x80 +/* 045FD8 800453D8 00001812 */ mflo $v1 +/* 045FDC 800453DC 00036E00 */ sll $t5, $v1, 0x18 +/* 045FE0 800453E0 000D7603 */ sra $t6, $t5, 0x18 +/* 045FE4 800453E4 11E00005 */ beqz $t7, .L800453FC +/* 045FE8 800453E8 01C01825 */ move $v1, $t6 +/* 045FEC 800453EC 25C30002 */ addiu $v1, $t6, 2 +/* 045FF0 800453F0 0003C600 */ sll $t8, $v1, 0x18 +/* 045FF4 800453F4 10000006 */ b .L80045410 +/* 045FF8 800453F8 00181E03 */ sra $v1, $t8, 0x18 +.L800453FC: +/* 045FFC 800453FC 11000005 */ beqz $t0, .L80045414 +/* 046000 80045400 0243082A */ slt $at, $s2, $v1 +/* 046004 80045404 24630001 */ addiu $v1, $v1, 1 +/* 046008 80045408 00034E00 */ sll $t1, $v1, 0x18 +/* 04600C 8004540C 00091E03 */ sra $v1, $t1, 0x18 +.L80045410: +/* 046010 80045410 0243082A */ slt $at, $s2, $v1 +.L80045414: +/* 046014 80045414 10200007 */ beqz $at, .L80045434 +/* 046018 80045418 00000000 */ nop +/* 04601C 8004541C 00039600 */ sll $s2, $v1, 0x18 +/* 046020 80045420 00048600 */ sll $s0, $a0, 0x18 +/* 046024 80045424 00125E03 */ sra $t3, $s2, 0x18 +/* 046028 80045428 00106603 */ sra $t4, $s0, 0x18 +/* 04602C 8004542C 01609025 */ move $s2, $t3 +/* 046030 80045430 01808025 */ move $s0, $t4 +.L80045434: +/* 046034 80045434 2484FFFF */ addiu $a0, $a0, -1 +/* 046038 80045438 0481FFE1 */ bgez $a0, .L800453C0 +/* 04603C 8004543C 24A5FFFF */ addiu $a1, $a1, -1 +/* 046040 80045440 92A201CE */ lbu $v0, 0x1ce($s5) +/* 046044 80045444 24180008 */ li $t8, 8 +/* 046048 80045448 304D0040 */ andi $t5, $v0, 0x40 +/* 04604C 8004544C 11A00008 */ beqz $t5, .L80045470 +/* 046050 80045450 30590080 */ andi $t9, $v0, 0x80 +/* 046054 80045454 3051000F */ andi $s1, $v0, 0xf +/* 046058 80045458 00117600 */ sll $t6, $s1, 0x18 +/* 04605C 8004545C 000E8E03 */ sra $s1, $t6, 0x18 +/* 046060 80045460 A2B801CD */ sb $t8, 0x1cd($s5) +/* 046064 80045464 300200FF */ andi $v0, $zero, 0xff +/* 046068 80045468 A2A001CE */ sb $zero, 0x1ce($s5) +/* 04606C 8004546C 30590080 */ andi $t9, $v0, 0x80 +.L80045470: +/* 046070 80045470 1320005B */ beqz $t9, .L800455E0 +/* 046074 80045474 00000000 */ nop +/* 046078 80045478 8FA80074 */ lw $t0, 0x74($sp) +/* 04607C 8004547C 00000000 */ nop +/* 046080 80045480 81040006 */ lb $a0, 6($t0) +/* 046084 80045484 0C011114 */ jal func_80044450 +/* 046088 80045488 00000000 */ nop +/* 04608C 8004548C 10400004 */ beqz $v0, .L800454A0 +/* 046090 80045490 8FA90074 */ lw $t1, 0x74($sp) +/* 046094 80045494 1000000D */ b .L800454CC +/* 046098 80045498 24120002 */ li $s2, 2 +/* 04609C 8004549C 8FA90074 */ lw $t1, 0x74($sp) +.L800454A0: +/* 0460A0 800454A0 24120001 */ li $s2, 1 +/* 0460A4 800454A4 81240002 */ lb $a0, 2($t1) +/* 0460A8 800454A8 0C011114 */ jal func_80044450 +/* 0460AC 800454AC 00000000 */ nop +/* 0460B0 800454B0 10400007 */ beqz $v0, .L800454D0 +/* 0460B4 800454B4 24010002 */ li $at, 2 +/* 0460B8 800454B8 0C019884 */ jal func_80066210 +/* 0460BC 800454BC 00000000 */ nop +/* 0460C0 800454C0 14400003 */ bnez $v0, .L800454D0 +/* 0460C4 800454C4 24010002 */ li $at, 2 +/* 0460C8 800454C8 00008025 */ move $s0, $zero +.L800454CC: +/* 0460CC 800454CC 24010002 */ li $at, 2 +.L800454D0: +/* 0460D0 800454D0 1641002E */ bne $s2, $at, .L8004558C +/* 0460D4 800454D4 24010001 */ li $at, 1 +/* 0460D8 800454D8 82A20002 */ lb $v0, 2($s5) +/* 0460DC 800454DC 24010001 */ li $at, 1 +/* 0460E0 800454E0 10400007 */ beqz $v0, .L80045500 +/* 0460E4 800454E4 3C0A8012 */ lui $t2, %hi(D_8011D588) # $t2, 0x8012 +/* 0460E8 800454E8 814AD588 */ lb $t2, %lo(D_8011D588)($t2) +/* 0460EC 800454EC 00000000 */ nop +/* 0460F0 800454F0 314B0040 */ andi $t3, $t2, 0x40 +/* 0460F4 800454F4 11600002 */ beqz $t3, .L80045500 +/* 0460F8 800454F8 00000000 */ nop +/* 0460FC 800454FC 00008825 */ move $s1, $zero +.L80045500: +/* 046100 80045500 10410007 */ beq $v0, $at, .L80045520 +/* 046104 80045504 3C0C8012 */ lui $t4, %hi(D_8011D589) # $t4, 0x8012 +/* 046108 80045508 818CD589 */ lb $t4, %lo(D_8011D589)($t4) +/* 04610C 8004550C 00000000 */ nop +/* 046110 80045510 318D0040 */ andi $t5, $t4, 0x40 +/* 046114 80045514 11A00003 */ beqz $t5, .L80045524 +/* 046118 80045518 24010002 */ li $at, 2 +/* 04611C 8004551C 24110001 */ li $s1, 1 +.L80045520: +/* 046120 80045520 24010002 */ li $at, 2 +.L80045524: +/* 046124 80045524 10410007 */ beq $v0, $at, .L80045544 +/* 046128 80045528 3C0E8012 */ lui $t6, %hi(D_8011D58A) # $t6, 0x8012 +/* 04612C 8004552C 81CED58A */ lb $t6, %lo(D_8011D58A)($t6) +/* 046130 80045530 00000000 */ nop +/* 046134 80045534 31CF0040 */ andi $t7, $t6, 0x40 +/* 046138 80045538 11E00003 */ beqz $t7, .L80045548 +/* 04613C 8004553C 24010003 */ li $at, 3 +/* 046140 80045540 24110002 */ li $s1, 2 +.L80045544: +/* 046144 80045544 24010003 */ li $at, 3 +.L80045548: +/* 046148 80045548 10410009 */ beq $v0, $at, .L80045570 +/* 04614C 8004554C 3C188012 */ lui $t8, %hi(D_8011D58B) # $t8, 0x8012 +/* 046150 80045550 8318D58B */ lb $t8, %lo(D_8011D58B)($t8) +/* 046154 80045554 00000000 */ nop +/* 046158 80045558 33190040 */ andi $t9, $t8, 0x40 +/* 04615C 8004555C 13200005 */ beqz $t9, .L80045574 +/* 046160 80045560 2401FFFF */ li $at, -1 +/* 046164 80045564 00178E00 */ sll $s1, $s7, 0x18 +/* 046168 80045568 00114603 */ sra $t0, $s1, 0x18 +/* 04616C 8004556C 01008825 */ move $s1, $t0 +.L80045570: +/* 046170 80045570 2401FFFF */ li $at, -1 +.L80045574: +/* 046174 80045574 16210003 */ bne $s1, $at, .L80045584 +/* 046178 80045578 24090007 */ li $t1, 7 +/* 04617C 8004557C 10000002 */ b .L80045588 +/* 046180 80045580 24120001 */ li $s2, 1 +.L80045584: +/* 046184 80045584 A2A901CD */ sb $t1, 0x1cd($s5) +.L80045588: +/* 046188 80045588 24010001 */ li $at, 1 +.L8004558C: +/* 04618C 8004558C 16410013 */ bne $s2, $at, .L800455DC +/* 046190 80045590 00000000 */ nop +/* 046194 80045594 82AA0173 */ lb $t2, 0x173($s5) +/* 046198 80045598 24180005 */ li $t8, 5 +/* 04619C 8004559C 1140000E */ beqz $t2, .L800455D8 +/* 0461A0 800455A0 00000000 */ nop +/* 0461A4 800455A4 82A20002 */ lb $v0, 2($s5) +/* 0461A8 800455A8 240B0006 */ li $t3, 6 +/* 0461AC 800455AC 12020005 */ beq $s0, $v0, .L800455C4 +/* 0461B0 800455B0 A2AB01CD */ sb $t3, 0x1cd($s5) +/* 0461B4 800455B4 00108E00 */ sll $s1, $s0, 0x18 +/* 0461B8 800455B8 00116603 */ sra $t4, $s1, 0x18 +/* 0461BC 800455BC 10000007 */ b .L800455DC +/* 0461C0 800455C0 01808825 */ move $s1, $t4 +.L800455C4: +/* 0461C4 800455C4 24510001 */ addiu $s1, $v0, 1 +/* 0461C8 800455C8 322D0003 */ andi $t5, $s1, 3 +/* 0461CC 800455CC 000D7600 */ sll $t6, $t5, 0x18 +/* 0461D0 800455D0 10000002 */ b .L800455DC +/* 0461D4 800455D4 000E8E03 */ sra $s1, $t6, 0x18 +.L800455D8: +/* 0461D8 800455D8 A2B801CD */ sb $t8, 0x1cd($s5) +.L800455DC: +/* 0461DC 800455DC A2A001CE */ sb $zero, 0x1ce($s5) +.L800455E0: +/* 0461E0 800455E0 8EB90144 */ lw $t9, 0x144($s5) +/* 0461E4 800455E4 24080002 */ li $t0, 2 +/* 0461E8 800455E8 13200002 */ beqz $t9, .L800455F4 +/* 0461EC 800455EC 240F0003 */ li $t7, 3 +/* 0461F0 800455F0 A2A801CD */ sb $t0, 0x1cd($s5) +.L800455F4: +/* 0461F4 800455F4 92A201CE */ lbu $v0, 0x1ce($s5) +/* 0461F8 800455F8 00000000 */ nop +/* 0461FC 800455FC 10400002 */ beqz $v0, .L80045608 +/* 046200 80045600 00000000 */ nop +/* 046204 80045604 A2A201CD */ sb $v0, 0x1cd($s5) +.L80045608: +/* 046208 80045608 92A901CD */ lbu $t1, 0x1cd($s5) +/* 04620C 8004560C A2A001CE */ sb $zero, 0x1ce($s5) +/* 046210 80045610 15200012 */ bnez $t1, .L8004565C +/* 046214 80045614 00000000 */ nop +/* 046218 80045618 8ECA004C */ lw $t2, 0x4c($s6) +/* 04621C 8004561C 24010001 */ li $at, 1 +/* 046220 80045620 91420012 */ lbu $v0, 0x12($t2) +/* 046224 80045624 240B0001 */ li $t3, 1 +/* 046228 80045628 10410007 */ beq $v0, $at, .L80045648 +/* 04622C 8004562C 24010002 */ li $at, 2 +/* 046230 80045630 10410007 */ beq $v0, $at, .L80045650 +/* 046234 80045634 240C0001 */ li $t4, 1 +/* 046238 80045638 10570007 */ beq $v0, $s7, .L80045658 +/* 04623C 8004563C 240D0001 */ li $t5, 1 +/* 046240 80045640 10000007 */ b .L80045660 +/* 046244 80045644 82AE01D8 */ lb $t6, 0x1d8($s5) +.L80045648: +/* 046248 80045648 10000004 */ b .L8004565C +/* 04624C 8004564C A2AB01CD */ sb $t3, 0x1cd($s5) +.L80045650: +/* 046250 80045650 10000002 */ b .L8004565C +/* 046254 80045654 A2AC01CD */ sb $t4, 0x1cd($s5) +.L80045658: +/* 046258 80045658 A2AD01CD */ sb $t5, 0x1cd($s5) +.L8004565C: +/* 04625C 8004565C 82AE01D8 */ lb $t6, 0x1d8($s5) +.L80045660: +/* 046260 80045660 00009025 */ move $s2, $zero +/* 046264 80045664 11C00002 */ beqz $t6, .L80045670 +/* 046268 80045668 00000000 */ nop +/* 04626C 8004566C A2AF01CD */ sb $t7, 0x1cd($s5) +.L80045670: +/* 046270 80045670 92B801CD */ lbu $t8, 0x1cd($s5) +/* 046274 80045674 00000000 */ nop +/* 046278 80045678 2719FFFF */ addiu $t9, $t8, -1 +/* 04627C 8004567C 2F210008 */ sltiu $at, $t9, 8 +/* 046280 80045680 10200018 */ beqz $at, .L800456E4 +/* 046284 80045684 0019C880 */ sll $t9, $t9, 2 +/* 046288 80045688 3C01800E */ lui $at, 0x800e +/* 04628C 8004568C 00390821 */ addu $at, $at, $t9 +/* 046290 80045690 8C396358 */ lw $t9, 0x6358($at) +/* 046294 80045694 00000000 */ nop +/* 046298 80045698 03200008 */ jr $t9 +/* 04629C 8004569C 00000000 */ nop +/* 0462A0 800456A0 10000010 */ b .L800456E4 +/* 0462A4 800456A4 2413002D */ li $s3, 45 +/* 0462A8 800456A8 1000000E */ b .L800456E4 +/* 0462AC 800456AC 2413005C */ li $s3, 92 +/* 0462B0 800456B0 2413005C */ li $s3, 92 +/* 0462B4 800456B4 1000000B */ b .L800456E4 +/* 0462B8 800456B8 24120002 */ li $s2, 2 +/* 0462BC 800456BC 82B10002 */ lb $s1, 2($s5) +/* 0462C0 800456C0 2413005C */ li $s3, 92 +/* 0462C4 800456C4 10000007 */ b .L800456E4 +/* 0462C8 800456C8 24120002 */ li $s2, 2 +/* 0462CC 800456CC 10000005 */ b .L800456E4 +/* 0462D0 800456D0 24130011 */ li $s3, 17 +/* 0462D4 800456D4 10000003 */ b .L800456E4 +/* 0462D8 800456D8 24130001 */ li $s3, 1 +/* 0462DC 800456DC 2413002D */ li $s3, 45 +/* 0462E0 800456E0 24120001 */ li $s2, 1 +.L800456E4: +/* 0462E4 800456E4 1260005E */ beqz $s3, .L80045860 +/* 0462E8 800456E8 24010001 */ li $at, 1 +/* 0462EC 800456EC 1261005C */ beq $s3, $at, .L80045860 +/* 0462F0 800456F0 27A40094 */ addiu $a0, $sp, 0x94 +/* 0462F4 800456F4 3C01800E */ lui $at, %hi(D_800E6378) # $at, 0x800e +/* 0462F8 800456F8 C4386378 */ lwc1 $f24, %lo(D_800E6378)($at) +/* 0462FC 800456FC 27A50090 */ addiu $a1, $sp, 0x90 +/* 046300 80045700 0C003A62 */ jal func_8000E988 +/* 046304 80045704 0000F025 */ move $fp, $zero +/* 046308 80045708 8FA80090 */ lw $t0, 0x90($sp) +/* 04630C 8004570C 0040A025 */ move $s4, $v0 +/* 046310 80045710 19000053 */ blez $t0, .L80045860 +/* 046314 80045714 AFA00094 */ sw $zero, 0x94($sp) +.L80045718: +/* 046318 80045718 8FA90094 */ lw $t1, 0x94($sp) +/* 04631C 8004571C 00001825 */ move $v1, $zero +/* 046320 80045720 00095080 */ sll $t2, $t1, 2 +/* 046324 80045724 028A5821 */ addu $t3, $s4, $t2 +/* 046328 80045728 8D700000 */ lw $s0, ($t3) +/* 04632C 8004572C 00000000 */ nop +/* 046330 80045730 860C0006 */ lh $t4, 6($s0) +/* 046334 80045734 00000000 */ nop +/* 046338 80045738 318D8000 */ andi $t5, $t4, 0x8000 +/* 04633C 8004573C 15A0002B */ bnez $t5, .L800457EC +/* 046340 80045740 00000000 */ nop +/* 046344 80045744 860E0048 */ lh $t6, 0x48($s0) +/* 046348 80045748 2401002D */ li $at, 45 +/* 04634C 8004574C 166E0027 */ bne $s3, $t6, .L800457EC +/* 046350 80045750 00000000 */ nop +/* 046354 80045754 12610013 */ beq $s3, $at, .L800457A4 +/* 046358 80045758 2401005C */ li $at, 92 +/* 04635C 8004575C 12610003 */ beq $s3, $at, .L8004576C +/* 046360 80045760 00000000 */ nop +/* 046364 80045764 10000021 */ b .L800457EC +/* 046368 80045768 24030001 */ li $v1, 1 +.L8004576C: +/* 04636C 8004576C 8E02003C */ lw $v0, 0x3c($s0) +/* 046370 80045770 2401FFFF */ li $at, -1 +/* 046374 80045774 804F0008 */ lb $t7, 8($v0) +/* 046378 80045778 00000000 */ nop +/* 04637C 8004577C 164F001B */ bne $s2, $t7, .L800457EC +/* 046380 80045780 00000000 */ nop +/* 046384 80045784 12210005 */ beq $s1, $at, .L8004579C +/* 046388 80045788 00000000 */ nop +/* 04638C 8004578C 80580009 */ lb $t8, 9($v0) +/* 046390 80045790 00000000 */ nop +/* 046394 80045794 16380015 */ bne $s1, $t8, .L800457EC +/* 046398 80045798 00000000 */ nop +.L8004579C: +/* 04639C 8004579C 10000013 */ b .L800457EC +/* 0463A0 800457A0 24030001 */ li $v1, 1 +.L800457A4: +/* 0463A4 800457A4 8E020064 */ lw $v0, 0x64($s0) +/* 0463A8 800457A8 16400007 */ bnez $s2, .L800457C8 +/* 0463AC 800457AC 00000000 */ nop +/* 0463B0 800457B0 8059000B */ lb $t9, 0xb($v0) +/* 0463B4 800457B4 00000000 */ nop +/* 0463B8 800457B8 1720000C */ bnez $t9, .L800457EC +/* 0463BC 800457BC 00000000 */ nop +/* 0463C0 800457C0 1000000A */ b .L800457EC +/* 0463C4 800457C4 24030001 */ li $v1, 1 +.L800457C8: +/* 0463C8 800457C8 8048000B */ lb $t0, 0xb($v0) +/* 0463CC 800457CC 00000000 */ nop +/* 0463D0 800457D0 16E80006 */ bne $s7, $t0, .L800457EC +/* 0463D4 800457D4 00000000 */ nop +/* 0463D8 800457D8 8049000A */ lb $t1, 0xa($v0) +/* 0463DC 800457DC 00000000 */ nop +/* 0463E0 800457E0 16290002 */ bne $s1, $t1, .L800457EC +/* 0463E4 800457E4 00000000 */ nop +/* 0463E8 800457E8 24030001 */ li $v1, 1 +.L800457EC: +/* 0463EC 800457EC 10600017 */ beqz $v1, .L8004584C +/* 0463F0 800457F0 8FAA0094 */ lw $t2, 0x94($sp) +/* 0463F4 800457F4 C604000C */ lwc1 $f4, 0xc($s0) +/* 0463F8 800457F8 C6C6000C */ lwc1 $f6, 0xc($s6) +/* 0463FC 800457FC C6080010 */ lwc1 $f8, 0x10($s0) +/* 046400 80045800 46062501 */ sub.s $f20, $f4, $f6 +/* 046404 80045804 C6CA0010 */ lwc1 $f10, 0x10($s6) +/* 046408 80045808 4614A102 */ mul.s $f4, $f20, $f20 +/* 04640C 8004580C 460A4581 */ sub.s $f22, $f8, $f10 +/* 046410 80045810 C6100014 */ lwc1 $f16, 0x14($s0) +/* 046414 80045814 C6D20014 */ lwc1 $f18, 0x14($s6) +/* 046418 80045818 4616B182 */ mul.s $f6, $f22, $f22 +/* 04641C 8004581C 46128381 */ sub.s $f14, $f16, $f18 +/* 046420 80045820 460E7282 */ mul.s $f10, $f14, $f14 +/* 046424 80045824 46062200 */ add.s $f8, $f4, $f6 +/* 046428 80045828 0C0326B4 */ jal sqrtf +/* 04642C 8004582C 460A4300 */ add.s $f12, $f8, $f10 +/* 046430 80045830 4618003C */ c.lt.s $f0, $f24 +/* 046434 80045834 00000000 */ nop +/* 046438 80045838 45000004 */ bc1f .L8004584C +/* 04643C 8004583C 8FAA0094 */ lw $t2, 0x94($sp) +/* 046440 80045840 46000606 */ mov.s $f24, $f0 +/* 046444 80045844 0200F025 */ move $fp, $s0 +/* 046448 80045848 8FAA0094 */ lw $t2, 0x94($sp) +.L8004584C: +/* 04644C 8004584C 8FAC0090 */ lw $t4, 0x90($sp) +/* 046450 80045850 254B0001 */ addiu $t3, $t2, 1 +/* 046454 80045854 016C082A */ slt $at, $t3, $t4 +/* 046458 80045858 1420FFAF */ bnez $at, .L80045718 +/* 04645C 8004585C AFAB0094 */ sw $t3, 0x94($sp) +.L80045860: +/* 046460 80045860 24010001 */ li $at, 1 +/* 046464 80045864 16610006 */ bne $s3, $at, .L80045880 +/* 046468 80045868 2401FFFF */ li $at, -1 +/* 04646C 8004586C 12210004 */ beq $s1, $at, .L80045880 +/* 046470 80045870 00000000 */ nop +/* 046474 80045874 0C006EB2 */ jal func_8001BAC8 +/* 046478 80045878 02202025 */ move $a0, $s1 +/* 04647C 8004587C 0040F025 */ move $fp, $v0 +.L80045880: +/* 046480 80045880 17C00004 */ bnez $fp, .L80045894 +/* 046484 80045884 AEBE0154 */ sw $fp, 0x154($s5) +/* 046488 80045888 240D0080 */ li $t5, 128 +/* 04648C 8004588C A2AD01CE */ sb $t5, 0x1ce($s5) +/* 046490 80045890 A2A001CD */ sb $zero, 0x1cd($s5) +.L80045894: +/* 046494 80045894 92A301CD */ lbu $v1, 0x1cd($s5) +/* 046498 80045898 00000000 */ nop +/* 04649C 8004589C 1060FEC1 */ beqz $v1, .L800453A4 +/* 0464A0 800458A0 00000000 */ nop +/* 0464A4 800458A4 AFBE0080 */ sw $fp, 0x80($sp) +.L800458A8: +/* 0464A8 800458A8 8EB00154 */ lw $s0, 0x154($s5) +/* 0464AC 800458AC 44801000 */ mtc1 $zero, $f2 +/* 0464B0 800458B0 1200007D */ beqz $s0, .L80045AA8 +/* 0464B4 800458B4 24170003 */ li $s7, 3 +/* 0464B8 800458B8 860E0048 */ lh $t6, 0x48($s0) +/* 0464BC 800458BC 2401002D */ li $at, 45 +/* 0464C0 800458C0 15C10013 */ bne $t6, $at, .L80045910 +/* 0464C4 800458C4 00000000 */ nop +/* 0464C8 800458C8 8E020064 */ lw $v0, 0x64($s0) +/* 0464CC 800458CC 24010001 */ li $at, 1 +/* 0464D0 800458D0 14610007 */ bne $v1, $at, .L800458F0 +/* 0464D4 800458D4 00602025 */ move $a0, $v1 +/* 0464D8 800458D8 804F000B */ lb $t7, 0xb($v0) +/* 0464DC 800458DC 00000000 */ nop +/* 0464E0 800458E0 11E00004 */ beqz $t7, .L800458F4 +/* 0464E4 800458E4 24010008 */ li $at, 8 +/* 0464E8 800458E8 92A401CD */ lbu $a0, 0x1cd($s5) +/* 0464EC 800458EC AEA00154 */ sw $zero, 0x154($s5) +.L800458F0: +/* 0464F0 800458F0 24010008 */ li $at, 8 +.L800458F4: +/* 0464F4 800458F4 14810006 */ bne $a0, $at, .L80045910 +/* 0464F8 800458F8 00000000 */ nop +/* 0464FC 800458FC 8058000B */ lb $t8, 0xb($v0) +/* 046500 80045900 00000000 */ nop +/* 046504 80045904 12F80002 */ beq $s7, $t8, .L80045910 +/* 046508 80045908 00000000 */ nop +/* 04650C 8004590C AEA00154 */ sw $zero, 0x154($s5) +.L80045910: +/* 046510 80045910 C610000C */ lwc1 $f16, 0xc($s0) +/* 046514 80045914 C6D2000C */ lwc1 $f18, 0xc($s6) +/* 046518 80045918 C6080014 */ lwc1 $f8, 0x14($s0) +/* 04651C 8004591C 46128501 */ sub.s $f20, $f16, $f18 +/* 046520 80045920 C6CA0014 */ lwc1 $f10, 0x14($s6) +/* 046524 80045924 4614A602 */ mul.s $f24, $f20, $f20 +/* 046528 80045928 460A4381 */ sub.s $f14, $f8, $f10 +/* 04652C 8004592C C6040010 */ lwc1 $f4, 0x10($s0) +/* 046530 80045930 C6C60010 */ lwc1 $f6, 0x10($s6) +/* 046534 80045934 460E7002 */ mul.s $f0, $f14, $f14 +/* 046538 80045938 46062581 */ sub.s $f22, $f4, $f6 +/* 04653C 8004593C E7AE00AC */ swc1 $f14, 0xac($sp) +/* 046540 80045940 4616B402 */ mul.s $f16, $f22, $f22 +/* 046544 80045944 E7A0005C */ swc1 $f0, 0x5c($sp) +/* 046548 80045948 4610C480 */ add.s $f18, $f24, $f16 +/* 04654C 8004594C 0C0326B4 */ jal sqrtf +/* 046550 80045950 46009300 */ add.s $f12, $f18, $f0 +/* 046554 80045954 44802800 */ mtc1 $zero, $f5 +/* 046558 80045958 44802000 */ mtc1 $zero, $f4 +/* 04655C 8004595C 460001A1 */ cvt.d.s $f6, $f0 +/* 046560 80045960 4626203C */ c.lt.d $f4, $f6 +/* 046564 80045964 C7AE00AC */ lwc1 $f14, 0xac($sp) +/* 046568 80045968 45000031 */ bc1f .L80045A30 +/* 04656C 8004596C 46000086 */ mov.s $f2, $f0 +/* 046570 80045970 4600A306 */ mov.s $f12, $f20 +/* 046574 80045974 0C01C1D4 */ jal func_80070750 +/* 046578 80045978 E7A200A8 */ swc1 $f2, 0xa8($sp) +/* 04657C 8004597C 24018000 */ li $at, -32768 +/* 046580 80045980 0041C821 */ addu $t9, $v0, $at +/* 046584 80045984 3328FFFF */ andi $t0, $t9, 0xffff +/* 046588 80045988 AFA8009C */ sw $t0, 0x9c($sp) +/* 04658C 8004598C 86A901A0 */ lh $t1, 0x1a0($s5) +/* 046590 80045990 34118001 */ li $s1, 32769 +/* 046594 80045994 312AFFFF */ andi $t2, $t1, 0xffff +/* 046598 80045998 010A1823 */ subu $v1, $t0, $t2 +/* 04659C 8004599C C7A200A8 */ lwc1 $f2, 0xa8($sp) +/* 0465A0 800459A0 0071082A */ slt $at, $v1, $s1 +/* 0465A4 800459A4 14200003 */ bnez $at, .L800459B4 +/* 0465A8 800459A8 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 0465AC 800459AC 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 0465B0 800459B0 00611821 */ addu $v1, $v1, $at +.L800459B4: +/* 0465B4 800459B4 28618000 */ slti $at, $v1, -0x8000 +/* 0465B8 800459B8 10200002 */ beqz $at, .L800459C4 +/* 0465BC 800459BC 3401FFFF */ li $at, 65535 +/* 0465C0 800459C0 00611821 */ addu $v1, $v1, $at +.L800459C4: +/* 0465C4 800459C4 C7A8005C */ lwc1 $f8, 0x5c($sp) +/* 0465C8 800459C8 00035823 */ negu $t3, $v1 +/* 0465CC 800459CC 000B6143 */ sra $t4, $t3, 5 +/* 0465D0 800459D0 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 0465D4 800459D4 AC2CD534 */ sw $t4, %lo(D_8011D534)($at) +/* 0465D8 800459D8 E7A200A8 */ swc1 $f2, 0xa8($sp) +/* 0465DC 800459DC 0C0326B4 */ jal sqrtf +/* 0465E0 800459E0 4608C300 */ add.s $f12, $f24, $f8 +/* 0465E4 800459E4 4600B306 */ mov.s $f12, $f22 +/* 0465E8 800459E8 0C01C1D4 */ jal func_80070750 +/* 0465EC 800459EC 46000386 */ mov.s $f14, $f0 +/* 0465F0 800459F0 3044FFFF */ andi $a0, $v0, 0xffff +/* 0465F4 800459F4 C7A200A8 */ lwc1 $f2, 0xa8($sp) +/* 0465F8 800459F8 0091082A */ slt $at, $a0, $s1 +/* 0465FC 800459FC 14200004 */ bnez $at, .L80045A10 +/* 046600 80045A00 00801825 */ move $v1, $a0 +/* 046604 80045A04 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 046608 80045A08 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 04660C 80045A0C 00811821 */ addu $v1, $a0, $at +.L80045A10: +/* 046610 80045A10 28618000 */ slti $at, $v1, -0x8000 +/* 046614 80045A14 10200002 */ beqz $at, .L80045A20 +/* 046618 80045A18 3401FFFF */ li $at, 65535 +/* 04661C 80045A1C 00611821 */ addu $v1, $v1, $at +.L80045A20: +/* 046620 80045A20 00036823 */ negu $t5, $v1 +/* 046624 80045A24 000D71C3 */ sra $t6, $t5, 7 +/* 046628 80045A28 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 +/* 04662C 80045A2C AC2ED538 */ sw $t6, %lo(D_8011D538)($at) +.L80045A30: +/* 046630 80045A30 82A201CC */ lb $v0, 0x1cc($s5) +/* 046634 80045A34 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 046638 80045A38 0441000A */ bgez $v0, .L80045A64 +/* 04663C 80045A3C 3C038012 */ lui $v1, %hi(D_8011D534) # $v1, 0x8012 +/* 046640 80045A40 AC20D534 */ sw $zero, %lo(D_8011D534)($at) +/* 046644 80045A44 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 +/* 046648 80045A48 240FFFDD */ li $t7, -35 +/* 04664C 80045A4C AC2FD538 */ sw $t7, %lo(D_8011D538)($at) +/* 046650 80045A50 82B801CC */ lb $t8, 0x1cc($s5) +/* 046654 80045A54 00000000 */ nop +/* 046658 80045A58 27190001 */ addiu $t9, $t8, 1 +/* 04665C 80045A5C 10000013 */ b .L80045AAC +/* 046660 80045A60 A2B901CC */ sb $t9, 0x1cc($s5) +.L80045A64: +/* 046664 80045A64 8C63D534 */ lw $v1, %lo(D_8011D534)($v1) +/* 046668 80045A68 24490001 */ addiu $t1, $v0, 1 +/* 04666C 80045A6C 2861003D */ slti $at, $v1, 0x3d +/* 046670 80045A70 10200003 */ beqz $at, .L80045A80 +/* 046674 80045A74 2861FFC4 */ slti $at, $v1, -0x3c +/* 046678 80045A78 10200009 */ beqz $at, .L80045AA0 +/* 04667C 80045A7C 00000000 */ nop +.L80045A80: +/* 046680 80045A80 A2A901CC */ sb $t1, 0x1cc($s5) +/* 046684 80045A84 82A801CC */ lb $t0, 0x1cc($s5) +/* 046688 80045A88 240AFFD8 */ li $t2, -40 +/* 04668C 80045A8C 2901006F */ slti $at, $t0, 0x6f +/* 046690 80045A90 14200006 */ bnez $at, .L80045AAC +/* 046694 80045A94 00000000 */ nop +/* 046698 80045A98 10000004 */ b .L80045AAC +/* 04669C 80045A9C A2AA01CC */ sb $t2, 0x1cc($s5) +.L80045AA0: +/* 0466A0 80045AA0 10000002 */ b .L80045AAC +/* 0466A4 80045AA4 A2A001CC */ sb $zero, 0x1cc($s5) +.L80045AA8: +/* 0466A8 80045AA8 A2A001CD */ sb $zero, 0x1cd($s5) +.L80045AAC: +/* 0466AC 80045AAC 92AB01CD */ lbu $t3, 0x1cd($s5) +/* 0466B0 80045AB0 00000000 */ nop +/* 0466B4 80045AB4 256CFFFF */ addiu $t4, $t3, -1 +/* 0466B8 80045AB8 2D810008 */ sltiu $at, $t4, 8 +/* 0466BC 80045ABC 10200050 */ beqz $at, .L80045C00 +/* 0466C0 80045AC0 000C6080 */ sll $t4, $t4, 2 +/* 0466C4 80045AC4 3C01800E */ lui $at, 0x800e +/* 0466C8 80045AC8 002C0821 */ addu $at, $at, $t4 +/* 0466CC 80045ACC 8C2C637C */ lw $t4, 0x637c($at) +/* 0466D0 80045AD0 00000000 */ nop +/* 0466D4 80045AD4 01800008 */ jr $t4 +/* 0466D8 80045AD8 00000000 */ nop +/* 0466DC 80045ADC 8EAD0144 */ lw $t5, 0x144($s5) +/* 0466E0 80045AE0 240E0004 */ li $t6, 4 +/* 0466E4 80045AE4 11A00047 */ beqz $t5, .L80045C04 +/* 0466E8 80045AE8 8FBF0054 */ lw $ra, 0x54($sp) +/* 0466EC 80045AEC A2A001CD */ sb $zero, 0x1cd($s5) +/* 0466F0 80045AF0 10000043 */ b .L80045C00 +/* 0466F4 80045AF4 A2AE01CE */ sb $t6, 0x1ce($s5) +/* 0466F8 80045AF8 3C014059 */ li $at, 0x40590000 # 3.390625 +/* 0466FC 80045AFC 44818800 */ mtc1 $at, $f17 +/* 046700 80045B00 44808000 */ mtc1 $zero, $f16 +/* 046704 80045B04 460012A1 */ cvt.d.s $f10, $f2 +/* 046708 80045B08 4630503C */ c.lt.d $f10, $f16 +/* 04670C 80045B0C 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 +/* 046710 80045B10 4500003B */ bc1f .L80045C00 +/* 046714 80045B14 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 +/* 046718 80045B18 A2A001CD */ sb $zero, 0x1cd($s5) +/* 04671C 80045B1C 8C4F0000 */ lw $t7, ($v0) +/* 046720 80045B20 00000000 */ nop +/* 046724 80045B24 35F82000 */ ori $t8, $t7, 0x2000 +/* 046728 80045B28 10000035 */ b .L80045C00 +/* 04672C 80045B2C AC580000 */ sw $t8, ($v0) +/* 046730 80045B30 3C014069 */ li $at, 0x40690000 # 3.640625 +/* 046734 80045B34 44812800 */ mtc1 $at, $f5 +/* 046738 80045B38 44802000 */ mtc1 $zero, $f4 +/* 04673C 80045B3C 460014A1 */ cvt.d.s $f18, $f2 +/* 046740 80045B40 4624903C */ c.lt.d $f18, $f4 +/* 046744 80045B44 00000000 */ nop +/* 046748 80045B48 4500002E */ bc1f .L80045C04 +/* 04674C 80045B4C 8FBF0054 */ lw $ra, 0x54($sp) +/* 046750 80045B50 1000002B */ b .L80045C00 +/* 046754 80045B54 A2A001CD */ sb $zero, 0x1cd($s5) +/* 046758 80045B58 82B90173 */ lb $t9, 0x173($s5) +/* 04675C 80045B5C 00000000 */ nop +/* 046760 80045B60 13200028 */ beqz $t9, .L80045C04 +/* 046764 80045B64 8FBF0054 */ lw $ra, 0x54($sp) +/* 046768 80045B68 10000025 */ b .L80045C00 +/* 04676C 80045B6C A2A001CD */ sb $zero, 0x1cd($s5) +/* 046770 80045B70 82A90173 */ lb $t1, 0x173($s5) +/* 046774 80045B74 3C01800E */ lui $at, %hi(D_800E63A4) # $at, 0x800e +/* 046778 80045B78 15200002 */ bnez $t1, .L80045B84 +/* 04677C 80045B7C 3C028012 */ lui $v0, %hi(D_8011D530) # $v0, 0x8012 +/* 046780 80045B80 A2A001CD */ sb $zero, 0x1cd($s5) +.L80045B84: +/* 046784 80045B84 C42963A0 */ lwc1 $f9, %lo(D_800E63A0)($at) +/* 046788 80045B88 C42863A4 */ lwc1 $f8, %lo(D_800E63A4)($at) +/* 04678C 80045B8C 460011A1 */ cvt.d.s $f6, $f2 +/* 046790 80045B90 4628303C */ c.lt.d $f6, $f8 +/* 046794 80045B94 2442D530 */ addiu $v0, %lo(D_8011D530) # addiu $v0, $v0, -0x2ad0 +/* 046798 80045B98 4500001A */ bc1f .L80045C04 +/* 04679C 80045B9C 8FBF0054 */ lw $ra, 0x54($sp) +/* 0467A0 80045BA0 8C480000 */ lw $t0, ($v0) +/* 0467A4 80045BA4 00000000 */ nop +/* 0467A8 80045BA8 350A2000 */ ori $t2, $t0, 0x2000 +/* 0467AC 80045BAC AC4A0000 */ sw $t2, ($v0) +/* 0467B0 80045BB0 10000013 */ b .L80045C00 +/* 0467B4 80045BB4 A2A001CD */ sb $zero, 0x1cd($s5) +/* 0467B8 80045BB8 3C014069 */ li $at, 0x40690000 # 3.640625 +/* 0467BC 80045BBC 44818800 */ mtc1 $at, $f17 +/* 0467C0 80045BC0 44808000 */ mtc1 $zero, $f16 +/* 0467C4 80045BC4 460012A1 */ cvt.d.s $f10, $f2 +/* 0467C8 80045BC8 4630503C */ c.lt.d $f10, $f16 +/* 0467CC 80045BCC 00000000 */ nop +/* 0467D0 80045BD0 4500000C */ bc1f .L80045C04 +/* 0467D4 80045BD4 8FBF0054 */ lw $ra, 0x54($sp) +/* 0467D8 80045BD8 1200000A */ beqz $s0, .L80045C04 +/* 0467DC 80045BDC 8FBF0054 */ lw $ra, 0x54($sp) +/* 0467E0 80045BE0 A2A001CD */ sb $zero, 0x1cd($s5) +/* 0467E4 80045BE4 8E02003C */ lw $v0, 0x3c($s0) +/* 0467E8 80045BE8 00000000 */ nop +/* 0467EC 80045BEC 804B0009 */ lb $t3, 9($v0) +/* 0467F0 80045BF0 00000000 */ nop +/* 0467F4 80045BF4 316C0003 */ andi $t4, $t3, 3 +/* 0467F8 80045BF8 358D0040 */ ori $t5, $t4, 0x40 +/* 0467FC 80045BFC A2AD01CE */ sb $t5, 0x1ce($s5) +.L80045C00: +/* 046800 80045C00 8FBF0054 */ lw $ra, 0x54($sp) +.L80045C04: +/* 046804 80045C04 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 046808 80045C08 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 04680C 80045C0C C7B70020 */ lwc1 $f23, 0x20($sp) +/* 046810 80045C10 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 046814 80045C14 C7B90028 */ lwc1 $f25, 0x28($sp) +/* 046818 80045C18 C7B8002C */ lwc1 $f24, 0x2c($sp) +/* 04681C 80045C1C 8FB00030 */ lw $s0, 0x30($sp) +/* 046820 80045C20 8FB10034 */ lw $s1, 0x34($sp) +/* 046824 80045C24 8FB20038 */ lw $s2, 0x38($sp) +/* 046828 80045C28 8FB3003C */ lw $s3, 0x3c($sp) +/* 04682C 80045C2C 8FB40040 */ lw $s4, 0x40($sp) +/* 046830 80045C30 8FB50044 */ lw $s5, 0x44($sp) +/* 046834 80045C34 8FB60048 */ lw $s6, 0x48($sp) +/* 046838 80045C38 8FB7004C */ lw $s7, 0x4c($sp) +/* 04683C 80045C3C 8FBE0050 */ lw $fp, 0x50($sp) +/* 046840 80045C40 03E00008 */ jr $ra +/* 046844 80045C44 27BD00B8 */ addiu $sp, $sp, 0xb8 + diff --git a/asm/non_matchings/unknown_043920/func_80045C48.s b/asm/non_matchings/unknown_043920/func_80045C48.s new file mode 100644 index 00000000..6e5b31dc --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80045C48.s @@ -0,0 +1,607 @@ +glabel func_80045C48 +/* 046848 80045C48 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 +/* 04684C 80045C4C 27BDFF18 */ addiu $sp, $sp, -0xe8 +/* 046850 80045C50 AC20D528 */ sw $zero, %lo(D_8011D528)($at) +/* 046854 80045C54 3C018012 */ lui $at, %hi(D_8011D52C) # $at, 0x8012 +/* 046858 80045C58 AC20D52C */ sw $zero, %lo(D_8011D52C)($at) +/* 04685C 80045C5C 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 +/* 046860 80045C60 AC20D530 */ sw $zero, %lo(D_8011D530)($at) +/* 046864 80045C64 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 046868 80045C68 AC20D534 */ sw $zero, %lo(D_8011D534)($at) +/* 04686C 80045C6C AFBF002C */ sw $ra, 0x2c($sp) +/* 046870 80045C70 AFB10024 */ sw $s1, 0x24($sp) +/* 046874 80045C74 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 +/* 046878 80045C78 00A08825 */ move $s1, $a1 +/* 04687C 80045C7C AFB20028 */ sw $s2, 0x28($sp) +/* 046880 80045C80 AFB00020 */ sw $s0, 0x20($sp) +/* 046884 80045C84 E7B50018 */ swc1 $f21, 0x18($sp) +/* 046888 80045C88 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 04688C 80045C8C AFA400E8 */ sw $a0, 0xe8($sp) +/* 046890 80045C90 AFA600F0 */ sw $a2, 0xf0($sp) +/* 046894 80045C94 AFA000C4 */ sw $zero, 0xc4($sp) +/* 046898 80045C98 0C006E99 */ jal func_8001BA64 +/* 04689C 80045C9C AC20D538 */ sw $zero, %lo(D_8011D538)($at) +/* 0468A0 80045CA0 14400005 */ bnez $v0, .L80045CB8 +/* 0468A4 80045CA4 00409025 */ move $s2, $v0 +/* 0468A8 80045CA8 240E0019 */ li $t6, 25 +/* 0468AC 80045CAC 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 0468B0 80045CB0 10000214 */ b .L80046504 +/* 0468B4 80045CB4 AC2ED534 */ sw $t6, %lo(D_8011D534)($at) +.L80045CB8: +/* 0468B8 80045CB8 C62400A8 */ lwc1 $f4, 0xa8($s1) +/* 0468BC 80045CBC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 0468C0 80045CC0 44811800 */ mtc1 $at, $f3 +/* 0468C4 80045CC4 44801000 */ mtc1 $zero, $f2 +/* 0468C8 80045CC8 460021A1 */ cvt.d.s $f6, $f4 +/* 0468CC 80045CCC 46261201 */ sub.d $f8, $f2, $f6 +/* 0468D0 80045CD0 44805800 */ mtc1 $zero, $f11 +/* 0468D4 80045CD4 46204520 */ cvt.s.d $f20, $f8 +/* 0468D8 80045CD8 44805000 */ mtc1 $zero, $f10 +/* 0468DC 80045CDC 4600A021 */ cvt.d.s $f0, $f20 +/* 0468E0 80045CE0 82300192 */ lb $s0, 0x192($s1) +/* 0468E4 80045CE4 462A003C */ c.lt.d $f0, $f10 +/* 0468E8 80045CE8 00004025 */ move $t0, $zero +/* 0468EC 80045CEC 45000004 */ bc1f .L80045D00 +/* 0468F0 80045CF0 2610FFFE */ addiu $s0, $s0, -2 +/* 0468F4 80045CF4 4480A000 */ mtc1 $zero, $f20 +/* 0468F8 80045CF8 00000000 */ nop +/* 0468FC 80045CFC 4600A021 */ cvt.d.s $f0, $f20 +.L80045D00: +/* 046900 80045D00 4620103C */ c.lt.d $f2, $f0 +/* 046904 80045D04 27A600B0 */ addiu $a2, $sp, 0xb0 +/* 046908 80045D08 45000004 */ bc1f .L80045D1C +/* 04690C 80045D0C 27A700A0 */ addiu $a3, $sp, 0xa0 +/* 046910 80045D10 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 046914 80045D14 4481A000 */ mtc1 $at, $f20 +/* 046918 80045D18 00000000 */ nop +.L80045D1C: +/* 04691C 80045D1C 06010002 */ bgez $s0, .L80045D28 +/* 046920 80045D20 27A30090 */ addiu $v1, $sp, 0x90 +/* 046924 80045D24 02028021 */ addu $s0, $s0, $v0 +.L80045D28: +/* 046928 80045D28 0202082A */ slt $at, $s0, $v0 +/* 04692C 80045D2C 14200002 */ bnez $at, .L80045D38 +/* 046930 80045D30 00000000 */ nop +/* 046934 80045D34 02028023 */ subu $s0, $s0, $v0 +.L80045D38: +/* 046938 80045D38 922501C8 */ lbu $a1, 0x1c8($s1) +/* 04693C 80045D3C AFA8003C */ sw $t0, 0x3c($sp) +/* 046940 80045D40 AFA70034 */ sw $a3, 0x34($sp) +/* 046944 80045D44 AFA60038 */ sw $a2, 0x38($sp) +/* 046948 80045D48 AFA30030 */ sw $v1, 0x30($sp) +/* 04694C 80045D4C 0C006E87 */ jal func_8001BA1C +/* 046950 80045D50 02002025 */ move $a0, $s0 +/* 046954 80045D54 8FA60038 */ lw $a2, 0x38($sp) +/* 046958 80045D58 C4520010 */ lwc1 $f18, 0x10($v0) +/* 04695C 80045D5C 8FA30030 */ lw $v1, 0x30($sp) +/* 046960 80045D60 8FA70034 */ lw $a3, 0x34($sp) +/* 046964 80045D64 8FA8003C */ lw $t0, 0x3c($sp) +/* 046968 80045D68 E4D20000 */ swc1 $f18, ($a2) +/* 04696C 80045D6C C4440014 */ lwc1 $f4, 0x14($v0) +/* 046970 80045D70 26100001 */ addiu $s0, $s0, 1 +/* 046974 80045D74 E4E40000 */ swc1 $f4, ($a3) +/* 046978 80045D78 C4460018 */ lwc1 $f6, 0x18($v0) +/* 04697C 80045D7C 00000000 */ nop +/* 046980 80045D80 E4660000 */ swc1 $f6, ($v1) +/* 046984 80045D84 922F01C9 */ lbu $t7, 0x1c9($s1) +/* 046988 80045D88 00000000 */ nop +/* 04698C 80045D8C 15E00037 */ bnez $t7, .L80045E6C +/* 046990 80045D90 00000000 */ nop +/* 046994 80045D94 823801CA */ lb $t8, 0x1ca($s1) +/* 046998 80045D98 03A85021 */ addu $t2, $sp, $t0 +/* 04699C 80045D9C 0058C821 */ addu $t9, $v0, $t8 +/* 0469A0 80045DA0 8329002E */ lb $t1, 0x2e($t9) +/* 0469A4 80045DA4 03A87021 */ addu $t6, $sp, $t0 +/* 0469A8 80045DA8 44894000 */ mtc1 $t1, $f8 +/* 0469AC 80045DAC 00000000 */ nop +/* 0469B0 80045DB0 468042A0 */ cvt.s.w $f10, $f8 +/* 0469B4 80045DB4 E54A0074 */ swc1 $f10, 0x74($t2) +/* 0469B8 80045DB8 822B01CA */ lb $t3, 0x1ca($s1) +/* 0469BC 80045DBC 00000000 */ nop +/* 0469C0 80045DC0 004B6021 */ addu $t4, $v0, $t3 +/* 0469C4 80045DC4 818D0032 */ lb $t5, 0x32($t4) +/* 0469C8 80045DC8 00000000 */ nop +/* 0469CC 80045DCC 448D9000 */ mtc1 $t5, $f18 +/* 0469D0 80045DD0 00000000 */ nop +/* 0469D4 80045DD4 46809120 */ cvt.s.w $f4, $f18 +/* 0469D8 80045DD8 E5C40064 */ swc1 $f4, 0x64($t6) +/* 0469DC 80045DDC 822F01CA */ lb $t7, 0x1ca($s1) +/* 0469E0 80045DE0 C446001C */ lwc1 $f6, 0x1c($v0) +/* 0469E4 80045DE4 004FC021 */ addu $t8, $v0, $t7 +/* 0469E8 80045DE8 8319002E */ lb $t9, 0x2e($t8) +/* 0469EC 80045DEC C4480008 */ lwc1 $f8, 8($v0) +/* 0469F0 80045DF0 44999000 */ mtc1 $t9, $f18 +/* 0469F4 80045DF4 46083282 */ mul.s $f10, $f6, $f8 +/* 0469F8 80045DF8 C4C80000 */ lwc1 $f8, ($a2) +/* 0469FC 80045DFC 46809120 */ cvt.s.w $f4, $f18 +/* 046A00 80045E00 46045182 */ mul.s $f6, $f10, $f4 +/* 046A04 80045E04 46064480 */ add.s $f18, $f8, $f6 +/* 046A08 80045E08 E4D20000 */ swc1 $f18, ($a2) +/* 046A0C 80045E0C 822901CA */ lb $t1, 0x1ca($s1) +/* 046A10 80045E10 C44A001C */ lwc1 $f10, 0x1c($v0) +/* 046A14 80045E14 00495021 */ addu $t2, $v0, $t1 +/* 046A18 80045E18 814B0032 */ lb $t3, 0x32($t2) +/* 046A1C 80045E1C C4F20000 */ lwc1 $f18, ($a3) +/* 046A20 80045E20 448B2000 */ mtc1 $t3, $f4 +/* 046A24 80045E24 00000000 */ nop +/* 046A28 80045E28 46802220 */ cvt.s.w $f8, $f4 +/* 046A2C 80045E2C 46085182 */ mul.s $f6, $f10, $f8 +/* 046A30 80045E30 46069100 */ add.s $f4, $f18, $f6 +/* 046A34 80045E34 E4E40000 */ swc1 $f4, ($a3) +/* 046A38 80045E38 822C01CA */ lb $t4, 0x1ca($s1) +/* 046A3C 80045E3C C4480000 */ lwc1 $f8, ($v0) +/* 046A40 80045E40 004C6821 */ addu $t5, $v0, $t4 +/* 046A44 80045E44 81AE002E */ lb $t6, 0x2e($t5) +/* 046A48 80045E48 C44A001C */ lwc1 $f10, 0x1c($v0) +/* 046A4C 80045E4C 448E2000 */ mtc1 $t6, $f4 +/* 046A50 80045E50 46004487 */ neg.s $f18, $f8 +/* 046A54 80045E54 46125182 */ mul.s $f6, $f10, $f18 +/* 046A58 80045E58 C4720000 */ lwc1 $f18, ($v1) +/* 046A5C 80045E5C 46802220 */ cvt.s.w $f8, $f4 +/* 046A60 80045E60 46083282 */ mul.s $f10, $f6, $f8 +/* 046A64 80045E64 460A9100 */ add.s $f4, $f18, $f10 +/* 046A68 80045E68 E4640000 */ swc1 $f4, ($v1) +.L80045E6C: +/* 046A6C 80045E6C 16120002 */ bne $s0, $s2, .L80045E78 +/* 046A70 80045E70 25080004 */ addiu $t0, $t0, 4 +/* 046A74 80045E74 00008025 */ move $s0, $zero +.L80045E78: +/* 046A78 80045E78 24630004 */ addiu $v1, $v1, 4 +/* 046A7C 80045E7C 27AF00A0 */ addiu $t7, $sp, 0xa0 +/* 046A80 80045E80 006F082B */ sltu $at, $v1, $t7 +/* 046A84 80045E84 24C60004 */ addiu $a2, $a2, 4 +/* 046A88 80045E88 1420FFAB */ bnez $at, .L80045D38 +/* 046A8C 80045E8C 24E70004 */ addiu $a3, $a3, 4 +/* 046A90 80045E90 922201C9 */ lbu $v0, 0x1c9($s1) +/* 046A94 80045E94 27A400B0 */ addiu $a0, $sp, 0xb0 +/* 046A98 80045E98 14400022 */ bnez $v0, .L80045F24 +/* 046A9C 80045E9C 00000000 */ nop +/* 046AA0 80045EA0 C7A6007C */ lwc1 $f6, 0x7c($sp) +/* 046AA4 80045EA4 C7A80078 */ lwc1 $f8, 0x78($sp) +/* 046AA8 80045EA8 00000000 */ nop +/* 046AAC 80045EAC 46083481 */ sub.s $f18, $f6, $f8 +/* 046AB0 80045EB0 46149282 */ mul.s $f10, $f18, $f20 +/* 046AB4 80045EB4 46085100 */ add.s $f4, $f10, $f8 +/* 046AB8 80045EB8 4458F800 */ cfc1 $t8, $31 +/* 046ABC 80045EBC 00000000 */ nop +/* 046AC0 80045EC0 37010003 */ ori $at, $t8, 3 +/* 046AC4 80045EC4 38210002 */ xori $at, $at, 2 +/* 046AC8 80045EC8 44C1F800 */ ctc1 $at, $31 +/* 046ACC 80045ECC 00000000 */ nop +/* 046AD0 80045ED0 460021A4 */ cvt.w.s $f6, $f4 +/* 046AD4 80045ED4 44193000 */ mfc1 $t9, $f6 +/* 046AD8 80045ED8 44D8F800 */ ctc1 $t8, $31 +/* 046ADC 80045EDC A63901BA */ sh $t9, 0x1ba($s1) +/* 046AE0 80045EE0 C7AA0068 */ lwc1 $f10, 0x68($sp) +/* 046AE4 80045EE4 C7B2006C */ lwc1 $f18, 0x6c($sp) +/* 046AE8 80045EE8 00000000 */ nop +/* 046AEC 80045EEC 460A9201 */ sub.s $f8, $f18, $f10 +/* 046AF0 80045EF0 46144102 */ mul.s $f4, $f8, $f20 +/* 046AF4 80045EF4 460A2180 */ add.s $f6, $f4, $f10 +/* 046AF8 80045EF8 4449F800 */ cfc1 $t1, $31 +/* 046AFC 80045EFC 00000000 */ nop +/* 046B00 80045F00 35210003 */ ori $at, $t1, 3 +/* 046B04 80045F04 38210002 */ xori $at, $at, 2 +/* 046B08 80045F08 44C1F800 */ ctc1 $at, $31 +/* 046B0C 80045F0C 00000000 */ nop +/* 046B10 80045F10 460034A4 */ cvt.w.s $f18, $f6 +/* 046B14 80045F14 440A9000 */ mfc1 $t2, $f18 +/* 046B18 80045F18 44C9F800 */ ctc1 $t1, $31 +/* 046B1C 80045F1C A62A01BC */ sh $t2, 0x1bc($s1) +/* 046B20 80045F20 00000000 */ nop +.L80045F24: +/* 046B24 80045F24 4406A000 */ mfc1 $a2, $f20 +/* 046B28 80045F28 0C0089DF */ jal func_8002277C +/* 046B2C 80045F2C 00002825 */ move $a1, $zero +/* 046B30 80045F30 4406A000 */ mfc1 $a2, $f20 +/* 046B34 80045F34 E7A0005C */ swc1 $f0, 0x5c($sp) +/* 046B38 80045F38 27A400A0 */ addiu $a0, $sp, 0xa0 +/* 046B3C 80045F3C 0C0089DF */ jal func_8002277C +/* 046B40 80045F40 00002825 */ move $a1, $zero +/* 046B44 80045F44 4406A000 */ mfc1 $a2, $f20 +/* 046B48 80045F48 E7A00058 */ swc1 $f0, 0x58($sp) +/* 046B4C 80045F4C 27A40090 */ addiu $a0, $sp, 0x90 +/* 046B50 80045F50 0C0089DF */ jal func_8002277C +/* 046B54 80045F54 00002825 */ move $a1, $zero +/* 046B58 80045F58 C7A2005C */ lwc1 $f2, 0x5c($sp) +/* 046B5C 80045F5C C7AE0058 */ lwc1 $f14, 0x58($sp) +/* 046B60 80045F60 46021202 */ mul.s $f8, $f2, $f2 +/* 046B64 80045F64 E7A00054 */ swc1 $f0, 0x54($sp) +/* 046B68 80045F68 460E7102 */ mul.s $f4, $f14, $f14 +/* 046B6C 80045F6C 00000000 */ nop +/* 046B70 80045F70 46000182 */ mul.s $f6, $f0, $f0 +/* 046B74 80045F74 46044280 */ add.s $f10, $f8, $f4 +/* 046B78 80045F78 0C0326B4 */ jal sqrtf +/* 046B7C 80045F7C 46065300 */ add.s $f12, $f10, $f6 +/* 046B80 80045F80 44809000 */ mtc1 $zero, $f18 +/* 046B84 80045F84 00000000 */ nop +/* 046B88 80045F88 46120032 */ c.eq.s $f0, $f18 +/* 046B8C 80045F8C 00000000 */ nop +/* 046B90 80045F90 4501000D */ bc1t .L80045FC8 +/* 046B94 80045F94 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 046B98 80045F98 44814000 */ mtc1 $at, $f8 +/* 046B9C 80045F9C C7A4005C */ lwc1 $f4, 0x5c($sp) +/* 046BA0 80045FA0 46004503 */ div.s $f20, $f8, $f0 +/* 046BA4 80045FA4 C7A60058 */ lwc1 $f6, 0x58($sp) +/* 046BA8 80045FA8 C7AE0054 */ lwc1 $f14, 0x54($sp) +/* 046BAC 80045FAC 46142282 */ mul.s $f10, $f4, $f20 +/* 046BB0 80045FB0 00000000 */ nop +/* 046BB4 80045FB4 46143482 */ mul.s $f18, $f6, $f20 +/* 046BB8 80045FB8 E7AA005C */ swc1 $f10, 0x5c($sp) +/* 046BBC 80045FBC 46147382 */ mul.s $f14, $f14, $f20 +/* 046BC0 80045FC0 E7B20058 */ swc1 $f18, 0x58($sp) +/* 046BC4 80045FC4 E7AE0054 */ swc1 $f14, 0x54($sp) +.L80045FC8: +/* 046BC8 80045FC8 C7AE0054 */ lwc1 $f14, 0x54($sp) +/* 046BCC 80045FCC C7AC005C */ lwc1 $f12, 0x5c($sp) +/* 046BD0 80045FD0 0C01C1D4 */ jal func_80070750 +/* 046BD4 80045FD4 00000000 */ nop +/* 046BD8 80045FD8 24018000 */ li $at, -32768 +/* 046BDC 80045FDC 00418021 */ addu $s0, $v0, $at +/* 046BE0 80045FE0 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 046BE4 80045FE4 320BFFFF */ andi $t3, $s0, 0xffff +/* 046BE8 80045FE8 44817000 */ mtc1 $at, $f14 +/* 046BEC 80045FEC C7AC0058 */ lwc1 $f12, 0x58($sp) +/* 046BF0 80045FF0 0C01C1D4 */ jal func_80070750 +/* 046BF4 80045FF4 01608025 */ move $s0, $t3 +/* 046BF8 80045FF8 862C01BE */ lh $t4, 0x1be($s1) +/* 046BFC 80045FFC 862D01C0 */ lh $t5, 0x1c0($s1) +/* 046C00 80046000 A62C01C2 */ sh $t4, 0x1c2($s1) +/* 046C04 80046004 862E01C2 */ lh $t6, 0x1c2($s1) +/* 046C08 80046008 34088001 */ li $t0, 32769 +/* 046C0C 8004600C 31CFFFFF */ andi $t7, $t6, 0xffff +/* 046C10 80046010 020F2023 */ subu $a0, $s0, $t7 +/* 046C14 80046014 3045FFFF */ andi $a1, $v0, 0xffff +/* 046C18 80046018 0088082A */ slt $at, $a0, $t0 +/* 046C1C 8004601C A63001BE */ sh $s0, 0x1be($s1) +/* 046C20 80046020 A62501C0 */ sh $a1, 0x1c0($s1) +/* 046C24 80046024 14200004 */ bnez $at, .L80046038 +/* 046C28 80046028 A62D01C4 */ sh $t5, 0x1c4($s1) +/* 046C2C 8004602C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 046C30 80046030 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 046C34 80046034 00812021 */ addu $a0, $a0, $at +.L80046038: +/* 046C38 80046038 28818000 */ slti $at, $a0, -0x8000 +/* 046C3C 8004603C 10200002 */ beqz $at, .L80046048 +/* 046C40 80046040 3401FFFF */ li $at, 65535 +/* 046C44 80046044 00812021 */ addu $a0, $a0, $at +.L80046048: +/* 046C48 80046048 863801C4 */ lh $t8, 0x1c4($s1) +/* 046C4C 8004604C 000448C3 */ sra $t1, $a0, 3 +/* 046C50 80046050 3319FFFF */ andi $t9, $t8, 0xffff +/* 046C54 80046054 00B91823 */ subu $v1, $a1, $t9 +/* 046C58 80046058 0068082A */ slt $at, $v1, $t0 +/* 046C5C 8004605C 14200004 */ bnez $at, .L80046070 +/* 046C60 80046060 00095023 */ negu $t2, $t1 +/* 046C64 80046064 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 046C68 80046068 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 046C6C 8004606C 00611821 */ addu $v1, $v1, $at +.L80046070: +/* 046C70 80046070 28618000 */ slti $at, $v1, -0x8000 +/* 046C74 80046074 10200002 */ beqz $at, .L80046080 +/* 046C78 80046078 3401FFFF */ li $at, 65535 +/* 046C7C 8004607C 00611821 */ addu $v1, $v1, $at +.L80046080: +/* 046C80 80046080 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 046C84 80046084 AC2AD534 */ sw $t2, %lo(D_8011D534)($at) +/* 046C88 80046088 000358C3 */ sra $t3, $v1, 3 +/* 046C8C 8004608C 000B6023 */ negu $t4, $t3 +/* 046C90 80046090 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 +/* 046C94 80046094 AC2CD538 */ sw $t4, %lo(D_8011D538)($at) +/* 046C98 80046098 862D01A0 */ lh $t5, 0x1a0($s1) +/* 046C9C 8004609C 44804000 */ mtc1 $zero, $f8 +/* 046CA0 800460A0 31AEFFFF */ andi $t6, $t5, 0xffff +/* 046CA4 800460A4 020E2023 */ subu $a0, $s0, $t6 +/* 046CA8 800460A8 0088082A */ slt $at, $a0, $t0 +/* 046CAC 800460AC 14200003 */ bnez $at, .L800460BC +/* 046CB0 800460B0 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 046CB4 800460B4 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 046CB8 800460B8 00812021 */ addu $a0, $a0, $at +.L800460BC: +/* 046CBC 800460BC 28818000 */ slti $at, $a0, -0x8000 +/* 046CC0 800460C0 10200002 */ beqz $at, .L800460CC +/* 046CC4 800460C4 3401FFFF */ li $at, 65535 +/* 046CC8 800460C8 00812021 */ addu $a0, $a0, $at +.L800460CC: +/* 046CCC 800460CC 28813001 */ slti $at, $a0, 0x3001 +/* 046CD0 800460D0 10200002 */ beqz $at, .L800460DC +/* 046CD4 800460D4 2881D000 */ slti $at, $a0, -0x3000 +/* 046CD8 800460D8 10200002 */ beqz $at, .L800460E4 +.L800460DC: +/* 046CDC 800460DC 240F0001 */ li $t7, 1 +/* 046CE0 800460E0 AFAF00C4 */ sw $t7, 0xc4($sp) +.L800460E4: +/* 046CE4 800460E4 C62400A8 */ lwc1 $f4, 0xa8($s1) +/* 046CE8 800460E8 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 046CEC 800460EC 44814800 */ mtc1 $at, $f9 +/* 046CF0 800460F0 460022A1 */ cvt.d.s $f10, $f4 +/* 046CF4 800460F4 462A4181 */ sub.d $f6, $f8, $f10 +/* 046CF8 800460F8 44809800 */ mtc1 $zero, $f19 +/* 046CFC 800460FC 46203520 */ cvt.s.d $f20, $f6 +/* 046D00 80046100 44809000 */ mtc1 $zero, $f18 +/* 046D04 80046104 4600A021 */ cvt.d.s $f0, $f20 +/* 046D08 80046108 82300192 */ lb $s0, 0x192($s1) +/* 046D0C 8004610C 4632003C */ c.lt.d $f0, $f18 +/* 046D10 80046110 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 046D14 80046114 45000004 */ bc1f .L80046128 +/* 046D18 80046118 2610FFFE */ addiu $s0, $s0, -2 +/* 046D1C 8004611C 4480A000 */ mtc1 $zero, $f20 +/* 046D20 80046120 00000000 */ nop +/* 046D24 80046124 4600A021 */ cvt.d.s $f0, $f20 +.L80046128: +/* 046D28 80046128 44812800 */ mtc1 $at, $f5 +/* 046D2C 8004612C 44802000 */ mtc1 $zero, $f4 +/* 046D30 80046130 8FB800C4 */ lw $t8, 0xc4($sp) +/* 046D34 80046134 4620203C */ c.lt.d $f4, $f0 +/* 046D38 80046138 00000000 */ nop +/* 046D3C 8004613C 45000003 */ bc1f .L8004614C +/* 046D40 80046140 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 046D44 80046144 4481A000 */ mtc1 $at, $f20 +/* 046D48 80046148 00000000 */ nop +.L8004614C: +/* 046D4C 8004614C 13000003 */ beqz $t8, .L8004615C +/* 046D50 80046150 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 046D54 80046154 4481A000 */ mtc1 $at, $f20 +/* 046D58 80046158 00000000 */ nop +.L8004615C: +/* 046D5C 8004615C 923901C9 */ lbu $t9, 0x1c9($s1) +/* 046D60 80046160 00000000 */ nop +/* 046D64 80046164 13200037 */ beqz $t9, .L80046244 +/* 046D68 80046168 00000000 */ nop +/* 046D6C 8004616C 06010002 */ bgez $s0, .L80046178 +/* 046D70 80046170 27A600B0 */ addiu $a2, $sp, 0xb0 +/* 046D74 80046174 02128021 */ addu $s0, $s0, $s2 +.L80046178: +/* 046D78 80046178 0212082A */ slt $at, $s0, $s2 +/* 046D7C 8004617C 14200002 */ bnez $at, .L80046188 +/* 046D80 80046180 27A700A0 */ addiu $a3, $sp, 0xa0 +/* 046D84 80046184 02128023 */ subu $s0, $s0, $s2 +.L80046188: +/* 046D88 80046188 27A30090 */ addiu $v1, $sp, 0x90 +.L8004618C: +/* 046D8C 8004618C 922501C8 */ lbu $a1, 0x1c8($s1) +/* 046D90 80046190 AFA70034 */ sw $a3, 0x34($sp) +/* 046D94 80046194 AFA60038 */ sw $a2, 0x38($sp) +/* 046D98 80046198 AFA30030 */ sw $v1, 0x30($sp) +/* 046D9C 8004619C 0C006E87 */ jal func_8001BA1C +/* 046DA0 800461A0 02002025 */ move $a0, $s0 +/* 046DA4 800461A4 862901BA */ lh $t1, 0x1ba($s1) +/* 046DA8 800461A8 C448001C */ lwc1 $f8, 0x1c($v0) +/* 046DAC 800461AC C44A0008 */ lwc1 $f10, 8($v0) +/* 046DB0 800461B0 44899000 */ mtc1 $t1, $f18 +/* 046DB4 800461B4 460A4182 */ mul.s $f6, $f8, $f10 +/* 046DB8 800461B8 C44A0010 */ lwc1 $f10, 0x10($v0) +/* 046DBC 800461BC 8FA60038 */ lw $a2, 0x38($sp) +/* 046DC0 800461C0 8FA30030 */ lw $v1, 0x30($sp) +/* 046DC4 800461C4 46809120 */ cvt.s.w $f4, $f18 +/* 046DC8 800461C8 8FA70034 */ lw $a3, 0x34($sp) +/* 046DCC 800461CC 26100001 */ addiu $s0, $s0, 1 +/* 046DD0 800461D0 46043202 */ mul.s $f8, $f6, $f4 +/* 046DD4 800461D4 27AC00A0 */ addiu $t4, $sp, 0xa0 +/* 046DD8 800461D8 24C60004 */ addiu $a2, $a2, 4 +/* 046DDC 800461DC 24630004 */ addiu $v1, $v1, 4 +/* 046DE0 800461E0 46085480 */ add.s $f18, $f10, $f8 +/* 046DE4 800461E4 E4D2FFFC */ swc1 $f18, -4($a2) +/* 046DE8 800461E8 862A01BC */ lh $t2, 0x1bc($s1) +/* 046DEC 800461EC C446001C */ lwc1 $f6, 0x1c($v0) +/* 046DF0 800461F0 448A2000 */ mtc1 $t2, $f4 +/* 046DF4 800461F4 C4520014 */ lwc1 $f18, 0x14($v0) +/* 046DF8 800461F8 468022A0 */ cvt.s.w $f10, $f4 +/* 046DFC 800461FC 460A3202 */ mul.s $f8, $f6, $f10 +/* 046E00 80046200 46089100 */ add.s $f4, $f18, $f8 +/* 046E04 80046204 E4E40000 */ swc1 $f4, ($a3) +/* 046E08 80046208 862B01BA */ lh $t3, 0x1ba($s1) +/* 046E0C 8004620C C44A0000 */ lwc1 $f10, ($v0) +/* 046E10 80046210 C446001C */ lwc1 $f6, 0x1c($v0) +/* 046E14 80046214 448B2000 */ mtc1 $t3, $f4 +/* 046E18 80046218 46005487 */ neg.s $f18, $f10 +/* 046E1C 8004621C 46123202 */ mul.s $f8, $f6, $f18 +/* 046E20 80046220 C4520018 */ lwc1 $f18, 0x18($v0) +/* 046E24 80046224 468022A0 */ cvt.s.w $f10, $f4 +/* 046E28 80046228 460A4182 */ mul.s $f6, $f8, $f10 +/* 046E2C 8004622C 46069100 */ add.s $f4, $f18, $f6 +/* 046E30 80046230 16120002 */ bne $s0, $s2, .L8004623C +/* 046E34 80046234 E464FFFC */ swc1 $f4, -4($v1) +/* 046E38 80046238 00008025 */ move $s0, $zero +.L8004623C: +/* 046E3C 8004623C 146CFFD3 */ bne $v1, $t4, .L8004618C +/* 046E40 80046240 24E70004 */ addiu $a3, $a3, 4 +.L80046244: +/* 046E44 80046244 4406A000 */ mfc1 $a2, $f20 +/* 046E48 80046248 27A400B0 */ addiu $a0, $sp, 0xb0 +/* 046E4C 8004624C 00002825 */ move $a1, $zero +/* 046E50 80046250 0C00898F */ jal func_8002263C +/* 046E54 80046254 27A7005C */ addiu $a3, $sp, 0x5c +/* 046E58 80046258 4406A000 */ mfc1 $a2, $f20 +/* 046E5C 8004625C E7A0008C */ swc1 $f0, 0x8c($sp) +/* 046E60 80046260 27A400A0 */ addiu $a0, $sp, 0xa0 +/* 046E64 80046264 00002825 */ move $a1, $zero +/* 046E68 80046268 0C00898F */ jal func_8002263C +/* 046E6C 8004626C 27A70058 */ addiu $a3, $sp, 0x58 +/* 046E70 80046270 4406A000 */ mfc1 $a2, $f20 +/* 046E74 80046274 E7A00088 */ swc1 $f0, 0x88($sp) +/* 046E78 80046278 27A40090 */ addiu $a0, $sp, 0x90 +/* 046E7C 8004627C 00002825 */ move $a1, $zero +/* 046E80 80046280 0C00898F */ jal func_8002263C +/* 046E84 80046284 27A70054 */ addiu $a3, $sp, 0x54 +/* 046E88 80046288 C7A2005C */ lwc1 $f2, 0x5c($sp) +/* 046E8C 8004628C C7B00058 */ lwc1 $f16, 0x58($sp) +/* 046E90 80046290 46021202 */ mul.s $f8, $f2, $f2 +/* 046E94 80046294 C7AE0054 */ lwc1 $f14, 0x54($sp) +/* 046E98 80046298 E7A00084 */ swc1 $f0, 0x84($sp) +/* 046E9C 8004629C 46108282 */ mul.s $f10, $f16, $f16 +/* 046EA0 800462A0 00000000 */ nop +/* 046EA4 800462A4 460E7182 */ mul.s $f6, $f14, $f14 +/* 046EA8 800462A8 460A4480 */ add.s $f18, $f8, $f10 +/* 046EAC 800462AC 0C0326B4 */ jal sqrtf +/* 046EB0 800462B0 46069300 */ add.s $f12, $f18, $f6 +/* 046EB4 800462B4 44802000 */ mtc1 $zero, $f4 +/* 046EB8 800462B8 3C0143FA */ li $at, 0x43FA0000 # 500.000000 +/* 046EBC 800462BC 46040032 */ c.eq.s $f0, $f4 +/* 046EC0 800462C0 00000000 */ nop +/* 046EC4 800462C4 4501000E */ bc1t .L80046300 +/* 046EC8 800462C8 8FA200E8 */ lw $v0, 0xe8($sp) +/* 046ECC 800462CC 44814000 */ mtc1 $at, $f8 +/* 046ED0 800462D0 C7A2005C */ lwc1 $f2, 0x5c($sp) +/* 046ED4 800462D4 46004503 */ div.s $f20, $f8, $f0 +/* 046ED8 800462D8 C7AA0058 */ lwc1 $f10, 0x58($sp) +/* 046EDC 800462DC C7AE0054 */ lwc1 $f14, 0x54($sp) +/* 046EE0 800462E0 46141082 */ mul.s $f2, $f2, $f20 +/* 046EE4 800462E4 00000000 */ nop +/* 046EE8 800462E8 46145482 */ mul.s $f18, $f10, $f20 +/* 046EEC 800462EC E7A2005C */ swc1 $f2, 0x5c($sp) +/* 046EF0 800462F0 46147382 */ mul.s $f14, $f14, $f20 +/* 046EF4 800462F4 E7B20058 */ swc1 $f18, 0x58($sp) +/* 046EF8 800462F8 E7AE0054 */ swc1 $f14, 0x54($sp) +/* 046EFC 800462FC 8FA200E8 */ lw $v0, 0xe8($sp) +.L80046300: +/* 046F00 80046300 C7A6008C */ lwc1 $f6, 0x8c($sp) +/* 046F04 80046304 C7A4005C */ lwc1 $f4, 0x5c($sp) +/* 046F08 80046308 C44A000C */ lwc1 $f10, 0xc($v0) +/* 046F0C 8004630C 46043200 */ add.s $f8, $f6, $f4 +/* 046F10 80046310 C7A40058 */ lwc1 $f4, 0x58($sp) +/* 046F14 80046314 460A4301 */ sub.s $f12, $f8, $f10 +/* 046F18 80046318 C7A60088 */ lwc1 $f6, 0x88($sp) +/* 046F1C 8004631C E7AC005C */ swc1 $f12, 0x5c($sp) +/* 046F20 80046320 C44A0010 */ lwc1 $f10, 0x10($v0) +/* 046F24 80046324 46043200 */ add.s $f8, $f6, $f4 +/* 046F28 80046328 C7A40084 */ lwc1 $f4, 0x84($sp) +/* 046F2C 8004632C 460A4181 */ sub.s $f6, $f8, $f10 +/* 046F30 80046330 C7A80054 */ lwc1 $f8, 0x54($sp) +/* 046F34 80046334 E7A60058 */ swc1 $f6, 0x58($sp) +/* 046F38 80046338 C4460014 */ lwc1 $f6, 0x14($v0) +/* 046F3C 8004633C 46082280 */ add.s $f10, $f4, $f8 +/* 046F40 80046340 46065381 */ sub.s $f14, $f10, $f6 +/* 046F44 80046344 0C01C1D4 */ jal func_80070750 +/* 046F48 80046348 E7AE0054 */ swc1 $f14, 0x54($sp) +/* 046F4C 8004634C 24018000 */ li $at, -32768 +/* 046F50 80046350 00418021 */ addu $s0, $v0, $at +/* 046F54 80046354 3C0143FA */ li $at, 0x43FA0000 # 500.000000 +/* 046F58 80046358 320DFFFF */ andi $t5, $s0, 0xffff +/* 046F5C 8004635C 44817000 */ mtc1 $at, $f14 +/* 046F60 80046360 C7AC0058 */ lwc1 $f12, 0x58($sp) +/* 046F64 80046364 0C01C1D4 */ jal func_80070750 +/* 046F68 80046368 01A08025 */ move $s0, $t5 +/* 046F6C 8004636C 862501A0 */ lh $a1, 0x1a0($s1) +/* 046F70 80046370 34018001 */ li $at, 32769 +/* 046F74 80046374 30AEFFFF */ andi $t6, $a1, 0xffff +/* 046F78 80046378 020E2023 */ subu $a0, $s0, $t6 +/* 046F7C 8004637C 0081082A */ slt $at, $a0, $at +/* 046F80 80046380 14200004 */ bnez $at, .L80046394 +/* 046F84 80046384 24070001 */ li $a3, 1 +/* 046F88 80046388 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 046F8C 8004638C 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 046F90 80046390 00812021 */ addu $a0, $a0, $at +.L80046394: +/* 046F94 80046394 28818000 */ slti $at, $a0, -0x8000 +/* 046F98 80046398 10200002 */ beqz $at, .L800463A4 +/* 046F9C 8004639C 3401FFFF */ li $at, 65535 +/* 046FA0 800463A0 00812021 */ addu $a0, $a0, $at +.L800463A4: +/* 046FA4 800463A4 8FB800E8 */ lw $t8, 0xe8($sp) +/* 046FA8 800463A8 304FFFFF */ andi $t7, $v0, 0xffff +/* 046FAC 800463AC 87190002 */ lh $t9, 2($t8) +/* 046FB0 800463B0 34018001 */ li $at, 32769 +/* 046FB4 800463B4 3329FFFF */ andi $t1, $t9, 0xffff +/* 046FB8 800463B8 01E91823 */ subu $v1, $t7, $t1 +/* 046FBC 800463BC 0061082A */ slt $at, $v1, $at +/* 046FC0 800463C0 14200004 */ bnez $at, .L800463D4 +/* 046FC4 800463C4 00042023 */ negu $a0, $a0 +/* 046FC8 800463C8 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 046FCC 800463CC 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 046FD0 800463D0 00611821 */ addu $v1, $v1, $at +.L800463D4: +/* 046FD4 800463D4 28618000 */ slti $at, $v1, -0x8000 +/* 046FD8 800463D8 10200003 */ beqz $at, .L800463E8 +/* 046FDC 800463DC 24020005 */ li $v0, 5 +/* 046FE0 800463E0 3401FFFF */ li $at, 65535 +/* 046FE4 800463E4 00611821 */ addu $v1, $v1, $at +.L800463E8: +/* 046FE8 800463E8 822601D6 */ lb $a2, 0x1d6($s1) +/* 046FEC 800463EC 24010002 */ li $at, 2 +/* 046FF0 800463F0 14C10002 */ bne $a2, $at, .L800463FC +/* 046FF4 800463F4 00031823 */ negu $v1, $v1 +/* 046FF8 800463F8 24020006 */ li $v0, 6 +.L800463FC: +/* 046FFC 800463FC 14E60007 */ bne $a3, $a2, .L8004641C +/* 047000 80046400 3C018012 */ lui $at, 0x8012 +/* 047004 80046404 822A01D4 */ lb $t2, 0x1d4($s1) +/* 047008 80046408 00045843 */ sra $t3, $a0, 1 +/* 04700C 8004640C 15400003 */ bnez $t2, .L8004641C +/* 047010 80046410 00AB6023 */ subu $t4, $a1, $t3 +/* 047014 80046414 822601D6 */ lb $a2, 0x1d6($s1) +/* 047018 80046418 A62C01A0 */ sh $t4, 0x1a0($s1) +.L8004641C: +/* 04701C 8004641C 10C70019 */ beq $a2, $a3, .L80046484 +/* 047020 80046420 3C0A8012 */ lui $t2, %hi(D_8011D534) # $t2, 0x8012 +/* 047024 80046424 24010004 */ li $at, 4 +/* 047028 80046428 10C10013 */ beq $a2, $at, .L80046478 +/* 04702C 8004642C 24010005 */ li $at, 5 +/* 047030 80046430 10C1001B */ beq $a2, $at, .L800464A0 +/* 047034 80046434 3C0D8012 */ lui $t5, 0x8012 +/* 047038 80046438 24010007 */ li $at, 7 +/* 04703C 8004643C 10C10021 */ beq $a2, $at, .L800464C4 +/* 047040 80046440 3C0F8012 */ lui $t7, %hi(D_8011D534) # $t7, 0x8012 +/* 047044 80046444 3C0D8012 */ lui $t5, %hi(D_8011D534) # $t5, 0x8012 +/* 047048 80046448 8DADD534 */ lw $t5, %lo(D_8011D534)($t5) +/* 04704C 8004644C 00447007 */ srav $t6, $a0, $v0 +/* 047050 80046450 3C198012 */ lui $t9, %hi(D_8011D538) # $t9, 0x8012 +/* 047054 80046454 8F39D538 */ lw $t9, %lo(D_8011D538)($t9) +/* 047058 80046458 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 04705C 8004645C 01AEC021 */ addu $t8, $t5, $t6 +/* 047060 80046460 AC38D534 */ sw $t8, %lo(D_8011D534)($at) +/* 047064 80046464 00437807 */ srav $t7, $v1, $v0 +/* 047068 80046468 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 +/* 04706C 8004646C 032F4821 */ addu $t1, $t9, $t7 +/* 047070 80046470 10000020 */ b .L800464F4 +/* 047074 80046474 AC29D538 */ sw $t1, %lo(D_8011D538)($at) +.L80046478: +/* 047078 80046478 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 +/* 04707C 8004647C 1000001D */ b .L800464F4 +/* 047080 80046480 AC20D538 */ sw $zero, %lo(D_8011D538)($at) +.L80046484: +/* 047084 80046484 8D4AD534 */ lw $t2, %lo(D_8011D534)($t2) +/* 047088 80046488 AC20D538 */ sw $zero, %lo(D_8011D538)($at) +/* 04708C 8004648C 00445807 */ srav $t3, $a0, $v0 +/* 047090 80046490 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 047094 80046494 014B6021 */ addu $t4, $t2, $t3 +/* 047098 80046498 10000016 */ b .L800464F4 +/* 04709C 8004649C AC2CD534 */ sw $t4, %lo(D_8011D534)($at) +.L800464A0: +/* 0470A0 800464A0 8DADD534 */ lw $t5, -0x2acc($t5) +/* 0470A4 800464A4 244E001F */ addiu $t6, $v0, 0x1f +/* 0470A8 800464A8 01C4C007 */ srav $t8, $a0, $t6 +/* 0470AC 800464AC 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 0470B0 800464B0 01B8C821 */ addu $t9, $t5, $t8 +/* 0470B4 800464B4 AC39D534 */ sw $t9, %lo(D_8011D534)($at) +/* 0470B8 800464B8 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 +/* 0470BC 800464BC 1000000D */ b .L800464F4 +/* 0470C0 800464C0 AC20D538 */ sw $zero, %lo(D_8011D538)($at) +.L800464C4: +/* 0470C4 800464C4 8DEFD534 */ lw $t7, %lo(D_8011D534)($t7) +/* 0470C8 800464C8 2442FFFF */ addiu $v0, $v0, -1 +/* 0470CC 800464CC 00444807 */ srav $t1, $a0, $v0 +/* 0470D0 800464D0 3C0B8012 */ lui $t3, %hi(D_8011D538) # $t3, 0x8012 +/* 0470D4 800464D4 8D6BD538 */ lw $t3, %lo(D_8011D538)($t3) +/* 0470D8 800464D8 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 0470DC 800464DC 01E95021 */ addu $t2, $t7, $t1 +/* 0470E0 800464E0 AC2AD534 */ sw $t2, %lo(D_8011D534)($at) +/* 0470E4 800464E4 00436007 */ srav $t4, $v1, $v0 +/* 0470E8 800464E8 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 +/* 0470EC 800464EC 016C7021 */ addu $t6, $t3, $t4 +/* 0470F0 800464F0 AC2ED538 */ sw $t6, %lo(D_8011D538)($at) +.L800464F4: +/* 0470F4 800464F4 8FA400E8 */ lw $a0, 0xe8($sp) +/* 0470F8 800464F8 8FA600F0 */ lw $a2, 0xf0($sp) +/* 0470FC 800464FC 0C010B48 */ jal func_80042D20 +/* 047100 80046500 02202825 */ move $a1, $s1 +.L80046504: +/* 047104 80046504 8FBF002C */ lw $ra, 0x2c($sp) +/* 047108 80046508 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 04710C 8004650C C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 047110 80046510 8FB00020 */ lw $s0, 0x20($sp) +/* 047114 80046514 8FB10024 */ lw $s1, 0x24($sp) +/* 047118 80046518 8FB20028 */ lw $s2, 0x28($sp) +/* 04711C 8004651C 03E00008 */ jr $ra +/* 047120 80046520 27BD00E8 */ addiu $sp, $sp, 0xe8 + diff --git a/asm/non_matchings/unknown_043920/func_80046524.s b/asm/non_matchings/unknown_043920/func_80046524.s new file mode 100644 index 00000000..7ba43660 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80046524.s @@ -0,0 +1,2687 @@ +glabel func_80046524 +/* 047124 80046524 27BDFED8 */ addiu $sp, $sp, -0x128 +/* 047128 80046528 AFBF002C */ sw $ra, 0x2c($sp) +/* 04712C 8004652C AFB10028 */ sw $s1, 0x28($sp) +/* 047130 80046530 AFB00024 */ sw $s0, 0x24($sp) +/* 047134 80046534 00E08025 */ move $s0, $a3 +/* 047138 80046538 00C08825 */ move $s1, $a2 +/* 04713C 8004653C AFA40128 */ sw $a0, 0x128($sp) +/* 047140 80046540 0C00384E */ jal func_8000E138 +/* 047144 80046544 AFA5012C */ sw $a1, 0x12c($sp) +/* 047148 80046548 10400009 */ beqz $v0, .L80046570 +/* 04714C 8004654C 3C0A8012 */ lui $t2, %hi(D_8011D586) # $t2, 0x8012 +/* 047150 80046550 3C01800E */ lui $at, %hi(D_800E63AC) # $at, 0x800e +/* 047154 80046554 C7A4012C */ lwc1 $f4, 0x12c($sp) +/* 047158 80046558 C42963A8 */ lwc1 $f9, %lo(D_800E63A8)($at) +/* 04715C 8004655C C42863AC */ lwc1 $f8, %lo(D_800E63AC)($at) +/* 047160 80046560 460021A1 */ cvt.d.s $f6, $f4 +/* 047164 80046564 46283282 */ mul.d $f10, $f6, $f8 +/* 047168 80046568 46205120 */ cvt.s.d $f4, $f10 +/* 04716C 8004656C E7A4012C */ swc1 $f4, 0x12c($sp) +.L80046570: +/* 047170 80046570 A3A00067 */ sb $zero, 0x67($sp) +/* 047174 80046574 860E0000 */ lh $t6, ($s0) +/* 047178 80046578 3C0D8012 */ lui $t5, %hi(D_8011D534) # $t5, 0x8012 +/* 04717C 8004657C 05C0000B */ bltz $t6, .L800465AC +/* 047180 80046580 02202025 */ move $a0, $s1 +/* 047184 80046584 3C0F800E */ lui $t7, %hi(D_800DCB98) # $t7, 0x800e +/* 047188 80046588 8DEFCB98 */ lw $t7, %lo(D_800DCB98)($t7) +/* 04718C 8004658C 00000000 */ nop +/* 047190 80046590 29E10002 */ slti $at, $t7, 2 +/* 047194 80046594 10200006 */ beqz $at, .L800465B0 +/* 047198 80046598 3C014120 */ lui $at, 0x4120 +/* 04719C 8004659C 8E380074 */ lw $t8, 0x74($s1) +/* 0471A0 800465A0 00000000 */ nop +/* 0471A4 800465A4 37190100 */ ori $t9, $t8, 0x100 +/* 0471A8 800465A8 AE390074 */ sw $t9, 0x74($s1) +.L800465AC: +/* 0471AC 800465AC 3C014120 */ li $at, 0x41200000 # 10.000000 +.L800465B0: +/* 0471B0 800465B0 44816000 */ mtc1 $at, $f12 +/* 0471B4 800465B4 3C018012 */ lui $at, %hi(D_8011D550) # $at, 0x8012 +/* 0471B8 800465B8 A420D550 */ sh $zero, %lo(D_8011D550)($at) +/* 0471BC 800465BC 3C018012 */ lui $at, %hi(D_8011D554) # $at, 0x8012 +/* 0471C0 800465C0 AC20D554 */ sw $zero, %lo(D_8011D554)($at) +/* 0471C4 800465C4 3C018012 */ lui $at, %hi(D_8011D558) # $at, 0x8012 +/* 0471C8 800465C8 AC20D558 */ sw $zero, %lo(D_8011D558)($at) +/* 0471CC 800465CC C626000C */ lwc1 $f6, 0xc($s1) +/* 0471D0 800465D0 854AD586 */ lh $t2, %lo(D_8011D586)($t2) +/* 0471D4 800465D4 E7A60110 */ swc1 $f6, 0x110($sp) +/* 0471D8 800465D8 C6280010 */ lwc1 $f8, 0x10($s1) +/* 0471DC 800465DC 448A2000 */ mtc1 $t2, $f4 +/* 0471E0 800465E0 E7A8010C */ swc1 $f8, 0x10c($sp) +/* 0471E4 800465E4 468021A0 */ cvt.s.w $f6, $f4 +/* 0471E8 800465E8 C62A0014 */ lwc1 $f10, 0x14($s1) +/* 0471EC 800465EC 3C014620 */ li $at, 0x46200000 # 10240.000000 +/* 0471F0 800465F0 44814000 */ mtc1 $at, $f8 +/* 0471F4 800465F4 E7AA0108 */ swc1 $f10, 0x108($sp) +/* 0471F8 800465F8 46083283 */ div.s $f10, $f6, $f8 +/* 0471FC 800465FC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 047200 80046600 44813800 */ mtc1 $at, $f7 +/* 047204 80046604 44803000 */ mtc1 $zero, $f6 +/* 047208 80046608 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 04720C 8004660C 3C0B8012 */ lui $t3, %hi(D_8011D55C) # $t3, 0x8012 +/* 047210 80046610 8D6BD55C */ lw $t3, %lo(D_8011D55C)($t3) +/* 047214 80046614 44811000 */ mtc1 $at, $f2 +/* 047218 80046618 2401FFFF */ li $at, -1 +/* 04721C 8004661C 02002825 */ move $a1, $s0 +/* 047220 80046620 46005121 */ cvt.d.s $f4, $f10 +/* 047224 80046624 C60A0038 */ lwc1 $f10, 0x38($s0) +/* 047228 80046628 46243201 */ sub.d $f8, $f6, $f4 +/* 04722C 8004662C 46005187 */ neg.s $f6, $f10 +/* 047230 80046630 460C3102 */ mul.s $f4, $f6, $f12 +/* 047234 80046634 46204020 */ cvt.s.d $f0, $f8 +/* 047238 80046638 46002202 */ mul.s $f8, $f4, $f0 +/* 04723C 8004663C E7A800E8 */ swc1 $f8, 0xe8($sp) +/* 047240 80046640 C60A0040 */ lwc1 $f10, 0x40($s0) +/* 047244 80046644 00000000 */ nop +/* 047248 80046648 46005187 */ neg.s $f6, $f10 +/* 04724C 8004664C 460C3102 */ mul.s $f4, $f6, $f12 +/* 047250 80046650 00000000 */ nop +/* 047254 80046654 46002202 */ mul.s $f8, $f4, $f0 +/* 047258 80046658 11610004 */ beq $t3, $at, .L8004666C +/* 04725C 8004665C E7A800E4 */ swc1 $f8, 0xe4($sp) +/* 047260 80046660 820C01D8 */ lb $t4, 0x1d8($s0) +/* 047264 80046664 00000000 */ nop +/* 047268 80046668 11800003 */ beqz $t4, .L80046678 +.L8004666C: +/* 04726C 8004666C 3C014200 */ li $at, 0x42000000 # 32.000000 +/* 047270 80046670 44811000 */ mtc1 $at, $f2 +/* 047274 80046674 00000000 */ nop +.L80046678: +/* 047278 80046678 820801E1 */ lb $t0, 0x1e1($s0) +/* 04727C 8004667C 8DADD534 */ lw $t5, %lo(D_8011D534)($t5) +/* 047280 80046680 C7A4012C */ lwc1 $f4, 0x12c($sp) +/* 047284 80046684 01A81823 */ subu $v1, $t5, $t0 +/* 047288 80046688 44835000 */ mtc1 $v1, $f10 +/* 04728C 8004668C 00000000 */ nop +/* 047290 80046690 468051A0 */ cvt.s.w $f6, $f10 +/* 047294 80046694 46043202 */ mul.s $f8, $f6, $f4 +/* 047298 80046698 00000000 */ nop +/* 04729C 8004669C 46024283 */ div.s $f10, $f8, $f2 +/* 0472A0 800466A0 444EF800 */ cfc1 $t6, $31 +/* 0472A4 800466A4 00000000 */ nop +/* 0472A8 800466A8 35C10003 */ ori $at, $t6, 3 +/* 0472AC 800466AC 38210002 */ xori $at, $at, 2 +/* 0472B0 800466B0 44C1F800 */ ctc1 $at, $31 +/* 0472B4 800466B4 00000000 */ nop +/* 0472B8 800466B8 460051A4 */ cvt.w.s $f6, $f10 +/* 0472BC 800466BC 44023000 */ mfc1 $v0, $f6 +/* 0472C0 800466C0 44CEF800 */ ctc1 $t6, $31 +/* 0472C4 800466C4 10600009 */ beqz $v1, .L800466EC +/* 0472C8 800466C8 00403825 */ move $a3, $v0 +/* 0472CC 800466CC 14400008 */ bnez $v0, .L800466F0 +/* 0472D0 800466D0 01077821 */ addu $t7, $t0, $a3 +/* 0472D4 800466D4 18600002 */ blez $v1, .L800466E0 +/* 0472D8 800466D8 00000000 */ nop +/* 0472DC 800466DC 24070001 */ li $a3, 1 +.L800466E0: +/* 0472E0 800466E0 04610003 */ bgez $v1, .L800466F0 +/* 0472E4 800466E4 01077821 */ addu $t7, $t0, $a3 +/* 0472E8 800466E8 2407FFFF */ li $a3, -1 +.L800466EC: +/* 0472EC 800466EC 01077821 */ addu $t7, $t0, $a3 +.L800466F0: +/* 0472F0 800466F0 A20F01E1 */ sb $t7, 0x1e1($s0) +/* 0472F4 800466F4 8FA60128 */ lw $a2, 0x128($sp) +/* 0472F8 800466F8 0C0157B0 */ jal func_80055EC0 +/* 0472FC 800466FC E7A000C8 */ swc1 $f0, 0xc8($sp) +/* 047300 80046700 02202025 */ move $a0, $s1 +/* 047304 80046704 0C014D71 */ jal func_800535C4 +/* 047308 80046708 02002825 */ move $a1, $s0 +/* 04730C 8004670C 02202025 */ move $a0, $s1 +/* 047310 80046710 0C01231F */ jal func_80048C7C +/* 047314 80046714 02002825 */ move $a1, $s0 +/* 047318 80046718 3C188012 */ lui $t8, %hi(D_8011D55C) # $t8, 0x8012 +/* 04731C 8004671C 8F18D55C */ lw $t8, %lo(D_8011D55C)($t8) +/* 047320 80046720 2401FFFF */ li $at, -1 +/* 047324 80046724 13010007 */ beq $t8, $at, .L80046744 +/* 047328 80046728 00000000 */ nop +/* 04732C 8004672C 8FA60128 */ lw $a2, 0x128($sp) +/* 047330 80046730 02202025 */ move $a0, $s1 +/* 047334 80046734 0C014871 */ jal func_800521C4 +/* 047338 80046738 02002825 */ move $a1, $s0 +/* 04733C 8004673C 10000003 */ b .L8004674C +/* 047340 80046740 00000000 */ nop +.L80046744: +/* 047344 80046744 0C0148D3 */ jal func_8005234C +/* 047348 80046748 02002025 */ move $a0, $s0 +.L8004674C: +/* 04734C 8004674C 3C198012 */ lui $t9, %hi(D_8011D528) # $t9, 0x8012 +/* 047350 80046750 8F39D528 */ lw $t9, %lo(D_8011D528)($t9) +/* 047354 80046754 3C048012 */ lui $a0, %hi(D_8011D528) # $a0, 0x8012 +/* 047358 80046758 332A8000 */ andi $t2, $t9, 0x8000 +/* 04735C 8004675C 1140001E */ beqz $t2, .L800467D8 +/* 047360 80046760 00000000 */ nop +/* 047364 80046764 C7A4012C */ lwc1 $f4, 0x12c($sp) +/* 047368 80046768 3C01800E */ lui $at, %hi(D_800E63B4) # $at, 0x800e +/* 04736C 8004676C C42B63B0 */ lwc1 $f11, %lo(D_800E63B0)($at) +/* 047370 80046770 C42A63B4 */ lwc1 $f10, %lo(D_800E63B4)($at) +/* 047374 80046774 46002221 */ cvt.d.s $f8, $f4 +/* 047378 80046778 462A4182 */ mul.d $f6, $f8, $f10 +/* 04737C 8004677C E7A80054 */ swc1 $f8, 0x54($sp) +/* 047380 80046780 E7A90050 */ swc1 $f9, 0x50($sp) +/* 047384 80046784 C60400B4 */ lwc1 $f4, 0xb4($s0) +/* 047388 80046788 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 04738C 8004678C 46002221 */ cvt.d.s $f8, $f4 +/* 047390 80046790 46264280 */ add.d $f10, $f8, $f6 +/* 047394 80046794 44804000 */ mtc1 $zero, $f8 +/* 047398 80046798 46205120 */ cvt.s.d $f4, $f10 +/* 04739C 8004679C 44814800 */ mtc1 $at, $f9 +/* 0473A0 800467A0 E60400B4 */ swc1 $f4, 0xb4($s0) +/* 0473A4 800467A4 C60200B4 */ lwc1 $f2, 0xb4($s0) +/* 0473A8 800467A8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0473AC 800467AC 460011A1 */ cvt.d.s $f6, $f2 +/* 0473B0 800467B0 4626403C */ c.lt.d $f8, $f6 +/* 0473B4 800467B4 00000000 */ nop +/* 0473B8 800467B8 45000021 */ bc1f .L80046840 +/* 0473BC 800467BC 00000000 */ nop +/* 0473C0 800467C0 44815000 */ mtc1 $at, $f10 +/* 0473C4 800467C4 00000000 */ nop +/* 0473C8 800467C8 E60A00B4 */ swc1 $f10, 0xb4($s0) +/* 0473CC 800467CC C60200B4 */ lwc1 $f2, 0xb4($s0) +/* 0473D0 800467D0 1000001C */ b .L80046844 +/* 0473D4 800467D4 C60E002C */ lwc1 $f14, 0x2c($s0) +.L800467D8: +/* 0473D8 800467D8 C7A4012C */ lwc1 $f4, 0x12c($sp) +/* 0473DC 800467DC 3C01800E */ lui $at, %hi(D_800E63BC) # $at, 0x800e +/* 0473E0 800467E0 C42763B8 */ lwc1 $f7, %lo(D_800E63B8)($at) +/* 0473E4 800467E4 C42663BC */ lwc1 $f6, %lo(D_800E63BC)($at) +/* 0473E8 800467E8 46002221 */ cvt.d.s $f8, $f4 +/* 0473EC 800467EC 46264282 */ mul.d $f10, $f8, $f6 +/* 0473F0 800467F0 E7A80054 */ swc1 $f8, 0x54($sp) +/* 0473F4 800467F4 E7A90050 */ swc1 $f9, 0x50($sp) +/* 0473F8 800467F8 C60400B4 */ lwc1 $f4, 0xb4($s0) +/* 0473FC 800467FC 00000000 */ nop +/* 047400 80046800 46002221 */ cvt.d.s $f8, $f4 +/* 047404 80046804 462A4181 */ sub.d $f6, $f8, $f10 +/* 047408 80046808 44804000 */ mtc1 $zero, $f8 +/* 04740C 8004680C 46203120 */ cvt.s.d $f4, $f6 +/* 047410 80046810 E60400B4 */ swc1 $f4, 0xb4($s0) +/* 047414 80046814 C60200B4 */ lwc1 $f2, 0xb4($s0) +/* 047418 80046818 00000000 */ nop +/* 04741C 8004681C 4608103C */ c.lt.s $f2, $f8 +/* 047420 80046820 00000000 */ nop +/* 047424 80046824 45000006 */ bc1f .L80046840 +/* 047428 80046828 00000000 */ nop +/* 04742C 8004682C 44805000 */ mtc1 $zero, $f10 +/* 047430 80046830 00000000 */ nop +/* 047434 80046834 E60A00B4 */ swc1 $f10, 0xb4($s0) +/* 047438 80046838 C60200B4 */ lwc1 $f2, 0xb4($s0) +/* 04743C 8004683C 00000000 */ nop +.L80046840: +/* 047440 80046840 C60E002C */ lwc1 $f14, 0x2c($s0) +.L80046844: +/* 047444 80046844 44803000 */ mtc1 $zero, $f6 +/* 047448 80046848 44802800 */ mtc1 $zero, $f5 +/* 04744C 8004684C 460E303C */ c.lt.s $f6, $f14 +/* 047450 80046850 46001006 */ mov.s $f0, $f2 +/* 047454 80046854 45000008 */ bc1f .L80046878 +/* 047458 80046858 3C0B8012 */ lui $t3, %hi(D_8011D528) # $t3, 0x8012 +/* 04745C 8004685C 8D6BD528 */ lw $t3, %lo(D_8011D528)($t3) +/* 047460 80046860 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 047464 80046864 316C8000 */ andi $t4, $t3, 0x8000 +/* 047468 80046868 11800003 */ beqz $t4, .L80046878 +/* 04746C 8004686C 00000000 */ nop +/* 047470 80046870 44810000 */ mtc1 $at, $f0 +/* 047474 80046874 00000000 */ nop +.L80046878: +/* 047478 80046878 3C014040 */ li $at, 0x40400000 # 3.000000 +/* 04747C 8004687C 44812000 */ mtc1 $at, $f4 +/* 047480 80046880 3C014110 */ li $at, 0x41100000 # 9.000000 +/* 047484 80046884 46040002 */ mul.s $f0, $f0, $f4 +/* 047488 80046888 44815000 */ mtc1 $at, $f10 +/* 04748C 8004688C 44802000 */ mtc1 $zero, $f4 +/* 047490 80046890 46000202 */ mul.s $f8, $f0, $f0 +/* 047494 80046894 00000000 */ nop +/* 047498 80046898 460A4303 */ div.s $f12, $f8, $f10 +/* 04749C 8004689C E7AC00F4 */ swc1 $f12, 0xf4($sp) +/* 0474A0 800468A0 8E0D0108 */ lw $t5, 0x108($s0) +/* 0474A4 800468A4 00000000 */ nop +/* 0474A8 800468A8 11A00004 */ beqz $t5, .L800468BC +/* 0474AC 800468AC 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 0474B0 800468B0 44813000 */ mtc1 $at, $f6 +/* 0474B4 800468B4 C60E002C */ lwc1 $f14, 0x2c($s0) +/* 0474B8 800468B8 E60600B4 */ swc1 $f6, 0xb4($s0) +.L800468BC: +/* 0474BC 800468BC 46007221 */ cvt.d.s $f8, $f14 +/* 0474C0 800468C0 4628203C */ c.lt.d $f4, $f8 +/* 0474C4 800468C4 8C84D528 */ lw $a0, %lo(D_8011D528)($a0) +/* 0474C8 800468C8 45000008 */ bc1f .L800468EC +/* 0474CC 800468CC 308E4000 */ andi $t6, $a0, 0x4000 +/* 0474D0 800468D0 3C01800E */ lui $at, %hi(D_800E63C4) # $at, 0x800e +/* 0474D4 800468D4 C42763C0 */ lwc1 $f7, %lo(D_800E63C0)($at) +/* 0474D8 800468D8 C42663C4 */ lwc1 $f6, %lo(D_800E63C4)($at) +/* 0474DC 800468DC 460062A1 */ cvt.d.s $f10, $f12 +/* 0474E0 800468E0 46265102 */ mul.d $f4, $f10, $f6 +/* 0474E4 800468E4 46202220 */ cvt.s.d $f8, $f4 +/* 0474E8 800468E8 E7A800F4 */ swc1 $f8, 0xf4($sp) +.L800468EC: +/* 0474EC 800468EC 11C0002F */ beqz $t6, .L800469AC +/* 0474F0 800468F0 3C0F8012 */ lui $t7, %hi(D_8011D538) # $t7, 0x8012 +/* 0474F4 800468F4 8DEFD538 */ lw $t7, %lo(D_8011D538)($t7) +/* 0474F8 800468F8 C7A70050 */ lwc1 $f7, 0x50($sp) +/* 0474FC 800468FC 29E1FFD8 */ slti $at, $t7, -0x28 +/* 047500 80046900 14200006 */ bnez $at, .L8004691C +/* 047504 80046904 00000000 */ nop +/* 047508 80046908 44805000 */ mtc1 $zero, $f10 +/* 04750C 8004690C 00000000 */ nop +/* 047510 80046910 460A703C */ c.lt.s $f14, $f10 +/* 047514 80046914 00000000 */ nop +/* 047518 80046918 45000024 */ bc1f .L800469AC +.L8004691C: +/* 04751C 8004691C 3C01800E */ lui $at, %hi(D_800E63CC) # $at, 0x800e +/* 047520 80046920 C42563C8 */ lwc1 $f5, %lo(D_800E63C8)($at) +/* 047524 80046924 C42463CC */ lwc1 $f4, %lo(D_800E63CC)($at) +/* 047528 80046928 C7A60054 */ lwc1 $f6, 0x54($sp) +/* 04752C 8004692C C60A00B8 */ lwc1 $f10, 0xb8($s0) +/* 047530 80046930 46243202 */ mul.d $f8, $f6, $f4 +/* 047534 80046934 460051A1 */ cvt.d.s $f6, $f10 +/* 047538 80046938 3C01800E */ lui $at, %hi(D_800E63D0) # $at, 0x800e +/* 04753C 8004693C 46283100 */ add.d $f4, $f6, $f8 +/* 047540 80046940 462022A0 */ cvt.s.d $f10, $f4 +/* 047544 80046944 E60A00B8 */ swc1 $f10, 0xb8($s0) +/* 047548 80046948 C60800B8 */ lwc1 $f8, 0xb8($s0) +/* 04754C 8004694C C42663D4 */ lwc1 $f6, %lo(D_800E63D4)($at) +/* 047550 80046950 C42763D0 */ lwc1 $f7, %lo(D_800E63D0)($at) +/* 047554 80046954 46004121 */ cvt.d.s $f4, $f8 +/* 047558 80046958 4624303C */ c.lt.d $f6, $f4 +/* 04755C 8004695C 44802000 */ mtc1 $zero, $f4 +/* 047560 80046960 45000004 */ bc1f .L80046974 +/* 047564 80046964 3C01800E */ lui $at, %hi(D_800E63D8) # $at, 0x800e +/* 047568 80046968 C42A63D8 */ lwc1 $f10, %lo(D_800E63D8)($at) +/* 04756C 8004696C 00000000 */ nop +/* 047570 80046970 E60A00B8 */ swc1 $f10, 0xb8($s0) +.L80046974: +/* 047574 80046974 C608002C */ lwc1 $f8, 0x2c($s0) +/* 047578 80046978 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 04757C 8004697C 44812800 */ mtc1 $at, $f5 +/* 047580 80046980 460041A1 */ cvt.d.s $f6, $f8 +/* 047584 80046984 4624303C */ c.lt.d $f6, $f4 +/* 047588 80046988 00000000 */ nop +/* 04758C 8004698C 45000004 */ bc1f .L800469A0 +/* 047590 80046990 00000000 */ nop +/* 047594 80046994 86040000 */ lh $a0, ($s0) +/* 047598 80046998 0C01C8D2 */ jal func_80072348 +/* 04759C 8004699C 24050005 */ li $a1, 5 +.L800469A0: +/* 0475A0 800469A0 C60200B8 */ lwc1 $f2, 0xb8($s0) +/* 0475A4 800469A4 10000019 */ b .L80046A0C +/* 0475A8 800469A8 3C014040 */ lui $at, 0x4040 +.L800469AC: +/* 0475AC 800469AC 3C01800E */ lui $at, %hi(D_800E63E4) # $at, 0x800e +/* 0475B0 800469B0 C42963E0 */ lwc1 $f9, %lo(D_800E63E0)($at) +/* 0475B4 800469B4 C42863E4 */ lwc1 $f8, %lo(D_800E63E4)($at) +/* 0475B8 800469B8 C7AB0050 */ lwc1 $f11, 0x50($sp) +/* 0475BC 800469BC C7AA0054 */ lwc1 $f10, 0x54($sp) +/* 0475C0 800469C0 C60400B8 */ lwc1 $f4, 0xb8($s0) +/* 0475C4 800469C4 46285182 */ mul.d $f6, $f10, $f8 +/* 0475C8 800469C8 460022A1 */ cvt.d.s $f10, $f4 +/* 0475CC 800469CC 46265201 */ sub.d $f8, $f10, $f6 +/* 0475D0 800469D0 44805000 */ mtc1 $zero, $f10 +/* 0475D4 800469D4 46204120 */ cvt.s.d $f4, $f8 +/* 0475D8 800469D8 E60400B8 */ swc1 $f4, 0xb8($s0) +/* 0475DC 800469DC C60200B8 */ lwc1 $f2, 0xb8($s0) +/* 0475E0 800469E0 00000000 */ nop +/* 0475E4 800469E4 460A103C */ c.lt.s $f2, $f10 +/* 0475E8 800469E8 00000000 */ nop +/* 0475EC 800469EC 45000007 */ bc1f .L80046A0C +/* 0475F0 800469F0 3C014040 */ lui $at, 0x4040 +/* 0475F4 800469F4 44803000 */ mtc1 $zero, $f6 +/* 0475F8 800469F8 00000000 */ nop +/* 0475FC 800469FC E60600B8 */ swc1 $f6, 0xb8($s0) +/* 047600 80046A00 C60200B8 */ lwc1 $f2, 0xb8($s0) +/* 047604 80046A04 00000000 */ nop +/* 047608 80046A08 3C014040 */ li $at, 0x40400000 # 3.000000 +.L80046A0C: +/* 04760C 80046A0C 44814000 */ mtc1 $at, $f8 +/* 047610 80046A10 3C014110 */ li $at, 0x41100000 # 9.000000 +/* 047614 80046A14 46081002 */ mul.s $f0, $f2, $f8 +/* 047618 80046A18 44815000 */ mtc1 $at, $f10 +/* 04761C 80046A1C 44803800 */ mtc1 $zero, $f7 +/* 047620 80046A20 44803000 */ mtc1 $zero, $f6 +/* 047624 80046A24 46000102 */ mul.s $f4, $f0, $f0 +/* 047628 80046A28 00000000 */ nop +/* 04762C 80046A2C 460A2303 */ div.s $f12, $f4, $f10 +/* 047630 80046A30 E7AC00F0 */ swc1 $f12, 0xf0($sp) +/* 047634 80046A34 C60E002C */ lwc1 $f14, 0x2c($s0) +/* 047638 80046A38 00000000 */ nop +/* 04763C 80046A3C 46007221 */ cvt.d.s $f8, $f14 +/* 047640 80046A40 4628303C */ c.lt.d $f6, $f8 +/* 047644 80046A44 00000000 */ nop +/* 047648 80046A48 45000007 */ bc1f .L80046A68 +/* 04764C 80046A4C 3C01800E */ lui $at, %hi(D_800E63EC) # $at, 0x800e +/* 047650 80046A50 C42B63E8 */ lwc1 $f11, %lo(D_800E63E8)($at) +/* 047654 80046A54 C42A63EC */ lwc1 $f10, %lo(D_800E63EC)($at) +/* 047658 80046A58 46006121 */ cvt.d.s $f4, $f12 +/* 04765C 80046A5C 462A2182 */ mul.d $f6, $f4, $f10 +/* 047660 80046A60 46203220 */ cvt.s.d $f8, $f6 +/* 047664 80046A64 E7A800F0 */ swc1 $f8, 0xf0($sp) +.L80046A68: +/* 047668 80046A68 921801F5 */ lbu $t8, 0x1f5($s0) +/* 04766C 80046A6C 00000000 */ nop +/* 047670 80046A70 13000059 */ beqz $t8, .L80046BD8 +/* 047674 80046A74 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 047678 80046A78 AC20D534 */ sw $zero, %lo(D_8011D534)($at) +/* 04767C 80046A7C 8E19014C */ lw $t9, 0x14c($s0) +/* 047680 80046A80 860201A0 */ lh $v0, 0x1a0($s0) +/* 047684 80046A84 A2000175 */ sb $zero, 0x175($s0) +/* 047688 80046A88 A20001E1 */ sb $zero, 0x1e1($s0) +/* 04768C 80046A8C A20001DB */ sb $zero, 0x1db($s0) +/* 047690 80046A90 A20001E0 */ sb $zero, 0x1e0($s0) +/* 047694 80046A94 872A0000 */ lh $t2, ($t9) +/* 047698 80046A98 304BFFFF */ andi $t3, $v0, 0xffff +/* 04769C 80046A9C 34018001 */ li $at, 32769 +/* 0476A0 80046AA0 014B1823 */ subu $v1, $t2, $t3 +/* 0476A4 80046AA4 0061082A */ slt $at, $v1, $at +/* 0476A8 80046AA8 8FAC0128 */ lw $t4, 0x128($sp) +/* 0476AC 80046AAC 14200003 */ bnez $at, .L80046ABC +/* 0476B0 80046AB0 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 0476B4 80046AB4 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 0476B8 80046AB8 00611821 */ addu $v1, $v1, $at +.L80046ABC: +/* 0476BC 80046ABC 28618000 */ slti $at, $v1, -0x8000 +/* 0476C0 80046AC0 10200002 */ beqz $at, .L80046ACC +/* 0476C4 80046AC4 3401FFFF */ li $at, 65535 +/* 0476C8 80046AC8 00611821 */ addu $v1, $v1, $at +.L80046ACC: +/* 0476CC 80046ACC 006C0019 */ multu $v1, $t4 +/* 0476D0 80046AD0 28610400 */ slti $at, $v1, 0x400 +/* 0476D4 80046AD4 00006812 */ mflo $t5 +/* 0476D8 80046AD8 000D70C3 */ sra $t6, $t5, 3 +/* 0476DC 80046ADC 004E7821 */ addu $t7, $v0, $t6 +/* 0476E0 80046AE0 10200004 */ beqz $at, .L80046AF4 +/* 0476E4 80046AE4 A60F01A0 */ sh $t7, 0x1a0($s0) +/* 0476E8 80046AE8 2861FC01 */ slti $at, $v1, -0x3ff +/* 0476EC 80046AEC 10200005 */ beqz $at, .L80046B04 +/* 0476F0 80046AF0 00000000 */ nop +.L80046AF4: +/* 0476F4 80046AF4 86180000 */ lh $t8, ($s0) +/* 0476F8 80046AF8 2401FFFF */ li $at, -1 +/* 0476FC 80046AFC 17010021 */ bne $t8, $at, .L80046B84 +/* 047700 80046B00 00000000 */ nop +.L80046B04: +/* 047704 80046B04 86190000 */ lh $t9, ($s0) +/* 047708 80046B08 2401FFFF */ li $at, -1 +/* 04770C 80046B0C 1321000B */ beq $t9, $at, .L80046B3C +/* 047710 80046B10 24040107 */ li $a0, 263 +/* 047714 80046B14 8E25000C */ lw $a1, 0xc($s1) +/* 047718 80046B18 8E260010 */ lw $a2, 0x10($s1) +/* 04771C 80046B1C 8E270014 */ lw $a3, 0x14($s1) +/* 047720 80046B20 0C0007AA */ jal func_80001EA8 +/* 047724 80046B24 AFA00010 */ sw $zero, 0x10($sp) +/* 047728 80046B28 02202025 */ move $a0, $s1 +/* 04772C 80046B2C 24050162 */ li $a1, 354 +/* 047730 80046B30 24060008 */ li $a2, 8 +/* 047734 80046B34 0C015C2E */ jal func_800570B8 +/* 047738 80046B38 24070082 */ li $a3, 130 +.L80046B3C: +/* 04773C 80046B3C 0C00322D */ jal func_8000C8B4 +/* 047740 80046B40 2404002D */ li $a0, 45 +/* 047744 80046B44 920B020C */ lbu $t3, 0x20c($s0) +/* 047748 80046B48 240A0002 */ li $t2, 2 +/* 04774C 80046B4C A20201D3 */ sb $v0, 0x1d3($s0) +/* 047750 80046B50 11600005 */ beqz $t3, .L80046B68 +/* 047754 80046B54 A20A0203 */ sb $t2, 0x203($s0) +/* 047758 80046B58 820C0203 */ lb $t4, 0x203($s0) +/* 04775C 80046B5C 00000000 */ nop +/* 047760 80046B60 358D0004 */ ori $t5, $t4, 4 +/* 047764 80046B64 A20D0203 */ sb $t5, 0x203($s0) +.L80046B68: +/* 047768 80046B68 86040000 */ lh $a0, ($s0) +/* 04776C 80046B6C A20001F5 */ sb $zero, 0x1f5($s0) +/* 047770 80046B70 0C01C8D2 */ jal func_80072348 +/* 047774 80046B74 24050008 */ li $a1, 8 +/* 047778 80046B78 C60E002C */ lwc1 $f14, 0x2c($s0) +/* 04777C 80046B7C 10000017 */ b .L80046BDC +/* 047780 80046B80 44800000 */ mtc1 $zero, $f0 +.L80046B84: +/* 047784 80046B84 C624001C */ lwc1 $f4, 0x1c($s1) +/* 047788 80046B88 3C013FE8 */ li $at, 0x3FE80000 # 1.812500 +/* 04778C 80046B8C 44810800 */ mtc1 $at, $f1 +/* 047790 80046B90 44800000 */ mtc1 $zero, $f0 +/* 047794 80046B94 460022A1 */ cvt.d.s $f10, $f4 +/* 047798 80046B98 46205182 */ mul.d $f6, $f10, $f0 +/* 04779C 80046B9C C6240020 */ lwc1 $f4, 0x20($s1) +/* 0477A0 80046BA0 00000000 */ nop +/* 0477A4 80046BA4 460022A1 */ cvt.d.s $f10, $f4 +/* 0477A8 80046BA8 C6240024 */ lwc1 $f4, 0x24($s1) +/* 0477AC 80046BAC 46203220 */ cvt.s.d $f8, $f6 +/* 0477B0 80046BB0 46205182 */ mul.d $f6, $f10, $f0 +/* 0477B4 80046BB4 E628001C */ swc1 $f8, 0x1c($s1) +/* 0477B8 80046BB8 460022A1 */ cvt.d.s $f10, $f4 +/* 0477BC 80046BBC 46203220 */ cvt.s.d $f8, $f6 +/* 0477C0 80046BC0 46205182 */ mul.d $f6, $f10, $f0 +/* 0477C4 80046BC4 E6280020 */ swc1 $f8, 0x20($s1) +/* 0477C8 80046BC8 46203220 */ cvt.s.d $f8, $f6 +/* 0477CC 80046BCC E6280024 */ swc1 $f8, 0x24($s1) +/* 0477D0 80046BD0 C60E002C */ lwc1 $f14, 0x2c($s0) +/* 0477D4 80046BD4 00000000 */ nop +.L80046BD8: +/* 0477D8 80046BD8 44800000 */ mtc1 $zero, $f0 +.L80046BDC: +/* 0477DC 80046BDC 46007087 */ neg.s $f2, $f14 +/* 0477E0 80046BE0 4600103C */ c.lt.s $f2, $f0 +/* 0477E4 80046BE4 44802000 */ mtc1 $zero, $f4 +/* 0477E8 80046BE8 45000002 */ bc1f .L80046BF4 +/* 0477EC 80046BEC 3C01402C */ li $at, 0x402C0000 # 2.687500 +/* 0477F0 80046BF0 46000086 */ mov.s $f2, $f0 +.L80046BF4: +/* 0477F4 80046BF4 44812800 */ mtc1 $at, $f5 +/* 0477F8 80046BF8 460012A1 */ cvt.d.s $f10, $f2 +/* 0477FC 80046BFC 462A203C */ c.lt.d $f4, $f10 +/* 047800 80046C00 00000000 */ nop +/* 047804 80046C04 45000003 */ bc1f .L80046C14 +/* 047808 80046C08 3C014160 */ li $at, 0x41600000 # 14.000000 +/* 04780C 80046C0C 44811000 */ mtc1 $at, $f2 +/* 047810 80046C10 00000000 */ nop +.L80046C14: +/* 047814 80046C14 3C014160 */ li $at, 0x41600000 # 14.000000 +/* 047818 80046C18 44813000 */ mtc1 $at, $f6 +/* 04781C 80046C1C 820E01D4 */ lb $t6, 0x1d4($s0) +/* 047820 80046C20 46061083 */ div.s $f2, $f2, $f6 +/* 047824 80046C24 15C00006 */ bnez $t6, .L80046C40 +/* 047828 80046C28 8FA50128 */ lw $a1, 0x128($sp) +/* 04782C 80046C2C 820F01D5 */ lb $t7, 0x1d5($s0) +/* 047830 80046C30 C7A800F0 */ lwc1 $f8, 0xf0($sp) +/* 047834 80046C34 11E00009 */ beqz $t7, .L80046C5C +/* 047838 80046C38 3C014580 */ li $at, 0x45800000 # 4096.000000 +/* 04783C 80046C3C 8FA50128 */ lw $a1, 0x128($sp) +.L80046C40: +/* 047840 80046C40 86060160 */ lh $a2, 0x160($s0) +/* 047844 80046C44 AFA00010 */ sw $zero, 0x10($sp) +/* 047848 80046C48 02002025 */ move $a0, $s0 +/* 04784C 80046C4C 0C014214 */ jal func_80050850 +/* 047850 80046C50 00003825 */ move $a3, $zero +/* 047854 80046C54 10000015 */ b .L80046CAC +/* 047858 80046C58 820B01D5 */ lb $t3, 0x1d5($s0) +.L80046C5C: +/* 04785C 80046C5C 44812000 */ mtc1 $at, $f4 +/* 047860 80046C60 8FA50128 */ lw $a1, 0x128($sp) +/* 047864 80046C64 46044282 */ mul.s $f10, $f8, $f4 +/* 047868 80046C68 02002025 */ move $a0, $s0 +/* 04786C 80046C6C 00003025 */ move $a2, $zero +/* 047870 80046C70 AFA00010 */ sw $zero, 0x10($sp) +/* 047874 80046C74 46025182 */ mul.s $f6, $f10, $f2 +/* 047878 80046C78 4458F800 */ cfc1 $t8, $31 +/* 04787C 80046C7C 00000000 */ nop +/* 047880 80046C80 37010003 */ ori $at, $t8, 3 +/* 047884 80046C84 38210002 */ xori $at, $at, 2 +/* 047888 80046C88 44C1F800 */ ctc1 $at, $31 +/* 04788C 80046C8C 00000000 */ nop +/* 047890 80046C90 46003224 */ cvt.w.s $f8, $f6 +/* 047894 80046C94 44074000 */ mfc1 $a3, $f8 +/* 047898 80046C98 44D8F800 */ ctc1 $t8, $31 +/* 04789C 80046C9C 0007CC00 */ sll $t9, $a3, 0x10 +/* 0478A0 80046CA0 0C014214 */ jal func_80050850 +/* 0478A4 80046CA4 00193C03 */ sra $a3, $t9, 0x10 +/* 0478A8 80046CA8 820B01D5 */ lb $t3, 0x1d5($s0) +.L80046CAC: +/* 0478AC 80046CAC 44800000 */ mtc1 $zero, $f0 +/* 0478B0 80046CB0 11600010 */ beqz $t3, .L80046CF4 +/* 0478B4 80046CB4 00000000 */ nop +/* 0478B8 80046CB8 86020160 */ lh $v0, 0x160($s0) +/* 0478BC 80046CBC 00000000 */ nop +/* 0478C0 80046CC0 000260C3 */ sra $t4, $v0, 3 +/* 0478C4 80046CC4 004C6823 */ subu $t5, $v0, $t4 +/* 0478C8 80046CC8 A60D0160 */ sh $t5, 0x160($s0) +/* 0478CC 80046CCC 86020160 */ lh $v0, 0x160($s0) +/* 0478D0 80046CD0 00000000 */ nop +/* 0478D4 80046CD4 28410010 */ slti $at, $v0, 0x10 +/* 0478D8 80046CD8 10200004 */ beqz $at, .L80046CEC +/* 0478DC 80046CDC 2841FFF1 */ slti $at, $v0, -0xf +/* 0478E0 80046CE0 14200002 */ bnez $at, .L80046CEC +/* 0478E4 80046CE4 00000000 */ nop +/* 0478E8 80046CE8 A20001D5 */ sb $zero, 0x1d5($s0) +.L80046CEC: +/* 0478EC 80046CEC 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 0478F0 80046CF0 AC20D534 */ sw $zero, %lo(D_8011D534)($at) +.L80046CF4: +/* 0478F4 80046CF4 820201DB */ lb $v0, 0x1db($s0) +/* 0478F8 80046CF8 00000000 */ nop +/* 0478FC 80046CFC 1840000D */ blez $v0, .L80046D34 +/* 047900 80046D00 00000000 */ nop +/* 047904 80046D04 8FA60128 */ lw $a2, 0x128($sp) +/* 047908 80046D08 820E01D4 */ lb $t6, 0x1d4($s0) +/* 04790C 80046D0C 2419000A */ li $t9, 10 +/* 047910 80046D10 01C67821 */ addu $t7, $t6, $a2 +/* 047914 80046D14 A20F01D4 */ sb $t7, 0x1d4($s0) +/* 047918 80046D18 821801D4 */ lb $t8, 0x1d4($s0) +/* 04791C 80046D1C 00000000 */ nop +/* 047920 80046D20 2B01000B */ slti $at, $t8, 0xb +/* 047924 80046D24 14200029 */ bnez $at, .L80046DCC +/* 047928 80046D28 00000000 */ nop +/* 04792C 80046D2C 10000027 */ b .L80046DCC +/* 047930 80046D30 A21901D4 */ sb $t9, 0x1d4($s0) +.L80046D34: +/* 047934 80046D34 0441000D */ bgez $v0, .L80046D6C +/* 047938 80046D38 00000000 */ nop +/* 04793C 80046D3C 820A01D4 */ lb $t2, 0x1d4($s0) +/* 047940 80046D40 8FAB0128 */ lw $t3, 0x128($sp) +/* 047944 80046D44 240EFFF6 */ li $t6, -10 +/* 047948 80046D48 014B6023 */ subu $t4, $t2, $t3 +/* 04794C 80046D4C A20C01D4 */ sb $t4, 0x1d4($s0) +/* 047950 80046D50 820D01D4 */ lb $t5, 0x1d4($s0) +/* 047954 80046D54 00000000 */ nop +/* 047958 80046D58 29A1FFF6 */ slti $at, $t5, -0xa +/* 04795C 80046D5C 1020001B */ beqz $at, .L80046DCC +/* 047960 80046D60 00000000 */ nop +/* 047964 80046D64 10000019 */ b .L80046DCC +/* 047968 80046D68 A20E01D4 */ sb $t6, 0x1d4($s0) +.L80046D6C: +/* 04796C 80046D6C 820301D4 */ lb $v1, 0x1d4($s0) +/* 047970 80046D70 8FAF0128 */ lw $t7, 0x128($sp) +/* 047974 80046D74 04610009 */ bgez $v1, .L80046D9C +/* 047978 80046D78 006FC021 */ addu $t8, $v1, $t7 +/* 04797C 80046D7C A21801D4 */ sb $t8, 0x1d4($s0) +/* 047980 80046D80 821901D4 */ lb $t9, 0x1d4($s0) +/* 047984 80046D84 240A0001 */ li $t2, 1 +/* 047988 80046D88 1B200010 */ blez $t9, .L80046DCC +/* 04798C 80046D8C 00000000 */ nop +/* 047990 80046D90 A20001D4 */ sb $zero, 0x1d4($s0) +/* 047994 80046D94 1000000D */ b .L80046DCC +/* 047998 80046D98 A20A01D5 */ sb $t2, 0x1d5($s0) +.L80046D9C: +/* 04799C 80046D9C 1860000B */ blez $v1, .L80046DCC +/* 0479A0 80046DA0 00000000 */ nop +/* 0479A4 80046DA4 8FAB0128 */ lw $t3, 0x128($sp) +/* 0479A8 80046DA8 240E0001 */ li $t6, 1 +/* 0479AC 80046DAC 006B6023 */ subu $t4, $v1, $t3 +/* 0479B0 80046DB0 A20C01D4 */ sb $t4, 0x1d4($s0) +/* 0479B4 80046DB4 820D01D4 */ lb $t5, 0x1d4($s0) +/* 0479B8 80046DB8 00000000 */ nop +/* 0479BC 80046DBC 05A10003 */ bgez $t5, .L80046DCC +/* 0479C0 80046DC0 00000000 */ nop +/* 0479C4 80046DC4 A20001D4 */ sb $zero, 0x1d4($s0) +/* 0479C8 80046DC8 A20E01D5 */ sb $t6, 0x1d5($s0) +.L80046DCC: +/* 0479CC 80046DCC 820501E2 */ lb $a1, 0x1e2($s0) +/* 0479D0 80046DD0 8FA60128 */ lw $a2, 0x128($sp) +/* 0479D4 80046DD4 10A00011 */ beqz $a1, .L80046E1C +/* 0479D8 80046DD8 28A10003 */ slti $at, $a1, 3 +/* 0479DC 80046DDC 1020000F */ beqz $at, .L80046E1C +/* 0479E0 80046DE0 00000000 */ nop +/* 0479E4 80046DE4 86240002 */ lh $a0, 2($s1) +/* 0479E8 80046DE8 00000000 */ nop +/* 0479EC 80046DEC 00860019 */ multu $a0, $a2 +/* 0479F0 80046DF0 00007812 */ mflo $t7 +/* 0479F4 80046DF4 000FC183 */ sra $t8, $t7, 6 +/* 0479F8 80046DF8 0098C823 */ subu $t9, $a0, $t8 +/* 0479FC 80046DFC A6390002 */ sh $t9, 2($s1) +/* 047A00 80046E00 860501A4 */ lh $a1, 0x1a4($s0) +/* 047A04 80046E04 00000000 */ nop +/* 047A08 80046E08 00A60019 */ multu $a1, $a2 +/* 047A0C 80046E0C 00005012 */ mflo $t2 +/* 047A10 80046E10 000A5983 */ sra $t3, $t2, 6 +/* 047A14 80046E14 00AB6023 */ subu $t4, $a1, $t3 +/* 047A18 80046E18 A60C01A4 */ sh $t4, 0x1a4($s0) +.L80046E1C: +/* 047A1C 80046E1C 820301D4 */ lb $v1, 0x1d4($s0) +/* 047A20 80046E20 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 +/* 047A24 80046E24 10600041 */ beqz $v1, .L80046F2C +/* 047A28 80046E28 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 +/* 047A2C 80046E2C 86020160 */ lh $v0, 0x160($s0) +/* 047A30 80046E30 A20001D5 */ sb $zero, 0x1d5($s0) +/* 047A34 80046E34 18600018 */ blez $v1, .L80046E98 +/* 047A38 80046E38 00404025 */ move $t0, $v0 +/* 047A3C 80046E3C 00036880 */ sll $t5, $v1, 2 +/* 047A40 80046E40 01A36823 */ subu $t5, $t5, $v1 +/* 047A44 80046E44 000D6880 */ sll $t5, $t5, 2 +/* 047A48 80046E48 01A36823 */ subu $t5, $t5, $v1 +/* 047A4C 80046E4C 000D6880 */ sll $t5, $t5, 2 +/* 047A50 80046E50 01A36821 */ addu $t5, $t5, $v1 +/* 047A54 80046E54 000D6880 */ sll $t5, $t5, 2 +/* 047A58 80046E58 01A36823 */ subu $t5, $t5, $v1 +/* 047A5C 80046E5C 01A60019 */ multu $t5, $a2 +/* 047A60 80046E60 2841F000 */ slti $at, $v0, -0x1000 +/* 047A64 80046E64 00007012 */ mflo $t6 +/* 047A68 80046E68 004E7821 */ addu $t7, $v0, $t6 +/* 047A6C 80046E6C 1020000A */ beqz $at, .L80046E98 +/* 047A70 80046E70 A60F0160 */ sh $t7, 0x160($s0) +/* 047A74 80046E74 86180160 */ lh $t8, 0x160($s0) +/* 047A78 80046E78 00000000 */ nop +/* 047A7C 80046E7C 2B01F000 */ slti $at, $t8, -0x1000 +/* 047A80 80046E80 14200005 */ bnez $at, .L80046E98 +/* 047A84 80046E84 00000000 */ nop +/* 047A88 80046E88 821901DB */ lb $t9, 0x1db($s0) +/* 047A8C 80046E8C 820301D4 */ lb $v1, 0x1d4($s0) +/* 047A90 80046E90 272AFFFF */ addiu $t2, $t9, -1 +/* 047A94 80046E94 A20A01DB */ sb $t2, 0x1db($s0) +.L80046E98: +/* 047A98 80046E98 04610019 */ bgez $v1, .L80046F00 +/* 047A9C 80046E9C 3C0A8012 */ lui $t2, %hi(D_8011D528) # $t2, 0x8012 +/* 047AA0 80046EA0 00036080 */ sll $t4, $v1, 2 +/* 047AA4 80046EA4 01836023 */ subu $t4, $t4, $v1 +/* 047AA8 80046EA8 000C6080 */ sll $t4, $t4, 2 +/* 047AAC 80046EAC 01836023 */ subu $t4, $t4, $v1 +/* 047AB0 80046EB0 000C6080 */ sll $t4, $t4, 2 +/* 047AB4 80046EB4 01836021 */ addu $t4, $t4, $v1 +/* 047AB8 80046EB8 000C6080 */ sll $t4, $t4, 2 +/* 047ABC 80046EBC 01836023 */ subu $t4, $t4, $v1 +/* 047AC0 80046EC0 01860019 */ multu $t4, $a2 +/* 047AC4 80046EC4 860B0160 */ lh $t3, 0x160($s0) +/* 047AC8 80046EC8 29011001 */ slti $at, $t0, 0x1001 +/* 047ACC 80046ECC 00006812 */ mflo $t5 +/* 047AD0 80046ED0 016D7023 */ subu $t6, $t3, $t5 +/* 047AD4 80046ED4 1420000A */ bnez $at, .L80046F00 +/* 047AD8 80046ED8 A60E0160 */ sh $t6, 0x160($s0) +/* 047ADC 80046EDC 860F0160 */ lh $t7, 0x160($s0) +/* 047AE0 80046EE0 00000000 */ nop +/* 047AE4 80046EE4 29E11001 */ slti $at, $t7, 0x1001 +/* 047AE8 80046EE8 10200005 */ beqz $at, .L80046F00 +/* 047AEC 80046EEC 00000000 */ nop +/* 047AF0 80046EF0 821801DB */ lb $t8, 0x1db($s0) +/* 047AF4 80046EF4 00000000 */ nop +/* 047AF8 80046EF8 27190001 */ addiu $t9, $t8, 1 +/* 047AFC 80046EFC A21901DB */ sb $t9, 0x1db($s0) +.L80046F00: +/* 047B00 80046F00 8D4AD528 */ lw $t2, %lo(D_8011D528)($t2) +/* 047B04 80046F04 3C01FFFF */ lui $at, (0xFFFF3FFF >> 16) # lui $at, 0xffff +/* 047B08 80046F08 34213FFF */ ori $at, (0xFFFF3FFF & 0xFFFF) # ori $at, $at, 0x3fff +/* 047B0C 80046F0C 01416024 */ and $t4, $t2, $at +/* 047B10 80046F10 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 +/* 047B14 80046F14 AC2CD528 */ sw $t4, %lo(D_8011D528)($at) +/* 047B18 80046F18 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 047B1C 80046F1C AC20D534 */ sw $zero, %lo(D_8011D534)($at) +/* 047B20 80046F20 A20001E1 */ sb $zero, 0x1e1($s0) +/* 047B24 80046F24 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 +/* 047B28 80046F28 AC20D538 */ sw $zero, %lo(D_8011D538)($at) +.L80046F2C: +/* 047B2C 80046F2C 920B01F1 */ lbu $t3, 0x1f1($s0) +/* 047B30 80046F30 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 047B34 80046F34 1160000D */ beqz $t3, .L80046F6C +/* 047B38 80046F38 27A40068 */ addiu $a0, $sp, 0x68 +/* 047B3C 80046F3C 00067080 */ sll $t6, $a2, 2 +/* 047B40 80046F40 0006C880 */ sll $t9, $a2, 2 +/* 047B44 80046F44 860D0160 */ lh $t5, 0x160($s0) +/* 047B48 80046F48 86180162 */ lh $t8, 0x162($s0) +/* 047B4C 80046F4C 01C67021 */ addu $t6, $t6, $a2 +/* 047B50 80046F50 0326C823 */ subu $t9, $t9, $a2 +/* 047B54 80046F54 000E7200 */ sll $t6, $t6, 8 +/* 047B58 80046F58 0019CA40 */ sll $t9, $t9, 9 +/* 047B5C 80046F5C 01AE7821 */ addu $t7, $t5, $t6 +/* 047B60 80046F60 03195021 */ addu $t2, $t8, $t9 +/* 047B64 80046F64 A60F0160 */ sh $t7, 0x160($s0) +/* 047B68 80046F68 A60A0162 */ sh $t2, 0x162($s0) +.L80046F6C: +/* 047B6C 80046F6C 862C0000 */ lh $t4, ($s1) +/* 047B70 80046F70 44812000 */ mtc1 $at, $f4 +/* 047B74 80046F74 A4AC0000 */ sh $t4, ($a1) +/* 047B78 80046F78 862B0002 */ lh $t3, 2($s1) +/* 047B7C 80046F7C A4A00004 */ sh $zero, 4($a1) +/* 047B80 80046F80 E4A0000C */ swc1 $f0, 0xc($a1) +/* 047B84 80046F84 E4A00010 */ swc1 $f0, 0x10($a1) +/* 047B88 80046F88 E4A00014 */ swc1 $f0, 0x14($a1) +/* 047B8C 80046F8C E4A40008 */ swc1 $f4, 8($a1) +/* 047B90 80046F90 0C01BF0C */ jal func_8006FC30 +/* 047B94 80046F94 A4AB0002 */ sh $t3, 2($a1) +/* 047B98 80046F98 44800000 */ mtc1 $zero, $f0 +/* 047B9C 80046F9C 260D0038 */ addiu $t5, $s0, 0x38 +/* 047BA0 80046FA0 260E003C */ addiu $t6, $s0, 0x3c +/* 047BA4 80046FA4 260F0040 */ addiu $t7, $s0, 0x40 +/* 047BA8 80046FA8 44050000 */ mfc1 $a1, $f0 +/* 047BAC 80046FAC 44060000 */ mfc1 $a2, $f0 +/* 047BB0 80046FB0 AFAF0018 */ sw $t7, 0x18($sp) +/* 047BB4 80046FB4 AFAE0014 */ sw $t6, 0x14($sp) +/* 047BB8 80046FB8 AFAD0010 */ sw $t5, 0x10($sp) +/* 047BBC 80046FBC 27A40068 */ addiu $a0, $sp, 0x68 +/* 047BC0 80046FC0 0C01BD93 */ jal func_8006F64C +/* 047BC4 80046FC4 3C073F80 */ lui $a3, 0x3f80 +/* 047BC8 80046FC8 44800000 */ mtc1 $zero, $f0 +/* 047BCC 80046FCC 26180044 */ addiu $t8, $s0, 0x44 +/* 047BD0 80046FD0 26190048 */ addiu $t9, $s0, 0x48 +/* 047BD4 80046FD4 260A004C */ addiu $t2, $s0, 0x4c +/* 047BD8 80046FD8 44050000 */ mfc1 $a1, $f0 +/* 047BDC 80046FDC 44070000 */ mfc1 $a3, $f0 +/* 047BE0 80046FE0 AFAA0018 */ sw $t2, 0x18($sp) +/* 047BE4 80046FE4 AFB90014 */ sw $t9, 0x14($sp) +/* 047BE8 80046FE8 AFB80010 */ sw $t8, 0x10($sp) +/* 047BEC 80046FEC 27A40068 */ addiu $a0, $sp, 0x68 +/* 047BF0 80046FF0 0C01BD93 */ jal func_8006F64C +/* 047BF4 80046FF4 3C063F80 */ lui $a2, 0x3f80 +/* 047BF8 80046FF8 44800000 */ mtc1 $zero, $f0 +/* 047BFC 80046FFC 260C0050 */ addiu $t4, $s0, 0x50 +/* 047C00 80047000 260B0054 */ addiu $t3, $s0, 0x54 +/* 047C04 80047004 260D0058 */ addiu $t5, $s0, 0x58 +/* 047C08 80047008 44060000 */ mfc1 $a2, $f0 +/* 047C0C 8004700C 44070000 */ mfc1 $a3, $f0 +/* 047C10 80047010 AFAD0018 */ sw $t5, 0x18($sp) +/* 047C14 80047014 AFAB0014 */ sw $t3, 0x14($sp) +/* 047C18 80047018 AFAC0010 */ sw $t4, 0x10($sp) +/* 047C1C 8004701C 27A40068 */ addiu $a0, $sp, 0x68 +/* 047C20 80047020 0C01BD93 */ jal func_8006F64C +/* 047C24 80047024 3C053F80 */ lui $a1, 0x3f80 +/* 047C28 80047028 8E0E0148 */ lw $t6, 0x148($s0) +/* 047C2C 8004702C 44805000 */ mtc1 $zero, $f10 +/* 047C30 80047030 15C0000E */ bnez $t6, .L8004706C +/* 047C34 80047034 3C0A8012 */ lui $t2, %hi(D_8011D564) # $t2, 0x8012 +/* 047C38 80047038 A220003B */ sb $zero, 0x3b($s1) +/* 047C3C 8004703C 820201E1 */ lb $v0, 0x1e1($s0) +/* 047C40 80047040 24180028 */ li $t8, 40 +/* 047C44 80047044 00027843 */ sra $t7, $v0, 1 +/* 047C48 80047048 030F1023 */ subu $v0, $t8, $t7 +/* 047C4C 8004704C 04410003 */ bgez $v0, .L8004705C +/* 047C50 80047050 2841004A */ slti $at, $v0, 0x4a +/* 047C54 80047054 00001025 */ move $v0, $zero +/* 047C58 80047058 2841004A */ slti $at, $v0, 0x4a +.L8004705C: +/* 047C5C 8004705C 14200002 */ bnez $at, .L80047068 +/* 047C60 80047060 00000000 */ nop +/* 047C64 80047064 24020049 */ li $v0, 73 +.L80047068: +/* 047C68 80047068 A6220018 */ sh $v0, 0x18($s1) +.L8004706C: +/* 047C6C 8004706C C612002C */ lwc1 $f18, 0x2c($s0) +/* 047C70 80047070 3C014140 */ li $at, 0x41400000 # 12.000000 +/* 047C74 80047074 460A903C */ c.lt.s $f18, $f10 +/* 047C78 80047078 44810000 */ mtc1 $at, $f0 +/* 047C7C 8004707C 45000002 */ bc1f .L80047088 +/* 047C80 80047080 3C0D8012 */ lui $t5, %hi(D_8011D55C) # $t5, 0x8012 +/* 047C84 80047084 46009487 */ neg.s $f18, $f18 +.L80047088: +/* 047C88 80047088 4612003C */ c.lt.s $f0, $f18 +/* 047C8C 8004708C 00004825 */ move $t1, $zero +/* 047C90 80047090 45000002 */ bc1f .L8004709C +/* 047C94 80047094 00003825 */ move $a3, $zero +/* 047C98 80047098 46000486 */ mov.s $f18, $f0 +.L8004709C: +/* 047C9C 8004709C 4459F800 */ cfc1 $t9, $31 +/* 047CA0 800470A0 8D4AD564 */ lw $t2, %lo(D_8011D564)($t2) +/* 047CA4 800470A4 37210003 */ ori $at, $t9, 3 +/* 047CA8 800470A8 38210002 */ xori $at, $at, 2 +/* 047CAC 800470AC 44C1F800 */ ctc1 $at, $31 +/* 047CB0 800470B0 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 047CB4 800470B4 460091A4 */ cvt.w.s $f6, $f18 +/* 047CB8 800470B8 44815800 */ mtc1 $at, $f11 +/* 047CBC 800470BC 44023000 */ mfc1 $v0, $f6 +/* 047CC0 800470C0 44D9F800 */ ctc1 $t9, $31 +/* 047CC4 800470C4 44824000 */ mtc1 $v0, $f8 +/* 047CC8 800470C8 44805000 */ mtc1 $zero, $f10 +/* 047CCC 800470CC 46804120 */ cvt.s.w $f4, $f8 +/* 047CD0 800470D0 00026080 */ sll $t4, $v0, 2 +/* 047CD4 800470D4 014C1821 */ addu $v1, $t2, $t4 +/* 047CD8 800470D8 46049001 */ sub.s $f0, $f18, $f4 +/* 047CDC 800470DC C4640000 */ lwc1 $f4, ($v1) +/* 047CE0 800470E0 460001A1 */ cvt.d.s $f6, $f0 +/* 047CE4 800470E4 46265201 */ sub.d $f8, $f10, $f6 +/* 047CE8 800470E8 3C068012 */ lui $a2, %hi(D_8011D56C) # $a2, 0x8012 +/* 047CEC 800470EC 460022A1 */ cvt.d.s $f10, $f4 +/* 047CF0 800470F0 46285182 */ mul.d $f6, $f10, $f8 +/* 047CF4 800470F4 C4640004 */ lwc1 $f4, 4($v1) +/* 047CF8 800470F8 24C6D56C */ addiu $a2, %lo(D_8011D56C) # addiu $a2, $a2, -0x2a94 +/* 047CFC 800470FC 3C013FE8 */ li $at, 0x3FE80000 # 1.812500 +/* 047D00 80047100 02001825 */ move $v1, $s0 +/* 047D04 80047104 46002282 */ mul.s $f10, $f4, $f0 +/* 047D08 80047108 46005221 */ cvt.d.s $f8, $f10 +/* 047D0C 8004710C 46283100 */ add.d $f4, $f6, $f8 +/* 047D10 80047110 C4CA0000 */ lwc1 $f10, ($a2) +/* 047D14 80047114 44804000 */ mtc1 $zero, $f8 +/* 047D18 80047118 44814800 */ mtc1 $at, $f9 +/* 047D1C 8004711C 462024A0 */ cvt.s.d $f18, $f4 +/* 047D20 80047120 460051A1 */ cvt.d.s $f6, $f10 +/* 047D24 80047124 46283102 */ mul.d $f4, $f6, $f8 +/* 047D28 80047128 462022A0 */ cvt.s.d $f10, $f4 +/* 047D2C 8004712C E4CA0000 */ swc1 $f10, ($a2) +/* 047D30 80047130 820B01E2 */ lb $t3, 0x1e2($s0) +/* 047D34 80047134 00000000 */ nop +/* 047D38 80047138 29610003 */ slti $at, $t3, 3 +/* 047D3C 8004713C 14200010 */ bnez $at, .L80047180 +/* 047D40 80047140 00000000 */ nop +/* 047D44 80047144 C4C60000 */ lwc1 $f6, ($a2) +/* 047D48 80047148 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 047D4C 8004714C 44812800 */ mtc1 $at, $f5 +/* 047D50 80047150 44802000 */ mtc1 $zero, $f4 +/* 047D54 80047154 46003221 */ cvt.d.s $f8, $f6 +/* 047D58 80047158 46244282 */ mul.d $f10, $f8, $f4 +/* 047D5C 8004715C C7A60054 */ lwc1 $f6, 0x54($sp) +/* 047D60 80047160 C7A70050 */ lwc1 $f7, 0x50($sp) +/* 047D64 80047164 C6240020 */ lwc1 $f4, 0x20($s1) +/* 047D68 80047168 46265202 */ mul.d $f8, $f10, $f6 +/* 047D6C 8004716C 460022A1 */ cvt.d.s $f10, $f4 +/* 047D70 80047170 46285181 */ sub.d $f6, $f10, $f8 +/* 047D74 80047174 46203120 */ cvt.s.d $f4, $f6 +/* 047D78 80047178 10000007 */ b .L80047198 +/* 047D7C 8004717C E6240020 */ swc1 $f4, 0x20($s1) +.L80047180: +/* 047D80 80047180 C4CA0000 */ lwc1 $f10, ($a2) +/* 047D84 80047184 C7A8012C */ lwc1 $f8, 0x12c($sp) +/* 047D88 80047188 C6240020 */ lwc1 $f4, 0x20($s1) +/* 047D8C 8004718C 46085182 */ mul.s $f6, $f10, $f8 +/* 047D90 80047190 46062281 */ sub.s $f10, $f4, $f6 +/* 047D94 80047194 E62A0020 */ swc1 $f10, 0x20($s1) +.L80047198: +/* 047D98 80047198 8DADD55C */ lw $t5, %lo(D_8011D55C)($t5) +/* 047D9C 8004719C 2401FFFF */ li $at, -1 +/* 047DA0 800471A0 11A10008 */ beq $t5, $at, .L800471C4 +/* 047DA4 800471A4 24060004 */ li $a2, 4 +/* 047DA8 800471A8 820E01D8 */ lb $t6, 0x1d8($s0) +/* 047DAC 800471AC 00000000 */ nop +/* 047DB0 800471B0 15C00004 */ bnez $t6, .L800471C4 +/* 047DB4 800471B4 00000000 */ nop +/* 047DB8 800471B8 820801E1 */ lb $t0, 0x1e1($s0) +/* 047DBC 800471BC 10000004 */ b .L800471D0 +/* 047DC0 800471C0 00000000 */ nop +.L800471C4: +/* 047DC4 800471C4 3C088012 */ lui $t0, %hi(D_8011D534) # $t0, 0x8012 +/* 047DC8 800471C8 8D08D534 */ lw $t0, %lo(D_8011D534)($t0) +/* 047DCC 800471CC 00000000 */ nop +.L800471D0: +/* 047DD0 800471D0 3C01800E */ lui $at, %hi(D_800E63F0) # $at, 0x800e +/* 047DD4 800471D4 C42263F0 */ lwc1 $f2, %lo(D_800E63F0)($at) +/* 047DD8 800471D8 3C01800E */ lui $at, %hi(D_800E63FC) # $at, 0x800e +/* 047DDC 800471DC E7A200FC */ swc1 $f2, 0xfc($sp) +/* 047DE0 800471E0 C6280020 */ lwc1 $f8, 0x20($s1) +/* 047DE4 800471E4 C42563F8 */ lwc1 $f5, %lo(D_800E63F8)($at) +/* 047DE8 800471E8 C42463FC */ lwc1 $f4, %lo(D_800E63FC)($at) +/* 047DEC 800471EC 46004021 */ cvt.d.s $f0, $f8 +/* 047DF0 800471F0 46240182 */ mul.d $f6, $f0, $f4 +/* 047DF4 800471F4 C7AB0050 */ lwc1 $f11, 0x50($sp) +/* 047DF8 800471F8 C7AA0054 */ lwc1 $f10, 0x54($sp) +/* 047DFC 800471FC 3C0F8012 */ lui $t7, %hi(D_8011D528) # $t7, 0x8012 +/* 047E00 80047200 462A3202 */ mul.d $f8, $f6, $f10 +/* 047E04 80047204 46280101 */ sub.d $f4, $f0, $f8 +/* 047E08 80047208 462021A0 */ cvt.s.d $f6, $f4 +/* 047E0C 8004720C E6260020 */ swc1 $f6, 0x20($s1) +/* 047E10 80047210 8DEFD528 */ lw $t7, %lo(D_8011D528)($t7) +/* 047E14 80047214 00000000 */ nop +/* 047E18 80047218 31F84000 */ andi $t8, $t7, 0x4000 +/* 047E1C 8004721C 13000013 */ beqz $t8, .L8004726C +/* 047E20 80047220 3C198012 */ lui $t9, %hi(D_8011D538) # $t9, 0x8012 +/* 047E24 80047224 8F39D538 */ lw $t9, %lo(D_8011D538)($t9) +/* 047E28 80047228 00000000 */ nop +/* 047E2C 8004722C 2B21FFD8 */ slti $at, $t9, -0x28 +/* 047E30 80047230 1420000F */ bnez $at, .L80047270 +/* 047E34 80047234 8FA40128 */ lw $a0, 0x128($sp) +/* 047E38 80047238 C60A002C */ lwc1 $f10, 0x2c($s0) +/* 047E3C 8004723C 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 047E40 80047240 44812800 */ mtc1 $at, $f5 +/* 047E44 80047244 44802000 */ mtc1 $zero, $f4 +/* 047E48 80047248 46005221 */ cvt.d.s $f8, $f10 +/* 047E4C 8004724C 4628203E */ c.le.d $f4, $f8 +/* 047E50 80047250 3C014180 */ li $at, 0x41800000 # 16.000000 +/* 047E54 80047254 45000006 */ bc1f .L80047270 +/* 047E58 80047258 8FA40128 */ lw $a0, 0x128($sp) +/* 047E5C 8004725C 44813000 */ mtc1 $at, $f6 +/* 047E60 80047260 00000000 */ nop +/* 047E64 80047264 46061282 */ mul.s $f10, $f2, $f6 +/* 047E68 80047268 E7AA00FC */ swc1 $f10, 0xfc($sp) +.L8004726C: +/* 047E6C 8004726C 8FA40128 */ lw $a0, 0x128($sp) +.L80047270: +/* 047E70 80047270 000850C0 */ sll $t2, $t0, 3 +/* 047E74 80047274 01440019 */ multu $t2, $a0 +/* 047E78 80047278 3C028012 */ lui $v0, %hi(D_8011D538) # $v0, 0x8012 +/* 047E7C 8004727C 8C42D538 */ lw $v0, %lo(D_8011D538)($v0) +/* 047E80 80047280 00004025 */ move $t0, $zero +/* 047E84 80047284 00006012 */ mflo $t4 +/* 047E88 80047288 448C4000 */ mtc1 $t4, $f8 +/* 047E8C 8004728C 00000000 */ nop +/* 047E90 80047290 468040A0 */ cvt.s.w $f2, $f8 +/* 047E94 80047294 0441001C */ bgez $v0, .L80047308 +/* 047E98 80047298 46001386 */ mov.s $f14, $f2 +/* 047E9C 8004729C 00025823 */ negu $t3, $v0 +/* 047EA0 800472A0 448B2000 */ mtc1 $t3, $f4 +/* 047EA4 800472A4 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 047EA8 800472A8 46802420 */ cvt.s.w $f16, $f4 +/* 047EAC 800472AC 44813800 */ mtc1 $at, $f7 +/* 047EB0 800472B0 3C01405C */ li $at, 0x405C0000 # 3.437500 +/* 047EB4 800472B4 44815800 */ mtc1 $at, $f11 +/* 047EB8 800472B8 44805000 */ mtc1 $zero, $f10 +/* 047EBC 800472BC 46008021 */ cvt.d.s $f0, $f16 +/* 047EC0 800472C0 00000000 */ nop +/* 047EC4 800472C4 462A0203 */ div.d $f8, $f0, $f10 +/* 047EC8 800472C8 44803000 */ mtc1 $zero, $f6 +/* 047ECC 800472CC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 047ED0 800472D0 460012A1 */ cvt.d.s $f10, $f2 +/* 047ED4 800472D4 46283100 */ add.d $f4, $f6, $f8 +/* 047ED8 800472D8 44814800 */ mtc1 $at, $f9 +/* 047EDC 800472DC 46245182 */ mul.d $f6, $f10, $f4 +/* 047EE0 800472E0 3C01800E */ lui $at, %hi(D_800E6404) # $at, 0x800e +/* 047EE4 800472E4 C42B6400 */ lwc1 $f11, %lo(D_800E6400)($at) +/* 047EE8 800472E8 C42A6404 */ lwc1 $f10, %lo(D_800E6404)($at) +/* 047EEC 800472EC 44804000 */ mtc1 $zero, $f8 +/* 047EF0 800472F0 462A0103 */ div.d $f4, $f0, $f10 +/* 047EF4 800472F4 462033A0 */ cvt.s.d $f14, $f6 +/* 047EF8 800472F8 460092A1 */ cvt.d.s $f10, $f18 +/* 047EFC 800472FC 46244181 */ sub.d $f6, $f8, $f4 +/* 047F00 80047300 46265202 */ mul.d $f8, $f10, $f6 +/* 047F04 80047304 462044A0 */ cvt.s.d $f18, $f8 +.L80047308: +/* 047F08 80047308 3C018012 */ lui $at, %hi(D_8011D570) # $at, 0x8012 +/* 047F0C 8004730C C424D570 */ lwc1 $f4, %lo(D_8011D570)($at) +/* 047F10 80047310 860D01A0 */ lh $t5, 0x1a0($s0) +/* 047F14 80047314 46047382 */ mul.s $f14, $f14, $f4 +/* 047F18 80047318 820C01E2 */ lb $t4, 0x1e2($s0) +/* 047F1C 8004731C 444EF800 */ cfc1 $t6, $31 +/* 047F20 80047320 00000000 */ nop +/* 047F24 80047324 35C10003 */ ori $at, $t6, 3 +/* 047F28 80047328 38210002 */ xori $at, $at, 2 +/* 047F2C 8004732C 44C1F800 */ ctc1 $at, $31 +/* 047F30 80047330 00000000 */ nop +/* 047F34 80047334 460072A4 */ cvt.w.s $f10, $f14 +/* 047F38 80047338 44195000 */ mfc1 $t9, $f10 +/* 047F3C 8004733C 44CEF800 */ ctc1 $t6, $31 +/* 047F40 80047340 01B95023 */ subu $t2, $t5, $t9 +/* 047F44 80047344 1580001A */ bnez $t4, .L800473B0 +/* 047F48 80047348 A60A01A0 */ sh $t2, 0x1a0($s0) +/* 047F4C 8004734C C60800C0 */ lwc1 $f8, 0xc0($s0) +/* 047F50 80047350 44803800 */ mtc1 $zero, $f7 +/* 047F54 80047354 44803000 */ mtc1 $zero, $f6 +/* 047F58 80047358 46004121 */ cvt.d.s $f4, $f8 +/* 047F5C 8004735C 46243032 */ c.eq.d $f6, $f4 +/* 047F60 80047360 00000000 */ nop +/* 047F64 80047364 45000012 */ bc1f .L800473B0 +/* 047F68 80047368 00000000 */ nop +/* 047F6C 8004736C C62A0020 */ lwc1 $f10, 0x20($s1) +/* 047F70 80047370 44804000 */ mtc1 $zero, $f8 +/* 047F74 80047374 24180019 */ li $t8, 25 +/* 047F78 80047378 4608503C */ c.lt.s $f10, $f8 +/* 047F7C 8004737C 00000000 */ nop +/* 047F80 80047380 45000005 */ bc1f .L80047398 +/* 047F84 80047384 00000000 */ nop +/* 047F88 80047388 820B01E0 */ lb $t3, 0x1e0($s0) +/* 047F8C 8004738C 00000000 */ nop +/* 047F90 80047390 01647021 */ addu $t6, $t3, $a0 +/* 047F94 80047394 A20E01E0 */ sb $t6, 0x1e0($s0) +.L80047398: +/* 047F98 80047398 820F01E0 */ lb $t7, 0x1e0($s0) +/* 047F9C 8004739C 00000000 */ nop +/* 047FA0 800473A0 29E1001A */ slti $at, $t7, 0x1a +/* 047FA4 800473A4 14200002 */ bnez $at, .L800473B0 +/* 047FA8 800473A8 00000000 */ nop +/* 047FAC 800473AC A21801E0 */ sb $t8, 0x1e0($s0) +.L800473B0: +/* 047FB0 800473B0 820501E2 */ lb $a1, 0x1e2($s0) +/* 047FB4 800473B4 240400FF */ li $a0, 255 +.L800473B8: +/* 047FB8 800473B8 906201DC */ lbu $v0, 0x1dc($v1) +/* 047FBC 800473BC 25080001 */ addiu $t0, $t0, 1 +/* 047FC0 800473C0 1082000B */ beq $a0, $v0, .L800473F0 +/* 047FC4 800473C4 0122082A */ slt $at, $t1, $v0 +/* 047FC8 800473C8 10200004 */ beqz $at, .L800473DC +/* 047FCC 800473CC 00000000 */ nop +/* 047FD0 800473D0 00024E00 */ sll $t1, $v0, 0x18 +/* 047FD4 800473D4 00096E03 */ sra $t5, $t1, 0x18 +/* 047FD8 800473D8 01A04825 */ move $t1, $t5 +.L800473DC: +/* 047FDC 800473DC 14C20005 */ bne $a2, $v0, .L800473F4 +/* 047FE0 800473E0 29010004 */ slti $at, $t0, 4 +/* 047FE4 800473E4 24E70001 */ addiu $a3, $a3, 1 +/* 047FE8 800473E8 0007CE00 */ sll $t9, $a3, 0x18 +/* 047FEC 800473EC 00193E03 */ sra $a3, $t9, 0x18 +.L800473F0: +/* 047FF0 800473F0 29010004 */ slti $at, $t0, 4 +.L800473F4: +/* 047FF4 800473F4 1420FFF0 */ bnez $at, .L800473B8 +/* 047FF8 800473F8 24630001 */ addiu $v1, $v1, 1 +/* 047FFC 800473FC 860C0000 */ lh $t4, ($s0) +/* 048000 80047400 00000000 */ nop +/* 048004 80047404 1580000D */ bnez $t4, .L8004743C +/* 048008 80047408 00000000 */ nop +/* 04800C 8004740C 10A0000B */ beqz $a1, .L8004743C +/* 048010 80047410 2401000C */ li $at, 12 +/* 048014 80047414 15210009 */ bne $t1, $at, .L8004743C +/* 048018 80047418 3C0B8012 */ lui $t3, %hi(D_8011D52C) # $t3, 0x8012 +/* 04801C 8004741C 8D6BD52C */ lw $t3, %lo(D_8011D52C)($t3) +/* 048020 80047420 240F0002 */ li $t7, 2 +/* 048024 80047424 316E2000 */ andi $t6, $t3, 0x2000 +/* 048028 80047428 11C00004 */ beqz $t6, .L8004743C +/* 04802C 8004742C 3C018012 */ lui $at, %hi(D_8011D582) # $at, 0x8012 +/* 048030 80047430 A02FD582 */ sb $t7, %lo(D_8011D582)($at) +/* 048034 80047434 820501E2 */ lb $a1, 0x1e2($s0) +/* 048038 80047438 00000000 */ nop +.L8004743C: +/* 04803C 8004743C 14A00008 */ bnez $a1, .L80047460 +/* 048040 80047440 00000000 */ nop +/* 048044 80047444 44803000 */ mtc1 $zero, $f6 +/* 048048 80047448 C60400C0 */ lwc1 $f4, 0xc0($s0) +/* 04804C 8004744C 00000000 */ nop +/* 048050 80047450 4604303C */ c.lt.s $f6, $f4 +/* 048054 80047454 00000000 */ nop +/* 048058 80047458 4500004F */ bc1f .L80047598 +/* 04805C 8004745C 02202025 */ move $a0, $s1 +.L80047460: +/* 048060 80047460 820201E0 */ lb $v0, 0x1e0($s0) +/* 048064 80047464 00000000 */ nop +/* 048068 80047468 1040004B */ beqz $v0, .L80047598 +/* 04806C 8004746C 02202025 */ move $a0, $s1 +/* 048070 80047470 10A0001E */ beqz $a1, .L800474EC +/* 048074 80047474 3C188012 */ lui $t8, %hi(D_8011D540) # $t8, 0x8012 +/* 048078 80047478 8F18D540 */ lw $t8, %lo(D_8011D540)($t8) +/* 04807C 8004747C 24010064 */ li $at, 100 +/* 048080 80047480 1301002A */ beq $t8, $at, .L8004752C +/* 048084 80047484 00000000 */ nop +/* 048088 80047488 860D0000 */ lh $t5, ($s0) +/* 04808C 8004748C 2401FFFF */ li $at, -1 +/* 048090 80047490 11A10026 */ beq $t5, $at, .L8004752C +/* 048094 80047494 28410006 */ slti $at, $v0, 6 +/* 048098 80047498 14200024 */ bnez $at, .L8004752C +/* 04809C 8004749C 240400AE */ li $a0, 174 +/* 0480A0 800474A0 2605021C */ addiu $a1, $s0, 0x21c +/* 0480A4 800474A4 A3A700AD */ sb $a3, 0xad($sp) +/* 0480A8 800474A8 A3A900AF */ sb $t1, 0xaf($sp) +/* 0480AC 800474AC 0C000741 */ jal func_80001D04 +/* 0480B0 800474B0 E7B20104 */ swc1 $f18, 0x104($sp) +/* 0480B4 800474B4 820601E0 */ lb $a2, 0x1e0($s0) +/* 0480B8 800474B8 8E05021C */ lw $a1, 0x21c($s0) +/* 0480BC 800474BC 0006C840 */ sll $t9, $a2, 1 +/* 0480C0 800474C0 27260032 */ addiu $a2, $t9, 0x32 +/* 0480C4 800474C4 30CA00FF */ andi $t2, $a2, 0xff +/* 0480C8 800474C8 01403025 */ move $a2, $t2 +/* 0480CC 800474CC 0C0007EE */ jal func_80001FB8 +/* 0480D0 800474D0 240400AE */ li $a0, 174 +/* 0480D4 800474D4 83A700AD */ lb $a3, 0xad($sp) +/* 0480D8 800474D8 83A900AF */ lb $t1, 0xaf($sp) +/* 0480DC 800474DC C7B20104 */ lwc1 $f18, 0x104($sp) +/* 0480E0 800474E0 820201E0 */ lb $v0, 0x1e0($s0) +/* 0480E4 800474E4 10000012 */ b .L80047530 +/* 0480E8 800474E8 44825000 */ mtc1 $v0, $f10 +.L800474EC: +/* 0480EC 800474EC 8E0C0148 */ lw $t4, 0x148($s0) +/* 0480F0 800474F0 02202025 */ move $a0, $s1 +/* 0480F4 800474F4 1580000D */ bnez $t4, .L8004752C +/* 0480F8 800474F8 240500AF */ li $a1, 175 +/* 0480FC 800474FC A3A700AD */ sb $a3, 0xad($sp) +/* 048100 80047500 A3A900AF */ sb $t1, 0xaf($sp) +/* 048104 80047504 0C015C12 */ jal func_80057048 +/* 048108 80047508 E7B20104 */ swc1 $f18, 0x104($sp) +/* 04810C 8004750C 8E2B0074 */ lw $t3, 0x74($s1) +/* 048110 80047510 83A700AD */ lb $a3, 0xad($sp) +/* 048114 80047514 83A900AF */ lb $t1, 0xaf($sp) +/* 048118 80047518 C7B20104 */ lwc1 $f18, 0x104($sp) +/* 04811C 8004751C 356E0030 */ ori $t6, $t3, 0x30 +/* 048120 80047520 AE2E0074 */ sw $t6, 0x74($s1) +/* 048124 80047524 820201E0 */ lb $v0, 0x1e0($s0) +/* 048128 80047528 00000000 */ nop +.L8004752C: +/* 04812C 8004752C 44825000 */ mtc1 $v0, $f10 +.L80047530: +/* 048130 80047530 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 048134 80047534 468050A0 */ cvt.s.w $f2, $f10 +/* 048138 80047538 44814000 */ mtc1 $at, $f8 +/* 04813C 8004753C 44803000 */ mtc1 $zero, $f6 +/* 048140 80047540 46081081 */ sub.s $f2, $f2, $f8 +/* 048144 80047544 4602303C */ c.lt.s $f6, $f2 +/* 048148 80047548 00000000 */ nop +/* 04814C 8004754C 45000010 */ bc1f .L80047590 +/* 048150 80047550 00000000 */ nop +/* 048154 80047554 8E0F0148 */ lw $t7, 0x148($s0) +/* 048158 80047558 3C01800E */ lui $at, %hi(D_800E640C) # $at, 0x800e +/* 04815C 8004755C 15E0000C */ bnez $t7, .L80047590 +/* 048160 80047560 00000000 */ nop +/* 048164 80047564 C42B6408 */ lwc1 $f11, %lo(D_800E6408)($at) +/* 048168 80047568 C42A640C */ lwc1 $f10, %lo(D_800E640C)($at) +/* 04816C 8004756C 46001121 */ cvt.d.s $f4, $f2 +/* 048170 80047570 462A2202 */ mul.d $f8, $f4, $f10 +/* 048174 80047574 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 048178 80047578 44813800 */ mtc1 $at, $f7 +/* 04817C 8004757C 44803000 */ mtc1 $zero, $f6 +/* 048180 80047580 00000000 */ nop +/* 048184 80047584 46283101 */ sub.d $f4, $f6, $f8 +/* 048188 80047588 462022A0 */ cvt.s.d $f10, $f4 +/* 04818C 8004758C E60A0090 */ swc1 $f10, 0x90($s0) +.L80047590: +/* 048190 80047590 A20001E0 */ sb $zero, 0x1e0($s0) +/* 048194 80047594 02202025 */ move $a0, $s1 +.L80047598: +/* 048198 80047598 02002825 */ move $a1, $s0 +/* 04819C 8004759C A3A700AD */ sb $a3, 0xad($sp) +/* 0481A0 800475A0 A3A900AF */ sb $t1, 0xaf($sp) +/* 0481A4 800475A4 0C015C88 */ jal func_80057220 +/* 0481A8 800475A8 E7B20104 */ swc1 $f18, 0x104($sp) +/* 0481AC 800475AC 3C01800E */ lui $at, %hi(D_800E6414) # $at, 0x800e +/* 0481B0 800475B0 C4296410 */ lwc1 $f9, %lo(D_800E6410)($at) +/* 0481B4 800475B4 C4286414 */ lwc1 $f8, %lo(D_800E6414)($at) +/* 0481B8 800475B8 460001A1 */ cvt.d.s $f6, $f0 +/* 0481BC 800475BC 46283102 */ mul.d $f4, $f6, $f8 +/* 0481C0 800475C0 C7B20104 */ lwc1 $f18, 0x104($sp) +/* 0481C4 800475C4 820301D3 */ lb $v1, 0x1d3($s0) +/* 0481C8 800475C8 460092A1 */ cvt.d.s $f10, $f18 +/* 0481CC 800475CC 83A700AD */ lb $a3, 0xad($sp) +/* 0481D0 800475D0 46245182 */ mul.d $f6, $f10, $f4 +/* 0481D4 800475D4 83A900AF */ lb $t1, 0xaf($sp) +/* 0481D8 800475D8 18600019 */ blez $v1, .L80047640 +/* 0481DC 800475DC 462034A0 */ cvt.s.d $f18, $f6 +/* 0481E0 800475E0 3C028012 */ lui $v0, %hi(D_8011D540) # $v0, 0x8012 +/* 0481E4 800475E4 8C42D540 */ lw $v0, %lo(D_8011D540)($v0) +/* 0481E8 800475E8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0481EC 800475EC 14400018 */ bnez $v0, .L80047650 +/* 0481F0 800475F0 00000000 */ nop +/* 0481F4 800475F4 44802800 */ mtc1 $zero, $f5 +/* 0481F8 800475F8 44802000 */ mtc1 $zero, $f4 +/* 0481FC 800475FC 460091A1 */ cvt.d.s $f6, $f18 +/* 048200 80047600 44814000 */ mtc1 $at, $f8 +/* 048204 80047604 44805000 */ mtc1 $zero, $f10 +/* 048208 80047608 46262032 */ c.eq.d $f4, $f6 +/* 04820C 8004760C E7A800F4 */ swc1 $f8, 0xf4($sp) +/* 048210 80047610 45010004 */ bc1t .L80047624 +/* 048214 80047614 E7AA00F0 */ swc1 $f10, 0xf0($sp) +/* 048218 80047618 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 04821C 8004761C 44819000 */ mtc1 $at, $f18 +/* 048220 80047620 00000000 */ nop +.L80047624: +/* 048224 80047624 8FB80128 */ lw $t8, 0x128($sp) +/* 048228 80047628 3C028012 */ lui $v0, %hi(D_8011D540) # $v0, 0x8012 +/* 04822C 8004762C 00786823 */ subu $t5, $v1, $t8 +/* 048230 80047630 A20D01D3 */ sb $t5, 0x1d3($s0) +/* 048234 80047634 8C42D540 */ lw $v0, %lo(D_8011D540)($v0) +/* 048238 80047638 10000005 */ b .L80047650 +/* 04823C 8004763C 00000000 */ nop +.L80047640: +/* 048240 80047640 A20001D3 */ sb $zero, 0x1d3($s0) +/* 048244 80047644 3C028012 */ lui $v0, %hi(D_8011D540) # $v0, 0x8012 +/* 048248 80047648 8C42D540 */ lw $v0, %lo(D_8011D540)($v0) +/* 04824C 8004764C 00000000 */ nop +.L80047650: +/* 048250 80047650 10400003 */ beqz $v0, .L80047660 +/* 048254 80047654 00000000 */ nop +/* 048258 80047658 44809000 */ mtc1 $zero, $f18 +/* 04825C 8004765C 00000000 */ nop +.L80047660: +/* 048260 80047660 10E00012 */ beqz $a3, .L800476AC +/* 048264 80047664 24040020 */ li $a0, 32 +/* 048268 80047668 A3A700AD */ sb $a3, 0xad($sp) +/* 04826C 8004766C A3A900AF */ sb $t1, 0xaf($sp) +/* 048270 80047670 0C0078A7 */ jal func_8001E29C +/* 048274 80047674 E7B20104 */ swc1 $f18, 0x104($sp) +/* 048278 80047678 83A700AD */ lb $a3, 0xad($sp) +/* 04827C 8004767C C7A800FC */ lwc1 $f8, 0xfc($sp) +/* 048280 80047680 0007C880 */ sll $t9, $a3, 2 +/* 048284 80047684 00595021 */ addu $t2, $v0, $t9 +/* 048288 80047688 C5400000 */ lwc1 $f0, ($t2) +/* 04828C 8004768C C7B20104 */ lwc1 $f18, 0x104($sp) +/* 048290 80047690 46004283 */ div.s $f10, $f8, $f0 +/* 048294 80047694 44802000 */ mtc1 $zero, $f4 +/* 048298 80047698 83A900AF */ lb $t1, 0xaf($sp) +/* 04829C 8004769C 46009482 */ mul.s $f18, $f18, $f0 +/* 0482A0 800476A0 E7AA00FC */ swc1 $f10, 0xfc($sp) +/* 0482A4 800476A4 A2000175 */ sb $zero, 0x175($s0) +/* 0482A8 800476A8 E6040030 */ swc1 $f4, 0x30($s0) +.L800476AC: +/* 0482AC 800476AC 820C01D3 */ lb $t4, 0x1d3($s0) +/* 0482B0 800476B0 00000000 */ nop +/* 0482B4 800476B4 1580001D */ bnez $t4, .L8004772C +/* 0482B8 800476B8 24010003 */ li $at, 3 +/* 0482BC 800476BC 1521001B */ bne $t1, $at, .L8004772C +/* 0482C0 800476C0 2404002D */ li $a0, 45 +/* 0482C4 800476C4 0C00322D */ jal func_8000C8B4 +/* 0482C8 800476C8 E7B20104 */ swc1 $f18, 0x104($sp) +/* 0482CC 800476CC 920E020C */ lbu $t6, 0x20c($s0) +/* 0482D0 800476D0 C7B20104 */ lwc1 $f18, 0x104($sp) +/* 0482D4 800476D4 240B0002 */ li $t3, 2 +/* 0482D8 800476D8 A20201D3 */ sb $v0, 0x1d3($s0) +/* 0482DC 800476DC 11C00005 */ beqz $t6, .L800476F4 +/* 0482E0 800476E0 A20B0203 */ sb $t3, 0x203($s0) +/* 0482E4 800476E4 820F0203 */ lb $t7, 0x203($s0) +/* 0482E8 800476E8 00000000 */ nop +/* 0482EC 800476EC 35F80004 */ ori $t8, $t7, 4 +/* 0482F0 800476F0 A2180203 */ sb $t8, 0x203($s0) +.L800476F4: +/* 0482F4 800476F4 02202025 */ move $a0, $s1 +/* 0482F8 800476F8 24050107 */ li $a1, 263 +/* 0482FC 800476FC 0C015C12 */ jal func_80057048 +/* 048300 80047700 E7B20104 */ swc1 $f18, 0x104($sp) +/* 048304 80047704 02202025 */ move $a0, $s1 +/* 048308 80047708 24050162 */ li $a1, 354 +/* 04830C 8004770C 24060008 */ li $a2, 8 +/* 048310 80047710 0C015C2E */ jal func_800570B8 +/* 048314 80047714 24070082 */ li $a3, 130 +/* 048318 80047718 86040000 */ lh $a0, ($s0) +/* 04831C 8004771C 0C01C8D2 */ jal func_80072348 +/* 048320 80047720 24050008 */ li $a1, 8 +/* 048324 80047724 C7B20104 */ lwc1 $f18, 0x104($sp) +/* 048328 80047728 00000000 */ nop +.L8004772C: +/* 04832C 8004772C C62E0024 */ lwc1 $f14, 0x24($s1) +/* 048330 80047730 C620001C */ lwc1 $f0, 0x1c($s1) +/* 048334 80047734 460E7182 */ mul.s $f6, $f14, $f14 +/* 048338 80047738 E7B20104 */ swc1 $f18, 0x104($sp) +/* 04833C 8004773C 46000202 */ mul.s $f8, $f0, $f0 +/* 048340 80047740 0C0326B4 */ jal sqrtf +/* 048344 80047744 46083300 */ add.s $f12, $f6, $f8 +/* 048348 80047748 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 04834C 8004774C 44815800 */ mtc1 $at, $f11 +/* 048350 80047750 44805000 */ mtc1 $zero, $f10 +/* 048354 80047754 46000121 */ cvt.d.s $f4, $f0 +/* 048358 80047758 4624503C */ c.lt.d $f10, $f4 +/* 04835C 8004775C C7B20104 */ lwc1 $f18, 0x104($sp) +/* 048360 80047760 4500007F */ bc1f .L80047960 +/* 048364 80047764 46000086 */ mov.s $f2, $f0 +/* 048368 80047768 C62C001C */ lwc1 $f12, 0x1c($s1) +/* 04836C 8004776C C62E0024 */ lwc1 $f14, 0x24($s1) +/* 048370 80047770 E7B20104 */ swc1 $f18, 0x104($sp) +/* 048374 80047774 0C01C1D4 */ jal func_80070750 +/* 048378 80047778 E7A200D0 */ swc1 $f2, 0xd0($sp) +/* 04837C 8004777C 34058000 */ li $a1, 32768 +/* 048380 80047780 C7A200D0 */ lwc1 $f2, 0xd0($sp) +/* 048384 80047784 00456821 */ addu $t5, $v0, $a1 +/* 048388 80047788 C7B20104 */ lwc1 $f18, 0x104($sp) +/* 04838C 8004778C A60D0168 */ sh $t5, 0x168($s0) +/* 048390 80047790 86190168 */ lh $t9, 0x168($s0) +/* 048394 80047794 86040196 */ lh $a0, 0x196($s0) +/* 048398 80047798 00B95023 */ subu $t2, $a1, $t9 +/* 04839C 8004779C 314CFFFF */ andi $t4, $t2, 0xffff +/* 0483A0 800477A0 308BFFFF */ andi $t3, $a0, 0xffff +/* 0483A4 800477A4 34098001 */ li $t1, 32769 +/* 0483A8 800477A8 018B1823 */ subu $v1, $t4, $t3 +/* 0483AC 800477AC 0069082A */ slt $at, $v1, $t1 +/* 0483B0 800477B0 14200004 */ bnez $at, .L800477C4 +/* 0483B4 800477B4 46001321 */ cvt.d.s $f12, $f2 +/* 0483B8 800477B8 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 0483BC 800477BC 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 0483C0 800477C0 00611821 */ addu $v1, $v1, $at +.L800477C4: +/* 0483C4 800477C4 28618000 */ slti $at, $v1, -0x8000 +/* 0483C8 800477C8 10200002 */ beqz $at, .L800477D4 +/* 0483CC 800477CC 3401FFFF */ li $at, 65535 +/* 0483D0 800477D0 00611821 */ addu $v1, $v1, $at +.L800477D4: +/* 0483D4 800477D4 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 0483D8 800477D8 44813800 */ mtc1 $at, $f7 +/* 0483DC 800477DC 44803000 */ mtc1 $zero, $f6 +/* 0483E0 800477E0 3C014020 */ li $at, 0x40200000 # 2.500000 +/* 0483E4 800477E4 46266201 */ sub.d $f8, $f12, $f6 +/* 0483E8 800477E8 44815800 */ mtc1 $at, $f11 +/* 0483EC 800477EC 46204020 */ cvt.s.d $f0, $f8 +/* 0483F0 800477F0 44805000 */ mtc1 $zero, $f10 +/* 0483F4 800477F4 46000121 */ cvt.d.s $f4, $f0 +/* 0483F8 800477F8 4624503C */ c.lt.d $f10, $f4 +/* 0483FC 800477FC 44804000 */ mtc1 $zero, $f8 +/* 048400 80047800 44832000 */ mtc1 $v1, $f4 +/* 048404 80047804 45000003 */ bc1f .L80047814 +/* 048408 80047808 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 04840C 8004780C 44810000 */ mtc1 $at, $f0 +/* 048410 80047810 00000000 */ nop +.L80047814: +/* 048414 80047814 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 048418 80047818 44814800 */ mtc1 $at, $f9 +/* 04841C 8004781C 460001A1 */ cvt.d.s $f6, $f0 +/* 048420 80047820 46283282 */ mul.d $f10, $f6, $f8 +/* 048424 80047824 468021A0 */ cvt.s.w $f6, $f4 +/* 048428 80047828 3C013FE8 */ li $at, 0x3FE80000 # 1.812500 +/* 04842C 8004782C 44812800 */ mtc1 $at, $f5 +/* 048430 80047830 44802000 */ mtc1 $zero, $f4 +/* 048434 80047834 46205020 */ cvt.s.d $f0, $f10 +/* 048438 80047838 8FA80128 */ lw $t0, 0x128($sp) +/* 04843C 8004783C 46003202 */ mul.s $f8, $f6, $f0 +/* 048440 80047840 860201A0 */ lh $v0, 0x1a0($s0) +/* 048444 80047844 44800000 */ mtc1 $zero, $f0 +/* 048448 80047848 304CFFFF */ andi $t4, $v0, 0xffff +/* 04844C 8004784C 460042A1 */ cvt.d.s $f10, $f8 +/* 048450 80047850 46245182 */ mul.d $f6, $f10, $f4 +/* 048454 80047854 444EF800 */ cfc1 $t6, $31 +/* 048458 80047858 00000000 */ nop +/* 04845C 8004785C 35C10003 */ ori $at, $t6, 3 +/* 048460 80047860 38210002 */ xori $at, $at, 2 +/* 048464 80047864 44C1F800 */ ctc1 $at, $31 +/* 048468 80047868 00000000 */ nop +/* 04846C 8004786C 46203224 */ cvt.w.d $f8, $f6 +/* 048470 80047870 44034000 */ mfc1 $v1, $f8 +/* 048474 80047874 44CEF800 */ ctc1 $t6, $31 +/* 048478 80047878 00680019 */ multu $v1, $t0 +/* 04847C 8004787C 00007812 */ mflo $t7 +/* 048480 80047880 000FC103 */ sra $t8, $t7, 4 +/* 048484 80047884 00986821 */ addu $t5, $a0, $t8 +/* 048488 80047888 A60D0196 */ sh $t5, 0x196($s0) +/* 04848C 8004788C 86190196 */ lh $t9, 0x196($s0) +/* 048490 80047890 00000000 */ nop +/* 048494 80047894 00B95023 */ subu $t2, $a1, $t9 +/* 048498 80047898 014C1823 */ subu $v1, $t2, $t4 +/* 04849C 8004789C 0069082A */ slt $at, $v1, $t1 +/* 0484A0 800478A0 14200003 */ bnez $at, .L800478B0 +/* 0484A4 800478A4 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 0484A8 800478A8 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 0484AC 800478AC 00611821 */ addu $v1, $v1, $at +.L800478B0: +/* 0484B0 800478B0 28618000 */ slti $at, $v1, -0x8000 +/* 0484B4 800478B4 10200002 */ beqz $at, .L800478C0 +/* 0484B8 800478B8 3401FFFF */ li $at, 65535 +/* 0484BC 800478BC 00611821 */ addu $v1, $v1, $at +.L800478C0: +/* 0484C0 800478C0 3C014024 */ li $at, 0x40240000 # 2.562500 +/* 0484C4 800478C4 44810800 */ mtc1 $at, $f1 +/* 0484C8 800478C8 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 0484CC 800478CC 462C003C */ c.lt.d $f0, $f12 +/* 0484D0 800478D0 00000000 */ nop +/* 0484D4 800478D4 45000005 */ bc1f .L800478EC +/* 0484D8 800478D8 00000000 */ nop +/* 0484DC 800478DC 44811000 */ mtc1 $at, $f2 +/* 0484E0 800478E0 00000000 */ nop +/* 0484E4 800478E4 46001321 */ cvt.d.s $f12, $f2 +/* 0484E8 800478E8 00000000 */ nop +.L800478EC: +/* 0484EC 800478EC 46206283 */ div.d $f10, $f12, $f0 +/* 0484F0 800478F0 44832000 */ mtc1 $v1, $f4 +/* 0484F4 800478F4 3C048012 */ lui $a0, %hi(D_8011D528) # $a0, 0x8012 +/* 0484F8 800478F8 468021A0 */ cvt.s.w $f6, $f4 +/* 0484FC 800478FC 8C84D528 */ lw $a0, %lo(D_8011D528)($a0) +/* 048500 80047900 00000000 */ nop +/* 048504 80047904 308E8000 */ andi $t6, $a0, 0x8000 +/* 048508 80047908 308F0010 */ andi $t7, $a0, 0x10 +/* 04850C 8004790C 462050A0 */ cvt.s.d $f2, $f10 +/* 048510 80047910 46023202 */ mul.s $f8, $f6, $f2 +/* 048514 80047914 444BF800 */ cfc1 $t3, $31 +/* 048518 80047918 00000000 */ nop +/* 04851C 8004791C 35610003 */ ori $at, $t3, 3 +/* 048520 80047920 38210002 */ xori $at, $at, 2 +/* 048524 80047924 44C1F800 */ ctc1 $at, $31 +/* 048528 80047928 00000000 */ nop +/* 04852C 8004792C 460042A4 */ cvt.w.s $f10, $f8 +/* 048530 80047930 44035000 */ mfc1 $v1, $f10 +/* 048534 80047934 44CBF800 */ ctc1 $t3, $31 +/* 048538 80047938 15C00003 */ bnez $t6, .L80047948 +/* 04853C 8004793C 0003C040 */ sll $t8, $v1, 1 +/* 048540 80047940 11E00002 */ beqz $t7, .L8004794C +/* 048544 80047944 00000000 */ nop +.L80047948: +/* 048548 80047948 03001825 */ move $v1, $t8 +.L8004794C: +/* 04854C 8004794C 00680019 */ multu $v1, $t0 +/* 048550 80047950 00006812 */ mflo $t5 +/* 048554 80047954 000DC9C3 */ sra $t9, $t5, 7 +/* 048558 80047958 00595021 */ addu $t2, $v0, $t9 +/* 04855C 8004795C A60A01A0 */ sh $t2, 0x1a0($s0) +.L80047960: +/* 048560 80047960 86040196 */ lh $a0, 0x196($s0) +/* 048564 80047964 860C01A0 */ lh $t4, 0x1a0($s0) +/* 048568 80047968 34058000 */ li $a1, 32768 +/* 04856C 8004796C 308EFFFF */ andi $t6, $a0, 0xffff +/* 048570 80047970 00AC5823 */ subu $t3, $a1, $t4 +/* 048574 80047974 34098001 */ li $t1, 32769 +/* 048578 80047978 016E1823 */ subu $v1, $t3, $t6 +/* 04857C 8004797C 8FA80128 */ lw $t0, 0x128($sp) +/* 048580 80047980 0069082A */ slt $at, $v1, $t1 +/* 048584 80047984 14200003 */ bnez $at, .L80047994 +/* 048588 80047988 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 04858C 8004798C 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 048590 80047990 00611821 */ addu $v1, $v1, $at +.L80047994: +/* 048594 80047994 28618000 */ slti $at, $v1, -0x8000 +/* 048598 80047998 10200002 */ beqz $at, .L800479A4 +/* 04859C 8004799C 3401FFFF */ li $at, 65535 +/* 0485A0 800479A0 00611821 */ addu $v1, $v1, $at +.L800479A4: +/* 0485A4 800479A4 44832000 */ mtc1 $v1, $f4 +/* 0485A8 800479A8 3C013FFC */ li $at, 0x3FFC0000 # 1.968750 +/* 0485AC 800479AC 468021A0 */ cvt.s.w $f6, $f4 +/* 0485B0 800479B0 44815800 */ mtc1 $at, $f11 +/* 0485B4 800479B4 44805000 */ mtc1 $zero, $f10 +/* 0485B8 800479B8 46003221 */ cvt.d.s $f8, $f6 +/* 0485BC 800479BC 462A4102 */ mul.d $f4, $f8, $f10 +/* 0485C0 800479C0 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0485C4 800479C4 44813000 */ mtc1 $at, $f6 +/* 0485C8 800479C8 920A01F5 */ lbu $t2, 0x1f5($s0) +/* 0485CC 800479CC 46003221 */ cvt.d.s $f8, $f6 +/* 0485D0 800479D0 46282282 */ mul.d $f10, $f4, $f8 +/* 0485D4 800479D4 444FF800 */ cfc1 $t7, $31 +/* 0485D8 800479D8 00000000 */ nop +/* 0485DC 800479DC 35E10003 */ ori $at, $t7, 3 +/* 0485E0 800479E0 38210002 */ xori $at, $at, 2 +/* 0485E4 800479E4 44C1F800 */ ctc1 $at, $31 +/* 0485E8 800479E8 00000000 */ nop +/* 0485EC 800479EC 462051A4 */ cvt.w.d $f6, $f10 +/* 0485F0 800479F0 44033000 */ mfc1 $v1, $f6 +/* 0485F4 800479F4 44CFF800 */ ctc1 $t7, $31 +/* 0485F8 800479F8 00680019 */ multu $v1, $t0 +/* 0485FC 800479FC 0000C012 */ mflo $t8 +/* 048600 80047A00 00186983 */ sra $t5, $t8, 6 +/* 048604 80047A04 008DC821 */ addu $t9, $a0, $t5 +/* 048608 80047A08 15400120 */ bnez $t2, .L80047E8C +/* 04860C 80047A0C A6190196 */ sh $t9, 0x196($s0) +/* 048610 80047A10 3C0C8012 */ lui $t4, %hi(D_8011D55C) # $t4, 0x8012 +/* 048614 80047A14 8D8CD55C */ lw $t4, %lo(D_8011D55C)($t4) +/* 048618 80047A18 2401FFFF */ li $at, -1 +/* 04861C 80047A1C 15810038 */ bne $t4, $at, .L80047B00 +/* 048620 80047A20 3C048012 */ lui $a0, %hi(D_8011D528) # $a0, 0x8012 +/* 048624 80047A24 820B01D8 */ lb $t3, 0x1d8($s0) +/* 048628 80047A28 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 04862C 80047A2C 15600034 */ bnez $t3, .L80047B00 +/* 048630 80047A30 00000000 */ nop +/* 048634 80047A34 C6040030 */ lwc1 $f4, 0x30($s0) +/* 048638 80047A38 44815800 */ mtc1 $at, $f11 +/* 04863C 80047A3C 44805000 */ mtc1 $zero, $f10 +/* 048640 80047A40 46002221 */ cvt.d.s $f8, $f4 +/* 048644 80047A44 462A4182 */ mul.d $f6, $f8, $f10 +/* 048648 80047A48 3C01800E */ lui $at, %hi(D_800E641C) # $at, 0x800e +/* 04864C 80047A4C C4296418 */ lwc1 $f9, %lo(D_800E6418)($at) +/* 048650 80047A50 C428641C */ lwc1 $f8, %lo(D_800E641C)($at) +/* 048654 80047A54 3C01800E */ lui $at, %hi(D_800E6424) # $at, 0x800e +/* 048658 80047A58 46203420 */ cvt.s.d $f16, $f6 +/* 04865C 80047A5C 3C0E8012 */ lui $t6, %hi(D_8011D528) # $t6, 0x8012 +/* 048660 80047A60 46008121 */ cvt.d.s $f4, $f16 +/* 048664 80047A64 46282282 */ mul.d $f10, $f4, $f8 +/* 048668 80047A68 44802000 */ mtc1 $zero, $f4 +/* 04866C 80047A6C 44802800 */ mtc1 $zero, $f5 +/* 048670 80047A70 46205020 */ cvt.s.d $f0, $f10 +/* 048674 80047A74 460001A1 */ cvt.d.s $f6, $f0 +/* 048678 80047A78 4624303C */ c.lt.d $f6, $f4 +/* 04867C 80047A7C 46000306 */ mov.s $f12, $f0 +/* 048680 80047A80 45000002 */ bc1f .L80047A8C +/* 048684 80047A84 00000000 */ nop +/* 048688 80047A88 46000307 */ neg.s $f12, $f0 +.L80047A8C: +/* 04868C 80047A8C C4296420 */ lwc1 $f9, %lo(D_800E6420)($at) +/* 048690 80047A90 C4286424 */ lwc1 $f8, %lo(D_800E6424)($at) +/* 048694 80047A94 460062A1 */ cvt.d.s $f10, $f12 +/* 048698 80047A98 462A403C */ c.lt.d $f8, $f10 +/* 04869C 80047A9C 00000000 */ nop +/* 0486A0 80047AA0 45000005 */ bc1f .L80047AB8 +/* 0486A4 80047AA4 00000000 */ nop +/* 0486A8 80047AA8 8DCED528 */ lw $t6, %lo(D_8011D528)($t6) +/* 0486AC 80047AAC 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 +/* 0486B0 80047AB0 35CF0010 */ ori $t7, $t6, 0x10 +/* 0486B4 80047AB4 AC2FD528 */ sw $t7, %lo(D_8011D528)($at) +.L80047AB8: +/* 0486B8 80047AB8 C6040038 */ lwc1 $f4, 0x38($s0) +/* 0486BC 80047ABC C626001C */ lwc1 $f6, 0x1c($s1) +/* 0486C0 80047AC0 460C2202 */ mul.s $f8, $f4, $f12 +/* 0486C4 80047AC4 C6240020 */ lwc1 $f4, 0x20($s1) +/* 0486C8 80047AC8 46083280 */ add.s $f10, $f6, $f8 +/* 0486CC 80047ACC E62A001C */ swc1 $f10, 0x1c($s1) +/* 0486D0 80047AD0 C606003C */ lwc1 $f6, 0x3c($s0) +/* 0486D4 80047AD4 00000000 */ nop +/* 0486D8 80047AD8 460C3202 */ mul.s $f8, $f6, $f12 +/* 0486DC 80047ADC C6260024 */ lwc1 $f6, 0x24($s1) +/* 0486E0 80047AE0 46082280 */ add.s $f10, $f4, $f8 +/* 0486E4 80047AE4 E62A0020 */ swc1 $f10, 0x20($s1) +/* 0486E8 80047AE8 C6040040 */ lwc1 $f4, 0x40($s0) +/* 0486EC 80047AEC 00000000 */ nop +/* 0486F0 80047AF0 460C2202 */ mul.s $f8, $f4, $f12 +/* 0486F4 80047AF4 46083280 */ add.s $f10, $f6, $f8 +/* 0486F8 80047AF8 10000039 */ b .L80047BE0 +/* 0486FC 80047AFC E62A0024 */ swc1 $f10, 0x24($s1) +.L80047B00: +/* 048700 80047B00 3C01800E */ lui $at, %hi(D_800E642C) # $at, 0x800e +/* 048704 80047B04 C6040030 */ lwc1 $f4, 0x30($s0) +/* 048708 80047B08 C4276428 */ lwc1 $f7, %lo(D_800E6428)($at) +/* 04870C 80047B0C C426642C */ lwc1 $f6, %lo(D_800E642C)($at) +/* 048710 80047B10 46002021 */ cvt.d.s $f0, $f4 +/* 048714 80047B14 46260202 */ mul.d $f8, $f0, $f6 +/* 048718 80047B18 8C84D528 */ lw $a0, %lo(D_8011D528)($a0) +/* 04871C 80047B1C 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 048720 80047B20 30980010 */ andi $t8, $a0, 0x10 +/* 048724 80047B24 1300002E */ beqz $t8, .L80047BE0 +/* 048728 80047B28 46204420 */ cvt.s.d $f16, $f8 +/* 04872C 80047B2C 3C028012 */ lui $v0, %hi(D_8011D534) # $v0, 0x8012 +/* 048730 80047B30 44815000 */ mtc1 $at, $f10 +/* 048734 80047B34 8C42D534 */ lw $v0, %lo(D_8011D534)($v0) +/* 048738 80047B38 460A8402 */ mul.s $f16, $f16, $f10 +/* 04873C 80047B3C 2841FFD9 */ slti $at, $v0, -0x27 +/* 048740 80047B40 1420000C */ bnez $at, .L80047B74 +/* 048744 80047B44 308D4000 */ andi $t5, $a0, 0x4000 +/* 048748 80047B48 28410028 */ slti $at, $v0, 0x28 +/* 04874C 80047B4C 10200009 */ beqz $at, .L80047B74 +/* 048750 80047B50 3C01800E */ lui $at, %hi(D_800E6434) # $at, 0x800e +/* 048754 80047B54 C7A400F4 */ lwc1 $f4, 0xf4($sp) +/* 048758 80047B58 C4296430 */ lwc1 $f9, %lo(D_800E6430)($at) +/* 04875C 80047B5C C4286434 */ lwc1 $f8, %lo(D_800E6434)($at) +/* 048760 80047B60 460021A1 */ cvt.d.s $f6, $f4 +/* 048764 80047B64 46283282 */ mul.d $f10, $f6, $f8 +/* 048768 80047B68 46205120 */ cvt.s.d $f4, $f10 +/* 04876C 80047B6C 10000016 */ b .L80047BC8 +/* 048770 80047B70 E7A400F4 */ swc1 $f4, 0xf4($sp) +.L80047B74: +/* 048774 80047B74 3C014004 */ li $at, 0x40040000 # 2.062500 +/* 048778 80047B78 44813800 */ mtc1 $at, $f7 +/* 04877C 80047B7C 44803000 */ mtc1 $zero, $f6 +/* 048780 80047B80 C7AA00F4 */ lwc1 $f10, 0xf4($sp) +/* 048784 80047B84 4620303C */ c.lt.d $f6, $f0 +/* 048788 80047B88 3C01C004 */ li $at, 0xC0040000 # -2.062500 +/* 04878C 80047B8C 45010007 */ bc1t .L80047BAC +/* 048790 80047B90 00000000 */ nop +/* 048794 80047B94 44814800 */ mtc1 $at, $f9 +/* 048798 80047B98 44804000 */ mtc1 $zero, $f8 +/* 04879C 80047B9C 00000000 */ nop +/* 0487A0 80047BA0 4628003C */ c.lt.d $f0, $f8 +/* 0487A4 80047BA4 00000000 */ nop +/* 0487A8 80047BA8 45000007 */ bc1f .L80047BC8 +.L80047BAC: +/* 0487AC 80047BAC 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 +/* 0487B0 80047BB0 44813800 */ mtc1 $at, $f7 +/* 0487B4 80047BB4 44803000 */ mtc1 $zero, $f6 +/* 0487B8 80047BB8 46005121 */ cvt.d.s $f4, $f10 +/* 0487BC 80047BBC 46262202 */ mul.d $f8, $f4, $f6 +/* 0487C0 80047BC0 462042A0 */ cvt.s.d $f10, $f8 +/* 0487C4 80047BC4 E7AA00F4 */ swc1 $f10, 0xf4($sp) +.L80047BC8: +/* 0487C8 80047BC8 11A00005 */ beqz $t5, .L80047BE0 +/* 0487CC 80047BCC 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 0487D0 80047BD0 44812000 */ mtc1 $at, $f4 +/* 0487D4 80047BD4 00000000 */ nop +/* 0487D8 80047BD8 46048402 */ mul.s $f16, $f16, $f4 +/* 0487DC 80047BDC 00000000 */ nop +.L80047BE0: +/* 0487E0 80047BE0 C6080050 */ lwc1 $f8, 0x50($s0) +/* 0487E4 80047BE4 C626001C */ lwc1 $f6, 0x1c($s1) +/* 0487E8 80047BE8 46104282 */ mul.s $f10, $f8, $f16 +/* 0487EC 80047BEC C6280020 */ lwc1 $f8, 0x20($s1) +/* 0487F0 80047BF0 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 0487F4 80047BF4 3C0A8012 */ lui $t2, %hi(D_8011D584) # $t2, 0x8012 +/* 0487F8 80047BF8 460A3101 */ sub.s $f4, $f6, $f10 +/* 0487FC 80047BFC 3C0B8012 */ lui $t3, %hi(D_8011D528) # $t3, 0x8012 +/* 048800 80047C00 E624001C */ swc1 $f4, 0x1c($s1) +/* 048804 80047C04 C6060054 */ lwc1 $f6, 0x54($s0) +/* 048808 80047C08 00000000 */ nop +/* 04880C 80047C0C 46103282 */ mul.s $f10, $f6, $f16 +/* 048810 80047C10 C6260024 */ lwc1 $f6, 0x24($s1) +/* 048814 80047C14 460A4101 */ sub.s $f4, $f8, $f10 +/* 048818 80047C18 E6240020 */ swc1 $f4, 0x20($s1) +/* 04881C 80047C1C C6080058 */ lwc1 $f8, 0x58($s0) +/* 048820 80047C20 00000000 */ nop +/* 048824 80047C24 46104282 */ mul.s $f10, $f8, $f16 +/* 048828 80047C28 460A3101 */ sub.s $f4, $f6, $f10 +/* 04882C 80047C2C E6240024 */ swc1 $f4, 0x24($s1) +/* 048830 80047C30 C7A800F4 */ lwc1 $f8, 0xf4($sp) +/* 048834 80047C34 00000000 */ nop +/* 048838 80047C38 46124182 */ mul.s $f6, $f8, $f18 +/* 04883C 80047C3C E7A600F4 */ swc1 $f6, 0xf4($sp) +/* 048840 80047C40 C60A0038 */ lwc1 $f10, 0x38($s0) +/* 048844 80047C44 C628001C */ lwc1 $f8, 0x1c($s1) +/* 048848 80047C48 46065102 */ mul.s $f4, $f10, $f6 +/* 04884C 80047C4C 46044281 */ sub.s $f10, $f8, $f4 +/* 048850 80047C50 E62A001C */ swc1 $f10, 0x1c($s1) +/* 048854 80047C54 C606003C */ lwc1 $f6, 0x3c($s0) +/* 048858 80047C58 C7A800F4 */ lwc1 $f8, 0xf4($sp) +/* 04885C 80047C5C C62A0020 */ lwc1 $f10, 0x20($s1) +/* 048860 80047C60 46083102 */ mul.s $f4, $f6, $f8 +/* 048864 80047C64 46045181 */ sub.s $f6, $f10, $f4 +/* 048868 80047C68 E6260020 */ swc1 $f6, 0x20($s1) +/* 04886C 80047C6C C6080040 */ lwc1 $f8, 0x40($s0) +/* 048870 80047C70 C7AA00F4 */ lwc1 $f10, 0xf4($sp) +/* 048874 80047C74 C6260024 */ lwc1 $f6, 0x24($s1) +/* 048878 80047C78 460A4102 */ mul.s $f4, $f8, $f10 +/* 04887C 80047C7C 46043201 */ sub.s $f8, $f6, $f4 +/* 048880 80047C80 44813000 */ mtc1 $at, $f6 +/* 048884 80047C84 E6280024 */ swc1 $f8, 0x24($s1) +/* 048888 80047C88 46069103 */ div.s $f4, $f18, $f6 +/* 04888C 80047C8C C7AA00F0 */ lwc1 $f10, 0xf0($sp) +/* 048890 80047C90 00000000 */ nop +/* 048894 80047C94 46045202 */ mul.s $f8, $f10, $f4 +/* 048898 80047C98 E7A800F0 */ swc1 $f8, 0xf0($sp) +/* 04889C 80047C9C C6060038 */ lwc1 $f6, 0x38($s0) +/* 0488A0 80047CA0 C624001C */ lwc1 $f4, 0x1c($s1) +/* 0488A4 80047CA4 46083282 */ mul.s $f10, $f6, $f8 +/* 0488A8 80047CA8 460A2180 */ add.s $f6, $f4, $f10 +/* 0488AC 80047CAC E626001C */ swc1 $f6, 0x1c($s1) +/* 0488B0 80047CB0 C7A400F0 */ lwc1 $f4, 0xf0($sp) +/* 0488B4 80047CB4 C608003C */ lwc1 $f8, 0x3c($s0) +/* 0488B8 80047CB8 C6260020 */ lwc1 $f6, 0x20($s1) +/* 0488BC 80047CBC 46044282 */ mul.s $f10, $f8, $f4 +/* 0488C0 80047CC0 460A3200 */ add.s $f8, $f6, $f10 +/* 0488C4 80047CC4 E6280020 */ swc1 $f8, 0x20($s1) +/* 0488C8 80047CC8 C7A600F0 */ lwc1 $f6, 0xf0($sp) +/* 0488CC 80047CCC C6040040 */ lwc1 $f4, 0x40($s0) +/* 0488D0 80047CD0 C6280024 */ lwc1 $f8, 0x24($s1) +/* 0488D4 80047CD4 46062282 */ mul.s $f10, $f4, $f6 +/* 0488D8 80047CD8 460A4100 */ add.s $f4, $f8, $f10 +/* 0488DC 80047CDC E6240024 */ swc1 $f4, 0x24($s1) +/* 0488E0 80047CE0 821901E2 */ lb $t9, 0x1e2($s0) +/* 0488E4 80047CE4 00000000 */ nop +/* 0488E8 80047CE8 13200031 */ beqz $t9, .L80047DB0 +/* 0488EC 80047CEC 00000000 */ nop +/* 0488F0 80047CF0 814AD584 */ lb $t2, %lo(D_8011D584)($t2) +/* 0488F4 80047CF4 3C0C8012 */ lui $t4, %hi(D_8011D540) # $t4, 0x8012 +/* 0488F8 80047CF8 1540002D */ bnez $t2, .L80047DB0 +/* 0488FC 80047CFC 00000000 */ nop +/* 048900 80047D00 8D8CD540 */ lw $t4, %lo(D_8011D540)($t4) +/* 048904 80047D04 C7A8012C */ lwc1 $f8, 0x12c($sp) +/* 048908 80047D08 15800029 */ bnez $t4, .L80047DB0 +/* 04890C 80047D0C 3C018012 */ lui $at, %hi(D_8011D56C) # $at, 0x8012 +/* 048910 80047D10 C426D56C */ lwc1 $f6, %lo(D_8011D56C)($at) +/* 048914 80047D14 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 048918 80047D18 46083282 */ mul.s $f10, $f6, $f8 +/* 04891C 80047D1C 44803000 */ mtc1 $zero, $f6 +/* 048920 80047D20 44813800 */ mtc1 $at, $f7 +/* 048924 80047D24 46005121 */ cvt.d.s $f4, $f10 +/* 048928 80047D28 46262202 */ mul.d $f8, $f4, $f6 +/* 04892C 80047D2C C60A009C */ lwc1 $f10, 0x9c($s0) +/* 048930 80047D30 C60400A0 */ lwc1 $f4, 0xa0($s0) +/* 048934 80047D34 C6060038 */ lwc1 $f6, 0x38($s0) +/* 048938 80047D38 462040A0 */ cvt.s.d $f2, $f8 +/* 04893C 80047D3C 46025002 */ mul.s $f0, $f10, $f2 +/* 048940 80047D40 C60A0050 */ lwc1 $f10, 0x50($s0) +/* 048944 80047D44 46041082 */ mul.s $f2, $f2, $f4 +/* 048948 80047D48 00000000 */ nop +/* 04894C 80047D4C 46003202 */ mul.s $f8, $f6, $f0 +/* 048950 80047D50 00000000 */ nop +/* 048954 80047D54 46025102 */ mul.s $f4, $f10, $f2 +/* 048958 80047D58 C62A001C */ lwc1 $f10, 0x1c($s1) +/* 04895C 80047D5C 46044180 */ add.s $f6, $f8, $f4 +/* 048960 80047D60 46065200 */ add.s $f8, $f10, $f6 +/* 048964 80047D64 E628001C */ swc1 $f8, 0x1c($s1) +/* 048968 80047D68 C604003C */ lwc1 $f4, 0x3c($s0) +/* 04896C 80047D6C C6060054 */ lwc1 $f6, 0x54($s0) +/* 048970 80047D70 46002282 */ mul.s $f10, $f4, $f0 +/* 048974 80047D74 00000000 */ nop +/* 048978 80047D78 46023202 */ mul.s $f8, $f6, $f2 +/* 04897C 80047D7C C6260020 */ lwc1 $f6, 0x20($s1) +/* 048980 80047D80 46085100 */ add.s $f4, $f10, $f8 +/* 048984 80047D84 46043280 */ add.s $f10, $f6, $f4 +/* 048988 80047D88 E62A0020 */ swc1 $f10, 0x20($s1) +/* 04898C 80047D8C C6080040 */ lwc1 $f8, 0x40($s0) +/* 048990 80047D90 C6040058 */ lwc1 $f4, 0x58($s0) +/* 048994 80047D94 46004182 */ mul.s $f6, $f8, $f0 +/* 048998 80047D98 00000000 */ nop +/* 04899C 80047D9C 46022282 */ mul.s $f10, $f4, $f2 +/* 0489A0 80047DA0 C6240024 */ lwc1 $f4, 0x24($s1) +/* 0489A4 80047DA4 460A3200 */ add.s $f8, $f6, $f10 +/* 0489A8 80047DA8 46082180 */ add.s $f6, $f4, $f8 +/* 0489AC 80047DAC E6260024 */ swc1 $f6, 0x24($s1) +.L80047DB0: +/* 0489B0 80047DB0 C60E002C */ lwc1 $f14, 0x2c($s0) +/* 0489B4 80047DB4 44805000 */ mtc1 $zero, $f10 +/* 0489B8 80047DB8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0489BC 80047DBC 460A703C */ c.lt.s $f14, $f10 +/* 0489C0 80047DC0 44812000 */ mtc1 $at, $f4 +/* 0489C4 80047DC4 460E7302 */ mul.s $f12, $f14, $f14 +/* 0489C8 80047DC8 45000002 */ bc1f .L80047DD4 +/* 0489CC 80047DCC 00000000 */ nop +/* 0489D0 80047DD0 46006307 */ neg.s $f12, $f12 +.L80047DD4: +/* 0489D4 80047DD4 4604603C */ c.lt.s $f12, $f4 +/* 0489D8 80047DD8 C7A400FC */ lwc1 $f4, 0xfc($sp) +/* 0489DC 80047DDC 4500000D */ bc1f .L80047E14 +/* 0489E0 80047DE0 00000000 */ nop +/* 0489E4 80047DE4 8D6BD528 */ lw $t3, %lo(D_8011D528)($t3) +/* 0489E8 80047DE8 C7A800FC */ lwc1 $f8, 0xfc($sp) +/* 0489EC 80047DEC 316E8000 */ andi $t6, $t3, 0x8000 +/* 0489F0 80047DF0 15C00008 */ bnez $t6, .L80047E14 +/* 0489F4 80047DF4 00000000 */ nop +/* 0489F8 80047DF8 46087182 */ mul.s $f6, $f14, $f8 +/* 0489FC 80047DFC 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 048A00 80047E00 44815000 */ mtc1 $at, $f10 +/* 048A04 80047E04 00000000 */ nop +/* 048A08 80047E08 460A3402 */ mul.s $f16, $f6, $f10 +/* 048A0C 80047E0C 10000004 */ b .L80047E20 +/* 048A10 80047E10 C6060038 */ lwc1 $f6, 0x38($s0) +.L80047E14: +/* 048A14 80047E14 46046402 */ mul.s $f16, $f12, $f4 +/* 048A18 80047E18 00000000 */ nop +/* 048A1C 80047E1C C6060038 */ lwc1 $f6, 0x38($s0) +.L80047E20: +/* 048A20 80047E20 C628001C */ lwc1 $f8, 0x1c($s1) +/* 048A24 80047E24 46103282 */ mul.s $f10, $f6, $f16 +/* 048A28 80047E28 C6260020 */ lwc1 $f6, 0x20($s1) +/* 048A2C 80047E2C 3C018012 */ lui $at, %hi(D_8011D578) # $at, 0x8012 +/* 048A30 80047E30 460A4101 */ sub.s $f4, $f8, $f10 +/* 048A34 80047E34 E624001C */ swc1 $f4, 0x1c($s1) +/* 048A38 80047E38 C608003C */ lwc1 $f8, 0x3c($s0) +/* 048A3C 80047E3C 00000000 */ nop +/* 048A40 80047E40 46104282 */ mul.s $f10, $f8, $f16 +/* 048A44 80047E44 C6280024 */ lwc1 $f8, 0x24($s1) +/* 048A48 80047E48 460A3101 */ sub.s $f4, $f6, $f10 +/* 048A4C 80047E4C E6240020 */ swc1 $f4, 0x20($s1) +/* 048A50 80047E50 C6060040 */ lwc1 $f6, 0x40($s0) +/* 048A54 80047E54 00000000 */ nop +/* 048A58 80047E58 46103282 */ mul.s $f10, $f6, $f16 +/* 048A5C 80047E5C 460A4101 */ sub.s $f4, $f8, $f10 +/* 048A60 80047E60 E6240024 */ swc1 $f4, 0x24($s1) +/* 048A64 80047E64 820F0175 */ lb $t7, 0x175($s0) +/* 048A68 80047E68 00000000 */ nop +/* 048A6C 80047E6C 11E00007 */ beqz $t7, .L80047E8C +/* 048A70 80047E70 00000000 */ nop +/* 048A74 80047E74 C426D578 */ lwc1 $f6, %lo(D_8011D578)($at) +/* 048A78 80047E78 3C018012 */ li $at, 0x80120000 # -0.000000 +/* 048A7C 80047E7C E626001C */ swc1 $f6, 0x1c($s1) +/* 048A80 80047E80 C428D57C */ lwc1 $f8, %lo(D_8011D57C)($at) +/* 048A84 80047E84 00000000 */ nop +/* 048A88 80047E88 E6280024 */ swc1 $f8, 0x24($s1) +.L80047E8C: +/* 048A8C 80047E8C AE00010C */ sw $zero, 0x10c($s0) +/* 048A90 80047E90 3C188012 */ lui $t8, %hi(D_8011D554) # $t8, 0x8012 +/* 048A94 80047E94 8F18D554 */ lw $t8, %lo(D_8011D554)($t8) +/* 048A98 80047E98 860201A2 */ lh $v0, 0x1a2($s0) +/* 048A9C 80047E9C 860C01A0 */ lh $t4, 0x1a0($s0) +/* 048AA0 80047EA0 03026823 */ subu $t5, $t8, $v0 +/* 048AA4 80047EA4 000DC8C3 */ sra $t9, $t5, 3 +/* 048AA8 80047EA8 00595021 */ addu $t2, $v0, $t9 +/* 048AAC 80047EAC A60A01A2 */ sh $t2, 0x1a2($s0) +/* 048AB0 80047EB0 860B01A2 */ lh $t3, 0x1a2($s0) +/* 048AB4 80047EB4 3C0F8012 */ lui $t7, %hi(D_8011D558) # $t7, 0x8012 +/* 048AB8 80047EB8 018B7021 */ addu $t6, $t4, $t3 +/* 048ABC 80047EBC A62E0000 */ sh $t6, ($s1) +/* 048AC0 80047EC0 860301A6 */ lh $v1, 0x1a6($s0) +/* 048AC4 80047EC4 8DEFD558 */ lw $t7, %lo(D_8011D558)($t7) +/* 048AC8 80047EC8 860A01A4 */ lh $t2, 0x1a4($s0) +/* 048ACC 80047ECC 01E3C023 */ subu $t8, $t7, $v1 +/* 048AD0 80047ED0 001868C3 */ sra $t5, $t8, 3 +/* 048AD4 80047ED4 006DC821 */ addu $t9, $v1, $t5 +/* 048AD8 80047ED8 A61901A6 */ sh $t9, 0x1a6($s0) +/* 048ADC 80047EDC 860C01A6 */ lh $t4, 0x1a6($s0) +/* 048AE0 80047EE0 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 048AE4 80047EE4 014C5821 */ addu $t3, $t2, $t4 +/* 048AE8 80047EE8 A62B0004 */ sh $t3, 4($s1) +/* 048AEC 80047EEC 820401D2 */ lb $a0, 0x1d2($s0) +/* 048AF0 80047EF0 44812000 */ mtc1 $at, $f4 +/* 048AF4 80047EF4 18800003 */ blez $a0, .L80047F04 +/* 048AF8 80047EF8 00887023 */ subu $t6, $a0, $t0 +/* 048AFC 80047EFC 10000002 */ b .L80047F08 +/* 048B00 80047F00 A20E01D2 */ sb $t6, 0x1d2($s0) +.L80047F04: +/* 048B04 80047F04 A20001D2 */ sb $zero, 0x1d2($s0) +.L80047F08: +/* 048B08 80047F08 C60A0038 */ lwc1 $f10, 0x38($s0) +/* 048B0C 80047F0C C7A000C8 */ lwc1 $f0, 0xc8($sp) +/* 048B10 80047F10 46045182 */ mul.s $f6, $f10, $f4 +/* 048B14 80047F14 44812000 */ mtc1 $at, $f4 +/* 048B18 80047F18 C60A0040 */ lwc1 $f10, 0x40($s0) +/* 048B1C 80047F1C C7A200E8 */ lwc1 $f2, 0xe8($sp) +/* 048B20 80047F20 46003202 */ mul.s $f8, $f6, $f0 +/* 048B24 80047F24 C7AE00E4 */ lwc1 $f14, 0xe4($sp) +/* 048B28 80047F28 8E0F0148 */ lw $t7, 0x148($s0) +/* 048B2C 80047F2C 46045182 */ mul.s $f6, $f10, $f4 +/* 048B30 80047F30 46081080 */ add.s $f2, $f2, $f8 +/* 048B34 80047F34 46003202 */ mul.s $f8, $f6, $f0 +/* 048B38 80047F38 15E00059 */ bnez $t7, .L800480A0 +/* 048B3C 80047F3C 46087380 */ add.s $f14, $f14, $f8 +/* 048B40 80047F40 821801D2 */ lb $t8, 0x1d2($s0) +/* 048B44 80047F44 C630001C */ lwc1 $f16, 0x1c($s1) +/* 048B48 80047F48 C62C0024 */ lwc1 $f12, 0x24($s1) +/* 048B4C 80047F4C 13000005 */ beqz $t8, .L80047F64 +/* 048B50 80047F50 3C0D8012 */ lui $t5, %hi(D_8011D584) # $t5, 0x8012 +/* 048B54 80047F54 C60A011C */ lwc1 $f10, 0x11c($s0) +/* 048B58 80047F58 C6040120 */ lwc1 $f4, 0x120($s0) +/* 048B5C 80047F5C 460A8400 */ add.s $f16, $f16, $f10 +/* 048B60 80047F60 46046300 */ add.s $f12, $f12, $f4 +.L80047F64: +/* 048B64 80047F64 81ADD584 */ lb $t5, %lo(D_8011D584)($t5) +/* 048B68 80047F68 C7A8012C */ lwc1 $f8, 0x12c($sp) +/* 048B6C 80047F6C 11A0002E */ beqz $t5, .L80048028 +/* 048B70 80047F70 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 048B74 80047F74 44813800 */ mtc1 $at, $f7 +/* 048B78 80047F78 44803000 */ mtc1 $zero, $f6 +/* 048B7C 80047F7C 46008021 */ cvt.d.s $f0, $f16 +/* 048B80 80047F80 4620303C */ c.lt.d $f6, $f0 +/* 048B84 80047F84 44803000 */ mtc1 $zero, $f6 +/* 048B88 80047F88 45010007 */ bc1t .L80047FA8 +/* 048B8C 80047F8C 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 048B90 80047F90 44814800 */ mtc1 $at, $f9 +/* 048B94 80047F94 44804000 */ mtc1 $zero, $f8 +/* 048B98 80047F98 00000000 */ nop +/* 048B9C 80047F9C 4628003C */ c.lt.d $f0, $f8 +/* 048BA0 80047FA0 00000000 */ nop +/* 048BA4 80047FA4 45000007 */ bc1f .L80047FC4 +.L80047FA8: +/* 048BA8 80047FA8 3C01800E */ lui $at, %hi(D_800E643C) # $at, 0x800e +/* 048BAC 80047FAC C42B6438 */ lwc1 $f11, %lo(D_800E6438)($at) +/* 048BB0 80047FB0 C42A643C */ lwc1 $f10, %lo(D_800E643C)($at) +/* 048BB4 80047FB4 00000000 */ nop +/* 048BB8 80047FB8 462A0102 */ mul.d $f4, $f0, $f10 +/* 048BBC 80047FBC 10000003 */ b .L80047FCC +/* 048BC0 80047FC0 46202420 */ cvt.s.d $f16, $f4 +.L80047FC4: +/* 048BC4 80047FC4 44808000 */ mtc1 $zero, $f16 +/* 048BC8 80047FC8 00000000 */ nop +.L80047FCC: +/* 048BCC 80047FCC 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 048BD0 80047FD0 44813800 */ mtc1 $at, $f7 +/* 048BD4 80047FD4 46006021 */ cvt.d.s $f0, $f12 +/* 048BD8 80047FD8 4620303C */ c.lt.d $f6, $f0 +/* 048BDC 80047FDC 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 048BE0 80047FE0 45010007 */ bc1t .L80048000 +/* 048BE4 80047FE4 00000000 */ nop +/* 048BE8 80047FE8 44814800 */ mtc1 $at, $f9 +/* 048BEC 80047FEC 44804000 */ mtc1 $zero, $f8 +/* 048BF0 80047FF0 00000000 */ nop +/* 048BF4 80047FF4 4628003C */ c.lt.d $f0, $f8 +/* 048BF8 80047FF8 00000000 */ nop +/* 048BFC 80047FFC 45000007 */ bc1f .L8004801C +.L80048000: +/* 048C00 80048000 3C01800E */ lui $at, %hi(D_800E6444) # $at, 0x800e +/* 048C04 80048004 C42B6440 */ lwc1 $f11, %lo(D_800E6440)($at) +/* 048C08 80048008 C42A6444 */ lwc1 $f10, %lo(D_800E6444)($at) +/* 048C0C 8004800C 00000000 */ nop +/* 048C10 80048010 462A0102 */ mul.d $f4, $f0, $f10 +/* 048C14 80048014 1000000B */ b .L80048044 +/* 048C18 80048018 46202320 */ cvt.s.d $f12, $f4 +.L8004801C: +/* 048C1C 8004801C 44806000 */ mtc1 $zero, $f12 +/* 048C20 80048020 10000009 */ b .L80048048 +/* 048C24 80048024 C7A0012C */ lwc1 $f0, 0x12c($sp) +.L80048028: +/* 048C28 80048028 C6060084 */ lwc1 $f6, 0x84($s0) +/* 048C2C 8004802C C6040088 */ lwc1 $f4, 0x88($s0) +/* 048C30 80048030 46083282 */ mul.s $f10, $f6, $f8 +/* 048C34 80048034 00000000 */ nop +/* 048C38 80048038 46082182 */ mul.s $f6, $f4, $f8 +/* 048C3C 8004803C 460A1080 */ add.s $f2, $f2, $f10 +/* 048C40 80048040 46067380 */ add.s $f14, $f14, $f6 +.L80048044: +/* 048C44 80048044 C7A0012C */ lwc1 $f0, 0x12c($sp) +.L80048048: +/* 048C48 80048048 C6280020 */ lwc1 $f8, 0x20($s1) +/* 048C4C 8004804C 46008282 */ mul.s $f10, $f16, $f0 +/* 048C50 80048050 E7AE00E4 */ swc1 $f14, 0xe4($sp) +/* 048C54 80048054 E7A200E8 */ swc1 $f2, 0xe8($sp) +/* 048C58 80048058 02202025 */ move $a0, $s1 +/* 048C5C 8004805C 46004182 */ mul.s $f6, $f8, $f0 +/* 048C60 80048060 46025100 */ add.s $f4, $f10, $f2 +/* 048C64 80048064 44052000 */ mfc1 $a1, $f4 +/* 048C68 80048068 46006282 */ mul.s $f10, $f12, $f0 +/* 048C6C 8004806C 44063000 */ mfc1 $a2, $f6 +/* 048C70 80048070 460E5100 */ add.s $f4, $f10, $f14 +/* 048C74 80048074 44072000 */ mfc1 $a3, $f4 +/* 048C78 80048078 0C00455C */ jal func_80011570 +/* 048C7C 8004807C 00000000 */ nop +/* 048C80 80048080 1040000F */ beqz $v0, .L800480C0 +/* 048C84 80048084 3C198012 */ lui $t9, %hi(D_8011D55C) # $t9, 0x8012 +/* 048C88 80048088 8F39D55C */ lw $t9, %lo(D_8011D55C)($t9) +/* 048C8C 8004808C 2401FFFF */ li $at, -1 +/* 048C90 80048090 1321000B */ beq $t9, $at, .L800480C0 +/* 048C94 80048094 240A0001 */ li $t2, 1 +/* 048C98 80048098 10000009 */ b .L800480C0 +/* 048C9C 8004809C A3AA0067 */ sb $t2, 0x67($sp) +.L800480A0: +/* 048CA0 800480A0 44804000 */ mtc1 $zero, $f8 +/* 048CA4 800480A4 44803000 */ mtc1 $zero, $f6 +/* 048CA8 800480A8 8FA6012C */ lw $a2, 0x12c($sp) +/* 048CAC 800480AC 02202025 */ move $a0, $s1 +/* 048CB0 800480B0 02002825 */ move $a1, $s0 +/* 048CB4 800480B4 E7A800E8 */ swc1 $f8, 0xe8($sp) +/* 048CB8 800480B8 0C0141D5 */ jal func_80050754 +/* 048CBC 800480BC E7A600E4 */ swc1 $f6, 0xe4($sp) +.L800480C0: +/* 048CC0 800480C0 C60A00D0 */ lwc1 $f10, 0xd0($s0) +/* 048CC4 800480C4 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 048CC8 800480C8 44812800 */ mtc1 $at, $f5 +/* 048CCC 800480CC 44802000 */ mtc1 $zero, $f4 +/* 048CD0 800480D0 46005021 */ cvt.d.s $f0, $f10 +/* 048CD4 800480D4 46240202 */ mul.d $f8, $f0, $f4 +/* 048CD8 800480D8 C7A70050 */ lwc1 $f7, 0x50($sp) +/* 048CDC 800480DC C7A60054 */ lwc1 $f6, 0x54($sp) +/* 048CE0 800480E0 3C01401C */ li $at, 0x401C0000 # 2.437500 +/* 048CE4 800480E4 27A50118 */ addiu $a1, $sp, 0x118 +/* 048CE8 800480E8 46264282 */ mul.d $f10, $f8, $f6 +/* 048CEC 800480EC 462A0101 */ sub.d $f4, $f0, $f10 +/* 048CF0 800480F0 46202220 */ cvt.s.d $f8, $f4 +/* 048CF4 800480F4 44814800 */ mtc1 $at, $f9 +/* 048CF8 800480F8 E60800D0 */ swc1 $f8, 0xd0($s0) +/* 048CFC 800480FC C6260020 */ lwc1 $f6, 0x20($s1) +/* 048D00 80048100 44804000 */ mtc1 $zero, $f8 +/* 048D04 80048104 46003287 */ neg.s $f10, $f6 +/* 048D08 80048108 46005121 */ cvt.d.s $f4, $f10 +/* 048D0C 8004810C 46282182 */ mul.d $f6, $f4, $f8 +/* 048D10 80048110 3C01800E */ lui $at, %hi(D_800E6448) # $at, 0x800e +/* 048D14 80048114 44802800 */ mtc1 $zero, $f5 +/* 048D18 80048118 462032A0 */ cvt.s.d $f10, $f6 +/* 048D1C 8004811C E60A00D4 */ swc1 $f10, 0xd4($s0) +/* 048D20 80048120 C60400D4 */ lwc1 $f4, 0xd4($s0) +/* 048D24 80048124 C428644C */ lwc1 $f8, %lo(D_800E644C)($at) +/* 048D28 80048128 C4296448 */ lwc1 $f9, %lo(D_800E6448)($at) +/* 048D2C 8004812C 460020A1 */ cvt.d.s $f2, $f4 +/* 048D30 80048130 4622403C */ c.lt.d $f8, $f2 +/* 048D34 80048134 44802000 */ mtc1 $zero, $f4 +/* 048D38 80048138 45000007 */ bc1f .L80048158 +/* 048D3C 8004813C 3C01420C */ li $at, 0x420C0000 # 35.000000 +/* 048D40 80048140 44813000 */ mtc1 $at, $f6 +/* 048D44 80048144 00000000 */ nop +/* 048D48 80048148 E60600D4 */ swc1 $f6, 0xd4($s0) +/* 048D4C 8004814C C60A00D4 */ lwc1 $f10, 0xd4($s0) +/* 048D50 80048150 00000000 */ nop +/* 048D54 80048154 460050A1 */ cvt.d.s $f2, $f10 +.L80048158: +/* 048D58 80048158 4624103C */ c.lt.d $f2, $f4 +/* 048D5C 8004815C 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 048D60 80048160 45000004 */ bc1f .L80048174 +/* 048D64 80048164 00000000 */ nop +/* 048D68 80048168 44804000 */ mtc1 $zero, $f8 +/* 048D6C 8004816C 00000000 */ nop +/* 048D70 80048170 E60800D4 */ swc1 $f8, 0xd4($s0) +.L80048174: +/* 048D74 80048174 44817000 */ mtc1 $at, $f14 +/* 048D78 80048178 3C01800E */ lui $at, %hi(D_800E6450) # $at, 0x800e +/* 048D7C 8004817C C4266450 */ lwc1 $f6, %lo(D_800E6450)($at) +/* 048D80 80048180 27A600D4 */ addiu $a2, $sp, 0xd4 +/* 048D84 80048184 E7A60118 */ swc1 $f6, 0x118($sp) +/* 048D88 80048188 C62C0010 */ lwc1 $f12, 0x10($s1) +/* 048D8C 8004818C 0C00AB42 */ jal func_8002AD08 +/* 048D90 80048190 E7AE0114 */ swc1 $f14, 0x114($sp) +/* 048D94 80048194 00023E00 */ sll $a3, $v0, 0x18 +/* 048D98 80048198 00025E00 */ sll $t3, $v0, 0x18 +/* 048D9C 8004819C 000B7603 */ sra $t6, $t3, 0x18 +/* 048DA0 800481A0 00076603 */ sra $t4, $a3, 0x18 +/* 048DA4 800481A4 C7AE0114 */ lwc1 $f14, 0x114($sp) +/* 048DA8 800481A8 11C00025 */ beqz $t6, .L80048240 +/* 048DAC 800481AC 01803825 */ move $a3, $t4 +/* 048DB0 800481B0 C60E002C */ lwc1 $f14, 0x2c($s0) +/* 048DB4 800481B4 44805000 */ mtc1 $zero, $f10 +/* 048DB8 800481B8 3C014010 */ li $at, 0x40100000 # 2.250000 +/* 048DBC 800481BC 460A703C */ c.lt.s $f14, $f10 +/* 048DC0 800481C0 44812800 */ mtc1 $at, $f5 +/* 048DC4 800481C4 45000002 */ bc1f .L800481D0 +/* 048DC8 800481C8 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 048DCC 800481CC 46007387 */ neg.s $f14, $f14 +.L800481D0: +/* 048DD0 800481D0 44802000 */ mtc1 $zero, $f4 +/* 048DD4 800481D4 46007021 */ cvt.d.s $f0, $f14 +/* 048DD8 800481D8 4620203C */ c.lt.d $f4, $f0 +/* 048DDC 800481DC 240F0005 */ li $t7, 5 +/* 048DE0 800481E0 45000004 */ bc1f .L800481F4 +/* 048DE4 800481E4 00000000 */ nop +/* 048DE8 800481E8 44817000 */ mtc1 $at, $f14 +/* 048DEC 800481EC 00000000 */ nop +/* 048DF0 800481F0 46007021 */ cvt.d.s $f0, $f14 +.L800481F4: +/* 048DF4 800481F4 3C01800E */ lui $at, %hi(D_800E645C) # $at, 0x800e +/* 048DF8 800481F8 C4296458 */ lwc1 $f9, %lo(D_800E6458)($at) +/* 048DFC 800481FC C428645C */ lwc1 $f8, %lo(D_800E645C)($at) +/* 048E00 80048200 C62A0010 */ lwc1 $f10, 0x10($s1) +/* 048E04 80048204 46280182 */ mul.d $f6, $f0, $f8 +/* 048E08 80048208 C7A40118 */ lwc1 $f4, 0x118($sp) +/* 048E0C 8004820C 462033A0 */ cvt.s.d $f14, $f6 +/* 048E10 80048210 460E5081 */ sub.s $f2, $f10, $f14 +/* 048E14 80048214 4604103C */ c.lt.s $f2, $f4 +/* 048E18 80048218 00000000 */ nop +/* 048E1C 8004821C 45000005 */ bc1f .L80048234 +/* 048E20 80048220 00000000 */ nop +/* 048E24 80048224 46022201 */ sub.s $f8, $f4, $f2 +/* 048E28 80048228 A20F01E5 */ sb $t7, 0x1e5($s0) +/* 048E2C 8004822C 10000004 */ b .L80048240 +/* 048E30 80048230 E60800C0 */ swc1 $f8, 0xc0($s0) +.L80048234: +/* 048E34 80048234 44803000 */ mtc1 $zero, $f6 +/* 048E38 80048238 00000000 */ nop +/* 048E3C 8004823C E60600C0 */ swc1 $f6, 0xc0($s0) +.L80048240: +/* 048E40 80048240 820201E5 */ lb $v0, 0x1e5($s0) +/* 048E44 80048244 00000000 */ nop +/* 048E48 80048248 18400003 */ blez $v0, .L80048258 +/* 048E4C 8004824C 2458FFFF */ addiu $t8, $v0, -1 +/* 048E50 80048250 10000004 */ b .L80048264 +/* 048E54 80048254 A21801E5 */ sb $t8, 0x1e5($s0) +.L80048258: +/* 048E58 80048258 44805000 */ mtc1 $zero, $f10 +/* 048E5C 8004825C 00000000 */ nop +/* 048E60 80048260 E60A00C0 */ swc1 $f10, 0xc0($s0) +.L80048264: +/* 048E64 80048264 820D01E5 */ lb $t5, 0x1e5($s0) +/* 048E68 80048268 00000000 */ nop +/* 048E6C 8004826C 19A0000F */ blez $t5, .L800482AC +/* 048E70 80048270 00000000 */ nop +/* 048E74 80048274 C7A80118 */ lwc1 $f8, 0x118($sp) +/* 048E78 80048278 C6240010 */ lwc1 $f4, 0x10($s1) +/* 048E7C 8004827C 460E4180 */ add.s $f6, $f8, $f14 +/* 048E80 80048280 4606203C */ c.lt.s $f4, $f6 +/* 048E84 80048284 00000000 */ nop +/* 048E88 80048288 45000008 */ bc1f .L800482AC +/* 048E8C 8004828C 00000000 */ nop +/* 048E90 80048290 8E22004C */ lw $v0, 0x4c($s1) +/* 048E94 80048294 00000000 */ nop +/* 048E98 80048298 84590014 */ lh $t9, 0x14($v0) +/* 048E9C 8004829C 00000000 */ nop +/* 048EA0 800482A0 372A0010 */ ori $t2, $t9, 0x10 +/* 048EA4 800482A4 10000007 */ b .L800482C4 +/* 048EA8 800482A8 A44A0014 */ sh $t2, 0x14($v0) +.L800482AC: +/* 048EAC 800482AC 8E22004C */ lw $v0, 0x4c($s1) +/* 048EB0 800482B0 00000000 */ nop +/* 048EB4 800482B4 844C0014 */ lh $t4, 0x14($v0) +/* 048EB8 800482B8 00000000 */ nop +/* 048EBC 800482BC 318BFFEF */ andi $t3, $t4, 0xffef +/* 048EC0 800482C0 A44B0014 */ sh $t3, 0x14($v0) +.L800482C4: +/* 048EC4 800482C4 C7A80118 */ lwc1 $f8, 0x118($sp) +/* 048EC8 800482C8 C62A0010 */ lwc1 $f10, 0x10($s1) +/* 048ECC 800482CC 460E4100 */ add.s $f4, $f8, $f14 +/* 048ED0 800482D0 44804000 */ mtc1 $zero, $f8 +/* 048ED4 800482D4 46045181 */ sub.s $f6, $f10, $f4 +/* 048ED8 800482D8 44804800 */ mtc1 $zero, $f9 +/* 048EDC 800482DC E7A60118 */ swc1 $f6, 0x118($sp) +/* 048EE0 800482E0 C60C00C0 */ lwc1 $f12, 0xc0($s0) +/* 048EE4 800482E4 00000000 */ nop +/* 048EE8 800482E8 460060A1 */ cvt.d.s $f2, $f12 +/* 048EEC 800482EC 4622403C */ c.lt.d $f8, $f2 +/* 048EF0 800482F0 00000000 */ nop +/* 048EF4 800482F4 45000017 */ bc1f .L80048354 +/* 048EF8 800482F8 3C0E8012 */ lui $t6, %hi(D_8011D528) # $t6, 0x8012 +/* 048EFC 800482FC 8DCED528 */ lw $t6, %lo(D_8011D528)($t6) +/* 048F00 80048300 00004025 */ move $t0, $zero +/* 048F04 80048304 31CF0010 */ andi $t7, $t6, 0x10 +/* 048F08 80048308 11E00006 */ beqz $t7, .L80048324 +/* 048F0C 8004830C 02202025 */ move $a0, $s1 +/* 048F10 80048310 3C088012 */ lui $t0, %hi(D_8011D534) # $t0, 0x8012 +/* 048F14 80048314 8D08D534 */ lw $t0, %lo(D_8011D534)($t0) +/* 048F18 80048318 00000000 */ nop +/* 048F1C 8004831C 0008C040 */ sll $t8, $t0, 1 +/* 048F20 80048320 03004025 */ move $t0, $t8 +.L80048324: +/* 048F24 80048324 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 048F28 80048328 44815000 */ mtc1 $at, $f10 +/* 048F2C 8004832C 8FAD0128 */ lw $t5, 0x128($sp) +/* 048F30 80048330 02002825 */ move $a1, $s0 +/* 048F34 80048334 27A600D4 */ addiu $a2, $sp, 0xd4 +/* 048F38 80048338 AFA80014 */ sw $t0, 0x14($sp) +/* 048F3C 8004833C E7AA0018 */ swc1 $f10, 0x18($sp) +/* 048F40 80048340 0C012538 */ jal func_800494E0 +/* 048F44 80048344 AFAD0010 */ sw $t5, 0x10($sp) +/* 048F48 80048348 C60C00C0 */ lwc1 $f12, 0xc0($s0) +/* 048F4C 8004834C 00000000 */ nop +/* 048F50 80048350 460060A1 */ cvt.d.s $f2, $f12 +.L80048354: +/* 048F54 80048354 44802800 */ mtc1 $zero, $f5 +/* 048F58 80048358 44802000 */ mtc1 $zero, $f4 +/* 048F5C 8004835C 3C198012 */ lui $t9, %hi(D_8011D55C) # $t9, 0x8012 +/* 048F60 80048360 4622203C */ c.lt.d $f4, $f2 +/* 048F64 80048364 00000000 */ nop +/* 048F68 80048368 45000013 */ bc1f .L800483B8 +/* 048F6C 8004836C 00000000 */ nop +/* 048F70 80048370 C60800C4 */ lwc1 $f8, 0xc4($s0) +/* 048F74 80048374 C6260010 */ lwc1 $f6, 0x10($s1) +/* 048F78 80048378 46086282 */ mul.s $f10, $f12, $f8 +/* 048F7C 8004837C 3C013FE8 */ li $at, 0x3FE80000 # 1.812500 +/* 048F80 80048380 44813800 */ mtc1 $at, $f7 +/* 048F84 80048384 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 048F88 80048388 460A3100 */ add.s $f4, $f6, $f10 +/* 048F8C 8004838C 44803000 */ mtc1 $zero, $f6 +/* 048F90 80048390 E6240010 */ swc1 $f4, 0x10($s1) +/* 048F94 80048394 C60800C4 */ lwc1 $f8, 0xc4($s0) +/* 048F98 80048398 44802000 */ mtc1 $zero, $f4 +/* 048F9C 8004839C 46004021 */ cvt.d.s $f0, $f8 +/* 048FA0 800483A0 44812800 */ mtc1 $at, $f5 +/* 048FA4 800483A4 46203281 */ sub.d $f10, $f6, $f0 +/* 048FA8 800483A8 46245202 */ mul.d $f8, $f10, $f4 +/* 048FAC 800483AC 46280180 */ add.d $f6, $f0, $f8 +/* 048FB0 800483B0 462032A0 */ cvt.s.d $f10, $f6 +/* 048FB4 800483B4 E60A00C4 */ swc1 $f10, 0xc4($s0) +.L800483B8: +/* 048FB8 800483B8 8F39D55C */ lw $t9, %lo(D_8011D55C)($t9) +/* 048FBC 800483BC 820801D2 */ lb $t0, 0x1d2($s0) +/* 048FC0 800483C0 2401FFFF */ li $at, -1 +/* 048FC4 800483C4 1721000E */ bne $t9, $at, .L80048400 +/* 048FC8 800483C8 8FA60128 */ lw $a2, 0x128($sp) +/* 048FCC 800483CC 0C008D5A */ jal func_80023568 +/* 048FD0 800483D0 AFA800C4 */ sw $t0, 0xc4($sp) +/* 048FD4 800483D4 8FA800C4 */ lw $t0, 0xc4($sp) +/* 048FD8 800483D8 14400008 */ bnez $v0, .L800483FC +/* 048FDC 800483DC 02202025 */ move $a0, $s1 +/* 048FE0 800483E0 8FA60128 */ lw $a2, 0x128($sp) +/* 048FE4 800483E4 02002825 */ move $a1, $s0 +/* 048FE8 800483E8 0C0156A1 */ jal func_80055A84 +/* 048FEC 800483EC AFA800C4 */ sw $t0, 0xc4($sp) +/* 048FF0 800483F0 8FA800C4 */ lw $t0, 0xc4($sp) +/* 048FF4 800483F4 10000008 */ b .L80048418 +/* 048FF8 800483F8 00000000 */ nop +.L800483FC: +/* 048FFC 800483FC 8FA60128 */ lw $a2, 0x128($sp) +.L80048400: +/* 049000 80048400 02202025 */ move $a0, $s1 +/* 049004 80048404 02002825 */ move $a1, $s0 +/* 049008 80048408 0C0153F4 */ jal func_80054FD0 +/* 04900C 8004840C AFA800C4 */ sw $t0, 0xc4($sp) +/* 049010 80048410 8FA800C4 */ lw $t0, 0xc4($sp) +/* 049014 80048414 00000000 */ nop +.L80048418: +/* 049018 80048418 15000006 */ bnez $t0, .L80048434 +/* 04901C 8004841C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 049020 80048420 820A01D2 */ lb $t2, 0x1d2($s0) +/* 049024 80048424 00000000 */ nop +/* 049028 80048428 11400002 */ beqz $t2, .L80048434 +/* 04902C 8004842C 00000000 */ nop +/* 049030 80048430 24080001 */ li $t0, 1 +.L80048434: +/* 049034 80048434 A20801D2 */ sb $t0, 0x1d2($s0) +/* 049038 80048438 C7A8012C */ lwc1 $f8, 0x12c($sp) +/* 04903C 8004843C 44812000 */ mtc1 $at, $f4 +/* 049040 80048440 C7AA00E8 */ lwc1 $f10, 0xe8($sp) +/* 049044 80048444 46082083 */ div.s $f2, $f4, $f8 +/* 049048 80048448 C7A60110 */ lwc1 $f6, 0x110($sp) +/* 04904C 8004844C C628000C */ lwc1 $f8, 0xc($s1) +/* 049050 80048450 460A3100 */ add.s $f4, $f6, $f10 +/* 049054 80048454 3C018012 */ lui $at, %hi(D_8011D548) # $at, 0x8012 +/* 049058 80048458 C42AD548 */ lwc1 $f10, %lo(D_8011D548)($at) +/* 04905C 8004845C 46044181 */ sub.s $f6, $f8, $f4 +/* 049060 80048460 C7A40108 */ lwc1 $f4, 0x108($sp) +/* 049064 80048464 3C018012 */ lui $at, %hi(D_8011D54C) # $at, 0x8012 +/* 049068 80048468 3C03800E */ lui $v1, %hi(D_800DCB98) # $v1, 0x800e +/* 04906C 8004846C 2463CB98 */ addiu $v1, %lo(D_800DCB98) # addiu $v1, $v1, -0x3468 +/* 049070 80048470 460A3201 */ sub.s $f8, $f6, $f10 +/* 049074 80048474 C7A600E4 */ lwc1 $f6, 0xe4($sp) +/* 049078 80048478 46024402 */ mul.s $f16, $f8, $f2 +/* 04907C 8004847C C6280014 */ lwc1 $f8, 0x14($s1) +/* 049080 80048480 46062280 */ add.s $f10, $f4, $f6 +/* 049084 80048484 C426D54C */ lwc1 $f6, %lo(D_8011D54C)($at) +/* 049088 80048488 460A4101 */ sub.s $f4, $f8, $f10 +/* 04908C 8004848C E630001C */ swc1 $f16, 0x1c($s1) +/* 049090 80048490 46062201 */ sub.s $f8, $f4, $f6 +/* 049094 80048494 C62A0010 */ lwc1 $f10, 0x10($s1) +/* 049098 80048498 46024302 */ mul.s $f12, $f8, $f2 +/* 04909C 8004849C 3C01800E */ lui $at, %hi(D_800E6460) # $at, 0x800e +/* 0490A0 800484A0 E62C0024 */ swc1 $f12, 0x24($s1) +/* 0490A4 800484A4 C7A4010C */ lwc1 $f4, 0x10c($sp) +/* 0490A8 800484A8 00000000 */ nop +/* 0490AC 800484AC 46045181 */ sub.s $f6, $f10, $f4 +/* 0490B0 800484B0 46023202 */ mul.s $f8, $f6, $f2 +/* 0490B4 800484B4 E6280020 */ swc1 $f8, 0x20($s1) +/* 0490B8 800484B8 C60A0008 */ lwc1 $f10, 8($s0) +/* 0490BC 800484BC C604002C */ lwc1 $f4, 0x2c($s0) +/* 0490C0 800484C0 C4286464 */ lwc1 $f8, %lo(D_800E6464)($at) +/* 0490C4 800484C4 C4296460 */ lwc1 $f9, %lo(D_800E6460)($at) +/* 0490C8 800484C8 46005021 */ cvt.d.s $f0, $f10 +/* 0490CC 800484CC 460021A1 */ cvt.d.s $f6, $f4 +/* 0490D0 800484D0 46283282 */ mul.d $f10, $f6, $f8 +/* 0490D4 800484D4 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 0490D8 800484D8 44813800 */ mtc1 $at, $f7 +/* 0490DC 800484DC 44803000 */ mtc1 $zero, $f6 +/* 0490E0 800484E0 462A0100 */ add.d $f4, $f0, $f10 +/* 0490E4 800484E4 46262202 */ mul.d $f8, $f4, $f6 +/* 0490E8 800484E8 44803000 */ mtc1 $zero, $f6 +/* 0490EC 800484EC 44803800 */ mtc1 $zero, $f7 +/* 0490F0 800484F0 46280281 */ sub.d $f10, $f0, $f8 +/* 0490F4 800484F4 C60800C0 */ lwc1 $f8, 0xc0($s0) +/* 0490F8 800484F8 46205120 */ cvt.s.d $f4, $f10 +/* 0490FC 800484FC 460042A1 */ cvt.d.s $f10, $f8 +/* 049100 80048500 462A303C */ c.lt.d $f6, $f10 +/* 049104 80048504 E6040008 */ swc1 $f4, 8($s0) +/* 049108 80048508 45000010 */ bc1f .L8004854C +/* 04910C 8004850C 00000000 */ nop +/* 049110 80048510 820C01FB */ lb $t4, 0x1fb($s0) +/* 049114 80048514 3C014010 */ li $at, 0x40100000 # 2.250000 +/* 049118 80048518 1580000C */ bnez $t4, .L8004854C +/* 04911C 8004851C 00000000 */ nop +/* 049120 80048520 C6280020 */ lwc1 $f8, 0x20($s1) +/* 049124 80048524 44812800 */ mtc1 $at, $f5 +/* 049128 80048528 44802000 */ mtc1 $zero, $f4 +/* 04912C 8004852C 460041A1 */ cvt.d.s $f6, $f8 +/* 049130 80048530 4626203C */ c.lt.d $f4, $f6 +/* 049134 80048534 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 049138 80048538 45000004 */ bc1f .L8004854C +/* 04913C 8004853C 00000000 */ nop +/* 049140 80048540 44815000 */ mtc1 $at, $f10 +/* 049144 80048544 00000000 */ nop +/* 049148 80048548 E62A0020 */ swc1 $f10, 0x20($s1) +.L8004854C: +/* 04914C 8004854C 8C6B0000 */ lw $t3, ($v1) +/* 049150 80048550 00000000 */ nop +/* 049154 80048554 29610002 */ slti $at, $t3, 2 +/* 049158 80048558 10200026 */ beqz $at, .L800485F4 +/* 04915C 8004855C 00000000 */ nop +/* 049160 80048560 8E2E0040 */ lw $t6, 0x40($s1) +/* 049164 80048564 3C188012 */ lui $t8, %hi(D_8011D528) # $t8, 0x8012 +/* 049168 80048568 81CF0057 */ lb $t7, 0x57($t6) +/* 04916C 8004856C 00000000 */ nop +/* 049170 80048570 29E10009 */ slti $at, $t7, 9 +/* 049174 80048574 1420001F */ bnez $at, .L800485F4 +/* 049178 80048578 00000000 */ nop +/* 04917C 8004857C 8F18D528 */ lw $t8, %lo(D_8011D528)($t8) +/* 049180 80048580 34018010 */ li $at, 32784 +/* 049184 80048584 330D8010 */ andi $t5, $t8, 0x8010 +/* 049188 80048588 15A10011 */ bne $t5, $at, .L800485D0 +/* 04918C 8004858C 3C028012 */ lui $v0, %hi(D_8011D534) # $v0, 0x8012 +/* 049190 80048590 8C42D534 */ lw $v0, %lo(D_8011D534)($v0) +/* 049194 80048594 02202025 */ move $a0, $s1 +/* 049198 80048598 2841FFE2 */ slti $at, $v0, -0x1e +/* 04919C 8004859C 14200004 */ bnez $at, .L800485B0 +/* 0491A0 800485A0 24050008 */ li $a1, 8 +/* 0491A4 800485A4 2841001F */ slti $at, $v0, 0x1f +/* 0491A8 800485A8 1420000A */ bnez $at, .L800485D4 +/* 0491AC 800485AC 8FA60128 */ lw $a2, 0x128($sp) +.L800485B0: +/* 0491B0 800485B0 8FA60128 */ lw $a2, 0x128($sp) +/* 0491B4 800485B4 24070080 */ li $a3, 128 +/* 0491B8 800485B8 0006CA80 */ sll $t9, $a2, 0xa +/* 0491BC 800485BC 0C02D19A */ jal func_800B4668 +/* 0491C0 800485C0 03203025 */ move $a2, $t9 +/* 0491C4 800485C4 3C03800E */ lui $v1, %hi(D_800DCB98) # $v1, 0x800e +/* 0491C8 800485C8 1000000A */ b .L800485F4 +/* 0491CC 800485CC 2463CB98 */ addiu $v1, %lo(D_800DCB98) # addiu $v1, $v1, -0x3468 +.L800485D0: +/* 0491D0 800485D0 8FA60128 */ lw $a2, 0x128($sp) +.L800485D4: +/* 0491D4 800485D4 02202025 */ move $a0, $s1 +/* 0491D8 800485D8 00065240 */ sll $t2, $a2, 9 +/* 0491DC 800485DC 01403025 */ move $a2, $t2 +/* 0491E0 800485E0 24050008 */ li $a1, 8 +/* 0491E4 800485E4 0C02D1AF */ jal func_800B46BC +/* 0491E8 800485E8 24070020 */ li $a3, 32 +/* 0491EC 800485EC 3C03800E */ lui $v1, %hi(D_800DCB98) # $v1, 0x800e +/* 0491F0 800485F0 2463CB98 */ addiu $v1, %lo(D_800DCB98) # addiu $v1, $v1, -0x3468 +.L800485F4: +/* 0491F4 800485F4 3C028012 */ lui $v0, %hi(D_8011D55C) # $v0, 0x8012 +/* 0491F8 800485F8 8C42D55C */ lw $v0, %lo(D_8011D55C)($v0) +/* 0491FC 800485FC 00000000 */ nop +/* 049200 80048600 04400057 */ bltz $v0, .L80048760 +/* 049204 80048604 2401FFFF */ li $at, -1 +/* 049208 80048608 C60400C0 */ lwc1 $f4, 0xc0($s0) +/* 04920C 8004860C 44804800 */ mtc1 $zero, $f9 +/* 049210 80048610 44804000 */ mtc1 $zero, $f8 +/* 049214 80048614 460021A1 */ cvt.d.s $f6, $f4 +/* 049218 80048618 4626403C */ c.lt.d $f8, $f6 +/* 04921C 8004861C 00000000 */ nop +/* 049220 80048620 4500004F */ bc1f .L80048760 +/* 049224 80048624 2401FFFF */ li $at, -1 +/* 049228 80048628 8C6C0000 */ lw $t4, ($v1) +/* 04922C 8004862C 00000000 */ nop +/* 049230 80048630 29810003 */ slti $at, $t4, 3 +/* 049234 80048634 10200035 */ beqz $at, .L8004870C +/* 049238 80048638 00000000 */ nop +/* 04923C 8004863C C620001C */ lwc1 $f0, 0x1c($s1) +/* 049240 80048640 C62C0020 */ lwc1 $f12, 0x20($s1) +/* 049244 80048644 46000282 */ mul.s $f10, $f0, $f0 +/* 049248 80048648 C62E0024 */ lwc1 $f14, 0x24($s1) +/* 04924C 8004864C 3C014180 */ li $at, 0x41800000 # 16.000000 +/* 049250 80048650 3C028012 */ lui $v0, %hi(D_8011D55C) # $v0, 0x8012 +/* 049254 80048654 460C6102 */ mul.s $f4, $f12, $f12 +/* 049258 80048658 00000000 */ nop +/* 04925C 8004865C 460E7182 */ mul.s $f6, $f14, $f14 +/* 049260 80048660 46045200 */ add.s $f8, $f10, $f4 +/* 049264 80048664 44815000 */ mtc1 $at, $f10 +/* 049268 80048668 3C0142A0 */ li $at, 0x42A00000 # 80.000000 +/* 04926C 8004866C 46064080 */ add.s $f2, $f8, $f6 +/* 049270 80048670 4602503C */ c.lt.s $f10, $f2 +/* 049274 80048674 00000000 */ nop +/* 049278 80048678 45000021 */ bc1f .L80048700 +/* 04927C 8004867C 00000000 */ nop +/* 049280 80048680 44812000 */ mtc1 $at, $f4 +/* 049284 80048684 3C0141E0 */ li $at, 0x41E00000 # 28.000000 +/* 049288 80048688 4604103C */ c.lt.s $f2, $f4 +/* 04928C 8004868C 44814000 */ mtc1 $at, $f8 +/* 049290 80048690 45000005 */ bc1f .L800486A8 +/* 049294 80048694 00000000 */ nop +/* 049298 80048698 8E2B0074 */ lw $t3, 0x74($s1) +/* 04929C 8004869C 00000000 */ nop +/* 0492A0 800486A0 356E000C */ ori $t6, $t3, 0xc +/* 0492A4 800486A4 AE2E0074 */ sw $t6, 0x74($s1) +.L800486A8: +/* 0492A8 800486A8 4602403C */ c.lt.s $f8, $f2 +/* 0492AC 800486AC 00000000 */ nop +/* 0492B0 800486B0 45000005 */ bc1f .L800486C8 +/* 0492B4 800486B4 00000000 */ nop +/* 0492B8 800486B8 8E2F0074 */ lw $t7, 0x74($s1) +/* 0492BC 800486BC 00000000 */ nop +/* 0492C0 800486C0 35F80003 */ ori $t8, $t7, 3 +/* 0492C4 800486C4 AE380074 */ sw $t8, 0x74($s1) +.L800486C8: +/* 0492C8 800486C8 8C6D0000 */ lw $t5, ($v1) +/* 0492CC 800486CC 24010001 */ li $at, 1 +/* 0492D0 800486D0 15A1000B */ bne $t5, $at, .L80048700 +/* 0492D4 800486D4 3C014124 */ li $at, 0x41240000 # 10.250000 +/* 0492D8 800486D8 44813000 */ mtc1 $at, $f6 +/* 0492DC 800486DC 00000000 */ nop +/* 0492E0 800486E0 4602303C */ c.lt.s $f6, $f2 +/* 0492E4 800486E4 00000000 */ nop +/* 0492E8 800486E8 45000005 */ bc1f .L80048700 +/* 0492EC 800486EC 00000000 */ nop +/* 0492F0 800486F0 8E390074 */ lw $t9, 0x74($s1) +/* 0492F4 800486F4 00000000 */ nop +/* 0492F8 800486F8 372A0040 */ ori $t2, $t9, 0x40 +/* 0492FC 800486FC AE2A0074 */ sw $t2, 0x74($s1) +.L80048700: +/* 049300 80048700 8C42D55C */ lw $v0, %lo(D_8011D55C)($v0) +/* 049304 80048704 10000016 */ b .L80048760 +/* 049308 80048708 2401FFFF */ li $at, -1 +.L8004870C: +/* 04930C 8004870C C60E002C */ lwc1 $f14, 0x2c($s0) +/* 049310 80048710 44805000 */ mtc1 $zero, $f10 +/* 049314 80048714 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 049318 80048718 460A703C */ c.lt.s $f14, $f10 +/* 04931C 8004871C 44812000 */ mtc1 $at, $f4 +/* 049320 80048720 45000003 */ bc1f .L80048730 +/* 049324 80048724 00000000 */ nop +/* 049328 80048728 10000002 */ b .L80048734 +/* 04932C 8004872C 46007087 */ neg.s $f2, $f14 +.L80048730: +/* 049330 80048730 46007086 */ mov.s $f2, $f14 +.L80048734: +/* 049334 80048734 4602203C */ c.lt.s $f4, $f2 +/* 049338 80048738 00000000 */ nop +/* 04933C 8004873C 45000008 */ bc1f .L80048760 +/* 049340 80048740 2401FFFF */ li $at, -1 +/* 049344 80048744 8E2C0074 */ lw $t4, 0x74($s1) +/* 049348 80048748 3C028012 */ lui $v0, %hi(D_8011D55C) # $v0, 0x8012 +/* 04934C 8004874C 358B000C */ ori $t3, $t4, 0xc +/* 049350 80048750 AE2B0074 */ sw $t3, 0x74($s1) +/* 049354 80048754 8C42D55C */ lw $v0, %lo(D_8011D55C)($v0) +/* 049358 80048758 00000000 */ nop +/* 04935C 8004875C 2401FFFF */ li $at, -1 +.L80048760: +/* 049360 80048760 10410046 */ beq $v0, $at, .L8004887C +/* 049364 80048764 00000000 */ nop +/* 049368 80048768 820E01D3 */ lb $t6, 0x1d3($s0) +/* 04936C 8004876C 00000000 */ nop +/* 049370 80048770 15C00042 */ bnez $t6, .L8004887C +/* 049374 80048774 00000000 */ nop +/* 049378 80048778 8C6F0000 */ lw $t7, ($v1) +/* 04937C 8004877C 00000000 */ nop +/* 049380 80048780 29E10002 */ slti $at, $t7, 2 +/* 049384 80048784 1020003D */ beqz $at, .L8004887C +/* 049388 80048788 00000000 */ nop +/* 04938C 8004878C 0C0078A7 */ jal func_8001E29C +/* 049390 80048790 24040014 */ li $a0, 20 +/* 049394 80048794 82080203 */ lb $t0, 0x203($s0) +/* 049398 80048798 82180002 */ lb $t8, 2($s0) +/* 04939C 8004879C 31190004 */ andi $t9, $t0, 4 +/* 0493A0 800487A0 00195083 */ sra $t2, $t9, 2 +/* 0493A4 800487A4 2548000A */ addiu $t0, $t2, 0xa +/* 0493A8 800487A8 2901000B */ slti $at, $t0, 0xb +/* 0493AC 800487AC 001869C0 */ sll $t5, $t8, 7 +/* 0493B0 800487B0 14200012 */ bnez $at, .L800487FC +/* 0493B4 800487B4 01A21821 */ addu $v1, $t5, $v0 +/* 0493B8 800487B8 906C0070 */ lbu $t4, 0x70($v1) +/* 0493BC 800487BC 240E0001 */ li $t6, 1 +/* 0493C0 800487C0 1D800009 */ bgtz $t4, .L800487E8 +/* 0493C4 800487C4 00000000 */ nop +/* 0493C8 800487C8 C4660074 */ lwc1 $f6, 0x74($v1) +/* 0493CC 800487CC 44804800 */ mtc1 $zero, $f9 +/* 0493D0 800487D0 44804000 */ mtc1 $zero, $f8 +/* 0493D4 800487D4 460032A1 */ cvt.d.s $f10, $f6 +/* 0493D8 800487D8 462A403C */ c.lt.d $f8, $f10 +/* 0493DC 800487DC 00000000 */ nop +/* 0493E0 800487E0 45000026 */ bc1f .L8004887C +/* 0493E4 800487E4 00000000 */ nop +.L800487E8: +/* 0493E8 800487E8 8E2B0074 */ lw $t3, 0x74($s1) +/* 0493EC 800487EC 010E7804 */ sllv $t7, $t6, $t0 +/* 0493F0 800487F0 016FC025 */ or $t8, $t3, $t7 +/* 0493F4 800487F4 10000021 */ b .L8004887C +/* 0493F8 800487F8 AE380074 */ sw $t8, 0x74($s1) +.L800487FC: +/* 0493FC 800487FC 90620070 */ lbu $v0, 0x70($v1) +/* 049400 80048800 24010002 */ li $at, 2 +/* 049404 80048804 14410010 */ bne $v0, $at, .L80048848 +/* 049408 80048808 28410002 */ slti $at, $v0, 2 +/* 04940C 8004880C C4640074 */ lwc1 $f4, 0x74($v1) +/* 049410 80048810 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 049414 80048814 44814800 */ mtc1 $at, $f9 +/* 049418 80048818 44804000 */ mtc1 $zero, $f8 +/* 04941C 8004881C 460021A1 */ cvt.d.s $f6, $f4 +/* 049420 80048820 4628303C */ c.lt.d $f6, $f8 +/* 049424 80048824 24190001 */ li $t9, 1 +/* 049428 80048828 45000007 */ bc1f .L80048848 +/* 04942C 8004882C 28410002 */ slti $at, $v0, 2 +/* 049430 80048830 8E2D0074 */ lw $t5, 0x74($s1) +/* 049434 80048834 01195004 */ sllv $t2, $t9, $t0 +/* 049438 80048838 01AA6025 */ or $t4, $t5, $t2 +/* 04943C 8004883C 1000000F */ b .L8004887C +/* 049440 80048840 AE2C0074 */ sw $t4, 0x74($s1) +/* 049444 80048844 28410002 */ slti $at, $v0, 2 +.L80048848: +/* 049448 80048848 1020000C */ beqz $at, .L8004887C +/* 04944C 8004884C 00000000 */ nop +/* 049450 80048850 44805000 */ mtc1 $zero, $f10 +/* 049454 80048854 C4640074 */ lwc1 $f4, 0x74($v1) +/* 049458 80048858 240B0001 */ li $t3, 1 +/* 04945C 8004885C 4604503C */ c.lt.s $f10, $f4 +/* 049460 80048860 00000000 */ nop +/* 049464 80048864 45000005 */ bc1f .L8004887C +/* 049468 80048868 00000000 */ nop +/* 04946C 8004886C 8E2E0074 */ lw $t6, 0x74($s1) +/* 049470 80048870 010B7804 */ sllv $t7, $t3, $t0 +/* 049474 80048874 01CFC025 */ or $t8, $t6, $t7 +/* 049478 80048878 AE380074 */ sw $t8, 0x74($s1) +.L8004887C: +/* 04947C 8004887C 82190201 */ lb $t9, 0x201($s0) +/* 049480 80048880 00000000 */ nop +/* 049484 80048884 17200004 */ bnez $t9, .L80048898 +/* 049488 80048888 8FAD0128 */ lw $t5, 0x128($sp) +/* 04948C 8004888C 10000015 */ b .L800488E4 +/* 049490 80048890 AE200074 */ sw $zero, 0x74($s1) +/* 049494 80048894 8FAD0128 */ lw $t5, 0x128($sp) +.L80048898: +/* 049498 80048898 3C018012 */ lui $at, %hi(D_8011D56C) # $at, 0x8012 +/* 04949C 8004889C 448D3000 */ mtc1 $t5, $f6 +/* 0494A0 800488A0 C42AD56C */ lwc1 $f10, %lo(D_8011D56C)($at) +/* 0494A4 800488A4 46803020 */ cvt.s.w $f0, $f6 +/* 0494A8 800488A8 C6280020 */ lwc1 $f8, 0x20($s1) +/* 0494AC 800488AC 02202025 */ move $a0, $s1 +/* 0494B0 800488B0 460A0102 */ mul.s $f4, $f0, $f10 +/* 0494B4 800488B4 46044180 */ add.s $f6, $f8, $f4 +/* 0494B8 800488B8 E6260020 */ swc1 $f6, 0x20($s1) +/* 0494BC 800488BC 8FA50128 */ lw $a1, 0x128($sp) +/* 0494C0 800488C0 0C02BDC5 */ jal func_800AF714 +/* 0494C4 800488C4 E7A0004C */ swc1 $f0, 0x4c($sp) +/* 0494C8 800488C8 3C018012 */ lui $at, %hi(D_8011D56C) # $at, 0x8012 +/* 0494CC 800488CC C7A0004C */ lwc1 $f0, 0x4c($sp) +/* 0494D0 800488D0 C428D56C */ lwc1 $f8, %lo(D_8011D56C)($at) +/* 0494D4 800488D4 C62A0020 */ lwc1 $f10, 0x20($s1) +/* 0494D8 800488D8 46080102 */ mul.s $f4, $f0, $f8 +/* 0494DC 800488DC 46045181 */ sub.s $f6, $f10, $f4 +/* 0494E0 800488E0 E6260020 */ swc1 $f6, 0x20($s1) +.L800488E4: +/* 0494E4 800488E4 862A0000 */ lh $t2, ($s1) +/* 0494E8 800488E8 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 +/* 0494EC 800488EC 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 +/* 0494F0 800488F0 000A6023 */ negu $t4, $t2 +/* 0494F4 800488F4 A4AC0000 */ sh $t4, ($a1) +/* 0494F8 800488F8 862B0002 */ lh $t3, 2($s1) +/* 0494FC 800488FC 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 049500 80048900 000B7023 */ negu $t6, $t3 +/* 049504 80048904 A4AE0002 */ sh $t6, 2($a1) +/* 049508 80048908 862F0004 */ lh $t7, 4($s1) +/* 04950C 8004890C 44814000 */ mtc1 $at, $f8 +/* 049510 80048910 44805000 */ mtc1 $zero, $f10 +/* 049514 80048914 44802000 */ mtc1 $zero, $f4 +/* 049518 80048918 44803000 */ mtc1 $zero, $f6 +/* 04951C 8004891C 000FC023 */ negu $t8, $t7 +/* 049520 80048920 A4B80004 */ sh $t8, 4($a1) +/* 049524 80048924 27A40068 */ addiu $a0, $sp, 0x68 +/* 049528 80048928 E4A80008 */ swc1 $f8, 8($a1) +/* 04952C 8004892C E4AA000C */ swc1 $f10, 0xc($a1) +/* 049530 80048930 E4A40010 */ swc1 $f4, 0x10($a1) +/* 049534 80048934 0C01BF9D */ jal func_8006FE74 +/* 049538 80048938 E4A60014 */ swc1 $f6, 0x14($a1) +/* 04953C 8004893C 8E25001C */ lw $a1, 0x1c($s1) +/* 049540 80048940 8E260020 */ lw $a2, 0x20($s1) +/* 049544 80048944 8E270024 */ lw $a3, 0x24($s1) +/* 049548 80048948 26190030 */ addiu $t9, $s0, 0x30 +/* 04954C 8004894C 260D0034 */ addiu $t5, $s0, 0x34 +/* 049550 80048950 260A002C */ addiu $t2, $s0, 0x2c +/* 049554 80048954 AFAA0018 */ sw $t2, 0x18($sp) +/* 049558 80048958 AFAD0014 */ sw $t5, 0x14($sp) +/* 04955C 8004895C AFB90010 */ sw $t9, 0x10($sp) +/* 049560 80048960 0C01BD93 */ jal func_8006F64C +/* 049564 80048964 27A40068 */ addiu $a0, $sp, 0x68 +/* 049568 80048968 820C01E2 */ lb $t4, 0x1e2($s0) +/* 04956C 8004896C 44804000 */ mtc1 $zero, $f8 +/* 049570 80048970 1580002B */ bnez $t4, .L80048A20 +/* 049574 80048974 24060004 */ li $a2, 4 +/* 049578 80048978 820B01E5 */ lb $t3, 0x1e5($s0) +/* 04957C 8004897C 3C088012 */ lui $t0, %hi(D_8011D538) # $t0, 0x8012 +/* 049580 80048980 15600027 */ bnez $t3, .L80048A20 +/* 049584 80048984 34018001 */ li $at, 32769 +/* 049588 80048988 8D08D538 */ lw $t0, %lo(D_8011D538)($t0) +/* 04958C 8004898C 86240002 */ lh $a0, 2($s1) +/* 049590 80048990 00084023 */ negu $t0, $t0 +/* 049594 80048994 00087180 */ sll $t6, $t0, 6 +/* 049598 80048998 31CFFFFF */ andi $t7, $t6, 0xffff +/* 04959C 8004899C 3098FFFF */ andi $t8, $a0, 0xffff +/* 0495A0 800489A0 01F81823 */ subu $v1, $t7, $t8 +/* 0495A4 800489A4 0061082A */ slt $at, $v1, $at +/* 0495A8 800489A8 14200003 */ bnez $at, .L800489B8 +/* 0495AC 800489AC 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 0495B0 800489B0 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 0495B4 800489B4 00611821 */ addu $v1, $v1, $at +.L800489B8: +/* 0495B8 800489B8 28618000 */ slti $at, $v1, -0x8000 +/* 0495BC 800489BC 10200002 */ beqz $at, .L800489C8 +/* 0495C0 800489C0 3401FFFF */ li $at, 65535 +/* 0495C4 800489C4 00611821 */ addu $v1, $v1, $at +.L800489C8: +/* 0495C8 800489C8 0003C883 */ sra $t9, $v1, 2 +/* 0495CC 800489CC 00996821 */ addu $t5, $a0, $t9 +/* 0495D0 800489D0 A62D0002 */ sh $t5, 2($s1) +/* 0495D4 800489D4 860501A4 */ lh $a1, 0x1a4($s0) +/* 0495D8 800489D8 34018001 */ li $at, 32769 +/* 0495DC 800489DC 30A2FFFF */ andi $v0, $a1, 0xffff +/* 0495E0 800489E0 00021023 */ negu $v0, $v0 +/* 0495E4 800489E4 0041082A */ slt $at, $v0, $at +/* 0495E8 800489E8 8FAA0128 */ lw $t2, 0x128($sp) +/* 0495EC 800489EC 14200003 */ bnez $at, .L800489FC +/* 0495F0 800489F0 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 0495F4 800489F4 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 0495F8 800489F8 00411021 */ addu $v0, $v0, $at +.L800489FC: +/* 0495FC 800489FC 28418000 */ slti $at, $v0, -0x8000 +/* 049600 80048A00 10200002 */ beqz $at, .L80048A0C +/* 049604 80048A04 3401FFFF */ li $at, 65535 +/* 049608 80048A08 00411021 */ addu $v0, $v0, $at +.L80048A0C: +/* 04960C 80048A0C 004A0019 */ multu $v0, $t2 +/* 049610 80048A10 00001012 */ mflo $v0 +/* 049614 80048A14 00026103 */ sra $t4, $v0, 4 +/* 049618 80048A18 00AC5821 */ addu $t3, $a1, $t4 +/* 04961C 80048A1C A60B01A4 */ sh $t3, 0x1a4($s0) +.L80048A20: +/* 049620 80048A20 3C0E8012 */ lui $t6, %hi(D_8011D540) # $t6, 0x8012 +/* 049624 80048A24 8DCED540 */ lw $t6, %lo(D_8011D540)($t6) +/* 049628 80048A28 3C0D8012 */ lui $t5, %hi(D_8011D52C) # $t5, 0x8012 +/* 04962C 80048A2C 11C00007 */ beqz $t6, .L80048A4C +/* 049630 80048A30 02202025 */ move $a0, $s1 +/* 049634 80048A34 3C0F8012 */ lui $t7, %hi(D_8011D52C) # $t7, 0x8012 +/* 049638 80048A38 8DEFD52C */ lw $t7, %lo(D_8011D52C)($t7) +/* 04963C 80048A3C 2401FFEF */ li $at, -17 +/* 049640 80048A40 01E1C024 */ and $t8, $t7, $at +/* 049644 80048A44 3C018012 */ lui $at, %hi(D_8011D52C) # $at, 0x8012 +/* 049648 80048A48 AC38D52C */ sw $t8, %lo(D_8011D52C)($at) +.L80048A4C: +/* 04964C 80048A4C C60A00C0 */ lwc1 $f10, 0xc0($s0) +/* 049650 80048A50 00000000 */ nop +/* 049654 80048A54 460A4032 */ c.eq.s $f8, $f10 +/* 049658 80048A58 00000000 */ nop +/* 04965C 80048A5C 45000005 */ bc1f .L80048A74 +/* 049660 80048A60 00000000 */ nop +/* 049664 80048A64 821901E2 */ lb $t9, 0x1e2($s0) +/* 049668 80048A68 24010004 */ li $at, 4 +/* 04966C 80048A6C 17210002 */ bne $t9, $at, .L80048A78 +/* 049670 80048A70 00000000 */ nop +.L80048A74: +/* 049674 80048A74 A20001FB */ sb $zero, 0x1fb($s0) +.L80048A78: +/* 049678 80048A78 8DADD52C */ lw $t5, %lo(D_8011D52C)($t5) +/* 04967C 80048A7C 00000000 */ nop +/* 049680 80048A80 31AA0010 */ andi $t2, $t5, 0x10 +/* 049684 80048A84 1140004A */ beqz $t2, .L80048BB0 +/* 049688 80048A88 00000000 */ nop +/* 04968C 80048A8C C60C00C0 */ lwc1 $f12, 0xc0($s0) +/* 049690 80048A90 44802000 */ mtc1 $zero, $f4 +/* 049694 80048A94 00000000 */ nop +/* 049698 80048A98 460C203C */ c.lt.s $f4, $f12 +/* 04969C 80048A9C 00000000 */ nop +/* 0496A0 80048AA0 45010006 */ bc1t .L80048ABC +/* 0496A4 80048AA4 00000000 */ nop +/* 0496A8 80048AA8 820C01E2 */ lb $t4, 0x1e2($s0) +/* 0496AC 80048AAC 00000000 */ nop +/* 0496B0 80048AB0 29810002 */ slti $at, $t4, 2 +/* 0496B4 80048AB4 1420003E */ bnez $at, .L80048BB0 +/* 0496B8 80048AB8 00000000 */ nop +.L80048ABC: +/* 0496BC 80048ABC 820B01FB */ lb $t3, 0x1fb($s0) +/* 0496C0 80048AC0 00000000 */ nop +/* 0496C4 80048AC4 1560003A */ bnez $t3, .L80048BB0 +/* 0496C8 80048AC8 00000000 */ nop +/* 0496CC 80048ACC 44803000 */ mtc1 $zero, $f6 +/* 0496D0 80048AD0 3C01400C */ li $at, 0x400C0000 # 2.187500 +/* 0496D4 80048AD4 460C3032 */ c.eq.s $f6, $f12 +/* 0496D8 80048AD8 00000000 */ nop +/* 0496DC 80048ADC 45010018 */ bc1t .L80048B40 +/* 0496E0 80048AE0 00000000 */ nop +/* 0496E4 80048AE4 C6280020 */ lwc1 $f8, 0x20($s1) +/* 0496E8 80048AE8 3C014012 */ li $at, 0x40120000 # 2.281250 +/* 0496EC 80048AEC 44812800 */ mtc1 $at, $f5 +/* 0496F0 80048AF0 44802000 */ mtc1 $zero, $f4 +/* 0496F4 80048AF4 460042A1 */ cvt.d.s $f10, $f8 +/* 0496F8 80048AF8 46245180 */ add.d $f6, $f10, $f4 +/* 0496FC 80048AFC 3C014016 */ li $at, 0x40160000 # 2.343750 +/* 049700 80048B00 46203220 */ cvt.s.d $f8, $f6 +/* 049704 80048B04 44812800 */ mtc1 $at, $f5 +/* 049708 80048B08 E6280020 */ swc1 $f8, 0x20($s1) +/* 04970C 80048B0C C62A0020 */ lwc1 $f10, 0x20($s1) +/* 049710 80048B10 44802000 */ mtc1 $zero, $f4 +/* 049714 80048B14 46005021 */ cvt.d.s $f0, $f10 +/* 049718 80048B18 4620203C */ c.lt.d $f4, $f0 +/* 04971C 80048B1C 3C0140B0 */ li $at, 0x40B00000 # 5.500000 +/* 049720 80048B20 45000011 */ bc1f .L80048B68 +/* 049724 80048B24 00000000 */ nop +/* 049728 80048B28 44813000 */ mtc1 $at, $f6 +/* 04972C 80048B2C 00000000 */ nop +/* 049730 80048B30 E6260020 */ swc1 $f6, 0x20($s1) +/* 049734 80048B34 C6280020 */ lwc1 $f8, 0x20($s1) +/* 049738 80048B38 1000000B */ b .L80048B68 +/* 04973C 80048B3C 46004021 */ cvt.d.s $f0, $f8 +.L80048B40: +/* 049740 80048B40 C62A0020 */ lwc1 $f10, 0x20($s1) +/* 049744 80048B44 44813800 */ mtc1 $at, $f7 +/* 049748 80048B48 44803000 */ mtc1 $zero, $f6 +/* 04974C 80048B4C 46005121 */ cvt.d.s $f4, $f10 +/* 049750 80048B50 46262200 */ add.d $f8, $f4, $f6 +/* 049754 80048B54 462042A0 */ cvt.s.d $f10, $f8 +/* 049758 80048B58 E62A0020 */ swc1 $f10, 0x20($s1) +/* 04975C 80048B5C C6240020 */ lwc1 $f4, 0x20($s1) +/* 049760 80048B60 00000000 */ nop +/* 049764 80048B64 46002021 */ cvt.d.s $f0, $f4 +.L80048B68: +/* 049768 80048B68 3C018012 */ lui $at, %hi(D_8011D56C) # $at, 0x8012 +/* 04976C 80048B6C C428D56C */ lwc1 $f8, %lo(D_8011D56C)($at) +/* 049770 80048B70 46200180 */ add.d $f6, $f0, $f0 +/* 049774 80048B74 460042A1 */ cvt.d.s $f10, $f8 +/* 049778 80048B78 00000000 */ nop +/* 04977C 80048B7C 462A3103 */ div.d $f4, $f6, $f10 +/* 049780 80048B80 462020A0 */ cvt.s.d $f2, $f4 +/* 049784 80048B84 444EF800 */ cfc1 $t6, $31 +/* 049788 80048B88 00000000 */ nop +/* 04978C 80048B8C 35C10003 */ ori $at, $t6, 3 +/* 049790 80048B90 38210002 */ xori $at, $at, 2 +/* 049794 80048B94 44C1F800 */ ctc1 $at, $31 +/* 049798 80048B98 00000000 */ nop +/* 04979C 80048B9C 46001224 */ cvt.w.s $f8, $f2 +/* 0497A0 80048BA0 440F4000 */ mfc1 $t7, $f8 +/* 0497A4 80048BA4 44CEF800 */ ctc1 $t6, $31 +/* 0497A8 80048BA8 25F80001 */ addiu $t8, $t7, 1 +/* 0497AC 80048BAC A21801FB */ sb $t8, 0x1fb($s0) +.L80048BB0: +/* 0497B0 80048BB0 820201FB */ lb $v0, 0x1fb($s0) +/* 0497B4 80048BB4 8FB90128 */ lw $t9, 0x128($sp) +/* 0497B8 80048BB8 18400004 */ blez $v0, .L80048BCC +/* 0497BC 80048BBC 3C014220 */ li $at, 0x42200000 # 40.000000 +/* 0497C0 80048BC0 00596823 */ subu $t5, $v0, $t9 +/* 0497C4 80048BC4 10000002 */ b .L80048BD0 +/* 0497C8 80048BC8 A20D01FB */ sb $t5, 0x1fb($s0) +.L80048BCC: +/* 0497CC 80048BCC A20001FB */ sb $zero, 0x1fb($s0) +.L80048BD0: +/* 0497D0 80048BD0 44813000 */ mtc1 $at, $f6 +/* 0497D4 80048BD4 C7AA0118 */ lwc1 $f10, 0x118($sp) +/* 0497D8 80048BD8 3C01800E */ lui $at, %hi(D_800E6468) # $at, 0x800e +/* 0497DC 80048BDC 460A303C */ c.lt.s $f6, $f10 +/* 0497E0 80048BE0 3C0C8012 */ lui $t4, %hi(D_8011D534) # $t4, 0x8012 +/* 0497E4 80048BE4 45000004 */ bc1f .L80048BF8 +/* 0497E8 80048BE8 00000000 */ nop +/* 0497EC 80048BEC C4246468 */ lwc1 $f4, %lo(D_800E6468)($at) +/* 0497F0 80048BF0 00000000 */ nop +/* 0497F4 80048BF4 E60400C4 */ swc1 $f4, 0xc4($s0) +.L80048BF8: +/* 0497F8 80048BF8 8E230060 */ lw $v1, 0x60($s1) +/* 0497FC 80048BFC 24010001 */ li $at, 1 +/* 049800 80048C00 8C6A0000 */ lw $t2, ($v1) +/* 049804 80048C04 00000000 */ nop +/* 049808 80048C08 1541000F */ bne $t2, $at, .L80048C48 +/* 04980C 80048C0C 8FA7012C */ lw $a3, 0x12c($sp) +/* 049810 80048C10 8C620004 */ lw $v0, 4($v1) +/* 049814 80048C14 8D8CD534 */ lw $t4, %lo(D_8011D534)($t4) +/* 049818 80048C18 804F003A */ lb $t7, 0x3a($v0) +/* 04981C 80048C1C 000C5880 */ sll $t3, $t4, 2 +/* 049820 80048C20 25F80001 */ addiu $t8, $t7, 1 +/* 049824 80048C24 A058003A */ sb $t8, 0x3a($v0) +/* 049828 80048C28 8059003A */ lb $t9, 0x3a($v0) +/* 04982C 80048C2C 016C5821 */ addu $t3, $t3, $t4 +/* 049830 80048C30 000B5880 */ sll $t3, $t3, 2 +/* 049834 80048C34 256E4000 */ addiu $t6, $t3, 0x4000 +/* 049838 80048C38 332D0001 */ andi $t5, $t9, 1 +/* 04983C 80048C3C A44E0000 */ sh $t6, ($v0) +/* 049840 80048C40 A04D003A */ sb $t5, 0x3a($v0) +/* 049844 80048C44 8FA7012C */ lw $a3, 0x12c($sp) +.L80048C48: +/* 049848 80048C48 0C01602D */ jal func_800580B4 +/* 04984C 80048C4C 02002825 */ move $a1, $s0 +/* 049850 80048C50 83AA0067 */ lb $t2, 0x67($sp) +/* 049854 80048C54 02202025 */ move $a0, $s1 +/* 049858 80048C58 11400004 */ beqz $t2, .L80048C6C +/* 04985C 80048C5C 8FBF002C */ lw $ra, 0x2c($sp) +/* 049860 80048C60 0C008C34 */ jal func_800230D0 +/* 049864 80048C64 02002825 */ move $a1, $s0 +/* 049868 80048C68 8FBF002C */ lw $ra, 0x2c($sp) +.L80048C6C: +/* 04986C 80048C6C 8FB00024 */ lw $s0, 0x24($sp) +/* 049870 80048C70 8FB10028 */ lw $s1, 0x28($sp) +/* 049874 80048C74 03E00008 */ jr $ra +/* 049878 80048C78 27BD0128 */ addiu $sp, $sp, 0x128 + diff --git a/asm/non_matchings/unknown_043920/func_80048C7C.s b/asm/non_matchings/unknown_043920/func_80048C7C.s new file mode 100644 index 00000000..10898d31 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80048C7C.s @@ -0,0 +1,133 @@ +glabel func_80048C7C +/* 04987C 80048C7C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 049880 80048C80 AFBF001C */ sw $ra, 0x1c($sp) +/* 049884 80048C84 AFB00018 */ sw $s0, 0x18($sp) +/* 049888 80048C88 84AE0000 */ lh $t6, ($a1) +/* 04988C 80048C8C 2401FFFF */ li $at, -1 +/* 049890 80048C90 15C10003 */ bne $t6, $at, .L80048CA0 +/* 049894 80048C94 00A08025 */ move $s0, $a1 +/* 049898 80048C98 10000003 */ b .L80048CA8 +/* 04989C 80048C9C 00001825 */ move $v1, $zero +.L80048CA0: +/* 0498A0 80048CA0 82030185 */ lb $v1, 0x185($s0) +/* 0498A4 80048CA4 00000000 */ nop +.L80048CA8: +/* 0498A8 80048CA8 82020187 */ lb $v0, 0x187($s0) +/* 0498AC 80048CAC 00000000 */ nop +/* 0498B0 80048CB0 10400005 */ beqz $v0, .L80048CC8 +/* 0498B4 80048CB4 00000000 */ nop +/* 0498B8 80048CB8 860F018E */ lh $t7, 0x18e($s0) +/* 0498BC 80048CBC 24010004 */ li $at, 4 +/* 0498C0 80048CC0 19E00003 */ blez $t7, .L80048CD0 +/* 0498C4 80048CC4 00000000 */ nop +.L80048CC8: +/* 0498C8 80048CC8 10000062 */ b .L80048E54 +/* 0498CC 80048CCC A2000187 */ sb $zero, 0x187($s0) +.L80048CD0: +/* 0498D0 80048CD0 10410008 */ beq $v0, $at, .L80048CF4 +/* 0498D4 80048CD4 02002825 */ move $a1, $s0 +/* 0498D8 80048CD8 24060002 */ li $a2, 2 +/* 0498DC 80048CDC A3A30027 */ sb $v1, 0x27($sp) +/* 0498E0 80048CE0 0C015DB8 */ jal func_800576E0 +/* 0498E4 80048CE4 AFA40028 */ sw $a0, 0x28($sp) +/* 0498E8 80048CE8 83A30027 */ lb $v1, 0x27($sp) +/* 0498EC 80048CEC 8FA40028 */ lw $a0, 0x28($sp) +/* 0498F0 80048CF0 00000000 */ nop +.L80048CF4: +/* 0498F4 80048CF4 240501C2 */ li $a1, 450 +/* 0498F8 80048CF8 24060008 */ li $a2, 8 +/* 0498FC 80048CFC 24070081 */ li $a3, 129 +/* 049900 80048D00 A3A30027 */ sb $v1, 0x27($sp) +/* 049904 80048D04 0C015C2E */ jal func_800570B8 +/* 049908 80048D08 AFA40028 */ sw $a0, 0x28($sp) +/* 04990C 80048D0C 82180187 */ lb $t8, 0x187($s0) +/* 049910 80048D10 83A30027 */ lb $v1, 0x27($sp) +/* 049914 80048D14 2719FFFF */ addiu $t9, $t8, -1 +/* 049918 80048D18 8FA40028 */ lw $a0, 0x28($sp) +/* 04991C 80048D1C 2F210006 */ sltiu $at, $t9, 6 +/* 049920 80048D20 1020004B */ beqz $at, .L80048E50 +/* 049924 80048D24 0019C880 */ sll $t9, $t9, 2 +/* 049928 80048D28 3C01800E */ lui $at, 0x800e +/* 04992C 80048D2C 00390821 */ addu $at, $at, $t9 +/* 049930 80048D30 8C39646C */ lw $t9, 0x646c($at) +/* 049934 80048D34 00000000 */ nop +/* 049938 80048D38 03200008 */ jr $t9 +/* 04993C 80048D3C 00000000 */ nop +/* 049940 80048D40 24080001 */ li $t0, 1 +/* 049944 80048D44 14600008 */ bnez $v1, .L80048D68 +/* 049948 80048D48 A20801F1 */ sb $t0, 0x1f1($s0) +/* 04994C 80048D4C 44800000 */ mtc1 $zero, $f0 +/* 049950 80048D50 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 049954 80048D54 44812000 */ mtc1 $at, $f4 +/* 049958 80048D58 E480001C */ swc1 $f0, 0x1c($a0) +/* 04995C 80048D5C E4800024 */ swc1 $f0, 0x24($a0) +/* 049960 80048D60 1000003B */ b .L80048E50 +/* 049964 80048D64 E4840020 */ swc1 $f4, 0x20($a0) +.L80048D68: +/* 049968 80048D68 C486001C */ lwc1 $f6, 0x1c($a0) +/* 04996C 80048D6C 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 049970 80048D70 44810800 */ mtc1 $at, $f1 +/* 049974 80048D74 44800000 */ mtc1 $zero, $f0 +/* 049978 80048D78 46003221 */ cvt.d.s $f8, $f6 +/* 04997C 80048D7C 46204282 */ mul.d $f10, $f8, $f0 +/* 049980 80048D80 C4920024 */ lwc1 $f18, 0x24($a0) +/* 049984 80048D84 3C0140C0 */ li $at, 0x40C00000 # 6.000000 +/* 049988 80048D88 46009121 */ cvt.d.s $f4, $f18 +/* 04998C 80048D8C 46202182 */ mul.d $f6, $f4, $f0 +/* 049990 80048D90 46205420 */ cvt.s.d $f16, $f10 +/* 049994 80048D94 44815000 */ mtc1 $at, $f10 +/* 049998 80048D98 E490001C */ swc1 $f16, 0x1c($a0) +/* 04999C 80048D9C E48A0020 */ swc1 $f10, 0x20($a0) +/* 0499A0 80048DA0 46203220 */ cvt.s.d $f8, $f6 +/* 0499A4 80048DA4 1000002A */ b .L80048E50 +/* 0499A8 80048DA8 E4880024 */ swc1 $f8, 0x24($a0) +/* 0499AC 80048DAC 2409003C */ li $t1, 60 +/* 0499B0 80048DB0 10000027 */ b .L80048E50 +/* 0499B4 80048DB4 A20901ED */ sb $t1, 0x1ed($s0) +/* 0499B8 80048DB8 3C01800E */ lui $at, %hi(D_800E648C) # $at, 0x800e +/* 0499BC 80048DBC C4216488 */ lwc1 $f1, %lo(D_800E6488)($at) +/* 0499C0 80048DC0 C420648C */ lwc1 $f0, %lo(D_800E648C)($at) +/* 0499C4 80048DC4 240A0078 */ li $t2, 120 +/* 0499C8 80048DC8 A60A0204 */ sh $t2, 0x204($s0) +/* 0499CC 80048DCC C490001C */ lwc1 $f16, 0x1c($a0) +/* 0499D0 80048DD0 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 0499D4 80048DD4 460084A1 */ cvt.d.s $f18, $f16 +/* 0499D8 80048DD8 46209102 */ mul.d $f4, $f18, $f0 +/* 0499DC 80048DDC 44811000 */ mtc1 $at, $f2 +/* 0499E0 80048DE0 C4880020 */ lwc1 $f8, 0x20($a0) +/* 0499E4 80048DE4 00000000 */ nop +/* 0499E8 80048DE8 4608103C */ c.lt.s $f2, $f8 +/* 0499EC 80048DEC 462021A0 */ cvt.s.d $f6, $f4 +/* 0499F0 80048DF0 45000002 */ bc1f .L80048DFC +/* 0499F4 80048DF4 E486001C */ swc1 $f6, 0x1c($a0) +/* 0499F8 80048DF8 E4820020 */ swc1 $f2, 0x20($a0) +.L80048DFC: +/* 0499FC 80048DFC C48A0024 */ lwc1 $f10, 0x24($a0) +/* 049A00 80048E00 00000000 */ nop +/* 049A04 80048E04 46005421 */ cvt.d.s $f16, $f10 +/* 049A08 80048E08 46208482 */ mul.d $f18, $f16, $f0 +/* 049A0C 80048E0C 46209120 */ cvt.s.d $f4, $f18 +/* 049A10 80048E10 1000000F */ b .L80048E50 +/* 049A14 80048E14 E4840024 */ swc1 $f4, 0x24($a0) +/* 049A18 80048E18 44800000 */ mtc1 $zero, $f0 +/* 049A1C 80048E1C 240B0001 */ li $t3, 1 +/* 049A20 80048E20 A20B01F1 */ sb $t3, 0x1f1($s0) +/* 049A24 80048E24 E600002C */ swc1 $f0, 0x2c($s0) +/* 049A28 80048E28 3C01800E */ lui $at, %hi(D_800E6494) # $at, 0x800e +/* 049A2C 80048E2C C4860020 */ lwc1 $f6, 0x20($a0) +/* 049A30 80048E30 C42B6490 */ lwc1 $f11, %lo(D_800E6490)($at) +/* 049A34 80048E34 C42A6494 */ lwc1 $f10, %lo(D_800E6494)($at) +/* 049A38 80048E38 46003221 */ cvt.d.s $f8, $f6 +/* 049A3C 80048E3C 462A4400 */ add.d $f16, $f8, $f10 +/* 049A40 80048E40 24050139 */ li $a1, 313 +/* 049A44 80048E44 462084A0 */ cvt.s.d $f18, $f16 +/* 049A48 80048E48 0C015C12 */ jal func_80057048 +/* 049A4C 80048E4C E4920020 */ swc1 $f18, 0x20($a0) +.L80048E50: +/* 049A50 80048E50 A2000187 */ sb $zero, 0x187($s0) +.L80048E54: +/* 049A54 80048E54 8FBF001C */ lw $ra, 0x1c($sp) +/* 049A58 80048E58 8FB00018 */ lw $s0, 0x18($sp) +/* 049A5C 80048E5C 03E00008 */ jr $ra +/* 049A60 80048E60 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_043920/func_80048E64.s b/asm/non_matchings/unknown_043920/func_80048E64.s new file mode 100644 index 00000000..f30e2590 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80048E64.s @@ -0,0 +1,441 @@ +glabel func_80048E64 +/* 049A64 80048E64 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 049A68 80048E68 3C014325 */ li $at, 0x43250000 # 165.000000 +/* 049A6C 80048E6C 44817000 */ mtc1 $at, $f14 +/* 049A70 80048E70 3C014282 */ li $at, 0x42820000 # 65.000000 +/* 049A74 80048E74 44819000 */ mtc1 $at, $f18 +/* 049A78 80048E78 AFBF001C */ sw $ra, 0x1c($sp) +/* 049A7C 80048E7C 240E0400 */ li $t6, 1024 +/* 049A80 80048E80 AFB00018 */ sw $s0, 0x18($sp) +/* 049A84 80048E84 E7AC0060 */ swc1 $f12, 0x60($sp) +/* 049A88 80048E88 AFA50064 */ sw $a1, 0x64($sp) +/* 049A8C 80048E8C AFAE0024 */ sw $t6, 0x24($sp) +/* 049A90 80048E90 AFA60068 */ sw $a2, 0x68($sp) +/* 049A94 80048E94 E7AE0048 */ swc1 $f14, 0x48($sp) +/* 049A98 80048E98 0C019884 */ jal func_80066210 +/* 049A9C 80048E9C E7B20044 */ swc1 $f18, 0x44($sp) +/* 049AA0 80048EA0 24060001 */ li $a2, 1 +/* 049AA4 80048EA4 8FA70068 */ lw $a3, 0x68($sp) +/* 049AA8 80048EA8 C7AE0048 */ lwc1 $f14, 0x48($sp) +/* 049AAC 80048EAC C7B20044 */ lwc1 $f18, 0x44($sp) +/* 049AB0 80048EB0 14460008 */ bne $v0, $a2, .L80048ED4 +/* 049AB4 80048EB4 3C108012 */ lui $s0, %hi(D_8011D508) # $s0, 0x8012 +/* 049AB8 80048EB8 3C014348 */ li $at, 0x43480000 # 200.000000 +/* 049ABC 80048EBC 44817000 */ mtc1 $at, $f14 +/* 049AC0 80048EC0 3C01424C */ li $at, 0x424C0000 # 51.000000 +/* 049AC4 80048EC4 44819000 */ mtc1 $at, $f18 +/* 049AC8 80048EC8 240F0280 */ li $t7, 640 +/* 049ACC 80048ECC 10000008 */ b .L80048EF0 +/* 049AD0 80048ED0 AFAF0024 */ sw $t7, 0x24($sp) +.L80048ED4: +/* 049AD4 80048ED4 28410002 */ slti $at, $v0, 2 +/* 049AD8 80048ED8 14200005 */ bnez $at, .L80048EF0 +/* 049ADC 80048EDC 3C014302 */ li $at, 0x43020000 # 130.000000 +/* 049AE0 80048EE0 44817000 */ mtc1 $at, $f14 +/* 049AE4 80048EE4 3C014248 */ li $at, 0x42480000 # 50.000000 +/* 049AE8 80048EE8 44819000 */ mtc1 $at, $f18 +/* 049AEC 80048EEC 00000000 */ nop +.L80048EF0: +/* 049AF0 80048EF0 2610D508 */ addiu $s0, %lo(D_8011D508) # addiu $s0, $s0, -0x2af8 +/* 049AF4 80048EF4 8E050000 */ lw $a1, ($s0) +/* 049AF8 80048EF8 C4F000B8 */ lwc1 $f16, 0xb8($a3) +/* 049AFC 80048EFC 90A2003B */ lbu $v0, 0x3b($a1) +/* 049B00 80048F00 C4EC0008 */ lwc1 $f12, 8($a3) +/* 049B04 80048F04 10460007 */ beq $v0, $a2, .L80048F24 +/* 049B08 80048F08 24010002 */ li $at, 2 +/* 049B0C 80048F0C 10410009 */ beq $v0, $at, .L80048F34 +/* 049B10 80048F10 24010003 */ li $at, 3 +/* 049B14 80048F14 1041000F */ beq $v0, $at, .L80048F54 +/* 049B18 80048F18 3C014254 */ lui $at, 0x4254 +/* 049B1C 80048F1C 1000001A */ b .L80048F88 +/* 049B20 80048F20 80F801E4 */ lb $t8, 0x1e4($a3) +.L80048F24: +/* 049B24 80048F24 3C01420C */ li $at, 0x420C0000 # 35.000000 +/* 049B28 80048F28 44812000 */ mtc1 $at, $f4 +/* 049B2C 80048F2C 10000015 */ b .L80048F84 +/* 049B30 80048F30 46047380 */ add.s $f14, $f14, $f4 +.L80048F34: +/* 049B34 80048F34 3C01420C */ li $at, 0x420C0000 # 35.000000 +/* 049B38 80048F38 44813000 */ mtc1 $at, $f6 +/* 049B3C 80048F3C 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 049B40 80048F40 44814000 */ mtc1 $at, $f8 +/* 049B44 80048F44 46067381 */ sub.s $f14, $f14, $f6 +/* 049B48 80048F48 1000000E */ b .L80048F84 +/* 049B4C 80048F4C 46089481 */ sub.s $f18, $f18, $f8 +/* 049B50 80048F50 3C014254 */ li $at, 0x42540000 # 53.000000 +.L80048F54: +/* 049B54 80048F54 44815000 */ mtc1 $at, $f10 +/* 049B58 80048F58 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 049B5C 80048F5C 44812000 */ mtc1 $at, $f4 +/* 049B60 80048F60 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 049B64 80048F64 44814800 */ mtc1 $at, $f9 +/* 049B68 80048F68 44804000 */ mtc1 $zero, $f8 +/* 049B6C 80048F6C 460061A1 */ cvt.d.s $f6, $f12 +/* 049B70 80048F70 460A7381 */ sub.s $f14, $f14, $f10 +/* 049B74 80048F74 44808000 */ mtc1 $zero, $f16 +/* 049B78 80048F78 46283282 */ mul.d $f10, $f6, $f8 +/* 049B7C 80048F7C 46049481 */ sub.s $f18, $f18, $f4 +/* 049B80 80048F80 46205320 */ cvt.s.d $f12, $f10 +.L80048F84: +/* 049B84 80048F84 80F801E4 */ lb $t8, 0x1e4($a3) +.L80048F88: +/* 049B88 80048F88 00000000 */ nop +/* 049B8C 80048F8C 1700002D */ bnez $t8, .L80049044 +/* 049B90 80048F90 00000000 */ nop +/* 049B94 80048F94 8FB90064 */ lw $t9, 0x64($sp) +/* 049B98 80048F98 8FA90024 */ lw $t1, 0x24($sp) +/* 049B9C 80048F9C 87220002 */ lh $v0, 2($t9) +/* 049BA0 80048FA0 34018001 */ li $at, 32769 +/* 049BA4 80048FA4 18400008 */ blez $v0, .L80048FC8 +/* 049BA8 80048FA8 00000000 */ nop +/* 049BAC 80048FAC 2442F9E4 */ addiu $v0, $v0, -0x61c +/* 049BB0 80048FB0 04410003 */ bgez $v0, .L80048FC0 +/* 049BB4 80048FB4 00024043 */ sra $t0, $v0, 1 +/* 049BB8 80048FB8 00001025 */ move $v0, $zero +/* 049BBC 80048FBC 00024043 */ sra $t0, $v0, 1 +.L80048FC0: +/* 049BC0 80048FC0 10000005 */ b .L80048FD8 +/* 049BC4 80048FC4 01001025 */ move $v0, $t0 +.L80048FC8: +/* 049BC8 80048FC8 2442061C */ addiu $v0, $v0, 0x61c +/* 049BCC 80048FCC 18400002 */ blez $v0, .L80048FD8 +/* 049BD0 80048FD0 00000000 */ nop +/* 049BD4 80048FD4 00001025 */ move $v0, $zero +.L80048FD8: +/* 049BD8 80048FD8 84A40002 */ lh $a0, 2($a1) +/* 049BDC 80048FDC 01221023 */ subu $v0, $t1, $v0 +/* 049BE0 80048FE0 308AFFFF */ andi $t2, $a0, 0xffff +/* 049BE4 80048FE4 004A1823 */ subu $v1, $v0, $t2 +/* 049BE8 80048FE8 0061082A */ slt $at, $v1, $at +/* 049BEC 80048FEC 14200003 */ bnez $at, .L80048FFC +/* 049BF0 80048FF0 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 049BF4 80048FF4 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 049BF8 80048FF8 00611821 */ addu $v1, $v1, $at +.L80048FFC: +/* 049BFC 80048FFC 28618000 */ slti $at, $v1, -0x8000 +/* 049C00 80049000 10200002 */ beqz $at, .L8004900C +/* 049C04 80049004 3401FFFF */ li $at, 65535 +/* 049C08 80049008 00611821 */ addu $v1, $v1, $at +.L8004900C: +/* 049C0C 8004900C 444BF800 */ cfc1 $t3, $31 +/* 049C10 80049010 C7A40060 */ lwc1 $f4, 0x60($sp) +/* 049C14 80049014 35610003 */ ori $at, $t3, 3 +/* 049C18 80049018 38210002 */ xori $at, $at, 2 +/* 049C1C 8004901C 44C1F800 */ ctc1 $at, $31 +/* 049C20 80049020 00000000 */ nop +/* 049C24 80049024 460021A4 */ cvt.w.s $f6, $f4 +/* 049C28 80049028 440C3000 */ mfc1 $t4, $f6 +/* 049C2C 8004902C 44CBF800 */ ctc1 $t3, $31 +/* 049C30 80049030 006C0019 */ multu $v1, $t4 +/* 049C34 80049034 00006812 */ mflo $t5 +/* 049C38 80049038 000D7103 */ sra $t6, $t5, 4 +/* 049C3C 8004903C 008E7821 */ addu $t7, $a0, $t6 +/* 049C40 80049040 A4AF0002 */ sh $t7, 2($a1) +.L80049044: +/* 049C44 80049044 AFA70068 */ sw $a3, 0x68($sp) +/* 049C48 80049048 E7AC0028 */ swc1 $f12, 0x28($sp) +/* 049C4C 8004904C E7AE0048 */ swc1 $f14, 0x48($sp) +/* 049C50 80049050 E7B0002C */ swc1 $f16, 0x2c($sp) +/* 049C54 80049054 0C019884 */ jal func_80066210 +/* 049C58 80049058 E7B20044 */ swc1 $f18, 0x44($sp) +/* 049C5C 8004905C 8FA70068 */ lw $a3, 0x68($sp) +/* 049C60 80049060 44805800 */ mtc1 $zero, $f11 +/* 049C64 80049064 C4E0002C */ lwc1 $f0, 0x2c($a3) +/* 049C68 80049068 44805000 */ mtc1 $zero, $f10 +/* 049C6C 8004906C 46000221 */ cvt.d.s $f8, $f0 +/* 049C70 80049070 462A403C */ c.lt.d $f8, $f10 +/* 049C74 80049074 C7AC0028 */ lwc1 $f12, 0x28($sp) +/* 049C78 80049078 C7AE0048 */ lwc1 $f14, 0x48($sp) +/* 049C7C 8004907C C7B0002C */ lwc1 $f16, 0x2c($sp) +/* 049C80 80049080 C7B20044 */ lwc1 $f18, 0x44($sp) +/* 049C84 80049084 45000013 */ bc1f .L800490D4 +/* 049C88 80049088 3C0141F0 */ lui $at, 0x41f0 +/* 049C8C 8004908C 46100102 */ mul.s $f4, $f0, $f16 +/* 049C90 80049090 3C0140C0 */ li $at, 0x40C00000 # 6.000000 +/* 049C94 80049094 44814000 */ mtc1 $at, $f8 +/* 049C98 80049098 3C01800E */ lui $at, %hi(D_800E649C) # $at, 0x800e +/* 049C9C 8004909C 46002187 */ neg.s $f6, $f4 +/* 049CA0 800490A0 46083082 */ mul.s $f2, $f6, $f8 +/* 049CA4 800490A4 C42B6498 */ lwc1 $f11, %lo(D_800E6498)($at) +/* 049CA8 800490A8 C42A649C */ lwc1 $f10, %lo(D_800E649C)($at) +/* 049CAC 800490AC 3C014282 */ li $at, 0x42820000 # 65.000000 +/* 049CB0 800490B0 46001121 */ cvt.d.s $f4, $f2 +/* 049CB4 800490B4 4624503C */ c.lt.d $f10, $f4 +/* 049CB8 800490B8 00000000 */ nop +/* 049CBC 800490BC 45000003 */ bc1f .L800490CC +/* 049CC0 800490C0 00000000 */ nop +/* 049CC4 800490C4 44811000 */ mtc1 $at, $f2 +/* 049CC8 800490C8 00000000 */ nop +.L800490CC: +/* 049CCC 800490CC 46027381 */ sub.s $f14, $f14, $f2 +/* 049CD0 800490D0 3C0141F0 */ li $at, 0x41F00000 # 30.000000 +.L800490D4: +/* 049CD4 800490D4 44813000 */ mtc1 $at, $f6 +/* 049CD8 800490D8 3C188012 */ lui $t8, %hi(D_8011D540) # $t8, 0x8012 +/* 049CDC 800490DC 46066202 */ mul.s $f8, $f12, $f6 +/* 049CE0 800490E0 8F18D540 */ lw $t8, %lo(D_8011D540)($t8) +/* 049CE4 800490E4 00000000 */ nop +/* 049CE8 800490E8 17000014 */ bnez $t8, .L8004913C +/* 049CEC 800490EC 46087380 */ add.s $f14, $f14, $f8 +/* 049CF0 800490F0 24040024 */ li $a0, 36 +/* 049CF4 800490F4 AFA70068 */ sw $a3, 0x68($sp) +/* 049CF8 800490F8 E7AE0048 */ swc1 $f14, 0x48($sp) +/* 049CFC 800490FC 0C00322D */ jal func_8000C8B4 +/* 049D00 80049100 E7B20044 */ swc1 $f18, 0x44($sp) +/* 049D04 80049104 8FA70068 */ lw $a3, 0x68($sp) +/* 049D08 80049108 C7AE0048 */ lwc1 $f14, 0x48($sp) +/* 049D0C 8004910C 80E301D3 */ lb $v1, 0x1d3($a3) +/* 049D10 80049110 C7B20044 */ lwc1 $f18, 0x44($sp) +/* 049D14 80049114 0043082A */ slt $at, $v0, $v1 +/* 049D18 80049118 10200004 */ beqz $at, .L8004912C +/* 049D1C 8004911C 3C01C1F0 */ li $at, 0xC1F00000 # -30.000000 +/* 049D20 80049120 44817000 */ mtc1 $at, $f14 +/* 049D24 80049124 10000005 */ b .L8004913C +/* 049D28 80049128 00000000 */ nop +.L8004912C: +/* 049D2C 8004912C 18600003 */ blez $v1, .L8004913C +/* 049D30 80049130 3C014334 */ li $at, 0x43340000 # 180.000000 +/* 049D34 80049134 44817000 */ mtc1 $at, $f14 +/* 049D38 80049138 00000000 */ nop +.L8004913C: +/* 049D3C 8004913C 3C198012 */ lui $t9, %hi(D_8011D540) # $t9, 0x8012 +/* 049D40 80049140 8F39D540 */ lw $t9, %lo(D_8011D540)($t9) +/* 049D44 80049144 00000000 */ nop +/* 049D48 80049148 2B210051 */ slti $at, $t9, 0x51 +/* 049D4C 8004914C 14200007 */ bnez $at, .L8004916C +/* 049D50 80049150 00000000 */ nop +/* 049D54 80049154 8E080000 */ lw $t0, ($s0) +/* 049D58 80049158 00000000 */ nop +/* 049D5C 8004915C E50E001C */ swc1 $f14, 0x1c($t0) +/* 049D60 80049160 8E090000 */ lw $t1, ($s0) +/* 049D64 80049164 00000000 */ nop +/* 049D68 80049168 E5320020 */ swc1 $f18, 0x20($t1) +.L8004916C: +/* 049D6C 8004916C 8E050000 */ lw $a1, ($s0) +/* 049D70 80049170 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 049D74 80049174 C4A0001C */ lwc1 $f0, 0x1c($a1) +/* 049D78 80049178 44816800 */ mtc1 $at, $f13 +/* 049D7C 8004917C 46007101 */ sub.s $f4, $f14, $f0 +/* 049D80 80049180 44806000 */ mtc1 $zero, $f12 +/* 049D84 80049184 460021A1 */ cvt.d.s $f6, $f4 +/* 049D88 80049188 462C3202 */ mul.d $f8, $f6, $f12 +/* 049D8C 8004918C 460002A1 */ cvt.d.s $f10, $f0 +/* 049D90 80049190 46285100 */ add.d $f4, $f10, $f8 +/* 049D94 80049194 462021A0 */ cvt.s.d $f6, $f4 +/* 049D98 80049198 E4A6001C */ swc1 $f6, 0x1c($a1) +/* 049D9C 8004919C 8E050000 */ lw $a1, ($s0) +/* 049DA0 800491A0 00000000 */ nop +/* 049DA4 800491A4 C4A20020 */ lwc1 $f2, 0x20($a1) +/* 049DA8 800491A8 00000000 */ nop +/* 049DAC 800491AC 46029201 */ sub.s $f8, $f18, $f2 +/* 049DB0 800491B0 46004121 */ cvt.d.s $f4, $f8 +/* 049DB4 800491B4 462C2182 */ mul.d $f6, $f4, $f12 +/* 049DB8 800491B8 460012A1 */ cvt.d.s $f10, $f2 +/* 049DBC 800491BC 46265200 */ add.d $f8, $f10, $f6 +/* 049DC0 800491C0 46204120 */ cvt.s.d $f4, $f8 +/* 049DC4 800491C4 E4A40020 */ swc1 $f4, 0x20($a1) +/* 049DC8 800491C8 8E0A0000 */ lw $t2, ($s0) +/* 049DCC 800491CC 8FAC0024 */ lw $t4, 0x24($sp) +/* 049DD0 800491D0 854B0002 */ lh $t3, 2($t2) +/* 049DD4 800491D4 AFA70068 */ sw $a3, 0x68($sp) +/* 049DD8 800491D8 016C2023 */ subu $a0, $t3, $t4 +/* 049DDC 800491DC 00046C00 */ sll $t5, $a0, 0x10 +/* 049DE0 800491E0 0C01C1F1 */ jal func_800707C4 +/* 049DE4 800491E4 000D2403 */ sra $a0, $t5, 0x10 +/* 049DE8 800491E8 8E0F0000 */ lw $t7, ($s0) +/* 049DEC 800491EC E7A00034 */ swc1 $f0, 0x34($sp) +/* 049DF0 800491F0 8FB90024 */ lw $t9, 0x24($sp) +/* 049DF4 800491F4 85F80002 */ lh $t8, 2($t7) +/* 049DF8 800491F8 00000000 */ nop +/* 049DFC 800491FC 03192023 */ subu $a0, $t8, $t9 +/* 049E00 80049200 00044400 */ sll $t0, $a0, 0x10 +/* 049E04 80049204 0C01C1FE */ jal func_800707F8 +/* 049E08 80049208 00082403 */ sra $a0, $t0, 0x10 +/* 049E0C 8004920C 8E050000 */ lw $a1, ($s0) +/* 049E10 80049210 C7A60034 */ lwc1 $f6, 0x34($sp) +/* 049E14 80049214 C4AA001C */ lwc1 $f10, 0x1c($a1) +/* 049E18 80049218 C4A40020 */ lwc1 $f4, 0x20($a1) +/* 049E1C 8004921C 46065202 */ mul.s $f8, $f10, $f6 +/* 049E20 80049220 8FA70068 */ lw $a3, 0x68($sp) +/* 049E24 80049224 340B8000 */ li $t3, 32768 +/* 049E28 80049228 84EA0196 */ lh $t2, 0x196($a3) +/* 049E2C 8004922C 46002282 */ mul.s $f10, $f4, $f0 +/* 049E30 80049230 016A2023 */ subu $a0, $t3, $t2 +/* 049E34 80049234 00046400 */ sll $t4, $a0, 0x10 +/* 049E38 80049238 000C2403 */ sra $a0, $t4, 0x10 +/* 049E3C 8004923C 460A4480 */ add.s $f18, $f8, $f10 +/* 049E40 80049240 0C01C1F1 */ jal func_800707C4 +/* 049E44 80049244 E7B20044 */ swc1 $f18, 0x44($sp) +/* 049E48 80049248 8E0E0000 */ lw $t6, ($s0) +/* 049E4C 8004924C 8FA70068 */ lw $a3, 0x68($sp) +/* 049E50 80049250 C5C6001C */ lwc1 $f6, 0x1c($t6) +/* 049E54 80049254 34188000 */ li $t8, 32768 +/* 049E58 80049258 46060102 */ mul.s $f4, $f0, $f6 +/* 049E5C 8004925C E7A40040 */ swc1 $f4, 0x40($sp) +/* 049E60 80049260 84EF0196 */ lh $t7, 0x196($a3) +/* 049E64 80049264 00000000 */ nop +/* 049E68 80049268 030F2023 */ subu $a0, $t8, $t7 +/* 049E6C 8004926C 0004CC00 */ sll $t9, $a0, 0x10 +/* 049E70 80049270 0C01C1FE */ jal func_800707F8 +/* 049E74 80049274 00192403 */ sra $a0, $t9, 0x10 +/* 049E78 80049278 3C0B8012 */ lui $t3, %hi(D_8011D586) # $t3, 0x8012 +/* 049E7C 8004927C 856BD586 */ lh $t3, %lo(D_8011D586)($t3) +/* 049E80 80049280 8E090000 */ lw $t1, ($s0) +/* 049E84 80049284 448B5000 */ mtc1 $t3, $f10 +/* 049E88 80049288 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 049E8C 8004928C 44817000 */ mtc1 $at, $f14 +/* 049E90 80049290 468051A0 */ cvt.s.w $f6, $f10 +/* 049E94 80049294 C528001C */ lwc1 $f8, 0x1c($t1) +/* 049E98 80049298 3C014620 */ li $at, 0x46200000 # 10240.000000 +/* 049E9C 8004929C 44812000 */ mtc1 $at, $f4 +/* 049EA0 800492A0 46080402 */ mul.s $f16, $f0, $f8 +/* 049EA4 800492A4 00000000 */ nop +/* 049EA8 800492A8 46043203 */ div.s $f8, $f6, $f4 +/* 049EAC 800492AC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 049EB0 800492B0 44813800 */ mtc1 $at, $f7 +/* 049EB4 800492B4 44803000 */ mtc1 $zero, $f6 +/* 049EB8 800492B8 8FA70068 */ lw $a3, 0x68($sp) +/* 049EBC 800492BC 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 049EC0 800492C0 460042A1 */ cvt.d.s $f10, $f8 +/* 049EC4 800492C4 462A3101 */ sub.d $f4, $f6, $f10 +/* 049EC8 800492C8 C4E60038 */ lwc1 $f6, 0x38($a3) +/* 049ECC 800492CC 462020A0 */ cvt.s.d $f2, $f4 +/* 049ED0 800492D0 C7A80040 */ lwc1 $f8, 0x40($sp) +/* 049ED4 800492D4 460E3282 */ mul.s $f10, $f6, $f14 +/* 049ED8 800492D8 00000000 */ nop +/* 049EDC 800492DC 46025102 */ mul.s $f4, $f10, $f2 +/* 049EE0 800492E0 46044181 */ sub.s $f6, $f8, $f4 +/* 049EE4 800492E4 E7A60040 */ swc1 $f6, 0x40($sp) +/* 049EE8 800492E8 C4EA0040 */ lwc1 $f10, 0x40($a3) +/* 049EEC 800492EC C4E60030 */ lwc1 $f6, 0x30($a3) +/* 049EF0 800492F0 460E5202 */ mul.s $f8, $f10, $f14 +/* 049EF4 800492F4 44815000 */ mtc1 $at, $f10 +/* 049EF8 800492F8 C4EC00C8 */ lwc1 $f12, 0xc8($a3) +/* 049EFC 800492FC 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 049F00 80049300 46024102 */ mul.s $f4, $f8, $f2 +/* 049F04 80049304 44813800 */ mtc1 $at, $f7 +/* 049F08 80049308 84E40196 */ lh $a0, 0x196($a3) +/* 049F0C 8004930C 460A3082 */ mul.s $f2, $f6, $f10 +/* 049F10 80049310 46048401 */ sub.s $f16, $f16, $f4 +/* 049F14 80049314 44803000 */ mtc1 $zero, $f6 +/* 049F18 80049318 24844000 */ addiu $a0, $a0, 0x4000 +/* 049F1C 8004931C 46026201 */ sub.s $f8, $f12, $f2 +/* 049F20 80049320 00045400 */ sll $t2, $a0, 0x10 +/* 049F24 80049324 46004121 */ cvt.d.s $f4, $f8 +/* 049F28 80049328 46262282 */ mul.d $f10, $f4, $f6 +/* 049F2C 8004932C 46006221 */ cvt.d.s $f8, $f12 +/* 049F30 80049330 000A2403 */ sra $a0, $t2, 0x10 +/* 049F34 80049334 462A4101 */ sub.d $f4, $f8, $f10 +/* 049F38 80049338 462021A0 */ cvt.s.d $f6, $f4 +/* 049F3C 8004933C E4E600C8 */ swc1 $f6, 0xc8($a3) +/* 049F40 80049340 0C01C1F1 */ jal func_800707C4 +/* 049F44 80049344 E7B0003C */ swc1 $f16, 0x3c($sp) +/* 049F48 80049348 8FA70068 */ lw $a3, 0x68($sp) +/* 049F4C 8004934C 8FA20064 */ lw $v0, 0x64($sp) +/* 049F50 80049350 C4E800C8 */ lwc1 $f8, 0xc8($a3) +/* 049F54 80049354 C7A40040 */ lwc1 $f4, 0x40($sp) +/* 049F58 80049358 46080082 */ mul.s $f2, $f0, $f8 +/* 049F5C 8004935C C44A000C */ lwc1 $f10, 0xc($v0) +/* 049F60 80049360 8E0D0000 */ lw $t5, ($s0) +/* 049F64 80049364 C7B20044 */ lwc1 $f18, 0x44($sp) +/* 049F68 80049368 46045180 */ add.s $f6, $f10, $f4 +/* 049F6C 8004936C C7B0003C */ lwc1 $f16, 0x3c($sp) +/* 049F70 80049370 46023200 */ add.s $f8, $f6, $f2 +/* 049F74 80049374 44803000 */ mtc1 $zero, $f6 +/* 049F78 80049378 E5A8000C */ swc1 $f8, 0xc($t5) +/* 049F7C 8004937C 8E050000 */ lw $a1, ($s0) +/* 049F80 80049380 C44A0010 */ lwc1 $f10, 0x10($v0) +/* 049F84 80049384 C4AC0010 */ lwc1 $f12, 0x10($a1) +/* 049F88 80049388 46125100 */ add.s $f4, $f10, $f18 +/* 049F8C 8004938C 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 049F90 80049390 46046081 */ sub.s $f2, $f12, $f4 +/* 049F94 80049394 3C0E8012 */ lui $t6, %hi(D_8011D53C) # $t6, 0x8012 +/* 049F98 80049398 4602303C */ c.lt.s $f6, $f2 +/* 049F9C 8004939C 00000000 */ nop +/* 049FA0 800493A0 45000007 */ bc1f .L800493C0 +/* 049FA4 800493A4 00000000 */ nop +/* 049FA8 800493A8 44815800 */ mtc1 $at, $f11 +/* 049FAC 800493AC 44805000 */ mtc1 $zero, $f10 +/* 049FB0 800493B0 46001221 */ cvt.d.s $f8, $f2 +/* 049FB4 800493B4 462A4102 */ mul.d $f4, $f8, $f10 +/* 049FB8 800493B8 10000018 */ b .L8004941C +/* 049FBC 800493BC 462020A0 */ cvt.s.d $f2, $f4 +.L800493C0: +/* 049FC0 800493C0 8DCED53C */ lw $t6, %lo(D_8011D53C)($t6) +/* 049FC4 800493C4 24010001 */ li $at, 1 +/* 049FC8 800493C8 15C10007 */ bne $t6, $at, .L800493E8 +/* 049FCC 800493CC 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 049FD0 800493D0 44814800 */ mtc1 $at, $f9 +/* 049FD4 800493D4 44804000 */ mtc1 $zero, $f8 +/* 049FD8 800493D8 460011A1 */ cvt.d.s $f6, $f2 +/* 049FDC 800493DC 46283282 */ mul.d $f10, $f6, $f8 +/* 049FE0 800493E0 10000007 */ b .L80049400 +/* 049FE4 800493E4 462050A0 */ cvt.s.d $f2, $f10 +.L800493E8: +/* 049FE8 800493E8 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 049FEC 800493EC 44813800 */ mtc1 $at, $f7 +/* 049FF0 800493F0 44803000 */ mtc1 $zero, $f6 +/* 049FF4 800493F4 46001121 */ cvt.d.s $f4, $f2 +/* 049FF8 800493F8 46262202 */ mul.d $f8, $f4, $f6 +/* 049FFC 800493FC 462040A0 */ cvt.s.d $f2, $f8 +.L80049400: +/* 04A000 80049400 80F801D3 */ lb $t8, 0x1d3($a3) +/* 04A004 80049404 00000000 */ nop +/* 04A008 80049408 13000004 */ beqz $t8, .L8004941C +/* 04A00C 8004940C 00000000 */ nop +/* 04A010 80049410 46001021 */ cvt.d.s $f0, $f2 +/* 04A014 80049414 46200280 */ add.d $f10, $f0, $f0 +/* 04A018 80049418 462050A0 */ cvt.s.d $f2, $f10 +.L8004941C: +/* 04A01C 8004941C 46026101 */ sub.s $f4, $f12, $f2 +/* 04A020 80049420 3C198012 */ lui $t9, %hi(D_8011D540) # $t9, 0x8012 +/* 04A024 80049424 E4A40010 */ swc1 $f4, 0x10($a1) +/* 04A028 80049428 8E0F0000 */ lw $t7, ($s0) +/* 04A02C 8004942C 00000000 */ nop +/* 04A030 80049430 A5E00004 */ sh $zero, 4($t7) +/* 04A034 80049434 8F39D540 */ lw $t9, %lo(D_8011D540)($t9) +/* 04A038 80049438 00000000 */ nop +/* 04A03C 8004943C 13200005 */ beqz $t9, .L80049454 +/* 04A040 80049440 00000000 */ nop +/* 04A044 80049444 C4460010 */ lwc1 $f6, 0x10($v0) +/* 04A048 80049448 8E080000 */ lw $t0, ($s0) +/* 04A04C 8004944C 46123200 */ add.s $f8, $f6, $f18 +/* 04A050 80049450 E5080010 */ swc1 $f8, 0x10($t0) +.L80049454: +/* 04A054 80049454 84E40196 */ lh $a0, 0x196($a3) +/* 04A058 80049458 E7B0003C */ swc1 $f16, 0x3c($sp) +/* 04A05C 8004945C 24844000 */ addiu $a0, $a0, 0x4000 +/* 04A060 80049460 00044C00 */ sll $t1, $a0, 0x10 +/* 04A064 80049464 00092403 */ sra $a0, $t1, 0x10 +/* 04A068 80049468 0C01C1FE */ jal func_800707F8 +/* 04A06C 8004946C AFA70068 */ sw $a3, 0x68($sp) +/* 04A070 80049470 8FAA0064 */ lw $t2, 0x64($sp) +/* 04A074 80049474 C7B0003C */ lwc1 $f16, 0x3c($sp) +/* 04A078 80049478 C54A0014 */ lwc1 $f10, 0x14($t2) +/* 04A07C 8004947C 8E0C0000 */ lw $t4, ($s0) +/* 04A080 80049480 46105100 */ add.s $f4, $f10, $f16 +/* 04A084 80049484 8FA70068 */ lw $a3, 0x68($sp) +/* 04A088 80049488 E5840014 */ swc1 $f4, 0x14($t4) +/* 04A08C 8004948C 8E0E0000 */ lw $t6, ($s0) +/* 04A090 80049490 84ED0196 */ lh $t5, 0x196($a3) +/* 04A094 80049494 00000000 */ nop +/* 04A098 80049498 A5CD0000 */ sh $t5, ($t6) +/* 04A09C 8004949C 8E050000 */ lw $a1, ($s0) +/* 04A0A0 800494A0 00000000 */ nop +/* 04A0A4 800494A4 C4AC000C */ lwc1 $f12, 0xc($a1) +/* 04A0A8 800494A8 C4AE0010 */ lwc1 $f14, 0x10($a1) +/* 04A0AC 800494AC 8CA60014 */ lw $a2, 0x14($a1) +/* 04A0B0 800494B0 0C00A7C6 */ jal func_80029F18 +/* 04A0B4 800494B4 00000000 */ nop +/* 04A0B8 800494B8 2401FFFF */ li $at, -1 +/* 04A0BC 800494BC 10410005 */ beq $v0, $at, .L800494D4 +/* 04A0C0 800494C0 8FBF001C */ lw $ra, 0x1c($sp) +/* 04A0C4 800494C4 8E180000 */ lw $t8, ($s0) +/* 04A0C8 800494C8 00000000 */ nop +/* 04A0CC 800494CC A7020034 */ sh $v0, 0x34($t8) +/* 04A0D0 800494D0 8FBF001C */ lw $ra, 0x1c($sp) +.L800494D4: +/* 04A0D4 800494D4 8FB00018 */ lw $s0, 0x18($sp) +/* 04A0D8 800494D8 03E00008 */ jr $ra +/* 04A0DC 800494DC 27BD0060 */ addiu $sp, $sp, 0x60 + diff --git a/asm/non_matchings/unknown_043920/func_800494E0.s b/asm/non_matchings/unknown_043920/func_800494E0.s new file mode 100644 index 00000000..cd647457 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_800494E0.s @@ -0,0 +1,182 @@ +glabel func_800494E0 +/* 04A0E0 800494E0 27BDFF78 */ addiu $sp, $sp, -0x88 +/* 04A0E4 800494E4 8FB80098 */ lw $t8, 0x98($sp) +/* 04A0E8 800494E8 00077600 */ sll $t6, $a3, 0x18 +/* 04A0EC 800494EC 44982000 */ mtc1 $t8, $f4 +/* 04A0F0 800494F0 000E7E03 */ sra $t7, $t6, 0x18 +/* 04A0F4 800494F4 AFB10028 */ sw $s1, 0x28($sp) +/* 04A0F8 800494F8 AFB00024 */ sw $s0, 0x24($sp) +/* 04A0FC 800494FC 2401000E */ li $at, 14 +/* 04A100 80049500 00C08025 */ move $s0, $a2 +/* 04A104 80049504 00808825 */ move $s1, $a0 +/* 04A108 80049508 AFBF002C */ sw $ra, 0x2c($sp) +/* 04A10C 8004950C AFA5008C */ sw $a1, 0x8c($sp) +/* 04A110 80049510 AFA70094 */ sw $a3, 0x94($sp) +/* 04A114 80049514 15E10019 */ bne $t7, $at, .L8004957C +/* 04A118 80049518 46802020 */ cvt.s.w $f0, $f4 +/* 04A11C 8004951C 44800000 */ mtc1 $zero, $f0 +/* 04A120 80049520 C4A2002C */ lwc1 $f2, 0x2c($a1) +/* 04A124 80049524 3C01800E */ lui $at, %hi(D_800E64A4) # $at, 0x800e +/* 04A128 80049528 4600103C */ c.lt.s $f2, $f0 +/* 04A12C 8004952C 00000000 */ nop +/* 04A130 80049530 45000002 */ bc1f .L8004953C +/* 04A134 80049534 00000000 */ nop +/* 04A138 80049538 46001087 */ neg.s $f2, $f2 +.L8004953C: +/* 04A13C 8004953C C42964A0 */ lwc1 $f9, %lo(D_800E64A0)($at) +/* 04A140 80049540 C42864A4 */ lwc1 $f8, %lo(D_800E64A4)($at) +/* 04A144 80049544 460011A1 */ cvt.d.s $f6, $f2 +/* 04A148 80049548 46283282 */ mul.d $f10, $f6, $f8 +/* 04A14C 8004954C 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 04A150 80049550 44818800 */ mtc1 $at, $f17 +/* 04A154 80049554 44808000 */ mtc1 $zero, $f16 +/* 04A158 80049558 00000000 */ nop +/* 04A15C 8004955C 462A8481 */ sub.d $f18, $f16, $f10 +/* 04A160 80049560 462090A0 */ cvt.s.d $f2, $f18 +/* 04A164 80049564 4600103C */ c.lt.s $f2, $f0 +/* 04A168 80049568 00000000 */ nop +/* 04A16C 8004956C 45000014 */ bc1f .L800495C0 +/* 04A170 80049570 00000000 */ nop +/* 04A174 80049574 10000012 */ b .L800495C0 +/* 04A178 80049578 46000086 */ mov.s $f2, $f0 +.L8004957C: +/* 04A17C 8004957C C6060000 */ lwc1 $f6, ($s0) +/* 04A180 80049580 C7AC00A0 */ lwc1 $f12, 0xa0($sp) +/* 04A184 80049584 46003202 */ mul.s $f8, $f6, $f0 +/* 04A188 80049588 C624000C */ lwc1 $f4, 0xc($s1) +/* 04A18C 8004958C C6320014 */ lwc1 $f18, 0x14($s1) +/* 04A190 80049590 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 04A194 80049594 460C4402 */ mul.s $f16, $f8, $f12 +/* 04A198 80049598 44811000 */ mtc1 $at, $f2 +/* 04A19C 8004959C 46102280 */ add.s $f10, $f4, $f16 +/* 04A1A0 800495A0 E62A000C */ swc1 $f10, 0xc($s1) +/* 04A1A4 800495A4 C6060008 */ lwc1 $f6, 8($s0) +/* 04A1A8 800495A8 00000000 */ nop +/* 04A1AC 800495AC 46003202 */ mul.s $f8, $f6, $f0 +/* 04A1B0 800495B0 44800000 */ mtc1 $zero, $f0 +/* 04A1B4 800495B4 460C4102 */ mul.s $f4, $f8, $f12 +/* 04A1B8 800495B8 46049400 */ add.s $f16, $f18, $f4 +/* 04A1BC 800495BC E6300014 */ swc1 $f16, 0x14($s1) +.L800495C0: +/* 04A1C0 800495C0 86280000 */ lh $t0, ($s1) +/* 04A1C4 800495C4 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 +/* 04A1C8 800495C8 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 +/* 04A1CC 800495CC 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 04A1D0 800495D0 44815000 */ mtc1 $at, $f10 +/* 04A1D4 800495D4 00084823 */ negu $t1, $t0 +/* 04A1D8 800495D8 A4A90000 */ sh $t1, ($a1) +/* 04A1DC 800495DC A4A00002 */ sh $zero, 2($a1) +/* 04A1E0 800495E0 A4A00004 */ sh $zero, 4($a1) +/* 04A1E4 800495E4 E4A0000C */ swc1 $f0, 0xc($a1) +/* 04A1E8 800495E8 E4A00010 */ swc1 $f0, 0x10($a1) +/* 04A1EC 800495EC E4A00014 */ swc1 $f0, 0x14($a1) +/* 04A1F0 800495F0 E7A20044 */ swc1 $f2, 0x44($sp) +/* 04A1F4 800495F4 27A40048 */ addiu $a0, $sp, 0x48 +/* 04A1F8 800495F8 0C01BF9D */ jal func_8006FE74 +/* 04A1FC 800495FC E4AA0008 */ swc1 $f10, 8($a1) +/* 04A200 80049600 8E050000 */ lw $a1, ($s0) +/* 04A204 80049604 8E060004 */ lw $a2, 4($s0) +/* 04A208 80049608 8E070008 */ lw $a3, 8($s0) +/* 04A20C 8004960C 260A0004 */ addiu $t2, $s0, 4 +/* 04A210 80049610 260B0008 */ addiu $t3, $s0, 8 +/* 04A214 80049614 AFAB0018 */ sw $t3, 0x18($sp) +/* 04A218 80049618 AFAA0014 */ sw $t2, 0x14($sp) +/* 04A21C 8004961C AFB00010 */ sw $s0, 0x10($sp) +/* 04A220 80049620 0C01BD93 */ jal func_8006F64C +/* 04A224 80049624 27A40048 */ addiu $a0, $sp, 0x48 +/* 04A228 80049628 C60C0000 */ lwc1 $f12, ($s0) +/* 04A22C 8004962C C60E0004 */ lwc1 $f14, 4($s0) +/* 04A230 80049630 0C01C1D4 */ jal func_80070750 +/* 04A234 80049634 00000000 */ nop +/* 04A238 80049638 00026400 */ sll $t4, $v0, 0x10 +/* 04A23C 8004963C 000C6C03 */ sra $t5, $t4, 0x10 +/* 04A240 80049640 000D7023 */ negu $t6, $t5 +/* 04A244 80049644 448E3000 */ mtc1 $t6, $f6 +/* 04A248 80049648 C7A20044 */ lwc1 $f2, 0x44($sp) +/* 04A24C 8004964C 46803220 */ cvt.s.w $f8, $f6 +/* 04A250 80049650 8FA5008C */ lw $a1, 0x8c($sp) +/* 04A254 80049654 8FB9009C */ lw $t9, 0x9c($sp) +/* 04A258 80049658 46024482 */ mul.s $f18, $f8, $f2 +/* 04A25C 8004965C 84A301A4 */ lh $v1, 0x1a4($a1) +/* 04A260 80049660 00194180 */ sll $t0, $t9, 6 +/* 04A264 80049664 306BFFFF */ andi $t3, $v1, 0xffff +/* 04A268 80049668 444FF800 */ cfc1 $t7, $31 +/* 04A26C 8004966C 8FAC0098 */ lw $t4, 0x98($sp) +/* 04A270 80049670 35E10003 */ ori $at, $t7, 3 +/* 04A274 80049674 38210002 */ xori $at, $at, 2 +/* 04A278 80049678 44C1F800 */ ctc1 $at, $31 +/* 04A27C 8004967C 34018001 */ li $at, 32769 +/* 04A280 80049680 46009124 */ cvt.w.s $f4, $f18 +/* 04A284 80049684 44182000 */ mfc1 $t8, $f4 +/* 04A288 80049688 44CFF800 */ ctc1 $t7, $31 +/* 04A28C 8004968C 03084823 */ subu $t1, $t8, $t0 +/* 04A290 80049690 312AFFFF */ andi $t2, $t1, 0xffff +/* 04A294 80049694 014B2023 */ subu $a0, $t2, $t3 +/* 04A298 80049698 0081082A */ slt $at, $a0, $at +/* 04A29C 8004969C 14200003 */ bnez $at, .L800496AC +/* 04A2A0 800496A0 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 04A2A4 800496A4 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 04A2A8 800496A8 00812021 */ addu $a0, $a0, $at +.L800496AC: +/* 04A2AC 800496AC 28818000 */ slti $at, $a0, -0x8000 +/* 04A2B0 800496B0 10200002 */ beqz $at, .L800496BC +/* 04A2B4 800496B4 3401FFFF */ li $at, 65535 +/* 04A2B8 800496B8 00812021 */ addu $a0, $a0, $at +.L800496BC: +/* 04A2BC 800496BC 008C0019 */ multu $a0, $t4 +/* 04A2C0 800496C0 00006812 */ mflo $t5 +/* 04A2C4 800496C4 000D7103 */ sra $t6, $t5, 4 +/* 04A2C8 800496C8 006E7821 */ addu $t7, $v1, $t6 +/* 04A2CC 800496CC A4AF01A4 */ sh $t7, 0x1a4($a1) +/* 04A2D0 800496D0 C60E0004 */ lwc1 $f14, 4($s0) +/* 04A2D4 800496D4 C60C0008 */ lwc1 $f12, 8($s0) +/* 04A2D8 800496D8 0C01C1D4 */ jal func_80070750 +/* 04A2DC 800496DC E7A20044 */ swc1 $f2, 0x44($sp) +/* 04A2E0 800496E0 0002CC00 */ sll $t9, $v0, 0x10 +/* 04A2E4 800496E4 0019C403 */ sra $t8, $t9, 0x10 +/* 04A2E8 800496E8 44988000 */ mtc1 $t8, $f16 +/* 04A2EC 800496EC C7A20044 */ lwc1 $f2, 0x44($sp) +/* 04A2F0 800496F0 468082A0 */ cvt.s.w $f10, $f16 +/* 04A2F4 800496F4 3C0A8012 */ lui $t2, %hi(D_8011D538) # $t2, 0x8012 +/* 04A2F8 800496F8 8D4AD538 */ lw $t2, %lo(D_8011D538)($t2) +/* 04A2FC 800496FC 46025182 */ mul.s $f6, $f10, $f2 +/* 04A300 80049700 000A5823 */ negu $t3, $t2 +/* 04A304 80049704 000B6140 */ sll $t4, $t3, 5 +/* 04A308 80049708 86250002 */ lh $a1, 2($s1) +/* 04A30C 8004970C 4448F800 */ cfc1 $t0, $31 +/* 04A310 80049710 30AEFFFF */ andi $t6, $a1, 0xffff +/* 04A314 80049714 35010003 */ ori $at, $t0, 3 +/* 04A318 80049718 38210002 */ xori $at, $at, 2 +/* 04A31C 8004971C 44C1F800 */ ctc1 $at, $31 +/* 04A320 80049720 34018001 */ li $at, 32769 +/* 04A324 80049724 46003224 */ cvt.w.s $f8, $f6 +/* 04A328 80049728 8FAF0098 */ lw $t7, 0x98($sp) +/* 04A32C 8004972C 44094000 */ mfc1 $t1, $f8 +/* 04A330 80049730 44C8F800 */ ctc1 $t0, $31 +/* 04A334 80049734 012C1821 */ addu $v1, $t1, $t4 +/* 04A338 80049738 246303C0 */ addiu $v1, $v1, 0x3c0 +/* 04A33C 8004973C 306DFFFF */ andi $t5, $v1, 0xffff +/* 04A340 80049740 01AE2023 */ subu $a0, $t5, $t6 +/* 04A344 80049744 0081082A */ slt $at, $a0, $at +/* 04A348 80049748 14200003 */ bnez $at, .L80049758 +/* 04A34C 8004974C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 04A350 80049750 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 04A354 80049754 00812021 */ addu $a0, $a0, $at +.L80049758: +/* 04A358 80049758 28818000 */ slti $at, $a0, -0x8000 +/* 04A35C 8004975C 10200002 */ beqz $at, .L80049768 +/* 04A360 80049760 3401FFFF */ li $at, 65535 +/* 04A364 80049764 00812021 */ addu $a0, $a0, $at +.L80049768: +/* 04A368 80049768 008F0019 */ multu $a0, $t7 +/* 04A36C 8004976C 46001006 */ mov.s $f0, $f2 +/* 04A370 80049770 0000C812 */ mflo $t9 +/* 04A374 80049774 0019C103 */ sra $t8, $t9, 4 +/* 04A378 80049778 00B84021 */ addu $t0, $a1, $t8 +/* 04A37C 8004977C A6280002 */ sh $t0, 2($s1) +/* 04A380 80049780 8FBF002C */ lw $ra, 0x2c($sp) +/* 04A384 80049784 8FB10028 */ lw $s1, 0x28($sp) +/* 04A388 80049788 8FB00024 */ lw $s0, 0x24($sp) +/* 04A38C 8004978C 03E00008 */ jr $ra +/* 04A390 80049790 27BD0088 */ addiu $sp, $sp, 0x88 + diff --git a/asm/non_matchings/unknown_043920/func_80049794.s b/asm/non_matchings/unknown_043920/func_80049794.s new file mode 100644 index 00000000..4d82fb7d --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80049794.s @@ -0,0 +1,2823 @@ +glabel func_80049794 +/* 04A394 80049794 27BDFF08 */ addiu $sp, $sp, -0xf8 +/* 04A398 80049798 AFBF0034 */ sw $ra, 0x34($sp) +/* 04A39C 8004979C AFB10030 */ sw $s1, 0x30($sp) +/* 04A3A0 800497A0 AFB0002C */ sw $s0, 0x2c($sp) +/* 04A3A4 800497A4 00E08025 */ move $s0, $a3 +/* 04A3A8 800497A8 00C08825 */ move $s1, $a2 +/* 04A3AC 800497AC E7B50020 */ swc1 $f21, 0x20($sp) +/* 04A3B0 800497B0 E7B40024 */ swc1 $f20, 0x24($sp) +/* 04A3B4 800497B4 AFA400F8 */ sw $a0, 0xf8($sp) +/* 04A3B8 800497B8 0C00384E */ jal func_8000E138 +/* 04A3BC 800497BC AFA500FC */ sw $a1, 0xfc($sp) +/* 04A3C0 800497C0 10400008 */ beqz $v0, .L800497E4 +/* 04A3C4 800497C4 3C01800E */ lui $at, %hi(D_800E64AC) # $at, 0x800e +/* 04A3C8 800497C8 C7A400FC */ lwc1 $f4, 0xfc($sp) +/* 04A3CC 800497CC C42964A8 */ lwc1 $f9, %lo(D_800E64A8)($at) +/* 04A3D0 800497D0 C42864AC */ lwc1 $f8, %lo(D_800E64AC)($at) +/* 04A3D4 800497D4 460021A1 */ cvt.d.s $f6, $f4 +/* 04A3D8 800497D8 46283282 */ mul.d $f10, $f6, $f8 +/* 04A3DC 800497DC 462054A0 */ cvt.s.d $f18, $f10 +/* 04A3E0 800497E0 E7B200FC */ swc1 $f18, 0xfc($sp) +.L800497E4: +/* 04A3E4 800497E4 A3A0005F */ sb $zero, 0x5f($sp) +/* 04A3E8 800497E8 820E01E2 */ lb $t6, 0x1e2($s0) +/* 04A3EC 800497EC 24010004 */ li $at, 4 +/* 04A3F0 800497F0 19C00005 */ blez $t6, .L80049808 +/* 04A3F4 800497F4 00000000 */ nop +/* 04A3F8 800497F8 44807000 */ mtc1 $zero, $f14 +/* 04A3FC 800497FC 00000000 */ nop +/* 04A400 80049800 E60E0084 */ swc1 $f14, 0x84($s0) +/* 04A404 80049804 E60E0088 */ swc1 $f14, 0x88($s0) +.L80049808: +/* 04A408 80049808 920F01FE */ lbu $t7, 0x1fe($s0) +/* 04A40C 8004980C 44807000 */ mtc1 $zero, $f14 +/* 04A410 80049810 15E1000A */ bne $t7, $at, .L8004983C +/* 04A414 80049814 00000000 */ nop +/* 04A418 80049818 821801DB */ lb $t8, 0x1db($s0) +/* 04A41C 8004981C 24040240 */ li $a0, 576 +/* 04A420 80049820 17000006 */ bnez $t8, .L8004983C +/* 04A424 80049824 00000000 */ nop +/* 04A428 80049828 0C000741 */ jal func_80001D04 +/* 04A42C 8004982C 00002825 */ move $a1, $zero +/* 04A430 80049830 24190014 */ li $t9, 20 +/* 04A434 80049834 44807000 */ mtc1 $zero, $f14 +/* 04A438 80049838 A21901DB */ sb $t9, 0x1db($s0) +.L8004983C: +/* 04A43C 8004983C 3C0B8012 */ lui $t3, %hi(D_8011D55C) # $t3, 0x8012 +/* 04A440 80049840 8D6BD55C */ lw $t3, %lo(D_8011D55C)($t3) +/* 04A444 80049844 2409FFFF */ li $t1, -1 +/* 04A448 80049848 112B00A4 */ beq $t1, $t3, .L80049ADC +/* 04A44C 8004984C 00005025 */ move $t2, $zero +/* 04A450 80049850 820C01D7 */ lb $t4, 0x1d7($s0) +/* 04A454 80049854 2401000C */ li $at, 12 +/* 04A458 80049858 118100A0 */ beq $t4, $at, .L80049ADC +/* 04A45C 8004985C 3C028012 */ lui $v0, %hi(D_8011D5AE) # $v0, 0x8012 +/* 04A460 80049860 8042D5AE */ lb $v0, %lo(D_8011D5AE)($v0) +/* 04A464 80049864 3C198012 */ lui $t9, %hi(D_8011D5B0) # $t9, 0x8012 +/* 04A468 80049868 1040009C */ beqz $v0, .L80049ADC +/* 04A46C 8004986C 2443FFFF */ addiu $v1, $v0, -1 +/* 04A470 80049870 0460001A */ bltz $v1, .L800498DC +/* 04A474 80049874 00602025 */ move $a0, $v1 +/* 04A478 80049878 3C0D8012 */ lui $t5, %hi(D_8011D5B0) # $t5, 0x8012 +/* 04A47C 8004987C 8DADD5B0 */ lw $t5, %lo(D_8011D5B0)($t5) +/* 04A480 80049880 00047080 */ sll $t6, $a0, 2 +/* 04A484 80049884 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 04A488 80049888 01AE1021 */ addu $v0, $t5, $t6 +/* 04A48C 8004988C 8C4F0000 */ lw $t7, ($v0) +/* 04A490 80049890 44813000 */ mtc1 $at, $f6 +/* 04A494 80049894 C6240010 */ lwc1 $f4, 0x10($s1) +/* 04A498 80049898 C5E80000 */ lwc1 $f8, ($t7) +/* 04A49C 8004989C 46062000 */ add.s $f0, $f4, $f6 +/* 04A4A0 800498A0 4600403C */ c.lt.s $f8, $f0 +/* 04A4A4 800498A4 00000000 */ nop +/* 04A4A8 800498A8 4500000C */ bc1f .L800498DC +/* 04A4AC 800498AC 00000000 */ nop +.L800498B0: +/* 04A4B0 800498B0 2484FFFF */ addiu $a0, $a0, -1 +/* 04A4B4 800498B4 04800009 */ bltz $a0, .L800498DC +/* 04A4B8 800498B8 2442FFFC */ addiu $v0, $v0, -4 +/* 04A4BC 800498BC 8C580000 */ lw $t8, ($v0) +/* 04A4C0 800498C0 00000000 */ nop +/* 04A4C4 800498C4 C70A0000 */ lwc1 $f10, ($t8) +/* 04A4C8 800498C8 00000000 */ nop +/* 04A4CC 800498CC 4600503C */ c.lt.s $f10, $f0 +/* 04A4D0 800498D0 00000000 */ nop +/* 04A4D4 800498D4 4501FFF6 */ bc1t .L800498B0 +/* 04A4D8 800498D8 00000000 */ nop +.L800498DC: +/* 04A4DC 800498DC 8F39D5B0 */ lw $t9, %lo(D_8011D5B0)($t9) +/* 04A4E0 800498E0 00042880 */ sll $a1, $a0, 2 +/* 04A4E4 800498E4 C62C0010 */ lwc1 $f12, 0x10($s1) +/* 04A4E8 800498E8 14830003 */ bne $a0, $v1, .L800498F8 +/* 04A4EC 800498EC 03251021 */ addu $v0, $t9, $a1 +/* 04A4F0 800498F0 24A5FFFC */ addiu $a1, $a1, -4 +/* 04A4F4 800498F4 2442FFFC */ addiu $v0, $v0, -4 +.L800498F8: +/* 04A4F8 800498F8 8C4B0004 */ lw $t3, 4($v0) +/* 04A4FC 800498FC 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 04A500 80049900 C5620000 */ lwc1 $f2, ($t3) +/* 04A504 80049904 44812000 */ mtc1 $at, $f4 +/* 04A508 80049908 46026481 */ sub.s $f18, $f12, $f2 +/* 04A50C 8004990C 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 04A510 80049910 44813000 */ mtc1 $at, $f6 +/* 04A514 80049914 46049081 */ sub.s $f2, $f18, $f4 +/* 04A518 80049918 3C01420C */ li $at, 0x420C0000 # 35.000000 +/* 04A51C 8004991C 4602303C */ c.lt.s $f6, $f2 +/* 04A520 80049920 44814000 */ mtc1 $at, $f8 +/* 04A524 80049924 45000002 */ bc1f .L80049930 +/* 04A528 80049928 3C014020 */ li $at, 0x40200000 # 2.500000 +/* 04A52C 8004992C A20001E6 */ sb $zero, 0x1e6($s0) +.L80049930: +/* 04A530 80049930 C600002C */ lwc1 $f0, 0x2c($s0) +/* 04A534 80049934 00000000 */ nop +/* 04A538 80049938 46000007 */ neg.s $f0, $f0 +/* 04A53C 8004993C 460E003C */ c.lt.s $f0, $f14 +/* 04A540 80049940 00000000 */ nop +/* 04A544 80049944 45000002 */ bc1f .L80049950 +/* 04A548 80049948 00000000 */ nop +/* 04A54C 8004994C 46007006 */ mov.s $f0, $f14 +.L80049950: +/* 04A550 80049950 4608103C */ c.lt.s $f2, $f8 +/* 04A554 80049954 00000000 */ nop +/* 04A558 80049958 45000009 */ bc1f .L80049980 +/* 04A55C 8004995C 00000000 */ nop +/* 04A560 80049960 44816800 */ mtc1 $at, $f13 +/* 04A564 80049964 44806000 */ mtc1 $zero, $f12 +/* 04A568 80049968 460002A1 */ cvt.d.s $f10, $f0 +/* 04A56C 8004996C 462C503C */ c.lt.d $f10, $f12 +/* 04A570 80049970 00000000 */ nop +/* 04A574 80049974 45000002 */ bc1f .L80049980 +/* 04A578 80049978 00000000 */ nop +/* 04A57C 8004997C 240A0001 */ li $t2, 1 +.L80049980: +/* 04A580 80049980 820C01E6 */ lb $t4, 0x1e6($s0) +/* 04A584 80049984 3C014020 */ li $at, 0x40200000 # 2.500000 +/* 04A588 80049988 44816800 */ mtc1 $at, $f13 +/* 04A58C 8004998C 44806000 */ mtc1 $zero, $f12 +/* 04A590 80049990 1580000D */ bnez $t4, .L800499C8 +/* 04A594 80049994 3C014218 */ li $at, 0x42180000 # 38.000000 +/* 04A598 80049998 44819000 */ mtc1 $at, $f18 +/* 04A59C 8004999C 00000000 */ nop +/* 04A5A0 800499A0 4612103C */ c.lt.s $f2, $f18 +/* 04A5A4 800499A4 00000000 */ nop +/* 04A5A8 800499A8 45000007 */ bc1f .L800499C8 +/* 04A5AC 800499AC 00000000 */ nop +/* 04A5B0 800499B0 46000121 */ cvt.d.s $f4, $f0 +/* 04A5B4 800499B4 4624603E */ c.le.d $f12, $f4 +/* 04A5B8 800499B8 240D0001 */ li $t5, 1 +/* 04A5BC 800499BC 45000002 */ bc1f .L800499C8 +/* 04A5C0 800499C0 00000000 */ nop +/* 04A5C4 800499C4 A20D01E6 */ sb $t5, 0x1e6($s0) +.L800499C8: +/* 04A5C8 800499C8 820201E0 */ lb $v0, 0x1e0($s0) +/* 04A5CC 800499CC 24010001 */ li $at, 1 +/* 04A5D0 800499D0 1041000F */ beq $v0, $at, .L80049A10 +/* 04A5D4 800499D4 00000000 */ nop +/* 04A5D8 800499D8 1122000D */ beq $t1, $v0, .L80049A10 +/* 04A5DC 800499DC 3C0E8012 */ lui $t6, %hi(D_8011D5B0) # $t6, 0x8012 +/* 04A5E0 800499E0 8DCED5B0 */ lw $t6, %lo(D_8011D5B0)($t6) +/* 04A5E4 800499E4 3C01800E */ lui $at, %hi(D_800E64B4) # $at, 0x800e +/* 04A5E8 800499E8 01C57821 */ addu $t7, $t6, $a1 +/* 04A5EC 800499EC 8DF80004 */ lw $t8, 4($t7) +/* 04A5F0 800499F0 C42B64B0 */ lwc1 $f11, %lo(D_800E64B0)($at) +/* 04A5F4 800499F4 C7060008 */ lwc1 $f6, 8($t8) +/* 04A5F8 800499F8 C42A64B4 */ lwc1 $f10, %lo(D_800E64B4)($at) +/* 04A5FC 800499FC 46003221 */ cvt.d.s $f8, $f6 +/* 04A600 80049A00 462A403C */ c.lt.d $f8, $f10 +/* 04A604 80049A04 00000000 */ nop +/* 04A608 80049A08 45000003 */ bc1f .L80049A18 +/* 04A60C 80049A0C 00000000 */ nop +.L80049A10: +/* 04A610 80049A10 A20001E6 */ sb $zero, 0x1e6($s0) +/* 04A614 80049A14 00005025 */ move $t2, $zero +.L80049A18: +/* 04A618 80049A18 821901E6 */ lb $t9, 0x1e6($s0) +/* 04A61C 80049A1C 00000000 */ nop +/* 04A620 80049A20 1320002F */ beqz $t9, .L80049AE0 +/* 04A624 80049A24 3C014100 */ lui $at, 0x4100 +/* 04A628 80049A28 460004A1 */ cvt.d.s $f18, $f0 +/* 04A62C 80049A2C 462C903C */ c.lt.d $f18, $f12 +/* 04A630 80049A30 44802000 */ mtc1 $zero, $f4 +/* 04A634 80049A34 45010007 */ bc1t .L80049A54 +/* 04A638 80049A38 3C088012 */ lui $t0, %hi(D_8011D538) # $t0, 0x8012 +/* 04A63C 80049A3C 2508D538 */ addiu $t0, %lo(D_8011D538) # addiu $t0, $t0, -0x2ac8 +/* 04A640 80049A40 8D0B0000 */ lw $t3, ($t0) +/* 04A644 80049A44 00000000 */ nop +/* 04A648 80049A48 2961FFF6 */ slti $at, $t3, -0xa +/* 04A64C 80049A4C 10200005 */ beqz $at, .L80049A64 +/* 04A650 80049A50 3C014100 */ lui $at, 0x4100 +.L80049A54: +/* 04A654 80049A54 3C088012 */ lui $t0, %hi(D_8011D538) # $t0, 0x8012 +/* 04A658 80049A58 2508D538 */ addiu $t0, %lo(D_8011D538) # addiu $t0, $t0, -0x2ac8 +/* 04A65C 80049A5C A20001E6 */ sb $zero, 0x1e6($s0) +/* 04A660 80049A60 3C014100 */ li $at, 0x41000000 # 8.000000 +.L80049A64: +/* 04A664 80049A64 44818000 */ mtc1 $at, $f16 +/* 04A668 80049A68 3C014010 */ li $at, 0x40100000 # 2.250000 +/* 04A66C 80049A6C 46100001 */ sub.s $f0, $f0, $f16 +/* 04A670 80049A70 44812800 */ mtc1 $at, $f5 +/* 04A674 80049A74 460001A1 */ cvt.d.s $f6, $f0 +/* 04A678 80049A78 4626203C */ c.lt.d $f4, $f6 +/* 04A67C 80049A7C C62C0010 */ lwc1 $f12, 0x10($s1) +/* 04A680 80049A80 45000003 */ bc1f .L80049A90 +/* 04A684 80049A84 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 04A688 80049A88 44810000 */ mtc1 $at, $f0 +/* 04A68C 80049A8C 00000000 */ nop +.L80049A90: +/* 04A690 80049A90 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 04A694 80049A94 44814000 */ mtc1 $at, $f8 +/* 04A698 80049A98 3C014218 */ li $at, 0x42180000 # 38.000000 +/* 04A69C 80049A9C 46080003 */ div.s $f0, $f0, $f8 +/* 04A6A0 80049AA0 44815000 */ mtc1 $at, $f10 +/* 04A6A4 80049AA4 C7A400FC */ lwc1 $f4, 0xfc($sp) +/* 04A6A8 80049AA8 46025481 */ sub.s $f18, $f10, $f2 +/* 04A6AC 80049AAC 46049182 */ mul.s $f6, $f18, $f4 +/* 04A6B0 80049AB0 00000000 */ nop +/* 04A6B4 80049AB4 46003202 */ mul.s $f8, $f6, $f0 +/* 04A6B8 80049AB8 00000000 */ nop +/* 04A6BC 80049ABC 46104283 */ div.s $f10, $f8, $f16 +/* 04A6C0 80049AC0 460A6480 */ add.s $f18, $f12, $f10 +/* 04A6C4 80049AC4 E6320010 */ swc1 $f18, 0x10($s1) +/* 04A6C8 80049AC8 8D020000 */ lw $v0, ($t0) +/* 04A6CC 80049ACC 00000000 */ nop +/* 04A6D0 80049AD0 18400002 */ blez $v0, .L80049ADC +/* 04A6D4 80049AD4 00026043 */ sra $t4, $v0, 1 +/* 04A6D8 80049AD8 AD0C0000 */ sw $t4, ($t0) +.L80049ADC: +/* 04A6DC 80049ADC 3C014100 */ li $at, 0x41000000 # 8.000000 +.L80049AE0: +/* 04A6E0 80049AE0 44818000 */ mtc1 $at, $f16 +/* 04A6E4 80049AE4 3C018012 */ lui $at, %hi(D_8011D550) # $at, 0x8012 +/* 04A6E8 80049AE8 A420D550 */ sh $zero, %lo(D_8011D550)($at) +/* 04A6EC 80049AEC 3C018012 */ lui $at, %hi(D_8011D554) # $at, 0x8012 +/* 04A6F0 80049AF0 AC20D554 */ sw $zero, %lo(D_8011D554)($at) +/* 04A6F4 80049AF4 3C018012 */ lui $at, %hi(D_8011D558) # $at, 0x8012 +/* 04A6F8 80049AF8 AC20D558 */ sw $zero, %lo(D_8011D558)($at) +/* 04A6FC 80049AFC C624000C */ lwc1 $f4, 0xc($s1) +/* 04A700 80049B00 3C088012 */ lui $t0, %hi(D_8011D538) # $t0, 0x8012 +/* 04A704 80049B04 E7A400E8 */ swc1 $f4, 0xe8($sp) +/* 04A708 80049B08 C6260010 */ lwc1 $f6, 0x10($s1) +/* 04A70C 80049B0C 2508D538 */ addiu $t0, %lo(D_8011D538) # addiu $t0, $t0, -0x2ac8 +/* 04A710 80049B10 E7A600E4 */ swc1 $f6, 0xe4($sp) +/* 04A714 80049B14 C6280014 */ lwc1 $f8, 0x14($s1) +/* 04A718 80049B18 3C0E8012 */ lui $t6, %hi(D_8011D534) # $t6, 0x8012 +/* 04A71C 80049B1C E7A800E0 */ swc1 $f8, 0xe0($sp) +/* 04A720 80049B20 820D01E0 */ lb $t5, 0x1e0($s0) +/* 04A724 80049B24 00000000 */ nop +/* 04A728 80049B28 11A00004 */ beqz $t5, .L80049B3C +/* 04A72C 80049B2C 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 04A730 80049B30 44811000 */ mtc1 $at, $f2 +/* 04A734 80049B34 10000003 */ b .L80049B44 +/* 04A738 80049B38 820501E1 */ lb $a1, 0x1e1($s0) +.L80049B3C: +/* 04A73C 80049B3C 46008086 */ mov.s $f2, $f16 +/* 04A740 80049B40 820501E1 */ lb $a1, 0x1e1($s0) +.L80049B44: +/* 04A744 80049B44 8DCED534 */ lw $t6, %lo(D_8011D534)($t6) +/* 04A748 80049B48 C7A400FC */ lwc1 $f4, 0xfc($sp) +/* 04A74C 80049B4C 01C51023 */ subu $v0, $t6, $a1 +/* 04A750 80049B50 44825000 */ mtc1 $v0, $f10 +/* 04A754 80049B54 00000000 */ nop +/* 04A758 80049B58 468054A0 */ cvt.s.w $f18, $f10 +/* 04A75C 80049B5C 46049182 */ mul.s $f6, $f18, $f4 +/* 04A760 80049B60 00000000 */ nop +/* 04A764 80049B64 46023203 */ div.s $f8, $f6, $f2 +/* 04A768 80049B68 444FF800 */ cfc1 $t7, $31 +/* 04A76C 80049B6C 00000000 */ nop +/* 04A770 80049B70 35E10003 */ ori $at, $t7, 3 +/* 04A774 80049B74 38210002 */ xori $at, $at, 2 +/* 04A778 80049B78 44C1F800 */ ctc1 $at, $31 +/* 04A77C 80049B7C 00000000 */ nop +/* 04A780 80049B80 460042A4 */ cvt.w.s $f10, $f8 +/* 04A784 80049B84 44045000 */ mfc1 $a0, $f10 +/* 04A788 80049B88 44CFF800 */ ctc1 $t7, $31 +/* 04A78C 80049B8C 10400009 */ beqz $v0, .L80049BB4 +/* 04A790 80049B90 00801825 */ move $v1, $a0 +/* 04A794 80049B94 14800008 */ bnez $a0, .L80049BB8 +/* 04A798 80049B98 00A3C021 */ addu $t8, $a1, $v1 +/* 04A79C 80049B9C 18400002 */ blez $v0, .L80049BA8 +/* 04A7A0 80049BA0 00000000 */ nop +/* 04A7A4 80049BA4 24030001 */ li $v1, 1 +.L80049BA8: +/* 04A7A8 80049BA8 04410003 */ bgez $v0, .L80049BB8 +/* 04A7AC 80049BAC 00A3C021 */ addu $t8, $a1, $v1 +/* 04A7B0 80049BB0 01201825 */ move $v1, $t1 +.L80049BB4: +/* 04A7B4 80049BB4 00A3C021 */ addu $t8, $a1, $v1 +.L80049BB8: +/* 04A7B8 80049BB8 A21801E1 */ sb $t8, 0x1e1($s0) +/* 04A7BC 80049BBC 8D190000 */ lw $t9, ($t0) +/* 04A7C0 80049BC0 820701E8 */ lb $a3, 0x1e8($s0) +/* 04A7C4 80049BC4 C7A600FC */ lwc1 $f6, 0xfc($sp) +/* 04A7C8 80049BC8 03271023 */ subu $v0, $t9, $a3 +/* 04A7CC 80049BCC 44829000 */ mtc1 $v0, $f18 +/* 04A7D0 80049BD0 3C013FB0 */ li $at, 0x3FB00000 # 1.375000 +/* 04A7D4 80049BD4 46809120 */ cvt.s.w $f4, $f18 +/* 04A7D8 80049BD8 44809000 */ mtc1 $zero, $f18 +/* 04A7DC 80049BDC 44819800 */ mtc1 $at, $f19 +/* 04A7E0 80049BE0 46062202 */ mul.s $f8, $f4, $f6 +/* 04A7E4 80049BE4 02002825 */ move $a1, $s0 +/* 04A7E8 80049BE8 460042A1 */ cvt.d.s $f10, $f8 +/* 04A7EC 80049BEC 46325102 */ mul.d $f4, $f10, $f18 +/* 04A7F0 80049BF0 444BF800 */ cfc1 $t3, $31 +/* 04A7F4 80049BF4 00000000 */ nop +/* 04A7F8 80049BF8 35610003 */ ori $at, $t3, 3 +/* 04A7FC 80049BFC 38210002 */ xori $at, $at, 2 +/* 04A800 80049C00 44C1F800 */ ctc1 $at, $31 +/* 04A804 80049C04 00000000 */ nop +/* 04A808 80049C08 462021A4 */ cvt.w.d $f6, $f4 +/* 04A80C 80049C0C 44043000 */ mfc1 $a0, $f6 +/* 04A810 80049C10 44CBF800 */ ctc1 $t3, $31 +/* 04A814 80049C14 10400009 */ beqz $v0, .L80049C3C +/* 04A818 80049C18 00801825 */ move $v1, $a0 +/* 04A81C 80049C1C 14800008 */ bnez $a0, .L80049C40 +/* 04A820 80049C20 00E36021 */ addu $t4, $a3, $v1 +/* 04A824 80049C24 18400002 */ blez $v0, .L80049C30 +/* 04A828 80049C28 00000000 */ nop +/* 04A82C 80049C2C 24030001 */ li $v1, 1 +.L80049C30: +/* 04A830 80049C30 04410003 */ bgez $v0, .L80049C40 +/* 04A834 80049C34 00E36021 */ addu $t4, $a3, $v1 +/* 04A838 80049C38 01201825 */ move $v1, $t1 +.L80049C3C: +/* 04A83C 80049C3C 00E36021 */ addu $t4, $a3, $v1 +.L80049C40: +/* 04A840 80049C40 A20C01E8 */ sb $t4, 0x1e8($s0) +/* 04A844 80049C44 8FA600F8 */ lw $a2, 0xf8($sp) +/* 04A848 80049C48 A3AA00A2 */ sb $t2, 0xa2($sp) +/* 04A84C 80049C4C 0C0157B0 */ jal func_80055EC0 +/* 04A850 80049C50 02202025 */ move $a0, $s1 +/* 04A854 80049C54 02202025 */ move $a0, $s1 +/* 04A858 80049C58 0C014D71 */ jal func_800535C4 +/* 04A85C 80049C5C 02002825 */ move $a1, $s0 +/* 04A860 80049C60 02202025 */ move $a0, $s1 +/* 04A864 80049C64 0C013050 */ jal func_8004C140 +/* 04A868 80049C68 02002825 */ move $a1, $s0 +/* 04A86C 80049C6C 3C0D8012 */ lui $t5, %hi(D_8011D55C) # $t5, 0x8012 +/* 04A870 80049C70 8DADD55C */ lw $t5, %lo(D_8011D55C)($t5) +/* 04A874 80049C74 2401FFFF */ li $at, -1 +/* 04A878 80049C78 11A10007 */ beq $t5, $at, .L80049C98 +/* 04A87C 80049C7C 00000000 */ nop +/* 04A880 80049C80 8FA600F8 */ lw $a2, 0xf8($sp) +/* 04A884 80049C84 02202025 */ move $a0, $s1 +/* 04A888 80049C88 0C014871 */ jal func_800521C4 +/* 04A88C 80049C8C 02002825 */ move $a1, $s0 +/* 04A890 80049C90 10000003 */ b .L80049CA0 +/* 04A894 80049C94 00000000 */ nop +.L80049C98: +/* 04A898 80049C98 0C0148D3 */ jal func_8005234C +/* 04A89C 80049C9C 02002025 */ move $a0, $s0 +.L80049CA0: +/* 04A8A0 80049CA0 3C0E8012 */ lui $t6, %hi(D_8011D528) # $t6, 0x8012 +/* 04A8A4 80049CA4 8DCED528 */ lw $t6, %lo(D_8011D528)($t6) +/* 04A8A8 80049CA8 3C198012 */ lui $t9, %hi(D_8011D528) # $t9, 0x8012 +/* 04A8AC 80049CAC 31CF8000 */ andi $t7, $t6, 0x8000 +/* 04A8B0 80049CB0 11E00019 */ beqz $t7, .L80049D18 +/* 04A8B4 80049CB4 3C01800E */ lui $at, %hi(D_800E64BC) # $at, 0x800e +/* 04A8B8 80049CB8 C7A800FC */ lwc1 $f8, 0xfc($sp) +/* 04A8BC 80049CBC C42564B8 */ lwc1 $f5, %lo(D_800E64B8)($at) +/* 04A8C0 80049CC0 C42464BC */ lwc1 $f4, %lo(D_800E64BC)($at) +/* 04A8C4 80049CC4 46004021 */ cvt.d.s $f0, $f8 +/* 04A8C8 80049CC8 46240182 */ mul.d $f6, $f0, $f4 +/* 04A8CC 80049CCC C60A00B4 */ lwc1 $f10, 0xb4($s0) +/* 04A8D0 80049CD0 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 04A8D4 80049CD4 460054A1 */ cvt.d.s $f18, $f10 +/* 04A8D8 80049CD8 44812800 */ mtc1 $at, $f5 +/* 04A8DC 80049CDC 46269200 */ add.d $f8, $f18, $f6 +/* 04A8E0 80049CE0 44802000 */ mtc1 $zero, $f4 +/* 04A8E4 80049CE4 462042A0 */ cvt.s.d $f10, $f8 +/* 04A8E8 80049CE8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 04A8EC 80049CEC E60A00B4 */ swc1 $f10, 0xb4($s0) +/* 04A8F0 80049CF0 C61200B4 */ lwc1 $f18, 0xb4($s0) +/* 04A8F4 80049CF4 00000000 */ nop +/* 04A8F8 80049CF8 460091A1 */ cvt.d.s $f6, $f18 +/* 04A8FC 80049CFC 4626203C */ c.lt.d $f4, $f6 +/* 04A900 80049D00 00000000 */ nop +/* 04A904 80049D04 4500001A */ bc1f .L80049D70 +/* 04A908 80049D08 00000000 */ nop +/* 04A90C 80049D0C 44814000 */ mtc1 $at, $f8 +/* 04A910 80049D10 10000017 */ b .L80049D70 +/* 04A914 80049D14 E60800B4 */ swc1 $f8, 0xb4($s0) +.L80049D18: +/* 04A918 80049D18 3C01800E */ lui $at, %hi(D_800E64C4) # $at, 0x800e +/* 04A91C 80049D1C C7AA00FC */ lwc1 $f10, 0xfc($sp) +/* 04A920 80049D20 C42764C0 */ lwc1 $f7, %lo(D_800E64C0)($at) +/* 04A924 80049D24 C42664C4 */ lwc1 $f6, %lo(D_800E64C4)($at) +/* 04A928 80049D28 46005021 */ cvt.d.s $f0, $f10 +/* 04A92C 80049D2C 46260202 */ mul.d $f8, $f0, $f6 +/* 04A930 80049D30 C61200B4 */ lwc1 $f18, 0xb4($s0) +/* 04A934 80049D34 00000000 */ nop +/* 04A938 80049D38 46009121 */ cvt.d.s $f4, $f18 +/* 04A93C 80049D3C 46282281 */ sub.d $f10, $f4, $f8 +/* 04A940 80049D40 44802000 */ mtc1 $zero, $f4 +/* 04A944 80049D44 462054A0 */ cvt.s.d $f18, $f10 +/* 04A948 80049D48 E61200B4 */ swc1 $f18, 0xb4($s0) +/* 04A94C 80049D4C C60600B4 */ lwc1 $f6, 0xb4($s0) +/* 04A950 80049D50 00000000 */ nop +/* 04A954 80049D54 4604303C */ c.lt.s $f6, $f4 +/* 04A958 80049D58 00000000 */ nop +/* 04A95C 80049D5C 45000004 */ bc1f .L80049D70 +/* 04A960 80049D60 00000000 */ nop +/* 04A964 80049D64 44804000 */ mtc1 $zero, $f8 +/* 04A968 80049D68 00000000 */ nop +/* 04A96C 80049D6C E60800B4 */ swc1 $f8, 0xb4($s0) +.L80049D70: +/* 04A970 80049D70 8E180108 */ lw $t8, 0x108($s0) +/* 04A974 80049D74 00000000 */ nop +/* 04A978 80049D78 13000004 */ beqz $t8, .L80049D8C +/* 04A97C 80049D7C 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 04A980 80049D80 44815000 */ mtc1 $at, $f10 +/* 04A984 80049D84 00000000 */ nop +/* 04A988 80049D88 E60A00B4 */ swc1 $f10, 0xb4($s0) +.L80049D8C: +/* 04A98C 80049D8C 8F39D528 */ lw $t9, %lo(D_8011D528)($t9) +/* 04A990 80049D90 C61200B4 */ lwc1 $f18, 0xb4($s0) +/* 04A994 80049D94 332B4000 */ andi $t3, $t9, 0x4000 +/* 04A998 80049D98 11600038 */ beqz $t3, .L80049E7C +/* 04A99C 80049D9C E7B200C8 */ swc1 $f18, 0xc8($sp) +/* 04A9A0 80049DA0 3C0C8012 */ lui $t4, %hi(D_8011D538) # $t4, 0x8012 +/* 04A9A4 80049DA4 8D8CD538 */ lw $t4, %lo(D_8011D538)($t4) +/* 04A9A8 80049DA8 00000000 */ nop +/* 04A9AC 80049DAC 2981FFD8 */ slti $at, $t4, -0x28 +/* 04A9B0 80049DB0 14200007 */ bnez $at, .L80049DD0 +/* 04A9B4 80049DB4 00000000 */ nop +/* 04A9B8 80049DB8 44806000 */ mtc1 $zero, $f12 +/* 04A9BC 80049DBC C606002C */ lwc1 $f6, 0x2c($s0) +/* 04A9C0 80049DC0 00000000 */ nop +/* 04A9C4 80049DC4 460C303C */ c.lt.s $f6, $f12 +/* 04A9C8 80049DC8 00000000 */ nop +/* 04A9CC 80049DCC 4500002B */ bc1f .L80049E7C +.L80049DD0: +/* 04A9D0 80049DD0 3C01800E */ lui $at, %hi(D_800E64CC) # $at, 0x800e +/* 04A9D4 80049DD4 C42B64C8 */ lwc1 $f11, %lo(D_800E64C8)($at) +/* 04A9D8 80049DD8 C42A64CC */ lwc1 $f10, %lo(D_800E64CC)($at) +/* 04A9DC 80049DDC C60400B8 */ lwc1 $f4, 0xb8($s0) +/* 04A9E0 80049DE0 462A0482 */ mul.d $f18, $f0, $f10 +/* 04A9E4 80049DE4 46002221 */ cvt.d.s $f8, $f4 +/* 04A9E8 80049DE8 3C01800E */ lui $at, %hi(D_800E64D0) # $at, 0x800e +/* 04A9EC 80049DEC 44806000 */ mtc1 $zero, $f12 +/* 04A9F0 80049DF0 46324180 */ add.d $f6, $f8, $f18 +/* 04A9F4 80049DF4 46203120 */ cvt.s.d $f4, $f6 +/* 04A9F8 80049DF8 E60400B8 */ swc1 $f4, 0xb8($s0) +/* 04A9FC 80049DFC C60800B8 */ lwc1 $f8, 0xb8($s0) +/* 04AA00 80049E00 C42A64D4 */ lwc1 $f10, %lo(D_800E64D4)($at) +/* 04AA04 80049E04 C42B64D0 */ lwc1 $f11, %lo(D_800E64D0)($at) +/* 04AA08 80049E08 460044A1 */ cvt.d.s $f18, $f8 +/* 04AA0C 80049E0C 4632503C */ c.lt.d $f10, $f18 +/* 04AA10 80049E10 44805000 */ mtc1 $zero, $f10 +/* 04AA14 80049E14 45000004 */ bc1f .L80049E28 +/* 04AA18 80049E18 3C01800E */ lui $at, %hi(D_800E64D8) # $at, 0x800e +/* 04AA1C 80049E1C C42664D8 */ lwc1 $f6, %lo(D_800E64D8)($at) +/* 04AA20 80049E20 00000000 */ nop +/* 04AA24 80049E24 E60600B8 */ swc1 $f6, 0xb8($s0) +.L80049E28: +/* 04AA28 80049E28 C604002C */ lwc1 $f4, 0x2c($s0) +/* 04AA2C 80049E2C 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 04AA30 80049E30 44815800 */ mtc1 $at, $f11 +/* 04AA34 80049E34 46002221 */ cvt.d.s $f8, $f4 +/* 04AA38 80049E38 462A403C */ c.lt.d $f8, $f10 +/* 04AA3C 80049E3C 00000000 */ nop +/* 04AA40 80049E40 4500000B */ bc1f .L80049E70 +/* 04AA44 80049E44 00000000 */ nop +/* 04AA48 80049E48 820D01E2 */ lb $t5, 0x1e2($s0) +/* 04AA4C 80049E4C 00000000 */ nop +/* 04AA50 80049E50 29A10002 */ slti $at, $t5, 2 +/* 04AA54 80049E54 14200006 */ bnez $at, .L80049E70 +/* 04AA58 80049E58 00000000 */ nop +/* 04AA5C 80049E5C 86040000 */ lh $a0, ($s0) +/* 04AA60 80049E60 0C01C8D2 */ jal func_80072348 +/* 04AA64 80049E64 24050003 */ li $a1, 3 +/* 04AA68 80049E68 44806000 */ mtc1 $zero, $f12 +/* 04AA6C 80049E6C 00000000 */ nop +.L80049E70: +/* 04AA70 80049E70 C60200B8 */ lwc1 $f2, 0xb8($s0) +/* 04AA74 80049E74 10000015 */ b .L80049ECC +/* 04AA78 80049E78 E7A200C4 */ swc1 $f2, 0xc4($sp) +.L80049E7C: +/* 04AA7C 80049E7C 3C01800E */ lui $at, %hi(D_800E64E4) # $at, 0x800e +/* 04AA80 80049E80 C42564E0 */ lwc1 $f5, %lo(D_800E64E0)($at) +/* 04AA84 80049E84 C42464E4 */ lwc1 $f4, %lo(D_800E64E4)($at) +/* 04AA88 80049E88 C61200B8 */ lwc1 $f18, 0xb8($s0) +/* 04AA8C 80049E8C 46240202 */ mul.d $f8, $f0, $f4 +/* 04AA90 80049E90 460091A1 */ cvt.d.s $f6, $f18 +/* 04AA94 80049E94 44806000 */ mtc1 $zero, $f12 +/* 04AA98 80049E98 46283281 */ sub.d $f10, $f6, $f8 +/* 04AA9C 80049E9C 462054A0 */ cvt.s.d $f18, $f10 +/* 04AAA0 80049EA0 E61200B8 */ swc1 $f18, 0xb8($s0) +/* 04AAA4 80049EA4 C60200B8 */ lwc1 $f2, 0xb8($s0) +/* 04AAA8 80049EA8 00000000 */ nop +/* 04AAAC 80049EAC 460C103C */ c.lt.s $f2, $f12 +/* 04AAB0 80049EB0 00000000 */ nop +/* 04AAB4 80049EB4 45000004 */ bc1f .L80049EC8 +/* 04AAB8 80049EB8 00000000 */ nop +/* 04AABC 80049EBC E60C00B8 */ swc1 $f12, 0xb8($s0) +/* 04AAC0 80049EC0 C60200B8 */ lwc1 $f2, 0xb8($s0) +/* 04AAC4 80049EC4 00000000 */ nop +.L80049EC8: +/* 04AAC8 80049EC8 E7A200C4 */ swc1 $f2, 0xc4($sp) +.L80049ECC: +/* 04AACC 80049ECC 862E0000 */ lh $t6, ($s1) +/* 04AAD0 80049ED0 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 +/* 04AAD4 80049ED4 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 +/* 04AAD8 80049ED8 A4AE0000 */ sh $t6, ($a1) +/* 04AADC 80049EDC 862F0002 */ lh $t7, 2($s1) +/* 04AAE0 80049EE0 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 04AAE4 80049EE4 44812000 */ mtc1 $at, $f4 +/* 04AAE8 80049EE8 A4A00004 */ sh $zero, 4($a1) +/* 04AAEC 80049EEC E4AC000C */ swc1 $f12, 0xc($a1) +/* 04AAF0 80049EF0 E4AC0010 */ swc1 $f12, 0x10($a1) +/* 04AAF4 80049EF4 E4AC0014 */ swc1 $f12, 0x14($a1) +/* 04AAF8 80049EF8 27A40060 */ addiu $a0, $sp, 0x60 +/* 04AAFC 80049EFC A4AF0002 */ sh $t7, 2($a1) +/* 04AB00 80049F00 0C01BF0C */ jal func_8006FC30 +/* 04AB04 80049F04 E4A40008 */ swc1 $f4, 8($a1) +/* 04AB08 80049F08 44800000 */ mtc1 $zero, $f0 +/* 04AB0C 80049F0C 26180038 */ addiu $t8, $s0, 0x38 +/* 04AB10 80049F10 2619003C */ addiu $t9, $s0, 0x3c +/* 04AB14 80049F14 260B0040 */ addiu $t3, $s0, 0x40 +/* 04AB18 80049F18 44050000 */ mfc1 $a1, $f0 +/* 04AB1C 80049F1C 44060000 */ mfc1 $a2, $f0 +/* 04AB20 80049F20 AFAB0018 */ sw $t3, 0x18($sp) +/* 04AB24 80049F24 AFB90014 */ sw $t9, 0x14($sp) +/* 04AB28 80049F28 AFB80010 */ sw $t8, 0x10($sp) +/* 04AB2C 80049F2C 27A40060 */ addiu $a0, $sp, 0x60 +/* 04AB30 80049F30 0C01BD93 */ jal func_8006F64C +/* 04AB34 80049F34 3C073F80 */ lui $a3, 0x3f80 +/* 04AB38 80049F38 44800000 */ mtc1 $zero, $f0 +/* 04AB3C 80049F3C 260C0050 */ addiu $t4, $s0, 0x50 +/* 04AB40 80049F40 260D0054 */ addiu $t5, $s0, 0x54 +/* 04AB44 80049F44 260E0058 */ addiu $t6, $s0, 0x58 +/* 04AB48 80049F48 44060000 */ mfc1 $a2, $f0 +/* 04AB4C 80049F4C 44070000 */ mfc1 $a3, $f0 +/* 04AB50 80049F50 AFAE0018 */ sw $t6, 0x18($sp) +/* 04AB54 80049F54 AFAD0014 */ sw $t5, 0x14($sp) +/* 04AB58 80049F58 AFAC0010 */ sw $t4, 0x10($sp) +/* 04AB5C 80049F5C 27A40060 */ addiu $a0, $sp, 0x60 +/* 04AB60 80049F60 0C01BD93 */ jal func_8006F64C +/* 04AB64 80049F64 3C053F80 */ lui $a1, 0x3f80 +/* 04AB68 80049F68 44800000 */ mtc1 $zero, $f0 +/* 04AB6C 80049F6C 260F0044 */ addiu $t7, $s0, 0x44 +/* 04AB70 80049F70 26180048 */ addiu $t8, $s0, 0x48 +/* 04AB74 80049F74 2619004C */ addiu $t9, $s0, 0x4c +/* 04AB78 80049F78 44050000 */ mfc1 $a1, $f0 +/* 04AB7C 80049F7C 44070000 */ mfc1 $a3, $f0 +/* 04AB80 80049F80 AFB90018 */ sw $t9, 0x18($sp) +/* 04AB84 80049F84 AFB80014 */ sw $t8, 0x14($sp) +/* 04AB88 80049F88 AFAF0010 */ sw $t7, 0x10($sp) +/* 04AB8C 80049F8C 27A40060 */ addiu $a0, $sp, 0x60 +/* 04AB90 80049F90 0C01BD93 */ jal func_8006F64C +/* 04AB94 80049F94 3C063F80 */ lui $a2, 0x3f80 +/* 04AB98 80049F98 8E0B0148 */ lw $t3, 0x148($s0) +/* 04AB9C 80049F9C 00000000 */ nop +/* 04ABA0 80049FA0 15600005 */ bnez $t3, .L80049FB8 +/* 04ABA4 80049FA4 00000000 */ nop +/* 04ABA8 80049FA8 8FA400F8 */ lw $a0, 0xf8($sp) +/* 04ABAC 80049FAC 02202825 */ move $a1, $s1 +/* 04ABB0 80049FB0 0C013028 */ jal func_8004C0A0 +/* 04ABB4 80049FB4 02003025 */ move $a2, $s0 +.L80049FB8: +/* 04ABB8 80049FB8 86020000 */ lh $v0, ($s0) +/* 04ABBC 80049FBC 2403FFFF */ li $v1, -1 +/* 04ABC0 80049FC0 14620008 */ bne $v1, $v0, .L80049FE4 +/* 04ABC4 80049FC4 3C0C8012 */ lui $t4, %hi(D_8011D55C) # $t4, 0x8012 +/* 04ABC8 80049FC8 8D8CD55C */ lw $t4, %lo(D_8011D55C)($t4) +/* 04ABCC 80049FCC 3C01800E */ lui $at, %hi(D_800E64E8) # $at, 0x800e +/* 04ABD0 80049FD0 106C0004 */ beq $v1, $t4, .L80049FE4 +/* 04ABD4 80049FD4 00000000 */ nop +/* 04ABD8 80049FD8 C42664E8 */ lwc1 $f6, %lo(D_800E64E8)($at) +/* 04ABDC 80049FDC 3C018012 */ lui $at, %hi(D_8011D570) # $at, 0x8012 +/* 04ABE0 80049FE0 E426D570 */ swc1 $f6, %lo(D_8011D570)($at) +.L80049FE4: +/* 04ABE4 80049FE4 C620001C */ lwc1 $f0, 0x1c($s1) +/* 04ABE8 80049FE8 C6220024 */ lwc1 $f2, 0x24($s1) +/* 04ABEC 80049FEC 46000202 */ mul.s $f8, $f0, $f0 +/* 04ABF0 80049FF0 C62E0020 */ lwc1 $f14, 0x20($s1) +/* 04ABF4 80049FF4 46021282 */ mul.s $f10, $f2, $f2 +/* 04ABF8 80049FF8 00000000 */ nop +/* 04ABFC 80049FFC 460E7102 */ mul.s $f4, $f14, $f14 +/* 04AC00 8004A000 460A4480 */ add.s $f18, $f8, $f10 +/* 04AC04 8004A004 0C0326B4 */ jal sqrtf +/* 04AC08 8004A008 46049300 */ add.s $f12, $f18, $f4 +/* 04AC0C 8004A00C 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 04AC10 8004A010 44817800 */ mtc1 $at, $f15 +/* 04AC14 8004A014 44807000 */ mtc1 $zero, $f14 +/* 04AC18 8004A018 460001A1 */ cvt.d.s $f6, $f0 +/* 04AC1C 8004A01C 820D01D6 */ lb $t5, 0x1d6($s0) +/* 04AC20 8004A020 462E3201 */ sub.d $f8, $f6, $f14 +/* 04AC24 8004A024 29A10005 */ slti $at, $t5, 5 +/* 04AC28 8004A028 462040A0 */ cvt.s.d $f2, $f8 +/* 04AC2C 8004A02C 14200009 */ bnez $at, .L8004A054 +/* 04AC30 8004A030 46001506 */ mov.s $f20, $f2 +/* 04AC34 8004A034 460012A1 */ cvt.d.s $f10, $f2 +/* 04AC38 8004A038 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 04AC3C 8004A03C 44812800 */ mtc1 $at, $f5 +/* 04AC40 8004A040 462E5481 */ sub.d $f18, $f10, $f14 +/* 04AC44 8004A044 44802000 */ mtc1 $zero, $f4 +/* 04AC48 8004A048 00000000 */ nop +/* 04AC4C 8004A04C 46249182 */ mul.d $f6, $f18, $f4 +/* 04AC50 8004A050 46203520 */ cvt.s.d $f20, $f6 +.L8004A054: +/* 04AC54 8004A054 44806000 */ mtc1 $zero, $f12 +/* 04AC58 8004A058 3C014010 */ li $at, 0x40100000 # 2.250000 +/* 04AC5C 8004A05C 460CA03C */ c.lt.s $f20, $f12 +/* 04AC60 8004A060 44814800 */ mtc1 $at, $f9 +/* 04AC64 8004A064 45000002 */ bc1f .L8004A070 +/* 04AC68 8004A068 3C0B8012 */ lui $t3, %hi(D_8011D564) # $t3, 0x8012 +/* 04AC6C 8004A06C 46006506 */ mov.s $f20, $f12 +.L8004A070: +/* 04AC70 8004A070 44804000 */ mtc1 $zero, $f8 +/* 04AC74 8004A074 4600A021 */ cvt.d.s $f0, $f20 +/* 04AC78 8004A078 4620403C */ c.lt.d $f8, $f0 +/* 04AC7C 8004A07C 44805000 */ mtc1 $zero, $f10 +/* 04AC80 8004A080 45000004 */ bc1f .L8004A094 +/* 04AC84 8004A084 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 04AC88 8004A088 4481A000 */ mtc1 $at, $f20 +/* 04AC8C 8004A08C 00000000 */ nop +/* 04AC90 8004A090 4600A021 */ cvt.d.s $f0, $f20 +.L8004A094: +/* 04AC94 8004A094 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 04AC98 8004A098 44815800 */ mtc1 $at, $f11 +/* 04AC9C 8004A09C 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 04ACA0 8004A0A0 44819800 */ mtc1 $at, $f19 +/* 04ACA4 8004A0A4 44809000 */ mtc1 $zero, $f18 +/* 04ACA8 8004A0A8 3C018012 */ lui $at, %hi(D_8011D4F0) # $at, 0x8012 +/* 04ACAC 8004A0AC 46320102 */ mul.d $f4, $f0, $f18 +/* 04ACB0 8004A0B0 C428D4F0 */ lwc1 $f8, %lo(D_8011D4F0)($at) +/* 04ACB4 8004A0B4 3C014049 */ li $at, 0x40490000 # 3.140625 +/* 04ACB8 8004A0B8 A3A000A3 */ sb $zero, 0xa3($sp) +/* 04ACBC 8004A0BC 820201E0 */ lb $v0, 0x1e0($s0) +/* 04ACC0 8004A0C0 46245181 */ sub.d $f6, $f10, $f4 +/* 04ACC4 8004A0C4 44805000 */ mtc1 $zero, $f10 +/* 04ACC8 8004A0C8 44815800 */ mtc1 $at, $f11 +/* 04ACCC 8004A0CC 46203520 */ cvt.s.d $f20, $f6 +/* 04ACD0 8004A0D0 C6260010 */ lwc1 $f6, 0x10($s1) +/* 04ACD4 8004A0D4 460044A1 */ cvt.d.s $f18, $f8 +/* 04ACD8 8004A0D8 462A9101 */ sub.d $f4, $f18, $f10 +/* 04ACDC 8004A0DC 28410002 */ slti $at, $v0, 2 +/* 04ACE0 8004A0E0 46003221 */ cvt.d.s $f8, $f6 +/* 04ACE4 8004A0E4 46282481 */ sub.d $f18, $f4, $f8 +/* 04ACE8 8004A0E8 10200023 */ beqz $at, .L8004A178 +/* 04ACEC 8004A0EC 462090A0 */ cvt.s.d $f2, $f18 +/* 04ACF0 8004A0F0 2841FFFF */ slti $at, $v0, -1 +/* 04ACF4 8004A0F4 14200020 */ bnez $at, .L8004A178 +/* 04ACF8 8004A0F8 00000000 */ nop +/* 04ACFC 8004A0FC 460C103C */ c.lt.s $f2, $f12 +/* 04AD00 8004A100 3C014039 */ li $at, 0x40390000 # 2.890625 +/* 04AD04 8004A104 4500001C */ bc1f .L8004A178 +/* 04AD08 8004A108 24180001 */ li $t8, 1 +/* 04AD0C 8004A10C 44812800 */ mtc1 $at, $f5 +/* 04AD10 8004A110 44802000 */ mtc1 $zero, $f4 +/* 04AD14 8004A114 46001287 */ neg.s $f10, $f2 +/* 04AD18 8004A118 460051A1 */ cvt.d.s $f6, $f10 +/* 04AD1C 8004A11C 00000000 */ nop +/* 04AD20 8004A120 46243203 */ div.d $f8, $f6, $f4 +/* 04AD24 8004A124 3C098012 */ lui $t1, %hi(D_8011D538) # $t1, 0x8012 +/* 04AD28 8004A128 2529D538 */ addiu $t1, %lo(D_8011D538) # addiu $t1, $t1, -0x2ac8 +/* 04AD2C 8004A12C 8D2E0000 */ lw $t6, ($t1) +/* 04AD30 8004A130 4600A4A1 */ cvt.d.s $f18, $f20 +/* 04AD34 8004A134 44803000 */ mtc1 $zero, $f6 +/* 04AD38 8004A138 29C1FFEC */ slti $at, $t6, -0x14 +/* 04AD3C 8004A13C 240FFFEC */ li $t7, -20 +/* 04AD40 8004A140 46289280 */ add.d $f10, $f18, $f8 +/* 04AD44 8004A144 10200002 */ beqz $at, .L8004A150 +/* 04AD48 8004A148 46205520 */ cvt.s.d $f20, $f10 +/* 04AD4C 8004A14C AD2F0000 */ sw $t7, ($t1) +.L8004A150: +/* 04AD50 8004A150 3C014004 */ li $at, 0x40040000 # 2.062500 +/* 04AD54 8004A154 44813800 */ mtc1 $at, $f7 +/* 04AD58 8004A158 4600A121 */ cvt.d.s $f4, $f20 +/* 04AD5C 8004A15C 4624303C */ c.lt.d $f6, $f4 +/* 04AD60 8004A160 3C014020 */ li $at, 0x40200000 # 2.500000 +/* 04AD64 8004A164 45000003 */ bc1f .L8004A174 +/* 04AD68 8004A168 00000000 */ nop +/* 04AD6C 8004A16C 4481A000 */ mtc1 $at, $f20 +/* 04AD70 8004A170 00000000 */ nop +.L8004A174: +/* 04AD74 8004A174 A3B800A3 */ sb $t8, 0xa3($sp) +.L8004A178: +/* 04AD78 8004A178 C602002C */ lwc1 $f2, 0x2c($s0) +/* 04AD7C 8004A17C 44809000 */ mtc1 $zero, $f18 +/* 04AD80 8004A180 3C098012 */ lui $t1, %hi(D_8011D538) # $t1, 0x8012 +/* 04AD84 8004A184 4612103C */ c.lt.s $f2, $f18 +/* 04AD88 8004A188 2529D538 */ addiu $t1, %lo(D_8011D538) # addiu $t1, $t1, -0x2ac8 +/* 04AD8C 8004A18C 45000002 */ bc1f .L8004A198 +/* 04AD90 8004A190 46001386 */ mov.s $f14, $f2 +/* 04AD94 8004A194 46007387 */ neg.s $f14, $f14 +.L8004A198: +/* 04AD98 8004A198 44804000 */ mtc1 $zero, $f8 +/* 04AD9C 8004A19C 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 04ADA0 8004A1A0 4608103C */ c.lt.s $f2, $f8 +/* 04ADA4 8004A1A4 44815000 */ mtc1 $at, $f10 +/* 04ADA8 8004A1A8 45000002 */ bc1f .L8004A1B4 +/* 04ADAC 8004A1AC 46001006 */ mov.s $f0, $f2 +/* 04ADB0 8004A1B0 46001007 */ neg.s $f0, $f2 +.L8004A1B4: +/* 04ADB4 8004A1B4 460A0180 */ add.s $f6, $f0, $f10 +/* 04ADB8 8004A1B8 460E303C */ c.lt.s $f6, $f14 +/* 04ADBC 8004A1BC 00000000 */ nop +/* 04ADC0 8004A1C0 45000004 */ bc1f .L8004A1D4 +/* 04ADC4 8004A1C4 3C014040 */ li $at, 0x40400000 # 3.000000 +/* 04ADC8 8004A1C8 44812000 */ mtc1 $at, $f4 +/* 04ADCC 8004A1CC 00000000 */ nop +/* 04ADD0 8004A1D0 46040380 */ add.s $f14, $f0, $f4 +.L8004A1D4: +/* 04ADD4 8004A1D4 3C014140 */ li $at, 0x41400000 # 12.000000 +/* 04ADD8 8004A1D8 44810000 */ mtc1 $at, $f0 +/* 04ADDC 8004A1DC 3C01800E */ lui $at, %hi(D_800E64EC) # $at, 0x800e +/* 04ADE0 8004A1E0 460E003C */ c.lt.s $f0, $f14 +/* 04ADE4 8004A1E4 00000000 */ nop +/* 04ADE8 8004A1E8 45000002 */ bc1f .L8004A1F4 +/* 04ADEC 8004A1EC 00000000 */ nop +/* 04ADF0 8004A1F0 46000386 */ mov.s $f14, $f0 +.L8004A1F4: +/* 04ADF4 8004A1F4 C42264EC */ lwc1 $f2, %lo(D_800E64EC)($at) +/* 04ADF8 8004A1F8 3C01800E */ lui $at, %hi(D_800E64F0) # $at, 0x800e +/* 04ADFC 8004A1FC C42C64F0 */ lwc1 $f12, %lo(D_800E64F0)($at) +/* 04AE00 8004A200 4459F800 */ cfc1 $t9, $31 +/* 04AE04 8004A204 3C01800E */ lui $at, %hi(D_800E64F4) # $at, 0x800e +/* 04AE08 8004A208 C43064F4 */ lwc1 $f16, %lo(D_800E64F4)($at) +/* 04AE0C 8004A20C 37210003 */ ori $at, $t9, 3 +/* 04AE10 8004A210 38210002 */ xori $at, $at, 2 +/* 04AE14 8004A214 44C1F800 */ ctc1 $at, $31 +/* 04AE18 8004A218 8D6BD564 */ lw $t3, %lo(D_8011D564)($t3) +/* 04AE1C 8004A21C 460074A4 */ cvt.w.s $f18, $f14 +/* 04AE20 8004A220 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 04AE24 8004A224 44029000 */ mfc1 $v0, $f18 +/* 04AE28 8004A228 44D9F800 */ ctc1 $t9, $31 +/* 04AE2C 8004A22C 44824000 */ mtc1 $v0, $f8 +/* 04AE30 8004A230 00026080 */ sll $t4, $v0, 2 +/* 04AE34 8004A234 468042A0 */ cvt.s.w $f10, $f8 +/* 04AE38 8004A238 44813800 */ mtc1 $at, $f7 +/* 04AE3C 8004A23C 44803000 */ mtc1 $zero, $f6 +/* 04AE40 8004A240 460A7001 */ sub.s $f0, $f14, $f10 +/* 04AE44 8004A244 016C1821 */ addu $v1, $t3, $t4 +/* 04AE48 8004A248 C4680000 */ lwc1 $f8, ($v1) +/* 04AE4C 8004A24C 46000121 */ cvt.d.s $f4, $f0 +/* 04AE50 8004A250 46243481 */ sub.d $f18, $f6, $f4 +/* 04AE54 8004A254 C4640004 */ lwc1 $f4, 4($v1) +/* 04AE58 8004A258 460042A1 */ cvt.d.s $f10, $f8 +/* 04AE5C 8004A25C 46325182 */ mul.d $f6, $f10, $f18 +/* 04AE60 8004A260 E7A200D4 */ swc1 $f2, 0xd4($sp) +/* 04AE64 8004A264 E7AC00D0 */ swc1 $f12, 0xd0($sp) +/* 04AE68 8004A268 E7B000D8 */ swc1 $f16, 0xd8($sp) +/* 04AE6C 8004A26C 820D01E2 */ lb $t5, 0x1e2($s0) +/* 04AE70 8004A270 46002202 */ mul.s $f8, $f4, $f0 +/* 04AE74 8004A274 460042A1 */ cvt.d.s $f10, $f8 +/* 04AE78 8004A278 462A3480 */ add.d $f18, $f6, $f10 +/* 04AE7C 8004A27C 11A000A0 */ beqz $t5, .L8004A500 +/* 04AE80 8004A280 462093A0 */ cvt.s.d $f14, $f18 +/* 04AE84 8004A284 E7AC00D4 */ swc1 $f12, 0xd4($sp) +/* 04AE88 8004A288 E7A200D0 */ swc1 $f2, 0xd0($sp) +/* 04AE8C 8004A28C 00002825 */ move $a1, $zero +/* 04AE90 8004A290 00004025 */ move $t0, $zero +/* 04AE94 8004A294 4600A021 */ cvt.d.s $f0, $f20 +/* 04AE98 8004A298 02001825 */ move $v1, $s0 +/* 04AE9C 8004A29C 24060004 */ li $a2, 4 +/* 04AEA0 8004A2A0 240400FF */ li $a0, 255 +.L8004A2A4: +/* 04AEA4 8004A2A4 906201DC */ lbu $v0, 0x1dc($v1) +/* 04AEA8 8004A2A8 25080001 */ addiu $t0, $t0, 1 +/* 04AEAC 8004A2AC 10820004 */ beq $a0, $v0, .L8004A2C0 +/* 04AEB0 8004A2B0 00A2082A */ slt $at, $a1, $v0 +/* 04AEB4 8004A2B4 10200002 */ beqz $at, .L8004A2C0 +/* 04AEB8 8004A2B8 00000000 */ nop +/* 04AEBC 8004A2BC 00402825 */ move $a1, $v0 +.L8004A2C0: +/* 04AEC0 8004A2C0 1506FFF8 */ bne $t0, $a2, .L8004A2A4 +/* 04AEC4 8004A2C4 24630001 */ addiu $v1, $v1, 1 +/* 04AEC8 8004A2C8 14A60002 */ bne $a1, $a2, .L8004A2D4 +/* 04AECC 8004A2CC 3C0B8012 */ lui $t3, %hi(D_8011D528) # $t3, 0x8012 +/* 04AED0 8004A2D0 A2000175 */ sb $zero, 0x175($s0) +.L8004A2D4: +/* 04AED4 8004A2D4 860E0000 */ lh $t6, ($s0) +/* 04AED8 8004A2D8 2401000C */ li $at, 12 +/* 04AEDC 8004A2DC 15C00009 */ bnez $t6, .L8004A304 +/* 04AEE0 8004A2E0 00000000 */ nop +/* 04AEE4 8004A2E4 14A10007 */ bne $a1, $at, .L8004A304 +/* 04AEE8 8004A2E8 3C0F8012 */ lui $t7, %hi(D_8011D52C) # $t7, 0x8012 +/* 04AEEC 8004A2EC 8DEFD52C */ lw $t7, %lo(D_8011D52C)($t7) +/* 04AEF0 8004A2F0 24190002 */ li $t9, 2 +/* 04AEF4 8004A2F4 31F82000 */ andi $t8, $t7, 0x2000 +/* 04AEF8 8004A2F8 13000002 */ beqz $t8, .L8004A304 +/* 04AEFC 8004A2FC 3C018012 */ lui $at, %hi(D_8011D582) # $at, 0x8012 +/* 04AF00 8004A300 A039D582 */ sb $t9, %lo(D_8011D582)($at) +.L8004A304: +/* 04AF04 8004A304 8D6BD528 */ lw $t3, %lo(D_8011D528)($t3) +/* 04AF08 8004A308 00000000 */ nop +/* 04AF0C 8004A30C 316C4000 */ andi $t4, $t3, 0x4000 +/* 04AF10 8004A310 11800013 */ beqz $t4, .L8004A360 +/* 04AF14 8004A314 00000000 */ nop +/* 04AF18 8004A318 8D2D0000 */ lw $t5, ($t1) +/* 04AF1C 8004A31C 00000000 */ nop +/* 04AF20 8004A320 29A1FFD8 */ slti $at, $t5, -0x28 +/* 04AF24 8004A324 1420000E */ bnez $at, .L8004A360 +/* 04AF28 8004A328 00000000 */ nop +/* 04AF2C 8004A32C C604002C */ lwc1 $f4, 0x2c($s0) +/* 04AF30 8004A330 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 04AF34 8004A334 44813800 */ mtc1 $at, $f7 +/* 04AF38 8004A338 44803000 */ mtc1 $zero, $f6 +/* 04AF3C 8004A33C 46002221 */ cvt.d.s $f8, $f4 +/* 04AF40 8004A340 4628303E */ c.le.d $f6, $f8 +/* 04AF44 8004A344 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 04AF48 8004A348 45000005 */ bc1f .L8004A360 +/* 04AF4C 8004A34C 00000000 */ nop +/* 04AF50 8004A350 44815000 */ mtc1 $at, $f10 +/* 04AF54 8004A354 00000000 */ nop +/* 04AF58 8004A358 460A8482 */ mul.s $f18, $f16, $f10 +/* 04AF5C 8004A35C E7B200D8 */ swc1 $f18, 0xd8($sp) +.L8004A360: +/* 04AF60 8004A360 820E01D3 */ lb $t6, 0x1d3($s0) +/* 04AF64 8004A364 24010003 */ li $at, 3 +/* 04AF68 8004A368 15C00026 */ bnez $t6, .L8004A404 +/* 04AF6C 8004A36C 00000000 */ nop +/* 04AF70 8004A370 14A10024 */ bne $a1, $at, .L8004A404 +/* 04AF74 8004A374 2404002D */ li $a0, 45 +/* 04AF78 8004A378 E7A10048 */ swc1 $f1, 0x48($sp) +/* 04AF7C 8004A37C E7A0004C */ swc1 $f0, 0x4c($sp) +/* 04AF80 8004A380 0C00322D */ jal func_8000C8B4 +/* 04AF84 8004A384 E7AE00DC */ swc1 $f14, 0xdc($sp) +/* 04AF88 8004A388 9218020C */ lbu $t8, 0x20c($s0) +/* 04AF8C 8004A38C C7A10048 */ lwc1 $f1, 0x48($sp) +/* 04AF90 8004A390 C7A0004C */ lwc1 $f0, 0x4c($sp) +/* 04AF94 8004A394 C7AE00DC */ lwc1 $f14, 0xdc($sp) +/* 04AF98 8004A398 240F0002 */ li $t7, 2 +/* 04AF9C 8004A39C A20201D3 */ sb $v0, 0x1d3($s0) +/* 04AFA0 8004A3A0 13000005 */ beqz $t8, .L8004A3B8 +/* 04AFA4 8004A3A4 A20F0203 */ sb $t7, 0x203($s0) +/* 04AFA8 8004A3A8 82190203 */ lb $t9, 0x203($s0) +/* 04AFAC 8004A3AC 00000000 */ nop +/* 04AFB0 8004A3B0 372B0004 */ ori $t3, $t9, 4 +/* 04AFB4 8004A3B4 A20B0203 */ sb $t3, 0x203($s0) +.L8004A3B8: +/* 04AFB8 8004A3B8 02202025 */ move $a0, $s1 +/* 04AFBC 8004A3BC 24050107 */ li $a1, 263 +/* 04AFC0 8004A3C0 E7A10048 */ swc1 $f1, 0x48($sp) +/* 04AFC4 8004A3C4 E7A0004C */ swc1 $f0, 0x4c($sp) +/* 04AFC8 8004A3C8 0C015C12 */ jal func_80057048 +/* 04AFCC 8004A3CC E7AE00DC */ swc1 $f14, 0xdc($sp) +/* 04AFD0 8004A3D0 02202025 */ move $a0, $s1 +/* 04AFD4 8004A3D4 24050162 */ li $a1, 354 +/* 04AFD8 8004A3D8 24060008 */ li $a2, 8 +/* 04AFDC 8004A3DC 0C015C2E */ jal func_800570B8 +/* 04AFE0 8004A3E0 24070082 */ li $a3, 130 +/* 04AFE4 8004A3E4 86040000 */ lh $a0, ($s0) +/* 04AFE8 8004A3E8 0C01C8D2 */ jal func_80072348 +/* 04AFEC 8004A3EC 24050008 */ li $a1, 8 +/* 04AFF0 8004A3F0 3C098012 */ lui $t1, %hi(D_8011D538) # $t1, 0x8012 +/* 04AFF4 8004A3F4 C7A10048 */ lwc1 $f1, 0x48($sp) +/* 04AFF8 8004A3F8 C7A0004C */ lwc1 $f0, 0x4c($sp) +/* 04AFFC 8004A3FC C7AE00DC */ lwc1 $f14, 0xdc($sp) +/* 04B000 8004A400 2529D538 */ addiu $t1, %lo(D_8011D538) # addiu $t1, $t1, -0x2ac8 +.L8004A404: +/* 04B004 8004A404 820C01D6 */ lb $t4, 0x1d6($s0) +/* 04B008 8004A408 3C0D8012 */ lui $t5, %hi(D_8011D528) # $t5, 0x8012 +/* 04B00C 8004A40C 29810005 */ slti $at, $t4, 5 +/* 04B010 8004A410 14200018 */ bnez $at, .L8004A474 +/* 04B014 8004A414 3C0F800E */ lui $t7, %hi(D_800DCB98) # $t7, 0x800e +/* 04B018 8004A418 C608002C */ lwc1 $f8, 0x2c($s0) +/* 04B01C 8004A41C 3C01C018 */ li $at, 0xC0180000 # -2.375000 +/* 04B020 8004A420 44812800 */ mtc1 $at, $f5 +/* 04B024 8004A424 44802000 */ mtc1 $zero, $f4 +/* 04B028 8004A428 460041A1 */ cvt.d.s $f6, $f8 +/* 04B02C 8004A42C 4626203C */ c.lt.d $f4, $f6 +/* 04B030 8004A430 C7AA00C8 */ lwc1 $f10, 0xc8($sp) +/* 04B034 8004A434 4500000F */ bc1f .L8004A474 +/* 04B038 8004A438 3C01800E */ lui $at, %hi(D_800E64FC) # $at, 0x800e +/* 04B03C 8004A43C C42964F8 */ lwc1 $f9, %lo(D_800E64F8)($at) +/* 04B040 8004A440 C42864FC */ lwc1 $f8, %lo(D_800E64FC)($at) +/* 04B044 8004A444 460054A1 */ cvt.d.s $f18, $f10 +/* 04B048 8004A448 46289102 */ mul.d $f4, $f18, $f8 +/* 04B04C 8004A44C 3C01800E */ lui $at, %hi(D_800E6504) # $at, 0x800e +/* 04B050 8004A450 C7AA00C4 */ lwc1 $f10, 0xc4($sp) +/* 04B054 8004A454 C4296500 */ lwc1 $f9, %lo(D_800E6500)($at) +/* 04B058 8004A458 C4286504 */ lwc1 $f8, %lo(D_800E6504)($at) +/* 04B05C 8004A45C 462021A0 */ cvt.s.d $f6, $f4 +/* 04B060 8004A460 460054A1 */ cvt.d.s $f18, $f10 +/* 04B064 8004A464 46289102 */ mul.d $f4, $f18, $f8 +/* 04B068 8004A468 E7A600C8 */ swc1 $f6, 0xc8($sp) +/* 04B06C 8004A46C 462021A0 */ cvt.s.d $f6, $f4 +/* 04B070 8004A470 E7A600C4 */ swc1 $f6, 0xc4($sp) +.L8004A474: +/* 04B074 8004A474 A20001E0 */ sb $zero, 0x1e0($s0) +/* 04B078 8004A478 8DADD528 */ lw $t5, %lo(D_8011D528)($t5) +/* 04B07C 8004A47C 00000000 */ nop +/* 04B080 8004A480 31AE4000 */ andi $t6, $t5, 0x4000 +/* 04B084 8004A484 11C00007 */ beqz $t6, .L8004A4A4 +/* 04B088 8004A488 00000000 */ nop +/* 04B08C 8004A48C 8DEFCB98 */ lw $t7, %lo(D_800DCB98)($t7) +/* 04B090 8004A490 24180003 */ li $t8, 3 +/* 04B094 8004A494 29E10003 */ slti $at, $t7, 3 +/* 04B098 8004A498 10200002 */ beqz $at, .L8004A4A4 +/* 04B09C 8004A49C 00000000 */ nop +/* 04B0A0 8004A4A0 AE380074 */ sw $t8, 0x74($s1) +.L8004A4A4: +/* 04B0A4 8004A4A4 8D390000 */ lw $t9, ($t1) +/* 04B0A8 8004A4A8 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 04B0AC 8004A4AC 44995000 */ mtc1 $t9, $f10 +/* 04B0B0 8004A4B0 44812800 */ mtc1 $at, $f5 +/* 04B0B4 8004A4B4 468054A0 */ cvt.s.w $f18, $f10 +/* 04B0B8 8004A4B8 44802000 */ mtc1 $zero, $f4 +/* 04B0BC 8004A4BC 00000000 */ nop +/* 04B0C0 8004A4C0 46202181 */ sub.d $f6, $f4, $f0 +/* 04B0C4 8004A4C4 46009221 */ cvt.d.s $f8, $f18 +/* 04B0C8 8004A4C8 46264282 */ mul.d $f10, $f8, $f6 +/* 04B0CC 8004A4CC 444BF800 */ cfc1 $t3, $31 +/* 04B0D0 8004A4D0 00000000 */ nop +/* 04B0D4 8004A4D4 35610003 */ ori $at, $t3, 3 +/* 04B0D8 8004A4D8 38210002 */ xori $at, $at, 2 +/* 04B0DC 8004A4DC 44C1F800 */ ctc1 $at, $31 +/* 04B0E0 8004A4E0 00000000 */ nop +/* 04B0E4 8004A4E4 462054A4 */ cvt.w.d $f18, $f10 +/* 04B0E8 8004A4E8 E5320000 */ swc1 $f18, ($t1) +/* 04B0EC 8004A4EC 8D2C0000 */ lw $t4, ($t1) +/* 04B0F0 8004A4F0 44CBF800 */ ctc1 $t3, $31 +/* 04B0F4 8004A4F4 19800003 */ blez $t4, .L8004A504 +/* 04B0F8 8004A4F8 83AD00A3 */ lb $t5, 0xa3($sp) +/* 04B0FC 8004A4FC AD200000 */ sw $zero, ($t1) +.L8004A500: +/* 04B100 8004A500 83AD00A3 */ lb $t5, 0xa3($sp) +.L8004A504: +/* 04B104 8004A504 820201D6 */ lb $v0, 0x1d6($s0) +/* 04B108 8004A508 15A0000F */ bnez $t5, .L8004A548 +/* 04B10C 8004A50C 00004025 */ move $t0, $zero +/* 04B110 8004A510 3C014590 */ li $at, 0x45900000 # 4608.000000 +/* 04B114 8004A514 44812000 */ mtc1 $at, $f4 +/* 04B118 8004A518 00000000 */ nop +/* 04B11C 8004A51C 4604A202 */ mul.s $f8, $f20, $f4 +/* 04B120 8004A520 444EF800 */ cfc1 $t6, $31 +/* 04B124 8004A524 00000000 */ nop +/* 04B128 8004A528 35C10003 */ ori $at, $t6, 3 +/* 04B12C 8004A52C 38210002 */ xori $at, $at, 2 +/* 04B130 8004A530 44C1F800 */ ctc1 $at, $31 +/* 04B134 8004A534 00000000 */ nop +/* 04B138 8004A538 460041A4 */ cvt.w.s $f6, $f8 +/* 04B13C 8004A53C 44CEF800 */ ctc1 $t6, $31 +/* 04B140 8004A540 44083000 */ mfc1 $t0, $f6 +/* 04B144 8004A544 00000000 */ nop +.L8004A548: +/* 04B148 8004A548 28410006 */ slti $at, $v0, 6 +/* 04B14C 8004A54C 14200002 */ bnez $at, .L8004A558 +/* 04B150 8004A550 02002025 */ move $a0, $s0 +/* 04B154 8004A554 00004025 */ move $t0, $zero +.L8004A558: +/* 04B158 8004A558 2401000A */ li $at, 10 +/* 04B15C 8004A55C 14410003 */ bne $v0, $at, .L8004A56C +/* 04B160 8004A560 00003025 */ move $a2, $zero +/* 04B164 8004A564 4480A000 */ mtc1 $zero, $f20 +/* 04B168 8004A568 00004025 */ move $t0, $zero +.L8004A56C: +/* 04B16C 8004A56C 00083C00 */ sll $a3, $t0, 0x10 +/* 04B170 8004A570 00077C03 */ sra $t7, $a3, 0x10 +/* 04B174 8004A574 8FA500F8 */ lw $a1, 0xf8($sp) +/* 04B178 8004A578 01E03825 */ move $a3, $t7 +/* 04B17C 8004A57C AFA00010 */ sw $zero, 0x10($sp) +/* 04B180 8004A580 0C014214 */ jal func_80050850 +/* 04B184 8004A584 E7AE00DC */ swc1 $f14, 0xdc($sp) +/* 04B188 8004A588 920201FE */ lbu $v0, 0x1fe($s0) +/* 04B18C 8004A58C C7AE00DC */ lwc1 $f14, 0xdc($sp) +/* 04B190 8004A590 14400008 */ bnez $v0, .L8004A5B4 +/* 04B194 8004A594 3C0C8012 */ lui $t4, %hi(D_8011D540) # $t4, 0x8012 +/* 04B198 8004A598 8E380074 */ lw $t8, 0x74($s1) +/* 04B19C 8004A59C 3C0140B0 */ li $at, 0x40B00000 # 5.500000 +/* 04B1A0 8004A5A0 37190100 */ ori $t9, $t8, 0x100 +/* 04B1A4 8004A5A4 AE390074 */ sw $t9, 0x74($s1) +/* 04B1A8 8004A5A8 4481A000 */ mtc1 $at, $f20 +/* 04B1AC 8004A5AC 920201FE */ lbu $v0, 0x1fe($s0) +/* 04B1B0 8004A5B0 00000000 */ nop +.L8004A5B4: +/* 04B1B4 8004A5B4 24010001 */ li $at, 1 +/* 04B1B8 8004A5B8 14410003 */ bne $v0, $at, .L8004A5C8 +/* 04B1BC 8004A5BC 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 04B1C0 8004A5C0 4481A000 */ mtc1 $at, $f20 +/* 04B1C4 8004A5C4 00000000 */ nop +.L8004A5C8: +/* 04B1C8 8004A5C8 C61200C0 */ lwc1 $f18, 0xc0($s0) +/* 04B1CC 8004A5CC 44805800 */ mtc1 $zero, $f11 +/* 04B1D0 8004A5D0 44805000 */ mtc1 $zero, $f10 +/* 04B1D4 8004A5D4 46009121 */ cvt.d.s $f4, $f18 +/* 04B1D8 8004A5D8 46245032 */ c.eq.d $f10, $f4 +/* 04B1DC 8004A5DC 00000000 */ nop +/* 04B1E0 8004A5E0 45010021 */ bc1t .L8004A668 +/* 04B1E4 8004A5E4 3C01BF80 */ li $at, 0xBF800000 # -1.000000 +/* 04B1E8 8004A5E8 44810000 */ mtc1 $at, $f0 +/* 04B1EC 8004A5EC 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 +/* 04B1F0 8004A5F0 240BFFC4 */ li $t3, -60 +/* 04B1F4 8004A5F4 AC2BD538 */ sw $t3, %lo(D_8011D538)($at) +/* 04B1F8 8004A5F8 3C0141A0 */ li $at, 0x41A00000 # 20.000000 +/* 04B1FC 8004A5FC 44813000 */ mtc1 $at, $f6 +/* 04B200 8004A600 C60800C0 */ lwc1 $f8, 0xc0($s0) +/* 04B204 8004A604 44805800 */ mtc1 $zero, $f11 +/* 04B208 8004A608 46064081 */ sub.s $f2, $f8, $f6 +/* 04B20C 8004A60C 44805000 */ mtc1 $zero, $f10 +/* 04B210 8004A610 460014A1 */ cvt.d.s $f18, $f2 +/* 04B214 8004A614 462A903C */ c.lt.d $f18, $f10 +/* 04B218 8004A618 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 04B21C 8004A61C 44812000 */ mtc1 $at, $f4 +/* 04B220 8004A620 45000004 */ bc1f .L8004A634 +/* 04B224 8004A624 00000000 */ nop +/* 04B228 8004A628 44801000 */ mtc1 $zero, $f2 +/* 04B22C 8004A62C 00000000 */ nop +/* 04B230 8004A630 00000000 */ nop +.L8004A634: +/* 04B234 8004A634 46041203 */ div.s $f8, $f2, $f4 +/* 04B238 8004A638 3C01C010 */ li $at, 0xC0100000 # -2.250000 +/* 04B23C 8004A63C 44819800 */ mtc1 $at, $f19 +/* 04B240 8004A640 44809000 */ mtc1 $zero, $f18 +/* 04B244 8004A644 3C01C080 */ li $at, 0xC0800000 # -4.000000 +/* 04B248 8004A648 46080501 */ sub.s $f20, $f0, $f8 +/* 04B24C 8004A64C 4600A1A1 */ cvt.d.s $f6, $f20 +/* 04B250 8004A650 4632303C */ c.lt.d $f6, $f18 +/* 04B254 8004A654 00000000 */ nop +/* 04B258 8004A658 45000003 */ bc1f .L8004A668 +/* 04B25C 8004A65C 00000000 */ nop +/* 04B260 8004A660 4481A000 */ mtc1 $at, $f20 +/* 04B264 8004A664 00000000 */ nop +.L8004A668: +/* 04B268 8004A668 8D8CD540 */ lw $t4, %lo(D_8011D540)($t4) +/* 04B26C 8004A66C 00000000 */ nop +/* 04B270 8004A670 11800003 */ beqz $t4, .L8004A680 +/* 04B274 8004A674 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 04B278 8004A678 4481A000 */ mtc1 $at, $f20 +/* 04B27C 8004A67C 00000000 */ nop +.L8004A680: +/* 04B280 8004A680 820D01D7 */ lb $t5, 0x1d7($s0) +/* 04B284 8004A684 2401000C */ li $at, 12 +/* 04B288 8004A688 15A1000B */ bne $t5, $at, .L8004A6B8 +/* 04B28C 8004A68C 00000000 */ nop +/* 04B290 8004A690 822E003B */ lb $t6, 0x3b($s1) +/* 04B294 8004A694 00000000 */ nop +/* 04B298 8004A698 29C10003 */ slti $at, $t6, 3 +/* 04B29C 8004A69C 10200004 */ beqz $at, .L8004A6B0 +/* 04B2A0 8004A6A0 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 04B2A4 8004A6A4 4481A000 */ mtc1 $at, $f20 +/* 04B2A8 8004A6A8 10000003 */ b .L8004A6B8 +/* 04B2AC 8004A6AC 00000000 */ nop +.L8004A6B0: +/* 04B2B0 8004A6B0 4480A000 */ mtc1 $zero, $f20 +/* 04B2B4 8004A6B4 00000000 */ nop +.L8004A6B8: +/* 04B2B8 8004A6B8 3C018012 */ lui $at, %hi(D_8011D56C) # $at, 0x8012 +/* 04B2BC 8004A6BC C42AD56C */ lwc1 $f10, %lo(D_8011D56C)($at) +/* 04B2C0 8004A6C0 C6240020 */ lwc1 $f4, 0x20($s1) +/* 04B2C4 8004A6C4 460AA502 */ mul.s $f20, $f20, $f10 +/* 04B2C8 8004A6C8 46142201 */ sub.s $f8, $f4, $f20 +/* 04B2CC 8004A6CC E6280020 */ swc1 $f8, 0x20($s1) +/* 04B2D0 8004A6D0 920F01F5 */ lbu $t7, 0x1f5($s0) +/* 04B2D4 8004A6D4 00000000 */ nop +/* 04B2D8 8004A6D8 11E0005E */ beqz $t7, .L8004A854 +/* 04B2DC 8004A6DC 00000000 */ nop +/* 04B2E0 8004A6E0 821801DB */ lb $t8, 0x1db($s0) +/* 04B2E4 8004A6E4 34018001 */ li $at, 32769 +/* 04B2E8 8004A6E8 1700005A */ bnez $t8, .L8004A854 +/* 04B2EC 8004A6EC 00000000 */ nop +/* 04B2F0 8004A6F0 8E19014C */ lw $t9, 0x14c($s0) +/* 04B2F4 8004A6F4 860301A0 */ lh $v1, 0x1a0($s0) +/* 04B2F8 8004A6F8 A2000175 */ sb $zero, 0x175($s0) +/* 04B2FC 8004A6FC A20001DB */ sb $zero, 0x1db($s0) +/* 04B300 8004A700 A20001E0 */ sb $zero, 0x1e0($s0) +/* 04B304 8004A704 872B0000 */ lh $t3, ($t9) +/* 04B308 8004A708 306CFFFF */ andi $t4, $v1, 0xffff +/* 04B30C 8004A70C 016C1023 */ subu $v0, $t3, $t4 +/* 04B310 8004A710 0041082A */ slt $at, $v0, $at +/* 04B314 8004A714 8FAD00F8 */ lw $t5, 0xf8($sp) +/* 04B318 8004A718 14200003 */ bnez $at, .L8004A728 +/* 04B31C 8004A71C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 04B320 8004A720 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 04B324 8004A724 00411021 */ addu $v0, $v0, $at +.L8004A728: +/* 04B328 8004A728 28418000 */ slti $at, $v0, -0x8000 +/* 04B32C 8004A72C 10200002 */ beqz $at, .L8004A738 +/* 04B330 8004A730 3401FFFF */ li $at, 65535 +/* 04B334 8004A734 00411021 */ addu $v0, $v0, $at +.L8004A738: +/* 04B338 8004A738 004D0019 */ multu $v0, $t5 +/* 04B33C 8004A73C 28410400 */ slti $at, $v0, 0x400 +/* 04B340 8004A740 00007012 */ mflo $t6 +/* 04B344 8004A744 000E78C3 */ sra $t7, $t6, 3 +/* 04B348 8004A748 006FC021 */ addu $t8, $v1, $t7 +/* 04B34C 8004A74C 10200004 */ beqz $at, .L8004A760 +/* 04B350 8004A750 A61801A0 */ sh $t8, 0x1a0($s0) +/* 04B354 8004A754 2841FC01 */ slti $at, $v0, -0x3ff +/* 04B358 8004A758 10200005 */ beqz $at, .L8004A770 +/* 04B35C 8004A75C 00000000 */ nop +.L8004A760: +/* 04B360 8004A760 86190000 */ lh $t9, ($s0) +/* 04B364 8004A764 2401FFFF */ li $at, -1 +/* 04B368 8004A768 17210026 */ bne $t9, $at, .L8004A804 +/* 04B36C 8004A76C 00000000 */ nop +.L8004A770: +/* 04B370 8004A770 860B0000 */ lh $t3, ($s0) +/* 04B374 8004A774 2401FFFF */ li $at, -1 +/* 04B378 8004A778 1161000E */ beq $t3, $at, .L8004A7B4 +/* 04B37C 8004A77C 24040107 */ li $a0, 263 +/* 04B380 8004A780 8E25000C */ lw $a1, 0xc($s1) +/* 04B384 8004A784 8E260010 */ lw $a2, 0x10($s1) +/* 04B388 8004A788 8E270014 */ lw $a3, 0x14($s1) +/* 04B38C 8004A78C E7AE00DC */ swc1 $f14, 0xdc($sp) +/* 04B390 8004A790 0C0007AA */ jal func_80001EA8 +/* 04B394 8004A794 AFA00010 */ sw $zero, 0x10($sp) +/* 04B398 8004A798 02202025 */ move $a0, $s1 +/* 04B39C 8004A79C 24050162 */ li $a1, 354 +/* 04B3A0 8004A7A0 24060008 */ li $a2, 8 +/* 04B3A4 8004A7A4 0C015C2E */ jal func_800570B8 +/* 04B3A8 8004A7A8 24070082 */ li $a3, 130 +/* 04B3AC 8004A7AC C7AE00DC */ lwc1 $f14, 0xdc($sp) +/* 04B3B0 8004A7B0 00000000 */ nop +.L8004A7B4: +/* 04B3B4 8004A7B4 2404002D */ li $a0, 45 +/* 04B3B8 8004A7B8 0C00322D */ jal func_8000C8B4 +/* 04B3BC 8004A7BC E7AE00DC */ swc1 $f14, 0xdc($sp) +/* 04B3C0 8004A7C0 920D020C */ lbu $t5, 0x20c($s0) +/* 04B3C4 8004A7C4 C7AE00DC */ lwc1 $f14, 0xdc($sp) +/* 04B3C8 8004A7C8 240C0002 */ li $t4, 2 +/* 04B3CC 8004A7CC A20201D3 */ sb $v0, 0x1d3($s0) +/* 04B3D0 8004A7D0 11A00005 */ beqz $t5, .L8004A7E8 +/* 04B3D4 8004A7D4 A20C0203 */ sb $t4, 0x203($s0) +/* 04B3D8 8004A7D8 820E0203 */ lb $t6, 0x203($s0) +/* 04B3DC 8004A7DC 00000000 */ nop +/* 04B3E0 8004A7E0 35CF0004 */ ori $t7, $t6, 4 +/* 04B3E4 8004A7E4 A20F0203 */ sb $t7, 0x203($s0) +.L8004A7E8: +/* 04B3E8 8004A7E8 86040000 */ lh $a0, ($s0) +/* 04B3EC 8004A7EC E7AE00DC */ swc1 $f14, 0xdc($sp) +/* 04B3F0 8004A7F0 0C01C8D2 */ jal func_80072348 +/* 04B3F4 8004A7F4 24050008 */ li $a1, 8 +/* 04B3F8 8004A7F8 C7AE00DC */ lwc1 $f14, 0xdc($sp) +/* 04B3FC 8004A7FC 10000015 */ b .L8004A854 +/* 04B400 8004A800 A20001F5 */ sb $zero, 0x1f5($s0) +.L8004A804: +/* 04B404 8004A804 C626001C */ lwc1 $f6, 0x1c($s1) +/* 04B408 8004A808 3C013FE8 */ li $at, 0x3FE80000 # 1.812500 +/* 04B40C 8004A80C 44810800 */ mtc1 $at, $f1 +/* 04B410 8004A810 44800000 */ mtc1 $zero, $f0 +/* 04B414 8004A814 460034A1 */ cvt.d.s $f18, $f6 +/* 04B418 8004A818 46209282 */ mul.d $f10, $f18, $f0 +/* 04B41C 8004A81C C6280020 */ lwc1 $f8, 0x20($s1) +/* 04B420 8004A820 00000000 */ nop +/* 04B424 8004A824 460041A1 */ cvt.d.s $f6, $f8 +/* 04B428 8004A828 46205120 */ cvt.s.d $f4, $f10 +/* 04B42C 8004A82C E624001C */ swc1 $f4, 0x1c($s1) +/* 04B430 8004A830 46203482 */ mul.d $f18, $f6, $f0 +/* 04B434 8004A834 C6240024 */ lwc1 $f4, 0x24($s1) +/* 04B438 8004A838 00000000 */ nop +/* 04B43C 8004A83C 46002221 */ cvt.d.s $f8, $f4 +/* 04B440 8004A840 46204182 */ mul.d $f6, $f8, $f0 +/* 04B444 8004A844 462092A0 */ cvt.s.d $f10, $f18 +/* 04B448 8004A848 E62A0020 */ swc1 $f10, 0x20($s1) +/* 04B44C 8004A84C 462034A0 */ cvt.s.d $f18, $f6 +/* 04B450 8004A850 E6320024 */ swc1 $f18, 0x24($s1) +.L8004A854: +/* 04B454 8004A854 821801DB */ lb $t8, 0x1db($s0) +/* 04B458 8004A858 00000000 */ nop +/* 04B45C 8004A85C 13000081 */ beqz $t8, .L8004AA64 +/* 04B460 8004A860 00000000 */ nop +/* 04B464 8004A864 921901F1 */ lbu $t9, 0x1f1($s0) +/* 04B468 8004A868 86040162 */ lh $a0, 0x162($s0) +/* 04B46C 8004A86C 17200002 */ bnez $t9, .L8004A878 +/* 04B470 8004A870 240B0001 */ li $t3, 1 +/* 04B474 8004A874 A20B01F1 */ sb $t3, 0x1f1($s0) +.L8004A878: +/* 04B478 8004A878 820C01E2 */ lb $t4, 0x1e2($s0) +/* 04B47C 8004A87C 240E0002 */ li $t6, 2 +/* 04B480 8004A880 15800005 */ bnez $t4, .L8004A898 +/* 04B484 8004A884 00000000 */ nop +/* 04B488 8004A888 920D01F1 */ lbu $t5, 0x1f1($s0) +/* 04B48C 8004A88C 24010002 */ li $at, 2 +/* 04B490 8004A890 15A10025 */ bne $t5, $at, .L8004A928 +/* 04B494 8004A894 8FAF00F8 */ lw $t7, 0xf8($sp) +.L8004A898: +/* 04B498 8004A898 A20E01F1 */ sb $t6, 0x1f1($s0) +/* 04B49C 8004A89C 8FA200F8 */ lw $v0, 0xf8($sp) +/* 04B4A0 8004A8A0 86180162 */ lh $t8, 0x162($s0) +/* 04B4A4 8004A8A4 86030164 */ lh $v1, 0x164($s0) +/* 04B4A8 8004A8A8 00027AC0 */ sll $t7, $v0, 0xb +/* 04B4AC 8004A8AC 030FC823 */ subu $t9, $t8, $t7 +/* 04B4B0 8004A8B0 01E35821 */ addu $t3, $t7, $v1 +/* 04B4B4 8004A8B4 A6190162 */ sh $t9, 0x162($s0) +/* 04B4B8 8004A8B8 01E01025 */ move $v0, $t7 +/* 04B4BC 8004A8BC 19600005 */ blez $t3, .L8004A8D4 +/* 04B4C0 8004A8C0 00604025 */ move $t0, $v1 +/* 04B4C4 8004A8C4 1D000004 */ bgtz $t0, .L8004A8D8 +/* 04B4C8 8004A8C8 00626021 */ addu $t4, $v1, $v0 +/* 04B4CC 8004A8CC 10000003 */ b .L8004A8DC +/* 04B4D0 8004A8D0 A6000164 */ sh $zero, 0x164($s0) +.L8004A8D4: +/* 04B4D4 8004A8D4 00626021 */ addu $t4, $v1, $v0 +.L8004A8D8: +/* 04B4D8 8004A8D8 A60C0164 */ sh $t4, 0x164($s0) +.L8004A8DC: +/* 04B4DC 8004A8DC C604002C */ lwc1 $f4, 0x2c($s0) +/* 04B4E0 8004A8E0 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 04B4E4 8004A8E4 44815800 */ mtc1 $at, $f11 +/* 04B4E8 8004A8E8 44805000 */ mtc1 $zero, $f10 +/* 04B4EC 8004A8EC 46002221 */ cvt.d.s $f8, $f4 +/* 04B4F0 8004A8F0 4628503C */ c.lt.d $f10, $f8 +/* 04B4F4 8004A8F4 00000000 */ nop +/* 04B4F8 8004A8F8 45000007 */ bc1f .L8004A918 +/* 04B4FC 8004A8FC 00000000 */ nop +/* 04B500 8004A900 820D01E2 */ lb $t5, 0x1e2($s0) +/* 04B504 8004A904 00000000 */ nop +/* 04B508 8004A908 29A10003 */ slti $at, $t5, 3 +/* 04B50C 8004A90C 14200002 */ bnez $at, .L8004A918 +/* 04B510 8004A910 00000000 */ nop +/* 04B514 8004A914 A20001DB */ sb $zero, 0x1db($s0) +.L8004A918: +/* 04B518 8004A918 820301E2 */ lb $v1, 0x1e2($s0) +/* 04B51C 8004A91C 10000007 */ b .L8004A93C +/* 04B520 8004A920 00000000 */ nop +/* 04B524 8004A924 8FAF00F8 */ lw $t7, 0xf8($sp) +.L8004A928: +/* 04B528 8004A928 860E0164 */ lh $t6, 0x164($s0) +/* 04B52C 8004A92C 000FC2C0 */ sll $t8, $t7, 0xb +/* 04B530 8004A930 01D8C821 */ addu $t9, $t6, $t8 +/* 04B534 8004A934 820301E2 */ lb $v1, 0x1e2($s0) +/* 04B538 8004A938 A6190164 */ sh $t9, 0x164($s0) +.L8004A93C: +/* 04B53C 8004A93C 10600022 */ beqz $v1, .L8004A9C8 +/* 04B540 8004A940 28816001 */ slti $at, $a0, 0x6001 +/* 04B544 8004A944 14200006 */ bnez $at, .L8004A960 +/* 04B548 8004A948 2881A001 */ slti $at, $a0, -0x5fff +/* 04B54C 8004A94C 860B0162 */ lh $t3, 0x162($s0) +/* 04B550 8004A950 00000000 */ nop +/* 04B554 8004A954 29616001 */ slti $at, $t3, 0x6001 +/* 04B558 8004A958 1420000D */ bnez $at, .L8004A990 +/* 04B55C 8004A95C 2881A001 */ slti $at, $a0, -0x5fff +.L8004A960: +/* 04B560 8004A960 14200006 */ bnez $at, .L8004A97C +/* 04B564 8004A964 00000000 */ nop +/* 04B568 8004A968 860C0162 */ lh $t4, 0x162($s0) +/* 04B56C 8004A96C 00000000 */ nop +/* 04B570 8004A970 2981A001 */ slti $at, $t4, -0x5fff +/* 04B574 8004A974 14200006 */ bnez $at, .L8004A990 +/* 04B578 8004A978 00000000 */ nop +.L8004A97C: +/* 04B57C 8004A97C 18800012 */ blez $a0, .L8004A9C8 +/* 04B580 8004A980 00000000 */ nop +/* 04B584 8004A984 860D0162 */ lh $t5, 0x162($s0) +/* 04B588 8004A988 00000000 */ nop +/* 04B58C 8004A98C 1DA0000E */ bgtz $t5, .L8004A9C8 +.L8004A990: +/* 04B590 8004A990 02202025 */ move $a0, $s1 +/* 04B594 8004A994 2405000C */ li $a1, 12 +/* 04B598 8004A998 0C015C12 */ jal func_80057048 +/* 04B59C 8004A99C E7AE00DC */ swc1 $f14, 0xdc($sp) +/* 04B5A0 8004A9A0 860F0000 */ lh $t7, ($s0) +/* 04B5A4 8004A9A4 C7AE00DC */ lwc1 $f14, 0xdc($sp) +/* 04B5A8 8004A9A8 2401FFFF */ li $at, -1 +/* 04B5AC 8004A9AC 11E10006 */ beq $t7, $at, .L8004A9C8 +/* 04B5B0 8004A9B0 3C0E8012 */ lui $t6, %hi(D_8011D508) # $t6, 0x8012 +/* 04B5B4 8004A9B4 3C0140C0 */ li $at, 0x40C00000 # 6.000000 +/* 04B5B8 8004A9B8 44813000 */ mtc1 $at, $f6 +/* 04B5BC 8004A9BC 8DCED508 */ lw $t6, %lo(D_8011D508)($t6) +/* 04B5C0 8004A9C0 00000000 */ nop +/* 04B5C4 8004A9C4 E5C60030 */ swc1 $f6, 0x30($t6) +.L8004A9C8: +/* 04B5C8 8004A9C8 3C188012 */ lui $t8, %hi(D_8011D528) # $t8, 0x8012 +/* 04B5CC 8004A9CC 8F18D528 */ lw $t8, %lo(D_8011D528)($t8) +/* 04B5D0 8004A9D0 3C01FFFF */ lui $at, (0xFFFF5FFF >> 16) # lui $at, 0xffff +/* 04B5D4 8004A9D4 34215FFF */ ori $at, (0xFFFF5FFF & 0xFFFF) # ori $at, $at, 0x5fff +/* 04B5D8 8004A9D8 0301C824 */ and $t9, $t8, $at +/* 04B5DC 8004A9DC 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 +/* 04B5E0 8004A9E0 AC39D528 */ sw $t9, %lo(D_8011D528)($at) +/* 04B5E4 8004A9E4 8FA400F8 */ lw $a0, 0xf8($sp) +/* 04B5E8 8004A9E8 820B01DB */ lb $t3, 0x1db($s0) +/* 04B5EC 8004A9EC 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 04B5F0 8004A9F0 01646023 */ subu $t4, $t3, $a0 +/* 04B5F4 8004A9F4 A20C01DB */ sb $t4, 0x1db($s0) +/* 04B5F8 8004A9F8 44819000 */ mtc1 $at, $f18 +/* 04B5FC 8004A9FC 820D01DB */ lb $t5, 0x1db($s0) +/* 04B600 8004AA00 A20001D3 */ sb $zero, 0x1d3($s0) +/* 04B604 8004AA04 1DA00003 */ bgtz $t5, .L8004AA14 +/* 04B608 8004AA08 E61200B8 */ swc1 $f18, 0xb8($s0) +/* 04B60C 8004AA0C A20001DB */ sb $zero, 0x1db($s0) +/* 04B610 8004AA10 A20001F1 */ sb $zero, 0x1f1($s0) +.L8004AA14: +/* 04B614 8004AA14 86230002 */ lh $v1, 2($s1) +/* 04B618 8004AA18 340ED800 */ li $t6, 55296 +/* 04B61C 8004AA1C 306FFFFF */ andi $t7, $v1, 0xffff +/* 04B620 8004AA20 01CF1023 */ subu $v0, $t6, $t7 +/* 04B624 8004AA24 34018001 */ li $at, 32769 +/* 04B628 8004AA28 0041082A */ slt $at, $v0, $at +/* 04B62C 8004AA2C 14200003 */ bnez $at, .L8004AA3C +/* 04B630 8004AA30 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 04B634 8004AA34 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 04B638 8004AA38 00411021 */ addu $v0, $v0, $at +.L8004AA3C: +/* 04B63C 8004AA3C 28418000 */ slti $at, $v0, -0x8000 +/* 04B640 8004AA40 10200002 */ beqz $at, .L8004AA4C +/* 04B644 8004AA44 3401FFFF */ li $at, 65535 +/* 04B648 8004AA48 00411021 */ addu $v0, $v0, $at +.L8004AA4C: +/* 04B64C 8004AA4C 00440019 */ multu $v0, $a0 +/* 04B650 8004AA50 0000C012 */ mflo $t8 +/* 04B654 8004AA54 0018C903 */ sra $t9, $t8, 4 +/* 04B658 8004AA58 00795821 */ addu $t3, $v1, $t9 +/* 04B65C 8004AA5C 10000233 */ b .L8004B32C +/* 04B660 8004AA60 A62B0002 */ sh $t3, 2($s1) +.L8004AA64: +/* 04B664 8004AA64 820201E0 */ lb $v0, 0x1e0($s0) +/* 04B668 8004AA68 24010001 */ li $at, 1 +/* 04B66C 8004AA6C 10410004 */ beq $v0, $at, .L8004AA80 +/* 04B670 8004AA70 00026080 */ sll $t4, $v0, 2 +/* 04B674 8004AA74 2401FFFF */ li $at, -1 +/* 04B678 8004AA78 14410030 */ bne $v0, $at, .L8004AB3C +/* 04B67C 8004AA7C 24010002 */ li $at, 2 +.L8004AA80: +/* 04B680 8004AA80 8FAD00F8 */ lw $t5, 0xf8($sp) +/* 04B684 8004AA84 01826023 */ subu $t4, $t4, $v0 +/* 04B688 8004AA88 000C6240 */ sll $t4, $t4, 9 +/* 04B68C 8004AA8C 018D0019 */ multu $t4, $t5 +/* 04B690 8004AA90 860301A4 */ lh $v1, 0x1a4($s0) +/* 04B694 8004AA94 3C01800E */ lui $at, %hi(D_800E6508) # $at, 0x800e +/* 04B698 8004AA98 00604025 */ move $t0, $v1 +/* 04B69C 8004AA9C 00007012 */ mflo $t6 +/* 04B6A0 8004AAA0 006E7821 */ addu $t7, $v1, $t6 +/* 04B6A4 8004AAA4 A60F01A4 */ sh $t7, 0x1a4($s0) +/* 04B6A8 8004AAA8 C4246508 */ lwc1 $f4, %lo(D_800E6508)($at) +/* 04B6AC 8004AAAC 24010001 */ li $at, 1 +/* 04B6B0 8004AAB0 14410011 */ bne $v0, $at, .L8004AAF8 +/* 04B6B4 8004AAB4 E7A400C8 */ swc1 $f4, 0xc8($sp) +/* 04B6B8 8004AAB8 18600002 */ blez $v1, .L8004AAC4 +/* 04B6BC 8004AABC 24180001 */ li $t8, 1 +/* 04B6C0 8004AAC0 A21801D4 */ sb $t8, 0x1d4($s0) +.L8004AAC4: +/* 04B6C4 8004AAC4 05010219 */ bgez $t0, .L8004B32C +/* 04B6C8 8004AAC8 00000000 */ nop +/* 04B6CC 8004AACC 861901A4 */ lh $t9, 0x1a4($s0) +/* 04B6D0 8004AAD0 00000000 */ nop +/* 04B6D4 8004AAD4 07200215 */ bltz $t9, .L8004B32C +/* 04B6D8 8004AAD8 00000000 */ nop +/* 04B6DC 8004AADC 820B01D4 */ lb $t3, 0x1d4($s0) +/* 04B6E0 8004AAE0 00000000 */ nop +/* 04B6E4 8004AAE4 11600211 */ beqz $t3, .L8004B32C +/* 04B6E8 8004AAE8 00000000 */ nop +/* 04B6EC 8004AAEC A20001E0 */ sb $zero, 0x1e0($s0) +/* 04B6F0 8004AAF0 1000020E */ b .L8004B32C +/* 04B6F4 8004AAF4 A60001A4 */ sh $zero, 0x1a4($s0) +.L8004AAF8: +/* 04B6F8 8004AAF8 05010002 */ bgez $t0, .L8004AB04 +/* 04B6FC 8004AAFC 240C0001 */ li $t4, 1 +/* 04B700 8004AB00 A20C01D4 */ sb $t4, 0x1d4($s0) +.L8004AB04: +/* 04B704 8004AB04 19000209 */ blez $t0, .L8004B32C +/* 04B708 8004AB08 00000000 */ nop +/* 04B70C 8004AB0C 860D01A4 */ lh $t5, 0x1a4($s0) +/* 04B710 8004AB10 00000000 */ nop +/* 04B714 8004AB14 1DA00205 */ bgtz $t5, .L8004B32C +/* 04B718 8004AB18 00000000 */ nop +/* 04B71C 8004AB1C 820E01D4 */ lb $t6, 0x1d4($s0) +/* 04B720 8004AB20 00000000 */ nop +/* 04B724 8004AB24 11C00201 */ beqz $t6, .L8004B32C +/* 04B728 8004AB28 00000000 */ nop +/* 04B72C 8004AB2C A20001E0 */ sb $zero, 0x1e0($s0) +/* 04B730 8004AB30 100001FE */ b .L8004B32C +/* 04B734 8004AB34 A60001A4 */ sh $zero, 0x1a4($s0) +/* 04B738 8004AB38 24010002 */ li $at, 2 +.L8004AB3C: +/* 04B73C 8004AB3C 10410003 */ beq $v0, $at, .L8004AB4C +/* 04B740 8004AB40 2405FFFE */ li $a1, -2 +/* 04B744 8004AB44 14A2008B */ bne $a1, $v0, .L8004AD74 +/* 04B748 8004AB48 00000000 */ nop +.L8004AB4C: +/* 04B74C 8004AB4C 86230002 */ lh $v1, 2($s1) +/* 04B750 8004AB50 820F01D5 */ lb $t7, 0x1d5($s0) +/* 04B754 8004AB54 3C0D8012 */ lui $t5, %hi(D_8011D528) # $t5, 0x8012 +/* 04B758 8004AB58 15E00009 */ bnez $t7, .L8004AB80 +/* 04B75C 8004AB5C 00604025 */ move $t0, $v1 +/* 04B760 8004AB60 0002C080 */ sll $t8, $v0, 2 +/* 04B764 8004AB64 8FB900F8 */ lw $t9, 0xf8($sp) +/* 04B768 8004AB68 0302C023 */ subu $t8, $t8, $v0 +/* 04B76C 8004AB6C 0018C1C0 */ sll $t8, $t8, 7 +/* 04B770 8004AB70 03190019 */ multu $t8, $t9 +/* 04B774 8004AB74 00005812 */ mflo $t3 +/* 04B778 8004AB78 006B6021 */ addu $t4, $v1, $t3 +/* 04B77C 8004AB7C A62C0002 */ sh $t4, 2($s1) +.L8004AB80: +/* 04B780 8004AB80 8DADD528 */ lw $t5, %lo(D_8011D528)($t5) +/* 04B784 8004AB84 00000000 */ nop +/* 04B788 8004AB88 31AE0010 */ andi $t6, $t5, 0x10 +/* 04B78C 8004AB8C 15C00002 */ bnez $t6, .L8004AB98 +/* 04B790 8004AB90 00000000 */ nop +/* 04B794 8004AB94 A20001D5 */ sb $zero, 0x1d5($s0) +.L8004AB98: +/* 04B798 8004AB98 820201D5 */ lb $v0, 0x1d5($s0) +/* 04B79C 8004AB9C 8FAF00F8 */ lw $t7, 0xf8($sp) +/* 04B7A0 8004ABA0 18400003 */ blez $v0, .L8004ABB0 +/* 04B7A4 8004ABA4 004FC023 */ subu $t8, $v0, $t7 +/* 04B7A8 8004ABA8 10000002 */ b .L8004ABB4 +/* 04B7AC 8004ABAC A21801D5 */ sb $t8, 0x1d5($s0) +.L8004ABB0: +/* 04B7B0 8004ABB0 A20001D5 */ sb $zero, 0x1d5($s0) +.L8004ABB4: +/* 04B7B4 8004ABB4 860301A4 */ lh $v1, 0x1a4($s0) +/* 04B7B8 8004ABB8 8FB900F8 */ lw $t9, 0xf8($sp) +/* 04B7BC 8004ABBC C60A002C */ lwc1 $f10, 0x2c($s0) +/* 04B7C0 8004ABC0 00790019 */ multu $v1, $t9 +/* 04B7C4 8004ABC4 C6080038 */ lwc1 $f8, 0x38($s0) +/* 04B7C8 8004ABC8 24010002 */ li $at, 2 +/* 04B7CC 8004ABCC 46085182 */ mul.s $f6, $f10, $f8 +/* 04B7D0 8004ABD0 00005812 */ mflo $t3 +/* 04B7D4 8004ABD4 000B6103 */ sra $t4, $t3, 4 +/* 04B7D8 8004ABD8 006C6823 */ subu $t5, $v1, $t4 +/* 04B7DC 8004ABDC A60D01A4 */ sh $t5, 0x1a4($s0) +/* 04B7E0 8004ABE0 E626001C */ swc1 $f6, 0x1c($s1) +/* 04B7E4 8004ABE4 C612002C */ lwc1 $f18, 0x2c($s0) +/* 04B7E8 8004ABE8 C604003C */ lwc1 $f4, 0x3c($s0) +/* 04B7EC 8004ABEC 00000000 */ nop +/* 04B7F0 8004ABF0 46049282 */ mul.s $f10, $f18, $f4 +/* 04B7F4 8004ABF4 E62A0020 */ swc1 $f10, 0x20($s1) +/* 04B7F8 8004ABF8 C6060040 */ lwc1 $f6, 0x40($s0) +/* 04B7FC 8004ABFC C608002C */ lwc1 $f8, 0x2c($s0) +/* 04B800 8004AC00 00000000 */ nop +/* 04B804 8004AC04 46064482 */ mul.s $f18, $f8, $f6 +/* 04B808 8004AC08 E6320024 */ swc1 $f18, 0x24($s1) +/* 04B80C 8004AC0C 820E01E0 */ lb $t6, 0x1e0($s0) +/* 04B810 8004AC10 00000000 */ nop +/* 04B814 8004AC14 15C1002C */ bne $t6, $at, .L8004ACC8 +/* 04B818 8004AC18 00000000 */ nop +/* 04B81C 8004AC1C 19000002 */ blez $t0, .L8004AC28 +/* 04B820 8004AC20 240F0001 */ li $t7, 1 +/* 04B824 8004AC24 A20F01D4 */ sb $t7, 0x1d4($s0) +.L8004AC28: +/* 04B828 8004AC28 05010019 */ bgez $t0, .L8004AC90 +/* 04B82C 8004AC2C 29014001 */ slti $at, $t0, 0x4001 +/* 04B830 8004AC30 86380002 */ lh $t8, 2($s1) +/* 04B834 8004AC34 00000000 */ nop +/* 04B838 8004AC38 07000015 */ bltz $t8, .L8004AC90 +/* 04B83C 8004AC3C 29014001 */ slti $at, $t0, 0x4001 +/* 04B840 8004AC40 821901D4 */ lb $t9, 0x1d4($s0) +/* 04B844 8004AC44 2404000A */ li $a0, 10 +/* 04B848 8004AC48 13200011 */ beqz $t9, .L8004AC90 +/* 04B84C 8004AC4C 29014001 */ slti $at, $t0, 0x4001 +/* 04B850 8004AC50 A20001E0 */ sb $zero, 0x1e0($s0) +/* 04B854 8004AC54 A6200002 */ sh $zero, 2($s1) +/* 04B858 8004AC58 E7AE00DC */ swc1 $f14, 0xdc($sp) +/* 04B85C 8004AC5C 0C00322D */ jal func_8000C8B4 +/* 04B860 8004AC60 AFA800B8 */ sw $t0, 0xb8($sp) +/* 04B864 8004AC64 920B020C */ lbu $t3, 0x20c($s0) +/* 04B868 8004AC68 8FA800B8 */ lw $t0, 0xb8($sp) +/* 04B86C 8004AC6C C7AE00DC */ lwc1 $f14, 0xdc($sp) +/* 04B870 8004AC70 A20201D3 */ sb $v0, 0x1d3($s0) +/* 04B874 8004AC74 11600005 */ beqz $t3, .L8004AC8C +/* 04B878 8004AC78 A2000203 */ sb $zero, 0x203($s0) +/* 04B87C 8004AC7C 820C0203 */ lb $t4, 0x203($s0) +/* 04B880 8004AC80 00000000 */ nop +/* 04B884 8004AC84 358D0004 */ ori $t5, $t4, 4 +/* 04B888 8004AC88 A20D0203 */ sb $t5, 0x203($s0) +.L8004AC8C: +/* 04B88C 8004AC8C 29014001 */ slti $at, $t0, 0x4001 +.L8004AC90: +/* 04B890 8004AC90 142001A6 */ bnez $at, .L8004B32C +/* 04B894 8004AC94 00000000 */ nop +/* 04B898 8004AC98 862E0002 */ lh $t6, 2($s1) +/* 04B89C 8004AC9C 3C0F8012 */ lui $t7, %hi(D_8011D528) # $t7, 0x8012 +/* 04B8A0 8004ACA0 29C1C000 */ slti $at, $t6, -0x4000 +/* 04B8A4 8004ACA4 102001A1 */ beqz $at, .L8004B32C +/* 04B8A8 8004ACA8 00000000 */ nop +/* 04B8AC 8004ACAC 8DEFD528 */ lw $t7, %lo(D_8011D528)($t7) +/* 04B8B0 8004ACB0 2419003C */ li $t9, 60 +/* 04B8B4 8004ACB4 31F80010 */ andi $t8, $t7, 0x10 +/* 04B8B8 8004ACB8 1300019C */ beqz $t8, .L8004B32C +/* 04B8BC 8004ACBC 00000000 */ nop +/* 04B8C0 8004ACC0 1000019A */ b .L8004B32C +/* 04B8C4 8004ACC4 A21901D5 */ sb $t9, 0x1d5($s0) +.L8004ACC8: +/* 04B8C8 8004ACC8 05010002 */ bgez $t0, .L8004ACD4 +/* 04B8CC 8004ACCC 240B0001 */ li $t3, 1 +/* 04B8D0 8004ACD0 A20B01D4 */ sb $t3, 0x1d4($s0) +.L8004ACD4: +/* 04B8D4 8004ACD4 19000019 */ blez $t0, .L8004AD3C +/* 04B8D8 8004ACD8 2901C000 */ slti $at, $t0, -0x4000 +/* 04B8DC 8004ACDC 862C0002 */ lh $t4, 2($s1) +/* 04B8E0 8004ACE0 00000000 */ nop +/* 04B8E4 8004ACE4 1D800015 */ bgtz $t4, .L8004AD3C +/* 04B8E8 8004ACE8 2901C000 */ slti $at, $t0, -0x4000 +/* 04B8EC 8004ACEC 820D01D4 */ lb $t5, 0x1d4($s0) +/* 04B8F0 8004ACF0 2404000A */ li $a0, 10 +/* 04B8F4 8004ACF4 11A00011 */ beqz $t5, .L8004AD3C +/* 04B8F8 8004ACF8 2901C000 */ slti $at, $t0, -0x4000 +/* 04B8FC 8004ACFC A20001E0 */ sb $zero, 0x1e0($s0) +/* 04B900 8004AD00 A6200002 */ sh $zero, 2($s1) +/* 04B904 8004AD04 E7AE00DC */ swc1 $f14, 0xdc($sp) +/* 04B908 8004AD08 0C00322D */ jal func_8000C8B4 +/* 04B90C 8004AD0C AFA800B8 */ sw $t0, 0xb8($sp) +/* 04B910 8004AD10 920E020C */ lbu $t6, 0x20c($s0) +/* 04B914 8004AD14 8FA800B8 */ lw $t0, 0xb8($sp) +/* 04B918 8004AD18 C7AE00DC */ lwc1 $f14, 0xdc($sp) +/* 04B91C 8004AD1C A20201D3 */ sb $v0, 0x1d3($s0) +/* 04B920 8004AD20 11C00005 */ beqz $t6, .L8004AD38 +/* 04B924 8004AD24 A2000203 */ sb $zero, 0x203($s0) +/* 04B928 8004AD28 820F0203 */ lb $t7, 0x203($s0) +/* 04B92C 8004AD2C 00000000 */ nop +/* 04B930 8004AD30 35F80004 */ ori $t8, $t7, 4 +/* 04B934 8004AD34 A2180203 */ sb $t8, 0x203($s0) +.L8004AD38: +/* 04B938 8004AD38 2901C000 */ slti $at, $t0, -0x4000 +.L8004AD3C: +/* 04B93C 8004AD3C 1020017B */ beqz $at, .L8004B32C +/* 04B940 8004AD40 00000000 */ nop +/* 04B944 8004AD44 86390002 */ lh $t9, 2($s1) +/* 04B948 8004AD48 3C0B8012 */ lui $t3, %hi(D_8011D528) # $t3, 0x8012 +/* 04B94C 8004AD4C 2B214001 */ slti $at, $t9, 0x4001 +/* 04B950 8004AD50 14200176 */ bnez $at, .L8004B32C +/* 04B954 8004AD54 00000000 */ nop +/* 04B958 8004AD58 8D6BD528 */ lw $t3, %lo(D_8011D528)($t3) +/* 04B95C 8004AD5C 240D003C */ li $t5, 60 +/* 04B960 8004AD60 316C0010 */ andi $t4, $t3, 0x10 +/* 04B964 8004AD64 11800171 */ beqz $t4, .L8004B32C +/* 04B968 8004AD68 00000000 */ nop +/* 04B96C 8004AD6C 1000016F */ b .L8004B32C +/* 04B970 8004AD70 A20D01D5 */ sb $t5, 0x1d5($s0) +.L8004AD74: +/* 04B974 8004AD74 820401E1 */ lb $a0, 0x1e1($s0) +/* 04B978 8004AD78 A3A000A1 */ sb $zero, 0xa1($sp) +/* 04B97C 8004AD7C 820301E2 */ lb $v1, 0x1e2($s0) +/* 04B980 8004AD80 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 +/* 04B984 8004AD84 1060000B */ beqz $v1, .L8004ADB4 +/* 04B988 8004AD88 2401FFEF */ li $at, -17 +/* 04B98C 8004AD8C 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) +/* 04B990 8004AD90 240F0001 */ li $t7, 1 +/* 04B994 8004AD94 304E0010 */ andi $t6, $v0, 0x10 +/* 04B998 8004AD98 11C00002 */ beqz $t6, .L8004ADA4 +/* 04B99C 8004AD9C 0041C024 */ and $t8, $v0, $at +/* 04B9A0 8004ADA0 A3AF00A1 */ sb $t7, 0xa1($sp) +.L8004ADA4: +/* 04B9A4 8004ADA4 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 +/* 04B9A8 8004ADA8 AC38D528 */ sw $t8, %lo(D_8011D528)($at) +/* 04B9AC 8004ADAC 820301E2 */ lb $v1, 0x1e2($s0) +/* 04B9B0 8004ADB0 00000000 */ nop +.L8004ADB4: +/* 04B9B4 8004ADB4 28610002 */ slti $at, $v1, 2 +/* 04B9B8 8004ADB8 10200083 */ beqz $at, .L8004AFC8 +/* 04B9BC 8004ADBC 00000000 */ nop +/* 04B9C0 8004ADC0 86230002 */ lh $v1, 2($s1) +/* 04B9C4 8004ADC4 00804025 */ move $t0, $a0 +/* 04B9C8 8004ADC8 28613001 */ slti $at, $v1, 0x3001 +/* 04B9CC 8004ADCC 14200007 */ bnez $at, .L8004ADEC +/* 04B9D0 8004ADD0 00002025 */ move $a0, $zero +/* 04B9D4 8004ADD4 2464D000 */ addiu $a0, $v1, -0x3000 +/* 04B9D8 8004ADD8 28811001 */ slti $at, $a0, 0x1001 +/* 04B9DC 8004ADDC 1420000C */ bnez $at, .L8004AE10 +/* 04B9E0 8004ADE0 00000000 */ nop +/* 04B9E4 8004ADE4 1000000A */ b .L8004AE10 +/* 04B9E8 8004ADE8 24041000 */ li $a0, 4096 +.L8004ADEC: +/* 04B9EC 8004ADEC 2861D000 */ slti $at, $v1, -0x3000 +/* 04B9F0 8004ADF0 10200007 */ beqz $at, .L8004AE10 +/* 04B9F4 8004ADF4 00000000 */ nop +/* 04B9F8 8004ADF8 24643000 */ addiu $a0, $v1, 0x3000 +/* 04B9FC 8004ADFC 2881F000 */ slti $at, $a0, -0x1000 +/* 04BA00 8004AE00 10200003 */ beqz $at, .L8004AE10 +/* 04BA04 8004AE04 00042023 */ negu $a0, $a0 +/* 04BA08 8004AE08 2404F000 */ li $a0, -4096 +/* 04BA0C 8004AE0C 00042023 */ negu $a0, $a0 +.L8004AE10: +/* 04BA10 8004AE10 44842000 */ mtc1 $a0, $f4 +/* 04BA14 8004AE14 3C014580 */ li $at, 0x45800000 # 4096.000000 +/* 04BA18 8004AE18 468022A0 */ cvt.s.w $f10, $f4 +/* 04BA1C 8004AE1C 44814000 */ mtc1 $at, $f8 +/* 04BA20 8004AE20 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 04BA24 8004AE24 46085183 */ div.s $f6, $f10, $f8 +/* 04BA28 8004AE28 44812800 */ mtc1 $at, $f5 +/* 04BA2C 8004AE2C 44802000 */ mtc1 $zero, $f4 +/* 04BA30 8004AE30 3C0B8012 */ lui $t3, %hi(D_8011D528) # $t3, 0x8012 +/* 04BA34 8004AE34 8D6BD528 */ lw $t3, %lo(D_8011D528)($t3) +/* 04BA38 8004AE38 00000000 */ nop +/* 04BA3C 8004AE3C 316C0010 */ andi $t4, $t3, 0x10 +/* 04BA40 8004AE40 460034A1 */ cvt.d.s $f18, $f6 +/* 04BA44 8004AE44 44883000 */ mtc1 $t0, $f6 +/* 04BA48 8004AE48 46322281 */ sub.d $f10, $f4, $f18 +/* 04BA4C 8004AE4C 46803120 */ cvt.s.w $f4, $f6 +/* 04BA50 8004AE50 46205220 */ cvt.s.d $f8, $f10 +/* 04BA54 8004AE54 46082482 */ mul.s $f18, $f4, $f8 +/* 04BA58 8004AE58 4459F800 */ cfc1 $t9, $31 +/* 04BA5C 8004AE5C 00000000 */ nop +/* 04BA60 8004AE60 37210003 */ ori $at, $t9, 3 +/* 04BA64 8004AE64 38210002 */ xori $at, $at, 2 +/* 04BA68 8004AE68 44C1F800 */ ctc1 $at, $31 +/* 04BA6C 8004AE6C 00000000 */ nop +/* 04BA70 8004AE70 460092A4 */ cvt.w.s $f10, $f18 +/* 04BA74 8004AE74 44085000 */ mfc1 $t0, $f10 +/* 04BA78 8004AE78 44D9F800 */ ctc1 $t9, $31 +/* 04BA7C 8004AE7C 1180000D */ beqz $t4, .L8004AEB4 +/* 04BA80 8004AE80 8FAF00F8 */ lw $t7, 0xf8($sp) +/* 04BA84 8004AE84 8E2D0074 */ lw $t5, 0x74($s1) +/* 04BA88 8004AE88 00087900 */ sll $t7, $t0, 4 +/* 04BA8C 8004AE8C 35AE00C0 */ ori $t6, $t5, 0xc0 +/* 04BA90 8004AE90 AE2E0074 */ sw $t6, 0x74($s1) +/* 04BA94 8004AE94 8FB800F8 */ lw $t8, 0xf8($sp) +/* 04BA98 8004AE98 860C01A4 */ lh $t4, 0x1a4($s0) +/* 04BA9C 8004AE9C 01F80019 */ multu $t7, $t8 +/* 04BAA0 8004AEA0 0000C812 */ mflo $t9 +/* 04BAA4 8004AEA4 00195843 */ sra $t3, $t9, 1 +/* 04BAA8 8004AEA8 018B6823 */ subu $t5, $t4, $t3 +/* 04BAAC 8004AEAC A60D01A4 */ sh $t5, 0x1a4($s0) +/* 04BAB0 8004AEB0 8FAF00F8 */ lw $t7, 0xf8($sp) +.L8004AEB4: +/* 04BAB4 8004AEB4 860E01A4 */ lh $t6, 0x1a4($s0) +/* 04BAB8 8004AEB8 010F0019 */ multu $t0, $t7 +/* 04BABC 8004AEBC 0000C012 */ mflo $t8 +/* 04BAC0 8004AEC0 0018C880 */ sll $t9, $t8, 2 +/* 04BAC4 8004AEC4 0338C821 */ addu $t9, $t9, $t8 +/* 04BAC8 8004AEC8 0019C880 */ sll $t9, $t9, 2 +/* 04BACC 8004AECC 00196043 */ sra $t4, $t9, 1 +/* 04BAD0 8004AED0 01CC5823 */ subu $t3, $t6, $t4 +/* 04BAD4 8004AED4 A60B01A4 */ sh $t3, 0x1a4($s0) +/* 04BAD8 8004AED8 860301A4 */ lh $v1, 0x1a4($s0) +/* 04BADC 8004AEDC 8FAD00F8 */ lw $t5, 0xf8($sp) +/* 04BAE0 8004AEE0 920E01F5 */ lbu $t6, 0x1f5($s0) +/* 04BAE4 8004AEE4 006D0019 */ multu $v1, $t5 +/* 04BAE8 8004AEE8 3C0C8012 */ lui $t4, %hi(D_8011D55C) # $t4, 0x8012 +/* 04BAEC 8004AEEC 00007812 */ mflo $t7 +/* 04BAF0 8004AEF0 000FC103 */ sra $t8, $t7, 4 +/* 04BAF4 8004AEF4 0078C823 */ subu $t9, $v1, $t8 +/* 04BAF8 8004AEF8 15C00056 */ bnez $t6, .L8004B054 +/* 04BAFC 8004AEFC A61901A4 */ sh $t9, 0x1a4($s0) +/* 04BB00 8004AF00 8D8CD55C */ lw $t4, %lo(D_8011D55C)($t4) +/* 04BB04 8004AF04 2401FFFF */ li $at, -1 +/* 04BB08 8004AF08 11810025 */ beq $t4, $at, .L8004AFA0 +/* 04BB0C 8004AF0C 3C088012 */ lui $t0, %hi(D_8011D534) # $t0, 0x8012 +/* 04BB10 8004AF10 820B01D8 */ lb $t3, 0x1d8($s0) +/* 04BB14 8004AF14 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 +/* 04BB18 8004AF18 15600021 */ bnez $t3, .L8004AFA0 +/* 04BB1C 8004AF1C 00000000 */ nop +/* 04BB20 8004AF20 860801A4 */ lh $t0, 0x1a4($s0) +/* 04BB24 8004AF24 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) +/* 04BB28 8004AF28 00084023 */ negu $t0, $t0 +/* 04BB2C 8004AF2C 00086983 */ sra $t5, $t0, 6 +/* 04BB30 8004AF30 304F0010 */ andi $t7, $v0, 0x10 +/* 04BB34 8004AF34 11E00005 */ beqz $t7, .L8004AF4C +/* 04BB38 8004AF38 01A04025 */ move $t0, $t5 +/* 04BB3C 8004AF3C 30584000 */ andi $t8, $v0, 0x4000 +/* 04BB40 8004AF40 13000002 */ beqz $t8, .L8004AF4C +/* 04BB44 8004AF44 00000000 */ nop +/* 04BB48 8004AF48 000D4040 */ sll $t0, $t5, 1 +.L8004AF4C: +/* 04BB4C 8004AF4C 44883000 */ mtc1 $t0, $f6 +/* 04BB50 8004AF50 3C018012 */ lui $at, %hi(D_8011D570) # $at, 0x8012 +/* 04BB54 8004AF54 46803120 */ cvt.s.w $f4, $f6 +/* 04BB58 8004AF58 C428D570 */ lwc1 $f8, %lo(D_8011D570)($at) +/* 04BB5C 8004AF5C 8FAB00F8 */ lw $t3, 0xf8($sp) +/* 04BB60 8004AF60 46082482 */ mul.s $f18, $f4, $f8 +/* 04BB64 8004AF64 860C01A0 */ lh $t4, 0x1a0($s0) +/* 04BB68 8004AF68 444EF800 */ cfc1 $t6, $31 +/* 04BB6C 8004AF6C 00000000 */ nop +/* 04BB70 8004AF70 35C10003 */ ori $at, $t6, 3 +/* 04BB74 8004AF74 38210002 */ xori $at, $at, 2 +/* 04BB78 8004AF78 44C1F800 */ ctc1 $at, $31 +/* 04BB7C 8004AF7C 00000000 */ nop +/* 04BB80 8004AF80 460092A4 */ cvt.w.s $f10, $f18 +/* 04BB84 8004AF84 44085000 */ mfc1 $t0, $f10 +/* 04BB88 8004AF88 44CEF800 */ ctc1 $t6, $31 +/* 04BB8C 8004AF8C 010B0019 */ multu $t0, $t3 +/* 04BB90 8004AF90 00007812 */ mflo $t7 +/* 04BB94 8004AF94 018FC023 */ subu $t8, $t4, $t7 +/* 04BB98 8004AF98 1000002E */ b .L8004B054 +/* 04BB9C 8004AF9C A61801A0 */ sh $t8, 0x1a0($s0) +.L8004AFA0: +/* 04BBA0 8004AFA0 8D08D534 */ lw $t0, %lo(D_8011D534)($t0) +/* 04BBA4 8004AFA4 8FAB00F8 */ lw $t3, 0xf8($sp) +/* 04BBA8 8004AFA8 0008C880 */ sll $t9, $t0, 2 +/* 04BBAC 8004AFAC 032B0019 */ multu $t9, $t3 +/* 04BBB0 8004AFB0 860E01A0 */ lh $t6, 0x1a0($s0) +/* 04BBB4 8004AFB4 03204025 */ move $t0, $t9 +/* 04BBB8 8004AFB8 00006012 */ mflo $t4 +/* 04BBBC 8004AFBC 01CC7823 */ subu $t7, $t6, $t4 +/* 04BBC0 8004AFC0 10000024 */ b .L8004B054 +/* 04BBC4 8004AFC4 A60F01A0 */ sh $t7, 0x1a0($s0) +.L8004AFC8: +/* 04BBC8 8004AFC8 860301A4 */ lh $v1, 0x1a4($s0) +/* 04BBCC 8004AFCC 34018001 */ li $at, 32769 +/* 04BBD0 8004AFD0 3062FFFF */ andi $v0, $v1, 0xffff +/* 04BBD4 8004AFD4 00021023 */ negu $v0, $v0 +/* 04BBD8 8004AFD8 0041082A */ slt $at, $v0, $at +/* 04BBDC 8004AFDC 8FB800F8 */ lw $t8, 0xf8($sp) +/* 04BBE0 8004AFE0 14200004 */ bnez $at, .L8004AFF4 +/* 04BBE4 8004AFE4 00044080 */ sll $t0, $a0, 2 +/* 04BBE8 8004AFE8 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 04BBEC 8004AFEC 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 04BBF0 8004AFF0 00411021 */ addu $v0, $v0, $at +.L8004AFF4: +/* 04BBF4 8004AFF4 28418000 */ slti $at, $v0, -0x8000 +/* 04BBF8 8004AFF8 10200002 */ beqz $at, .L8004B004 +/* 04BBFC 8004AFFC 3401FFFF */ li $at, 65535 +/* 04BC00 8004B000 00411021 */ addu $v0, $v0, $at +.L8004B004: +/* 04BC04 8004B004 00580019 */ multu $v0, $t8 +/* 04BC08 8004B008 3C0E8012 */ lui $t6, %hi(D_8011D528) # $t6, 0x8012 +/* 04BC0C 8004B00C 0000C812 */ mflo $t9 +/* 04BC10 8004B010 00195903 */ sra $t3, $t9, 4 +/* 04BC14 8004B014 006B6821 */ addu $t5, $v1, $t3 +/* 04BC18 8004B018 A60D01A4 */ sh $t5, 0x1a4($s0) +/* 04BC1C 8004B01C 8DCED528 */ lw $t6, %lo(D_8011D528)($t6) +/* 04BC20 8004B020 8FB800F8 */ lw $t8, 0xf8($sp) +/* 04BC24 8004B024 31CC0010 */ andi $t4, $t6, 0x10 +/* 04BC28 8004B028 11800005 */ beqz $t4, .L8004B040 +/* 04BC2C 8004B02C 00000000 */ nop +/* 04BC30 8004B030 00044080 */ sll $t0, $a0, 2 +/* 04BC34 8004B034 01044023 */ subu $t0, $t0, $a0 +/* 04BC38 8004B038 10000001 */ b .L8004B040 +/* 04BC3C 8004B03C 00084040 */ sll $t0, $t0, 1 +.L8004B040: +/* 04BC40 8004B040 01180019 */ multu $t0, $t8 +/* 04BC44 8004B044 860F01A0 */ lh $t7, 0x1a0($s0) +/* 04BC48 8004B048 00005812 */ mflo $t3 +/* 04BC4C 8004B04C 01EB6823 */ subu $t5, $t7, $t3 +/* 04BC50 8004B050 A60D01A0 */ sh $t5, 0x1a0($s0) +.L8004B054: +/* 04BC54 8004B054 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 +/* 04BC58 8004B058 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) +/* 04BC5C 8004B05C 3C0F8012 */ lui $t7, %hi(D_8011D55C) # $t7, 0x8012 +/* 04BC60 8004B060 304E0010 */ andi $t6, $v0, 0x10 +/* 04BC64 8004B064 11C00009 */ beqz $t6, .L8004B08C +/* 04BC68 8004B068 01C01025 */ move $v0, $t6 +/* 04BC6C 8004B06C 820C01E2 */ lb $t4, 0x1e2($s0) +/* 04BC70 8004B070 00000000 */ nop +/* 04BC74 8004B074 11800005 */ beqz $t4, .L8004B08C +/* 04BC78 8004B078 00000000 */ nop +/* 04BC7C 8004B07C 921801F5 */ lbu $t8, 0x1f5($s0) +/* 04BC80 8004B080 00000000 */ nop +/* 04BC84 8004B084 13000020 */ beqz $t8, .L8004B108 +/* 04BC88 8004B088 00000000 */ nop +.L8004B08C: +/* 04BC8C 8004B08C 44882000 */ mtc1 $t0, $f4 +/* 04BC90 8004B090 C606002C */ lwc1 $f6, 0x2c($s0) +/* 04BC94 8004B094 46802220 */ cvt.s.w $f8, $f4 +/* 04BC98 8004B098 3C01800E */ lui $at, %hi(D_800E6514) # $at, 0x800e +/* 04BC9C 8004B09C C4256510 */ lwc1 $f5, %lo(D_800E6510)($at) +/* 04BCA0 8004B0A0 46083482 */ mul.s $f18, $f6, $f8 +/* 04BCA4 8004B0A4 C4246514 */ lwc1 $f4, %lo(D_800E6514)($at) +/* 04BCA8 8004B0A8 C628001C */ lwc1 $f8, 0x1c($s1) +/* 04BCAC 8004B0AC 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 +/* 04BCB0 8004B0B0 460092A1 */ cvt.d.s $f10, $f18 +/* 04BCB4 8004B0B4 46245182 */ mul.d $f6, $f10, $f4 +/* 04BCB8 8004B0B8 C6120050 */ lwc1 $f18, 0x50($s0) +/* 04BCBC 8004B0BC 46203520 */ cvt.s.d $f20, $f6 +/* 04BCC0 8004B0C0 C6260020 */ lwc1 $f6, 0x20($s1) +/* 04BCC4 8004B0C4 46149282 */ mul.s $f10, $f18, $f20 +/* 04BCC8 8004B0C8 460A4101 */ sub.s $f4, $f8, $f10 +/* 04BCCC 8004B0CC E624001C */ swc1 $f4, 0x1c($s1) +/* 04BCD0 8004B0D0 C6120054 */ lwc1 $f18, 0x54($s0) +/* 04BCD4 8004B0D4 C6240024 */ lwc1 $f4, 0x24($s1) +/* 04BCD8 8004B0D8 46149202 */ mul.s $f8, $f18, $f20 +/* 04BCDC 8004B0DC 46083281 */ sub.s $f10, $f6, $f8 +/* 04BCE0 8004B0E0 E62A0020 */ swc1 $f10, 0x20($s1) +/* 04BCE4 8004B0E4 C6120058 */ lwc1 $f18, 0x58($s0) +/* 04BCE8 8004B0E8 00000000 */ nop +/* 04BCEC 8004B0EC 46149182 */ mul.s $f6, $f18, $f20 +/* 04BCF0 8004B0F0 46062201 */ sub.s $f8, $f4, $f6 +/* 04BCF4 8004B0F4 E6280024 */ swc1 $f8, 0x24($s1) +/* 04BCF8 8004B0F8 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) +/* 04BCFC 8004B0FC 00000000 */ nop +/* 04BD00 8004B100 30590010 */ andi $t9, $v0, 0x10 +/* 04BD04 8004B104 03201025 */ move $v0, $t9 +.L8004B108: +/* 04BD08 8004B108 8DEFD55C */ lw $t7, %lo(D_8011D55C)($t7) +/* 04BD0C 8004B10C 3C088012 */ lui $t0, %hi(D_8011D538) # $t0, 0x8012 +/* 04BD10 8004B110 8D08D538 */ lw $t0, %lo(D_8011D538)($t0) +/* 04BD14 8004B114 2401FFFF */ li $at, -1 +/* 04BD18 8004B118 11E10007 */ beq $t7, $at, .L8004B138 +/* 04BD1C 8004B11C 00000000 */ nop +/* 04BD20 8004B120 820B01D8 */ lb $t3, 0x1d8($s0) +/* 04BD24 8004B124 00000000 */ nop +/* 04BD28 8004B128 15600003 */ bnez $t3, .L8004B138 +/* 04BD2C 8004B12C 00000000 */ nop +/* 04BD30 8004B130 820801E8 */ lb $t0, 0x1e8($s0) +/* 04BD34 8004B134 00000000 */ nop +.L8004B138: +/* 04BD38 8004B138 C602002C */ lwc1 $f2, 0x2c($s0) +/* 04BD3C 8004B13C 3C014010 */ li $at, 0x40100000 # 2.250000 +/* 04BD40 8004B140 44815800 */ mtc1 $at, $f11 +/* 04BD44 8004B144 44805000 */ mtc1 $zero, $f10 +/* 04BD48 8004B148 46001087 */ neg.s $f2, $f2 +/* 04BD4C 8004B14C 46001021 */ cvt.d.s $f0, $f2 +/* 04BD50 8004B150 462A003C */ c.lt.d $f0, $f10 +/* 04BD54 8004B154 44809000 */ mtc1 $zero, $f18 +/* 04BD58 8004B158 45000004 */ bc1f .L8004B16C +/* 04BD5C 8004B15C 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 04BD60 8004B160 44811000 */ mtc1 $at, $f2 +/* 04BD64 8004B164 00000000 */ nop +/* 04BD68 8004B168 46001021 */ cvt.d.s $f0, $f2 +.L8004B16C: +/* 04BD6C 8004B16C 3C01402C */ li $at, 0x402C0000 # 2.687500 +/* 04BD70 8004B170 44819800 */ mtc1 $at, $f19 +/* 04BD74 8004B174 44802000 */ mtc1 $zero, $f4 +/* 04BD78 8004B178 4620903C */ c.lt.d $f18, $f0 +/* 04BD7C 8004B17C 8FAB00F8 */ lw $t3, 0xf8($sp) +/* 04BD80 8004B180 45000004 */ bc1f .L8004B194 +/* 04BD84 8004B184 3C014160 */ li $at, 0x41600000 # 14.000000 +/* 04BD88 8004B188 44811000 */ mtc1 $at, $f2 +/* 04BD8C 8004B18C 00000000 */ nop +/* 04BD90 8004B190 46001021 */ cvt.d.s $f0, $f2 +.L8004B194: +/* 04BD94 8004B194 3C01401C */ li $at, 0x401C0000 # 2.437500 +/* 04BD98 8004B198 44812800 */ mtc1 $at, $f5 +/* 04BD9C 8004B19C 44884000 */ mtc1 $t0, $f8 +/* 04BDA0 8004B1A0 46240183 */ div.d $f6, $f0, $f4 +/* 04BDA4 8004B1A4 468042A0 */ cvt.s.w $f10, $f8 +/* 04BDA8 8004B1A8 8FAC00F8 */ lw $t4, 0xf8($sp) +/* 04BDAC 8004B1AC 462030A0 */ cvt.s.d $f2, $f6 +/* 04BDB0 8004B1B0 46025482 */ mul.s $f18, $f10, $f2 +/* 04BDB4 8004B1B4 444DF800 */ cfc1 $t5, $31 +/* 04BDB8 8004B1B8 00000000 */ nop +/* 04BDBC 8004B1BC 35A10003 */ ori $at, $t5, 3 +/* 04BDC0 8004B1C0 38210002 */ xori $at, $at, 2 +/* 04BDC4 8004B1C4 44C1F800 */ ctc1 $at, $31 +/* 04BDC8 8004B1C8 00000000 */ nop +/* 04BDCC 8004B1CC 46009124 */ cvt.w.s $f4, $f18 +/* 04BDD0 8004B1D0 44082000 */ mfc1 $t0, $f4 +/* 04BDD4 8004B1D4 44CDF800 */ ctc1 $t5, $31 +/* 04BDD8 8004B1D8 14400014 */ bnez $v0, .L8004B22C +/* 04BDDC 8004B1DC 00000000 */ nop +/* 04BDE0 8004B1E0 86230002 */ lh $v1, 2($s1) +/* 04BDE4 8004B1E4 00087043 */ sra $t6, $t0, 1 +/* 04BDE8 8004B1E8 006C0019 */ multu $v1, $t4 +/* 04BDEC 8004B1EC 000E5880 */ sll $t3, $t6, 2 +/* 04BDF0 8004B1F0 016E5821 */ addu $t3, $t3, $t6 +/* 04BDF4 8004B1F4 000B5880 */ sll $t3, $t3, 2 +/* 04BDF8 8004B1F8 016E5823 */ subu $t3, $t3, $t6 +/* 04BDFC 8004B1FC 0000C012 */ mflo $t8 +/* 04BE00 8004B200 0018C903 */ sra $t9, $t8, 4 +/* 04BE04 8004B204 00797823 */ subu $t7, $v1, $t9 +/* 04BE08 8004B208 A62F0002 */ sh $t7, 2($s1) +/* 04BE0C 8004B20C 8FAD00F8 */ lw $t5, 0xf8($sp) +/* 04BE10 8004B210 86380002 */ lh $t8, 2($s1) +/* 04BE14 8004B214 016D0019 */ multu $t3, $t5 +/* 04BE18 8004B218 00007012 */ mflo $t6 +/* 04BE1C 8004B21C 000E6043 */ sra $t4, $t6, 1 +/* 04BE20 8004B220 030CC823 */ subu $t9, $t8, $t4 +/* 04BE24 8004B224 10000012 */ b .L8004B270 +/* 04BE28 8004B228 A6390002 */ sh $t9, 2($s1) +.L8004B22C: +/* 04BE2C 8004B22C 86230002 */ lh $v1, 2($s1) +/* 04BE30 8004B230 00087843 */ sra $t7, $t0, 1 +/* 04BE34 8004B234 006B0019 */ multu $v1, $t3 +/* 04BE38 8004B238 000F6100 */ sll $t4, $t7, 4 +/* 04BE3C 8004B23C 018F6023 */ subu $t4, $t4, $t7 +/* 04BE40 8004B240 000C6040 */ sll $t4, $t4, 1 +/* 04BE44 8004B244 00006812 */ mflo $t5 +/* 04BE48 8004B248 000D7103 */ sra $t6, $t5, 4 +/* 04BE4C 8004B24C 006EC023 */ subu $t8, $v1, $t6 +/* 04BE50 8004B250 A6380002 */ sh $t8, 2($s1) +/* 04BE54 8004B254 8FB900F8 */ lw $t9, 0xf8($sp) +/* 04BE58 8004B258 862D0002 */ lh $t5, 2($s1) +/* 04BE5C 8004B25C 01990019 */ multu $t4, $t9 +/* 04BE60 8004B260 00007812 */ mflo $t7 +/* 04BE64 8004B264 000F5843 */ sra $t3, $t7, 1 +/* 04BE68 8004B268 01AB7023 */ subu $t6, $t5, $t3 +/* 04BE6C 8004B26C A62E0002 */ sh $t6, 2($s1) +.L8004B270: +/* 04BE70 8004B270 821801EC */ lb $t8, 0x1ec($s0) +/* 04BE74 8004B274 00000000 */ nop +/* 04BE78 8004B278 1300002C */ beqz $t8, .L8004B32C +/* 04BE7C 8004B27C 00000000 */ nop +/* 04BE80 8004B280 820C01E2 */ lb $t4, 0x1e2($s0) +/* 04BE84 8004B284 A20001EC */ sb $zero, 0x1ec($s0) +/* 04BE88 8004B288 15800028 */ bnez $t4, .L8004B32C +/* 04BE8C 8004B28C 3C01C01A */ li $at, 0xC01A0000 # -2.406250 +/* 04BE90 8004B290 C606002C */ lwc1 $f6, 0x2c($s0) +/* 04BE94 8004B294 44815800 */ mtc1 $at, $f11 +/* 04BE98 8004B298 44805000 */ mtc1 $zero, $f10 +/* 04BE9C 8004B29C 46003221 */ cvt.d.s $f8, $f6 +/* 04BEA0 8004B2A0 462A403C */ c.lt.d $f8, $f10 +/* 04BEA4 8004B2A4 00000000 */ nop +/* 04BEA8 8004B2A8 45000020 */ bc1f .L8004B32C +/* 04BEAC 8004B2AC 00000000 */ nop +/* 04BEB0 8004B2B0 821901E5 */ lb $t9, 0x1e5($s0) +/* 04BEB4 8004B2B4 3C028012 */ lui $v0, %hi(D_8011D534) # $v0, 0x8012 +/* 04BEB8 8004B2B8 1720001C */ bnez $t9, .L8004B32C +/* 04BEBC 8004B2BC 3C0B8012 */ lui $t3, %hi(D_8011D538) # $t3, 0x8012 +/* 04BEC0 8004B2C0 8C42D534 */ lw $v0, %lo(D_8011D534)($v0) +/* 04BEC4 8004B2C4 240FFFFF */ li $t7, -1 +/* 04BEC8 8004B2C8 28410029 */ slti $at, $v0, 0x29 +/* 04BECC 8004B2CC 14200005 */ bnez $at, .L8004B2E4 +/* 04BED0 8004B2D0 240D0001 */ li $t5, 1 +/* 04BED4 8004B2D4 A20F01E0 */ sb $t7, 0x1e0($s0) +/* 04BED8 8004B2D8 3C028012 */ lui $v0, %hi(D_8011D534) # $v0, 0x8012 +/* 04BEDC 8004B2DC 8C42D534 */ lw $v0, %lo(D_8011D534)($v0) +/* 04BEE0 8004B2E0 00000000 */ nop +.L8004B2E4: +/* 04BEE4 8004B2E4 2841FFD8 */ slti $at, $v0, -0x28 +/* 04BEE8 8004B2E8 10200002 */ beqz $at, .L8004B2F4 +/* 04BEEC 8004B2EC 00000000 */ nop +/* 04BEF0 8004B2F0 A20D01E0 */ sb $t5, 0x1e0($s0) +.L8004B2F4: +/* 04BEF4 8004B2F4 8D6BD538 */ lw $t3, %lo(D_8011D538)($t3) +/* 04BEF8 8004B2F8 00000000 */ nop +/* 04BEFC 8004B2FC 29610029 */ slti $at, $t3, 0x29 +/* 04BF00 8004B300 14200003 */ bnez $at, .L8004B310 +/* 04BF04 8004B304 00000000 */ nop +/* 04BF08 8004B308 10000006 */ b .L8004B324 +/* 04BF0C 8004B30C A20501E0 */ sb $a1, 0x1e0($s0) +.L8004B310: +/* 04BF10 8004B310 820E01E0 */ lb $t6, 0x1e0($s0) +/* 04BF14 8004B314 24180002 */ li $t8, 2 +/* 04BF18 8004B318 15C00002 */ bnez $t6, .L8004B324 +/* 04BF1C 8004B31C 00000000 */ nop +/* 04BF20 8004B320 A21801E0 */ sb $t8, 0x1e0($s0) +.L8004B324: +/* 04BF24 8004B324 A20001D4 */ sb $zero, 0x1d4($s0) +/* 04BF28 8004B328 A20001D5 */ sb $zero, 0x1d5($s0) +.L8004B32C: +/* 04BF2C 8004B32C 3C0C8012 */ lui $t4, %hi(D_8011D55C) # $t4, 0x8012 +/* 04BF30 8004B330 8D8CD55C */ lw $t4, %lo(D_8011D55C)($t4) +/* 04BF34 8004B334 2401FFFF */ li $at, -1 +/* 04BF38 8004B338 1181000F */ beq $t4, $at, .L8004B378 +/* 04BF3C 8004B33C 02202025 */ move $a0, $s1 +/* 04BF40 8004B340 3C01C080 */ li $at, 0xC0800000 # -4.000000 +/* 04BF44 8004B344 44812000 */ mtc1 $at, $f4 +/* 04BF48 8004B348 C612002C */ lwc1 $f18, 0x2c($s0) +/* 04BF4C 8004B34C 00000000 */ nop +/* 04BF50 8004B350 4604903C */ c.lt.s $f18, $f4 +/* 04BF54 8004B354 00000000 */ nop +/* 04BF58 8004B358 45000008 */ bc1f .L8004B37C +/* 04BF5C 8004B35C 02002825 */ move $a1, $s0 +/* 04BF60 8004B360 8E220074 */ lw $v0, 0x74($s1) +/* 04BF64 8004B364 240100C0 */ li $at, 192 +/* 04BF68 8004B368 305900C0 */ andi $t9, $v0, 0xc0 +/* 04BF6C 8004B36C 13210002 */ beq $t9, $at, .L8004B378 +/* 04BF70 8004B370 344F000C */ ori $t7, $v0, 0xc +/* 04BF74 8004B374 AE2F0074 */ sw $t7, 0x74($s1) +.L8004B378: +/* 04BF78 8004B378 02002825 */ move $a1, $s0 +.L8004B37C: +/* 04BF7C 8004B37C 0C015C88 */ jal func_80057220 +/* 04BF80 8004B380 E7AE00DC */ swc1 $f14, 0xdc($sp) +/* 04BF84 8004B384 C7AE00DC */ lwc1 $f14, 0xdc($sp) +/* 04BF88 8004B388 3C01800E */ lui $at, %hi(D_800E651C) # $at, 0x800e +/* 04BF8C 8004B38C 46007382 */ mul.s $f14, $f14, $f0 +/* 04BF90 8004B390 C4296518 */ lwc1 $f9, %lo(D_800E6518)($at) +/* 04BF94 8004B394 C428651C */ lwc1 $f8, %lo(D_800E651C)($at) +/* 04BF98 8004B398 820201D3 */ lb $v0, 0x1d3($s0) +/* 04BF9C 8004B39C 460071A1 */ cvt.d.s $f6, $f14 +/* 04BFA0 8004B3A0 46283282 */ mul.d $f10, $f6, $f8 +/* 04BFA4 8004B3A4 18400012 */ blez $v0, .L8004B3F0 +/* 04BFA8 8004B3A8 462053A0 */ cvt.s.d $f14, $f10 +/* 04BFAC 8004B3AC 3C0D8012 */ lui $t5, %hi(D_8011D540) # $t5, 0x8012 +/* 04BFB0 8004B3B0 8DADD540 */ lw $t5, %lo(D_8011D540)($t5) +/* 04BFB4 8004B3B4 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 04BFB8 8004B3B8 15A0000E */ bnez $t5, .L8004B3F4 +/* 04BFBC 8004B3BC 00000000 */ nop +/* 04BFC0 8004B3C0 44819000 */ mtc1 $at, $f18 +/* 04BFC4 8004B3C4 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 04BFC8 8004B3C8 E61200B4 */ swc1 $f18, 0xb4($s0) +/* 04BFCC 8004B3CC 8FAB00F8 */ lw $t3, 0xf8($sp) +/* 04BFD0 8004B3D0 44817000 */ mtc1 $at, $f14 +/* 04BFD4 8004B3D4 004B7023 */ subu $t6, $v0, $t3 +/* 04BFD8 8004B3D8 A20E01D3 */ sb $t6, 0x1d3($s0) +/* 04BFDC 8004B3DC 8E380074 */ lw $t8, 0x74($s1) +/* 04BFE0 8004B3E0 00000000 */ nop +/* 04BFE4 8004B3E4 370C00C0 */ ori $t4, $t8, 0xc0 +/* 04BFE8 8004B3E8 10000002 */ b .L8004B3F4 +/* 04BFEC 8004B3EC AE2C0074 */ sw $t4, 0x74($s1) +.L8004B3F0: +/* 04BFF0 8004B3F0 A20001D3 */ sb $zero, 0x1d3($s0) +.L8004B3F4: +/* 04BFF4 8004B3F4 921901F5 */ lbu $t9, 0x1f5($s0) +/* 04BFF8 8004B3F8 00000000 */ nop +/* 04BFFC 8004B3FC 17200128 */ bnez $t9, .L8004B8A0 +/* 04C000 8004B400 3C0F8012 */ lui $t7, %hi(D_8011D540) # $t7, 0x8012 +/* 04C004 8004B404 8DEFD540 */ lw $t7, %lo(D_8011D540)($t7) +/* 04C008 8004B408 00000000 */ nop +/* 04C00C 8004B40C 15E00124 */ bnez $t7, .L8004B8A0 +/* 04C010 8004B410 00000000 */ nop +/* 04C014 8004B414 820D01E2 */ lb $t5, 0x1e2($s0) +/* 04C018 8004B418 C7A400C8 */ lwc1 $f4, 0xc8($sp) +/* 04C01C 8004B41C 15A0000F */ bnez $t5, .L8004B45C +/* 04C020 8004B420 3C01800E */ lui $at, %hi(D_800E6524) # $at, 0x800e +/* 04C024 8004B424 C4296520 */ lwc1 $f9, %lo(D_800E6520)($at) +/* 04C028 8004B428 C4286524 */ lwc1 $f8, %lo(D_800E6524)($at) +/* 04C02C 8004B42C 460021A1 */ cvt.d.s $f6, $f4 +/* 04C030 8004B430 4628303C */ c.lt.d $f6, $f8 +/* 04C034 8004B434 00000000 */ nop +/* 04C038 8004B438 45000008 */ bc1f .L8004B45C +/* 04C03C 8004B43C 00000000 */ nop +/* 04C040 8004B440 820B01D6 */ lb $t3, 0x1d6($s0) +/* 04C044 8004B444 2401000A */ li $at, 10 +/* 04C048 8004B448 11610004 */ beq $t3, $at, .L8004B45C +/* 04C04C 8004B44C 3C01800E */ lui $at, %hi(D_800E6528) # $at, 0x800e +/* 04C050 8004B450 C4206528 */ lwc1 $f0, %lo(D_800E6528)($at) +/* 04C054 8004B454 00000000 */ nop +/* 04C058 8004B458 E7A000C8 */ swc1 $f0, 0xc8($sp) +.L8004B45C: +/* 04C05C 8004B45C C7A000C8 */ lwc1 $f0, 0xc8($sp) +/* 04C060 8004B460 C6120038 */ lwc1 $f18, 0x38($s0) +/* 04C064 8004B464 460E0002 */ mul.s $f0, $f0, $f14 +/* 04C068 8004B468 C62A001C */ lwc1 $f10, 0x1c($s1) +/* 04C06C 8004B46C C6280020 */ lwc1 $f8, 0x20($s1) +/* 04C070 8004B470 3C188012 */ lui $t8, %hi(D_8011D528) # $t8, 0x8012 +/* 04C074 8004B474 46009102 */ mul.s $f4, $f18, $f0 +/* 04C078 8004B478 46045181 */ sub.s $f6, $f10, $f4 +/* 04C07C 8004B47C E626001C */ swc1 $f6, 0x1c($s1) +/* 04C080 8004B480 C612003C */ lwc1 $f18, 0x3c($s0) +/* 04C084 8004B484 C6260024 */ lwc1 $f6, 0x24($s1) +/* 04C088 8004B488 46009282 */ mul.s $f10, $f18, $f0 +/* 04C08C 8004B48C 460A4101 */ sub.s $f4, $f8, $f10 +/* 04C090 8004B490 E6240020 */ swc1 $f4, 0x20($s1) +/* 04C094 8004B494 C6120040 */ lwc1 $f18, 0x40($s0) +/* 04C098 8004B498 00000000 */ nop +/* 04C09C 8004B49C 46009202 */ mul.s $f8, $f18, $f0 +/* 04C0A0 8004B4A0 46083281 */ sub.s $f10, $f6, $f8 +/* 04C0A4 8004B4A4 E62A0024 */ swc1 $f10, 0x24($s1) +/* 04C0A8 8004B4A8 820301E2 */ lb $v1, 0x1e2($s0) +/* 04C0AC 8004B4AC 00000000 */ nop +/* 04C0B0 8004B4B0 28610003 */ slti $at, $v1, 3 +/* 04C0B4 8004B4B4 1020000E */ beqz $at, .L8004B4F0 +/* 04C0B8 8004B4B8 00000000 */ nop +/* 04C0BC 8004B4BC C602002C */ lwc1 $f2, 0x2c($s0) +/* 04C0C0 8004B4C0 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 04C0C4 8004B4C4 44819800 */ mtc1 $at, $f19 +/* 04C0C8 8004B4C8 44809000 */ mtc1 $zero, $f18 +/* 04C0CC 8004B4CC 46001121 */ cvt.d.s $f4, $f2 +/* 04C0D0 8004B4D0 4632203C */ c.lt.d $f4, $f18 +/* 04C0D4 8004B4D4 00000000 */ nop +/* 04C0D8 8004B4D8 45010005 */ bc1t .L8004B4F0 +/* 04C0DC 8004B4DC 00000000 */ nop +/* 04C0E0 8004B4E0 820E01D6 */ lb $t6, 0x1d6($s0) +/* 04C0E4 8004B4E4 2401000A */ li $at, 10 +/* 04C0E8 8004B4E8 15C1001F */ bne $t6, $at, .L8004B568 +/* 04C0EC 8004B4EC 00000000 */ nop +.L8004B4F0: +/* 04C0F0 8004B4F0 14600006 */ bnez $v1, .L8004B50C +/* 04C0F4 8004B4F4 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 04C0F8 8004B4F8 C7A000C4 */ lwc1 $f0, 0xc4($sp) +/* 04C0FC 8004B4FC 44813000 */ mtc1 $at, $f6 +/* 04C100 8004B500 00000000 */ nop +/* 04C104 8004B504 46060003 */ div.s $f0, $f0, $f6 +/* 04C108 8004B508 E7A000C4 */ swc1 $f0, 0xc4($sp) +.L8004B50C: +/* 04C10C 8004B50C 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 04C110 8004B510 44814000 */ mtc1 $at, $f8 +/* 04C114 8004B514 C7A000C4 */ lwc1 $f0, 0xc4($sp) +/* 04C118 8004B518 46087283 */ div.s $f10, $f14, $f8 +/* 04C11C 8004B51C C6120038 */ lwc1 $f18, 0x38($s0) +/* 04C120 8004B520 C624001C */ lwc1 $f4, 0x1c($s1) +/* 04C124 8004B524 460A0002 */ mul.s $f0, $f0, $f10 +/* 04C128 8004B528 C62A0020 */ lwc1 $f10, 0x20($s1) +/* 04C12C 8004B52C 46009182 */ mul.s $f6, $f18, $f0 +/* 04C130 8004B530 46062200 */ add.s $f8, $f4, $f6 +/* 04C134 8004B534 E628001C */ swc1 $f8, 0x1c($s1) +/* 04C138 8004B538 C612003C */ lwc1 $f18, 0x3c($s0) +/* 04C13C 8004B53C C6280024 */ lwc1 $f8, 0x24($s1) +/* 04C140 8004B540 46009102 */ mul.s $f4, $f18, $f0 +/* 04C144 8004B544 46045180 */ add.s $f6, $f10, $f4 +/* 04C148 8004B548 E6260020 */ swc1 $f6, 0x20($s1) +/* 04C14C 8004B54C C6120040 */ lwc1 $f18, 0x40($s0) +/* 04C150 8004B550 00000000 */ nop +/* 04C154 8004B554 46009282 */ mul.s $f10, $f18, $f0 +/* 04C158 8004B558 460A4100 */ add.s $f4, $f8, $f10 +/* 04C15C 8004B55C E6240024 */ swc1 $f4, 0x24($s1) +/* 04C160 8004B560 C602002C */ lwc1 $f2, 0x2c($s0) +/* 04C164 8004B564 00000000 */ nop +.L8004B568: +/* 04C168 8004B568 44803000 */ mtc1 $zero, $f6 +/* 04C16C 8004B56C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 04C170 8004B570 4606103C */ c.lt.s $f2, $f6 +/* 04C174 8004B574 46021302 */ mul.s $f12, $f2, $f2 +/* 04C178 8004B578 44819000 */ mtc1 $at, $f18 +/* 04C17C 8004B57C 45000002 */ bc1f .L8004B588 +/* 04C180 8004B580 00000000 */ nop +/* 04C184 8004B584 46006307 */ neg.s $f12, $f12 +.L8004B588: +/* 04C188 8004B588 4612603C */ c.lt.s $f12, $f18 +/* 04C18C 8004B58C C7A600D8 */ lwc1 $f6, 0xd8($sp) +/* 04C190 8004B590 4500000D */ bc1f .L8004B5C8 +/* 04C194 8004B594 00000000 */ nop +/* 04C198 8004B598 8F18D528 */ lw $t8, %lo(D_8011D528)($t8) +/* 04C19C 8004B59C C7A800D8 */ lwc1 $f8, 0xd8($sp) +/* 04C1A0 8004B5A0 330C8000 */ andi $t4, $t8, 0x8000 +/* 04C1A4 8004B5A4 15800008 */ bnez $t4, .L8004B5C8 +/* 04C1A8 8004B5A8 00000000 */ nop +/* 04C1AC 8004B5AC 46081282 */ mul.s $f10, $f2, $f8 +/* 04C1B0 8004B5B0 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 04C1B4 8004B5B4 44812000 */ mtc1 $at, $f4 +/* 04C1B8 8004B5B8 00000000 */ nop +/* 04C1BC 8004B5BC 46045502 */ mul.s $f20, $f10, $f4 +/* 04C1C0 8004B5C0 10000004 */ b .L8004B5D4 +/* 04C1C4 8004B5C4 C6080038 */ lwc1 $f8, 0x38($s0) +.L8004B5C8: +/* 04C1C8 8004B5C8 46066502 */ mul.s $f20, $f12, $f6 +/* 04C1CC 8004B5CC 00000000 */ nop +/* 04C1D0 8004B5D0 C6080038 */ lwc1 $f8, 0x38($s0) +.L8004B5D4: +/* 04C1D4 8004B5D4 C632001C */ lwc1 $f18, 0x1c($s1) +/* 04C1D8 8004B5D8 46144282 */ mul.s $f10, $f8, $f20 +/* 04C1DC 8004B5DC C6260020 */ lwc1 $f6, 0x20($s1) +/* 04C1E0 8004B5E0 460A9101 */ sub.s $f4, $f18, $f10 +/* 04C1E4 8004B5E4 E624001C */ swc1 $f4, 0x1c($s1) +/* 04C1E8 8004B5E8 C608003C */ lwc1 $f8, 0x3c($s0) +/* 04C1EC 8004B5EC C6240024 */ lwc1 $f4, 0x24($s1) +/* 04C1F0 8004B5F0 46144482 */ mul.s $f18, $f8, $f20 +/* 04C1F4 8004B5F4 46123281 */ sub.s $f10, $f6, $f18 +/* 04C1F8 8004B5F8 E62A0020 */ swc1 $f10, 0x20($s1) +/* 04C1FC 8004B5FC C6080040 */ lwc1 $f8, 0x40($s0) +/* 04C200 8004B600 00000000 */ nop +/* 04C204 8004B604 46144182 */ mul.s $f6, $f8, $f20 +/* 04C208 8004B608 46062481 */ sub.s $f18, $f4, $f6 +/* 04C20C 8004B60C 44802000 */ mtc1 $zero, $f4 +/* 04C210 8004B610 E6320024 */ swc1 $f18, 0x24($s1) +/* 04C214 8004B614 C6000030 */ lwc1 $f0, 0x30($s0) +/* 04C218 8004B618 C7A800D4 */ lwc1 $f8, 0xd4($sp) +/* 04C21C 8004B61C 46000282 */ mul.s $f10, $f0, $f0 +/* 04C220 8004B620 4604003C */ c.lt.s $f0, $f4 +/* 04C224 8004B624 C7A600D4 */ lwc1 $f6, 0xd4($sp) +/* 04C228 8004B628 46085502 */ mul.s $f20, $f10, $f8 +/* 04C22C 8004B62C 45000002 */ bc1f .L8004B638 +/* 04C230 8004B630 00000000 */ nop +/* 04C234 8004B634 4600A507 */ neg.s $f20, $f20 +.L8004B638: +/* 04C238 8004B638 46060482 */ mul.s $f18, $f0, $f6 +/* 04C23C 8004B63C 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 04C240 8004B640 44815000 */ mtc1 $at, $f10 +/* 04C244 8004B644 C6060050 */ lwc1 $f6, 0x50($s0) +/* 04C248 8004B648 460A9202 */ mul.s $f8, $f18, $f10 +/* 04C24C 8004B64C C624001C */ lwc1 $f4, 0x1c($s1) +/* 04C250 8004B650 24010001 */ li $at, 1 +/* 04C254 8004B654 4608A500 */ add.s $f20, $f20, $f8 +/* 04C258 8004B658 C6280020 */ lwc1 $f8, 0x20($s1) +/* 04C25C 8004B65C 46143482 */ mul.s $f18, $f6, $f20 +/* 04C260 8004B660 46122281 */ sub.s $f10, $f4, $f18 +/* 04C264 8004B664 E62A001C */ swc1 $f10, 0x1c($s1) +/* 04C268 8004B668 C6060054 */ lwc1 $f6, 0x54($s0) +/* 04C26C 8004B66C C62A0024 */ lwc1 $f10, 0x24($s1) +/* 04C270 8004B670 46143102 */ mul.s $f4, $f6, $f20 +/* 04C274 8004B674 46044481 */ sub.s $f18, $f8, $f4 +/* 04C278 8004B678 E6320020 */ swc1 $f18, 0x20($s1) +/* 04C27C 8004B67C C6060058 */ lwc1 $f6, 0x58($s0) +/* 04C280 8004B680 00000000 */ nop +/* 04C284 8004B684 46143202 */ mul.s $f8, $f6, $f20 +/* 04C288 8004B688 46085101 */ sub.s $f4, $f10, $f8 +/* 04C28C 8004B68C E6240024 */ swc1 $f4, 0x24($s1) +/* 04C290 8004B690 820201E0 */ lb $v0, 0x1e0($s0) +/* 04C294 8004B694 00000000 */ nop +/* 04C298 8004B698 10410002 */ beq $v0, $at, .L8004B6A4 +/* 04C29C 8004B69C 2401FFFF */ li $at, -1 +/* 04C2A0 8004B6A0 1441004E */ bne $v0, $at, .L8004B7DC +.L8004B6A4: +/* 04C2A4 8004B6A4 3C01800E */ lui $at, %hi(D_800E6534) # $at, 0x800e +/* 04C2A8 8004B6A8 C612002C */ lwc1 $f18, 0x2c($s0) +/* 04C2AC 8004B6AC C42B6530 */ lwc1 $f11, %lo(D_800E6530)($at) +/* 04C2B0 8004B6B0 C42A6534 */ lwc1 $f10, %lo(D_800E6534)($at) +/* 04C2B4 8004B6B4 460091A1 */ cvt.d.s $f6, $f18 +/* 04C2B8 8004B6B8 462A3202 */ mul.d $f8, $f6, $f10 +/* 04C2BC 8004B6BC 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 +/* 04C2C0 8004B6C0 44812800 */ mtc1 $at, $f5 +/* 04C2C4 8004B6C4 44802000 */ mtc1 $zero, $f4 +/* 04C2C8 8004B6C8 860401A4 */ lh $a0, 0x1a4($s0) +/* 04C2CC 8004B6CC 46244482 */ mul.d $f18, $f8, $f4 +/* 04C2D0 8004B6D0 46209320 */ cvt.s.d $f12, $f18 +/* 04C2D4 8004B6D4 0C01C1FE */ jal func_800707F8 +/* 04C2D8 8004B6D8 E7AC00EC */ swc1 $f12, 0xec($sp) +/* 04C2DC 8004B6DC 821901E0 */ lb $t9, 0x1e0($s0) +/* 04C2E0 8004B6E0 C7AC00EC */ lwc1 $f12, 0xec($sp) +/* 04C2E4 8004B6E4 44995000 */ mtc1 $t9, $f10 +/* 04C2E8 8004B6E8 460C0182 */ mul.s $f6, $f0, $f12 +/* 04C2EC 8004B6EC 860301A4 */ lh $v1, 0x1a4($s0) +/* 04C2F0 8004B6F0 00000000 */ nop +/* 04C2F4 8004B6F4 28614001 */ slti $at, $v1, 0x4001 +/* 04C2F8 8004B6F8 46805220 */ cvt.s.w $f8, $f10 +/* 04C2FC 8004B6FC 46083502 */ mul.s $f20, $f6, $f8 +/* 04C300 8004B700 10200002 */ beqz $at, .L8004B70C +/* 04C304 8004B704 2861C000 */ slti $at, $v1, -0x4000 +/* 04C308 8004B708 10200005 */ beqz $at, .L8004B720 +.L8004B70C: +/* 04C30C 8004B70C 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 04C310 8004B710 44812000 */ mtc1 $at, $f4 +/* 04C314 8004B714 00000000 */ nop +/* 04C318 8004B718 4604A502 */ mul.s $f20, $f20, $f4 +/* 04C31C 8004B71C 00000000 */ nop +.L8004B720: +/* 04C320 8004B720 C60A0050 */ lwc1 $f10, 0x50($s0) +/* 04C324 8004B724 C632001C */ lwc1 $f18, 0x1c($s1) +/* 04C328 8004B728 46145182 */ mul.s $f6, $f10, $f20 +/* 04C32C 8004B72C C6240020 */ lwc1 $f4, 0x20($s1) +/* 04C330 8004B730 46069201 */ sub.s $f8, $f18, $f6 +/* 04C334 8004B734 E628001C */ swc1 $f8, 0x1c($s1) +/* 04C338 8004B738 C60A0054 */ lwc1 $f10, 0x54($s0) +/* 04C33C 8004B73C C6280024 */ lwc1 $f8, 0x24($s1) +/* 04C340 8004B740 46145482 */ mul.s $f18, $f10, $f20 +/* 04C344 8004B744 46122181 */ sub.s $f6, $f4, $f18 +/* 04C348 8004B748 E6260020 */ swc1 $f6, 0x20($s1) +/* 04C34C 8004B74C C60A0058 */ lwc1 $f10, 0x58($s0) +/* 04C350 8004B750 00000000 */ nop +/* 04C354 8004B754 46145102 */ mul.s $f4, $f10, $f20 +/* 04C358 8004B758 46044481 */ sub.s $f18, $f8, $f4 +/* 04C35C 8004B75C E6320024 */ swc1 $f18, 0x24($s1) +/* 04C360 8004B760 860401A4 */ lh $a0, 0x1a4($s0) +/* 04C364 8004B764 0C01C1F1 */ jal func_800707C4 +/* 04C368 8004B768 E7AC00EC */ swc1 $f12, 0xec($sp) +/* 04C36C 8004B76C 820F01E0 */ lb $t7, 0x1e0($s0) +/* 04C370 8004B770 C7AC00EC */ lwc1 $f12, 0xec($sp) +/* 04C374 8004B774 448F5000 */ mtc1 $t7, $f10 +/* 04C378 8004B778 460C0182 */ mul.s $f6, $f0, $f12 +/* 04C37C 8004B77C 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 +/* 04C380 8004B780 44815800 */ mtc1 $at, $f11 +/* 04C384 8004B784 46805220 */ cvt.s.w $f8, $f10 +/* 04C388 8004B788 44805000 */ mtc1 $zero, $f10 +/* 04C38C 8004B78C 46083102 */ mul.s $f4, $f6, $f8 +/* 04C390 8004B790 C628001C */ lwc1 $f8, 0x1c($s1) +/* 04C394 8004B794 460024A1 */ cvt.d.s $f18, $f4 +/* 04C398 8004B798 462A9182 */ mul.d $f6, $f18, $f10 +/* 04C39C 8004B79C C6040044 */ lwc1 $f4, 0x44($s0) +/* 04C3A0 8004B7A0 46203520 */ cvt.s.d $f20, $f6 +/* 04C3A4 8004B7A4 C6260020 */ lwc1 $f6, 0x20($s1) +/* 04C3A8 8004B7A8 46142482 */ mul.s $f18, $f4, $f20 +/* 04C3AC 8004B7AC 46124281 */ sub.s $f10, $f8, $f18 +/* 04C3B0 8004B7B0 E62A001C */ swc1 $f10, 0x1c($s1) +/* 04C3B4 8004B7B4 C6040048 */ lwc1 $f4, 0x48($s0) +/* 04C3B8 8004B7B8 C62A0024 */ lwc1 $f10, 0x24($s1) +/* 04C3BC 8004B7BC 46142202 */ mul.s $f8, $f4, $f20 +/* 04C3C0 8004B7C0 46083481 */ sub.s $f18, $f6, $f8 +/* 04C3C4 8004B7C4 E6320020 */ swc1 $f18, 0x20($s1) +/* 04C3C8 8004B7C8 C604004C */ lwc1 $f4, 0x4c($s0) +/* 04C3CC 8004B7CC 00000000 */ nop +/* 04C3D0 8004B7D0 46142182 */ mul.s $f6, $f4, $f20 +/* 04C3D4 8004B7D4 46065201 */ sub.s $f8, $f10, $f6 +/* 04C3D8 8004B7D8 E6280024 */ swc1 $f8, 0x24($s1) +.L8004B7DC: +/* 04C3DC 8004B7DC C6020034 */ lwc1 $f2, 0x34($s0) +/* 04C3E0 8004B7E0 44805000 */ mtc1 $zero, $f10 +/* 04C3E4 8004B7E4 46021482 */ mul.s $f18, $f2, $f2 +/* 04C3E8 8004B7E8 C7A400D0 */ lwc1 $f4, 0xd0($sp) +/* 04C3EC 8004B7EC 460A103C */ c.lt.s $f2, $f10 +/* 04C3F0 8004B7F0 C7A600D0 */ lwc1 $f6, 0xd0($sp) +/* 04C3F4 8004B7F4 46049502 */ mul.s $f20, $f18, $f4 +/* 04C3F8 8004B7F8 45000002 */ bc1f .L8004B804 +/* 04C3FC 8004B7FC 00000000 */ nop +/* 04C400 8004B800 4600A507 */ neg.s $f20, $f20 +.L8004B804: +/* 04C404 8004B804 46061202 */ mul.s $f8, $f2, $f6 +/* 04C408 8004B808 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 04C40C 8004B80C 44819000 */ mtc1 $at, $f18 +/* 04C410 8004B810 C6060044 */ lwc1 $f6, 0x44($s0) +/* 04C414 8004B814 46124102 */ mul.s $f4, $f8, $f18 +/* 04C418 8004B818 C62A001C */ lwc1 $f10, 0x1c($s1) +/* 04C41C 8004B81C 3C01800E */ lui $at, %hi(D_800E6538) # $at, 0x800e +/* 04C420 8004B820 4604A500 */ add.s $f20, $f20, $f4 +/* 04C424 8004B824 C6240020 */ lwc1 $f4, 0x20($s1) +/* 04C428 8004B828 46143202 */ mul.s $f8, $f6, $f20 +/* 04C42C 8004B82C 46085481 */ sub.s $f18, $f10, $f8 +/* 04C430 8004B830 E632001C */ swc1 $f18, 0x1c($s1) +/* 04C434 8004B834 C6060048 */ lwc1 $f6, 0x48($s0) +/* 04C438 8004B838 C6320024 */ lwc1 $f18, 0x24($s1) +/* 04C43C 8004B83C 46143282 */ mul.s $f10, $f6, $f20 +/* 04C440 8004B840 460A2201 */ sub.s $f8, $f4, $f10 +/* 04C444 8004B844 E6280020 */ swc1 $f8, 0x20($s1) +/* 04C448 8004B848 C606004C */ lwc1 $f6, 0x4c($s0) +/* 04C44C 8004B84C 00000000 */ nop +/* 04C450 8004B850 46143102 */ mul.s $f4, $f6, $f20 +/* 04C454 8004B854 46049281 */ sub.s $f10, $f18, $f4 +/* 04C458 8004B858 E62A0024 */ swc1 $f10, 0x24($s1) +/* 04C45C 8004B85C C606002C */ lwc1 $f6, 0x2c($s0) +/* 04C460 8004B860 C424653C */ lwc1 $f4, %lo(D_800E653C)($at) +/* 04C464 8004B864 C4256538 */ lwc1 $f5, %lo(D_800E6538)($at) +/* 04C468 8004B868 460034A1 */ cvt.d.s $f18, $f6 +/* 04C46C 8004B86C 46249282 */ mul.d $f10, $f18, $f4 +/* 04C470 8004B870 C6080008 */ lwc1 $f8, 8($s0) +/* 04C474 8004B874 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 04C478 8004B878 46004021 */ cvt.d.s $f0, $f8 +/* 04C47C 8004B87C 44813800 */ mtc1 $at, $f7 +/* 04C480 8004B880 462A0200 */ add.d $f8, $f0, $f10 +/* 04C484 8004B884 44803000 */ mtc1 $zero, $f6 +/* 04C488 8004B888 00000000 */ nop +/* 04C48C 8004B88C 46264482 */ mul.d $f18, $f8, $f6 +/* 04C490 8004B890 46320101 */ sub.d $f4, $f0, $f18 +/* 04C494 8004B894 462022A0 */ cvt.s.d $f10, $f4 +/* 04C498 8004B898 E60A0008 */ swc1 $f10, 8($s0) +/* 04C49C 8004B89C E7AC00EC */ swc1 $f12, 0xec($sp) +.L8004B8A0: +/* 04C4A0 8004B8A0 C7AC00EC */ lwc1 $f12, 0xec($sp) +/* 04C4A4 8004B8A4 AE00010C */ sw $zero, 0x10c($s0) +/* 04C4A8 8004B8A8 3C0D8012 */ lui $t5, %hi(D_8011D554) # $t5, 0x8012 +/* 04C4AC 8004B8AC 8DADD554 */ lw $t5, %lo(D_8011D554)($t5) +/* 04C4B0 8004B8B0 860201A2 */ lh $v0, 0x1a2($s0) +/* 04C4B4 8004B8B4 860C01A0 */ lh $t4, 0x1a0($s0) +/* 04C4B8 8004B8B8 01A25823 */ subu $t3, $t5, $v0 +/* 04C4BC 8004B8BC 000B70C3 */ sra $t6, $t3, 3 +/* 04C4C0 8004B8C0 004EC021 */ addu $t8, $v0, $t6 +/* 04C4C4 8004B8C4 A61801A2 */ sh $t8, 0x1a2($s0) +/* 04C4C8 8004B8C8 861901A2 */ lh $t9, 0x1a2($s0) +/* 04C4CC 8004B8CC 3C0D8012 */ lui $t5, %hi(D_8011D558) # $t5, 0x8012 +/* 04C4D0 8004B8D0 01997821 */ addu $t7, $t4, $t9 +/* 04C4D4 8004B8D4 A62F0000 */ sh $t7, ($s1) +/* 04C4D8 8004B8D8 860301A6 */ lh $v1, 0x1a6($s0) +/* 04C4DC 8004B8DC 8DADD558 */ lw $t5, %lo(D_8011D558)($t5) +/* 04C4E0 8004B8E0 860C01A4 */ lh $t4, 0x1a4($s0) +/* 04C4E4 8004B8E4 01A35823 */ subu $t3, $t5, $v1 +/* 04C4E8 8004B8E8 000B70C3 */ sra $t6, $t3, 3 +/* 04C4EC 8004B8EC 006EC021 */ addu $t8, $v1, $t6 +/* 04C4F0 8004B8F0 A61801A6 */ sh $t8, 0x1a6($s0) +/* 04C4F4 8004B8F4 861901A6 */ lh $t9, 0x1a6($s0) +/* 04C4F8 8004B8F8 00000000 */ nop +/* 04C4FC 8004B8FC 01997821 */ addu $t7, $t4, $t9 +/* 04C500 8004B900 A62F0004 */ sh $t7, 4($s1) +/* 04C504 8004B904 820D0175 */ lb $t5, 0x175($s0) +/* 04C508 8004B908 00000000 */ nop +/* 04C50C 8004B90C 11A00007 */ beqz $t5, .L8004B92C +/* 04C510 8004B910 3C018012 */ lui $at, %hi(D_8011D578) # $at, 0x8012 +/* 04C514 8004B914 C428D578 */ lwc1 $f8, %lo(D_8011D578)($at) +/* 04C518 8004B918 3C018012 */ lui $at, %hi(D_8011D57C) # $at, 0x8012 +/* 04C51C 8004B91C E628001C */ swc1 $f8, 0x1c($s1) +/* 04C520 8004B920 C426D57C */ lwc1 $f6, %lo(D_8011D57C)($at) +/* 04C524 8004B924 00000000 */ nop +/* 04C528 8004B928 E6260024 */ swc1 $f6, 0x24($s1) +.L8004B92C: +/* 04C52C 8004B92C 8E0B0148 */ lw $t3, 0x148($s0) +/* 04C530 8004B930 00000000 */ nop +/* 04C534 8004B934 15600061 */ bnez $t3, .L8004BABC +/* 04C538 8004B938 8FA600FC */ lw $a2, 0xfc($sp) +/* 04C53C 8004B93C 820E01D2 */ lb $t6, 0x1d2($s0) +/* 04C540 8004B940 C634001C */ lwc1 $f20, 0x1c($s1) +/* 04C544 8004B944 C62C0024 */ lwc1 $f12, 0x24($s1) +/* 04C548 8004B948 11C00010 */ beqz $t6, .L8004B98C +/* 04C54C 8004B94C 3C188012 */ lui $t8, %hi(D_8011D584) # $t8, 0x8012 +/* 04C550 8004B950 C604011C */ lwc1 $f4, 0x11c($s0) +/* 04C554 8004B954 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 04C558 8004B958 44811800 */ mtc1 $at, $f3 +/* 04C55C 8004B95C 44801000 */ mtc1 $zero, $f2 +/* 04C560 8004B960 460022A1 */ cvt.d.s $f10, $f4 +/* 04C564 8004B964 46225202 */ mul.d $f8, $f10, $f2 +/* 04C568 8004B968 C60A0120 */ lwc1 $f10, 0x120($s0) +/* 04C56C 8004B96C 4600A4A1 */ cvt.d.s $f18, $f20 +/* 04C570 8004B970 46006121 */ cvt.d.s $f4, $f12 +/* 04C574 8004B974 46289180 */ add.d $f6, $f18, $f8 +/* 04C578 8004B978 460054A1 */ cvt.d.s $f18, $f10 +/* 04C57C 8004B97C 46229202 */ mul.d $f8, $f18, $f2 +/* 04C580 8004B980 46203520 */ cvt.s.d $f20, $f6 +/* 04C584 8004B984 46282180 */ add.d $f6, $f4, $f8 +/* 04C588 8004B988 46203320 */ cvt.s.d $f12, $f6 +.L8004B98C: +/* 04C58C 8004B98C 8318D584 */ lb $t8, %lo(D_8011D584)($t8) +/* 04C590 8004B990 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 04C594 8004B994 44811800 */ mtc1 $at, $f3 +/* 04C598 8004B998 44801000 */ mtc1 $zero, $f2 +/* 04C59C 8004B99C 1300002A */ beqz $t8, .L8004BA48 +/* 04C5A0 8004B9A0 00000000 */ nop +/* 04C5A4 8004B9A4 4600A021 */ cvt.d.s $f0, $f20 +/* 04C5A8 8004B9A8 4620103C */ c.lt.d $f2, $f0 +/* 04C5AC 8004B9AC 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 04C5B0 8004B9B0 45010007 */ bc1t .L8004B9D0 +/* 04C5B4 8004B9B4 00000000 */ nop +/* 04C5B8 8004B9B8 44815800 */ mtc1 $at, $f11 +/* 04C5BC 8004B9BC 44805000 */ mtc1 $zero, $f10 +/* 04C5C0 8004B9C0 00000000 */ nop +/* 04C5C4 8004B9C4 462A003C */ c.lt.d $f0, $f10 +/* 04C5C8 8004B9C8 00000000 */ nop +/* 04C5CC 8004B9CC 45000007 */ bc1f .L8004B9EC +.L8004B9D0: +/* 04C5D0 8004B9D0 3C01800E */ lui $at, %hi(D_800E6544) # $at, 0x800e +/* 04C5D4 8004B9D4 C4336540 */ lwc1 $f19, %lo(D_800E6540)($at) +/* 04C5D8 8004B9D8 C4326544 */ lwc1 $f18, %lo(D_800E6544)($at) +/* 04C5DC 8004B9DC 00000000 */ nop +/* 04C5E0 8004B9E0 46320102 */ mul.d $f4, $f0, $f18 +/* 04C5E4 8004B9E4 10000003 */ b .L8004B9F4 +/* 04C5E8 8004B9E8 46202520 */ cvt.s.d $f20, $f4 +.L8004B9EC: +/* 04C5EC 8004B9EC 4480A000 */ mtc1 $zero, $f20 +/* 04C5F0 8004B9F0 00000000 */ nop +.L8004B9F4: +/* 04C5F4 8004B9F4 46006021 */ cvt.d.s $f0, $f12 +/* 04C5F8 8004B9F8 4620103C */ c.lt.d $f2, $f0 +/* 04C5FC 8004B9FC 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 04C600 8004BA00 45010007 */ bc1t .L8004BA20 +/* 04C604 8004BA04 00000000 */ nop +/* 04C608 8004BA08 44814800 */ mtc1 $at, $f9 +/* 04C60C 8004BA0C 44804000 */ mtc1 $zero, $f8 +/* 04C610 8004BA10 00000000 */ nop +/* 04C614 8004BA14 4628003C */ c.lt.d $f0, $f8 +/* 04C618 8004BA18 00000000 */ nop +/* 04C61C 8004BA1C 45000007 */ bc1f .L8004BA3C +.L8004BA20: +/* 04C620 8004BA20 3C01800E */ lui $at, %hi(D_800E654C) # $at, 0x800e +/* 04C624 8004BA24 C4276548 */ lwc1 $f7, %lo(D_800E6548)($at) +/* 04C628 8004BA28 C426654C */ lwc1 $f6, %lo(D_800E654C)($at) +/* 04C62C 8004BA2C 00000000 */ nop +/* 04C630 8004BA30 46260282 */ mul.d $f10, $f0, $f6 +/* 04C634 8004BA34 10000008 */ b .L8004BA58 +/* 04C638 8004BA38 46205320 */ cvt.s.d $f12, $f10 +.L8004BA3C: +/* 04C63C 8004BA3C 44806000 */ mtc1 $zero, $f12 +/* 04C640 8004BA40 10000006 */ b .L8004BA5C +/* 04C644 8004BA44 C7A000FC */ lwc1 $f0, 0xfc($sp) +.L8004BA48: +/* 04C648 8004BA48 C6120084 */ lwc1 $f18, 0x84($s0) +/* 04C64C 8004BA4C C6040088 */ lwc1 $f4, 0x88($s0) +/* 04C650 8004BA50 4612A500 */ add.s $f20, $f20, $f18 +/* 04C654 8004BA54 46046300 */ add.s $f12, $f12, $f4 +.L8004BA58: +/* 04C658 8004BA58 C7A000FC */ lwc1 $f0, 0xfc($sp) +.L8004BA5C: +/* 04C65C 8004BA5C C6260020 */ lwc1 $f6, 0x20($s1) +/* 04C660 8004BA60 4600A202 */ mul.s $f8, $f20, $f0 +/* 04C664 8004BA64 E7AC00EC */ swc1 $f12, 0xec($sp) +/* 04C668 8004BA68 02202025 */ move $a0, $s1 +/* 04C66C 8004BA6C 46003282 */ mul.s $f10, $f6, $f0 +/* 04C670 8004BA70 44054000 */ mfc1 $a1, $f8 +/* 04C674 8004BA74 46006482 */ mul.s $f18, $f12, $f0 +/* 04C678 8004BA78 44065000 */ mfc1 $a2, $f10 +/* 04C67C 8004BA7C 44079000 */ mfc1 $a3, $f18 +/* 04C680 8004BA80 0C00455C */ jal func_80011570 +/* 04C684 8004BA84 00000000 */ nop +/* 04C688 8004BA88 C7AC00EC */ lwc1 $f12, 0xec($sp) +/* 04C68C 8004BA8C 10400006 */ beqz $v0, .L8004BAA8 +/* 04C690 8004BA90 3C0C8012 */ lui $t4, %hi(D_8011D55C) # $t4, 0x8012 +/* 04C694 8004BA94 8D8CD55C */ lw $t4, %lo(D_8011D55C)($t4) +/* 04C698 8004BA98 2401FFFF */ li $at, -1 +/* 04C69C 8004BA9C 11810002 */ beq $t4, $at, .L8004BAA8 +/* 04C6A0 8004BAA0 24190001 */ li $t9, 1 +/* 04C6A4 8004BAA4 A3B9005F */ sb $t9, 0x5f($sp) +.L8004BAA8: +/* 04C6A8 8004BAA8 3C028012 */ lui $v0, %hi(D_8011D55C) # $v0, 0x8012 +/* 04C6AC 8004BAAC 8C42D55C */ lw $v0, %lo(D_8011D55C)($v0) +/* 04C6B0 8004BAB0 1000000B */ b .L8004BAE0 +/* 04C6B4 8004BAB4 820801E2 */ lb $t0, 0x1e2($s0) +/* 04C6B8 8004BAB8 8FA600FC */ lw $a2, 0xfc($sp) +.L8004BABC: +/* 04C6BC 8004BABC 02202025 */ move $a0, $s1 +/* 04C6C0 8004BAC0 02002825 */ move $a1, $s0 +/* 04C6C4 8004BAC4 0C0141D5 */ jal func_80050754 +/* 04C6C8 8004BAC8 E7AC00EC */ swc1 $f12, 0xec($sp) +/* 04C6CC 8004BACC 3C028012 */ lui $v0, %hi(D_8011D55C) # $v0, 0x8012 +/* 04C6D0 8004BAD0 8C42D55C */ lw $v0, %lo(D_8011D55C)($v0) +/* 04C6D4 8004BAD4 C7AC00EC */ lwc1 $f12, 0xec($sp) +/* 04C6D8 8004BAD8 00000000 */ nop +/* 04C6DC 8004BADC 820801E2 */ lb $t0, 0x1e2($s0) +.L8004BAE0: +/* 04C6E0 8004BAE0 2401FFFF */ li $at, -1 +/* 04C6E4 8004BAE4 14410017 */ bne $v0, $at, .L8004BB44 +/* 04C6E8 8004BAE8 8FA600F8 */ lw $a2, 0xf8($sp) +/* 04C6EC 8004BAEC 820F01D7 */ lb $t7, 0x1d7($s0) +/* 04C6F0 8004BAF0 2401000D */ li $at, 13 +/* 04C6F4 8004BAF4 15E10005 */ bne $t7, $at, .L8004BB0C +/* 04C6F8 8004BAF8 3C0D8012 */ lui $t5, %hi(D_8011D540) # $t5, 0x8012 +/* 04C6FC 8004BAFC 8DADD540 */ lw $t5, %lo(D_8011D540)($t5) +/* 04C700 8004BB00 00000000 */ nop +/* 04C704 8004BB04 11A0000B */ beqz $t5, .L8004BB34 +/* 04C708 8004BB08 00000000 */ nop +.L8004BB0C: +/* 04C70C 8004BB0C 8FA600F8 */ lw $a2, 0xf8($sp) +/* 04C710 8004BB10 02202025 */ move $a0, $s1 +/* 04C714 8004BB14 02002825 */ move $a1, $s0 +/* 04C718 8004BB18 AFA800B8 */ sw $t0, 0xb8($sp) +/* 04C71C 8004BB1C 0C0156A1 */ jal func_80055A84 +/* 04C720 8004BB20 E7AC00EC */ swc1 $f12, 0xec($sp) +/* 04C724 8004BB24 8FA800B8 */ lw $t0, 0xb8($sp) +/* 04C728 8004BB28 C7AC00EC */ lwc1 $f12, 0xec($sp) +/* 04C72C 8004BB2C 1000000D */ b .L8004BB64 +/* 04C730 8004BB30 00000000 */ nop +.L8004BB34: +/* 04C734 8004BB34 A20001E2 */ sb $zero, 0x1e2($s0) +/* 04C738 8004BB38 1000000A */ b .L8004BB64 +/* 04C73C 8004BB3C A20001E3 */ sb $zero, 0x1e3($s0) +/* 04C740 8004BB40 8FA600F8 */ lw $a2, 0xf8($sp) +.L8004BB44: +/* 04C744 8004BB44 02202025 */ move $a0, $s1 +/* 04C748 8004BB48 02002825 */ move $a1, $s0 +/* 04C74C 8004BB4C AFA800B8 */ sw $t0, 0xb8($sp) +/* 04C750 8004BB50 0C0153F4 */ jal func_80054FD0 +/* 04C754 8004BB54 E7AC00EC */ swc1 $f12, 0xec($sp) +/* 04C758 8004BB58 8FA800B8 */ lw $t0, 0xb8($sp) +/* 04C75C 8004BB5C C7AC00EC */ lwc1 $f12, 0xec($sp) +/* 04C760 8004BB60 00000000 */ nop +.L8004BB64: +/* 04C764 8004BB64 15000015 */ bnez $t0, .L8004BBBC +/* 04C768 8004BB68 00000000 */ nop +/* 04C76C 8004BB6C 820B01E2 */ lb $t3, 0x1e2($s0) +/* 04C770 8004BB70 00000000 */ nop +/* 04C774 8004BB74 11600011 */ beqz $t3, .L8004BBBC +/* 04C778 8004BB78 00000000 */ nop +/* 04C77C 8004BB7C 820E01DB */ lb $t6, 0x1db($s0) +/* 04C780 8004BB80 02202025 */ move $a0, $s1 +/* 04C784 8004BB84 11C0000D */ beqz $t6, .L8004BBBC +/* 04C788 8004BB88 2405000C */ li $a1, 12 +/* 04C78C 8004BB8C 0C015C12 */ jal func_80057048 +/* 04C790 8004BB90 E7AC00EC */ swc1 $f12, 0xec($sp) +/* 04C794 8004BB94 86180000 */ lh $t8, ($s0) +/* 04C798 8004BB98 C7AC00EC */ lwc1 $f12, 0xec($sp) +/* 04C79C 8004BB9C 2401FFFF */ li $at, -1 +/* 04C7A0 8004BBA0 13010006 */ beq $t8, $at, .L8004BBBC +/* 04C7A4 8004BBA4 3C0C8012 */ lui $t4, %hi(D_8011D508) # $t4, 0x8012 +/* 04C7A8 8004BBA8 3C0140C0 */ li $at, 0x40C00000 # 6.000000 +/* 04C7AC 8004BBAC 44812000 */ mtc1 $at, $f4 +/* 04C7B0 8004BBB0 8D8CD508 */ lw $t4, %lo(D_8011D508)($t4) +/* 04C7B4 8004BBB4 00000000 */ nop +/* 04C7B8 8004BBB8 E5840030 */ swc1 $f4, 0x30($t4) +.L8004BBBC: +/* 04C7BC 8004BBBC 820201D2 */ lb $v0, 0x1d2($s0) +/* 04C7C0 8004BBC0 3C0B8012 */ lui $t3, %hi(D_8011D540) # $t3, 0x8012 +/* 04C7C4 8004BBC4 1040000B */ beqz $v0, .L8004BBF4 +/* 04C7C8 8004BBC8 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 +/* 04C7CC 8004BBCC 8FB900F8 */ lw $t9, 0xf8($sp) +/* 04C7D0 8004BBD0 00000000 */ nop +/* 04C7D4 8004BBD4 00597823 */ subu $t7, $v0, $t9 +/* 04C7D8 8004BBD8 A20F01D2 */ sb $t7, 0x1d2($s0) +/* 04C7DC 8004BBDC 820D01D2 */ lb $t5, 0x1d2($s0) +/* 04C7E0 8004BBE0 00000000 */ nop +/* 04C7E4 8004BBE4 05A1001B */ bgez $t5, .L8004BC54 +/* 04C7E8 8004BBE8 00000000 */ nop +/* 04C7EC 8004BBEC 10000019 */ b .L8004BC54 +/* 04C7F0 8004BBF0 A20001D2 */ sb $zero, 0x1d2($s0) +.L8004BBF4: +/* 04C7F4 8004BBF4 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 04C7F8 8004BBF8 44814000 */ mtc1 $at, $f8 +/* 04C7FC 8004BBFC C7A600FC */ lwc1 $f6, 0xfc($sp) +/* 04C800 8004BC00 C62A000C */ lwc1 $f10, 0xc($s1) +/* 04C804 8004BC04 46064003 */ div.s $f0, $f8, $f6 +/* 04C808 8004BC08 C7B200E8 */ lwc1 $f18, 0xe8($sp) +/* 04C80C 8004BC0C 3C018012 */ lui $at, %hi(D_8011D548) # $at, 0x8012 +/* 04C810 8004BC10 C428D548 */ lwc1 $f8, %lo(D_8011D548)($at) +/* 04C814 8004BC14 46125101 */ sub.s $f4, $f10, $f18 +/* 04C818 8004BC18 C7B200E4 */ lwc1 $f18, 0xe4($sp) +/* 04C81C 8004BC1C 46082181 */ sub.s $f6, $f4, $f8 +/* 04C820 8004BC20 C62A0010 */ lwc1 $f10, 0x10($s1) +/* 04C824 8004BC24 3C018012 */ lui $at, %hi(D_8011D54C) # $at, 0x8012 +/* 04C828 8004BC28 46003502 */ mul.s $f20, $f6, $f0 +/* 04C82C 8004BC2C 46125101 */ sub.s $f4, $f10, $f18 +/* 04C830 8004BC30 C6260014 */ lwc1 $f6, 0x14($s1) +/* 04C834 8004BC34 46002202 */ mul.s $f8, $f4, $f0 +/* 04C838 8004BC38 E6280020 */ swc1 $f8, 0x20($s1) +/* 04C83C 8004BC3C C7AA00E0 */ lwc1 $f10, 0xe0($sp) +/* 04C840 8004BC40 C424D54C */ lwc1 $f4, %lo(D_8011D54C)($at) +/* 04C844 8004BC44 460A3481 */ sub.s $f18, $f6, $f10 +/* 04C848 8004BC48 46049201 */ sub.s $f8, $f18, $f4 +/* 04C84C 8004BC4C 46004302 */ mul.s $f12, $f8, $f0 +/* 04C850 8004BC50 00000000 */ nop +.L8004BC54: +/* 04C854 8004BC54 8D6BD540 */ lw $t3, %lo(D_8011D540)($t3) +/* 04C858 8004BC58 24010064 */ li $at, 100 +/* 04C85C 8004BC5C 15610005 */ bne $t3, $at, .L8004BC74 +/* 04C860 8004BC60 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 +/* 04C864 8004BC64 3C01C0A0 */ li $at, 0xC0A00000 # -5.000000 +/* 04C868 8004BC68 44813000 */ mtc1 $at, $f6 +/* 04C86C 8004BC6C 00000000 */ nop +/* 04C870 8004BC70 E6260020 */ swc1 $f6, 0x20($s1) +.L8004BC74: +/* 04C874 8004BC74 862E0000 */ lh $t6, ($s1) +/* 04C878 8004BC78 E634001C */ swc1 $f20, 0x1c($s1) +/* 04C87C 8004BC7C E62C0024 */ swc1 $f12, 0x24($s1) +/* 04C880 8004BC80 000EC023 */ negu $t8, $t6 +/* 04C884 8004BC84 A4B80000 */ sh $t8, ($a1) +/* 04C888 8004BC88 862C0002 */ lh $t4, 2($s1) +/* 04C88C 8004BC8C 44800000 */ mtc1 $zero, $f0 +/* 04C890 8004BC90 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 04C894 8004BC94 44815000 */ mtc1 $at, $f10 +/* 04C898 8004BC98 000CC823 */ negu $t9, $t4 +/* 04C89C 8004BC9C A4B90002 */ sh $t9, 2($a1) +/* 04C8A0 8004BCA0 A4A00004 */ sh $zero, 4($a1) +/* 04C8A4 8004BCA4 27A40060 */ addiu $a0, $sp, 0x60 +/* 04C8A8 8004BCA8 E4A0000C */ swc1 $f0, 0xc($a1) +/* 04C8AC 8004BCAC E4A00010 */ swc1 $f0, 0x10($a1) +/* 04C8B0 8004BCB0 E4A00014 */ swc1 $f0, 0x14($a1) +/* 04C8B4 8004BCB4 0C01BF9D */ jal func_8006FE74 +/* 04C8B8 8004BCB8 E4AA0008 */ swc1 $f10, 8($a1) +/* 04C8BC 8004BCBC 8E25001C */ lw $a1, 0x1c($s1) +/* 04C8C0 8004BCC0 8E260020 */ lw $a2, 0x20($s1) +/* 04C8C4 8004BCC4 8E270024 */ lw $a3, 0x24($s1) +/* 04C8C8 8004BCC8 260F0030 */ addiu $t7, $s0, 0x30 +/* 04C8CC 8004BCCC 260D0034 */ addiu $t5, $s0, 0x34 +/* 04C8D0 8004BCD0 260B002C */ addiu $t3, $s0, 0x2c +/* 04C8D4 8004BCD4 AFAB0018 */ sw $t3, 0x18($sp) +/* 04C8D8 8004BCD8 AFAD0014 */ sw $t5, 0x14($sp) +/* 04C8DC 8004BCDC AFAF0010 */ sw $t7, 0x10($sp) +/* 04C8E0 8004BCE0 0C01BD93 */ jal func_8006F64C +/* 04C8E4 8004BCE4 27A40060 */ addiu $a0, $sp, 0x60 +/* 04C8E8 8004BCE8 8E230060 */ lw $v1, 0x60($s1) +/* 04C8EC 8004BCEC 00000000 */ nop +/* 04C8F0 8004BCF0 10600013 */ beqz $v1, .L8004BD40 +/* 04C8F4 8004BCF4 00000000 */ nop +/* 04C8F8 8004BCF8 8C6E0000 */ lw $t6, ($v1) +/* 04C8FC 8004BCFC 00000000 */ nop +/* 04C900 8004BD00 29C10003 */ slti $at, $t6, 3 +/* 04C904 8004BD04 1420000E */ bnez $at, .L8004BD40 +/* 04C908 8004BD08 00000000 */ nop +/* 04C90C 8004BD0C 8C62000C */ lw $v0, 0xc($v1) +/* 04C910 8004BD10 24184000 */ li $t8, 16384 +/* 04C914 8004BD14 804C003A */ lb $t4, 0x3a($v0) +/* 04C918 8004BD18 8C4F0040 */ lw $t7, 0x40($v0) +/* 04C91C 8004BD1C 25990001 */ addiu $t9, $t4, 1 +/* 04C920 8004BD20 A059003A */ sb $t9, 0x3a($v0) +/* 04C924 8004BD24 A4580000 */ sh $t8, ($v0) +/* 04C928 8004BD28 804B003A */ lb $t3, 0x3a($v0) +/* 04C92C 8004BD2C 81ED0055 */ lb $t5, 0x55($t7) +/* 04C930 8004BD30 00000000 */ nop +/* 04C934 8004BD34 15AB0002 */ bne $t5, $t3, .L8004BD40 +/* 04C938 8004BD38 00000000 */ nop +/* 04C93C 8004BD3C A040003A */ sb $zero, 0x3a($v0) +.L8004BD40: +/* 04C940 8004BD40 8E230060 */ lw $v1, 0x60($s1) +/* 04C944 8004BD44 00000000 */ nop +/* 04C948 8004BD48 1060005F */ beqz $v1, .L8004BEC8 +/* 04C94C 8004BD4C 00000000 */ nop +/* 04C950 8004BD50 8C6E0000 */ lw $t6, ($v1) +/* 04C954 8004BD54 00000000 */ nop +/* 04C958 8004BD58 29C10003 */ slti $at, $t6, 3 +/* 04C95C 8004BD5C 1420005A */ bnez $at, .L8004BEC8 +/* 04C960 8004BD60 00000000 */ nop +/* 04C964 8004BD64 821801E2 */ lb $t8, 0x1e2($s0) +/* 04C968 8004BD68 83AC00A2 */ lb $t4, 0xa2($sp) +/* 04C96C 8004BD6C 17000003 */ bnez $t8, .L8004BD7C +/* 04C970 8004BD70 00000000 */ nop +/* 04C974 8004BD74 11800030 */ beqz $t4, .L8004BE38 +/* 04C978 8004BD78 3C0141A0 */ li $at, 0x41A00000 # 20.000000 +.L8004BD7C: +/* 04C97C 8004BD7C 8C620004 */ lw $v0, 4($v1) +/* 04C980 8004BD80 44809000 */ mtc1 $zero, $f18 +/* 04C984 8004BD84 C4400010 */ lwc1 $f0, 0x10($v0) +/* 04C988 8004BD88 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 04C98C 8004BD8C 4600903C */ c.lt.s $f18, $f0 +/* 04C990 8004BD90 00000000 */ nop +/* 04C994 8004BD94 45000008 */ bc1f .L8004BDB8 +/* 04C998 8004BD98 00000000 */ nop +/* 04C99C 8004BD9C 44814800 */ mtc1 $at, $f9 +/* 04C9A0 8004BDA0 44804000 */ mtc1 $zero, $f8 +/* 04C9A4 8004BDA4 46000121 */ cvt.d.s $f4, $f0 +/* 04C9A8 8004BDA8 46282181 */ sub.d $f6, $f4, $f8 +/* 04C9AC 8004BDAC 462032A0 */ cvt.s.d $f10, $f6 +/* 04C9B0 8004BDB0 10000004 */ b .L8004BDC4 +/* 04C9B4 8004BDB4 E44A0010 */ swc1 $f10, 0x10($v0) +.L8004BDB8: +/* 04C9B8 8004BDB8 44809000 */ mtc1 $zero, $f18 +/* 04C9BC 8004BDBC 00000000 */ nop +/* 04C9C0 8004BDC0 E4520010 */ swc1 $f18, 0x10($v0) +.L8004BDC4: +/* 04C9C4 8004BDC4 84590006 */ lh $t9, 6($v0) +/* 04C9C8 8004BDC8 44802000 */ mtc1 $zero, $f4 +/* 04C9CC 8004BDCC 332FBFFF */ andi $t7, $t9, 0xbfff +/* 04C9D0 8004BDD0 A44F0006 */ sh $t7, 6($v0) +/* 04C9D4 8004BDD4 8E2D0060 */ lw $t5, 0x60($s1) +/* 04C9D8 8004BDD8 2403BFFF */ li $v1, -16385 +/* 04C9DC 8004BDDC 8DA20008 */ lw $v0, 8($t5) +/* 04C9E0 8004BDE0 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 04C9E4 8004BDE4 C4400010 */ lwc1 $f0, 0x10($v0) +/* 04C9E8 8004BDE8 00000000 */ nop +/* 04C9EC 8004BDEC 4600203C */ c.lt.s $f4, $f0 +/* 04C9F0 8004BDF0 00000000 */ nop +/* 04C9F4 8004BDF4 45000008 */ bc1f .L8004BE18 +/* 04C9F8 8004BDF8 00000000 */ nop +/* 04C9FC 8004BDFC 44813800 */ mtc1 $at, $f7 +/* 04CA00 8004BE00 44803000 */ mtc1 $zero, $f6 +/* 04CA04 8004BE04 46000221 */ cvt.d.s $f8, $f0 +/* 04CA08 8004BE08 46264281 */ sub.d $f10, $f8, $f6 +/* 04CA0C 8004BE0C 462054A0 */ cvt.s.d $f18, $f10 +/* 04CA10 8004BE10 10000004 */ b .L8004BE24 +/* 04CA14 8004BE14 E4520010 */ swc1 $f18, 0x10($v0) +.L8004BE18: +/* 04CA18 8004BE18 44802000 */ mtc1 $zero, $f4 +/* 04CA1C 8004BE1C 00000000 */ nop +/* 04CA20 8004BE20 E4440010 */ swc1 $f4, 0x10($v0) +.L8004BE24: +/* 04CA24 8004BE24 844B0006 */ lh $t3, 6($v0) +/* 04CA28 8004BE28 00000000 */ nop +/* 04CA2C 8004BE2C 01637024 */ and $t6, $t3, $v1 +/* 04CA30 8004BE30 10000025 */ b .L8004BEC8 +/* 04CA34 8004BE34 A44E0006 */ sh $t6, 6($v0) +.L8004BE38: +/* 04CA38 8004BE38 8C620004 */ lw $v0, 4($v1) +/* 04CA3C 8004BE3C 44814000 */ mtc1 $at, $f8 +/* 04CA40 8004BE40 C4400010 */ lwc1 $f0, 0x10($v0) +/* 04CA44 8004BE44 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 04CA48 8004BE48 4608003C */ c.lt.s $f0, $f8 +/* 04CA4C 8004BE4C 00000000 */ nop +/* 04CA50 8004BE50 45000006 */ bc1f .L8004BE6C +/* 04CA54 8004BE54 00000000 */ nop +/* 04CA58 8004BE58 44813000 */ mtc1 $at, $f6 +/* 04CA5C 8004BE5C 00000000 */ nop +/* 04CA60 8004BE60 46060280 */ add.s $f10, $f0, $f6 +/* 04CA64 8004BE64 10000005 */ b .L8004BE7C +/* 04CA68 8004BE68 E44A0010 */ swc1 $f10, 0x10($v0) +.L8004BE6C: +/* 04CA6C 8004BE6C 84580006 */ lh $t8, 6($v0) +/* 04CA70 8004BE70 00000000 */ nop +/* 04CA74 8004BE74 370C4000 */ ori $t4, $t8, 0x4000 +/* 04CA78 8004BE78 A44C0006 */ sh $t4, 6($v0) +.L8004BE7C: +/* 04CA7C 8004BE7C 8E390060 */ lw $t9, 0x60($s1) +/* 04CA80 8004BE80 3C0141A0 */ li $at, 0x41A00000 # 20.000000 +/* 04CA84 8004BE84 8F220008 */ lw $v0, 8($t9) +/* 04CA88 8004BE88 44819000 */ mtc1 $at, $f18 +/* 04CA8C 8004BE8C C4400010 */ lwc1 $f0, 0x10($v0) +/* 04CA90 8004BE90 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 04CA94 8004BE94 4612003C */ c.lt.s $f0, $f18 +/* 04CA98 8004BE98 00000000 */ nop +/* 04CA9C 8004BE9C 45000006 */ bc1f .L8004BEB8 +/* 04CAA0 8004BEA0 00000000 */ nop +/* 04CAA4 8004BEA4 44812000 */ mtc1 $at, $f4 +/* 04CAA8 8004BEA8 00000000 */ nop +/* 04CAAC 8004BEAC 46040200 */ add.s $f8, $f0, $f4 +/* 04CAB0 8004BEB0 10000005 */ b .L8004BEC8 +/* 04CAB4 8004BEB4 E4480010 */ swc1 $f8, 0x10($v0) +.L8004BEB8: +/* 04CAB8 8004BEB8 844F0006 */ lh $t7, 6($v0) +/* 04CABC 8004BEBC 00000000 */ nop +/* 04CAC0 8004BEC0 35ED4000 */ ori $t5, $t7, 0x4000 +/* 04CAC4 8004BEC4 A44D0006 */ sh $t5, 6($v0) +.L8004BEC8: +/* 04CAC8 8004BEC8 3C0B8012 */ lui $t3, %hi(D_8011D55C) # $t3, 0x8012 +/* 04CACC 8004BECC 8D6BD55C */ lw $t3, %lo(D_8011D55C)($t3) +/* 04CAD0 8004BED0 2401FFFF */ li $at, -1 +/* 04CAD4 8004BED4 11610046 */ beq $t3, $at, .L8004BFF0 +/* 04CAD8 8004BED8 00000000 */ nop +/* 04CADC 8004BEDC 820E01D3 */ lb $t6, 0x1d3($s0) +/* 04CAE0 8004BEE0 3C18800E */ lui $t8, %hi(D_800DCB98) # $t8, 0x800e +/* 04CAE4 8004BEE4 15C00042 */ bnez $t6, .L8004BFF0 +/* 04CAE8 8004BEE8 00000000 */ nop +/* 04CAEC 8004BEEC 8F18CB98 */ lw $t8, %lo(D_800DCB98)($t8) +/* 04CAF0 8004BEF0 00000000 */ nop +/* 04CAF4 8004BEF4 2B010002 */ slti $at, $t8, 2 +/* 04CAF8 8004BEF8 1020003D */ beqz $at, .L8004BFF0 +/* 04CAFC 8004BEFC 00000000 */ nop +/* 04CB00 8004BF00 0C0078A7 */ jal func_8001E29C +/* 04CB04 8004BF04 24040014 */ li $a0, 20 +/* 04CB08 8004BF08 82080203 */ lb $t0, 0x203($s0) +/* 04CB0C 8004BF0C 820C0002 */ lb $t4, 2($s0) +/* 04CB10 8004BF10 310F0004 */ andi $t7, $t0, 4 +/* 04CB14 8004BF14 000F6883 */ sra $t5, $t7, 2 +/* 04CB18 8004BF18 25A80009 */ addiu $t0, $t5, 9 +/* 04CB1C 8004BF1C 2901000A */ slti $at, $t0, 0xa +/* 04CB20 8004BF20 000CC9C0 */ sll $t9, $t4, 7 +/* 04CB24 8004BF24 14200012 */ bnez $at, .L8004BF70 +/* 04CB28 8004BF28 03221821 */ addu $v1, $t9, $v0 +/* 04CB2C 8004BF2C 906B0070 */ lbu $t3, 0x70($v1) +/* 04CB30 8004BF30 24180001 */ li $t8, 1 +/* 04CB34 8004BF34 1D600009 */ bgtz $t3, .L8004BF5C +/* 04CB38 8004BF38 00000000 */ nop +/* 04CB3C 8004BF3C C46A0074 */ lwc1 $f10, 0x74($v1) +/* 04CB40 8004BF40 44803800 */ mtc1 $zero, $f7 +/* 04CB44 8004BF44 44803000 */ mtc1 $zero, $f6 +/* 04CB48 8004BF48 460054A1 */ cvt.d.s $f18, $f10 +/* 04CB4C 8004BF4C 4632303C */ c.lt.d $f6, $f18 +/* 04CB50 8004BF50 00000000 */ nop +/* 04CB54 8004BF54 45000026 */ bc1f .L8004BFF0 +/* 04CB58 8004BF58 00000000 */ nop +.L8004BF5C: +/* 04CB5C 8004BF5C 8E2E0074 */ lw $t6, 0x74($s1) +/* 04CB60 8004BF60 01186004 */ sllv $t4, $t8, $t0 +/* 04CB64 8004BF64 01CCC825 */ or $t9, $t6, $t4 +/* 04CB68 8004BF68 10000021 */ b .L8004BFF0 +/* 04CB6C 8004BF6C AE390074 */ sw $t9, 0x74($s1) +.L8004BF70: +/* 04CB70 8004BF70 90620070 */ lbu $v0, 0x70($v1) +/* 04CB74 8004BF74 24010002 */ li $at, 2 +/* 04CB78 8004BF78 14410010 */ bne $v0, $at, .L8004BFBC +/* 04CB7C 8004BF7C 28410002 */ slti $at, $v0, 2 +/* 04CB80 8004BF80 C4640074 */ lwc1 $f4, 0x74($v1) +/* 04CB84 8004BF84 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 04CB88 8004BF88 44815800 */ mtc1 $at, $f11 +/* 04CB8C 8004BF8C 44805000 */ mtc1 $zero, $f10 +/* 04CB90 8004BF90 46002221 */ cvt.d.s $f8, $f4 +/* 04CB94 8004BF94 462A403C */ c.lt.d $f8, $f10 +/* 04CB98 8004BF98 240D0001 */ li $t5, 1 +/* 04CB9C 8004BF9C 45000007 */ bc1f .L8004BFBC +/* 04CBA0 8004BFA0 28410002 */ slti $at, $v0, 2 +/* 04CBA4 8004BFA4 8E2F0074 */ lw $t7, 0x74($s1) +/* 04CBA8 8004BFA8 010D5804 */ sllv $t3, $t5, $t0 +/* 04CBAC 8004BFAC 01EBC025 */ or $t8, $t7, $t3 +/* 04CBB0 8004BFB0 1000000F */ b .L8004BFF0 +/* 04CBB4 8004BFB4 AE380074 */ sw $t8, 0x74($s1) +/* 04CBB8 8004BFB8 28410002 */ slti $at, $v0, 2 +.L8004BFBC: +/* 04CBBC 8004BFBC 1020000C */ beqz $at, .L8004BFF0 +/* 04CBC0 8004BFC0 00000000 */ nop +/* 04CBC4 8004BFC4 44803000 */ mtc1 $zero, $f6 +/* 04CBC8 8004BFC8 C4720074 */ lwc1 $f18, 0x74($v1) +/* 04CBCC 8004BFCC 240C0001 */ li $t4, 1 +/* 04CBD0 8004BFD0 4612303C */ c.lt.s $f6, $f18 +/* 04CBD4 8004BFD4 00000000 */ nop +/* 04CBD8 8004BFD8 45000005 */ bc1f .L8004BFF0 +/* 04CBDC 8004BFDC 00000000 */ nop +/* 04CBE0 8004BFE0 8E2E0074 */ lw $t6, 0x74($s1) +/* 04CBE4 8004BFE4 010CC804 */ sllv $t9, $t4, $t0 +/* 04CBE8 8004BFE8 01D96825 */ or $t5, $t6, $t9 +/* 04CBEC 8004BFEC AE2D0074 */ sw $t5, 0x74($s1) +.L8004BFF0: +/* 04CBF0 8004BFF0 3C0F8012 */ lui $t7, %hi(D_8011D55C) # $t7, 0x8012 +/* 04CBF4 8004BFF4 8DEFD55C */ lw $t7, %lo(D_8011D55C)($t7) +/* 04CBF8 8004BFF8 2401FFFF */ li $at, -1 +/* 04CBFC 8004BFFC 15E10002 */ bne $t7, $at, .L8004C008 +/* 04CC00 8004C000 00000000 */ nop +/* 04CC04 8004C004 AE200074 */ sw $zero, 0x74($s1) +.L8004C008: +/* 04CC08 8004C008 820B0201 */ lb $t3, 0x201($s0) +/* 04CC0C 8004C00C 00000000 */ nop +/* 04CC10 8004C010 15600002 */ bnez $t3, .L8004C01C +/* 04CC14 8004C014 00000000 */ nop +/* 04CC18 8004C018 AE200074 */ sw $zero, 0x74($s1) +.L8004C01C: +/* 04CC1C 8004C01C 821801D7 */ lb $t8, 0x1d7($s0) +/* 04CC20 8004C020 8FA500F8 */ lw $a1, 0xf8($sp) +/* 04CC24 8004C024 2B010005 */ slti $at, $t8, 5 +/* 04CC28 8004C028 10200004 */ beqz $at, .L8004C03C +/* 04CC2C 8004C02C 83AC00A1 */ lb $t4, 0xa1($sp) +/* 04CC30 8004C030 0C02BDC5 */ jal func_800AF714 +/* 04CC34 8004C034 02202025 */ move $a0, $s1 +/* 04CC38 8004C038 83AC00A1 */ lb $t4, 0xa1($sp) +.L8004C03C: +/* 04CC3C 8004C03C 02202025 */ move $a0, $s1 +/* 04CC40 8004C040 11800007 */ beqz $t4, .L8004C060 +/* 04CC44 8004C044 02002825 */ move $a1, $s0 +/* 04CC48 8004C048 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 +/* 04CC4C 8004C04C 2442D528 */ addiu $v0, %lo(D_8011D528) # addiu $v0, $v0, -0x2ad8 +/* 04CC50 8004C050 8C4E0000 */ lw $t6, ($v0) +/* 04CC54 8004C054 00000000 */ nop +/* 04CC58 8004C058 35D90010 */ ori $t9, $t6, 0x10 +/* 04CC5C 8004C05C AC590000 */ sw $t9, ($v0) +.L8004C060: +/* 04CC60 8004C060 8FA700FC */ lw $a3, 0xfc($sp) +/* 04CC64 8004C064 0C01602D */ jal func_800580B4 +/* 04CC68 8004C068 24060001 */ li $a2, 1 +/* 04CC6C 8004C06C 83AD005F */ lb $t5, 0x5f($sp) +/* 04CC70 8004C070 02202025 */ move $a0, $s1 +/* 04CC74 8004C074 11A00004 */ beqz $t5, .L8004C088 +/* 04CC78 8004C078 8FBF0034 */ lw $ra, 0x34($sp) +/* 04CC7C 8004C07C 0C008C34 */ jal func_800230D0 +/* 04CC80 8004C080 02002825 */ move $a1, $s0 +/* 04CC84 8004C084 8FBF0034 */ lw $ra, 0x34($sp) +.L8004C088: +/* 04CC88 8004C088 C7B50020 */ lwc1 $f21, 0x20($sp) +/* 04CC8C 8004C08C C7B40024 */ lwc1 $f20, 0x24($sp) +/* 04CC90 8004C090 8FB0002C */ lw $s0, 0x2c($sp) +/* 04CC94 8004C094 8FB10030 */ lw $s1, 0x30($sp) +/* 04CC98 8004C098 03E00008 */ jr $ra +/* 04CC9C 8004C09C 27BD00F8 */ addiu $sp, $sp, 0xf8 + diff --git a/asm/non_matchings/unknown_043920/func_8004C0A0.s b/asm/non_matchings/unknown_043920/func_8004C0A0.s new file mode 100644 index 00000000..15c3a615 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8004C0A0.s @@ -0,0 +1,48 @@ +glabel func_8004C0A0 +/* 04CCA0 8004C0A0 80CE01D7 */ lb $t6, 0x1d7($a2) +/* 04CCA4 8004C0A4 2401000A */ li $at, 10 +/* 04CCA8 8004C0A8 11C10023 */ beq $t6, $at, .L8004C138 +/* 04CCAC 8004C0AC 00803825 */ move $a3, $a0 +/* 04CCB0 8004C0B0 300F00FF */ andi $t7, $zero, 0xff +/* 04CCB4 8004C0B4 15E00020 */ bnez $t7, .L8004C138 +/* 04CCB8 8004C0B8 A0C001F2 */ sb $zero, 0x1f2($a2) +/* 04CCBC 8004C0BC 80C201E1 */ lb $v0, 0x1e1($a2) +/* 04CCC0 8004C0C0 24190028 */ li $t9, 40 +/* 04CCC4 8004C0C4 0002C043 */ sra $t8, $v0, 1 +/* 04CCC8 8004C0C8 03381023 */ subu $v0, $t9, $t8 +/* 04CCCC 8004C0CC 04410002 */ bgez $v0, .L8004C0D8 +/* 04CCD0 8004C0D0 00073080 */ sll $a2, $a3, 2 +/* 04CCD4 8004C0D4 00001025 */ move $v0, $zero +.L8004C0D8: +/* 04CCD8 8004C0D8 2841004A */ slti $at, $v0, 0x4a +/* 04CCDC 8004C0DC 14200002 */ bnez $at, .L8004C0E8 +/* 04CCE0 8004C0E0 00000000 */ nop +/* 04CCE4 8004C0E4 24020049 */ li $v0, 73 +.L8004C0E8: +/* 04CCE8 8004C0E8 84A40018 */ lh $a0, 0x18($a1) +/* 04CCEC 8004C0EC 00000000 */ nop +/* 04CCF0 8004C0F0 00441823 */ subu $v1, $v0, $a0 +/* 04CCF4 8004C0F4 18600006 */ blez $v1, .L8004C110 +/* 04CCF8 8004C0F8 00001025 */ move $v0, $zero +/* 04CCFC 8004C0FC 00C71023 */ subu $v0, $a2, $a3 +/* 04CD00 8004C100 0062082A */ slt $at, $v1, $v0 +/* 04CD04 8004C104 10200002 */ beqz $at, .L8004C110 +/* 04CD08 8004C108 00000000 */ nop +/* 04CD0C 8004C10C 00601025 */ move $v0, $v1 +.L8004C110: +/* 04CD10 8004C110 04610007 */ bgez $v1, .L8004C130 +/* 04CD14 8004C114 00070823 */ negu $at, $a3 +/* 04CD18 8004C118 00013080 */ sll $a2, $at, 2 +/* 04CD1C 8004C11C 00C11023 */ subu $v0, $a2, $at +/* 04CD20 8004C120 0043082A */ slt $at, $v0, $v1 +/* 04CD24 8004C124 10200003 */ beqz $at, .L8004C134 +/* 04CD28 8004C128 00824021 */ addu $t0, $a0, $v0 +/* 04CD2C 8004C12C 00601025 */ move $v0, $v1 +.L8004C130: +/* 04CD30 8004C130 00824021 */ addu $t0, $a0, $v0 +.L8004C134: +/* 04CD34 8004C134 A4A80018 */ sh $t0, 0x18($a1) +.L8004C138: +/* 04CD38 8004C138 03E00008 */ jr $ra +/* 04CD3C 8004C13C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_8004C140.s b/asm/non_matchings/unknown_043920/func_8004C140.s new file mode 100644 index 00000000..4ad08d1d --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8004C140.s @@ -0,0 +1,107 @@ +glabel func_8004C140 +/* 04CD40 8004C140 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 04CD44 8004C144 AFBF001C */ sw $ra, 0x1c($sp) +/* 04CD48 8004C148 AFB00018 */ sw $s0, 0x18($sp) +/* 04CD4C 8004C14C 84AE0000 */ lh $t6, ($a1) +/* 04CD50 8004C150 2401FFFF */ li $at, -1 +/* 04CD54 8004C154 15C10003 */ bne $t6, $at, .L8004C164 +/* 04CD58 8004C158 00A08025 */ move $s0, $a1 +/* 04CD5C 8004C15C 10000003 */ b .L8004C16C +/* 04CD60 8004C160 00001825 */ move $v1, $zero +.L8004C164: +/* 04CD64 8004C164 82030185 */ lb $v1, 0x185($s0) +/* 04CD68 8004C168 00000000 */ nop +.L8004C16C: +/* 04CD6C 8004C16C 82020187 */ lb $v0, 0x187($s0) +/* 04CD70 8004C170 00000000 */ nop +/* 04CD74 8004C174 10400005 */ beqz $v0, .L8004C18C +/* 04CD78 8004C178 00000000 */ nop +/* 04CD7C 8004C17C 860F018E */ lh $t7, 0x18e($s0) +/* 04CD80 8004C180 24010004 */ li $at, 4 +/* 04CD84 8004C184 19E00003 */ blez $t7, .L8004C194 +/* 04CD88 8004C188 00000000 */ nop +.L8004C18C: +/* 04CD8C 8004C18C 10000044 */ b .L8004C2A0 +/* 04CD90 8004C190 A2000187 */ sb $zero, 0x187($s0) +.L8004C194: +/* 04CD94 8004C194 10410008 */ beq $v0, $at, .L8004C1B8 +/* 04CD98 8004C198 02002825 */ move $a1, $s0 +/* 04CD9C 8004C19C 24060002 */ li $a2, 2 +/* 04CDA0 8004C1A0 A3A30027 */ sb $v1, 0x27($sp) +/* 04CDA4 8004C1A4 0C015DB8 */ jal func_800576E0 +/* 04CDA8 8004C1A8 AFA40028 */ sw $a0, 0x28($sp) +/* 04CDAC 8004C1AC 83A30027 */ lb $v1, 0x27($sp) +/* 04CDB0 8004C1B0 8FA40028 */ lw $a0, 0x28($sp) +/* 04CDB4 8004C1B4 00000000 */ nop +.L8004C1B8: +/* 04CDB8 8004C1B8 921901C9 */ lbu $t9, 0x1c9($s0) +/* 04CDBC 8004C1BC 24180168 */ li $t8, 360 +/* 04CDC0 8004C1C0 24010008 */ li $at, 8 +/* 04CDC4 8004C1C4 17210002 */ bne $t9, $at, .L8004C1D0 +/* 04CDC8 8004C1C8 A618018C */ sh $t8, 0x18c($s0) +/* 04CDCC 8004C1CC A20001C9 */ sb $zero, 0x1c9($s0) +.L8004C1D0: +/* 04CDD0 8004C1D0 820801D6 */ lb $t0, 0x1d6($s0) +/* 04CDD4 8004C1D4 240501C2 */ li $a1, 450 +/* 04CDD8 8004C1D8 29010005 */ slti $at, $t0, 5 +/* 04CDDC 8004C1DC 10200030 */ beqz $at, .L8004C2A0 +/* 04CDE0 8004C1E0 24060008 */ li $a2, 8 +/* 04CDE4 8004C1E4 24070081 */ li $a3, 129 +/* 04CDE8 8004C1E8 A3A30027 */ sb $v1, 0x27($sp) +/* 04CDEC 8004C1EC 0C015C2E */ jal func_800570B8 +/* 04CDF0 8004C1F0 AFA40028 */ sw $a0, 0x28($sp) +/* 04CDF4 8004C1F4 82020187 */ lb $v0, 0x187($s0) +/* 04CDF8 8004C1F8 83A30027 */ lb $v1, 0x27($sp) +/* 04CDFC 8004C1FC 8FA40028 */ lw $a0, 0x28($sp) +/* 04CE00 8004C200 24010001 */ li $at, 1 +/* 04CE04 8004C204 10410009 */ beq $v0, $at, .L8004C22C +/* 04CE08 8004C208 24010002 */ li $at, 2 +/* 04CE0C 8004C20C 10410007 */ beq $v0, $at, .L8004C22C +/* 04CE10 8004C210 24010003 */ li $at, 3 +/* 04CE14 8004C214 1041000C */ beq $v0, $at, .L8004C248 +/* 04CE18 8004C218 24010006 */ li $at, 6 +/* 04CE1C 8004C21C 10410011 */ beq $v0, $at, .L8004C264 +/* 04CE20 8004C220 240D0078 */ li $t5, 120 +/* 04CE24 8004C224 1000001E */ b .L8004C2A0 +/* 04CE28 8004C228 A2000187 */ sb $zero, 0x187($s0) +.L8004C22C: +/* 04CE2C 8004C22C 10600004 */ beqz $v1, .L8004C240 +/* 04CE30 8004C230 240A003C */ li $t2, 60 +/* 04CE34 8004C234 24090028 */ li $t1, 40 +/* 04CE38 8004C238 10000018 */ b .L8004C29C +/* 04CE3C 8004C23C A20901DB */ sb $t1, 0x1db($s0) +.L8004C240: +/* 04CE40 8004C240 10000016 */ b .L8004C29C +/* 04CE44 8004C244 A20A01DB */ sb $t2, 0x1db($s0) +.L8004C248: +/* 04CE48 8004C248 10600004 */ beqz $v1, .L8004C25C +/* 04CE4C 8004C24C 240C003C */ li $t4, 60 +/* 04CE50 8004C250 240B0028 */ li $t3, 40 +/* 04CE54 8004C254 10000011 */ b .L8004C29C +/* 04CE58 8004C258 A20B01DB */ sb $t3, 0x1db($s0) +.L8004C25C: +/* 04CE5C 8004C25C 1000000F */ b .L8004C29C +/* 04CE60 8004C260 A20C01DB */ sb $t4, 0x1db($s0) +.L8004C264: +/* 04CE64 8004C264 3C01800E */ lui $at, %hi(D_800E6554) # $at, 0x800e +/* 04CE68 8004C268 C4216550 */ lwc1 $f1, %lo(D_800E6550)($at) +/* 04CE6C 8004C26C C4206554 */ lwc1 $f0, %lo(D_800E6554)($at) +/* 04CE70 8004C270 A60D0204 */ sh $t5, 0x204($s0) +/* 04CE74 8004C274 C484001C */ lwc1 $f4, 0x1c($a0) +/* 04CE78 8004C278 C4900024 */ lwc1 $f16, 0x24($a0) +/* 04CE7C 8004C27C 460021A1 */ cvt.d.s $f6, $f4 +/* 04CE80 8004C280 46203202 */ mul.d $f8, $f6, $f0 +/* 04CE84 8004C284 460084A1 */ cvt.d.s $f18, $f16 +/* 04CE88 8004C288 46209102 */ mul.d $f4, $f18, $f0 +/* 04CE8C 8004C28C 462042A0 */ cvt.s.d $f10, $f8 +/* 04CE90 8004C290 E48A001C */ swc1 $f10, 0x1c($a0) +/* 04CE94 8004C294 462021A0 */ cvt.s.d $f6, $f4 +/* 04CE98 8004C298 E4860024 */ swc1 $f6, 0x24($a0) +.L8004C29C: +/* 04CE9C 8004C29C A2000187 */ sb $zero, 0x187($s0) +.L8004C2A0: +/* 04CEA0 8004C2A0 8FBF001C */ lw $ra, 0x1c($sp) +/* 04CEA4 8004C2A4 8FB00018 */ lw $s0, 0x18($sp) +/* 04CEA8 8004C2A8 03E00008 */ jr $ra +/* 04CEAC 8004C2AC 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_043920/func_8004C2B0.s b/asm/non_matchings/unknown_043920/func_8004C2B0.s new file mode 100644 index 00000000..f6ff5a5c --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8004C2B0.s @@ -0,0 +1,657 @@ +glabel func_8004C2B0 +/* 04CEB0 8004C2B0 3C014348 */ li $at, 0x43480000 # 200.000000 +/* 04CEB4 8004C2B4 44810000 */ mtc1 $at, $f0 +/* 04CEB8 8004C2B8 3C0142F0 */ li $at, 0x42F00000 # 120.000000 +/* 04CEBC 8004C2BC 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 04CEC0 8004C2C0 44817000 */ mtc1 $at, $f14 +/* 04CEC4 8004C2C4 3C014234 */ li $at, 0x42340000 # 45.000000 +/* 04CEC8 8004C2C8 44819000 */ mtc1 $at, $f18 +/* 04CECC 8004C2CC AFBF0014 */ sw $ra, 0x14($sp) +/* 04CED0 8004C2D0 E7AC0050 */ swc1 $f12, 0x50($sp) +/* 04CED4 8004C2D4 AFA50054 */ sw $a1, 0x54($sp) +/* 04CED8 8004C2D8 3C018012 */ lui $at, %hi(D_8011D4F0) # $at, 0x8012 +/* 04CEDC 8004C2DC C424D4F0 */ lwc1 $f4, %lo(D_8011D4F0)($at) +/* 04CEE0 8004C2E0 C4A60010 */ lwc1 $f6, 0x10($a1) +/* 04CEE4 8004C2E4 44801000 */ mtc1 $zero, $f2 +/* 04CEE8 8004C2E8 46062401 */ sub.s $f16, $f4, $f6 +/* 04CEEC 8004C2EC 00C03825 */ move $a3, $a2 +/* 04CEF0 8004C2F0 46100401 */ sub.s $f16, $f0, $f16 +/* 04CEF4 8004C2F4 4602803C */ c.lt.s $f16, $f2 +/* 04CEF8 8004C2F8 00000000 */ nop +/* 04CEFC 8004C2FC 45000002 */ bc1f .L8004C308 +/* 04CF00 8004C300 00000000 */ nop +/* 04CF04 8004C304 46001406 */ mov.s $f16, $f2 +.L8004C308: +/* 04CF08 8004C308 4610003C */ c.lt.s $f0, $f16 +/* 04CF0C 8004C30C 00000000 */ nop +/* 04CF10 8004C310 45000002 */ bc1f .L8004C31C +/* 04CF14 8004C314 00000000 */ nop +/* 04CF18 8004C318 46000406 */ mov.s $f16, $f0 +.L8004C31C: +/* 04CF1C 8004C31C AFA70058 */ sw $a3, 0x58($sp) +/* 04CF20 8004C320 E7AE0034 */ swc1 $f14, 0x34($sp) +/* 04CF24 8004C324 E7B00020 */ swc1 $f16, 0x20($sp) +/* 04CF28 8004C328 0C019884 */ jal func_80066210 +/* 04CF2C 8004C32C E7B20030 */ swc1 $f18, 0x30($sp) +/* 04CF30 8004C330 8FA70058 */ lw $a3, 0x58($sp) +/* 04CF34 8004C334 C7AE0034 */ lwc1 $f14, 0x34($sp) +/* 04CF38 8004C338 C7B00020 */ lwc1 $f16, 0x20($sp) +/* 04CF3C 8004C33C C7B20030 */ lwc1 $f18, 0x30($sp) +/* 04CF40 8004C340 24010001 */ li $at, 1 +/* 04CF44 8004C344 14410007 */ bne $v0, $at, .L8004C364 +/* 04CF48 8004C348 3C0F8012 */ lui $t7, %hi(D_8011D528) # $t7, 0x8012 +/* 04CF4C 8004C34C 3C014334 */ li $at, 0x43340000 # 180.000000 +/* 04CF50 8004C350 44817000 */ mtc1 $at, $f14 +/* 04CF54 8004C354 3C014248 */ li $at, 0x42480000 # 50.000000 +/* 04CF58 8004C358 44819000 */ mtc1 $at, $f18 +/* 04CF5C 8004C35C 10000008 */ b .L8004C380 +/* 04CF60 8004C360 00000000 */ nop +.L8004C364: +/* 04CF64 8004C364 28410002 */ slti $at, $v0, 2 +/* 04CF68 8004C368 14200005 */ bnez $at, .L8004C380 +/* 04CF6C 8004C36C 3C0142DC */ li $at, 0x42DC0000 # 110.000000 +/* 04CF70 8004C370 44817000 */ mtc1 $at, $f14 +/* 04CF74 8004C374 3C014228 */ li $at, 0x42280000 # 42.000000 +/* 04CF78 8004C378 44819000 */ mtc1 $at, $f18 +/* 04CF7C 8004C37C 00000000 */ nop +.L8004C380: +/* 04CF80 8004C380 8DEFD528 */ lw $t7, %lo(D_8011D528)($t7) +/* 04CF84 8004C384 00000000 */ nop +/* 04CF88 8004C388 31F80010 */ andi $t8, $t7, 0x10 +/* 04CF8C 8004C38C 13000006 */ beqz $t8, .L8004C3A8 +/* 04CF90 8004C390 00000000 */ nop +/* 04CF94 8004C394 80F901E2 */ lb $t9, 0x1e2($a3) +/* 04CF98 8004C398 00000000 */ nop +/* 04CF9C 8004C39C 2B210003 */ slti $at, $t9, 3 +/* 04CFA0 8004C3A0 10200059 */ beqz $at, .L8004C508 +/* 04CFA4 8004C3A4 00000000 */ nop +.L8004C3A8: +/* 04CFA8 8004C3A8 90EA01F5 */ lbu $t2, 0x1f5($a3) +/* 04CFAC 8004C3AC 34018000 */ li $at, 32768 +/* 04CFB0 8004C3B0 15400055 */ bnez $t2, .L8004C508 +/* 04CFB4 8004C3B4 00000000 */ nop +/* 04CFB8 8004C3B8 84EB01A0 */ lh $t3, 0x1a0($a3) +/* 04CFBC 8004C3BC 84ED0196 */ lh $t5, 0x196($a3) +/* 04CFC0 8004C3C0 000B6023 */ negu $t4, $t3 +/* 04CFC4 8004C3C4 31AEFFFF */ andi $t6, $t5, 0xffff +/* 04CFC8 8004C3C8 018E2023 */ subu $a0, $t4, $t6 +/* 04CFCC 8004C3CC 00812021 */ addu $a0, $a0, $at +/* 04CFD0 8004C3D0 34018001 */ li $at, 32769 +/* 04CFD4 8004C3D4 0081082A */ slt $at, $a0, $at +/* 04CFD8 8004C3D8 14200003 */ bnez $at, .L8004C3E8 +/* 04CFDC 8004C3DC 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 04CFE0 8004C3E0 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 04CFE4 8004C3E4 00812021 */ addu $a0, $a0, $at +.L8004C3E8: +/* 04CFE8 8004C3E8 28818000 */ slti $at, $a0, -0x8000 +/* 04CFEC 8004C3EC 10200002 */ beqz $at, .L8004C3F8 +/* 04CFF0 8004C3F0 3401FFFF */ li $at, 65535 +/* 04CFF4 8004C3F4 00812021 */ addu $a0, $a0, $at +.L8004C3F8: +/* 04CFF8 8004C3F8 3C01800E */ lui $at, %hi(D_800E655C) # $at, 0x800e +/* 04CFFC 8004C3FC C4E80094 */ lwc1 $f8, 0x94($a3) +/* 04D000 8004C400 C42B6558 */ lwc1 $f11, %lo(D_800E6558)($at) +/* 04D004 8004C404 C42A655C */ lwc1 $f10, %lo(D_800E655C)($at) +/* 04D008 8004C408 46004021 */ cvt.d.s $f0, $f8 +/* 04D00C 8004C40C 462A003C */ c.lt.d $f0, $f10 +/* 04D010 8004C410 3C01800E */ lui $at, 0x800e +/* 04D014 8004C414 45000009 */ bc1f .L8004C43C +/* 04D018 8004C418 00000000 */ nop +/* 04D01C 8004C41C 3C01800E */ lui $at, %hi(D_800E6568) # $at, 0x800e +/* 04D020 8004C420 C4256560 */ lwc1 $f5, %lo(D_800E6560)($at) +/* 04D024 8004C424 C4246564 */ lwc1 $f4, %lo(D_800E6564)($at) +/* 04D028 8004C428 00000000 */ nop +/* 04D02C 8004C42C 46240180 */ add.d $f6, $f0, $f4 +/* 04D030 8004C430 46203220 */ cvt.s.d $f8, $f6 +/* 04D034 8004C434 10000004 */ b .L8004C448 +/* 04D038 8004C438 E4E80094 */ swc1 $f8, 0x94($a3) +.L8004C43C: +/* 04D03C 8004C43C C42A6568 */ lwc1 $f10, %lo(D_800E6568)($at) +/* 04D040 8004C440 00000000 */ nop +/* 04D044 8004C444 E4EA0094 */ swc1 $f10, 0x94($a3) +.L8004C448: +/* 04D048 8004C448 44842000 */ mtc1 $a0, $f4 +/* 04D04C 8004C44C C4E80094 */ lwc1 $f8, 0x94($a3) +/* 04D050 8004C450 468021A0 */ cvt.s.w $f6, $f4 +/* 04D054 8004C454 46083282 */ mul.s $f10, $f6, $f8 +/* 04D058 8004C458 444FF800 */ cfc1 $t7, $31 +/* 04D05C 8004C45C 00000000 */ nop +/* 04D060 8004C460 35E10003 */ ori $at, $t7, 3 +/* 04D064 8004C464 38210002 */ xori $at, $at, 2 +/* 04D068 8004C468 44C1F800 */ ctc1 $at, $31 +/* 04D06C 8004C46C 00000000 */ nop +/* 04D070 8004C470 46005124 */ cvt.w.s $f4, $f10 +/* 04D074 8004C474 44032000 */ mfc1 $v1, $f4 +/* 04D078 8004C478 44CFF800 */ ctc1 $t7, $31 +/* 04D07C 8004C47C 28610201 */ slti $at, $v1, 0x201 +/* 04D080 8004C480 14200003 */ bnez $at, .L8004C490 +/* 04D084 8004C484 2861FE00 */ slti $at, $v1, -0x200 +/* 04D088 8004C488 24030200 */ li $v1, 512 +/* 04D08C 8004C48C 2861FE00 */ slti $at, $v1, -0x200 +.L8004C490: +/* 04D090 8004C490 10200002 */ beqz $at, .L8004C49C +/* 04D094 8004C494 00000000 */ nop +/* 04D098 8004C498 2403FE00 */ li $v1, -512 +.L8004C49C: +/* 04D09C 8004C49C 4458F800 */ cfc1 $t8, $31 +/* 04D0A0 8004C4A0 C7A60050 */ lwc1 $f6, 0x50($sp) +/* 04D0A4 8004C4A4 37010003 */ ori $at, $t8, 3 +/* 04D0A8 8004C4A8 38210002 */ xori $at, $at, 2 +/* 04D0AC 8004C4AC 44C1F800 */ ctc1 $at, $31 +/* 04D0B0 8004C4B0 00000000 */ nop +/* 04D0B4 8004C4B4 46003224 */ cvt.w.s $f8, $f6 +/* 04D0B8 8004C4B8 44094000 */ mfc1 $t1, $f8 +/* 04D0BC 8004C4BC 44D8F800 */ ctc1 $t8, $31 +/* 04D0C0 8004C4C0 00690019 */ multu $v1, $t1 +/* 04D0C4 8004C4C4 00001812 */ mflo $v1 +/* 04D0C8 8004C4C8 0064082A */ slt $at, $v1, $a0 +/* 04D0CC 8004C4CC 04810004 */ bgez $a0, .L8004C4E0 +/* 04D0D0 8004C4D0 00000000 */ nop +/* 04D0D4 8004C4D4 10200002 */ beqz $at, .L8004C4E0 +/* 04D0D8 8004C4D8 00000000 */ nop +/* 04D0DC 8004C4DC 00801825 */ move $v1, $a0 +.L8004C4E0: +/* 04D0E0 8004C4E0 18800004 */ blez $a0, .L8004C4F4 +/* 04D0E4 8004C4E4 0083082A */ slt $at, $a0, $v1 +/* 04D0E8 8004C4E8 10200002 */ beqz $at, .L8004C4F4 +/* 04D0EC 8004C4EC 00000000 */ nop +/* 04D0F0 8004C4F0 00801825 */ move $v1, $a0 +.L8004C4F4: +/* 04D0F4 8004C4F4 84F90196 */ lh $t9, 0x196($a3) +/* 04D0F8 8004C4F8 00000000 */ nop +/* 04D0FC 8004C4FC 03235021 */ addu $t2, $t9, $v1 +/* 04D100 8004C500 1000000D */ b .L8004C538 +/* 04D104 8004C504 A4EA0196 */ sh $t2, 0x196($a3) +.L8004C508: +/* 04D108 8004C508 444BF800 */ cfc1 $t3, $31 +/* 04D10C 8004C50C 44805000 */ mtc1 $zero, $f10 +/* 04D110 8004C510 35610003 */ ori $at, $t3, 3 +/* 04D114 8004C514 38210002 */ xori $at, $at, 2 +/* 04D118 8004C518 E4EA0094 */ swc1 $f10, 0x94($a3) +/* 04D11C 8004C51C C7A40050 */ lwc1 $f4, 0x50($sp) +/* 04D120 8004C520 44C1F800 */ ctc1 $at, $31 +/* 04D124 8004C524 00000000 */ nop +/* 04D128 8004C528 460021A4 */ cvt.w.s $f6, $f4 +/* 04D12C 8004C52C 44CBF800 */ ctc1 $t3, $31 +/* 04D130 8004C530 44093000 */ mfc1 $t1, $f6 +/* 04D134 8004C534 00000000 */ nop +.L8004C538: +/* 04D138 8004C538 3C0D8012 */ lui $t5, %hi(D_8011D586) # $t5, 0x8012 +/* 04D13C 8004C53C 85ADD586 */ lh $t5, %lo(D_8011D586)($t5) +/* 04D140 8004C540 00000000 */ nop +/* 04D144 8004C544 11A00005 */ beqz $t5, .L8004C55C +/* 04D148 8004C548 00000000 */ nop +/* 04D14C 8004C54C 84EC01A0 */ lh $t4, 0x1a0($a3) +/* 04D150 8004C550 340E8000 */ li $t6, 32768 +/* 04D154 8004C554 01CC7823 */ subu $t7, $t6, $t4 +/* 04D158 8004C558 A4EF0196 */ sh $t7, 0x196($a3) +.L8004C55C: +/* 04D15C 8004C55C 80E301E0 */ lb $v1, 0x1e0($a3) +/* 04D160 8004C560 24010002 */ li $at, 2 +/* 04D164 8004C564 10610003 */ beq $v1, $at, .L8004C574 +/* 04D168 8004C568 2401FFFE */ li $at, -2 +/* 04D16C 8004C56C 14610004 */ bne $v1, $at, .L8004C580 +/* 04D170 8004C570 8FB80054 */ lw $t8, 0x54($sp) +.L8004C574: +/* 04D174 8004C574 1000000D */ b .L8004C5AC +/* 04D178 8004C578 00002025 */ move $a0, $zero +/* 04D17C 8004C57C 8FB80054 */ lw $t8, 0x54($sp) +.L8004C580: +/* 04D180 8004C580 00000000 */ nop +/* 04D184 8004C584 87040002 */ lh $a0, 2($t8) +/* 04D188 8004C588 00000000 */ nop +/* 04D18C 8004C58C 28813001 */ slti $at, $a0, 0x3001 +/* 04D190 8004C590 14200003 */ bnez $at, .L8004C5A0 +/* 04D194 8004C594 2881D000 */ slti $at, $a0, -0x3000 +/* 04D198 8004C598 24043000 */ li $a0, 12288 +/* 04D19C 8004C59C 2881D000 */ slti $at, $a0, -0x3000 +.L8004C5A0: +/* 04D1A0 8004C5A0 10200003 */ beqz $at, .L8004C5B0 +/* 04D1A4 8004C5A4 3C014120 */ lui $at, 0x4120 +/* 04D1A8 8004C5A8 2404D000 */ li $a0, -12288 +.L8004C5AC: +/* 04D1AC 8004C5AC 3C014120 */ li $at, 0x41200000 # 10.000000 +.L8004C5B0: +/* 04D1B0 8004C5B0 44816000 */ mtc1 $at, $f12 +/* 04D1B4 8004C5B4 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 +/* 04D1B8 8004C5B8 460C8202 */ mul.s $f8, $f16, $f12 +/* 04D1BC 8004C5BC 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 +/* 04D1C0 8004C5C0 8D050000 */ lw $a1, ($t0) +/* 04D1C4 8004C5C4 4459F800 */ cfc1 $t9, $31 +/* 04D1C8 8004C5C8 84A60002 */ lh $a2, 2($a1) +/* 04D1CC 8004C5CC 37210003 */ ori $at, $t9, 3 +/* 04D1D0 8004C5D0 38210002 */ xori $at, $at, 2 +/* 04D1D4 8004C5D4 44C1F800 */ ctc1 $at, $31 +/* 04D1D8 8004C5D8 30CBFFFF */ andi $t3, $a2, 0xffff +/* 04D1DC 8004C5DC 460042A4 */ cvt.w.s $f10, $f8 +/* 04D1E0 8004C5E0 34018001 */ li $at, 32769 +/* 04D1E4 8004C5E4 440A5000 */ mfc1 $t2, $f10 +/* 04D1E8 8004C5E8 44D9F800 */ ctc1 $t9, $31 +/* 04D1EC 8004C5EC 008A2023 */ subu $a0, $a0, $t2 +/* 04D1F0 8004C5F0 00042023 */ negu $a0, $a0 +/* 04D1F4 8004C5F4 008B1823 */ subu $v1, $a0, $t3 +/* 04D1F8 8004C5F8 0061082A */ slt $at, $v1, $at +/* 04D1FC 8004C5FC 14200004 */ bnez $at, .L8004C610 +/* 04D200 8004C600 3C198012 */ lui $t9, %hi(D_8011D540) # $t9, 0x8012 +/* 04D204 8004C604 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 04D208 8004C608 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 04D20C 8004C60C 00611821 */ addu $v1, $v1, $at +.L8004C610: +/* 04D210 8004C610 28618000 */ slti $at, $v1, -0x8000 +/* 04D214 8004C614 10200002 */ beqz $at, .L8004C620 +/* 04D218 8004C618 3401FFFF */ li $at, 65535 +/* 04D21C 8004C61C 00611821 */ addu $v1, $v1, $at +.L8004C620: +/* 04D220 8004C620 00690019 */ multu $v1, $t1 +/* 04D224 8004C624 24010001 */ li $at, 1 +/* 04D228 8004C628 00006812 */ mflo $t5 +/* 04D22C 8004C62C 000D7103 */ sra $t6, $t5, 4 +/* 04D230 8004C630 00CE6021 */ addu $t4, $a2, $t6 +/* 04D234 8004C634 A4AC0002 */ sh $t4, 2($a1) +/* 04D238 8004C638 8D0F0000 */ lw $t7, ($t0) +/* 04D23C 8004C63C C4E200B8 */ lwc1 $f2, 0xb8($a3) +/* 04D240 8004C640 91E4003B */ lbu $a0, 0x3b($t7) +/* 04D244 8004C644 C4E00008 */ lwc1 $f0, 8($a3) +/* 04D248 8004C648 10810007 */ beq $a0, $at, .L8004C668 +/* 04D24C 8004C64C 24010002 */ li $at, 2 +/* 04D250 8004C650 10810009 */ beq $a0, $at, .L8004C678 +/* 04D254 8004C654 24010003 */ li $at, 3 +/* 04D258 8004C658 1081000D */ beq $a0, $at, .L8004C690 +/* 04D25C 8004C65C 3C014254 */ lui $at, 0x4254 +/* 04D260 8004C660 10000018 */ b .L8004C6C4 +/* 04D264 8004C664 28410002 */ slti $at, $v0, 2 +.L8004C668: +/* 04D268 8004C668 3C01420C */ li $at, 0x420C0000 # 35.000000 +/* 04D26C 8004C66C 44812000 */ mtc1 $at, $f4 +/* 04D270 8004C670 10000013 */ b .L8004C6C0 +/* 04D274 8004C674 46047380 */ add.s $f14, $f14, $f4 +.L8004C678: +/* 04D278 8004C678 3C01420C */ li $at, 0x420C0000 # 35.000000 +/* 04D27C 8004C67C 44813000 */ mtc1 $at, $f6 +/* 04D280 8004C680 460C9481 */ sub.s $f18, $f18, $f12 +/* 04D284 8004C684 1000000E */ b .L8004C6C0 +/* 04D288 8004C688 46067381 */ sub.s $f14, $f14, $f6 +/* 04D28C 8004C68C 3C014254 */ li $at, 0x42540000 # 53.000000 +.L8004C690: +/* 04D290 8004C690 44814000 */ mtc1 $at, $f8 +/* 04D294 8004C694 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 04D298 8004C698 44815000 */ mtc1 $at, $f10 +/* 04D29C 8004C69C 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 04D2A0 8004C6A0 44813800 */ mtc1 $at, $f7 +/* 04D2A4 8004C6A4 44803000 */ mtc1 $zero, $f6 +/* 04D2A8 8004C6A8 46000121 */ cvt.d.s $f4, $f0 +/* 04D2AC 8004C6AC 46087381 */ sub.s $f14, $f14, $f8 +/* 04D2B0 8004C6B0 44801000 */ mtc1 $zero, $f2 +/* 04D2B4 8004C6B4 46262202 */ mul.d $f8, $f4, $f6 +/* 04D2B8 8004C6B8 460A9481 */ sub.s $f18, $f18, $f10 +/* 04D2BC 8004C6BC 46204020 */ cvt.s.d $f0, $f8 +.L8004C6C0: +/* 04D2C0 8004C6C0 28410002 */ slti $at, $v0, 2 +.L8004C6C4: +/* 04D2C4 8004C6C4 10200006 */ beqz $at, .L8004C6E0 +/* 04D2C8 8004C6C8 3C014270 */ li $at, 0x42700000 # 60.000000 +/* 04D2CC 8004C6CC 44815000 */ mtc1 $at, $f10 +/* 04D2D0 8004C6D0 00000000 */ nop +/* 04D2D4 8004C6D4 460A0102 */ mul.s $f4, $f0, $f10 +/* 04D2D8 8004C6D8 10000006 */ b .L8004C6F4 +/* 04D2DC 8004C6DC 46047380 */ add.s $f14, $f14, $f4 +.L8004C6E0: +/* 04D2E0 8004C6E0 3C0141F0 */ li $at, 0x41F00000 # 30.000000 +/* 04D2E4 8004C6E4 44813000 */ mtc1 $at, $f6 +/* 04D2E8 8004C6E8 00000000 */ nop +/* 04D2EC 8004C6EC 46060202 */ mul.s $f8, $f0, $f6 +/* 04D2F0 8004C6F0 46087380 */ add.s $f14, $f14, $f8 +.L8004C6F4: +/* 04D2F4 8004C6F4 C4E0002C */ lwc1 $f0, 0x2c($a3) +/* 04D2F8 8004C6F8 44802800 */ mtc1 $zero, $f5 +/* 04D2FC 8004C6FC 44802000 */ mtc1 $zero, $f4 +/* 04D300 8004C700 460002A1 */ cvt.d.s $f10, $f0 +/* 04D304 8004C704 4624503C */ c.lt.d $f10, $f4 +/* 04D308 8004C708 00000000 */ nop +/* 04D30C 8004C70C 45000016 */ bc1f .L8004C768 +/* 04D310 8004C710 00000000 */ nop +/* 04D314 8004C714 80F801E2 */ lb $t8, 0x1e2($a3) +/* 04D318 8004C718 00000000 */ nop +/* 04D31C 8004C71C 17000012 */ bnez $t8, .L8004C768 +/* 04D320 8004C720 00000000 */ nop +/* 04D324 8004C724 46020182 */ mul.s $f6, $f0, $f2 +/* 04D328 8004C728 3C0140C0 */ li $at, 0x40C00000 # 6.000000 +/* 04D32C 8004C72C 44815000 */ mtc1 $at, $f10 +/* 04D330 8004C730 3C01800E */ lui $at, %hi(D_800E6574) # $at, 0x800e +/* 04D334 8004C734 46003207 */ neg.s $f8, $f6 +/* 04D338 8004C738 460A4402 */ mul.s $f16, $f8, $f10 +/* 04D33C 8004C73C C4256570 */ lwc1 $f5, %lo(D_800E6570)($at) +/* 04D340 8004C740 C4246574 */ lwc1 $f4, %lo(D_800E6574)($at) +/* 04D344 8004C744 3C014282 */ li $at, 0x42820000 # 65.000000 +/* 04D348 8004C748 460081A1 */ cvt.d.s $f6, $f16 +/* 04D34C 8004C74C 4626203C */ c.lt.d $f4, $f6 +/* 04D350 8004C750 00000000 */ nop +/* 04D354 8004C754 45000003 */ bc1f .L8004C764 +/* 04D358 8004C758 00000000 */ nop +/* 04D35C 8004C75C 44818000 */ mtc1 $at, $f16 +/* 04D360 8004C760 00000000 */ nop +.L8004C764: +/* 04D364 8004C764 46107381 */ sub.s $f14, $f14, $f16 +.L8004C768: +/* 04D368 8004C768 8F39D540 */ lw $t9, %lo(D_8011D540)($t9) +/* 04D36C 8004C76C 00000000 */ nop +/* 04D370 8004C770 17200015 */ bnez $t9, .L8004C7C8 +/* 04D374 8004C774 24040024 */ li $a0, 36 +/* 04D378 8004C778 AFA70058 */ sw $a3, 0x58($sp) +/* 04D37C 8004C77C E7AE0034 */ swc1 $f14, 0x34($sp) +/* 04D380 8004C780 0C00322D */ jal func_8000C8B4 +/* 04D384 8004C784 E7B20030 */ swc1 $f18, 0x30($sp) +/* 04D388 8004C788 8FA70058 */ lw $a3, 0x58($sp) +/* 04D38C 8004C78C 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 +/* 04D390 8004C790 80E301D3 */ lb $v1, 0x1d3($a3) +/* 04D394 8004C794 C7AE0034 */ lwc1 $f14, 0x34($sp) +/* 04D398 8004C798 C7B20030 */ lwc1 $f18, 0x30($sp) +/* 04D39C 8004C79C 0043082A */ slt $at, $v0, $v1 +/* 04D3A0 8004C7A0 10200005 */ beqz $at, .L8004C7B8 +/* 04D3A4 8004C7A4 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 +/* 04D3A8 8004C7A8 3C01C1F0 */ li $at, 0xC1F00000 # -30.000000 +/* 04D3AC 8004C7AC 44817000 */ mtc1 $at, $f14 +/* 04D3B0 8004C7B0 10000005 */ b .L8004C7C8 +/* 04D3B4 8004C7B4 00000000 */ nop +.L8004C7B8: +/* 04D3B8 8004C7B8 18600003 */ blez $v1, .L8004C7C8 +/* 04D3BC 8004C7BC 3C014334 */ li $at, 0x43340000 # 180.000000 +/* 04D3C0 8004C7C0 44817000 */ mtc1 $at, $f14 +/* 04D3C4 8004C7C4 00000000 */ nop +.L8004C7C8: +/* 04D3C8 8004C7C8 3C0A8012 */ lui $t2, %hi(D_8011D540) # $t2, 0x8012 +/* 04D3CC 8004C7CC 8D4AD540 */ lw $t2, %lo(D_8011D540)($t2) +/* 04D3D0 8004C7D0 8D050000 */ lw $a1, ($t0) +/* 04D3D4 8004C7D4 29410051 */ slti $at, $t2, 0x51 +/* 04D3D8 8004C7D8 14200007 */ bnez $at, .L8004C7F8 +/* 04D3DC 8004C7DC 00000000 */ nop +/* 04D3E0 8004C7E0 E4AE001C */ swc1 $f14, 0x1c($a1) +/* 04D3E4 8004C7E4 8D0B0000 */ lw $t3, ($t0) +/* 04D3E8 8004C7E8 00000000 */ nop +/* 04D3EC 8004C7EC E5720020 */ swc1 $f18, 0x20($t3) +/* 04D3F0 8004C7F0 8D050000 */ lw $a1, ($t0) +/* 04D3F4 8004C7F4 00000000 */ nop +.L8004C7F8: +/* 04D3F8 8004C7F8 C4A2001C */ lwc1 $f2, 0x1c($a1) +/* 04D3FC 8004C7FC 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 04D400 8004C800 46027281 */ sub.s $f10, $f14, $f2 +/* 04D404 8004C804 44810800 */ mtc1 $at, $f1 +/* 04D408 8004C808 44800000 */ mtc1 $zero, $f0 +/* 04D40C 8004C80C 46005121 */ cvt.d.s $f4, $f10 +/* 04D410 8004C810 46202182 */ mul.d $f6, $f4, $f0 +/* 04D414 8004C814 46001221 */ cvt.d.s $f8, $f2 +/* 04D418 8004C818 46264280 */ add.d $f10, $f8, $f6 +/* 04D41C 8004C81C 46205120 */ cvt.s.d $f4, $f10 +/* 04D420 8004C820 E4A4001C */ swc1 $f4, 0x1c($a1) +/* 04D424 8004C824 8D050000 */ lw $a1, ($t0) +/* 04D428 8004C828 00000000 */ nop +/* 04D42C 8004C82C C4AC0020 */ lwc1 $f12, 0x20($a1) +/* 04D430 8004C830 00000000 */ nop +/* 04D434 8004C834 460C9181 */ sub.s $f6, $f18, $f12 +/* 04D438 8004C838 460032A1 */ cvt.d.s $f10, $f6 +/* 04D43C 8004C83C 46205102 */ mul.d $f4, $f10, $f0 +/* 04D440 8004C840 46006221 */ cvt.d.s $f8, $f12 +/* 04D444 8004C844 46244180 */ add.d $f6, $f8, $f4 +/* 04D448 8004C848 462032A0 */ cvt.s.d $f10, $f6 +/* 04D44C 8004C84C E4AA0020 */ swc1 $f10, 0x20($a1) +/* 04D450 8004C850 8D0D0000 */ lw $t5, ($t0) +/* 04D454 8004C854 00000000 */ nop +/* 04D458 8004C858 85A40002 */ lh $a0, 2($t5) +/* 04D45C 8004C85C AFA70058 */ sw $a3, 0x58($sp) +/* 04D460 8004C860 2484FC00 */ addiu $a0, $a0, -0x400 +/* 04D464 8004C864 00047400 */ sll $t6, $a0, 0x10 +/* 04D468 8004C868 0C01C1F1 */ jal func_800707C4 +/* 04D46C 8004C86C 000E2403 */ sra $a0, $t6, 0x10 +/* 04D470 8004C870 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 +/* 04D474 8004C874 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 +/* 04D478 8004C878 8D0F0000 */ lw $t7, ($t0) +/* 04D47C 8004C87C 00000000 */ nop +/* 04D480 8004C880 85E40002 */ lh $a0, 2($t7) +/* 04D484 8004C884 E7A0001C */ swc1 $f0, 0x1c($sp) +/* 04D488 8004C888 2484FC00 */ addiu $a0, $a0, -0x400 +/* 04D48C 8004C88C 0004C400 */ sll $t8, $a0, 0x10 +/* 04D490 8004C890 0C01C1FE */ jal func_800707F8 +/* 04D494 8004C894 00182403 */ sra $a0, $t8, 0x10 +/* 04D498 8004C898 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 +/* 04D49C 8004C89C 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 +/* 04D4A0 8004C8A0 8D050000 */ lw $a1, ($t0) +/* 04D4A4 8004C8A4 C7AE001C */ lwc1 $f14, 0x1c($sp) +/* 04D4A8 8004C8A8 C4A2001C */ lwc1 $f2, 0x1c($a1) +/* 04D4AC 8004C8AC C4AC0020 */ lwc1 $f12, 0x20($a1) +/* 04D4B0 8004C8B0 46001202 */ mul.s $f8, $f2, $f0 +/* 04D4B4 8004C8B4 8FA70058 */ lw $a3, 0x58($sp) +/* 04D4B8 8004C8B8 340B8000 */ li $t3, 32768 +/* 04D4BC 8004C8BC 84EA0196 */ lh $t2, 0x196($a3) +/* 04D4C0 8004C8C0 460E6102 */ mul.s $f4, $f12, $f14 +/* 04D4C4 8004C8C4 016A2023 */ subu $a0, $t3, $t2 +/* 04D4C8 8004C8C8 00046C00 */ sll $t5, $a0, 0x10 +/* 04D4CC 8004C8CC 000D2403 */ sra $a0, $t5, 0x10 +/* 04D4D0 8004C8D0 460E1182 */ mul.s $f6, $f2, $f14 +/* 04D4D4 8004C8D4 46044401 */ sub.s $f16, $f8, $f4 +/* 04D4D8 8004C8D8 E7B00020 */ swc1 $f16, 0x20($sp) +/* 04D4DC 8004C8DC 46006282 */ mul.s $f10, $f12, $f0 +/* 04D4E0 8004C8E0 460A3480 */ add.s $f18, $f6, $f10 +/* 04D4E4 8004C8E4 0C01C1F1 */ jal func_800707C4 +/* 04D4E8 8004C8E8 E7B20030 */ swc1 $f18, 0x30($sp) +/* 04D4EC 8004C8EC C7B00020 */ lwc1 $f16, 0x20($sp) +/* 04D4F0 8004C8F0 8FA70058 */ lw $a3, 0x58($sp) +/* 04D4F4 8004C8F4 46100202 */ mul.s $f8, $f0, $f16 +/* 04D4F8 8004C8F8 340F8000 */ li $t7, 32768 +/* 04D4FC 8004C8FC E7A80028 */ swc1 $f8, 0x28($sp) +/* 04D500 8004C900 84EC0196 */ lh $t4, 0x196($a3) +/* 04D504 8004C904 00000000 */ nop +/* 04D508 8004C908 01EC2023 */ subu $a0, $t7, $t4 +/* 04D50C 8004C90C 0004C400 */ sll $t8, $a0, 0x10 +/* 04D510 8004C910 0C01C1FE */ jal func_800707F8 +/* 04D514 8004C914 00182403 */ sra $a0, $t8, 0x10 +/* 04D518 8004C918 C7B00020 */ lwc1 $f16, 0x20($sp) +/* 04D51C 8004C91C 8FA70058 */ lw $a3, 0x58($sp) +/* 04D520 8004C920 46100102 */ mul.s $f4, $f0, $f16 +/* 04D524 8004C924 E7A40024 */ swc1 $f4, 0x24($sp) +/* 04D528 8004C928 84E40196 */ lh $a0, 0x196($a3) +/* 04D52C 8004C92C 00000000 */ nop +/* 04D530 8004C930 24844000 */ addiu $a0, $a0, 0x4000 +/* 04D534 8004C934 00045C00 */ sll $t3, $a0, 0x10 +/* 04D538 8004C938 0C01C1F1 */ jal func_800707C4 +/* 04D53C 8004C93C 000B2403 */ sra $a0, $t3, 0x10 +/* 04D540 8004C940 3C014040 */ li $at, 0x40400000 # 3.000000 +/* 04D544 8004C944 44813000 */ mtc1 $at, $f6 +/* 04D548 8004C948 8FA70058 */ lw $a3, 0x58($sp) +/* 04D54C 8004C94C 46060282 */ mul.s $f10, $f0, $f6 +/* 04D550 8004C950 8FA20054 */ lw $v0, 0x54($sp) +/* 04D554 8004C954 C4E80030 */ lwc1 $f8, 0x30($a3) +/* 04D558 8004C958 C7A60028 */ lwc1 $f6, 0x28($sp) +/* 04D55C 8004C95C 46085402 */ mul.s $f16, $f10, $f8 +/* 04D560 8004C960 C444000C */ lwc1 $f4, 0xc($v0) +/* 04D564 8004C964 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 +/* 04D568 8004C968 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 +/* 04D56C 8004C96C 46062280 */ add.s $f10, $f4, $f6 +/* 04D570 8004C970 8D0D0000 */ lw $t5, ($t0) +/* 04D574 8004C974 46105200 */ add.s $f8, $f10, $f16 +/* 04D578 8004C978 C7B20030 */ lwc1 $f18, 0x30($sp) +/* 04D57C 8004C97C E5A8000C */ swc1 $f8, 0xc($t5) +/* 04D580 8004C980 8D0E0000 */ lw $t6, ($t0) +/* 04D584 8004C984 C4460010 */ lwc1 $f6, 0x10($v0) +/* 04D588 8004C988 C5C40010 */ lwc1 $f4, 0x10($t6) +/* 04D58C 8004C98C 46123280 */ add.s $f10, $f6, $f18 +/* 04D590 8004C990 80E301E0 */ lb $v1, 0x1e0($a3) +/* 04D594 8004C994 460A2081 */ sub.s $f2, $f4, $f10 +/* 04D598 8004C998 24010001 */ li $at, 1 +/* 04D59C 8004C99C 10610003 */ beq $v1, $at, .L8004C9AC +/* 04D5A0 8004C9A0 46001406 */ mov.s $f16, $f2 +/* 04D5A4 8004C9A4 2401FFFF */ li $at, -1 +/* 04D5A8 8004C9A8 14610004 */ bne $v1, $at, .L8004C9BC +.L8004C9AC: +/* 04D5AC 8004C9AC 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 04D5B0 8004C9B0 44814000 */ mtc1 $at, $f8 +/* 04D5B4 8004C9B4 80E301E0 */ lb $v1, 0x1e0($a3) +/* 04D5B8 8004C9B8 E4E80074 */ swc1 $f8, 0x74($a3) +.L8004C9BC: +/* 04D5BC 8004C9BC 24010002 */ li $at, 2 +/* 04D5C0 8004C9C0 10610002 */ beq $v1, $at, .L8004C9CC +/* 04D5C4 8004C9C4 2401FFFE */ li $at, -2 +/* 04D5C8 8004C9C8 14610004 */ bne $v1, $at, .L8004C9DC +.L8004C9CC: +/* 04D5CC 8004C9CC 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 04D5D0 8004C9D0 44813000 */ mtc1 $at, $f6 +/* 04D5D4 8004C9D4 00000000 */ nop +/* 04D5D8 8004C9D8 E4E60074 */ swc1 $f6, 0x74($a3) +.L8004C9DC: +/* 04D5DC 8004C9DC C4E40074 */ lwc1 $f4, 0x74($a3) +/* 04D5E0 8004C9E0 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 04D5E4 8004C9E4 44815800 */ mtc1 $at, $f11 +/* 04D5E8 8004C9E8 44805000 */ mtc1 $zero, $f10 +/* 04D5EC 8004C9EC 46002021 */ cvt.d.s $f0, $f4 +/* 04D5F0 8004C9F0 4620503C */ c.lt.d $f10, $f0 +/* 04D5F4 8004C9F4 3C014000 */ lui $at, 0x4000 +/* 04D5F8 8004C9F8 45000009 */ bc1f .L8004CA20 +/* 04D5FC 8004C9FC 00000000 */ nop +/* 04D600 8004CA00 3C01800E */ li $at, 0x800E0000 # -0.000000 +/* 04D604 8004CA04 C4296578 */ lwc1 $f9, %lo(D_800E6578)($at) +/* 04D608 8004CA08 C428657C */ lwc1 $f8, %lo(D_800E657C)($at) +/* 04D60C 8004CA0C 00000000 */ nop +/* 04D610 8004CA10 46280181 */ sub.d $f6, $f0, $f8 +/* 04D614 8004CA14 46203120 */ cvt.s.d $f4, $f6 +/* 04D618 8004CA18 10000004 */ b .L8004CA2C +/* 04D61C 8004CA1C E4E40074 */ swc1 $f4, 0x74($a3) +.L8004CA20: +/* 04D620 8004CA20 44815000 */ mtc1 $at, $f10 +/* 04D624 8004CA24 00000000 */ nop +/* 04D628 8004CA28 E4EA0074 */ swc1 $f10, 0x74($a3) +.L8004CA2C: +/* 04D62C 8004CA2C C7A80050 */ lwc1 $f8, 0x50($sp) +/* 04D630 8004CA30 C4E40074 */ lwc1 $f4, 0x74($a3) +/* 04D634 8004CA34 46081182 */ mul.s $f6, $f2, $f8 +/* 04D638 8004CA38 44800000 */ mtc1 $zero, $f0 +/* 04D63C 8004CA3C 46043083 */ div.s $f2, $f6, $f4 +/* 04D640 8004CA40 4602003C */ c.lt.s $f0, $f2 +/* 04D644 8004CA44 00000000 */ nop +/* 04D648 8004CA48 45000006 */ bc1f .L8004CA64 +/* 04D64C 8004CA4C 00000000 */ nop +/* 04D650 8004CA50 4602803C */ c.lt.s $f16, $f2 +/* 04D654 8004CA54 00000000 */ nop +/* 04D658 8004CA58 45000002 */ bc1f .L8004CA64 +/* 04D65C 8004CA5C 00000000 */ nop +/* 04D660 8004CA60 46008086 */ mov.s $f2, $f16 +.L8004CA64: +/* 04D664 8004CA64 4600103C */ c.lt.s $f2, $f0 +/* 04D668 8004CA68 00000000 */ nop +/* 04D66C 8004CA6C 45000006 */ bc1f .L8004CA88 +/* 04D670 8004CA70 00000000 */ nop +/* 04D674 8004CA74 4610103C */ c.lt.s $f2, $f16 +/* 04D678 8004CA78 00000000 */ nop +/* 04D67C 8004CA7C 45000002 */ bc1f .L8004CA88 +/* 04D680 8004CA80 00000000 */ nop +/* 04D684 8004CA84 46008086 */ mov.s $f2, $f16 +.L8004CA88: +/* 04D688 8004CA88 8D050000 */ lw $a1, ($t0) +/* 04D68C 8004CA8C 00000000 */ nop +/* 04D690 8004CA90 C4AA0010 */ lwc1 $f10, 0x10($a1) +/* 04D694 8004CA94 00000000 */ nop +/* 04D698 8004CA98 46025201 */ sub.s $f8, $f10, $f2 +/* 04D69C 8004CA9C E4A80010 */ swc1 $f8, 0x10($a1) +/* 04D6A0 8004CAA0 84E40196 */ lh $a0, 0x196($a3) +/* 04D6A4 8004CAA4 AFA70058 */ sw $a3, 0x58($sp) +/* 04D6A8 8004CAA8 24844000 */ addiu $a0, $a0, 0x4000 +/* 04D6AC 8004CAAC 00047C00 */ sll $t7, $a0, 0x10 +/* 04D6B0 8004CAB0 0C01C1FE */ jal func_800707F8 +/* 04D6B4 8004CAB4 000F2403 */ sra $a0, $t7, 0x10 +/* 04D6B8 8004CAB8 3C014040 */ li $at, 0x40400000 # 3.000000 +/* 04D6BC 8004CABC 44812000 */ mtc1 $at, $f4 +/* 04D6C0 8004CAC0 46000187 */ neg.s $f6, $f0 +/* 04D6C4 8004CAC4 46043282 */ mul.s $f10, $f6, $f4 +/* 04D6C8 8004CAC8 8FA70058 */ lw $a3, 0x58($sp) +/* 04D6CC 8004CACC 8FB80054 */ lw $t8, 0x54($sp) +/* 04D6D0 8004CAD0 C4E80030 */ lwc1 $f8, 0x30($a3) +/* 04D6D4 8004CAD4 C7A40024 */ lwc1 $f4, 0x24($sp) +/* 04D6D8 8004CAD8 46085402 */ mul.s $f16, $f10, $f8 +/* 04D6DC 8004CADC C7060014 */ lwc1 $f6, 0x14($t8) +/* 04D6E0 8004CAE0 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 +/* 04D6E4 8004CAE4 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 +/* 04D6E8 8004CAE8 46043280 */ add.s $f10, $f6, $f4 +/* 04D6EC 8004CAEC 8D190000 */ lw $t9, ($t0) +/* 04D6F0 8004CAF0 46105200 */ add.s $f8, $f10, $f16 +/* 04D6F4 8004CAF4 3C0E8012 */ lui $t6, %hi(D_8011D586) # $t6, 0x8012 +/* 04D6F8 8004CAF8 E7280014 */ swc1 $f8, 0x14($t9) +/* 04D6FC 8004CAFC 8D0A0000 */ lw $t2, ($t0) +/* 04D700 8004CB00 84EB0196 */ lh $t3, 0x196($a3) +/* 04D704 8004CB04 00000000 */ nop +/* 04D708 8004CB08 A54B0000 */ sh $t3, ($t2) +/* 04D70C 8004CB0C 80ED01E0 */ lb $t5, 0x1e0($a3) +/* 04D710 8004CB10 00000000 */ nop +/* 04D714 8004CB14 15A00005 */ bnez $t5, .L8004CB2C +/* 04D718 8004CB18 00000000 */ nop +/* 04D71C 8004CB1C 85CED586 */ lh $t6, %lo(D_8011D586)($t6) +/* 04D720 8004CB20 34018001 */ li $at, 32769 +/* 04D724 8004CB24 11C00014 */ beqz $t6, .L8004CB78 +/* 04D728 8004CB28 00000000 */ nop +.L8004CB2C: +/* 04D72C 8004CB2C 8D050000 */ lw $a1, ($t0) +/* 04D730 8004CB30 34018001 */ li $at, 32769 +/* 04D734 8004CB34 84A20004 */ lh $v0, 4($a1) +/* 04D738 8004CB38 00000000 */ nop +/* 04D73C 8004CB3C 3043FFFF */ andi $v1, $v0, 0xffff +/* 04D740 8004CB40 00031823 */ negu $v1, $v1 +/* 04D744 8004CB44 0061082A */ slt $at, $v1, $at +/* 04D748 8004CB48 14200003 */ bnez $at, .L8004CB58 +/* 04D74C 8004CB4C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 04D750 8004CB50 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 04D754 8004CB54 00611821 */ addu $v1, $v1, $at +.L8004CB58: +/* 04D758 8004CB58 28618000 */ slti $at, $v1, -0x8000 +/* 04D75C 8004CB5C 10200002 */ beqz $at, .L8004CB68 +/* 04D760 8004CB60 3401FFFF */ li $at, 65535 +/* 04D764 8004CB64 00611821 */ addu $v1, $v1, $at +.L8004CB68: +/* 04D768 8004CB68 00037883 */ sra $t7, $v1, 2 +/* 04D76C 8004CB6C 004F6021 */ addu $t4, $v0, $t7 +/* 04D770 8004CB70 10000013 */ b .L8004CBC0 +/* 04D774 8004CB74 A4AC0004 */ sh $t4, 4($a1) +.L8004CB78: +/* 04D778 8004CB78 8D050000 */ lw $a1, ($t0) +/* 04D77C 8004CB7C 84E401A4 */ lh $a0, 0x1a4($a3) +/* 04D780 8004CB80 84A20004 */ lh $v0, 4($a1) +/* 04D784 8004CB84 0004C103 */ sra $t8, $a0, 4 +/* 04D788 8004CB88 3059FFFF */ andi $t9, $v0, 0xffff +/* 04D78C 8004CB8C 03191823 */ subu $v1, $t8, $t9 +/* 04D790 8004CB90 0061082A */ slt $at, $v1, $at +/* 04D794 8004CB94 14200003 */ bnez $at, .L8004CBA4 +/* 04D798 8004CB98 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 04D79C 8004CB9C 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 04D7A0 8004CBA0 00611821 */ addu $v1, $v1, $at +.L8004CBA4: +/* 04D7A4 8004CBA4 28618000 */ slti $at, $v1, -0x8000 +/* 04D7A8 8004CBA8 10200002 */ beqz $at, .L8004CBB4 +/* 04D7AC 8004CBAC 3401FFFF */ li $at, 65535 +/* 04D7B0 8004CBB0 00611821 */ addu $v1, $v1, $at +.L8004CBB4: +/* 04D7B4 8004CBB4 000358C3 */ sra $t3, $v1, 3 +/* 04D7B8 8004CBB8 004B5021 */ addu $t2, $v0, $t3 +/* 04D7BC 8004CBBC A4AA0004 */ sh $t2, 4($a1) +.L8004CBC0: +/* 04D7C0 8004CBC0 8D050000 */ lw $a1, ($t0) +/* 04D7C4 8004CBC4 00000000 */ nop +/* 04D7C8 8004CBC8 C4AC000C */ lwc1 $f12, 0xc($a1) +/* 04D7CC 8004CBCC C4AE0010 */ lwc1 $f14, 0x10($a1) +/* 04D7D0 8004CBD0 8CA60014 */ lw $a2, 0x14($a1) +/* 04D7D4 8004CBD4 0C00A7C6 */ jal func_80029F18 +/* 04D7D8 8004CBD8 AFA70058 */ sw $a3, 0x58($sp) +/* 04D7DC 8004CBDC 8FA70058 */ lw $a3, 0x58($sp) +/* 04D7E0 8004CBE0 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 +/* 04D7E4 8004CBE4 2401FFFF */ li $at, -1 +/* 04D7E8 8004CBE8 10410004 */ beq $v0, $at, .L8004CBFC +/* 04D7EC 8004CBEC 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 +/* 04D7F0 8004CBF0 8D0D0000 */ lw $t5, ($t0) +/* 04D7F4 8004CBF4 00000000 */ nop +/* 04D7F8 8004CBF8 A5A20034 */ sh $v0, 0x34($t5) +.L8004CBFC: +/* 04D7FC 8004CBFC 8D0E0000 */ lw $t6, ($t0) +/* 04D800 8004CC00 00000000 */ nop +/* 04D804 8004CC04 85CF0000 */ lh $t7, ($t6) +/* 04D808 8004CC08 00000000 */ nop +/* 04D80C 8004CC0C A4EF0196 */ sh $t7, 0x196($a3) +/* 04D810 8004CC10 8FBF0014 */ lw $ra, 0x14($sp) +/* 04D814 8004CC14 27BD0050 */ addiu $sp, $sp, 0x50 +/* 04D818 8004CC18 03E00008 */ jr $ra +/* 04D81C 8004CC1C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_8004CC20.s b/asm/non_matchings/unknown_043920/func_8004CC20.s new file mode 100644 index 00000000..a480de1f --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8004CC20.s @@ -0,0 +1,640 @@ +glabel func_8004CC20 +/* 04D820 8004CC20 27BDFF28 */ addiu $sp, $sp, -0xd8 +/* 04D824 8004CC24 AFBF002C */ sw $ra, 0x2c($sp) +/* 04D828 8004CC28 AFB10028 */ sw $s1, 0x28($sp) +/* 04D82C 8004CC2C AFB00024 */ sw $s0, 0x24($sp) +/* 04D830 8004CC30 AFA400D8 */ sw $a0, 0xd8($sp) +/* 04D834 8004CC34 AFA500DC */ sw $a1, 0xdc($sp) +/* 04D838 8004CC38 A3A0003F */ sb $zero, 0x3f($sp) +/* 04D83C 8004CC3C 8CE5017C */ lw $a1, 0x17c($a3) +/* 04D840 8004CC40 00E08025 */ move $s0, $a3 +/* 04D844 8004CC44 00C08825 */ move $s1, $a2 +/* 04D848 8004CC48 A4E0018E */ sh $zero, 0x18e($a3) +/* 04D84C 8004CC4C 10A00004 */ beqz $a1, .L8004CC60 +/* 04D850 8004CC50 A0E00189 */ sb $zero, 0x189($a3) +/* 04D854 8004CC54 0C0025BE */ jal func_800096F8 +/* 04D858 8004CC58 00A02025 */ move $a0, $a1 +/* 04D85C 8004CC5C AE00017C */ sw $zero, 0x17c($s0) +.L8004CC60: +/* 04D860 8004CC60 820201D3 */ lb $v0, 0x1d3($s0) +/* 04D864 8004CC64 00000000 */ nop +/* 04D868 8004CC68 14400007 */ bnez $v0, .L8004CC88 +/* 04D86C 8004CC6C 240E0008 */ li $t6, 8 +/* 04D870 8004CC70 A20E01D3 */ sb $t6, 0x1d3($s0) +/* 04D874 8004CC74 02202025 */ move $a0, $s1 +/* 04D878 8004CC78 0C015C12 */ jal func_80057048 +/* 04D87C 8004CC7C 24050107 */ li $a1, 263 +/* 04D880 8004CC80 820201D3 */ lb $v0, 0x1d3($s0) +/* 04D884 8004CC84 00000000 */ nop +.L8004CC88: +/* 04D888 8004CC88 28410004 */ slti $at, $v0, 4 +/* 04D88C 8004CC8C 10200003 */ beqz $at, .L8004CC9C +/* 04D890 8004CC90 24040002 */ li $a0, 2 +/* 04D894 8004CC94 240F0004 */ li $t7, 4 +/* 04D898 8004CC98 A20F01D3 */ sb $t7, 0x1d3($s0) +.L8004CC9C: +/* 04D89C 8004CC9C 0C00AB32 */ jal func_8002ACC8 +/* 04D8A0 8004CCA0 A2000203 */ sb $zero, 0x203($s0) +/* 04D8A4 8004CCA4 3C018012 */ lui $at, %hi(D_8011D550) # $at, 0x8012 +/* 04D8A8 8004CCA8 A420D550 */ sh $zero, %lo(D_8011D550)($at) +/* 04D8AC 8004CCAC 3C018012 */ lui $at, %hi(D_8011D554) # $at, 0x8012 +/* 04D8B0 8004CCB0 AC20D554 */ sw $zero, %lo(D_8011D554)($at) +/* 04D8B4 8004CCB4 3C018012 */ lui $at, %hi(D_8011D558) # $at, 0x8012 +/* 04D8B8 8004CCB8 AC20D558 */ sw $zero, %lo(D_8011D558)($at) +/* 04D8BC 8004CCBC C624000C */ lwc1 $f4, 0xc($s1) +/* 04D8C0 8004CCC0 3C188012 */ lui $t8, %hi(D_8011D534) # $t8, 0x8012 +/* 04D8C4 8004CCC4 E7A400B8 */ swc1 $f4, 0xb8($sp) +/* 04D8C8 8004CCC8 C6260010 */ lwc1 $f6, 0x10($s1) +/* 04D8CC 8004CCCC 8F18D534 */ lw $t8, %lo(D_8011D534)($t8) +/* 04D8D0 8004CCD0 E7A600B4 */ swc1 $f6, 0xb4($sp) +/* 04D8D4 8004CCD4 C6280014 */ lwc1 $f8, 0x14($s1) +/* 04D8D8 8004CCD8 8FA800D8 */ lw $t0, 0xd8($sp) +/* 04D8DC 8004CCDC E7A800B0 */ swc1 $f8, 0xb0($sp) +/* 04D8E0 8004CCE0 820401E1 */ lb $a0, 0x1e1($s0) +/* 04D8E4 8004CCE4 3C0C8012 */ lui $t4, %hi(D_8011D538) # $t4, 0x8012 +/* 04D8E8 8004CCE8 03041823 */ subu $v1, $t8, $a0 +/* 04D8EC 8004CCEC 00680019 */ multu $v1, $t0 +/* 04D8F0 8004CCF0 02002825 */ move $a1, $s0 +/* 04D8F4 8004CCF4 00001012 */ mflo $v0 +/* 04D8F8 8004CCF8 0002C903 */ sra $t9, $v0, 4 +/* 04D8FC 8004CCFC 10600009 */ beqz $v1, .L8004CD24 +/* 04D900 8004CD00 03203025 */ move $a2, $t9 +/* 04D904 8004CD04 17200008 */ bnez $t9, .L8004CD28 +/* 04D908 8004CD08 00865821 */ addu $t3, $a0, $a2 +/* 04D90C 8004CD0C 18600002 */ blez $v1, .L8004CD18 +/* 04D910 8004CD10 00000000 */ nop +/* 04D914 8004CD14 24060001 */ li $a2, 1 +.L8004CD18: +/* 04D918 8004CD18 04610003 */ bgez $v1, .L8004CD28 +/* 04D91C 8004CD1C 00865821 */ addu $t3, $a0, $a2 +/* 04D920 8004CD20 2406FFFF */ li $a2, -1 +.L8004CD24: +/* 04D924 8004CD24 00865821 */ addu $t3, $a0, $a2 +.L8004CD28: +/* 04D928 8004CD28 A20B01E1 */ sb $t3, 0x1e1($s0) +/* 04D92C 8004CD2C 8D8CD538 */ lw $t4, %lo(D_8011D538)($t4) +/* 04D930 8004CD30 820701E8 */ lb $a3, 0x1e8($s0) +/* 04D934 8004CD34 02202025 */ move $a0, $s1 +/* 04D938 8004CD38 01871823 */ subu $v1, $t4, $a3 +/* 04D93C 8004CD3C 00680019 */ multu $v1, $t0 +/* 04D940 8004CD40 00001012 */ mflo $v0 +/* 04D944 8004CD44 00026903 */ sra $t5, $v0, 4 +/* 04D948 8004CD48 10600009 */ beqz $v1, .L8004CD70 +/* 04D94C 8004CD4C 01A03025 */ move $a2, $t5 +/* 04D950 8004CD50 15A00008 */ bnez $t5, .L8004CD74 +/* 04D954 8004CD54 00E67021 */ addu $t6, $a3, $a2 +/* 04D958 8004CD58 18600002 */ blez $v1, .L8004CD64 +/* 04D95C 8004CD5C 00000000 */ nop +/* 04D960 8004CD60 24060001 */ li $a2, 1 +.L8004CD64: +/* 04D964 8004CD64 04610003 */ bgez $v1, .L8004CD74 +/* 04D968 8004CD68 00E67021 */ addu $t6, $a3, $a2 +/* 04D96C 8004CD6C 2406FFFF */ li $a2, -1 +.L8004CD70: +/* 04D970 8004CD70 00E67021 */ addu $t6, $a3, $a2 +.L8004CD74: +/* 04D974 8004CD74 A20E01E8 */ sb $t6, 0x1e8($s0) +/* 04D978 8004CD78 A6000160 */ sh $zero, 0x160($s0) +/* 04D97C 8004CD7C A6000162 */ sh $zero, 0x162($s0) +/* 04D980 8004CD80 0C015D7B */ jal func_800575EC +/* 04D984 8004CD84 A6000164 */ sh $zero, 0x164($s0) +/* 04D988 8004CD88 862F0000 */ lh $t7, ($s1) +/* 04D98C 8004CD8C 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 +/* 04D990 8004CD90 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 +/* 04D994 8004CD94 A4AF0000 */ sh $t7, ($a1) +/* 04D998 8004CD98 86380002 */ lh $t8, 2($s1) +/* 04D99C 8004CD9C 44800000 */ mtc1 $zero, $f0 +/* 04D9A0 8004CDA0 A4B80002 */ sh $t8, 2($a1) +/* 04D9A4 8004CDA4 86390004 */ lh $t9, 4($s1) +/* 04D9A8 8004CDA8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 04D9AC 8004CDAC 44815000 */ mtc1 $at, $f10 +/* 04D9B0 8004CDB0 27A40048 */ addiu $a0, $sp, 0x48 +/* 04D9B4 8004CDB4 E4A0000C */ swc1 $f0, 0xc($a1) +/* 04D9B8 8004CDB8 E4A00010 */ swc1 $f0, 0x10($a1) +/* 04D9BC 8004CDBC E4A00014 */ swc1 $f0, 0x14($a1) +/* 04D9C0 8004CDC0 A4B90004 */ sh $t9, 4($a1) +/* 04D9C4 8004CDC4 0C01BF0C */ jal func_8006FC30 +/* 04D9C8 8004CDC8 E4AA0008 */ swc1 $f10, 8($a1) +/* 04D9CC 8004CDCC 44800000 */ mtc1 $zero, $f0 +/* 04D9D0 8004CDD0 260B0044 */ addiu $t3, $s0, 0x44 +/* 04D9D4 8004CDD4 260C0048 */ addiu $t4, $s0, 0x48 +/* 04D9D8 8004CDD8 260D004C */ addiu $t5, $s0, 0x4c +/* 04D9DC 8004CDDC 44050000 */ mfc1 $a1, $f0 +/* 04D9E0 8004CDE0 44070000 */ mfc1 $a3, $f0 +/* 04D9E4 8004CDE4 AFAD0018 */ sw $t5, 0x18($sp) +/* 04D9E8 8004CDE8 AFAC0014 */ sw $t4, 0x14($sp) +/* 04D9EC 8004CDEC AFAB0010 */ sw $t3, 0x10($sp) +/* 04D9F0 8004CDF0 27A40048 */ addiu $a0, $sp, 0x48 +/* 04D9F4 8004CDF4 0C01BD93 */ jal func_8006F64C +/* 04D9F8 8004CDF8 3C063F80 */ lui $a2, 0x3f80 +/* 04D9FC 8004CDFC 340E8000 */ li $t6, 32768 +/* 04DA00 8004CE00 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 +/* 04DA04 8004CE04 AC2ED528 */ sw $t6, %lo(D_8011D528)($at) +/* 04DA08 8004CE08 02202025 */ move $a0, $s1 +/* 04DA0C 8004CE0C 0C014D71 */ jal func_800535C4 +/* 04DA10 8004CE10 02002825 */ move $a1, $s0 +/* 04DA14 8004CE14 0C014D99 */ jal func_80053664 +/* 04DA18 8004CE18 02002025 */ move $a0, $s0 +/* 04DA1C 8004CE1C 8FA600DC */ lw $a2, 0xdc($sp) +/* 04DA20 8004CE20 02202025 */ move $a0, $s1 +/* 04DA24 8004CE24 0C014DD4 */ jal func_80053750 +/* 04DA28 8004CE28 02002825 */ move $a1, $s0 +/* 04DA2C 8004CE2C A220003B */ sb $zero, 0x3b($s1) +/* 04DA30 8004CE30 820201E1 */ lb $v0, 0x1e1($s0) +/* 04DA34 8004CE34 24180028 */ li $t8, 40 +/* 04DA38 8004CE38 00027843 */ sra $t7, $v0, 1 +/* 04DA3C 8004CE3C 030F1023 */ subu $v0, $t8, $t7 +/* 04DA40 8004CE40 04410003 */ bgez $v0, .L8004CE50 +/* 04DA44 8004CE44 2841004A */ slti $at, $v0, 0x4a +/* 04DA48 8004CE48 00001025 */ move $v0, $zero +/* 04DA4C 8004CE4C 2841004A */ slti $at, $v0, 0x4a +.L8004CE50: +/* 04DA50 8004CE50 14200002 */ bnez $at, .L8004CE5C +/* 04DA54 8004CE54 00000000 */ nop +/* 04DA58 8004CE58 24020049 */ li $v0, 73 +.L8004CE5C: +/* 04DA5C 8004CE5C A6220018 */ sh $v0, 0x18($s1) +/* 04DA60 8004CE60 86190000 */ lh $t9, ($s0) +/* 04DA64 8004CE64 2408FFFF */ li $t0, -1 +/* 04DA68 8004CE68 11190004 */ beq $t0, $t9, .L8004CE7C +/* 04DA6C 8004CE6C 2407000A */ li $a3, 10 +/* 04DA70 8004CE70 820701E1 */ lb $a3, 0x1e1($s0) +/* 04DA74 8004CE74 10000055 */ b .L8004CFCC +/* 04DA78 8004CE78 44874000 */ mtc1 $a3, $f8 +.L8004CE7C: +/* 04DA7C 8004CE7C 8E050158 */ lw $a1, 0x158($s0) +/* 04DA80 8004CE80 00000000 */ nop +/* 04DA84 8004CE84 10A00050 */ beqz $a1, .L8004CFC8 +/* 04DA88 8004CE88 00000000 */ nop +/* 04DA8C 8004CE8C C4B0000C */ lwc1 $f16, 0xc($a1) +/* 04DA90 8004CE90 C632000C */ lwc1 $f18, 0xc($s1) +/* 04DA94 8004CE94 C4A40010 */ lwc1 $f4, 0x10($a1) +/* 04DA98 8004CE98 46128001 */ sub.s $f0, $f16, $f18 +/* 04DA9C 8004CE9C C6260010 */ lwc1 $f6, 0x10($s1) +/* 04DAA0 8004CEA0 46000402 */ mul.s $f16, $f0, $f0 +/* 04DAA4 8004CEA4 46062081 */ sub.s $f2, $f4, $f6 +/* 04DAA8 8004CEA8 C4A80014 */ lwc1 $f8, 0x14($a1) +/* 04DAAC 8004CEAC C62A0014 */ lwc1 $f10, 0x14($s1) +/* 04DAB0 8004CEB0 46021482 */ mul.s $f18, $f2, $f2 +/* 04DAB4 8004CEB4 460A4381 */ sub.s $f14, $f8, $f10 +/* 04DAB8 8004CEB8 AFA70090 */ sw $a3, 0x90($sp) +/* 04DABC 8004CEBC AFA50044 */ sw $a1, 0x44($sp) +/* 04DAC0 8004CEC0 460E7182 */ mul.s $f6, $f14, $f14 +/* 04DAC4 8004CEC4 46128100 */ add.s $f4, $f16, $f18 +/* 04DAC8 8004CEC8 0C0326B4 */ jal sqrtf +/* 04DACC 8004CECC 46062300 */ add.s $f12, $f4, $f6 +/* 04DAD0 8004CED0 3C014069 */ li $at, 0x40690000 # 3.640625 +/* 04DAD4 8004CED4 44815800 */ mtc1 $at, $f11 +/* 04DAD8 8004CED8 44805000 */ mtc1 $zero, $f10 +/* 04DADC 8004CEDC 46000221 */ cvt.d.s $f8, $f0 +/* 04DAE0 8004CEE0 462A403C */ c.lt.d $f8, $f10 +/* 04DAE4 8004CEE4 8FA50044 */ lw $a1, 0x44($sp) +/* 04DAE8 8004CEE8 8FA70090 */ lw $a3, 0x90($sp) +/* 04DAEC 8004CEEC 4500001A */ bc1f .L8004CF58 +/* 04DAF0 8004CEF0 2408FFFF */ li $t0, -1 +/* 04DAF4 8004CEF4 8CA60064 */ lw $a2, 0x64($a1) +/* 04DAF8 8004CEF8 00001025 */ move $v0, $zero +/* 04DAFC 8004CEFC 00025880 */ sll $t3, $v0, 2 +.L8004CF00: +/* 04DB00 8004CF00 00CB1821 */ addu $v1, $a2, $t3 +/* 04DB04 8004CF04 8C640000 */ lw $a0, ($v1) +/* 04DB08 8004CF08 00000000 */ nop +/* 04DB0C 8004CF0C 10800009 */ beqz $a0, .L8004CF34 +/* 04DB10 8004CF10 00000000 */ nop +/* 04DB14 8004CF14 8E0C015C */ lw $t4, 0x15c($s0) +/* 04DB18 8004CF18 00000000 */ nop +/* 04DB1C 8004CF1C 11840006 */ beq $t4, $a0, .L8004CF38 +/* 04DB20 8004CF20 24420001 */ addiu $v0, $v0, 1 +/* 04DB24 8004CF24 AE05015C */ sw $a1, 0x15c($s0) +/* 04DB28 8004CF28 8C6D0000 */ lw $t5, ($v1) +/* 04DB2C 8004CF2C 24020004 */ li $v0, 4 +/* 04DB30 8004CF30 AE0D0158 */ sw $t5, 0x158($s0) +.L8004CF34: +/* 04DB34 8004CF34 24420001 */ addiu $v0, $v0, 1 +.L8004CF38: +/* 04DB38 8004CF38 28410004 */ slti $at, $v0, 4 +/* 04DB3C 8004CF3C 1420FFF0 */ bnez $at, .L8004CF00 +/* 04DB40 8004CF40 00025880 */ sll $t3, $v0, 2 +/* 04DB44 8004CF44 24010005 */ li $at, 5 +/* 04DB48 8004CF48 1041001F */ beq $v0, $at, .L8004CFC8 +/* 04DB4C 8004CF4C 00000000 */ nop +/* 04DB50 8004CF50 1000001D */ b .L8004CFC8 +/* 04DB54 8004CF54 AE000158 */ sw $zero, 0x158($s0) +.L8004CF58: +/* 04DB58 8004CF58 C6020050 */ lwc1 $f2, 0x50($s0) +/* 04DB5C 8004CF5C C630000C */ lwc1 $f16, 0xc($s1) +/* 04DB60 8004CF60 C60E0058 */ lwc1 $f14, 0x58($s0) +/* 04DB64 8004CF64 46101482 */ mul.s $f18, $f2, $f16 +/* 04DB68 8004CF68 C6240014 */ lwc1 $f4, 0x14($s1) +/* 04DB6C 8004CF6C C4A8000C */ lwc1 $f8, 0xc($a1) +/* 04DB70 8004CF70 C4B00014 */ lwc1 $f16, 0x14($a1) +/* 04DB74 8004CF74 46047182 */ mul.s $f6, $f14, $f4 +/* 04DB78 8004CF78 00000000 */ nop +/* 04DB7C 8004CF7C 46024282 */ mul.s $f10, $f8, $f2 +/* 04DB80 8004CF80 46069300 */ add.s $f12, $f18, $f6 +/* 04DB84 8004CF84 460E8102 */ mul.s $f4, $f16, $f14 +/* 04DB88 8004CF88 46006307 */ neg.s $f12, $f12 +/* 04DB8C 8004CF8C 46045480 */ add.s $f18, $f10, $f4 +/* 04DB90 8004CF90 460C9000 */ add.s $f0, $f18, $f12 +/* 04DB94 8004CF94 444EF800 */ cfc1 $t6, $31 +/* 04DB98 8004CF98 00000000 */ nop +/* 04DB9C 8004CF9C 35C10003 */ ori $at, $t6, 3 +/* 04DBA0 8004CFA0 38210002 */ xori $at, $at, 2 +/* 04DBA4 8004CFA4 44C1F800 */ ctc1 $at, $31 +/* 04DBA8 8004CFA8 24010005 */ li $at, 5 +/* 04DBAC 8004CFAC 460001A4 */ cvt.w.s $f6, $f0 +/* 04DBB0 8004CFB0 44073000 */ mfc1 $a3, $f6 +/* 04DBB4 8004CFB4 44CEF800 */ ctc1 $t6, $31 +/* 04DBB8 8004CFB8 00E1001A */ div $zero, $a3, $at +/* 04DBBC 8004CFBC 00003812 */ mflo $a3 +/* 04DBC0 8004CFC0 00000000 */ nop +/* 04DBC4 8004CFC4 00000000 */ nop +.L8004CFC8: +/* 04DBC8 8004CFC8 44874000 */ mtc1 $a3, $f8 +.L8004CFCC: +/* 04DBCC 8004CFCC C60A002C */ lwc1 $f10, 0x2c($s0) +/* 04DBD0 8004CFD0 46804420 */ cvt.s.w $f16, $f8 +/* 04DBD4 8004CFD4 3C0143B4 */ li $at, 0x43B40000 # 360.000000 +/* 04DBD8 8004CFD8 44819000 */ mtc1 $at, $f18 +/* 04DBDC 8004CFDC 460A8102 */ mul.s $f4, $f16, $f10 +/* 04DBE0 8004CFE0 C6080050 */ lwc1 $f8, 0x50($s0) +/* 04DBE4 8004CFE4 A2000187 */ sb $zero, 0x187($s0) +/* 04DBE8 8004CFE8 A20001DB */ sb $zero, 0x1db($s0) +/* 04DBEC 8004CFEC 46122003 */ div.s $f0, $f4, $f18 +/* 04DBF0 8004CFF0 C626001C */ lwc1 $f6, 0x1c($s1) +/* 04DBF4 8004CFF4 C6240020 */ lwc1 $f4, 0x20($s1) +/* 04DBF8 8004CFF8 3C098012 */ lui $t1, %hi(D_8011D55C) # $t1, 0x8012 +/* 04DBFC 8004CFFC 2529D55C */ addiu $t1, %lo(D_8011D55C) # addiu $t1, $t1, -0x2aa4 +/* 04DC00 8004D000 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 04DC04 8004D004 44811000 */ mtc1 $at, $f2 +/* 04DC08 8004D008 46004402 */ mul.s $f16, $f8, $f0 +/* 04DC0C 8004D00C 46103281 */ sub.s $f10, $f6, $f16 +/* 04DC10 8004D010 C6300024 */ lwc1 $f16, 0x24($s1) +/* 04DC14 8004D014 E62A001C */ swc1 $f10, 0x1c($s1) +/* 04DC18 8004D018 C6120054 */ lwc1 $f18, 0x54($s0) +/* 04DC1C 8004D01C 00000000 */ nop +/* 04DC20 8004D020 46009202 */ mul.s $f8, $f18, $f0 +/* 04DC24 8004D024 46082181 */ sub.s $f6, $f4, $f8 +/* 04DC28 8004D028 E6260020 */ swc1 $f6, 0x20($s1) +/* 04DC2C 8004D02C C60A0058 */ lwc1 $f10, 0x58($s0) +/* 04DC30 8004D030 00000000 */ nop +/* 04DC34 8004D034 46005482 */ mul.s $f18, $f10, $f0 +/* 04DC38 8004D038 46128101 */ sub.s $f4, $f16, $f18 +/* 04DC3C 8004D03C E6240024 */ swc1 $f4, 0x24($s1) +/* 04DC40 8004D040 8D380000 */ lw $t8, ($t1) +/* 04DC44 8004D044 8FAA00D8 */ lw $t2, 0xd8($sp) +/* 04DC48 8004D048 15180003 */ bne $t0, $t8, .L8004D058 +/* 04DC4C 8004D04C 3C01800E */ lui $at, %hi(D_800E6580) # $at, 0x800e +/* 04DC50 8004D050 C4226580 */ lwc1 $f2, %lo(D_800E6580)($at) +/* 04DC54 8004D054 00000000 */ nop +.L8004D058: +/* 04DC58 8004D058 8619019A */ lh $t9, 0x19a($s0) +/* 04DC5C 8004D05C 00000000 */ nop +/* 04DC60 8004D060 032A5821 */ addu $t3, $t9, $t2 +/* 04DC64 8004D064 A60B019A */ sh $t3, 0x19a($s0) +/* 04DC68 8004D068 860C019A */ lh $t4, 0x19a($s0) +/* 04DC6C 8004D06C 00000000 */ nop +/* 04DC70 8004D070 29810259 */ slti $at, $t4, 0x259 +/* 04DC74 8004D074 1420000A */ bnez $at, .L8004D0A0 +/* 04DC78 8004D078 00000000 */ nop +/* 04DC7C 8004D07C 820D01D7 */ lb $t5, 0x1d7($s0) +/* 04DC80 8004D080 240F0001 */ li $t7, 1 +/* 04DC84 8004D084 A20D01D6 */ sb $t5, 0x1d6($s0) +/* 04DC88 8004D088 A6200002 */ sh $zero, 2($s1) +/* 04DC8C 8004D08C 860E0000 */ lh $t6, ($s0) +/* 04DC90 8004D090 A20001E0 */ sb $zero, 0x1e0($s0) +/* 04DC94 8004D094 05C00002 */ bltz $t6, .L8004D0A0 +/* 04DC98 8004D098 00000000 */ nop +/* 04DC9C 8004D09C A3AF003F */ sb $t7, 0x3f($sp) +.L8004D0A0: +/* 04DCA0 8004D0A0 821801E2 */ lb $t8, 0x1e2($s0) +/* 04DCA4 8004D0A4 00000000 */ nop +/* 04DCA8 8004D0A8 17000011 */ bnez $t8, .L8004D0F0 +/* 04DCAC 8004D0AC 00000000 */ nop +/* 04DCB0 8004D0B0 821901E0 */ lb $t9, 0x1e0($s0) +/* 04DCB4 8004D0B4 3C01800E */ lui $at, %hi(D_800E6584) # $at, 0x800e +/* 04DCB8 8004D0B8 C4226584 */ lwc1 $f2, %lo(D_800E6584)($at) +/* 04DCBC 8004D0BC 032A5821 */ addu $t3, $t9, $t2 +/* 04DCC0 8004D0C0 A20B01E0 */ sb $t3, 0x1e0($s0) +/* 04DCC4 8004D0C4 820C01E0 */ lb $t4, 0x1e0($s0) +/* 04DCC8 8004D0C8 00000000 */ nop +/* 04DCCC 8004D0CC 2981003D */ slti $at, $t4, 0x3d +/* 04DCD0 8004D0D0 14200008 */ bnez $at, .L8004D0F4 +/* 04DCD4 8004D0D4 00000000 */ nop +/* 04DCD8 8004D0D8 820D01D7 */ lb $t5, 0x1d7($s0) +/* 04DCDC 8004D0DC 00000000 */ nop +/* 04DCE0 8004D0E0 A20D01D6 */ sb $t5, 0x1d6($s0) +/* 04DCE4 8004D0E4 A6200002 */ sh $zero, 2($s1) +/* 04DCE8 8004D0E8 10000002 */ b .L8004D0F4 +/* 04DCEC 8004D0EC A20001E0 */ sb $zero, 0x1e0($s0) +.L8004D0F0: +/* 04DCF0 8004D0F0 A20001E0 */ sb $zero, 0x1e0($s0) +.L8004D0F4: +/* 04DCF4 8004D0F4 860301A0 */ lh $v1, 0x1a0($s0) +/* 04DCF8 8004D0F8 860E0198 */ lh $t6, 0x198($s0) +/* 04DCFC 8004D0FC 306FFFFF */ andi $t7, $v1, 0xffff +/* 04DD00 8004D100 34018001 */ li $at, 32769 +/* 04DD04 8004D104 01CF1023 */ subu $v0, $t6, $t7 +/* 04DD08 8004D108 0041082A */ slt $at, $v0, $at +/* 04DD0C 8004D10C 14200003 */ bnez $at, .L8004D11C +/* 04DD10 8004D110 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 04DD14 8004D114 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 04DD18 8004D118 00411021 */ addu $v0, $v0, $at +.L8004D11C: +/* 04DD1C 8004D11C 28418000 */ slti $at, $v0, -0x8000 +/* 04DD20 8004D120 10200002 */ beqz $at, .L8004D12C +/* 04DD24 8004D124 3401FFFF */ li $at, 65535 +/* 04DD28 8004D128 00411021 */ addu $v0, $v0, $at +.L8004D12C: +/* 04DD2C 8004D12C 28411001 */ slti $at, $v0, 0x1001 +/* 04DD30 8004D130 10200004 */ beqz $at, .L8004D144 +/* 04DD34 8004D134 0002C0C3 */ sra $t8, $v0, 3 +/* 04DD38 8004D138 2841F000 */ slti $at, $v0, -0x1000 +/* 04DD3C 8004D13C 10200003 */ beqz $at, .L8004D14C +/* 04DD40 8004D140 00000000 */ nop +.L8004D144: +/* 04DD44 8004D144 44801000 */ mtc1 $zero, $f2 +/* 04DD48 8004D148 00000000 */ nop +.L8004D14C: +/* 04DD4C 8004D14C C6060038 */ lwc1 $f6, 0x38($s0) +/* 04DD50 8004D150 0078C821 */ addu $t9, $v1, $t8 +/* 04DD54 8004D154 46023282 */ mul.s $f10, $f6, $f2 +/* 04DD58 8004D158 A61901A0 */ sh $t9, 0x1a0($s0) +/* 04DD5C 8004D15C A60001A4 */ sh $zero, 0x1a4($s0) +/* 04DD60 8004D160 C628001C */ lwc1 $f8, 0x1c($s1) +/* 04DD64 8004D164 C6320020 */ lwc1 $f18, 0x20($s1) +/* 04DD68 8004D168 460A4401 */ sub.s $f16, $f8, $f10 +/* 04DD6C 8004D16C C62A0024 */ lwc1 $f10, 0x24($s1) +/* 04DD70 8004D170 E630001C */ swc1 $f16, 0x1c($s1) +/* 04DD74 8004D174 C604003C */ lwc1 $f4, 0x3c($s0) +/* 04DD78 8004D178 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 +/* 04DD7C 8004D17C 46022182 */ mul.s $f6, $f4, $f2 +/* 04DD80 8004D180 44816800 */ mtc1 $at, $f13 +/* 04DD84 8004D184 44806000 */ mtc1 $zero, $f12 +/* 04DD88 8004D188 44807000 */ mtc1 $zero, $f14 +/* 04DD8C 8004D18C 46069201 */ sub.s $f8, $f18, $f6 +/* 04DD90 8004D190 C626001C */ lwc1 $f6, 0x1c($s1) +/* 04DD94 8004D194 E6280020 */ swc1 $f8, 0x20($s1) +/* 04DD98 8004D198 C6100040 */ lwc1 $f16, 0x40($s0) +/* 04DD9C 8004D19C 46003221 */ cvt.d.s $f8, $f6 +/* 04DDA0 8004D1A0 46028102 */ mul.s $f4, $f16, $f2 +/* 04DDA4 8004D1A4 3C01800E */ lui $at, %hi(D_800E6588) # $at, 0x800e +/* 04DDA8 8004D1A8 46045481 */ sub.s $f18, $f10, $f4 +/* 04DDAC 8004D1AC E6320024 */ swc1 $f18, 0x24($s1) +/* 04DDB0 8004D1B0 C6100044 */ lwc1 $f16, 0x44($s0) +/* 04DDB4 8004D1B4 00000000 */ nop +/* 04DDB8 8004D1B8 460082A1 */ cvt.d.s $f10, $f16 +/* 04DDBC 8004D1BC 462C5102 */ mul.d $f4, $f10, $f12 +/* 04DDC0 8004D1C0 C6300020 */ lwc1 $f16, 0x20($s1) +/* 04DDC4 8004D1C4 00000000 */ nop +/* 04DDC8 8004D1C8 460082A1 */ cvt.d.s $f10, $f16 +/* 04DDCC 8004D1CC 46244481 */ sub.d $f18, $f8, $f4 +/* 04DDD0 8004D1D0 462091A0 */ cvt.s.d $f6, $f18 +/* 04DDD4 8004D1D4 E626001C */ swc1 $f6, 0x1c($s1) +/* 04DDD8 8004D1D8 C6080048 */ lwc1 $f8, 0x48($s0) +/* 04DDDC 8004D1DC 00000000 */ nop +/* 04DDE0 8004D1E0 46004121 */ cvt.d.s $f4, $f8 +/* 04DDE4 8004D1E4 462C2482 */ mul.d $f18, $f4, $f12 +/* 04DDE8 8004D1E8 C6280024 */ lwc1 $f8, 0x24($s1) +/* 04DDEC 8004D1EC 00000000 */ nop +/* 04DDF0 8004D1F0 46004121 */ cvt.d.s $f4, $f8 +/* 04DDF4 8004D1F4 46325181 */ sub.d $f6, $f10, $f18 +/* 04DDF8 8004D1F8 46203420 */ cvt.s.d $f16, $f6 +/* 04DDFC 8004D1FC E6300020 */ swc1 $f16, 0x20($s1) +/* 04DE00 8004D200 C60A004C */ lwc1 $f10, 0x4c($s0) +/* 04DE04 8004D204 00000000 */ nop +/* 04DE08 8004D208 460054A1 */ cvt.d.s $f18, $f10 +/* 04DE0C 8004D20C 462C9182 */ mul.d $f6, $f18, $f12 +/* 04DE10 8004D210 46262401 */ sub.d $f16, $f4, $f6 +/* 04DE14 8004D214 46208220 */ cvt.s.d $f8, $f16 +/* 04DE18 8004D218 E6280024 */ swc1 $f8, 0x24($s1) +/* 04DE1C 8004D21C C602002C */ lwc1 $f2, 0x2c($s0) +/* 04DE20 8004D220 C4326588 */ lwc1 $f18, %lo(D_800E6588)($at) +/* 04DE24 8004D224 46021282 */ mul.s $f10, $f2, $f2 +/* 04DE28 8004D228 460E103C */ c.lt.s $f2, $f14 +/* 04DE2C 8004D22C 46125002 */ mul.s $f0, $f10, $f18 +/* 04DE30 8004D230 45000002 */ bc1f .L8004D23C +/* 04DE34 8004D234 00000000 */ nop +/* 04DE38 8004D238 46000007 */ neg.s $f0, $f0 +.L8004D23C: +/* 04DE3C 8004D23C C6060038 */ lwc1 $f6, 0x38($s0) +/* 04DE40 8004D240 C624001C */ lwc1 $f4, 0x1c($s1) +/* 04DE44 8004D244 46003402 */ mul.s $f16, $f6, $f0 +/* 04DE48 8004D248 3C01800E */ lui $at, %hi(D_800E658C) # $at, 0x800e +/* 04DE4C 8004D24C C42C658C */ lwc1 $f12, %lo(D_800E658C)($at) +/* 04DE50 8004D250 C62A0020 */ lwc1 $f10, 0x20($s1) +/* 04DE54 8004D254 46102201 */ sub.s $f8, $f4, $f16 +/* 04DE58 8004D258 C6300024 */ lwc1 $f16, 0x24($s1) +/* 04DE5C 8004D25C E628001C */ swc1 $f8, 0x1c($s1) +/* 04DE60 8004D260 C612003C */ lwc1 $f18, 0x3c($s0) +/* 04DE64 8004D264 00000000 */ nop +/* 04DE68 8004D268 46009182 */ mul.s $f6, $f18, $f0 +/* 04DE6C 8004D26C 46065101 */ sub.s $f4, $f10, $f6 +/* 04DE70 8004D270 E6240020 */ swc1 $f4, 0x20($s1) +/* 04DE74 8004D274 C6080040 */ lwc1 $f8, 0x40($s0) +/* 04DE78 8004D278 00000000 */ nop +/* 04DE7C 8004D27C 46004482 */ mul.s $f18, $f8, $f0 +/* 04DE80 8004D280 46128281 */ sub.s $f10, $f16, $f18 +/* 04DE84 8004D284 E62A0024 */ swc1 $f10, 0x24($s1) +/* 04DE88 8004D288 C6020030 */ lwc1 $f2, 0x30($s0) +/* 04DE8C 8004D28C 00000000 */ nop +/* 04DE90 8004D290 46021182 */ mul.s $f6, $f2, $f2 +/* 04DE94 8004D294 460E103C */ c.lt.s $f2, $f14 +/* 04DE98 8004D298 460C3002 */ mul.s $f0, $f6, $f12 +/* 04DE9C 8004D29C 45000002 */ bc1f .L8004D2A8 +/* 04DEA0 8004D2A0 00000000 */ nop +/* 04DEA4 8004D2A4 46000007 */ neg.s $f0, $f0 +.L8004D2A8: +/* 04DEA8 8004D2A8 C6080050 */ lwc1 $f8, 0x50($s0) +/* 04DEAC 8004D2AC C624001C */ lwc1 $f4, 0x1c($s1) +/* 04DEB0 8004D2B0 46004402 */ mul.s $f16, $f8, $f0 +/* 04DEB4 8004D2B4 C62A0020 */ lwc1 $f10, 0x20($s1) +/* 04DEB8 8004D2B8 46102481 */ sub.s $f18, $f4, $f16 +/* 04DEBC 8004D2BC C6300024 */ lwc1 $f16, 0x24($s1) +/* 04DEC0 8004D2C0 E632001C */ swc1 $f18, 0x1c($s1) +/* 04DEC4 8004D2C4 C6060054 */ lwc1 $f6, 0x54($s0) +/* 04DEC8 8004D2C8 00000000 */ nop +/* 04DECC 8004D2CC 46003202 */ mul.s $f8, $f6, $f0 +/* 04DED0 8004D2D0 46085101 */ sub.s $f4, $f10, $f8 +/* 04DED4 8004D2D4 E6240020 */ swc1 $f4, 0x20($s1) +/* 04DED8 8004D2D8 C6120058 */ lwc1 $f18, 0x58($s0) +/* 04DEDC 8004D2DC 00000000 */ nop +/* 04DEE0 8004D2E0 46009182 */ mul.s $f6, $f18, $f0 +/* 04DEE4 8004D2E4 46068281 */ sub.s $f10, $f16, $f6 +/* 04DEE8 8004D2E8 E62A0024 */ swc1 $f10, 0x24($s1) +/* 04DEEC 8004D2EC C6020034 */ lwc1 $f2, 0x34($s0) +/* 04DEF0 8004D2F0 00000000 */ nop +/* 04DEF4 8004D2F4 46021202 */ mul.s $f8, $f2, $f2 +/* 04DEF8 8004D2F8 460E103C */ c.lt.s $f2, $f14 +/* 04DEFC 8004D2FC 460C4002 */ mul.s $f0, $f8, $f12 +/* 04DF00 8004D300 45000002 */ bc1f .L8004D30C +/* 04DF04 8004D304 00000000 */ nop +/* 04DF08 8004D308 46000007 */ neg.s $f0, $f0 +.L8004D30C: +/* 04DF0C 8004D30C C6120044 */ lwc1 $f18, 0x44($s0) +/* 04DF10 8004D310 C624001C */ lwc1 $f4, 0x1c($s1) +/* 04DF14 8004D314 46009402 */ mul.s $f16, $f18, $f0 +/* 04DF18 8004D318 C62A0020 */ lwc1 $f10, 0x20($s1) +/* 04DF1C 8004D31C 3C0B8012 */ lui $t3, %hi(D_8011D554) # $t3, 0x8012 +/* 04DF20 8004D320 02202025 */ move $a0, $s1 +/* 04DF24 8004D324 46102181 */ sub.s $f6, $f4, $f16 +/* 04DF28 8004D328 C6300024 */ lwc1 $f16, 0x24($s1) +/* 04DF2C 8004D32C E626001C */ swc1 $f6, 0x1c($s1) +/* 04DF30 8004D330 C6080048 */ lwc1 $f8, 0x48($s0) +/* 04DF34 8004D334 00000000 */ nop +/* 04DF38 8004D338 46004482 */ mul.s $f18, $f8, $f0 +/* 04DF3C 8004D33C 46125101 */ sub.s $f4, $f10, $f18 +/* 04DF40 8004D340 E6240020 */ swc1 $f4, 0x20($s1) +/* 04DF44 8004D344 C606004C */ lwc1 $f6, 0x4c($s0) +/* 04DF48 8004D348 00000000 */ nop +/* 04DF4C 8004D34C 46003202 */ mul.s $f8, $f6, $f0 +/* 04DF50 8004D350 46088281 */ sub.s $f10, $f16, $f8 +/* 04DF54 8004D354 E62A0024 */ swc1 $f10, 0x24($s1) +/* 04DF58 8004D358 AE00010C */ sw $zero, 0x10c($s0) +/* 04DF5C 8004D35C 8D6BD554 */ lw $t3, %lo(D_8011D554)($t3) +/* 04DF60 8004D360 860201A2 */ lh $v0, 0x1a2($s0) +/* 04DF64 8004D364 860F01A0 */ lh $t7, 0x1a0($s0) +/* 04DF68 8004D368 01626023 */ subu $t4, $t3, $v0 +/* 04DF6C 8004D36C 000C68C3 */ sra $t5, $t4, 3 +/* 04DF70 8004D370 004D7021 */ addu $t6, $v0, $t5 +/* 04DF74 8004D374 A60E01A2 */ sh $t6, 0x1a2($s0) +/* 04DF78 8004D378 861801A2 */ lh $t8, 0x1a2($s0) +/* 04DF7C 8004D37C 3C0B8012 */ lui $t3, %hi(D_8011D558) # $t3, 0x8012 +/* 04DF80 8004D380 01F8C821 */ addu $t9, $t7, $t8 +/* 04DF84 8004D384 A6390000 */ sh $t9, ($s1) +/* 04DF88 8004D388 860301A6 */ lh $v1, 0x1a6($s0) +/* 04DF8C 8004D38C 8D6BD558 */ lw $t3, %lo(D_8011D558)($t3) +/* 04DF90 8004D390 860F01A4 */ lh $t7, 0x1a4($s0) +/* 04DF94 8004D394 01636023 */ subu $t4, $t3, $v1 +/* 04DF98 8004D398 000C68C3 */ sra $t5, $t4, 3 +/* 04DF9C 8004D39C 006D7021 */ addu $t6, $v1, $t5 +/* 04DFA0 8004D3A0 A60E01A6 */ sh $t6, 0x1a6($s0) +/* 04DFA4 8004D3A4 861801A6 */ lh $t8, 0x1a6($s0) +/* 04DFA8 8004D3A8 C7A200DC */ lwc1 $f2, 0xdc($sp) +/* 04DFAC 8004D3AC C620001C */ lwc1 $f0, 0x1c($s1) +/* 04DFB0 8004D3B0 01F8C821 */ addu $t9, $t7, $t8 +/* 04DFB4 8004D3B4 C62C0024 */ lwc1 $f12, 0x24($s1) +/* 04DFB8 8004D3B8 A6390004 */ sh $t9, 4($s1) +/* 04DFBC 8004D3BC 46020482 */ mul.s $f18, $f0, $f2 +/* 04DFC0 8004D3C0 A20001D2 */ sb $zero, 0x1d2($s0) +/* 04DFC4 8004D3C4 C6240020 */ lwc1 $f4, 0x20($s1) +/* 04DFC8 8004D3C8 00000000 */ nop +/* 04DFCC 8004D3CC 46022182 */ mul.s $f6, $f4, $f2 +/* 04DFD0 8004D3D0 44059000 */ mfc1 $a1, $f18 +/* 04DFD4 8004D3D4 46026402 */ mul.s $f16, $f12, $f2 +/* 04DFD8 8004D3D8 44063000 */ mfc1 $a2, $f6 +/* 04DFDC 8004D3DC 44078000 */ mfc1 $a3, $f16 +/* 04DFE0 8004D3E0 0C00455C */ jal func_80011570 +/* 04DFE4 8004D3E4 00000000 */ nop +/* 04DFE8 8004D3E8 3C098012 */ lui $t1, %hi(D_8011D55C) # $t1, 0x8012 +/* 04DFEC 8004D3EC 2529D55C */ addiu $t1, %lo(D_8011D55C) # addiu $t1, $t1, -0x2aa4 +/* 04DFF0 8004D3F0 10400006 */ beqz $v0, .L8004D40C +/* 04DFF4 8004D3F4 2408FFFF */ li $t0, -1 +/* 04DFF8 8004D3F8 8D2B0000 */ lw $t3, ($t1) +/* 04DFFC 8004D3FC 240C0001 */ li $t4, 1 +/* 04E000 8004D400 110B0002 */ beq $t0, $t3, .L8004D40C +/* 04E004 8004D404 00000000 */ nop +/* 04E008 8004D408 A3AC003F */ sb $t4, 0x3f($sp) +.L8004D40C: +/* 04E00C 8004D40C 8D2D0000 */ lw $t5, ($t1) +/* 04E010 8004D410 8FA600D8 */ lw $a2, 0xd8($sp) +/* 04E014 8004D414 150D0007 */ bne $t0, $t5, .L8004D434 +/* 04E018 8004D418 02202025 */ move $a0, $s1 +/* 04E01C 8004D41C 8FA600D8 */ lw $a2, 0xd8($sp) +/* 04E020 8004D420 02202025 */ move $a0, $s1 +/* 04E024 8004D424 0C0156A1 */ jal func_80055A84 +/* 04E028 8004D428 02002825 */ move $a1, $s0 +/* 04E02C 8004D42C 10000004 */ b .L8004D440 +/* 04E030 8004D430 3C013F80 */ li $at, 0x3F800000 # 1.000000 +.L8004D434: +/* 04E034 8004D434 0C0153F4 */ jal func_80054FD0 +/* 04E038 8004D438 02002825 */ move $a1, $s0 +/* 04E03C 8004D43C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +.L8004D440: +/* 04E040 8004D440 44814000 */ mtc1 $at, $f8 +/* 04E044 8004D444 C7AA00DC */ lwc1 $f10, 0xdc($sp) +/* 04E048 8004D448 C632000C */ lwc1 $f18, 0xc($s1) +/* 04E04C 8004D44C 460A4083 */ div.s $f2, $f8, $f10 +/* 04E050 8004D450 C7A400B8 */ lwc1 $f4, 0xb8($sp) +/* 04E054 8004D454 C7A800B4 */ lwc1 $f8, 0xb4($sp) +/* 04E058 8004D458 46049181 */ sub.s $f6, $f18, $f4 +/* 04E05C 8004D45C C6300010 */ lwc1 $f16, 0x10($s1) +/* 04E060 8004D460 C6240014 */ lwc1 $f4, 0x14($s1) +/* 04E064 8004D464 46088281 */ sub.s $f10, $f16, $f8 +/* 04E068 8004D468 862E0000 */ lh $t6, ($s1) +/* 04E06C 8004D46C 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 +/* 04E070 8004D470 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 +/* 04E074 8004D474 000E7823 */ negu $t7, $t6 +/* 04E078 8004D478 44807000 */ mtc1 $zero, $f14 +/* 04E07C 8004D47C 46023002 */ mul.s $f0, $f6, $f2 +/* 04E080 8004D480 44814000 */ mtc1 $at, $f8 +/* 04E084 8004D484 27A40048 */ addiu $a0, $sp, 0x48 +/* 04E088 8004D488 46025482 */ mul.s $f18, $f10, $f2 +/* 04E08C 8004D48C E6320020 */ swc1 $f18, 0x20($s1) +/* 04E090 8004D490 C7A600B0 */ lwc1 $f6, 0xb0($sp) +/* 04E094 8004D494 E620001C */ swc1 $f0, 0x1c($s1) +/* 04E098 8004D498 46062401 */ sub.s $f16, $f4, $f6 +/* 04E09C 8004D49C 46028302 */ mul.s $f12, $f16, $f2 +/* 04E0A0 8004D4A0 E62C0024 */ swc1 $f12, 0x24($s1) +/* 04E0A4 8004D4A4 A4AF0000 */ sh $t7, ($a1) +/* 04E0A8 8004D4A8 86380002 */ lh $t8, 2($s1) +/* 04E0AC 8004D4AC A4A00004 */ sh $zero, 4($a1) +/* 04E0B0 8004D4B0 0018C823 */ negu $t9, $t8 +/* 04E0B4 8004D4B4 A4B90002 */ sh $t9, 2($a1) +/* 04E0B8 8004D4B8 E4AE000C */ swc1 $f14, 0xc($a1) +/* 04E0BC 8004D4BC E4AE0010 */ swc1 $f14, 0x10($a1) +/* 04E0C0 8004D4C0 E4AE0014 */ swc1 $f14, 0x14($a1) +/* 04E0C4 8004D4C4 0C01BF9D */ jal func_8006FE74 +/* 04E0C8 8004D4C8 E4A80008 */ swc1 $f8, 8($a1) +/* 04E0CC 8004D4CC 8E25001C */ lw $a1, 0x1c($s1) +/* 04E0D0 8004D4D0 8E260020 */ lw $a2, 0x20($s1) +/* 04E0D4 8004D4D4 8E270024 */ lw $a3, 0x24($s1) +/* 04E0D8 8004D4D8 260B0030 */ addiu $t3, $s0, 0x30 +/* 04E0DC 8004D4DC 260C0034 */ addiu $t4, $s0, 0x34 +/* 04E0E0 8004D4E0 260D002C */ addiu $t5, $s0, 0x2c +/* 04E0E4 8004D4E4 AFAD0018 */ sw $t5, 0x18($sp) +/* 04E0E8 8004D4E8 AFAC0014 */ sw $t4, 0x14($sp) +/* 04E0EC 8004D4EC AFAB0010 */ sw $t3, 0x10($sp) +/* 04E0F0 8004D4F0 0C01BD93 */ jal func_8006F64C +/* 04E0F4 8004D4F4 27A40048 */ addiu $a0, $sp, 0x48 +/* 04E0F8 8004D4F8 8FA700DC */ lw $a3, 0xdc($sp) +/* 04E0FC 8004D4FC 02202025 */ move $a0, $s1 +/* 04E100 8004D500 02002825 */ move $a1, $s0 +/* 04E104 8004D504 0C01602D */ jal func_800580B4 +/* 04E108 8004D508 24060006 */ li $a2, 6 +/* 04E10C 8004D50C 8E220060 */ lw $v0, 0x60($s1) +/* 04E110 8004D510 02202025 */ move $a0, $s1 +/* 04E114 8004D514 10400013 */ beqz $v0, .L8004D564 +/* 04E118 8004D518 83B9003F */ lb $t9, 0x3f($sp) +/* 04E11C 8004D51C 820E01D7 */ lb $t6, 0x1d7($s0) +/* 04E120 8004D520 00000000 */ nop +/* 04E124 8004D524 15C0000F */ bnez $t6, .L8004D564 +/* 04E128 8004D528 83B9003F */ lb $t9, 0x3f($sp) +/* 04E12C 8004D52C 8C4F0000 */ lw $t7, ($v0) +/* 04E130 8004D530 00000000 */ nop +/* 04E134 8004D534 29E10004 */ slti $at, $t7, 4 +/* 04E138 8004D538 1420000A */ bnez $at, .L8004D564 +/* 04E13C 8004D53C 83B9003F */ lb $t9, 0x3f($sp) +/* 04E140 8004D540 8C45000C */ lw $a1, 0xc($v0) +/* 04E144 8004D544 00000000 */ nop +/* 04E148 8004D548 A4A00000 */ sh $zero, ($a1) +/* 04E14C 8004D54C 8E380060 */ lw $t8, 0x60($s1) +/* 04E150 8004D550 00000000 */ nop +/* 04E154 8004D554 8F050010 */ lw $a1, 0x10($t8) +/* 04E158 8004D558 00000000 */ nop +/* 04E15C 8004D55C A4A00000 */ sh $zero, ($a1) +/* 04E160 8004D560 83B9003F */ lb $t9, 0x3f($sp) +.L8004D564: +/* 04E164 8004D564 02002825 */ move $a1, $s0 +/* 04E168 8004D568 13200005 */ beqz $t9, .L8004D580 +/* 04E16C 8004D56C 8FBF002C */ lw $ra, 0x2c($sp) +/* 04E170 8004D570 820B01D7 */ lb $t3, 0x1d7($s0) +/* 04E174 8004D574 0C008C34 */ jal func_800230D0 +/* 04E178 8004D578 A20B01D6 */ sb $t3, 0x1d6($s0) +/* 04E17C 8004D57C 8FBF002C */ lw $ra, 0x2c($sp) +.L8004D580: +/* 04E180 8004D580 8FB00024 */ lw $s0, 0x24($sp) +/* 04E184 8004D584 8FB10028 */ lw $s1, 0x28($sp) +/* 04E188 8004D588 03E00008 */ jr $ra +/* 04E18C 8004D58C 27BD00D8 */ addiu $sp, $sp, 0xd8 + diff --git a/asm/non_matchings/unknown_043920/func_8004D590.s b/asm/non_matchings/unknown_043920/func_8004D590.s new file mode 100644 index 00000000..b1787326 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8004D590.s @@ -0,0 +1,254 @@ +glabel func_8004D590 +/* 04E190 8004D590 3C0142F0 */ li $at, 0x42F00000 # 120.000000 +/* 04E194 8004D594 3C028012 */ lui $v0, %hi(D_8011D540) # $v0, 0x8012 +/* 04E198 8004D598 44810000 */ mtc1 $at, $f0 +/* 04E19C 8004D59C 8C42D540 */ lw $v0, %lo(D_8011D540)($v0) +/* 04E1A0 8004D5A0 27BDFF58 */ addiu $sp, $sp, -0xa8 +/* 04E1A4 8004D5A4 2841003D */ slti $at, $v0, 0x3d +/* 04E1A8 8004D5A8 AFBF002C */ sw $ra, 0x2c($sp) +/* 04E1AC 8004D5AC AFB00028 */ sw $s0, 0x28($sp) +/* 04E1B0 8004D5B0 E7AC00A8 */ swc1 $f12, 0xa8($sp) +/* 04E1B4 8004D5B4 AFA500AC */ sw $a1, 0xac($sp) +/* 04E1B8 8004D5B8 14200009 */ bnez $at, .L8004D5E0 +/* 04E1BC 8004D5BC 46000386 */ mov.s $f14, $f0 +/* 04E1C0 8004D5C0 244EFFC4 */ addiu $t6, $v0, -0x3c +/* 04E1C4 8004D5C4 448E2000 */ mtc1 $t6, $f4 +/* 04E1C8 8004D5C8 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 04E1CC 8004D5CC 468021A0 */ cvt.s.w $f6, $f4 +/* 04E1D0 8004D5D0 44814000 */ mtc1 $at, $f8 +/* 04E1D4 8004D5D4 00000000 */ nop +/* 04E1D8 8004D5D8 46083282 */ mul.s $f10, $f6, $f8 +/* 04E1DC 8004D5DC 460A0380 */ add.s $f14, $f0, $f10 +.L8004D5E0: +/* 04E1E0 8004D5E0 84CF01A0 */ lh $t7, 0x1a0($a2) +/* 04E1E4 8004D5E4 34188000 */ li $t8, 32768 +/* 04E1E8 8004D5E8 030FC823 */ subu $t9, $t8, $t7 +/* 04E1EC 8004D5EC A4D90196 */ sh $t9, 0x196($a2) +/* 04E1F0 8004D5F0 E7AE0094 */ swc1 $f14, 0x94($sp) +/* 04E1F4 8004D5F4 0C019884 */ jal func_80066210 +/* 04E1F8 8004D5F8 AFA600B0 */ sw $a2, 0xb0($sp) +/* 04E1FC 8004D5FC 24040001 */ li $a0, 1 +/* 04E200 8004D600 C7AE0094 */ lwc1 $f14, 0x94($sp) +/* 04E204 8004D604 14440004 */ bne $v0, $a0, .L8004D618 +/* 04E208 8004D608 3C108012 */ lui $s0, %hi(D_8011D508) # $s0, 0x8012 +/* 04E20C 8004D60C 3C014320 */ li $at, 0x43200000 # 160.000000 +/* 04E210 8004D610 44817000 */ mtc1 $at, $f14 +/* 04E214 8004D614 00000000 */ nop +.L8004D618: +/* 04E218 8004D618 2610D508 */ addiu $s0, %lo(D_8011D508) # addiu $s0, $s0, -0x2af8 +/* 04E21C 8004D61C 8E020000 */ lw $v0, ($s0) +/* 04E220 8004D620 44804000 */ mtc1 $zero, $f8 +/* 04E224 8004D624 9043003B */ lbu $v1, 0x3b($v0) +/* 04E228 8004D628 00000000 */ nop +/* 04E22C 8004D62C 14830004 */ bne $a0, $v1, .L8004D640 +/* 04E230 8004D630 3C01420C */ li $at, 0x420C0000 # 35.000000 +/* 04E234 8004D634 44818000 */ mtc1 $at, $f16 +/* 04E238 8004D638 00000000 */ nop +/* 04E23C 8004D63C 46107380 */ add.s $f14, $f14, $f16 +.L8004D640: +/* 04E240 8004D640 14830004 */ bne $a0, $v1, .L8004D654 +/* 04E244 8004D644 3C01420C */ li $at, 0x420C0000 # 35.000000 +/* 04E248 8004D648 44819000 */ mtc1 $at, $f18 +/* 04E24C 8004D64C 00000000 */ nop +/* 04E250 8004D650 46127381 */ sub.s $f14, $f14, $f18 +.L8004D654: +/* 04E254 8004D654 C440001C */ lwc1 $f0, 0x1c($v0) +/* 04E258 8004D658 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 04E25C 8004D65C 46007101 */ sub.s $f4, $f14, $f0 +/* 04E260 8004D660 44814800 */ mtc1 $at, $f9 +/* 04E264 8004D664 460021A1 */ cvt.d.s $f6, $f4 +/* 04E268 8004D668 46283282 */ mul.d $f10, $f6, $f8 +/* 04E26C 8004D66C 46000421 */ cvt.d.s $f16, $f0 +/* 04E270 8004D670 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 +/* 04E274 8004D674 340A8000 */ li $t2, 32768 +/* 04E278 8004D678 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 +/* 04E27C 8004D67C 462A8480 */ add.d $f18, $f16, $f10 +/* 04E280 8004D680 44801000 */ mtc1 $zero, $f2 +/* 04E284 8004D684 46209120 */ cvt.s.d $f4, $f18 +/* 04E288 8004D688 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 04E28C 8004D68C E444001C */ swc1 $f4, 0x1c($v0) +/* 04E290 8004D690 8E020000 */ lw $v0, ($s0) +/* 04E294 8004D694 44813000 */ mtc1 $at, $f6 +/* 04E298 8004D698 84490000 */ lh $t1, ($v0) +/* 04E29C 8004D69C 27A40048 */ addiu $a0, $sp, 0x48 +/* 04E2A0 8004D6A0 01495823 */ subu $t3, $t2, $t1 +/* 04E2A4 8004D6A4 A4AB0000 */ sh $t3, ($a1) +/* 04E2A8 8004D6A8 844C0002 */ lh $t4, 2($v0) +/* 04E2AC 8004D6AC A4A00004 */ sh $zero, 4($a1) +/* 04E2B0 8004D6B0 000C6823 */ negu $t5, $t4 +/* 04E2B4 8004D6B4 A4AD0002 */ sh $t5, 2($a1) +/* 04E2B8 8004D6B8 E4A2000C */ swc1 $f2, 0xc($a1) +/* 04E2BC 8004D6BC E4A20010 */ swc1 $f2, 0x10($a1) +/* 04E2C0 8004D6C0 E4A20014 */ swc1 $f2, 0x14($a1) +/* 04E2C4 8004D6C4 0C01BF0C */ jal func_8006FC30 +/* 04E2C8 8004D6C8 E4A60008 */ swc1 $f6, 8($a1) +/* 04E2CC 8004D6CC 8E0E0000 */ lw $t6, ($s0) +/* 04E2D0 8004D6D0 44801000 */ mtc1 $zero, $f2 +/* 04E2D4 8004D6D4 8DC7001C */ lw $a3, 0x1c($t6) +/* 04E2D8 8004D6D8 27B80090 */ addiu $t8, $sp, 0x90 +/* 04E2DC 8004D6DC 27AF008C */ addiu $t7, $sp, 0x8c +/* 04E2E0 8004D6E0 27B90088 */ addiu $t9, $sp, 0x88 +/* 04E2E4 8004D6E4 44051000 */ mfc1 $a1, $f2 +/* 04E2E8 8004D6E8 44061000 */ mfc1 $a2, $f2 +/* 04E2EC 8004D6EC AFB90018 */ sw $t9, 0x18($sp) +/* 04E2F0 8004D6F0 AFAF0014 */ sw $t7, 0x14($sp) +/* 04E2F4 8004D6F4 AFB80010 */ sw $t8, 0x10($sp) +/* 04E2F8 8004D6F8 0C01BD93 */ jal func_8006F64C +/* 04E2FC 8004D6FC 27A40048 */ addiu $a0, $sp, 0x48 +/* 04E300 8004D700 8FA200AC */ lw $v0, 0xac($sp) +/* 04E304 8004D704 C7B00090 */ lwc1 $f16, 0x90($sp) +/* 04E308 8004D708 C448000C */ lwc1 $f8, 0xc($v0) +/* 04E30C 8004D70C 8E0A0000 */ lw $t2, ($s0) +/* 04E310 8004D710 46104280 */ add.s $f10, $f8, $f16 +/* 04E314 8004D714 24040800 */ li $a0, 2048 +/* 04E318 8004D718 E54A000C */ swc1 $f10, 0xc($t2) +/* 04E31C 8004D71C C7A4008C */ lwc1 $f4, 0x8c($sp) +/* 04E320 8004D720 C4520010 */ lwc1 $f18, 0x10($v0) +/* 04E324 8004D724 8E090000 */ lw $t1, ($s0) +/* 04E328 8004D728 46049180 */ add.s $f6, $f18, $f4 +/* 04E32C 8004D72C E5260010 */ swc1 $f6, 0x10($t1) +/* 04E330 8004D730 C7B00088 */ lwc1 $f16, 0x88($sp) +/* 04E334 8004D734 C4480014 */ lwc1 $f8, 0x14($v0) +/* 04E338 8004D738 8E0B0000 */ lw $t3, ($s0) +/* 04E33C 8004D73C 46104280 */ add.s $f10, $f8, $f16 +/* 04E340 8004D740 0C01C1F1 */ jal func_800707C4 +/* 04E344 8004D744 E56A0014 */ swc1 $f10, 0x14($t3) +/* 04E348 8004D748 8E0C0000 */ lw $t4, ($s0) +/* 04E34C 8004D74C 44801000 */ mtc1 $zero, $f2 +/* 04E350 8004D750 C592001C */ lwc1 $f18, 0x1c($t4) +/* 04E354 8004D754 27AD0090 */ addiu $t5, $sp, 0x90 +/* 04E358 8004D758 46120102 */ mul.s $f4, $f0, $f18 +/* 04E35C 8004D75C 27AE008C */ addiu $t6, $sp, 0x8c +/* 04E360 8004D760 27B80088 */ addiu $t8, $sp, 0x88 +/* 04E364 8004D764 44051000 */ mfc1 $a1, $f2 +/* 04E368 8004D768 44062000 */ mfc1 $a2, $f4 +/* 04E36C 8004D76C 44071000 */ mfc1 $a3, $f2 +/* 04E370 8004D770 AFB80018 */ sw $t8, 0x18($sp) +/* 04E374 8004D774 AFAE0014 */ sw $t6, 0x14($sp) +/* 04E378 8004D778 AFAD0010 */ sw $t5, 0x10($sp) +/* 04E37C 8004D77C 0C01BD93 */ jal func_8006F64C +/* 04E380 8004D780 27A40048 */ addiu $a0, $sp, 0x48 +/* 04E384 8004D784 8E020000 */ lw $v0, ($s0) +/* 04E388 8004D788 C7A80090 */ lwc1 $f8, 0x90($sp) +/* 04E38C 8004D78C C446000C */ lwc1 $f6, 0xc($v0) +/* 04E390 8004D790 34088001 */ li $t0, 32769 +/* 04E394 8004D794 46083400 */ add.s $f16, $f6, $f8 +/* 04E398 8004D798 E450000C */ swc1 $f16, 0xc($v0) +/* 04E39C 8004D79C 8E020000 */ lw $v0, ($s0) +/* 04E3A0 8004D7A0 C7B2008C */ lwc1 $f18, 0x8c($sp) +/* 04E3A4 8004D7A4 C44A0010 */ lwc1 $f10, 0x10($v0) +/* 04E3A8 8004D7A8 00000000 */ nop +/* 04E3AC 8004D7AC 46125100 */ add.s $f4, $f10, $f18 +/* 04E3B0 8004D7B0 E4440010 */ swc1 $f4, 0x10($v0) +/* 04E3B4 8004D7B4 8E020000 */ lw $v0, ($s0) +/* 04E3B8 8004D7B8 C7A80088 */ lwc1 $f8, 0x88($sp) +/* 04E3BC 8004D7BC C4460014 */ lwc1 $f6, 0x14($v0) +/* 04E3C0 8004D7C0 00000000 */ nop +/* 04E3C4 8004D7C4 46083400 */ add.s $f16, $f6, $f8 +/* 04E3C8 8004D7C8 E4500014 */ swc1 $f16, 0x14($v0) +/* 04E3CC 8004D7CC 8FAF00AC */ lw $t7, 0xac($sp) +/* 04E3D0 8004D7D0 8E020000 */ lw $v0, ($s0) +/* 04E3D4 8004D7D4 85E40004 */ lh $a0, 4($t7) +/* 04E3D8 8004D7D8 84460004 */ lh $a2, 4($v0) +/* 04E3DC 8004D7DC 00042023 */ negu $a0, $a0 +/* 04E3E0 8004D7E0 3099FFFF */ andi $t9, $a0, 0xffff +/* 04E3E4 8004D7E4 30CAFFFF */ andi $t2, $a2, 0xffff +/* 04E3E8 8004D7E8 032A1823 */ subu $v1, $t9, $t2 +/* 04E3EC 8004D7EC 0068082A */ slt $at, $v1, $t0 +/* 04E3F0 8004D7F0 14200003 */ bnez $at, .L8004D800 +/* 04E3F4 8004D7F4 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 04E3F8 8004D7F8 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 04E3FC 8004D7FC 00611821 */ addu $v1, $v1, $at +.L8004D800: +/* 04E400 8004D800 28618000 */ slti $at, $v1, -0x8000 +/* 04E404 8004D804 10200002 */ beqz $at, .L8004D810 +/* 04E408 8004D808 3401FFFF */ li $at, 65535 +/* 04E40C 8004D80C 00611821 */ addu $v1, $v1, $at +.L8004D810: +/* 04E410 8004D810 4449F800 */ cfc1 $t1, $31 +/* 04E414 8004D814 C7AA00A8 */ lwc1 $f10, 0xa8($sp) +/* 04E418 8004D818 35210003 */ ori $at, $t1, 3 +/* 04E41C 8004D81C 38210002 */ xori $at, $at, 2 +/* 04E420 8004D820 44C1F800 */ ctc1 $at, $31 +/* 04E424 8004D824 00000000 */ nop +/* 04E428 8004D828 460054A4 */ cvt.w.s $f18, $f10 +/* 04E42C 8004D82C 44059000 */ mfc1 $a1, $f18 +/* 04E430 8004D830 44C9F800 */ ctc1 $t1, $31 +/* 04E434 8004D834 00650019 */ multu $v1, $a1 +/* 04E438 8004D838 00005812 */ mflo $t3 +/* 04E43C 8004D83C 000B6103 */ sra $t4, $t3, 4 +/* 04E440 8004D840 00CC6821 */ addu $t5, $a2, $t4 +/* 04E444 8004D844 A44D0004 */ sh $t5, 4($v0) +/* 04E448 8004D848 8FAE00AC */ lw $t6, 0xac($sp) +/* 04E44C 8004D84C 8E020000 */ lw $v0, ($s0) +/* 04E450 8004D850 85C40002 */ lh $a0, 2($t6) +/* 04E454 8004D854 84470002 */ lh $a3, 2($v0) +/* 04E458 8004D858 00042023 */ negu $a0, $a0 +/* 04E45C 8004D85C 30F8FFFF */ andi $t8, $a3, 0xffff +/* 04E460 8004D860 00981823 */ subu $v1, $a0, $t8 +/* 04E464 8004D864 0068082A */ slt $at, $v1, $t0 +/* 04E468 8004D868 14200003 */ bnez $at, .L8004D878 +/* 04E46C 8004D86C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 04E470 8004D870 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 04E474 8004D874 00611821 */ addu $v1, $v1, $at +.L8004D878: +/* 04E478 8004D878 28618000 */ slti $at, $v1, -0x8000 +/* 04E47C 8004D87C 10200002 */ beqz $at, .L8004D888 +/* 04E480 8004D880 3401FFFF */ li $at, 65535 +/* 04E484 8004D884 00611821 */ addu $v1, $v1, $at +.L8004D888: +/* 04E488 8004D888 00650019 */ multu $v1, $a1 +/* 04E48C 8004D88C 00007812 */ mflo $t7 +/* 04E490 8004D890 000FC903 */ sra $t9, $t7, 4 +/* 04E494 8004D894 00F95021 */ addu $t2, $a3, $t9 +/* 04E498 8004D898 A44A0002 */ sh $t2, 2($v0) +/* 04E49C 8004D89C 8FA900B0 */ lw $t1, 0xb0($sp) +/* 04E4A0 8004D8A0 8E0C0000 */ lw $t4, ($s0) +/* 04E4A4 8004D8A4 852B0196 */ lh $t3, 0x196($t1) +/* 04E4A8 8004D8A8 00000000 */ nop +/* 04E4AC 8004D8AC A58B0000 */ sh $t3, ($t4) +/* 04E4B0 8004D8B0 8E020000 */ lw $v0, ($s0) +/* 04E4B4 8004D8B4 00000000 */ nop +/* 04E4B8 8004D8B8 C44C000C */ lwc1 $f12, 0xc($v0) +/* 04E4BC 8004D8BC C44E0010 */ lwc1 $f14, 0x10($v0) +/* 04E4C0 8004D8C0 8C460014 */ lw $a2, 0x14($v0) +/* 04E4C4 8004D8C4 0C00A7C6 */ jal func_80029F18 +/* 04E4C8 8004D8C8 00000000 */ nop +/* 04E4CC 8004D8CC 2401FFFF */ li $at, -1 +/* 04E4D0 8004D8D0 10410004 */ beq $v0, $at, .L8004D8E4 +/* 04E4D4 8004D8D4 00000000 */ nop +/* 04E4D8 8004D8D8 8E0D0000 */ lw $t5, ($s0) +/* 04E4DC 8004D8DC 00000000 */ nop +/* 04E4E0 8004D8E0 A5A20034 */ sh $v0, 0x34($t5) +.L8004D8E4: +/* 04E4E4 8004D8E4 8E0E0000 */ lw $t6, ($s0) +/* 04E4E8 8004D8E8 8FAF00B0 */ lw $t7, 0xb0($sp) +/* 04E4EC 8004D8EC 85D80000 */ lh $t8, ($t6) +/* 04E4F0 8004D8F0 00000000 */ nop +/* 04E4F4 8004D8F4 A5F80196 */ sh $t8, 0x196($t7) +/* 04E4F8 8004D8F8 8E020000 */ lw $v0, ($s0) +/* 04E4FC 8004D8FC 00000000 */ nop +/* 04E500 8004D900 C444000C */ lwc1 $f4, 0xc($v0) +/* 04E504 8004D904 C4460024 */ lwc1 $f6, 0x24($v0) +/* 04E508 8004D908 00000000 */ nop +/* 04E50C 8004D90C 46062200 */ add.s $f8, $f4, $f6 +/* 04E510 8004D910 E448000C */ swc1 $f8, 0xc($v0) +/* 04E514 8004D914 8E020000 */ lw $v0, ($s0) +/* 04E518 8004D918 00000000 */ nop +/* 04E51C 8004D91C C4500010 */ lwc1 $f16, 0x10($v0) +/* 04E520 8004D920 C44A0028 */ lwc1 $f10, 0x28($v0) +/* 04E524 8004D924 00000000 */ nop +/* 04E528 8004D928 460A8480 */ add.s $f18, $f16, $f10 +/* 04E52C 8004D92C E4520010 */ swc1 $f18, 0x10($v0) +/* 04E530 8004D930 8E020000 */ lw $v0, ($s0) +/* 04E534 8004D934 00000000 */ nop +/* 04E538 8004D938 C4440014 */ lwc1 $f4, 0x14($v0) +/* 04E53C 8004D93C C446002C */ lwc1 $f6, 0x2c($v0) +/* 04E540 8004D940 00000000 */ nop +/* 04E544 8004D944 46062200 */ add.s $f8, $f4, $f6 +/* 04E548 8004D948 E4480014 */ swc1 $f8, 0x14($v0) +/* 04E54C 8004D94C 8FBF002C */ lw $ra, 0x2c($sp) +/* 04E550 8004D950 8FB00028 */ lw $s0, 0x28($sp) +/* 04E554 8004D954 03E00008 */ jr $ra +/* 04E558 8004D958 27BD00A8 */ addiu $sp, $sp, 0xa8 + diff --git a/asm/non_matchings/unknown_043920/func_8004D95C.s b/asm/non_matchings/unknown_043920/func_8004D95C.s new file mode 100644 index 00000000..c429f1d5 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8004D95C.s @@ -0,0 +1,90 @@ +glabel func_8004D95C +/* 04E55C 8004D95C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 04E560 8004D960 AFBF001C */ sw $ra, 0x1c($sp) +/* 04E564 8004D964 AFB00018 */ sw $s0, 0x18($sp) +/* 04E568 8004D968 AFA40028 */ sw $a0, 0x28($sp) +/* 04E56C 8004D96C AFA5002C */ sw $a1, 0x2c($sp) +/* 04E570 8004D970 8CEE0118 */ lw $t6, 0x118($a3) +/* 04E574 8004D974 00C08025 */ move $s0, $a2 +/* 04E578 8004D978 11C00005 */ beqz $t6, .L8004D990 +/* 04E57C 8004D97C 00C02025 */ move $a0, $a2 +/* 04E580 8004D980 0C001AB2 */ jal func_80006AC8 +/* 04E584 8004D984 AFA70034 */ sw $a3, 0x34($sp) +/* 04E588 8004D988 8FA70034 */ lw $a3, 0x34($sp) +/* 04E58C 8004D98C 00000000 */ nop +.L8004D990: +/* 04E590 8004D990 0C008D07 */ jal func_8002341C +/* 04E594 8004D994 AFA70034 */ sw $a3, 0x34($sp) +/* 04E598 8004D998 8FA70034 */ lw $a3, 0x34($sp) +/* 04E59C 8004D99C 10400008 */ beqz $v0, .L8004D9C0 +/* 04E5A0 8004D9A0 2408000A */ li $t0, 10 +/* 04E5A4 8004D9A4 80EF01D6 */ lb $t7, 0x1d6($a3) +/* 04E5A8 8004D9A8 2401000A */ li $at, 10 +/* 04E5AC 8004D9AC 15E10004 */ bne $t7, $at, .L8004D9C0 +/* 04E5B0 8004D9B0 00000000 */ nop +/* 04E5B4 8004D9B4 8E18004C */ lw $t8, 0x4c($s0) +/* 04E5B8 8004D9B8 00000000 */ nop +/* 04E5BC 8004D9BC A7000014 */ sh $zero, 0x14($t8) +.L8004D9C0: +/* 04E5C0 8004D9C0 86190018 */ lh $t9, 0x18($s0) +/* 04E5C4 8004D9C4 02003025 */ move $a2, $s0 +/* 04E5C8 8004D9C8 A7B90026 */ sh $t9, 0x26($sp) +/* 04E5CC 8004D9CC A0E801D6 */ sb $t0, 0x1d6($a3) +/* 04E5D0 8004D9D0 8FA5002C */ lw $a1, 0x2c($sp) +/* 04E5D4 8004D9D4 8FA40028 */ lw $a0, 0x28($sp) +/* 04E5D8 8004D9D8 0C0125E5 */ jal func_80049794 +/* 04E5DC 8004D9DC AFA70034 */ sw $a3, 0x34($sp) +/* 04E5E0 8004D9E0 8FA70034 */ lw $a3, 0x34($sp) +/* 04E5E4 8004D9E4 2401000A */ li $at, 10 +/* 04E5E8 8004D9E8 80E901D7 */ lb $t1, 0x1d7($a3) +/* 04E5EC 8004D9EC 00000000 */ nop +/* 04E5F0 8004D9F0 A0E901D6 */ sb $t1, 0x1d6($a3) +/* 04E5F4 8004D9F4 A200003B */ sb $zero, 0x3b($s0) +/* 04E5F8 8004D9F8 80EA01D6 */ lb $t2, 0x1d6($a3) +/* 04E5FC 8004D9FC 00000000 */ nop +/* 04E600 8004DA00 15410028 */ bne $t2, $at, .L8004DAA4 +/* 04E604 8004DA04 8FBF001C */ lw $ra, 0x1c($sp) +/* 04E608 8004DA08 8CE20154 */ lw $v0, 0x154($a3) +/* 04E60C 8004DA0C 00000000 */ nop +/* 04E610 8004DA10 10400024 */ beqz $v0, .L8004DAA4 +/* 04E614 8004DA14 8FBF001C */ lw $ra, 0x1c($sp) +/* 04E618 8004DA18 C604000C */ lwc1 $f4, 0xc($s0) +/* 04E61C 8004DA1C 02002025 */ move $a0, $s0 +/* 04E620 8004DA20 E444000C */ swc1 $f4, 0xc($v0) +/* 04E624 8004DA24 8CEB0154 */ lw $t3, 0x154($a3) +/* 04E628 8004DA28 C6060010 */ lwc1 $f6, 0x10($s0) +/* 04E62C 8004DA2C 00000000 */ nop +/* 04E630 8004DA30 E5660010 */ swc1 $f6, 0x10($t3) +/* 04E634 8004DA34 8CEC0154 */ lw $t4, 0x154($a3) +/* 04E638 8004DA38 C6080014 */ lwc1 $f8, 0x14($s0) +/* 04E63C 8004DA3C 00000000 */ nop +/* 04E640 8004DA40 E5880014 */ swc1 $f8, 0x14($t4) +/* 04E644 8004DA44 8CEE0154 */ lw $t6, 0x154($a3) +/* 04E648 8004DA48 860D002E */ lh $t5, 0x2e($s0) +/* 04E64C 8004DA4C 00000000 */ nop +/* 04E650 8004DA50 A5CD002E */ sh $t5, 0x2e($t6) +/* 04E654 8004DA54 8CF80154 */ lw $t8, 0x154($a3) +/* 04E658 8004DA58 860F0000 */ lh $t7, ($s0) +/* 04E65C 8004DA5C 00000000 */ nop +/* 04E660 8004DA60 A70F0000 */ sh $t7, ($t8) +/* 04E664 8004DA64 8CE80154 */ lw $t0, 0x154($a3) +/* 04E668 8004DA68 86190002 */ lh $t9, 2($s0) +/* 04E66C 8004DA6C 00000000 */ nop +/* 04E670 8004DA70 A5190002 */ sh $t9, 2($t0) +/* 04E674 8004DA74 8CEA0154 */ lw $t2, 0x154($a3) +/* 04E678 8004DA78 86090004 */ lh $t1, 4($s0) +/* 04E67C 8004DA7C 00000000 */ nop +/* 04E680 8004DA80 A5490004 */ sh $t1, 4($t2) +/* 04E684 8004DA84 A200003B */ sb $zero, 0x3b($s0) +/* 04E688 8004DA88 8FAC0028 */ lw $t4, 0x28($sp) +/* 04E68C 8004DA8C 87AB0026 */ lh $t3, 0x26($sp) +/* 04E690 8004DA90 00000000 */ nop +/* 04E694 8004DA94 016C6821 */ addu $t5, $t3, $t4 +/* 04E698 8004DA98 0C018703 */ jal func_80061C0C +/* 04E69C 8004DA9C A60D0018 */ sh $t5, 0x18($s0) +/* 04E6A0 8004DAA0 8FBF001C */ lw $ra, 0x1c($sp) +.L8004DAA4: +/* 04E6A4 8004DAA4 8FB00018 */ lw $s0, 0x18($sp) +/* 04E6A8 8004DAA8 03E00008 */ jr $ra +/* 04E6AC 8004DAAC 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_043920/func_8004DAB0.s b/asm/non_matchings/unknown_043920/func_8004DAB0.s new file mode 100644 index 00000000..dc1c9b42 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8004DAB0.s @@ -0,0 +1,234 @@ +glabel func_8004DAB0 +/* 04E6B0 8004DAB0 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 04E6B4 8004DAB4 44811000 */ mtc1 $at, $f2 +/* 04E6B8 8004DAB8 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 04E6BC 8004DABC 3C018012 */ lui $at, %hi(D_8011D53C) # $at, 0x8012 +/* 04E6C0 8004DAC0 AFBF001C */ sw $ra, 0x1c($sp) +/* 04E6C4 8004DAC4 AFB00018 */ sw $s0, 0x18($sp) +/* 04E6C8 8004DAC8 AC20D53C */ sw $zero, %lo(D_8011D53C)($at) +/* 04E6CC 8004DACC 84AE000C */ lh $t6, 0xc($a1) +/* 04E6D0 8004DAD0 8C900064 */ lw $s0, 0x64($a0) +/* 04E6D4 8004DAD4 A48E0000 */ sh $t6, ($a0) +/* 04E6D8 8004DAD8 84AF000A */ lh $t7, 0xa($a1) +/* 04E6DC 8004DADC 00803825 */ move $a3, $a0 +/* 04E6E0 8004DAE0 A48F0002 */ sh $t7, 2($a0) +/* 04E6E4 8004DAE4 84B80008 */ lh $t8, 8($a1) +/* 04E6E8 8004DAE8 2409FFFF */ li $t1, -1 +/* 04E6EC 8004DAEC A4980004 */ sh $t8, 4($a0) +/* 04E6F0 8004DAF0 84A6000E */ lh $a2, 0xe($a1) +/* 04E6F4 8004DAF4 A2000194 */ sb $zero, 0x194($s0) +/* 04E6F8 8004DAF8 E602008C */ swc1 $f2, 0x8c($s0) +/* 04E6FC 8004DAFC 04C00010 */ bltz $a2, .L8004DB40 +/* 04E700 8004DB00 E6020090 */ swc1 $f2, 0x90($s0) +/* 04E704 8004DB04 28C10004 */ slti $at, $a2, 4 +/* 04E708 8004DB08 1020000D */ beqz $at, .L8004DB40 +/* 04E70C 8004DB0C 00000000 */ nop +/* 04E710 8004DB10 AFA60028 */ sw $a2, 0x28($sp) +/* 04E714 8004DB14 0C003856 */ jal func_8000E158 +/* 04E718 8004DB18 AFA40030 */ sw $a0, 0x30($sp) +/* 04E71C 8004DB1C 8FA60028 */ lw $a2, 0x28($sp) +/* 04E720 8004DB20 8FA70030 */ lw $a3, 0x30($sp) +/* 04E724 8004DB24 10400003 */ beqz $v0, .L8004DB34 +/* 04E728 8004DB28 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 04E72C 8004DB2C 24190001 */ li $t9, 1 +/* 04E730 8004DB30 03263023 */ subu $a2, $t9, $a2 +.L8004DB34: +/* 04E734 8004DB34 44811000 */ mtc1 $at, $f2 +/* 04E738 8004DB38 10000002 */ b .L8004DB44 +/* 04E73C 8004DB3C A6060000 */ sh $a2, ($s0) +.L8004DB40: +/* 04E740 8004DB40 A6090000 */ sh $t1, ($s0) +.L8004DB44: +/* 04E744 8004DB44 84EA0000 */ lh $t2, ($a3) +/* 04E748 8004DB48 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 04E74C 8004DB4C A60A01A0 */ sh $t2, 0x1a0($s0) +/* 04E750 8004DB50 84EB0004 */ lh $t3, 4($a3) +/* 04E754 8004DB54 44812000 */ mtc1 $at, $f4 +/* 04E758 8004DB58 860C01A0 */ lh $t4, 0x1a0($s0) +/* 04E75C 8004DB5C A60B01A4 */ sh $t3, 0x1a4($s0) +/* 04E760 8004DB60 E60400C4 */ swc1 $f4, 0xc4($s0) +/* 04E764 8004DB64 A60C0196 */ sh $t4, 0x196($s0) +/* 04E768 8004DB68 C4E6000C */ lwc1 $f6, 0xc($a3) +/* 04E76C 8004DB6C 3C0141F0 */ li $at, 0x41F00000 # 30.000000 +/* 04E770 8004DB70 E60600D8 */ swc1 $f6, 0xd8($s0) +/* 04E774 8004DB74 44810000 */ mtc1 $at, $f0 +/* 04E778 8004DB78 C4E80010 */ lwc1 $f8, 0x10($a3) +/* 04E77C 8004DB7C 24180003 */ li $t8, 3 +/* 04E780 8004DB80 46004280 */ add.s $f10, $f8, $f0 +/* 04E784 8004DB84 24190001 */ li $t9, 1 +/* 04E788 8004DB88 E60A00DC */ swc1 $f10, 0xdc($s0) +/* 04E78C 8004DB8C C4F00014 */ lwc1 $f16, 0x14($a3) +/* 04E790 8004DB90 24090001 */ li $t1, 1 +/* 04E794 8004DB94 E61000E0 */ swc1 $f16, 0xe0($s0) +/* 04E798 8004DB98 C4F2000C */ lwc1 $f18, 0xc($a3) +/* 04E79C 8004DB9C 2401FFFF */ li $at, -1 +/* 04E7A0 8004DBA0 E61200E4 */ swc1 $f18, 0xe4($s0) +/* 04E7A4 8004DBA4 C4E40010 */ lwc1 $f4, 0x10($a3) +/* 04E7A8 8004DBA8 00000000 */ nop +/* 04E7AC 8004DBAC 46002180 */ add.s $f6, $f4, $f0 +/* 04E7B0 8004DBB0 E60600E8 */ swc1 $f6, 0xe8($s0) +/* 04E7B4 8004DBB4 C4E80014 */ lwc1 $f8, 0x14($a3) +/* 04E7B8 8004DBB8 00000000 */ nop +/* 04E7BC 8004DBBC E60800EC */ swc1 $f8, 0xec($s0) +/* 04E7C0 8004DBC0 C4EA000C */ lwc1 $f10, 0xc($a3) +/* 04E7C4 8004DBC4 00000000 */ nop +/* 04E7C8 8004DBC8 E60A00F0 */ swc1 $f10, 0xf0($s0) +/* 04E7CC 8004DBCC C4F00010 */ lwc1 $f16, 0x10($a3) +/* 04E7D0 8004DBD0 00000000 */ nop +/* 04E7D4 8004DBD4 46008480 */ add.s $f18, $f16, $f0 +/* 04E7D8 8004DBD8 E61200F4 */ swc1 $f18, 0xf4($s0) +/* 04E7DC 8004DBDC C4E40014 */ lwc1 $f4, 0x14($a3) +/* 04E7E0 8004DBE0 00000000 */ nop +/* 04E7E4 8004DBE4 E60400F8 */ swc1 $f4, 0xf8($s0) +/* 04E7E8 8004DBE8 C4E6000C */ lwc1 $f6, 0xc($a3) +/* 04E7EC 8004DBEC 00000000 */ nop +/* 04E7F0 8004DBF0 E60600FC */ swc1 $f6, 0xfc($s0) +/* 04E7F4 8004DBF4 C4E80010 */ lwc1 $f8, 0x10($a3) +/* 04E7F8 8004DBF8 00000000 */ nop +/* 04E7FC 8004DBFC 46004280 */ add.s $f10, $f8, $f0 +/* 04E800 8004DC00 E60A0100 */ swc1 $f10, 0x100($s0) +/* 04E804 8004DC04 C4F00014 */ lwc1 $f16, 0x14($a3) +/* 04E808 8004DC08 00000000 */ nop +/* 04E80C 8004DC0C E6100104 */ swc1 $f16, 0x104($s0) +/* 04E810 8004DC10 C4F2000C */ lwc1 $f18, 0xc($a3) +/* 04E814 8004DC14 00000000 */ nop +/* 04E818 8004DC18 E612005C */ swc1 $f18, 0x5c($s0) +/* 04E81C 8004DC1C C4E40010 */ lwc1 $f4, 0x10($a3) +/* 04E820 8004DC20 00000000 */ nop +/* 04E824 8004DC24 E6040060 */ swc1 $f4, 0x60($s0) +/* 04E828 8004DC28 C4E60014 */ lwc1 $f6, 0x14($a3) +/* 04E82C 8004DC2C 00000000 */ nop +/* 04E830 8004DC30 E6060064 */ swc1 $f6, 0x64($s0) +/* 04E834 8004DC34 8CED004C */ lw $t5, 0x4c($a3) +/* 04E838 8004DC38 C4E8000C */ lwc1 $f8, 0xc($a3) +/* 04E83C 8004DC3C 00000000 */ nop +/* 04E840 8004DC40 E5A80004 */ swc1 $f8, 4($t5) +/* 04E844 8004DC44 8CEE004C */ lw $t6, 0x4c($a3) +/* 04E848 8004DC48 C4EA0010 */ lwc1 $f10, 0x10($a3) +/* 04E84C 8004DC4C 00000000 */ nop +/* 04E850 8004DC50 E5CA0008 */ swc1 $f10, 8($t6) +/* 04E854 8004DC54 8CEF004C */ lw $t7, 0x4c($a3) +/* 04E858 8004DC58 C4F00014 */ lwc1 $f16, 0x14($a3) +/* 04E85C 8004DC5C 00000000 */ nop +/* 04E860 8004DC60 E5F0000C */ swc1 $f16, 0xc($t7) +/* 04E864 8004DC64 86020000 */ lh $v0, ($s0) +/* 04E868 8004DC68 A21801E2 */ sb $t8, 0x1e2($s0) +/* 04E86C 8004DC6C 00025080 */ sll $t2, $v0, 2 +/* 04E870 8004DC70 01425021 */ addu $t2, $t2, $v0 +/* 04E874 8004DC74 A61901AA */ sh $t9, 0x1aa($s0) +/* 04E878 8004DC78 A60901AE */ sh $t1, 0x1ae($s0) +/* 04E87C 8004DC7C A20A01E7 */ sb $t2, 0x1e7($s0) +/* 04E880 8004DC80 E60200A8 */ swc1 $f2, 0xa8($s0) +/* 04E884 8004DC84 A20001FD */ sb $zero, 0x1fd($s0) +/* 04E888 8004DC88 AE000178 */ sw $zero, 0x178($s0) +/* 04E88C 8004DC8C AE00017C */ sw $zero, 0x17c($s0) +/* 04E890 8004DC90 AE000180 */ sw $zero, 0x180($s0) +/* 04E894 8004DC94 AE000218 */ sw $zero, 0x218($s0) +/* 04E898 8004DC98 AE000220 */ sw $zero, 0x220($s0) +/* 04E89C 8004DC9C 1041002B */ beq $v0, $at, .L8004DD4C +/* 04E8A0 8004DCA0 AE00021C */ sw $zero, 0x21c($s0) +/* 04E8A4 8004DCA4 3C028012 */ lui $v0, %hi(D_8011D582) # $v0, 0x8012 +/* 04E8A8 8004DCA8 2442D582 */ addiu $v0, %lo(D_8011D582) # addiu $v0, $v0, -0x2a7e +/* 04E8AC 8004DCAC 804B0000 */ lb $t3, ($v0) +/* 04E8B0 8004DCB0 00C02025 */ move $a0, $a2 +/* 04E8B4 8004DCB4 15600025 */ bnez $t3, .L8004DD4C +/* 04E8B8 8004DCB8 00000000 */ nop +/* 04E8BC 8004DCBC 0C01997A */ jal func_800665E8 +/* 04E8C0 8004DCC0 AFA70030 */ sw $a3, 0x30($sp) +/* 04E8C4 8004DCC4 0C01A73F */ jal func_80069CFC +/* 04E8C8 8004DCC8 00000000 */ nop +/* 04E8CC 8004DCCC 3C038012 */ lui $v1, %hi(D_8011D508) # $v1, 0x8012 +/* 04E8D0 8004DCD0 2463D508 */ addiu $v1, %lo(D_8011D508) # addiu $v1, $v1, -0x2af8 +/* 04E8D4 8004DCD4 AC620000 */ sw $v0, ($v1) +/* 04E8D8 8004DCD8 8FA40030 */ lw $a0, 0x30($sp) +/* 04E8DC 8004DCDC A4400004 */ sh $zero, 4($v0) +/* 04E8E0 8004DCE0 8C6E0000 */ lw $t6, ($v1) +/* 04E8E4 8004DCE4 240D0400 */ li $t5, 1024 +/* 04E8E8 8004DCE8 A5CD0002 */ sh $t5, 2($t6) +/* 04E8EC 8004DCEC 8C780000 */ lw $t8, ($v1) +/* 04E8F0 8004DCF0 860F0196 */ lh $t7, 0x196($s0) +/* 04E8F4 8004DCF4 240800FF */ li $t0, 255 +/* 04E8F8 8004DCF8 A70F0000 */ sh $t7, ($t8) +/* 04E8FC 8004DCFC 8C790000 */ lw $t9, ($v1) +/* 04E900 8004DD00 44809000 */ mtc1 $zero, $f18 +/* 04E904 8004DD04 A7200036 */ sh $zero, 0x36($t9) +/* 04E908 8004DD08 8C690000 */ lw $t1, ($v1) +/* 04E90C 8004DD0C 02002825 */ move $a1, $s0 +/* 04E910 8004DD10 A128003C */ sb $t0, 0x3c($t1) +/* 04E914 8004DD14 8C6A0000 */ lw $t2, ($v1) +/* 04E918 8004DD18 3C063F80 */ lui $a2, 0x3f80 +/* 04E91C 8004DD1C A148003D */ sb $t0, 0x3d($t2) +/* 04E920 8004DD20 8C6B0000 */ lw $t3, ($v1) +/* 04E924 8004DD24 00000000 */ nop +/* 04E928 8004DD28 A168003E */ sb $t0, 0x3e($t3) +/* 04E92C 8004DD2C 8C6C0000 */ lw $t4, ($v1) +/* 04E930 8004DD30 00000000 */ nop +/* 04E934 8004DD34 A188003F */ sb $t0, 0x3f($t4) +/* 04E938 8004DD38 8C6D0000 */ lw $t5, ($v1) +/* 04E93C 8004DD3C 0C015E90 */ jal func_80057A40 +/* 04E940 8004DD40 E5B20018 */ swc1 $f18, 0x18($t5) +/* 04E944 8004DD44 8FA70030 */ lw $a3, 0x30($sp) +/* 04E948 8004DD48 00000000 */ nop +.L8004DD4C: +/* 04E94C 8004DD4C 3C028012 */ lui $v0, %hi(D_8011D582) # $v0, 0x8012 +/* 04E950 8004DD50 2442D582 */ addiu $v0, %lo(D_8011D582) # addiu $v0, $v0, -0x2a7e +/* 04E954 8004DD54 804E0000 */ lb $t6, ($v0) +/* 04E958 8004DD58 240800FF */ li $t0, 255 +/* 04E95C 8004DD5C 15C00007 */ bnez $t6, .L8004DD7C +/* 04E960 8004DD60 00002025 */ move $a0, $zero +/* 04E964 8004DD64 3C018012 */ lui $at, %hi(D_8011D583) # $at, 0x8012 +/* 04E968 8004DD68 A020D583 */ sb $zero, %lo(D_8011D583)($at) +/* 04E96C 8004DD6C 3C018012 */ lui $at, %hi(D_8011D586) # $at, 0x8012 +/* 04E970 8004DD70 A420D586 */ sh $zero, %lo(D_8011D586)($at) +/* 04E974 8004DD74 3C018012 */ lui $at, %hi(D_8011D584) # $at, 0x8012 +/* 04E978 8004DD78 A020D584 */ sb $zero, %lo(D_8011D584)($at) +.L8004DD7C: +/* 04E97C 8004DD7C 8CF8004C */ lw $t8, 0x4c($a3) +/* 04E980 8004DD80 240F0005 */ li $t7, 5 +/* 04E984 8004DD84 A70F0014 */ sh $t7, 0x14($t8) +/* 04E988 8004DD88 8CF9004C */ lw $t9, 0x4c($a3) +/* 04E98C 8004DD8C 2409000F */ li $t1, 15 +/* 04E990 8004DD90 A3200011 */ sb $zero, 0x11($t9) +/* 04E994 8004DD94 8CEA004C */ lw $t2, 0x4c($a3) +/* 04E998 8004DD98 240B0014 */ li $t3, 20 +/* 04E99C 8004DD9C A1490010 */ sb $t1, 0x10($t2) +/* 04E9A0 8004DDA0 8CEC004C */ lw $t4, 0x4c($a3) +/* 04E9A4 8004DDA4 3C018012 */ lui $at, %hi(D_8011D560) # $at, 0x8012 +/* 04E9A8 8004DDA8 A18B0012 */ sb $t3, 0x12($t4) +/* 04E9AC 8004DDAC A20001EE */ sb $zero, 0x1ee($s0) +/* 04E9B0 8004DDB0 804D0000 */ lb $t5, ($v0) +/* 04E9B4 8004DDB4 240E0006 */ li $t6, 6 +/* 04E9B8 8004DDB8 15A00002 */ bnez $t5, .L8004DDC4 +/* 04E9BC 8004DDBC 240F0064 */ li $t7, 100 +/* 04E9C0 8004DDC0 A20801F7 */ sb $t0, 0x1f7($s0) +.L8004DDC4: +/* 04E9C4 8004DDC4 A420D560 */ sh $zero, %lo(D_8011D560)($at) +/* 04E9C8 8004DDC8 3C014396 */ li $at, 0x43960000 # 300.000000 +/* 04E9CC 8004DDCC 44812000 */ mtc1 $at, $f4 +/* 04E9D0 8004DDD0 3C018012 */ lui $at, %hi(D_8011D544) # $at, 0x8012 +/* 04E9D4 8004DDD4 E424D544 */ swc1 $f4, %lo(D_8011D544)($at) +/* 04E9D8 8004DDD8 A20E01C9 */ sb $t6, 0x1c9($s0) +/* 04E9DC 8004DDDC A60F01C6 */ sh $t7, 0x1c6($s0) +/* 04E9E0 8004DDE0 3C018012 */ lui $at, %hi(D_8011D580) # $at, 0x8012 +/* 04E9E4 8004DDE4 A020D580 */ sb $zero, %lo(D_8011D580)($at) +/* 04E9E8 8004DDE8 3C018012 */ lui $at, %hi(D_8011D58F) # $at, 0x8012 +/* 04E9EC 8004DDEC 24020004 */ li $v0, 4 +/* 04E9F0 8004DDF0 A020D58C */ sb $zero, %lo(D_8011D58C)($at) +/* 04E9F4 8004DDF4 A020D58D */ sb $zero, %lo(D_8011D58D)($at) +/* 04E9F8 8004DDF8 A020D58E */ sb $zero, %lo(D_8011D58E)($at) +/* 04E9FC 8004DDFC A020D58F */ sb $zero, %lo(D_8011D58F)($at) +/* 04EA00 8004DE00 AFA20024 */ sw $v0, 0x24($sp) +/* 04EA04 8004DE04 00002825 */ move $a1, $zero +/* 04EA08 8004DE08 0C010FB3 */ jal func_80043ECC +/* 04EA0C 8004DE0C 00003025 */ move $a2, $zero +/* 04EA10 8004DE10 8FA20024 */ lw $v0, 0x24($sp) +/* 04EA14 8004DE14 3C018012 */ lui $at, %hi(D_8011D583) # $at, 0x8012 +/* 04EA18 8004DE18 A022D583 */ sb $v0, %lo(D_8011D583)($at) +/* 04EA1C 8004DE1C 3C018012 */ lui $at, %hi(D_8011D585) # $at, 0x8012 +/* 04EA20 8004DE20 A020D585 */ sb $zero, %lo(D_8011D585)($at) +/* 04EA24 8004DE24 A200020A */ sb $zero, 0x20a($s0) +/* 04EA28 8004DE28 8FBF001C */ lw $ra, 0x1c($sp) +/* 04EA2C 8004DE2C 8FB00018 */ lw $s0, 0x18($sp) +/* 04EA30 8004DE30 03E00008 */ jr $ra +/* 04EA34 8004DE34 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_043920/func_8004DE38.s b/asm/non_matchings/unknown_043920/func_8004DE38.s new file mode 100644 index 00000000..f7edd30e --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8004DE38.s @@ -0,0 +1,1746 @@ +glabel func_8004DE38 +/* 04EA38 8004DE38 27BDFF50 */ addiu $sp, $sp, -0xb0 +/* 04EA3C 8004DE3C AFBF002C */ sw $ra, 0x2c($sp) +/* 04EA40 8004DE40 AFB10028 */ sw $s1, 0x28($sp) +/* 04EA44 8004DE44 00808825 */ move $s1, $a0 +/* 04EA48 8004DE48 AFB00024 */ sw $s0, 0x24($sp) +/* 04EA4C 8004DE4C 0C019884 */ jal func_80066210 +/* 04EA50 8004DE50 AFA500B4 */ sw $a1, 0xb4($sp) +/* 04EA54 8004DE54 244E0001 */ addiu $t6, $v0, 1 +/* 04EA58 8004DE58 3C01800E */ lui $at, %hi(D_800DCB98) # $at, 0x800e +/* 04EA5C 8004DE5C AC2ECB98 */ sw $t6, %lo(D_800DCB98)($at) +/* 04EA60 8004DE60 3C018012 */ lui $at, %hi(D_8011D581) # $at, 0x8012 +/* 04EA64 8004DE64 0C0044E7 */ jal func_8001139C +/* 04EA68 8004DE68 A020D581 */ sb $zero, %lo(D_8011D581)($at) +/* 04EA6C 8004DE6C 3C014049 */ li $at, 0x40490000 # 3.140625 +/* 04EA70 8004DE70 44811800 */ mtc1 $at, $f3 +/* 04EA74 8004DE74 3C018012 */ lui $at, %hi(D_8011D540) # $at, 0x8012 +/* 04EA78 8004DE78 8FA300B4 */ lw $v1, 0xb4($sp) +/* 04EA7C 8004DE7C AC22D540 */ sw $v0, %lo(D_8011D540)($at) +/* 04EA80 8004DE80 C626001C */ lwc1 $f6, 0x1c($s1) +/* 04EA84 8004DE84 44801000 */ mtc1 $zero, $f2 +/* 04EA88 8004DE88 44832000 */ mtc1 $v1, $f4 +/* 04EA8C 8004DE8C 46003221 */ cvt.d.s $f8, $f6 +/* 04EA90 8004DE90 46802420 */ cvt.s.w $f16, $f4 +/* 04EA94 8004DE94 8E300064 */ lw $s0, 0x64($s1) +/* 04EA98 8004DE98 44800000 */ mtc1 $zero, $f0 +/* 04EA9C 8004DE9C 4628103C */ c.lt.d $f2, $f8 +/* 04EAA0 8004DEA0 46008486 */ mov.s $f18, $f16 +/* 04EAA4 8004DEA4 45000004 */ bc1f .L8004DEB8 +/* 04EAA8 8004DEA8 3C014248 */ li $at, 0x42480000 # 50.000000 +/* 04EAAC 8004DEAC 44817000 */ mtc1 $at, $f14 +/* 04EAB0 8004DEB0 00000000 */ nop +/* 04EAB4 8004DEB4 E62E001C */ swc1 $f14, 0x1c($s1) +.L8004DEB8: +/* 04EAB8 8004DEB8 C62A0020 */ lwc1 $f10, 0x20($s1) +/* 04EABC 8004DEBC 3C014248 */ li $at, 0x42480000 # 50.000000 +/* 04EAC0 8004DEC0 46005121 */ cvt.d.s $f4, $f10 +/* 04EAC4 8004DEC4 4624103C */ c.lt.d $f2, $f4 +/* 04EAC8 8004DEC8 44817000 */ mtc1 $at, $f14 +/* 04EACC 8004DECC 45000002 */ bc1f .L8004DED8 +/* 04EAD0 8004DED0 3C01C049 */ li $at, 0xC0490000 # -3.140625 +/* 04EAD4 8004DED4 E62E0020 */ swc1 $f14, 0x20($s1) +.L8004DED8: +/* 04EAD8 8004DED8 C6260024 */ lwc1 $f6, 0x24($s1) +/* 04EADC 8004DEDC 3C188000 */ lui $t8, %hi(D_80000300) # $t8, 0x8000 +/* 04EAE0 8004DEE0 46003221 */ cvt.d.s $f8, $f6 +/* 04EAE4 8004DEE4 4628103C */ c.lt.d $f2, $f8 +/* 04EAE8 8004DEE8 00000000 */ nop +/* 04EAEC 8004DEEC 45000002 */ bc1f .L8004DEF8 +/* 04EAF0 8004DEF0 00000000 */ nop +/* 04EAF4 8004DEF4 E62E0024 */ swc1 $f14, 0x24($s1) +.L8004DEF8: +/* 04EAF8 8004DEF8 C62A001C */ lwc1 $f10, 0x1c($s1) +/* 04EAFC 8004DEFC 44810800 */ mtc1 $at, $f1 +/* 04EB00 8004DF00 46005121 */ cvt.d.s $f4, $f10 +/* 04EB04 8004DF04 4620203C */ c.lt.d $f4, $f0 +/* 04EB08 8004DF08 00000000 */ nop +/* 04EB0C 8004DF0C 45000004 */ bc1f .L8004DF20 +/* 04EB10 8004DF10 3C01C248 */ li $at, 0xC2480000 # -50.000000 +/* 04EB14 8004DF14 44816000 */ mtc1 $at, $f12 +/* 04EB18 8004DF18 00000000 */ nop +/* 04EB1C 8004DF1C E62C001C */ swc1 $f12, 0x1c($s1) +.L8004DF20: +/* 04EB20 8004DF20 C6260020 */ lwc1 $f6, 0x20($s1) +/* 04EB24 8004DF24 3C01C248 */ li $at, 0xC2480000 # -50.000000 +/* 04EB28 8004DF28 46003221 */ cvt.d.s $f8, $f6 +/* 04EB2C 8004DF2C 4620403C */ c.lt.d $f8, $f0 +/* 04EB30 8004DF30 44816000 */ mtc1 $at, $f12 +/* 04EB34 8004DF34 45000002 */ bc1f .L8004DF40 +/* 04EB38 8004DF38 3C01BFF0 */ li $at, 0xBFF00000 # -1.875000 +/* 04EB3C 8004DF3C E62C0020 */ swc1 $f12, 0x20($s1) +.L8004DF40: +/* 04EB40 8004DF40 C62A0024 */ lwc1 $f10, 0x24($s1) +/* 04EB44 8004DF44 00000000 */ nop +/* 04EB48 8004DF48 46005121 */ cvt.d.s $f4, $f10 +/* 04EB4C 8004DF4C 4620203C */ c.lt.d $f4, $f0 +/* 04EB50 8004DF50 00000000 */ nop +/* 04EB54 8004DF54 45000002 */ bc1f .L8004DF60 +/* 04EB58 8004DF58 00000000 */ nop +/* 04EB5C 8004DF5C E62C0024 */ swc1 $f12, 0x24($s1) +.L8004DF60: +/* 04EB60 8004DF60 C606002C */ lwc1 $f6, 0x2c($s0) +/* 04EB64 8004DF64 00000000 */ nop +/* 04EB68 8004DF68 46003221 */ cvt.d.s $f8, $f6 +/* 04EB6C 8004DF6C 4628103C */ c.lt.d $f2, $f8 +/* 04EB70 8004DF70 00000000 */ nop +/* 04EB74 8004DF74 45000002 */ bc1f .L8004DF80 +/* 04EB78 8004DF78 00000000 */ nop +/* 04EB7C 8004DF7C E60E002C */ swc1 $f14, 0x2c($s0) +.L8004DF80: +/* 04EB80 8004DF80 C60A0030 */ lwc1 $f10, 0x30($s0) +/* 04EB84 8004DF84 00000000 */ nop +/* 04EB88 8004DF88 46005121 */ cvt.d.s $f4, $f10 +/* 04EB8C 8004DF8C 4624103C */ c.lt.d $f2, $f4 +/* 04EB90 8004DF90 00000000 */ nop +/* 04EB94 8004DF94 45000002 */ bc1f .L8004DFA0 +/* 04EB98 8004DF98 00000000 */ nop +/* 04EB9C 8004DF9C E60E0030 */ swc1 $f14, 0x30($s0) +.L8004DFA0: +/* 04EBA0 8004DFA0 C606002C */ lwc1 $f6, 0x2c($s0) +/* 04EBA4 8004DFA4 00000000 */ nop +/* 04EBA8 8004DFA8 46003221 */ cvt.d.s $f8, $f6 +/* 04EBAC 8004DFAC 4620403C */ c.lt.d $f8, $f0 +/* 04EBB0 8004DFB0 44814800 */ mtc1 $at, $f9 +/* 04EBB4 8004DFB4 45000002 */ bc1f .L8004DFC0 +/* 04EBB8 8004DFB8 00000000 */ nop +/* 04EBBC 8004DFBC E60C002C */ swc1 $f12, 0x2c($s0) +.L8004DFC0: +/* 04EBC0 8004DFC0 C60A0030 */ lwc1 $f10, 0x30($s0) +/* 04EBC4 8004DFC4 3C01BF80 */ li $at, 0xBF800000 # -1.000000 +/* 04EBC8 8004DFC8 46005121 */ cvt.d.s $f4, $f10 +/* 04EBCC 8004DFCC 4620203C */ c.lt.d $f4, $f0 +/* 04EBD0 8004DFD0 00000000 */ nop +/* 04EBD4 8004DFD4 45000002 */ bc1f .L8004DFE0 +/* 04EBD8 8004DFD8 00000000 */ nop +/* 04EBDC 8004DFDC E60C0030 */ swc1 $f12, 0x30($s0) +.L8004DFE0: +/* 04EBE0 8004DFE0 C60600A8 */ lwc1 $f6, 0xa8($s0) +/* 04EBE4 8004DFE4 44804000 */ mtc1 $zero, $f8 +/* 04EBE8 8004DFE8 46003021 */ cvt.d.s $f0, $f6 +/* 04EBEC 8004DFEC 4628003C */ c.lt.d $f0, $f8 +/* 04EBF0 8004DFF0 44803000 */ mtc1 $zero, $f6 +/* 04EBF4 8004DFF4 45000007 */ bc1f .L8004E014 +/* 04EBF8 8004DFF8 00000000 */ nop +/* 04EBFC 8004DFFC 44815000 */ mtc1 $at, $f10 +/* 04EC00 8004E000 00000000 */ nop +/* 04EC04 8004E004 E60A00A8 */ swc1 $f10, 0xa8($s0) +/* 04EC08 8004E008 C60400A8 */ lwc1 $f4, 0xa8($s0) +/* 04EC0C 8004E00C 00000000 */ nop +/* 04EC10 8004E010 46002021 */ cvt.d.s $f0, $f4 +.L8004E014: +/* 04EC14 8004E014 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 04EC18 8004E018 44813800 */ mtc1 $at, $f7 +/* 04EC1C 8004E01C 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 04EC20 8004E020 4620303C */ c.lt.d $f6, $f0 +/* 04EC24 8004E024 00000000 */ nop +/* 04EC28 8004E028 45000004 */ bc1f .L8004E03C +/* 04EC2C 8004E02C 00000000 */ nop +/* 04EC30 8004E030 44814000 */ mtc1 $at, $f8 +/* 04EC34 8004E034 00000000 */ nop +/* 04EC38 8004E038 E60800A8 */ swc1 $f8, 0xa8($s0) +.L8004E03C: +/* 04EC3C 8004E03C 920F01FE */ lbu $t7, 0x1fe($s0) +/* 04EC40 8004E040 24010001 */ li $at, 1 +/* 04EC44 8004E044 15E10002 */ bne $t7, $at, .L8004E050 +/* 04EC48 8004E048 00000000 */ nop +/* 04EC4C 8004E04C A20001F1 */ sb $zero, 0x1f1($s0) +.L8004E050: +/* 04EC50 8004E050 8F180300 */ lw $t8, %lo(D_80000300)($t8) +/* 04EC54 8004E054 3C01800E */ lui $at, %hi(D_800E6594) # $at, 0x800e +/* 04EC58 8004E058 17000006 */ bnez $t8, .L8004E074 +/* 04EC5C 8004E05C 00000000 */ nop +/* 04EC60 8004E060 C4256590 */ lwc1 $f5, %lo(D_800E6590)($at) +/* 04EC64 8004E064 C4246594 */ lwc1 $f4, %lo(D_800E6594)($at) +/* 04EC68 8004E068 460082A1 */ cvt.d.s $f10, $f16 +/* 04EC6C 8004E06C 46245182 */ mul.d $f6, $f10, $f4 +/* 04EC70 8004E070 462034A0 */ cvt.s.d $f18, $f6 +.L8004E074: +/* 04EC74 8004E074 821901F6 */ lb $t9, 0x1f6($s0) +/* 04EC78 8004E078 00000000 */ nop +/* 04EC7C 8004E07C 03234023 */ subu $t0, $t9, $v1 +/* 04EC80 8004E080 A20801F6 */ sb $t0, 0x1f6($s0) +/* 04EC84 8004E084 820901F6 */ lb $t1, 0x1f6($s0) +/* 04EC88 8004E088 00000000 */ nop +/* 04EC8C 8004E08C 05210002 */ bgez $t1, .L8004E098 +/* 04EC90 8004E090 00000000 */ nop +/* 04EC94 8004E094 A20001F6 */ sb $zero, 0x1f6($s0) +.L8004E098: +/* 04EC98 8004E098 AE200074 */ sw $zero, 0x74($s1) +/* 04EC9C 8004E09C 82020201 */ lb $v0, 0x201($s0) +/* 04ECA0 8004E0A0 00000000 */ nop +/* 04ECA4 8004E0A4 18400003 */ blez $v0, .L8004E0B4 +/* 04ECA8 8004E0A8 00435023 */ subu $t2, $v0, $v1 +/* 04ECAC 8004E0AC 10000002 */ b .L8004E0B8 +/* 04ECB0 8004E0B0 A20A0201 */ sb $t2, 0x201($s0) +.L8004E0B4: +/* 04ECB4 8004E0B4 A2000201 */ sb $zero, 0x201($s0) +.L8004E0B8: +/* 04ECB8 8004E0B8 0C01AF6C */ jal func_8006BDB0 +/* 04ECBC 8004E0BC E7B2009C */ swc1 $f18, 0x9c($sp) +/* 04ECC0 8004E0C0 AFA2007C */ sw $v0, 0x7c($sp) +/* 04ECC4 8004E0C4 C4480008 */ lwc1 $f8, 8($v0) +/* 04ECC8 8004E0C8 3C018012 */ lui $at, %hi(D_8011D4F0) # $at, 0x8012 +/* 04ECCC 8004E0CC E428D4F0 */ swc1 $f8, %lo(D_8011D4F0)($at) +/* 04ECD0 8004E0D0 86030000 */ lh $v1, ($s0) +/* 04ECD4 8004E0D4 2401FFFF */ li $at, -1 +/* 04ECD8 8004E0D8 14610008 */ bne $v1, $at, .L8004E0FC +/* 04ECDC 8004E0DC A200020C */ sb $zero, 0x20c($s0) +/* 04ECE0 8004E0E0 8FA600B4 */ lw $a2, 0xb4($sp) +/* 04ECE4 8004E0E4 8FA7009C */ lw $a3, 0x9c($sp) +/* 04ECE8 8004E0E8 02202025 */ move $a0, $s1 +/* 04ECEC 8004E0EC 0C0169BC */ jal func_8005A6F0 +/* 04ECF0 8004E0F0 02002825 */ move $a1, $s0 +/* 04ECF4 8004E0F4 1000059D */ b .L8004F76C +/* 04ECF8 8004E0F8 8FBF002C */ lw $ra, 0x2c($sp) +.L8004E0FC: +/* 04ECFC 8004E0FC 3C0B8012 */ lui $t3, %hi(D_8011D540) # $t3, 0x8012 +/* 04ED00 8004E100 8D6BD540 */ lw $t3, %lo(D_8011D540)($t3) +/* 04ED04 8004E104 00000000 */ nop +/* 04ED08 8004E108 15600017 */ bnez $t3, .L8004E168 +/* 04ED0C 8004E10C 00002025 */ move $a0, $zero +/* 04ED10 8004E110 14600015 */ bnez $v1, .L8004E168 +/* 04ED14 8004E114 00002025 */ move $a0, $zero +/* 04ED18 8004E118 0C0270C3 */ jal func_8009C30C +/* 04ED1C 8004E11C 00000000 */ nop +/* 04ED20 8004E120 304C0200 */ andi $t4, $v0, 0x200 +/* 04ED24 8004E124 1180000F */ beqz $t4, .L8004E164 +/* 04ED28 8004E128 3C04800E */ lui $a0, %hi(D_800E6280) # $a0, 0x800e +/* 04ED2C 8004E12C C6260010 */ lwc1 $f6, 0x10($s1) +/* 04ED30 8004E130 C62A000C */ lwc1 $f10, 0xc($s1) +/* 04ED34 8004E134 46003221 */ cvt.d.s $f8, $f6 +/* 04ED38 8004E138 46005121 */ cvt.d.s $f4, $f10 +/* 04ED3C 8004E13C E7A80014 */ swc1 $f8, 0x14($sp) +/* 04ED40 8004E140 E7A90010 */ swc1 $f9, 0x10($sp) +/* 04ED44 8004E144 C62A0014 */ lwc1 $f10, 0x14($s1) +/* 04ED48 8004E148 44072000 */ mfc1 $a3, $f4 +/* 04ED4C 8004E14C 44062800 */ mfc1 $a2, $f5 +/* 04ED50 8004E150 46005121 */ cvt.d.s $f4, $f10 +/* 04ED54 8004E154 E7A4001C */ swc1 $f4, 0x1c($sp) +/* 04ED58 8004E158 E7A50018 */ swc1 $f5, 0x18($sp) +/* 04ED5C 8004E15C 0C02D7B7 */ jal func_800B5EDC +/* 04ED60 8004E160 24846280 */ addiu $a0, %lo(D_800E6280) # addiu $a0, $a0, 0x6280 +.L8004E164: +/* 04ED64 8004E164 00002025 */ move $a0, $zero +.L8004E168: +/* 04ED68 8004E168 00002825 */ move $a1, $zero +/* 04ED6C 8004E16C 00003025 */ move $a2, $zero +/* 04ED70 8004E170 0C02D8AD */ jal func_800B62B4 +/* 04ED74 8004E174 24070080 */ li $a3, 128 +/* 04ED78 8004E178 0C008D07 */ jal func_8002341C +/* 04ED7C 8004E17C 00000000 */ nop +/* 04ED80 8004E180 10400002 */ beqz $v0, .L8004E18C +/* 04ED84 8004E184 3C018012 */ lui $at, %hi(D_8011D586) # $at, 0x8012 +/* 04ED88 8004E188 A420D586 */ sh $zero, %lo(D_8011D586)($at) +.L8004E18C: +/* 04ED8C 8004E18C 0C01B683 */ jal func_8006DA0C +/* 04ED90 8004E190 00000000 */ nop +/* 04ED94 8004E194 3C0D8012 */ lui $t5, %hi(D_8011D540) # $t5, 0x8012 +/* 04ED98 8004E198 8DADD540 */ lw $t5, %lo(D_8011D540)($t5) +/* 04ED9C 8004E19C AFA200A4 */ sw $v0, 0xa4($sp) +/* 04EDA0 8004E1A0 15A00010 */ bnez $t5, .L8004E1E4 +/* 04EDA4 8004E1A4 3C028012 */ lui $v0, %hi(D_8011D544) # $v0, 0x8012 +/* 04EDA8 8004E1A8 2442D544 */ addiu $v0, %lo(D_8011D544) # addiu $v0, $v0, -0x2abc +/* 04EDAC 8004E1AC C4400000 */ lwc1 $f0, ($v0) +/* 04EDB0 8004E1B0 44803800 */ mtc1 $zero, $f7 +/* 04EDB4 8004E1B4 44803000 */ mtc1 $zero, $f6 +/* 04EDB8 8004E1B8 46000221 */ cvt.d.s $f8, $f0 +/* 04EDBC 8004E1BC 4628303C */ c.lt.d $f6, $f8 +/* 04EDC0 8004E1C0 C7AA009C */ lwc1 $f10, 0x9c($sp) +/* 04EDC4 8004E1C4 45000004 */ bc1f .L8004E1D8 +/* 04EDC8 8004E1C8 00000000 */ nop +/* 04EDCC 8004E1CC 460A0101 */ sub.s $f4, $f0, $f10 +/* 04EDD0 8004E1D0 10000009 */ b .L8004E1F8 +/* 04EDD4 8004E1D4 E4440000 */ swc1 $f4, ($v0) +.L8004E1D8: +/* 04EDD8 8004E1D8 44803000 */ mtc1 $zero, $f6 +/* 04EDDC 8004E1DC 10000006 */ b .L8004E1F8 +/* 04EDE0 8004E1E0 E4460000 */ swc1 $f6, ($v0) +.L8004E1E4: +/* 04EDE4 8004E1E4 2404FFC4 */ li $a0, -60 +/* 04EDE8 8004E1E8 0C01BE53 */ jal func_8006F94C +/* 04EDEC 8004E1EC 2405003C */ li $a1, 60 +/* 04EDF0 8004E1F0 244E0078 */ addiu $t6, $v0, 0x78 +/* 04EDF4 8004E1F4 A60E01C6 */ sh $t6, 0x1c6($s0) +.L8004E1F8: +/* 04EDF8 8004E1F8 8602018C */ lh $v0, 0x18c($s0) +/* 04EDFC 8004E1FC 00000000 */ nop +/* 04EE00 8004E200 18400006 */ blez $v0, .L8004E21C +/* 04EE04 8004E204 00000000 */ nop +/* 04EE08 8004E208 8FAF00B4 */ lw $t7, 0xb4($sp) +/* 04EE0C 8004E20C 00000000 */ nop +/* 04EE10 8004E210 004FC023 */ subu $t8, $v0, $t7 +/* 04EE14 8004E214 10000002 */ b .L8004E220 +/* 04EE18 8004E218 A618018C */ sh $t8, 0x18c($s0) +.L8004E21C: +/* 04EE1C 8004E21C A600018C */ sh $zero, 0x18c($s0) +.L8004E220: +/* 04EE20 8004E220 0C0078A7 */ jal func_8001E29C +/* 04EE24 8004E224 24040009 */ li $a0, 9 +/* 04EE28 8004E228 3C058012 */ lui $a1, %hi(D_8011D564) # $a1, 0x8012 +/* 04EE2C 8004E22C 24A5D564 */ addiu $a1, %lo(D_8011D564) # addiu $a1, $a1, -0x2a9c +/* 04EE30 8004E230 ACA20000 */ sw $v0, ($a1) +/* 04EE34 8004E234 82080003 */ lb $t0, 3($s0) +/* 04EE38 8004E238 3C01800E */ lui $at, %hi(D_800E659C) # $at, 0x800e +/* 04EE3C 8004E23C 00084880 */ sll $t1, $t0, 2 +/* 04EE40 8004E240 00495021 */ addu $t2, $v0, $t1 +/* 04EE44 8004E244 C5480000 */ lwc1 $f8, ($t2) +/* 04EE48 8004E248 C4256598 */ lwc1 $f5, %lo(D_800E6598)($at) +/* 04EE4C 8004E24C C424659C */ lwc1 $f4, %lo(D_800E659C)($at) +/* 04EE50 8004E250 460042A1 */ cvt.d.s $f10, $f8 +/* 04EE54 8004E254 46245182 */ mul.d $f6, $f10, $f4 +/* 04EE58 8004E258 3C038012 */ lui $v1, %hi(D_8011D56C) # $v1, 0x8012 +/* 04EE5C 8004E25C 2463D56C */ addiu $v1, %lo(D_8011D56C) # addiu $v1, $v1, -0x2a94 +/* 04EE60 8004E260 46203220 */ cvt.s.d $f8, $f6 +/* 04EE64 8004E264 E4680000 */ swc1 $f8, ($v1) +/* 04EE68 8004E268 860B0204 */ lh $t3, 0x204($s0) +/* 04EE6C 8004E26C 00000000 */ nop +/* 04EE70 8004E270 19600004 */ blez $t3, .L8004E284 +/* 04EE74 8004E274 3C01800E */ lui $at, %hi(D_800E65A0) # $at, 0x800e +/* 04EE78 8004E278 C42A65A0 */ lwc1 $f10, %lo(D_800E65A0)($at) +/* 04EE7C 8004E27C 00000000 */ nop +/* 04EE80 8004E280 E46A0000 */ swc1 $f10, ($v1) +.L8004E284: +/* 04EE84 8004E284 0C0078A7 */ jal func_8001E29C +/* 04EE88 8004E288 2404000A */ li $a0, 10 +/* 04EE8C 8004E28C 3C058012 */ lui $a1, %hi(D_8011D564) # $a1, 0x8012 +/* 04EE90 8004E290 24A5D564 */ addiu $a1, %lo(D_8011D564) # addiu $a1, $a1, -0x2a9c +/* 04EE94 8004E294 ACA20000 */ sw $v0, ($a1) +/* 04EE98 8004E298 820D0003 */ lb $t5, 3($s0) +/* 04EE9C 8004E29C 3C018012 */ lui $at, %hi(D_8011D570) # $at, 0x8012 +/* 04EEA0 8004E2A0 000D7080 */ sll $t6, $t5, 2 +/* 04EEA4 8004E2A4 004E7821 */ addu $t7, $v0, $t6 +/* 04EEA8 8004E2A8 C5E40000 */ lwc1 $f4, ($t7) +/* 04EEAC 8004E2AC 2404000B */ li $a0, 11 +/* 04EEB0 8004E2B0 0C0078A7 */ jal func_8001E29C +/* 04EEB4 8004E2B4 E424D570 */ swc1 $f4, %lo(D_8011D570)($at) +/* 04EEB8 8004E2B8 3C018012 */ lui $at, %hi(D_8011D564) # $at, 0x8012 +/* 04EEBC 8004E2BC AC22D564 */ sw $v0, %lo(D_8011D564)($at) +/* 04EEC0 8004E2C0 82080003 */ lb $t0, 3($s0) +/* 04EEC4 8004E2C4 3C188012 */ lui $t8, %hi(D_8011D564) # $t8, 0x8012 +/* 04EEC8 8004E2C8 8F18D564 */ lw $t8, %lo(D_8011D564)($t8) +/* 04EECC 8004E2CC 0008C880 */ sll $t9, $t0, 2 +/* 04EED0 8004E2D0 03194821 */ addu $t1, $t8, $t9 +/* 04EED4 8004E2D4 C5260000 */ lwc1 $f6, ($t1) +/* 04EED8 8004E2D8 3C018012 */ lui $at, %hi(D_8011D574) # $at, 0x8012 +/* 04EEDC 8004E2DC E426D574 */ swc1 $f6, %lo(D_8011D574)($at) +/* 04EEE0 8004E2E0 920401FE */ lbu $a0, 0x1fe($s0) +/* 04EEE4 8004E2E4 3C038012 */ lui $v1, %hi(D_8011D56C) # $v1, 0x8012 +/* 04EEE8 8004E2E8 24010003 */ li $at, 3 +/* 04EEEC 8004E2EC 14810011 */ bne $a0, $at, .L8004E334 +/* 04EEF0 8004E2F0 2463D56C */ addiu $v1, %lo(D_8011D56C) # addiu $v1, $v1, -0x2a94 +/* 04EEF4 8004E2F4 920A01FF */ lbu $t2, 0x1ff($s0) +/* 04EEF8 8004E2F8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 04EEFC 8004E2FC 448A4000 */ mtc1 $t2, $f8 +/* 04EF00 8004E300 05410004 */ bgez $t2, .L8004E314 +/* 04EF04 8004E304 468042A0 */ cvt.s.w $f10, $f8 +/* 04EF08 8004E308 44812000 */ mtc1 $at, $f4 +/* 04EF0C 8004E30C 00000000 */ nop +/* 04EF10 8004E310 46045280 */ add.s $f10, $f10, $f4 +.L8004E314: +/* 04EF14 8004E314 3C014380 */ li $at, 0x43800000 # 256.000000 +/* 04EF18 8004E318 44813000 */ mtc1 $at, $f6 +/* 04EF1C 8004E31C C4640000 */ lwc1 $f4, ($v1) +/* 04EF20 8004E320 46065203 */ div.s $f8, $f10, $f6 +/* 04EF24 8004E324 46082282 */ mul.s $f10, $f4, $f8 +/* 04EF28 8004E328 E46A0000 */ swc1 $f10, ($v1) +/* 04EF2C 8004E32C 920401FE */ lbu $a0, 0x1fe($s0) +/* 04EF30 8004E330 00000000 */ nop +.L8004E334: +/* 04EF34 8004E334 24010001 */ li $at, 1 +/* 04EF38 8004E338 14810019 */ bne $a0, $at, .L8004E3A0 +/* 04EF3C 8004E33C 00000000 */ nop +/* 04EF40 8004E340 920B01FF */ lbu $t3, 0x1ff($s0) +/* 04EF44 8004E344 C4600000 */ lwc1 $f0, ($v1) +/* 04EF48 8004E348 448B3000 */ mtc1 $t3, $f6 +/* 04EF4C 8004E34C 05610005 */ bgez $t3, .L8004E364 +/* 04EF50 8004E350 46803120 */ cvt.s.w $f4, $f6 +/* 04EF54 8004E354 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 04EF58 8004E358 44814000 */ mtc1 $at, $f8 +/* 04EF5C 8004E35C 00000000 */ nop +/* 04EF60 8004E360 46082100 */ add.s $f4, $f4, $f8 +.L8004E364: +/* 04EF64 8004E364 46040282 */ mul.s $f10, $f0, $f4 +/* 04EF68 8004E368 3C014300 */ li $at, 0x43000000 # 128.000000 +/* 04EF6C 8004E36C 44813000 */ mtc1 $at, $f6 +/* 04EF70 8004E370 00000000 */ nop +/* 04EF74 8004E374 46065203 */ div.s $f8, $f10, $f6 +/* 04EF78 8004E378 46080101 */ sub.s $f4, $f0, $f8 +/* 04EF7C 8004E37C E4640000 */ swc1 $f4, ($v1) +/* 04EF80 8004E380 860D0204 */ lh $t5, 0x204($s0) +/* 04EF84 8004E384 00000000 */ nop +/* 04EF88 8004E388 19A00005 */ blez $t5, .L8004E3A0 +/* 04EF8C 8004E38C 00000000 */ nop +/* 04EF90 8004E390 C46A0000 */ lwc1 $f10, ($v1) +/* 04EF94 8004E394 00000000 */ nop +/* 04EF98 8004E398 46005187 */ neg.s $f6, $f10 +/* 04EF9C 8004E39C E4660000 */ swc1 $f6, ($v1) +.L8004E3A0: +/* 04EFA0 8004E3A0 920C01FE */ lbu $t4, 0x1fe($s0) +/* 04EFA4 8004E3A4 24010002 */ li $at, 2 +/* 04EFA8 8004E3A8 1581002F */ bne $t4, $at, .L8004E468 +/* 04EFAC 8004E3AC 00000000 */ nop +/* 04EFB0 8004E3B0 920E01FF */ lbu $t6, 0x1ff($s0) +/* 04EFB4 8004E3B4 00000000 */ nop +/* 04EFB8 8004E3B8 000E7E00 */ sll $t7, $t6, 0x18 +/* 04EFBC 8004E3BC 0C01C1F1 */ jal func_800707C4 +/* 04EFC0 8004E3C0 000F2403 */ sra $a0, $t7, 0x10 +/* 04EFC4 8004E3C4 3C013FB0 */ li $at, 0x3FB00000 # 1.375000 +/* 04EFC8 8004E3C8 44816800 */ mtc1 $at, $f13 +/* 04EFCC 8004E3CC 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 04EFD0 8004E3D0 44815000 */ mtc1 $at, $f10 +/* 04EFD4 8004E3D4 C7A8009C */ lwc1 $f8, 0x9c($sp) +/* 04EFD8 8004E3D8 460A0182 */ mul.s $f6, $f0, $f10 +/* 04EFDC 8004E3DC C6020084 */ lwc1 $f2, 0x84($s0) +/* 04EFE0 8004E3E0 460043A1 */ cvt.d.s $f14, $f8 +/* 04EFE4 8004E3E4 44806000 */ mtc1 $zero, $f12 +/* 04EFE8 8004E3E8 46023201 */ sub.s $f8, $f6, $f2 +/* 04EFEC 8004E3EC 921801FF */ lbu $t8, 0x1ff($s0) +/* 04EFF0 8004E3F0 460042A1 */ cvt.d.s $f10, $f8 +/* 04EFF4 8004E3F4 462C5182 */ mul.d $f6, $f10, $f12 +/* 04EFF8 8004E3F8 46001121 */ cvt.d.s $f4, $f2 +/* 04EFFC 8004E3FC 0018CE00 */ sll $t9, $t8, 0x18 +/* 04F000 8004E400 00192403 */ sra $a0, $t9, 0x10 +/* 04F004 8004E404 462E3202 */ mul.d $f8, $f6, $f14 +/* 04F008 8004E408 46282280 */ add.d $f10, $f4, $f8 +/* 04F00C 8004E40C 462051A0 */ cvt.s.d $f6, $f10 +/* 04F010 8004E410 E6060084 */ swc1 $f6, 0x84($s0) +/* 04F014 8004E414 E7AE0054 */ swc1 $f14, 0x54($sp) +/* 04F018 8004E418 0C01C1FE */ jal func_800707F8 +/* 04F01C 8004E41C E7AF0050 */ swc1 $f15, 0x50($sp) +/* 04F020 8004E420 3C013FB0 */ li $at, 0x3FB00000 # 1.375000 +/* 04F024 8004E424 44816800 */ mtc1 $at, $f13 +/* 04F028 8004E428 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 04F02C 8004E42C 44812000 */ mtc1 $at, $f4 +/* 04F030 8004E430 C6020088 */ lwc1 $f2, 0x88($s0) +/* 04F034 8004E434 46040202 */ mul.s $f8, $f0, $f4 +/* 04F038 8004E438 44806000 */ mtc1 $zero, $f12 +/* 04F03C 8004E43C C7A90050 */ lwc1 $f9, 0x50($sp) +/* 04F040 8004E440 46024281 */ sub.s $f10, $f8, $f2 +/* 04F044 8004E444 C7A80054 */ lwc1 $f8, 0x54($sp) +/* 04F048 8004E448 460051A1 */ cvt.d.s $f6, $f10 +/* 04F04C 8004E44C 462C3102 */ mul.d $f4, $f6, $f12 +/* 04F050 8004E450 460011A1 */ cvt.d.s $f6, $f2 +/* 04F054 8004E454 46282282 */ mul.d $f10, $f4, $f8 +/* 04F058 8004E458 462A3100 */ add.d $f4, $f6, $f10 +/* 04F05C 8004E45C 46202220 */ cvt.s.d $f8, $f4 +/* 04F060 8004E460 10000018 */ b .L8004E4C4 +/* 04F064 8004E464 E6080088 */ swc1 $f8, 0x88($s0) +.L8004E468: +/* 04F068 8004E468 C6060084 */ lwc1 $f6, 0x84($s0) +/* 04F06C 8004E46C 3C013FB0 */ li $at, 0x3FB00000 # 1.375000 +/* 04F070 8004E470 44816800 */ mtc1 $at, $f13 +/* 04F074 8004E474 44806000 */ mtc1 $zero, $f12 +/* 04F078 8004E478 46003021 */ cvt.d.s $f0, $f6 +/* 04F07C 8004E47C 462C0102 */ mul.d $f4, $f0, $f12 +/* 04F080 8004E480 C7AA009C */ lwc1 $f10, 0x9c($sp) +/* 04F084 8004E484 00000000 */ nop +/* 04F088 8004E488 460053A1 */ cvt.d.s $f14, $f10 +/* 04F08C 8004E48C 462E2202 */ mul.d $f8, $f4, $f14 +/* 04F090 8004E490 C6040088 */ lwc1 $f4, 0x88($s0) +/* 04F094 8004E494 00000000 */ nop +/* 04F098 8004E498 460020A1 */ cvt.d.s $f2, $f4 +/* 04F09C 8004E49C 46280181 */ sub.d $f6, $f0, $f8 +/* 04F0A0 8004E4A0 462C1202 */ mul.d $f8, $f2, $f12 +/* 04F0A4 8004E4A4 462032A0 */ cvt.s.d $f10, $f6 +/* 04F0A8 8004E4A8 E60A0084 */ swc1 $f10, 0x84($s0) +/* 04F0AC 8004E4AC 462E4182 */ mul.d $f6, $f8, $f14 +/* 04F0B0 8004E4B0 46261281 */ sub.d $f10, $f2, $f6 +/* 04F0B4 8004E4B4 46205120 */ cvt.s.d $f4, $f10 +/* 04F0B8 8004E4B8 E6040088 */ swc1 $f4, 0x88($s0) +/* 04F0BC 8004E4BC E7AE0054 */ swc1 $f14, 0x54($sp) +/* 04F0C0 8004E4C0 E7AF0050 */ swc1 $f15, 0x50($sp) +.L8004E4C4: +/* 04F0C4 8004E4C4 8E2A0040 */ lw $t2, 0x40($s1) +/* 04F0C8 8004E4C8 00000000 */ nop +/* 04F0CC 8004E4CC 9144005C */ lbu $a0, 0x5c($t2) +/* 04F0D0 8004E4D0 0C0078A7 */ jal func_8001E29C +/* 04F0D4 8004E4D4 00000000 */ nop +/* 04F0D8 8004E4D8 3C018012 */ lui $at, %hi(D_8011D564) # $at, 0x8012 +/* 04F0DC 8004E4DC AC22D564 */ sw $v0, %lo(D_8011D564)($at) +/* 04F0E0 8004E4E0 8E2B0040 */ lw $t3, 0x40($s1) +/* 04F0E4 8004E4E4 00000000 */ nop +/* 04F0E8 8004E4E8 9164005D */ lbu $a0, 0x5d($t3) +/* 04F0EC 8004E4EC 0C0078A7 */ jal func_8001E29C +/* 04F0F0 8004E4F0 00000000 */ nop +/* 04F0F4 8004E4F4 3C018012 */ lui $at, %hi(D_8011D568) # $at, 0x8012 +/* 04F0F8 8004E4F8 AC22D568 */ sw $v0, %lo(D_8011D568)($at) +/* 04F0FC 8004E4FC C6280020 */ lwc1 $f8, 0x20($s1) +/* 04F100 8004E500 3C014010 */ li $at, 0x40100000 # 2.250000 +/* 04F104 8004E504 44815800 */ mtc1 $at, $f11 +/* 04F108 8004E508 44805000 */ mtc1 $zero, $f10 +/* 04F10C 8004E50C 460041A1 */ cvt.d.s $f6, $f8 +/* 04F110 8004E510 462A303C */ c.lt.d $f6, $f10 +/* 04F114 8004E514 00000000 */ nop +/* 04F118 8004E518 4500000F */ bc1f .L8004E558 +/* 04F11C 8004E51C 00000000 */ nop +/* 04F120 8004E520 820D01E2 */ lb $t5, 0x1e2($s0) +/* 04F124 8004E524 00000000 */ nop +/* 04F128 8004E528 29A10003 */ slti $at, $t5, 3 +/* 04F12C 8004E52C 10200009 */ beqz $at, .L8004E554 +/* 04F130 8004E530 00000000 */ nop +/* 04F134 8004E534 C60800C0 */ lwc1 $f8, 0xc0($s0) +/* 04F138 8004E538 44802800 */ mtc1 $zero, $f5 +/* 04F13C 8004E53C 44802000 */ mtc1 $zero, $f4 +/* 04F140 8004E540 460041A1 */ cvt.d.s $f6, $f8 +/* 04F144 8004E544 46262032 */ c.eq.d $f4, $f6 +/* 04F148 8004E548 00000000 */ nop +/* 04F14C 8004E54C 45010002 */ bc1t .L8004E558 +/* 04F150 8004E550 00000000 */ nop +.L8004E554: +/* 04F154 8004E554 A20001F1 */ sb $zero, 0x1f1($s0) +.L8004E558: +/* 04F158 8004E558 C62A000C */ lwc1 $f10, 0xc($s1) +/* 04F15C 8004E55C 00000000 */ nop +/* 04F160 8004E560 E7AA0090 */ swc1 $f10, 0x90($sp) +/* 04F164 8004E564 C6280010 */ lwc1 $f8, 0x10($s1) +/* 04F168 8004E568 00000000 */ nop +/* 04F16C 8004E56C E7A8008C */ swc1 $f8, 0x8c($sp) +/* 04F170 8004E570 C6240014 */ lwc1 $f4, 0x14($s1) +/* 04F174 8004E574 00000000 */ nop +/* 04F178 8004E578 E7A40088 */ swc1 $f4, 0x88($sp) +/* 04F17C 8004E57C 860201B2 */ lh $v0, 0x1b2($s0) +/* 04F180 8004E580 00000000 */ nop +/* 04F184 8004E584 1840000A */ blez $v0, .L8004E5B0 +/* 04F188 8004E588 00000000 */ nop +/* 04F18C 8004E58C 8FAC00B4 */ lw $t4, 0xb4($sp) +/* 04F190 8004E590 00000000 */ nop +/* 04F194 8004E594 004C7023 */ subu $t6, $v0, $t4 +/* 04F198 8004E598 A60E01B2 */ sh $t6, 0x1b2($s0) +/* 04F19C 8004E59C 860F01B2 */ lh $t7, 0x1b2($s0) +/* 04F1A0 8004E5A0 00000000 */ nop +/* 04F1A4 8004E5A4 05E10002 */ bgez $t7, .L8004E5B0 +/* 04F1A8 8004E5A8 00000000 */ nop +/* 04F1AC 8004E5AC A60001B2 */ sh $zero, 0x1b2($s0) +.L8004E5B0: +/* 04F1B0 8004E5B0 86040000 */ lh $a0, ($s0) +/* 04F1B4 8004E5B4 0C01997A */ jal func_800665E8 +/* 04F1B8 8004E5B8 00000000 */ nop +/* 04F1BC 8004E5BC 0C01A73F */ jal func_80069CFC +/* 04F1C0 8004E5C0 00000000 */ nop +/* 04F1C4 8004E5C4 3C018012 */ lui $at, %hi(D_8011D508) # $at, 0x8012 +/* 04F1C8 8004E5C8 AC22D508 */ sw $v0, %lo(D_8011D508)($at) +/* 04F1CC 8004E5CC 820801E7 */ lb $t0, 0x1e7($s0) +/* 04F1D0 8004E5D0 86190000 */ lh $t9, ($s0) +/* 04F1D4 8004E5D4 25180001 */ addiu $t8, $t0, 1 +/* 04F1D8 8004E5D8 A21801E7 */ sb $t8, 0x1e7($s0) +/* 04F1DC 8004E5DC 3C018012 */ lui $at, %hi(D_8011D55C) # $at, 0x8012 +/* 04F1E0 8004E5E0 AC39D55C */ sw $t9, %lo(D_8011D55C)($at) +/* 04F1E4 8004E5E4 820901D8 */ lb $t1, 0x1d8($s0) +/* 04F1E8 8004E5E8 24070001 */ li $a3, 1 +/* 04F1EC 8004E5EC 10E90005 */ beq $a3, $t1, .L8004E604 +/* 04F1F0 8004E5F0 00000000 */ nop +/* 04F1F4 8004E5F4 8FAA00A4 */ lw $t2, 0xa4($sp) +/* 04F1F8 8004E5F8 00000000 */ nop +/* 04F1FC 8004E5FC 1547000A */ bne $t2, $a3, .L8004E628 +/* 04F200 8004E600 00000000 */ nop +.L8004E604: +/* 04F204 8004E604 860D018E */ lh $t5, 0x18e($s0) +/* 04F208 8004E608 240BFFFF */ li $t3, -1 +/* 04F20C 8004E60C 29A10006 */ slti $at, $t5, 6 +/* 04F210 8004E610 A20701CA */ sb $a3, 0x1ca($s0) +/* 04F214 8004E614 A60B0000 */ sh $t3, ($s0) +/* 04F218 8004E618 14200003 */ bnez $at, .L8004E628 +/* 04F21C 8004E61C A20001C9 */ sb $zero, 0x1c9($s0) +/* 04F220 8004E620 240C0005 */ li $t4, 5 +/* 04F224 8004E624 A60C018E */ sh $t4, 0x18e($s0) +.L8004E628: +/* 04F228 8004E628 86030000 */ lh $v1, ($s0) +/* 04F22C 8004E62C 2401FFFF */ li $at, -1 +/* 04F230 8004E630 10610030 */ beq $v1, $at, .L8004E6F4 +/* 04F234 8004E634 8FA600B4 */ lw $a2, 0xb4($sp) +/* 04F238 8004E638 8E0E0108 */ lw $t6, 0x108($s0) +/* 04F23C 8004E63C 8FA500B4 */ lw $a1, 0xb4($sp) +/* 04F240 8004E640 15C00027 */ bnez $t6, .L8004E6E0 +/* 04F244 8004E644 00000000 */ nop +/* 04F248 8004E648 0C003856 */ jal func_8000E158 +/* 04F24C 8004E64C AFA300AC */ sw $v1, 0xac($sp) +/* 04F250 8004E650 8FA600AC */ lw $a2, 0xac($sp) +/* 04F254 8004E654 10400002 */ beqz $v0, .L8004E660 +/* 04F258 8004E658 240F0001 */ li $t7, 1 +/* 04F25C 8004E65C 01E63023 */ subu $a2, $t7, $a2 +.L8004E660: +/* 04F260 8004E660 00C02025 */ move $a0, $a2 +/* 04F264 8004E664 0C01A967 */ jal func_8006A59C +/* 04F268 8004E668 AFA600AC */ sw $a2, 0xac($sp) +/* 04F26C 8004E66C 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 04F270 8004E670 0C0270C3 */ jal func_8009C30C +/* 04F274 8004E674 AC22D534 */ sw $v0, %lo(D_8011D534)($at) +/* 04F278 8004E678 8FA600AC */ lw $a2, 0xac($sp) +/* 04F27C 8004E67C 30480004 */ andi $t0, $v0, 4 +/* 04F280 8004E680 11000006 */ beqz $t0, .L8004E69C +/* 04F284 8004E684 00C02025 */ move $a0, $a2 +/* 04F288 8004E688 3C188012 */ lui $t8, %hi(D_8011D534) # $t8, 0x8012 +/* 04F28C 8004E68C 8F18D534 */ lw $t8, %lo(D_8011D534)($t8) +/* 04F290 8004E690 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 04F294 8004E694 0018C823 */ negu $t9, $t8 +/* 04F298 8004E698 AC39D534 */ sw $t9, %lo(D_8011D534)($at) +.L8004E69C: +/* 04F29C 8004E69C 0C01A978 */ jal func_8006A5E0 +/* 04F2A0 8004E6A0 AFA600AC */ sw $a2, 0xac($sp) +/* 04F2A4 8004E6A4 8FA400AC */ lw $a0, 0xac($sp) +/* 04F2A8 8004E6A8 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 +/* 04F2AC 8004E6AC 0C01A94A */ jal func_8006A528 +/* 04F2B0 8004E6B0 AC22D538 */ sw $v0, %lo(D_8011D538)($at) +/* 04F2B4 8004E6B4 8FA400AC */ lw $a0, 0xac($sp) +/* 04F2B8 8004E6B8 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 +/* 04F2BC 8004E6BC 0C01A955 */ jal func_8006A554 +/* 04F2C0 8004E6C0 AC22D528 */ sw $v0, %lo(D_8011D528)($at) +/* 04F2C4 8004E6C4 8FA400AC */ lw $a0, 0xac($sp) +/* 04F2C8 8004E6C8 3C018012 */ lui $at, %hi(D_8011D52C) # $at, 0x8012 +/* 04F2CC 8004E6CC 0C01A95E */ jal func_8006A578 +/* 04F2D0 8004E6D0 AC22D52C */ sw $v0, %lo(D_8011D52C)($at) +/* 04F2D4 8004E6D4 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 +/* 04F2D8 8004E6D8 10000009 */ b .L8004E700 +/* 04F2DC 8004E6DC AC22D530 */ sw $v0, %lo(D_8011D530)($at) +.L8004E6E0: +/* 04F2E0 8004E6E0 0C016909 */ jal func_8005A424 +/* 04F2E4 8004E6E4 02002025 */ move $a0, $s0 +/* 04F2E8 8004E6E8 10000005 */ b .L8004E700 +/* 04F2EC 8004E6EC 00000000 */ nop +/* 04F2F0 8004E6F0 8FA600B4 */ lw $a2, 0xb4($sp) +.L8004E6F4: +/* 04F2F4 8004E6F4 02202025 */ move $a0, $s1 +/* 04F2F8 8004E6F8 0C01105C */ jal func_80044170 +/* 04F2FC 8004E6FC 02002825 */ move $a1, $s0 +.L8004E700: +/* 04F300 8004E700 3C098012 */ lui $t1, %hi(D_8011D528) # $t1, 0x8012 +/* 04F304 8004E704 8D29D528 */ lw $t1, %lo(D_8011D528)($t1) +/* 04F308 8004E708 00000000 */ nop +/* 04F30C 8004E70C 312A8000 */ andi $t2, $t1, 0x8000 +/* 04F310 8004E710 15400002 */ bnez $t2, .L8004E71C +/* 04F314 8004E714 240B0001 */ li $t3, 1 +/* 04F318 8004E718 A20B020C */ sb $t3, 0x20c($s0) +.L8004E71C: +/* 04F31C 8004E71C 0C019944 */ jal func_80066510 +/* 04F320 8004E720 00000000 */ nop +/* 04F324 8004E724 14400014 */ bnez $v0, .L8004E778 +/* 04F328 8004E728 3C0D8012 */ lui $t5, %hi(D_8011D540) # $t5, 0x8012 +/* 04F32C 8004E72C 8DADD540 */ lw $t5, %lo(D_8011D540)($t5) +/* 04F330 8004E730 24010064 */ li $at, 100 +/* 04F334 8004E734 11A10010 */ beq $t5, $at, .L8004E778 +/* 04F338 8004E738 00000000 */ nop +/* 04F33C 8004E73C 920C01F1 */ lbu $t4, 0x1f1($s0) +/* 04F340 8004E740 3C0E8012 */ lui $t6, %hi(D_8011D584) # $t6, 0x8012 +/* 04F344 8004E744 1580000C */ bnez $t4, .L8004E778 +/* 04F348 8004E748 00000000 */ nop +/* 04F34C 8004E74C 81CED584 */ lb $t6, %lo(D_8011D584)($t6) +/* 04F350 8004E750 00000000 */ nop +/* 04F354 8004E754 15C00008 */ bnez $t6, .L8004E778 +/* 04F358 8004E758 00000000 */ nop +/* 04F35C 8004E75C 8E0F0148 */ lw $t7, 0x148($s0) +/* 04F360 8004E760 00000000 */ nop +/* 04F364 8004E764 15E00004 */ bnez $t7, .L8004E778 +/* 04F368 8004E768 00000000 */ nop +/* 04F36C 8004E76C 86020204 */ lh $v0, 0x204($s0) +/* 04F370 8004E770 00000000 */ nop +/* 04F374 8004E774 1840000C */ blez $v0, .L8004E7A8 +.L8004E778: +/* 04F378 8004E778 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 04F37C 8004E77C AC20D534 */ sw $zero, %lo(D_8011D534)($at) +/* 04F380 8004E780 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 +/* 04F384 8004E784 AC20D538 */ sw $zero, %lo(D_8011D538)($at) +/* 04F388 8004E788 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 +/* 04F38C 8004E78C AC20D528 */ sw $zero, %lo(D_8011D528)($at) +/* 04F390 8004E790 3C018012 */ lui $at, %hi(D_8011D52C) # $at, 0x8012 +/* 04F394 8004E794 AC20D52C */ sw $zero, %lo(D_8011D52C)($at) +/* 04F398 8004E798 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 +/* 04F39C 8004E79C AC20D530 */ sw $zero, %lo(D_8011D530)($at) +/* 04F3A0 8004E7A0 86020204 */ lh $v0, 0x204($s0) +/* 04F3A4 8004E7A4 A20001E1 */ sb $zero, 0x1e1($s0) +.L8004E7A8: +/* 04F3A8 8004E7A8 18400019 */ blez $v0, .L8004E810 +/* 04F3AC 8004E7AC 3C01800E */ lui $at, %hi(D_800E65A4) # $at, 0x800e +/* 04F3B0 8004E7B0 C42065A4 */ lwc1 $f0, %lo(D_800E65A4)($at) +/* 04F3B4 8004E7B4 8FA800B4 */ lw $t0, 0xb4($sp) +/* 04F3B8 8004E7B8 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 04F3BC 8004E7BC 44811000 */ mtc1 $at, $f2 +/* 04F3C0 8004E7C0 0048C023 */ subu $t8, $v0, $t0 +/* 04F3C4 8004E7C4 A6180204 */ sh $t8, 0x204($s0) +/* 04F3C8 8004E7C8 3C01800E */ lui $at, %hi(D_800E65A8) # $at, 0x800e +/* 04F3CC 8004E7CC C42A65A8 */ lwc1 $f10, %lo(D_800E65A8)($at) +/* 04F3D0 8004E7D0 C606002C */ lwc1 $f6, 0x2c($s0) +/* 04F3D4 8004E7D4 00000000 */ nop +/* 04F3D8 8004E7D8 460A3202 */ mul.s $f8, $f6, $f10 +/* 04F3DC 8004E7DC E608002C */ swc1 $f8, 0x2c($s0) +/* 04F3E0 8004E7E0 C624001C */ lwc1 $f4, 0x1c($s1) +/* 04F3E4 8004E7E4 C62A0020 */ lwc1 $f10, 0x20($s1) +/* 04F3E8 8004E7E8 46002182 */ mul.s $f6, $f4, $f0 +/* 04F3EC 8004E7EC 460A103C */ c.lt.s $f2, $f10 +/* 04F3F0 8004E7F0 00000000 */ nop +/* 04F3F4 8004E7F4 45000002 */ bc1f .L8004E800 +/* 04F3F8 8004E7F8 E626001C */ swc1 $f6, 0x1c($s1) +/* 04F3FC 8004E7FC E6220020 */ swc1 $f2, 0x20($s1) +.L8004E800: +/* 04F400 8004E800 C6280024 */ lwc1 $f8, 0x24($s1) +/* 04F404 8004E804 00000000 */ nop +/* 04F408 8004E808 46004102 */ mul.s $f4, $f8, $f0 +/* 04F40C 8004E80C E6240024 */ swc1 $f4, 0x24($s1) +.L8004E810: +/* 04F410 8004E810 86020206 */ lh $v0, 0x206($s0) +/* 04F414 8004E814 00000000 */ nop +/* 04F418 8004E818 18400006 */ blez $v0, .L8004E834 +/* 04F41C 8004E81C 00000000 */ nop +/* 04F420 8004E820 A602018A */ sh $v0, 0x18a($s0) +/* 04F424 8004E824 8FB900B4 */ lw $t9, 0xb4($sp) +/* 04F428 8004E828 00000000 */ nop +/* 04F42C 8004E82C 00594823 */ subu $t1, $v0, $t9 +/* 04F430 8004E830 A6090206 */ sh $t1, 0x206($s0) +.L8004E834: +/* 04F434 8004E834 8602018A */ lh $v0, 0x18a($s0) +/* 04F438 8004E838 00000000 */ nop +/* 04F43C 8004E83C 18400015 */ blez $v0, .L8004E894 +/* 04F440 8004E840 00000000 */ nop +/* 04F444 8004E844 8FAA00B4 */ lw $t2, 0xb4($sp) +/* 04F448 8004E848 3046000F */ andi $a2, $v0, 0xf +/* 04F44C 8004E84C 004A5823 */ subu $t3, $v0, $t2 +/* 04F450 8004E850 A60B018A */ sh $t3, 0x18a($s0) +/* 04F454 8004E854 860D018A */ lh $t5, 0x18a($s0) +/* 04F458 8004E858 2404FFB0 */ li $a0, -80 +/* 04F45C 8004E85C 31AC000F */ andi $t4, $t5, 0xf +/* 04F460 8004E860 00CC082A */ slt $at, $a2, $t4 +/* 04F464 8004E864 10200004 */ beqz $at, .L8004E878 +/* 04F468 8004E868 00000000 */ nop +/* 04F46C 8004E86C 0C01BE53 */ jal func_8006F94C +/* 04F470 8004E870 24050050 */ li $a1, 80 +/* 04F474 8004E874 A20201D1 */ sb $v0, 0x1d1($s0) +.L8004E878: +/* 04F478 8004E878 3C0E8012 */ lui $t6, %hi(D_8011D534) # $t6, 0x8012 +/* 04F47C 8004E87C 8DCED534 */ lw $t6, %lo(D_8011D534)($t6) +/* 04F480 8004E880 820F01D1 */ lb $t7, 0x1d1($s0) +/* 04F484 8004E884 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 04F488 8004E888 01CF4021 */ addu $t0, $t6, $t7 +/* 04F48C 8004E88C 10000002 */ b .L8004E898 +/* 04F490 8004E890 AC28D534 */ sw $t0, %lo(D_8011D534)($at) +.L8004E894: +/* 04F494 8004E894 A600018A */ sh $zero, 0x18a($s0) +.L8004E898: +/* 04F498 8004E898 82180175 */ lb $t8, 0x175($s0) +/* 04F49C 8004E89C 00000000 */ nop +/* 04F4A0 8004E8A0 13000005 */ beqz $t8, .L8004E8B8 +/* 04F4A4 8004E8A4 00000000 */ nop +/* 04F4A8 8004E8A8 8FA600B4 */ lw $a2, 0xb4($sp) +/* 04F4AC 8004E8AC 02202025 */ move $a0, $s1 +/* 04F4B0 8004E8B0 0C015B8B */ jal func_80056E2C +/* 04F4B4 8004E8B4 02002825 */ move $a1, $s0 +.L8004E8B8: +/* 04F4B8 8004E8B8 3C038012 */ lui $v1, %hi(D_8011D540) # $v1, 0x8012 +/* 04F4BC 8004E8BC 8C63D540 */ lw $v1, %lo(D_8011D540)($v1) +/* 04F4C0 8004E8C0 00000000 */ nop +/* 04F4C4 8004E8C4 10600010 */ beqz $v1, .L8004E908 +/* 04F4C8 8004E8C8 00000000 */ nop +/* 04F4CC 8004E8CC 8FB9007C */ lw $t9, 0x7c($sp) +/* 04F4D0 8004E8D0 24010003 */ li $at, 3 +/* 04F4D4 8004E8D4 8322004C */ lb $v0, 0x4c($t9) +/* 04F4D8 8004E8D8 00000000 */ nop +/* 04F4DC 8004E8DC 10400004 */ beqz $v0, .L8004E8F0 +/* 04F4E0 8004E8E0 00000000 */ nop +/* 04F4E4 8004E8E4 10410002 */ beq $v0, $at, .L8004E8F0 +/* 04F4E8 8004E8E8 24010008 */ li $at, 8 +/* 04F4EC 8004E8EC 14410006 */ bne $v0, $at, .L8004E908 +.L8004E8F0: +/* 04F4F0 8004E8F0 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 04F4F4 8004E8F4 AC20D534 */ sw $zero, %lo(D_8011D534)($at) +/* 04F4F8 8004E8F8 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 +/* 04F4FC 8004E8FC AC20D538 */ sw $zero, %lo(D_8011D538)($at) +/* 04F500 8004E900 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 +/* 04F504 8004E904 AC20D528 */ sw $zero, %lo(D_8011D528)($at) +.L8004E908: +/* 04F508 8004E908 1460001C */ bnez $v1, .L8004E97C +/* 04F50C 8004E90C 00000000 */ nop +/* 04F510 8004E910 8FAA007C */ lw $t2, 0x7c($sp) +/* 04F514 8004E914 82090194 */ lb $t1, 0x194($s0) +/* 04F518 8004E918 814B004B */ lb $t3, 0x4b($t2) +/* 04F51C 8004E91C 00000000 */ nop +/* 04F520 8004E920 012B082A */ slt $at, $t1, $t3 +/* 04F524 8004E924 10200015 */ beqz $at, .L8004E97C +/* 04F528 8004E928 00000000 */ nop +/* 04F52C 8004E92C 0C00322D */ jal func_8000C8B4 +/* 04F530 8004E930 34048CA0 */ li $a0, 36000 +/* 04F534 8004E934 820D0194 */ lb $t5, 0x194($s0) +/* 04F538 8004E938 8FA500B4 */ lw $a1, 0xb4($sp) +/* 04F53C 8004E93C 000D6080 */ sll $t4, $t5, 2 +/* 04F540 8004E940 020C1821 */ addu $v1, $s0, $t4 +/* 04F544 8004E944 8C640128 */ lw $a0, 0x128($v1) +/* 04F548 8004E948 00457023 */ subu $t6, $v0, $a1 +/* 04F54C 8004E94C 008E082A */ slt $at, $a0, $t6 +/* 04F550 8004E950 10200003 */ beqz $at, .L8004E960 +/* 04F554 8004E954 00857821 */ addu $t7, $a0, $a1 +/* 04F558 8004E958 10000008 */ b .L8004E97C +/* 04F55C 8004E95C AC6F0128 */ sw $t7, 0x128($v1) +.L8004E960: +/* 04F560 8004E960 0C00322D */ jal func_8000C8B4 +/* 04F564 8004E964 34048CA0 */ li $a0, 36000 +/* 04F568 8004E968 82080194 */ lb $t0, 0x194($s0) +/* 04F56C 8004E96C 00000000 */ nop +/* 04F570 8004E970 0008C080 */ sll $t8, $t0, 2 +/* 04F574 8004E974 0218C821 */ addu $t9, $s0, $t8 +/* 04F578 8004E978 AF220128 */ sw $v0, 0x128($t9) +.L8004E97C: +/* 04F57C 8004E97C 3C0A8012 */ lui $t2, %hi(D_8011D55C) # $t2, 0x8012 +/* 04F580 8004E980 8D4AD55C */ lw $t2, %lo(D_8011D55C)($t2) +/* 04F584 8004E984 2401FFFF */ li $at, -1 +/* 04F588 8004E988 11410005 */ beq $t2, $at, .L8004E9A0 +/* 04F58C 8004E98C 00000000 */ nop +/* 04F590 8004E990 0C01A73F */ jal func_80069CFC +/* 04F594 8004E994 00000000 */ nop +/* 04F598 8004E998 3C018012 */ lui $at, %hi(D_8011D508) # $at, 0x8012 +/* 04F59C 8004E99C AC22D508 */ sw $v0, %lo(D_8011D508)($at) +.L8004E9A0: +/* 04F5A0 8004E9A0 8624002E */ lh $a0, 0x2e($s1) +/* 04F5A4 8004E9A4 8E25000C */ lw $a1, 0xc($s1) +/* 04F5A8 8004E9A8 8E260014 */ lw $a2, 0x14($s1) +/* 04F5AC 8004E9AC 3C078012 */ lui $a3, %hi(D_8011D5B0) # $a3, 0x8012 +/* 04F5B0 8004E9B0 0C00AC3D */ jal func_8002B0F4 +/* 04F5B4 8004E9B4 24E7D5B0 */ addiu $a3, %lo(D_8011D5B0) # addiu $a3, $a3, -0x2a50 +/* 04F5B8 8004E9B8 3C038012 */ lui $v1, %hi(D_8011D5AE) # $v1, 0x8012 +/* 04F5BC 8004E9BC 2463D5AE */ addiu $v1, %lo(D_8011D5AE) # addiu $v1, $v1, -0x2a52 +/* 04F5C0 8004E9C0 A0620000 */ sb $v0, ($v1) +/* 04F5C4 8004E9C4 80640000 */ lb $a0, ($v1) +/* 04F5C8 8004E9C8 00000000 */ nop +/* 04F5CC 8004E9CC 10800019 */ beqz $a0, .L8004EA34 +/* 04F5D0 8004E9D0 00000000 */ nop +/* 04F5D4 8004E9D4 18800017 */ blez $a0, .L8004EA34 +/* 04F5D8 8004E9D8 00001025 */ move $v0, $zero +/* 04F5DC 8004E9DC 3C038012 */ lui $v1, %hi(D_8011D5B0) # $v1, 0x8012 +/* 04F5E0 8004E9E0 3C078012 */ lui $a3, %hi(D_8011D4F0) # $a3, 0x8012 +/* 04F5E4 8004E9E4 8C63D5B0 */ lw $v1, %lo(D_8011D5B0)($v1) +/* 04F5E8 8004E9E8 24E7D4F0 */ addiu $a3, %lo(D_8011D4F0) # addiu $a3, $a3, -0x2b10 +/* 04F5EC 8004E9EC 00042880 */ sll $a1, $a0, 2 +/* 04F5F0 8004E9F0 2406000F */ li $a2, 15 +.L8004E9F4: +/* 04F5F4 8004E9F4 8C640000 */ lw $a0, ($v1) +/* 04F5F8 8004E9F8 24420004 */ addiu $v0, $v0, 4 +/* 04F5FC 8004E9FC 80890010 */ lb $t1, 0x10($a0) +/* 04F600 8004EA00 0045082A */ slt $at, $v0, $a1 +/* 04F604 8004EA04 14C90009 */ bne $a2, $t1, .L8004EA2C +/* 04F608 8004EA08 00000000 */ nop +/* 04F60C 8004EA0C C4800000 */ lwc1 $f0, ($a0) +/* 04F610 8004EA10 C4E60000 */ lwc1 $f6, ($a3) +/* 04F614 8004EA14 00000000 */ nop +/* 04F618 8004EA18 4606003C */ c.lt.s $f0, $f6 +/* 04F61C 8004EA1C 00000000 */ nop +/* 04F620 8004EA20 45000002 */ bc1f .L8004EA2C +/* 04F624 8004EA24 00000000 */ nop +/* 04F628 8004EA28 E4E00000 */ swc1 $f0, ($a3) +.L8004EA2C: +/* 04F62C 8004EA2C 1420FFF1 */ bnez $at, .L8004E9F4 +/* 04F630 8004EA30 24630004 */ addiu $v1, $v1, 4 +.L8004EA34: +/* 04F634 8004EA34 820B01D6 */ lb $t3, 0x1d6($s0) +/* 04F638 8004EA38 24010001 */ li $at, 1 +/* 04F63C 8004EA3C 11610044 */ beq $t3, $at, .L8004EB50 +/* 04F640 8004EA40 3C01800E */ lui $at, %hi(D_800E65AC) # $at, 0x800e +/* 04F644 8004EA44 C42A65AC */ lwc1 $f10, %lo(D_800E65AC)($at) +/* 04F648 8004EA48 3C068012 */ lui $a2, %hi(D_8011D4F8) # $a2, 0x8012 +/* 04F64C 8004EA4C E7AA0098 */ swc1 $f10, 0x98($sp) +/* 04F650 8004EA50 C62C0010 */ lwc1 $f12, 0x10($s1) +/* 04F654 8004EA54 24C6D4F8 */ addiu $a2, %lo(D_8011D4F8) # addiu $a2, $a2, -0x2b08 +/* 04F658 8004EA58 0C00AB42 */ jal func_8002AD08 +/* 04F65C 8004EA5C 27A50098 */ addiu $a1, $sp, 0x98 +/* 04F660 8004EA60 3C038012 */ lui $v1, %hi(D_8011D504) # $v1, 0x8012 +/* 04F664 8004EA64 2463D504 */ addiu $v1, %lo(D_8011D504) # addiu $v1, $v1, -0x2afc +/* 04F668 8004EA68 A0620000 */ sb $v0, ($v1) +/* 04F66C 8004EA6C 806D0000 */ lb $t5, ($v1) +/* 04F670 8004EA70 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 04F674 8004EA74 11A00014 */ beqz $t5, .L8004EAC8 +/* 04F678 8004EA78 00000000 */ nop +/* 04F67C 8004EA7C 44810000 */ mtc1 $at, $f0 +/* 04F680 8004EA80 C6280010 */ lwc1 $f8, 0x10($s1) +/* 04F684 8004EA84 C7A60098 */ lwc1 $f6, 0x98($sp) +/* 04F688 8004EA88 46004101 */ sub.s $f4, $f8, $f0 +/* 04F68C 8004EA8C 240C0005 */ li $t4, 5 +/* 04F690 8004EA90 4606203C */ c.lt.s $f4, $f6 +/* 04F694 8004EA94 00000000 */ nop +/* 04F698 8004EA98 45000008 */ bc1f .L8004EABC +/* 04F69C 8004EA9C 00000000 */ nop +/* 04F6A0 8004EAA0 A20C01E5 */ sb $t4, 0x1e5($s0) +/* 04F6A4 8004EAA4 C6280010 */ lwc1 $f8, 0x10($s1) +/* 04F6A8 8004EAA8 C7AA0098 */ lwc1 $f10, 0x98($sp) +/* 04F6AC 8004EAAC 46004101 */ sub.s $f4, $f8, $f0 +/* 04F6B0 8004EAB0 46045181 */ sub.s $f6, $f10, $f4 +/* 04F6B4 8004EAB4 1000000F */ b .L8004EAF4 +/* 04F6B8 8004EAB8 E60600C0 */ swc1 $f6, 0xc0($s0) +.L8004EABC: +/* 04F6BC 8004EABC 44804000 */ mtc1 $zero, $f8 +/* 04F6C0 8004EAC0 1000000C */ b .L8004EAF4 +/* 04F6C4 8004EAC4 E60800C0 */ swc1 $f8, 0xc0($s0) +.L8004EAC8: +/* 04F6C8 8004EAC8 820201E5 */ lb $v0, 0x1e5($s0) +/* 04F6CC 8004EACC 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 04F6D0 8004EAD0 18400005 */ blez $v0, .L8004EAE8 +/* 04F6D4 8004EAD4 244EFFFF */ addiu $t6, $v0, -1 +/* 04F6D8 8004EAD8 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 04F6DC 8004EADC 44810000 */ mtc1 $at, $f0 +/* 04F6E0 8004EAE0 10000004 */ b .L8004EAF4 +/* 04F6E4 8004EAE4 A20E01E5 */ sb $t6, 0x1e5($s0) +.L8004EAE8: +/* 04F6E8 8004EAE8 44805000 */ mtc1 $zero, $f10 +/* 04F6EC 8004EAEC 44810000 */ mtc1 $at, $f0 +/* 04F6F0 8004EAF0 E60A00C0 */ swc1 $f10, 0xc0($s0) +.L8004EAF4: +/* 04F6F4 8004EAF4 820F01E5 */ lb $t7, 0x1e5($s0) +/* 04F6F8 8004EAF8 C7A60098 */ lwc1 $f6, 0x98($sp) +/* 04F6FC 8004EAFC 19E0000E */ blez $t7, .L8004EB38 +/* 04F700 8004EB00 00000000 */ nop +/* 04F704 8004EB04 C6240010 */ lwc1 $f4, 0x10($s1) +/* 04F708 8004EB08 46003200 */ add.s $f8, $f6, $f0 +/* 04F70C 8004EB0C 4608203C */ c.lt.s $f4, $f8 +/* 04F710 8004EB10 00000000 */ nop +/* 04F714 8004EB14 45000008 */ bc1f .L8004EB38 +/* 04F718 8004EB18 00000000 */ nop +/* 04F71C 8004EB1C 8E22004C */ lw $v0, 0x4c($s1) +/* 04F720 8004EB20 00000000 */ nop +/* 04F724 8004EB24 84480014 */ lh $t0, 0x14($v0) +/* 04F728 8004EB28 00000000 */ nop +/* 04F72C 8004EB2C 35180010 */ ori $t8, $t0, 0x10 +/* 04F730 8004EB30 10000007 */ b .L8004EB50 +/* 04F734 8004EB34 A4580014 */ sh $t8, 0x14($v0) +.L8004EB38: +/* 04F738 8004EB38 8E22004C */ lw $v0, 0x4c($s1) +/* 04F73C 8004EB3C 00000000 */ nop +/* 04F740 8004EB40 84590014 */ lh $t9, 0x14($v0) +/* 04F744 8004EB44 00000000 */ nop +/* 04F748 8004EB48 332AFFEF */ andi $t2, $t9, 0xffef +/* 04F74C 8004EB4C A44A0014 */ sh $t2, 0x14($v0) +.L8004EB50: +/* 04F750 8004EB50 0C00AB32 */ jal func_8002ACC8 +/* 04F754 8004EB54 00002025 */ move $a0, $zero +/* 04F758 8004EB58 920901D6 */ lbu $t1, 0x1d6($s0) +/* 04F75C 8004EB5C 00000000 */ nop +/* 04F760 8004EB60 2D21000E */ sltiu $at, $t1, 0xe +/* 04F764 8004EB64 10200088 */ beqz $at, .L8004ED88 +/* 04F768 8004EB68 00094880 */ sll $t1, $t1, 2 +/* 04F76C 8004EB6C 3C01800E */ lui $at, 0x800e +/* 04F770 8004EB70 00290821 */ addu $at, $at, $t1 +/* 04F774 8004EB74 8C2965B0 */ lw $t1, 0x65b0($at) +/* 04F778 8004EB78 00000000 */ nop +/* 04F77C 8004EB7C 01200008 */ jr $t1 +/* 04F780 8004EB80 00000000 */ nop +/* 04F784 8004EB84 8FA400B4 */ lw $a0, 0xb4($sp) +/* 04F788 8004EB88 8FA5009C */ lw $a1, 0x9c($sp) +/* 04F78C 8004EB8C 02203025 */ move $a2, $s1 +/* 04F790 8004EB90 0C013DFD */ jal func_8004F7F4 +/* 04F794 8004EB94 02003825 */ move $a3, $s0 +/* 04F798 8004EB98 1000007C */ b .L8004ED8C +/* 04F79C 8004EB9C 820A0175 */ lb $t2, 0x175($s0) +/* 04F7A0 8004EBA0 8FA400B4 */ lw $a0, 0xb4($sp) +/* 04F7A4 8004EBA4 8FA5009C */ lw $a1, 0x9c($sp) +/* 04F7A8 8004EBA8 02203025 */ move $a2, $s1 +/* 04F7AC 8004EBAC 0C013308 */ jal func_8004CC20 +/* 04F7B0 8004EBB0 02003825 */ move $a3, $s0 +/* 04F7B4 8004EBB4 10000075 */ b .L8004ED8C +/* 04F7B8 8004EBB8 820A0175 */ lb $t2, 0x175($s0) +/* 04F7BC 8004EBBC 8FA400B4 */ lw $a0, 0xb4($sp) +/* 04F7C0 8004EBC0 8FA5009C */ lw $a1, 0x9c($sp) +/* 04F7C4 8004EBC4 02203025 */ move $a2, $s1 +/* 04F7C8 8004EBC8 0C011949 */ jal func_80046524 +/* 04F7CC 8004EBCC 02003825 */ move $a3, $s0 +/* 04F7D0 8004EBD0 1000006E */ b .L8004ED8C +/* 04F7D4 8004EBD4 820A0175 */ lb $t2, 0x175($s0) +/* 04F7D8 8004EBD8 8FA400B4 */ lw $a0, 0xb4($sp) +/* 04F7DC 8004EBDC 8FA5009C */ lw $a1, 0x9c($sp) +/* 04F7E0 8004EBE0 02203025 */ move $a2, $s1 +/* 04F7E4 8004EBE4 0C0125E5 */ jal func_80049794 +/* 04F7E8 8004EBE8 02003825 */ move $a3, $s0 +/* 04F7EC 8004EBEC 10000067 */ b .L8004ED8C +/* 04F7F0 8004EBF0 820A0175 */ lb $t2, 0x175($s0) +/* 04F7F4 8004EBF4 8FA400B4 */ lw $a0, 0xb4($sp) +/* 04F7F8 8004EBF8 8FA5009C */ lw $a1, 0x9c($sp) +/* 04F7FC 8004EBFC 02203025 */ move $a2, $s1 +/* 04F800 8004EC00 0C013657 */ jal func_8004D95C +/* 04F804 8004EC04 02003825 */ move $a3, $s0 +/* 04F808 8004EC08 10000060 */ b .L8004ED8C +/* 04F80C 8004EC0C 820A0175 */ lb $t2, 0x175($s0) +/* 04F810 8004EC10 3C0B8012 */ lui $t3, %hi(D_8011D528) # $t3, 0x8012 +/* 04F814 8004EC14 3C0D8012 */ lui $t5, %hi(D_8011D52C) # $t5, 0x8012 +/* 04F818 8004EC18 3C0C8012 */ lui $t4, %hi(D_8011D540) # $t4, 0x8012 +/* 04F81C 8004EC1C 258CD540 */ addiu $t4, %lo(D_8011D540) # addiu $t4, $t4, -0x2ac0 +/* 04F820 8004EC20 25ADD52C */ addiu $t5, %lo(D_8011D52C) # addiu $t5, $t5, -0x2ad4 +/* 04F824 8004EC24 256BD528 */ addiu $t3, %lo(D_8011D528) # addiu $t3, $t3, -0x2ad8 +/* 04F828 8004EC28 8FA400B4 */ lw $a0, 0xb4($sp) +/* 04F82C 8004EC2C 8FA5009C */ lw $a1, 0x9c($sp) +/* 04F830 8004EC30 AFAB0010 */ sw $t3, 0x10($sp) +/* 04F834 8004EC34 AFAD0014 */ sw $t5, 0x14($sp) +/* 04F838 8004EC38 AFAC0018 */ sw $t4, 0x18($sp) +/* 04F83C 8004EC3C 02203025 */ move $a2, $s1 +/* 04F840 8004EC40 0C0170D9 */ jal func_8005C364 +/* 04F844 8004EC44 02003825 */ move $a3, $s0 +/* 04F848 8004EC48 10000050 */ b .L8004ED8C +/* 04F84C 8004EC4C 820A0175 */ lb $t2, 0x175($s0) +/* 04F850 8004EC50 3C0E8012 */ lui $t6, %hi(D_8011D528) # $t6, 0x8012 +/* 04F854 8004EC54 3C0F8012 */ lui $t7, %hi(D_8011D52C) # $t7, 0x8012 +/* 04F858 8004EC58 3C088012 */ lui $t0, %hi(D_8011D540) # $t0, 0x8012 +/* 04F85C 8004EC5C 2508D540 */ addiu $t0, %lo(D_8011D540) # addiu $t0, $t0, -0x2ac0 +/* 04F860 8004EC60 25EFD52C */ addiu $t7, %lo(D_8011D52C) # addiu $t7, $t7, -0x2ad4 +/* 04F864 8004EC64 25CED528 */ addiu $t6, %lo(D_8011D528) # addiu $t6, $t6, -0x2ad8 +/* 04F868 8004EC68 8FA400B4 */ lw $a0, 0xb4($sp) +/* 04F86C 8004EC6C 8FA5009C */ lw $a1, 0x9c($sp) +/* 04F870 8004EC70 AFAE0010 */ sw $t6, 0x10($sp) +/* 04F874 8004EC74 AFAF0014 */ sw $t7, 0x14($sp) +/* 04F878 8004EC78 AFA80018 */ sw $t0, 0x18($sp) +/* 04F87C 8004EC7C 02203025 */ move $a2, $s1 +/* 04F880 8004EC80 0C017434 */ jal func_8005D0D0 +/* 04F884 8004EC84 02003825 */ move $a3, $s0 +/* 04F888 8004EC88 10000040 */ b .L8004ED8C +/* 04F88C 8004EC8C 820A0175 */ lb $t2, 0x175($s0) +/* 04F890 8004EC90 3C188012 */ lui $t8, %hi(D_8011D528) # $t8, 0x8012 +/* 04F894 8004EC94 3C198012 */ lui $t9, %hi(D_8011D534) # $t9, 0x8012 +/* 04F898 8004EC98 3C0A8012 */ lui $t2, %hi(D_8011D540) # $t2, 0x8012 +/* 04F89C 8004EC9C 254AD540 */ addiu $t2, %lo(D_8011D540) # addiu $t2, $t2, -0x2ac0 +/* 04F8A0 8004ECA0 2739D534 */ addiu $t9, %lo(D_8011D534) # addiu $t9, $t9, -0x2acc +/* 04F8A4 8004ECA4 2718D528 */ addiu $t8, %lo(D_8011D528) # addiu $t8, $t8, -0x2ad8 +/* 04F8A8 8004ECA8 8FA400B4 */ lw $a0, 0xb4($sp) +/* 04F8AC 8004ECAC 8FA5009C */ lw $a1, 0x9c($sp) +/* 04F8B0 8004ECB0 AFB80010 */ sw $t8, 0x10($sp) +/* 04F8B4 8004ECB4 AFB90014 */ sw $t9, 0x14($sp) +/* 04F8B8 8004ECB8 AFAA0018 */ sw $t2, 0x18($sp) +/* 04F8BC 8004ECBC 02203025 */ move $a2, $s1 +/* 04F8C0 8004ECC0 0C017608 */ jal func_8005D820 +/* 04F8C4 8004ECC4 02003825 */ move $a3, $s0 +/* 04F8C8 8004ECC8 10000030 */ b .L8004ED8C +/* 04F8CC 8004ECCC 820A0175 */ lb $t2, 0x175($s0) +/* 04F8D0 8004ECD0 3C098012 */ lui $t1, %hi(D_8011D528) # $t1, 0x8012 +/* 04F8D4 8004ECD4 3C0B8012 */ lui $t3, %hi(D_8011D52C) # $t3, 0x8012 +/* 04F8D8 8004ECD8 3C0D8012 */ lui $t5, %hi(D_8011D540) # $t5, 0x8012 +/* 04F8DC 8004ECDC 25ADD540 */ addiu $t5, %lo(D_8011D540) # addiu $t5, $t5, -0x2ac0 +/* 04F8E0 8004ECE0 256BD52C */ addiu $t3, %lo(D_8011D52C) # addiu $t3, $t3, -0x2ad4 +/* 04F8E4 8004ECE4 2529D528 */ addiu $t1, %lo(D_8011D528) # addiu $t1, $t1, -0x2ad8 +/* 04F8E8 8004ECE8 8FA400B4 */ lw $a0, 0xb4($sp) +/* 04F8EC 8004ECEC 8FA5009C */ lw $a1, 0x9c($sp) +/* 04F8F0 8004ECF0 AFA90010 */ sw $t1, 0x10($sp) +/* 04F8F4 8004ECF4 AFAB0014 */ sw $t3, 0x14($sp) +/* 04F8F8 8004ECF8 AFAD0018 */ sw $t5, 0x18($sp) +/* 04F8FC 8004ECFC 02203025 */ move $a2, $s1 +/* 04F900 8004ED00 0C017930 */ jal func_8005E4C0 +/* 04F904 8004ED04 02003825 */ move $a3, $s0 +/* 04F908 8004ED08 10000020 */ b .L8004ED8C +/* 04F90C 8004ED0C 820A0175 */ lb $t2, 0x175($s0) +/* 04F910 8004ED10 3C0C8012 */ lui $t4, %hi(D_8011D528) # $t4, 0x8012 +/* 04F914 8004ED14 3C0E8012 */ lui $t6, %hi(D_8011D52C) # $t6, 0x8012 +/* 04F918 8004ED18 3C0F8012 */ lui $t7, %hi(D_8011D540) # $t7, 0x8012 +/* 04F91C 8004ED1C 25EFD540 */ addiu $t7, %lo(D_8011D540) # addiu $t7, $t7, -0x2ac0 +/* 04F920 8004ED20 25CED52C */ addiu $t6, %lo(D_8011D52C) # addiu $t6, $t6, -0x2ad4 +/* 04F924 8004ED24 258CD528 */ addiu $t4, %lo(D_8011D528) # addiu $t4, $t4, -0x2ad8 +/* 04F928 8004ED28 8FA400B4 */ lw $a0, 0xb4($sp) +/* 04F92C 8004ED2C 8FA5009C */ lw $a1, 0x9c($sp) +/* 04F930 8004ED30 AFAC0010 */ sw $t4, 0x10($sp) +/* 04F934 8004ED34 AFAE0014 */ sw $t6, 0x14($sp) +/* 04F938 8004ED38 AFAF0018 */ sw $t7, 0x18($sp) +/* 04F93C 8004ED3C 02203025 */ move $a2, $s1 +/* 04F940 8004ED40 0C017AA4 */ jal func_8005EA90 +/* 04F944 8004ED44 02003825 */ move $a3, $s0 +/* 04F948 8004ED48 10000010 */ b .L8004ED8C +/* 04F94C 8004ED4C 820A0175 */ lb $t2, 0x175($s0) +/* 04F950 8004ED50 3C088012 */ lui $t0, %hi(D_8011D528) # $t0, 0x8012 +/* 04F954 8004ED54 3C188012 */ lui $t8, %hi(D_8011D52C) # $t8, 0x8012 +/* 04F958 8004ED58 3C198012 */ lui $t9, %hi(D_8011D540) # $t9, 0x8012 +/* 04F95C 8004ED5C 2739D540 */ addiu $t9, %lo(D_8011D540) # addiu $t9, $t9, -0x2ac0 +/* 04F960 8004ED60 2718D52C */ addiu $t8, %lo(D_8011D52C) # addiu $t8, $t8, -0x2ad4 +/* 04F964 8004ED64 2508D528 */ addiu $t0, %lo(D_8011D528) # addiu $t0, $t0, -0x2ad8 +/* 04F968 8004ED68 8FA400B4 */ lw $a0, 0xb4($sp) +/* 04F96C 8004ED6C 8FA5009C */ lw $a1, 0x9c($sp) +/* 04F970 8004ED70 AFA80010 */ sw $t0, 0x10($sp) +/* 04F974 8004ED74 AFB80014 */ sw $t8, 0x14($sp) +/* 04F978 8004ED78 AFB90018 */ sw $t9, 0x18($sp) +/* 04F97C 8004ED7C 02203025 */ move $a2, $s1 +/* 04F980 8004ED80 0C017CC4 */ jal func_8005F310 +/* 04F984 8004ED84 02003825 */ move $a3, $s0 +.L8004ED88: +/* 04F988 8004ED88 820A0175 */ lb $t2, 0x175($s0) +.L8004ED8C: +/* 04F98C 8004ED8C 00000000 */ nop +/* 04F990 8004ED90 15400009 */ bnez $t2, .L8004EDB8 +/* 04F994 8004ED94 8FA9007C */ lw $t1, 0x7c($sp) +/* 04F998 8004ED98 8E040178 */ lw $a0, 0x178($s0) +/* 04F99C 8004ED9C 00000000 */ nop +/* 04F9A0 8004EDA0 10800005 */ beqz $a0, .L8004EDB8 +/* 04F9A4 8004EDA4 8FA9007C */ lw $t1, 0x7c($sp) +/* 04F9A8 8004EDA8 0C001223 */ jal func_8000488C +/* 04F9AC 8004EDAC 00000000 */ nop +/* 04F9B0 8004EDB0 AE000178 */ sw $zero, 0x178($s0) +/* 04F9B4 8004EDB4 8FA9007C */ lw $t1, 0x7c($sp) +.L8004EDB8: +/* 04F9B8 8004EDB8 00000000 */ nop +/* 04F9BC 8004EDBC 8122004A */ lb $v0, 0x4a($t1) +/* 04F9C0 8004EDC0 00000000 */ nop +/* 04F9C4 8004EDC4 10400011 */ beqz $v0, .L8004EE0C +/* 04F9C8 8004EDC8 8FAB00A4 */ lw $t3, 0xa4($sp) +/* 04F9CC 8004EDCC 44825000 */ mtc1 $v0, $f10 +/* 04F9D0 8004EDD0 C600002C */ lwc1 $f0, 0x2c($s0) +/* 04F9D4 8004EDD4 468050A0 */ cvt.s.w $f2, $f10 +/* 04F9D8 8004EDD8 4600103C */ c.lt.s $f2, $f0 +/* 04F9DC 8004EDDC 46001307 */ neg.s $f12, $f2 +/* 04F9E0 8004EDE0 45000004 */ bc1f .L8004EDF4 +/* 04F9E4 8004EDE4 00000000 */ nop +/* 04F9E8 8004EDE8 E602002C */ swc1 $f2, 0x2c($s0) +/* 04F9EC 8004EDEC C600002C */ lwc1 $f0, 0x2c($s0) +/* 04F9F0 8004EDF0 00000000 */ nop +.L8004EDF4: +/* 04F9F4 8004EDF4 460C003C */ c.lt.s $f0, $f12 +/* 04F9F8 8004EDF8 00000000 */ nop +/* 04F9FC 8004EDFC 45000003 */ bc1f .L8004EE0C +/* 04FA00 8004EE00 8FAB00A4 */ lw $t3, 0xa4($sp) +/* 04FA04 8004EE04 E60C002C */ swc1 $f12, 0x2c($s0) +/* 04FA08 8004EE08 8FAB00A4 */ lw $t3, 0xa4($sp) +.L8004EE0C: +/* 04FA0C 8004EE0C 24010001 */ li $at, 1 +/* 04FA10 8004EE10 15610004 */ bne $t3, $at, .L8004EE24 +/* 04FA14 8004EE14 00000000 */ nop +/* 04FA18 8004EE18 0C003852 */ jal func_8000E148 +/* 04FA1C 8004EE1C 00000000 */ nop +/* 04FA20 8004EE20 10400007 */ beqz $v0, .L8004EE40 +.L8004EE24: +/* 04FA24 8004EE24 3C058012 */ lui $a1, %hi(D_8011D52C) # $a1, 0x8012 +/* 04FA28 8004EE28 3C068012 */ lui $a2, %hi(D_8011D528) # $a2, 0x8012 +/* 04FA2C 8004EE2C 8CC6D528 */ lw $a2, %lo(D_8011D528)($a2) +/* 04FA30 8004EE30 8CA5D52C */ lw $a1, %lo(D_8011D52C)($a1) +/* 04FA34 8004EE34 8FA700B4 */ lw $a3, 0xb4($sp) +/* 04FA38 8004EE38 0C001434 */ jal func_800050D0 +/* 04FA3C 8004EE3C 02202025 */ move $a0, $s1 +.L8004EE40: +/* 04FA40 8004EE40 C60600A8 */ lwc1 $f6, 0xa8($s0) +/* 04FA44 8004EE44 C7A40088 */ lwc1 $f4, 0x88($sp) +/* 04FA48 8004EE48 E7A60084 */ swc1 $f6, 0x84($sp) +/* 04FA4C 8004EE4C 82040192 */ lb $a0, 0x192($s0) +/* 04FA50 8004EE50 8FA60090 */ lw $a2, 0x90($sp) +/* 04FA54 8004EE54 8FA7008C */ lw $a3, 0x8c($sp) +/* 04FA58 8004EE58 260D00A8 */ addiu $t5, $s0, 0xa8 +/* 04FA5C 8004EE5C 260C01C8 */ addiu $t4, $s0, 0x1c8 +/* 04FA60 8004EE60 AFAC0018 */ sw $t4, 0x18($sp) +/* 04FA64 8004EE64 AFAD0014 */ sw $t5, 0x14($sp) +/* 04FA68 8004EE68 02202825 */ move $a1, $s1 +/* 04FA6C 8004EE6C 0C006179 */ jal func_800185E4 +/* 04FA70 8004EE70 E7A40010 */ swc1 $f4, 0x10($sp) +/* 04FA74 8004EE74 2401FF9C */ li $at, -100 +/* 04FA78 8004EE78 14410006 */ bne $v0, $at, .L8004EE94 +/* 04FA7C 8004EE7C 00403025 */ move $a2, $v0 +/* 04FA80 8004EE80 02002025 */ move $a0, $s0 +/* 04FA84 8004EE84 0C01709C */ jal func_8005C270 +/* 04FA88 8004EE88 AFA200AC */ sw $v0, 0xac($sp) +/* 04FA8C 8004EE8C 8FA600AC */ lw $a2, 0xac($sp) +/* 04FA90 8004EE90 00000000 */ nop +.L8004EE94: +/* 04FA94 8004EE94 82040192 */ lb $a0, 0x192($s0) +/* 04FA98 8004EE98 920501C8 */ lbu $a1, 0x1c8($s0) +/* 04FA9C 8004EE9C 0C006E87 */ jal func_8001BA1C +/* 04FAA0 8004EEA0 AFA600AC */ sw $a2, 0xac($sp) +/* 04FAA4 8004EEA4 860E0000 */ lh $t6, ($s0) +/* 04FAA8 8004EEA8 8FA600AC */ lw $a2, 0xac($sp) +/* 04FAAC 8004EEAC 2401FFFF */ li $at, -1 +/* 04FAB0 8004EEB0 15C1000D */ bne $t6, $at, .L8004EEE8 +/* 04FAB4 8004EEB4 00000000 */ nop +/* 04FAB8 8004EEB8 820F01CA */ lb $t7, 0x1ca($s0) +/* 04FABC 8004EEBC 24010005 */ li $at, 5 +/* 04FAC0 8004EEC0 004F4021 */ addu $t0, $v0, $t7 +/* 04FAC4 8004EEC4 81180036 */ lb $t8, 0x36($t0) +/* 04FAC8 8004EEC8 00000000 */ nop +/* 04FACC 8004EECC 17010006 */ bne $t8, $at, .L8004EEE8 +/* 04FAD0 8004EED0 00000000 */ nop +/* 04FAD4 8004EED4 821901E5 */ lb $t9, 0x1e5($s0) +/* 04FAD8 8004EED8 240A0001 */ li $t2, 1 +/* 04FADC 8004EEDC 13200002 */ beqz $t9, .L8004EEE8 +/* 04FAE0 8004EEE0 00000000 */ nop +/* 04FAE4 8004EEE4 A20A01C8 */ sb $t2, 0x1c8($s0) +.L8004EEE8: +/* 04FAE8 8004EEE8 820901CA */ lb $t1, 0x1ca($s0) +/* 04FAEC 8004EEEC 24010006 */ li $at, 6 +/* 04FAF0 8004EEF0 00495821 */ addu $t3, $v0, $t1 +/* 04FAF4 8004EEF4 816D0036 */ lb $t5, 0x36($t3) +/* 04FAF8 8004EEF8 00000000 */ nop +/* 04FAFC 8004EEFC 15A10007 */ bne $t5, $at, .L8004EF1C +/* 04FB00 8004EF00 00000000 */ nop +/* 04FB04 8004EF04 8FAC007C */ lw $t4, 0x7c($sp) +/* 04FB08 8004EF08 00000000 */ nop +/* 04FB0C 8004EF0C 818E004B */ lb $t6, 0x4b($t4) +/* 04FB10 8004EF10 00000000 */ nop +/* 04FB14 8004EF14 25CF0001 */ addiu $t7, $t6, 1 +/* 04FB18 8004EF18 A20F0193 */ sb $t7, 0x193($s0) +.L8004EF1C: +/* 04FB1C 8004EF1C 86030000 */ lh $v1, ($s0) +/* 04FB20 8004EF20 14C00097 */ bnez $a2, .L8004F180 +/* 04FB24 8004EF24 2401FFFF */ li $at, -1 +/* 04FB28 8004EF28 14610009 */ bne $v1, $at, .L8004EF50 +/* 04FB2C 8004EF2C 00000000 */ nop +/* 04FB30 8004EF30 820801CA */ lb $t0, 0x1ca($s0) +/* 04FB34 8004EF34 24010002 */ li $at, 2 +/* 04FB38 8004EF38 0048C021 */ addu $t8, $v0, $t0 +/* 04FB3C 8004EF3C 83190036 */ lb $t9, 0x36($t8) +/* 04FB40 8004EF40 240A0001 */ li $t2, 1 +/* 04FB44 8004EF44 17210002 */ bne $t9, $at, .L8004EF50 +/* 04FB48 8004EF48 00000000 */ nop +/* 04FB4C 8004EF4C A20A01C8 */ sb $t2, 0x1c8($s0) +.L8004EF50: +/* 04FB50 8004EF50 0C006E99 */ jal func_8001BA64 +/* 04FB54 8004EF54 00000000 */ nop +/* 04FB58 8004EF58 AFA200A8 */ sw $v0, 0xa8($sp) +/* 04FB5C 8004EF5C 82090192 */ lb $t1, 0x192($s0) +/* 04FB60 8004EF60 00000000 */ nop +/* 04FB64 8004EF64 252B0001 */ addiu $t3, $t1, 1 +/* 04FB68 8004EF68 A20B0192 */ sb $t3, 0x192($s0) +/* 04FB6C 8004EF6C 820D0192 */ lb $t5, 0x192($s0) +/* 04FB70 8004EF70 00000000 */ nop +/* 04FB74 8004EF74 01A2082A */ slt $at, $t5, $v0 +/* 04FB78 8004EF78 14200023 */ bnez $at, .L8004F008 +/* 04FB7C 8004EF7C 00000000 */ nop +/* 04FB80 8004EF80 860C0190 */ lh $t4, 0x190($s0) +/* 04FB84 8004EF84 A2000192 */ sb $zero, 0x192($s0) +/* 04FB88 8004EF88 19800007 */ blez $t4, .L8004EFA8 +/* 04FB8C 8004EF8C 00000000 */ nop +/* 04FB90 8004EF90 82020193 */ lb $v0, 0x193($s0) +/* 04FB94 8004EF94 00000000 */ nop +/* 04FB98 8004EF98 28410078 */ slti $at, $v0, 0x78 +/* 04FB9C 8004EF9C 10200002 */ beqz $at, .L8004EFA8 +/* 04FBA0 8004EFA0 244E0001 */ addiu $t6, $v0, 1 +/* 04FBA4 8004EFA4 A20E0193 */ sb $t6, 0x193($s0) +.L8004EFA8: +/* 04FBA8 8004EFA8 860F0000 */ lh $t7, ($s0) +/* 04FBAC 8004EFAC 2401FFFF */ li $at, -1 +/* 04FBB0 8004EFB0 11E10015 */ beq $t7, $at, .L8004F008 +/* 04FBB4 8004EFB4 00000000 */ nop +/* 04FBB8 8004EFB8 8FA8007C */ lw $t0, 0x7c($sp) +/* 04FBBC 8004EFBC 82190193 */ lb $t9, 0x193($s0) +/* 04FBC0 8004EFC0 8118004B */ lb $t8, 0x4b($t0) +/* 04FBC4 8004EFC4 272A0001 */ addiu $t2, $t9, 1 +/* 04FBC8 8004EFC8 170A000F */ bne $t8, $t2, .L8004F008 +/* 04FBCC 8004EFCC 3C098012 */ lui $t1, %hi(D_8011D580) # $t1, 0x8012 +/* 04FBD0 8004EFD0 9129D580 */ lbu $t1, %lo(D_8011D580)($t1) +/* 04FBD4 8004EFD4 00000000 */ nop +/* 04FBD8 8004EFD8 1520000B */ bnez $t1, .L8004F008 +/* 04FBDC 8004EFDC 00000000 */ nop +/* 04FBE0 8004EFE0 0C01AF66 */ jal func_8006BD98 +/* 04FBE4 8004EFE4 00000000 */ nop +/* 04FBE8 8004EFE8 14400007 */ bnez $v0, .L8004F008 +/* 04FBEC 8004EFEC 3C01800E */ lui $at, %hi(D_800E65E8) # $at, 0x800e +/* 04FBF0 8004EFF0 C42C65E8 */ lwc1 $f12, %lo(D_800E65E8)($at) +/* 04FBF4 8004EFF4 0C00052F */ jal func_800014BC +/* 04FBF8 8004EFF8 00000000 */ nop +/* 04FBFC 8004EFFC 240B0001 */ li $t3, 1 +/* 04FC00 8004F000 3C018012 */ lui $at, %hi(D_8011D580) # $at, 0x8012 +/* 04FC04 8004F004 A02BD580 */ sb $t3, %lo(D_8011D580)($at) +.L8004F008: +/* 04FC08 8004F008 0C008D07 */ jal func_8002341C +/* 04FC0C 8004F00C 00000000 */ nop +/* 04FC10 8004F010 1040004C */ beqz $v0, .L8004F144 +/* 04FC14 8004F014 3C0D8012 */ lui $t5, %hi(D_8011D55C) # $t5, 0x8012 +/* 04FC18 8004F018 8DADD55C */ lw $t5, %lo(D_8011D55C)($t5) +/* 04FC1C 8004F01C 2401FFFF */ li $at, -1 +/* 04FC20 8004F020 11A10049 */ beq $t5, $at, .L8004F148 +/* 04FC24 8004F024 8FAE007C */ lw $t6, 0x7c($sp) +/* 04FC28 8004F028 82040192 */ lb $a0, 0x192($s0) +/* 04FC2C 8004F02C 920501C8 */ lbu $a1, 0x1c8($s0) +/* 04FC30 8004F030 0C006E87 */ jal func_8001BA1C +/* 04FC34 8004F034 00000000 */ nop +/* 04FC38 8004F038 8E0C015C */ lw $t4, 0x15c($s0) +/* 04FC3C 8004F03C 00401825 */ move $v1, $v0 +/* 04FC40 8004F040 15800012 */ bnez $t4, .L8004F08C +/* 04FC44 8004F044 240E0086 */ li $t6, 134 +/* 04FC48 8004F048 240F0008 */ li $t7, 8 +/* 04FC4C 8004F04C A7A00066 */ sh $zero, 0x66($sp) +/* 04FC50 8004F050 A7A00068 */ sh $zero, 0x68($sp) +/* 04FC54 8004F054 A7A0006A */ sh $zero, 0x6a($sp) +/* 04FC58 8004F058 A3AE0064 */ sb $t6, 0x64($sp) +/* 04FC5C 8004F05C A3AF0065 */ sb $t7, 0x65($sp) +/* 04FC60 8004F060 27A40064 */ addiu $a0, $sp, 0x64 +/* 04FC64 8004F064 24050001 */ li $a1, 1 +/* 04FC68 8004F068 0C003A95 */ jal func_8000EA54 +/* 04FC6C 8004F06C AFA20078 */ sw $v0, 0x78($sp) +/* 04FC70 8004F070 8FA30078 */ lw $v1, 0x78($sp) +/* 04FC74 8004F074 10400005 */ beqz $v0, .L8004F08C +/* 04FC78 8004F078 AE02015C */ sw $v0, 0x15c($s0) +/* 04FC7C 8004F07C AC40003C */ sw $zero, 0x3c($v0) +/* 04FC80 8004F080 8E18015C */ lw $t8, 0x15c($s0) +/* 04FC84 8004F084 24190080 */ li $t9, 128 +/* 04FC88 8004F088 A3190039 */ sb $t9, 0x39($t8) +.L8004F08C: +/* 04FC8C 8004F08C 8E02015C */ lw $v0, 0x15c($s0) +/* 04FC90 8004F090 00000000 */ nop +/* 04FC94 8004F094 1040002C */ beqz $v0, .L8004F148 +/* 04FC98 8004F098 8FAE007C */ lw $t6, 0x7c($sp) +/* 04FC9C 8004F09C 8C6A0028 */ lw $t2, 0x28($v1) +/* 04FCA0 8004F0A0 3C01403E */ li $at, 0x403E0000 # 2.968750 +/* 04FCA4 8004F0A4 C548000C */ lwc1 $f8, 0xc($t2) +/* 04FCA8 8004F0A8 00000000 */ nop +/* 04FCAC 8004F0AC E448000C */ swc1 $f8, 0xc($v0) +/* 04FCB0 8004F0B0 8C690028 */ lw $t1, 0x28($v1) +/* 04FCB4 8004F0B4 8E0B015C */ lw $t3, 0x15c($s0) +/* 04FCB8 8004F0B8 C52A0010 */ lwc1 $f10, 0x10($t1) +/* 04FCBC 8004F0BC 00000000 */ nop +/* 04FCC0 8004F0C0 E56A0010 */ swc1 $f10, 0x10($t3) +/* 04FCC4 8004F0C4 820D01D6 */ lb $t5, 0x1d6($s0) +/* 04FCC8 8004F0C8 00000000 */ nop +/* 04FCCC 8004F0CC 15A00009 */ bnez $t5, .L8004F0F4 +/* 04FCD0 8004F0D0 00000000 */ nop +/* 04FCD4 8004F0D4 8E02015C */ lw $v0, 0x15c($s0) +/* 04FCD8 8004F0D8 44814800 */ mtc1 $at, $f9 +/* 04FCDC 8004F0DC C4460010 */ lwc1 $f6, 0x10($v0) +/* 04FCE0 8004F0E0 44804000 */ mtc1 $zero, $f8 +/* 04FCE4 8004F0E4 46003121 */ cvt.d.s $f4, $f6 +/* 04FCE8 8004F0E8 46282281 */ sub.d $f10, $f4, $f8 +/* 04FCEC 8004F0EC 462051A0 */ cvt.s.d $f6, $f10 +/* 04FCF0 8004F0F0 E4460010 */ swc1 $f6, 0x10($v0) +.L8004F0F4: +/* 04FCF4 8004F0F4 8C6C0028 */ lw $t4, 0x28($v1) +/* 04FCF8 8004F0F8 8E0E015C */ lw $t6, 0x15c($s0) +/* 04FCFC 8004F0FC C5840014 */ lwc1 $f4, 0x14($t4) +/* 04FD00 8004F100 00000000 */ nop +/* 04FD04 8004F104 E5C40014 */ swc1 $f4, 0x14($t6) +/* 04FD08 8004F108 8C6F0028 */ lw $t7, 0x28($v1) +/* 04FD0C 8004F10C 8E19015C */ lw $t9, 0x15c($s0) +/* 04FD10 8004F110 85E80000 */ lh $t0, ($t7) +/* 04FD14 8004F114 00000000 */ nop +/* 04FD18 8004F118 A7280000 */ sh $t0, ($t9) +/* 04FD1C 8004F11C 8C780028 */ lw $t8, 0x28($v1) +/* 04FD20 8004F120 8E09015C */ lw $t1, 0x15c($s0) +/* 04FD24 8004F124 870A0002 */ lh $t2, 2($t8) +/* 04FD28 8004F128 00000000 */ nop +/* 04FD2C 8004F12C A52A0002 */ sh $t2, 2($t1) +/* 04FD30 8004F130 8C6B0028 */ lw $t3, 0x28($v1) +/* 04FD34 8004F134 8E0C015C */ lw $t4, 0x15c($s0) +/* 04FD38 8004F138 856D002E */ lh $t5, 0x2e($t3) +/* 04FD3C 8004F13C 00000000 */ nop +/* 04FD40 8004F140 A58D002E */ sh $t5, 0x2e($t4) +.L8004F144: +/* 04FD44 8004F144 8FAE007C */ lw $t6, 0x7c($sp) +.L8004F148: +/* 04FD48 8004F148 8FB900A8 */ lw $t9, 0xa8($sp) +/* 04FD4C 8004F14C 81CF004B */ lb $t7, 0x4b($t6) +/* 04FD50 8004F150 86020190 */ lh $v0, 0x190($s0) +/* 04FD54 8004F154 25E80003 */ addiu $t0, $t7, 3 +/* 04FD58 8004F158 01190019 */ multu $t0, $t9 +/* 04FD5C 8004F15C 24092710 */ li $t1, 10000 +/* 04FD60 8004F160 244A0001 */ addiu $t2, $v0, 1 +/* 04FD64 8004F164 0000C012 */ mflo $t8 +/* 04FD68 8004F168 0058082A */ slt $at, $v0, $t8 +/* 04FD6C 8004F16C 10200002 */ beqz $at, .L8004F178 +/* 04FD70 8004F170 00000000 */ nop +/* 04FD74 8004F174 A60A0190 */ sh $t2, 0x190($s0) +.L8004F178: +/* 04FD78 8004F178 1000000D */ b .L8004F1B0 +/* 04FD7C 8004F17C A60901A8 */ sh $t1, 0x1a8($s0) +.L8004F180: +/* 04FD80 8004F180 2401FFFF */ li $at, -1 +/* 04FD84 8004F184 14610009 */ bne $v1, $at, .L8004F1AC +/* 04FD88 8004F188 00000000 */ nop +/* 04FD8C 8004F18C C7A00084 */ lwc1 $f0, 0x84($sp) +/* 04FD90 8004F190 C60800A8 */ lwc1 $f8, 0xa8($s0) +/* 04FD94 8004F194 00000000 */ nop +/* 04FD98 8004F198 4608003C */ c.lt.s $f0, $f8 +/* 04FD9C 8004F19C 00000000 */ nop +/* 04FDA0 8004F1A0 45000002 */ bc1f .L8004F1AC +/* 04FDA4 8004F1A4 00000000 */ nop +/* 04FDA8 8004F1A8 E60000A8 */ swc1 $f0, 0xa8($s0) +.L8004F1AC: +/* 04FDAC 8004F1AC A60601A8 */ sh $a2, 0x1a8($s0) +.L8004F1B0: +/* 04FDB0 8004F1B0 0C008D07 */ jal func_8002341C +/* 04FDB4 8004F1B4 00000000 */ nop +/* 04FDB8 8004F1B8 10400013 */ beqz $v0, .L8004F208 +/* 04FDBC 8004F1BC 8FAF00B4 */ lw $t7, 0xb4($sp) +/* 04FDC0 8004F1C0 8E02015C */ lw $v0, 0x15c($s0) +/* 04FDC4 8004F1C4 8FAD00B4 */ lw $t5, 0xb4($sp) +/* 04FDC8 8004F1C8 10400005 */ beqz $v0, .L8004F1E0 +/* 04FDCC 8004F1CC 00000000 */ nop +/* 04FDD0 8004F1D0 844B0018 */ lh $t3, 0x18($v0) +/* 04FDD4 8004F1D4 000D60C0 */ sll $t4, $t5, 3 +/* 04FDD8 8004F1D8 016C7021 */ addu $t6, $t3, $t4 +/* 04FDDC 8004F1DC A44E0018 */ sh $t6, 0x18($v0) +.L8004F1E0: +/* 04FDE0 8004F1E0 860201BA */ lh $v0, 0x1ba($s0) +/* 04FDE4 8004F1E4 00000000 */ nop +/* 04FDE8 8004F1E8 28410191 */ slti $at, $v0, 0x191 +/* 04FDEC 8004F1EC 10200003 */ beqz $at, .L8004F1FC +/* 04FDF0 8004F1F0 2841FE70 */ slti $at, $v0, -0x190 +/* 04FDF4 8004F1F4 10200004 */ beqz $at, .L8004F208 +/* 04FDF8 8004F1F8 8FAF00B4 */ lw $t7, 0xb4($sp) +.L8004F1FC: +/* 04FDFC 8004F1FC 0C008B86 */ jal func_80022E18 +/* 04FE00 8004F200 24040002 */ li $a0, 2 +/* 04FE04 8004F204 8FAF00B4 */ lw $t7, 0xb4($sp) +.L8004F208: +/* 04FE08 8004F208 8FA50090 */ lw $a1, 0x90($sp) +/* 04FE0C 8004F20C 8FA6008C */ lw $a2, 0x8c($sp) +/* 04FE10 8004F210 8FA70088 */ lw $a3, 0x88($sp) +/* 04FE14 8004F214 02202025 */ move $a0, $s1 +/* 04FE18 8004F218 0C006338 */ jal func_80018CE0 +/* 04FE1C 8004F21C AFAF0010 */ sw $t7, 0x10($sp) +/* 04FE20 8004F220 8FA600B4 */ lw $a2, 0xb4($sp) +/* 04FE24 8004F224 02202025 */ move $a0, $s1 +/* 04FE28 8004F228 0C016482 */ jal func_80059208 +/* 04FE2C 8004F22C 02002825 */ move $a1, $s0 +/* 04FE30 8004F230 820801D8 */ lb $t0, 0x1d8($s0) +/* 04FE34 8004F234 24010001 */ li $at, 1 +/* 04FE38 8004F238 15010007 */ bne $t0, $at, .L8004F258 +/* 04FE3C 8004F23C 00000000 */ nop +/* 04FE40 8004F240 820201D9 */ lb $v0, 0x1d9($s0) +/* 04FE44 8004F244 8FB900B4 */ lw $t9, 0xb4($sp) +/* 04FE48 8004F248 2841003C */ slti $at, $v0, 0x3c +/* 04FE4C 8004F24C 10200002 */ beqz $at, .L8004F258 +/* 04FE50 8004F250 0059C021 */ addu $t8, $v0, $t9 +/* 04FE54 8004F254 A21801D9 */ sb $t8, 0x1d9($s0) +.L8004F258: +/* 04FE58 8004F258 82060188 */ lb $a2, 0x188($s0) +/* 04FE5C 8004F25C 00000000 */ nop +/* 04FE60 8004F260 18C00003 */ blez $a2, .L8004F270 +/* 04FE64 8004F264 02202025 */ move $a0, $s1 +/* 04FE68 8004F268 0C015DB8 */ jal func_800576E0 +/* 04FE6C 8004F26C 02002825 */ move $a1, $s0 +.L8004F270: +/* 04FE70 8004F270 3C0A8012 */ lui $t2, %hi(D_8011D55C) # $t2, 0x8012 +/* 04FE74 8004F274 8D4AD55C */ lw $t2, %lo(D_8011D55C)($t2) +/* 04FE78 8004F278 02202025 */ move $a0, $s1 +/* 04FE7C 8004F27C A60A0000 */ sh $t2, ($s0) +/* 04FE80 8004F280 8FA6009C */ lw $a2, 0x9c($sp) +/* 04FE84 8004F284 0C015E90 */ jal func_80057A40 +/* 04FE88 8004F288 02002825 */ move $a1, $s0 +/* 04FE8C 8004F28C 3C018012 */ lui $at, %hi(D_8011D583) # $at, 0x8012 +/* 04FE90 8004F290 A020D583 */ sb $zero, %lo(D_8011D583)($at) +/* 04FE94 8004F294 8E090148 */ lw $t1, 0x148($s0) +/* 04FE98 8004F298 44802000 */ mtc1 $zero, $f4 +/* 04FE9C 8004F29C 11200005 */ beqz $t1, .L8004F2B4 +/* 04FEA0 8004F2A0 3C02800E */ lui $v0, %hi(D_800DCB54) # $v0, 0x800e +/* 04FEA4 8004F2A4 44807000 */ mtc1 $zero, $f14 +/* 04FEA8 8004F2A8 AE000148 */ sw $zero, 0x148($s0) +/* 04FEAC 8004F2AC E60E002C */ swc1 $f14, 0x2c($s0) +/* 04FEB0 8004F2B0 E60E0030 */ swc1 $f14, 0x30($s0) +.L8004F2B4: +/* 04FEB4 8004F2B4 C60C0090 */ lwc1 $f12, 0x90($s0) +/* 04FEB8 8004F2B8 C600008C */ lwc1 $f0, 0x8c($s0) +/* 04FEBC 8004F2BC 44807000 */ mtc1 $zero, $f14 +/* 04FEC0 8004F2C0 460C003E */ c.le.s $f0, $f12 +/* 04FEC4 8004F2C4 46006281 */ sub.s $f10, $f12, $f0 +/* 04FEC8 8004F2C8 45000004 */ bc1f .L8004F2DC +/* 04FECC 8004F2CC 3C01800E */ lui $at, %hi(D_800E65EC) # $at, 0x800e +/* 04FED0 8004F2D0 C42265EC */ lwc1 $f2, %lo(D_800E65EC)($at) +/* 04FED4 8004F2D4 10000005 */ b .L8004F2EC +/* 04FED8 8004F2D8 3C013FC0 */ lui $at, 0x3fc0 +.L8004F2DC: +/* 04FEDC 8004F2DC 3C01800E */ lui $at, %hi(D_800E65F0) # $at, 0x800e +/* 04FEE0 8004F2E0 C42265F0 */ lwc1 $f2, %lo(D_800E65F0)($at) +/* 04FEE4 8004F2E4 00000000 */ nop +/* 04FEE8 8004F2E8 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +.L8004F2EC: +/* 04FEEC 8004F2EC 44812800 */ mtc1 $at, $f5 +/* 04FEF0 8004F2F0 460051A1 */ cvt.d.s $f6, $f10 +/* 04FEF4 8004F2F4 46243202 */ mul.d $f8, $f6, $f4 +/* 04FEF8 8004F2F8 460012A1 */ cvt.d.s $f10, $f2 +/* 04FEFC 8004F2FC C7A40054 */ lwc1 $f4, 0x54($sp) +/* 04FF00 8004F300 C7A50050 */ lwc1 $f5, 0x50($sp) +/* 04FF04 8004F304 462A4180 */ add.d $f6, $f8, $f10 +/* 04FF08 8004F308 46243202 */ mul.d $f8, $f6, $f4 +/* 04FF0C 8004F30C 460002A1 */ cvt.d.s $f10, $f0 +/* 04FF10 8004F310 460E103C */ c.lt.s $f2, $f14 +/* 04FF14 8004F314 46285180 */ add.d $f6, $f10, $f8 +/* 04FF18 8004F318 46203120 */ cvt.s.d $f4, $f6 +/* 04FF1C 8004F31C 45000007 */ bc1f .L8004F33C +/* 04FF20 8004F320 E604008C */ swc1 $f4, 0x8c($s0) +/* 04FF24 8004F324 C60A008C */ lwc1 $f10, 0x8c($s0) +/* 04FF28 8004F328 00000000 */ nop +/* 04FF2C 8004F32C 460C503E */ c.le.s $f10, $f12 +/* 04FF30 8004F330 00000000 */ nop +/* 04FF34 8004F334 4501000B */ bc1t .L8004F364 +/* 04FF38 8004F338 3C013F80 */ lui $at, 0x3f80 +.L8004F33C: +/* 04FF3C 8004F33C 4602703C */ c.lt.s $f14, $f2 +/* 04FF40 8004F340 00000000 */ nop +/* 04FF44 8004F344 4500000A */ bc1f .L8004F370 +/* 04FF48 8004F348 00000000 */ nop +/* 04FF4C 8004F34C C608008C */ lwc1 $f8, 0x8c($s0) +/* 04FF50 8004F350 00000000 */ nop +/* 04FF54 8004F354 4608603E */ c.le.s $f12, $f8 +/* 04FF58 8004F358 00000000 */ nop +/* 04FF5C 8004F35C 45000004 */ bc1f .L8004F370 +/* 04FF60 8004F360 3C013F80 */ li $at, 0x3F800000 # 1.000000 +.L8004F364: +/* 04FF64 8004F364 44813000 */ mtc1 $at, $f6 +/* 04FF68 8004F368 E60C008C */ swc1 $f12, 0x8c($s0) +/* 04FF6C 8004F36C E6060090 */ swc1 $f6, 0x90($s0) +.L8004F370: +/* 04FF70 8004F370 8603016A */ lh $v1, 0x16a($s0) +/* 04FF74 8004F374 860D016C */ lh $t5, 0x16c($s0) +/* 04FF78 8004F378 8FAC00B4 */ lw $t4, 0xb4($sp) +/* 04FF7C 8004F37C 01A35823 */ subu $t3, $t5, $v1 +/* 04FF80 8004F380 016C0019 */ multu $t3, $t4 +/* 04FF84 8004F384 00003012 */ mflo $a2 +/* 04FF88 8004F388 000670C3 */ sra $t6, $a2, 3 +/* 04FF8C 8004F38C 29C10801 */ slti $at, $t6, 0x801 +/* 04FF90 8004F390 14200002 */ bnez $at, .L8004F39C +/* 04FF94 8004F394 01C03025 */ move $a2, $t6 +/* 04FF98 8004F398 24060800 */ li $a2, 2048 +.L8004F39C: +/* 04FF9C 8004F39C 28C1F800 */ slti $at, $a2, -0x800 +/* 04FFA0 8004F3A0 10200002 */ beqz $at, .L8004F3AC +/* 04FFA4 8004F3A4 00000000 */ nop +/* 04FFA8 8004F3A8 2406F800 */ li $a2, -2048 +.L8004F3AC: +/* 04FFAC 8004F3AC 8442CB54 */ lh $v0, %lo(D_800DCB54)($v0) +/* 04FFB0 8004F3B0 00000000 */ nop +/* 04FFB4 8004F3B4 10400003 */ beqz $v0, .L8004F3C4 +/* 04FFB8 8004F3B8 00627821 */ addu $t7, $v1, $v0 +/* 04FFBC 8004F3BC 10000003 */ b .L8004F3CC +/* 04FFC0 8004F3C0 A60F016A */ sh $t7, 0x16a($s0) +.L8004F3C4: +/* 04FFC4 8004F3C4 00664021 */ addu $t0, $v1, $a2 +/* 04FFC8 8004F3C8 A608016A */ sh $t0, 0x16a($s0) +.L8004F3CC: +/* 04FFCC 8004F3CC 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 +/* 04FFD0 8004F3D0 8C42D52C */ lw $v0, %lo(D_8011D52C)($v0) +/* 04FFD4 8004F3D4 00000000 */ nop +/* 04FFD8 8004F3D8 30590010 */ andi $t9, $v0, 0x10 +/* 04FFDC 8004F3DC 13200008 */ beqz $t9, .L8004F400 +/* 04FFE0 8004F3E0 03201025 */ move $v0, $t9 +/* 04FFE4 8004F3E4 821801EB */ lb $t8, 0x1eb($s0) +/* 04FFE8 8004F3E8 240A0001 */ li $t2, 1 +/* 04FFEC 8004F3EC 13000004 */ beqz $t8, .L8004F400 +/* 04FFF0 8004F3F0 00000000 */ nop +/* 04FFF4 8004F3F4 A20A01EC */ sb $t2, 0x1ec($s0) +/* 04FFF8 8004F3F8 10000004 */ b .L8004F40C +/* 04FFFC 8004F3FC A20001EB */ sb $zero, 0x1eb($s0) +.L8004F400: +/* 050000 8004F400 10400002 */ beqz $v0, .L8004F40C +/* 050004 8004F404 24090016 */ li $t1, 22 +/* 050008 8004F408 A20901EB */ sb $t1, 0x1eb($s0) +.L8004F40C: +/* 05000C 8004F40C 820201EB */ lb $v0, 0x1eb($s0) +/* 050010 8004F410 00000000 */ nop +/* 050014 8004F414 18400006 */ blez $v0, .L8004F430 +/* 050018 8004F418 00000000 */ nop +/* 05001C 8004F41C 8FAD00B4 */ lw $t5, 0xb4($sp) +/* 050020 8004F420 00000000 */ nop +/* 050024 8004F424 004D5823 */ subu $t3, $v0, $t5 +/* 050028 8004F428 10000002 */ b .L8004F434 +/* 05002C 8004F42C A20B01EB */ sb $t3, 0x1eb($s0) +.L8004F430: +/* 050030 8004F430 A20001EB */ sb $zero, 0x1eb($s0) +.L8004F434: +/* 050034 8004F434 8602018E */ lh $v0, 0x18e($s0) +/* 050038 8004F438 00000000 */ nop +/* 05003C 8004F43C 1840002E */ blez $v0, .L8004F4F8 +/* 050040 8004F440 2841003D */ slti $at, $v0, 0x3d +/* 050044 8004F444 1420001B */ bnez $at, .L8004F4B4 +/* 050048 8004F448 00000000 */ nop +/* 05004C 8004F44C 8E04017C */ lw $a0, 0x17c($s0) +/* 050050 8004F450 00000000 */ nop +/* 050054 8004F454 10800009 */ beqz $a0, .L8004F47C +/* 050058 8004F458 00000000 */ nop +/* 05005C 8004F45C 8E25000C */ lw $a1, 0xc($s1) +/* 050060 8004F460 8E260010 */ lw $a2, 0x10($s1) +/* 050064 8004F464 8E270014 */ lw $a3, 0x14($s1) +/* 050068 8004F468 0C0025B6 */ jal func_800096D8 +/* 05006C 8004F46C 00000000 */ nop +/* 050070 8004F470 8602018E */ lh $v0, 0x18e($s0) +/* 050074 8004F474 10000018 */ b .L8004F4D8 +/* 050078 8004F478 8FA800B4 */ lw $t0, 0xb4($sp) +.L8004F47C: +/* 05007C 8004F47C 8E0C0118 */ lw $t4, 0x118($s0) +/* 050080 8004F480 2404009F */ li $a0, 159 +/* 050084 8004F484 11800013 */ beqz $t4, .L8004F4D4 +/* 050088 8004F488 240E0001 */ li $t6, 1 +/* 05008C 8004F48C 8E25000C */ lw $a1, 0xc($s1) +/* 050090 8004F490 8E260010 */ lw $a2, 0x10($s1) +/* 050094 8004F494 8E270014 */ lw $a3, 0x14($s1) +/* 050098 8004F498 260F017C */ addiu $t7, $s0, 0x17c +/* 05009C 8004F49C AFAF0014 */ sw $t7, 0x14($sp) +/* 0500A0 8004F4A0 0C002556 */ jal func_80009558 +/* 0500A4 8004F4A4 AFAE0010 */ sw $t6, 0x10($sp) +/* 0500A8 8004F4A8 8602018E */ lh $v0, 0x18e($s0) +/* 0500AC 8004F4AC 1000000A */ b .L8004F4D8 +/* 0500B0 8004F4B0 8FA800B4 */ lw $t0, 0xb4($sp) +.L8004F4B4: +/* 0500B4 8004F4B4 8E04017C */ lw $a0, 0x17c($s0) +/* 0500B8 8004F4B8 00000000 */ nop +/* 0500BC 8004F4BC 10800006 */ beqz $a0, .L8004F4D8 +/* 0500C0 8004F4C0 8FA800B4 */ lw $t0, 0xb4($sp) +/* 0500C4 8004F4C4 0C0025BE */ jal func_800096F8 +/* 0500C8 8004F4C8 00000000 */ nop +/* 0500CC 8004F4CC 8602018E */ lh $v0, 0x18e($s0) +/* 0500D0 8004F4D0 AE00017C */ sw $zero, 0x17c($s0) +.L8004F4D4: +/* 0500D4 8004F4D4 8FA800B4 */ lw $t0, 0xb4($sp) +.L8004F4D8: +/* 0500D8 8004F4D8 00000000 */ nop +/* 0500DC 8004F4DC 0048C823 */ subu $t9, $v0, $t0 +/* 0500E0 8004F4E0 A619018E */ sh $t9, 0x18e($s0) +/* 0500E4 8004F4E4 8618018E */ lh $t8, 0x18e($s0) +/* 0500E8 8004F4E8 00000000 */ nop +/* 0500EC 8004F4EC 1F000002 */ bgtz $t8, .L8004F4F8 +/* 0500F0 8004F4F0 00000000 */ nop +/* 0500F4 8004F4F4 A2000189 */ sb $zero, 0x189($s0) +.L8004F4F8: +/* 0500F8 8004F4F8 8E040180 */ lw $a0, 0x180($s0) +/* 0500FC 8004F4FC 00000000 */ nop +/* 050100 8004F500 10800006 */ beqz $a0, .L8004F51C +/* 050104 8004F504 00000000 */ nop +/* 050108 8004F508 8E25000C */ lw $a1, 0xc($s1) +/* 05010C 8004F50C 8E260010 */ lw $a2, 0x10($s1) +/* 050110 8004F510 8E270014 */ lw $a3, 0x14($s1) +/* 050114 8004F514 0C0025B6 */ jal func_800096D8 +/* 050118 8004F518 00000000 */ nop +.L8004F51C: +/* 05011C 8004F51C 0C003936 */ jal func_8000E4D8 +/* 050120 8004F520 00000000 */ nop +/* 050124 8004F524 1040000B */ beqz $v0, .L8004F554 +/* 050128 8004F528 00000000 */ nop +/* 05012C 8004F52C 860A0000 */ lh $t2, ($s0) +/* 050130 8004F530 3C098012 */ lui $t1, %hi(D_8011D540) # $t1, 0x8012 +/* 050134 8004F534 15400007 */ bnez $t2, .L8004F554 +/* 050138 8004F538 00000000 */ nop +/* 05013C 8004F53C 8D29D540 */ lw $t1, %lo(D_8011D540)($t1) +/* 050140 8004F540 8FA500B4 */ lw $a1, 0xb4($sp) +/* 050144 8004F544 15200003 */ bnez $t1, .L8004F554 +/* 050148 8004F548 00000000 */ nop +/* 05014C 8004F54C 0C0166FC */ jal func_80059BF0 +/* 050150 8004F550 02202025 */ move $a0, $s1 +.L8004F554: +/* 050154 8004F554 8E040024 */ lw $a0, 0x24($s0) +/* 050158 8004F558 00000000 */ nop +/* 05015C 8004F55C 10800006 */ beqz $a0, .L8004F578 +/* 050160 8004F560 00000000 */ nop +/* 050164 8004F564 8E25000C */ lw $a1, 0xc($s1) +/* 050168 8004F568 8E260010 */ lw $a2, 0x10($s1) +/* 05016C 8004F56C 8E270014 */ lw $a3, 0x14($s1) +/* 050170 8004F570 0C0025B6 */ jal func_800096D8 +/* 050174 8004F574 00000000 */ nop +.L8004F578: +/* 050178 8004F578 3C018012 */ lui $at, %hi(D_8011D584) # $at, 0x8012 +/* 05017C 8004F57C A020D584 */ sb $zero, %lo(D_8011D584)($at) +/* 050180 8004F580 8E020150 */ lw $v0, 0x150($s0) +/* 050184 8004F584 3C0D8012 */ lui $t5, %hi(D_8011D540) # $t5, 0x8012 +/* 050188 8004F588 1040003D */ beqz $v0, .L8004F680 +/* 05018C 8004F58C 00000000 */ nop +/* 050190 8004F590 8DADD540 */ lw $t5, %lo(D_8011D540)($t5) +/* 050194 8004F594 00002025 */ move $a0, $zero +/* 050198 8004F598 15A0003A */ bnez $t5, .L8004F684 +/* 05019C 8004F59C 240D00FF */ li $t5, 255 +/* 0501A0 8004F5A0 C624000C */ lwc1 $f4, 0xc($s1) +/* 0501A4 8004F5A4 0C0078A7 */ jal func_8001E29C +/* 0501A8 8004F5A8 E444000C */ swc1 $f4, 0xc($v0) +/* 0501AC 8004F5AC 820B0003 */ lb $t3, 3($s0) +/* 0501B0 8004F5B0 C6260010 */ lwc1 $f6, 0x10($s1) +/* 0501B4 8004F5B4 01626021 */ addu $t4, $t3, $v0 +/* 0501B8 8004F5B8 818E0000 */ lb $t6, ($t4) +/* 0501BC 8004F5BC 8E0F0150 */ lw $t7, 0x150($s0) +/* 0501C0 8004F5C0 448E5000 */ mtc1 $t6, $f10 +/* 0501C4 8004F5C4 3C01800E */ lui $at, %hi(D_800E65F4) # $at, 0x800e +/* 0501C8 8004F5C8 46805220 */ cvt.s.w $f8, $f10 +/* 0501CC 8004F5CC 46064100 */ add.s $f4, $f8, $f6 +/* 0501D0 8004F5D0 E5E40010 */ swc1 $f4, 0x10($t7) +/* 0501D4 8004F5D4 8E080150 */ lw $t0, 0x150($s0) +/* 0501D8 8004F5D8 C62A0014 */ lwc1 $f10, 0x14($s1) +/* 0501DC 8004F5DC 00000000 */ nop +/* 0501E0 8004F5E0 E50A0014 */ swc1 $f10, 0x14($t0) +/* 0501E4 8004F5E4 C6280030 */ lwc1 $f8, 0x30($s1) +/* 0501E8 8004F5E8 C42665F4 */ lwc1 $f6, %lo(D_800E65F4)($at) +/* 0501EC 8004F5EC 8E190150 */ lw $t9, 0x150($s0) +/* 0501F0 8004F5F0 46064103 */ div.s $f4, $f8, $f6 +/* 0501F4 8004F5F4 3C01800E */ lui $at, %hi(D_800E65F8) # $at, 0x800e +/* 0501F8 8004F5F8 E7240008 */ swc1 $f4, 8($t9) +/* 0501FC 8004F5FC C62A0030 */ lwc1 $f10, 0x30($s1) +/* 050200 8004F600 C42665FC */ lwc1 $f6, %lo(D_800E65FC)($at) +/* 050204 8004F604 C42765F8 */ lwc1 $f7, %lo(D_800E65F8)($at) +/* 050208 8004F608 46005221 */ cvt.d.s $f8, $f10 +/* 05020C 8004F60C 4626403C */ c.lt.d $f8, $f6 +/* 050210 8004F610 00000000 */ nop +/* 050214 8004F614 45010006 */ bc1t .L8004F630 +/* 050218 8004F618 00000000 */ nop +/* 05021C 8004F61C 0C0270C3 */ jal func_8009C30C +/* 050220 8004F620 00000000 */ nop +/* 050224 8004F624 30580004 */ andi $t8, $v0, 4 +/* 050228 8004F628 13000007 */ beqz $t8, .L8004F648 +/* 05022C 8004F62C 00000000 */ nop +.L8004F630: +/* 050230 8004F630 8E020150 */ lw $v0, 0x150($s0) +/* 050234 8004F634 00000000 */ nop +/* 050238 8004F638 844A0006 */ lh $t2, 6($v0) +/* 05023C 8004F63C 00000000 */ nop +/* 050240 8004F640 35494000 */ ori $t1, $t2, 0x4000 +/* 050244 8004F644 A4490006 */ sh $t1, 6($v0) +.L8004F648: +/* 050248 8004F648 8E020150 */ lw $v0, 0x150($s0) +/* 05024C 8004F64C 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 050250 8004F650 C4440008 */ lwc1 $f4, 8($v0) +/* 050254 8004F654 44814800 */ mtc1 $at, $f9 +/* 050258 8004F658 44804000 */ mtc1 $zero, $f8 +/* 05025C 8004F65C 460022A1 */ cvt.d.s $f10, $f4 +/* 050260 8004F660 4628503C */ c.lt.d $f10, $f8 +/* 050264 8004F664 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 050268 8004F668 45000004 */ bc1f .L8004F67C +/* 05026C 8004F66C 00000000 */ nop +/* 050270 8004F670 44813000 */ mtc1 $at, $f6 +/* 050274 8004F674 00000000 */ nop +/* 050278 8004F678 E4460008 */ swc1 $f6, 8($v0) +.L8004F67C: +/* 05027C 8004F67C AE000150 */ sw $zero, 0x150($s0) +.L8004F680: +/* 050280 8004F680 240D00FF */ li $t5, 255 +.L8004F684: +/* 050284 8004F684 A20D01FE */ sb $t5, 0x1fe($s0) +/* 050288 8004F688 0C013DDF */ jal func_8004F77C +/* 05028C 8004F68C 02002025 */ move $a0, $s0 +/* 050290 8004F690 960B020E */ lhu $t3, 0x20e($s0) +/* 050294 8004F694 8FAC00B4 */ lw $t4, 0xb4($sp) +/* 050298 8004F698 1160001E */ beqz $t3, .L8004F714 +/* 05029C 8004F69C 8FB9007C */ lw $t9, 0x7c($sp) +/* 0502A0 8004F6A0 92020210 */ lbu $v0, 0x210($s0) +/* 0502A4 8004F6A4 00000000 */ nop +/* 0502A8 8004F6A8 0182082A */ slt $at, $t4, $v0 +/* 0502AC 8004F6AC 10200003 */ beqz $at, .L8004F6BC +/* 0502B0 8004F6B0 004C7023 */ subu $t6, $v0, $t4 +/* 0502B4 8004F6B4 10000016 */ b .L8004F710 +/* 0502B8 8004F6B8 A20E0210 */ sb $t6, 0x210($s0) +.L8004F6BC: +/* 0502BC 8004F6BC 860F0000 */ lh $t7, ($s0) +/* 0502C0 8004F6C0 2401FFFF */ li $at, -1 +/* 0502C4 8004F6C4 15E1000B */ bne $t7, $at, .L8004F6F4 +/* 0502C8 8004F6C8 A2000210 */ sb $zero, 0x210($s0) +/* 0502CC 8004F6CC 9604020E */ lhu $a0, 0x20e($s0) +/* 0502D0 8004F6D0 8E25000C */ lw $a1, 0xc($s1) +/* 0502D4 8004F6D4 8E260010 */ lw $a2, 0x10($s1) +/* 0502D8 8004F6D8 8E270014 */ lw $a3, 0x14($s1) +/* 0502DC 8004F6DC 24080004 */ li $t0, 4 +/* 0502E0 8004F6E0 AFA80010 */ sw $t0, 0x10($sp) +/* 0502E4 8004F6E4 0C002556 */ jal func_80009558 +/* 0502E8 8004F6E8 AFA00014 */ sw $zero, 0x14($sp) +/* 0502EC 8004F6EC 10000008 */ b .L8004F710 +/* 0502F0 8004F6F0 A600020E */ sh $zero, 0x20e($s0) +.L8004F6F4: +/* 0502F4 8004F6F4 9604020E */ lhu $a0, 0x20e($s0) +/* 0502F8 8004F6F8 8E25000C */ lw $a1, 0xc($s1) +/* 0502FC 8004F6FC 8E260010 */ lw $a2, 0x10($s1) +/* 050300 8004F700 8E270014 */ lw $a3, 0x14($s1) +/* 050304 8004F704 0C0007AA */ jal func_80001EA8 +/* 050308 8004F708 AFA00010 */ sw $zero, 0x10($sp) +/* 05030C 8004F70C A600020E */ sh $zero, 0x20e($s0) +.L8004F710: +/* 050310 8004F710 8FB9007C */ lw $t9, 0x7c($sp) +.L8004F714: +/* 050314 8004F714 24010042 */ li $at, 66 +/* 050318 8004F718 8322004C */ lb $v0, 0x4c($t9) +/* 05031C 8004F71C 00000000 */ nop +/* 050320 8004F720 30580040 */ andi $t8, $v0, 0x40 +/* 050324 8004F724 13000008 */ beqz $t8, .L8004F748 +/* 050328 8004F728 00000000 */ nop +/* 05032C 8004F72C 10410006 */ beq $v0, $at, .L8004F748 +/* 050330 8004F730 00000000 */ nop +/* 050334 8004F734 C62C0010 */ lwc1 $f12, 0x10($s1) +/* 050338 8004F738 0C007106 */ jal func_8001C418 +/* 05033C 8004F73C 00000000 */ nop +/* 050340 8004F740 10000002 */ b .L8004F74C +/* 050344 8004F744 A2020212 */ sb $v0, 0x212($s0) +.L8004F748: +/* 050348 8004F748 A2000212 */ sb $zero, 0x212($s0) +.L8004F74C: +/* 05034C 8004F74C 82020193 */ lb $v0, 0x193($s0) +/* 050350 8004F750 820A0194 */ lb $t2, 0x194($s0) +/* 050354 8004F754 00000000 */ nop +/* 050358 8004F758 0142082A */ slt $at, $t2, $v0 +/* 05035C 8004F75C 10200003 */ beqz $at, .L8004F76C +/* 050360 8004F760 8FBF002C */ lw $ra, 0x2c($sp) +/* 050364 8004F764 A2020194 */ sb $v0, 0x194($s0) +/* 050368 8004F768 8FBF002C */ lw $ra, 0x2c($sp) +.L8004F76C: +/* 05036C 8004F76C 8FB00024 */ lw $s0, 0x24($sp) +/* 050370 8004F770 8FB10028 */ lw $s1, 0x28($sp) +/* 050374 8004F774 03E00008 */ jr $ra +/* 050378 8004F778 27BD00B0 */ addiu $sp, $sp, 0xb0 + diff --git a/asm/non_matchings/unknown_043920/func_8004F77C.s b/asm/non_matchings/unknown_043920/func_8004F77C.s new file mode 100644 index 00000000..e3fff96b --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8004F77C.s @@ -0,0 +1,36 @@ +glabel func_8004F77C +/* 05037C 8004F77C 908E020A */ lbu $t6, 0x20a($a0) +/* 050380 8004F780 2401FF7F */ li $at, -129 +/* 050384 8004F784 01C17824 */ and $t7, $t6, $at +/* 050388 8004F788 A08F020A */ sb $t7, 0x20a($a0) +/* 05038C 8004F78C 3C188012 */ lui $t8, %hi(D_8011D528) # $t8, 0x8012 +/* 050390 8004F790 8F18D528 */ lw $t8, %lo(D_8011D528)($t8) +/* 050394 8004F794 35E90080 */ ori $t1, $t7, 0x80 +/* 050398 8004F798 33194000 */ andi $t9, $t8, 0x4000 +/* 05039C 8004F79C 13200002 */ beqz $t9, .L8004F7A8 +/* 0503A0 8004F7A0 00000000 */ nop +/* 0503A4 8004F7A4 A089020A */ sb $t1, 0x20a($a0) +.L8004F7A8: +/* 0503A8 8004F7A8 9082020A */ lbu $v0, 0x20a($a0) +/* 0503AC 8004F7AC 00000000 */ nop +/* 0503B0 8004F7B0 304A00C0 */ andi $t2, $v0, 0xc0 +/* 0503B4 8004F7B4 11400007 */ beqz $t2, .L8004F7D4 +/* 0503B8 8004F7B8 3043000F */ andi $v1, $v0, 0xf +/* 0503BC 8004F7BC 24630001 */ addiu $v1, $v1, 1 +/* 0503C0 8004F7C0 28610003 */ slti $at, $v1, 3 +/* 0503C4 8004F7C4 14200008 */ bnez $at, .L8004F7E8 +/* 0503C8 8004F7C8 304BFFF0 */ andi $t3, $v0, 0xfff0 +/* 0503CC 8004F7CC 10000005 */ b .L8004F7E4 +/* 0503D0 8004F7D0 24030002 */ li $v1, 2 +.L8004F7D4: +/* 0503D4 8004F7D4 2463FFFF */ addiu $v1, $v1, -1 +/* 0503D8 8004F7D8 04610003 */ bgez $v1, .L8004F7E8 +/* 0503DC 8004F7DC 304BFFF0 */ andi $t3, $v0, 0xfff0 +/* 0503E0 8004F7E0 00001825 */ move $v1, $zero +.L8004F7E4: +/* 0503E4 8004F7E4 304BFFF0 */ andi $t3, $v0, 0xfff0 +.L8004F7E8: +/* 0503E8 8004F7E8 01636025 */ or $t4, $t3, $v1 +/* 0503EC 8004F7EC 03E00008 */ jr $ra +/* 0503F0 8004F7F0 A08C020A */ sb $t4, 0x20a($a0) + diff --git a/asm/non_matchings/unknown_043920/func_8004F7F4.s b/asm/non_matchings/unknown_043920/func_8004F7F4.s new file mode 100644 index 00000000..637622a1 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8004F7F4.s @@ -0,0 +1,1056 @@ +glabel func_8004F7F4 +/* 0503F4 8004F7F4 27BDFF40 */ addiu $sp, $sp, -0xc0 +/* 0503F8 8004F7F8 AFBF002C */ sw $ra, 0x2c($sp) +/* 0503FC 8004F7FC AFB10028 */ sw $s1, 0x28($sp) +/* 050400 8004F800 AFB00024 */ sw $s0, 0x24($sp) +/* 050404 8004F804 AFA400C0 */ sw $a0, 0xc0($sp) +/* 050408 8004F808 AFA500C4 */ sw $a1, 0xc4($sp) +/* 05040C 8004F80C A3A00053 */ sb $zero, 0x53($sp) +/* 050410 8004F810 80EE01D2 */ lb $t6, 0x1d2($a3) +/* 050414 8004F814 00E08025 */ move $s0, $a3 +/* 050418 8004F818 11C00008 */ beqz $t6, .L8004F83C +/* 05041C 8004F81C 00C08825 */ move $s1, $a2 +/* 050420 8004F820 3C048012 */ lui $a0, %hi(D_8011D528) # $a0, 0x8012 +/* 050424 8004F824 2484D528 */ addiu $a0, %lo(D_8011D528) # addiu $a0, $a0, -0x2ad8 +/* 050428 8004F828 8C8F0000 */ lw $t7, ($a0) +/* 05042C 8004F82C 3C01FFFF */ lui $at, (0xFFFF7FFF >> 16) # lui $at, 0xffff +/* 050430 8004F830 34217FFF */ ori $at, (0xFFFF7FFF & 0xFFFF) # ori $at, $at, 0x7fff +/* 050434 8004F834 01E1C024 */ and $t8, $t7, $at +/* 050438 8004F838 AC980000 */ sw $t8, ($a0) +.L8004F83C: +/* 05043C 8004F83C 3C198012 */ lui $t9, %hi(D_8011D55C) # $t9, 0x8012 +/* 050440 8004F840 8F39D55C */ lw $t9, %lo(D_8011D55C)($t9) +/* 050444 8004F844 3C048012 */ lui $a0, %hi(D_8011D528) # $a0, 0x8012 +/* 050448 8004F848 2401FFFF */ li $at, -1 +/* 05044C 8004F84C 13210005 */ beq $t9, $at, .L8004F864 +/* 050450 8004F850 2484D528 */ addiu $a0, %lo(D_8011D528) # addiu $a0, $a0, -0x2ad8 +/* 050454 8004F854 820801D8 */ lb $t0, 0x1d8($s0) +/* 050458 8004F858 00003025 */ move $a2, $zero +/* 05045C 8004F85C 11000008 */ beqz $t0, .L8004F880 +/* 050460 8004F860 00003825 */ move $a3, $zero +.L8004F864: +/* 050464 8004F864 8FA600C0 */ lw $a2, 0xc0($sp) +/* 050468 8004F868 8FA700C4 */ lw $a3, 0xc4($sp) +/* 05046C 8004F86C 02202025 */ move $a0, $s1 +/* 050470 8004F870 0C015044 */ jal func_80054110 +/* 050474 8004F874 02002825 */ move $a1, $s0 +/* 050478 8004F878 100003B2 */ b .L80050744 +/* 05047C 8004F87C 8FBF002C */ lw $ra, 0x2c($sp) +.L8004F880: +/* 050480 8004F880 820901D4 */ lb $t1, 0x1d4($s0) +/* 050484 8004F884 3C038012 */ lui $v1, %hi(D_8011D52C) # $v1, 0x8012 +/* 050488 8004F888 1120000D */ beqz $t1, .L8004F8C0 +/* 05048C 8004F88C 2463D52C */ addiu $v1, %lo(D_8011D52C) # addiu $v1, $v1, -0x2ad4 +/* 050490 8004F890 8C6A0000 */ lw $t2, ($v1) +/* 050494 8004F894 2401DFEF */ li $at, -8209 +/* 050498 8004F898 01415824 */ and $t3, $t2, $at +/* 05049C 8004F89C AC6B0000 */ sw $t3, ($v1) +/* 0504A0 8004F8A0 820201D4 */ lb $v0, 0x1d4($s0) +/* 0504A4 8004F8A4 00000000 */ nop +/* 0504A8 8004F8A8 18400004 */ blez $v0, .L8004F8BC +/* 0504AC 8004F8AC 244D0004 */ addiu $t5, $v0, 4 +/* 0504B0 8004F8B0 244CFFFC */ addiu $t4, $v0, -4 +/* 0504B4 8004F8B4 10000002 */ b .L8004F8C0 +/* 0504B8 8004F8B8 A20C01D4 */ sb $t4, 0x1d4($s0) +.L8004F8BC: +/* 0504BC 8004F8BC A20D01D4 */ sb $t5, 0x1d4($s0) +.L8004F8C0: +/* 0504C0 8004F8C0 8C8E0000 */ lw $t6, ($a0) +/* 0504C4 8004F8C4 00001825 */ move $v1, $zero +/* 0504C8 8004F8C8 31CF4000 */ andi $t7, $t6, 0x4000 +/* 0504CC 8004F8CC 11E0000D */ beqz $t7, .L8004F904 +/* 0504D0 8004F8D0 02002025 */ move $a0, $s0 +/* 0504D4 8004F8D4 820201E6 */ lb $v0, 0x1e6($s0) +/* 0504D8 8004F8D8 00000000 */ nop +/* 0504DC 8004F8DC 10400009 */ beqz $v0, .L8004F904 +/* 0504E0 8004F8E0 00000000 */ nop +/* 0504E4 8004F8E4 000218C0 */ sll $v1, $v0, 3 +/* 0504E8 8004F8E8 00621823 */ subu $v1, $v1, $v0 +/* 0504EC 8004F8EC 000318C0 */ sll $v1, $v1, 3 +/* 0504F0 8004F8F0 00621821 */ addu $v1, $v1, $v0 +/* 0504F4 8004F8F4 000318C0 */ sll $v1, $v1, 3 +/* 0504F8 8004F8F8 00621823 */ subu $v1, $v1, $v0 +/* 0504FC 8004F8FC 10000001 */ b .L8004F904 +/* 050500 8004F900 000318C0 */ sll $v1, $v1, 3 +.L8004F904: +/* 050504 8004F904 921801FE */ lbu $t8, 0x1fe($s0) +/* 050508 8004F908 00000000 */ nop +/* 05050C 8004F90C 17000006 */ bnez $t8, .L8004F928 +/* 050510 8004F910 8FA500C0 */ lw $a1, 0xc0($sp) +/* 050514 8004F914 8E390074 */ lw $t9, 0x74($s1) +/* 050518 8004F918 00000000 */ nop +/* 05051C 8004F91C 37280400 */ ori $t0, $t9, 0x400 +/* 050520 8004F920 AE280074 */ sw $t0, 0x74($s1) +/* 050524 8004F924 8FA500C0 */ lw $a1, 0xc0($sp) +.L8004F928: +/* 050528 8004F928 0C014214 */ jal func_80050850 +/* 05052C 8004F92C AFA30010 */ sw $v1, 0x10($sp) +/* 050530 8004F930 8FA600C4 */ lw $a2, 0xc4($sp) +/* 050534 8004F934 02202025 */ move $a0, $s1 +/* 050538 8004F938 0C014DD4 */ jal func_80053750 +/* 05053C 8004F93C 02002825 */ move $a1, $s0 +/* 050540 8004F940 8FA600C0 */ lw $a2, 0xc0($sp) +/* 050544 8004F944 02202025 */ move $a0, $s1 +/* 050548 8004F948 0C014871 */ jal func_800521C4 +/* 05054C 8004F94C 02002825 */ move $a1, $s0 +/* 050550 8004F950 3C018012 */ lui $at, %hi(D_8011D550) # $at, 0x8012 +/* 050554 8004F954 A420D550 */ sh $zero, %lo(D_8011D550)($at) +/* 050558 8004F958 3C018012 */ lui $at, %hi(D_8011D554) # $at, 0x8012 +/* 05055C 8004F95C AC20D554 */ sw $zero, %lo(D_8011D554)($at) +/* 050560 8004F960 3C018012 */ lui $at, %hi(D_8011D558) # $at, 0x8012 +/* 050564 8004F964 AC20D558 */ sw $zero, %lo(D_8011D558)($at) +/* 050568 8004F968 C624000C */ lwc1 $f4, 0xc($s1) +/* 05056C 8004F96C 00000000 */ nop +/* 050570 8004F970 E7A400A8 */ swc1 $f4, 0xa8($sp) +/* 050574 8004F974 C6260010 */ lwc1 $f6, 0x10($s1) +/* 050578 8004F978 00000000 */ nop +/* 05057C 8004F97C E7A600A4 */ swc1 $f6, 0xa4($sp) +/* 050580 8004F980 C6280014 */ lwc1 $f8, 0x14($s1) +/* 050584 8004F984 00000000 */ nop +/* 050588 8004F988 E7A800A0 */ swc1 $f8, 0xa0($sp) +/* 05058C 8004F98C 820201E6 */ lb $v0, 0x1e6($s0) +/* 050590 8004F990 00000000 */ nop +/* 050594 8004F994 10400068 */ beqz $v0, .L8004FB38 +/* 050598 8004F998 00000000 */ nop +/* 05059C 8004F99C 04410013 */ bgez $v0, .L8004F9EC +/* 0505A0 8004F9A0 3C068012 */ lui $a2, %hi(D_8011D534) # $a2, 0x8012 +/* 0505A4 8004F9A4 24C6D534 */ addiu $a2, %lo(D_8011D534) # addiu $a2, $a2, -0x2acc +/* 0505A8 8004F9A8 8CC90000 */ lw $t1, ($a2) +/* 0505AC 8004F9AC 8FAB00C0 */ lw $t3, 0xc0($sp) +/* 0505B0 8004F9B0 2921001A */ slti $at, $t1, 0x1a +/* 0505B4 8004F9B4 1420000D */ bnez $at, .L8004F9EC +/* 0505B8 8004F9B8 00000000 */ nop +/* 0505BC 8004F9BC 860A016E */ lh $t2, 0x16e($s0) +/* 0505C0 8004F9C0 00000000 */ nop +/* 0505C4 8004F9C4 014B6021 */ addu $t4, $t2, $t3 +/* 0505C8 8004F9C8 A60C016E */ sh $t4, 0x16e($s0) +/* 0505CC 8004F9CC 8602016E */ lh $v0, 0x16e($s0) +/* 0505D0 8004F9D0 00000000 */ nop +/* 0505D4 8004F9D4 0441001C */ bgez $v0, .L8004FA48 +/* 0505D8 8004F9D8 00000000 */ nop +/* 0505DC 8004F9DC A600016E */ sh $zero, 0x16e($s0) +/* 0505E0 8004F9E0 8602016E */ lh $v0, 0x16e($s0) +/* 0505E4 8004F9E4 10000019 */ b .L8004FA4C +/* 0505E8 8004F9E8 44825000 */ mtc1 $v0, $f10 +.L8004F9EC: +/* 0505EC 8004F9EC 3C068012 */ lui $a2, %hi(D_8011D534) # $a2, 0x8012 +/* 0505F0 8004F9F0 18400012 */ blez $v0, .L8004FA3C +/* 0505F4 8004F9F4 24C6D534 */ addiu $a2, %lo(D_8011D534) # addiu $a2, $a2, -0x2acc +/* 0505F8 8004F9F8 8CCD0000 */ lw $t5, ($a2) +/* 0505FC 8004F9FC 8FAF00C0 */ lw $t7, 0xc0($sp) +/* 050600 8004FA00 29A1FFE7 */ slti $at, $t5, -0x19 +/* 050604 8004FA04 1020000D */ beqz $at, .L8004FA3C +/* 050608 8004FA08 00000000 */ nop +/* 05060C 8004FA0C 860E016E */ lh $t6, 0x16e($s0) +/* 050610 8004FA10 00000000 */ nop +/* 050614 8004FA14 01CFC023 */ subu $t8, $t6, $t7 +/* 050618 8004FA18 A618016E */ sh $t8, 0x16e($s0) +/* 05061C 8004FA1C 8602016E */ lh $v0, 0x16e($s0) +/* 050620 8004FA20 00000000 */ nop +/* 050624 8004FA24 18400008 */ blez $v0, .L8004FA48 +/* 050628 8004FA28 00000000 */ nop +/* 05062C 8004FA2C A600016E */ sh $zero, 0x16e($s0) +/* 050630 8004FA30 8602016E */ lh $v0, 0x16e($s0) +/* 050634 8004FA34 10000005 */ b .L8004FA4C +/* 050638 8004FA38 44825000 */ mtc1 $v0, $f10 +.L8004FA3C: +/* 05063C 8004FA3C A600016E */ sh $zero, 0x16e($s0) +/* 050640 8004FA40 8602016E */ lh $v0, 0x16e($s0) +/* 050644 8004FA44 00000000 */ nop +.L8004FA48: +/* 050648 8004FA48 44825000 */ mtc1 $v0, $f10 +.L8004FA4C: +/* 05064C 8004FA4C 44802000 */ mtc1 $zero, $f4 +/* 050650 8004FA50 46805420 */ cvt.s.w $f16, $f10 +/* 050654 8004FA54 3C0142A0 */ li $at, 0x42A00000 # 80.000000 +/* 050658 8004FA58 44814000 */ mtc1 $at, $f8 +/* 05065C 8004FA5C E7B000B8 */ swc1 $f16, 0xb8($sp) +/* 050660 8004FA60 C7B200B8 */ lwc1 $f18, 0xb8($sp) +/* 050664 8004FA64 02202025 */ move $a0, $s1 +/* 050668 8004FA68 4604903C */ c.lt.s $f18, $f4 +/* 05066C 8004FA6C 00000000 */ nop +/* 050670 8004FA70 45000003 */ bc1f .L8004FA80 +/* 050674 8004FA74 00000000 */ nop +/* 050678 8004FA78 46009187 */ neg.s $f6, $f18 +/* 05067C 8004FA7C E7A600B8 */ swc1 $f6, 0xb8($sp) +.L8004FA80: +/* 050680 8004FA80 C7AA00B8 */ lwc1 $f10, 0xb8($sp) +/* 050684 8004FA84 00000000 */ nop +/* 050688 8004FA88 460A403C */ c.lt.s $f8, $f10 +/* 05068C 8004FA8C 00000000 */ nop +/* 050690 8004FA90 45000009 */ bc1f .L8004FAB8 +/* 050694 8004FA94 00000000 */ nop +/* 050698 8004FA98 0C015C12 */ jal func_80057048 +/* 05069C 8004FA9C 2405001C */ li $a1, 28 +/* 0506A0 8004FAA0 821901E6 */ lb $t9, 0x1e6($s0) +/* 0506A4 8004FAA4 3C068012 */ lui $a2, %hi(D_8011D534) # $a2, 0x8012 +/* 0506A8 8004FAA8 00194023 */ negu $t0, $t9 +/* 0506AC 8004FAAC 24C6D534 */ addiu $a2, %lo(D_8011D534) # addiu $a2, $a2, -0x2acc +/* 0506B0 8004FAB0 A20801DB */ sb $t0, 0x1db($s0) +/* 0506B4 8004FAB4 A20001E6 */ sb $zero, 0x1e6($s0) +.L8004FAB8: +/* 0506B8 8004FAB8 8CC30000 */ lw $v1, ($a2) +/* 0506BC 8004FABC 00000000 */ nop +/* 0506C0 8004FAC0 28610033 */ slti $at, $v1, 0x33 +/* 0506C4 8004FAC4 14200004 */ bnez $at, .L8004FAD8 +/* 0506C8 8004FAC8 2861FFCE */ slti $at, $v1, -0x32 +/* 0506CC 8004FACC 24030032 */ li $v1, 50 +/* 0506D0 8004FAD0 ACC30000 */ sw $v1, ($a2) +/* 0506D4 8004FAD4 2861FFCE */ slti $at, $v1, -0x32 +.L8004FAD8: +/* 0506D8 8004FAD8 10200003 */ beqz $at, .L8004FAE8 +/* 0506DC 8004FADC 00000000 */ nop +/* 0506E0 8004FAE0 2403FFCE */ li $v1, -50 +/* 0506E4 8004FAE4 ACC30000 */ sw $v1, ($a2) +.L8004FAE8: +/* 0506E8 8004FAE8 18600005 */ blez $v1, .L8004FB00 +/* 0506EC 8004FAEC 00000000 */ nop +/* 0506F0 8004FAF0 820B01E6 */ lb $t3, 0x1e6($s0) +/* 0506F4 8004FAF4 00000000 */ nop +/* 0506F8 8004FAF8 1D600006 */ bgtz $t3, .L8004FB14 +/* 0506FC 8004FAFC 00036083 */ sra $t4, $v1, 2 +.L8004FB00: +/* 050700 8004FB00 820201E6 */ lb $v0, 0x1e6($s0) +/* 050704 8004FB04 04610007 */ bgez $v1, .L8004FB24 +/* 050708 8004FB08 00026900 */ sll $t5, $v0, 4 +/* 05070C 8004FB0C 04410004 */ bgez $v0, .L8004FB20 +/* 050710 8004FB10 00036083 */ sra $t4, $v1, 2 +.L8004FB14: +/* 050714 8004FB14 ACCC0000 */ sw $t4, ($a2) +/* 050718 8004FB18 820201E6 */ lb $v0, 0x1e6($s0) +/* 05071C 8004FB1C 01801825 */ move $v1, $t4 +.L8004FB20: +/* 050720 8004FB20 00026900 */ sll $t5, $v0, 4 +.L8004FB24: +/* 050724 8004FB24 01A26823 */ subu $t5, $t5, $v0 +/* 050728 8004FB28 000D6880 */ sll $t5, $t5, 2 +/* 05072C 8004FB2C 006D7021 */ addu $t6, $v1, $t5 +/* 050730 8004FB30 10000002 */ b .L8004FB3C +/* 050734 8004FB34 ACCE0000 */ sw $t6, ($a2) +.L8004FB38: +/* 050738 8004FB38 A600016E */ sh $zero, 0x16e($s0) +.L8004FB3C: +/* 05073C 8004FB3C 8FA600C4 */ lw $a2, 0xc4($sp) +/* 050740 8004FB40 02002025 */ move $a0, $s0 +/* 050744 8004FB44 0C015E6C */ jal func_800579B0 +/* 050748 8004FB48 00002825 */ move $a1, $zero +/* 05074C 8004FB4C 02202025 */ move $a0, $s1 +/* 050750 8004FB50 0C015D7B */ jal func_800575EC +/* 050754 8004FB54 02002825 */ move $a1, $s0 +/* 050758 8004FB58 02202025 */ move $a0, $s1 +/* 05075C 8004FB5C 0C014D71 */ jal func_800535C4 +/* 050760 8004FB60 02002825 */ move $a1, $s0 +/* 050764 8004FB64 0C014D99 */ jal func_80053664 +/* 050768 8004FB68 02002025 */ move $a0, $s0 +/* 05076C 8004FB6C 8FA600C0 */ lw $a2, 0xc0($sp) +/* 050770 8004FB70 02202025 */ move $a0, $s1 +/* 050774 8004FB74 0C0157B0 */ jal func_80055EC0 +/* 050778 8004FB78 02002825 */ move $a1, $s0 +/* 05077C 8004FB7C 8FA600C0 */ lw $a2, 0xc0($sp) +/* 050780 8004FB80 02202025 */ move $a0, $s1 +/* 050784 8004FB84 0C014FA7 */ jal func_80053E9C +/* 050788 8004FB88 02002825 */ move $a1, $s0 +/* 05078C 8004FB8C 820F01DB */ lb $t7, 0x1db($s0) +/* 050790 8004FB90 00000000 */ nop +/* 050794 8004FB94 11E00008 */ beqz $t7, .L8004FBB8 +/* 050798 8004FB98 00000000 */ nop +/* 05079C 8004FB9C 8FA600C0 */ lw $a2, 0xc0($sp) +/* 0507A0 8004FBA0 8FA700C4 */ lw $a3, 0xc4($sp) +/* 0507A4 8004FBA4 02202025 */ move $a0, $s1 +/* 0507A8 8004FBA8 0C014AD9 */ jal func_80052B64 +/* 0507AC 8004FBAC 02002825 */ move $a1, $s0 +/* 0507B0 8004FBB0 10000010 */ b .L8004FBF4 +/* 0507B4 8004FBB4 8E02001C */ lw $v0, 0x1c($s0) +.L8004FBB8: +/* 0507B8 8004FBB8 821801E2 */ lb $t8, 0x1e2($s0) +/* 0507BC 8004FBBC 8FA600C0 */ lw $a2, 0xc0($sp) +/* 0507C0 8004FBC0 1B000008 */ blez $t8, .L8004FBE4 +/* 0507C4 8004FBC4 02202025 */ move $a0, $s1 +/* 0507C8 8004FBC8 8FA600C0 */ lw $a2, 0xc0($sp) +/* 0507CC 8004FBCC 8FA700C4 */ lw $a3, 0xc4($sp) +/* 0507D0 8004FBD0 02202025 */ move $a0, $s1 +/* 0507D4 8004FBD4 0C01428A */ jal func_80050A28 +/* 0507D8 8004FBD8 02002825 */ move $a1, $s0 +/* 0507DC 8004FBDC 10000005 */ b .L8004FBF4 +/* 0507E0 8004FBE0 8E02001C */ lw $v0, 0x1c($s0) +.L8004FBE4: +/* 0507E4 8004FBE4 8FA700C4 */ lw $a3, 0xc4($sp) +/* 0507E8 8004FBE8 0C014B5F */ jal func_80052D7C +/* 0507EC 8004FBEC 02002825 */ move $a1, $s0 +/* 0507F0 8004FBF0 8E02001C */ lw $v0, 0x1c($s0) +.L8004FBF4: +/* 0507F4 8004FBF4 00000000 */ nop +/* 0507F8 8004FBF8 10400004 */ beqz $v0, .L8004FC0C +/* 0507FC 8004FBFC 00000000 */ nop +/* 050800 8004FC00 0C001223 */ jal func_8000488C +/* 050804 8004FC04 00402025 */ move $a0, $v0 +/* 050808 8004FC08 AE00001C */ sw $zero, 0x1c($s0) +.L8004FC0C: +/* 05080C 8004FC0C C60000C0 */ lwc1 $f0, 0xc0($s0) +/* 050810 8004FC10 44808000 */ mtc1 $zero, $f16 +/* 050814 8004FC14 00000000 */ nop +/* 050818 8004FC18 46008032 */ c.eq.s $f16, $f0 +/* 05081C 8004FC1C 00000000 */ nop +/* 050820 8004FC20 45010018 */ bc1t .L8004FC84 +/* 050824 8004FC24 00000000 */ nop +/* 050828 8004FC28 821901D7 */ lb $t9, 0x1d7($s0) +/* 05082C 8004FC2C 2401000B */ li $at, 11 +/* 050830 8004FC30 13210014 */ beq $t9, $at, .L8004FC84 +/* 050834 8004FC34 3C014024 */ li $at, 0x40240000 # 2.562500 +/* 050838 8004FC38 44819800 */ mtc1 $at, $f19 +/* 05083C 8004FC3C 44809000 */ mtc1 $zero, $f18 +/* 050840 8004FC40 46000121 */ cvt.d.s $f4, $f0 +/* 050844 8004FC44 46322181 */ sub.d $f6, $f4, $f18 +/* 050848 8004FC48 3C01800E */ lui $at, %hi(D_800E6604) # $at, 0x800e +/* 05084C 8004FC4C 46203220 */ cvt.s.d $f8, $f6 +/* 050850 8004FC50 C4316600 */ lwc1 $f17, %lo(D_800E6600)($at) +/* 050854 8004FC54 C4306604 */ lwc1 $f16, %lo(D_800E6604)($at) +/* 050858 8004FC58 460042A1 */ cvt.d.s $f10, $f8 +/* 05085C 8004FC5C 46305102 */ mul.d $f4, $f10, $f16 +/* 050860 8004FC60 C7B200C4 */ lwc1 $f18, 0xc4($sp) +/* 050864 8004FC64 E7A800B8 */ swc1 $f8, 0xb8($sp) +/* 050868 8004FC68 460091A1 */ cvt.d.s $f6, $f18 +/* 05086C 8004FC6C C62A0020 */ lwc1 $f10, 0x20($s1) +/* 050870 8004FC70 46262202 */ mul.d $f8, $f4, $f6 +/* 050874 8004FC74 46005421 */ cvt.d.s $f16, $f10 +/* 050878 8004FC78 46288480 */ add.d $f18, $f16, $f8 +/* 05087C 8004FC7C 46209120 */ cvt.s.d $f4, $f18 +/* 050880 8004FC80 E6240020 */ swc1 $f4, 0x20($s1) +.L8004FC84: +/* 050884 8004FC84 0C01AF6C */ jal func_8006BDB0 +/* 050888 8004FC88 00000000 */ nop +/* 05088C 8004FC8C C60A00C0 */ lwc1 $f10, 0xc0($s0) +/* 050890 8004FC90 44803800 */ mtc1 $zero, $f7 +/* 050894 8004FC94 44803000 */ mtc1 $zero, $f6 +/* 050898 8004FC98 46005421 */ cvt.d.s $f16, $f10 +/* 05089C 8004FC9C 46303032 */ c.eq.d $f6, $f16 +/* 0508A0 8004FCA0 00000000 */ nop +/* 0508A4 8004FCA4 45010004 */ bc1t .L8004FCB8 +/* 0508A8 8004FCA8 00000000 */ nop +/* 0508AC 8004FCAC 80480002 */ lb $t0, 2($v0) +/* 0508B0 8004FCB0 00000000 */ nop +/* 0508B4 8004FCB4 15000005 */ bnez $t0, .L8004FCCC +.L8004FCB8: +/* 0508B8 8004FCB8 3C098012 */ lui $t1, %hi(D_8011D581) # $t1, 0x8012 +/* 0508BC 8004FCBC 8129D581 */ lb $t1, %lo(D_8011D581)($t1) +/* 0508C0 8004FCC0 2401000A */ li $at, 10 +/* 0508C4 8004FCC4 1521004F */ bne $t1, $at, .L8004FE04 +/* 0508C8 8004FCC8 00000000 */ nop +.L8004FCCC: +/* 0508CC 8004FCCC 920A01F0 */ lbu $t2, 0x1f0($s0) +/* 0508D0 8004FCD0 02202025 */ move $a0, $s1 +/* 0508D4 8004FCD4 1140000A */ beqz $t2, .L8004FD00 +/* 0508D8 8004FCD8 02002825 */ move $a1, $s0 +/* 0508DC 8004FCDC 3C01800E */ lui $at, %hi(D_800E660C) # $at, 0x800e +/* 0508E0 8004FCE0 C60800A8 */ lwc1 $f8, 0xa8($s0) +/* 0508E4 8004FCE4 C4256608 */ lwc1 $f5, %lo(D_800E6608)($at) +/* 0508E8 8004FCE8 C424660C */ lwc1 $f4, %lo(D_800E660C)($at) +/* 0508EC 8004FCEC 460044A1 */ cvt.d.s $f18, $f8 +/* 0508F0 8004FCF0 46249281 */ sub.d $f10, $f18, $f4 +/* 0508F4 8004FCF4 462051A0 */ cvt.s.d $f6, $f10 +/* 0508F8 8004FCF8 10000009 */ b .L8004FD20 +/* 0508FC 8004FCFC E60600A8 */ swc1 $f6, 0xa8($s0) +.L8004FD00: +/* 050900 8004FD00 3C01800E */ lui $at, %hi(D_800E6614) # $at, 0x800e +/* 050904 8004FD04 C61000A8 */ lwc1 $f16, 0xa8($s0) +/* 050908 8004FD08 C4336610 */ lwc1 $f19, %lo(D_800E6610)($at) +/* 05090C 8004FD0C C4326614 */ lwc1 $f18, %lo(D_800E6614)($at) +/* 050910 8004FD10 46008221 */ cvt.d.s $f8, $f16 +/* 050914 8004FD14 46324101 */ sub.d $f4, $f8, $f18 +/* 050918 8004FD18 462022A0 */ cvt.s.d $f10, $f4 +/* 05091C 8004FD1C E60A00A8 */ swc1 $f10, 0xa8($s0) +.L8004FD20: +/* 050920 8004FD20 27AB00B4 */ addiu $t3, $sp, 0xb4 +/* 050924 8004FD24 AFAB0010 */ sw $t3, 0x10($sp) +/* 050928 8004FD28 27A600B8 */ addiu $a2, $sp, 0xb8 +/* 05092C 8004FD2C 0C016420 */ jal func_80059080 +/* 050930 8004FD30 27A700B0 */ addiu $a3, $sp, 0xb0 +/* 050934 8004FD34 920C01F0 */ lbu $t4, 0x1f0($s0) +/* 050938 8004FD38 3C01800E */ lui $at, 0x800e +/* 05093C 8004FD3C 1180000A */ beqz $t4, .L8004FD68 +/* 050940 8004FD40 00000000 */ nop +/* 050944 8004FD44 3C01800E */ lui $at, %hi(D_800E6624) # $at, 0x800e +/* 050948 8004FD48 C60600A8 */ lwc1 $f6, 0xa8($s0) +/* 05094C 8004FD4C C4296618 */ lwc1 $f9, %lo(D_800E6618)($at) +/* 050950 8004FD50 C428661C */ lwc1 $f8, %lo(D_800E661C)($at) +/* 050954 8004FD54 46003421 */ cvt.d.s $f16, $f6 +/* 050958 8004FD58 46288480 */ add.d $f18, $f16, $f8 +/* 05095C 8004FD5C 46209120 */ cvt.s.d $f4, $f18 +/* 050960 8004FD60 10000008 */ b .L8004FD84 +/* 050964 8004FD64 E60400A8 */ swc1 $f4, 0xa8($s0) +.L8004FD68: +/* 050968 8004FD68 C60A00A8 */ lwc1 $f10, 0xa8($s0) +/* 05096C 8004FD6C C4316620 */ lwc1 $f17, %lo(D_800E6620)($at) +/* 050970 8004FD70 C4306624 */ lwc1 $f16, %lo(D_800E6624)($at) +/* 050974 8004FD74 460051A1 */ cvt.d.s $f6, $f10 +/* 050978 8004FD78 46303200 */ add.d $f8, $f6, $f16 +/* 05097C 8004FD7C 462044A0 */ cvt.s.d $f18, $f8 +/* 050980 8004FD80 E61200A8 */ swc1 $f18, 0xa8($s0) +.L8004FD84: +/* 050984 8004FD84 C7A400B8 */ lwc1 $f4, 0xb8($sp) +/* 050988 8004FD88 C62A000C */ lwc1 $f10, 0xc($s1) +/* 05098C 8004FD8C C7B000B4 */ lwc1 $f16, 0xb4($sp) +/* 050990 8004FD90 460A2181 */ sub.s $f6, $f4, $f10 +/* 050994 8004FD94 E7A600B8 */ swc1 $f6, 0xb8($sp) +/* 050998 8004FD98 C6280014 */ lwc1 $f8, 0x14($s1) +/* 05099C 8004FD9C 46063102 */ mul.s $f4, $f6, $f6 +/* 0509A0 8004FDA0 46088481 */ sub.s $f18, $f16, $f8 +/* 0509A4 8004FDA4 E7B200B4 */ swc1 $f18, 0xb4($sp) +/* 0509A8 8004FDA8 46129282 */ mul.s $f10, $f18, $f18 +/* 0509AC 8004FDAC 0C0326B4 */ jal sqrtf +/* 0509B0 8004FDB0 460A2300 */ add.s $f12, $f4, $f10 +/* 0509B4 8004FDB4 C7B000B8 */ lwc1 $f16, 0xb8($sp) +/* 0509B8 8004FDB8 C7A600B4 */ lwc1 $f6, 0xb4($sp) +/* 0509BC 8004FDBC 46008203 */ div.s $f8, $f16, $f0 +/* 0509C0 8004FDC0 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 0509C4 8004FDC4 44811000 */ mtc1 $at, $f2 +/* 0509C8 8004FDC8 E7A000B0 */ swc1 $f0, 0xb0($sp) +/* 0509CC 8004FDCC 3C014118 */ li $at, 0x41180000 # 9.500000 +/* 0509D0 8004FDD0 240D0001 */ li $t5, 1 +/* 0509D4 8004FDD4 46003483 */ div.s $f18, $f6, $f0 +/* 0509D8 8004FDD8 46024102 */ mul.s $f4, $f8, $f2 +/* 0509DC 8004FDDC E7A800B8 */ swc1 $f8, 0xb8($sp) +/* 0509E0 8004FDE0 44813000 */ mtc1 $at, $f6 +/* 0509E4 8004FDE4 E7B200B4 */ swc1 $f18, 0xb4($sp) +/* 0509E8 8004FDE8 E624001C */ swc1 $f4, 0x1c($s1) +/* 0509EC 8004FDEC C7AA00B4 */ lwc1 $f10, 0xb4($sp) +/* 0509F0 8004FDF0 E6260020 */ swc1 $f6, 0x20($s1) +/* 0509F4 8004FDF4 46025402 */ mul.s $f16, $f10, $f2 +/* 0509F8 8004FDF8 E6300024 */ swc1 $f16, 0x24($s1) +/* 0509FC 8004FDFC 10000007 */ b .L8004FE1C +/* 050A00 8004FE00 A20D01F0 */ sb $t5, 0x1f0($s0) +.L8004FE04: +/* 050A04 8004FE04 820E01E2 */ lb $t6, 0x1e2($s0) +/* 050A08 8004FE08 00000000 */ nop +/* 050A0C 8004FE0C 29C10003 */ slti $at, $t6, 3 +/* 050A10 8004FE10 14200002 */ bnez $at, .L8004FE1C +/* 050A14 8004FE14 00000000 */ nop +/* 050A18 8004FE18 A20001F0 */ sb $zero, 0x1f0($s0) +.L8004FE1C: +/* 050A1C 8004FE1C 8E0F0148 */ lw $t7, 0x148($s0) +/* 050A20 8004FE20 00000000 */ nop +/* 050A24 8004FE24 15E00005 */ bnez $t7, .L8004FE3C +/* 050A28 8004FE28 00000000 */ nop +/* 050A2C 8004FE2C 8FA600C0 */ lw $a2, 0xc0($sp) +/* 050A30 8004FE30 02202025 */ move $a0, $s1 +/* 050A34 8004FE34 0C014943 */ jal func_8005250C +/* 050A38 8004FE38 02002825 */ move $a1, $s0 +.L8004FE3C: +/* 050A3C 8004FE3C 860501A2 */ lh $a1, 0x1a2($s0) +/* 050A40 8004FE40 3C188012 */ lui $t8, %hi(D_8011D554) # $t8, 0x8012 +/* 050A44 8004FE44 8F18D554 */ lw $t8, %lo(D_8011D554)($t8) +/* 050A48 8004FE48 30B9FFFF */ andi $t9, $a1, 0xffff +/* 050A4C 8004FE4C 34018001 */ li $at, 32769 +/* 050A50 8004FE50 03191823 */ subu $v1, $t8, $t9 +/* 050A54 8004FE54 0061082A */ slt $at, $v1, $at +/* 050A58 8004FE58 8FA900C0 */ lw $t1, 0xc0($sp) +/* 050A5C 8004FE5C 14200003 */ bnez $at, .L8004FE6C +/* 050A60 8004FE60 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 050A64 8004FE64 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 050A68 8004FE68 00611821 */ addu $v1, $v1, $at +.L8004FE6C: +/* 050A6C 8004FE6C 28618000 */ slti $at, $v1, -0x8000 +/* 050A70 8004FE70 10200002 */ beqz $at, .L8004FE7C +/* 050A74 8004FE74 3401FFFF */ li $at, 65535 +/* 050A78 8004FE78 00611821 */ addu $v1, $v1, $at +.L8004FE7C: +/* 050A7C 8004FE7C 00034083 */ sra $t0, $v1, 2 +/* 050A80 8004FE80 290102EF */ slti $at, $t0, 0x2ef +/* 050A84 8004FE84 14200002 */ bnez $at, .L8004FE90 +/* 050A88 8004FE88 01001825 */ move $v1, $t0 +/* 050A8C 8004FE8C 240302EE */ li $v1, 750 +.L8004FE90: +/* 050A90 8004FE90 2861FD12 */ slti $at, $v1, -0x2ee +/* 050A94 8004FE94 10200002 */ beqz $at, .L8004FEA0 +/* 050A98 8004FE98 00000000 */ nop +/* 050A9C 8004FE9C 2403FD12 */ li $v1, -750 +.L8004FEA0: +/* 050AA0 8004FEA0 00690019 */ multu $v1, $t1 +/* 050AA4 8004FEA4 860C01A0 */ lh $t4, 0x1a0($s0) +/* 050AA8 8004FEA8 3C0F8012 */ lui $t7, %hi(D_8011D558) # $t7, 0x8012 +/* 050AAC 8004FEAC 3C048012 */ lui $a0, %hi(D_8011D550) # $a0, 0x8012 +/* 050AB0 8004FEB0 00005012 */ mflo $t2 +/* 050AB4 8004FEB4 00AA5821 */ addu $t3, $a1, $t2 +/* 050AB8 8004FEB8 A60B01A2 */ sh $t3, 0x1a2($s0) +/* 050ABC 8004FEBC 860D01A2 */ lh $t5, 0x1a2($s0) +/* 050AC0 8004FEC0 00000000 */ nop +/* 050AC4 8004FEC4 018D7021 */ addu $t6, $t4, $t5 +/* 050AC8 8004FEC8 A62E0000 */ sh $t6, ($s1) +/* 050ACC 8004FECC 860201A6 */ lh $v0, 0x1a6($s0) +/* 050AD0 8004FED0 8DEFD558 */ lw $t7, %lo(D_8011D558)($t7) +/* 050AD4 8004FED4 8FB900C0 */ lw $t9, 0xc0($sp) +/* 050AD8 8004FED8 01E2C023 */ subu $t8, $t7, $v0 +/* 050ADC 8004FEDC 03190019 */ multu $t8, $t9 +/* 050AE0 8004FEE0 860B01A4 */ lh $t3, 0x1a4($s0) +/* 050AE4 8004FEE4 00004012 */ mflo $t0 +/* 050AE8 8004FEE8 00084903 */ sra $t1, $t0, 4 +/* 050AEC 8004FEEC 00495021 */ addu $t2, $v0, $t1 +/* 050AF0 8004FEF0 A60A01A6 */ sh $t2, 0x1a6($s0) +/* 050AF4 8004FEF4 860C01A6 */ lh $t4, 0x1a6($s0) +/* 050AF8 8004FEF8 00000000 */ nop +/* 050AFC 8004FEFC 016C6821 */ addu $t5, $t3, $t4 +/* 050B00 8004FF00 A62D0004 */ sh $t5, 4($s1) +/* 050B04 8004FF04 9484D550 */ lhu $a0, %lo(D_8011D550)($a0) +/* 050B08 8004FF08 00000000 */ nop +/* 050B0C 8004FF0C 10800024 */ beqz $a0, .L8004FFA0 +/* 050B10 8004FF10 3C0E8012 */ lui $t6, %hi(D_8011D55C) # $t6, 0x8012 +/* 050B14 8004FF14 8DCED55C */ lw $t6, %lo(D_8011D55C)($t6) +/* 050B18 8004FF18 2401FFFF */ li $at, -1 +/* 050B1C 8004FF1C 11C1000F */ beq $t6, $at, .L8004FF5C +/* 050B20 8004FF20 2401010C */ li $at, 268 +/* 050B24 8004FF24 1081000D */ beq $a0, $at, .L8004FF5C +/* 050B28 8004FF28 260F021C */ addiu $t7, $s0, 0x21c +/* 050B2C 8004FF2C 8E25000C */ lw $a1, 0xc($s1) +/* 050B30 8004FF30 8E260010 */ lw $a2, 0x10($s1) +/* 050B34 8004FF34 8E270014 */ lw $a3, 0x14($s1) +/* 050B38 8004FF38 0C0007AA */ jal func_80001EA8 +/* 050B3C 8004FF3C AFAF0010 */ sw $t7, 0x10($sp) +/* 050B40 8004FF40 3C048012 */ lui $a0, %hi(D_8011D550) # $a0, 0x8012 +/* 050B44 8004FF44 3C068012 */ lui $a2, %hi(D_8011D553) # $a2, 0x8012 +/* 050B48 8004FF48 90C6D553 */ lbu $a2, %lo(D_8011D553)($a2) +/* 050B4C 8004FF4C 9484D550 */ lhu $a0, %lo(D_8011D550)($a0) +/* 050B50 8004FF50 8E05021C */ lw $a1, 0x21c($s0) +/* 050B54 8004FF54 0C0007EE */ jal func_80001FB8 +/* 050B58 8004FF58 00000000 */ nop +.L8004FF5C: +/* 050B5C 8004FF5C 3C188012 */ lui $t8, %hi(D_8011D552) # $t8, 0x8012 +/* 050B60 8004FF60 9718D552 */ lhu $t8, %lo(D_8011D552)($t8) +/* 050B64 8004FF64 3C01800E */ lui $at, %hi(D_800E662C) # $at, 0x800e +/* 050B68 8004FF68 2719FFD8 */ addiu $t9, $t8, -0x28 +/* 050B6C 8004FF6C 44999000 */ mtc1 $t9, $f18 +/* 050B70 8004FF70 C42B6628 */ lwc1 $f11, %lo(D_800E6628)($at) +/* 050B74 8004FF74 46809220 */ cvt.s.w $f8, $f18 +/* 050B78 8004FF78 C42A662C */ lwc1 $f10, %lo(D_800E662C)($at) +/* 050B7C 8004FF7C 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 050B80 8004FF80 46004121 */ cvt.d.s $f4, $f8 +/* 050B84 8004FF84 462A2402 */ mul.d $f16, $f4, $f10 +/* 050B88 8004FF88 44813800 */ mtc1 $at, $f7 +/* 050B8C 8004FF8C 44803000 */ mtc1 $zero, $f6 +/* 050B90 8004FF90 A20001E0 */ sb $zero, 0x1e0($s0) +/* 050B94 8004FF94 46303481 */ sub.d $f18, $f6, $f16 +/* 050B98 8004FF98 46209220 */ cvt.s.d $f8, $f18 +/* 050B9C 8004FF9C E6080090 */ swc1 $f8, 0x90($s0) +.L8004FFA0: +/* 050BA0 8004FFA0 920801F0 */ lbu $t0, 0x1f0($s0) +/* 050BA4 8004FFA4 00000000 */ nop +/* 050BA8 8004FFA8 1500001D */ bnez $t0, .L80050020 +/* 050BAC 8004FFAC 00000000 */ nop +/* 050BB0 8004FFB0 860901A0 */ lh $t1, 0x1a0($s0) +/* 050BB4 8004FFB4 8E0A010C */ lw $t2, 0x10c($s0) +/* 050BB8 8004FFB8 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 +/* 050BBC 8004FFBC 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 +/* 050BC0 8004FFC0 44800000 */ mtc1 $zero, $f0 +/* 050BC4 8004FFC4 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 050BC8 8004FFC8 44812000 */ mtc1 $at, $f4 +/* 050BCC 8004FFCC 012A5821 */ addu $t3, $t1, $t2 +/* 050BD0 8004FFD0 A4AB0000 */ sh $t3, ($a1) +/* 050BD4 8004FFD4 A4A00002 */ sh $zero, 2($a1) +/* 050BD8 8004FFD8 A4A00004 */ sh $zero, 4($a1) +/* 050BDC 8004FFDC 27A40060 */ addiu $a0, $sp, 0x60 +/* 050BE0 8004FFE0 E4A0000C */ swc1 $f0, 0xc($a1) +/* 050BE4 8004FFE4 E4A00010 */ swc1 $f0, 0x10($a1) +/* 050BE8 8004FFE8 E4A00014 */ swc1 $f0, 0x14($a1) +/* 050BEC 8004FFEC 0C01BF9D */ jal func_8006FE74 +/* 050BF0 8004FFF0 E4A40008 */ swc1 $f4, 8($a1) +/* 050BF4 8004FFF4 8E050030 */ lw $a1, 0x30($s0) +/* 050BF8 8004FFF8 8E07002C */ lw $a3, 0x2c($s0) +/* 050BFC 8004FFFC 262C001C */ addiu $t4, $s1, 0x1c +/* 050C00 80050000 27AD00BC */ addiu $t5, $sp, 0xbc +/* 050C04 80050004 262E0024 */ addiu $t6, $s1, 0x24 +/* 050C08 80050008 AFAE0018 */ sw $t6, 0x18($sp) +/* 050C0C 8005000C AFAD0014 */ sw $t5, 0x14($sp) +/* 050C10 80050010 AFAC0010 */ sw $t4, 0x10($sp) +/* 050C14 80050014 27A40060 */ addiu $a0, $sp, 0x60 +/* 050C18 80050018 0C01BD93 */ jal func_8006F64C +/* 050C1C 8005001C 24060000 */ li $a2, 0 +.L80050020: +/* 050C20 80050020 820F0175 */ lb $t7, 0x175($s0) +/* 050C24 80050024 00000000 */ nop +/* 050C28 80050028 11E00007 */ beqz $t7, .L80050048 +/* 050C2C 8005002C 3C018012 */ lui $at, %hi(D_8011D578) # $at, 0x8012 +/* 050C30 80050030 C42AD578 */ lwc1 $f10, %lo(D_8011D578)($at) +/* 050C34 80050034 3C018012 */ lui $at, %hi(D_8011D57C) # $at, 0x8012 +/* 050C38 80050038 E62A001C */ swc1 $f10, 0x1c($s1) +/* 050C3C 8005003C C426D57C */ lwc1 $f6, %lo(D_8011D57C)($at) +/* 050C40 80050040 00000000 */ nop +/* 050C44 80050044 E6260024 */ swc1 $f6, 0x24($s1) +.L80050048: +/* 050C48 80050048 8E180148 */ lw $t8, 0x148($s0) +/* 050C4C 8005004C 8FA600C4 */ lw $a2, 0xc4($sp) +/* 050C50 80050050 17000072 */ bnez $t8, .L8005021C +/* 050C54 80050054 02202025 */ move $a0, $s1 +/* 050C58 80050058 C630001C */ lwc1 $f16, 0x1c($s1) +/* 050C5C 8005005C 3C088012 */ lui $t0, %hi(D_8011D584) # $t0, 0x8012 +/* 050C60 80050060 E7B000B8 */ swc1 $f16, 0xb8($sp) +/* 050C64 80050064 C6320024 */ lwc1 $f18, 0x24($s1) +/* 050C68 80050068 C7A800B8 */ lwc1 $f8, 0xb8($sp) +/* 050C6C 8005006C E7B200B4 */ swc1 $f18, 0xb4($sp) +/* 050C70 80050070 821901D2 */ lb $t9, 0x1d2($s0) +/* 050C74 80050074 3C01800E */ lui $at, %hi(D_800E6634) # $at, 0x800e +/* 050C78 80050078 13200009 */ beqz $t9, .L800500A0 +/* 050C7C 8005007C 00000000 */ nop +/* 050C80 80050080 C604011C */ lwc1 $f4, 0x11c($s0) +/* 050C84 80050084 C7A600B4 */ lwc1 $f6, 0xb4($sp) +/* 050C88 80050088 46044280 */ add.s $f10, $f8, $f4 +/* 050C8C 8005008C E7AA00B8 */ swc1 $f10, 0xb8($sp) +/* 050C90 80050090 C6100120 */ lwc1 $f16, 0x120($s0) +/* 050C94 80050094 00000000 */ nop +/* 050C98 80050098 46103480 */ add.s $f18, $f6, $f16 +/* 050C9C 8005009C E7B200B4 */ swc1 $f18, 0xb4($sp) +.L800500A0: +/* 050CA0 800500A0 8108D584 */ lb $t0, %lo(D_8011D584)($t0) +/* 050CA4 800500A4 C7A800B8 */ lwc1 $f8, 0xb8($sp) +/* 050CA8 800500A8 1100003C */ beqz $t0, .L8005019C +/* 050CAC 800500AC 00000000 */ nop +/* 050CB0 800500B0 C7A800B8 */ lwc1 $f8, 0xb8($sp) +/* 050CB4 800500B4 C4236630 */ lwc1 $f3, %lo(D_800E6630)($at) +/* 050CB8 800500B8 C4226634 */ lwc1 $f2, %lo(D_800E6634)($at) +/* 050CBC 800500BC 46004121 */ cvt.d.s $f4, $f8 +/* 050CC0 800500C0 46222282 */ mul.d $f10, $f4, $f2 +/* 050CC4 800500C4 C7B000B4 */ lwc1 $f16, 0xb4($sp) +/* 050CC8 800500C8 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 050CCC 800500CC 460084A1 */ cvt.d.s $f18, $f16 +/* 050CD0 800500D0 46229202 */ mul.d $f8, $f18, $f2 +/* 050CD4 800500D4 462051A0 */ cvt.s.d $f6, $f10 +/* 050CD8 800500D8 44813800 */ mtc1 $at, $f7 +/* 050CDC 800500DC E7A600B8 */ swc1 $f6, 0xb8($sp) +/* 050CE0 800500E0 44803000 */ mtc1 $zero, $f6 +/* 050CE4 800500E4 46204120 */ cvt.s.d $f4, $f8 +/* 050CE8 800500E8 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 050CEC 800500EC E7A400B4 */ swc1 $f4, 0xb4($sp) +/* 050CF0 800500F0 C60A002C */ lwc1 $f10, 0x2c($s0) +/* 050CF4 800500F4 00000000 */ nop +/* 050CF8 800500F8 46005021 */ cvt.d.s $f0, $f10 +/* 050CFC 800500FC 4626003C */ c.lt.d $f0, $f6 +/* 050D00 80050100 44805000 */ mtc1 $zero, $f10 +/* 050D04 80050104 45010008 */ bc1t .L80050128 +/* 050D08 80050108 00000000 */ nop +/* 050D0C 8005010C 44816800 */ mtc1 $at, $f13 +/* 050D10 80050110 44806000 */ mtc1 $zero, $f12 +/* 050D14 80050114 00000000 */ nop +/* 050D18 80050118 4620603C */ c.lt.d $f12, $f0 +/* 050D1C 8005011C 00000000 */ nop +/* 050D20 80050120 45000008 */ bc1f .L80050144 +/* 050D24 80050124 00000000 */ nop +.L80050128: +/* 050D28 80050128 46220402 */ mul.d $f16, $f0, $f2 +/* 050D2C 8005012C 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 050D30 80050130 44816800 */ mtc1 $at, $f13 +/* 050D34 80050134 44806000 */ mtc1 $zero, $f12 +/* 050D38 80050138 462084A0 */ cvt.s.d $f18, $f16 +/* 050D3C 8005013C 10000004 */ b .L80050150 +/* 050D40 80050140 E612002C */ swc1 $f18, 0x2c($s0) +.L80050144: +/* 050D44 80050144 44804000 */ mtc1 $zero, $f8 +/* 050D48 80050148 00000000 */ nop +/* 050D4C 8005014C E608002C */ swc1 $f8, 0x2c($s0) +.L80050150: +/* 050D50 80050150 C6040030 */ lwc1 $f4, 0x30($s0) +/* 050D54 80050154 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 050D58 80050158 44815800 */ mtc1 $at, $f11 +/* 050D5C 8005015C 46002021 */ cvt.d.s $f0, $f4 +/* 050D60 80050160 462A003C */ c.lt.d $f0, $f10 +/* 050D64 80050164 00000000 */ nop +/* 050D68 80050168 45010005 */ bc1t .L80050180 +/* 050D6C 8005016C 00000000 */ nop +/* 050D70 80050170 4620603C */ c.lt.d $f12, $f0 +/* 050D74 80050174 00000000 */ nop +/* 050D78 80050178 45000005 */ bc1f .L80050190 +/* 050D7C 8005017C 00000000 */ nop +.L80050180: +/* 050D80 80050180 46220182 */ mul.d $f6, $f0, $f2 +/* 050D84 80050184 46203420 */ cvt.s.d $f16, $f6 +/* 050D88 80050188 1000000C */ b .L800501BC +/* 050D8C 8005018C E6100030 */ swc1 $f16, 0x30($s0) +.L80050190: +/* 050D90 80050190 44809000 */ mtc1 $zero, $f18 +/* 050D94 80050194 10000009 */ b .L800501BC +/* 050D98 80050198 E6120030 */ swc1 $f18, 0x30($s0) +.L8005019C: +/* 050D9C 8005019C C6040084 */ lwc1 $f4, 0x84($s0) +/* 050DA0 800501A0 C7A600B4 */ lwc1 $f6, 0xb4($sp) +/* 050DA4 800501A4 46044280 */ add.s $f10, $f8, $f4 +/* 050DA8 800501A8 E7AA00B8 */ swc1 $f10, 0xb8($sp) +/* 050DAC 800501AC C6100088 */ lwc1 $f16, 0x88($s0) +/* 050DB0 800501B0 00000000 */ nop +/* 050DB4 800501B4 46103480 */ add.s $f18, $f6, $f16 +/* 050DB8 800501B8 E7B200B4 */ swc1 $f18, 0xb4($sp) +.L800501BC: +/* 050DBC 800501BC C7A000C4 */ lwc1 $f0, 0xc4($sp) +/* 050DC0 800501C0 C7A800B8 */ lwc1 $f8, 0xb8($sp) +/* 050DC4 800501C4 C62A0020 */ lwc1 $f10, 0x20($s1) +/* 050DC8 800501C8 46004102 */ mul.s $f4, $f8, $f0 +/* 050DCC 800501CC C7B000B4 */ lwc1 $f16, 0xb4($sp) +/* 050DD0 800501D0 02202025 */ move $a0, $s1 +/* 050DD4 800501D4 46005182 */ mul.s $f6, $f10, $f0 +/* 050DD8 800501D8 44052000 */ mfc1 $a1, $f4 +/* 050DDC 800501DC 46008482 */ mul.s $f18, $f16, $f0 +/* 050DE0 800501E0 44063000 */ mfc1 $a2, $f6 +/* 050DE4 800501E4 44079000 */ mfc1 $a3, $f18 +/* 050DE8 800501E8 0C00455C */ jal func_80011570 +/* 050DEC 800501EC 00000000 */ nop +/* 050DF0 800501F0 10400006 */ beqz $v0, .L8005020C +/* 050DF4 800501F4 3C098012 */ lui $t1, %hi(D_8011D55C) # $t1, 0x8012 +/* 050DF8 800501F8 8D29D55C */ lw $t1, %lo(D_8011D55C)($t1) +/* 050DFC 800501FC 2401FFFF */ li $at, -1 +/* 050E00 80050200 11210002 */ beq $t1, $at, .L8005020C +/* 050E04 80050204 240A0001 */ li $t2, 1 +/* 050E08 80050208 A3AA0053 */ sb $t2, 0x53($sp) +.L8005020C: +/* 050E0C 8005020C 3C028012 */ lui $v0, %hi(D_8011D55C) # $v0, 0x8012 +/* 050E10 80050210 8C42D55C */ lw $v0, %lo(D_8011D55C)($v0) +/* 050E14 80050214 10000007 */ b .L80050234 +/* 050E18 80050218 2401FFFF */ li $at, -1 +.L8005021C: +/* 050E1C 8005021C 0C0141D5 */ jal func_80050754 +/* 050E20 80050220 02002825 */ move $a1, $s0 +/* 050E24 80050224 3C028012 */ lui $v0, %hi(D_8011D55C) # $v0, 0x8012 +/* 050E28 80050228 8C42D55C */ lw $v0, %lo(D_8011D55C)($v0) +/* 050E2C 8005022C 00000000 */ nop +/* 050E30 80050230 2401FFFF */ li $at, -1 +.L80050234: +/* 050E34 80050234 14410007 */ bne $v0, $at, .L80050254 +/* 050E38 80050238 02202025 */ move $a0, $s1 +/* 050E3C 8005023C 8FA600C0 */ lw $a2, 0xc0($sp) +/* 050E40 80050240 02202025 */ move $a0, $s1 +/* 050E44 80050244 0C0156A1 */ jal func_80055A84 +/* 050E48 80050248 02002825 */ move $a1, $s0 +/* 050E4C 8005024C 10000005 */ b .L80050264 +/* 050E50 80050250 3C013F80 */ lui $at, 0x3f80 +.L80050254: +/* 050E54 80050254 8FA600C0 */ lw $a2, 0xc0($sp) +/* 050E58 80050258 0C0153F4 */ jal func_80054FD0 +/* 050E5C 8005025C 02002825 */ move $a1, $s0 +/* 050E60 80050260 3C013F80 */ li $at, 0x3F800000 # 1.000000 +.L80050264: +/* 050E64 80050264 44814000 */ mtc1 $at, $f8 +/* 050E68 80050268 C7A400C4 */ lwc1 $f4, 0xc4($sp) +/* 050E6C 8005026C C7B000A8 */ lwc1 $f16, 0xa8($sp) +/* 050E70 80050270 46044283 */ div.s $f10, $f8, $f4 +/* 050E74 80050274 3C018012 */ lui $at, %hi(D_8011D548) # $at, 0x8012 +/* 050E78 80050278 C428D548 */ lwc1 $f8, %lo(D_8011D548)($at) +/* 050E7C 8005027C 3C018012 */ lui $at, %hi(D_8011D54C) # $at, 0x8012 +/* 050E80 80050280 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 +/* 050E84 80050284 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 +/* 050E88 80050288 44800000 */ mtc1 $zero, $f0 +/* 050E8C 8005028C 27A40060 */ addiu $a0, $sp, 0x60 +/* 050E90 80050290 E7AA00BC */ swc1 $f10, 0xbc($sp) +/* 050E94 80050294 C626000C */ lwc1 $f6, 0xc($s1) +/* 050E98 80050298 00000000 */ nop +/* 050E9C 8005029C 46103481 */ sub.s $f18, $f6, $f16 +/* 050EA0 800502A0 C6100084 */ lwc1 $f16, 0x84($s0) +/* 050EA4 800502A4 46089101 */ sub.s $f4, $f18, $f8 +/* 050EA8 800502A8 460A2182 */ mul.s $f6, $f4, $f10 +/* 050EAC 800502AC C7A400A4 */ lwc1 $f4, 0xa4($sp) +/* 050EB0 800502B0 46103481 */ sub.s $f18, $f6, $f16 +/* 050EB4 800502B4 E7B200B8 */ swc1 $f18, 0xb8($sp) +/* 050EB8 800502B8 C6280010 */ lwc1 $f8, 0x10($s1) +/* 050EBC 800502BC C6320014 */ lwc1 $f18, 0x14($s1) +/* 050EC0 800502C0 46044181 */ sub.s $f6, $f8, $f4 +/* 050EC4 800502C4 460A3402 */ mul.s $f16, $f6, $f10 +/* 050EC8 800502C8 E6300020 */ swc1 $f16, 0x20($s1) +/* 050ECC 800502CC C7A800A0 */ lwc1 $f8, 0xa0($sp) +/* 050ED0 800502D0 C426D54C */ lwc1 $f6, %lo(D_8011D54C)($at) +/* 050ED4 800502D4 46089101 */ sub.s $f4, $f18, $f8 +/* 050ED8 800502D8 C7B000BC */ lwc1 $f16, 0xbc($sp) +/* 050EDC 800502DC 46062281 */ sub.s $f10, $f4, $f6 +/* 050EE0 800502E0 C6080088 */ lwc1 $f8, 0x88($s0) +/* 050EE4 800502E4 46105482 */ mul.s $f18, $f10, $f16 +/* 050EE8 800502E8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 050EEC 800502EC 44813000 */ mtc1 $at, $f6 +/* 050EF0 800502F0 46089101 */ sub.s $f4, $f18, $f8 +/* 050EF4 800502F4 E7A400B4 */ swc1 $f4, 0xb4($sp) +/* 050EF8 800502F8 8E0C010C */ lw $t4, 0x10c($s0) +/* 050EFC 800502FC 860B01A0 */ lh $t3, 0x1a0($s0) +/* 050F00 80050300 00000000 */ nop +/* 050F04 80050304 016C6821 */ addu $t5, $t3, $t4 +/* 050F08 80050308 000D7023 */ negu $t6, $t5 +/* 050F0C 8005030C A4AE0000 */ sh $t6, ($a1) +/* 050F10 80050310 862F0002 */ lh $t7, 2($s1) +/* 050F14 80050314 00000000 */ nop +/* 050F18 80050318 000FC023 */ negu $t8, $t7 +/* 050F1C 8005031C A4B80002 */ sh $t8, 2($a1) +/* 050F20 80050320 86390004 */ lh $t9, 4($s1) +/* 050F24 80050324 E4A0000C */ swc1 $f0, 0xc($a1) +/* 050F28 80050328 00194023 */ negu $t0, $t9 +/* 050F2C 8005032C A4A80004 */ sh $t0, 4($a1) +/* 050F30 80050330 E4A00010 */ swc1 $f0, 0x10($a1) +/* 050F34 80050334 E4A00014 */ swc1 $f0, 0x14($a1) +/* 050F38 80050338 0C01BF9D */ jal func_8006FE74 +/* 050F3C 8005033C E4A60008 */ swc1 $f6, 8($a1) +/* 050F40 80050340 8FA500B8 */ lw $a1, 0xb8($sp) +/* 050F44 80050344 8FA700B4 */ lw $a3, 0xb4($sp) +/* 050F48 80050348 27A900AC */ addiu $t1, $sp, 0xac +/* 050F4C 8005034C 27AA00BC */ addiu $t2, $sp, 0xbc +/* 050F50 80050350 27AB00B0 */ addiu $t3, $sp, 0xb0 +/* 050F54 80050354 AFAB0018 */ sw $t3, 0x18($sp) +/* 050F58 80050358 AFAA0014 */ sw $t2, 0x14($sp) +/* 050F5C 8005035C AFA90010 */ sw $t1, 0x10($sp) +/* 050F60 80050360 27A40060 */ addiu $a0, $sp, 0x60 +/* 050F64 80050364 0C01BD93 */ jal func_8006F64C +/* 050F68 80050368 24060000 */ li $a2, 0 +/* 050F6C 8005036C 820201D2 */ lb $v0, 0x1d2($s0) +/* 050F70 80050370 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 050F74 80050374 44816800 */ mtc1 $at, $f13 +/* 050F78 80050378 44806000 */ mtc1 $zero, $f12 +/* 050F7C 8005037C 1040000B */ beqz $v0, .L800503AC +/* 050F80 80050380 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 050F84 80050384 8FAC00C0 */ lw $t4, 0xc0($sp) +/* 050F88 80050388 00000000 */ nop +/* 050F8C 8005038C 004C6823 */ subu $t5, $v0, $t4 +/* 050F90 80050390 A20D01D2 */ sb $t5, 0x1d2($s0) +/* 050F94 80050394 820E01D2 */ lb $t6, 0x1d2($s0) +/* 050F98 80050398 00000000 */ nop +/* 050F9C 8005039C 05C10046 */ bgez $t6, .L800504B8 +/* 050FA0 800503A0 00000000 */ nop +/* 050FA4 800503A4 10000044 */ b .L800504B8 +/* 050FA8 800503A8 A20001D2 */ sb $zero, 0x1d2($s0) +.L800503AC: +/* 050FAC 800503AC C60A002C */ lwc1 $f10, 0x2c($s0) +/* 050FB0 800503B0 C7B000B0 */ lwc1 $f16, 0xb0($sp) +/* 050FB4 800503B4 44812800 */ mtc1 $at, $f5 +/* 050FB8 800503B8 46105481 */ sub.s $f18, $f10, $f16 +/* 050FBC 800503BC 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 050FC0 800503C0 E7B200BC */ swc1 $f18, 0xbc($sp) +/* 050FC4 800503C4 C7A800BC */ lwc1 $f8, 0xbc($sp) +/* 050FC8 800503C8 00000000 */ nop +/* 050FCC 800503CC 46004021 */ cvt.d.s $f0, $f8 +/* 050FD0 800503D0 4620603C */ c.lt.d $f12, $f0 +/* 050FD4 800503D4 00000000 */ nop +/* 050FD8 800503D8 4500000A */ bc1f .L80050404 +/* 050FDC 800503DC 00000000 */ nop +/* 050FE0 800503E0 C604002C */ lwc1 $f4, 0x2c($s0) +/* 050FE4 800503E4 462C0281 */ sub.d $f10, $f0, $f12 +/* 050FE8 800503E8 460021A1 */ cvt.d.s $f6, $f4 +/* 050FEC 800503EC 462A3401 */ sub.d $f16, $f6, $f10 +/* 050FF0 800503F0 462084A0 */ cvt.s.d $f18, $f16 +/* 050FF4 800503F4 E612002C */ swc1 $f18, 0x2c($s0) +/* 050FF8 800503F8 C7A800BC */ lwc1 $f8, 0xbc($sp) +/* 050FFC 800503FC 00000000 */ nop +/* 051000 80050400 46004021 */ cvt.d.s $f0, $f8 +.L80050404: +/* 051004 80050404 44802000 */ mtc1 $zero, $f4 +/* 051008 80050408 00000000 */ nop +/* 05100C 8005040C 4624003C */ c.lt.d $f0, $f4 +/* 051010 80050410 00000000 */ nop +/* 051014 80050414 45000007 */ bc1f .L80050434 +/* 051018 80050418 00000000 */ nop +/* 05101C 8005041C C606002C */ lwc1 $f6, 0x2c($s0) +/* 051020 80050420 462C0400 */ add.d $f16, $f0, $f12 +/* 051024 80050424 460032A1 */ cvt.d.s $f10, $f6 +/* 051028 80050428 46305481 */ sub.d $f18, $f10, $f16 +/* 05102C 8005042C 46209220 */ cvt.s.d $f8, $f18 +/* 051030 80050430 E608002C */ swc1 $f8, 0x2c($s0) +.L80050434: +/* 051034 80050434 C6040030 */ lwc1 $f4, 0x30($s0) +/* 051038 80050438 C7A600AC */ lwc1 $f6, 0xac($sp) +/* 05103C 8005043C 44819800 */ mtc1 $at, $f19 +/* 051040 80050440 46062281 */ sub.s $f10, $f4, $f6 +/* 051044 80050444 E7AA00BC */ swc1 $f10, 0xbc($sp) +/* 051048 80050448 C7B000BC */ lwc1 $f16, 0xbc($sp) +/* 05104C 8005044C 00000000 */ nop +/* 051050 80050450 46008021 */ cvt.d.s $f0, $f16 +/* 051054 80050454 4620603C */ c.lt.d $f12, $f0 +/* 051058 80050458 00000000 */ nop +/* 05105C 8005045C 4500000A */ bc1f .L80050488 +/* 051060 80050460 00000000 */ nop +/* 051064 80050464 C6120030 */ lwc1 $f18, 0x30($s0) +/* 051068 80050468 462C0101 */ sub.d $f4, $f0, $f12 +/* 05106C 8005046C 46009221 */ cvt.d.s $f8, $f18 +/* 051070 80050470 46244181 */ sub.d $f6, $f8, $f4 +/* 051074 80050474 462032A0 */ cvt.s.d $f10, $f6 +/* 051078 80050478 E60A0030 */ swc1 $f10, 0x30($s0) +/* 05107C 8005047C C7B000BC */ lwc1 $f16, 0xbc($sp) +/* 051080 80050480 00000000 */ nop +/* 051084 80050484 46008021 */ cvt.d.s $f0, $f16 +.L80050488: +/* 051088 80050488 44809000 */ mtc1 $zero, $f18 +/* 05108C 8005048C 00000000 */ nop +/* 051090 80050490 4632003C */ c.lt.d $f0, $f18 +/* 051094 80050494 00000000 */ nop +/* 051098 80050498 45000007 */ bc1f .L800504B8 +/* 05109C 8005049C 00000000 */ nop +/* 0510A0 800504A0 C6080030 */ lwc1 $f8, 0x30($s0) +/* 0510A4 800504A4 462C0180 */ add.d $f6, $f0, $f12 +/* 0510A8 800504A8 46004121 */ cvt.d.s $f4, $f8 +/* 0510AC 800504AC 46262281 */ sub.d $f10, $f4, $f6 +/* 0510B0 800504B0 46205420 */ cvt.s.d $f16, $f10 +/* 0510B4 800504B4 E6100030 */ swc1 $f16, 0x30($s0) +.L800504B8: +/* 0510B8 800504B8 820F01D3 */ lb $t7, 0x1d3($s0) +/* 0510BC 800504BC 3C18800E */ lui $t8, %hi(D_800DCB98) # $t8, 0x800e +/* 0510C0 800504C0 15E00043 */ bnez $t7, .L800505D0 +/* 0510C4 800504C4 00000000 */ nop +/* 0510C8 800504C8 8F18CB98 */ lw $t8, %lo(D_800DCB98)($t8) +/* 0510CC 800504CC 00000000 */ nop +/* 0510D0 800504D0 2B010002 */ slti $at, $t8, 2 +/* 0510D4 800504D4 1020003E */ beqz $at, .L800505D0 +/* 0510D8 800504D8 00000000 */ nop +/* 0510DC 800504DC 0C0078A7 */ jal func_8001E29C +/* 0510E0 800504E0 24040014 */ li $a0, 20 +/* 0510E4 800504E4 82030203 */ lb $v1, 0x203($s0) +/* 0510E8 800504E8 82190002 */ lb $t9, 2($s0) +/* 0510EC 800504EC 30690004 */ andi $t1, $v1, 4 +/* 0510F0 800504F0 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 0510F4 800504F4 00095083 */ sra $t2, $t1, 2 +/* 0510F8 800504F8 44816800 */ mtc1 $at, $f13 +/* 0510FC 800504FC 25430010 */ addiu $v1, $t2, 0x10 +/* 051100 80050500 44806000 */ mtc1 $zero, $f12 +/* 051104 80050504 28610011 */ slti $at, $v1, 0x11 +/* 051108 80050508 001941C0 */ sll $t0, $t9, 7 +/* 05110C 8005050C 14200012 */ bnez $at, .L80050558 +/* 051110 80050510 01022021 */ addu $a0, $t0, $v0 +/* 051114 80050514 908B0070 */ lbu $t3, 0x70($a0) +/* 051118 80050518 240D0001 */ li $t5, 1 +/* 05111C 8005051C 1D600009 */ bgtz $t3, .L80050544 +/* 051120 80050520 00000000 */ nop +/* 051124 80050524 C4880074 */ lwc1 $f8, 0x74($a0) +/* 051128 80050528 44809800 */ mtc1 $zero, $f19 +/* 05112C 8005052C 44809000 */ mtc1 $zero, $f18 +/* 051130 80050530 46004121 */ cvt.d.s $f4, $f8 +/* 051134 80050534 4624903C */ c.lt.d $f18, $f4 +/* 051138 80050538 00000000 */ nop +/* 05113C 8005053C 45000024 */ bc1f .L800505D0 +/* 051140 80050540 00000000 */ nop +.L80050544: +/* 051144 80050544 8E2C0074 */ lw $t4, 0x74($s1) +/* 051148 80050548 006D7004 */ sllv $t6, $t5, $v1 +/* 05114C 8005054C 018E7825 */ or $t7, $t4, $t6 +/* 051150 80050550 1000001F */ b .L800505D0 +/* 051154 80050554 AE2F0074 */ sw $t7, 0x74($s1) +.L80050558: +/* 051158 80050558 90820070 */ lbu $v0, 0x70($a0) +/* 05115C 8005055C 24010002 */ li $at, 2 +/* 051160 80050560 1441000E */ bne $v0, $at, .L8005059C +/* 051164 80050564 28410002 */ slti $at, $v0, 2 +/* 051168 80050568 C4860074 */ lwc1 $f6, 0x74($a0) +/* 05116C 8005056C 24190001 */ li $t9, 1 +/* 051170 80050570 460032A1 */ cvt.d.s $f10, $f6 +/* 051174 80050574 462C503C */ c.lt.d $f10, $f12 +/* 051178 80050578 00000000 */ nop +/* 05117C 8005057C 45000007 */ bc1f .L8005059C +/* 051180 80050580 28410002 */ slti $at, $v0, 2 +/* 051184 80050584 8E380074 */ lw $t8, 0x74($s1) +/* 051188 80050588 00794004 */ sllv $t0, $t9, $v1 +/* 05118C 8005058C 03084825 */ or $t1, $t8, $t0 +/* 051190 80050590 1000000F */ b .L800505D0 +/* 051194 80050594 AE290074 */ sw $t1, 0x74($s1) +/* 051198 80050598 28410002 */ slti $at, $v0, 2 +.L8005059C: +/* 05119C 8005059C 1020000C */ beqz $at, .L800505D0 +/* 0511A0 800505A0 00000000 */ nop +/* 0511A4 800505A4 44808000 */ mtc1 $zero, $f16 +/* 0511A8 800505A8 C4880074 */ lwc1 $f8, 0x74($a0) +/* 0511AC 800505AC 240B0001 */ li $t3, 1 +/* 0511B0 800505B0 4608803C */ c.lt.s $f16, $f8 +/* 0511B4 800505B4 00000000 */ nop +/* 0511B8 800505B8 45000005 */ bc1f .L800505D0 +/* 0511BC 800505BC 00000000 */ nop +/* 0511C0 800505C0 8E2A0074 */ lw $t2, 0x74($s1) +/* 0511C4 800505C4 006B6804 */ sllv $t5, $t3, $v1 +/* 0511C8 800505C8 014D6025 */ or $t4, $t2, $t5 +/* 0511CC 800505CC AE2C0074 */ sw $t4, 0x74($s1) +.L800505D0: +/* 0511D0 800505D0 3C0E8012 */ lui $t6, %hi(D_8011D55C) # $t6, 0x8012 +/* 0511D4 800505D4 8DCED55C */ lw $t6, %lo(D_8011D55C)($t6) +/* 0511D8 800505D8 2401FFFF */ li $at, -1 +/* 0511DC 800505DC 11C10030 */ beq $t6, $at, .L800506A0 +/* 0511E0 800505E0 3C0F800E */ lui $t7, %hi(D_800DCB98) # $t7, 0x800e +/* 0511E4 800505E4 8DEFCB98 */ lw $t7, %lo(D_800DCB98)($t7) +/* 0511E8 800505E8 00000000 */ nop +/* 0511EC 800505EC 29E10002 */ slti $at, $t7, 2 +/* 0511F0 800505F0 1020002B */ beqz $at, .L800506A0 +/* 0511F4 800505F4 3C014160 */ li $at, 0x41600000 # 14.000000 +/* 0511F8 800505F8 44819000 */ mtc1 $at, $f18 +/* 0511FC 800505FC C60000C0 */ lwc1 $f0, 0xc0($s0) +/* 051200 80050600 00002025 */ move $a0, $zero +/* 051204 80050604 4600903C */ c.lt.s $f18, $f0 +/* 051208 80050608 3C0140C0 */ lui $at, 0x40c0 +/* 05120C 8005060C 4500000A */ bc1f .L80050638 +/* 051210 80050610 00000000 */ nop +/* 051214 80050614 0C01BE53 */ jal func_8006F94C +/* 051218 80050618 24050001 */ li $a1, 1 +/* 05121C 8005061C 10400020 */ beqz $v0, .L800506A0 +/* 051220 80050620 00000000 */ nop +/* 051224 80050624 8E390074 */ lw $t9, 0x74($s1) +/* 051228 80050628 3C010030 */ li $at, 0x00300000 # 0.000000 +/* 05122C 8005062C 0321C025 */ or $t8, $t9, $at +/* 051230 80050630 1000001B */ b .L800506A0 +/* 051234 80050634 AE380074 */ sw $t8, 0x74($s1) +.L80050638: +/* 051238 80050638 44812000 */ mtc1 $at, $f4 +/* 05123C 8005063C 3C01C008 */ li $at, 0xC0080000 # -2.125000 +/* 051240 80050640 4604003C */ c.lt.s $f0, $f4 +/* 051244 80050644 00000000 */ nop +/* 051248 80050648 45000015 */ bc1f .L800506A0 +/* 05124C 8005064C 00000000 */ nop +/* 051250 80050650 C606002C */ lwc1 $f6, 0x2c($s0) +/* 051254 80050654 44815800 */ mtc1 $at, $f11 +/* 051258 80050658 44805000 */ mtc1 $zero, $f10 +/* 05125C 8005065C 46003021 */ cvt.d.s $f0, $f6 +/* 051260 80050660 4620503C */ c.lt.d $f10, $f0 +/* 051264 80050664 00000000 */ nop +/* 051268 80050668 4500000D */ bc1f .L800506A0 +/* 05126C 8005066C 00000000 */ nop +/* 051270 80050670 462C003C */ c.lt.d $f0, $f12 +/* 051274 80050674 00002025 */ move $a0, $zero +/* 051278 80050678 45000009 */ bc1f .L800506A0 +/* 05127C 8005067C 00000000 */ nop +/* 051280 80050680 0C01BE53 */ jal func_8006F94C +/* 051284 80050684 24050001 */ li $a1, 1 +/* 051288 80050688 10400005 */ beqz $v0, .L800506A0 +/* 05128C 8005068C 00000000 */ nop +/* 051290 80050690 8E280074 */ lw $t0, 0x74($s1) +/* 051294 80050694 3C01000C */ lui $at, 0xc +/* 051298 80050698 01014825 */ or $t1, $t0, $at +/* 05129C 8005069C AE290074 */ sw $t1, 0x74($s1) +.L800506A0: +/* 0512A0 800506A0 820B01D6 */ lb $t3, 0x1d6($s0) +/* 0512A4 800506A4 8FA500C0 */ lw $a1, 0xc0($sp) +/* 0512A8 800506A8 29610005 */ slti $at, $t3, 5 +/* 0512AC 800506AC 10200004 */ beqz $at, .L800506C0 +/* 0512B0 800506B0 8FA700C4 */ lw $a3, 0xc4($sp) +/* 0512B4 800506B4 0C02BDC5 */ jal func_800AF714 +/* 0512B8 800506B8 02202025 */ move $a0, $s1 +/* 0512BC 800506BC 8FA700C4 */ lw $a3, 0xc4($sp) +.L800506C0: +/* 0512C0 800506C0 02202025 */ move $a0, $s1 +/* 0512C4 800506C4 02002825 */ move $a1, $s0 +/* 0512C8 800506C8 0C01602D */ jal func_800580B4 +/* 0512CC 800506CC 00003025 */ move $a2, $zero +/* 0512D0 800506D0 3C0A800E */ lui $t2, %hi(D_800DCB98) # $t2, 0x800e +/* 0512D4 800506D4 8D4ACB98 */ lw $t2, %lo(D_800DCB98)($t2) +/* 0512D8 800506D8 24010001 */ li $at, 1 +/* 0512DC 800506DC 15410013 */ bne $t2, $at, .L8005072C +/* 0512E0 800506E0 83AC0053 */ lb $t4, 0x53($sp) +/* 0512E4 800506E4 C608002C */ lwc1 $f8, 0x2c($s0) +/* 0512E8 800506E8 3C01C008 */ li $at, 0xC0080000 # -2.125000 +/* 0512EC 800506EC 44818800 */ mtc1 $at, $f17 +/* 0512F0 800506F0 44808000 */ mtc1 $zero, $f16 +/* 0512F4 800506F4 460044A1 */ cvt.d.s $f18, $f8 +/* 0512F8 800506F8 4632803C */ c.lt.d $f16, $f18 +/* 0512FC 800506FC 00000000 */ nop +/* 051300 80050700 4500000A */ bc1f .L8005072C +/* 051304 80050704 83AC0053 */ lb $t4, 0x53($sp) +/* 051308 80050708 0C01BAA4 */ jal func_8006EA90 +/* 05130C 8005070C 00000000 */ nop +/* 051310 80050710 904D0049 */ lbu $t5, 0x49($v0) +/* 051314 80050714 24010025 */ li $at, 37 +/* 051318 80050718 11A10004 */ beq $t5, $at, .L8005072C +/* 05131C 8005071C 83AC0053 */ lb $t4, 0x53($sp) +/* 051320 80050720 0C00A3E8 */ jal func_80028FA0 +/* 051324 80050724 24040001 */ li $a0, 1 +/* 051328 80050728 83AC0053 */ lb $t4, 0x53($sp) +.L8005072C: +/* 05132C 8005072C 02202025 */ move $a0, $s1 +/* 051330 80050730 11800004 */ beqz $t4, .L80050744 +/* 051334 80050734 8FBF002C */ lw $ra, 0x2c($sp) +/* 051338 80050738 0C008C34 */ jal func_800230D0 +/* 05133C 8005073C 02002825 */ move $a1, $s0 +/* 051340 80050740 8FBF002C */ lw $ra, 0x2c($sp) +.L80050744: +/* 051344 80050744 8FB00024 */ lw $s0, 0x24($sp) +/* 051348 80050748 8FB10028 */ lw $s1, 0x28($sp) +/* 05134C 8005074C 03E00008 */ jr $ra +/* 051350 80050750 27BD00C0 */ addiu $sp, $sp, 0xc0 + diff --git a/asm/non_matchings/unknown_043920/func_80050754.s b/asm/non_matchings/unknown_043920/func_80050754.s new file mode 100644 index 00000000..daea1fee --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80050754.s @@ -0,0 +1,65 @@ +glabel func_80050754 +/* 051354 80050754 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 051358 80050758 AFBF001C */ sw $ra, 0x1c($sp) +/* 05135C 8005075C AFB00018 */ sw $s0, 0x18($sp) +/* 051360 80050760 240E0028 */ li $t6, 40 +/* 051364 80050764 A080003B */ sb $zero, 0x3b($a0) +/* 051368 80050768 A48E0018 */ sh $t6, 0x18($a0) +/* 05136C 8005076C 8CA20148 */ lw $v0, 0x148($a1) +/* 051370 80050770 C486000C */ lwc1 $f6, 0xc($a0) +/* 051374 80050774 C444000C */ lwc1 $f4, 0xc($v0) +/* 051378 80050778 C48A0010 */ lwc1 $f10, 0x10($a0) +/* 05137C 8005077C 46062001 */ sub.s $f0, $f4, $f6 +/* 051380 80050780 C4840014 */ lwc1 $f4, 0x14($a0) +/* 051384 80050784 C4480010 */ lwc1 $f8, 0x10($v0) +/* 051388 80050788 C4520014 */ lwc1 $f18, 0x14($v0) +/* 05138C 8005078C 44867000 */ mtc1 $a2, $f14 +/* 051390 80050790 460A4081 */ sub.s $f2, $f8, $f10 +/* 051394 80050794 00A08025 */ move $s0, $a1 +/* 051398 80050798 46049301 */ sub.s $f12, $f18, $f4 +/* 05139C 8005079C 44050000 */ mfc1 $a1, $f0 +/* 0513A0 800507A0 44076000 */ mfc1 $a3, $f12 +/* 0513A4 800507A4 44061000 */ mfc1 $a2, $f2 +/* 0513A8 800507A8 E7AC0024 */ swc1 $f12, 0x24($sp) +/* 0513AC 800507AC E7A20028 */ swc1 $f2, 0x28($sp) +/* 0513B0 800507B0 E7A0002C */ swc1 $f0, 0x2c($sp) +/* 0513B4 800507B4 AFA40030 */ sw $a0, 0x30($sp) +/* 0513B8 800507B8 0C00455C */ jal func_80011570 +/* 0513BC 800507BC E7AE0038 */ swc1 $f14, 0x38($sp) +/* 0513C0 800507C0 8E0F0148 */ lw $t7, 0x148($s0) +/* 0513C4 800507C4 8FA40030 */ lw $a0, 0x30($sp) +/* 0513C8 800507C8 85F80000 */ lh $t8, ($t7) +/* 0513CC 800507CC C7A0002C */ lwc1 $f0, 0x2c($sp) +/* 0513D0 800507D0 C7A20028 */ lwc1 $f2, 0x28($sp) +/* 0513D4 800507D4 C7AC0024 */ lwc1 $f12, 0x24($sp) +/* 0513D8 800507D8 C7AE0038 */ lwc1 $f14, 0x38($sp) +/* 0513DC 800507DC A4980000 */ sh $t8, ($a0) +/* 0513E0 800507E0 8E190148 */ lw $t9, 0x148($s0) +/* 0513E4 800507E4 460E0183 */ div.s $f6, $f0, $f14 +/* 0513E8 800507E8 87280002 */ lh $t0, 2($t9) +/* 0513EC 800507EC 44808000 */ mtc1 $zero, $f16 +/* 0513F0 800507F0 A4880002 */ sh $t0, 2($a0) +/* 0513F4 800507F4 8E090148 */ lw $t1, 0x148($s0) +/* 0513F8 800507F8 00000000 */ nop +/* 0513FC 800507FC 852A0004 */ lh $t2, 4($t1) +/* 051400 80050800 00000000 */ nop +/* 051404 80050804 A48A0004 */ sh $t2, 4($a0) +/* 051408 80050808 848B0004 */ lh $t3, 4($a0) +/* 05140C 8005080C 00000000 */ nop +/* 051410 80050810 A60B01A4 */ sh $t3, 0x1a4($s0) +/* 051414 80050814 460E1203 */ div.s $f8, $f2, $f14 +/* 051418 80050818 848C0000 */ lh $t4, ($a0) +/* 05141C 8005081C 00000000 */ nop +/* 051420 80050820 A60C01A0 */ sh $t4, 0x1a0($s0) +/* 051424 80050824 E486001C */ swc1 $f6, 0x1c($a0) +/* 051428 80050828 460E6283 */ div.s $f10, $f12, $f14 +/* 05142C 8005082C E4880020 */ swc1 $f8, 0x20($a0) +/* 051430 80050830 E48A0024 */ swc1 $f10, 0x24($a0) +/* 051434 80050834 A20001F2 */ sb $zero, 0x1f2($s0) +/* 051438 80050838 E610002C */ swc1 $f16, 0x2c($s0) +/* 05143C 8005083C E6100030 */ swc1 $f16, 0x30($s0) +/* 051440 80050840 8FBF001C */ lw $ra, 0x1c($sp) +/* 051444 80050844 8FB00018 */ lw $s0, 0x18($sp) +/* 051448 80050848 03E00008 */ jr $ra +/* 05144C 8005084C 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_043920/func_80050850.s b/asm/non_matchings/unknown_043920/func_80050850.s new file mode 100644 index 00000000..9c2d37b6 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80050850.s @@ -0,0 +1,139 @@ +glabel func_80050850 +/* 051450 80050850 AFA60008 */ sw $a2, 8($sp) +/* 051454 80050854 AFA7000C */ sw $a3, 0xc($sp) +/* 051458 80050858 908C01F1 */ lbu $t4, 0x1f1($a0) +/* 05145C 8005085C 0007C400 */ sll $t8, $a3, 0x10 +/* 051460 80050860 0018CC03 */ sra $t9, $t8, 0x10 +/* 051464 80050864 00067400 */ sll $t6, $a2, 0x10 +/* 051468 80050868 000E7C03 */ sra $t7, $t6, 0x10 +/* 05146C 8005086C 1580006C */ bnez $t4, .L80050A20 +/* 051470 80050870 03203825 */ move $a3, $t9 +/* 051474 80050874 84830160 */ lh $v1, 0x160($a0) +/* 051478 80050878 34088001 */ li $t0, 32769 +/* 05147C 8005087C 306DFFFF */ andi $t5, $v1, 0xffff +/* 051480 80050880 01ED1023 */ subu $v0, $t7, $t5 +/* 051484 80050884 0048082A */ slt $at, $v0, $t0 +/* 051488 80050888 14200004 */ bnez $at, .L8005089C +/* 05148C 8005088C A4990166 */ sh $t9, 0x166($a0) +/* 051490 80050890 3C09FFFF */ lui $t1, (0xFFFF0001 >> 16) # lui $t1, 0xffff +/* 051494 80050894 35290001 */ ori $t1, (0xFFFF0001 & 0xFFFF) # ori $t1, $t1, 1 +/* 051498 80050898 00491021 */ addu $v0, $v0, $t1 +.L8005089C: +/* 05149C 8005089C 3C09FFFF */ lui $t1, (0xFFFF0001 >> 16) # lui $t1, 0xffff +/* 0514A0 800508A0 28418000 */ slti $at, $v0, -0x8000 +/* 0514A4 800508A4 10200003 */ beqz $at, .L800508B4 +/* 0514A8 800508A8 35290001 */ ori $t1, (0xFFFF0001 & 0xFFFF) # ori $t1, $t1, 1 +/* 0514AC 800508AC 340AFFFF */ li $t2, 65535 +/* 0514B0 800508B0 004A1021 */ addu $v0, $v0, $t2 +.L800508B4: +/* 0514B4 800508B4 1840000B */ blez $v0, .L800508E4 +/* 0514B8 800508B8 340AFFFF */ li $t2, 65535 +/* 0514BC 800508BC 240B0600 */ li $t3, 1536 +/* 0514C0 800508C0 00AB0019 */ multu $a1, $t3 +/* 0514C4 800508C4 00003012 */ mflo $a2 +/* 0514C8 800508C8 00C2082A */ slt $at, $a2, $v0 +/* 0514CC 800508CC 10200003 */ beqz $at, .L800508DC +/* 0514D0 800508D0 00627021 */ addu $t6, $v1, $v0 +/* 0514D4 800508D4 00C01025 */ move $v0, $a2 +/* 0514D8 800508D8 00627021 */ addu $t6, $v1, $v0 +.L800508DC: +/* 0514DC 800508DC 1000000C */ b .L80050910 +/* 0514E0 800508E0 A48E0160 */ sh $t6, 0x160($a0) +.L800508E4: +/* 0514E4 800508E4 0441000A */ bgez $v0, .L80050910 +/* 0514E8 800508E8 240B0600 */ li $t3, 1536 +/* 0514EC 800508EC 00AB0019 */ multu $a1, $t3 +/* 0514F0 800508F0 00003012 */ mflo $a2 +/* 0514F4 800508F4 00063023 */ negu $a2, $a2 +/* 0514F8 800508F8 0046082A */ slt $at, $v0, $a2 +/* 0514FC 800508FC 10200003 */ beqz $at, .L8005090C +/* 051500 80050900 00627821 */ addu $t7, $v1, $v0 +/* 051504 80050904 00C01025 */ move $v0, $a2 +/* 051508 80050908 00627821 */ addu $t7, $v1, $v0 +.L8005090C: +/* 05150C 8005090C A48F0160 */ sh $t7, 0x160($a0) +.L80050910: +/* 051510 80050910 84830162 */ lh $v1, 0x162($a0) +/* 051514 80050914 240B0600 */ li $t3, 1536 +/* 051518 80050918 3078FFFF */ andi $t8, $v1, 0xffff +/* 05151C 8005091C 00F81023 */ subu $v0, $a3, $t8 +/* 051520 80050920 0048082A */ slt $at, $v0, $t0 +/* 051524 80050924 14200003 */ bnez $at, .L80050934 +/* 051528 80050928 28418000 */ slti $at, $v0, -0x8000 +/* 05152C 8005092C 00491021 */ addu $v0, $v0, $t1 +/* 051530 80050930 28418000 */ slti $at, $v0, -0x8000 +.L80050934: +/* 051534 80050934 10200002 */ beqz $at, .L80050940 +/* 051538 80050938 00000000 */ nop +/* 05153C 8005093C 004A1021 */ addu $v0, $v0, $t2 +.L80050940: +/* 051540 80050940 1840000A */ blez $v0, .L8005096C +/* 051544 80050944 00000000 */ nop +/* 051548 80050948 00AB0019 */ multu $a1, $t3 +/* 05154C 8005094C 00003012 */ mflo $a2 +/* 051550 80050950 00C2082A */ slt $at, $a2, $v0 +/* 051554 80050954 10200003 */ beqz $at, .L80050964 +/* 051558 80050958 0062C821 */ addu $t9, $v1, $v0 +/* 05155C 8005095C 00C01025 */ move $v0, $a2 +/* 051560 80050960 0062C821 */ addu $t9, $v1, $v0 +.L80050964: +/* 051564 80050964 1000000C */ b .L80050998 +/* 051568 80050968 A4990162 */ sh $t9, 0x162($a0) +.L8005096C: +/* 05156C 8005096C 0441000A */ bgez $v0, .L80050998 +/* 051570 80050970 00000000 */ nop +/* 051574 80050974 00AB0019 */ multu $a1, $t3 +/* 051578 80050978 00003012 */ mflo $a2 +/* 05157C 8005097C 00063023 */ negu $a2, $a2 +/* 051580 80050980 0046082A */ slt $at, $v0, $a2 +/* 051584 80050984 10200003 */ beqz $at, .L80050994 +/* 051588 80050988 00626021 */ addu $t4, $v1, $v0 +/* 05158C 8005098C 00C01025 */ move $v0, $a2 +/* 051590 80050990 00626021 */ addu $t4, $v1, $v0 +.L80050994: +/* 051594 80050994 A48C0162 */ sh $t4, 0x162($a0) +.L80050998: +/* 051598 80050998 84830164 */ lh $v1, 0x164($a0) +/* 05159C 8005099C 87AD0012 */ lh $t5, 0x12($sp) +/* 0515A0 800509A0 306EFFFF */ andi $t6, $v1, 0xffff +/* 0515A4 800509A4 01AE1023 */ subu $v0, $t5, $t6 +/* 0515A8 800509A8 0048082A */ slt $at, $v0, $t0 +/* 0515AC 800509AC 14200003 */ bnez $at, .L800509BC +/* 0515B0 800509B0 28418000 */ slti $at, $v0, -0x8000 +/* 0515B4 800509B4 00491021 */ addu $v0, $v0, $t1 +/* 0515B8 800509B8 28418000 */ slti $at, $v0, -0x8000 +.L800509BC: +/* 0515BC 800509BC 10200002 */ beqz $at, .L800509C8 +/* 0515C0 800509C0 00000000 */ nop +/* 0515C4 800509C4 004A1021 */ addu $v0, $v0, $t2 +.L800509C8: +/* 0515C8 800509C8 1840000A */ blez $v0, .L800509F4 +/* 0515CC 800509CC 00000000 */ nop +/* 0515D0 800509D0 00AB0019 */ multu $a1, $t3 +/* 0515D4 800509D4 00003012 */ mflo $a2 +/* 0515D8 800509D8 00C2082A */ slt $at, $a2, $v0 +/* 0515DC 800509DC 10200003 */ beqz $at, .L800509EC +/* 0515E0 800509E0 00627821 */ addu $t7, $v1, $v0 +/* 0515E4 800509E4 00C01025 */ move $v0, $a2 +/* 0515E8 800509E8 00627821 */ addu $t7, $v1, $v0 +.L800509EC: +/* 0515EC 800509EC 03E00008 */ jr $ra +/* 0515F0 800509F0 A48F0164 */ sh $t7, 0x164($a0) + +.L800509F4: +/* 0515F4 800509F4 0441000A */ bgez $v0, .L80050A20 +/* 0515F8 800509F8 00000000 */ nop +/* 0515FC 800509FC 00AB0019 */ multu $a1, $t3 +/* 051600 80050A00 00003012 */ mflo $a2 +/* 051604 80050A04 00063023 */ negu $a2, $a2 +/* 051608 80050A08 0046082A */ slt $at, $v0, $a2 +/* 05160C 80050A0C 10200003 */ beqz $at, .L80050A1C +/* 051610 80050A10 0062C021 */ addu $t8, $v1, $v0 +/* 051614 80050A14 00C01025 */ move $v0, $a2 +/* 051618 80050A18 0062C021 */ addu $t8, $v1, $v0 +.L80050A1C: +/* 05161C 80050A1C A4980164 */ sh $t8, 0x164($a0) +.L80050A20: +/* 051620 80050A20 03E00008 */ jr $ra +/* 051624 80050A24 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_80050A28.s b/asm/non_matchings/unknown_043920/func_80050A28.s new file mode 100644 index 00000000..a413e6a6 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80050A28.s @@ -0,0 +1,1611 @@ +glabel func_80050A28 +/* 051628 80050A28 27BDFF88 */ addiu $sp, $sp, -0x78 +/* 05162C 80050A2C AFBF0024 */ sw $ra, 0x24($sp) +/* 051630 80050A30 AFB00020 */ sw $s0, 0x20($sp) +/* 051634 80050A34 AFA40078 */ sw $a0, 0x78($sp) +/* 051638 80050A38 AFA60080 */ sw $a2, 0x80($sp) +/* 05163C 80050A3C AFA70084 */ sw $a3, 0x84($sp) +/* 051640 80050A40 AFA00058 */ sw $zero, 0x58($sp) +/* 051644 80050A44 C4AC002C */ lwc1 $f12, 0x2c($a1) +/* 051648 80050A48 44807000 */ mtc1 $zero, $f14 +/* 05164C 80050A4C 460C6102 */ mul.s $f4, $f12, $f12 +/* 051650 80050A50 460E603C */ c.lt.s $f12, $f14 +/* 051654 80050A54 00803825 */ move $a3, $a0 +/* 051658 80050A58 00A08025 */ move $s0, $a1 +/* 05165C 80050A5C 45000005 */ bc1f .L80050A74 +/* 051660 80050A60 E7A40050 */ swc1 $f4, 0x50($sp) +/* 051664 80050A64 C7A60050 */ lwc1 $f6, 0x50($sp) +/* 051668 80050A68 00000000 */ nop +/* 05166C 80050A6C 46003207 */ neg.s $f8, $f6 +/* 051670 80050A70 E7A80050 */ swc1 $f8, 0x50($sp) +.L80050A74: +/* 051674 80050A74 E60E0084 */ swc1 $f14, 0x84($s0) +/* 051678 80050A78 E60E0088 */ swc1 $f14, 0x88($s0) +/* 05167C 80050A7C 3C0E8012 */ lui $t6, %hi(D_8011D586) # $t6, 0x8012 +/* 051680 80050A80 85CED586 */ lh $t6, %lo(D_8011D586)($t6) +/* 051684 80050A84 3C088012 */ lui $t0, %hi(D_8011D528) # $t0, 0x8012 +/* 051688 80050A88 15C00041 */ bnez $t6, .L80050B90 +/* 05168C 80050A8C 2508D528 */ addiu $t0, %lo(D_8011D528) # addiu $t0, $t0, -0x2ad8 +/* 051690 80050A90 820F01E7 */ lb $t7, 0x1e7($s0) +/* 051694 80050A94 3C19800E */ lui $t9, 0x800e +/* 051698 80050A98 31F8001F */ andi $t8, $t7, 0x1f +/* 05169C 80050A9C 0338C821 */ addu $t9, $t9, $t8 +/* 0516A0 80050AA0 8339CDB0 */ lb $t9, -0x3250($t9) +/* 0516A4 80050AA4 3C01800E */ lui $at, %hi(D_800E663C) # $at, 0x800e +/* 0516A8 80050AA8 44995000 */ mtc1 $t9, $f10 +/* 0516AC 80050AAC C4276638 */ lwc1 $f7, %lo(D_800E6638)($at) +/* 0516B0 80050AB0 468054A0 */ cvt.s.w $f18, $f10 +/* 0516B4 80050AB4 C426663C */ lwc1 $f6, %lo(D_800E663C)($at) +/* 0516B8 80050AB8 C60A00A0 */ lwc1 $f10, 0xa0($s0) +/* 0516BC 80050ABC 46009121 */ cvt.d.s $f4, $f18 +/* 0516C0 80050AC0 46262202 */ mul.d $f8, $f4, $f6 +/* 0516C4 80050AC4 46005487 */ neg.s $f18, $f10 +/* 0516C8 80050AC8 C60600A4 */ lwc1 $f6, 0xa4($s0) +/* 0516CC 80050ACC 46204020 */ cvt.s.d $f0, $f8 +/* 0516D0 80050AD0 46009102 */ mul.s $f4, $f18, $f0 +/* 0516D4 80050AD4 46003207 */ neg.s $f8, $f6 +/* 0516D8 80050AD8 C612009C */ lwc1 $f18, 0x9c($s0) +/* 0516DC 80050ADC 46004282 */ mul.s $f10, $f8, $f0 +/* 0516E0 80050AE0 E6040078 */ swc1 $f4, 0x78($s0) +/* 0516E4 80050AE4 46009107 */ neg.s $f4, $f18 +/* 0516E8 80050AE8 46002182 */ mul.s $f6, $f4, $f0 +/* 0516EC 80050AEC E60A007C */ swc1 $f10, 0x7c($s0) +/* 0516F0 80050AF0 E6060080 */ swc1 $f6, 0x80($s0) +/* 0516F4 80050AF4 8CE30060 */ lw $v1, 0x60($a3) +/* 0516F8 80050AF8 00000000 */ nop +/* 0516FC 80050AFC 10600022 */ beqz $v1, .L80050B88 +/* 051700 80050B00 00000000 */ nop +/* 051704 80050B04 8C6A0000 */ lw $t2, ($v1) +/* 051708 80050B08 00003025 */ move $a2, $zero +/* 05170C 80050B0C 1940001E */ blez $t2, .L80050B88 +/* 051710 80050B10 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 051714 80050B14 44811000 */ mtc1 $at, $f2 +/* 051718 80050B18 00002025 */ move $a0, $zero +.L80050B1C: +/* 05171C 80050B1C C4E80008 */ lwc1 $f8, 8($a3) +/* 051720 80050B20 C60A0078 */ lwc1 $f10, 0x78($s0) +/* 051724 80050B24 46081003 */ div.s $f0, $f2, $f8 +/* 051728 80050B28 46005487 */ neg.s $f18, $f10 +/* 05172C 80050B2C 00645821 */ addu $t3, $v1, $a0 +/* 051730 80050B30 8D620004 */ lw $v0, 4($t3) +/* 051734 80050B34 24C60001 */ addiu $a2, $a2, 1 +/* 051738 80050B38 24840004 */ addiu $a0, $a0, 4 +/* 05173C 80050B3C 46009102 */ mul.s $f4, $f18, $f0 +/* 051740 80050B40 E444000C */ swc1 $f4, 0xc($v0) +/* 051744 80050B44 C606007C */ lwc1 $f6, 0x7c($s0) +/* 051748 80050B48 00000000 */ nop +/* 05174C 80050B4C 46003207 */ neg.s $f8, $f6 +/* 051750 80050B50 46004282 */ mul.s $f10, $f8, $f0 +/* 051754 80050B54 E44A0010 */ swc1 $f10, 0x10($v0) +/* 051758 80050B58 C6120080 */ lwc1 $f18, 0x80($s0) +/* 05175C 80050B5C 00000000 */ nop +/* 051760 80050B60 46009107 */ neg.s $f4, $f18 +/* 051764 80050B64 46002182 */ mul.s $f6, $f4, $f0 +/* 051768 80050B68 E4460014 */ swc1 $f6, 0x14($v0) +/* 05176C 80050B6C 8CE30060 */ lw $v1, 0x60($a3) +/* 051770 80050B70 00000000 */ nop +/* 051774 80050B74 8C6C0000 */ lw $t4, ($v1) +/* 051778 80050B78 00000000 */ nop +/* 05177C 80050B7C 00CC082A */ slt $at, $a2, $t4 +/* 051780 80050B80 1420FFE6 */ bnez $at, .L80050B1C +/* 051784 80050B84 00000000 */ nop +.L80050B88: +/* 051788 80050B88 10000005 */ b .L80050BA0 +/* 05178C 80050B8C C60A002C */ lwc1 $f10, 0x2c($s0) +.L80050B90: +/* 051790 80050B90 E60E0078 */ swc1 $f14, 0x78($s0) +/* 051794 80050B94 E60E007C */ swc1 $f14, 0x7c($s0) +/* 051798 80050B98 E60E0080 */ swc1 $f14, 0x80($s0) +/* 05179C 80050B9C C60A002C */ lwc1 $f10, 0x2c($s0) +.L80050BA0: +/* 0517A0 80050BA0 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 0517A4 80050BA4 44814800 */ mtc1 $at, $f9 +/* 0517A8 80050BA8 44804000 */ mtc1 $zero, $f8 +/* 0517AC 80050BAC 460054A1 */ cvt.d.s $f18, $f10 +/* 0517B0 80050BB0 4632403C */ c.lt.d $f8, $f18 +/* 0517B4 80050BB4 00000000 */ nop +/* 0517B8 80050BB8 4500000A */ bc1f .L80050BE4 +/* 0517BC 80050BBC 00000000 */ nop +/* 0517C0 80050BC0 8D0D0000 */ lw $t5, ($t0) +/* 0517C4 80050BC4 240F003C */ li $t7, 60 +/* 0517C8 80050BC8 31AE8000 */ andi $t6, $t5, 0x8000 +/* 0517CC 80050BCC 11C00003 */ beqz $t6, .L80050BDC +/* 0517D0 80050BD0 00000000 */ nop +/* 0517D4 80050BD4 1000000A */ b .L80050C00 +/* 0517D8 80050BD8 A20F01FB */ sb $t7, 0x1fb($s0) +.L80050BDC: +/* 0517DC 80050BDC 10000008 */ b .L80050C00 +/* 0517E0 80050BE0 A20001FB */ sb $zero, 0x1fb($s0) +.L80050BE4: +/* 0517E4 80050BE4 3C188012 */ lui $t8, %hi(D_8011D528) # $t8, 0x8012 +/* 0517E8 80050BE8 8F18D528 */ lw $t8, %lo(D_8011D528)($t8) +/* 0517EC 80050BEC 00000000 */ nop +/* 0517F0 80050BF0 33198000 */ andi $t9, $t8, 0x8000 +/* 0517F4 80050BF4 17200002 */ bnez $t9, .L80050C00 +/* 0517F8 80050BF8 00000000 */ nop +/* 0517FC 80050BFC A20001FB */ sb $zero, 0x1fb($s0) +.L80050C00: +/* 051800 80050C00 820201FB */ lb $v0, 0x1fb($s0) +/* 051804 80050C04 3C088012 */ lui $t0, %hi(D_8011D528) # $t0, 0x8012 +/* 051808 80050C08 18400006 */ blez $v0, .L80050C24 +/* 05180C 80050C0C 2508D528 */ addiu $t0, %lo(D_8011D528) # addiu $t0, $t0, -0x2ad8 +/* 051810 80050C10 8FAA0080 */ lw $t2, 0x80($sp) +/* 051814 80050C14 00000000 */ nop +/* 051818 80050C18 004A5823 */ subu $t3, $v0, $t2 +/* 05181C 80050C1C 10000002 */ b .L80050C28 +/* 051820 80050C20 A20B01FB */ sb $t3, 0x1fb($s0) +.L80050C24: +/* 051824 80050C24 A20001FB */ sb $zero, 0x1fb($s0) +.L80050C28: +/* 051828 80050C28 AFA00060 */ sw $zero, 0x60($sp) +/* 05182C 80050C2C 3C01800E */ lui $at, %hi(D_800E6644) # $at, 0x800e +/* 051830 80050C30 C60600B8 */ lwc1 $f6, 0xb8($s0) +/* 051834 80050C34 C4256640 */ lwc1 $f5, %lo(D_800E6640)($at) +/* 051838 80050C38 C4246644 */ lwc1 $f4, %lo(D_800E6644)($at) +/* 05183C 80050C3C 460032A1 */ cvt.d.s $f10, $f6 +/* 051840 80050C40 462A203C */ c.lt.d $f4, $f10 +/* 051844 80050C44 00000000 */ nop +/* 051848 80050C48 45000048 */ bc1f .L80050D6C +/* 05184C 80050C4C 00000000 */ nop +/* 051850 80050C50 C608002C */ lwc1 $f8, 0x2c($s0) +/* 051854 80050C54 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 051858 80050C58 44813800 */ mtc1 $at, $f7 +/* 05185C 80050C5C 44803000 */ mtc1 $zero, $f6 +/* 051860 80050C60 460044A1 */ cvt.d.s $f18, $f8 +/* 051864 80050C64 4626903C */ c.lt.d $f18, $f6 +/* 051868 80050C68 00000000 */ nop +/* 05186C 80050C6C 4500000B */ bc1f .L80050C9C +/* 051870 80050C70 00000000 */ nop +/* 051874 80050C74 820C01D8 */ lb $t4, 0x1d8($s0) +/* 051878 80050C78 24050001 */ li $a1, 1 +/* 05187C 80050C7C 15800007 */ bnez $t4, .L80050C9C +/* 051880 80050C80 00000000 */ nop +/* 051884 80050C84 86040000 */ lh $a0, ($s0) +/* 051888 80050C88 0C01C8D2 */ jal func_80072348 +/* 05188C 80050C8C AFA70078 */ sw $a3, 0x78($sp) +/* 051890 80050C90 3C088012 */ lui $t0, %hi(D_8011D528) # $t0, 0x8012 +/* 051894 80050C94 8FA70078 */ lw $a3, 0x78($sp) +/* 051898 80050C98 2508D528 */ addiu $t0, %lo(D_8011D528) # addiu $t0, $t0, -0x2ad8 +.L80050C9C: +/* 05189C 80050C9C 3C0E8012 */ lui $t6, %hi(D_8011D55C) # $t6, 0x8012 +/* 0518A0 80050CA0 8DCED55C */ lw $t6, %lo(D_8011D55C)($t6) +/* 0518A4 80050CA4 240D0001 */ li $t5, 1 +/* 0518A8 80050CA8 05C0001D */ bltz $t6, .L80050D20 +/* 0518AC 80050CAC AFAD0060 */ sw $t5, 0x60($sp) +/* 0518B0 80050CB0 3C0F800E */ lui $t7, %hi(D_800DCB98) # $t7, 0x800e +/* 0518B4 80050CB4 8DEFCB98 */ lw $t7, %lo(D_800DCB98)($t7) +/* 0518B8 80050CB8 240E0001 */ li $t6, 1 +/* 0518BC 80050CBC 29E10003 */ slti $at, $t7, 3 +/* 0518C0 80050CC0 10200016 */ beqz $at, .L80050D1C +/* 0518C4 80050CC4 00000000 */ nop +/* 0518C8 80050CC8 820401E6 */ lb $a0, 0x1e6($s0) +/* 0518CC 80050CCC 00000000 */ nop +/* 0518D0 80050CD0 18800006 */ blez $a0, .L80050CEC +/* 0518D4 80050CD4 00000000 */ nop +/* 0518D8 80050CD8 8CF80074 */ lw $t8, 0x74($a3) +/* 0518DC 80050CDC 00000000 */ nop +/* 0518E0 80050CE0 37191400 */ ori $t9, $t8, 0x1400 +/* 0518E4 80050CE4 1000000E */ b .L80050D20 +/* 0518E8 80050CE8 ACF90074 */ sw $t9, 0x74($a3) +.L80050CEC: +/* 0518EC 80050CEC 04810006 */ bgez $a0, .L80050D08 +/* 0518F0 80050CF0 00000000 */ nop +/* 0518F4 80050CF4 8CEA0074 */ lw $t2, 0x74($a3) +/* 0518F8 80050CF8 00000000 */ nop +/* 0518FC 80050CFC 354B2800 */ ori $t3, $t2, 0x2800 +/* 051900 80050D00 10000007 */ b .L80050D20 +/* 051904 80050D04 ACEB0074 */ sw $t3, 0x74($a3) +.L80050D08: +/* 051908 80050D08 8CEC0074 */ lw $t4, 0x74($a3) +/* 05190C 80050D0C 00000000 */ nop +/* 051910 80050D10 358D3000 */ ori $t5, $t4, 0x3000 +/* 051914 80050D14 10000002 */ b .L80050D20 +/* 051918 80050D18 ACED0074 */ sw $t5, 0x74($a3) +.L80050D1C: +/* 05191C 80050D1C AFAE0058 */ sw $t6, 0x58($sp) +.L80050D20: +/* 051920 80050D20 820F01E7 */ lb $t7, 0x1e7($s0) +/* 051924 80050D24 2404FFE7 */ li $a0, -25 +/* 051928 80050D28 31F80007 */ andi $t8, $t7, 7 +/* 05192C 80050D2C 2B010002 */ slti $at, $t8, 2 +/* 051930 80050D30 10200007 */ beqz $at, .L80050D50 +/* 051934 80050D34 24050019 */ li $a1, 25 +/* 051938 80050D38 0C01BE53 */ jal func_8006F94C +/* 05193C 80050D3C AFA70078 */ sw $a3, 0x78($sp) +/* 051940 80050D40 A20201D1 */ sb $v0, 0x1d1($s0) +/* 051944 80050D44 3C088012 */ lui $t0, %hi(D_8011D528) # $t0, 0x8012 +/* 051948 80050D48 8FA70078 */ lw $a3, 0x78($sp) +/* 05194C 80050D4C 2508D528 */ addiu $t0, %lo(D_8011D528) # addiu $t0, $t0, -0x2ad8 +.L80050D50: +/* 051950 80050D50 3C098012 */ lui $t1, %hi(D_8011D534) # $t1, 0x8012 +/* 051954 80050D54 2529D534 */ addiu $t1, %lo(D_8011D534) # addiu $t1, $t1, -0x2acc +/* 051958 80050D58 8D390000 */ lw $t9, ($t1) +/* 05195C 80050D5C 820A01D1 */ lb $t2, 0x1d1($s0) +/* 051960 80050D60 00000000 */ nop +/* 051964 80050D64 032A5821 */ addu $t3, $t9, $t2 +/* 051968 80050D68 AD2B0000 */ sw $t3, ($t1) +.L80050D6C: +/* 05196C 80050D6C 820401FA */ lb $a0, 0x1fa($s0) +/* 051970 80050D70 3C098012 */ lui $t1, %hi(D_8011D534) # $t1, 0x8012 +/* 051974 80050D74 14800020 */ bnez $a0, .L80050DF8 +/* 051978 80050D78 2529D534 */ addiu $t1, %lo(D_8011D534) # addiu $t1, $t1, -0x2acc +/* 05197C 80050D7C C60A002C */ lwc1 $f10, 0x2c($s0) +/* 051980 80050D80 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 051984 80050D84 44812800 */ mtc1 $at, $f5 +/* 051988 80050D88 44802000 */ mtc1 $zero, $f4 +/* 05198C 80050D8C 46005221 */ cvt.d.s $f8, $f10 +/* 051990 80050D90 4628203C */ c.lt.d $f4, $f8 +/* 051994 80050D94 00000000 */ nop +/* 051998 80050D98 45000017 */ bc1f .L80050DF8 +/* 05199C 80050D9C 00000000 */ nop +/* 0519A0 80050DA0 8D0C0000 */ lw $t4, ($t0) +/* 0519A4 80050DA4 00000000 */ nop +/* 0519A8 80050DA8 318D0010 */ andi $t5, $t4, 0x10 +/* 0519AC 80050DAC 11A00012 */ beqz $t5, .L80050DF8 +/* 0519B0 80050DB0 00000000 */ nop +/* 0519B4 80050DB4 8D220000 */ lw $v0, ($t1) +/* 0519B8 80050DB8 00000000 */ nop +/* 0519BC 80050DBC 28410033 */ slti $at, $v0, 0x33 +/* 0519C0 80050DC0 10200003 */ beqz $at, .L80050DD0 +/* 0519C4 80050DC4 2841FFCE */ slti $at, $v0, -0x32 +/* 0519C8 80050DC8 1020000B */ beqz $at, .L80050DF8 +/* 0519CC 80050DCC 00000000 */ nop +.L80050DD0: +/* 0519D0 80050DD0 18400006 */ blez $v0, .L80050DEC +/* 0519D4 80050DD4 240FFFFF */ li $t7, -1 +/* 0519D8 80050DD8 240E0001 */ li $t6, 1 +/* 0519DC 80050DDC A20E01FA */ sb $t6, 0x1fa($s0) +/* 0519E0 80050DE0 820401FA */ lb $a0, 0x1fa($s0) +/* 0519E4 80050DE4 10000004 */ b .L80050DF8 +/* 0519E8 80050DE8 00000000 */ nop +.L80050DEC: +/* 0519EC 80050DEC A20F01FA */ sb $t7, 0x1fa($s0) +/* 0519F0 80050DF0 820401FA */ lb $a0, 0x1fa($s0) +/* 0519F4 80050DF4 00000000 */ nop +.L80050DF8: +/* 0519F8 80050DF8 10800043 */ beqz $a0, .L80050F08 +/* 0519FC 80050DFC 02002825 */ move $a1, $s0 +/* 051A00 80050E00 8D180000 */ lw $t8, ($t0) +/* 051A04 80050E04 3C01FFFF */ lui $at, (0xFFFF7FFF >> 16) # lui $at, 0xffff +/* 051A08 80050E08 34217FFF */ ori $at, (0xFFFF7FFF & 0xFFFF) # ori $at, $at, 0x7fff +/* 051A0C 80050E0C 0301C824 */ and $t9, $t8, $at +/* 051A10 80050E10 AD190000 */ sw $t9, ($t0) +/* 051A14 80050E14 372B4000 */ ori $t3, $t9, 0x4000 +/* 051A18 80050E18 AD0B0000 */ sw $t3, ($t0) +/* 051A1C 80050E1C 3C0E800E */ lui $t6, %hi(D_800DCB98) # $t6, 0x800e +/* 051A20 80050E20 8DCECB98 */ lw $t6, %lo(D_800DCB98)($t6) +/* 051A24 80050E24 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 +/* 051A28 80050E28 240CFFBA */ li $t4, -70 +/* 051A2C 80050E2C AC2CD538 */ sw $t4, %lo(D_8011D538)($at) +/* 051A30 80050E30 240D0001 */ li $t5, 1 +/* 051A34 80050E34 29C10003 */ slti $at, $t6, 3 +/* 051A38 80050E38 10200006 */ beqz $at, .L80050E54 +/* 051A3C 80050E3C AFAD0060 */ sw $t5, 0x60($sp) +/* 051A40 80050E40 8CEF0074 */ lw $t7, 0x74($a3) +/* 051A44 80050E44 00000000 */ nop +/* 051A48 80050E48 35F83C00 */ ori $t8, $t7, 0x3c00 +/* 051A4C 80050E4C 10000003 */ b .L80050E5C +/* 051A50 80050E50 ACF80074 */ sw $t8, 0x74($a3) +.L80050E54: +/* 051A54 80050E54 24190001 */ li $t9, 1 +/* 051A58 80050E58 AFB90058 */ sw $t9, 0x58($sp) +.L80050E5C: +/* 051A5C 80050E5C 8FAA0080 */ lw $t2, 0x80($sp) +/* 051A60 80050E60 820401FA */ lb $a0, 0x1fa($s0) +/* 051A64 80050E64 000A5880 */ sll $t3, $t2, 2 +/* 051A68 80050E68 016A5823 */ subu $t3, $t3, $t2 +/* 051A6C 80050E6C 000B5A40 */ sll $t3, $t3, 9 +/* 051A70 80050E70 01640019 */ multu $t3, $a0 +/* 051A74 80050E74 860301A2 */ lh $v1, 0x1a2($s0) +/* 051A78 80050E78 00000000 */ nop +/* 051A7C 80050E7C 00603025 */ move $a2, $v1 +/* 051A80 80050E80 00006012 */ mflo $t4 +/* 051A84 80050E84 006C6821 */ addu $t5, $v1, $t4 +/* 051A88 80050E88 1880000B */ blez $a0, .L80050EB8 +/* 051A8C 80050E8C A60D01A2 */ sh $t5, 0x1a2($s0) +/* 051A90 80050E90 860E01A2 */ lh $t6, 0x1a2($s0) +/* 051A94 80050E94 00000000 */ nop +/* 051A98 80050E98 05C10010 */ bgez $t6, .L80050EDC +/* 051A9C 80050E9C 00000000 */ nop +/* 051AA0 80050EA0 0460000E */ bltz $v1, .L80050EDC +/* 051AA4 80050EA4 240F7FFF */ li $t7, 32767 +/* 051AA8 80050EA8 A20001FA */ sb $zero, 0x1fa($s0) +/* 051AAC 80050EAC 820401FA */ lb $a0, 0x1fa($s0) +/* 051AB0 80050EB0 1000000A */ b .L80050EDC +/* 051AB4 80050EB4 A60F01A2 */ sh $t7, 0x1a2($s0) +.L80050EB8: +/* 051AB8 80050EB8 861801A2 */ lh $t8, 0x1a2($s0) +/* 051ABC 80050EBC 00000000 */ nop +/* 051AC0 80050EC0 1B000006 */ blez $t8, .L80050EDC +/* 051AC4 80050EC4 00000000 */ nop +/* 051AC8 80050EC8 1CC00004 */ bgtz $a2, .L80050EDC +/* 051ACC 80050ECC 24198000 */ li $t9, -32768 +/* 051AD0 80050ED0 A20001FA */ sb $zero, 0x1fa($s0) +/* 051AD4 80050ED4 820401FA */ lb $a0, 0x1fa($s0) +/* 051AD8 80050ED8 A61901A2 */ sh $t9, 0x1a2($s0) +.L80050EDC: +/* 051ADC 80050EDC 1480000A */ bnez $a0, .L80050F08 +/* 051AE0 80050EE0 00000000 */ nop +/* 051AE4 80050EE4 860301A2 */ lh $v1, 0x1a2($s0) +/* 051AE8 80050EE8 860A01A0 */ lh $t2, 0x1a0($s0) +/* 051AEC 80050EEC C612002C */ lwc1 $f18, 0x2c($s0) +/* 051AF0 80050EF0 01435821 */ addu $t3, $t2, $v1 +/* 051AF4 80050EF4 46009187 */ neg.s $f6, $f18 +/* 051AF8 80050EF8 A60B01A0 */ sh $t3, 0x1a0($s0) +/* 051AFC 80050EFC A60001A2 */ sh $zero, 0x1a2($s0) +/* 051B00 80050F00 E606002C */ swc1 $f6, 0x2c($s0) +/* 051B04 80050F04 A603019E */ sh $v1, 0x19e($s0) +.L80050F08: +/* 051B08 80050F08 820401E6 */ lb $a0, 0x1e6($s0) +/* 051B0C 80050F0C 44809000 */ mtc1 $zero, $f18 +/* 051B10 80050F10 10800019 */ beqz $a0, .L80050F78 +/* 051B14 80050F14 3C0C8012 */ lui $t4, %hi(D_8011D55C) # $t4, 0x8012 +/* 051B18 80050F18 8D8CD55C */ lw $t4, %lo(D_8011D55C)($t4) +/* 051B1C 80050F1C 3C0D800E */ lui $t5, %hi(D_800DCB98) # $t5, 0x800e +/* 051B20 80050F20 05800015 */ bltz $t4, .L80050F78 +/* 051B24 80050F24 00000000 */ nop +/* 051B28 80050F28 8DADCB98 */ lw $t5, %lo(D_800DCB98)($t5) +/* 051B2C 80050F2C 240A0001 */ li $t2, 1 +/* 051B30 80050F30 29A10003 */ slti $at, $t5, 3 +/* 051B34 80050F34 1020000F */ beqz $at, .L80050F74 +/* 051B38 80050F38 00000000 */ nop +/* 051B3C 80050F3C 18800006 */ blez $a0, .L80050F58 +/* 051B40 80050F40 00000000 */ nop +/* 051B44 80050F44 8CEE0074 */ lw $t6, 0x74($a3) +/* 051B48 80050F48 00000000 */ nop +/* 051B4C 80050F4C 35CF1400 */ ori $t7, $t6, 0x1400 +/* 051B50 80050F50 10000005 */ b .L80050F68 +/* 051B54 80050F54 ACEF0074 */ sw $t7, 0x74($a3) +.L80050F58: +/* 051B58 80050F58 8CF80074 */ lw $t8, 0x74($a3) +/* 051B5C 80050F5C 00000000 */ nop +/* 051B60 80050F60 37192800 */ ori $t9, $t8, 0x2800 +/* 051B64 80050F64 ACF90074 */ sw $t9, 0x74($a3) +.L80050F68: +/* 051B68 80050F68 820401E6 */ lb $a0, 0x1e6($s0) +/* 051B6C 80050F6C 10000002 */ b .L80050F78 +/* 051B70 80050F70 00000000 */ nop +.L80050F74: +/* 051B74 80050F74 AFAA0058 */ sw $t2, 0x58($sp) +.L80050F78: +/* 051B78 80050F78 1480001D */ bnez $a0, .L80050FF0 +/* 051B7C 80050F7C 00000000 */ nop +/* 051B80 80050F80 8D0B0000 */ lw $t3, ($t0) +/* 051B84 80050F84 3C01C008 */ li $at, 0xC0080000 # -2.125000 +/* 051B88 80050F88 316C0010 */ andi $t4, $t3, 0x10 +/* 051B8C 80050F8C 11800018 */ beqz $t4, .L80050FF0 +/* 051B90 80050F90 00000000 */ nop +/* 051B94 80050F94 C60A002C */ lwc1 $f10, 0x2c($s0) +/* 051B98 80050F98 44814800 */ mtc1 $at, $f9 +/* 051B9C 80050F9C 44804000 */ mtc1 $zero, $f8 +/* 051BA0 80050FA0 46005121 */ cvt.d.s $f4, $f10 +/* 051BA4 80050FA4 4628203C */ c.lt.d $f4, $f8 +/* 051BA8 80050FA8 00000000 */ nop +/* 051BAC 80050FAC 45000010 */ bc1f .L80050FF0 +/* 051BB0 80050FB0 00000000 */ nop +/* 051BB4 80050FB4 8D220000 */ lw $v0, ($t1) +/* 051BB8 80050FB8 00000000 */ nop +/* 051BBC 80050FBC 28410010 */ slti $at, $v0, 0x10 +/* 051BC0 80050FC0 10200003 */ beqz $at, .L80050FD0 +/* 051BC4 80050FC4 2841FFF1 */ slti $at, $v0, -0xf +/* 051BC8 80050FC8 10200009 */ beqz $at, .L80050FF0 +/* 051BCC 80050FCC 00000000 */ nop +.L80050FD0: +/* 051BD0 80050FD0 04410004 */ bgez $v0, .L80050FE4 +/* 051BD4 80050FD4 240DFFFF */ li $t5, -1 +/* 051BD8 80050FD8 A20D01E6 */ sb $t5, 0x1e6($s0) +/* 051BDC 80050FDC 8D220000 */ lw $v0, ($t1) +/* 051BE0 80050FE0 00000000 */ nop +.L80050FE4: +/* 051BE4 80050FE4 18400002 */ blez $v0, .L80050FF0 +/* 051BE8 80050FE8 240E0001 */ li $t6, 1 +/* 051BEC 80050FEC A20E01E6 */ sb $t6, 0x1e6($s0) +.L80050FF0: +/* 051BF0 80050FF0 C606002C */ lwc1 $f6, 0x2c($s0) +/* 051BF4 80050FF4 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 051BF8 80050FF8 44819800 */ mtc1 $at, $f19 +/* 051BFC 80050FFC 460032A1 */ cvt.d.s $f10, $f6 +/* 051C00 80051000 462A903C */ c.lt.d $f18, $f10 +/* 051C04 80051004 00E02025 */ move $a0, $a3 +/* 051C08 80051008 45000002 */ bc1f .L80051014 +/* 051C0C 8005100C 00000000 */ nop +/* 051C10 80051010 A20001E6 */ sb $zero, 0x1e6($s0) +.L80051014: +/* 051C14 80051014 0C015C88 */ jal func_80057220 +/* 051C18 80051018 AFA70078 */ sw $a3, 0x78($sp) +/* 051C1C 8005101C 3C0F8012 */ lui $t7, %hi(D_8011D528) # $t7, 0x8012 +/* 051C20 80051020 8DEFD528 */ lw $t7, %lo(D_8011D528)($t7) +/* 051C24 80051024 E7A00034 */ swc1 $f0, 0x34($sp) +/* 051C28 80051028 31F80010 */ andi $t8, $t7, 0x10 +/* 051C2C 8005102C 13000019 */ beqz $t8, .L80051094 +/* 051C30 80051030 00000000 */ nop +/* 051C34 80051034 820401E6 */ lb $a0, 0x1e6($s0) +/* 051C38 80051038 3C01800E */ lui $at, %hi(D_800E664C) # $at, 0x800e +/* 051C3C 8005103C 10800015 */ beqz $a0, .L80051094 +/* 051C40 80051040 3C198012 */ lui $t9, %hi(D_8011D534) # $t9, 0x8012 +/* 051C44 80051044 C4296648 */ lwc1 $f9, %lo(D_800E6648)($at) +/* 051C48 80051048 C428664C */ lwc1 $f8, %lo(D_800E664C)($at) +/* 051C4C 8005104C 46000121 */ cvt.d.s $f4, $f0 +/* 051C50 80051050 46282182 */ mul.d $f6, $f4, $f8 +/* 051C54 80051054 8F39D534 */ lw $t9, %lo(D_8011D534)($t9) +/* 051C58 80051058 00045900 */ sll $t3, $a0, 4 +/* 051C5C 8005105C 01645823 */ subu $t3, $t3, $a0 +/* 051C60 80051060 000B5840 */ sll $t3, $t3, 1 +/* 051C64 80051064 00195043 */ sra $t2, $t9, 1 +/* 051C68 80051068 014B1021 */ addu $v0, $t2, $t3 +/* 051C6C 8005106C 462034A0 */ cvt.s.d $f18, $f6 +/* 051C70 80051070 2841004C */ slti $at, $v0, 0x4c +/* 051C74 80051074 14200002 */ bnez $at, .L80051080 +/* 051C78 80051078 E7B20034 */ swc1 $f18, 0x34($sp) +/* 051C7C 8005107C 2402004B */ li $v0, 75 +.L80051080: +/* 051C80 80051080 2841FFB5 */ slti $at, $v0, -0x4b +/* 051C84 80051084 10200006 */ beqz $at, .L800510A0 +/* 051C88 80051088 00000000 */ nop +/* 051C8C 8005108C 10000005 */ b .L800510A4 +/* 051C90 80051090 8E02010C */ lw $v0, 0x10c($s0) +.L80051094: +/* 051C94 80051094 A20001E6 */ sb $zero, 0x1e6($s0) +/* 051C98 80051098 820401E6 */ lb $a0, 0x1e6($s0) +/* 051C9C 8005109C 00000000 */ nop +.L800510A0: +/* 051CA0 800510A0 8E02010C */ lw $v0, 0x10c($s0) +.L800510A4: +/* 051CA4 800510A4 8FAE0080 */ lw $t6, 0x80($sp) +/* 051CA8 800510A8 00046340 */ sll $t4, $a0, 0xd +/* 051CAC 800510AC 004C6823 */ subu $t5, $v0, $t4 +/* 051CB0 800510B0 01AE0019 */ multu $t5, $t6 +/* 051CB4 800510B4 860301A2 */ lh $v1, 0x1a2($s0) +/* 051CB8 800510B8 00000000 */ nop +/* 051CBC 800510BC 28611801 */ slti $at, $v1, 0x1801 +/* 051CC0 800510C0 00007812 */ mflo $t7 +/* 051CC4 800510C4 000FC103 */ sra $t8, $t7, 4 +/* 051CC8 800510C8 0058C823 */ subu $t9, $v0, $t8 +/* 051CCC 800510CC 1020000D */ beqz $at, .L80051104 +/* 051CD0 800510D0 AE19010C */ sw $t9, 0x10c($s0) +/* 051CD4 800510D4 2861E800 */ slti $at, $v1, -0x1800 +/* 051CD8 800510D8 1420000B */ bnez $at, .L80051108 +/* 051CDC 800510DC 240C0001 */ li $t4, 1 +/* 051CE0 800510E0 14800009 */ bnez $a0, .L80051108 +/* 051CE4 800510E4 240C0001 */ li $t4, 1 +/* 051CE8 800510E8 820A01FA */ lb $t2, 0x1fa($s0) +/* 051CEC 800510EC 00000000 */ nop +/* 051CF0 800510F0 15400005 */ bnez $t2, .L80051108 +/* 051CF4 800510F4 240C0001 */ li $t4, 1 +/* 051CF8 800510F8 820B01FB */ lb $t3, 0x1fb($s0) +/* 051CFC 800510FC 00000000 */ nop +/* 051D00 80051100 1160004A */ beqz $t3, .L8005122C +.L80051104: +/* 051D04 80051104 240C0001 */ li $t4, 1 +.L80051108: +/* 051D08 80051108 AFAC0060 */ sw $t4, 0x60($sp) +/* 051D0C 8005110C 820D01FB */ lb $t5, 0x1fb($s0) +/* 051D10 80051110 00000000 */ nop +/* 051D14 80051114 11A0000A */ beqz $t5, .L80051140 +/* 051D18 80051118 00000000 */ nop +/* 051D1C 8005111C 820E01D8 */ lb $t6, 0x1d8($s0) +/* 051D20 80051120 00000000 */ nop +/* 051D24 80051124 15C00006 */ bnez $t6, .L80051140 +/* 051D28 80051128 00000000 */ nop +/* 051D2C 8005112C 86040000 */ lh $a0, ($s0) +/* 051D30 80051130 0C01C8D2 */ jal func_80072348 +/* 051D34 80051134 00002825 */ move $a1, $zero +/* 051D38 80051138 860301A2 */ lh $v1, 0x1a2($s0) +/* 051D3C 8005113C 00000000 */ nop +.L80051140: +/* 051D40 80051140 04610009 */ bgez $v1, .L80051168 +/* 051D44 80051144 8FA80078 */ lw $t0, 0x78($sp) +/* 051D48 80051148 8FA80078 */ lw $t0, 0x78($sp) +/* 051D4C 8005114C 00000000 */ nop +/* 051D50 80051150 8D0F0074 */ lw $t7, 0x74($t0) +/* 051D54 80051154 00000000 */ nop +/* 051D58 80051158 35F81400 */ ori $t8, $t7, 0x1400 +/* 051D5C 8005115C 10000007 */ b .L8005117C +/* 051D60 80051160 AD180074 */ sw $t8, 0x74($t0) +/* 051D64 80051164 8FA80078 */ lw $t0, 0x78($sp) +.L80051168: +/* 051D68 80051168 00000000 */ nop +/* 051D6C 8005116C 8D0A0074 */ lw $t2, 0x74($t0) +/* 051D70 80051170 00000000 */ nop +/* 051D74 80051174 354B2800 */ ori $t3, $t2, 0x2800 +/* 051D78 80051178 AD0B0074 */ sw $t3, 0x74($t0) +.L8005117C: +/* 051D7C 8005117C 820C01E6 */ lb $t4, 0x1e6($s0) +/* 051D80 80051180 00000000 */ nop +/* 051D84 80051184 15800009 */ bnez $t4, .L800511AC +/* 051D88 80051188 00000000 */ nop +/* 051D8C 8005118C 820D01FA */ lb $t5, 0x1fa($s0) +/* 051D90 80051190 00000000 */ nop +/* 051D94 80051194 15A00005 */ bnez $t5, .L800511AC +/* 051D98 80051198 00000000 */ nop +/* 051D9C 8005119C 820E01FB */ lb $t6, 0x1fb($s0) +/* 051DA0 800511A0 00000000 */ nop +/* 051DA4 800511A4 11C00019 */ beqz $t6, .L8005120C +/* 051DA8 800511A8 00000000 */ nop +.L800511AC: +/* 051DAC 800511AC 8E020010 */ lw $v0, 0x10($s0) +/* 051DB0 800511B0 24040001 */ li $a0, 1 +/* 051DB4 800511B4 14400008 */ bnez $v0, .L800511D8 +/* 051DB8 800511B8 260F0010 */ addiu $t7, $s0, 0x10 +/* 051DBC 800511BC 8D05000C */ lw $a1, 0xc($t0) +/* 051DC0 800511C0 8D060010 */ lw $a2, 0x10($t0) +/* 051DC4 800511C4 8D070014 */ lw $a3, 0x14($t0) +/* 051DC8 800511C8 0C0007AA */ jal func_80001EA8 +/* 051DCC 800511CC AFAF0010 */ sw $t7, 0x10($sp) +/* 051DD0 800511D0 10000007 */ b .L800511F0 +/* 051DD4 800511D4 8E020014 */ lw $v0, 0x14($s0) +.L800511D8: +/* 051DD8 800511D8 8D05000C */ lw $a1, 0xc($t0) +/* 051DDC 800511DC 8D060010 */ lw $a2, 0x10($t0) +/* 051DE0 800511E0 8D070014 */ lw $a3, 0x14($t0) +/* 051DE4 800511E4 0C0026DF */ jal func_80009B7C +/* 051DE8 800511E8 00402025 */ move $a0, $v0 +/* 051DEC 800511EC 8E020014 */ lw $v0, 0x14($s0) +.L800511F0: +/* 051DF0 800511F0 00000000 */ nop +/* 051DF4 800511F4 10400003 */ beqz $v0, .L80051204 +/* 051DF8 800511F8 00000000 */ nop +/* 051DFC 800511FC 0C001223 */ jal func_8000488C +/* 051E00 80051200 00402025 */ move $a0, $v0 +.L80051204: +/* 051E04 80051204 10000015 */ b .L8005125C +/* 051E08 80051208 00000000 */ nop +.L8005120C: +/* 051E0C 8005120C 8E020010 */ lw $v0, 0x10($s0) +/* 051E10 80051210 00000000 */ nop +/* 051E14 80051214 10400011 */ beqz $v0, .L8005125C +/* 051E18 80051218 00000000 */ nop +/* 051E1C 8005121C 0C001223 */ jal func_8000488C +/* 051E20 80051220 00402025 */ move $a0, $v0 +/* 051E24 80051224 1000000D */ b .L8005125C +/* 051E28 80051228 00000000 */ nop +.L8005122C: +/* 051E2C 8005122C 8E020010 */ lw $v0, 0x10($s0) +/* 051E30 80051230 00000000 */ nop +/* 051E34 80051234 10400003 */ beqz $v0, .L80051244 +/* 051E38 80051238 00000000 */ nop +/* 051E3C 8005123C 0C001223 */ jal func_8000488C +/* 051E40 80051240 00402025 */ move $a0, $v0 +.L80051244: +/* 051E44 80051244 8E020014 */ lw $v0, 0x14($s0) +/* 051E48 80051248 00000000 */ nop +/* 051E4C 8005124C 10400003 */ beqz $v0, .L8005125C +/* 051E50 80051250 00000000 */ nop +/* 051E54 80051254 0C001223 */ jal func_8000488C +/* 051E58 80051258 00402025 */ move $a0, $v0 +.L8005125C: +/* 051E5C 8005125C 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 +/* 051E60 80051260 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) +/* 051E64 80051264 820301E1 */ lb $v1, 0x1e1($s0) +/* 051E68 80051268 30584000 */ andi $t8, $v0, 0x4000 +/* 051E6C 8005126C 24060006 */ li $a2, 6 +/* 051E70 80051270 13000002 */ beqz $t8, .L8005127C +/* 051E74 80051274 03001025 */ move $v0, $t8 +/* 051E78 80051278 2406000C */ li $a2, 12 +.L8005127C: +/* 051E7C 8005127C 10400006 */ beqz $v0, .L80051298 +/* 051E80 80051280 3C01800E */ lui $at, %hi(D_800E6654) # $at, 0x800e +/* 051E84 80051284 820A01E6 */ lb $t2, 0x1e6($s0) +/* 051E88 80051288 00000000 */ nop +/* 051E8C 8005128C 11400002 */ beqz $t2, .L80051298 +/* 051E90 80051290 00000000 */ nop +/* 051E94 80051294 24060012 */ li $a2, 18 +.L80051298: +/* 051E98 80051298 C60A002C */ lwc1 $f10, 0x2c($s0) +/* 051E9C 8005129C C4256650 */ lwc1 $f5, %lo(D_800E6650)($at) +/* 051EA0 800512A0 C4246654 */ lwc1 $f4, %lo(D_800E6654)($at) +/* 051EA4 800512A4 460050A1 */ cvt.d.s $f2, $f10 +/* 051EA8 800512A8 4624103C */ c.lt.d $f2, $f4 +/* 051EAC 800512AC 00001025 */ move $v0, $zero +/* 051EB0 800512B0 45000005 */ bc1f .L800512C8 +/* 051EB4 800512B4 3C01800E */ lui $at, %hi(D_800E665C) # $at, 0x800e +/* 051EB8 800512B8 00660019 */ multu $v1, $a2 +/* 051EBC 800512BC 00001012 */ mflo $v0 +/* 051EC0 800512C0 00000000 */ nop +/* 051EC4 800512C4 00000000 */ nop +.L800512C8: +/* 051EC8 800512C8 C4296658 */ lwc1 $f9, %lo(D_800E6658)($at) +/* 051ECC 800512CC C428665C */ lwc1 $f8, %lo(D_800E665C)($at) +/* 051ED0 800512D0 8FB90080 */ lw $t9, 0x80($sp) +/* 051ED4 800512D4 4622403C */ c.lt.d $f8, $f2 +/* 051ED8 800512D8 00000000 */ nop +/* 051EDC 800512DC 45000005 */ bc1f .L800512F4 +/* 051EE0 800512E0 00035823 */ negu $t3, $v1 +/* 051EE4 800512E4 01660019 */ multu $t3, $a2 +/* 051EE8 800512E8 00001012 */ mflo $v0 +/* 051EEC 800512EC 00000000 */ nop +/* 051EF0 800512F0 00000000 */ nop +.L800512F4: +/* 051EF4 800512F4 00590019 */ multu $v0, $t9 +/* 051EF8 800512F8 3C018012 */ lui $at, %hi(D_8011D570) # $at, 0x8012 +/* 051EFC 800512FC C42AD570 */ lwc1 $f10, %lo(D_8011D570)($at) +/* 051F00 80051300 860E01A0 */ lh $t6, 0x1a0($s0) +/* 051F04 80051304 02002025 */ move $a0, $s0 +/* 051F08 80051308 00001012 */ mflo $v0 +/* 051F0C 8005130C 00026043 */ sra $t4, $v0, 1 +/* 051F10 80051310 448C3000 */ mtc1 $t4, $f6 +/* 051F14 80051314 00000000 */ nop +/* 051F18 80051318 468034A0 */ cvt.s.w $f18, $f6 +/* 051F1C 8005131C 460A9102 */ mul.s $f4, $f18, $f10 +/* 051F20 80051320 444DF800 */ cfc1 $t5, $31 +/* 051F24 80051324 00000000 */ nop +/* 051F28 80051328 35A10003 */ ori $at, $t5, 3 +/* 051F2C 8005132C 38210002 */ xori $at, $at, 2 +/* 051F30 80051330 44C1F800 */ ctc1 $at, $31 +/* 051F34 80051334 00000000 */ nop +/* 051F38 80051338 46002224 */ cvt.w.s $f8, $f4 +/* 051F3C 8005133C 440F4000 */ mfc1 $t7, $f8 +/* 051F40 80051340 44CDF800 */ ctc1 $t5, $31 +/* 051F44 80051344 01CFC023 */ subu $t8, $t6, $t7 +/* 051F48 80051348 0C014D1E */ jal func_80053478 +/* 051F4C 8005134C A61801A0 */ sh $t8, 0x1a0($s0) +/* 051F50 80051350 C606002C */ lwc1 $f6, 0x2c($s0) +/* 051F54 80051354 3C01C010 */ li $at, 0xC0100000 # -2.250000 +/* 051F58 80051358 44815800 */ mtc1 $at, $f11 +/* 051F5C 8005135C 44805000 */ mtc1 $zero, $f10 +/* 051F60 80051360 460034A1 */ cvt.d.s $f18, $f6 +/* 051F64 80051364 462A903C */ c.lt.d $f18, $f10 +/* 051F68 80051368 44807000 */ mtc1 $zero, $f14 +/* 051F6C 8005136C 45000032 */ bc1f .L80051438 +/* 051F70 80051370 00004825 */ move $t1, $zero +/* 051F74 80051374 3C028012 */ lui $v0, %hi(D_8011D554) # $v0, 0x8012 +/* 051F78 80051378 8C42D554 */ lw $v0, %lo(D_8011D554)($v0) +/* 051F7C 8005137C 00000000 */ nop +/* 051F80 80051380 28411401 */ slti $at, $v0, 0x1401 +/* 051F84 80051384 10200007 */ beqz $at, .L800513A4 +/* 051F88 80051388 00000000 */ nop +/* 051F8C 8005138C 820401E6 */ lb $a0, 0x1e6($s0) +/* 051F90 80051390 2841EC00 */ slti $at, $v0, -0x1400 +/* 051F94 80051394 10800013 */ beqz $a0, .L800513E4 +/* 051F98 80051398 00000000 */ nop +/* 051F9C 8005139C 18400011 */ blez $v0, .L800513E4 +/* 051FA0 800513A0 00000000 */ nop +.L800513A4: +/* 051FA4 800513A4 820601E7 */ lb $a2, 0x1e7($s0) +/* 051FA8 800513A8 240B0007 */ li $t3, 7 +/* 051FAC 800513AC 30CA0007 */ andi $t2, $a2, 7 +/* 051FB0 800513B0 29410004 */ slti $at, $t2, 4 +/* 051FB4 800513B4 14200002 */ bnez $at, .L800513C0 +/* 051FB8 800513B8 01403025 */ move $a2, $t2 +/* 051FBC 800513BC 016A3023 */ subu $a2, $t3, $t2 +.L800513C0: +/* 051FC0 800513C0 0006C880 */ sll $t9, $a2, 2 +/* 051FC4 800513C4 0326C823 */ subu $t9, $t9, $a2 +/* 051FC8 800513C8 0019C8C0 */ sll $t9, $t9, 3 +/* 051FCC 800513CC 0326C821 */ addu $t9, $t9, $a2 +/* 051FD0 800513D0 0019C900 */ sll $t9, $t9, 4 +/* 051FD4 800513D4 00596021 */ addu $t4, $v0, $t9 +/* 051FD8 800513D8 3C018012 */ lui $at, %hi(D_8011D554) # $at, 0x8012 +/* 051FDC 800513DC 10000016 */ b .L80051438 +/* 051FE0 800513E0 AC2CD554 */ sw $t4, %lo(D_8011D554)($at) +.L800513E4: +/* 051FE4 800513E4 14200005 */ bnez $at, .L800513FC +/* 051FE8 800513E8 00000000 */ nop +/* 051FEC 800513EC 10800012 */ beqz $a0, .L80051438 +/* 051FF0 800513F0 00000000 */ nop +/* 051FF4 800513F4 04410010 */ bgez $v0, .L80051438 +/* 051FF8 800513F8 00000000 */ nop +.L800513FC: +/* 051FFC 800513FC 820601E7 */ lb $a2, 0x1e7($s0) +/* 052000 80051400 240E0007 */ li $t6, 7 +/* 052004 80051404 30CD0007 */ andi $t5, $a2, 7 +/* 052008 80051408 29A10004 */ slti $at, $t5, 4 +/* 05200C 8005140C 14200002 */ bnez $at, .L80051418 +/* 052010 80051410 01A03025 */ move $a2, $t5 +/* 052014 80051414 01CD3023 */ subu $a2, $t6, $t5 +.L80051418: +/* 052018 80051418 00067880 */ sll $t7, $a2, 2 +/* 05201C 8005141C 01E67823 */ subu $t7, $t7, $a2 +/* 052020 80051420 000F78C0 */ sll $t7, $t7, 3 +/* 052024 80051424 01E67821 */ addu $t7, $t7, $a2 +/* 052028 80051428 000F7900 */ sll $t7, $t7, 4 +/* 05202C 8005142C 004FC023 */ subu $t8, $v0, $t7 +/* 052030 80051430 3C018012 */ lui $at, %hi(D_8011D554) # $at, 0x8012 +/* 052034 80051434 AC38D554 */ sw $t8, %lo(D_8011D554)($at) +.L80051438: +/* 052038 80051438 44808000 */ mtc1 $zero, $f16 +/* 05203C 8005143C 44801000 */ mtc1 $zero, $f2 +/* 052040 80051440 AFA00068 */ sw $zero, 0x68($sp) +/* 052044 80051444 00004025 */ move $t0, $zero +/* 052048 80051448 00003025 */ move $a2, $zero +/* 05204C 8005144C 02002825 */ move $a1, $s0 +.L80051450: +/* 052050 80051450 90AA01DC */ lbu $t2, 0x1dc($a1) +/* 052054 80051454 240100FF */ li $at, 255 +/* 052058 80051458 11410038 */ beq $t2, $at, .L8005153C +/* 05205C 8005145C 00000000 */ nop +/* 052060 80051460 AFA50028 */ sw $a1, 0x28($sp) +/* 052064 80051464 AFA60070 */ sw $a2, 0x70($sp) +/* 052068 80051468 A3A80057 */ sb $t0, 0x57($sp) +/* 05206C 8005146C AFA90064 */ sw $t1, 0x64($sp) +/* 052070 80051470 E7A20048 */ swc1 $f2, 0x48($sp) +/* 052074 80051474 E7AE0044 */ swc1 $f14, 0x44($sp) +/* 052078 80051478 0C0270C3 */ jal func_8009C30C +/* 05207C 8005147C E7B00040 */ swc1 $f16, 0x40($sp) +/* 052080 80051480 8FA50028 */ lw $a1, 0x28($sp) +/* 052084 80051484 8FA60070 */ lw $a2, 0x70($sp) +/* 052088 80051488 3C07800E */ lui $a3, %hi(D_800DCB9C) # $a3, 0x800e +/* 05208C 8005148C 83A80057 */ lb $t0, 0x57($sp) +/* 052090 80051490 8FA90064 */ lw $t1, 0x64($sp) +/* 052094 80051494 C7A20048 */ lwc1 $f2, 0x48($sp) +/* 052098 80051498 C7AE0044 */ lwc1 $f14, 0x44($sp) +/* 05209C 8005149C C7B00040 */ lwc1 $f16, 0x40($sp) +/* 0520A0 800514A0 00025A00 */ sll $t3, $v0, 8 +/* 0520A4 800514A4 05610006 */ bgez $t3, .L800514C0 +/* 0520A8 800514A8 24E7CB9C */ addiu $a3, %lo(D_800DCB9C) # addiu $a3, $a3, -0x3464 +/* 0520AC 800514AC C4E40000 */ lwc1 $f4, ($a3) +/* 0520B0 800514B0 90A201DC */ lbu $v0, 0x1dc($a1) +/* 0520B4 800514B4 46047380 */ add.s $f14, $f14, $f4 +/* 0520B8 800514B8 10000008 */ b .L800514DC +/* 0520BC 800514BC 00021880 */ sll $v1, $v0, 2 +.L800514C0: +/* 0520C0 800514C0 90A201DC */ lbu $v0, 0x1dc($a1) +/* 0520C4 800514C4 00000000 */ nop +/* 0520C8 800514C8 00021880 */ sll $v1, $v0, 2 +/* 0520CC 800514CC 00E3C821 */ addu $t9, $a3, $v1 +/* 0520D0 800514D0 C7280000 */ lwc1 $f8, ($t9) +/* 0520D4 800514D4 00000000 */ nop +/* 0520D8 800514D8 46087380 */ add.s $f14, $f14, $f8 +.L800514DC: +/* 0520DC 800514DC 3C01800E */ lui $at, 0x800e +/* 0520E0 800514E0 3C0D800E */ lui $t5, 0x800e +/* 0520E4 800514E4 00230821 */ addu $at, $at, $v1 +/* 0520E8 800514E8 01A36821 */ addu $t5, $t5, $v1 +/* 0520EC 800514EC C426CBE8 */ lwc1 $f6, -0x3418($at) +/* 0520F0 800514F0 8DADCC34 */ lw $t5, -0x33cc($t5) +/* 0520F4 800514F4 8FAC0068 */ lw $t4, 0x68($sp) +/* 0520F8 800514F8 0122082A */ slt $at, $t1, $v0 +/* 0520FC 800514FC 018D7021 */ addu $t6, $t4, $t5 +/* 052100 80051500 AFAE0068 */ sw $t6, 0x68($sp) +/* 052104 80051504 00402025 */ move $a0, $v0 +/* 052108 80051508 10200002 */ beqz $at, .L80051514 +/* 05210C 8005150C 46068400 */ add.s $f16, $f16, $f6 +/* 052110 80051510 00404825 */ move $t1, $v0 +.L80051514: +/* 052114 80051514 24010004 */ li $at, 4 +/* 052118 80051518 14810005 */ bne $a0, $at, .L80051530 +/* 05211C 8005151C 3C013F80 */ lui $at, 0x3f80 +/* 052120 80051520 25080001 */ addiu $t0, $t0, 1 +/* 052124 80051524 00087E00 */ sll $t7, $t0, 0x18 +/* 052128 80051528 000F4603 */ sra $t0, $t7, 0x18 +/* 05212C 8005152C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +.L80051530: +/* 052130 80051530 44819000 */ mtc1 $at, $f18 +/* 052134 80051534 00000000 */ nop +/* 052138 80051538 46121080 */ add.s $f2, $f2, $f18 +.L8005153C: +/* 05213C 8005153C 24C60001 */ addiu $a2, $a2, 1 +/* 052140 80051540 28C10004 */ slti $at, $a2, 4 +/* 052144 80051544 1420FFC2 */ bnez $at, .L80051450 +/* 052148 80051548 24A50001 */ addiu $a1, $a1, 1 +/* 05214C 8005154C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 052150 80051550 44815000 */ mtc1 $at, $f10 +/* 052154 80051554 44802800 */ mtc1 $zero, $f5 +/* 052158 80051558 4602503C */ c.lt.s $f10, $f2 +/* 05215C 8005155C 00000000 */ nop +/* 052160 80051560 45000004 */ bc1f .L80051574 +/* 052164 80051564 00000000 */ nop +/* 052168 80051568 46027383 */ div.s $f14, $f14, $f2 +/* 05216C 8005156C 00000000 */ nop +/* 052170 80051570 46028403 */ div.s $f16, $f16, $f2 +.L80051574: +/* 052174 80051574 860A0000 */ lh $t2, ($s0) +/* 052178 80051578 00000000 */ nop +/* 05217C 8005157C 1540000D */ bnez $t2, .L800515B4 +/* 052180 80051580 00000000 */ nop +/* 052184 80051584 820B01E2 */ lb $t3, 0x1e2($s0) +/* 052188 80051588 2401000C */ li $at, 12 +/* 05218C 8005158C 11600009 */ beqz $t3, .L800515B4 +/* 052190 80051590 00000000 */ nop +/* 052194 80051594 15210007 */ bne $t1, $at, .L800515B4 +/* 052198 80051598 3C198012 */ lui $t9, %hi(D_8011D52C) # $t9, 0x8012 +/* 05219C 8005159C 8F39D52C */ lw $t9, %lo(D_8011D52C)($t9) +/* 0521A0 800515A0 240D0002 */ li $t5, 2 +/* 0521A4 800515A4 332C2000 */ andi $t4, $t9, 0x2000 +/* 0521A8 800515A8 11800002 */ beqz $t4, .L800515B4 +/* 0521AC 800515AC 3C018012 */ lui $at, %hi(D_8011D582) # $at, 0x8012 +/* 0521B0 800515B0 A02DD582 */ sb $t5, %lo(D_8011D582)($at) +.L800515B4: +/* 0521B4 800515B4 C60800C0 */ lwc1 $f8, 0xc0($s0) +/* 0521B8 800515B8 44802000 */ mtc1 $zero, $f4 +/* 0521BC 800515BC 460041A1 */ cvt.d.s $f6, $f8 +/* 0521C0 800515C0 46262032 */ c.eq.d $f4, $f6 +/* 0521C4 800515C4 00000000 */ nop +/* 0521C8 800515C8 45010004 */ bc1t .L800515DC +/* 0521CC 800515CC 3C01800E */ lui $at, %hi(D_800E6660) # $at, 0x800e +/* 0521D0 800515D0 C42E6660 */ lwc1 $f14, %lo(D_800E6660)($at) +/* 0521D4 800515D4 44808000 */ mtc1 $zero, $f16 +/* 0521D8 800515D8 00000000 */ nop +.L800515DC: +/* 0521DC 800515DC 24010002 */ li $at, 2 +/* 0521E0 800515E0 1521001A */ bne $t1, $at, .L8005164C +/* 0521E4 800515E4 24040008 */ li $a0, 8 +/* 0521E8 800515E8 C612002C */ lwc1 $f18, 0x2c($s0) +/* 0521EC 800515EC 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 0521F0 800515F0 44814800 */ mtc1 $at, $f9 +/* 0521F4 800515F4 44804000 */ mtc1 $zero, $f8 +/* 0521F8 800515F8 460092A1 */ cvt.d.s $f10, $f18 +/* 0521FC 800515FC 4628503C */ c.lt.d $f10, $f8 +/* 052200 80051600 00000000 */ nop +/* 052204 80051604 45000011 */ bc1f .L8005164C +/* 052208 80051608 24040008 */ li $a0, 8 +/* 05220C 8005160C 820E01D8 */ lb $t6, 0x1d8($s0) +/* 052210 80051610 00002825 */ move $a1, $zero +/* 052214 80051614 15C0000D */ bnez $t6, .L8005164C +/* 052218 80051618 24040008 */ li $a0, 8 +/* 05221C 8005161C 86040000 */ lh $a0, ($s0) +/* 052220 80051620 E7B00040 */ swc1 $f16, 0x40($sp) +/* 052224 80051624 E7AE0044 */ swc1 $f14, 0x44($sp) +/* 052228 80051628 AFA90064 */ sw $t1, 0x64($sp) +/* 05222C 8005162C 0C01C8D2 */ jal func_80072348 +/* 052230 80051630 A3A80057 */ sb $t0, 0x57($sp) +/* 052234 80051634 83A80057 */ lb $t0, 0x57($sp) +/* 052238 80051638 8FA90064 */ lw $t1, 0x64($sp) +/* 05223C 8005163C C7AE0044 */ lwc1 $f14, 0x44($sp) +/* 052240 80051640 C7B00040 */ lwc1 $f16, 0x40($sp) +/* 052244 80051644 00000000 */ nop +/* 052248 80051648 24040008 */ li $a0, 8 +.L8005164C: +/* 05224C 8005164C A3A80057 */ sb $t0, 0x57($sp) +/* 052250 80051650 AFA90064 */ sw $t1, 0x64($sp) +/* 052254 80051654 E7AE0044 */ swc1 $f14, 0x44($sp) +/* 052258 80051658 0C0078A7 */ jal func_8001E29C +/* 05225C 8005165C E7B00040 */ swc1 $f16, 0x40($sp) +/* 052260 80051660 3C0F8012 */ lui $t7, %hi(D_8011D55C) # $t7, 0x8012 +/* 052264 80051664 8DEFD55C */ lw $t7, %lo(D_8011D55C)($t7) +/* 052268 80051668 2403FFFF */ li $v1, -1 +/* 05226C 8005166C 83A80057 */ lb $t0, 0x57($sp) +/* 052270 80051670 8FA90064 */ lw $t1, 0x64($sp) +/* 052274 80051674 C7AE0044 */ lwc1 $f14, 0x44($sp) +/* 052278 80051678 C7B00040 */ lwc1 $f16, 0x40($sp) +/* 05227C 8005167C 106F0028 */ beq $v1, $t7, .L80051720 +/* 052280 80051680 00000000 */ nop +/* 052284 80051684 C60C002C */ lwc1 $f12, 0x2c($s0) +/* 052288 80051688 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 05228C 8005168C 44812800 */ mtc1 $at, $f5 +/* 052290 80051690 44802000 */ mtc1 $zero, $f4 +/* 052294 80051694 460061A1 */ cvt.d.s $f6, $f12 +/* 052298 80051698 4626203C */ c.lt.d $f4, $f6 +/* 05229C 8005169C 00000000 */ nop +/* 0522A0 800516A0 4501001F */ bc1t .L80051720 +/* 0522A4 800516A4 00000000 */ nop +/* 0522A8 800516A8 821801E6 */ lb $t8, 0x1e6($s0) +/* 0522AC 800516AC 00000000 */ nop +/* 0522B0 800516B0 1700001B */ bnez $t8, .L80051720 +/* 0522B4 800516B4 00000000 */ nop +/* 0522B8 800516B8 820A01D8 */ lb $t2, 0x1d8($s0) +/* 0522BC 800516BC 3C0B8012 */ lui $t3, %hi(D_8011D534) # $t3, 0x8012 +/* 0522C0 800516C0 15400017 */ bnez $t2, .L80051720 +/* 0522C4 800516C4 00000000 */ nop +/* 0522C8 800516C8 8D6BD534 */ lw $t3, %lo(D_8011D534)($t3) +/* 0522CC 800516CC 82190003 */ lb $t9, 3($s0) +/* 0522D0 800516D0 448B9000 */ mtc1 $t3, $f18 +/* 0522D4 800516D4 00196080 */ sll $t4, $t9, 2 +/* 0522D8 800516D8 468092A0 */ cvt.s.w $f10, $f18 +/* 0522DC 800516DC 004C6821 */ addu $t5, $v0, $t4 +/* 0522E0 800516E0 C5A40000 */ lwc1 $f4, ($t5) +/* 0522E4 800516E4 460A6202 */ mul.s $f8, $f12, $f10 +/* 0522E8 800516E8 C6120030 */ lwc1 $f18, 0x30($s0) +/* 0522EC 800516EC 860E0000 */ lh $t6, ($s0) +/* 0522F0 800516F0 3C01800E */ lui $at, %hi(D_800E666C) # $at, 0x800e +/* 0522F4 800516F4 46044183 */ div.s $f6, $f8, $f4 +/* 0522F8 800516F8 46069280 */ add.s $f10, $f18, $f6 +/* 0522FC 800516FC 146E0008 */ bne $v1, $t6, .L80051720 +/* 052300 80051700 E60A0030 */ swc1 $f10, 0x30($s0) +/* 052304 80051704 C6080030 */ lwc1 $f8, 0x30($s0) +/* 052308 80051708 C4336668 */ lwc1 $f19, %lo(D_800E6668)($at) +/* 05230C 8005170C C432666C */ lwc1 $f18, %lo(D_800E666C)($at) +/* 052310 80051710 46004121 */ cvt.d.s $f4, $f8 +/* 052314 80051714 46322182 */ mul.d $f6, $f4, $f18 +/* 052318 80051718 462032A0 */ cvt.s.d $f10, $f6 +/* 05231C 8005171C E60A0030 */ swc1 $f10, 0x30($s0) +.L80051720: +/* 052320 80051720 C608002C */ lwc1 $f8, 0x2c($s0) +/* 052324 80051724 3C01C008 */ li $at, 0xC0080000 # -2.125000 +/* 052328 80051728 44812800 */ mtc1 $at, $f5 +/* 05232C 8005172C 44802000 */ mtc1 $zero, $f4 +/* 052330 80051730 460040A1 */ cvt.d.s $f2, $f8 +/* 052334 80051734 4622203C */ c.lt.d $f4, $f2 +/* 052338 80051738 00000000 */ nop +/* 05233C 8005173C 4500002D */ bc1f .L800517F4 +/* 052340 80051740 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 052344 80051744 44819800 */ mtc1 $at, $f19 +/* 052348 80051748 44809000 */ mtc1 $zero, $f18 +/* 05234C 8005174C 44804800 */ mtc1 $zero, $f9 +/* 052350 80051750 46321180 */ add.d $f6, $f2, $f18 +/* 052354 80051754 44804000 */ mtc1 $zero, $f8 +/* 052358 80051758 46203287 */ neg.d $f10, $f6 +/* 05235C 8005175C 46205020 */ cvt.s.d $f0, $f10 +/* 052360 80051760 3C0F8012 */ lui $t7, %hi(D_8011D554) # $t7, 0x8012 +/* 052364 80051764 46000321 */ cvt.d.s $f12, $f0 +/* 052368 80051768 4628603C */ c.lt.d $f12, $f8 +/* 05236C 8005176C 00000000 */ nop +/* 052370 80051770 45000004 */ bc1f .L80051784 +/* 052374 80051774 00000000 */ nop +/* 052378 80051778 44800000 */ mtc1 $zero, $f0 +/* 05237C 8005177C 00000000 */ nop +/* 052380 80051780 46000321 */ cvt.d.s $f12, $f0 +.L80051784: +/* 052384 80051784 8DEFD554 */ lw $t7, %lo(D_8011D554)($t7) +/* 052388 80051788 44804000 */ mtc1 $zero, $f8 +/* 05238C 8005178C 448F2000 */ mtc1 $t7, $f4 +/* 052390 80051790 00000000 */ nop +/* 052394 80051794 468024A0 */ cvt.s.w $f18, $f4 +/* 052398 80051798 46009182 */ mul.s $f6, $f18, $f0 +/* 05239C 8005179C 4458F800 */ cfc1 $t8, $31 +/* 0523A0 800517A0 00000000 */ nop +/* 0523A4 800517A4 37010003 */ ori $at, $t8, 3 +/* 0523A8 800517A8 38210002 */ xori $at, $at, 2 +/* 0523AC 800517AC 44C1F800 */ ctc1 $at, $31 +/* 0523B0 800517B0 3C018012 */ lui $at, %hi(D_8011D554) # $at, 0x8012 +/* 0523B4 800517B4 460032A4 */ cvt.w.s $f10, $f6 +/* 0523B8 800517B8 440A5000 */ mfc1 $t2, $f10 +/* 0523BC 800517BC 44D8F800 */ ctc1 $t8, $31 +/* 0523C0 800517C0 AC2AD554 */ sw $t2, %lo(D_8011D554)($at) +/* 0523C4 800517C4 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 0523C8 800517C8 44814800 */ mtc1 $at, $f9 +/* 0523CC 800517CC 3C01800E */ lui $at, %hi(D_800E6674) # $at, 0x800e +/* 0523D0 800517D0 C4336670 */ lwc1 $f19, %lo(D_800E6670)($at) +/* 0523D4 800517D4 C4326674 */ lwc1 $f18, %lo(D_800E6674)($at) +/* 0523D8 800517D8 462C4101 */ sub.d $f4, $f8, $f12 +/* 0523DC 800517DC 46322182 */ mul.d $f6, $f4, $f18 +/* 0523E0 800517E0 00000000 */ nop +/* 0523E4 800517E4 46008282 */ mul.s $f10, $f16, $f0 +/* 0523E8 800517E8 46005221 */ cvt.d.s $f8, $f10 +/* 0523EC 800517EC 46283100 */ add.d $f4, $f6, $f8 +/* 0523F0 800517F0 46202420 */ cvt.s.d $f16, $f4 +.L800517F4: +/* 0523F4 800517F4 C6120030 */ lwc1 $f18, 0x30($s0) +/* 0523F8 800517F8 860401A4 */ lh $a0, 0x1a4($s0) +/* 0523FC 800517FC 46109282 */ mul.s $f10, $f18, $f16 +/* 052400 80051800 E60A0030 */ swc1 $f10, 0x30($s0) +/* 052404 80051804 E7AE0044 */ swc1 $f14, 0x44($sp) +/* 052408 80051808 AFA90064 */ sw $t1, 0x64($sp) +/* 05240C 8005180C 0C01C1FE */ jal func_800707F8 +/* 052410 80051810 A3A80057 */ sb $t0, 0x57($sp) +/* 052414 80051814 44803000 */ mtc1 $zero, $f6 +/* 052418 80051818 83A80057 */ lb $t0, 0x57($sp) +/* 05241C 8005181C 4606003C */ c.lt.s $f0, $f6 +/* 052420 80051820 8FA90064 */ lw $t1, 0x64($sp) +/* 052424 80051824 C7AE0044 */ lwc1 $f14, 0x44($sp) +/* 052428 80051828 45000002 */ bc1f .L80051834 +/* 05242C 8005182C 46000086 */ mov.s $f2, $f0 +/* 052430 80051830 46000087 */ neg.s $f2, $f0 +.L80051834: +/* 052434 80051834 C6080030 */ lwc1 $f8, 0x30($s0) +/* 052438 80051838 3C018012 */ lui $at, %hi(D_8011D581) # $at, 0x8012 +/* 05243C 8005183C 46024102 */ mul.s $f4, $f8, $f2 +/* 052440 80051840 E6040030 */ swc1 $f4, 0x30($s0) +/* 052444 80051844 11000013 */ beqz $t0, .L80051894 +/* 052448 80051848 A029D581 */ sb $t1, %lo(D_8011D581)($at) +/* 05244C 8005184C 24040020 */ li $a0, 32 +/* 052450 80051850 A3A80057 */ sb $t0, 0x57($sp) +/* 052454 80051854 AFA90064 */ sw $t1, 0x64($sp) +/* 052458 80051858 0C0078A7 */ jal func_8001E29C +/* 05245C 8005185C E7AE0044 */ swc1 $f14, 0x44($sp) +/* 052460 80051860 83A80057 */ lb $t0, 0x57($sp) +/* 052464 80051864 C7B20034 */ lwc1 $f18, 0x34($sp) +/* 052468 80051868 00085880 */ sll $t3, $t0, 2 +/* 05246C 8005186C 004BC821 */ addu $t9, $v0, $t3 +/* 052470 80051870 C72A0000 */ lwc1 $f10, ($t9) +/* 052474 80051874 44804000 */ mtc1 $zero, $f8 +/* 052478 80051878 460A9182 */ mul.s $f6, $f18, $f10 +/* 05247C 8005187C 8FA90064 */ lw $t1, 0x64($sp) +/* 052480 80051880 C7AE0044 */ lwc1 $f14, 0x44($sp) +/* 052484 80051884 E7A60034 */ swc1 $f6, 0x34($sp) +/* 052488 80051888 A2000175 */ sb $zero, 0x175($s0) +/* 05248C 8005188C 1000000F */ b .L800518CC +/* 052490 80051890 E6080030 */ swc1 $f8, 0x30($s0) +.L80051894: +/* 052494 80051894 2401000A */ li $at, 10 +/* 052498 80051898 1521000C */ bne $t1, $at, .L800518CC +/* 05249C 8005189C 00000000 */ nop +/* 0524A0 800518A0 920C01EF */ lbu $t4, 0x1ef($s0) +/* 0524A4 800518A4 24050138 */ li $a1, 312 +/* 0524A8 800518A8 358D0004 */ ori $t5, $t4, 4 +/* 0524AC 800518AC A20D01EF */ sb $t5, 0x1ef($s0) +/* 0524B0 800518B0 8FA40078 */ lw $a0, 0x78($sp) +/* 0524B4 800518B4 E7AE0044 */ swc1 $f14, 0x44($sp) +/* 0524B8 800518B8 0C015C12 */ jal func_80057048 +/* 0524BC 800518BC AFA90064 */ sw $t1, 0x64($sp) +/* 0524C0 800518C0 8FA90064 */ lw $t1, 0x64($sp) +/* 0524C4 800518C4 C7AE0044 */ lwc1 $f14, 0x44($sp) +/* 0524C8 800518C8 00000000 */ nop +.L800518CC: +/* 0524CC 800518CC 820E01D3 */ lb $t6, 0x1d3($s0) +/* 0524D0 800518D0 00000000 */ nop +/* 0524D4 800518D4 15C0001D */ bnez $t6, .L8005194C +/* 0524D8 800518D8 24010003 */ li $at, 3 +/* 0524DC 800518DC 1521001B */ bne $t1, $at, .L8005194C +/* 0524E0 800518E0 2404002D */ li $a0, 45 +/* 0524E4 800518E4 AFA90064 */ sw $t1, 0x64($sp) +/* 0524E8 800518E8 0C00322D */ jal func_8000C8B4 +/* 0524EC 800518EC E7AE0044 */ swc1 $f14, 0x44($sp) +/* 0524F0 800518F0 240F0002 */ li $t7, 2 +/* 0524F4 800518F4 A20201D3 */ sb $v0, 0x1d3($s0) +/* 0524F8 800518F8 A20F0203 */ sb $t7, 0x203($s0) +/* 0524FC 800518FC 8FA40078 */ lw $a0, 0x78($sp) +/* 052500 80051900 0C015C12 */ jal func_80057048 +/* 052504 80051904 24050107 */ li $a1, 263 +/* 052508 80051908 8FA40078 */ lw $a0, 0x78($sp) +/* 05250C 8005190C 24050162 */ li $a1, 354 +/* 052510 80051910 24060008 */ li $a2, 8 +/* 052514 80051914 0C015C2E */ jal func_800570B8 +/* 052518 80051918 24070082 */ li $a3, 130 +/* 05251C 8005191C 821801D8 */ lb $t8, 0x1d8($s0) +/* 052520 80051920 8FA90064 */ lw $t1, 0x64($sp) +/* 052524 80051924 C7AE0044 */ lwc1 $f14, 0x44($sp) +/* 052528 80051928 17000008 */ bnez $t8, .L8005194C +/* 05252C 8005192C 24050008 */ li $a1, 8 +/* 052530 80051930 86040000 */ lh $a0, ($s0) +/* 052534 80051934 E7AE0044 */ swc1 $f14, 0x44($sp) +/* 052538 80051938 0C01C8D2 */ jal func_80072348 +/* 05253C 8005193C AFA90064 */ sw $t1, 0x64($sp) +/* 052540 80051940 8FA90064 */ lw $t1, 0x64($sp) +/* 052544 80051944 C7AE0044 */ lwc1 $f14, 0x44($sp) +/* 052548 80051948 00000000 */ nop +.L8005194C: +/* 05254C 8005194C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 052550 80051950 44819000 */ mtc1 $at, $f18 +/* 052554 80051954 C7A40050 */ lwc1 $f4, 0x50($sp) +/* 052558 80051958 00000000 */ nop +/* 05255C 8005195C 4612203C */ c.lt.s $f4, $f18 +/* 052560 80051960 00000000 */ nop +/* 052564 80051964 4500000F */ bc1f .L800519A4 +/* 052568 80051968 3C0A8012 */ lui $t2, %hi(D_8011D528) # $t2, 0x8012 +/* 05256C 8005196C 8D4AD528 */ lw $t2, %lo(D_8011D528)($t2) +/* 052570 80051970 00000000 */ nop +/* 052574 80051974 314B8000 */ andi $t3, $t2, 0x8000 +/* 052578 80051978 1560000A */ bnez $t3, .L800519A4 +/* 05257C 8005197C 00000000 */ nop +/* 052580 80051980 C60C002C */ lwc1 $f12, 0x2c($s0) +/* 052584 80051984 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 052588 80051988 460E6282 */ mul.s $f10, $f12, $f14 +/* 05258C 8005198C 44813000 */ mtc1 $at, $f6 +/* 052590 80051990 00000000 */ nop +/* 052594 80051994 46065202 */ mul.s $f8, $f10, $f6 +/* 052598 80051998 46086101 */ sub.s $f4, $f12, $f8 +/* 05259C 8005199C 10000006 */ b .L800519B8 +/* 0525A0 800519A0 E604002C */ swc1 $f4, 0x2c($s0) +.L800519A4: +/* 0525A4 800519A4 C7AA0050 */ lwc1 $f10, 0x50($sp) +/* 0525A8 800519A8 C612002C */ lwc1 $f18, 0x2c($s0) +/* 0525AC 800519AC 460E5182 */ mul.s $f6, $f10, $f14 +/* 0525B0 800519B0 46069201 */ sub.s $f8, $f18, $f6 +/* 0525B4 800519B4 E608002C */ swc1 $f8, 0x2c($s0) +.L800519B8: +/* 0525B8 800519B8 8FB90060 */ lw $t9, 0x60($sp) +/* 0525BC 800519BC 00000000 */ nop +/* 0525C0 800519C0 13200008 */ beqz $t9, .L800519E4 +/* 0525C4 800519C4 00000000 */ nop +/* 0525C8 800519C8 920201EE */ lbu $v0, 0x1ee($s0) +/* 0525CC 800519CC 00000000 */ nop +/* 0525D0 800519D0 28410010 */ slti $at, $v0, 0x10 +/* 0525D4 800519D4 10200004 */ beqz $at, .L800519E8 +/* 0525D8 800519D8 244C0001 */ addiu $t4, $v0, 1 +/* 0525DC 800519DC 10000002 */ b .L800519E8 +/* 0525E0 800519E0 A20C01EE */ sb $t4, 0x1ee($s0) +.L800519E4: +/* 0525E4 800519E4 A20001EE */ sb $zero, 0x1ee($s0) +.L800519E8: +/* 0525E8 800519E8 0C019884 */ jal func_80066210 +/* 0525EC 800519EC AFA90064 */ sw $t1, 0x64($sp) +/* 0525F0 800519F0 8FA90064 */ lw $t1, 0x64($sp) +/* 0525F4 800519F4 28410002 */ slti $at, $v0, 2 +/* 0525F8 800519F8 1020004B */ beqz $at, .L80051B28 +/* 0525FC 800519FC 0009C080 */ sll $t8, $t1, 2 +/* 052600 80051A00 8FAD0060 */ lw $t5, 0x60($sp) +/* 052604 80051A04 8FAE0058 */ lw $t6, 0x58($sp) +/* 052608 80051A08 11A00009 */ beqz $t5, .L80051A30 +/* 05260C 80051A0C 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 052610 80051A10 C604002C */ lwc1 $f4, 0x2c($s0) +/* 052614 80051A14 44819800 */ mtc1 $at, $f19 +/* 052618 80051A18 44809000 */ mtc1 $zero, $f18 +/* 05261C 80051A1C 460022A1 */ cvt.d.s $f10, $f4 +/* 052620 80051A20 4632503C */ c.lt.d $f10, $f18 +/* 052624 80051A24 00000000 */ nop +/* 052628 80051A28 45010007 */ bc1t .L80051A48 +/* 05262C 80051A2C 00000000 */ nop +.L80051A30: +/* 052630 80051A30 15C00005 */ bnez $t6, .L80051A48 +/* 052634 80051A34 00000000 */ nop +/* 052638 80051A38 820F01FB */ lb $t7, 0x1fb($s0) +/* 05263C 80051A3C 00000000 */ nop +/* 052640 80051A40 11E00019 */ beqz $t7, .L80051AA8 +/* 052644 80051A44 00000000 */ nop +.L80051A48: +/* 052648 80051A48 920201DE */ lbu $v0, 0x1de($s0) +/* 05264C 80051A4C 8FA60078 */ lw $a2, 0x78($sp) +/* 052650 80051A50 284100FF */ slti $at, $v0, 0xff +/* 052654 80051A54 10200008 */ beqz $at, .L80051A78 +/* 052658 80051A58 00025080 */ sll $t2, $v0, 2 +/* 05265C 80051A5C 3C0B800E */ lui $t3, 0x800e +/* 052660 80051A60 016A5821 */ addu $t3, $t3, $t2 +/* 052664 80051A64 8D6BCCF4 */ lw $t3, -0x330c($t3) +/* 052668 80051A68 8CD80074 */ lw $t8, 0x74($a2) +/* 05266C 80051A6C 00000000 */ nop +/* 052670 80051A70 030BC825 */ or $t9, $t8, $t3 +/* 052674 80051A74 ACD90074 */ sw $t9, 0x74($a2) +.L80051A78: +/* 052678 80051A78 920201DF */ lbu $v0, 0x1df($s0) +/* 05267C 80051A7C 8FA60078 */ lw $a2, 0x78($sp) +/* 052680 80051A80 284100FF */ slti $at, $v0, 0xff +/* 052684 80051A84 10200008 */ beqz $at, .L80051AA8 +/* 052688 80051A88 00026880 */ sll $t5, $v0, 2 +/* 05268C 80051A8C 3C0E800E */ lui $t6, 0x800e +/* 052690 80051A90 01CD7021 */ addu $t6, $t6, $t5 +/* 052694 80051A94 8DCECCF4 */ lw $t6, -0x330c($t6) +/* 052698 80051A98 8CCC0074 */ lw $t4, 0x74($a2) +/* 05269C 80051A9C 000E7840 */ sll $t7, $t6, 1 +/* 0526A0 80051AA0 018F5025 */ or $t2, $t4, $t7 +/* 0526A4 80051AA4 ACCA0074 */ sw $t2, 0x74($a2) +.L80051AA8: +/* 0526A8 80051AA8 C606002C */ lwc1 $f6, 0x2c($s0) +/* 0526AC 80051AAC 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 0526B0 80051AB0 44812800 */ mtc1 $at, $f5 +/* 0526B4 80051AB4 44802000 */ mtc1 $zero, $f4 +/* 0526B8 80051AB8 46003221 */ cvt.d.s $f8, $f6 +/* 0526BC 80051ABC 4624403C */ c.lt.d $f8, $f4 +/* 0526C0 80051AC0 8FA60078 */ lw $a2, 0x78($sp) +/* 0526C4 80051AC4 45000018 */ bc1f .L80051B28 +/* 0526C8 80051AC8 0009C080 */ sll $t8, $t1, 2 +/* 0526CC 80051ACC 920201DE */ lbu $v0, 0x1de($s0) +/* 0526D0 80051AD0 3C19800E */ lui $t9, 0x800e +/* 0526D4 80051AD4 284100FF */ slti $at, $v0, 0xff +/* 0526D8 80051AD8 10200007 */ beqz $at, .L80051AF8 +/* 0526DC 80051ADC 00025880 */ sll $t3, $v0, 2 +/* 0526E0 80051AE0 032BC821 */ addu $t9, $t9, $t3 +/* 0526E4 80051AE4 8F39CD40 */ lw $t9, -0x32c0($t9) +/* 0526E8 80051AE8 8CD80074 */ lw $t8, 0x74($a2) +/* 0526EC 80051AEC 00000000 */ nop +/* 0526F0 80051AF0 03196825 */ or $t5, $t8, $t9 +/* 0526F4 80051AF4 ACCD0074 */ sw $t5, 0x74($a2) +.L80051AF8: +/* 0526F8 80051AF8 920201DF */ lbu $v0, 0x1df($s0) +/* 0526FC 80051AFC 3C0F800E */ lui $t7, 0x800e +/* 052700 80051B00 284100FF */ slti $at, $v0, 0xff +/* 052704 80051B04 10200007 */ beqz $at, .L80051B24 +/* 052708 80051B08 00026080 */ sll $t4, $v0, 2 +/* 05270C 80051B0C 01EC7821 */ addu $t7, $t7, $t4 +/* 052710 80051B10 8DEFCD40 */ lw $t7, -0x32c0($t7) +/* 052714 80051B14 8CCE0074 */ lw $t6, 0x74($a2) +/* 052718 80051B18 000F5040 */ sll $t2, $t7, 1 +/* 05271C 80051B1C 01CA5825 */ or $t3, $t6, $t2 +/* 052720 80051B20 ACCB0074 */ sw $t3, 0x74($a2) +.L80051B24: +/* 052724 80051B24 0009C080 */ sll $t8, $t1, 2 +.L80051B28: +/* 052728 80051B28 3C09800E */ lui $t1, 0x800e +/* 05272C 80051B2C 8E020018 */ lw $v0, 0x18($s0) +/* 052730 80051B30 01384821 */ addu $t1, $t1, $t8 +/* 052734 80051B34 8FA60078 */ lw $a2, 0x78($sp) +/* 052738 80051B38 8D29CC80 */ lw $t1, -0x3380($t1) +/* 05273C 80051B3C 14400011 */ bnez $v0, .L80051B84 +/* 052740 80051B40 00000000 */ nop +/* 052744 80051B44 1120000F */ beqz $t1, .L80051B84 +/* 052748 80051B48 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 05274C 80051B4C C60A002C */ lwc1 $f10, 0x2c($s0) +/* 052750 80051B50 44813800 */ mtc1 $at, $f7 +/* 052754 80051B54 44803000 */ mtc1 $zero, $f6 +/* 052758 80051B58 460054A1 */ cvt.d.s $f18, $f10 +/* 05275C 80051B5C 4626903C */ c.lt.d $f18, $f6 +/* 052760 80051B60 3124FFFF */ andi $a0, $t1, 0xffff +/* 052764 80051B64 45000007 */ bc1f .L80051B84 +/* 052768 80051B68 26050018 */ addiu $a1, $s0, 0x18 +/* 05276C 80051B6C 0C000741 */ jal func_80001D04 +/* 052770 80051B70 AFA90064 */ sw $t1, 0x64($sp) +/* 052774 80051B74 8FA90064 */ lw $t1, 0x64($sp) +/* 052778 80051B78 8E020018 */ lw $v0, 0x18($s0) +/* 05277C 80051B7C 8FA60078 */ lw $a2, 0x78($sp) +/* 052780 80051B80 00000000 */ nop +.L80051B84: +/* 052784 80051B84 10400010 */ beqz $v0, .L80051BC8 +/* 052788 80051B88 00000000 */ nop +/* 05278C 80051B8C 11200008 */ beqz $t1, .L80051BB0 +/* 052790 80051B90 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 052794 80051B94 C604002C */ lwc1 $f4, 0x2c($s0) +/* 052798 80051B98 44814800 */ mtc1 $at, $f9 +/* 05279C 80051B9C 44804000 */ mtc1 $zero, $f8 +/* 0527A0 80051BA0 460022A1 */ cvt.d.s $f10, $f4 +/* 0527A4 80051BA4 462A403C */ c.lt.d $f8, $f10 +/* 0527A8 80051BA8 00000000 */ nop +/* 0527AC 80051BAC 45000006 */ bc1f .L80051BC8 +.L80051BB0: +/* 0527B0 80051BB0 00402025 */ move $a0, $v0 +/* 0527B4 80051BB4 0C001223 */ jal func_8000488C +/* 0527B8 80051BB8 AFA90064 */ sw $t1, 0x64($sp) +/* 0527BC 80051BBC 8FA90064 */ lw $t1, 0x64($sp) +/* 0527C0 80051BC0 8FA60078 */ lw $a2, 0x78($sp) +/* 0527C4 80051BC4 00000000 */ nop +.L80051BC8: +/* 0527C8 80051BC8 C60C002C */ lwc1 $f12, 0x2c($s0) +/* 0527CC 80051BCC 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 0527D0 80051BD0 44813800 */ mtc1 $at, $f7 +/* 0527D4 80051BD4 44803000 */ mtc1 $zero, $f6 +/* 0527D8 80051BD8 460064A1 */ cvt.d.s $f18, $f12 +/* 0527DC 80051BDC 4626903C */ c.lt.d $f18, $f6 +/* 0527E0 80051BE0 3C0E8012 */ lui $t6, %hi(D_8011D564) # $t6, 0x8012 +/* 0527E4 80051BE4 45000020 */ bc1f .L80051C68 +/* 0527E8 80051BE8 00000000 */ nop +/* 0527EC 80051BEC 8FB90068 */ lw $t9, 0x68($sp) +/* 0527F0 80051BF0 00000000 */ nop +/* 0527F4 80051BF4 2B210004 */ slti $at, $t9, 4 +/* 0527F8 80051BF8 1420001B */ bnez $at, .L80051C68 +/* 0527FC 80051BFC 00000000 */ nop +/* 052800 80051C00 820D01E7 */ lb $t5, 0x1e7($s0) +/* 052804 80051C04 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 052808 80051C08 31AC0001 */ andi $t4, $t5, 1 +/* 05280C 80051C0C 448C2000 */ mtc1 $t4, $f4 +/* 052810 80051C10 44819800 */ mtc1 $at, $f19 +/* 052814 80051C14 46802220 */ cvt.s.w $f8, $f4 +/* 052818 80051C18 44809000 */ mtc1 $zero, $f18 +/* 05281C 80051C1C C6040078 */ lwc1 $f4, 0x78($s0) +/* 052820 80051C20 460042A1 */ cvt.d.s $f10, $f8 +/* 052824 80051C24 46325182 */ mul.d $f6, $f10, $f18 +/* 052828 80051C28 C60800A0 */ lwc1 $f8, 0xa0($s0) +/* 05282C 80051C2C C60C002C */ lwc1 $f12, 0x2c($s0) +/* 052830 80051C30 46203020 */ cvt.s.d $f0, $f6 +/* 052834 80051C34 C606007C */ lwc1 $f6, 0x7c($s0) +/* 052838 80051C38 46004282 */ mul.s $f10, $f8, $f0 +/* 05283C 80051C3C C60800A4 */ lwc1 $f8, 0xa4($s0) +/* 052840 80051C40 460A2481 */ sub.s $f18, $f4, $f10 +/* 052844 80051C44 46004102 */ mul.s $f4, $f8, $f0 +/* 052848 80051C48 C608009C */ lwc1 $f8, 0x9c($s0) +/* 05284C 80051C4C E6120078 */ swc1 $f18, 0x78($s0) +/* 052850 80051C50 C6120080 */ lwc1 $f18, 0x80($s0) +/* 052854 80051C54 46043281 */ sub.s $f10, $f6, $f4 +/* 052858 80051C58 46004182 */ mul.s $f6, $f8, $f0 +/* 05285C 80051C5C E60A007C */ swc1 $f10, 0x7c($s0) +/* 052860 80051C60 46069101 */ sub.s $f4, $f18, $f6 +/* 052864 80051C64 E6040080 */ swc1 $f4, 0x80($s0) +.L80051C68: +/* 052868 80051C68 44805000 */ mtc1 $zero, $f10 +/* 05286C 80051C6C 3C014140 */ li $at, 0x41400000 # 12.000000 +/* 052870 80051C70 460A603C */ c.lt.s $f12, $f10 +/* 052874 80051C74 44810000 */ mtc1 $at, $f0 +/* 052878 80051C78 45000002 */ bc1f .L80051C84 +/* 05287C 80051C7C 46006386 */ mov.s $f14, $f12 +/* 052880 80051C80 46007387 */ neg.s $f14, $f14 +.L80051C84: +/* 052884 80051C84 460E003C */ c.lt.s $f0, $f14 +/* 052888 80051C88 00000000 */ nop +/* 05288C 80051C8C 45000002 */ bc1f .L80051C98 +/* 052890 80051C90 00000000 */ nop +/* 052894 80051C94 46000386 */ mov.s $f14, $f0 +.L80051C98: +/* 052898 80051C98 444FF800 */ cfc1 $t7, $31 +/* 05289C 80051C9C 8DCED564 */ lw $t6, %lo(D_8011D564)($t6) +/* 0528A0 80051CA0 35E10003 */ ori $at, $t7, 3 +/* 0528A4 80051CA4 38210002 */ xori $at, $at, 2 +/* 0528A8 80051CA8 44C1F800 */ ctc1 $at, $31 +/* 0528AC 80051CAC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 0528B0 80051CB0 46007224 */ cvt.w.s $f8, $f14 +/* 0528B4 80051CB4 44812800 */ mtc1 $at, $f5 +/* 0528B8 80051CB8 44024000 */ mfc1 $v0, $f8 +/* 0528BC 80051CBC 44CFF800 */ ctc1 $t7, $31 +/* 0528C0 80051CC0 44829000 */ mtc1 $v0, $f18 +/* 0528C4 80051CC4 00025080 */ sll $t2, $v0, 2 +/* 0528C8 80051CC8 468091A0 */ cvt.s.w $f6, $f18 +/* 0528CC 80051CCC 44802000 */ mtc1 $zero, $f4 +/* 0528D0 80051CD0 01CA1821 */ addu $v1, $t6, $t2 +/* 0528D4 80051CD4 46067001 */ sub.s $f0, $f14, $f6 +/* 0528D8 80051CD8 C4720000 */ lwc1 $f18, ($v1) +/* 0528DC 80051CDC 460002A1 */ cvt.d.s $f10, $f0 +/* 0528E0 80051CE0 462A2201 */ sub.d $f8, $f4, $f10 +/* 0528E4 80051CE4 C46A0004 */ lwc1 $f10, 4($v1) +/* 0528E8 80051CE8 460091A1 */ cvt.d.s $f6, $f18 +/* 0528EC 80051CEC 46283102 */ mul.d $f4, $f6, $f8 +/* 0528F0 80051CF0 3C01800E */ lui $at, %hi(D_800E667C) # $at, 0x800e +/* 0528F4 80051CF4 820B01D3 */ lb $t3, 0x1d3($s0) +/* 0528F8 80051CF8 46005482 */ mul.s $f18, $f10, $f0 +/* 0528FC 80051CFC C4336678 */ lwc1 $f19, %lo(D_800E6678)($at) +/* 052900 80051D00 460091A1 */ cvt.d.s $f6, $f18 +/* 052904 80051D04 46262200 */ add.d $f8, $f4, $f6 +/* 052908 80051D08 C432667C */ lwc1 $f18, %lo(D_800E667C)($at) +/* 05290C 80051D0C 462043A0 */ cvt.s.d $f14, $f8 +/* 052910 80051D10 C7A60034 */ lwc1 $f6, 0x34($sp) +/* 052914 80051D14 460072A1 */ cvt.d.s $f10, $f14 +/* 052918 80051D18 46325102 */ mul.d $f4, $f10, $f18 +/* 05291C 80051D1C 462023A0 */ cvt.s.d $f14, $f4 +/* 052920 80051D20 44802000 */ mtc1 $zero, $f4 +/* 052924 80051D24 46067382 */ mul.s $f14, $f14, $f6 +/* 052928 80051D28 19600016 */ blez $t3, .L80051D84 +/* 05292C 80051D2C 3C188012 */ lui $t8, %hi(D_8011D540) # $t8, 0x8012 +/* 052930 80051D30 8F18D540 */ lw $t8, %lo(D_8011D540)($t8) +/* 052934 80051D34 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 052938 80051D38 17000010 */ bnez $t8, .L80051D7C +/* 05293C 80051D3C 00000000 */ nop +/* 052940 80051D40 44805800 */ mtc1 $zero, $f11 +/* 052944 80051D44 44805000 */ mtc1 $zero, $f10 +/* 052948 80051D48 460074A1 */ cvt.d.s $f18, $f14 +/* 05294C 80051D4C 44814000 */ mtc1 $at, $f8 +/* 052950 80051D50 46325032 */ c.eq.d $f10, $f18 +/* 052954 80051D54 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 052958 80051D58 45010003 */ bc1t .L80051D68 +/* 05295C 80051D5C E60800B4 */ swc1 $f8, 0xb4($s0) +/* 052960 80051D60 44817000 */ mtc1 $at, $f14 +/* 052964 80051D64 00000000 */ nop +.L80051D68: +/* 052968 80051D68 821901D3 */ lb $t9, 0x1d3($s0) +/* 05296C 80051D6C 8FAD0080 */ lw $t5, 0x80($sp) +/* 052970 80051D70 C60C002C */ lwc1 $f12, 0x2c($s0) +/* 052974 80051D74 032D6023 */ subu $t4, $t9, $t5 +/* 052978 80051D78 A20C01D3 */ sb $t4, 0x1d3($s0) +.L80051D7C: +/* 05297C 80051D7C 10000004 */ b .L80051D90 +/* 052980 80051D80 460060A1 */ cvt.d.s $f2, $f12 +.L80051D84: +/* 052984 80051D84 C60C002C */ lwc1 $f12, 0x2c($s0) +/* 052988 80051D88 A20001D3 */ sb $zero, 0x1d3($s0) +/* 05298C 80051D8C 460060A1 */ cvt.d.s $f2, $f12 +.L80051D90: +/* 052990 80051D90 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 052994 80051D94 44812800 */ mtc1 $at, $f5 +/* 052998 80051D98 00000000 */ nop +/* 05299C 80051D9C 4622203C */ c.lt.d $f4, $f2 +/* 0529A0 80051DA0 00000000 */ nop +/* 0529A4 80051DA4 45000039 */ bc1f .L80051E8C +/* 0529A8 80051DA8 3C014008 */ li $at, 0x40080000 # 2.125000 +/* 0529AC 80051DAC 44818800 */ mtc1 $at, $f17 +/* 0529B0 80051DB0 44808000 */ mtc1 $zero, $f16 +/* 0529B4 80051DB4 00000000 */ nop +/* 0529B8 80051DB8 4630103C */ c.lt.d $f2, $f16 +/* 0529BC 80051DBC 00000000 */ nop +/* 0529C0 80051DC0 45000032 */ bc1f .L80051E8C +/* 0529C4 80051DC4 00000000 */ nop +/* 0529C8 80051DC8 860F0000 */ lh $t7, ($s0) +/* 0529CC 80051DCC 2401FFFF */ li $at, -1 +/* 0529D0 80051DD0 15E10004 */ bne $t7, $at, .L80051DE4 +/* 0529D4 80051DD4 3C0A8012 */ lui $t2, %hi(D_8011D538) # $t2, 0x8012 +/* 0529D8 80051DD8 820E0214 */ lb $t6, 0x214($s0) +/* 0529DC 80051DDC 00000000 */ nop +/* 0529E0 80051DE0 11C0002A */ beqz $t6, .L80051E8C +.L80051DE4: +/* 0529E4 80051DE4 3C01800E */ lui $at, %hi(D_800E6684) # $at, 0x800e +/* 0529E8 80051DE8 C4296680 */ lwc1 $f9, %lo(D_800E6680)($at) +/* 0529EC 80051DEC C4286684 */ lwc1 $f8, %lo(D_800E6684)($at) +/* 0529F0 80051DF0 46228181 */ sub.d $f6, $f16, $f2 +/* 0529F4 80051DF4 24010004 */ li $at, 4 +/* 0529F8 80051DF8 46283282 */ mul.d $f10, $f6, $f8 +/* 0529FC 80051DFC 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 +/* 052A00 80051E00 15210007 */ bne $t1, $at, .L80051E20 +/* 052A04 80051E04 46205020 */ cvt.s.d $f0, $f10 +/* 052A08 80051E08 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 052A0C 80051E0C 44812800 */ mtc1 $at, $f5 +/* 052A10 80051E10 44802000 */ mtc1 $zero, $f4 +/* 052A14 80051E14 460004A1 */ cvt.d.s $f18, $f0 +/* 052A18 80051E18 46249182 */ mul.d $f6, $f18, $f4 +/* 052A1C 80051E1C 46203020 */ cvt.s.d $f0, $f6 +.L80051E20: +/* 052A20 80051E20 8D4AD538 */ lw $t2, %lo(D_8011D538)($t2) +/* 052A24 80051E24 00000000 */ nop +/* 052A28 80051E28 2941FFE7 */ slti $at, $t2, -0x19 +/* 052A2C 80051E2C 10200017 */ beqz $at, .L80051E8C +/* 052A30 80051E30 00000000 */ nop +/* 052A34 80051E34 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) +/* 052A38 80051E38 00000000 */ nop +/* 052A3C 80051E3C 304B8000 */ andi $t3, $v0, 0x8000 +/* 052A40 80051E40 15600012 */ bnez $t3, .L80051E8C +/* 052A44 80051E44 30584000 */ andi $t8, $v0, 0x4000 +/* 052A48 80051E48 13000010 */ beqz $t8, .L80051E8C +/* 052A4C 80051E4C 00000000 */ nop +/* 052A50 80051E50 821901D7 */ lb $t9, 0x1d7($s0) +/* 052A54 80051E54 00000000 */ nop +/* 052A58 80051E58 2B210005 */ slti $at, $t9, 5 +/* 052A5C 80051E5C 14200006 */ bnez $at, .L80051E78 +/* 052A60 80051E60 3C01800E */ lui $at, %hi(D_800E668C) # $at, 0x800e +/* 052A64 80051E64 C42B6688 */ lwc1 $f11, %lo(D_800E6688)($at) +/* 052A68 80051E68 C42A668C */ lwc1 $f10, %lo(D_800E668C)($at) +/* 052A6C 80051E6C 46000221 */ cvt.d.s $f8, $f0 +/* 052A70 80051E70 462A4482 */ mul.d $f18, $f8, $f10 +/* 052A74 80051E74 46209020 */ cvt.s.d $f0, $f18 +.L80051E78: +/* 052A78 80051E78 46006100 */ add.s $f4, $f12, $f0 +/* 052A7C 80051E7C 44803000 */ mtc1 $zero, $f6 +/* 052A80 80051E80 E604002C */ swc1 $f4, 0x2c($s0) +/* 052A84 80051E84 C60C002C */ lwc1 $f12, 0x2c($s0) +/* 052A88 80051E88 E60600B8 */ swc1 $f6, 0xb8($s0) +.L80051E8C: +/* 052A8C 80051E8C C60800B8 */ lwc1 $f8, 0xb8($s0) +/* 052A90 80051E90 3C01800E */ lui $at, %hi(D_800E6694) # $at, 0x800e +/* 052A94 80051E94 460E4282 */ mul.s $f10, $f8, $f14 +/* 052A98 80051E98 C4256690 */ lwc1 $f5, %lo(D_800E6690)($at) +/* 052A9C 80051E9C C4246694 */ lwc1 $f4, %lo(D_800E6694)($at) +/* 052AA0 80051EA0 C60800B4 */ lwc1 $f8, 0xb4($s0) +/* 052AA4 80051EA4 460054A1 */ cvt.d.s $f18, $f10 +/* 052AA8 80051EA8 46249182 */ mul.d $f6, $f18, $f4 +/* 052AAC 80051EAC 3C01800E */ lui $at, %hi(D_800E6698) # $at, 0x800e +/* 052AB0 80051EB0 46087282 */ mul.s $f10, $f14, $f8 +/* 052AB4 80051EB4 46203020 */ cvt.s.d $f0, $f6 +/* 052AB8 80051EB8 460A6481 */ sub.s $f18, $f12, $f10 +/* 052ABC 80051EBC 44805000 */ mtc1 $zero, $f10 +/* 052AC0 80051EC0 E612002C */ swc1 $f18, 0x2c($s0) +/* 052AC4 80051EC4 C60C002C */ lwc1 $f12, 0x2c($s0) +/* 052AC8 80051EC8 C424669C */ lwc1 $f4, %lo(D_800E669C)($at) +/* 052ACC 80051ECC C4256698 */ lwc1 $f5, %lo(D_800E6698)($at) +/* 052AD0 80051ED0 460060A1 */ cvt.d.s $f2, $f12 +/* 052AD4 80051ED4 4622203C */ c.lt.d $f4, $f2 +/* 052AD8 80051ED8 00000000 */ nop +/* 052ADC 80051EDC 4500000D */ bc1f .L80051F14 +/* 052AE0 80051EE0 3C01800E */ lui $at, %hi(D_800E66A4) # $at, 0x800e +/* 052AE4 80051EE4 C42766A0 */ lwc1 $f7, %lo(D_800E66A0)($at) +/* 052AE8 80051EE8 C42666A4 */ lwc1 $f6, %lo(D_800E66A4)($at) +/* 052AEC 80051EEC 00000000 */ nop +/* 052AF0 80051EF0 4626103C */ c.lt.d $f2, $f6 +/* 052AF4 80051EF4 00000000 */ nop +/* 052AF8 80051EF8 45000006 */ bc1f .L80051F14 +/* 052AFC 80051EFC 00000000 */ nop +/* 052B00 80051F00 44804000 */ mtc1 $zero, $f8 +/* 052B04 80051F04 00000000 */ nop +/* 052B08 80051F08 E608002C */ swc1 $f8, 0x2c($s0) +/* 052B0C 80051F0C C60C002C */ lwc1 $f12, 0x2c($s0) +/* 052B10 80051F10 00000000 */ nop +.L80051F14: +/* 052B14 80051F14 460A603C */ c.lt.s $f12, $f10 +/* 052B18 80051F18 3C018012 */ lui $at, %hi(D_8011D56C) # $at, 0x8012 +/* 052B1C 80051F1C 4500000D */ bc1f .L80051F54 +/* 052B20 80051F20 00000000 */ nop +/* 052B24 80051F24 46006480 */ add.s $f18, $f12, $f0 +/* 052B28 80051F28 44802000 */ mtc1 $zero, $f4 +/* 052B2C 80051F2C E612002C */ swc1 $f18, 0x2c($s0) +/* 052B30 80051F30 C606002C */ lwc1 $f6, 0x2c($s0) +/* 052B34 80051F34 00000000 */ nop +/* 052B38 80051F38 4606203C */ c.lt.s $f4, $f6 +/* 052B3C 80051F3C 00000000 */ nop +/* 052B40 80051F40 45000010 */ bc1f .L80051F84 +/* 052B44 80051F44 00000000 */ nop +/* 052B48 80051F48 44804000 */ mtc1 $zero, $f8 +/* 052B4C 80051F4C 1000000D */ b .L80051F84 +/* 052B50 80051F50 E608002C */ swc1 $f8, 0x2c($s0) +.L80051F54: +/* 052B54 80051F54 46006281 */ sub.s $f10, $f12, $f0 +/* 052B58 80051F58 44802000 */ mtc1 $zero, $f4 +/* 052B5C 80051F5C E60A002C */ swc1 $f10, 0x2c($s0) +/* 052B60 80051F60 C612002C */ lwc1 $f18, 0x2c($s0) +/* 052B64 80051F64 00000000 */ nop +/* 052B68 80051F68 4604903C */ c.lt.s $f18, $f4 +/* 052B6C 80051F6C 00000000 */ nop +/* 052B70 80051F70 45000004 */ bc1f .L80051F84 +/* 052B74 80051F74 00000000 */ nop +/* 052B78 80051F78 44803000 */ mtc1 $zero, $f6 +/* 052B7C 80051F7C 00000000 */ nop +/* 052B80 80051F80 E606002C */ swc1 $f6, 0x2c($s0) +.L80051F84: +/* 052B84 80051F84 C42ED56C */ lwc1 $f14, %lo(D_8011D56C)($at) +/* 052B88 80051F88 C7AA0084 */ lwc1 $f10, 0x84($sp) +/* 052B8C 80051F8C C4C80020 */ lwc1 $f8, 0x20($a2) +/* 052B90 80051F90 460A7482 */ mul.s $f18, $f14, $f10 +/* 052B94 80051F94 3C0D8012 */ lui $t5, %hi(D_8011D586) # $t5, 0x8012 +/* 052B98 80051F98 3C01800E */ lui $at, %hi(D_800E66AC) # $at, 0x800e +/* 052B9C 80051F9C 46124101 */ sub.s $f4, $f8, $f18 +/* 052BA0 80051FA0 E4C40020 */ swc1 $f4, 0x20($a2) +/* 052BA4 80051FA4 85ADD586 */ lh $t5, %lo(D_8011D586)($t5) +/* 052BA8 80051FA8 00000000 */ nop +/* 052BAC 80051FAC 11A00003 */ beqz $t5, .L80051FBC +/* 052BB0 80051FB0 00000000 */ nop +/* 052BB4 80051FB4 44807000 */ mtc1 $zero, $f14 +/* 052BB8 80051FB8 00000000 */ nop +.L80051FBC: +/* 052BBC 80051FBC C60600B8 */ lwc1 $f6, 0xb8($s0) +/* 052BC0 80051FC0 C42966A8 */ lwc1 $f9, %lo(D_800E66A8)($at) +/* 052BC4 80051FC4 C42866AC */ lwc1 $f8, %lo(D_800E66AC)($at) +/* 052BC8 80051FC8 460032A1 */ cvt.d.s $f10, $f6 +/* 052BCC 80051FCC 4628503C */ c.lt.d $f10, $f8 +/* 052BD0 80051FD0 00000000 */ nop +/* 052BD4 80051FD4 4500003F */ bc1f .L800520D4 +/* 052BD8 80051FD8 00000000 */ nop +/* 052BDC 80051FDC 820C01D7 */ lb $t4, 0x1d7($s0) +/* 052BE0 80051FE0 3C0F8012 */ lui $t7, %hi(D_8011D540) # $t7, 0x8012 +/* 052BE4 80051FE4 29810005 */ slti $at, $t4, 5 +/* 052BE8 80051FE8 1020003A */ beqz $at, .L800520D4 +/* 052BEC 80051FEC 00000000 */ nop +/* 052BF0 80051FF0 8DEFD540 */ lw $t7, %lo(D_8011D540)($t7) +/* 052BF4 80051FF4 00000000 */ nop +/* 052BF8 80051FF8 15E00036 */ bnez $t7, .L800520D4 +/* 052BFC 80051FFC 00000000 */ nop +/* 052C00 80052000 C60C009C */ lwc1 $f12, 0x9c($s0) +/* 052C04 80052004 44802800 */ mtc1 $zero, $f5 +/* 052C08 80052008 44802000 */ mtc1 $zero, $f4 +/* 052C0C 8005200C 460064A1 */ cvt.d.s $f18, $f12 +/* 052C10 80052010 4624903C */ c.lt.d $f18, $f4 +/* 052C14 80052014 3C01800E */ lui $at, %hi(D_800E66B4) # $at, 0x800e +/* 052C18 80052018 45000020 */ bc1f .L8005209C +/* 052C1C 8005201C 46006086 */ mov.s $f2, $f12 +/* 052C20 80052020 C42B66B0 */ lwc1 $f11, %lo(D_800E66B0)($at) +/* 052C24 80052024 C42A66B4 */ lwc1 $f10, %lo(D_800E66B4)($at) +/* 052C28 80052028 46001087 */ neg.s $f2, $f2 +/* 052C2C 8005202C 460011A1 */ cvt.d.s $f6, $f2 +/* 052C30 80052030 462A3201 */ sub.d $f8, $f6, $f10 +/* 052C34 80052034 44809800 */ mtc1 $zero, $f19 +/* 052C38 80052038 462040A0 */ cvt.s.d $f2, $f8 +/* 052C3C 8005203C 44809000 */ mtc1 $zero, $f18 +/* 052C40 80052040 46001021 */ cvt.d.s $f0, $f2 +/* 052C44 80052044 4632003C */ c.lt.d $f0, $f18 +/* 052C48 80052048 3C01800E */ lui $at, %hi(D_800E66BC) # $at, 0x800e +/* 052C4C 8005204C 45000004 */ bc1f .L80052060 +/* 052C50 80052050 00000000 */ nop +/* 052C54 80052054 44801000 */ mtc1 $zero, $f2 +/* 052C58 80052058 00000000 */ nop +/* 052C5C 8005205C 46001021 */ cvt.d.s $f0, $f2 +.L80052060: +/* 052C60 80052060 C42566B8 */ lwc1 $f5, %lo(D_800E66B8)($at) +/* 052C64 80052064 C42466BC */ lwc1 $f4, %lo(D_800E66BC)($at) +/* 052C68 80052068 3C01800E */ lui $at, %hi(D_800E66C0) # $at, 0x800e +/* 052C6C 8005206C 4620203C */ c.lt.d $f4, $f0 +/* 052C70 80052070 00000000 */ nop +/* 052C74 80052074 45000003 */ bc1f .L80052084 +/* 052C78 80052078 00000000 */ nop +/* 052C7C 8005207C C42266C0 */ lwc1 $f2, %lo(D_800E66C0)($at) +/* 052C80 80052080 00000000 */ nop +.L80052084: +/* 052C84 80052084 3C01420C */ li $at, 0x420C0000 # 35.000000 +/* 052C88 80052088 44813000 */ mtc1 $at, $f6 +/* 052C8C 8005208C 00000000 */ nop +/* 052C90 80052090 46061082 */ mul.s $f2, $f2, $f6 +/* 052C94 80052094 10000004 */ b .L800520A8 +/* 052C98 80052098 3C014080 */ lui $at, 0x4080 +.L8005209C: +/* 052C9C 8005209C 44801000 */ mtc1 $zero, $f2 +/* 052CA0 800520A0 00000000 */ nop +/* 052CA4 800520A4 3C014080 */ li $at, 0x40800000 # 4.000000 +.L800520A8: +/* 052CA8 800520A8 44815000 */ mtc1 $at, $f10 +/* 052CAC 800520AC C7A60084 */ lwc1 $f6, 0x84($sp) +/* 052CB0 800520B0 46025201 */ sub.s $f8, $f10, $f2 +/* 052CB4 800520B4 00000000 */ nop +/* 052CB8 800520B8 46086483 */ div.s $f18, $f12, $f8 +/* 052CBC 800520BC C608002C */ lwc1 $f8, 0x2c($s0) +/* 052CC0 800520C0 46127102 */ mul.s $f4, $f14, $f18 +/* 052CC4 800520C4 00000000 */ nop +/* 052CC8 800520C8 46062282 */ mul.s $f10, $f4, $f6 +/* 052CCC 800520CC 460A4480 */ add.s $f18, $f8, $f10 +/* 052CD0 800520D0 E612002C */ swc1 $f18, 0x2c($s0) +.L800520D4: +/* 052CD4 800520D4 3C01800E */ lui $at, %hi(D_800E66CC) # $at, 0x800e +/* 052CD8 800520D8 C606002C */ lwc1 $f6, 0x2c($s0) +/* 052CDC 800520DC C42B66C8 */ lwc1 $f11, %lo(D_800E66C8)($at) +/* 052CE0 800520E0 C42A66CC */ lwc1 $f10, %lo(D_800E66CC)($at) +/* 052CE4 800520E4 46003221 */ cvt.d.s $f8, $f6 +/* 052CE8 800520E8 462A4482 */ mul.d $f18, $f8, $f10 +/* 052CEC 800520EC C6040008 */ lwc1 $f4, 8($s0) +/* 052CF0 800520F0 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 052CF4 800520F4 46002021 */ cvt.d.s $f0, $f4 +/* 052CF8 800520F8 44813800 */ mtc1 $at, $f7 +/* 052CFC 800520FC 46320100 */ add.d $f4, $f0, $f18 +/* 052D00 80052100 44803000 */ mtc1 $zero, $f6 +/* 052D04 80052104 820E01E1 */ lb $t6, 0x1e1($s0) +/* 052D08 80052108 46262202 */ mul.d $f8, $f4, $f6 +/* 052D0C 8005210C 3C0A8012 */ lui $t2, %hi(D_8011D554) # $t2, 0x8012 +/* 052D10 80052110 A20E01E8 */ sb $t6, 0x1e8($s0) +/* 052D14 80052114 820B01E0 */ lb $t3, 0x1e0($s0) +/* 052D18 80052118 46280281 */ sub.d $f10, $f0, $f8 +/* 052D1C 8005211C 462054A0 */ cvt.s.d $f18, $f10 +/* 052D20 80052120 E6120008 */ swc1 $f18, 8($s0) +/* 052D24 80052124 8D4AD554 */ lw $t2, %lo(D_8011D554)($t2) +/* 052D28 80052128 11600013 */ beqz $t3, .L80052178 +/* 052D2C 8005212C AE0A0110 */ sw $t2, 0x110($s0) +/* 052D30 80052130 3C188012 */ lui $t8, %hi(D_8011D55C) # $t8, 0x8012 +/* 052D34 80052134 8F18D55C */ lw $t8, %lo(D_8011D55C)($t8) +/* 052D38 80052138 2401FFFF */ li $at, -1 +/* 052D3C 8005213C 1301000F */ beq $t8, $at, .L8005217C +/* 052D40 80052140 8FBF0024 */ lw $ra, 0x24($sp) +/* 052D44 80052144 920201DC */ lbu $v0, 0x1dc($s0) +/* 052D48 80052148 240100FF */ li $at, 255 +/* 052D4C 8005214C 1041000A */ beq $v0, $at, .L80052178 +/* 052D50 80052150 0002C840 */ sll $t9, $v0, 1 +/* 052D54 80052154 3C0D800E */ lui $t5, 0x800e +/* 052D58 80052158 01B96821 */ addu $t5, $t5, $t9 +/* 052D5C 8005215C 95ADCCCC */ lhu $t5, -0x3334($t5) +/* 052D60 80052160 3C018012 */ lui $at, %hi(D_8011D550) # $at, 0x8012 +/* 052D64 80052164 A42DD550 */ sh $t5, %lo(D_8011D550)($at) +/* 052D68 80052168 820C01E0 */ lb $t4, 0x1e0($s0) +/* 052D6C 8005216C 3C018012 */ lui $at, %hi(D_8011D552) # $at, 0x8012 +/* 052D70 80052170 A42CD552 */ sh $t4, %lo(D_8011D552)($at) +/* 052D74 80052174 A20001E0 */ sb $zero, 0x1e0($s0) +.L80052178: +/* 052D78 80052178 8FBF0024 */ lw $ra, 0x24($sp) +.L8005217C: +/* 052D7C 8005217C 8FB00020 */ lw $s0, 0x20($sp) +/* 052D80 80052180 03E00008 */ jr $ra +/* 052D84 80052184 27BD0078 */ addiu $sp, $sp, 0x78 + diff --git a/asm/non_matchings/unknown_043920/func_80052188.s b/asm/non_matchings/unknown_043920/func_80052188.s new file mode 100644 index 00000000..bd4c41d4 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80052188.s @@ -0,0 +1,16 @@ +glabel func_80052188 +/* 052D88 80052188 3C038012 */ lui $v1, %hi(D_8011D582) # $v1, 0x8012 +/* 052D8C 8005218C 2463D582 */ addiu $v1, %lo(D_8011D582) # addiu $v1, $v1, -0x2a7e +/* 052D90 80052190 806E0000 */ lb $t6, ($v1) +/* 052D94 80052194 24010002 */ li $at, 2 +/* 052D98 80052198 15C10004 */ bne $t6, $at, .L800521AC +/* 052D9C 8005219C 240F0001 */ li $t7, 1 +/* 052DA0 800521A0 A06F0000 */ sb $t7, ($v1) +/* 052DA4 800521A4 03E00008 */ jr $ra +/* 052DA8 800521A8 24020001 */ li $v0, 1 + +.L800521AC: +/* 052DAC 800521AC 00001025 */ move $v0, $zero +/* 052DB0 800521B0 03E00008 */ jr $ra +/* 052DB4 800521B4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_800521B8.s b/asm/non_matchings/unknown_043920/func_800521B8.s new file mode 100644 index 00000000..b89c3efb --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_800521B8.s @@ -0,0 +1,5 @@ +glabel func_800521B8 +/* 052DB8 800521B8 3C018012 */ lui $at, 0x8012 +/* 052DBC 800521BC 03E00008 */ jr $ra +/* 052DC0 800521C0 A024D582 */ sb $a0, -0x2a7e($at) + diff --git a/asm/non_matchings/unknown_043920/func_800521C4.s b/asm/non_matchings/unknown_043920/func_800521C4.s new file mode 100644 index 00000000..68784f80 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_800521C4.s @@ -0,0 +1,107 @@ +glabel func_800521C4 +/* 052DC4 800521C4 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 052DC8 800521C8 AFBF001C */ sw $ra, 0x1c($sp) +/* 052DCC 800521CC AFB00018 */ sw $s0, 0x18($sp) +/* 052DD0 800521D0 00A08025 */ move $s0, $a1 +/* 052DD4 800521D4 AFA40030 */ sw $a0, 0x30($sp) +/* 052DD8 800521D8 AFA60038 */ sw $a2, 0x38($sp) +/* 052DDC 800521DC 0C008D5A */ jal func_80023568 +/* 052DE0 800521E0 A3A0002B */ sb $zero, 0x2b($sp) +/* 052DE4 800521E4 83A3002B */ lb $v1, 0x2b($sp) +/* 052DE8 800521E8 1040000C */ beqz $v0, .L8005221C +/* 052DEC 800521EC 00000000 */ nop +/* 052DF0 800521F0 0C006EB2 */ jal func_8001BAC8 +/* 052DF4 800521F4 24040001 */ li $a0, 1 +/* 052DF8 800521F8 8FA40030 */ lw $a0, 0x30($sp) +/* 052DFC 800521FC 3C07481C */ lui $a3, (0x481C4000 >> 16) # lui $a3, 0x481c +/* 052E00 80052200 34E74000 */ ori $a3, (0x481C4000 & 0xFFFF) # ori $a3, $a3, 0x4000 +/* 052E04 80052204 02002825 */ move $a1, $s0 +/* 052E08 80052208 0C0148E2 */ jal func_80052388 +/* 052E0C 8005220C 00403025 */ move $a2, $v0 +/* 052E10 80052210 00021E00 */ sll $v1, $v0, 0x18 +/* 052E14 80052214 00037603 */ sra $t6, $v1, 0x18 +/* 052E18 80052218 01C01825 */ move $v1, $t6 +.L8005221C: +/* 052E1C 8005221C 14600013 */ bnez $v1, .L8005226C +/* 052E20 80052220 02002025 */ move $a0, $s0 +/* 052E24 80052224 24050001 */ li $a1, 1 +/* 052E28 80052228 27A60024 */ addiu $a2, $sp, 0x24 +/* 052E2C 8005222C 0C006DEA */ jal func_8001B7A8 +/* 052E30 80052230 A3A3002B */ sb $v1, 0x2b($sp) +/* 052E34 80052234 83A3002B */ lb $v1, 0x2b($sp) +/* 052E38 80052238 1040000C */ beqz $v0, .L8005226C +/* 052E3C 8005223C 00403025 */ move $a2, $v0 +/* 052E40 80052240 3C0F8012 */ lui $t7, %hi(D_8011D540) # $t7, 0x8012 +/* 052E44 80052244 8DEFD540 */ lw $t7, %lo(D_8011D540)($t7) +/* 052E48 80052248 8FA40030 */ lw $a0, 0x30($sp) +/* 052E4C 8005224C 15E00007 */ bnez $t7, .L8005226C +/* 052E50 80052250 02002825 */ move $a1, $s0 +/* 052E54 80052254 3C07481C */ lui $a3, (0x481C4000 >> 16) # lui $a3, 0x481c +/* 052E58 80052258 0C0148E2 */ jal func_80052388 +/* 052E5C 8005225C 34E74000 */ ori $a3, (0x481C4000 & 0xFFFF) # ori $a3, $a3, 0x4000 +/* 052E60 80052260 00021E00 */ sll $v1, $v0, 0x18 +/* 052E64 80052264 0003C603 */ sra $t8, $v1, 0x18 +/* 052E68 80052268 03001825 */ move $v1, $t8 +.L8005226C: +/* 052E6C 8005226C 14600013 */ bnez $v1, .L800522BC +/* 052E70 80052270 02002025 */ move $a0, $s0 +/* 052E74 80052274 2405FFFF */ li $a1, -1 +/* 052E78 80052278 27A60024 */ addiu $a2, $sp, 0x24 +/* 052E7C 8005227C 0C006DEA */ jal func_8001B7A8 +/* 052E80 80052280 A3A3002B */ sb $v1, 0x2b($sp) +/* 052E84 80052284 83A3002B */ lb $v1, 0x2b($sp) +/* 052E88 80052288 1040000C */ beqz $v0, .L800522BC +/* 052E8C 8005228C 00403025 */ move $a2, $v0 +/* 052E90 80052290 3C198012 */ lui $t9, %hi(D_8011D540) # $t9, 0x8012 +/* 052E94 80052294 8F39D540 */ lw $t9, %lo(D_8011D540)($t9) +/* 052E98 80052298 8FA40030 */ lw $a0, 0x30($sp) +/* 052E9C 8005229C 17200007 */ bnez $t9, .L800522BC +/* 052EA0 800522A0 02002825 */ move $a1, $s0 +/* 052EA4 800522A4 3C0746EA */ lui $a3, (0x46EA6000 >> 16) # lui $a3, 0x46ea +/* 052EA8 800522A8 0C0148E2 */ jal func_80052388 +/* 052EAC 800522AC 34E76000 */ ori $a3, (0x46EA6000 & 0xFFFF) # ori $a3, $a3, 0x6000 +/* 052EB0 800522B0 00021E00 */ sll $v1, $v0, 0x18 +/* 052EB4 800522B4 00034603 */ sra $t0, $v1, 0x18 +/* 052EB8 800522B8 01001825 */ move $v1, $t0 +.L800522BC: +/* 052EBC 800522BC 14600020 */ bnez $v1, .L80052340 +/* 052EC0 800522C0 8FBF001C */ lw $ra, 0x1c($sp) +/* 052EC4 800522C4 820901E7 */ lb $t1, 0x1e7($s0) +/* 052EC8 800522C8 240C2800 */ li $t4, 10240 +/* 052ECC 800522CC 312A001F */ andi $t2, $t1, 0x1f +/* 052ED0 800522D0 29410002 */ slti $at, $t2, 2 +/* 052ED4 800522D4 10200019 */ beqz $at, .L8005233C +/* 052ED8 800522D8 3C0144A0 */ li $at, 0x44A00000 # 1280.000000 +/* 052EDC 800522DC 44813000 */ mtc1 $at, $f6 +/* 052EE0 800522E0 C604002C */ lwc1 $f4, 0x2c($s0) +/* 052EE4 800522E4 00000000 */ nop +/* 052EE8 800522E8 46062202 */ mul.s $f8, $f4, $f6 +/* 052EEC 800522EC 444BF800 */ cfc1 $t3, $31 +/* 052EF0 800522F0 00000000 */ nop +/* 052EF4 800522F4 35610003 */ ori $at, $t3, 3 +/* 052EF8 800522F8 38210002 */ xori $at, $at, 2 +/* 052EFC 800522FC 44C1F800 */ ctc1 $at, $31 +/* 052F00 80052300 00000000 */ nop +/* 052F04 80052304 460042A4 */ cvt.w.s $f10, $f8 +/* 052F08 80052308 44055000 */ mfc1 $a1, $f10 +/* 052F0C 8005230C 44CBF800 */ ctc1 $t3, $31 +/* 052F10 80052310 04A10003 */ bgez $a1, .L80052320 +/* 052F14 80052314 28A12801 */ slti $at, $a1, 0x2801 +/* 052F18 80052318 00052823 */ negu $a1, $a1 +/* 052F1C 8005231C 28A12801 */ slti $at, $a1, 0x2801 +.L80052320: +/* 052F20 80052320 14200003 */ bnez $at, .L80052330 +/* 052F24 80052324 01852823 */ subu $a1, $t4, $a1 +/* 052F28 80052328 24052800 */ li $a1, 10240 +/* 052F2C 8005232C 01852823 */ subu $a1, $t4, $a1 +.L80052330: +/* 052F30 80052330 0C01BE53 */ jal func_8006F94C +/* 052F34 80052334 00052023 */ negu $a0, $a1 +/* 052F38 80052338 A602016C */ sh $v0, 0x16c($s0) +.L8005233C: +/* 052F3C 8005233C 8FBF001C */ lw $ra, 0x1c($sp) +.L80052340: +/* 052F40 80052340 8FB00018 */ lw $s0, 0x18($sp) +/* 052F44 80052344 03E00008 */ jr $ra +/* 052F48 80052348 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_043920/func_8005234C.s b/asm/non_matchings/unknown_043920/func_8005234C.s new file mode 100644 index 00000000..ef7d859d --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8005234C.s @@ -0,0 +1,18 @@ +glabel func_8005234C +/* 052F4C 8005234C 8482016C */ lh $v0, 0x16c($a0) +/* 052F50 80052350 00000000 */ nop +/* 052F54 80052354 000270C3 */ sra $t6, $v0, 3 +/* 052F58 80052358 004E7823 */ subu $t7, $v0, $t6 +/* 052F5C 8005235C A48F016C */ sh $t7, 0x16c($a0) +/* 052F60 80052360 8482016C */ lh $v0, 0x16c($a0) +/* 052F64 80052364 00000000 */ nop +/* 052F68 80052368 2841FFF7 */ slti $at, $v0, -9 +/* 052F6C 8005236C 14200004 */ bnez $at, .L80052380 +/* 052F70 80052370 2841000A */ slti $at, $v0, 0xa +/* 052F74 80052374 10200002 */ beqz $at, .L80052380 +/* 052F78 80052378 00000000 */ nop +/* 052F7C 8005237C A480016C */ sh $zero, 0x16c($a0) +.L80052380: +/* 052F80 80052380 03E00008 */ jr $ra +/* 052F84 80052384 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_80052388.s b/asm/non_matchings/unknown_043920/func_80052388.s new file mode 100644 index 00000000..a52fc1d4 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80052388.s @@ -0,0 +1,110 @@ +glabel func_80052388 +/* 052F88 80052388 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 052F8C 8005238C AFBF0014 */ sw $ra, 0x14($sp) +/* 052F90 80052390 AFA70034 */ sw $a3, 0x34($sp) +/* 052F94 80052394 C486000C */ lwc1 $f6, 0xc($a0) +/* 052F98 80052398 C4C4000C */ lwc1 $f4, 0xc($a2) +/* 052F9C 8005239C C48A0014 */ lwc1 $f10, 0x14($a0) +/* 052FA0 800523A0 46062301 */ sub.s $f12, $f4, $f6 +/* 052FA4 800523A4 C4C80014 */ lwc1 $f8, 0x14($a2) +/* 052FA8 800523A8 460C6402 */ mul.s $f16, $f12, $f12 +/* 052FAC 800523AC 460A4381 */ sub.s $f14, $f8, $f10 +/* 052FB0 800523B0 C7A60034 */ lwc1 $f6, 0x34($sp) +/* 052FB4 800523B4 00001825 */ move $v1, $zero +/* 052FB8 800523B8 460E7482 */ mul.s $f18, $f14, $f14 +/* 052FBC 800523BC 46128100 */ add.s $f4, $f16, $f18 +/* 052FC0 800523C0 4606203C */ c.lt.s $f4, $f6 +/* 052FC4 800523C4 00000000 */ nop +/* 052FC8 800523C8 4500004D */ bc1f .L80052500 +/* 052FCC 800523CC 8FBF0014 */ lw $ra, 0x14($sp) +/* 052FD0 800523D0 AFA40028 */ sw $a0, 0x28($sp) +/* 052FD4 800523D4 AFA5002C */ sw $a1, 0x2c($sp) +/* 052FD8 800523D8 AFA60030 */ sw $a2, 0x30($sp) +/* 052FDC 800523DC E7AC0020 */ swc1 $f12, 0x20($sp) +/* 052FE0 800523E0 0C01C1D4 */ jal func_80070750 +/* 052FE4 800523E4 E7AE001C */ swc1 $f14, 0x1c($sp) +/* 052FE8 800523E8 8FA40028 */ lw $a0, 0x28($sp) +/* 052FEC 800523EC 34018000 */ li $at, 32768 +/* 052FF0 800523F0 848E0000 */ lh $t6, ($a0) +/* 052FF4 800523F4 8FA5002C */ lw $a1, 0x2c($sp) +/* 052FF8 800523F8 31CFFFFF */ andi $t7, $t6, 0xffff +/* 052FFC 800523FC 004F1823 */ subu $v1, $v0, $t7 +/* 053000 80052400 00611821 */ addu $v1, $v1, $at +/* 053004 80052404 34018001 */ li $at, 32769 +/* 053008 80052408 8FA60030 */ lw $a2, 0x30($sp) +/* 05300C 8005240C C7AC0020 */ lwc1 $f12, 0x20($sp) +/* 053010 80052410 C7AE001C */ lwc1 $f14, 0x1c($sp) +/* 053014 80052414 0061082A */ slt $at, $v1, $at +/* 053018 80052418 14200003 */ bnez $at, .L80052428 +/* 05301C 8005241C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 053020 80052420 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 053024 80052424 00611821 */ addu $v1, $v1, $at +.L80052428: +/* 053028 80052428 28618000 */ slti $at, $v1, -0x8000 +/* 05302C 8005242C 10200002 */ beqz $at, .L80052438 +/* 053030 80052430 3401FFFF */ li $at, 65535 +/* 053034 80052434 00611821 */ addu $v1, $v1, $at +.L80052438: +/* 053038 80052438 28613001 */ slti $at, $v1, 0x3001 +/* 05303C 8005243C 14200003 */ bnez $at, .L8005244C +/* 053040 80052440 2861D000 */ slti $at, $v1, -0x3000 +/* 053044 80052444 24033000 */ li $v1, 12288 +/* 053048 80052448 2861D000 */ slti $at, $v1, -0x3000 +.L8005244C: +/* 05304C 8005244C 10200002 */ beqz $at, .L80052458 +/* 053050 80052450 00000000 */ nop +/* 053054 80052454 2403D000 */ li $v1, -12288 +.L80052458: +/* 053058 80052458 80B801E7 */ lb $t8, 0x1e7($a1) +/* 05305C 8005245C A4A3016C */ sh $v1, 0x16c($a1) +/* 053060 80052460 3319003F */ andi $t9, $t8, 0x3f +/* 053064 80052464 2B21001F */ slti $at, $t9, 0x1f +/* 053068 80052468 10200002 */ beqz $at, .L80052474 +/* 05306C 8005246C 00000000 */ nop +/* 053070 80052470 A4A0016C */ sh $zero, 0x16c($a1) +.L80052474: +/* 053074 80052474 8CC50064 */ lw $a1, 0x64($a2) +/* 053078 80052478 AFA40028 */ sw $a0, 0x28($sp) +/* 05307C 8005247C 0C01C1D4 */ jal func_80070750 +/* 053080 80052480 AFA5002C */ sw $a1, 0x2c($sp) +/* 053084 80052484 8FA40028 */ lw $a0, 0x28($sp) +/* 053088 80052488 34018001 */ li $at, 32769 +/* 05308C 8005248C 84880000 */ lh $t0, ($a0) +/* 053090 80052490 8FA5002C */ lw $a1, 0x2c($sp) +/* 053094 80052494 3109FFFF */ andi $t1, $t0, 0xffff +/* 053098 80052498 00491823 */ subu $v1, $v0, $t1 +/* 05309C 8005249C 0061082A */ slt $at, $v1, $at +/* 0530A0 800524A0 14200003 */ bnez $at, .L800524B0 +/* 0530A4 800524A4 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 0530A8 800524A8 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 0530AC 800524AC 00611821 */ addu $v1, $v1, $at +.L800524B0: +/* 0530B0 800524B0 28618000 */ slti $at, $v1, -0x8000 +/* 0530B4 800524B4 10200002 */ beqz $at, .L800524C0 +/* 0530B8 800524B8 3401FFFF */ li $at, 65535 +/* 0530BC 800524BC 00611821 */ addu $v1, $v1, $at +.L800524C0: +/* 0530C0 800524C0 28613001 */ slti $at, $v1, 0x3001 +/* 0530C4 800524C4 14200003 */ bnez $at, .L800524D4 +/* 0530C8 800524C8 2861D000 */ slti $at, $v1, -0x3000 +/* 0530CC 800524CC 24033000 */ li $v1, 12288 +/* 0530D0 800524D0 2861D000 */ slti $at, $v1, -0x3000 +.L800524D4: +/* 0530D4 800524D4 10200002 */ beqz $at, .L800524E0 +/* 0530D8 800524D8 00000000 */ nop +/* 0530DC 800524DC 2403D000 */ li $v1, -12288 +.L800524E0: +/* 0530E0 800524E0 80AA01E7 */ lb $t2, 0x1e7($a1) +/* 0530E4 800524E4 A4A3016C */ sh $v1, 0x16c($a1) +/* 0530E8 800524E8 314B001F */ andi $t3, $t2, 0x1f +/* 0530EC 800524EC 2961000A */ slti $at, $t3, 0xa +/* 0530F0 800524F0 10200002 */ beqz $at, .L800524FC +/* 0530F4 800524F4 24030001 */ li $v1, 1 +/* 0530F8 800524F8 A4A0016C */ sh $zero, 0x16c($a1) +.L800524FC: +/* 0530FC 800524FC 8FBF0014 */ lw $ra, 0x14($sp) +.L80052500: +/* 053100 80052500 27BD0028 */ addiu $sp, $sp, 0x28 +/* 053104 80052504 03E00008 */ jr $ra +/* 053108 80052508 00601025 */ move $v0, $v1 + diff --git a/asm/non_matchings/unknown_043920/func_8005250C.s b/asm/non_matchings/unknown_043920/func_8005250C.s new file mode 100644 index 00000000..0735218f --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8005250C.s @@ -0,0 +1,308 @@ +glabel func_8005250C +/* 05310C 8005250C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 053110 80052510 AFBF0024 */ sw $ra, 0x24($sp) +/* 053114 80052514 AFA40028 */ sw $a0, 0x28($sp) +/* 053118 80052518 AFA60030 */ sw $a2, 0x30($sp) +/* 05311C 8005251C 80AE0173 */ lb $t6, 0x173($a1) +/* 053120 80052520 00001825 */ move $v1, $zero +/* 053124 80052524 19C0000F */ blez $t6, .L80052564 +/* 053128 80052528 2404000C */ li $a0, 12 +/* 05312C 8005252C 0C0078A7 */ jal func_8001E29C +/* 053130 80052530 AFA5002C */ sw $a1, 0x2c($sp) +/* 053134 80052534 8FA5002C */ lw $a1, 0x2c($sp) +/* 053138 80052538 00000000 */ nop +/* 05313C 8005253C 80AF0172 */ lb $t7, 0x172($a1) +/* 053140 80052540 80B90174 */ lb $t9, 0x174($a1) +/* 053144 80052544 000FC080 */ sll $t8, $t7, 2 +/* 053148 80052548 030FC021 */ addu $t8, $t8, $t7 +/* 05314C 8005254C 0018C040 */ sll $t8, $t8, 1 +/* 053150 80052550 00194040 */ sll $t0, $t9, 1 +/* 053154 80052554 03084821 */ addu $t1, $t8, $t0 +/* 053158 80052558 01225021 */ addu $t2, $t1, $v0 +/* 05315C 8005255C 81430000 */ lb $v1, ($t2) +/* 053160 80052560 00000000 */ nop +.L80052564: +/* 053164 80052564 3C0B8012 */ lui $t3, %hi(D_8011D52C) # $t3, 0x8012 +/* 053168 80052568 8D6BD52C */ lw $t3, %lo(D_8011D52C)($t3) +/* 05316C 8005256C 24010004 */ li $at, 4 +/* 053170 80052570 316C2000 */ andi $t4, $t3, 0x2000 +/* 053174 80052574 11800006 */ beqz $t4, .L80052590 +/* 053178 80052578 3C09800E */ lui $t1, %hi(D_800DCB98) # $t1, 0x800e +/* 05317C 8005257C 10610004 */ beq $v1, $at, .L80052590 +/* 053180 80052580 24010008 */ li $at, 8 +/* 053184 80052584 10610002 */ beq $v1, $at, .L80052590 +/* 053188 80052588 240D0005 */ li $t5, 5 +/* 05318C 8005258C A0AD01F2 */ sb $t5, 0x1f2($a1) +.L80052590: +/* 053190 80052590 80AE01D3 */ lb $t6, 0x1d3($a1) +/* 053194 80052594 00000000 */ nop +/* 053198 80052598 11C00005 */ beqz $t6, .L800525B0 +/* 05319C 8005259C 00000000 */ nop +/* 0531A0 800525A0 90AF01F3 */ lbu $t7, 0x1f3($a1) +/* 0531A4 800525A4 00000000 */ nop +/* 0531A8 800525A8 35F90004 */ ori $t9, $t7, 4 +/* 0531AC 800525AC A0B901F3 */ sb $t9, 0x1f3($a1) +.L800525B0: +/* 0531B0 800525B0 90B801F3 */ lbu $t8, 0x1f3($a1) +/* 0531B4 800525B4 00000000 */ nop +/* 0531B8 800525B8 33080008 */ andi $t0, $t8, 8 +/* 0531BC 800525BC 11000016 */ beqz $t0, .L80052618 +/* 0531C0 800525C0 24180004 */ li $t8, 4 +/* 0531C4 800525C4 8D29CB98 */ lw $t1, %lo(D_800DCB98)($t1) +/* 0531C8 800525C8 3C0A8012 */ lui $t2, %hi(D_8011D55C) # $t2, 0x8012 +/* 0531CC 800525CC 29210003 */ slti $at, $t1, 3 +/* 0531D0 800525D0 10200010 */ beqz $at, .L80052614 +/* 0531D4 800525D4 00000000 */ nop +/* 0531D8 800525D8 8D4AD55C */ lw $t2, %lo(D_8011D55C)($t2) +/* 0531DC 800525DC 8FAE0028 */ lw $t6, 0x28($sp) +/* 0531E0 800525E0 05400008 */ bltz $t2, .L80052604 +/* 0531E4 800525E4 00000000 */ nop +/* 0531E8 800525E8 8FAB0028 */ lw $t3, 0x28($sp) +/* 0531EC 800525EC 3C010010 */ lui $at, 0x10 +/* 0531F0 800525F0 8D6C0074 */ lw $t4, 0x74($t3) +/* 0531F4 800525F4 00000000 */ nop +/* 0531F8 800525F8 01816825 */ or $t5, $t4, $at +/* 0531FC 800525FC 10000005 */ b .L80052614 +/* 053200 80052600 AD6D0074 */ sw $t5, 0x74($t3) +.L80052604: +/* 053204 80052604 8DCF0074 */ lw $t7, 0x74($t6) +/* 053208 80052608 3C010008 */ lui $at, 8 +/* 05320C 8005260C 01E1C825 */ or $t9, $t7, $at +/* 053210 80052610 ADD90074 */ sw $t9, 0x74($t6) +.L80052614: +/* 053214 80052614 A0B801F2 */ sb $t8, 0x1f2($a1) +.L80052618: +/* 053218 80052618 3C088012 */ lui $t0, %hi(D_8011D540) # $t0, 0x8012 +/* 05321C 8005261C 8D08D540 */ lw $t0, %lo(D_8011D540)($t0) +/* 053220 80052620 00000000 */ nop +/* 053224 80052624 11000003 */ beqz $t0, .L80052634 +/* 053228 80052628 00000000 */ nop +/* 05322C 8005262C A0A001F3 */ sb $zero, 0x1f3($a1) +/* 053230 80052630 A0A001F2 */ sb $zero, 0x1f2($a1) +.L80052634: +/* 053234 80052634 80A901D8 */ lb $t1, 0x1d8($a1) +/* 053238 80052638 24010001 */ li $at, 1 +/* 05323C 8005263C 15210003 */ bne $t1, $at, .L8005264C +/* 053240 80052640 00000000 */ nop +/* 053244 80052644 A0A001F2 */ sb $zero, 0x1f2($a1) +/* 053248 80052648 A0A001F3 */ sb $zero, 0x1f3($a1) +.L8005264C: +/* 05324C 8005264C 90AA01F2 */ lbu $t2, 0x1f2($a1) +/* 053250 80052650 00000000 */ nop +/* 053254 80052654 2D410008 */ sltiu $at, $t2, 8 +/* 053258 80052658 102000C7 */ beqz $at, .L80052978 +/* 05325C 8005265C 000A5080 */ sll $t2, $t2, 2 +/* 053260 80052660 3C01800E */ lui $at, 0x800e +/* 053264 80052664 002A0821 */ addu $at, $at, $t2 +/* 053268 80052668 8C2A66D0 */ lw $t2, 0x66d0($at) +/* 05326C 8005266C 00000000 */ nop +/* 053270 80052670 01400008 */ jr $t2 +/* 053274 80052674 00000000 */ nop +/* 053278 80052678 84AC01A2 */ lh $t4, 0x1a2($a1) +/* 05327C 8005267C 3C018012 */ lui $at, %hi(D_8011D570) # $at, 0x8012 +/* 053280 80052680 000C6823 */ negu $t5, $t4 +/* 053284 80052684 000D5A03 */ sra $t3, $t5, 8 +/* 053288 80052688 448B2000 */ mtc1 $t3, $f4 +/* 05328C 8005268C C428D570 */ lwc1 $f8, %lo(D_8011D570)($at) +/* 053290 80052690 468021A0 */ cvt.s.w $f6, $f4 +/* 053294 80052694 8FA20030 */ lw $v0, 0x30($sp) +/* 053298 80052698 24190028 */ li $t9, 40 +/* 05329C 8005269C 46083283 */ div.s $f10, $f6, $f8 +/* 0532A0 800526A0 8FAE0028 */ lw $t6, 0x28($sp) +/* 0532A4 800526A4 8FAA0028 */ lw $t2, 0x28($sp) +/* 0532A8 800526A8 44809800 */ mtc1 $zero, $f19 +/* 0532AC 800526AC 240D0003 */ li $t5, 3 +/* 0532B0 800526B0 0002C080 */ sll $t8, $v0, 2 +/* 0532B4 800526B4 444FF800 */ cfc1 $t7, $31 +/* 0532B8 800526B8 00000000 */ nop +/* 0532BC 800526BC 35E10003 */ ori $at, $t7, 3 +/* 0532C0 800526C0 38210002 */ xori $at, $at, 2 +/* 0532C4 800526C4 44C1F800 */ ctc1 $at, $31 +/* 0532C8 800526C8 00000000 */ nop +/* 0532CC 800526CC 46005424 */ cvt.w.s $f16, $f10 +/* 0532D0 800526D0 44038000 */ mfc1 $v1, $f16 +/* 0532D4 800526D4 44CFF800 */ ctc1 $t7, $31 +/* 0532D8 800526D8 03231823 */ subu $v1, $t9, $v1 +/* 0532DC 800526DC 04610002 */ bgez $v1, .L800526E8 +/* 0532E0 800526E0 3C0F8012 */ lui $t7, %hi(D_8011D528) # $t7, 0x8012 +/* 0532E4 800526E4 00001825 */ move $v1, $zero +.L800526E8: +/* 0532E8 800526E8 2861004A */ slti $at, $v1, 0x4a +/* 0532EC 800526EC 14200002 */ bnez $at, .L800526F8 +/* 0532F0 800526F0 00000000 */ nop +/* 0532F4 800526F4 24030049 */ li $v1, 73 +.L800526F8: +/* 0532F8 800526F8 85C60018 */ lh $a2, 0x18($t6) +/* 0532FC 800526FC 00000000 */ nop +/* 053300 80052700 00662023 */ subu $a0, $v1, $a2 +/* 053304 80052704 18800006 */ blez $a0, .L80052720 +/* 053308 80052708 00001825 */ move $v1, $zero +/* 05330C 8005270C 03021823 */ subu $v1, $t8, $v0 +/* 053310 80052710 0083082A */ slt $at, $a0, $v1 +/* 053314 80052714 10200002 */ beqz $at, .L80052720 +/* 053318 80052718 00000000 */ nop +/* 05331C 8005271C 00801825 */ move $v1, $a0 +.L80052720: +/* 053320 80052720 0481000B */ bgez $a0, .L80052750 +/* 053324 80052724 00C34821 */ addu $t1, $a2, $v1 +/* 053328 80052728 8FA20030 */ lw $v0, 0x30($sp) +/* 05332C 8005272C 00000000 */ nop +/* 053330 80052730 00020823 */ negu $at, $v0 +/* 053334 80052734 00014080 */ sll $t0, $at, 2 +/* 053338 80052738 01011823 */ subu $v1, $t0, $at +/* 05333C 8005273C 0064082A */ slt $at, $v1, $a0 +/* 053340 80052740 10200003 */ beqz $at, .L80052750 +/* 053344 80052744 00C34821 */ addu $t1, $a2, $v1 +/* 053348 80052748 00801825 */ move $v1, $a0 +/* 05334C 8005274C 00C34821 */ addu $t1, $a2, $v1 +.L80052750: +/* 053350 80052750 A5490018 */ sh $t1, 0x18($t2) +/* 053354 80052754 A140003B */ sb $zero, 0x3b($t2) +/* 053358 80052758 90A201F3 */ lbu $v0, 0x1f3($a1) +/* 05335C 8005275C 00000000 */ nop +/* 053360 80052760 304C0004 */ andi $t4, $v0, 4 +/* 053364 80052764 11800003 */ beqz $t4, .L80052774 +/* 053368 80052768 304BFFFB */ andi $t3, $v0, 0xfffb +/* 05336C 8005276C A0AD01F2 */ sb $t5, 0x1f2($a1) +/* 053370 80052770 A0AB01F3 */ sb $t3, 0x1f3($a1) +.L80052774: +/* 053374 80052774 C4A4002C */ lwc1 $f4, 0x2c($a1) +/* 053378 80052778 44809000 */ mtc1 $zero, $f18 +/* 05337C 8005277C 460021A1 */ cvt.d.s $f6, $f4 +/* 053380 80052780 4626903C */ c.lt.d $f18, $f6 +/* 053384 80052784 00000000 */ nop +/* 053388 80052788 4500007C */ bc1f .L8005297C +/* 05338C 8005278C 8FBF0024 */ lw $ra, 0x24($sp) +/* 053390 80052790 8DEFD528 */ lw $t7, %lo(D_8011D528)($t7) +/* 053394 80052794 240E0006 */ li $t6, 6 +/* 053398 80052798 31F94000 */ andi $t9, $t7, 0x4000 +/* 05339C 8005279C 13200077 */ beqz $t9, .L8005297C +/* 0533A0 800527A0 8FBF0024 */ lw $ra, 0x24($sp) +/* 0533A4 800527A4 10000074 */ b .L80052978 +/* 0533A8 800527A8 A0AE01F2 */ sb $t6, 0x1f2($a1) +/* 0533AC 800527AC 90B801F3 */ lbu $t8, 0x1f3($a1) +/* 0533B0 800527B0 8FA40028 */ lw $a0, 0x28($sp) +/* 0533B4 800527B4 33080004 */ andi $t0, $t8, 4 +/* 0533B8 800527B8 11000002 */ beqz $t0, .L800527C4 +/* 0533BC 800527BC 24020002 */ li $v0, 2 +/* 0533C0 800527C0 24020006 */ li $v0, 6 +.L800527C4: +/* 0533C4 800527C4 8FAC0030 */ lw $t4, 0x30($sp) +/* 0533C8 800527C8 24090020 */ li $t1, 32 +/* 0533CC 800527CC 240A0004 */ li $t2, 4 +/* 0533D0 800527D0 AFAA0014 */ sw $t2, 0x14($sp) +/* 0533D4 800527D4 AFA90010 */ sw $t1, 0x10($sp) +/* 0533D8 800527D8 24060002 */ li $a2, 2 +/* 0533DC 800527DC 00003825 */ move $a3, $zero +/* 0533E0 800527E0 AFA20018 */ sw $v0, 0x18($sp) +/* 0533E4 800527E4 AFA5002C */ sw $a1, 0x2c($sp) +/* 0533E8 800527E8 0C014A62 */ jal func_80052988 +/* 0533EC 800527EC AFAC001C */ sw $t4, 0x1c($sp) +/* 0533F0 800527F0 8FA5002C */ lw $a1, 0x2c($sp) +/* 0533F4 800527F4 00000000 */ nop +/* 0533F8 800527F8 90AD01F3 */ lbu $t5, 0x1f3($a1) +/* 0533FC 800527FC 00000000 */ nop +/* 053400 80052800 31ABFFFB */ andi $t3, $t5, 0xfffb +/* 053404 80052804 1000005C */ b .L80052978 +/* 053408 80052808 A0AB01F3 */ sb $t3, 0x1f3($a1) +/* 05340C 8005280C 8FAE0030 */ lw $t6, 0x30($sp) +/* 053410 80052810 8FA40028 */ lw $a0, 0x28($sp) +/* 053414 80052814 240F0020 */ li $t7, 32 +/* 053418 80052818 24190002 */ li $t9, 2 +/* 05341C 8005281C AFB90014 */ sw $t9, 0x14($sp) +/* 053420 80052820 AFAF0010 */ sw $t7, 0x10($sp) +/* 053424 80052824 24060003 */ li $a2, 3 +/* 053428 80052828 00003825 */ move $a3, $zero +/* 05342C 8005282C AFA00018 */ sw $zero, 0x18($sp) +/* 053430 80052830 AFA5002C */ sw $a1, 0x2c($sp) +/* 053434 80052834 0C014A62 */ jal func_80052988 +/* 053438 80052838 AFAE001C */ sw $t6, 0x1c($sp) +/* 05343C 8005283C 8FA5002C */ lw $a1, 0x2c($sp) +/* 053440 80052840 00000000 */ nop +/* 053444 80052844 90B801F3 */ lbu $t8, 0x1f3($a1) +/* 053448 80052848 00000000 */ nop +/* 05344C 8005284C 3308FFF7 */ andi $t0, $t8, 0xfff7 +/* 053450 80052850 10000049 */ b .L80052978 +/* 053454 80052854 A0A801F3 */ sb $t0, 0x1f3($a1) +/* 053458 80052858 3C098012 */ lui $t1, %hi(D_8011D528) # $t1, 0x8012 +/* 05345C 8005285C 8D29D528 */ lw $t1, %lo(D_8011D528)($t1) +/* 053460 80052860 8FA40028 */ lw $a0, 0x28($sp) +/* 053464 80052864 312A2000 */ andi $t2, $t1, 0x2000 +/* 053468 80052868 11400002 */ beqz $t2, .L80052874 +/* 05346C 8005286C 24020002 */ li $v0, 2 +/* 053470 80052870 24020006 */ li $v0, 6 +.L80052874: +/* 053474 80052874 8FAB0030 */ lw $t3, 0x30($sp) +/* 053478 80052878 240C0030 */ li $t4, 48 +/* 05347C 8005287C 240D0004 */ li $t5, 4 +/* 053480 80052880 AFAD0014 */ sw $t5, 0x14($sp) +/* 053484 80052884 AFAC0010 */ sw $t4, 0x10($sp) +/* 053488 80052888 24060004 */ li $a2, 4 +/* 05348C 8005288C 00003825 */ move $a3, $zero +/* 053490 80052890 AFA20018 */ sw $v0, 0x18($sp) +/* 053494 80052894 0C014A62 */ jal func_80052988 +/* 053498 80052898 AFAB001C */ sw $t3, 0x1c($sp) +/* 05349C 8005289C 10000037 */ b .L8005297C +/* 0534A0 800528A0 8FBF0024 */ lw $ra, 0x24($sp) +/* 0534A4 800528A4 C4AA002C */ lwc1 $f10, 0x2c($a1) +/* 0534A8 800528A8 44804800 */ mtc1 $zero, $f9 +/* 0534AC 800528AC 44804000 */ mtc1 $zero, $f8 +/* 0534B0 800528B0 46005421 */ cvt.d.s $f16, $f10 +/* 0534B4 800528B4 4630403C */ c.lt.d $f8, $f16 +/* 0534B8 800528B8 8FA40028 */ lw $a0, 0x28($sp) +/* 0534BC 800528BC 45000008 */ bc1f .L800528E0 +/* 0534C0 800528C0 24020003 */ li $v0, 3 +/* 0534C4 800528C4 3C0F8012 */ lui $t7, %hi(D_8011D528) # $t7, 0x8012 +/* 0534C8 800528C8 8DEFD528 */ lw $t7, %lo(D_8011D528)($t7) +/* 0534CC 800528CC 00000000 */ nop +/* 0534D0 800528D0 31F94000 */ andi $t9, $t7, 0x4000 +/* 0534D4 800528D4 13200003 */ beqz $t9, .L800528E4 +/* 0534D8 800528D8 8FA80030 */ lw $t0, 0x30($sp) +/* 0534DC 800528DC 24020007 */ li $v0, 7 +.L800528E0: +/* 0534E0 800528E0 8FA80030 */ lw $t0, 0x30($sp) +.L800528E4: +/* 0534E4 800528E4 240E0050 */ li $t6, 80 +/* 0534E8 800528E8 24180003 */ li $t8, 3 +/* 0534EC 800528EC AFB80014 */ sw $t8, 0x14($sp) +/* 0534F0 800528F0 AFAE0010 */ sw $t6, 0x10($sp) +/* 0534F4 800528F4 24060001 */ li $a2, 1 +/* 0534F8 800528F8 00003825 */ move $a3, $zero +/* 0534FC 800528FC AFA20018 */ sw $v0, 0x18($sp) +/* 053500 80052900 0C014A62 */ jal func_80052988 +/* 053504 80052904 AFA8001C */ sw $t0, 0x1c($sp) +/* 053508 80052908 1000001C */ b .L8005297C +/* 05350C 8005290C 8FBF0024 */ lw $ra, 0x24($sp) +/* 053510 80052910 8FAC0030 */ lw $t4, 0x30($sp) +/* 053514 80052914 8FA40028 */ lw $a0, 0x28($sp) +/* 053518 80052918 24090060 */ li $t1, 96 +/* 05351C 8005291C 240A0004 */ li $t2, 4 +/* 053520 80052920 AFAA0014 */ sw $t2, 0x14($sp) +/* 053524 80052924 AFA90010 */ sw $t1, 0x10($sp) +/* 053528 80052928 24060005 */ li $a2, 5 +/* 05352C 8005292C 00003825 */ move $a3, $zero +/* 053530 80052930 AFA00018 */ sw $zero, 0x18($sp) +/* 053534 80052934 AFA5002C */ sw $a1, 0x2c($sp) +/* 053538 80052938 0C014A62 */ jal func_80052988 +/* 05353C 8005293C AFAC001C */ sw $t4, 0x1c($sp) +/* 053540 80052940 8FA5002C */ lw $a1, 0x2c($sp) +/* 053544 80052944 8FA40028 */ lw $a0, 0x28($sp) +/* 053548 80052948 90AD01F2 */ lbu $t5, 0x1f2($a1) +/* 05354C 8005294C 24060005 */ li $a2, 5 +/* 053550 80052950 15A00009 */ bnez $t5, .L80052978 +/* 053554 80052954 00003825 */ move $a3, $zero +/* 053558 80052958 8FB90030 */ lw $t9, 0x30($sp) +/* 05355C 8005295C 240B0060 */ li $t3, 96 +/* 053560 80052960 240F0004 */ li $t7, 4 +/* 053564 80052964 AFAF0014 */ sw $t7, 0x14($sp) +/* 053568 80052968 AFAB0010 */ sw $t3, 0x10($sp) +/* 05356C 8005296C AFA00018 */ sw $zero, 0x18($sp) +/* 053570 80052970 0C014A62 */ jal func_80052988 +/* 053574 80052974 AFB9001C */ sw $t9, 0x1c($sp) +.L80052978: +/* 053578 80052978 8FBF0024 */ lw $ra, 0x24($sp) +.L8005297C: +/* 05357C 8005297C 27BD0028 */ addiu $sp, $sp, 0x28 +/* 053580 80052980 03E00008 */ jr $ra +/* 053584 80052984 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_80052988.s b/asm/non_matchings/unknown_043920/func_80052988.s new file mode 100644 index 00000000..c0ba38c1 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80052988.s @@ -0,0 +1,136 @@ +glabel func_80052988 +/* 053588 80052988 8FAE0014 */ lw $t6, 0x14($sp) +/* 05358C 8005298C 8FAF001C */ lw $t7, 0x1c($sp) +/* 053590 80052990 3C198012 */ lui $t9, %hi(D_8011D55C) # $t9, 0x8012 +/* 053594 80052994 01CF0019 */ multu $t6, $t7 +/* 053598 80052998 8F39D55C */ lw $t9, %lo(D_8011D55C)($t9) +/* 05359C 8005299C 2401FFFF */ li $at, -1 +/* 0535A0 800529A0 0000C012 */ mflo $t8 +/* 0535A4 800529A4 AFB80014 */ sw $t8, 0x14($sp) +/* 0535A8 800529A8 17210006 */ bne $t9, $at, .L800529C4 +/* 0535AC 800529AC 28C10003 */ slti $at, $a2, 3 +/* 0535B0 800529B0 14200004 */ bnez $at, .L800529C4 +/* 0535B4 800529B4 00000000 */ nop +/* 0535B8 800529B8 A080003B */ sb $zero, 0x3b($a0) +/* 0535BC 800529BC 03E00008 */ jr $ra +/* 0535C0 800529C0 A0A001F2 */ sb $zero, 0x1f2($a1) + +.L800529C4: +/* 0535C4 800529C4 8082003B */ lb $v0, 0x3b($a0) +/* 0535C8 800529C8 00000000 */ nop +/* 0535CC 800529CC 14400029 */ bnez $v0, .L80052A74 +/* 0535D0 800529D0 00000000 */ nop +/* 0535D4 800529D4 8FA20018 */ lw $v0, 0x18($sp) +/* 0535D8 800529D8 00000000 */ nop +/* 0535DC 800529DC 30480001 */ andi $t0, $v0, 1 +/* 0535E0 800529E0 1100001D */ beqz $t0, .L80052A58 +/* 0535E4 800529E4 00000000 */ nop +/* 0535E8 800529E8 84820018 */ lh $v0, 0x18($a0) +/* 0535EC 800529EC 8FAD001C */ lw $t5, 0x1c($sp) +/* 0535F0 800529F0 28410029 */ slti $at, $v0, 0x29 +/* 0535F4 800529F4 1420000E */ bnez $at, .L80052A30 +/* 0535F8 800529F8 000D7080 */ sll $t6, $t5, 2 +/* 0535FC 800529FC 8FA9001C */ lw $t1, 0x1c($sp) +/* 053600 80052A00 00000000 */ nop +/* 053604 80052A04 00095080 */ sll $t2, $t1, 2 +/* 053608 80052A08 004A5823 */ subu $t3, $v0, $t2 +/* 05360C 80052A0C A48B0018 */ sh $t3, 0x18($a0) +/* 053610 80052A10 848C0018 */ lh $t4, 0x18($a0) +/* 053614 80052A14 00000000 */ nop +/* 053618 80052A18 29810029 */ slti $at, $t4, 0x29 +/* 05361C 80052A1C 1020004F */ beqz $at, .L80052B5C +/* 053620 80052A20 00000000 */ nop +/* 053624 80052A24 A086003B */ sb $a2, 0x3b($a0) +/* 053628 80052A28 03E00008 */ jr $ra +/* 05362C 80052A2C A4870018 */ sh $a3, 0x18($a0) + +.L80052A30: +/* 053630 80052A30 004E7821 */ addu $t7, $v0, $t6 +/* 053634 80052A34 A48F0018 */ sh $t7, 0x18($a0) +/* 053638 80052A38 84980018 */ lh $t8, 0x18($a0) +/* 05363C 80052A3C 00000000 */ nop +/* 053640 80052A40 2B010028 */ slti $at, $t8, 0x28 +/* 053644 80052A44 14200045 */ bnez $at, .L80052B5C +/* 053648 80052A48 00000000 */ nop +/* 05364C 80052A4C A086003B */ sb $a2, 0x3b($a0) +/* 053650 80052A50 03E00008 */ jr $ra +/* 053654 80052A54 A4870018 */ sh $a3, 0x18($a0) + +.L80052A58: +/* 053658 80052A58 A086003B */ sb $a2, 0x3b($a0) +/* 05365C 80052A5C A4870018 */ sh $a3, 0x18($a0) +/* 053660 80052A60 90B901F3 */ lbu $t9, 0x1f3($a1) +/* 053664 80052A64 00000000 */ nop +/* 053668 80052A68 3328FF7F */ andi $t0, $t9, 0xff7f +/* 05366C 80052A6C 03E00008 */ jr $ra +/* 053670 80052A70 A0A801F3 */ sb $t0, 0x1f3($a1) + +.L80052A74: +/* 053674 80052A74 14C20037 */ bne $a2, $v0, .L80052B54 +/* 053678 80052A78 00000000 */ nop +/* 05367C 80052A7C 8FA20018 */ lw $v0, 0x18($sp) +/* 053680 80052A80 8FB80014 */ lw $t8, 0x14($sp) +/* 053684 80052A84 30490002 */ andi $t1, $v0, 2 +/* 053688 80052A88 11200024 */ beqz $t1, .L80052B1C +/* 05368C 80052A8C 00000000 */ nop +/* 053690 80052A90 90AA01F3 */ lbu $t2, 0x1f3($a1) +/* 053694 80052A94 8FA80014 */ lw $t0, 0x14($sp) +/* 053698 80052A98 314B0080 */ andi $t3, $t2, 0x80 +/* 05369C 80052A9C 1160000F */ beqz $t3, .L80052ADC +/* 0536A0 80052AA0 00000000 */ nop +/* 0536A4 80052AA4 848C0018 */ lh $t4, 0x18($a0) +/* 0536A8 80052AA8 8FAD0014 */ lw $t5, 0x14($sp) +/* 0536AC 80052AAC 24180028 */ li $t8, 40 +/* 0536B0 80052AB0 018D7023 */ subu $t6, $t4, $t5 +/* 0536B4 80052AB4 A48E0018 */ sh $t6, 0x18($a0) +/* 0536B8 80052AB8 848F0018 */ lh $t7, 0x18($a0) +/* 0536BC 80052ABC 00000000 */ nop +/* 0536C0 80052AC0 1DE00026 */ bgtz $t7, .L80052B5C +/* 0536C4 80052AC4 00000000 */ nop +/* 0536C8 80052AC8 A080003B */ sb $zero, 0x3b($a0) +/* 0536CC 80052ACC A0A001F2 */ sb $zero, 0x1f2($a1) +/* 0536D0 80052AD0 A4980018 */ sh $t8, 0x18($a0) +/* 0536D4 80052AD4 03E00008 */ jr $ra +/* 0536D8 80052AD8 A0A001F3 */ sb $zero, 0x1f3($a1) + +.L80052ADC: +/* 0536DC 80052ADC 84990018 */ lh $t9, 0x18($a0) +/* 0536E0 80052AE0 8FA30010 */ lw $v1, 0x10($sp) +/* 0536E4 80052AE4 03284821 */ addu $t1, $t9, $t0 +/* 0536E8 80052AE8 A4890018 */ sh $t1, 0x18($a0) +/* 0536EC 80052AEC 848A0018 */ lh $t2, 0x18($a0) +/* 0536F0 80052AF0 304C0004 */ andi $t4, $v0, 4 +/* 0536F4 80052AF4 0143082A */ slt $at, $t2, $v1 +/* 0536F8 80052AF8 14200018 */ bnez $at, .L80052B5C +/* 0536FC 80052AFC 246BFFFF */ addiu $t3, $v1, -1 +/* 053700 80052B00 15800016 */ bnez $t4, .L80052B5C +/* 053704 80052B04 A48B0018 */ sh $t3, 0x18($a0) +/* 053708 80052B08 90AD01F3 */ lbu $t5, 0x1f3($a1) +/* 05370C 80052B0C 00000000 */ nop +/* 053710 80052B10 35AE0080 */ ori $t6, $t5, 0x80 +/* 053714 80052B14 03E00008 */ jr $ra +/* 053718 80052B18 A0AE01F3 */ sb $t6, 0x1f3($a1) + +.L80052B1C: +/* 05371C 80052B1C 848F0018 */ lh $t7, 0x18($a0) +/* 053720 80052B20 8FA30010 */ lw $v1, 0x10($sp) +/* 053724 80052B24 01F8C821 */ addu $t9, $t7, $t8 +/* 053728 80052B28 A4990018 */ sh $t9, 0x18($a0) +/* 05372C 80052B2C 84880018 */ lh $t0, 0x18($a0) +/* 053730 80052B30 24090028 */ li $t1, 40 +/* 053734 80052B34 0103082A */ slt $at, $t0, $v1 +/* 053738 80052B38 14200008 */ bnez $at, .L80052B5C +/* 05373C 80052B3C 00000000 */ nop +/* 053740 80052B40 A080003B */ sb $zero, 0x3b($a0) +/* 053744 80052B44 A0A001F2 */ sb $zero, 0x1f2($a1) +/* 053748 80052B48 A4890018 */ sh $t1, 0x18($a0) +/* 05374C 80052B4C 03E00008 */ jr $ra +/* 053750 80052B50 A0A001F3 */ sb $zero, 0x1f3($a1) + +.L80052B54: +/* 053754 80052B54 A4870018 */ sh $a3, 0x18($a0) +/* 053758 80052B58 A086003B */ sb $a2, 0x3b($a0) +.L80052B5C: +/* 05375C 80052B5C 03E00008 */ jr $ra +/* 053760 80052B60 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_80052B64.s b/asm/non_matchings/unknown_043920/func_80052B64.s new file mode 100644 index 00000000..bdc0050a --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80052B64.s @@ -0,0 +1,142 @@ +glabel func_80052B64 +/* 053764 80052B64 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 053768 80052B68 AFBF001C */ sw $ra, 0x1c($sp) +/* 05376C 80052B6C AFB00018 */ sw $s0, 0x18($sp) +/* 053770 80052B70 AFA50024 */ sw $a1, 0x24($sp) +/* 053774 80052B74 AFA7002C */ sw $a3, 0x2c($sp) +/* 053778 80052B78 3C01800E */ lui $at, %hi(D_800E66F4) # $at, 0x800e +/* 05377C 80052B7C C4A4002C */ lwc1 $f4, 0x2c($a1) +/* 053780 80052B80 C42966F0 */ lwc1 $f9, %lo(D_800E66F0)($at) +/* 053784 80052B84 C42866F4 */ lwc1 $f8, %lo(D_800E66F4)($at) +/* 053788 80052B88 460021A1 */ cvt.d.s $f6, $f4 +/* 05378C 80052B8C 46283282 */ mul.d $f10, $f6, $f8 +/* 053790 80052B90 44809000 */ mtc1 $zero, $f18 +/* 053794 80052B94 80AE01D8 */ lb $t6, 0x1d8($a1) +/* 053798 80052B98 00A03825 */ move $a3, $a1 +/* 05379C 80052B9C 00808025 */ move $s0, $a0 +/* 0537A0 80052BA0 46205420 */ cvt.s.d $f16, $f10 +/* 0537A4 80052BA4 E4B20030 */ swc1 $f18, 0x30($a1) +/* 0537A8 80052BA8 15C00009 */ bnez $t6, .L80052BD0 +/* 0537AC 80052BAC E4B0002C */ swc1 $f16, 0x2c($a1) +/* 0537B0 80052BB0 84A40000 */ lh $a0, ($a1) +/* 0537B4 80052BB4 AFA70024 */ sw $a3, 0x24($sp) +/* 0537B8 80052BB8 AFA60028 */ sw $a2, 0x28($sp) +/* 0537BC 80052BBC 0C01C8D2 */ jal func_80072348 +/* 0537C0 80052BC0 00002825 */ move $a1, $zero +/* 0537C4 80052BC4 8FA60028 */ lw $a2, 0x28($sp) +/* 0537C8 80052BC8 8FA70024 */ lw $a3, 0x24($sp) +/* 0537CC 80052BCC 00000000 */ nop +.L80052BD0: +/* 0537D0 80052BD0 3C0F8012 */ lui $t7, %hi(D_8011D55C) # $t7, 0x8012 +/* 0537D4 80052BD4 8DEFD55C */ lw $t7, %lo(D_8011D55C)($t7) +/* 0537D8 80052BD8 84E301A2 */ lh $v1, 0x1a2($a3) +/* 0537DC 80052BDC 05E0001E */ bltz $t7, .L80052C58 +/* 0537E0 80052BE0 3C18800E */ lui $t8, %hi(D_800DCB98) # $t8, 0x800e +/* 0537E4 80052BE4 8F18CB98 */ lw $t8, %lo(D_800DCB98)($t8) +/* 0537E8 80052BE8 00000000 */ nop +/* 0537EC 80052BEC 2B010003 */ slti $at, $t8, 3 +/* 0537F0 80052BF0 10200007 */ beqz $at, .L80052C10 +/* 0537F4 80052BF4 00000000 */ nop +/* 0537F8 80052BF8 8E190074 */ lw $t9, 0x74($s0) +/* 0537FC 80052BFC 3C010004 */ lui $at, (0x0004FC00 >> 16) # lui $at, 4 +/* 053800 80052C00 3421FC00 */ ori $at, (0x0004FC00 & 0xFFFF) # ori $at, $at, 0xfc00 +/* 053804 80052C04 03214025 */ or $t0, $t9, $at +/* 053808 80052C08 10000013 */ b .L80052C58 +/* 05380C 80052C0C AE080074 */ sw $t0, 0x74($s0) +.L80052C10: +/* 053810 80052C10 90E201DE */ lbu $v0, 0x1de($a3) +/* 053814 80052C14 240B0001 */ li $t3, 1 +/* 053818 80052C18 284100FF */ slti $at, $v0, 0xff +/* 05381C 80052C1C 10200005 */ beqz $at, .L80052C34 +/* 053820 80052C20 00025040 */ sll $t2, $v0, 1 +/* 053824 80052C24 8E090074 */ lw $t1, 0x74($s0) +/* 053828 80052C28 014B6004 */ sllv $t4, $t3, $t2 +/* 05382C 80052C2C 012C6825 */ or $t5, $t1, $t4 +/* 053830 80052C30 AE0D0074 */ sw $t5, 0x74($s0) +.L80052C34: +/* 053834 80052C34 90E201DF */ lbu $v0, 0x1df($a3) +/* 053838 80052C38 24180002 */ li $t8, 2 +/* 05383C 80052C3C 284100FF */ slti $at, $v0, 0xff +/* 053840 80052C40 10200005 */ beqz $at, .L80052C58 +/* 053844 80052C44 00027840 */ sll $t7, $v0, 1 +/* 053848 80052C48 8E0E0074 */ lw $t6, 0x74($s0) +/* 05384C 80052C4C 01F8C804 */ sllv $t9, $t8, $t7 +/* 053850 80052C50 01D94025 */ or $t0, $t6, $t9 +/* 053854 80052C54 AE080074 */ sw $t0, 0x74($s0) +.L80052C58: +/* 053858 80052C58 80E201DB */ lb $v0, 0x1db($a3) +/* 05385C 80052C5C 00065080 */ sll $t2, $a2, 2 +/* 053860 80052C60 1840001A */ blez $v0, .L80052CCC +/* 053864 80052C64 01465021 */ addu $t2, $t2, $a2 +/* 053868 80052C68 84EB01A2 */ lh $t3, 0x1a2($a3) +/* 05386C 80052C6C 000A5200 */ sll $t2, $t2, 8 +/* 053870 80052C70 016A4821 */ addu $t1, $t3, $t2 +/* 053874 80052C74 A4E901A2 */ sh $t1, 0x1a2($a3) +/* 053878 80052C78 84EC01A2 */ lh $t4, 0x1a2($a3) +/* 05387C 80052C7C 00000000 */ nop +/* 053880 80052C80 1980002D */ blez $t4, .L80052D38 +/* 053884 80052C84 00000000 */ nop +/* 053888 80052C88 0461002B */ bgez $v1, .L80052D38 +/* 05388C 80052C8C 00000000 */ nop +/* 053890 80052C90 80ED01DB */ lb $t5, 0x1db($a3) +/* 053894 80052C94 3C0F8012 */ lui $t7, %hi(D_8011D534) # $t7, 0x8012 +/* 053898 80052C98 25B8FFFF */ addiu $t8, $t5, -1 +/* 05389C 80052C9C A0F801DB */ sb $t8, 0x1db($a3) +/* 0538A0 80052CA0 8DEFD534 */ lw $t7, %lo(D_8011D534)($t7) +/* 0538A4 80052CA4 00000000 */ nop +/* 0538A8 80052CA8 29E10033 */ slti $at, $t7, 0x33 +/* 0538AC 80052CAC 14200022 */ bnez $at, .L80052D38 +/* 0538B0 80052CB0 00000000 */ nop +/* 0538B4 80052CB4 80EE01DB */ lb $t6, 0x1db($a3) +/* 0538B8 80052CB8 24010001 */ li $at, 1 +/* 0538BC 80052CBC 15C1001E */ bne $t6, $at, .L80052D38 +/* 0538C0 80052CC0 00000000 */ nop +/* 0538C4 80052CC4 1000001C */ b .L80052D38 +/* 0538C8 80052CC8 A0E001DB */ sb $zero, 0x1db($a3) +.L80052CCC: +/* 0538CC 80052CCC 0441001A */ bgez $v0, .L80052D38 +/* 0538D0 80052CD0 00064080 */ sll $t0, $a2, 2 +/* 0538D4 80052CD4 84F901A2 */ lh $t9, 0x1a2($a3) +/* 0538D8 80052CD8 01064021 */ addu $t0, $t0, $a2 +/* 0538DC 80052CDC 00084200 */ sll $t0, $t0, 8 +/* 0538E0 80052CE0 03285823 */ subu $t3, $t9, $t0 +/* 0538E4 80052CE4 A4EB01A2 */ sh $t3, 0x1a2($a3) +/* 0538E8 80052CE8 84EA01A2 */ lh $t2, 0x1a2($a3) +/* 0538EC 80052CEC 00000000 */ nop +/* 0538F0 80052CF0 05410011 */ bgez $t2, .L80052D38 +/* 0538F4 80052CF4 00000000 */ nop +/* 0538F8 80052CF8 1860000F */ blez $v1, .L80052D38 +/* 0538FC 80052CFC 00000000 */ nop +/* 053900 80052D00 80E901DB */ lb $t1, 0x1db($a3) +/* 053904 80052D04 3C0D8012 */ lui $t5, %hi(D_8011D534) # $t5, 0x8012 +/* 053908 80052D08 252C0001 */ addiu $t4, $t1, 1 +/* 05390C 80052D0C A0EC01DB */ sb $t4, 0x1db($a3) +/* 053910 80052D10 8DADD534 */ lw $t5, %lo(D_8011D534)($t5) +/* 053914 80052D14 00000000 */ nop +/* 053918 80052D18 29A1FFCE */ slti $at, $t5, -0x32 +/* 05391C 80052D1C 10200006 */ beqz $at, .L80052D38 +/* 053920 80052D20 00000000 */ nop +/* 053924 80052D24 80F801DB */ lb $t8, 0x1db($a3) +/* 053928 80052D28 2401FFFF */ li $at, -1 +/* 05392C 80052D2C 17010002 */ bne $t8, $at, .L80052D38 +/* 053930 80052D30 00000000 */ nop +/* 053934 80052D34 A0E001DB */ sb $zero, 0x1db($a3) +.L80052D38: +/* 053938 80052D38 84EF01A2 */ lh $t7, 0x1a2($a3) +/* 05393C 80052D3C 3C018012 */ lui $at, %hi(D_8011D554) # $at, 0x8012 +/* 053940 80052D40 AC2FD554 */ sw $t7, %lo(D_8011D554)($at) +/* 053944 80052D44 3C018012 */ lui $at, %hi(D_8011D56C) # $at, 0x8012 +/* 053948 80052D48 C424D56C */ lwc1 $f4, %lo(D_8011D56C)($at) +/* 05394C 80052D4C C7A6002C */ lwc1 $f6, 0x2c($sp) +/* 053950 80052D50 C60A0020 */ lwc1 $f10, 0x20($s0) +/* 053954 80052D54 46062202 */ mul.s $f8, $f4, $f6 +/* 053958 80052D58 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 05395C 80052D5C 46085401 */ sub.s $f16, $f10, $f8 +/* 053960 80052D60 E6100020 */ swc1 $f16, 0x20($s0) +/* 053964 80052D64 AC20D534 */ sw $zero, %lo(D_8011D534)($at) +/* 053968 80052D68 A0E001E1 */ sb $zero, 0x1e1($a3) +/* 05396C 80052D6C 8FBF001C */ lw $ra, 0x1c($sp) +/* 053970 80052D70 8FB00018 */ lw $s0, 0x18($sp) +/* 053974 80052D74 03E00008 */ jr $ra +/* 053978 80052D78 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_043920/func_80052D7C.s b/asm/non_matchings/unknown_043920/func_80052D7C.s new file mode 100644 index 00000000..3354655e --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80052D7C.s @@ -0,0 +1,486 @@ +glabel func_80052D7C +/* 05397C 80052D7C 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 053980 80052D80 AFBF0024 */ sw $ra, 0x24($sp) +/* 053984 80052D84 AFA40040 */ sw $a0, 0x40($sp) +/* 053988 80052D88 AFA60048 */ sw $a2, 0x48($sp) +/* 05398C 80052D8C AFA7004C */ sw $a3, 0x4c($sp) +/* 053990 80052D90 A3A00033 */ sb $zero, 0x33($sp) +/* 053994 80052D94 90AE01FE */ lbu $t6, 0x1fe($a1) +/* 053998 80052D98 24010001 */ li $at, 1 +/* 05399C 80052D9C 15C10007 */ bne $t6, $at, .L80052DBC +/* 0539A0 80052DA0 00000000 */ nop +/* 0539A4 80052DA4 84AF0000 */ lh $t7, ($a1) +/* 0539A8 80052DA8 2401FFFF */ li $at, -1 +/* 0539AC 80052DAC 15E10003 */ bne $t7, $at, .L80052DBC +/* 0539B0 80052DB0 2418003C */ li $t8, 60 +/* 0539B4 80052DB4 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 +/* 0539B8 80052DB8 AC38D538 */ sw $t8, %lo(D_8011D538)($at) +.L80052DBC: +/* 0539BC 80052DBC 90B901F0 */ lbu $t9, 0x1f0($a1) +/* 0539C0 80052DC0 00000000 */ nop +/* 0539C4 80052DC4 13200024 */ beqz $t9, .L80052E58 +/* 0539C8 80052DC8 00000000 */ nop +/* 0539CC 80052DCC 84A80000 */ lh $t0, ($a1) +/* 0539D0 80052DD0 2401FFFF */ li $at, -1 +/* 0539D4 80052DD4 11010004 */ beq $t0, $at, .L80052DE8 +/* 0539D8 80052DD8 3C038012 */ lui $v1, %hi(D_8011D534) # $v1, 0x8012 +/* 0539DC 80052DDC 80A301E1 */ lb $v1, 0x1e1($a1) +/* 0539E0 80052DE0 10000004 */ b .L80052DF4 +/* 0539E4 80052DE4 00034880 */ sll $t1, $v1, 2 +.L80052DE8: +/* 0539E8 80052DE8 8C63D534 */ lw $v1, %lo(D_8011D534)($v1) +/* 0539EC 80052DEC 00000000 */ nop +/* 0539F0 80052DF0 00034880 */ sll $t1, $v1, 2 +.L80052DF4: +/* 0539F4 80052DF4 8FAA0048 */ lw $t2, 0x48($sp) +/* 0539F8 80052DF8 01234823 */ subu $t1, $t1, $v1 +/* 0539FC 80052DFC 00094840 */ sll $t1, $t1, 1 +/* 053A00 80052E00 012A0019 */ multu $t1, $t2 +/* 053A04 80052E04 84A401A4 */ lh $a0, 0x1a4($a1) +/* 053A08 80052E08 84AE01A0 */ lh $t6, 0x1a0($a1) +/* 053A0C 80052E0C 3082FFFF */ andi $v0, $a0, 0xffff +/* 053A10 80052E10 00021023 */ negu $v0, $v0 +/* 053A14 80052E14 34018001 */ li $at, 32769 +/* 053A18 80052E18 0041082A */ slt $at, $v0, $at +/* 053A1C 80052E1C 00005812 */ mflo $t3 +/* 053A20 80052E20 000B6843 */ sra $t5, $t3, 1 +/* 053A24 80052E24 01CD7823 */ subu $t7, $t6, $t5 +/* 053A28 80052E28 14200004 */ bnez $at, .L80052E3C +/* 053A2C 80052E2C A4AF01A0 */ sh $t7, 0x1a0($a1) +/* 053A30 80052E30 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 053A34 80052E34 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 053A38 80052E38 00411021 */ addu $v0, $v0, $at +.L80052E3C: +/* 053A3C 80052E3C 28418000 */ slti $at, $v0, -0x8000 +/* 053A40 80052E40 10200002 */ beqz $at, .L80052E4C +/* 053A44 80052E44 3401FFFF */ li $at, 65535 +/* 053A48 80052E48 00411021 */ addu $v0, $v0, $at +.L80052E4C: +/* 053A4C 80052E4C 0002C0C3 */ sra $t8, $v0, 3 +/* 053A50 80052E50 0098C821 */ addu $t9, $a0, $t8 +/* 053A54 80052E54 A4B901A4 */ sh $t9, 0x1a4($a1) +.L80052E58: +/* 053A58 80052E58 8CA20018 */ lw $v0, 0x18($a1) +/* 053A5C 80052E5C 00000000 */ nop +/* 053A60 80052E60 10400005 */ beqz $v0, .L80052E78 +/* 053A64 80052E64 00402025 */ move $a0, $v0 +/* 053A68 80052E68 0C001223 */ jal func_8000488C +/* 053A6C 80052E6C AFA50044 */ sw $a1, 0x44($sp) +/* 053A70 80052E70 8FA50044 */ lw $a1, 0x44($sp) +/* 053A74 80052E74 00000000 */ nop +.L80052E78: +/* 053A78 80052E78 8CA20010 */ lw $v0, 0x10($a1) +/* 053A7C 80052E7C 00000000 */ nop +/* 053A80 80052E80 10400005 */ beqz $v0, .L80052E98 +/* 053A84 80052E84 00402025 */ move $a0, $v0 +/* 053A88 80052E88 0C001223 */ jal func_8000488C +/* 053A8C 80052E8C AFA50044 */ sw $a1, 0x44($sp) +/* 053A90 80052E90 8FA50044 */ lw $a1, 0x44($sp) +/* 053A94 80052E94 00000000 */ nop +.L80052E98: +/* 053A98 80052E98 8CA20014 */ lw $v0, 0x14($a1) +/* 053A9C 80052E9C 00000000 */ nop +/* 053AA0 80052EA0 10400005 */ beqz $v0, .L80052EB8 +/* 053AA4 80052EA4 00402025 */ move $a0, $v0 +/* 053AA8 80052EA8 0C001223 */ jal func_8000488C +/* 053AAC 80052EAC AFA50044 */ sw $a1, 0x44($sp) +/* 053AB0 80052EB0 8FA50044 */ lw $a1, 0x44($sp) +/* 053AB4 80052EB4 00000000 */ nop +.L80052EB8: +/* 053AB8 80052EB8 90A201FE */ lbu $v0, 0x1fe($a1) +/* 053ABC 80052EBC 24010001 */ li $at, 1 +/* 053AC0 80052EC0 10410003 */ beq $v0, $at, .L80052ED0 +/* 053AC4 80052EC4 24010003 */ li $at, 3 +/* 053AC8 80052EC8 14410004 */ bne $v0, $at, .L80052EDC +/* 053ACC 80052ECC 00000000 */ nop +.L80052ED0: +/* 053AD0 80052ED0 80A801E1 */ lb $t0, 0x1e1($a1) +/* 053AD4 80052ED4 00000000 */ nop +/* 053AD8 80052ED8 A0A801E8 */ sb $t0, 0x1e8($a1) +.L80052EDC: +/* 053ADC 80052EDC C4A600C0 */ lwc1 $f6, 0xc0($a1) +/* 053AE0 80052EE0 44802800 */ mtc1 $zero, $f5 +/* 053AE4 80052EE4 44802000 */ mtc1 $zero, $f4 +/* 053AE8 80052EE8 46003221 */ cvt.d.s $f8, $f6 +/* 053AEC 80052EEC 46282032 */ c.eq.d $f4, $f8 +/* 053AF0 80052EF0 00000000 */ nop +/* 053AF4 80052EF4 45010063 */ bc1t .L80053084 +/* 053AF8 80052EF8 00000000 */ nop +/* 053AFC 80052EFC 8FA90040 */ lw $t1, 0x40($sp) +/* 053B00 80052F00 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 053B04 80052F04 C52A0020 */ lwc1 $f10, 0x20($t1) +/* 053B08 80052F08 44818800 */ mtc1 $at, $f17 +/* 053B0C 80052F0C 44808000 */ mtc1 $zero, $f16 +/* 053B10 80052F10 46005021 */ cvt.d.s $f0, $f10 +/* 053B14 80052F14 4620803C */ c.lt.d $f16, $f0 +/* 053B18 80052F18 44803000 */ mtc1 $zero, $f6 +/* 053B1C 80052F1C 45000006 */ bc1f .L80052F38 +/* 053B20 80052F20 240F0001 */ li $t7, 1 +/* 053B24 80052F24 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 053B28 80052F28 44819000 */ mtc1 $at, $f18 +/* 053B2C 80052F2C 00000000 */ nop +/* 053B30 80052F30 E5320020 */ swc1 $f18, 0x20($t1) +/* 053B34 80052F34 46009021 */ cvt.d.s $f0, $f18 +.L80052F38: +/* 053B38 80052F38 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 053B3C 80052F3C 44813800 */ mtc1 $at, $f7 +/* 053B40 80052F40 8FAA0040 */ lw $t2, 0x40($sp) +/* 053B44 80052F44 4626003C */ c.lt.d $f0, $f6 +/* 053B48 80052F48 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 053B4C 80052F4C 45000004 */ bc1f .L80052F60 +/* 053B50 80052F50 3C0D8012 */ lui $t5, %hi(D_8011D538) # $t5, 0x8012 +/* 053B54 80052F54 44812000 */ mtc1 $at, $f4 +/* 053B58 80052F58 00000000 */ nop +/* 053B5C 80052F5C E5440020 */ swc1 $f4, 0x20($t2) +.L80052F60: +/* 053B60 80052F60 80AB01E1 */ lb $t3, 0x1e1($a1) +/* 053B64 80052F64 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 +/* 053B68 80052F68 A0AB01E8 */ sb $t3, 0x1e8($a1) +/* 053B6C 80052F6C 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) +/* 053B70 80052F70 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 053B74 80052F74 304C8000 */ andi $t4, $v0, 0x8000 +/* 053B78 80052F78 1180000C */ beqz $t4, .L80052FAC +/* 053B7C 80052F7C 304E4000 */ andi $t6, $v0, 0x4000 +/* 053B80 80052F80 C4A8002C */ lwc1 $f8, 0x2c($a1) +/* 053B84 80052F84 44818800 */ mtc1 $at, $f17 +/* 053B88 80052F88 44808000 */ mtc1 $zero, $f16 +/* 053B8C 80052F8C 460042A1 */ cvt.d.s $f10, $f8 +/* 053B90 80052F90 46305481 */ sub.d $f18, $f10, $f16 +/* 053B94 80052F94 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 +/* 053B98 80052F98 462091A0 */ cvt.s.d $f6, $f18 +/* 053B9C 80052F9C E4A6002C */ swc1 $f6, 0x2c($a1) +/* 053BA0 80052FA0 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) +/* 053BA4 80052FA4 00000000 */ nop +/* 053BA8 80052FA8 304E4000 */ andi $t6, $v0, 0x4000 +.L80052FAC: +/* 053BAC 80052FAC 11C0000E */ beqz $t6, .L80052FE8 +/* 053BB0 80052FB0 00000000 */ nop +/* 053BB4 80052FB4 8DADD538 */ lw $t5, %lo(D_8011D538)($t5) +/* 053BB8 80052FB8 00000000 */ nop +/* 053BBC 80052FBC 29A1FFE7 */ slti $at, $t5, -0x19 +/* 053BC0 80052FC0 10200009 */ beqz $at, .L80052FE8 +/* 053BC4 80052FC4 00000000 */ nop +/* 053BC8 80052FC8 C4A4002C */ lwc1 $f4, 0x2c($a1) +/* 053BCC 80052FCC 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 053BD0 80052FD0 44815800 */ mtc1 $at, $f11 +/* 053BD4 80052FD4 44805000 */ mtc1 $zero, $f10 +/* 053BD8 80052FD8 46002221 */ cvt.d.s $f8, $f4 +/* 053BDC 80052FDC 462A4400 */ add.d $f16, $f8, $f10 +/* 053BE0 80052FE0 462084A0 */ cvt.s.d $f18, $f16 +/* 053BE4 80052FE4 E4B2002C */ swc1 $f18, 0x2c($a1) +.L80052FE8: +/* 053BE8 80052FE8 3C01800E */ lui $at, %hi(D_800E66FC) # $at, 0x800e +/* 053BEC 80052FEC A3AF0033 */ sb $t7, 0x33($sp) +/* 053BF0 80052FF0 C4A60030 */ lwc1 $f6, 0x30($a1) +/* 053BF4 80052FF4 C42166F8 */ lwc1 $f1, %lo(D_800E66F8)($at) +/* 053BF8 80052FF8 C42066FC */ lwc1 $f0, %lo(D_800E66FC)($at) +/* 053BFC 80052FFC 46003121 */ cvt.d.s $f4, $f6 +/* 053C00 80053000 46202202 */ mul.d $f8, $f4, $f0 +/* 053C04 80053004 C4B0002C */ lwc1 $f16, 0x2c($a1) +/* 053C08 80053008 3C01800E */ lui $at, %hi(D_800E6700) # $at, 0x800e +/* 053C0C 8005300C 460084A1 */ cvt.d.s $f18, $f16 +/* 053C10 80053010 3C088012 */ lui $t0, %hi(D_8011D534) # $t0, 0x8012 +/* 053C14 80053014 46209182 */ mul.d $f6, $f18, $f0 +/* 053C18 80053018 462042A0 */ cvt.s.d $f10, $f8 +/* 053C1C 8005301C 3C078012 */ lui $a3, %hi(D_8011D504) # $a3, 0x8012 +/* 053C20 80053020 E4AA0030 */ swc1 $f10, 0x30($a1) +/* 053C24 80053024 3C068012 */ lui $a2, %hi(D_8011D4F8) # $a2, 0x8012 +/* 053C28 80053028 46203120 */ cvt.s.d $f4, $f6 +/* 053C2C 8005302C 24C6D4F8 */ addiu $a2, %lo(D_8011D4F8) # addiu $a2, $a2, -0x2b08 +/* 053C30 80053030 E4A4002C */ swc1 $f4, 0x2c($a1) +/* 053C34 80053034 8FA40040 */ lw $a0, 0x40($sp) +/* 053C38 80053038 C4306704 */ lwc1 $f16, %lo(D_800E6704)($at) +/* 053C3C 8005303C C4880020 */ lwc1 $f8, 0x20($a0) +/* 053C40 80053040 C4316700 */ lwc1 $f17, %lo(D_800E6700)($at) +/* 053C44 80053044 460042A1 */ cvt.d.s $f10, $f8 +/* 053C48 80053048 46305482 */ mul.d $f18, $f10, $f16 +/* 053C4C 8005304C 3C0140C0 */ li $at, 0x40C00000 # 6.000000 +/* 053C50 80053050 44812000 */ mtc1 $at, $f4 +/* 053C54 80053054 462091A0 */ cvt.s.d $f6, $f18 +/* 053C58 80053058 E4860020 */ swc1 $f6, 0x20($a0) +/* 053C5C 8005305C 8D08D534 */ lw $t0, %lo(D_8011D534)($t0) +/* 053C60 80053060 8FB90048 */ lw $t9, 0x48($sp) +/* 053C64 80053064 80E7D504 */ lb $a3, %lo(D_8011D504)($a3) +/* 053C68 80053068 AFA50044 */ sw $a1, 0x44($sp) +/* 053C6C 8005306C E7A40018 */ swc1 $f4, 0x18($sp) +/* 053C70 80053070 AFA80014 */ sw $t0, 0x14($sp) +/* 053C74 80053074 0C012538 */ jal func_800494E0 +/* 053C78 80053078 AFB90010 */ sw $t9, 0x10($sp) +/* 053C7C 8005307C 8FA50044 */ lw $a1, 0x44($sp) +/* 053C80 80053080 00000000 */ nop +.L80053084: +/* 053C84 80053084 84A90000 */ lh $t1, ($a1) +/* 053C88 80053088 2401FFFF */ li $at, -1 +/* 053C8C 8005308C 15210004 */ bne $t1, $at, .L800530A0 +/* 053C90 80053090 3C068012 */ lui $a2, %hi(D_8011D554) # $a2, 0x8012 +/* 053C94 80053094 80AA01E1 */ lb $t2, 0x1e1($a1) +/* 053C98 80053098 00000000 */ nop +/* 053C9C 8005309C A0AA01E8 */ sb $t2, 0x1e8($a1) +.L800530A0: +/* 053CA0 800530A0 80A201D3 */ lb $v0, 0x1d3($a1) +/* 053CA4 800530A4 3C01800E */ lui $at, %hi(D_800E670C) # $at, 0x800e +/* 053CA8 800530A8 18400006 */ blez $v0, .L800530C4 +/* 053CAC 800530AC 24C6D554 */ addiu $a2, %lo(D_8011D554) # addiu $a2, $a2, -0x2aac +/* 053CB0 800530B0 8FAB0048 */ lw $t3, 0x48($sp) +/* 053CB4 800530B4 00000000 */ nop +/* 053CB8 800530B8 004B6023 */ subu $t4, $v0, $t3 +/* 053CBC 800530BC 10000002 */ b .L800530C8 +/* 053CC0 800530C0 A0AC01D3 */ sb $t4, 0x1d3($a1) +.L800530C4: +/* 053CC4 800530C4 A0A001D3 */ sb $zero, 0x1d3($a1) +.L800530C8: +/* 053CC8 800530C8 C4AA002C */ lwc1 $f10, 0x2c($a1) +/* 053CCC 800530CC 80A201E8 */ lb $v0, 0x1e8($a1) +/* 053CD0 800530D0 C4296708 */ lwc1 $f9, %lo(D_800E6708)($at) +/* 053CD4 800530D4 C428670C */ lwc1 $f8, %lo(D_800E670C)($at) +/* 053CD8 800530D8 46005421 */ cvt.d.s $f16, $f10 +/* 053CDC 800530DC 4630403C */ c.lt.d $f8, $f16 +/* 053CE0 800530E0 00027080 */ sll $t6, $v0, 2 +/* 053CE4 800530E4 01C27023 */ subu $t6, $t6, $v0 +/* 053CE8 800530E8 45000007 */ bc1f .L80053108 +/* 053CEC 800530EC 000E1040 */ sll $v0, $t6, 1 +/* 053CF0 800530F0 80A201E1 */ lb $v0, 0x1e1($a1) +/* 053CF4 800530F4 00000000 */ nop +/* 053CF8 800530F8 00021023 */ negu $v0, $v0 +/* 053CFC 800530FC 00026880 */ sll $t5, $v0, 2 +/* 053D00 80053100 01A26823 */ subu $t5, $t5, $v0 +/* 053D04 80053104 000D1040 */ sll $v0, $t5, 1 +.L80053108: +/* 053D08 80053108 84AF01A0 */ lh $t7, 0x1a0($a1) +/* 053D0C 8005310C 8CA80110 */ lw $t0, 0x110($a1) +/* 053D10 80053110 01E2C823 */ subu $t9, $t7, $v0 +/* 053D14 80053114 A4B901A0 */ sh $t9, 0x1a0($a1) +/* 053D18 80053118 ACC80000 */ sw $t0, ($a2) +/* 053D1C 8005311C 80A901D3 */ lb $t1, 0x1d3($a1) +/* 053D20 80053120 3C01C034 */ li $at, 0xC0340000 # -2.812500 +/* 053D24 80053124 1120000F */ beqz $t1, .L80053164 +/* 053D28 80053128 3C038012 */ lui $v1, %hi(D_8011D538) # $v1, 0x8012 +/* 053D2C 8005312C C4B2002C */ lwc1 $f18, 0x2c($a1) +/* 053D30 80053130 44813800 */ mtc1 $at, $f7 +/* 053D34 80053134 44803000 */ mtc1 $zero, $f6 +/* 053D38 80053138 46009021 */ cvt.d.s $f0, $f18 +/* 053D3C 8005313C 4620303C */ c.lt.d $f6, $f0 +/* 053D40 80053140 3C01800E */ lui $at, %hi(D_800E6714) # $at, 0x800e +/* 053D44 80053144 45000007 */ bc1f .L80053164 +/* 053D48 80053148 00000000 */ nop +/* 053D4C 8005314C C4256710 */ lwc1 $f5, %lo(D_800E6710)($at) +/* 053D50 80053150 C4246714 */ lwc1 $f4, %lo(D_800E6714)($at) +/* 053D54 80053154 00000000 */ nop +/* 053D58 80053158 46240281 */ sub.d $f10, $f0, $f4 +/* 053D5C 8005315C 46205220 */ cvt.s.d $f8, $f10 +/* 053D60 80053160 E4A8002C */ swc1 $f8, 0x2c($a1) +.L80053164: +/* 053D64 80053164 8C63D538 */ lw $v1, %lo(D_8011D538)($v1) +/* 053D68 80053168 8FAA0040 */ lw $t2, 0x40($sp) +/* 053D6C 8005316C 28610032 */ slti $at, $v1, 0x32 +/* 053D70 80053170 10200004 */ beqz $at, .L80053184 +/* 053D74 80053174 2861FFCF */ slti $at, $v1, -0x31 +/* 053D78 80053178 14200002 */ bnez $at, .L80053184 +/* 053D7C 8005317C 00000000 */ nop +/* 053D80 80053180 00001825 */ move $v1, $zero +.L80053184: +/* 053D84 80053184 3C01800E */ lui $at, %hi(D_800E671C) # $at, 0x800e +/* 053D88 80053188 C5500020 */ lwc1 $f16, 0x20($t2) +/* 053D8C 8005318C C4336718 */ lwc1 $f19, %lo(D_800E6718)($at) +/* 053D90 80053190 C432671C */ lwc1 $f18, %lo(D_800E671C)($at) +/* 053D94 80053194 46008021 */ cvt.d.s $f0, $f16 +/* 053D98 80053198 46320182 */ mul.d $f6, $f0, $f18 +/* 053D9C 8005319C C7A4004C */ lwc1 $f4, 0x4c($sp) +/* 053DA0 800531A0 3C018012 */ lui $at, %hi(D_8011D56C) # $at, 0x8012 +/* 053DA4 800531A4 460022A1 */ cvt.d.s $f10, $f4 +/* 053DA8 800531A8 462A3202 */ mul.d $f8, $f6, $f10 +/* 053DAC 800531AC 46280401 */ sub.d $f16, $f0, $f8 +/* 053DB0 800531B0 462084A0 */ cvt.s.d $f18, $f16 +/* 053DB4 800531B4 E5520020 */ swc1 $f18, 0x20($t2) +/* 053DB8 800531B8 90AB01F1 */ lbu $t3, 0x1f1($a1) +/* 053DBC 800531BC C422D56C */ lwc1 $f2, %lo(D_8011D56C)($at) +/* 053DC0 800531C0 15600005 */ bnez $t3, .L800531D8 +/* 053DC4 800531C4 3C01800E */ lui $at, %hi(D_800E6720) # $at, 0x800e +/* 053DC8 800531C8 90AC01F0 */ lbu $t4, 0x1f0($a1) +/* 053DCC 800531CC 00000000 */ nop +/* 053DD0 800531D0 11800010 */ beqz $t4, .L80053214 +/* 053DD4 800531D4 00000000 */ nop +.L800531D8: +/* 053DD8 800531D8 8FAD0048 */ lw $t5, 0x48($sp) +/* 053DDC 800531DC 84AE0160 */ lh $t6, 0x160($a1) +/* 053DE0 800531E0 000D7880 */ sll $t7, $t5, 2 +/* 053DE4 800531E4 01ED7821 */ addu $t7, $t7, $t5 +/* 053DE8 800531E8 000F7A00 */ sll $t7, $t7, 8 +/* 053DEC 800531EC C4226720 */ lwc1 $f2, %lo(D_800E6720)($at) +/* 053DF0 800531F0 01CFC021 */ addu $t8, $t6, $t7 +/* 053DF4 800531F4 A4B80160 */ sh $t8, 0x160($a1) +/* 053DF8 800531F8 8FA80048 */ lw $t0, 0x48($sp) +/* 053DFC 800531FC 84B90162 */ lh $t9, 0x162($a1) +/* 053E00 80053200 00084880 */ sll $t1, $t0, 2 +/* 053E04 80053204 01284823 */ subu $t1, $t1, $t0 +/* 053E08 80053208 00094A40 */ sll $t1, $t1, 9 +/* 053E0C 8005320C 03295021 */ addu $t2, $t9, $t1 +/* 053E10 80053210 A4AA0162 */ sh $t2, 0x162($a1) +.L80053214: +/* 053E14 80053214 90A201FE */ lbu $v0, 0x1fe($a1) +/* 053E18 80053218 24010001 */ li $at, 1 +/* 053E1C 8005321C 10410002 */ beq $v0, $at, .L80053228 +/* 053E20 80053220 24010003 */ li $at, 3 +/* 053E24 80053224 14410023 */ bne $v0, $at, .L800532B4 +.L80053228: +/* 053E28 80053228 3C01800E */ lui $at, %hi(D_800E672C) # $at, 0x800e +/* 053E2C 8005322C C4A40030 */ lwc1 $f4, 0x30($a1) +/* 053E30 80053230 C4216728 */ lwc1 $f1, %lo(D_800E6728)($at) +/* 053E34 80053234 C420672C */ lwc1 $f0, %lo(D_800E672C)($at) +/* 053E38 80053238 460021A1 */ cvt.d.s $f6, $f4 +/* 053E3C 8005323C 46203282 */ mul.d $f10, $f6, $f0 +/* 053E40 80053240 C4B0002C */ lwc1 $f16, 0x2c($a1) +/* 053E44 80053244 28610033 */ slti $at, $v1, 0x33 +/* 053E48 80053248 460084A1 */ cvt.d.s $f18, $f16 +/* 053E4C 8005324C 240B0001 */ li $t3, 1 +/* 053E50 80053250 46209102 */ mul.d $f4, $f18, $f0 +/* 053E54 80053254 46205220 */ cvt.s.d $f8, $f10 +/* 053E58 80053258 E4A80030 */ swc1 $f8, 0x30($a1) +/* 053E5C 8005325C 462021A0 */ cvt.s.d $f6, $f4 +/* 053E60 80053260 E4A6002C */ swc1 $f6, 0x2c($a1) +/* 053E64 80053264 14200009 */ bnez $at, .L8005328C +/* 053E68 80053268 A3AB0033 */ sb $t3, 0x33($sp) +/* 053E6C 8005326C 3C01800E */ lui $at, %hi(D_800E6734) # $at, 0x800e +/* 053E70 80053270 C4AA002C */ lwc1 $f10, 0x2c($a1) +/* 053E74 80053274 C4316730 */ lwc1 $f17, %lo(D_800E6730)($at) +/* 053E78 80053278 C4306734 */ lwc1 $f16, %lo(D_800E6734)($at) +/* 053E7C 8005327C 46005221 */ cvt.d.s $f8, $f10 +/* 053E80 80053280 46304481 */ sub.d $f18, $f8, $f16 +/* 053E84 80053284 46209120 */ cvt.s.d $f4, $f18 +/* 053E88 80053288 E4A4002C */ swc1 $f4, 0x2c($a1) +.L8005328C: +/* 053E8C 8005328C 2861FFCE */ slti $at, $v1, -0x32 +/* 053E90 80053290 10200008 */ beqz $at, .L800532B4 +/* 053E94 80053294 3C01800E */ lui $at, %hi(D_800E673C) # $at, 0x800e +/* 053E98 80053298 C4A6002C */ lwc1 $f6, 0x2c($a1) +/* 053E9C 8005329C C4296738 */ lwc1 $f9, %lo(D_800E6738)($at) +/* 053EA0 800532A0 C428673C */ lwc1 $f8, %lo(D_800E673C)($at) +/* 053EA4 800532A4 460032A1 */ cvt.d.s $f10, $f6 +/* 053EA8 800532A8 46285400 */ add.d $f16, $f10, $f8 +/* 053EAC 800532AC 462084A0 */ cvt.s.d $f18, $f16 +/* 053EB0 800532B0 E4B2002C */ swc1 $f18, 0x2c($a1) +.L800532B4: +/* 053EB4 800532B4 83AC0033 */ lb $t4, 0x33($sp) +/* 053EB8 800532B8 8FAD0040 */ lw $t5, 0x40($sp) +/* 053EBC 800532BC 11800015 */ beqz $t4, .L80053314 +/* 053EC0 800532C0 28610033 */ slti $at, $v1, 0x33 +/* 053EC4 800532C4 ADA00074 */ sw $zero, 0x74($t5) +/* 053EC8 800532C8 A0A001E6 */ sb $zero, 0x1e6($a1) +/* 053ECC 800532CC 8FAE0048 */ lw $t6, 0x48($sp) +/* 053ED0 800532D0 8CA2010C */ lw $v0, 0x10c($a1) +/* 053ED4 800532D4 00A02025 */ move $a0, $a1 +/* 053ED8 800532D8 004E0019 */ multu $v0, $t6 +/* 053EDC 800532DC 00007812 */ mflo $t7 +/* 053EE0 800532E0 000FC103 */ sra $t8, $t7, 4 +/* 053EE4 800532E4 00584023 */ subu $t0, $v0, $t8 +/* 053EE8 800532E8 ACA8010C */ sw $t0, 0x10c($a1) +/* 053EEC 800532EC ACC00000 */ sw $zero, ($a2) +/* 053EF0 800532F0 E7A2002C */ swc1 $f2, 0x2c($sp) +/* 053EF4 800532F4 AFA50044 */ sw $a1, 0x44($sp) +/* 053EF8 800532F8 0C014D1E */ jal func_80053478 +/* 053EFC 800532FC AFA30038 */ sw $v1, 0x38($sp) +/* 053F00 80053300 8FA30038 */ lw $v1, 0x38($sp) +/* 053F04 80053304 8FA50044 */ lw $a1, 0x44($sp) +/* 053F08 80053308 C7A2002C */ lwc1 $f2, 0x2c($sp) +/* 053F0C 8005330C 10000011 */ b .L80053354 +/* 053F10 80053310 80B901D3 */ lb $t9, 0x1d3($a1) +.L80053314: +/* 053F14 80053314 14200006 */ bnez $at, .L80053330 +/* 053F18 80053318 3C01800E */ lui $at, %hi(D_800E6744) # $at, 0x800e +/* 053F1C 8005331C C4276740 */ lwc1 $f7, %lo(D_800E6740)($at) +/* 053F20 80053320 C4266744 */ lwc1 $f6, %lo(D_800E6744)($at) +/* 053F24 80053324 46001121 */ cvt.d.s $f4, $f2 +/* 053F28 80053328 46262282 */ mul.d $f10, $f4, $f6 +/* 053F2C 8005332C 462050A0 */ cvt.s.d $f2, $f10 +.L80053330: +/* 053F30 80053330 2861FFCE */ slti $at, $v1, -0x32 +/* 053F34 80053334 10200006 */ beqz $at, .L80053350 +/* 053F38 80053338 3C01800E */ lui $at, %hi(D_800E674C) # $at, 0x800e +/* 053F3C 8005333C C4316748 */ lwc1 $f17, %lo(D_800E6748)($at) +/* 053F40 80053340 C430674C */ lwc1 $f16, %lo(D_800E674C)($at) +/* 053F44 80053344 46001221 */ cvt.d.s $f8, $f2 +/* 053F48 80053348 46304482 */ mul.d $f18, $f8, $f16 +/* 053F4C 8005334C 462090A0 */ cvt.s.d $f2, $f18 +.L80053350: +/* 053F50 80053350 80B901D3 */ lb $t9, 0x1d3($a1) +.L80053354: +/* 053F54 80053354 00031823 */ negu $v1, $v1 +/* 053F58 80053358 13200007 */ beqz $t9, .L80053378 +/* 053F5C 8005335C 00034980 */ sll $t1, $v1, 6 +/* 053F60 80053360 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 053F64 80053364 44813800 */ mtc1 $at, $f7 +/* 053F68 80053368 44803000 */ mtc1 $zero, $f6 +/* 053F6C 8005336C 46001121 */ cvt.d.s $f4, $f2 +/* 053F70 80053370 46262282 */ mul.d $f10, $f4, $f6 +/* 053F74 80053374 462050A0 */ cvt.s.d $f2, $f10 +.L80053378: +/* 053F78 80053378 8FAB0040 */ lw $t3, 0x40($sp) +/* 053F7C 8005337C 312AFFFF */ andi $t2, $t1, 0xffff +/* 053F80 80053380 85640002 */ lh $a0, 2($t3) +/* 053F84 80053384 34018001 */ li $at, 32769 +/* 053F88 80053388 308CFFFF */ andi $t4, $a0, 0xffff +/* 053F8C 8005338C 014C1023 */ subu $v0, $t2, $t4 +/* 053F90 80053390 0041082A */ slt $at, $v0, $at +/* 053F94 80053394 14200003 */ bnez $at, .L800533A4 +/* 053F98 80053398 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 053F9C 8005339C 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 053FA0 800533A0 00411021 */ addu $v0, $v0, $at +.L800533A4: +/* 053FA4 800533A4 28418000 */ slti $at, $v0, -0x8000 +/* 053FA8 800533A8 10200002 */ beqz $at, .L800533B4 +/* 053FAC 800533AC 3401FFFF */ li $at, 65535 +/* 053FB0 800533B0 00411021 */ addu $v0, $v0, $at +.L800533B4: +/* 053FB4 800533B4 8FAF0040 */ lw $t7, 0x40($sp) +/* 053FB8 800533B8 000268C3 */ sra $t5, $v0, 3 +/* 053FBC 800533BC 008D7021 */ addu $t6, $a0, $t5 +/* 053FC0 800533C0 A5EE0002 */ sh $t6, 2($t7) +/* 053FC4 800533C4 C7B0004C */ lwc1 $f16, 0x4c($sp) +/* 053FC8 800533C8 C5E80020 */ lwc1 $f8, 0x20($t7) +/* 053FCC 800533CC 46101482 */ mul.s $f18, $f2, $f16 +/* 053FD0 800533D0 44803800 */ mtc1 $zero, $f7 +/* 053FD4 800533D4 44803000 */ mtc1 $zero, $f6 +/* 053FD8 800533D8 3C014034 */ li $at, 0x40340000 # 2.812500 +/* 053FDC 800533DC 46124101 */ sub.s $f4, $f8, $f18 +/* 053FE0 800533E0 E5E40020 */ swc1 $f4, 0x20($t7) +/* 053FE4 800533E4 C4AA00C0 */ lwc1 $f10, 0xc0($a1) +/* 053FE8 800533E8 00000000 */ nop +/* 053FEC 800533EC 46005421 */ cvt.d.s $f16, $f10 +/* 053FF0 800533F0 46303032 */ c.eq.d $f6, $f16 +/* 053FF4 800533F4 00000000 */ nop +/* 053FF8 800533F8 45000019 */ bc1f .L80053460 +/* 053FFC 800533FC 8FA80040 */ lw $t0, 0x40($sp) +/* 054000 80053400 44815800 */ mtc1 $at, $f11 +/* 054004 80053404 44805000 */ mtc1 $zero, $f10 +/* 054008 80053408 46002207 */ neg.s $f8, $f4 +/* 05400C 8005340C 460044A1 */ cvt.d.s $f18, $f8 +/* 054010 80053410 462A9182 */ mul.d $f6, $f18, $f10 +/* 054014 80053414 4458F800 */ cfc1 $t8, $31 +/* 054018 80053418 00000000 */ nop +/* 05401C 8005341C 37010003 */ ori $at, $t8, 3 +/* 054020 80053420 38210002 */ xori $at, $at, 2 +/* 054024 80053424 44C1F800 */ ctc1 $at, $31 +/* 054028 80053428 00000000 */ nop +/* 05402C 8005342C 46203424 */ cvt.w.d $f16, $f6 +/* 054030 80053430 44038000 */ mfc1 $v1, $f16 +/* 054034 80053434 44D8F800 */ ctc1 $t8, $31 +/* 054038 80053438 28610032 */ slti $at, $v1, 0x32 +/* 05403C 8005343C 10200003 */ beqz $at, .L8005344C +/* 054040 80053440 28610080 */ slti $at, $v1, 0x80 +/* 054044 80053444 24030032 */ li $v1, 50 +/* 054048 80053448 28610080 */ slti $at, $v1, 0x80 +.L8005344C: +/* 05404C 8005344C 14200002 */ bnez $at, .L80053458 +/* 054050 80053450 00000000 */ nop +/* 054054 80053454 2403007F */ li $v1, 127 +.L80053458: +/* 054058 80053458 A0A301E0 */ sb $v1, 0x1e0($a1) +/* 05405C 8005345C 8FA80040 */ lw $t0, 0x40($sp) +.L80053460: +/* 054060 80053460 00000000 */ nop +/* 054064 80053464 AD000074 */ sw $zero, 0x74($t0) +/* 054068 80053468 8FBF0024 */ lw $ra, 0x24($sp) +/* 05406C 8005346C 27BD0040 */ addiu $sp, $sp, 0x40 +/* 054070 80053470 03E00008 */ jr $ra +/* 054074 80053474 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_80053478.s b/asm/non_matchings/unknown_043920/func_80053478.s new file mode 100644 index 00000000..21e2b4d3 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80053478.s @@ -0,0 +1,91 @@ +glabel func_80053478 +/* 054078 80053478 C480002C */ lwc1 $f0, 0x2c($a0) +/* 05407C 8005347C 44806800 */ mtc1 $zero, $f13 +/* 054080 80053480 44806000 */ mtc1 $zero, $f12 +/* 054084 80053484 460000A1 */ cvt.d.s $f2, $f0 +/* 054088 80053488 462C103C */ c.lt.d $f2, $f12 +/* 05408C 8005348C 3C01800E */ lui $at, %hi(D_800E6754) # $at, 0x800e +/* 054090 80053490 45000003 */ bc1f .L800534A0 +/* 054094 80053494 00000000 */ nop +/* 054098 80053498 46000007 */ neg.s $f0, $f0 +/* 05409C 8005349C 460000A1 */ cvt.d.s $f2, $f0 +.L800534A0: +/* 0540A0 800534A0 C4256750 */ lwc1 $f5, %lo(D_800E6750)($at) +/* 0540A4 800534A4 C4246754 */ lwc1 $f4, %lo(D_800E6754)($at) +/* 0540A8 800534A8 3C01800E */ lui $at, %hi(D_800E6758) # $at, 0x800e +/* 0540AC 800534AC 4622203C */ c.lt.d $f4, $f2 +/* 0540B0 800534B0 00000000 */ nop +/* 0540B4 800534B4 45000004 */ bc1f .L800534C8 +/* 0540B8 800534B8 00000000 */ nop +/* 0540BC 800534BC C4206758 */ lwc1 $f0, %lo(D_800E6758)($at) +/* 0540C0 800534C0 00000000 */ nop +/* 0540C4 800534C4 460000A1 */ cvt.d.s $f2, $f0 +.L800534C8: +/* 0540C8 800534C8 3C01800E */ lui $at, %hi(D_800E6764) # $at, 0x800e +/* 0540CC 800534CC C4276760 */ lwc1 $f7, %lo(D_800E6760)($at) +/* 0540D0 800534D0 C4266764 */ lwc1 $f6, %lo(D_800E6764)($at) +/* 0540D4 800534D4 3C014268 */ li $at, 0x42680000 # 58.000000 +/* 0540D8 800534D8 46261201 */ sub.d $f8, $f2, $f6 +/* 0540DC 800534DC 46204020 */ cvt.s.d $f0, $f8 +/* 0540E0 800534E0 460002A1 */ cvt.d.s $f10, $f0 +/* 0540E4 800534E4 462C503C */ c.lt.d $f10, $f12 +/* 0540E8 800534E8 00000000 */ nop +/* 0540EC 800534EC 45000003 */ bc1f .L800534FC +/* 0540F0 800534F0 00000000 */ nop +/* 0540F4 800534F4 44800000 */ mtc1 $zero, $f0 +/* 0540F8 800534F8 00000000 */ nop +.L800534FC: +/* 0540FC 800534FC 808E01E6 */ lb $t6, 0x1e6($a0) +/* 054100 80053500 00000000 */ nop +/* 054104 80053504 11C00010 */ beqz $t6, .L80053548 +/* 054108 80053508 00000000 */ nop +/* 05410C 8005350C 3C014288 */ li $at, 0x42880000 # 68.000000 +/* 054110 80053510 44818000 */ mtc1 $at, $f16 +/* 054114 80053514 00000000 */ nop +/* 054118 80053518 46100482 */ mul.s $f18, $f0, $f16 +/* 05411C 8005351C 444FF800 */ cfc1 $t7, $31 +/* 054120 80053520 00000000 */ nop +/* 054124 80053524 35E10003 */ ori $at, $t7, 3 +/* 054128 80053528 38210002 */ xori $at, $at, 2 +/* 05412C 8005352C 44C1F800 */ ctc1 $at, $31 +/* 054130 80053530 00000000 */ nop +/* 054134 80053534 46009124 */ cvt.w.s $f4, $f18 +/* 054138 80053538 44022000 */ mfc1 $v0, $f4 +/* 05413C 8005353C 44CFF800 */ ctc1 $t7, $31 +/* 054140 80053540 1000000F */ b .L80053580 +/* 054144 80053544 808801E1 */ lb $t0, 0x1e1($a0) +.L80053548: +/* 054148 80053548 44813000 */ mtc1 $at, $f6 +/* 05414C 8005354C 00000000 */ nop +/* 054150 80053550 46060202 */ mul.s $f8, $f0, $f6 +/* 054154 80053554 4458F800 */ cfc1 $t8, $31 +/* 054158 80053558 00000000 */ nop +/* 05415C 8005355C 37010003 */ ori $at, $t8, 3 +/* 054160 80053560 38210002 */ xori $at, $at, 2 +/* 054164 80053564 44C1F800 */ ctc1 $at, $31 +/* 054168 80053568 00000000 */ nop +/* 05416C 8005356C 460042A4 */ cvt.w.s $f10, $f8 +/* 054170 80053570 44D8F800 */ ctc1 $t8, $31 +/* 054174 80053574 44025000 */ mfc1 $v0, $f10 +/* 054178 80053578 00000000 */ nop +/* 05417C 8005357C 808801E1 */ lb $t0, 0x1e1($a0) +.L80053580: +/* 054180 80053580 3C038012 */ lui $v1, %hi(D_8011D554) # $v1, 0x8012 +/* 054184 80053584 01020019 */ multu $t0, $v0 +/* 054188 80053588 2463D554 */ addiu $v1, %lo(D_8011D554) # addiu $v1, $v1, -0x2aac +/* 05418C 8005358C 8C790000 */ lw $t9, ($v1) +/* 054190 80053590 44808000 */ mtc1 $zero, $f16 +/* 054194 80053594 00004812 */ mflo $t1 +/* 054198 80053598 03295023 */ subu $t2, $t9, $t1 +/* 05419C 8005359C AC6A0000 */ sw $t2, ($v1) +/* 0541A0 800535A0 C492002C */ lwc1 $f18, 0x2c($a0) +/* 0541A4 800535A4 000A6023 */ negu $t4, $t2 +/* 0541A8 800535A8 4612803C */ c.lt.s $f16, $f18 +/* 0541AC 800535AC 00000000 */ nop +/* 0541B0 800535B0 45000002 */ bc1f .L800535BC +/* 0541B4 800535B4 00000000 */ nop +/* 0541B8 800535B8 AC6C0000 */ sw $t4, ($v1) +.L800535BC: +/* 0541BC 800535BC 03E00008 */ jr $ra +/* 0541C0 800535C0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_800535C4.s b/asm/non_matchings/unknown_043920/func_800535C4.s new file mode 100644 index 00000000..f85e3218 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_800535C4.s @@ -0,0 +1,42 @@ +glabel func_800535C4 +/* 0541C4 800535C4 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 0541C8 800535C8 AFB00028 */ sw $s0, 0x28($sp) +/* 0541CC 800535CC 00A08025 */ move $s0, $a1 +/* 0541D0 800535D0 AFBF002C */ sw $ra, 0x2c($sp) +/* 0541D4 800535D4 860E01A0 */ lh $t6, 0x1a0($s0) +/* 0541D8 800535D8 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 +/* 0541DC 800535DC 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 +/* 0541E0 800535E0 000E7823 */ negu $t7, $t6 +/* 0541E4 800535E4 A4AF0000 */ sh $t7, ($a1) +/* 0541E8 800535E8 84980002 */ lh $t8, 2($a0) +/* 0541EC 800535EC 44800000 */ mtc1 $zero, $f0 +/* 0541F0 800535F0 0018C823 */ negu $t9, $t8 +/* 0541F4 800535F4 A4B90002 */ sh $t9, 2($a1) +/* 0541F8 800535F8 860801A4 */ lh $t0, 0x1a4($s0) +/* 0541FC 800535FC 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 054200 80053600 44812000 */ mtc1 $at, $f4 +/* 054204 80053604 00084823 */ negu $t1, $t0 +/* 054208 80053608 A4A90004 */ sh $t1, 4($a1) +/* 05420C 8005360C 27A40030 */ addiu $a0, $sp, 0x30 +/* 054210 80053610 E4A0000C */ swc1 $f0, 0xc($a1) +/* 054214 80053614 E4A00010 */ swc1 $f0, 0x10($a1) +/* 054218 80053618 E4A00014 */ swc1 $f0, 0x14($a1) +/* 05421C 8005361C 0C01BF9D */ jal func_8006FE74 +/* 054220 80053620 E4A40008 */ swc1 $f4, 8($a1) +/* 054224 80053624 44800000 */ mtc1 $zero, $f0 +/* 054228 80053628 260A00A0 */ addiu $t2, $s0, 0xa0 +/* 05422C 8005362C 260B00A4 */ addiu $t3, $s0, 0xa4 +/* 054230 80053630 260C009C */ addiu $t4, $s0, 0x9c +/* 054234 80053634 44050000 */ mfc1 $a1, $f0 +/* 054238 80053638 44070000 */ mfc1 $a3, $f0 +/* 05423C 8005363C AFAC0018 */ sw $t4, 0x18($sp) +/* 054240 80053640 AFAB0014 */ sw $t3, 0x14($sp) +/* 054244 80053644 AFAA0010 */ sw $t2, 0x10($sp) +/* 054248 80053648 27A40030 */ addiu $a0, $sp, 0x30 +/* 05424C 8005364C 0C01BD93 */ jal func_8006F64C +/* 054250 80053650 3C06BF80 */ lui $a2, 0xbf80 +/* 054254 80053654 8FBF002C */ lw $ra, 0x2c($sp) +/* 054258 80053658 8FB00028 */ lw $s0, 0x28($sp) +/* 05425C 8005365C 03E00008 */ jr $ra +/* 054260 80053660 27BD0070 */ addiu $sp, $sp, 0x70 + diff --git a/asm/non_matchings/unknown_043920/func_80053664.s b/asm/non_matchings/unknown_043920/func_80053664.s new file mode 100644 index 00000000..76b297e6 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80053664.s @@ -0,0 +1,66 @@ +glabel func_80053664 +/* 054264 80053664 C48400B4 */ lwc1 $f4, 0xb4($a0) +/* 054268 80053668 44803800 */ mtc1 $zero, $f7 +/* 05426C 8005366C 44803000 */ mtc1 $zero, $f6 +/* 054270 80053670 46002021 */ cvt.d.s $f0, $f4 +/* 054274 80053674 4620303C */ c.lt.d $f6, $f0 +/* 054278 80053678 3C01800E */ lui $at, %hi(D_800E676C) # $at, 0x800e +/* 05427C 8005367C 45000007 */ bc1f .L8005369C +/* 054280 80053680 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 +/* 054284 80053684 C4296768 */ lwc1 $f9, %lo(D_800E6768)($at) +/* 054288 80053688 C428676C */ lwc1 $f8, %lo(D_800E676C)($at) +/* 05428C 8005368C 00000000 */ nop +/* 054290 80053690 46280281 */ sub.d $f10, $f0, $f8 +/* 054294 80053694 46205420 */ cvt.s.d $f16, $f10 +/* 054298 80053698 E49000B4 */ swc1 $f16, 0xb4($a0) +.L8005369C: +/* 05429C 8005369C 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) +/* 0542A0 800536A0 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0542A4 800536A4 304E8000 */ andi $t6, $v0, 0x8000 +/* 0542A8 800536A8 11C00007 */ beqz $t6, .L800536C8 +/* 0542AC 800536AC 304F4000 */ andi $t7, $v0, 0x4000 +/* 0542B0 800536B0 44819000 */ mtc1 $at, $f18 +/* 0542B4 800536B4 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 +/* 0542B8 800536B8 E49200B4 */ swc1 $f18, 0xb4($a0) +/* 0542BC 800536BC 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) +/* 0542C0 800536C0 00000000 */ nop +/* 0542C4 800536C4 304F4000 */ andi $t7, $v0, 0x4000 +.L800536C8: +/* 0542C8 800536C8 11E00011 */ beqz $t7, .L80053710 +/* 0542CC 800536CC 3C01800E */ lui $at, 0x800e +/* 0542D0 800536D0 C48400B8 */ lwc1 $f4, 0xb8($a0) +/* 0542D4 800536D4 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 0542D8 800536D8 44813800 */ mtc1 $at, $f7 +/* 0542DC 800536DC 44803000 */ mtc1 $zero, $f6 +/* 0542E0 800536E0 46002021 */ cvt.d.s $f0, $f4 +/* 0542E4 800536E4 4626003C */ c.lt.d $f0, $f6 +/* 0542E8 800536E8 3C01800E */ lui $at, %hi(D_800E6774) # $at, 0x800e +/* 0542EC 800536EC 45000016 */ bc1f .L80053748 +/* 0542F0 800536F0 00000000 */ nop +/* 0542F4 800536F4 C4296770 */ lwc1 $f9, %lo(D_800E6770)($at) +/* 0542F8 800536F8 C4286774 */ lwc1 $f8, %lo(D_800E6774)($at) +/* 0542FC 800536FC 00000000 */ nop +/* 054300 80053700 46280280 */ add.d $f10, $f0, $f8 +/* 054304 80053704 46205420 */ cvt.s.d $f16, $f10 +/* 054308 80053708 03E00008 */ jr $ra +/* 05430C 8005370C E49000B8 */ swc1 $f16, 0xb8($a0) + +.L80053710: +/* 054310 80053710 C49200B8 */ lwc1 $f18, 0xb8($a0) +/* 054314 80053714 C4256778 */ lwc1 $f5, 0x6778($at) +/* 054318 80053718 C424677C */ lwc1 $f4, 0x677c($at) +/* 05431C 8005371C 46009021 */ cvt.d.s $f0, $f18 +/* 054320 80053720 4620203C */ c.lt.d $f4, $f0 +/* 054324 80053724 3C01800E */ lui $at, %hi(D_800E6784) # $at, 0x800e +/* 054328 80053728 45000007 */ bc1f .L80053748 +/* 05432C 8005372C 00000000 */ nop +/* 054330 80053730 C4276780 */ lwc1 $f7, %lo(D_800E6780)($at) +/* 054334 80053734 C4266784 */ lwc1 $f6, %lo(D_800E6784)($at) +/* 054338 80053738 00000000 */ nop +/* 05433C 8005373C 46260201 */ sub.d $f8, $f0, $f6 +/* 054340 80053740 462042A0 */ cvt.s.d $f10, $f8 +/* 054344 80053744 E48A00B8 */ swc1 $f10, 0xb8($a0) +.L80053748: +/* 054348 80053748 03E00008 */ jr $ra +/* 05434C 8005374C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_80053750.s b/asm/non_matchings/unknown_043920/func_80053750.s new file mode 100644 index 00000000..285333b0 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80053750.s @@ -0,0 +1,510 @@ +glabel func_80053750 +/* 054350 80053750 AFA50004 */ sw $a1, 4($sp) +/* 054354 80053754 8C820060 */ lw $v0, 0x60($a0) +/* 054358 80053758 44867000 */ mtc1 $a2, $f14 +/* 05435C 8005375C 104001CD */ beqz $v0, .L80053E94 +/* 054360 80053760 00A03025 */ move $a2, $a1 +/* 054364 80053764 8C430000 */ lw $v1, ($v0) +/* 054368 80053768 24010002 */ li $at, 2 +/* 05436C 8005376C 1461000A */ bne $v1, $at, .L80053798 +/* 054370 80053770 28610004 */ slti $at, $v1, 4 +/* 054374 80053774 8C450004 */ lw $a1, 4($v0) +/* 054378 80053778 24074000 */ li $a3, 16384 +/* 05437C 8005377C A4A70000 */ sh $a3, ($a1) +/* 054380 80053780 8C8E0060 */ lw $t6, 0x60($a0) +/* 054384 80053784 00000000 */ nop +/* 054388 80053788 8DC50008 */ lw $a1, 8($t6) +/* 05438C 8005378C 00000000 */ nop +/* 054390 80053790 A4A70000 */ sh $a3, ($a1) +/* 054394 80053794 28610004 */ slti $at, $v1, 4 +.L80053798: +/* 054398 80053798 142001BE */ bnez $at, .L80053E94 +/* 05439C 8005379C 00000000 */ nop +/* 0543A0 800537A0 C4C0002C */ lwc1 $f0, 0x2c($a2) +/* 0543A4 800537A4 3C014014 */ li $at, 0x40140000 # 2.312500 +/* 0543A8 800537A8 44818800 */ mtc1 $at, $f17 +/* 0543AC 800537AC 44808000 */ mtc1 $zero, $f16 +/* 0543B0 800537B0 460000A1 */ cvt.d.s $f2, $f0 +/* 0543B4 800537B4 4622803C */ c.lt.d $f16, $f2 +/* 0543B8 800537B8 44802000 */ mtc1 $zero, $f4 +/* 0543BC 800537BC 45000004 */ bc1f .L800537D0 +/* 0543C0 800537C0 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 0543C4 800537C4 44810000 */ mtc1 $at, $f0 +/* 0543C8 800537C8 00000000 */ nop +/* 0543CC 800537CC 460000A1 */ cvt.d.s $f2, $f0 +.L800537D0: +/* 0543D0 800537D0 3C01C014 */ li $at, 0xC0140000 # -2.312500 +/* 0543D4 800537D4 44812800 */ mtc1 $at, $f5 +/* 0543D8 800537D8 3C01C0A0 */ li $at, 0xC0A00000 # -5.000000 +/* 0543DC 800537DC 4624103C */ c.lt.d $f2, $f4 +/* 0543E0 800537E0 24090004 */ li $t1, 4 +/* 0543E4 800537E4 45000003 */ bc1f .L800537F4 +/* 0543E8 800537E8 00000000 */ nop +/* 0543EC 800537EC 44810000 */ mtc1 $at, $f0 +/* 0543F0 800537F0 00000000 */ nop +.L800537F4: +/* 0543F4 800537F4 3C01800E */ lui $at, %hi(D_800E678C) # $at, 0x800e +/* 0543F8 800537F8 C4C600B8 */ lwc1 $f6, 0xb8($a2) +/* 0543FC 800537FC C4236788 */ lwc1 $f3, %lo(D_800E6788)($at) +/* 054400 80053800 C422678C */ lwc1 $f2, %lo(D_800E678C)($at) +/* 054404 80053804 46003221 */ cvt.d.s $f8, $f6 +/* 054408 80053808 4628103C */ c.lt.d $f2, $f8 +/* 05440C 8005380C 24020001 */ li $v0, 1 +/* 054410 80053810 4500000A */ bc1f .L8005383C +/* 054414 80053814 00000000 */ nop +/* 054418 80053818 C4CA00B4 */ lwc1 $f10, 0xb4($a2) +/* 05441C 8005381C 00001025 */ move $v0, $zero +/* 054420 80053820 46005121 */ cvt.d.s $f4, $f10 +/* 054424 80053824 4622203C */ c.lt.d $f4, $f2 +/* 054428 80053828 00000000 */ nop +/* 05442C 8005382C 45000003 */ bc1f .L8005383C +/* 054430 80053830 00000000 */ nop +/* 054434 80053834 44800000 */ mtc1 $zero, $f0 +/* 054438 80053838 00000000 */ nop +.L8005383C: +/* 05443C 8005383C 460E0182 */ mul.s $f6, $f0, $f14 +/* 054440 80053840 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 054444 80053844 44815800 */ mtc1 $at, $f11 +/* 054448 80053848 44805000 */ mtc1 $zero, $f10 +/* 05444C 8005384C 46003221 */ cvt.d.s $f8, $f6 +/* 054450 80053850 462A4102 */ mul.d $f4, $f8, $f10 +/* 054454 80053854 C4C600B0 */ lwc1 $f6, 0xb0($a2) +/* 054458 80053858 44809000 */ mtc1 $zero, $f18 +/* 05445C 8005385C 46003221 */ cvt.d.s $f8, $f6 +/* 054460 80053860 44807000 */ mtc1 $zero, $f14 +/* 054464 80053864 46244281 */ sub.d $f10, $f8, $f4 +/* 054468 80053868 462051A0 */ cvt.s.d $f6, $f10 +/* 05446C 8005386C E4C600B0 */ swc1 $f6, 0xb0($a2) +/* 054470 80053870 C4C200B0 */ lwc1 $f2, 0xb0($a2) +/* 054474 80053874 00000000 */ nop +/* 054478 80053878 46001321 */ cvt.d.s $f12, $f2 +/* 05447C 8005387C 462C803C */ c.lt.d $f16, $f12 +/* 054480 80053880 00000000 */ nop +/* 054484 80053884 45000067 */ bc1f .L80053A24 +/* 054488 80053888 00000000 */ nop +.L8005388C: +/* 05448C 8005388C 46306201 */ sub.d $f8, $f12, $f16 +/* 054490 80053890 00001825 */ move $v1, $zero +/* 054494 80053894 46204120 */ cvt.s.d $f4, $f8 +/* 054498 80053898 E4C400B0 */ swc1 $f4, 0xb0($a2) +/* 05449C 8005389C 28610002 */ slti $at, $v1, 2 +.L800538A0: +/* 0544A0 800538A0 14200003 */ bnez $at, .L800538B0 +/* 0544A4 800538A4 0003C080 */ sll $t8, $v1, 2 +/* 0544A8 800538A8 10400029 */ beqz $v0, .L80053950 +/* 0544AC 800538AC 00000000 */ nop +.L800538B0: +/* 0544B0 800538B0 8C8F0060 */ lw $t7, 0x60($a0) +/* 0544B4 800538B4 80C801FB */ lb $t0, 0x1fb($a2) +/* 0544B8 800538B8 01F8C821 */ addu $t9, $t7, $t8 +/* 0544BC 800538BC 8F270004 */ lw $a3, 4($t9) +/* 0544C0 800538C0 11000004 */ beqz $t0, .L800538D4 +/* 0544C4 800538C4 00E02825 */ move $a1, $a3 +/* 0544C8 800538C8 28610003 */ slti $at, $v1, 3 +/* 0544CC 800538CC 10200003 */ beqz $at, .L800538DC +/* 0544D0 800538D0 00000000 */ nop +.L800538D4: +/* 0544D4 800538D4 1500001E */ bnez $t0, .L80053950 +/* 0544D8 800538D8 00000000 */ nop +.L800538DC: +/* 0544DC 800538DC 8CEA0078 */ lw $t2, 0x78($a3) +/* 0544E0 800538E0 00000000 */ nop +/* 0544E4 800538E4 11400010 */ beqz $t2, .L80053928 +/* 0544E8 800538E8 00000000 */ nop +/* 0544EC 800538EC 80AB003A */ lb $t3, 0x3a($a1) +/* 0544F0 800538F0 00000000 */ nop +/* 0544F4 800538F4 256CFFFF */ addiu $t4, $t3, -1 +/* 0544F8 800538F8 A0AC003A */ sb $t4, 0x3a($a1) +/* 0544FC 800538FC 80AD003A */ lb $t5, 0x3a($a1) +/* 054500 80053900 00000000 */ nop +/* 054504 80053904 05A10012 */ bgez $t5, .L80053950 +/* 054508 80053908 00000000 */ nop +/* 05450C 8005390C 8CAE0040 */ lw $t6, 0x40($a1) +/* 054510 80053910 00000000 */ nop +/* 054514 80053914 81CF0055 */ lb $t7, 0x55($t6) +/* 054518 80053918 00000000 */ nop +/* 05451C 8005391C 25F8FFFF */ addiu $t8, $t7, -1 +/* 054520 80053920 1000000B */ b .L80053950 +/* 054524 80053924 A0B8003A */ sb $t8, 0x3a($a1) +.L80053928: +/* 054528 80053928 80B9003A */ lb $t9, 0x3a($a1) +/* 05452C 8005392C 8CAB0040 */ lw $t3, 0x40($a1) +/* 054530 80053930 272A0001 */ addiu $t2, $t9, 1 +/* 054534 80053934 A0AA003A */ sb $t2, 0x3a($a1) +/* 054538 80053938 80AD003A */ lb $t5, 0x3a($a1) +/* 05453C 8005393C 816C0055 */ lb $t4, 0x55($t3) +/* 054540 80053940 00000000 */ nop +/* 054544 80053944 158D0002 */ bne $t4, $t5, .L80053950 +/* 054548 80053948 00000000 */ nop +/* 05454C 8005394C A0A0003A */ sb $zero, 0x3a($a1) +.L80053950: +/* 054550 80053950 18600003 */ blez $v1, .L80053960 +/* 054554 80053954 00037880 */ sll $t7, $v1, 2 +/* 054558 80053958 10400028 */ beqz $v0, .L800539FC +/* 05455C 8005395C 00000000 */ nop +.L80053960: +/* 054560 80053960 8C8E0060 */ lw $t6, 0x60($a0) +/* 054564 80053964 80C801FB */ lb $t0, 0x1fb($a2) +/* 054568 80053968 01CFC021 */ addu $t8, $t6, $t7 +/* 05456C 8005396C 8F050008 */ lw $a1, 8($t8) +/* 054570 80053970 11000003 */ beqz $t0, .L80053980 +/* 054574 80053974 28610002 */ slti $at, $v1, 2 +/* 054578 80053978 10200003 */ beqz $at, .L80053988 +/* 05457C 8005397C 00000000 */ nop +.L80053980: +/* 054580 80053980 1500001E */ bnez $t0, .L800539FC +/* 054584 80053984 00000000 */ nop +.L80053988: +/* 054588 80053988 8CB90078 */ lw $t9, 0x78($a1) +/* 05458C 8005398C 00000000 */ nop +/* 054590 80053990 13200010 */ beqz $t9, .L800539D4 +/* 054594 80053994 00000000 */ nop +/* 054598 80053998 80AA003A */ lb $t2, 0x3a($a1) +/* 05459C 8005399C 00000000 */ nop +/* 0545A0 800539A0 254BFFFF */ addiu $t3, $t2, -1 +/* 0545A4 800539A4 A0AB003A */ sb $t3, 0x3a($a1) +/* 0545A8 800539A8 80AC003A */ lb $t4, 0x3a($a1) +/* 0545AC 800539AC 00000000 */ nop +/* 0545B0 800539B0 05810012 */ bgez $t4, .L800539FC +/* 0545B4 800539B4 00000000 */ nop +/* 0545B8 800539B8 8CAD0040 */ lw $t5, 0x40($a1) +/* 0545BC 800539BC 00000000 */ nop +/* 0545C0 800539C0 81AE0055 */ lb $t6, 0x55($t5) +/* 0545C4 800539C4 00000000 */ nop +/* 0545C8 800539C8 25CFFFFF */ addiu $t7, $t6, -1 +/* 0545CC 800539CC 1000000B */ b .L800539FC +/* 0545D0 800539D0 A0AF003A */ sb $t7, 0x3a($a1) +.L800539D4: +/* 0545D4 800539D4 80B8003A */ lb $t8, 0x3a($a1) +/* 0545D8 800539D8 8CAA0040 */ lw $t2, 0x40($a1) +/* 0545DC 800539DC 27190001 */ addiu $t9, $t8, 1 +/* 0545E0 800539E0 A0B9003A */ sb $t9, 0x3a($a1) +/* 0545E4 800539E4 80AC003A */ lb $t4, 0x3a($a1) +/* 0545E8 800539E8 814B0055 */ lb $t3, 0x55($t2) +/* 0545EC 800539EC 00000000 */ nop +/* 0545F0 800539F0 156C0002 */ bne $t3, $t4, .L800539FC +/* 0545F4 800539F4 00000000 */ nop +/* 0545F8 800539F8 A0A0003A */ sb $zero, 0x3a($a1) +.L800539FC: +/* 0545FC 800539FC 24630002 */ addiu $v1, $v1, 2 +/* 054600 80053A00 1469FFA7 */ bne $v1, $t1, .L800538A0 +/* 054604 80053A04 28610002 */ slti $at, $v1, 2 +/* 054608 80053A08 C4C200B0 */ lwc1 $f2, 0xb0($a2) +/* 05460C 80053A0C 00000000 */ nop +/* 054610 80053A10 46001321 */ cvt.d.s $f12, $f2 +/* 054614 80053A14 462C803C */ c.lt.d $f16, $f12 +/* 054618 80053A18 00000000 */ nop +/* 05461C 80053A1C 4501FF9B */ bc1t .L8005388C +/* 054620 80053A20 00000000 */ nop +.L80053A24: +/* 054624 80053A24 4612103C */ c.lt.s $f2, $f18 +/* 054628 80053A28 24090004 */ li $t1, 4 +/* 05462C 80053A2C 45000067 */ bc1f .L80053BCC +/* 054630 80053A30 00000000 */ nop +.L80053A34: +/* 054634 80053A34 460012A1 */ cvt.d.s $f10, $f2 +/* 054638 80053A38 46305180 */ add.d $f6, $f10, $f16 +/* 05463C 80053A3C 00001825 */ move $v1, $zero +/* 054640 80053A40 46203220 */ cvt.s.d $f8, $f6 +/* 054644 80053A44 E4C800B0 */ swc1 $f8, 0xb0($a2) +/* 054648 80053A48 28610002 */ slti $at, $v1, 2 +.L80053A4C: +/* 05464C 80053A4C 14200003 */ bnez $at, .L80053A5C +/* 054650 80053A50 00037080 */ sll $t6, $v1, 2 +/* 054654 80053A54 10400029 */ beqz $v0, .L80053AFC +/* 054658 80053A58 00000000 */ nop +.L80053A5C: +/* 05465C 80053A5C 8C8D0060 */ lw $t5, 0x60($a0) +/* 054660 80053A60 80C801FB */ lb $t0, 0x1fb($a2) +/* 054664 80053A64 01AE7821 */ addu $t7, $t5, $t6 +/* 054668 80053A68 8DE70004 */ lw $a3, 4($t7) +/* 05466C 80053A6C 11000004 */ beqz $t0, .L80053A80 +/* 054670 80053A70 00E02825 */ move $a1, $a3 +/* 054674 80053A74 28610003 */ slti $at, $v1, 3 +/* 054678 80053A78 10200003 */ beqz $at, .L80053A88 +/* 05467C 80053A7C 00000000 */ nop +.L80053A80: +/* 054680 80053A80 1500001E */ bnez $t0, .L80053AFC +/* 054684 80053A84 00000000 */ nop +.L80053A88: +/* 054688 80053A88 8CF80078 */ lw $t8, 0x78($a3) +/* 05468C 80053A8C 00000000 */ nop +/* 054690 80053A90 17000010 */ bnez $t8, .L80053AD4 +/* 054694 80053A94 00000000 */ nop +/* 054698 80053A98 80B9003A */ lb $t9, 0x3a($a1) +/* 05469C 80053A9C 00000000 */ nop +/* 0546A0 80053AA0 272AFFFF */ addiu $t2, $t9, -1 +/* 0546A4 80053AA4 A0AA003A */ sb $t2, 0x3a($a1) +/* 0546A8 80053AA8 80AB003A */ lb $t3, 0x3a($a1) +/* 0546AC 80053AAC 00000000 */ nop +/* 0546B0 80053AB0 05610012 */ bgez $t3, .L80053AFC +/* 0546B4 80053AB4 00000000 */ nop +/* 0546B8 80053AB8 8CAC0040 */ lw $t4, 0x40($a1) +/* 0546BC 80053ABC 00000000 */ nop +/* 0546C0 80053AC0 818D0055 */ lb $t5, 0x55($t4) +/* 0546C4 80053AC4 00000000 */ nop +/* 0546C8 80053AC8 25AEFFFF */ addiu $t6, $t5, -1 +/* 0546CC 80053ACC 1000000B */ b .L80053AFC +/* 0546D0 80053AD0 A0AE003A */ sb $t6, 0x3a($a1) +.L80053AD4: +/* 0546D4 80053AD4 80AF003A */ lb $t7, 0x3a($a1) +/* 0546D8 80053AD8 8CB90040 */ lw $t9, 0x40($a1) +/* 0546DC 80053ADC 25F80001 */ addiu $t8, $t7, 1 +/* 0546E0 80053AE0 A0B8003A */ sb $t8, 0x3a($a1) +/* 0546E4 80053AE4 80AB003A */ lb $t3, 0x3a($a1) +/* 0546E8 80053AE8 832A0055 */ lb $t2, 0x55($t9) +/* 0546EC 80053AEC 00000000 */ nop +/* 0546F0 80053AF0 154B0002 */ bne $t2, $t3, .L80053AFC +/* 0546F4 80053AF4 00000000 */ nop +/* 0546F8 80053AF8 A0A0003A */ sb $zero, 0x3a($a1) +.L80053AFC: +/* 0546FC 80053AFC 18600003 */ blez $v1, .L80053B0C +/* 054700 80053B00 00036880 */ sll $t5, $v1, 2 +/* 054704 80053B04 10400028 */ beqz $v0, .L80053BA8 +/* 054708 80053B08 00000000 */ nop +.L80053B0C: +/* 05470C 80053B0C 8C8C0060 */ lw $t4, 0x60($a0) +/* 054710 80053B10 80C801FB */ lb $t0, 0x1fb($a2) +/* 054714 80053B14 018D7021 */ addu $t6, $t4, $t5 +/* 054718 80053B18 8DC50008 */ lw $a1, 8($t6) +/* 05471C 80053B1C 11000003 */ beqz $t0, .L80053B2C +/* 054720 80053B20 28610002 */ slti $at, $v1, 2 +/* 054724 80053B24 10200003 */ beqz $at, .L80053B34 +/* 054728 80053B28 00000000 */ nop +.L80053B2C: +/* 05472C 80053B2C 1500001E */ bnez $t0, .L80053BA8 +/* 054730 80053B30 00000000 */ nop +.L80053B34: +/* 054734 80053B34 8CAF0078 */ lw $t7, 0x78($a1) +/* 054738 80053B38 00000000 */ nop +/* 05473C 80053B3C 15E00010 */ bnez $t7, .L80053B80 +/* 054740 80053B40 00000000 */ nop +/* 054744 80053B44 80B8003A */ lb $t8, 0x3a($a1) +/* 054748 80053B48 00000000 */ nop +/* 05474C 80053B4C 2719FFFF */ addiu $t9, $t8, -1 +/* 054750 80053B50 A0B9003A */ sb $t9, 0x3a($a1) +/* 054754 80053B54 80AA003A */ lb $t2, 0x3a($a1) +/* 054758 80053B58 00000000 */ nop +/* 05475C 80053B5C 05410012 */ bgez $t2, .L80053BA8 +/* 054760 80053B60 00000000 */ nop +/* 054764 80053B64 8CAB0040 */ lw $t3, 0x40($a1) +/* 054768 80053B68 00000000 */ nop +/* 05476C 80053B6C 816C0055 */ lb $t4, 0x55($t3) +/* 054770 80053B70 00000000 */ nop +/* 054774 80053B74 258DFFFF */ addiu $t5, $t4, -1 +/* 054778 80053B78 1000000B */ b .L80053BA8 +/* 05477C 80053B7C A0AD003A */ sb $t5, 0x3a($a1) +.L80053B80: +/* 054780 80053B80 80AE003A */ lb $t6, 0x3a($a1) +/* 054784 80053B84 8CB80040 */ lw $t8, 0x40($a1) +/* 054788 80053B88 25CF0001 */ addiu $t7, $t6, 1 +/* 05478C 80053B8C A0AF003A */ sb $t7, 0x3a($a1) +/* 054790 80053B90 80AA003A */ lb $t2, 0x3a($a1) +/* 054794 80053B94 83190055 */ lb $t9, 0x55($t8) +/* 054798 80053B98 00000000 */ nop +/* 05479C 80053B9C 172A0002 */ bne $t9, $t2, .L80053BA8 +/* 0547A0 80053BA0 00000000 */ nop +/* 0547A4 80053BA4 A0A0003A */ sb $zero, 0x3a($a1) +.L80053BA8: +/* 0547A8 80053BA8 24630002 */ addiu $v1, $v1, 2 +/* 0547AC 80053BAC 1469FFA7 */ bne $v1, $t1, .L80053A4C +/* 0547B0 80053BB0 28610002 */ slti $at, $v1, 2 +/* 0547B4 80053BB4 C4C200B0 */ lwc1 $f2, 0xb0($a2) +/* 0547B8 80053BB8 00000000 */ nop +/* 0547BC 80053BBC 4612103C */ c.lt.s $f2, $f18 +/* 0547C0 80053BC0 00000000 */ nop +/* 0547C4 80053BC4 4501FF9B */ bc1t .L80053A34 +/* 0547C8 80053BC8 00000000 */ nop +.L80053BCC: +/* 0547CC 80053BCC 80CB01FB */ lb $t3, 0x1fb($a2) +/* 0547D0 80053BD0 24070001 */ li $a3, 1 +/* 0547D4 80053BD4 1160002B */ beqz $t3, .L80053C84 +/* 0547D8 80053BD8 3C01800E */ lui $at, %hi(D_800E6794) # $at, 0x800e +/* 0547DC 80053BDC 00001025 */ move $v0, $zero +/* 0547E0 80053BE0 24030008 */ li $v1, 8 +.L80053BE4: +/* 0547E4 80053BE4 8C8C0060 */ lw $t4, 0x60($a0) +/* 0547E8 80053BE8 00000000 */ nop +/* 0547EC 80053BEC 01826821 */ addu $t5, $t4, $v0 +/* 0547F0 80053BF0 8DA50004 */ lw $a1, 4($t5) +/* 0547F4 80053BF4 24420004 */ addiu $v0, $v0, 4 +/* 0547F8 80053BF8 8CAE0078 */ lw $t6, 0x78($a1) +/* 0547FC 80053BFC 00000000 */ nop +/* 054800 80053C00 11C00010 */ beqz $t6, .L80053C44 +/* 054804 80053C04 00000000 */ nop +/* 054808 80053C08 80AF003A */ lb $t7, 0x3a($a1) +/* 05480C 80053C0C 00000000 */ nop +/* 054810 80053C10 25F8FFFF */ addiu $t8, $t7, -1 +/* 054814 80053C14 A0B8003A */ sb $t8, 0x3a($a1) +/* 054818 80053C18 80B9003A */ lb $t9, 0x3a($a1) +/* 05481C 80053C1C 00000000 */ nop +/* 054820 80053C20 07210012 */ bgez $t9, .L80053C6C +/* 054824 80053C24 00000000 */ nop +/* 054828 80053C28 8CAA0040 */ lw $t2, 0x40($a1) +/* 05482C 80053C2C 00000000 */ nop +/* 054830 80053C30 814B0055 */ lb $t3, 0x55($t2) +/* 054834 80053C34 00000000 */ nop +/* 054838 80053C38 256CFFFF */ addiu $t4, $t3, -1 +/* 05483C 80053C3C 1000000B */ b .L80053C6C +/* 054840 80053C40 A0AC003A */ sb $t4, 0x3a($a1) +.L80053C44: +/* 054844 80053C44 80AD003A */ lb $t5, 0x3a($a1) +/* 054848 80053C48 8CAF0040 */ lw $t7, 0x40($a1) +/* 05484C 80053C4C 25AE0001 */ addiu $t6, $t5, 1 +/* 054850 80053C50 A0AE003A */ sb $t6, 0x3a($a1) +/* 054854 80053C54 80B9003A */ lb $t9, 0x3a($a1) +/* 054858 80053C58 81F80055 */ lb $t8, 0x55($t7) +/* 05485C 80053C5C 00000000 */ nop +/* 054860 80053C60 17190002 */ bne $t8, $t9, .L80053C6C +/* 054864 80053C64 00000000 */ nop +/* 054868 80053C68 A0A0003A */ sb $zero, 0x3a($a1) +.L80053C6C: +/* 05486C 80053C6C 1443FFDD */ bne $v0, $v1, .L80053BE4 +/* 054870 80053C70 00000000 */ nop +/* 054874 80053C74 8C8A0074 */ lw $t2, 0x74($a0) +/* 054878 80053C78 00000000 */ nop +/* 05487C 80053C7C 354B0C00 */ ori $t3, $t2, 0xc00 +/* 054880 80053C80 AC8B0074 */ sw $t3, 0x74($a0) +.L80053C84: +/* 054884 80053C84 C4336790 */ lwc1 $f19, %lo(D_800E6790)($at) +/* 054888 80053C88 C4326794 */ lwc1 $f18, %lo(D_800E6794)($at) +/* 05488C 80053C8C 3C01800E */ lui $at, %hi(D_800E679C) # $at, 0x800e +/* 054890 80053C90 C4316798 */ lwc1 $f17, %lo(D_800E6798)($at) +/* 054894 80053C94 C430679C */ lwc1 $f16, %lo(D_800E679C)($at) +/* 054898 80053C98 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 05489C 80053C9C 44817800 */ mtc1 $at, $f15 +/* 0548A0 80053CA0 3C01C120 */ li $at, 0xC1200000 # -10.000000 +/* 0548A4 80053CA4 44816000 */ mtc1 $at, $f12 +/* 0548A8 80053CA8 00001025 */ move $v0, $zero +/* 0548AC 80053CAC 24030010 */ li $v1, 16 +.L80053CB0: +/* 0548B0 80053CB0 8C8C0060 */ lw $t4, 0x60($a0) +/* 0548B4 80053CB4 80CE01E3 */ lb $t6, 0x1e3($a2) +/* 0548B8 80053CB8 01826821 */ addu $t5, $t4, $v0 +/* 0548BC 80053CBC 8DA50004 */ lw $a1, 4($t5) +/* 0548C0 80053CC0 01C77824 */ and $t7, $t6, $a3 +/* 0548C4 80053CC4 15E0001A */ bnez $t7, .L80053D30 +/* 0548C8 80053CC8 00075840 */ sll $t3, $a3, 1 +/* 0548CC 80053CCC C4A00010 */ lwc1 $f0, 0x10($a1) +/* 0548D0 80053CD0 00000000 */ nop +/* 0548D4 80053CD4 46006281 */ sub.s $f10, $f12, $f0 +/* 0548D8 80053CD8 460051A1 */ cvt.d.s $f6, $f10 +/* 0548DC 80053CDC 462E3202 */ mul.d $f8, $f6, $f14 +/* 0548E0 80053CE0 46000121 */ cvt.d.s $f4, $f0 +/* 0548E4 80053CE4 46282280 */ add.d $f10, $f4, $f8 +/* 0548E8 80053CE8 462051A0 */ cvt.s.d $f6, $f10 +/* 0548EC 80053CEC E4A60010 */ swc1 $f6, 0x10($a1) +/* 0548F0 80053CF0 80D801E5 */ lb $t8, 0x1e5($a2) +/* 0548F4 80053CF4 00000000 */ nop +/* 0548F8 80053CF8 1300001F */ beqz $t8, .L80053D78 +/* 0548FC 80053CFC 00000000 */ nop +/* 054900 80053D00 8CB90040 */ lw $t9, 0x40($a1) +/* 054904 80053D04 C4A40008 */ lwc1 $f4, 8($a1) +/* 054908 80053D08 C728000C */ lwc1 $f8, 0xc($t9) +/* 05490C 80053D0C 46002021 */ cvt.d.s $f0, $f4 +/* 054910 80053D10 460042A1 */ cvt.d.s $f10, $f8 +/* 054914 80053D14 46305182 */ mul.d $f6, $f10, $f16 +/* 054918 80053D18 46203101 */ sub.d $f4, $f6, $f0 +/* 05491C 80053D1C 46322202 */ mul.d $f8, $f4, $f18 +/* 054920 80053D20 46280280 */ add.d $f10, $f0, $f8 +/* 054924 80053D24 462051A0 */ cvt.s.d $f6, $f10 +/* 054928 80053D28 10000013 */ b .L80053D78 +/* 05492C 80053D2C E4A60008 */ swc1 $f6, 8($a1) +.L80053D30: +/* 054930 80053D30 C4A40010 */ lwc1 $f4, 0x10($a1) +/* 054934 80053D34 8CAA0040 */ lw $t2, 0x40($a1) +/* 054938 80053D38 46002021 */ cvt.d.s $f0, $f4 +/* 05493C 80053D3C 462E0202 */ mul.d $f8, $f0, $f14 +/* 054940 80053D40 C4A20008 */ lwc1 $f2, 8($a1) +/* 054944 80053D44 00000000 */ nop +/* 054948 80053D48 46001121 */ cvt.d.s $f4, $f2 +/* 05494C 80053D4C 46280281 */ sub.d $f10, $f0, $f8 +/* 054950 80053D50 462051A0 */ cvt.s.d $f6, $f10 +/* 054954 80053D54 E4A60010 */ swc1 $f6, 0x10($a1) +/* 054958 80053D58 C548000C */ lwc1 $f8, 0xc($t2) +/* 05495C 80053D5C 00000000 */ nop +/* 054960 80053D60 46024281 */ sub.s $f10, $f8, $f2 +/* 054964 80053D64 460051A1 */ cvt.d.s $f6, $f10 +/* 054968 80053D68 46323202 */ mul.d $f8, $f6, $f18 +/* 05496C 80053D6C 46282280 */ add.d $f10, $f4, $f8 +/* 054970 80053D70 462051A0 */ cvt.s.d $f6, $f10 +/* 054974 80053D74 E4A60008 */ swc1 $f6, 8($a1) +.L80053D78: +/* 054978 80053D78 8C8C0060 */ lw $t4, 0x60($a0) +/* 05497C 80053D7C 80CE01E3 */ lb $t6, 0x1e3($a2) +/* 054980 80053D80 01826821 */ addu $t5, $t4, $v0 +/* 054984 80053D84 8DA50008 */ lw $a1, 8($t5) +/* 054988 80053D88 01CB7824 */ and $t7, $t6, $t3 +/* 05498C 80053D8C 15E0001A */ bnez $t7, .L80053DF8 +/* 054990 80053D90 01603825 */ move $a3, $t3 +/* 054994 80053D94 C4A00010 */ lwc1 $f0, 0x10($a1) +/* 054998 80053D98 00000000 */ nop +/* 05499C 80053D9C 46006201 */ sub.s $f8, $f12, $f0 +/* 0549A0 80053DA0 460042A1 */ cvt.d.s $f10, $f8 +/* 0549A4 80053DA4 462E5182 */ mul.d $f6, $f10, $f14 +/* 0549A8 80053DA8 46000121 */ cvt.d.s $f4, $f0 +/* 0549AC 80053DAC 46262200 */ add.d $f8, $f4, $f6 +/* 0549B0 80053DB0 462042A0 */ cvt.s.d $f10, $f8 +/* 0549B4 80053DB4 E4AA0010 */ swc1 $f10, 0x10($a1) +/* 0549B8 80053DB8 80D801E5 */ lb $t8, 0x1e5($a2) +/* 0549BC 80053DBC 00000000 */ nop +/* 0549C0 80053DC0 13000020 */ beqz $t8, .L80053E44 +/* 0549C4 80053DC4 00075840 */ sll $t3, $a3, 1 +/* 0549C8 80053DC8 8CB90040 */ lw $t9, 0x40($a1) +/* 0549CC 80053DCC C4A40008 */ lwc1 $f4, 8($a1) +/* 0549D0 80053DD0 C726000C */ lwc1 $f6, 0xc($t9) +/* 0549D4 80053DD4 46002021 */ cvt.d.s $f0, $f4 +/* 0549D8 80053DD8 46003221 */ cvt.d.s $f8, $f6 +/* 0549DC 80053DDC 46304282 */ mul.d $f10, $f8, $f16 +/* 0549E0 80053DE0 46205101 */ sub.d $f4, $f10, $f0 +/* 0549E4 80053DE4 46322182 */ mul.d $f6, $f4, $f18 +/* 0549E8 80053DE8 46260200 */ add.d $f8, $f0, $f6 +/* 0549EC 80053DEC 462042A0 */ cvt.s.d $f10, $f8 +/* 0549F0 80053DF0 10000013 */ b .L80053E40 +/* 0549F4 80053DF4 E4AA0008 */ swc1 $f10, 8($a1) +.L80053DF8: +/* 0549F8 80053DF8 C4A40010 */ lwc1 $f4, 0x10($a1) +/* 0549FC 80053DFC 8CAA0040 */ lw $t2, 0x40($a1) +/* 054A00 80053E00 46002021 */ cvt.d.s $f0, $f4 +/* 054A04 80053E04 462E0182 */ mul.d $f6, $f0, $f14 +/* 054A08 80053E08 C4A20008 */ lwc1 $f2, 8($a1) +/* 054A0C 80053E0C 00000000 */ nop +/* 054A10 80053E10 46001121 */ cvt.d.s $f4, $f2 +/* 054A14 80053E14 46260201 */ sub.d $f8, $f0, $f6 +/* 054A18 80053E18 462042A0 */ cvt.s.d $f10, $f8 +/* 054A1C 80053E1C E4AA0010 */ swc1 $f10, 0x10($a1) +/* 054A20 80053E20 C546000C */ lwc1 $f6, 0xc($t2) +/* 054A24 80053E24 00000000 */ nop +/* 054A28 80053E28 46023201 */ sub.s $f8, $f6, $f2 +/* 054A2C 80053E2C 460042A1 */ cvt.d.s $f10, $f8 +/* 054A30 80053E30 46325182 */ mul.d $f6, $f10, $f18 +/* 054A34 80053E34 46262200 */ add.d $f8, $f4, $f6 +/* 054A38 80053E38 462042A0 */ cvt.s.d $f10, $f8 +/* 054A3C 80053E3C E4AA0008 */ swc1 $f10, 8($a1) +.L80053E40: +/* 054A40 80053E40 00075840 */ sll $t3, $a3, 1 +.L80053E44: +/* 054A44 80053E44 24420008 */ addiu $v0, $v0, 8 +/* 054A48 80053E48 1443FF99 */ bne $v0, $v1, .L80053CB0 +/* 054A4C 80053E4C 01603825 */ move $a3, $t3 +/* 054A50 80053E50 3C028012 */ lui $v0, %hi(D_8011D534) # $v0, 0x8012 +/* 054A54 80053E54 2442D534 */ addiu $v0, %lo(D_8011D534) # addiu $v0, $v0, -0x2acc +/* 054A58 80053E58 8C4D0000 */ lw $t5, ($v0) +/* 054A5C 80053E5C 24030064 */ li $v1, 100 +/* 054A60 80053E60 01A30019 */ multu $t5, $v1 +/* 054A64 80053E64 8C8C0060 */ lw $t4, 0x60($a0) +/* 054A68 80053E68 00000000 */ nop +/* 054A6C 80053E6C 8D85000C */ lw $a1, 0xc($t4) +/* 054A70 80053E70 00007012 */ mflo $t6 +/* 054A74 80053E74 A4AE0000 */ sh $t6, ($a1) +/* 054A78 80053E78 8C580000 */ lw $t8, ($v0) +/* 054A7C 80053E7C 8C8F0060 */ lw $t7, 0x60($a0) +/* 054A80 80053E80 03030019 */ multu $t8, $v1 +/* 054A84 80053E84 8DE50010 */ lw $a1, 0x10($t7) +/* 054A88 80053E88 0000C812 */ mflo $t9 +/* 054A8C 80053E8C A4B90000 */ sh $t9, ($a1) +/* 054A90 80053E90 00000000 */ nop +.L80053E94: +/* 054A94 80053E94 03E00008 */ jr $ra +/* 054A98 80053E98 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_80053E9C.s b/asm/non_matchings/unknown_043920/func_80053E9C.s new file mode 100644 index 00000000..807c177b --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80053E9C.s @@ -0,0 +1,172 @@ +glabel func_80053E9C +/* 054A9C 80053E9C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 054AA0 80053EA0 AFBF001C */ sw $ra, 0x1c($sp) +/* 054AA4 80053EA4 AFB00018 */ sw $s0, 0x18($sp) +/* 054AA8 80053EA8 84AE0000 */ lh $t6, ($a1) +/* 054AAC 80053EAC 2401FFFF */ li $at, -1 +/* 054AB0 80053EB0 15C10003 */ bne $t6, $at, .L80053EC0 +/* 054AB4 80053EB4 00A08025 */ move $s0, $a1 +/* 054AB8 80053EB8 10000004 */ b .L80053ECC +/* 054ABC 80053EBC A3A00027 */ sb $zero, 0x27($sp) +.L80053EC0: +/* 054AC0 80053EC0 820F0185 */ lb $t7, 0x185($s0) +/* 054AC4 80053EC4 00000000 */ nop +/* 054AC8 80053EC8 A3AF0027 */ sb $t7, 0x27($sp) +.L80053ECC: +/* 054ACC 80053ECC 820201ED */ lb $v0, 0x1ed($s0) +/* 054AD0 80053ED0 3C01800E */ lui $at, %hi(D_800E67A0) # $at, 0x800e +/* 054AD4 80053ED4 18400012 */ blez $v0, .L80053F20 +/* 054AD8 80053ED8 0046C023 */ subu $t8, $v0, $a2 +/* 054ADC 80053EDC 44802000 */ mtc1 $zero, $f4 +/* 054AE0 80053EE0 A21801ED */ sb $t8, 0x1ed($s0) +/* 054AE4 80053EE4 E60400B4 */ swc1 $f4, 0xb4($s0) +/* 054AE8 80053EE8 C42667A0 */ lwc1 $f6, %lo(D_800E67A0)($at) +/* 054AEC 80053EEC 821901ED */ lb $t9, 0x1ed($s0) +/* 054AF0 80053EF0 E6060090 */ swc1 $f6, 0x90($s0) +/* 054AF4 80053EF4 1F20000B */ bgtz $t9, .L80053F24 +/* 054AF8 80053EF8 00000000 */ nop +/* 054AFC 80053EFC 86080000 */ lh $t0, ($s0) +/* 054B00 80053F00 24050140 */ li $a1, 320 +/* 054B04 80053F04 05000007 */ bltz $t0, .L80053F24 +/* 054B08 80053F08 00000000 */ nop +/* 054B0C 80053F0C 0C015C12 */ jal func_80057048 +/* 054B10 80053F10 AFA40028 */ sw $a0, 0x28($sp) +/* 054B14 80053F14 8FA40028 */ lw $a0, 0x28($sp) +/* 054B18 80053F18 10000003 */ b .L80053F28 +/* 054B1C 80053F1C 82020187 */ lb $v0, 0x187($s0) +.L80053F20: +/* 054B20 80053F20 A20001ED */ sb $zero, 0x1ed($s0) +.L80053F24: +/* 054B24 80053F24 82020187 */ lb $v0, 0x187($s0) +.L80053F28: +/* 054B28 80053F28 00000000 */ nop +/* 054B2C 80053F2C 10400005 */ beqz $v0, .L80053F44 +/* 054B30 80053F30 00000000 */ nop +/* 054B34 80053F34 8609018E */ lh $t1, 0x18e($s0) +/* 054B38 80053F38 00000000 */ nop +/* 054B3C 80053F3C 19200003 */ blez $t1, .L80053F4C +/* 054B40 80053F40 00000000 */ nop +.L80053F44: +/* 054B44 80053F44 1000006E */ b .L80054100 +/* 054B48 80053F48 A2000187 */ sb $zero, 0x187($s0) +.L80053F4C: +/* 054B4C 80053F4C 820A01ED */ lb $t2, 0x1ed($s0) +/* 054B50 80053F50 24010004 */ li $at, 4 +/* 054B54 80053F54 11400002 */ beqz $t2, .L80053F60 +/* 054B58 80053F58 00000000 */ nop +/* 054B5C 80053F5C 10410068 */ beq $v0, $at, .L80054100 +.L80053F60: +/* 054B60 80053F60 24010002 */ li $at, 2 +/* 054B64 80053F64 10410008 */ beq $v0, $at, .L80053F88 +/* 054B68 80053F68 24010004 */ li $at, 4 +/* 054B6C 80053F6C 10410006 */ beq $v0, $at, .L80053F88 +/* 054B70 80053F70 02002825 */ move $a1, $s0 +/* 054B74 80053F74 24060002 */ li $a2, 2 +/* 054B78 80053F78 0C015DB8 */ jal func_800576E0 +/* 054B7C 80053F7C AFA40028 */ sw $a0, 0x28($sp) +/* 054B80 80053F80 8FA40028 */ lw $a0, 0x28($sp) +/* 054B84 80053F84 00000000 */ nop +.L80053F88: +/* 054B88 80053F88 920C01C9 */ lbu $t4, 0x1c9($s0) +/* 054B8C 80053F8C 240B0168 */ li $t3, 360 +/* 054B90 80053F90 24010008 */ li $at, 8 +/* 054B94 80053F94 15810002 */ bne $t4, $at, .L80053FA0 +/* 054B98 80053F98 A60B018C */ sh $t3, 0x18c($s0) +/* 054B9C 80053F9C A20001C9 */ sb $zero, 0x1c9($s0) +.L80053FA0: +/* 054BA0 80053FA0 820D01D6 */ lb $t5, 0x1d6($s0) +/* 054BA4 80053FA4 240501C2 */ li $a1, 450 +/* 054BA8 80053FA8 29A10005 */ slti $at, $t5, 5 +/* 054BAC 80053FAC 10200054 */ beqz $at, .L80054100 +/* 054BB0 80053FB0 24060008 */ li $a2, 8 +/* 054BB4 80053FB4 24070081 */ li $a3, 129 +/* 054BB8 80053FB8 0C015C2E */ jal func_800570B8 +/* 054BBC 80053FBC AFA40028 */ sw $a0, 0x28($sp) +/* 054BC0 80053FC0 820E0187 */ lb $t6, 0x187($s0) +/* 054BC4 80053FC4 8FA40028 */ lw $a0, 0x28($sp) +/* 054BC8 80053FC8 25CFFFFF */ addiu $t7, $t6, -1 +/* 054BCC 80053FCC 2DE10006 */ sltiu $at, $t7, 6 +/* 054BD0 80053FD0 1020004A */ beqz $at, .L800540FC +/* 054BD4 80053FD4 000F7880 */ sll $t7, $t7, 2 +/* 054BD8 80053FD8 3C01800E */ lui $at, 0x800e +/* 054BDC 80053FDC 002F0821 */ addu $at, $at, $t7 +/* 054BE0 80053FE0 8C2F67A4 */ lw $t7, 0x67a4($at) +/* 054BE4 80053FE4 00000000 */ nop +/* 054BE8 80053FE8 01E00008 */ jr $t7 +/* 054BEC 80053FEC 00000000 */ nop +/* 054BF0 80053FF0 24180001 */ li $t8, 1 +/* 054BF4 80053FF4 A21801F1 */ sb $t8, 0x1f1($s0) +/* 054BF8 80053FF8 83B90027 */ lb $t9, 0x27($sp) +/* 054BFC 80053FFC 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 054C00 80054000 1720000C */ bnez $t9, .L80054034 +/* 054C04 80054004 00000000 */ nop +/* 054C08 80054008 44804000 */ mtc1 $zero, $f8 +/* 054C0C 8005400C 3C014025 */ li $at, 0x40250000 # 2.578125 +/* 054C10 80054010 E608002C */ swc1 $f8, 0x2c($s0) +/* 054C14 80054014 C48A0020 */ lwc1 $f10, 0x20($a0) +/* 054C18 80054018 44819800 */ mtc1 $at, $f19 +/* 054C1C 8005401C 44809000 */ mtc1 $zero, $f18 +/* 054C20 80054020 46005421 */ cvt.d.s $f16, $f10 +/* 054C24 80054024 46328100 */ add.d $f4, $f16, $f18 +/* 054C28 80054028 462021A0 */ cvt.s.d $f6, $f4 +/* 054C2C 8005402C 10000033 */ b .L800540FC +/* 054C30 80054030 E4860020 */ swc1 $f6, 0x20($a0) +.L80054034: +/* 054C34 80054034 C608002C */ lwc1 $f8, 0x2c($s0) +/* 054C38 80054038 44815000 */ mtc1 $at, $f10 +/* 054C3C 8005403C 3C014021 */ li $at, 0x40210000 # 2.515625 +/* 054C40 80054040 460A4403 */ div.s $f16, $f8, $f10 +/* 054C44 80054044 44813800 */ mtc1 $at, $f7 +/* 054C48 80054048 44803000 */ mtc1 $zero, $f6 +/* 054C4C 8005404C E610002C */ swc1 $f16, 0x2c($s0) +/* 054C50 80054050 C4920020 */ lwc1 $f18, 0x20($a0) +/* 054C54 80054054 00000000 */ nop +/* 054C58 80054058 46009121 */ cvt.d.s $f4, $f18 +/* 054C5C 8005405C 46262200 */ add.d $f8, $f4, $f6 +/* 054C60 80054060 462042A0 */ cvt.s.d $f10, $f8 +/* 054C64 80054064 10000025 */ b .L800540FC +/* 054C68 80054068 E48A0020 */ swc1 $f10, 0x20($a0) +/* 054C6C 8005406C 24080002 */ li $t0, 2 +/* 054C70 80054070 24091002 */ li $t1, 4098 +/* 054C74 80054074 A20801DB */ sb $t0, 0x1db($s0) +/* 054C78 80054078 A60901A2 */ sh $t1, 0x1a2($s0) +/* 054C7C 8005407C 0C015C12 */ jal func_80057048 +/* 054C80 80054080 2405013B */ li $a1, 315 +/* 054C84 80054084 1000001E */ b .L80054100 +/* 054C88 80054088 A2000187 */ sb $zero, 0x187($s0) +/* 054C8C 8005408C 240A003C */ li $t2, 60 +/* 054C90 80054090 1000001A */ b .L800540FC +/* 054C94 80054094 A20A01ED */ sb $t2, 0x1ed($s0) +/* 054C98 80054098 C610002C */ lwc1 $f16, 0x2c($s0) +/* 054C9C 8005409C 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 054CA0 800540A0 44812800 */ mtc1 $at, $f5 +/* 054CA4 800540A4 44802000 */ mtc1 $zero, $f4 +/* 054CA8 800540A8 460084A1 */ cvt.d.s $f18, $f16 +/* 054CAC 800540AC 46249182 */ mul.d $f6, $f18, $f4 +/* 054CB0 800540B0 240B0078 */ li $t3, 120 +/* 054CB4 800540B4 A60B0204 */ sh $t3, 0x204($s0) +/* 054CB8 800540B8 46203220 */ cvt.s.d $f8, $f6 +/* 054CBC 800540BC 1000000F */ b .L800540FC +/* 054CC0 800540C0 E608002C */ swc1 $f8, 0x2c($s0) +/* 054CC4 800540C4 44805000 */ mtc1 $zero, $f10 +/* 054CC8 800540C8 240C0001 */ li $t4, 1 +/* 054CCC 800540CC A20C01F1 */ sb $t4, 0x1f1($s0) +/* 054CD0 800540D0 E60A002C */ swc1 $f10, 0x2c($s0) +/* 054CD4 800540D4 3C01800E */ lui $at, %hi(D_800E67C4) # $at, 0x800e +/* 054CD8 800540D8 C4900020 */ lwc1 $f16, 0x20($a0) +/* 054CDC 800540DC C42567C0 */ lwc1 $f5, %lo(D_800E67C0)($at) +/* 054CE0 800540E0 C42467C4 */ lwc1 $f4, %lo(D_800E67C4)($at) +/* 054CE4 800540E4 460084A1 */ cvt.d.s $f18, $f16 +/* 054CE8 800540E8 46249180 */ add.d $f6, $f18, $f4 +/* 054CEC 800540EC 24050139 */ li $a1, 313 +/* 054CF0 800540F0 46203220 */ cvt.s.d $f8, $f6 +/* 054CF4 800540F4 0C015C12 */ jal func_80057048 +/* 054CF8 800540F8 E4880020 */ swc1 $f8, 0x20($a0) +.L800540FC: +/* 054CFC 800540FC A2000187 */ sb $zero, 0x187($s0) +.L80054100: +/* 054D00 80054100 8FBF001C */ lw $ra, 0x1c($sp) +/* 054D04 80054104 8FB00018 */ lw $s0, 0x18($sp) +/* 054D08 80054108 03E00008 */ jr $ra +/* 054D0C 8005410C 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_043920/func_80054110.s b/asm/non_matchings/unknown_043920/func_80054110.s new file mode 100644 index 00000000..9baab364 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80054110.s @@ -0,0 +1,555 @@ +glabel func_80054110 +/* 054D10 80054110 27BDFF50 */ addiu $sp, $sp, -0xb0 +/* 054D14 80054114 AFBF002C */ sw $ra, 0x2c($sp) +/* 054D18 80054118 AFB10028 */ sw $s1, 0x28($sp) +/* 054D1C 8005411C AFB00024 */ sw $s0, 0x24($sp) +/* 054D20 80054120 AFA600B8 */ sw $a2, 0xb8($sp) +/* 054D24 80054124 AFA700BC */ sw $a3, 0xbc($sp) +/* 054D28 80054128 C484000C */ lwc1 $f4, 0xc($a0) +/* 054D2C 8005412C 3C018012 */ lui $at, %hi(D_8011D554) # $at, 0x8012 +/* 054D30 80054130 E7A40098 */ swc1 $f4, 0x98($sp) +/* 054D34 80054134 C4860010 */ lwc1 $f6, 0x10($a0) +/* 054D38 80054138 00808825 */ move $s1, $a0 +/* 054D3C 8005413C E7A60094 */ swc1 $f6, 0x94($sp) +/* 054D40 80054140 C4880014 */ lwc1 $f8, 0x14($a0) +/* 054D44 80054144 AC20D554 */ sw $zero, %lo(D_8011D554)($at) +/* 054D48 80054148 00A08025 */ move $s0, $a1 +/* 054D4C 8005414C 3C018012 */ lui $at, %hi(D_8011D558) # $at, 0x8012 +/* 054D50 80054150 00A02025 */ move $a0, $a1 +/* 054D54 80054154 AC20D558 */ sw $zero, %lo(D_8011D558)($at) +/* 054D58 80054158 00002825 */ move $a1, $zero +/* 054D5C 8005415C 00E03025 */ move $a2, $a3 +/* 054D60 80054160 0C015E6C */ jal func_800579B0 +/* 054D64 80054164 E7A80090 */ swc1 $f8, 0x90($sp) +/* 054D68 80054168 0C014D99 */ jal func_80053664 +/* 054D6C 8005416C 02002025 */ move $a0, $s0 +/* 054D70 80054170 02202025 */ move $a0, $s1 +/* 054D74 80054174 0C015D7B */ jal func_800575EC +/* 054D78 80054178 02002825 */ move $a1, $s0 +/* 054D7C 8005417C 8FA600B8 */ lw $a2, 0xb8($sp) +/* 054D80 80054180 02202025 */ move $a0, $s1 +/* 054D84 80054184 0C0157B0 */ jal func_80055EC0 +/* 054D88 80054188 02002825 */ move $a1, $s0 +/* 054D8C 8005418C 8FA600B8 */ lw $a2, 0xb8($sp) +/* 054D90 80054190 02202025 */ move $a0, $s1 +/* 054D94 80054194 0C014FA7 */ jal func_80053E9C +/* 054D98 80054198 02002825 */ move $a1, $s0 +/* 054D9C 8005419C 820E01DB */ lb $t6, 0x1db($s0) +/* 054DA0 800541A0 00000000 */ nop +/* 054DA4 800541A4 11C00008 */ beqz $t6, .L800541C8 +/* 054DA8 800541A8 00000000 */ nop +/* 054DAC 800541AC 8FA600B8 */ lw $a2, 0xb8($sp) +/* 054DB0 800541B0 8FA700BC */ lw $a3, 0xbc($sp) +/* 054DB4 800541B4 02202025 */ move $a0, $s1 +/* 054DB8 800541B8 0C014AD9 */ jal func_80052B64 +/* 054DBC 800541BC 02002825 */ move $a1, $s0 +/* 054DC0 800541C0 10000010 */ b .L80054204 +/* 054DC4 800541C4 8FA500B8 */ lw $a1, 0xb8($sp) +.L800541C8: +/* 054DC8 800541C8 820F01E2 */ lb $t7, 0x1e2($s0) +/* 054DCC 800541CC 8FA600B8 */ lw $a2, 0xb8($sp) +/* 054DD0 800541D0 19E00008 */ blez $t7, .L800541F4 +/* 054DD4 800541D4 02202025 */ move $a0, $s1 +/* 054DD8 800541D8 8FA600B8 */ lw $a2, 0xb8($sp) +/* 054DDC 800541DC 8FA700BC */ lw $a3, 0xbc($sp) +/* 054DE0 800541E0 02202025 */ move $a0, $s1 +/* 054DE4 800541E4 0C01524B */ jal func_8005492C +/* 054DE8 800541E8 02002825 */ move $a1, $s0 +/* 054DEC 800541EC 10000005 */ b .L80054204 +/* 054DF0 800541F0 8FA500B8 */ lw $a1, 0xb8($sp) +.L800541F4: +/* 054DF4 800541F4 8FA700BC */ lw $a3, 0xbc($sp) +/* 054DF8 800541F8 0C014B5F */ jal func_80052D7C +/* 054DFC 800541FC 02002825 */ move $a1, $s0 +/* 054E00 80054200 8FA500B8 */ lw $a1, 0xb8($sp) +.L80054204: +/* 054E04 80054204 02002025 */ move $a0, $s0 +/* 054E08 80054208 00003025 */ move $a2, $zero +/* 054E0C 8005420C 00003825 */ move $a3, $zero +/* 054E10 80054210 0C014214 */ jal func_80050850 +/* 054E14 80054214 AFA00010 */ sw $zero, 0x10($sp) +/* 054E18 80054218 0C01AF6C */ jal func_8006BDB0 +/* 054E1C 8005421C 00000000 */ nop +/* 054E20 80054220 C61000C0 */ lwc1 $f16, 0xc0($s0) +/* 054E24 80054224 44805800 */ mtc1 $zero, $f11 +/* 054E28 80054228 44805000 */ mtc1 $zero, $f10 +/* 054E2C 8005422C 460084A1 */ cvt.d.s $f18, $f16 +/* 054E30 80054230 46325032 */ c.eq.d $f10, $f18 +/* 054E34 80054234 00000000 */ nop +/* 054E38 80054238 45010004 */ bc1t .L8005424C +/* 054E3C 8005423C 00000000 */ nop +/* 054E40 80054240 80580002 */ lb $t8, 2($v0) +/* 054E44 80054244 00000000 */ nop +/* 054E48 80054248 17000005 */ bnez $t8, .L80054260 +.L8005424C: +/* 054E4C 8005424C 3C198012 */ lui $t9, %hi(D_8011D581) # $t9, 0x8012 +/* 054E50 80054250 8339D581 */ lb $t9, %lo(D_8011D581)($t9) +/* 054E54 80054254 2401000A */ li $at, 10 +/* 054E58 80054258 1721004F */ bne $t9, $at, .L80054398 +/* 054E5C 8005425C 00000000 */ nop +.L80054260: +/* 054E60 80054260 920801F0 */ lbu $t0, 0x1f0($s0) +/* 054E64 80054264 02202025 */ move $a0, $s1 +/* 054E68 80054268 1100000A */ beqz $t0, .L80054294 +/* 054E6C 8005426C 02002825 */ move $a1, $s0 +/* 054E70 80054270 3C01800E */ lui $at, %hi(D_800E67CC) # $at, 0x800e +/* 054E74 80054274 C60400A8 */ lwc1 $f4, 0xa8($s0) +/* 054E78 80054278 C42967C8 */ lwc1 $f9, %lo(D_800E67C8)($at) +/* 054E7C 8005427C C42867CC */ lwc1 $f8, %lo(D_800E67CC)($at) +/* 054E80 80054280 460021A1 */ cvt.d.s $f6, $f4 +/* 054E84 80054284 46283401 */ sub.d $f16, $f6, $f8 +/* 054E88 80054288 462082A0 */ cvt.s.d $f10, $f16 +/* 054E8C 8005428C 10000009 */ b .L800542B4 +/* 054E90 80054290 E60A00A8 */ swc1 $f10, 0xa8($s0) +.L80054294: +/* 054E94 80054294 3C01800E */ lui $at, %hi(D_800E67D4) # $at, 0x800e +/* 054E98 80054298 C61200A8 */ lwc1 $f18, 0xa8($s0) +/* 054E9C 8005429C C42767D0 */ lwc1 $f7, %lo(D_800E67D0)($at) +/* 054EA0 800542A0 C42667D4 */ lwc1 $f6, %lo(D_800E67D4)($at) +/* 054EA4 800542A4 46009121 */ cvt.d.s $f4, $f18 +/* 054EA8 800542A8 46262201 */ sub.d $f8, $f4, $f6 +/* 054EAC 800542AC 46204420 */ cvt.s.d $f16, $f8 +/* 054EB0 800542B0 E61000A8 */ swc1 $f16, 0xa8($s0) +.L800542B4: +/* 054EB4 800542B4 27A900A4 */ addiu $t1, $sp, 0xa4 +/* 054EB8 800542B8 AFA90010 */ sw $t1, 0x10($sp) +/* 054EBC 800542BC 27A600A8 */ addiu $a2, $sp, 0xa8 +/* 054EC0 800542C0 0C016420 */ jal func_80059080 +/* 054EC4 800542C4 27A700A0 */ addiu $a3, $sp, 0xa0 +/* 054EC8 800542C8 920A01F0 */ lbu $t2, 0x1f0($s0) +/* 054ECC 800542CC 3C01800E */ lui $at, 0x800e +/* 054ED0 800542D0 1140000A */ beqz $t2, .L800542FC +/* 054ED4 800542D4 00000000 */ nop +/* 054ED8 800542D8 3C01800E */ lui $at, %hi(D_800E67E4) # $at, 0x800e +/* 054EDC 800542DC C60A00A8 */ lwc1 $f10, 0xa8($s0) +/* 054EE0 800542E0 C42567D8 */ lwc1 $f5, %lo(D_800E67D8)($at) +/* 054EE4 800542E4 C42467DC */ lwc1 $f4, %lo(D_800E67DC)($at) +/* 054EE8 800542E8 460054A1 */ cvt.d.s $f18, $f10 +/* 054EEC 800542EC 46249180 */ add.d $f6, $f18, $f4 +/* 054EF0 800542F0 46203220 */ cvt.s.d $f8, $f6 +/* 054EF4 800542F4 10000008 */ b .L80054318 +/* 054EF8 800542F8 E60800A8 */ swc1 $f8, 0xa8($s0) +.L800542FC: +/* 054EFC 800542FC C61000A8 */ lwc1 $f16, 0xa8($s0) +/* 054F00 80054300 C43367E0 */ lwc1 $f19, %lo(D_800E67E0)($at) +/* 054F04 80054304 C43267E4 */ lwc1 $f18, %lo(D_800E67E4)($at) +/* 054F08 80054308 460082A1 */ cvt.d.s $f10, $f16 +/* 054F0C 8005430C 46325100 */ add.d $f4, $f10, $f18 +/* 054F10 80054310 462021A0 */ cvt.s.d $f6, $f4 +/* 054F14 80054314 E60600A8 */ swc1 $f6, 0xa8($s0) +.L80054318: +/* 054F18 80054318 C7A800A8 */ lwc1 $f8, 0xa8($sp) +/* 054F1C 8005431C C630000C */ lwc1 $f16, 0xc($s1) +/* 054F20 80054320 C7B200A4 */ lwc1 $f18, 0xa4($sp) +/* 054F24 80054324 46104281 */ sub.s $f10, $f8, $f16 +/* 054F28 80054328 E7AA00A8 */ swc1 $f10, 0xa8($sp) +/* 054F2C 8005432C C6240014 */ lwc1 $f4, 0x14($s1) +/* 054F30 80054330 460A5202 */ mul.s $f8, $f10, $f10 +/* 054F34 80054334 46049181 */ sub.s $f6, $f18, $f4 +/* 054F38 80054338 E7A600A4 */ swc1 $f6, 0xa4($sp) +/* 054F3C 8005433C 46063402 */ mul.s $f16, $f6, $f6 +/* 054F40 80054340 0C0326B4 */ jal sqrtf +/* 054F44 80054344 46104300 */ add.s $f12, $f8, $f16 +/* 054F48 80054348 C7B200A8 */ lwc1 $f18, 0xa8($sp) +/* 054F4C 8005434C C7AA00A4 */ lwc1 $f10, 0xa4($sp) +/* 054F50 80054350 46009103 */ div.s $f4, $f18, $f0 +/* 054F54 80054354 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 054F58 80054358 44811000 */ mtc1 $at, $f2 +/* 054F5C 8005435C E7A000A0 */ swc1 $f0, 0xa0($sp) +/* 054F60 80054360 3C014118 */ li $at, 0x41180000 # 9.500000 +/* 054F64 80054364 240B0001 */ li $t3, 1 +/* 054F68 80054368 46005183 */ div.s $f6, $f10, $f0 +/* 054F6C 8005436C 46022202 */ mul.s $f8, $f4, $f2 +/* 054F70 80054370 E7A400A8 */ swc1 $f4, 0xa8($sp) +/* 054F74 80054374 44815000 */ mtc1 $at, $f10 +/* 054F78 80054378 E7A600A4 */ swc1 $f6, 0xa4($sp) +/* 054F7C 8005437C E628001C */ swc1 $f8, 0x1c($s1) +/* 054F80 80054380 C7B000A4 */ lwc1 $f16, 0xa4($sp) +/* 054F84 80054384 E62A0020 */ swc1 $f10, 0x20($s1) +/* 054F88 80054388 46028482 */ mul.s $f18, $f16, $f2 +/* 054F8C 8005438C E6320024 */ swc1 $f18, 0x24($s1) +/* 054F90 80054390 10000007 */ b .L800543B0 +/* 054F94 80054394 A20B01F0 */ sb $t3, 0x1f0($s0) +.L80054398: +/* 054F98 80054398 820C01E2 */ lb $t4, 0x1e2($s0) +/* 054F9C 8005439C 00000000 */ nop +/* 054FA0 800543A0 29810003 */ slti $at, $t4, 3 +/* 054FA4 800543A4 14200002 */ bnez $at, .L800543B0 +/* 054FA8 800543A8 00000000 */ nop +/* 054FAC 800543AC A20001F0 */ sb $zero, 0x1f0($s0) +.L800543B0: +/* 054FB0 800543B0 A220003B */ sb $zero, 0x3b($s1) +/* 054FB4 800543B4 860D01A2 */ lh $t5, 0x1a2($s0) +/* 054FB8 800543B8 3C018012 */ lui $at, %hi(D_8011D570) # $at, 0x8012 +/* 054FBC 800543BC 000D7023 */ negu $t6, $t5 +/* 054FC0 800543C0 000E7A03 */ sra $t7, $t6, 8 +/* 054FC4 800543C4 448F3000 */ mtc1 $t7, $f6 +/* 054FC8 800543C8 C428D570 */ lwc1 $f8, %lo(D_8011D570)($at) +/* 054FCC 800543CC 46803120 */ cvt.s.w $f4, $f6 +/* 054FD0 800543D0 24190028 */ li $t9, 40 +/* 054FD4 800543D4 02002025 */ move $a0, $s0 +/* 054FD8 800543D8 46082403 */ div.s $f16, $f4, $f8 +/* 054FDC 800543DC 4458F800 */ cfc1 $t8, $31 +/* 054FE0 800543E0 00000000 */ nop +/* 054FE4 800543E4 37010003 */ ori $at, $t8, 3 +/* 054FE8 800543E8 38210002 */ xori $at, $at, 2 +/* 054FEC 800543EC 44C1F800 */ ctc1 $at, $31 +/* 054FF0 800543F0 00000000 */ nop +/* 054FF4 800543F4 460084A4 */ cvt.w.s $f18, $f16 +/* 054FF8 800543F8 44029000 */ mfc1 $v0, $f18 +/* 054FFC 800543FC 44D8F800 */ ctc1 $t8, $31 +/* 055000 80054400 03221023 */ subu $v0, $t9, $v0 +/* 055004 80054404 04410003 */ bgez $v0, .L80054414 +/* 055008 80054408 2841004A */ slti $at, $v0, 0x4a +/* 05500C 8005440C 00001025 */ move $v0, $zero +/* 055010 80054410 2841004A */ slti $at, $v0, 0x4a +.L80054414: +/* 055014 80054414 14200002 */ bnez $at, .L80054420 +/* 055018 80054418 00000000 */ nop +/* 05501C 8005441C 24020049 */ li $v0, 73 +.L80054420: +/* 055020 80054420 0C0148D3 */ jal func_8005234C +/* 055024 80054424 A6220018 */ sh $v0, 0x18($s1) +/* 055028 80054428 860401A2 */ lh $a0, 0x1a2($s0) +/* 05502C 8005442C 3C088012 */ lui $t0, %hi(D_8011D554) # $t0, 0x8012 +/* 055030 80054430 8D08D554 */ lw $t0, %lo(D_8011D554)($t0) +/* 055034 80054434 3089FFFF */ andi $t1, $a0, 0xffff +/* 055038 80054438 34018001 */ li $at, 32769 +/* 05503C 8005443C 01091023 */ subu $v0, $t0, $t1 +/* 055040 80054440 0041082A */ slt $at, $v0, $at +/* 055044 80054444 8FAB00B8 */ lw $t3, 0xb8($sp) +/* 055048 80054448 14200003 */ bnez $at, .L80054458 +/* 05504C 8005444C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 055050 80054450 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 055054 80054454 00411021 */ addu $v0, $v0, $at +.L80054458: +/* 055058 80054458 28418000 */ slti $at, $v0, -0x8000 +/* 05505C 8005445C 10200002 */ beqz $at, .L80054468 +/* 055060 80054460 3401FFFF */ li $at, 65535 +/* 055064 80054464 00411021 */ addu $v0, $v0, $at +.L80054468: +/* 055068 80054468 00025083 */ sra $t2, $v0, 2 +/* 05506C 8005446C 294102EF */ slti $at, $t2, 0x2ef +/* 055070 80054470 14200002 */ bnez $at, .L8005447C +/* 055074 80054474 01401025 */ move $v0, $t2 +/* 055078 80054478 240202EE */ li $v0, 750 +.L8005447C: +/* 05507C 8005447C 2841FD12 */ slti $at, $v0, -0x2ee +/* 055080 80054480 10200002 */ beqz $at, .L8005448C +/* 055084 80054484 00000000 */ nop +/* 055088 80054488 2402FD12 */ li $v0, -750 +.L8005448C: +/* 05508C 8005448C 004B0019 */ multu $v0, $t3 +/* 055090 80054490 860E01A0 */ lh $t6, 0x1a0($s0) +/* 055094 80054494 3C198012 */ lui $t9, %hi(D_8011D558) # $t9, 0x8012 +/* 055098 80054498 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 +/* 05509C 8005449C 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 +/* 0550A0 800544A0 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0550A4 800544A4 00006012 */ mflo $t4 +/* 0550A8 800544A8 008C6821 */ addu $t5, $a0, $t4 +/* 0550AC 800544AC A60D01A2 */ sh $t5, 0x1a2($s0) +/* 0550B0 800544B0 860F01A2 */ lh $t7, 0x1a2($s0) +/* 0550B4 800544B4 27A40050 */ addiu $a0, $sp, 0x50 +/* 0550B8 800544B8 01CFC021 */ addu $t8, $t6, $t7 +/* 0550BC 800544BC A6380000 */ sh $t8, ($s1) +/* 0550C0 800544C0 860301A6 */ lh $v1, 0x1a6($s0) +/* 0550C4 800544C4 8F39D558 */ lw $t9, %lo(D_8011D558)($t9) +/* 0550C8 800544C8 8FA900B8 */ lw $t1, 0xb8($sp) +/* 0550CC 800544CC 03234023 */ subu $t0, $t9, $v1 +/* 0550D0 800544D0 01090019 */ multu $t0, $t1 +/* 0550D4 800544D4 860D01A4 */ lh $t5, 0x1a4($s0) +/* 0550D8 800544D8 00005012 */ mflo $t2 +/* 0550DC 800544DC 000A5903 */ sra $t3, $t2, 4 +/* 0550E0 800544E0 006B6021 */ addu $t4, $v1, $t3 +/* 0550E4 800544E4 A60C01A6 */ sh $t4, 0x1a6($s0) +/* 0550E8 800544E8 860E01A6 */ lh $t6, 0x1a6($s0) +/* 0550EC 800544EC 00000000 */ nop +/* 0550F0 800544F0 01AE7821 */ addu $t7, $t5, $t6 +/* 0550F4 800544F4 A62F0004 */ sh $t7, 4($s1) +/* 0550F8 800544F8 921801F0 */ lbu $t8, 0x1f0($s0) +/* 0550FC 800544FC 00000000 */ nop +/* 055100 80054500 17000019 */ bnez $t8, .L80054568 +/* 055104 80054504 00000000 */ nop +/* 055108 80054508 861901A0 */ lh $t9, 0x1a0($s0) +/* 05510C 8005450C 8E08010C */ lw $t0, 0x10c($s0) +/* 055110 80054510 44800000 */ mtc1 $zero, $f0 +/* 055114 80054514 44815000 */ mtc1 $at, $f10 +/* 055118 80054518 03284821 */ addu $t1, $t9, $t0 +/* 05511C 8005451C A4A90000 */ sh $t1, ($a1) +/* 055120 80054520 A4A00002 */ sh $zero, 2($a1) +/* 055124 80054524 A4A00004 */ sh $zero, 4($a1) +/* 055128 80054528 E4A0000C */ swc1 $f0, 0xc($a1) +/* 05512C 8005452C E4A00010 */ swc1 $f0, 0x10($a1) +/* 055130 80054530 E4A00014 */ swc1 $f0, 0x14($a1) +/* 055134 80054534 0C01BF9D */ jal func_8006FE74 +/* 055138 80054538 E4AA0008 */ swc1 $f10, 8($a1) +/* 05513C 8005453C 8E050030 */ lw $a1, 0x30($s0) +/* 055140 80054540 8E07002C */ lw $a3, 0x2c($s0) +/* 055144 80054544 262A001C */ addiu $t2, $s1, 0x1c +/* 055148 80054548 27AB00AC */ addiu $t3, $sp, 0xac +/* 05514C 8005454C 262C0024 */ addiu $t4, $s1, 0x24 +/* 055150 80054550 AFAC0018 */ sw $t4, 0x18($sp) +/* 055154 80054554 AFAB0014 */ sw $t3, 0x14($sp) +/* 055158 80054558 AFAA0010 */ sw $t2, 0x10($sp) +/* 05515C 8005455C 27A40050 */ addiu $a0, $sp, 0x50 +/* 055160 80054560 0C01BD93 */ jal func_8006F64C +/* 055164 80054564 24060000 */ li $a2, 0 +.L80054568: +/* 055168 80054568 820D0175 */ lb $t5, 0x175($s0) +/* 05516C 8005456C 3C018012 */ lui $at, %hi(D_8011D578) # $at, 0x8012 +/* 055170 80054570 11A00007 */ beqz $t5, .L80054590 +/* 055174 80054574 02202025 */ move $a0, $s1 +/* 055178 80054578 C426D578 */ lwc1 $f6, %lo(D_8011D578)($at) +/* 05517C 8005457C 3C018012 */ lui $at, %hi(D_8011D57C) # $at, 0x8012 +/* 055180 80054580 E626001C */ swc1 $f6, 0x1c($s1) +/* 055184 80054584 C424D57C */ lwc1 $f4, %lo(D_8011D57C)($at) +/* 055188 80054588 00000000 */ nop +/* 05518C 8005458C E6240024 */ swc1 $f4, 0x24($s1) +.L80054590: +/* 055190 80054590 8E0E0148 */ lw $t6, 0x148($s0) +/* 055194 80054594 8FA600BC */ lw $a2, 0xbc($sp) +/* 055198 80054598 15C00029 */ bnez $t6, .L80054640 +/* 05519C 8005459C 00000000 */ nop +/* 0551A0 800545A0 C628001C */ lwc1 $f8, 0x1c($s1) +/* 0551A4 800545A4 00000000 */ nop +/* 0551A8 800545A8 E7A800A8 */ swc1 $f8, 0xa8($sp) +/* 0551AC 800545AC C6300024 */ lwc1 $f16, 0x24($s1) +/* 0551B0 800545B0 C7B200A8 */ lwc1 $f18, 0xa8($sp) +/* 0551B4 800545B4 E7B000A4 */ swc1 $f16, 0xa4($sp) +/* 0551B8 800545B8 820F01D2 */ lb $t7, 0x1d2($s0) +/* 0551BC 800545BC 00000000 */ nop +/* 0551C0 800545C0 11E00009 */ beqz $t7, .L800545E8 +/* 0551C4 800545C4 00000000 */ nop +/* 0551C8 800545C8 C60A011C */ lwc1 $f10, 0x11c($s0) +/* 0551CC 800545CC C7A400A4 */ lwc1 $f4, 0xa4($sp) +/* 0551D0 800545D0 460A9180 */ add.s $f6, $f18, $f10 +/* 0551D4 800545D4 E7A600A8 */ swc1 $f6, 0xa8($sp) +/* 0551D8 800545D8 C6080120 */ lwc1 $f8, 0x120($s0) +/* 0551DC 800545DC 00000000 */ nop +/* 0551E0 800545E0 46082400 */ add.s $f16, $f4, $f8 +/* 0551E4 800545E4 E7B000A4 */ swc1 $f16, 0xa4($sp) +.L800545E8: +/* 0551E8 800545E8 C7B200A8 */ lwc1 $f18, 0xa8($sp) +/* 0551EC 800545EC C60A0084 */ lwc1 $f10, 0x84($s0) +/* 0551F0 800545F0 C7A400A4 */ lwc1 $f4, 0xa4($sp) +/* 0551F4 800545F4 460A9180 */ add.s $f6, $f18, $f10 +/* 0551F8 800545F8 C7A000BC */ lwc1 $f0, 0xbc($sp) +/* 0551FC 800545FC E7A600A8 */ swc1 $f6, 0xa8($sp) +/* 055200 80054600 C6080088 */ lwc1 $f8, 0x88($s0) +/* 055204 80054604 46003482 */ mul.s $f18, $f6, $f0 +/* 055208 80054608 46082400 */ add.s $f16, $f4, $f8 +/* 05520C 8005460C 02202025 */ move $a0, $s1 +/* 055210 80054610 E7B000A4 */ swc1 $f16, 0xa4($sp) +/* 055214 80054614 C62A0020 */ lwc1 $f10, 0x20($s1) +/* 055218 80054618 44059000 */ mfc1 $a1, $f18 +/* 05521C 8005461C 46005102 */ mul.s $f4, $f10, $f0 +/* 055220 80054620 00000000 */ nop +/* 055224 80054624 46008202 */ mul.s $f8, $f16, $f0 +/* 055228 80054628 44062000 */ mfc1 $a2, $f4 +/* 05522C 8005462C 44074000 */ mfc1 $a3, $f8 +/* 055230 80054630 0C00455C */ jal func_80011570 +/* 055234 80054634 00000000 */ nop +/* 055238 80054638 10000003 */ b .L80054648 +/* 05523C 8005463C 00000000 */ nop +.L80054640: +/* 055240 80054640 0C0141D5 */ jal func_80050754 +/* 055244 80054644 02002825 */ move $a1, $s0 +.L80054648: +/* 055248 80054648 3C188012 */ lui $t8, %hi(D_8011D55C) # $t8, 0x8012 +/* 05524C 8005464C 8F18D55C */ lw $t8, %lo(D_8011D55C)($t8) +/* 055250 80054650 2401FFFF */ li $at, -1 +/* 055254 80054654 1701000B */ bne $t8, $at, .L80054684 +/* 055258 80054658 8FA600B8 */ lw $a2, 0xb8($sp) +/* 05525C 8005465C 0C008D5A */ jal func_80023568 +/* 055260 80054660 00000000 */ nop +/* 055264 80054664 14400006 */ bnez $v0, .L80054680 +/* 055268 80054668 02202025 */ move $a0, $s1 +/* 05526C 8005466C 8FA600B8 */ lw $a2, 0xb8($sp) +/* 055270 80054670 0C0156A1 */ jal func_80055A84 +/* 055274 80054674 02002825 */ move $a1, $s0 +/* 055278 80054678 10000006 */ b .L80054694 +/* 05527C 8005467C 82190201 */ lb $t9, 0x201($s0) +.L80054680: +/* 055280 80054680 8FA600B8 */ lw $a2, 0xb8($sp) +.L80054684: +/* 055284 80054684 02202025 */ move $a0, $s1 +/* 055288 80054688 0C0153F4 */ jal func_80054FD0 +/* 05528C 8005468C 02002825 */ move $a1, $s0 +/* 055290 80054690 82190201 */ lb $t9, 0x201($s0) +.L80054694: +/* 055294 80054694 00000000 */ nop +/* 055298 80054698 17200003 */ bnez $t9, .L800546A8 +/* 05529C 8005469C 00000000 */ nop +/* 0552A0 800546A0 10000008 */ b .L800546C4 +/* 0552A4 800546A4 AE200074 */ sw $zero, 0x74($s1) +.L800546A8: +/* 0552A8 800546A8 820801D6 */ lb $t0, 0x1d6($s0) +/* 0552AC 800546AC 8FA500B8 */ lw $a1, 0xb8($sp) +/* 0552B0 800546B0 29010005 */ slti $at, $t0, 5 +/* 0552B4 800546B4 10200004 */ beqz $at, .L800546C8 +/* 0552B8 800546B8 8FA600BC */ lw $a2, 0xbc($sp) +/* 0552BC 800546BC 0C02BDC5 */ jal func_800AF714 +/* 0552C0 800546C0 02202025 */ move $a0, $s1 +.L800546C4: +/* 0552C4 800546C4 8FA600BC */ lw $a2, 0xbc($sp) +.L800546C8: +/* 0552C8 800546C8 02202025 */ move $a0, $s1 +/* 0552CC 800546CC 0C014DD4 */ jal func_80053750 +/* 0552D0 800546D0 02002825 */ move $a1, $s0 +/* 0552D4 800546D4 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0552D8 800546D8 44813000 */ mtc1 $at, $f6 +/* 0552DC 800546DC C7B200BC */ lwc1 $f18, 0xbc($sp) +/* 0552E0 800546E0 C7B00098 */ lwc1 $f16, 0x98($sp) +/* 0552E4 800546E4 46123283 */ div.s $f10, $f6, $f18 +/* 0552E8 800546E8 3C018012 */ lui $at, %hi(D_8011D548) # $at, 0x8012 +/* 0552EC 800546EC C426D548 */ lwc1 $f6, %lo(D_8011D548)($at) +/* 0552F0 800546F0 3C018012 */ lui $at, %hi(D_8011D54C) # $at, 0x8012 +/* 0552F4 800546F4 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 +/* 0552F8 800546F8 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 +/* 0552FC 800546FC 44800000 */ mtc1 $zero, $f0 +/* 055300 80054700 27A40050 */ addiu $a0, $sp, 0x50 +/* 055304 80054704 E7AA00AC */ swc1 $f10, 0xac($sp) +/* 055308 80054708 C624000C */ lwc1 $f4, 0xc($s1) +/* 05530C 8005470C 00000000 */ nop +/* 055310 80054710 46102201 */ sub.s $f8, $f4, $f16 +/* 055314 80054714 C6100084 */ lwc1 $f16, 0x84($s0) +/* 055318 80054718 46064481 */ sub.s $f18, $f8, $f6 +/* 05531C 8005471C 460A9102 */ mul.s $f4, $f18, $f10 +/* 055320 80054720 C7B20094 */ lwc1 $f18, 0x94($sp) +/* 055324 80054724 46102201 */ sub.s $f8, $f4, $f16 +/* 055328 80054728 E7A800A8 */ swc1 $f8, 0xa8($sp) +/* 05532C 8005472C C6260010 */ lwc1 $f6, 0x10($s1) +/* 055330 80054730 C6280014 */ lwc1 $f8, 0x14($s1) +/* 055334 80054734 46123101 */ sub.s $f4, $f6, $f18 +/* 055338 80054738 460A2402 */ mul.s $f16, $f4, $f10 +/* 05533C 8005473C E6300020 */ swc1 $f16, 0x20($s1) +/* 055340 80054740 C7A60090 */ lwc1 $f6, 0x90($sp) +/* 055344 80054744 C424D54C */ lwc1 $f4, %lo(D_8011D54C)($at) +/* 055348 80054748 46064481 */ sub.s $f18, $f8, $f6 +/* 05534C 8005474C C7B000AC */ lwc1 $f16, 0xac($sp) +/* 055350 80054750 46049281 */ sub.s $f10, $f18, $f4 +/* 055354 80054754 C6060088 */ lwc1 $f6, 0x88($s0) +/* 055358 80054758 46105202 */ mul.s $f8, $f10, $f16 +/* 05535C 8005475C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 055360 80054760 44812000 */ mtc1 $at, $f4 +/* 055364 80054764 46064481 */ sub.s $f18, $f8, $f6 +/* 055368 80054768 E7B200A4 */ swc1 $f18, 0xa4($sp) +/* 05536C 8005476C 8E0A010C */ lw $t2, 0x10c($s0) +/* 055370 80054770 860901A0 */ lh $t1, 0x1a0($s0) +/* 055374 80054774 00000000 */ nop +/* 055378 80054778 012A5821 */ addu $t3, $t1, $t2 +/* 05537C 8005477C 000B6023 */ negu $t4, $t3 +/* 055380 80054780 A4AC0000 */ sh $t4, ($a1) +/* 055384 80054784 862D0002 */ lh $t5, 2($s1) +/* 055388 80054788 00000000 */ nop +/* 05538C 8005478C 000D7023 */ negu $t6, $t5 +/* 055390 80054790 A4AE0002 */ sh $t6, 2($a1) +/* 055394 80054794 862F0004 */ lh $t7, 4($s1) +/* 055398 80054798 E4A0000C */ swc1 $f0, 0xc($a1) +/* 05539C 8005479C 000FC023 */ negu $t8, $t7 +/* 0553A0 800547A0 A4B80004 */ sh $t8, 4($a1) +/* 0553A4 800547A4 E4A00010 */ swc1 $f0, 0x10($a1) +/* 0553A8 800547A8 E4A00014 */ swc1 $f0, 0x14($a1) +/* 0553AC 800547AC 0C01BF9D */ jal func_8006FE74 +/* 0553B0 800547B0 E4A40008 */ swc1 $f4, 8($a1) +/* 0553B4 800547B4 8FA500A8 */ lw $a1, 0xa8($sp) +/* 0553B8 800547B8 8FA700A4 */ lw $a3, 0xa4($sp) +/* 0553BC 800547BC 27B9009C */ addiu $t9, $sp, 0x9c +/* 0553C0 800547C0 27A800AC */ addiu $t0, $sp, 0xac +/* 0553C4 800547C4 27A900A0 */ addiu $t1, $sp, 0xa0 +/* 0553C8 800547C8 AFA90018 */ sw $t1, 0x18($sp) +/* 0553CC 800547CC AFA80014 */ sw $t0, 0x14($sp) +/* 0553D0 800547D0 AFB90010 */ sw $t9, 0x10($sp) +/* 0553D4 800547D4 27A40050 */ addiu $a0, $sp, 0x50 +/* 0553D8 800547D8 0C01BD93 */ jal func_8006F64C +/* 0553DC 800547DC 24060000 */ li $a2, 0 +/* 0553E0 800547E0 820201D2 */ lb $v0, 0x1d2($s0) +/* 0553E4 800547E4 C7B000A0 */ lwc1 $f16, 0xa0($sp) +/* 0553E8 800547E8 1040000B */ beqz $v0, .L80054818 +/* 0553EC 800547EC 00000000 */ nop +/* 0553F0 800547F0 8FAA00B8 */ lw $t2, 0xb8($sp) +/* 0553F4 800547F4 00000000 */ nop +/* 0553F8 800547F8 004A5823 */ subu $t3, $v0, $t2 +/* 0553FC 800547FC A20B01D2 */ sb $t3, 0x1d2($s0) +/* 055400 80054800 820C01D2 */ lb $t4, 0x1d2($s0) +/* 055404 80054804 00000000 */ nop +/* 055408 80054808 05810044 */ bgez $t4, .L8005491C +/* 05540C 8005480C 8FBF002C */ lw $ra, 0x2c($sp) +/* 055410 80054810 10000041 */ b .L80054918 +/* 055414 80054814 A20001D2 */ sb $zero, 0x1d2($s0) +.L80054818: +/* 055418 80054818 C60A002C */ lwc1 $f10, 0x2c($s0) +/* 05541C 8005481C 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 055420 80054820 46105201 */ sub.s $f8, $f10, $f16 +/* 055424 80054824 44811800 */ mtc1 $at, $f3 +/* 055428 80054828 E7A800AC */ swc1 $f8, 0xac($sp) +/* 05542C 8005482C C7A600AC */ lwc1 $f6, 0xac($sp) +/* 055430 80054830 44801000 */ mtc1 $zero, $f2 +/* 055434 80054834 46003021 */ cvt.d.s $f0, $f6 +/* 055438 80054838 4620103C */ c.lt.d $f2, $f0 +/* 05543C 8005483C 44806000 */ mtc1 $zero, $f12 +/* 055440 80054840 4500000A */ bc1f .L8005486C +/* 055444 80054844 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 055448 80054848 C612002C */ lwc1 $f18, 0x2c($s0) +/* 05544C 8005484C 46220281 */ sub.d $f10, $f0, $f2 +/* 055450 80054850 46009121 */ cvt.d.s $f4, $f18 +/* 055454 80054854 462A2401 */ sub.d $f16, $f4, $f10 +/* 055458 80054858 46208220 */ cvt.s.d $f8, $f16 +/* 05545C 8005485C E608002C */ swc1 $f8, 0x2c($s0) +/* 055460 80054860 C7A600AC */ lwc1 $f6, 0xac($sp) +/* 055464 80054864 00000000 */ nop +/* 055468 80054868 46003021 */ cvt.d.s $f0, $f6 +.L8005486C: +/* 05546C 8005486C 44816800 */ mtc1 $at, $f13 +/* 055470 80054870 00000000 */ nop +/* 055474 80054874 462C003C */ c.lt.d $f0, $f12 +/* 055478 80054878 00000000 */ nop +/* 05547C 8005487C 45000007 */ bc1f .L8005489C +/* 055480 80054880 00000000 */ nop +/* 055484 80054884 C612002C */ lwc1 $f18, 0x2c($s0) +/* 055488 80054888 46220280 */ add.d $f10, $f0, $f2 +/* 05548C 8005488C 46009121 */ cvt.d.s $f4, $f18 +/* 055490 80054890 462A2401 */ sub.d $f16, $f4, $f10 +/* 055494 80054894 46208220 */ cvt.s.d $f8, $f16 +/* 055498 80054898 E608002C */ swc1 $f8, 0x2c($s0) +.L8005489C: +/* 05549C 8005489C C6060030 */ lwc1 $f6, 0x30($s0) +/* 0554A0 800548A0 C7B2009C */ lwc1 $f18, 0x9c($sp) +/* 0554A4 800548A4 00000000 */ nop +/* 0554A8 800548A8 46123101 */ sub.s $f4, $f6, $f18 +/* 0554AC 800548AC E7A400AC */ swc1 $f4, 0xac($sp) +/* 0554B0 800548B0 C7AA00AC */ lwc1 $f10, 0xac($sp) +/* 0554B4 800548B4 00000000 */ nop +/* 0554B8 800548B8 46005021 */ cvt.d.s $f0, $f10 +/* 0554BC 800548BC 4620103C */ c.lt.d $f2, $f0 +/* 0554C0 800548C0 00000000 */ nop +/* 0554C4 800548C4 4500000A */ bc1f .L800548F0 +/* 0554C8 800548C8 00000000 */ nop +/* 0554CC 800548CC C6100030 */ lwc1 $f16, 0x30($s0) +/* 0554D0 800548D0 46220181 */ sub.d $f6, $f0, $f2 +/* 0554D4 800548D4 46008221 */ cvt.d.s $f8, $f16 +/* 0554D8 800548D8 46264481 */ sub.d $f18, $f8, $f6 +/* 0554DC 800548DC 46209120 */ cvt.s.d $f4, $f18 +/* 0554E0 800548E0 E6040030 */ swc1 $f4, 0x30($s0) +/* 0554E4 800548E4 C7AA00AC */ lwc1 $f10, 0xac($sp) +/* 0554E8 800548E8 00000000 */ nop +/* 0554EC 800548EC 46005021 */ cvt.d.s $f0, $f10 +.L800548F0: +/* 0554F0 800548F0 462C003C */ c.lt.d $f0, $f12 +/* 0554F4 800548F4 00000000 */ nop +/* 0554F8 800548F8 45000008 */ bc1f .L8005491C +/* 0554FC 800548FC 8FBF002C */ lw $ra, 0x2c($sp) +/* 055500 80054900 C6100030 */ lwc1 $f16, 0x30($s0) +/* 055504 80054904 46220180 */ add.d $f6, $f0, $f2 +/* 055508 80054908 46008221 */ cvt.d.s $f8, $f16 +/* 05550C 8005490C 46264481 */ sub.d $f18, $f8, $f6 +/* 055510 80054910 46209120 */ cvt.s.d $f4, $f18 +/* 055514 80054914 E6040030 */ swc1 $f4, 0x30($s0) +.L80054918: +/* 055518 80054918 8FBF002C */ lw $ra, 0x2c($sp) +.L8005491C: +/* 05551C 8005491C 8FB00024 */ lw $s0, 0x24($sp) +/* 055520 80054920 8FB10028 */ lw $s1, 0x28($sp) +/* 055524 80054924 03E00008 */ jr $ra +/* 055528 80054928 27BD00B0 */ addiu $sp, $sp, 0xb0 + diff --git a/asm/non_matchings/unknown_043920/func_8005492C.s b/asm/non_matchings/unknown_043920/func_8005492C.s new file mode 100644 index 00000000..5f54f16e --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8005492C.s @@ -0,0 +1,454 @@ +glabel func_8005492C +/* 05552C 8005492C 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 055530 80054930 AFBF0014 */ sw $ra, 0x14($sp) +/* 055534 80054934 AFA40048 */ sw $a0, 0x48($sp) +/* 055538 80054938 AFA60050 */ sw $a2, 0x50($sp) +/* 05553C 8005493C AFA70054 */ sw $a3, 0x54($sp) +/* 055540 80054940 44809000 */ mtc1 $zero, $f18 +/* 055544 80054944 C4AC002C */ lwc1 $f12, 0x2c($a1) +/* 055548 80054948 00803825 */ move $a3, $a0 +/* 05554C 8005494C 4612603C */ c.lt.s $f12, $f18 +/* 055550 80054950 460C6082 */ mul.s $f2, $f12, $f12 +/* 055554 80054954 E4B20084 */ swc1 $f18, 0x84($a1) +/* 055558 80054958 45000002 */ bc1f .L80054964 +/* 05555C 8005495C E4B20088 */ swc1 $f18, 0x88($a1) +/* 055560 80054960 46001087 */ neg.s $f2, $f2 +.L80054964: +/* 055564 80054964 AFA00038 */ sw $zero, 0x38($sp) +/* 055568 80054968 00E02025 */ move $a0, $a3 +/* 05556C 8005496C AFA5004C */ sw $a1, 0x4c($sp) +/* 055570 80054970 AFA70048 */ sw $a3, 0x48($sp) +/* 055574 80054974 0C015C88 */ jal func_80057220 +/* 055578 80054978 E7A20030 */ swc1 $f2, 0x30($sp) +/* 05557C 8005497C 8FA5004C */ lw $a1, 0x4c($sp) +/* 055580 80054980 E7A00018 */ swc1 $f0, 0x18($sp) +/* 055584 80054984 84A201A2 */ lh $v0, 0x1a2($a1) +/* 055588 80054988 8FA70048 */ lw $a3, 0x48($sp) +/* 05558C 8005498C C7A20030 */ lwc1 $f2, 0x30($sp) +/* 055590 80054990 28411C01 */ slti $at, $v0, 0x1c01 +/* 055594 80054994 10200003 */ beqz $at, .L800549A4 +/* 055598 80054998 3C048012 */ lui $a0, %hi(D_8011D534) # $a0, 0x8012 +/* 05559C 8005499C 2841E400 */ slti $at, $v0, -0x1c00 +/* 0555A0 800549A0 10200002 */ beqz $at, .L800549AC +.L800549A4: +/* 0555A4 800549A4 240E0001 */ li $t6, 1 +/* 0555A8 800549A8 AFAE0038 */ sw $t6, 0x38($sp) +.L800549AC: +/* 0555AC 800549AC 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 +/* 0555B0 800549B0 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) +/* 0555B4 800549B4 8C84D534 */ lw $a0, %lo(D_8011D534)($a0) +/* 0555B8 800549B8 304F4000 */ andi $t7, $v0, 0x4000 +/* 0555BC 800549BC 24030006 */ li $v1, 6 +/* 0555C0 800549C0 11E00002 */ beqz $t7, .L800549CC +/* 0555C4 800549C4 01E01025 */ move $v0, $t7 +/* 0555C8 800549C8 2403000C */ li $v1, 12 +.L800549CC: +/* 0555CC 800549CC 10400006 */ beqz $v0, .L800549E8 +/* 0555D0 800549D0 3C01800E */ lui $at, %hi(D_800E67EC) # $at, 0x800e +/* 0555D4 800549D4 80B801E6 */ lb $t8, 0x1e6($a1) +/* 0555D8 800549D8 00000000 */ nop +/* 0555DC 800549DC 13000002 */ beqz $t8, .L800549E8 +/* 0555E0 800549E0 00000000 */ nop +/* 0555E4 800549E4 24030012 */ li $v1, 18 +.L800549E8: +/* 0555E8 800549E8 C4A4002C */ lwc1 $f4, 0x2c($a1) +/* 0555EC 800549EC C42767E8 */ lwc1 $f7, %lo(D_800E67E8)($at) +/* 0555F0 800549F0 C42667EC */ lwc1 $f6, %lo(D_800E67EC)($at) +/* 0555F4 800549F4 46002021 */ cvt.d.s $f0, $f4 +/* 0555F8 800549F8 4626003C */ c.lt.d $f0, $f6 +/* 0555FC 800549FC 00001025 */ move $v0, $zero +/* 055600 80054A00 45000005 */ bc1f .L80054A18 +/* 055604 80054A04 3C01800E */ lui $at, %hi(D_800E67F4) # $at, 0x800e +/* 055608 80054A08 00830019 */ multu $a0, $v1 +/* 05560C 80054A0C 00001012 */ mflo $v0 +/* 055610 80054A10 00000000 */ nop +/* 055614 80054A14 00000000 */ nop +.L80054A18: +/* 055618 80054A18 C42967F0 */ lwc1 $f9, %lo(D_800E67F0)($at) +/* 05561C 80054A1C C42867F4 */ lwc1 $f8, %lo(D_800E67F4)($at) +/* 055620 80054A20 8FA80050 */ lw $t0, 0x50($sp) +/* 055624 80054A24 4620403C */ c.lt.d $f8, $f0 +/* 055628 80054A28 00000000 */ nop +/* 05562C 80054A2C 45000005 */ bc1f .L80054A44 +/* 055630 80054A30 0004C823 */ negu $t9, $a0 +/* 055634 80054A34 03230019 */ multu $t9, $v1 +/* 055638 80054A38 00001012 */ mflo $v0 +/* 05563C 80054A3C 00000000 */ nop +/* 055640 80054A40 00000000 */ nop +.L80054A44: +/* 055644 80054A44 00480019 */ multu $v0, $t0 +/* 055648 80054A48 3C018012 */ lui $at, %hi(D_8011D570) # $at, 0x8012 +/* 05564C 80054A4C C426D570 */ lwc1 $f6, %lo(D_8011D570)($at) +/* 055650 80054A50 84AB01A0 */ lh $t3, 0x1a0($a1) +/* 055654 80054A54 00A02025 */ move $a0, $a1 +/* 055658 80054A58 00001012 */ mflo $v0 +/* 05565C 80054A5C 00024843 */ sra $t1, $v0, 1 +/* 055660 80054A60 44895000 */ mtc1 $t1, $f10 +/* 055664 80054A64 00000000 */ nop +/* 055668 80054A68 46805120 */ cvt.s.w $f4, $f10 +/* 05566C 80054A6C 46062202 */ mul.s $f8, $f4, $f6 +/* 055670 80054A70 444AF800 */ cfc1 $t2, $31 +/* 055674 80054A74 00000000 */ nop +/* 055678 80054A78 35410003 */ ori $at, $t2, 3 +/* 05567C 80054A7C 38210002 */ xori $at, $at, 2 +/* 055680 80054A80 44C1F800 */ ctc1 $at, $31 +/* 055684 80054A84 00000000 */ nop +/* 055688 80054A88 460042A4 */ cvt.w.s $f10, $f8 +/* 05568C 80054A8C 440C5000 */ mfc1 $t4, $f10 +/* 055690 80054A90 44CAF800 */ ctc1 $t2, $31 +/* 055694 80054A94 016C6823 */ subu $t5, $t3, $t4 +/* 055698 80054A98 A4AD01A0 */ sh $t5, 0x1a0($a1) +/* 05569C 80054A9C E7A20030 */ swc1 $f2, 0x30($sp) +/* 0556A0 80054AA0 AFA70048 */ sw $a3, 0x48($sp) +/* 0556A4 80054AA4 0C014D1E */ jal func_80053478 +/* 0556A8 80054AA8 AFA5004C */ sw $a1, 0x4c($sp) +/* 0556AC 80054AAC 8FA5004C */ lw $a1, 0x4c($sp) +/* 0556B0 80054AB0 3C01800E */ lui $at, %hi(D_800E67FC) # $at, 0x800e +/* 0556B4 80054AB4 C4A40030 */ lwc1 $f4, 0x30($a1) +/* 0556B8 80054AB8 C42967F8 */ lwc1 $f9, %lo(D_800E67F8)($at) +/* 0556BC 80054ABC C42867FC */ lwc1 $f8, %lo(D_800E67FC)($at) +/* 0556C0 80054AC0 460021A1 */ cvt.d.s $f6, $f4 +/* 0556C4 80054AC4 46283282 */ mul.d $f10, $f6, $f8 +/* 0556C8 80054AC8 44809000 */ mtc1 $zero, $f18 +/* 0556CC 80054ACC 90A401DC */ lbu $a0, 0x1dc($a1) +/* 0556D0 80054AD0 8FA70048 */ lw $a3, 0x48($sp) +/* 0556D4 80054AD4 C7A20030 */ lwc1 $f2, 0x30($sp) +/* 0556D8 80054AD8 46205120 */ cvt.s.d $f4, $f10 +/* 0556DC 80054ADC 240100FF */ li $at, 255 +/* 0556E0 80054AE0 00001825 */ move $v1, $zero +/* 0556E4 80054AE4 E4A40030 */ swc1 $f4, 0x30($a1) +/* 0556E8 80054AE8 10810008 */ beq $a0, $at, .L80054B0C +/* 0556EC 80054AEC 46009006 */ mov.s $f0, $f18 +/* 0556F0 80054AF0 00047080 */ sll $t6, $a0, 2 +/* 0556F4 80054AF4 3C01800E */ lui $at, 0x800e +/* 0556F8 80054AF8 002E0821 */ addu $at, $at, $t6 +/* 0556FC 80054AFC C426CB9C */ lwc1 $f6, -0x3464($at) +/* 055700 80054B00 18800002 */ blez $a0, .L80054B0C +/* 055704 80054B04 46069000 */ add.s $f0, $f18, $f6 +/* 055708 80054B08 00801825 */ move $v1, $a0 +.L80054B0C: +/* 05570C 80054B0C C4AA00C0 */ lwc1 $f10, 0xc0($a1) +/* 055710 80054B10 44804800 */ mtc1 $zero, $f9 +/* 055714 80054B14 44804000 */ mtc1 $zero, $f8 +/* 055718 80054B18 46005121 */ cvt.d.s $f4, $f10 +/* 05571C 80054B1C 46244032 */ c.eq.d $f8, $f4 +/* 055720 80054B20 00000000 */ nop +/* 055724 80054B24 45010003 */ bc1t .L80054B34 +/* 055728 80054B28 3C01800E */ lui $at, %hi(D_800E6800) # $at, 0x800e +/* 05572C 80054B2C C4206800 */ lwc1 $f0, %lo(D_800E6800)($at) +/* 055730 80054B30 00000000 */ nop +.L80054B34: +/* 055734 80054B34 3C018012 */ lui $at, %hi(D_8011D581) # $at, 0x8012 +/* 055738 80054B38 A023D581 */ sb $v1, %lo(D_8011D581)($at) +/* 05573C 80054B3C 24010004 */ li $at, 4 +/* 055740 80054B40 A0A001E6 */ sb $zero, 0x1e6($a1) +/* 055744 80054B44 14610006 */ bne $v1, $at, .L80054B60 +/* 055748 80054B48 ACA0010C */ sw $zero, 0x10c($a1) +/* 05574C 80054B4C 3C013E80 */ li $at, 0x3E800000 # 0.250000 +/* 055750 80054B50 44813000 */ mtc1 $at, $f6 +/* 055754 80054B54 00000000 */ nop +/* 055758 80054B58 E7A60018 */ swc1 $f6, 0x18($sp) +/* 05575C 80054B5C E4B20030 */ swc1 $f18, 0x30($a1) +.L80054B60: +/* 055760 80054B60 80AF01D3 */ lb $t7, 0x1d3($a1) +/* 055764 80054B64 00000000 */ nop +/* 055768 80054B68 15E0000F */ bnez $t7, .L80054BA8 +/* 05576C 80054B6C 24010003 */ li $at, 3 +/* 055770 80054B70 1461000D */ bne $v1, $at, .L80054BA8 +/* 055774 80054B74 2404002D */ li $a0, 45 +/* 055778 80054B78 AFA5004C */ sw $a1, 0x4c($sp) +/* 05577C 80054B7C AFA70048 */ sw $a3, 0x48($sp) +/* 055780 80054B80 E7A00028 */ swc1 $f0, 0x28($sp) +/* 055784 80054B84 0C00322D */ jal func_8000C8B4 +/* 055788 80054B88 E7A20030 */ swc1 $f2, 0x30($sp) +/* 05578C 80054B8C 8FA5004C */ lw $a1, 0x4c($sp) +/* 055790 80054B90 8FA70048 */ lw $a3, 0x48($sp) +/* 055794 80054B94 C7A00028 */ lwc1 $f0, 0x28($sp) +/* 055798 80054B98 C7A20030 */ lwc1 $f2, 0x30($sp) +/* 05579C 80054B9C 24180003 */ li $t8, 3 +/* 0557A0 80054BA0 A0A201D3 */ sb $v0, 0x1d3($a1) +/* 0557A4 80054BA4 A0B80203 */ sb $t8, 0x203($a1) +.L80054BA8: +/* 0557A8 80054BA8 46001202 */ mul.s $f8, $f2, $f0 +/* 0557AC 80054BAC C4AA002C */ lwc1 $f10, 0x2c($a1) +/* 0557B0 80054BB0 00000000 */ nop +/* 0557B4 80054BB4 46085101 */ sub.s $f4, $f10, $f8 +/* 0557B8 80054BB8 E4A4002C */ swc1 $f4, 0x2c($a1) +/* 0557BC 80054BBC 8FB90038 */ lw $t9, 0x38($sp) +/* 0557C0 80054BC0 00000000 */ nop +/* 0557C4 80054BC4 13200008 */ beqz $t9, .L80054BE8 +/* 0557C8 80054BC8 00000000 */ nop +/* 0557CC 80054BCC 90A201EE */ lbu $v0, 0x1ee($a1) +/* 0557D0 80054BD0 00000000 */ nop +/* 0557D4 80054BD4 28410010 */ slti $at, $v0, 0x10 +/* 0557D8 80054BD8 10200004 */ beqz $at, .L80054BEC +/* 0557DC 80054BDC 24480001 */ addiu $t0, $v0, 1 +/* 0557E0 80054BE0 10000002 */ b .L80054BEC +/* 0557E4 80054BE4 A0A801EE */ sb $t0, 0x1ee($a1) +.L80054BE8: +/* 0557E8 80054BE8 A0A001EE */ sb $zero, 0x1ee($a1) +.L80054BEC: +/* 0557EC 80054BEC AFA5004C */ sw $a1, 0x4c($sp) +/* 0557F0 80054BF0 0C019884 */ jal func_80066210 +/* 0557F4 80054BF4 AFA70048 */ sw $a3, 0x48($sp) +/* 0557F8 80054BF8 8FA5004C */ lw $a1, 0x4c($sp) +/* 0557FC 80054BFC 8FA70048 */ lw $a3, 0x48($sp) +/* 055800 80054C00 44809000 */ mtc1 $zero, $f18 +/* 055804 80054C04 28410002 */ slti $at, $v0, 2 +/* 055808 80054C08 1020001F */ beqz $at, .L80054C88 +/* 05580C 80054C0C 00000000 */ nop +/* 055810 80054C10 8FA90038 */ lw $t1, 0x38($sp) +/* 055814 80054C14 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 055818 80054C18 1120001B */ beqz $t1, .L80054C88 +/* 05581C 80054C1C 00000000 */ nop +/* 055820 80054C20 C4A6002C */ lwc1 $f6, 0x2c($a1) +/* 055824 80054C24 44814800 */ mtc1 $at, $f9 +/* 055828 80054C28 44804000 */ mtc1 $zero, $f8 +/* 05582C 80054C2C 460032A1 */ cvt.d.s $f10, $f6 +/* 055830 80054C30 4628503C */ c.lt.d $f10, $f8 +/* 055834 80054C34 00000000 */ nop +/* 055838 80054C38 45000013 */ bc1f .L80054C88 +/* 05583C 80054C3C 00000000 */ nop +/* 055840 80054C40 90A201DE */ lbu $v0, 0x1de($a1) +/* 055844 80054C44 240C0001 */ li $t4, 1 +/* 055848 80054C48 284100FF */ slti $at, $v0, 0xff +/* 05584C 80054C4C 10200005 */ beqz $at, .L80054C64 +/* 055850 80054C50 00025840 */ sll $t3, $v0, 1 +/* 055854 80054C54 8CEA0074 */ lw $t2, 0x74($a3) +/* 055858 80054C58 016C6804 */ sllv $t5, $t4, $t3 +/* 05585C 80054C5C 014D7025 */ or $t6, $t2, $t5 +/* 055860 80054C60 ACEE0074 */ sw $t6, 0x74($a3) +.L80054C64: +/* 055864 80054C64 90A201DF */ lbu $v0, 0x1df($a1) +/* 055868 80054C68 24190002 */ li $t9, 2 +/* 05586C 80054C6C 284100FF */ slti $at, $v0, 0xff +/* 055870 80054C70 10200005 */ beqz $at, .L80054C88 +/* 055874 80054C74 0002C040 */ sll $t8, $v0, 1 +/* 055878 80054C78 8CEF0074 */ lw $t7, 0x74($a3) +/* 05587C 80054C7C 03194004 */ sllv $t0, $t9, $t8 +/* 055880 80054C80 01E84825 */ or $t1, $t7, $t0 +/* 055884 80054C84 ACE90074 */ sw $t1, 0x74($a3) +.L80054C88: +/* 055888 80054C88 C4AC002C */ lwc1 $f12, 0x2c($a1) +/* 05588C 80054C8C 3C014140 */ li $at, 0x41400000 # 12.000000 +/* 055890 80054C90 4612603C */ c.lt.s $f12, $f18 +/* 055894 80054C94 44810000 */ mtc1 $at, $f0 +/* 055898 80054C98 45000002 */ bc1f .L80054CA4 +/* 05589C 80054C9C 46006086 */ mov.s $f2, $f12 +/* 0558A0 80054CA0 46001087 */ neg.s $f2, $f2 +.L80054CA4: +/* 0558A4 80054CA4 4602003C */ c.lt.s $f0, $f2 +/* 0558A8 80054CA8 3C0B8012 */ lui $t3, %hi(D_8011D564) # $t3, 0x8012 +/* 0558AC 80054CAC 45000002 */ bc1f .L80054CB8 +/* 0558B0 80054CB0 3C0E8012 */ lui $t6, %hi(D_8011D540) # $t6, 0x8012 +/* 0558B4 80054CB4 46000086 */ mov.s $f2, $f0 +.L80054CB8: +/* 0558B8 80054CB8 444CF800 */ cfc1 $t4, $31 +/* 0558BC 80054CBC 8D6BD564 */ lw $t3, %lo(D_8011D564)($t3) +/* 0558C0 80054CC0 35810003 */ ori $at, $t4, 3 +/* 0558C4 80054CC4 38210002 */ xori $at, $at, 2 +/* 0558C8 80054CC8 44C1F800 */ ctc1 $at, $31 +/* 0558CC 80054CCC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 0558D0 80054CD0 46001124 */ cvt.w.s $f4, $f2 +/* 0558D4 80054CD4 44814800 */ mtc1 $at, $f9 +/* 0558D8 80054CD8 44022000 */ mfc1 $v0, $f4 +/* 0558DC 80054CDC 44CCF800 */ ctc1 $t4, $31 +/* 0558E0 80054CE0 44823000 */ mtc1 $v0, $f6 +/* 0558E4 80054CE4 44804000 */ mtc1 $zero, $f8 +/* 0558E8 80054CE8 468032A0 */ cvt.s.w $f10, $f6 +/* 0558EC 80054CEC 00025080 */ sll $t2, $v0, 2 +/* 0558F0 80054CF0 016A1821 */ addu $v1, $t3, $t2 +/* 0558F4 80054CF4 460A1001 */ sub.s $f0, $f2, $f10 +/* 0558F8 80054CF8 C46A0000 */ lwc1 $f10, ($v1) +/* 0558FC 80054CFC 46000121 */ cvt.d.s $f4, $f0 +/* 055900 80054D00 46244181 */ sub.d $f6, $f8, $f4 +/* 055904 80054D04 3C01800E */ lui $at, %hi(D_800E6808) # $at, 0x800e +/* 055908 80054D08 46005221 */ cvt.d.s $f8, $f10 +/* 05590C 80054D0C 46264102 */ mul.d $f4, $f8, $f6 +/* 055910 80054D10 C46A0004 */ lwc1 $f10, 4($v1) +/* 055914 80054D14 80AD01D3 */ lb $t5, 0x1d3($a1) +/* 055918 80054D18 46005202 */ mul.s $f8, $f10, $f0 +/* 05591C 80054D1C 460041A1 */ cvt.d.s $f6, $f8 +/* 055920 80054D20 46262280 */ add.d $f10, $f4, $f6 +/* 055924 80054D24 C424680C */ lwc1 $f4, %lo(D_800E680C)($at) +/* 055928 80054D28 462050A0 */ cvt.s.d $f2, $f10 +/* 05592C 80054D2C C4256808 */ lwc1 $f5, %lo(D_800E6808)($at) +/* 055930 80054D30 46001221 */ cvt.d.s $f8, $f2 +/* 055934 80054D34 46244182 */ mul.d $f6, $f8, $f4 +/* 055938 80054D38 C7AA0018 */ lwc1 $f10, 0x18($sp) +/* 05593C 80054D3C 462030A0 */ cvt.s.d $f2, $f6 +/* 055940 80054D40 460A1082 */ mul.s $f2, $f2, $f10 +/* 055944 80054D44 19A00016 */ blez $t5, .L80054DA0 +/* 055948 80054D48 00000000 */ nop +/* 05594C 80054D4C 8DCED540 */ lw $t6, %lo(D_8011D540)($t6) +/* 055950 80054D50 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 055954 80054D54 15C00010 */ bnez $t6, .L80054D98 +/* 055958 80054D58 00000000 */ nop +/* 05595C 80054D5C 44802800 */ mtc1 $zero, $f5 +/* 055960 80054D60 44802000 */ mtc1 $zero, $f4 +/* 055964 80054D64 460011A1 */ cvt.d.s $f6, $f2 +/* 055968 80054D68 44814000 */ mtc1 $at, $f8 +/* 05596C 80054D6C 46262032 */ c.eq.d $f4, $f6 +/* 055970 80054D70 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 055974 80054D74 45010003 */ bc1t .L80054D84 +/* 055978 80054D78 E4A800B4 */ swc1 $f8, 0xb4($a1) +/* 05597C 80054D7C 44811000 */ mtc1 $at, $f2 +/* 055980 80054D80 00000000 */ nop +.L80054D84: +/* 055984 80054D84 80B901D3 */ lb $t9, 0x1d3($a1) +/* 055988 80054D88 8FB80050 */ lw $t8, 0x50($sp) +/* 05598C 80054D8C C4AC002C */ lwc1 $f12, 0x2c($a1) +/* 055990 80054D90 03387823 */ subu $t7, $t9, $t8 +/* 055994 80054D94 A0AF01D3 */ sb $t7, 0x1d3($a1) +.L80054D98: +/* 055998 80054D98 10000004 */ b .L80054DAC +/* 05599C 80054D9C 46006021 */ cvt.d.s $f0, $f12 +.L80054DA0: +/* 0559A0 80054DA0 C4AC002C */ lwc1 $f12, 0x2c($a1) +/* 0559A4 80054DA4 A0A001D3 */ sb $zero, 0x1d3($a1) +/* 0559A8 80054DA8 46006021 */ cvt.d.s $f0, $f12 +.L80054DAC: +/* 0559AC 80054DAC 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 0559B0 80054DB0 44815800 */ mtc1 $at, $f11 +/* 0559B4 80054DB4 44805000 */ mtc1 $zero, $f10 +/* 0559B8 80054DB8 3C014008 */ li $at, 0x40080000 # 2.125000 +/* 0559BC 80054DBC 4620503C */ c.lt.d $f10, $f0 +/* 0559C0 80054DC0 3C0B8012 */ lui $t3, %hi(D_8011D540) # $t3, 0x8012 +/* 0559C4 80054DC4 4500001E */ bc1f .L80054E40 +/* 0559C8 80054DC8 00000000 */ nop +/* 0559CC 80054DCC 44818800 */ mtc1 $at, $f17 +/* 0559D0 80054DD0 44808000 */ mtc1 $zero, $f16 +/* 0559D4 80054DD4 3C01800E */ lui $at, %hi(D_800E6814) # $at, 0x800e +/* 0559D8 80054DD8 4630003C */ c.lt.d $f0, $f16 +/* 0559DC 80054DDC 00000000 */ nop +/* 0559E0 80054DE0 45000017 */ bc1f .L80054E40 +/* 0559E4 80054DE4 00000000 */ nop +/* 0559E8 80054DE8 46208201 */ sub.d $f8, $f16, $f0 +/* 0559EC 80054DEC C4256810 */ lwc1 $f5, %lo(D_800E6810)($at) +/* 0559F0 80054DF0 C4246814 */ lwc1 $f4, %lo(D_800E6814)($at) +/* 0559F4 80054DF4 3C088012 */ lui $t0, %hi(D_8011D538) # $t0, 0x8012 +/* 0559F8 80054DF8 46244182 */ mul.d $f6, $f8, $f4 +/* 0559FC 80054DFC 8D08D538 */ lw $t0, %lo(D_8011D538)($t0) +/* 055A00 80054E00 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 +/* 055A04 80054E04 2901FFE7 */ slti $at, $t0, -0x19 +/* 055A08 80054E08 1020000D */ beqz $at, .L80054E40 +/* 055A0C 80054E0C 462033A0 */ cvt.s.d $f14, $f6 +/* 055A10 80054E10 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) +/* 055A14 80054E14 00000000 */ nop +/* 055A18 80054E18 30498000 */ andi $t1, $v0, 0x8000 +/* 055A1C 80054E1C 15200008 */ bnez $t1, .L80054E40 +/* 055A20 80054E20 304C4000 */ andi $t4, $v0, 0x4000 +/* 055A24 80054E24 11800006 */ beqz $t4, .L80054E40 +/* 055A28 80054E28 00000000 */ nop +/* 055A2C 80054E2C 460E6280 */ add.s $f10, $f12, $f14 +/* 055A30 80054E30 E4B200B8 */ swc1 $f18, 0xb8($a1) +/* 055A34 80054E34 E4AA002C */ swc1 $f10, 0x2c($a1) +/* 055A38 80054E38 C4AC002C */ lwc1 $f12, 0x2c($a1) +/* 055A3C 80054E3C 00000000 */ nop +.L80054E40: +/* 055A40 80054E40 C4A800B8 */ lwc1 $f8, 0xb8($a1) +/* 055A44 80054E44 3C01800E */ lui $at, %hi(D_800E681C) # $at, 0x800e +/* 055A48 80054E48 46024102 */ mul.s $f4, $f8, $f2 +/* 055A4C 80054E4C C42B6818 */ lwc1 $f11, %lo(D_800E6818)($at) +/* 055A50 80054E50 C42A681C */ lwc1 $f10, %lo(D_800E681C)($at) +/* 055A54 80054E54 3C01800E */ lui $at, %hi(D_800E6820) # $at, 0x800e +/* 055A58 80054E58 460021A1 */ cvt.d.s $f6, $f4 +/* 055A5C 80054E5C 462A3202 */ mul.d $f8, $f6, $f10 +/* 055A60 80054E60 C4A400B4 */ lwc1 $f4, 0xb4($a1) +/* 055A64 80054E64 00000000 */ nop +/* 055A68 80054E68 46041182 */ mul.s $f6, $f2, $f4 +/* 055A6C 80054E6C 462043A0 */ cvt.s.d $f14, $f8 +/* 055A70 80054E70 46066281 */ sub.s $f10, $f12, $f6 +/* 055A74 80054E74 E4AA002C */ swc1 $f10, 0x2c($a1) +/* 055A78 80054E78 C4AC002C */ lwc1 $f12, 0x2c($a1) +/* 055A7C 80054E7C C4286824 */ lwc1 $f8, %lo(D_800E6824)($at) +/* 055A80 80054E80 C4296820 */ lwc1 $f9, %lo(D_800E6820)($at) +/* 055A84 80054E84 46006021 */ cvt.d.s $f0, $f12 +/* 055A88 80054E88 4620403C */ c.lt.d $f8, $f0 +/* 055A8C 80054E8C 3C01800E */ lui $at, %hi(D_800E682C) # $at, 0x800e +/* 055A90 80054E90 4500000B */ bc1f .L80054EC0 +/* 055A94 80054E94 00000000 */ nop +/* 055A98 80054E98 C4256828 */ lwc1 $f5, %lo(D_800E6828)($at) +/* 055A9C 80054E9C C424682C */ lwc1 $f4, %lo(D_800E682C)($at) +/* 055AA0 80054EA0 00000000 */ nop +/* 055AA4 80054EA4 4624003C */ c.lt.d $f0, $f4 +/* 055AA8 80054EA8 00000000 */ nop +/* 055AAC 80054EAC 45000004 */ bc1f .L80054EC0 +/* 055AB0 80054EB0 00000000 */ nop +/* 055AB4 80054EB4 E4B2002C */ swc1 $f18, 0x2c($a1) +/* 055AB8 80054EB8 C4AC002C */ lwc1 $f12, 0x2c($a1) +/* 055ABC 80054EBC 00000000 */ nop +.L80054EC0: +/* 055AC0 80054EC0 4612603C */ c.lt.s $f12, $f18 +/* 055AC4 80054EC4 3C018012 */ lui $at, %hi(D_8011D56C) # $at, 0x8012 +/* 055AC8 80054EC8 4500000B */ bc1f .L80054EF8 +/* 055ACC 80054ECC 00000000 */ nop +/* 055AD0 80054ED0 460E6180 */ add.s $f6, $f12, $f14 +/* 055AD4 80054ED4 E4A6002C */ swc1 $f6, 0x2c($a1) +/* 055AD8 80054ED8 C4AA002C */ lwc1 $f10, 0x2c($a1) +/* 055ADC 80054EDC 00000000 */ nop +/* 055AE0 80054EE0 460A903C */ c.lt.s $f18, $f10 +/* 055AE4 80054EE4 00000000 */ nop +/* 055AE8 80054EE8 4500000C */ bc1f .L80054F1C +/* 055AEC 80054EEC 00000000 */ nop +/* 055AF0 80054EF0 1000000A */ b .L80054F1C +/* 055AF4 80054EF4 E4B2002C */ swc1 $f18, 0x2c($a1) +.L80054EF8: +/* 055AF8 80054EF8 460E6201 */ sub.s $f8, $f12, $f14 +/* 055AFC 80054EFC E4A8002C */ swc1 $f8, 0x2c($a1) +/* 055B00 80054F00 C4A4002C */ lwc1 $f4, 0x2c($a1) +/* 055B04 80054F04 00000000 */ nop +/* 055B08 80054F08 4612203C */ c.lt.s $f4, $f18 +/* 055B0C 80054F0C 00000000 */ nop +/* 055B10 80054F10 45000002 */ bc1f .L80054F1C +/* 055B14 80054F14 00000000 */ nop +/* 055B18 80054F18 E4B2002C */ swc1 $f18, 0x2c($a1) +.L80054F1C: +/* 055B1C 80054F1C C4AA00C0 */ lwc1 $f10, 0xc0($a1) +/* 055B20 80054F20 44803800 */ mtc1 $zero, $f7 +/* 055B24 80054F24 44803000 */ mtc1 $zero, $f6 +/* 055B28 80054F28 46005221 */ cvt.d.s $f8, $f10 +/* 055B2C 80054F2C 46283032 */ c.eq.d $f6, $f8 +/* 055B30 80054F30 C420D56C */ lwc1 $f0, %lo(D_8011D56C)($at) +/* 055B34 80054F34 45010006 */ bc1t .L80054F50 +/* 055B38 80054F38 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 055B3C 80054F3C 44815800 */ mtc1 $at, $f11 +/* 055B40 80054F40 44805000 */ mtc1 $zero, $f10 +/* 055B44 80054F44 46000121 */ cvt.d.s $f4, $f0 +/* 055B48 80054F48 462A2182 */ mul.d $f6, $f4, $f10 +/* 055B4C 80054F4C 46203020 */ cvt.s.d $f0, $f6 +.L80054F50: +/* 055B50 80054F50 3C01800E */ lui $at, %hi(D_800E6834) # $at, 0x800e +/* 055B54 80054F54 C4A800B8 */ lwc1 $f8, 0xb8($a1) +/* 055B58 80054F58 C42B6830 */ lwc1 $f11, %lo(D_800E6830)($at) +/* 055B5C 80054F5C C42A6834 */ lwc1 $f10, %lo(D_800E6834)($at) +/* 055B60 80054F60 46004121 */ cvt.d.s $f4, $f8 +/* 055B64 80054F64 462A203C */ c.lt.d $f4, $f10 +/* 055B68 80054F68 00000000 */ nop +/* 055B6C 80054F6C 4500000F */ bc1f .L80054FAC +/* 055B70 80054F70 00000000 */ nop +/* 055B74 80054F74 8D6BD540 */ lw $t3, %lo(D_8011D540)($t3) +/* 055B78 80054F78 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 055B7C 80054F7C 1560000B */ bnez $t3, .L80054FAC +/* 055B80 80054F80 00000000 */ nop +/* 055B84 80054F84 C4A6009C */ lwc1 $f6, 0x9c($a1) +/* 055B88 80054F88 44814000 */ mtc1 $at, $f8 +/* 055B8C 80054F8C 00000000 */ nop +/* 055B90 80054F90 46083103 */ div.s $f4, $f6, $f8 +/* 055B94 80054F94 C7A60054 */ lwc1 $f6, 0x54($sp) +/* 055B98 80054F98 46040282 */ mul.s $f10, $f0, $f4 +/* 055B9C 80054F9C C4A4002C */ lwc1 $f4, 0x2c($a1) +/* 055BA0 80054FA0 46065202 */ mul.s $f8, $f10, $f6 +/* 055BA4 80054FA4 46082280 */ add.s $f10, $f4, $f8 +/* 055BA8 80054FA8 E4AA002C */ swc1 $f10, 0x2c($a1) +.L80054FAC: +/* 055BAC 80054FAC C7A40054 */ lwc1 $f4, 0x54($sp) +/* 055BB0 80054FB0 C4E60020 */ lwc1 $f6, 0x20($a3) +/* 055BB4 80054FB4 46040202 */ mul.s $f8, $f0, $f4 +/* 055BB8 80054FB8 46083281 */ sub.s $f10, $f6, $f8 +/* 055BBC 80054FBC E4EA0020 */ swc1 $f10, 0x20($a3) +/* 055BC0 80054FC0 8FBF0014 */ lw $ra, 0x14($sp) +/* 055BC4 80054FC4 27BD0048 */ addiu $sp, $sp, 0x48 +/* 055BC8 80054FC8 03E00008 */ jr $ra +/* 055BCC 80054FCC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_80054FD0.s b/asm/non_matchings/unknown_043920/func_80054FD0.s new file mode 100644 index 00000000..c24bb5a4 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80054FD0.s @@ -0,0 +1,726 @@ +glabel func_80054FD0 +/* 055BD0 80054FD0 27BDFE60 */ addiu $sp, $sp, -0x1a0 +/* 055BD4 80054FD4 AFBF002C */ sw $ra, 0x2c($sp) +/* 055BD8 80054FD8 AFB10028 */ sw $s1, 0x28($sp) +/* 055BDC 80054FDC AFB00024 */ sw $s0, 0x24($sp) +/* 055BE0 80054FE0 AFA601A8 */ sw $a2, 0x1a8($sp) +/* 055BE4 80054FE4 3C018012 */ lui $at, %hi(D_8011D4F0) # $at, 0x8012 +/* 055BE8 80054FE8 C420D4F0 */ lwc1 $f0, %lo(D_8011D4F0)($at) +/* 055BEC 80054FEC C4840010 */ lwc1 $f4, 0x10($a0) +/* 055BF0 80054FF0 00A08025 */ move $s0, $a1 +/* 055BF4 80054FF4 4604003C */ c.lt.s $f0, $f4 +/* 055BF8 80054FF8 00808825 */ move $s1, $a0 +/* 055BFC 80054FFC 45000004 */ bc1f .L80055010 +/* 055C00 80055000 00000000 */ nop +/* 055C04 80055004 E4800010 */ swc1 $f0, 0x10($a0) +/* 055C08 80055008 0C00AB32 */ jal func_8002ACC8 +/* 055C0C 8005500C 24040001 */ li $a0, 1 +.L80055010: +/* 055C10 80055010 A7A00130 */ sh $zero, 0x130($sp) +/* 055C14 80055014 862E0000 */ lh $t6, ($s1) +/* 055C18 80055018 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 +/* 055C1C 8005501C 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 +/* 055C20 80055020 A4AE0000 */ sh $t6, ($a1) +/* 055C24 80055024 862F0002 */ lh $t7, 2($s1) +/* 055C28 80055028 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 055C2C 8005502C A4AF0002 */ sh $t7, 2($a1) +/* 055C30 80055030 86380004 */ lh $t8, 4($s1) +/* 055C34 80055034 44813000 */ mtc1 $at, $f6 +/* 055C38 80055038 A4B80004 */ sh $t8, 4($a1) +/* 055C3C 8005503C E4A60008 */ swc1 $f6, 8($a1) +/* 055C40 80055040 C628000C */ lwc1 $f8, 0xc($s1) +/* 055C44 80055044 27A400A0 */ addiu $a0, $sp, 0xa0 +/* 055C48 80055048 E4A8000C */ swc1 $f8, 0xc($a1) +/* 055C4C 8005504C C62A0010 */ lwc1 $f10, 0x10($s1) +/* 055C50 80055050 00000000 */ nop +/* 055C54 80055054 E4AA0010 */ swc1 $f10, 0x10($a1) +/* 055C58 80055058 C6240014 */ lwc1 $f4, 0x14($s1) +/* 055C5C 8005505C 0C01BF0C */ jal func_8006FC30 +/* 055C60 80055060 E4A40014 */ swc1 $f4, 0x14($a1) +/* 055C64 80055064 3C038012 */ lui $v1, %hi(D_8011D568) # $v1, 0x8012 +/* 055C68 80055068 8C63D568 */ lw $v1, %lo(D_8011D568)($v1) +/* 055C6C 8005506C 00004025 */ move $t0, $zero +/* 055C70 80055070 27A90134 */ addiu $t1, $sp, 0x134 +/* 055C74 80055074 27AA0138 */ addiu $t2, $sp, 0x138 +/* 055C78 80055078 27AB013C */ addiu $t3, $sp, 0x13c +/* 055C7C 8005507C 27AC00E0 */ addiu $t4, $sp, 0xe0 +/* 055C80 80055080 27A20058 */ addiu $v0, $sp, 0x58 +.L80055084: +/* 055C84 80055084 8C650000 */ lw $a1, ($v1) +/* 055C88 80055088 8C660004 */ lw $a2, 4($v1) +/* 055C8C 8005508C 8C670008 */ lw $a3, 8($v1) +/* 055C90 80055090 AFAC0040 */ sw $t4, 0x40($sp) +/* 055C94 80055094 AFAB0044 */ sw $t3, 0x44($sp) +/* 055C98 80055098 AFAA0048 */ sw $t2, 0x48($sp) +/* 055C9C 8005509C AFA9004C */ sw $t1, 0x4c($sp) +/* 055CA0 800550A0 AFA80054 */ sw $t0, 0x54($sp) +/* 055CA4 800550A4 AFA2003C */ sw $v0, 0x3c($sp) +/* 055CA8 800550A8 AFAB0018 */ sw $t3, 0x18($sp) +/* 055CAC 800550AC AFAA0014 */ sw $t2, 0x14($sp) +/* 055CB0 800550B0 AFA90010 */ sw $t1, 0x10($sp) +/* 055CB4 800550B4 0C01BD93 */ jal func_8006F64C +/* 055CB8 800550B8 27A400A0 */ addiu $a0, $sp, 0xa0 +/* 055CBC 800550BC 3C198012 */ lui $t9, %hi(D_8011D568) # $t9, 0x8012 +/* 055CC0 800550C0 8FA80054 */ lw $t0, 0x54($sp) +/* 055CC4 800550C4 8F39D568 */ lw $t9, %lo(D_8011D568)($t9) +/* 055CC8 800550C8 8FA2003C */ lw $v0, 0x3c($sp) +/* 055CCC 800550CC 8FA9004C */ lw $t1, 0x4c($sp) +/* 055CD0 800550D0 8FAA0048 */ lw $t2, 0x48($sp) +/* 055CD4 800550D4 8FAB0044 */ lw $t3, 0x44($sp) +/* 055CD8 800550D8 8FAC0040 */ lw $t4, 0x40($sp) +/* 055CDC 800550DC 03281821 */ addu $v1, $t9, $t0 +/* 055CE0 800550E0 C466000C */ lwc1 $f6, 0xc($v1) +/* 055CE4 800550E4 27AE005C */ addiu $t6, $sp, 0x5c +/* 055CE8 800550E8 24420001 */ addiu $v0, $v0, 1 +/* 055CEC 800550EC 004E082B */ sltu $at, $v0, $t6 +/* 055CF0 800550F0 240DFFFF */ li $t5, -1 +/* 055CF4 800550F4 24630010 */ addiu $v1, $v1, 0x10 +/* 055CF8 800550F8 25080010 */ addiu $t0, $t0, 0x10 +/* 055CFC 800550FC A04DFFFF */ sb $t5, -1($v0) +/* 055D00 80055100 2529000C */ addiu $t1, $t1, 0xc +/* 055D04 80055104 254A000C */ addiu $t2, $t2, 0xc +/* 055D08 80055108 256B000C */ addiu $t3, $t3, 0xc +/* 055D0C 8005510C 258C0004 */ addiu $t4, $t4, 4 +/* 055D10 80055110 1420FFDC */ bnez $at, .L80055084 +/* 055D14 80055114 E586FFFC */ swc1 $f6, -4($t4) +/* 055D18 80055118 44808000 */ mtc1 $zero, $f16 +/* 055D1C 8005511C 3C038012 */ lui $v1, %hi(D_8011D548) # $v1, 0x8012 +/* 055D20 80055120 3C088012 */ lui $t0, %hi(D_8011D54C) # $t0, 0x8012 +/* 055D24 80055124 2508D54C */ addiu $t0, %lo(D_8011D54C) # addiu $t0, $t0, -0x2ab4 +/* 055D28 80055128 2463D548 */ addiu $v1, %lo(D_8011D548) # addiu $v1, $v1, -0x2ab8 +/* 055D2C 8005512C AFA00190 */ sw $zero, 0x190($sp) +/* 055D30 80055130 E4700000 */ swc1 $f16, ($v1) +/* 055D34 80055134 E5100000 */ swc1 $f16, ($t0) +/* 055D38 80055138 860F0000 */ lh $t7, ($s0) +/* 055D3C 8005513C 2401FFFF */ li $at, -1 +/* 055D40 80055140 15E10005 */ bne $t7, $at, .L80055158 +/* 055D44 80055144 00004825 */ move $t1, $zero +/* 055D48 80055148 821801D7 */ lb $t8, 0x1d7($s0) +/* 055D4C 8005514C 00000000 */ nop +/* 055D50 80055150 2B010005 */ slti $at, $t8, 5 +/* 055D54 80055154 10200011 */ beqz $at, .L8005519C +.L80055158: +/* 055D58 80055158 27B90134 */ addiu $t9, $sp, 0x134 +/* 055D5C 8005515C 27AD00E0 */ addiu $t5, $sp, 0xe0 +/* 055D60 80055160 27AE0058 */ addiu $t6, $sp, 0x58 +/* 055D64 80055164 AFAE0018 */ sw $t6, 0x18($sp) +/* 055D68 80055168 AFAD0014 */ sw $t5, 0x14($sp) +/* 055D6C 8005516C AFB90010 */ sw $t9, 0x10($sp) +/* 055D70 80055170 02202025 */ move $a0, $s1 +/* 055D74 80055174 24050004 */ li $a1, 4 +/* 055D78 80055178 27A60190 */ addiu $a2, $sp, 0x190 +/* 055D7C 8005517C 0C005C92 */ jal func_80017248 +/* 055D80 80055180 260700D8 */ addiu $a3, $s0, 0xd8 +/* 055D84 80055184 3C038012 */ lui $v1, %hi(D_8011D548) # $v1, 0x8012 +/* 055D88 80055188 3C088012 */ lui $t0, %hi(D_8011D54C) # $t0, 0x8012 +/* 055D8C 8005518C 44808000 */ mtc1 $zero, $f16 +/* 055D90 80055190 2508D54C */ addiu $t0, %lo(D_8011D54C) # addiu $t0, $t0, -0x2ab4 +/* 055D94 80055194 2463D548 */ addiu $v1, %lo(D_8011D548) # addiu $v1, $v1, -0x2ab8 +/* 055D98 80055198 00404825 */ move $t1, $v0 +.L8005519C: +/* 055D9C 8005519C 312F0080 */ andi $t7, $t1, 0x80 +/* 055DA0 800551A0 11E0003F */ beqz $t7, .L800552A0 +/* 055DA4 800551A4 260500D8 */ addiu $a1, $s0, 0xd8 +/* 055DA8 800551A8 C7A80134 */ lwc1 $f8, 0x134($sp) +/* 055DAC 800551AC C46A0000 */ lwc1 $f10, ($v1) +/* 055DB0 800551B0 3C018012 */ lui $at, %hi(D_8011D548) # $at, 0x8012 +/* 055DB4 800551B4 460A4100 */ add.s $f4, $f8, $f10 +/* 055DB8 800551B8 C7A6013C */ lwc1 $f6, 0x13c($sp) +/* 055DBC 800551BC E424D548 */ swc1 $f4, %lo(D_8011D548)($at) +/* 055DC0 800551C0 C5080000 */ lwc1 $f8, ($t0) +/* 055DC4 800551C4 3C018012 */ lui $at, %hi(D_8011D54C) # $at, 0x8012 +/* 055DC8 800551C8 46083280 */ add.s $f10, $f6, $f8 +/* 055DCC 800551CC C7A40140 */ lwc1 $f4, 0x140($sp) +/* 055DD0 800551D0 E42AD54C */ swc1 $f10, %lo(D_8011D54C)($at) +/* 055DD4 800551D4 C4660000 */ lwc1 $f6, ($v1) +/* 055DD8 800551D8 3C018012 */ lui $at, %hi(D_8011D548) # $at, 0x8012 +/* 055DDC 800551DC 46062200 */ add.s $f8, $f4, $f6 +/* 055DE0 800551E0 C7AA0148 */ lwc1 $f10, 0x148($sp) +/* 055DE4 800551E4 E428D548 */ swc1 $f8, %lo(D_8011D548)($at) +/* 055DE8 800551E8 C5040000 */ lwc1 $f4, ($t0) +/* 055DEC 800551EC 3C018012 */ lui $at, %hi(D_8011D54C) # $at, 0x8012 +/* 055DF0 800551F0 46045180 */ add.s $f6, $f10, $f4 +/* 055DF4 800551F4 C7A8014C */ lwc1 $f8, 0x14c($sp) +/* 055DF8 800551F8 E426D54C */ swc1 $f6, %lo(D_8011D54C)($at) +/* 055DFC 800551FC C46A0000 */ lwc1 $f10, ($v1) +/* 055E00 80055200 3C018012 */ lui $at, %hi(D_8011D548) # $at, 0x8012 +/* 055E04 80055204 460A4100 */ add.s $f4, $f8, $f10 +/* 055E08 80055208 C7A60154 */ lwc1 $f6, 0x154($sp) +/* 055E0C 8005520C E424D548 */ swc1 $f4, %lo(D_8011D548)($at) +/* 055E10 80055210 C5080000 */ lwc1 $f8, ($t0) +/* 055E14 80055214 3C018012 */ lui $at, %hi(D_8011D54C) # $at, 0x8012 +/* 055E18 80055218 46083280 */ add.s $f10, $f6, $f8 +/* 055E1C 8005521C C7A40158 */ lwc1 $f4, 0x158($sp) +/* 055E20 80055220 E42AD54C */ swc1 $f10, %lo(D_8011D54C)($at) +/* 055E24 80055224 C4660000 */ lwc1 $f6, ($v1) +/* 055E28 80055228 3C018012 */ lui $at, %hi(D_8011D548) # $at, 0x8012 +/* 055E2C 8005522C 46062200 */ add.s $f8, $f4, $f6 +/* 055E30 80055230 C7AA0160 */ lwc1 $f10, 0x160($sp) +/* 055E34 80055234 E428D548 */ swc1 $f8, %lo(D_8011D548)($at) +/* 055E38 80055238 C5040000 */ lwc1 $f4, ($t0) +/* 055E3C 8005523C 3C018012 */ li $at, 0x80120000 # -0.000000 +/* 055E40 80055240 46045180 */ add.s $f6, $f10, $f4 +/* 055E44 80055244 24180001 */ li $t8, 1 +/* 055E48 80055248 E426D54C */ swc1 $f6, %lo(D_8011D54C)($at) +/* 055E4C 8005524C 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 055E50 80055250 44815000 */ mtc1 $at, $f10 +/* 055E54 80055254 C4680000 */ lwc1 $f8, ($v1) +/* 055E58 80055258 C5060000 */ lwc1 $f6, ($t0) +/* 055E5C 8005525C 460A4103 */ div.s $f4, $f8, $f10 +/* 055E60 80055260 44814000 */ mtc1 $at, $f8 +/* 055E64 80055264 2401FF7F */ li $at, -129 +/* 055E68 80055268 0121C824 */ and $t9, $t1, $at +/* 055E6C 8005526C 03204825 */ move $t1, $t9 +/* 055E70 80055270 46083283 */ div.s $f10, $f6, $f8 +/* 055E74 80055274 E4640000 */ swc1 $f4, ($v1) +/* 055E78 80055278 C4640000 */ lwc1 $f4, ($v1) +/* 055E7C 8005527C E50A0000 */ swc1 $f10, ($t0) +/* 055E80 80055280 C626000C */ lwc1 $f6, 0xc($s1) +/* 055E84 80055284 C50A0000 */ lwc1 $f10, ($t0) +/* 055E88 80055288 46062201 */ sub.s $f8, $f4, $f6 +/* 055E8C 8005528C E4680000 */ swc1 $f8, ($v1) +/* 055E90 80055290 C6240014 */ lwc1 $f4, 0x14($s1) +/* 055E94 80055294 A7B80130 */ sh $t8, 0x130($sp) +/* 055E98 80055298 46045181 */ sub.s $f6, $f10, $f4 +/* 055E9C 8005529C E5060000 */ swc1 $f6, ($t0) +.L800552A0: +/* 055EA0 800552A0 1120001E */ beqz $t1, .L8005531C +/* 055EA4 800552A4 00001025 */ move $v0, $zero +/* 055EA8 800552A8 C7A80138 */ lwc1 $f8, 0x138($sp) +/* 055EAC 800552AC C7AA0144 */ lwc1 $f10, 0x144($sp) +/* 055EB0 800552B0 46088000 */ add.s $f0, $f16, $f8 +/* 055EB4 800552B4 C7A40150 */ lwc1 $f4, 0x150($sp) +/* 055EB8 800552B8 460A0000 */ add.s $f0, $f0, $f10 +/* 055EBC 800552BC C7A6015C */ lwc1 $f6, 0x15c($sp) +/* 055EC0 800552C0 46040000 */ add.s $f0, $f0, $f4 +/* 055EC4 800552C4 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 055EC8 800552C8 46060000 */ add.s $f0, $f0, $f6 +/* 055ECC 800552CC 44812800 */ mtc1 $at, $f5 +/* 055ED0 800552D0 E7A00178 */ swc1 $f0, 0x178($sp) +/* 055ED4 800552D4 C7A80178 */ lwc1 $f8, 0x178($sp) +/* 055ED8 800552D8 44802000 */ mtc1 $zero, $f4 +/* 055EDC 800552DC 460042A1 */ cvt.d.s $f10, $f8 +/* 055EE0 800552E0 46245182 */ mul.d $f6, $f10, $f4 +/* 055EE4 800552E4 3C014010 */ li $at, 0x40100000 # 2.250000 +/* 055EE8 800552E8 46203220 */ cvt.s.d $f8, $f6 +/* 055EEC 800552EC 44814800 */ mtc1 $at, $f9 +/* 055EF0 800552F0 E7A80178 */ swc1 $f8, 0x178($sp) +/* 055EF4 800552F4 C6240010 */ lwc1 $f4, 0x10($s1) +/* 055EF8 800552F8 460042A1 */ cvt.d.s $f10, $f8 +/* 055EFC 800552FC 44804000 */ mtc1 $zero, $f8 +/* 055F00 80055300 460021A1 */ cvt.d.s $f6, $f4 +/* 055F04 80055304 46283101 */ sub.d $f4, $f6, $f8 +/* 055F08 80055308 4624503C */ c.lt.d $f10, $f4 +/* 055F0C 8005530C 00000000 */ nop +/* 055F10 80055310 45000002 */ bc1f .L8005531C +/* 055F14 80055314 00000000 */ nop +/* 055F18 80055318 24020001 */ li $v0, 1 +.L8005531C: +/* 055F1C 8005531C 820701D6 */ lb $a3, 0x1d6($s0) +/* 055F20 80055320 AFA9018C */ sw $t1, 0x18c($sp) +/* 055F24 80055324 AFA50054 */ sw $a1, 0x54($sp) +/* 055F28 80055328 A3A2005F */ sb $v0, 0x5f($sp) +/* 055F2C 8005532C 24040004 */ li $a0, 4 +/* 055F30 80055330 0C00C44C */ jal func_80031130 +/* 055F34 80055334 27A60134 */ addiu $a2, $sp, 0x134 +/* 055F38 80055338 8FA40054 */ lw $a0, 0x54($sp) +/* 055F3C 8005533C 240D0004 */ li $t5, 4 +/* 055F40 80055340 27AE0190 */ addiu $t6, $sp, 0x190 +/* 055F44 80055344 AFA00190 */ sw $zero, 0x190($sp) +/* 055F48 80055348 AFAE0014 */ sw $t6, 0x14($sp) +/* 055F4C 8005534C AFAD0010 */ sw $t5, 0x10($sp) +/* 055F50 80055350 27A50134 */ addiu $a1, $sp, 0x134 +/* 055F54 80055354 27A600E0 */ addiu $a2, $sp, 0xe0 +/* 055F58 80055358 0C00C580 */ jal func_80031600 +/* 055F5C 8005535C 27A70058 */ addiu $a3, $sp, 0x58 +/* 055F60 80055360 A20201E3 */ sb $v0, 0x1e3($s0) +/* 055F64 80055364 27A40180 */ addiu $a0, $sp, 0x180 +/* 055F68 80055368 27A50178 */ addiu $a1, $sp, 0x178 +/* 055F6C 8005536C 0C00AB35 */ jal func_8002ACD4 +/* 055F70 80055370 27A6017C */ addiu $a2, $sp, 0x17c +/* 055F74 80055374 8FA9018C */ lw $t1, 0x18c($sp) +/* 055F78 80055378 44808000 */ mtc1 $zero, $f16 +/* 055F7C 8005537C 10400081 */ beqz $v0, .L80055584 +/* 055F80 80055380 AFA20184 */ sw $v0, 0x184($sp) +/* 055F84 80055384 3C01437F */ li $at, 0x437F0000 # 255.000000 +/* 055F88 80055388 44810000 */ mtc1 $at, $f0 +/* 055F8C 8005538C C7A60180 */ lwc1 $f6, 0x180($sp) +/* 055F90 80055390 C7A8017C */ lwc1 $f8, 0x17c($sp) +/* 055F94 80055394 46003302 */ mul.s $f12, $f6, $f0 +/* 055F98 80055398 AFA9018C */ sw $t1, 0x18c($sp) +/* 055F9C 8005539C 46004382 */ mul.s $f14, $f8, $f0 +/* 055FA0 800553A0 0C01C1D4 */ jal func_80070750 +/* 055FA4 800553A4 00000000 */ nop +/* 055FA8 800553A8 86390000 */ lh $t9, ($s1) +/* 055FAC 800553AC 8FA9018C */ lw $t1, 0x18c($sp) +/* 055FB0 800553B0 00591823 */ subu $v1, $v0, $t9 +/* 055FB4 800553B4 00036C00 */ sll $t5, $v1, 0x10 +/* 055FB8 800553B8 000D7403 */ sra $t6, $t5, 0x10 +/* 055FBC 800553BC 44808000 */ mtc1 $zero, $f16 +/* 055FC0 800553C0 29C12000 */ slti $at, $t6, 0x2000 +/* 055FC4 800553C4 10200003 */ beqz $at, .L800553D4 +/* 055FC8 800553C8 29C1E001 */ slti $at, $t6, -0x1fff +/* 055FCC 800553CC 10200004 */ beqz $at, .L800553E0 +/* 055FD0 800553D0 00000000 */ nop +.L800553D4: +/* 055FD4 800553D4 820F01D6 */ lb $t7, 0x1d6($s0) +/* 055FD8 800553D8 24010001 */ li $at, 1 +/* 055FDC 800553DC 15E10069 */ bne $t7, $at, .L80055584 +.L800553E0: +/* 055FE0 800553E0 3C01800E */ lui $at, %hi(D_800E683C) # $at, 0x800e +/* 055FE4 800553E4 C60A002C */ lwc1 $f10, 0x2c($s0) +/* 055FE8 800553E8 C4276838 */ lwc1 $f7, %lo(D_800E6838)($at) +/* 055FEC 800553EC C426683C */ lwc1 $f6, %lo(D_800E683C)($at) +/* 055FF0 800553F0 46005121 */ cvt.d.s $f4, $f10 +/* 055FF4 800553F4 46262202 */ mul.d $f8, $f4, $f6 +/* 055FF8 800553F8 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 055FFC 800553FC 44812800 */ mtc1 $at, $f5 +/* 056000 80055400 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 056004 80055404 462042A0 */ cvt.s.d $f10, $f8 +/* 056008 80055408 4610503C */ c.lt.s $f10, $f16 +/* 05600C 8005540C E7AA0178 */ swc1 $f10, 0x178($sp) +/* 056010 80055410 45000003 */ bc1f .L80055420 +/* 056014 80055414 00000000 */ nop +/* 056018 80055418 46005007 */ neg.s $f0, $f10 +/* 05601C 8005541C E7A00178 */ swc1 $f0, 0x178($sp) +.L80055420: +/* 056020 80055420 C7A00178 */ lwc1 $f0, 0x178($sp) +/* 056024 80055424 44802000 */ mtc1 $zero, $f4 +/* 056028 80055428 460000A1 */ cvt.d.s $f2, $f0 +/* 05602C 8005542C 4622203C */ c.lt.d $f4, $f2 +/* 056030 80055430 00000000 */ nop +/* 056034 80055434 4500000F */ bc1f .L80055474 +/* 056038 80055438 00000000 */ nop +/* 05603C 8005543C 44813800 */ mtc1 $at, $f7 +/* 056040 80055440 44803000 */ mtc1 $zero, $f6 +/* 056044 80055444 86040000 */ lh $a0, ($s0) +/* 056048 80055448 46261202 */ mul.d $f8, $f2, $f6 +/* 05604C 8005544C AFA9018C */ sw $t1, 0x18c($sp) +/* 056050 80055450 24050012 */ li $a1, 18 +/* 056054 80055454 462042A0 */ cvt.s.d $f10, $f8 +/* 056058 80055458 44065000 */ mfc1 $a2, $f10 +/* 05605C 8005545C 0C01C909 */ jal func_80072424 +/* 056060 80055460 00000000 */ nop +/* 056064 80055464 C7A00178 */ lwc1 $f0, 0x178($sp) +/* 056068 80055468 8FA9018C */ lw $t1, 0x18c($sp) +/* 05606C 8005546C 44808000 */ mtc1 $zero, $f16 +/* 056070 80055470 460000A1 */ cvt.d.s $f2, $f0 +.L80055474: +/* 056074 80055474 3C014010 */ li $at, 0x40100000 # 2.250000 +/* 056078 80055478 44812800 */ mtc1 $at, $f5 +/* 05607C 8005547C 44802000 */ mtc1 $zero, $f4 +/* 056080 80055480 E7A00178 */ swc1 $f0, 0x178($sp) +/* 056084 80055484 4622203C */ c.lt.d $f4, $f2 +/* 056088 80055488 240F0007 */ li $t7, 7 +/* 05608C 8005548C 4500003D */ bc1f .L80055584 +/* 056090 80055490 00000000 */ nop +/* 056094 80055494 921801F3 */ lbu $t8, 0x1f3($s0) +/* 056098 80055498 3C0D8012 */ lui $t5, %hi(D_8011D55C) # $t5, 0x8012 +/* 05609C 8005549C 37190008 */ ori $t9, $t8, 8 +/* 0560A0 800554A0 A21901F3 */ sb $t9, 0x1f3($s0) +/* 0560A4 800554A4 8DADD55C */ lw $t5, %lo(D_8011D55C)($t5) +/* 0560A8 800554A8 2401FFFF */ li $at, -1 +/* 0560AC 800554AC 11A10006 */ beq $t5, $at, .L800554C8 +/* 0560B0 800554B0 3C0E8012 */ lui $t6, %hi(D_8011D508) # $t6, 0x8012 +/* 0560B4 800554B4 3C014040 */ li $at, 0x40400000 # 3.000000 +/* 0560B8 800554B8 44813000 */ mtc1 $at, $f6 +/* 0560BC 800554BC 8DCED508 */ lw $t6, %lo(D_8011D508)($t6) +/* 0560C0 800554C0 00000000 */ nop +/* 0560C4 800554C4 E5C60030 */ swc1 $f6, 0x30($t6) +.L800554C8: +/* 0560C8 800554C8 86180000 */ lh $t8, ($s0) +/* 0560CC 800554CC 2401FFFF */ li $at, -1 +/* 0560D0 800554D0 1301000D */ beq $t8, $at, .L80055508 +/* 0560D4 800554D4 A20F01D2 */ sb $t7, 0x1d2($s0) +/* 0560D8 800554D8 02202025 */ move $a0, $s1 +/* 0560DC 800554DC 240501C2 */ li $a1, 450 +/* 0560E0 800554E0 24060008 */ li $a2, 8 +/* 0560E4 800554E4 24070082 */ li $a3, 130 +/* 0560E8 800554E8 0C015C2E */ jal func_800570B8 +/* 0560EC 800554EC AFA9018C */ sw $t1, 0x18c($sp) +/* 0560F0 800554F0 02202025 */ move $a0, $s1 +/* 0560F4 800554F4 0C015C12 */ jal func_80057048 +/* 0560F8 800554F8 2405000C */ li $a1, 12 +/* 0560FC 800554FC 8FA9018C */ lw $t1, 0x18c($sp) +/* 056100 80055500 44808000 */ mtc1 $zero, $f16 +/* 056104 80055504 00000000 */ nop +.L80055508: +/* 056108 80055508 921901EF */ lbu $t9, 0x1ef($s0) +/* 05610C 8005550C 820E01D6 */ lb $t6, 0x1d6($s0) +/* 056110 80055510 24010001 */ li $at, 1 +/* 056114 80055514 372D0004 */ ori $t5, $t9, 4 +/* 056118 80055518 15C10009 */ bne $t6, $at, .L80055540 +/* 05611C 8005551C A20D01EF */ sb $t5, 0x1ef($s0) +/* 056120 80055520 C7A00178 */ lwc1 $f0, 0x178($sp) +/* 056124 80055524 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 056128 80055528 44815800 */ mtc1 $at, $f11 +/* 05612C 8005552C 44805000 */ mtc1 $zero, $f10 +/* 056130 80055530 46000221 */ cvt.d.s $f8, $f0 +/* 056134 80055534 462A4102 */ mul.d $f4, $f8, $f10 +/* 056138 80055538 46202020 */ cvt.s.d $f0, $f4 +/* 05613C 8005553C E7A00178 */ swc1 $f0, 0x178($sp) +.L80055540: +/* 056140 80055540 C7A60180 */ lwc1 $f6, 0x180($sp) +/* 056144 80055544 C7A80178 */ lwc1 $f8, 0x178($sp) +/* 056148 80055548 3C01800E */ lui $at, %hi(D_800E6840) # $at, 0x800e +/* 05614C 8005554C 46083282 */ mul.s $f10, $f6, $f8 +/* 056150 80055550 E60A011C */ swc1 $f10, 0x11c($s0) +/* 056154 80055554 C7A60178 */ lwc1 $f6, 0x178($sp) +/* 056158 80055558 C7A4017C */ lwc1 $f4, 0x17c($sp) +/* 05615C 8005555C C60A002C */ lwc1 $f10, 0x2c($s0) +/* 056160 80055560 46062202 */ mul.s $f8, $f4, $f6 +/* 056164 80055564 46005121 */ cvt.d.s $f4, $f10 +/* 056168 80055568 E6080120 */ swc1 $f8, 0x120($s0) +/* 05616C 8005556C C4266844 */ lwc1 $f6, %lo(D_800E6844)($at) +/* 056170 80055570 C4276840 */ lwc1 $f7, %lo(D_800E6840)($at) +/* 056174 80055574 E6100030 */ swc1 $f16, 0x30($s0) +/* 056178 80055578 46262202 */ mul.d $f8, $f4, $f6 +/* 05617C 8005557C 462042A0 */ cvt.s.d $f10, $f8 +/* 056180 80055580 E60A002C */ swc1 $f10, 0x2c($s0) +.L80055584: +/* 056184 80055584 83AF005F */ lb $t7, 0x5f($sp) +/* 056188 80055588 00000000 */ nop +/* 05618C 8005558C 11E0001E */ beqz $t7, .L80055608 +/* 056190 80055590 00000000 */ nop +/* 056194 80055594 8FB80190 */ lw $t8, 0x190($sp) +/* 056198 80055598 00000000 */ nop +/* 05619C 8005559C 2B010003 */ slti $at, $t8, 3 +/* 0561A0 800555A0 14200019 */ bnez $at, .L80055608 +/* 0561A4 800555A4 00000000 */ nop +/* 0561A8 800555A8 86190000 */ lh $t9, ($s0) +/* 0561AC 800555AC 2401FFFF */ li $at, -1 +/* 0561B0 800555B0 1321000E */ beq $t9, $at, .L800555EC +/* 0561B4 800555B4 00000000 */ nop +/* 0561B8 800555B8 8E0D0020 */ lw $t5, 0x20($s0) +/* 0561BC 800555BC 00000000 */ nop +/* 0561C0 800555C0 15A0000A */ bnez $t5, .L800555EC +/* 0561C4 800555C4 00000000 */ nop +/* 0561C8 800555C8 860E018E */ lh $t6, 0x18e($s0) +/* 0561CC 800555CC 2404013F */ li $a0, 319 +/* 0561D0 800555D0 1DC00006 */ bgtz $t6, .L800555EC +/* 0561D4 800555D4 26050020 */ addiu $a1, $s0, 0x20 +/* 0561D8 800555D8 0C000741 */ jal func_80001D04 +/* 0561DC 800555DC AFA9018C */ sw $t1, 0x18c($sp) +/* 0561E0 800555E0 8FA9018C */ lw $t1, 0x18c($sp) +/* 0561E4 800555E4 44808000 */ mtc1 $zero, $f16 +/* 0561E8 800555E8 00000000 */ nop +.L800555EC: +/* 0561EC 800555EC 820F01ED */ lb $t7, 0x1ed($s0) +/* 0561F0 800555F0 24180004 */ li $t8, 4 +/* 0561F4 800555F4 15E00003 */ bnez $t7, .L80055604 +/* 0561F8 800555F8 2419003C */ li $t9, 60 +/* 0561FC 800555FC 10000002 */ b .L80055608 +/* 056200 80055600 A2180187 */ sb $t8, 0x187($s0) +.L80055604: +/* 056204 80055604 A21901ED */ sb $t9, 0x1ed($s0) +.L80055608: +/* 056208 80055608 820D01E3 */ lb $t5, 0x1e3($s0) +/* 05620C 8005560C A20901E4 */ sb $t1, 0x1e4($s0) +/* 056210 80055610 01A97025 */ or $t6, $t5, $t1 +/* 056214 80055614 A20E01E3 */ sb $t6, 0x1e3($s0) +/* 056218 80055618 820201E3 */ lb $v0, 0x1e3($s0) +/* 05621C 8005561C A20001E2 */ sb $zero, 0x1e2($s0) +/* 056220 80055620 304F0001 */ andi $t7, $v0, 1 +/* 056224 80055624 11E00005 */ beqz $t7, .L8005563C +/* 056228 80055628 27A30134 */ addiu $v1, $sp, 0x134 +/* 05622C 8005562C 821801E2 */ lb $t8, 0x1e2($s0) +/* 056230 80055630 820201E3 */ lb $v0, 0x1e3($s0) +/* 056234 80055634 27190001 */ addiu $t9, $t8, 1 +/* 056238 80055638 A21901E2 */ sb $t9, 0x1e2($s0) +.L8005563C: +/* 05623C 8005563C 00026F80 */ sll $t5, $v0, 0x1e +/* 056240 80055640 05A10005 */ bgez $t5, .L80055658 +/* 056244 80055644 24090002 */ li $t1, 2 +/* 056248 80055648 820E01E2 */ lb $t6, 0x1e2($s0) +/* 05624C 8005564C 820201E3 */ lb $v0, 0x1e3($s0) +/* 056250 80055650 25CF0001 */ addiu $t7, $t6, 1 +/* 056254 80055654 A20F01E2 */ sb $t7, 0x1e2($s0) +.L80055658: +/* 056258 80055658 0009C040 */ sll $t8, $t1, 1 +/* 05625C 8005565C 0058C824 */ and $t9, $v0, $t8 +/* 056260 80055660 13200005 */ beqz $t9, .L80055678 +/* 056264 80055664 03004825 */ move $t1, $t8 +/* 056268 80055668 820D01E2 */ lb $t5, 0x1e2($s0) +/* 05626C 8005566C 820201E3 */ lb $v0, 0x1e3($s0) +/* 056270 80055670 25AE0001 */ addiu $t6, $t5, 1 +/* 056274 80055674 A20E01E2 */ sb $t6, 0x1e2($s0) +.L80055678: +/* 056278 80055678 00097840 */ sll $t7, $t1, 1 +/* 05627C 8005567C 004FC024 */ and $t8, $v0, $t7 +/* 056280 80055680 13000005 */ beqz $t8, .L80055698 +/* 056284 80055684 02001025 */ move $v0, $s0 +/* 056288 80055688 821901E2 */ lb $t9, 0x1e2($s0) +/* 05628C 8005568C 00000000 */ nop +/* 056290 80055690 272D0001 */ addiu $t5, $t9, 1 +/* 056294 80055694 A20D01E2 */ sb $t5, 0x1e2($s0) +.L80055698: +/* 056298 80055698 27A40164 */ addiu $a0, $sp, 0x164 +.L8005569C: +/* 05629C 8005569C C4640000 */ lwc1 $f4, ($v1) +/* 0562A0 800556A0 24630004 */ addiu $v1, $v1, 4 +/* 0562A4 800556A4 0064082B */ sltu $at, $v1, $a0 +/* 0562A8 800556A8 24420004 */ addiu $v0, $v0, 4 +/* 0562AC 800556AC 1420FFFB */ bnez $at, .L8005569C +/* 0562B0 800556B0 E44400D4 */ swc1 $f4, 0xd4($v0) +/* 0562B4 800556B4 27A20058 */ addiu $v0, $sp, 0x58 +/* 0562B8 800556B8 02001825 */ move $v1, $s0 +/* 0562BC 800556BC 27A4005C */ addiu $a0, $sp, 0x5c +.L800556C0: +/* 0562C0 800556C0 804E0000 */ lb $t6, ($v0) +/* 0562C4 800556C4 24420001 */ addiu $v0, $v0, 1 +/* 0562C8 800556C8 0044082B */ sltu $at, $v0, $a0 +/* 0562CC 800556CC 24630001 */ addiu $v1, $v1, 1 +/* 0562D0 800556D0 1420FFFB */ bnez $at, .L800556C0 +/* 0562D4 800556D4 A06E01DB */ sb $t6, 0x1db($v1) +/* 0562D8 800556D8 E630000C */ swc1 $f16, 0xc($s1) +/* 0562DC 800556DC E6300010 */ swc1 $f16, 0x10($s1) +/* 0562E0 800556E0 E6300014 */ swc1 $f16, 0x14($s1) +/* 0562E4 800556E4 00002025 */ move $a0, $zero +/* 0562E8 800556E8 02001025 */ move $v0, $s0 +.L800556EC: +/* 0562EC 800556EC C44600D8 */ lwc1 $f6, 0xd8($v0) +/* 0562F0 800556F0 C628000C */ lwc1 $f8, 0xc($s1) +/* 0562F4 800556F4 24840003 */ addiu $a0, $a0, 3 +/* 0562F8 800556F8 46083280 */ add.s $f10, $f6, $f8 +/* 0562FC 800556FC C6260010 */ lwc1 $f6, 0x10($s1) +/* 056300 80055700 E62A000C */ swc1 $f10, 0xc($s1) +/* 056304 80055704 C44400DC */ lwc1 $f4, 0xdc($v0) +/* 056308 80055708 2881000C */ slti $at, $a0, 0xc +/* 05630C 8005570C 46062200 */ add.s $f8, $f4, $f6 +/* 056310 80055710 C6240014 */ lwc1 $f4, 0x14($s1) +/* 056314 80055714 E6280010 */ swc1 $f8, 0x10($s1) +/* 056318 80055718 C44A00E0 */ lwc1 $f10, 0xe0($v0) +/* 05631C 8005571C 2442000C */ addiu $v0, $v0, 0xc +/* 056320 80055720 46045180 */ add.s $f6, $f10, $f4 +/* 056324 80055724 1420FFF1 */ bnez $at, .L800556EC +/* 056328 80055728 E6260014 */ swc1 $f6, 0x14($s1) +/* 05632C 8005572C 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 056330 80055730 44810000 */ mtc1 $at, $f0 +/* 056334 80055734 C628000C */ lwc1 $f8, 0xc($s1) +/* 056338 80055738 C6240010 */ lwc1 $f4, 0x10($s1) +/* 05633C 8005573C 46004283 */ div.s $f10, $f8, $f0 +/* 056340 80055740 C6280014 */ lwc1 $f8, 0x14($s1) +/* 056344 80055744 862F0000 */ lh $t7, ($s1) +/* 056348 80055748 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 +/* 05634C 8005574C 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 +/* 056350 80055750 000FC023 */ negu $t8, $t7 +/* 056354 80055754 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 056358 80055758 27A40060 */ addiu $a0, $sp, 0x60 +/* 05635C 8005575C E62A000C */ swc1 $f10, 0xc($s1) +/* 056360 80055760 46002183 */ div.s $f6, $f4, $f0 +/* 056364 80055764 44812000 */ mtc1 $at, $f4 +/* 056368 80055768 46004283 */ div.s $f10, $f8, $f0 +/* 05636C 8005576C E6260010 */ swc1 $f6, 0x10($s1) +/* 056370 80055770 E62A0014 */ swc1 $f10, 0x14($s1) +/* 056374 80055774 A4B80000 */ sh $t8, ($a1) +/* 056378 80055778 86390002 */ lh $t9, 2($s1) +/* 05637C 8005577C 00000000 */ nop +/* 056380 80055780 00196823 */ negu $t5, $t9 +/* 056384 80055784 A4AD0002 */ sh $t5, 2($a1) +/* 056388 80055788 862E0004 */ lh $t6, 4($s1) +/* 05638C 8005578C E4A40008 */ swc1 $f4, 8($a1) +/* 056390 80055790 000E7823 */ negu $t7, $t6 +/* 056394 80055794 A4AF0004 */ sh $t7, 4($a1) +/* 056398 80055798 C626000C */ lwc1 $f6, 0xc($s1) +/* 05639C 8005579C 00000000 */ nop +/* 0563A0 800557A0 46003207 */ neg.s $f8, $f6 +/* 0563A4 800557A4 E4A8000C */ swc1 $f8, 0xc($a1) +/* 0563A8 800557A8 C62A0010 */ lwc1 $f10, 0x10($s1) +/* 0563AC 800557AC 00000000 */ nop +/* 0563B0 800557B0 46005107 */ neg.s $f4, $f10 +/* 0563B4 800557B4 E4A40010 */ swc1 $f4, 0x10($a1) +/* 0563B8 800557B8 C6260014 */ lwc1 $f6, 0x14($s1) +/* 0563BC 800557BC 00000000 */ nop +/* 0563C0 800557C0 46003207 */ neg.s $f8, $f6 +/* 0563C4 800557C4 0C01BF9D */ jal func_8006FE74 +/* 0563C8 800557C8 E4A80014 */ swc1 $f8, 0x14($a1) +/* 0563CC 800557CC 02001025 */ move $v0, $s0 +/* 0563D0 800557D0 27A8011C */ addiu $t0, $sp, 0x11c +/* 0563D4 800557D4 27A90108 */ addiu $t1, $sp, 0x108 +/* 0563D8 800557D8 27A300F4 */ addiu $v1, $sp, 0xf4 +.L800557DC: +/* 0563DC 800557DC 8C4500D8 */ lw $a1, 0xd8($v0) +/* 0563E0 800557E0 8C4600DC */ lw $a2, 0xdc($v0) +/* 0563E4 800557E4 8C4700E0 */ lw $a3, 0xe0($v0) +/* 0563E8 800557E8 AFA9004C */ sw $t1, 0x4c($sp) +/* 0563EC 800557EC AFA80050 */ sw $t0, 0x50($sp) +/* 0563F0 800557F0 AFA30048 */ sw $v1, 0x48($sp) +/* 0563F4 800557F4 AFA20054 */ sw $v0, 0x54($sp) +/* 0563F8 800557F8 AFA30018 */ sw $v1, 0x18($sp) +/* 0563FC 800557FC AFA90014 */ sw $t1, 0x14($sp) +/* 056400 80055800 AFA80010 */ sw $t0, 0x10($sp) +/* 056404 80055804 0C01BD93 */ jal func_8006F64C +/* 056408 80055808 27A40060 */ addiu $a0, $sp, 0x60 +/* 05640C 8005580C 8FA30048 */ lw $v1, 0x48($sp) +/* 056410 80055810 8FA20054 */ lw $v0, 0x54($sp) +/* 056414 80055814 8FA80050 */ lw $t0, 0x50($sp) +/* 056418 80055818 8FA9004C */ lw $t1, 0x4c($sp) +/* 05641C 8005581C 27B80104 */ addiu $t8, $sp, 0x104 +/* 056420 80055820 24630004 */ addiu $v1, $v1, 4 +/* 056424 80055824 2442000C */ addiu $v0, $v0, 0xc +/* 056428 80055828 25080004 */ addiu $t0, $t0, 4 +/* 05642C 8005582C 1478FFEB */ bne $v1, $t8, .L800557DC +/* 056430 80055830 25290004 */ addiu $t1, $t1, 4 +/* 056434 80055834 821901D6 */ lb $t9, 0x1d6($s0) +/* 056438 80055838 24010004 */ li $at, 4 +/* 05643C 8005583C 13210048 */ beq $t9, $at, .L80055960 +/* 056440 80055840 00000000 */ nop +/* 056444 80055844 C7AA0120 */ lwc1 $f10, 0x120($sp) +/* 056448 80055848 C7A4011C */ lwc1 $f4, 0x11c($sp) +/* 05644C 8005584C C7A600F8 */ lwc1 $f6, 0xf8($sp) +/* 056450 80055850 C7A800F4 */ lwc1 $f8, 0xf4($sp) +/* 056454 80055854 46045400 */ add.s $f16, $f10, $f4 +/* 056458 80055858 C7A40124 */ lwc1 $f4, 0x124($sp) +/* 05645C 8005585C 46083480 */ add.s $f18, $f6, $f8 +/* 056460 80055860 C7AA0128 */ lwc1 $f10, 0x128($sp) +/* 056464 80055864 C7A800FC */ lwc1 $f8, 0xfc($sp) +/* 056468 80055868 C7A60100 */ lwc1 $f6, 0x100($sp) +/* 05646C 8005586C 46045000 */ add.s $f0, $f10, $f4 +/* 056470 80055870 E7B2017C */ swc1 $f18, 0x17c($sp) +/* 056474 80055874 46083080 */ add.s $f2, $f6, $f8 +/* 056478 80055878 E7B00180 */ swc1 $f16, 0x180($sp) +/* 05647C 8005587C 46029381 */ sub.s $f14, $f18, $f2 +/* 056480 80055880 0C01C1D4 */ jal func_80070750 +/* 056484 80055884 46008301 */ sub.s $f12, $f16, $f0 +/* 056488 80055888 34018000 */ li $at, 32768 +/* 05648C 8005588C 00412021 */ addu $a0, $v0, $at +/* 056490 80055890 308DFFFF */ andi $t5, $a0, 0xffff +/* 056494 80055894 820F01D2 */ lb $t7, 0x1d2($s0) +/* 056498 80055898 000D1C00 */ sll $v1, $t5, 0x10 +/* 05649C 8005589C 24050007 */ li $a1, 7 +/* 0564A0 800558A0 00037403 */ sra $t6, $v1, 0x10 +/* 0564A4 800558A4 14AF000A */ bne $a1, $t7, .L800558D0 +/* 0564A8 800558A8 01C01825 */ move $v1, $t6 +/* 0564AC 800558AC 000D1400 */ sll $v0, $t5, 0x10 +/* 0564B0 800558B0 0002C403 */ sra $t8, $v0, 0x10 +/* 0564B4 800558B4 1B000003 */ blez $t8, .L800558C4 +/* 0564B8 800558B8 03001025 */ move $v0, $t8 +/* 0564BC 800558BC 24190800 */ li $t9, 2048 +/* 0564C0 800558C0 A619019C */ sh $t9, 0x19c($s0) +.L800558C4: +/* 0564C4 800558C4 04410002 */ bgez $v0, .L800558D0 +/* 0564C8 800558C8 240DF800 */ li $t5, -2048 +/* 0564CC 800558CC A60D019C */ sh $t5, 0x19c($s0) +.L800558D0: +/* 0564D0 800558D0 820E01D2 */ lb $t6, 0x1d2($s0) +/* 0564D4 800558D4 00000000 */ nop +/* 0564D8 800558D8 11C00004 */ beqz $t6, .L800558EC +/* 0564DC 800558DC 286101F5 */ slti $at, $v1, 0x1f5 +/* 0564E0 800558E0 8603019C */ lh $v1, 0x19c($s0) +/* 0564E4 800558E4 00000000 */ nop +/* 0564E8 800558E8 286101F5 */ slti $at, $v1, 0x1f5 +.L800558EC: +/* 0564EC 800558EC 10200003 */ beqz $at, .L800558FC +/* 0564F0 800558F0 2861FE0C */ slti $at, $v1, -0x1f4 +/* 0564F4 800558F4 1020000D */ beqz $at, .L8005592C +/* 0564F8 800558F8 87B80130 */ lh $t8, 0x130($sp) +.L800558FC: +/* 0564FC 800558FC 8E0F010C */ lw $t7, 0x10c($s0) +/* 056500 80055900 860D01A2 */ lh $t5, 0x1a2($s0) +/* 056504 80055904 01E50019 */ multu $t7, $a1 +/* 056508 80055908 A20001E6 */ sb $zero, 0x1e6($s0) +/* 05650C 8005590C 0000C012 */ mflo $t8 +/* 056510 80055910 0018C8C3 */ sra $t9, $t8, 3 +/* 056514 80055914 AE19010C */ sw $t9, 0x10c($s0) +/* 056518 80055918 01A50019 */ multu $t5, $a1 +/* 05651C 8005591C 00007012 */ mflo $t6 +/* 056520 80055920 000E78C3 */ sra $t7, $t6, 3 +/* 056524 80055924 A60F01A2 */ sh $t7, 0x1a2($s0) +/* 056528 80055928 87B80130 */ lh $t8, 0x130($sp) +.L8005592C: +/* 05652C 8005592C 0060C825 */ move $t9, $v1 +/* 056530 80055930 13000002 */ beqz $t8, .L8005593C +/* 056534 80055934 00196C80 */ sll $t5, $t9, 0x12 +/* 056538 80055938 000D1C03 */ sra $v1, $t5, 0x10 +.L8005593C: +/* 05653C 8005593C 862F0000 */ lh $t7, ($s1) +/* 056540 80055940 0003C083 */ sra $t8, $v1, 2 +/* 056544 80055944 01F8C821 */ addu $t9, $t7, $t8 +/* 056548 80055948 A6390000 */ sh $t9, ($s1) +/* 05654C 8005594C 860E01A2 */ lh $t6, 0x1a2($s0) +/* 056550 80055950 862D0000 */ lh $t5, ($s1) +/* 056554 80055954 00000000 */ nop +/* 056558 80055958 01AE7823 */ subu $t7, $t5, $t6 +/* 05655C 8005595C A60F01A0 */ sh $t7, 0x1a0($s0) +.L80055960: +/* 056560 80055960 C7AA00FC */ lwc1 $f10, 0xfc($sp) +/* 056564 80055964 C7A400F4 */ lwc1 $f4, 0xf4($sp) +/* 056568 80055968 C7A60110 */ lwc1 $f6, 0x110($sp) +/* 05656C 8005596C C7A80108 */ lwc1 $f8, 0x108($sp) +/* 056570 80055970 46045301 */ sub.s $f12, $f10, $f4 +/* 056574 80055974 46083381 */ sub.s $f14, $f6, $f8 +/* 056578 80055978 E7AC0180 */ swc1 $f12, 0x180($sp) +/* 05657C 8005597C 0C01C1D4 */ jal func_80070750 +/* 056580 80055980 E7AE017C */ swc1 $f14, 0x17c($sp) +/* 056584 80055984 8FB80184 */ lw $t8, 0x184($sp) +/* 056588 80055988 00000000 */ nop +/* 05658C 8005598C 17000005 */ bnez $t8, .L800559A4 +/* 056590 80055990 00000000 */ nop +/* 056594 80055994 86390002 */ lh $t9, 2($s1) +/* 056598 80055998 244EC000 */ addiu $t6, $v0, -0x4000 +/* 05659C 8005599C 032E7821 */ addu $t7, $t9, $t6 +/* 0565A0 800559A0 A62F0002 */ sh $t7, 2($s1) +.L800559A4: +/* 0565A4 800559A4 C7AA0120 */ lwc1 $f10, 0x120($sp) +/* 0565A8 800559A8 C7A4011C */ lwc1 $f4, 0x11c($sp) +/* 0565AC 800559AC C7A6010C */ lwc1 $f6, 0x10c($sp) +/* 0565B0 800559B0 C7A80108 */ lwc1 $f8, 0x108($sp) +/* 0565B4 800559B4 46045301 */ sub.s $f12, $f10, $f4 +/* 0565B8 800559B8 46083381 */ sub.s $f14, $f6, $f8 +/* 0565BC 800559BC E7AC0180 */ swc1 $f12, 0x180($sp) +/* 0565C0 800559C0 0C01C1D4 */ jal func_80070750 +/* 0565C4 800559C4 E7AE017C */ swc1 $f14, 0x17c($sp) +/* 0565C8 800559C8 8FB80184 */ lw $t8, 0x184($sp) +/* 0565CC 800559CC 24194000 */ li $t9, 16384 +/* 0565D0 800559D0 17000005 */ bnez $t8, .L800559E8 +/* 0565D4 800559D4 00000000 */ nop +/* 0565D8 800559D8 860D01A4 */ lh $t5, 0x1a4($s0) +/* 0565DC 800559DC 03227823 */ subu $t7, $t9, $v0 +/* 0565E0 800559E0 01AFC021 */ addu $t8, $t5, $t7 +/* 0565E4 800559E4 A61801A4 */ sh $t8, 0x1a4($s0) +.L800559E8: +/* 0565E8 800559E8 820201D6 */ lb $v0, 0x1d6($s0) +/* 0565EC 800559EC 24010004 */ li $at, 4 +/* 0565F0 800559F0 1041001F */ beq $v0, $at, .L80055A70 +/* 0565F4 800559F4 24010002 */ li $at, 2 +/* 0565F8 800559F8 1041001D */ beq $v0, $at, .L80055A70 +/* 0565FC 800559FC 2401000A */ li $at, 10 +/* 056600 80055A00 1041001B */ beq $v0, $at, .L80055A70 +/* 056604 80055A04 24010007 */ li $at, 7 +/* 056608 80055A08 1041001A */ beq $v0, $at, .L80055A74 +/* 05660C 80055A0C 8FBF002C */ lw $ra, 0x2c($sp) +/* 056610 80055A10 860201A4 */ lh $v0, 0x1a4($s0) +/* 056614 80055A14 24193400 */ li $t9, 13312 +/* 056618 80055A18 28413401 */ slti $at, $v0, 0x3401 +/* 05661C 80055A1C 14200004 */ bnez $at, .L80055A30 +/* 056620 80055A20 240ECC00 */ li $t6, -13312 +/* 056624 80055A24 A61901A4 */ sh $t9, 0x1a4($s0) +/* 056628 80055A28 860201A4 */ lh $v0, 0x1a4($s0) +/* 05662C 80055A2C 00000000 */ nop +.L80055A30: +/* 056630 80055A30 2841CC00 */ slti $at, $v0, -0x3400 +/* 056634 80055A34 10200002 */ beqz $at, .L80055A40 +/* 056638 80055A38 240D3400 */ li $t5, 13312 +/* 05663C 80055A3C A60E01A4 */ sh $t6, 0x1a4($s0) +.L80055A40: +/* 056640 80055A40 86220002 */ lh $v0, 2($s1) +/* 056644 80055A44 240FCC00 */ li $t7, -13312 +/* 056648 80055A48 28413401 */ slti $at, $v0, 0x3401 +/* 05664C 80055A4C 14200005 */ bnez $at, .L80055A64 +/* 056650 80055A50 2841CC00 */ slti $at, $v0, -0x3400 +/* 056654 80055A54 A62D0002 */ sh $t5, 2($s1) +/* 056658 80055A58 86220002 */ lh $v0, 2($s1) +/* 05665C 80055A5C 00000000 */ nop +/* 056660 80055A60 2841CC00 */ slti $at, $v0, -0x3400 +.L80055A64: +/* 056664 80055A64 10200003 */ beqz $at, .L80055A74 +/* 056668 80055A68 8FBF002C */ lw $ra, 0x2c($sp) +/* 05666C 80055A6C A62F0002 */ sh $t7, 2($s1) +.L80055A70: +/* 056670 80055A70 8FBF002C */ lw $ra, 0x2c($sp) +.L80055A74: +/* 056674 80055A74 8FB00024 */ lw $s0, 0x24($sp) +/* 056678 80055A78 8FB10028 */ lw $s1, 0x28($sp) +/* 05667C 80055A7C 03E00008 */ jr $ra +/* 056680 80055A80 27BD01A0 */ addiu $sp, $sp, 0x1a0 + diff --git a/asm/non_matchings/unknown_043920/func_80055A84.s b/asm/non_matchings/unknown_043920/func_80055A84.s new file mode 100644 index 00000000..8b330f38 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80055A84.s @@ -0,0 +1,292 @@ +glabel func_80055A84 +/* 056684 80055A84 27BDFF80 */ addiu $sp, $sp, -0x80 +/* 056688 80055A88 AFBF002C */ sw $ra, 0x2c($sp) +/* 05668C 80055A8C AFB10028 */ sw $s1, 0x28($sp) +/* 056690 80055A90 AFB00024 */ sw $s0, 0x24($sp) +/* 056694 80055A94 AFA60088 */ sw $a2, 0x88($sp) +/* 056698 80055A98 3C018012 */ lui $at, %hi(D_8011D4F0) # $at, 0x8012 +/* 05669C 80055A9C C420D4F0 */ lwc1 $f0, %lo(D_8011D4F0)($at) +/* 0566A0 80055AA0 C4840010 */ lwc1 $f4, 0x10($a0) +/* 0566A4 80055AA4 00A08025 */ move $s0, $a1 +/* 0566A8 80055AA8 4604003C */ c.lt.s $f0, $f4 +/* 0566AC 80055AAC 00808825 */ move $s1, $a0 +/* 0566B0 80055AB0 45000002 */ bc1f .L80055ABC +/* 0566B4 80055AB4 00000000 */ nop +/* 0566B8 80055AB8 E4800010 */ swc1 $f0, 0x10($a0) +.L80055ABC: +/* 0566BC 80055ABC 0C0078A7 */ jal func_8001E29C +/* 0566C0 80055AC0 24040038 */ li $a0, 56 +/* 0566C4 80055AC4 240EFFFF */ li $t6, -1 +/* 0566C8 80055AC8 A3AE003F */ sb $t6, 0x3f($sp) +/* 0566CC 80055ACC 820F01D7 */ lb $t7, 0x1d7($s0) +/* 0566D0 80055AD0 44800000 */ mtc1 $zero, $f0 +/* 0566D4 80055AD4 000FC080 */ sll $t8, $t7, 2 +/* 0566D8 80055AD8 0058C821 */ addu $t9, $v0, $t8 +/* 0566DC 80055ADC C7260000 */ lwc1 $f6, ($t9) +/* 0566E0 80055AE0 3C018012 */ lui $at, %hi(D_8011D548) # $at, 0x8012 +/* 0566E4 80055AE4 E7A60040 */ swc1 $f6, 0x40($sp) +/* 0566E8 80055AE8 C628000C */ lwc1 $f8, 0xc($s1) +/* 0566EC 80055AEC 00001825 */ move $v1, $zero +/* 0566F0 80055AF0 E7A80048 */ swc1 $f8, 0x48($sp) +/* 0566F4 80055AF4 C62A0010 */ lwc1 $f10, 0x10($s1) +/* 0566F8 80055AF8 00000000 */ nop +/* 0566FC 80055AFC E7AA004C */ swc1 $f10, 0x4c($sp) +/* 056700 80055B00 C6240014 */ lwc1 $f4, 0x14($s1) +/* 056704 80055B04 E420D548 */ swc1 $f0, %lo(D_8011D548)($at) +/* 056708 80055B08 3C018012 */ lui $at, %hi(D_8011D54C) # $at, 0x8012 +/* 05670C 80055B0C AFA00074 */ sw $zero, 0x74($sp) +/* 056710 80055B10 E420D54C */ swc1 $f0, %lo(D_8011D54C)($at) +/* 056714 80055B14 E7A40050 */ swc1 $f4, 0x50($sp) +/* 056718 80055B18 86090000 */ lh $t1, ($s0) +/* 05671C 80055B1C 2401FFFF */ li $at, -1 +/* 056720 80055B20 15210006 */ bne $t1, $at, .L80055B3C +/* 056724 80055B24 27AB0048 */ addiu $t3, $sp, 0x48 +/* 056728 80055B28 820A01D7 */ lb $t2, 0x1d7($s0) +/* 05672C 80055B2C 00000000 */ nop +/* 056730 80055B30 29410005 */ slti $at, $t2, 5 +/* 056734 80055B34 1020000C */ beqz $at, .L80055B68 +/* 056738 80055B38 27AB0048 */ addiu $t3, $sp, 0x48 +.L80055B3C: +/* 05673C 80055B3C 27AC0040 */ addiu $t4, $sp, 0x40 +/* 056740 80055B40 27AD003F */ addiu $t5, $sp, 0x3f +/* 056744 80055B44 AFAD0018 */ sw $t5, 0x18($sp) +/* 056748 80055B48 AFAC0014 */ sw $t4, 0x14($sp) +/* 05674C 80055B4C AFAB0010 */ sw $t3, 0x10($sp) +/* 056750 80055B50 02202025 */ move $a0, $s1 +/* 056754 80055B54 24050001 */ li $a1, 1 +/* 056758 80055B58 27A60074 */ addiu $a2, $sp, 0x74 +/* 05675C 80055B5C 0C005C92 */ jal func_80017248 +/* 056760 80055B60 260700D8 */ addiu $a3, $s0, 0xd8 +/* 056764 80055B64 00401825 */ move $v1, $v0 +.L80055B68: +/* 056768 80055B68 306E0080 */ andi $t6, $v1, 0x80 +/* 05676C 80055B6C 11C0000E */ beqz $t6, .L80055BA8 +/* 056770 80055B70 260500D8 */ addiu $a1, $s0, 0xd8 +/* 056774 80055B74 C7A60048 */ lwc1 $f6, 0x48($sp) +/* 056778 80055B78 C628000C */ lwc1 $f8, 0xc($s1) +/* 05677C 80055B7C 3C018012 */ lui $at, %hi(D_8011D548) # $at, 0x8012 +/* 056780 80055B80 46083281 */ sub.s $f10, $f6, $f8 +/* 056784 80055B84 C7A40050 */ lwc1 $f4, 0x50($sp) +/* 056788 80055B88 E42AD548 */ swc1 $f10, %lo(D_8011D548)($at) +/* 05678C 80055B8C C6260014 */ lwc1 $f6, 0x14($s1) +/* 056790 80055B90 3C018012 */ lui $at, %hi(D_8011D54C) # $at, 0x8012 +/* 056794 80055B94 46062201 */ sub.s $f8, $f4, $f6 +/* 056798 80055B98 E428D54C */ swc1 $f8, %lo(D_8011D54C)($at) +/* 05679C 80055B9C 2401FF7F */ li $at, -129 +/* 0567A0 80055BA0 00617824 */ and $t7, $v1, $at +/* 0567A4 80055BA4 01E01825 */ move $v1, $t7 +.L80055BA8: +/* 0567A8 80055BA8 1060000E */ beqz $v1, .L80055BE4 +/* 0567AC 80055BAC 00004025 */ move $t0, $zero +/* 0567B0 80055BB0 C7AA004C */ lwc1 $f10, 0x4c($sp) +/* 0567B4 80055BB4 C6260010 */ lwc1 $f6, 0x10($s1) +/* 0567B8 80055BB8 3C014010 */ li $at, 0x40100000 # 2.250000 +/* 0567BC 80055BBC 46005121 */ cvt.d.s $f4, $f10 +/* 0567C0 80055BC0 44805000 */ mtc1 $zero, $f10 +/* 0567C4 80055BC4 44815800 */ mtc1 $at, $f11 +/* 0567C8 80055BC8 46003221 */ cvt.d.s $f8, $f6 +/* 0567CC 80055BCC 462A4181 */ sub.d $f6, $f8, $f10 +/* 0567D0 80055BD0 4626203C */ c.lt.d $f4, $f6 +/* 0567D4 80055BD4 00000000 */ nop +/* 0567D8 80055BD8 45000002 */ bc1f .L80055BE4 +/* 0567DC 80055BDC 00000000 */ nop +/* 0567E0 80055BE0 24080001 */ li $t0, 1 +.L80055BE4: +/* 0567E4 80055BE4 820701D6 */ lb $a3, 0x1d6($s0) +/* 0567E8 80055BE8 A3A8003E */ sb $t0, 0x3e($sp) +/* 0567EC 80055BEC AFA50038 */ sw $a1, 0x38($sp) +/* 0567F0 80055BF0 AFA30070 */ sw $v1, 0x70($sp) +/* 0567F4 80055BF4 24040001 */ li $a0, 1 +/* 0567F8 80055BF8 0C00C44C */ jal func_80031130 +/* 0567FC 80055BFC 27A60048 */ addiu $a2, $sp, 0x48 +/* 056800 80055C00 8FA40038 */ lw $a0, 0x38($sp) +/* 056804 80055C04 24180001 */ li $t8, 1 +/* 056808 80055C08 27B90074 */ addiu $t9, $sp, 0x74 +/* 05680C 80055C0C AFA00074 */ sw $zero, 0x74($sp) +/* 056810 80055C10 AFB90014 */ sw $t9, 0x14($sp) +/* 056814 80055C14 AFB80010 */ sw $t8, 0x10($sp) +/* 056818 80055C18 27A50048 */ addiu $a1, $sp, 0x48 +/* 05681C 80055C1C 27A60040 */ addiu $a2, $sp, 0x40 +/* 056820 80055C20 0C00C580 */ jal func_80031600 +/* 056824 80055C24 27A7003F */ addiu $a3, $sp, 0x3f +/* 056828 80055C28 8FA30070 */ lw $v1, 0x70($sp) +/* 05682C 80055C2C 83A8003E */ lb $t0, 0x3e($sp) +/* 056830 80055C30 A20201E3 */ sb $v0, 0x1e3($s0) +/* 056834 80055C34 820901E3 */ lb $t1, 0x1e3($s0) +/* 056838 80055C38 A20301E4 */ sb $v1, 0x1e4($s0) +/* 05683C 80055C3C 01235025 */ or $t2, $t1, $v1 +/* 056840 80055C40 A20A01E3 */ sb $t2, 0x1e3($s0) +/* 056844 80055C44 820B01E3 */ lb $t3, 0x1e3($s0) +/* 056848 80055C48 A20001E2 */ sb $zero, 0x1e2($s0) +/* 05684C 80055C4C 11600005 */ beqz $t3, .L80055C64 +/* 056850 80055C50 02001825 */ move $v1, $s0 +/* 056854 80055C54 240C000F */ li $t4, 15 +/* 056858 80055C58 240D0004 */ li $t5, 4 +/* 05685C 80055C5C A20C01E3 */ sb $t4, 0x1e3($s0) +/* 056860 80055C60 A20D01E2 */ sb $t5, 0x1e2($s0) +.L80055C64: +/* 056864 80055C64 1100000C */ beqz $t0, .L80055C98 +/* 056868 80055C68 27A20048 */ addiu $v0, $sp, 0x48 +/* 05686C 80055C6C 8FAE0074 */ lw $t6, 0x74($sp) +/* 056870 80055C70 00000000 */ nop +/* 056874 80055C74 11C00009 */ beqz $t6, .L80055C9C +/* 056878 80055C78 27A40054 */ addiu $a0, $sp, 0x54 +/* 05687C 80055C7C 820F01ED */ lb $t7, 0x1ed($s0) +/* 056880 80055C80 24180004 */ li $t8, 4 +/* 056884 80055C84 15E00003 */ bnez $t7, .L80055C94 +/* 056888 80055C88 2419003C */ li $t9, 60 +/* 05688C 80055C8C 10000002 */ b .L80055C98 +/* 056890 80055C90 A2180187 */ sb $t8, 0x187($s0) +.L80055C94: +/* 056894 80055C94 A21901ED */ sb $t9, 0x1ed($s0) +.L80055C98: +/* 056898 80055C98 27A40054 */ addiu $a0, $sp, 0x54 +.L80055C9C: +/* 05689C 80055C9C C4480000 */ lwc1 $f8, ($v0) +/* 0568A0 80055CA0 24420004 */ addiu $v0, $v0, 4 +/* 0568A4 80055CA4 0044082B */ sltu $at, $v0, $a0 +/* 0568A8 80055CA8 24630004 */ addiu $v1, $v1, 4 +/* 0568AC 80055CAC 1420FFFB */ bnez $at, .L80055C9C +/* 0568B0 80055CB0 E46800D4 */ swc1 $f8, 0xd4($v1) +/* 0568B4 80055CB4 83A9003F */ lb $t1, 0x3f($sp) +/* 0568B8 80055CB8 C60A00D8 */ lwc1 $f10, 0xd8($s0) +/* 0568BC 80055CBC A20901DC */ sb $t1, 0x1dc($s0) +/* 0568C0 80055CC0 83AA003F */ lb $t2, 0x3f($sp) +/* 0568C4 80055CC4 27A40068 */ addiu $a0, $sp, 0x68 +/* 0568C8 80055CC8 A20A01DD */ sb $t2, 0x1dd($s0) +/* 0568CC 80055CCC 83AB003F */ lb $t3, 0x3f($sp) +/* 0568D0 80055CD0 27A50064 */ addiu $a1, $sp, 0x64 +/* 0568D4 80055CD4 A20B01DE */ sb $t3, 0x1de($s0) +/* 0568D8 80055CD8 83AC003F */ lb $t4, 0x3f($sp) +/* 0568DC 80055CDC 00000000 */ nop +/* 0568E0 80055CE0 A20C01DF */ sb $t4, 0x1df($s0) +/* 0568E4 80055CE4 E62A000C */ swc1 $f10, 0xc($s1) +/* 0568E8 80055CE8 C60400DC */ lwc1 $f4, 0xdc($s0) +/* 0568EC 80055CEC 00000000 */ nop +/* 0568F0 80055CF0 E6240010 */ swc1 $f4, 0x10($s1) +/* 0568F4 80055CF4 C60600E0 */ lwc1 $f6, 0xe0($s0) +/* 0568F8 80055CF8 00000000 */ nop +/* 0568FC 80055CFC E6260014 */ swc1 $f6, 0x14($s1) +/* 056900 80055D00 820D01E2 */ lb $t5, 0x1e2($s0) +/* 056904 80055D04 00000000 */ nop +/* 056908 80055D08 11A00046 */ beqz $t5, .L80055E24 +/* 05690C 80055D0C 00000000 */ nop +/* 056910 80055D10 0C00AB35 */ jal func_8002ACD4 +/* 056914 80055D14 27A60060 */ addiu $a2, $sp, 0x60 +/* 056918 80055D18 86240000 */ lh $a0, ($s1) +/* 05691C 80055D1C 00000000 */ nop +/* 056920 80055D20 00042023 */ negu $a0, $a0 +/* 056924 80055D24 00047400 */ sll $t6, $a0, 0x10 +/* 056928 80055D28 0C01C1F1 */ jal func_800707C4 +/* 05692C 80055D2C 000E2403 */ sra $a0, $t6, 0x10 +/* 056930 80055D30 86240000 */ lh $a0, ($s1) +/* 056934 80055D34 E7A00058 */ swc1 $f0, 0x58($sp) +/* 056938 80055D38 00042023 */ negu $a0, $a0 +/* 05693C 80055D3C 0004C400 */ sll $t8, $a0, 0x10 +/* 056940 80055D40 0C01C1FE */ jal func_800707F8 +/* 056944 80055D44 00182403 */ sra $a0, $t8, 0x10 +/* 056948 80055D48 C7B00068 */ lwc1 $f16, 0x68($sp) +/* 05694C 80055D4C C7A20058 */ lwc1 $f2, 0x58($sp) +/* 056950 80055D50 46008202 */ mul.s $f8, $f16, $f0 +/* 056954 80055D54 C7B20060 */ lwc1 $f18, 0x60($sp) +/* 056958 80055D58 C7AE0064 */ lwc1 $f14, 0x64($sp) +/* 05695C 80055D5C 46029282 */ mul.s $f10, $f18, $f2 +/* 056960 80055D60 00000000 */ nop +/* 056964 80055D64 46028102 */ mul.s $f4, $f16, $f2 +/* 056968 80055D68 460A4300 */ add.s $f12, $f8, $f10 +/* 05696C 80055D6C 46009182 */ mul.s $f6, $f18, $f0 +/* 056970 80055D70 46062481 */ sub.s $f18, $f4, $f6 +/* 056974 80055D74 0C01C1D4 */ jal func_80070750 +/* 056978 80055D78 E7B20060 */ swc1 $f18, 0x60($sp) +/* 05697C 80055D7C 00021C00 */ sll $v1, $v0, 0x10 +/* 056980 80055D80 00034C03 */ sra $t1, $v1, 0x10 +/* 056984 80055D84 00091823 */ negu $v1, $t1 +/* 056988 80055D88 28612000 */ slti $at, $v1, 0x2000 +/* 05698C 80055D8C 10200004 */ beqz $at, .L80055DA0 +/* 056990 80055D90 2861E001 */ slti $at, $v1, -0x1fff +/* 056994 80055D94 14200002 */ bnez $at, .L80055DA0 +/* 056998 80055D98 00000000 */ nop +/* 05699C 80055D9C A60301A4 */ sh $v1, 0x1a4($s0) +.L80055DA0: +/* 0569A0 80055DA0 C7AC0060 */ lwc1 $f12, 0x60($sp) +/* 0569A4 80055DA4 C7AE0064 */ lwc1 $f14, 0x64($sp) +/* 0569A8 80055DA8 0C01C1D4 */ jal func_80070750 +/* 0569AC 80055DAC 00000000 */ nop +/* 0569B0 80055DB0 00021C00 */ sll $v1, $v0, 0x10 +/* 0569B4 80055DB4 00035403 */ sra $t2, $v1, 0x10 +/* 0569B8 80055DB8 000A1823 */ negu $v1, $t2 +/* 0569BC 80055DBC 28612000 */ slti $at, $v1, 0x2000 +/* 0569C0 80055DC0 10200004 */ beqz $at, .L80055DD4 +/* 0569C4 80055DC4 2861E001 */ slti $at, $v1, -0x1fff +/* 0569C8 80055DC8 14200002 */ bnez $at, .L80055DD4 +/* 0569CC 80055DCC 00000000 */ nop +/* 0569D0 80055DD0 A6230002 */ sh $v1, 2($s1) +.L80055DD4: +/* 0569D4 80055DD4 820B01D6 */ lb $t3, 0x1d6($s0) +/* 0569D8 80055DD8 24010004 */ li $at, 4 +/* 0569DC 80055DDC 15610011 */ bne $t3, $at, .L80055E24 +/* 0569E0 80055DE0 00000000 */ nop +/* 0569E4 80055DE4 86240002 */ lh $a0, 2($s1) +/* 0569E8 80055DE8 34018001 */ li $at, 32769 +/* 0569EC 80055DEC 308CFFFF */ andi $t4, $a0, 0xffff +/* 0569F0 80055DF0 006C1023 */ subu $v0, $v1, $t4 +/* 0569F4 80055DF4 0041082A */ slt $at, $v0, $at +/* 0569F8 80055DF8 14200003 */ bnez $at, .L80055E08 +/* 0569FC 80055DFC 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 056A00 80055E00 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 056A04 80055E04 00411021 */ addu $v0, $v0, $at +.L80055E08: +/* 056A08 80055E08 28418000 */ slti $at, $v0, -0x8000 +/* 056A0C 80055E0C 10200002 */ beqz $at, .L80055E18 +/* 056A10 80055E10 3401FFFF */ li $at, 65535 +/* 056A14 80055E14 00411021 */ addu $v0, $v0, $at +.L80055E18: +/* 056A18 80055E18 00026883 */ sra $t5, $v0, 2 +/* 056A1C 80055E1C 008D7021 */ addu $t6, $a0, $t5 +/* 056A20 80055E20 A62E0002 */ sh $t6, 2($s1) +.L80055E24: +/* 056A24 80055E24 820201D6 */ lb $v0, 0x1d6($s0) +/* 056A28 80055E28 24010004 */ li $at, 4 +/* 056A2C 80055E2C 1041001F */ beq $v0, $at, .L80055EAC +/* 056A30 80055E30 24010002 */ li $at, 2 +/* 056A34 80055E34 1041001D */ beq $v0, $at, .L80055EAC +/* 056A38 80055E38 2401000A */ li $at, 10 +/* 056A3C 80055E3C 1041001B */ beq $v0, $at, .L80055EAC +/* 056A40 80055E40 24010007 */ li $at, 7 +/* 056A44 80055E44 1041001A */ beq $v0, $at, .L80055EB0 +/* 056A48 80055E48 8FBF002C */ lw $ra, 0x2c($sp) +/* 056A4C 80055E4C 860201A4 */ lh $v0, 0x1a4($s0) +/* 056A50 80055E50 240F3400 */ li $t7, 13312 +/* 056A54 80055E54 28413401 */ slti $at, $v0, 0x3401 +/* 056A58 80055E58 14200004 */ bnez $at, .L80055E6C +/* 056A5C 80055E5C 2418CC00 */ li $t8, -13312 +/* 056A60 80055E60 A60F01A4 */ sh $t7, 0x1a4($s0) +/* 056A64 80055E64 860201A4 */ lh $v0, 0x1a4($s0) +/* 056A68 80055E68 00000000 */ nop +.L80055E6C: +/* 056A6C 80055E6C 2841CC00 */ slti $at, $v0, -0x3400 +/* 056A70 80055E70 10200002 */ beqz $at, .L80055E7C +/* 056A74 80055E74 24193400 */ li $t9, 13312 +/* 056A78 80055E78 A61801A4 */ sh $t8, 0x1a4($s0) +.L80055E7C: +/* 056A7C 80055E7C 86240002 */ lh $a0, 2($s1) +/* 056A80 80055E80 2409CC00 */ li $t1, -13312 +/* 056A84 80055E84 28813401 */ slti $at, $a0, 0x3401 +/* 056A88 80055E88 14200005 */ bnez $at, .L80055EA0 +/* 056A8C 80055E8C 2881CC00 */ slti $at, $a0, -0x3400 +/* 056A90 80055E90 A6390002 */ sh $t9, 2($s1) +/* 056A94 80055E94 86240002 */ lh $a0, 2($s1) +/* 056A98 80055E98 00000000 */ nop +/* 056A9C 80055E9C 2881CC00 */ slti $at, $a0, -0x3400 +.L80055EA0: +/* 056AA0 80055EA0 10200003 */ beqz $at, .L80055EB0 +/* 056AA4 80055EA4 8FBF002C */ lw $ra, 0x2c($sp) +/* 056AA8 80055EA8 A6290002 */ sh $t1, 2($s1) +.L80055EAC: +/* 056AAC 80055EAC 8FBF002C */ lw $ra, 0x2c($sp) +.L80055EB0: +/* 056AB0 80055EB0 8FB00024 */ lw $s0, 0x24($sp) +/* 056AB4 80055EB4 8FB10028 */ lw $s1, 0x28($sp) +/* 056AB8 80055EB8 03E00008 */ jr $ra +/* 056ABC 80055EBC 27BD0080 */ addiu $sp, $sp, 0x80 + diff --git a/asm/non_matchings/unknown_043920/func_80055EC0.s b/asm/non_matchings/unknown_043920/func_80055EC0.s new file mode 100644 index 00000000..8425dcdc --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80055EC0.s @@ -0,0 +1,712 @@ +glabel func_80055EC0 +/* 056AC0 80055EC0 27BDFF78 */ addiu $sp, $sp, -0x88 +/* 056AC4 80055EC4 AFBF0024 */ sw $ra, 0x24($sp) +/* 056AC8 80055EC8 AFB00020 */ sw $s0, 0x20($sp) +/* 056ACC 80055ECC AFA60090 */ sw $a2, 0x90($sp) +/* 056AD0 80055ED0 A7A0003A */ sh $zero, 0x3a($sp) +/* 056AD4 80055ED4 8CA20144 */ lw $v0, 0x144($a1) +/* 056AD8 80055ED8 00A08025 */ move $s0, $a1 +/* 056ADC 80055EDC 10400073 */ beqz $v0, .L800560AC +/* 056AE0 80055EE0 00803825 */ move $a3, $a0 +/* 056AE4 80055EE4 3C058012 */ lui $a1, %hi(D_8011D52C) # $a1, 0x8012 +/* 056AE8 80055EE8 24A5D52C */ addiu $a1, %lo(D_8011D52C) # addiu $a1, $a1, -0x2ad4 +/* 056AEC 80055EEC 8CAE0000 */ lw $t6, ($a1) +/* 056AF0 80055EF0 00401825 */ move $v1, $v0 +/* 056AF4 80055EF4 31CF2000 */ andi $t7, $t6, 0x2000 +/* 056AF8 80055EF8 15E00009 */ bnez $t7, .L80055F20 +/* 056AFC 80055EFC 00000000 */ nop +/* 056B00 80055F00 821801D8 */ lb $t8, 0x1d8($s0) +/* 056B04 80055F04 00000000 */ nop +/* 056B08 80055F08 17000005 */ bnez $t8, .L80055F20 +/* 056B0C 80055F0C 00000000 */ nop +/* 056B10 80055F10 82190187 */ lb $t9, 0x187($s0) +/* 056B14 80055F14 00000000 */ nop +/* 056B18 80055F18 13200282 */ beqz $t9, .L80056924 +/* 056B1C 80055F1C 8FBF0024 */ lw $ra, 0x24($sp) +.L80055F20: +/* 056B20 80055F20 80EC003A */ lb $t4, 0x3a($a3) +/* 056B24 80055F24 8CEB0068 */ lw $t3, 0x68($a3) +/* 056B28 80055F28 000C6880 */ sll $t5, $t4, 2 +/* 056B2C 80055F2C 016D7021 */ addu $t6, $t3, $t5 +/* 056B30 80055F30 44806000 */ mtc1 $zero, $f12 +/* 056B34 80055F34 8DC20000 */ lw $v0, ($t6) +/* 056B38 80055F38 46006086 */ mov.s $f2, $f12 +/* 056B3C 80055F3C 10400022 */ beqz $v0, .L80055FC8 +/* 056B40 80055F40 00000000 */ nop +/* 056B44 80055F44 8CEF0040 */ lw $t7, 0x40($a3) +/* 056B48 80055F48 8C450000 */ lw $a1, ($v0) +/* 056B4C 80055F4C 81E40058 */ lb $a0, 0x58($t7) +/* 056B50 80055F50 00000000 */ nop +/* 056B54 80055F54 0480001C */ bltz $a0, .L80055FC8 +/* 056B58 80055F58 00000000 */ nop +/* 056B5C 80055F5C 84B80018 */ lh $t8, 0x18($a1) +/* 056B60 80055F60 00000000 */ nop +/* 056B64 80055F64 0098082A */ slt $at, $a0, $t8 +/* 056B68 80055F68 10200017 */ beqz $at, .L80055FC8 +/* 056B6C 80055F6C 00000000 */ nop +/* 056B70 80055F70 8CE60044 */ lw $a2, 0x44($a3) +/* 056B74 80055F74 00000000 */ nop +/* 056B78 80055F78 10C00013 */ beqz $a2, .L80055FC8 +/* 056B7C 80055F7C 00000000 */ nop +/* 056B80 80055F80 8CB90014 */ lw $t9, 0x14($a1) +/* 056B84 80055F84 00046040 */ sll $t4, $a0, 1 +/* 056B88 80055F88 032C5821 */ addu $t3, $t9, $t4 +/* 056B8C 80055F8C 856D0000 */ lh $t5, ($t3) +/* 056B90 80055F90 C4E00008 */ lwc1 $f0, 8($a3) +/* 056B94 80055F94 000D7080 */ sll $t6, $t5, 2 +/* 056B98 80055F98 01CD7021 */ addu $t6, $t6, $t5 +/* 056B9C 80055F9C 000E7040 */ sll $t6, $t6, 1 +/* 056BA0 80055FA0 00CE1021 */ addu $v0, $a2, $t6 +/* 056BA4 80055FA4 844F0002 */ lh $t7, 2($v0) +/* 056BA8 80055FA8 84580004 */ lh $t8, 4($v0) +/* 056BAC 80055FAC 448F2000 */ mtc1 $t7, $f4 +/* 056BB0 80055FB0 44983000 */ mtc1 $t8, $f6 +/* 056BB4 80055FB4 468020A0 */ cvt.s.w $f2, $f4 +/* 056BB8 80055FB8 46001082 */ mul.s $f2, $f2, $f0 +/* 056BBC 80055FBC 46803320 */ cvt.s.w $f12, $f6 +/* 056BC0 80055FC0 46006302 */ mul.s $f12, $f12, $f0 +/* 056BC4 80055FC4 00000000 */ nop +.L80055FC8: +/* 056BC8 80055FC8 C60A0038 */ lwc1 $f10, 0x38($s0) +/* 056BCC 80055FCC C6040044 */ lwc1 $f4, 0x44($s0) +/* 056BD0 80055FD0 460C5402 */ mul.s $f16, $f10, $f12 +/* 056BD4 80055FD4 C4E8000C */ lwc1 $f8, 0xc($a3) +/* 056BD8 80055FD8 3C01800E */ lui $at, %hi(D_800E6848) # $at, 0x800e +/* 056BDC 80055FDC 8C620064 */ lw $v0, 0x64($v1) +/* 056BE0 80055FE0 46022182 */ mul.s $f6, $f4, $f2 +/* 056BE4 80055FE4 46104480 */ add.s $f18, $f8, $f16 +/* 056BE8 80055FE8 240C0002 */ li $t4, 2 +/* 056BEC 80055FEC 240B0001 */ li $t3, 1 +/* 056BF0 80055FF0 46069280 */ add.s $f10, $f18, $f6 +/* 056BF4 80055FF4 E46A000C */ swc1 $f10, 0xc($v1) +/* 056BF8 80055FF8 C610003C */ lwc1 $f16, 0x3c($s0) +/* 056BFC 80055FFC C6060048 */ lwc1 $f6, 0x48($s0) +/* 056C00 80056000 460C8102 */ mul.s $f4, $f16, $f12 +/* 056C04 80056004 C4E80010 */ lwc1 $f8, 0x10($a3) +/* 056C08 80056008 46023282 */ mul.s $f10, $f6, $f2 +/* 056C0C 8005600C 46044480 */ add.s $f18, $f8, $f4 +/* 056C10 80056010 460A9400 */ add.s $f16, $f18, $f10 +/* 056C14 80056014 E4700010 */ swc1 $f16, 0x10($v1) +/* 056C18 80056018 C6040040 */ lwc1 $f4, 0x40($s0) +/* 056C1C 8005601C C60A004C */ lwc1 $f10, 0x4c($s0) +/* 056C20 80056020 460C2182 */ mul.s $f6, $f4, $f12 +/* 056C24 80056024 C4E80014 */ lwc1 $f8, 0x14($a3) +/* 056C28 80056028 46025402 */ mul.s $f16, $f10, $f2 +/* 056C2C 8005602C 46064480 */ add.s $f18, $f8, $f6 +/* 056C30 80056030 46109100 */ add.s $f4, $f18, $f16 +/* 056C34 80056034 E4640014 */ swc1 $f4, 0x14($v1) +/* 056C38 80056038 84F9002E */ lh $t9, 0x2e($a3) +/* 056C3C 8005603C 00000000 */ nop +/* 056C40 80056040 A479002E */ sh $t9, 0x2e($v1) +/* 056C44 80056044 C4E8001C */ lwc1 $f8, 0x1c($a3) +/* 056C48 80056048 C420684C */ lwc1 $f0, %lo(D_800E684C)($at) +/* 056C4C 8005604C C4216848 */ lwc1 $f1, %lo(D_800E6848)($at) +/* 056C50 80056050 460041A1 */ cvt.d.s $f6, $f8 +/* 056C54 80056054 46203282 */ mul.d $f10, $f6, $f0 +/* 056C58 80056058 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 056C5C 8005605C 44814800 */ mtc1 $at, $f9 +/* 056C60 80056060 44804000 */ mtc1 $zero, $f8 +/* 056C64 80056064 462054A0 */ cvt.s.d $f18, $f10 +/* 056C68 80056068 E472001C */ swc1 $f18, 0x1c($v1) +/* 056C6C 8005606C C4F00020 */ lwc1 $f16, 0x20($a3) +/* 056C70 80056070 00000000 */ nop +/* 056C74 80056074 46008121 */ cvt.d.s $f4, $f16 +/* 056C78 80056078 46282181 */ sub.d $f6, $f4, $f8 +/* 056C7C 8005607C 462032A0 */ cvt.s.d $f10, $f6 +/* 056C80 80056080 E46A0020 */ swc1 $f10, 0x20($v1) +/* 056C84 80056084 C4F20024 */ lwc1 $f18, 0x24($a3) +/* 056C88 80056088 00000000 */ nop +/* 056C8C 8005608C 46009421 */ cvt.d.s $f16, $f18 +/* 056C90 80056090 46208102 */ mul.d $f4, $f16, $f0 +/* 056C94 80056094 46202220 */ cvt.s.d $f8, $f4 +/* 056C98 80056098 E4680024 */ swc1 $f8, 0x24($v1) +/* 056C9C 8005609C A04C000B */ sb $t4, 0xb($v0) +/* 056CA0 800560A0 AE000144 */ sw $zero, 0x144($s0) +/* 056CA4 800560A4 1000021E */ b .L80056920 +/* 056CA8 800560A8 A20B0211 */ sb $t3, 0x211($s0) +.L800560AC: +/* 056CAC 800560AC 3C058012 */ lui $a1, %hi(D_8011D52C) # $a1, 0x8012 +/* 056CB0 800560B0 24A5D52C */ addiu $a1, %lo(D_8011D52C) # addiu $a1, $a1, -0x2ad4 +/* 056CB4 800560B4 8CAD0000 */ lw $t5, ($a1) +/* 056CB8 800560B8 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 +/* 056CBC 800560BC 31AE2000 */ andi $t6, $t5, 0x2000 +/* 056CC0 800560C0 11C00002 */ beqz $t6, .L800560CC +/* 056CC4 800560C4 2404000C */ li $a0, 12 +/* 056CC8 800560C8 A2000211 */ sb $zero, 0x211($s0) +.L800560CC: +/* 056CCC 800560CC 820F0211 */ lb $t7, 0x211($s0) +/* 056CD0 800560D0 00000000 */ nop +/* 056CD4 800560D4 11E00006 */ beqz $t7, .L800560F0 +/* 056CD8 800560D8 00000000 */ nop +/* 056CDC 800560DC AC20D530 */ sw $zero, %lo(D_8011D530)($at) +/* 056CE0 800560E0 8CB80000 */ lw $t8, ($a1) +/* 056CE4 800560E4 2401DFFF */ li $at, -8193 +/* 056CE8 800560E8 0301C824 */ and $t9, $t8, $at +/* 056CEC 800560EC ACB90000 */ sw $t9, ($a1) +.L800560F0: +/* 056CF0 800560F0 820C0175 */ lb $t4, 0x175($s0) +/* 056CF4 800560F4 00000000 */ nop +/* 056CF8 800560F8 15800002 */ bnez $t4, .L80056104 +/* 056CFC 800560FC 00000000 */ nop +/* 056D00 80056100 AE000140 */ sw $zero, 0x140($s0) +.L80056104: +/* 056D04 80056104 820B0172 */ lb $t3, 0x172($s0) +/* 056D08 80056108 2401FFFF */ li $at, -1 +/* 056D0C 8005610C 15610002 */ bne $t3, $at, .L80056118 +/* 056D10 80056110 00000000 */ nop +/* 056D14 80056114 A2000173 */ sb $zero, 0x173($s0) +.L80056118: +/* 056D18 80056118 820D0173 */ lb $t5, 0x173($s0) +/* 056D1C 8005611C 00000000 */ nop +/* 056D20 80056120 1DA0000A */ bgtz $t5, .L8005614C +/* 056D24 80056124 00000000 */ nop +/* 056D28 80056128 8CAE0000 */ lw $t6, ($a1) +/* 056D2C 8005612C 00E02025 */ move $a0, $a3 +/* 056D30 80056130 31CF2000 */ andi $t7, $t6, 0x2000 +/* 056D34 80056134 11E001FB */ beqz $t7, .L80056924 +/* 056D38 80056138 8FBF0024 */ lw $ra, 0x24($sp) +/* 056D3C 8005613C 0C015A4C */ jal func_80056930 +/* 056D40 80056140 02002825 */ move $a1, $s0 +/* 056D44 80056144 100001F7 */ b .L80056924 +/* 056D48 80056148 8FBF0024 */ lw $ra, 0x24($sp) +.L8005614C: +/* 056D4C 8005614C 0C0078A7 */ jal func_8001E29C +/* 056D50 80056150 AFA70088 */ sw $a3, 0x88($sp) +/* 056D54 80056154 82180172 */ lb $t8, 0x172($s0) +/* 056D58 80056158 820C0174 */ lb $t4, 0x174($s0) +/* 056D5C 8005615C 0018C880 */ sll $t9, $t8, 2 +/* 056D60 80056160 0338C821 */ addu $t9, $t9, $t8 +/* 056D64 80056164 0019C840 */ sll $t9, $t9, 1 +/* 056D68 80056168 000C5840 */ sll $t3, $t4, 1 +/* 056D6C 8005616C 032B6821 */ addu $t5, $t9, $t3 +/* 056D70 80056170 01A27021 */ addu $t6, $t5, $v0 +/* 056D74 80056174 81C80000 */ lb $t0, ($t6) +/* 056D78 80056178 3C058012 */ lui $a1, %hi(D_8011D52C) # $a1, 0x8012 +/* 056D7C 8005617C 2401FFFF */ li $at, -1 +/* 056D80 80056180 15010003 */ bne $t0, $at, .L80056190 +/* 056D84 80056184 24A5D52C */ addiu $a1, %lo(D_8011D52C) # addiu $a1, $a1, -0x2ad4 +/* 056D88 80056188 100001E5 */ b .L80056920 +/* 056D8C 8005618C A2000173 */ sb $zero, 0x173($s0) +.L80056190: +/* 056D90 80056190 8CAF0000 */ lw $t7, ($a1) +/* 056D94 80056194 00003825 */ move $a3, $zero +/* 056D98 80056198 31F82000 */ andi $t8, $t7, 0x2000 +/* 056D9C 8005619C 13000008 */ beqz $t8, .L800561C0 +/* 056DA0 800561A0 2404013E */ li $a0, 318 +/* 056DA4 800561A4 86050000 */ lh $a1, ($s0) +/* 056DA8 800561A8 AFA8007C */ sw $t0, 0x7c($sp) +/* 056DAC 800561AC 0C029D3B */ jal func_800A74EC +/* 056DB0 800561B0 AFA00068 */ sw $zero, 0x68($sp) +/* 056DB4 800561B4 8FA70068 */ lw $a3, 0x68($sp) +/* 056DB8 800561B8 8FA8007C */ lw $t0, 0x7c($sp) +/* 056DBC 800561BC 00000000 */ nop +.L800561C0: +/* 056DC0 800561C0 820C0195 */ lb $t4, 0x195($s0) +/* 056DC4 800561C4 3C0B8012 */ lui $t3, %hi(D_8011D528) # $t3, 0x8012 +/* 056DC8 800561C8 11800006 */ beqz $t4, .L800561E4 +/* 056DCC 800561CC 00000000 */ nop +/* 056DD0 800561D0 82190175 */ lb $t9, 0x175($s0) +/* 056DD4 800561D4 00000000 */ nop +/* 056DD8 800561D8 172001D2 */ bnez $t9, .L80056924 +/* 056DDC 800561DC 8FBF0024 */ lw $ra, 0x24($sp) +/* 056DE0 800561E0 A2000195 */ sb $zero, 0x195($s0) +.L800561E4: +/* 056DE4 800561E4 8D6BD528 */ lw $t3, %lo(D_8011D528)($t3) +/* 056DE8 800561E8 3C038012 */ lui $v1, %hi(D_8011D530) # $v1, 0x8012 +/* 056DEC 800561EC 316D2000 */ andi $t5, $t3, 0x2000 +/* 056DF0 800561F0 15A00006 */ bnez $t5, .L8005620C +/* 056DF4 800561F4 00000000 */ nop +/* 056DF8 800561F8 8C63D530 */ lw $v1, %lo(D_8011D530)($v1) +/* 056DFC 800561FC 00000000 */ nop +/* 056E00 80056200 306E2000 */ andi $t6, $v1, 0x2000 +/* 056E04 80056204 11C00045 */ beqz $t6, .L8005631C +/* 056E08 80056208 01C01825 */ move $v1, $t6 +.L8005620C: +/* 056E0C 8005620C 1100000E */ beqz $t0, .L80056248 +/* 056E10 80056210 02002825 */ move $a1, $s0 +/* 056E14 80056214 24010005 */ li $at, 5 +/* 056E18 80056218 1101001A */ beq $t0, $at, .L80056284 +/* 056E1C 8005621C 02002825 */ move $a1, $s0 +/* 056E20 80056220 24010006 */ li $at, 6 +/* 056E24 80056224 11010017 */ beq $t0, $at, .L80056284 +/* 056E28 80056228 24010007 */ li $at, 7 +/* 056E2C 8005622C 11010015 */ beq $t0, $at, .L80056284 +/* 056E30 80056230 3C038012 */ lui $v1, %hi(D_8011D530) # $v1, 0x8012 +/* 056E34 80056234 8C63D530 */ lw $v1, %lo(D_8011D530)($v1) +/* 056E38 80056238 00000000 */ nop +/* 056E3C 8005623C 306F2000 */ andi $t7, $v1, 0x2000 +/* 056E40 80056240 10000036 */ b .L8005631C +/* 056E44 80056244 01E01825 */ move $v1, $t7 +.L80056248: +/* 056E48 80056248 8FA40088 */ lw $a0, 0x88($sp) +/* 056E4C 8005624C 27A60064 */ addiu $a2, $sp, 0x64 +/* 056E50 80056250 AFA70068 */ sw $a3, 0x68($sp) +/* 056E54 80056254 0C015A63 */ jal func_8005698C +/* 056E58 80056258 AFA8007C */ sw $t0, 0x7c($sp) +/* 056E5C 8005625C 8FA70068 */ lw $a3, 0x68($sp) +/* 056E60 80056260 8FA8007C */ lw $t0, 0x7c($sp) +/* 056E64 80056264 A2000175 */ sb $zero, 0x175($s0) +/* 056E68 80056268 AE020140 */ sw $v0, 0x140($s0) +/* 056E6C 8005626C 3C038012 */ lui $v1, %hi(D_8011D530) # $v1, 0x8012 +/* 056E70 80056270 8C63D530 */ lw $v1, %lo(D_8011D530)($v1) +/* 056E74 80056274 AFA2006C */ sw $v0, 0x6c($sp) +/* 056E78 80056278 30782000 */ andi $t8, $v1, 0x2000 +/* 056E7C 8005627C 10000027 */ b .L8005631C +/* 056E80 80056280 03001825 */ move $v1, $t8 +.L80056284: +/* 056E84 80056284 8FA40088 */ lw $a0, 0x88($sp) +/* 056E88 80056288 27A60064 */ addiu $a2, $sp, 0x64 +/* 056E8C 8005628C AFA70068 */ sw $a3, 0x68($sp) +/* 056E90 80056290 0C015A63 */ jal func_8005698C +/* 056E94 80056294 AFA8007C */ sw $t0, 0x7c($sp) +/* 056E98 80056298 8FA8007C */ lw $t0, 0x7c($sp) +/* 056E9C 8005629C 8FA70068 */ lw $a3, 0x68($sp) +/* 056EA0 800562A0 24010005 */ li $at, 5 +/* 056EA4 800562A4 00405025 */ move $t2, $v0 +/* 056EA8 800562A8 15010005 */ bne $t0, $at, .L800562C0 +/* 056EAC 800562AC A2000175 */ sb $zero, 0x175($s0) +/* 056EB0 800562B0 3C01447A */ li $at, 0x447A0000 # 1000.000000 +/* 056EB4 800562B4 44810000 */ mtc1 $at, $f0 +/* 056EB8 800562B8 10000005 */ b .L800562D0 +/* 056EBC 800562BC C7A60064 */ lwc1 $f6, 0x64($sp) +.L800562C0: +/* 056EC0 800562C0 3C01800E */ lui $at, %hi(D_800E6850) # $at, 0x800e +/* 056EC4 800562C4 C4206850 */ lwc1 $f0, %lo(D_800E6850)($at) +/* 056EC8 800562C8 00000000 */ nop +/* 056ECC 800562CC C7A60064 */ lwc1 $f6, 0x64($sp) +.L800562D0: +/* 056ED0 800562D0 24010006 */ li $at, 6 +/* 056ED4 800562D4 4600303C */ c.lt.s $f6, $f0 +/* 056ED8 800562D8 3C038012 */ lui $v1, %hi(D_8011D530) # $v1, 0x8012 +/* 056EDC 800562DC 45000009 */ bc1f .L80056304 +/* 056EE0 800562E0 00000000 */ nop +/* 056EE4 800562E4 15010005 */ bne $t0, $at, .L800562FC +/* 056EE8 800562E8 00000000 */ nop +/* 056EEC 800562EC 10400003 */ beqz $v0, .L800562FC +/* 056EF0 800562F0 00000000 */ nop +/* 056EF4 800562F4 8C470064 */ lw $a3, 0x64($v0) +/* 056EF8 800562F8 00000000 */ nop +.L800562FC: +/* 056EFC 800562FC 10000003 */ b .L8005630C +/* 056F00 80056300 AE020140 */ sw $v0, 0x140($s0) +.L80056304: +/* 056F04 80056304 AE000140 */ sw $zero, 0x140($s0) +/* 056F08 80056308 00005025 */ move $t2, $zero +.L8005630C: +/* 056F0C 8005630C 8C63D530 */ lw $v1, %lo(D_8011D530)($v1) +/* 056F10 80056310 AFAA006C */ sw $t2, 0x6c($sp) +/* 056F14 80056314 306C2000 */ andi $t4, $v1, 0x2000 +/* 056F18 80056318 01801825 */ move $v1, $t4 +.L8005631C: +/* 056F1C 8005631C 8FAA006C */ lw $t2, 0x6c($sp) +/* 056F20 80056320 1060017F */ beqz $v1, .L80056920 +/* 056F24 80056324 2402001D */ li $v0, 29 +/* 056F28 80056328 3C0141F0 */ li $at, 0x41F00000 # 30.000000 +/* 056F2C 8005632C 44810000 */ mtc1 $at, $f0 +/* 056F30 80056330 2D010010 */ sltiu $at, $t0, 0x10 +/* 056F34 80056334 AFA80030 */ sw $t0, 0x30($sp) +/* 056F38 80056338 102000B9 */ beqz $at, .L80056620 +/* 056F3C 8005633C 0100C825 */ move $t9, $t0 +/* 056F40 80056340 0019C880 */ sll $t9, $t9, 2 +/* 056F44 80056344 3C01800E */ lui $at, 0x800e +/* 056F48 80056348 00390821 */ addu $at, $at, $t9 +/* 056F4C 8005634C 8C396854 */ lw $t9, 0x6854($at) +/* 056F50 80056350 00000000 */ nop +/* 056F54 80056354 03200008 */ jr $t9 +/* 056F58 80056358 00000000 */ nop +/* 056F5C 8005635C 3C01C120 */ li $at, 0xC1200000 # -10.000000 +/* 056F60 80056360 44815000 */ mtc1 $at, $f10 +/* 056F64 80056364 240200E5 */ li $v0, 229 +/* 056F68 80056368 100000B0 */ b .L8005662C +/* 056F6C 8005636C E7AA0064 */ swc1 $f10, 0x64($sp) +/* 056F70 80056370 3C01C120 */ li $at, 0xC1200000 # -10.000000 +/* 056F74 80056374 44819000 */ mtc1 $at, $f18 +/* 056F78 80056378 100000AC */ b .L8005662C +/* 056F7C 8005637C E7B20064 */ swc1 $f18, 0x64($sp) +/* 056F80 80056380 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 056F84 80056384 44818000 */ mtc1 $at, $f16 +/* 056F88 80056388 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 056F8C 8005638C 44810000 */ mtc1 $at, $f0 +/* 056F90 80056390 2402000E */ li $v0, 14 +/* 056F94 80056394 100000A5 */ b .L8005662C +/* 056F98 80056398 E7B00064 */ swc1 $f16, 0x64($sp) +/* 056F9C 8005639C 820B01D6 */ lb $t3, 0x1d6($s0) +/* 056FA0 800563A0 24010002 */ li $at, 2 +/* 056FA4 800563A4 11610003 */ beq $t3, $at, .L800563B4 +/* 056FA8 800563A8 240200EB */ li $v0, 235 +/* 056FAC 800563AC 10000001 */ b .L800563B4 +/* 056FB0 800563B0 24020082 */ li $v0, 130 +.L800563B4: +/* 056FB4 800563B4 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 056FB8 800563B8 44812000 */ mtc1 $at, $f4 +/* 056FBC 800563BC 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 056FC0 800563C0 44810000 */ mtc1 $at, $f0 +/* 056FC4 800563C4 10000099 */ b .L8005662C +/* 056FC8 800563C8 E7A40064 */ swc1 $f4, 0x64($sp) +/* 056FCC 800563CC 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 056FD0 800563D0 44814000 */ mtc1 $at, $f8 +/* 056FD4 800563D4 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 056FD8 800563D8 44810000 */ mtc1 $at, $f0 +/* 056FDC 800563DC 2402002E */ li $v0, 46 +/* 056FE0 800563E0 00005025 */ move $t2, $zero +/* 056FE4 800563E4 10000091 */ b .L8005662C +/* 056FE8 800563E8 E7A80064 */ swc1 $f8, 0x64($sp) +/* 056FEC 800563EC 24010008 */ li $at, 8 +/* 056FF0 800563F0 11010009 */ beq $t0, $at, .L80056418 +/* 056FF4 800563F4 2401000F */ li $at, 15 +/* 056FF8 800563F8 1501000D */ bne $t0, $at, .L80056430 +/* 056FFC 800563FC 00000000 */ nop +/* 057000 80056400 0C00322D */ jal func_8000C8B4 +/* 057004 80056404 2404004B */ li $a0, 75 +/* 057008 80056408 240D0002 */ li $t5, 2 +/* 05700C 8005640C A20D0203 */ sb $t5, 0x203($s0) +/* 057010 80056410 1000000B */ b .L80056440 +/* 057014 80056414 A20201D3 */ sb $v0, 0x1d3($s0) +.L80056418: +/* 057018 80056418 0C00322D */ jal func_8000C8B4 +/* 05701C 8005641C 24040037 */ li $a0, 55 +/* 057020 80056420 240E0001 */ li $t6, 1 +/* 057024 80056424 A20E0203 */ sb $t6, 0x203($s0) +/* 057028 80056428 10000005 */ b .L80056440 +/* 05702C 8005642C A20201D3 */ sb $v0, 0x1d3($s0) +.L80056430: +/* 057030 80056430 0C00322D */ jal func_8000C8B4 +/* 057034 80056434 24040023 */ li $a0, 35 +/* 057038 80056438 A20201D3 */ sb $v0, 0x1d3($s0) +/* 05703C 8005643C A2000203 */ sb $zero, 0x203($s0) +.L80056440: +/* 057040 80056440 920F020C */ lbu $t7, 0x20c($s0) +/* 057044 80056444 00000000 */ nop +/* 057048 80056448 11E00006 */ beqz $t7, .L80056464 +/* 05704C 8005644C 8FB90030 */ lw $t9, 0x30($sp) +/* 057050 80056450 82180203 */ lb $t8, 0x203($s0) +/* 057054 80056454 00000000 */ nop +/* 057058 80056458 370C0004 */ ori $t4, $t8, 4 +/* 05705C 8005645C A20C0203 */ sb $t4, 0x203($s0) +/* 057060 80056460 8FB90030 */ lw $t9, 0x30($sp) +.L80056464: +/* 057064 80056464 2401000F */ li $at, 15 +/* 057068 80056468 1721000B */ bne $t9, $at, .L80056498 +/* 05706C 8005646C 8FA40088 */ lw $a0, 0x88($sp) +/* 057070 80056470 8FA40088 */ lw $a0, 0x88($sp) +/* 057074 80056474 0C015C12 */ jal func_80057048 +/* 057078 80056478 24050232 */ li $a1, 562 +/* 05707C 8005647C 8FA40088 */ lw $a0, 0x88($sp) +/* 057080 80056480 24050233 */ li $a1, 563 +/* 057084 80056484 0C015C29 */ jal func_800570A4 +/* 057088 80056488 2406001E */ li $a2, 30 +/* 05708C 8005648C 10000005 */ b .L800564A4 +/* 057090 80056490 820B0173 */ lb $t3, 0x173($s0) +/* 057094 80056494 8FA40088 */ lw $a0, 0x88($sp) +.L80056498: +/* 057098 80056498 0C015C12 */ jal func_80057048 +/* 05709C 8005649C 24050021 */ li $a1, 33 +/* 0570A0 800564A0 820B0173 */ lb $t3, 0x173($s0) +.L800564A4: +/* 0570A4 800564A4 24010004 */ li $at, 4 +/* 0570A8 800564A8 256DFFFF */ addiu $t5, $t3, -1 +/* 0570AC 800564AC A20D0173 */ sb $t5, 0x173($s0) +/* 0570B0 800564B0 8FAE0030 */ lw $t6, 0x30($sp) +/* 0570B4 800564B4 00000000 */ nop +/* 0570B8 800564B8 15C1000A */ bne $t6, $at, .L800564E4 +/* 0570BC 800564BC 00000000 */ nop +/* 0570C0 800564C0 820F01D8 */ lb $t7, 0x1d8($s0) +/* 0570C4 800564C4 00000000 */ nop +/* 0570C8 800564C8 15E00116 */ bnez $t7, .L80056924 +/* 0570CC 800564CC 8FBF0024 */ lw $ra, 0x24($sp) +/* 0570D0 800564D0 86040000 */ lh $a0, ($s0) +/* 0570D4 800564D4 0C01C8D2 */ jal func_80072348 +/* 0570D8 800564D8 24050006 */ li $a1, 6 +/* 0570DC 800564DC 10000111 */ b .L80056924 +/* 0570E0 800564E0 8FBF0024 */ lw $ra, 0x24($sp) +.L800564E4: +/* 0570E4 800564E4 821801D8 */ lb $t8, 0x1d8($s0) +/* 0570E8 800564E8 00000000 */ nop +/* 0570EC 800564EC 1700010D */ bnez $t8, .L80056924 +/* 0570F0 800564F0 8FBF0024 */ lw $ra, 0x24($sp) +/* 0570F4 800564F4 86040000 */ lh $a0, ($s0) +/* 0570F8 800564F8 0C01C8D2 */ jal func_80072348 +/* 0570FC 800564FC 24050008 */ li $a1, 8 +/* 057100 80056500 10000108 */ b .L80056924 +/* 057104 80056504 8FBF0024 */ lw $ra, 0x24($sp) +/* 057108 80056508 820C0173 */ lb $t4, 0x173($s0) +/* 05710C 8005650C 860B0000 */ lh $t3, ($s0) +/* 057110 80056510 2401FFFF */ li $at, -1 +/* 057114 80056514 2599FFFF */ addiu $t9, $t4, -1 +/* 057118 80056518 11610101 */ beq $t3, $at, .L80056920 +/* 05711C 8005651C A2190173 */ sb $t9, 0x173($s0) +/* 057120 80056520 11400005 */ beqz $t2, .L80056538 +/* 057124 80056524 240D005A */ li $t5, 90 +/* 057128 80056528 250EFFFB */ addiu $t6, $t0, -5 +/* 05712C 8005652C 000E7843 */ sra $t7, $t6, 1 +/* 057130 80056530 A20D0175 */ sb $t5, 0x175($s0) +/* 057134 80056534 A20F0184 */ sb $t7, 0x184($s0) +.L80056538: +/* 057138 80056538 821801D8 */ lb $t8, 0x1d8($s0) +/* 05713C 8005653C 00000000 */ nop +/* 057140 80056540 170000F8 */ bnez $t8, .L80056924 +/* 057144 80056544 8FBF0024 */ lw $ra, 0x24($sp) +/* 057148 80056548 86040000 */ lh $a0, ($s0) +/* 05714C 8005654C 0C01C8D2 */ jal func_80072348 +/* 057150 80056550 2405000F */ li $a1, 15 +/* 057154 80056554 100000F3 */ b .L80056924 +/* 057158 80056558 8FBF0024 */ lw $ra, 0x24($sp) +/* 05715C 8005655C 820C0173 */ lb $t4, 0x173($s0) +/* 057160 80056560 860B0000 */ lh $t3, ($s0) +/* 057164 80056564 2401FFFF */ li $at, -1 +/* 057168 80056568 2599FFFF */ addiu $t9, $t4, -1 +/* 05716C 8005656C A2190173 */ sb $t9, 0x173($s0) +/* 057170 80056570 116100EB */ beq $t3, $at, .L80056920 +/* 057174 80056574 AE000140 */ sw $zero, 0x140($s0) +/* 057178 80056578 10E00008 */ beqz $a3, .L8005659C +/* 05717C 8005657C 240D0001 */ li $t5, 1 +/* 057180 80056580 240E0078 */ li $t6, 120 +/* 057184 80056584 A0ED0195 */ sb $t5, 0x195($a3) +/* 057188 80056588 A0EE0175 */ sb $t6, 0x175($a3) +/* 05718C 8005658C 8FAF0088 */ lw $t7, 0x88($sp) +/* 057190 80056590 24180002 */ li $t8, 2 +/* 057194 80056594 A0F80184 */ sb $t8, 0x184($a3) +/* 057198 80056598 ACEF0140 */ sw $t7, 0x140($a3) +.L8005659C: +/* 05719C 8005659C 820C01D8 */ lb $t4, 0x1d8($s0) +/* 0571A0 800565A0 00000000 */ nop +/* 0571A4 800565A4 158000DF */ bnez $t4, .L80056924 +/* 0571A8 800565A8 8FBF0024 */ lw $ra, 0x24($sp) +/* 0571AC 800565AC 86040000 */ lh $a0, ($s0) +/* 0571B0 800565B0 0C01C8D2 */ jal func_80072348 +/* 0571B4 800565B4 2405000F */ li $a1, 15 +/* 0571B8 800565B8 100000DA */ b .L80056924 +/* 0571BC 800565BC 8FBF0024 */ lw $ra, 0x24($sp) +/* 0571C0 800565C0 820D0173 */ lb $t5, 0x173($s0) +/* 0571C4 800565C4 24190001 */ li $t9, 1 +/* 0571C8 800565C8 240B012C */ li $t3, 300 +/* 0571CC 800565CC 25AEFFFF */ addiu $t6, $t5, -1 +/* 0571D0 800565D0 A2190189 */ sb $t9, 0x189($s0) +/* 0571D4 800565D4 A60B018E */ sh $t3, 0x18e($s0) +/* 0571D8 800565D8 100000D1 */ b .L80056920 +/* 0571DC 800565DC A20E0173 */ sb $t6, 0x173($s0) +/* 0571E0 800565E0 82180173 */ lb $t8, 0x173($s0) +/* 0571E4 800565E4 240F0002 */ li $t7, 2 +/* 0571E8 800565E8 24190258 */ li $t9, 600 +/* 0571EC 800565EC 270CFFFF */ addiu $t4, $t8, -1 +/* 0571F0 800565F0 A20F0189 */ sb $t7, 0x189($s0) +/* 0571F4 800565F4 A20C0173 */ sb $t4, 0x173($s0) +/* 0571F8 800565F8 100000C9 */ b .L80056920 +/* 0571FC 800565FC A619018E */ sh $t9, 0x18e($s0) +/* 057200 80056600 820E0173 */ lb $t6, 0x173($s0) +/* 057204 80056604 240B0003 */ li $t3, 3 +/* 057208 80056608 240D0384 */ li $t5, 900 +/* 05720C 8005660C 25CFFFFF */ addiu $t7, $t6, -1 +/* 057210 80056610 A20B0189 */ sb $t3, 0x189($s0) +/* 057214 80056614 A60D018E */ sh $t5, 0x18e($s0) +/* 057218 80056618 100000C1 */ b .L80056920 +/* 05721C 8005661C A20F0173 */ sb $t7, 0x173($s0) +.L80056620: +/* 057220 80056620 44803000 */ mtc1 $zero, $f6 +/* 057224 80056624 00000000 */ nop +/* 057228 80056628 E7A60064 */ swc1 $f6, 0x64($sp) +.L8005662C: +/* 05722C 8005662C 8FA40088 */ lw $a0, 0x88($sp) +/* 057230 80056630 24050162 */ li $a1, 354 +/* 057234 80056634 24060008 */ li $a2, 8 +/* 057238 80056638 24070081 */ li $a3, 129 +/* 05723C 8005663C AFA20074 */ sw $v0, 0x74($sp) +/* 057240 80056640 AFA8007C */ sw $t0, 0x7c($sp) +/* 057244 80056644 AFAA006C */ sw $t2, 0x6c($sp) +/* 057248 80056648 0C015C2E */ jal func_800570B8 +/* 05724C 8005664C E7A00058 */ swc1 $f0, 0x58($sp) +/* 057250 80056650 C60A0038 */ lwc1 $f10, 0x38($s0) +/* 057254 80056654 C7B20064 */ lwc1 $f18, 0x64($sp) +/* 057258 80056658 8FA30088 */ lw $v1, 0x88($sp) +/* 05725C 8005665C 46125402 */ mul.s $f16, $f10, $f18 +/* 057260 80056660 C464000C */ lwc1 $f4, 0xc($v1) +/* 057264 80056664 8FA20074 */ lw $v0, 0x74($sp) +/* 057268 80056668 240F0008 */ li $t7, 8 +/* 05726C 8005666C 46102200 */ add.s $f8, $f4, $f16 +/* 057270 80056670 27A40080 */ addiu $a0, $sp, 0x80 +/* 057274 80056674 4458F800 */ cfc1 $t8, $31 +/* 057278 80056678 24050001 */ li $a1, 1 +/* 05727C 8005667C 37010003 */ ori $at, $t8, 3 +/* 057280 80056680 38210002 */ xori $at, $at, 2 +/* 057284 80056684 44C1F800 */ ctc1 $at, $31 +/* 057288 80056688 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 05728C 8005668C 460041A4 */ cvt.w.s $f6, $f8 +/* 057290 80056690 440C3000 */ mfc1 $t4, $f6 +/* 057294 80056694 44D8F800 */ ctc1 $t8, $31 +/* 057298 80056698 A7AC0082 */ sh $t4, 0x82($sp) +/* 05729C 8005669C C60A003C */ lwc1 $f10, 0x3c($s0) +/* 0572A0 800566A0 C4700010 */ lwc1 $f16, 0x10($v1) +/* 0572A4 800566A4 46125102 */ mul.s $f4, $f10, $f18 +/* 0572A8 800566A8 C60A0048 */ lwc1 $f10, 0x48($s0) +/* 0572AC 800566AC 44813000 */ mtc1 $at, $f6 +/* 0572B0 800566B0 46048200 */ add.s $f8, $f16, $f4 +/* 0572B4 800566B4 460A3402 */ mul.s $f16, $f6, $f10 +/* 0572B8 800566B8 46104100 */ add.s $f4, $f8, $f16 +/* 0572BC 800566BC 4459F800 */ cfc1 $t9, $31 +/* 0572C0 800566C0 00000000 */ nop +/* 0572C4 800566C4 37210003 */ ori $at, $t9, 3 +/* 0572C8 800566C8 38210002 */ xori $at, $at, 2 +/* 0572CC 800566CC 44C1F800 */ ctc1 $at, $31 +/* 0572D0 800566D0 00000000 */ nop +/* 0572D4 800566D4 460021A4 */ cvt.w.s $f6, $f4 +/* 0572D8 800566D8 440B3000 */ mfc1 $t3, $f6 +/* 0572DC 800566DC 44D9F800 */ ctc1 $t9, $31 +/* 0572E0 800566E0 A7AB0084 */ sh $t3, 0x84($sp) +/* 0572E4 800566E4 C60A0040 */ lwc1 $f10, 0x40($s0) +/* 0572E8 800566E8 C4700014 */ lwc1 $f16, 0x14($v1) +/* 0572EC 800566EC 46125202 */ mul.s $f8, $f10, $f18 +/* 0572F0 800566F0 A3AF0081 */ sb $t7, 0x81($sp) +/* 0572F4 800566F4 A3A20080 */ sb $v0, 0x80($sp) +/* 0572F8 800566F8 46088100 */ add.s $f4, $f16, $f8 +/* 0572FC 800566FC 444DF800 */ cfc1 $t5, $31 +/* 057300 80056700 00000000 */ nop +/* 057304 80056704 35A10003 */ ori $at, $t5, 3 +/* 057308 80056708 38210002 */ xori $at, $at, 2 +/* 05730C 8005670C 44C1F800 */ ctc1 $at, $31 +/* 057310 80056710 00000000 */ nop +/* 057314 80056714 460021A4 */ cvt.w.s $f6, $f4 +/* 057318 80056718 440E3000 */ mfc1 $t6, $f6 +/* 05731C 8005671C 44CDF800 */ ctc1 $t5, $31 +/* 057320 80056720 0C003A95 */ jal func_8000EA54 +/* 057324 80056724 A7AE0086 */ sh $t6, 0x86($sp) +/* 057328 80056728 8FA8007C */ lw $t0, 0x7c($sp) +/* 05732C 8005672C 8FAA006C */ lw $t2, 0x6c($sp) +/* 057330 80056730 C7A00058 */ lwc1 $f0, 0x58($sp) +/* 057334 80056734 10400073 */ beqz $v0, .L80056904 +/* 057338 80056738 00000000 */ nop +/* 05733C 8005673C 8FA90088 */ lw $t1, 0x88($sp) +/* 057340 80056740 AC40003C */ sw $zero, 0x3c($v0) +/* 057344 80056744 C6120038 */ lwc1 $f18, 0x38($s0) +/* 057348 80056748 C52A001C */ lwc1 $f10, 0x1c($t1) +/* 05734C 8005674C 46009402 */ mul.s $f16, $f18, $f0 +/* 057350 80056750 24010001 */ li $at, 1 +/* 057354 80056754 46105201 */ sub.s $f8, $f10, $f16 +/* 057358 80056758 E448001C */ swc1 $f8, 0x1c($v0) +/* 05735C 8005675C C606003C */ lwc1 $f6, 0x3c($s0) +/* 057360 80056760 C5240020 */ lwc1 $f4, 0x20($t1) +/* 057364 80056764 46003482 */ mul.s $f18, $f6, $f0 +/* 057368 80056768 46122281 */ sub.s $f10, $f4, $f18 +/* 05736C 8005676C E44A0020 */ swc1 $f10, 0x20($v0) +/* 057370 80056770 C6080040 */ lwc1 $f8, 0x40($s0) +/* 057374 80056774 C5300024 */ lwc1 $f16, 0x24($t1) +/* 057378 80056778 46004182 */ mul.s $f6, $f8, $f0 +/* 05737C 8005677C 46068101 */ sub.s $f4, $f16, $f6 +/* 057380 80056780 E4440024 */ swc1 $f4, 0x24($v0) +/* 057384 80056784 85380000 */ lh $t8, ($t1) +/* 057388 80056788 00000000 */ nop +/* 05738C 8005678C A4580000 */ sh $t8, ($v0) +/* 057390 80056790 852C0002 */ lh $t4, 2($t1) +/* 057394 80056794 00000000 */ nop +/* 057398 80056798 A44C0002 */ sh $t4, 2($v0) +/* 05739C 8005679C 821901D6 */ lb $t9, 0x1d6($s0) +/* 0573A0 800567A0 00000000 */ nop +/* 0573A4 800567A4 1721000D */ bne $t9, $at, .L800567DC +/* 0573A8 800567A8 00000000 */ nop +/* 0573AC 800567AC 820B01E5 */ lb $t3, 0x1e5($s0) +/* 0573B0 800567B0 00000000 */ nop +/* 0573B4 800567B4 11600009 */ beqz $t3, .L800567DC +/* 0573B8 800567B8 00000000 */ nop +/* 0573BC 800567BC 84430002 */ lh $v1, 2($v0) +/* 0573C0 800567C0 00000000 */ nop +/* 0573C4 800567C4 2861FC01 */ slti $at, $v1, -0x3ff +/* 0573C8 800567C8 14200004 */ bnez $at, .L800567DC +/* 0573CC 800567CC 28610400 */ slti $at, $v1, 0x400 +/* 0573D0 800567D0 10200002 */ beqz $at, .L800567DC +/* 0573D4 800567D4 00000000 */ nop +/* 0573D8 800567D8 A4400002 */ sh $zero, 2($v0) +.L800567DC: +/* 0573DC 800567DC 8C430064 */ lw $v1, 0x64($v0) +/* 0573E0 800567E0 310E00FF */ andi $t6, $t0, 0xff +/* 0573E4 800567E4 AC690004 */ sw $t1, 4($v1) +/* 0573E8 800567E8 AC6A0000 */ sw $t2, ($v1) +/* 0573EC 800567EC 820D0192 */ lb $t5, 0x192($s0) +/* 0573F0 800567F0 2DC1000C */ sltiu $at, $t6, 0xc +/* 0573F4 800567F4 A06D0019 */ sb $t5, 0x19($v1) +/* 0573F8 800567F8 C612002C */ lwc1 $f18, 0x2c($s0) +/* 0573FC 800567FC A0680018 */ sb $t0, 0x18($v1) +/* 057400 80056800 46009281 */ sub.s $f10, $f18, $f0 +/* 057404 80056804 1020001F */ beqz $at, .L80056884 +/* 057408 80056808 E46A0010 */ swc1 $f10, 0x10($v1) +/* 05740C 8005680C 000E7080 */ sll $t6, $t6, 2 +/* 057410 80056810 3C01800E */ lui $at, 0x800e +/* 057414 80056814 002E0821 */ addu $at, $at, $t6 +/* 057418 80056818 8C2E6894 */ lw $t6, 0x6894($at) +/* 05741C 8005681C 00000000 */ nop +/* 057420 80056820 01C00008 */ jr $t6 +/* 057424 80056824 00000000 */ nop +/* 057428 80056828 240F0134 */ li $t7, 308 +/* 05742C 8005682C 10000015 */ b .L80056884 +/* 057430 80056830 A7AF003A */ sh $t7, 0x3a($sp) +/* 057434 80056834 24180135 */ li $t8, 309 +/* 057438 80056838 10000012 */ b .L80056884 +/* 05743C 8005683C A7B8003A */ sh $t8, 0x3a($sp) +/* 057440 80056840 240C000F */ li $t4, 15 +/* 057444 80056844 1000000F */ b .L80056884 +/* 057448 80056848 A7AC003A */ sh $t4, 0x3a($sp) +/* 05744C 8005684C 821901D6 */ lb $t9, 0x1d6($s0) +/* 057450 80056850 24010002 */ li $at, 2 +/* 057454 80056854 13210005 */ beq $t9, $at, .L8005686C +/* 057458 80056858 240D0151 */ li $t5, 337 +/* 05745C 8005685C 44804000 */ mtc1 $zero, $f8 +/* 057460 80056860 8C4B0050 */ lw $t3, 0x50($v0) +/* 057464 80056864 00000000 */ nop +/* 057468 80056868 E5680000 */ swc1 $f8, ($t3) +.L8005686C: +/* 05746C 8005686C 10000005 */ b .L80056884 +/* 057470 80056870 A7AD003A */ sh $t5, 0x3a($sp) +/* 057474 80056874 240E000F */ li $t6, 15 +/* 057478 80056878 10000002 */ b .L80056884 +/* 05747C 8005687C A7AE003A */ sh $t6, 0x3a($sp) +/* 057480 80056880 A4400018 */ sh $zero, 0x18($v0) +.L80056884: +/* 057484 80056884 97AF003A */ lhu $t7, 0x3a($sp) +/* 057488 80056888 00000000 */ nop +/* 05748C 8005688C 11E0001D */ beqz $t7, .L80056904 +/* 057490 80056890 00000000 */ nop +/* 057494 80056894 86180000 */ lh $t8, ($s0) +/* 057498 80056898 2401FFFF */ li $at, -1 +/* 05749C 8005689C 1701000A */ bne $t8, $at, .L800568C8 +/* 0574A0 800568A0 01E02025 */ move $a0, $t7 +/* 0574A4 800568A4 8D25000C */ lw $a1, 0xc($t1) +/* 0574A8 800568A8 8D260010 */ lw $a2, 0x10($t1) +/* 0574AC 800568AC 8D270014 */ lw $a3, 0x14($t1) +/* 0574B0 800568B0 240C0004 */ li $t4, 4 +/* 0574B4 800568B4 AFAC0010 */ sw $t4, 0x10($sp) +/* 0574B8 800568B8 0C002556 */ jal func_80009558 +/* 0574BC 800568BC AFA00014 */ sw $zero, 0x14($sp) +/* 0574C0 800568C0 10000011 */ b .L80056908 +/* 0574C4 800568C4 82020173 */ lb $v0, 0x173($s0) +.L800568C8: +/* 0574C8 800568C8 8E040218 */ lw $a0, 0x218($s0) +/* 0574CC 800568CC 00000000 */ nop +/* 0574D0 800568D0 10800005 */ beqz $a0, .L800568E8 +/* 0574D4 800568D4 00000000 */ nop +/* 0574D8 800568D8 0C001223 */ jal func_8000488C +/* 0574DC 800568DC 00000000 */ nop +/* 0574E0 800568E0 8FA90088 */ lw $t1, 0x88($sp) +/* 0574E4 800568E4 00000000 */ nop +.L800568E8: +/* 0574E8 800568E8 97A4003A */ lhu $a0, 0x3a($sp) +/* 0574EC 800568EC 8D25000C */ lw $a1, 0xc($t1) +/* 0574F0 800568F0 8D260010 */ lw $a2, 0x10($t1) +/* 0574F4 800568F4 8D270014 */ lw $a3, 0x14($t1) +/* 0574F8 800568F8 26190218 */ addiu $t9, $s0, 0x218 +/* 0574FC 800568FC 0C0007AA */ jal func_80001EA8 +/* 057500 80056900 AFB90010 */ sw $t9, 0x10($sp) +.L80056904: +/* 057504 80056904 82020173 */ lb $v0, 0x173($s0) +.L80056908: +/* 057508 80056908 00000000 */ nop +/* 05750C 8005690C 18400003 */ blez $v0, .L8005691C +/* 057510 80056910 244BFFFF */ addiu $t3, $v0, -1 +/* 057514 80056914 10000002 */ b .L80056920 +/* 057518 80056918 A20B0173 */ sb $t3, 0x173($s0) +.L8005691C: +/* 05751C 8005691C A2000173 */ sb $zero, 0x173($s0) +.L80056920: +/* 057520 80056920 8FBF0024 */ lw $ra, 0x24($sp) +.L80056924: +/* 057524 80056924 8FB00020 */ lw $s0, 0x20($sp) +/* 057528 80056928 03E00008 */ jr $ra +/* 05752C 8005692C 27BD0088 */ addiu $sp, $sp, 0x88 + diff --git a/asm/non_matchings/unknown_043920/func_80056930.s b/asm/non_matchings/unknown_043920/func_80056930.s new file mode 100644 index 00000000..8d6e1775 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80056930.s @@ -0,0 +1,27 @@ +glabel func_80056930 +/* 057530 80056930 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 057534 80056934 AFBF0014 */ sw $ra, 0x14($sp) +/* 057538 80056938 AFA40018 */ sw $a0, 0x18($sp) +/* 05753C 8005693C 0C0270C3 */ jal func_8009C30C +/* 057540 80056940 AFA5001C */ sw $a1, 0x1c($sp) +/* 057544 80056944 8FA40018 */ lw $a0, 0x18($sp) +/* 057548 80056948 304E0100 */ andi $t6, $v0, 0x100 +/* 05754C 8005694C 11C00006 */ beqz $t6, .L80056968 +/* 057550 80056950 24050162 */ li $a1, 354 +/* 057554 80056954 24060008 */ li $a2, 8 +/* 057558 80056958 0C015C2E */ jal func_800570B8 +/* 05755C 8005695C 24070082 */ li $a3, 130 +/* 057560 80056960 10000007 */ b .L80056980 +/* 057564 80056964 8FBF0014 */ lw $ra, 0x14($sp) +.L80056968: +/* 057568 80056968 8FAF001C */ lw $t7, 0x1c($sp) +/* 05756C 8005696C 00000000 */ nop +/* 057570 80056970 81E50003 */ lb $a1, 3($t7) +/* 057574 80056974 0C015C12 */ jal func_80057048 +/* 057578 80056978 24A50156 */ addiu $a1, $a1, 0x156 +/* 05757C 8005697C 8FBF0014 */ lw $ra, 0x14($sp) +.L80056980: +/* 057580 80056980 27BD0018 */ addiu $sp, $sp, 0x18 +/* 057584 80056984 03E00008 */ jr $ra +/* 057588 80056988 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_8005698C.s b/asm/non_matchings/unknown_043920/func_8005698C.s new file mode 100644 index 00000000..4b5ed100 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8005698C.s @@ -0,0 +1,316 @@ +glabel func_8005698C +/* 05758C 8005698C 27BDFF48 */ addiu $sp, $sp, -0xb8 +/* 057590 80056990 AFBF004C */ sw $ra, 0x4c($sp) +/* 057594 80056994 AFB10048 */ sw $s1, 0x48($sp) +/* 057598 80056998 AFB00044 */ sw $s0, 0x44($sp) +/* 05759C 8005699C 00A08025 */ move $s0, $a1 +/* 0575A0 800569A0 00808825 */ move $s1, $a0 +/* 0575A4 800569A4 E7BF0038 */ swc1 $f31, 0x38($sp) +/* 0575A8 800569A8 E7BE003C */ swc1 $f30, 0x3c($sp) +/* 0575AC 800569AC E7BD0030 */ swc1 $f29, 0x30($sp) +/* 0575B0 800569B0 E7BC0034 */ swc1 $f28, 0x34($sp) +/* 0575B4 800569B4 E7BB0028 */ swc1 $f27, 0x28($sp) +/* 0575B8 800569B8 E7BA002C */ swc1 $f26, 0x2c($sp) +/* 0575BC 800569BC E7B90020 */ swc1 $f25, 0x20($sp) +/* 0575C0 800569C0 E7B80024 */ swc1 $f24, 0x24($sp) +/* 0575C4 800569C4 E7B70018 */ swc1 $f23, 0x18($sp) +/* 0575C8 800569C8 E7B6001C */ swc1 $f22, 0x1c($sp) +/* 0575CC 800569CC E7B50010 */ swc1 $f21, 0x10($sp) +/* 0575D0 800569D0 E7B40014 */ swc1 $f20, 0x14($sp) +/* 0575D4 800569D4 0C01AF66 */ jal func_8006BD98 +/* 0575D8 800569D8 AFA600C0 */ sw $a2, 0xc0($sp) +/* 0575DC 800569DC 860E0000 */ lh $t6, ($s0) +/* 0575E0 800569E0 30440040 */ andi $a0, $v0, 0x40 +/* 0575E4 800569E4 2401FFFF */ li $at, -1 +/* 0575E8 800569E8 00404825 */ move $t1, $v0 +/* 0575EC 800569EC 15C1000C */ bne $t6, $at, .L80056A20 +/* 0575F0 800569F0 00805025 */ move $t2, $a0 +/* 0575F4 800569F4 1480000A */ bnez $a0, .L80056A20 +/* 0575F8 800569F8 24050001 */ li $a1, 1 +/* 0575FC 800569FC 44807000 */ mtc1 $zero, $f14 +/* 057600 80056A00 02002025 */ move $a0, $s0 +/* 057604 80056A04 27A600AC */ addiu $a2, $sp, 0xac +/* 057608 80056A08 0C006DEA */ jal func_8001B7A8 +/* 05760C 80056A0C E7AE00AC */ swc1 $f14, 0xac($sp) +/* 057610 80056A10 C7A400AC */ lwc1 $f4, 0xac($sp) +/* 057614 80056A14 8FAF00C0 */ lw $t7, 0xc0($sp) +/* 057618 80056A18 100000F3 */ b .L80056DE8 +/* 05761C 80056A1C E5E40000 */ swc1 $f4, ($t7) +.L80056A20: +/* 057620 80056A20 C612003C */ lwc1 $f18, 0x3c($s0) +/* 057624 80056A24 C6260010 */ lwc1 $f6, 0x10($s1) +/* 057628 80056A28 C6100038 */ lwc1 $f16, 0x38($s0) +/* 05762C 80056A2C 46123082 */ mul.s $f2, $f6, $f18 +/* 057630 80056A30 C620000C */ lwc1 $f0, 0xc($s1) +/* 057634 80056A34 C6140040 */ lwc1 $f20, 0x40($s0) +/* 057638 80056A38 C62C0014 */ lwc1 $f12, 0x14($s1) +/* 05763C 80056A3C 46100202 */ mul.s $f8, $f0, $f16 +/* 057640 80056A40 C6160050 */ lwc1 $f22, 0x50($s0) +/* 057644 80056A44 C6180058 */ lwc1 $f24, 0x58($s0) +/* 057648 80056A48 C61C0054 */ lwc1 $f28, 0x54($s0) +/* 05764C 80056A4C 46146102 */ mul.s $f4, $f12, $f20 +/* 057650 80056A50 46024280 */ add.s $f10, $f8, $f2 +/* 057654 80056A54 AFAA0068 */ sw $t2, 0x68($sp) +/* 057658 80056A58 AFA90064 */ sw $t1, 0x64($sp) +/* 05765C 80056A5C 46160182 */ mul.s $f6, $f0, $f22 +/* 057660 80056A60 46045680 */ add.s $f26, $f10, $f4 +/* 057664 80056A64 27A40070 */ addiu $a0, $sp, 0x70 +/* 057668 80056A68 E7B200A0 */ swc1 $f18, 0xa0($sp) +/* 05766C 80056A6C 46186282 */ mul.s $f10, $f12, $f24 +/* 057670 80056A70 46023200 */ add.s $f8, $f6, $f2 +/* 057674 80056A74 E7B000A8 */ swc1 $f16, 0xa8($sp) +/* 057678 80056A78 460A4780 */ add.s $f30, $f8, $f10 +/* 05767C 80056A7C 4600D687 */ neg.s $f26, $f26 +/* 057680 80056A80 0C006E9D */ jal func_8001BA74 +/* 057684 80056A84 4600F787 */ neg.s $f30, $f30 +/* 057688 80056A88 3C01800E */ lui $at, %hi(D_800E68C4) # $at, 0x800e +/* 05768C 80056A8C C42C68C4 */ lwc1 $f12, %lo(D_800E68C4)($at) +/* 057690 80056A90 8FB80070 */ lw $t8, 0x70($sp) +/* 057694 80056A94 8FA90064 */ lw $t1, 0x64($sp) +/* 057698 80056A98 8FAA0068 */ lw $t2, 0x68($sp) +/* 05769C 80056A9C C7B000A8 */ lwc1 $f16, 0xa8($sp) +/* 0576A0 80056AA0 C7B200A0 */ lwc1 $f18, 0xa0($sp) +/* 0576A4 80056AA4 00004025 */ move $t0, $zero +/* 0576A8 80056AA8 00001825 */ move $v1, $zero +/* 0576AC 80056AAC 1B0000CA */ blez $t8, .L80056DD8 +/* 0576B0 80056AB0 E7AC0084 */ swc1 $f12, 0x84($sp) +/* 0576B4 80056AB4 33040001 */ andi $a0, $t8, 1 +/* 0576B8 80056AB8 10800046 */ beqz $a0, .L80056BD4 +/* 0576BC 80056ABC 8FAB0070 */ lw $t3, 0x70($sp) +/* 0576C0 80056AC0 8C440000 */ lw $a0, ($v0) +/* 0576C4 80056AC4 00000000 */ nop +/* 0576C8 80056AC8 1224003E */ beq $s1, $a0, .L80056BC4 +/* 0576CC 80056ACC 8FB80070 */ lw $t8, 0x70($sp) +/* 0576D0 80056AD0 11400007 */ beqz $t2, .L80056AF0 +/* 0576D4 80056AD4 00801825 */ move $v1, $a0 +/* 0576D8 80056AD8 8C990064 */ lw $t9, 0x64($a0) +/* 0576DC 80056ADC 00000000 */ nop +/* 0576E0 80056AE0 832C01D8 */ lb $t4, 0x1d8($t9) +/* 0576E4 80056AE4 00000000 */ nop +/* 0576E8 80056AE8 15800036 */ bnez $t4, .L80056BC4 +/* 0576EC 80056AEC 8FB80070 */ lw $t8, 0x70($sp) +.L80056AF0: +/* 0576F0 80056AF0 8C8E0064 */ lw $t6, 0x64($a0) +/* 0576F4 80056AF4 820D0212 */ lb $t5, 0x212($s0) +/* 0576F8 80056AF8 81CF0212 */ lb $t7, 0x212($t6) +/* 0576FC 80056AFC 00000000 */ nop +/* 057700 80056B00 15AF0030 */ bne $t5, $t7, .L80056BC4 +/* 057704 80056B04 8FB80070 */ lw $t8, 0x70($sp) +/* 057708 80056B08 C464000C */ lwc1 $f4, 0xc($v1) +/* 05770C 80056B0C C4680010 */ lwc1 $f8, 0x10($v1) +/* 057710 80056B10 46102182 */ mul.s $f6, $f4, $f16 +/* 057714 80056B14 44807000 */ mtc1 $zero, $f14 +/* 057718 80056B18 46089282 */ mul.s $f10, $f18, $f8 +/* 05771C 80056B1C C4680014 */ lwc1 $f8, 0x14($v1) +/* 057720 80056B20 460A3100 */ add.s $f4, $f6, $f10 +/* 057724 80056B24 4608A182 */ mul.s $f6, $f20, $f8 +/* 057728 80056B28 46062280 */ add.s $f10, $f4, $f6 +/* 05772C 80056B2C 461A5200 */ add.s $f8, $f10, $f26 +/* 057730 80056B30 46004107 */ neg.s $f4, $f8 +/* 057734 80056B34 4604703C */ c.lt.s $f14, $f4 +/* 057738 80056B38 E7A400AC */ swc1 $f4, 0xac($sp) +/* 05773C 80056B3C 45000021 */ bc1f .L80056BC4 +/* 057740 80056B40 8FB80070 */ lw $t8, 0x70($sp) +/* 057744 80056B44 C466000C */ lwc1 $f6, 0xc($v1) +/* 057748 80056B48 C4680010 */ lwc1 $f8, 0x10($v1) +/* 05774C 80056B4C 46163282 */ mul.s $f10, $f6, $f22 +/* 057750 80056B50 24010008 */ li $at, 8 +/* 057754 80056B54 4608E102 */ mul.s $f4, $f28, $f8 +/* 057758 80056B58 C4680014 */ lwc1 $f8, 0x14($v1) +/* 05775C 80056B5C 46045180 */ add.s $f6, $f10, $f4 +/* 057760 80056B60 4608C282 */ mul.s $f10, $f24, $f8 +/* 057764 80056B64 C7A800AC */ lwc1 $f8, 0xac($sp) +/* 057768 80056B68 460A3100 */ add.s $f4, $f6, $f10 +/* 05776C 80056B6C 461E2080 */ add.s $f2, $f4, $f30 +/* 057770 80056B70 460E103C */ c.lt.s $f2, $f14 +/* 057774 80056B74 46001006 */ mov.s $f0, $f2 +/* 057778 80056B78 45000002 */ bc1f .L80056B84 +/* 05777C 80056B7C 00000000 */ nop +/* 057780 80056B80 46001007 */ neg.s $f0, $f2 +.L80056B84: +/* 057784 80056B84 4608003C */ c.lt.s $f0, $f8 +/* 057788 80056B88 00000000 */ nop +/* 05778C 80056B8C 45010002 */ bc1t .L80056B98 +/* 057790 80056B90 00000000 */ nop +/* 057794 80056B94 1521000A */ bne $t1, $at, .L80056BC0 +.L80056B98: +/* 057798 80056B98 3C01800E */ lui $at, %hi(D_800E68C8) # $at, 0x800e +/* 05779C 80056B9C C42668C8 */ lwc1 $f6, %lo(D_800E68C8)($at) +/* 0577A0 80056BA0 C7AA00AC */ lwc1 $f10, 0xac($sp) +/* 0577A4 80056BA4 4606003C */ c.lt.s $f0, $f6 +/* 0577A8 80056BA8 00000000 */ nop +/* 0577AC 80056BAC 45000005 */ bc1f .L80056BC4 +/* 0577B0 80056BB0 8FB80070 */ lw $t8, 0x70($sp) +/* 0577B4 80056BB4 E7AA0084 */ swc1 $f10, 0x84($sp) +/* 0577B8 80056BB8 46000306 */ mov.s $f12, $f0 +/* 0577BC 80056BBC 00604025 */ move $t0, $v1 +.L80056BC0: +/* 0577C0 80056BC0 8FB80070 */ lw $t8, 0x70($sp) +.L80056BC4: +/* 0577C4 80056BC4 24030001 */ li $v1, 1 +/* 0577C8 80056BC8 10780083 */ beq $v1, $t8, .L80056DD8 +/* 0577CC 80056BCC 00000000 */ nop +/* 0577D0 80056BD0 8FAB0070 */ lw $t3, 0x70($sp) +.L80056BD4: +/* 0577D4 80056BD4 00033880 */ sll $a3, $v1, 2 +/* 0577D8 80056BD8 000BC880 */ sll $t9, $t3, 2 +/* 0577DC 80056BDC 44807000 */ mtc1 $zero, $f14 +/* 0577E0 80056BE0 03205825 */ move $t3, $t9 +/* 0577E4 80056BE4 00473021 */ addu $a2, $v0, $a3 +.L80056BE8: +/* 0577E8 80056BE8 8CC40000 */ lw $a0, ($a2) +/* 0577EC 80056BEC 24E70008 */ addiu $a3, $a3, 8 +/* 0577F0 80056BF0 1224003B */ beq $s1, $a0, .L80056CE0 +/* 0577F4 80056BF4 00000000 */ nop +/* 0577F8 80056BF8 11400007 */ beqz $t2, .L80056C18 +/* 0577FC 80056BFC 00801825 */ move $v1, $a0 +/* 057800 80056C00 8C8C0064 */ lw $t4, 0x64($a0) +/* 057804 80056C04 00000000 */ nop +/* 057808 80056C08 818E01D8 */ lb $t6, 0x1d8($t4) +/* 05780C 80056C0C 00000000 */ nop +/* 057810 80056C10 15C00033 */ bnez $t6, .L80056CE0 +/* 057814 80056C14 00000000 */ nop +.L80056C18: +/* 057818 80056C18 8C8F0064 */ lw $t7, 0x64($a0) +/* 05781C 80056C1C 820D0212 */ lb $t5, 0x212($s0) +/* 057820 80056C20 81F80212 */ lb $t8, 0x212($t7) +/* 057824 80056C24 00000000 */ nop +/* 057828 80056C28 15B8002D */ bne $t5, $t8, .L80056CE0 +/* 05782C 80056C2C 00000000 */ nop +/* 057830 80056C30 C464000C */ lwc1 $f4, 0xc($v1) +/* 057834 80056C34 C4660010 */ lwc1 $f6, 0x10($v1) +/* 057838 80056C38 46102202 */ mul.s $f8, $f4, $f16 +/* 05783C 80056C3C 00000000 */ nop +/* 057840 80056C40 46069282 */ mul.s $f10, $f18, $f6 +/* 057844 80056C44 C4660014 */ lwc1 $f6, 0x14($v1) +/* 057848 80056C48 460A4100 */ add.s $f4, $f8, $f10 +/* 05784C 80056C4C 4606A202 */ mul.s $f8, $f20, $f6 +/* 057850 80056C50 46082280 */ add.s $f10, $f4, $f8 +/* 057854 80056C54 461A5180 */ add.s $f6, $f10, $f26 +/* 057858 80056C58 46003107 */ neg.s $f4, $f6 +/* 05785C 80056C5C 4604703C */ c.lt.s $f14, $f4 +/* 057860 80056C60 E7A400AC */ swc1 $f4, 0xac($sp) +/* 057864 80056C64 4500001E */ bc1f .L80056CE0 +/* 057868 80056C68 00000000 */ nop +/* 05786C 80056C6C C468000C */ lwc1 $f8, 0xc($v1) +/* 057870 80056C70 C4660010 */ lwc1 $f6, 0x10($v1) +/* 057874 80056C74 46164282 */ mul.s $f10, $f8, $f22 +/* 057878 80056C78 24010008 */ li $at, 8 +/* 05787C 80056C7C 4606E102 */ mul.s $f4, $f28, $f6 +/* 057880 80056C80 C4660014 */ lwc1 $f6, 0x14($v1) +/* 057884 80056C84 46045200 */ add.s $f8, $f10, $f4 +/* 057888 80056C88 4606C282 */ mul.s $f10, $f24, $f6 +/* 05788C 80056C8C C7A600AC */ lwc1 $f6, 0xac($sp) +/* 057890 80056C90 460A4100 */ add.s $f4, $f8, $f10 +/* 057894 80056C94 461E2080 */ add.s $f2, $f4, $f30 +/* 057898 80056C98 460E103C */ c.lt.s $f2, $f14 +/* 05789C 80056C9C 46001006 */ mov.s $f0, $f2 +/* 0578A0 80056CA0 45000002 */ bc1f .L80056CAC +/* 0578A4 80056CA4 00000000 */ nop +/* 0578A8 80056CA8 46001007 */ neg.s $f0, $f2 +.L80056CAC: +/* 0578AC 80056CAC 4606003C */ c.lt.s $f0, $f6 +/* 0578B0 80056CB0 00000000 */ nop +/* 0578B4 80056CB4 45010003 */ bc1t .L80056CC4 +/* 0578B8 80056CB8 00000000 */ nop +/* 0578BC 80056CBC 15210008 */ bne $t1, $at, .L80056CE0 +/* 0578C0 80056CC0 00000000 */ nop +.L80056CC4: +/* 0578C4 80056CC4 460C003C */ c.lt.s $f0, $f12 +/* 0578C8 80056CC8 C7A800AC */ lwc1 $f8, 0xac($sp) +/* 0578CC 80056CCC 45000004 */ bc1f .L80056CE0 +/* 0578D0 80056CD0 00000000 */ nop +/* 0578D4 80056CD4 E7A80084 */ swc1 $f8, 0x84($sp) +/* 0578D8 80056CD8 46000306 */ mov.s $f12, $f0 +/* 0578DC 80056CDC 00604025 */ move $t0, $v1 +.L80056CE0: +/* 0578E0 80056CE0 8CC40004 */ lw $a0, 4($a2) +/* 0578E4 80056CE4 00000000 */ nop +/* 0578E8 80056CE8 12240039 */ beq $s1, $a0, .L80056DD0 +/* 0578EC 80056CEC 00000000 */ nop +/* 0578F0 80056CF0 8C850064 */ lw $a1, 0x64($a0) +/* 0578F4 80056CF4 11400005 */ beqz $t2, .L80056D0C +/* 0578F8 80056CF8 00801825 */ move $v1, $a0 +/* 0578FC 80056CFC 80B901D8 */ lb $t9, 0x1d8($a1) +/* 057900 80056D00 00000000 */ nop +/* 057904 80056D04 17200032 */ bnez $t9, .L80056DD0 +/* 057908 80056D08 00000000 */ nop +.L80056D0C: +/* 05790C 80056D0C 820C0212 */ lb $t4, 0x212($s0) +/* 057910 80056D10 80AE0212 */ lb $t6, 0x212($a1) +/* 057914 80056D14 00000000 */ nop +/* 057918 80056D18 158E002D */ bne $t4, $t6, .L80056DD0 +/* 05791C 80056D1C 00000000 */ nop +/* 057920 80056D20 C46A000C */ lwc1 $f10, 0xc($v1) +/* 057924 80056D24 C4660010 */ lwc1 $f6, 0x10($v1) +/* 057928 80056D28 46105102 */ mul.s $f4, $f10, $f16 +/* 05792C 80056D2C 00000000 */ nop +/* 057930 80056D30 46069202 */ mul.s $f8, $f18, $f6 +/* 057934 80056D34 C4660014 */ lwc1 $f6, 0x14($v1) +/* 057938 80056D38 46082280 */ add.s $f10, $f4, $f8 +/* 05793C 80056D3C 4606A102 */ mul.s $f4, $f20, $f6 +/* 057940 80056D40 46045200 */ add.s $f8, $f10, $f4 +/* 057944 80056D44 461A4180 */ add.s $f6, $f8, $f26 +/* 057948 80056D48 46003287 */ neg.s $f10, $f6 +/* 05794C 80056D4C 460A703C */ c.lt.s $f14, $f10 +/* 057950 80056D50 E7AA00AC */ swc1 $f10, 0xac($sp) +/* 057954 80056D54 4500001E */ bc1f .L80056DD0 +/* 057958 80056D58 00000000 */ nop +/* 05795C 80056D5C C464000C */ lwc1 $f4, 0xc($v1) +/* 057960 80056D60 C4660010 */ lwc1 $f6, 0x10($v1) +/* 057964 80056D64 46162202 */ mul.s $f8, $f4, $f22 +/* 057968 80056D68 24010008 */ li $at, 8 +/* 05796C 80056D6C 4606E282 */ mul.s $f10, $f28, $f6 +/* 057970 80056D70 C4660014 */ lwc1 $f6, 0x14($v1) +/* 057974 80056D74 460A4100 */ add.s $f4, $f8, $f10 +/* 057978 80056D78 4606C202 */ mul.s $f8, $f24, $f6 +/* 05797C 80056D7C C7A600AC */ lwc1 $f6, 0xac($sp) +/* 057980 80056D80 46082280 */ add.s $f10, $f4, $f8 +/* 057984 80056D84 461E5080 */ add.s $f2, $f10, $f30 +/* 057988 80056D88 460E103C */ c.lt.s $f2, $f14 +/* 05798C 80056D8C 46001006 */ mov.s $f0, $f2 +/* 057990 80056D90 45000002 */ bc1f .L80056D9C +/* 057994 80056D94 00000000 */ nop +/* 057998 80056D98 46001007 */ neg.s $f0, $f2 +.L80056D9C: +/* 05799C 80056D9C 4606003C */ c.lt.s $f0, $f6 +/* 0579A0 80056DA0 00000000 */ nop +/* 0579A4 80056DA4 45010003 */ bc1t .L80056DB4 +/* 0579A8 80056DA8 00000000 */ nop +/* 0579AC 80056DAC 15210008 */ bne $t1, $at, .L80056DD0 +/* 0579B0 80056DB0 00000000 */ nop +.L80056DB4: +/* 0579B4 80056DB4 460C003C */ c.lt.s $f0, $f12 +/* 0579B8 80056DB8 C7A400AC */ lwc1 $f4, 0xac($sp) +/* 0579BC 80056DBC 45000004 */ bc1f .L80056DD0 +/* 0579C0 80056DC0 00000000 */ nop +/* 0579C4 80056DC4 E7A40084 */ swc1 $f4, 0x84($sp) +/* 0579C8 80056DC8 46000306 */ mov.s $f12, $f0 +/* 0579CC 80056DCC 00604025 */ move $t0, $v1 +.L80056DD0: +/* 0579D0 80056DD0 14EBFF85 */ bne $a3, $t3, .L80056BE8 +/* 0579D4 80056DD4 24C60008 */ addiu $a2, $a2, 8 +.L80056DD8: +/* 0579D8 80056DD8 C7A80084 */ lwc1 $f8, 0x84($sp) +/* 0579DC 80056DDC 8FAF00C0 */ lw $t7, 0xc0($sp) +/* 0579E0 80056DE0 01001025 */ move $v0, $t0 +/* 0579E4 80056DE4 E5E80000 */ swc1 $f8, ($t7) +.L80056DE8: +/* 0579E8 80056DE8 8FBF004C */ lw $ra, 0x4c($sp) +/* 0579EC 80056DEC C7B50010 */ lwc1 $f21, 0x10($sp) +/* 0579F0 80056DF0 C7B40014 */ lwc1 $f20, 0x14($sp) +/* 0579F4 80056DF4 C7B70018 */ lwc1 $f23, 0x18($sp) +/* 0579F8 80056DF8 C7B6001C */ lwc1 $f22, 0x1c($sp) +/* 0579FC 80056DFC C7B90020 */ lwc1 $f25, 0x20($sp) +/* 057A00 80056E00 C7B80024 */ lwc1 $f24, 0x24($sp) +/* 057A04 80056E04 C7BB0028 */ lwc1 $f27, 0x28($sp) +/* 057A08 80056E08 C7BA002C */ lwc1 $f26, 0x2c($sp) +/* 057A0C 80056E0C C7BD0030 */ lwc1 $f29, 0x30($sp) +/* 057A10 80056E10 C7BC0034 */ lwc1 $f28, 0x34($sp) +/* 057A14 80056E14 C7BF0038 */ lwc1 $f31, 0x38($sp) +/* 057A18 80056E18 C7BE003C */ lwc1 $f30, 0x3c($sp) +/* 057A1C 80056E1C 8FB00044 */ lw $s0, 0x44($sp) +/* 057A20 80056E20 8FB10048 */ lw $s1, 0x48($sp) +/* 057A24 80056E24 03E00008 */ jr $ra +/* 057A28 80056E28 27BD00B8 */ addiu $sp, $sp, 0xb8 + diff --git a/asm/non_matchings/unknown_043920/func_80056E2C.s b/asm/non_matchings/unknown_043920/func_80056E2C.s new file mode 100644 index 00000000..d9b11f7b --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80056E2C.s @@ -0,0 +1,149 @@ +glabel func_80056E2C +/* 057A2C 80056E2C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 057A30 80056E30 AFBF0014 */ sw $ra, 0x14($sp) +/* 057A34 80056E34 80AE0175 */ lb $t6, 0x175($a1) +/* 057A38 80056E38 00A03825 */ move $a3, $a1 +/* 057A3C 80056E3C 01C67823 */ subu $t7, $t6, $a2 +/* 057A40 80056E40 A0AF0175 */ sb $t7, 0x175($a1) +/* 057A44 80056E44 80B80175 */ lb $t8, 0x175($a1) +/* 057A48 80056E48 00000000 */ nop +/* 057A4C 80056E4C 07010003 */ bgez $t8, .L80056E5C +/* 057A50 80056E50 00000000 */ nop +/* 057A54 80056E54 10000078 */ b .L80057038 +/* 057A58 80056E58 A0A00175 */ sb $zero, 0x175($a1) +.L80056E5C: +/* 057A5C 80056E5C 8CE20140 */ lw $v0, 0x140($a3) +/* 057A60 80056E60 00000000 */ nop +/* 057A64 80056E64 14400003 */ bnez $v0, .L80056E74 +/* 057A68 80056E68 00000000 */ nop +/* 057A6C 80056E6C 10000072 */ b .L80057038 +/* 057A70 80056E70 A0E00175 */ sb $zero, 0x175($a3) +.L80056E74: +/* 057A74 80056E74 C444000C */ lwc1 $f4, 0xc($v0) +/* 057A78 80056E78 C486000C */ lwc1 $f6, 0xc($a0) +/* 057A7C 80056E7C C4480014 */ lwc1 $f8, 0x14($v0) +/* 057A80 80056E80 46062381 */ sub.s $f14, $f4, $f6 +/* 057A84 80056E84 C48A0014 */ lwc1 $f10, 0x14($a0) +/* 057A88 80056E88 460E7482 */ mul.s $f18, $f14, $f14 +/* 057A8C 80056E8C 460A4401 */ sub.s $f16, $f8, $f10 +/* 057A90 80056E90 E7AE0024 */ swc1 $f14, 0x24($sp) +/* 057A94 80056E94 E7B00020 */ swc1 $f16, 0x20($sp) +/* 057A98 80056E98 46108102 */ mul.s $f4, $f16, $f16 +/* 057A9C 80056E9C AFA7002C */ sw $a3, 0x2c($sp) +/* 057AA0 80056EA0 0C0326B4 */ jal sqrtf +/* 057AA4 80056EA4 46049300 */ add.s $f12, $f18, $f4 +/* 057AA8 80056EA8 3C014316 */ li $at, 0x43160000 # 150.000000 +/* 057AAC 80056EAC 44813000 */ mtc1 $at, $f6 +/* 057AB0 80056EB0 8FA7002C */ lw $a3, 0x2c($sp) +/* 057AB4 80056EB4 4600303C */ c.lt.s $f6, $f0 +/* 057AB8 80056EB8 C7AE0024 */ lwc1 $f14, 0x24($sp) +/* 057ABC 80056EBC C7B00020 */ lwc1 $f16, 0x20($sp) +/* 057AC0 80056EC0 45000028 */ bc1f .L80056F64 +/* 057AC4 80056EC4 46000086 */ mov.s $f2, $f0 +/* 057AC8 80056EC8 3C0144FA */ li $at, 0x44FA0000 # 2000.000000 +/* 057ACC 80056ECC 44814000 */ mtc1 $at, $f8 +/* 057AD0 80056ED0 00000000 */ nop +/* 057AD4 80056ED4 4608003C */ c.lt.s $f0, $f8 +/* 057AD8 80056ED8 00000000 */ nop +/* 057ADC 80056EDC 45000021 */ bc1f .L80056F64 +/* 057AE0 80056EE0 00000000 */ nop +/* 057AE4 80056EE4 84F90000 */ lh $t9, ($a3) +/* 057AE8 80056EE8 2401FFFF */ li $at, -1 +/* 057AEC 80056EEC 13210002 */ beq $t9, $at, .L80056EF8 +/* 057AF0 80056EF0 24080003 */ li $t0, 3 +/* 057AF4 80056EF4 A0E801D3 */ sb $t0, 0x1d3($a3) +.L80056EF8: +/* 057AF8 80056EF8 90E9020C */ lbu $t1, 0x20c($a3) +/* 057AFC 80056EFC A0E00203 */ sb $zero, 0x203($a3) +/* 057B00 80056F00 11200005 */ beqz $t1, .L80056F18 +/* 057B04 80056F04 00000000 */ nop +/* 057B08 80056F08 80EA0203 */ lb $t2, 0x203($a3) +/* 057B0C 80056F0C 00000000 */ nop +/* 057B10 80056F10 354B0004 */ ori $t3, $t2, 4 +/* 057B14 80056F14 A0EB0203 */ sb $t3, 0x203($a3) +.L80056F18: +/* 057B18 80056F18 8CEC0178 */ lw $t4, 0x178($a3) +/* 057B1C 80056F1C 00000000 */ nop +/* 057B20 80056F20 15800012 */ bnez $t4, .L80056F6C +/* 057B24 80056F24 00000000 */ nop +/* 057B28 80056F28 80ED01D8 */ lb $t5, 0x1d8($a3) +/* 057B2C 80056F2C 2404013A */ li $a0, 314 +/* 057B30 80056F30 15A0000E */ bnez $t5, .L80056F6C +/* 057B34 80056F34 24E50178 */ addiu $a1, $a3, 0x178 +/* 057B38 80056F38 AFA7002C */ sw $a3, 0x2c($sp) +/* 057B3C 80056F3C E7A2001C */ swc1 $f2, 0x1c($sp) +/* 057B40 80056F40 E7AE0024 */ swc1 $f14, 0x24($sp) +/* 057B44 80056F44 0C000741 */ jal func_80001D04 +/* 057B48 80056F48 E7B00020 */ swc1 $f16, 0x20($sp) +/* 057B4C 80056F4C 8FA7002C */ lw $a3, 0x2c($sp) +/* 057B50 80056F50 C7A2001C */ lwc1 $f2, 0x1c($sp) +/* 057B54 80056F54 C7AE0024 */ lwc1 $f14, 0x24($sp) +/* 057B58 80056F58 C7B00020 */ lwc1 $f16, 0x20($sp) +/* 057B5C 80056F5C 10000004 */ b .L80056F70 +/* 057B60 80056F60 8CEE0140 */ lw $t6, 0x140($a3) +.L80056F64: +/* 057B64 80056F64 10000034 */ b .L80057038 +/* 057B68 80056F68 A0E00175 */ sb $zero, 0x175($a3) +.L80056F6C: +/* 057B6C 80056F6C 8CEE0140 */ lw $t6, 0x140($a3) +.L80056F70: +/* 057B70 80056F70 46027383 */ div.s $f14, $f14, $f2 +/* 057B74 80056F74 8DC20064 */ lw $v0, 0x64($t6) +/* 057B78 80056F78 3C014020 */ li $at, 0x40200000 # 2.500000 +/* 057B7C 80056F7C 44815800 */ mtc1 $at, $f11 +/* 057B80 80056F80 44805000 */ mtc1 $zero, $f10 +/* 057B84 80056F84 44809000 */ mtc1 $zero, $f18 +/* 057B88 80056F88 46028403 */ div.s $f16, $f16, $f2 +/* 057B8C 80056F8C C442002C */ lwc1 $f2, 0x2c($v0) +/* 057B90 80056F90 00000000 */ nop +/* 057B94 80056F94 46001087 */ neg.s $f2, $f2 +/* 057B98 80056F98 46001021 */ cvt.d.s $f0, $f2 +/* 057B9C 80056F9C 462A003C */ c.lt.d $f0, $f10 +/* 057BA0 80056FA0 00000000 */ nop +/* 057BA4 80056FA4 45000009 */ bc1f .L80056FCC +/* 057BA8 80056FA8 3C014034 */ lui $at, 0x4034 +/* 057BAC 80056FAC 80EF0195 */ lb $t7, 0x195($a3) +/* 057BB0 80056FB0 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 057BB4 80056FB4 15E00004 */ bnez $t7, .L80056FC8 +/* 057BB8 80056FB8 00000000 */ nop +/* 057BBC 80056FBC 44811000 */ mtc1 $at, $f2 +/* 057BC0 80056FC0 00000000 */ nop +/* 057BC4 80056FC4 46001021 */ cvt.d.s $f0, $f2 +.L80056FC8: +/* 057BC8 80056FC8 3C014034 */ li $at, 0x40340000 # 2.812500 +.L80056FCC: +/* 057BCC 80056FCC 44819800 */ mtc1 $at, $f19 +/* 057BD0 80056FD0 3C0141A0 */ li $at, 0x41A00000 # 20.000000 +/* 057BD4 80056FD4 4620903C */ c.lt.d $f18, $f0 +/* 057BD8 80056FD8 00000000 */ nop +/* 057BDC 80056FDC 45000003 */ bc1f .L80056FEC +/* 057BE0 80056FE0 00000000 */ nop +/* 057BE4 80056FE4 44811000 */ mtc1 $at, $f2 +/* 057BE8 80056FE8 00000000 */ nop +.L80056FEC: +/* 057BEC 80056FEC 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 057BF0 80056FF0 44812000 */ mtc1 $at, $f4 +/* 057BF4 80056FF4 3C018012 */ lui $at, %hi(D_8011D578) # $at, 0x8012 +/* 057BF8 80056FF8 46041000 */ add.s $f0, $f2, $f4 +/* 057BFC 80056FFC 460E0182 */ mul.s $f6, $f0, $f14 +/* 057C00 80057000 00000000 */ nop +/* 057C04 80057004 46100202 */ mul.s $f8, $f0, $f16 +/* 057C08 80057008 E426D578 */ swc1 $f6, %lo(D_8011D578)($at) +/* 057C0C 8005700C 3C018012 */ lui $at, %hi(D_8011D57C) # $at, 0x8012 +/* 057C10 80057010 E428D57C */ swc1 $f8, %lo(D_8011D57C)($at) +/* 057C14 80057014 8458018E */ lh $t8, 0x18e($v0) +/* 057C18 80057018 00000000 */ nop +/* 057C1C 8005701C 13000006 */ beqz $t8, .L80057038 +/* 057C20 80057020 00000000 */ nop +/* 057C24 80057024 80F90195 */ lb $t9, 0x195($a3) +/* 057C28 80057028 00000000 */ nop +/* 057C2C 8005702C 17200003 */ bnez $t9, .L8005703C +/* 057C30 80057030 8FBF0014 */ lw $ra, 0x14($sp) +/* 057C34 80057034 A0E00175 */ sb $zero, 0x175($a3) +.L80057038: +/* 057C38 80057038 8FBF0014 */ lw $ra, 0x14($sp) +.L8005703C: +/* 057C3C 8005703C 27BD0028 */ addiu $sp, $sp, 0x28 +/* 057C40 80057040 03E00008 */ jr $ra +/* 057C44 80057044 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_80057048.s b/asm/non_matchings/unknown_043920/func_80057048.s new file mode 100644 index 00000000..4881667e --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80057048.s @@ -0,0 +1,27 @@ +glabel func_80057048 +/* 057C48 80057048 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 057C4C 8005704C 3C0F8012 */ lui $t7, %hi(D_8011D55C) # $t7, 0x8012 +/* 057C50 80057050 8DEFD55C */ lw $t7, %lo(D_8011D55C)($t7) +/* 057C54 80057054 AFBF001C */ sw $ra, 0x1c($sp) +/* 057C58 80057058 AFA40020 */ sw $a0, 0x20($sp) +/* 057C5C 8005705C AFA50024 */ sw $a1, 0x24($sp) +/* 057C60 80057060 8C820064 */ lw $v0, 0x64($a0) +/* 057C64 80057064 2401FFFF */ li $at, -1 +/* 057C68 80057068 11E1000A */ beq $t7, $at, .L80057094 +/* 057C6C 8005706C 00807025 */ move $t6, $a0 +/* 057C70 80057070 8C580108 */ lw $t8, 0x108($v0) +/* 057C74 80057074 97A40026 */ lhu $a0, 0x26($sp) +/* 057C78 80057078 17000007 */ bnez $t8, .L80057098 +/* 057C7C 8005707C 8FBF001C */ lw $ra, 0x1c($sp) +/* 057C80 80057080 8DC5000C */ lw $a1, 0xc($t6) +/* 057C84 80057084 8DC60010 */ lw $a2, 0x10($t6) +/* 057C88 80057088 8DC70014 */ lw $a3, 0x14($t6) +/* 057C8C 8005708C 0C0007AA */ jal func_80001EA8 +/* 057C90 80057090 AFA00010 */ sw $zero, 0x10($sp) +.L80057094: +/* 057C94 80057094 8FBF001C */ lw $ra, 0x1c($sp) +.L80057098: +/* 057C98 80057098 27BD0020 */ addiu $sp, $sp, 0x20 +/* 057C9C 8005709C 03E00008 */ jr $ra +/* 057CA0 800570A0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_800570A4.s b/asm/non_matchings/unknown_043920/func_800570A4.s new file mode 100644 index 00000000..8d58a78b --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_800570A4.s @@ -0,0 +1,7 @@ +glabel func_800570A4 +/* 057CA4 800570A4 8C820064 */ lw $v0, 0x64($a0) +/* 057CA8 800570A8 00000000 */ nop +/* 057CAC 800570AC A445020E */ sh $a1, 0x20e($v0) +/* 057CB0 800570B0 03E00008 */ jr $ra +/* 057CB4 800570B4 A0460210 */ sb $a2, 0x210($v0) + diff --git a/asm/non_matchings/unknown_043920/func_800570B8.s b/asm/non_matchings/unknown_043920/func_800570B8.s new file mode 100644 index 00000000..b3055b5f --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_800570B8.s @@ -0,0 +1,99 @@ +glabel func_800570B8 +/* 057CB8 800570B8 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 057CBC 800570BC AFBF002C */ sw $ra, 0x2c($sp) +/* 057CC0 800570C0 AFB30028 */ sw $s3, 0x28($sp) +/* 057CC4 800570C4 AFB20024 */ sw $s2, 0x24($sp) +/* 057CC8 800570C8 AFB10020 */ sw $s1, 0x20($sp) +/* 057CCC 800570CC AFB0001C */ sw $s0, 0x1c($sp) +/* 057CD0 800570D0 AFA40038 */ sw $a0, 0x38($sp) +/* 057CD4 800570D4 AFA60040 */ sw $a2, 0x40($sp) +/* 057CD8 800570D8 8C920064 */ lw $s2, 0x64($a0) +/* 057CDC 800570DC 00E08025 */ move $s0, $a3 +/* 057CE0 800570E0 8E4F0108 */ lw $t7, 0x108($s2) +/* 057CE4 800570E4 00A09825 */ move $s3, $a1 +/* 057CE8 800570E8 15E00046 */ bnez $t7, .L80057204 +/* 057CEC 800570EC 30F80080 */ andi $t8, $a3, 0x80 +/* 057CF0 800570F0 13000004 */ beqz $t8, .L80057104 +/* 057CF4 800570F4 3C198012 */ lui $t9, %hi(D_8011D55C) # $t9, 0x8012 +/* 057CF8 800570F8 8F39D55C */ lw $t9, %lo(D_8011D55C)($t9) +/* 057CFC 800570FC 2401FFFF */ li $at, -1 +/* 057D00 80057100 13210040 */ beq $t9, $at, .L80057204 +.L80057104: +/* 057D04 80057104 24010002 */ li $at, 2 +/* 057D08 80057108 1601000C */ bne $s0, $at, .L8005713C +/* 057D0C 8005710C 00000000 */ nop +/* 057D10 80057110 8E440024 */ lw $a0, 0x24($s2) +/* 057D14 80057114 00000000 */ nop +/* 057D18 80057118 10800008 */ beqz $a0, .L8005713C +/* 057D1C 8005711C 00000000 */ nop +/* 057D20 80057120 9649002A */ lhu $t1, 0x2a($s2) +/* 057D24 80057124 00000000 */ nop +/* 057D28 80057128 12690004 */ beq $s3, $t1, .L8005713C +/* 057D2C 8005712C 00000000 */ nop +/* 057D30 80057130 0C0025BE */ jal func_800096F8 +/* 057D34 80057134 00000000 */ nop +/* 057D38 80057138 AE400024 */ sw $zero, 0x24($s2) +.L8005713C: +/* 057D3C 8005713C 8E4A0024 */ lw $t2, 0x24($s2) +/* 057D40 80057140 24010003 */ li $at, 3 +/* 057D44 80057144 15400030 */ bnez $t2, .L80057208 +/* 057D48 80057148 8FBF002C */ lw $ra, 0x2c($sp) +/* 057D4C 8005714C 16010005 */ bne $s0, $at, .L80057164 +/* 057D50 80057150 00002025 */ move $a0, $zero +/* 057D54 80057154 0C01BE53 */ jal func_8006F94C +/* 057D58 80057158 24050001 */ li $a1, 1 +/* 057D5C 8005715C 1040002A */ beqz $v0, .L80057208 +/* 057D60 80057160 8FBF002C */ lw $ra, 0x2c($sp) +.L80057164: +/* 057D64 80057164 A653002A */ sh $s3, 0x2a($s2) +/* 057D68 80057168 8FB10040 */ lw $s1, 0x40($sp) +/* 057D6C 8005716C 824B0003 */ lb $t3, 3($s2) +/* 057D70 80057170 2631FFFF */ addiu $s1, $s1, -1 +/* 057D74 80057174 02202825 */ move $a1, $s1 +/* 057D78 80057178 00002025 */ move $a0, $zero +/* 057D7C 8005717C 0C01BE53 */ jal func_8006F94C +/* 057D80 80057180 026B9821 */ addu $s3, $s3, $t3 +/* 057D84 80057184 2410000C */ li $s0, 12 +/* 057D88 80057188 00500019 */ multu $v0, $s0 +/* 057D8C 8005718C 00006012 */ mflo $t4 +/* 057D90 80057190 01931821 */ addu $v1, $t4, $s3 +/* 057D94 80057194 1A20000D */ blez $s1, .L800571CC +/* 057D98 80057198 00604025 */ move $t0, $v1 +/* 057D9C 8005719C 964D0028 */ lhu $t5, 0x28($s2) +/* 057DA0 800571A0 00000000 */ nop +/* 057DA4 800571A4 146D0009 */ bne $v1, $t5, .L800571CC +/* 057DA8 800571A8 00002025 */ move $a0, $zero +.L800571AC: +/* 057DAC 800571AC 0C01BE53 */ jal func_8006F94C +/* 057DB0 800571B0 02202825 */ move $a1, $s1 +/* 057DB4 800571B4 00500019 */ multu $v0, $s0 +/* 057DB8 800571B8 964F0028 */ lhu $t7, 0x28($s2) +/* 057DBC 800571BC 00007012 */ mflo $t6 +/* 057DC0 800571C0 01D34021 */ addu $t0, $t6, $s3 +/* 057DC4 800571C4 110FFFF9 */ beq $t0, $t7, .L800571AC +/* 057DC8 800571C8 00002025 */ move $a0, $zero +.L800571CC: +/* 057DCC 800571CC 8FB80038 */ lw $t8, 0x38($sp) +/* 057DD0 800571D0 24190004 */ li $t9, 4 +/* 057DD4 800571D4 8F05000C */ lw $a1, 0xc($t8) +/* 057DD8 800571D8 8F060010 */ lw $a2, 0x10($t8) +/* 057DDC 800571DC 8F070014 */ lw $a3, 0x14($t8) +/* 057DE0 800571E0 26490024 */ addiu $t1, $s2, 0x24 +/* 057DE4 800571E4 AFA90014 */ sw $t1, 0x14($sp) +/* 057DE8 800571E8 AFA80034 */ sw $t0, 0x34($sp) +/* 057DEC 800571EC AFB90010 */ sw $t9, 0x10($sp) +/* 057DF0 800571F0 0C002556 */ jal func_80009558 +/* 057DF4 800571F4 3104FFFF */ andi $a0, $t0, 0xffff +/* 057DF8 800571F8 8FA80034 */ lw $t0, 0x34($sp) +/* 057DFC 800571FC 00000000 */ nop +/* 057E00 80057200 A6480028 */ sh $t0, 0x28($s2) +.L80057204: +/* 057E04 80057204 8FBF002C */ lw $ra, 0x2c($sp) +.L80057208: +/* 057E08 80057208 8FB0001C */ lw $s0, 0x1c($sp) +/* 057E0C 8005720C 8FB10020 */ lw $s1, 0x20($sp) +/* 057E10 80057210 8FB20024 */ lw $s2, 0x24($sp) +/* 057E14 80057214 8FB30028 */ lw $s3, 0x28($sp) +/* 057E18 80057218 03E00008 */ jr $ra +/* 057E1C 8005721C 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_043920/func_80057220.s b/asm/non_matchings/unknown_043920/func_80057220.s new file mode 100644 index 00000000..0f6f8af6 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80057220.s @@ -0,0 +1,269 @@ +glabel func_80057220 +/* 057E20 80057220 3C0E8012 */ lui $t6, %hi(D_8011D540) # $t6, 0x8012 +/* 057E24 80057224 8DCED540 */ lw $t6, %lo(D_8011D540)($t6) +/* 057E28 80057228 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 057E2C 8005722C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 057E30 80057230 AFB00018 */ sw $s0, 0x18($sp) +/* 057E34 80057234 44810000 */ mtc1 $at, $f0 +/* 057E38 80057238 00A08025 */ move $s0, $a1 +/* 057E3C 8005723C AFBF001C */ sw $ra, 0x1c($sp) +/* 057E40 80057240 11C00003 */ beqz $t6, .L80057250 +/* 057E44 80057244 AFA40040 */ sw $a0, 0x40($sp) +/* 057E48 80057248 44800000 */ mtc1 $zero, $f0 +/* 057E4C 8005724C 00000000 */ nop +.L80057250: +/* 057E50 80057250 0C0044EB */ jal func_800113AC +/* 057E54 80057254 E7A0003C */ swc1 $f0, 0x3c($sp) +/* 057E58 80057258 3C048012 */ lui $a0, %hi(D_8011D540) # $a0, 0x8012 +/* 057E5C 8005725C 8C84D540 */ lw $a0, %lo(D_8011D540)($a0) +/* 057E60 80057260 AFA20028 */ sw $v0, 0x28($sp) +/* 057E64 80057264 18800072 */ blez $a0, .L80057430 +/* 057E68 80057268 2881001E */ slti $at, $a0, 0x1e +/* 057E6C 8005726C 10200070 */ beqz $at, .L80057430 +/* 057E70 80057270 00000000 */ nop +/* 057E74 80057274 920F01F4 */ lbu $t7, 0x1f4($s0) +/* 057E78 80057278 3C188012 */ lui $t8, %hi(D_8011D52C) # $t8, 0x8012 +/* 057E7C 8005727C 15E0006C */ bnez $t7, .L80057430 +/* 057E80 80057280 00000000 */ nop +/* 057E84 80057284 8F18D52C */ lw $t8, %lo(D_8011D52C)($t8) +/* 057E88 80057288 2483FFF2 */ addiu $v1, $a0, -0xe +/* 057E8C 8005728C 33198000 */ andi $t9, $t8, 0x8000 +/* 057E90 80057290 1320003C */ beqz $t9, .L80057384 +/* 057E94 80057294 3C088012 */ lui $t0, %hi(D_8011D528) # $t0, 0x8012 +/* 057E98 80057298 04610004 */ bgez $v1, .L800572AC +/* 057E9C 8005729C 240A0018 */ li $t2, 24 +/* 057EA0 800572A0 04400002 */ bltz $v0, .L800572AC +/* 057EA4 800572A4 00000000 */ nop +/* 057EA8 800572A8 00001825 */ move $v1, $zero +.L800572AC: +/* 057EAC 800572AC 04610002 */ bgez $v1, .L800572B8 +/* 057EB0 800572B0 00000000 */ nop +/* 057EB4 800572B4 00031823 */ negu $v1, $v1 +.L800572B8: +/* 057EB8 800572B8 8D08D528 */ lw $t0, %lo(D_8011D528)($t0) +/* 057EBC 800572BC 28610002 */ slti $at, $v1, 2 +/* 057EC0 800572C0 31092000 */ andi $t1, $t0, 0x2000 +/* 057EC4 800572C4 11200005 */ beqz $t1, .L800572DC +/* 057EC8 800572C8 01432823 */ subu $a1, $t2, $v1 +/* 057ECC 800572CC 10200003 */ beqz $at, .L800572DC +/* 057ED0 800572D0 01432823 */ subu $a1, $t2, $v1 +/* 057ED4 800572D4 00001825 */ move $v1, $zero +/* 057ED8 800572D8 01432823 */ subu $a1, $t2, $v1 +.L800572DC: +/* 057EDC 800572DC 00052043 */ sra $a0, $a1, 1 +/* 057EE0 800572E0 0C00322D */ jal func_8000C8B4 +/* 057EE4 800572E4 AFA50024 */ sw $a1, 0x24($sp) +/* 057EE8 800572E8 8FA50024 */ lw $a1, 0x24($sp) +/* 057EEC 800572EC 24010018 */ li $at, 24 +/* 057EF0 800572F0 14A10007 */ bne $a1, $at, .L80057310 +/* 057EF4 800572F4 A20201D3 */ sb $v0, 0x1d3($s0) +/* 057EF8 800572F8 8FA40040 */ lw $a0, 0x40($sp) +/* 057EFC 800572FC 0C015C12 */ jal func_80057048 +/* 057F00 80057300 24050022 */ li $a1, 34 +/* 057F04 80057304 0C00322D */ jal func_8000C8B4 +/* 057F08 80057308 24040014 */ li $a0, 20 +/* 057F0C 8005730C A20201D3 */ sb $v0, 0x1d3($s0) +.L80057310: +/* 057F10 80057310 0C00322D */ jal func_8000C8B4 +/* 057F14 80057314 24040014 */ li $a0, 20 +/* 057F18 80057318 820B01D3 */ lb $t3, 0x1d3($s0) +/* 057F1C 8005731C 00000000 */ nop +/* 057F20 80057320 0162082A */ slt $at, $t3, $v0 +/* 057F24 80057324 10200003 */ beqz $at, .L80057334 +/* 057F28 80057328 00000000 */ nop +/* 057F2C 8005732C 1000000B */ b .L8005735C +/* 057F30 80057330 A2000203 */ sb $zero, 0x203($s0) +.L80057334: +/* 057F34 80057334 0C00322D */ jal func_8000C8B4 +/* 057F38 80057338 24040023 */ li $a0, 35 +/* 057F3C 8005733C 820C01D3 */ lb $t4, 0x1d3($s0) +/* 057F40 80057340 240D0001 */ li $t5, 1 +/* 057F44 80057344 0182082A */ slt $at, $t4, $v0 +/* 057F48 80057348 10200003 */ beqz $at, .L80057358 +/* 057F4C 8005734C 240E0002 */ li $t6, 2 +/* 057F50 80057350 10000002 */ b .L8005735C +/* 057F54 80057354 A20D0203 */ sb $t5, 0x203($s0) +.L80057358: +/* 057F58 80057358 A20E0203 */ sb $t6, 0x203($s0) +.L8005735C: +/* 057F5C 8005735C 920F01EF */ lbu $t7, 0x1ef($s0) +/* 057F60 80057360 24190007 */ li $t9, 7 +/* 057F64 80057364 35F80001 */ ori $t8, $t7, 1 +/* 057F68 80057368 A21801EF */ sb $t8, 0x1ef($s0) +/* 057F6C 8005736C 3C018012 */ lui $at, %hi(D_8011D560) # $at, 0x8012 +/* 057F70 80057370 A439D560 */ sh $t9, %lo(D_8011D560)($at) +/* 057F74 80057374 820801D3 */ lb $t0, 0x1d3($s0) +/* 057F78 80057378 3C038012 */ lui $v1, %hi(D_8011D585) # $v1, 0x8012 +/* 057F7C 8005737C 2463D585 */ addiu $v1, %lo(D_8011D585) # addiu $v1, $v1, -0x2a7b +/* 057F80 80057380 A0680000 */ sb $t0, ($v1) +.L80057384: +/* 057F84 80057384 86090000 */ lh $t1, ($s0) +/* 057F88 80057388 3C038012 */ lui $v1, %hi(D_8011D585) # $v1, 0x8012 +/* 057F8C 8005738C 2401FFFF */ li $at, -1 +/* 057F90 80057390 15210027 */ bne $t1, $at, .L80057430 +/* 057F94 80057394 2463D585 */ addiu $v1, %lo(D_8011D585) # addiu $v1, $v1, -0x2a7b +/* 057F98 80057398 820201CC */ lb $v0, 0x1cc($s0) +/* 057F9C 8005739C 24010001 */ li $at, 1 +/* 057FA0 800573A0 10400007 */ beqz $v0, .L800573C0 +/* 057FA4 800573A4 00000000 */ nop +/* 057FA8 800573A8 14410021 */ bne $v0, $at, .L80057430 +/* 057FAC 800573AC 00000000 */ nop +/* 057FB0 800573B0 806A0000 */ lb $t2, ($v1) +/* 057FB4 800573B4 00000000 */ nop +/* 057FB8 800573B8 1140001D */ beqz $t2, .L80057430 +/* 057FBC 800573BC 00000000 */ nop +.L800573C0: +/* 057FC0 800573C0 80620000 */ lb $v0, ($v1) +/* 057FC4 800573C4 00000000 */ nop +/* 057FC8 800573C8 10400003 */ beqz $v0, .L800573D8 +/* 057FCC 800573CC 00000000 */ nop +/* 057FD0 800573D0 10000004 */ b .L800573E4 +/* 057FD4 800573D4 A20201D3 */ sb $v0, 0x1d3($s0) +.L800573D8: +/* 057FD8 800573D8 0C00322D */ jal func_8000C8B4 +/* 057FDC 800573DC 24040005 */ li $a0, 5 +/* 057FE0 800573E0 A20201D3 */ sb $v0, 0x1d3($s0) +.L800573E4: +/* 057FE4 800573E4 0C00322D */ jal func_8000C8B4 +/* 057FE8 800573E8 24040014 */ li $a0, 20 +/* 057FEC 800573EC 820B01D3 */ lb $t3, 0x1d3($s0) +/* 057FF0 800573F0 00000000 */ nop +/* 057FF4 800573F4 0162082A */ slt $at, $t3, $v0 +/* 057FF8 800573F8 10200003 */ beqz $at, .L80057408 +/* 057FFC 800573FC 00000000 */ nop +/* 058000 80057400 1000000B */ b .L80057430 +/* 058004 80057404 A2000203 */ sb $zero, 0x203($s0) +.L80057408: +/* 058008 80057408 0C00322D */ jal func_8000C8B4 +/* 05800C 8005740C 24040023 */ li $a0, 35 +/* 058010 80057410 820C01D3 */ lb $t4, 0x1d3($s0) +/* 058014 80057414 240D0001 */ li $t5, 1 +/* 058018 80057418 0182082A */ slt $at, $t4, $v0 +/* 05801C 8005741C 10200003 */ beqz $at, .L8005742C +/* 058020 80057420 240E0002 */ li $t6, 2 +/* 058024 80057424 10000002 */ b .L80057430 +/* 058028 80057428 A20D0203 */ sb $t5, 0x203($s0) +.L8005742C: +/* 05802C 8005742C A20E0203 */ sb $t6, 0x203($s0) +.L80057430: +/* 058030 80057430 820F01D3 */ lb $t7, 0x1d3($s0) +/* 058034 80057434 3C048012 */ lui $a0, %hi(D_8011D540) # $a0, 0x8012 +/* 058038 80057438 8C84D540 */ lw $a0, %lo(D_8011D540)($a0) +/* 05803C 8005743C 11E00012 */ beqz $t7, .L80057488 +/* 058040 80057440 28810050 */ slti $at, $a0, 0x50 +/* 058044 80057444 14800010 */ bnez $a0, .L80057488 +/* 058048 80057448 28810050 */ slti $at, $a0, 0x50 +/* 05804C 8005744C 8FB80028 */ lw $t8, 0x28($sp) +/* 058050 80057450 00000000 */ nop +/* 058054 80057454 1300000C */ beqz $t8, .L80057488 +/* 058058 80057458 28810050 */ slti $at, $a0, 0x50 +/* 05805C 8005745C 821901D8 */ lb $t9, 0x1d8($s0) +/* 058060 80057460 00000000 */ nop +/* 058064 80057464 17200008 */ bnez $t9, .L80057488 +/* 058068 80057468 28810050 */ slti $at, $a0, 0x50 +/* 05806C 8005746C 86040000 */ lh $a0, ($s0) +/* 058070 80057470 0C01C8D2 */ jal func_80072348 +/* 058074 80057474 24050006 */ li $a1, 6 +/* 058078 80057478 3C048012 */ lui $a0, %hi(D_8011D540) # $a0, 0x8012 +/* 05807C 8005747C 8C84D540 */ lw $a0, %lo(D_8011D540)($a0) +/* 058080 80057480 00000000 */ nop +/* 058084 80057484 28810050 */ slti $at, $a0, 0x50 +.L80057488: +/* 058088 80057488 1020000A */ beqz $at, .L800574B4 +/* 05808C 8005748C 3C088012 */ lui $t0, %hi(D_8011D52C) # $t0, 0x8012 +/* 058090 80057490 8D08D52C */ lw $t0, %lo(D_8011D52C)($t0) +/* 058094 80057494 240A0001 */ li $t2, 1 +/* 058098 80057498 31098000 */ andi $t1, $t0, 0x8000 +/* 05809C 8005749C 11200005 */ beqz $t1, .L800574B4 +/* 0580A0 800574A0 00000000 */ nop +/* 0580A4 800574A4 A20A01F4 */ sb $t2, 0x1f4($s0) +/* 0580A8 800574A8 3C048012 */ lui $a0, %hi(D_8011D540) # $a0, 0x8012 +/* 0580AC 800574AC 8C84D540 */ lw $a0, %lo(D_8011D540)($a0) +/* 0580B0 800574B0 00000000 */ nop +.L800574B4: +/* 0580B4 800574B4 1480000E */ bnez $a0, .L800574F0 +/* 0580B8 800574B8 00000000 */ nop +/* 0580BC 800574BC 920201EF */ lbu $v0, 0x1ef($s0) +/* 0580C0 800574C0 24050162 */ li $a1, 354 +/* 0580C4 800574C4 304B0001 */ andi $t3, $v0, 1 +/* 0580C8 800574C8 11600009 */ beqz $t3, .L800574F0 +/* 0580CC 800574CC 304CFFFE */ andi $t4, $v0, 0xfffe +/* 0580D0 800574D0 A20C01EF */ sb $t4, 0x1ef($s0) +/* 0580D4 800574D4 8FA40040 */ lw $a0, 0x40($sp) +/* 0580D8 800574D8 24060008 */ li $a2, 8 +/* 0580DC 800574DC 0C015C2E */ jal func_800570B8 +/* 0580E0 800574E0 24070082 */ li $a3, 130 +/* 0580E4 800574E4 8FA40040 */ lw $a0, 0x40($sp) +/* 0580E8 800574E8 0C015C12 */ jal func_80057048 +/* 0580EC 800574EC 24050021 */ li $a1, 33 +.L800574F0: +/* 0580F0 800574F0 920201EF */ lbu $v0, 0x1ef($s0) +/* 0580F4 800574F4 2401FFFF */ li $at, -1 +/* 0580F8 800574F8 304D0002 */ andi $t5, $v0, 2 +/* 0580FC 800574FC 11A00002 */ beqz $t5, .L80057508 +/* 058100 80057500 304EFFFD */ andi $t6, $v0, 0xfffd +/* 058104 80057504 A20E01EF */ sb $t6, 0x1ef($s0) +.L80057508: +/* 058108 80057508 820F0185 */ lb $t7, 0x185($s0) +/* 05810C 8005750C 86180000 */ lh $t8, ($s0) +/* 058110 80057510 448F2000 */ mtc1 $t7, $f4 +/* 058114 80057514 17010004 */ bne $t8, $at, .L80057528 +/* 058118 80057518 468020A0 */ cvt.s.w $f2, $f4 +/* 05811C 8005751C C6020124 */ lwc1 $f2, 0x124($s0) +/* 058120 80057520 1000001F */ b .L800575A0 +/* 058124 80057524 3C0141A0 */ lui $at, 0x41a0 +.L80057528: +/* 058128 80057528 3C014024 */ li $at, 0x40240000 # 2.562500 +/* 05812C 8005752C 44813800 */ mtc1 $at, $f7 +/* 058130 80057530 44803000 */ mtc1 $zero, $f6 +/* 058134 80057534 46001221 */ cvt.d.s $f8, $f2 +/* 058138 80057538 4628303C */ c.lt.d $f6, $f8 +/* 05813C 8005753C 00000000 */ nop +/* 058140 80057540 45000009 */ bc1f .L80057568 +/* 058144 80057544 00000000 */ nop +/* 058148 80057548 0C0270C3 */ jal func_8009C30C +/* 05814C 8005754C E7A20034 */ swc1 $f2, 0x34($sp) +/* 058150 80057550 C7A20034 */ lwc1 $f2, 0x34($sp) +/* 058154 80057554 30594000 */ andi $t9, $v0, 0x4000 +/* 058158 80057558 17200003 */ bnez $t9, .L80057568 +/* 05815C 8005755C 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 058160 80057560 44811000 */ mtc1 $at, $f2 +/* 058164 80057564 00000000 */ nop +.L80057568: +/* 058168 80057568 0C0270C3 */ jal func_8009C30C +/* 05816C 8005756C E7A20034 */ swc1 $f2, 0x34($sp) +/* 058170 80057570 C7A20034 */ lwc1 $f2, 0x34($sp) +/* 058174 80057574 30482000 */ andi $t0, $v0, 0x2000 +/* 058178 80057578 11000009 */ beqz $t0, .L800575A0 +/* 05817C 8005757C 3C0141A0 */ lui $at, 0x41a0 +/* 058180 80057580 44805000 */ mtc1 $zero, $f10 +/* 058184 80057584 00000000 */ nop +/* 058188 80057588 4602503C */ c.lt.s $f10, $f2 +/* 05818C 8005758C 00000000 */ nop +/* 058190 80057590 45000003 */ bc1f .L800575A0 +/* 058194 80057594 3C0141A0 */ lui $at, 0x41a0 +/* 058198 80057598 46001087 */ neg.s $f2, $f2 +/* 05819C 8005759C 3C0141A0 */ li $at, 0x41A00000 # 20.000000 +.L800575A0: +/* 0581A0 800575A0 44816000 */ mtc1 $at, $f12 +/* 0581A4 800575A4 8FB00018 */ lw $s0, 0x18($sp) +/* 0581A8 800575A8 4602603C */ c.lt.s $f12, $f2 +/* 0581AC 800575AC 3C01800E */ lui $at, %hi(D_800E68CC) # $at, 0x800e +/* 0581B0 800575B0 45000002 */ bc1f .L800575BC +/* 0581B4 800575B4 46006007 */ neg.s $f0, $f12 +/* 0581B8 800575B8 46006086 */ mov.s $f2, $f12 +.L800575BC: +/* 0581BC 800575BC 4600103C */ c.lt.s $f2, $f0 +/* 0581C0 800575C0 00000000 */ nop +/* 0581C4 800575C4 45000002 */ bc1f .L800575D0 +/* 0581C8 800575C8 00000000 */ nop +/* 0581CC 800575CC 46000086 */ mov.s $f2, $f0 +.L800575D0: +/* 0581D0 800575D0 C43068CC */ lwc1 $f16, %lo(D_800E68CC)($at) +/* 0581D4 800575D4 C7AC003C */ lwc1 $f12, 0x3c($sp) +/* 0581D8 800575D8 46101482 */ mul.s $f18, $f2, $f16 +/* 0581DC 800575DC 8FBF001C */ lw $ra, 0x1c($sp) +/* 0581E0 800575E0 27BD0040 */ addiu $sp, $sp, 0x40 +/* 0581E4 800575E4 03E00008 */ jr $ra +/* 0581E8 800575E8 46126000 */ add.s $f0, $f12, $f18 + diff --git a/asm/non_matchings/unknown_043920/func_800575EC.s b/asm/non_matchings/unknown_043920/func_800575EC.s new file mode 100644 index 00000000..645d2c19 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_800575EC.s @@ -0,0 +1,63 @@ +glabel func_800575EC +/* 0581EC 800575EC 27BDFF88 */ addiu $sp, $sp, -0x78 +/* 0581F0 800575F0 AFB00030 */ sw $s0, 0x30($sp) +/* 0581F4 800575F4 00A08025 */ move $s0, $a1 +/* 0581F8 800575F8 AFBF0034 */ sw $ra, 0x34($sp) +/* 0581FC 800575FC E7B50028 */ swc1 $f21, 0x28($sp) +/* 058200 80057600 E7B4002C */ swc1 $f20, 0x2c($sp) +/* 058204 80057604 848E0000 */ lh $t6, ($a0) +/* 058208 80057608 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 +/* 05820C 8005760C 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 +/* 058210 80057610 A4AE0000 */ sh $t6, ($a1) +/* 058214 80057614 848F0002 */ lh $t7, 2($a0) +/* 058218 80057618 4480A000 */ mtc1 $zero, $f20 +/* 05821C 8005761C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 058220 80057620 44812000 */ mtc1 $at, $f4 +/* 058224 80057624 A4A00004 */ sh $zero, 4($a1) +/* 058228 80057628 27A40038 */ addiu $a0, $sp, 0x38 +/* 05822C 8005762C A4AF0002 */ sh $t7, 2($a1) +/* 058230 80057630 E4B4000C */ swc1 $f20, 0xc($a1) +/* 058234 80057634 E4B40010 */ swc1 $f20, 0x10($a1) +/* 058238 80057638 E4B40014 */ swc1 $f20, 0x14($a1) +/* 05823C 8005763C 0C01BF0C */ jal func_8006FC30 +/* 058240 80057640 E4A40008 */ swc1 $f4, 8($a1) +/* 058244 80057644 4405A000 */ mfc1 $a1, $f20 +/* 058248 80057648 4406A000 */ mfc1 $a2, $f20 +/* 05824C 8005764C 26180038 */ addiu $t8, $s0, 0x38 +/* 058250 80057650 2619003C */ addiu $t9, $s0, 0x3c +/* 058254 80057654 26080040 */ addiu $t0, $s0, 0x40 +/* 058258 80057658 AFA80018 */ sw $t0, 0x18($sp) +/* 05825C 8005765C AFB90014 */ sw $t9, 0x14($sp) +/* 058260 80057660 AFB80010 */ sw $t8, 0x10($sp) +/* 058264 80057664 27A40038 */ addiu $a0, $sp, 0x38 +/* 058268 80057668 0C01BD93 */ jal func_8006F64C +/* 05826C 8005766C 3C073F80 */ lui $a3, 0x3f80 +/* 058270 80057670 4405A000 */ mfc1 $a1, $f20 +/* 058274 80057674 4407A000 */ mfc1 $a3, $f20 +/* 058278 80057678 26090044 */ addiu $t1, $s0, 0x44 +/* 05827C 8005767C 260A0048 */ addiu $t2, $s0, 0x48 +/* 058280 80057680 260B004C */ addiu $t3, $s0, 0x4c +/* 058284 80057684 AFAB0018 */ sw $t3, 0x18($sp) +/* 058288 80057688 AFAA0014 */ sw $t2, 0x14($sp) +/* 05828C 8005768C AFA90010 */ sw $t1, 0x10($sp) +/* 058290 80057690 27A40038 */ addiu $a0, $sp, 0x38 +/* 058294 80057694 0C01BD93 */ jal func_8006F64C +/* 058298 80057698 3C063F80 */ lui $a2, 0x3f80 +/* 05829C 8005769C 4406A000 */ mfc1 $a2, $f20 +/* 0582A0 800576A0 4407A000 */ mfc1 $a3, $f20 +/* 0582A4 800576A4 260C0050 */ addiu $t4, $s0, 0x50 +/* 0582A8 800576A8 260D0054 */ addiu $t5, $s0, 0x54 +/* 0582AC 800576AC 260E0058 */ addiu $t6, $s0, 0x58 +/* 0582B0 800576B0 AFAE0018 */ sw $t6, 0x18($sp) +/* 0582B4 800576B4 AFAD0014 */ sw $t5, 0x14($sp) +/* 0582B8 800576B8 AFAC0010 */ sw $t4, 0x10($sp) +/* 0582BC 800576BC 27A40038 */ addiu $a0, $sp, 0x38 +/* 0582C0 800576C0 0C01BD93 */ jal func_8006F64C +/* 0582C4 800576C4 3C053F80 */ lui $a1, 0x3f80 +/* 0582C8 800576C8 8FBF0034 */ lw $ra, 0x34($sp) +/* 0582CC 800576CC C7B50028 */ lwc1 $f21, 0x28($sp) +/* 0582D0 800576D0 C7B4002C */ lwc1 $f20, 0x2c($sp) +/* 0582D4 800576D4 8FB00030 */ lw $s0, 0x30($sp) +/* 0582D8 800576D8 03E00008 */ jr $ra +/* 0582DC 800576DC 27BD0078 */ addiu $sp, $sp, 0x78 + diff --git a/asm/non_matchings/unknown_043920/func_800576E0.s b/asm/non_matchings/unknown_043920/func_800576E0.s new file mode 100644 index 00000000..41c0a950 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_800576E0.s @@ -0,0 +1,189 @@ +glabel func_800576E0 +/* 0582E0 800576E0 27BDFF70 */ addiu $sp, $sp, -0x90 +/* 0582E4 800576E4 AFBF005C */ sw $ra, 0x5c($sp) +/* 0582E8 800576E8 AFB20048 */ sw $s2, 0x48($sp) +/* 0582EC 800576EC AFB10044 */ sw $s1, 0x44($sp) +/* 0582F0 800576F0 AFB00040 */ sw $s0, 0x40($sp) +/* 0582F4 800576F4 00A08025 */ move $s0, $a1 +/* 0582F8 800576F8 00C08825 */ move $s1, $a2 +/* 0582FC 800576FC 00809025 */ move $s2, $a0 +/* 058300 80057700 AFB60058 */ sw $s6, 0x58($sp) +/* 058304 80057704 AFB50054 */ sw $s5, 0x54($sp) +/* 058308 80057708 AFB40050 */ sw $s4, 0x50($sp) +/* 05830C 8005770C AFB3004C */ sw $s3, 0x4c($sp) +/* 058310 80057710 E7BD0038 */ swc1 $f29, 0x38($sp) +/* 058314 80057714 E7BC003C */ swc1 $f28, 0x3c($sp) +/* 058318 80057718 E7BB0030 */ swc1 $f27, 0x30($sp) +/* 05831C 8005771C E7BA0034 */ swc1 $f26, 0x34($sp) +/* 058320 80057720 E7B90028 */ swc1 $f25, 0x28($sp) +/* 058324 80057724 E7B8002C */ swc1 $f24, 0x2c($sp) +/* 058328 80057728 E7B70020 */ swc1 $f23, 0x20($sp) +/* 05832C 8005772C E7B60024 */ swc1 $f22, 0x24($sp) +/* 058330 80057730 E7B50018 */ swc1 $f21, 0x18($sp) +/* 058334 80057734 0C0270C3 */ jal func_8009C30C +/* 058338 80057738 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 05833C 8005773C 304E0080 */ andi $t6, $v0, 0x80 +/* 058340 80057740 15C00088 */ bnez $t6, .L80057964 +/* 058344 80057744 8FBF005C */ lw $ra, 0x5c($sp) +/* 058348 80057748 82020185 */ lb $v0, 0x185($s0) +/* 05834C 8005774C A2000188 */ sb $zero, 0x188($s0) +/* 058350 80057750 0051082A */ slt $at, $v0, $s1 +/* 058354 80057754 10200002 */ beqz $at, .L80057760 +/* 058358 80057758 00000000 */ nop +/* 05835C 8005775C 00408825 */ move $s1, $v0 +.L80057760: +/* 058360 80057760 1A20007F */ blez $s1, .L80057960 +/* 058364 80057764 2A210003 */ slti $at, $s1, 3 +/* 058368 80057768 1020007D */ beqz $at, .L80057960 +/* 05836C 8005776C 24080008 */ li $t0, 8 +/* 058370 80057770 860F01A4 */ lh $t7, 0x1a4($s0) +/* 058374 80057774 2409000C */ li $t1, 12 +/* 058378 80057778 A7AF0078 */ sh $t7, 0x78($sp) +/* 05837C 8005777C 86580002 */ lh $t8, 2($s2) +/* 058380 80057780 27A40078 */ addiu $a0, $sp, 0x78 +/* 058384 80057784 A7B8007A */ sh $t8, 0x7a($sp) +/* 058388 80057788 861901A0 */ lh $t9, 0x1a0($s0) +/* 05838C 8005778C A7A00070 */ sh $zero, 0x70($sp) +/* 058390 80057790 A7A80072 */ sh $t0, 0x72($sp) +/* 058394 80057794 A7A90074 */ sh $t1, 0x74($sp) +/* 058398 80057798 27A50070 */ addiu $a1, $sp, 0x70 +/* 05839C 8005779C 0C01C079 */ jal func_800701E4 +/* 0583A0 800577A0 A7B9007C */ sh $t9, 0x7c($sp) +/* 0583A4 800577A4 444BF800 */ cfc1 $t3, $31 +/* 0583A8 800577A8 C644000C */ lwc1 $f4, 0xc($s2) +/* 0583AC 800577AC 35610003 */ ori $at, $t3, 3 +/* 0583B0 800577B0 38210002 */ xori $at, $at, 2 +/* 0583B4 800577B4 44C1F800 */ ctc1 $at, $31 +/* 0583B8 800577B8 87AA0070 */ lh $t2, 0x70($sp) +/* 0583BC 800577BC 460021A4 */ cvt.w.s $f6, $f4 +/* 0583C0 800577C0 87AE0072 */ lh $t6, 0x72($sp) +/* 0583C4 800577C4 44CBF800 */ ctc1 $t3, $31 +/* 0583C8 800577C8 440C3000 */ mfc1 $t4, $f6 +/* 0583CC 800577CC 87A80074 */ lh $t0, 0x74($sp) +/* 0583D0 800577D0 444FF800 */ cfc1 $t7, $31 +/* 0583D4 800577D4 014C6821 */ addu $t5, $t2, $t4 +/* 0583D8 800577D8 35E10003 */ ori $at, $t7, 3 +/* 0583DC 800577DC A7AD008A */ sh $t5, 0x8a($sp) +/* 0583E0 800577E0 38210002 */ xori $at, $at, 2 +/* 0583E4 800577E4 44C1F800 */ ctc1 $at, $31 +/* 0583E8 800577E8 C6480010 */ lwc1 $f8, 0x10($s2) +/* 0583EC 800577EC 240C0008 */ li $t4, 8 +/* 0583F0 800577F0 460042A4 */ cvt.w.s $f10, $f8 +/* 0583F4 800577F4 240D0053 */ li $t5, 83 +/* 0583F8 800577F8 44CFF800 */ ctc1 $t7, $31 +/* 0583FC 800577FC 44185000 */ mfc1 $t8, $f10 +/* 058400 80057800 4480C000 */ mtc1 $zero, $f24 +/* 058404 80057804 4449F800 */ cfc1 $t1, $31 +/* 058408 80057808 01D8C821 */ addu $t9, $t6, $t8 +/* 05840C 8005780C 35210003 */ ori $at, $t1, 3 +/* 058410 80057810 38210002 */ xori $at, $at, 2 +/* 058414 80057814 44C1F800 */ ctc1 $at, $31 +/* 058418 80057818 A7B9008C */ sh $t9, 0x8c($sp) +/* 05841C 8005781C 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 058420 80057820 C6500014 */ lwc1 $f16, 0x14($s2) +/* 058424 80057824 4481E000 */ mtc1 $at, $f28 +/* 058428 80057828 3C01BF00 */ li $at, 0xBF000000 # -0.500000 +/* 05842C 8005782C 460084A4 */ cvt.w.s $f18, $f16 +/* 058430 80057830 4481D000 */ mtc1 $at, $f26 +/* 058434 80057834 3C014014 */ li $at, 0x40140000 # 2.312500 +/* 058438 80057838 440B9000 */ mfc1 $t3, $f18 +/* 05843C 8005783C 4481B800 */ mtc1 $at, $f23 +/* 058440 80057840 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 058444 80057844 44C9F800 */ ctc1 $t1, $31 +/* 058448 80057848 010B5021 */ addu $t2, $t0, $t3 +/* 05844C 8005784C 4481A000 */ mtc1 $at, $f20 +/* 058450 80057850 4480B000 */ mtc1 $zero, $f22 +/* 058454 80057854 A7AA008E */ sh $t2, 0x8e($sp) +/* 058458 80057858 A3AC0089 */ sb $t4, 0x89($sp) +/* 05845C 8005785C A3AD0088 */ sb $t5, 0x88($sp) +/* 058460 80057860 02209825 */ move $s3, $s1 +/* 058464 80057864 24120001 */ li $s2, 1 +/* 058468 80057868 24160002 */ li $s6, 2 +/* 05846C 8005786C 27B50088 */ addiu $s5, $sp, 0x88 +/* 058470 80057870 24140040 */ li $s4, 64 +.L80057874: +/* 058474 80057874 0C01AF66 */ jal func_8006BD98 +/* 058478 80057878 00000000 */ nop +/* 05847C 8005787C 12820033 */ beq $s4, $v0, .L8005794C +/* 058480 80057880 02A02025 */ move $a0, $s5 +/* 058484 80057884 0C003A95 */ jal func_8000EA54 +/* 058488 80057888 02402825 */ move $a1, $s2 +/* 05848C 8005788C 1040002F */ beqz $v0, .L8005794C +/* 058490 80057890 00000000 */ nop +/* 058494 80057894 AC40003C */ sw $zero, 0x3c($v0) +/* 058498 80057898 8C430064 */ lw $v1, 0x64($v0) +/* 05849C 8005789C 820F01D6 */ lb $t7, 0x1d6($s0) +/* 0584A0 800578A0 00000000 */ nop +/* 0584A4 800578A4 A06F0009 */ sb $t7, 9($v1) +/* 0584A8 800578A8 C6040038 */ lwc1 $f4, 0x38($s0) +/* 0584AC 800578AC 00000000 */ nop +/* 0584B0 800578B0 46142182 */ mul.s $f6, $f4, $f20 +/* 0584B4 800578B4 E446001C */ swc1 $f6, 0x1c($v0) +/* 0584B8 800578B8 C608003C */ lwc1 $f8, 0x3c($s0) +/* 0584BC 800578BC 00000000 */ nop +/* 0584C0 800578C0 4608C281 */ sub.s $f10, $f24, $f8 +/* 0584C4 800578C4 46005421 */ cvt.d.s $f16, $f10 +/* 0584C8 800578C8 46368480 */ add.d $f18, $f16, $f22 +/* 0584CC 800578CC 46209120 */ cvt.s.d $f4, $f18 +/* 0584D0 800578D0 E4440020 */ swc1 $f4, 0x20($v0) +/* 0584D4 800578D4 C6060040 */ lwc1 $f6, 0x40($s0) +/* 0584D8 800578D8 00000000 */ nop +/* 0584DC 800578DC 46143202 */ mul.s $f8, $f6, $f20 +/* 0584E0 800578E0 16760019 */ bne $s3, $s6, .L80057948 +/* 0584E4 800578E4 E4480024 */ swc1 $f8, 0x24($v0) +/* 0584E8 800578E8 16320002 */ bne $s1, $s2, .L800578F4 +/* 0584EC 800578EC 4600D006 */ mov.s $f0, $f26 +/* 0584F0 800578F0 4600E006 */ mov.s $f0, $f28 +.L800578F4: +/* 0584F4 800578F4 C60A0050 */ lwc1 $f10, 0x50($s0) +/* 0584F8 800578F8 C6100038 */ lwc1 $f16, 0x38($s0) +/* 0584FC 800578FC C446001C */ lwc1 $f6, 0x1c($v0) +/* 058500 80057900 46105481 */ sub.s $f18, $f10, $f16 +/* 058504 80057904 C44A0020 */ lwc1 $f10, 0x20($v0) +/* 058508 80057908 46009102 */ mul.s $f4, $f18, $f0 +/* 05850C 8005790C 46043201 */ sub.s $f8, $f6, $f4 +/* 058510 80057910 E448001C */ swc1 $f8, 0x1c($v0) +/* 058514 80057914 C6100054 */ lwc1 $f16, 0x54($s0) +/* 058518 80057918 00000000 */ nop +/* 05851C 8005791C 46008482 */ mul.s $f18, $f16, $f0 +/* 058520 80057920 46125181 */ sub.s $f6, $f10, $f18 +/* 058524 80057924 C4520024 */ lwc1 $f18, 0x24($v0) +/* 058528 80057928 E4460020 */ swc1 $f6, 0x20($v0) +/* 05852C 8005792C C6080040 */ lwc1 $f8, 0x40($s0) +/* 058530 80057930 C6040058 */ lwc1 $f4, 0x58($s0) +/* 058534 80057934 00000000 */ nop +/* 058538 80057938 46082401 */ sub.s $f16, $f4, $f8 +/* 05853C 8005793C 46008282 */ mul.s $f10, $f16, $f0 +/* 058540 80057940 460A9181 */ sub.s $f6, $f18, $f10 +/* 058544 80057944 E4460024 */ swc1 $f6, 0x24($v0) +.L80057948: +/* 058548 80057948 AC520078 */ sw $s2, 0x78($v0) +.L8005794C: +/* 05854C 8005794C 820E0185 */ lb $t6, 0x185($s0) +/* 058550 80057950 2631FFFF */ addiu $s1, $s1, -1 +/* 058554 80057954 25D8FFFF */ addiu $t8, $t6, -1 +/* 058558 80057958 1E20FFC6 */ bgtz $s1, .L80057874 +/* 05855C 8005795C A2180185 */ sb $t8, 0x185($s0) +.L80057960: +/* 058560 80057960 8FBF005C */ lw $ra, 0x5c($sp) +.L80057964: +/* 058564 80057964 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 058568 80057968 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 05856C 8005796C C7B70020 */ lwc1 $f23, 0x20($sp) +/* 058570 80057970 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 058574 80057974 C7B90028 */ lwc1 $f25, 0x28($sp) +/* 058578 80057978 C7B8002C */ lwc1 $f24, 0x2c($sp) +/* 05857C 8005797C C7BB0030 */ lwc1 $f27, 0x30($sp) +/* 058580 80057980 C7BA0034 */ lwc1 $f26, 0x34($sp) +/* 058584 80057984 C7BD0038 */ lwc1 $f29, 0x38($sp) +/* 058588 80057988 C7BC003C */ lwc1 $f28, 0x3c($sp) +/* 05858C 8005798C 8FB00040 */ lw $s0, 0x40($sp) +/* 058590 80057990 8FB10044 */ lw $s1, 0x44($sp) +/* 058594 80057994 8FB20048 */ lw $s2, 0x48($sp) +/* 058598 80057998 8FB3004C */ lw $s3, 0x4c($sp) +/* 05859C 8005799C 8FB40050 */ lw $s4, 0x50($sp) +/* 0585A0 800579A0 8FB50054 */ lw $s5, 0x54($sp) +/* 0585A4 800579A4 8FB60058 */ lw $s6, 0x58($sp) +/* 0585A8 800579A8 03E00008 */ jr $ra +/* 0585AC 800579AC 27BD0090 */ addiu $sp, $sp, 0x90 + diff --git a/asm/non_matchings/unknown_043920/func_800579B0.s b/asm/non_matchings/unknown_043920/func_800579B0.s new file mode 100644 index 00000000..a072e2c1 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_800579B0.s @@ -0,0 +1,41 @@ +glabel func_800579B0 +/* 0585B0 800579B0 AFA50004 */ sw $a1, 4($sp) +/* 0585B4 800579B4 3C0E8012 */ lui $t6, %hi(D_8011D534) # $t6, 0x8012 +/* 0585B8 800579B8 8DCED534 */ lw $t6, %lo(D_8011D534)($t6) +/* 0585BC 800579BC 808301E1 */ lb $v1, 0x1e1($a0) +/* 0585C0 800579C0 44866000 */ mtc1 $a2, $f12 +/* 0585C4 800579C4 01C31023 */ subu $v0, $t6, $v1 +/* 0585C8 800579C8 44822000 */ mtc1 $v0, $f4 +/* 0585CC 800579CC 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 0585D0 800579D0 468021A0 */ cvt.s.w $f6, $f4 +/* 0585D4 800579D4 44818800 */ mtc1 $at, $f17 +/* 0585D8 800579D8 44808000 */ mtc1 $zero, $f16 +/* 0585DC 800579DC 460C3202 */ mul.s $f8, $f6, $f12 +/* 0585E0 800579E0 460042A1 */ cvt.d.s $f10, $f8 +/* 0585E4 800579E4 46305482 */ mul.d $f18, $f10, $f16 +/* 0585E8 800579E8 444FF800 */ cfc1 $t7, $31 +/* 0585EC 800579EC 00000000 */ nop +/* 0585F0 800579F0 35E10003 */ ori $at, $t7, 3 +/* 0585F4 800579F4 38210002 */ xori $at, $at, 2 +/* 0585F8 800579F8 44C1F800 */ ctc1 $at, $31 +/* 0585FC 800579FC 00000000 */ nop +/* 058600 80057A00 46209124 */ cvt.w.d $f4, $f18 +/* 058604 80057A04 44062000 */ mfc1 $a2, $f4 +/* 058608 80057A08 44CFF800 */ ctc1 $t7, $31 +/* 05860C 80057A0C 10400009 */ beqz $v0, .L80057A34 +/* 058610 80057A10 00C02825 */ move $a1, $a2 +/* 058614 80057A14 14C00008 */ bnez $a2, .L80057A38 +/* 058618 80057A18 0065C021 */ addu $t8, $v1, $a1 +/* 05861C 80057A1C 18400002 */ blez $v0, .L80057A28 +/* 058620 80057A20 00000000 */ nop +/* 058624 80057A24 24050001 */ li $a1, 1 +.L80057A28: +/* 058628 80057A28 04410003 */ bgez $v0, .L80057A38 +/* 05862C 80057A2C 0065C021 */ addu $t8, $v1, $a1 +/* 058630 80057A30 2405FFFF */ li $a1, -1 +.L80057A34: +/* 058634 80057A34 0065C021 */ addu $t8, $v1, $a1 +.L80057A38: +/* 058638 80057A38 03E00008 */ jr $ra +/* 05863C 80057A3C A09801E1 */ sb $t8, 0x1e1($a0) + diff --git a/asm/non_matchings/unknown_043920/func_80057A40.s b/asm/non_matchings/unknown_043920/func_80057A40.s new file mode 100644 index 00000000..f79d15a7 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80057A40.s @@ -0,0 +1,433 @@ +glabel func_80057A40 +/* 058640 80057A40 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 058644 80057A44 3C0E8012 */ lui $t6, %hi(D_8011D52C) # $t6, 0x8012 +/* 058648 80057A48 8DCED52C */ lw $t6, %lo(D_8011D52C)($t6) +/* 05864C 80057A4C AFA5003C */ sw $a1, 0x3c($sp) +/* 058650 80057A50 31CF0008 */ andi $t7, $t6, 8 +/* 058654 80057A54 AFBF0014 */ sw $ra, 0x14($sp) +/* 058658 80057A58 AFA40038 */ sw $a0, 0x38($sp) +/* 05865C 80057A5C AFA60040 */ sw $a2, 0x40($sp) +/* 058660 80057A60 11E00037 */ beqz $t7, .L80057B40 +/* 058664 80057A64 AFA5003C */ sw $a1, 0x3c($sp) +/* 058668 80057A68 0C028064 */ jal func_800A0190 +/* 05866C 80057A6C AFA5003C */ sw $a1, 0x3c($sp) +/* 058670 80057A70 10400033 */ beqz $v0, .L80057B40 +/* 058674 80057A74 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 +/* 058678 80057A78 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 +/* 05867C 80057A7C 8CE20000 */ lw $v0, ($a3) +/* 058680 80057A80 00000000 */ nop +/* 058684 80057A84 9058003B */ lbu $t8, 0x3b($v0) +/* 058688 80057A88 00000000 */ nop +/* 05868C 80057A8C 27190001 */ addiu $t9, $t8, 1 +/* 058690 80057A90 A059003B */ sb $t9, 0x3b($v0) +/* 058694 80057A94 8CE20000 */ lw $v0, ($a3) +/* 058698 80057A98 00000000 */ nop +/* 05869C 80057A9C 9045003B */ lbu $a1, 0x3b($v0) +/* 0586A0 80057AA0 00000000 */ nop +/* 0586A4 80057AA4 28A10004 */ slti $at, $a1, 4 +/* 0586A8 80057AA8 14200007 */ bnez $at, .L80057AC8 +/* 0586AC 80057AAC 8FA9003C */ lw $t1, 0x3c($sp) +/* 0586B0 80057AB0 A040003B */ sb $zero, 0x3b($v0) +/* 0586B4 80057AB4 8CE80000 */ lw $t0, ($a3) +/* 0586B8 80057AB8 00000000 */ nop +/* 0586BC 80057ABC 9105003B */ lbu $a1, 0x3b($t0) +/* 0586C0 80057AC0 00000000 */ nop +/* 0586C4 80057AC4 8FA9003C */ lw $t1, 0x3c($sp) +.L80057AC8: +/* 0586C8 80057AC8 2401FFFF */ li $at, -1 +/* 0586CC 80057ACC 85240000 */ lh $a0, ($t1) +/* 0586D0 80057AD0 00000000 */ nop +/* 0586D4 80057AD4 10810009 */ beq $a0, $at, .L80057AFC +/* 0586D8 80057AD8 00000000 */ nop +/* 0586DC 80057ADC 0C019818 */ jal func_80066060 +/* 0586E0 80057AE0 00000000 */ nop +/* 0586E4 80057AE4 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 +/* 0586E8 80057AE8 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 +/* 0586EC 80057AEC 8CEA0000 */ lw $t2, ($a3) +/* 0586F0 80057AF0 00000000 */ nop +/* 0586F4 80057AF4 9145003B */ lbu $a1, 0x3b($t2) +/* 0586F8 80057AF8 00000000 */ nop +.L80057AFC: +/* 0586FC 80057AFC 10A00006 */ beqz $a1, .L80057B18 +/* 058700 80057B00 24040068 */ li $a0, 104 +/* 058704 80057B04 24010001 */ li $at, 1 +/* 058708 80057B08 10A10007 */ beq $a1, $at, .L80057B28 +/* 05870C 80057B0C 24040069 */ li $a0, 105 +/* 058710 80057B10 10000009 */ b .L80057B38 +/* 058714 80057B14 2404006A */ li $a0, 106 +.L80057B18: +/* 058718 80057B18 0C000741 */ jal func_80001D04 +/* 05871C 80057B1C 00002825 */ move $a1, $zero +/* 058720 80057B20 10000008 */ b .L80057B44 +/* 058724 80057B24 8FA6003C */ lw $a2, 0x3c($sp) +.L80057B28: +/* 058728 80057B28 0C000741 */ jal func_80001D04 +/* 05872C 80057B2C 00002825 */ move $a1, $zero +/* 058730 80057B30 10000004 */ b .L80057B44 +/* 058734 80057B34 8FA6003C */ lw $a2, 0x3c($sp) +.L80057B38: +/* 058738 80057B38 0C000741 */ jal func_80001D04 +/* 05873C 80057B3C 00002825 */ move $a1, $zero +.L80057B40: +/* 058740 80057B40 8FA6003C */ lw $a2, 0x3c($sp) +.L80057B44: +/* 058744 80057B44 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 +/* 058748 80057B48 80CB01D8 */ lb $t3, 0x1d8($a2) +/* 05874C 80057B4C 24010001 */ li $at, 1 +/* 058750 80057B50 15610008 */ bne $t3, $at, .L80057B74 +/* 058754 80057B54 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 +/* 058758 80057B58 8CE20000 */ lw $v0, ($a3) +/* 05875C 80057B5C 24010005 */ li $at, 5 +/* 058760 80057B60 844C0036 */ lh $t4, 0x36($v0) +/* 058764 80057B64 240D0007 */ li $t5, 7 +/* 058768 80057B68 11810002 */ beq $t4, $at, .L80057B74 +/* 05876C 80057B6C 00000000 */ nop +/* 058770 80057B70 A44D0036 */ sh $t5, 0x36($v0) +.L80057B74: +/* 058774 80057B74 8CCE0108 */ lw $t6, 0x108($a2) +/* 058778 80057B78 8CE20000 */ lw $v0, ($a3) +/* 05877C 80057B7C 11C00004 */ beqz $t6, .L80057B90 +/* 058780 80057B80 240F0003 */ li $t7, 3 +/* 058784 80057B84 A44F0036 */ sh $t7, 0x36($v0) +/* 058788 80057B88 8CE20000 */ lw $v0, ($a3) +/* 05878C 80057B8C 00000000 */ nop +.L80057B90: +/* 058790 80057B90 94580036 */ lhu $t8, 0x36($v0) +/* 058794 80057B94 00000000 */ nop +/* 058798 80057B98 2F010008 */ sltiu $at, $t8, 8 +/* 05879C 80057B9C 1020004C */ beqz $at, .L80057CD0 +/* 0587A0 80057BA0 0018C080 */ sll $t8, $t8, 2 +/* 0587A4 80057BA4 3C01800E */ lui $at, 0x800e +/* 0587A8 80057BA8 00380821 */ addu $at, $at, $t8 +/* 0587AC 80057BAC 8C3868D0 */ lw $t8, 0x68d0($at) +/* 0587B0 80057BB0 00000000 */ nop +/* 0587B4 80057BB4 03000008 */ jr $t8 +/* 0587B8 80057BB8 00000000 */ nop +/* 0587BC 80057BBC C7AC0040 */ lwc1 $f12, 0x40($sp) +/* 0587C0 80057BC0 8FA50038 */ lw $a1, 0x38($sp) +/* 0587C4 80057BC4 0C01607A */ jal func_800581E8 +/* 0587C8 80057BC8 AFA6003C */ sw $a2, 0x3c($sp) +/* 0587CC 80057BCC 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 +/* 0587D0 80057BD0 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 +/* 0587D4 80057BD4 8CE20000 */ lw $v0, ($a3) +/* 0587D8 80057BD8 8FA6003C */ lw $a2, 0x3c($sp) +/* 0587DC 80057BDC 1000003C */ b .L80057CD0 +/* 0587E0 80057BE0 00000000 */ nop +/* 0587E4 80057BE4 C7AC0040 */ lwc1 $f12, 0x40($sp) +/* 0587E8 80057BE8 8FA50038 */ lw $a1, 0x38($sp) +/* 0587EC 80057BEC 0C0130AC */ jal func_8004C2B0 +/* 0587F0 80057BF0 AFA6003C */ sw $a2, 0x3c($sp) +/* 0587F4 80057BF4 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 +/* 0587F8 80057BF8 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 +/* 0587FC 80057BFC 8CE20000 */ lw $v0, ($a3) +/* 058800 80057C00 8FA6003C */ lw $a2, 0x3c($sp) +/* 058804 80057C04 10000032 */ b .L80057CD0 +/* 058808 80057C08 00000000 */ nop +/* 05880C 80057C0C C7AC0040 */ lwc1 $f12, 0x40($sp) +/* 058810 80057C10 8FA50038 */ lw $a1, 0x38($sp) +/* 058814 80057C14 0C0163D1 */ jal func_80058F44 +/* 058818 80057C18 AFA6003C */ sw $a2, 0x3c($sp) +/* 05881C 80057C1C 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 +/* 058820 80057C20 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 +/* 058824 80057C24 8CE20000 */ lw $v0, ($a3) +/* 058828 80057C28 8FA6003C */ lw $a2, 0x3c($sp) +/* 05882C 80057C2C 10000028 */ b .L80057CD0 +/* 058830 80057C30 00000000 */ nop +/* 058834 80057C34 C7AC0040 */ lwc1 $f12, 0x40($sp) +/* 058838 80057C38 8FA50038 */ lw $a1, 0x38($sp) +/* 05883C 80057C3C 0C012399 */ jal func_80048E64 +/* 058840 80057C40 AFA6003C */ sw $a2, 0x3c($sp) +/* 058844 80057C44 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 +/* 058848 80057C48 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 +/* 05884C 80057C4C 8CE20000 */ lw $v0, ($a3) +/* 058850 80057C50 8FA6003C */ lw $a2, 0x3c($sp) +/* 058854 80057C54 1000001E */ b .L80057CD0 +/* 058858 80057C58 00000000 */ nop +/* 05885C 80057C5C C7AC0040 */ lwc1 $f12, 0x40($sp) +/* 058860 80057C60 8FA50038 */ lw $a1, 0x38($sp) +/* 058864 80057C64 0C0162E1 */ jal func_80058B84 +/* 058868 80057C68 AFA6003C */ sw $a2, 0x3c($sp) +/* 05886C 80057C6C 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 +/* 058870 80057C70 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 +/* 058874 80057C74 8CE20000 */ lw $v0, ($a3) +/* 058878 80057C78 8FA6003C */ lw $a2, 0x3c($sp) +/* 05887C 80057C7C 10000014 */ b .L80057CD0 +/* 058880 80057C80 00000000 */ nop +/* 058884 80057C84 C7AC0040 */ lwc1 $f12, 0x40($sp) +/* 058888 80057C88 8FA50038 */ lw $a1, 0x38($sp) +/* 05888C 80057C8C 0C013564 */ jal func_8004D590 +/* 058890 80057C90 AFA6003C */ sw $a2, 0x3c($sp) +/* 058894 80057C94 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 +/* 058898 80057C98 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 +/* 05889C 80057C9C 8CE20000 */ lw $v0, ($a3) +/* 0588A0 80057CA0 8FA6003C */ lw $a2, 0x3c($sp) +/* 0588A4 80057CA4 1000000A */ b .L80057CD0 +/* 0588A8 80057CA8 00000000 */ nop +/* 0588AC 80057CAC C7AC0040 */ lwc1 $f12, 0x40($sp) +/* 0588B0 80057CB0 8FA50038 */ lw $a1, 0x38($sp) +/* 0588B4 80057CB4 0C016357 */ jal func_80058D5C +/* 0588B8 80057CB8 AFA6003C */ sw $a2, 0x3c($sp) +/* 0588BC 80057CBC 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 +/* 0588C0 80057CC0 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 +/* 0588C4 80057CC4 8CE20000 */ lw $v0, ($a3) +/* 0588C8 80057CC8 8FA6003C */ lw $a2, 0x3c($sp) +/* 0588CC 80057CCC 00000000 */ nop +.L80057CD0: +/* 0588D0 80057CD0 3C038012 */ lui $v1, %hi(D_8011D586) # $v1, 0x8012 +/* 0588D4 80057CD4 3C01800E */ lui $at, %hi(D_800E68F4) # $at, 0x800e +/* 0588D8 80057CD8 2463D586 */ addiu $v1, %lo(D_8011D586) # addiu $v1, $v1, -0x2a7a +/* 0588DC 80057CDC C42168F0 */ lwc1 $f1, %lo(D_800E68F0)($at) +/* 0588E0 80057CE0 C42068F4 */ lwc1 $f0, %lo(D_800E68F4)($at) +/* 0588E4 80057CE4 84790000 */ lh $t9, ($v1) +/* 0588E8 80057CE8 3C01800E */ lui $at, %hi(D_800E68FC) # $at, 0x800e +/* 0588EC 80057CEC 44992000 */ mtc1 $t9, $f4 +/* 0588F0 80057CF0 C42D68F8 */ lwc1 $f13, %lo(D_800E68F8)($at) +/* 0588F4 80057CF4 C42C68FC */ lwc1 $f12, %lo(D_800E68FC)($at) +/* 0588F8 80057CF8 468021A0 */ cvt.s.w $f6, $f4 +/* 0588FC 80057CFC 8FA80038 */ lw $t0, 0x38($sp) +/* 058900 80057D00 3C014620 */ li $at, 0x46200000 # 10240.000000 +/* 058904 80057D04 44814000 */ mtc1 $at, $f8 +/* 058908 80057D08 C4D20038 */ lwc1 $f18, 0x38($a2) +/* 05890C 80057D0C C50A000C */ lwc1 $f10, 0xc($t0) +/* 058910 80057D10 46083383 */ div.s $f14, $f6, $f8 +/* 058914 80057D14 46009121 */ cvt.d.s $f4, $f18 +/* 058918 80057D18 46240182 */ mul.d $f6, $f0, $f4 +/* 05891C 80057D1C 46005421 */ cvt.d.s $f16, $f10 +/* 058920 80057D20 C4CA0050 */ lwc1 $f10, 0x50($a2) +/* 058924 80057D24 00000000 */ nop +/* 058928 80057D28 460054A1 */ cvt.d.s $f18, $f10 +/* 05892C 80057D2C 46326102 */ mul.d $f4, $f12, $f18 +/* 058930 80057D30 46268200 */ add.d $f8, $f16, $f6 +/* 058934 80057D34 C446000C */ lwc1 $f6, 0xc($v0) +/* 058938 80057D38 46244400 */ add.d $f16, $f8, $f4 +/* 05893C 80057D3C 460032A1 */ cvt.d.s $f10, $f6 +/* 058940 80057D40 462A8481 */ sub.d $f18, $f16, $f10 +/* 058944 80057D44 460070A1 */ cvt.d.s $f2, $f14 +/* 058948 80057D48 46229202 */ mul.d $f8, $f18, $f2 +/* 05894C 80057D4C 46204120 */ cvt.s.d $f4, $f8 +/* 058950 80057D50 E4440024 */ swc1 $f4, 0x24($v0) +/* 058954 80057D54 8FA90038 */ lw $t1, 0x38($sp) +/* 058958 80057D58 C4CA0040 */ lwc1 $f10, 0x40($a2) +/* 05895C 80057D5C C5260014 */ lwc1 $f6, 0x14($t1) +/* 058960 80057D60 460054A1 */ cvt.d.s $f18, $f10 +/* 058964 80057D64 46320202 */ mul.d $f8, $f0, $f18 +/* 058968 80057D68 46003421 */ cvt.d.s $f16, $f6 +/* 05896C 80057D6C C4C60058 */ lwc1 $f6, 0x58($a2) +/* 058970 80057D70 8CE20000 */ lw $v0, ($a3) +/* 058974 80057D74 460032A1 */ cvt.d.s $f10, $f6 +/* 058978 80057D78 462A6482 */ mul.d $f18, $f12, $f10 +/* 05897C 80057D7C 46288100 */ add.d $f4, $f16, $f8 +/* 058980 80057D80 C4480014 */ lwc1 $f8, 0x14($v0) +/* 058984 80057D84 46322400 */ add.d $f16, $f4, $f18 +/* 058988 80057D88 460041A1 */ cvt.d.s $f6, $f8 +/* 05898C 80057D8C 46268281 */ sub.d $f10, $f16, $f6 +/* 058990 80057D90 46225102 */ mul.d $f4, $f10, $f2 +/* 058994 80057D94 462024A0 */ cvt.s.d $f18, $f4 +/* 058998 80057D98 E452002C */ swc1 $f18, 0x2c($v0) +/* 05899C 80057D9C E7AE0034 */ swc1 $f14, 0x34($sp) +/* 0589A0 80057DA0 E7A2001C */ swc1 $f2, 0x1c($sp) +/* 0589A4 80057DA4 0C00EB2B */ jal func_8003ACAC +/* 0589A8 80057DA8 E7A30018 */ swc1 $f3, 0x18($sp) +/* 0589AC 80057DAC 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 +/* 0589B0 80057DB0 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 +/* 0589B4 80057DB4 3C01800E */ lui $at, %hi(D_800E6904) # $at, 0x800e +/* 0589B8 80057DB8 8CE20000 */ lw $v0, ($a3) +/* 0589BC 80057DBC C4316900 */ lwc1 $f17, %lo(D_800E6900)($at) +/* 0589C0 80057DC0 C4306904 */ lwc1 $f16, %lo(D_800E6904)($at) +/* 0589C4 80057DC4 C44A0010 */ lwc1 $f10, 0x10($v0) +/* 0589C8 80057DC8 46000221 */ cvt.d.s $f8, $f0 +/* 0589CC 80057DCC 46304180 */ add.d $f6, $f8, $f16 +/* 0589D0 80057DD0 C7A30018 */ lwc1 $f3, 0x18($sp) +/* 0589D4 80057DD4 46005121 */ cvt.d.s $f4, $f10 +/* 0589D8 80057DD8 46243481 */ sub.d $f18, $f6, $f4 +/* 0589DC 80057DDC C7A2001C */ lwc1 $f2, 0x1c($sp) +/* 0589E0 80057DE0 C7AE0034 */ lwc1 $f14, 0x34($sp) +/* 0589E4 80057DE4 46229202 */ mul.d $f8, $f18, $f2 +/* 0589E8 80057DE8 3C0E8012 */ lui $t6, %hi(D_8011D540) # $t6, 0x8012 +/* 0589EC 80057DEC 3C038012 */ lui $v1, %hi(D_8011D586) # $v1, 0x8012 +/* 0589F0 80057DF0 2463D586 */ addiu $v1, %lo(D_8011D586) # addiu $v1, $v1, -0x2a7a +/* 0589F4 80057DF4 24182800 */ li $t8, 10240 +/* 0589F8 80057DF8 46204420 */ cvt.s.d $f16, $f8 +/* 0589FC 80057DFC 3C088012 */ lui $t0, %hi(D_8011D583) # $t0, 0x8012 +/* 058A00 80057E00 E4500028 */ swc1 $f16, 0x28($v0) +/* 058A04 80057E04 8CE20000 */ lw $v0, ($a3) +/* 058A08 80057E08 00000000 */ nop +/* 058A0C 80057E0C 844A0002 */ lh $t2, 2($v0) +/* 058A10 80057E10 00000000 */ nop +/* 058A14 80057E14 000A5823 */ negu $t3, $t2 +/* 058A18 80057E18 448B5000 */ mtc1 $t3, $f10 +/* 058A1C 80057E1C 00000000 */ nop +/* 058A20 80057E20 468051A0 */ cvt.s.w $f6, $f10 +/* 058A24 80057E24 460E3102 */ mul.s $f4, $f6, $f14 +/* 058A28 80057E28 444CF800 */ cfc1 $t4, $31 +/* 058A2C 80057E2C 00000000 */ nop +/* 058A30 80057E30 35810003 */ ori $at, $t4, 3 +/* 058A34 80057E34 38210002 */ xori $at, $at, 2 +/* 058A38 80057E38 44C1F800 */ ctc1 $at, $31 +/* 058A3C 80057E3C 00000000 */ nop +/* 058A40 80057E40 460024A4 */ cvt.w.s $f18, $f4 +/* 058A44 80057E44 440D9000 */ mfc1 $t5, $f18 +/* 058A48 80057E48 44CCF800 */ ctc1 $t4, $31 +/* 058A4C 80057E4C A44D0038 */ sh $t5, 0x38($v0) +/* 058A50 80057E50 8CE20000 */ lw $v0, ($a3) +/* 058A54 80057E54 00000000 */ nop +/* 058A58 80057E58 C448000C */ lwc1 $f8, 0xc($v0) +/* 058A5C 80057E5C C4500024 */ lwc1 $f16, 0x24($v0) +/* 058A60 80057E60 00000000 */ nop +/* 058A64 80057E64 46104280 */ add.s $f10, $f8, $f16 +/* 058A68 80057E68 E44A000C */ swc1 $f10, 0xc($v0) +/* 058A6C 80057E6C 8CE20000 */ lw $v0, ($a3) +/* 058A70 80057E70 00000000 */ nop +/* 058A74 80057E74 C4460028 */ lwc1 $f6, 0x28($v0) +/* 058A78 80057E78 C4440030 */ lwc1 $f4, 0x30($v0) +/* 058A7C 80057E7C C4480010 */ lwc1 $f8, 0x10($v0) +/* 058A80 80057E80 46043480 */ add.s $f18, $f6, $f4 +/* 058A84 80057E84 46124400 */ add.s $f16, $f8, $f18 +/* 058A88 80057E88 E4500010 */ swc1 $f16, 0x10($v0) +/* 058A8C 80057E8C 8CE20000 */ lw $v0, ($a3) +/* 058A90 80057E90 00000000 */ nop +/* 058A94 80057E94 C44A0014 */ lwc1 $f10, 0x14($v0) +/* 058A98 80057E98 C446002C */ lwc1 $f6, 0x2c($v0) +/* 058A9C 80057E9C 00000000 */ nop +/* 058AA0 80057EA0 46065100 */ add.s $f4, $f10, $f6 +/* 058AA4 80057EA4 E4440014 */ swc1 $f4, 0x14($v0) +/* 058AA8 80057EA8 8DCED540 */ lw $t6, %lo(D_8011D540)($t6) +/* 058AAC 80057EAC 00000000 */ nop +/* 058AB0 80057EB0 15C0001D */ bnez $t6, .L80057F28 +/* 058AB4 80057EB4 00000000 */ nop +/* 058AB8 80057EB8 846F0000 */ lh $t7, ($v1) +/* 058ABC 80057EBC 3C01800E */ lui $at, %hi(D_800E690C) # $at, 0x800e +/* 058AC0 80057EC0 15E00019 */ bnez $t7, .L80057F28 +/* 058AC4 80057EC4 00000000 */ nop +/* 058AC8 80057EC8 8CE20000 */ lw $v0, ($a3) +/* 058ACC 80057ECC C4216908 */ lwc1 $f1, %lo(D_800E6908)($at) +/* 058AD0 80057ED0 C4480024 */ lwc1 $f8, 0x24($v0) +/* 058AD4 80057ED4 C420690C */ lwc1 $f0, %lo(D_800E690C)($at) +/* 058AD8 80057ED8 460044A1 */ cvt.d.s $f18, $f8 +/* 058ADC 80057EDC 46209402 */ mul.d $f16, $f18, $f0 +/* 058AE0 80057EE0 462082A0 */ cvt.s.d $f10, $f16 +/* 058AE4 80057EE4 E44A0024 */ swc1 $f10, 0x24($v0) +/* 058AE8 80057EE8 8CE20000 */ lw $v0, ($a3) +/* 058AEC 80057EEC 00000000 */ nop +/* 058AF0 80057EF0 C4460028 */ lwc1 $f6, 0x28($v0) +/* 058AF4 80057EF4 00000000 */ nop +/* 058AF8 80057EF8 46003121 */ cvt.d.s $f4, $f6 +/* 058AFC 80057EFC 46202202 */ mul.d $f8, $f4, $f0 +/* 058B00 80057F00 462044A0 */ cvt.s.d $f18, $f8 +/* 058B04 80057F04 E4520028 */ swc1 $f18, 0x28($v0) +/* 058B08 80057F08 8CE20000 */ lw $v0, ($a3) +/* 058B0C 80057F0C 00000000 */ nop +/* 058B10 80057F10 C450002C */ lwc1 $f16, 0x2c($v0) +/* 058B14 80057F14 00000000 */ nop +/* 058B18 80057F18 460082A1 */ cvt.d.s $f10, $f16 +/* 058B1C 80057F1C 46205182 */ mul.d $f6, $f10, $f0 +/* 058B20 80057F20 46203120 */ cvt.s.d $f4, $f6 +/* 058B24 80057F24 E444002C */ swc1 $f4, 0x2c($v0) +.L80057F28: +/* 058B28 80057F28 84640000 */ lh $a0, ($v1) +/* 058B2C 80057F2C 00000000 */ nop +/* 058B30 80057F30 28811401 */ slti $at, $a0, 0x1401 +/* 058B34 80057F34 14200002 */ bnez $at, .L80057F40 +/* 058B38 80057F38 00801025 */ move $v0, $a0 +/* 058B3C 80057F3C 03041023 */ subu $v0, $t8, $a0 +.L80057F40: +/* 058B40 80057F40 28410601 */ slti $at, $v0, 0x601 +/* 058B44 80057F44 14200002 */ bnez $at, .L80057F50 +/* 058B48 80057F48 00000000 */ nop +/* 058B4C 80057F4C 24020600 */ li $v0, 1536 +.L80057F50: +/* 058B50 80057F50 8108D583 */ lb $t0, %lo(D_8011D583)($t0) +/* 058B54 80057F54 0002C903 */ sra $t9, $v0, 4 +/* 058B58 80057F58 11000018 */ beqz $t0, .L80057FBC +/* 058B5C 80057F5C 27220004 */ addiu $v0, $t9, 4 +/* 058B60 80057F60 4449F800 */ cfc1 $t1, $31 +/* 058B64 80057F64 C7A80040 */ lwc1 $f8, 0x40($sp) +/* 058B68 80057F68 35210003 */ ori $at, $t1, 3 +/* 058B6C 80057F6C 38210002 */ xori $at, $at, 2 +/* 058B70 80057F70 44C1F800 */ ctc1 $at, $31 +/* 058B74 80057F74 3C018012 */ lui $at, %hi(D_8011D586) # $at, 0x8012 +/* 058B78 80057F78 460044A4 */ cvt.w.s $f18, $f8 +/* 058B7C 80057F7C 240C2800 */ li $t4, 10240 +/* 058B80 80057F80 44059000 */ mfc1 $a1, $f18 +/* 058B84 80057F84 44C9F800 */ ctc1 $t1, $31 +/* 058B88 80057F88 00A20019 */ multu $a1, $v0 +/* 058B8C 80057F8C 00005012 */ mflo $t2 +/* 058B90 80057F90 008A5821 */ addu $t3, $a0, $t2 +/* 058B94 80057F94 A42BD586 */ sh $t3, %lo(D_8011D586)($at) +/* 058B98 80057F98 84640000 */ lh $a0, ($v1) +/* 058B9C 80057F9C 00000000 */ nop +/* 058BA0 80057FA0 28812801 */ slti $at, $a0, 0x2801 +/* 058BA4 80057FA4 14200019 */ bnez $at, .L8005800C +/* 058BA8 80057FA8 00000000 */ nop +/* 058BAC 80057FAC A46C0000 */ sh $t4, ($v1) +/* 058BB0 80057FB0 84640000 */ lh $a0, ($v1) +/* 058BB4 80057FB4 10000016 */ b .L80058010 +/* 058BB8 80057FB8 8CE20000 */ lw $v0, ($a3) +.L80057FBC: +/* 058BBC 80057FBC 444DF800 */ cfc1 $t5, $31 +/* 058BC0 80057FC0 C7B00040 */ lwc1 $f16, 0x40($sp) +/* 058BC4 80057FC4 35A10003 */ ori $at, $t5, 3 +/* 058BC8 80057FC8 38210002 */ xori $at, $at, 2 +/* 058BCC 80057FCC 44C1F800 */ ctc1 $at, $31 +/* 058BD0 80057FD0 3C018012 */ lui $at, %hi(D_8011D586) # $at, 0x8012 +/* 058BD4 80057FD4 460082A4 */ cvt.w.s $f10, $f16 +/* 058BD8 80057FD8 44055000 */ mfc1 $a1, $f10 +/* 058BDC 80057FDC 44CDF800 */ ctc1 $t5, $31 +/* 058BE0 80057FE0 00A20019 */ multu $a1, $v0 +/* 058BE4 80057FE4 00007012 */ mflo $t6 +/* 058BE8 80057FE8 008E7823 */ subu $t7, $a0, $t6 +/* 058BEC 80057FEC A42FD586 */ sh $t7, %lo(D_8011D586)($at) +/* 058BF0 80057FF0 84640000 */ lh $a0, ($v1) +/* 058BF4 80057FF4 00000000 */ nop +/* 058BF8 80057FF8 04810004 */ bgez $a0, .L8005800C +/* 058BFC 80057FFC 00000000 */ nop +/* 058C00 80058000 A4600000 */ sh $zero, ($v1) +/* 058C04 80058004 84640000 */ lh $a0, ($v1) +/* 058C08 80058008 00000000 */ nop +.L8005800C: +/* 058C0C 8005800C 8CE20000 */ lw $v0, ($a3) +.L80058010: +/* 058C10 80058010 3C013FE8 */ li $at, 0x3FE80000 # 1.812500 +/* 058C14 80058014 84580000 */ lh $t8, ($v0) +/* 058C18 80058018 00000000 */ nop +/* 058C1C 8005801C 0304C823 */ subu $t9, $t8, $a0 +/* 058C20 80058020 A4590000 */ sh $t9, ($v0) +/* 058C24 80058024 8CE20000 */ lw $v0, ($a3) +/* 058C28 80058028 00000000 */ nop +/* 058C2C 8005802C 8048003A */ lb $t0, 0x3a($v0) +/* 058C30 80058030 00000000 */ nop +/* 058C34 80058034 01054823 */ subu $t1, $t0, $a1 +/* 058C38 80058038 A049003A */ sb $t1, 0x3a($v0) +/* 058C3C 8005803C 8CE20000 */ lw $v0, ($a3) +/* 058C40 80058040 00000000 */ nop +/* 058C44 80058044 8043003A */ lb $v1, 0x3a($v0) +/* 058C48 80058048 00000000 */ nop +/* 058C4C 8005804C 04610016 */ bgez $v1, .L800580A8 +/* 058C50 80058050 8FBF0014 */ lw $ra, 0x14($sp) +/* 058C54 80058054 44810800 */ mtc1 $at, $f1 +/* 058C58 80058058 44800000 */ mtc1 $zero, $f0 +/* 058C5C 8005805C 00000000 */ nop +/* 058C60 80058060 246A0005 */ addiu $t2, $v1, 5 +.L80058064: +/* 058C64 80058064 A04A003A */ sb $t2, 0x3a($v0) +/* 058C68 80058068 8CE20000 */ lw $v0, ($a3) +/* 058C6C 8005806C 00000000 */ nop +/* 058C70 80058070 C4460030 */ lwc1 $f6, 0x30($v0) +/* 058C74 80058074 00000000 */ nop +/* 058C78 80058078 46003107 */ neg.s $f4, $f6 +/* 058C7C 8005807C 46002221 */ cvt.d.s $f8, $f4 +/* 058C80 80058080 46204482 */ mul.d $f18, $f8, $f0 +/* 058C84 80058084 46209420 */ cvt.s.d $f16, $f18 +/* 058C88 80058088 E4500030 */ swc1 $f16, 0x30($v0) +/* 058C8C 8005808C 8CE20000 */ lw $v0, ($a3) +/* 058C90 80058090 00000000 */ nop +/* 058C94 80058094 8043003A */ lb $v1, 0x3a($v0) +/* 058C98 80058098 00000000 */ nop +/* 058C9C 8005809C 0460FFF1 */ bltz $v1, .L80058064 +/* 058CA0 800580A0 246A0005 */ addiu $t2, $v1, 5 +/* 058CA4 800580A4 8FBF0014 */ lw $ra, 0x14($sp) +.L800580A8: +/* 058CA8 800580A8 27BD0038 */ addiu $sp, $sp, 0x38 +/* 058CAC 800580AC 03E00008 */ jr $ra +/* 058CB0 800580B0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_800580B4.s b/asm/non_matchings/unknown_043920/func_800580B4.s new file mode 100644 index 00000000..6dda6428 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_800580B4.s @@ -0,0 +1,81 @@ +glabel func_800580B4 +/* 058CB4 800580B4 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 058CB8 800580B8 3C0E8012 */ lui $t6, %hi(D_8011D55C) # $t6, 0x8012 +/* 058CBC 800580BC 8DCED55C */ lw $t6, %lo(D_8011D55C)($t6) +/* 058CC0 800580C0 AFA70034 */ sw $a3, 0x34($sp) +/* 058CC4 800580C4 2401FFFF */ li $at, -1 +/* 058CC8 800580C8 00C03825 */ move $a3, $a2 +/* 058CCC 800580CC AFBF0014 */ sw $ra, 0x14($sp) +/* 058CD0 800580D0 AFA40028 */ sw $a0, 0x28($sp) +/* 058CD4 800580D4 11C10040 */ beq $t6, $at, .L800581D8 +/* 058CD8 800580D8 AFA60030 */ sw $a2, 0x30($sp) +/* 058CDC 800580DC 80AF01D8 */ lb $t7, 0x1d8($a1) +/* 058CE0 800580E0 24010001 */ li $at, 1 +/* 058CE4 800580E4 11E1003C */ beq $t7, $at, .L800581D8 +/* 058CE8 800580E8 3C038012 */ lui $v1, %hi(D_8011D508) # $v1, 0x8012 +/* 058CEC 800580EC 2463D508 */ addiu $v1, %lo(D_8011D508) # addiu $v1, $v1, -0x2af8 +/* 058CF0 800580F0 8C780000 */ lw $t8, ($v1) +/* 058CF4 800580F4 00000000 */ nop +/* 058CF8 800580F8 87190036 */ lh $t9, 0x36($t8) +/* 058CFC 800580FC 00000000 */ nop +/* 058D00 80058100 10D90036 */ beq $a2, $t9, .L800581DC +/* 058D04 80058104 8FBF0014 */ lw $ra, 0x14($sp) +/* 058D08 80058108 8FA60034 */ lw $a2, 0x34($sp) +/* 058D0C 8005810C AFA5002C */ sw $a1, 0x2c($sp) +/* 058D10 80058110 0C015E90 */ jal func_80057A40 +/* 058D14 80058114 AFA70030 */ sw $a3, 0x30($sp) +/* 058D18 80058118 3C038012 */ lui $v1, %hi(D_8011D508) # $v1, 0x8012 +/* 058D1C 8005811C 2463D508 */ addiu $v1, %lo(D_8011D508) # addiu $v1, $v1, -0x2af8 +/* 058D20 80058120 8C620000 */ lw $v0, ($v1) +/* 058D24 80058124 8FA70030 */ lw $a3, 0x30($sp) +/* 058D28 80058128 C444000C */ lwc1 $f4, 0xc($v0) +/* 058D2C 8005812C 8FA5002C */ lw $a1, 0x2c($sp) +/* 058D30 80058130 E7A40024 */ swc1 $f4, 0x24($sp) +/* 058D34 80058134 C4460010 */ lwc1 $f6, 0x10($v0) +/* 058D38 80058138 00000000 */ nop +/* 058D3C 8005813C E7A60020 */ swc1 $f6, 0x20($sp) +/* 058D40 80058140 C4480014 */ lwc1 $f8, 0x14($v0) +/* 058D44 80058144 00000000 */ nop +/* 058D48 80058148 E7A8001C */ swc1 $f8, 0x1c($sp) +/* 058D4C 8005814C A4470036 */ sh $a3, 0x36($v0) +/* 058D50 80058150 8FA60034 */ lw $a2, 0x34($sp) +/* 058D54 80058154 8FA40028 */ lw $a0, 0x28($sp) +/* 058D58 80058158 0C015E90 */ jal func_80057A40 +/* 058D5C 8005815C 00000000 */ nop +/* 058D60 80058160 3C088012 */ lui $t0, %hi(D_8011D540) # $t0, 0x8012 +/* 058D64 80058164 8D08D540 */ lw $t0, %lo(D_8011D540)($t0) +/* 058D68 80058168 3C038012 */ lui $v1, %hi(D_8011D508) # $v1, 0x8012 +/* 058D6C 8005816C 1500001A */ bnez $t0, .L800581D8 +/* 058D70 80058170 2463D508 */ addiu $v1, %lo(D_8011D508) # addiu $v1, $v1, -0x2af8 +/* 058D74 80058174 3C098012 */ lui $t1, %hi(D_8011D582) # $t1, 0x8012 +/* 058D78 80058178 8129D582 */ lb $t1, %lo(D_8011D582)($t1) +/* 058D7C 8005817C 00000000 */ nop +/* 058D80 80058180 15200016 */ bnez $t1, .L800581DC +/* 058D84 80058184 8FBF0014 */ lw $ra, 0x14($sp) +/* 058D88 80058188 8C620000 */ lw $v0, ($v1) +/* 058D8C 8005818C C7AA0024 */ lwc1 $f10, 0x24($sp) +/* 058D90 80058190 C450000C */ lwc1 $f16, 0xc($v0) +/* 058D94 80058194 00000000 */ nop +/* 058D98 80058198 46105481 */ sub.s $f18, $f10, $f16 +/* 058D9C 8005819C E4520024 */ swc1 $f18, 0x24($v0) +/* 058DA0 800581A0 8C620000 */ lw $v0, ($v1) +/* 058DA4 800581A4 C7AA0020 */ lwc1 $f10, 0x20($sp) +/* 058DA8 800581A8 C4440010 */ lwc1 $f4, 0x10($v0) +/* 058DAC 800581AC C4460030 */ lwc1 $f6, 0x30($v0) +/* 058DB0 800581B0 00000000 */ nop +/* 058DB4 800581B4 46062200 */ add.s $f8, $f4, $f6 +/* 058DB8 800581B8 46085401 */ sub.s $f16, $f10, $f8 +/* 058DBC 800581BC E4500028 */ swc1 $f16, 0x28($v0) +/* 058DC0 800581C0 8C620000 */ lw $v0, ($v1) +/* 058DC4 800581C4 C7B2001C */ lwc1 $f18, 0x1c($sp) +/* 058DC8 800581C8 C4440014 */ lwc1 $f4, 0x14($v0) +/* 058DCC 800581CC 00000000 */ nop +/* 058DD0 800581D0 46049181 */ sub.s $f6, $f18, $f4 +/* 058DD4 800581D4 E446002C */ swc1 $f6, 0x2c($v0) +.L800581D8: +/* 058DD8 800581D8 8FBF0014 */ lw $ra, 0x14($sp) +.L800581DC: +/* 058DDC 800581DC 27BD0028 */ addiu $sp, $sp, 0x28 +/* 058DE0 800581E0 03E00008 */ jr $ra +/* 058DE4 800581E4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_800581E8.s b/asm/non_matchings/unknown_043920/func_800581E8.s new file mode 100644 index 00000000..978bbc33 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_800581E8.s @@ -0,0 +1,660 @@ +glabel func_800581E8 +/* 058DE8 800581E8 27BDFF98 */ addiu $sp, $sp, -0x68 +/* 058DEC 800581EC 3C0142F0 */ li $at, 0x42F00000 # 120.000000 +/* 058DF0 800581F0 44818000 */ mtc1 $at, $f16 +/* 058DF4 800581F4 3C014248 */ li $at, 0x42480000 # 50.000000 +/* 058DF8 800581F8 44812000 */ mtc1 $at, $f4 +/* 058DFC 800581FC AFBF0014 */ sw $ra, 0x14($sp) +/* 058E00 80058200 240E0400 */ li $t6, 1024 +/* 058E04 80058204 E7AC0068 */ swc1 $f12, 0x68($sp) +/* 058E08 80058208 AFA5006C */ sw $a1, 0x6c($sp) +/* 058E0C 8005820C AFAE001C */ sw $t6, 0x1c($sp) +/* 058E10 80058210 AFA60070 */ sw $a2, 0x70($sp) +/* 058E14 80058214 E7B00054 */ swc1 $f16, 0x54($sp) +/* 058E18 80058218 0C019884 */ jal func_80066210 +/* 058E1C 8005821C E7A40050 */ swc1 $f4, 0x50($sp) +/* 058E20 80058220 24040001 */ li $a0, 1 +/* 058E24 80058224 8FA70070 */ lw $a3, 0x70($sp) +/* 058E28 80058228 C7B00054 */ lwc1 $f16, 0x54($sp) +/* 058E2C 8005822C 14440005 */ bne $v0, $a0, .L80058244 +/* 058E30 80058230 3C014340 */ li $at, 0x43400000 # 192.000000 +/* 058E34 80058234 44818000 */ mtc1 $at, $f16 +/* 058E38 80058238 240F0200 */ li $t7, 512 +/* 058E3C 8005823C 10000009 */ b .L80058264 +/* 058E40 80058240 AFAF001C */ sw $t7, 0x1c($sp) +.L80058244: +/* 058E44 80058244 28410003 */ slti $at, $v0, 3 +/* 058E48 80058248 14200006 */ bnez $at, .L80058264 +/* 058E4C 8005824C 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 058E50 80058250 44818000 */ mtc1 $at, $f16 +/* 058E54 80058254 3C014220 */ li $at, 0x42200000 # 40.000000 +/* 058E58 80058258 44813000 */ mtc1 $at, $f6 +/* 058E5C 8005825C 00000000 */ nop +/* 058E60 80058260 E7A60050 */ swc1 $f6, 0x50($sp) +.L80058264: +/* 058E64 80058264 AFA70070 */ sw $a3, 0x70($sp) +/* 058E68 80058268 0C008D5A */ jal func_80023568 +/* 058E6C 8005826C E7B00054 */ swc1 $f16, 0x54($sp) +/* 058E70 80058270 24040001 */ li $a0, 1 +/* 058E74 80058274 8FA70070 */ lw $a3, 0x70($sp) +/* 058E78 80058278 C7B00054 */ lwc1 $f16, 0x54($sp) +/* 058E7C 8005827C 10440002 */ beq $v0, $a0, .L80058288 +/* 058E80 80058280 24010004 */ li $at, 4 +/* 058E84 80058284 14410012 */ bne $v0, $at, .L800582D0 +.L80058288: +/* 058E88 80058288 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 +/* 058E8C 8005828C 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 +/* 058E90 80058290 3C014310 */ li $at, 0x43100000 # 144.000000 +/* 058E94 80058294 44810000 */ mtc1 $at, $f0 +/* 058E98 80058298 8D180000 */ lw $t8, ($t0) +/* 058E9C 8005829C 3C0142DC */ li $at, 0x42DC0000 # 110.000000 +/* 058EA0 800582A0 9319003B */ lbu $t9, 0x3b($t8) +/* 058EA4 800582A4 44819000 */ mtc1 $at, $f18 +/* 058EA8 800582A8 24010003 */ li $at, 3 +/* 058EAC 800582AC 17210005 */ bne $t9, $at, .L800582C4 +/* 058EB0 800582B0 46000406 */ mov.s $f16, $f0 +/* 058EB4 800582B4 3C0141F0 */ li $at, 0x41F00000 # 30.000000 +/* 058EB8 800582B8 44814000 */ mtc1 $at, $f8 +/* 058EBC 800582BC 00000000 */ nop +/* 058EC0 800582C0 46080400 */ add.s $f16, $f0, $f8 +.L800582C4: +/* 058EC4 800582C4 24090D00 */ li $t1, 3328 +/* 058EC8 800582C8 AFA9001C */ sw $t1, 0x1c($sp) +/* 058ECC 800582CC E7B20050 */ swc1 $f18, 0x50($sp) +.L800582D0: +/* 058ED0 800582D0 84EA01A0 */ lh $t2, 0x1a0($a3) +/* 058ED4 800582D4 84E2019E */ lh $v0, 0x19e($a3) +/* 058ED8 800582D8 000A5823 */ negu $t3, $t2 +/* 058EDC 800582DC 34018000 */ li $at, 32768 +/* 058EE0 800582E0 01626023 */ subu $t4, $t3, $v0 +/* 058EE4 800582E4 01816821 */ addu $t5, $t4, $at +/* 058EE8 800582E8 000218C3 */ sra $v1, $v0, 3 +/* 058EEC 800582EC 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 +/* 058EF0 800582F0 C7B20050 */ lwc1 $f18, 0x50($sp) +/* 058EF4 800582F4 28610401 */ slti $at, $v1, 0x401 +/* 058EF8 800582F8 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 +/* 058EFC 800582FC 14200002 */ bnez $at, .L80058308 +/* 058F00 80058300 A4ED0196 */ sh $t5, 0x196($a3) +/* 058F04 80058304 24030400 */ li $v1, 1024 +.L80058308: +/* 058F08 80058308 2861FC00 */ slti $at, $v1, -0x400 +/* 058F0C 8005830C 10200002 */ beqz $at, .L80058318 +/* 058F10 80058310 00000000 */ nop +/* 058F14 80058314 2403FC00 */ li $v1, -1024 +.L80058318: +/* 058F18 80058318 444EF800 */ cfc1 $t6, $31 +/* 058F1C 8005831C C7AA0068 */ lwc1 $f10, 0x68($sp) +/* 058F20 80058320 35C10003 */ ori $at, $t6, 3 +/* 058F24 80058324 38210002 */ xori $at, $at, 2 +/* 058F28 80058328 44C1F800 */ ctc1 $at, $31 +/* 058F2C 8005832C 00000000 */ nop +/* 058F30 80058330 46005124 */ cvt.w.s $f4, $f10 +/* 058F34 80058334 44062000 */ mfc1 $a2, $f4 +/* 058F38 80058338 44CEF800 */ ctc1 $t6, $31 +/* 058F3C 8005833C 00660019 */ multu $v1, $a2 +/* 058F40 80058340 00001812 */ mflo $v1 +/* 058F44 80058344 18600004 */ blez $v1, .L80058358 +/* 058F48 80058348 0062082A */ slt $at, $v1, $v0 +/* 058F4C 8005834C 10200002 */ beqz $at, .L80058358 +/* 058F50 80058350 00437823 */ subu $t7, $v0, $v1 +/* 058F54 80058354 A4EF019E */ sh $t7, 0x19e($a3) +.L80058358: +/* 058F58 80058358 04610007 */ bgez $v1, .L80058378 +/* 058F5C 8005835C 00000000 */ nop +/* 058F60 80058360 84E2019E */ lh $v0, 0x19e($a3) +/* 058F64 80058364 00000000 */ nop +/* 058F68 80058368 0043082A */ slt $at, $v0, $v1 +/* 058F6C 8005836C 10200002 */ beqz $at, .L80058378 +/* 058F70 80058370 0043C023 */ subu $t8, $v0, $v1 +/* 058F74 80058374 A4F8019E */ sh $t8, 0x19e($a3) +.L80058378: +/* 058F78 80058378 8D050000 */ lw $a1, ($t0) +/* 058F7C 8005837C C4EE00B8 */ lwc1 $f14, 0xb8($a3) +/* 058F80 80058380 90A2003B */ lbu $v0, 0x3b($a1) +/* 058F84 80058384 C4E20008 */ lwc1 $f2, 8($a3) +/* 058F88 80058388 10440007 */ beq $v0, $a0, .L800583A8 +/* 058F8C 8005838C 24010002 */ li $at, 2 +/* 058F90 80058390 10410009 */ beq $v0, $at, .L800583B8 +/* 058F94 80058394 24010003 */ li $at, 3 +/* 058F98 80058398 1041000F */ beq $v0, $at, .L800583D8 +/* 058F9C 8005839C 3C014254 */ lui $at, 0x4254 +/* 058FA0 800583A0 1000001A */ b .L8005840C +/* 058FA4 800583A4 80F901E2 */ lb $t9, 0x1e2($a3) +.L800583A8: +/* 058FA8 800583A8 3C01420C */ li $at, 0x420C0000 # 35.000000 +/* 058FAC 800583AC 44813000 */ mtc1 $at, $f6 +/* 058FB0 800583B0 10000015 */ b .L80058408 +/* 058FB4 800583B4 46068400 */ add.s $f16, $f16, $f6 +.L800583B8: +/* 058FB8 800583B8 3C01420C */ li $at, 0x420C0000 # 35.000000 +/* 058FBC 800583BC 44814000 */ mtc1 $at, $f8 +/* 058FC0 800583C0 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 058FC4 800583C4 44815000 */ mtc1 $at, $f10 +/* 058FC8 800583C8 46088401 */ sub.s $f16, $f16, $f8 +/* 058FCC 800583CC 1000000E */ b .L80058408 +/* 058FD0 800583D0 460A9481 */ sub.s $f18, $f18, $f10 +/* 058FD4 800583D4 3C014254 */ li $at, 0x42540000 # 53.000000 +.L800583D8: +/* 058FD8 800583D8 44812000 */ mtc1 $at, $f4 +/* 058FDC 800583DC 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 058FE0 800583E0 44813000 */ mtc1 $at, $f6 +/* 058FE4 800583E4 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 058FE8 800583E8 44815800 */ mtc1 $at, $f11 +/* 058FEC 800583EC 44805000 */ mtc1 $zero, $f10 +/* 058FF0 800583F0 46001221 */ cvt.d.s $f8, $f2 +/* 058FF4 800583F4 46048401 */ sub.s $f16, $f16, $f4 +/* 058FF8 800583F8 44807000 */ mtc1 $zero, $f14 +/* 058FFC 800583FC 462A4102 */ mul.d $f4, $f8, $f10 +/* 059000 80058400 46069481 */ sub.s $f18, $f18, $f6 +/* 059004 80058404 462020A0 */ cvt.s.d $f2, $f4 +.L80058408: +/* 059008 80058408 80F901E2 */ lb $t9, 0x1e2($a3) +.L8005840C: +/* 05900C 8005840C 44804800 */ mtc1 $zero, $f9 +/* 059010 80058410 2B210003 */ slti $at, $t9, 3 +/* 059014 80058414 10200006 */ beqz $at, .L80058430 +/* 059018 80058418 8FAA006C */ lw $t2, 0x6c($sp) +/* 05901C 8005841C 80E901E5 */ lb $t1, 0x1e5($a3) +/* 059020 80058420 00000000 */ nop +/* 059024 80058424 11200024 */ beqz $t1, .L800584B8 +/* 059028 80058428 00000000 */ nop +/* 05902C 8005842C 8FAA006C */ lw $t2, 0x6c($sp) +.L80058430: +/* 059030 80058430 8FAC001C */ lw $t4, 0x1c($sp) +/* 059034 80058434 85420002 */ lh $v0, 2($t2) +/* 059038 80058438 34018001 */ li $at, 32769 +/* 05903C 8005843C 18400008 */ blez $v0, .L80058460 +/* 059040 80058440 00000000 */ nop +/* 059044 80058444 2442F8E4 */ addiu $v0, $v0, -0x71c +/* 059048 80058448 04410003 */ bgez $v0, .L80058458 +/* 05904C 8005844C 00025843 */ sra $t3, $v0, 1 +/* 059050 80058450 00001025 */ move $v0, $zero +/* 059054 80058454 00025843 */ sra $t3, $v0, 1 +.L80058458: +/* 059058 80058458 10000005 */ b .L80058470 +/* 05905C 8005845C 01601025 */ move $v0, $t3 +.L80058460: +/* 059060 80058460 2442071C */ addiu $v0, $v0, 0x71c +/* 059064 80058464 18400002 */ blez $v0, .L80058470 +/* 059068 80058468 00000000 */ nop +/* 05906C 8005846C 00001025 */ move $v0, $zero +.L80058470: +/* 059070 80058470 84A40002 */ lh $a0, 2($a1) +/* 059074 80058474 01821023 */ subu $v0, $t4, $v0 +/* 059078 80058478 308DFFFF */ andi $t5, $a0, 0xffff +/* 05907C 8005847C 004D1823 */ subu $v1, $v0, $t5 +/* 059080 80058480 0061082A */ slt $at, $v1, $at +/* 059084 80058484 14200003 */ bnez $at, .L80058494 +/* 059088 80058488 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 05908C 8005848C 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 059090 80058490 00611821 */ addu $v1, $v1, $at +.L80058494: +/* 059094 80058494 28618000 */ slti $at, $v1, -0x8000 +/* 059098 80058498 10200002 */ beqz $at, .L800584A4 +/* 05909C 8005849C 3401FFFF */ li $at, 65535 +/* 0590A0 800584A0 00611821 */ addu $v1, $v1, $at +.L800584A4: +/* 0590A4 800584A4 00660019 */ multu $v1, $a2 +/* 0590A8 800584A8 00007012 */ mflo $t6 +/* 0590AC 800584AC 000E7903 */ sra $t7, $t6, 4 +/* 0590B0 800584B0 008FC021 */ addu $t8, $a0, $t7 +/* 0590B4 800584B4 A4B80002 */ sh $t8, 2($a1) +.L800584B8: +/* 0590B8 800584B8 C4E0002C */ lwc1 $f0, 0x2c($a3) +/* 0590BC 800584BC 44804000 */ mtc1 $zero, $f8 +/* 0590C0 800584C0 460001A1 */ cvt.d.s $f6, $f0 +/* 0590C4 800584C4 4628303C */ c.lt.d $f6, $f8 +/* 0590C8 800584C8 3C0A8012 */ lui $t2, %hi(D_8011D540) # $t2, 0x8012 +/* 0590CC 800584CC 45000016 */ bc1f .L80058528 +/* 0590D0 800584D0 00000000 */ nop +/* 0590D4 800584D4 460E0282 */ mul.s $f10, $f0, $f14 +/* 0590D8 800584D8 80F901E6 */ lb $t9, 0x1e6($a3) +/* 0590DC 800584DC 3C0140C0 */ li $at, 0x40C00000 # 6.000000 +/* 0590E0 800584E0 44816000 */ mtc1 $at, $f12 +/* 0590E4 800584E4 13200004 */ beqz $t9, .L800584F8 +/* 0590E8 800584E8 46005107 */ neg.s $f4, $f10 +/* 0590EC 800584EC 3C014040 */ li $at, 0x40400000 # 3.000000 +/* 0590F0 800584F0 44816000 */ mtc1 $at, $f12 +/* 0590F4 800584F4 00000000 */ nop +.L800584F8: +/* 0590F8 800584F8 460C2302 */ mul.s $f12, $f4, $f12 +/* 0590FC 800584FC 3C01800E */ lui $at, %hi(D_800E6914) # $at, 0x800e +/* 059100 80058500 C4276910 */ lwc1 $f7, %lo(D_800E6910)($at) +/* 059104 80058504 C4266914 */ lwc1 $f6, %lo(D_800E6914)($at) +/* 059108 80058508 46006221 */ cvt.d.s $f8, $f12 +/* 05910C 8005850C 4628303C */ c.lt.d $f6, $f8 +/* 059110 80058510 3C014282 */ li $at, 0x42820000 # 65.000000 +/* 059114 80058514 45000003 */ bc1f .L80058524 +/* 059118 80058518 00000000 */ nop +/* 05911C 8005851C 44816000 */ mtc1 $at, $f12 +/* 059120 80058520 00000000 */ nop +.L80058524: +/* 059124 80058524 460C8401 */ sub.s $f16, $f16, $f12 +.L80058528: +/* 059128 80058528 80E901E6 */ lb $t1, 0x1e6($a3) +/* 05912C 8005852C 00000000 */ nop +/* 059130 80058530 15200006 */ bnez $t1, .L8005854C +/* 059134 80058534 3C014270 */ li $at, 0x42700000 # 60.000000 +/* 059138 80058538 44815000 */ mtc1 $at, $f10 +/* 05913C 8005853C 00000000 */ nop +/* 059140 80058540 460A1102 */ mul.s $f4, $f2, $f10 +/* 059144 80058544 10000006 */ b .L80058560 +/* 059148 80058548 46048400 */ add.s $f16, $f16, $f4 +.L8005854C: +/* 05914C 8005854C 3C0141F0 */ li $at, 0x41F00000 # 30.000000 +/* 059150 80058550 44813000 */ mtc1 $at, $f6 +/* 059154 80058554 00000000 */ nop +/* 059158 80058558 46061202 */ mul.s $f8, $f2, $f6 +/* 05915C 8005855C 46088400 */ add.s $f16, $f16, $f8 +.L80058560: +/* 059160 80058560 8D4AD540 */ lw $t2, %lo(D_8011D540)($t2) +/* 059164 80058564 E7B20050 */ swc1 $f18, 0x50($sp) +/* 059168 80058568 15400014 */ bnez $t2, .L800585BC +/* 05916C 8005856C 24040024 */ li $a0, 36 +/* 059170 80058570 AFA70070 */ sw $a3, 0x70($sp) +/* 059174 80058574 E7B00054 */ swc1 $f16, 0x54($sp) +/* 059178 80058578 0C00322D */ jal func_8000C8B4 +/* 05917C 8005857C E7B20050 */ swc1 $f18, 0x50($sp) +/* 059180 80058580 8FA70070 */ lw $a3, 0x70($sp) +/* 059184 80058584 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 +/* 059188 80058588 80E301D3 */ lb $v1, 0x1d3($a3) +/* 05918C 8005858C C7B00054 */ lwc1 $f16, 0x54($sp) +/* 059190 80058590 0043082A */ slt $at, $v0, $v1 +/* 059194 80058594 10200005 */ beqz $at, .L800585AC +/* 059198 80058598 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 +/* 05919C 8005859C 3C01C1F0 */ li $at, 0xC1F00000 # -30.000000 +/* 0591A0 800585A0 44818000 */ mtc1 $at, $f16 +/* 0591A4 800585A4 10000005 */ b .L800585BC +/* 0591A8 800585A8 00000000 */ nop +.L800585AC: +/* 0591AC 800585AC 18600003 */ blez $v1, .L800585BC +/* 0591B0 800585B0 3C014334 */ li $at, 0x43340000 # 180.000000 +/* 0591B4 800585B4 44818000 */ mtc1 $at, $f16 +/* 0591B8 800585B8 00000000 */ nop +.L800585BC: +/* 0591BC 800585BC 3C0B8012 */ lui $t3, %hi(D_8011D540) # $t3, 0x8012 +/* 0591C0 800585C0 8D6BD540 */ lw $t3, %lo(D_8011D540)($t3) +/* 0591C4 800585C4 C7B20050 */ lwc1 $f18, 0x50($sp) +/* 0591C8 800585C8 8D050000 */ lw $a1, ($t0) +/* 0591CC 800585CC 29610051 */ slti $at, $t3, 0x51 +/* 0591D0 800585D0 14200007 */ bnez $at, .L800585F0 +/* 0591D4 800585D4 00000000 */ nop +/* 0591D8 800585D8 E4B0001C */ swc1 $f16, 0x1c($a1) +/* 0591DC 800585DC 8D0C0000 */ lw $t4, ($t0) +/* 0591E0 800585E0 00000000 */ nop +/* 0591E4 800585E4 E5920020 */ swc1 $f18, 0x20($t4) +/* 0591E8 800585E8 8D050000 */ lw $a1, ($t0) +/* 0591EC 800585EC 00000000 */ nop +.L800585F0: +/* 0591F0 800585F0 C4A2001C */ lwc1 $f2, 0x1c($a1) +/* 0591F4 800585F4 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 0591F8 800585F8 46028101 */ sub.s $f4, $f16, $f2 +/* 0591FC 800585FC 44810800 */ mtc1 $at, $f1 +/* 059200 80058600 44800000 */ mtc1 $zero, $f0 +/* 059204 80058604 460021A1 */ cvt.d.s $f6, $f4 +/* 059208 80058608 46203202 */ mul.d $f8, $f6, $f0 +/* 05920C 8005860C 460012A1 */ cvt.d.s $f10, $f2 +/* 059210 80058610 46285100 */ add.d $f4, $f10, $f8 +/* 059214 80058614 462021A0 */ cvt.s.d $f6, $f4 +/* 059218 80058618 E4A6001C */ swc1 $f6, 0x1c($a1) +/* 05921C 8005861C 8D050000 */ lw $a1, ($t0) +/* 059220 80058620 00000000 */ nop +/* 059224 80058624 C4AE0020 */ lwc1 $f14, 0x20($a1) +/* 059228 80058628 00000000 */ nop +/* 05922C 8005862C 460E9201 */ sub.s $f8, $f18, $f14 +/* 059230 80058630 46004121 */ cvt.d.s $f4, $f8 +/* 059234 80058634 46202182 */ mul.d $f6, $f4, $f0 +/* 059238 80058638 460072A1 */ cvt.d.s $f10, $f14 +/* 05923C 8005863C 46265200 */ add.d $f8, $f10, $f6 +/* 059240 80058640 46204120 */ cvt.s.d $f4, $f8 +/* 059244 80058644 E4A40020 */ swc1 $f4, 0x20($a1) +/* 059248 80058648 8D0D0000 */ lw $t5, ($t0) +/* 05924C 8005864C 8FAF001C */ lw $t7, 0x1c($sp) +/* 059250 80058650 85AE0002 */ lh $t6, 2($t5) +/* 059254 80058654 AFA70070 */ sw $a3, 0x70($sp) +/* 059258 80058658 01CF2023 */ subu $a0, $t6, $t7 +/* 05925C 8005865C 0004C400 */ sll $t8, $a0, 0x10 +/* 059260 80058660 0C01C1F1 */ jal func_800707C4 +/* 059264 80058664 00182403 */ sra $a0, $t8, 0x10 +/* 059268 80058668 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 +/* 05926C 8005866C 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 +/* 059270 80058670 8D090000 */ lw $t1, ($t0) +/* 059274 80058674 8FAB001C */ lw $t3, 0x1c($sp) +/* 059278 80058678 852A0002 */ lh $t2, 2($t1) +/* 05927C 8005867C E7A00038 */ swc1 $f0, 0x38($sp) +/* 059280 80058680 014B2023 */ subu $a0, $t2, $t3 +/* 059284 80058684 00046400 */ sll $t4, $a0, 0x10 +/* 059288 80058688 0C01C1FE */ jal func_800707F8 +/* 05928C 8005868C 000C2403 */ sra $a0, $t4, 0x10 +/* 059290 80058690 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 +/* 059294 80058694 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 +/* 059298 80058698 8D050000 */ lw $a1, ($t0) +/* 05929C 8005869C C7B00038 */ lwc1 $f16, 0x38($sp) +/* 0592A0 800586A0 C4A2001C */ lwc1 $f2, 0x1c($a1) +/* 0592A4 800586A4 C4AE0020 */ lwc1 $f14, 0x20($a1) +/* 0592A8 800586A8 46001282 */ mul.s $f10, $f2, $f0 +/* 0592AC 800586AC 8FA70070 */ lw $a3, 0x70($sp) +/* 0592B0 800586B0 340F8000 */ li $t7, 32768 +/* 0592B4 800586B4 46107182 */ mul.s $f6, $f14, $f16 +/* 0592B8 800586B8 00000000 */ nop +/* 0592BC 800586BC 46101202 */ mul.s $f8, $f2, $f16 +/* 0592C0 800586C0 46065301 */ sub.s $f12, $f10, $f6 +/* 0592C4 800586C4 46007102 */ mul.s $f4, $f14, $f0 +/* 0592C8 800586C8 46044280 */ add.s $f10, $f8, $f4 +/* 0592CC 800586CC E7AA0050 */ swc1 $f10, 0x50($sp) +/* 0592D0 800586D0 84EE0196 */ lh $t6, 0x196($a3) +/* 0592D4 800586D4 E7AC0040 */ swc1 $f12, 0x40($sp) +/* 0592D8 800586D8 01EE2023 */ subu $a0, $t7, $t6 +/* 0592DC 800586DC 0004C400 */ sll $t8, $a0, 0x10 +/* 0592E0 800586E0 0C01C1F1 */ jal func_800707C4 +/* 0592E4 800586E4 00182403 */ sra $a0, $t8, 0x10 +/* 0592E8 800586E8 C7AC0040 */ lwc1 $f12, 0x40($sp) +/* 0592EC 800586EC 8FA70070 */ lw $a3, 0x70($sp) +/* 0592F0 800586F0 460C0182 */ mul.s $f6, $f0, $f12 +/* 0592F4 800586F4 340A8000 */ li $t2, 32768 +/* 0592F8 800586F8 E7A60048 */ swc1 $f6, 0x48($sp) +/* 0592FC 800586FC 84E90196 */ lh $t1, 0x196($a3) +/* 059300 80058700 00000000 */ nop +/* 059304 80058704 01492023 */ subu $a0, $t2, $t1 +/* 059308 80058708 00045C00 */ sll $t3, $a0, 0x10 +/* 05930C 8005870C 0C01C1FE */ jal func_800707F8 +/* 059310 80058710 000B2403 */ sra $a0, $t3, 0x10 +/* 059314 80058714 C7AC0040 */ lwc1 $f12, 0x40($sp) +/* 059318 80058718 3C0D8012 */ lui $t5, %hi(D_8011D528) # $t5, 0x8012 +/* 05931C 8005871C 460C0202 */ mul.s $f8, $f0, $f12 +/* 059320 80058720 8DADD528 */ lw $t5, %lo(D_8011D528)($t5) +/* 059324 80058724 44807000 */ mtc1 $zero, $f14 +/* 059328 80058728 8FA70070 */ lw $a3, 0x70($sp) +/* 05932C 8005872C 31AF8000 */ andi $t7, $t5, 0x8000 +/* 059330 80058730 E7A80044 */ swc1 $f8, 0x44($sp) +/* 059334 80058734 11E00023 */ beqz $t7, .L800587C4 +/* 059338 80058738 46007086 */ mov.s $f2, $f14 +/* 05933C 8005873C 3C01800E */ lui $at, %hi(D_800E691C) # $at, 0x800e +/* 059340 80058740 C4E40030 */ lwc1 $f4, 0x30($a3) +/* 059344 80058744 C4276918 */ lwc1 $f7, %lo(D_800E6918)($at) +/* 059348 80058748 C426691C */ lwc1 $f6, %lo(D_800E691C)($at) +/* 05934C 8005874C 460022A1 */ cvt.d.s $f10, $f4 +/* 059350 80058750 46265202 */ mul.d $f8, $f10, $f6 +/* 059354 80058754 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 +/* 059358 80058758 462040A0 */ cvt.s.d $f2, $f8 +/* 05935C 8005875C 4602703C */ c.lt.s $f14, $f2 +/* 059360 80058760 00000000 */ nop +/* 059364 80058764 4500000D */ bc1f .L8005879C +/* 059368 80058768 00000000 */ nop +/* 05936C 8005876C 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 +/* 059370 80058770 44815800 */ mtc1 $at, $f11 +/* 059374 80058774 44805000 */ mtc1 $zero, $f10 +/* 059378 80058778 46001121 */ cvt.d.s $f4, $f2 +/* 05937C 8005877C 462A2181 */ sub.d $f6, $f4, $f10 +/* 059380 80058780 462030A0 */ cvt.s.d $f2, $f6 +/* 059384 80058784 460E103C */ c.lt.s $f2, $f14 +/* 059388 80058788 00000000 */ nop +/* 05938C 8005878C 4500000D */ bc1f .L800587C4 +/* 059390 80058790 00000000 */ nop +/* 059394 80058794 1000000B */ b .L800587C4 +/* 059398 80058798 46007086 */ mov.s $f2, $f14 +.L8005879C: +/* 05939C 8005879C 44812800 */ mtc1 $at, $f5 +/* 0593A0 800587A0 44802000 */ mtc1 $zero, $f4 +/* 0593A4 800587A4 46001221 */ cvt.d.s $f8, $f2 +/* 0593A8 800587A8 46244280 */ add.d $f10, $f8, $f4 +/* 0593AC 800587AC 462050A0 */ cvt.s.d $f2, $f10 +/* 0593B0 800587B0 4602703C */ c.lt.s $f14, $f2 +/* 0593B4 800587B4 00000000 */ nop +/* 0593B8 800587B8 45000002 */ bc1f .L800587C4 +/* 0593BC 800587BC 00000000 */ nop +/* 0593C0 800587C0 46007086 */ mov.s $f2, $f14 +.L800587C4: +/* 0593C4 800587C4 80E201E6 */ lb $v0, 0x1e6($a3) +/* 0593C8 800587C8 00000000 */ nop +/* 0593CC 800587CC 10400008 */ beqz $v0, .L800587F0 +/* 0593D0 800587D0 00000000 */ nop +/* 0593D4 800587D4 44823000 */ mtc1 $v0, $f6 +/* 0593D8 800587D8 3C014140 */ li $at, 0x41400000 # 12.000000 +/* 0593DC 800587DC 46803220 */ cvt.s.w $f8, $f6 +/* 0593E0 800587E0 44815000 */ mtc1 $at, $f10 +/* 0593E4 800587E4 46004107 */ neg.s $f4, $f8 +/* 0593E8 800587E8 460A2082 */ mul.s $f2, $f4, $f10 +/* 0593EC 800587EC 00000000 */ nop +.L800587F0: +/* 0593F0 800587F0 C4E000C8 */ lwc1 $f0, 0xc8($a3) +/* 0593F4 800587F4 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 0593F8 800587F8 46001181 */ sub.s $f6, $f2, $f0 +/* 0593FC 800587FC 44812800 */ mtc1 $at, $f5 +/* 059400 80058800 44802000 */ mtc1 $zero, $f4 +/* 059404 80058804 46003221 */ cvt.d.s $f8, $f6 +/* 059408 80058808 46244282 */ mul.d $f10, $f8, $f4 +/* 05940C 8005880C 460001A1 */ cvt.d.s $f6, $f0 +/* 059410 80058810 80EE01DB */ lb $t6, 0x1db($a3) +/* 059414 80058814 462A3200 */ add.d $f8, $f6, $f10 +/* 059418 80058818 46204120 */ cvt.s.d $f4, $f8 +/* 05941C 8005881C 11C0000B */ beqz $t6, .L8005884C +/* 059420 80058820 E4E400C8 */ swc1 $f4, 0xc8($a3) +/* 059424 80058824 C4E60094 */ lwc1 $f6, 0x94($a3) +/* 059428 80058828 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 05942C 8005882C 44815800 */ mtc1 $at, $f11 +/* 059430 80058830 44805000 */ mtc1 $zero, $f10 +/* 059434 80058834 46003021 */ cvt.d.s $f0, $f6 +/* 059438 80058838 462A0202 */ mul.d $f8, $f0, $f10 +/* 05943C 8005883C 46280101 */ sub.d $f4, $f0, $f8 +/* 059440 80058840 462021A0 */ cvt.s.d $f6, $f4 +/* 059444 80058844 1000000E */ b .L80058880 +/* 059448 80058848 E4E60094 */ swc1 $f6, 0x94($a3) +.L8005884C: +/* 05944C 8005884C 3C014024 */ li $at, 0x40240000 # 2.562500 +/* 059450 80058850 44814800 */ mtc1 $at, $f9 +/* 059454 80058854 C4EA0094 */ lwc1 $f10, 0x94($a3) +/* 059458 80058858 44804000 */ mtc1 $zero, $f8 +/* 05945C 8005885C 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 059460 80058860 46005021 */ cvt.d.s $f0, $f10 +/* 059464 80058864 44813800 */ mtc1 $at, $f7 +/* 059468 80058868 44803000 */ mtc1 $zero, $f6 +/* 05946C 8005886C 46204101 */ sub.d $f4, $f8, $f0 +/* 059470 80058870 46262282 */ mul.d $f10, $f4, $f6 +/* 059474 80058874 462A0200 */ add.d $f8, $f0, $f10 +/* 059478 80058878 46204120 */ cvt.s.d $f4, $f8 +/* 05947C 8005887C E4E40094 */ swc1 $f4, 0x94($a3) +.L80058880: +/* 059480 80058880 C4E00094 */ lwc1 $f0, 0x94($a3) +/* 059484 80058884 C4EA0038 */ lwc1 $f10, 0x38($a3) +/* 059488 80058888 8FA2006C */ lw $v0, 0x6c($sp) +/* 05948C 8005888C 46005202 */ mul.s $f8, $f10, $f0 +/* 059490 80058890 C446000C */ lwc1 $f6, 0xc($v0) +/* 059494 80058894 00000000 */ nop +/* 059498 80058898 46083101 */ sub.s $f4, $f6, $f8 +/* 05949C 8005889C E7A40030 */ swc1 $f4, 0x30($sp) +/* 0594A0 800588A0 C4E6003C */ lwc1 $f6, 0x3c($a3) +/* 0594A4 800588A4 C44A0010 */ lwc1 $f10, 0x10($v0) +/* 0594A8 800588A8 46003202 */ mul.s $f8, $f6, $f0 +/* 0594AC 800588AC 46085101 */ sub.s $f4, $f10, $f8 +/* 0594B0 800588B0 E7A4002C */ swc1 $f4, 0x2c($sp) +/* 0594B4 800588B4 C4EA0040 */ lwc1 $f10, 0x40($a3) +/* 0594B8 800588B8 C4460014 */ lwc1 $f6, 0x14($v0) +/* 0594BC 800588BC 46005202 */ mul.s $f8, $f10, $f0 +/* 0594C0 800588C0 46083101 */ sub.s $f4, $f6, $f8 +/* 0594C4 800588C4 E7A40028 */ swc1 $f4, 0x28($sp) +/* 0594C8 800588C8 84E40196 */ lh $a0, 0x196($a3) +/* 0594CC 800588CC AFA70070 */ sw $a3, 0x70($sp) +/* 0594D0 800588D0 24844000 */ addiu $a0, $a0, 0x4000 +/* 0594D4 800588D4 0004C400 */ sll $t8, $a0, 0x10 +/* 0594D8 800588D8 0C01C1F1 */ jal func_800707C4 +/* 0594DC 800588DC 00182403 */ sra $a0, $t8, 0x10 +/* 0594E0 800588E0 8FA70070 */ lw $a3, 0x70($sp) +/* 0594E4 800588E4 C7A60030 */ lwc1 $f6, 0x30($sp) +/* 0594E8 800588E8 C4EA00C8 */ lwc1 $f10, 0xc8($a3) +/* 0594EC 800588EC C7A80048 */ lwc1 $f8, 0x48($sp) +/* 0594F0 800588F0 460A0302 */ mul.s $f12, $f0, $f10 +/* 0594F4 800588F4 46083100 */ add.s $f4, $f6, $f8 +/* 0594F8 800588F8 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 +/* 0594FC 800588FC 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 +/* 059500 80058900 8D0A0000 */ lw $t2, ($t0) +/* 059504 80058904 460C2280 */ add.s $f10, $f4, $f12 +/* 059508 80058908 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 05950C 8005890C E54A000C */ swc1 $f10, 0xc($t2) +/* 059510 80058910 C7A80050 */ lwc1 $f8, 0x50($sp) +/* 059514 80058914 C7A6002C */ lwc1 $f6, 0x2c($sp) +/* 059518 80058918 8D050000 */ lw $a1, ($t0) +/* 05951C 8005891C 46083480 */ add.s $f18, $f6, $f8 +/* 059520 80058920 C4AE0010 */ lwc1 $f14, 0x10($a1) +/* 059524 80058924 44803000 */ mtc1 $zero, $f6 +/* 059528 80058928 46127101 */ sub.s $f4, $f14, $f18 +/* 05952C 8005892C 44813800 */ mtc1 $at, $f7 +/* 059530 80058930 460022A1 */ cvt.d.s $f10, $f4 +/* 059534 80058934 46265202 */ mul.d $f8, $f10, $f6 +/* 059538 80058938 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 05953C 8005893C 44812800 */ mtc1 $at, $f5 +/* 059540 80058940 44802000 */ mtc1 $zero, $f4 +/* 059544 80058944 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 059548 80058948 46204420 */ cvt.s.d $f16, $f8 +/* 05954C 8005894C 3C098012 */ lui $t1, %hi(D_8011D540) # $t1, 0x8012 +/* 059550 80058950 460080A1 */ cvt.d.s $f2, $f16 +/* 059554 80058954 4624103C */ c.lt.d $f2, $f4 +/* 059558 80058958 00000000 */ nop +/* 05955C 8005895C 4500000C */ bc1f .L80058990 +/* 059560 80058960 00000000 */ nop +/* 059564 80058964 44813800 */ mtc1 $at, $f7 +/* 059568 80058968 44803000 */ mtc1 $zero, $f6 +/* 05956C 8005896C 460072A1 */ cvt.d.s $f10, $f14 +/* 059570 80058970 46261200 */ add.d $f8, $f2, $f6 +/* 059574 80058974 46285101 */ sub.d $f4, $f10, $f8 +/* 059578 80058978 462021A0 */ cvt.s.d $f6, $f4 +/* 05957C 8005897C E4A60010 */ swc1 $f6, 0x10($a1) +/* 059580 80058980 8D050000 */ lw $a1, ($t0) +/* 059584 80058984 00000000 */ nop +/* 059588 80058988 C4AE0010 */ lwc1 $f14, 0x10($a1) +/* 05958C 8005898C 00000000 */ nop +.L80058990: +/* 059590 80058990 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 059594 80058994 44814800 */ mtc1 $at, $f9 +/* 059598 80058998 44804000 */ mtc1 $zero, $f8 +/* 05959C 8005899C 460072A1 */ cvt.d.s $f10, $f14 +/* 0595A0 800589A0 46281102 */ mul.d $f4, $f2, $f8 +/* 0595A4 800589A4 46245181 */ sub.d $f6, $f10, $f4 +/* 0595A8 800589A8 44805000 */ mtc1 $zero, $f10 +/* 0595AC 800589AC 46203220 */ cvt.s.d $f8, $f6 +/* 0595B0 800589B0 4610503C */ c.lt.s $f10, $f16 +/* 0595B4 800589B4 E4A80010 */ swc1 $f8, 0x10($a1) +/* 0595B8 800589B8 45010005 */ bc1t .L800589D0 +/* 0595BC 800589BC 00000000 */ nop +/* 0595C0 800589C0 8D29D540 */ lw $t1, %lo(D_8011D540)($t1) +/* 0595C4 800589C4 00000000 */ nop +/* 0595C8 800589C8 11200004 */ beqz $t1, .L800589DC +/* 0595CC 800589CC 00000000 */ nop +.L800589D0: +/* 0595D0 800589D0 8D0B0000 */ lw $t3, ($t0) +/* 0595D4 800589D4 00000000 */ nop +/* 0595D8 800589D8 E5720010 */ swc1 $f18, 0x10($t3) +.L800589DC: +/* 0595DC 800589DC 84E40196 */ lh $a0, 0x196($a3) +/* 0595E0 800589E0 AFA70070 */ sw $a3, 0x70($sp) +/* 0595E4 800589E4 24844000 */ addiu $a0, $a0, 0x4000 +/* 0595E8 800589E8 00046400 */ sll $t4, $a0, 0x10 +/* 0595EC 800589EC 0C01C1FE */ jal func_800707F8 +/* 0595F0 800589F0 000C2403 */ sra $a0, $t4, 0x10 +/* 0595F4 800589F4 8FA70070 */ lw $a3, 0x70($sp) +/* 0595F8 800589F8 46000107 */ neg.s $f4, $f0 +/* 0595FC 800589FC C4E600C8 */ lwc1 $f6, 0xc8($a3) +/* 059600 80058A00 C7A80028 */ lwc1 $f8, 0x28($sp) +/* 059604 80058A04 46062302 */ mul.s $f12, $f4, $f6 +/* 059608 80058A08 C7AA0044 */ lwc1 $f10, 0x44($sp) +/* 05960C 80058A0C 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 +/* 059610 80058A10 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 +/* 059614 80058A14 460A4100 */ add.s $f4, $f8, $f10 +/* 059618 80058A18 8D0F0000 */ lw $t7, ($t0) +/* 05961C 80058A1C 460C2180 */ add.s $f6, $f4, $f12 +/* 059620 80058A20 3C098012 */ lui $t1, %hi(D_8011D586) # $t1, 0x8012 +/* 059624 80058A24 E5E60014 */ swc1 $f6, 0x14($t7) +/* 059628 80058A28 8D180000 */ lw $t8, ($t0) +/* 05962C 80058A2C 84EE0196 */ lh $t6, 0x196($a3) +/* 059630 80058A30 240F2000 */ li $t7, 8192 +/* 059634 80058A34 A70E0000 */ sh $t6, ($t8) +/* 059638 80058A38 8FB9006C */ lw $t9, 0x6c($sp) +/* 05963C 80058A3C 80EA01E6 */ lb $t2, 0x1e6($a3) +/* 059640 80058A40 87220004 */ lh $v0, 4($t9) +/* 059644 80058A44 11400009 */ beqz $t2, .L80058A6C +/* 059648 80058A48 240EE000 */ li $t6, -8192 +/* 05964C 80058A4C C4EA00B8 */ lwc1 $f10, 0xb8($a3) +/* 059650 80058A50 44804800 */ mtc1 $zero, $f9 +/* 059654 80058A54 44804000 */ mtc1 $zero, $f8 +/* 059658 80058A58 46005121 */ cvt.d.s $f4, $f10 +/* 05965C 80058A5C 4624403C */ c.lt.d $f8, $f4 +/* 059660 80058A60 00000000 */ nop +/* 059664 80058A64 45010005 */ bc1t .L80058A7C +/* 059668 80058A68 00000000 */ nop +.L80058A6C: +/* 05966C 80058A6C 8529D586 */ lh $t1, %lo(D_8011D586)($t1) +/* 059670 80058A70 00000000 */ nop +/* 059674 80058A74 11200002 */ beqz $t1, .L80058A80 +/* 059678 80058A78 00000000 */ nop +.L80058A7C: +/* 05967C 80058A7C 00001025 */ move $v0, $zero +.L80058A80: +/* 059680 80058A80 8D050000 */ lw $a1, ($t0) +/* 059684 80058A84 00000000 */ nop +/* 059688 80058A88 84A40004 */ lh $a0, 4($a1) +/* 05968C 80058A8C 00000000 */ nop +/* 059690 80058A90 00825821 */ addu $t3, $a0, $v0 +/* 059694 80058A94 000B6103 */ sra $t4, $t3, 4 +/* 059698 80058A98 008C6823 */ subu $t5, $a0, $t4 +/* 05969C 80058A9C A4AD0004 */ sh $t5, 4($a1) +/* 0596A0 80058AA0 8D050000 */ lw $a1, ($t0) +/* 0596A4 80058AA4 00000000 */ nop +/* 0596A8 80058AA8 84A40004 */ lh $a0, 4($a1) +/* 0596AC 80058AAC 00000000 */ nop +/* 0596B0 80058AB0 28812001 */ slti $at, $a0, 0x2001 +/* 0596B4 80058AB4 14200007 */ bnez $at, .L80058AD4 +/* 0596B8 80058AB8 2881E000 */ slti $at, $a0, -0x2000 +/* 0596BC 80058ABC A4AF0004 */ sh $t7, 4($a1) +/* 0596C0 80058AC0 8D050000 */ lw $a1, ($t0) +/* 0596C4 80058AC4 00000000 */ nop +/* 0596C8 80058AC8 84A40004 */ lh $a0, 4($a1) +/* 0596CC 80058ACC 00000000 */ nop +/* 0596D0 80058AD0 2881E000 */ slti $at, $a0, -0x2000 +.L80058AD4: +/* 0596D4 80058AD4 10200006 */ beqz $at, .L80058AF0 +/* 0596D8 80058AD8 00000000 */ nop +/* 0596DC 80058ADC A4AE0004 */ sh $t6, 4($a1) +/* 0596E0 80058AE0 8D180000 */ lw $t8, ($t0) +/* 0596E4 80058AE4 00000000 */ nop +/* 0596E8 80058AE8 87040004 */ lh $a0, 4($t8) +/* 0596EC 80058AEC 00000000 */ nop +.L80058AF0: +/* 0596F0 80058AF0 0C01C1F1 */ jal func_800707C4 +/* 0596F4 80058AF4 AFA70070 */ sw $a3, 0x70($sp) +/* 0596F8 80058AF8 8FA70070 */ lw $a3, 0x70($sp) +/* 0596FC 80058AFC 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 +/* 059700 80058B00 C4EA00C8 */ lwc1 $f10, 0xc8($a3) +/* 059704 80058B04 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 +/* 059708 80058B08 46005202 */ mul.s $f8, $f10, $f0 +/* 05970C 80058B0C 8D050000 */ lw $a1, ($t0) +/* 059710 80058B10 00000000 */ nop +/* 059714 80058B14 C4A60010 */ lwc1 $f6, 0x10($a1) +/* 059718 80058B18 00000000 */ nop +/* 05971C 80058B1C 46083101 */ sub.s $f4, $f6, $f8 +/* 059720 80058B20 E4A40010 */ swc1 $f4, 0x10($a1) +/* 059724 80058B24 8D050000 */ lw $a1, ($t0) +/* 059728 80058B28 00000000 */ nop +/* 05972C 80058B2C C4AC000C */ lwc1 $f12, 0xc($a1) +/* 059730 80058B30 C4AE0010 */ lwc1 $f14, 0x10($a1) +/* 059734 80058B34 8CA60014 */ lw $a2, 0x14($a1) +/* 059738 80058B38 0C00A7C6 */ jal func_80029F18 +/* 05973C 80058B3C 00000000 */ nop +/* 059740 80058B40 8FA70070 */ lw $a3, 0x70($sp) +/* 059744 80058B44 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 +/* 059748 80058B48 2401FFFF */ li $at, -1 +/* 05974C 80058B4C 10410004 */ beq $v0, $at, .L80058B60 +/* 059750 80058B50 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 +/* 059754 80058B54 8D190000 */ lw $t9, ($t0) +/* 059758 80058B58 00000000 */ nop +/* 05975C 80058B5C A7220034 */ sh $v0, 0x34($t9) +.L80058B60: +/* 059760 80058B60 8D0A0000 */ lw $t2, ($t0) +/* 059764 80058B64 00000000 */ nop +/* 059768 80058B68 85490000 */ lh $t1, ($t2) +/* 05976C 80058B6C 00000000 */ nop +/* 059770 80058B70 A4E90196 */ sh $t1, 0x196($a3) +/* 059774 80058B74 8FBF0014 */ lw $ra, 0x14($sp) +/* 059778 80058B78 27BD0068 */ addiu $sp, $sp, 0x68 +/* 05977C 80058B7C 03E00008 */ jr $ra +/* 059780 80058B80 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_80058B84.s b/asm/non_matchings/unknown_043920/func_80058B84.s new file mode 100644 index 00000000..8fa114da --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80058B84.s @@ -0,0 +1,123 @@ +glabel func_80058B84 +/* 059784 80058B84 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 059788 80058B88 AFB00018 */ sw $s0, 0x18($sp) +/* 05978C 80058B8C 3C108012 */ lui $s0, %hi(D_8011D508) # $s0, 0x8012 +/* 059790 80058B90 2610D508 */ addiu $s0, %lo(D_8011D508) # addiu $s0, $s0, -0x2af8 +/* 059794 80058B94 8E020000 */ lw $v0, ($s0) +/* 059798 80058B98 AFBF001C */ sw $ra, 0x1c($sp) +/* 05979C 80058B9C E7AC0030 */ swc1 $f12, 0x30($sp) +/* 0597A0 80058BA0 AFA60038 */ sw $a2, 0x38($sp) +/* 0597A4 80058BA4 844E0000 */ lh $t6, ($v0) +/* 0597A8 80058BA8 24180400 */ li $t8, 1024 +/* 0597AC 80058BAC 25CF0200 */ addiu $t7, $t6, 0x200 +/* 0597B0 80058BB0 A44F0000 */ sh $t7, ($v0) +/* 0597B4 80058BB4 8E190000 */ lw $t9, ($s0) +/* 0597B8 80058BB8 3C014316 */ li $at, 0x43160000 # 150.000000 +/* 0597BC 80058BBC A7380002 */ sh $t8, 2($t9) +/* 0597C0 80058BC0 8E080000 */ lw $t0, ($s0) +/* 0597C4 80058BC4 44812000 */ mtc1 $at, $f4 +/* 0597C8 80058BC8 A5000004 */ sh $zero, 4($t0) +/* 0597CC 80058BCC 8E090000 */ lw $t1, ($s0) +/* 0597D0 80058BD0 340C8000 */ li $t4, 32768 +/* 0597D4 80058BD4 E524001C */ swc1 $f4, 0x1c($t1) +/* 0597D8 80058BD8 8E0A0000 */ lw $t2, ($s0) +/* 0597DC 80058BDC 00000000 */ nop +/* 0597E0 80058BE0 854B0000 */ lh $t3, ($t2) +/* 0597E4 80058BE4 AFA50034 */ sw $a1, 0x34($sp) +/* 0597E8 80058BE8 018B2023 */ subu $a0, $t4, $t3 +/* 0597EC 80058BEC 00046C00 */ sll $t5, $a0, 0x10 +/* 0597F0 80058BF0 0C01C1F1 */ jal func_800707C4 +/* 0597F4 80058BF4 000D2403 */ sra $a0, $t5, 0x10 +/* 0597F8 80058BF8 8E020000 */ lw $v0, ($s0) +/* 0597FC 80058BFC 34188000 */ li $t8, 32768 +/* 059800 80058C00 C446001C */ lwc1 $f6, 0x1c($v0) +/* 059804 80058C04 00000000 */ nop +/* 059808 80058C08 46060202 */ mul.s $f8, $f0, $f6 +/* 05980C 80058C0C E7A80020 */ swc1 $f8, 0x20($sp) +/* 059810 80058C10 844F0000 */ lh $t7, ($v0) +/* 059814 80058C14 00000000 */ nop +/* 059818 80058C18 030F2023 */ subu $a0, $t8, $t7 +/* 05981C 80058C1C 0004CC00 */ sll $t9, $a0, 0x10 +/* 059820 80058C20 0C01C1FE */ jal func_800707F8 +/* 059824 80058C24 00192403 */ sra $a0, $t9, 0x10 +/* 059828 80058C28 8FA50034 */ lw $a1, 0x34($sp) +/* 05982C 80058C2C C7A60020 */ lwc1 $f6, 0x20($sp) +/* 059830 80058C30 C4A4000C */ lwc1 $f4, 0xc($a1) +/* 059834 80058C34 8E020000 */ lw $v0, ($s0) +/* 059838 80058C38 46062200 */ add.s $f8, $f4, $f6 +/* 05983C 80058C3C C44A001C */ lwc1 $f10, 0x1c($v0) +/* 059840 80058C40 E448000C */ swc1 $f8, 0xc($v0) +/* 059844 80058C44 460A0402 */ mul.s $f16, $f0, $f10 +/* 059848 80058C48 3C014234 */ li $at, 0x42340000 # 45.000000 +/* 05984C 80058C4C 44819000 */ mtc1 $at, $f18 +/* 059850 80058C50 8E020000 */ lw $v0, ($s0) +/* 059854 80058C54 C4AA0010 */ lwc1 $f10, 0x10($a1) +/* 059858 80058C58 C44E0010 */ lwc1 $f14, 0x10($v0) +/* 05985C 80058C5C 46125100 */ add.s $f4, $f10, $f18 +/* 059860 80058C60 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 059864 80058C64 46047181 */ sub.s $f6, $f14, $f4 +/* 059868 80058C68 44815800 */ mtc1 $at, $f11 +/* 05986C 80058C6C 44805000 */ mtc1 $zero, $f10 +/* 059870 80058C70 46003221 */ cvt.d.s $f8, $f6 +/* 059874 80058C74 462A4102 */ mul.d $f4, $f8, $f10 +/* 059878 80058C78 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 05987C 80058C7C 44813800 */ mtc1 $at, $f7 +/* 059880 80058C80 44803000 */ mtc1 $zero, $f6 +/* 059884 80058C84 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 059888 80058C88 46202320 */ cvt.s.d $f12, $f4 +/* 05988C 80058C8C 460060A1 */ cvt.d.s $f2, $f12 +/* 059890 80058C90 4626103C */ c.lt.d $f2, $f6 +/* 059894 80058C94 00000000 */ nop +/* 059898 80058C98 4500000A */ bc1f .L80058CC4 +/* 05989C 80058C9C 00000000 */ nop +/* 0598A0 80058CA0 44815800 */ mtc1 $at, $f11 +/* 0598A4 80058CA4 44805000 */ mtc1 $zero, $f10 +/* 0598A8 80058CA8 46007221 */ cvt.d.s $f8, $f14 +/* 0598AC 80058CAC 462A1100 */ add.d $f4, $f2, $f10 +/* 0598B0 80058CB0 46244181 */ sub.d $f6, $f8, $f4 +/* 0598B4 80058CB4 462032A0 */ cvt.s.d $f10, $f6 +/* 0598B8 80058CB8 E44A0010 */ swc1 $f10, 0x10($v0) +/* 0598BC 80058CBC 8E020000 */ lw $v0, ($s0) +/* 0598C0 80058CC0 00000000 */ nop +.L80058CC4: +/* 0598C4 80058CC4 44804000 */ mtc1 $zero, $f8 +/* 0598C8 80058CC8 00000000 */ nop +/* 0598CC 80058CCC 460C403C */ c.lt.s $f8, $f12 +/* 0598D0 80058CD0 00000000 */ nop +/* 0598D4 80058CD4 45000007 */ bc1f .L80058CF4 +/* 0598D8 80058CD8 00000000 */ nop +/* 0598DC 80058CDC C4A40010 */ lwc1 $f4, 0x10($a1) +/* 0598E0 80058CE0 00000000 */ nop +/* 0598E4 80058CE4 46122180 */ add.s $f6, $f4, $f18 +/* 0598E8 80058CE8 E4460010 */ swc1 $f6, 0x10($v0) +/* 0598EC 80058CEC 8E020000 */ lw $v0, ($s0) +/* 0598F0 80058CF0 00000000 */ nop +.L80058CF4: +/* 0598F4 80058CF4 C4AA0014 */ lwc1 $f10, 0x14($a1) +/* 0598F8 80058CF8 00000000 */ nop +/* 0598FC 80058CFC 46105200 */ add.s $f8, $f10, $f16 +/* 059900 80058D00 E4480014 */ swc1 $f8, 0x14($v0) +/* 059904 80058D04 8E020000 */ lw $v0, ($s0) +/* 059908 80058D08 00000000 */ nop +/* 05990C 80058D0C C44C000C */ lwc1 $f12, 0xc($v0) +/* 059910 80058D10 C44E0010 */ lwc1 $f14, 0x10($v0) +/* 059914 80058D14 8C460014 */ lw $a2, 0x14($v0) +/* 059918 80058D18 0C00A7C6 */ jal func_80029F18 +/* 05991C 80058D1C 00000000 */ nop +/* 059920 80058D20 2401FFFF */ li $at, -1 +/* 059924 80058D24 10410004 */ beq $v0, $at, .L80058D38 +/* 059928 80058D28 00000000 */ nop +/* 05992C 80058D2C 8E090000 */ lw $t1, ($s0) +/* 059930 80058D30 00000000 */ nop +/* 059934 80058D34 A5220034 */ sh $v0, 0x34($t1) +.L80058D38: +/* 059938 80058D38 8E0A0000 */ lw $t2, ($s0) +/* 05993C 80058D3C 8FAB0038 */ lw $t3, 0x38($sp) +/* 059940 80058D40 854C0000 */ lh $t4, ($t2) +/* 059944 80058D44 00000000 */ nop +/* 059948 80058D48 A56C0196 */ sh $t4, 0x196($t3) +/* 05994C 80058D4C 8FBF001C */ lw $ra, 0x1c($sp) +/* 059950 80058D50 8FB00018 */ lw $s0, 0x18($sp) +/* 059954 80058D54 03E00008 */ jr $ra +/* 059958 80058D58 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_043920/func_80058D5C.s b/asm/non_matchings/unknown_043920/func_80058D5C.s new file mode 100644 index 00000000..356415d7 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80058D5C.s @@ -0,0 +1,126 @@ +glabel func_80058D5C +/* 05995C 80058D5C 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 059960 80058D60 AFBF001C */ sw $ra, 0x1c($sp) +/* 059964 80058D64 AFB00018 */ sw $s0, 0x18($sp) +/* 059968 80058D68 E7AC0038 */ swc1 $f12, 0x38($sp) +/* 05996C 80058D6C AFA60040 */ sw $a2, 0x40($sp) +/* 059970 80058D70 80CF01D0 */ lb $t7, 0x1d0($a2) +/* 059974 80058D74 00A03825 */ move $a3, $a1 +/* 059978 80058D78 00A02025 */ move $a0, $a1 +/* 05997C 80058D7C 27A50034 */ addiu $a1, $sp, 0x34 +/* 059980 80058D80 AFA7003C */ sw $a3, 0x3c($sp) +/* 059984 80058D84 0C006F75 */ jal func_8001BDD4 +/* 059988 80058D88 AFAF0034 */ sw $t7, 0x34($sp) +/* 05998C 80058D8C 8FA7003C */ lw $a3, 0x3c($sp) +/* 059990 80058D90 14400007 */ bnez $v0, .L80058DB0 +/* 059994 80058D94 00402025 */ move $a0, $v0 +/* 059998 80058D98 3C108012 */ lui $s0, %hi(D_8011D508) # $s0, 0x8012 +/* 05999C 80058D9C 2610D508 */ addiu $s0, %lo(D_8011D508) # addiu $s0, $s0, -0x2af8 +/* 0599A0 80058DA0 8E190000 */ lw $t9, ($s0) +/* 0599A4 80058DA4 24180005 */ li $t8, 5 +/* 0599A8 80058DA8 10000062 */ b .L80058F34 +/* 0599AC 80058DAC A7380036 */ sh $t8, 0x36($t9) +.L80058DB0: +/* 0599B0 80058DB0 8FA80034 */ lw $t0, 0x34($sp) +/* 0599B4 80058DB4 8FA90040 */ lw $t1, 0x40($sp) +/* 0599B8 80058DB8 3C108012 */ lui $s0, %hi(D_8011D508) # $s0, 0x8012 +/* 0599BC 80058DBC A12801D0 */ sb $t0, 0x1d0($t1) +/* 0599C0 80058DC0 2610D508 */ addiu $s0, %lo(D_8011D508) # addiu $s0, $s0, -0x2af8 +/* 0599C4 80058DC4 8E0A0000 */ lw $t2, ($s0) +/* 0599C8 80058DC8 C484000C */ lwc1 $f4, 0xc($a0) +/* 0599CC 80058DCC 00000000 */ nop +/* 0599D0 80058DD0 E544000C */ swc1 $f4, 0xc($t2) +/* 0599D4 80058DD4 8E0B0000 */ lw $t3, ($s0) +/* 0599D8 80058DD8 C4860010 */ lwc1 $f6, 0x10($a0) +/* 0599DC 80058DDC 00000000 */ nop +/* 0599E0 80058DE0 E5660010 */ swc1 $f6, 0x10($t3) +/* 0599E4 80058DE4 8E0C0000 */ lw $t4, ($s0) +/* 0599E8 80058DE8 C4880014 */ lwc1 $f8, 0x14($a0) +/* 0599EC 80058DEC 00000000 */ nop +/* 0599F0 80058DF0 E5880014 */ swc1 $f8, 0x14($t4) +/* 0599F4 80058DF4 8E030000 */ lw $v1, ($s0) +/* 0599F8 80058DF8 C4E40010 */ lwc1 $f4, 0x10($a3) +/* 0599FC 80058DFC C4720010 */ lwc1 $f18, 0x10($v1) +/* 059A00 80058E00 C4F0000C */ lwc1 $f16, 0xc($a3) +/* 059A04 80058E04 C46A000C */ lwc1 $f10, 0xc($v1) +/* 059A08 80058E08 46049181 */ sub.s $f6, $f18, $f4 +/* 059A0C 80058E0C 46105081 */ sub.s $f2, $f10, $f16 +/* 059A10 80058E10 E7A60028 */ swc1 $f6, 0x28($sp) +/* 059A14 80058E14 C4EA0014 */ lwc1 $f10, 0x14($a3) +/* 059A18 80058E18 C4680014 */ lwc1 $f8, 0x14($v1) +/* 059A1C 80058E1C 46021402 */ mul.s $f16, $f2, $f2 +/* 059A20 80058E20 460A4381 */ sub.s $f14, $f8, $f10 +/* 059A24 80058E24 E7A2002C */ swc1 $f2, 0x2c($sp) +/* 059A28 80058E28 E7AE0024 */ swc1 $f14, 0x24($sp) +/* 059A2C 80058E2C 460E7482 */ mul.s $f18, $f14, $f14 +/* 059A30 80058E30 0C0326B4 */ jal sqrtf +/* 059A34 80058E34 46128300 */ add.s $f12, $f16, $f18 +/* 059A38 80058E38 444DF800 */ cfc1 $t5, $31 +/* 059A3C 80058E3C C7A2002C */ lwc1 $f2, 0x2c($sp) +/* 059A40 80058E40 35A10003 */ ori $at, $t5, 3 +/* 059A44 80058E44 38210002 */ xori $at, $at, 2 +/* 059A48 80058E48 44C1F800 */ ctc1 $at, $31 +/* 059A4C 80058E4C C7AE0024 */ lwc1 $f14, 0x24($sp) +/* 059A50 80058E50 46001124 */ cvt.w.s $f4, $f2 +/* 059A54 80058E54 E7A00020 */ swc1 $f0, 0x20($sp) +/* 059A58 80058E58 44CDF800 */ ctc1 $t5, $31 +/* 059A5C 80058E5C 44042000 */ mfc1 $a0, $f4 +/* 059A60 80058E60 00000000 */ nop +/* 059A64 80058E64 444EF800 */ cfc1 $t6, $31 +/* 059A68 80058E68 00000000 */ nop +/* 059A6C 80058E6C 35C10003 */ ori $at, $t6, 3 +/* 059A70 80058E70 38210002 */ xori $at, $at, 2 +/* 059A74 80058E74 44C1F800 */ ctc1 $at, $31 +/* 059A78 80058E78 00000000 */ nop +/* 059A7C 80058E7C 460071A4 */ cvt.w.s $f6, $f14 +/* 059A80 80058E80 44053000 */ mfc1 $a1, $f6 +/* 059A84 80058E84 44CEF800 */ ctc1 $t6, $31 +/* 059A88 80058E88 0C01C19B */ jal func_8007066C +/* 059A8C 80058E8C 00000000 */ nop +/* 059A90 80058E90 4448F800 */ cfc1 $t0, $31 +/* 059A94 80058E94 8E190000 */ lw $t9, ($s0) +/* 059A98 80058E98 340F8000 */ li $t7, 32768 +/* 059A9C 80058E9C 01E2C023 */ subu $t8, $t7, $v0 +/* 059AA0 80058EA0 35010003 */ ori $at, $t0, 3 +/* 059AA4 80058EA4 38210002 */ xori $at, $at, 2 +/* 059AA8 80058EA8 A7380000 */ sh $t8, ($t9) +/* 059AAC 80058EAC C7A80028 */ lwc1 $f8, 0x28($sp) +/* 059AB0 80058EB0 44C1F800 */ ctc1 $at, $31 +/* 059AB4 80058EB4 C7B00020 */ lwc1 $f16, 0x20($sp) +/* 059AB8 80058EB8 460042A4 */ cvt.w.s $f10, $f8 +/* 059ABC 80058EBC 44C8F800 */ ctc1 $t0, $31 +/* 059AC0 80058EC0 44045000 */ mfc1 $a0, $f10 +/* 059AC4 80058EC4 00000000 */ nop +/* 059AC8 80058EC8 4449F800 */ cfc1 $t1, $31 +/* 059ACC 80058ECC 00000000 */ nop +/* 059AD0 80058ED0 35210003 */ ori $at, $t1, 3 +/* 059AD4 80058ED4 38210002 */ xori $at, $at, 2 +/* 059AD8 80058ED8 44C1F800 */ ctc1 $at, $31 +/* 059ADC 80058EDC 00000000 */ nop +/* 059AE0 80058EE0 460084A4 */ cvt.w.s $f18, $f16 +/* 059AE4 80058EE4 44059000 */ mfc1 $a1, $f18 +/* 059AE8 80058EE8 44C9F800 */ ctc1 $t1, $31 +/* 059AEC 80058EEC 0C01C19B */ jal func_8007066C +/* 059AF0 80058EF0 00000000 */ nop +/* 059AF4 80058EF4 8E0A0000 */ lw $t2, ($s0) +/* 059AF8 80058EF8 00000000 */ nop +/* 059AFC 80058EFC A5420002 */ sh $v0, 2($t2) +/* 059B00 80058F00 8E0B0000 */ lw $t3, ($s0) +/* 059B04 80058F04 00000000 */ nop +/* 059B08 80058F08 A5600004 */ sh $zero, 4($t3) +/* 059B0C 80058F0C 8E030000 */ lw $v1, ($s0) +/* 059B10 80058F10 8FAC0040 */ lw $t4, 0x40($sp) +/* 059B14 80058F14 C46C000C */ lwc1 $f12, 0xc($v1) +/* 059B18 80058F18 8C660014 */ lw $a2, 0x14($v1) +/* 059B1C 80058F1C C58E003C */ lwc1 $f14, 0x3c($t4) +/* 059B20 80058F20 0C00A7C6 */ jal func_80029F18 +/* 059B24 80058F24 00000000 */ nop +/* 059B28 80058F28 8E0D0000 */ lw $t5, ($s0) +/* 059B2C 80058F2C 00000000 */ nop +/* 059B30 80058F30 A5A20034 */ sh $v0, 0x34($t5) +.L80058F34: +/* 059B34 80058F34 8FBF001C */ lw $ra, 0x1c($sp) +/* 059B38 80058F38 8FB00018 */ lw $s0, 0x18($sp) +/* 059B3C 80058F3C 03E00008 */ jr $ra +/* 059B40 80058F40 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_043920/func_80058F44.s b/asm/non_matchings/unknown_043920/func_80058F44.s new file mode 100644 index 00000000..72b15920 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80058F44.s @@ -0,0 +1,81 @@ +glabel func_80058F44 +/* 059B44 80058F44 444EF800 */ cfc1 $t6, $31 +/* 059B48 80058F48 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 059B4C 80058F4C 35C10003 */ ori $at, $t6, 3 +/* 059B50 80058F50 38210002 */ xori $at, $at, 2 +/* 059B54 80058F54 44C1F800 */ ctc1 $at, $31 +/* 059B58 80058F58 AFBF0014 */ sw $ra, 0x14($sp) +/* 059B5C 80058F5C AFA60028 */ sw $a2, 0x28($sp) +/* 059B60 80058F60 3C038012 */ lui $v1, %hi(D_8011D508) # $v1, 0x8012 +/* 059B64 80058F64 8C63D508 */ lw $v1, %lo(D_8011D508)($v1) +/* 059B68 80058F68 46006124 */ cvt.w.s $f4, $f12 +/* 059B6C 80058F6C C4A8000C */ lwc1 $f8, 0xc($a1) +/* 059B70 80058F70 44CEF800 */ ctc1 $t6, $31 +/* 059B74 80058F74 C4B00014 */ lwc1 $f16, 0x14($a1) +/* 059B78 80058F78 C466000C */ lwc1 $f6, 0xc($v1) +/* 059B7C 80058F7C C46A0014 */ lwc1 $f10, 0x14($v1) +/* 059B80 80058F80 46083001 */ sub.s $f0, $f6, $f8 +/* 059B84 80058F84 44082000 */ mfc1 $t0, $f4 +/* 059B88 80058F88 46105081 */ sub.s $f2, $f10, $f16 +/* 059B8C 80058F8C AFA8001C */ sw $t0, 0x1c($sp) +/* 059B90 80058F90 444FF800 */ cfc1 $t7, $31 +/* 059B94 80058F94 00000000 */ nop +/* 059B98 80058F98 35E10003 */ ori $at, $t7, 3 +/* 059B9C 80058F9C 38210002 */ xori $at, $at, 2 +/* 059BA0 80058FA0 44C1F800 */ ctc1 $at, $31 +/* 059BA4 80058FA4 00000000 */ nop +/* 059BA8 80058FA8 460004A4 */ cvt.w.s $f18, $f0 +/* 059BAC 80058FAC 44CFF800 */ ctc1 $t7, $31 +/* 059BB0 80058FB0 44049000 */ mfc1 $a0, $f18 +/* 059BB4 80058FB4 00000000 */ nop +/* 059BB8 80058FB8 4458F800 */ cfc1 $t8, $31 +/* 059BBC 80058FBC 00000000 */ nop +/* 059BC0 80058FC0 37010003 */ ori $at, $t8, 3 +/* 059BC4 80058FC4 38210002 */ xori $at, $at, 2 +/* 059BC8 80058FC8 44C1F800 */ ctc1 $at, $31 +/* 059BCC 80058FCC 00000000 */ nop +/* 059BD0 80058FD0 46001124 */ cvt.w.s $f4, $f2 +/* 059BD4 80058FD4 44052000 */ mfc1 $a1, $f4 +/* 059BD8 80058FD8 44D8F800 */ ctc1 $t8, $31 +/* 059BDC 80058FDC 0C01C19B */ jal func_8007066C +/* 059BE0 80058FE0 00000000 */ nop +/* 059BE4 80058FE4 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 +/* 059BE8 80058FE8 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 +/* 059BEC 80058FEC 8CE30000 */ lw $v1, ($a3) +/* 059BF0 80058FF0 0002C823 */ negu $t9, $v0 +/* 059BF4 80058FF4 84640000 */ lh $a0, ($v1) +/* 059BF8 80058FF8 8FA8001C */ lw $t0, 0x1c($sp) +/* 059BFC 80058FFC 34018000 */ li $at, 32768 +/* 059C00 80059000 03244823 */ subu $t1, $t9, $a0 +/* 059C04 80059004 01215021 */ addu $t2, $t1, $at +/* 059C08 80059008 01480019 */ multu $t2, $t0 +/* 059C0C 8005900C 00005812 */ mflo $t3 +/* 059C10 80059010 000B6103 */ sra $t4, $t3, 4 +/* 059C14 80059014 008C6821 */ addu $t5, $a0, $t4 +/* 059C18 80059018 A46D0000 */ sh $t5, ($v1) +/* 059C1C 8005901C 8CE30000 */ lw $v1, ($a3) +/* 059C20 80059020 00000000 */ nop +/* 059C24 80059024 84650004 */ lh $a1, 4($v1) +/* 059C28 80059028 00000000 */ nop +/* 059C2C 8005902C 00A80019 */ multu $a1, $t0 +/* 059C30 80059030 00007012 */ mflo $t6 +/* 059C34 80059034 000E7903 */ sra $t7, $t6, 4 +/* 059C38 80059038 00AFC023 */ subu $t8, $a1, $t7 +/* 059C3C 8005903C A4780004 */ sh $t8, 4($v1) +/* 059C40 80059040 8CE30000 */ lw $v1, ($a3) +/* 059C44 80059044 8FB90028 */ lw $t9, 0x28($sp) +/* 059C48 80059048 C46C000C */ lwc1 $f12, 0xc($v1) +/* 059C4C 8005904C 8C660014 */ lw $a2, 0x14($v1) +/* 059C50 80059050 C72E003C */ lwc1 $f14, 0x3c($t9) +/* 059C54 80059054 0C00A7C6 */ jal func_80029F18 +/* 059C58 80059058 00000000 */ nop +/* 059C5C 8005905C 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 +/* 059C60 80059060 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 +/* 059C64 80059064 8CE90000 */ lw $t1, ($a3) +/* 059C68 80059068 00000000 */ nop +/* 059C6C 8005906C A5220034 */ sh $v0, 0x34($t1) +/* 059C70 80059070 8FBF0014 */ lw $ra, 0x14($sp) +/* 059C74 80059074 27BD0020 */ addiu $sp, $sp, 0x20 +/* 059C78 80059078 03E00008 */ jr $ra +/* 059C7C 8005907C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_80059080.s b/asm/non_matchings/unknown_043920/func_80059080.s new file mode 100644 index 00000000..8527cdc3 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80059080.s @@ -0,0 +1,105 @@ +glabel func_80059080 +/* 059C80 80059080 27BDFF58 */ addiu $sp, $sp, -0xa8 +/* 059C84 80059084 AFBF003C */ sw $ra, 0x3c($sp) +/* 059C88 80059088 AFB50034 */ sw $s5, 0x34($sp) +/* 059C8C 8005908C 00A0A825 */ move $s5, $a1 +/* 059C90 80059090 AFB60038 */ sw $s6, 0x38($sp) +/* 059C94 80059094 AFB40030 */ sw $s4, 0x30($sp) +/* 059C98 80059098 AFB3002C */ sw $s3, 0x2c($sp) +/* 059C9C 8005909C AFB20028 */ sw $s2, 0x28($sp) +/* 059CA0 800590A0 AFB10024 */ sw $s1, 0x24($sp) +/* 059CA4 800590A4 AFB00020 */ sw $s0, 0x20($sp) +/* 059CA8 800590A8 E7B50018 */ swc1 $f21, 0x18($sp) +/* 059CAC 800590AC E7B4001C */ swc1 $f20, 0x1c($sp) +/* 059CB0 800590B0 AFA400A8 */ sw $a0, 0xa8($sp) +/* 059CB4 800590B4 AFA600B0 */ sw $a2, 0xb0($sp) +/* 059CB8 800590B8 0C006E99 */ jal func_8001BA64 +/* 059CBC 800590BC AFA700B4 */ sw $a3, 0xb4($sp) +/* 059CC0 800590C0 10400045 */ beqz $v0, .L800591D8 +/* 059CC4 800590C4 0040B025 */ move $s6, $v0 +/* 059CC8 800590C8 C6A600A8 */ lwc1 $f6, 0xa8($s5) +/* 059CCC 800590CC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 059CD0 800590D0 44812800 */ mtc1 $at, $f5 +/* 059CD4 800590D4 44802000 */ mtc1 $zero, $f4 +/* 059CD8 800590D8 46003221 */ cvt.d.s $f8, $f6 +/* 059CDC 800590DC 46282281 */ sub.d $f10, $f4, $f8 +/* 059CE0 800590E0 44800000 */ mtc1 $zero, $f0 +/* 059CE4 800590E4 46205520 */ cvt.s.d $f20, $f10 +/* 059CE8 800590E8 27B20084 */ addiu $s2, $sp, 0x84 +/* 059CEC 800590EC 4600A03C */ c.lt.s $f20, $f0 +/* 059CF0 800590F0 27B30070 */ addiu $s3, $sp, 0x70 +/* 059CF4 800590F4 45000002 */ bc1f .L80059100 +/* 059CF8 800590F8 27B0005C */ addiu $s0, $sp, 0x5c +/* 059CFC 800590FC 46000506 */ mov.s $f20, $f0 +.L80059100: +/* 059D00 80059100 82A30192 */ lb $v1, 0x192($s5) +/* 059D04 80059104 27B40070 */ addiu $s4, $sp, 0x70 +/* 059D08 80059108 2471FFFE */ addiu $s1, $v1, -2 +/* 059D0C 8005910C 06210002 */ bgez $s1, .L80059118 +/* 059D10 80059110 00000000 */ nop +/* 059D14 80059114 02228821 */ addu $s1, $s1, $v0 +.L80059118: +/* 059D18 80059118 92A501C8 */ lbu $a1, 0x1c8($s5) +/* 059D1C 8005911C 0C006E87 */ jal func_8001BA1C +/* 059D20 80059120 02202025 */ move $a0, $s1 +/* 059D24 80059124 C4500010 */ lwc1 $f16, 0x10($v0) +/* 059D28 80059128 26310001 */ addiu $s1, $s1, 1 +/* 059D2C 8005912C E6500000 */ swc1 $f16, ($s2) +/* 059D30 80059130 C4520014 */ lwc1 $f18, 0x14($v0) +/* 059D34 80059134 26520004 */ addiu $s2, $s2, 4 +/* 059D38 80059138 E6720000 */ swc1 $f18, ($s3) +/* 059D3C 8005913C C4460018 */ lwc1 $f6, 0x18($v0) +/* 059D40 80059140 16360002 */ bne $s1, $s6, .L8005914C +/* 059D44 80059144 E6060000 */ swc1 $f6, ($s0) +/* 059D48 80059148 00008825 */ move $s1, $zero +.L8005914C: +/* 059D4C 8005914C 26100004 */ addiu $s0, $s0, 4 +/* 059D50 80059150 1614FFF1 */ bne $s0, $s4, .L80059118 +/* 059D54 80059154 26730004 */ addiu $s3, $s3, 4 +/* 059D58 80059158 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 059D5C 8005915C 44812800 */ mtc1 $at, $f5 +/* 059D60 80059160 44802000 */ mtc1 $zero, $f4 +/* 059D64 80059164 4600A021 */ cvt.d.s $f0, $f20 +/* 059D68 80059168 4620203E */ c.le.d $f4, $f0 +/* 059D6C 8005916C 00008025 */ move $s0, $zero +/* 059D70 80059170 45000007 */ bc1f .L80059190 +/* 059D74 80059174 27A40084 */ addiu $a0, $sp, 0x84 +/* 059D78 80059178 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 059D7C 8005917C 44814800 */ mtc1 $at, $f9 +/* 059D80 80059180 44804000 */ mtc1 $zero, $f8 +/* 059D84 80059184 24100001 */ li $s0, 1 +/* 059D88 80059188 46280281 */ sub.d $f10, $f0, $f8 +/* 059D8C 8005918C 46205520 */ cvt.s.d $f20, $f10 +.L80059190: +/* 059D90 80059190 4406A000 */ mfc1 $a2, $f20 +/* 059D94 80059194 0C008950 */ jal func_80022540 +/* 059D98 80059198 02002825 */ move $a1, $s0 +/* 059D9C 8005919C 8FAE00B0 */ lw $t6, 0xb0($sp) +/* 059DA0 800591A0 4406A000 */ mfc1 $a2, $f20 +/* 059DA4 800591A4 27A40070 */ addiu $a0, $sp, 0x70 +/* 059DA8 800591A8 02002825 */ move $a1, $s0 +/* 059DAC 800591AC 0C008950 */ jal func_80022540 +/* 059DB0 800591B0 E5C00000 */ swc1 $f0, ($t6) +/* 059DB4 800591B4 8FAF00B4 */ lw $t7, 0xb4($sp) +/* 059DB8 800591B8 4406A000 */ mfc1 $a2, $f20 +/* 059DBC 800591BC 27A4005C */ addiu $a0, $sp, 0x5c +/* 059DC0 800591C0 02002825 */ move $a1, $s0 +/* 059DC4 800591C4 0C008950 */ jal func_80022540 +/* 059DC8 800591C8 E5E00000 */ swc1 $f0, ($t7) +/* 059DCC 800591CC 8FB800B8 */ lw $t8, 0xb8($sp) +/* 059DD0 800591D0 00000000 */ nop +/* 059DD4 800591D4 E7000000 */ swc1 $f0, ($t8) +.L800591D8: +/* 059DD8 800591D8 8FBF003C */ lw $ra, 0x3c($sp) +/* 059DDC 800591DC C7B50018 */ lwc1 $f21, 0x18($sp) +/* 059DE0 800591E0 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 059DE4 800591E4 8FB00020 */ lw $s0, 0x20($sp) +/* 059DE8 800591E8 8FB10024 */ lw $s1, 0x24($sp) +/* 059DEC 800591EC 8FB20028 */ lw $s2, 0x28($sp) +/* 059DF0 800591F0 8FB3002C */ lw $s3, 0x2c($sp) +/* 059DF4 800591F4 8FB40030 */ lw $s4, 0x30($sp) +/* 059DF8 800591F8 8FB50034 */ lw $s5, 0x34($sp) +/* 059DFC 800591FC 8FB60038 */ lw $s6, 0x38($sp) +/* 059E00 80059200 03E00008 */ jr $ra +/* 059E04 80059204 27BD00A8 */ addiu $sp, $sp, 0xa8 + diff --git a/asm/non_matchings/unknown_043920/func_80059208.s b/asm/non_matchings/unknown_043920/func_80059208.s new file mode 100644 index 00000000..782e6bca --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80059208.s @@ -0,0 +1,379 @@ +glabel func_80059208 +/* 059E08 80059208 27BDFF40 */ addiu $sp, $sp, -0xc0 +/* 059E0C 8005920C AFBF001C */ sw $ra, 0x1c($sp) +/* 059E10 80059210 AFB10018 */ sw $s1, 0x18($sp) +/* 059E14 80059214 00A08825 */ move $s1, $a1 +/* 059E18 80059218 AFB00014 */ sw $s0, 0x14($sp) +/* 059E1C 8005921C AFA400C0 */ sw $a0, 0xc0($sp) +/* 059E20 80059220 0C006E99 */ jal func_8001BA64 +/* 059E24 80059224 AFA600C8 */ sw $a2, 0xc8($sp) +/* 059E28 80059228 10400155 */ beqz $v0, .L80059780 +/* 059E2C 8005922C 8FBF001C */ lw $ra, 0x1c($sp) +/* 059E30 80059230 0C01AF62 */ jal func_8006BD88 +/* 059E34 80059234 AFA200B4 */ sw $v0, 0xb4($sp) +/* 059E38 80059238 8FA800B4 */ lw $t0, 0xb4($sp) +/* 059E3C 8005923C 14400009 */ bnez $v0, .L80059264 +/* 059E40 80059240 00000000 */ nop +/* 059E44 80059244 822E0192 */ lb $t6, 0x192($s1) +/* 059E48 80059248 00000000 */ nop +/* 059E4C 8005924C 01C8082A */ slt $at, $t6, $t0 +/* 059E50 80059250 14200004 */ bnez $at, .L80059264 +/* 059E54 80059254 00000000 */ nop +/* 059E58 80059258 A2200193 */ sb $zero, 0x193($s1) +/* 059E5C 8005925C A2200192 */ sb $zero, 0x192($s1) +/* 059E60 80059260 A6200190 */ sh $zero, 0x190($s1) +.L80059264: +/* 059E64 80059264 C62600A8 */ lwc1 $f6, 0xa8($s1) +/* 059E68 80059268 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 059E6C 8005926C 44812800 */ mtc1 $at, $f5 +/* 059E70 80059270 44802000 */ mtc1 $zero, $f4 +/* 059E74 80059274 46003221 */ cvt.d.s $f8, $f6 +/* 059E78 80059278 46282281 */ sub.d $f10, $f4, $f8 +/* 059E7C 8005927C 3C01800E */ lui $at, %hi(D_800E6924) # $at, 0x800e +/* 059E80 80059280 46205020 */ cvt.s.d $f0, $f10 +/* 059E84 80059284 C4316920 */ lwc1 $f17, %lo(D_800E6920)($at) +/* 059E88 80059288 C4306924 */ lwc1 $f16, %lo(D_800E6924)($at) +/* 059E8C 8005928C 460000A1 */ cvt.d.s $f2, $f0 +/* 059E90 80059290 4630103C */ c.lt.d $f2, $f16 +/* 059E94 80059294 82240192 */ lb $a0, 0x192($s1) +/* 059E98 80059298 4500002D */ bc1f .L80059350 +/* 059E9C 8005929C 248FFFFF */ addiu $t7, $a0, -1 +/* 059EA0 800592A0 A22F0192 */ sb $t7, 0x192($s1) +/* 059EA4 800592A4 82240192 */ lb $a0, 0x192($s1) +/* 059EA8 800592A8 00000000 */ nop +/* 059EAC 800592AC 04810007 */ bgez $a0, .L800592CC +/* 059EB0 800592B0 00000000 */ nop +/* 059EB4 800592B4 82220193 */ lb $v0, 0x193($s1) +/* 059EB8 800592B8 0088C021 */ addu $t8, $a0, $t0 +/* 059EBC 800592BC 18400003 */ blez $v0, .L800592CC +/* 059EC0 800592C0 A2380192 */ sb $t8, 0x192($s1) +/* 059EC4 800592C4 2459FFFF */ addiu $t9, $v0, -1 +/* 059EC8 800592C8 A2390193 */ sb $t9, 0x193($s1) +.L800592CC: +/* 059ECC 800592CC 86220190 */ lh $v0, 0x190($s1) +/* 059ED0 800592D0 00000000 */ nop +/* 059ED4 800592D4 28418301 */ slti $at, $v0, -0x7cff +/* 059ED8 800592D8 14200002 */ bnez $at, .L800592E4 +/* 059EDC 800592DC 2449FFFF */ addiu $t1, $v0, -1 +/* 059EE0 800592E0 A6290190 */ sh $t1, 0x190($s1) +.L800592E4: +/* 059EE4 800592E4 922A01C8 */ lbu $t2, 0x1c8($s1) +/* 059EE8 800592E8 00000000 */ nop +/* 059EEC 800592EC 11400124 */ beqz $t2, .L80059780 +/* 059EF0 800592F0 8FBF001C */ lw $ra, 0x1c($sp) +/* 059EF4 800592F4 82240192 */ lb $a0, 0x192($s1) +/* 059EF8 800592F8 0C006E80 */ jal func_8001BA00 +/* 059EFC 800592FC AFA800B4 */ sw $t0, 0xb4($sp) +/* 059F00 80059300 804B003A */ lb $t3, 0x3a($v0) +/* 059F04 80059304 8FA800B4 */ lw $t0, 0xb4($sp) +/* 059F08 80059308 2410FFFF */ li $s0, -1 +/* 059F0C 8005930C 160B0002 */ bne $s0, $t3, .L80059318 +/* 059F10 80059310 00000000 */ nop +/* 059F14 80059314 A22001C8 */ sb $zero, 0x1c8($s1) +.L80059318: +/* 059F18 80059318 82240192 */ lb $a0, 0x192($s1) +/* 059F1C 8005931C 00000000 */ nop +/* 059F20 80059320 2484FFFF */ addiu $a0, $a0, -1 +/* 059F24 80059324 04810002 */ bgez $a0, .L80059330 +/* 059F28 80059328 00000000 */ nop +/* 059F2C 8005932C 00882021 */ addu $a0, $a0, $t0 +.L80059330: +/* 059F30 80059330 0C006E80 */ jal func_8001BA00 +/* 059F34 80059334 00000000 */ nop +/* 059F38 80059338 804C003A */ lb $t4, 0x3a($v0) +/* 059F3C 8005933C 00000000 */ nop +/* 059F40 80059340 160C010F */ bne $s0, $t4, .L80059780 +/* 059F44 80059344 8FBF001C */ lw $ra, 0x1c($sp) +/* 059F48 80059348 1000010C */ b .L8005977C +/* 059F4C 8005934C A22001C8 */ sb $zero, 0x1c8($s1) +.L80059350: +/* 059F50 80059350 44806000 */ mtc1 $zero, $f12 +/* 059F54 80059354 00000000 */ nop +/* 059F58 80059358 460C003C */ c.lt.s $f0, $f12 +/* 059F5C 8005935C 00000000 */ nop +/* 059F60 80059360 45000003 */ bc1f .L80059370 +/* 059F64 80059364 00000000 */ nop +/* 059F68 80059368 46006006 */ mov.s $f0, $f12 +/* 059F6C 8005936C 460060A1 */ cvt.d.s $f2, $f12 +.L80059370: +/* 059F70 80059370 922501C8 */ lbu $a1, 0x1c8($s1) +/* 059F74 80059374 E7A2002C */ swc1 $f2, 0x2c($sp) +/* 059F78 80059378 E7A30028 */ swc1 $f3, 0x28($sp) +/* 059F7C 8005937C E7A00058 */ swc1 $f0, 0x58($sp) +/* 059F80 80059380 0C006E87 */ jal func_8001BA1C +/* 059F84 80059384 AFA800B4 */ sw $t0, 0xb4($sp) +/* 059F88 80059388 82300192 */ lb $s0, 0x192($s1) +/* 059F8C 8005938C 8FA800B4 */ lw $t0, 0xb4($sp) +/* 059F90 80059390 C442001C */ lwc1 $f2, 0x1c($v0) +/* 059F94 80059394 2610FFFF */ addiu $s0, $s0, -1 +/* 059F98 80059398 06010003 */ bgez $s0, .L800593A8 +/* 059F9C 8005939C 02002025 */ move $a0, $s0 +/* 059FA0 800593A0 2510FFFF */ addiu $s0, $t0, -1 +/* 059FA4 800593A4 02002025 */ move $a0, $s0 +.L800593A8: +/* 059FA8 800593A8 AFA800B4 */ sw $t0, 0xb4($sp) +/* 059FAC 800593AC 0C006E80 */ jal func_8001BA00 +/* 059FB0 800593B0 E7A20040 */ swc1 $f2, 0x40($sp) +/* 059FB4 800593B4 C7A20040 */ lwc1 $f2, 0x40($sp) +/* 059FB8 800593B8 C440001C */ lwc1 $f0, 0x1c($v0) +/* 059FBC 800593BC C7A60058 */ lwc1 $f6, 0x58($sp) +/* 059FC0 800593C0 46001481 */ sub.s $f18, $f2, $f0 +/* 059FC4 800593C4 8FA800B4 */ lw $t0, 0xb4($sp) +/* 059FC8 800593C8 46069102 */ mul.s $f4, $f18, $f6 +/* 059FCC 800593CC 27A6009C */ addiu $a2, $sp, 0x9c +/* 059FD0 800593D0 27A70088 */ addiu $a3, $sp, 0x88 +/* 059FD4 800593D4 27A30074 */ addiu $v1, $sp, 0x74 +/* 059FD8 800593D8 46002200 */ add.s $f8, $f4, $f0 +/* 059FDC 800593DC E7A80044 */ swc1 $f8, 0x44($sp) +/* 059FE0 800593E0 82300192 */ lb $s0, 0x192($s1) +/* 059FE4 800593E4 00000000 */ nop +/* 059FE8 800593E8 2610FFFE */ addiu $s0, $s0, -2 +/* 059FEC 800593EC 06010002 */ bgez $s0, .L800593F8 +/* 059FF0 800593F0 00000000 */ nop +/* 059FF4 800593F4 02088021 */ addu $s0, $s0, $t0 +.L800593F8: +/* 059FF8 800593F8 922501C8 */ lbu $a1, 0x1c8($s1) +/* 059FFC 800593FC AFA800B4 */ sw $t0, 0xb4($sp) +/* 05A000 80059400 AFA70024 */ sw $a3, 0x24($sp) +/* 05A004 80059404 AFA60034 */ sw $a2, 0x34($sp) +/* 05A008 80059408 AFA30020 */ sw $v1, 0x20($sp) +/* 05A00C 8005940C 0C006E87 */ jal func_8001BA1C +/* 05A010 80059410 02002025 */ move $a0, $s0 +/* 05A014 80059414 862D01BA */ lh $t5, 0x1ba($s1) +/* 05A018 80059418 C44A001C */ lwc1 $f10, 0x1c($v0) +/* 05A01C 8005941C C4500008 */ lwc1 $f16, 8($v0) +/* 05A020 80059420 448D3000 */ mtc1 $t5, $f6 +/* 05A024 80059424 46105482 */ mul.s $f18, $f10, $f16 +/* 05A028 80059428 C44A0010 */ lwc1 $f10, 0x10($v0) +/* 05A02C 8005942C 8FA60034 */ lw $a2, 0x34($sp) +/* 05A030 80059430 8FA30020 */ lw $v1, 0x20($sp) +/* 05A034 80059434 46803120 */ cvt.s.w $f4, $f6 +/* 05A038 80059438 8FA70024 */ lw $a3, 0x24($sp) +/* 05A03C 8005943C 8FA800B4 */ lw $t0, 0xb4($sp) +/* 05A040 80059440 46049202 */ mul.s $f8, $f18, $f4 +/* 05A044 80059444 27B80088 */ addiu $t8, $sp, 0x88 +/* 05A048 80059448 26100001 */ addiu $s0, $s0, 1 +/* 05A04C 8005944C 24630004 */ addiu $v1, $v1, 4 +/* 05A050 80059450 46085400 */ add.s $f16, $f10, $f8 +/* 05A054 80059454 0078082B */ sltu $at, $v1, $t8 +/* 05A058 80059458 E4D00000 */ swc1 $f16, ($a2) +/* 05A05C 8005945C 862E01BC */ lh $t6, 0x1bc($s1) +/* 05A060 80059460 C446001C */ lwc1 $f6, 0x1c($v0) +/* 05A064 80059464 448E9000 */ mtc1 $t6, $f18 +/* 05A068 80059468 C4480014 */ lwc1 $f8, 0x14($v0) +/* 05A06C 8005946C 46809120 */ cvt.s.w $f4, $f18 +/* 05A070 80059470 24C60004 */ addiu $a2, $a2, 4 +/* 05A074 80059474 46043282 */ mul.s $f10, $f6, $f4 +/* 05A078 80059478 460A4400 */ add.s $f16, $f8, $f10 +/* 05A07C 8005947C E4F00000 */ swc1 $f16, ($a3) +/* 05A080 80059480 862F01BA */ lh $t7, 0x1ba($s1) +/* 05A084 80059484 C4460000 */ lwc1 $f6, ($v0) +/* 05A088 80059488 C452001C */ lwc1 $f18, 0x1c($v0) +/* 05A08C 8005948C 448F5000 */ mtc1 $t7, $f10 +/* 05A090 80059490 46003107 */ neg.s $f4, $f6 +/* 05A094 80059494 46049202 */ mul.s $f8, $f18, $f4 +/* 05A098 80059498 C4520018 */ lwc1 $f18, 0x18($v0) +/* 05A09C 8005949C 46805420 */ cvt.s.w $f16, $f10 +/* 05A0A0 800594A0 46104182 */ mul.s $f6, $f8, $f16 +/* 05A0A4 800594A4 46069100 */ add.s $f4, $f18, $f6 +/* 05A0A8 800594A8 16080002 */ bne $s0, $t0, .L800594B4 +/* 05A0AC 800594AC E464FFFC */ swc1 $f4, -4($v1) +/* 05A0B0 800594B0 00008025 */ move $s0, $zero +.L800594B4: +/* 05A0B4 800594B4 1420FFD0 */ bnez $at, .L800593F8 +/* 05A0B8 800594B8 24E70004 */ addiu $a3, $a3, 4 +/* 05A0BC 800594BC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 05A0C0 800594C0 44811800 */ mtc1 $at, $f3 +/* 05A0C4 800594C4 C7A10028 */ lwc1 $f1, 0x28($sp) +/* 05A0C8 800594C8 C7A0002C */ lwc1 $f0, 0x2c($sp) +/* 05A0CC 800594CC 44801000 */ mtc1 $zero, $f2 +/* 05A0D0 800594D0 00008025 */ move $s0, $zero +/* 05A0D4 800594D4 4620103E */ c.le.d $f2, $f0 +/* 05A0D8 800594D8 27A4009C */ addiu $a0, $sp, 0x9c +/* 05A0DC 800594DC 45000005 */ bc1f .L800594F4 +/* 05A0E0 800594E0 27A70054 */ addiu $a3, $sp, 0x54 +/* 05A0E4 800594E4 46220281 */ sub.d $f10, $f0, $f2 +/* 05A0E8 800594E8 24100001 */ li $s0, 1 +/* 05A0EC 800594EC 46205220 */ cvt.s.d $f8, $f10 +/* 05A0F0 800594F0 E7A80058 */ swc1 $f8, 0x58($sp) +.L800594F4: +/* 05A0F4 800594F4 8FA60058 */ lw $a2, 0x58($sp) +/* 05A0F8 800594F8 0C00898F */ jal func_8002263C +/* 05A0FC 800594FC 02002825 */ move $a1, $s0 +/* 05A100 80059500 8FA60058 */ lw $a2, 0x58($sp) +/* 05A104 80059504 E7A0006C */ swc1 $f0, 0x6c($sp) +/* 05A108 80059508 27A40088 */ addiu $a0, $sp, 0x88 +/* 05A10C 8005950C 02002825 */ move $a1, $s0 +/* 05A110 80059510 0C00898F */ jal func_8002263C +/* 05A114 80059514 27A70050 */ addiu $a3, $sp, 0x50 +/* 05A118 80059518 8FA60058 */ lw $a2, 0x58($sp) +/* 05A11C 8005951C E7A00064 */ swc1 $f0, 0x64($sp) +/* 05A120 80059520 27A40074 */ addiu $a0, $sp, 0x74 +/* 05A124 80059524 02002825 */ move $a1, $s0 +/* 05A128 80059528 0C00898F */ jal func_8002263C +/* 05A12C 8005952C 27A7004C */ addiu $a3, $sp, 0x4c +/* 05A130 80059530 C7A20054 */ lwc1 $f2, 0x54($sp) +/* 05A134 80059534 C7AE004C */ lwc1 $f14, 0x4c($sp) +/* 05A138 80059538 46021402 */ mul.s $f16, $f2, $f2 +/* 05A13C 8005953C E7A0005C */ swc1 $f0, 0x5c($sp) +/* 05A140 80059540 460E7482 */ mul.s $f18, $f14, $f14 +/* 05A144 80059544 0C0326B4 */ jal sqrtf +/* 05A148 80059548 46128300 */ add.s $f12, $f16, $f18 +/* 05A14C 8005954C 44803000 */ mtc1 $zero, $f6 +/* 05A150 80059550 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 05A154 80059554 46060032 */ c.eq.s $f0, $f6 +/* 05A158 80059558 00000000 */ nop +/* 05A15C 8005955C 4501000A */ bc1t .L80059588 +/* 05A160 80059560 00000000 */ nop +/* 05A164 80059564 44812000 */ mtc1 $at, $f4 +/* 05A168 80059568 C7AA0054 */ lwc1 $f10, 0x54($sp) +/* 05A16C 8005956C 46002083 */ div.s $f2, $f4, $f0 +/* 05A170 80059570 C7AE004C */ lwc1 $f14, 0x4c($sp) +/* 05A174 80059574 46025202 */ mul.s $f8, $f10, $f2 +/* 05A178 80059578 00000000 */ nop +/* 05A17C 8005957C 46027382 */ mul.s $f14, $f14, $f2 +/* 05A180 80059580 E7A80054 */ swc1 $f8, 0x54($sp) +/* 05A184 80059584 E7AE004C */ swc1 $f14, 0x4c($sp) +.L80059588: +/* 05A188 80059588 C7AE004C */ lwc1 $f14, 0x4c($sp) +/* 05A18C 8005958C C7AC0054 */ lwc1 $f12, 0x54($sp) +/* 05A190 80059590 0C01C1D4 */ jal func_80070750 +/* 05A194 80059594 00000000 */ nop +/* 05A198 80059598 863901A0 */ lh $t9, 0x1a0($s1) +/* 05A19C 8005959C 24018000 */ li $at, -32768 +/* 05A1A0 800595A0 3329FFFF */ andi $t1, $t9, 0xffff +/* 05A1A4 800595A4 00492023 */ subu $a0, $v0, $t1 +/* 05A1A8 800595A8 00812021 */ addu $a0, $a0, $at +/* 05A1AC 800595AC 34018001 */ li $at, 32769 +/* 05A1B0 800595B0 0081082A */ slt $at, $a0, $at +/* 05A1B4 800595B4 14200003 */ bnez $at, .L800595C4 +/* 05A1B8 800595B8 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 05A1BC 800595BC 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 05A1C0 800595C0 00812021 */ addu $a0, $a0, $at +.L800595C4: +/* 05A1C4 800595C4 28818000 */ slti $at, $a0, -0x8000 +/* 05A1C8 800595C8 10200002 */ beqz $at, .L800595D4 +/* 05A1CC 800595CC 3401FFFF */ li $at, 65535 +/* 05A1D0 800595D0 00812021 */ addu $a0, $a0, $at +.L800595D4: +/* 05A1D4 800595D4 28814001 */ slti $at, $a0, 0x4001 +/* 05A1D8 800595D8 10200003 */ beqz $at, .L800595E8 +/* 05A1DC 800595DC 2881C000 */ slti $at, $a0, -0x4000 +/* 05A1E0 800595E0 10200011 */ beqz $at, .L80059628 +/* 05A1E4 800595E4 00000000 */ nop +.L800595E8: +/* 05A1E8 800595E8 922201FC */ lbu $v0, 0x1fc($s1) +/* 05A1EC 800595EC 00000000 */ nop +/* 05A1F0 800595F0 284100C8 */ slti $at, $v0, 0xc8 +/* 05A1F4 800595F4 1020000D */ beqz $at, .L8005962C +/* 05A1F8 800595F8 00000000 */ nop +/* 05A1FC 800595FC C632002C */ lwc1 $f18, 0x2c($s1) +/* 05A200 80059600 3C01BFF0 */ li $at, 0xBFF00000 # -1.875000 +/* 05A204 80059604 44818800 */ mtc1 $at, $f17 +/* 05A208 80059608 44808000 */ mtc1 $zero, $f16 +/* 05A20C 8005960C 460091A1 */ cvt.d.s $f6, $f18 +/* 05A210 80059610 4630303E */ c.le.d $f6, $f16 +/* 05A214 80059614 8FAA00C8 */ lw $t2, 0xc8($sp) +/* 05A218 80059618 45000004 */ bc1f .L8005962C +/* 05A21C 8005961C 004A5821 */ addu $t3, $v0, $t2 +/* 05A220 80059620 10000002 */ b .L8005962C +/* 05A224 80059624 A22B01FC */ sb $t3, 0x1fc($s1) +.L80059628: +/* 05A228 80059628 A22001FC */ sb $zero, 0x1fc($s1) +.L8005962C: +/* 05A22C 8005962C C7A40054 */ lwc1 $f4, 0x54($sp) +/* 05A230 80059630 C7AA004C */ lwc1 $f10, 0x4c($sp) +/* 05A234 80059634 E7A40050 */ swc1 $f4, 0x50($sp) +/* 05A238 80059638 C7A80050 */ lwc1 $f8, 0x50($sp) +/* 05A23C 8005963C C7B0005C */ lwc1 $f16, 0x5c($sp) +/* 05A240 80059640 E7AA0054 */ swc1 $f10, 0x54($sp) +/* 05A244 80059644 46004487 */ neg.s $f18, $f8 +/* 05A248 80059648 46128182 */ mul.s $f6, $f16, $f18 +/* 05A24C 8005964C C7A40054 */ lwc1 $f4, 0x54($sp) +/* 05A250 80059650 C7AA006C */ lwc1 $f10, 0x6c($sp) +/* 05A254 80059654 8FA200C0 */ lw $v0, 0xc0($sp) +/* 05A258 80059658 460A2202 */ mul.s $f8, $f4, $f10 +/* 05A25C 8005965C E7B2004C */ swc1 $f18, 0x4c($sp) +/* 05A260 80059660 C450000C */ lwc1 $f16, 0xc($v0) +/* 05A264 80059664 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 05A268 80059668 46048282 */ mul.s $f10, $f16, $f4 +/* 05A26C 8005966C 46083000 */ add.s $f0, $f6, $f8 +/* 05A270 80059670 C4460014 */ lwc1 $f6, 0x14($v0) +/* 05A274 80059674 44811000 */ mtc1 $at, $f2 +/* 05A278 80059678 46069202 */ mul.s $f8, $f18, $f6 +/* 05A27C 8005967C 46000007 */ neg.s $f0, $f0 +/* 05A280 80059680 C7B20044 */ lwc1 $f18, 0x44($sp) +/* 05A284 80059684 3C01C0A0 */ li $at, 0xC0A00000 # -5.000000 +/* 05A288 80059688 46085400 */ add.s $f16, $f10, $f8 +/* 05A28C 8005968C 46008100 */ add.s $f4, $f16, $f0 +/* 05A290 80059690 44810000 */ mtc1 $at, $f0 +/* 05A294 80059694 46122183 */ div.s $f6, $f4, $f18 +/* 05A298 80059698 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 05A29C 8005969C 46003287 */ neg.s $f10, $f6 +/* 05A2A0 800596A0 460A103C */ c.lt.s $f2, $f10 +/* 05A2A4 800596A4 E7AA0054 */ swc1 $f10, 0x54($sp) +/* 05A2A8 800596A8 45000002 */ bc1f .L800596B4 +/* 05A2AC 800596AC 00000000 */ nop +/* 05A2B0 800596B0 E7A20054 */ swc1 $f2, 0x54($sp) +.L800596B4: +/* 05A2B4 800596B4 C7A80054 */ lwc1 $f8, 0x54($sp) +/* 05A2B8 800596B8 00000000 */ nop +/* 05A2BC 800596BC 4600403C */ c.lt.s $f8, $f0 +/* 05A2C0 800596C0 00000000 */ nop +/* 05A2C4 800596C4 45000002 */ bc1f .L800596D0 +/* 05A2C8 800596C8 00000000 */ nop +/* 05A2CC 800596CC E7A00054 */ swc1 $f0, 0x54($sp) +.L800596D0: +/* 05A2D0 800596D0 444DF800 */ cfc1 $t5, $31 +/* 05A2D4 800596D4 44810000 */ mtc1 $at, $f0 +/* 05A2D8 800596D8 35A10003 */ ori $at, $t5, 3 +/* 05A2DC 800596DC 38210002 */ xori $at, $at, 2 +/* 05A2E0 800596E0 44C1F800 */ ctc1 $at, $31 +/* 05A2E4 800596E4 C7B00054 */ lwc1 $f16, 0x54($sp) +/* 05A2E8 800596E8 862C01BA */ lh $t4, 0x1ba($s1) +/* 05A2EC 800596EC 46008124 */ cvt.w.s $f4, $f16 +/* 05A2F0 800596F0 3C01C2C8 */ li $at, 0xC2C80000 # -100.000000 +/* 05A2F4 800596F4 440E2000 */ mfc1 $t6, $f4 +/* 05A2F8 800596F8 44CDF800 */ ctc1 $t5, $31 +/* 05A2FC 800596FC 018E7821 */ addu $t7, $t4, $t6 +/* 05A300 80059700 A62F01BA */ sh $t7, 0x1ba($s1) +/* 05A304 80059704 C7A60064 */ lwc1 $f6, 0x64($sp) +/* 05A308 80059708 C4520010 */ lwc1 $f18, 0x10($v0) +/* 05A30C 8005970C C7A80044 */ lwc1 $f8, 0x44($sp) +/* 05A310 80059710 46069281 */ sub.s $f10, $f18, $f6 +/* 05A314 80059714 00000000 */ nop +/* 05A318 80059718 46085403 */ div.s $f16, $f10, $f8 +/* 05A31C 8005971C 4610003C */ c.lt.s $f0, $f16 +/* 05A320 80059720 E7B00050 */ swc1 $f16, 0x50($sp) +/* 05A324 80059724 45000002 */ bc1f .L80059730 +/* 05A328 80059728 00000000 */ nop +/* 05A32C 8005972C E7A00050 */ swc1 $f0, 0x50($sp) +.L80059730: +/* 05A330 80059730 44810000 */ mtc1 $at, $f0 +/* 05A334 80059734 C7A40050 */ lwc1 $f4, 0x50($sp) +/* 05A338 80059738 00000000 */ nop +/* 05A33C 8005973C 4600203C */ c.lt.s $f4, $f0 +/* 05A340 80059740 00000000 */ nop +/* 05A344 80059744 45000002 */ bc1f .L80059750 +/* 05A348 80059748 00000000 */ nop +/* 05A34C 8005974C E7A00050 */ swc1 $f0, 0x50($sp) +.L80059750: +/* 05A350 80059750 4459F800 */ cfc1 $t9, $31 +/* 05A354 80059754 C7B20050 */ lwc1 $f18, 0x50($sp) +/* 05A358 80059758 37210003 */ ori $at, $t9, 3 +/* 05A35C 8005975C 38210002 */ xori $at, $at, 2 +/* 05A360 80059760 44C1F800 */ ctc1 $at, $31 +/* 05A364 80059764 863801BC */ lh $t8, 0x1bc($s1) +/* 05A368 80059768 460091A4 */ cvt.w.s $f6, $f18 +/* 05A36C 8005976C 44093000 */ mfc1 $t1, $f6 +/* 05A370 80059770 44D9F800 */ ctc1 $t9, $31 +/* 05A374 80059774 03095021 */ addu $t2, $t8, $t1 +/* 05A378 80059778 A62A01BC */ sh $t2, 0x1bc($s1) +.L8005977C: +/* 05A37C 8005977C 8FBF001C */ lw $ra, 0x1c($sp) +.L80059780: +/* 05A380 80059780 8FB00014 */ lw $s0, 0x14($sp) +/* 05A384 80059784 8FB10018 */ lw $s1, 0x18($sp) +/* 05A388 80059788 03E00008 */ jr $ra +/* 05A38C 8005978C 27BD00C0 */ addiu $sp, $sp, 0xc0 + diff --git a/asm/non_matchings/unknown_043920/func_80059790.s b/asm/non_matchings/unknown_043920/func_80059790.s new file mode 100644 index 00000000..6b68366d --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80059790.s @@ -0,0 +1,89 @@ +glabel func_80059790 +/* 05A390 80059790 3C0E8012 */ lui $t6, %hi(D_80126170) # $t6, 0x8012 +/* 05A394 80059794 8DCE6170 */ lw $t6, %lo(D_80126170)($t6) +/* 05A398 80059798 24010032 */ li $at, 50 +/* 05A39C 8005979C 15C10012 */ bne $t6, $at, .L800597E8 +/* 05A3A0 800597A0 24080E10 */ li $t0, 3600 +/* 05A3A4 800597A4 44842000 */ mtc1 $a0, $f4 +/* 05A3A8 800597A8 3C01800E */ lui $at, %hi(D_800E692C) # $at, 0x800e +/* 05A3AC 800597AC 468021A0 */ cvt.s.w $f6, $f4 +/* 05A3B0 800597B0 C42B6928 */ lwc1 $f11, %lo(D_800E6928)($at) +/* 05A3B4 800597B4 C42A692C */ lwc1 $f10, %lo(D_800E692C)($at) +/* 05A3B8 800597B8 46003221 */ cvt.d.s $f8, $f6 +/* 05A3BC 800597BC 462A4402 */ mul.d $f16, $f8, $f10 +/* 05A3C0 800597C0 444FF800 */ cfc1 $t7, $31 +/* 05A3C4 800597C4 00000000 */ nop +/* 05A3C8 800597C8 35E10003 */ ori $at, $t7, 3 +/* 05A3CC 800597CC 38210002 */ xori $at, $at, 2 +/* 05A3D0 800597D0 44C1F800 */ ctc1 $at, $31 +/* 05A3D4 800597D4 00000000 */ nop +/* 05A3D8 800597D8 462084A4 */ cvt.w.d $f18, $f16 +/* 05A3DC 800597DC 44CFF800 */ ctc1 $t7, $31 +/* 05A3E0 800597E0 44049000 */ mfc1 $a0, $f18 +/* 05A3E4 800597E4 00000000 */ nop +.L800597E8: +/* 05A3E8 800597E8 0088001A */ div $zero, $a0, $t0 +/* 05A3EC 800597EC 2409003C */ li $t1, 60 +/* 05A3F0 800597F0 15000002 */ bnez $t0, .L800597FC +/* 05A3F4 800597F4 00000000 */ nop +/* 05A3F8 800597F8 0007000D */ break 7 +.L800597FC: +/* 05A3FC 800597FC 2401FFFF */ li $at, -1 +/* 05A400 80059800 15010004 */ bne $t0, $at, .L80059814 +/* 05A404 80059804 3C018000 */ lui $at, 0x8000 +/* 05A408 80059808 14810002 */ bne $a0, $at, .L80059814 +/* 05A40C 8005980C 00000000 */ nop +/* 05A410 80059810 0006000D */ break 6 +.L80059814: +/* 05A414 80059814 00001012 */ mflo $v0 +/* 05A418 80059818 ACA20000 */ sw $v0, ($a1) +/* 05A41C 8005981C 00000000 */ nop +/* 05A420 80059820 00480019 */ multu $v0, $t0 +/* 05A424 80059824 0000C012 */ mflo $t8 +/* 05A428 80059828 0098C823 */ subu $t9, $a0, $t8 +/* 05A42C 8005982C 00000000 */ nop +/* 05A430 80059830 0329001A */ div $zero, $t9, $t1 +/* 05A434 80059834 15200002 */ bnez $t1, .L80059840 +/* 05A438 80059838 00000000 */ nop +/* 05A43C 8005983C 0007000D */ break 7 +.L80059840: +/* 05A440 80059840 2401FFFF */ li $at, -1 +/* 05A444 80059844 15210004 */ bne $t1, $at, .L80059858 +/* 05A448 80059848 3C018000 */ lui $at, 0x8000 +/* 05A44C 8005984C 17210002 */ bne $t9, $at, .L80059858 +/* 05A450 80059850 00000000 */ nop +/* 05A454 80059854 0006000D */ break 6 +.L80059858: +/* 05A458 80059858 00001812 */ mflo $v1 +/* 05A45C 8005985C ACC30000 */ sw $v1, ($a2) +/* 05A460 80059860 8CAA0000 */ lw $t2, ($a1) +/* 05A464 80059864 00000000 */ nop +/* 05A468 80059868 01480019 */ multu $t2, $t0 +/* 05A46C 8005986C 00005812 */ mflo $t3 +/* 05A470 80059870 008B6023 */ subu $t4, $a0, $t3 +/* 05A474 80059874 00000000 */ nop +/* 05A478 80059878 00690019 */ multu $v1, $t1 +/* 05A47C 8005987C 00006812 */ mflo $t5 +/* 05A480 80059880 018D7023 */ subu $t6, $t4, $t5 +/* 05A484 80059884 000E7880 */ sll $t7, $t6, 2 +/* 05A488 80059888 01EE7823 */ subu $t7, $t7, $t6 +/* 05A48C 8005988C 000F78C0 */ sll $t7, $t7, 3 +/* 05A490 80059890 01EE7821 */ addu $t7, $t7, $t6 +/* 05A494 80059894 000F7880 */ sll $t7, $t7, 2 +/* 05A498 80059898 01E9001A */ div $zero, $t7, $t1 +/* 05A49C 8005989C 15200002 */ bnez $t1, .L800598A8 +/* 05A4A0 800598A0 00000000 */ nop +/* 05A4A4 800598A4 0007000D */ break 7 +.L800598A8: +/* 05A4A8 800598A8 2401FFFF */ li $at, -1 +/* 05A4AC 800598AC 15210004 */ bne $t1, $at, .L800598C0 +/* 05A4B0 800598B0 3C018000 */ lui $at, 0x8000 +/* 05A4B4 800598B4 15E10002 */ bne $t7, $at, .L800598C0 +/* 05A4B8 800598B8 00000000 */ nop +/* 05A4BC 800598BC 0006000D */ break 6 +.L800598C0: +/* 05A4C0 800598C0 0000C012 */ mflo $t8 +/* 05A4C4 800598C4 ACF80000 */ sw $t8, ($a3) +/* 05A4C8 800598C8 03E00008 */ jr $ra +/* 05A4CC 800598CC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_800598D0.s b/asm/non_matchings/unknown_043920/func_800598D0.s new file mode 100644 index 00000000..c2cff64e --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_800598D0.s @@ -0,0 +1,31 @@ +glabel func_800598D0 +/* 05A4D0 800598D0 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 05A4D4 800598D4 AFBF0014 */ sw $ra, 0x14($sp) +/* 05A4D8 800598D8 3C05FF00 */ lui $a1, (0xFF0000FF >> 16) # lui $a1, 0xff00 +/* 05A4DC 800598DC 34A500FF */ ori $a1, (0xFF0000FF & 0xFFFF) # ori $a1, $a1, 0xff +/* 05A4E0 800598E0 0C01C327 */ jal func_80070C9C +/* 05A4E4 800598E4 240421C0 */ li $a0, 8640 +/* 05A4E8 800598E8 3C038012 */ lui $v1, %hi(D_8011D590) # $v1, 0x8012 +/* 05A4EC 800598EC 3C048012 */ lui $a0, %hi(D_8011D5A0) # $a0, 0x8012 +/* 05A4F0 800598F0 2484D5A0 */ addiu $a0, %lo(D_8011D5A0) # addiu $a0, $a0, -0x2a60 +/* 05A4F4 800598F4 2463D590 */ addiu $v1, %lo(D_8011D590) # addiu $v1, $v1, -0x2a70 +/* 05A4F8 800598F8 3C058012 */ lui $a1, %hi(D_8011D5A8) # $a1, 0x8012 +/* 05A4FC 800598FC 24A5D5A8 */ addiu $a1, %lo(D_8011D5A8) # addiu $a1, $a1, -0x2a58 +/* 05A500 80059900 244F10E0 */ addiu $t7, $v0, 0x10e0 +/* 05A504 80059904 AC620000 */ sw $v0, ($v1) +/* 05A508 80059908 AC6F0004 */ sw $t7, 4($v1) +/* 05A50C 8005990C AC600008 */ sw $zero, 8($v1) +/* 05A510 80059910 A4800000 */ sh $zero, ($a0) +/* 05A514 80059914 A4800002 */ sh $zero, 2($a0) +/* 05A518 80059918 A4800004 */ sh $zero, 4($a0) +/* 05A51C 8005991C A4A00000 */ sh $zero, ($a1) +/* 05A520 80059920 A4A00002 */ sh $zero, 2($a1) +/* 05A524 80059924 3C018012 */ lui $at, %hi(D_8011D59D) # $at, 0x8012 +/* 05A528 80059928 8FBF0014 */ lw $ra, 0x14($sp) +/* 05A52C 8005992C A020D59D */ sb $zero, %lo(D_8011D59D)($at) +/* 05A530 80059930 3C018012 */ lui $at, %hi(D_8011D5AC) # $at, 0x8012 +/* 05A534 80059934 2418FFFF */ li $t8, -1 +/* 05A538 80059938 A438D5AC */ sh $t8, %lo(D_8011D5AC)($at) +/* 05A53C 8005993C 03E00008 */ jr $ra +/* 05A540 80059940 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_043920/func_80059944.s b/asm/non_matchings/unknown_043920/func_80059944.s new file mode 100644 index 00000000..c688098c --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80059944.s @@ -0,0 +1,18 @@ +glabel func_80059944 +/* 05A544 80059944 3C0E8012 */ lui $t6, %hi(D_8011D59D) # $t6, 0x8012 +/* 05A548 80059948 81CED59D */ lb $t6, %lo(D_8011D59D)($t6) +/* 05A54C 8005994C 3C038012 */ lui $v1, %hi(D_8011D59C) # $v1, 0x8012 +/* 05A550 80059950 2463D59C */ addiu $v1, %lo(D_8011D59C) # addiu $v1, $v1, -0x2a64 +/* 05A554 80059954 A06E0000 */ sb $t6, ($v1) +/* 05A558 80059958 80620000 */ lb $v0, ($v1) +/* 05A55C 8005995C 3C018012 */ lui $at, 0x8012 +/* 05A560 80059960 00027840 */ sll $t7, $v0, 1 +/* 05A564 80059964 002F0821 */ addu $at, $at, $t7 +/* 05A568 80059968 A420D5A0 */ sh $zero, -0x2a60($at) +/* 05A56C 8005996C 3C018012 */ lui $at, 0x8012 +/* 05A570 80059970 002F0821 */ addu $at, $at, $t7 +/* 05A574 80059974 A420D5A8 */ sh $zero, -0x2a58($at) +/* 05A578 80059978 3C018012 */ lui $at, 0x8012 +/* 05A57C 8005997C 03E00008 */ jr $ra +/* 05A580 80059980 A420D59E */ sh $zero, -0x2a62($at) + diff --git a/asm/non_matchings/unknown_043920/func_80059984.s b/asm/non_matchings/unknown_043920/func_80059984.s new file mode 100644 index 00000000..01986cbb --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80059984.s @@ -0,0 +1,11 @@ +glabel func_80059984 +/* 05A584 80059984 3C0E8012 */ lui $t6, %hi(D_8011D59C) # $t6, 0x8012 +/* 05A588 80059988 81CED59C */ lb $t6, %lo(D_8011D59C)($t6) +/* 05A58C 8005998C 3C018012 */ lui $at, %hi(D_8011D59D) # $at, 0x8012 +/* 05A590 80059990 25CF0001 */ addiu $t7, $t6, 1 +/* 05A594 80059994 31F80001 */ andi $t8, $t7, 1 +/* 05A598 80059998 A038D59D */ sb $t8, %lo(D_8011D59D)($at) +/* 05A59C 8005999C 3C018012 */ lui $at, 0x8012 +/* 05A5A0 800599A0 03E00008 */ jr $ra +/* 05A5A4 800599A4 A424D5AC */ sh $a0, -0x2a54($at) + diff --git a/asm/non_matchings/unknown_043920/func_800599A8.s b/asm/non_matchings/unknown_043920/func_800599A8.s new file mode 100644 index 00000000..953b13d9 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_800599A8.s @@ -0,0 +1,6 @@ +glabel func_800599A8 +/* 05A5A8 800599A8 3C028012 */ lui $v0, %hi(D_8011D5AC) # $v0, 0x8012 +/* 05A5AC 800599AC 8442D5AC */ lh $v0, %lo(D_8011D5AC)($v0) +/* 05A5B0 800599B0 03E00008 */ jr $ra +/* 05A5B4 800599B4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_800599B8.s b/asm/non_matchings/unknown_043920/func_800599B8.s new file mode 100644 index 00000000..8a8a6e6b --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_800599B8.s @@ -0,0 +1,48 @@ +glabel func_800599B8 +/* 05A5B8 800599B8 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 05A5BC 800599BC 3C038012 */ lui $v1, %hi(D_80120001) # $v1, 0x8012 +/* 05A5C0 800599C0 8063D59C */ lb $v1, %lo(D_8011D59C)($v1) +/* 05A5C4 800599C4 3C0A8012 */ lui $t2, 0x8012 +/* 05A5C8 800599C8 24630001 */ addiu $v1, %lo(D_80120001) # addiu $v1, $v1, 1 +/* 05A5CC 800599CC 30780001 */ andi $t8, $v1, 1 +/* 05A5D0 800599D0 00184880 */ sll $t1, $t8, 2 +/* 05A5D4 800599D4 01495021 */ addu $t2, $t2, $t1 +/* 05A5D8 800599D8 8D4AD590 */ lw $t2, -0x2a70($t2) +/* 05A5DC 800599DC 8FB90048 */ lw $t9, 0x48($sp) +/* 05A5E0 800599E0 AFA5003C */ sw $a1, 0x3c($sp) +/* 05A5E4 800599E4 AFBF0024 */ sw $ra, 0x24($sp) +/* 05A5E8 800599E8 AFA60040 */ sw $a2, 0x40($sp) +/* 05A5EC 800599EC 00067400 */ sll $t6, $a2, 0x10 +/* 05A5F0 800599F0 87A5003E */ lh $a1, 0x3e($sp) +/* 05A5F4 800599F4 27A8002E */ addiu $t0, $sp, 0x2e +/* 05A5F8 800599F8 000E3403 */ sra $a2, $t6, 0x10 +/* 05A5FC 800599FC AFA70044 */ sw $a3, 0x44($sp) +/* 05A600 80059A00 AFA80014 */ sw $t0, 0x14($sp) +/* 05A604 80059A04 AFB80030 */ sw $t8, 0x30($sp) +/* 05A608 80059A08 AFAA0018 */ sw $t2, 0x18($sp) +/* 05A60C 80059A0C 0C01D2CD */ jal func_80074B34 +/* 05A610 80059A10 AFB90010 */ sw $t9, 0x10($sp) +/* 05A614 80059A14 8FAB0044 */ lw $t3, 0x44($sp) +/* 05A618 80059A18 8FA30030 */ lw $v1, 0x30($sp) +/* 05A61C 80059A1C 1160000E */ beqz $t3, .L80059A58 +/* 05A620 80059A20 00402025 */ move $a0, $v0 +/* 05A624 80059A24 1440000A */ bnez $v0, .L80059A50 +/* 05A628 80059A28 240FFFFF */ li $t7, -1 +/* 05A62C 80059A2C 87AC002E */ lh $t4, 0x2e($sp) +/* 05A630 80059A30 00036840 */ sll $t5, $v1, 1 +/* 05A634 80059A34 3C018012 */ lui $at, 0x8012 +/* 05A638 80059A38 002D0821 */ addu $at, $at, $t5 +/* 05A63C 80059A3C 8FAE003C */ lw $t6, 0x3c($sp) +/* 05A640 80059A40 A42CD5A0 */ sh $t4, -0x2a60($at) +/* 05A644 80059A44 3C018012 */ lui $at, %hi(D_8011D5AC) # $at, 0x8012 +/* 05A648 80059A48 10000003 */ b .L80059A58 +/* 05A64C 80059A4C A42ED5AC */ sh $t6, %lo(D_8011D5AC)($at) +.L80059A50: +/* 05A650 80059A50 3C018012 */ lui $at, %hi(D_8011D5AC) # $at, 0x8012 +/* 05A654 80059A54 A42FD5AC */ sh $t7, %lo(D_8011D5AC)($at) +.L80059A58: +/* 05A658 80059A58 8FBF0024 */ lw $ra, 0x24($sp) +/* 05A65C 80059A5C 27BD0038 */ addiu $sp, $sp, 0x38 +/* 05A660 80059A60 03E00008 */ jr $ra +/* 05A664 80059A64 00801025 */ move $v0, $a0 + diff --git a/asm/non_matchings/unknown_043920/func_80059A68.s b/asm/non_matchings/unknown_043920/func_80059A68.s new file mode 100644 index 00000000..aec7b275 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80059A68.s @@ -0,0 +1,63 @@ +glabel func_80059A68 +/* 05A668 80059A68 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 05A66C 80059A6C AFA40028 */ sw $a0, 0x28($sp) +/* 05A670 80059A70 AFA5002C */ sw $a1, 0x2c($sp) +/* 05A674 80059A74 00A02025 */ move $a0, $a1 +/* 05A678 80059A78 AFBF001C */ sw $ra, 0x1c($sp) +/* 05A67C 80059A7C 3C05FF00 */ lui $a1, (0xFF0000FF >> 16) # lui $a1, 0xff00 +/* 05A680 80059A80 AFB00018 */ sw $s0, 0x18($sp) +/* 05A684 80059A84 AFA60030 */ sw $a2, 0x30($sp) +/* 05A688 80059A88 0C01C327 */ jal func_80070C9C +/* 05A68C 80059A8C 34A500FF */ ori $a1, (0xFF0000FF & 0xFFFF) # ori $a1, $a1, 0xff +/* 05A690 80059A90 10400029 */ beqz $v0, .L80059B38 +/* 05A694 80059A94 00408025 */ move $s0, $v0 +/* 05A698 80059A98 8FA60028 */ lw $a2, 0x28($sp) +/* 05A69C 80059A9C 8FA7002C */ lw $a3, 0x2c($sp) +/* 05A6A0 80059AA0 24040031 */ li $a0, 49 +/* 05A6A4 80059AA4 0C01DB9A */ jal func_80076E68 +/* 05A6A8 80059AA8 00402825 */ move $a1, $v0 +/* 05A6AC 80059AAC 3C038012 */ lui $v1, %hi(D_8011D590) # $v1, 0x8012 +/* 05A6B0 80059AB0 2463D590 */ addiu $v1, %lo(D_8011D590) # addiu $v1, $v1, -0x2a70 +/* 05A6B4 80059AB4 8C640008 */ lw $a0, 8($v1) +/* 05A6B8 80059AB8 00000000 */ nop +/* 05A6BC 80059ABC 10800004 */ beqz $a0, .L80059AD0 +/* 05A6C0 80059AC0 8FA6002C */ lw $a2, 0x2c($sp) +/* 05A6C4 80059AC4 0C01C450 */ jal func_80071140 +/* 05A6C8 80059AC8 00000000 */ nop +/* 05A6CC 80059ACC 8FA6002C */ lw $a2, 0x2c($sp) +.L80059AD0: +/* 05A6D0 80059AD0 2405FFFF */ li $a1, -1 +/* 05A6D4 80059AD4 24C6FFF8 */ addiu $a2, $a2, -8 +/* 05A6D8 80059AD8 00C02025 */ move $a0, $a2 +/* 05A6DC 80059ADC 0C01C327 */ jal func_80070C9C +/* 05A6E0 80059AE0 AFA60020 */ sw $a2, 0x20($sp) +/* 05A6E4 80059AE4 3C038012 */ lui $v1, %hi(D_8011D590) # $v1, 0x8012 +/* 05A6E8 80059AE8 2463D590 */ addiu $v1, %lo(D_8011D590) # addiu $v1, $v1, -0x2a70 +/* 05A6EC 80059AEC 8FA60020 */ lw $a2, 0x20($sp) +/* 05A6F0 80059AF0 1040000F */ beqz $v0, .L80059B30 +/* 05A6F4 80059AF4 AC620008 */ sw $v0, 8($v1) +/* 05A6F8 80059AF8 860F0004 */ lh $t7, 4($s0) +/* 05A6FC 80059AFC 8FB80030 */ lw $t8, 0x30($sp) +/* 05A700 80059B00 3C018012 */ lui $at, %hi(D_8011D5A4) # $at, 0x8012 +/* 05A704 80059B04 A70F0000 */ sh $t7, ($t8) +/* 05A708 80059B08 86190006 */ lh $t9, 6($s0) +/* 05A70C 80059B0C 26040008 */ addiu $a0, $s0, 8 +/* 05A710 80059B10 A439D5A4 */ sh $t9, %lo(D_8011D5A4)($at) +/* 05A714 80059B14 8C650008 */ lw $a1, 8($v1) +/* 05A718 80059B18 0C032768 */ jal bcopy +/* 05A71C 80059B1C 00000000 */ nop +/* 05A720 80059B20 0C01C450 */ jal func_80071140 +/* 05A724 80059B24 02002025 */ move $a0, $s0 +/* 05A728 80059B28 10000004 */ b .L80059B3C +/* 05A72C 80059B2C 00001025 */ move $v0, $zero +.L80059B30: +/* 05A730 80059B30 0C01C450 */ jal func_80071140 +/* 05A734 80059B34 02002025 */ move $a0, $s0 +.L80059B38: +/* 05A738 80059B38 24020001 */ li $v0, 1 +.L80059B3C: +/* 05A73C 80059B3C 8FBF001C */ lw $ra, 0x1c($sp) +/* 05A740 80059B40 8FB00018 */ lw $s0, 0x18($sp) +/* 05A744 80059B44 03E00008 */ jr $ra +/* 05A748 80059B48 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_043920/func_80059B4C.s b/asm/non_matchings/unknown_043920/func_80059B4C.s new file mode 100644 index 00000000..d25e22ef --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80059B4C.s @@ -0,0 +1,15 @@ +glabel func_80059B4C +/* 05A74C 80059B4C 3C048012 */ lui $a0, %hi(D_8011D598) # $a0, 0x8012 +/* 05A750 80059B50 8C84D598 */ lw $a0, %lo(D_8011D598)($a0) +/* 05A754 80059B54 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 05A758 80059B58 10800003 */ beqz $a0, .L80059B68 +/* 05A75C 80059B5C AFBF0014 */ sw $ra, 0x14($sp) +/* 05A760 80059B60 0C01C450 */ jal func_80071140 +/* 05A764 80059B64 00000000 */ nop +.L80059B68: +/* 05A768 80059B68 8FBF0014 */ lw $ra, 0x14($sp) +/* 05A76C 80059B6C 3C018012 */ lui $at, %hi(D_8011D598) # $at, 0x8012 +/* 05A770 80059B70 AC20D598 */ sw $zero, %lo(D_8011D598)($at) +/* 05A774 80059B74 03E00008 */ jr $ra +/* 05A778 80059B78 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_043920/func_80059B7C.s b/asm/non_matchings/unknown_043920/func_80059B7C.s new file mode 100644 index 00000000..84a28ddb --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80059B7C.s @@ -0,0 +1,31 @@ +glabel func_80059B7C +/* 05A77C 80059B7C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 05A780 80059B80 3C028012 */ lui $v0, %hi(D_8011D59C) # $v0, 0x8012 +/* 05A784 80059B84 8042D59C */ lb $v0, %lo(D_8011D59C)($v0) +/* 05A788 80059B88 3C0A8012 */ lui $t2, 0x8012 +/* 05A78C 80059B8C 3C0C8012 */ lui $t4, 0x8012 +/* 05A790 80059B90 00024840 */ sll $t1, $v0, 1 +/* 05A794 80059B94 00025880 */ sll $t3, $v0, 2 +/* 05A798 80059B98 018B6021 */ addu $t4, $t4, $t3 +/* 05A79C 80059B9C 01495021 */ addu $t2, $t2, $t1 +/* 05A7A0 80059BA0 854AD5A0 */ lh $t2, -0x2a60($t2) +/* 05A7A4 80059BA4 8D8CD590 */ lw $t4, -0x2a70($t4) +/* 05A7A8 80059BA8 87A8003A */ lh $t0, 0x3a($sp) +/* 05A7AC 80059BAC AFA5002C */ sw $a1, 0x2c($sp) +/* 05A7B0 80059BB0 AFBF0024 */ sw $ra, 0x24($sp) +/* 05A7B4 80059BB4 AFA60030 */ sw $a2, 0x30($sp) +/* 05A7B8 80059BB8 AFA70034 */ sw $a3, 0x34($sp) +/* 05A7BC 80059BBC 00067400 */ sll $t6, $a2, 0x10 +/* 05A7C0 80059BC0 0007C400 */ sll $t8, $a3, 0x10 +/* 05A7C4 80059BC4 87A5002E */ lh $a1, 0x2e($sp) +/* 05A7C8 80059BC8 00183C03 */ sra $a3, $t8, 0x10 +/* 05A7CC 80059BCC 000E3403 */ sra $a2, $t6, 0x10 +/* 05A7D0 80059BD0 AFAA0014 */ sw $t2, 0x14($sp) +/* 05A7D4 80059BD4 AFAC0018 */ sw $t4, 0x18($sp) +/* 05A7D8 80059BD8 0C01D400 */ jal func_80075000 +/* 05A7DC 80059BDC AFA80010 */ sw $t0, 0x10($sp) +/* 05A7E0 80059BE0 8FBF0024 */ lw $ra, 0x24($sp) +/* 05A7E4 80059BE4 27BD0028 */ addiu $sp, $sp, 0x28 +/* 05A7E8 80059BE8 03E00008 */ jr $ra +/* 05A7EC 80059BEC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_80059BF0.s b/asm/non_matchings/unknown_043920/func_80059BF0.s new file mode 100644 index 00000000..43f369df --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80059BF0.s @@ -0,0 +1,146 @@ +glabel func_80059BF0 +/* 05A7F0 80059BF0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 05A7F4 80059BF4 AFBF0014 */ sw $ra, 0x14($sp) +/* 05A7F8 80059BF8 AFA5002C */ sw $a1, 0x2c($sp) +/* 05A7FC 80059BFC 8C880064 */ lw $t0, 0x64($a0) +/* 05A800 80059C00 00803025 */ move $a2, $a0 +/* 05A804 80059C04 85040164 */ lh $a0, 0x164($t0) +/* 05A808 80059C08 AFA60028 */ sw $a2, 0x28($sp) +/* 05A80C 80059C0C 0C01C1FE */ jal func_800707F8 +/* 05A810 80059C10 AFA80020 */ sw $t0, 0x20($sp) +/* 05A814 80059C14 8FA80020 */ lw $t0, 0x20($sp) +/* 05A818 80059C18 E7A00018 */ swc1 $f0, 0x18($sp) +/* 05A81C 80059C1C 850F0166 */ lh $t7, 0x166($t0) +/* 05A820 80059C20 850E0162 */ lh $t6, 0x162($t0) +/* 05A824 80059C24 00000000 */ nop +/* 05A828 80059C28 01CF2023 */ subu $a0, $t6, $t7 +/* 05A82C 80059C2C 0004C400 */ sll $t8, $a0, 0x10 +/* 05A830 80059C30 0C01C1FE */ jal func_800707F8 +/* 05A834 80059C34 00182403 */ sra $a0, $t8, 0x10 +/* 05A838 80059C38 C7A40018 */ lwc1 $f4, 0x18($sp) +/* 05A83C 80059C3C 44803000 */ mtc1 $zero, $f6 +/* 05A840 80059C40 46040302 */ mul.s $f12, $f0, $f4 +/* 05A844 80059C44 8FA60028 */ lw $a2, 0x28($sp) +/* 05A848 80059C48 8FA80020 */ lw $t0, 0x20($sp) +/* 05A84C 80059C4C 3C098012 */ lui $t1, %hi(D_8011D59E) # $t1, 0x8012 +/* 05A850 80059C50 4606603C */ c.lt.s $f12, $f6 +/* 05A854 80059C54 46006086 */ mov.s $f2, $f12 +/* 05A858 80059C58 45000007 */ bc1f .L80059C78 +/* 05A85C 80059C5C 2529D59E */ addiu $t1, %lo(D_8011D59E) # addiu $t1, $t1, -0x2a62 +/* 05A860 80059C60 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 05A864 80059C64 44815800 */ mtc1 $at, $f11 +/* 05A868 80059C68 44805000 */ mtc1 $zero, $f10 +/* 05A86C 80059C6C 46006221 */ cvt.d.s $f8, $f12 +/* 05A870 80059C70 462A4402 */ mul.d $f16, $f8, $f10 +/* 05A874 80059C74 462080A0 */ cvt.s.d $f2, $f16 +.L80059C78: +/* 05A878 80059C78 852E0000 */ lh $t6, ($t1) +/* 05A87C 80059C7C 8FAF002C */ lw $t7, 0x2c($sp) +/* 05A880 80059C80 3C014188 */ li $at, 0x41880000 # 17.000000 +/* 05A884 80059C84 44810000 */ mtc1 $at, $f0 +/* 05A888 80059C88 01CFC023 */ subu $t8, $t6, $t7 +/* 05A88C 80059C8C 46001482 */ mul.s $f18, $f2, $f0 +/* 05A890 80059C90 A5380000 */ sh $t8, ($t1) +/* 05A894 80059C94 85240000 */ lh $a0, ($t1) +/* 05A898 80059C98 00000000 */ nop +/* 05A89C 80059C9C 1C80005C */ bgtz $a0, .L80059E10 +/* 05A8A0 80059CA0 46120081 */ sub.s $f2, $f0, $f18 +/* 05A8A4 80059CA4 1C80005A */ bgtz $a0, .L80059E10 +/* 05A8A8 80059CA8 3C058012 */ lui $a1, %hi(D_8011D59C) # $a1, 0x8012 +/* 05A8AC 80059CAC 80A5D59C */ lb $a1, %lo(D_8011D59C)($a1) +/* 05A8B0 80059CB0 3C0E8012 */ lui $t6, %hi(D_8011D5A0) # $t6, 0x8012 +/* 05A8B4 80059CB4 25CED5A0 */ addiu $t6, %lo(D_8011D5A0) # addiu $t6, $t6, -0x2a60 +/* 05A8B8 80059CB8 3C0D8012 */ lui $t5, %hi(D_8011D5A0) # $t5, 0x8012 +/* 05A8BC 80059CBC 3C0C8012 */ lui $t4, %hi(D_8011D590) # $t4, 0x8012 +/* 05A8C0 80059CC0 3C0A8012 */ lui $t2, %hi(D_8011D59C) # $t2, 0x8012 +/* 05A8C4 80059CC4 0005C840 */ sll $t9, $a1, 1 +/* 05A8C8 80059CC8 032E1821 */ addu $v1, $t9, $t6 +/* 05A8CC 80059CCC 254AD59C */ addiu $t2, %lo(D_8011D59C) # addiu $t2, $t2, -0x2a64 +/* 05A8D0 80059CD0 258CD590 */ addiu $t4, %lo(D_8011D590) # addiu $t4, $t4, -0x2a70 +/* 05A8D4 80059CD4 25ADD5A0 */ addiu $t5, %lo(D_8011D5A0) # addiu $t5, $t5, -0x2a60 +/* 05A8D8 80059CD8 240B000C */ li $t3, 12 +.L80059CDC: +/* 05A8DC 80059CDC 84670000 */ lh $a3, ($v1) +/* 05A8E0 80059CE0 248F001E */ addiu $t7, $a0, 0x1e +/* 05A8E4 80059CE4 28E10168 */ slti $at, $a3, 0x168 +/* 05A8E8 80059CE8 1420000D */ bnez $at, .L80059D20 +/* 05A8EC 80059CEC A52F0000 */ sh $t7, ($t1) +/* 05A8F0 80059CF0 0C01BAAC */ jal func_8006EAB0 +/* 05A8F4 80059CF4 00000000 */ nop +/* 05A8F8 80059CF8 3C0A8012 */ lui $t2, %hi(D_8011D59C) # $t2, 0x8012 +/* 05A8FC 80059CFC 14400044 */ bnez $v0, .L80059E10 +/* 05A900 80059D00 254AD59C */ addiu $t2, %lo(D_8011D59C) # addiu $t2, $t2, -0x2a64 +/* 05A904 80059D04 81590000 */ lb $t9, ($t2) +/* 05A908 80059D08 3C018012 */ lui $at, 0x8012 +/* 05A90C 80059D0C 00197040 */ sll $t6, $t9, 1 +/* 05A910 80059D10 002E0821 */ addu $at, $at, $t6 +/* 05A914 80059D14 24180001 */ li $t8, 1 +/* 05A918 80059D18 1000003D */ b .L80059E10 +/* 05A91C 80059D1C A438D5A8 */ sh $t8, -0x2a58($at) +.L80059D20: +/* 05A920 80059D20 00EB0019 */ multu $a3, $t3 +/* 05A924 80059D24 0005C880 */ sll $t9, $a1, 2 +/* 05A928 80059D28 0199C021 */ addu $t8, $t4, $t9 +/* 05A92C 80059D2C 4459F800 */ cfc1 $t9, $31 +/* 05A930 80059D30 C4C4000C */ lwc1 $f4, 0xc($a2) +/* 05A934 80059D34 37210003 */ ori $at, $t9, 3 +/* 05A938 80059D38 38210002 */ xori $at, $at, 2 +/* 05A93C 80059D3C 44C1F800 */ ctc1 $at, $31 +/* 05A940 80059D40 8F0E0000 */ lw $t6, ($t8) +/* 05A944 80059D44 460021A4 */ cvt.w.s $f6, $f4 +/* 05A948 80059D48 44183000 */ mfc1 $t8, $f6 +/* 05A94C 80059D4C 00007812 */ mflo $t7 +/* 05A950 80059D50 01EE1021 */ addu $v0, $t7, $t6 +/* 05A954 80059D54 A4580000 */ sh $t8, ($v0) +/* 05A958 80059D58 44D9F800 */ ctc1 $t9, $31 +/* 05A95C 80059D5C C4C80010 */ lwc1 $f8, 0x10($a2) +/* 05A960 80059D60 00000000 */ nop +/* 05A964 80059D64 46024280 */ add.s $f10, $f8, $f2 +/* 05A968 80059D68 444FF800 */ cfc1 $t7, $31 +/* 05A96C 80059D6C 00000000 */ nop +/* 05A970 80059D70 35E10003 */ ori $at, $t7, 3 +/* 05A974 80059D74 38210002 */ xori $at, $at, 2 +/* 05A978 80059D78 44C1F800 */ ctc1 $at, $31 +/* 05A97C 80059D7C 37210003 */ ori $at, $t9, 3 +/* 05A980 80059D80 46005424 */ cvt.w.s $f16, $f10 +/* 05A984 80059D84 38210002 */ xori $at, $at, 2 +/* 05A988 80059D88 440E8000 */ mfc1 $t6, $f16 +/* 05A98C 80059D8C 44CFF800 */ ctc1 $t7, $31 +/* 05A990 80059D90 A44E0002 */ sh $t6, 2($v0) +/* 05A994 80059D94 C4D20014 */ lwc1 $f18, 0x14($a2) +/* 05A998 80059D98 44C1F800 */ ctc1 $at, $31 +/* 05A99C 80059D9C 00000000 */ nop +/* 05A9A0 80059DA0 46009124 */ cvt.w.s $f4, $f18 +/* 05A9A4 80059DA4 44182000 */ mfc1 $t8, $f4 +/* 05A9A8 80059DA8 44D9F800 */ ctc1 $t9, $31 +/* 05A9AC 80059DAC A4580004 */ sh $t8, 4($v0) +/* 05A9B0 80059DB0 850E0160 */ lh $t6, 0x160($t0) +/* 05A9B4 80059DB4 84CF0000 */ lh $t7, ($a2) +/* 05A9B8 80059DB8 00000000 */ nop +/* 05A9BC 80059DBC 01EEC821 */ addu $t9, $t7, $t6 +/* 05A9C0 80059DC0 A459000A */ sh $t9, 0xa($v0) +/* 05A9C4 80059DC4 850F0162 */ lh $t7, 0x162($t0) +/* 05A9C8 80059DC8 84D80002 */ lh $t8, 2($a2) +/* 05A9CC 80059DCC 00000000 */ nop +/* 05A9D0 80059DD0 030F7021 */ addu $t6, $t8, $t7 +/* 05A9D4 80059DD4 A44E0008 */ sh $t6, 8($v0) +/* 05A9D8 80059DD8 85180164 */ lh $t8, 0x164($t0) +/* 05A9DC 80059DDC 84D90004 */ lh $t9, 4($a2) +/* 05A9E0 80059DE0 00000000 */ nop +/* 05A9E4 80059DE4 03387821 */ addu $t7, $t9, $t8 +/* 05A9E8 80059DE8 A44F0006 */ sh $t7, 6($v0) +/* 05A9EC 80059DEC 81450000 */ lb $a1, ($t2) +/* 05A9F0 80059DF0 85240000 */ lh $a0, ($t1) +/* 05A9F4 80059DF4 00057040 */ sll $t6, $a1, 1 +/* 05A9F8 80059DF8 01AE1821 */ addu $v1, $t5, $t6 +/* 05A9FC 80059DFC 84790000 */ lh $t9, ($v1) +/* 05AA00 80059E00 00000000 */ nop +/* 05AA04 80059E04 27380001 */ addiu $t8, $t9, 1 +/* 05AA08 80059E08 1880FFB4 */ blez $a0, .L80059CDC +/* 05AA0C 80059E0C A4780000 */ sh $t8, ($v1) +.L80059E10: +/* 05AA10 80059E10 8FBF0014 */ lw $ra, 0x14($sp) +/* 05AA14 80059E14 27BD0028 */ addiu $sp, $sp, 0x28 +/* 05AA18 80059E18 03E00008 */ jr $ra +/* 05AA1C 80059E1C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_80059E20.s b/asm/non_matchings/unknown_043920/func_80059E20.s new file mode 100644 index 00000000..08b4e499 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80059E20.s @@ -0,0 +1,10 @@ +glabel func_80059E20 +/* 05AA20 80059E20 3C0E8012 */ lui $t6, %hi(D_8011D59C) # $t6, 0x8012 +/* 05AA24 80059E24 81CED59C */ lb $t6, %lo(D_8011D59C)($t6) +/* 05AA28 80059E28 3C028012 */ lui $v0, 0x8012 +/* 05AA2C 80059E2C 000E7840 */ sll $t7, $t6, 1 +/* 05AA30 80059E30 004F1021 */ addu $v0, $v0, $t7 +/* 05AA34 80059E34 8442D5A8 */ lh $v0, -0x2a58($v0) +/* 05AA38 80059E38 03E00008 */ jr $ra +/* 05AA3C 80059E3C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_80059E40.s b/asm/non_matchings/unknown_043920/func_80059E40.s new file mode 100644 index 00000000..529cf79e --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_80059E40.s @@ -0,0 +1,370 @@ +glabel func_80059E40 +/* 05AA40 80059E40 3C058012 */ lui $a1, %hi(D_80120001) # $a1, 0x8012 +/* 05AA44 80059E44 80A5D59C */ lb $a1, %lo(D_8011D59C)($a1) +/* 05AA48 80059E48 27BDFF68 */ addiu $sp, $sp, -0x98 +/* 05AA4C 80059E4C 24A50001 */ addiu $a1, %lo(D_80120001) # addiu $a1, $a1, 1 +/* 05AA50 80059E50 AFBF001C */ sw $ra, 0x1c($sp) +/* 05AA54 80059E54 AFB00018 */ sw $s0, 0x18($sp) +/* 05AA58 80059E58 30AE0001 */ andi $t6, $a1, 1 +/* 05AA5C 80059E5C 00808025 */ move $s0, $a0 +/* 05AA60 80059E60 0C006CEB */ jal func_8001B3AC +/* 05AA64 80059E64 AFAE005C */ sw $t6, 0x5c($sp) +/* 05AA68 80059E68 8FA5005C */ lw $a1, 0x5c($sp) +/* 05AA6C 80059E6C 10400002 */ beqz $v0, .L80059E78 +/* 05AA70 80059E70 3C0141F0 */ li $at, 0x41F00000 # 30.000000 +/* 05AA74 80059E74 24050002 */ li $a1, 2 +.L80059E78: +/* 05AA78 80059E78 8E0F0078 */ lw $t7, 0x78($s0) +/* 05AA7C 80059E7C 3C188000 */ lui $t8, %hi(D_80000300) # $t8, 0x8000 +/* 05AA80 80059E80 448F2000 */ mtc1 $t7, $f4 +/* 05AA84 80059E84 44813000 */ mtc1 $at, $f6 +/* 05AA88 80059E88 46802020 */ cvt.s.w $f0, $f4 +/* 05AA8C 80059E8C 8F180300 */ lw $t8, %lo(D_80000300)($t8) +/* 05AA90 80059E90 00057040 */ sll $t6, $a1, 1 +/* 05AA94 80059E94 1700000E */ bnez $t8, .L80059ED0 +/* 05AA98 80059E98 46060083 */ div.s $f2, $f0, $f6 +/* 05AA9C 80059E9C 24010002 */ li $at, 2 +/* 05AAA0 80059EA0 14A1000B */ bne $a1, $at, .L80059ED0 +/* 05AAA4 80059EA4 3C01800E */ lui $at, %hi(D_800E6934) # $at, 0x800e +/* 05AAA8 80059EA8 C42B6930 */ lwc1 $f11, %lo(D_800E6930)($at) +/* 05AAAC 80059EAC C42A6934 */ lwc1 $f10, %lo(D_800E6934)($at) +/* 05AAB0 80059EB0 46000221 */ cvt.d.s $f8, $f0 +/* 05AAB4 80059EB4 462A4402 */ mul.d $f16, $f8, $f10 +/* 05AAB8 80059EB8 3C01403E */ li $at, 0x403E0000 # 2.968750 +/* 05AABC 80059EBC 44819800 */ mtc1 $at, $f19 +/* 05AAC0 80059EC0 44809000 */ mtc1 $zero, $f18 +/* 05AAC4 80059EC4 00000000 */ nop +/* 05AAC8 80059EC8 46328103 */ div.d $f4, $f16, $f18 +/* 05AACC 80059ECC 462020A0 */ cvt.s.d $f2, $f4 +.L80059ED0: +/* 05AAD0 80059ED0 4459F800 */ cfc1 $t9, $31 +/* 05AAD4 80059ED4 3C0D8012 */ lui $t5, 0x8012 +/* 05AAD8 80059ED8 37210003 */ ori $at, $t9, 3 +/* 05AADC 80059EDC 38210002 */ xori $at, $at, 2 +/* 05AAE0 80059EE0 44C1F800 */ ctc1 $at, $31 +/* 05AAE4 80059EE4 01AE6821 */ addu $t5, $t5, $t6 +/* 05AAE8 80059EE8 460011A4 */ cvt.w.s $f6, $f2 +/* 05AAEC 80059EEC 85ADD5A0 */ lh $t5, -0x2a60($t5) +/* 05AAF0 80059EF0 44033000 */ mfc1 $v1, $f6 +/* 05AAF4 80059EF4 25AFFFFE */ addiu $t7, $t5, -2 +/* 05AAF8 80059EF8 44D9F800 */ ctc1 $t9, $31 +/* 05AAFC 80059EFC 006F082A */ slt $at, $v1, $t7 +/* 05AB00 80059F00 14200003 */ bnez $at, .L80059F10 +/* 05AB04 80059F04 AFA30060 */ sw $v1, 0x60($sp) +/* 05AB08 80059F08 10000125 */ b .L8005A3A0 +/* 05AB0C 80059F0C 00001025 */ move $v0, $zero +.L80059F10: +/* 05AB10 80059F10 24010002 */ li $at, 2 +/* 05AB14 80059F14 10A10011 */ beq $a1, $at, .L80059F5C +/* 05AB18 80059F18 2469FFFF */ addiu $t1, $v1, -1 +/* 05AB1C 80059F1C AFA3003C */ sw $v1, 0x3c($sp) +/* 05AB20 80059F20 AFA5005C */ sw $a1, 0x5c($sp) +/* 05AB24 80059F24 AFAD004C */ sw $t5, 0x4c($sp) +/* 05AB28 80059F28 0C01AF62 */ jal func_8006BD88 +/* 05AB2C 80059F2C E7A20094 */ swc1 $f2, 0x94($sp) +/* 05AB30 80059F30 3C188012 */ lui $t8, %hi(D_8011D5AC) # $t8, 0x8012 +/* 05AB34 80059F34 8718D5AC */ lh $t8, %lo(D_8011D5AC)($t8) +/* 05AB38 80059F38 8FA3003C */ lw $v1, 0x3c($sp) +/* 05AB3C 80059F3C 8FA5005C */ lw $a1, 0x5c($sp) +/* 05AB40 80059F40 8FAD004C */ lw $t5, 0x4c($sp) +/* 05AB44 80059F44 C7A20094 */ lwc1 $f2, 0x94($sp) +/* 05AB48 80059F48 10580004 */ beq $v0, $t8, .L80059F5C +/* 05AB4C 80059F4C 2469FFFF */ addiu $t1, $v1, -1 +/* 05AB50 80059F50 10000113 */ b .L8005A3A0 +/* 05AB54 80059F54 00001025 */ move $v0, $zero +/* 05AB58 80059F58 2469FFFF */ addiu $t1, $v1, -1 +.L80059F5C: +/* 05AB5C 80059F5C 0005C880 */ sll $t9, $a1, 2 +/* 05AB60 80059F60 3C1F8012 */ lui $ra, 0x8012 +/* 05AB64 80059F64 03F9F821 */ addu $ra, $ra, $t9 +/* 05AB68 80059F68 00097080 */ sll $t6, $t1, 2 +/* 05AB6C 80059F6C 8FFFD590 */ lw $ra, -0x2a70($ra) +/* 05AB70 80059F70 01C97023 */ subu $t6, $t6, $t1 +/* 05AB74 80059F74 000E7080 */ sll $t6, $t6, 2 +/* 05AB78 80059F78 27A70084 */ addiu $a3, $sp, 0x84 +/* 05AB7C 80059F7C 27A80074 */ addiu $t0, $sp, 0x74 +/* 05AB80 80059F80 27A60064 */ addiu $a2, $sp, 0x64 +/* 05AB84 80059F84 27AC0074 */ addiu $t4, $sp, 0x74 +/* 05AB88 80059F88 240BFFFF */ li $t3, -1 +/* 05AB8C 80059F8C 03EE5021 */ addu $t2, $ra, $t6 +.L80059F90: +/* 05AB90 80059F90 152B001A */ bne $t1, $t3, .L80059FFC +/* 05AB94 80059F94 01401025 */ move $v0, $t2 +/* 05AB98 80059F98 8443000C */ lh $v1, 0xc($v0) +/* 05AB9C 80059F9C 84580018 */ lh $t8, 0x18($v0) +/* 05ABA0 80059FA0 00637821 */ addu $t7, $v1, $v1 +/* 05ABA4 80059FA4 01F8C823 */ subu $t9, $t7, $t8 +/* 05ABA8 80059FA8 44994000 */ mtc1 $t9, $f8 +/* 05ABAC 80059FAC 2442000C */ addiu $v0, $v0, 0xc +/* 05ABB0 80059FB0 468042A0 */ cvt.s.w $f10, $f8 +/* 05ABB4 80059FB4 E4EA0000 */ swc1 $f10, ($a3) +/* 05ABB8 80059FB8 84440002 */ lh $a0, 2($v0) +/* 05ABBC 80059FBC 844F000E */ lh $t7, 0xe($v0) +/* 05ABC0 80059FC0 00847021 */ addu $t6, $a0, $a0 +/* 05ABC4 80059FC4 01CFC023 */ subu $t8, $t6, $t7 +/* 05ABC8 80059FC8 44988000 */ mtc1 $t8, $f16 +/* 05ABCC 80059FCC 00000000 */ nop +/* 05ABD0 80059FD0 468084A0 */ cvt.s.w $f18, $f16 +/* 05ABD4 80059FD4 E5120000 */ swc1 $f18, ($t0) +/* 05ABD8 80059FD8 84450004 */ lh $a1, 4($v0) +/* 05ABDC 80059FDC 844E0010 */ lh $t6, 0x10($v0) +/* 05ABE0 80059FE0 00A5C821 */ addu $t9, $a1, $a1 +/* 05ABE4 80059FE4 032E7823 */ subu $t7, $t9, $t6 +/* 05ABE8 80059FE8 448F2000 */ mtc1 $t7, $f4 +/* 05ABEC 80059FEC 00000000 */ nop +/* 05ABF0 80059FF0 468021A0 */ cvt.s.w $f6, $f4 +/* 05ABF4 80059FF4 1000002F */ b .L8005A0B4 +/* 05ABF8 80059FF8 E4C60000 */ swc1 $f6, ($a2) +.L80059FFC: +/* 05ABFC 80059FFC 012D082A */ slt $at, $t1, $t5 +/* 05AC00 8005A000 1420001A */ bnez $at, .L8005A06C +/* 05AC04 8005A004 00000000 */ nop +/* 05AC08 8005A008 84430000 */ lh $v1, ($v0) +/* 05AC0C 8005A00C 8459FFF4 */ lh $t9, -0xc($v0) +/* 05AC10 8005A010 0063C021 */ addu $t8, $v1, $v1 +/* 05AC14 8005A014 03197023 */ subu $t6, $t8, $t9 +/* 05AC18 8005A018 448E4000 */ mtc1 $t6, $f8 +/* 05AC1C 8005A01C 00000000 */ nop +/* 05AC20 8005A020 468042A0 */ cvt.s.w $f10, $f8 +/* 05AC24 8005A024 E4EA0000 */ swc1 $f10, ($a3) +/* 05AC28 8005A028 84440002 */ lh $a0, 2($v0) +/* 05AC2C 8005A02C 8458FFF6 */ lh $t8, -0xa($v0) +/* 05AC30 8005A030 00847821 */ addu $t7, $a0, $a0 +/* 05AC34 8005A034 01F8C823 */ subu $t9, $t7, $t8 +/* 05AC38 8005A038 44998000 */ mtc1 $t9, $f16 +/* 05AC3C 8005A03C 00000000 */ nop +/* 05AC40 8005A040 468084A0 */ cvt.s.w $f18, $f16 +/* 05AC44 8005A044 E5120000 */ swc1 $f18, ($t0) +/* 05AC48 8005A048 84450004 */ lh $a1, 4($v0) +/* 05AC4C 8005A04C 844FFFF8 */ lh $t7, -8($v0) +/* 05AC50 8005A050 00A57021 */ addu $t6, $a1, $a1 +/* 05AC54 8005A054 01CFC023 */ subu $t8, $t6, $t7 +/* 05AC58 8005A058 44982000 */ mtc1 $t8, $f4 +/* 05AC5C 8005A05C 00000000 */ nop +/* 05AC60 8005A060 468021A0 */ cvt.s.w $f6, $f4 +/* 05AC64 8005A064 10000013 */ b .L8005A0B4 +/* 05AC68 8005A068 E4C60000 */ swc1 $f6, ($a2) +.L8005A06C: +/* 05AC6C 8005A06C 84590000 */ lh $t9, ($v0) +/* 05AC70 8005A070 00000000 */ nop +/* 05AC74 8005A074 44994000 */ mtc1 $t9, $f8 +/* 05AC78 8005A078 00000000 */ nop +/* 05AC7C 8005A07C 468042A0 */ cvt.s.w $f10, $f8 +/* 05AC80 8005A080 E4EA0000 */ swc1 $f10, ($a3) +/* 05AC84 8005A084 844E0002 */ lh $t6, 2($v0) +/* 05AC88 8005A088 00000000 */ nop +/* 05AC8C 8005A08C 448E8000 */ mtc1 $t6, $f16 +/* 05AC90 8005A090 00000000 */ nop +/* 05AC94 8005A094 468084A0 */ cvt.s.w $f18, $f16 +/* 05AC98 8005A098 E5120000 */ swc1 $f18, ($t0) +/* 05AC9C 8005A09C 844F0004 */ lh $t7, 4($v0) +/* 05ACA0 8005A0A0 00000000 */ nop +/* 05ACA4 8005A0A4 448F2000 */ mtc1 $t7, $f4 +/* 05ACA8 8005A0A8 00000000 */ nop +/* 05ACAC 8005A0AC 468021A0 */ cvt.s.w $f6, $f4 +/* 05ACB0 8005A0B0 E4C60000 */ swc1 $f6, ($a2) +.L8005A0B4: +/* 05ACB4 8005A0B4 24C60004 */ addiu $a2, $a2, 4 +/* 05ACB8 8005A0B8 24E70004 */ addiu $a3, $a3, 4 +/* 05ACBC 8005A0BC 25080004 */ addiu $t0, $t0, 4 +/* 05ACC0 8005A0C0 25290001 */ addiu $t1, $t1, 1 +/* 05ACC4 8005A0C4 14CCFFB2 */ bne $a2, $t4, .L80059F90 +/* 05ACC8 8005A0C8 254A000C */ addiu $t2, $t2, 0xc +/* 05ACCC 8005A0CC 8FB80060 */ lw $t8, 0x60($sp) +/* 05ACD0 8005A0D0 27A40084 */ addiu $a0, $sp, 0x84 +/* 05ACD4 8005A0D4 44984000 */ mtc1 $t8, $f8 +/* 05ACD8 8005A0D8 0018C880 */ sll $t9, $t8, 2 +/* 05ACDC 8005A0DC 468042A0 */ cvt.s.w $f10, $f8 +/* 05ACE0 8005A0E0 0338C823 */ subu $t9, $t9, $t8 +/* 05ACE4 8005A0E4 0019C880 */ sll $t9, $t9, 2 +/* 05ACE8 8005A0E8 460A1081 */ sub.s $f2, $f2, $f10 +/* 05ACEC 8005A0EC 03F91021 */ addu $v0, $ra, $t9 +/* 05ACF0 8005A0F0 44061000 */ mfc1 $a2, $f2 +/* 05ACF4 8005A0F4 AFA20048 */ sw $v0, 0x48($sp) +/* 05ACF8 8005A0F8 E7A20094 */ swc1 $f2, 0x94($sp) +/* 05ACFC 8005A0FC 00002825 */ move $a1, $zero +/* 05AD00 8005A100 0C008950 */ jal func_80022540 +/* 05AD04 8005A104 AFAD004C */ sw $t5, 0x4c($sp) +/* 05AD08 8005A108 C7A20094 */ lwc1 $f2, 0x94($sp) +/* 05AD0C 8005A10C E600000C */ swc1 $f0, 0xc($s0) +/* 05AD10 8005A110 44061000 */ mfc1 $a2, $f2 +/* 05AD14 8005A114 27A40074 */ addiu $a0, $sp, 0x74 +/* 05AD18 8005A118 0C008950 */ jal func_80022540 +/* 05AD1C 8005A11C 00002825 */ move $a1, $zero +/* 05AD20 8005A120 C7A20094 */ lwc1 $f2, 0x94($sp) +/* 05AD24 8005A124 E6000010 */ swc1 $f0, 0x10($s0) +/* 05AD28 8005A128 44061000 */ mfc1 $a2, $f2 +/* 05AD2C 8005A12C 27A40064 */ addiu $a0, $sp, 0x64 +/* 05AD30 8005A130 0C008950 */ jal func_80022540 +/* 05AD34 8005A134 00002825 */ move $a1, $zero +/* 05AD38 8005A138 8FA20048 */ lw $v0, 0x48($sp) +/* 05AD3C 8005A13C 8FAD004C */ lw $t5, 0x4c($sp) +/* 05AD40 8005A140 C7A20094 */ lwc1 $f2, 0x94($sp) +/* 05AD44 8005A144 E6000014 */ swc1 $f0, 0x14($s0) +/* 05AD48 8005A148 8444000A */ lh $a0, 0xa($v0) +/* 05AD4C 8005A14C 2446000C */ addiu $a2, $v0, 0xc +/* 05AD50 8005A150 84CE000A */ lh $t6, 0xa($a2) +/* 05AD54 8005A154 308FFFFF */ andi $t7, $a0, 0xffff +/* 05AD58 8005A158 34078001 */ li $a3, 32769 +/* 05AD5C 8005A15C 01CF1823 */ subu $v1, $t6, $t7 +/* 05AD60 8005A160 0067082A */ slt $at, $v1, $a3 +/* 05AD64 8005A164 14200003 */ bnez $at, .L8005A174 +/* 05AD68 8005A168 3C08FFFF */ lui $t0, (0xFFFF0001 >> 16) # lui $t0, 0xffff +/* 05AD6C 8005A16C 35080001 */ ori $t0, (0xFFFF0001 & 0xFFFF) # ori $t0, $t0, 1 +/* 05AD70 8005A170 00681821 */ addu $v1, $v1, $t0 +.L8005A174: +/* 05AD74 8005A174 3C08FFFF */ lui $t0, (0xFFFF0001 >> 16) # lui $t0, 0xffff +/* 05AD78 8005A178 28618000 */ slti $at, $v1, -0x8000 +/* 05AD7C 8005A17C 10200003 */ beqz $at, .L8005A18C +/* 05AD80 8005A180 35080001 */ ori $t0, (0xFFFF0001 & 0xFFFF) # ori $t0, $t0, 1 +/* 05AD84 8005A184 3409FFFF */ li $t1, 65535 +/* 05AD88 8005A188 00691821 */ addu $v1, $v1, $t1 +.L8005A18C: +/* 05AD8C 8005A18C 44838000 */ mtc1 $v1, $f16 +/* 05AD90 8005A190 3409FFFF */ li $t1, 65535 +/* 05AD94 8005A194 468084A0 */ cvt.s.w $f18, $f16 +/* 05AD98 8005A198 46029102 */ mul.s $f4, $f18, $f2 +/* 05AD9C 8005A19C 4459F800 */ cfc1 $t9, $31 +/* 05ADA0 8005A1A0 00000000 */ nop +/* 05ADA4 8005A1A4 37210003 */ ori $at, $t9, 3 +/* 05ADA8 8005A1A8 38210002 */ xori $at, $at, 2 +/* 05ADAC 8005A1AC 44C1F800 */ ctc1 $at, $31 +/* 05ADB0 8005A1B0 00000000 */ nop +/* 05ADB4 8005A1B4 460021A4 */ cvt.w.s $f6, $f4 +/* 05ADB8 8005A1B8 440F3000 */ mfc1 $t7, $f6 +/* 05ADBC 8005A1BC 44D9F800 */ ctc1 $t9, $31 +/* 05ADC0 8005A1C0 008FC821 */ addu $t9, $a0, $t7 +/* 05ADC4 8005A1C4 A6190000 */ sh $t9, ($s0) +/* 05ADC8 8005A1C8 84450008 */ lh $a1, 8($v0) +/* 05ADCC 8005A1CC 84D80008 */ lh $t8, 8($a2) +/* 05ADD0 8005A1D0 30AEFFFF */ andi $t6, $a1, 0xffff +/* 05ADD4 8005A1D4 030E1823 */ subu $v1, $t8, $t6 +/* 05ADD8 8005A1D8 0067082A */ slt $at, $v1, $a3 +/* 05ADDC 8005A1DC 14200003 */ bnez $at, .L8005A1EC +/* 05ADE0 8005A1E0 28618000 */ slti $at, $v1, -0x8000 +/* 05ADE4 8005A1E4 00681821 */ addu $v1, $v1, $t0 +/* 05ADE8 8005A1E8 28618000 */ slti $at, $v1, -0x8000 +.L8005A1EC: +/* 05ADEC 8005A1EC 10200002 */ beqz $at, .L8005A1F8 +/* 05ADF0 8005A1F0 00000000 */ nop +/* 05ADF4 8005A1F4 00691821 */ addu $v1, $v1, $t1 +.L8005A1F8: +/* 05ADF8 8005A1F8 44834000 */ mtc1 $v1, $f8 +/* 05ADFC 8005A1FC 00000000 */ nop +/* 05AE00 8005A200 468042A0 */ cvt.s.w $f10, $f8 +/* 05AE04 8005A204 46025402 */ mul.s $f16, $f10, $f2 +/* 05AE08 8005A208 444FF800 */ cfc1 $t7, $31 +/* 05AE0C 8005A20C 00000000 */ nop +/* 05AE10 8005A210 35E10003 */ ori $at, $t7, 3 +/* 05AE14 8005A214 38210002 */ xori $at, $at, 2 +/* 05AE18 8005A218 44C1F800 */ ctc1 $at, $31 +/* 05AE1C 8005A21C 00000000 */ nop +/* 05AE20 8005A220 460084A4 */ cvt.w.s $f18, $f16 +/* 05AE24 8005A224 440E9000 */ mfc1 $t6, $f18 +/* 05AE28 8005A228 44CFF800 */ ctc1 $t7, $31 +/* 05AE2C 8005A22C 00AE7821 */ addu $t7, $a1, $t6 +/* 05AE30 8005A230 A60F0002 */ sh $t7, 2($s0) +/* 05AE34 8005A234 84440006 */ lh $a0, 6($v0) +/* 05AE38 8005A238 84D90006 */ lh $t9, 6($a2) +/* 05AE3C 8005A23C 3098FFFF */ andi $t8, $a0, 0xffff +/* 05AE40 8005A240 03381823 */ subu $v1, $t9, $t8 +/* 05AE44 8005A244 0067082A */ slt $at, $v1, $a3 +/* 05AE48 8005A248 14200003 */ bnez $at, .L8005A258 +/* 05AE4C 8005A24C 28618000 */ slti $at, $v1, -0x8000 +/* 05AE50 8005A250 00681821 */ addu $v1, $v1, $t0 +/* 05AE54 8005A254 28618000 */ slti $at, $v1, -0x8000 +.L8005A258: +/* 05AE58 8005A258 10200002 */ beqz $at, .L8005A264 +/* 05AE5C 8005A25C 00000000 */ nop +/* 05AE60 8005A260 00691821 */ addu $v1, $v1, $t1 +.L8005A264: +/* 05AE64 8005A264 44832000 */ mtc1 $v1, $f4 +/* 05AE68 8005A268 C60C000C */ lwc1 $f12, 0xc($s0) +/* 05AE6C 8005A26C 468021A0 */ cvt.s.w $f6, $f4 +/* 05AE70 8005A270 C60E0010 */ lwc1 $f14, 0x10($s0) +/* 05AE74 8005A274 8E060014 */ lw $a2, 0x14($s0) +/* 05AE78 8005A278 46023202 */ mul.s $f8, $f6, $f2 +/* 05AE7C 8005A27C AE000074 */ sw $zero, 0x74($s0) +/* 05AE80 8005A280 444EF800 */ cfc1 $t6, $31 +/* 05AE84 8005A284 00000000 */ nop +/* 05AE88 8005A288 35C10003 */ ori $at, $t6, 3 +/* 05AE8C 8005A28C 38210002 */ xori $at, $at, 2 +/* 05AE90 8005A290 44C1F800 */ ctc1 $at, $31 +/* 05AE94 8005A294 00000000 */ nop +/* 05AE98 8005A298 460042A4 */ cvt.w.s $f10, $f8 +/* 05AE9C 8005A29C 44185000 */ mfc1 $t8, $f10 +/* 05AEA0 8005A2A0 44CEF800 */ ctc1 $t6, $31 +/* 05AEA4 8005A2A4 00987021 */ addu $t6, $a0, $t8 +/* 05AEA8 8005A2A8 A60E0004 */ sh $t6, 4($s0) +/* 05AEAC 8005A2AC E7A20094 */ swc1 $f2, 0x94($sp) +/* 05AEB0 8005A2B0 0C00A7C6 */ jal func_80029F18 +/* 05AEB4 8005A2B4 AFAD004C */ sw $t5, 0x4c($sp) +/* 05AEB8 8005A2B8 8FAD004C */ lw $t5, 0x4c($sp) +/* 05AEBC 8005A2BC C7A20094 */ lwc1 $f2, 0x94($sp) +/* 05AEC0 8005A2C0 A602002E */ sh $v0, 0x2e($s0) +/* 05AEC4 8005A2C4 8FAF0060 */ lw $t7, 0x60($sp) +/* 05AEC8 8005A2C8 3C01800E */ lui $at, %hi(D_800E693C) # $at, 0x800e +/* 05AECC 8005A2CC 25F90003 */ addiu $t9, $t7, 3 +/* 05AED0 8005A2D0 15B90033 */ bne $t5, $t9, .L8005A3A0 +/* 05AED4 8005A2D4 24020001 */ li $v0, 1 +/* 05AED8 8005A2D8 C42D6938 */ lwc1 $f13, %lo(D_800E6938)($at) +/* 05AEDC 8005A2DC C42C693C */ lwc1 $f12, %lo(D_800E693C)($at) +/* 05AEE0 8005A2E0 46001021 */ cvt.d.s $f0, $f2 +/* 05AEE4 8005A2E4 4620603E */ c.le.d $f12, $f0 +/* 05AEE8 8005A2E8 8E020064 */ lw $v0, 0x64($s0) +/* 05AEEC 8005A2EC 45000003 */ bc1f .L8005A2FC +/* 05AEF0 8005A2F0 3C014058 */ li $at, 0x40580000 # 3.375000 +/* 05AEF4 8005A2F4 10000029 */ b .L8005A39C +/* 05AEF8 8005A2F8 A04001F7 */ sb $zero, 0x1f7($v0) +.L8005A2FC: +/* 05AEFC 8005A2FC 46206401 */ sub.d $f16, $f12, $f0 +/* 05AF00 8005A300 44819800 */ mtc1 $at, $f19 +/* 05AF04 8005A304 44809000 */ mtc1 $zero, $f18 +/* 05AF08 8005A308 240E0001 */ li $t6, 1 +/* 05AF0C 8005A30C 46328102 */ mul.d $f4, $f16, $f18 +/* 05AF10 8005A310 3C0141E0 */ li $at, 0x41E00000 # 28.000000 +/* 05AF14 8005A314 4458F800 */ cfc1 $t8, $31 +/* 05AF18 8005A318 44CEF800 */ ctc1 $t6, $31 +/* 05AF1C 8005A31C 00000000 */ nop +/* 05AF20 8005A320 462021A4 */ cvt.w.d $f6, $f4 +/* 05AF24 8005A324 444EF800 */ cfc1 $t6, $31 +/* 05AF28 8005A328 00000000 */ nop +/* 05AF2C 8005A32C 31CE0078 */ andi $t6, $t6, 0x78 +/* 05AF30 8005A330 11C00013 */ beqz $t6, .L8005A380 +/* 05AF34 8005A334 00000000 */ nop +/* 05AF38 8005A338 44813800 */ mtc1 $at, $f7 +/* 05AF3C 8005A33C 44803000 */ mtc1 $zero, $f6 +/* 05AF40 8005A340 240E0001 */ li $t6, 1 +/* 05AF44 8005A344 46262181 */ sub.d $f6, $f4, $f6 +/* 05AF48 8005A348 3C018000 */ lui $at, 0x8000 +/* 05AF4C 8005A34C 44CEF800 */ ctc1 $t6, $31 +/* 05AF50 8005A350 00000000 */ nop +/* 05AF54 8005A354 462031A4 */ cvt.w.d $f6, $f6 +/* 05AF58 8005A358 444EF800 */ cfc1 $t6, $31 +/* 05AF5C 8005A35C 00000000 */ nop +/* 05AF60 8005A360 31CE0078 */ andi $t6, $t6, 0x78 +/* 05AF64 8005A364 15C00004 */ bnez $t6, .L8005A378 +/* 05AF68 8005A368 00000000 */ nop +/* 05AF6C 8005A36C 440E3000 */ mfc1 $t6, $f6 +/* 05AF70 8005A370 10000007 */ b .L8005A390 +/* 05AF74 8005A374 01C17025 */ or $t6, $t6, $at +.L8005A378: +/* 05AF78 8005A378 10000005 */ b .L8005A390 +/* 05AF7C 8005A37C 240EFFFF */ li $t6, -1 +.L8005A380: +/* 05AF80 8005A380 440E3000 */ mfc1 $t6, $f6 +/* 05AF84 8005A384 00000000 */ nop +/* 05AF88 8005A388 05C0FFFB */ bltz $t6, .L8005A378 +/* 05AF8C 8005A38C 00000000 */ nop +.L8005A390: +/* 05AF90 8005A390 44D8F800 */ ctc1 $t8, $31 +/* 05AF94 8005A394 A04E01F7 */ sb $t6, 0x1f7($v0) +/* 05AF98 8005A398 00000000 */ nop +.L8005A39C: +/* 05AF9C 8005A39C 24020001 */ li $v0, 1 +.L8005A3A0: +/* 05AFA0 8005A3A0 8FBF001C */ lw $ra, 0x1c($sp) +/* 05AFA4 8005A3A4 8FB00018 */ lw $s0, 0x18($sp) +/* 05AFA8 8005A3A8 03E00008 */ jr $ra +/* 05AFAC 8005A3AC 27BD0098 */ addiu $sp, $sp, 0x98 + diff --git a/asm/non_matchings/unknown_043920/func_8005A3B0.s b/asm/non_matchings/unknown_043920/func_8005A3B0.s new file mode 100644 index 00000000..e34c7715 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8005A3B0.s @@ -0,0 +1,6 @@ +glabel func_8005A3B0 +/* 05AFB0 8005A3B0 240E0001 */ li $t6, 1 +/* 05AFB4 8005A3B4 3C018012 */ lui $at, 0x8012 +/* 05AFB8 8005A3B8 03E00008 */ jr $ra +/* 05AFBC 8005A3BC A02ED584 */ sb $t6, -0x2a7c($at) + diff --git a/asm/non_matchings/unknown_043920/func_8005A3C0.s b/asm/non_matchings/unknown_043920/func_8005A3C0.s new file mode 100644 index 00000000..d29f79a2 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8005A3C0.s @@ -0,0 +1,6 @@ +glabel func_8005A3C0 +/* 05AFC0 8005A3C0 240E0001 */ li $t6, 1 +/* 05AFC4 8005A3C4 3C018012 */ lui $at, 0x8012 +/* 05AFC8 8005A3C8 03E00008 */ jr $ra +/* 05AFCC 8005A3CC A02ED583 */ sb $t6, -0x2a7d($at) + diff --git a/asm/non_matchings/unknown_043920/func_8005A3D0.s b/asm/non_matchings/unknown_043920/func_8005A3D0.s new file mode 100644 index 00000000..3e091a81 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8005A3D0.s @@ -0,0 +1,26 @@ +glabel func_8005A3D0 +/* 05AFD0 8005A3D0 3C05800E */ lui $a1, %hi(D_800DCB50) # $a1, 0x800e +/* 05AFD4 8005A3D4 8CA5CB50 */ lw $a1, %lo(D_800DCB50)($a1) +/* 05AFD8 8005A3D8 00001025 */ move $v0, $zero +/* 05AFDC 8005A3DC 18A00009 */ blez $a1, .L8005A404 +/* 05AFE0 8005A3E0 00002025 */ move $a0, $zero +/* 05AFE4 8005A3E4 3C038004 */ lui $v1, %hi(func_8003B4BC) # $v1, 0x8004 +/* 05AFE8 8005A3E8 2463B4BC */ addiu $v1, %lo(func_8003B4BC) # addiu $v1, $v1, -0x4b44 +.L8005A3EC: +/* 05AFEC 8005A3EC 00647021 */ addu $t6, $v1, $a0 +/* 05AFF0 8005A3F0 91CF0000 */ lbu $t7, ($t6) +/* 05AFF4 8005A3F4 24840001 */ addiu $a0, $a0, 1 +/* 05AFF8 8005A3F8 0085082A */ slt $at, $a0, $a1 +/* 05AFFC 8005A3FC 1420FFFB */ bnez $at, .L8005A3EC +/* 05B000 8005A400 004F1021 */ addu $v0, $v0, $t7 +.L8005A404: +/* 05B004 8005A404 3C18800E */ lui $t8, %hi(D_800DCDD0) # $t8, 0x800e +/* 05B008 8005A408 8F18CDD0 */ lw $t8, %lo(D_800DCDD0)($t8) +/* 05B00C 8005A40C 24190800 */ li $t9, 2048 +/* 05B010 8005A410 10580002 */ beq $v0, $t8, .L8005A41C +/* 05B014 8005A414 3C01800E */ lui $at, %hi(D_800DCB54) # $at, 0x800e +/* 05B018 8005A418 A439CB54 */ sh $t9, %lo(D_800DCB54)($at) +.L8005A41C: +/* 05B01C 8005A41C 03E00008 */ jr $ra +/* 05B020 8005A420 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_8005A424.s b/asm/non_matchings/unknown_043920/func_8005A424.s new file mode 100644 index 00000000..eff726f4 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8005A424.s @@ -0,0 +1,196 @@ +glabel func_8005A424 +/* 05B024 8005A424 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 05B028 8005A428 AFBF0014 */ sw $ra, 0x14($sp) +/* 05B02C 8005A42C AFA50024 */ sw $a1, 0x24($sp) +/* 05B030 8005A430 8C8E0108 */ lw $t6, 0x108($a0) +/* 05B034 8005A434 240FFFFF */ li $t7, -1 +/* 05B038 8005A438 8DC70064 */ lw $a3, 0x64($t6) +/* 05B03C 8005A43C A48F0000 */ sh $t7, ($a0) +/* 05B040 8005A440 C4EE0008 */ lwc1 $f14, 8($a3) +/* 05B044 8005A444 C4EC0000 */ lwc1 $f12, ($a3) +/* 05B048 8005A448 AFA40020 */ sw $a0, 0x20($sp) +/* 05B04C 8005A44C 0C01C1D4 */ jal func_80070750 +/* 05B050 8005A450 AFA7001C */ sw $a3, 0x1c($sp) +/* 05B054 8005A454 8FA60020 */ lw $a2, 0x20($sp) +/* 05B058 8005A458 3058FFFF */ andi $t8, $v0, 0xffff +/* 05B05C 8005A45C 84D901A0 */ lh $t9, 0x1a0($a2) +/* 05B060 8005A460 34018001 */ li $at, 32769 +/* 05B064 8005A464 332AFFFF */ andi $t2, $t9, 0xffff +/* 05B068 8005A468 030A1823 */ subu $v1, $t8, $t2 +/* 05B06C 8005A46C 8FA7001C */ lw $a3, 0x1c($sp) +/* 05B070 8005A470 0061082A */ slt $at, $v1, $at +/* 05B074 8005A474 14200004 */ bnez $at, .L8005A488 +/* 05B078 8005A478 2409FFFF */ li $t1, -1 +/* 05B07C 8005A47C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 05B080 8005A480 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 05B084 8005A484 00611821 */ addu $v1, $v1, $at +.L8005A488: +/* 05B088 8005A488 28618000 */ slti $at, $v1, -0x8000 +/* 05B08C 8005A48C 10200003 */ beqz $at, .L8005A49C +/* 05B090 8005A490 3C048012 */ lui $a0, %hi(D_8011D528) # $a0, 0x8012 +/* 05B094 8005A494 3401FFFF */ li $at, 65535 +/* 05B098 8005A498 00611821 */ addu $v1, $v1, $at +.L8005A49C: +/* 05B09C 8005A49C 3C058012 */ lui $a1, %hi(D_8011D534) # $a1, 0x8012 +/* 05B0A0 8005A4A0 00031823 */ negu $v1, $v1 +/* 05B0A4 8005A4A4 24A5D534 */ addiu $a1, %lo(D_8011D534) # addiu $a1, $a1, -0x2acc +/* 05B0A8 8005A4A8 00035943 */ sra $t3, $v1, 5 +/* 05B0AC 8005A4AC ACAB0000 */ sw $t3, ($a1) +/* 05B0B0 8005A4B0 3C018012 */ lui $at, %hi(D_8011D52C) # $at, 0x8012 +/* 05B0B4 8005A4B4 AC20D52C */ sw $zero, %lo(D_8011D52C)($at) +/* 05B0B8 8005A4B8 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 +/* 05B0BC 8005A4BC AC20D530 */ sw $zero, %lo(D_8011D530)($at) +/* 05B0C0 8005A4C0 2484D528 */ addiu $a0, %lo(D_8011D528) # addiu $a0, $a0, -0x2ad8 +/* 05B0C4 8005A4C4 AC800000 */ sw $zero, ($a0) +/* 05B0C8 8005A4C8 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 +/* 05B0CC 8005A4CC AC20D538 */ sw $zero, %lo(D_8011D538)($at) +/* 05B0D0 8005A4D0 C4C4002C */ lwc1 $f4, 0x2c($a2) +/* 05B0D4 8005A4D4 3C01C010 */ li $at, 0xC0100000 # -2.250000 +/* 05B0D8 8005A4D8 44813800 */ mtc1 $at, $f7 +/* 05B0DC 8005A4DC 44803000 */ mtc1 $zero, $f6 +/* 05B0E0 8005A4E0 46002021 */ cvt.d.s $f0, $f4 +/* 05B0E4 8005A4E4 4620303C */ c.lt.d $f6, $f0 +/* 05B0E8 8005A4E8 3C01C014 */ li $at, 0xC0140000 # -2.312500 +/* 05B0EC 8005A4EC 45000006 */ bc1f .L8005A508 +/* 05B0F0 8005A4F0 00000000 */ nop +/* 05B0F4 8005A4F4 8C8C0000 */ lw $t4, ($a0) +/* 05B0F8 8005A4F8 00000000 */ nop +/* 05B0FC 8005A4FC 358D8000 */ ori $t5, $t4, 0x8000 +/* 05B100 8005A500 1000000C */ b .L8005A534 +/* 05B104 8005A504 AC8D0000 */ sw $t5, ($a0) +.L8005A508: +/* 05B108 8005A508 44814800 */ mtc1 $at, $f9 +/* 05B10C 8005A50C 44804000 */ mtc1 $zero, $f8 +/* 05B110 8005A510 00000000 */ nop +/* 05B114 8005A514 4628003C */ c.lt.d $f0, $f8 +/* 05B118 8005A518 00000000 */ nop +/* 05B11C 8005A51C 45000006 */ bc1f .L8005A538 +/* 05B120 8005A520 8FB90024 */ lw $t9, 0x24($sp) +/* 05B124 8005A524 8C8E0000 */ lw $t6, ($a0) +/* 05B128 8005A528 00000000 */ nop +/* 05B12C 8005A52C 35CF4000 */ ori $t7, $t6, 0x4000 +/* 05B130 8005A530 AC8F0000 */ sw $t7, ($a0) +.L8005A534: +/* 05B134 8005A534 8FB90024 */ lw $t9, 0x24($sp) +.L8005A538: +/* 05B138 8005A538 C4E40000 */ lwc1 $f4, ($a3) +/* 05B13C 8005A53C 44995000 */ mtc1 $t9, $f10 +/* 05B140 8005A540 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 +/* 05B144 8005A544 46805020 */ cvt.s.w $f0, $f10 +/* 05B148 8005A548 44811800 */ mtc1 $at, $f3 +/* 05B14C 8005A54C 44801000 */ mtc1 $zero, $f2 +/* 05B150 8005A550 46002182 */ mul.s $f6, $f4, $f0 +/* 05B154 8005A554 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 +/* 05B158 8005A558 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 +/* 05B15C 8005A55C 8D020000 */ lw $v0, ($t0) +/* 05B160 8005A560 46003221 */ cvt.d.s $f8, $f6 +/* 05B164 8005A564 46224282 */ mul.d $f10, $f8, $f2 +/* 05B168 8005A568 C450000C */ lwc1 $f16, 0xc($v0) +/* 05B16C 8005A56C 240CFFB5 */ li $t4, -75 +/* 05B170 8005A570 460084A1 */ cvt.d.s $f18, $f16 +/* 05B174 8005A574 462A9400 */ add.d $f16, $f18, $f10 +/* 05B178 8005A578 46208120 */ cvt.s.d $f4, $f16 +/* 05B17C 8005A57C E444000C */ swc1 $f4, 0xc($v0) +/* 05B180 8005A580 C4F20008 */ lwc1 $f18, 8($a3) +/* 05B184 8005A584 8D020000 */ lw $v0, ($t0) +/* 05B188 8005A588 46009282 */ mul.s $f10, $f18, $f0 +/* 05B18C 8005A58C C4460014 */ lwc1 $f6, 0x14($v0) +/* 05B190 8005A590 46005421 */ cvt.d.s $f16, $f10 +/* 05B194 8005A594 46228102 */ mul.d $f4, $f16, $f2 +/* 05B198 8005A598 46003221 */ cvt.d.s $f8, $f6 +/* 05B19C 8005A59C 46244180 */ add.d $f6, $f8, $f4 +/* 05B1A0 8005A5A0 462034A0 */ cvt.s.d $f18, $f6 +/* 05B1A4 8005A5A4 E4520014 */ swc1 $f18, 0x14($v0) +/* 05B1A8 8005A5A8 8CA30000 */ lw $v1, ($a1) +/* 05B1AC 8005A5AC 00000000 */ nop +/* 05B1B0 8005A5B0 2861004C */ slti $at, $v1, 0x4c +/* 05B1B4 8005A5B4 14200007 */ bnez $at, .L8005A5D4 +/* 05B1B8 8005A5B8 2861FFB5 */ slti $at, $v1, -0x4b +/* 05B1BC 8005A5BC 8C8A0000 */ lw $t2, ($a0) +/* 05B1C0 8005A5C0 2403004B */ li $v1, 75 +/* 05B1C4 8005A5C4 354BC000 */ ori $t3, $t2, 0xc000 +/* 05B1C8 8005A5C8 AC8B0000 */ sw $t3, ($a0) +/* 05B1CC 8005A5CC ACA30000 */ sw $v1, ($a1) +/* 05B1D0 8005A5D0 2861FFB5 */ slti $at, $v1, -0x4b +.L8005A5D4: +/* 05B1D4 8005A5D4 10200005 */ beqz $at, .L8005A5EC +/* 05B1D8 8005A5D8 00000000 */ nop +/* 05B1DC 8005A5DC 8C8D0000 */ lw $t5, ($a0) +/* 05B1E0 8005A5E0 ACAC0000 */ sw $t4, ($a1) +/* 05B1E4 8005A5E4 35AEC000 */ ori $t6, $t5, 0xc000 +/* 05B1E8 8005A5E8 AC8E0000 */ sw $t6, ($a0) +.L8005A5EC: +/* 05B1EC 8005A5EC 80C20200 */ lb $v0, 0x200($a2) +/* 05B1F0 8005A5F0 8FAF0024 */ lw $t7, 0x24($sp) +/* 05B1F4 8005A5F4 2841FFFF */ slti $at, $v0, -1 +/* 05B1F8 8005A5F8 10200009 */ beqz $at, .L8005A620 +/* 05B1FC 8005A5FC 004FC821 */ addu $t9, $v0, $t7 +/* 05B200 8005A600 A0D90200 */ sb $t9, 0x200($a2) +/* 05B204 8005A604 80C20200 */ lb $v0, 0x200($a2) +/* 05B208 8005A608 00000000 */ nop +/* 05B20C 8005A60C 04400005 */ bltz $v0, .L8005A624 +/* 05B210 8005A610 2841FFFF */ slti $at, $v0, -1 +/* 05B214 8005A614 A0C90200 */ sb $t1, 0x200($a2) +/* 05B218 8005A618 80C20200 */ lb $v0, 0x200($a2) +/* 05B21C 8005A61C 00000000 */ nop +.L8005A620: +/* 05B220 8005A620 2841FFFF */ slti $at, $v0, -1 +.L8005A624: +/* 05B224 8005A624 10200008 */ beqz $at, .L8005A648 +/* 05B228 8005A628 00000000 */ nop +/* 05B22C 8005A62C 8CA30000 */ lw $v1, ($a1) +/* 05B230 8005A630 00000000 */ nop +/* 05B234 8005A634 2861000A */ slti $at, $v1, 0xa +/* 05B238 8005A638 10200003 */ beqz $at, .L8005A648 +/* 05B23C 8005A63C 2861FFF7 */ slti $at, $v1, -9 +/* 05B240 8005A640 10200003 */ beqz $at, .L8005A650 +/* 05B244 8005A644 00000000 */ nop +.L8005A648: +/* 05B248 8005A648 15220010 */ bne $t1, $v0, .L8005A68C +/* 05B24C 8005A64C 24040001 */ li $a0, 1 +.L8005A650: +/* 05B250 8005A650 0C019944 */ jal func_80066510 +/* 05B254 8005A654 AFA60020 */ sw $a2, 0x20($sp) +/* 05B258 8005A658 8FA60020 */ lw $a2, 0x20($sp) +/* 05B25C 8005A65C 14400006 */ bnez $v0, .L8005A678 +/* 05B260 8005A660 3C04800E */ lui $a0, %hi(D_800DCDD4) # $a0, 0x800e +/* 05B264 8005A664 2484CDD4 */ addiu $a0, %lo(D_800DCDD4) # addiu $a0, $a0, -0x322c +/* 05B268 8005A668 0C030076 */ jal func_800C01D8 +/* 05B26C 8005A66C AFA60020 */ sw $a2, 0x20($sp) +/* 05B270 8005A670 8FA60020 */ lw $a2, 0x20($sp) +/* 05B274 8005A674 00000000 */ nop +.L8005A678: +/* 05B278 8005A678 8FB80024 */ lw $t8, 0x24($sp) +/* 05B27C 8005A67C 240A003C */ li $t2, 60 +/* 05B280 8005A680 01585823 */ subu $t3, $t2, $t8 +/* 05B284 8005A684 A0CB0200 */ sb $t3, 0x200($a2) +/* 05B288 8005A688 24040001 */ li $a0, 1 +.L8005A68C: +/* 05B28C 8005A68C 0C01BCE2 */ jal func_8006F388 +/* 05B290 8005A690 AFA60020 */ sw $a2, 0x20($sp) +/* 05B294 8005A694 8FA60020 */ lw $a2, 0x20($sp) +/* 05B298 8005A698 8FAC0024 */ lw $t4, 0x24($sp) +/* 05B29C 8005A69C 80C20200 */ lb $v0, 0x200($a2) +/* 05B2A0 8005A6A0 00000000 */ nop +/* 05B2A4 8005A6A4 1840000E */ blez $v0, .L8005A6E0 +/* 05B2A8 8005A6A8 004C6823 */ subu $t5, $v0, $t4 +/* 05B2AC 8005A6AC A0CD0200 */ sb $t5, 0x200($a2) +/* 05B2B0 8005A6B0 80CE0200 */ lb $t6, 0x200($a2) +/* 05B2B4 8005A6B4 00000000 */ nop +/* 05B2B8 8005A6B8 1DC0000A */ bgtz $t6, .L8005A6E4 +/* 05B2BC 8005A6BC 8FBF0014 */ lw $ra, 0x14($sp) +/* 05B2C0 8005A6C0 8CCF0108 */ lw $t7, 0x108($a2) +/* 05B2C4 8005A6C4 00000000 */ nop +/* 05B2C8 8005A6C8 8DE4003C */ lw $a0, 0x3c($t7) +/* 05B2CC 8005A6CC 0C01B65A */ jal func_8006D968 +/* 05B2D0 8005A6D0 AFA60020 */ sw $a2, 0x20($sp) +/* 05B2D4 8005A6D4 8FA60020 */ lw $a2, 0x20($sp) +/* 05B2D8 8005A6D8 00000000 */ nop +/* 05B2DC 8005A6DC A0C00200 */ sb $zero, 0x200($a2) +.L8005A6E0: +/* 05B2E0 8005A6E0 8FBF0014 */ lw $ra, 0x14($sp) +.L8005A6E4: +/* 05B2E4 8005A6E4 27BD0020 */ addiu $sp, $sp, 0x20 +/* 05B2E8 8005A6E8 03E00008 */ jr $ra +/* 05B2EC 8005A6EC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_043920/func_8005A6F0.s b/asm/non_matchings/unknown_043920/func_8005A6F0.s new file mode 100644 index 00000000..19f331cd --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8005A6F0.s @@ -0,0 +1,1180 @@ +glabel func_8005A6F0 +/* 05B2F0 8005A6F0 27BDFF60 */ addiu $sp, $sp, -0xa0 +/* 05B2F4 8005A6F4 AFBF002C */ sw $ra, 0x2c($sp) +/* 05B2F8 8005A6F8 AFB00028 */ sw $s0, 0x28($sp) +/* 05B2FC 8005A6FC 240EFFFF */ li $t6, -1 +/* 05B300 8005A700 3C018012 */ lui $at, %hi(D_8011D55C) # $at, 0x8012 +/* 05B304 8005A704 00A08025 */ move $s0, $a1 +/* 05B308 8005A708 AFA400A0 */ sw $a0, 0xa0($sp) +/* 05B30C 8005A70C AFA600A8 */ sw $a2, 0xa8($sp) +/* 05B310 8005A710 AFA700AC */ sw $a3, 0xac($sp) +/* 05B314 8005A714 0C01B683 */ jal func_8006DA0C +/* 05B318 8005A718 AC2ED55C */ sw $t6, %lo(D_8011D55C)($at) +/* 05B31C 8005A71C 0C01AF6C */ jal func_8006BDB0 +/* 05B320 8005A720 AFA20094 */ sw $v0, 0x94($sp) +/* 05B324 8005A724 AFA20070 */ sw $v0, 0x70($sp) +/* 05B328 8005A728 820301F6 */ lb $v1, 0x1f6($s0) +/* 05B32C 8005A72C 3C198012 */ lui $t9, %hi(D_8011D540) # $t9, 0x8012 +/* 05B330 8005A730 18600006 */ blez $v1, .L8005A74C +/* 05B334 8005A734 00000000 */ nop +/* 05B338 8005A738 8FAF00A8 */ lw $t7, 0xa8($sp) +/* 05B33C 8005A73C 00000000 */ nop +/* 05B340 8005A740 006FC023 */ subu $t8, $v1, $t7 +/* 05B344 8005A744 10000002 */ b .L8005A750 +/* 05B348 8005A748 A21801F6 */ sb $t8, 0x1f6($s0) +.L8005A74C: +/* 05B34C 8005A74C A20001F6 */ sb $zero, 0x1f6($s0) +.L8005A750: +/* 05B350 8005A750 8F39D540 */ lw $t9, %lo(D_8011D540)($t9) +/* 05B354 8005A754 00000000 */ nop +/* 05B358 8005A758 13200005 */ beqz $t9, .L8005A770 +/* 05B35C 8005A75C 2404FFC4 */ li $a0, -60 +/* 05B360 8005A760 0C01BE53 */ jal func_8006F94C +/* 05B364 8005A764 2405003C */ li $a1, 60 +/* 05B368 8005A768 244D0078 */ addiu $t5, $v0, 0x78 +/* 05B36C 8005A76C A60D01C6 */ sh $t5, 0x1c6($s0) +.L8005A770: +/* 05B370 8005A770 8602018C */ lh $v0, 0x18c($s0) +/* 05B374 8005A774 00000000 */ nop +/* 05B378 8005A778 18400006 */ blez $v0, .L8005A794 +/* 05B37C 8005A77C 00000000 */ nop +/* 05B380 8005A780 8FAE00A8 */ lw $t6, 0xa8($sp) +/* 05B384 8005A784 00000000 */ nop +/* 05B388 8005A788 004E7823 */ subu $t7, $v0, $t6 +/* 05B38C 8005A78C 10000002 */ b .L8005A798 +/* 05B390 8005A790 A60F018C */ sh $t7, 0x18c($s0) +.L8005A794: +/* 05B394 8005A794 A600018C */ sh $zero, 0x18c($s0) +.L8005A798: +/* 05B398 8005A798 0C0078A7 */ jal func_8001E29C +/* 05B39C 8005A79C 24040009 */ li $a0, 9 +/* 05B3A0 8005A7A0 3C038012 */ lui $v1, %hi(D_8011D564) # $v1, 0x8012 +/* 05B3A4 8005A7A4 2463D564 */ addiu $v1, %lo(D_8011D564) # addiu $v1, $v1, -0x2a9c +/* 05B3A8 8005A7A8 AC620000 */ sw $v0, ($v1) +/* 05B3AC 8005A7AC 82190003 */ lb $t9, 3($s0) +/* 05B3B0 8005A7B0 3C01800E */ lui $at, %hi(D_800E6944) # $at, 0x800e +/* 05B3B4 8005A7B4 00196880 */ sll $t5, $t9, 2 +/* 05B3B8 8005A7B8 004D7021 */ addu $t6, $v0, $t5 +/* 05B3BC 8005A7BC C5C40000 */ lwc1 $f4, ($t6) +/* 05B3C0 8005A7C0 C4296940 */ lwc1 $f9, %lo(D_800E6940)($at) +/* 05B3C4 8005A7C4 C4286944 */ lwc1 $f8, %lo(D_800E6944)($at) +/* 05B3C8 8005A7C8 460021A1 */ cvt.d.s $f6, $f4 +/* 05B3CC 8005A7CC 46283282 */ mul.d $f10, $f6, $f8 +/* 05B3D0 8005A7D0 3C0C8012 */ lui $t4, %hi(D_8011D56C) # $t4, 0x8012 +/* 05B3D4 8005A7D4 258CD56C */ addiu $t4, %lo(D_8011D56C) # addiu $t4, $t4, -0x2a94 +/* 05B3D8 8005A7D8 462054A0 */ cvt.s.d $f18, $f10 +/* 05B3DC 8005A7DC E5920000 */ swc1 $f18, ($t4) +/* 05B3E0 8005A7E0 860F0204 */ lh $t7, 0x204($s0) +/* 05B3E4 8005A7E4 00000000 */ nop +/* 05B3E8 8005A7E8 19E00004 */ blez $t7, .L8005A7FC +/* 05B3EC 8005A7EC 3C01800E */ lui $at, %hi(D_800E6948) # $at, 0x800e +/* 05B3F0 8005A7F0 C4246948 */ lwc1 $f4, %lo(D_800E6948)($at) +/* 05B3F4 8005A7F4 00000000 */ nop +/* 05B3F8 8005A7F8 E5840000 */ swc1 $f4, ($t4) +.L8005A7FC: +/* 05B3FC 8005A7FC 0C0078A7 */ jal func_8001E29C +/* 05B400 8005A800 2404000A */ li $a0, 10 +/* 05B404 8005A804 3C038012 */ lui $v1, %hi(D_8011D564) # $v1, 0x8012 +/* 05B408 8005A808 2463D564 */ addiu $v1, %lo(D_8011D564) # addiu $v1, $v1, -0x2a9c +/* 05B40C 8005A80C AC620000 */ sw $v0, ($v1) +/* 05B410 8005A810 82180003 */ lb $t8, 3($s0) +/* 05B414 8005A814 3C018012 */ lui $at, %hi(D_8011D570) # $at, 0x8012 +/* 05B418 8005A818 00186880 */ sll $t5, $t8, 2 +/* 05B41C 8005A81C 004D7021 */ addu $t6, $v0, $t5 +/* 05B420 8005A820 C5C60000 */ lwc1 $f6, ($t6) +/* 05B424 8005A824 2404000B */ li $a0, 11 +/* 05B428 8005A828 0C0078A7 */ jal func_8001E29C +/* 05B42C 8005A82C E426D570 */ swc1 $f6, %lo(D_8011D570)($at) +/* 05B430 8005A830 3C058012 */ lui $a1, %hi(D_8011D564) # $a1, 0x8012 +/* 05B434 8005A834 24A5D564 */ addiu $a1, %lo(D_8011D564) # addiu $a1, $a1, -0x2a9c +/* 05B438 8005A838 ACA20000 */ sw $v0, ($a1) +/* 05B43C 8005A83C 82180003 */ lb $t8, 3($s0) +/* 05B440 8005A840 8FA400A0 */ lw $a0, 0xa0($sp) +/* 05B444 8005A844 0018C880 */ sll $t9, $t8, 2 +/* 05B448 8005A848 00596821 */ addu $t5, $v0, $t9 +/* 05B44C 8005A84C C5A80000 */ lwc1 $f8, ($t5) +/* 05B450 8005A850 3C018012 */ lui $at, %hi(D_8011D574) # $at, 0x8012 +/* 05B454 8005A854 E428D574 */ swc1 $f8, %lo(D_8011D574)($at) +/* 05B458 8005A858 C48A000C */ lwc1 $f10, 0xc($a0) +/* 05B45C 8005A85C 00000000 */ nop +/* 05B460 8005A860 E7AA008C */ swc1 $f10, 0x8c($sp) +/* 05B464 8005A864 C4920010 */ lwc1 $f18, 0x10($a0) +/* 05B468 8005A868 00000000 */ nop +/* 05B46C 8005A86C E7B20088 */ swc1 $f18, 0x88($sp) +/* 05B470 8005A870 C4840014 */ lwc1 $f4, 0x14($a0) +/* 05B474 8005A874 00000000 */ nop +/* 05B478 8005A878 E7A40084 */ swc1 $f4, 0x84($sp) +/* 05B47C 8005A87C 860301B2 */ lh $v1, 0x1b2($s0) +/* 05B480 8005A880 00000000 */ nop +/* 05B484 8005A884 1860000A */ blez $v1, .L8005A8B0 +/* 05B488 8005A888 00000000 */ nop +/* 05B48C 8005A88C 8FAE00A8 */ lw $t6, 0xa8($sp) +/* 05B490 8005A890 00000000 */ nop +/* 05B494 8005A894 006EC023 */ subu $t8, $v1, $t6 +/* 05B498 8005A898 A61801B2 */ sh $t8, 0x1b2($s0) +/* 05B49C 8005A89C 860F01B2 */ lh $t7, 0x1b2($s0) +/* 05B4A0 8005A8A0 00000000 */ nop +/* 05B4A4 8005A8A4 05E10002 */ bgez $t7, .L8005A8B0 +/* 05B4A8 8005A8A8 00000000 */ nop +/* 05B4AC 8005A8AC A60001B2 */ sh $zero, 0x1b2($s0) +.L8005A8B0: +/* 05B4B0 8005A8B0 821901E7 */ lb $t9, 0x1e7($s0) +/* 05B4B4 8005A8B4 00000000 */ nop +/* 05B4B8 8005A8B8 272D0001 */ addiu $t5, $t9, 1 +/* 05B4BC 8005A8BC 0C008D07 */ jal func_8002341C +/* 05B4C0 8005A8C0 A20D01E7 */ sb $t5, 0x1e7($s0) +/* 05B4C4 8005A8C4 1440001A */ bnez $v0, .L8005A930 +/* 05B4C8 8005A8C8 240E001E */ li $t6, 30 +/* 05B4CC 8005A8CC 0C008D5A */ jal func_80023568 +/* 05B4D0 8005A8D0 00000000 */ nop +/* 05B4D4 8005A8D4 14400016 */ bnez $v0, .L8005A930 +/* 05B4D8 8005A8D8 240E001E */ li $t6, 30 +/* 05B4DC 8005A8DC 820E01D6 */ lb $t6, 0x1d6($s0) +/* 05B4E0 8005A8E0 24010004 */ li $at, 4 +/* 05B4E4 8005A8E4 11C10011 */ beq $t6, $at, .L8005A92C +/* 05B4E8 8005A8E8 3C0142F0 */ li $at, 0x42F00000 # 120.000000 +/* 05B4EC 8005A8EC 44813000 */ mtc1 $at, $f6 +/* 05B4F0 8005A8F0 3C018012 */ lui $at, %hi(D_8011D544) # $at, 0x8012 +/* 05B4F4 8005A8F4 C428D544 */ lwc1 $f8, %lo(D_8011D544)($at) +/* 05B4F8 8005A8F8 3C188012 */ lui $t8, %hi(D_8011D540) # $t8, 0x8012 +/* 05B4FC 8005A8FC 4608303C */ c.lt.s $f6, $f8 +/* 05B500 8005A900 00000000 */ nop +/* 05B504 8005A904 4501000A */ bc1t .L8005A930 +/* 05B508 8005A908 240E001E */ li $t6, 30 +/* 05B50C 8005A90C 8F18D540 */ lw $t8, %lo(D_8011D540)($t8) +/* 05B510 8005A910 8FAF0070 */ lw $t7, 0x70($sp) +/* 05B514 8005A914 17000006 */ bnez $t8, .L8005A930 +/* 05B518 8005A918 240E001E */ li $t6, 30 +/* 05B51C 8005A91C 81F9004C */ lb $t9, 0x4c($t7) +/* 05B520 8005A920 00000000 */ nop +/* 05B524 8005A924 332D0040 */ andi $t5, $t9, 0x40 +/* 05B528 8005A928 11A00002 */ beqz $t5, .L8005A934 +.L8005A92C: +/* 05B52C 8005A92C 240E001E */ li $t6, 30 +.L8005A930: +/* 05B530 8005A930 A20E0201 */ sb $t6, 0x201($s0) +.L8005A934: +/* 05B534 8005A934 82180201 */ lb $t8, 0x201($s0) +/* 05B538 8005A938 3C01800E */ lui $at, %hi(D_800E694C) # $at, 0x800e +/* 05B53C 8005A93C C422694C */ lwc1 $f2, %lo(D_800E694C)($at) +/* 05B540 8005A940 1700007C */ bnez $t8, .L8005AB34 +/* 05B544 8005A944 27A40090 */ addiu $a0, $sp, 0x90 +/* 05B548 8005A948 0C006E9D */ jal func_8001BA74 +/* 05B54C 8005A94C E7A20078 */ swc1 $f2, 0x78($sp) +/* 05B550 8005A950 8FAF0090 */ lw $t7, 0x90($sp) +/* 05B554 8005A954 C7A20078 */ lwc1 $f2, 0x78($sp) +/* 05B558 8005A958 00004025 */ move $t0, $zero +/* 05B55C 8005A95C 00003825 */ move $a3, $zero +/* 05B560 8005A960 19E00055 */ blez $t7, .L8005AAB8 +/* 05B564 8005A964 00005025 */ move $t2, $zero +/* 05B568 8005A968 31E30003 */ andi $v1, $t7, 3 +/* 05B56C 8005A96C 10600018 */ beqz $v1, .L8005A9D0 +/* 05B570 8005A970 00604825 */ move $t1, $v1 +/* 05B574 8005A974 0000C880 */ sll $t9, $zero, 2 +/* 05B578 8005A978 00593021 */ addu $a2, $v0, $t9 +/* 05B57C 8005A97C 240B0001 */ li $t3, 1 +.L8005A980: +/* 05B580 8005A980 8CC40000 */ lw $a0, ($a2) +/* 05B584 8005A984 254A0001 */ addiu $t2, $t2, 1 +/* 05B588 8005A988 8C850064 */ lw $a1, 0x64($a0) +/* 05B58C 8005A98C 00000000 */ nop +/* 05B590 8005A990 84AD0000 */ lh $t5, ($a1) +/* 05B594 8005A994 00000000 */ nop +/* 05B598 8005A998 15A00002 */ bnez $t5, .L8005A9A4 +/* 05B59C 8005A99C 00000000 */ nop +/* 05B5A0 8005A9A0 00803825 */ move $a3, $a0 +.L8005A9A4: +/* 05B5A4 8005A9A4 84AE0000 */ lh $t6, ($a1) +/* 05B5A8 8005A9A8 00000000 */ nop +/* 05B5AC 8005A9AC 156E0002 */ bne $t3, $t6, .L8005A9B8 +/* 05B5B0 8005A9B0 00000000 */ nop +/* 05B5B4 8005A9B4 00804025 */ move $t0, $a0 +.L8005A9B8: +/* 05B5B8 8005A9B8 152AFFF1 */ bne $t1, $t2, .L8005A980 +/* 05B5BC 8005A9BC 24C60004 */ addiu $a2, $a2, 4 +/* 05B5C0 8005A9C0 8FB80090 */ lw $t8, 0x90($sp) +/* 05B5C4 8005A9C4 00000000 */ nop +/* 05B5C8 8005A9C8 1158003B */ beq $t2, $t8, .L8005AAB8 +/* 05B5CC 8005A9CC 00000000 */ nop +.L8005A9D0: +/* 05B5D0 8005A9D0 8FAF0090 */ lw $t7, 0x90($sp) +/* 05B5D4 8005A9D4 000A6880 */ sll $t5, $t2, 2 +/* 05B5D8 8005A9D8 000FC880 */ sll $t9, $t7, 2 +/* 05B5DC 8005A9DC 03224821 */ addu $t1, $t9, $v0 +/* 05B5E0 8005A9E0 004D3021 */ addu $a2, $v0, $t5 +/* 05B5E4 8005A9E4 240B0001 */ li $t3, 1 +.L8005A9E8: +/* 05B5E8 8005A9E8 8CC40000 */ lw $a0, ($a2) +/* 05B5EC 8005A9EC 00000000 */ nop +/* 05B5F0 8005A9F0 8C850064 */ lw $a1, 0x64($a0) +/* 05B5F4 8005A9F4 00000000 */ nop +/* 05B5F8 8005A9F8 84AE0000 */ lh $t6, ($a1) +/* 05B5FC 8005A9FC 00000000 */ nop +/* 05B600 8005AA00 15C00002 */ bnez $t6, .L8005AA0C +/* 05B604 8005AA04 00000000 */ nop +/* 05B608 8005AA08 00803825 */ move $a3, $a0 +.L8005AA0C: +/* 05B60C 8005AA0C 84B80000 */ lh $t8, ($a1) +/* 05B610 8005AA10 00000000 */ nop +/* 05B614 8005AA14 15780002 */ bne $t3, $t8, .L8005AA20 +/* 05B618 8005AA18 00000000 */ nop +/* 05B61C 8005AA1C 00804025 */ move $t0, $a0 +.L8005AA20: +/* 05B620 8005AA20 8CC50004 */ lw $a1, 4($a2) +/* 05B624 8005AA24 00000000 */ nop +/* 05B628 8005AA28 8CA30064 */ lw $v1, 0x64($a1) +/* 05B62C 8005AA2C 00000000 */ nop +/* 05B630 8005AA30 84640000 */ lh $a0, ($v1) +/* 05B634 8005AA34 00000000 */ nop +/* 05B638 8005AA38 14800002 */ bnez $a0, .L8005AA44 +/* 05B63C 8005AA3C 00000000 */ nop +/* 05B640 8005AA40 00A03825 */ move $a3, $a1 +.L8005AA44: +/* 05B644 8005AA44 15640002 */ bne $t3, $a0, .L8005AA50 +/* 05B648 8005AA48 00000000 */ nop +/* 05B64C 8005AA4C 00A04025 */ move $t0, $a1 +.L8005AA50: +/* 05B650 8005AA50 8CC50008 */ lw $a1, 8($a2) +/* 05B654 8005AA54 00000000 */ nop +/* 05B658 8005AA58 8CA30064 */ lw $v1, 0x64($a1) +/* 05B65C 8005AA5C 00000000 */ nop +/* 05B660 8005AA60 84640000 */ lh $a0, ($v1) +/* 05B664 8005AA64 00000000 */ nop +/* 05B668 8005AA68 14800002 */ bnez $a0, .L8005AA74 +/* 05B66C 8005AA6C 00000000 */ nop +/* 05B670 8005AA70 00A03825 */ move $a3, $a1 +.L8005AA74: +/* 05B674 8005AA74 15640002 */ bne $t3, $a0, .L8005AA80 +/* 05B678 8005AA78 00000000 */ nop +/* 05B67C 8005AA7C 00A04025 */ move $t0, $a1 +.L8005AA80: +/* 05B680 8005AA80 8CC5000C */ lw $a1, 0xc($a2) +/* 05B684 8005AA84 24C60010 */ addiu $a2, $a2, 0x10 +/* 05B688 8005AA88 8CA30064 */ lw $v1, 0x64($a1) +/* 05B68C 8005AA8C 00000000 */ nop +/* 05B690 8005AA90 84640000 */ lh $a0, ($v1) +/* 05B694 8005AA94 00000000 */ nop +/* 05B698 8005AA98 14800002 */ bnez $a0, .L8005AAA4 +/* 05B69C 8005AA9C 00000000 */ nop +/* 05B6A0 8005AAA0 00A03825 */ move $a3, $a1 +.L8005AAA4: +/* 05B6A4 8005AAA4 15640002 */ bne $t3, $a0, .L8005AAB0 +/* 05B6A8 8005AAA8 00000000 */ nop +/* 05B6AC 8005AAAC 00A04025 */ move $t0, $a1 +.L8005AAB0: +/* 05B6B0 8005AAB0 14C9FFCD */ bne $a2, $t1, .L8005A9E8 +/* 05B6B4 8005AAB4 00000000 */ nop +.L8005AAB8: +/* 05B6B8 8005AAB8 10E0000B */ beqz $a3, .L8005AAE8 +/* 05B6BC 8005AABC 3C01800E */ lui $at, %hi(D_800E6954) # $at, 0x800e +/* 05B6C0 8005AAC0 8FA400A0 */ lw $a0, 0xa0($sp) +/* 05B6C4 8005AAC4 C4EA000C */ lwc1 $f10, 0xc($a3) +/* 05B6C8 8005AAC8 C492000C */ lwc1 $f18, 0xc($a0) +/* 05B6CC 8005AACC C4E40014 */ lwc1 $f4, 0x14($a3) +/* 05B6D0 8005AAD0 46125081 */ sub.s $f2, $f10, $f18 +/* 05B6D4 8005AAD4 C4860014 */ lwc1 $f6, 0x14($a0) +/* 05B6D8 8005AAD8 46021202 */ mul.s $f8, $f2, $f2 +/* 05B6DC 8005AADC 46062001 */ sub.s $f0, $f4, $f6 +/* 05B6E0 8005AAE0 46000282 */ mul.s $f10, $f0, $f0 +/* 05B6E4 8005AAE4 460A4080 */ add.s $f2, $f8, $f10 +.L8005AAE8: +/* 05B6E8 8005AAE8 8FA400A0 */ lw $a0, 0xa0($sp) +/* 05B6EC 8005AAEC 11000011 */ beqz $t0, .L8005AB34 +/* 05B6F0 8005AAF0 00000000 */ nop +/* 05B6F4 8005AAF4 C4256950 */ lwc1 $f5, %lo(D_800E6950)($at) +/* 05B6F8 8005AAF8 C4246954 */ lwc1 $f4, %lo(D_800E6954)($at) +/* 05B6FC 8005AAFC 460014A1 */ cvt.d.s $f18, $f2 +/* 05B700 8005AB00 4632203E */ c.le.d $f4, $f18 +/* 05B704 8005AB04 00000000 */ nop +/* 05B708 8005AB08 4500000A */ bc1f .L8005AB34 +/* 05B70C 8005AB0C 00000000 */ nop +/* 05B710 8005AB10 C506000C */ lwc1 $f6, 0xc($t0) +/* 05B714 8005AB14 C488000C */ lwc1 $f8, 0xc($a0) +/* 05B718 8005AB18 C50A0014 */ lwc1 $f10, 0x14($t0) +/* 05B71C 8005AB1C 46083081 */ sub.s $f2, $f6, $f8 +/* 05B720 8005AB20 C4920014 */ lwc1 $f18, 0x14($a0) +/* 05B724 8005AB24 46021102 */ mul.s $f4, $f2, $f2 +/* 05B728 8005AB28 46125001 */ sub.s $f0, $f10, $f18 +/* 05B72C 8005AB2C 46000182 */ mul.s $f6, $f0, $f0 +/* 05B730 8005AB30 46062080 */ add.s $f2, $f4, $f6 +.L8005AB34: +/* 05B734 8005AB34 86020204 */ lh $v0, 0x204($s0) +/* 05B738 8005AB38 8FA400A0 */ lw $a0, 0xa0($sp) +/* 05B73C 8005AB3C 1840000A */ blez $v0, .L8005AB68 +/* 05B740 8005AB40 00000000 */ nop +/* 05B744 8005AB44 8FA600A8 */ lw $a2, 0xa8($sp) +/* 05B748 8005AB48 3C01800E */ lui $at, %hi(D_800E6958) # $at, 0x800e +/* 05B74C 8005AB4C 00467823 */ subu $t7, $v0, $a2 +/* 05B750 8005AB50 A60F0204 */ sh $t7, 0x204($s0) +/* 05B754 8005AB54 C42A6958 */ lwc1 $f10, %lo(D_800E6958)($at) +/* 05B758 8005AB58 C608002C */ lwc1 $f8, 0x2c($s0) +/* 05B75C 8005AB5C 00000000 */ nop +/* 05B760 8005AB60 460A4482 */ mul.s $f18, $f8, $f10 +/* 05B764 8005AB64 E612002C */ swc1 $f18, 0x2c($s0) +.L8005AB68: +/* 05B768 8005AB68 86020206 */ lh $v0, 0x206($s0) +/* 05B76C 8005AB6C 8FA600A8 */ lw $a2, 0xa8($sp) +/* 05B770 8005AB70 18400003 */ blez $v0, .L8005AB80 +/* 05B774 8005AB74 0046C823 */ subu $t9, $v0, $a2 +/* 05B778 8005AB78 A602018A */ sh $v0, 0x18a($s0) +/* 05B77C 8005AB7C A6190206 */ sh $t9, 0x206($s0) +.L8005AB80: +/* 05B780 8005AB80 82020201 */ lb $v0, 0x201($s0) +/* 05B784 8005AB84 00000000 */ nop +/* 05B788 8005AB88 1440000B */ bnez $v0, .L8005ABB8 +/* 05B78C 8005AB8C 3C01800E */ lui $at, %hi(D_800E6964) # $at, 0x800e +/* 05B790 8005AB90 C4276960 */ lwc1 $f7, %lo(D_800E6960)($at) +/* 05B794 8005AB94 C4266964 */ lwc1 $f6, %lo(D_800E6964)($at) +/* 05B798 8005AB98 46001121 */ cvt.d.s $f4, $f2 +/* 05B79C 8005AB9C 4626203C */ c.lt.d $f4, $f6 +/* 05B7A0 8005ABA0 240D001E */ li $t5, 30 +/* 05B7A4 8005ABA4 45000004 */ bc1f .L8005ABB8 +/* 05B7A8 8005ABA8 00000000 */ nop +/* 05B7AC 8005ABAC A20D0201 */ sb $t5, 0x201($s0) +/* 05B7B0 8005ABB0 82020201 */ lb $v0, 0x201($s0) +/* 05B7B4 8005ABB4 00000000 */ nop +.L8005ABB8: +/* 05B7B8 8005ABB8 10400218 */ beqz $v0, .L8005B41C +/* 05B7BC 8005ABBC 8FA700AC */ lw $a3, 0xac($sp) +/* 05B7C0 8005ABC0 0C01105C */ jal func_80044170 +/* 05B7C4 8005ABC4 02002825 */ move $a1, $s0 +/* 05B7C8 8005ABC8 3C0E8012 */ lui $t6, %hi(D_8011D528) # $t6, 0x8012 +/* 05B7CC 8005ABCC 8DCED528 */ lw $t6, %lo(D_8011D528)($t6) +/* 05B7D0 8005ABD0 3C0C8012 */ lui $t4, %hi(D_8011D56C) # $t4, 0x8012 +/* 05B7D4 8005ABD4 31D88000 */ andi $t8, $t6, 0x8000 +/* 05B7D8 8005ABD8 258CD56C */ addiu $t4, %lo(D_8011D56C) # addiu $t4, $t4, -0x2a94 +/* 05B7DC 8005ABDC 17000003 */ bnez $t8, .L8005ABEC +/* 05B7E0 8005ABE0 240B0001 */ li $t3, 1 +/* 05B7E4 8005ABE4 240F0001 */ li $t7, 1 +/* 05B7E8 8005ABE8 A20F020C */ sb $t7, 0x20c($s0) +.L8005ABEC: +/* 05B7EC 8005ABEC 920201FE */ lbu $v0, 0x1fe($s0) +/* 05B7F0 8005ABF0 24010003 */ li $at, 3 +/* 05B7F4 8005ABF4 14410011 */ bne $v0, $at, .L8005AC3C +/* 05B7F8 8005ABF8 00000000 */ nop +/* 05B7FC 8005ABFC 921901FF */ lbu $t9, 0x1ff($s0) +/* 05B800 8005AC00 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 05B804 8005AC04 44994000 */ mtc1 $t9, $f8 +/* 05B808 8005AC08 07210004 */ bgez $t9, .L8005AC1C +/* 05B80C 8005AC0C 468042A0 */ cvt.s.w $f10, $f8 +/* 05B810 8005AC10 44819000 */ mtc1 $at, $f18 +/* 05B814 8005AC14 00000000 */ nop +/* 05B818 8005AC18 46125280 */ add.s $f10, $f10, $f18 +.L8005AC1C: +/* 05B81C 8005AC1C 3C014380 */ li $at, 0x43800000 # 256.000000 +/* 05B820 8005AC20 44812000 */ mtc1 $at, $f4 +/* 05B824 8005AC24 C5880000 */ lwc1 $f8, ($t4) +/* 05B828 8005AC28 46045183 */ div.s $f6, $f10, $f4 +/* 05B82C 8005AC2C 46064482 */ mul.s $f18, $f8, $f6 +/* 05B830 8005AC30 E5920000 */ swc1 $f18, ($t4) +/* 05B834 8005AC34 920201FE */ lbu $v0, 0x1fe($s0) +/* 05B838 8005AC38 00000000 */ nop +.L8005AC3C: +/* 05B83C 8005AC3C 1562001E */ bne $t3, $v0, .L8005ACB8 +/* 05B840 8005AC40 24010002 */ li $at, 2 +/* 05B844 8005AC44 920D01FF */ lbu $t5, 0x1ff($s0) +/* 05B848 8005AC48 C5800000 */ lwc1 $f0, ($t4) +/* 05B84C 8005AC4C 448D5000 */ mtc1 $t5, $f10 +/* 05B850 8005AC50 05A10005 */ bgez $t5, .L8005AC68 +/* 05B854 8005AC54 46805120 */ cvt.s.w $f4, $f10 +/* 05B858 8005AC58 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 05B85C 8005AC5C 44814000 */ mtc1 $at, $f8 +/* 05B860 8005AC60 00000000 */ nop +/* 05B864 8005AC64 46082100 */ add.s $f4, $f4, $f8 +.L8005AC68: +/* 05B868 8005AC68 46040182 */ mul.s $f6, $f0, $f4 +/* 05B86C 8005AC6C 3C014300 */ li $at, 0x43000000 # 128.000000 +/* 05B870 8005AC70 44819000 */ mtc1 $at, $f18 +/* 05B874 8005AC74 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 +/* 05B878 8005AC78 46123283 */ div.s $f10, $f6, $f18 +/* 05B87C 8005AC7C 2418003C */ li $t8, 60 +/* 05B880 8005AC80 460A0201 */ sub.s $f8, $f0, $f10 +/* 05B884 8005AC84 E5880000 */ swc1 $f8, ($t4) +/* 05B888 8005AC88 860E0204 */ lh $t6, 0x204($s0) +/* 05B88C 8005AC8C 00000000 */ nop +/* 05B890 8005AC90 19C00005 */ blez $t6, .L8005ACA8 +/* 05B894 8005AC94 00000000 */ nop +/* 05B898 8005AC98 C5840000 */ lwc1 $f4, ($t4) +/* 05B89C 8005AC9C 00000000 */ nop +/* 05B8A0 8005ACA0 46002187 */ neg.s $f6, $f4 +/* 05B8A4 8005ACA4 E5860000 */ swc1 $f6, ($t4) +.L8005ACA8: +/* 05B8A8 8005ACA8 AC38D538 */ sw $t8, %lo(D_8011D538)($at) +/* 05B8AC 8005ACAC 920201FE */ lbu $v0, 0x1fe($s0) +/* 05B8B0 8005ACB0 00000000 */ nop +/* 05B8B4 8005ACB4 24010002 */ li $at, 2 +.L8005ACB8: +/* 05B8B8 8005ACB8 1441002F */ bne $v0, $at, .L8005AD78 +/* 05B8BC 8005ACBC 00000000 */ nop +/* 05B8C0 8005ACC0 920F01FF */ lbu $t7, 0x1ff($s0) +/* 05B8C4 8005ACC4 00000000 */ nop +/* 05B8C8 8005ACC8 000FCE00 */ sll $t9, $t7, 0x18 +/* 05B8CC 8005ACCC 0C01C1F1 */ jal func_800707C4 +/* 05B8D0 8005ACD0 00192403 */ sra $a0, $t9, 0x10 +/* 05B8D4 8005ACD4 3C013FB0 */ li $at, 0x3FB00000 # 1.375000 +/* 05B8D8 8005ACD8 44817800 */ mtc1 $at, $f15 +/* 05B8DC 8005ACDC 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 05B8E0 8005ACE0 44814000 */ mtc1 $at, $f8 +/* 05B8E4 8005ACE4 C6020084 */ lwc1 $f2, 0x84($s0) +/* 05B8E8 8005ACE8 46080102 */ mul.s $f4, $f0, $f8 +/* 05B8EC 8005ACEC C7B200AC */ lwc1 $f18, 0xac($sp) +/* 05B8F0 8005ACF0 44807000 */ mtc1 $zero, $f14 +/* 05B8F4 8005ACF4 920E01FF */ lbu $t6, 0x1ff($s0) +/* 05B8F8 8005ACF8 46022181 */ sub.s $f6, $f4, $f2 +/* 05B8FC 8005ACFC 000EC600 */ sll $t8, $t6, 0x18 +/* 05B900 8005AD00 46009321 */ cvt.d.s $f12, $f18 +/* 05B904 8005AD04 460034A1 */ cvt.d.s $f18, $f6 +/* 05B908 8005AD08 462E9202 */ mul.d $f8, $f18, $f14 +/* 05B90C 8005AD0C 460012A1 */ cvt.d.s $f10, $f2 +/* 05B910 8005AD10 00182403 */ sra $a0, $t8, 0x10 +/* 05B914 8005AD14 462C4102 */ mul.d $f4, $f8, $f12 +/* 05B918 8005AD18 46245180 */ add.d $f6, $f10, $f4 +/* 05B91C 8005AD1C 462034A0 */ cvt.s.d $f18, $f6 +/* 05B920 8005AD20 E6120084 */ swc1 $f18, 0x84($s0) +/* 05B924 8005AD24 E7AC0044 */ swc1 $f12, 0x44($sp) +/* 05B928 8005AD28 0C01C1FE */ jal func_800707F8 +/* 05B92C 8005AD2C E7AD0040 */ swc1 $f13, 0x40($sp) +/* 05B930 8005AD30 3C013FB0 */ li $at, 0x3FB00000 # 1.375000 +/* 05B934 8005AD34 44817800 */ mtc1 $at, $f15 +/* 05B938 8005AD38 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 05B93C 8005AD3C 44815000 */ mtc1 $at, $f10 +/* 05B940 8005AD40 C6020088 */ lwc1 $f2, 0x88($s0) +/* 05B944 8005AD44 460A0102 */ mul.s $f4, $f0, $f10 +/* 05B948 8005AD48 44807000 */ mtc1 $zero, $f14 +/* 05B94C 8005AD4C C7AD0040 */ lwc1 $f13, 0x40($sp) +/* 05B950 8005AD50 C7AC0044 */ lwc1 $f12, 0x44($sp) +/* 05B954 8005AD54 46022181 */ sub.s $f6, $f4, $f2 +/* 05B958 8005AD58 460034A1 */ cvt.d.s $f18, $f6 +/* 05B95C 8005AD5C 462E9282 */ mul.d $f10, $f18, $f14 +/* 05B960 8005AD60 46001221 */ cvt.d.s $f8, $f2 +/* 05B964 8005AD64 462C5102 */ mul.d $f4, $f10, $f12 +/* 05B968 8005AD68 46244180 */ add.d $f6, $f8, $f4 +/* 05B96C 8005AD6C 462034A0 */ cvt.s.d $f18, $f6 +/* 05B970 8005AD70 10000015 */ b .L8005ADC8 +/* 05B974 8005AD74 E6120088 */ swc1 $f18, 0x88($s0) +.L8005AD78: +/* 05B978 8005AD78 C60A0084 */ lwc1 $f10, 0x84($s0) +/* 05B97C 8005AD7C 3C013FB0 */ li $at, 0x3FB00000 # 1.375000 +/* 05B980 8005AD80 44817800 */ mtc1 $at, $f15 +/* 05B984 8005AD84 44807000 */ mtc1 $zero, $f14 +/* 05B988 8005AD88 46005021 */ cvt.d.s $f0, $f10 +/* 05B98C 8005AD8C 462E0102 */ mul.d $f4, $f0, $f14 +/* 05B990 8005AD90 C7A800AC */ lwc1 $f8, 0xac($sp) +/* 05B994 8005AD94 00000000 */ nop +/* 05B998 8005AD98 46004321 */ cvt.d.s $f12, $f8 +/* 05B99C 8005AD9C C6080088 */ lwc1 $f8, 0x88($s0) +/* 05B9A0 8005ADA0 462C2182 */ mul.d $f6, $f4, $f12 +/* 05B9A4 8005ADA4 460040A1 */ cvt.d.s $f2, $f8 +/* 05B9A8 8005ADA8 462E1102 */ mul.d $f4, $f2, $f14 +/* 05B9AC 8005ADAC 46260481 */ sub.d $f18, $f0, $f6 +/* 05B9B0 8005ADB0 462C2182 */ mul.d $f6, $f4, $f12 +/* 05B9B4 8005ADB4 462092A0 */ cvt.s.d $f10, $f18 +/* 05B9B8 8005ADB8 E60A0084 */ swc1 $f10, 0x84($s0) +/* 05B9BC 8005ADBC 46261481 */ sub.d $f18, $f2, $f6 +/* 05B9C0 8005ADC0 462092A0 */ cvt.s.d $f10, $f18 +/* 05B9C4 8005ADC4 E60A0088 */ swc1 $f10, 0x88($s0) +.L8005ADC8: +/* 05B9C8 8005ADC8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 05B9CC 8005ADCC 44814000 */ mtc1 $at, $f8 +/* 05B9D0 8005ADD0 3C018012 */ lui $at, %hi(D_8011D570) # $at, 0x8012 +/* 05B9D4 8005ADD4 24040021 */ li $a0, 33 +/* 05B9D8 8005ADD8 0C0078A7 */ jal func_8001E29C +/* 05B9DC 8005ADDC E428D570 */ swc1 $f8, %lo(D_8011D570)($at) +/* 05B9E0 8005ADE0 8FB900A0 */ lw $t9, 0xa0($sp) +/* 05B9E4 8005ADE4 3C018012 */ lui $at, %hi(D_8011D564) # $at, 0x8012 +/* 05B9E8 8005ADE8 AC22D564 */ sw $v0, %lo(D_8011D564)($at) +/* 05B9EC 8005ADEC 8F2D0040 */ lw $t5, 0x40($t9) +/* 05B9F0 8005ADF0 00000000 */ nop +/* 05B9F4 8005ADF4 91A4005D */ lbu $a0, 0x5d($t5) +/* 05B9F8 8005ADF8 0C0078A7 */ jal func_8001E29C +/* 05B9FC 8005ADFC 00000000 */ nop +/* 05BA00 8005AE00 3C018012 */ lui $at, %hi(D_8011D568) # $at, 0x8012 +/* 05BA04 8005AE04 8FAE00A0 */ lw $t6, 0xa0($sp) +/* 05BA08 8005AE08 AC22D568 */ sw $v0, %lo(D_8011D568)($at) +/* 05BA0C 8005AE0C C5C40020 */ lwc1 $f4, 0x20($t6) +/* 05BA10 8005AE10 3C014010 */ li $at, 0x40100000 # 2.250000 +/* 05BA14 8005AE14 44819800 */ mtc1 $at, $f19 +/* 05BA18 8005AE18 44809000 */ mtc1 $zero, $f18 +/* 05BA1C 8005AE1C 460021A1 */ cvt.d.s $f6, $f4 +/* 05BA20 8005AE20 4632303C */ c.lt.d $f6, $f18 +/* 05BA24 8005AE24 240B0001 */ li $t3, 1 +/* 05BA28 8005AE28 4500000F */ bc1f .L8005AE68 +/* 05BA2C 8005AE2C 00000000 */ nop +/* 05BA30 8005AE30 821801E2 */ lb $t8, 0x1e2($s0) +/* 05BA34 8005AE34 00000000 */ nop +/* 05BA38 8005AE38 2B010003 */ slti $at, $t8, 3 +/* 05BA3C 8005AE3C 10200009 */ beqz $at, .L8005AE64 +/* 05BA40 8005AE40 00000000 */ nop +/* 05BA44 8005AE44 C60800C0 */ lwc1 $f8, 0xc0($s0) +/* 05BA48 8005AE48 44805800 */ mtc1 $zero, $f11 +/* 05BA4C 8005AE4C 44805000 */ mtc1 $zero, $f10 +/* 05BA50 8005AE50 46004121 */ cvt.d.s $f4, $f8 +/* 05BA54 8005AE54 46245032 */ c.eq.d $f10, $f4 +/* 05BA58 8005AE58 00000000 */ nop +/* 05BA5C 8005AE5C 45010002 */ bc1t .L8005AE68 +/* 05BA60 8005AE60 00000000 */ nop +.L8005AE64: +/* 05BA64 8005AE64 A20001F1 */ sb $zero, 0x1f1($s0) +.L8005AE68: +/* 05BA68 8005AE68 820F0175 */ lb $t7, 0x175($s0) +/* 05BA6C 8005AE6C 00000000 */ nop +/* 05BA70 8005AE70 11E00006 */ beqz $t7, .L8005AE8C +/* 05BA74 8005AE74 00000000 */ nop +/* 05BA78 8005AE78 8FA400A0 */ lw $a0, 0xa0($sp) +/* 05BA7C 8005AE7C 8FA600A8 */ lw $a2, 0xa8($sp) +/* 05BA80 8005AE80 0C015B8B */ jal func_80056E2C +/* 05BA84 8005AE84 02002825 */ move $a1, $s0 +/* 05BA88 8005AE88 240B0001 */ li $t3, 1 +.L8005AE8C: +/* 05BA8C 8005AE8C 821901D6 */ lb $t9, 0x1d6($s0) +/* 05BA90 8005AE90 00000000 */ nop +/* 05BA94 8005AE94 11790008 */ beq $t3, $t9, .L8005AEB8 +/* 05BA98 8005AE98 8FAD00A0 */ lw $t5, 0xa0($sp) +/* 05BA9C 8005AE9C 44803000 */ mtc1 $zero, $f6 +/* 05BAA0 8005AEA0 A20001E5 */ sb $zero, 0x1e5($s0) +/* 05BAA4 8005AEA4 3C018012 */ lui $at, %hi(D_8011D5AE) # $at, 0x8012 +/* 05BAA8 8005AEA8 E60600C0 */ swc1 $f6, 0xc0($s0) +/* 05BAAC 8005AEAC 1000000A */ b .L8005AED8 +/* 05BAB0 8005AEB0 A020D5AE */ sb $zero, %lo(D_8011D5AE)($at) +/* 05BAB4 8005AEB4 8FAD00A0 */ lw $t5, 0xa0($sp) +.L8005AEB8: +/* 05BAB8 8005AEB8 3C078012 */ lui $a3, %hi(D_8011D5B0) # $a3, 0x8012 +/* 05BABC 8005AEBC 85A4002E */ lh $a0, 0x2e($t5) +/* 05BAC0 8005AEC0 8DA5000C */ lw $a1, 0xc($t5) +/* 05BAC4 8005AEC4 8DA60014 */ lw $a2, 0x14($t5) +/* 05BAC8 8005AEC8 0C00AC3D */ jal func_8002B0F4 +/* 05BACC 8005AECC 24E7D5B0 */ addiu $a3, %lo(D_8011D5B0) # addiu $a3, $a3, -0x2a50 +/* 05BAD0 8005AED0 3C018012 */ lui $at, %hi(D_8011D5AE) # $at, 0x8012 +/* 05BAD4 8005AED4 A022D5AE */ sb $v0, %lo(D_8011D5AE)($at) +.L8005AED8: +/* 05BAD8 8005AED8 0C00AB32 */ jal func_8002ACC8 +/* 05BADC 8005AEDC 00002025 */ move $a0, $zero +/* 05BAE0 8005AEE0 8E0E0148 */ lw $t6, 0x148($s0) +/* 05BAE4 8005AEE4 240B0001 */ li $t3, 1 +/* 05BAE8 8005AEE8 15C00009 */ bnez $t6, .L8005AF10 +/* 05BAEC 8005AEEC 3C088012 */ lui $t0, %hi(D_8011D540) # $t0, 0x8012 +/* 05BAF0 8005AEF0 2508D540 */ addiu $t0, %lo(D_8011D540) # addiu $t0, $t0, -0x2ac0 +/* 05BAF4 8005AEF4 8D180000 */ lw $t8, ($t0) +/* 05BAF8 8005AEF8 00000000 */ nop +/* 05BAFC 8005AEFC 17000004 */ bnez $t8, .L8005AF10 +/* 05BB00 8005AF00 00000000 */ nop +/* 05BB04 8005AF04 860F0204 */ lh $t7, 0x204($s0) +/* 05BB08 8005AF08 00000000 */ nop +/* 05BB0C 8005AF0C 19E0000E */ blez $t7, .L8005AF48 +.L8005AF10: +/* 05BB10 8005AF10 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 +/* 05BB14 8005AF14 AC20D534 */ sw $zero, %lo(D_8011D534)($at) +/* 05BB18 8005AF18 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 +/* 05BB1C 8005AF1C 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 +/* 05BB20 8005AF20 AC20D538 */ sw $zero, %lo(D_8011D538)($at) +/* 05BB24 8005AF24 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 +/* 05BB28 8005AF28 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 +/* 05BB2C 8005AF2C AC600000 */ sw $zero, ($v1) +/* 05BB30 8005AF30 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 +/* 05BB34 8005AF34 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 +/* 05BB38 8005AF38 3C088012 */ lui $t0, %hi(D_8011D540) # $t0, 0x8012 +/* 05BB3C 8005AF3C AC20D530 */ sw $zero, %lo(D_8011D530)($at) +/* 05BB40 8005AF40 2508D540 */ addiu $t0, %lo(D_8011D540) # addiu $t0, $t0, -0x2ac0 +/* 05BB44 8005AF44 AC400000 */ sw $zero, ($v0) +.L8005AF48: +/* 05BB48 8005AF48 921901D6 */ lbu $t9, 0x1d6($s0) +/* 05BB4C 8005AF4C 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 +/* 05BB50 8005AF50 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 +/* 05BB54 8005AF54 2F21000E */ sltiu $at, $t9, 0xe +/* 05BB58 8005AF58 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 +/* 05BB5C 8005AF5C 10200094 */ beqz $at, .L8005B1B0 +/* 05BB60 8005AF60 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 +/* 05BB64 8005AF64 0019C880 */ sll $t9, $t9, 2 +/* 05BB68 8005AF68 3C01800E */ lui $at, 0x800e +/* 05BB6C 8005AF6C 00390821 */ addu $at, $at, $t9 +/* 05BB70 8005AF70 8C396968 */ lw $t9, 0x6968($at) +/* 05BB74 8005AF74 00000000 */ nop +/* 05BB78 8005AF78 03200008 */ jr $t9 +/* 05BB7C 8005AF7C 00000000 */ nop +/* 05BB80 8005AF80 8FA400A8 */ lw $a0, 0xa8($sp) +/* 05BB84 8005AF84 8FA500AC */ lw $a1, 0xac($sp) +/* 05BB88 8005AF88 8FA600A0 */ lw $a2, 0xa0($sp) +/* 05BB8C 8005AF8C 0C013DFD */ jal func_8004F7F4 +/* 05BB90 8005AF90 02003825 */ move $a3, $s0 +/* 05BB94 8005AF94 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 +/* 05BB98 8005AF98 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 +/* 05BB9C 8005AF9C 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 +/* 05BBA0 8005AFA0 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 +/* 05BBA4 8005AFA4 10000082 */ b .L8005B1B0 +/* 05BBA8 8005AFA8 240B0001 */ li $t3, 1 +/* 05BBAC 8005AFAC 8FA400A8 */ lw $a0, 0xa8($sp) +/* 05BBB0 8005AFB0 8FA500AC */ lw $a1, 0xac($sp) +/* 05BBB4 8005AFB4 8FA600A0 */ lw $a2, 0xa0($sp) +/* 05BBB8 8005AFB8 0C013308 */ jal func_8004CC20 +/* 05BBBC 8005AFBC 02003825 */ move $a3, $s0 +/* 05BBC0 8005AFC0 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 +/* 05BBC4 8005AFC4 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 +/* 05BBC8 8005AFC8 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 +/* 05BBCC 8005AFCC 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 +/* 05BBD0 8005AFD0 10000077 */ b .L8005B1B0 +/* 05BBD4 8005AFD4 240B0001 */ li $t3, 1 +/* 05BBD8 8005AFD8 8FA400A8 */ lw $a0, 0xa8($sp) +/* 05BBDC 8005AFDC 8FA500AC */ lw $a1, 0xac($sp) +/* 05BBE0 8005AFE0 8FA600A0 */ lw $a2, 0xa0($sp) +/* 05BBE4 8005AFE4 0C011949 */ jal func_80046524 +/* 05BBE8 8005AFE8 02003825 */ move $a3, $s0 +/* 05BBEC 8005AFEC 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 +/* 05BBF0 8005AFF0 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 +/* 05BBF4 8005AFF4 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 +/* 05BBF8 8005AFF8 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 +/* 05BBFC 8005AFFC 1000006C */ b .L8005B1B0 +/* 05BC00 8005B000 240B0001 */ li $t3, 1 +/* 05BC04 8005B004 8FA400A8 */ lw $a0, 0xa8($sp) +/* 05BC08 8005B008 8FA500AC */ lw $a1, 0xac($sp) +/* 05BC0C 8005B00C 8FA600A0 */ lw $a2, 0xa0($sp) +/* 05BC10 8005B010 0C0125E5 */ jal func_80049794 +/* 05BC14 8005B014 02003825 */ move $a3, $s0 +/* 05BC18 8005B018 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 +/* 05BC1C 8005B01C 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 +/* 05BC20 8005B020 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 +/* 05BC24 8005B024 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 +/* 05BC28 8005B028 10000061 */ b .L8005B1B0 +/* 05BC2C 8005B02C 240B0001 */ li $t3, 1 +/* 05BC30 8005B030 8FA400A8 */ lw $a0, 0xa8($sp) +/* 05BC34 8005B034 8FA500AC */ lw $a1, 0xac($sp) +/* 05BC38 8005B038 8FA600A0 */ lw $a2, 0xa0($sp) +/* 05BC3C 8005B03C 0C013657 */ jal func_8004D95C +/* 05BC40 8005B040 02003825 */ move $a3, $s0 +/* 05BC44 8005B044 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 +/* 05BC48 8005B048 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 +/* 05BC4C 8005B04C 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 +/* 05BC50 8005B050 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 +/* 05BC54 8005B054 10000056 */ b .L8005B1B0 +/* 05BC58 8005B058 240B0001 */ li $t3, 1 +/* 05BC5C 8005B05C 8FA400A8 */ lw $a0, 0xa8($sp) +/* 05BC60 8005B060 8FA500AC */ lw $a1, 0xac($sp) +/* 05BC64 8005B064 8FA600A0 */ lw $a2, 0xa0($sp) +/* 05BC68 8005B068 02003825 */ move $a3, $s0 +/* 05BC6C 8005B06C AFA30010 */ sw $v1, 0x10($sp) +/* 05BC70 8005B070 AFA20014 */ sw $v0, 0x14($sp) +/* 05BC74 8005B074 0C0170D9 */ jal func_8005C364 +/* 05BC78 8005B078 AFA80018 */ sw $t0, 0x18($sp) +/* 05BC7C 8005B07C 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 +/* 05BC80 8005B080 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 +/* 05BC84 8005B084 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 +/* 05BC88 8005B088 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 +/* 05BC8C 8005B08C 10000048 */ b .L8005B1B0 +/* 05BC90 8005B090 240B0001 */ li $t3, 1 +/* 05BC94 8005B094 8FA400A8 */ lw $a0, 0xa8($sp) +/* 05BC98 8005B098 8FA500AC */ lw $a1, 0xac($sp) +/* 05BC9C 8005B09C 8FA600A0 */ lw $a2, 0xa0($sp) +/* 05BCA0 8005B0A0 02003825 */ move $a3, $s0 +/* 05BCA4 8005B0A4 AFA30010 */ sw $v1, 0x10($sp) +/* 05BCA8 8005B0A8 AFA20014 */ sw $v0, 0x14($sp) +/* 05BCAC 8005B0AC 0C017434 */ jal func_8005D0D0 +/* 05BCB0 8005B0B0 AFA80018 */ sw $t0, 0x18($sp) +/* 05BCB4 8005B0B4 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 +/* 05BCB8 8005B0B8 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 +/* 05BCBC 8005B0BC 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 +/* 05BCC0 8005B0C0 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 +/* 05BCC4 8005B0C4 1000003A */ b .L8005B1B0 +/* 05BCC8 8005B0C8 240B0001 */ li $t3, 1 +/* 05BCCC 8005B0CC 3C0D8012 */ lui $t5, %hi(D_8011D534) # $t5, 0x8012 +/* 05BCD0 8005B0D0 25ADD534 */ addiu $t5, %lo(D_8011D534) # addiu $t5, $t5, -0x2acc +/* 05BCD4 8005B0D4 8FA400A8 */ lw $a0, 0xa8($sp) +/* 05BCD8 8005B0D8 8FA500AC */ lw $a1, 0xac($sp) +/* 05BCDC 8005B0DC 8FA600A0 */ lw $a2, 0xa0($sp) +/* 05BCE0 8005B0E0 AFAD0014 */ sw $t5, 0x14($sp) +/* 05BCE4 8005B0E4 02003825 */ move $a3, $s0 +/* 05BCE8 8005B0E8 AFA30010 */ sw $v1, 0x10($sp) +/* 05BCEC 8005B0EC 0C017608 */ jal func_8005D820 +/* 05BCF0 8005B0F0 AFA80018 */ sw $t0, 0x18($sp) +/* 05BCF4 8005B0F4 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 +/* 05BCF8 8005B0F8 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 +/* 05BCFC 8005B0FC 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 +/* 05BD00 8005B100 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 +/* 05BD04 8005B104 1000002A */ b .L8005B1B0 +/* 05BD08 8005B108 240B0001 */ li $t3, 1 +/* 05BD0C 8005B10C 8FA400A8 */ lw $a0, 0xa8($sp) +/* 05BD10 8005B110 8FA500AC */ lw $a1, 0xac($sp) +/* 05BD14 8005B114 8FA600A0 */ lw $a2, 0xa0($sp) +/* 05BD18 8005B118 02003825 */ move $a3, $s0 +/* 05BD1C 8005B11C AFA30010 */ sw $v1, 0x10($sp) +/* 05BD20 8005B120 AFA20014 */ sw $v0, 0x14($sp) +/* 05BD24 8005B124 0C017930 */ jal func_8005E4C0 +/* 05BD28 8005B128 AFA80018 */ sw $t0, 0x18($sp) +/* 05BD2C 8005B12C 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 +/* 05BD30 8005B130 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 +/* 05BD34 8005B134 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 +/* 05BD38 8005B138 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 +/* 05BD3C 8005B13C 1000001C */ b .L8005B1B0 +/* 05BD40 8005B140 240B0001 */ li $t3, 1 +/* 05BD44 8005B144 8FA400A8 */ lw $a0, 0xa8($sp) +/* 05BD48 8005B148 8FA500AC */ lw $a1, 0xac($sp) +/* 05BD4C 8005B14C 8FA600A0 */ lw $a2, 0xa0($sp) +/* 05BD50 8005B150 02003825 */ move $a3, $s0 +/* 05BD54 8005B154 AFA30010 */ sw $v1, 0x10($sp) +/* 05BD58 8005B158 AFA20014 */ sw $v0, 0x14($sp) +/* 05BD5C 8005B15C 0C017AA4 */ jal func_8005EA90 +/* 05BD60 8005B160 AFA80018 */ sw $t0, 0x18($sp) +/* 05BD64 8005B164 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 +/* 05BD68 8005B168 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 +/* 05BD6C 8005B16C 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 +/* 05BD70 8005B170 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 +/* 05BD74 8005B174 1000000E */ b .L8005B1B0 +/* 05BD78 8005B178 240B0001 */ li $t3, 1 +/* 05BD7C 8005B17C 8FA400A8 */ lw $a0, 0xa8($sp) +/* 05BD80 8005B180 8FA500AC */ lw $a1, 0xac($sp) +/* 05BD84 8005B184 8FA600A0 */ lw $a2, 0xa0($sp) +/* 05BD88 8005B188 02003825 */ move $a3, $s0 +/* 05BD8C 8005B18C AFA30010 */ sw $v1, 0x10($sp) +/* 05BD90 8005B190 AFA20014 */ sw $v0, 0x14($sp) +/* 05BD94 8005B194 0C017CC4 */ jal func_8005F310 +/* 05BD98 8005B198 AFA80018 */ sw $t0, 0x18($sp) +/* 05BD9C 8005B19C 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 +/* 05BDA0 8005B1A0 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 +/* 05BDA4 8005B1A4 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 +/* 05BDA8 8005B1A8 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 +/* 05BDAC 8005B1AC 240B0001 */ li $t3, 1 +.L8005B1B0: +/* 05BDB0 8005B1B0 8FAE0094 */ lw $t6, 0x94($sp) +/* 05BDB4 8005B1B4 8FA400A0 */ lw $a0, 0xa0($sp) +/* 05BDB8 8005B1B8 11CB0006 */ beq $t6, $t3, .L8005B1D4 +/* 05BDBC 8005B1BC 00000000 */ nop +/* 05BDC0 8005B1C0 8C450000 */ lw $a1, ($v0) +/* 05BDC4 8005B1C4 8C660000 */ lw $a2, ($v1) +/* 05BDC8 8005B1C8 8FA700A8 */ lw $a3, 0xa8($sp) +/* 05BDCC 8005B1CC 0C001434 */ jal func_800050D0 +/* 05BDD0 8005B1D0 00000000 */ nop +.L8005B1D4: +/* 05BDD4 8005B1D4 C61200A8 */ lwc1 $f18, 0xa8($s0) +/* 05BDD8 8005B1D8 C7A80084 */ lwc1 $f8, 0x84($sp) +/* 05BDDC 8005B1DC E7B20080 */ swc1 $f18, 0x80($sp) +/* 05BDE0 8005B1E0 82180192 */ lb $t8, 0x192($s0) +/* 05BDE4 8005B1E4 8FA500A0 */ lw $a1, 0xa0($sp) +/* 05BDE8 8005B1E8 AFB80090 */ sw $t8, 0x90($sp) +/* 05BDEC 8005B1EC 82040192 */ lb $a0, 0x192($s0) +/* 05BDF0 8005B1F0 8FA6008C */ lw $a2, 0x8c($sp) +/* 05BDF4 8005B1F4 8FA70088 */ lw $a3, 0x88($sp) +/* 05BDF8 8005B1F8 260F00A8 */ addiu $t7, $s0, 0xa8 +/* 05BDFC 8005B1FC 261901C8 */ addiu $t9, $s0, 0x1c8 +/* 05BE00 8005B200 AFB90018 */ sw $t9, 0x18($sp) +/* 05BE04 8005B204 AFAF0014 */ sw $t7, 0x14($sp) +/* 05BE08 8005B208 0C006179 */ jal func_800185E4 +/* 05BE0C 8005B20C E7A80010 */ swc1 $f8, 0x10($sp) +/* 05BE10 8005B210 2401FF9C */ li $at, -100 +/* 05BE14 8005B214 14410006 */ bne $v0, $at, .L8005B230 +/* 05BE18 8005B218 00405025 */ move $t2, $v0 +/* 05BE1C 8005B21C 02002025 */ move $a0, $s0 +/* 05BE20 8005B220 0C01709C */ jal func_8005C270 +/* 05BE24 8005B224 AFA2009C */ sw $v0, 0x9c($sp) +/* 05BE28 8005B228 8FAA009C */ lw $t2, 0x9c($sp) +/* 05BE2C 8005B22C 00000000 */ nop +.L8005B230: +/* 05BE30 8005B230 82040192 */ lb $a0, 0x192($s0) +/* 05BE34 8005B234 920501C8 */ lbu $a1, 0x1c8($s0) +/* 05BE38 8005B238 0C006E87 */ jal func_8001BA1C +/* 05BE3C 8005B23C AFAA009C */ sw $t2, 0x9c($sp) +/* 05BE40 8005B240 820D01CA */ lb $t5, 0x1ca($s0) +/* 05BE44 8005B244 8FAA009C */ lw $t2, 0x9c($sp) +/* 05BE48 8005B248 004D7021 */ addu $t6, $v0, $t5 +/* 05BE4C 8005B24C 81D80036 */ lb $t8, 0x36($t6) +/* 05BE50 8005B250 24010005 */ li $at, 5 +/* 05BE54 8005B254 17010007 */ bne $t8, $at, .L8005B274 +/* 05BE58 8005B258 00000000 */ nop +/* 05BE5C 8005B25C 821901E5 */ lb $t9, 0x1e5($s0) +/* 05BE60 8005B260 240F001E */ li $t7, 30 +/* 05BE64 8005B264 13200003 */ beqz $t9, .L8005B274 +/* 05BE68 8005B268 A20F0201 */ sb $t7, 0x201($s0) +/* 05BE6C 8005B26C 240D0001 */ li $t5, 1 +/* 05BE70 8005B270 A20D01C8 */ sb $t5, 0x1c8($s0) +.L8005B274: +/* 05BE74 8005B274 820E01CA */ lb $t6, 0x1ca($s0) +/* 05BE78 8005B278 24010006 */ li $at, 6 +/* 05BE7C 8005B27C 004EC021 */ addu $t8, $v0, $t6 +/* 05BE80 8005B280 83030036 */ lb $v1, 0x36($t8) +/* 05BE84 8005B284 8FAF0070 */ lw $t7, 0x70($sp) +/* 05BE88 8005B288 14610009 */ bne $v1, $at, .L8005B2B0 +/* 05BE8C 8005B28C 24010004 */ li $at, 4 +/* 05BE90 8005B290 81F9004B */ lb $t9, 0x4b($t7) +/* 05BE94 8005B294 820E01CA */ lb $t6, 0x1ca($s0) +/* 05BE98 8005B298 272D0001 */ addiu $t5, $t9, 1 +/* 05BE9C 8005B29C A20D0193 */ sb $t5, 0x193($s0) +/* 05BEA0 8005B2A0 004EC021 */ addu $t8, $v0, $t6 +/* 05BEA4 8005B2A4 83030036 */ lb $v1, 0x36($t8) +/* 05BEA8 8005B2A8 00000000 */ nop +/* 05BEAC 8005B2AC 24010004 */ li $at, 4 +.L8005B2B0: +/* 05BEB0 8005B2B0 14610010 */ bne $v1, $at, .L8005B2F4 +/* 05BEB4 8005B2B4 00000000 */ nop +/* 05BEB8 8005B2B8 C60A002C */ lwc1 $f10, 0x2c($s0) +/* 05BEBC 8005B2BC 3C01C010 */ li $at, 0xC0100000 # -2.250000 +/* 05BEC0 8005B2C0 44812800 */ mtc1 $at, $f5 +/* 05BEC4 8005B2C4 44802000 */ mtc1 $zero, $f4 +/* 05BEC8 8005B2C8 46005021 */ cvt.d.s $f0, $f10 +/* 05BECC 8005B2CC 4624003C */ c.lt.d $f0, $f4 +/* 05BED0 8005B2D0 3C01800E */ lui $at, %hi(D_800E69A4) # $at, 0x800e +/* 05BED4 8005B2D4 45000007 */ bc1f .L8005B2F4 +/* 05BED8 8005B2D8 00000000 */ nop +/* 05BEDC 8005B2DC C42769A0 */ lwc1 $f7, %lo(D_800E69A0)($at) +/* 05BEE0 8005B2E0 C42669A4 */ lwc1 $f6, %lo(D_800E69A4)($at) +/* 05BEE4 8005B2E4 00000000 */ nop +/* 05BEE8 8005B2E8 46260482 */ mul.d $f18, $f0, $f6 +/* 05BEEC 8005B2EC 46209220 */ cvt.s.d $f8, $f18 +/* 05BEF0 8005B2F0 E608002C */ swc1 $f8, 0x2c($s0) +.L8005B2F4: +/* 05BEF4 8005B2F4 1540002C */ bnez $t2, .L8005B3A8 +/* 05BEF8 8005B2F8 00000000 */ nop +/* 05BEFC 8005B2FC 820F01CA */ lb $t7, 0x1ca($s0) +/* 05BF00 8005B300 24010002 */ li $at, 2 +/* 05BF04 8005B304 004FC821 */ addu $t9, $v0, $t7 +/* 05BF08 8005B308 832D0036 */ lb $t5, 0x36($t9) +/* 05BF0C 8005B30C 240E0001 */ li $t6, 1 +/* 05BF10 8005B310 15A10002 */ bne $t5, $at, .L8005B31C +/* 05BF14 8005B314 00000000 */ nop +/* 05BF18 8005B318 A20E01C8 */ sb $t6, 0x1c8($s0) +.L8005B31C: +/* 05BF1C 8005B31C 0C006E99 */ jal func_8001BA64 +/* 05BF20 8005B320 00000000 */ nop +/* 05BF24 8005B324 82180192 */ lb $t8, 0x192($s0) +/* 05BF28 8005B328 00000000 */ nop +/* 05BF2C 8005B32C 270F0001 */ addiu $t7, $t8, 1 +/* 05BF30 8005B330 A20F0192 */ sb $t7, 0x192($s0) +/* 05BF34 8005B334 82190192 */ lb $t9, 0x192($s0) +/* 05BF38 8005B338 00000000 */ nop +/* 05BF3C 8005B33C 0322082A */ slt $at, $t9, $v0 +/* 05BF40 8005B340 1420000C */ bnez $at, .L8005B374 +/* 05BF44 8005B344 8FB80070 */ lw $t8, 0x70($sp) +/* 05BF48 8005B348 860D0190 */ lh $t5, 0x190($s0) +/* 05BF4C 8005B34C A2000192 */ sb $zero, 0x192($s0) +/* 05BF50 8005B350 19A00008 */ blez $t5, .L8005B374 +/* 05BF54 8005B354 8FB80070 */ lw $t8, 0x70($sp) +/* 05BF58 8005B358 82030193 */ lb $v1, 0x193($s0) +/* 05BF5C 8005B35C 00000000 */ nop +/* 05BF60 8005B360 28610078 */ slti $at, $v1, 0x78 +/* 05BF64 8005B364 10200002 */ beqz $at, .L8005B370 +/* 05BF68 8005B368 246E0001 */ addiu $t6, $v1, 1 +/* 05BF6C 8005B36C A20E0193 */ sb $t6, 0x193($s0) +.L8005B370: +/* 05BF70 8005B370 8FB80070 */ lw $t8, 0x70($sp) +.L8005B374: +/* 05BF74 8005B374 86030190 */ lh $v1, 0x190($s0) +/* 05BF78 8005B378 830F004B */ lb $t7, 0x4b($t8) +/* 05BF7C 8005B37C 24182710 */ li $t8, 10000 +/* 05BF80 8005B380 25F90003 */ addiu $t9, $t7, 3 +/* 05BF84 8005B384 03220019 */ multu $t9, $v0 +/* 05BF88 8005B388 246E0001 */ addiu $t6, $v1, 1 +/* 05BF8C 8005B38C 00006812 */ mflo $t5 +/* 05BF90 8005B390 006D082A */ slt $at, $v1, $t5 +/* 05BF94 8005B394 10200002 */ beqz $at, .L8005B3A0 +/* 05BF98 8005B398 00000000 */ nop +/* 05BF9C 8005B39C A60E0190 */ sh $t6, 0x190($s0) +.L8005B3A0: +/* 05BFA0 8005B3A0 1000000E */ b .L8005B3DC +/* 05BFA4 8005B3A4 A61801A8 */ sh $t8, 0x1a8($s0) +.L8005B3A8: +/* 05BFA8 8005B3A8 860F0000 */ lh $t7, ($s0) +/* 05BFAC 8005B3AC 2401FFFF */ li $at, -1 +/* 05BFB0 8005B3B0 15E10009 */ bne $t7, $at, .L8005B3D8 +/* 05BFB4 8005B3B4 00000000 */ nop +/* 05BFB8 8005B3B8 C7A00080 */ lwc1 $f0, 0x80($sp) +/* 05BFBC 8005B3BC C60A00A8 */ lwc1 $f10, 0xa8($s0) +/* 05BFC0 8005B3C0 00000000 */ nop +/* 05BFC4 8005B3C4 460A003C */ c.lt.s $f0, $f10 +/* 05BFC8 8005B3C8 00000000 */ nop +/* 05BFCC 8005B3CC 45000002 */ bc1f .L8005B3D8 +/* 05BFD0 8005B3D0 00000000 */ nop +/* 05BFD4 8005B3D4 E60000A8 */ swc1 $f0, 0xa8($s0) +.L8005B3D8: +/* 05BFD8 8005B3D8 A60A01A8 */ sh $t2, 0x1a8($s0) +.L8005B3DC: +/* 05BFDC 8005B3DC 8FB900A0 */ lw $t9, 0xa0($sp) +/* 05BFE0 8005B3E0 00000000 */ nop +/* 05BFE4 8005B3E4 C724000C */ lwc1 $f4, 0xc($t9) +/* 05BFE8 8005B3E8 00000000 */ nop +/* 05BFEC 8005B3EC E6040068 */ swc1 $f4, 0x68($s0) +/* 05BFF0 8005B3F0 8FAD00A0 */ lw $t5, 0xa0($sp) +/* 05BFF4 8005B3F4 00000000 */ nop +/* 05BFF8 8005B3F8 C5A60010 */ lwc1 $f6, 0x10($t5) +/* 05BFFC 8005B3FC 00000000 */ nop +/* 05C000 8005B400 E606006C */ swc1 $f6, 0x6c($s0) +/* 05C004 8005B404 8FAE00A0 */ lw $t6, 0xa0($sp) +/* 05C008 8005B408 00000000 */ nop +/* 05C00C 8005B40C C5D20014 */ lwc1 $f18, 0x14($t6) +/* 05C010 8005B410 1000000F */ b .L8005B450 +/* 05C014 8005B414 E6120070 */ swc1 $f18, 0x70($s0) +/* 05C018 8005B418 8FA700AC */ lw $a3, 0xac($sp) +.L8005B41C: +/* 05C01C 8005B41C 0C016E06 */ jal func_8005B818 +/* 05C020 8005B420 02002825 */ move $a1, $s0 +/* 05C024 8005B424 8FB80094 */ lw $t8, 0x94($sp) +/* 05C028 8005B428 240B0001 */ li $t3, 1 +/* 05C02C 8005B42C 130B0008 */ beq $t8, $t3, .L8005B450 +/* 05C030 8005B430 3C058012 */ lui $a1, %hi(D_8011D52C) # $a1, 0x8012 +/* 05C034 8005B434 3C068012 */ lui $a2, %hi(D_8011D528) # $a2, 0x8012 +/* 05C038 8005B438 8CC6D528 */ lw $a2, %lo(D_8011D528)($a2) +/* 05C03C 8005B43C 8FA400A0 */ lw $a0, 0xa0($sp) +/* 05C040 8005B440 8CA5D52C */ lw $a1, %lo(D_8011D52C)($a1) +/* 05C044 8005B444 8FA700A8 */ lw $a3, 0xa8($sp) +/* 05C048 8005B448 0C001434 */ jal func_800050D0 +/* 05C04C 8005B44C 00000000 */ nop +.L8005B450: +/* 05C050 8005B450 C7A800AC */ lwc1 $f8, 0xac($sp) +/* 05C054 8005B454 820F0175 */ lb $t7, 0x175($s0) +/* 05C058 8005B458 46004321 */ cvt.d.s $f12, $f8 +/* 05C05C 8005B45C 15E0000C */ bnez $t7, .L8005B490 +/* 05C060 8005B460 8FB900A8 */ lw $t9, 0xa8($sp) +/* 05C064 8005B464 8E040178 */ lw $a0, 0x178($s0) +/* 05C068 8005B468 00000000 */ nop +/* 05C06C 8005B46C 10800008 */ beqz $a0, .L8005B490 +/* 05C070 8005B470 8FB900A8 */ lw $t9, 0xa8($sp) +/* 05C074 8005B474 E7AD0040 */ swc1 $f13, 0x40($sp) +/* 05C078 8005B478 0C001223 */ jal func_8000488C +/* 05C07C 8005B47C E7AC0044 */ swc1 $f12, 0x44($sp) +/* 05C080 8005B480 C7AD0040 */ lwc1 $f13, 0x40($sp) +/* 05C084 8005B484 C7AC0044 */ lwc1 $f12, 0x44($sp) +/* 05C088 8005B488 AE000178 */ sw $zero, 0x178($s0) +/* 05C08C 8005B48C 8FB900A8 */ lw $t9, 0xa8($sp) +.L8005B490: +/* 05C090 8005B490 8FA400A0 */ lw $a0, 0xa0($sp) +/* 05C094 8005B494 8FA5008C */ lw $a1, 0x8c($sp) +/* 05C098 8005B498 8FA60088 */ lw $a2, 0x88($sp) +/* 05C09C 8005B49C 8FA70084 */ lw $a3, 0x84($sp) +/* 05C0A0 8005B4A0 E7AD0040 */ swc1 $f13, 0x40($sp) +/* 05C0A4 8005B4A4 E7AC0044 */ swc1 $f12, 0x44($sp) +/* 05C0A8 8005B4A8 0C006338 */ jal func_80018CE0 +/* 05C0AC 8005B4AC AFB90010 */ sw $t9, 0x10($sp) +/* 05C0B0 8005B4B0 82060188 */ lb $a2, 0x188($s0) +/* 05C0B4 8005B4B4 C7AD0040 */ lwc1 $f13, 0x40($sp) +/* 05C0B8 8005B4B8 C7AC0044 */ lwc1 $f12, 0x44($sp) +/* 05C0BC 8005B4BC 18C00009 */ blez $a2, .L8005B4E4 +/* 05C0C0 8005B4C0 00000000 */ nop +/* 05C0C4 8005B4C4 8FA400A0 */ lw $a0, 0xa0($sp) +/* 05C0C8 8005B4C8 02002825 */ move $a1, $s0 +/* 05C0CC 8005B4CC E7AD0040 */ swc1 $f13, 0x40($sp) +/* 05C0D0 8005B4D0 0C015DB8 */ jal func_800576E0 +/* 05C0D4 8005B4D4 E7AC0044 */ swc1 $f12, 0x44($sp) +/* 05C0D8 8005B4D8 C7AD0040 */ lwc1 $f13, 0x40($sp) +/* 05C0DC 8005B4DC C7AC0044 */ lwc1 $f12, 0x44($sp) +/* 05C0E0 8005B4E0 00000000 */ nop +.L8005B4E4: +/* 05C0E4 8005B4E4 8E0D0148 */ lw $t5, 0x148($s0) +/* 05C0E8 8005B4E8 44803000 */ mtc1 $zero, $f6 +/* 05C0EC 8005B4EC 11A00005 */ beqz $t5, .L8005B504 +/* 05C0F0 8005B4F0 3C02800E */ lui $v0, %hi(D_800DCB54) # $v0, 0x800e +/* 05C0F4 8005B4F4 44808000 */ mtc1 $zero, $f16 +/* 05C0F8 8005B4F8 AE000148 */ sw $zero, 0x148($s0) +/* 05C0FC 8005B4FC E610002C */ swc1 $f16, 0x2c($s0) +/* 05C100 8005B500 E6100030 */ swc1 $f16, 0x30($s0) +.L8005B504: +/* 05C104 8005B504 C60E0090 */ lwc1 $f14, 0x90($s0) +/* 05C108 8005B508 C600008C */ lwc1 $f0, 0x8c($s0) +/* 05C10C 8005B50C 44808000 */ mtc1 $zero, $f16 +/* 05C110 8005B510 460E003E */ c.le.s $f0, $f14 +/* 05C114 8005B514 3C01800E */ lui $at, 0x800e +/* 05C118 8005B518 45000005 */ bc1f .L8005B530 +/* 05C11C 8005B51C 46007281 */ sub.s $f10, $f14, $f0 +/* 05C120 8005B520 3C01800E */ lui $at, %hi(D_800E69A8) # $at, 0x800e +/* 05C124 8005B524 C42269A8 */ lwc1 $f2, %lo(D_800E69A8)($at) +/* 05C128 8005B528 10000004 */ b .L8005B53C +/* 05C12C 8005B52C 3C013FC0 */ lui $at, %hi(D_3FC069AC) # $at, 0x3fc0 +.L8005B530: +/* 05C130 8005B530 C42269AC */ lwc1 $f2, %lo(D_3FC069AC)($at) +/* 05C134 8005B534 00000000 */ nop +/* 05C138 8005B538 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +.L8005B53C: +/* 05C13C 8005B53C 44813800 */ mtc1 $at, $f7 +/* 05C140 8005B540 46005121 */ cvt.d.s $f4, $f10 +/* 05C144 8005B544 46262482 */ mul.d $f18, $f4, $f6 +/* 05C148 8005B548 46001221 */ cvt.d.s $f8, $f2 +/* 05C14C 8005B54C 460001A1 */ cvt.d.s $f6, $f0 +/* 05C150 8005B550 4610103C */ c.lt.s $f2, $f16 +/* 05C154 8005B554 46289280 */ add.d $f10, $f18, $f8 +/* 05C158 8005B558 462C5102 */ mul.d $f4, $f10, $f12 +/* 05C15C 8005B55C 46243480 */ add.d $f18, $f6, $f4 +/* 05C160 8005B560 46209220 */ cvt.s.d $f8, $f18 +/* 05C164 8005B564 45000007 */ bc1f .L8005B584 +/* 05C168 8005B568 E608008C */ swc1 $f8, 0x8c($s0) +/* 05C16C 8005B56C C60A008C */ lwc1 $f10, 0x8c($s0) +/* 05C170 8005B570 00000000 */ nop +/* 05C174 8005B574 460E503E */ c.le.s $f10, $f14 +/* 05C178 8005B578 00000000 */ nop +/* 05C17C 8005B57C 4501000B */ bc1t .L8005B5AC +/* 05C180 8005B580 3C013F80 */ lui $at, 0x3f80 +.L8005B584: +/* 05C184 8005B584 4602803C */ c.lt.s $f16, $f2 +/* 05C188 8005B588 00000000 */ nop +/* 05C18C 8005B58C 4500000A */ bc1f .L8005B5B8 +/* 05C190 8005B590 00000000 */ nop +/* 05C194 8005B594 C606008C */ lwc1 $f6, 0x8c($s0) +/* 05C198 8005B598 00000000 */ nop +/* 05C19C 8005B59C 4606703E */ c.le.s $f14, $f6 +/* 05C1A0 8005B5A0 00000000 */ nop +/* 05C1A4 8005B5A4 45000004 */ bc1f .L8005B5B8 +/* 05C1A8 8005B5A8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +.L8005B5AC: +/* 05C1AC 8005B5AC 44812000 */ mtc1 $at, $f4 +/* 05C1B0 8005B5B0 E60E008C */ swc1 $f14, 0x8c($s0) +/* 05C1B4 8005B5B4 E6040090 */ swc1 $f4, 0x90($s0) +.L8005B5B8: +/* 05C1B8 8005B5B8 8603016A */ lh $v1, 0x16a($s0) +/* 05C1BC 8005B5BC 860E016C */ lh $t6, 0x16c($s0) +/* 05C1C0 8005B5C0 8FAF00A8 */ lw $t7, 0xa8($sp) +/* 05C1C4 8005B5C4 01C3C023 */ subu $t8, $t6, $v1 +/* 05C1C8 8005B5C8 030F0019 */ multu $t8, $t7 +/* 05C1CC 8005B5CC 00005012 */ mflo $t2 +/* 05C1D0 8005B5D0 000AC8C3 */ sra $t9, $t2, 3 +/* 05C1D4 8005B5D4 2B210801 */ slti $at, $t9, 0x801 +/* 05C1D8 8005B5D8 14200002 */ bnez $at, .L8005B5E4 +/* 05C1DC 8005B5DC 03205025 */ move $t2, $t9 +/* 05C1E0 8005B5E0 240A0800 */ li $t2, 2048 +.L8005B5E4: +/* 05C1E4 8005B5E4 2941F800 */ slti $at, $t2, -0x800 +/* 05C1E8 8005B5E8 10200002 */ beqz $at, .L8005B5F4 +/* 05C1EC 8005B5EC 00000000 */ nop +/* 05C1F0 8005B5F0 240AF800 */ li $t2, -2048 +.L8005B5F4: +/* 05C1F4 8005B5F4 8442CB54 */ lh $v0, %lo(D_800DCB54)($v0) +/* 05C1F8 8005B5F8 006A7021 */ addu $t6, $v1, $t2 +/* 05C1FC 8005B5FC 10400003 */ beqz $v0, .L8005B60C +/* 05C200 8005B600 00626821 */ addu $t5, $v1, $v0 +/* 05C204 8005B604 10000002 */ b .L8005B610 +/* 05C208 8005B608 A60D016A */ sh $t5, 0x16a($s0) +.L8005B60C: +/* 05C20C 8005B60C A60E016A */ sh $t6, 0x16a($s0) +.L8005B610: +/* 05C210 8005B610 8602018E */ lh $v0, 0x18e($s0) +/* 05C214 8005B614 00000000 */ nop +/* 05C218 8005B618 18400031 */ blez $v0, .L8005B6E0 +/* 05C21C 8005B61C 2841003D */ slti $at, $v0, 0x3d +/* 05C220 8005B620 1420001E */ bnez $at, .L8005B69C +/* 05C224 8005B624 00000000 */ nop +/* 05C228 8005B628 8E04017C */ lw $a0, 0x17c($s0) +/* 05C22C 8005B62C 00000000 */ nop +/* 05C230 8005B630 1080000B */ beqz $a0, .L8005B660 +/* 05C234 8005B634 00000000 */ nop +/* 05C238 8005B638 8FA200A0 */ lw $v0, 0xa0($sp) +/* 05C23C 8005B63C 00000000 */ nop +/* 05C240 8005B640 8C45000C */ lw $a1, 0xc($v0) +/* 05C244 8005B644 8C460010 */ lw $a2, 0x10($v0) +/* 05C248 8005B648 8C470014 */ lw $a3, 0x14($v0) +/* 05C24C 8005B64C 0C0025B6 */ jal func_800096D8 +/* 05C250 8005B650 00000000 */ nop +/* 05C254 8005B654 8602018E */ lh $v0, 0x18e($s0) +/* 05C258 8005B658 10000019 */ b .L8005B6C0 +/* 05C25C 8005B65C 8FAE00A8 */ lw $t6, 0xa8($sp) +.L8005B660: +/* 05C260 8005B660 8E180118 */ lw $t8, 0x118($s0) +/* 05C264 8005B664 8FAF00A0 */ lw $t7, 0xa0($sp) +/* 05C268 8005B668 13000014 */ beqz $t8, .L8005B6BC +/* 05C26C 8005B66C 2404009F */ li $a0, 159 +/* 05C270 8005B670 8DE5000C */ lw $a1, 0xc($t7) +/* 05C274 8005B674 8DE60010 */ lw $a2, 0x10($t7) +/* 05C278 8005B678 8DE70014 */ lw $a3, 0x14($t7) +/* 05C27C 8005B67C 24190001 */ li $t9, 1 +/* 05C280 8005B680 260D017C */ addiu $t5, $s0, 0x17c +/* 05C284 8005B684 AFAD0014 */ sw $t5, 0x14($sp) +/* 05C288 8005B688 0C002556 */ jal func_80009558 +/* 05C28C 8005B68C AFB90010 */ sw $t9, 0x10($sp) +/* 05C290 8005B690 8602018E */ lh $v0, 0x18e($s0) +/* 05C294 8005B694 1000000A */ b .L8005B6C0 +/* 05C298 8005B698 8FAE00A8 */ lw $t6, 0xa8($sp) +.L8005B69C: +/* 05C29C 8005B69C 8E04017C */ lw $a0, 0x17c($s0) +/* 05C2A0 8005B6A0 00000000 */ nop +/* 05C2A4 8005B6A4 10800006 */ beqz $a0, .L8005B6C0 +/* 05C2A8 8005B6A8 8FAE00A8 */ lw $t6, 0xa8($sp) +/* 05C2AC 8005B6AC 0C0025BE */ jal func_800096F8 +/* 05C2B0 8005B6B0 00000000 */ nop +/* 05C2B4 8005B6B4 8602018E */ lh $v0, 0x18e($s0) +/* 05C2B8 8005B6B8 AE00017C */ sw $zero, 0x17c($s0) +.L8005B6BC: +/* 05C2BC 8005B6BC 8FAE00A8 */ lw $t6, 0xa8($sp) +.L8005B6C0: +/* 05C2C0 8005B6C0 00000000 */ nop +/* 05C2C4 8005B6C4 004EC023 */ subu $t8, $v0, $t6 +/* 05C2C8 8005B6C8 A618018E */ sh $t8, 0x18e($s0) +/* 05C2CC 8005B6CC 860F018E */ lh $t7, 0x18e($s0) +/* 05C2D0 8005B6D0 00000000 */ nop +/* 05C2D4 8005B6D4 1DE00002 */ bgtz $t7, .L8005B6E0 +/* 05C2D8 8005B6D8 00000000 */ nop +/* 05C2DC 8005B6DC A2000189 */ sb $zero, 0x189($s0) +.L8005B6E0: +/* 05C2E0 8005B6E0 8E040024 */ lw $a0, 0x24($s0) +/* 05C2E4 8005B6E4 8FA200A0 */ lw $v0, 0xa0($sp) +/* 05C2E8 8005B6E8 10800006 */ beqz $a0, .L8005B704 +/* 05C2EC 8005B6EC 00000000 */ nop +/* 05C2F0 8005B6F0 8C45000C */ lw $a1, 0xc($v0) +/* 05C2F4 8005B6F4 8C460010 */ lw $a2, 0x10($v0) +/* 05C2F8 8005B6F8 8C470014 */ lw $a3, 0x14($v0) +/* 05C2FC 8005B6FC 0C0025B6 */ jal func_800096D8 +/* 05C300 8005B700 00000000 */ nop +.L8005B704: +/* 05C304 8005B704 3C018012 */ lui $at, %hi(D_8011D584) # $at, 0x8012 +/* 05C308 8005B708 A020D584 */ sb $zero, %lo(D_8011D584)($at) +/* 05C30C 8005B70C 8E020150 */ lw $v0, 0x150($s0) +/* 05C310 8005B710 3C198012 */ lui $t9, %hi(D_8011D540) # $t9, 0x8012 +/* 05C314 8005B714 10400038 */ beqz $v0, .L8005B7F8 +/* 05C318 8005B718 00000000 */ nop +/* 05C31C 8005B71C 8F39D540 */ lw $t9, %lo(D_8011D540)($t9) +/* 05C320 8005B720 8FAD00A0 */ lw $t5, 0xa0($sp) +/* 05C324 8005B724 17200034 */ bnez $t9, .L8005B7F8 +/* 05C328 8005B728 00002025 */ move $a0, $zero +/* 05C32C 8005B72C C5B2000C */ lwc1 $f18, 0xc($t5) +/* 05C330 8005B730 0C0078A7 */ jal func_8001E29C +/* 05C334 8005B734 E452000C */ swc1 $f18, 0xc($v0) +/* 05C338 8005B738 820E0003 */ lb $t6, 3($s0) +/* 05C33C 8005B73C 8FA300A0 */ lw $v1, 0xa0($sp) +/* 05C340 8005B740 01C2C021 */ addu $t8, $t6, $v0 +/* 05C344 8005B744 830F0000 */ lb $t7, ($t8) +/* 05C348 8005B748 C4660010 */ lwc1 $f6, 0x10($v1) +/* 05C34C 8005B74C 448F4000 */ mtc1 $t7, $f8 +/* 05C350 8005B750 8E190150 */ lw $t9, 0x150($s0) +/* 05C354 8005B754 468042A0 */ cvt.s.w $f10, $f8 +/* 05C358 8005B758 3C01800E */ lui $at, %hi(D_800E69B0) # $at, 0x800e +/* 05C35C 8005B75C 46065100 */ add.s $f4, $f10, $f6 +/* 05C360 8005B760 E7240010 */ swc1 $f4, 0x10($t9) +/* 05C364 8005B764 8E0D0150 */ lw $t5, 0x150($s0) +/* 05C368 8005B768 C4720014 */ lwc1 $f18, 0x14($v1) +/* 05C36C 8005B76C 00000000 */ nop +/* 05C370 8005B770 E5B20014 */ swc1 $f18, 0x14($t5) +/* 05C374 8005B774 C42A69B0 */ lwc1 $f10, %lo(D_800E69B0)($at) +/* 05C378 8005B778 C4680030 */ lwc1 $f8, 0x30($v1) +/* 05C37C 8005B77C 8E0E0150 */ lw $t6, 0x150($s0) +/* 05C380 8005B780 460A4183 */ div.s $f6, $f8, $f10 +/* 05C384 8005B784 3C01800E */ lui $at, %hi(D_800E69B8) # $at, 0x800e +/* 05C388 8005B788 E5C60008 */ swc1 $f6, 8($t6) +/* 05C38C 8005B78C C4640030 */ lwc1 $f4, 0x30($v1) +/* 05C390 8005B790 C42869BC */ lwc1 $f8, %lo(D_800E69BC)($at) +/* 05C394 8005B794 C42969B8 */ lwc1 $f9, %lo(D_800E69B8)($at) +/* 05C398 8005B798 460024A1 */ cvt.d.s $f18, $f4 +/* 05C39C 8005B79C 4628903C */ c.lt.d $f18, $f8 +/* 05C3A0 8005B7A0 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 05C3A4 8005B7A4 45000007 */ bc1f .L8005B7C4 +/* 05C3A8 8005B7A8 00000000 */ nop +/* 05C3AC 8005B7AC 8E020150 */ lw $v0, 0x150($s0) +/* 05C3B0 8005B7B0 00000000 */ nop +/* 05C3B4 8005B7B4 84580006 */ lh $t8, 6($v0) +/* 05C3B8 8005B7B8 00000000 */ nop +/* 05C3BC 8005B7BC 370F4000 */ ori $t7, $t8, 0x4000 +/* 05C3C0 8005B7C0 A44F0006 */ sh $t7, 6($v0) +.L8005B7C4: +/* 05C3C4 8005B7C4 8E020150 */ lw $v0, 0x150($s0) +/* 05C3C8 8005B7C8 44812800 */ mtc1 $at, $f5 +/* 05C3CC 8005B7CC C44A0008 */ lwc1 $f10, 8($v0) +/* 05C3D0 8005B7D0 44802000 */ mtc1 $zero, $f4 +/* 05C3D4 8005B7D4 460051A1 */ cvt.d.s $f6, $f10 +/* 05C3D8 8005B7D8 4624303C */ c.lt.d $f6, $f4 +/* 05C3DC 8005B7DC 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 05C3E0 8005B7E0 45000004 */ bc1f .L8005B7F4 +/* 05C3E4 8005B7E4 00000000 */ nop +/* 05C3E8 8005B7E8 44819000 */ mtc1 $at, $f18 +/* 05C3EC 8005B7EC 00000000 */ nop +/* 05C3F0 8005B7F0 E4520008 */ swc1 $f18, 8($v0) +.L8005B7F4: +/* 05C3F4 8005B7F4 AE000150 */ sw $zero, 0x150($s0) +.L8005B7F8: +/* 05C3F8 8005B7F8 241900FF */ li $t9, 255 +/* 05C3FC 8005B7FC A21901FE */ sb $t9, 0x1fe($s0) +/* 05C400 8005B800 0C013DDF */ jal func_8004F77C +/* 05C404 8005B804 02002025 */ move $a0, $s0 +/* 05C408 8005B808 8FBF002C */ lw $ra, 0x2c($sp) +/* 05C40C 8005B80C 8FB00028 */ lw $s0, 0x28($sp) +/* 05C410 8005B810 03E00008 */ jr $ra +/* 05C414 8005B814 27BD00A0 */ addiu $sp, $sp, 0xa0 + diff --git a/asm/non_matchings/unknown_043920/func_8005B818.s b/asm/non_matchings/unknown_043920/func_8005B818.s new file mode 100644 index 00000000..5940fc3a --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8005B818.s @@ -0,0 +1,691 @@ +glabel func_8005B818 +/* 05C418 8005B818 27BDFED8 */ addiu $sp, $sp, -0x128 +/* 05C41C 8005B81C AFB30050 */ sw $s3, 0x50($sp) +/* 05C420 8005B820 E7BE003C */ swc1 $f30, 0x3c($sp) +/* 05C424 8005B824 4487F000 */ mtc1 $a3, $f30 +/* 05C428 8005B828 00809825 */ move $s3, $a0 +/* 05C42C 8005B82C AFBF0054 */ sw $ra, 0x54($sp) +/* 05C430 8005B830 AFB10048 */ sw $s1, 0x48($sp) +/* 05C434 8005B834 00A08825 */ move $s1, $a1 +/* 05C438 8005B838 AFB2004C */ sw $s2, 0x4c($sp) +/* 05C43C 8005B83C AFB00044 */ sw $s0, 0x44($sp) +/* 05C440 8005B840 E7BF0038 */ swc1 $f31, 0x38($sp) +/* 05C444 8005B844 E7BD0030 */ swc1 $f29, 0x30($sp) +/* 05C448 8005B848 E7BC0034 */ swc1 $f28, 0x34($sp) +/* 05C44C 8005B84C E7BB0028 */ swc1 $f27, 0x28($sp) +/* 05C450 8005B850 E7BA002C */ swc1 $f26, 0x2c($sp) +/* 05C454 8005B854 E7B90020 */ swc1 $f25, 0x20($sp) +/* 05C458 8005B858 E7B80024 */ swc1 $f24, 0x24($sp) +/* 05C45C 8005B85C E7B70018 */ swc1 $f23, 0x18($sp) +/* 05C460 8005B860 E7B6001C */ swc1 $f22, 0x1c($sp) +/* 05C464 8005B864 E7B50010 */ swc1 $f21, 0x10($sp) +/* 05C468 8005B868 E7B40014 */ swc1 $f20, 0x14($sp) +/* 05C46C 8005B86C AFA60130 */ sw $a2, 0x130($sp) +/* 05C470 8005B870 0C0078A7 */ jal func_8001E29C +/* 05C474 8005B874 24040021 */ li $a0, 33 +/* 05C478 8005B878 3C018012 */ lui $at, %hi(D_8011D564) # $at, 0x8012 +/* 05C47C 8005B87C 0C01AF6C */ jal func_8006BDB0 +/* 05C480 8005B880 AC22D564 */ sw $v0, %lo(D_8011D564)($at) +/* 05C484 8005B884 0C006E99 */ jal func_8001BA64 +/* 05C488 8005B888 AFA20080 */ sw $v0, 0x80($sp) +/* 05C48C 8005B88C 10400260 */ beqz $v0, .L8005C210 +/* 05C490 8005B890 AFA2011C */ sw $v0, 0x11c($sp) +/* 05C494 8005B894 44802000 */ mtc1 $zero, $f4 +/* 05C498 8005B898 3C0141A0 */ li $at, 0x41A00000 # 20.000000 +/* 05C49C 8005B89C 44811000 */ mtc1 $at, $f2 +/* 05C4A0 8005B8A0 A22001C9 */ sb $zero, 0x1c9($s1) +/* 05C4A4 8005B8A4 A22001F5 */ sb $zero, 0x1f5($s1) +/* 05C4A8 8005B8A8 A2200187 */ sb $zero, 0x187($s1) +/* 05C4AC 8005B8AC E6240030 */ swc1 $f4, 0x30($s1) +/* 05C4B0 8005B8B0 3C01C1A0 */ li $at, 0xC1A00000 # -20.000000 +/* 05C4B4 8005B8B4 E7A20094 */ swc1 $f2, 0x94($sp) +/* 05C4B8 8005B8B8 C6200124 */ lwc1 $f0, 0x124($s1) +/* 05C4BC 8005B8BC 44813000 */ mtc1 $at, $f6 +/* 05C4C0 8005B8C0 3C01800E */ lui $at, %hi(D_800E69C4) # $at, 0x800e +/* 05C4C4 8005B8C4 4606003C */ c.lt.s $f0, $f6 +/* 05C4C8 8005B8C8 00000000 */ nop +/* 05C4CC 8005B8CC 45000005 */ bc1f .L8005B8E4 +/* 05C4D0 8005B8D0 00000000 */ nop +/* 05C4D4 8005B8D4 46001207 */ neg.s $f8, $f2 +/* 05C4D8 8005B8D8 E6280124 */ swc1 $f8, 0x124($s1) +/* 05C4DC 8005B8DC C6200124 */ lwc1 $f0, 0x124($s1) +/* 05C4E0 8005B8E0 00000000 */ nop +.L8005B8E4: +/* 05C4E4 8005B8E4 C7AA0094 */ lwc1 $f10, 0x94($sp) +/* 05C4E8 8005B8E8 00000000 */ nop +/* 05C4EC 8005B8EC 4600503C */ c.lt.s $f10, $f0 +/* 05C4F0 8005B8F0 00000000 */ nop +/* 05C4F4 8005B8F4 45000004 */ bc1f .L8005B908 +/* 05C4F8 8005B8F8 00000000 */ nop +/* 05C4FC 8005B8FC E62A0124 */ swc1 $f10, 0x124($s1) +/* 05C500 8005B900 C6200124 */ lwc1 $f0, 0x124($s1) +/* 05C504 8005B904 00000000 */ nop +.L8005B908: +/* 05C508 8005B908 C42569C0 */ lwc1 $f5, %lo(D_800E69C0)($at) +/* 05C50C 8005B90C C42469C4 */ lwc1 $f4, %lo(D_800E69C4)($at) +/* 05C510 8005B910 460004A1 */ cvt.d.s $f18, $f0 +/* 05C514 8005B914 46249182 */ mul.d $f6, $f18, $f4 +/* 05C518 8005B918 3C01800E */ lui $at, %hi(D_800E69CC) # $at, 0x800e +/* 05C51C 8005B91C C42969C8 */ lwc1 $f9, %lo(D_800E69C8)($at) +/* 05C520 8005B920 C42869CC */ lwc1 $f8, %lo(D_800E69CC)($at) +/* 05C524 8005B924 3C01800E */ lui $at, %hi(D_800E69D4) # $at, 0x800e +/* 05C528 8005B928 C43369D0 */ lwc1 $f19, %lo(D_800E69D0)($at) +/* 05C52C 8005B92C C43269D4 */ lwc1 $f18, %lo(D_800E69D4)($at) +/* 05C530 8005B930 46283280 */ add.d $f10, $f6, $f8 +/* 05C534 8005B934 00000000 */ nop +/* 05C538 8005B938 46325103 */ div.d $f4, $f10, $f18 +/* 05C53C 8005B93C 0C0326B4 */ jal sqrtf +/* 05C540 8005B940 46202320 */ cvt.s.d $f12, $f4 +/* 05C544 8005B944 822E01D3 */ lb $t6, 0x1d3($s1) +/* 05C548 8005B948 46000306 */ mov.s $f12, $f0 +/* 05C54C 8005B94C 11C00007 */ beqz $t6, .L8005B96C +/* 05C550 8005B950 27A30100 */ addiu $v1, $sp, 0x100 +/* 05C554 8005B954 3C01800E */ lui $at, %hi(D_800E69DC) # $at, 0x800e +/* 05C558 8005B958 C42969D8 */ lwc1 $f9, %lo(D_800E69D8)($at) +/* 05C55C 8005B95C C42869DC */ lwc1 $f8, %lo(D_800E69DC)($at) +/* 05C560 8005B960 460001A1 */ cvt.d.s $f6, $f0 +/* 05C564 8005B964 46283282 */ mul.d $f10, $f6, $f8 +/* 05C568 8005B968 46205320 */ cvt.s.d $f12, $f10 +.L8005B96C: +/* 05C56C 8005B96C 822F01D6 */ lb $t7, 0x1d6($s1) +/* 05C570 8005B970 24010001 */ li $at, 1 +/* 05C574 8005B974 15E1003F */ bne $t7, $at, .L8005BA74 +/* 05C578 8005B978 27A600EC */ addiu $a2, $sp, 0xec +/* 05C57C 8005B97C 863801BE */ lh $t8, 0x1be($s1) +/* 05C580 8005B980 862A01C2 */ lh $t2, 0x1c2($s1) +/* 05C584 8005B984 3319FFFF */ andi $t9, $t8, 0xffff +/* 05C588 8005B988 314BFFFF */ andi $t3, $t2, 0xffff +/* 05C58C 8005B98C 032B1023 */ subu $v0, $t9, $t3 +/* 05C590 8005B990 34018001 */ li $at, 32769 +/* 05C594 8005B994 0041082A */ slt $at, $v0, $at +/* 05C598 8005B998 14200003 */ bnez $at, .L8005B9A8 +/* 05C59C 8005B99C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 05C5A0 8005B9A0 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 05C5A4 8005B9A4 00411021 */ addu $v0, $v0, $at +.L8005B9A8: +/* 05C5A8 8005B9A8 28418000 */ slti $at, $v0, -0x8000 +/* 05C5AC 8005B9AC 10200002 */ beqz $at, .L8005B9B8 +/* 05C5B0 8005B9B0 3401FFFF */ li $at, 65535 +/* 05C5B4 8005B9B4 00411021 */ addu $v0, $v0, $at +.L8005B9B8: +/* 05C5B8 8005B9B8 04410002 */ bgez $v0, .L8005B9C4 +/* 05C5BC 8005B9BC 00000000 */ nop +/* 05C5C0 8005B9C0 00021023 */ negu $v0, $v0 +.L8005B9C4: +/* 05C5C4 8005B9C4 2442FF38 */ addiu $v0, $v0, -0xc8 +/* 05C5C8 8005B9C8 04410002 */ bgez $v0, .L8005B9D4 +/* 05C5CC 8005B9CC 00000000 */ nop +/* 05C5D0 8005B9D0 00001025 */ move $v0, $zero +.L8005B9D4: +/* 05C5D4 8005B9D4 44829000 */ mtc1 $v0, $f18 +/* 05C5D8 8005B9D8 3C01800E */ lui $at, %hi(D_800E69E4) # $at, 0x800e +/* 05C5DC 8005B9DC 46809120 */ cvt.s.w $f4, $f18 +/* 05C5E0 8005B9E0 C42969E0 */ lwc1 $f9, %lo(D_800E69E0)($at) +/* 05C5E4 8005B9E4 C42869E4 */ lwc1 $f8, %lo(D_800E69E4)($at) +/* 05C5E8 8005B9E8 460021A1 */ cvt.d.s $f6, $f4 +/* 05C5EC 8005B9EC 00000000 */ nop +/* 05C5F0 8005B9F0 46283283 */ div.d $f10, $f6, $f8 +/* 05C5F4 8005B9F4 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 05C5F8 8005B9F8 44812800 */ mtc1 $at, $f5 +/* 05C5FC 8005B9FC 44802000 */ mtc1 $zero, $f4 +/* 05C600 8005BA00 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 05C604 8005BA04 462053A0 */ cvt.s.d $f14, $f10 +/* 05C608 8005BA08 460E6301 */ sub.s $f12, $f12, $f14 +/* 05C60C 8005BA0C E7AE0094 */ swc1 $f14, 0x94($sp) +/* 05C610 8005BA10 460064A1 */ cvt.d.s $f18, $f12 +/* 05C614 8005BA14 4624903C */ c.lt.d $f18, $f4 +/* 05C618 8005BA18 00000000 */ nop +/* 05C61C 8005BA1C 45000003 */ bc1f .L8005BA2C +/* 05C620 8005BA20 00000000 */ nop +/* 05C624 8005BA24 44816000 */ mtc1 $at, $f12 +/* 05C628 8005BA28 00000000 */ nop +.L8005BA2C: +/* 05C62C 8005BA2C C620002C */ lwc1 $f0, 0x2c($s1) +/* 05C630 8005BA30 46006087 */ neg.s $f2, $f12 +/* 05C634 8005BA34 4602003C */ c.lt.s $f0, $f2 +/* 05C638 8005BA38 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 05C63C 8005BA3C 45000003 */ bc1f .L8005BA4C +/* 05C640 8005BA40 00000000 */ nop +/* 05C644 8005BA44 10000017 */ b .L8005BAA4 +/* 05C648 8005BA48 E622002C */ swc1 $f2, 0x2c($s1) +.L8005BA4C: +/* 05C64C 8005BA4C 46001181 */ sub.s $f6, $f2, $f0 +/* 05C650 8005BA50 44815800 */ mtc1 $at, $f11 +/* 05C654 8005BA54 44805000 */ mtc1 $zero, $f10 +/* 05C658 8005BA58 46003221 */ cvt.d.s $f8, $f6 +/* 05C65C 8005BA5C 462A4482 */ mul.d $f18, $f8, $f10 +/* 05C660 8005BA60 46000121 */ cvt.d.s $f4, $f0 +/* 05C664 8005BA64 46322180 */ add.d $f6, $f4, $f18 +/* 05C668 8005BA68 46203220 */ cvt.s.d $f8, $f6 +/* 05C66C 8005BA6C 1000000D */ b .L8005BAA4 +/* 05C670 8005BA70 E628002C */ swc1 $f8, 0x2c($s1) +.L8005BA74: +/* 05C674 8005BA74 C620002C */ lwc1 $f0, 0x2c($s1) +/* 05C678 8005BA78 46006287 */ neg.s $f10, $f12 +/* 05C67C 8005BA7C 46005101 */ sub.s $f4, $f10, $f0 +/* 05C680 8005BA80 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 05C684 8005BA84 44813800 */ mtc1 $at, $f7 +/* 05C688 8005BA88 44803000 */ mtc1 $zero, $f6 +/* 05C68C 8005BA8C 460024A1 */ cvt.d.s $f18, $f4 +/* 05C690 8005BA90 46269202 */ mul.d $f8, $f18, $f6 +/* 05C694 8005BA94 460002A1 */ cvt.d.s $f10, $f0 +/* 05C698 8005BA98 46285100 */ add.d $f4, $f10, $f8 +/* 05C69C 8005BA9C 462024A0 */ cvt.s.d $f18, $f4 +/* 05C6A0 8005BAA0 E632002C */ swc1 $f18, 0x2c($s1) +.L8005BAA4: +/* 05C6A4 8005BAA4 82240192 */ lb $a0, 0x192($s1) +/* 05C6A8 8005BAA8 27A700D8 */ addiu $a3, $sp, 0xd8 +/* 05C6AC 8005BAAC 2484FFFE */ addiu $a0, $a0, -2 +/* 05C6B0 8005BAB0 04810004 */ bgez $a0, .L8005BAC4 +/* 05C6B4 8005BAB4 27A900B8 */ addiu $t1, $sp, 0xb8 +/* 05C6B8 8005BAB8 8FA2011C */ lw $v0, 0x11c($sp) +/* 05C6BC 8005BABC 00000000 */ nop +/* 05C6C0 8005BAC0 00822021 */ addu $a0, $a0, $v0 +.L8005BAC4: +/* 05C6C4 8005BAC4 8FA2011C */ lw $v0, 0x11c($sp) +/* 05C6C8 8005BAC8 27A800A4 */ addiu $t0, $sp, 0xa4 +/* 05C6CC 8005BACC 0082082A */ slt $at, $a0, $v0 +/* 05C6D0 8005BAD0 14200002 */ bnez $at, .L8005BADC +/* 05C6D4 8005BAD4 27B000B8 */ addiu $s0, $sp, 0xb8 +/* 05C6D8 8005BAD8 00822023 */ subu $a0, $a0, $v0 +.L8005BADC: +/* 05C6DC 8005BADC 922501C8 */ lbu $a1, 0x1c8($s1) +/* 05C6E0 8005BAE0 AFA90070 */ sw $t1, 0x70($sp) +/* 05C6E4 8005BAE4 AFA8006C */ sw $t0, 0x6c($sp) +/* 05C6E8 8005BAE8 AFA70074 */ sw $a3, 0x74($sp) +/* 05C6EC 8005BAEC AFA60078 */ sw $a2, 0x78($sp) +/* 05C6F0 8005BAF0 AFA40120 */ sw $a0, 0x120($sp) +/* 05C6F4 8005BAF4 0C006E87 */ jal func_8001BA1C +/* 05C6F8 8005BAF8 AFA3007C */ sw $v1, 0x7c($sp) +/* 05C6FC 8005BAFC 8FA3007C */ lw $v1, 0x7c($sp) +/* 05C700 8005BB00 C4460010 */ lwc1 $f6, 0x10($v0) +/* 05C704 8005BB04 8FA40120 */ lw $a0, 0x120($sp) +/* 05C708 8005BB08 8FA60078 */ lw $a2, 0x78($sp) +/* 05C70C 8005BB0C 8FA70074 */ lw $a3, 0x74($sp) +/* 05C710 8005BB10 8FA8006C */ lw $t0, 0x6c($sp) +/* 05C714 8005BB14 8FA90070 */ lw $t1, 0x70($sp) +/* 05C718 8005BB18 E4660000 */ swc1 $f6, ($v1) +/* 05C71C 8005BB1C C44A0014 */ lwc1 $f10, 0x14($v0) +/* 05C720 8005BB20 24840001 */ addiu $a0, $a0, 1 +/* 05C724 8005BB24 E4CA0000 */ swc1 $f10, ($a2) +/* 05C728 8005BB28 C4480018 */ lwc1 $f8, 0x18($v0) +/* 05C72C 8005BB2C 24630004 */ addiu $v1, $v1, 4 +/* 05C730 8005BB30 E4E80000 */ swc1 $f8, ($a3) +/* 05C734 8005BB34 822C01CA */ lb $t4, 0x1ca($s1) +/* 05C738 8005BB38 24C60004 */ addiu $a2, $a2, 4 +/* 05C73C 8005BB3C 004C6821 */ addu $t5, $v0, $t4 +/* 05C740 8005BB40 81AE002E */ lb $t6, 0x2e($t5) +/* 05C744 8005BB44 24E70004 */ addiu $a3, $a3, 4 +/* 05C748 8005BB48 448E2000 */ mtc1 $t6, $f4 +/* 05C74C 8005BB4C 25080004 */ addiu $t0, $t0, 4 +/* 05C750 8005BB50 468024A0 */ cvt.s.w $f18, $f4 +/* 05C754 8005BB54 E5320000 */ swc1 $f18, ($t1) +/* 05C758 8005BB58 822F01CA */ lb $t7, 0x1ca($s1) +/* 05C75C 8005BB5C 00000000 */ nop +/* 05C760 8005BB60 004FC021 */ addu $t8, $v0, $t7 +/* 05C764 8005BB64 830A0032 */ lb $t2, 0x32($t8) +/* 05C768 8005BB68 00000000 */ nop +/* 05C76C 8005BB6C 448A3000 */ mtc1 $t2, $f6 +/* 05C770 8005BB70 00000000 */ nop +/* 05C774 8005BB74 468032A0 */ cvt.s.w $f10, $f6 +/* 05C778 8005BB78 E50AFFFC */ swc1 $f10, -4($t0) +/* 05C77C 8005BB7C 823901CA */ lb $t9, 0x1ca($s1) +/* 05C780 8005BB80 C448001C */ lwc1 $f8, 0x1c($v0) +/* 05C784 8005BB84 00595821 */ addu $t3, $v0, $t9 +/* 05C788 8005BB88 816C002E */ lb $t4, 0x2e($t3) +/* 05C78C 8005BB8C C4440008 */ lwc1 $f4, 8($v0) +/* 05C790 8005BB90 448C3000 */ mtc1 $t4, $f6 +/* 05C794 8005BB94 46044482 */ mul.s $f18, $f8, $f4 +/* 05C798 8005BB98 C464FFFC */ lwc1 $f4, -4($v1) +/* 05C79C 8005BB9C 468032A0 */ cvt.s.w $f10, $f6 +/* 05C7A0 8005BBA0 460A9202 */ mul.s $f8, $f18, $f10 +/* 05C7A4 8005BBA4 46082180 */ add.s $f6, $f4, $f8 +/* 05C7A8 8005BBA8 E466FFFC */ swc1 $f6, -4($v1) +/* 05C7AC 8005BBAC 822D01CA */ lb $t5, 0x1ca($s1) +/* 05C7B0 8005BBB0 C452001C */ lwc1 $f18, 0x1c($v0) +/* 05C7B4 8005BBB4 004D7021 */ addu $t6, $v0, $t5 +/* 05C7B8 8005BBB8 81CF0032 */ lb $t7, 0x32($t6) +/* 05C7BC 8005BBBC C4C6FFFC */ lwc1 $f6, -4($a2) +/* 05C7C0 8005BBC0 448F5000 */ mtc1 $t7, $f10 +/* 05C7C4 8005BBC4 00000000 */ nop +/* 05C7C8 8005BBC8 46805120 */ cvt.s.w $f4, $f10 +/* 05C7CC 8005BBCC 46049202 */ mul.s $f8, $f18, $f4 +/* 05C7D0 8005BBD0 46083280 */ add.s $f10, $f6, $f8 +/* 05C7D4 8005BBD4 E4CAFFFC */ swc1 $f10, -4($a2) +/* 05C7D8 8005BBD8 823801CA */ lb $t8, 0x1ca($s1) +/* 05C7DC 8005BBDC C4440000 */ lwc1 $f4, ($v0) +/* 05C7E0 8005BBE0 00585021 */ addu $t2, $v0, $t8 +/* 05C7E4 8005BBE4 8159002E */ lb $t9, 0x2e($t2) +/* 05C7E8 8005BBE8 C452001C */ lwc1 $f18, 0x1c($v0) +/* 05C7EC 8005BBEC 44995000 */ mtc1 $t9, $f10 +/* 05C7F0 8005BBF0 46002187 */ neg.s $f6, $f4 +/* 05C7F4 8005BBF4 46069202 */ mul.s $f8, $f18, $f6 +/* 05C7F8 8005BBF8 C4E6FFFC */ lwc1 $f6, -4($a3) +/* 05C7FC 8005BBFC 46805120 */ cvt.s.w $f4, $f10 +/* 05C800 8005BC00 46044482 */ mul.s $f18, $f8, $f4 +/* 05C804 8005BC04 46123280 */ add.s $f10, $f6, $f18 +/* 05C808 8005BC08 E4EAFFFC */ swc1 $f10, -4($a3) +/* 05C80C 8005BC0C 8FAB011C */ lw $t3, 0x11c($sp) +/* 05C810 8005BC10 00000000 */ nop +/* 05C814 8005BC14 148B0002 */ bne $a0, $t3, .L8005BC20 +/* 05C818 8005BC18 00000000 */ nop +/* 05C81C 8005BC1C 00002025 */ move $a0, $zero +.L8005BC20: +/* 05C820 8005BC20 1510FFAE */ bne $t0, $s0, .L8005BADC +/* 05C824 8005BC24 25290004 */ addiu $t1, $t1, 4 +/* 05C828 8005BC28 C628002C */ lwc1 $f8, 0x2c($s1) +/* 05C82C 8005BC2C 44803000 */ mtc1 $zero, $f6 +/* 05C830 8005BC30 E7A8008C */ swc1 $f8, 0x8c($sp) +/* 05C834 8005BC34 C7A4008C */ lwc1 $f4, 0x8c($sp) +/* 05C838 8005BC38 44805800 */ mtc1 $zero, $f11 +/* 05C83C 8005BC3C 4606203C */ c.lt.s $f4, $f6 +/* 05C840 8005BC40 4480A000 */ mtc1 $zero, $f20 +/* 05C844 8005BC44 45000003 */ bc1f .L8005BC54 +/* 05C848 8005BC48 00000000 */ nop +/* 05C84C 8005BC4C 46002487 */ neg.s $f18, $f4 +/* 05C850 8005BC50 E7B2008C */ swc1 $f18, 0x8c($sp) +.L8005BC54: +/* 05C854 8005BC54 C62800AC */ lwc1 $f8, 0xac($s1) +/* 05C858 8005BC58 44805000 */ mtc1 $zero, $f10 +/* 05C85C 8005BC5C 460041A1 */ cvt.d.s $f6, $f8 +/* 05C860 8005BC60 46265032 */ c.eq.d $f10, $f6 +/* 05C864 8005BC64 00009025 */ move $s2, $zero +/* 05C868 8005BC68 45000004 */ bc1f .L8005BC7C +/* 05C86C 8005BC6C 3C01800E */ lui $at, %hi(D_800E69E8) # $at, 0x800e +/* 05C870 8005BC70 C42469E8 */ lwc1 $f4, %lo(D_800E69E8)($at) +/* 05C874 8005BC74 00000000 */ nop +/* 05C878 8005BC78 E62400AC */ swc1 $f4, 0xac($s1) +.L8005BC7C: +/* 05C87C 8005BC7C 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 05C880 8005BC80 4481A800 */ mtc1 $at, $f21 +/* 05C884 8005BC84 00008025 */ move $s0, $zero +.L8005BC88: +/* 05C888 8005BC88 C62600AC */ lwc1 $f6, 0xac($s1) +/* 05C88C 8005BC8C C63200A8 */ lwc1 $f18, 0xa8($s1) +/* 05C890 8005BC90 461E3102 */ mul.s $f4, $f6, $f30 +/* 05C894 8005BC94 46009221 */ cvt.d.s $f8, $f18 +/* 05C898 8005BC98 27A40100 */ addiu $a0, $sp, 0x100 +/* 05C89C 8005BC9C 27A7009C */ addiu $a3, $sp, 0x9c +/* 05C8A0 8005BCA0 4628A281 */ sub.d $f10, $f20, $f8 +/* 05C8A4 8005BCA4 460024A1 */ cvt.d.s $f18, $f4 +/* 05C8A8 8005BCA8 46325200 */ add.d $f8, $f10, $f18 +/* 05C8AC 8005BCAC 462045A0 */ cvt.s.d $f22, $f8 +/* 05C8B0 8005BCB0 4600B0A1 */ cvt.d.s $f2, $f22 +/* 05C8B4 8005BCB4 4622A03E */ c.le.d $f20, $f2 +/* 05C8B8 8005BCB8 00000000 */ nop +/* 05C8BC 8005BCBC 45000004 */ bc1f .L8005BCD0 +/* 05C8C0 8005BCC0 00000000 */ nop +/* 05C8C4 8005BCC4 46341181 */ sub.d $f6, $f2, $f20 +/* 05C8C8 8005BCC8 24120001 */ li $s2, 1 +/* 05C8CC 8005BCCC 462035A0 */ cvt.s.d $f22, $f6 +.L8005BCD0: +/* 05C8D0 8005BCD0 4406B000 */ mfc1 $a2, $f22 +/* 05C8D4 8005BCD4 0C00898F */ jal func_8002263C +/* 05C8D8 8005BCD8 02402825 */ move $a1, $s2 +/* 05C8DC 8005BCDC 4406B000 */ mfc1 $a2, $f22 +/* 05C8E0 8005BCE0 46000686 */ mov.s $f26, $f0 +/* 05C8E4 8005BCE4 27A400EC */ addiu $a0, $sp, 0xec +/* 05C8E8 8005BCE8 02402825 */ move $a1, $s2 +/* 05C8EC 8005BCEC 0C00898F */ jal func_8002263C +/* 05C8F0 8005BCF0 27A70098 */ addiu $a3, $sp, 0x98 +/* 05C8F4 8005BCF4 4406B000 */ mfc1 $a2, $f22 +/* 05C8F8 8005BCF8 46000606 */ mov.s $f24, $f0 +/* 05C8FC 8005BCFC 27A400D8 */ addiu $a0, $sp, 0xd8 +/* 05C900 8005BD00 02402825 */ move $a1, $s2 +/* 05C904 8005BD04 0C00898F */ jal func_8002263C +/* 05C908 8005BD08 27A70094 */ addiu $a3, $sp, 0x94 +/* 05C90C 8005BD0C C6240068 */ lwc1 $f4, 0x68($s1) +/* 05C910 8005BD10 C62A006C */ lwc1 $f10, 0x6c($s1) +/* 05C914 8005BD14 C6320070 */ lwc1 $f18, 0x70($s1) +/* 05C918 8005BD18 4604D681 */ sub.s $f26, $f26, $f4 +/* 05C91C 8005BD1C 460AC601 */ sub.s $f24, $f24, $f10 +/* 05C920 8005BD20 16000020 */ bnez $s0, .L8005BDA4 +/* 05C924 8005BD24 46120701 */ sub.s $f28, $f0, $f18 +/* 05C928 8005BD28 461AD202 */ mul.s $f8, $f26, $f26 +/* 05C92C 8005BD2C 00009025 */ move $s2, $zero +/* 05C930 8005BD30 4618C182 */ mul.s $f6, $f24, $f24 +/* 05C934 8005BD34 00000000 */ nop +/* 05C938 8005BD38 461CE282 */ mul.s $f10, $f28, $f28 +/* 05C93C 8005BD3C 46064100 */ add.s $f4, $f8, $f6 +/* 05C940 8005BD40 0C0326B4 */ jal sqrtf +/* 05C944 8005BD44 460A2300 */ add.s $f12, $f4, $f10 +/* 05C948 8005BD48 00000000 */ nop +/* 05C94C 8005BD4C 461E0303 */ div.s $f12, $f0, $f30 +/* 05C950 8005BD50 44809000 */ mtc1 $zero, $f18 +/* 05C954 8005BD54 C7A6008C */ lwc1 $f6, 0x8c($sp) +/* 05C958 8005BD58 3C01800E */ lui $at, %hi(D_800E69F4) # $at, 0x800e +/* 05C95C 8005BD5C 460C9032 */ c.eq.s $f18, $f12 +/* 05C960 8005BD60 00000000 */ nop +/* 05C964 8005BD64 45010007 */ bc1t .L8005BD84 +/* 05C968 8005BD68 00000000 */ nop +/* 05C96C 8005BD6C 460C3103 */ div.s $f4, $f6, $f12 +/* 05C970 8005BD70 C62800AC */ lwc1 $f8, 0xac($s1) +/* 05C974 8005BD74 00000000 */ nop +/* 05C978 8005BD78 46044282 */ mul.s $f10, $f8, $f4 +/* 05C97C 8005BD7C 10000009 */ b .L8005BDA4 +/* 05C980 8005BD80 E62A00AC */ swc1 $f10, 0xac($s1) +.L8005BD84: +/* 05C984 8005BD84 C63200AC */ lwc1 $f18, 0xac($s1) +/* 05C988 8005BD88 C42969F0 */ lwc1 $f9, %lo(D_800E69F0)($at) +/* 05C98C 8005BD8C C42869F4 */ lwc1 $f8, %lo(D_800E69F4)($at) +/* 05C990 8005BD90 460091A1 */ cvt.d.s $f6, $f18 +/* 05C994 8005BD94 46283100 */ add.d $f4, $f6, $f8 +/* 05C998 8005BD98 2410FFFF */ li $s0, -1 +/* 05C99C 8005BD9C 462022A0 */ cvt.s.d $f10, $f4 +/* 05C9A0 8005BDA0 E62A00AC */ swc1 $f10, 0xac($s1) +.L8005BDA4: +/* 05C9A4 8005BDA4 26100001 */ addiu $s0, $s0, 1 +/* 05C9A8 8005BDA8 2A010002 */ slti $at, $s0, 2 +/* 05C9AC 8005BDAC 1420FFB6 */ bnez $at, .L8005BC88 +/* 05C9B0 8005BDB0 00000000 */ nop +/* 05C9B4 8005BDB4 C6320068 */ lwc1 $f18, 0x68($s1) +/* 05C9B8 8005BDB8 C628006C */ lwc1 $f8, 0x6c($s1) +/* 05C9BC 8005BDBC C62A0070 */ lwc1 $f10, 0x70($s1) +/* 05C9C0 8005BDC0 461A9180 */ add.s $f6, $f18, $f26 +/* 05C9C4 8005BDC4 46184100 */ add.s $f4, $f8, $f24 +/* 05C9C8 8005BDC8 E6260068 */ swc1 $f6, 0x68($s1) +/* 05C9CC 8005BDCC 461C5480 */ add.s $f18, $f10, $f28 +/* 05C9D0 8005BDD0 E624006C */ swc1 $f4, 0x6c($s1) +/* 05C9D4 8005BDD4 E6320070 */ swc1 $f18, 0x70($s1) +/* 05C9D8 8005BDD8 C668000C */ lwc1 $f8, 0xc($s3) +/* 05C9DC 8005BDDC C6260068 */ lwc1 $f6, 0x68($s1) +/* 05C9E0 8005BDE0 C6320070 */ lwc1 $f18, 0x70($s1) +/* 05C9E4 8005BDE4 46083681 */ sub.s $f26, $f6, $f8 +/* 05C9E8 8005BDE8 C6660014 */ lwc1 $f6, 0x14($s3) +/* 05C9EC 8005BDEC 461AD202 */ mul.s $f8, $f26, $f26 +/* 05C9F0 8005BDF0 C66A0010 */ lwc1 $f10, 0x10($s3) +/* 05C9F4 8005BDF4 C624006C */ lwc1 $f4, 0x6c($s1) +/* 05C9F8 8005BDF8 46069701 */ sub.s $f28, $f18, $f6 +/* 05C9FC 8005BDFC 460A2601 */ sub.s $f24, $f4, $f10 +/* 05CA00 8005BE00 461CE102 */ mul.s $f4, $f28, $f28 +/* 05CA04 8005BE04 4600B0A1 */ cvt.d.s $f2, $f22 +/* 05CA08 8005BE08 E7A20064 */ swc1 $f2, 0x64($sp) +/* 05CA0C 8005BE0C E7A30060 */ swc1 $f3, 0x60($sp) +/* 05CA10 8005BE10 0C0326B4 */ jal sqrtf +/* 05CA14 8005BE14 46044300 */ add.s $f12, $f8, $f4 +/* 05CA18 8005BE18 00000000 */ nop +/* 05CA1C 8005BE1C 461E0303 */ div.s $f12, $f0, $f30 +/* 05CA20 8005BE20 3C01800E */ lui $at, %hi(D_800E69FC) # $at, 0x800e +/* 05CA24 8005BE24 C43169F8 */ lwc1 $f17, %lo(D_800E69F8)($at) +/* 05CA28 8005BE28 C43069FC */ lwc1 $f16, %lo(D_800E69FC)($at) +/* 05CA2C 8005BE2C C7A30060 */ lwc1 $f3, 0x60($sp) +/* 05CA30 8005BE30 C7A20064 */ lwc1 $f2, 0x64($sp) +/* 05CA34 8005BE34 00000000 */ nop +/* 05CA38 8005BE38 4622A481 */ sub.d $f18, $f20, $f2 +/* 05CA3C 8005BE3C 460063A1 */ cvt.d.s $f14, $f12 +/* 05CA40 8005BE40 462E803C */ c.lt.d $f16, $f14 +/* 05CA44 8005BE44 E7AC0090 */ swc1 $f12, 0x90($sp) +/* 05CA48 8005BE48 45000008 */ bc1f .L8005BE6C +/* 05CA4C 8005BE4C 462091A0 */ cvt.s.d $f6, $f18 +/* 05CA50 8005BE50 00000000 */ nop +/* 05CA54 8005BE54 462E8283 */ div.d $f10, $f16, $f14 +/* 05CA58 8005BE58 46205020 */ cvt.s.d $f0, $f10 +/* 05CA5C 8005BE5C 4600D682 */ mul.s $f26, $f26, $f0 +/* 05CA60 8005BE60 00000000 */ nop +/* 05CA64 8005BE64 4600E702 */ mul.s $f28, $f28, $f0 +/* 05CA68 8005BE68 00000000 */ nop +.L8005BE6C: +/* 05CA6C 8005BE6C 12400024 */ beqz $s2, .L8005BF00 +/* 05CA70 8005BE70 E62600A8 */ swc1 $f6, 0xa8($s1) +/* 05CA74 8005BE74 822C0192 */ lb $t4, 0x192($s1) +/* 05CA78 8005BE78 00000000 */ nop +/* 05CA7C 8005BE7C 258D0001 */ addiu $t5, $t4, 1 +/* 05CA80 8005BE80 A22D0192 */ sb $t5, 0x192($s1) +/* 05CA84 8005BE84 8FAF011C */ lw $t7, 0x11c($sp) +/* 05CA88 8005BE88 822E0192 */ lb $t6, 0x192($s1) +/* 05CA8C 8005BE8C 00000000 */ nop +/* 05CA90 8005BE90 01CF082A */ slt $at, $t6, $t7 +/* 05CA94 8005BE94 1420000C */ bnez $at, .L8005BEC8 +/* 05CA98 8005BE98 8FB90080 */ lw $t9, 0x80($sp) +/* 05CA9C 8005BE9C 86380190 */ lh $t8, 0x190($s1) +/* 05CAA0 8005BEA0 A2200192 */ sb $zero, 0x192($s1) +/* 05CAA4 8005BEA4 1B000008 */ blez $t8, .L8005BEC8 +/* 05CAA8 8005BEA8 8FB90080 */ lw $t9, 0x80($sp) +/* 05CAAC 8005BEAC 82220193 */ lb $v0, 0x193($s1) +/* 05CAB0 8005BEB0 00000000 */ nop +/* 05CAB4 8005BEB4 28410078 */ slti $at, $v0, 0x78 +/* 05CAB8 8005BEB8 10200002 */ beqz $at, .L8005BEC4 +/* 05CABC 8005BEBC 244A0001 */ addiu $t2, $v0, 1 +/* 05CAC0 8005BEC0 A22A0193 */ sb $t2, 0x193($s1) +.L8005BEC4: +/* 05CAC4 8005BEC4 8FB90080 */ lw $t9, 0x80($sp) +.L8005BEC8: +/* 05CAC8 8005BEC8 8FAD011C */ lw $t5, 0x11c($sp) +/* 05CACC 8005BECC 832B004B */ lb $t3, 0x4b($t9) +/* 05CAD0 8005BED0 86220190 */ lh $v0, 0x190($s1) +/* 05CAD4 8005BED4 256C0003 */ addiu $t4, $t3, 3 +/* 05CAD8 8005BED8 018D0019 */ multu $t4, $t5 +/* 05CADC 8005BEDC 24182710 */ li $t8, 10000 +/* 05CAE0 8005BEE0 244F0001 */ addiu $t7, $v0, 1 +/* 05CAE4 8005BEE4 00007012 */ mflo $t6 +/* 05CAE8 8005BEE8 004E082A */ slt $at, $v0, $t6 +/* 05CAEC 8005BEEC 10200002 */ beqz $at, .L8005BEF8 +/* 05CAF0 8005BEF0 00000000 */ nop +/* 05CAF4 8005BEF4 A62F0190 */ sh $t7, 0x190($s1) +.L8005BEF8: +/* 05CAF8 8005BEF8 10000011 */ b .L8005BF40 +/* 05CAFC 8005BEFC A63801A8 */ sh $t8, 0x1a8($s1) +.L8005BF00: +/* 05CB00 8005BF00 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 05CB04 8005BF04 44812000 */ mtc1 $at, $f4 +/* 05CB08 8005BF08 C62800A8 */ lwc1 $f8, 0xa8($s1) +/* 05CB0C 8005BF0C 00000000 */ nop +/* 05CB10 8005BF10 46044282 */ mul.s $f10, $f8, $f4 +/* 05CB14 8005BF14 444AF800 */ cfc1 $t2, $31 +/* 05CB18 8005BF18 00000000 */ nop +/* 05CB1C 8005BF1C 35410003 */ ori $at, $t2, 3 +/* 05CB20 8005BF20 38210002 */ xori $at, $at, 2 +/* 05CB24 8005BF24 44C1F800 */ ctc1 $at, $31 +/* 05CB28 8005BF28 00000000 */ nop +/* 05CB2C 8005BF2C 460054A4 */ cvt.w.s $f18, $f10 +/* 05CB30 8005BF30 44199000 */ mfc1 $t9, $f18 +/* 05CB34 8005BF34 44CAF800 */ ctc1 $t2, $31 +/* 05CB38 8005BF38 A63901A8 */ sh $t9, 0x1a8($s1) +/* 05CB3C 8005BF3C 00000000 */ nop +.L8005BF40: +/* 05CB40 8005BF40 822201D3 */ lb $v0, 0x1d3($s1) +/* 05CB44 8005BF44 8FAB0130 */ lw $t3, 0x130($sp) +/* 05CB48 8005BF48 18400003 */ blez $v0, .L8005BF58 +/* 05CB4C 8005BF4C 004B6023 */ subu $t4, $v0, $t3 +/* 05CB50 8005BF50 10000002 */ b .L8005BF5C +/* 05CB54 8005BF54 A22C01D3 */ sb $t4, 0x1d3($s1) +.L8005BF58: +/* 05CB58 8005BF58 A22001D3 */ sb $zero, 0x1d3($s1) +.L8005BF5C: +/* 05CB5C 8005BF5C C7A600C0 */ lwc1 $f6, 0xc0($sp) +/* 05CB60 8005BF60 C7A800BC */ lwc1 $f8, 0xbc($sp) +/* 05CB64 8005BF64 00000000 */ nop +/* 05CB68 8005BF68 46083101 */ sub.s $f4, $f6, $f8 +/* 05CB6C 8005BF6C 46162282 */ mul.s $f10, $f4, $f22 +/* 05CB70 8005BF70 46085480 */ add.s $f18, $f10, $f8 +/* 05CB74 8005BF74 444DF800 */ cfc1 $t5, $31 +/* 05CB78 8005BF78 00000000 */ nop +/* 05CB7C 8005BF7C 35A10003 */ ori $at, $t5, 3 +/* 05CB80 8005BF80 38210002 */ xori $at, $at, 2 +/* 05CB84 8005BF84 44C1F800 */ ctc1 $at, $31 +/* 05CB88 8005BF88 00000000 */ nop +/* 05CB8C 8005BF8C 460091A4 */ cvt.w.s $f6, $f18 +/* 05CB90 8005BF90 440E3000 */ mfc1 $t6, $f6 +/* 05CB94 8005BF94 44CDF800 */ ctc1 $t5, $31 +/* 05CB98 8005BF98 A62E01BA */ sh $t6, 0x1ba($s1) +/* 05CB9C 8005BF9C C7AA00A8 */ lwc1 $f10, 0xa8($sp) +/* 05CBA0 8005BFA0 C7A400AC */ lwc1 $f4, 0xac($sp) +/* 05CBA4 8005BFA4 00000000 */ nop +/* 05CBA8 8005BFA8 460A2201 */ sub.s $f8, $f4, $f10 +/* 05CBAC 8005BFAC 46164482 */ mul.s $f18, $f8, $f22 +/* 05CBB0 8005BFB0 460A9180 */ add.s $f6, $f18, $f10 +/* 05CBB4 8005BFB4 444FF800 */ cfc1 $t7, $31 +/* 05CBB8 8005BFB8 00000000 */ nop +/* 05CBBC 8005BFBC 35E10003 */ ori $at, $t7, 3 +/* 05CBC0 8005BFC0 38210002 */ xori $at, $at, 2 +/* 05CBC4 8005BFC4 44C1F800 */ ctc1 $at, $31 +/* 05CBC8 8005BFC8 00000000 */ nop +/* 05CBCC 8005BFCC 46003124 */ cvt.w.s $f4, $f6 +/* 05CBD0 8005BFD0 44182000 */ mfc1 $t8, $f4 +/* 05CBD4 8005BFD4 44CFF800 */ ctc1 $t7, $31 +/* 05CBD8 8005BFD8 A63801BC */ sh $t8, 0x1bc($s1) +/* 05CBDC 8005BFDC C7A8009C */ lwc1 $f8, 0x9c($sp) +/* 05CBE0 8005BFE0 C7AA0094 */ lwc1 $f10, 0x94($sp) +/* 05CBE4 8005BFE4 46084482 */ mul.s $f18, $f8, $f8 +/* 05CBE8 8005BFE8 00000000 */ nop +/* 05CBEC 8005BFEC 460A5182 */ mul.s $f6, $f10, $f10 +/* 05CBF0 8005BFF0 0C0326B4 */ jal sqrtf +/* 05CBF4 8005BFF4 46069300 */ add.s $f12, $f18, $f6 +/* 05CBF8 8005BFF8 44802000 */ mtc1 $zero, $f4 +/* 05CBFC 8005BFFC C7AC009C */ lwc1 $f12, 0x9c($sp) +/* 05CC00 8005C000 46040032 */ c.eq.s $f0, $f4 +/* 05CC04 8005C004 C7AE0094 */ lwc1 $f14, 0x94($sp) +/* 05CC08 8005C008 45010015 */ bc1t .L8005C060 +/* 05CC0C 8005C00C 00000000 */ nop +/* 05CC10 8005C010 C7A80098 */ lwc1 $f8, 0x98($sp) +/* 05CC14 8005C014 46006303 */ div.s $f12, $f12, $f0 +/* 05CC18 8005C018 00000000 */ nop +/* 05CC1C 8005C01C 46007383 */ div.s $f14, $f14, $f0 +/* 05CC20 8005C020 E7AC009C */ swc1 $f12, 0x9c($sp) +/* 05CC24 8005C024 46004283 */ div.s $f10, $f8, $f0 +/* 05CC28 8005C028 E7AE0094 */ swc1 $f14, 0x94($sp) +/* 05CC2C 8005C02C 0C01C1D4 */ jal func_80070750 +/* 05CC30 8005C030 E7AA0098 */ swc1 $f10, 0x98($sp) +/* 05CC34 8005C034 24018000 */ li $at, -32768 +/* 05CC38 8005C038 00415021 */ addu $t2, $v0, $at +/* 05CC3C 8005C03C A62A01A0 */ sh $t2, 0x1a0($s1) +/* 05CC40 8005C040 863901A0 */ lh $t9, 0x1a0($s1) +/* 05CC44 8005C044 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 05CC48 8005C048 A6790000 */ sh $t9, ($s3) +/* 05CC4C 8005C04C C7AC0098 */ lwc1 $f12, 0x98($sp) +/* 05CC50 8005C050 44817000 */ mtc1 $at, $f14 +/* 05CC54 8005C054 0C01C1D4 */ jal func_80070750 +/* 05CC58 8005C058 00000000 */ nop +/* 05CC5C 8005C05C A6620002 */ sh $v0, 2($s3) +.L8005C060: +/* 05CC60 8005C060 862B01BE */ lh $t3, 0x1be($s1) +/* 05CC64 8005C064 862C01C0 */ lh $t4, 0x1c0($s1) +/* 05CC68 8005C068 862D01A0 */ lh $t5, 0x1a0($s1) +/* 05CC6C 8005C06C A62B01C2 */ sh $t3, 0x1c2($s1) +/* 05CC70 8005C070 A62C01C4 */ sh $t4, 0x1c4($s1) +/* 05CC74 8005C074 A62D01BE */ sh $t5, 0x1be($s1) +/* 05CC78 8005C078 866E0002 */ lh $t6, 2($s3) +/* 05CC7C 8005C07C 4405D000 */ mfc1 $a1, $f26 +/* 05CC80 8005C080 4406C000 */ mfc1 $a2, $f24 +/* 05CC84 8005C084 4407E000 */ mfc1 $a3, $f28 +/* 05CC88 8005C088 02602025 */ move $a0, $s3 +/* 05CC8C 8005C08C 0C00455C */ jal func_80011570 +/* 05CC90 8005C090 A62E01C0 */ sh $t6, 0x1c0($s1) +/* 05CC94 8005C094 1040000A */ beqz $v0, .L8005C0C0 +/* 05CC98 8005C098 3C014034 */ li $at, 0x40340000 # 2.812500 +/* 05CC9C 8005C09C C672000C */ lwc1 $f18, 0xc($s3) +/* 05CCA0 8005C0A0 C6640010 */ lwc1 $f4, 0x10($s3) +/* 05CCA4 8005C0A4 C66A0014 */ lwc1 $f10, 0x14($s3) +/* 05CCA8 8005C0A8 461A9180 */ add.s $f6, $f18, $f26 +/* 05CCAC 8005C0AC 46182200 */ add.s $f8, $f4, $f24 +/* 05CCB0 8005C0B0 E666000C */ swc1 $f6, 0xc($s3) +/* 05CCB4 8005C0B4 461C5480 */ add.s $f18, $f10, $f28 +/* 05CCB8 8005C0B8 E6680010 */ swc1 $f8, 0x10($s3) +/* 05CCBC 8005C0BC E6720014 */ swc1 $f18, 0x14($s3) +.L8005C0C0: +/* 05CCC0 8005C0C0 C7A60090 */ lwc1 $f6, 0x90($sp) +/* 05CCC4 8005C0C4 44814800 */ mtc1 $at, $f9 +/* 05CCC8 8005C0C8 44804000 */ mtc1 $zero, $f8 +/* 05CCCC 8005C0CC 46003121 */ cvt.d.s $f4, $f6 +/* 05CCD0 8005C0D0 4628203C */ c.lt.d $f4, $f8 +/* 05CCD4 8005C0D4 02602025 */ move $a0, $s3 +/* 05CCD8 8005C0D8 45000009 */ bc1f .L8005C100 +/* 05CCDC 8005C0DC 00000000 */ nop +/* 05CCE0 8005C0E0 461ED283 */ div.s $f10, $f26, $f30 +/* 05CCE4 8005C0E4 3C01BF80 */ li $at, 0xBF800000 # -1.000000 +/* 05CCE8 8005C0E8 44819000 */ mtc1 $at, $f18 +/* 05CCEC 8005C0EC 00000000 */ nop +/* 05CCF0 8005C0F0 E6720020 */ swc1 $f18, 0x20($s3) +/* 05CCF4 8005C0F4 461EE183 */ div.s $f6, $f28, $f30 +/* 05CCF8 8005C0F8 E66A001C */ swc1 $f10, 0x1c($s3) +/* 05CCFC 8005C0FC E6660024 */ swc1 $f6, 0x24($s3) +.L8005C100: +/* 05CD00 8005C100 8FA60130 */ lw $a2, 0x130($sp) +/* 05CD04 8005C104 0C010B48 */ jal func_80042D20 +/* 05CD08 8005C108 02202825 */ move $a1, $s1 +/* 05CD0C 8005C10C 8FA60130 */ lw $a2, 0x130($sp) +/* 05CD10 8005C110 02602025 */ move $a0, $s3 +/* 05CD14 8005C114 0C0157B0 */ jal func_80055EC0 +/* 05CD18 8005C118 02202825 */ move $a1, $s1 +/* 05CD1C 8005C11C A22001E5 */ sb $zero, 0x1e5($s1) +/* 05CD20 8005C120 C664000C */ lwc1 $f4, 0xc($s3) +/* 05CD24 8005C124 8E6F004C */ lw $t7, 0x4c($s3) +/* 05CD28 8005C128 44809000 */ mtc1 $zero, $f18 +/* 05CD2C 8005C12C E5E40004 */ swc1 $f4, 4($t7) +/* 05CD30 8005C130 C6680010 */ lwc1 $f8, 0x10($s3) +/* 05CD34 8005C134 8E78004C */ lw $t8, 0x4c($s3) +/* 05CD38 8005C138 44803000 */ mtc1 $zero, $f6 +/* 05CD3C 8005C13C E7080008 */ swc1 $f8, 8($t8) +/* 05CD40 8005C140 C66A0014 */ lwc1 $f10, 0x14($s3) +/* 05CD44 8005C144 8E6A004C */ lw $t2, 0x4c($s3) +/* 05CD48 8005C148 44802000 */ mtc1 $zero, $f4 +/* 05CD4C 8005C14C E54A000C */ swc1 $f10, 0xc($t2) +/* 05CD50 8005C150 44804000 */ mtc1 $zero, $f8 +/* 05CD54 8005C154 A22001E6 */ sb $zero, 0x1e6($s1) +/* 05CD58 8005C158 A62001A2 */ sh $zero, 0x1a2($s1) +/* 05CD5C 8005C15C A62001A6 */ sh $zero, 0x1a6($s1) +/* 05CD60 8005C160 A22001D2 */ sb $zero, 0x1d2($s1) +/* 05CD64 8005C164 E6320078 */ swc1 $f18, 0x78($s1) +/* 05CD68 8005C168 E626007C */ swc1 $f6, 0x7c($s1) +/* 05CD6C 8005C16C E6240080 */ swc1 $f4, 0x80($s1) +/* 05CD70 8005C170 C66A000C */ lwc1 $f10, 0xc($s3) +/* 05CD74 8005C174 E6680020 */ swc1 $f8, 0x20($s3) +/* 05CD78 8005C178 E62A00D8 */ swc1 $f10, 0xd8($s1) +/* 05CD7C 8005C17C C6720010 */ lwc1 $f18, 0x10($s3) +/* 05CD80 8005C180 02602025 */ move $a0, $s3 +/* 05CD84 8005C184 E63200DC */ swc1 $f18, 0xdc($s1) +/* 05CD88 8005C188 C6660014 */ lwc1 $f6, 0x14($s3) +/* 05CD8C 8005C18C 00000000 */ nop +/* 05CD90 8005C190 E62600E0 */ swc1 $f6, 0xe0($s1) +/* 05CD94 8005C194 C664000C */ lwc1 $f4, 0xc($s3) +/* 05CD98 8005C198 00000000 */ nop +/* 05CD9C 8005C19C E62400E4 */ swc1 $f4, 0xe4($s1) +/* 05CDA0 8005C1A0 C6680010 */ lwc1 $f8, 0x10($s3) +/* 05CDA4 8005C1A4 00000000 */ nop +/* 05CDA8 8005C1A8 E62800E8 */ swc1 $f8, 0xe8($s1) +/* 05CDAC 8005C1AC C66A0014 */ lwc1 $f10, 0x14($s3) +/* 05CDB0 8005C1B0 00000000 */ nop +/* 05CDB4 8005C1B4 E62A00EC */ swc1 $f10, 0xec($s1) +/* 05CDB8 8005C1B8 C672000C */ lwc1 $f18, 0xc($s3) +/* 05CDBC 8005C1BC 00000000 */ nop +/* 05CDC0 8005C1C0 E63200F0 */ swc1 $f18, 0xf0($s1) +/* 05CDC4 8005C1C4 C6660010 */ lwc1 $f6, 0x10($s3) +/* 05CDC8 8005C1C8 00000000 */ nop +/* 05CDCC 8005C1CC E62600F4 */ swc1 $f6, 0xf4($s1) +/* 05CDD0 8005C1D0 C6640014 */ lwc1 $f4, 0x14($s3) +/* 05CDD4 8005C1D4 00000000 */ nop +/* 05CDD8 8005C1D8 E62400F8 */ swc1 $f4, 0xf8($s1) +/* 05CDDC 8005C1DC C668000C */ lwc1 $f8, 0xc($s3) +/* 05CDE0 8005C1E0 00000000 */ nop +/* 05CDE4 8005C1E4 E62800FC */ swc1 $f8, 0xfc($s1) +/* 05CDE8 8005C1E8 C66A0010 */ lwc1 $f10, 0x10($s3) +/* 05CDEC 8005C1EC 00000000 */ nop +/* 05CDF0 8005C1F0 E62A0100 */ swc1 $f10, 0x100($s1) +/* 05CDF4 8005C1F4 C6720014 */ lwc1 $f18, 0x14($s3) +/* 05CDF8 8005C1F8 00000000 */ nop +/* 05CDFC 8005C1FC E6320104 */ swc1 $f18, 0x104($s1) +/* 05CE00 8005C200 AE600074 */ sw $zero, 0x74($s3) +/* 05CE04 8005C204 8FA50130 */ lw $a1, 0x130($sp) +/* 05CE08 8005C208 0C02BDC5 */ jal func_800AF714 +/* 05CE0C 8005C20C 00000000 */ nop +.L8005C210: +/* 05CE10 8005C210 8FBF0054 */ lw $ra, 0x54($sp) +/* 05CE14 8005C214 C7B50010 */ lwc1 $f21, 0x10($sp) +/* 05CE18 8005C218 C7B40014 */ lwc1 $f20, 0x14($sp) +/* 05CE1C 8005C21C C7B70018 */ lwc1 $f23, 0x18($sp) +/* 05CE20 8005C220 C7B6001C */ lwc1 $f22, 0x1c($sp) +/* 05CE24 8005C224 C7B90020 */ lwc1 $f25, 0x20($sp) +/* 05CE28 8005C228 C7B80024 */ lwc1 $f24, 0x24($sp) +/* 05CE2C 8005C22C C7BB0028 */ lwc1 $f27, 0x28($sp) +/* 05CE30 8005C230 C7BA002C */ lwc1 $f26, 0x2c($sp) +/* 05CE34 8005C234 C7BD0030 */ lwc1 $f29, 0x30($sp) +/* 05CE38 8005C238 C7BC0034 */ lwc1 $f28, 0x34($sp) +/* 05CE3C 8005C23C C7BF0038 */ lwc1 $f31, 0x38($sp) +/* 05CE40 8005C240 C7BE003C */ lwc1 $f30, 0x3c($sp) +/* 05CE44 8005C244 8FB00044 */ lw $s0, 0x44($sp) +/* 05CE48 8005C248 8FB10048 */ lw $s1, 0x48($sp) +/* 05CE4C 8005C24C 8FB2004C */ lw $s2, 0x4c($sp) +/* 05CE50 8005C250 8FB30050 */ lw $s3, 0x50($sp) +/* 05CE54 8005C254 03E00008 */ jr $ra +/* 05CE58 8005C258 27BD0128 */ addiu $sp, $sp, 0x128 + diff --git a/asm/non_matchings/unknown_043920/func_8005C25C.s b/asm/non_matchings/unknown_043920/func_8005C25C.s new file mode 100644 index 00000000..4c81a6c7 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8005C25C.s @@ -0,0 +1,7 @@ +glabel func_8005C25C +/* 05CE5C 8005C25C 3C01800E */ lui $at, %hi(D_800E6A00) # $at, 0x800e +/* 05CE60 8005C260 C4246A00 */ lwc1 $f4, %lo(D_800E6A00)($at) +/* 05CE64 8005C264 3C01800E */ lui $at, 0x800e +/* 05CE68 8005C268 03E00008 */ jr $ra +/* 05CE6C 8005C26C E424CB9C */ swc1 $f4, -0x3464($at) + diff --git a/asm/non_matchings/unknown_043920/func_8005C270.s b/asm/non_matchings/unknown_043920/func_8005C270.s new file mode 100644 index 00000000..44937859 --- /dev/null +++ b/asm/non_matchings/unknown_043920/func_8005C270.s @@ -0,0 +1,37 @@ +glabel func_8005C270 +/* 05CE70 8005C270 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 05CE74 8005C274 AFBF0014 */ sw $ra, 0x14($sp) +/* 05CE78 8005C278 0C006E99 */ jal func_8001BA64 +/* 05CE7C 8005C27C AFA40018 */ sw $a0, 0x18($sp) +/* 05CE80 8005C280 8FA40018 */ lw $a0, 0x18($sp) +/* 05CE84 8005C284 00000000 */ nop +/* 05CE88 8005C288 808E0192 */ lb $t6, 0x192($a0) +/* 05CE8C 8005C28C 00000000 */ nop +/* 05CE90 8005C290 25CFFFFF */ addiu $t7, $t6, -1 +/* 05CE94 8005C294 A08F0192 */ sb $t7, 0x192($a0) +/* 05CE98 8005C298 80830192 */ lb $v1, 0x192($a0) +/* 05CE9C 8005C29C 00000000 */ nop +/* 05CEA0 8005C2A0 04610007 */ bgez $v1, .L8005C2C0 +/* 05CEA4 8005C2A4 00000000 */ nop +/* 05CEA8 8005C2A8 80850193 */ lb $a1, 0x193($a0) +/* 05CEAC 8005C2AC 0062C021 */ addu $t8, $v1, $v0 +/* 05CEB0 8005C2B0 18A00003 */ blez $a1, .L8005C2C0 +/* 05CEB4 8005C2B4 A0980192 */ sb $t8, 0x192($a0) +/* 05CEB8 8005C2B8 24B9FFFF */ addiu $t9, $a1, -1 +/* 05CEBC 8005C2BC A0990193 */ sb $t9, 0x193($a0) +.L8005C2C0: +/* 05CEC0 8005C2C0 84820190 */ lh $v0, 0x190($a0) +/* 05CEC4 8005C2C4 00000000 */ nop +/* 05CEC8 8005C2C8 28418301 */ slti $at, $v0, -0x7cff +/* 05CECC 8005C2CC 14200002 */ bnez $at, .L8005C2D8 +/* 05CED0 8005C2D0 2448FFFF */ addiu $t0, $v0, -1 +/* 05CED4 8005C2D4 A4880190 */ sh $t0, 0x190($a0) +.L8005C2D8: +/* 05CED8 8005C2D8 8FBF0014 */ lw $ra, 0x14($sp) +/* 05CEDC 8005C2DC 27BD0018 */ addiu $sp, $sp, 0x18 +/* 05CEE0 8005C2E0 03E00008 */ jr $ra +/* 05CEE4 8005C2E4 00000000 */ nop + +/* 05CEE8 8005C2E8 00000000 */ nop +/* 05CEEC 8005C2EC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_05CEF0/func_8005C2F0.s b/asm/non_matchings/unknown_05CEF0/func_8005C2F0.s new file mode 100644 index 00000000..8def8dab --- /dev/null +++ b/asm/non_matchings/unknown_05CEF0/func_8005C2F0.s @@ -0,0 +1,32 @@ +glabel func_8005C2F0 +/* 05CEF0 8005C2F0 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 05CEF4 8005C2F4 AFBF0014 */ sw $ra, 0x14($sp) +/* 05CEF8 8005C2F8 8C8F004C */ lw $t7, 0x4c($a0) +/* 05CEFC 8005C2FC 240E0005 */ li $t6, 5 +/* 05CF00 8005C300 A5EE0014 */ sh $t6, 0x14($t7) +/* 05CF04 8005C304 8C98004C */ lw $t8, 0x4c($a0) +/* 05CF08 8005C308 2419001E */ li $t9, 30 +/* 05CF0C 8005C30C A3000011 */ sb $zero, 0x11($t8) +/* 05CF10 8005C310 8C88004C */ lw $t0, 0x4c($a0) +/* 05CF14 8005C314 44802000 */ mtc1 $zero, $f4 +/* 05CF18 8005C318 A1190010 */ sb $t9, 0x10($t0) +/* 05CF1C 8005C31C 8C89004C */ lw $t1, 0x4c($a0) +/* 05CF20 8005C320 3C018012 */ lui $at, %hi(D_8011D5C0) # $at, 0x8012 +/* 05CF24 8005C324 A1200012 */ sb $zero, 0x12($t1) +/* 05CF28 8005C328 E4A4000C */ swc1 $f4, 0xc($a1) +/* 05CF2C 8005C32C C4860010 */ lwc1 $f6, 0x10($a0) +/* 05CF30 8005C330 00000000 */ nop +/* 05CF34 8005C334 E426D5C0 */ swc1 $f6, %lo(D_8011D5C0)($at) +/* 05CF38 8005C338 8CAA0118 */ lw $t2, 0x118($a1) +/* 05CF3C 8005C33C 00000000 */ nop +/* 05CF40 8005C340 11400004 */ beqz $t2, .L8005C354 +/* 05CF44 8005C344 8FBF0014 */ lw $ra, 0x14($sp) +/* 05CF48 8005C348 0C001AB2 */ jal func_80006AC8 +/* 05CF4C 8005C34C 00000000 */ nop +/* 05CF50 8005C350 8FBF0014 */ lw $ra, 0x14($sp) +.L8005C354: +/* 05CF54 8005C354 3C018012 */ lui $at, %hi(D_8011D5C4) # $at, 0x8012 +/* 05CF58 8005C358 A020D5C4 */ sb $zero, %lo(D_8011D5C4)($at) +/* 05CF5C 8005C35C 03E00008 */ jr $ra +/* 05CF60 8005C360 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/unknown_05CEF0.s b/asm/non_matchings/unknown_05CEF0/func_8005C364.s old mode 100755 new mode 100644 similarity index 51% rename from asm/unknown_05CEF0.s rename to asm/non_matchings/unknown_05CEF0/func_8005C364.s index 3ee2c3ac..dc1dccc5 --- a/asm/unknown_05CEF0.s +++ b/asm/non_matchings/unknown_05CEF0/func_8005C364.s @@ -1,43 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_8005C2F0 -/* 05CEF0 8005C2F0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 05CEF4 8005C2F4 AFBF0014 */ sw $ra, 0x14($sp) -/* 05CEF8 8005C2F8 8C8F004C */ lw $t7, 0x4c($a0) -/* 05CEFC 8005C2FC 240E0005 */ li $t6, 5 -/* 05CF00 8005C300 A5EE0014 */ sh $t6, 0x14($t7) -/* 05CF04 8005C304 8C98004C */ lw $t8, 0x4c($a0) -/* 05CF08 8005C308 2419001E */ li $t9, 30 -/* 05CF0C 8005C30C A3000011 */ sb $zero, 0x11($t8) -/* 05CF10 8005C310 8C88004C */ lw $t0, 0x4c($a0) -/* 05CF14 8005C314 44802000 */ mtc1 $zero, $f4 -/* 05CF18 8005C318 A1190010 */ sb $t9, 0x10($t0) -/* 05CF1C 8005C31C 8C89004C */ lw $t1, 0x4c($a0) -/* 05CF20 8005C320 3C018012 */ lui $at, %hi(D_8011D5C0) # $at, 0x8012 -/* 05CF24 8005C324 A1200012 */ sb $zero, 0x12($t1) -/* 05CF28 8005C328 E4A4000C */ swc1 $f4, 0xc($a1) -/* 05CF2C 8005C32C C4860010 */ lwc1 $f6, 0x10($a0) -/* 05CF30 8005C330 00000000 */ nop -/* 05CF34 8005C334 E426D5C0 */ swc1 $f6, %lo(D_8011D5C0)($at) -/* 05CF38 8005C338 8CAA0118 */ lw $t2, 0x118($a1) -/* 05CF3C 8005C33C 00000000 */ nop -/* 05CF40 8005C340 11400004 */ beqz $t2, .L8005C354 -/* 05CF44 8005C344 8FBF0014 */ lw $ra, 0x14($sp) -/* 05CF48 8005C348 0C001AB2 */ jal func_80006AC8 -/* 05CF4C 8005C34C 00000000 */ nop -/* 05CF50 8005C350 8FBF0014 */ lw $ra, 0x14($sp) -.L8005C354: -/* 05CF54 8005C354 3C018012 */ lui $at, %hi(D_8011D5C4) # $at, 0x8012 -/* 05CF58 8005C358 A020D5C4 */ sb $zero, %lo(D_8011D5C4)($at) -/* 05CF5C 8005C35C 03E00008 */ jr $ra -/* 05CF60 8005C360 27BD0018 */ addiu $sp, $sp, 0x18 - glabel func_8005C364 /* 05CF64 8005C364 27BDFFA8 */ addiu $sp, $sp, -0x58 /* 05CF68 8005C368 AFA40058 */ sw $a0, 0x58($sp) @@ -525,449 +485,3 @@ glabel func_8005C364 /* 05D670 8005CA70 03E00008 */ jr $ra /* 05D674 8005CA74 27BD0058 */ addiu $sp, $sp, 0x58 -glabel func_8005CA78 -/* 05D678 8005CA78 3C018012 */ lui $at, 0x8012 -/* 05D67C 8005CA7C 03E00008 */ jr $ra -/* 05D680 8005CA80 AC24D5C8 */ sw $a0, -0x2a38($at) - -glabel func_8005CA84 -/* 05D684 8005CA84 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 05D688 8005CA88 AFBF001C */ sw $ra, 0x1c($sp) -/* 05D68C 8005CA8C E7AC0020 */ swc1 $f12, 0x20($sp) -/* 05D690 8005CA90 E7AE0024 */ swc1 $f14, 0x24($sp) -/* 05D694 8005CA94 AFA60028 */ sw $a2, 0x28($sp) -/* 05D698 8005CA98 AFA7002C */ sw $a3, 0x2c($sp) -/* 05D69C 8005CA9C 00002025 */ move $a0, $zero -/* 05D6A0 8005CAA0 0C01BE53 */ jal func_8006F94C -/* 05D6A4 8005CAA4 24050001 */ li $a1, 1 -/* 05D6A8 8005CAA8 8FA8002C */ lw $t0, 0x2c($sp) -/* 05D6AC 8005CAAC 00021E00 */ sll $v1, $v0, 0x18 -/* 05D6B0 8005CAB0 00037603 */ sra $t6, $v1, 0x18 -/* 05D6B4 8005CAB4 15000002 */ bnez $t0, .L8005CAC0 -/* 05D6B8 8005CAB8 01C01825 */ move $v1, $t6 -/* 05D6BC 8005CABC 00001825 */ move $v1, $zero -.L8005CAC0: -/* 05D6C0 8005CAC0 3C0F8012 */ lui $t7, %hi(D_8011D5C8) # $t7, 0x8012 -/* 05D6C4 8005CAC4 8DEFD5C8 */ lw $t7, %lo(D_8011D5C8)($t7) -/* 05D6C8 8005CAC8 01034021 */ addu $t0, $t0, $v1 -/* 05D6CC 8005CACC 0008C040 */ sll $t8, $t0, 1 -/* 05D6D0 8005CAD0 01F8C821 */ addu $t9, $t7, $t8 -/* 05D6D4 8005CAD4 97240000 */ lhu $a0, ($t9) -/* 05D6D8 8005CAD8 8FA50020 */ lw $a1, 0x20($sp) -/* 05D6DC 8005CADC 8FA60024 */ lw $a2, 0x24($sp) -/* 05D6E0 8005CAE0 8FA70028 */ lw $a3, 0x28($sp) -/* 05D6E4 8005CAE4 24090004 */ li $t1, 4 -/* 05D6E8 8005CAE8 AFA90010 */ sw $t1, 0x10($sp) -/* 05D6EC 8005CAEC 0C002556 */ jal func_80009558 -/* 05D6F0 8005CAF0 AFA00014 */ sw $zero, 0x14($sp) -/* 05D6F4 8005CAF4 8FBF001C */ lw $ra, 0x1c($sp) -/* 05D6F8 8005CAF8 27BD0020 */ addiu $sp, $sp, 0x20 -/* 05D6FC 8005CAFC 03E00008 */ jr $ra -/* 05D700 8005CB00 00000000 */ nop - -glabel func_8005CB04 -/* 05D704 8005CB04 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 05D708 8005CB08 AFBF0014 */ sw $ra, 0x14($sp) -/* 05D70C 8005CB0C 00803025 */ move $a2, $a0 -/* 05D710 8005CB10 AFA60018 */ sw $a2, 0x18($sp) -/* 05D714 8005CB14 00002025 */ move $a0, $zero -/* 05D718 8005CB18 0C01BE53 */ jal func_8006F94C -/* 05D71C 8005CB1C 24050001 */ li $a1, 1 -/* 05D720 8005CB20 8FA60018 */ lw $a2, 0x18($sp) -/* 05D724 8005CB24 00021E00 */ sll $v1, $v0, 0x18 -/* 05D728 8005CB28 00037603 */ sra $t6, $v1, 0x18 -/* 05D72C 8005CB2C 14C00002 */ bnez $a2, .L8005CB38 -/* 05D730 8005CB30 01C01825 */ move $v1, $t6 -/* 05D734 8005CB34 00001825 */ move $v1, $zero -.L8005CB38: -/* 05D738 8005CB38 3C0F8012 */ lui $t7, %hi(D_8011D5C8) # $t7, 0x8012 -/* 05D73C 8005CB3C 8DEFD5C8 */ lw $t7, %lo(D_8011D5C8)($t7) -/* 05D740 8005CB40 00C33021 */ addu $a2, $a2, $v1 -/* 05D744 8005CB44 0006C040 */ sll $t8, $a2, 1 -/* 05D748 8005CB48 01F8C821 */ addu $t9, $t7, $t8 -/* 05D74C 8005CB4C 97240000 */ lhu $a0, ($t9) -/* 05D750 8005CB50 0C000741 */ jal func_80001D04 -/* 05D754 8005CB54 00002825 */ move $a1, $zero -/* 05D758 8005CB58 8FBF0014 */ lw $ra, 0x14($sp) -/* 05D75C 8005CB5C 27BD0018 */ addiu $sp, $sp, 0x18 -/* 05D760 8005CB60 03E00008 */ jr $ra -/* 05D764 8005CB64 00000000 */ nop - -glabel func_8005CB68 -/* 05D768 8005CB68 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 05D76C 8005CB6C AFBF001C */ sw $ra, 0x1c($sp) -/* 05D770 8005CB70 AFB00018 */ sw $s0, 0x18($sp) -/* 05D774 8005CB74 AFA40048 */ sw $a0, 0x48($sp) -/* 05D778 8005CB78 AFA5004C */ sw $a1, 0x4c($sp) -/* 05D77C 8005CB7C 80AF0000 */ lb $t7, ($a1) -/* 05D780 8005CB80 0C01BAA4 */ jal func_8006EA90 -/* 05D784 8005CB84 A3AF0043 */ sb $t7, 0x43($sp) -/* 05D788 8005CB88 90580048 */ lbu $t8, 0x48($v0) -/* 05D78C 8005CB8C 24190001 */ li $t9, 1 -/* 05D790 8005CB90 03194804 */ sllv $t1, $t9, $t8 -/* 05D794 8005CB94 AFA90038 */ sw $t1, 0x38($sp) -/* 05D798 8005CB98 AFA20044 */ sw $v0, 0x44($sp) -/* 05D79C 8005CB9C 0C0078A7 */ jal func_8001E29C -/* 05D7A0 8005CBA0 24040044 */ li $a0, 68 -/* 05D7A4 8005CBA4 804C0005 */ lb $t4, 5($v0) -/* 05D7A8 8005CBA8 24040043 */ li $a0, 67 -/* 05D7AC 8005CBAC AFAC002C */ sw $t4, 0x2c($sp) -/* 05D7B0 8005CBB0 804D0006 */ lb $t5, 6($v0) -/* 05D7B4 8005CBB4 00000000 */ nop -/* 05D7B8 8005CBB8 AFAD0028 */ sw $t5, 0x28($sp) -/* 05D7BC 8005CBBC 804E0007 */ lb $t6, 7($v0) -/* 05D7C0 8005CBC0 0C0078A7 */ jal func_8001E29C -/* 05D7C4 8005CBC4 AFAE0024 */ sw $t6, 0x24($sp) -/* 05D7C8 8005CBC8 8FAA0044 */ lw $t2, 0x44($sp) -/* 05D7CC 8005CBCC 804F0000 */ lb $t7, ($v0) -/* 05D7D0 8005CBD0 91440049 */ lbu $a0, 0x49($t2) -/* 05D7D4 8005CBD4 8FA90038 */ lw $t1, 0x38($sp) -/* 05D7D8 8005CBD8 00402825 */ move $a1, $v0 -/* 05D7DC 8005CBDC 108F0006 */ beq $a0, $t7, .L8005CBF8 -/* 05D7E0 8005CBE0 00008025 */ move $s0, $zero -/* 05D7E4 8005CBE4 00A01825 */ move $v1, $a1 -.L8005CBE8: -/* 05D7E8 8005CBE8 80790002 */ lb $t9, 2($v1) -/* 05D7EC 8005CBEC 26100002 */ addiu $s0, $s0, 2 -/* 05D7F0 8005CBF0 1499FFFD */ bne $a0, $t9, .L8005CBE8 -/* 05D7F4 8005CBF4 24630002 */ addiu $v1, $v1, 2 -.L8005CBF8: -/* 05D7F8 8005CBF8 8FAC0048 */ lw $t4, 0x48($sp) -/* 05D7FC 8005CBFC 83AE0043 */ lb $t6, 0x43($sp) -/* 05D800 8005CC00 858D01AC */ lh $t5, 0x1ac($t4) -/* 05D804 8005CC04 0202C021 */ addu $t8, $s0, $v0 -/* 05D808 8005CC08 24030001 */ li $v1, 1 -/* 05D80C 8005CC0C 83100001 */ lb $s0, 1($t8) -/* 05D810 8005CC10 15C30105 */ bne $t6, $v1, .L8005D028 -/* 05D814 8005CC14 AFAD0034 */ sw $t5, 0x34($sp) -/* 05D818 8005CC18 15A30009 */ bne $t5, $v1, .L8005CC40 -/* 05D81C 8005CC1C 2404003E */ li $a0, 62 -/* 05D820 8005CC20 2404003D */ li $a0, 61 -/* 05D824 8005CC24 AFA90038 */ sw $t1, 0x38($sp) -/* 05D828 8005CC28 0C0002CD */ jal func_80000B34 -/* 05D82C 8005CC2C AFAA0044 */ sw $t2, 0x44($sp) -/* 05D830 8005CC30 8FA90038 */ lw $t1, 0x38($sp) -/* 05D834 8005CC34 8FAA0044 */ lw $t2, 0x44($sp) -/* 05D838 8005CC38 10000008 */ b .L8005CC5C -/* 05D83C 8005CC3C 91430048 */ lbu $v1, 0x48($t2) -.L8005CC40: -/* 05D840 8005CC40 AFA90038 */ sw $t1, 0x38($sp) -/* 05D844 8005CC44 0C0002CD */ jal func_80000B34 -/* 05D848 8005CC48 AFAA0044 */ sw $t2, 0x44($sp) -/* 05D84C 8005CC4C 8FA90038 */ lw $t1, 0x38($sp) -/* 05D850 8005CC50 8FAA0044 */ lw $t2, 0x44($sp) -/* 05D854 8005CC54 00000000 */ nop -/* 05D858 8005CC58 91430048 */ lbu $v1, 0x48($t2) -.L8005CC5C: -/* 05D85C 8005CC5C 8FA80034 */ lw $t0, 0x34($sp) -/* 05D860 8005CC60 10600002 */ beqz $v1, .L8005CC6C -/* 05D864 8005CC64 24010005 */ li $at, 5 -/* 05D868 8005CC68 14610063 */ bne $v1, $at, .L8005CDF8 -.L8005CC6C: -/* 05D86C 8005CC6C 240B0001 */ li $t3, 1 -/* 05D870 8005CC70 150B000E */ bne $t0, $t3, .L8005CCAC -/* 05D874 8005CC74 00000000 */ nop -/* 05D878 8005CC78 954F000C */ lhu $t7, 0xc($t2) -/* 05D87C 8005CC7C 914C0049 */ lbu $t4, 0x49($t2) -/* 05D880 8005CC80 8D580004 */ lw $t8, 4($t2) -/* 05D884 8005CC84 01E9C825 */ or $t9, $t7, $t1 -/* 05D888 8005CC88 000C7080 */ sll $t6, $t4, 2 -/* 05D88C 8005CC8C A559000C */ sh $t9, 0xc($t2) -/* 05D890 8005CC90 030E1021 */ addu $v0, $t8, $t6 -/* 05D894 8005CC94 8C4D0000 */ lw $t5, ($v0) -/* 05D898 8005CC98 00000000 */ nop -/* 05D89C 8005CC9C 35AF0002 */ ori $t7, $t5, 2 -/* 05D8A0 8005CCA0 AC4F0000 */ sw $t7, ($v0) -/* 05D8A4 8005CCA4 91430048 */ lbu $v1, 0x48($t2) -/* 05D8A8 8005CCA8 00000000 */ nop -.L8005CCAC: -/* 05D8AC 8005CCAC 1460001F */ bnez $v1, .L8005CD2C -/* 05D8B0 8005CCB0 00000000 */ nop -/* 05D8B4 8005CCB4 150B0012 */ bne $t0, $t3, .L8005CD00 -/* 05D8B8 8005CCB8 2404FFF6 */ li $a0, -10 -/* 05D8BC 8005CCBC 2404FFFE */ li $a0, -2 -/* 05D8C0 8005CCC0 00002825 */ move $a1, $zero -/* 05D8C4 8005CCC4 00003025 */ move $a2, $zero -/* 05D8C8 8005CCC8 0C01B06B */ jal func_8006C1AC -/* 05D8CC 8005CCCC 00003825 */ move $a3, $zero -/* 05D8D0 8005CCD0 8FA4002C */ lw $a0, 0x2c($sp) -/* 05D8D4 8005CCD4 00002825 */ move $a1, $zero -/* 05D8D8 8005CCD8 2406FFFF */ li $a2, -1 -/* 05D8DC 8005CCDC 0C01B06B */ jal func_8006C1AC -/* 05D8E0 8005CCE0 00003825 */ move $a3, $zero -/* 05D8E4 8005CCE4 02002025 */ move $a0, $s0 -/* 05D8E8 8005CCE8 00002825 */ move $a1, $zero -/* 05D8EC 8005CCEC 2406FFFF */ li $a2, -1 -/* 05D8F0 8005CCF0 0C01B06B */ jal func_8006C1AC -/* 05D8F4 8005CCF4 24070001 */ li $a3, 1 -/* 05D8F8 8005CCF8 10000031 */ b .L8005CDC0 -/* 05D8FC 8005CCFC 8FB90034 */ lw $t9, 0x34($sp) -.L8005CD00: -/* 05D900 8005CD00 00002825 */ move $a1, $zero -/* 05D904 8005CD04 00003025 */ move $a2, $zero -/* 05D908 8005CD08 0C01B06B */ jal func_8006C1AC -/* 05D90C 8005CD0C 00003825 */ move $a3, $zero -/* 05D910 8005CD10 02002025 */ move $a0, $s0 -/* 05D914 8005CD14 00002825 */ move $a1, $zero -/* 05D918 8005CD18 2406FFFF */ li $a2, -1 -/* 05D91C 8005CD1C 0C01B06B */ jal func_8006C1AC -/* 05D920 8005CD20 24070002 */ li $a3, 2 -/* 05D924 8005CD24 10000026 */ b .L8005CDC0 -/* 05D928 8005CD28 8FB90034 */ lw $t9, 0x34($sp) -.L8005CD2C: -/* 05D92C 8005CD2C 150B001A */ bne $t0, $t3, .L8005CD98 -/* 05D930 8005CD30 2404FFF6 */ li $a0, -10 -/* 05D934 8005CD34 24040000 */ li $a0, 0 -/* 05D938 8005CD38 0C027A9E */ jal func_8009EA78 -/* 05D93C 8005CD3C 24050001 */ li $a1, 1 -/* 05D940 8005CD40 2404FFFE */ li $a0, -2 -/* 05D944 8005CD44 00002825 */ move $a1, $zero -/* 05D948 8005CD48 00003025 */ move $a2, $zero -/* 05D94C 8005CD4C 0C01B06B */ jal func_8006C1AC -/* 05D950 8005CD50 00003825 */ move $a3, $zero -/* 05D954 8005CD54 8FA40024 */ lw $a0, 0x24($sp) -/* 05D958 8005CD58 00002825 */ move $a1, $zero -/* 05D95C 8005CD5C 2406FFFF */ li $a2, -1 -/* 05D960 8005CD60 0C01B06B */ jal func_8006C1AC -/* 05D964 8005CD64 00003825 */ move $a3, $zero -/* 05D968 8005CD68 8FA40028 */ lw $a0, 0x28($sp) -/* 05D96C 8005CD6C 00002825 */ move $a1, $zero -/* 05D970 8005CD70 2406FFFF */ li $a2, -1 -/* 05D974 8005CD74 0C01B06B */ jal func_8006C1AC -/* 05D978 8005CD78 00003825 */ move $a3, $zero -/* 05D97C 8005CD7C 02002025 */ move $a0, $s0 -/* 05D980 8005CD80 00002825 */ move $a1, $zero -/* 05D984 8005CD84 2406FFFF */ li $a2, -1 -/* 05D988 8005CD88 0C01B06B */ jal func_8006C1AC -/* 05D98C 8005CD8C 24070001 */ li $a3, 1 -/* 05D990 8005CD90 1000000B */ b .L8005CDC0 -/* 05D994 8005CD94 8FB90034 */ lw $t9, 0x34($sp) -.L8005CD98: -/* 05D998 8005CD98 00002825 */ move $a1, $zero -/* 05D99C 8005CD9C 00003025 */ move $a2, $zero -/* 05D9A0 8005CDA0 0C01B06B */ jal func_8006C1AC -/* 05D9A4 8005CDA4 00003825 */ move $a3, $zero -/* 05D9A8 8005CDA8 02002025 */ move $a0, $s0 -/* 05D9AC 8005CDAC 00002825 */ move $a1, $zero -/* 05D9B0 8005CDB0 2406FFFF */ li $a2, -1 -/* 05D9B4 8005CDB4 0C01B06B */ jal func_8006C1AC -/* 05D9B8 8005CDB8 24070002 */ li $a3, 2 -/* 05D9BC 8005CDBC 8FB90034 */ lw $t9, 0x34($sp) -.L8005CDC0: -/* 05D9C0 8005CDC0 24010001 */ li $at, 1 -/* 05D9C4 8005CDC4 17210005 */ bne $t9, $at, .L8005CDDC -/* 05D9C8 8005CDC8 00000000 */ nop -/* 05D9CC 8005CDCC 0C01BC50 */ jal func_8006F140 -/* 05D9D0 8005CDD0 24040004 */ li $a0, 4 -/* 05D9D4 8005CDD4 10000004 */ b .L8005CDE8 -/* 05D9D8 8005CDD8 83A20043 */ lb $v0, 0x43($sp) -.L8005CDDC: -/* 05D9DC 8005CDDC 0C01BC50 */ jal func_8006F140 -/* 05D9E0 8005CDE0 24040003 */ li $a0, 3 -/* 05D9E4 8005CDE4 83A20043 */ lb $v0, 0x43($sp) -.L8005CDE8: -/* 05D9E8 8005CDE8 8FAE004C */ lw $t6, 0x4c($sp) -/* 05D9EC 8005CDEC 24580001 */ addiu $t8, $v0, 1 -/* 05D9F0 8005CDF0 10000091 */ b .L8005D038 -/* 05D9F4 8005CDF4 A1D80000 */ sb $t8, ($t6) -.L8005CDF8: -/* 05D9F8 8005CDF8 914F0049 */ lbu $t7, 0x49($t2) -/* 05D9FC 8005CDFC 8D4D0004 */ lw $t5, 4($t2) -/* 05DA00 8005CE00 000FC880 */ sll $t9, $t7, 2 -/* 05DA04 8005CE04 01B91021 */ addu $v0, $t5, $t9 -/* 05DA08 8005CE08 8C430000 */ lw $v1, ($v0) -/* 05DA0C 8005CE0C 8FB80034 */ lw $t8, 0x34($sp) -/* 05DA10 8005CE10 306C0002 */ andi $t4, $v1, 2 -/* 05DA14 8005CE14 11800019 */ beqz $t4, .L8005CE7C -/* 05DA18 8005CE18 24010001 */ li $at, 1 -/* 05DA1C 8005CE1C 8FB80034 */ lw $t8, 0x34($sp) -/* 05DA20 8005CE20 24010001 */ li $at, 1 -/* 05DA24 8005CE24 17010007 */ bne $t8, $at, .L8005CE44 -/* 05DA28 8005CE28 00000000 */ nop -/* 05DA2C 8005CE2C 0C01BC50 */ jal func_8006F140 -/* 05DA30 8005CE30 24040004 */ li $a0, 4 -/* 05DA34 8005CE34 0C00384A */ jal func_8000E128 -/* 05DA38 8005CE38 00000000 */ nop -/* 05DA3C 8005CE3C 1000000A */ b .L8005CE68 -/* 05DA40 8005CE40 83AE0043 */ lb $t6, 0x43($sp) -.L8005CE44: -/* 05DA44 8005CE44 0C01BC50 */ jal func_8006F140 -/* 05DA48 8005CE48 24040003 */ li $a0, 3 -/* 05DA4C 8005CE4C 0C027B20 */ jal func_8009EC80 -/* 05DA50 8005CE50 00000000 */ nop -/* 05DA54 8005CE54 10400004 */ beqz $v0, .L8005CE68 -/* 05DA58 8005CE58 83AE0043 */ lb $t6, 0x43($sp) -/* 05DA5C 8005CE5C 0C01BCE6 */ jal func_8006F398 -/* 05DA60 8005CE60 00000000 */ nop -/* 05DA64 8005CE64 83AE0043 */ lb $t6, 0x43($sp) -.L8005CE68: -/* 05DA68 8005CE68 8FAC004C */ lw $t4, 0x4c($sp) -/* 05DA6C 8005CE6C 25D90001 */ addiu $t9, $t6, 1 -/* 05DA70 8005CE70 A3B90043 */ sb $t9, 0x43($sp) -/* 05DA74 8005CE74 10000070 */ b .L8005D038 -/* 05DA78 8005CE78 A1990000 */ sb $t9, ($t4) -.L8005CE7C: -/* 05DA7C 8005CE7C 17010058 */ bne $t8, $at, .L8005CFE0 -/* 05DA80 8005CE80 2404FFF6 */ li $a0, -10 -/* 05DA84 8005CE84 346E0002 */ ori $t6, $v1, 2 -/* 05DA88 8005CE88 AC4E0000 */ sw $t6, ($v0) -/* 05DA8C 8005CE8C 9548000C */ lhu $t0, 0xc($t2) -/* 05DA90 8005CE90 0009C980 */ sll $t9, $t1, 6 -/* 05DA94 8005CE94 01097824 */ and $t7, $t0, $t1 -/* 05DA98 8005CE98 15E0000F */ bnez $t7, .L8005CED8 -/* 05DA9C 8005CE9C 01196024 */ and $t4, $t0, $t9 -/* 05DAA0 8005CEA0 01096825 */ or $t5, $t0, $t1 -/* 05DAA4 8005CEA4 A54D000C */ sh $t5, 0xc($t2) -/* 05DAA8 8005CEA8 2404FFFF */ li $a0, -1 -/* 05DAAC 8005CEAC 00002825 */ move $a1, $zero -/* 05DAB0 8005CEB0 00003025 */ move $a2, $zero -/* 05DAB4 8005CEB4 0C01B06B */ jal func_8006C1AC -/* 05DAB8 8005CEB8 00003825 */ move $a3, $zero -/* 05DABC 8005CEBC 02002025 */ move $a0, $s0 -/* 05DAC0 8005CEC0 24050004 */ li $a1, 4 -/* 05DAC4 8005CEC4 2406FFFF */ li $a2, -1 -/* 05DAC8 8005CEC8 0C01B06B */ jal func_8006C1AC -/* 05DACC 8005CECC 24070004 */ li $a3, 4 -/* 05DAD0 8005CED0 1000003D */ b .L8005CFC8 -/* 05DAD4 8005CED4 00000000 */ nop -.L8005CED8: -/* 05DAD8 8005CED8 15800032 */ bnez $t4, .L8005CFA4 -/* 05DADC 8005CEDC 2404FFFF */ li $a0, -1 -/* 05DAE0 8005CEE0 91430048 */ lbu $v1, 0x48($t2) -/* 05DAE4 8005CEE4 0119C025 */ or $t8, $t0, $t9 -/* 05DAE8 8005CEE8 A558000C */ sh $t8, 0xc($t2) -/* 05DAEC 8005CEEC 1860000C */ blez $v1, .L8005CF20 -/* 05DAF0 8005CEF0 00004825 */ move $t1, $zero -/* 05DAF4 8005CEF4 28610005 */ slti $at, $v1, 5 -/* 05DAF8 8005CEF8 10200009 */ beqz $at, .L8005CF20 -/* 05DAFC 8005CEFC 00000000 */ nop -/* 05DB00 8005CF00 91490017 */ lbu $t1, 0x17($t2) -/* 05DB04 8005CF04 00000000 */ nop -/* 05DB08 8005CF08 25290001 */ addiu $t1, $t1, 1 -/* 05DB0C 8005CF0C 29210005 */ slti $at, $t1, 5 -/* 05DB10 8005CF10 14200002 */ bnez $at, .L8005CF1C -/* 05DB14 8005CF14 00000000 */ nop -/* 05DB18 8005CF18 24090004 */ li $t1, 4 -.L8005CF1C: -/* 05DB1C 8005CF1C A1490017 */ sb $t1, 0x17($t2) -.L8005CF20: -/* 05DB20 8005CF20 11200015 */ beqz $t1, .L8005CF78 -/* 05DB24 8005CF24 2404FFFF */ li $a0, -1 -/* 05DB28 8005CF28 2404FFFF */ li $a0, -1 -/* 05DB2C 8005CF2C 00002825 */ move $a1, $zero -/* 05DB30 8005CF30 00003025 */ move $a2, $zero -/* 05DB34 8005CF34 00003825 */ move $a3, $zero -/* 05DB38 8005CF38 0C01B06B */ jal func_8006C1AC -/* 05DB3C 8005CF3C AFAA0044 */ sw $t2, 0x44($sp) -/* 05DB40 8005CF40 8FAA0044 */ lw $t2, 0x44($sp) -/* 05DB44 8005CF44 2404002B */ li $a0, 43 -/* 05DB48 8005CF48 91470017 */ lbu $a3, 0x17($t2) -/* 05DB4C 8005CF4C 00002825 */ move $a1, $zero -/* 05DB50 8005CF50 2406FFFF */ li $a2, -1 -/* 05DB54 8005CF54 0C01B06B */ jal func_8006C1AC -/* 05DB58 8005CF58 24E7FFFF */ addiu $a3, $a3, -1 -/* 05DB5C 8005CF5C 02002025 */ move $a0, $s0 -/* 05DB60 8005CF60 24050006 */ li $a1, 6 -/* 05DB64 8005CF64 2406FFFF */ li $a2, -1 -/* 05DB68 8005CF68 0C01B06B */ jal func_8006C1AC -/* 05DB6C 8005CF6C 24070006 */ li $a3, 6 -/* 05DB70 8005CF70 10000015 */ b .L8005CFC8 -/* 05DB74 8005CF74 00000000 */ nop -.L8005CF78: -/* 05DB78 8005CF78 00002825 */ move $a1, $zero -/* 05DB7C 8005CF7C 00003025 */ move $a2, $zero -/* 05DB80 8005CF80 0C01B06B */ jal func_8006C1AC -/* 05DB84 8005CF84 00003825 */ move $a3, $zero -/* 05DB88 8005CF88 02002025 */ move $a0, $s0 -/* 05DB8C 8005CF8C 24050004 */ li $a1, 4 -/* 05DB90 8005CF90 2406FFFF */ li $a2, -1 -/* 05DB94 8005CF94 0C01B06B */ jal func_8006C1AC -/* 05DB98 8005CF98 24070004 */ li $a3, 4 -/* 05DB9C 8005CF9C 1000000A */ b .L8005CFC8 -/* 05DBA0 8005CFA0 00000000 */ nop -.L8005CFA4: -/* 05DBA4 8005CFA4 00002825 */ move $a1, $zero -/* 05DBA8 8005CFA8 00003025 */ move $a2, $zero -/* 05DBAC 8005CFAC 0C01B06B */ jal func_8006C1AC -/* 05DBB0 8005CFB0 00003825 */ move $a3, $zero -/* 05DBB4 8005CFB4 02002025 */ move $a0, $s0 -/* 05DBB8 8005CFB8 24050004 */ li $a1, 4 -/* 05DBBC 8005CFBC 2406FFFF */ li $a2, -1 -/* 05DBC0 8005CFC0 0C01B06B */ jal func_8006C1AC -/* 05DBC4 8005CFC4 24070004 */ li $a3, 4 -.L8005CFC8: -/* 05DBC8 8005CFC8 0C01BC50 */ jal func_8006F140 -/* 05DBCC 8005CFCC 24040004 */ li $a0, 4 -/* 05DBD0 8005CFD0 0C00384A */ jal func_8000E128 -/* 05DBD4 8005CFD4 00000000 */ nop -/* 05DBD8 8005CFD8 1000000D */ b .L8005D010 -/* 05DBDC 8005CFDC 83AE0043 */ lb $t6, 0x43($sp) -.L8005CFE0: -/* 05DBE0 8005CFE0 00002825 */ move $a1, $zero -/* 05DBE4 8005CFE4 00003025 */ move $a2, $zero -/* 05DBE8 8005CFE8 0C01B06B */ jal func_8006C1AC -/* 05DBEC 8005CFEC 00003825 */ move $a3, $zero -/* 05DBF0 8005CFF0 02002025 */ move $a0, $s0 -/* 05DBF4 8005CFF4 24050005 */ li $a1, 5 -/* 05DBF8 8005CFF8 2406FFFF */ li $a2, -1 -/* 05DBFC 8005CFFC 0C01B06B */ jal func_8006C1AC -/* 05DC00 8005D000 24070005 */ li $a3, 5 -/* 05DC04 8005D004 0C01BC50 */ jal func_8006F140 -/* 05DC08 8005D008 24040003 */ li $a0, 3 -/* 05DC0C 8005D00C 83AE0043 */ lb $t6, 0x43($sp) -.L8005D010: -/* 05DC10 8005D010 00000000 */ nop -/* 05DC14 8005D014 25CF0001 */ addiu $t7, $t6, 1 -/* 05DC18 8005D018 0C027068 */ jal func_8009C1A0 -/* 05DC1C 8005D01C A3AF0043 */ sb $t7, 0x43($sp) -/* 05DC20 8005D020 0C01BB12 */ jal func_8006EC48 -/* 05DC24 8005D024 00402025 */ move $a0, $v0 -.L8005D028: -/* 05DC28 8005D028 83AD0043 */ lb $t5, 0x43($sp) -/* 05DC2C 8005D02C 8FB9004C */ lw $t9, 0x4c($sp) -/* 05DC30 8005D030 00000000 */ nop -/* 05DC34 8005D034 A32D0000 */ sb $t5, ($t9) -.L8005D038: -/* 05DC38 8005D038 8FBF001C */ lw $ra, 0x1c($sp) -/* 05DC3C 8005D03C 8FB00018 */ lw $s0, 0x18($sp) -/* 05DC40 8005D040 03E00008 */ jr $ra -/* 05DC44 8005D044 27BD0048 */ addiu $sp, $sp, 0x48 - -glabel func_8005D048 -/* 05DC48 8005D048 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 05DC4C 8005D04C AFBF0014 */ sw $ra, 0x14($sp) -/* 05DC50 8005D050 AFA40020 */ sw $a0, 0x20($sp) -/* 05DC54 8005D054 AFA50024 */ sw $a1, 0x24($sp) -/* 05DC58 8005D058 AFA60028 */ sw $a2, 0x28($sp) -/* 05DC5C 8005D05C 0C006EB2 */ jal func_8001BAC8 -/* 05DC60 8005D060 00002025 */ move $a0, $zero -/* 05DC64 8005D064 8FAF0024 */ lw $t7, 0x24($sp) -/* 05DC68 8005D068 AFA2001C */ sw $v0, 0x1c($sp) -/* 05DC6C 8005D06C 240E00FF */ li $t6, 255 -/* 05DC70 8005D070 0C0044E7 */ jal func_8001139C -/* 05DC74 8005D074 A1EE01F7 */ sb $t6, 0x1f7($t7) -/* 05DC78 8005D078 14400010 */ bnez $v0, .L8005D0BC -/* 05DC7C 8005D07C 8FBF0014 */ lw $ra, 0x14($sp) -/* 05DC80 8005D080 8FB90028 */ lw $t9, 0x28($sp) -/* 05DC84 8005D084 8FB80020 */ lw $t8, 0x20($sp) -/* 05DC88 8005D088 44993000 */ mtc1 $t9, $f6 -/* 05DC8C 8005D08C 8FA8001C */ lw $t0, 0x1c($sp) -/* 05DC90 8005D090 46803220 */ cvt.s.w $f8, $f6 -/* 05DC94 8005D094 C7040030 */ lwc1 $f4, 0x30($t8) -/* 05DC98 8005D098 C5100030 */ lwc1 $f16, 0x30($t0) -/* 05DC9C 8005D09C 46082280 */ add.s $f10, $f4, $f8 -/* 05DCA0 8005D0A0 8FAA0024 */ lw $t2, 0x24($sp) -/* 05DCA4 8005D0A4 4610503C */ c.lt.s $f10, $f16 -/* 05DCA8 8005D0A8 00000000 */ nop -/* 05DCAC 8005D0AC 45000002 */ bc1f .L8005D0B8 -/* 05DCB0 8005D0B0 24090040 */ li $t1, 64 -/* 05DCB4 8005D0B4 A14901F7 */ sb $t1, 0x1f7($t2) -.L8005D0B8: -/* 05DCB8 8005D0B8 8FBF0014 */ lw $ra, 0x14($sp) -.L8005D0BC: -/* 05DCBC 8005D0BC 27BD0020 */ addiu $sp, $sp, 0x20 -/* 05DCC0 8005D0C0 03E00008 */ jr $ra -/* 05DCC4 8005D0C4 00000000 */ nop - -/* 05DCC8 8005D0C8 00000000 */ nop -/* 05DCCC 8005D0CC 00000000 */ nop diff --git a/asm/non_matchings/unknown_05CEF0/func_8005CA78.s b/asm/non_matchings/unknown_05CEF0/func_8005CA78.s new file mode 100644 index 00000000..fe8e25ea --- /dev/null +++ b/asm/non_matchings/unknown_05CEF0/func_8005CA78.s @@ -0,0 +1,5 @@ +glabel func_8005CA78 +/* 05D678 8005CA78 3C018012 */ lui $at, 0x8012 +/* 05D67C 8005CA7C 03E00008 */ jr $ra +/* 05D680 8005CA80 AC24D5C8 */ sw $a0, -0x2a38($at) + diff --git a/asm/non_matchings/unknown_05CEF0/func_8005CA84.s b/asm/non_matchings/unknown_05CEF0/func_8005CA84.s new file mode 100644 index 00000000..a5efc383 --- /dev/null +++ b/asm/non_matchings/unknown_05CEF0/func_8005CA84.s @@ -0,0 +1,35 @@ +glabel func_8005CA84 +/* 05D684 8005CA84 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 05D688 8005CA88 AFBF001C */ sw $ra, 0x1c($sp) +/* 05D68C 8005CA8C E7AC0020 */ swc1 $f12, 0x20($sp) +/* 05D690 8005CA90 E7AE0024 */ swc1 $f14, 0x24($sp) +/* 05D694 8005CA94 AFA60028 */ sw $a2, 0x28($sp) +/* 05D698 8005CA98 AFA7002C */ sw $a3, 0x2c($sp) +/* 05D69C 8005CA9C 00002025 */ move $a0, $zero +/* 05D6A0 8005CAA0 0C01BE53 */ jal func_8006F94C +/* 05D6A4 8005CAA4 24050001 */ li $a1, 1 +/* 05D6A8 8005CAA8 8FA8002C */ lw $t0, 0x2c($sp) +/* 05D6AC 8005CAAC 00021E00 */ sll $v1, $v0, 0x18 +/* 05D6B0 8005CAB0 00037603 */ sra $t6, $v1, 0x18 +/* 05D6B4 8005CAB4 15000002 */ bnez $t0, .L8005CAC0 +/* 05D6B8 8005CAB8 01C01825 */ move $v1, $t6 +/* 05D6BC 8005CABC 00001825 */ move $v1, $zero +.L8005CAC0: +/* 05D6C0 8005CAC0 3C0F8012 */ lui $t7, %hi(D_8011D5C8) # $t7, 0x8012 +/* 05D6C4 8005CAC4 8DEFD5C8 */ lw $t7, %lo(D_8011D5C8)($t7) +/* 05D6C8 8005CAC8 01034021 */ addu $t0, $t0, $v1 +/* 05D6CC 8005CACC 0008C040 */ sll $t8, $t0, 1 +/* 05D6D0 8005CAD0 01F8C821 */ addu $t9, $t7, $t8 +/* 05D6D4 8005CAD4 97240000 */ lhu $a0, ($t9) +/* 05D6D8 8005CAD8 8FA50020 */ lw $a1, 0x20($sp) +/* 05D6DC 8005CADC 8FA60024 */ lw $a2, 0x24($sp) +/* 05D6E0 8005CAE0 8FA70028 */ lw $a3, 0x28($sp) +/* 05D6E4 8005CAE4 24090004 */ li $t1, 4 +/* 05D6E8 8005CAE8 AFA90010 */ sw $t1, 0x10($sp) +/* 05D6EC 8005CAEC 0C002556 */ jal func_80009558 +/* 05D6F0 8005CAF0 AFA00014 */ sw $zero, 0x14($sp) +/* 05D6F4 8005CAF4 8FBF001C */ lw $ra, 0x1c($sp) +/* 05D6F8 8005CAF8 27BD0020 */ addiu $sp, $sp, 0x20 +/* 05D6FC 8005CAFC 03E00008 */ jr $ra +/* 05D700 8005CB00 00000000 */ nop + diff --git a/asm/non_matchings/unknown_05CEF0/func_8005CB04.s b/asm/non_matchings/unknown_05CEF0/func_8005CB04.s new file mode 100644 index 00000000..3e085dfa --- /dev/null +++ b/asm/non_matchings/unknown_05CEF0/func_8005CB04.s @@ -0,0 +1,28 @@ +glabel func_8005CB04 +/* 05D704 8005CB04 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 05D708 8005CB08 AFBF0014 */ sw $ra, 0x14($sp) +/* 05D70C 8005CB0C 00803025 */ move $a2, $a0 +/* 05D710 8005CB10 AFA60018 */ sw $a2, 0x18($sp) +/* 05D714 8005CB14 00002025 */ move $a0, $zero +/* 05D718 8005CB18 0C01BE53 */ jal func_8006F94C +/* 05D71C 8005CB1C 24050001 */ li $a1, 1 +/* 05D720 8005CB20 8FA60018 */ lw $a2, 0x18($sp) +/* 05D724 8005CB24 00021E00 */ sll $v1, $v0, 0x18 +/* 05D728 8005CB28 00037603 */ sra $t6, $v1, 0x18 +/* 05D72C 8005CB2C 14C00002 */ bnez $a2, .L8005CB38 +/* 05D730 8005CB30 01C01825 */ move $v1, $t6 +/* 05D734 8005CB34 00001825 */ move $v1, $zero +.L8005CB38: +/* 05D738 8005CB38 3C0F8012 */ lui $t7, %hi(D_8011D5C8) # $t7, 0x8012 +/* 05D73C 8005CB3C 8DEFD5C8 */ lw $t7, %lo(D_8011D5C8)($t7) +/* 05D740 8005CB40 00C33021 */ addu $a2, $a2, $v1 +/* 05D744 8005CB44 0006C040 */ sll $t8, $a2, 1 +/* 05D748 8005CB48 01F8C821 */ addu $t9, $t7, $t8 +/* 05D74C 8005CB4C 97240000 */ lhu $a0, ($t9) +/* 05D750 8005CB50 0C000741 */ jal func_80001D04 +/* 05D754 8005CB54 00002825 */ move $a1, $zero +/* 05D758 8005CB58 8FBF0014 */ lw $ra, 0x14($sp) +/* 05D75C 8005CB5C 27BD0018 */ addiu $sp, $sp, 0x18 +/* 05D760 8005CB60 03E00008 */ jr $ra +/* 05D764 8005CB64 00000000 */ nop + diff --git a/asm/non_matchings/unknown_05CEF0/func_8005CB68.s b/asm/non_matchings/unknown_05CEF0/func_8005CB68.s new file mode 100644 index 00000000..84548474 --- /dev/null +++ b/asm/non_matchings/unknown_05CEF0/func_8005CB68.s @@ -0,0 +1,340 @@ +glabel func_8005CB68 +/* 05D768 8005CB68 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 05D76C 8005CB6C AFBF001C */ sw $ra, 0x1c($sp) +/* 05D770 8005CB70 AFB00018 */ sw $s0, 0x18($sp) +/* 05D774 8005CB74 AFA40048 */ sw $a0, 0x48($sp) +/* 05D778 8005CB78 AFA5004C */ sw $a1, 0x4c($sp) +/* 05D77C 8005CB7C 80AF0000 */ lb $t7, ($a1) +/* 05D780 8005CB80 0C01BAA4 */ jal func_8006EA90 +/* 05D784 8005CB84 A3AF0043 */ sb $t7, 0x43($sp) +/* 05D788 8005CB88 90580048 */ lbu $t8, 0x48($v0) +/* 05D78C 8005CB8C 24190001 */ li $t9, 1 +/* 05D790 8005CB90 03194804 */ sllv $t1, $t9, $t8 +/* 05D794 8005CB94 AFA90038 */ sw $t1, 0x38($sp) +/* 05D798 8005CB98 AFA20044 */ sw $v0, 0x44($sp) +/* 05D79C 8005CB9C 0C0078A7 */ jal func_8001E29C +/* 05D7A0 8005CBA0 24040044 */ li $a0, 68 +/* 05D7A4 8005CBA4 804C0005 */ lb $t4, 5($v0) +/* 05D7A8 8005CBA8 24040043 */ li $a0, 67 +/* 05D7AC 8005CBAC AFAC002C */ sw $t4, 0x2c($sp) +/* 05D7B0 8005CBB0 804D0006 */ lb $t5, 6($v0) +/* 05D7B4 8005CBB4 00000000 */ nop +/* 05D7B8 8005CBB8 AFAD0028 */ sw $t5, 0x28($sp) +/* 05D7BC 8005CBBC 804E0007 */ lb $t6, 7($v0) +/* 05D7C0 8005CBC0 0C0078A7 */ jal func_8001E29C +/* 05D7C4 8005CBC4 AFAE0024 */ sw $t6, 0x24($sp) +/* 05D7C8 8005CBC8 8FAA0044 */ lw $t2, 0x44($sp) +/* 05D7CC 8005CBCC 804F0000 */ lb $t7, ($v0) +/* 05D7D0 8005CBD0 91440049 */ lbu $a0, 0x49($t2) +/* 05D7D4 8005CBD4 8FA90038 */ lw $t1, 0x38($sp) +/* 05D7D8 8005CBD8 00402825 */ move $a1, $v0 +/* 05D7DC 8005CBDC 108F0006 */ beq $a0, $t7, .L8005CBF8 +/* 05D7E0 8005CBE0 00008025 */ move $s0, $zero +/* 05D7E4 8005CBE4 00A01825 */ move $v1, $a1 +.L8005CBE8: +/* 05D7E8 8005CBE8 80790002 */ lb $t9, 2($v1) +/* 05D7EC 8005CBEC 26100002 */ addiu $s0, $s0, 2 +/* 05D7F0 8005CBF0 1499FFFD */ bne $a0, $t9, .L8005CBE8 +/* 05D7F4 8005CBF4 24630002 */ addiu $v1, $v1, 2 +.L8005CBF8: +/* 05D7F8 8005CBF8 8FAC0048 */ lw $t4, 0x48($sp) +/* 05D7FC 8005CBFC 83AE0043 */ lb $t6, 0x43($sp) +/* 05D800 8005CC00 858D01AC */ lh $t5, 0x1ac($t4) +/* 05D804 8005CC04 0202C021 */ addu $t8, $s0, $v0 +/* 05D808 8005CC08 24030001 */ li $v1, 1 +/* 05D80C 8005CC0C 83100001 */ lb $s0, 1($t8) +/* 05D810 8005CC10 15C30105 */ bne $t6, $v1, .L8005D028 +/* 05D814 8005CC14 AFAD0034 */ sw $t5, 0x34($sp) +/* 05D818 8005CC18 15A30009 */ bne $t5, $v1, .L8005CC40 +/* 05D81C 8005CC1C 2404003E */ li $a0, 62 +/* 05D820 8005CC20 2404003D */ li $a0, 61 +/* 05D824 8005CC24 AFA90038 */ sw $t1, 0x38($sp) +/* 05D828 8005CC28 0C0002CD */ jal func_80000B34 +/* 05D82C 8005CC2C AFAA0044 */ sw $t2, 0x44($sp) +/* 05D830 8005CC30 8FA90038 */ lw $t1, 0x38($sp) +/* 05D834 8005CC34 8FAA0044 */ lw $t2, 0x44($sp) +/* 05D838 8005CC38 10000008 */ b .L8005CC5C +/* 05D83C 8005CC3C 91430048 */ lbu $v1, 0x48($t2) +.L8005CC40: +/* 05D840 8005CC40 AFA90038 */ sw $t1, 0x38($sp) +/* 05D844 8005CC44 0C0002CD */ jal func_80000B34 +/* 05D848 8005CC48 AFAA0044 */ sw $t2, 0x44($sp) +/* 05D84C 8005CC4C 8FA90038 */ lw $t1, 0x38($sp) +/* 05D850 8005CC50 8FAA0044 */ lw $t2, 0x44($sp) +/* 05D854 8005CC54 00000000 */ nop +/* 05D858 8005CC58 91430048 */ lbu $v1, 0x48($t2) +.L8005CC5C: +/* 05D85C 8005CC5C 8FA80034 */ lw $t0, 0x34($sp) +/* 05D860 8005CC60 10600002 */ beqz $v1, .L8005CC6C +/* 05D864 8005CC64 24010005 */ li $at, 5 +/* 05D868 8005CC68 14610063 */ bne $v1, $at, .L8005CDF8 +.L8005CC6C: +/* 05D86C 8005CC6C 240B0001 */ li $t3, 1 +/* 05D870 8005CC70 150B000E */ bne $t0, $t3, .L8005CCAC +/* 05D874 8005CC74 00000000 */ nop +/* 05D878 8005CC78 954F000C */ lhu $t7, 0xc($t2) +/* 05D87C 8005CC7C 914C0049 */ lbu $t4, 0x49($t2) +/* 05D880 8005CC80 8D580004 */ lw $t8, 4($t2) +/* 05D884 8005CC84 01E9C825 */ or $t9, $t7, $t1 +/* 05D888 8005CC88 000C7080 */ sll $t6, $t4, 2 +/* 05D88C 8005CC8C A559000C */ sh $t9, 0xc($t2) +/* 05D890 8005CC90 030E1021 */ addu $v0, $t8, $t6 +/* 05D894 8005CC94 8C4D0000 */ lw $t5, ($v0) +/* 05D898 8005CC98 00000000 */ nop +/* 05D89C 8005CC9C 35AF0002 */ ori $t7, $t5, 2 +/* 05D8A0 8005CCA0 AC4F0000 */ sw $t7, ($v0) +/* 05D8A4 8005CCA4 91430048 */ lbu $v1, 0x48($t2) +/* 05D8A8 8005CCA8 00000000 */ nop +.L8005CCAC: +/* 05D8AC 8005CCAC 1460001F */ bnez $v1, .L8005CD2C +/* 05D8B0 8005CCB0 00000000 */ nop +/* 05D8B4 8005CCB4 150B0012 */ bne $t0, $t3, .L8005CD00 +/* 05D8B8 8005CCB8 2404FFF6 */ li $a0, -10 +/* 05D8BC 8005CCBC 2404FFFE */ li $a0, -2 +/* 05D8C0 8005CCC0 00002825 */ move $a1, $zero +/* 05D8C4 8005CCC4 00003025 */ move $a2, $zero +/* 05D8C8 8005CCC8 0C01B06B */ jal func_8006C1AC +/* 05D8CC 8005CCCC 00003825 */ move $a3, $zero +/* 05D8D0 8005CCD0 8FA4002C */ lw $a0, 0x2c($sp) +/* 05D8D4 8005CCD4 00002825 */ move $a1, $zero +/* 05D8D8 8005CCD8 2406FFFF */ li $a2, -1 +/* 05D8DC 8005CCDC 0C01B06B */ jal func_8006C1AC +/* 05D8E0 8005CCE0 00003825 */ move $a3, $zero +/* 05D8E4 8005CCE4 02002025 */ move $a0, $s0 +/* 05D8E8 8005CCE8 00002825 */ move $a1, $zero +/* 05D8EC 8005CCEC 2406FFFF */ li $a2, -1 +/* 05D8F0 8005CCF0 0C01B06B */ jal func_8006C1AC +/* 05D8F4 8005CCF4 24070001 */ li $a3, 1 +/* 05D8F8 8005CCF8 10000031 */ b .L8005CDC0 +/* 05D8FC 8005CCFC 8FB90034 */ lw $t9, 0x34($sp) +.L8005CD00: +/* 05D900 8005CD00 00002825 */ move $a1, $zero +/* 05D904 8005CD04 00003025 */ move $a2, $zero +/* 05D908 8005CD08 0C01B06B */ jal func_8006C1AC +/* 05D90C 8005CD0C 00003825 */ move $a3, $zero +/* 05D910 8005CD10 02002025 */ move $a0, $s0 +/* 05D914 8005CD14 00002825 */ move $a1, $zero +/* 05D918 8005CD18 2406FFFF */ li $a2, -1 +/* 05D91C 8005CD1C 0C01B06B */ jal func_8006C1AC +/* 05D920 8005CD20 24070002 */ li $a3, 2 +/* 05D924 8005CD24 10000026 */ b .L8005CDC0 +/* 05D928 8005CD28 8FB90034 */ lw $t9, 0x34($sp) +.L8005CD2C: +/* 05D92C 8005CD2C 150B001A */ bne $t0, $t3, .L8005CD98 +/* 05D930 8005CD30 2404FFF6 */ li $a0, -10 +/* 05D934 8005CD34 24040000 */ li $a0, 0 +/* 05D938 8005CD38 0C027A9E */ jal func_8009EA78 +/* 05D93C 8005CD3C 24050001 */ li $a1, 1 +/* 05D940 8005CD40 2404FFFE */ li $a0, -2 +/* 05D944 8005CD44 00002825 */ move $a1, $zero +/* 05D948 8005CD48 00003025 */ move $a2, $zero +/* 05D94C 8005CD4C 0C01B06B */ jal func_8006C1AC +/* 05D950 8005CD50 00003825 */ move $a3, $zero +/* 05D954 8005CD54 8FA40024 */ lw $a0, 0x24($sp) +/* 05D958 8005CD58 00002825 */ move $a1, $zero +/* 05D95C 8005CD5C 2406FFFF */ li $a2, -1 +/* 05D960 8005CD60 0C01B06B */ jal func_8006C1AC +/* 05D964 8005CD64 00003825 */ move $a3, $zero +/* 05D968 8005CD68 8FA40028 */ lw $a0, 0x28($sp) +/* 05D96C 8005CD6C 00002825 */ move $a1, $zero +/* 05D970 8005CD70 2406FFFF */ li $a2, -1 +/* 05D974 8005CD74 0C01B06B */ jal func_8006C1AC +/* 05D978 8005CD78 00003825 */ move $a3, $zero +/* 05D97C 8005CD7C 02002025 */ move $a0, $s0 +/* 05D980 8005CD80 00002825 */ move $a1, $zero +/* 05D984 8005CD84 2406FFFF */ li $a2, -1 +/* 05D988 8005CD88 0C01B06B */ jal func_8006C1AC +/* 05D98C 8005CD8C 24070001 */ li $a3, 1 +/* 05D990 8005CD90 1000000B */ b .L8005CDC0 +/* 05D994 8005CD94 8FB90034 */ lw $t9, 0x34($sp) +.L8005CD98: +/* 05D998 8005CD98 00002825 */ move $a1, $zero +/* 05D99C 8005CD9C 00003025 */ move $a2, $zero +/* 05D9A0 8005CDA0 0C01B06B */ jal func_8006C1AC +/* 05D9A4 8005CDA4 00003825 */ move $a3, $zero +/* 05D9A8 8005CDA8 02002025 */ move $a0, $s0 +/* 05D9AC 8005CDAC 00002825 */ move $a1, $zero +/* 05D9B0 8005CDB0 2406FFFF */ li $a2, -1 +/* 05D9B4 8005CDB4 0C01B06B */ jal func_8006C1AC +/* 05D9B8 8005CDB8 24070002 */ li $a3, 2 +/* 05D9BC 8005CDBC 8FB90034 */ lw $t9, 0x34($sp) +.L8005CDC0: +/* 05D9C0 8005CDC0 24010001 */ li $at, 1 +/* 05D9C4 8005CDC4 17210005 */ bne $t9, $at, .L8005CDDC +/* 05D9C8 8005CDC8 00000000 */ nop +/* 05D9CC 8005CDCC 0C01BC50 */ jal func_8006F140 +/* 05D9D0 8005CDD0 24040004 */ li $a0, 4 +/* 05D9D4 8005CDD4 10000004 */ b .L8005CDE8 +/* 05D9D8 8005CDD8 83A20043 */ lb $v0, 0x43($sp) +.L8005CDDC: +/* 05D9DC 8005CDDC 0C01BC50 */ jal func_8006F140 +/* 05D9E0 8005CDE0 24040003 */ li $a0, 3 +/* 05D9E4 8005CDE4 83A20043 */ lb $v0, 0x43($sp) +.L8005CDE8: +/* 05D9E8 8005CDE8 8FAE004C */ lw $t6, 0x4c($sp) +/* 05D9EC 8005CDEC 24580001 */ addiu $t8, $v0, 1 +/* 05D9F0 8005CDF0 10000091 */ b .L8005D038 +/* 05D9F4 8005CDF4 A1D80000 */ sb $t8, ($t6) +.L8005CDF8: +/* 05D9F8 8005CDF8 914F0049 */ lbu $t7, 0x49($t2) +/* 05D9FC 8005CDFC 8D4D0004 */ lw $t5, 4($t2) +/* 05DA00 8005CE00 000FC880 */ sll $t9, $t7, 2 +/* 05DA04 8005CE04 01B91021 */ addu $v0, $t5, $t9 +/* 05DA08 8005CE08 8C430000 */ lw $v1, ($v0) +/* 05DA0C 8005CE0C 8FB80034 */ lw $t8, 0x34($sp) +/* 05DA10 8005CE10 306C0002 */ andi $t4, $v1, 2 +/* 05DA14 8005CE14 11800019 */ beqz $t4, .L8005CE7C +/* 05DA18 8005CE18 24010001 */ li $at, 1 +/* 05DA1C 8005CE1C 8FB80034 */ lw $t8, 0x34($sp) +/* 05DA20 8005CE20 24010001 */ li $at, 1 +/* 05DA24 8005CE24 17010007 */ bne $t8, $at, .L8005CE44 +/* 05DA28 8005CE28 00000000 */ nop +/* 05DA2C 8005CE2C 0C01BC50 */ jal func_8006F140 +/* 05DA30 8005CE30 24040004 */ li $a0, 4 +/* 05DA34 8005CE34 0C00384A */ jal func_8000E128 +/* 05DA38 8005CE38 00000000 */ nop +/* 05DA3C 8005CE3C 1000000A */ b .L8005CE68 +/* 05DA40 8005CE40 83AE0043 */ lb $t6, 0x43($sp) +.L8005CE44: +/* 05DA44 8005CE44 0C01BC50 */ jal func_8006F140 +/* 05DA48 8005CE48 24040003 */ li $a0, 3 +/* 05DA4C 8005CE4C 0C027B20 */ jal func_8009EC80 +/* 05DA50 8005CE50 00000000 */ nop +/* 05DA54 8005CE54 10400004 */ beqz $v0, .L8005CE68 +/* 05DA58 8005CE58 83AE0043 */ lb $t6, 0x43($sp) +/* 05DA5C 8005CE5C 0C01BCE6 */ jal func_8006F398 +/* 05DA60 8005CE60 00000000 */ nop +/* 05DA64 8005CE64 83AE0043 */ lb $t6, 0x43($sp) +.L8005CE68: +/* 05DA68 8005CE68 8FAC004C */ lw $t4, 0x4c($sp) +/* 05DA6C 8005CE6C 25D90001 */ addiu $t9, $t6, 1 +/* 05DA70 8005CE70 A3B90043 */ sb $t9, 0x43($sp) +/* 05DA74 8005CE74 10000070 */ b .L8005D038 +/* 05DA78 8005CE78 A1990000 */ sb $t9, ($t4) +.L8005CE7C: +/* 05DA7C 8005CE7C 17010058 */ bne $t8, $at, .L8005CFE0 +/* 05DA80 8005CE80 2404FFF6 */ li $a0, -10 +/* 05DA84 8005CE84 346E0002 */ ori $t6, $v1, 2 +/* 05DA88 8005CE88 AC4E0000 */ sw $t6, ($v0) +/* 05DA8C 8005CE8C 9548000C */ lhu $t0, 0xc($t2) +/* 05DA90 8005CE90 0009C980 */ sll $t9, $t1, 6 +/* 05DA94 8005CE94 01097824 */ and $t7, $t0, $t1 +/* 05DA98 8005CE98 15E0000F */ bnez $t7, .L8005CED8 +/* 05DA9C 8005CE9C 01196024 */ and $t4, $t0, $t9 +/* 05DAA0 8005CEA0 01096825 */ or $t5, $t0, $t1 +/* 05DAA4 8005CEA4 A54D000C */ sh $t5, 0xc($t2) +/* 05DAA8 8005CEA8 2404FFFF */ li $a0, -1 +/* 05DAAC 8005CEAC 00002825 */ move $a1, $zero +/* 05DAB0 8005CEB0 00003025 */ move $a2, $zero +/* 05DAB4 8005CEB4 0C01B06B */ jal func_8006C1AC +/* 05DAB8 8005CEB8 00003825 */ move $a3, $zero +/* 05DABC 8005CEBC 02002025 */ move $a0, $s0 +/* 05DAC0 8005CEC0 24050004 */ li $a1, 4 +/* 05DAC4 8005CEC4 2406FFFF */ li $a2, -1 +/* 05DAC8 8005CEC8 0C01B06B */ jal func_8006C1AC +/* 05DACC 8005CECC 24070004 */ li $a3, 4 +/* 05DAD0 8005CED0 1000003D */ b .L8005CFC8 +/* 05DAD4 8005CED4 00000000 */ nop +.L8005CED8: +/* 05DAD8 8005CED8 15800032 */ bnez $t4, .L8005CFA4 +/* 05DADC 8005CEDC 2404FFFF */ li $a0, -1 +/* 05DAE0 8005CEE0 91430048 */ lbu $v1, 0x48($t2) +/* 05DAE4 8005CEE4 0119C025 */ or $t8, $t0, $t9 +/* 05DAE8 8005CEE8 A558000C */ sh $t8, 0xc($t2) +/* 05DAEC 8005CEEC 1860000C */ blez $v1, .L8005CF20 +/* 05DAF0 8005CEF0 00004825 */ move $t1, $zero +/* 05DAF4 8005CEF4 28610005 */ slti $at, $v1, 5 +/* 05DAF8 8005CEF8 10200009 */ beqz $at, .L8005CF20 +/* 05DAFC 8005CEFC 00000000 */ nop +/* 05DB00 8005CF00 91490017 */ lbu $t1, 0x17($t2) +/* 05DB04 8005CF04 00000000 */ nop +/* 05DB08 8005CF08 25290001 */ addiu $t1, $t1, 1 +/* 05DB0C 8005CF0C 29210005 */ slti $at, $t1, 5 +/* 05DB10 8005CF10 14200002 */ bnez $at, .L8005CF1C +/* 05DB14 8005CF14 00000000 */ nop +/* 05DB18 8005CF18 24090004 */ li $t1, 4 +.L8005CF1C: +/* 05DB1C 8005CF1C A1490017 */ sb $t1, 0x17($t2) +.L8005CF20: +/* 05DB20 8005CF20 11200015 */ beqz $t1, .L8005CF78 +/* 05DB24 8005CF24 2404FFFF */ li $a0, -1 +/* 05DB28 8005CF28 2404FFFF */ li $a0, -1 +/* 05DB2C 8005CF2C 00002825 */ move $a1, $zero +/* 05DB30 8005CF30 00003025 */ move $a2, $zero +/* 05DB34 8005CF34 00003825 */ move $a3, $zero +/* 05DB38 8005CF38 0C01B06B */ jal func_8006C1AC +/* 05DB3C 8005CF3C AFAA0044 */ sw $t2, 0x44($sp) +/* 05DB40 8005CF40 8FAA0044 */ lw $t2, 0x44($sp) +/* 05DB44 8005CF44 2404002B */ li $a0, 43 +/* 05DB48 8005CF48 91470017 */ lbu $a3, 0x17($t2) +/* 05DB4C 8005CF4C 00002825 */ move $a1, $zero +/* 05DB50 8005CF50 2406FFFF */ li $a2, -1 +/* 05DB54 8005CF54 0C01B06B */ jal func_8006C1AC +/* 05DB58 8005CF58 24E7FFFF */ addiu $a3, $a3, -1 +/* 05DB5C 8005CF5C 02002025 */ move $a0, $s0 +/* 05DB60 8005CF60 24050006 */ li $a1, 6 +/* 05DB64 8005CF64 2406FFFF */ li $a2, -1 +/* 05DB68 8005CF68 0C01B06B */ jal func_8006C1AC +/* 05DB6C 8005CF6C 24070006 */ li $a3, 6 +/* 05DB70 8005CF70 10000015 */ b .L8005CFC8 +/* 05DB74 8005CF74 00000000 */ nop +.L8005CF78: +/* 05DB78 8005CF78 00002825 */ move $a1, $zero +/* 05DB7C 8005CF7C 00003025 */ move $a2, $zero +/* 05DB80 8005CF80 0C01B06B */ jal func_8006C1AC +/* 05DB84 8005CF84 00003825 */ move $a3, $zero +/* 05DB88 8005CF88 02002025 */ move $a0, $s0 +/* 05DB8C 8005CF8C 24050004 */ li $a1, 4 +/* 05DB90 8005CF90 2406FFFF */ li $a2, -1 +/* 05DB94 8005CF94 0C01B06B */ jal func_8006C1AC +/* 05DB98 8005CF98 24070004 */ li $a3, 4 +/* 05DB9C 8005CF9C 1000000A */ b .L8005CFC8 +/* 05DBA0 8005CFA0 00000000 */ nop +.L8005CFA4: +/* 05DBA4 8005CFA4 00002825 */ move $a1, $zero +/* 05DBA8 8005CFA8 00003025 */ move $a2, $zero +/* 05DBAC 8005CFAC 0C01B06B */ jal func_8006C1AC +/* 05DBB0 8005CFB0 00003825 */ move $a3, $zero +/* 05DBB4 8005CFB4 02002025 */ move $a0, $s0 +/* 05DBB8 8005CFB8 24050004 */ li $a1, 4 +/* 05DBBC 8005CFBC 2406FFFF */ li $a2, -1 +/* 05DBC0 8005CFC0 0C01B06B */ jal func_8006C1AC +/* 05DBC4 8005CFC4 24070004 */ li $a3, 4 +.L8005CFC8: +/* 05DBC8 8005CFC8 0C01BC50 */ jal func_8006F140 +/* 05DBCC 8005CFCC 24040004 */ li $a0, 4 +/* 05DBD0 8005CFD0 0C00384A */ jal func_8000E128 +/* 05DBD4 8005CFD4 00000000 */ nop +/* 05DBD8 8005CFD8 1000000D */ b .L8005D010 +/* 05DBDC 8005CFDC 83AE0043 */ lb $t6, 0x43($sp) +.L8005CFE0: +/* 05DBE0 8005CFE0 00002825 */ move $a1, $zero +/* 05DBE4 8005CFE4 00003025 */ move $a2, $zero +/* 05DBE8 8005CFE8 0C01B06B */ jal func_8006C1AC +/* 05DBEC 8005CFEC 00003825 */ move $a3, $zero +/* 05DBF0 8005CFF0 02002025 */ move $a0, $s0 +/* 05DBF4 8005CFF4 24050005 */ li $a1, 5 +/* 05DBF8 8005CFF8 2406FFFF */ li $a2, -1 +/* 05DBFC 8005CFFC 0C01B06B */ jal func_8006C1AC +/* 05DC00 8005D000 24070005 */ li $a3, 5 +/* 05DC04 8005D004 0C01BC50 */ jal func_8006F140 +/* 05DC08 8005D008 24040003 */ li $a0, 3 +/* 05DC0C 8005D00C 83AE0043 */ lb $t6, 0x43($sp) +.L8005D010: +/* 05DC10 8005D010 00000000 */ nop +/* 05DC14 8005D014 25CF0001 */ addiu $t7, $t6, 1 +/* 05DC18 8005D018 0C027068 */ jal func_8009C1A0 +/* 05DC1C 8005D01C A3AF0043 */ sb $t7, 0x43($sp) +/* 05DC20 8005D020 0C01BB12 */ jal func_8006EC48 +/* 05DC24 8005D024 00402025 */ move $a0, $v0 +.L8005D028: +/* 05DC28 8005D028 83AD0043 */ lb $t5, 0x43($sp) +/* 05DC2C 8005D02C 8FB9004C */ lw $t9, 0x4c($sp) +/* 05DC30 8005D030 00000000 */ nop +/* 05DC34 8005D034 A32D0000 */ sb $t5, ($t9) +.L8005D038: +/* 05DC38 8005D038 8FBF001C */ lw $ra, 0x1c($sp) +/* 05DC3C 8005D03C 8FB00018 */ lw $s0, 0x18($sp) +/* 05DC40 8005D040 03E00008 */ jr $ra +/* 05DC44 8005D044 27BD0048 */ addiu $sp, $sp, 0x48 + diff --git a/asm/non_matchings/unknown_05CEF0/func_8005D048.s b/asm/non_matchings/unknown_05CEF0/func_8005D048.s new file mode 100644 index 00000000..125f3938 --- /dev/null +++ b/asm/non_matchings/unknown_05CEF0/func_8005D048.s @@ -0,0 +1,39 @@ +glabel func_8005D048 +/* 05DC48 8005D048 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 05DC4C 8005D04C AFBF0014 */ sw $ra, 0x14($sp) +/* 05DC50 8005D050 AFA40020 */ sw $a0, 0x20($sp) +/* 05DC54 8005D054 AFA50024 */ sw $a1, 0x24($sp) +/* 05DC58 8005D058 AFA60028 */ sw $a2, 0x28($sp) +/* 05DC5C 8005D05C 0C006EB2 */ jal func_8001BAC8 +/* 05DC60 8005D060 00002025 */ move $a0, $zero +/* 05DC64 8005D064 8FAF0024 */ lw $t7, 0x24($sp) +/* 05DC68 8005D068 AFA2001C */ sw $v0, 0x1c($sp) +/* 05DC6C 8005D06C 240E00FF */ li $t6, 255 +/* 05DC70 8005D070 0C0044E7 */ jal func_8001139C +/* 05DC74 8005D074 A1EE01F7 */ sb $t6, 0x1f7($t7) +/* 05DC78 8005D078 14400010 */ bnez $v0, .L8005D0BC +/* 05DC7C 8005D07C 8FBF0014 */ lw $ra, 0x14($sp) +/* 05DC80 8005D080 8FB90028 */ lw $t9, 0x28($sp) +/* 05DC84 8005D084 8FB80020 */ lw $t8, 0x20($sp) +/* 05DC88 8005D088 44993000 */ mtc1 $t9, $f6 +/* 05DC8C 8005D08C 8FA8001C */ lw $t0, 0x1c($sp) +/* 05DC90 8005D090 46803220 */ cvt.s.w $f8, $f6 +/* 05DC94 8005D094 C7040030 */ lwc1 $f4, 0x30($t8) +/* 05DC98 8005D098 C5100030 */ lwc1 $f16, 0x30($t0) +/* 05DC9C 8005D09C 46082280 */ add.s $f10, $f4, $f8 +/* 05DCA0 8005D0A0 8FAA0024 */ lw $t2, 0x24($sp) +/* 05DCA4 8005D0A4 4610503C */ c.lt.s $f10, $f16 +/* 05DCA8 8005D0A8 00000000 */ nop +/* 05DCAC 8005D0AC 45000002 */ bc1f .L8005D0B8 +/* 05DCB0 8005D0B0 24090040 */ li $t1, 64 +/* 05DCB4 8005D0B4 A14901F7 */ sb $t1, 0x1f7($t2) +.L8005D0B8: +/* 05DCB8 8005D0B8 8FBF0014 */ lw $ra, 0x14($sp) +.L8005D0BC: +/* 05DCBC 8005D0BC 27BD0020 */ addiu $sp, $sp, 0x20 +/* 05DCC0 8005D0C0 03E00008 */ jr $ra +/* 05DCC4 8005D0C4 00000000 */ nop + +/* 05DCC8 8005D0C8 00000000 */ nop +/* 05DCCC 8005D0CC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_05DCD0/func_8005D0D0.s b/asm/non_matchings/unknown_05DCD0/func_8005D0D0.s new file mode 100644 index 00000000..b47a7c23 --- /dev/null +++ b/asm/non_matchings/unknown_05DCD0/func_8005D0D0.s @@ -0,0 +1,504 @@ +glabel func_8005D0D0 +/* 05DCD0 8005D0D0 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 05DCD4 8005D0D4 AFA40060 */ sw $a0, 0x60($sp) +/* 05DCD8 8005D0D8 AFBF002C */ sw $ra, 0x2c($sp) +/* 05DCDC 8005D0DC AFB10028 */ sw $s1, 0x28($sp) +/* 05DCE0 8005D0E0 AFB00024 */ sw $s0, 0x24($sp) +/* 05DCE4 8005D0E4 3C04800E */ lui $a0, %hi(D_800DCE00) # $a0, 0x800e +/* 05DCE8 8005D0E8 00E08025 */ move $s0, $a3 +/* 05DCEC 8005D0EC 00C08825 */ move $s1, $a2 +/* 05DCF0 8005D0F0 E7B50018 */ swc1 $f21, 0x18($sp) +/* 05DCF4 8005D0F4 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 05DCF8 8005D0F8 AFA50064 */ sw $a1, 0x64($sp) +/* 05DCFC 8005D0FC 0C01729E */ jal func_8005CA78 +/* 05DD00 8005D100 2484CE00 */ addiu $a0, %lo(D_800DCE00) # addiu $a0, $a0, -0x3200 +/* 05DD04 8005D104 8FA20074 */ lw $v0, 0x74($sp) +/* 05DD08 8005D108 8FA50070 */ lw $a1, 0x70($sp) +/* 05DD0C 8005D10C 8C4E0000 */ lw $t6, ($v0) +/* 05DD10 8005D110 2403FFEF */ li $v1, -17 +/* 05DD14 8005D114 01C37824 */ and $t7, $t6, $v1 +/* 05DD18 8005D118 AC4F0000 */ sw $t7, ($v0) +/* 05DD1C 8005D11C 8CB80000 */ lw $t8, ($a1) +/* 05DD20 8005D120 24010001 */ li $at, 1 +/* 05DD24 8005D124 0303C824 */ and $t9, $t8, $v1 +/* 05DD28 8005D128 ACB90000 */ sw $t9, ($a1) +/* 05DD2C 8005D12C 822A003B */ lb $t2, 0x3b($s1) +/* 05DD30 8005D130 00000000 */ nop +/* 05DD34 8005D134 A7AA005E */ sh $t2, 0x5e($sp) +/* 05DD38 8005D138 862B0018 */ lh $t3, 0x18($s1) +/* 05DD3C 8005D13C 00000000 */ nop +/* 05DD40 8005D140 A7AB005C */ sh $t3, 0x5c($sp) +/* 05DD44 8005D144 860C016A */ lh $t4, 0x16a($s0) +/* 05DD48 8005D148 00000000 */ nop +/* 05DD4C 8005D14C A7AC005A */ sh $t4, 0x5a($sp) +/* 05DD50 8005D150 820D01D8 */ lb $t5, 0x1d8($s0) +/* 05DD54 8005D154 00000000 */ nop +/* 05DD58 8005D158 15A1000C */ bne $t5, $at, .L8005D18C +/* 05DD5C 8005D15C 8FA90078 */ lw $t1, 0x78($sp) +/* 05DD60 8005D160 0C008D5A */ jal func_80023568 +/* 05DD64 8005D164 00000000 */ nop +/* 05DD68 8005D168 10400008 */ beqz $v0, .L8005D18C +/* 05DD6C 8005D16C 8FA90078 */ lw $t1, 0x78($sp) +/* 05DD70 8005D170 0C008500 */ jal func_80021400 +/* 05DD74 8005D174 24040082 */ li $a0, 130 +/* 05DD78 8005D178 820E01D8 */ lb $t6, 0x1d8($s0) +/* 05DD7C 8005D17C 00000000 */ nop +/* 05DD80 8005D180 25CF0001 */ addiu $t7, $t6, 1 +/* 05DD84 8005D184 A20F01D8 */ sb $t7, 0x1d8($s0) +/* 05DD88 8005D188 8FA90078 */ lw $t1, 0x78($sp) +.L8005D18C: +/* 05DD8C 8005D18C 24040064 */ li $a0, 100 +/* 05DD90 8005D190 8D230000 */ lw $v1, ($t1) +/* 05DD94 8005D194 8FA50070 */ lw $a1, 0x70($sp) +/* 05DD98 8005D198 14640002 */ bne $v1, $a0, .L8005D1A4 +/* 05DD9C 8005D19C 3C018012 */ lui $at, %hi(D_8011D5D0) # $at, 0x8012 +/* 05DDA0 8005D1A0 A020D5D0 */ sb $zero, %lo(D_8011D5D0)($at) +.L8005D1A4: +/* 05DDA4 8005D1A4 86180000 */ lh $t8, ($s0) +/* 05DDA8 8005D1A8 2408FFFF */ li $t0, -1 +/* 05DDAC 8005D1AC 1518001F */ bne $t0, $t8, .L8005D22C +/* 05DDB0 8005D1B0 00000000 */ nop +/* 05DDB4 8005D1B4 8D220000 */ lw $v0, ($t1) +/* 05DDB8 8005D1B8 00000000 */ nop +/* 05DDBC 8005D1BC 1082001B */ beq $a0, $v0, .L8005D22C +/* 05DDC0 8005D1C0 2459FFF1 */ addiu $t9, $v0, -0xf +/* 05DDC4 8005D1C4 07210017 */ bgez $t9, .L8005D224 +/* 05DDC8 8005D1C8 AD390000 */ sw $t9, ($t1) +/* 05DDCC 8005D1CC 3C0B8012 */ lui $t3, %hi(D_8011D5D1) # $t3, 0x8012 +/* 05DDD0 8005D1D0 816BD5D1 */ lb $t3, %lo(D_8011D5D1)($t3) +/* 05DDD4 8005D1D4 00002025 */ move $a0, $zero +/* 05DDD8 8005D1D8 1560000A */ bnez $t3, .L8005D204 +/* 05DDDC 8005D1DC 240D0001 */ li $t5, 1 +/* 05DDE0 8005D1E0 0C0172C1 */ jal func_8005CB04 +/* 05DDE4 8005D1E4 AFA30048 */ sw $v1, 0x48($sp) +/* 05DDE8 8005D1E8 8FA30048 */ lw $v1, 0x48($sp) +/* 05DDEC 8005D1EC 8FA90078 */ lw $t1, 0x78($sp) +/* 05DDF0 8005D1F0 240C0003 */ li $t4, 3 +/* 05DDF4 8005D1F4 A20C01D3 */ sb $t4, 0x1d3($s0) +/* 05DDF8 8005D1F8 8FA50070 */ lw $a1, 0x70($sp) +/* 05DDFC 8005D1FC 00000000 */ nop +/* 05DE00 8005D200 240D0001 */ li $t5, 1 +.L8005D204: +/* 05DE04 8005D204 3C018012 */ lui $at, %hi(D_8011D5D1) # $at, 0x8012 +/* 05DE08 8005D208 A02DD5D1 */ sb $t5, %lo(D_8011D5D1)($at) +/* 05DE0C 8005D20C AD200000 */ sw $zero, ($t1) +/* 05DE10 8005D210 8CAE0000 */ lw $t6, ($a1) +/* 05DE14 8005D214 00000000 */ nop +/* 05DE18 8005D218 35CF8000 */ ori $t7, $t6, 0x8000 +/* 05DE1C 8005D21C 10000003 */ b .L8005D22C +/* 05DE20 8005D220 ACAF0000 */ sw $t7, ($a1) +.L8005D224: +/* 05DE24 8005D224 3C018012 */ lui $at, %hi(D_8011D5D1) # $at, 0x8012 +/* 05DE28 8005D228 A020D5D1 */ sb $zero, %lo(D_8011D5D1)($at) +.L8005D22C: +/* 05DE2C 8005D22C 8FA40060 */ lw $a0, 0x60($sp) +/* 05DE30 8005D230 8FA50064 */ lw $a1, 0x64($sp) +/* 05DE34 8005D234 02203025 */ move $a2, $s1 +/* 05DE38 8005D238 02003825 */ move $a3, $s0 +/* 05DE3C 8005D23C 0C013DFD */ jal func_8004F7F4 +/* 05DE40 8005D240 AFA30048 */ sw $v1, 0x48($sp) +/* 05DE44 8005D244 8FA30048 */ lw $v1, 0x48($sp) +/* 05DE48 8005D248 8FA90078 */ lw $t1, 0x78($sp) +/* 05DE4C 8005D24C 44808000 */ mtc1 $zero, $f16 +/* 05DE50 8005D250 AD230000 */ sw $v1, ($t1) +/* 05DE54 8005D254 E6100030 */ swc1 $f16, 0x30($s0) +/* 05DE58 8005D258 87B8005A */ lh $t8, 0x5a($sp) +/* 05DE5C 8005D25C 00000000 */ nop +/* 05DE60 8005D260 A618016A */ sh $t8, 0x16a($s0) +/* 05DE64 8005D264 87B9005E */ lh $t9, 0x5e($sp) +/* 05DE68 8005D268 00000000 */ nop +/* 05DE6C 8005D26C A239003B */ sb $t9, 0x3b($s1) +/* 05DE70 8005D270 87AA005C */ lh $t2, 0x5c($sp) +/* 05DE74 8005D274 00000000 */ nop +/* 05DE78 8005D278 A62A0018 */ sh $t2, 0x18($s1) +/* 05DE7C 8005D27C 820B0187 */ lb $t3, 0x187($s0) +/* 05DE80 8005D280 00000000 */ nop +/* 05DE84 8005D284 11600023 */ beqz $t3, .L8005D314 +/* 05DE88 8005D288 00000000 */ nop +/* 05DE8C 8005D28C 8223003B */ lb $v1, 0x3b($s1) +/* 05DE90 8005D290 24010004 */ li $at, 4 +/* 05DE94 8005D294 1061001F */ beq $v1, $at, .L8005D314 +/* 05DE98 8005D298 240C0004 */ li $t4, 4 +/* 05DE9C 8005D29C A20301CD */ sb $v1, 0x1cd($s0) +/* 05DEA0 8005D2A0 A22C003B */ sb $t4, 0x3b($s1) +/* 05DEA4 8005D2A4 E610000C */ swc1 $f16, 0xc($s0) +/* 05DEA8 8005D2A8 0C0172C1 */ jal func_8005CB04 +/* 05DEAC 8005D2AC 24040001 */ li $a0, 1 +/* 05DEB0 8005D2B0 24040011 */ li $a0, 17 +/* 05DEB4 8005D2B4 0C000741 */ jal func_80001D04 +/* 05DEB8 8005D2B8 00002825 */ move $a1, $zero +/* 05DEBC 8005D2BC 3C014140 */ li $at, 0x41400000 # 12.000000 +/* 05DEC0 8005D2C0 44816000 */ mtc1 $at, $f12 +/* 05DEC4 8005D2C4 0C01A7CA */ jal func_80069F28 +/* 05DEC8 8005D2C8 00000000 */ nop +/* 05DECC 8005D2CC A2000187 */ sb $zero, 0x187($s0) +/* 05DED0 8005D2D0 3C01800E */ lui $at, %hi(D_800E6A34) # $at, 0x800e +/* 05DED4 8005D2D4 C604002C */ lwc1 $f4, 0x2c($s0) +/* 05DED8 8005D2D8 C4296A30 */ lwc1 $f9, %lo(D_800E6A30)($at) +/* 05DEDC 8005D2DC C4286A34 */ lwc1 $f8, %lo(D_800E6A34)($at) +/* 05DEE0 8005D2E0 460021A1 */ cvt.d.s $f6, $f4 +/* 05DEE4 8005D2E4 46283282 */ mul.d $f10, $f6, $f8 +/* 05DEE8 8005D2E8 3C01401E */ li $at, 0x401E0000 # 2.468750 +/* 05DEEC 8005D2EC 44814800 */ mtc1 $at, $f9 +/* 05DEF0 8005D2F0 44804000 */ mtc1 $zero, $f8 +/* 05DEF4 8005D2F4 462054A0 */ cvt.s.d $f18, $f10 +/* 05DEF8 8005D2F8 E612002C */ swc1 $f18, 0x2c($s0) +/* 05DEFC 8005D2FC C6240020 */ lwc1 $f4, 0x20($s1) +/* 05DF00 8005D300 00000000 */ nop +/* 05DF04 8005D304 460021A1 */ cvt.d.s $f6, $f4 +/* 05DF08 8005D308 46283280 */ add.d $f10, $f6, $f8 +/* 05DF0C 8005D30C 462054A0 */ cvt.s.d $f18, $f10 +/* 05DF10 8005D310 E6320020 */ swc1 $f18, 0x20($s1) +.L8005D314: +/* 05DF14 8005D314 8E0D0148 */ lw $t5, 0x148($s0) +/* 05DF18 8005D318 00000000 */ nop +/* 05DF1C 8005D31C 11A0000E */ beqz $t5, .L8005D358 +/* 05DF20 8005D320 00000000 */ nop +/* 05DF24 8005D324 C620001C */ lwc1 $f0, 0x1c($s1) +/* 05DF28 8005D328 C6220024 */ lwc1 $f2, 0x24($s1) +/* 05DF2C 8005D32C 46000502 */ mul.s $f20, $f0, $f0 +/* 05DF30 8005D330 00000000 */ nop +/* 05DF34 8005D334 46021382 */ mul.s $f14, $f2, $f2 +/* 05DF38 8005D338 00000000 */ nop +/* 05DF3C 8005D33C 4614A102 */ mul.s $f4, $f20, $f20 +/* 05DF40 8005D340 00000000 */ nop +/* 05DF44 8005D344 460E7182 */ mul.s $f6, $f14, $f14 +/* 05DF48 8005D348 0C0326B4 */ jal sqrtf +/* 05DF4C 8005D34C 46062300 */ add.s $f12, $f4, $f6 +/* 05DF50 8005D350 46000207 */ neg.s $f8, $f0 +/* 05DF54 8005D354 E608002C */ swc1 $f8, 0x2c($s0) +.L8005D358: +/* 05DF58 8005D358 82040192 */ lb $a0, 0x192($s0) +/* 05DF5C 8005D35C 920501C8 */ lbu $a1, 0x1c8($s0) +/* 05DF60 8005D360 0C006E87 */ jal func_8001BA1C +/* 05DF64 8005D364 AFA0003C */ sw $zero, 0x3c($sp) +/* 05DF68 8005D368 820E01CA */ lb $t6, 0x1ca($s0) +/* 05DF6C 8005D36C 8FA3003C */ lw $v1, 0x3c($sp) +/* 05DF70 8005D370 004E7821 */ addu $t7, $v0, $t6 +/* 05DF74 8005D374 81F80036 */ lb $t8, 0x36($t7) +/* 05DF78 8005D378 44808000 */ mtc1 $zero, $f16 +/* 05DF7C 8005D37C 24010001 */ li $at, 1 +/* 05DF80 8005D380 17010002 */ bne $t8, $at, .L8005D38C +/* 05DF84 8005D384 2408FFFF */ li $t0, -1 +/* 05DF88 8005D388 24030001 */ li $v1, 1 +.L8005D38C: +/* 05DF8C 8005D38C 8239003B */ lb $t9, 0x3b($s1) +/* 05DF90 8005D390 24010004 */ li $at, 4 +/* 05DF94 8005D394 13210063 */ beq $t9, $at, .L8005D524 +/* 05DF98 8005D398 00000000 */ nop +/* 05DF9C 8005D39C C60A002C */ lwc1 $f10, 0x2c($s0) +/* 05DFA0 8005D3A0 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 05DFA4 8005D3A4 44819800 */ mtc1 $at, $f19 +/* 05DFA8 8005D3A8 44809000 */ mtc1 $zero, $f18 +/* 05DFAC 8005D3AC 46005021 */ cvt.d.s $f0, $f10 +/* 05DFB0 8005D3B0 4632003C */ c.lt.d $f0, $f18 +/* 05DFB4 8005D3B4 3C01800E */ lui $at, %hi(D_800E6A3C) # $at, 0x800e +/* 05DFB8 8005D3B8 45000036 */ bc1f .L8005D494 +/* 05DFBC 8005D3BC 00000000 */ nop +/* 05DFC0 8005D3C0 10600024 */ beqz $v1, .L8005D454 +/* 05DFC4 8005D3C4 240B0003 */ li $t3, 3 +/* 05DFC8 8005D3C8 920A01CD */ lbu $t2, 0x1cd($s0) +/* 05DFCC 8005D3CC 24010003 */ li $at, 3 +/* 05DFD0 8005D3D0 11410004 */ beq $t2, $at, .L8005D3E4 +/* 05DFD4 8005D3D4 3C014220 */ li $at, 0x42200000 # 40.000000 +/* 05DFD8 8005D3D8 44812000 */ mtc1 $at, $f4 +/* 05DFDC 8005D3DC 00000000 */ nop +/* 05DFE0 8005D3E0 E604000C */ swc1 $f4, 0xc($s0) +.L8005D3E4: +/* 05DFE4 8005D3E4 A22B003B */ sb $t3, 0x3b($s1) +/* 05DFE8 8005D3E8 820201E1 */ lb $v0, 0x1e1($s0) +/* 05DFEC 8005D3EC 240D0028 */ li $t5, 40 +/* 05DFF0 8005D3F0 00026040 */ sll $t4, $v0, 1 +/* 05DFF4 8005D3F4 01AC1023 */ subu $v0, $t5, $t4 +/* 05DFF8 8005D3F8 04410003 */ bgez $v0, .L8005D408 +/* 05DFFC 8005D3FC 2841004A */ slti $at, $v0, 0x4a +/* 05E000 8005D400 00001025 */ move $v0, $zero +/* 05E004 8005D404 2841004A */ slti $at, $v0, 0x4a +.L8005D408: +/* 05E008 8005D408 14200002 */ bnez $at, .L8005D414 +/* 05E00C 8005D40C 00000000 */ nop +/* 05E010 8005D410 24020049 */ li $v0, 73 +.L8005D414: +/* 05E014 8005D414 44823000 */ mtc1 $v0, $f6 +/* 05E018 8005D418 C600000C */ lwc1 $f0, 0xc($s0) +/* 05E01C 8005D41C 46803220 */ cvt.s.w $f8, $f6 +/* 05E020 8005D420 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 05E024 8005D424 44812800 */ mtc1 $at, $f5 +/* 05E028 8005D428 46004281 */ sub.s $f10, $f8, $f0 +/* 05E02C 8005D42C 44802000 */ mtc1 $zero, $f4 +/* 05E030 8005D430 460054A1 */ cvt.d.s $f18, $f10 +/* 05E034 8005D434 46249182 */ mul.d $f6, $f18, $f4 +/* 05E038 8005D438 46000221 */ cvt.d.s $f8, $f0 +/* 05E03C 8005D43C 240E0003 */ li $t6, 3 +/* 05E040 8005D440 A20E01CD */ sb $t6, 0x1cd($s0) +/* 05E044 8005D444 46264280 */ add.d $f10, $f8, $f6 +/* 05E048 8005D448 462054A0 */ cvt.s.d $f18, $f10 +/* 05E04C 8005D44C 1000003C */ b .L8005D540 +/* 05E050 8005D450 E612000C */ swc1 $f18, 0xc($s0) +.L8005D454: +/* 05E054 8005D454 A20001CD */ sb $zero, 0x1cd($s0) +/* 05E058 8005D458 A220003B */ sb $zero, 0x3b($s1) +/* 05E05C 8005D45C C7A80064 */ lwc1 $f8, 0x64($sp) +/* 05E060 8005D460 C604002C */ lwc1 $f4, 0x2c($s0) +/* 05E064 8005D464 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 05E068 8005D468 46082182 */ mul.s $f6, $f4, $f8 +/* 05E06C 8005D46C 44819800 */ mtc1 $at, $f19 +/* 05E070 8005D470 44809000 */ mtc1 $zero, $f18 +/* 05E074 8005D474 C608000C */ lwc1 $f8, 0xc($s0) +/* 05E078 8005D478 460032A1 */ cvt.d.s $f10, $f6 +/* 05E07C 8005D47C 46325102 */ mul.d $f4, $f10, $f18 +/* 05E080 8005D480 460041A1 */ cvt.d.s $f6, $f8 +/* 05E084 8005D484 46243281 */ sub.d $f10, $f6, $f4 +/* 05E088 8005D488 462054A0 */ cvt.s.d $f18, $f10 +/* 05E08C 8005D48C 1000002C */ b .L8005D540 +/* 05E090 8005D490 E612000C */ swc1 $f18, 0xc($s0) +.L8005D494: +/* 05E094 8005D494 C4296A38 */ lwc1 $f9, %lo(D_800E6A38)($at) +/* 05E098 8005D498 C4286A3C */ lwc1 $f8, %lo(D_800E6A3C)($at) +/* 05E09C 8005D49C 3C01800E */ lui $at, %hi(D_800E6A44) # $at, 0x800e +/* 05E0A0 8005D4A0 4628003C */ c.lt.d $f0, $f8 +/* 05E0A4 8005D4A4 240F0001 */ li $t7, 1 +/* 05E0A8 8005D4A8 45010008 */ bc1t .L8005D4CC +/* 05E0AC 8005D4AC 24180001 */ li $t8, 1 +/* 05E0B0 8005D4B0 C4276A40 */ lwc1 $f7, %lo(D_800E6A40)($at) +/* 05E0B4 8005D4B4 C4266A44 */ lwc1 $f6, %lo(D_800E6A44)($at) +/* 05E0B8 8005D4B8 24190002 */ li $t9, 2 +/* 05E0BC 8005D4BC 4620303C */ c.lt.d $f6, $f0 +/* 05E0C0 8005D4C0 240A0002 */ li $t2, 2 +/* 05E0C4 8005D4C4 4500000D */ bc1f .L8005D4FC +/* 05E0C8 8005D4C8 00000000 */ nop +.L8005D4CC: +/* 05E0CC 8005D4CC A20F01CD */ sb $t7, 0x1cd($s0) +/* 05E0D0 8005D4D0 A238003B */ sb $t8, 0x3b($s1) +/* 05E0D4 8005D4D4 C7AA0064 */ lwc1 $f10, 0x64($sp) +/* 05E0D8 8005D4D8 C604002C */ lwc1 $f4, 0x2c($s0) +/* 05E0DC 8005D4DC 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 05E0E0 8005D4E0 460A2482 */ mul.s $f18, $f4, $f10 +/* 05E0E4 8005D4E4 44814000 */ mtc1 $at, $f8 +/* 05E0E8 8005D4E8 C604000C */ lwc1 $f4, 0xc($s0) +/* 05E0EC 8005D4EC 46089182 */ mul.s $f6, $f18, $f8 +/* 05E0F0 8005D4F0 46062281 */ sub.s $f10, $f4, $f6 +/* 05E0F4 8005D4F4 10000012 */ b .L8005D540 +/* 05E0F8 8005D4F8 E60A000C */ swc1 $f10, 0xc($s0) +.L8005D4FC: +/* 05E0FC 8005D4FC A21901CD */ sb $t9, 0x1cd($s0) +/* 05E100 8005D500 A22A003B */ sb $t2, 0x3b($s1) +/* 05E104 8005D504 C612000C */ lwc1 $f18, 0xc($s0) +/* 05E108 8005D508 C7A40064 */ lwc1 $f4, 0x64($sp) +/* 05E10C 8005D50C 46009221 */ cvt.d.s $f8, $f18 +/* 05E110 8005D510 460021A1 */ cvt.d.s $f6, $f4 +/* 05E114 8005D514 46264280 */ add.d $f10, $f8, $f6 +/* 05E118 8005D518 462054A0 */ cvt.s.d $f18, $f10 +/* 05E11C 8005D51C 10000008 */ b .L8005D540 +/* 05E120 8005D520 E612000C */ swc1 $f18, 0xc($s0) +.L8005D524: +/* 05E124 8005D524 C604000C */ lwc1 $f4, 0xc($s0) +/* 05E128 8005D528 C7A60064 */ lwc1 $f6, 0x64($sp) +/* 05E12C 8005D52C 46002221 */ cvt.d.s $f8, $f4 +/* 05E130 8005D530 460032A1 */ cvt.d.s $f10, $f6 +/* 05E134 8005D534 462A4480 */ add.d $f18, $f8, $f10 +/* 05E138 8005D538 46209120 */ cvt.s.d $f4, $f18 +/* 05E13C 8005D53C E604000C */ swc1 $f4, 0xc($s0) +.L8005D540: +/* 05E140 8005D540 8E2B0068 */ lw $t3, 0x68($s1) +/* 05E144 8005D544 822D003B */ lb $t5, 0x3b($s1) +/* 05E148 8005D548 8D620000 */ lw $v0, ($t3) +/* 05E14C 8005D54C 000D70C0 */ sll $t6, $t5, 3 +/* 05E150 8005D550 8C430000 */ lw $v1, ($v0) +/* 05E154 8005D554 C600000C */ lwc1 $f0, 0xc($s0) +/* 05E158 8005D558 8C6C0044 */ lw $t4, 0x44($v1) +/* 05E15C 8005D55C 4610003C */ c.lt.s $f0, $f16 +/* 05E160 8005D560 018E7821 */ addu $t7, $t4, $t6 +/* 05E164 8005D564 8DF80004 */ lw $t8, 4($t7) +/* 05E168 8005D568 00000000 */ nop +/* 05E16C 8005D56C 0018C900 */ sll $t9, $t8, 4 +/* 05E170 8005D570 272AFFEF */ addiu $t2, $t9, -0x11 +/* 05E174 8005D574 448A3000 */ mtc1 $t2, $f6 +/* 05E178 8005D578 4500000A */ bc1f .L8005D5A4 +/* 05E17C 8005D57C 46803520 */ cvt.s.w $f20, $f6 +.L8005D580: +/* 05E180 8005D580 46140200 */ add.s $f8, $f0, $f20 +/* 05E184 8005D584 E608000C */ swc1 $f8, 0xc($s0) +/* 05E188 8005D588 A4480010 */ sh $t0, 0x10($v0) +/* 05E18C 8005D58C C600000C */ lwc1 $f0, 0xc($s0) +/* 05E190 8005D590 00000000 */ nop +/* 05E194 8005D594 4610003C */ c.lt.s $f0, $f16 +/* 05E198 8005D598 00000000 */ nop +/* 05E19C 8005D59C 4501FFF8 */ bc1t .L8005D580 +/* 05E1A0 8005D5A0 00000000 */ nop +.L8005D5A4: +/* 05E1A4 8005D5A4 4600A03C */ c.lt.s $f20, $f0 +/* 05E1A8 8005D5A8 00000000 */ nop +/* 05E1AC 8005D5AC 4500000A */ bc1f .L8005D5D8 +/* 05E1B0 8005D5B0 00000000 */ nop +.L8005D5B4: +/* 05E1B4 8005D5B4 46140281 */ sub.s $f10, $f0, $f20 +/* 05E1B8 8005D5B8 E60A000C */ swc1 $f10, 0xc($s0) +/* 05E1BC 8005D5BC A4480010 */ sh $t0, 0x10($v0) +/* 05E1C0 8005D5C0 C600000C */ lwc1 $f0, 0xc($s0) +/* 05E1C4 8005D5C4 00000000 */ nop +/* 05E1C8 8005D5C8 4600A03C */ c.lt.s $f20, $f0 +/* 05E1CC 8005D5CC 00000000 */ nop +/* 05E1D0 8005D5D0 4501FFF8 */ bc1t .L8005D5B4 +/* 05E1D4 8005D5D4 00000000 */ nop +.L8005D5D8: +/* 05E1D8 8005D5D8 844B0010 */ lh $t3, 0x10($v0) +/* 05E1DC 8005D5DC 8223003B */ lb $v1, 0x3b($s1) +/* 05E1E0 8005D5E0 150B0009 */ bne $t0, $t3, .L8005D608 +/* 05E1E4 8005D5E4 24010004 */ li $at, 4 +/* 05E1E8 8005D5E8 14610007 */ bne $v1, $at, .L8005D608 +/* 05E1EC 8005D5EC 00000000 */ nop +/* 05E1F0 8005D5F0 920D01CD */ lbu $t5, 0x1cd($s0) +/* 05E1F4 8005D5F4 00000000 */ nop +/* 05E1F8 8005D5F8 A22D003B */ sb $t5, 0x3b($s1) +/* 05E1FC 8005D5FC C600000C */ lwc1 $f0, 0xc($s0) +/* 05E200 8005D600 8223003B */ lb $v1, 0x3b($s1) +/* 05E204 8005D604 00000000 */ nop +.L8005D608: +/* 05E208 8005D608 444EF800 */ cfc1 $t6, $31 +/* 05E20C 8005D60C 862C0018 */ lh $t4, 0x18($s1) +/* 05E210 8005D610 35C10003 */ ori $at, $t6, 3 +/* 05E214 8005D614 38210002 */ xori $at, $at, 2 +/* 05E218 8005D618 44C1F800 */ ctc1 $at, $31 +/* 05E21C 8005D61C A7AC005C */ sh $t4, 0x5c($sp) +/* 05E220 8005D620 460004A4 */ cvt.w.s $f18, $f0 +/* 05E224 8005D624 AE200074 */ sw $zero, 0x74($s1) +/* 05E228 8005D628 440F9000 */ mfc1 $t7, $f18 +/* 05E22C 8005D62C 44CEF800 */ ctc1 $t6, $31 +/* 05E230 8005D630 1460000C */ bnez $v1, .L8005D664 +/* 05E234 8005D634 A62F0018 */ sh $t7, 0x18($s1) +/* 05E238 8005D638 87A6005C */ lh $a2, 0x5c($sp) +/* 05E23C 8005D63C 241800AD */ li $t8, 173 +/* 05E240 8005D640 AFB80010 */ sw $t8, 0x10($sp) +/* 05E244 8005D644 02202025 */ move $a0, $s1 +/* 05E248 8005D648 24050002 */ li $a1, 2 +/* 05E24C 8005D64C 0C0044F3 */ jal func_800113CC +/* 05E250 8005D650 240700AC */ li $a3, 172 +/* 05E254 8005D654 8E390074 */ lw $t9, 0x74($s1) +/* 05E258 8005D658 00000000 */ nop +/* 05E25C 8005D65C 372A0003 */ ori $t2, $t9, 3 +/* 05E260 8005D660 AE2A0074 */ sw $t2, 0x74($s1) +.L8005D664: +/* 05E264 8005D664 8FA50060 */ lw $a1, 0x60($sp) +/* 05E268 8005D668 0C02BF0F */ jal func_800AFC3C +/* 05E26C 8005D66C 02202025 */ move $a0, $s1 +/* 05E270 8005D670 02202025 */ move $a0, $s1 +/* 05E274 8005D674 02002825 */ move $a1, $s0 +/* 05E278 8005D678 0C017412 */ jal func_8005D048 +/* 05E27C 8005D67C 24060028 */ li $a2, 40 +/* 05E280 8005D680 0C006EB2 */ jal func_8001BAC8 +/* 05E284 8005D684 00002025 */ move $a0, $zero +/* 05E288 8005D688 AFA20034 */ sw $v0, 0x34($sp) +/* 05E28C 8005D68C C626000C */ lwc1 $f6, 0xc($s1) +/* 05E290 8005D690 C444000C */ lwc1 $f4, 0xc($v0) +/* 05E294 8005D694 C62A0014 */ lwc1 $f10, 0x14($s1) +/* 05E298 8005D698 46062501 */ sub.s $f20, $f4, $f6 +/* 05E29C 8005D69C C4480014 */ lwc1 $f8, 0x14($v0) +/* 05E2A0 8005D6A0 4614A482 */ mul.s $f18, $f20, $f20 +/* 05E2A4 8005D6A4 460A4381 */ sub.s $f14, $f8, $f10 +/* 05E2A8 8005D6A8 E7AE0050 */ swc1 $f14, 0x50($sp) +/* 05E2AC 8005D6AC 460E7102 */ mul.s $f4, $f14, $f14 +/* 05E2B0 8005D6B0 0C0326B4 */ jal sqrtf +/* 05E2B4 8005D6B4 46049300 */ add.s $f12, $f18, $f4 +/* 05E2B8 8005D6B8 3C01800E */ lui $at, %hi(D_800E6A4C) # $at, 0x800e +/* 05E2BC 8005D6BC C4296A48 */ lwc1 $f9, %lo(D_800E6A48)($at) +/* 05E2C0 8005D6C0 C4286A4C */ lwc1 $f8, %lo(D_800E6A4C)($at) +/* 05E2C4 8005D6C4 460001A1 */ cvt.d.s $f6, $f0 +/* 05E2C8 8005D6C8 4628303C */ c.lt.d $f6, $f8 +/* 05E2CC 8005D6CC C7AE0050 */ lwc1 $f14, 0x50($sp) +/* 05E2D0 8005D6D0 4500001B */ bc1f .L8005D740 +/* 05E2D4 8005D6D4 00000000 */ nop +/* 05E2D8 8005D6D8 0C01C1D4 */ jal func_80070750 +/* 05E2DC 8005D6DC 4600A306 */ mov.s $f12, $f20 +/* 05E2E0 8005D6E0 862B0000 */ lh $t3, ($s1) +/* 05E2E4 8005D6E4 34018000 */ li $at, 32768 +/* 05E2E8 8005D6E8 316DFFFF */ andi $t5, $t3, 0xffff +/* 05E2EC 8005D6EC 004D1823 */ subu $v1, $v0, $t5 +/* 05E2F0 8005D6F0 00611821 */ addu $v1, $v1, $at +/* 05E2F4 8005D6F4 34018001 */ li $at, 32769 +/* 05E2F8 8005D6F8 0061082A */ slt $at, $v1, $at +/* 05E2FC 8005D6FC 14200003 */ bnez $at, .L8005D70C +/* 05E300 8005D700 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 05E304 8005D704 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 05E308 8005D708 00611821 */ addu $v1, $v1, $at +.L8005D70C: +/* 05E30C 8005D70C 28618000 */ slti $at, $v1, -0x8000 +/* 05E310 8005D710 10200002 */ beqz $at, .L8005D71C +/* 05E314 8005D714 3401FFFF */ li $at, 65535 +/* 05E318 8005D718 00611821 */ addu $v1, $v1, $at +.L8005D71C: +/* 05E31C 8005D71C 28610C01 */ slti $at, $v1, 0xc01 +/* 05E320 8005D720 14200003 */ bnez $at, .L8005D730 +/* 05E324 8005D724 2861F400 */ slti $at, $v1, -0xc00 +/* 05E328 8005D728 24030C00 */ li $v1, 3072 +/* 05E32C 8005D72C 2861F400 */ slti $at, $v1, -0xc00 +.L8005D730: +/* 05E330 8005D730 10200002 */ beqz $at, .L8005D73C +/* 05E334 8005D734 00000000 */ nop +/* 05E338 8005D738 2403F400 */ li $v1, -3072 +.L8005D73C: +/* 05E33C 8005D73C A603016C */ sh $v1, 0x16c($s0) +.L8005D740: +/* 05E340 8005D740 8223003B */ lb $v1, 0x3b($s1) +/* 05E344 8005D744 24010001 */ li $at, 1 +/* 05E348 8005D748 1461000D */ bne $v1, $at, .L8005D780 +/* 05E34C 8005D74C 3C058012 */ lui $a1, %hi(D_8011D5D0) # $a1, 0x8012 +/* 05E350 8005D750 820C01E7 */ lb $t4, 0x1e7($s0) +/* 05E354 8005D754 00000000 */ nop +/* 05E358 8005D758 318E001F */ andi $t6, $t4, 0x1f +/* 05E35C 8005D75C 29C1000A */ slti $at, $t6, 0xa +/* 05E360 8005D760 10200008 */ beqz $at, .L8005D784 +/* 05E364 8005D764 24010003 */ li $at, 3 +/* 05E368 8005D768 860F016C */ lh $t7, 0x16c($s0) +/* 05E36C 8005D76C 00000000 */ nop +/* 05E370 8005D770 000FC043 */ sra $t8, $t7, 1 +/* 05E374 8005D774 A618016C */ sh $t8, 0x16c($s0) +/* 05E378 8005D778 8223003B */ lb $v1, 0x3b($s1) +/* 05E37C 8005D77C 00000000 */ nop +.L8005D780: +/* 05E380 8005D780 24010003 */ li $at, 3 +.L8005D784: +/* 05E384 8005D784 14610002 */ bne $v1, $at, .L8005D790 +/* 05E388 8005D788 24A5D5D0 */ addiu $a1, %lo(D_8011D5D0) # addiu $a1, $a1, -0x2a30 +/* 05E38C 8005D78C A600016C */ sh $zero, 0x16c($s0) +.L8005D790: +/* 05E390 8005D790 8FA30034 */ lw $v1, 0x34($sp) +/* 05E394 8005D794 00000000 */ nop +/* 05E398 8005D798 8C62004C */ lw $v0, 0x4c($v1) +/* 05E39C 8005D79C 8C700064 */ lw $s0, 0x64($v1) +/* 05E3A0 8005D7A0 8C590000 */ lw $t9, ($v0) +/* 05E3A4 8005D7A4 00000000 */ nop +/* 05E3A8 8005D7A8 1639000B */ bne $s1, $t9, .L8005D7D8 +/* 05E3AC 8005D7AC 00000000 */ nop +/* 05E3B0 8005D7B0 844A0014 */ lh $t2, 0x14($v0) +/* 05E3B4 8005D7B4 00000000 */ nop +/* 05E3B8 8005D7B8 314B0008 */ andi $t3, $t2, 8 +/* 05E3BC 8005D7BC 11600006 */ beqz $t3, .L8005D7D8 +/* 05E3C0 8005D7C0 00000000 */ nop +/* 05E3C4 8005D7C4 822D003B */ lb $t5, 0x3b($s1) +/* 05E3C8 8005D7C8 24010001 */ li $at, 1 +/* 05E3CC 8005D7CC 15A10002 */ bne $t5, $at, .L8005D7D8 +/* 05E3D0 8005D7D0 240C0004 */ li $t4, 4 +/* 05E3D4 8005D7D4 A20C0187 */ sb $t4, 0x187($s0) +.L8005D7D8: +/* 05E3D8 8005D7D8 820E01D8 */ lb $t6, 0x1d8($s0) +/* 05E3DC 8005D7DC 00000000 */ nop +/* 05E3E0 8005D7E0 11C00008 */ beqz $t6, .L8005D804 +/* 05E3E4 8005D7E4 8FBF002C */ lw $ra, 0x2c($sp) +/* 05E3E8 8005D7E8 80AF0000 */ lb $t7, ($a1) +/* 05E3EC 8005D7EC 24180001 */ li $t8, 1 +/* 05E3F0 8005D7F0 15E00003 */ bnez $t7, .L8005D800 +/* 05E3F4 8005D7F4 02002025 */ move $a0, $s0 +/* 05E3F8 8005D7F8 0C0172DA */ jal func_8005CB68 +/* 05E3FC 8005D7FC A0B80000 */ sb $t8, ($a1) +.L8005D800: +/* 05E400 8005D800 8FBF002C */ lw $ra, 0x2c($sp) +.L8005D804: +/* 05E404 8005D804 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 05E408 8005D808 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 05E40C 8005D80C 8FB00024 */ lw $s0, 0x24($sp) +/* 05E410 8005D810 8FB10028 */ lw $s1, 0x28($sp) +/* 05E414 8005D814 03E00008 */ jr $ra +/* 05E418 8005D818 27BD0060 */ addiu $sp, $sp, 0x60 + +/* 05E41C 8005D81C 00000000 */ nop diff --git a/asm/non_matchings/unknown_05DCD0/func_8005D820.s b/asm/non_matchings/unknown_05DCD0/func_8005D820.s new file mode 100644 index 00000000..48223c8d --- /dev/null +++ b/asm/non_matchings/unknown_05DCD0/func_8005D820.s @@ -0,0 +1,685 @@ +glabel func_8005D820 +/* 05E420 8005D820 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 05E424 8005D824 AFA40060 */ sw $a0, 0x60($sp) +/* 05E428 8005D828 AFBF002C */ sw $ra, 0x2c($sp) +/* 05E42C 8005D82C AFB10028 */ sw $s1, 0x28($sp) +/* 05E430 8005D830 AFB00024 */ sw $s0, 0x24($sp) +/* 05E434 8005D834 3C04800E */ lui $a0, %hi(D_800DCE20) # $a0, 0x800e +/* 05E438 8005D838 00E08025 */ move $s0, $a3 +/* 05E43C 8005D83C 00C08825 */ move $s1, $a2 +/* 05E440 8005D840 E7B50018 */ swc1 $f21, 0x18($sp) +/* 05E444 8005D844 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 05E448 8005D848 AFA50064 */ sw $a1, 0x64($sp) +/* 05E44C 8005D84C 0C01729E */ jal func_8005CA78 +/* 05E450 8005D850 2484CE20 */ addiu $a0, %lo(D_800DCE20) # addiu $a0, $a0, -0x31e0 +/* 05E454 8005D854 822E003B */ lb $t6, 0x3b($s1) +/* 05E458 8005D858 3C01800E */ lui $at, %hi(D_800E6A54) # $at, 0x800e +/* 05E45C 8005D85C A7AE005E */ sh $t6, 0x5e($sp) +/* 05E460 8005D860 860F016A */ lh $t7, 0x16a($s0) +/* 05E464 8005D864 862A0018 */ lh $t2, 0x18($s1) +/* 05E468 8005D868 A7AF005A */ sh $t7, 0x5a($sp) +/* 05E46C 8005D86C C604002C */ lwc1 $f4, 0x2c($s0) +/* 05E470 8005D870 C4276A50 */ lwc1 $f7, %lo(D_800E6A50)($at) +/* 05E474 8005D874 C4266A54 */ lwc1 $f6, %lo(D_800E6A54)($at) +/* 05E478 8005D878 46002021 */ cvt.d.s $f0, $f4 +/* 05E47C 8005D87C 4626003C */ c.lt.d $f0, $f6 +/* 05E480 8005D880 00000000 */ nop +/* 05E484 8005D884 45000009 */ bc1f .L8005D8AC +/* 05E488 8005D888 3C01800E */ lui $at, %hi(D_800E6A5C) # $at, 0x800e +/* 05E48C 8005D88C C4296A58 */ lwc1 $f9, %lo(D_800E6A58)($at) +/* 05E490 8005D890 C4286A5C */ lwc1 $f8, %lo(D_800E6A5C)($at) +/* 05E494 8005D894 8FB80074 */ lw $t8, 0x74($sp) +/* 05E498 8005D898 4620403C */ c.lt.d $f8, $f0 +/* 05E49C 8005D89C 00000000 */ nop +/* 05E4A0 8005D8A0 45000002 */ bc1f .L8005D8AC +/* 05E4A4 8005D8A4 00000000 */ nop +/* 05E4A8 8005D8A8 AF000000 */ sw $zero, ($t8) +.L8005D8AC: +/* 05E4AC 8005D8AC 821901D8 */ lb $t9, 0x1d8($s0) +/* 05E4B0 8005D8B0 24010001 */ li $at, 1 +/* 05E4B4 8005D8B4 1721000D */ bne $t9, $at, .L8005D8EC +/* 05E4B8 8005D8B8 8FA80078 */ lw $t0, 0x78($sp) +/* 05E4BC 8005D8BC 0C008D5A */ jal func_80023568 +/* 05E4C0 8005D8C0 A7AA005C */ sh $t2, 0x5c($sp) +/* 05E4C4 8005D8C4 87AA005C */ lh $t2, 0x5c($sp) +/* 05E4C8 8005D8C8 10400007 */ beqz $v0, .L8005D8E8 +/* 05E4CC 8005D8CC 24040082 */ li $a0, 130 +/* 05E4D0 8005D8D0 0C008500 */ jal func_80021400 +/* 05E4D4 8005D8D4 A7AA005C */ sh $t2, 0x5c($sp) +/* 05E4D8 8005D8D8 820B01D8 */ lb $t3, 0x1d8($s0) +/* 05E4DC 8005D8DC 87AA005C */ lh $t2, 0x5c($sp) +/* 05E4E0 8005D8E0 256C0001 */ addiu $t4, $t3, 1 +/* 05E4E4 8005D8E4 A20C01D8 */ sb $t4, 0x1d8($s0) +.L8005D8E8: +/* 05E4E8 8005D8E8 8FA80078 */ lw $t0, 0x78($sp) +.L8005D8EC: +/* 05E4EC 8005D8EC 24040064 */ li $a0, 100 +/* 05E4F0 8005D8F0 8D030000 */ lw $v1, ($t0) +/* 05E4F4 8005D8F4 00000000 */ nop +/* 05E4F8 8005D8F8 14640002 */ bne $v1, $a0, .L8005D904 +/* 05E4FC 8005D8FC 3C018012 */ lui $at, %hi(D_8011D5E0) # $at, 0x8012 +/* 05E500 8005D900 A020D5E0 */ sb $zero, %lo(D_8011D5E0)($at) +.L8005D904: +/* 05E504 8005D904 860D0000 */ lh $t5, ($s0) +/* 05E508 8005D908 2409FFFF */ li $t1, -1 +/* 05E50C 8005D90C 152D0021 */ bne $t1, $t5, .L8005D994 +/* 05E510 8005D910 240E0007 */ li $t6, 7 +/* 05E514 8005D914 8D020000 */ lw $v0, ($t0) +/* 05E518 8005D918 00000000 */ nop +/* 05E51C 8005D91C 1082001C */ beq $a0, $v0, .L8005D990 +/* 05E520 8005D920 244EFFC4 */ addiu $t6, $v0, -0x3c +/* 05E524 8005D924 05C10018 */ bgez $t6, .L8005D988 +/* 05E528 8005D928 AD0E0000 */ sw $t6, ($t0) +/* 05E52C 8005D92C 3C188012 */ lui $t8, %hi(D_8011D5E1) # $t8, 0x8012 +/* 05E530 8005D930 8318D5E1 */ lb $t8, %lo(D_8011D5E1)($t8) +/* 05E534 8005D934 00002025 */ move $a0, $zero +/* 05E538 8005D938 1700000A */ bnez $t8, .L8005D964 +/* 05E53C 8005D93C 8FA20070 */ lw $v0, 0x70($sp) +/* 05E540 8005D940 AFA30044 */ sw $v1, 0x44($sp) +/* 05E544 8005D944 0C0172C1 */ jal func_8005CB04 +/* 05E548 8005D948 A7AA005C */ sh $t2, 0x5c($sp) +/* 05E54C 8005D94C 8FA30044 */ lw $v1, 0x44($sp) +/* 05E550 8005D950 8FA80078 */ lw $t0, 0x78($sp) +/* 05E554 8005D954 87AA005C */ lh $t2, 0x5c($sp) +/* 05E558 8005D958 2419000A */ li $t9, 10 +/* 05E55C 8005D95C A21901D3 */ sb $t9, 0x1d3($s0) +/* 05E560 8005D960 8FA20070 */ lw $v0, 0x70($sp) +.L8005D964: +/* 05E564 8005D964 240B0001 */ li $t3, 1 +/* 05E568 8005D968 3C018012 */ lui $at, %hi(D_8011D5E1) # $at, 0x8012 +/* 05E56C 8005D96C A02BD5E1 */ sb $t3, %lo(D_8011D5E1)($at) +/* 05E570 8005D970 AD000000 */ sw $zero, ($t0) +/* 05E574 8005D974 8C4C0000 */ lw $t4, ($v0) +/* 05E578 8005D978 00000000 */ nop +/* 05E57C 8005D97C 358D8000 */ ori $t5, $t4, 0x8000 +/* 05E580 8005D980 10000003 */ b .L8005D990 +/* 05E584 8005D984 AC4D0000 */ sw $t5, ($v0) +.L8005D988: +/* 05E588 8005D988 3C018012 */ lui $at, %hi(D_8011D5E1) # $at, 0x8012 +/* 05E58C 8005D98C A020D5E1 */ sb $zero, %lo(D_8011D5E1)($at) +.L8005D990: +/* 05E590 8005D990 240E0007 */ li $t6, 7 +.L8005D994: +/* 05E594 8005D994 A20E01D6 */ sb $t6, 0x1d6($s0) +/* 05E598 8005D998 8FA50064 */ lw $a1, 0x64($sp) +/* 05E59C 8005D99C 8FA40060 */ lw $a0, 0x60($sp) +/* 05E5A0 8005D9A0 A7AA005C */ sh $t2, 0x5c($sp) +/* 05E5A4 8005D9A4 AFA30044 */ sw $v1, 0x44($sp) +/* 05E5A8 8005D9A8 02203025 */ move $a2, $s1 +/* 05E5AC 8005D9AC 0C0125E5 */ jal func_80049794 +/* 05E5B0 8005D9B0 02003825 */ move $a3, $s0 +/* 05E5B4 8005D9B4 8FA30044 */ lw $v1, 0x44($sp) +/* 05E5B8 8005D9B8 8FA80078 */ lw $t0, 0x78($sp) +/* 05E5BC 8005D9BC 820F01D7 */ lb $t7, 0x1d7($s0) +/* 05E5C0 8005D9C0 87AA005C */ lh $t2, 0x5c($sp) +/* 05E5C4 8005D9C4 A20F01D6 */ sb $t7, 0x1d6($s0) +/* 05E5C8 8005D9C8 AD030000 */ sw $v1, ($t0) +/* 05E5CC 8005D9CC AE200074 */ sw $zero, 0x74($s1) +/* 05E5D0 8005D9D0 87B8005A */ lh $t8, 0x5a($sp) +/* 05E5D4 8005D9D4 2409FFFF */ li $t1, -1 +/* 05E5D8 8005D9D8 A618016A */ sh $t8, 0x16a($s0) +/* 05E5DC 8005D9DC 87B9005E */ lh $t9, 0x5e($sp) +/* 05E5E0 8005D9E0 A62A0018 */ sh $t2, 0x18($s1) +/* 05E5E4 8005D9E4 A239003B */ sb $t9, 0x3b($s1) +/* 05E5E8 8005D9E8 820B0187 */ lb $t3, 0x187($s0) +/* 05E5EC 8005D9EC 00000000 */ nop +/* 05E5F0 8005D9F0 11600028 */ beqz $t3, .L8005DA94 +/* 05E5F4 8005D9F4 00000000 */ nop +/* 05E5F8 8005D9F8 822C003B */ lb $t4, 0x3b($s1) +/* 05E5FC 8005D9FC 24010005 */ li $at, 5 +/* 05E600 8005DA00 11810024 */ beq $t4, $at, .L8005DA94 +/* 05E604 8005DA04 00000000 */ nop +/* 05E608 8005DA08 0C0172C1 */ jal func_8005CB04 +/* 05E60C 8005DA0C 24040001 */ li $a0, 1 +/* 05E610 8005DA10 24040011 */ li $a0, 17 +/* 05E614 8005DA14 0C000741 */ jal func_80001D04 +/* 05E618 8005DA18 00002825 */ move $a1, $zero +/* 05E61C 8005DA1C 3C014140 */ li $at, 0x41400000 # 12.000000 +/* 05E620 8005DA20 44816000 */ mtc1 $at, $f12 +/* 05E624 8005DA24 0C01A7CA */ jal func_80069F28 +/* 05E628 8005DA28 00000000 */ nop +/* 05E62C 8005DA2C 3C01800E */ lui $at, %hi(D_800E6A64) # $at, 0x800e +/* 05E630 8005DA30 C62A001C */ lwc1 $f10, 0x1c($s1) +/* 05E634 8005DA34 C4216A60 */ lwc1 $f1, %lo(D_800E6A60)($at) +/* 05E638 8005DA38 C4206A64 */ lwc1 $f0, %lo(D_800E6A64)($at) +/* 05E63C 8005DA3C 460054A1 */ cvt.d.s $f18, $f10 +/* 05E640 8005DA40 46209102 */ mul.d $f4, $f18, $f0 +/* 05E644 8005DA44 C6280024 */ lwc1 $f8, 0x24($s1) +/* 05E648 8005DA48 44808000 */ mtc1 $zero, $f16 +/* 05E64C 8005DA4C 460042A1 */ cvt.d.s $f10, $f8 +/* 05E650 8005DA50 240D0005 */ li $t5, 5 +/* 05E654 8005DA54 46205482 */ mul.d $f18, $f10, $f0 +/* 05E658 8005DA58 462021A0 */ cvt.s.d $f6, $f4 +/* 05E65C 8005DA5C A22D003B */ sb $t5, 0x3b($s1) +/* 05E660 8005DA60 E626001C */ swc1 $f6, 0x1c($s1) +/* 05E664 8005DA64 3C014010 */ li $at, 0x40100000 # 2.250000 +/* 05E668 8005DA68 46209120 */ cvt.s.d $f4, $f18 +/* 05E66C 8005DA6C 44815800 */ mtc1 $at, $f11 +/* 05E670 8005DA70 E6240024 */ swc1 $f4, 0x24($s1) +/* 05E674 8005DA74 E610000C */ swc1 $f16, 0xc($s0) +/* 05E678 8005DA78 C6260020 */ lwc1 $f6, 0x20($s1) +/* 05E67C 8005DA7C 44805000 */ mtc1 $zero, $f10 +/* 05E680 8005DA80 46003221 */ cvt.d.s $f8, $f6 +/* 05E684 8005DA84 462A4480 */ add.d $f18, $f8, $f10 +/* 05E688 8005DA88 2409FFFF */ li $t1, -1 +/* 05E68C 8005DA8C 46209120 */ cvt.s.d $f4, $f18 +/* 05E690 8005DA90 E6240020 */ swc1 $f4, 0x20($s1) +.L8005DA94: +/* 05E694 8005DA94 8E0E0148 */ lw $t6, 0x148($s0) +/* 05E698 8005DA98 44808000 */ mtc1 $zero, $f16 +/* 05E69C 8005DA9C 11C0001A */ beqz $t6, .L8005DB08 +/* 05E6A0 8005DAA0 A2000187 */ sb $zero, 0x187($s0) +/* 05E6A4 8005DAA4 C620001C */ lwc1 $f0, 0x1c($s1) +/* 05E6A8 8005DAA8 C6220024 */ lwc1 $f2, 0x24($s1) +/* 05E6AC 8005DAAC 46000502 */ mul.s $f20, $f0, $f0 +/* 05E6B0 8005DAB0 00000000 */ nop +/* 05E6B4 8005DAB4 46021382 */ mul.s $f14, $f2, $f2 +/* 05E6B8 8005DAB8 00000000 */ nop +/* 05E6BC 8005DABC 4614A182 */ mul.s $f6, $f20, $f20 +/* 05E6C0 8005DAC0 00000000 */ nop +/* 05E6C4 8005DAC4 460E7202 */ mul.s $f8, $f14, $f14 +/* 05E6C8 8005DAC8 0C0326B4 */ jal sqrtf +/* 05E6CC 8005DACC 46083300 */ add.s $f12, $f6, $f8 +/* 05E6D0 8005DAD0 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 05E6D4 8005DAD4 44815800 */ mtc1 $at, $f11 +/* 05E6D8 8005DAD8 44805000 */ mtc1 $zero, $f10 +/* 05E6DC 8005DADC 46000087 */ neg.s $f2, $f0 +/* 05E6E0 8005DAE0 460014A1 */ cvt.d.s $f18, $f2 +/* 05E6E4 8005DAE4 4632503C */ c.lt.d $f10, $f18 +/* 05E6E8 8005DAE8 44808000 */ mtc1 $zero, $f16 +/* 05E6EC 8005DAEC E602002C */ swc1 $f2, 0x2c($s0) +/* 05E6F0 8005DAF0 45000005 */ bc1f .L8005DB08 +/* 05E6F4 8005DAF4 2409FFFF */ li $t1, -1 +/* 05E6F8 8005DAF8 E610002C */ swc1 $f16, 0x2c($s0) +/* 05E6FC 8005DAFC E630001C */ swc1 $f16, 0x1c($s1) +/* 05E700 8005DB00 E6300020 */ swc1 $f16, 0x20($s1) +/* 05E704 8005DB04 E6300024 */ swc1 $f16, 0x24($s1) +.L8005DB08: +/* 05E708 8005DB08 8E2F0068 */ lw $t7, 0x68($s1) +/* 05E70C 8005DB0C 8223003B */ lb $v1, 0x3b($s1) +/* 05E710 8005DB10 8DE20000 */ lw $v0, ($t7) +/* 05E714 8005DB14 0003C8C0 */ sll $t9, $v1, 3 +/* 05E718 8005DB18 8C450000 */ lw $a1, ($v0) +/* 05E71C 8005DB1C C7AC0064 */ lwc1 $f12, 0x64($sp) +/* 05E720 8005DB20 8CB80044 */ lw $t8, 0x44($a1) +/* 05E724 8005DB24 C606002C */ lwc1 $f6, 0x2c($s0) +/* 05E728 8005DB28 03195821 */ addu $t3, $t8, $t9 +/* 05E72C 8005DB2C 8D6C0004 */ lw $t4, 4($t3) +/* 05E730 8005DB30 460C3202 */ mul.s $f8, $f6, $f12 +/* 05E734 8005DB34 000C6900 */ sll $t5, $t4, 4 +/* 05E738 8005DB38 25AEFFEF */ addiu $t6, $t5, -0x11 +/* 05E73C 8005DB3C 3C01800E */ lui $at, %hi(D_800E6A6C) # $at, 0x800e +/* 05E740 8005DB40 448E2000 */ mtc1 $t6, $f4 +/* 05E744 8005DB44 C4336A68 */ lwc1 $f19, %lo(D_800E6A68)($at) +/* 05E748 8005DB48 C4326A6C */ lwc1 $f18, %lo(D_800E6A6C)($at) +/* 05E74C 8005DB4C 460042A1 */ cvt.d.s $f10, $f8 +/* 05E750 8005DB50 46802520 */ cvt.s.w $f20, $f4 +/* 05E754 8005DB54 44803000 */ mtc1 $zero, $f6 +/* 05E758 8005DB58 44803800 */ mtc1 $zero, $f7 +/* 05E75C 8005DB5C 46325102 */ mul.d $f4, $f10, $f18 +/* 05E760 8005DB60 462020A0 */ cvt.s.d $f2, $f4 +/* 05E764 8005DB64 46001021 */ cvt.d.s $f0, $f2 +/* 05E768 8005DB68 4626003E */ c.le.d $f0, $f6 +/* 05E76C 8005DB6C 00000000 */ nop +/* 05E770 8005DB70 4500000B */ bc1f .L8005DBA0 +/* 05E774 8005DB74 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 05E778 8005DB78 44814800 */ mtc1 $at, $f9 +/* 05E77C 8005DB7C 44804000 */ mtc1 $zero, $f8 +/* 05E780 8005DB80 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 05E784 8005DB84 4620403C */ c.lt.d $f8, $f0 +/* 05E788 8005DB88 00000000 */ nop +/* 05E78C 8005DB8C 4500000E */ bc1f .L8005DBC8 +/* 05E790 8005DB90 00000000 */ nop +/* 05E794 8005DB94 44811000 */ mtc1 $at, $f2 +/* 05E798 8005DB98 1000000C */ b .L8005DBCC +/* 05E79C 8005DB9C 2C610006 */ sltiu $at, $v1, 6 +.L8005DBA0: +/* 05E7A0 8005DBA0 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 05E7A4 8005DBA4 44815800 */ mtc1 $at, $f11 +/* 05E7A8 8005DBA8 44805000 */ mtc1 $zero, $f10 +/* 05E7AC 8005DBAC 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 05E7B0 8005DBB0 462A003C */ c.lt.d $f0, $f10 +/* 05E7B4 8005DBB4 00000000 */ nop +/* 05E7B8 8005DBB8 45000003 */ bc1f .L8005DBC8 +/* 05E7BC 8005DBBC 00000000 */ nop +/* 05E7C0 8005DBC0 44811000 */ mtc1 $at, $f2 +/* 05E7C4 8005DBC4 00000000 */ nop +.L8005DBC8: +/* 05E7C8 8005DBC8 2C610006 */ sltiu $at, $v1, 6 +.L8005DBCC: +/* 05E7CC 8005DBCC 1020004F */ beqz $at, .L8005DD0C +/* 05E7D0 8005DBD0 00037880 */ sll $t7, $v1, 2 +/* 05E7D4 8005DBD4 3C01800E */ lui $at, 0x800e +/* 05E7D8 8005DBD8 002F0821 */ addu $at, $at, $t7 +/* 05E7DC 8005DBDC 8C2F6A70 */ lw $t7, 0x6a70($at) +/* 05E7E0 8005DBE0 00000000 */ nop +/* 05E7E4 8005DBE4 01E00008 */ jr $t7 +/* 05E7E8 8005DBE8 00000000 */ nop +/* 05E7EC 8005DBEC C612000C */ lwc1 $f18, 0xc($s0) +/* 05E7F0 8005DBF0 460061A1 */ cvt.d.s $f6, $f12 +/* 05E7F4 8005DBF4 46009121 */ cvt.d.s $f4, $f18 +/* 05E7F8 8005DBF8 46262200 */ add.d $f8, $f4, $f6 +/* 05E7FC 8005DBFC A20001CD */ sb $zero, 0x1cd($s0) +/* 05E800 8005DC00 462042A0 */ cvt.s.d $f10, $f8 +/* 05E804 8005DC04 24040002 */ li $a0, 2 +/* 05E808 8005DC08 10000041 */ b .L8005DD10 +/* 05E80C 8005DC0C E60A000C */ swc1 $f10, 0xc($s0) +/* 05E810 8005DC10 921801CD */ lbu $t8, 0x1cd($s0) +/* 05E814 8005DC14 24040002 */ li $a0, 2 +/* 05E818 8005DC18 14980006 */ bne $a0, $t8, .L8005DC34 +/* 05E81C 8005DC1C 00000000 */ nop +/* 05E820 8005DC20 C612000C */ lwc1 $f18, 0xc($s0) +/* 05E824 8005DC24 00000000 */ nop +/* 05E828 8005DC28 46029100 */ add.s $f4, $f18, $f2 +/* 05E82C 8005DC2C 10000038 */ b .L8005DD10 +/* 05E830 8005DC30 E604000C */ swc1 $f4, 0xc($s0) +.L8005DC34: +/* 05E834 8005DC34 C606000C */ lwc1 $f6, 0xc($s0) +/* 05E838 8005DC38 00000000 */ nop +/* 05E83C 8005DC3C 46023201 */ sub.s $f8, $f6, $f2 +/* 05E840 8005DC40 10000033 */ b .L8005DD10 +/* 05E844 8005DC44 E608000C */ swc1 $f8, 0xc($s0) +/* 05E848 8005DC48 C60A000C */ lwc1 $f10, 0xc($s0) +/* 05E84C 8005DC4C 24190002 */ li $t9, 2 +/* 05E850 8005DC50 46025481 */ sub.s $f18, $f10, $f2 +/* 05E854 8005DC54 A21901CD */ sb $t9, 0x1cd($s0) +/* 05E858 8005DC58 E612000C */ swc1 $f18, 0xc($s0) +/* 05E85C 8005DC5C 1000002C */ b .L8005DD10 +/* 05E860 8005DC60 24040002 */ li $a0, 2 +/* 05E864 8005DC64 920B01CD */ lbu $t3, 0x1cd($s0) +/* 05E868 8005DC68 24010004 */ li $at, 4 +/* 05E86C 8005DC6C 1561000A */ bne $t3, $at, .L8005DC98 +/* 05E870 8005DC70 00000000 */ nop +/* 05E874 8005DC74 C604000C */ lwc1 $f4, 0xc($s0) +/* 05E878 8005DC78 46006021 */ cvt.d.s $f0, $f12 +/* 05E87C 8005DC7C 46200200 */ add.d $f8, $f0, $f0 +/* 05E880 8005DC80 24040002 */ li $a0, 2 +/* 05E884 8005DC84 460021A1 */ cvt.d.s $f6, $f4 +/* 05E888 8005DC88 46283281 */ sub.d $f10, $f6, $f8 +/* 05E88C 8005DC8C 462054A0 */ cvt.s.d $f18, $f10 +/* 05E890 8005DC90 1000001F */ b .L8005DD10 +/* 05E894 8005DC94 E612000C */ swc1 $f18, 0xc($s0) +.L8005DC98: +/* 05E898 8005DC98 C604000C */ lwc1 $f4, 0xc($s0) +/* 05E89C 8005DC9C 46006021 */ cvt.d.s $f0, $f12 +/* 05E8A0 8005DCA0 46200200 */ add.d $f8, $f0, $f0 +/* 05E8A4 8005DCA4 460021A1 */ cvt.d.s $f6, $f4 +/* 05E8A8 8005DCA8 46283280 */ add.d $f10, $f6, $f8 +/* 05E8AC 8005DCAC 462054A0 */ cvt.s.d $f18, $f10 +/* 05E8B0 8005DCB0 E612000C */ swc1 $f18, 0xc($s0) +/* 05E8B4 8005DCB4 10000016 */ b .L8005DD10 +/* 05E8B8 8005DCB8 24040002 */ li $a0, 2 +/* 05E8BC 8005DCBC C604000C */ lwc1 $f4, 0xc($s0) +/* 05E8C0 8005DCC0 46006021 */ cvt.d.s $f0, $f12 +/* 05E8C4 8005DCC4 46200200 */ add.d $f8, $f0, $f0 +/* 05E8C8 8005DCC8 240C0004 */ li $t4, 4 +/* 05E8CC 8005DCCC 460021A1 */ cvt.d.s $f6, $f4 +/* 05E8D0 8005DCD0 46283280 */ add.d $f10, $f6, $f8 +/* 05E8D4 8005DCD4 A20C01CD */ sb $t4, 0x1cd($s0) +/* 05E8D8 8005DCD8 462054A0 */ cvt.s.d $f18, $f10 +/* 05E8DC 8005DCDC 24040002 */ li $a0, 2 +/* 05E8E0 8005DCE0 1000000B */ b .L8005DD10 +/* 05E8E4 8005DCE4 E612000C */ swc1 $f18, 0xc($s0) +/* 05E8E8 8005DCE8 C604000C */ lwc1 $f4, 0xc($s0) +/* 05E8EC 8005DCEC 46006021 */ cvt.d.s $f0, $f12 +/* 05E8F0 8005DCF0 46200200 */ add.d $f8, $f0, $f0 +/* 05E8F4 8005DCF4 24040002 */ li $a0, 2 +/* 05E8F8 8005DCF8 460021A1 */ cvt.d.s $f6, $f4 +/* 05E8FC 8005DCFC 46283280 */ add.d $f10, $f6, $f8 +/* 05E900 8005DD00 462054A0 */ cvt.s.d $f18, $f10 +/* 05E904 8005DD04 10000002 */ b .L8005DD10 +/* 05E908 8005DD08 E612000C */ swc1 $f18, 0xc($s0) +.L8005DD0C: +/* 05E90C 8005DD0C 24040002 */ li $a0, 2 +.L8005DD10: +/* 05E910 8005DD10 C600000C */ lwc1 $f0, 0xc($s0) +/* 05E914 8005DD14 00000000 */ nop +/* 05E918 8005DD18 4600A03E */ c.le.s $f20, $f0 +/* 05E91C 8005DD1C 00000000 */ nop +/* 05E920 8005DD20 4500000A */ bc1f .L8005DD4C +/* 05E924 8005DD24 00000000 */ nop +.L8005DD28: +/* 05E928 8005DD28 46140101 */ sub.s $f4, $f0, $f20 +/* 05E92C 8005DD2C E604000C */ swc1 $f4, 0xc($s0) +/* 05E930 8005DD30 A4490010 */ sh $t1, 0x10($v0) +/* 05E934 8005DD34 C600000C */ lwc1 $f0, 0xc($s0) +/* 05E938 8005DD38 00000000 */ nop +/* 05E93C 8005DD3C 4600A03E */ c.le.s $f20, $f0 +/* 05E940 8005DD40 00000000 */ nop +/* 05E944 8005DD44 4501FFF8 */ bc1t .L8005DD28 +/* 05E948 8005DD48 00000000 */ nop +.L8005DD4C: +/* 05E94C 8005DD4C 4610003E */ c.le.s $f0, $f16 +/* 05E950 8005DD50 00000000 */ nop +/* 05E954 8005DD54 4500000A */ bc1f .L8005DD80 +/* 05E958 8005DD58 00000000 */ nop +.L8005DD5C: +/* 05E95C 8005DD5C 46140180 */ add.s $f6, $f0, $f20 +/* 05E960 8005DD60 E606000C */ swc1 $f6, 0xc($s0) +/* 05E964 8005DD64 A4490010 */ sh $t1, 0x10($v0) +/* 05E968 8005DD68 C600000C */ lwc1 $f0, 0xc($s0) +/* 05E96C 8005DD6C 00000000 */ nop +/* 05E970 8005DD70 4610003E */ c.le.s $f0, $f16 +/* 05E974 8005DD74 00000000 */ nop +/* 05E978 8005DD78 4501FFF8 */ bc1t .L8005DD5C +/* 05E97C 8005DD7C 00000000 */ nop +.L8005DD80: +/* 05E980 8005DD80 8223003B */ lb $v1, 0x3b($s1) +/* 05E984 8005DD84 00000000 */ nop +/* 05E988 8005DD88 14830011 */ bne $a0, $v1, .L8005DDD0 +/* 05E98C 8005DD8C 00000000 */ nop +/* 05E990 8005DD90 820D01E2 */ lb $t5, 0x1e2($s0) +/* 05E994 8005DD94 3C01C01A */ li $at, 0xC01A0000 # -2.406250 +/* 05E998 8005DD98 15A0000D */ bnez $t5, .L8005DDD0 +/* 05E99C 8005DD9C 00000000 */ nop +/* 05E9A0 8005DDA0 C608002C */ lwc1 $f8, 0x2c($s0) +/* 05E9A4 8005DDA4 44819800 */ mtc1 $at, $f19 +/* 05E9A8 8005DDA8 44809000 */ mtc1 $zero, $f18 +/* 05E9AC 8005DDAC 460042A1 */ cvt.d.s $f10, $f8 +/* 05E9B0 8005DDB0 4632503C */ c.lt.d $f10, $f18 +/* 05E9B4 8005DDB4 24060003 */ li $a2, 3 +/* 05E9B8 8005DDB8 45000005 */ bc1f .L8005DDD0 +/* 05E9BC 8005DDBC 00000000 */ nop +/* 05E9C0 8005DDC0 A226003B */ sb $a2, 0x3b($s1) +/* 05E9C4 8005DDC4 E610000C */ swc1 $f16, 0xc($s0) +/* 05E9C8 8005DDC8 8223003B */ lb $v1, 0x3b($s1) +/* 05E9CC 8005DDCC 00000000 */ nop +.L8005DDD0: +/* 05E9D0 8005DDD0 844E0010 */ lh $t6, 0x10($v0) +/* 05E9D4 8005DDD4 24060003 */ li $a2, 3 +/* 05E9D8 8005DDD8 112E0003 */ beq $t1, $t6, .L8005DDE8 +/* 05E9DC 8005DDDC 24010005 */ li $at, 5 +/* 05E9E0 8005DDE0 1460006A */ bnez $v1, .L8005DF8C +/* 05E9E4 8005DDE4 24010005 */ li $at, 5 +.L8005DDE8: +/* 05E9E8 8005DDE8 14610009 */ bne $v1, $at, .L8005DE10 +/* 05E9EC 8005DDEC 24010001 */ li $at, 1 +/* 05E9F0 8005DDF0 920F01CD */ lbu $t7, 0x1cd($s0) +/* 05E9F4 8005DDF4 00000000 */ nop +/* 05E9F8 8005DDF8 A22F003B */ sb $t7, 0x3b($s1) +/* 05E9FC 8005DDFC E610000C */ swc1 $f16, 0xc($s0) +/* 05EA00 8005DE00 8223003B */ lb $v1, 0x3b($s1) +/* 05EA04 8005DE04 10000062 */ b .L8005DF90 +/* 05EA08 8005DE08 4458F800 */ cfc1 $t8, $31 +/* 05EA0C 8005DE0C 24010001 */ li $at, 1 +.L8005DE10: +/* 05EA10 8005DE10 1461000B */ bne $v1, $at, .L8005DE40 +/* 05EA14 8005DE14 00000000 */ nop +/* 05EA18 8005DE18 921801CD */ lbu $t8, 0x1cd($s0) +/* 05EA1C 8005DE1C 00000000 */ nop +/* 05EA20 8005DE20 17000003 */ bnez $t8, .L8005DE30 +/* 05EA24 8005DE24 00000000 */ nop +/* 05EA28 8005DE28 10000002 */ b .L8005DE34 +/* 05EA2C 8005DE2C A224003B */ sb $a0, 0x3b($s1) +.L8005DE30: +/* 05EA30 8005DE30 A220003B */ sb $zero, 0x3b($s1) +.L8005DE34: +/* 05EA34 8005DE34 8223003B */ lb $v1, 0x3b($s1) +/* 05EA38 8005DE38 10000055 */ b .L8005DF90 +/* 05EA3C 8005DE3C 4458F800 */ cfc1 $t8, $31 +.L8005DE40: +/* 05EA40 8005DE40 14C3000B */ bne $a2, $v1, .L8005DE70 +/* 05EA44 8005DE44 3C01800E */ lui $at, %hi(D_800E6A8C) # $at, 0x800e +/* 05EA48 8005DE48 921901CD */ lbu $t9, 0x1cd($s0) +/* 05EA4C 8005DE4C 24010004 */ li $at, 4 +/* 05EA50 8005DE50 17210003 */ bne $t9, $at, .L8005DE60 +/* 05EA54 8005DE54 240B0004 */ li $t3, 4 +/* 05EA58 8005DE58 10000002 */ b .L8005DE64 +/* 05EA5C 8005DE5C A224003B */ sb $a0, 0x3b($s1) +.L8005DE60: +/* 05EA60 8005DE60 A22B003B */ sb $t3, 0x3b($s1) +.L8005DE64: +/* 05EA64 8005DE64 8223003B */ lb $v1, 0x3b($s1) +/* 05EA68 8005DE68 10000049 */ b .L8005DF90 +/* 05EA6C 8005DE6C 4458F800 */ cfc1 $t8, $31 +.L8005DE70: +/* 05EA70 8005DE70 C604002C */ lwc1 $f4, 0x2c($s0) +/* 05EA74 8005DE74 C4276A88 */ lwc1 $f7, %lo(D_800E6A88)($at) +/* 05EA78 8005DE78 C4266A8C */ lwc1 $f6, %lo(D_800E6A8C)($at) +/* 05EA7C 8005DE7C 46002021 */ cvt.d.s $f0, $f4 +/* 05EA80 8005DE80 4620303C */ c.lt.d $f6, $f0 +/* 05EA84 8005DE84 3C01800E */ lui $at, %hi(D_800E6A94) # $at, 0x800e +/* 05EA88 8005DE88 4500001C */ bc1f .L8005DEFC +/* 05EA8C 8005DE8C 00000000 */ nop +/* 05EA90 8005DE90 C4296A90 */ lwc1 $f9, %lo(D_800E6A90)($at) +/* 05EA94 8005DE94 C4286A94 */ lwc1 $f8, %lo(D_800E6A94)($at) +/* 05EA98 8005DE98 00000000 */ nop +/* 05EA9C 8005DE9C 4628003C */ c.lt.d $f0, $f8 +/* 05EAA0 8005DEA0 00000000 */ nop +/* 05EAA4 8005DEA4 45000015 */ bc1f .L8005DEFC +/* 05EAA8 8005DEA8 00000000 */ nop +/* 05EAAC 8005DEAC 1483000F */ bne $a0, $v1, .L8005DEEC +/* 05EAB0 8005DEB0 240C0001 */ li $t4, 1 +/* 05EAB4 8005DEB4 A22C003B */ sb $t4, 0x3b($s1) +/* 05EAB8 8005DEB8 822E003B */ lb $t6, 0x3b($s1) +/* 05EABC 8005DEBC 8CAD0044 */ lw $t5, 0x44($a1) +/* 05EAC0 8005DEC0 000E78C0 */ sll $t7, $t6, 3 +/* 05EAC4 8005DEC4 01AFC021 */ addu $t8, $t5, $t7 +/* 05EAC8 8005DEC8 8F190004 */ lw $t9, 4($t8) +/* 05EACC 8005DECC 00000000 */ nop +/* 05EAD0 8005DED0 00195900 */ sll $t3, $t9, 4 +/* 05EAD4 8005DED4 256CFFEF */ addiu $t4, $t3, -0x11 +/* 05EAD8 8005DED8 448C5000 */ mtc1 $t4, $f10 +/* 05EADC 8005DEDC 00000000 */ nop +/* 05EAE0 8005DEE0 468054A0 */ cvt.s.w $f18, $f10 +/* 05EAE4 8005DEE4 10000002 */ b .L8005DEF0 +/* 05EAE8 8005DEE8 E612000C */ swc1 $f18, 0xc($s0) +.L8005DEEC: +/* 05EAEC 8005DEEC A220003B */ sb $zero, 0x3b($s1) +.L8005DEF0: +/* 05EAF0 8005DEF0 8223003B */ lb $v1, 0x3b($s1) +/* 05EAF4 8005DEF4 10000026 */ b .L8005DF90 +/* 05EAF8 8005DEF8 4458F800 */ cfc1 $t8, $31 +.L8005DEFC: +/* 05EAFC 8005DEFC 14600006 */ bnez $v1, .L8005DF18 +/* 05EB00 8005DF00 24010004 */ li $at, 4 +/* 05EB04 8005DF04 240E0001 */ li $t6, 1 +/* 05EB08 8005DF08 A22E003B */ sb $t6, 0x3b($s1) +/* 05EB0C 8005DF0C E610000C */ swc1 $f16, 0xc($s0) +/* 05EB10 8005DF10 8223003B */ lb $v1, 0x3b($s1) +/* 05EB14 8005DF14 00000000 */ nop +.L8005DF18: +/* 05EB18 8005DF18 1461001C */ bne $v1, $at, .L8005DF8C +/* 05EB1C 8005DF1C 00000000 */ nop +/* 05EB20 8005DF20 820D01E2 */ lb $t5, 0x1e2($s0) +/* 05EB24 8005DF24 3C01C018 */ li $at, 0xC0180000 # -2.375000 +/* 05EB28 8005DF28 11A00018 */ beqz $t5, .L8005DF8C +/* 05EB2C 8005DF2C 00000000 */ nop +/* 05EB30 8005DF30 C606002C */ lwc1 $f6, 0x2c($s0) +/* 05EB34 8005DF34 44812800 */ mtc1 $at, $f5 +/* 05EB38 8005DF38 44802000 */ mtc1 $zero, $f4 +/* 05EB3C 8005DF3C 46003221 */ cvt.d.s $f8, $f6 +/* 05EB40 8005DF40 4628203C */ c.lt.d $f4, $f8 +/* 05EB44 8005DF44 00000000 */ nop +/* 05EB48 8005DF48 45000010 */ bc1f .L8005DF8C +/* 05EB4C 8005DF4C 00000000 */ nop +/* 05EB50 8005DF50 A226003B */ sb $a2, 0x3b($s1) +/* 05EB54 8005DF54 8238003B */ lb $t8, 0x3b($s1) +/* 05EB58 8005DF58 8CAF0044 */ lw $t7, 0x44($a1) +/* 05EB5C 8005DF5C 0018C8C0 */ sll $t9, $t8, 3 +/* 05EB60 8005DF60 01F95821 */ addu $t3, $t7, $t9 +/* 05EB64 8005DF64 8D6C0004 */ lw $t4, 4($t3) +/* 05EB68 8005DF68 00000000 */ nop +/* 05EB6C 8005DF6C 000C7100 */ sll $t6, $t4, 4 +/* 05EB70 8005DF70 25CDFFEF */ addiu $t5, $t6, -0x11 +/* 05EB74 8005DF74 448D5000 */ mtc1 $t5, $f10 +/* 05EB78 8005DF78 00000000 */ nop +/* 05EB7C 8005DF7C 468054A0 */ cvt.s.w $f18, $f10 +/* 05EB80 8005DF80 E612000C */ swc1 $f18, 0xc($s0) +/* 05EB84 8005DF84 8223003B */ lb $v1, 0x3b($s1) +/* 05EB88 8005DF88 00000000 */ nop +.L8005DF8C: +/* 05EB8C 8005DF8C 4458F800 */ cfc1 $t8, $31 +.L8005DF90: +/* 05EB90 8005DF90 C606000C */ lwc1 $f6, 0xc($s0) +/* 05EB94 8005DF94 37010003 */ ori $at, $t8, 3 +/* 05EB98 8005DF98 38210002 */ xori $at, $at, 2 +/* 05EB9C 8005DF9C 44C1F800 */ ctc1 $at, $31 +/* 05EBA0 8005DFA0 862A0018 */ lh $t2, 0x18($s1) +/* 05EBA4 8005DFA4 46003124 */ cvt.w.s $f4, $f6 +/* 05EBA8 8005DFA8 24010001 */ li $at, 1 +/* 05EBAC 8005DFAC 440F2000 */ mfc1 $t7, $f4 +/* 05EBB0 8005DFB0 44D8F800 */ ctc1 $t8, $31 +/* 05EBB4 8005DFB4 AE200074 */ sw $zero, 0x74($s1) +/* 05EBB8 8005DFB8 10610017 */ beq $v1, $at, .L8005E018 +/* 05EBBC 8005DFBC A62F0018 */ sh $t7, 0x18($s1) +/* 05EBC0 8005DFC0 10830015 */ beq $a0, $v1, .L8005E018 +/* 05EBC4 8005DFC4 000AC903 */ sra $t9, $t2, 4 +/* 05EBC8 8005DFC8 00195C00 */ sll $t3, $t9, 0x10 +/* 05EBCC 8005DFCC 000B5403 */ sra $t2, $t3, 0x10 +/* 05EBD0 8005DFD0 14600002 */ bnez $v1, .L8005DFDC +/* 05EBD4 8005DFD4 24020001 */ li $v0, 1 +/* 05EBD8 8005DFD8 24020003 */ li $v0, 3 +.L8005DFDC: +/* 05EBDC 8005DFDC 1542000E */ bne $t2, $v0, .L8005E018 +/* 05EBE0 8005DFE0 00000000 */ nop +/* 05EBE4 8005DFE4 862D0018 */ lh $t5, 0x18($s1) +/* 05EBE8 8005DFE8 244E0001 */ addiu $t6, $v0, 1 +/* 05EBEC 8005DFEC 000DC103 */ sra $t8, $t5, 4 +/* 05EBF0 8005DFF0 15D80009 */ bne $t6, $t8, .L8005E018 +/* 05EBF4 8005DFF4 24040223 */ li $a0, 547 +/* 05EBF8 8005DFF8 8E25000C */ lw $a1, 0xc($s1) +/* 05EBFC 8005DFFC 8E260010 */ lw $a2, 0x10($s1) +/* 05EC00 8005E000 8E270014 */ lw $a3, 0x14($s1) +/* 05EC04 8005E004 240F0004 */ li $t7, 4 +/* 05EC08 8005E008 AFAF0010 */ sw $t7, 0x10($sp) +/* 05EC0C 8005E00C 0C002556 */ jal func_80009558 +/* 05EC10 8005E010 AFA00014 */ sw $zero, 0x14($sp) +/* 05EC14 8005E014 2409FFFF */ li $t1, -1 +.L8005E018: +/* 05EC18 8005E018 821901D7 */ lb $t9, 0x1d7($s0) +/* 05EC1C 8005E01C 24010007 */ li $at, 7 +/* 05EC20 8005E020 17210010 */ bne $t9, $at, .L8005E064 +/* 05EC24 8005E024 8FA50060 */ lw $a1, 0x60($sp) +/* 05EC28 8005E028 860B0000 */ lh $t3, ($s0) +/* 05EC2C 8005E02C 00000000 */ nop +/* 05EC30 8005E030 152B000C */ bne $t1, $t3, .L8005E064 +/* 05EC34 8005E034 8FA50060 */ lw $a1, 0x60($sp) +/* 05EC38 8005E038 0C008D5A */ jal func_80023568 +/* 05EC3C 8005E03C 00000000 */ nop +/* 05EC40 8005E040 10400007 */ beqz $v0, .L8005E060 +/* 05EC44 8005E044 02202025 */ move $a0, $s1 +/* 05EC48 8005E048 240C00A5 */ li $t4, 165 +/* 05EC4C 8005E04C AFAC0010 */ sw $t4, 0x10($sp) +/* 05EC50 8005E050 02002825 */ move $a1, $s0 +/* 05EC54 8005E054 3C0642C8 */ lui $a2, 0x42c8 +/* 05EC58 8005E058 0C017881 */ jal func_8005E204 +/* 05EC5C 8005E05C 24070089 */ li $a3, 137 +.L8005E060: +/* 05EC60 8005E060 8FA50060 */ lw $a1, 0x60($sp) +.L8005E064: +/* 05EC64 8005E064 0C02BF0F */ jal func_800AFC3C +/* 05EC68 8005E068 02202025 */ move $a0, $s1 +/* 05EC6C 8005E06C 02202025 */ move $a0, $s1 +/* 05EC70 8005E070 02002825 */ move $a1, $s0 +/* 05EC74 8005E074 0C017412 */ jal func_8005D048 +/* 05EC78 8005E078 24060028 */ li $a2, 40 +/* 05EC7C 8005E07C 0C006EB2 */ jal func_8001BAC8 +/* 05EC80 8005E080 00002025 */ move $a0, $zero +/* 05EC84 8005E084 AFA20034 */ sw $v0, 0x34($sp) +/* 05EC88 8005E088 C62A000C */ lwc1 $f10, 0xc($s1) +/* 05EC8C 8005E08C C448000C */ lwc1 $f8, 0xc($v0) +/* 05EC90 8005E090 C6260014 */ lwc1 $f6, 0x14($s1) +/* 05EC94 8005E094 460A4501 */ sub.s $f20, $f8, $f10 +/* 05EC98 8005E098 C4520014 */ lwc1 $f18, 0x14($v0) +/* 05EC9C 8005E09C 4614A102 */ mul.s $f4, $f20, $f20 +/* 05ECA0 8005E0A0 46069381 */ sub.s $f14, $f18, $f6 +/* 05ECA4 8005E0A4 E7AE0050 */ swc1 $f14, 0x50($sp) +/* 05ECA8 8005E0A8 460E7202 */ mul.s $f8, $f14, $f14 +/* 05ECAC 8005E0AC 0C0326B4 */ jal sqrtf +/* 05ECB0 8005E0B0 46082300 */ add.s $f12, $f4, $f8 +/* 05ECB4 8005E0B4 3C01800E */ lui $at, %hi(D_800E6A9C) # $at, 0x800e +/* 05ECB8 8005E0B8 C4336A98 */ lwc1 $f19, %lo(D_800E6A98)($at) +/* 05ECBC 8005E0BC C4326A9C */ lwc1 $f18, %lo(D_800E6A9C)($at) +/* 05ECC0 8005E0C0 460002A1 */ cvt.d.s $f10, $f0 +/* 05ECC4 8005E0C4 4632503C */ c.lt.d $f10, $f18 +/* 05ECC8 8005E0C8 C7AE0050 */ lwc1 $f14, 0x50($sp) +/* 05ECCC 8005E0CC 4500001B */ bc1f .L8005E13C +/* 05ECD0 8005E0D0 00000000 */ nop +/* 05ECD4 8005E0D4 0C01C1D4 */ jal func_80070750 +/* 05ECD8 8005E0D8 4600A306 */ mov.s $f12, $f20 +/* 05ECDC 8005E0DC 862D0000 */ lh $t5, ($s1) +/* 05ECE0 8005E0E0 34018000 */ li $at, 32768 +/* 05ECE4 8005E0E4 31AEFFFF */ andi $t6, $t5, 0xffff +/* 05ECE8 8005E0E8 004E1823 */ subu $v1, $v0, $t6 +/* 05ECEC 8005E0EC 00611821 */ addu $v1, $v1, $at +/* 05ECF0 8005E0F0 34018001 */ li $at, 32769 +/* 05ECF4 8005E0F4 0061082A */ slt $at, $v1, $at +/* 05ECF8 8005E0F8 14200003 */ bnez $at, .L8005E108 +/* 05ECFC 8005E0FC 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 05ED00 8005E100 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 05ED04 8005E104 00611821 */ addu $v1, $v1, $at +.L8005E108: +/* 05ED08 8005E108 28618000 */ slti $at, $v1, -0x8000 +/* 05ED0C 8005E10C 10200002 */ beqz $at, .L8005E118 +/* 05ED10 8005E110 3401FFFF */ li $at, 65535 +/* 05ED14 8005E114 00611821 */ addu $v1, $v1, $at +.L8005E118: +/* 05ED18 8005E118 28610C01 */ slti $at, $v1, 0xc01 +/* 05ED1C 8005E11C 14200003 */ bnez $at, .L8005E12C +/* 05ED20 8005E120 2861F400 */ slti $at, $v1, -0xc00 +/* 05ED24 8005E124 24030C00 */ li $v1, 3072 +/* 05ED28 8005E128 2861F400 */ slti $at, $v1, -0xc00 +.L8005E12C: +/* 05ED2C 8005E12C 10200002 */ beqz $at, .L8005E138 +/* 05ED30 8005E130 00000000 */ nop +/* 05ED34 8005E134 2403F400 */ li $v1, -3072 +.L8005E138: +/* 05ED38 8005E138 A603016C */ sh $v1, 0x16c($s0) +.L8005E13C: +/* 05ED3C 8005E13C 8238003B */ lb $t8, 0x3b($s1) +/* 05ED40 8005E140 3C058012 */ lui $a1, %hi(D_8011D5E0) # $a1, 0x8012 +/* 05ED44 8005E144 2B010002 */ slti $at, $t8, 2 +/* 05ED48 8005E148 1420000B */ bnez $at, .L8005E178 +/* 05ED4C 8005E14C 24A5D5E0 */ addiu $a1, %lo(D_8011D5E0) # addiu $a1, $a1, -0x2a20 +/* 05ED50 8005E150 820F01E7 */ lb $t7, 0x1e7($s0) +/* 05ED54 8005E154 00000000 */ nop +/* 05ED58 8005E158 31F9001F */ andi $t9, $t7, 0x1f +/* 05ED5C 8005E15C 2B21000A */ slti $at, $t9, 0xa +/* 05ED60 8005E160 10200006 */ beqz $at, .L8005E17C +/* 05ED64 8005E164 8FA30034 */ lw $v1, 0x34($sp) +/* 05ED68 8005E168 860B016C */ lh $t3, 0x16c($s0) +/* 05ED6C 8005E16C 00000000 */ nop +/* 05ED70 8005E170 000B6043 */ sra $t4, $t3, 1 +/* 05ED74 8005E174 A60C016C */ sh $t4, 0x16c($s0) +.L8005E178: +/* 05ED78 8005E178 8FA30034 */ lw $v1, 0x34($sp) +.L8005E17C: +/* 05ED7C 8005E17C 00000000 */ nop +/* 05ED80 8005E180 8C62004C */ lw $v0, 0x4c($v1) +/* 05ED84 8005E184 8C700064 */ lw $s0, 0x64($v1) +/* 05ED88 8005E188 8C4D0000 */ lw $t5, ($v0) +/* 05ED8C 8005E18C 00000000 */ nop +/* 05ED90 8005E190 162D000B */ bne $s1, $t5, .L8005E1C0 +/* 05ED94 8005E194 00000000 */ nop +/* 05ED98 8005E198 844E0014 */ lh $t6, 0x14($v0) +/* 05ED9C 8005E19C 00000000 */ nop +/* 05EDA0 8005E1A0 31D80008 */ andi $t8, $t6, 8 +/* 05EDA4 8005E1A4 13000006 */ beqz $t8, .L8005E1C0 +/* 05EDA8 8005E1A8 00000000 */ nop +/* 05EDAC 8005E1AC 822F003B */ lb $t7, 0x3b($s1) +/* 05EDB0 8005E1B0 24010001 */ li $at, 1 +/* 05EDB4 8005E1B4 15E10002 */ bne $t7, $at, .L8005E1C0 +/* 05EDB8 8005E1B8 24190004 */ li $t9, 4 +/* 05EDBC 8005E1BC A2190187 */ sb $t9, 0x187($s0) +.L8005E1C0: +/* 05EDC0 8005E1C0 820B01D8 */ lb $t3, 0x1d8($s0) +/* 05EDC4 8005E1C4 00000000 */ nop +/* 05EDC8 8005E1C8 11600008 */ beqz $t3, .L8005E1EC +/* 05EDCC 8005E1CC 8FBF002C */ lw $ra, 0x2c($sp) +/* 05EDD0 8005E1D0 80AC0000 */ lb $t4, ($a1) +/* 05EDD4 8005E1D4 240D0001 */ li $t5, 1 +/* 05EDD8 8005E1D8 15800003 */ bnez $t4, .L8005E1E8 +/* 05EDDC 8005E1DC 02002025 */ move $a0, $s0 +/* 05EDE0 8005E1E0 0C0172DA */ jal func_8005CB68 +/* 05EDE4 8005E1E4 A0AD0000 */ sb $t5, ($a1) +.L8005E1E8: +/* 05EDE8 8005E1E8 8FBF002C */ lw $ra, 0x2c($sp) +.L8005E1EC: +/* 05EDEC 8005E1EC C7B50018 */ lwc1 $f21, 0x18($sp) +/* 05EDF0 8005E1F0 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 05EDF4 8005E1F4 8FB00024 */ lw $s0, 0x24($sp) +/* 05EDF8 8005E1F8 8FB10028 */ lw $s1, 0x28($sp) +/* 05EDFC 8005E1FC 03E00008 */ jr $ra +/* 05EE00 8005E200 27BD0060 */ addiu $sp, $sp, 0x60 + diff --git a/asm/non_matchings/unknown_05DCD0/func_8005E204.s b/asm/non_matchings/unknown_05DCD0/func_8005E204.s new file mode 100644 index 00000000..239a0430 --- /dev/null +++ b/asm/non_matchings/unknown_05DCD0/func_8005E204.s @@ -0,0 +1,184 @@ +glabel func_8005E204 +/* 05EE04 8005E204 27BDFF78 */ addiu $sp, $sp, -0x88 +/* 05EE08 8005E208 AFB70044 */ sw $s7, 0x44($sp) +/* 05EE0C 8005E20C AFB30034 */ sw $s3, 0x34($sp) +/* 05EE10 8005E210 E7B40024 */ swc1 $f20, 0x24($sp) +/* 05EE14 8005E214 4486A000 */ mtc1 $a2, $f20 +/* 05EE18 8005E218 00809825 */ move $s3, $a0 +/* 05EE1C 8005E21C 00A0B825 */ move $s7, $a1 +/* 05EE20 8005E220 AFBF004C */ sw $ra, 0x4c($sp) +/* 05EE24 8005E224 AFB00028 */ sw $s0, 0x28($sp) +/* 05EE28 8005E228 00E08025 */ move $s0, $a3 +/* 05EE2C 8005E22C AFBE0048 */ sw $fp, 0x48($sp) +/* 05EE30 8005E230 AFB60040 */ sw $s6, 0x40($sp) +/* 05EE34 8005E234 AFB5003C */ sw $s5, 0x3c($sp) +/* 05EE38 8005E238 AFB40038 */ sw $s4, 0x38($sp) +/* 05EE3C 8005E23C AFB20030 */ sw $s2, 0x30($sp) +/* 05EE40 8005E240 AFB1002C */ sw $s1, 0x2c($sp) +/* 05EE44 8005E244 E7B50020 */ swc1 $f21, 0x20($sp) +/* 05EE48 8005E248 27A5007C */ addiu $a1, $sp, 0x7c +/* 05EE4C 8005E24C 0C003A62 */ jal func_8000E988 +/* 05EE50 8005E250 27A40080 */ addiu $a0, $sp, 0x80 +/* 05EE54 8005E254 320F0100 */ andi $t7, $s0, 0x100 +/* 05EE58 8005E258 000FC043 */ sra $t8, $t7, 1 +/* 05EE5C 8005E25C 37190008 */ ori $t9, $t8, 8 +/* 05EE60 8005E260 A3B00064 */ sb $s0, 0x64($sp) +/* 05EE64 8005E264 A3B90065 */ sb $t9, 0x65($sp) +/* 05EE68 8005E268 C6E60038 */ lwc1 $f6, 0x38($s7) +/* 05EE6C 8005E26C C664000C */ lwc1 $f4, 0xc($s3) +/* 05EE70 8005E270 46143202 */ mul.s $f8, $f6, $f20 +/* 05EE74 8005E274 8FAE007C */ lw $t6, 0x7c($sp) +/* 05EE78 8005E278 8FBE0098 */ lw $fp, 0x98($sp) +/* 05EE7C 8005E27C 0000A825 */ move $s5, $zero +/* 05EE80 8005E280 46082281 */ sub.s $f10, $f4, $f8 +/* 05EE84 8005E284 4448F800 */ cfc1 $t0, $31 +/* 05EE88 8005E288 00000000 */ nop +/* 05EE8C 8005E28C 35010003 */ ori $at, $t0, 3 +/* 05EE90 8005E290 38210002 */ xori $at, $at, 2 +/* 05EE94 8005E294 44C1F800 */ ctc1 $at, $31 +/* 05EE98 8005E298 00000000 */ nop +/* 05EE9C 8005E29C 46005424 */ cvt.w.s $f16, $f10 +/* 05EEA0 8005E2A0 44098000 */ mfc1 $t1, $f16 +/* 05EEA4 8005E2A4 44C8F800 */ ctc1 $t0, $31 +/* 05EEA8 8005E2A8 A7A90066 */ sh $t1, 0x66($sp) +/* 05EEAC 8005E2AC C6E6003C */ lwc1 $f6, 0x3c($s7) +/* 05EEB0 8005E2B0 C6720010 */ lwc1 $f18, 0x10($s3) +/* 05EEB4 8005E2B4 46143102 */ mul.s $f4, $f6, $f20 +/* 05EEB8 8005E2B8 46049201 */ sub.s $f8, $f18, $f4 +/* 05EEBC 8005E2BC 444AF800 */ cfc1 $t2, $31 +/* 05EEC0 8005E2C0 00000000 */ nop +/* 05EEC4 8005E2C4 35410003 */ ori $at, $t2, 3 +/* 05EEC8 8005E2C8 38210002 */ xori $at, $at, 2 +/* 05EECC 8005E2CC 44C1F800 */ ctc1 $at, $31 +/* 05EED0 8005E2D0 00000000 */ nop +/* 05EED4 8005E2D4 460042A4 */ cvt.w.s $f10, $f8 +/* 05EED8 8005E2D8 440B5000 */ mfc1 $t3, $f10 +/* 05EEDC 8005E2DC 44CAF800 */ ctc1 $t2, $31 +/* 05EEE0 8005E2E0 A7AB0068 */ sh $t3, 0x68($sp) +/* 05EEE4 8005E2E4 C6E60040 */ lwc1 $f6, 0x40($s7) +/* 05EEE8 8005E2E8 C6700014 */ lwc1 $f16, 0x14($s3) +/* 05EEEC 8005E2EC 46143482 */ mul.s $f18, $f6, $f20 +/* 05EEF0 8005E2F0 46128101 */ sub.s $f4, $f16, $f18 +/* 05EEF4 8005E2F4 444CF800 */ cfc1 $t4, $31 +/* 05EEF8 8005E2F8 00000000 */ nop +/* 05EEFC 8005E2FC 35810003 */ ori $at, $t4, 3 +/* 05EF00 8005E300 38210002 */ xori $at, $at, 2 +/* 05EF04 8005E304 44C1F800 */ ctc1 $at, $31 +/* 05EF08 8005E308 3C014010 */ li $at, 0x40100000 # 2.250000 +/* 05EF0C 8005E30C 46002224 */ cvt.w.s $f8, $f4 +/* 05EF10 8005E310 440D4000 */ mfc1 $t5, $f8 +/* 05EF14 8005E314 44CCF800 */ ctc1 $t4, $31 +/* 05EF18 8005E318 19C00058 */ blez $t6, .L8005E47C +/* 05EF1C 8005E31C A7AD006A */ sh $t5, 0x6a($sp) +/* 05EF20 8005E320 4481A800 */ mtc1 $at, $f21 +/* 05EF24 8005E324 4480A000 */ mtc1 $zero, $f20 +/* 05EF28 8005E328 0040B025 */ move $s6, $v0 +.L8005E32C: +/* 05EF2C 8005E32C 8ED10000 */ lw $s1, ($s6) +/* 05EF30 8005E330 2401006B */ li $at, 107 +/* 05EF34 8005E334 862F0048 */ lh $t7, 0x48($s1) +/* 05EF38 8005E338 00000000 */ nop +/* 05EF3C 8005E33C 15E1004B */ bne $t7, $at, .L8005E46C +/* 05EF40 8005E340 8FAF007C */ lw $t7, 0x7c($sp) +/* 05EF44 8005E344 8E32003C */ lw $s2, 0x3c($s1) +/* 05EF48 8005E348 82F80193 */ lb $t8, 0x193($s7) +/* 05EF4C 8005E34C 82420008 */ lb $v0, 8($s2) +/* 05EF50 8005E350 27190001 */ addiu $t9, $t8, 1 +/* 05EF54 8005E354 13220003 */ beq $t9, $v0, .L8005E364 +/* 05EF58 8005E358 00000000 */ nop +/* 05EF5C 8005E35C 14400043 */ bnez $v0, .L8005E46C +/* 05EF60 8005E360 8FAF007C */ lw $t7, 0x7c($sp) +.L8005E364: +/* 05EF64 8005E364 C62A000C */ lwc1 $f10, 0xc($s1) +/* 05EF68 8005E368 C666000C */ lwc1 $f6, 0xc($s3) +/* 05EF6C 8005E36C C6300010 */ lwc1 $f16, 0x10($s1) +/* 05EF70 8005E370 46065001 */ sub.s $f0, $f10, $f6 +/* 05EF74 8005E374 C6720010 */ lwc1 $f18, 0x10($s3) +/* 05EF78 8005E378 46000282 */ mul.s $f10, $f0, $f0 +/* 05EF7C 8005E37C 46128081 */ sub.s $f2, $f16, $f18 +/* 05EF80 8005E380 C6240014 */ lwc1 $f4, 0x14($s1) +/* 05EF84 8005E384 C6680014 */ lwc1 $f8, 0x14($s3) +/* 05EF88 8005E388 46021182 */ mul.s $f6, $f2, $f2 +/* 05EF8C 8005E38C 46082381 */ sub.s $f14, $f4, $f8 +/* 05EF90 8005E390 460E7482 */ mul.s $f18, $f14, $f14 +/* 05EF94 8005E394 46065400 */ add.s $f16, $f10, $f6 +/* 05EF98 8005E398 0C0326B4 */ jal sqrtf +/* 05EF9C 8005E39C 46128300 */ add.s $f12, $f16, $f18 +/* 05EFA0 8005E3A0 82480009 */ lb $t0, 9($s2) +/* 05EFA4 8005E3A4 46000121 */ cvt.d.s $f4, $f0 +/* 05EFA8 8005E3A8 310900FF */ andi $t1, $t0, 0xff +/* 05EFAC 8005E3AC 44894000 */ mtc1 $t1, $f8 +/* 05EFB0 8005E3B0 00000000 */ nop +/* 05EFB4 8005E3B4 468042A0 */ cvt.s.w $f10, $f8 +/* 05EFB8 8005E3B8 460051A1 */ cvt.d.s $f6, $f10 +/* 05EFBC 8005E3BC 46343402 */ mul.d $f16, $f6, $f20 +/* 05EFC0 8005E3C0 4630203C */ c.lt.d $f4, $f16 +/* 05EFC4 8005E3C4 00000000 */ nop +/* 05EFC8 8005E3C8 45000026 */ bc1f .L8005E464 +/* 05EFCC 8005E3CC 00000000 */ nop +/* 05EFD0 8005E3D0 8E2A0078 */ lw $t2, 0x78($s1) +/* 05EFD4 8005E3D4 240B0001 */ li $t3, 1 +/* 05EFD8 8005E3D8 15400023 */ bnez $t2, .L8005E468 +/* 05EFDC 8005E3DC 27A40064 */ addiu $a0, $sp, 0x64 +/* 05EFE0 8005E3E0 AE2B0078 */ sw $t3, 0x78($s1) +/* 05EFE4 8005E3E4 0C003A95 */ jal func_8000EA54 +/* 05EFE8 8005E3E8 24050001 */ li $a1, 1 +/* 05EFEC 8005E3EC 1040001E */ beqz $v0, .L8005E468 +/* 05EFF0 8005E3F0 00408025 */ move $s0, $v0 +/* 05EFF4 8005E3F4 AC40003C */ sw $zero, 0x3c($v0) +/* 05EFF8 8005E3F8 C672001C */ lwc1 $f18, 0x1c($s3) +/* 05EFFC 8005E3FC 00002025 */ move $a0, $zero +/* 05F000 8005E400 E452001C */ swc1 $f18, 0x1c($v0) +/* 05F004 8005E404 C6680020 */ lwc1 $f8, 0x20($s3) +/* 05F008 8005E408 240500FF */ li $a1, 255 +/* 05F00C 8005E40C E4480020 */ swc1 $f8, 0x20($v0) +/* 05F010 8005E410 C66A0024 */ lwc1 $f10, 0x24($s3) +/* 05F014 8005E414 AC510078 */ sw $s1, 0x78($v0) +/* 05F018 8005E418 E44A0024 */ swc1 $f10, 0x24($v0) +/* 05F01C 8005E41C 824C000A */ lb $t4, 0xa($s2) +/* 05F020 8005E420 33D4FFFF */ andi $s4, $fp, 0xffff +/* 05F024 8005E424 000C6900 */ sll $t5, $t4, 4 +/* 05F028 8005E428 01AC6823 */ subu $t5, $t5, $t4 +/* 05F02C 8005E42C 000D6880 */ sll $t5, $t5, 2 +/* 05F030 8005E430 0C01BE53 */ jal func_8006F94C +/* 05F034 8005E434 AC4D007C */ sw $t5, 0x7c($v0) +/* 05F038 8005E438 8E05000C */ lw $a1, 0xc($s0) +/* 05F03C 8005E43C 8E060010 */ lw $a2, 0x10($s0) +/* 05F040 8005E440 8E070014 */ lw $a3, 0x14($s0) +/* 05F044 8005E444 A6020018 */ sh $v0, 0x18($s0) +/* 05F048 8005E448 240E0004 */ li $t6, 4 +/* 05F04C 8005E44C AFAE0010 */ sw $t6, 0x10($sp) +/* 05F050 8005E450 AFA00014 */ sw $zero, 0x14($sp) +/* 05F054 8005E454 0C002556 */ jal func_80009558 +/* 05F058 8005E458 3284FFFF */ andi $a0, $s4, 0xffff +/* 05F05C 8005E45C 10000003 */ b .L8005E46C +/* 05F060 8005E460 8FAF007C */ lw $t7, 0x7c($sp) +.L8005E464: +/* 05F064 8005E464 AE200078 */ sw $zero, 0x78($s1) +.L8005E468: +/* 05F068 8005E468 8FAF007C */ lw $t7, 0x7c($sp) +.L8005E46C: +/* 05F06C 8005E46C 26B50001 */ addiu $s5, $s5, 1 +/* 05F070 8005E470 02AF082A */ slt $at, $s5, $t7 +/* 05F074 8005E474 1420FFAD */ bnez $at, .L8005E32C +/* 05F078 8005E478 26D60004 */ addiu $s6, $s6, 4 +.L8005E47C: +/* 05F07C 8005E47C 8FBF004C */ lw $ra, 0x4c($sp) +/* 05F080 8005E480 C7B50020 */ lwc1 $f21, 0x20($sp) +/* 05F084 8005E484 C7B40024 */ lwc1 $f20, 0x24($sp) +/* 05F088 8005E488 8FB00028 */ lw $s0, 0x28($sp) +/* 05F08C 8005E48C 8FB1002C */ lw $s1, 0x2c($sp) +/* 05F090 8005E490 8FB20030 */ lw $s2, 0x30($sp) +/* 05F094 8005E494 8FB30034 */ lw $s3, 0x34($sp) +/* 05F098 8005E498 8FB40038 */ lw $s4, 0x38($sp) +/* 05F09C 8005E49C 8FB5003C */ lw $s5, 0x3c($sp) +/* 05F0A0 8005E4A0 8FB60040 */ lw $s6, 0x40($sp) +/* 05F0A4 8005E4A4 8FB70044 */ lw $s7, 0x44($sp) +/* 05F0A8 8005E4A8 8FBE0048 */ lw $fp, 0x48($sp) +/* 05F0AC 8005E4AC 03E00008 */ jr $ra +/* 05F0B0 8005E4B0 27BD0088 */ addiu $sp, $sp, 0x88 + +/* 05F0B4 8005E4B4 00000000 */ nop +/* 05F0B8 8005E4B8 00000000 */ nop +/* 05F0BC 8005E4BC 00000000 */ nop + diff --git a/asm/unknown_05F0C0.s b/asm/non_matchings/unknown_05F0C0/func_8005E4C0.s old mode 100755 new mode 100644 similarity index 98% rename from asm/unknown_05F0C0.s rename to asm/non_matchings/unknown_05F0C0/func_8005E4C0.s index f645c53e..e1ae402e --- a/asm/unknown_05F0C0.s +++ b/asm/non_matchings/unknown_05F0C0/func_8005E4C0.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_8005E4C0 /* 05F0C0 8005E4C0 27BDFFA8 */ addiu $sp, $sp, -0x58 /* 05F0C4 8005E4C4 AFA40058 */ sw $a0, 0x58($sp) @@ -406,3 +398,4 @@ glabel func_8005E4C0 /* 05F688 8005EA88 00000000 */ nop /* 05F68C 8005EA8C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_05F690/func_8005EA90.s b/asm/non_matchings/unknown_05F690/func_8005EA90.s new file mode 100644 index 00000000..f9a84b2b --- /dev/null +++ b/asm/non_matchings/unknown_05F690/func_8005EA90.s @@ -0,0 +1,587 @@ +glabel func_8005EA90 +/* 05F690 8005EA90 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 05F694 8005EA94 AFA40040 */ sw $a0, 0x40($sp) +/* 05F698 8005EA98 AFBF0024 */ sw $ra, 0x24($sp) +/* 05F69C 8005EA9C AFB10020 */ sw $s1, 0x20($sp) +/* 05F6A0 8005EAA0 AFB0001C */ sw $s0, 0x1c($sp) +/* 05F6A4 8005EAA4 3C04800E */ lui $a0, %hi(D_800DCE60) # $a0, 0x800e +/* 05F6A8 8005EAA8 00E08025 */ move $s0, $a3 +/* 05F6AC 8005EAAC 00C08825 */ move $s1, $a2 +/* 05F6B0 8005EAB0 AFA50044 */ sw $a1, 0x44($sp) +/* 05F6B4 8005EAB4 0C01729E */ jal func_8005CA78 +/* 05F6B8 8005EAB8 2484CE60 */ addiu $a0, %lo(D_800DCE60) # addiu $a0, $a0, -0x31a0 +/* 05F6BC 8005EABC A20001EC */ sb $zero, 0x1ec($s0) +/* 05F6C0 8005EAC0 822E003B */ lb $t6, 0x3b($s1) +/* 05F6C4 8005EAC4 3C01800E */ lui $at, %hi(D_800E6AB4) # $at, 0x800e +/* 05F6C8 8005EAC8 A7AE003E */ sh $t6, 0x3e($sp) +/* 05F6CC 8005EACC 862F0018 */ lh $t7, 0x18($s1) +/* 05F6D0 8005EAD0 C4276AB0 */ lwc1 $f7, %lo(D_800E6AB0)($at) +/* 05F6D4 8005EAD4 A7AF003C */ sh $t7, 0x3c($sp) +/* 05F6D8 8005EAD8 8618016A */ lh $t8, 0x16a($s0) +/* 05F6DC 8005EADC C4266AB4 */ lwc1 $f6, %lo(D_800E6AB4)($at) +/* 05F6E0 8005EAE0 A7B8003A */ sh $t8, 0x3a($sp) +/* 05F6E4 8005EAE4 C604002C */ lwc1 $f4, 0x2c($s0) +/* 05F6E8 8005EAE8 00000000 */ nop +/* 05F6EC 8005EAEC 46002021 */ cvt.d.s $f0, $f4 +/* 05F6F0 8005EAF0 4626003C */ c.lt.d $f0, $f6 +/* 05F6F4 8005EAF4 00000000 */ nop +/* 05F6F8 8005EAF8 45000009 */ bc1f .L8005EB20 +/* 05F6FC 8005EAFC 3C01800E */ lui $at, %hi(D_800E6ABC) # $at, 0x800e +/* 05F700 8005EB00 C4296AB8 */ lwc1 $f9, %lo(D_800E6AB8)($at) +/* 05F704 8005EB04 C4286ABC */ lwc1 $f8, %lo(D_800E6ABC)($at) +/* 05F708 8005EB08 8FB90054 */ lw $t9, 0x54($sp) +/* 05F70C 8005EB0C 4620403C */ c.lt.d $f8, $f0 +/* 05F710 8005EB10 00000000 */ nop +/* 05F714 8005EB14 45000002 */ bc1f .L8005EB20 +/* 05F718 8005EB18 00000000 */ nop +/* 05F71C 8005EB1C AF200000 */ sw $zero, ($t9) +.L8005EB20: +/* 05F720 8005EB20 820A01D8 */ lb $t2, 0x1d8($s0) +/* 05F724 8005EB24 24010001 */ li $at, 1 +/* 05F728 8005EB28 1541000C */ bne $t2, $at, .L8005EB5C +/* 05F72C 8005EB2C 8FA30058 */ lw $v1, 0x58($sp) +/* 05F730 8005EB30 0C008D5A */ jal func_80023568 +/* 05F734 8005EB34 00000000 */ nop +/* 05F738 8005EB38 10400008 */ beqz $v0, .L8005EB5C +/* 05F73C 8005EB3C 8FA30058 */ lw $v1, 0x58($sp) +/* 05F740 8005EB40 0C008500 */ jal func_80021400 +/* 05F744 8005EB44 24040082 */ li $a0, 130 +/* 05F748 8005EB48 820B01D8 */ lb $t3, 0x1d8($s0) +/* 05F74C 8005EB4C 00000000 */ nop +/* 05F750 8005EB50 256C0001 */ addiu $t4, $t3, 1 +/* 05F754 8005EB54 A20C01D8 */ sb $t4, 0x1d8($s0) +/* 05F758 8005EB58 8FA30058 */ lw $v1, 0x58($sp) +.L8005EB5C: +/* 05F75C 8005EB5C 24040064 */ li $a0, 100 +/* 05F760 8005EB60 8C690000 */ lw $t1, ($v1) +/* 05F764 8005EB64 00000000 */ nop +/* 05F768 8005EB68 15240002 */ bne $t1, $a0, .L8005EB74 +/* 05F76C 8005EB6C 3C018012 */ lui $at, %hi(D_8011D600) # $at, 0x8012 +/* 05F770 8005EB70 A020D600 */ sb $zero, %lo(D_8011D600)($at) +.L8005EB74: +/* 05F774 8005EB74 860D0000 */ lh $t5, ($s0) +/* 05F778 8005EB78 2408FFFF */ li $t0, -1 +/* 05F77C 8005EB7C 150D001E */ bne $t0, $t5, .L8005EBF8 +/* 05F780 8005EB80 A20001F5 */ sb $zero, 0x1f5($s0) +/* 05F784 8005EB84 8C620000 */ lw $v0, ($v1) +/* 05F788 8005EB88 00000000 */ nop +/* 05F78C 8005EB8C 1082001A */ beq $a0, $v0, .L8005EBF8 +/* 05F790 8005EB90 244EFFE2 */ addiu $t6, $v0, -0x1e +/* 05F794 8005EB94 05C10016 */ bgez $t6, .L8005EBF0 +/* 05F798 8005EB98 AC6E0000 */ sw $t6, ($v1) +/* 05F79C 8005EB9C 3C188012 */ lui $t8, %hi(D_8011D601) # $t8, 0x8012 +/* 05F7A0 8005EBA0 8318D601 */ lb $t8, %lo(D_8011D601)($t8) +/* 05F7A4 8005EBA4 00002025 */ move $a0, $zero +/* 05F7A8 8005EBA8 17000008 */ bnez $t8, .L8005EBCC +/* 05F7AC 8005EBAC 8FA20050 */ lw $v0, 0x50($sp) +/* 05F7B0 8005EBB0 0C0172C1 */ jal func_8005CB04 +/* 05F7B4 8005EBB4 AFA90028 */ sw $t1, 0x28($sp) +/* 05F7B8 8005EBB8 8FA30058 */ lw $v1, 0x58($sp) +/* 05F7BC 8005EBBC 8FA90028 */ lw $t1, 0x28($sp) +/* 05F7C0 8005EBC0 2419000A */ li $t9, 10 +/* 05F7C4 8005EBC4 A21901D3 */ sb $t9, 0x1d3($s0) +/* 05F7C8 8005EBC8 8FA20050 */ lw $v0, 0x50($sp) +.L8005EBCC: +/* 05F7CC 8005EBCC 240A0001 */ li $t2, 1 +/* 05F7D0 8005EBD0 3C018012 */ lui $at, %hi(D_8011D601) # $at, 0x8012 +/* 05F7D4 8005EBD4 A02AD601 */ sb $t2, %lo(D_8011D601)($at) +/* 05F7D8 8005EBD8 AC600000 */ sw $zero, ($v1) +/* 05F7DC 8005EBDC 8C4B0000 */ lw $t3, ($v0) +/* 05F7E0 8005EBE0 00000000 */ nop +/* 05F7E4 8005EBE4 356C8000 */ ori $t4, $t3, 0x8000 +/* 05F7E8 8005EBE8 10000003 */ b .L8005EBF8 +/* 05F7EC 8005EBEC AC4C0000 */ sw $t4, ($v0) +.L8005EBF0: +/* 05F7F0 8005EBF0 3C018012 */ lui $at, %hi(D_8011D601) # $at, 0x8012 +/* 05F7F4 8005EBF4 A020D601 */ sb $zero, %lo(D_8011D601)($at) +.L8005EBF8: +/* 05F7F8 8005EBF8 240D000C */ li $t5, 12 +/* 05F7FC 8005EBFC A20D01D6 */ sb $t5, 0x1d6($s0) +/* 05F800 8005EC00 8FA50044 */ lw $a1, 0x44($sp) +/* 05F804 8005EC04 8FA40040 */ lw $a0, 0x40($sp) +/* 05F808 8005EC08 AFA90028 */ sw $t1, 0x28($sp) +/* 05F80C 8005EC0C 02203025 */ move $a2, $s1 +/* 05F810 8005EC10 0C0125E5 */ jal func_80049794 +/* 05F814 8005EC14 02003825 */ move $a3, $s0 +/* 05F818 8005EC18 8FA30058 */ lw $v1, 0x58($sp) +/* 05F81C 8005EC1C 8FA90028 */ lw $t1, 0x28($sp) +/* 05F820 8005EC20 820E01D7 */ lb $t6, 0x1d7($s0) +/* 05F824 8005EC24 00000000 */ nop +/* 05F828 8005EC28 A20E01D6 */ sb $t6, 0x1d6($s0) +/* 05F82C 8005EC2C AC690000 */ sw $t1, ($v1) +/* 05F830 8005EC30 AE200074 */ sw $zero, 0x74($s1) +/* 05F834 8005EC34 87AF003A */ lh $t7, 0x3a($sp) +/* 05F838 8005EC38 00000000 */ nop +/* 05F83C 8005EC3C A60F016A */ sh $t7, 0x16a($s0) +/* 05F840 8005EC40 87B8003E */ lh $t8, 0x3e($sp) +/* 05F844 8005EC44 00000000 */ nop +/* 05F848 8005EC48 A238003B */ sb $t8, 0x3b($s1) +/* 05F84C 8005EC4C 87B9003C */ lh $t9, 0x3c($sp) +/* 05F850 8005EC50 00000000 */ nop +/* 05F854 8005EC54 A6390018 */ sh $t9, 0x18($s1) +/* 05F858 8005EC58 820A0187 */ lb $t2, 0x187($s0) +/* 05F85C 8005EC5C 00000000 */ nop +/* 05F860 8005EC60 11400027 */ beqz $t2, .L8005ED00 +/* 05F864 8005EC64 00000000 */ nop +/* 05F868 8005EC68 822B003B */ lb $t3, 0x3b($s1) +/* 05F86C 8005EC6C 24010005 */ li $at, 5 +/* 05F870 8005EC70 11610023 */ beq $t3, $at, .L8005ED00 +/* 05F874 8005EC74 00000000 */ nop +/* 05F878 8005EC78 0C0172C1 */ jal func_8005CB04 +/* 05F87C 8005EC7C 24040001 */ li $a0, 1 +/* 05F880 8005EC80 24040011 */ li $a0, 17 +/* 05F884 8005EC84 0C000741 */ jal func_80001D04 +/* 05F888 8005EC88 00002825 */ move $a1, $zero +/* 05F88C 8005EC8C 3C014140 */ li $at, 0x41400000 # 12.000000 +/* 05F890 8005EC90 44816000 */ mtc1 $at, $f12 +/* 05F894 8005EC94 0C01A7CA */ jal func_80069F28 +/* 05F898 8005EC98 00000000 */ nop +/* 05F89C 8005EC9C 3C01800E */ lui $at, %hi(D_800E6AC4) # $at, 0x800e +/* 05F8A0 8005ECA0 C62A001C */ lwc1 $f10, 0x1c($s1) +/* 05F8A4 8005ECA4 C4216AC0 */ lwc1 $f1, %lo(D_800E6AC0)($at) +/* 05F8A8 8005ECA8 C4206AC4 */ lwc1 $f0, %lo(D_800E6AC4)($at) +/* 05F8AC 8005ECAC 46005121 */ cvt.d.s $f4, $f10 +/* 05F8B0 8005ECB0 46202182 */ mul.d $f6, $f4, $f0 +/* 05F8B4 8005ECB4 C62A0024 */ lwc1 $f10, 0x24($s1) +/* 05F8B8 8005ECB8 44809000 */ mtc1 $zero, $f18 +/* 05F8BC 8005ECBC 46005121 */ cvt.d.s $f4, $f10 +/* 05F8C0 8005ECC0 240C0005 */ li $t4, 5 +/* 05F8C4 8005ECC4 46203220 */ cvt.s.d $f8, $f6 +/* 05F8C8 8005ECC8 A22C003B */ sb $t4, 0x3b($s1) +/* 05F8CC 8005ECCC 46202182 */ mul.d $f6, $f4, $f0 +/* 05F8D0 8005ECD0 E628001C */ swc1 $f8, 0x1c($s1) +/* 05F8D4 8005ECD4 3C014010 */ li $at, 0x40100000 # 2.250000 +/* 05F8D8 8005ECD8 46203220 */ cvt.s.d $f8, $f6 +/* 05F8DC 8005ECDC 44803000 */ mtc1 $zero, $f6 +/* 05F8E0 8005ECE0 E6280024 */ swc1 $f8, 0x24($s1) +/* 05F8E4 8005ECE4 E612000C */ swc1 $f18, 0xc($s0) +/* 05F8E8 8005ECE8 C62A0020 */ lwc1 $f10, 0x20($s1) +/* 05F8EC 8005ECEC 44813800 */ mtc1 $at, $f7 +/* 05F8F0 8005ECF0 46005121 */ cvt.d.s $f4, $f10 +/* 05F8F4 8005ECF4 46262200 */ add.d $f8, $f4, $f6 +/* 05F8F8 8005ECF8 462042A0 */ cvt.s.d $f10, $f8 +/* 05F8FC 8005ECFC E62A0020 */ swc1 $f10, 0x20($s1) +.L8005ED00: +/* 05F900 8005ED00 8E0D0148 */ lw $t5, 0x148($s0) +/* 05F904 8005ED04 A2000187 */ sb $zero, 0x187($s0) +/* 05F908 8005ED08 11A00019 */ beqz $t5, .L8005ED70 +/* 05F90C 8005ED0C 00000000 */ nop +/* 05F910 8005ED10 C620001C */ lwc1 $f0, 0x1c($s1) +/* 05F914 8005ED14 C62E0024 */ lwc1 $f14, 0x24($s1) +/* 05F918 8005ED18 46000082 */ mul.s $f2, $f0, $f0 +/* 05F91C 8005ED1C 00000000 */ nop +/* 05F920 8005ED20 460E7402 */ mul.s $f16, $f14, $f14 +/* 05F924 8005ED24 00000000 */ nop +/* 05F928 8005ED28 46021102 */ mul.s $f4, $f2, $f2 +/* 05F92C 8005ED2C 00000000 */ nop +/* 05F930 8005ED30 46108182 */ mul.s $f6, $f16, $f16 +/* 05F934 8005ED34 0C0326B4 */ jal sqrtf +/* 05F938 8005ED38 46062300 */ add.s $f12, $f4, $f6 +/* 05F93C 8005ED3C 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 05F940 8005ED40 44814800 */ mtc1 $at, $f9 +/* 05F944 8005ED44 44804000 */ mtc1 $zero, $f8 +/* 05F948 8005ED48 46000087 */ neg.s $f2, $f0 +/* 05F94C 8005ED4C 460012A1 */ cvt.d.s $f10, $f2 +/* 05F950 8005ED50 462A403C */ c.lt.d $f8, $f10 +/* 05F954 8005ED54 44809000 */ mtc1 $zero, $f18 +/* 05F958 8005ED58 45000005 */ bc1f .L8005ED70 +/* 05F95C 8005ED5C E602002C */ swc1 $f2, 0x2c($s0) +/* 05F960 8005ED60 E612002C */ swc1 $f18, 0x2c($s0) +/* 05F964 8005ED64 E632001C */ swc1 $f18, 0x1c($s1) +/* 05F968 8005ED68 E6320020 */ swc1 $f18, 0x20($s1) +/* 05F96C 8005ED6C E6320024 */ swc1 $f18, 0x24($s1) +.L8005ED70: +/* 05F970 8005ED70 82040192 */ lb $a0, 0x192($s0) +/* 05F974 8005ED74 920501C8 */ lbu $a1, 0x1c8($s0) +/* 05F978 8005ED78 0C006E87 */ jal func_8001BA1C +/* 05F97C 8005ED7C A7A00038 */ sh $zero, 0x38($sp) +/* 05F980 8005ED80 820E01CA */ lb $t6, 0x1ca($s0) +/* 05F984 8005ED84 87A60038 */ lh $a2, 0x38($sp) +/* 05F988 8005ED88 004E7821 */ addu $t7, $v0, $t6 +/* 05F98C 8005ED8C 81F80036 */ lb $t8, 0x36($t7) +/* 05F990 8005ED90 24090001 */ li $t1, 1 +/* 05F994 8005ED94 44809000 */ mtc1 $zero, $f18 +/* 05F998 8005ED98 15380004 */ bne $t1, $t8, .L8005EDAC +/* 05F99C 8005ED9C 2408FFFF */ li $t0, -1 +/* 05F9A0 8005EDA0 00093400 */ sll $a2, $t1, 0x10 +/* 05F9A4 8005EDA4 0006CC03 */ sra $t9, $a2, 0x10 +/* 05F9A8 8005EDA8 03203025 */ move $a2, $t9 +.L8005EDAC: +/* 05F9AC 8005EDAC 862A0002 */ lh $t2, 2($s1) +/* 05F9B0 8005EDB0 C7AE0044 */ lwc1 $f14, 0x44($sp) +/* 05F9B4 8005EDB4 000A5823 */ negu $t3, $t2 +/* 05F9B8 8005EDB8 A60B0162 */ sh $t3, 0x162($s0) +/* 05F9BC 8005EDBC 8E2C0068 */ lw $t4, 0x68($s1) +/* 05F9C0 8005EDC0 8223003B */ lb $v1, 0x3b($s1) +/* 05F9C4 8005EDC4 8D820000 */ lw $v0, ($t4) +/* 05F9C8 8005EDC8 000370C0 */ sll $t6, $v1, 3 +/* 05F9CC 8005EDCC 8C450000 */ lw $a1, ($v0) +/* 05F9D0 8005EDD0 C606002C */ lwc1 $f6, 0x2c($s0) +/* 05F9D4 8005EDD4 8CAD0044 */ lw $t5, 0x44($a1) +/* 05F9D8 8005EDD8 460E3202 */ mul.s $f8, $f6, $f14 +/* 05F9DC 8005EDDC 01AE7821 */ addu $t7, $t5, $t6 +/* 05F9E0 8005EDE0 8DF80004 */ lw $t8, 4($t7) +/* 05F9E4 8005EDE4 3C01800E */ lui $at, %hi(D_800E6ACC) # $at, 0x800e +/* 05F9E8 8005EDE8 0018C900 */ sll $t9, $t8, 4 +/* 05F9EC 8005EDEC 272AFFEF */ addiu $t2, $t9, -0x11 +/* 05F9F0 8005EDF0 448A2000 */ mtc1 $t2, $f4 +/* 05F9F4 8005EDF4 C4256AC8 */ lwc1 $f5, %lo(D_800E6AC8)($at) +/* 05F9F8 8005EDF8 468020A0 */ cvt.s.w $f2, $f4 +/* 05F9FC 8005EDFC C4246ACC */ lwc1 $f4, %lo(D_800E6ACC)($at) +/* 05FA00 8005EE00 44804800 */ mtc1 $zero, $f9 +/* 05FA04 8005EE04 460042A1 */ cvt.d.s $f10, $f8 +/* 05FA08 8005EE08 46245182 */ mul.d $f6, $f10, $f4 +/* 05FA0C 8005EE0C 44804000 */ mtc1 $zero, $f8 +/* 05FA10 8005EE10 46203320 */ cvt.s.d $f12, $f6 +/* 05FA14 8005EE14 46006021 */ cvt.d.s $f0, $f12 +/* 05FA18 8005EE18 4628003E */ c.le.d $f0, $f8 +/* 05FA1C 8005EE1C 00000000 */ nop +/* 05FA20 8005EE20 4500000B */ bc1f .L8005EE50 +/* 05FA24 8005EE24 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 05FA28 8005EE28 44815800 */ mtc1 $at, $f11 +/* 05FA2C 8005EE2C 44805000 */ mtc1 $zero, $f10 +/* 05FA30 8005EE30 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 05FA34 8005EE34 4620503C */ c.lt.d $f10, $f0 +/* 05FA38 8005EE38 00000000 */ nop +/* 05FA3C 8005EE3C 4500000E */ bc1f .L8005EE78 +/* 05FA40 8005EE40 00000000 */ nop +/* 05FA44 8005EE44 44816000 */ mtc1 $at, $f12 +/* 05FA48 8005EE48 1000000C */ b .L8005EE7C +/* 05FA4C 8005EE4C 2C610006 */ sltiu $at, $v1, 6 +.L8005EE50: +/* 05FA50 8005EE50 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 05FA54 8005EE54 44812800 */ mtc1 $at, $f5 +/* 05FA58 8005EE58 44802000 */ mtc1 $zero, $f4 +/* 05FA5C 8005EE5C 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 05FA60 8005EE60 4624003C */ c.lt.d $f0, $f4 +/* 05FA64 8005EE64 00000000 */ nop +/* 05FA68 8005EE68 45000003 */ bc1f .L8005EE78 +/* 05FA6C 8005EE6C 00000000 */ nop +/* 05FA70 8005EE70 44816000 */ mtc1 $at, $f12 +/* 05FA74 8005EE74 00000000 */ nop +.L8005EE78: +/* 05FA78 8005EE78 2C610006 */ sltiu $at, $v1, 6 +.L8005EE7C: +/* 05FA7C 8005EE7C 1020004F */ beqz $at, .L8005EFBC +/* 05FA80 8005EE80 00035880 */ sll $t3, $v1, 2 +/* 05FA84 8005EE84 3C01800E */ lui $at, 0x800e +/* 05FA88 8005EE88 002B0821 */ addu $at, $at, $t3 +/* 05FA8C 8005EE8C 8C2B6AD0 */ lw $t3, 0x6ad0($at) +/* 05FA90 8005EE90 00000000 */ nop +/* 05FA94 8005EE94 01600008 */ jr $t3 +/* 05FA98 8005EE98 00000000 */ nop +/* 05FA9C 8005EE9C C606000C */ lwc1 $f6, 0xc($s0) +/* 05FAA0 8005EEA0 460072A1 */ cvt.d.s $f10, $f14 +/* 05FAA4 8005EEA4 46003221 */ cvt.d.s $f8, $f6 +/* 05FAA8 8005EEA8 462A4100 */ add.d $f4, $f8, $f10 +/* 05FAAC 8005EEAC A20001CD */ sb $zero, 0x1cd($s0) +/* 05FAB0 8005EEB0 462021A0 */ cvt.s.d $f6, $f4 +/* 05FAB4 8005EEB4 24040002 */ li $a0, 2 +/* 05FAB8 8005EEB8 10000041 */ b .L8005EFC0 +/* 05FABC 8005EEBC E606000C */ swc1 $f6, 0xc($s0) +/* 05FAC0 8005EEC0 920C01CD */ lbu $t4, 0x1cd($s0) +/* 05FAC4 8005EEC4 24040002 */ li $a0, 2 +/* 05FAC8 8005EEC8 148C0006 */ bne $a0, $t4, .L8005EEE4 +/* 05FACC 8005EECC 00000000 */ nop +/* 05FAD0 8005EED0 C608000C */ lwc1 $f8, 0xc($s0) +/* 05FAD4 8005EED4 00000000 */ nop +/* 05FAD8 8005EED8 460C4280 */ add.s $f10, $f8, $f12 +/* 05FADC 8005EEDC 10000038 */ b .L8005EFC0 +/* 05FAE0 8005EEE0 E60A000C */ swc1 $f10, 0xc($s0) +.L8005EEE4: +/* 05FAE4 8005EEE4 C604000C */ lwc1 $f4, 0xc($s0) +/* 05FAE8 8005EEE8 00000000 */ nop +/* 05FAEC 8005EEEC 460C2181 */ sub.s $f6, $f4, $f12 +/* 05FAF0 8005EEF0 10000033 */ b .L8005EFC0 +/* 05FAF4 8005EEF4 E606000C */ swc1 $f6, 0xc($s0) +/* 05FAF8 8005EEF8 C608000C */ lwc1 $f8, 0xc($s0) +/* 05FAFC 8005EEFC 240D0002 */ li $t5, 2 +/* 05FB00 8005EF00 460C4281 */ sub.s $f10, $f8, $f12 +/* 05FB04 8005EF04 A20D01CD */ sb $t5, 0x1cd($s0) +/* 05FB08 8005EF08 E60A000C */ swc1 $f10, 0xc($s0) +/* 05FB0C 8005EF0C 1000002C */ b .L8005EFC0 +/* 05FB10 8005EF10 24040002 */ li $a0, 2 +/* 05FB14 8005EF14 920E01CD */ lbu $t6, 0x1cd($s0) +/* 05FB18 8005EF18 24010004 */ li $at, 4 +/* 05FB1C 8005EF1C 15C1000A */ bne $t6, $at, .L8005EF48 +/* 05FB20 8005EF20 00000000 */ nop +/* 05FB24 8005EF24 C604000C */ lwc1 $f4, 0xc($s0) +/* 05FB28 8005EF28 46007021 */ cvt.d.s $f0, $f14 +/* 05FB2C 8005EF2C 46200200 */ add.d $f8, $f0, $f0 +/* 05FB30 8005EF30 24040002 */ li $a0, 2 +/* 05FB34 8005EF34 460021A1 */ cvt.d.s $f6, $f4 +/* 05FB38 8005EF38 46283281 */ sub.d $f10, $f6, $f8 +/* 05FB3C 8005EF3C 46205120 */ cvt.s.d $f4, $f10 +/* 05FB40 8005EF40 1000001F */ b .L8005EFC0 +/* 05FB44 8005EF44 E604000C */ swc1 $f4, 0xc($s0) +.L8005EF48: +/* 05FB48 8005EF48 C606000C */ lwc1 $f6, 0xc($s0) +/* 05FB4C 8005EF4C 46007021 */ cvt.d.s $f0, $f14 +/* 05FB50 8005EF50 46200280 */ add.d $f10, $f0, $f0 +/* 05FB54 8005EF54 46003221 */ cvt.d.s $f8, $f6 +/* 05FB58 8005EF58 462A4100 */ add.d $f4, $f8, $f10 +/* 05FB5C 8005EF5C 462021A0 */ cvt.s.d $f6, $f4 +/* 05FB60 8005EF60 E606000C */ swc1 $f6, 0xc($s0) +/* 05FB64 8005EF64 10000016 */ b .L8005EFC0 +/* 05FB68 8005EF68 24040002 */ li $a0, 2 +/* 05FB6C 8005EF6C C608000C */ lwc1 $f8, 0xc($s0) +/* 05FB70 8005EF70 46007021 */ cvt.d.s $f0, $f14 +/* 05FB74 8005EF74 46200100 */ add.d $f4, $f0, $f0 +/* 05FB78 8005EF78 240F0004 */ li $t7, 4 +/* 05FB7C 8005EF7C 460042A1 */ cvt.d.s $f10, $f8 +/* 05FB80 8005EF80 46245180 */ add.d $f6, $f10, $f4 +/* 05FB84 8005EF84 A20F01CD */ sb $t7, 0x1cd($s0) +/* 05FB88 8005EF88 46203220 */ cvt.s.d $f8, $f6 +/* 05FB8C 8005EF8C 24040002 */ li $a0, 2 +/* 05FB90 8005EF90 1000000B */ b .L8005EFC0 +/* 05FB94 8005EF94 E608000C */ swc1 $f8, 0xc($s0) +/* 05FB98 8005EF98 C60A000C */ lwc1 $f10, 0xc($s0) +/* 05FB9C 8005EF9C 46007021 */ cvt.d.s $f0, $f14 +/* 05FBA0 8005EFA0 46200180 */ add.d $f6, $f0, $f0 +/* 05FBA4 8005EFA4 24040002 */ li $a0, 2 +/* 05FBA8 8005EFA8 46005121 */ cvt.d.s $f4, $f10 +/* 05FBAC 8005EFAC 46262200 */ add.d $f8, $f4, $f6 +/* 05FBB0 8005EFB0 462042A0 */ cvt.s.d $f10, $f8 +/* 05FBB4 8005EFB4 10000002 */ b .L8005EFC0 +/* 05FBB8 8005EFB8 E60A000C */ swc1 $f10, 0xc($s0) +.L8005EFBC: +/* 05FBBC 8005EFBC 24040002 */ li $a0, 2 +.L8005EFC0: +/* 05FBC0 8005EFC0 C600000C */ lwc1 $f0, 0xc($s0) +/* 05FBC4 8005EFC4 00000000 */ nop +/* 05FBC8 8005EFC8 4600103E */ c.le.s $f2, $f0 +/* 05FBCC 8005EFCC 00000000 */ nop +/* 05FBD0 8005EFD0 4500000A */ bc1f .L8005EFFC +/* 05FBD4 8005EFD4 00000000 */ nop +.L8005EFD8: +/* 05FBD8 8005EFD8 46020101 */ sub.s $f4, $f0, $f2 +/* 05FBDC 8005EFDC E604000C */ swc1 $f4, 0xc($s0) +/* 05FBE0 8005EFE0 A4480010 */ sh $t0, 0x10($v0) +/* 05FBE4 8005EFE4 C600000C */ lwc1 $f0, 0xc($s0) +/* 05FBE8 8005EFE8 00000000 */ nop +/* 05FBEC 8005EFEC 4600103E */ c.le.s $f2, $f0 +/* 05FBF0 8005EFF0 00000000 */ nop +/* 05FBF4 8005EFF4 4501FFF8 */ bc1t .L8005EFD8 +/* 05FBF8 8005EFF8 00000000 */ nop +.L8005EFFC: +/* 05FBFC 8005EFFC 4612003E */ c.le.s $f0, $f18 +/* 05FC00 8005F000 00000000 */ nop +/* 05FC04 8005F004 4500000A */ bc1f .L8005F030 +/* 05FC08 8005F008 00000000 */ nop +.L8005F00C: +/* 05FC0C 8005F00C 46020180 */ add.s $f6, $f0, $f2 +/* 05FC10 8005F010 E606000C */ swc1 $f6, 0xc($s0) +/* 05FC14 8005F014 A4480010 */ sh $t0, 0x10($v0) +/* 05FC18 8005F018 C600000C */ lwc1 $f0, 0xc($s0) +/* 05FC1C 8005F01C 00000000 */ nop +/* 05FC20 8005F020 4612003E */ c.le.s $f0, $f18 +/* 05FC24 8005F024 00000000 */ nop +/* 05FC28 8005F028 4501FFF8 */ bc1t .L8005F00C +/* 05FC2C 8005F02C 00000000 */ nop +.L8005F030: +/* 05FC30 8005F030 8223003B */ lb $v1, 0x3b($s1) +/* 05FC34 8005F034 00000000 */ nop +/* 05FC38 8005F038 14830007 */ bne $a0, $v1, .L8005F058 +/* 05FC3C 8005F03C 00000000 */ nop +/* 05FC40 8005F040 10C00005 */ beqz $a2, .L8005F058 +/* 05FC44 8005F044 24070003 */ li $a3, 3 +/* 05FC48 8005F048 A227003B */ sb $a3, 0x3b($s1) +/* 05FC4C 8005F04C E612000C */ swc1 $f18, 0xc($s0) +/* 05FC50 8005F050 8223003B */ lb $v1, 0x3b($s1) +/* 05FC54 8005F054 00000000 */ nop +.L8005F058: +/* 05FC58 8005F058 84580010 */ lh $t8, 0x10($v0) +/* 05FC5C 8005F05C 24070003 */ li $a3, 3 +/* 05FC60 8005F060 11180003 */ beq $t0, $t8, .L8005F070 +/* 05FC64 8005F064 24010005 */ li $at, 5 +/* 05FC68 8005F068 1460005E */ bnez $v1, .L8005F1E4 +/* 05FC6C 8005F06C 00000000 */ nop +.L8005F070: +/* 05FC70 8005F070 14610008 */ bne $v1, $at, .L8005F094 +/* 05FC74 8005F074 00000000 */ nop +/* 05FC78 8005F078 921901CD */ lbu $t9, 0x1cd($s0) +/* 05FC7C 8005F07C 00000000 */ nop +/* 05FC80 8005F080 A239003B */ sb $t9, 0x3b($s1) +/* 05FC84 8005F084 E612000C */ swc1 $f18, 0xc($s0) +/* 05FC88 8005F088 8223003B */ lb $v1, 0x3b($s1) +/* 05FC8C 8005F08C 10000056 */ b .L8005F1E8 +/* 05FC90 8005F090 444EF800 */ cfc1 $t6, $31 +.L8005F094: +/* 05FC94 8005F094 1523000B */ bne $t1, $v1, .L8005F0C4 +/* 05FC98 8005F098 00000000 */ nop +/* 05FC9C 8005F09C 920A01CD */ lbu $t2, 0x1cd($s0) +/* 05FCA0 8005F0A0 00000000 */ nop +/* 05FCA4 8005F0A4 15400003 */ bnez $t2, .L8005F0B4 +/* 05FCA8 8005F0A8 00000000 */ nop +/* 05FCAC 8005F0AC 10000002 */ b .L8005F0B8 +/* 05FCB0 8005F0B0 A224003B */ sb $a0, 0x3b($s1) +.L8005F0B4: +/* 05FCB4 8005F0B4 A220003B */ sb $zero, 0x3b($s1) +.L8005F0B8: +/* 05FCB8 8005F0B8 8223003B */ lb $v1, 0x3b($s1) +/* 05FCBC 8005F0BC 1000004A */ b .L8005F1E8 +/* 05FCC0 8005F0C0 444EF800 */ cfc1 $t6, $31 +.L8005F0C4: +/* 05FCC4 8005F0C4 14E3000B */ bne $a3, $v1, .L8005F0F4 +/* 05FCC8 8005F0C8 3C01800E */ lui $at, %hi(D_800E6AEC) # $at, 0x800e +/* 05FCCC 8005F0CC 920B01CD */ lbu $t3, 0x1cd($s0) +/* 05FCD0 8005F0D0 24010004 */ li $at, 4 +/* 05FCD4 8005F0D4 15610003 */ bne $t3, $at, .L8005F0E4 +/* 05FCD8 8005F0D8 240C0004 */ li $t4, 4 +/* 05FCDC 8005F0DC 10000002 */ b .L8005F0E8 +/* 05FCE0 8005F0E0 A224003B */ sb $a0, 0x3b($s1) +.L8005F0E4: +/* 05FCE4 8005F0E4 A22C003B */ sb $t4, 0x3b($s1) +.L8005F0E8: +/* 05FCE8 8005F0E8 8223003B */ lb $v1, 0x3b($s1) +/* 05FCEC 8005F0EC 1000003E */ b .L8005F1E8 +/* 05FCF0 8005F0F0 444EF800 */ cfc1 $t6, $31 +.L8005F0F4: +/* 05FCF4 8005F0F4 C608002C */ lwc1 $f8, 0x2c($s0) +/* 05FCF8 8005F0F8 C42B6AE8 */ lwc1 $f11, %lo(D_800E6AE8)($at) +/* 05FCFC 8005F0FC C42A6AEC */ lwc1 $f10, %lo(D_800E6AEC)($at) +/* 05FD00 8005F100 46004021 */ cvt.d.s $f0, $f8 +/* 05FD04 8005F104 4620503C */ c.lt.d $f10, $f0 +/* 05FD08 8005F108 3C01800E */ lui $at, %hi(D_800E6AF4) # $at, 0x800e +/* 05FD0C 8005F10C 4500001C */ bc1f .L8005F180 +/* 05FD10 8005F110 00000000 */ nop +/* 05FD14 8005F114 C4256AF0 */ lwc1 $f5, %lo(D_800E6AF0)($at) +/* 05FD18 8005F118 C4246AF4 */ lwc1 $f4, %lo(D_800E6AF4)($at) +/* 05FD1C 8005F11C 00000000 */ nop +/* 05FD20 8005F120 4624003C */ c.lt.d $f0, $f4 +/* 05FD24 8005F124 00000000 */ nop +/* 05FD28 8005F128 45000015 */ bc1f .L8005F180 +/* 05FD2C 8005F12C 00000000 */ nop +/* 05FD30 8005F130 1483000F */ bne $a0, $v1, .L8005F170 +/* 05FD34 8005F134 00000000 */ nop +/* 05FD38 8005F138 A229003B */ sb $t1, 0x3b($s1) +/* 05FD3C 8005F13C 822E003B */ lb $t6, 0x3b($s1) +/* 05FD40 8005F140 8CAD0044 */ lw $t5, 0x44($a1) +/* 05FD44 8005F144 000E78C0 */ sll $t7, $t6, 3 +/* 05FD48 8005F148 01AFC021 */ addu $t8, $t5, $t7 +/* 05FD4C 8005F14C 8F190004 */ lw $t9, 4($t8) +/* 05FD50 8005F150 00000000 */ nop +/* 05FD54 8005F154 00195100 */ sll $t2, $t9, 4 +/* 05FD58 8005F158 254BFFEF */ addiu $t3, $t2, -0x11 +/* 05FD5C 8005F15C 448B3000 */ mtc1 $t3, $f6 +/* 05FD60 8005F160 00000000 */ nop +/* 05FD64 8005F164 46803220 */ cvt.s.w $f8, $f6 +/* 05FD68 8005F168 10000002 */ b .L8005F174 +/* 05FD6C 8005F16C E608000C */ swc1 $f8, 0xc($s0) +.L8005F170: +/* 05FD70 8005F170 A220003B */ sb $zero, 0x3b($s1) +.L8005F174: +/* 05FD74 8005F174 8223003B */ lb $v1, 0x3b($s1) +/* 05FD78 8005F178 1000001B */ b .L8005F1E8 +/* 05FD7C 8005F17C 444EF800 */ cfc1 $t6, $31 +.L8005F180: +/* 05FD80 8005F180 14600005 */ bnez $v1, .L8005F198 +/* 05FD84 8005F184 24010004 */ li $at, 4 +/* 05FD88 8005F188 A229003B */ sb $t1, 0x3b($s1) +/* 05FD8C 8005F18C E612000C */ swc1 $f18, 0xc($s0) +/* 05FD90 8005F190 8223003B */ lb $v1, 0x3b($s1) +/* 05FD94 8005F194 00000000 */ nop +.L8005F198: +/* 05FD98 8005F198 14610012 */ bne $v1, $at, .L8005F1E4 +/* 05FD9C 8005F19C 00000000 */ nop +/* 05FDA0 8005F1A0 14C00010 */ bnez $a2, .L8005F1E4 +/* 05FDA4 8005F1A4 00000000 */ nop +/* 05FDA8 8005F1A8 A227003B */ sb $a3, 0x3b($s1) +/* 05FDAC 8005F1AC 822E003B */ lb $t6, 0x3b($s1) +/* 05FDB0 8005F1B0 8CAC0044 */ lw $t4, 0x44($a1) +/* 05FDB4 8005F1B4 000E68C0 */ sll $t5, $t6, 3 +/* 05FDB8 8005F1B8 018D7821 */ addu $t7, $t4, $t5 +/* 05FDBC 8005F1BC 8DF80004 */ lw $t8, 4($t7) +/* 05FDC0 8005F1C0 00000000 */ nop +/* 05FDC4 8005F1C4 0018C900 */ sll $t9, $t8, 4 +/* 05FDC8 8005F1C8 272AFFEF */ addiu $t2, $t9, -0x11 +/* 05FDCC 8005F1CC 448A5000 */ mtc1 $t2, $f10 +/* 05FDD0 8005F1D0 00000000 */ nop +/* 05FDD4 8005F1D4 46805120 */ cvt.s.w $f4, $f10 +/* 05FDD8 8005F1D8 E604000C */ swc1 $f4, 0xc($s0) +/* 05FDDC 8005F1DC 8223003B */ lb $v1, 0x3b($s1) +/* 05FDE0 8005F1E0 00000000 */ nop +.L8005F1E4: +/* 05FDE4 8005F1E4 444EF800 */ cfc1 $t6, $31 +.L8005F1E8: +/* 05FDE8 8005F1E8 862B0018 */ lh $t3, 0x18($s1) +/* 05FDEC 8005F1EC 35C10003 */ ori $at, $t6, 3 +/* 05FDF0 8005F1F0 38210002 */ xori $at, $at, 2 +/* 05FDF4 8005F1F4 A7AB003C */ sh $t3, 0x3c($sp) +/* 05FDF8 8005F1F8 C606000C */ lwc1 $f6, 0xc($s0) +/* 05FDFC 8005F1FC 44C1F800 */ ctc1 $at, $31 +/* 05FE00 8005F200 AE200074 */ sw $zero, 0x74($s1) +/* 05FE04 8005F204 46003224 */ cvt.w.s $f8, $f6 +/* 05FE08 8005F208 24050002 */ li $a1, 2 +/* 05FE0C 8005F20C 440C4000 */ mfc1 $t4, $f8 +/* 05FE10 8005F210 44CEF800 */ ctc1 $t6, $31 +/* 05FE14 8005F214 14830008 */ bne $a0, $v1, .L8005F238 +/* 05FE18 8005F218 A62C0018 */ sh $t4, 0x18($s1) +/* 05FE1C 8005F21C 87A6003C */ lh $a2, 0x3c($sp) +/* 05FE20 8005F220 240D00AD */ li $t5, 173 +/* 05FE24 8005F224 AFAD0010 */ sw $t5, 0x10($sp) +/* 05FE28 8005F228 02202025 */ move $a0, $s1 +/* 05FE2C 8005F22C 0C0044F3 */ jal func_800113CC +/* 05FE30 8005F230 240700AC */ li $a3, 172 +/* 05FE34 8005F234 2408FFFF */ li $t0, -1 +.L8005F238: +/* 05FE38 8005F238 860F0000 */ lh $t7, ($s0) +/* 05FE3C 8005F23C 00000000 */ nop +/* 05FE40 8005F240 150F000C */ bne $t0, $t7, .L8005F274 +/* 05FE44 8005F244 8FA50040 */ lw $a1, 0x40($sp) +/* 05FE48 8005F248 0C008D5A */ jal func_80023568 +/* 05FE4C 8005F24C 00000000 */ nop +/* 05FE50 8005F250 10400007 */ beqz $v0, .L8005F270 +/* 05FE54 8005F254 02202025 */ move $a0, $s1 +/* 05FE58 8005F258 241800A5 */ li $t8, 165 +/* 05FE5C 8005F25C AFB80010 */ sw $t8, 0x10($sp) +/* 05FE60 8005F260 02002825 */ move $a1, $s0 +/* 05FE64 8005F264 3C0642C8 */ lui $a2, 0x42c8 +/* 05FE68 8005F268 0C017881 */ jal func_8005E204 +/* 05FE6C 8005F26C 24070089 */ li $a3, 137 +.L8005F270: +/* 05FE70 8005F270 8FA50040 */ lw $a1, 0x40($sp) +.L8005F274: +/* 05FE74 8005F274 0C02BF0F */ jal func_800AFC3C +/* 05FE78 8005F278 02202025 */ move $a0, $s1 +/* 05FE7C 8005F27C 02202025 */ move $a0, $s1 +/* 05FE80 8005F280 02002825 */ move $a1, $s0 +/* 05FE84 8005F284 0C017412 */ jal func_8005D048 +/* 05FE88 8005F288 24060028 */ li $a2, 40 +/* 05FE8C 8005F28C 0C006EB2 */ jal func_8001BAC8 +/* 05FE90 8005F290 00002025 */ move $a0, $zero +/* 05FE94 8005F294 8C43004C */ lw $v1, 0x4c($v0) +/* 05FE98 8005F298 8C500064 */ lw $s0, 0x64($v0) +/* 05FE9C 8005F29C 8C790000 */ lw $t9, ($v1) +/* 05FEA0 8005F2A0 3C058012 */ lui $a1, %hi(D_8011D600) # $a1, 0x8012 +/* 05FEA4 8005F2A4 1639000B */ bne $s1, $t9, .L8005F2D4 +/* 05FEA8 8005F2A8 24A5D600 */ addiu $a1, %lo(D_8011D600) # addiu $a1, $a1, -0x2a00 +/* 05FEAC 8005F2AC 846A0014 */ lh $t2, 0x14($v1) +/* 05FEB0 8005F2B0 00000000 */ nop +/* 05FEB4 8005F2B4 314B0008 */ andi $t3, $t2, 8 +/* 05FEB8 8005F2B8 11600006 */ beqz $t3, .L8005F2D4 +/* 05FEBC 8005F2BC 00000000 */ nop +/* 05FEC0 8005F2C0 822E003B */ lb $t6, 0x3b($s1) +/* 05FEC4 8005F2C4 24010001 */ li $at, 1 +/* 05FEC8 8005F2C8 15C10002 */ bne $t6, $at, .L8005F2D4 +/* 05FECC 8005F2CC 240C0004 */ li $t4, 4 +/* 05FED0 8005F2D0 A20C0187 */ sb $t4, 0x187($s0) +.L8005F2D4: +/* 05FED4 8005F2D4 820D01D8 */ lb $t5, 0x1d8($s0) +/* 05FED8 8005F2D8 00000000 */ nop +/* 05FEDC 8005F2DC 11A00008 */ beqz $t5, .L8005F300 +/* 05FEE0 8005F2E0 8FBF0024 */ lw $ra, 0x24($sp) +/* 05FEE4 8005F2E4 80AF0000 */ lb $t7, ($a1) +/* 05FEE8 8005F2E8 24180001 */ li $t8, 1 +/* 05FEEC 8005F2EC 15E00003 */ bnez $t7, .L8005F2FC +/* 05FEF0 8005F2F0 02002025 */ move $a0, $s0 +/* 05FEF4 8005F2F4 0C0172DA */ jal func_8005CB68 +/* 05FEF8 8005F2F8 A0B80000 */ sb $t8, ($a1) +.L8005F2FC: +/* 05FEFC 8005F2FC 8FBF0024 */ lw $ra, 0x24($sp) +.L8005F300: +/* 05FF00 8005F300 8FB0001C */ lw $s0, 0x1c($sp) +/* 05FF04 8005F304 8FB10020 */ lw $s1, 0x20($sp) +/* 05FF08 8005F308 03E00008 */ jr $ra +/* 05FF0C 8005F30C 27BD0040 */ addiu $sp, $sp, 0x40 + diff --git a/asm/non_matchings/unknown_05F690/func_8005F310.s b/asm/non_matchings/unknown_05F690/func_8005F310.s new file mode 100644 index 00000000..406e0eba --- /dev/null +++ b/asm/non_matchings/unknown_05F690/func_8005F310.s @@ -0,0 +1,356 @@ +glabel func_8005F310 +/* 05FF10 8005F310 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 05FF14 8005F314 AFA40040 */ sw $a0, 0x40($sp) +/* 05FF18 8005F318 AFBF0024 */ sw $ra, 0x24($sp) +/* 05FF1C 8005F31C AFB00020 */ sw $s0, 0x20($sp) +/* 05FF20 8005F320 3C04800E */ lui $a0, %hi(D_800DCE80) # $a0, 0x800e +/* 05FF24 8005F324 00C08025 */ move $s0, $a2 +/* 05FF28 8005F328 AFA50044 */ sw $a1, 0x44($sp) +/* 05FF2C 8005F32C 2484CE80 */ addiu $a0, %lo(D_800DCE80) # addiu $a0, $a0, -0x3180 +/* 05FF30 8005F330 0C01729E */ jal func_8005CA78 +/* 05FF34 8005F334 AFA7004C */ sw $a3, 0x4c($sp) +/* 05FF38 8005F338 8FA7004C */ lw $a3, 0x4c($sp) +/* 05FF3C 8005F33C 3C01800E */ lui $at, %hi(D_800E6B00) # $at, 0x800e +/* 05FF40 8005F340 A0E001EC */ sb $zero, 0x1ec($a3) +/* 05FF44 8005F344 820E003B */ lb $t6, 0x3b($s0) +/* 05FF48 8005F348 C4266B04 */ lwc1 $f6, %lo(D_800E6B04)($at) +/* 05FF4C 8005F34C A7AE003E */ sh $t6, 0x3e($sp) +/* 05FF50 8005F350 860F0018 */ lh $t7, 0x18($s0) +/* 05FF54 8005F354 C4276B00 */ lwc1 $f7, %lo(D_800E6B00)($at) +/* 05FF58 8005F358 A7AF003C */ sh $t7, 0x3c($sp) +/* 05FF5C 8005F35C 84F8016A */ lh $t8, 0x16a($a3) +/* 05FF60 8005F360 00000000 */ nop +/* 05FF64 8005F364 A7B8003A */ sh $t8, 0x3a($sp) +/* 05FF68 8005F368 C4E4002C */ lwc1 $f4, 0x2c($a3) +/* 05FF6C 8005F36C 00000000 */ nop +/* 05FF70 8005F370 46002021 */ cvt.d.s $f0, $f4 +/* 05FF74 8005F374 4626003C */ c.lt.d $f0, $f6 +/* 05FF78 8005F378 00000000 */ nop +/* 05FF7C 8005F37C 45000009 */ bc1f .L8005F3A4 +/* 05FF80 8005F380 3C01800E */ lui $at, %hi(D_800E6B0C) # $at, 0x800e +/* 05FF84 8005F384 C4296B08 */ lwc1 $f9, %lo(D_800E6B08)($at) +/* 05FF88 8005F388 C4286B0C */ lwc1 $f8, %lo(D_800E6B0C)($at) +/* 05FF8C 8005F38C 8FB90054 */ lw $t9, 0x54($sp) +/* 05FF90 8005F390 4620403C */ c.lt.d $f8, $f0 +/* 05FF94 8005F394 00000000 */ nop +/* 05FF98 8005F398 45000002 */ bc1f .L8005F3A4 +/* 05FF9C 8005F39C 00000000 */ nop +/* 05FFA0 8005F3A0 AF200000 */ sw $zero, ($t9) +.L8005F3A4: +/* 05FFA4 8005F3A4 80EA01D8 */ lb $t2, 0x1d8($a3) +/* 05FFA8 8005F3A8 24010001 */ li $at, 1 +/* 05FFAC 8005F3AC 1541000F */ bne $t2, $at, .L8005F3EC +/* 05FFB0 8005F3B0 8FA90058 */ lw $t1, 0x58($sp) +/* 05FFB4 8005F3B4 0C008D5A */ jal func_80023568 +/* 05FFB8 8005F3B8 AFA7004C */ sw $a3, 0x4c($sp) +/* 05FFBC 8005F3BC 8FA7004C */ lw $a3, 0x4c($sp) +/* 05FFC0 8005F3C0 10400009 */ beqz $v0, .L8005F3E8 +/* 05FFC4 8005F3C4 24040082 */ li $a0, 130 +/* 05FFC8 8005F3C8 0C008500 */ jal func_80021400 +/* 05FFCC 8005F3CC AFA7004C */ sw $a3, 0x4c($sp) +/* 05FFD0 8005F3D0 8FA7004C */ lw $a3, 0x4c($sp) +/* 05FFD4 8005F3D4 00000000 */ nop +/* 05FFD8 8005F3D8 80EB01D8 */ lb $t3, 0x1d8($a3) +/* 05FFDC 8005F3DC 00000000 */ nop +/* 05FFE0 8005F3E0 256C0001 */ addiu $t4, $t3, 1 +/* 05FFE4 8005F3E4 A0EC01D8 */ sb $t4, 0x1d8($a3) +.L8005F3E8: +/* 05FFE8 8005F3E8 8FA90058 */ lw $t1, 0x58($sp) +.L8005F3EC: +/* 05FFEC 8005F3EC 24010064 */ li $at, 100 +/* 05FFF0 8005F3F0 8D280000 */ lw $t0, ($t1) +/* 05FFF4 8005F3F4 00000000 */ nop +/* 05FFF8 8005F3F8 15010002 */ bne $t0, $at, .L8005F404 +/* 05FFFC 8005F3FC 3C018012 */ lui $at, %hi(D_8011D610) # $at, 0x8012 +/* 060000 8005F400 A020D610 */ sb $zero, %lo(D_8011D610)($at) +.L8005F404: +/* 060004 8005F404 84ED0000 */ lh $t5, ($a3) +/* 060008 8005F408 2403FFFF */ li $v1, -1 +/* 06000C 8005F40C 146D001F */ bne $v1, $t5, .L8005F48C +/* 060010 8005F410 A0E001F5 */ sb $zero, 0x1f5($a3) +/* 060014 8005F414 8D220000 */ lw $v0, ($t1) +/* 060018 8005F418 24010064 */ li $at, 100 +/* 06001C 8005F41C 1041001B */ beq $v0, $at, .L8005F48C +/* 060020 8005F420 244EFFE2 */ addiu $t6, $v0, -0x1e +/* 060024 8005F424 05C10017 */ bgez $t6, .L8005F484 +/* 060028 8005F428 AD2E0000 */ sw $t6, ($t1) +/* 06002C 8005F42C 3C188012 */ lui $t8, %hi(D_8011D611) # $t8, 0x8012 +/* 060030 8005F430 8318D611 */ lb $t8, %lo(D_8011D611)($t8) +/* 060034 8005F434 00002025 */ move $a0, $zero +/* 060038 8005F438 17000009 */ bnez $t8, .L8005F460 +/* 06003C 8005F43C 8FA20050 */ lw $v0, 0x50($sp) +/* 060040 8005F440 AFA7004C */ sw $a3, 0x4c($sp) +/* 060044 8005F444 0C0172C1 */ jal func_8005CB04 +/* 060048 8005F448 AFA8002C */ sw $t0, 0x2c($sp) +/* 06004C 8005F44C 8FA7004C */ lw $a3, 0x4c($sp) +/* 060050 8005F450 8FA8002C */ lw $t0, 0x2c($sp) +/* 060054 8005F454 8FA90058 */ lw $t1, 0x58($sp) +/* 060058 8005F458 00000000 */ nop +/* 06005C 8005F45C 8FA20050 */ lw $v0, 0x50($sp) +.L8005F460: +/* 060060 8005F460 24190001 */ li $t9, 1 +/* 060064 8005F464 3C018012 */ lui $at, %hi(D_8011D611) # $at, 0x8012 +/* 060068 8005F468 A039D611 */ sb $t9, %lo(D_8011D611)($at) +/* 06006C 8005F46C AD200000 */ sw $zero, ($t1) +/* 060070 8005F470 8C4A0000 */ lw $t2, ($v0) +/* 060074 8005F474 00000000 */ nop +/* 060078 8005F478 354B8000 */ ori $t3, $t2, 0x8000 +/* 06007C 8005F47C 10000003 */ b .L8005F48C +/* 060080 8005F480 AC4B0000 */ sw $t3, ($v0) +.L8005F484: +/* 060084 8005F484 3C018012 */ lui $at, %hi(D_8011D611) # $at, 0x8012 +/* 060088 8005F488 A020D611 */ sb $zero, %lo(D_8011D611)($at) +.L8005F48C: +/* 06008C 8005F48C 240C000A */ li $t4, 10 +/* 060090 8005F490 A0EC01D6 */ sb $t4, 0x1d6($a3) +/* 060094 8005F494 8FA50044 */ lw $a1, 0x44($sp) +/* 060098 8005F498 8FA40040 */ lw $a0, 0x40($sp) +/* 06009C 8005F49C AFA8002C */ sw $t0, 0x2c($sp) +/* 0600A0 8005F4A0 AFA7004C */ sw $a3, 0x4c($sp) +/* 0600A4 8005F4A4 0C0125E5 */ jal func_80049794 +/* 0600A8 8005F4A8 02003025 */ move $a2, $s0 +/* 0600AC 8005F4AC 8FA7004C */ lw $a3, 0x4c($sp) +/* 0600B0 8005F4B0 8FA8002C */ lw $t0, 0x2c($sp) +/* 0600B4 8005F4B4 80ED01D7 */ lb $t5, 0x1d7($a3) +/* 0600B8 8005F4B8 2403FFFF */ li $v1, -1 +/* 0600BC 8005F4BC A0ED01D6 */ sb $t5, 0x1d6($a3) +/* 0600C0 8005F4C0 8FAE0058 */ lw $t6, 0x58($sp) +/* 0600C4 8005F4C4 00000000 */ nop +/* 0600C8 8005F4C8 ADC80000 */ sw $t0, ($t6) +/* 0600CC 8005F4CC AE000074 */ sw $zero, 0x74($s0) +/* 0600D0 8005F4D0 87AF003A */ lh $t7, 0x3a($sp) +/* 0600D4 8005F4D4 00000000 */ nop +/* 0600D8 8005F4D8 A4EF016A */ sh $t7, 0x16a($a3) +/* 0600DC 8005F4DC 87B8003E */ lh $t8, 0x3e($sp) +/* 0600E0 8005F4E0 00000000 */ nop +/* 0600E4 8005F4E4 A218003B */ sb $t8, 0x3b($s0) +/* 0600E8 8005F4E8 87B9003C */ lh $t9, 0x3c($sp) +/* 0600EC 8005F4EC 00000000 */ nop +/* 0600F0 8005F4F0 A6190018 */ sh $t9, 0x18($s0) +/* 0600F4 8005F4F4 80EA0187 */ lb $t2, 0x187($a3) +/* 0600F8 8005F4F8 00000000 */ nop +/* 0600FC 8005F4FC 11400029 */ beqz $t2, .L8005F5A4 +/* 060100 8005F500 00000000 */ nop +/* 060104 8005F504 820B003B */ lb $t3, 0x3b($s0) +/* 060108 8005F508 24010001 */ li $at, 1 +/* 06010C 8005F50C 11610025 */ beq $t3, $at, .L8005F5A4 +/* 060110 8005F510 24040001 */ li $a0, 1 +/* 060114 8005F514 0C0172C1 */ jal func_8005CB04 +/* 060118 8005F518 AFA7004C */ sw $a3, 0x4c($sp) +/* 06011C 8005F51C 24040011 */ li $a0, 17 +/* 060120 8005F520 0C000741 */ jal func_80001D04 +/* 060124 8005F524 00002825 */ move $a1, $zero +/* 060128 8005F528 3C014140 */ li $at, 0x41400000 # 12.000000 +/* 06012C 8005F52C 44816000 */ mtc1 $at, $f12 +/* 060130 8005F530 0C01A7CA */ jal func_80069F28 +/* 060134 8005F534 00000000 */ nop +/* 060138 8005F538 3C01800E */ lui $at, %hi(D_800E6B14) # $at, 0x800e +/* 06013C 8005F53C C60A001C */ lwc1 $f10, 0x1c($s0) +/* 060140 8005F540 C4216B10 */ lwc1 $f1, %lo(D_800E6B10)($at) +/* 060144 8005F544 C4206B14 */ lwc1 $f0, %lo(D_800E6B14)($at) +/* 060148 8005F548 46005121 */ cvt.d.s $f4, $f10 +/* 06014C 8005F54C 46202182 */ mul.d $f6, $f4, $f0 +/* 060150 8005F550 C60A0024 */ lwc1 $f10, 0x24($s0) +/* 060154 8005F554 8FA7004C */ lw $a3, 0x4c($sp) +/* 060158 8005F558 46005121 */ cvt.d.s $f4, $f10 +/* 06015C 8005F55C 44809000 */ mtc1 $zero, $f18 +/* 060160 8005F560 46203220 */ cvt.s.d $f8, $f6 +/* 060164 8005F564 240C0001 */ li $t4, 1 +/* 060168 8005F568 46202182 */ mul.d $f6, $f4, $f0 +/* 06016C 8005F56C E608001C */ swc1 $f8, 0x1c($s0) +/* 060170 8005F570 A20C003B */ sb $t4, 0x3b($s0) +/* 060174 8005F574 3C014010 */ li $at, 0x40100000 # 2.250000 +/* 060178 8005F578 2403FFFF */ li $v1, -1 +/* 06017C 8005F57C 46203220 */ cvt.s.d $f8, $f6 +/* 060180 8005F580 44803000 */ mtc1 $zero, $f6 +/* 060184 8005F584 E6080024 */ swc1 $f8, 0x24($s0) +/* 060188 8005F588 E4F2000C */ swc1 $f18, 0xc($a3) +/* 06018C 8005F58C C60A0020 */ lwc1 $f10, 0x20($s0) +/* 060190 8005F590 44813800 */ mtc1 $at, $f7 +/* 060194 8005F594 46005121 */ cvt.d.s $f4, $f10 +/* 060198 8005F598 46262200 */ add.d $f8, $f4, $f6 +/* 06019C 8005F59C 462042A0 */ cvt.s.d $f10, $f8 +/* 0601A0 8005F5A0 E60A0020 */ swc1 $f10, 0x20($s0) +.L8005F5A4: +/* 0601A4 8005F5A4 8CED0148 */ lw $t5, 0x148($a3) +/* 0601A8 8005F5A8 44809000 */ mtc1 $zero, $f18 +/* 0601AC 8005F5AC 11A0001B */ beqz $t5, .L8005F61C +/* 0601B0 8005F5B0 A0E00187 */ sb $zero, 0x187($a3) +/* 0601B4 8005F5B4 C600001C */ lwc1 $f0, 0x1c($s0) +/* 0601B8 8005F5B8 C60E0024 */ lwc1 $f14, 0x24($s0) +/* 0601BC 8005F5BC 46000082 */ mul.s $f2, $f0, $f0 +/* 0601C0 8005F5C0 AFA7004C */ sw $a3, 0x4c($sp) +/* 0601C4 8005F5C4 460E7402 */ mul.s $f16, $f14, $f14 +/* 0601C8 8005F5C8 00000000 */ nop +/* 0601CC 8005F5CC 46021102 */ mul.s $f4, $f2, $f2 +/* 0601D0 8005F5D0 00000000 */ nop +/* 0601D4 8005F5D4 46108182 */ mul.s $f6, $f16, $f16 +/* 0601D8 8005F5D8 0C0326B4 */ jal sqrtf +/* 0601DC 8005F5DC 46062300 */ add.s $f12, $f4, $f6 +/* 0601E0 8005F5E0 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 0601E4 8005F5E4 44814800 */ mtc1 $at, $f9 +/* 0601E8 8005F5E8 44804000 */ mtc1 $zero, $f8 +/* 0601EC 8005F5EC 46000087 */ neg.s $f2, $f0 +/* 0601F0 8005F5F0 460012A1 */ cvt.d.s $f10, $f2 +/* 0601F4 8005F5F4 8FA7004C */ lw $a3, 0x4c($sp) +/* 0601F8 8005F5F8 462A403C */ c.lt.d $f8, $f10 +/* 0601FC 8005F5FC 44809000 */ mtc1 $zero, $f18 +/* 060200 8005F600 2403FFFF */ li $v1, -1 +/* 060204 8005F604 45000005 */ bc1f .L8005F61C +/* 060208 8005F608 E4E2002C */ swc1 $f2, 0x2c($a3) +/* 06020C 8005F60C E4F2002C */ swc1 $f18, 0x2c($a3) +/* 060210 8005F610 E612001C */ swc1 $f18, 0x1c($s0) +/* 060214 8005F614 E6120020 */ swc1 $f18, 0x20($s0) +/* 060218 8005F618 E6120024 */ swc1 $f18, 0x24($s0) +.L8005F61C: +/* 06021C 8005F61C C7A40044 */ lwc1 $f4, 0x44($sp) +/* 060220 8005F620 C4E6000C */ lwc1 $f6, 0xc($a3) +/* 060224 8005F624 46002321 */ cvt.d.s $f12, $f4 +/* 060228 8005F628 462C6280 */ add.d $f10, $f12, $f12 +/* 06022C 8005F62C 46003221 */ cvt.d.s $f8, $f6 +/* 060230 8005F630 462A4100 */ add.d $f4, $f8, $f10 +/* 060234 8005F634 462021A0 */ cvt.s.d $f6, $f4 +/* 060238 8005F638 E4E6000C */ swc1 $f6, 0xc($a3) +/* 06023C 8005F63C 8E0E0068 */ lw $t6, 0x68($s0) +/* 060240 8005F640 8218003B */ lb $t8, 0x3b($s0) +/* 060244 8005F644 8DC20000 */ lw $v0, ($t6) +/* 060248 8005F648 0018C8C0 */ sll $t9, $t8, 3 +/* 06024C 8005F64C 8C440000 */ lw $a0, ($v0) +/* 060250 8005F650 C4E0000C */ lwc1 $f0, 0xc($a3) +/* 060254 8005F654 8C8F0044 */ lw $t7, 0x44($a0) +/* 060258 8005F658 00000000 */ nop +/* 06025C 8005F65C 01F95021 */ addu $t2, $t7, $t9 +/* 060260 8005F660 8D4B0004 */ lw $t3, 4($t2) +/* 060264 8005F664 00000000 */ nop +/* 060268 8005F668 000B6100 */ sll $t4, $t3, 4 +/* 06026C 8005F66C 258DFFEF */ addiu $t5, $t4, -0x11 +/* 060270 8005F670 448D4000 */ mtc1 $t5, $f8 +/* 060274 8005F674 00000000 */ nop +/* 060278 8005F678 468040A0 */ cvt.s.w $f2, $f8 +/* 06027C 8005F67C 4600103E */ c.le.s $f2, $f0 +/* 060280 8005F680 00000000 */ nop +/* 060284 8005F684 4500000A */ bc1f .L8005F6B0 +/* 060288 8005F688 00000000 */ nop +.L8005F68C: +/* 06028C 8005F68C 46020281 */ sub.s $f10, $f0, $f2 +/* 060290 8005F690 E4EA000C */ swc1 $f10, 0xc($a3) +/* 060294 8005F694 A4430010 */ sh $v1, 0x10($v0) +/* 060298 8005F698 C4E0000C */ lwc1 $f0, 0xc($a3) +/* 06029C 8005F69C 00000000 */ nop +/* 0602A0 8005F6A0 4600103E */ c.le.s $f2, $f0 +/* 0602A4 8005F6A4 00000000 */ nop +/* 0602A8 8005F6A8 4501FFF8 */ bc1t .L8005F68C +/* 0602AC 8005F6AC 00000000 */ nop +.L8005F6B0: +/* 0602B0 8005F6B0 4612003E */ c.le.s $f0, $f18 +/* 0602B4 8005F6B4 00000000 */ nop +/* 0602B8 8005F6B8 4500000A */ bc1f .L8005F6E4 +/* 0602BC 8005F6BC 00000000 */ nop +.L8005F6C0: +/* 0602C0 8005F6C0 46020100 */ add.s $f4, $f0, $f2 +/* 0602C4 8005F6C4 E4E4000C */ swc1 $f4, 0xc($a3) +/* 0602C8 8005F6C8 A4430010 */ sh $v1, 0x10($v0) +/* 0602CC 8005F6CC C4E0000C */ lwc1 $f0, 0xc($a3) +/* 0602D0 8005F6D0 00000000 */ nop +/* 0602D4 8005F6D4 4612003E */ c.le.s $f0, $f18 +/* 0602D8 8005F6D8 00000000 */ nop +/* 0602DC 8005F6DC 4501FFF8 */ bc1t .L8005F6C0 +/* 0602E0 8005F6E0 00000000 */ nop +.L8005F6E4: +/* 0602E4 8005F6E4 820E003B */ lb $t6, 0x3b($s0) +/* 0602E8 8005F6E8 24010001 */ li $at, 1 +/* 0602EC 8005F6EC 15C10009 */ bne $t6, $at, .L8005F714 +/* 0602F0 8005F6F0 00000000 */ nop +/* 0602F4 8005F6F4 84580010 */ lh $t8, 0x10($v0) +/* 0602F8 8005F6F8 00000000 */ nop +/* 0602FC 8005F6FC 14780005 */ bne $v1, $t8, .L8005F714 +/* 060300 8005F700 00000000 */ nop +/* 060304 8005F704 A200003B */ sb $zero, 0x3b($s0) +/* 060308 8005F708 E4F2000C */ swc1 $f18, 0xc($a3) +/* 06030C 8005F70C C4E0000C */ lwc1 $f0, 0xc($a3) +/* 060310 8005F710 00000000 */ nop +.L8005F714: +/* 060314 8005F714 444FF800 */ cfc1 $t7, $31 +/* 060318 8005F718 AE000074 */ sw $zero, 0x74($s0) +/* 06031C 8005F71C 35E10003 */ ori $at, $t7, 3 +/* 060320 8005F720 38210002 */ xori $at, $at, 2 +/* 060324 8005F724 44C1F800 */ ctc1 $at, $31 +/* 060328 8005F728 02002025 */ move $a0, $s0 +/* 06032C 8005F72C 460001A4 */ cvt.w.s $f6, $f0 +/* 060330 8005F730 44193000 */ mfc1 $t9, $f6 +/* 060334 8005F734 44CFF800 */ ctc1 $t7, $31 +/* 060338 8005F738 A6190018 */ sh $t9, 0x18($s0) +/* 06033C 8005F73C 8FA50040 */ lw $a1, 0x40($sp) +/* 060340 8005F740 0C02BDC5 */ jal func_800AF714 +/* 060344 8005F744 AFA7004C */ sw $a3, 0x4c($sp) +/* 060348 8005F748 8FA5004C */ lw $a1, 0x4c($sp) +/* 06034C 8005F74C 02002025 */ move $a0, $s0 +/* 060350 8005F750 0C017412 */ jal func_8005D048 +/* 060354 8005F754 24060028 */ li $a2, 40 +/* 060358 8005F758 8FAA0058 */ lw $t2, 0x58($sp) +/* 06035C 8005F75C 24010064 */ li $at, 100 +/* 060360 8005F760 8D4B0000 */ lw $t3, ($t2) +/* 060364 8005F764 00000000 */ nop +/* 060368 8005F768 11610018 */ beq $t3, $at, .L8005F7CC +/* 06036C 8005F76C 00000000 */ nop +/* 060370 8005F770 0C002FD1 */ jal func_8000BF44 +/* 060374 8005F774 2404FFFF */ li $a0, -1 +/* 060378 8005F778 10400014 */ beqz $v0, .L8005F7CC +/* 06037C 8005F77C 00000000 */ nop +/* 060380 8005F780 8C430064 */ lw $v1, 0x64($v0) +/* 060384 8005F784 AC400078 */ sw $zero, 0x78($v0) +/* 060388 8005F788 10600010 */ beqz $v1, .L8005F7CC +/* 06038C 8005F78C 24180002 */ li $t8, 2 +/* 060390 8005F790 8FAD0040 */ lw $t5, 0x40($sp) +/* 060394 8005F794 906C0072 */ lbu $t4, 0x72($v1) +/* 060398 8005F798 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 06039C 8005F79C 44814000 */ mtc1 $at, $f8 +/* 0603A0 8005F7A0 018D7021 */ addu $t6, $t4, $t5 +/* 0603A4 8005F7A4 A06E0072 */ sb $t6, 0x72($v1) +/* 0603A8 8005F7A8 A0780070 */ sb $t8, 0x70($v1) +/* 0603AC 8005F7AC 240F0001 */ li $t7, 1 +/* 0603B0 8005F7B0 E4680074 */ swc1 $f8, 0x74($v1) +/* 0603B4 8005F7B4 AFAF0010 */ sw $t7, 0x10($sp) +/* 0603B8 8005F7B8 02002025 */ move $a0, $s0 +/* 0603BC 8005F7BC 2405FFFF */ li $a1, -1 +/* 0603C0 8005F7C0 24060002 */ li $a2, 2 +/* 0603C4 8005F7C4 0C002DD4 */ jal func_8000B750 +/* 0603C8 8005F7C8 24070001 */ li $a3, 1 +.L8005F7CC: +/* 0603CC 8005F7CC 0C006EB2 */ jal func_8001BAC8 +/* 0603D0 8005F7D0 00002025 */ move $a0, $zero +/* 0603D4 8005F7D4 8C43004C */ lw $v1, 0x4c($v0) +/* 0603D8 8005F7D8 8C470064 */ lw $a3, 0x64($v0) +/* 0603DC 8005F7DC 8C790000 */ lw $t9, ($v1) +/* 0603E0 8005F7E0 3C058012 */ lui $a1, %hi(D_8011D610) # $a1, 0x8012 +/* 0603E4 8005F7E4 1619000B */ bne $s0, $t9, .L8005F814 +/* 0603E8 8005F7E8 24A5D610 */ addiu $a1, %lo(D_8011D610) # addiu $a1, $a1, -0x29f0 +/* 0603EC 8005F7EC 846A0014 */ lh $t2, 0x14($v1) +/* 0603F0 8005F7F0 00000000 */ nop +/* 0603F4 8005F7F4 314B0008 */ andi $t3, $t2, 8 +/* 0603F8 8005F7F8 11600006 */ beqz $t3, .L8005F814 +/* 0603FC 8005F7FC 00000000 */ nop +/* 060400 8005F800 820C003B */ lb $t4, 0x3b($s0) +/* 060404 8005F804 24010001 */ li $at, 1 +/* 060408 8005F808 15810002 */ bne $t4, $at, .L8005F814 +/* 06040C 8005F80C 240D0004 */ li $t5, 4 +/* 060410 8005F810 A0ED0187 */ sb $t5, 0x187($a3) +.L8005F814: +/* 060414 8005F814 80EE01D8 */ lb $t6, 0x1d8($a3) +/* 060418 8005F818 00000000 */ nop +/* 06041C 8005F81C 11C00008 */ beqz $t6, .L8005F840 +/* 060420 8005F820 8FBF0024 */ lw $ra, 0x24($sp) +/* 060424 8005F824 80B80000 */ lb $t8, ($a1) +/* 060428 8005F828 240F0001 */ li $t7, 1 +/* 06042C 8005F82C 17000003 */ bnez $t8, .L8005F83C +/* 060430 8005F830 00E02025 */ move $a0, $a3 +/* 060434 8005F834 0C0172DA */ jal func_8005CB68 +/* 060438 8005F838 A0AF0000 */ sb $t7, ($a1) +.L8005F83C: +/* 06043C 8005F83C 8FBF0024 */ lw $ra, 0x24($sp) +.L8005F840: +/* 060440 8005F840 8FB00020 */ lw $s0, 0x20($sp) +/* 060444 8005F844 03E00008 */ jr $ra +/* 060448 8005F848 27BD0040 */ addiu $sp, $sp, 0x40 + +/* 06044C 8005F84C 00000000 */ nop diff --git a/asm/non_matchings/unknown_05F690/func_8005F850.s b/asm/non_matchings/unknown_05F690/func_8005F850.s new file mode 100644 index 00000000..75f1551f --- /dev/null +++ b/asm/non_matchings/unknown_05F690/func_8005F850.s @@ -0,0 +1,90 @@ +glabel func_8005F850 +/* 060450 8005F850 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 060454 8005F854 AFBF0014 */ sw $ra, 0x14($sp) +/* 060458 8005F858 3C0500FF */ lui $a1, (0x00FF00FF >> 16) # lui $a1, 0xff +/* 06045C 8005F85C 34A500FF */ ori $a1, (0x00FF00FF & 0xFFFF) # ori $a1, $a1, 0xff +/* 060460 8005F860 0C01C327 */ jal func_80070C9C +/* 060464 8005F864 24040230 */ li $a0, 560 +/* 060468 8005F868 3C018012 */ lui $at, %hi(D_8011D624) # $at, 0x8012 +/* 06046C 8005F86C 3C0500FF */ lui $a1, (0x00FF00FF >> 16) # lui $a1, 0xff +/* 060470 8005F870 AC22D624 */ sw $v0, %lo(D_8011D624)($at) +/* 060474 8005F874 34A500FF */ ori $a1, (0x00FF00FF & 0xFFFF) # ori $a1, $a1, 0xff +/* 060478 8005F878 0C01C327 */ jal func_80070C9C +/* 06047C 8005F87C 24040190 */ li $a0, 400 +/* 060480 8005F880 3C018012 */ lui $at, %hi(D_8011D628) # $at, 0x8012 +/* 060484 8005F884 AC22D628 */ sw $v0, %lo(D_8011D628)($at) +/* 060488 8005F888 3C018012 */ lui $at, %hi(D_8011D62C) # $at, 0x8012 +/* 06048C 8005F88C AC20D62C */ sw $zero, %lo(D_8011D62C)($at) +/* 060490 8005F890 3C018012 */ lui $at, %hi(D_8011D634) # $at, 0x8012 +/* 060494 8005F894 AC20D634 */ sw $zero, %lo(D_8011D634)($at) +/* 060498 8005F898 0C01DB16 */ jal func_80076C58 +/* 06049C 8005F89C 2404001C */ li $a0, 28 +/* 0604A0 8005F8A0 3C058012 */ lui $a1, %hi(D_8011D630) # $a1, 0x8012 +/* 0604A4 8005F8A4 3C078012 */ lui $a3, %hi(D_8011D620) # $a3, 0x8012 +/* 0604A8 8005F8A8 24E7D620 */ addiu $a3, %lo(D_8011D620) # addiu $a3, $a3, -0x29e0 +/* 0604AC 8005F8AC 24A5D630 */ addiu $a1, %lo(D_8011D630) # addiu $a1, $a1, -0x29d0 +/* 0604B0 8005F8B0 00007080 */ sll $t6, $zero, 2 +/* 0604B4 8005F8B4 ACE20000 */ sw $v0, ($a3) +/* 0604B8 8005F8B8 ACA00000 */ sw $zero, ($a1) +/* 0604BC 8005F8BC 004E7821 */ addu $t7, $v0, $t6 +/* 0604C0 8005F8C0 8DF80000 */ lw $t8, ($t7) +/* 0604C4 8005F8C4 2406FFFF */ li $a2, -1 +/* 0604C8 8005F8C8 00402025 */ move $a0, $v0 +/* 0604CC 8005F8CC 10D80009 */ beq $a2, $t8, .L8005F8F4 +/* 0604D0 8005F8D0 00001825 */ move $v1, $zero +/* 0604D4 8005F8D4 24790001 */ addiu $t9, $v1, 1 +.L8005F8D8: +/* 0604D8 8005F8D8 00194080 */ sll $t0, $t9, 2 +/* 0604DC 8005F8DC 00884821 */ addu $t1, $a0, $t0 +/* 0604E0 8005F8E0 ACB90000 */ sw $t9, ($a1) +/* 0604E4 8005F8E4 8D2A0000 */ lw $t2, ($t1) +/* 0604E8 8005F8E8 03201825 */ move $v1, $t9 +/* 0604EC 8005F8EC 14CAFFFA */ bne $a2, $t2, .L8005F8D8 +/* 0604F0 8005F8F0 24790001 */ addiu $t9, $v1, 1 +.L8005F8F4: +/* 0604F4 8005F8F4 246BFFFF */ addiu $t3, $v1, -1 +/* 0604F8 8005F8F8 ACAB0000 */ sw $t3, ($a1) +/* 0604FC 8005F8FC 0C01DB16 */ jal func_80076C58 +/* 060500 8005F900 2404001E */ li $a0, 30 +/* 060504 8005F904 3C018012 */ lui $at, %hi(D_8011D638) # $at, 0x8012 +/* 060508 8005F908 AC22D638 */ sw $v0, %lo(D_8011D638)($at) +/* 06050C 8005F90C 0C01DB16 */ jal func_80076C58 +/* 060510 8005F910 2404001F */ li $a0, 31 +/* 060514 8005F914 3C018012 */ lui $at, %hi(D_8011D63C) # $at, 0x8012 +/* 060518 8005F918 3C0500FF */ lui $a1, (0x00FF00FF >> 16) # lui $a1, 0xff +/* 06051C 8005F91C AC22D63C */ sw $v0, %lo(D_8011D63C)($at) +/* 060520 8005F920 34A500FF */ ori $a1, (0x00FF00FF & 0xFFFF) # ori $a1, $a1, 0xff +/* 060524 8005F924 0C01C327 */ jal func_80070C9C +/* 060528 8005F928 24040C00 */ li $a0, 3072 +/* 06052C 8005F92C 3C018012 */ lui $at, %hi(D_8011D644) # $at, 0x8012 +/* 060530 8005F930 3C05800E */ lui $a1, %hi(D_800DCEA4) # $a1, 0x800e +/* 060534 8005F934 8CA5CEA4 */ lw $a1, %lo(D_800DCEA4)($a1) +/* 060538 8005F938 AC22D644 */ sw $v0, %lo(D_8011D644)($at) +/* 06053C 8005F93C 3C018012 */ lui $at, %hi(D_8011D640) # $at, 0x8012 +/* 060540 8005F940 AC20D640 */ sw $zero, %lo(D_8011D640)($at) +/* 060544 8005F944 00002025 */ move $a0, $zero +/* 060548 8005F948 18A00009 */ blez $a1, .L8005F970 +/* 06054C 8005F94C 00001825 */ move $v1, $zero +/* 060550 8005F950 3C028002 */ lui $v0, %hi(D_80024D54) # $v0, 0x8002 +/* 060554 8005F954 24424D54 */ addiu $v0, %lo(D_80024D54) # addiu $v0, $v0, 0x4d54 +.L8005F958: +/* 060558 8005F958 00436021 */ addu $t4, $v0, $v1 +/* 06055C 8005F95C 918D0000 */ lbu $t5, ($t4) +/* 060560 8005F960 24630001 */ addiu $v1, $v1, 1 +/* 060564 8005F964 0065082A */ slt $at, $v1, $a1 +/* 060568 8005F968 1420FFFB */ bnez $at, .L8005F958 +/* 06056C 8005F96C 008D2021 */ addu $a0, $a0, $t5 +.L8005F970: +/* 060570 8005F970 3C0E800E */ lui $t6, %hi(D_800DCEA0) # $t6, 0x800e +/* 060574 8005F974 8DCECEA0 */ lw $t6, %lo(D_800DCEA0)($t6) +/* 060578 8005F978 00000000 */ nop +/* 06057C 8005F97C 108E0004 */ beq $a0, $t6, .L8005F990 +/* 060580 8005F980 8FBF0014 */ lw $ra, 0x14($sp) +/* 060584 8005F984 0C017097 */ jal func_8005C25C +/* 060588 8005F988 00000000 */ nop +/* 06058C 8005F98C 8FBF0014 */ lw $ra, 0x14($sp) +.L8005F990: +/* 060590 8005F990 27BD0018 */ addiu $sp, $sp, 0x18 +/* 060594 8005F994 03E00008 */ jr $ra +/* 060598 8005F998 00000000 */ nop + diff --git a/asm/non_matchings/unknown_05F690/func_8005F99C.s b/asm/non_matchings/unknown_05F690/func_8005F99C.s new file mode 100644 index 00000000..4df9acc1 --- /dev/null +++ b/asm/non_matchings/unknown_05F690/func_8005F99C.s @@ -0,0 +1,223 @@ +glabel func_8005F99C +/* 06059C 8005F99C 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 0605A0 8005F9A0 3C0E8012 */ lui $t6, %hi(D_8011D630) # $t6, 0x8012 +/* 0605A4 8005F9A4 8DCED630 */ lw $t6, %lo(D_8011D630)($t6) +/* 0605A8 8005F9A8 AFB30020 */ sw $s3, 0x20($sp) +/* 0605AC 8005F9AC 008E082A */ slt $at, $a0, $t6 +/* 0605B0 8005F9B0 00809825 */ move $s3, $a0 +/* 0605B4 8005F9B4 AFBF0024 */ sw $ra, 0x24($sp) +/* 0605B8 8005F9B8 AFB2001C */ sw $s2, 0x1c($sp) +/* 0605BC 8005F9BC AFB10018 */ sw $s1, 0x18($sp) +/* 0605C0 8005F9C0 AFB00014 */ sw $s0, 0x14($sp) +/* 0605C4 8005F9C4 14200002 */ bnez $at, .L8005F9D0 +/* 0605C8 8005F9C8 AFA5005C */ sw $a1, 0x5c($sp) +/* 0605CC 8005F9CC 00009825 */ move $s3, $zero +.L8005F9D0: +/* 0605D0 8005F9D0 3C068012 */ lui $a2, %hi(D_8011D62C) # $a2, 0x8012 +/* 0605D4 8005F9D4 24C6D62C */ addiu $a2, %lo(D_8011D62C) # addiu $a2, $a2, -0x29d4 +/* 0605D8 8005F9D8 8CC40000 */ lw $a0, ($a2) +/* 0605DC 8005F9DC 00008825 */ move $s1, $zero +/* 0605E0 8005F9E0 18800017 */ blez $a0, .L8005FA40 +/* 0605E4 8005F9E4 3C038012 */ lui $v1, %hi(D_8011D624) # $v1, 0x8012 +/* 0605E8 8005F9E8 8C63D624 */ lw $v1, %lo(D_8011D624)($v1) +/* 0605EC 8005F9EC 00000000 */ nop +/* 0605F0 8005F9F0 0011C0C0 */ sll $t8, $s1, 3 +.L8005F9F4: +/* 0605F4 8005F9F4 00781021 */ addu $v0, $v1, $t8 +/* 0605F8 8005F9F8 8C590000 */ lw $t9, ($v0) +/* 0605FC 8005F9FC 26310001 */ addiu $s1, $s1, 1 +/* 060600 8005FA00 1679000D */ bne $s3, $t9, .L8005FA38 +/* 060604 8005FA04 0224082A */ slt $at, $s1, $a0 +/* 060608 8005FA08 8C520004 */ lw $s2, 4($v0) +/* 06060C 8005FA0C 8FA5005C */ lw $a1, 0x5c($sp) +/* 060610 8005FA10 0C017F34 */ jal func_8005FCD0 +/* 060614 8005FA14 02402025 */ move $a0, $s2 +/* 060618 8005FA18 10400005 */ beqz $v0, .L8005FA30 +/* 06061C 8005FA1C 00401825 */ move $v1, $v0 +/* 060620 8005FA20 86480030 */ lh $t0, 0x30($s2) +/* 060624 8005FA24 00000000 */ nop +/* 060628 8005FA28 25090001 */ addiu $t1, $t0, 1 +/* 06062C 8005FA2C A6490030 */ sh $t1, 0x30($s2) +.L8005FA30: +/* 060630 8005FA30 100000A0 */ b .L8005FCB4 +/* 060634 8005FA34 00601025 */ move $v0, $v1 +.L8005FA38: +/* 060638 8005FA38 1420FFEE */ bnez $at, .L8005F9F4 +/* 06063C 8005FA3C 0011C0C0 */ sll $t8, $s1, 3 +.L8005FA40: +/* 060640 8005FA40 3C038012 */ lui $v1, %hi(D_8011D634) # $v1, 0x8012 +/* 060644 8005FA44 2463D634 */ addiu $v1, %lo(D_8011D634) # addiu $v1, $v1, -0x29cc +/* 060648 8005FA48 8C620000 */ lw $v0, ($v1) +/* 06064C 8005FA4C 3C0B8012 */ lui $t3, %hi(D_8011D628) # $t3, 0x8012 +/* 060650 8005FA50 18400008 */ blez $v0, .L8005FA74 +/* 060654 8005FA54 244AFFFF */ addiu $t2, $v0, -1 +/* 060658 8005FA58 AC6A0000 */ sw $t2, ($v1) +/* 06065C 8005FA5C 8D6BD628 */ lw $t3, %lo(D_8011D628)($t3) +/* 060660 8005FA60 000A6880 */ sll $t5, $t2, 2 +/* 060664 8005FA64 016D7021 */ addu $t6, $t3, $t5 +/* 060668 8005FA68 8DCF0000 */ lw $t7, ($t6) +/* 06066C 8005FA6C 10000004 */ b .L8005FA80 +/* 060670 8005FA70 AFAF0050 */ sw $t7, 0x50($sp) +.L8005FA74: +/* 060674 8005FA74 24980001 */ addiu $t8, $a0, 1 +/* 060678 8005FA78 AFA40050 */ sw $a0, 0x50($sp) +/* 06067C 8005FA7C ACD80000 */ sw $t8, ($a2) +.L8005FA80: +/* 060680 8005FA80 3C198012 */ lui $t9, %hi(D_8011D620) # $t9, 0x8012 +/* 060684 8005FA84 8F39D620 */ lw $t9, %lo(D_8011D620)($t9) +/* 060688 8005FA88 00134080 */ sll $t0, $s3, 2 +/* 06068C 8005FA8C 03281021 */ addu $v0, $t9, $t0 +/* 060690 8005FA90 8C500000 */ lw $s0, ($v0) +/* 060694 8005FA94 8C490004 */ lw $t1, 4($v0) +/* 060698 8005FA98 2404001D */ li $a0, 29 +/* 06069C 8005FA9C 01305023 */ subu $t2, $t1, $s0 +/* 0606A0 8005FAA0 AFAA0048 */ sw $t2, 0x48($sp) +/* 0606A4 8005FAA4 0C031877 */ jal func_800C61DC +/* 0606A8 8005FAA8 02002825 */ move $a1, $s0 +/* 0606AC 8005FAAC 24440080 */ addiu $a0, $v0, 0x80 +/* 0606B0 8005FAB0 3C05FF00 */ lui $a1, (0xFF0000FF >> 16) # lui $a1, 0xff00 +/* 0606B4 8005FAB4 AFA40034 */ sw $a0, 0x34($sp) +/* 0606B8 8005FAB8 0C01C344 */ jal func_80070D10 +/* 0606BC 8005FABC 34A500FF */ ori $a1, (0xFF0000FF & 0xFFFF) # ori $a1, $a1, 0xff +/* 0606C0 8005FAC0 14400003 */ bnez $v0, .L8005FAD0 +/* 0606C4 8005FAC4 00409025 */ move $s2, $v0 +/* 0606C8 8005FAC8 1000007A */ b .L8005FCB4 +/* 0606CC 8005FACC 00001025 */ move $v0, $zero +.L8005FAD0: +/* 0606D0 8005FAD0 8FAC0034 */ lw $t4, 0x34($sp) +/* 0606D4 8005FAD4 8FA70048 */ lw $a3, 0x48($sp) +/* 0606D8 8005FAD8 024C5821 */ addu $t3, $s2, $t4 +/* 0606DC 8005FADC 01672823 */ subu $a1, $t3, $a3 +/* 0606E0 8005FAE0 AFA50030 */ sw $a1, 0x30($sp) +/* 0606E4 8005FAE4 2404001D */ li $a0, 29 +/* 0606E8 8005FAE8 02003025 */ move $a2, $s0 +/* 0606EC 8005FAEC 0C01DB9A */ jal func_80076E68 +/* 0606F0 8005FAF0 00008825 */ move $s1, $zero +/* 0606F4 8005FAF4 8FA40030 */ lw $a0, 0x30($sp) +/* 0606F8 8005FAF8 0C031886 */ jal func_800C6218 +/* 0606FC 8005FAFC 02402825 */ move $a1, $s2 +/* 060700 8005FB00 8E4D0000 */ lw $t5, ($s2) +/* 060704 8005FB04 8E4F0004 */ lw $t7, 4($s2) +/* 060708 8005FB08 8E590008 */ lw $t9, 8($s2) +/* 06070C 8005FB0C 01B27021 */ addu $t6, $t5, $s2 +/* 060710 8005FB10 01F2C021 */ addu $t8, $t7, $s2 +/* 060714 8005FB14 8E490038 */ lw $t1, 0x38($s2) +/* 060718 8005FB18 8E4C0014 */ lw $t4, 0x14($s2) +/* 06071C 8005FB1C 8E4D001C */ lw $t5, 0x1c($s2) +/* 060720 8005FB20 8E4F004C */ lw $t7, 0x4c($s2) +/* 060724 8005FB24 86440022 */ lh $a0, 0x22($s2) +/* 060728 8005FB28 AE4E0000 */ sw $t6, ($s2) +/* 06072C 8005FB2C AE580004 */ sw $t8, 4($s2) +/* 060730 8005FB30 03324021 */ addu $t0, $t9, $s2 +/* 060734 8005FB34 24190001 */ li $t9, 1 +/* 060738 8005FB38 01325021 */ addu $t2, $t1, $s2 +/* 06073C 8005FB3C 01925821 */ addu $t3, $t4, $s2 +/* 060740 8005FB40 01B27021 */ addu $t6, $t5, $s2 +/* 060744 8005FB44 01F2C021 */ addu $t8, $t7, $s2 +/* 060748 8005FB48 AE480008 */ sw $t0, 8($s2) +/* 06074C 8005FB4C AE4A0038 */ sw $t2, 0x38($s2) +/* 060750 8005FB50 AE4B0014 */ sw $t3, 0x14($s2) +/* 060754 8005FB54 AE4E001C */ sw $t6, 0x1c($s2) +/* 060758 8005FB58 AE58004C */ sw $t8, 0x4c($s2) +/* 06075C 8005FB5C A6590030 */ sh $t9, 0x30($s2) +/* 060760 8005FB60 AE40000C */ sw $zero, 0xc($s2) +/* 060764 8005FB64 AE400010 */ sw $zero, 0x10($s2) +/* 060768 8005FB68 A6400032 */ sh $zero, 0x32($s2) +/* 06076C 8005FB6C A6400052 */ sh $zero, 0x52($s2) +/* 060770 8005FB70 AE400040 */ sw $zero, 0x40($s2) +/* 060774 8005FB74 A6400048 */ sh $zero, 0x48($s2) +/* 060778 8005FB78 AE400044 */ sw $zero, 0x44($s2) +/* 06077C 8005FB7C 1880001B */ blez $a0, .L8005FBEC +/* 060780 8005FB80 00002825 */ move $a1, $zero +/* 060784 8005FB84 8E500000 */ lw $s0, ($s2) +/* 060788 8005FB88 00001825 */ move $v1, $zero +.L8005FB8C: +/* 06078C 8005FB8C 8E040000 */ lw $a0, ($s0) +/* 060790 8005FB90 A3A5003F */ sb $a1, 0x3f($sp) +/* 060794 8005FB94 34888000 */ ori $t0, $a0, 0x8000 +/* 060798 8005FB98 01002025 */ move $a0, $t0 +/* 06079C 8005FB9C 0C01EB9D */ jal func_8007AE74 +/* 0607A0 8005FBA0 AFA3002C */ sw $v1, 0x2c($sp) +/* 0607A4 8005FBA4 8FA3002C */ lw $v1, 0x2c($sp) +/* 0607A8 8005FBA8 8E490000 */ lw $t1, ($s2) +/* 0607AC 8005FBAC 83A5003F */ lb $a1, 0x3f($sp) +/* 0607B0 8005FBB0 01235021 */ addu $t2, $t1, $v1 +/* 0607B4 8005FBB4 AD420000 */ sw $v0, ($t2) +/* 0607B8 8005FBB8 8E4C0000 */ lw $t4, ($s2) +/* 0607BC 8005FBBC 26310001 */ addiu $s1, $s1, 1 +/* 0607C0 8005FBC0 01838021 */ addu $s0, $t4, $v1 +/* 0607C4 8005FBC4 8E0B0000 */ lw $t3, ($s0) +/* 0607C8 8005FBC8 00000000 */ nop +/* 0607CC 8005FBCC 15600002 */ bnez $t3, .L8005FBD8 +/* 0607D0 8005FBD0 00000000 */ nop +/* 0607D4 8005FBD4 24050001 */ li $a1, 1 +.L8005FBD8: +/* 0607D8 8005FBD8 86440022 */ lh $a0, 0x22($s2) +/* 0607DC 8005FBDC 24630008 */ addiu $v1, $v1, 8 +/* 0607E0 8005FBE0 0224082A */ slt $at, $s1, $a0 +/* 0607E4 8005FBE4 1420FFE9 */ bnez $at, .L8005FB8C +/* 0607E8 8005FBE8 26100008 */ addiu $s0, $s0, 8 +.L8005FBEC: +/* 0607EC 8005FBEC 14A0002E */ bnez $a1, .L8005FCA8 +/* 0607F0 8005FBF0 00000000 */ nop +/* 0607F4 8005FBF4 86450028 */ lh $a1, 0x28($s2) +/* 0607F8 8005FBF8 00008825 */ move $s1, $zero +/* 0607FC 8005FBFC 18A0000B */ blez $a1, .L8005FC2C +/* 060800 8005FC00 00000000 */ nop +/* 060804 8005FC04 8E420038 */ lw $v0, 0x38($s2) +/* 060808 8005FC08 240600FF */ li $a2, 255 +.L8005FC0C: +/* 06080C 8005FC0C 90430000 */ lbu $v1, ($v0) +/* 060810 8005FC10 26310001 */ addiu $s1, $s1, 1 +/* 060814 8005FC14 10C30002 */ beq $a2, $v1, .L8005FC20 +/* 060818 8005FC18 0064082A */ slt $at, $v1, $a0 +/* 06081C 8005FC1C 10200022 */ beqz $at, .L8005FCA8 +.L8005FC20: +/* 060820 8005FC20 0225082A */ slt $at, $s1, $a1 +/* 060824 8005FC24 1420FFF9 */ bnez $at, .L8005FC0C +/* 060828 8005FC28 2442000C */ addiu $v0, $v0, 0xc +.L8005FC2C: +/* 06082C 8005FC2C 0C0183AA */ jal func_80060EA8 +/* 060830 8005FC30 02402025 */ move $a0, $s2 +/* 060834 8005FC34 1440001C */ bnez $v0, .L8005FCA8 +/* 060838 8005FC38 02402025 */ move $a0, $s2 +/* 06083C 8005FC3C 0C018680 */ jal func_80061A00 +/* 060840 8005FC40 02602825 */ move $a1, $s3 +/* 060844 8005FC44 14400018 */ bnez $v0, .L8005FCA8 +/* 060848 8005FC48 00000000 */ nop +/* 06084C 8005FC4C 8FA5005C */ lw $a1, 0x5c($sp) +/* 060850 8005FC50 0C017F34 */ jal func_8005FCD0 +/* 060854 8005FC54 02402025 */ move $a0, $s2 +/* 060858 8005FC58 10400013 */ beqz $v0, .L8005FCA8 +/* 06085C 8005FC5C 00401825 */ move $v1, $v0 +/* 060860 8005FC60 3C048012 */ lui $a0, %hi(D_8011D624) # $a0, 0x8012 +/* 060864 8005FC64 8FAD0050 */ lw $t5, 0x50($sp) +/* 060868 8005FC68 2484D624 */ addiu $a0, %lo(D_8011D624) # addiu $a0, $a0, -0x29dc +/* 06086C 8005FC6C 8C8F0000 */ lw $t7, ($a0) +/* 060870 8005FC70 000D70C0 */ sll $t6, $t5, 3 +/* 060874 8005FC74 01EEC021 */ addu $t8, $t7, $t6 +/* 060878 8005FC78 AF130000 */ sw $s3, ($t8) +/* 06087C 8005FC7C 8C990000 */ lw $t9, ($a0) +/* 060880 8005FC80 3C098012 */ lui $t1, %hi(D_8011D62C) # $t1, 0x8012 +/* 060884 8005FC84 032E4021 */ addu $t0, $t9, $t6 +/* 060888 8005FC88 AD120004 */ sw $s2, 4($t0) +/* 06088C 8005FC8C 8D29D62C */ lw $t1, %lo(D_8011D62C)($t1) +/* 060890 8005FC90 00601025 */ move $v0, $v1 +/* 060894 8005FC94 29210046 */ slti $at, $t1, 0x46 +/* 060898 8005FC98 10200003 */ beqz $at, .L8005FCA8 +/* 06089C 8005FC9C 00000000 */ nop +/* 0608A0 8005FCA0 10000004 */ b .L8005FCB4 +/* 0608A4 8005FCA4 A0600020 */ sb $zero, 0x20($v1) +.L8005FCA8: +/* 0608A8 8005FCA8 0C018016 */ jal func_80060058 +/* 0608AC 8005FCAC 02402025 */ move $a0, $s2 +/* 0608B0 8005FCB0 00001025 */ move $v0, $zero +.L8005FCB4: +/* 0608B4 8005FCB4 8FBF0024 */ lw $ra, 0x24($sp) +/* 0608B8 8005FCB8 8FB00014 */ lw $s0, 0x14($sp) +/* 0608BC 8005FCBC 8FB10018 */ lw $s1, 0x18($sp) +/* 0608C0 8005FCC0 8FB2001C */ lw $s2, 0x1c($sp) +/* 0608C4 8005FCC4 8FB30020 */ lw $s3, 0x20($sp) +/* 0608C8 8005FCC8 03E00008 */ jr $ra +/* 0608CC 8005FCCC 27BD0058 */ addiu $sp, $sp, 0x58 + diff --git a/asm/non_matchings/unknown_05F690/func_8005FCD0.s b/asm/non_matchings/unknown_05F690/func_8005FCD0.s new file mode 100644 index 00000000..4501a8b4 --- /dev/null +++ b/asm/non_matchings/unknown_05F690/func_8005FCD0.s @@ -0,0 +1,168 @@ +glabel func_8005FCD0 +/* 0608D0 8005FCD0 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0608D4 8005FCD4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0608D8 8005FCD8 848E0048 */ lh $t6, 0x48($a0) +/* 0608DC 8005FCDC 00803825 */ move $a3, $a0 +/* 0608E0 8005FCE0 11C00026 */ beqz $t6, .L8005FD7C +/* 0608E4 8005FCE4 30AF0008 */ andi $t7, $a1, 8 +/* 0608E8 8005FCE8 11E00024 */ beqz $t7, .L8005FD7C +/* 0608EC 8005FCEC 00000000 */ nop +/* 0608F0 8005FCF0 84860024 */ lh $a2, 0x24($a0) +/* 0608F4 8005FCF4 8488004A */ lh $t0, 0x4a($a0) +/* 0608F8 8005FCF8 0006C040 */ sll $t8, $a2, 1 +/* 0608FC 8005FCFC 0018C880 */ sll $t9, $t8, 2 +/* 060900 8005FD00 0338C821 */ addu $t9, $t9, $t8 +/* 060904 8005FD04 00084880 */ sll $t1, $t0, 2 +/* 060908 8005FD08 0019C840 */ sll $t9, $t9, 1 +/* 06090C 8005FD0C 01284823 */ subu $t1, $t1, $t0 +/* 060910 8005FD10 27260024 */ addiu $a2, $t9, 0x24 +/* 060914 8005FD14 00094840 */ sll $t1, $t1, 1 +/* 060918 8005FD18 01262021 */ addu $a0, $t1, $a2 +/* 06091C 8005FD1C AFA6001C */ sw $a2, 0x1c($sp) +/* 060920 8005FD20 AFA70020 */ sw $a3, 0x20($sp) +/* 060924 8005FD24 0C01C344 */ jal func_80070D10 +/* 060928 8005FD28 3405FFFF */ li $a1, 65535 +/* 06092C 8005FD2C 8FA6001C */ lw $a2, 0x1c($sp) +/* 060930 8005FD30 8FA70020 */ lw $a3, 0x20($sp) +/* 060934 8005FD34 14400003 */ bnez $v0, .L8005FD44 +/* 060938 8005FD38 00402825 */ move $a1, $v0 +/* 06093C 8005FD3C 1000007C */ b .L8005FF30 +/* 060940 8005FD40 00001025 */ move $v0, $zero +.L8005FD44: +/* 060944 8005FD44 244A0024 */ addiu $t2, $v0, 0x24 +/* 060948 8005FD48 AC4A0004 */ sw $t2, 4($v0) +/* 06094C 8005FD4C 84EB0024 */ lh $t3, 0x24($a3) +/* 060950 8005FD50 00467821 */ addu $t7, $v0, $a2 +/* 060954 8005FD54 000B6080 */ sll $t4, $t3, 2 +/* 060958 8005FD58 018B6021 */ addu $t4, $t4, $t3 +/* 06095C 8005FD5C 000C6040 */ sll $t4, $t4, 1 +/* 060960 8005FD60 004C6821 */ addu $t5, $v0, $t4 +/* 060964 8005FD64 25AE0024 */ addiu $t6, $t5, 0x24 +/* 060968 8005FD68 24180002 */ li $t8, 2 +/* 06096C 8005FD6C AC4E0008 */ sw $t6, 8($v0) +/* 060970 8005FD70 AC4F000C */ sw $t7, 0xc($v0) +/* 060974 8005FD74 10000029 */ b .L8005FE1C +/* 060978 8005FD78 A058001E */ sb $t8, 0x1e($v0) +.L8005FD7C: +/* 06097C 8005FD7C 8CF90040 */ lw $t9, 0x40($a3) +/* 060980 8005FD80 30A80001 */ andi $t0, $a1, 1 +/* 060984 8005FD84 13200016 */ beqz $t9, .L8005FDE0 +/* 060988 8005FD88 24040024 */ li $a0, 36 +/* 06098C 8005FD8C 11000014 */ beqz $t0, .L8005FDE0 +/* 060990 8005FD90 3405FFFF */ li $a1, 65535 +/* 060994 8005FD94 84E60024 */ lh $a2, 0x24($a3) +/* 060998 8005FD98 AFA70020 */ sw $a3, 0x20($sp) +/* 06099C 8005FD9C 00064880 */ sll $t1, $a2, 2 +/* 0609A0 8005FDA0 01264821 */ addu $t1, $t1, $a2 +/* 0609A4 8005FDA4 00094840 */ sll $t1, $t1, 1 +/* 0609A8 8005FDA8 0C01C344 */ jal func_80070D10 +/* 0609AC 8005FDAC 25240024 */ addiu $a0, $t1, 0x24 +/* 0609B0 8005FDB0 8FA70020 */ lw $a3, 0x20($sp) +/* 0609B4 8005FDB4 14400003 */ bnez $v0, .L8005FDC4 +/* 0609B8 8005FDB8 00402825 */ move $a1, $v0 +/* 0609BC 8005FDBC 1000005C */ b .L8005FF30 +/* 0609C0 8005FDC0 00001025 */ move $v0, $zero +.L8005FDC4: +/* 0609C4 8005FDC4 24430024 */ addiu $v1, $v0, 0x24 +/* 0609C8 8005FDC8 240A0001 */ li $t2, 1 +/* 0609CC 8005FDCC AC430004 */ sw $v1, 4($v0) +/* 0609D0 8005FDD0 AC430008 */ sw $v1, 8($v0) +/* 0609D4 8005FDD4 AC40000C */ sw $zero, 0xc($v0) +/* 0609D8 8005FDD8 10000010 */ b .L8005FE1C +/* 0609DC 8005FDDC A04A001E */ sb $t2, 0x1e($v0) +.L8005FDE0: +/* 0609E0 8005FDE0 3405FFFF */ li $a1, 65535 +/* 0609E4 8005FDE4 0C01C344 */ jal func_80070D10 +/* 0609E8 8005FDE8 AFA70020 */ sw $a3, 0x20($sp) +/* 0609EC 8005FDEC 8FA70020 */ lw $a3, 0x20($sp) +/* 0609F0 8005FDF0 14400003 */ bnez $v0, .L8005FE00 +/* 0609F4 8005FDF4 00402825 */ move $a1, $v0 +/* 0609F8 8005FDF8 1000004D */ b .L8005FF30 +/* 0609FC 8005FDFC 00001025 */ move $v0, $zero +.L8005FE00: +/* 060A00 8005FE00 8CEB0004 */ lw $t3, 4($a3) +/* 060A04 8005FE04 00000000 */ nop +/* 060A08 8005FE08 AC4B0004 */ sw $t3, 4($v0) +/* 060A0C 8005FE0C 8CEC0004 */ lw $t4, 4($a3) +/* 060A10 8005FE10 AC40000C */ sw $zero, 0xc($v0) +/* 060A14 8005FE14 A040001E */ sb $zero, 0x1e($v0) +/* 060A18 8005FE18 AC4C0008 */ sw $t4, 8($v0) +.L8005FE1C: +/* 060A1C 8005FE1C 804D001E */ lb $t5, 0x1e($v0) +/* 060A20 8005FE20 2403FFFF */ li $v1, -1 +/* 060A24 8005FE24 A4400016 */ sh $zero, 0x16($v0) +/* 060A28 8005FE28 A4400018 */ sh $zero, 0x18($v0) +/* 060A2C 8005FE2C A440001A */ sh $zero, 0x1a($v0) +/* 060A30 8005FE30 AC470000 */ sw $a3, ($v0) +/* 060A34 8005FE34 A4430010 */ sh $v1, 0x10($v0) +/* 060A38 8005FE38 A4430012 */ sh $v1, 0x12($v0) +/* 060A3C 8005FE3C 11A0003B */ beqz $t5, .L8005FF2C +/* 060A40 8005FE40 A040001F */ sb $zero, 0x1f($v0) +/* 060A44 8005FE44 8C430004 */ lw $v1, 4($v0) +/* 060A48 8005FE48 8CE40004 */ lw $a0, 4($a3) +/* 060A4C 8005FE4C 00003025 */ move $a2, $zero +.L8005FE50: +/* 060A50 8005FE50 848E0000 */ lh $t6, ($a0) +/* 060A54 8005FE54 24C60001 */ addiu $a2, $a2, 1 +/* 060A58 8005FE58 A46E0000 */ sh $t6, ($v1) +/* 060A5C 8005FE5C 848F0002 */ lh $t7, 2($a0) +/* 060A60 8005FE60 2463000A */ addiu $v1, $v1, 0xa +/* 060A64 8005FE64 A46FFFF8 */ sh $t7, -8($v1) +/* 060A68 8005FE68 84980004 */ lh $t8, 4($a0) +/* 060A6C 8005FE6C 2484000A */ addiu $a0, $a0, 0xa +/* 060A70 8005FE70 A478FFFA */ sh $t8, -6($v1) +/* 060A74 8005FE74 9099FFFC */ lbu $t9, -4($a0) +/* 060A78 8005FE78 00000000 */ nop +/* 060A7C 8005FE7C A079FFFC */ sb $t9, -4($v1) +/* 060A80 8005FE80 9088FFFD */ lbu $t0, -3($a0) +/* 060A84 8005FE84 00000000 */ nop +/* 060A88 8005FE88 A068FFFD */ sb $t0, -3($v1) +/* 060A8C 8005FE8C 9089FFFE */ lbu $t1, -2($a0) +/* 060A90 8005FE90 00000000 */ nop +/* 060A94 8005FE94 A069FFFE */ sb $t1, -2($v1) +/* 060A98 8005FE98 908AFFFF */ lbu $t2, -1($a0) +/* 060A9C 8005FE9C 00000000 */ nop +/* 060AA0 8005FEA0 A06AFFFF */ sb $t2, -1($v1) +/* 060AA4 8005FEA4 84EB0024 */ lh $t3, 0x24($a3) +/* 060AA8 8005FEA8 00000000 */ nop +/* 060AAC 8005FEAC 00CB082A */ slt $at, $a2, $t3 +/* 060AB0 8005FEB0 1420FFE7 */ bnez $at, .L8005FE50 +/* 060AB4 8005FEB4 00000000 */ nop +/* 060AB8 8005FEB8 8C430008 */ lw $v1, 8($v0) +/* 060ABC 8005FEBC 8CE40004 */ lw $a0, 4($a3) +/* 060AC0 8005FEC0 00003025 */ move $a2, $zero +.L8005FEC4: +/* 060AC4 8005FEC4 848C0000 */ lh $t4, ($a0) +/* 060AC8 8005FEC8 24C60001 */ addiu $a2, $a2, 1 +/* 060ACC 8005FECC A46C0000 */ sh $t4, ($v1) +/* 060AD0 8005FED0 848D0002 */ lh $t5, 2($a0) +/* 060AD4 8005FED4 2463000A */ addiu $v1, $v1, 0xa +/* 060AD8 8005FED8 A46DFFF8 */ sh $t5, -8($v1) +/* 060ADC 8005FEDC 848E0004 */ lh $t6, 4($a0) +/* 060AE0 8005FEE0 2484000A */ addiu $a0, $a0, 0xa +/* 060AE4 8005FEE4 A46EFFFA */ sh $t6, -6($v1) +/* 060AE8 8005FEE8 908FFFFC */ lbu $t7, -4($a0) +/* 060AEC 8005FEEC 00000000 */ nop +/* 060AF0 8005FEF0 A06FFFFC */ sb $t7, -4($v1) +/* 060AF4 8005FEF4 9098FFFD */ lbu $t8, -3($a0) +/* 060AF8 8005FEF8 00000000 */ nop +/* 060AFC 8005FEFC A078FFFD */ sb $t8, -3($v1) +/* 060B00 8005FF00 9099FFFE */ lbu $t9, -2($a0) +/* 060B04 8005FF04 00000000 */ nop +/* 060B08 8005FF08 A079FFFE */ sb $t9, -2($v1) +/* 060B0C 8005FF0C 9088FFFF */ lbu $t0, -1($a0) +/* 060B10 8005FF10 00000000 */ nop +/* 060B14 8005FF14 A068FFFF */ sb $t0, -1($v1) +/* 060B18 8005FF18 84E90024 */ lh $t1, 0x24($a3) +/* 060B1C 8005FF1C 00000000 */ nop +/* 060B20 8005FF20 00C9082A */ slt $at, $a2, $t1 +/* 060B24 8005FF24 1420FFE7 */ bnez $at, .L8005FEC4 +/* 060B28 8005FF28 00000000 */ nop +.L8005FF2C: +/* 060B2C 8005FF2C 00A01025 */ move $v0, $a1 +.L8005FF30: +/* 060B30 8005FF30 8FBF0014 */ lw $ra, 0x14($sp) +/* 060B34 8005FF34 27BD0020 */ addiu $sp, $sp, 0x20 +/* 060B38 8005FF38 03E00008 */ jr $ra +/* 060B3C 8005FF3C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_05F690/func_8005FF40.s b/asm/non_matchings/unknown_05F690/func_8005FF40.s new file mode 100644 index 00000000..2e32da98 --- /dev/null +++ b/asm/non_matchings/unknown_05F690/func_8005FF40.s @@ -0,0 +1,78 @@ +glabel func_8005FF40 +/* 060B40 8005FF40 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 060B44 8005FF44 AFBF0014 */ sw $ra, 0x14($sp) +/* 060B48 8005FF48 1080003F */ beqz $a0, .L80060048 +/* 060B4C 8005FF4C 00803825 */ move $a3, $a0 +/* 060B50 8005FF50 8C850000 */ lw $a1, ($a0) +/* 060B54 8005FF54 3C038012 */ lui $v1, %hi(D_8011D62C) # $v1, 0x8012 +/* 060B58 8005FF58 84AE0030 */ lh $t6, 0x30($a1) +/* 060B5C 8005FF5C 2408FFFF */ li $t0, -1 +/* 060B60 8005FF60 25CFFFFF */ addiu $t7, $t6, -1 +/* 060B64 8005FF64 A4AF0030 */ sh $t7, 0x30($a1) +/* 060B68 8005FF68 84B80030 */ lh $t8, 0x30($a1) +/* 060B6C 8005FF6C 00000000 */ nop +/* 060B70 8005FF70 1B000005 */ blez $t8, .L8005FF88 +/* 060B74 8005FF74 00000000 */ nop +/* 060B78 8005FF78 0C01C450 */ jal func_80071140 +/* 060B7C 8005FF7C 00000000 */ nop +/* 060B80 8005FF80 10000032 */ b .L8006004C +/* 060B84 8005FF84 8FBF0014 */ lw $ra, 0x14($sp) +.L8005FF88: +/* 060B88 8005FF88 8C63D62C */ lw $v1, %lo(D_8011D62C)($v1) +/* 060B8C 8005FF8C 2406FFFF */ li $a2, -1 +/* 060B90 8005FF90 1860000F */ blez $v1, .L8005FFD0 +/* 060B94 8005FF94 00001025 */ move $v0, $zero +/* 060B98 8005FF98 3C048012 */ lui $a0, %hi(D_8011D624) # $a0, 0x8012 +/* 060B9C 8005FF9C 8C84D624 */ lw $a0, %lo(D_8011D624)($a0) +/* 060BA0 8005FFA0 00000000 */ nop +/* 060BA4 8005FFA4 000248C0 */ sll $t1, $v0, 3 +.L8005FFA8: +/* 060BA8 8005FFA8 00895021 */ addu $t2, $a0, $t1 +/* 060BAC 8005FFAC 8D4B0004 */ lw $t3, 4($t2) +/* 060BB0 8005FFB0 00000000 */ nop +/* 060BB4 8005FFB4 14AB0002 */ bne $a1, $t3, .L8005FFC0 +/* 060BB8 8005FFB8 00000000 */ nop +/* 060BBC 8005FFBC 00403025 */ move $a2, $v0 +.L8005FFC0: +/* 060BC0 8005FFC0 24420001 */ addiu $v0, $v0, 1 +/* 060BC4 8005FFC4 0043082A */ slt $at, $v0, $v1 +/* 060BC8 8005FFC8 1420FFF7 */ bnez $at, .L8005FFA8 +/* 060BCC 8005FFCC 000248C0 */ sll $t1, $v0, 3 +.L8005FFD0: +/* 060BD0 8005FFD0 10C8001D */ beq $a2, $t0, .L80060048 +/* 060BD4 8005FFD4 00A02025 */ move $a0, $a1 +/* 060BD8 8005FFD8 AFA60018 */ sw $a2, 0x18($sp) +/* 060BDC 8005FFDC 0C018016 */ jal func_80060058 +/* 060BE0 8005FFE0 AFA70020 */ sw $a3, 0x20($sp) +/* 060BE4 8005FFE4 3C038012 */ lui $v1, %hi(D_8011D634) # $v1, 0x8012 +/* 060BE8 8005FFE8 2463D634 */ addiu $v1, %lo(D_8011D634) # addiu $v1, $v1, -0x29cc +/* 060BEC 8005FFEC 8C6D0000 */ lw $t5, ($v1) +/* 060BF0 8005FFF0 3C0C8012 */ lui $t4, %hi(D_8011D628) # $t4, 0x8012 +/* 060BF4 8005FFF4 8D8CD628 */ lw $t4, %lo(D_8011D628)($t4) +/* 060BF8 8005FFF8 8FA20018 */ lw $v0, 0x18($sp) +/* 060BFC 8005FFFC 000D7080 */ sll $t6, $t5, 2 +/* 060C00 80060000 8FA40020 */ lw $a0, 0x20($sp) +/* 060C04 80060004 018E7821 */ addu $t7, $t4, $t6 +/* 060C08 80060008 3C058012 */ lui $a1, %hi(D_8011D624) # $a1, 0x8012 +/* 060C0C 8006000C ADE20000 */ sw $v0, ($t7) +/* 060C10 80060010 8C780000 */ lw $t8, ($v1) +/* 060C14 80060014 24A5D624 */ addiu $a1, %lo(D_8011D624) # addiu $a1, $a1, -0x29dc +/* 060C18 80060018 8CAA0000 */ lw $t2, ($a1) +/* 060C1C 8006001C 000248C0 */ sll $t1, $v0, 3 +/* 060C20 80060020 27190001 */ addiu $t9, $t8, 1 +/* 060C24 80060024 2408FFFF */ li $t0, -1 +/* 060C28 80060028 AC790000 */ sw $t9, ($v1) +/* 060C2C 8006002C 01495821 */ addu $t3, $t2, $t1 +/* 060C30 80060030 AD680000 */ sw $t0, ($t3) +/* 060C34 80060034 8CAD0000 */ lw $t5, ($a1) +/* 060C38 80060038 00000000 */ nop +/* 060C3C 8006003C 01A96021 */ addu $t4, $t5, $t1 +/* 060C40 80060040 0C01C450 */ jal func_80071140 +/* 060C44 80060044 AD880004 */ sw $t0, 4($t4) +.L80060048: +/* 060C48 80060048 8FBF0014 */ lw $ra, 0x14($sp) +.L8006004C: +/* 060C4C 8006004C 27BD0020 */ addiu $sp, $sp, 0x20 +/* 060C50 80060050 03E00008 */ jr $ra +/* 060C54 80060054 00000000 */ nop + diff --git a/asm/non_matchings/unknown_05F690/func_80060058.s b/asm/non_matchings/unknown_05F690/func_80060058.s new file mode 100644 index 00000000..17f8f697 --- /dev/null +++ b/asm/non_matchings/unknown_05F690/func_80060058.s @@ -0,0 +1,83 @@ +glabel func_80060058 +/* 060C58 80060058 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 060C5C 8006005C AFBF0024 */ sw $ra, 0x24($sp) +/* 060C60 80060060 AFB20020 */ sw $s2, 0x20($sp) +/* 060C64 80060064 AFB1001C */ sw $s1, 0x1c($sp) +/* 060C68 80060068 AFB00018 */ sw $s0, 0x18($sp) +/* 060C6C 8006006C 84820022 */ lh $v0, 0x22($a0) +/* 060C70 80060070 00809025 */ move $s2, $a0 +/* 060C74 80060074 18400011 */ blez $v0, .L800600BC +/* 060C78 80060078 00008025 */ move $s0, $zero +/* 060C7C 8006007C 00008825 */ move $s1, $zero +.L80060080: +/* 060C80 80060080 8E4E0000 */ lw $t6, ($s2) +/* 060C84 80060084 00000000 */ nop +/* 060C88 80060088 01D17821 */ addu $t7, $t6, $s1 +/* 060C8C 8006008C 8DE40000 */ lw $a0, ($t7) +/* 060C90 80060090 00000000 */ nop +/* 060C94 80060094 10800005 */ beqz $a0, .L800600AC +/* 060C98 80060098 00000000 */ nop +/* 060C9C 8006009C 0C01ECAF */ jal func_8007B2BC +/* 060CA0 800600A0 00000000 */ nop +/* 060CA4 800600A4 86420022 */ lh $v0, 0x22($s2) +/* 060CA8 800600A8 00000000 */ nop +.L800600AC: +/* 060CAC 800600AC 26100001 */ addiu $s0, $s0, 1 +/* 060CB0 800600B0 0202082A */ slt $at, $s0, $v0 +/* 060CB4 800600B4 1420FFF2 */ bnez $at, .L80060080 +/* 060CB8 800600B8 26310008 */ addiu $s1, $s1, 8 +.L800600BC: +/* 060CBC 800600BC 8E44000C */ lw $a0, 0xc($s2) +/* 060CC0 800600C0 00000000 */ nop +/* 060CC4 800600C4 10800003 */ beqz $a0, .L800600D4 +/* 060CC8 800600C8 00000000 */ nop +/* 060CCC 800600CC 0C01C450 */ jal func_80071140 +/* 060CD0 800600D0 00000000 */ nop +.L800600D4: +/* 060CD4 800600D4 8E440010 */ lw $a0, 0x10($s2) +/* 060CD8 800600D8 00000000 */ nop +/* 060CDC 800600DC 10800003 */ beqz $a0, .L800600EC +/* 060CE0 800600E0 00000000 */ nop +/* 060CE4 800600E4 0C01C450 */ jal func_80071140 +/* 060CE8 800600E8 00000000 */ nop +.L800600EC: +/* 060CEC 800600EC 8E440040 */ lw $a0, 0x40($s2) +/* 060CF0 800600F0 00000000 */ nop +/* 060CF4 800600F4 10800003 */ beqz $a0, .L80060104 +/* 060CF8 800600F8 00000000 */ nop +/* 060CFC 800600FC 0C01C450 */ jal func_80071140 +/* 060D00 80060100 00000000 */ nop +.L80060104: +/* 060D04 80060104 8E580044 */ lw $t8, 0x44($s2) +/* 060D08 80060108 00000000 */ nop +/* 060D0C 8006010C 13000013 */ beqz $t8, .L8006015C +/* 060D10 80060110 00000000 */ nop +/* 060D14 80060114 86590048 */ lh $t9, 0x48($s2) +/* 060D18 80060118 00008025 */ move $s0, $zero +/* 060D1C 8006011C 1320000F */ beqz $t9, .L8006015C +/* 060D20 80060120 00008825 */ move $s1, $zero +.L80060124: +/* 060D24 80060124 8E480044 */ lw $t0, 0x44($s2) +/* 060D28 80060128 00000000 */ nop +/* 060D2C 8006012C 01114821 */ addu $t1, $t0, $s1 +/* 060D30 80060130 8D240000 */ lw $a0, ($t1) +/* 060D34 80060134 0C01C450 */ jal func_80071140 +/* 060D38 80060138 2484FFFC */ addiu $a0, $a0, -4 +/* 060D3C 8006013C 864A0048 */ lh $t2, 0x48($s2) +/* 060D40 80060140 26100001 */ addiu $s0, $s0, 1 +/* 060D44 80060144 020A082A */ slt $at, $s0, $t2 +/* 060D48 80060148 1420FFF6 */ bnez $at, .L80060124 +/* 060D4C 8006014C 26310008 */ addiu $s1, $s1, 8 +/* 060D50 80060150 8E440044 */ lw $a0, 0x44($s2) +/* 060D54 80060154 0C01C450 */ jal func_80071140 +/* 060D58 80060158 00000000 */ nop +.L8006015C: +/* 060D5C 8006015C 0C01C450 */ jal func_80071140 +/* 060D60 80060160 02402025 */ move $a0, $s2 +/* 060D64 80060164 8FBF0024 */ lw $ra, 0x24($sp) +/* 060D68 80060168 8FB00018 */ lw $s0, 0x18($sp) +/* 060D6C 8006016C 8FB1001C */ lw $s1, 0x1c($sp) +/* 060D70 80060170 8FB20020 */ lw $s2, 0x20($sp) +/* 060D74 80060174 03E00008 */ jr $ra +/* 060D78 80060178 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_05F690/func_8006017C.s b/asm/non_matchings/unknown_05F690/func_8006017C.s new file mode 100644 index 00000000..7f340501 --- /dev/null +++ b/asm/non_matchings/unknown_05F690/func_8006017C.s @@ -0,0 +1,505 @@ +glabel func_8006017C +/* 060D7C 8006017C 27BDFF00 */ addiu $sp, $sp, -0x100 +/* 060D80 80060180 AFBF006C */ sw $ra, 0x6c($sp) +/* 060D84 80060184 AFBE0068 */ sw $fp, 0x68($sp) +/* 060D88 80060188 AFB70064 */ sw $s7, 0x64($sp) +/* 060D8C 8006018C AFB60060 */ sw $s6, 0x60($sp) +/* 060D90 80060190 AFB5005C */ sw $s5, 0x5c($sp) +/* 060D94 80060194 AFB40058 */ sw $s4, 0x58($sp) +/* 060D98 80060198 AFB30054 */ sw $s3, 0x54($sp) +/* 060D9C 8006019C AFB20050 */ sw $s2, 0x50($sp) +/* 060DA0 800601A0 AFB1004C */ sw $s1, 0x4c($sp) +/* 060DA4 800601A4 AFB00048 */ sw $s0, 0x48($sp) +/* 060DA8 800601A8 E7BF0040 */ swc1 $f31, 0x40($sp) +/* 060DAC 800601AC E7BE0044 */ swc1 $f30, 0x44($sp) +/* 060DB0 800601B0 E7BD0038 */ swc1 $f29, 0x38($sp) +/* 060DB4 800601B4 E7BC003C */ swc1 $f28, 0x3c($sp) +/* 060DB8 800601B8 E7BB0030 */ swc1 $f27, 0x30($sp) +/* 060DBC 800601BC E7BA0034 */ swc1 $f26, 0x34($sp) +/* 060DC0 800601C0 E7B90028 */ swc1 $f25, 0x28($sp) +/* 060DC4 800601C4 E7B8002C */ swc1 $f24, 0x2c($sp) +/* 060DC8 800601C8 E7B70020 */ swc1 $f23, 0x20($sp) +/* 060DCC 800601CC E7B60024 */ swc1 $f22, 0x24($sp) +/* 060DD0 800601D0 E7B50018 */ swc1 $f21, 0x18($sp) +/* 060DD4 800601D4 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 060DD8 800601D8 8C8E000C */ lw $t6, 0xc($a0) +/* 060DDC 800601DC 00809025 */ move $s2, $a0 +/* 060DE0 800601E0 15C001B3 */ bnez $t6, .L800608B0 +/* 060DE4 800601E4 3C10FF00 */ lui $s0, (0xFF0000FF >> 16) # lui $s0, 0xff00 +/* 060DE8 800601E8 84840028 */ lh $a0, 0x28($a0) +/* 060DEC 800601EC 0000A025 */ move $s4, $zero +/* 060DF0 800601F0 18800011 */ blez $a0, .L80060238 +/* 060DF4 800601F4 361000FF */ ori $s0, (0xFF0000FF & 0xFFFF) # ori $s0, $s0, 0xff +/* 060DF8 800601F8 00043080 */ sll $a2, $a0, 2 +/* 060DFC 800601FC 00C43023 */ subu $a2, $a2, $a0 +/* 060E00 80060200 8E420038 */ lw $v0, 0x38($s2) +/* 060E04 80060204 00063080 */ sll $a2, $a2, 2 +/* 060E08 80060208 00002825 */ move $a1, $zero +.L8006020C: +/* 060E0C 8006020C 8C4F0008 */ lw $t7, 8($v0) +/* 060E10 80060210 84430004 */ lh $v1, 4($v0) +/* 060E14 80060214 84440010 */ lh $a0, 0x10($v0) +/* 060E18 80060218 31F80200 */ andi $t8, $t7, 0x200 +/* 060E1C 8006021C 17000003 */ bnez $t8, .L8006022C +/* 060E20 80060220 24A5000C */ addiu $a1, $a1, 0xc +/* 060E24 80060224 0284C821 */ addu $t9, $s4, $a0 +/* 060E28 80060228 0323A023 */ subu $s4, $t9, $v1 +.L8006022C: +/* 060E2C 8006022C 00A6082A */ slt $at, $a1, $a2 +/* 060E30 80060230 1420FFF6 */ bnez $at, .L8006020C +/* 060E34 80060234 2442000C */ addiu $v0, $v0, 0xc +.L80060238: +/* 060E38 80060238 001420C0 */ sll $a0, $s4, 3 +/* 060E3C 8006023C 0C01C344 */ jal func_80070D10 +/* 060E40 80060240 02002825 */ move $a1, $s0 +/* 060E44 80060244 1040019A */ beqz $v0, .L800608B0 +/* 060E48 80060248 AE42000C */ sw $v0, 0xc($s2) +/* 060E4C 8006024C 00142180 */ sll $a0, $s4, 6 +/* 060E50 80060250 0C01C344 */ jal func_80070D10 +/* 060E54 80060254 02002825 */ move $a1, $s0 +/* 060E58 80060258 14400006 */ bnez $v0, .L80060274 +/* 060E5C 8006025C AE420010 */ sw $v0, 0x10($s2) +/* 060E60 80060260 8E44000C */ lw $a0, 0xc($s2) +/* 060E64 80060264 0C01C450 */ jal func_80071140 +/* 060E68 80060268 00000000 */ nop +/* 060E6C 8006026C 10000190 */ b .L800608B0 +/* 060E70 80060270 AE40000C */ sw $zero, 0xc($s2) +.L80060274: +/* 060E74 80060274 AFA000EC */ sw $zero, 0xec($sp) +/* 060E78 80060278 86440028 */ lh $a0, 0x28($s2) +/* 060E7C 8006027C 0000A025 */ move $s4, $zero +/* 060E80 80060280 188000B9 */ blez $a0, .L80060568 +/* 060E84 80060284 2417000A */ li $s7, 10 +/* 060E88 80060288 AFA0007C */ sw $zero, 0x7c($sp) +.L8006028C: +/* 060E8C 8006028C 8E4B0038 */ lw $t3, 0x38($s2) +/* 060E90 80060290 8FAC007C */ lw $t4, 0x7c($sp) +/* 060E94 80060294 001480C0 */ sll $s0, $s4, 3 +/* 060E98 80060298 016C1021 */ addu $v0, $t3, $t4 +/* 060E9C 8006029C 844D0010 */ lh $t5, 0x10($v0) +/* 060EA0 800602A0 84430004 */ lh $v1, 4($v0) +/* 060EA4 800602A4 84550002 */ lh $s5, 2($v0) +/* 060EA8 800602A8 AFAD00F4 */ sw $t5, 0xf4($sp) +/* 060EAC 800602AC 8C4E0008 */ lw $t6, 8($v0) +/* 060EB0 800602B0 2478FFFF */ addiu $t8, $v1, -1 +/* 060EB4 800602B4 31CF0200 */ andi $t7, $t6, 0x200 +/* 060EB8 800602B8 11E00002 */ beqz $t7, .L800602C4 +/* 060EBC 800602BC 00038900 */ sll $s1, $v1, 4 +/* 060EC0 800602C0 AFB800F4 */ sw $t8, 0xf4($sp) +.L800602C4: +/* 060EC4 800602C4 8FB900F4 */ lw $t9, 0xf4($sp) +/* 060EC8 800602C8 0060B025 */ move $s6, $v1 +/* 060ECC 800602CC 0079082A */ slt $at, $v1, $t9 +/* 060ED0 800602D0 1020009D */ beqz $at, .L80060548 +/* 060ED4 800602D4 8FAD00EC */ lw $t5, 0xec($sp) +.L800602D8: +/* 060ED8 800602D8 8E4B0008 */ lw $t3, 8($s2) +/* 060EDC 800602DC 8E430004 */ lw $v1, 4($s2) +/* 060EE0 800602E0 01712021 */ addu $a0, $t3, $s1 +/* 060EE4 800602E4 908C0001 */ lbu $t4, 1($a0) +/* 060EE8 800602E8 00000000 */ nop +/* 060EEC 800602EC 01956821 */ addu $t5, $t4, $s5 +/* 060EF0 800602F0 01B70019 */ multu $t5, $s7 +/* 060EF4 800602F4 00007012 */ mflo $t6 +/* 060EF8 800602F8 01C31021 */ addu $v0, $t6, $v1 +/* 060EFC 800602FC 844F0000 */ lh $t7, ($v0) +/* 060F00 80060300 00000000 */ nop +/* 060F04 80060304 448F2000 */ mtc1 $t7, $f4 +/* 060F08 80060308 00000000 */ nop +/* 060F0C 8006030C 468021A0 */ cvt.s.w $f6, $f4 +/* 060F10 80060310 E7A600CC */ swc1 $f6, 0xcc($sp) +/* 060F14 80060314 84580002 */ lh $t8, 2($v0) +/* 060F18 80060318 C7A200CC */ lwc1 $f2, 0xcc($sp) +/* 060F1C 8006031C 44984000 */ mtc1 $t8, $f8 +/* 060F20 80060320 00000000 */ nop +/* 060F24 80060324 468042A0 */ cvt.s.w $f10, $f8 +/* 060F28 80060328 E7AA00C8 */ swc1 $f10, 0xc8($sp) +/* 060F2C 8006032C 84590004 */ lh $t9, 4($v0) +/* 060F30 80060330 C7BA00C8 */ lwc1 $f26, 0xc8($sp) +/* 060F34 80060334 44992000 */ mtc1 $t9, $f4 +/* 060F38 80060338 00000000 */ nop +/* 060F3C 8006033C 468021A0 */ cvt.s.w $f6, $f4 +/* 060F40 80060340 E7A600C4 */ swc1 $f6, 0xc4($sp) +/* 060F44 80060344 908B0002 */ lbu $t3, 2($a0) +/* 060F48 80060348 90990003 */ lbu $t9, 3($a0) +/* 060F4C 8006034C 01756021 */ addu $t4, $t3, $s5 +/* 060F50 80060350 01970019 */ multu $t4, $s7 +/* 060F54 80060354 03355821 */ addu $t3, $t9, $s5 +/* 060F58 80060358 C7B800C4 */ lwc1 $f24, 0xc4($sp) +/* 060F5C 8006035C 00006812 */ mflo $t5 +/* 060F60 80060360 01A31021 */ addu $v0, $t5, $v1 +/* 060F64 80060364 844E0000 */ lh $t6, ($v0) +/* 060F68 80060368 01770019 */ multu $t3, $s7 +/* 060F6C 8006036C 844F0002 */ lh $t7, 2($v0) +/* 060F70 80060370 84580004 */ lh $t8, 4($v0) +/* 060F74 80060374 448E4000 */ mtc1 $t6, $f8 +/* 060F78 80060378 448F5000 */ mtc1 $t7, $f10 +/* 060F7C 8006037C 468043A0 */ cvt.s.w $f14, $f8 +/* 060F80 80060380 44982000 */ mtc1 $t8, $f4 +/* 060F84 80060384 46805420 */ cvt.s.w $f16, $f10 +/* 060F88 80060388 468024A0 */ cvt.s.w $f18, $f4 +/* 060F8C 8006038C 00006012 */ mflo $t4 +/* 060F90 80060390 01831021 */ addu $v0, $t4, $v1 +/* 060F94 80060394 844E0002 */ lh $t6, 2($v0) +/* 060F98 80060398 844D0000 */ lh $t5, ($v0) +/* 060F9C 8006039C 448E4000 */ mtc1 $t6, $f8 +/* 060FA0 800603A0 448D3000 */ mtc1 $t5, $f6 +/* 060FA4 800603A4 468042A0 */ cvt.s.w $f10, $f8 +/* 060FA8 800603A8 E7AA00B0 */ swc1 $f10, 0xb0($sp) +/* 060FAC 800603AC 844F0004 */ lh $t7, 4($v0) +/* 060FB0 800603B0 468035A0 */ cvt.s.w $f22, $f6 +/* 060FB4 800603B4 448F2000 */ mtc1 $t7, $f4 +/* 060FB8 800603B8 C7AC00B0 */ lwc1 $f12, 0xb0($sp) +/* 060FBC 800603BC 46802020 */ cvt.s.w $f0, $f4 +/* 060FC0 800603C0 46009181 */ sub.s $f6, $f18, $f0 +/* 060FC4 800603C4 461A3202 */ mul.s $f8, $f6, $f26 +/* 060FC8 800603C8 46180281 */ sub.s $f10, $f0, $f24 +/* 060FCC 800603CC 460A8102 */ mul.s $f4, $f16, $f10 +/* 060FD0 800603D0 4612C281 */ sub.s $f10, $f24, $f18 +/* 060FD4 800603D4 46044180 */ add.s $f6, $f8, $f4 +/* 060FD8 800603D8 460A6202 */ mul.s $f8, $f12, $f10 +/* 060FDC 800603DC 46167101 */ sub.s $f4, $f14, $f22 +/* 060FE0 800603E0 46182282 */ mul.s $f10, $f4, $f24 +/* 060FE4 800603E4 46083500 */ add.s $f20, $f6, $f8 +/* 060FE8 800603E8 E7B400A8 */ swc1 $f20, 0xa8($sp) +/* 060FEC 800603EC 4602B181 */ sub.s $f6, $f22, $f2 +/* 060FF0 800603F0 46069202 */ mul.s $f8, $f18, $f6 +/* 060FF4 800603F4 460E1181 */ sub.s $f6, $f2, $f14 +/* 060FF8 800603F8 46085100 */ add.s $f4, $f10, $f8 +/* 060FFC 800603FC 46060282 */ mul.s $f10, $f0, $f6 +/* 061000 80060400 460C8201 */ sub.s $f8, $f16, $f12 +/* 061004 80060404 46024182 */ mul.s $f6, $f8, $f2 +/* 061008 80060408 460A2700 */ add.s $f28, $f4, $f10 +/* 06100C 8006040C E7BC00A4 */ swc1 $f28, 0xa4($sp) +/* 061010 80060410 461A6101 */ sub.s $f4, $f12, $f26 +/* 061014 80060414 46047282 */ mul.s $f10, $f14, $f4 +/* 061018 80060418 4610D101 */ sub.s $f4, $f26, $f16 +/* 06101C 8006041C 460A3200 */ add.s $f8, $f6, $f10 +/* 061020 80060420 4604B182 */ mul.s $f6, $f22, $f4 +/* 061024 80060424 00000000 */ nop +/* 061028 80060428 4614A282 */ mul.s $f10, $f20, $f20 +/* 06102C 8006042C 46064780 */ add.s $f30, $f8, $f6 +/* 061030 80060430 E7BE00A0 */ swc1 $f30, 0xa0($sp) +/* 061034 80060434 461CE102 */ mul.s $f4, $f28, $f28 +/* 061038 80060438 00000000 */ nop +/* 06103C 8006043C 461EF182 */ mul.s $f6, $f30, $f30 +/* 061040 80060440 46045200 */ add.s $f8, $f10, $f4 +/* 061044 80060444 0C0326B4 */ jal sqrtf +/* 061048 80060448 46064300 */ add.s $f12, $f8, $f6 +/* 06104C 8006044C 44805800 */ mtc1 $zero, $f11 +/* 061050 80060450 44805000 */ mtc1 $zero, $f10 +/* 061054 80060454 46000121 */ cvt.d.s $f4, $f0 +/* 061058 80060458 4624503C */ c.lt.d $f10, $f4 +/* 06105C 8006045C C7A200CC */ lwc1 $f2, 0xcc($sp) +/* 061060 80060460 45000009 */ bc1f .L80060488 +/* 061064 80060464 00141100 */ sll $v0, $s4, 4 +/* 061068 80060468 00000000 */ nop +/* 06106C 8006046C 4600A403 */ div.s $f16, $f20, $f0 +/* 061070 80060470 00000000 */ nop +/* 061074 80060474 4600E383 */ div.s $f14, $f28, $f0 +/* 061078 80060478 E7B000A8 */ swc1 $f16, 0xa8($sp) +/* 06107C 8006047C 4600F303 */ div.s $f12, $f30, $f0 +/* 061080 80060480 E7AE00A4 */ swc1 $f14, 0xa4($sp) +/* 061084 80060484 E7AC00A0 */ swc1 $f12, 0xa0($sp) +.L80060488: +/* 061088 80060488 8E590010 */ lw $t9, 0x10($s2) +/* 06108C 8006048C C7B000A8 */ lwc1 $f16, 0xa8($sp) +/* 061090 80060490 C7AC00A0 */ lwc1 $f12, 0xa0($sp) +/* 061094 80060494 C7AE00A4 */ lwc1 $f14, 0xa4($sp) +/* 061098 80060498 03225821 */ addu $t3, $t9, $v0 +/* 06109C 8006049C E5700000 */ swc1 $f16, ($t3) +/* 0610A0 800604A0 8E4C0010 */ lw $t4, 0x10($s2) +/* 0610A4 800604A4 46101202 */ mul.s $f8, $f2, $f16 +/* 0610A8 800604A8 01826821 */ addu $t5, $t4, $v0 +/* 0610AC 800604AC E5AE0004 */ swc1 $f14, 4($t5) +/* 0610B0 800604B0 8E4E0010 */ lw $t6, 0x10($s2) +/* 0610B4 800604B4 26D60001 */ addiu $s6, $s6, 1 +/* 0610B8 800604B8 01C27821 */ addu $t7, $t6, $v0 +/* 0610BC 800604BC E5EC0008 */ swc1 $f12, 8($t7) +/* 0610C0 800604C0 C7A600C8 */ lwc1 $f6, 0xc8($sp) +/* 0610C4 800604C4 8E580010 */ lw $t8, 0x10($s2) +/* 0610C8 800604C8 460E3282 */ mul.s $f10, $f6, $f14 +/* 0610CC 800604CC C7A600C4 */ lwc1 $f6, 0xc4($sp) +/* 0610D0 800604D0 0302C821 */ addu $t9, $t8, $v0 +/* 0610D4 800604D4 26310010 */ addiu $s1, $s1, 0x10 +/* 0610D8 800604D8 460A4100 */ add.s $f4, $f8, $f10 +/* 0610DC 800604DC 460C3202 */ mul.s $f8, $f6, $f12 +/* 0610E0 800604E0 46082280 */ add.s $f10, $f4, $f8 +/* 0610E4 800604E4 46005187 */ neg.s $f6, $f10 +/* 0610E8 800604E8 E726000C */ swc1 $f6, 0xc($t9) +/* 0610EC 800604EC 8E4B000C */ lw $t3, 0xc($s2) +/* 0610F0 800604F0 00000000 */ nop +/* 0610F4 800604F4 01706021 */ addu $t4, $t3, $s0 +/* 0610F8 800604F8 A5940000 */ sh $s4, ($t4) +/* 0610FC 800604FC 8E4D000C */ lw $t5, 0xc($s2) +/* 061100 80060500 00000000 */ nop +/* 061104 80060504 01B07021 */ addu $t6, $t5, $s0 +/* 061108 80060508 A5D40002 */ sh $s4, 2($t6) +/* 06110C 8006050C 8E4F000C */ lw $t7, 0xc($s2) +/* 061110 80060510 00000000 */ nop +/* 061114 80060514 01F0C021 */ addu $t8, $t7, $s0 +/* 061118 80060518 A7140004 */ sh $s4, 4($t8) +/* 06111C 8006051C 8E59000C */ lw $t9, 0xc($s2) +/* 061120 80060520 00000000 */ nop +/* 061124 80060524 03305821 */ addu $t3, $t9, $s0 +/* 061128 80060528 A5740006 */ sh $s4, 6($t3) +/* 06112C 8006052C 8FAC00F4 */ lw $t4, 0xf4($sp) +/* 061130 80060530 26940001 */ addiu $s4, $s4, 1 +/* 061134 80060534 16CCFF68 */ bne $s6, $t4, .L800602D8 +/* 061138 80060538 26100008 */ addiu $s0, $s0, 8 +/* 06113C 8006053C 86440028 */ lh $a0, 0x28($s2) +/* 061140 80060540 00000000 */ nop +/* 061144 80060544 8FAD00EC */ lw $t5, 0xec($sp) +.L80060548: +/* 061148 80060548 8FAF007C */ lw $t7, 0x7c($sp) +/* 06114C 8006054C 25AE0001 */ addiu $t6, $t5, 1 +/* 061150 80060550 01C4082A */ slt $at, $t6, $a0 +/* 061154 80060554 25F8000C */ addiu $t8, $t7, 0xc +/* 061158 80060558 AFB8007C */ sw $t8, 0x7c($sp) +/* 06115C 8006055C 1420FF4B */ bnez $at, .L8006028C +/* 061160 80060560 AFAE00EC */ sw $t6, 0xec($sp) +/* 061164 80060564 AFA000EC */ sw $zero, 0xec($sp) +.L80060568: +/* 061168 80060568 2417000A */ li $s7, 10 +/* 06116C 8006056C A6540032 */ sh $s4, 0x32($s2) +/* 061170 80060570 0C018244 */ jal func_80060910 +/* 061174 80060574 02402025 */ move $a0, $s2 +/* 061178 80060578 86440028 */ lh $a0, 0x28($s2) +/* 06117C 8006057C 00009825 */ move $s3, $zero +/* 061180 80060580 188000CB */ blez $a0, .L800608B0 +/* 061184 80060584 241E0003 */ li $fp, 3 +/* 061188 80060588 AFA0007C */ sw $zero, 0x7c($sp) +.L8006058C: +/* 06118C 8006058C 8E590038 */ lw $t9, 0x38($s2) +/* 061190 80060590 8FAB007C */ lw $t3, 0x7c($sp) +/* 061194 80060594 00000000 */ nop +/* 061198 80060598 032B1021 */ addu $v0, $t9, $t3 +/* 06119C 8006059C 8C4C0008 */ lw $t4, 8($v0) +/* 0611A0 800605A0 84430004 */ lh $v1, 4($v0) +/* 0611A4 800605A4 84550002 */ lh $s5, 2($v0) +/* 0611A8 800605A8 84470010 */ lh $a3, 0x10($v0) +/* 0611AC 800605AC 318D0200 */ andi $t5, $t4, 0x200 +/* 0611B0 800605B0 11A00002 */ beqz $t5, .L800605BC +/* 0611B4 800605B4 001310C0 */ sll $v0, $s3, 3 +/* 0611B8 800605B8 2467FFFF */ addiu $a3, $v1, -1 +.L800605BC: +/* 0611BC 800605BC 0067082A */ slt $at, $v1, $a3 +/* 0611C0 800605C0 102000B3 */ beqz $at, .L80060890 +/* 0611C4 800605C4 0060B025 */ move $s6, $v1 +/* 0611C8 800605C8 AFA20074 */ sw $v0, 0x74($sp) +/* 0611CC 800605CC AFA700F4 */ sw $a3, 0xf4($sp) +.L800605D0: +/* 0611D0 800605D0 8FA20074 */ lw $v0, 0x74($sp) +/* 0611D4 800605D4 8E4F000C */ lw $t7, 0xc($s2) +/* 0611D8 800605D8 8E590010 */ lw $t9, 0x10($s2) +/* 0611DC 800605DC 01E2C021 */ addu $t8, $t7, $v0 +/* 0611E0 800605E0 970E0000 */ lhu $t6, ($t8) +/* 0611E4 800605E4 00002825 */ move $a1, $zero +/* 0611E8 800605E8 000E5900 */ sll $t3, $t6, 4 +/* 0611EC 800605EC 032B1821 */ addu $v1, $t9, $t3 +/* 0611F0 800605F0 C4640000 */ lwc1 $f4, ($v1) +/* 0611F4 800605F4 00008825 */ move $s1, $zero +/* 0611F8 800605F8 E7A400A8 */ swc1 $f4, 0xa8($sp) +/* 0611FC 800605FC C4680004 */ lwc1 $f8, 4($v1) +/* 061200 80060600 00000000 */ nop +/* 061204 80060604 E7A800A4 */ swc1 $f8, 0xa4($sp) +/* 061208 80060608 C46A0008 */ lwc1 $f10, 8($v1) +/* 06120C 8006060C 00000000 */ nop +/* 061210 80060610 E7AA00A0 */ swc1 $f10, 0xa0($sp) +.L80060614: +/* 061214 80060614 24B00001 */ addiu $s0, $a1, 1 +/* 061218 80060618 2A010003 */ slti $at, $s0, 3 +/* 06121C 8006061C 8E47000C */ lw $a3, 0xc($s2) +/* 061220 80060620 8E480010 */ lw $t0, 0x10($s2) +/* 061224 80060624 14200002 */ bnez $at, .L80060630 +/* 061228 80060628 02002025 */ move $a0, $s0 +/* 06122C 8006062C 00002025 */ move $a0, $zero +.L80060630: +/* 061230 80060630 8E4C0008 */ lw $t4, 8($s2) +/* 061234 80060634 00166900 */ sll $t5, $s6, 4 +/* 061238 80060638 018D1021 */ addu $v0, $t4, $t5 +/* 06123C 8006063C 00457821 */ addu $t7, $v0, $a1 +/* 061240 80060640 91F80001 */ lbu $t8, 1($t7) +/* 061244 80060644 001358C0 */ sll $t3, $s3, 3 +/* 061248 80060648 03154821 */ addu $t1, $t8, $s5 +/* 06124C 8006064C 01370019 */ multu $t1, $s7 +/* 061250 80060650 00EB6021 */ addu $t4, $a3, $t3 +/* 061254 80060654 01916821 */ addu $t5, $t4, $s1 +/* 061258 80060658 95AF0002 */ lhu $t7, 2($t5) +/* 06125C 8006065C 00447021 */ addu $t6, $v0, $a0 +/* 061260 80060660 000FC100 */ sll $t8, $t7, 4 +/* 061264 80060664 01181821 */ addu $v1, $t0, $t8 +/* 061268 80060668 91D90001 */ lbu $t9, 1($t6) +/* 06126C 8006066C C4660000 */ lwc1 $f6, ($v1) +/* 061270 80060670 C7A400A8 */ lwc1 $f4, 0xa8($sp) +/* 061274 80060674 C4680004 */ lwc1 $f8, 4($v1) +/* 061278 80060678 46043500 */ add.s $f20, $f6, $f4 +/* 06127C 8006067C 00007012 */ mflo $t6 +/* 061280 80060680 C4660008 */ lwc1 $f6, 8($v1) +/* 061284 80060684 03355021 */ addu $t2, $t9, $s5 +/* 061288 80060688 01570019 */ multu $t2, $s7 +/* 06128C 8006068C 8E430004 */ lw $v1, 4($s2) +/* 061290 80060690 C7AA00A4 */ lwc1 $f10, 0xa4($sp) +/* 061294 80060694 006E1021 */ addu $v0, $v1, $t6 +/* 061298 80060698 84590000 */ lh $t9, ($v0) +/* 06129C 8006069C 460A4600 */ add.s $f24, $f8, $f10 +/* 0612A0 800606A0 44994000 */ mtc1 $t9, $f8 +/* 0612A4 800606A4 C7A400A0 */ lwc1 $f4, 0xa0($sp) +/* 0612A8 800606A8 468042A0 */ cvt.s.w $f10, $f8 +/* 0612AC 800606AC 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 0612B0 800606B0 4481E000 */ mtc1 $at, $f28 +/* 0612B4 800606B4 E7AA00CC */ swc1 $f10, 0xcc($sp) +/* 0612B8 800606B8 844C0004 */ lh $t4, 4($v0) +/* 0612BC 800606BC 844B0002 */ lh $t3, 2($v0) +/* 0612C0 800606C0 46043680 */ add.s $f26, $f6, $f4 +/* 0612C4 800606C4 00006812 */ mflo $t5 +/* 0612C8 800606C8 448C2000 */ mtc1 $t4, $f4 +/* 0612CC 800606CC 006D1021 */ addu $v0, $v1, $t5 +/* 0612D0 800606D0 84580002 */ lh $t8, 2($v0) +/* 0612D4 800606D4 46802320 */ cvt.s.w $f12, $f4 +/* 0612D8 800606D8 448B3000 */ mtc1 $t3, $f6 +/* 0612DC 800606DC 44985000 */ mtc1 $t8, $f10 +/* 0612E0 800606E0 461CA102 */ mul.s $f4, $f20, $f28 +/* 0612E4 800606E4 844E0004 */ lh $t6, 4($v0) +/* 0612E8 800606E8 844F0000 */ lh $t7, ($v0) +/* 0612EC 800606EC E7AC00C4 */ swc1 $f12, 0xc4($sp) +/* 0612F0 800606F0 468037A0 */ cvt.s.w $f30, $f6 +/* 0612F4 800606F4 448E3000 */ mtc1 $t6, $f6 +/* 0612F8 800606F8 448F4000 */ mtc1 $t7, $f8 +/* 0612FC 800606FC 46805420 */ cvt.s.w $f16, $f10 +/* 061300 80060700 E7BE00C8 */ swc1 $f30, 0xc8($sp) +/* 061304 80060704 461CC282 */ mul.s $f10, $f24, $f28 +/* 061308 80060708 468034A0 */ cvt.s.w $f18, $f6 +/* 06130C 8006070C 461CD182 */ mul.s $f6, $f26, $f28 +/* 061310 80060710 461E5080 */ add.s $f2, $f10, $f30 +/* 061314 80060714 E7A200B0 */ swc1 $f2, 0xb0($sp) +/* 061318 80060718 468043A0 */ cvt.s.w $f14, $f8 +/* 06131C 8006071C C7A800CC */ lwc1 $f8, 0xcc($sp) +/* 061320 80060720 460C3000 */ add.s $f0, $f6, $f12 +/* 061324 80060724 46082580 */ add.s $f22, $f4, $f8 +/* 061328 80060728 E7A000AC */ swc1 $f0, 0xac($sp) +/* 06132C 8006072C 46009101 */ sub.s $f4, $f18, $f0 +/* 061330 80060730 461E2282 */ mul.s $f10, $f4, $f30 +/* 061334 80060734 460C0181 */ sub.s $f6, $f0, $f12 +/* 061338 80060738 C7A000C8 */ lwc1 $f0, 0xc8($sp) +/* 06133C 8006073C 46068102 */ mul.s $f4, $f16, $f6 +/* 061340 80060740 46045180 */ add.s $f6, $f10, $f4 +/* 061344 80060744 46126281 */ sub.s $f10, $f12, $f18 +/* 061348 80060748 460A1102 */ mul.s $f4, $f2, $f10 +/* 06134C 8006074C 46167281 */ sub.s $f10, $f14, $f22 +/* 061350 80060750 46043500 */ add.s $f20, $f6, $f4 +/* 061354 80060754 C7A600C4 */ lwc1 $f6, 0xc4($sp) +/* 061358 80060758 46004086 */ mov.s $f2, $f8 +/* 06135C 8006075C 46065102 */ mul.s $f4, $f10, $f6 +/* 061360 80060760 4608B201 */ sub.s $f8, $f22, $f8 +/* 061364 80060764 46089282 */ mul.s $f10, $f18, $f8 +/* 061368 80060768 C7A800AC */ lwc1 $f8, 0xac($sp) +/* 06136C 8006076C 460A2180 */ add.s $f6, $f4, $f10 +/* 061370 80060770 460E1101 */ sub.s $f4, $f2, $f14 +/* 061374 80060774 46044282 */ mul.s $f10, $f8, $f4 +/* 061378 80060778 C7A800B0 */ lwc1 $f8, 0xb0($sp) +/* 06137C 8006077C 00000000 */ nop +/* 061380 80060780 46088101 */ sub.s $f4, $f16, $f8 +/* 061384 80060784 460A3700 */ add.s $f28, $f6, $f10 +/* 061388 80060788 46022182 */ mul.s $f6, $f4, $f2 +/* 06138C 8006078C 46004281 */ sub.s $f10, $f8, $f0 +/* 061390 80060790 460A7102 */ mul.s $f4, $f14, $f10 +/* 061394 80060794 46100281 */ sub.s $f10, $f0, $f16 +/* 061398 80060798 46043200 */ add.s $f8, $f6, $f4 +/* 06139C 8006079C 460AB182 */ mul.s $f6, $f22, $f10 +/* 0613A0 800607A0 4600E606 */ mov.s $f24, $f28 +/* 0613A4 800607A4 4614A102 */ mul.s $f4, $f20, $f20 +/* 0613A8 800607A8 46064780 */ add.s $f30, $f8, $f6 +/* 0613AC 800607AC 461CE282 */ mul.s $f10, $f28, $f28 +/* 0613B0 800607B0 4600F686 */ mov.s $f26, $f30 +/* 0613B4 800607B4 461EF182 */ mul.s $f6, $f30, $f30 +/* 0613B8 800607B8 460A2200 */ add.s $f8, $f4, $f10 +/* 0613BC 800607BC 0C0326B4 */ jal sqrtf +/* 0613C0 800607C0 46064300 */ add.s $f12, $f8, $f6 +/* 0613C4 800607C4 44802800 */ mtc1 $zero, $f5 +/* 0613C8 800607C8 44802000 */ mtc1 $zero, $f4 +/* 0613CC 800607CC 460002A1 */ cvt.d.s $f10, $f0 +/* 0613D0 800607D0 462A203C */ c.lt.d $f4, $f10 +/* 0613D4 800607D4 C7A200CC */ lwc1 $f2, 0xcc($sp) +/* 0613D8 800607D8 45000006 */ bc1f .L800607F4 +/* 0613DC 800607DC 00000000 */ nop +/* 0613E0 800607E0 4600A503 */ div.s $f20, $f20, $f0 +/* 0613E4 800607E4 00000000 */ nop +/* 0613E8 800607E8 4600E603 */ div.s $f24, $f28, $f0 +/* 0613EC 800607EC 00000000 */ nop +/* 0613F0 800607F0 4600F683 */ div.s $f26, $f30, $f0 +.L800607F4: +/* 0613F4 800607F4 8E59000C */ lw $t9, 0xc($s2) +/* 0613F8 800607F8 001358C0 */ sll $t3, $s3, 3 +/* 0613FC 800607FC 032B6021 */ addu $t4, $t9, $t3 +/* 061400 80060800 01916821 */ addu $t5, $t4, $s1 +/* 061404 80060804 A5B40002 */ sh $s4, 2($t5) +/* 061408 80060808 8E580010 */ lw $t8, 0x10($s2) +/* 06140C 8006080C 00141100 */ sll $v0, $s4, 4 +/* 061410 80060810 03027021 */ addu $t6, $t8, $v0 +/* 061414 80060814 E5D40000 */ swc1 $f20, ($t6) +/* 061418 80060818 8E590010 */ lw $t9, 0x10($s2) +/* 06141C 8006081C 46141202 */ mul.s $f8, $f2, $f20 +/* 061420 80060820 03225821 */ addu $t3, $t9, $v0 +/* 061424 80060824 E5780004 */ swc1 $f24, 4($t3) +/* 061428 80060828 8E4C0010 */ lw $t4, 0x10($s2) +/* 06142C 8006082C 26310002 */ addiu $s1, $s1, 2 +/* 061430 80060830 01826821 */ addu $t5, $t4, $v0 +/* 061434 80060834 E5BA0008 */ swc1 $f26, 8($t5) +/* 061438 80060838 C7A600C8 */ lwc1 $f6, 0xc8($sp) +/* 06143C 8006083C 8E4F0010 */ lw $t7, 0x10($s2) +/* 061440 80060840 46183102 */ mul.s $f4, $f6, $f24 +/* 061444 80060844 C7A600C4 */ lwc1 $f6, 0xc4($sp) +/* 061448 80060848 01E2C021 */ addu $t8, $t7, $v0 +/* 06144C 8006084C 02002825 */ move $a1, $s0 +/* 061450 80060850 46044280 */ add.s $f10, $f8, $f4 +/* 061454 80060854 26940001 */ addiu $s4, $s4, 1 +/* 061458 80060858 461A3202 */ mul.s $f8, $f6, $f26 +/* 06145C 8006085C 46085100 */ add.s $f4, $f10, $f8 +/* 061460 80060860 46002187 */ neg.s $f6, $f4 +/* 061464 80060864 161EFF6B */ bne $s0, $fp, .L80060614 +/* 061468 80060868 E706000C */ swc1 $f6, 0xc($t8) +/* 06146C 8006086C 8FAE0074 */ lw $t6, 0x74($sp) +/* 061470 80060870 8FAB00F4 */ lw $t3, 0xf4($sp) +/* 061474 80060874 26D60001 */ addiu $s6, $s6, 1 +/* 061478 80060878 25D90008 */ addiu $t9, $t6, 8 +/* 06147C 8006087C AFB90074 */ sw $t9, 0x74($sp) +/* 061480 80060880 16CBFF53 */ bne $s6, $t3, .L800605D0 +/* 061484 80060884 26730001 */ addiu $s3, $s3, 1 +/* 061488 80060888 86440028 */ lh $a0, 0x28($s2) +/* 06148C 8006088C 00000000 */ nop +.L80060890: +/* 061490 80060890 8FAC00EC */ lw $t4, 0xec($sp) +/* 061494 80060894 8FAF007C */ lw $t7, 0x7c($sp) +/* 061498 80060898 258D0001 */ addiu $t5, $t4, 1 +/* 06149C 8006089C 01A4082A */ slt $at, $t5, $a0 +/* 0614A0 800608A0 25F8000C */ addiu $t8, $t7, 0xc +/* 0614A4 800608A4 AFB8007C */ sw $t8, 0x7c($sp) +/* 0614A8 800608A8 1420FF38 */ bnez $at, .L8006058C +/* 0614AC 800608AC AFAD00EC */ sw $t5, 0xec($sp) +.L800608B0: +/* 0614B0 800608B0 8FBF006C */ lw $ra, 0x6c($sp) +/* 0614B4 800608B4 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 0614B8 800608B8 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 0614BC 800608BC C7B70020 */ lwc1 $f23, 0x20($sp) +/* 0614C0 800608C0 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 0614C4 800608C4 C7B90028 */ lwc1 $f25, 0x28($sp) +/* 0614C8 800608C8 C7B8002C */ lwc1 $f24, 0x2c($sp) +/* 0614CC 800608CC C7BB0030 */ lwc1 $f27, 0x30($sp) +/* 0614D0 800608D0 C7BA0034 */ lwc1 $f26, 0x34($sp) +/* 0614D4 800608D4 C7BD0038 */ lwc1 $f29, 0x38($sp) +/* 0614D8 800608D8 C7BC003C */ lwc1 $f28, 0x3c($sp) +/* 0614DC 800608DC C7BF0040 */ lwc1 $f31, 0x40($sp) +/* 0614E0 800608E0 C7BE0044 */ lwc1 $f30, 0x44($sp) +/* 0614E4 800608E4 8FB00048 */ lw $s0, 0x48($sp) +/* 0614E8 800608E8 8FB1004C */ lw $s1, 0x4c($sp) +/* 0614EC 800608EC 8FB20050 */ lw $s2, 0x50($sp) +/* 0614F0 800608F0 8FB30054 */ lw $s3, 0x54($sp) +/* 0614F4 800608F4 8FB40058 */ lw $s4, 0x58($sp) +/* 0614F8 800608F8 8FB5005C */ lw $s5, 0x5c($sp) +/* 0614FC 800608FC 8FB60060 */ lw $s6, 0x60($sp) +/* 061500 80060900 8FB70064 */ lw $s7, 0x64($sp) +/* 061504 80060904 8FBE0068 */ lw $fp, 0x68($sp) +/* 061508 80060908 03E00008 */ jr $ra +/* 06150C 8006090C 27BD0100 */ addiu $sp, $sp, 0x100 + diff --git a/asm/non_matchings/unknown_05F690/func_80060910.s b/asm/non_matchings/unknown_05F690/func_80060910.s new file mode 100644 index 00000000..c12496bd --- /dev/null +++ b/asm/non_matchings/unknown_05F690/func_80060910.s @@ -0,0 +1,121 @@ +glabel func_80060910 +/* 061510 80060910 27BDFF70 */ addiu $sp, $sp, -0x90 +/* 061514 80060914 AFBF0044 */ sw $ra, 0x44($sp) +/* 061518 80060918 AFBE0040 */ sw $fp, 0x40($sp) +/* 06151C 8006091C AFB7003C */ sw $s7, 0x3c($sp) +/* 061520 80060920 AFB60038 */ sw $s6, 0x38($sp) +/* 061524 80060924 AFB50034 */ sw $s5, 0x34($sp) +/* 061528 80060928 AFB40030 */ sw $s4, 0x30($sp) +/* 06152C 8006092C AFB3002C */ sw $s3, 0x2c($sp) +/* 061530 80060930 AFB20028 */ sw $s2, 0x28($sp) +/* 061534 80060934 AFB10024 */ sw $s1, 0x24($sp) +/* 061538 80060938 AFB00020 */ sw $s0, 0x20($sp) +/* 06153C 8006093C AFA00088 */ sw $zero, 0x88($sp) +/* 061540 80060940 84850028 */ lh $a1, 0x28($a0) +/* 061544 80060944 00809025 */ move $s2, $a0 +/* 061548 80060948 18A00053 */ blez $a1, .L80060A98 +/* 06154C 8006094C 0000A025 */ move $s4, $zero +/* 061550 80060950 AFA00054 */ sw $zero, 0x54($sp) +/* 061554 80060954 241EFFFF */ li $fp, -1 +/* 061558 80060958 27B70060 */ addiu $s7, $sp, 0x60 +/* 06155C 8006095C 27B6005C */ addiu $s6, $sp, 0x5c +.L80060960: +/* 061560 80060960 8E4E0038 */ lw $t6, 0x38($s2) +/* 061564 80060964 8FAF0054 */ lw $t7, 0x54($sp) +/* 061568 80060968 001460C0 */ sll $t4, $s4, 3 +/* 06156C 8006096C 01CF1021 */ addu $v0, $t6, $t7 +/* 061570 80060970 84580010 */ lh $t8, 0x10($v0) +/* 061574 80060974 84430004 */ lh $v1, 4($v0) +/* 061578 80060978 84550002 */ lh $s5, 2($v0) +/* 06157C 8006097C AFB80078 */ sw $t8, 0x78($sp) +/* 061580 80060980 8C590008 */ lw $t9, 8($v0) +/* 061584 80060984 246AFFFF */ addiu $t2, $v1, -1 +/* 061588 80060988 33290200 */ andi $t1, $t9, 0x200 +/* 06158C 8006098C 11200003 */ beqz $t1, .L8006099C +/* 061590 80060990 8FAB0078 */ lw $t3, 0x78($sp) +/* 061594 80060994 AFAA0078 */ sw $t2, 0x78($sp) +/* 061598 80060998 8FAB0078 */ lw $t3, 0x78($sp) +.L8006099C: +/* 06159C 8006099C 00609825 */ move $s3, $v1 +/* 0615A0 800609A0 006B082A */ slt $at, $v1, $t3 +/* 0615A4 800609A4 10200035 */ beqz $at, .L80060A7C +/* 0615A8 800609A8 8FAF0088 */ lw $t7, 0x88($sp) +/* 0615AC 800609AC AFAC0058 */ sw $t4, 0x58($sp) +.L800609B0: +/* 0615B0 800609B0 8E4D000C */ lw $t5, 0xc($s2) +/* 0615B4 800609B4 8FAE0058 */ lw $t6, 0x58($sp) +/* 0615B8 800609B8 00001825 */ move $v1, $zero +/* 0615BC 800609BC 01AE7821 */ addu $t7, $t5, $t6 +/* 0615C0 800609C0 A5F40000 */ sh $s4, ($t7) +/* 0615C4 800609C4 00008025 */ move $s0, $zero +.L800609C8: +/* 0615C8 800609C8 24710001 */ addiu $s1, $v1, 1 +/* 0615CC 800609CC 2A210003 */ slti $at, $s1, 3 +/* 0615D0 800609D0 14200002 */ bnez $at, .L800609DC +/* 0615D4 800609D4 02204025 */ move $t0, $s1 +/* 0615D8 800609D8 00004025 */ move $t0, $zero +.L800609DC: +/* 0615DC 800609DC 8E580008 */ lw $t8, 8($s2) +/* 0615E0 800609E0 0013C900 */ sll $t9, $s3, 4 +/* 0615E4 800609E4 03191021 */ addu $v0, $t8, $t9 +/* 0615E8 800609E8 00434821 */ addu $t1, $v0, $v1 +/* 0615EC 800609EC 00485821 */ addu $t3, $v0, $t0 +/* 0615F0 800609F0 912A0001 */ lbu $t2, 1($t1) +/* 0615F4 800609F4 916C0001 */ lbu $t4, 1($t3) +/* 0615F8 800609F8 AFB70014 */ sw $s7, 0x14($sp) +/* 0615FC 800609FC AFB60010 */ sw $s6, 0x10($sp) +/* 061600 80060A00 02402025 */ move $a0, $s2 +/* 061604 80060A04 02602825 */ move $a1, $s3 +/* 061608 80060A08 01553021 */ addu $a2, $t2, $s5 +/* 06160C 80060A0C 0C0182B2 */ jal func_80060AC8 +/* 061610 80060A10 01953821 */ addu $a3, $t4, $s5 +/* 061614 80060A14 105E0007 */ beq $v0, $fp, .L80060A34 +/* 061618 80060A18 02201825 */ move $v1, $s1 +/* 06161C 80060A1C 8E4D000C */ lw $t5, 0xc($s2) +/* 061620 80060A20 001470C0 */ sll $t6, $s4, 3 +/* 061624 80060A24 01AE7821 */ addu $t7, $t5, $t6 +/* 061628 80060A28 01F0C021 */ addu $t8, $t7, $s0 +/* 06162C 80060A2C 10000006 */ b .L80060A48 +/* 061630 80060A30 A7020002 */ sh $v0, 2($t8) +.L80060A34: +/* 061634 80060A34 8E59000C */ lw $t9, 0xc($s2) +/* 061638 80060A38 001448C0 */ sll $t1, $s4, 3 +/* 06163C 80060A3C 03295021 */ addu $t2, $t9, $t1 +/* 061640 80060A40 01505821 */ addu $t3, $t2, $s0 +/* 061644 80060A44 A5740002 */ sh $s4, 2($t3) +.L80060A48: +/* 061648 80060A48 24010003 */ li $at, 3 +/* 06164C 80060A4C 1621FFDE */ bne $s1, $at, .L800609C8 +/* 061650 80060A50 26100002 */ addiu $s0, $s0, 2 +/* 061654 80060A54 8FAC0058 */ lw $t4, 0x58($sp) +/* 061658 80060A58 8FAE0078 */ lw $t6, 0x78($sp) +/* 06165C 80060A5C 26730001 */ addiu $s3, $s3, 1 +/* 061660 80060A60 258D0008 */ addiu $t5, $t4, 8 +/* 061664 80060A64 AFAD0058 */ sw $t5, 0x58($sp) +/* 061668 80060A68 166EFFD1 */ bne $s3, $t6, .L800609B0 +/* 06166C 80060A6C 26940001 */ addiu $s4, $s4, 1 +/* 061670 80060A70 86450028 */ lh $a1, 0x28($s2) +/* 061674 80060A74 00000000 */ nop +/* 061678 80060A78 8FAF0088 */ lw $t7, 0x88($sp) +.L80060A7C: +/* 06167C 80060A7C 8FB90054 */ lw $t9, 0x54($sp) +/* 061680 80060A80 25F80001 */ addiu $t8, $t7, 1 +/* 061684 80060A84 0305082A */ slt $at, $t8, $a1 +/* 061688 80060A88 2729000C */ addiu $t1, $t9, 0xc +/* 06168C 80060A8C AFA90054 */ sw $t1, 0x54($sp) +/* 061690 80060A90 1420FFB3 */ bnez $at, .L80060960 +/* 061694 80060A94 AFB80088 */ sw $t8, 0x88($sp) +.L80060A98: +/* 061698 80060A98 8FBF0044 */ lw $ra, 0x44($sp) +/* 06169C 80060A9C 8FB00020 */ lw $s0, 0x20($sp) +/* 0616A0 80060AA0 8FB10024 */ lw $s1, 0x24($sp) +/* 0616A4 80060AA4 8FB20028 */ lw $s2, 0x28($sp) +/* 0616A8 80060AA8 8FB3002C */ lw $s3, 0x2c($sp) +/* 0616AC 80060AAC 8FB40030 */ lw $s4, 0x30($sp) +/* 0616B0 80060AB0 8FB50034 */ lw $s5, 0x34($sp) +/* 0616B4 80060AB4 8FB60038 */ lw $s6, 0x38($sp) +/* 0616B8 80060AB8 8FB7003C */ lw $s7, 0x3c($sp) +/* 0616BC 80060ABC 8FBE0040 */ lw $fp, 0x40($sp) +/* 0616C0 80060AC0 03E00008 */ jr $ra +/* 0616C4 80060AC4 27BD0090 */ addiu $sp, $sp, 0x90 + diff --git a/asm/non_matchings/unknown_05F690/func_80060AC8.s b/asm/non_matchings/unknown_05F690/func_80060AC8.s new file mode 100644 index 00000000..b4f309f6 --- /dev/null +++ b/asm/non_matchings/unknown_05F690/func_80060AC8.s @@ -0,0 +1,112 @@ +glabel func_80060AC8 +/* 0616C8 80060AC8 27BDFF88 */ addiu $sp, $sp, -0x78 +/* 0616CC 80060ACC AFBF0044 */ sw $ra, 0x44($sp) +/* 0616D0 80060AD0 AFBE0040 */ sw $fp, 0x40($sp) +/* 0616D4 80060AD4 AFB7003C */ sw $s7, 0x3c($sp) +/* 0616D8 80060AD8 AFB60038 */ sw $s6, 0x38($sp) +/* 0616DC 80060ADC AFB50034 */ sw $s5, 0x34($sp) +/* 0616E0 80060AE0 AFB40030 */ sw $s4, 0x30($sp) +/* 0616E4 80060AE4 AFB3002C */ sw $s3, 0x2c($sp) +/* 0616E8 80060AE8 AFB20028 */ sw $s2, 0x28($sp) +/* 0616EC 80060AEC AFB10024 */ sw $s1, 0x24($sp) +/* 0616F0 80060AF0 AFB00020 */ sw $s0, 0x20($sp) +/* 0616F4 80060AF4 AFA5007C */ sw $a1, 0x7c($sp) +/* 0616F8 80060AF8 AFA00074 */ sw $zero, 0x74($sp) +/* 0616FC 80060AFC 84880028 */ lh $t0, 0x28($a0) +/* 061700 80060B00 00809825 */ move $s3, $a0 +/* 061704 80060B04 00C0A825 */ move $s5, $a2 +/* 061708 80060B08 00E0B025 */ move $s6, $a3 +/* 06170C 80060B0C 19000045 */ blez $t0, .L80060C24 +/* 061710 80060B10 0000F025 */ move $fp, $zero +/* 061714 80060B14 AFA00048 */ sw $zero, 0x48($sp) +/* 061718 80060B18 24170003 */ li $s7, 3 +.L80060B1C: +/* 06171C 80060B1C 8E6E0038 */ lw $t6, 0x38($s3) +/* 061720 80060B20 8FAF0048 */ lw $t7, 0x48($sp) +/* 061724 80060B24 00000000 */ nop +/* 061728 80060B28 01CF1021 */ addu $v0, $t6, $t7 +/* 06172C 80060B2C 84580010 */ lh $t8, 0x10($v0) +/* 061730 80060B30 84430004 */ lh $v1, 4($v0) +/* 061734 80060B34 84520002 */ lh $s2, 2($v0) +/* 061738 80060B38 AFB80070 */ sw $t8, 0x70($sp) +/* 06173C 80060B3C 8C590008 */ lw $t9, 8($v0) +/* 061740 80060B40 246AFFFF */ addiu $t2, $v1, -1 +/* 061744 80060B44 33290200 */ andi $t1, $t9, 0x200 +/* 061748 80060B48 11200003 */ beqz $t1, .L80060B58 +/* 06174C 80060B4C 8FAB0070 */ lw $t3, 0x70($sp) +/* 061750 80060B50 AFAA0070 */ sw $t2, 0x70($sp) +/* 061754 80060B54 8FAB0070 */ lw $t3, 0x70($sp) +.L80060B58: +/* 061758 80060B58 0060A025 */ move $s4, $v1 +/* 06175C 80060B5C 006B082A */ slt $at, $v1, $t3 +/* 061760 80060B60 10200029 */ beqz $at, .L80060C08 +/* 061764 80060B64 8FAE0074 */ lw $t6, 0x74($sp) +.L80060B68: +/* 061768 80060B68 8FAC007C */ lw $t4, 0x7c($sp) +/* 06176C 80060B6C 00008825 */ move $s1, $zero +/* 061770 80060B70 128C001E */ beq $s4, $t4, .L80060BEC +.L80060B74: +/* 061774 80060B74 26300001 */ addiu $s0, $s1, 1 +/* 061778 80060B78 2A010003 */ slti $at, $s0, 3 +/* 06177C 80060B7C 14200002 */ bnez $at, .L80060B88 +/* 061780 80060B80 02004025 */ move $t0, $s0 +/* 061784 80060B84 00004025 */ move $t0, $zero +.L80060B88: +/* 061788 80060B88 8E6D0008 */ lw $t5, 8($s3) +/* 06178C 80060B8C 00147100 */ sll $t6, $s4, 4 +/* 061790 80060B90 01AE1021 */ addu $v0, $t5, $t6 +/* 061794 80060B94 0048C821 */ addu $t9, $v0, $t0 +/* 061798 80060B98 93290001 */ lbu $t1, 1($t9) +/* 06179C 80060B9C 00517821 */ addu $t7, $v0, $s1 +/* 0617A0 80060BA0 91F80001 */ lbu $t8, 1($t7) +/* 0617A4 80060BA4 8E640004 */ lw $a0, 4($s3) +/* 0617A8 80060BA8 01321821 */ addu $v1, $t1, $s2 +/* 0617AC 80060BAC AFA30010 */ sw $v1, 0x10($sp) +/* 0617B0 80060BB0 02A02825 */ move $a1, $s5 +/* 0617B4 80060BB4 02C03025 */ move $a2, $s6 +/* 0617B8 80060BB8 0C018316 */ jal func_80060C58 +/* 0617BC 80060BBC 03123821 */ addu $a3, $t8, $s2 +/* 0617C0 80060BC0 10400008 */ beqz $v0, .L80060BE4 +/* 0617C4 80060BC4 00000000 */ nop +/* 0617C8 80060BC8 8FAA008C */ lw $t2, 0x8c($sp) +/* 0617CC 80060BCC 03C01025 */ move $v0, $fp +/* 0617D0 80060BD0 AD510000 */ sw $s1, ($t2) +/* 0617D4 80060BD4 8FAC0088 */ lw $t4, 0x88($sp) +/* 0617D8 80060BD8 8FAB0074 */ lw $t3, 0x74($sp) +/* 0617DC 80060BDC 10000012 */ b .L80060C28 +/* 0617E0 80060BE0 AD8B0000 */ sw $t3, ($t4) +.L80060BE4: +/* 0617E4 80060BE4 1617FFE3 */ bne $s0, $s7, .L80060B74 +/* 0617E8 80060BE8 02008825 */ move $s1, $s0 +.L80060BEC: +/* 0617EC 80060BEC 8FAD0070 */ lw $t5, 0x70($sp) +/* 0617F0 80060BF0 26940001 */ addiu $s4, $s4, 1 +/* 0617F4 80060BF4 168DFFDC */ bne $s4, $t5, .L80060B68 +/* 0617F8 80060BF8 27DE0001 */ addiu $fp, $fp, 1 +/* 0617FC 80060BFC 86680028 */ lh $t0, 0x28($s3) +/* 061800 80060C00 00000000 */ nop +/* 061804 80060C04 8FAE0074 */ lw $t6, 0x74($sp) +.L80060C08: +/* 061808 80060C08 8FB80048 */ lw $t8, 0x48($sp) +/* 06180C 80060C0C 25CF0001 */ addiu $t7, $t6, 1 +/* 061810 80060C10 01E8082A */ slt $at, $t7, $t0 +/* 061814 80060C14 2719000C */ addiu $t9, $t8, 0xc +/* 061818 80060C18 AFB90048 */ sw $t9, 0x48($sp) +/* 06181C 80060C1C 1420FFBF */ bnez $at, .L80060B1C +/* 061820 80060C20 AFAF0074 */ sw $t7, 0x74($sp) +.L80060C24: +/* 061824 80060C24 2402FFFF */ li $v0, -1 +.L80060C28: +/* 061828 80060C28 8FBF0044 */ lw $ra, 0x44($sp) +/* 06182C 80060C2C 8FB00020 */ lw $s0, 0x20($sp) +/* 061830 80060C30 8FB10024 */ lw $s1, 0x24($sp) +/* 061834 80060C34 8FB20028 */ lw $s2, 0x28($sp) +/* 061838 80060C38 8FB3002C */ lw $s3, 0x2c($sp) +/* 06183C 80060C3C 8FB40030 */ lw $s4, 0x30($sp) +/* 061840 80060C40 8FB50034 */ lw $s5, 0x34($sp) +/* 061844 80060C44 8FB60038 */ lw $s6, 0x38($sp) +/* 061848 80060C48 8FB7003C */ lw $s7, 0x3c($sp) +/* 06184C 80060C4C 8FBE0040 */ lw $fp, 0x40($sp) +/* 061850 80060C50 03E00008 */ jr $ra +/* 061854 80060C54 27BD0078 */ addiu $sp, $sp, 0x78 + diff --git a/asm/non_matchings/unknown_05F690/func_80060C58.s b/asm/non_matchings/unknown_05F690/func_80060C58.s new file mode 100644 index 00000000..2ebaccc0 --- /dev/null +++ b/asm/non_matchings/unknown_05F690/func_80060C58.s @@ -0,0 +1,159 @@ +glabel func_80060C58 +/* 061858 80060C58 14A70006 */ bne $a1, $a3, .L80060C74 +/* 06185C 80060C5C 8FA30010 */ lw $v1, 0x10($sp) +/* 061860 80060C60 8FA30010 */ lw $v1, 0x10($sp) +/* 061864 80060C64 00000000 */ nop +/* 061868 80060C68 10C30007 */ beq $a2, $v1, .L80060C88 +/* 06186C 80060C6C 00000000 */ nop +/* 061870 80060C70 8FA30010 */ lw $v1, 0x10($sp) +.L80060C74: +/* 061874 80060C74 240D000A */ li $t5, 10 +/* 061878 80060C78 14A30005 */ bne $a1, $v1, .L80060C90 +/* 06187C 80060C7C 00000000 */ nop +/* 061880 80060C80 14C70003 */ bne $a2, $a3, .L80060C90 +/* 061884 80060C84 00000000 */ nop +.L80060C88: +/* 061888 80060C88 03E00008 */ jr $ra +/* 06188C 80060C8C 24020001 */ li $v0, 1 + +.L80060C90: +/* 061890 80060C90 00ED0019 */ multu $a3, $t5 +/* 061894 80060C94 00007012 */ mflo $t6 +/* 061898 80060C98 01C41021 */ addu $v0, $t6, $a0 +/* 06189C 80060C9C 84490000 */ lh $t1, ($v0) +/* 0618A0 80060CA0 00AD0019 */ multu $a1, $t5 +/* 0618A4 80060CA4 252AFFFC */ addiu $t2, $t1, -4 +/* 0618A8 80060CA8 25380004 */ addiu $t8, $t1, 4 +/* 0618AC 80060CAC 00007812 */ mflo $t7 +/* 0618B0 80060CB0 01E44021 */ addu $t0, $t7, $a0 +/* 0618B4 80060CB4 850B0000 */ lh $t3, ($t0) +/* 0618B8 80060CB8 00000000 */ nop +/* 0618BC 80060CBC 014B082A */ slt $at, $t2, $t3 +/* 0618C0 80060CC0 10200039 */ beqz $at, .L80060DA8 +/* 0618C4 80060CC4 0178082A */ slt $at, $t3, $t8 +/* 0618C8 80060CC8 10200037 */ beqz $at, .L80060DA8 +/* 0618CC 80060CCC 00000000 */ nop +/* 0618D0 80060CD0 84470002 */ lh $a3, 2($v0) +/* 0618D4 80060CD4 85050002 */ lh $a1, 2($t0) +/* 0618D8 80060CD8 24F9FFFC */ addiu $t9, $a3, -4 +/* 0618DC 80060CDC 0325082A */ slt $at, $t9, $a1 +/* 0618E0 80060CE0 10200031 */ beqz $at, .L80060DA8 +/* 0618E4 80060CE4 24EE0004 */ addiu $t6, $a3, 4 +/* 0618E8 80060CE8 00AE082A */ slt $at, $a1, $t6 +/* 0618EC 80060CEC 1020002E */ beqz $at, .L80060DA8 +/* 0618F0 80060CF0 00000000 */ nop +/* 0618F4 80060CF4 84470004 */ lh $a3, 4($v0) +/* 0618F8 80060CF8 85050004 */ lh $a1, 4($t0) +/* 0618FC 80060CFC 24EFFFFC */ addiu $t7, $a3, -4 +/* 061900 80060D00 01E5082A */ slt $at, $t7, $a1 +/* 061904 80060D04 10200028 */ beqz $at, .L80060DA8 +/* 061908 80060D08 24F80004 */ addiu $t8, $a3, 4 +/* 06190C 80060D0C 00B8082A */ slt $at, $a1, $t8 +/* 061910 80060D10 10200025 */ beqz $at, .L80060DA8 +/* 061914 80060D14 00000000 */ nop +/* 061918 80060D18 006D0019 */ multu $v1, $t5 +/* 06191C 80060D1C 0000C812 */ mflo $t9 +/* 061920 80060D20 03243821 */ addu $a3, $t9, $a0 +/* 061924 80060D24 84EC0000 */ lh $t4, ($a3) +/* 061928 80060D28 00CD0019 */ multu $a2, $t5 +/* 06192C 80060D2C 258FFFFC */ addiu $t7, $t4, -4 +/* 061930 80060D30 25980004 */ addiu $t8, $t4, 4 +/* 061934 80060D34 00007012 */ mflo $t6 +/* 061938 80060D38 01C42821 */ addu $a1, $t6, $a0 +/* 06193C 80060D3C 84A80000 */ lh $t0, ($a1) +/* 061940 80060D40 00000000 */ nop +/* 061944 80060D44 01E8082A */ slt $at, $t7, $t0 +/* 061948 80060D48 10200054 */ beqz $at, .L80060E9C +/* 06194C 80060D4C 0118082A */ slt $at, $t0, $t8 +/* 061950 80060D50 10200053 */ beqz $at, .L80060EA0 +/* 061954 80060D54 00001025 */ move $v0, $zero +/* 061958 80060D58 84EB0002 */ lh $t3, 2($a3) +/* 06195C 80060D5C 84A30002 */ lh $v1, 2($a1) +/* 061960 80060D60 2579FFFC */ addiu $t9, $t3, -4 +/* 061964 80060D64 0323082A */ slt $at, $t9, $v1 +/* 061968 80060D68 1020004C */ beqz $at, .L80060E9C +/* 06196C 80060D6C 256E0004 */ addiu $t6, $t3, 4 +/* 061970 80060D70 006E082A */ slt $at, $v1, $t6 +/* 061974 80060D74 1020004A */ beqz $at, .L80060EA0 +/* 061978 80060D78 00001025 */ move $v0, $zero +/* 06197C 80060D7C 84EB0004 */ lh $t3, 4($a3) +/* 061980 80060D80 84A30004 */ lh $v1, 4($a1) +/* 061984 80060D84 256FFFFC */ addiu $t7, $t3, -4 +/* 061988 80060D88 01E3082A */ slt $at, $t7, $v1 +/* 06198C 80060D8C 10200043 */ beqz $at, .L80060E9C +/* 061990 80060D90 25780004 */ addiu $t8, $t3, 4 +/* 061994 80060D94 0078082A */ slt $at, $v1, $t8 +/* 061998 80060D98 10200041 */ beqz $at, .L80060EA0 +/* 06199C 80060D9C 00001025 */ move $v0, $zero +/* 0619A0 80060DA0 03E00008 */ jr $ra +/* 0619A4 80060DA4 24020002 */ li $v0, 2 + +.L80060DA8: +/* 0619A8 80060DA8 006D0019 */ multu $v1, $t5 +/* 0619AC 80060DAC 0000C812 */ mflo $t9 +/* 0619B0 80060DB0 03243821 */ addu $a3, $t9, $a0 +/* 0619B4 80060DB4 84EC0000 */ lh $t4, ($a3) +/* 0619B8 80060DB8 00000000 */ nop +/* 0619BC 80060DBC 258EFFFC */ addiu $t6, $t4, -4 +/* 0619C0 80060DC0 01CB082A */ slt $at, $t6, $t3 +/* 0619C4 80060DC4 10200035 */ beqz $at, .L80060E9C +/* 0619C8 80060DC8 258F0004 */ addiu $t7, $t4, 4 +/* 0619CC 80060DCC 016F082A */ slt $at, $t3, $t7 +/* 0619D0 80060DD0 10200032 */ beqz $at, .L80060E9C +/* 0619D4 80060DD4 00000000 */ nop +/* 0619D8 80060DD8 84EB0002 */ lh $t3, 2($a3) +/* 0619DC 80060DDC 85050002 */ lh $a1, 2($t0) +/* 0619E0 80060DE0 2578FFFC */ addiu $t8, $t3, -4 +/* 0619E4 80060DE4 0305082A */ slt $at, $t8, $a1 +/* 0619E8 80060DE8 1020002C */ beqz $at, .L80060E9C +/* 0619EC 80060DEC 25790004 */ addiu $t9, $t3, 4 +/* 0619F0 80060DF0 00B9082A */ slt $at, $a1, $t9 +/* 0619F4 80060DF4 10200029 */ beqz $at, .L80060E9C +/* 0619F8 80060DF8 00000000 */ nop +/* 0619FC 80060DFC 84EB0004 */ lh $t3, 4($a3) +/* 061A00 80060E00 85050004 */ lh $a1, 4($t0) +/* 061A04 80060E04 256EFFFC */ addiu $t6, $t3, -4 +/* 061A08 80060E08 01C5082A */ slt $at, $t6, $a1 +/* 061A0C 80060E0C 10200023 */ beqz $at, .L80060E9C +/* 061A10 80060E10 256F0004 */ addiu $t7, $t3, 4 +/* 061A14 80060E14 00AF082A */ slt $at, $a1, $t7 +/* 061A18 80060E18 10200020 */ beqz $at, .L80060E9C +/* 061A1C 80060E1C 00000000 */ nop +/* 061A20 80060E20 00CD0019 */ multu $a2, $t5 +/* 061A24 80060E24 25390004 */ addiu $t9, $t1, 4 +/* 061A28 80060E28 0000C012 */ mflo $t8 +/* 061A2C 80060E2C 03042821 */ addu $a1, $t8, $a0 +/* 061A30 80060E30 84A80000 */ lh $t0, ($a1) +/* 061A34 80060E34 00000000 */ nop +/* 061A38 80060E38 0148082A */ slt $at, $t2, $t0 +/* 061A3C 80060E3C 10200017 */ beqz $at, .L80060E9C +/* 061A40 80060E40 0119082A */ slt $at, $t0, $t9 +/* 061A44 80060E44 10200015 */ beqz $at, .L80060E9C +/* 061A48 80060E48 00000000 */ nop +/* 061A4C 80060E4C 84470002 */ lh $a3, 2($v0) +/* 061A50 80060E50 84A30002 */ lh $v1, 2($a1) +/* 061A54 80060E54 24EEFFFC */ addiu $t6, $a3, -4 +/* 061A58 80060E58 01C3082A */ slt $at, $t6, $v1 +/* 061A5C 80060E5C 1020000F */ beqz $at, .L80060E9C +/* 061A60 80060E60 24EF0004 */ addiu $t7, $a3, 4 +/* 061A64 80060E64 006F082A */ slt $at, $v1, $t7 +/* 061A68 80060E68 1020000C */ beqz $at, .L80060E9C +/* 061A6C 80060E6C 00000000 */ nop +/* 061A70 80060E70 84470004 */ lh $a3, 4($v0) +/* 061A74 80060E74 84A30004 */ lh $v1, 4($a1) +/* 061A78 80060E78 24F8FFFC */ addiu $t8, $a3, -4 +/* 061A7C 80060E7C 0303082A */ slt $at, $t8, $v1 +/* 061A80 80060E80 10200006 */ beqz $at, .L80060E9C +/* 061A84 80060E84 24F90004 */ addiu $t9, $a3, 4 +/* 061A88 80060E88 0079082A */ slt $at, $v1, $t9 +/* 061A8C 80060E8C 10200004 */ beqz $at, .L80060EA0 +/* 061A90 80060E90 00001025 */ move $v0, $zero +/* 061A94 80060E94 03E00008 */ jr $ra +/* 061A98 80060E98 24020002 */ li $v0, 2 + +.L80060E9C: +/* 061A9C 80060E9C 00001025 */ move $v0, $zero +.L80060EA0: +/* 061AA0 80060EA0 03E00008 */ jr $ra +/* 061AA4 80060EA4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_05F690/func_80060EA8.s b/asm/non_matchings/unknown_05F690/func_80060EA8.s new file mode 100644 index 00000000..3f9b6b0a --- /dev/null +++ b/asm/non_matchings/unknown_05F690/func_80060EA8.s @@ -0,0 +1,784 @@ +glabel func_80060EA8 +/* 061AA8 80060EA8 27BDFF48 */ addiu $sp, $sp, -0xb8 +/* 061AAC 80060EAC AFBF0044 */ sw $ra, 0x44($sp) +/* 061AB0 80060EB0 AFBE0040 */ sw $fp, 0x40($sp) +/* 061AB4 80060EB4 AFB7003C */ sw $s7, 0x3c($sp) +/* 061AB8 80060EB8 AFB60038 */ sw $s6, 0x38($sp) +/* 061ABC 80060EBC AFB50034 */ sw $s5, 0x34($sp) +/* 061AC0 80060EC0 AFB40030 */ sw $s4, 0x30($sp) +/* 061AC4 80060EC4 AFB3002C */ sw $s3, 0x2c($sp) +/* 061AC8 80060EC8 AFB20028 */ sw $s2, 0x28($sp) +/* 061ACC 80060ECC AFB10024 */ sw $s1, 0x24($sp) +/* 061AD0 80060ED0 AFB00020 */ sw $s0, 0x20($sp) +/* 061AD4 80060ED4 E7B50018 */ swc1 $f21, 0x18($sp) +/* 061AD8 80060ED8 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 061ADC 80060EDC AFA400B8 */ sw $a0, 0xb8($sp) +/* 061AE0 80060EE0 84830028 */ lh $v1, 0x28($a0) +/* 061AE4 80060EE4 8C9F0038 */ lw $ra, 0x38($a0) +/* 061AE8 80060EE8 AC800040 */ sw $zero, 0x40($a0) +/* 061AEC 80060EEC 00003825 */ move $a3, $zero +/* 061AF0 80060EF0 1860001B */ blez $v1, .L80060F60 +/* 061AF4 80060EF4 00008825 */ move $s1, $zero +/* 061AF8 80060EF8 240D000C */ li $t5, 12 +.L80060EFC: +/* 061AFC 80060EFC 022D0019 */ multu $s1, $t5 +/* 061B00 80060F00 240100FF */ li $at, 255 +/* 061B04 80060F04 26310001 */ addiu $s1, $s1, 1 +/* 061B08 80060F08 00007812 */ mflo $t7 +/* 061B0C 80060F0C 03EF1021 */ addu $v0, $ra, $t7 +/* 061B10 80060F10 90580006 */ lbu $t8, 6($v0) +/* 061B14 80060F14 00000000 */ nop +/* 061B18 80060F18 17010006 */ bne $t8, $at, .L80060F34 +/* 061B1C 80060F1C 00000000 */ nop +/* 061B20 80060F20 8C590008 */ lw $t9, 8($v0) +/* 061B24 80060F24 00000000 */ nop +/* 061B28 80060F28 332E8000 */ andi $t6, $t9, 0x8000 +/* 061B2C 80060F2C 11C00008 */ beqz $t6, .L80060F50 +/* 061B30 80060F30 0011C400 */ sll $t8, $s1, 0x10 +.L80060F34: +/* 061B34 80060F34 844F000E */ lh $t7, 0xe($v0) +/* 061B38 80060F38 84590002 */ lh $t9, 2($v0) +/* 061B3C 80060F3C 00EFC021 */ addu $t8, $a3, $t7 +/* 061B40 80060F40 03193823 */ subu $a3, $t8, $t9 +/* 061B44 80060F44 00077400 */ sll $t6, $a3, 0x10 +/* 061B48 80060F48 000E3C03 */ sra $a3, $t6, 0x10 +/* 061B4C 80060F4C 0011C400 */ sll $t8, $s1, 0x10 +.L80060F50: +/* 061B50 80060F50 00188C03 */ sra $s1, $t8, 0x10 +/* 061B54 80060F54 0223082A */ slt $at, $s1, $v1 +/* 061B58 80060F58 1420FFE8 */ bnez $at, .L80060EFC +/* 061B5C 80060F5C 00000000 */ nop +.L80060F60: +/* 061B60 80060F60 18E00295 */ blez $a3, .L800619B8 +/* 061B64 80060F64 3C05FF7F */ lui $a1, (0xFF7F7FFF >> 16) # lui $a1, 0xff7f +/* 061B68 80060F68 8FAE00B8 */ lw $t6, 0xb8($sp) +/* 061B6C 80060F6C 34A57FFF */ ori $a1, (0xFF7F7FFF & 0xFFFF) # ori $a1, $a1, 0x7fff +/* 061B70 80060F70 8DCF0008 */ lw $t7, 8($t6) +/* 061B74 80060F74 8DD30004 */ lw $s3, 4($t6) +/* 061B78 80060F78 AFAF00B0 */ sw $t7, 0xb0($sp) +/* 061B7C 80060F7C 85C40026 */ lh $a0, 0x26($t6) +/* 061B80 80060F80 AFBF00A4 */ sw $ra, 0xa4($sp) +/* 061B84 80060F84 0004C080 */ sll $t8, $a0, 2 +/* 061B88 80060F88 0304C023 */ subu $t8, $t8, $a0 +/* 061B8C 80060F8C 00182080 */ sll $a0, $t8, 2 +/* 061B90 80060F90 0C01C344 */ jal func_80070D10 +/* 061B94 80060F94 A7A70098 */ sh $a3, 0x98($sp) +/* 061B98 80060F98 87A70098 */ lh $a3, 0x98($sp) +/* 061B9C 80060F9C 8FBF00A4 */ lw $ra, 0xa4($sp) +/* 061BA0 80060FA0 14400003 */ bnez $v0, .L80060FB0 +/* 061BA4 80060FA4 AFA200AC */ sw $v0, 0xac($sp) +/* 061BA8 80060FA8 10000284 */ b .L800619BC +/* 061BAC 80060FAC 24020001 */ li $v0, 1 +.L80060FB0: +/* 061BB0 80060FB0 00072080 */ sll $a0, $a3, 2 +/* 061BB4 80060FB4 00872023 */ subu $a0, $a0, $a3 +/* 061BB8 80060FB8 3C05FF7F */ lui $a1, (0xFF7F7FFF >> 16) # lui $a1, 0xff7f +/* 061BBC 80060FBC AFBF00A4 */ sw $ra, 0xa4($sp) +/* 061BC0 80060FC0 34A57FFF */ ori $a1, (0xFF7F7FFF & 0xFFFF) # ori $a1, $a1, 0x7fff +/* 061BC4 80060FC4 0C01C344 */ jal func_80070D10 +/* 061BC8 80060FC8 00042040 */ sll $a0, $a0, 1 +/* 061BCC 80060FCC 8FBF00A4 */ lw $ra, 0xa4($sp) +/* 061BD0 80060FD0 240D000C */ li $t5, 12 +/* 061BD4 80060FD4 14400006 */ bnez $v0, .L80060FF0 +/* 061BD8 80060FD8 AFA200A0 */ sw $v0, 0xa0($sp) +/* 061BDC 80060FDC 8FA400AC */ lw $a0, 0xac($sp) +/* 061BE0 80060FE0 0C01C450 */ jal func_80071140 +/* 061BE4 80060FE4 00000000 */ nop +/* 061BE8 80060FE8 10000274 */ b .L800619BC +/* 061BEC 80060FEC 24020001 */ li $v0, 1 +.L80060FF0: +/* 061BF0 80060FF0 8FB900B8 */ lw $t9, 0xb8($sp) +/* 061BF4 80060FF4 00008825 */ move $s1, $zero +/* 061BF8 80060FF8 87230028 */ lh $v1, 0x28($t9) +/* 061BFC 80060FFC 27B70064 */ addiu $s7, $sp, 0x64 +/* 061C00 80061000 1860008B */ blez $v1, .L80061230 +/* 061C04 80061004 27B60070 */ addiu $s6, $sp, 0x70 +/* 061C08 80061008 4480A000 */ mtc1 $zero, $f20 +/* 061C0C 8006100C 27BE0058 */ addiu $fp, $sp, 0x58 +/* 061C10 80061010 2412000A */ li $s2, 10 +.L80061014: +/* 061C14 80061014 022D0019 */ multu $s1, $t5 +/* 061C18 80061018 00007812 */ mflo $t7 +/* 061C1C 8006101C 03EF1021 */ addu $v0, $ra, $t7 +/* 061C20 80061020 84550004 */ lh $s5, 4($v0) +/* 061C24 80061024 844E0010 */ lh $t6, 0x10($v0) +/* 061C28 80061028 84540002 */ lh $s4, 2($v0) +/* 061C2C 8006102C 02AE082A */ slt $at, $s5, $t6 +/* 061C30 80061030 10200079 */ beqz $at, .L80061218 +/* 061C34 80061034 00000000 */ nop +/* 061C38 80061038 AFA20050 */ sw $v0, 0x50($sp) +/* 061C3C 8006103C 8FB800B0 */ lw $t8, 0xb0($sp) +.L80061040: +/* 061C40 80061040 0015C900 */ sll $t9, $s5, 4 +/* 061C44 80061044 00003825 */ move $a3, $zero +/* 061C48 80061048 03192021 */ addu $a0, $t8, $t9 +.L8006104C: +/* 061C4C 8006104C 00877821 */ addu $t7, $a0, $a3 +/* 061C50 80061050 91EE0001 */ lbu $t6, 1($t7) +/* 061C54 80061054 00071080 */ sll $v0, $a3, 2 +/* 061C58 80061058 01D43021 */ addu $a2, $t6, $s4 +/* 061C5C 8006105C 0006C400 */ sll $t8, $a2, 0x10 +/* 061C60 80061060 0018CC03 */ sra $t9, $t8, 0x10 +/* 061C64 80061064 03320019 */ multu $t9, $s2 +/* 061C68 80061068 02C2C021 */ addu $t8, $s6, $v0 +/* 061C6C 8006106C 24E70001 */ addiu $a3, $a3, 1 +/* 061C70 80061070 00007812 */ mflo $t7 +/* 061C74 80061074 026F1821 */ addu $v1, $s3, $t7 +/* 061C78 80061078 846E0000 */ lh $t6, ($v1) +/* 061C7C 8006107C 02E27821 */ addu $t7, $s7, $v0 +/* 061C80 80061080 448E2000 */ mtc1 $t6, $f4 +/* 061C84 80061084 00000000 */ nop +/* 061C88 80061088 468021A0 */ cvt.s.w $f6, $f4 +/* 061C8C 8006108C E7060000 */ swc1 $f6, ($t8) +/* 061C90 80061090 84790002 */ lh $t9, 2($v1) +/* 061C94 80061094 03C2C021 */ addu $t8, $fp, $v0 +/* 061C98 80061098 44994000 */ mtc1 $t9, $f8 +/* 061C9C 8006109C 0007CC00 */ sll $t9, $a3, 0x10 +/* 061CA0 800610A0 468042A0 */ cvt.s.w $f10, $f8 +/* 061CA4 800610A4 00193C03 */ sra $a3, $t9, 0x10 +/* 061CA8 800610A8 28E10003 */ slti $at, $a3, 3 +/* 061CAC 800610AC E5EA0000 */ swc1 $f10, ($t7) +/* 061CB0 800610B0 846E0004 */ lh $t6, 4($v1) +/* 061CB4 800610B4 00000000 */ nop +/* 061CB8 800610B8 448E8000 */ mtc1 $t6, $f16 +/* 061CBC 800610BC 00000000 */ nop +/* 061CC0 800610C0 468084A0 */ cvt.s.w $f18, $f16 +/* 061CC4 800610C4 1420FFE1 */ bnez $at, .L8006104C +/* 061CC8 800610C8 E7120000 */ swc1 $f18, ($t8) +/* 061CCC 800610CC C7A40058 */ lwc1 $f4, 0x58($sp) +/* 061CD0 800610D0 C7A60060 */ lwc1 $f6, 0x60($sp) +/* 061CD4 800610D4 C7AA0064 */ lwc1 $f10, 0x64($sp) +/* 061CD8 800610D8 C7B00068 */ lwc1 $f16, 0x68($sp) +/* 061CDC 800610DC 02AD0019 */ multu $s5, $t5 +/* 061CE0 800610E0 46062201 */ sub.s $f8, $f4, $f6 +/* 061CE4 800610E4 8FAE00AC */ lw $t6, 0xac($sp) +/* 061CE8 800610E8 46105481 */ sub.s $f18, $f10, $f16 +/* 061CEC 800610EC C7B0005C */ lwc1 $f16, 0x5c($sp) +/* 061CF0 800610F0 46124182 */ mul.s $f6, $f8, $f18 +/* 061CF4 800610F4 C7B2006C */ lwc1 $f18, 0x6c($sp) +/* 061CF8 800610F8 46102201 */ sub.s $f8, $f4, $f16 +/* 061CFC 800610FC 46125101 */ sub.s $f4, $f10, $f18 +/* 061D00 80061100 0000C012 */ mflo $t8 +/* 061D04 80061104 46044402 */ mul.s $f16, $f8, $f4 +/* 061D08 80061108 01D88021 */ addu $s0, $t6, $t8 +/* 061D0C 8006110C 46103281 */ sub.s $f10, $f6, $f16 +/* 061D10 80061110 E60A0000 */ swc1 $f10, ($s0) +/* 061D14 80061114 C7B00078 */ lwc1 $f16, 0x78($sp) +/* 061D18 80061118 C7A60070 */ lwc1 $f6, 0x70($sp) +/* 061D1C 8006111C C7A8005C */ lwc1 $f8, 0x5c($sp) +/* 061D20 80061120 C7B20058 */ lwc1 $f18, 0x58($sp) +/* 061D24 80061124 46103281 */ sub.s $f10, $f6, $f16 +/* 061D28 80061128 C7B00060 */ lwc1 $f16, 0x60($sp) +/* 061D2C 8006112C 46089101 */ sub.s $f4, $f18, $f8 +/* 061D30 80061130 C6020000 */ lwc1 $f2, ($s0) +/* 061D34 80061134 460A2202 */ mul.s $f8, $f4, $f10 +/* 061D38 80061138 C7AA0074 */ lwc1 $f10, 0x74($sp) +/* 061D3C 8006113C 46109101 */ sub.s $f4, $f18, $f16 +/* 061D40 80061140 460A3481 */ sub.s $f18, $f6, $f10 +/* 061D44 80061144 46122402 */ mul.s $f16, $f4, $f18 +/* 061D48 80061148 46104181 */ sub.s $f6, $f8, $f16 +/* 061D4C 8006114C E6060004 */ swc1 $f6, 4($s0) +/* 061D50 80061150 C7B0006C */ lwc1 $f16, 0x6c($sp) +/* 061D54 80061154 C7A80064 */ lwc1 $f8, 0x64($sp) +/* 061D58 80061158 C7A40074 */ lwc1 $f4, 0x74($sp) +/* 061D5C 8006115C C7AA0070 */ lwc1 $f10, 0x70($sp) +/* 061D60 80061160 46104181 */ sub.s $f6, $f8, $f16 +/* 061D64 80061164 C7B00068 */ lwc1 $f16, 0x68($sp) +/* 061D68 80061168 46045481 */ sub.s $f18, $f10, $f4 +/* 061D6C 8006116C C60E0004 */ lwc1 $f14, 4($s0) +/* 061D70 80061170 46069102 */ mul.s $f4, $f18, $f6 +/* 061D74 80061174 C7A60078 */ lwc1 $f6, 0x78($sp) +/* 061D78 80061178 46104481 */ sub.s $f18, $f8, $f16 +/* 061D7C 8006117C 46065201 */ sub.s $f8, $f10, $f6 +/* 061D80 80061180 46089402 */ mul.s $f16, $f18, $f8 +/* 061D84 80061184 46102281 */ sub.s $f10, $f4, $f16 +/* 061D88 80061188 46021182 */ mul.s $f6, $f2, $f2 +/* 061D8C 8006118C E60A0008 */ swc1 $f10, 8($s0) +/* 061D90 80061190 C6000008 */ lwc1 $f0, 8($s0) +/* 061D94 80061194 AFBF00A4 */ sw $ra, 0xa4($sp) +/* 061D98 80061198 460E7482 */ mul.s $f18, $f14, $f14 +/* 061D9C 8006119C 00000000 */ nop +/* 061DA0 800611A0 46000102 */ mul.s $f4, $f0, $f0 +/* 061DA4 800611A4 46123200 */ add.s $f8, $f6, $f18 +/* 061DA8 800611A8 0C0326B4 */ jal sqrtf +/* 061DAC 800611AC 46082300 */ add.s $f12, $f4, $f8 +/* 061DB0 800611B0 46140032 */ c.eq.s $f0, $f20 +/* 061DB4 800611B4 8FBF00A4 */ lw $ra, 0xa4($sp) +/* 061DB8 800611B8 4501000B */ bc1t .L800611E8 +/* 061DBC 800611BC 240D000C */ li $t5, 12 +/* 061DC0 800611C0 C6100000 */ lwc1 $f16, ($s0) +/* 061DC4 800611C4 C6060004 */ lwc1 $f6, 4($s0) +/* 061DC8 800611C8 C6040008 */ lwc1 $f4, 8($s0) +/* 061DCC 800611CC 46008283 */ div.s $f10, $f16, $f0 +/* 061DD0 800611D0 00000000 */ nop +/* 061DD4 800611D4 46003483 */ div.s $f18, $f6, $f0 +/* 061DD8 800611D8 E60A0000 */ swc1 $f10, ($s0) +/* 061DDC 800611DC 46002203 */ div.s $f8, $f4, $f0 +/* 061DE0 800611E0 E6120004 */ swc1 $f18, 4($s0) +/* 061DE4 800611E4 E6080008 */ swc1 $f8, 8($s0) +.L800611E8: +/* 061DE8 800611E8 8FAE0050 */ lw $t6, 0x50($sp) +/* 061DEC 800611EC 26B50001 */ addiu $s5, $s5, 1 +/* 061DF0 800611F0 85D80010 */ lh $t8, 0x10($t6) +/* 061DF4 800611F4 0015CC00 */ sll $t9, $s5, 0x10 +/* 061DF8 800611F8 0019AC03 */ sra $s5, $t9, 0x10 +/* 061DFC 800611FC 02B8082A */ slt $at, $s5, $t8 +/* 061E00 80061200 1420FF8F */ bnez $at, .L80061040 +/* 061E04 80061204 8FB800B0 */ lw $t8, 0xb0($sp) +/* 061E08 80061208 8FB900B8 */ lw $t9, 0xb8($sp) +/* 061E0C 8006120C 00000000 */ nop +/* 061E10 80061210 87230028 */ lh $v1, 0x28($t9) +/* 061E14 80061214 00000000 */ nop +.L80061218: +/* 061E18 80061218 26310001 */ addiu $s1, $s1, 1 +/* 061E1C 8006121C 00117C00 */ sll $t7, $s1, 0x10 +/* 061E20 80061220 000F8C03 */ sra $s1, $t7, 0x10 +/* 061E24 80061224 0223082A */ slt $at, $s1, $v1 +/* 061E28 80061228 1420FF7A */ bnez $at, .L80061014 +/* 061E2C 8006122C 00000000 */ nop +.L80061230: +/* 061E30 80061230 8FB800B8 */ lw $t8, 0xb8($sp) +/* 061E34 80061234 4480A000 */ mtc1 $zero, $f20 +/* 061E38 80061238 87040024 */ lh $a0, 0x24($t8) +/* 061E3C 8006123C AFBF00A4 */ sw $ra, 0xa4($sp) +/* 061E40 80061240 3C05FF7F */ lui $a1, %hi(D_FF7F0001) # $a1, 0xff7f +/* 061E44 80061244 0004C840 */ sll $t9, $a0, 1 +/* 061E48 80061248 2412000A */ li $s2, 10 +/* 061E4C 8006124C 03202025 */ move $a0, $t9 +/* 061E50 80061250 0C01C344 */ jal func_80070D10 +/* 061E54 80061254 34A57FFF */ ori $a1, (0xFF7F7FFF & 0xFFFF) # ori $a1, $a1, 0x7fff +/* 061E58 80061258 8FBF00A4 */ lw $ra, 0xa4($sp) +/* 061E5C 8006125C 240D000C */ li $t5, 12 +/* 061E60 80061260 14400009 */ bnez $v0, .L80061288 +/* 061E64 80061264 0040B825 */ move $s7, $v0 +/* 061E68 80061268 8FA400AC */ lw $a0, 0xac($sp) +/* 061E6C 8006126C 0C01C450 */ jal func_80071140 +/* 061E70 80061270 00000000 */ nop +/* 061E74 80061274 8FA400A0 */ lw $a0, 0xa0($sp) +/* 061E78 80061278 0C01C450 */ jal func_80071140 +/* 061E7C 8006127C 00000000 */ nop +/* 061E80 80061280 100001CE */ b .L800619BC +/* 061E84 80061284 24020001 */ li $v0, 1 +.L80061288: +/* 061E88 80061288 8FAF00B8 */ lw $t7, 0xb8($sp) +/* 061E8C 8006128C 0000B025 */ move $s6, $zero +/* 061E90 80061290 85E30028 */ lh $v1, 0x28($t7) +/* 061E94 80061294 00008825 */ move $s1, $zero +/* 061E98 80061298 186000E6 */ blez $v1, .L80061634 +/* 061E9C 8006129C 2414FFFF */ li $s4, -1 +/* 061EA0 800612A0 241000FE */ li $s0, 254 +.L800612A4: +/* 061EA4 800612A4 022D0019 */ multu $s1, $t5 +/* 061EA8 800612A8 00007012 */ mflo $t6 +/* 061EAC 800612AC 03EEC021 */ addu $t8, $ra, $t6 +/* 061EB0 800612B0 AFB80050 */ sw $t8, 0x50($sp) +/* 061EB4 800612B4 870F000E */ lh $t7, 0xe($t8) +/* 061EB8 800612B8 870B0002 */ lh $t3, 2($t8) +/* 061EBC 800612BC 00000000 */ nop +/* 061EC0 800612C0 016F082A */ slt $at, $t3, $t7 +/* 061EC4 800612C4 102000D5 */ beqz $at, .L8006161C +/* 061EC8 800612C8 00000000 */ nop +/* 061ECC 800612CC 8FAE0050 */ lw $t6, 0x50($sp) +.L800612D0: +/* 061ED0 800612D0 00000000 */ nop +/* 061ED4 800612D4 91CC0006 */ lbu $t4, 6($t6) +/* 061ED8 800612D8 00000000 */ nop +/* 061EDC 800612DC 298100FE */ slti $at, $t4, 0xfe +/* 061EE0 800612E0 10200058 */ beqz $at, .L80061444 +/* 061EE4 800612E4 00000000 */ nop +/* 061EE8 800612E8 01720019 */ multu $t3, $s2 +/* 061EEC 800612EC 00143400 */ sll $a2, $s4, 0x10 +/* 061EF0 800612F0 0006C403 */ sra $t8, $a2, 0x10 +/* 061EF4 800612F4 03003025 */ move $a2, $t8 +/* 061EF8 800612F8 00002825 */ move $a1, $zero +/* 061EFC 800612FC 0000C812 */ mflo $t9 +/* 061F00 80061300 02791821 */ addu $v1, $s3, $t9 +/* 061F04 80061304 84680000 */ lh $t0, ($v1) +/* 061F08 80061308 84690002 */ lh $t1, 2($v1) +/* 061F0C 8006130C 846A0004 */ lh $t2, 4($v1) +/* 061F10 80061310 06200040 */ bltz $s1, .L80061414 +/* 061F14 80061314 00000000 */ nop +.L80061318: +/* 061F18 80061318 00AD0019 */ multu $a1, $t5 +/* 061F1C 8006131C 00007812 */ mflo $t7 +/* 061F20 80061320 03EF3821 */ addu $a3, $ra, $t7 +/* 061F24 80061324 90EE0006 */ lbu $t6, 6($a3) +/* 061F28 80061328 00000000 */ nop +/* 061F2C 8006132C 158E0031 */ bne $t4, $t6, .L800613F4 +/* 061F30 80061330 00000000 */ nop +/* 061F34 80061334 84E40002 */ lh $a0, 2($a3) +/* 061F38 80061338 14B10003 */ bne $a1, $s1, .L80061348 +/* 061F3C 8006133C 008B082A */ slt $at, $a0, $t3 +/* 061F40 80061340 14200008 */ bnez $at, .L80061364 +/* 061F44 80061344 00000000 */ nop +.L80061348: +/* 061F48 80061348 10B1002A */ beq $a1, $s1, .L800613F4 +/* 061F4C 8006134C 00000000 */ nop +/* 061F50 80061350 84F8000E */ lh $t8, 0xe($a3) +/* 061F54 80061354 00000000 */ nop +/* 061F58 80061358 0098082A */ slt $at, $a0, $t8 +/* 061F5C 8006135C 10200025 */ beqz $at, .L800613F4 +/* 061F60 80061360 00000000 */ nop +.L80061364: +/* 061F64 80061364 04C10023 */ bgez $a2, .L800613F4 +/* 061F68 80061368 00000000 */ nop +.L8006136C: +/* 061F6C 8006136C 00920019 */ multu $a0, $s2 +/* 061F70 80061370 0000C812 */ mflo $t9 +/* 061F74 80061374 02791821 */ addu $v1, $s3, $t9 +/* 061F78 80061378 846F0000 */ lh $t7, ($v1) +/* 061F7C 8006137C 00000000 */ nop +/* 061F80 80061380 150F000B */ bne $t0, $t7, .L800613B0 +/* 061F84 80061384 00000000 */ nop +/* 061F88 80061388 846E0002 */ lh $t6, 2($v1) +/* 061F8C 8006138C 00000000 */ nop +/* 061F90 80061390 152E0007 */ bne $t1, $t6, .L800613B0 +/* 061F94 80061394 00000000 */ nop +/* 061F98 80061398 84780004 */ lh $t8, 4($v1) +/* 061F9C 8006139C 0004C840 */ sll $t9, $a0, 1 +/* 061FA0 800613A0 15580003 */ bne $t2, $t8, .L800613B0 +/* 061FA4 800613A4 00597821 */ addu $t7, $v0, $t9 +/* 061FA8 800613A8 85E60000 */ lh $a2, ($t7) +/* 061FAC 800613AC 00000000 */ nop +.L800613B0: +/* 061FB0 800613B0 24840001 */ addiu $a0, $a0, 1 +/* 061FB4 800613B4 00047400 */ sll $t6, $a0, 0x10 +/* 061FB8 800613B8 000EC403 */ sra $t8, $t6, 0x10 +/* 061FBC 800613BC 14B10004 */ bne $a1, $s1, .L800613D0 +/* 061FC0 800613C0 03002025 */ move $a0, $t8 +/* 061FC4 800613C4 030B082A */ slt $at, $t8, $t3 +/* 061FC8 800613C8 14200008 */ bnez $at, .L800613EC +/* 061FCC 800613CC 00000000 */ nop +.L800613D0: +/* 061FD0 800613D0 10B10008 */ beq $a1, $s1, .L800613F4 +/* 061FD4 800613D4 00000000 */ nop +/* 061FD8 800613D8 84F9000E */ lh $t9, 0xe($a3) +/* 061FDC 800613DC 00000000 */ nop +/* 061FE0 800613E0 0099082A */ slt $at, $a0, $t9 +/* 061FE4 800613E4 10200003 */ beqz $at, .L800613F4 +/* 061FE8 800613E8 00000000 */ nop +.L800613EC: +/* 061FEC 800613EC 04C0FFDF */ bltz $a2, .L8006136C +/* 061FF0 800613F0 00000000 */ nop +.L800613F4: +/* 061FF4 800613F4 24A50001 */ addiu $a1, %lo(D_FF7F0001) # addiu $a1, $a1, 1 +/* 061FF8 800613F8 00057C00 */ sll $t7, $a1, 0x10 +/* 061FFC 800613FC 000F2C03 */ sra $a1, $t7, 0x10 +/* 062000 80061400 0225082A */ slt $at, $s1, $a1 +/* 062004 80061404 14200003 */ bnez $at, .L80061414 +/* 062008 80061408 00000000 */ nop +/* 06200C 8006140C 04C0FFC2 */ bltz $a2, .L80061318 +/* 062010 80061410 00000000 */ nop +.L80061414: +/* 062014 80061414 04C10008 */ bgez $a2, .L80061438 +/* 062018 80061418 000BC040 */ sll $t8, $t3, 1 +/* 06201C 8006141C 000BC040 */ sll $t8, $t3, 1 +/* 062020 80061420 0058C821 */ addu $t9, $v0, $t8 +/* 062024 80061424 A7360000 */ sh $s6, ($t9) +/* 062028 80061428 26D60001 */ addiu $s6, $s6, 1 +/* 06202C 8006142C 00167C00 */ sll $t7, $s6, 0x10 +/* 062030 80061430 1000006E */ b .L800615EC +/* 062034 80061434 000FB403 */ sra $s6, $t7, 0x10 +.L80061438: +/* 062038 80061438 0058C821 */ addu $t9, $v0, $t8 +/* 06203C 8006143C 1000006B */ b .L800615EC +/* 062040 80061440 A7260000 */ sh $a2, ($t9) +.L80061444: +/* 062044 80061444 160C0007 */ bne $s0, $t4, .L80061464 +/* 062048 80061448 000B7840 */ sll $t7, $t3, 1 +/* 06204C 8006144C 004F7021 */ addu $t6, $v0, $t7 +/* 062050 80061450 A5D60000 */ sh $s6, ($t6) +/* 062054 80061454 26D60001 */ addiu $s6, $s6, 1 +/* 062058 80061458 0016C400 */ sll $t8, $s6, 0x10 +/* 06205C 8006145C 10000063 */ b .L800615EC +/* 062060 80061460 0018B403 */ sra $s6, $t8, 0x10 +.L80061464: +/* 062064 80061464 8FAF0050 */ lw $t7, 0x50($sp) +/* 062068 80061468 00000000 */ nop +/* 06206C 8006146C 8DEE0008 */ lw $t6, 8($t7) +/* 062070 80061470 00000000 */ nop +/* 062074 80061474 31D88000 */ andi $t8, $t6, 0x8000 +/* 062078 80061478 1300005A */ beqz $t8, .L800615E4 +/* 06207C 8006147C 000BC040 */ sll $t8, $t3, 1 +/* 062080 80061480 01720019 */ multu $t3, $s2 +/* 062084 80061484 00143400 */ sll $a2, $s4, 0x10 +/* 062088 80061488 0006CC03 */ sra $t9, $a2, 0x10 +/* 06208C 8006148C 03203025 */ move $a2, $t9 +/* 062090 80061490 00002825 */ move $a1, $zero +/* 062094 80061494 00007812 */ mflo $t7 +/* 062098 80061498 026F1821 */ addu $v1, $s3, $t7 +/* 06209C 8006149C 84680000 */ lh $t0, ($v1) +/* 0620A0 800614A0 84690002 */ lh $t1, 2($v1) +/* 0620A4 800614A4 846A0004 */ lh $t2, 4($v1) +/* 0620A8 800614A8 06200041 */ bltz $s1, .L800615B0 +/* 0620AC 800614AC 00000000 */ nop +.L800614B0: +/* 0620B0 800614B0 00AD0019 */ multu $a1, $t5 +/* 0620B4 800614B4 00007012 */ mflo $t6 +/* 0620B8 800614B8 03EE3821 */ addu $a3, $ra, $t6 +/* 0620BC 800614BC 8CF80008 */ lw $t8, 8($a3) +/* 0620C0 800614C0 00000000 */ nop +/* 0620C4 800614C4 33198000 */ andi $t9, $t8, 0x8000 +/* 0620C8 800614C8 13200031 */ beqz $t9, .L80061590 +/* 0620CC 800614CC 00000000 */ nop +/* 0620D0 800614D0 84E40002 */ lh $a0, 2($a3) +/* 0620D4 800614D4 14B10003 */ bne $a1, $s1, .L800614E4 +/* 0620D8 800614D8 008B082A */ slt $at, $a0, $t3 +/* 0620DC 800614DC 14200008 */ bnez $at, .L80061500 +/* 0620E0 800614E0 00000000 */ nop +.L800614E4: +/* 0620E4 800614E4 10B1002A */ beq $a1, $s1, .L80061590 +/* 0620E8 800614E8 00000000 */ nop +/* 0620EC 800614EC 84EF000E */ lh $t7, 0xe($a3) +/* 0620F0 800614F0 00000000 */ nop +/* 0620F4 800614F4 008F082A */ slt $at, $a0, $t7 +/* 0620F8 800614F8 10200025 */ beqz $at, .L80061590 +/* 0620FC 800614FC 00000000 */ nop +.L80061500: +/* 062100 80061500 04C10023 */ bgez $a2, .L80061590 +/* 062104 80061504 00000000 */ nop +.L80061508: +/* 062108 80061508 00920019 */ multu $a0, $s2 +/* 06210C 8006150C 00007012 */ mflo $t6 +/* 062110 80061510 026E1821 */ addu $v1, $s3, $t6 +/* 062114 80061514 84780000 */ lh $t8, ($v1) +/* 062118 80061518 00000000 */ nop +/* 06211C 8006151C 1518000B */ bne $t0, $t8, .L8006154C +/* 062120 80061520 00000000 */ nop +/* 062124 80061524 84790002 */ lh $t9, 2($v1) +/* 062128 80061528 00000000 */ nop +/* 06212C 8006152C 15390007 */ bne $t1, $t9, .L8006154C +/* 062130 80061530 00000000 */ nop +/* 062134 80061534 846F0004 */ lh $t7, 4($v1) +/* 062138 80061538 00047040 */ sll $t6, $a0, 1 +/* 06213C 8006153C 154F0003 */ bne $t2, $t7, .L8006154C +/* 062140 80061540 004EC021 */ addu $t8, $v0, $t6 +/* 062144 80061544 87060000 */ lh $a2, ($t8) +/* 062148 80061548 00000000 */ nop +.L8006154C: +/* 06214C 8006154C 24840001 */ addiu $a0, $a0, 1 +/* 062150 80061550 0004CC00 */ sll $t9, $a0, 0x10 +/* 062154 80061554 00197C03 */ sra $t7, $t9, 0x10 +/* 062158 80061558 14B10004 */ bne $a1, $s1, .L8006156C +/* 06215C 8006155C 01E02025 */ move $a0, $t7 +/* 062160 80061560 01EB082A */ slt $at, $t7, $t3 +/* 062164 80061564 14200008 */ bnez $at, .L80061588 +/* 062168 80061568 00000000 */ nop +.L8006156C: +/* 06216C 8006156C 10B10008 */ beq $a1, $s1, .L80061590 +/* 062170 80061570 00000000 */ nop +/* 062174 80061574 84EE000E */ lh $t6, 0xe($a3) +/* 062178 80061578 00000000 */ nop +/* 06217C 8006157C 008E082A */ slt $at, $a0, $t6 +/* 062180 80061580 10200003 */ beqz $at, .L80061590 +/* 062184 80061584 00000000 */ nop +.L80061588: +/* 062188 80061588 04C0FFDF */ bltz $a2, .L80061508 +/* 06218C 8006158C 00000000 */ nop +.L80061590: +/* 062190 80061590 24A50001 */ addiu $a1, $a1, 1 +/* 062194 80061594 0005C400 */ sll $t8, $a1, 0x10 +/* 062198 80061598 00182C03 */ sra $a1, $t8, 0x10 +/* 06219C 8006159C 0225082A */ slt $at, $s1, $a1 +/* 0621A0 800615A0 14200003 */ bnez $at, .L800615B0 +/* 0621A4 800615A4 00000000 */ nop +/* 0621A8 800615A8 04C0FFC1 */ bltz $a2, .L800614B0 +/* 0621AC 800615AC 00000000 */ nop +.L800615B0: +/* 0621B0 800615B0 04C10008 */ bgez $a2, .L800615D4 +/* 0621B4 800615B4 000B7840 */ sll $t7, $t3, 1 +/* 0621B8 800615B8 000B7840 */ sll $t7, $t3, 1 +/* 0621BC 800615BC 004F7021 */ addu $t6, $v0, $t7 +/* 0621C0 800615C0 A5D60000 */ sh $s6, ($t6) +/* 0621C4 800615C4 26D60001 */ addiu $s6, $s6, 1 +/* 0621C8 800615C8 0016C400 */ sll $t8, $s6, 0x10 +/* 0621CC 800615CC 10000007 */ b .L800615EC +/* 0621D0 800615D0 0018B403 */ sra $s6, $t8, 0x10 +.L800615D4: +/* 0621D4 800615D4 004F7021 */ addu $t6, $v0, $t7 +/* 0621D8 800615D8 10000004 */ b .L800615EC +/* 0621DC 800615DC A5C60000 */ sh $a2, ($t6) +/* 0621E0 800615E0 000BC040 */ sll $t8, $t3, 1 +.L800615E4: +/* 0621E4 800615E4 0058C821 */ addu $t9, $v0, $t8 +/* 0621E8 800615E8 A7340000 */ sh $s4, ($t9) +.L800615EC: +/* 0621EC 800615EC 8FB80050 */ lw $t8, 0x50($sp) +/* 0621F0 800615F0 256B0001 */ addiu $t3, $t3, 1 +/* 0621F4 800615F4 8719000E */ lh $t9, 0xe($t8) +/* 0621F8 800615F8 000B7C00 */ sll $t7, $t3, 0x10 +/* 0621FC 800615FC 000F5C03 */ sra $t3, $t7, 0x10 +/* 062200 80061600 0179082A */ slt $at, $t3, $t9 +/* 062204 80061604 1420FF32 */ bnez $at, .L800612D0 +/* 062208 80061608 8FAE0050 */ lw $t6, 0x50($sp) +/* 06220C 8006160C 8FAF00B8 */ lw $t7, 0xb8($sp) +/* 062210 80061610 00000000 */ nop +/* 062214 80061614 85E30028 */ lh $v1, 0x28($t7) +/* 062218 80061618 00000000 */ nop +.L8006161C: +/* 06221C 8006161C 26310001 */ addiu $s1, $s1, 1 +/* 062220 80061620 00117400 */ sll $t6, $s1, 0x10 +/* 062224 80061624 000E8C03 */ sra $s1, $t6, 0x10 +/* 062228 80061628 0223082A */ slt $at, $s1, $v1 +/* 06222C 8006162C 1420FF1D */ bnez $at, .L800612A4 +/* 062230 80061630 00000000 */ nop +.L80061634: +/* 062234 80061634 00162080 */ sll $a0, $s6, 2 +/* 062238 80061638 00962023 */ subu $a0, $a0, $s6 +/* 06223C 8006163C 3C05FF7F */ lui $a1, (0xFF7F7FFF >> 16) # lui $a1, 0xff7f +/* 062240 80061640 AFBF00A4 */ sw $ra, 0xa4($sp) +/* 062244 80061644 34A57FFF */ ori $a1, (0xFF7F7FFF & 0xFFFF) # ori $a1, $a1, 0x7fff +/* 062248 80061648 0C01C344 */ jal func_80070D10 +/* 06224C 8006164C 00042080 */ sll $a0, $a0, 2 +/* 062250 80061650 8FBF00A4 */ lw $ra, 0xa4($sp) +/* 062254 80061654 240D000C */ li $t5, 12 +/* 062258 80061658 1440000B */ bnez $v0, .L80061688 +/* 06225C 8006165C 00409025 */ move $s2, $v0 +/* 062260 80061660 8FA400AC */ lw $a0, 0xac($sp) +/* 062264 80061664 0C01C450 */ jal func_80071140 +/* 062268 80061668 00000000 */ nop +/* 06226C 8006166C 8FA400A0 */ lw $a0, 0xa0($sp) +/* 062270 80061670 0C01C450 */ jal func_80071140 +/* 062274 80061674 00000000 */ nop +/* 062278 80061678 0C01C450 */ jal func_80071140 +/* 06227C 8006167C 02E02025 */ move $a0, $s7 +/* 062280 80061680 100000CE */ b .L800619BC +/* 062284 80061684 24020001 */ li $v0, 1 +.L80061688: +/* 062288 80061688 00003825 */ move $a3, $zero +/* 06228C 8006168C 1AC0000C */ blez $s6, .L800616C0 +/* 062290 80061690 00008825 */ move $s1, $zero +.L80061694: +/* 062294 80061694 00ED0019 */ multu $a3, $t5 +/* 062298 80061698 24E70001 */ addiu $a3, $a3, 1 +/* 06229C 8006169C 00077C00 */ sll $t7, $a3, 0x10 +/* 0622A0 800616A0 000F3C03 */ sra $a3, $t7, 0x10 +/* 0622A4 800616A4 00F6082A */ slt $at, $a3, $s6 +/* 0622A8 800616A8 0000C812 */ mflo $t9 +/* 0622AC 800616AC 00591821 */ addu $v1, $v0, $t9 +/* 0622B0 800616B0 E4740000 */ swc1 $f20, ($v1) +/* 0622B4 800616B4 E4740004 */ swc1 $f20, 4($v1) +/* 0622B8 800616B8 1420FFF6 */ bnez $at, .L80061694 +/* 0622BC 800616BC E4740008 */ swc1 $f20, 8($v1) +.L800616C0: +/* 0622C0 800616C0 8FB800B8 */ lw $t8, 0xb8($sp) +/* 0622C4 800616C4 00000000 */ nop +/* 0622C8 800616C8 87030028 */ lh $v1, 0x28($t8) +/* 0622CC 800616CC 00000000 */ nop +/* 0622D0 800616D0 1860004F */ blez $v1, .L80061810 +/* 0622D4 800616D4 00000000 */ nop +.L800616D8: +/* 0622D8 800616D8 022D0019 */ multu $s1, $t5 +/* 0622DC 800616DC 240100FF */ li $at, 255 +/* 0622E0 800616E0 26310001 */ addiu $s1, $s1, 1 +/* 0622E4 800616E4 0000C812 */ mflo $t9 +/* 0622E8 800616E8 03F94021 */ addu $t0, $ra, $t9 +/* 0622EC 800616EC 910F0006 */ lbu $t7, 6($t0) +/* 0622F0 800616F0 00000000 */ nop +/* 0622F4 800616F4 15E10006 */ bne $t7, $at, .L80061710 +/* 0622F8 800616F8 00000000 */ nop +/* 0622FC 800616FC 8D0E0008 */ lw $t6, 8($t0) +/* 062300 80061700 00000000 */ nop +/* 062304 80061704 31D88000 */ andi $t8, $t6, 0x8000 +/* 062308 80061708 1300003D */ beqz $t8, .L80061800 +/* 06230C 8006170C 0011C400 */ sll $t8, $s1, 0x10 +.L80061710: +/* 062310 80061710 85150004 */ lh $s5, 4($t0) +/* 062314 80061714 85190010 */ lh $t9, 0x10($t0) +/* 062318 80061718 85140002 */ lh $s4, 2($t0) +/* 06231C 8006171C 02B9082A */ slt $at, $s5, $t9 +/* 062320 80061720 10200037 */ beqz $at, .L80061800 +/* 062324 80061724 0011C400 */ sll $t8, $s1, 0x10 +/* 062328 80061728 8FA900B0 */ lw $t1, 0xb0($sp) +/* 06232C 8006172C 8FA500AC */ lw $a1, 0xac($sp) +/* 062330 80061730 00000000 */ nop +/* 062334 80061734 00157900 */ sll $t7, $s5, 4 +.L80061738: +/* 062338 80061738 012F2021 */ addu $a0, $t1, $t7 +/* 06233C 8006173C 00003825 */ move $a3, $zero +/* 062340 80061740 00877021 */ addu $t6, $a0, $a3 +.L80061744: +/* 062344 80061744 91D80001 */ lbu $t8, 1($t6) +/* 062348 80061748 24E70001 */ addiu $a3, $a3, 1 +/* 06234C 8006174C 03143021 */ addu $a2, $t8, $s4 +/* 062350 80061750 0006CC00 */ sll $t9, $a2, 0x10 +/* 062354 80061754 00197C03 */ sra $t7, $t9, 0x10 +/* 062358 80061758 000F7040 */ sll $t6, $t7, 1 +/* 06235C 8006175C 02EEC021 */ addu $t8, $s7, $t6 +/* 062360 80061760 87060000 */ lh $a2, ($t8) +/* 062364 80061764 00077400 */ sll $t6, $a3, 0x10 +/* 062368 80061768 04C00016 */ bltz $a2, .L800617C4 +/* 06236C 8006176C 000E3C03 */ sra $a3, $t6, 0x10 +/* 062370 80061770 00CD0019 */ multu $a2, $t5 +/* 062374 80061774 0000C812 */ mflo $t9 +/* 062378 80061778 00591821 */ addu $v1, $v0, $t9 +/* 06237C 8006177C C4700000 */ lwc1 $f16, ($v1) +/* 062380 80061780 02AD0019 */ multu $s5, $t5 +/* 062384 80061784 C4720004 */ lwc1 $f18, 4($v1) +/* 062388 80061788 00007812 */ mflo $t7 +/* 06238C 8006178C 00AF8021 */ addu $s0, $a1, $t7 +/* 062390 80061790 C60A0000 */ lwc1 $f10, ($s0) +/* 062394 80061794 00000000 */ nop +/* 062398 80061798 460A8180 */ add.s $f6, $f16, $f10 +/* 06239C 8006179C C4700008 */ lwc1 $f16, 8($v1) +/* 0623A0 800617A0 E4660000 */ swc1 $f6, ($v1) +/* 0623A4 800617A4 C6040004 */ lwc1 $f4, 4($s0) +/* 0623A8 800617A8 00000000 */ nop +/* 0623AC 800617AC 46049200 */ add.s $f8, $f18, $f4 +/* 0623B0 800617B0 E4680004 */ swc1 $f8, 4($v1) +/* 0623B4 800617B4 C60A0008 */ lwc1 $f10, 8($s0) +/* 0623B8 800617B8 00000000 */ nop +/* 0623BC 800617BC 460A8180 */ add.s $f6, $f16, $f10 +/* 0623C0 800617C0 E4660008 */ swc1 $f6, 8($v1) +.L800617C4: +/* 0623C4 800617C4 28E10003 */ slti $at, $a3, 3 +/* 0623C8 800617C8 1420FFDE */ bnez $at, .L80061744 +/* 0623CC 800617CC 00877021 */ addu $t6, $a0, $a3 +/* 0623D0 800617D0 26B50001 */ addiu $s5, $s5, 1 +/* 0623D4 800617D4 85030010 */ lh $v1, 0x10($t0) +/* 0623D8 800617D8 0015CC00 */ sll $t9, $s5, 0x10 +/* 0623DC 800617DC 0019AC03 */ sra $s5, $t9, 0x10 +/* 0623E0 800617E0 02A3082A */ slt $at, $s5, $v1 +/* 0623E4 800617E4 1420FFD4 */ bnez $at, .L80061738 +/* 0623E8 800617E8 00157900 */ sll $t7, $s5, 4 +/* 0623EC 800617EC 8FAE00B8 */ lw $t6, 0xb8($sp) +/* 0623F0 800617F0 00000000 */ nop +/* 0623F4 800617F4 85C30028 */ lh $v1, 0x28($t6) +/* 0623F8 800617F8 00000000 */ nop +/* 0623FC 800617FC 0011C400 */ sll $t8, $s1, 0x10 +.L80061800: +/* 062400 80061800 00188C03 */ sra $s1, $t8, 0x10 +/* 062404 80061804 0223082A */ slt $at, $s1, $v1 +/* 062408 80061808 1420FFB3 */ bnez $at, .L800616D8 +/* 06240C 8006180C 00000000 */ nop +.L80061810: +/* 062410 80061810 1AC00027 */ blez $s6, .L800618B0 +/* 062414 80061814 00003825 */ move $a3, $zero +.L80061818: +/* 062418 80061818 00ED0019 */ multu $a3, $t5 +/* 06241C 8006181C 00007812 */ mflo $t7 +/* 062420 80061820 024F8021 */ addu $s0, $s2, $t7 +/* 062424 80061824 C6020000 */ lwc1 $f2, ($s0) +/* 062428 80061828 C60E0004 */ lwc1 $f14, 4($s0) +/* 06242C 8006182C 46021482 */ mul.s $f18, $f2, $f2 +/* 062430 80061830 C6000008 */ lwc1 $f0, 8($s0) +/* 062434 80061834 A7A70098 */ sh $a3, 0x98($sp) +/* 062438 80061838 460E7102 */ mul.s $f4, $f14, $f14 +/* 06243C 8006183C 00000000 */ nop +/* 062440 80061840 46000402 */ mul.s $f16, $f0, $f0 +/* 062444 80061844 46049200 */ add.s $f8, $f18, $f4 +/* 062448 80061848 0C0326B4 */ jal sqrtf +/* 06244C 8006184C 46088300 */ add.s $f12, $f16, $f8 +/* 062450 80061850 46140032 */ c.eq.s $f0, $f20 +/* 062454 80061854 87A70098 */ lh $a3, 0x98($sp) +/* 062458 80061858 4501000E */ bc1t .L80061894 +/* 06245C 8006185C 240D000C */ li $t5, 12 +/* 062460 80061860 3C013900 */ li $at, 0x39000000 # 0.000122 +/* 062464 80061864 44815000 */ mtc1 $at, $f10 +/* 062468 80061868 C6060000 */ lwc1 $f6, ($s0) +/* 06246C 8006186C 460A0082 */ mul.s $f2, $f0, $f10 +/* 062470 80061870 C6040004 */ lwc1 $f4, 4($s0) +/* 062474 80061874 C6080008 */ lwc1 $f8, 8($s0) +/* 062478 80061878 46023483 */ div.s $f18, $f6, $f2 +/* 06247C 8006187C 00000000 */ nop +/* 062480 80061880 46022403 */ div.s $f16, $f4, $f2 +/* 062484 80061884 E6120000 */ swc1 $f18, ($s0) +/* 062488 80061888 46024283 */ div.s $f10, $f8, $f2 +/* 06248C 8006188C E6100004 */ swc1 $f16, 4($s0) +/* 062490 80061890 E60A0008 */ swc1 $f10, 8($s0) +.L80061894: +/* 062494 80061894 24E70001 */ addiu $a3, $a3, 1 +/* 062498 80061898 00077400 */ sll $t6, $a3, 0x10 +/* 06249C 8006189C 000E3C03 */ sra $a3, $t6, 0x10 +/* 0624A0 800618A0 00F6082A */ slt $at, $a3, $s6 +/* 0624A4 800618A4 1420FFDC */ bnez $at, .L80061818 +/* 0624A8 800618A8 00000000 */ nop +/* 0624AC 800618AC 00003825 */ move $a3, $zero +.L800618B0: +/* 0624B0 800618B0 8FAA00B8 */ lw $t2, 0xb8($sp) +/* 0624B4 800618B4 8FA900A0 */ lw $t1, 0xa0($sp) +/* 0624B8 800618B8 85450024 */ lh $a1, 0x24($t2) +/* 0624BC 800618BC 00002025 */ move $a0, $zero +/* 0624C0 800618C0 18A00034 */ blez $a1, .L80061994 +/* 0624C4 800618C4 24080006 */ li $t0, 6 +/* 0624C8 800618C8 0007C840 */ sll $t9, $a3, 1 +.L800618CC: +/* 0624CC 800618CC 02F97821 */ addu $t7, $s7, $t9 +/* 0624D0 800618D0 85E60000 */ lh $a2, ($t7) +/* 0624D4 800618D4 24E70001 */ addiu $a3, $a3, 1 +/* 0624D8 800618D8 04C0002A */ bltz $a2, .L80061984 +/* 0624DC 800618DC 0007CC00 */ sll $t9, $a3, 0x10 +/* 0624E0 800618E0 00880019 */ multu $a0, $t0 +/* 0624E4 800618E4 4459F800 */ cfc1 $t9, $31 +/* 0624E8 800618E8 24840001 */ addiu $a0, $a0, 1 +/* 0624EC 800618EC 37210003 */ ori $at, $t9, 3 +/* 0624F0 800618F0 38210002 */ xori $at, $at, 2 +/* 0624F4 800618F4 44C1F800 */ ctc1 $at, $31 +/* 0624F8 800618F8 00007012 */ mflo $t6 +/* 0624FC 800618FC 012E1821 */ addu $v1, $t1, $t6 +/* 062500 80061900 00000000 */ nop +/* 062504 80061904 00CD0019 */ multu $a2, $t5 +/* 062508 80061908 0000C012 */ mflo $t8 +/* 06250C 8006190C 02581021 */ addu $v0, $s2, $t8 +/* 062510 80061910 C4460000 */ lwc1 $f6, ($v0) +/* 062514 80061914 00000000 */ nop +/* 062518 80061918 460034A4 */ cvt.w.s $f18, $f6 +/* 06251C 8006191C 44D9F800 */ ctc1 $t9, $31 +/* 062520 80061920 440F9000 */ mfc1 $t7, $f18 +/* 062524 80061924 00000000 */ nop +/* 062528 80061928 444EF800 */ cfc1 $t6, $31 +/* 06252C 8006192C A46F0000 */ sh $t7, ($v1) +/* 062530 80061930 35C10003 */ ori $at, $t6, 3 +/* 062534 80061934 38210002 */ xori $at, $at, 2 +/* 062538 80061938 44C1F800 */ ctc1 $at, $31 +/* 06253C 8006193C C4440004 */ lwc1 $f4, 4($v0) +/* 062540 80061940 37210003 */ ori $at, $t9, 3 +/* 062544 80061944 46002424 */ cvt.w.s $f16, $f4 +/* 062548 80061948 38210002 */ xori $at, $at, 2 +/* 06254C 8006194C 44188000 */ mfc1 $t8, $f16 +/* 062550 80061950 44CEF800 */ ctc1 $t6, $31 +/* 062554 80061954 A4780002 */ sh $t8, 2($v1) +/* 062558 80061958 C4480008 */ lwc1 $f8, 8($v0) +/* 06255C 8006195C 44C1F800 */ ctc1 $at, $31 +/* 062560 80061960 00047400 */ sll $t6, $a0, 0x10 +/* 062564 80061964 460042A4 */ cvt.w.s $f10, $f8 +/* 062568 80061968 000E2403 */ sra $a0, $t6, 0x10 +/* 06256C 8006196C 440F5000 */ mfc1 $t7, $f10 +/* 062570 80061970 44D9F800 */ ctc1 $t9, $31 +/* 062574 80061974 A46F0004 */ sh $t7, 4($v1) +/* 062578 80061978 85450024 */ lh $a1, 0x24($t2) +/* 06257C 8006197C 00000000 */ nop +/* 062580 80061980 0007CC00 */ sll $t9, $a3, 0x10 +.L80061984: +/* 062584 80061984 00193C03 */ sra $a3, $t9, 0x10 +/* 062588 80061988 00E5082A */ slt $at, $a3, $a1 +/* 06258C 8006198C 1420FFCF */ bnez $at, .L800618CC +/* 062590 80061990 0007C840 */ sll $t9, $a3, 1 +.L80061994: +/* 062594 80061994 8FA900A0 */ lw $t1, 0xa0($sp) +/* 062598 80061998 02E02025 */ move $a0, $s7 +/* 06259C 8006199C 0C01C450 */ jal func_80071140 +/* 0625A0 800619A0 AD490040 */ sw $t1, 0x40($t2) +/* 0625A4 800619A4 0C01C450 */ jal func_80071140 +/* 0625A8 800619A8 02402025 */ move $a0, $s2 +/* 0625AC 800619AC 8FA400AC */ lw $a0, 0xac($sp) +/* 0625B0 800619B0 0C01C450 */ jal func_80071140 +/* 0625B4 800619B4 00000000 */ nop +.L800619B8: +/* 0625B8 800619B8 00001025 */ move $v0, $zero +.L800619BC: +/* 0625BC 800619BC 8FBF0044 */ lw $ra, 0x44($sp) +/* 0625C0 800619C0 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 0625C4 800619C4 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 0625C8 800619C8 8FB00020 */ lw $s0, 0x20($sp) +/* 0625CC 800619CC 8FB10024 */ lw $s1, 0x24($sp) +/* 0625D0 800619D0 8FB20028 */ lw $s2, 0x28($sp) +/* 0625D4 800619D4 8FB3002C */ lw $s3, 0x2c($sp) +/* 0625D8 800619D8 8FB40030 */ lw $s4, 0x30($sp) +/* 0625DC 800619DC 8FB50034 */ lw $s5, 0x34($sp) +/* 0625E0 800619E0 8FB60038 */ lw $s6, 0x38($sp) +/* 0625E4 800619E4 8FB7003C */ lw $s7, 0x3c($sp) +/* 0625E8 800619E8 8FBE0040 */ lw $fp, 0x40($sp) +/* 0625EC 800619EC 03E00008 */ jr $ra +/* 0625F0 800619F0 27BD00B8 */ addiu $sp, $sp, 0xb8 + diff --git a/asm/non_matchings/unknown_05F690/func_800619F4.s b/asm/non_matchings/unknown_05F690/func_800619F4.s new file mode 100644 index 00000000..aa9d71f3 --- /dev/null +++ b/asm/non_matchings/unknown_05F690/func_800619F4.s @@ -0,0 +1,5 @@ +glabel func_800619F4 +/* 0625F4 800619F4 3C018012 */ lui $at, 0x8012 +/* 0625F8 800619F8 03E00008 */ jr $ra +/* 0625FC 800619FC AC24D640 */ sw $a0, -0x29c0($at) + diff --git a/asm/non_matchings/unknown_05F690/func_80061A00.s b/asm/non_matchings/unknown_05F690/func_80061A00.s new file mode 100644 index 00000000..c817ad66 --- /dev/null +++ b/asm/non_matchings/unknown_05F690/func_80061A00.s @@ -0,0 +1,142 @@ +glabel func_80061A00 +/* 062600 80061A00 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 062604 80061A04 3C0E8012 */ lui $t6, %hi(D_8011D638) # $t6, 0x8012 +/* 062608 80061A08 8DCED638 */ lw $t6, %lo(D_8011D638)($t6) +/* 06260C 80061A0C 00057840 */ sll $t7, $a1, 1 +/* 062610 80061A10 AFBF003C */ sw $ra, 0x3c($sp) +/* 062614 80061A14 AFBE0038 */ sw $fp, 0x38($sp) +/* 062618 80061A18 AFB70034 */ sw $s7, 0x34($sp) +/* 06261C 80061A1C AFB60030 */ sw $s6, 0x30($sp) +/* 062620 80061A20 AFB5002C */ sw $s5, 0x2c($sp) +/* 062624 80061A24 AFB40028 */ sw $s4, 0x28($sp) +/* 062628 80061A28 AFB30024 */ sw $s3, 0x24($sp) +/* 06262C 80061A2C AFB20020 */ sw $s2, 0x20($sp) +/* 062630 80061A30 AFB1001C */ sw $s1, 0x1c($sp) +/* 062634 80061A34 AFB00018 */ sw $s0, 0x18($sp) +/* 062638 80061A38 01CF1021 */ addu $v0, $t6, $t7 +/* 06263C 80061A3C 84500000 */ lh $s0, ($v0) +/* 062640 80061A40 84430002 */ lh $v1, 2($v0) +/* 062644 80061A44 0080A825 */ move $s5, $a0 +/* 062648 80061A48 16030004 */ bne $s0, $v1, .L80061A5C +/* 06264C 80061A4C 3C028012 */ lui $v0, %hi(D_8011D640) # $v0, 0x8012 +/* 062650 80061A50 A4800048 */ sh $zero, 0x48($a0) +/* 062654 80061A54 10000061 */ b .L80061BDC +/* 062658 80061A58 00001025 */ move $v0, $zero +.L80061A5C: +/* 06265C 80061A5C 8C42D640 */ lw $v0, %lo(D_8011D640)($v0) +/* 062660 80061A60 3C05FF00 */ lui $a1, (0xFF0000FF >> 16) # lui $a1, 0xff00 +/* 062664 80061A64 10400006 */ beqz $v0, .L80061A80 +/* 062668 80061A68 34A500FF */ ori $a1, (0xFF0000FF & 0xFFFF) # ori $a1, $a1, 0xff +/* 06266C 80061A6C 02022021 */ addu $a0, $s0, $v0 +/* 062670 80061A70 0083082A */ slt $at, $a0, $v1 +/* 062674 80061A74 10200003 */ beqz $at, .L80061A84 +/* 062678 80061A78 0070C023 */ subu $t8, $v1, $s0 +/* 06267C 80061A7C 00801825 */ move $v1, $a0 +.L80061A80: +/* 062680 80061A80 0070C023 */ subu $t8, $v1, $s0 +.L80061A84: +/* 062684 80061A84 A6B80048 */ sh $t8, 0x48($s5) +/* 062688 80061A88 86A40048 */ lh $a0, 0x48($s5) +/* 06268C 80061A8C AFA30040 */ sw $v1, 0x40($sp) +/* 062690 80061A90 0004C8C0 */ sll $t9, $a0, 3 +/* 062694 80061A94 0C01C344 */ jal func_80070D10 +/* 062698 80061A98 03202025 */ move $a0, $t9 +/* 06269C 80061A9C 14400003 */ bnez $v0, .L80061AAC +/* 0626A0 80061AA0 AEA20044 */ sw $v0, 0x44($s5) +/* 0626A4 80061AA4 1000004D */ b .L80061BDC +/* 0626A8 80061AA8 24020001 */ li $v0, 1 +.L80061AAC: +/* 0626AC 80061AAC 0000F025 */ move $fp, $zero +/* 0626B0 80061AB0 0010A080 */ sll $s4, $s0, 2 +/* 0626B4 80061AB4 00008825 */ move $s1, $zero +.L80061AB8: +/* 0626B8 80061AB8 3C088012 */ lui $t0, %hi(D_8011D63C) # $t0, 0x8012 +/* 0626BC 80061ABC 8D08D63C */ lw $t0, %lo(D_8011D63C)($t0) +/* 0626C0 80061AC0 24040020 */ li $a0, 32 +/* 0626C4 80061AC4 01141021 */ addu $v0, $t0, $s4 +/* 0626C8 80061AC8 8C520000 */ lw $s2, ($v0) +/* 0626CC 80061ACC 8C490004 */ lw $t1, 4($v0) +/* 0626D0 80061AD0 02402825 */ move $a1, $s2 +/* 0626D4 80061AD4 0C031877 */ jal func_800C61DC +/* 0626D8 80061AD8 01329823 */ subu $s3, $t1, $s2 +/* 0626DC 80061ADC 24440080 */ addiu $a0, $v0, 0x80 +/* 0626E0 80061AE0 3C05FF00 */ lui $a1, (0xFF0000FF >> 16) # lui $a1, 0xff00 +/* 0626E4 80061AE4 0080B025 */ move $s6, $a0 +/* 0626E8 80061AE8 0C01C344 */ jal func_80070D10 +/* 0626EC 80061AEC 34A500FF */ ori $a1, (0xFF0000FF & 0xFFFF) # ori $a1, $a1, 0xff +/* 0626F0 80061AF0 8EAA0044 */ lw $t2, 0x44($s5) +/* 0626F4 80061AF4 02403025 */ move $a2, $s2 +/* 0626F8 80061AF8 01515821 */ addu $t3, $t2, $s1 +/* 0626FC 80061AFC AD620000 */ sw $v0, ($t3) +/* 062700 80061B00 8EA40044 */ lw $a0, 0x44($s5) +/* 062704 80061B04 8FB70040 */ lw $s7, 0x40($sp) +/* 062708 80061B08 00916021 */ addu $t4, $a0, $s1 +/* 06270C 80061B0C 8D830000 */ lw $v1, ($t4) +/* 062710 80061B10 02603825 */ move $a3, $s3 +/* 062714 80061B14 14600014 */ bnez $v1, .L80061B68 +/* 062718 80061B18 00767821 */ addu $t7, $v1, $s6 +/* 06271C 80061B1C 1BC0000D */ blez $fp, .L80061B54 +/* 062720 80061B20 00008025 */ move $s0, $zero +/* 062724 80061B24 00008825 */ move $s1, $zero +.L80061B28: +/* 062728 80061B28 8EAD0044 */ lw $t5, 0x44($s5) +/* 06272C 80061B2C 00000000 */ nop +/* 062730 80061B30 01B17021 */ addu $t6, $t5, $s1 +/* 062734 80061B34 8DC40000 */ lw $a0, ($t6) +/* 062738 80061B38 0C01C450 */ jal func_80071140 +/* 06273C 80061B3C 00000000 */ nop +/* 062740 80061B40 26100001 */ addiu $s0, $s0, 1 +/* 062744 80061B44 161EFFF8 */ bne $s0, $fp, .L80061B28 +/* 062748 80061B48 26310008 */ addiu $s1, $s1, 8 +/* 06274C 80061B4C 8EA40044 */ lw $a0, 0x44($s5) +/* 062750 80061B50 00000000 */ nop +.L80061B54: +/* 062754 80061B54 0C01C450 */ jal func_80071140 +/* 062758 80061B58 00000000 */ nop +/* 06275C 80061B5C AEA00044 */ sw $zero, 0x44($s5) +/* 062760 80061B60 1000001E */ b .L80061BDC +/* 062764 80061B64 24020001 */ li $v0, 1 +.L80061B68: +/* 062768 80061B68 01F38023 */ subu $s0, $t7, $s3 +/* 06276C 80061B6C 0017C080 */ sll $t8, $s7, 2 +/* 062770 80061B70 0300B825 */ move $s7, $t8 +/* 062774 80061B74 02002825 */ move $a1, $s0 +/* 062778 80061B78 0C01DB9A */ jal func_80076E68 +/* 06277C 80061B7C 24040020 */ li $a0, 32 +/* 062780 80061B80 8EB90044 */ lw $t9, 0x44($s5) +/* 062784 80061B84 02002025 */ move $a0, $s0 +/* 062788 80061B88 03314021 */ addu $t0, $t9, $s1 +/* 06278C 80061B8C 8D050000 */ lw $a1, ($t0) +/* 062790 80061B90 0C031886 */ jal func_800C6218 +/* 062794 80061B94 00000000 */ nop +/* 062798 80061B98 8EA90044 */ lw $t1, 0x44($s5) +/* 06279C 80061B9C 26940004 */ addiu $s4, $s4, 4 +/* 0627A0 80061BA0 01311821 */ addu $v1, $t1, $s1 +/* 0627A4 80061BA4 8C640000 */ lw $a0, ($v1) +/* 0627A8 80061BA8 0297082A */ slt $at, $s4, $s7 +/* 0627AC 80061BAC 8C8A0000 */ lw $t2, ($a0) +/* 0627B0 80061BB0 27DE0001 */ addiu $fp, $fp, 1 +/* 0627B4 80061BB4 AC6A0004 */ sw $t2, 4($v1) +/* 0627B8 80061BB8 8EAB0044 */ lw $t3, 0x44($s5) +/* 0627BC 80061BBC 00000000 */ nop +/* 0627C0 80061BC0 01711821 */ addu $v1, $t3, $s1 +/* 0627C4 80061BC4 8C6C0000 */ lw $t4, ($v1) +/* 0627C8 80061BC8 26310008 */ addiu $s1, $s1, 8 +/* 0627CC 80061BCC 258D0004 */ addiu $t5, $t4, 4 +/* 0627D0 80061BD0 1420FFB9 */ bnez $at, .L80061AB8 +/* 0627D4 80061BD4 AC6D0000 */ sw $t5, ($v1) +/* 0627D8 80061BD8 00001025 */ move $v0, $zero +.L80061BDC: +/* 0627DC 80061BDC 8FBF003C */ lw $ra, 0x3c($sp) +/* 0627E0 80061BE0 8FB00018 */ lw $s0, 0x18($sp) +/* 0627E4 80061BE4 8FB1001C */ lw $s1, 0x1c($sp) +/* 0627E8 80061BE8 8FB20020 */ lw $s2, 0x20($sp) +/* 0627EC 80061BEC 8FB30024 */ lw $s3, 0x24($sp) +/* 0627F0 80061BF0 8FB40028 */ lw $s4, 0x28($sp) +/* 0627F4 80061BF4 8FB5002C */ lw $s5, 0x2c($sp) +/* 0627F8 80061BF8 8FB60030 */ lw $s6, 0x30($sp) +/* 0627FC 80061BFC 8FB70034 */ lw $s7, 0x34($sp) +/* 062800 80061C00 8FBE0038 */ lw $fp, 0x38($sp) +/* 062804 80061C04 03E00008 */ jr $ra +/* 062808 80061C08 27BD0048 */ addiu $sp, $sp, 0x48 + diff --git a/asm/non_matchings/unknown_05F690/func_80061C0C.s b/asm/non_matchings/unknown_05F690/func_80061C0C.s new file mode 100644 index 00000000..3a734a0d --- /dev/null +++ b/asm/non_matchings/unknown_05F690/func_80061C0C.s @@ -0,0 +1,83 @@ +glabel func_80061C0C +/* 06280C 80061C0C 8082003A */ lb $v0, 0x3a($a0) +/* 062810 80061C10 00000000 */ nop +/* 062814 80061C14 04410004 */ bgez $v0, .L80061C28 +/* 062818 80061C18 00000000 */ nop +/* 06281C 80061C1C A080003A */ sb $zero, 0x3a($a0) +/* 062820 80061C20 8082003A */ lb $v0, 0x3a($a0) +/* 062824 80061C24 00000000 */ nop +.L80061C28: +/* 062828 80061C28 8C8E0040 */ lw $t6, 0x40($a0) +/* 06282C 80061C2C 00000000 */ nop +/* 062830 80061C30 81C30055 */ lb $v1, 0x55($t6) +/* 062834 80061C34 00000000 */ nop +/* 062838 80061C38 2463FFFF */ addiu $v1, $v1, -1 +/* 06283C 80061C3C 0062082A */ slt $at, $v1, $v0 +/* 062840 80061C40 10200004 */ beqz $at, .L80061C54 +/* 062844 80061C44 00000000 */ nop +/* 062848 80061C48 A083003A */ sb $v1, 0x3a($a0) +/* 06284C 80061C4C 8082003A */ lb $v0, 0x3a($a0) +/* 062850 80061C50 00000000 */ nop +.L80061C54: +/* 062854 80061C54 8C8F0068 */ lw $t7, 0x68($a0) +/* 062858 80061C58 0002C080 */ sll $t8, $v0, 2 +/* 06285C 80061C5C 01F8C821 */ addu $t9, $t7, $t8 +/* 062860 80061C60 8F250000 */ lw $a1, ($t9) +/* 062864 80061C64 00000000 */ nop +/* 062868 80061C68 8CA60000 */ lw $a2, ($a1) +/* 06286C 80061C6C 00000000 */ nop +/* 062870 80061C70 8CC80044 */ lw $t0, 0x44($a2) +/* 062874 80061C74 00000000 */ nop +/* 062878 80061C78 11000029 */ beqz $t0, .L80061D20 +/* 06287C 80061C7C 00000000 */ nop +/* 062880 80061C80 8082003B */ lb $v0, 0x3b($a0) +/* 062884 80061C84 2418FFFF */ li $t8, -1 +/* 062888 80061C88 04410004 */ bgez $v0, .L80061C9C +/* 06288C 80061C8C 00000000 */ nop +/* 062890 80061C90 A080003B */ sb $zero, 0x3b($a0) +/* 062894 80061C94 8082003B */ lb $v0, 0x3b($a0) +/* 062898 80061C98 00000000 */ nop +.L80061C9C: +/* 06289C 80061C9C 84C30048 */ lh $v1, 0x48($a2) +/* 0628A0 80061CA0 00000000 */ nop +/* 0628A4 80061CA4 0043082A */ slt $at, $v0, $v1 +/* 0628A8 80061CA8 14200004 */ bnez $at, .L80061CBC +/* 0628AC 80061CAC 2469FFFF */ addiu $t1, $v1, -1 +/* 0628B0 80061CB0 A089003B */ sb $t1, 0x3b($a0) +/* 0628B4 80061CB4 84C30048 */ lh $v1, 0x48($a2) +/* 0628B8 80061CB8 00000000 */ nop +.L80061CBC: +/* 0628BC 80061CBC 18600009 */ blez $v1, .L80061CE4 +/* 0628C0 80061CC0 00001825 */ move $v1, $zero +/* 0628C4 80061CC4 808B003B */ lb $t3, 0x3b($a0) +/* 0628C8 80061CC8 8CCA0044 */ lw $t2, 0x44($a2) +/* 0628CC 80061CCC 000B60C0 */ sll $t4, $t3, 3 +/* 0628D0 80061CD0 014C6821 */ addu $t5, $t2, $t4 +/* 0628D4 80061CD4 8DA30004 */ lw $v1, 4($t5) +/* 0628D8 80061CD8 10000002 */ b .L80061CE4 +/* 0628DC 80061CDC 2463FFFE */ addiu $v1, $v1, -2 +/* 0628E0 80061CE0 00001825 */ move $v1, $zero +.L80061CE4: +/* 0628E4 80061CE4 84820018 */ lh $v0, 0x18($a0) +/* 0628E8 80061CE8 00000000 */ nop +/* 0628EC 80061CEC 00027103 */ sra $t6, $v0, 4 +/* 0628F0 80061CF0 05C10006 */ bgez $t6, .L80061D0C +/* 0628F4 80061CF4 01C01025 */ move $v0, $t6 +/* 0628F8 80061CF8 A4830018 */ sh $v1, 0x18($a0) +/* 0628FC 80061CFC 84820018 */ lh $v0, 0x18($a0) +/* 062900 80061D00 00000000 */ nop +/* 062904 80061D04 00027903 */ sra $t7, $v0, 4 +/* 062908 80061D08 01E01025 */ move $v0, $t7 +.L80061D0C: +/* 06290C 80061D0C 0062082A */ slt $at, $v1, $v0 +/* 062910 80061D10 10200003 */ beqz $at, .L80061D20 +/* 062914 80061D14 00000000 */ nop +/* 062918 80061D18 A4800018 */ sh $zero, 0x18($a0) +/* 06291C 80061D1C A4B80010 */ sh $t8, 0x10($a1) +.L80061D20: +/* 062920 80061D20 03E00008 */ jr $ra +/* 062924 80061D24 00000000 */ nop + +/* 062928 80061D28 00000000 */ nop +/* 06292C 80061D2C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_061D30/D_80062408.s b/asm/non_matchings/unknown_061D30/D_80062408.s new file mode 100644 index 00000000..daa0ec9a --- /dev/null +++ b/asm/non_matchings/unknown_061D30/D_80062408.s @@ -0,0 +1,388 @@ +glabel D_80062408 +/* 063008 80062408 27BDFF80 */ addiu $sp, $sp, -0x80 +/* 06300C 8006240C AFBE0038 */ sw $fp, 0x38($sp) +/* 063010 80062410 AFB70034 */ sw $s7, 0x34($sp) +/* 063014 80062414 AFB60030 */ sw $s6, 0x30($sp) +/* 063018 80062418 AFB5002C */ sw $s5, 0x2c($sp) +/* 06301C 8006241C AFB20020 */ sw $s2, 0x20($sp) +/* 063020 80062420 248E0038 */ addiu $t6, $a0, 0x38 +/* 063024 80062424 00809025 */ move $s2, $a0 +/* 063028 80062428 AFBF003C */ sw $ra, 0x3c($sp) +/* 06302C 8006242C AFB40028 */ sw $s4, 0x28($sp) +/* 063030 80062430 AFB30024 */ sw $s3, 0x24($sp) +/* 063034 80062434 AFB1001C */ sw $s1, 0x1c($sp) +/* 063038 80062438 AFB00018 */ sw $s0, 0x18($sp) +/* 06303C 8006243C AFAE0048 */ sw $t6, 0x48($sp) +/* 063040 80062440 24150014 */ li $s5, 20 +/* 063044 80062444 2416007F */ li $s6, 127 +/* 063048 80062448 24970048 */ addiu $s7, $a0, 0x48 +/* 06304C 8006244C 27BE006C */ addiu $fp, $sp, 0x6c +.L80062450: +/* 063050 80062450 964F0038 */ lhu $t7, 0x38($s2) +/* 063054 80062454 00000000 */ nop +/* 063058 80062458 2DE10018 */ sltiu $at, $t7, 0x18 +/* 06305C 8006245C 10200146 */ beqz $at, .L80062978 +/* 063060 80062460 000F7880 */ sll $t7, $t7, 2 +/* 063064 80062464 3C01800E */ lui $at, 0x800e +/* 063068 80062468 002F0821 */ addu $at, $at, $t7 +/* 06306C 8006246C 8C2F6C30 */ lw $t7, 0x6c30($at) +/* 063070 80062470 00000000 */ nop +/* 063074 80062474 01E00008 */ jr $t7 +/* 063078 80062478 00000000 */ nop +/* 06307C 8006247C 0C018A8F */ jal func_80062A3C +/* 063080 80062480 02402025 */ move $a0, $s2 +/* 063084 80062484 1000013D */ b .L8006297C +/* 063088 80062488 8FA50048 */ lw $a1, 0x48($sp) +/* 06308C 8006248C 24180009 */ li $t8, 9 +/* 063090 80062490 A7B8006C */ sh $t8, 0x6c($sp) +/* 063094 80062494 8E46005C */ lw $a2, 0x5c($s2) +/* 063098 80062498 02E02025 */ move $a0, $s7 +/* 06309C 8006249C 0C03246B */ jal func_800C91AC +/* 0630A0 800624A0 03C02825 */ move $a1, $fp +/* 0630A4 800624A4 10000135 */ b .L8006297C +/* 0630A8 800624A8 8FA50048 */ lw $a1, 0x48($sp) +/* 0630AC 800624AC 8E50003C */ lw $s0, 0x3c($s2) +/* 0630B0 800624B0 8E440014 */ lw $a0, 0x14($s2) +/* 0630B4 800624B4 0C03262C */ jal func_800C98B0 +/* 0630B8 800624B8 02002825 */ move $a1, $s0 +/* 0630BC 800624BC 8E440014 */ lw $a0, 0x14($s2) +/* 0630C0 800624C0 0C03264C */ jal func_800C9930 +/* 0630C4 800624C4 02002825 */ move $a1, $s0 +/* 0630C8 800624C8 8E110010 */ lw $s1, 0x10($s0) +/* 0630CC 800624CC 02402025 */ move $a0, $s2 +/* 0630D0 800624D0 92390037 */ lbu $t9, 0x37($s1) +/* 0630D4 800624D4 00000000 */ nop +/* 0630D8 800624D8 13200003 */ beqz $t9, .L800624E8 +/* 0630DC 800624DC 00000000 */ nop +/* 0630E0 800624E0 0C002BBF */ jal func_8000AEFC +/* 0630E4 800624E4 02202825 */ move $a1, $s1 +.L800624E8: +/* 0630E8 800624E8 02402025 */ move $a0, $s2 +/* 0630EC 800624EC 0C0029F1 */ jal func_8000A7C4 +/* 0630F0 800624F0 02002825 */ move $a1, $s0 +/* 0630F4 800624F4 10000121 */ b .L8006297C +/* 0630F8 800624F8 8FA50048 */ lw $a1, 0x48($sp) +/* 0630FC 800624FC 8E50003C */ lw $s0, 0x3c($s2) +/* 063100 80062500 24090001 */ li $t1, 1 +/* 063104 80062504 8E110010 */ lw $s1, 0x10($s0) +/* 063108 80062508 00000000 */ nop +/* 06310C 8006250C 92280034 */ lbu $t0, 0x34($s1) +/* 063110 80062510 02202025 */ move $a0, $s1 +/* 063114 80062514 15000002 */ bnez $t0, .L80062520 +/* 063118 80062518 00000000 */ nop +/* 06311C 8006251C A2290034 */ sb $t1, 0x34($s1) +.L80062520: +/* 063120 80062520 8E530040 */ lw $s3, 0x40($s2) +/* 063124 80062524 8E4A001C */ lw $t2, 0x1c($s2) +/* 063128 80062528 02402825 */ move $a1, $s2 +/* 06312C 8006252C 01535821 */ addu $t3, $t2, $s3 +/* 063130 80062530 AE2B0024 */ sw $t3, 0x24($s1) +/* 063134 80062534 924C0044 */ lbu $t4, 0x44($s2) +/* 063138 80062538 0C002A7E */ jal func_8000A9F8 +/* 06313C 8006253C A22C0030 */ sb $t4, 0x30($s1) +/* 063140 80062540 00023400 */ sll $a2, $v0, 0x10 +/* 063144 80062544 00066C03 */ sra $t5, $a2, 0x10 +/* 063148 80062548 8E440014 */ lw $a0, 0x14($s2) +/* 06314C 8006254C 01A03025 */ move $a2, $t5 +/* 063150 80062550 02002825 */ move $a1, $s0 +/* 063154 80062554 0C032594 */ jal func_800C9650 +/* 063158 80062558 02603825 */ move $a3, $s3 +/* 06315C 8006255C 10000107 */ b .L8006297C +/* 063160 80062560 8FA50048 */ lw $a1, 0x48($sp) +/* 063164 80062564 8E540040 */ lw $s4, 0x40($s2) +/* 063168 80062568 8E590078 */ lw $t9, 0x78($s2) +/* 06316C 8006256C 8E51003C */ lw $s1, 0x3c($s2) +/* 063170 80062570 27A50058 */ addiu $a1, $sp, 0x58 +/* 063174 80062574 0320F809 */ jalr $t9 +/* 063178 80062578 02802025 */ move $a0, $s4 +/* 06317C 8006257C 444EF800 */ cfc1 $t6, $31 +/* 063180 80062580 240F0001 */ li $t7, 1 +/* 063184 80062584 44CFF800 */ ctc1 $t7, $31 +/* 063188 80062588 C7A40058 */ lwc1 $f4, 0x58($sp) +/* 06318C 8006258C 00409825 */ move $s3, $v0 +/* 063190 80062590 460021A4 */ cvt.w.s $f6, $f4 +/* 063194 80062594 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 063198 80062598 444FF800 */ cfc1 $t7, $31 +/* 06319C 8006259C 02202025 */ move $a0, $s1 +/* 0631A0 800625A0 31EF0078 */ andi $t7, $t7, 0x78 +/* 0631A4 800625A4 11E00012 */ beqz $t7, .L800625F0 +/* 0631A8 800625A8 02402825 */ move $a1, $s2 +/* 0631AC 800625AC 44813000 */ mtc1 $at, $f6 +/* 0631B0 800625B0 240F0001 */ li $t7, 1 +/* 0631B4 800625B4 46062181 */ sub.s $f6, $f4, $f6 +/* 0631B8 800625B8 3C018000 */ lui $at, 0x8000 +/* 0631BC 800625BC 44CFF800 */ ctc1 $t7, $31 +/* 0631C0 800625C0 00000000 */ nop +/* 0631C4 800625C4 460031A4 */ cvt.w.s $f6, $f6 +/* 0631C8 800625C8 444FF800 */ cfc1 $t7, $31 +/* 0631CC 800625CC 00000000 */ nop +/* 0631D0 800625D0 31EF0078 */ andi $t7, $t7, 0x78 +/* 0631D4 800625D4 15E00004 */ bnez $t7, .L800625E8 +/* 0631D8 800625D8 00000000 */ nop +/* 0631DC 800625DC 440F3000 */ mfc1 $t7, $f6 +/* 0631E0 800625E0 10000007 */ b .L80062600 +/* 0631E4 800625E4 01E17825 */ or $t7, $t7, $at +.L800625E8: +/* 0631E8 800625E8 10000005 */ b .L80062600 +/* 0631EC 800625EC 240FFFFF */ li $t7, -1 +.L800625F0: +/* 0631F0 800625F0 440F3000 */ mfc1 $t7, $f6 +/* 0631F4 800625F4 00000000 */ nop +/* 0631F8 800625F8 05E0FFFB */ bltz $t7, .L800625E8 +/* 0631FC 800625FC 00000000 */ nop +.L80062600: +/* 063200 80062600 44CEF800 */ ctc1 $t6, $31 +/* 063204 80062604 0C002A7E */ jal func_8000A9F8 +/* 063208 80062608 A22F0036 */ sb $t7, 0x36($s1) +/* 06320C 8006260C 00028400 */ sll $s0, $v0, 0x10 +/* 063210 80062610 0010C403 */ sra $t8, $s0, 0x10 +/* 063214 80062614 8E45001C */ lw $a1, 0x1c($s2) +/* 063218 80062618 03008025 */ move $s0, $t8 +/* 06321C 8006261C 0C002AA2 */ jal func_8000AA88 +/* 063220 80062620 02202025 */ move $a0, $s1 +/* 063224 80062624 00103400 */ sll $a2, $s0, 0x10 +/* 063228 80062628 00064403 */ sra $t0, $a2, 0x10 +/* 06322C 8006262C 8E440014 */ lw $a0, 0x14($s2) +/* 063230 80062630 01003025 */ move $a2, $t0 +/* 063234 80062634 26250004 */ addiu $a1, $s1, 4 +/* 063238 80062638 0C032594 */ jal func_800C9650 +/* 06323C 8006263C 00403825 */ move $a3, $v0 +/* 063240 80062640 24090016 */ li $t1, 22 +/* 063244 80062644 A7A9006C */ sh $t1, 0x6c($sp) +/* 063248 80062648 AFB10070 */ sw $s1, 0x70($sp) +/* 06324C 8006264C AFB40074 */ sw $s4, 0x74($sp) +/* 063250 80062650 02E02025 */ move $a0, $s7 +/* 063254 80062654 03C02825 */ move $a1, $fp +/* 063258 80062658 0C03246B */ jal func_800C91AC +/* 06325C 8006265C 02603025 */ move $a2, $s3 +/* 063260 80062660 100000C6 */ b .L8006297C +/* 063264 80062664 8FA50048 */ lw $a1, 0x48($sp) +/* 063268 80062668 8E540040 */ lw $s4, 0x40($s2) +/* 06326C 8006266C 8E590078 */ lw $t9, 0x78($s2) +/* 063270 80062670 8E51003C */ lw $s1, 0x3c($s2) +/* 063274 80062674 92500044 */ lbu $s0, 0x44($s2) +/* 063278 80062678 27A50058 */ addiu $a1, $sp, 0x58 +/* 06327C 8006267C 0320F809 */ jalr $t9 +/* 063280 80062680 02802025 */ move $a0, $s4 +/* 063284 80062684 02150019 */ multu $s0, $s5 +/* 063288 80062688 C7A80058 */ lwc1 $f8, 0x58($sp) +/* 06328C 8006268C C6300028 */ lwc1 $f16, 0x28($s1) +/* 063290 80062690 E628002C */ swc1 $f8, 0x2c($s1) +/* 063294 80062694 C632002C */ lwc1 $f18, 0x2c($s1) +/* 063298 80062698 8E4A0060 */ lw $t2, 0x60($s2) +/* 06329C 8006269C 46128102 */ mul.s $f4, $f16, $f18 +/* 0632A0 800626A0 8E440014 */ lw $a0, 0x14($s2) +/* 0632A4 800626A4 00409825 */ move $s3, $v0 +/* 0632A8 800626A8 26250004 */ addiu $a1, $s1, 4 +/* 0632AC 800626AC 00005812 */ mflo $t3 +/* 0632B0 800626B0 014B6021 */ addu $t4, $t2, $t3 +/* 0632B4 800626B4 C58A000C */ lwc1 $f10, 0xc($t4) +/* 0632B8 800626B8 00000000 */ nop +/* 0632BC 800626BC 46045182 */ mul.s $f6, $f10, $f4 +/* 0632C0 800626C0 44063000 */ mfc1 $a2, $f6 +/* 0632C4 800626C4 0C0325E0 */ jal func_800C9780 +/* 0632C8 800626C8 00000000 */ nop +/* 0632CC 800626CC 240D0017 */ li $t5, 23 +/* 0632D0 800626D0 A7AD006C */ sh $t5, 0x6c($sp) +/* 0632D4 800626D4 AFB10070 */ sw $s1, 0x70($sp) +/* 0632D8 800626D8 AFB40074 */ sw $s4, 0x74($sp) +/* 0632DC 800626DC A3B00078 */ sb $s0, 0x78($sp) +/* 0632E0 800626E0 02E02025 */ move $a0, $s7 +/* 0632E4 800626E4 03C02825 */ move $a1, $fp +/* 0632E8 800626E8 0C03246B */ jal func_800C91AC +/* 0632EC 800626EC 02603025 */ move $a2, $s3 +/* 0632F0 800626F0 100000A2 */ b .L8006297C +/* 0632F4 800626F4 8FA50048 */ lw $a1, 0x48($sp) +/* 0632F8 800626F8 8FA50048 */ lw $a1, 0x48($sp) +/* 0632FC 800626FC 0C018AC0 */ jal func_80062B00 +/* 063300 80062700 02402025 */ move $a0, $s2 +/* 063304 80062704 1000009D */ b .L8006297C +/* 063308 80062708 8FA50048 */ lw $a1, 0x48($sp) +/* 06330C 8006270C 8FA50048 */ lw $a1, 0x48($sp) +/* 063310 80062710 0C018DFB */ jal func_800637EC +/* 063314 80062714 02402025 */ move $a0, $s2 +/* 063318 80062718 10000098 */ b .L8006297C +/* 06331C 8006271C 8FA50048 */ lw $a1, 0x48($sp) +/* 063320 80062720 864E003C */ lh $t6, 0x3c($s2) +/* 063324 80062724 8E510064 */ lw $s1, 0x64($s2) +/* 063328 80062728 A64E0032 */ sh $t6, 0x32($s2) +/* 06332C 8006272C 12200092 */ beqz $s1, .L80062978 +/* 063330 80062730 02202025 */ move $a0, $s1 +.L80062734: +/* 063334 80062734 0C002A7E */ jal func_8000A9F8 +/* 063338 80062738 02402825 */ move $a1, $s2 +/* 06333C 8006273C 00028400 */ sll $s0, $v0, 0x10 +/* 063340 80062740 00107C03 */ sra $t7, $s0, 0x10 +/* 063344 80062744 8E45001C */ lw $a1, 0x1c($s2) +/* 063348 80062748 01E08025 */ move $s0, $t7 +/* 06334C 8006274C 0C002AA2 */ jal func_8000AA88 +/* 063350 80062750 02202025 */ move $a0, $s1 +/* 063354 80062754 00103400 */ sll $a2, $s0, 0x10 +/* 063358 80062758 0006C403 */ sra $t8, $a2, 0x10 +/* 06335C 8006275C 8E440014 */ lw $a0, 0x14($s2) +/* 063360 80062760 03003025 */ move $a2, $t8 +/* 063364 80062764 26250004 */ addiu $a1, $s1, 4 +/* 063368 80062768 0C032594 */ jal func_800C9650 +/* 06336C 8006276C 00403825 */ move $a3, $v0 +/* 063370 80062770 8E310000 */ lw $s1, ($s1) +/* 063374 80062774 00000000 */ nop +/* 063378 80062778 1620FFEE */ bnez $s1, .L80062734 +/* 06337C 8006277C 02202025 */ move $a0, $s1 +/* 063380 80062780 1000007E */ b .L8006297C +/* 063384 80062784 8FA50048 */ lw $a1, 0x48($sp) +/* 063388 80062788 8E48002C */ lw $t0, 0x2c($s2) +/* 06338C 8006278C 24010001 */ li $at, 1 +/* 063390 80062790 11010079 */ beq $t0, $at, .L80062978 +/* 063394 80062794 24090001 */ li $t1, 1 +/* 063398 80062798 AE49002C */ sw $t1, 0x2c($s2) +/* 06339C 8006279C 0C018A73 */ jal func_800629CC +/* 0633A0 800627A0 02402025 */ move $a0, $s2 +/* 0633A4 800627A4 10000075 */ b .L8006297C +/* 0633A8 800627A8 8FA50048 */ lw $a1, 0x48($sp) +/* 0633AC 800627AC 8E59002C */ lw $t9, 0x2c($s2) +/* 0633B0 800627B0 24010002 */ li $at, 2 +/* 0633B4 800627B4 17210070 */ bne $t9, $at, .L80062978 +/* 0633B8 800627B8 340AFFFF */ li $t2, 65535 +/* 0633BC 800627BC 924B0034 */ lbu $t3, 0x34($s2) +/* 0633C0 800627C0 A64A0030 */ sh $t2, 0x30($s2) +/* 0633C4 800627C4 19600014 */ blez $t3, .L80062818 +/* 0633C8 800627C8 00008025 */ move $s0, $zero +.L800627CC: +/* 0633CC 800627CC 02150019 */ multu $s0, $s5 +/* 0633D0 800627D0 8E4C0060 */ lw $t4, 0x60($s2) +/* 0633D4 800627D4 26100001 */ addiu $s0, $s0, 1 +/* 0633D8 800627D8 321800FF */ andi $t8, $s0, 0xff +/* 0633DC 800627DC 03008025 */ move $s0, $t8 +/* 0633E0 800627E0 00001012 */ mflo $v0 +/* 0633E4 800627E4 01826821 */ addu $t5, $t4, $v0 +/* 0633E8 800627E8 A1B60010 */ sb $s6, 0x10($t5) +/* 0633EC 800627EC 8E4E0060 */ lw $t6, 0x60($s2) +/* 0633F0 800627F0 00000000 */ nop +/* 0633F4 800627F4 01C21821 */ addu $v1, $t6, $v0 +/* 0633F8 800627F8 906F0011 */ lbu $t7, 0x11($v1) +/* 0633FC 800627FC 00000000 */ nop +/* 063400 80062800 A06F0009 */ sb $t7, 9($v1) +/* 063404 80062804 92480034 */ lbu $t0, 0x34($s2) +/* 063408 80062808 00000000 */ nop +/* 06340C 8006280C 0308082A */ slt $at, $t8, $t0 +/* 063410 80062810 1420FFEE */ bnez $at, .L800627CC +/* 063414 80062814 00000000 */ nop +.L80062818: +/* 063418 80062818 8E510064 */ lw $s1, 0x64($s2) +/* 06341C 8006281C 00000000 */ nop +/* 063420 80062820 12200015 */ beqz $s1, .L80062878 +/* 063424 80062824 00000000 */ nop +.L80062828: +/* 063428 80062828 8E440014 */ lw $a0, 0x14($s2) +/* 06342C 8006282C 26300004 */ addiu $s0, $s1, 4 +/* 063430 80062830 0C03262C */ jal func_800C98B0 +/* 063434 80062834 02002825 */ move $a1, $s0 +/* 063438 80062838 8E440014 */ lw $a0, 0x14($s2) +/* 06343C 8006283C 0C03264C */ jal func_800C9930 +/* 063440 80062840 02002825 */ move $a1, $s0 +/* 063444 80062844 92290037 */ lbu $t1, 0x37($s1) +/* 063448 80062848 02402025 */ move $a0, $s2 +/* 06344C 8006284C 11200003 */ beqz $t1, .L8006285C +/* 063450 80062850 00000000 */ nop +/* 063454 80062854 0C002BBF */ jal func_8000AEFC +/* 063458 80062858 02202825 */ move $a1, $s1 +.L8006285C: +/* 06345C 8006285C 02402025 */ move $a0, $s2 +/* 063460 80062860 0C0029F1 */ jal func_8000A7C4 +/* 063464 80062864 02002825 */ move $a1, $s0 +/* 063468 80062868 8E510064 */ lw $s1, 0x64($s2) +/* 06346C 8006286C 00000000 */ nop +/* 063470 80062870 1620FFED */ bnez $s1, .L80062828 +/* 063474 80062874 00000000 */ nop +.L80062878: +/* 063478 80062878 1000003F */ b .L80062978 +/* 06347C 8006287C AE40002C */ sw $zero, 0x2c($s2) +/* 063480 80062880 8E59002C */ lw $t9, 0x2c($s2) +/* 063484 80062884 24010001 */ li $at, 1 +/* 063488 80062888 1721003B */ bne $t9, $at, .L80062978 +/* 06348C 8006288C 02E02025 */ move $a0, $s7 +/* 063490 80062890 0C032424 */ jal func_800C9090 +/* 063494 80062894 00002825 */ move $a1, $zero +/* 063498 80062898 02E02025 */ move $a0, $s7 +/* 06349C 8006289C 0C032424 */ jal func_800C9090 +/* 0634A0 800628A0 24050015 */ li $a1, 21 +/* 0634A4 800628A4 02E02025 */ move $a0, $s7 +/* 0634A8 800628A8 0C032424 */ jal func_800C9090 +/* 0634AC 800628AC 24050002 */ li $a1, 2 +/* 0634B0 800628B0 8E510064 */ lw $s1, 0x64($s2) +/* 0634B4 800628B4 00000000 */ nop +/* 0634B8 800628B8 12200010 */ beqz $s1, .L800628FC +/* 0634BC 800628BC 240A0002 */ li $t2, 2 +.L800628C0: +/* 0634C0 800628C0 26300004 */ addiu $s0, $s1, 4 +/* 0634C4 800628C4 02002825 */ move $a1, $s0 +/* 0634C8 800628C8 02402025 */ move $a0, $s2 +/* 0634CC 800628CC 0C002B0D */ jal func_8000AC34 +/* 0634D0 800628D0 3406C350 */ li $a2, 50000 +/* 0634D4 800628D4 10400004 */ beqz $v0, .L800628E8 +/* 0634D8 800628D8 02402025 */ move $a0, $s2 +/* 0634DC 800628DC 02002825 */ move $a1, $s0 +/* 0634E0 800628E0 0C002AC0 */ jal func_8000AB00 +/* 0634E4 800628E4 3406C350 */ li $a2, 50000 +.L800628E8: +/* 0634E8 800628E8 8E310000 */ lw $s1, ($s1) +/* 0634EC 800628EC 00000000 */ nop +/* 0634F0 800628F0 1620FFF3 */ bnez $s1, .L800628C0 +/* 0634F4 800628F4 00000000 */ nop +/* 0634F8 800628F8 240A0002 */ li $t2, 2 +.L800628FC: +/* 0634FC 800628FC AE4A002C */ sw $t2, 0x2c($s2) +/* 063500 80062900 240B0010 */ li $t3, 16 +/* 063504 80062904 3C067FFF */ lui $a2, (0x7FFFFFFF >> 16) # lui $a2, 0x7fff +/* 063508 80062908 A7AB006C */ sh $t3, 0x6c($sp) +/* 06350C 8006290C 34C6FFFF */ ori $a2, (0x7FFFFFFF & 0xFFFF) # ori $a2, $a2, 0xffff +/* 063510 80062910 02E02025 */ move $a0, $s7 +/* 063514 80062914 0C03246B */ jal func_800C91AC +/* 063518 80062918 03C02825 */ move $a1, $fp +/* 06351C 8006291C 10000017 */ b .L8006297C +/* 063520 80062920 8FA50048 */ lw $a1, 0x48($sp) +/* 063524 80062924 9250003C */ lbu $s0, 0x3c($s2) +/* 063528 80062928 8E4D0060 */ lw $t5, 0x60($s2) +/* 06352C 8006292C 02150019 */ multu $s0, $s5 +/* 063530 80062930 924C003D */ lbu $t4, 0x3d($s2) +/* 063534 80062934 00007012 */ mflo $t6 +/* 063538 80062938 01AE7821 */ addu $t7, $t5, $t6 +/* 06353C 8006293C 1000000E */ b .L80062978 +/* 063540 80062940 A1EC0008 */ sb $t4, 8($t7) +/* 063544 80062944 8E58003C */ lw $t8, 0x3c($s2) +/* 063548 80062948 8E450020 */ lw $a1, 0x20($s2) +/* 06354C 8006294C AE580018 */ sw $t8, 0x18($s2) +/* 063550 80062950 10A00009 */ beqz $a1, .L80062978 +/* 063554 80062954 00000000 */ nop +/* 063558 80062958 0C002B38 */ jal func_8000ACE0 +/* 06355C 8006295C 02402025 */ move $a0, $s2 +/* 063560 80062960 10000006 */ b .L8006297C +/* 063564 80062964 8FA50048 */ lw $a1, 0x48($sp) +/* 063568 80062968 8E45003C */ lw $a1, 0x3c($s2) +/* 06356C 8006296C 02402025 */ move $a0, $s2 +/* 063570 80062970 0C002B38 */ jal func_8000ACE0 +/* 063574 80062974 AE450020 */ sw $a1, 0x20($s2) +.L80062978: +/* 063578 80062978 8FA50048 */ lw $a1, 0x48($sp) +.L8006297C: +/* 06357C 8006297C 0C0324B4 */ jal func_800C92D0 +/* 063580 80062980 02E02025 */ move $a0, $s7 +/* 063584 80062984 1040FEB2 */ beqz $v0, .L80062450 +/* 063588 80062988 AE420028 */ sw $v0, 0x28($s2) +/* 06358C 8006298C 8E48001C */ lw $t0, 0x1c($s2) +/* 063590 80062990 00000000 */ nop +/* 063594 80062994 01024821 */ addu $t1, $t0, $v0 +/* 063598 80062998 AE49001C */ sw $t1, 0x1c($s2) +/* 06359C 8006299C 8FBF003C */ lw $ra, 0x3c($sp) +/* 0635A0 800629A0 8FBE0038 */ lw $fp, 0x38($sp) +/* 0635A4 800629A4 8FB70034 */ lw $s7, 0x34($sp) +/* 0635A8 800629A8 8FB60030 */ lw $s6, 0x30($sp) +/* 0635AC 800629AC 8FB5002C */ lw $s5, 0x2c($sp) +/* 0635B0 800629B0 8FB40028 */ lw $s4, 0x28($sp) +/* 0635B4 800629B4 8FB30024 */ lw $s3, 0x24($sp) +/* 0635B8 800629B8 8FB20020 */ lw $s2, 0x20($sp) +/* 0635BC 800629BC 8FB1001C */ lw $s1, 0x1c($sp) +/* 0635C0 800629C0 8FB00018 */ lw $s0, 0x18($sp) +/* 0635C4 800629C4 03E00008 */ jr $ra +/* 0635C8 800629C8 27BD0080 */ addiu $sp, $sp, 0x80 + diff --git a/asm/non_matchings/unknown_061D30/func_80061D30.s b/asm/non_matchings/unknown_061D30/func_80061D30.s new file mode 100644 index 00000000..c2069512 --- /dev/null +++ b/asm/non_matchings/unknown_061D30/func_80061D30.s @@ -0,0 +1,373 @@ +glabel func_80061D30 +/* 062930 80061D30 27BDFFF8 */ addiu $sp, $sp, -8 +/* 062934 80061D34 AFB10004 */ sw $s1, 4($sp) +/* 062938 80061D38 AFB00000 */ sw $s0, ($sp) +/* 06293C 80061D3C 8088003A */ lb $t0, 0x3a($a0) +/* 062940 80061D40 05030003 */ bgezl $t0, .L80061D50 +/* 062944 80061D44 8C890040 */ lw $t1, 0x40($a0) +/* 062948 80061D48 00004025 */ move $t0, $zero +/* 06294C 80061D4C 8C890040 */ lw $t1, 0x40($a0) +.L80061D50: +/* 062950 80061D50 812A0055 */ lb $t2, 0x55($t1) +/* 062954 80061D54 010A082A */ slt $at, $t0, $t2 +/* 062958 80061D58 54200003 */ bnezl $at, .L80061D68 +/* 06295C 80061D5C 8C890068 */ lw $t1, 0x68($a0) +/* 062960 80061D60 01404025 */ move $t0, $t2 +/* 062964 80061D64 8C890068 */ lw $t1, 0x68($a0) +.L80061D68: +/* 062968 80061D68 00084080 */ sll $t0, $t0, 2 +/* 06296C 80061D6C 01284820 */ add $t1, $t1, $t0 +/* 062970 80061D70 8D250000 */ lw $a1, ($t1) +/* 062974 80061D74 8CA60000 */ lw $a2, ($a1) +/* 062978 80061D78 8CC80044 */ lw $t0, 0x44($a2) +/* 06297C 80061D7C 55000004 */ bnezl $t0, .L80061D90 +/* 062980 80061D80 84990018 */ lh $t9, 0x18($a0) +/* 062984 80061D84 1000013D */ b .L8006227C +/* 062988 80061D88 00001025 */ move $v0, $zero +/* 06298C 80061D8C 84990018 */ lh $t9, 0x18($a0) +.L80061D90: +/* 062990 80061D90 84A80014 */ lh $t0, 0x14($a1) +/* 062994 80061D94 8087003B */ lb $a3, 0x3b($a0) +/* 062998 80061D98 17280006 */ bne $t9, $t0, .L80061DB4 +/* 06299C 80061D9C 00000000 */ nop +/* 0629A0 80061DA0 84A80010 */ lh $t0, 0x10($a1) +/* 0629A4 80061DA4 14E80003 */ bne $a3, $t0, .L80061DB4 +/* 0629A8 80061DA8 00000000 */ nop +/* 0629AC 80061DAC 10000133 */ b .L8006227C +/* 0629B0 80061DB0 00001025 */ move $v0, $zero +.L80061DB4: +/* 0629B4 80061DB4 04E30003 */ bgezl $a3, .L80061DC4 +/* 0629B8 80061DB8 84C80048 */ lh $t0, 0x48($a2) +/* 0629BC 80061DBC 00003825 */ move $a3, $zero +/* 0629C0 80061DC0 84C80048 */ lh $t0, 0x48($a2) +.L80061DC4: +/* 0629C4 80061DC4 00E8082A */ slt $at, $a3, $t0 +/* 0629C8 80061DC8 14200002 */ bnez $at, .L80061DD4 +/* 0629CC 80061DCC 00000000 */ nop +/* 0629D0 80061DD0 2507FFFF */ addiu $a3, $t0, -1 +.L80061DD4: +/* 0629D4 80061DD4 19000006 */ blez $t0, .L80061DF0 +/* 0629D8 80061DD8 00005025 */ move $t2, $zero +/* 0629DC 80061DDC 8CC90044 */ lw $t1, 0x44($a2) +/* 0629E0 80061DE0 000710C0 */ sll $v0, $a3, 3 +/* 0629E4 80061DE4 01224820 */ add $t1, $t1, $v0 +/* 0629E8 80061DE8 8D2A0004 */ lw $t2, 4($t1) +/* 0629EC 80061DEC 214AFFFE */ addi $t2, $t2, -2 +.L80061DF0: +/* 0629F0 80061DF0 00192102 */ srl $a0, $t9, 4 +/* 0629F4 80061DF4 04830004 */ bgezl $a0, .L80061E08 +/* 0629F8 80061DF8 0144082A */ slt $at, $t2, $a0 +/* 0629FC 80061DFC 0140C825 */ move $t9, $t2 +/* 062A00 80061E00 000A2102 */ srl $a0, $t2, 4 +/* 062A04 80061E04 0144082A */ slt $at, $t2, $a0 +.L80061E08: +/* 062A08 80061E08 50200006 */ beql $at, $zero, .L80061E24 +/* 062A0C 80061E0C 84A80010 */ lh $t0, 0x10($a1) +/* 062A10 80061E10 2408FFFF */ li $t0, -1 +/* 062A14 80061E14 0000C825 */ move $t9, $zero +/* 062A18 80061E18 00002025 */ move $a0, $zero +/* 062A1C 80061E1C A4A80010 */ sh $t0, 0x10($a1) +/* 062A20 80061E20 84A80010 */ lh $t0, 0x10($a1) +.L80061E24: +/* 062A24 80061E24 8CB1000C */ lw $s1, 0xc($a1) +/* 062A28 80061E28 50E80004 */ beql $a3, $t0, .L80061E3C +/* 062A2C 80061E2C 84B00012 */ lh $s0, 0x12($a1) +/* 062A30 80061E30 10000002 */ b .L80061E3C +/* 062A34 80061E34 2410FFFF */ li $s0, -1 +/* 062A38 80061E38 84B00012 */ lh $s0, 0x12($a1) +.L80061E3C: +/* 062A3C 80061E3C A4A70010 */ sh $a3, 0x10($a1) +/* 062A40 80061E40 A4B90014 */ sh $t9, 0x14($a1) +/* 062A44 80061E44 A4A40012 */ sh $a0, 0x12($a1) +/* 062A48 80061E48 10800006 */ beqz $a0, .L80061E64 +/* 062A4C 80061E4C 3338000F */ andi $t8, $t9, 0xf +/* 062A50 80061E50 2401FFFF */ li $at, -1 +/* 062A54 80061E54 52010004 */ beql $s0, $at, .L80061E68 +/* 062A58 80061E58 8CC20044 */ lw $v0, 0x44($a2) +/* 062A5C 80061E5C 10000026 */ b .L80061EF8 +/* 062A60 80061E60 84C3004A */ lh $v1, 0x4a($a2) +.L80061E64: +/* 062A64 80061E64 8CC20044 */ lw $v0, 0x44($a2) +.L80061E68: +/* 062A68 80061E68 000718C0 */ sll $v1, $a3, 3 +/* 062A6C 80061E6C 8CCD004C */ lw $t5, 0x4c($a2) +/* 062A70 80061E70 00431020 */ add $v0, $v0, $v1 +/* 062A74 80061E74 8C4E0000 */ lw $t6, ($v0) +/* 062A78 80061E78 84C20024 */ lh $v0, 0x24($a2) +/* 062A7C 80061E7C 8CCF0004 */ lw $t7, 4($a2) +/* 062A80 80061E80 25CE000C */ addiu $t6, $t6, 0xc +/* 062A84 80061E84 00021040 */ sll $v0, $v0, 1 +/* 062A88 80061E88 01A25820 */ add $t3, $t5, $v0 +.L80061E8C: +/* 062A8C 80061E8C 85A20000 */ lh $v0, ($t5) +/* 062A90 80061E90 2401FFFF */ li $at, -1 +/* 062A94 80061E94 50410013 */ beql $v0, $at, .L80061EE4 +/* 062A98 80061E98 25AD0002 */ addiu $t5, $t5, 2 +/* 062A9C 80061E9C 00021880 */ sll $v1, $v0, 2 +/* 062AA0 80061EA0 00021040 */ sll $v0, $v0, 1 +/* 062AA4 80061EA4 00431020 */ add $v0, $v0, $v1 +/* 062AA8 80061EA8 02221820 */ add $v1, $s1, $v0 +/* 062AAC 80061EAC 01C21020 */ add $v0, $t6, $v0 +/* 062AB0 80061EB0 85E80000 */ lh $t0, ($t7) +/* 062AB4 80061EB4 84490000 */ lh $t1, ($v0) +/* 062AB8 80061EB8 01095020 */ add $t2, $t0, $t1 +/* 062ABC 80061EBC A46A0000 */ sh $t2, ($v1) +/* 062AC0 80061EC0 85E80002 */ lh $t0, 2($t7) +/* 062AC4 80061EC4 84490002 */ lh $t1, 2($v0) +/* 062AC8 80061EC8 01095020 */ add $t2, $t0, $t1 +/* 062ACC 80061ECC A46A0002 */ sh $t2, 2($v1) +/* 062AD0 80061ED0 85E80004 */ lh $t0, 4($t7) +/* 062AD4 80061ED4 84490004 */ lh $t1, 4($v0) +/* 062AD8 80061ED8 01095020 */ add $t2, $t0, $t1 +/* 062ADC 80061EDC A46A0004 */ sh $t2, 4($v1) +/* 062AE0 80061EE0 25AD0002 */ addiu $t5, $t5, 2 +.L80061EE4: +/* 062AE4 80061EE4 01AB082A */ slt $at, $t5, $t3 +/* 062AE8 80061EE8 1420FFE8 */ bnez $at, .L80061E8C +/* 062AEC 80061EEC 25EF000A */ addiu $t7, $t7, 0xa +/* 062AF0 80061EF0 00008025 */ move $s0, $zero +/* 062AF4 80061EF4 84C3004A */ lh $v1, 0x4a($a2) +.L80061EF8: +/* 062AF8 80061EF8 0204082A */ slt $at, $s0, $a0 +/* 062AFC 80061EFC 00631020 */ add $v0, $v1, $v1 +/* 062B00 80061F00 00436020 */ add $t4, $v0, $v1 +/* 062B04 80061F04 10200026 */ beqz $at, .L80061FA0 +/* 062B08 80061F08 258C000C */ addiu $t4, $t4, 0xc +/* 062B0C 80061F0C 8CC20044 */ lw $v0, 0x44($a2) +/* 062B10 80061F10 000718C0 */ sll $v1, $a3, 3 +/* 062B14 80061F14 00431020 */ add $v0, $v0, $v1 +/* 062B18 80061F18 26030002 */ addiu $v1, $s0, 2 +/* 062B1C 80061F1C 01830019 */ multu $t4, $v1 +/* 062B20 80061F20 8C4A0000 */ lw $t2, ($v0) +/* 062B24 80061F24 00001812 */ mflo $v1 +/* 062B28 80061F28 01435020 */ add $t2, $t2, $v1 +/* 062B2C 80061F2C 00000000 */ nop +/* 062B30 80061F30 84C2004A */ lh $v0, 0x4a($a2) +.L80061F34: +/* 062B34 80061F34 01407025 */ move $t6, $t2 +/* 062B38 80061F38 02206825 */ move $t5, $s1 +/* 062B3C 80061F3C 00021880 */ sll $v1, $v0, 2 +/* 062B40 80061F40 00021040 */ sll $v0, $v0, 1 +/* 062B44 80061F44 00431020 */ add $v0, $v0, $v1 +/* 062B48 80061F48 014C5020 */ add $t2, $t2, $t4 +/* 062B4C 80061F4C 01A25820 */ add $t3, $t5, $v0 +.L80061F50: +/* 062B50 80061F50 85A80000 */ lh $t0, ($t5) +/* 062B54 80061F54 81C90000 */ lb $t1, ($t6) +/* 062B58 80061F58 25AD0006 */ addiu $t5, $t5, 6 +/* 062B5C 80061F5C 01AB082A */ slt $at, $t5, $t3 +/* 062B60 80061F60 01094020 */ add $t0, $t0, $t1 +/* 062B64 80061F64 A5A8FFFA */ sh $t0, -6($t5) +/* 062B68 80061F68 85A8FFFC */ lh $t0, -4($t5) +/* 062B6C 80061F6C 81C90001 */ lb $t1, 1($t6) +/* 062B70 80061F70 25CE0003 */ addiu $t6, $t6, 3 +/* 062B74 80061F74 01094020 */ add $t0, $t0, $t1 +/* 062B78 80061F78 A5A8FFFC */ sh $t0, -4($t5) +/* 062B7C 80061F7C 85A8FFFE */ lh $t0, -2($t5) +/* 062B80 80061F80 81C9FFFF */ lb $t1, -1($t6) +/* 062B84 80061F84 01094020 */ add $t0, $t0, $t1 +/* 062B88 80061F88 1420FFF1 */ bnez $at, .L80061F50 +/* 062B8C 80061F8C A5A8FFFE */ sh $t0, -2($t5) +/* 062B90 80061F90 26100001 */ addiu $s0, $s0, 1 +/* 062B94 80061F94 0204082A */ slt $at, $s0, $a0 +/* 062B98 80061F98 5420FFE6 */ bnezl $at, .L80061F34 +/* 062B9C 80061F9C 84C2004A */ lh $v0, 0x4a($a2) +.L80061FA0: +/* 062BA0 80061FA0 0090082A */ slt $at, $a0, $s0 +/* 062BA4 80061FA4 50200027 */ beql $at, $zero, .L80062044 +/* 062BA8 80061FA8 8CC20044 */ lw $v0, 0x44($a2) +/* 062BAC 80061FAC 8CC20044 */ lw $v0, 0x44($a2) +/* 062BB0 80061FB0 000718C0 */ sll $v1, $a3, 3 +/* 062BB4 80061FB4 00431020 */ add $v0, $v0, $v1 +/* 062BB8 80061FB8 26030002 */ addiu $v1, $s0, 2 +/* 062BBC 80061FBC 01830019 */ multu $t4, $v1 +/* 062BC0 80061FC0 8C4A0000 */ lw $t2, ($v0) +/* 062BC4 80061FC4 00001812 */ mflo $v1 +/* 062BC8 80061FC8 01435020 */ add $t2, $t2, $v1 +/* 062BCC 80061FCC 00000000 */ nop +/* 062BD0 80061FD0 84C2004A */ lh $v0, 0x4a($a2) +.L80061FD4: +/* 062BD4 80061FD4 014C5022 */ sub $t2, $t2, $t4 +/* 062BD8 80061FD8 02206825 */ move $t5, $s1 +/* 062BDC 80061FDC 00021880 */ sll $v1, $v0, 2 +/* 062BE0 80061FE0 00021040 */ sll $v0, $v0, 1 +/* 062BE4 80061FE4 00431020 */ add $v0, $v0, $v1 +/* 062BE8 80061FE8 2610FFFF */ addiu $s0, $s0, -1 +/* 062BEC 80061FEC 01407025 */ move $t6, $t2 +/* 062BF0 80061FF0 01A25820 */ add $t3, $t5, $v0 +.L80061FF4: +/* 062BF4 80061FF4 85A80000 */ lh $t0, ($t5) +/* 062BF8 80061FF8 81C90000 */ lb $t1, ($t6) +/* 062BFC 80061FFC 25AD0006 */ addiu $t5, $t5, 6 +/* 062C00 80062000 01AB082A */ slt $at, $t5, $t3 +/* 062C04 80062004 01094022 */ sub $t0, $t0, $t1 +/* 062C08 80062008 A5A8FFFA */ sh $t0, -6($t5) +/* 062C0C 8006200C 85A8FFFC */ lh $t0, -4($t5) +/* 062C10 80062010 81C90001 */ lb $t1, 1($t6) +/* 062C14 80062014 25CE0003 */ addiu $t6, $t6, 3 +/* 062C18 80062018 01094022 */ sub $t0, $t0, $t1 +/* 062C1C 8006201C A5A8FFFC */ sh $t0, -4($t5) +/* 062C20 80062020 85A8FFFE */ lh $t0, -2($t5) +/* 062C24 80062024 81C9FFFF */ lb $t1, -1($t6) +/* 062C28 80062028 01094022 */ sub $t0, $t0, $t1 +/* 062C2C 8006202C 1420FFF1 */ bnez $at, .L80061FF4 +/* 062C30 80062030 A5A8FFFE */ sh $t0, -2($t5) +/* 062C34 80062034 0090082A */ slt $at, $a0, $s0 +/* 062C38 80062038 5420FFE6 */ bnezl $at, .L80061FD4 +/* 062C3C 8006203C 84C2004A */ lh $v0, 0x4a($a2) +/* 062C40 80062040 8CC20044 */ lw $v0, 0x44($a2) +.L80062044: +/* 062C44 80062044 000718C0 */ sll $v1, $a3, 3 +/* 062C48 80062048 3C0D8012 */ lui $t5, %hi(D_8011D644) # $t5, 0x8012 +/* 062C4C 8006204C 00431020 */ add $v0, $v0, $v1 +/* 062C50 80062050 8C4E0000 */ lw $t6, ($v0) +/* 062C54 80062054 26020002 */ addiu $v0, $s0, 2 +/* 062C58 80062058 01820019 */ multu $t4, $v0 +/* 062C5C 8006205C 84C2004A */ lh $v0, 0x4a($a2) +/* 062C60 80062060 8DADD644 */ lw $t5, %lo(D_8011D644)($t5) +/* 062C64 80062064 00001812 */ mflo $v1 +/* 062C68 80062068 01C37020 */ add $t6, $t6, $v1 +/* 062C6C 8006206C 00021880 */ sll $v1, $v0, 2 +/* 062C70 80062070 00021040 */ sll $v0, $v0, 1 +/* 062C74 80062074 00431020 */ add $v0, $v0, $v1 +/* 062C78 80062078 01A25820 */ add $t3, $t5, $v0 +.L8006207C: +/* 062C7C 8006207C 81C80000 */ lb $t0, ($t6) +/* 062C80 80062080 25AD0006 */ addiu $t5, $t5, 6 +/* 062C84 80062084 01AB082A */ slt $at, $t5, $t3 +/* 062C88 80062088 01180019 */ multu $t0, $t8 +/* 062C8C 8006208C 25CE0003 */ addiu $t6, $t6, 3 +/* 062C90 80062090 00004012 */ mflo $t0 +/* 062C94 80062094 00084102 */ srl $t0, $t0, 4 +/* 062C98 80062098 A5A8FFFA */ sh $t0, -6($t5) +/* 062C9C 8006209C 81C9FFFE */ lb $t1, -2($t6) +/* 062CA0 800620A0 01380019 */ multu $t1, $t8 +/* 062CA4 800620A4 00004812 */ mflo $t1 +/* 062CA8 800620A8 00094902 */ srl $t1, $t1, 4 +/* 062CAC 800620AC A5A9FFFC */ sh $t1, -4($t5) +/* 062CB0 800620B0 81CAFFFF */ lb $t2, -1($t6) +/* 062CB4 800620B4 01580019 */ multu $t2, $t8 +/* 062CB8 800620B8 00005012 */ mflo $t2 +/* 062CBC 800620BC 000A5102 */ srl $t2, $t2, 4 +/* 062CC0 800620C0 1420FFEE */ bnez $at, .L8006207C +/* 062CC4 800620C4 A5AAFFFE */ sh $t2, -2($t5) +/* 062CC8 800620C8 8CC20044 */ lw $v0, 0x44($a2) +/* 062CCC 800620CC 000718C0 */ sll $v1, $a3, 3 +/* 062CD0 800620D0 00431020 */ add $v0, $v0, $v1 +/* 062CD4 800620D4 10800006 */ beqz $a0, .L800620F0 +/* 062CD8 800620D8 8C4E0000 */ lw $t6, ($v0) +/* 062CDC 800620DC 24820001 */ addiu $v0, $a0, 1 +/* 062CE0 800620E0 01820019 */ multu $t4, $v0 +/* 062CE4 800620E4 00001812 */ mflo $v1 +/* 062CE8 800620E8 01C37020 */ add $t6, $t6, $v1 +/* 062CEC 800620EC 25CEFFF4 */ addiu $t6, $t6, -0xc +.L800620F0: +/* 062CF0 800620F0 81C20000 */ lb $v0, ($t6) +/* 062CF4 800620F4 91C30001 */ lbu $v1, 1($t6) +/* 062CF8 800620F8 00021200 */ sll $v0, $v0, 8 +/* 062CFC 800620FC 00434025 */ or $t0, $v0, $v1 +/* 062D00 80062100 81C20002 */ lb $v0, 2($t6) +/* 062D04 80062104 91C30003 */ lbu $v1, 3($t6) +/* 062D08 80062108 00021200 */ sll $v0, $v0, 8 +/* 062D0C 8006210C 00434825 */ or $t1, $v0, $v1 +/* 062D10 80062110 81C20004 */ lb $v0, 4($t6) +/* 062D14 80062114 91C30005 */ lbu $v1, 5($t6) +/* 062D18 80062118 00021200 */ sll $v0, $v0, 8 +/* 062D1C 8006211C 00435025 */ or $t2, $v0, $v1 +/* 062D20 80062120 81C2000A */ lb $v0, 0xa($t6) +/* 062D24 80062124 91C3000B */ lbu $v1, 0xb($t6) +/* 062D28 80062128 01CC7020 */ add $t6, $t6, $t4 +/* 062D2C 8006212C 00021200 */ sll $v0, $v0, 8 +/* 062D30 80062130 14800003 */ bnez $a0, .L80062140 +/* 062D34 80062134 00435825 */ or $t3, $v0, $v1 +/* 062D38 80062138 01CC7020 */ add $t6, $t6, $t4 +/* 062D3C 8006213C 25CEFFF4 */ addiu $t6, $t6, -0xc +.L80062140: +/* 062D40 80062140 81C20000 */ lb $v0, ($t6) +/* 062D44 80062144 91C30001 */ lbu $v1, 1($t6) +/* 062D48 80062148 3C198012 */ lui $t9, %hi(D_8011D644) # $t9, 0x8012 +/* 062D4C 8006214C 00021200 */ sll $v0, $v0, 8 +/* 062D50 80062150 00431025 */ or $v0, $v0, $v1 +/* 062D54 80062154 00481022 */ sub $v0, $v0, $t0 +/* 062D58 80062158 00580019 */ multu $v0, $t8 +/* 062D5C 8006215C 00001012 */ mflo $v0 +/* 062D60 80062160 00021102 */ srl $v0, $v0, 4 +/* 062D64 80062164 01024020 */ add $t0, $t0, $v0 +/* 062D68 80062168 A4A80016 */ sh $t0, 0x16($a1) +/* 062D6C 8006216C 81C20002 */ lb $v0, 2($t6) +/* 062D70 80062170 91C30003 */ lbu $v1, 3($t6) +/* 062D74 80062174 00021200 */ sll $v0, $v0, 8 +/* 062D78 80062178 00431025 */ or $v0, $v0, $v1 +/* 062D7C 8006217C 00491022 */ sub $v0, $v0, $t1 +/* 062D80 80062180 00580019 */ multu $v0, $t8 +/* 062D84 80062184 00001012 */ mflo $v0 +/* 062D88 80062188 00021102 */ srl $v0, $v0, 4 +/* 062D8C 8006218C 01224820 */ add $t1, $t1, $v0 +/* 062D90 80062190 A4A90018 */ sh $t1, 0x18($a1) +/* 062D94 80062194 81C20004 */ lb $v0, 4($t6) +/* 062D98 80062198 91C30005 */ lbu $v1, 5($t6) +/* 062D9C 8006219C 00021200 */ sll $v0, $v0, 8 +/* 062DA0 800621A0 00431025 */ or $v0, $v0, $v1 +/* 062DA4 800621A4 004A1022 */ sub $v0, $v0, $t2 +/* 062DA8 800621A8 00580019 */ multu $v0, $t8 +/* 062DAC 800621AC 00001012 */ mflo $v0 +/* 062DB0 800621B0 00021102 */ srl $v0, $v0, 4 +/* 062DB4 800621B4 01425020 */ add $t2, $t2, $v0 +/* 062DB8 800621B8 A4AA001A */ sh $t2, 0x1a($a1) +/* 062DBC 800621BC 81C2000A */ lb $v0, 0xa($t6) +/* 062DC0 800621C0 91C3000B */ lbu $v1, 0xb($t6) +/* 062DC4 800621C4 00021200 */ sll $v0, $v0, 8 +/* 062DC8 800621C8 00431025 */ or $v0, $v0, $v1 +/* 062DCC 800621CC 004B1022 */ sub $v0, $v0, $t3 +/* 062DD0 800621D0 00580019 */ multu $v0, $t8 +/* 062DD4 800621D4 24A30004 */ addiu $v1, $a1, 4 +/* 062DD8 800621D8 00001012 */ mflo $v0 +/* 062DDC 800621DC 00021102 */ srl $v0, $v0, 4 +/* 062DE0 800621E0 01625820 */ add $t3, $t3, $v0 +/* 062DE4 800621E4 80A2001F */ lb $v0, 0x1f($a1) +/* 062DE8 800621E8 A4AB001C */ sh $t3, 0x1c($a1) +/* 062DEC 800621EC 38420001 */ xori $v0, $v0, 1 +/* 062DF0 800621F0 A0A2001F */ sb $v0, 0x1f($a1) +/* 062DF4 800621F4 00021080 */ sll $v0, $v0, 2 +/* 062DF8 800621F8 00621820 */ add $v1, $v1, $v0 +/* 062DFC 800621FC 84C20024 */ lh $v0, 0x24($a2) +/* 062E00 80062200 8CCD004C */ lw $t5, 0x4c($a2) +/* 062E04 80062204 8C6E0000 */ lw $t6, ($v1) +/* 062E08 80062208 00021040 */ sll $v0, $v0, 1 +/* 062E0C 8006220C 8F39D644 */ lw $t9, %lo(D_8011D644)($t9) +/* 062E10 80062210 01A25820 */ add $t3, $t5, $v0 +.L80062214: +/* 062E14 80062214 85A20000 */ lh $v0, ($t5) +/* 062E18 80062218 2401FFFF */ li $at, -1 +/* 062E1C 8006221C 21AD0002 */ addi $t5, $t5, 2 +/* 062E20 80062220 50410013 */ beql $v0, $at, .L80062270 +/* 062E24 80062224 01AB082A */ slt $at, $t5, $t3 +/* 062E28 80062228 00021880 */ sll $v1, $v0, 2 +/* 062E2C 8006222C 00021040 */ sll $v0, $v0, 1 +/* 062E30 80062230 00431020 */ add $v0, $v0, $v1 +/* 062E34 80062234 03224820 */ add $t1, $t9, $v0 +/* 062E38 80062238 02224020 */ add $t0, $s1, $v0 +/* 062E3C 8006223C 85020000 */ lh $v0, ($t0) +/* 062E40 80062240 85230000 */ lh $v1, ($t1) +/* 062E44 80062244 00435020 */ add $t2, $v0, $v1 +/* 062E48 80062248 A5CA0000 */ sh $t2, ($t6) +/* 062E4C 8006224C 85020002 */ lh $v0, 2($t0) +/* 062E50 80062250 85230002 */ lh $v1, 2($t1) +/* 062E54 80062254 00435020 */ add $t2, $v0, $v1 +/* 062E58 80062258 A5CA0002 */ sh $t2, 2($t6) +/* 062E5C 8006225C 85020004 */ lh $v0, 4($t0) +/* 062E60 80062260 85230004 */ lh $v1, 4($t1) +/* 062E64 80062264 00435020 */ add $t2, $v0, $v1 +/* 062E68 80062268 A5CA0004 */ sh $t2, 4($t6) +/* 062E6C 8006226C 01AB082A */ slt $at, $t5, $t3 +.L80062270: +/* 062E70 80062270 1420FFE8 */ bnez $at, .L80062214 +/* 062E74 80062274 21CE000A */ addi $t6, $t6, 0xa +/* 062E78 80062278 24020001 */ li $v0, 1 +.L8006227C: +/* 062E7C 8006227C 8FB00000 */ lw $s0, ($sp) +/* 062E80 80062280 8FB10004 */ lw $s1, 4($sp) +/* 062E84 80062284 03E00008 */ jr $ra +/* 062E88 80062288 27BD0008 */ addiu $sp, $sp, 8 + +/* 062E8C 8006228C 00000000 */ nop diff --git a/asm/non_matchings/unknown_061D30/func_80062290.s b/asm/non_matchings/unknown_061D30/func_80062290.s new file mode 100644 index 00000000..577a1b37 --- /dev/null +++ b/asm/non_matchings/unknown_061D30/func_80062290.s @@ -0,0 +1,98 @@ +glabel func_80062290 +/* 062E90 80062290 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 062E94 80062294 AFBF0024 */ sw $ra, 0x24($sp) +/* 062E98 80062298 AFB10020 */ sw $s1, 0x20($sp) +/* 062E9C 8006229C AFB0001C */ sw $s0, 0x1c($sp) +/* 062EA0 800622A0 8CA6000C */ lw $a2, 0xc($a1) +/* 062EA4 800622A4 AC800020 */ sw $zero, 0x20($a0) +/* 062EA8 800622A8 AC800018 */ sw $zero, 0x18($a0) +/* 062EAC 800622AC 3C0E800E */ lui $t6, %hi(D_800E3780) # $t6, 0x800e +/* 062EB0 800622B0 8DCE3780 */ lw $t6, %lo(D_800E3780)($t6) +/* 062EB4 800622B4 340FFFFF */ li $t7, 65535 +/* 062EB8 800622B8 241801E8 */ li $t8, 488 +/* 062EBC 800622BC 24197FFF */ li $t9, 32767 +/* 062EC0 800622C0 24083E80 */ li $t0, 16000 +/* 062EC4 800622C4 A48F0030 */ sh $t7, 0x30($a0) +/* 062EC8 800622C8 AC980024 */ sw $t8, 0x24($a0) +/* 062ECC 800622CC AC800028 */ sw $zero, 0x28($a0) +/* 062ED0 800622D0 AC80002C */ sw $zero, 0x2c($a0) +/* 062ED4 800622D4 A4990032 */ sh $t9, 0x32($a0) +/* 062ED8 800622D8 AC88005C */ sw $t0, 0x5c($a0) +/* 062EDC 800622DC AC80001C */ sw $zero, 0x1c($a0) +/* 062EE0 800622E0 AC8E0014 */ sw $t6, 0x14($a0) +/* 062EE4 800622E4 8CA90014 */ lw $t1, 0x14($a1) +/* 062EE8 800622E8 240D0009 */ li $t5, 9 +/* 062EEC 800622EC AC890074 */ sw $t1, 0x74($a0) +/* 062EF0 800622F0 8CAA0018 */ lw $t2, 0x18($a1) +/* 062EF4 800622F4 00A08825 */ move $s1, $a1 +/* 062EF8 800622F8 AC8A0078 */ sw $t2, 0x78($a0) +/* 062EFC 800622FC 8CAB001C */ lw $t3, 0x1c($a1) +/* 062F00 80062300 A0800071 */ sb $zero, 0x71($a0) +/* 062F04 80062304 AC8B007C */ sw $t3, 0x7c($a0) +/* 062F08 80062308 90AC0010 */ lbu $t4, 0x10($a1) +/* 062F0C 8006230C A48D0038 */ sh $t5, 0x38($a0) +/* 062F10 80062310 A08C0070 */ sb $t4, 0x70($a0) +/* 062F14 80062314 90AE0008 */ lbu $t6, 8($a1) +/* 062F18 80062318 00808025 */ move $s0, $a0 +/* 062F1C 8006231C A08E0034 */ sb $t6, 0x34($a0) +/* 062F20 80062320 92270008 */ lbu $a3, 8($s1) +/* 062F24 80062324 240F0014 */ li $t7, 20 +/* 062F28 80062328 AFAF0010 */ sw $t7, 0x10($sp) +/* 062F2C 8006232C 00002025 */ move $a0, $zero +/* 062F30 80062330 00002825 */ move $a1, $zero +/* 062F34 80062334 0C031DFC */ jal func_800C77F0 +/* 062F38 80062338 AFA6002C */ sw $a2, 0x2c($sp) +/* 062F3C 8006233C AE020060 */ sw $v0, 0x60($s0) +/* 062F40 80062340 0C002BA4 */ jal func_8000AE90 +/* 062F44 80062344 02002025 */ move $a0, $s0 +/* 062F48 80062348 8FA6002C */ lw $a2, 0x2c($sp) +/* 062F4C 8006234C 8E270000 */ lw $a3, ($s1) +/* 062F50 80062350 24180038 */ li $t8, 56 +/* 062F54 80062354 AFB80010 */ sw $t8, 0x10($sp) +/* 062F58 80062358 00002025 */ move $a0, $zero +/* 062F5C 8006235C 0C031DFC */ jal func_800C77F0 +/* 062F60 80062360 00002825 */ move $a1, $zero +/* 062F64 80062364 AE00006C */ sw $zero, 0x6c($s0) +/* 062F68 80062368 8E390000 */ lw $t9, ($s1) +/* 062F6C 8006236C 00002025 */ move $a0, $zero +/* 062F70 80062370 1B20000B */ blez $t9, .L800623A0 +/* 062F74 80062374 00002825 */ move $a1, $zero +/* 062F78 80062378 00401825 */ move $v1, $v0 +.L8006237C: +/* 062F7C 8006237C 8E08006C */ lw $t0, 0x6c($s0) +/* 062F80 80062380 24840001 */ addiu $a0, $a0, 1 +/* 062F84 80062384 AC680000 */ sw $t0, ($v1) +/* 062F88 80062388 AE03006C */ sw $v1, 0x6c($s0) +/* 062F8C 8006238C 8E290000 */ lw $t1, ($s1) +/* 062F90 80062390 24630038 */ addiu $v1, $v1, 0x38 +/* 062F94 80062394 0089082A */ slt $at, $a0, $t1 +/* 062F98 80062398 1420FFF8 */ bnez $at, .L8006237C +/* 062F9C 8006239C 00000000 */ nop +.L800623A0: +/* 062FA0 800623A0 AE000064 */ sw $zero, 0x64($s0) +/* 062FA4 800623A4 AE000068 */ sw $zero, 0x68($s0) +/* 062FA8 800623A8 8E270004 */ lw $a3, 4($s1) +/* 062FAC 800623AC 8FA6002C */ lw $a2, 0x2c($sp) +/* 062FB0 800623B0 240A001C */ li $t2, 28 +/* 062FB4 800623B4 AFAA0010 */ sw $t2, 0x10($sp) +/* 062FB8 800623B8 0C031DFC */ jal func_800C77F0 +/* 062FBC 800623BC 00002025 */ move $a0, $zero +/* 062FC0 800623C0 8E260004 */ lw $a2, 4($s1) +/* 062FC4 800623C4 26040048 */ addiu $a0, $s0, 0x48 +/* 062FC8 800623C8 0C0324D7 */ jal func_800C935C +/* 062FCC 800623CC 00402825 */ move $a1, $v0 +/* 062FD0 800623D0 3C0B8006 */ lui $t3, %hi(D_80062408) # $t3, 0x8006 +/* 062FD4 800623D4 256B2408 */ addiu $t3, %lo(D_80062408) # addiu $t3, $t3, 0x2408 +/* 062FD8 800623D8 AE000000 */ sw $zero, ($s0) +/* 062FDC 800623DC AE0B0008 */ sw $t3, 8($s0) +/* 062FE0 800623E0 AE100004 */ sw $s0, 4($s0) +/* 062FE4 800623E4 3C04800E */ lui $a0, %hi(D_800E3780) # $a0, 0x800e +/* 062FE8 800623E8 8C843780 */ lw $a0, %lo(D_800E3780)($a0) +/* 062FEC 800623EC 0C0324F4 */ jal func_800C93D0 +/* 062FF0 800623F0 02002825 */ move $a1, $s0 +/* 062FF4 800623F4 8FBF0024 */ lw $ra, 0x24($sp) +/* 062FF8 800623F8 8FB0001C */ lw $s0, 0x1c($sp) +/* 062FFC 800623FC 8FB10020 */ lw $s1, 0x20($sp) +/* 063000 80062400 03E00008 */ jr $ra +/* 063004 80062404 27BD0040 */ addiu $sp, $sp, 0x40 + diff --git a/asm/non_matchings/unknown_061D30/func_800629CC.s b/asm/non_matchings/unknown_061D30/func_800629CC.s new file mode 100644 index 00000000..194295c9 --- /dev/null +++ b/asm/non_matchings/unknown_061D30/func_800629CC.s @@ -0,0 +1,32 @@ +glabel func_800629CC +/* 0635CC 800629CC 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0635D0 800629D0 AFBF0014 */ sw $ra, 0x14($sp) +/* 0635D4 800629D4 8C8E002C */ lw $t6, 0x2c($a0) +/* 0635D8 800629D8 24010001 */ li $at, 1 +/* 0635DC 800629DC 15C10013 */ bne $t6, $at, .L80062A2C +/* 0635E0 800629E0 00803825 */ move $a3, $a0 +/* 0635E4 800629E4 8C840018 */ lw $a0, 0x18($a0) +/* 0635E8 800629E8 27A5001C */ addiu $a1, $sp, 0x1c +/* 0635EC 800629EC 10800010 */ beqz $a0, .L80062A30 +/* 0635F0 800629F0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0635F4 800629F4 0C0320FB */ jal func_800C83EC +/* 0635F8 800629F8 AFA70030 */ sw $a3, 0x30($sp) +/* 0635FC 800629FC 8FA70030 */ lw $a3, 0x30($sp) +/* 063600 80062A00 1040000B */ beqz $v0, .L80062A30 +/* 063604 80062A04 8FBF0014 */ lw $ra, 0x14($sp) +/* 063608 80062A08 A7A00020 */ sh $zero, 0x20($sp) +/* 06360C 80062A0C 8CEF0024 */ lw $t7, 0x24($a3) +/* 063610 80062A10 8FB8001C */ lw $t8, 0x1c($sp) +/* 063614 80062A14 24E40048 */ addiu $a0, $a3, 0x48 +/* 063618 80062A18 01F80019 */ multu $t7, $t8 +/* 06361C 80062A1C 27A50020 */ addiu $a1, $sp, 0x20 +/* 063620 80062A20 00003012 */ mflo $a2 +/* 063624 80062A24 0C03246B */ jal func_800C91AC +/* 063628 80062A28 00000000 */ nop +.L80062A2C: +/* 06362C 80062A2C 8FBF0014 */ lw $ra, 0x14($sp) +.L80062A30: +/* 063630 80062A30 27BD0030 */ addiu $sp, $sp, 0x30 +/* 063634 80062A34 03E00008 */ jr $ra +/* 063638 80062A38 00000000 */ nop + diff --git a/asm/non_matchings/unknown_061D30/func_80062A3C.s b/asm/non_matchings/unknown_061D30/func_80062A3C.s new file mode 100644 index 00000000..514527cd --- /dev/null +++ b/asm/non_matchings/unknown_061D30/func_80062A3C.s @@ -0,0 +1,53 @@ +glabel func_80062A3C +/* 06363C 80062A3C 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 063640 80062A40 AFBF001C */ sw $ra, 0x1c($sp) +/* 063644 80062A44 AFB00018 */ sw $s0, 0x18($sp) +/* 063648 80062A48 8C860018 */ lw $a2, 0x18($a0) +/* 06364C 80062A4C 00808025 */ move $s0, $a0 +/* 063650 80062A50 10C00027 */ beqz $a2, .L80062AF0 +/* 063654 80062A54 27A50028 */ addiu $a1, $sp, 0x28 +/* 063658 80062A58 0C031F41 */ jal func_800C7D04 +/* 06365C 80062A5C 00C02025 */ move $a0, $a2 +/* 063660 80062A60 87AE0028 */ lh $t6, 0x28($sp) +/* 063664 80062A64 27A50028 */ addiu $a1, $sp, 0x28 +/* 063668 80062A68 25CFFFFF */ addiu $t7, $t6, -1 +/* 06366C 80062A6C 2DE10014 */ sltiu $at, $t7, 0x14 +/* 063670 80062A70 1020001F */ beqz $at, .L80062AF0 +/* 063674 80062A74 000F7880 */ sll $t7, $t7, 2 +/* 063678 80062A78 3C01800E */ lui $at, 0x800e +/* 06367C 80062A7C 002F0821 */ addu $at, $at, $t7 +/* 063680 80062A80 8C2F6C90 */ lw $t7, 0x6c90($at) +/* 063684 80062A84 00000000 */ nop +/* 063688 80062A88 01E00008 */ jr $t7 +/* 06368C 80062A8C 00000000 */ nop +/* 063690 80062A90 0C018AC0 */ jal func_80062B00 +/* 063694 80062A94 02002025 */ move $a0, $s0 +/* 063698 80062A98 0C018A73 */ jal func_800629CC +/* 06369C 80062A9C 02002025 */ move $a0, $s0 +/* 0636A0 80062AA0 10000014 */ b .L80062AF4 +/* 0636A4 80062AA4 8FBF001C */ lw $ra, 0x1c($sp) +/* 0636A8 80062AA8 0C018DFB */ jal func_800637EC +/* 0636AC 80062AAC 02002025 */ move $a0, $s0 +/* 0636B0 80062AB0 0C018A73 */ jal func_800629CC +/* 0636B4 80062AB4 02002025 */ move $a0, $s0 +/* 0636B8 80062AB8 1000000E */ b .L80062AF4 +/* 0636BC 80062ABC 8FBF001C */ lw $ra, 0x1c($sp) +/* 0636C0 80062AC0 24180002 */ li $t8, 2 +/* 0636C4 80062AC4 AE18002C */ sw $t8, 0x2c($s0) +/* 0636C8 80062AC8 24190010 */ li $t9, 16 +/* 0636CC 80062ACC 3C067FFF */ lui $a2, (0x7FFFFFFF >> 16) # lui $a2, 0x7fff +/* 0636D0 80062AD0 A7B90028 */ sh $t9, 0x28($sp) +/* 0636D4 80062AD4 34C6FFFF */ ori $a2, (0x7FFFFFFF & 0xFFFF) # ori $a2, $a2, 0xffff +/* 0636D8 80062AD8 0C03246B */ jal func_800C91AC +/* 0636DC 80062ADC 26040048 */ addiu $a0, $s0, 0x48 +/* 0636E0 80062AE0 10000004 */ b .L80062AF4 +/* 0636E4 80062AE4 8FBF001C */ lw $ra, 0x1c($sp) +/* 0636E8 80062AE8 0C018A73 */ jal func_800629CC +/* 0636EC 80062AEC 02002025 */ move $a0, $s0 +.L80062AF0: +/* 0636F0 80062AF0 8FBF001C */ lw $ra, 0x1c($sp) +.L80062AF4: +/* 0636F4 80062AF4 8FB00018 */ lw $s0, 0x18($sp) +/* 0636F8 80062AF8 03E00008 */ jr $ra +/* 0636FC 80062AFC 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_061D30/func_80062B00.s b/asm/non_matchings/unknown_061D30/func_80062B00.s new file mode 100644 index 00000000..8c94132b --- /dev/null +++ b/asm/non_matchings/unknown_061D30/func_80062B00.s @@ -0,0 +1,883 @@ +glabel func_80062B00 +/* 063700 80062B00 27BDFF28 */ addiu $sp, $sp, -0xd8 +/* 063704 80062B04 AFBF003C */ sw $ra, 0x3c($sp) +/* 063708 80062B08 AFB40038 */ sw $s4, 0x38($sp) +/* 06370C 80062B0C AFB30034 */ sw $s3, 0x34($sp) +/* 063710 80062B10 AFB20030 */ sw $s2, 0x30($sp) +/* 063714 80062B14 AFB1002C */ sw $s1, 0x2c($sp) +/* 063718 80062B18 AFB00028 */ sw $s0, 0x28($sp) +/* 06371C 80062B1C 90A70008 */ lbu $a3, 8($a1) +/* 063720 80062B20 90AF0009 */ lbu $t7, 9($a1) +/* 063724 80062B24 240600B0 */ li $a2, 176 +/* 063728 80062B28 A3AF00CA */ sb $t7, 0xca($sp) +/* 06372C 80062B2C 90B3000A */ lbu $s3, 0xa($a1) +/* 063730 80062B30 30E300F0 */ andi $v1, $a3, 0xf0 +/* 063734 80062B34 30EE000F */ andi $t6, $a3, 0xf +/* 063738 80062B38 00A08025 */ move $s0, $a1 +/* 06373C 80062B3C 00809025 */ move $s2, $a0 +/* 063740 80062B40 14660027 */ bne $v1, $a2, .L80062BE0 +/* 063744 80062B44 01C03825 */ move $a3, $t6 +/* 063748 80062B48 31F100FF */ andi $s1, $t7, 0xff +/* 06374C 80062B4C 2401006A */ li $at, 106 +/* 063750 80062B50 1621001B */ bne $s1, $at, .L80062BC0 +/* 063754 80062B54 24080001 */ li $t0, 1 +/* 063758 80062B58 AFB30058 */ sw $s3, 0x58($sp) +/* 06375C 80062B5C 94980030 */ lhu $t8, 0x30($a0) +/* 063760 80062B60 02684804 */ sllv $t1, $t0, $s3 +/* 063764 80062B64 8C900064 */ lw $s0, 0x64($a0) +/* 063768 80062B68 01205027 */ not $t2, $t1 +/* 06376C 80062B6C 030A5824 */ and $t3, $t8, $t2 +/* 063770 80062B70 12000316 */ beqz $s0, .L800637CC +/* 063774 80062B74 A48B0030 */ sh $t3, 0x30($a0) +/* 063778 80062B78 8FAC0058 */ lw $t4, 0x58($sp) +.L80062B7C: +/* 06377C 80062B7C 920D0031 */ lbu $t5, 0x31($s0) +/* 063780 80062B80 00000000 */ nop +/* 063784 80062B84 158D0008 */ bne $t4, $t5, .L80062BA8 +/* 063788 80062B88 00000000 */ nop +/* 06378C 80062B8C 8E0E0020 */ lw $t6, 0x20($s0) +/* 063790 80062B90 02402025 */ move $a0, $s2 +/* 063794 80062B94 8DCF0000 */ lw $t7, ($t6) +/* 063798 80062B98 26050004 */ addiu $a1, $s0, 4 +/* 06379C 80062B9C 8DE60008 */ lw $a2, 8($t7) +/* 0637A0 80062BA0 0C002AC0 */ jal func_8000AB00 +/* 0637A4 80062BA4 00000000 */ nop +.L80062BA8: +/* 0637A8 80062BA8 8E100000 */ lw $s0, ($s0) +/* 0637AC 80062BAC 00000000 */ nop +/* 0637B0 80062BB0 1600FFF2 */ bnez $s0, .L80062B7C +/* 0637B4 80062BB4 8FAC0058 */ lw $t4, 0x58($sp) +/* 0637B8 80062BB8 10000305 */ b .L800637D0 +/* 0637BC 80062BBC 8FBF003C */ lw $ra, 0x3c($sp) +.L80062BC0: +/* 0637C0 80062BC0 2401006C */ li $at, 108 +/* 0637C4 80062BC4 16210006 */ bne $s1, $at, .L80062BE0 +/* 0637C8 80062BC8 24190001 */ li $t9, 1 +/* 0637CC 80062BCC 96480030 */ lhu $t0, 0x30($s2) +/* 0637D0 80062BD0 02794804 */ sllv $t1, $t9, $s3 +/* 0637D4 80062BD4 0109C025 */ or $t8, $t0, $t1 +/* 0637D8 80062BD8 100002FC */ b .L800637CC +/* 0637DC 80062BDC A6580030 */ sh $t8, 0x30($s2) +.L80062BE0: +/* 0637E0 80062BE0 964C0030 */ lhu $t4, 0x30($s2) +/* 0637E4 80062BE4 240A0001 */ li $t2, 1 +/* 0637E8 80062BE8 00EA5804 */ sllv $t3, $t2, $a3 +/* 0637EC 80062BEC 016C6824 */ and $t5, $t3, $t4 +/* 0637F0 80062BF0 15A00007 */ bnez $t5, .L80062C10 +/* 0637F4 80062BF4 00E0A025 */ move $s4, $a3 +/* 0637F8 80062BF8 240100C0 */ li $at, 192 +/* 0637FC 80062BFC 10610005 */ beq $v1, $at, .L80062C14 +/* 063800 80062C00 246EFF80 */ addiu $t6, $v1, -0x80 +/* 063804 80062C04 10660002 */ beq $v1, $a2, .L80062C10 +/* 063808 80062C08 240100E0 */ li $at, 224 +/* 06380C 80062C0C 146102EF */ bne $v1, $at, .L800637CC +.L80062C10: +/* 063810 80062C10 246EFF80 */ addiu $t6, $v1, -0x80 +.L80062C14: +/* 063814 80062C14 2DC10061 */ sltiu $at, $t6, 0x61 +/* 063818 80062C18 102002EC */ beqz $at, .L800637CC +/* 06381C 80062C1C 000E7080 */ sll $t6, $t6, 2 +/* 063820 80062C20 3C01800E */ lui $at, 0x800e +/* 063824 80062C24 002E0821 */ addu $at, $at, $t6 +/* 063828 80062C28 8C2E6CE0 */ lw $t6, 0x6ce0($at) +/* 06382C 80062C2C 00000000 */ nop +/* 063830 80062C30 01C00008 */ jr $t6 +/* 063834 80062C34 00000000 */ nop +/* 063838 80062C38 1260010C */ beqz $s3, .L8006306C +/* 06383C 80062C3C 93A500CA */ lbu $a1, 0xca($sp) +/* 063840 80062C40 8E4F002C */ lw $t7, 0x2c($s2) +/* 063844 80062C44 24010001 */ li $at, 1 +/* 063848 80062C48 15E102E0 */ bne $t7, $at, .L800637CC +/* 06384C 80062C4C 02402025 */ move $a0, $s2 +/* 063850 80062C50 93A500CA */ lbu $a1, 0xca($sp) +/* 063854 80062C54 326600FF */ andi $a2, $s3, 0xff +/* 063858 80062C58 A3A700CB */ sb $a3, 0xcb($sp) +/* 06385C 80062C5C 0C002A34 */ jal func_8000A8D0 +/* 063860 80062C60 AFB000DC */ sw $s0, 0xdc($sp) +/* 063864 80062C64 104002D9 */ beqz $v0, .L800637CC +/* 063868 80062C68 AFA20090 */ sw $v0, 0x90($sp) +/* 06386C 80062C6C 93A700CB */ lbu $a3, 0xcb($sp) +/* 063870 80062C70 8E590060 */ lw $t9, 0x60($s2) +/* 063874 80062C74 00071880 */ sll $v1, $a3, 2 +/* 063878 80062C78 00671821 */ addu $v1, $v1, $a3 +/* 06387C 80062C7C 00031880 */ sll $v1, $v1, 2 +/* 063880 80062C80 03234021 */ addu $t0, $t9, $v1 +/* 063884 80062C84 91090008 */ lbu $t1, 8($t0) +/* 063888 80062C88 93A500CA */ lbu $a1, 0xca($sp) +/* 06388C 80062C8C A7A00096 */ sh $zero, 0x96($sp) +/* 063890 80062C90 A3A00098 */ sb $zero, 0x98($sp) +/* 063894 80062C94 AFA30058 */ sw $v1, 0x58($sp) +/* 063898 80062C98 02402025 */ move $a0, $s2 +/* 06389C 80062C9C 326600FF */ andi $a2, $s3, 0xff +/* 0638A0 80062CA0 0C0029C7 */ jal func_8000A71C +/* 0638A4 80062CA4 A7A90094 */ sh $t1, 0x94($sp) +/* 0638A8 80062CA8 8FA30058 */ lw $v1, 0x58($sp) +/* 0638AC 80062CAC 104002C7 */ beqz $v0, .L800637CC +/* 0638B0 80062CB0 00408025 */ move $s0, $v0 +/* 0638B4 80062CB4 8E440014 */ lw $a0, 0x14($s2) +/* 0638B8 80062CB8 24450004 */ addiu $a1, $v0, 4 +/* 0638BC 80062CBC 93B100CA */ lbu $s1, 0xca($sp) +/* 0638C0 80062CC0 AFA50050 */ sw $a1, 0x50($sp) +/* 0638C4 80062CC4 AFA30058 */ sw $v1, 0x58($sp) +/* 0638C8 80062CC8 0C032542 */ jal func_800C9508 +/* 0638CC 80062CCC 27A60094 */ addiu $a2, $sp, 0x94 +/* 0638D0 80062CD0 8FA30058 */ lw $v1, 0x58($sp) +/* 0638D4 80062CD4 10400008 */ beqz $v0, .L80062CF8 +/* 0638D8 80062CD8 00003025 */ move $a2, $zero +/* 0638DC 80062CDC 8FB80050 */ lw $t8, 0x50($sp) +/* 0638E0 80062CE0 8E440014 */ lw $a0, 0x14($s2) +/* 0638E4 80062CE4 8F050008 */ lw $a1, 8($t8) +/* 0638E8 80062CE8 0C0196A0 */ jal func_80065A80 +/* 0638EC 80062CEC AFA30058 */ sw $v1, 0x58($sp) +/* 0638F0 80062CF0 8FA30058 */ lw $v1, 0x58($sp) +/* 0638F4 80062CF4 00000000 */ nop +.L80062CF8: +/* 0638F8 80062CF8 8FA50090 */ lw $a1, 0x90($sp) +/* 0638FC 80062CFC A2000034 */ sb $zero, 0x34($s0) +/* 063900 80062D00 AE050020 */ sw $a1, 0x20($s0) +/* 063904 80062D04 8E4A0060 */ lw $t2, 0x60($s2) +/* 063908 80062D08 240D0002 */ li $t5, 2 +/* 06390C 80062D0C 01435821 */ addu $t3, $t2, $v1 +/* 063910 80062D10 916C000B */ lbu $t4, 0xb($t3) +/* 063914 80062D14 00000000 */ nop +/* 063918 80062D18 29810040 */ slti $at, $t4, 0x40 +/* 06391C 80062D1C 14200003 */ bnez $at, .L80062D2C +/* 063920 80062D20 00000000 */ nop +/* 063924 80062D24 10000002 */ b .L80062D30 +/* 063928 80062D28 A20D0035 */ sb $t5, 0x35($s0) +.L80062D2C: +/* 06392C 80062D2C A2000035 */ sb $zero, 0x35($s0) +.L80062D30: +/* 063930 80062D30 8CA20004 */ lw $v0, 4($a1) +/* 063934 80062D34 00000000 */ nop +/* 063938 80062D38 904E0004 */ lbu $t6, 4($v0) +/* 06393C 80062D3C 80480005 */ lb $t0, 5($v0) +/* 063940 80062D40 022E7823 */ subu $t7, $s1, $t6 +/* 063944 80062D44 000FC880 */ sll $t9, $t7, 2 +/* 063948 80062D48 032FC823 */ subu $t9, $t9, $t7 +/* 06394C 80062D4C 0019C8C0 */ sll $t9, $t9, 3 +/* 063950 80062D50 032FC821 */ addu $t9, $t9, $t7 +/* 063954 80062D54 0019C880 */ sll $t9, $t9, 2 +/* 063958 80062D58 03282021 */ addu $a0, $t9, $t0 +/* 06395C 80062D5C 00044C00 */ sll $t1, $a0, 0x10 +/* 063960 80062D60 00092403 */ sra $a0, $t1, 0x10 +/* 063964 80062D64 0C032678 */ jal func_800C99E0 +/* 063968 80062D68 AFA30058 */ sw $v1, 0x58($sp) +/* 06396C 80062D6C 8FA30058 */ lw $v1, 0x58($sp) +/* 063970 80062D70 E6000028 */ swc1 $f0, 0x28($s0) +/* 063974 80062D74 8FAA0090 */ lw $t2, 0x90($sp) +/* 063978 80062D78 3C0142FE */ li $at, 0x42FE0000 # 127.000000 +/* 06397C 80062D7C 8D4B0000 */ lw $t3, ($t2) +/* 063980 80062D80 44812000 */ mtc1 $at, $f4 +/* 063984 80062D84 916C000C */ lbu $t4, 0xc($t3) +/* 063988 80062D88 00000000 */ nop +/* 06398C 80062D8C A20C0030 */ sb $t4, 0x30($s0) +/* 063990 80062D90 8FAE0090 */ lw $t6, 0x90($sp) +/* 063994 80062D94 8E4D001C */ lw $t5, 0x1c($s2) +/* 063998 80062D98 8DCF0000 */ lw $t7, ($t6) +/* 06399C 80062D9C 00000000 */ nop +/* 0639A0 80062DA0 8DF90000 */ lw $t9, ($t7) +/* 0639A4 80062DA4 A2000037 */ sb $zero, 0x37($s0) +/* 0639A8 80062DA8 01B94021 */ addu $t0, $t5, $t9 +/* 0639AC 80062DAC AE080024 */ sw $t0, 0x24($s0) +/* 0639B0 80062DB0 8E490060 */ lw $t1, 0x60($s2) +/* 0639B4 80062DB4 00000000 */ nop +/* 0639B8 80062DB8 0123C021 */ addu $t8, $t1, $v1 +/* 0639BC 80062DBC 8F110000 */ lw $s1, ($t8) +/* 0639C0 80062DC0 E7A40084 */ swc1 $f4, 0x84($sp) +/* 0639C4 80062DC4 92260004 */ lbu $a2, 4($s1) +/* 0639C8 80062DC8 00000000 */ nop +/* 0639CC 80062DCC 10C0001C */ beqz $a2, .L80062E40 +/* 0639D0 80062DD0 00000000 */ nop +/* 0639D4 80062DD4 8E420074 */ lw $v0, 0x74($s2) +/* 0639D8 80062DD8 27A4007C */ addiu $a0, $sp, 0x7c +/* 0639DC 80062DDC 10400018 */ beqz $v0, .L80062E40 +/* 0639E0 80062DE0 27A50084 */ addiu $a1, $sp, 0x84 +/* 0639E4 80062DE4 922A0006 */ lbu $t2, 6($s1) +/* 0639E8 80062DE8 92270005 */ lbu $a3, 5($s1) +/* 0639EC 80062DEC AFAA0010 */ sw $t2, 0x10($sp) +/* 0639F0 80062DF0 922B0007 */ lbu $t3, 7($s1) +/* 0639F4 80062DF4 AFA30058 */ sw $v1, 0x58($sp) +/* 0639F8 80062DF8 0040F809 */ jalr $v0 +/* 0639FC 80062DFC AFAB0014 */ sw $t3, 0x14($sp) +/* 063A00 80062E00 8FA30058 */ lw $v1, 0x58($sp) +/* 063A04 80062E04 1040000E */ beqz $v0, .L80062E40 +/* 063A08 80062E08 240C0016 */ li $t4, 22 +/* 063A0C 80062E0C 8FAE007C */ lw $t6, 0x7c($sp) +/* 063A10 80062E10 A7AC00AC */ sh $t4, 0xac($sp) +/* 063A14 80062E14 AFB000B0 */ sw $s0, 0xb0($sp) +/* 063A18 80062E18 26440048 */ addiu $a0, $s2, 0x48 +/* 063A1C 80062E1C 27A500AC */ addiu $a1, $sp, 0xac +/* 063A20 80062E20 00403025 */ move $a2, $v0 +/* 063A24 80062E24 AFA30058 */ sw $v1, 0x58($sp) +/* 063A28 80062E28 0C03246B */ jal func_800C91AC +/* 063A2C 80062E2C AFAE00B4 */ sw $t6, 0xb4($sp) +/* 063A30 80062E30 920F0037 */ lbu $t7, 0x37($s0) +/* 063A34 80062E34 8FA30058 */ lw $v1, 0x58($sp) +/* 063A38 80062E38 35ED0001 */ ori $t5, $t7, 1 +/* 063A3C 80062E3C A20D0037 */ sb $t5, 0x37($s0) +.L80062E40: +/* 063A40 80062E40 4459F800 */ cfc1 $t9, $31 +/* 063A44 80062E44 24080001 */ li $t0, 1 +/* 063A48 80062E48 44C8F800 */ ctc1 $t0, $31 +/* 063A4C 80062E4C C7A60084 */ lwc1 $f6, 0x84($sp) +/* 063A50 80062E50 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 063A54 80062E54 46003224 */ cvt.w.s $f8, $f6 +/* 063A58 80062E58 26490048 */ addiu $t1, $s2, 0x48 +/* 063A5C 80062E5C 4448F800 */ cfc1 $t0, $31 +/* 063A60 80062E60 00000000 */ nop +/* 063A64 80062E64 31080078 */ andi $t0, $t0, 0x78 +/* 063A68 80062E68 11000012 */ beqz $t0, .L80062EB4 +/* 063A6C 80062E6C 00000000 */ nop +/* 063A70 80062E70 44814000 */ mtc1 $at, $f8 +/* 063A74 80062E74 24080001 */ li $t0, 1 +/* 063A78 80062E78 46083201 */ sub.s $f8, $f6, $f8 +/* 063A7C 80062E7C 3C018000 */ lui $at, 0x8000 +/* 063A80 80062E80 44C8F800 */ ctc1 $t0, $31 +/* 063A84 80062E84 00000000 */ nop +/* 063A88 80062E88 46004224 */ cvt.w.s $f8, $f8 +/* 063A8C 80062E8C 4448F800 */ cfc1 $t0, $31 +/* 063A90 80062E90 00000000 */ nop +/* 063A94 80062E94 31080078 */ andi $t0, $t0, 0x78 +/* 063A98 80062E98 15000004 */ bnez $t0, .L80062EAC +/* 063A9C 80062E9C 00000000 */ nop +/* 063AA0 80062EA0 44084000 */ mfc1 $t0, $f8 +/* 063AA4 80062EA4 10000007 */ b .L80062EC4 +/* 063AA8 80062EA8 01014025 */ or $t0, $t0, $at +.L80062EAC: +/* 063AAC 80062EAC 10000005 */ b .L80062EC4 +/* 063AB0 80062EB0 2408FFFF */ li $t0, -1 +.L80062EB4: +/* 063AB4 80062EB4 44084000 */ mfc1 $t0, $f8 +/* 063AB8 80062EB8 00000000 */ nop +/* 063ABC 80062EBC 0500FFFB */ bltz $t0, .L80062EAC +/* 063AC0 80062EC0 00000000 */ nop +.L80062EC4: +/* 063AC4 80062EC4 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 063AC8 80062EC8 44815000 */ mtc1 $at, $f10 +/* 063ACC 80062ECC A2080036 */ sb $t0, 0x36($s0) +/* 063AD0 80062ED0 E7AA0084 */ swc1 $f10, 0x84($sp) +/* 063AD4 80062ED4 92260008 */ lbu $a2, 8($s1) +/* 063AD8 80062ED8 44D9F800 */ ctc1 $t9, $31 +/* 063ADC 80062EDC 10C0001E */ beqz $a2, .L80062F58 +/* 063AE0 80062EE0 AFA9004C */ sw $t1, 0x4c($sp) +/* 063AE4 80062EE4 8E420074 */ lw $v0, 0x74($s2) +/* 063AE8 80062EE8 27A4007C */ addiu $a0, $sp, 0x7c +/* 063AEC 80062EEC 1040001A */ beqz $v0, .L80062F58 +/* 063AF0 80062EF0 27A50084 */ addiu $a1, $sp, 0x84 +/* 063AF4 80062EF4 9238000A */ lbu $t8, 0xa($s1) +/* 063AF8 80062EF8 92270009 */ lbu $a3, 9($s1) +/* 063AFC 80062EFC AFB80010 */ sw $t8, 0x10($sp) +/* 063B00 80062F00 922A000B */ lbu $t2, 0xb($s1) +/* 063B04 80062F04 AFA30058 */ sw $v1, 0x58($sp) +/* 063B08 80062F08 0040F809 */ jalr $v0 +/* 063B0C 80062F0C AFAA0014 */ sw $t2, 0x14($sp) +/* 063B10 80062F10 8FA30058 */ lw $v1, 0x58($sp) +/* 063B14 80062F14 10400010 */ beqz $v0, .L80062F58 +/* 063B18 80062F18 240B0017 */ li $t3, 23 +/* 063B1C 80062F1C 8FAC007C */ lw $t4, 0x7c($sp) +/* 063B20 80062F20 93AE00CB */ lbu $t6, 0xcb($sp) +/* 063B24 80062F24 8FA4004C */ lw $a0, 0x4c($sp) +/* 063B28 80062F28 A7AB00AC */ sh $t3, 0xac($sp) +/* 063B2C 80062F2C AFB000B0 */ sw $s0, 0xb0($sp) +/* 063B30 80062F30 27A500AC */ addiu $a1, $sp, 0xac +/* 063B34 80062F34 00403025 */ move $a2, $v0 +/* 063B38 80062F38 AFA30058 */ sw $v1, 0x58($sp) +/* 063B3C 80062F3C AFAC00B4 */ sw $t4, 0xb4($sp) +/* 063B40 80062F40 0C03246B */ jal func_800C91AC +/* 063B44 80062F44 A3AE00B8 */ sb $t6, 0xb8($sp) +/* 063B48 80062F48 920F0037 */ lbu $t7, 0x37($s0) +/* 063B4C 80062F4C 8FA30058 */ lw $v1, 0x58($sp) +/* 063B50 80062F50 35ED0002 */ ori $t5, $t7, 2 +/* 063B54 80062F54 A20D0037 */ sb $t5, 0x37($s0) +.L80062F58: +/* 063B58 80062F58 C7B00084 */ lwc1 $f16, 0x84($sp) +/* 063B5C 80062F5C C6040028 */ lwc1 $f4, 0x28($s0) +/* 063B60 80062F60 E610002C */ swc1 $f16, 0x2c($s0) +/* 063B64 80062F64 8E590060 */ lw $t9, 0x60($s2) +/* 063B68 80062F68 C608002C */ lwc1 $f8, 0x2c($s0) +/* 063B6C 80062F6C 03231021 */ addu $v0, $t9, $v1 +/* 063B70 80062F70 C452000C */ lwc1 $f18, 0xc($v0) +/* 063B74 80062F74 02002025 */ move $a0, $s0 +/* 063B78 80062F78 46049182 */ mul.s $f6, $f18, $f4 +/* 063B7C 80062F7C 02402825 */ move $a1, $s2 +/* 063B80 80062F80 46083282 */ mul.s $f10, $f6, $f8 +/* 063B84 80062F84 E7AA0088 */ swc1 $f10, 0x88($sp) +/* 063B88 80062F88 9051000A */ lbu $s1, 0xa($v0) +/* 063B8C 80062F8C 0C002AAB */ jal func_8000AAAC +/* 063B90 80062F90 00000000 */ nop +/* 063B94 80062F94 A3A200A3 */ sb $v0, 0xa3($sp) +/* 063B98 80062F98 02002025 */ move $a0, $s0 +/* 063B9C 80062F9C 0C002A7E */ jal func_8000A9F8 +/* 063BA0 80062FA0 02402825 */ move $a1, $s2 +/* 063BA4 80062FA4 8FA80090 */ lw $t0, 0x90($sp) +/* 063BA8 80062FA8 8E440014 */ lw $a0, 0x14($s2) +/* 063BAC 80062FAC 8D090000 */ lw $t1, ($t0) +/* 063BB0 80062FB0 8D060008 */ lw $a2, 8($t0) +/* 063BB4 80062FB4 8D330000 */ lw $s3, ($t1) +/* 063BB8 80062FB8 93B800A3 */ lbu $t8, 0xa3($sp) +/* 063BBC 80062FBC 8FA50050 */ lw $a1, 0x50($sp) +/* 063BC0 80062FC0 8FA70088 */ lw $a3, 0x88($sp) +/* 063BC4 80062FC4 AFB10018 */ sw $s1, 0x18($sp) +/* 063BC8 80062FC8 AFA20010 */ sw $v0, 0x10($sp) +/* 063BCC 80062FCC AFB3001C */ sw $s3, 0x1c($sp) +/* 063BD0 80062FD0 0C01970E */ jal func_80065C38 +/* 063BD4 80062FD4 AFB80014 */ sw $t8, 0x14($sp) +/* 063BD8 80062FD8 8FAB0050 */ lw $t3, 0x50($sp) +/* 063BDC 80062FDC 8FAC0090 */ lw $t4, 0x90($sp) +/* 063BE0 80062FE0 240A0006 */ li $t2, 6 +/* 063BE4 80062FE4 A7AA00AC */ sh $t2, 0xac($sp) +/* 063BE8 80062FE8 AFAB00B0 */ sw $t3, 0xb0($sp) +/* 063BEC 80062FEC 8D8E0000 */ lw $t6, ($t4) +/* 063BF0 80062FF0 8FA4004C */ lw $a0, 0x4c($sp) +/* 063BF4 80062FF4 91CF000D */ lbu $t7, 0xd($t6) +/* 063BF8 80062FF8 27A500AC */ addiu $a1, $sp, 0xac +/* 063BFC 80062FFC A3AF00B8 */ sb $t7, 0xb8($sp) +/* 063C00 80063000 8D8D0000 */ lw $t5, ($t4) +/* 063C04 80063004 02603025 */ move $a2, $s3 +/* 063C08 80063008 8DB90004 */ lw $t9, 4($t5) +/* 063C0C 8006300C 0C03246B */ jal func_800C91AC +/* 063C10 80063010 AFB900B4 */ sw $t9, 0xb4($sp) +/* 063C14 80063014 8FA200DC */ lw $v0, 0xdc($sp) +/* 063C18 80063018 24080015 */ li $t0, 21 +/* 063C1C 8006301C 8C49000C */ lw $t1, 0xc($v0) +/* 063C20 80063020 36980080 */ ori $t8, $s4, 0x80 +/* 063C24 80063024 112001E9 */ beqz $t1, .L800637CC +/* 063C28 80063028 24420004 */ addiu $v0, $v0, 4 +/* 063C2C 8006302C 93AA00CA */ lbu $t2, 0xca($sp) +/* 063C30 80063030 A7A800AC */ sh $t0, 0xac($sp) +/* 063C34 80063034 A3B800B4 */ sb $t8, 0xb4($sp) +/* 063C38 80063038 A3A000B6 */ sb $zero, 0xb6($sp) +/* 063C3C 8006303C A3AA00B5 */ sb $t2, 0xb5($sp) +/* 063C40 80063040 8C4E0008 */ lw $t6, 8($v0) +/* 063C44 80063044 8E4B0024 */ lw $t3, 0x24($s2) +/* 063C48 80063048 8FA4004C */ lw $a0, 0x4c($sp) +/* 063C4C 8006304C 016E0019 */ multu $t3, $t6 +/* 063C50 80063050 27A500AC */ addiu $a1, $sp, 0xac +/* 063C54 80063054 00003012 */ mflo $a2 +/* 063C58 80063058 0C03246B */ jal func_800C91AC +/* 063C5C 8006305C 00000000 */ nop +/* 063C60 80063060 100001DB */ b .L800637D0 +/* 063C64 80063064 8FBF003C */ lw $ra, 0x3c($sp) +/* 063C68 80063068 93A500CA */ lbu $a1, 0xca($sp) +.L8006306C: +/* 063C6C 8006306C 02402025 */ move $a0, $s2 +/* 063C70 80063070 0C002A13 */ jal func_8000A84C +/* 063C74 80063074 30E600FF */ andi $a2, $a3, 0xff +/* 063C78 80063078 104001D4 */ beqz $v0, .L800637CC +/* 063C7C 8006307C 00408025 */ move $s0, $v0 +/* 063C80 80063080 904F0035 */ lbu $t7, 0x35($v0) +/* 063C84 80063084 24110002 */ li $s1, 2 +/* 063C88 80063088 162F0004 */ bne $s1, $t7, .L8006309C +/* 063C8C 8006308C 240D0003 */ li $t5, 3 +/* 063C90 80063090 240C0004 */ li $t4, 4 +/* 063C94 80063094 100001CD */ b .L800637CC +/* 063C98 80063098 A04C0035 */ sb $t4, 0x35($v0) +.L8006309C: +/* 063C9C 8006309C 8E190020 */ lw $t9, 0x20($s0) +/* 063CA0 800630A0 A20D0035 */ sb $t5, 0x35($s0) +/* 063CA4 800630A4 8F290000 */ lw $t1, ($t9) +/* 063CA8 800630A8 02402025 */ move $a0, $s2 +/* 063CAC 800630AC 8D260008 */ lw $a2, 8($t1) +/* 063CB0 800630B0 0C002AC0 */ jal func_8000AB00 +/* 063CB4 800630B4 26050004 */ addiu $a1, $s0, 4 +/* 063CB8 800630B8 100001C5 */ b .L800637D0 +/* 063CBC 800630BC 8FBF003C */ lw $ra, 0x3c($sp) +/* 063CC0 800630C0 93A500CA */ lbu $a1, 0xca($sp) +/* 063CC4 800630C4 02402025 */ move $a0, $s2 +/* 063CC8 800630C8 0C002A13 */ jal func_8000A84C +/* 063CCC 800630CC 30E600FF */ andi $a2, $a3, 0xff +/* 063CD0 800630D0 104001BE */ beqz $v0, .L800637CC +/* 063CD4 800630D4 00408025 */ move $s0, $v0 +/* 063CD8 800630D8 A0530033 */ sb $s3, 0x33($v0) +/* 063CDC 800630DC 00402025 */ move $a0, $v0 +/* 063CE0 800630E0 0C002A7E */ jal func_8000A9F8 +/* 063CE4 800630E4 02402825 */ move $a1, $s2 +/* 063CE8 800630E8 00028C00 */ sll $s1, $v0, 0x10 +/* 063CEC 800630EC 00114403 */ sra $t0, $s1, 0x10 +/* 063CF0 800630F0 8E45001C */ lw $a1, 0x1c($s2) +/* 063CF4 800630F4 01008825 */ move $s1, $t0 +/* 063CF8 800630F8 0C002AA2 */ jal func_8000AA88 +/* 063CFC 800630FC 02002025 */ move $a0, $s0 +/* 063D00 80063100 00113400 */ sll $a2, $s1, 0x10 +/* 063D04 80063104 0006C403 */ sra $t8, $a2, 0x10 +/* 063D08 80063108 8E440014 */ lw $a0, 0x14($s2) +/* 063D0C 8006310C 03003025 */ move $a2, $t8 +/* 063D10 80063110 26050004 */ addiu $a1, $s0, 4 +/* 063D14 80063114 0C032594 */ jal func_800C9650 +/* 063D18 80063118 00403825 */ move $a3, $v0 +/* 063D1C 8006311C 100001AC */ b .L800637D0 +/* 063D20 80063120 8FBF003C */ lw $ra, 0x3c($sp) +/* 063D24 80063124 8E500064 */ lw $s0, 0x64($s2) +/* 063D28 80063128 00000000 */ nop +/* 063D2C 8006312C 120001A8 */ beqz $s0, .L800637D0 +/* 063D30 80063130 8FBF003C */ lw $ra, 0x3c($sp) +.L80063134: +/* 063D34 80063134 920A0031 */ lbu $t2, 0x31($s0) +/* 063D38 80063138 93AB00CA */ lbu $t3, 0xca($sp) +/* 063D3C 8006313C 168A0011 */ bne $s4, $t2, .L80063184 +/* 063D40 80063140 02002025 */ move $a0, $s0 +/* 063D44 80063144 A20B0033 */ sb $t3, 0x33($s0) +/* 063D48 80063148 0C002A7E */ jal func_8000A9F8 +/* 063D4C 8006314C 02402825 */ move $a1, $s2 +/* 063D50 80063150 00028C00 */ sll $s1, $v0, 0x10 +/* 063D54 80063154 00117403 */ sra $t6, $s1, 0x10 +/* 063D58 80063158 8E45001C */ lw $a1, 0x1c($s2) +/* 063D5C 8006315C 01C08825 */ move $s1, $t6 +/* 063D60 80063160 0C002AA2 */ jal func_8000AA88 +/* 063D64 80063164 02002025 */ move $a0, $s0 +/* 063D68 80063168 00113400 */ sll $a2, $s1, 0x10 +/* 063D6C 8006316C 00067C03 */ sra $t7, $a2, 0x10 +/* 063D70 80063170 8E440014 */ lw $a0, 0x14($s2) +/* 063D74 80063174 01E03025 */ move $a2, $t7 +/* 063D78 80063178 26050004 */ addiu $a1, $s0, 4 +/* 063D7C 8006317C 0C032594 */ jal func_800C9650 +/* 063D80 80063180 00403825 */ move $a3, $v0 +.L80063184: +/* 063D84 80063184 8E100000 */ lw $s0, ($s0) +/* 063D88 80063188 00000000 */ nop +/* 063D8C 8006318C 1600FFE9 */ bnez $s0, .L80063134 +/* 063D90 80063190 00000000 */ nop +/* 063D94 80063194 1000018E */ b .L800637D0 +/* 063D98 80063198 8FBF003C */ lw $ra, 0x3c($sp) +/* 063D9C 8006319C 93B100CA */ lbu $s1, 0xca($sp) +/* 063DA0 800631A0 24010007 */ li $at, 7 +/* 063DA4 800631A4 1221002E */ beq $s1, $at, .L80063260 +/* 063DA8 800631A8 00071880 */ sll $v1, $a3, 2 +/* 063DAC 800631AC 24010008 */ li $at, 8 +/* 063DB0 800631B0 12210087 */ beq $s1, $at, .L800633D0 +/* 063DB4 800631B4 00071880 */ sll $v1, $a3, 2 +/* 063DB8 800631B8 2401000A */ li $at, 10 +/* 063DBC 800631BC 1221000F */ beq $s1, $at, .L800631FC +/* 063DC0 800631C0 00076880 */ sll $t5, $a3, 2 +/* 063DC4 800631C4 24010010 */ li $at, 16 +/* 063DC8 800631C8 122100D5 */ beq $s1, $at, .L80063520 +/* 063DCC 800631CC 00075880 */ sll $t3, $a3, 2 +/* 063DD0 800631D0 24010040 */ li $at, 64 +/* 063DD4 800631D4 122100D8 */ beq $s1, $at, .L80063538 +/* 063DD8 800631D8 00076080 */ sll $t4, $a3, 2 +/* 063DDC 800631DC 2401005B */ li $at, 91 +/* 063DE0 800631E0 122100FF */ beq $s1, $at, .L800635E0 +/* 063DE4 800631E4 00077080 */ sll $t6, $a3, 2 +/* 063DE8 800631E8 2401005F */ li $at, 95 +/* 063DEC 800631EC 12210112 */ beq $s1, $at, .L80063638 +/* 063DF0 800631F0 00000000 */ nop +/* 063DF4 800631F4 10000176 */ b .L800637D0 +/* 063DF8 800631F8 8FBF003C */ lw $ra, 0x3c($sp) +.L800631FC: +/* 063DFC 800631FC 8E4C0060 */ lw $t4, 0x60($s2) +/* 063E00 80063200 01A76821 */ addu $t5, $t5, $a3 +/* 063E04 80063204 000D6880 */ sll $t5, $t5, 2 +/* 063E08 80063208 018DC821 */ addu $t9, $t4, $t5 +/* 063E0C 8006320C A3330007 */ sb $s3, 7($t9) +/* 063E10 80063210 8E500064 */ lw $s0, 0x64($s2) +/* 063E14 80063214 00000000 */ nop +/* 063E18 80063218 1200016D */ beqz $s0, .L800637D0 +/* 063E1C 8006321C 8FBF003C */ lw $ra, 0x3c($sp) +.L80063220: +/* 063E20 80063220 92090031 */ lbu $t1, 0x31($s0) +/* 063E24 80063224 02002025 */ move $a0, $s0 +/* 063E28 80063228 16890007 */ bne $s4, $t1, .L80063248 +/* 063E2C 8006322C 00000000 */ nop +/* 063E30 80063230 0C002AAB */ jal func_8000AAAC +/* 063E34 80063234 02402825 */ move $a1, $s2 +/* 063E38 80063238 8E440014 */ lw $a0, 0x14($s2) +/* 063E3C 8006323C 26050004 */ addiu $a1, $s0, 4 +/* 063E40 80063240 0C0196C8 */ jal func_80065B20 +/* 063E44 80063244 304600FF */ andi $a2, $v0, 0xff +.L80063248: +/* 063E48 80063248 8E100000 */ lw $s0, ($s0) +/* 063E4C 8006324C 00000000 */ nop +/* 063E50 80063250 1600FFF3 */ bnez $s0, .L80063220 +/* 063E54 80063254 00000000 */ nop +/* 063E58 80063258 1000015D */ b .L800637D0 +/* 063E5C 8006325C 8FBF003C */ lw $ra, 0x3c($sp) +.L80063260: +/* 063E60 80063260 8E480060 */ lw $t0, 0x60($s2) +/* 063E64 80063264 00671821 */ addu $v1, $v1, $a3 +/* 063E68 80063268 00031880 */ sll $v1, $v1, 2 +/* 063E6C 8006326C 0103C021 */ addu $t8, $t0, $v1 +/* 063E70 80063270 A3130011 */ sb $s3, 0x11($t8) +/* 063E74 80063274 8E4A0060 */ lw $t2, 0x60($s2) +/* 063E78 80063278 44933000 */ mtc1 $s3, $f6 +/* 063E7C 8006327C 01431021 */ addu $v0, $t2, $v1 +/* 063E80 80063280 904B0010 */ lbu $t3, 0x10($v0) +/* 063E84 80063284 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 063E88 80063288 448B8000 */ mtc1 $t3, $f16 +/* 063E8C 8006328C 05610004 */ bgez $t3, .L800632A0 +/* 063E90 80063290 468084A0 */ cvt.s.w $f18, $f16 +/* 063E94 80063294 44812000 */ mtc1 $at, $f4 +/* 063E98 80063298 00000000 */ nop +/* 063E9C 8006329C 46049480 */ add.s $f18, $f18, $f4 +.L800632A0: +/* 063EA0 800632A0 06610005 */ bgez $s3, .L800632B8 +/* 063EA4 800632A4 46803220 */ cvt.s.w $f8, $f6 +/* 063EA8 800632A8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 063EAC 800632AC 44815000 */ mtc1 $at, $f10 +/* 063EB0 800632B0 00000000 */ nop +/* 063EB4 800632B4 460A4200 */ add.s $f8, $f8, $f10 +.L800632B8: +/* 063EB8 800632B8 46089402 */ mul.s $f16, $f18, $f8 +/* 063EBC 800632BC 3C0142FE */ li $at, 0x42FE0000 # 127.000000 +/* 063EC0 800632C0 44812000 */ mtc1 $at, $f4 +/* 063EC4 800632C4 240F0001 */ li $t7, 1 +/* 063EC8 800632C8 46048183 */ div.s $f6, $f16, $f4 +/* 063ECC 800632CC 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 063ED0 800632D0 444EF800 */ cfc1 $t6, $31 +/* 063ED4 800632D4 44CFF800 */ ctc1 $t7, $31 +/* 063ED8 800632D8 00000000 */ nop +/* 063EDC 800632DC 460032A4 */ cvt.w.s $f10, $f6 +/* 063EE0 800632E0 444FF800 */ cfc1 $t7, $31 +/* 063EE4 800632E4 00000000 */ nop +/* 063EE8 800632E8 31EF0078 */ andi $t7, $t7, 0x78 +/* 063EEC 800632EC 11E00012 */ beqz $t7, .L80063338 +/* 063EF0 800632F0 00000000 */ nop +/* 063EF4 800632F4 44815000 */ mtc1 $at, $f10 +/* 063EF8 800632F8 240F0001 */ li $t7, 1 +/* 063EFC 800632FC 460A3281 */ sub.s $f10, $f6, $f10 +/* 063F00 80063300 3C018000 */ lui $at, 0x8000 +/* 063F04 80063304 44CFF800 */ ctc1 $t7, $31 +/* 063F08 80063308 00000000 */ nop +/* 063F0C 8006330C 460052A4 */ cvt.w.s $f10, $f10 +/* 063F10 80063310 444FF800 */ cfc1 $t7, $31 +/* 063F14 80063314 00000000 */ nop +/* 063F18 80063318 31EF0078 */ andi $t7, $t7, 0x78 +/* 063F1C 8006331C 15E00004 */ bnez $t7, .L80063330 +/* 063F20 80063320 00000000 */ nop +/* 063F24 80063324 440F5000 */ mfc1 $t7, $f10 +/* 063F28 80063328 10000007 */ b .L80063348 +/* 063F2C 8006332C 01E17825 */ or $t7, $t7, $at +.L80063330: +/* 063F30 80063330 10000005 */ b .L80063348 +/* 063F34 80063334 240FFFFF */ li $t7, -1 +.L80063338: +/* 063F38 80063338 440F5000 */ mfc1 $t7, $f10 +/* 063F3C 8006333C 00000000 */ nop +/* 063F40 80063340 05E0FFFB */ bltz $t7, .L80063330 +/* 063F44 80063344 00000000 */ nop +.L80063348: +/* 063F48 80063348 A04F0009 */ sb $t7, 9($v0) +/* 063F4C 8006334C 8E500064 */ lw $s0, 0x64($s2) +/* 063F50 80063350 44CEF800 */ ctc1 $t6, $31 +/* 063F54 80063354 1200011E */ beqz $s0, .L800637D0 +/* 063F58 80063358 8FBF003C */ lw $ra, 0x3c($sp) +.L8006335C: +/* 063F5C 8006335C 920C0031 */ lbu $t4, 0x31($s0) +/* 063F60 80063360 00000000 */ nop +/* 063F64 80063364 168C0014 */ bne $s4, $t4, .L800633B8 +/* 063F68 80063368 00000000 */ nop +/* 063F6C 8006336C 920D0034 */ lbu $t5, 0x34($s0) +/* 063F70 80063370 24010003 */ li $at, 3 +/* 063F74 80063374 11A10010 */ beq $t5, $at, .L800633B8 +/* 063F78 80063378 02002025 */ move $a0, $s0 +/* 063F7C 8006337C 0C002A7E */ jal func_8000A9F8 +/* 063F80 80063380 02402825 */ move $a1, $s2 +/* 063F84 80063384 00028C00 */ sll $s1, $v0, 0x10 +/* 063F88 80063388 0011CC03 */ sra $t9, $s1, 0x10 +/* 063F8C 8006338C 8E45001C */ lw $a1, 0x1c($s2) +/* 063F90 80063390 03208825 */ move $s1, $t9 +/* 063F94 80063394 0C002AA2 */ jal func_8000AA88 +/* 063F98 80063398 02002025 */ move $a0, $s0 +/* 063F9C 8006339C 00113400 */ sll $a2, $s1, 0x10 +/* 063FA0 800633A0 00064C03 */ sra $t1, $a2, 0x10 +/* 063FA4 800633A4 8E440014 */ lw $a0, 0x14($s2) +/* 063FA8 800633A8 01203025 */ move $a2, $t1 +/* 063FAC 800633AC 26050004 */ addiu $a1, $s0, 4 +/* 063FB0 800633B0 0C032594 */ jal func_800C9650 +/* 063FB4 800633B4 00403825 */ move $a3, $v0 +.L800633B8: +/* 063FB8 800633B8 8E100000 */ lw $s0, ($s0) +/* 063FBC 800633BC 00000000 */ nop +/* 063FC0 800633C0 1600FFE6 */ bnez $s0, .L8006335C +/* 063FC4 800633C4 00000000 */ nop +/* 063FC8 800633C8 10000101 */ b .L800637D0 +/* 063FCC 800633CC 8FBF003C */ lw $ra, 0x3c($sp) +.L800633D0: +/* 063FD0 800633D0 8E480060 */ lw $t0, 0x60($s2) +/* 063FD4 800633D4 00671821 */ addu $v1, $v1, $a3 +/* 063FD8 800633D8 00031880 */ sll $v1, $v1, 2 +/* 063FDC 800633DC 0103C021 */ addu $t8, $t0, $v1 +/* 063FE0 800633E0 A3130010 */ sb $s3, 0x10($t8) +/* 063FE4 800633E4 8E4A0060 */ lw $t2, 0x60($s2) +/* 063FE8 800633E8 3C0142FE */ li $at, 0x42FE0000 # 127.000000 +/* 063FEC 800633EC 01431021 */ addu $v0, $t2, $v1 +/* 063FF0 800633F0 904B0010 */ lbu $t3, 0x10($v0) +/* 063FF4 800633F4 904E0011 */ lbu $t6, 0x11($v0) +/* 063FF8 800633F8 44818000 */ mtc1 $at, $f16 +/* 063FFC 800633FC 016E0019 */ multu $t3, $t6 +/* 064000 80063400 240D0001 */ li $t5, 1 +/* 064004 80063404 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 064008 80063408 00007812 */ mflo $t7 +/* 06400C 8006340C 448F9000 */ mtc1 $t7, $f18 +/* 064010 80063410 00000000 */ nop +/* 064014 80063414 46809220 */ cvt.s.w $f8, $f18 +/* 064018 80063418 00000000 */ nop +/* 06401C 8006341C 46104103 */ div.s $f4, $f8, $f16 +/* 064020 80063420 444CF800 */ cfc1 $t4, $31 +/* 064024 80063424 44CDF800 */ ctc1 $t5, $31 +/* 064028 80063428 00000000 */ nop +/* 06402C 8006342C 460021A4 */ cvt.w.s $f6, $f4 +/* 064030 80063430 444DF800 */ cfc1 $t5, $31 +/* 064034 80063434 00000000 */ nop +/* 064038 80063438 31AD0078 */ andi $t5, $t5, 0x78 +/* 06403C 8006343C 11A00012 */ beqz $t5, .L80063488 +/* 064040 80063440 00000000 */ nop +/* 064044 80063444 44813000 */ mtc1 $at, $f6 +/* 064048 80063448 240D0001 */ li $t5, 1 +/* 06404C 8006344C 46062181 */ sub.s $f6, $f4, $f6 +/* 064050 80063450 3C018000 */ lui $at, 0x8000 +/* 064054 80063454 44CDF800 */ ctc1 $t5, $31 +/* 064058 80063458 00000000 */ nop +/* 06405C 8006345C 460031A4 */ cvt.w.s $f6, $f6 +/* 064060 80063460 444DF800 */ cfc1 $t5, $31 +/* 064064 80063464 00000000 */ nop +/* 064068 80063468 31AD0078 */ andi $t5, $t5, 0x78 +/* 06406C 8006346C 15A00004 */ bnez $t5, .L80063480 +/* 064070 80063470 00000000 */ nop +/* 064074 80063474 440D3000 */ mfc1 $t5, $f6 +/* 064078 80063478 10000007 */ b .L80063498 +/* 06407C 8006347C 01A16825 */ or $t5, $t5, $at +.L80063480: +/* 064080 80063480 10000005 */ b .L80063498 +/* 064084 80063484 240DFFFF */ li $t5, -1 +.L80063488: +/* 064088 80063488 440D3000 */ mfc1 $t5, $f6 +/* 06408C 8006348C 00000000 */ nop +/* 064090 80063490 05A0FFFB */ bltz $t5, .L80063480 +/* 064094 80063494 00000000 */ nop +.L80063498: +/* 064098 80063498 A04D0009 */ sb $t5, 9($v0) +/* 06409C 8006349C 8E500064 */ lw $s0, 0x64($s2) +/* 0640A0 800634A0 44CCF800 */ ctc1 $t4, $31 +/* 0640A4 800634A4 120000CA */ beqz $s0, .L800637D0 +/* 0640A8 800634A8 8FBF003C */ lw $ra, 0x3c($sp) +.L800634AC: +/* 0640AC 800634AC 92190031 */ lbu $t9, 0x31($s0) +/* 0640B0 800634B0 00000000 */ nop +/* 0640B4 800634B4 16990014 */ bne $s4, $t9, .L80063508 +/* 0640B8 800634B8 00000000 */ nop +/* 0640BC 800634BC 92090034 */ lbu $t1, 0x34($s0) +/* 0640C0 800634C0 24010003 */ li $at, 3 +/* 0640C4 800634C4 11210010 */ beq $t1, $at, .L80063508 +/* 0640C8 800634C8 02002025 */ move $a0, $s0 +/* 0640CC 800634CC 0C002A7E */ jal func_8000A9F8 +/* 0640D0 800634D0 02402825 */ move $a1, $s2 +/* 0640D4 800634D4 00028C00 */ sll $s1, $v0, 0x10 +/* 0640D8 800634D8 00114403 */ sra $t0, $s1, 0x10 +/* 0640DC 800634DC 8E45001C */ lw $a1, 0x1c($s2) +/* 0640E0 800634E0 01008825 */ move $s1, $t0 +/* 0640E4 800634E4 0C002AA2 */ jal func_8000AA88 +/* 0640E8 800634E8 02002025 */ move $a0, $s0 +/* 0640EC 800634EC 00113400 */ sll $a2, $s1, 0x10 +/* 0640F0 800634F0 0006C403 */ sra $t8, $a2, 0x10 +/* 0640F4 800634F4 8E440014 */ lw $a0, 0x14($s2) +/* 0640F8 800634F8 03003025 */ move $a2, $t8 +/* 0640FC 800634FC 26050004 */ addiu $a1, $s0, 4 +/* 064100 80063500 0C032594 */ jal func_800C9650 +/* 064104 80063504 00403825 */ move $a3, $v0 +.L80063508: +/* 064108 80063508 8E100000 */ lw $s0, ($s0) +/* 06410C 8006350C 00000000 */ nop +/* 064110 80063510 1600FFE6 */ bnez $s0, .L800634AC +/* 064114 80063514 00000000 */ nop +/* 064118 80063518 100000AD */ b .L800637D0 +/* 06411C 8006351C 8FBF003C */ lw $ra, 0x3c($sp) +.L80063520: +/* 064120 80063520 8E4A0060 */ lw $t2, 0x60($s2) +/* 064124 80063524 01675821 */ addu $t3, $t3, $a3 +/* 064128 80063528 000B5880 */ sll $t3, $t3, 2 +/* 06412C 8006352C 014B7021 */ addu $t6, $t2, $t3 +/* 064130 80063530 100000A6 */ b .L800637CC +/* 064134 80063534 A1D30008 */ sb $s3, 8($t6) +.L80063538: +/* 064138 80063538 8E4F0060 */ lw $t7, 0x60($s2) +/* 06413C 8006353C 01876021 */ addu $t4, $t4, $a3 +/* 064140 80063540 000C6080 */ sll $t4, $t4, 2 +/* 064144 80063544 01EC6821 */ addu $t5, $t7, $t4 +/* 064148 80063548 A1B3000B */ sb $s3, 0xb($t5) +/* 06414C 8006354C 8E500064 */ lw $s0, 0x64($s2) +/* 064150 80063550 24110002 */ li $s1, 2 +/* 064154 80063554 1200009E */ beqz $s0, .L800637D0 +/* 064158 80063558 8FBF003C */ lw $ra, 0x3c($sp) +.L8006355C: +/* 06415C 8006355C 92190031 */ lbu $t9, 0x31($s0) +/* 064160 80063560 00000000 */ nop +/* 064164 80063564 16990018 */ bne $s4, $t9, .L800635C8 +/* 064168 80063568 00000000 */ nop +/* 06416C 8006356C 92020035 */ lbu $v0, 0x35($s0) +/* 064170 80063570 24010003 */ li $at, 3 +/* 064174 80063574 10410014 */ beq $v0, $at, .L800635C8 +/* 064178 80063578 2A610040 */ slti $at, $s3, 0x40 +/* 06417C 8006357C 14200005 */ bnez $at, .L80063594 +/* 064180 80063580 00000000 */ nop +/* 064184 80063584 14400010 */ bnez $v0, .L800635C8 +/* 064188 80063588 24090002 */ li $t1, 2 +/* 06418C 8006358C 1000000E */ b .L800635C8 +/* 064190 80063590 A2090035 */ sb $t1, 0x35($s0) +.L80063594: +/* 064194 80063594 16220003 */ bne $s1, $v0, .L800635A4 +/* 064198 80063598 24010004 */ li $at, 4 +/* 06419C 8006359C 1000000A */ b .L800635C8 +/* 0641A0 800635A0 A2000035 */ sb $zero, 0x35($s0) +.L800635A4: +/* 0641A4 800635A4 14410008 */ bne $v0, $at, .L800635C8 +/* 0641A8 800635A8 24080003 */ li $t0, 3 +/* 0641AC 800635AC 8E180020 */ lw $t8, 0x20($s0) +/* 0641B0 800635B0 A2080035 */ sb $t0, 0x35($s0) +/* 0641B4 800635B4 8F0A0000 */ lw $t2, ($t8) +/* 0641B8 800635B8 02402025 */ move $a0, $s2 +/* 0641BC 800635BC 8D460008 */ lw $a2, 8($t2) +/* 0641C0 800635C0 0C002AC0 */ jal func_8000AB00 +/* 0641C4 800635C4 26050004 */ addiu $a1, $s0, 4 +.L800635C8: +/* 0641C8 800635C8 8E100000 */ lw $s0, ($s0) +/* 0641CC 800635CC 00000000 */ nop +/* 0641D0 800635D0 1600FFE2 */ bnez $s0, .L8006355C +/* 0641D4 800635D4 00000000 */ nop +/* 0641D8 800635D8 1000007D */ b .L800637D0 +/* 0641DC 800635DC 8FBF003C */ lw $ra, 0x3c($sp) +.L800635E0: +/* 0641E0 800635E0 8E4B0060 */ lw $t3, 0x60($s2) +/* 0641E4 800635E4 01C77021 */ addu $t6, $t6, $a3 +/* 0641E8 800635E8 000E7080 */ sll $t6, $t6, 2 +/* 0641EC 800635EC 016E7821 */ addu $t7, $t3, $t6 +/* 0641F0 800635F0 A1F3000A */ sb $s3, 0xa($t7) +/* 0641F4 800635F4 8E500064 */ lw $s0, 0x64($s2) +/* 0641F8 800635F8 00000000 */ nop +/* 0641FC 800635FC 12000074 */ beqz $s0, .L800637D0 +/* 064200 80063600 8FBF003C */ lw $ra, 0x3c($sp) +.L80063604: +/* 064204 80063604 920C0031 */ lbu $t4, 0x31($s0) +/* 064208 80063608 26050004 */ addiu $a1, $s0, 4 +/* 06420C 8006360C 168C0004 */ bne $s4, $t4, .L80063620 +/* 064210 80063610 00000000 */ nop +/* 064214 80063614 8E440014 */ lw $a0, 0x14($s2) +/* 064218 80063618 0C032604 */ jal func_800C9810 +/* 06421C 8006361C 326600FF */ andi $a2, $s3, 0xff +.L80063620: +/* 064220 80063620 8E100000 */ lw $s0, ($s0) +/* 064224 80063624 00000000 */ nop +/* 064228 80063628 1600FFF6 */ bnez $s0, .L80063604 +/* 06422C 8006362C 00000000 */ nop +/* 064230 80063630 10000067 */ b .L800637D0 +/* 064234 80063634 8FBF003C */ lw $ra, 0x3c($sp) +.L80063638: +/* 064238 80063638 924D0034 */ lbu $t5, 0x34($s2) +/* 06423C 8006363C A2530036 */ sb $s3, 0x36($s2) +/* 064240 80063640 19A00062 */ blez $t5, .L800637CC +/* 064244 80063644 00008825 */ move $s1, $zero +/* 064248 80063648 0260A025 */ move $s4, $s3 +/* 06424C 8006364C AFA00054 */ sw $zero, 0x54($sp) +.L80063650: +/* 064250 80063650 8E590060 */ lw $t9, 0x60($s2) +/* 064254 80063654 8FA90054 */ lw $t1, 0x54($sp) +/* 064258 80063658 00000000 */ nop +/* 06425C 8006365C 03291021 */ addu $v0, $t9, $t1 +/* 064260 80063660 9048000A */ lbu $t0, 0xa($v0) +/* 064264 80063664 00000000 */ nop +/* 064268 80063668 0114082A */ slt $at, $t0, $s4 +/* 06426C 8006366C 10200012 */ beqz $at, .L800636B8 +/* 064270 80063670 8FAA0054 */ lw $t2, 0x54($sp) +/* 064274 80063674 A040000A */ sb $zero, 0xa($v0) +/* 064278 80063678 8E500064 */ lw $s0, 0x64($s2) +/* 06427C 8006367C 00000000 */ nop +/* 064280 80063680 1200000D */ beqz $s0, .L800636B8 +/* 064284 80063684 8FAA0054 */ lw $t2, 0x54($sp) +.L80063688: +/* 064288 80063688 92180031 */ lbu $t8, 0x31($s0) +/* 06428C 8006368C 26050004 */ addiu $a1, $s0, 4 +/* 064290 80063690 16380004 */ bne $s1, $t8, .L800636A4 +/* 064294 80063694 00000000 */ nop +/* 064298 80063698 8E440014 */ lw $a0, 0x14($s2) +/* 06429C 8006369C 0C032604 */ jal func_800C9810 +/* 0642A0 800636A0 326600FF */ andi $a2, $s3, 0xff +.L800636A4: +/* 0642A4 800636A4 8E100000 */ lw $s0, ($s0) +/* 0642A8 800636A8 00000000 */ nop +/* 0642AC 800636AC 1600FFF6 */ bnez $s0, .L80063688 +/* 0642B0 800636B0 00000000 */ nop +/* 0642B4 800636B4 8FAA0054 */ lw $t2, 0x54($sp) +.L800636B8: +/* 0642B8 800636B8 26310001 */ addiu $s1, $s1, 1 +/* 0642BC 800636BC 254B0014 */ addiu $t3, $t2, 0x14 +/* 0642C0 800636C0 AFAB0054 */ sw $t3, 0x54($sp) +/* 0642C4 800636C4 924E0034 */ lbu $t6, 0x34($s2) +/* 0642C8 800636C8 00000000 */ nop +/* 0642CC 800636CC 022E082A */ slt $at, $s1, $t6 +/* 0642D0 800636D0 1420FFDF */ bnez $at, .L80063650 +/* 0642D4 800636D4 00000000 */ nop +/* 0642D8 800636D8 1000003D */ b .L800637D0 +/* 0642DC 800636DC 8FBF003C */ lw $ra, 0x3c($sp) +/* 0642E0 800636E0 8E420020 */ lw $v0, 0x20($s2) +/* 0642E4 800636E4 93AF00CA */ lbu $t7, 0xca($sp) +/* 0642E8 800636E8 844C0000 */ lh $t4, ($v0) +/* 0642EC 800636EC 000F6880 */ sll $t5, $t7, 2 +/* 0642F0 800636F0 01EC082A */ slt $at, $t7, $t4 +/* 0642F4 800636F4 10200035 */ beqz $at, .L800637CC +/* 0642F8 800636F8 004DC821 */ addu $t9, $v0, $t5 +/* 0642FC 800636FC 8F25000C */ lw $a1, 0xc($t9) +/* 064300 80063700 02402025 */ move $a0, $s2 +/* 064304 80063704 0C002B66 */ jal func_8000AD98 +/* 064308 80063708 02803025 */ move $a2, $s4 +/* 06430C 8006370C 10000030 */ b .L800637D0 +/* 064310 80063710 8FBF003C */ lw $ra, 0x3c($sp) +/* 064314 80063714 00071880 */ sll $v1, $a3, 2 +/* 064318 80063718 8E4B0060 */ lw $t3, 0x60($s2) +/* 06431C 8006371C 00671821 */ addu $v1, $v1, $a3 +/* 064320 80063720 93A800CA */ lbu $t0, 0xca($sp) +/* 064324 80063724 00031880 */ sll $v1, $v1, 2 +/* 064328 80063728 001349C0 */ sll $t1, $s3, 7 +/* 06432C 8006372C 01637021 */ addu $t6, $t3, $v1 +/* 064330 80063730 85CC0004 */ lh $t4, 4($t6) +/* 064334 80063734 0128C021 */ addu $t8, $t1, $t0 +/* 064338 80063738 270AE000 */ addiu $t2, $t8, -0x2000 +/* 06433C 8006373C 018A0019 */ multu $t4, $t2 +/* 064340 80063740 AFA30058 */ sw $v1, 0x58($sp) +/* 064344 80063744 00002012 */ mflo $a0 +/* 064348 80063748 04810003 */ bgez $a0, .L80063758 +/* 06434C 8006374C 00047B43 */ sra $t7, $a0, 0xd +/* 064350 80063750 24811FFF */ addiu $at, $a0, 0x1fff +/* 064354 80063754 00017B43 */ sra $t7, $at, 0xd +.L80063758: +/* 064358 80063758 0C032678 */ jal func_800C99E0 +/* 06435C 8006375C 01E02025 */ move $a0, $t7 +/* 064360 80063760 E7A00068 */ swc1 $f0, 0x68($sp) +/* 064364 80063764 8FA30058 */ lw $v1, 0x58($sp) +/* 064368 80063768 8E4D0060 */ lw $t5, 0x60($s2) +/* 06436C 8006376C 00000000 */ nop +/* 064370 80063770 01A3C821 */ addu $t9, $t5, $v1 +/* 064374 80063774 E720000C */ swc1 $f0, 0xc($t9) +/* 064378 80063778 8E500064 */ lw $s0, 0x64($s2) +/* 06437C 8006377C 00000000 */ nop +/* 064380 80063780 12000013 */ beqz $s0, .L800637D0 +/* 064384 80063784 8FBF003C */ lw $ra, 0x3c($sp) +.L80063788: +/* 064388 80063788 92090031 */ lbu $t1, 0x31($s0) +/* 06438C 8006378C C7B20068 */ lwc1 $f18, 0x68($sp) +/* 064390 80063790 1689000A */ bne $s4, $t1, .L800637BC +/* 064394 80063794 00000000 */ nop +/* 064398 80063798 C60A0028 */ lwc1 $f10, 0x28($s0) +/* 06439C 8006379C C610002C */ lwc1 $f16, 0x2c($s0) +/* 0643A0 800637A0 46125202 */ mul.s $f8, $f10, $f18 +/* 0643A4 800637A4 8E440014 */ lw $a0, 0x14($s2) +/* 0643A8 800637A8 26050004 */ addiu $a1, $s0, 4 +/* 0643AC 800637AC 46104102 */ mul.s $f4, $f8, $f16 +/* 0643B0 800637B0 44062000 */ mfc1 $a2, $f4 +/* 0643B4 800637B4 0C0325E0 */ jal func_800C9780 +/* 0643B8 800637B8 00000000 */ nop +.L800637BC: +/* 0643BC 800637BC 8E100000 */ lw $s0, ($s0) +/* 0643C0 800637C0 00000000 */ nop +/* 0643C4 800637C4 1600FFF0 */ bnez $s0, .L80063788 +/* 0643C8 800637C8 00000000 */ nop +.L800637CC: +/* 0643CC 800637CC 8FBF003C */ lw $ra, 0x3c($sp) +.L800637D0: +/* 0643D0 800637D0 8FB00028 */ lw $s0, 0x28($sp) +/* 0643D4 800637D4 8FB1002C */ lw $s1, 0x2c($sp) +/* 0643D8 800637D8 8FB20030 */ lw $s2, 0x30($sp) +/* 0643DC 800637DC 8FB30034 */ lw $s3, 0x34($sp) +/* 0643E0 800637E0 8FB40038 */ lw $s4, 0x38($sp) +/* 0643E4 800637E4 03E00008 */ jr $ra +/* 0643E8 800637E8 27BD00D8 */ addiu $sp, $sp, 0xd8 + diff --git a/asm/non_matchings/unknown_061D30/func_800637EC.s b/asm/non_matchings/unknown_061D30/func_800637EC.s new file mode 100644 index 00000000..8cfb357f --- /dev/null +++ b/asm/non_matchings/unknown_061D30/func_800637EC.s @@ -0,0 +1,114 @@ +glabel func_800637EC +/* 0643EC 800637EC 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0643F0 800637F0 AFBF0034 */ sw $ra, 0x34($sp) +/* 0643F4 800637F4 AFB60030 */ sw $s6, 0x30($sp) +/* 0643F8 800637F8 AFB5002C */ sw $s5, 0x2c($sp) +/* 0643FC 800637FC AFB40028 */ sw $s4, 0x28($sp) +/* 064400 80063800 AFB30024 */ sw $s3, 0x24($sp) +/* 064404 80063804 AFB20020 */ sw $s2, 0x20($sp) +/* 064408 80063808 AFB1001C */ sw $s1, 0x1c($sp) +/* 06440C 8006380C AFB00018 */ sw $s0, 0x18($sp) +/* 064410 80063810 90AE0008 */ lbu $t6, 8($a1) +/* 064414 80063814 240100FF */ li $at, 255 +/* 064418 80063818 0080A825 */ move $s5, $a0 +/* 06441C 8006381C 00009025 */ move $s2, $zero +/* 064420 80063820 15C1004E */ bne $t6, $at, .L8006395C +/* 064424 80063824 00009825 */ move $s3, $zero +/* 064428 80063828 90AF0009 */ lbu $t7, 9($a1) +/* 06442C 8006382C 24010051 */ li $at, 81 +/* 064430 80063830 15E1004A */ bne $t7, $at, .L8006395C +/* 064434 80063834 24A20004 */ addiu $v0, $a1, 4 +/* 064438 80063838 90580007 */ lbu $t8, 7($v0) +/* 06443C 8006383C 90480008 */ lbu $t0, 8($v0) +/* 064440 80063840 904B0009 */ lbu $t3, 9($v0) +/* 064444 80063844 0018CC00 */ sll $t9, $t8, 0x10 +/* 064448 80063848 00084A00 */ sll $t1, $t0, 8 +/* 06444C 8006384C 03295025 */ or $t2, $t9, $t1 +/* 064450 80063850 014B1825 */ or $v1, $t2, $t3 +/* 064454 80063854 44832000 */ mtc1 $v1, $f4 +/* 064458 80063858 8C960024 */ lw $s6, 0x24($a0) +/* 06445C 8006385C 46802120 */ cvt.s.w $f4, $f4 +/* 064460 80063860 44052000 */ mfc1 $a1, $f4 +/* 064464 80063864 0C018E8D */ jal func_80063A34 +/* 064468 80063868 00000000 */ nop +/* 06446C 8006386C 8EB00050 */ lw $s0, 0x50($s5) +/* 064470 80063870 00000000 */ nop +/* 064474 80063874 1200001D */ beqz $s0, .L800638EC +/* 064478 80063878 00000000 */ nop +/* 06447C 8006387C 24140015 */ li $s4, 21 +.L80063880: +/* 064480 80063880 8E0C0008 */ lw $t4, 8($s0) +/* 064484 80063884 860D000C */ lh $t5, 0xc($s0) +/* 064488 80063888 8E110000 */ lw $s1, ($s0) +/* 06448C 8006388C 168D0015 */ bne $s4, $t5, .L800638E4 +/* 064490 80063890 024C9021 */ addu $s2, $s2, $t4 +/* 064494 80063894 0C0321D8 */ jal func_800C8760 +/* 064498 80063898 02002025 */ move $a0, $s0 +/* 06449C 8006389C 12600006 */ beqz $s3, .L800638B8 +/* 0644A0 800638A0 00000000 */ nop +/* 0644A4 800638A4 02002025 */ move $a0, $s0 +/* 0644A8 800638A8 0C0321E4 */ jal func_800C8790 +/* 0644AC 800638AC 02602825 */ move $a1, $s3 +/* 0644B0 800638B0 10000004 */ b .L800638C4 +/* 0644B4 800638B4 00000000 */ nop +.L800638B8: +/* 0644B8 800638B8 AE000000 */ sw $zero, ($s0) +/* 0644BC 800638BC AE000004 */ sw $zero, 4($s0) +/* 0644C0 800638C0 02009825 */ move $s3, $s0 +.L800638C4: +/* 0644C4 800638C4 12200006 */ beqz $s1, .L800638E0 +/* 0644C8 800638C8 02401825 */ move $v1, $s2 +/* 0644CC 800638CC 8E020008 */ lw $v0, 8($s0) +/* 0644D0 800638D0 8E2E0008 */ lw $t6, 8($s1) +/* 0644D4 800638D4 02429023 */ subu $s2, $s2, $v0 +/* 0644D8 800638D8 01C27821 */ addu $t7, $t6, $v0 +/* 0644DC 800638DC AE2F0008 */ sw $t7, 8($s1) +.L800638E0: +/* 0644E0 800638E0 AE030008 */ sw $v1, 8($s0) +.L800638E4: +/* 0644E4 800638E4 1620FFE6 */ bnez $s1, .L80063880 +/* 0644E8 800638E8 02208025 */ move $s0, $s1 +.L800638EC: +/* 0644EC 800638EC 1260001B */ beqz $s3, .L8006395C +/* 0644F0 800638F0 02608025 */ move $s0, $s3 +/* 0644F4 800638F4 26B20048 */ addiu $s2, $s5, 0x48 +.L800638F8: +/* 0644F8 800638F8 8E180008 */ lw $t8, 8($s0) +/* 0644FC 800638FC 8EA80024 */ lw $t0, 0x24($s5) +/* 064500 80063900 0316001A */ div $zero, $t8, $s6 +/* 064504 80063904 8E110000 */ lw $s1, ($s0) +/* 064508 80063908 16C00002 */ bnez $s6, .L80063914 +/* 06450C 8006390C 00000000 */ nop +/* 064510 80063910 0007000D */ break 7 +.L80063914: +/* 064514 80063914 2401FFFF */ li $at, -1 +/* 064518 80063918 16C10004 */ bne $s6, $at, .L8006392C +/* 06451C 8006391C 3C018000 */ lui $at, 0x8000 +/* 064520 80063920 17010002 */ bne $t8, $at, .L8006392C +/* 064524 80063924 00000000 */ nop +/* 064528 80063928 0006000D */ break 6 +.L8006392C: +/* 06452C 8006392C 02402025 */ move $a0, $s2 +/* 064530 80063930 02002825 */ move $a1, $s0 +/* 064534 80063934 00001012 */ mflo $v0 +/* 064538 80063938 00000000 */ nop +/* 06453C 8006393C 00000000 */ nop +/* 064540 80063940 01020019 */ multu $t0, $v0 +/* 064544 80063944 0000C812 */ mflo $t9 +/* 064548 80063948 AE190008 */ sw $t9, 8($s0) +/* 06454C 8006394C 0C018E61 */ jal func_80063984 +/* 064550 80063950 00000000 */ nop +/* 064554 80063954 1620FFE8 */ bnez $s1, .L800638F8 +/* 064558 80063958 02208025 */ move $s0, $s1 +.L8006395C: +/* 06455C 8006395C 8FBF0034 */ lw $ra, 0x34($sp) +/* 064560 80063960 8FB00018 */ lw $s0, 0x18($sp) +/* 064564 80063964 8FB1001C */ lw $s1, 0x1c($sp) +/* 064568 80063968 8FB20020 */ lw $s2, 0x20($sp) +/* 06456C 8006396C 8FB30024 */ lw $s3, 0x24($sp) +/* 064570 80063970 8FB40028 */ lw $s4, 0x28($sp) +/* 064574 80063974 8FB5002C */ lw $s5, 0x2c($sp) +/* 064578 80063978 8FB60030 */ lw $s6, 0x30($sp) +/* 06457C 8006397C 03E00008 */ jr $ra +/* 064580 80063980 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_061D30/func_80063984.s b/asm/non_matchings/unknown_061D30/func_80063984.s new file mode 100644 index 00000000..7260fb6c --- /dev/null +++ b/asm/non_matchings/unknown_061D30/func_80063984.s @@ -0,0 +1,51 @@ +glabel func_80063984 +/* 064584 80063984 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 064588 80063988 AFBF0014 */ sw $ra, 0x14($sp) +/* 06458C 8006398C AFA40020 */ sw $a0, 0x20($sp) +/* 064590 80063990 24040001 */ li $a0, 1 +/* 064594 80063994 0C03268C */ jal func_800C9A30 +/* 064598 80063998 AFA50024 */ sw $a1, 0x24($sp) +/* 06459C 8006399C 8FA30020 */ lw $v1, 0x20($sp) +/* 0645A0 800639A0 8FA70024 */ lw $a3, 0x24($sp) +/* 0645A4 800639A4 2401FFF8 */ li $at, -8 +/* 0645A8 800639A8 AFA2001C */ sw $v0, 0x1c($sp) +/* 0645AC 800639AC 1061001A */ beq $v1, $at, .L80063A18 +/* 0645B0 800639B0 24650008 */ addiu $a1, $v1, 8 +.L800639B4: +/* 0645B4 800639B4 8CA40000 */ lw $a0, ($a1) +/* 0645B8 800639B8 00000000 */ nop +/* 0645BC 800639BC 14800005 */ bnez $a0, .L800639D4 +/* 0645C0 800639C0 00000000 */ nop +/* 0645C4 800639C4 0C0321E4 */ jal func_800C8790 +/* 0645C8 800639C8 00E02025 */ move $a0, $a3 +/* 0645CC 800639CC 10000013 */ b .L80063A1C +/* 0645D0 800639D0 8FA4001C */ lw $a0, 0x1c($sp) +.L800639D4: +/* 0645D4 800639D4 8CE20008 */ lw $v0, 8($a3) +/* 0645D8 800639D8 8C830008 */ lw $v1, 8($a0) +/* 0645DC 800639DC 00000000 */ nop +/* 0645E0 800639E0 0043082A */ slt $at, $v0, $v1 +/* 0645E4 800639E4 10200007 */ beqz $at, .L80063A04 +/* 0645E8 800639E8 00437823 */ subu $t7, $v0, $v1 +/* 0645EC 800639EC 00627023 */ subu $t6, $v1, $v0 +/* 0645F0 800639F0 AC8E0008 */ sw $t6, 8($a0) +/* 0645F4 800639F4 0C0321E4 */ jal func_800C8790 +/* 0645F8 800639F8 00E02025 */ move $a0, $a3 +/* 0645FC 800639FC 10000007 */ b .L80063A1C +/* 064600 80063A00 8FA4001C */ lw $a0, 0x1c($sp) +.L80063A04: +/* 064604 80063A04 ACEF0008 */ sw $t7, 8($a3) +/* 064608 80063A08 8CA50000 */ lw $a1, ($a1) +/* 06460C 80063A0C 00000000 */ nop +/* 064610 80063A10 14A0FFE8 */ bnez $a1, .L800639B4 +/* 064614 80063A14 00000000 */ nop +.L80063A18: +/* 064618 80063A18 8FA4001C */ lw $a0, 0x1c($sp) +.L80063A1C: +/* 06461C 80063A1C 0C03268C */ jal func_800C9A30 +/* 064620 80063A20 00000000 */ nop +/* 064624 80063A24 8FBF0014 */ lw $ra, 0x14($sp) +/* 064628 80063A28 27BD0020 */ addiu $sp, $sp, 0x20 +/* 06462C 80063A2C 03E00008 */ jr $ra +/* 064630 80063A30 00000000 */ nop + diff --git a/asm/non_matchings/unknown_061D30/func_80063A34.s b/asm/non_matchings/unknown_061D30/func_80063A34.s new file mode 100644 index 00000000..e60b689e --- /dev/null +++ b/asm/non_matchings/unknown_061D30/func_80063A34.s @@ -0,0 +1,28 @@ +glabel func_80063A34 +/* 064634 80063A34 8C820018 */ lw $v0, 0x18($a0) +/* 064638 80063A38 44856000 */ mtc1 $a1, $f12 +/* 06463C 80063A3C 1040000F */ beqz $v0, .L80063A7C +/* 064640 80063A40 241801E8 */ li $t8, 488 +/* 064644 80063A44 C4440008 */ lwc1 $f4, 8($v0) +/* 064648 80063A48 00000000 */ nop +/* 06464C 80063A4C 46046182 */ mul.s $f6, $f12, $f4 +/* 064650 80063A50 444EF800 */ cfc1 $t6, $31 +/* 064654 80063A54 00000000 */ nop +/* 064658 80063A58 35C10003 */ ori $at, $t6, 3 +/* 06465C 80063A5C 38210002 */ xori $at, $at, 2 +/* 064660 80063A60 44C1F800 */ ctc1 $at, $31 +/* 064664 80063A64 00000000 */ nop +/* 064668 80063A68 46003224 */ cvt.w.s $f8, $f6 +/* 06466C 80063A6C 440F4000 */ mfc1 $t7, $f8 +/* 064670 80063A70 44CEF800 */ ctc1 $t6, $31 +/* 064674 80063A74 03E00008 */ jr $ra +/* 064678 80063A78 AC8F0024 */ sw $t7, 0x24($a0) + +.L80063A7C: +/* 06467C 80063A7C AC980024 */ sw $t8, 0x24($a0) +/* 064680 80063A80 03E00008 */ jr $ra +/* 064684 80063A84 00000000 */ nop + +/* 064688 80063A88 00000000 */ nop +/* 06468C 80063A8C 00000000 */ nop + diff --git a/asm/unknown_064690.s b/asm/non_matchings/unknown_064690/func_80063A90.s old mode 100755 new mode 100644 similarity index 85% rename from asm/unknown_064690.s rename to asm/non_matchings/unknown_064690/func_80063A90.s index bc8efb7f..765fb4f6 --- a/asm/unknown_064690.s +++ b/asm/non_matchings/unknown_064690/func_80063A90.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_80063A90 /* 064690 80063A90 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 064694 80063A94 AFBF0014 */ sw $ra, 0x14($sp) @@ -32,3 +24,4 @@ glabel func_80063A90 /* 0646E4 80063AE4 00000000 */ nop /* 0646E8 80063AE8 00000000 */ nop /* 0646EC 80063AEC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0646F0/func_80063AF0.s b/asm/non_matchings/unknown_0646F0/func_80063AF0.s new file mode 100644 index 00000000..0fc4040e --- /dev/null +++ b/asm/non_matchings/unknown_0646F0/func_80063AF0.s @@ -0,0 +1,23 @@ +glabel func_80063AF0 +/* 0646F0 80063AF0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0646F4 80063AF4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0646F8 80063AF8 AFA40028 */ sw $a0, 0x28($sp) +/* 0646FC 80063AFC AFA5002C */ sw $a1, 0x2c($sp) +/* 064700 80063B00 00A03825 */ move $a3, $a1 +/* 064704 80063B04 240E0002 */ li $t6, 2 +/* 064708 80063B08 240F00B0 */ li $t7, 176 +/* 06470C 80063B0C 2418006A */ li $t8, 106 +/* 064710 80063B10 A7AE0018 */ sh $t6, 0x18($sp) +/* 064714 80063B14 AFA0001C */ sw $zero, 0x1c($sp) +/* 064718 80063B18 A3AF0020 */ sb $t7, 0x20($sp) +/* 06471C 80063B1C A3B80021 */ sb $t8, 0x21($sp) +/* 064720 80063B20 A3A70022 */ sb $a3, 0x22($sp) +/* 064724 80063B24 27A50018 */ addiu $a1, $sp, 0x18 +/* 064728 80063B28 24840048 */ addiu $a0, $a0, 0x48 +/* 06472C 80063B2C 0C03246B */ jal func_800C91AC +/* 064730 80063B30 00003025 */ move $a2, $zero +/* 064734 80063B34 8FBF0014 */ lw $ra, 0x14($sp) +/* 064738 80063B38 27BD0028 */ addiu $sp, $sp, 0x28 +/* 06473C 80063B3C 03E00008 */ jr $ra +/* 064740 80063B40 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0646F0/func_80063B44.s b/asm/non_matchings/unknown_0646F0/func_80063B44.s new file mode 100644 index 00000000..15c2399c --- /dev/null +++ b/asm/non_matchings/unknown_0646F0/func_80063B44.s @@ -0,0 +1,26 @@ +glabel func_80063B44 +/* 064744 80063B44 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 064748 80063B48 AFBF0014 */ sw $ra, 0x14($sp) +/* 06474C 80063B4C AFA40028 */ sw $a0, 0x28($sp) +/* 064750 80063B50 AFA5002C */ sw $a1, 0x2c($sp) +/* 064754 80063B54 00A03825 */ move $a3, $a1 +/* 064758 80063B58 240E0002 */ li $t6, 2 +/* 06475C 80063B5C 240F00B0 */ li $t7, 176 +/* 064760 80063B60 2418006C */ li $t8, 108 +/* 064764 80063B64 A7AE0018 */ sh $t6, 0x18($sp) +/* 064768 80063B68 AFA0001C */ sw $zero, 0x1c($sp) +/* 06476C 80063B6C A3AF0020 */ sb $t7, 0x20($sp) +/* 064770 80063B70 A3B80021 */ sb $t8, 0x21($sp) +/* 064774 80063B74 A3A70022 */ sb $a3, 0x22($sp) +/* 064778 80063B78 27A50018 */ addiu $a1, $sp, 0x18 +/* 06477C 80063B7C 24840048 */ addiu $a0, $a0, 0x48 +/* 064780 80063B80 0C03246B */ jal func_800C91AC +/* 064784 80063B84 00003025 */ move $a2, $zero +/* 064788 80063B88 8FBF0014 */ lw $ra, 0x14($sp) +/* 06478C 80063B8C 27BD0028 */ addiu $sp, $sp, 0x28 +/* 064790 80063B90 03E00008 */ jr $ra +/* 064794 80063B94 00000000 */ nop + +/* 064798 80063B98 00000000 */ nop +/* 06479C 80063B9C 00000000 */ nop + diff --git a/asm/unknown_0647A0.s b/asm/non_matchings/unknown_0647A0/func_80063BA0.s old mode 100755 new mode 100644 similarity index 85% rename from asm/unknown_0647A0.s rename to asm/non_matchings/unknown_0647A0/func_80063BA0.s index 8fd1b09b..5778e800 --- a/asm/unknown_0647A0.s +++ b/asm/non_matchings/unknown_0647A0/func_80063BA0.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_80063BA0 /* 0647A0 80063BA0 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0647A4 80063BA4 AFA60030 */ sw $a2, 0x30($sp) @@ -32,3 +24,4 @@ glabel func_80063BA0 /* 0647F8 80063BF8 00000000 */ nop /* 0647FC 80063BFC 00000000 */ nop + diff --git a/asm/unknown_064800.s b/asm/non_matchings/unknown_064800/func_80063C00.s old mode 100755 new mode 100644 similarity index 74% rename from asm/unknown_064800.s rename to asm/non_matchings/unknown_064800/func_80063C00.s index 87642770..4436d253 --- a/asm/unknown_064800.s +++ b/asm/non_matchings/unknown_064800/func_80063C00.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_80063C00 /* 064800 80063C00 30AE00FF */ andi $t6, $a1, 0xff /* 064804 80063C04 AFA50004 */ sw $a1, 4($sp) @@ -19,3 +11,4 @@ glabel func_80063C00 /* 064824 80063C24 00000000 */ nop /* 064828 80063C28 00000000 */ nop /* 06482C 80063C2C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_064830/D_80063C30.s b/asm/non_matchings/unknown_064830/D_80063C30.s new file mode 100644 index 00000000..f58fea2f --- /dev/null +++ b/asm/non_matchings/unknown_064830/D_80063C30.s @@ -0,0 +1,231 @@ +glabel D_80063C30 +/* 064830 80063C30 27BDFF60 */ addiu $sp, $sp, -0xa0 +/* 064834 80063C34 AFB3002C */ sw $s3, 0x2c($sp) +/* 064838 80063C38 00809825 */ move $s3, $a0 +/* 06483C 80063C3C AFBF0044 */ sw $ra, 0x44($sp) +/* 064840 80063C40 AFBE0040 */ sw $fp, 0x40($sp) +/* 064844 80063C44 AFB7003C */ sw $s7, 0x3c($sp) +/* 064848 80063C48 AFB60038 */ sw $s6, 0x38($sp) +/* 06484C 80063C4C AFB50034 */ sw $s5, 0x34($sp) +/* 064850 80063C50 AFB40030 */ sw $s4, 0x30($sp) +/* 064854 80063C54 AFB20028 */ sw $s2, 0x28($sp) +/* 064858 80063C58 AFB10024 */ sw $s1, 0x24($sp) +/* 06485C 80063C5C AFB00020 */ sw $s0, 0x20($sp) +/* 064860 80063C60 8C840000 */ lw $a0, ($a0) +/* 064864 80063C64 8FAE00B0 */ lw $t6, 0xb0($sp) +/* 064868 80063C68 AFA0007C */ sw $zero, 0x7c($sp) +/* 06486C 80063C6C AFAE0010 */ sw $t6, 0x10($sp) +/* 064870 80063C70 8C990004 */ lw $t9, 4($a0) +/* 064874 80063C74 00C0B025 */ move $s6, $a2 +/* 064878 80063C78 0320F809 */ jalr $t9 +/* 06487C 80063C7C 00000000 */ nop +/* 064880 80063C80 3C0F800E */ lui $t7, %hi(D_800DCEB0) # $t7, 0x800e +/* 064884 80063C84 91EFCEB0 */ lbu $t7, %lo(D_800DCEB0)($t7) +/* 064888 80063C88 8FA3007C */ lw $v1, 0x7c($sp) +/* 06488C 80063C8C 15E00003 */ bnez $t7, .L80063C9C +/* 064890 80063C90 00408025 */ move $s0, $v0 +/* 064894 80063C94 100000B4 */ b .L80063F68 +/* 064898 80063C98 8FBF0044 */ lw $ra, 0x44($sp) +.L80063C9C: +/* 06489C 80063C9C 02001025 */ move $v0, $s0 +/* 0648A0 80063CA0 00168840 */ sll $s1, $s6, 1 +/* 0648A4 80063CA4 322BFFFF */ andi $t3, $s1, 0xffff +/* 0648A8 80063CA8 26080008 */ addiu $t0, $s0, 8 +/* 0648AC 80063CAC 3C180800 */ lui $t8, 0x800 +/* 0648B0 80063CB0 AC580000 */ sw $t8, ($v0) +/* 0648B4 80063CB4 AC4B0004 */ sw $t3, 4($v0) +/* 0648B8 80063CB8 3C0C0C00 */ lui $t4, (0x0C00DA83 >> 16) # lui $t4, 0xc00 +/* 0648BC 80063CBC 3C0D06C0 */ lui $t5, (0x06C006C0 >> 16) # lui $t5, 0x6c0 +/* 0648C0 80063CC0 35AD06C0 */ ori $t5, (0x06C006C0 & 0xFFFF) # ori $t5, $t5, 0x6c0 +/* 0648C4 80063CC4 358CDA83 */ ori $t4, (0x0C00DA83 & 0xFFFF) # ori $t4, $t4, 0xda83 +/* 0648C8 80063CC8 AD0C0000 */ sw $t4, ($t0) +/* 0648CC 80063CCC AD0D0004 */ sw $t5, 4($t0) +/* 0648D0 80063CD0 25090008 */ addiu $t1, $t0, 8 +/* 0648D4 80063CD4 3C0E0C00 */ lui $t6, (0x0C005A82 >> 16) # lui $t6, 0xc00 +/* 0648D8 80063CD8 3C190800 */ lui $t9, (0x080006C0 >> 16) # lui $t9, 0x800 +/* 0648DC 80063CDC 373906C0 */ ori $t9, (0x080006C0 & 0xFFFF) # ori $t9, $t9, 0x6c0 +/* 0648E0 80063CE0 35CE5A82 */ ori $t6, (0x0C005A82 & 0xFFFF) # ori $t6, $t6, 0x5a82 +/* 0648E4 80063CE4 AD2E0000 */ sw $t6, ($t1) +/* 0648E8 80063CE8 AD390004 */ sw $t9, 4($t1) +/* 0648EC 80063CEC 8E650018 */ lw $a1, 0x18($s3) +/* 0648F0 80063CF0 25300008 */ addiu $s0, $t1, 8 +/* 0648F4 80063CF4 0000A825 */ move $s5, $zero +/* 0648F8 80063CF8 24120140 */ li $s2, 320 +/* 0648FC 80063CFC AFB00010 */ sw $s0, 0x10($sp) +/* 064900 80063D00 AFAB0048 */ sw $t3, 0x48($sp) +/* 064904 80063D04 AFB10050 */ sw $s1, 0x50($sp) +/* 064908 80063D08 AFA3007C */ sw $v1, 0x7c($sp) +/* 06490C 80063D0C 02602025 */ move $a0, $s3 +/* 064910 80063D10 240606C0 */ li $a2, 1728 +/* 064914 80063D14 0C01918E */ jal func_80064638 +/* 064918 80063D18 02C03825 */ move $a3, $s6 +/* 06491C 80063D1C 8FA3007C */ lw $v1, 0x7c($sp) +/* 064920 80063D20 3C0F0200 */ lui $t7, (0x02000800 >> 16) # lui $t7, 0x200 +/* 064924 80063D24 35EF0800 */ ori $t7, (0x02000800 & 0xFFFF) # ori $t7, $t7, 0x800 +/* 064928 80063D28 AC4F0000 */ sw $t7, ($v0) +/* 06492C 80063D2C AC510004 */ sw $s1, 4($v0) +/* 064930 80063D30 92780024 */ lbu $t8, 0x24($s3) +/* 064934 80063D34 24500008 */ addiu $s0, $v0, 8 +/* 064938 80063D38 1B000076 */ blez $t8, .L80063F14 +/* 06493C 80063D3C 0000B825 */ move $s7, $zero +/* 064940 80063D40 8E620018 */ lw $v0, 0x18($s3) +/* 064944 80063D44 00000000 */ nop +.L80063D48: +/* 064948 80063D48 00176880 */ sll $t5, $s7, 2 +/* 06494C 80063D4C 8E6C0020 */ lw $t4, 0x20($s3) +/* 064950 80063D50 01B76821 */ addu $t5, $t5, $s7 +/* 064954 80063D54 000D68C0 */ sll $t5, $t5, 3 +/* 064958 80063D58 018D8821 */ addu $s1, $t4, $t5 +/* 06495C 80063D5C 8E2E0000 */ lw $t6, ($s1) +/* 064960 80063D60 8E380004 */ lw $t8, 4($s1) +/* 064964 80063D64 000EC823 */ negu $t9, $t6 +/* 064968 80063D68 00197840 */ sll $t7, $t9, 1 +/* 06496C 80063D6C 00186023 */ negu $t4, $t8 +/* 064970 80063D70 004FA021 */ addu $s4, $v0, $t7 +/* 064974 80063D74 000C6840 */ sll $t5, $t4, 1 +/* 064978 80063D78 16830009 */ bne $s4, $v1, .L80063DA0 +/* 06497C 80063D7C 004DF021 */ addu $fp, $v0, $t5 +/* 064980 80063D80 02407025 */ move $t6, $s2 +/* 064984 80063D84 00159400 */ sll $s2, $s5, 0x10 +/* 064988 80063D88 000EAC00 */ sll $s5, $t6, 0x10 +/* 06498C 80063D8C 00157C03 */ sra $t7, $s5, 0x10 +/* 064990 80063D90 0012CC03 */ sra $t9, $s2, 0x10 +/* 064994 80063D94 03209025 */ move $s2, $t9 +/* 064998 80063D98 10000008 */ b .L80063DBC +/* 06499C 80063D9C 01E0A825 */ move $s5, $t7 +.L80063DA0: +/* 0649A0 80063DA0 02602025 */ move $a0, $s3 +/* 0649A4 80063DA4 02802825 */ move $a1, $s4 +/* 0649A8 80063DA8 02A03025 */ move $a2, $s5 +/* 0649AC 80063DAC 02C03825 */ move $a3, $s6 +/* 0649B0 80063DB0 0C019128 */ jal func_800644A0 +/* 0649B4 80063DB4 AFB00010 */ sw $s0, 0x10($sp) +/* 0649B8 80063DB8 00408025 */ move $s0, $v0 +.L80063DBC: +/* 0649BC 80063DBC 02602025 */ move $a0, $s3 +/* 0649C0 80063DC0 02202825 */ move $a1, $s1 +/* 0649C4 80063DC4 02403025 */ move $a2, $s2 +/* 0649C8 80063DC8 02C03825 */ move $a3, $s6 +/* 0649CC 80063DCC 0C019089 */ jal func_80064224 +/* 0649D0 80063DD0 AFB00010 */ sw $s0, 0x10($sp) +/* 0649D4 80063DD4 86240008 */ lh $a0, 8($s1) +/* 0649D8 80063DD8 00408025 */ move $s0, $v0 +/* 0649DC 80063DDC 10800015 */ beqz $a0, .L80063E34 +/* 0649E0 80063DE0 308CFFFF */ andi $t4, $a0, 0xffff +/* 0649E4 80063DE4 3C010C00 */ lui $at, 0xc00 +/* 0649E8 80063DE8 0015CC00 */ sll $t9, $s5, 0x10 +/* 0649EC 80063DEC 324FFFFF */ andi $t7, $s2, 0xffff +/* 0649F0 80063DF0 032FC025 */ or $t8, $t9, $t7 +/* 0649F4 80063DF4 01816825 */ or $t5, $t4, $at +/* 0649F8 80063DF8 AC4D0000 */ sw $t5, ($v0) +/* 0649FC 80063DFC AC580004 */ sw $t8, 4($v0) +/* 064A00 80063E00 8E2C0024 */ lw $t4, 0x24($s1) +/* 064A04 80063E04 24500008 */ addiu $s0, $v0, 8 +/* 064A08 80063E08 1580000A */ bnez $t4, .L80063E34 +/* 064A0C 80063E0C 00000000 */ nop +/* 064A10 80063E10 8E2D0020 */ lw $t5, 0x20($s1) +/* 064A14 80063E14 02602025 */ move $a0, $s3 +/* 064A18 80063E18 15A00006 */ bnez $t5, .L80063E34 +/* 064A1C 80063E1C 03C02825 */ move $a1, $fp +/* 064A20 80063E20 02403025 */ move $a2, $s2 +/* 064A24 80063E24 02C03825 */ move $a3, $s6 +/* 064A28 80063E28 0C01918E */ jal func_80064638 +/* 064A2C 80063E2C AFB00010 */ sw $s0, 0x10($sp) +/* 064A30 80063E30 00408025 */ move $s0, $v0 +.L80063E34: +/* 064A34 80063E34 8623000A */ lh $v1, 0xa($s1) +/* 064A38 80063E38 02001025 */ move $v0, $s0 +/* 064A3C 80063E3C 10600010 */ beqz $v1, .L80063E80 +/* 064A40 80063E40 3079FFFF */ andi $t9, $v1, 0xffff +/* 064A44 80063E44 3C010C00 */ lui $at, 0xc00 +/* 064A48 80063E48 00126400 */ sll $t4, $s2, 0x10 +/* 064A4C 80063E4C 32ADFFFF */ andi $t5, $s5, 0xffff +/* 064A50 80063E50 018D7025 */ or $t6, $t4, $t5 +/* 064A54 80063E54 03217825 */ or $t7, $t9, $at +/* 064A58 80063E58 AC4F0000 */ sw $t7, ($v0) +/* 064A5C 80063E5C AC4E0004 */ sw $t6, 4($v0) +/* 064A60 80063E60 26100008 */ addiu $s0, $s0, 8 +/* 064A64 80063E64 AFB00010 */ sw $s0, 0x10($sp) +/* 064A68 80063E68 02602025 */ move $a0, $s3 +/* 064A6C 80063E6C 02802825 */ move $a1, $s4 +/* 064A70 80063E70 02A03025 */ move $a2, $s5 +/* 064A74 80063E74 0C01918E */ jal func_80064638 +/* 064A78 80063E78 02C03825 */ move $a3, $s6 +/* 064A7C 80063E7C 00408025 */ move $s0, $v0 +.L80063E80: +/* 064A80 80063E80 8E240020 */ lw $a0, 0x20($s1) +/* 064A84 80063E84 02402825 */ move $a1, $s2 +/* 064A88 80063E88 10800004 */ beqz $a0, .L80063E9C +/* 064A8C 80063E8C 02C03025 */ move $a2, $s6 +/* 064A90 80063E90 0C0191F4 */ jal func_800647D0 +/* 064A94 80063E94 02003825 */ move $a3, $s0 +/* 064A98 80063E98 00408025 */ move $s0, $v0 +.L80063E9C: +/* 064A9C 80063E9C 8E390024 */ lw $t9, 0x24($s1) +/* 064AA0 80063EA0 02602025 */ move $a0, $s3 +/* 064AA4 80063EA4 17200006 */ bnez $t9, .L80063EC0 +/* 064AA8 80063EA8 03C02825 */ move $a1, $fp +/* 064AAC 80063EAC 02403025 */ move $a2, $s2 +/* 064AB0 80063EB0 02C03825 */ move $a3, $s6 +/* 064AB4 80063EB4 0C01918E */ jal func_80064638 +/* 064AB8 80063EB8 AFB00010 */ sw $s0, 0x10($sp) +/* 064ABC 80063EBC 00408025 */ move $s0, $v0 +.L80063EC0: +/* 064AC0 80063EC0 8623000C */ lh $v1, 0xc($s1) +/* 064AC4 80063EC4 26F70001 */ addiu $s7, $s7, 1 +/* 064AC8 80063EC8 10600009 */ beqz $v1, .L80063EF0 +/* 064ACC 80063ECC 02001025 */ move $v0, $s0 +/* 064AD0 80063ED0 3078FFFF */ andi $t8, $v1, 0xffff +/* 064AD4 80063ED4 3C010C00 */ lui $at, 0xc00 +/* 064AD8 80063ED8 00127400 */ sll $t6, $s2, 0x10 +/* 064ADC 80063EDC 35D90800 */ ori $t9, $t6, 0x800 +/* 064AE0 80063EE0 03016025 */ or $t4, $t8, $at +/* 064AE4 80063EE4 AC4C0000 */ sw $t4, ($v0) +/* 064AE8 80063EE8 AC590004 */ sw $t9, 4($v0) +/* 064AEC 80063EEC 26100008 */ addiu $s0, $s0, 8 +.L80063EF0: +/* 064AF0 80063EF0 926E0024 */ lbu $t6, 0x24($s3) +/* 064AF4 80063EF4 8E2F0004 */ lw $t7, 4($s1) +/* 064AF8 80063EF8 00176400 */ sll $t4, $s7, 0x10 +/* 064AFC 80063EFC 8E620018 */ lw $v0, 0x18($s3) +/* 064B00 80063F00 000CBC03 */ sra $s7, $t4, 0x10 +/* 064B04 80063F04 02EE082A */ slt $at, $s7, $t6 +/* 064B08 80063F08 000FC040 */ sll $t8, $t7, 1 +/* 064B0C 80063F0C 1420FF8E */ bnez $at, .L80063D48 +/* 064B10 80063F10 00581821 */ addu $v1, $v0, $t8 +.L80063F14: +/* 064B14 80063F14 8E63001C */ lw $v1, 0x1c($s3) +/* 064B18 80063F18 8E790018 */ lw $t9, 0x18($s3) +/* 064B1C 80063F1C 8FAF0050 */ lw $t7, 0x50($sp) +/* 064B20 80063F20 8E6D0014 */ lw $t5, 0x14($s3) +/* 064B24 80063F24 00036040 */ sll $t4, $v1, 1 +/* 064B28 80063F28 032FC021 */ addu $t8, $t9, $t7 +/* 064B2C 80063F2C 01AC7021 */ addu $t6, $t5, $t4 +/* 064B30 80063F30 01D8082B */ sltu $at, $t6, $t8 +/* 064B34 80063F34 10200003 */ beqz $at, .L80063F44 +/* 064B38 80063F38 AE780018 */ sw $t8, 0x18($s3) +/* 064B3C 80063F3C 030CC823 */ subu $t9, $t8, $t4 +/* 064B40 80063F40 AE790018 */ sw $t9, 0x18($s3) +.L80063F44: +/* 064B44 80063F44 3C0F0A00 */ lui $t7, (0x0A000800 >> 16) # lui $t7, 0xa00 +/* 064B48 80063F48 35EF0800 */ ori $t7, (0x0A000800 & 0xFFFF) # ori $t7, $t7, 0x800 +/* 064B4C 80063F4C AE0F0000 */ sw $t7, ($s0) +/* 064B50 80063F50 8FB80048 */ lw $t8, 0x48($sp) +/* 064B54 80063F54 3C0106C0 */ lui $at, 0x6c0 +/* 064B58 80063F58 03016025 */ or $t4, $t8, $at +/* 064B5C 80063F5C AE0C0004 */ sw $t4, 4($s0) +/* 064B60 80063F60 26020008 */ addiu $v0, $s0, 8 +/* 064B64 80063F64 8FBF0044 */ lw $ra, 0x44($sp) +.L80063F68: +/* 064B68 80063F68 8FB00020 */ lw $s0, 0x20($sp) +/* 064B6C 80063F6C 8FB10024 */ lw $s1, 0x24($sp) +/* 064B70 80063F70 8FB20028 */ lw $s2, 0x28($sp) +/* 064B74 80063F74 8FB3002C */ lw $s3, 0x2c($sp) +/* 064B78 80063F78 8FB40030 */ lw $s4, 0x30($sp) +/* 064B7C 80063F7C 8FB50034 */ lw $s5, 0x34($sp) +/* 064B80 80063F80 8FB60038 */ lw $s6, 0x38($sp) +/* 064B84 80063F84 8FB7003C */ lw $s7, 0x3c($sp) +/* 064B88 80063F88 8FBE0040 */ lw $fp, 0x40($sp) +/* 064B8C 80063F8C 03E00008 */ jr $ra +/* 064B90 80063F90 27BD00A0 */ addiu $sp, $sp, 0xa0 + diff --git a/asm/non_matchings/unknown_064830/D_80063F94.s b/asm/non_matchings/unknown_064830/D_80063F94.s new file mode 100644 index 00000000..81ddf604 --- /dev/null +++ b/asm/non_matchings/unknown_064830/D_80063F94.s @@ -0,0 +1,9 @@ +glabel D_80063F94 +/* 064B94 80063F94 24010001 */ li $at, 1 +/* 064B98 80063F98 14A10002 */ bne $a1, $at, .L80063FA4 +/* 064B9C 80063F9C 00000000 */ nop +/* 064BA0 80063FA0 AC860000 */ sw $a2, ($a0) +.L80063FA4: +/* 064BA4 80063FA4 03E00008 */ jr $ra +/* 064BA8 80063FA8 00001025 */ move $v0, $zero + diff --git a/asm/non_matchings/unknown_064830/D_80063FAC.s b/asm/non_matchings/unknown_064830/D_80063FAC.s new file mode 100644 index 00000000..fcea7f0b --- /dev/null +++ b/asm/non_matchings/unknown_064830/D_80063FAC.s @@ -0,0 +1,171 @@ +glabel D_80063FAC +/* 064BAC 80063FAC 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 064BB0 80063FB0 24A3FFFE */ addiu $v1, $a1, -2 +/* 064BB4 80063FB4 AFBF0014 */ sw $ra, 0x14($sp) +/* 064BB8 80063FB8 306E0007 */ andi $t6, $v1, 7 +/* 064BBC 80063FBC 8CC80000 */ lw $t0, ($a2) +/* 064BC0 80063FC0 2DC10008 */ sltiu $at, $t6, 8 +/* 064BC4 80063FC4 10200093 */ beqz $at, .L80064214 +/* 064BC8 80063FC8 00803825 */ move $a3, $a0 +/* 064BCC 80063FCC 000E7080 */ sll $t6, $t6, 2 +/* 064BD0 80063FD0 3C01800E */ lui $at, 0x800e +/* 064BD4 80063FD4 002E0821 */ addu $at, $at, $t6 +/* 064BD8 80063FD8 8C2E6E70 */ lw $t6, 0x6e70($at) +/* 064BDC 80063FDC 00000000 */ nop +/* 064BE0 80063FE0 01C00008 */ jr $t6 +/* 064BE4 80063FE4 00000000 */ nop +/* 064BE8 80063FE8 2401FFF8 */ li $at, -8 +/* 064BEC 80063FEC 01017824 */ and $t7, $t0, $at +/* 064BF0 80063FF0 8CF80020 */ lw $t8, 0x20($a3) +/* 064BF4 80063FF4 04610003 */ bgez $v1, .L80064004 +/* 064BF8 80063FF8 0003C8C3 */ sra $t9, $v1, 3 +/* 064BFC 80063FFC 24610007 */ addiu $at, $v1, 7 +/* 064C00 80064000 0001C8C3 */ sra $t9, $at, 3 +.L80064004: +/* 064C04 80064004 00194880 */ sll $t1, $t9, 2 +/* 064C08 80064008 01394821 */ addu $t1, $t1, $t9 +/* 064C0C 8006400C 000948C0 */ sll $t1, $t1, 3 +/* 064C10 80064010 03095021 */ addu $t2, $t8, $t1 +/* 064C14 80064014 1000007F */ b .L80064214 +/* 064C18 80064018 AD4F0000 */ sw $t7, ($t2) +/* 064C1C 8006401C 2401FFF8 */ li $at, -8 +/* 064C20 80064020 01015824 */ and $t3, $t0, $at +/* 064C24 80064024 8CEC0020 */ lw $t4, 0x20($a3) +/* 064C28 80064028 04610003 */ bgez $v1, .L80064038 +/* 064C2C 8006402C 000368C3 */ sra $t5, $v1, 3 +/* 064C30 80064030 24610007 */ addiu $at, $v1, 7 +/* 064C34 80064034 000168C3 */ sra $t5, $at, 3 +.L80064038: +/* 064C38 80064038 000D7080 */ sll $t6, $t5, 2 +/* 064C3C 8006403C 01CD7021 */ addu $t6, $t6, $t5 +/* 064C40 80064040 000E70C0 */ sll $t6, $t6, 3 +/* 064C44 80064044 018EC821 */ addu $t9, $t4, $t6 +/* 064C48 80064048 10000072 */ b .L80064214 +/* 064C4C 8006404C AF2B0004 */ sw $t3, 4($t9) +/* 064C50 80064050 8CF80020 */ lw $t8, 0x20($a3) +/* 064C54 80064054 04610003 */ bgez $v1, .L80064064 +/* 064C58 80064058 000348C3 */ sra $t1, $v1, 3 +/* 064C5C 8006405C 24610007 */ addiu $at, $v1, 7 +/* 064C60 80064060 000148C3 */ sra $t1, $at, 3 +.L80064064: +/* 064C64 80064064 00097880 */ sll $t7, $t1, 2 +/* 064C68 80064068 01E97821 */ addu $t7, $t7, $t1 +/* 064C6C 8006406C 000F78C0 */ sll $t7, $t7, 3 +/* 064C70 80064070 030F5021 */ addu $t2, $t8, $t7 +/* 064C74 80064074 10000067 */ b .L80064214 +/* 064C78 80064078 A5480008 */ sh $t0, 8($t2) +/* 064C7C 8006407C 8CED0020 */ lw $t5, 0x20($a3) +/* 064C80 80064080 04610003 */ bgez $v1, .L80064090 +/* 064C84 80064084 000360C3 */ sra $t4, $v1, 3 +/* 064C88 80064088 24610007 */ addiu $at, $v1, 7 +/* 064C8C 8006408C 000160C3 */ sra $t4, $at, 3 +.L80064090: +/* 064C90 80064090 000C7080 */ sll $t6, $t4, 2 +/* 064C94 80064094 01CC7021 */ addu $t6, $t6, $t4 +/* 064C98 80064098 000E70C0 */ sll $t6, $t6, 3 +/* 064C9C 8006409C 01AE5821 */ addu $t3, $t5, $t6 +/* 064CA0 800640A0 1000005C */ b .L80064214 +/* 064CA4 800640A4 A568000A */ sh $t0, 0xa($t3) +/* 064CA8 800640A8 8CF90020 */ lw $t9, 0x20($a3) +/* 064CAC 800640AC 04610003 */ bgez $v1, .L800640BC +/* 064CB0 800640B0 000348C3 */ sra $t1, $v1, 3 +/* 064CB4 800640B4 24610007 */ addiu $at, $v1, 7 +/* 064CB8 800640B8 000148C3 */ sra $t1, $at, 3 +.L800640BC: +/* 064CBC 800640BC 0009C080 */ sll $t8, $t1, 2 +/* 064CC0 800640C0 0309C021 */ addu $t8, $t8, $t1 +/* 064CC4 800640C4 0018C0C0 */ sll $t8, $t8, 3 +/* 064CC8 800640C8 03387821 */ addu $t7, $t9, $t8 +/* 064CCC 800640CC 10000051 */ b .L80064214 +/* 064CD0 800640D0 A5E8000C */ sh $t0, 0xc($t7) +/* 064CD4 800640D4 44882000 */ mtc1 $t0, $f4 +/* 064CD8 800640D8 3C01447A */ li $at, 0x447A0000 # 1000.000000 +/* 064CDC 800640DC 468021A0 */ cvt.s.w $f6, $f4 +/* 064CE0 800640E0 44814000 */ mtc1 $at, $f8 +/* 064CE4 800640E4 3C0A800E */ lui $t2, %hi(D_800E3780) # $t2, 0x800e +/* 064CE8 800640E8 46083283 */ div.s $f10, $f6, $f8 +/* 064CEC 800640EC 8D4A3780 */ lw $t2, %lo(D_800E3780)($t2) +/* 064CF0 800640F0 8CED0020 */ lw $t5, 0x20($a3) +/* 064CF4 800640F4 8D4C0044 */ lw $t4, 0x44($t2) +/* 064CF8 800640F8 00000000 */ nop +/* 064CFC 800640FC 448C9000 */ mtc1 $t4, $f18 +/* 064D00 80064100 00000000 */ nop +/* 064D04 80064104 46809121 */ cvt.d.w $f4, $f18 +/* 064D08 80064108 46005021 */ cvt.d.s $f0, $f10 +/* 064D0C 8006410C 46200400 */ add.d $f16, $f0, $f0 +/* 064D10 80064110 00000000 */ nop +/* 064D14 80064114 46248183 */ div.d $f6, $f16, $f4 +/* 064D18 80064118 46203220 */ cvt.s.d $f8, $f6 +/* 064D1C 8006411C 04610003 */ bgez $v1, .L8006412C +/* 064D20 80064120 000370C3 */ sra $t6, $v1, 3 +/* 064D24 80064124 24610007 */ addiu $at, $v1, 7 +/* 064D28 80064128 000170C3 */ sra $t6, $at, 3 +.L8006412C: +/* 064D2C 8006412C 000E5880 */ sll $t3, $t6, 2 +/* 064D30 80064130 016E5821 */ addu $t3, $t3, $t6 +/* 064D34 80064134 000B58C0 */ sll $t3, $t3, 3 +/* 064D38 80064138 01AB4821 */ addu $t1, $t5, $t3 +/* 064D3C 8006413C 10000035 */ b .L80064214 +/* 064D40 80064140 E5280010 */ swc1 $f8, 0x10($t1) +/* 064D44 80064144 8CF90020 */ lw $t9, 0x20($a3) +/* 064D48 80064148 04610003 */ bgez $v1, .L80064158 +/* 064D4C 8006414C 0003C0C3 */ sra $t8, $v1, 3 +/* 064D50 80064150 24610007 */ addiu $at, $v1, 7 +/* 064D54 80064154 0001C0C3 */ sra $t8, $at, 3 +.L80064158: +/* 064D58 80064158 00187880 */ sll $t7, $t8, 2 +/* 064D5C 8006415C 01F87821 */ addu $t7, $t7, $t8 +/* 064D60 80064160 000F78C0 */ sll $t7, $t7, 3 +/* 064D64 80064164 032F1021 */ addu $v0, $t9, $t7 +/* 064D68 80064168 8C4A0004 */ lw $t2, 4($v0) +/* 064D6C 8006416C 8C4C0000 */ lw $t4, ($v0) +/* 064D70 80064170 44882000 */ mtc1 $t0, $f4 +/* 064D74 80064174 014C7023 */ subu $t6, $t2, $t4 +/* 064D78 80064178 448E5000 */ mtc1 $t6, $f10 +/* 064D7C 8006417C 05C10006 */ bgez $t6, .L80064198 +/* 064D80 80064180 468054A1 */ cvt.d.w $f18, $f10 +/* 064D84 80064184 3C0141F0 */ li $at, 0x41F00000 # 30.000000 +/* 064D88 80064188 44818800 */ mtc1 $at, $f17 +/* 064D8C 8006418C 44808000 */ mtc1 $zero, $f16 +/* 064D90 80064190 00000000 */ nop +/* 064D94 80064194 46309480 */ add.d $f18, $f18, $f16 +.L80064198: +/* 064D98 80064198 468021A0 */ cvt.s.w $f6, $f4 +/* 064D9C 8006419C 3C01800E */ lui $at, %hi(D_800E6E94) # $at, 0x800e +/* 064DA0 800641A0 C42B6E90 */ lwc1 $f11, %lo(D_800E6E90)($at) +/* 064DA4 800641A4 C42A6E94 */ lwc1 $f10, %lo(D_800E6E94)($at) +/* 064DA8 800641A8 46003221 */ cvt.d.s $f8, $f6 +/* 064DAC 800641AC 00000000 */ nop +/* 064DB0 800641B0 462A4403 */ div.d $f16, $f8, $f10 +/* 064DB4 800641B4 46309102 */ mul.d $f4, $f18, $f16 +/* 064DB8 800641B8 462021A0 */ cvt.s.d $f6, $f4 +/* 064DBC 800641BC 10000015 */ b .L80064214 +/* 064DC0 800641C0 E446001C */ swc1 $f6, 0x1c($v0) +/* 064DC4 800641C4 04610003 */ bgez $v1, .L800641D4 +/* 064DC8 800641C8 000310C3 */ sra $v0, $v1, 3 +/* 064DCC 800641CC 24610007 */ addiu $at, $v1, 7 +/* 064DD0 800641D0 000110C3 */ sra $v0, $at, 3 +.L800641D4: +/* 064DD4 800641D4 00026880 */ sll $t5, $v0, 2 +/* 064DD8 800641D8 8CEB0020 */ lw $t3, 0x20($a3) +/* 064DDC 800641DC 01A26821 */ addu $t5, $t5, $v0 +/* 064DE0 800641E0 000D68C0 */ sll $t5, $t5, 3 +/* 064DE4 800641E4 016D4821 */ addu $t1, $t3, $t5 +/* 064DE8 800641E8 8D250020 */ lw $a1, 0x20($t1) +/* 064DEC 800641EC 00000000 */ nop +/* 064DF0 800641F0 10A00009 */ beqz $a1, .L80064218 +/* 064DF4 800641F4 8FBF0014 */ lw $ra, 0x14($sp) +/* 064DF8 800641F8 A4A80000 */ sh $t0, ($a1) +/* 064DFC 800641FC 8CF80020 */ lw $t8, 0x20($a3) +/* 064E00 80064200 00000000 */ nop +/* 064E04 80064204 030DC821 */ addu $t9, $t8, $t5 +/* 064E08 80064208 8F240020 */ lw $a0, 0x20($t9) +/* 064E0C 8006420C 0C019254 */ jal func_80064950 +/* 064E10 80064210 00000000 */ nop +.L80064214: +/* 064E14 80064214 8FBF0014 */ lw $ra, 0x14($sp) +.L80064218: +/* 064E18 80064218 27BD0018 */ addiu $sp, $sp, 0x18 +/* 064E1C 8006421C 03E00008 */ jr $ra +/* 064E20 80064220 00001025 */ move $v0, $zero + diff --git a/asm/non_matchings/unknown_064830/func_80064224.s b/asm/non_matchings/unknown_064830/func_80064224.s new file mode 100644 index 00000000..26c6f141 --- /dev/null +++ b/asm/non_matchings/unknown_064830/func_80064224.s @@ -0,0 +1,163 @@ +glabel func_80064224 +/* 064E24 80064224 27BDFF98 */ addiu $sp, $sp, -0x68 +/* 064E28 80064228 AFBF002C */ sw $ra, 0x2c($sp) +/* 064E2C 8006422C AFB20028 */ sw $s2, 0x28($sp) +/* 064E30 80064230 AFB10024 */ sw $s1, 0x24($sp) +/* 064E34 80064234 AFB00020 */ sw $s0, 0x20($sp) +/* 064E38 80064238 AFA40068 */ sw $a0, 0x68($sp) +/* 064E3C 8006423C AFA60070 */ sw $a2, 0x70($sp) +/* 064E40 80064240 8CAE0024 */ lw $t6, 0x24($a1) +/* 064E44 80064244 00A08025 */ move $s0, $a1 +/* 064E48 80064248 11C00082 */ beqz $t6, .L80064454 +/* 064E4C 8006424C 00E09025 */ move $s2, $a3 +/* 064E50 80064250 8CAF0004 */ lw $t7, 4($a1) +/* 064E54 80064254 8CB80000 */ lw $t8, ($a1) +/* 064E58 80064258 00A02025 */ move $a0, $a1 +/* 064E5C 8006425C 01F8C823 */ subu $t9, $t7, $t8 +/* 064E60 80064260 AFB90040 */ sw $t9, 0x40($sp) +/* 064E64 80064264 0C019221 */ jal func_80064884 +/* 064E68 80064268 00E02825 */ move $a1, $a3 +/* 064E6C 8006426C 8FAA0040 */ lw $t2, 0x40($sp) +/* 064E70 80064270 3C014700 */ li $at, 0x47000000 # 32768.000000 +/* 064E74 80064274 448A3000 */ mtc1 $t2, $f6 +/* 064E78 80064278 44817000 */ mtc1 $at, $f14 +/* 064E7C 8006427C 46803220 */ cvt.s.w $f8, $f6 +/* 064E80 80064280 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 064E84 80064284 44812800 */ mtc1 $at, $f5 +/* 064E88 80064288 46080283 */ div.s $f10, $f0, $f8 +/* 064E8C 8006428C 44802000 */ mtc1 $zero, $f4 +/* 064E90 80064290 8FA40068 */ lw $a0, 0x68($sp) +/* 064E94 80064294 24060280 */ li $a2, 640 +/* 064E98 80064298 460E5402 */ mul.s $f16, $f10, $f14 +/* 064E9C 8006429C 444BF800 */ cfc1 $t3, $31 +/* 064EA0 800642A0 00000000 */ nop +/* 064EA4 800642A4 35610003 */ ori $at, $t3, 3 +/* 064EA8 800642A8 38210002 */ xori $at, $at, 2 +/* 064EAC 800642AC 44C1F800 */ ctc1 $at, $31 +/* 064EB0 800642B0 00000000 */ nop +/* 064EB4 800642B4 460084A4 */ cvt.w.s $f18, $f16 +/* 064EB8 800642B8 440C9000 */ mfc1 $t4, $f18 +/* 064EBC 800642BC 44CBF800 */ ctc1 $t3, $31 +/* 064EC0 800642C0 448C3000 */ mtc1 $t4, $f6 +/* 064EC4 800642C4 00000000 */ nop +/* 064EC8 800642C8 46803220 */ cvt.s.w $f8, $f6 +/* 064ECC 800642CC 00000000 */ nop +/* 064ED0 800642D0 460E4283 */ div.s $f10, $f8, $f14 +/* 064ED4 800642D4 44924000 */ mtc1 $s2, $f8 +/* 064ED8 800642D8 46005421 */ cvt.d.s $f16, $f10 +/* 064EDC 800642DC 46302481 */ sub.d $f18, $f4, $f16 +/* 064EE0 800642E0 468042A0 */ cvt.s.w $f10, $f8 +/* 064EE4 800642E4 462090A0 */ cvt.s.d $f2, $f18 +/* 064EE8 800642E8 E7A2004C */ swc1 $f2, 0x4c($sp) +/* 064EEC 800642EC 460A1102 */ mul.s $f4, $f2, $f10 +/* 064EF0 800642F0 8E020024 */ lw $v0, 0x24($s0) +/* 064EF4 800642F4 00000000 */ nop +/* 064EF8 800642F8 C4460020 */ lwc1 $f6, 0x20($v0) +/* 064EFC 800642FC 00000000 */ nop +/* 064F00 80064300 46043300 */ add.s $f12, $f6, $f4 +/* 064F04 80064304 444DF800 */ cfc1 $t5, $31 +/* 064F08 80064308 00000000 */ nop +/* 064F0C 8006430C 35A10003 */ ori $at, $t5, 3 +/* 064F10 80064310 38210002 */ xori $at, $at, 2 +/* 064F14 80064314 44C1F800 */ ctc1 $at, $31 +/* 064F18 80064318 00000000 */ nop +/* 064F1C 8006431C 46006424 */ cvt.w.s $f16, $f12 +/* 064F20 80064320 44088000 */ mfc1 $t0, $f16 +/* 064F24 80064324 44CDF800 */ ctc1 $t5, $31 +/* 064F28 80064328 44889000 */ mtc1 $t0, $f18 +/* 064F2C 8006432C 00000000 */ nop +/* 064F30 80064330 46809220 */ cvt.s.w $f8, $f18 +/* 064F34 80064334 46086281 */ sub.s $f10, $f12, $f8 +/* 064F38 80064338 E44A0020 */ swc1 $f10, 0x20($v0) +/* 064F3C 8006433C 8E0F0018 */ lw $t7, 0x18($s0) +/* 064F40 80064340 8E0E0004 */ lw $t6, 4($s0) +/* 064F44 80064344 8C8B0018 */ lw $t3, 0x18($a0) +/* 064F48 80064348 01CFC023 */ subu $t8, $t6, $t7 +/* 064F4C 8006434C 0018C823 */ negu $t9, $t8 +/* 064F50 80064350 00195040 */ sll $t2, $t9, 1 +/* 064F54 80064354 016A8821 */ addu $s1, $t3, $t2 +/* 064F58 80064358 32230007 */ andi $v1, $s1, 7 +/* 064F5C 8006435C 8FAD0078 */ lw $t5, 0x78($sp) +/* 064F60 80064360 00036043 */ sra $t4, $v1, 1 +/* 064F64 80064364 000C4840 */ sll $t1, $t4, 1 +/* 064F68 80064368 02292823 */ subu $a1, $s1, $t1 +/* 064F6C 8006436C AFA90030 */ sw $t1, 0x30($sp) +/* 064F70 80064370 01801825 */ move $v1, $t4 +/* 064F74 80064374 010C3821 */ addu $a3, $t0, $t4 +/* 064F78 80064378 AFA80034 */ sw $t0, 0x34($sp) +/* 064F7C 8006437C 0C019128 */ jal func_800644A0 +/* 064F80 80064380 AFAD0010 */ sw $t5, 0x10($sp) +/* 064F84 80064384 8FA90030 */ lw $t1, 0x30($sp) +/* 064F88 80064388 3C010800 */ lui $at, 0x800 +/* 064F8C 8006438C 252E0280 */ addiu $t6, $t1, 0x280 +/* 064F90 80064390 31CFFFFF */ andi $t7, $t6, 0xffff +/* 064F94 80064394 01E1C025 */ or $t8, $t7, $at +/* 064F98 80064398 AC580000 */ sw $t8, ($v0) +/* 064F9C 8006439C 8FAB0070 */ lw $t3, 0x70($sp) +/* 064FA0 800643A0 00126040 */ sll $t4, $s2, 1 +/* 064FA4 800643A4 318DFFFF */ andi $t5, $t4, 0xffff +/* 064FA8 800643A8 000B5400 */ sll $t2, $t3, 0x10 +/* 064FAC 800643AC 014D7025 */ or $t6, $t2, $t5 +/* 064FB0 800643B0 AC4E0004 */ sw $t6, 4($v0) +/* 064FB4 800643B4 3C014700 */ li $at, 0x47000000 # 32768.000000 +/* 064FB8 800643B8 44812000 */ mtc1 $at, $f4 +/* 064FBC 800643BC C7A6004C */ lwc1 $f6, 0x4c($sp) +/* 064FC0 800643C0 244F0008 */ addiu $t7, $v0, 8 +/* 064FC4 800643C4 46043402 */ mul.s $f16, $f6, $f4 +/* 064FC8 800643C8 AFAF0038 */ sw $t7, 0x38($sp) +/* 064FCC 800643CC 8E0C0024 */ lw $t4, 0x24($s0) +/* 064FD0 800643D0 24510010 */ addiu $s1, $v0, 0x10 +/* 064FD4 800643D4 4458F800 */ cfc1 $t8, $31 +/* 064FD8 800643D8 8D8A0024 */ lw $t2, 0x24($t4) +/* 064FDC 800643DC 37010003 */ ori $at, $t8, 3 +/* 064FE0 800643E0 38210002 */ xori $at, $at, 2 +/* 064FE4 800643E4 44C1F800 */ ctc1 $at, $31 +/* 064FE8 800643E8 314D00FF */ andi $t5, $t2, 0xff +/* 064FEC 800643EC 460084A4 */ cvt.w.s $f18, $f16 +/* 064FF0 800643F0 000D7400 */ sll $t6, $t5, 0x10 +/* 064FF4 800643F4 44199000 */ mfc1 $t9, $f18 +/* 064FF8 800643F8 3C010500 */ lui $at, 0x500 +/* 064FFC 800643FC 01C17825 */ or $t7, $t6, $at +/* 065000 80064400 44D8F800 */ ctc1 $t8, $31 +/* 065004 80064404 332BFFFF */ andi $t3, $t9, 0xffff +/* 065008 80064408 01EBC025 */ or $t8, $t7, $t3 +/* 06500C 8006440C AC580008 */ sw $t8, 8($v0) +/* 065010 80064410 8E190024 */ lw $t9, 0x24($s0) +/* 065014 80064414 00000000 */ nop +/* 065018 80064418 8F240014 */ lw $a0, 0x14($t9) +/* 06501C 8006441C 0C03233C */ jal func_800C8CF0 +/* 065020 80064420 00000000 */ nop +/* 065024 80064424 8FAC0038 */ lw $t4, 0x38($sp) +/* 065028 80064428 8FA80034 */ lw $t0, 0x34($sp) +/* 06502C 8006442C AD820004 */ sw $v0, 4($t4) +/* 065030 80064430 8E0A0024 */ lw $t2, 0x24($s0) +/* 065034 80064434 00000000 */ nop +/* 065038 80064438 AD400024 */ sw $zero, 0x24($t2) +/* 06503C 8006443C 8E0D0018 */ lw $t5, 0x18($s0) +/* 065040 80064440 00000000 */ nop +/* 065044 80064444 01A87021 */ addu $t6, $t5, $t0 +/* 065048 80064448 01D27823 */ subu $t7, $t6, $s2 +/* 06504C 8006444C 1000000D */ b .L80064484 +/* 065050 80064450 AE0F0018 */ sw $t7, 0x18($s0) +.L80064454: +/* 065054 80064454 8FA40068 */ lw $a0, 0x68($sp) +/* 065058 80064458 8E190004 */ lw $t9, 4($s0) +/* 06505C 8006445C 8FAD0078 */ lw $t5, 0x78($sp) +/* 065060 80064460 8C980018 */ lw $t8, 0x18($a0) +/* 065064 80064464 00196023 */ negu $t4, $t9 +/* 065068 80064468 000C5040 */ sll $t2, $t4, 1 +/* 06506C 8006446C 8FA60070 */ lw $a2, 0x70($sp) +/* 065070 80064470 02403825 */ move $a3, $s2 +/* 065074 80064474 AFAD0010 */ sw $t5, 0x10($sp) +/* 065078 80064478 0C019128 */ jal func_800644A0 +/* 06507C 8006447C 030A2821 */ addu $a1, $t8, $t2 +/* 065080 80064480 00408825 */ move $s1, $v0 +.L80064484: +/* 065084 80064484 8FBF002C */ lw $ra, 0x2c($sp) +/* 065088 80064488 02201025 */ move $v0, $s1 +/* 06508C 8006448C 8FB10024 */ lw $s1, 0x24($sp) +/* 065090 80064490 8FB00020 */ lw $s0, 0x20($sp) +/* 065094 80064494 8FB20028 */ lw $s2, 0x28($sp) +/* 065098 80064498 03E00008 */ jr $ra +/* 06509C 8006449C 27BD0068 */ addiu $sp, $sp, 0x68 + diff --git a/asm/non_matchings/unknown_064830/func_800644A0.s b/asm/non_matchings/unknown_064830/func_800644A0.s new file mode 100644 index 00000000..691a4e92 --- /dev/null +++ b/asm/non_matchings/unknown_064830/func_800644A0.s @@ -0,0 +1,107 @@ +glabel func_800644A0 +/* 0650A0 800644A0 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 0650A4 800644A4 AFBF001C */ sw $ra, 0x1c($sp) +/* 0650A8 800644A8 AFB00018 */ sw $s0, 0x18($sp) +/* 0650AC 800644AC AFA40060 */ sw $a0, 0x60($sp) +/* 0650B0 800644B0 AFA60068 */ sw $a2, 0x68($sp) +/* 0650B4 800644B4 AFA7006C */ sw $a3, 0x6c($sp) +/* 0650B8 800644B8 8C83001C */ lw $v1, 0x1c($a0) +/* 0650BC 800644BC 8C820014 */ lw $v0, 0x14($a0) +/* 0650C0 800644C0 00037840 */ sll $t7, $v1, 1 +/* 0650C4 800644C4 00A2082B */ sltu $at, $a1, $v0 +/* 0650C8 800644C8 10200002 */ beqz $at, .L800644D4 +/* 0650CC 800644CC 004F4021 */ addu $t0, $v0, $t7 +/* 0650D0 800644D0 00AF2821 */ addu $a1, $a1, $t7 +.L800644D4: +/* 0650D4 800644D4 8FA6006C */ lw $a2, 0x6c($sp) +/* 0650D8 800644D8 8FAE0070 */ lw $t6, 0x70($sp) +/* 0650DC 800644DC 0006C040 */ sll $t8, $a2, 1 +/* 0650E0 800644E0 03053821 */ addu $a3, $t8, $a1 +/* 0650E4 800644E4 0107082B */ sltu $at, $t0, $a3 +/* 0650E8 800644E8 10200037 */ beqz $at, .L800645C8 +/* 0650EC 800644EC 03003025 */ move $a2, $t8 +/* 0650F0 800644F0 8FB90070 */ lw $t9, 0x70($sp) +/* 0650F4 800644F4 8FAB0068 */ lw $t3, 0x68($sp) +/* 0650F8 800644F8 01054823 */ subu $t1, $t0, $a1 +/* 0650FC 800644FC 00097043 */ sra $t6, $t1, 1 +/* 065100 80064500 000E7840 */ sll $t7, $t6, 1 +/* 065104 80064504 3C010800 */ lui $at, 0x800 +/* 065108 80064508 316CFFFF */ andi $t4, $t3, 0xffff +/* 06510C 8006450C 01816825 */ or $t5, $t4, $at +/* 065110 80064510 31F8FFFF */ andi $t8, $t7, 0xffff +/* 065114 80064514 27300008 */ addiu $s0, $t9, 8 +/* 065118 80064518 AF380004 */ sw $t8, 4($t9) +/* 06511C 8006451C AF2D0000 */ sw $t5, ($t9) +/* 065120 80064520 3C190400 */ lui $t9, 0x400 +/* 065124 80064524 02005025 */ move $t2, $s0 +/* 065128 80064528 AD590000 */ sw $t9, ($t2) +/* 06512C 8006452C AFAA0044 */ sw $t2, 0x44($sp) +/* 065130 80064530 AFAF0024 */ sw $t7, 0x24($sp) +/* 065134 80064534 AFA8004C */ sw $t0, 0x4c($sp) +/* 065138 80064538 AFA70028 */ sw $a3, 0x28($sp) +/* 06513C 8006453C AFA6002C */ sw $a2, 0x2c($sp) +/* 065140 80064540 26100008 */ addiu $s0, $s0, 8 +/* 065144 80064544 0C03233C */ jal func_800C8CF0 +/* 065148 80064548 00A02025 */ move $a0, $a1 +/* 06514C 8006454C 8FAA0044 */ lw $t2, 0x44($sp) +/* 065150 80064550 8FA70028 */ lw $a3, 0x28($sp) +/* 065154 80064554 8FA8004C */ lw $t0, 0x4c($sp) +/* 065158 80064558 8FA90024 */ lw $t1, 0x24($sp) +/* 06515C 8006455C AD420004 */ sw $v0, 4($t2) +/* 065160 80064560 8FAB0068 */ lw $t3, 0x68($sp) +/* 065164 80064564 00E87823 */ subu $t7, $a3, $t0 +/* 065168 80064568 000FC043 */ sra $t8, $t7, 1 +/* 06516C 8006456C 02001825 */ move $v1, $s0 +/* 065170 80064570 012B6021 */ addu $t4, $t1, $t3 +/* 065174 80064574 318DFFFF */ andi $t5, $t4, 0xffff +/* 065178 80064578 0018C840 */ sll $t9, $t8, 1 +/* 06517C 8006457C 3C010800 */ lui $at, 0x800 +/* 065180 80064580 01A17025 */ or $t6, $t5, $at +/* 065184 80064584 332BFFFF */ andi $t3, $t9, 0xffff +/* 065188 80064588 26100008 */ addiu $s0, $s0, 8 +/* 06518C 8006458C AC6B0004 */ sw $t3, 4($v1) +/* 065190 80064590 AC6E0000 */ sw $t6, ($v1) +/* 065194 80064594 02002825 */ move $a1, $s0 +/* 065198 80064598 3C0C0400 */ lui $t4, 0x400 +/* 06519C 8006459C ACAC0000 */ sw $t4, ($a1) +/* 0651A0 800645A0 8FAD0060 */ lw $t5, 0x60($sp) +/* 0651A4 800645A4 26100008 */ addiu $s0, $s0, 8 +/* 0651A8 800645A8 8DA40014 */ lw $a0, 0x14($t5) +/* 0651AC 800645AC 0C03233C */ jal func_800C8CF0 +/* 0651B0 800645B0 AFA5003C */ sw $a1, 0x3c($sp) +/* 0651B4 800645B4 8FA5003C */ lw $a1, 0x3c($sp) +/* 0651B8 800645B8 8FA6002C */ lw $a2, 0x2c($sp) +/* 0651BC 800645BC ACA20004 */ sw $v0, 4($a1) +/* 0651C0 800645C0 10000014 */ b .L80064614 +/* 0651C4 800645C4 30C7FFFF */ andi $a3, $a2, 0xffff +.L800645C8: +/* 0651C8 800645C8 8FAF0068 */ lw $t7, 0x68($sp) +/* 0651CC 800645CC 3C010800 */ lui $at, 0x800 +/* 0651D0 800645D0 31F8FFFF */ andi $t8, $t7, 0xffff +/* 0651D4 800645D4 0301C825 */ or $t9, $t8, $at +/* 0651D8 800645D8 25D00008 */ addiu $s0, $t6, 8 +/* 0651DC 800645DC 30C7FFFF */ andi $a3, $a2, 0xffff +/* 0651E0 800645E0 ADC70004 */ sw $a3, 4($t6) +/* 0651E4 800645E4 ADD90000 */ sw $t9, ($t6) +/* 0651E8 800645E8 02001825 */ move $v1, $s0 +/* 0651EC 800645EC 3C0B0400 */ lui $t3, 0x400 +/* 0651F0 800645F0 AC6B0000 */ sw $t3, ($v1) +/* 0651F4 800645F4 AFA70028 */ sw $a3, 0x28($sp) +/* 0651F8 800645F8 AFA30034 */ sw $v1, 0x34($sp) +/* 0651FC 800645FC 26100008 */ addiu $s0, $s0, 8 +/* 065200 80064600 0C03233C */ jal func_800C8CF0 +/* 065204 80064604 00A02025 */ move $a0, $a1 +/* 065208 80064608 8FA30034 */ lw $v1, 0x34($sp) +/* 06520C 8006460C 8FA70028 */ lw $a3, 0x28($sp) +/* 065210 80064610 AC620004 */ sw $v0, 4($v1) +.L80064614: +/* 065214 80064614 02001825 */ move $v1, $s0 +/* 065218 80064618 3C0C0800 */ lui $t4, 0x800 +/* 06521C 8006461C AC6C0000 */ sw $t4, ($v1) +/* 065220 80064620 AC670004 */ sw $a3, 4($v1) +/* 065224 80064624 8FBF001C */ lw $ra, 0x1c($sp) +/* 065228 80064628 26020008 */ addiu $v0, $s0, 8 +/* 06522C 8006462C 8FB00018 */ lw $s0, 0x18($sp) +/* 065230 80064630 03E00008 */ jr $ra +/* 065234 80064634 27BD0060 */ addiu $sp, $sp, 0x60 + diff --git a/asm/non_matchings/unknown_064830/func_80064638.s b/asm/non_matchings/unknown_064830/func_80064638.s new file mode 100644 index 00000000..62ccdfc3 --- /dev/null +++ b/asm/non_matchings/unknown_064830/func_80064638.s @@ -0,0 +1,107 @@ +glabel func_80064638 +/* 065238 80064638 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 06523C 8006463C AFBF001C */ sw $ra, 0x1c($sp) +/* 065240 80064640 AFB00018 */ sw $s0, 0x18($sp) +/* 065244 80064644 AFA40060 */ sw $a0, 0x60($sp) +/* 065248 80064648 AFA60068 */ sw $a2, 0x68($sp) +/* 06524C 8006464C AFA7006C */ sw $a3, 0x6c($sp) +/* 065250 80064650 8C83001C */ lw $v1, 0x1c($a0) +/* 065254 80064654 8C820014 */ lw $v0, 0x14($a0) +/* 065258 80064658 00037840 */ sll $t7, $v1, 1 +/* 06525C 8006465C 00A2082B */ sltu $at, $a1, $v0 +/* 065260 80064660 10200002 */ beqz $at, .L8006466C +/* 065264 80064664 004F4021 */ addu $t0, $v0, $t7 +/* 065268 80064668 00AF2821 */ addu $a1, $a1, $t7 +.L8006466C: +/* 06526C 8006466C 8FA6006C */ lw $a2, 0x6c($sp) +/* 065270 80064670 8FB90070 */ lw $t9, 0x70($sp) +/* 065274 80064674 0006C040 */ sll $t8, $a2, 1 +/* 065278 80064678 03053821 */ addu $a3, $t8, $a1 +/* 06527C 8006467C 0107082B */ sltu $at, $t0, $a3 +/* 065280 80064680 1020003C */ beqz $at, .L80064774 +/* 065284 80064684 03003025 */ move $a2, $t8 +/* 065288 80064688 8FA20070 */ lw $v0, 0x70($sp) +/* 06528C 8006468C 3C0B0800 */ lui $t3, 0x800 +/* 065290 80064690 01054823 */ subu $t1, $t0, $a1 +/* 065294 80064694 AC4B0000 */ sw $t3, ($v0) +/* 065298 80064698 8FAF0068 */ lw $t7, 0x68($sp) +/* 06529C 8006469C 00096043 */ sra $t4, $t1, 1 +/* 0652A0 800646A0 000C6840 */ sll $t5, $t4, 1 +/* 0652A4 800646A4 31B9FFFF */ andi $t9, $t5, 0xffff +/* 0652A8 800646A8 000FC400 */ sll $t8, $t7, 0x10 +/* 0652AC 800646AC 03195825 */ or $t3, $t8, $t9 +/* 0652B0 800646B0 24500008 */ addiu $s0, $v0, 8 +/* 0652B4 800646B4 02005025 */ move $t2, $s0 +/* 0652B8 800646B8 3C0C0600 */ lui $t4, 0x600 +/* 0652BC 800646BC AC4B0004 */ sw $t3, 4($v0) +/* 0652C0 800646C0 AD4C0000 */ sw $t4, ($t2) +/* 0652C4 800646C4 AFAA0044 */ sw $t2, 0x44($sp) +/* 0652C8 800646C8 AFAD0024 */ sw $t5, 0x24($sp) +/* 0652CC 800646CC AFA8004C */ sw $t0, 0x4c($sp) +/* 0652D0 800646D0 AFA70028 */ sw $a3, 0x28($sp) +/* 0652D4 800646D4 AFA6002C */ sw $a2, 0x2c($sp) +/* 0652D8 800646D8 26100008 */ addiu $s0, $s0, 8 +/* 0652DC 800646DC 0C03233C */ jal func_800C8CF0 +/* 0652E0 800646E0 00A02025 */ move $a0, $a1 +/* 0652E4 800646E4 8FAA0044 */ lw $t2, 0x44($sp) +/* 0652E8 800646E8 8FA70028 */ lw $a3, 0x28($sp) +/* 0652EC 800646EC 8FA8004C */ lw $t0, 0x4c($sp) +/* 0652F0 800646F0 8FA90024 */ lw $t1, 0x24($sp) +/* 0652F4 800646F4 02001825 */ move $v1, $s0 +/* 0652F8 800646F8 3C0D0800 */ lui $t5, 0x800 +/* 0652FC 800646FC AD420004 */ sw $v0, 4($t2) +/* 065300 80064700 AC6D0000 */ sw $t5, ($v1) +/* 065304 80064704 8FAE0068 */ lw $t6, 0x68($sp) +/* 065308 80064708 00E85823 */ subu $t3, $a3, $t0 +/* 06530C 8006470C 000B6043 */ sra $t4, $t3, 1 +/* 065310 80064710 012EC021 */ addu $t8, $t1, $t6 +/* 065314 80064714 000C6840 */ sll $t5, $t4, 1 +/* 065318 80064718 31AEFFFF */ andi $t6, $t5, 0xffff +/* 06531C 8006471C 0018CC00 */ sll $t9, $t8, 0x10 +/* 065320 80064720 032E7825 */ or $t7, $t9, $t6 +/* 065324 80064724 26100008 */ addiu $s0, $s0, 8 +/* 065328 80064728 AC6F0004 */ sw $t7, 4($v1) +/* 06532C 8006472C 02002825 */ move $a1, $s0 +/* 065330 80064730 3C180600 */ lui $t8, 0x600 +/* 065334 80064734 ACB80000 */ sw $t8, ($a1) +/* 065338 80064738 8FAB0060 */ lw $t3, 0x60($sp) +/* 06533C 8006473C 26100008 */ addiu $s0, $s0, 8 +/* 065340 80064740 8D640014 */ lw $a0, 0x14($t3) +/* 065344 80064744 0C03233C */ jal func_800C8CF0 +/* 065348 80064748 AFA5003C */ sw $a1, 0x3c($sp) +/* 06534C 8006474C 8FA6002C */ lw $a2, 0x2c($sp) +/* 065350 80064750 8FA5003C */ lw $a1, 0x3c($sp) +/* 065354 80064754 02001825 */ move $v1, $s0 +/* 065358 80064758 3C0C0800 */ lui $t4, 0x800 +/* 06535C 8006475C 30CDFFFF */ andi $t5, $a2, 0xffff +/* 065360 80064760 ACA20004 */ sw $v0, 4($a1) +/* 065364 80064764 AC6D0004 */ sw $t5, 4($v1) +/* 065368 80064768 AC6C0000 */ sw $t4, ($v1) +/* 06536C 8006476C 10000013 */ b .L800647BC +/* 065370 80064770 26100008 */ addiu $s0, $s0, 8 +.L80064774: +/* 065374 80064774 3C0E0800 */ lui $t6, 0x800 +/* 065378 80064778 AF2E0000 */ sw $t6, ($t9) +/* 06537C 8006477C 8FB80068 */ lw $t8, 0x68($sp) +/* 065380 80064780 30CCFFFF */ andi $t4, $a2, 0xffff +/* 065384 80064784 00185C00 */ sll $t3, $t8, 0x10 +/* 065388 80064788 016C6825 */ or $t5, $t3, $t4 +/* 06538C 8006478C 27300008 */ addiu $s0, $t9, 8 +/* 065390 80064790 AF2D0004 */ sw $t5, 4($t9) +/* 065394 80064794 3C190600 */ lui $t9, 0x600 +/* 065398 80064798 02001825 */ move $v1, $s0 +/* 06539C 8006479C AC790000 */ sw $t9, ($v1) +/* 0653A0 800647A0 AFA30030 */ sw $v1, 0x30($sp) +/* 0653A4 800647A4 26100008 */ addiu $s0, $s0, 8 +/* 0653A8 800647A8 0C03233C */ jal func_800C8CF0 +/* 0653AC 800647AC 00A02025 */ move $a0, $a1 +/* 0653B0 800647B0 8FA30030 */ lw $v1, 0x30($sp) +/* 0653B4 800647B4 00000000 */ nop +/* 0653B8 800647B8 AC620004 */ sw $v0, 4($v1) +.L800647BC: +/* 0653BC 800647BC 8FBF001C */ lw $ra, 0x1c($sp) +/* 0653C0 800647C0 02001025 */ move $v0, $s0 +/* 0653C4 800647C4 8FB00018 */ lw $s0, 0x18($sp) +/* 0653C8 800647C8 03E00008 */ jr $ra +/* 0653CC 800647CC 27BD0060 */ addiu $sp, $sp, 0x60 + diff --git a/asm/non_matchings/unknown_064830/func_800647D0.s b/asm/non_matchings/unknown_064830/func_800647D0.s new file mode 100644 index 00000000..879b9fd1 --- /dev/null +++ b/asm/non_matchings/unknown_064830/func_800647D0.s @@ -0,0 +1,47 @@ +glabel func_800647D0 +/* 0653D0 800647D0 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0653D4 800647D4 AFB00018 */ sw $s0, 0x18($sp) +/* 0653D8 800647D8 AFBF001C */ sw $ra, 0x1c($sp) +/* 0653DC 800647DC 30A2FFFF */ andi $v0, $a1, 0xffff +/* 0653E0 800647E0 0006C040 */ sll $t8, $a2, 1 +/* 0653E4 800647E4 3319FFFF */ andi $t9, $t8, 0xffff +/* 0653E8 800647E8 00027C00 */ sll $t7, $v0, 0x10 +/* 0653EC 800647EC 3C010800 */ lui $at, 0x800 +/* 0653F0 800647F0 3C090B00 */ lui $t1, (0x0B000020 >> 16) # lui $t1, 0xb00 +/* 0653F4 800647F4 00417025 */ or $t6, $v0, $at +/* 0653F8 800647F8 01F94025 */ or $t0, $t7, $t9 +/* 0653FC 800647FC 35290020 */ ori $t1, (0x0B000020 & 0xFFFF) # ori $t1, $t1, 0x20 +/* 065400 80064800 00808025 */ move $s0, $a0 +/* 065404 80064804 ACE80004 */ sw $t0, 4($a3) +/* 065408 80064808 ACEE0000 */ sw $t6, ($a3) +/* 06540C 8006480C ACE90008 */ sw $t1, 8($a3) +/* 065410 80064810 AFA7003C */ sw $a3, 0x3c($sp) +/* 065414 80064814 0C03233C */ jal func_800C8CF0 +/* 065418 80064818 24840008 */ addiu $a0, $a0, 8 +/* 06541C 8006481C 8FA7003C */ lw $a3, 0x3c($sp) +/* 065420 80064820 3C010E00 */ lui $at, 0xe00 +/* 065424 80064824 24E30010 */ addiu $v1, $a3, 0x10 +/* 065428 80064828 246A0008 */ addiu $t2, $v1, 8 +/* 06542C 8006482C ACE2000C */ sw $v0, 0xc($a3) +/* 065430 80064830 AFAA002C */ sw $t2, 0x2c($sp) +/* 065434 80064834 8E0B002C */ lw $t3, 0x2c($s0) +/* 065438 80064838 86180002 */ lh $t8, 2($s0) +/* 06543C 8006483C 316C00FF */ andi $t4, $t3, 0xff +/* 065440 80064840 000C6C00 */ sll $t5, $t4, 0x10 +/* 065444 80064844 01A17025 */ or $t6, $t5, $at +/* 065448 80064848 330FFFFF */ andi $t7, $t8, 0xffff +/* 06544C 8006484C 01CFC825 */ or $t9, $t6, $t7 +/* 065450 80064850 AC790000 */ sw $t9, ($v1) +/* 065454 80064854 8E040028 */ lw $a0, 0x28($s0) +/* 065458 80064858 0C03233C */ jal func_800C8CF0 +/* 06545C 8006485C AFA30020 */ sw $v1, 0x20($sp) +/* 065460 80064860 8FA50020 */ lw $a1, 0x20($sp) +/* 065464 80064864 00000000 */ nop +/* 065468 80064868 ACA20004 */ sw $v0, 4($a1) +/* 06546C 8006486C AE00002C */ sw $zero, 0x2c($s0) +/* 065470 80064870 8FBF001C */ lw $ra, 0x1c($sp) +/* 065474 80064874 8FB00018 */ lw $s0, 0x18($sp) +/* 065478 80064878 8FA2002C */ lw $v0, 0x2c($sp) +/* 06547C 8006487C 03E00008 */ jr $ra +/* 065480 80064880 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_064830/func_80064884.s b/asm/non_matchings/unknown_064830/func_80064884.s new file mode 100644 index 00000000..d8420fd1 --- /dev/null +++ b/asm/non_matchings/unknown_064830/func_80064884.s @@ -0,0 +1,47 @@ +glabel func_80064884 +/* 065484 80064884 44853000 */ mtc1 $a1, $f6 +/* 065488 80064888 C4840010 */ lwc1 $f4, 0x10($a0) +/* 06548C 8006488C 46803220 */ cvt.s.w $f8, $f6 +/* 065490 80064890 C4900014 */ lwc1 $f16, 0x14($a0) +/* 065494 80064894 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 065498 80064898 46082282 */ mul.s $f10, $f4, $f8 +/* 06549C 8006489C 44802000 */ mtc1 $zero, $f4 +/* 0654A0 800648A0 44812800 */ mtc1 $at, $f5 +/* 0654A4 800648A4 3C014010 */ li $at, 0x40100000 # 2.250000 +/* 0654A8 800648A8 460A8480 */ add.s $f18, $f16, $f10 +/* 0654AC 800648AC E4920014 */ swc1 $f18, 0x14($a0) +/* 0654B0 800648B0 C4860014 */ lwc1 $f6, 0x14($a0) +/* 0654B4 800648B4 00000000 */ nop +/* 0654B8 800648B8 46003021 */ cvt.d.s $f0, $f6 +/* 0654BC 800648BC 4620203C */ c.lt.d $f4, $f0 +/* 0654C0 800648C0 44803000 */ mtc1 $zero, $f6 +/* 0654C4 800648C4 45000008 */ bc1f .L800648E8 +/* 0654C8 800648C8 00000000 */ nop +/* 0654CC 800648CC 44814800 */ mtc1 $at, $f9 +/* 0654D0 800648D0 44804000 */ mtc1 $zero, $f8 +/* 0654D4 800648D4 00000000 */ nop +/* 0654D8 800648D8 46280401 */ sub.d $f16, $f0, $f8 +/* 0654DC 800648DC 462082A0 */ cvt.s.d $f10, $f16 +/* 0654E0 800648E0 10000003 */ b .L800648F0 +/* 0654E4 800648E4 E48A0014 */ swc1 $f10, 0x14($a0) +.L800648E8: +/* 0654E8 800648E8 462004A0 */ cvt.s.d $f18, $f0 +/* 0654EC 800648EC E4920014 */ swc1 $f18, 0x14($a0) +.L800648F0: +/* 0654F0 800648F0 C4820014 */ lwc1 $f2, 0x14($a0) +/* 0654F4 800648F4 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 0654F8 800648F8 4606103C */ c.lt.s $f2, $f6 +/* 0654FC 800648FC 44814800 */ mtc1 $at, $f9 +/* 065500 80064900 45000002 */ bc1f .L8006490C +/* 065504 80064904 00000000 */ nop +/* 065508 80064908 46001087 */ neg.s $f2, $f2 +.L8006490C: +/* 06550C 8006490C 44804000 */ mtc1 $zero, $f8 +/* 065510 80064910 46001121 */ cvt.d.s $f4, $f2 +/* 065514 80064914 46282401 */ sub.d $f16, $f4, $f8 +/* 065518 80064918 C48A001C */ lwc1 $f10, 0x1c($a0) +/* 06551C 8006491C 462080A0 */ cvt.s.d $f2, $f16 +/* 065520 80064920 46025002 */ mul.s $f0, $f10, $f2 +/* 065524 80064924 03E00008 */ jr $ra +/* 065528 80064928 00000000 */ nop + diff --git a/asm/non_matchings/unknown_064830/func_8006492C.s b/asm/non_matchings/unknown_064830/func_8006492C.s new file mode 100644 index 00000000..15d1505d --- /dev/null +++ b/asm/non_matchings/unknown_064830/func_8006492C.s @@ -0,0 +1,12 @@ +glabel func_8006492C +/* 06552C 8006492C 3C01800E */ lui $at, 0x800e +/* 065530 80064930 AFA40000 */ sw $a0, ($sp) +/* 065534 80064934 03E00008 */ jr $ra +/* 065538 80064938 A024CEB0 */ sb $a0, -0x3150($at) + +/* 06553C 8006493C 3C02800E */ lui $v0, %hi(D_800DCEB0) # $v0, 0x800e +/* 065540 80064940 9042CEB0 */ lbu $v0, %lo(D_800DCEB0)($v0) +/* 065544 80064944 03E00008 */ jr $ra +/* 065548 80064948 00000000 */ nop + +/* 06554C 8006494C 00000000 */ nop diff --git a/asm/non_matchings/unknown_064830/func_80064950.s b/asm/non_matchings/unknown_064830/func_80064950.s new file mode 100644 index 00000000..650d0ee4 --- /dev/null +++ b/asm/non_matchings/unknown_064830/func_80064950.s @@ -0,0 +1,51 @@ +glabel func_80064950 +/* 065550 80064950 84820000 */ lh $v0, ($a0) +/* 065554 80064954 24194000 */ li $t9, 16384 +/* 065558 80064958 00027380 */ sll $t6, $v0, 0xe +/* 06555C 8006495C 000E1BC3 */ sra $v1, $t6, 0xf +/* 065560 80064960 00037C00 */ sll $t7, $v1, 0x10 +/* 065564 80064964 000F1C03 */ sra $v1, $t7, 0x10 +/* 065568 80064968 03234023 */ subu $t0, $t9, $v1 +/* 06556C 8006496C 24090001 */ li $t1, 1 +/* 065570 80064970 A4880002 */ sh $t0, 2($a0) +/* 065574 80064974 AC89002C */ sw $t1, 0x2c($a0) +/* 065578 80064978 00002825 */ move $a1, $zero +/* 06557C 8006497C 00803025 */ move $a2, $a0 +.L80064980: +/* 065580 80064980 24A50001 */ addiu $a1, $a1, 1 +/* 065584 80064984 28A10008 */ slti $at, $a1, 8 +/* 065588 80064988 24C60002 */ addiu $a2, $a2, 2 +/* 06558C 8006498C 1420FFFC */ bnez $at, .L80064980 +/* 065590 80064990 A4C00006 */ sh $zero, 6($a2) +/* 065594 80064994 44832000 */ mtc1 $v1, $f4 +/* 065598 80064998 3C0140D0 */ li $at, 0x40D00000 # 6.500000 +/* 06559C 8006499C 468021A1 */ cvt.d.w $f6, $f4 +/* 0655A0 800649A0 44816800 */ mtc1 $at, $f13 +/* 0655A4 800649A4 44806000 */ mtc1 $zero, $f12 +/* 0655A8 800649A8 24A50001 */ addiu $a1, $a1, 1 +/* 0655AC 800649AC 462C3083 */ div.d $f2, $f6, $f12 +/* 0655B0 800649B0 28A10010 */ slti $at, $a1, 0x10 +/* 0655B4 800649B4 A4C30008 */ sh $v1, 8($a2) +/* 0655B8 800649B8 24C60002 */ addiu $a2, $a2, 2 +/* 0655BC 800649BC 10200010 */ beqz $at, .L80064A00 +/* 0655C0 800649C0 46201006 */ mov.d $f0, $f2 +.L800649C4: +/* 0655C4 800649C4 46220002 */ mul.d $f0, $f0, $f2 +/* 0655C8 800649C8 24A50001 */ addiu $a1, $a1, 1 +/* 0655CC 800649CC 24C60002 */ addiu $a2, $a2, 2 +/* 0655D0 800649D0 462C0202 */ mul.d $f8, $f0, $f12 +/* 0655D4 800649D4 444AF800 */ cfc1 $t2, $31 +/* 0655D8 800649D8 00000000 */ nop +/* 0655DC 800649DC 35410003 */ ori $at, $t2, 3 +/* 0655E0 800649E0 38210002 */ xori $at, $at, 2 +/* 0655E4 800649E4 44C1F800 */ ctc1 $at, $31 +/* 0655E8 800649E8 28A10010 */ slti $at, $a1, 0x10 +/* 0655EC 800649EC 462042A4 */ cvt.w.d $f10, $f8 +/* 0655F0 800649F0 440B5000 */ mfc1 $t3, $f10 +/* 0655F4 800649F4 44CAF800 */ ctc1 $t2, $31 +/* 0655F8 800649F8 1420FFF2 */ bnez $at, .L800649C4 +/* 0655FC 800649FC A4CB0006 */ sh $t3, 6($a2) +.L80064A00: +/* 065600 80064A00 03E00008 */ jr $ra +/* 065604 80064A04 00000000 */ nop + diff --git a/asm/non_matchings/unknown_064830/func_80064A08.s b/asm/non_matchings/unknown_064830/func_80064A08.s new file mode 100644 index 00000000..0aebd3c4 --- /dev/null +++ b/asm/non_matchings/unknown_064830/func_80064A08.s @@ -0,0 +1,288 @@ +glabel func_80064A08 +/* 065608 80064A08 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 06560C 80064A0C AFB00038 */ sw $s0, 0x38($sp) +/* 065610 80064A10 00068400 */ sll $s0, $a2, 0x10 +/* 065614 80064A14 AFA60068 */ sw $a2, 0x68($sp) +/* 065618 80064A18 00107403 */ sra $t6, $s0, 0x10 +/* 06561C 80064A1C AFBF005C */ sw $ra, 0x5c($sp) +/* 065620 80064A20 AFB60050 */ sw $s6, 0x50($sp) +/* 065624 80064A24 AFA50064 */ sw $a1, 0x64($sp) +/* 065628 80064A28 AFA7006C */ sw $a3, 0x6c($sp) +/* 06562C 80064A2C 3C068006 */ lui $a2, %hi(D_80063F94) # $a2, 0x8006 +/* 065630 80064A30 0080B025 */ move $s6, $a0 +/* 065634 80064A34 01C08025 */ move $s0, $t6 +/* 065638 80064A38 AFBE0058 */ sw $fp, 0x58($sp) +/* 06563C 80064A3C AFB70054 */ sw $s7, 0x54($sp) +/* 065640 80064A40 AFB5004C */ sw $s5, 0x4c($sp) +/* 065644 80064A44 AFB40048 */ sw $s4, 0x48($sp) +/* 065648 80064A48 AFB30044 */ sw $s3, 0x44($sp) +/* 06564C 80064A4C AFB20040 */ sw $s2, 0x40($sp) +/* 065650 80064A50 AFB1003C */ sw $s1, 0x3c($sp) +/* 065654 80064A54 E7BB0030 */ swc1 $f27, 0x30($sp) +/* 065658 80064A58 E7BA0034 */ swc1 $f26, 0x34($sp) +/* 06565C 80064A5C E7B90028 */ swc1 $f25, 0x28($sp) +/* 065660 80064A60 E7B8002C */ swc1 $f24, 0x2c($sp) +/* 065664 80064A64 E7B70020 */ swc1 $f23, 0x20($sp) +/* 065668 80064A68 E7B60024 */ swc1 $f22, 0x24($sp) +/* 06566C 80064A6C E7B50018 */ swc1 $f21, 0x18($sp) +/* 065670 80064A70 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 065674 80064A74 24C63F94 */ addiu $a2, %lo(D_80063F94) # addiu $a2, $a2, 0x3f94 +/* 065678 80064A78 24070005 */ li $a3, 5 +/* 06567C 80064A7C 0C03282C */ jal func_800CA0B0 +/* 065680 80064A80 00002825 */ move $a1, $zero +/* 065684 80064A84 8FA20064 */ lw $v0, 0x64($sp) +/* 065688 80064A88 3C0F8006 */ lui $t7, %hi(D_80063C30) # $t7, 0x8006 +/* 06568C 80064A8C 3C188006 */ lui $t8, %hi(D_80063FAC) # $t8, 0x8006 +/* 065690 80064A90 25EF3C30 */ addiu $t7, %lo(D_80063C30) # addiu $t7, $t7, 0x3c30 +/* 065694 80064A94 27183FAC */ addiu $t8, %lo(D_80063FAC) # addiu $t8, $t8, 0x3fac +/* 065698 80064A98 AECF0004 */ sw $t7, 4($s6) +/* 06569C 80064A9C AED80028 */ sw $t8, 0x28($s6) +/* 0656A0 80064AA0 0050C821 */ addu $t9, $v0, $s0 +/* 0656A4 80064AA4 9328001C */ lbu $t0, 0x1c($t9) +/* 0656A8 80064AA8 3C13800E */ lui $s3, %hi(D_800DD028) # $s3, 0x800e +/* 0656AC 80064AAC 2509FFFF */ addiu $t1, $t0, -1 +/* 0656B0 80064AB0 2D210006 */ sltiu $at, $t1, 6 +/* 0656B4 80064AB4 1020001C */ beqz $at, .L80064B28 +/* 0656B8 80064AB8 2673D028 */ addiu $s3, %lo(D_800DD028) # addiu $s3, $s3, -0x2fd8 +/* 0656BC 80064ABC 00094880 */ sll $t1, $t1, 2 +/* 0656C0 80064AC0 3C01800E */ lui $at, 0x800e +/* 0656C4 80064AC4 00290821 */ addu $at, $at, $t1 +/* 0656C8 80064AC8 8C296EA0 */ lw $t1, 0x6ea0($at) +/* 0656CC 80064ACC 00000000 */ nop +/* 0656D0 80064AD0 01200008 */ jr $t1 +/* 0656D4 80064AD4 00000000 */ nop +/* 0656D8 80064AD8 3C13800E */ lui $s3, %hi(D_800DCEC0) # $s3, 0x800e +/* 0656DC 80064ADC 10000012 */ b .L80064B28 +/* 0656E0 80064AE0 2673CEC0 */ addiu $s3, %lo(D_800DCEC0) # addiu $s3, $s3, -0x3140 +/* 0656E4 80064AE4 3C13800E */ lui $s3, %hi(D_800DCF28) # $s3, 0x800e +/* 0656E8 80064AE8 1000000F */ b .L80064B28 +/* 0656EC 80064AEC 2673CF28 */ addiu $s3, %lo(D_800DCF28) # addiu $s3, $s3, -0x30d8 +/* 0656F0 80064AF0 3C13800E */ lui $s3, %hi(D_800DCFB0) # $s3, 0x800e +/* 0656F4 80064AF4 1000000C */ b .L80064B28 +/* 0656F8 80064AF8 2673CFB0 */ addiu $s3, %lo(D_800DCFB0) # addiu $s3, $s3, -0x3050 +/* 0656FC 80064AFC 3C13800E */ lui $s3, %hi(D_800DCFD8) # $s3, 0x800e +/* 065700 80064B00 10000009 */ b .L80064B28 +/* 065704 80064B04 2673CFD8 */ addiu $s3, %lo(D_800DCFD8) # addiu $s3, $s3, -0x3028 +/* 065708 80064B08 3C13800E */ lui $s3, %hi(D_800DD000) # $s3, 0x800e +/* 06570C 80064B0C 10000006 */ b .L80064B28 +/* 065710 80064B10 2673D000 */ addiu $s3, %lo(D_800DD000) # addiu $s3, $s3, -0x3000 +/* 065714 80064B14 00105080 */ sll $t2, $s0, 2 +/* 065718 80064B18 004A5821 */ addu $t3, $v0, $t2 +/* 06571C 80064B1C 8D730020 */ lw $s3, 0x20($t3) +/* 065720 80064B20 10000002 */ b .L80064B2C +/* 065724 80064B24 8E6C0000 */ lw $t4, ($s3) +.L80064B28: +/* 065728 80064B28 8E6C0000 */ lw $t4, ($s3) +.L80064B2C: +/* 06572C 80064B2C 241E0028 */ li $fp, 40 +/* 065730 80064B30 318E00FF */ andi $t6, $t4, 0xff +/* 065734 80064B34 01DE0019 */ multu $t6, $fp +/* 065738 80064B38 A2CC0024 */ sb $t4, 0x24($s6) +/* 06573C 80064B3C 8E6D0004 */ lw $t5, 4($s3) +/* 065740 80064B40 3C1500FF */ lui $s5, (0x00FFFFFF >> 16) # lui $s5, 0xff +/* 065744 80064B44 36B5FFFF */ ori $s5, (0x00FFFFFF & 0xFFFF) # ori $s5, $s5, 0xffff +/* 065748 80064B48 24110002 */ li $s1, 2 +/* 06574C 80064B4C 02A02825 */ move $a1, $s5 +/* 065750 80064B50 AECD001C */ sw $t5, 0x1c($s6) +/* 065754 80064B54 00002012 */ mflo $a0 +/* 065758 80064B58 0C01C327 */ jal func_80070C9C +/* 06575C 80064B5C 00000000 */ nop +/* 065760 80064B60 8EC4001C */ lw $a0, 0x1c($s6) +/* 065764 80064B64 AEC20020 */ sw $v0, 0x20($s6) +/* 065768 80064B68 00047840 */ sll $t7, $a0, 1 +/* 06576C 80064B6C 01E02025 */ move $a0, $t7 +/* 065770 80064B70 0C01C327 */ jal func_80070C9C +/* 065774 80064B74 02A02825 */ move $a1, $s5 +/* 065778 80064B78 8ED8001C */ lw $t8, 0x1c($s6) +/* 06577C 80064B7C AEC20014 */ sw $v0, 0x14($s6) +/* 065780 80064B80 AEC20018 */ sw $v0, 0x18($s6) +/* 065784 80064B84 1300000B */ beqz $t8, .L80064BB4 +/* 065788 80064B88 00001825 */ move $v1, $zero +.L80064B8C: +/* 06578C 80064B8C 8ED90014 */ lw $t9, 0x14($s6) +/* 065790 80064B90 00034040 */ sll $t0, $v1, 1 +/* 065794 80064B94 03284821 */ addu $t1, $t9, $t0 +/* 065798 80064B98 A5200000 */ sh $zero, ($t1) +/* 06579C 80064B9C 8ECB001C */ lw $t3, 0x1c($s6) +/* 0657A0 80064BA0 24630001 */ addiu $v1, $v1, 1 +/* 0657A4 80064BA4 306AFFFF */ andi $t2, $v1, 0xffff +/* 0657A8 80064BA8 014B082B */ sltu $at, $t2, $t3 +/* 0657AC 80064BAC 1420FFF7 */ bnez $at, .L80064B8C +/* 0657B0 80064BB0 01401825 */ move $v1, $t2 +.L80064BB4: +/* 0657B4 80064BB4 92CC0024 */ lbu $t4, 0x24($s6) +/* 0657B8 80064BB8 0000A025 */ move $s4, $zero +/* 0657BC 80064BBC 19800091 */ blez $t4, .L80064E04 +/* 0657C0 80064BC0 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0657C4 80064BC4 4481C000 */ mtc1 $at, $f24 +/* 0657C8 80064BC8 3C01447A */ li $at, 0x447A0000 # 1000.000000 +/* 0657CC 80064BCC 4481B000 */ mtc1 $at, $f22 +/* 0657D0 80064BD0 3C01800E */ lui $at, %hi(D_800E6EBC) # $at, 0x800e +/* 0657D4 80064BD4 C4356EB8 */ lwc1 $f21, %lo(D_800E6EB8)($at) +/* 0657D8 80064BD8 C4346EBC */ lwc1 $f20, %lo(D_800E6EBC)($at) +/* 0657DC 80064BDC 4480D000 */ mtc1 $zero, $f26 +/* 0657E0 80064BE0 24170001 */ li $s7, 1 +.L80064BE4: +/* 0657E4 80064BE4 029E0019 */ multu $s4, $fp +/* 0657E8 80064BE8 00117880 */ sll $t7, $s1, 2 +/* 0657EC 80064BEC 8ECD0020 */ lw $t5, 0x20($s6) +/* 0657F0 80064BF0 026FC021 */ addu $t8, $s3, $t7 +/* 0657F4 80064BF4 26310001 */ addiu $s1, $s1, 1 +/* 0657F8 80064BF8 8F190000 */ lw $t9, ($t8) +/* 0657FC 80064BFC 3228FFFF */ andi $t0, $s1, 0xffff +/* 065800 80064C00 00084880 */ sll $t1, $t0, 2 +/* 065804 80064C04 02695021 */ addu $t2, $s3, $t1 +/* 065808 80064C08 25110001 */ addiu $s1, $t0, 1 +/* 06580C 80064C0C 322CFFFF */ andi $t4, $s1, 0xffff +/* 065810 80064C10 25910001 */ addiu $s1, $t4, 1 +/* 065814 80064C14 00007012 */ mflo $t6 +/* 065818 80064C18 01AE8021 */ addu $s0, $t5, $t6 +/* 06581C 80064C1C AE190000 */ sw $t9, ($s0) +/* 065820 80064C20 8D4B0000 */ lw $t3, ($t2) +/* 065824 80064C24 000C6880 */ sll $t5, $t4, 2 +/* 065828 80064C28 026D7021 */ addu $t6, $s3, $t5 +/* 06582C 80064C2C AE0B0004 */ sw $t3, 4($s0) +/* 065830 80064C30 8DCF0000 */ lw $t7, ($t6) +/* 065834 80064C34 3238FFFF */ andi $t8, $s1, 0xffff +/* 065838 80064C38 0018C880 */ sll $t9, $t8, 2 +/* 06583C 80064C3C 02794021 */ addu $t0, $s3, $t9 +/* 065840 80064C40 27110001 */ addiu $s1, $t8, 1 +/* 065844 80064C44 A60F000A */ sh $t7, 0xa($s0) +/* 065848 80064C48 8D090000 */ lw $t1, ($t0) +/* 06584C 80064C4C 322AFFFF */ andi $t2, $s1, 0xffff +/* 065850 80064C50 000A5880 */ sll $t3, $t2, 2 +/* 065854 80064C54 026B6021 */ addu $t4, $s3, $t3 +/* 065858 80064C58 25510001 */ addiu $s1, $t2, 1 +/* 06585C 80064C5C A6090008 */ sh $t1, 8($s0) +/* 065860 80064C60 8D8D0000 */ lw $t5, ($t4) +/* 065864 80064C64 322EFFFF */ andi $t6, $s1, 0xffff +/* 065868 80064C68 000E7880 */ sll $t7, $t6, 2 +/* 06586C 80064C6C 026FC021 */ addu $t8, $s3, $t7 +/* 065870 80064C70 A60D000C */ sh $t5, 0xc($s0) +/* 065874 80064C74 8F020000 */ lw $v0, ($t8) +/* 065878 80064C78 01C08825 */ move $s1, $t6 +/* 06587C 80064C7C 1040003B */ beqz $v0, .L80064D6C +/* 065880 80064C80 02205025 */ move $t2, $s1 +/* 065884 80064C84 44822000 */ mtc1 $v0, $f4 +/* 065888 80064C88 8FB90064 */ lw $t9, 0x64($sp) +/* 06588C 80064C8C 468021A0 */ cvt.s.w $f6, $f4 +/* 065890 80064C90 8F280018 */ lw $t0, 0x18($t9) +/* 065894 80064C94 8E0A0004 */ lw $t2, 4($s0) +/* 065898 80064C98 46163203 */ div.s $f8, $f6, $f22 +/* 06589C 80064C9C 44888000 */ mtc1 $t0, $f16 +/* 0658A0 80064CA0 8E0B0000 */ lw $t3, ($s0) +/* 0658A4 80064CA4 468084A1 */ cvt.d.w $f18, $f16 +/* 0658A8 80064CA8 25D10001 */ addiu $s1, $t6, 1 +/* 0658AC 80064CAC 3229FFFF */ andi $t1, $s1, 0xffff +/* 0658B0 80064CB0 014B6023 */ subu $t4, $t2, $t3 +/* 0658B4 80064CB4 01208825 */ move $s1, $t1 +/* 0658B8 80064CB8 00116880 */ sll $t5, $s1, 2 +/* 0658BC 80064CBC 026D7021 */ addu $t6, $s3, $t5 +/* 0658C0 80064CC0 3C0141F0 */ li $at, 0x41F00000 # 30.000000 +/* 0658C4 80064CC4 46004021 */ cvt.d.s $f0, $f8 +/* 0658C8 80064CC8 46200280 */ add.d $f10, $f0, $f0 +/* 0658CC 80064CCC 448C4000 */ mtc1 $t4, $f8 +/* 0658D0 80064CD0 46325103 */ div.d $f4, $f10, $f18 +/* 0658D4 80064CD4 46804421 */ cvt.d.w $f16, $f8 +/* 0658D8 80064CD8 462021A0 */ cvt.s.d $f6, $f4 +/* 0658DC 80064CDC 05810005 */ bgez $t4, .L80064CF4 +/* 0658E0 80064CE0 E6060010 */ swc1 $f6, 0x10($s0) +/* 0658E4 80064CE4 44815800 */ mtc1 $at, $f11 +/* 0658E8 80064CE8 44805000 */ mtc1 $zero, $f10 +/* 0658EC 80064CEC 00000000 */ nop +/* 0658F0 80064CF0 462A8400 */ add.d $f16, $f16, $f10 +.L80064CF4: +/* 0658F4 80064CF4 8DCF0000 */ lw $t7, ($t6) +/* 0658F8 80064CF8 26310001 */ addiu $s1, $s1, 1 +/* 0658FC 80064CFC 448F9000 */ mtc1 $t7, $f18 +/* 065900 80064D00 3238FFFF */ andi $t8, $s1, 0xffff +/* 065904 80064D04 46809120 */ cvt.s.w $f4, $f18 +/* 065908 80064D08 03008825 */ move $s1, $t8 +/* 06590C 80064D0C E6180014 */ swc1 $f24, 0x14($s0) +/* 065910 80064D10 460021A1 */ cvt.d.s $f6, $f4 +/* 065914 80064D14 00000000 */ nop +/* 065918 80064D18 46343203 */ div.d $f8, $f6, $f20 +/* 06591C 80064D1C AE000018 */ sw $zero, 0x18($s0) +/* 065920 80064D20 24040034 */ li $a0, 52 +/* 065924 80064D24 02A02825 */ move $a1, $s5 +/* 065928 80064D28 46304282 */ mul.d $f10, $f8, $f16 +/* 06592C 80064D2C 462054A0 */ cvt.s.d $f18, $f10 +/* 065930 80064D30 0C01C327 */ jal func_80070C9C +/* 065934 80064D34 E612001C */ swc1 $f18, 0x1c($s0) +/* 065938 80064D38 AE020024 */ sw $v0, 0x24($s0) +/* 06593C 80064D3C 24040020 */ li $a0, 32 +/* 065940 80064D40 0C01C327 */ jal func_80070C9C +/* 065944 80064D44 02A02825 */ move $a1, $s5 +/* 065948 80064D48 8E190024 */ lw $t9, 0x24($s0) +/* 06594C 80064D4C 00000000 */ nop +/* 065950 80064D50 AF220014 */ sw $v0, 0x14($t9) +/* 065954 80064D54 8E080024 */ lw $t0, 0x24($s0) +/* 065958 80064D58 00000000 */ nop +/* 06595C 80064D5C E51A0020 */ swc1 $f26, 0x20($t0) +/* 065960 80064D60 8E090024 */ lw $t1, 0x24($s0) +/* 065964 80064D64 10000005 */ b .L80064D7C +/* 065968 80064D68 AD370024 */ sw $s7, 0x24($t1) +.L80064D6C: +/* 06596C 80064D6C 25510002 */ addiu $s1, $t2, 2 +/* 065970 80064D70 322BFFFF */ andi $t3, $s1, 0xffff +/* 065974 80064D74 AE000024 */ sw $zero, 0x24($s0) +/* 065978 80064D78 01608825 */ move $s1, $t3 +.L80064D7C: +/* 06597C 80064D7C 00116080 */ sll $t4, $s1, 2 +/* 065980 80064D80 026C9021 */ addu $s2, $s3, $t4 +/* 065984 80064D84 8E4D0000 */ lw $t5, ($s2) +/* 065988 80064D88 24040030 */ li $a0, 48 +/* 06598C 80064D8C 11A00013 */ beqz $t5, .L80064DDC +/* 065990 80064D90 00000000 */ nop +/* 065994 80064D94 0C01C327 */ jal func_80070C9C +/* 065998 80064D98 02A02825 */ move $a1, $s5 +/* 06599C 80064D9C AE020020 */ sw $v0, 0x20($s0) +/* 0659A0 80064DA0 24040008 */ li $a0, 8 +/* 0659A4 80064DA4 0C01C327 */ jal func_80070C9C +/* 0659A8 80064DA8 02A02825 */ move $a1, $s5 +/* 0659AC 80064DAC 8E0E0020 */ lw $t6, 0x20($s0) +/* 0659B0 80064DB0 26310001 */ addiu $s1, $s1, 1 +/* 0659B4 80064DB4 ADC20028 */ sw $v0, 0x28($t6) +/* 0659B8 80064DB8 8E180020 */ lw $t8, 0x20($s0) +/* 0659BC 80064DBC 8E4F0000 */ lw $t7, ($s2) +/* 0659C0 80064DC0 3239FFFF */ andi $t9, $s1, 0xffff +/* 0659C4 80064DC4 A70F0000 */ sh $t7, ($t8) +/* 0659C8 80064DC8 8E040020 */ lw $a0, 0x20($s0) +/* 0659CC 80064DCC 0C019254 */ jal func_80064950 +/* 0659D0 80064DD0 03208825 */ move $s1, $t9 +/* 0659D4 80064DD4 10000006 */ b .L80064DF0 +/* 0659D8 80064DD8 92CA0024 */ lbu $t2, 0x24($s6) +.L80064DDC: +/* 0659DC 80064DDC 26310001 */ addiu $s1, $s1, 1 +/* 0659E0 80064DE0 3228FFFF */ andi $t0, $s1, 0xffff +/* 0659E4 80064DE4 AE000020 */ sw $zero, 0x20($s0) +/* 0659E8 80064DE8 01008825 */ move $s1, $t0 +/* 0659EC 80064DEC 92CA0024 */ lbu $t2, 0x24($s6) +.L80064DF0: +/* 0659F0 80064DF0 26940001 */ addiu $s4, $s4, 1 +/* 0659F4 80064DF4 3289FFFF */ andi $t1, $s4, 0xffff +/* 0659F8 80064DF8 012A082A */ slt $at, $t1, $t2 +/* 0659FC 80064DFC 1420FF79 */ bnez $at, .L80064BE4 +/* 065A00 80064E00 0120A025 */ move $s4, $t1 +.L80064E04: +/* 065A04 80064E04 8FBF005C */ lw $ra, 0x5c($sp) +/* 065A08 80064E08 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 065A0C 80064E0C C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 065A10 80064E10 C7B70020 */ lwc1 $f23, 0x20($sp) +/* 065A14 80064E14 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 065A18 80064E18 C7B90028 */ lwc1 $f25, 0x28($sp) +/* 065A1C 80064E1C C7B8002C */ lwc1 $f24, 0x2c($sp) +/* 065A20 80064E20 C7BB0030 */ lwc1 $f27, 0x30($sp) +/* 065A24 80064E24 C7BA0034 */ lwc1 $f26, 0x34($sp) +/* 065A28 80064E28 8FB00038 */ lw $s0, 0x38($sp) +/* 065A2C 80064E2C 8FB1003C */ lw $s1, 0x3c($sp) +/* 065A30 80064E30 8FB20040 */ lw $s2, 0x40($sp) +/* 065A34 80064E34 8FB30044 */ lw $s3, 0x44($sp) +/* 065A38 80064E38 8FB40048 */ lw $s4, 0x48($sp) +/* 065A3C 80064E3C 8FB5004C */ lw $s5, 0x4c($sp) +/* 065A40 80064E40 8FB60050 */ lw $s6, 0x50($sp) +/* 065A44 80064E44 8FB70054 */ lw $s7, 0x54($sp) +/* 065A48 80064E48 8FBE0058 */ lw $fp, 0x58($sp) +/* 065A4C 80064E4C 03E00008 */ jr $ra +/* 065A50 80064E50 27BD0060 */ addiu $sp, $sp, 0x60 + diff --git a/asm/non_matchings/unknown_064830/func_80064E54.s b/asm/non_matchings/unknown_064830/func_80064E54.s new file mode 100644 index 00000000..bfea6b4e --- /dev/null +++ b/asm/non_matchings/unknown_064830/func_80064E54.s @@ -0,0 +1,43 @@ +glabel func_80064E54 +/* 065A54 80064E54 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 065A58 80064E58 AFA5002C */ sw $a1, 0x2c($sp) +/* 065A5C 80064E5C AFBF0024 */ sw $ra, 0x24($sp) +/* 065A60 80064E60 AFB00020 */ sw $s0, 0x20($sp) +/* 065A64 80064E64 3C05800D */ lui $a1, %hi(D_800CA0D0) # $a1, 0x800d +/* 065A68 80064E68 3C06800D */ lui $a2, %hi(D_800CAA7C) # $a2, 0x800d +/* 065A6C 80064E6C 00808025 */ move $s0, $a0 +/* 065A70 80064E70 24C6AA7C */ addiu $a2, %lo(D_800CAA7C) # addiu $a2, $a2, -0x5584 +/* 065A74 80064E74 24A5A0D0 */ addiu $a1, %lo(D_800CA0D0) # addiu $a1, $a1, -0x5f30 +/* 065A78 80064E78 0C03282C */ jal func_800CA0B0 +/* 065A7C 80064E7C 24070004 */ li $a3, 4 +/* 065A80 80064E80 8FA6002C */ lw $a2, 0x2c($sp) +/* 065A84 80064E84 240E0050 */ li $t6, 80 +/* 065A88 80064E88 AFAE0010 */ sw $t6, 0x10($sp) +/* 065A8C 80064E8C 00002025 */ move $a0, $zero +/* 065A90 80064E90 00002825 */ move $a1, $zero +/* 065A94 80064E94 0C031DFC */ jal func_800C77F0 +/* 065A98 80064E98 24070001 */ li $a3, 1 +/* 065A9C 80064E9C 24030001 */ li $v1, 1 +/* 065AA0 80064EA0 AE020014 */ sw $v0, 0x14($s0) +/* 065AA4 80064EA4 AE030038 */ sw $v1, 0x38($s0) +/* 065AA8 80064EA8 AE000048 */ sw $zero, 0x48($s0) +/* 065AAC 80064EAC A603001A */ sh $v1, 0x1a($s0) +/* 065AB0 80064EB0 A6030028 */ sh $v1, 0x28($s0) +/* 065AB4 80064EB4 A603002E */ sh $v1, 0x2e($s0) +/* 065AB8 80064EB8 A603001C */ sh $v1, 0x1c($s0) +/* 065ABC 80064EBC A603001E */ sh $v1, 0x1e($s0) +/* 065AC0 80064EC0 A6000020 */ sh $zero, 0x20($s0) +/* 065AC4 80064EC4 A6000022 */ sh $zero, 0x22($s0) +/* 065AC8 80064EC8 A6030026 */ sh $v1, 0x26($s0) +/* 065ACC 80064ECC A6000024 */ sh $zero, 0x24($s0) +/* 065AD0 80064ED0 AE000030 */ sw $zero, 0x30($s0) +/* 065AD4 80064ED4 AE000034 */ sw $zero, 0x34($s0) +/* 065AD8 80064ED8 A6000018 */ sh $zero, 0x18($s0) +/* 065ADC 80064EDC AE00003C */ sw $zero, 0x3c($s0) +/* 065AE0 80064EE0 AE000040 */ sw $zero, 0x40($s0) +/* 065AE4 80064EE4 AE000044 */ sw $zero, 0x44($s0) +/* 065AE8 80064EE8 8FBF0024 */ lw $ra, 0x24($sp) +/* 065AEC 80064EEC 8FB00020 */ lw $s0, 0x20($sp) +/* 065AF0 80064EF0 03E00008 */ jr $ra +/* 065AF4 80064EF4 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_064830/func_80064EF8.s b/asm/non_matchings/unknown_064830/func_80064EF8.s new file mode 100644 index 00000000..8a5d69c9 --- /dev/null +++ b/asm/non_matchings/unknown_064830/func_80064EF8.s @@ -0,0 +1,43 @@ +glabel func_80064EF8 +/* 065AF8 80064EF8 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 065AFC 80064EFC AFA5002C */ sw $a1, 0x2c($sp) +/* 065B00 80064F00 AFA60030 */ sw $a2, 0x30($sp) +/* 065B04 80064F04 AFBF0024 */ sw $ra, 0x24($sp) +/* 065B08 80064F08 AFB00020 */ sw $s0, 0x20($sp) +/* 065B0C 80064F0C 3C06800D */ lui $a2, %hi(D_800CB540) # $a2, 0x800d +/* 065B10 80064F10 3C05800D */ lui $a1, %hi(D_800CBBEC) # $a1, 0x800d +/* 065B14 80064F14 00808025 */ move $s0, $a0 +/* 065B18 80064F18 24A5BBEC */ addiu $a1, %lo(D_800CBBEC) # addiu $a1, $a1, -0x4414 +/* 065B1C 80064F1C 24C6B540 */ addiu $a2, %lo(D_800CB540) # addiu $a2, $a2, -0x4ac0 +/* 065B20 80064F20 0C03282C */ jal func_800CA0B0 +/* 065B24 80064F24 00003825 */ move $a3, $zero +/* 065B28 80064F28 8FA60030 */ lw $a2, 0x30($sp) +/* 065B2C 80064F2C 240E0020 */ li $t6, 32 +/* 065B30 80064F30 AFAE0010 */ sw $t6, 0x10($sp) +/* 065B34 80064F34 00002025 */ move $a0, $zero +/* 065B38 80064F38 00002825 */ move $a1, $zero +/* 065B3C 80064F3C 0C031DFC */ jal func_800C77F0 +/* 065B40 80064F40 24070001 */ li $a3, 1 +/* 065B44 80064F44 AE020014 */ sw $v0, 0x14($s0) +/* 065B48 80064F48 8FA60030 */ lw $a2, 0x30($sp) +/* 065B4C 80064F4C 240F0020 */ li $t7, 32 +/* 065B50 80064F50 AFAF0010 */ sw $t7, 0x10($sp) +/* 065B54 80064F54 00002025 */ move $a0, $zero +/* 065B58 80064F58 00002825 */ move $a1, $zero +/* 065B5C 80064F5C 0C031DFC */ jal func_800C77F0 +/* 065B60 80064F60 24070001 */ li $a3, 1 +/* 065B64 80064F64 AE020018 */ sw $v0, 0x18($s0) +/* 065B68 80064F68 8FB9002C */ lw $t9, 0x2c($sp) +/* 065B6C 80064F6C 26040034 */ addiu $a0, $s0, 0x34 +/* 065B70 80064F70 0320F809 */ jalr $t9 +/* 065B74 80064F74 00000000 */ nop +/* 065B78 80064F78 24180001 */ li $t8, 1 +/* 065B7C 80064F7C AE020030 */ sw $v0, 0x30($s0) +/* 065B80 80064F80 AE00003C */ sw $zero, 0x3c($s0) +/* 065B84 80064F84 AE180040 */ sw $t8, 0x40($s0) +/* 065B88 80064F88 AE000044 */ sw $zero, 0x44($s0) +/* 065B8C 80064F8C 8FBF0024 */ lw $ra, 0x24($sp) +/* 065B90 80064F90 8FB00020 */ lw $s0, 0x20($sp) +/* 065B94 80064F94 03E00008 */ jr $ra +/* 065B98 80064F98 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_064830/func_80064F9C.s b/asm/non_matchings/unknown_064830/func_80064F9C.s new file mode 100644 index 00000000..35c6d613 --- /dev/null +++ b/asm/non_matchings/unknown_064830/func_80064F9C.s @@ -0,0 +1,36 @@ +glabel func_80064F9C +/* 065B9C 80064F9C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 065BA0 80064FA0 AFA5002C */ sw $a1, 0x2c($sp) +/* 065BA4 80064FA4 AFBF0024 */ sw $ra, 0x24($sp) +/* 065BA8 80064FA8 AFB00020 */ sw $s0, 0x20($sp) +/* 065BAC 80064FAC 3C05800D */ lui $a1, %hi(D_800CC17C) # $a1, 0x800d +/* 065BB0 80064FB0 3C06800D */ lui $a2, %hi(D_800CC090) # $a2, 0x800d +/* 065BB4 80064FB4 00808025 */ move $s0, $a0 +/* 065BB8 80064FB8 24C6C090 */ addiu $a2, %lo(D_800CC090) # addiu $a2, $a2, -0x3f70 +/* 065BBC 80064FBC 24A5C17C */ addiu $a1, %lo(D_800CC17C) # addiu $a1, $a1, -0x3e84 +/* 065BC0 80064FC0 0C03282C */ jal func_800CA0B0 +/* 065BC4 80064FC4 24070001 */ li $a3, 1 +/* 065BC8 80064FC8 8FA6002C */ lw $a2, 0x2c($sp) +/* 065BCC 80064FCC 240E0020 */ li $t6, 32 +/* 065BD0 80064FD0 AFAE0010 */ sw $t6, 0x10($sp) +/* 065BD4 80064FD4 00002025 */ move $a0, $zero +/* 065BD8 80064FD8 00002825 */ move $a1, $zero +/* 065BDC 80064FDC 0C031DFC */ jal func_800C77F0 +/* 065BE0 80064FE0 24070001 */ li $a3, 1 +/* 065BE4 80064FE4 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 065BE8 80064FE8 44802000 */ mtc1 $zero, $f4 +/* 065BEC 80064FEC 44813000 */ mtc1 $at, $f6 +/* 065BF0 80064FF0 240F0001 */ li $t7, 1 +/* 065BF4 80064FF4 AE020014 */ sw $v0, 0x14($s0) +/* 065BF8 80064FF8 AE0F0024 */ sw $t7, 0x24($s0) +/* 065BFC 80064FFC AE000030 */ sw $zero, 0x30($s0) +/* 065C00 80065000 AE00001C */ sw $zero, 0x1c($s0) +/* 065C04 80065004 AE000028 */ sw $zero, 0x28($s0) +/* 065C08 80065008 AE00002C */ sw $zero, 0x2c($s0) +/* 065C0C 8006500C E6040020 */ swc1 $f4, 0x20($s0) +/* 065C10 80065010 E6060018 */ swc1 $f6, 0x18($s0) +/* 065C14 80065014 8FBF0024 */ lw $ra, 0x24($sp) +/* 065C18 80065018 8FB00020 */ lw $s0, 0x20($sp) +/* 065C1C 8006501C 03E00008 */ jr $ra +/* 065C20 80065020 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_064830/func_80065024.s b/asm/non_matchings/unknown_064830/func_80065024.s new file mode 100644 index 00000000..5f0685f2 --- /dev/null +++ b/asm/non_matchings/unknown_064830/func_80065024.s @@ -0,0 +1,26 @@ +glabel func_80065024 +/* 065C24 80065024 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 065C28 80065028 AFA5001C */ sw $a1, 0x1c($sp) +/* 065C2C 8006502C AFA60020 */ sw $a2, 0x20($sp) +/* 065C30 80065030 AFBF0014 */ sw $ra, 0x14($sp) +/* 065C34 80065034 3C068006 */ lui $a2, %hi(D_800659D4) # $a2, 0x8006 +/* 065C38 80065038 3C058006 */ lui $a1, %hi(D_80065900) # $a1, 0x8006 +/* 065C3C 8006503C 24A55900 */ addiu $a1, %lo(D_80065900) # addiu $a1, $a1, 0x5900 +/* 065C40 80065040 24C659D4 */ addiu $a2, %lo(D_800659D4) # addiu $a2, $a2, 0x59d4 +/* 065C44 80065044 AFA40018 */ sw $a0, 0x18($sp) +/* 065C48 80065048 0C03282C */ jal func_800CA0B0 +/* 065C4C 8006504C 24070006 */ li $a3, 6 +/* 065C50 80065050 8FA40018 */ lw $a0, 0x18($sp) +/* 065C54 80065054 00000000 */ nop +/* 065C58 80065058 AC800014 */ sw $zero, 0x14($a0) +/* 065C5C 8006505C 8FAE0020 */ lw $t6, 0x20($sp) +/* 065C60 80065060 00000000 */ nop +/* 065C64 80065064 AC8E0018 */ sw $t6, 0x18($a0) +/* 065C68 80065068 8FAF001C */ lw $t7, 0x1c($sp) +/* 065C6C 8006506C 00000000 */ nop +/* 065C70 80065070 AC8F001C */ sw $t7, 0x1c($a0) +/* 065C74 80065074 8FBF0014 */ lw $ra, 0x14($sp) +/* 065C78 80065078 27BD0018 */ addiu $sp, $sp, 0x18 +/* 065C7C 8006507C 03E00008 */ jr $ra +/* 065C80 80065080 00000000 */ nop + diff --git a/asm/non_matchings/unknown_064830/func_80065084.s b/asm/non_matchings/unknown_064830/func_80065084.s new file mode 100644 index 00000000..8f6f3813 --- /dev/null +++ b/asm/non_matchings/unknown_064830/func_80065084.s @@ -0,0 +1,26 @@ +glabel func_80065084 +/* 065C84 80065084 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 065C88 80065088 AFA5001C */ sw $a1, 0x1c($sp) +/* 065C8C 8006508C AFA60020 */ sw $a2, 0x20($sp) +/* 065C90 80065090 AFBF0014 */ sw $ra, 0x14($sp) +/* 065C94 80065094 3C06800D */ lui $a2, %hi(D_800CC390) # $a2, 0x800d +/* 065C98 80065098 3C05800D */ lui $a1, %hi(D_800CC3C0) # $a1, 0x800d +/* 065C9C 8006509C 24A5C3C0 */ addiu $a1, %lo(D_800CC3C0) # addiu $a1, $a1, -0x3c40 +/* 065CA0 800650A0 24C6C390 */ addiu $a2, %lo(D_800CC390) # addiu $a2, $a2, -0x3c70 +/* 065CA4 800650A4 AFA40018 */ sw $a0, 0x18($sp) +/* 065CA8 800650A8 0C03282C */ jal func_800CA0B0 +/* 065CAC 800650AC 24070007 */ li $a3, 7 +/* 065CB0 800650B0 8FA40018 */ lw $a0, 0x18($sp) +/* 065CB4 800650B4 00000000 */ nop +/* 065CB8 800650B8 AC800014 */ sw $zero, 0x14($a0) +/* 065CBC 800650BC 8FAE0020 */ lw $t6, 0x20($sp) +/* 065CC0 800650C0 00000000 */ nop +/* 065CC4 800650C4 AC8E0018 */ sw $t6, 0x18($a0) +/* 065CC8 800650C8 8FAF001C */ lw $t7, 0x1c($sp) +/* 065CCC 800650CC 00000000 */ nop +/* 065CD0 800650D0 AC8F001C */ sw $t7, 0x1c($a0) +/* 065CD4 800650D4 8FBF0014 */ lw $ra, 0x14($sp) +/* 065CD8 800650D8 27BD0018 */ addiu $sp, $sp, 0x18 +/* 065CDC 800650DC 03E00008 */ jr $ra +/* 065CE0 800650E0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_064830/func_800650E4.s b/asm/non_matchings/unknown_064830/func_800650E4.s new file mode 100644 index 00000000..df6e7839 --- /dev/null +++ b/asm/non_matchings/unknown_064830/func_800650E4.s @@ -0,0 +1,22 @@ +glabel func_800650E4 +/* 065CE4 800650E4 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 065CE8 800650E8 AFBF0014 */ sw $ra, 0x14($sp) +/* 065CEC 800650EC 3C05800D */ lui $a1, %hi(D_800CC514) # $a1, 0x800d +/* 065CF0 800650F0 3C06800D */ lui $a2, %hi(D_800CC4E0) # $a2, 0x800d +/* 065CF4 800650F4 24C6C4E0 */ addiu $a2, %lo(D_800CC4E0) # addiu $a2, $a2, -0x3b20 +/* 065CF8 800650F8 24A5C514 */ addiu $a1, %lo(D_800CC514) # addiu $a1, $a1, -0x3aec +/* 065CFC 800650FC AFA40018 */ sw $a0, 0x18($sp) +/* 065D00 80065100 0C03282C */ jal func_800CA0B0 +/* 065D04 80065104 24070003 */ li $a3, 3 +/* 065D08 80065108 8FA40018 */ lw $a0, 0x18($sp) +/* 065D0C 8006510C 240E0001 */ li $t6, 1 +/* 065D10 80065110 AC800014 */ sw $zero, 0x14($a0) +/* 065D14 80065114 AC8E0018 */ sw $t6, 0x18($a0) +/* 065D18 80065118 8FBF0014 */ lw $ra, 0x14($sp) +/* 065D1C 8006511C 27BD0018 */ addiu $sp, $sp, 0x18 +/* 065D20 80065120 03E00008 */ jr $ra +/* 065D24 80065124 00000000 */ nop + +/* 065D28 80065128 00000000 */ nop +/* 065D2C 8006512C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_065D30/func_80065130.s b/asm/non_matchings/unknown_065D30/func_80065130.s new file mode 100644 index 00000000..ad011840 --- /dev/null +++ b/asm/non_matchings/unknown_065D30/func_80065130.s @@ -0,0 +1,226 @@ +glabel func_80065130 +/* 065D30 80065130 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 065D34 80065134 AFBF0044 */ sw $ra, 0x44($sp) +/* 065D38 80065138 AFBE0040 */ sw $fp, 0x40($sp) +/* 065D3C 8006513C AFB7003C */ sw $s7, 0x3c($sp) +/* 065D40 80065140 AFB60038 */ sw $s6, 0x38($sp) +/* 065D44 80065144 AFB50034 */ sw $s5, 0x34($sp) +/* 065D48 80065148 AFB40030 */ sw $s4, 0x30($sp) +/* 065D4C 8006514C AFB3002C */ sw $s3, 0x2c($sp) +/* 065D50 80065150 AFB20028 */ sw $s2, 0x28($sp) +/* 065D54 80065154 AFB10024 */ sw $s1, 0x24($sp) +/* 065D58 80065158 AFB00020 */ sw $s0, 0x20($sp) +/* 065D5C 8006515C 8CB70014 */ lw $s7, 0x14($a1) +/* 065D60 80065160 AC800000 */ sw $zero, ($a0) +/* 065D64 80065164 8CAE0004 */ lw $t6, 4($a1) +/* 065D68 80065168 AC800020 */ sw $zero, 0x20($a0) +/* 065D6C 8006516C AC80001C */ sw $zero, 0x1c($a0) +/* 065D70 80065170 AC8E003C */ sw $t6, 0x3c($a0) +/* 065D74 80065174 8CAF0018 */ lw $t7, 0x18($a1) +/* 065D78 80065178 241800A0 */ li $t8, 160 +/* 065D7C 8006517C AC980048 */ sw $t8, 0x48($a0) +/* 065D80 80065180 AC8F0044 */ sw $t7, 0x44($a0) +/* 065D84 80065184 8CB90010 */ lw $t9, 0x10($a1) +/* 065D88 80065188 0080B025 */ move $s6, $a0 +/* 065D8C 8006518C 00A0F025 */ move $fp, $a1 +/* 065D90 80065190 2408001C */ li $t0, 28 +/* 065D94 80065194 AC990024 */ sw $t9, 0x24($a0) +/* 065D98 80065198 AFA80010 */ sw $t0, 0x10($sp) +/* 065D9C 8006519C 00002025 */ move $a0, $zero +/* 065DA0 800651A0 00002825 */ move $a1, $zero +/* 065DA4 800651A4 24070001 */ li $a3, 1 +/* 065DA8 800651A8 0C031DFC */ jal func_800C77F0 +/* 065DAC 800651AC 02E03025 */ move $a2, $s7 +/* 065DB0 800651B0 AFA2005C */ sw $v0, 0x5c($sp) +/* 065DB4 800651B4 0C019439 */ jal func_800650E4 +/* 065DB8 800651B8 00402025 */ move $a0, $v0 +/* 065DBC 800651BC 8FA9005C */ lw $t1, 0x5c($sp) +/* 065DC0 800651C0 240A004C */ li $t2, 76 +/* 065DC4 800651C4 AEC90038 */ sw $t1, 0x38($s6) +/* 065DC8 800651C8 AFAA0010 */ sw $t2, 0x10($sp) +/* 065DCC 800651CC 00002025 */ move $a0, $zero +/* 065DD0 800651D0 00002825 */ move $a1, $zero +/* 065DD4 800651D4 02E03025 */ move $a2, $s7 +/* 065DD8 800651D8 0C031DFC */ jal func_800C77F0 +/* 065DDC 800651DC 24070002 */ li $a3, 2 +/* 065DE0 800651E0 240B0002 */ li $t3, 2 +/* 065DE4 800651E4 AEC20034 */ sw $v0, 0x34($s6) +/* 065DE8 800651E8 AECB0040 */ sw $t3, 0x40($s6) +/* 065DEC 800651EC 8FC70004 */ lw $a3, 4($fp) +/* 065DF0 800651F0 240C0004 */ li $t4, 4 +/* 065DF4 800651F4 AFAC0010 */ sw $t4, 0x10($sp) +/* 065DF8 800651F8 00002025 */ move $a0, $zero +/* 065DFC 800651FC 00002825 */ move $a1, $zero +/* 065E00 80065200 0C031DFC */ jal func_800C77F0 +/* 065E04 80065204 02E03025 */ move $a2, $s7 +/* 065E08 80065208 8EC40034 */ lw $a0, 0x34($s6) +/* 065E0C 8006520C 8FC60004 */ lw $a2, 4($fp) +/* 065E10 80065210 0C019409 */ jal func_80065024 +/* 065E14 80065214 00402825 */ move $a1, $v0 +/* 065E18 80065218 8FC70004 */ lw $a3, 4($fp) +/* 065E1C 8006521C 240D0004 */ li $t5, 4 +/* 065E20 80065220 AFAD0010 */ sw $t5, 0x10($sp) +/* 065E24 80065224 00002025 */ move $a0, $zero +/* 065E28 80065228 00002825 */ move $a1, $zero +/* 065E2C 8006522C 0C031DFC */ jal func_800C77F0 +/* 065E30 80065230 02E03025 */ move $a2, $s7 +/* 065E34 80065234 8EC40034 */ lw $a0, 0x34($s6) +/* 065E38 80065238 8FC60004 */ lw $a2, 4($fp) +/* 065E3C 8006523C 00402825 */ move $a1, $v0 +/* 065E40 80065240 0C019409 */ jal func_80065024 +/* 065E44 80065244 2484004C */ addiu $a0, $a0, 0x4c +/* 065E48 80065248 240E0020 */ li $t6, 32 +/* 065E4C 8006524C AFAE0010 */ sw $t6, 0x10($sp) +/* 065E50 80065250 00002025 */ move $a0, $zero +/* 065E54 80065254 00002825 */ move $a1, $zero +/* 065E58 80065258 02E03025 */ move $a2, $s7 +/* 065E5C 8006525C 0C031DFC */ jal func_800C77F0 +/* 065E60 80065260 24070001 */ li $a3, 1 +/* 065E64 80065264 AEC20030 */ sw $v0, 0x30($s6) +/* 065E68 80065268 8FC70004 */ lw $a3, 4($fp) +/* 065E6C 8006526C 240F0004 */ li $t7, 4 +/* 065E70 80065270 AFAF0010 */ sw $t7, 0x10($sp) +/* 065E74 80065274 00002025 */ move $a0, $zero +/* 065E78 80065278 00002825 */ move $a1, $zero +/* 065E7C 8006527C 0C031DFC */ jal func_800C77F0 +/* 065E80 80065280 02E03025 */ move $a2, $s7 +/* 065E84 80065284 8EC40030 */ lw $a0, 0x30($s6) +/* 065E88 80065288 8FC60004 */ lw $a2, 4($fp) +/* 065E8C 8006528C 0C019421 */ jal func_80065084 +/* 065E90 80065290 00402825 */ move $a1, $v0 +/* 065E94 80065294 00008025 */ move $s0, $zero +/* 065E98 80065298 03C08825 */ move $s1, $fp +/* 065E9C 8006529C 2412004C */ li $s2, 76 +.L800652A0: +/* 065EA0 800652A0 9238001C */ lbu $t8, 0x1c($s1) +/* 065EA4 800652A4 02C02025 */ move $a0, $s6 +/* 065EA8 800652A8 13000008 */ beqz $t8, .L800652CC +/* 065EAC 800652AC 00102C00 */ sll $a1, $s0, 0x10 +/* 065EB0 800652B0 0005CC03 */ sra $t9, $a1, 0x10 +/* 065EB4 800652B4 03202825 */ move $a1, $t9 +/* 065EB8 800652B8 03C03025 */ move $a2, $fp +/* 065EBC 800652BC 0C019618 */ jal func_80065860 +/* 065EC0 800652C0 02E03825 */ move $a3, $s7 +/* 065EC4 800652C4 1000000A */ b .L800652F0 +/* 065EC8 800652C8 26100001 */ addiu $s0, $s0, 1 +.L800652CC: +/* 065ECC 800652CC 02120019 */ multu $s0, $s2 +/* 065ED0 800652D0 8EC80034 */ lw $t0, 0x34($s6) +/* 065ED4 800652D4 8EC40030 */ lw $a0, 0x30($s6) +/* 065ED8 800652D8 24050002 */ li $a1, 2 +/* 065EDC 800652DC 00004812 */ mflo $t1 +/* 065EE0 800652E0 01093021 */ addu $a2, $t0, $t1 +/* 065EE4 800652E4 0C0330E4 */ jal D_800CC390 +/* 065EE8 800652E8 00000000 */ nop +/* 065EEC 800652EC 26100001 */ addiu $s0, $s0, 1 +.L800652F0: +/* 065EF0 800652F0 2A010002 */ slti $at, $s0, 2 +/* 065EF4 800652F4 1420FFEA */ bnez $at, .L800652A0 +/* 065EF8 800652F8 26310001 */ addiu $s1, $s1, 1 +/* 065EFC 800652FC AEC00004 */ sw $zero, 4($s6) +/* 065F00 80065300 AEC00008 */ sw $zero, 8($s6) +/* 065F04 80065304 AEC00014 */ sw $zero, 0x14($s6) +/* 065F08 80065308 AEC00018 */ sw $zero, 0x18($s6) +/* 065F0C 8006530C AEC0000C */ sw $zero, 0xc($s6) +/* 065F10 80065310 AEC00010 */ sw $zero, 0x10($s6) +/* 065F14 80065314 8FC70004 */ lw $a3, 4($fp) +/* 065F18 80065318 240A00E0 */ li $t2, 224 +/* 065F1C 8006531C AFAA0010 */ sw $t2, 0x10($sp) +/* 065F20 80065320 00002025 */ move $a0, $zero +/* 065F24 80065324 00002825 */ move $a1, $zero +/* 065F28 80065328 0C031DFC */ jal func_800C77F0 +/* 065F2C 8006532C 02E03025 */ move $a2, $s7 +/* 065F30 80065330 8FCB0004 */ lw $t3, 4($fp) +/* 065F34 80065334 00008025 */ move $s0, $zero +/* 065F38 80065338 19600030 */ blez $t3, .L800653FC +/* 065F3C 8006533C 00408825 */ move $s1, $v0 +/* 065F40 80065340 26C50004 */ addiu $a1, $s6, 4 +/* 065F44 80065344 AFA50048 */ sw $a1, 0x48($sp) +/* 065F48 80065348 2452008C */ addiu $s2, $v0, 0x8c +/* 065F4C 8006534C 24530058 */ addiu $s3, $v0, 0x58 +/* 065F50 80065350 24540010 */ addiu $s4, $v0, 0x10 +.L80065354: +/* 065F54 80065354 8FA50048 */ lw $a1, 0x48($sp) +/* 065F58 80065358 0220A825 */ move $s5, $s1 +/* 065F5C 8006535C 0C0321E4 */ jal func_800C8790 +/* 065F60 80065360 02202025 */ move $a0, $s1 +/* 065F64 80065364 AE200008 */ sw $zero, 8($s1) +/* 065F68 80065368 8EC50024 */ lw $a1, 0x24($s6) +/* 065F6C 8006536C 02802025 */ move $a0, $s4 +/* 065F70 80065370 0C0193BE */ jal func_80064EF8 +/* 065F74 80065374 02E03025 */ move $a2, $s7 +/* 065F78 80065378 02802025 */ move $a0, $s4 +/* 065F7C 8006537C 24050001 */ li $a1, 1 +/* 065F80 80065380 0C032D50 */ jal D_800CB540 +/* 065F84 80065384 00003025 */ move $a2, $zero +/* 065F88 80065388 02602025 */ move $a0, $s3 +/* 065F8C 8006538C 0C0193E7 */ jal func_80064F9C +/* 065F90 80065390 02E02825 */ move $a1, $s7 +/* 065F94 80065394 02602025 */ move $a0, $s3 +/* 065F98 80065398 24050001 */ li $a1, 1 +/* 065F9C 8006539C 0C033024 */ jal D_800CC090 +/* 065FA0 800653A0 02803025 */ move $a2, $s4 +/* 065FA4 800653A4 02402025 */ move $a0, $s2 +/* 065FA8 800653A8 0C019395 */ jal func_80064E54 +/* 065FAC 800653AC 02E02825 */ move $a1, $s7 +/* 065FB0 800653B0 02402025 */ move $a0, $s2 +/* 065FB4 800653B4 24050001 */ li $a1, 1 +/* 065FB8 800653B8 0C032A9F */ jal D_800CAA7C +/* 065FBC 800653BC 02603025 */ move $a2, $s3 +/* 065FC0 800653C0 8EC40034 */ lw $a0, 0x34($s6) +/* 065FC4 800653C4 24050002 */ li $a1, 2 +/* 065FC8 800653C8 0C019675 */ jal D_800659D4 +/* 065FCC 800653CC 02403025 */ move $a2, $s2 +/* 065FD0 800653D0 26AC008C */ addiu $t4, $s5, 0x8c +/* 065FD4 800653D4 AEAC000C */ sw $t4, 0xc($s5) +/* 065FD8 800653D8 8FCD0004 */ lw $t5, 4($fp) +/* 065FDC 800653DC 26100001 */ addiu $s0, $s0, 1 +/* 065FE0 800653E0 020D082A */ slt $at, $s0, $t5 +/* 065FE4 800653E4 263100E0 */ addiu $s1, $s1, 0xe0 +/* 065FE8 800653E8 265200E0 */ addiu $s2, $s2, 0xe0 +/* 065FEC 800653EC 267300E0 */ addiu $s3, $s3, 0xe0 +/* 065FF0 800653F0 1420FFD8 */ bnez $at, .L80065354 +/* 065FF4 800653F4 269400E0 */ addiu $s4, $s4, 0xe0 +/* 065FF8 800653F8 00008025 */ move $s0, $zero +.L800653FC: +/* 065FFC 800653FC 8FA4005C */ lw $a0, 0x5c($sp) +/* 066000 80065400 8EC60030 */ lw $a2, 0x30($s6) +/* 066004 80065404 0C033138 */ jal D_800CC4E0 +/* 066008 80065408 24050001 */ li $a1, 1 +/* 06600C 8006540C 8FC70008 */ lw $a3, 8($fp) +/* 066010 80065410 240E001C */ li $t6, 28 +/* 066014 80065414 AFAE0010 */ sw $t6, 0x10($sp) +/* 066018 80065418 00002025 */ move $a0, $zero +/* 06601C 8006541C 00002825 */ move $a1, $zero +/* 066020 80065420 0C031DFC */ jal func_800C77F0 +/* 066024 80065424 02E03025 */ move $a2, $s7 +/* 066028 80065428 AEC0002C */ sw $zero, 0x2c($s6) +/* 06602C 8006542C 8FCF0008 */ lw $t7, 8($fp) +/* 066030 80065430 00401825 */ move $v1, $v0 +/* 066034 80065434 19E0000A */ blez $t7, .L80065460 +/* 066038 80065438 00000000 */ nop +.L8006543C: +/* 06603C 8006543C 8ED8002C */ lw $t8, 0x2c($s6) +/* 066040 80065440 26100001 */ addiu $s0, $s0, 1 +/* 066044 80065444 AC780000 */ sw $t8, ($v1) +/* 066048 80065448 AEC3002C */ sw $v1, 0x2c($s6) +/* 06604C 8006544C 8FD90008 */ lw $t9, 8($fp) +/* 066050 80065450 2463001C */ addiu $v1, $v1, 0x1c +/* 066054 80065454 0219082A */ slt $at, $s0, $t9 +/* 066058 80065458 1420FFF8 */ bnez $at, .L8006543C +/* 06605C 8006545C 00000000 */ nop +.L80065460: +/* 066060 80065460 AED70028 */ sw $s7, 0x28($s6) +/* 066064 80065464 8FBF0044 */ lw $ra, 0x44($sp) +/* 066068 80065468 8FBE0040 */ lw $fp, 0x40($sp) +/* 06606C 8006546C 8FB7003C */ lw $s7, 0x3c($sp) +/* 066070 80065470 8FB60038 */ lw $s6, 0x38($sp) +/* 066074 80065474 8FB50034 */ lw $s5, 0x34($sp) +/* 066078 80065478 8FB40030 */ lw $s4, 0x30($sp) +/* 06607C 8006547C 8FB3002C */ lw $s3, 0x2c($sp) +/* 066080 80065480 8FB20028 */ lw $s2, 0x28($sp) +/* 066084 80065484 8FB10024 */ lw $s1, 0x24($sp) +/* 066088 80065488 8FB00020 */ lw $s0, 0x20($sp) +/* 06608C 8006548C 03E00008 */ jr $ra +/* 066090 80065490 27BD0070 */ addiu $sp, $sp, 0x70 + diff --git a/asm/non_matchings/unknown_065D30/func_80065494.s b/asm/non_matchings/unknown_065D30/func_80065494.s new file mode 100644 index 00000000..0717b5ed --- /dev/null +++ b/asm/non_matchings/unknown_065D30/func_80065494.s @@ -0,0 +1,126 @@ +glabel func_80065494 +/* 066094 80065494 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 066098 80065498 AFB20024 */ sw $s2, 0x24($sp) +/* 06609C 8006549C 3C12800E */ lui $s2, %hi(D_800E3780) # $s2, 0x800e +/* 0660A0 800654A0 8E523780 */ lw $s2, %lo(D_800E3780)($s2) +/* 0660A4 800654A4 AFBF003C */ sw $ra, 0x3c($sp) +/* 0660A8 800654A8 AFB70038 */ sw $s7, 0x38($sp) +/* 0660AC 800654AC AFB60034 */ sw $s6, 0x34($sp) +/* 0660B0 800654B0 AFB50030 */ sw $s5, 0x30($sp) +/* 0660B4 800654B4 AFB4002C */ sw $s4, 0x2c($sp) +/* 0660B8 800654B8 AFB30028 */ sw $s3, 0x28($sp) +/* 0660BC 800654BC AFB10020 */ sw $s1, 0x20($sp) +/* 0660C0 800654C0 AFB0001C */ sw $s0, 0x1c($sp) +/* 0660C4 800654C4 AFA50074 */ sw $a1, 0x74($sp) +/* 0660C8 800654C8 A7A00062 */ sh $zero, 0x62($sp) +/* 0660CC 800654CC 8E4E0000 */ lw $t6, ($s2) +/* 0660D0 800654D0 00808825 */ move $s1, $a0 +/* 0660D4 800654D4 00E09825 */ move $s3, $a3 +/* 0660D8 800654D8 0080A025 */ move $s4, $a0 +/* 0660DC 800654DC 15C00004 */ bnez $t6, .L800654F0 +/* 0660E0 800654E0 00C0A825 */ move $s5, $a2 +/* 0660E4 800654E4 ACA00000 */ sw $zero, ($a1) +/* 0660E8 800654E8 10000054 */ b .L8006563C +/* 0660EC 800654EC 00801025 */ move $v0, $a0 +.L800654F0: +/* 0660F0 800654F0 27B0006C */ addiu $s0, $sp, 0x6c +/* 0660F4 800654F4 02002825 */ move $a1, $s0 +/* 0660F8 800654F8 02402025 */ move $a0, $s2 +/* 0660FC 800654FC 0C0195FB */ jal func_800657EC +/* 066100 80065500 AFB10070 */ sw $s1, 0x70($sp) +/* 066104 80065504 8E580020 */ lw $t8, 0x20($s2) +/* 066108 80065508 AE42001C */ sw $v0, 0x1c($s2) +/* 06610C 8006550C 0058C823 */ subu $t9, $v0, $t8 +/* 066110 80065510 0333082A */ slt $at, $t9, $s3 +/* 066114 80065514 1020001B */ beqz $at, .L80065584 +/* 066118 80065518 2411FFF0 */ li $s1, -16 +.L8006551C: +/* 06611C 8006551C 8E48001C */ lw $t0, 0x1c($s2) +/* 066120 80065520 00000000 */ nop +/* 066124 80065524 01114824 */ and $t1, $t0, $s1 +/* 066128 80065528 AE49001C */ sw $t1, 0x1c($s2) +/* 06612C 8006552C 8FA4006C */ lw $a0, 0x6c($sp) +/* 066130 80065530 00000000 */ nop +/* 066134 80065534 8C990008 */ lw $t9, 8($a0) +/* 066138 80065538 00000000 */ nop +/* 06613C 8006553C 0320F809 */ jalr $t9 +/* 066140 80065540 00000000 */ nop +/* 066144 80065544 02402025 */ move $a0, $s2 +/* 066148 80065548 0C0195D5 */ jal func_80065754 +/* 06614C 8006554C 00402825 */ move $a1, $v0 +/* 066150 80065550 8FAB006C */ lw $t3, 0x6c($sp) +/* 066154 80065554 02402025 */ move $a0, $s2 +/* 066158 80065558 8D6C0010 */ lw $t4, 0x10($t3) +/* 06615C 8006555C 02002825 */ move $a1, $s0 +/* 066160 80065560 01826821 */ addu $t5, $t4, $v0 +/* 066164 80065564 0C0195FB */ jal func_800657EC +/* 066168 80065568 AD6D0010 */ sw $t5, 0x10($t3) +/* 06616C 8006556C 8E4E0020 */ lw $t6, 0x20($s2) +/* 066170 80065570 AE42001C */ sw $v0, 0x1c($s2) +/* 066174 80065574 004E7823 */ subu $t7, $v0, $t6 +/* 066178 80065578 01F3082A */ slt $at, $t7, $s3 +/* 06617C 8006557C 1420FFE7 */ bnez $at, .L8006551C +/* 066180 80065580 00000000 */ nop +.L80065584: +/* 066184 80065584 8E58001C */ lw $t8, 0x1c($s2) +/* 066188 80065588 2411FFF0 */ li $s1, -16 +/* 06618C 8006558C 03114024 */ and $t0, $t8, $s1 +/* 066190 80065590 1A600022 */ blez $s3, .L8006561C +/* 066194 80065594 AE48001C */ sw $t0, 0x1c($s2) +/* 066198 80065598 27B70062 */ addiu $s7, $sp, 0x62 +/* 06619C 8006559C 3C160700 */ lui $s6, 0x700 +.L800655A0: +/* 0661A0 800655A0 8E420048 */ lw $v0, 0x48($s2) +/* 0661A4 800655A4 02608025 */ move $s0, $s3 +/* 0661A8 800655A8 0053082A */ slt $at, $v0, $s3 +/* 0661AC 800655AC 10200003 */ beqz $at, .L800655BC +/* 0661B0 800655B0 00000000 */ nop +/* 0661B4 800655B4 10000001 */ b .L800655BC +/* 0661B8 800655B8 00408025 */ move $s0, $v0 +.L800655BC: +/* 0661BC 800655BC AE960000 */ sw $s6, ($s4) +/* 0661C0 800655C0 AE800004 */ sw $zero, 4($s4) +/* 0661C4 800655C4 8E510038 */ lw $s1, 0x38($s2) +/* 0661C8 800655C8 24050006 */ li $a1, 6 +/* 0661CC 800655CC 8E390008 */ lw $t9, 8($s1) +/* 0661D0 800655D0 02A03025 */ move $a2, $s5 +/* 0661D4 800655D4 0320F809 */ jalr $t9 +/* 0661D8 800655D8 02202025 */ move $a0, $s1 +/* 0661DC 800655DC 8E470020 */ lw $a3, 0x20($s2) +/* 0661E0 800655E0 26890008 */ addiu $t1, $s4, 8 +/* 0661E4 800655E4 AFA90010 */ sw $t1, 0x10($sp) +/* 0661E8 800655E8 8E390004 */ lw $t9, 4($s1) +/* 0661EC 800655EC 02202025 */ move $a0, $s1 +/* 0661F0 800655F0 02E02825 */ move $a1, $s7 +/* 0661F4 800655F4 0320F809 */ jalr $t9 +/* 0661F8 800655F8 02003025 */ move $a2, $s0 +/* 0661FC 800655FC 8E4D0020 */ lw $t5, 0x20($s2) +/* 066200 80065600 02709823 */ subu $s3, $s3, $s0 +/* 066204 80065604 00106080 */ sll $t4, $s0, 2 +/* 066208 80065608 01B05821 */ addu $t3, $t5, $s0 +/* 06620C 8006560C 0040A025 */ move $s4, $v0 +/* 066210 80065610 02ACA821 */ addu $s5, $s5, $t4 +/* 066214 80065614 1E60FFE2 */ bgtz $s3, .L800655A0 +/* 066218 80065618 AE4B0020 */ sw $t3, 0x20($s2) +.L8006561C: +/* 06621C 8006561C 8FAE0070 */ lw $t6, 0x70($sp) +/* 066220 80065620 8FA80074 */ lw $t0, 0x74($sp) +/* 066224 80065624 028E7823 */ subu $t7, $s4, $t6 +/* 066228 80065628 000FC0C3 */ sra $t8, $t7, 3 +/* 06622C 8006562C 02402025 */ move $a0, $s2 +/* 066230 80065630 0C0195AF */ jal func_800656BC +/* 066234 80065634 AD180000 */ sw $t8, ($t0) +/* 066238 80065638 02801025 */ move $v0, $s4 +.L8006563C: +/* 06623C 8006563C 8FBF003C */ lw $ra, 0x3c($sp) +/* 066240 80065640 8FB0001C */ lw $s0, 0x1c($sp) +/* 066244 80065644 8FB10020 */ lw $s1, 0x20($sp) +/* 066248 80065648 8FB20024 */ lw $s2, 0x24($sp) +/* 06624C 8006564C 8FB30028 */ lw $s3, 0x28($sp) +/* 066250 80065650 8FB4002C */ lw $s4, 0x2c($sp) +/* 066254 80065654 8FB50030 */ lw $s5, 0x30($sp) +/* 066258 80065658 8FB60034 */ lw $s6, 0x34($sp) +/* 06625C 8006565C 8FB70038 */ lw $s7, 0x38($sp) +/* 066260 80065660 03E00008 */ jr $ra +/* 066264 80065664 27BD0070 */ addiu $sp, $sp, 0x70 + diff --git a/asm/non_matchings/unknown_065D30/func_80065668.s b/asm/non_matchings/unknown_065D30/func_80065668.s new file mode 100644 index 00000000..17416ce8 --- /dev/null +++ b/asm/non_matchings/unknown_065D30/func_80065668.s @@ -0,0 +1,16 @@ +glabel func_80065668 +/* 066268 80065668 3C02800E */ lui $v0, %hi(D_800E3780) # $v0, 0x800e +/* 06626C 8006566C 8C423780 */ lw $v0, %lo(D_800E3780)($v0) +/* 066270 80065670 00001825 */ move $v1, $zero +/* 066274 80065674 8C44002C */ lw $a0, 0x2c($v0) +/* 066278 80065678 00000000 */ nop +/* 06627C 8006567C 10800005 */ beqz $a0, .L80065694 +/* 066280 80065680 00000000 */ nop +/* 066284 80065684 8C8E0000 */ lw $t6, ($a0) +/* 066288 80065688 00801825 */ move $v1, $a0 +/* 06628C 8006568C AC4E002C */ sw $t6, 0x2c($v0) +/* 066290 80065690 AC800000 */ sw $zero, ($a0) +.L80065694: +/* 066294 80065694 03E00008 */ jr $ra +/* 066298 80065698 00601025 */ move $v0, $v1 + diff --git a/asm/non_matchings/unknown_065D30/func_8006569C.s b/asm/non_matchings/unknown_065D30/func_8006569C.s new file mode 100644 index 00000000..8d73da97 --- /dev/null +++ b/asm/non_matchings/unknown_065D30/func_8006569C.s @@ -0,0 +1,10 @@ +glabel func_8006569C +/* 06629C 8006569C 3C02800E */ lui $v0, %hi(D_800E3780) # $v0, 0x800e +/* 0662A0 800656A0 8C423780 */ lw $v0, %lo(D_800E3780)($v0) +/* 0662A4 800656A4 00000000 */ nop +/* 0662A8 800656A8 8C4E002C */ lw $t6, 0x2c($v0) +/* 0662AC 800656AC 00000000 */ nop +/* 0662B0 800656B0 AC8E0000 */ sw $t6, ($a0) +/* 0662B4 800656B4 03E00008 */ jr $ra +/* 0662B8 800656B8 AC44002C */ sw $a0, 0x2c($v0) + diff --git a/asm/non_matchings/unknown_065D30/func_800656BC.s b/asm/non_matchings/unknown_065D30/func_800656BC.s new file mode 100644 index 00000000..e2840431 --- /dev/null +++ b/asm/non_matchings/unknown_065D30/func_800656BC.s @@ -0,0 +1,28 @@ +glabel func_800656BC +/* 0662BC 800656BC 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0662C0 800656C0 AFBF0024 */ sw $ra, 0x24($sp) +/* 0662C4 800656C4 AFB20020 */ sw $s2, 0x20($sp) +/* 0662C8 800656C8 AFB1001C */ sw $s1, 0x1c($sp) +/* 0662CC 800656CC AFB00018 */ sw $s0, 0x18($sp) +/* 0662D0 800656D0 8C900014 */ lw $s0, 0x14($a0) +/* 0662D4 800656D4 00808825 */ move $s1, $a0 +/* 0662D8 800656D8 1200000A */ beqz $s0, .L80065704 +/* 0662DC 800656DC 24920004 */ addiu $s2, $a0, 4 +.L800656E0: +/* 0662E0 800656E0 0C0321D8 */ jal func_800C8760 +/* 0662E4 800656E4 02002025 */ move $a0, $s0 +/* 0662E8 800656E8 02002025 */ move $a0, $s0 +/* 0662EC 800656EC 0C0321E4 */ jal func_800C8790 +/* 0662F0 800656F0 02402825 */ move $a1, $s2 +/* 0662F4 800656F4 8E300014 */ lw $s0, 0x14($s1) +/* 0662F8 800656F8 00000000 */ nop +/* 0662FC 800656FC 1600FFF8 */ bnez $s0, .L800656E0 +/* 066300 80065700 00000000 */ nop +.L80065704: +/* 066304 80065704 8FBF0024 */ lw $ra, 0x24($sp) +/* 066308 80065708 8FB00018 */ lw $s0, 0x18($sp) +/* 06630C 8006570C 8FB1001C */ lw $s1, 0x1c($sp) +/* 066310 80065710 8FB20020 */ lw $s2, 0x20($sp) +/* 066314 80065714 03E00008 */ jr $ra +/* 066318 80065718 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_065D30/func_8006571C.s b/asm/non_matchings/unknown_065D30/func_8006571C.s new file mode 100644 index 00000000..d3ca135e --- /dev/null +++ b/asm/non_matchings/unknown_065D30/func_8006571C.s @@ -0,0 +1,16 @@ +glabel func_8006571C +/* 06631C 8006571C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 066320 80065720 AFBF0014 */ sw $ra, 0x14($sp) +/* 066324 80065724 AFA40018 */ sw $a0, 0x18($sp) +/* 066328 80065728 AFA5001C */ sw $a1, 0x1c($sp) +/* 06632C 8006572C 0C0321D8 */ jal func_800C8760 +/* 066330 80065730 00A02025 */ move $a0, $a1 +/* 066334 80065734 8FA50018 */ lw $a1, 0x18($sp) +/* 066338 80065738 8FA4001C */ lw $a0, 0x1c($sp) +/* 06633C 8006573C 0C0321E4 */ jal func_800C8790 +/* 066340 80065740 24A50014 */ addiu $a1, $a1, 0x14 +/* 066344 80065744 8FBF0014 */ lw $ra, 0x14($sp) +/* 066348 80065748 27BD0018 */ addiu $sp, $sp, 0x18 +/* 06634C 8006574C 03E00008 */ jr $ra +/* 066350 80065750 00000000 */ nop + diff --git a/asm/non_matchings/unknown_065D30/func_80065754.s b/asm/non_matchings/unknown_065D30/func_80065754.s new file mode 100644 index 00000000..28a72802 --- /dev/null +++ b/asm/non_matchings/unknown_065D30/func_80065754.s @@ -0,0 +1,30 @@ +glabel func_80065754 +/* 066354 80065754 8C8E0044 */ lw $t6, 0x44($a0) +/* 066358 80065758 44852000 */ mtc1 $a1, $f4 +/* 06635C 8006575C 448E4000 */ mtc1 $t6, $f8 +/* 066360 80065760 468021A0 */ cvt.s.w $f6, $f4 +/* 066364 80065764 3C01800E */ lui $at, %hi(D_800E6EC4) # $at, 0x800e +/* 066368 80065768 C4256EC0 */ lwc1 $f5, %lo(D_800E6EC0)($at) +/* 06636C 8006576C 468042A0 */ cvt.s.w $f10, $f8 +/* 066370 80065770 C4246EC4 */ lwc1 $f4, %lo(D_800E6EC4)($at) +/* 066374 80065774 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 066378 80065778 460A3402 */ mul.s $f16, $f6, $f10 +/* 06637C 8006577C 44803000 */ mtc1 $zero, $f6 +/* 066380 80065780 44813800 */ mtc1 $at, $f7 +/* 066384 80065784 460084A1 */ cvt.d.s $f18, $f16 +/* 066388 80065788 00000000 */ nop +/* 06638C 8006578C 46249203 */ div.d $f8, $f18, $f4 +/* 066390 80065790 46264280 */ add.d $f10, $f8, $f6 +/* 066394 80065794 46205020 */ cvt.s.d $f0, $f10 +/* 066398 80065798 444FF800 */ cfc1 $t7, $31 +/* 06639C 8006579C 00000000 */ nop +/* 0663A0 800657A0 35E10003 */ ori $at, $t7, 3 +/* 0663A4 800657A4 38210002 */ xori $at, $at, 2 +/* 0663A8 800657A8 44C1F800 */ ctc1 $at, $31 +/* 0663AC 800657AC 00000000 */ nop +/* 0663B0 800657B0 46000424 */ cvt.w.s $f16, $f0 +/* 0663B4 800657B4 44028000 */ mfc1 $v0, $f16 +/* 0663B8 800657B8 44CFF800 */ ctc1 $t7, $31 +/* 0663BC 800657BC 03E00008 */ jr $ra +/* 0663C0 800657C0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_065D30/func_800657C4.s b/asm/non_matchings/unknown_065D30/func_800657C4.s new file mode 100644 index 00000000..9d438e06 --- /dev/null +++ b/asm/non_matchings/unknown_065D30/func_800657C4.s @@ -0,0 +1,12 @@ +glabel func_800657C4 +/* 0663C4 800657C4 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0663C8 800657C8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0663CC 800657CC 0C0195D5 */ jal func_80065754 +/* 0663D0 800657D0 00000000 */ nop +/* 0663D4 800657D4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0663D8 800657D8 2401FFF0 */ li $at, -16 +/* 0663DC 800657DC 00417024 */ and $t6, $v0, $at +/* 0663E0 800657E0 01C01025 */ move $v0, $t6 +/* 0663E4 800657E4 03E00008 */ jr $ra +/* 0663E8 800657E8 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_065D30/func_800657EC.s b/asm/non_matchings/unknown_065D30/func_800657EC.s new file mode 100644 index 00000000..b1c08b13 --- /dev/null +++ b/asm/non_matchings/unknown_065D30/func_800657EC.s @@ -0,0 +1,35 @@ +glabel func_800657EC +/* 0663EC 800657EC ACA00000 */ sw $zero, ($a1) +/* 0663F0 800657F0 8C830000 */ lw $v1, ($a0) +/* 0663F4 800657F4 3C027FFF */ lui $v0, (0x7FFFFFFF >> 16) # lui $v0, 0x7fff +/* 0663F8 800657F8 10600012 */ beqz $v1, .L80065844 +/* 0663FC 800657FC 3442FFFF */ ori $v0, (0x7FFFFFFF & 0xFFFF) # ori $v0, $v0, 0xffff +/* 066400 80065800 8C860020 */ lw $a2, 0x20($a0) +/* 066404 80065804 00000000 */ nop +.L80065808: +/* 066408 80065808 8C6E0010 */ lw $t6, 0x10($v1) +/* 06640C 8006580C 00000000 */ nop +/* 066410 80065810 01C67823 */ subu $t7, $t6, $a2 +/* 066414 80065814 01E2082A */ slt $at, $t7, $v0 +/* 066418 80065818 10200006 */ beqz $at, .L80065834 +/* 06641C 8006581C 00000000 */ nop +/* 066420 80065820 ACA30000 */ sw $v1, ($a1) +/* 066424 80065824 8C780010 */ lw $t8, 0x10($v1) +/* 066428 80065828 8C860020 */ lw $a2, 0x20($a0) +/* 06642C 8006582C 00000000 */ nop +/* 066430 80065830 03061023 */ subu $v0, $t8, $a2 +.L80065834: +/* 066434 80065834 8C630000 */ lw $v1, ($v1) +/* 066438 80065838 00000000 */ nop +/* 06643C 8006583C 1460FFF2 */ bnez $v1, .L80065808 +/* 066440 80065840 00000000 */ nop +.L80065844: +/* 066444 80065844 8CB90000 */ lw $t9, ($a1) +/* 066448 80065848 00000000 */ nop +/* 06644C 8006584C 8F220010 */ lw $v0, 0x10($t9) +/* 066450 80065850 03E00008 */ jr $ra +/* 066454 80065854 00000000 */ nop + +/* 066458 80065858 00000000 */ nop +/* 06645C 8006585C 00000000 */ nop + diff --git a/asm/unknown_066460.s b/asm/non_matchings/unknown_066460/func_80065860.s old mode 100755 new mode 100644 similarity index 90% rename from asm/unknown_066460.s rename to asm/non_matchings/unknown_066460/func_80065860.s index ea06b721..faf7683e --- a/asm/unknown_066460.s +++ b/asm/non_matchings/unknown_066460/func_80065860.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_80065860 /* 066460 80065860 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 066464 80065864 AFA50024 */ sw $a1, 0x24($sp) @@ -48,3 +40,4 @@ glabel func_80065860 /* 0664F4 800658F4 00000000 */ nop /* 0664F8 800658F8 00000000 */ nop /* 0664FC 800658FC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_066500/D_80065900.s b/asm/non_matchings/unknown_066500/D_80065900.s new file mode 100644 index 00000000..11427a8e --- /dev/null +++ b/asm/non_matchings/unknown_066500/D_80065900.s @@ -0,0 +1,57 @@ +glabel D_80065900 +/* 066500 80065900 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 066504 80065904 AFB10024 */ sw $s1, 0x24($sp) +/* 066508 80065908 8FB10050 */ lw $s1, 0x50($sp) +/* 06650C 8006590C AFBF003C */ sw $ra, 0x3c($sp) +/* 066510 80065910 AFB60038 */ sw $s6, 0x38($sp) +/* 066514 80065914 AFB50034 */ sw $s5, 0x34($sp) +/* 066518 80065918 AFB40030 */ sw $s4, 0x30($sp) +/* 06651C 8006591C AFB3002C */ sw $s3, 0x2c($sp) +/* 066520 80065920 AFB20028 */ sw $s2, 0x28($sp) +/* 066524 80065924 AFB00020 */ sw $s0, 0x20($sp) +/* 066528 80065928 8C83001C */ lw $v1, 0x1c($a0) +/* 06652C 8006592C 3C0E0200 */ lui $t6, (0x020006C0 >> 16) # lui $t6, 0x200 +/* 066530 80065930 00061040 */ sll $v0, $a2, 1 +/* 066534 80065934 3C0F0200 */ lui $t7, (0x02000800 >> 16) # lui $t7, 0x200 +/* 066538 80065938 35CE06C0 */ ori $t6, (0x020006C0 & 0xFFFF) # ori $t6, $t6, 0x6c0 +/* 06653C 8006593C 35EF0800 */ ori $t7, (0x02000800 & 0xFFFF) # ori $t7, $t7, 0x800 +/* 066540 80065940 AE2E0000 */ sw $t6, ($s1) +/* 066544 80065944 AE220004 */ sw $v0, 4($s1) +/* 066548 80065948 AE2F0008 */ sw $t7, 8($s1) +/* 06654C 8006594C AE22000C */ sw $v0, 0xc($s1) +/* 066550 80065950 8C980014 */ lw $t8, 0x14($a0) +/* 066554 80065954 00C0A025 */ move $s4, $a2 +/* 066558 80065958 00A0A825 */ move $s5, $a1 +/* 06655C 8006595C 00E0B025 */ move $s6, $a3 +/* 066560 80065960 00809825 */ move $s3, $a0 +/* 066564 80065964 00008025 */ move $s0, $zero +/* 066568 80065968 1B00000F */ blez $t8, .L800659A8 +/* 06656C 8006596C 26320010 */ addiu $s2, $s1, 0x10 +/* 066570 80065970 00608825 */ move $s1, $v1 +.L80065974: +/* 066574 80065974 8E240000 */ lw $a0, ($s1) +/* 066578 80065978 AFB20010 */ sw $s2, 0x10($sp) +/* 06657C 8006597C 8C990004 */ lw $t9, 4($a0) +/* 066580 80065980 02A02825 */ move $a1, $s5 +/* 066584 80065984 02803025 */ move $a2, $s4 +/* 066588 80065988 0320F809 */ jalr $t9 +/* 06658C 8006598C 02C03825 */ move $a3, $s6 +/* 066590 80065990 8E680014 */ lw $t0, 0x14($s3) +/* 066594 80065994 26100001 */ addiu $s0, $s0, 1 +/* 066598 80065998 0208082A */ slt $at, $s0, $t0 +/* 06659C 8006599C 26310004 */ addiu $s1, $s1, 4 +/* 0665A0 800659A0 1420FFF4 */ bnez $at, .L80065974 +/* 0665A4 800659A4 00409025 */ move $s2, $v0 +.L800659A8: +/* 0665A8 800659A8 8FBF003C */ lw $ra, 0x3c($sp) +/* 0665AC 800659AC 02401025 */ move $v0, $s2 +/* 0665B0 800659B0 8FB20028 */ lw $s2, 0x28($sp) +/* 0665B4 800659B4 8FB00020 */ lw $s0, 0x20($sp) +/* 0665B8 800659B8 8FB10024 */ lw $s1, 0x24($sp) +/* 0665BC 800659BC 8FB3002C */ lw $s3, 0x2c($sp) +/* 0665C0 800659C0 8FB40030 */ lw $s4, 0x30($sp) +/* 0665C4 800659C4 8FB50034 */ lw $s5, 0x34($sp) +/* 0665C8 800659C8 8FB60038 */ lw $s6, 0x38($sp) +/* 0665CC 800659CC 03E00008 */ jr $ra +/* 0665D0 800659D0 27BD0040 */ addiu $sp, $sp, 0x40 + diff --git a/asm/non_matchings/unknown_066500/D_800659D4.s b/asm/non_matchings/unknown_066500/D_800659D4.s new file mode 100644 index 00000000..204301b5 --- /dev/null +++ b/asm/non_matchings/unknown_066500/D_800659D4.s @@ -0,0 +1,52 @@ +glabel D_800659D4 +/* 0665D4 800659D4 8C83001C */ lw $v1, 0x1c($a0) +/* 0665D8 800659D8 24010002 */ li $at, 2 +/* 0665DC 800659DC 10A10006 */ beq $a1, $at, .L800659F8 +/* 0665E0 800659E0 00801025 */ move $v0, $a0 +/* 0665E4 800659E4 24010011 */ li $at, 17 +/* 0665E8 800659E8 10A1000D */ beq $a1, $at, .L80065A20 +/* 0665EC 800659EC 00000000 */ nop +/* 0665F0 800659F0 03E00008 */ jr $ra +/* 0665F4 800659F4 00001025 */ move $v0, $zero + +.L800659F8: +/* 0665F8 800659F8 8C8E0014 */ lw $t6, 0x14($a0) +/* 0665FC 800659FC 00001025 */ move $v0, $zero +/* 066600 80065A00 000E7880 */ sll $t7, $t6, 2 +/* 066604 80065A04 006FC021 */ addu $t8, $v1, $t7 +/* 066608 80065A08 AF060000 */ sw $a2, ($t8) +/* 06660C 80065A0C 8C990014 */ lw $t9, 0x14($a0) +/* 066610 80065A10 00000000 */ nop +/* 066614 80065A14 27280001 */ addiu $t0, $t9, 1 +/* 066618 80065A18 03E00008 */ jr $ra +/* 06661C 80065A1C AC880014 */ sw $t0, 0x14($a0) + +.L80065A20: +/* 066620 80065A20 8C890014 */ lw $t1, 0x14($a0) +/* 066624 80065A24 00002825 */ move $a1, $zero +/* 066628 80065A28 19200013 */ blez $t1, .L80065A78 +/* 06662C 80065A2C 00603825 */ move $a3, $v1 +.L80065A30: +/* 066630 80065A30 8CEA0000 */ lw $t2, ($a3) +/* 066634 80065A34 00000000 */ nop +/* 066638 80065A38 14CA000A */ bne $a2, $t2, .L80065A64 +/* 06663C 80065A3C 00000000 */ nop +/* 066640 80065A40 8C8B0014 */ lw $t3, 0x14($a0) +/* 066644 80065A44 00000000 */ nop +/* 066648 80065A48 256CFFFF */ addiu $t4, $t3, -1 +/* 06664C 80065A4C 000C7080 */ sll $t6, $t4, 2 +/* 066650 80065A50 AC8C0014 */ sw $t4, 0x14($a0) +/* 066654 80065A54 006E7821 */ addu $t7, $v1, $t6 +/* 066658 80065A58 8DF80000 */ lw $t8, ($t7) +/* 06665C 80065A5C 00000000 */ nop +/* 066660 80065A60 ACF80000 */ sw $t8, ($a3) +.L80065A64: +/* 066664 80065A64 8C590014 */ lw $t9, 0x14($v0) +/* 066668 80065A68 24A50001 */ addiu $a1, $a1, 1 +/* 06666C 80065A6C 00B9082A */ slt $at, $a1, $t9 +/* 066670 80065A70 1420FFEF */ bnez $at, .L80065A30 +/* 066674 80065A74 24E70004 */ addiu $a3, $a3, 4 +.L80065A78: +/* 066678 80065A78 03E00008 */ jr $ra +/* 06667C 80065A7C 00001025 */ move $v0, $zero + diff --git a/asm/non_matchings/unknown_066500/func_80065A80.s b/asm/non_matchings/unknown_066500/func_80065A80.s new file mode 100644 index 00000000..84d321f7 --- /dev/null +++ b/asm/non_matchings/unknown_066500/func_80065A80.s @@ -0,0 +1,43 @@ +glabel func_80065A80 +/* 066680 80065A80 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 066684 80065A84 AFA60028 */ sw $a2, 0x28($sp) +/* 066688 80065A88 AFBF0014 */ sw $ra, 0x14($sp) +/* 06668C 80065A8C AFA40020 */ sw $a0, 0x20($sp) +/* 066690 80065A90 90A200DC */ lbu $v0, 0xdc($a1) +/* 066694 80065A94 87AE002A */ lh $t6, 0x2a($sp) +/* 066698 80065A98 00A03825 */ move $a3, $a1 +/* 06669C 80065A9C 11C2001C */ beq $t6, $v0, .L80065B10 +/* 0666A0 80065AA0 0002C880 */ sll $t9, $v0, 2 +/* 0666A4 80065AA4 0322C821 */ addu $t9, $t9, $v0 +/* 0666A8 80065AA8 8C980034 */ lw $t8, 0x34($a0) +/* 0666AC 80065AAC 0019C880 */ sll $t9, $t9, 2 +/* 0666B0 80065AB0 0322C823 */ subu $t9, $t9, $v0 +/* 0666B4 80065AB4 0019C880 */ sll $t9, $t9, 2 +/* 0666B8 80065AB8 24E6008C */ addiu $a2, $a3, 0x8c +/* 0666BC 80065ABC AFA60018 */ sw $a2, 0x18($sp) +/* 0666C0 80065AC0 AFA70024 */ sw $a3, 0x24($sp) +/* 0666C4 80065AC4 24050011 */ li $a1, 17 +/* 0666C8 80065AC8 0C019675 */ jal D_800659D4 +/* 0666CC 80065ACC 03192021 */ addu $a0, $t8, $t9 +/* 0666D0 80065AD0 87AA002A */ lh $t2, 0x2a($sp) +/* 0666D4 80065AD4 8FA80020 */ lw $t0, 0x20($sp) +/* 0666D8 80065AD8 000A5880 */ sll $t3, $t2, 2 +/* 0666DC 80065ADC 016A5821 */ addu $t3, $t3, $t2 +/* 0666E0 80065AE0 000B5880 */ sll $t3, $t3, 2 +/* 0666E4 80065AE4 8D090034 */ lw $t1, 0x34($t0) +/* 0666E8 80065AE8 016A5823 */ subu $t3, $t3, $t2 +/* 0666EC 80065AEC 8FA60018 */ lw $a2, 0x18($sp) +/* 0666F0 80065AF0 000B5880 */ sll $t3, $t3, 2 +/* 0666F4 80065AF4 24050002 */ li $a1, 2 +/* 0666F8 80065AF8 0C019675 */ jal D_800659D4 +/* 0666FC 80065AFC 012B2021 */ addu $a0, $t1, $t3 +/* 066700 80065B00 87AC002A */ lh $t4, 0x2a($sp) +/* 066704 80065B04 8FAD0024 */ lw $t5, 0x24($sp) +/* 066708 80065B08 00000000 */ nop +/* 06670C 80065B0C A1AC00DC */ sb $t4, 0xdc($t5) +.L80065B10: +/* 066710 80065B10 8FBF0014 */ lw $ra, 0x14($sp) +/* 066714 80065B14 27BD0020 */ addiu $sp, $sp, 0x20 +/* 066718 80065B18 03E00008 */ jr $ra +/* 06671C 80065B1C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_066500/func_80065B20.s b/asm/non_matchings/unknown_066500/func_80065B20.s new file mode 100644 index 00000000..4e7bc375 --- /dev/null +++ b/asm/non_matchings/unknown_066500/func_80065B20.s @@ -0,0 +1,49 @@ +glabel func_80065B20 +/* 066720 80065B20 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 066724 80065B24 AFBF0014 */ sw $ra, 0x14($sp) +/* 066728 80065B28 AFA40020 */ sw $a0, 0x20($sp) +/* 06672C 80065B2C AFA50024 */ sw $a1, 0x24($sp) +/* 066730 80065B30 AFA60028 */ sw $a2, 0x28($sp) +/* 066734 80065B34 8CAF0008 */ lw $t7, 8($a1) +/* 066738 80065B38 00000000 */ nop +/* 06673C 80065B3C 11E0001F */ beqz $t7, .L80065BBC +/* 066740 80065B40 8FBF0014 */ lw $ra, 0x14($sp) +/* 066744 80065B44 0C01959A */ jal func_80065668 +/* 066748 80065B48 00000000 */ nop +/* 06674C 80065B4C 1040001A */ beqz $v0, .L80065BB8 +/* 066750 80065B50 240C000C */ li $t4, 12 +/* 066754 80065B54 8FA80024 */ lw $t0, 0x24($sp) +/* 066758 80065B58 8FB80020 */ lw $t8, 0x20($sp) +/* 06675C 80065B5C 8D090008 */ lw $t1, 8($t0) +/* 066760 80065B60 8F19001C */ lw $t9, 0x1c($t8) +/* 066764 80065B64 8D2A00D8 */ lw $t2, 0xd8($t1) +/* 066768 80065B68 A44C0008 */ sh $t4, 8($v0) +/* 06676C 80065B6C 032A5821 */ addu $t3, $t9, $t2 +/* 066770 80065B70 AC4B0004 */ sw $t3, 4($v0) +/* 066774 80065B74 93A4002B */ lbu $a0, 0x2b($sp) +/* 066778 80065B78 0C0196FB */ jal func_80065BEC +/* 06677C 80065B7C AFA2001C */ sw $v0, 0x1c($sp) +/* 066780 80065B80 8FA6001C */ lw $a2, 0x1c($sp) +/* 066784 80065B84 24050003 */ li $a1, 3 +/* 066788 80065B88 ACC2000C */ sw $v0, 0xc($a2) +/* 06678C 80065B8C ACC00000 */ sw $zero, ($a2) +/* 066790 80065B90 8FAD0024 */ lw $t5, 0x24($sp) +/* 066794 80065B94 00000000 */ nop +/* 066798 80065B98 8DAE0008 */ lw $t6, 8($t5) +/* 06679C 80065B9C 00000000 */ nop +/* 0667A0 80065BA0 8DC4000C */ lw $a0, 0xc($t6) +/* 0667A4 80065BA4 00000000 */ nop +/* 0667A8 80065BA8 8C990008 */ lw $t9, 8($a0) +/* 0667AC 80065BAC 00000000 */ nop +/* 0667B0 80065BB0 0320F809 */ jalr $t9 +/* 0667B4 80065BB4 00000000 */ nop +.L80065BB8: +/* 0667B8 80065BB8 8FBF0014 */ lw $ra, 0x14($sp) +.L80065BBC: +/* 0667BC 80065BBC 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0667C0 80065BC0 03E00008 */ jr $ra +/* 0667C4 80065BC4 00000000 */ nop + +/* 0667C8 80065BC8 00000000 */ nop +/* 0667CC 80065BCC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_071730/func_80070B30.s b/asm/non_matchings/unknown_071730/func_80070B30.s new file mode 100644 index 00000000..fcdf1ab4 --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_80070B30.s @@ -0,0 +1,20 @@ +glabel func_80070B30 +/* 071730 80070B30 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 071734 80070B34 3C048013 */ lui $a0, %hi(D_8012D3F0) # $a0, 0x8013 +/* 071738 80070B38 AFBF0014 */ sw $ra, 0x14($sp) +/* 07173C 80070B3C 240EFFFF */ li $t6, -1 +/* 071740 80070B40 3C018012 */ lui $at, %hi(D_801235C0) # $at, 0x8012 +/* 071744 80070B44 2484D3F0 */ addiu $a0, %lo(D_8012D3F0) # addiu $a0, $a0, -0x2c10 +/* 071748 80070B48 3C0F8040 */ lui $t7, 0x8040 +/* 07174C 80070B4C AC2E35C0 */ sw $t6, %lo(D_801235C0)($at) +/* 071750 80070B50 01E42823 */ subu $a1, $t7, $a0 +/* 071754 80070B54 0C01C2F9 */ jal func_80070BE4 +/* 071758 80070B58 24060640 */ li $a2, 1600 +/* 07175C 80070B5C 0C01C42C */ jal func_800710B0 +/* 071760 80070B60 24040002 */ li $a0, 2 +/* 071764 80070B64 8FBF0014 */ lw $ra, 0x14($sp) +/* 071768 80070B68 3C018012 */ lui $at, %hi(D_80123DC8) # $at, 0x8012 +/* 07176C 80070B6C AC203DC8 */ sw $zero, %lo(D_80123DC8)($at) +/* 071770 80070B70 03E00008 */ jr $ra +/* 071774 80070B74 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_071730/func_80070B78.s b/asm/non_matchings/unknown_071730/func_80070B78.s new file mode 100644 index 00000000..2d9e5046 --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_80070B78.s @@ -0,0 +1,29 @@ +glabel func_80070B78 +/* 071778 80070B78 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 07177C 80070B7C AFBF0014 */ sw $ra, 0x14($sp) +/* 071780 80070B80 AFA40030 */ sw $a0, 0x30($sp) +/* 071784 80070B84 0C01BD44 */ jal func_8006F510 +/* 071788 80070B88 AFA50034 */ sw $a1, 0x34($sp) +/* 07178C 80070B8C 8FAF0034 */ lw $t7, 0x34($sp) +/* 071790 80070B90 8FAE0030 */ lw $t6, 0x30($sp) +/* 071794 80070B94 000FC080 */ sll $t8, $t7, 2 +/* 071798 80070B98 030FC021 */ addu $t8, $t8, $t7 +/* 07179C 80070B9C 0018C080 */ sll $t8, $t8, 2 +/* 0717A0 80070BA0 01D83821 */ addu $a3, $t6, $t8 +/* 0717A4 80070BA4 AFA20020 */ sw $v0, 0x20($sp) +/* 0717A8 80070BA8 00E02025 */ move $a0, $a3 +/* 0717AC 80070BAC AFA70018 */ sw $a3, 0x18($sp) +/* 0717B0 80070BB0 0C01C327 */ jal func_80070C9C +/* 0717B4 80070BB4 2405FFFF */ li $a1, -1 +/* 0717B8 80070BB8 8FA50018 */ lw $a1, 0x18($sp) +/* 0717BC 80070BBC 8FA60034 */ lw $a2, 0x34($sp) +/* 0717C0 80070BC0 0C01C2F9 */ jal func_80070BE4 +/* 0717C4 80070BC4 00402025 */ move $a0, $v0 +/* 0717C8 80070BC8 8FA40020 */ lw $a0, 0x20($sp) +/* 0717CC 80070BCC 0C01BD4F */ jal func_8006F53C +/* 0717D0 80070BD0 AFA2001C */ sw $v0, 0x1c($sp) +/* 0717D4 80070BD4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0717D8 80070BD8 8FA2001C */ lw $v0, 0x1c($sp) +/* 0717DC 80070BDC 03E00008 */ jr $ra +/* 0717E0 80070BE0 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_071730/func_80070BE4.s b/asm/non_matchings/unknown_071730/func_80070BE4.s new file mode 100644 index 00000000..041f9aff --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_80070BE4.s @@ -0,0 +1,52 @@ +glabel func_80070BE4 +/* 0717E4 80070BE4 3C098012 */ lui $t1, %hi(D_801235C0) # $t1, 0x8012 +/* 0717E8 80070BE8 252935C0 */ addiu $t1, %lo(D_801235C0) # addiu $t1, $t1, 0x35c0 +/* 0717EC 80070BEC 8D2E0000 */ lw $t6, ($t1) +/* 0717F0 80070BF0 3C198012 */ lui $t9, %hi(D_80123580) # $t9, 0x8012 +/* 0717F4 80070BF4 25CF0001 */ addiu $t7, $t6, 1 +/* 0717F8 80070BF8 000FC100 */ sll $t8, $t7, 4 +/* 0717FC 80070BFC 27393580 */ addiu $t9, %lo(D_80123580) # addiu $t9, $t9, 0x3580 +/* 071800 80070C00 03193821 */ addu $a3, $t8, $t9 +/* 071804 80070C04 AD2F0000 */ sw $t7, ($t1) +/* 071808 80070C08 ACE60000 */ sw $a2, ($a3) +/* 07180C 80070C0C ACE00004 */ sw $zero, 4($a3) +/* 071810 80070C10 ACE40008 */ sw $a0, 8($a3) +/* 071814 80070C14 ACE5000C */ sw $a1, 0xc($a3) +/* 071818 80070C18 00804025 */ move $t0, $a0 +/* 07181C 80070C1C 18C00007 */ blez $a2, .L80070C3C +/* 071820 80070C20 00001825 */ move $v1, $zero +.L80070C24: +/* 071824 80070C24 A503000E */ sh $v1, 0xe($t0) +/* 071828 80070C28 8CEA0000 */ lw $t2, ($a3) +/* 07182C 80070C2C 24630001 */ addiu $v1, $v1, 1 +/* 071830 80070C30 006A082A */ slt $at, $v1, $t2 +/* 071834 80070C34 1420FFFB */ bnez $at, .L80070C24 +/* 071838 80070C38 25080014 */ addiu $t0, $t0, 0x14 +.L80070C3C: +/* 07183C 80070C3C 00061880 */ sll $v1, $a2, 2 +/* 071840 80070C40 00661821 */ addu $v1, $v1, $a2 +/* 071844 80070C44 00031880 */ sll $v1, $v1, 2 +/* 071848 80070C48 00832021 */ addu $a0, $a0, $v1 +/* 07184C 80070C4C 8CE80008 */ lw $t0, 8($a3) +/* 071850 80070C50 308B000F */ andi $t3, $a0, 0xf +/* 071854 80070C54 11600006 */ beqz $t3, .L80070C70 +/* 071858 80070C58 00A37023 */ subu $t6, $a1, $v1 +/* 07185C 80070C5C 2401FFF0 */ li $at, -16 +/* 071860 80070C60 00816024 */ and $t4, $a0, $at +/* 071864 80070C64 258D0010 */ addiu $t5, $t4, 0x10 +/* 071868 80070C68 10000002 */ b .L80070C74 +/* 07186C 80070C6C AD0D0000 */ sw $t5, ($t0) +.L80070C70: +/* 071870 80070C70 AD040000 */ sw $a0, ($t0) +.L80070C74: +/* 071874 80070C74 2404FFFF */ li $a0, -1 +/* 071878 80070C78 AD0E0004 */ sw $t6, 4($t0) +/* 07187C 80070C7C A5000008 */ sh $zero, 8($t0) +/* 071880 80070C80 A504000A */ sh $a0, 0xa($t0) +/* 071884 80070C84 A504000C */ sh $a0, 0xc($t0) +/* 071888 80070C88 8CEF0004 */ lw $t7, 4($a3) +/* 07188C 80070C8C 8CE20008 */ lw $v0, 8($a3) +/* 071890 80070C90 25F80001 */ addiu $t8, $t7, 1 +/* 071894 80070C94 03E00008 */ jr $ra +/* 071898 80070C98 ACF80004 */ sw $t8, 4($a3) + diff --git a/asm/non_matchings/unknown_071730/func_80070C9C.s b/asm/non_matchings/unknown_071730/func_80070C9C.s new file mode 100644 index 00000000..59b0d000 --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_80070C9C.s @@ -0,0 +1,33 @@ +glabel func_80070C9C +/* 07189C 80070C9C 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0718A0 80070CA0 AFBF0014 */ sw $ra, 0x14($sp) +/* 0718A4 80070CA4 AFA40020 */ sw $a0, 0x20($sp) +/* 0718A8 80070CA8 14800008 */ bnez $a0, .L80070CCC +/* 0718AC 80070CAC AFA50024 */ sw $a1, 0x24($sp) +/* 0718B0 80070CB0 0C02DF44 */ jal func_800B7D10 +/* 0718B4 80070CB4 00000000 */ nop +/* 0718B8 80070CB8 8C440014 */ lw $a0, 0x14($v0) +/* 0718BC 80070CBC 8FA50020 */ lw $a1, 0x20($sp) +/* 0718C0 80070CC0 8FA60024 */ lw $a2, 0x24($sp) +/* 0718C4 80070CC4 0C02DD18 */ jal func_800B7460 +/* 0718C8 80070CC8 00000000 */ nop +.L80070CCC: +/* 0718CC 80070CCC 8FA50020 */ lw $a1, 0x20($sp) +/* 0718D0 80070CD0 8FA60024 */ lw $a2, 0x24($sp) +/* 0718D4 80070CD4 0C01C34F */ jal func_80070D3C +/* 0718D8 80070CD8 00002025 */ move $a0, $zero +/* 0718DC 80070CDC 14400008 */ bnez $v0, .L80070D00 +/* 0718E0 80070CE0 AFA2001C */ sw $v0, 0x1c($sp) +/* 0718E4 80070CE4 0C02DF44 */ jal func_800B7D10 +/* 0718E8 80070CE8 00000000 */ nop +/* 0718EC 80070CEC 8C440014 */ lw $a0, 0x14($v0) +/* 0718F0 80070CF0 8FA50020 */ lw $a1, 0x20($sp) +/* 0718F4 80070CF4 8FA60024 */ lw $a2, 0x24($sp) +/* 0718F8 80070CF8 0C02DD18 */ jal func_800B7460 +/* 0718FC 80070CFC 00000000 */ nop +.L80070D00: +/* 071900 80070D00 8FBF0014 */ lw $ra, 0x14($sp) +/* 071904 80070D04 8FA2001C */ lw $v0, 0x1c($sp) +/* 071908 80070D08 03E00008 */ jr $ra +/* 07190C 80070D0C 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_071730/func_80070D10.s b/asm/non_matchings/unknown_071730/func_80070D10.s new file mode 100644 index 00000000..6ed70f11 --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_80070D10.s @@ -0,0 +1,13 @@ +glabel func_80070D10 +/* 071910 80070D10 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 071914 80070D14 00A03025 */ move $a2, $a1 +/* 071918 80070D18 00802825 */ move $a1, $a0 +/* 07191C 80070D1C AFBF0014 */ sw $ra, 0x14($sp) +/* 071920 80070D20 AFA40018 */ sw $a0, 0x18($sp) +/* 071924 80070D24 0C01C34F */ jal func_80070D3C +/* 071928 80070D28 00002025 */ move $a0, $zero +/* 07192C 80070D2C 8FBF0014 */ lw $ra, 0x14($sp) +/* 071930 80070D30 27BD0018 */ addiu $sp, $sp, 0x18 +/* 071934 80070D34 03E00008 */ jr $ra +/* 071938 80070D38 00000000 */ nop + diff --git a/asm/non_matchings/unknown_071730/func_80070D3C.s b/asm/non_matchings/unknown_071730/func_80070D3C.s new file mode 100644 index 00000000..14a9881b --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_80070D3C.s @@ -0,0 +1,94 @@ +glabel func_80070D3C +/* 07193C 80070D3C 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 071940 80070D40 AFBF0024 */ sw $ra, 0x24($sp) +/* 071944 80070D44 AFB10020 */ sw $s1, 0x20($sp) +/* 071948 80070D48 00A08825 */ move $s1, $a1 +/* 07194C 80070D4C AFB0001C */ sw $s0, 0x1c($sp) +/* 071950 80070D50 AFA40040 */ sw $a0, 0x40($sp) +/* 071954 80070D54 0C01BD44 */ jal func_8006F510 +/* 071958 80070D58 AFA60048 */ sw $a2, 0x48($sp) +/* 07195C 80070D5C 8FAE0040 */ lw $t6, 0x40($sp) +/* 071960 80070D60 3C188012 */ lui $t8, %hi(D_80123580) # $t8, 0x8012 +/* 071964 80070D64 AFA20028 */ sw $v0, 0x28($sp) +/* 071968 80070D68 27183580 */ addiu $t8, %lo(D_80123580) # addiu $t8, $t8, 0x3580 +/* 07196C 80070D6C 000E7900 */ sll $t7, $t6, 4 +/* 071970 80070D70 01F81021 */ addu $v0, $t7, $t8 +/* 071974 80070D74 8C590004 */ lw $t9, 4($v0) +/* 071978 80070D78 8C4B0000 */ lw $t3, ($v0) +/* 07197C 80070D7C 272A0001 */ addiu $t2, $t9, 1 +/* 071980 80070D80 154B0006 */ bne $t2, $t3, .L80070D9C +/* 071984 80070D84 322C000F */ andi $t4, $s1, 0xf +/* 071988 80070D88 8FA40028 */ lw $a0, 0x28($sp) +/* 07198C 80070D8C 0C01BD4F */ jal func_8006F53C +/* 071990 80070D90 00000000 */ nop +/* 071994 80070D94 10000039 */ b .L80070E7C +/* 071998 80070D98 00001025 */ move $v0, $zero +.L80070D9C: +/* 07199C 80070D9C 11800004 */ beqz $t4, .L80070DB0 +/* 0719A0 80070DA0 2410FFFF */ li $s0, -1 +/* 0719A4 80070DA4 2401FFF0 */ li $at, -16 +/* 0719A8 80070DA8 02216824 */ and $t5, $s1, $at +/* 0719AC 80070DAC 25B10010 */ addiu $s1, $t5, 0x10 +.L80070DB0: +/* 0719B0 80070DB0 3C067FFF */ lui $a2, (0x7FFFFFFF >> 16) # lui $a2, 0x7fff +/* 0719B4 80070DB4 8C490008 */ lw $t1, 8($v0) +/* 0719B8 80070DB8 34C6FFFF */ ori $a2, (0x7FFFFFFF & 0xFFFF) # ori $a2, $a2, 0xffff +/* 0719BC 80070DBC 00002025 */ move $a0, $zero +/* 0719C0 80070DC0 24080014 */ li $t0, 20 +/* 0719C4 80070DC4 2407FFFF */ li $a3, -1 +.L80070DC8: +/* 0719C8 80070DC8 00880019 */ multu $a0, $t0 +/* 0719CC 80070DCC 00007012 */ mflo $t6 +/* 0719D0 80070DD0 01C91021 */ addu $v0, $t6, $t1 +/* 0719D4 80070DD4 844F0008 */ lh $t7, 8($v0) +/* 0719D8 80070DD8 00402825 */ move $a1, $v0 +/* 0719DC 80070DDC 15E0000A */ bnez $t7, .L80070E08 +/* 0719E0 80070DE0 00000000 */ nop +/* 0719E4 80070DE4 8C430004 */ lw $v1, 4($v0) +/* 0719E8 80070DE8 00000000 */ nop +/* 0719EC 80070DEC 0071082A */ slt $at, $v1, $s1 +/* 0719F0 80070DF0 14200005 */ bnez $at, .L80070E08 +/* 0719F4 80070DF4 0066082A */ slt $at, $v1, $a2 +/* 0719F8 80070DF8 10200003 */ beqz $at, .L80070E08 +/* 0719FC 80070DFC 00000000 */ nop +/* 071A00 80070E00 00603025 */ move $a2, $v1 +/* 071A04 80070E04 00808025 */ move $s0, $a0 +.L80070E08: +/* 071A08 80070E08 84A4000C */ lh $a0, 0xc($a1) +/* 071A0C 80070E0C 00000000 */ nop +/* 071A10 80070E10 1487FFED */ bne $a0, $a3, .L80070DC8 +/* 071A14 80070E14 00000000 */ nop +/* 071A18 80070E18 12070014 */ beq $s0, $a3, .L80070E6C +/* 071A1C 80070E1C 02002825 */ move $a1, $s0 +/* 071A20 80070E20 8FB80048 */ lw $t8, 0x48($sp) +/* 071A24 80070E24 8FA40040 */ lw $a0, 0x40($sp) +/* 071A28 80070E28 02203025 */ move $a2, $s1 +/* 071A2C 80070E2C 24070001 */ li $a3, 1 +/* 071A30 80070E30 AFA00010 */ sw $zero, 0x10($sp) +/* 071A34 80070E34 AFA9002C */ sw $t1, 0x2c($sp) +/* 071A38 80070E38 0C01C5E3 */ jal func_8007178C +/* 071A3C 80070E3C AFB80014 */ sw $t8, 0x14($sp) +/* 071A40 80070E40 8FA40028 */ lw $a0, 0x28($sp) +/* 071A44 80070E44 0C01BD4F */ jal func_8006F53C +/* 071A48 80070E48 00000000 */ nop +/* 071A4C 80070E4C 24080014 */ li $t0, 20 +/* 071A50 80070E50 02080019 */ multu $s0, $t0 +/* 071A54 80070E54 8FA9002C */ lw $t1, 0x2c($sp) +/* 071A58 80070E58 0000C812 */ mflo $t9 +/* 071A5C 80070E5C 03295021 */ addu $t2, $t9, $t1 +/* 071A60 80070E60 8D420000 */ lw $v0, ($t2) +/* 071A64 80070E64 10000006 */ b .L80070E80 +/* 071A68 80070E68 8FBF0024 */ lw $ra, 0x24($sp) +.L80070E6C: +/* 071A6C 80070E6C 8FA40028 */ lw $a0, 0x28($sp) +/* 071A70 80070E70 0C01BD4F */ jal func_8006F53C +/* 071A74 80070E74 00000000 */ nop +/* 071A78 80070E78 00001025 */ move $v0, $zero +.L80070E7C: +/* 071A7C 80070E7C 8FBF0024 */ lw $ra, 0x24($sp) +.L80070E80: +/* 071A80 80070E80 8FB0001C */ lw $s0, 0x1c($sp) +/* 071A84 80070E84 8FB10020 */ lw $s1, 0x20($sp) +/* 071A88 80070E88 03E00008 */ jr $ra +/* 071A8C 80070E8C 27BD0040 */ addiu $sp, $sp, 0x40 + diff --git a/asm/non_matchings/unknown_071730/func_80070E90.s b/asm/non_matchings/unknown_071730/func_80070E90.s new file mode 100644 index 00000000..06d48853 --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_80070E90.s @@ -0,0 +1,32 @@ +glabel func_80070E90 +/* 071A90 80070E90 3C078012 */ lui $a3, %hi(D_801235C0) # $a3, 0x8012 +/* 071A94 80070E94 8CE735C0 */ lw $a3, %lo(D_801235C0)($a3) +/* 071A98 80070E98 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 071A9C 80070E9C 10E00011 */ beqz $a3, .L80070EE4 +/* 071AA0 80070EA0 AFBF0014 */ sw $ra, 0x14($sp) +/* 071AA4 80070EA4 3C0F8012 */ lui $t7, %hi(D_80123580) # $t7, 0x8012 +/* 071AA8 80070EA8 25EF3580 */ addiu $t7, %lo(D_80123580) # addiu $t7, $t7, 0x3580 +/* 071AAC 80070EAC 00077100 */ sll $t6, $a3, 4 +/* 071AB0 80070EB0 01CF1021 */ addu $v0, $t6, $t7 +.L80070EB4: +/* 071AB4 80070EB4 8C580008 */ lw $t8, 8($v0) +/* 071AB8 80070EB8 00000000 */ nop +/* 071ABC 80070EBC 14980006 */ bne $a0, $t8, .L80070ED8 +/* 071AC0 80070EC0 00000000 */ nop +/* 071AC4 80070EC4 00E02025 */ move $a0, $a3 +/* 071AC8 80070EC8 0C01C34F */ jal func_80070D3C +/* 071ACC 80070ECC 00003025 */ move $a2, $zero +/* 071AD0 80070ED0 10000006 */ b .L80070EEC +/* 071AD4 80070ED4 8FBF0014 */ lw $ra, 0x14($sp) +.L80070ED8: +/* 071AD8 80070ED8 24E7FFFF */ addiu $a3, $a3, -1 +/* 071ADC 80070EDC 14E0FFF5 */ bnez $a3, .L80070EB4 +/* 071AE0 80070EE0 2442FFF0 */ addiu $v0, $v0, -0x10 +.L80070EE4: +/* 071AE4 80070EE4 00001025 */ move $v0, $zero +/* 071AE8 80070EE8 8FBF0014 */ lw $ra, 0x14($sp) +.L80070EEC: +/* 071AEC 80070EEC 27BD0018 */ addiu $sp, $sp, 0x18 +/* 071AF0 80070EF0 03E00008 */ jr $ra +/* 071AF4 80070EF4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_071730/func_80070EF8.s b/asm/non_matchings/unknown_071730/func_80070EF8.s new file mode 100644 index 00000000..e3d981f6 --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_80070EF8.s @@ -0,0 +1,119 @@ +glabel func_80070EF8 +/* 071AF8 80070EF8 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 071AFC 80070EFC AFBF002C */ sw $ra, 0x2c($sp) +/* 071B00 80070F00 AFB20028 */ sw $s2, 0x28($sp) +/* 071B04 80070F04 AFB10024 */ sw $s1, 0x24($sp) +/* 071B08 80070F08 00A08825 */ move $s1, $a1 +/* 071B0C 80070F0C 00809025 */ move $s2, $a0 +/* 071B10 80070F10 AFB00020 */ sw $s0, 0x20($sp) +/* 071B14 80070F14 0C01BD44 */ jal func_8006F510 +/* 071B18 80070F18 AFA60050 */ sw $a2, 0x50($sp) +/* 071B1C 80070F1C AFA20038 */ sw $v0, 0x38($sp) +/* 071B20 80070F20 3C028012 */ lui $v0, %hi(D_80123580) # $v0, 0x8012 +/* 071B24 80070F24 24423580 */ addiu $v0, %lo(D_80123580) # addiu $v0, $v0, 0x3580 +/* 071B28 80070F28 8C4E0004 */ lw $t6, 4($v0) +/* 071B2C 80070F2C 8C580000 */ lw $t8, ($v0) +/* 071B30 80070F30 25CF0001 */ addiu $t7, $t6, 1 +/* 071B34 80070F34 15F80006 */ bne $t7, $t8, .L80070F50 +/* 071B38 80070F38 3259000F */ andi $t9, $s2, 0xf +/* 071B3C 80070F3C 8FA40038 */ lw $a0, 0x38($sp) +/* 071B40 80070F40 0C01BD4F */ jal func_8006F53C +/* 071B44 80070F44 00000000 */ nop +/* 071B48 80070F48 10000053 */ b .L80071098 +/* 071B4C 80070F4C 00001025 */ move $v0, $zero +.L80070F50: +/* 071B50 80070F50 13200004 */ beqz $t9, .L80070F64 +/* 071B54 80070F54 00008025 */ move $s0, $zero +/* 071B58 80070F58 2401FFF0 */ li $at, -16 +/* 071B5C 80070F5C 02415024 */ and $t2, $s2, $at +/* 071B60 80070F60 25520010 */ addiu $s2, $t2, 0x10 +.L80070F64: +/* 071B64 80070F64 8C490008 */ lw $t1, 8($v0) +/* 071B68 80070F68 24080014 */ li $t0, 20 +/* 071B6C 80070F6C 2406FFFF */ li $a2, -1 +.L80070F70: +/* 071B70 80070F70 02080019 */ multu $s0, $t0 +/* 071B74 80070F74 00005812 */ mflo $t3 +/* 071B78 80070F78 01691821 */ addu $v1, $t3, $t1 +/* 071B7C 80070F7C 846C0008 */ lh $t4, 8($v1) +/* 071B80 80070F80 00602825 */ move $a1, $v1 +/* 071B84 80070F84 1580003C */ bnez $t4, .L80071078 +/* 071B88 80070F88 00000000 */ nop +/* 071B8C 80070F8C 8C640000 */ lw $a0, ($v1) +/* 071B90 80070F90 00000000 */ nop +/* 071B94 80070F94 0224082B */ sltu $at, $s1, $a0 +/* 071B98 80070F98 14200037 */ bnez $at, .L80071078 +/* 071B9C 80070F9C 00801025 */ move $v0, $a0 +/* 071BA0 80070FA0 8C6D0004 */ lw $t5, 4($v1) +/* 071BA4 80070FA4 02327821 */ addu $t7, $s1, $s2 +/* 071BA8 80070FA8 008D7021 */ addu $t6, $a0, $t5 +/* 071BAC 80070FAC 01CF082B */ sltu $at, $t6, $t7 +/* 071BB0 80070FB0 14200031 */ bnez $at, .L80071078 +/* 071BB4 80070FB4 00000000 */ nop +/* 071BB8 80070FB8 16240012 */ bne $s1, $a0, .L80071004 +/* 071BBC 80070FBC 02002825 */ move $a1, $s0 +/* 071BC0 80070FC0 8FB80050 */ lw $t8, 0x50($sp) +/* 071BC4 80070FC4 00002025 */ move $a0, $zero +/* 071BC8 80070FC8 02002825 */ move $a1, $s0 +/* 071BCC 80070FCC 02403025 */ move $a2, $s2 +/* 071BD0 80070FD0 24070001 */ li $a3, 1 +/* 071BD4 80070FD4 AFA00010 */ sw $zero, 0x10($sp) +/* 071BD8 80070FD8 AFA30034 */ sw $v1, 0x34($sp) +/* 071BDC 80070FDC 0C01C5E3 */ jal func_8007178C +/* 071BE0 80070FE0 AFB80014 */ sw $t8, 0x14($sp) +/* 071BE4 80070FE4 8FA40038 */ lw $a0, 0x38($sp) +/* 071BE8 80070FE8 0C01BD4F */ jal func_8006F53C +/* 071BEC 80070FEC 00000000 */ nop +/* 071BF0 80070FF0 8FA30034 */ lw $v1, 0x34($sp) +/* 071BF4 80070FF4 00000000 */ nop +/* 071BF8 80070FF8 8C620000 */ lw $v0, ($v1) +/* 071BFC 80070FFC 10000027 */ b .L8007109C +/* 071C00 80071000 8FBF002C */ lw $ra, 0x2c($sp) +.L80071004: +/* 071C04 80071004 8FAA0050 */ lw $t2, 0x50($sp) +/* 071C08 80071008 24190001 */ li $t9, 1 +/* 071C0C 8007100C AFB90010 */ sw $t9, 0x10($sp) +/* 071C10 80071010 00002025 */ move $a0, $zero +/* 071C14 80071014 02223023 */ subu $a2, $s1, $v0 +/* 071C18 80071018 00003825 */ move $a3, $zero +/* 071C1C 8007101C AFA9003C */ sw $t1, 0x3c($sp) +/* 071C20 80071020 0C01C5E3 */ jal func_8007178C +/* 071C24 80071024 AFAA0014 */ sw $t2, 0x14($sp) +/* 071C28 80071028 8FAB0050 */ lw $t3, 0x50($sp) +/* 071C2C 8007102C 00408025 */ move $s0, $v0 +/* 071C30 80071030 00002025 */ move $a0, $zero +/* 071C34 80071034 00402825 */ move $a1, $v0 +/* 071C38 80071038 02403025 */ move $a2, $s2 +/* 071C3C 8007103C 24070001 */ li $a3, 1 +/* 071C40 80071040 AFA00010 */ sw $zero, 0x10($sp) +/* 071C44 80071044 0C01C5E3 */ jal func_8007178C +/* 071C48 80071048 AFAB0014 */ sw $t3, 0x14($sp) +/* 071C4C 8007104C 8FA40038 */ lw $a0, 0x38($sp) +/* 071C50 80071050 0C01BD4F */ jal func_8006F53C +/* 071C54 80071054 00000000 */ nop +/* 071C58 80071058 24080014 */ li $t0, 20 +/* 071C5C 8007105C 02080019 */ multu $s0, $t0 +/* 071C60 80071060 8FA9003C */ lw $t1, 0x3c($sp) +/* 071C64 80071064 00006012 */ mflo $t4 +/* 071C68 80071068 01896821 */ addu $t5, $t4, $t1 +/* 071C6C 8007106C 8DA20000 */ lw $v0, ($t5) +/* 071C70 80071070 1000000A */ b .L8007109C +/* 071C74 80071074 8FBF002C */ lw $ra, 0x2c($sp) +.L80071078: +/* 071C78 80071078 84B0000C */ lh $s0, 0xc($a1) +/* 071C7C 8007107C 00000000 */ nop +/* 071C80 80071080 1606FFBB */ bne $s0, $a2, .L80070F70 +/* 071C84 80071084 00000000 */ nop +/* 071C88 80071088 8FA40038 */ lw $a0, 0x38($sp) +/* 071C8C 8007108C 0C01BD4F */ jal func_8006F53C +/* 071C90 80071090 00000000 */ nop +/* 071C94 80071094 00001025 */ move $v0, $zero +.L80071098: +/* 071C98 80071098 8FBF002C */ lw $ra, 0x2c($sp) +.L8007109C: +/* 071C9C 8007109C 8FB00020 */ lw $s0, 0x20($sp) +/* 071CA0 800710A0 8FB10024 */ lw $s1, 0x24($sp) +/* 071CA4 800710A4 8FB20028 */ lw $s2, 0x28($sp) +/* 071CA8 800710A8 03E00008 */ jr $ra +/* 071CAC 800710AC 27BD0048 */ addiu $sp, $sp, 0x48 + diff --git a/asm/non_matchings/unknown_071730/func_800710B0.s b/asm/non_matchings/unknown_071730/func_800710B0.s new file mode 100644 index 00000000..80ee5e6b --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_800710B0.s @@ -0,0 +1,40 @@ +glabel func_800710B0 +/* 071CB0 800710B0 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 071CB4 800710B4 AFBF0024 */ sw $ra, 0x24($sp) +/* 071CB8 800710B8 AFB00018 */ sw $s0, 0x18($sp) +/* 071CBC 800710BC 00808025 */ move $s0, $a0 +/* 071CC0 800710C0 AFB20020 */ sw $s2, 0x20($sp) +/* 071CC4 800710C4 0C01BD44 */ jal func_8006F510 +/* 071CC8 800710C8 AFB1001C */ sw $s1, 0x1c($sp) +/* 071CCC 800710CC 3C018012 */ lui $at, %hi(D_80123DCC) # $at, 0x8012 +/* 071CD0 800710D0 AFA2002C */ sw $v0, 0x2c($sp) +/* 071CD4 800710D4 16000011 */ bnez $s0, .L8007111C +/* 071CD8 800710D8 AC303DCC */ sw $s0, %lo(D_80123DCC)($at) +/* 071CDC 800710DC 3C118012 */ lui $s1, %hi(D_80123DC8) # $s1, 0x8012 +/* 071CE0 800710E0 26313DC8 */ addiu $s1, %lo(D_80123DC8) # addiu $s1, $s1, 0x3dc8 +/* 071CE4 800710E4 8E300000 */ lw $s0, ($s1) +/* 071CE8 800710E8 3C128012 */ lui $s2, %hi(D_801235C8) # $s2, 0x8012 +/* 071CEC 800710EC 1A00000B */ blez $s0, .L8007111C +/* 071CF0 800710F0 265235C8 */ addiu $s2, %lo(D_801235C8) # addiu $s2, $s2, 0x35c8 +/* 071CF4 800710F4 2602FFFF */ addiu $v0, $s0, -1 +.L800710F8: +/* 071CF8 800710F8 000270C0 */ sll $t6, $v0, 3 +/* 071CFC 800710FC 024E7821 */ addu $t7, $s2, $t6 +/* 071D00 80071100 8DE40000 */ lw $a0, ($t7) +/* 071D04 80071104 0C01C49E */ jal func_80071278 +/* 071D08 80071108 AE220000 */ sw $v0, ($s1) +/* 071D0C 8007110C 8E300000 */ lw $s0, ($s1) +/* 071D10 80071110 00000000 */ nop +/* 071D14 80071114 1E00FFF8 */ bgtz $s0, .L800710F8 +/* 071D18 80071118 2602FFFF */ addiu $v0, $s0, -1 +.L8007111C: +/* 071D1C 8007111C 8FA4002C */ lw $a0, 0x2c($sp) +/* 071D20 80071120 0C01BD4F */ jal func_8006F53C +/* 071D24 80071124 00000000 */ nop +/* 071D28 80071128 8FBF0024 */ lw $ra, 0x24($sp) +/* 071D2C 8007112C 8FB00018 */ lw $s0, 0x18($sp) +/* 071D30 80071130 8FB1001C */ lw $s1, 0x1c($sp) +/* 071D34 80071134 8FB20020 */ lw $s2, 0x20($sp) +/* 071D38 80071138 03E00008 */ jr $ra +/* 071D3C 8007113C 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_071730/func_80071140.s b/asm/non_matchings/unknown_071730/func_80071140.s new file mode 100644 index 00000000..95fc90bb --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_80071140.s @@ -0,0 +1,26 @@ +glabel func_80071140 +/* 071D40 80071140 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 071D44 80071144 AFBF0014 */ sw $ra, 0x14($sp) +/* 071D48 80071148 0C01BD44 */ jal func_8006F510 +/* 071D4C 8007114C AFA40020 */ sw $a0, 0x20($sp) +/* 071D50 80071150 3C0E8012 */ lui $t6, %hi(D_80123DCC) # $t6, 0x8012 +/* 071D54 80071154 8DCE3DCC */ lw $t6, %lo(D_80123DCC)($t6) +/* 071D58 80071158 8FA40020 */ lw $a0, 0x20($sp) +/* 071D5C 8007115C 15C00005 */ bnez $t6, .L80071174 +/* 071D60 80071160 AFA2001C */ sw $v0, 0x1c($sp) +/* 071D64 80071164 0C01C49E */ jal func_80071278 +/* 071D68 80071168 00000000 */ nop +/* 071D6C 8007116C 10000004 */ b .L80071180 +/* 071D70 80071170 8FA4001C */ lw $a0, 0x1c($sp) +.L80071174: +/* 071D74 80071174 0C01C510 */ jal func_80071440 +/* 071D78 80071178 00000000 */ nop +/* 071D7C 8007117C 8FA4001C */ lw $a0, 0x1c($sp) +.L80071180: +/* 071D80 80071180 0C01BD4F */ jal func_8006F53C +/* 071D84 80071184 00000000 */ nop +/* 071D88 80071188 8FBF0014 */ lw $ra, 0x14($sp) +/* 071D8C 8007118C 27BD0020 */ addiu $sp, $sp, 0x20 +/* 071D90 80071190 03E00008 */ jr $ra +/* 071D94 80071194 00000000 */ nop + diff --git a/asm/non_matchings/unknown_071730/func_80071198.s b/asm/non_matchings/unknown_071730/func_80071198.s new file mode 100644 index 00000000..282be2c3 --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_80071198.s @@ -0,0 +1,62 @@ +glabel func_80071198 +/* 071D98 80071198 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 071D9C 8007119C AFBF0024 */ sw $ra, 0x24($sp) +/* 071DA0 800711A0 AFB20020 */ sw $s2, 0x20($sp) +/* 071DA4 800711A4 AFB1001C */ sw $s1, 0x1c($sp) +/* 071DA8 800711A8 0C01BD44 */ jal func_8006F510 +/* 071DAC 800711AC AFB00018 */ sw $s0, 0x18($sp) +/* 071DB0 800711B0 3C118012 */ lui $s1, %hi(D_80123DC8) # $s1, 0x8012 +/* 071DB4 800711B4 26313DC8 */ addiu $s1, %lo(D_80123DC8) # addiu $s1, $s1, 0x3dc8 +/* 071DB8 800711B8 8E230000 */ lw $v1, ($s1) +/* 071DBC 800711BC AFA20028 */ sw $v0, 0x28($sp) +/* 071DC0 800711C0 18600024 */ blez $v1, .L80071254 +/* 071DC4 800711C4 3C108012 */ lui $s0, %hi(D_801235C8) # $s0, 0x8012 +/* 071DC8 800711C8 3C128012 */ lui $s2, %hi(D_801235C8) # $s2, 0x8012 +/* 071DCC 800711CC 265235C8 */ addiu $s2, %lo(D_801235C8) # addiu $s2, $s2, 0x35c8 +/* 071DD0 800711D0 261035C8 */ addiu $s0, %lo(D_801235C8) # addiu $s0, $s0, 0x35c8 +.L800711D4: +/* 071DD4 800711D4 920E0004 */ lbu $t6, 4($s0) +/* 071DD8 800711D8 00000000 */ nop +/* 071DDC 800711DC 25CFFFFF */ addiu $t7, $t6, -1 +/* 071DE0 800711E0 31F800FF */ andi $t8, $t7, 0xff +/* 071DE4 800711E4 17000013 */ bnez $t8, .L80071234 +/* 071DE8 800711E8 A20F0004 */ sb $t7, 4($s0) +/* 071DEC 800711EC 8E040000 */ lw $a0, ($s0) +/* 071DF0 800711F0 0C01C49E */ jal func_80071278 +/* 071DF4 800711F4 00000000 */ nop +/* 071DF8 800711F8 8E230000 */ lw $v1, ($s1) +/* 071DFC 800711FC 3C0C8012 */ lui $t4, %hi(D_801235C8) # $t4, 0x8012 +/* 071E00 80071200 0003C8C0 */ sll $t9, $v1, 3 +/* 071E04 80071204 02591021 */ addu $v0, $s2, $t9 +/* 071E08 80071208 8C48FFF8 */ lw $t0, -8($v0) +/* 071E0C 8007120C 246AFFFF */ addiu $t2, $v1, -1 +/* 071E10 80071210 AE080000 */ sw $t0, ($s0) +/* 071E14 80071214 9049FFFC */ lbu $t1, -4($v0) +/* 071E18 80071218 000A58C0 */ sll $t3, $t2, 3 +/* 071E1C 8007121C 258C35C8 */ addiu $t4, %lo(D_801235C8) # addiu $t4, $t4, 0x35c8 +/* 071E20 80071220 016C2021 */ addu $a0, $t3, $t4 +/* 071E24 80071224 AE2A0000 */ sw $t2, ($s1) +/* 071E28 80071228 01401825 */ move $v1, $t2 +/* 071E2C 8007122C 10000006 */ b .L80071248 +/* 071E30 80071230 A2090004 */ sb $t1, 4($s0) +.L80071234: +/* 071E34 80071234 3C0E8012 */ lui $t6, %hi(D_801235C8) # $t6, 0x8012 +/* 071E38 80071238 25CE35C8 */ addiu $t6, %lo(D_801235C8) # addiu $t6, $t6, 0x35c8 +/* 071E3C 8007123C 000368C0 */ sll $t5, $v1, 3 +/* 071E40 80071240 01AE2021 */ addu $a0, $t5, $t6 +/* 071E44 80071244 26100008 */ addiu $s0, $s0, 8 +.L80071248: +/* 071E48 80071248 0204082B */ sltu $at, $s0, $a0 +/* 071E4C 8007124C 1420FFE1 */ bnez $at, .L800711D4 +/* 071E50 80071250 00000000 */ nop +.L80071254: +/* 071E54 80071254 8FA40028 */ lw $a0, 0x28($sp) +/* 071E58 80071258 0C01BD4F */ jal func_8006F53C +/* 071E5C 8007125C 00000000 */ nop +/* 071E60 80071260 8FBF0024 */ lw $ra, 0x24($sp) +/* 071E64 80071264 8FB00018 */ lw $s0, 0x18($sp) +/* 071E68 80071268 8FB1001C */ lw $s1, 0x1c($sp) +/* 071E6C 8007126C 8FB20020 */ lw $s2, 0x20($sp) +/* 071E70 80071270 03E00008 */ jr $ra +/* 071E74 80071274 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_071730/func_80071278.s b/asm/non_matchings/unknown_071730/func_80071278.s new file mode 100644 index 00000000..958d07a4 --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_80071278.s @@ -0,0 +1,129 @@ +glabel func_80071278 +/* 071E78 80071278 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 071E7C 8007127C AFBF0014 */ sw $ra, 0x14($sp) +/* 071E80 80071280 0C01C57B */ jal func_800715EC +/* 071E84 80071284 AFA40020 */ sw $a0, 0x20($sp) +/* 071E88 80071288 00027100 */ sll $t6, $v0, 4 +/* 071E8C 8007128C 3C038012 */ lui $v1, 0x8012 +/* 071E90 80071290 006E1821 */ addu $v1, $v1, $t6 +/* 071E94 80071294 8FA40020 */ lw $a0, 0x20($sp) +/* 071E98 80071298 8C633588 */ lw $v1, 0x3588($v1) +/* 071E9C 8007129C AFA20018 */ sw $v0, 0x18($sp) +/* 071EA0 800712A0 00002825 */ move $a1, $zero +/* 071EA4 800712A4 2407FFFF */ li $a3, -1 +/* 071EA8 800712A8 24060014 */ li $a2, 20 +.L800712AC: +/* 071EAC 800712AC 00A60019 */ multu $a1, $a2 +/* 071EB0 800712B0 00007812 */ mflo $t7 +/* 071EB4 800712B4 01E31021 */ addu $v0, $t7, $v1 +/* 071EB8 800712B8 8C580000 */ lw $t8, ($v0) +/* 071EBC 800712BC 00000000 */ nop +/* 071EC0 800712C0 1498000C */ bne $a0, $t8, .L800712F4 +/* 071EC4 800712C4 00000000 */ nop +/* 071EC8 800712C8 84430008 */ lh $v1, 8($v0) +/* 071ECC 800712CC 24010001 */ li $at, 1 +/* 071ED0 800712D0 10610003 */ beq $v1, $at, .L800712E0 +/* 071ED4 800712D4 24010004 */ li $at, 4 +/* 071ED8 800712D8 1461000B */ bne $v1, $at, .L80071308 +/* 071EDC 800712DC 8FBF0014 */ lw $ra, 0x14($sp) +.L800712E0: +/* 071EE0 800712E0 8FA40018 */ lw $a0, 0x18($sp) +/* 071EE4 800712E4 0C01C593 */ jal func_8007164C +/* 071EE8 800712E8 00000000 */ nop +/* 071EEC 800712EC 10000006 */ b .L80071308 +/* 071EF0 800712F0 8FBF0014 */ lw $ra, 0x14($sp) +.L800712F4: +/* 071EF4 800712F4 8445000C */ lh $a1, 0xc($v0) +/* 071EF8 800712F8 00000000 */ nop +/* 071EFC 800712FC 14A7FFEB */ bne $a1, $a3, .L800712AC +/* 071F00 80071300 00000000 */ nop +/* 071F04 80071304 8FBF0014 */ lw $ra, 0x14($sp) +.L80071308: +/* 071F08 80071308 27BD0020 */ addiu $sp, $sp, 0x20 +/* 071F0C 8007130C 03E00008 */ jr $ra +/* 071F10 80071310 00000000 */ nop + +/* 071F14 80071314 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 071F18 80071318 AFBF003C */ sw $ra, 0x3c($sp) +/* 071F1C 8007131C AFBE0038 */ sw $fp, 0x38($sp) +/* 071F20 80071320 AFB70034 */ sw $s7, 0x34($sp) +/* 071F24 80071324 AFB60030 */ sw $s6, 0x30($sp) +/* 071F28 80071328 AFB5002C */ sw $s5, 0x2c($sp) +/* 071F2C 8007132C AFB40028 */ sw $s4, 0x28($sp) +/* 071F30 80071330 AFB30024 */ sw $s3, 0x24($sp) +/* 071F34 80071334 AFB20020 */ sw $s2, 0x20($sp) +/* 071F38 80071338 AFB1001C */ sw $s1, 0x1c($sp) +/* 071F3C 8007133C 0C01BD44 */ jal func_8006F510 +/* 071F40 80071340 AFB00018 */ sw $s0, 0x18($sp) +/* 071F44 80071344 3C128012 */ lui $s2, %hi(D_801235C0) # $s2, 0x8012 +/* 071F48 80071348 8E5235C0 */ lw $s2, %lo(D_801235C0)($s2) +/* 071F4C 8007134C 2416FFFF */ li $s6, -1 +/* 071F50 80071350 1256002C */ beq $s2, $s6, .L80071404 +/* 071F54 80071354 AFA20040 */ sw $v0, 0x40($sp) +/* 071F58 80071358 3C0F8012 */ lui $t7, %hi(D_80123580) # $t7, 0x8012 +/* 071F5C 8007135C 25EF3580 */ addiu $t7, %lo(D_80123580) # addiu $t7, $t7, 0x3580 +/* 071F60 80071360 00127100 */ sll $t6, $s2, 4 +/* 071F64 80071364 01CFA821 */ addu $s5, $t6, $t7 +/* 071F68 80071368 241E0004 */ li $fp, 4 +/* 071F6C 8007136C 24170014 */ li $s7, 20 +/* 071F70 80071370 24130001 */ li $s3, 1 +.L80071374: +/* 071F74 80071374 8EB40008 */ lw $s4, 8($s5) +/* 071F78 80071378 00008025 */ move $s0, $zero +.L8007137C: +/* 071F7C 8007137C 02170019 */ multu $s0, $s7 +/* 071F80 80071380 02402025 */ move $a0, $s2 +/* 071F84 80071384 0000C012 */ mflo $t8 +/* 071F88 80071388 03148821 */ addu $s1, $t8, $s4 +/* 071F8C 8007138C 86220008 */ lh $v0, 8($s1) +/* 071F90 80071390 00000000 */ nop +/* 071F94 80071394 16620005 */ bne $s3, $v0, .L800713AC +/* 071F98 80071398 00000000 */ nop +/* 071F9C 8007139C 0C01C593 */ jal func_8007164C +/* 071FA0 800713A0 02002825 */ move $a1, $s0 +/* 071FA4 800713A4 86220008 */ lh $v0, 8($s1) +/* 071FA8 800713A8 00000000 */ nop +.L800713AC: +/* 071FAC 800713AC 17C2000E */ bne $fp, $v0, .L800713E8 +/* 071FB0 800713B0 02402025 */ move $a0, $s2 +/* 071FB4 800713B4 8EB90004 */ lw $t9, 4($s5) +/* 071FB8 800713B8 00000000 */ nop +/* 071FBC 800713BC 16790005 */ bne $s3, $t9, .L800713D4 +/* 071FC0 800713C0 00000000 */ nop +/* 071FC4 800713C4 0C01C593 */ jal func_8007164C +/* 071FC8 800713C8 02002825 */ move $a1, $s0 +/* 071FCC 800713CC 10000007 */ b .L800713EC +/* 071FD0 800713D0 8630000C */ lh $s0, 0xc($s1) +.L800713D4: +/* 071FD4 800713D4 8FA40040 */ lw $a0, 0x40($sp) +/* 071FD8 800713D8 0C01BD4F */ jal func_8006F53C +/* 071FDC 800713DC 00000000 */ nop +/* 071FE0 800713E0 1000000C */ b .L80071414 +/* 071FE4 800713E4 8FBF003C */ lw $ra, 0x3c($sp) +.L800713E8: +/* 071FE8 800713E8 8630000C */ lh $s0, 0xc($s1) +.L800713EC: +/* 071FEC 800713EC 00000000 */ nop +/* 071FF0 800713F0 1616FFE2 */ bne $s0, $s6, .L8007137C +/* 071FF4 800713F4 00000000 */ nop +/* 071FF8 800713F8 2652FFFF */ addiu $s2, $s2, -1 +/* 071FFC 800713FC 1656FFDD */ bne $s2, $s6, .L80071374 +/* 072000 80071400 26B5FFF0 */ addiu $s5, $s5, -0x10 +.L80071404: +/* 072004 80071404 8FA40040 */ lw $a0, 0x40($sp) +/* 072008 80071408 0C01BD4F */ jal func_8006F53C +/* 07200C 8007140C 00000000 */ nop +/* 072010 80071410 8FBF003C */ lw $ra, 0x3c($sp) +.L80071414: +/* 072014 80071414 8FB00018 */ lw $s0, 0x18($sp) +/* 072018 80071418 8FB1001C */ lw $s1, 0x1c($sp) +/* 07201C 8007141C 8FB20020 */ lw $s2, 0x20($sp) +/* 072020 80071420 8FB30024 */ lw $s3, 0x24($sp) +/* 072024 80071424 8FB40028 */ lw $s4, 0x28($sp) +/* 072028 80071428 8FB5002C */ lw $s5, 0x2c($sp) +/* 07202C 8007142C 8FB60030 */ lw $s6, 0x30($sp) +/* 072030 80071430 8FB70034 */ lw $s7, 0x34($sp) +/* 072034 80071434 8FBE0038 */ lw $fp, 0x38($sp) +/* 072038 80071438 03E00008 */ jr $ra +/* 07203C 8007143C 27BD0050 */ addiu $sp, $sp, 0x50 + diff --git a/asm/non_matchings/unknown_071730/func_80071440.s b/asm/non_matchings/unknown_071730/func_80071440.s new file mode 100644 index 00000000..1f40f5f0 --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_80071440.s @@ -0,0 +1,16 @@ +glabel func_80071440 +/* 072040 80071440 3C058012 */ lui $a1, %hi(D_80123DC8) # $a1, 0x8012 +/* 072044 80071444 24A53DC8 */ addiu $a1, %lo(D_80123DC8) # addiu $a1, $a1, 0x3dc8 +/* 072048 80071448 8CA20000 */ lw $v0, ($a1) +/* 07204C 8007144C 3C0F8012 */ lui $t7, %hi(D_801235C8) # $t7, 0x8012 +/* 072050 80071450 25EF35C8 */ addiu $t7, %lo(D_801235C8) # addiu $t7, $t7, 0x35c8 +/* 072054 80071454 000270C0 */ sll $t6, $v0, 3 +/* 072058 80071458 01CF1821 */ addu $v1, $t6, $t7 +/* 07205C 8007145C AC640000 */ sw $a0, ($v1) +/* 072060 80071460 3C188012 */ lui $t8, %hi(D_80123DCC) # $t8, 0x8012 +/* 072064 80071464 8F183DCC */ lw $t8, %lo(D_80123DCC)($t8) +/* 072068 80071468 24590001 */ addiu $t9, $v0, 1 +/* 07206C 8007146C ACB90000 */ sw $t9, ($a1) +/* 072070 80071470 03E00008 */ jr $ra +/* 072074 80071474 A0780004 */ sb $t8, 4($v1) + diff --git a/asm/non_matchings/unknown_071730/func_80071478.s b/asm/non_matchings/unknown_071730/func_80071478.s new file mode 100644 index 00000000..047b88bc --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_80071478.s @@ -0,0 +1,54 @@ +glabel func_80071478 +/* 072078 80071478 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 07207C 8007147C AFBF001C */ sw $ra, 0x1c($sp) +/* 072080 80071480 AFB00018 */ sw $s0, 0x18($sp) +/* 072084 80071484 0C01BD44 */ jal func_8006F510 +/* 072088 80071488 00808025 */ move $s0, $a0 +/* 07208C 8007148C AFA20020 */ sw $v0, 0x20($sp) +/* 072090 80071490 0C01C57B */ jal func_800715EC +/* 072094 80071494 02002025 */ move $a0, $s0 +/* 072098 80071498 00027100 */ sll $t6, $v0, 4 +/* 07209C 8007149C 3C048012 */ lui $a0, 0x8012 +/* 0720A0 800714A0 008E2021 */ addu $a0, $a0, $t6 +/* 0720A4 800714A4 8C843588 */ lw $a0, 0x3588($a0) +/* 0720A8 800714A8 00001825 */ move $v1, $zero +/* 0720AC 800714AC 2409FFFF */ li $t1, -1 +/* 0720B0 800714B0 24080004 */ li $t0, 4 +/* 0720B4 800714B4 24070001 */ li $a3, 1 +/* 0720B8 800714B8 24060014 */ li $a2, 20 +.L800714BC: +/* 0720BC 800714BC 00660019 */ multu $v1, $a2 +/* 0720C0 800714C0 00007812 */ mflo $t7 +/* 0720C4 800714C4 01E42821 */ addu $a1, $t7, $a0 +/* 0720C8 800714C8 8CB80000 */ lw $t8, ($a1) +/* 0720CC 800714CC 00000000 */ nop +/* 0720D0 800714D0 1618000D */ bne $s0, $t8, .L80071508 +/* 0720D4 800714D4 00000000 */ nop +/* 0720D8 800714D8 84A20008 */ lh $v0, 8($a1) +/* 0720DC 800714DC 00000000 */ nop +/* 0720E0 800714E0 10E20003 */ beq $a3, $v0, .L800714F0 +/* 0720E4 800714E4 34590002 */ ori $t9, $v0, 2 +/* 0720E8 800714E8 15020007 */ bne $t0, $v0, .L80071508 +/* 0720EC 800714EC 34590002 */ ori $t9, $v0, 2 +.L800714F0: +/* 0720F0 800714F0 A4B90008 */ sh $t9, 8($a1) +/* 0720F4 800714F4 8FA40020 */ lw $a0, 0x20($sp) +/* 0720F8 800714F8 0C01BD4F */ jal func_8006F53C +/* 0720FC 800714FC 00000000 */ nop +/* 072100 80071500 10000009 */ b .L80071528 +/* 072104 80071504 24020001 */ li $v0, 1 +.L80071508: +/* 072108 80071508 84A3000C */ lh $v1, 0xc($a1) +/* 07210C 8007150C 00000000 */ nop +/* 072110 80071510 1469FFEA */ bne $v1, $t1, .L800714BC +/* 072114 80071514 00000000 */ nop +/* 072118 80071518 8FA40020 */ lw $a0, 0x20($sp) +/* 07211C 8007151C 0C01BD4F */ jal func_8006F53C +/* 072120 80071520 00000000 */ nop +/* 072124 80071524 00001025 */ move $v0, $zero +.L80071528: +/* 072128 80071528 8FBF001C */ lw $ra, 0x1c($sp) +/* 07212C 8007152C 8FB00018 */ lw $s0, 0x18($sp) +/* 072130 80071530 03E00008 */ jr $ra +/* 072134 80071534 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_071730/func_80071538.s b/asm/non_matchings/unknown_071730/func_80071538.s new file mode 100644 index 00000000..b7e8329b --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_80071538.s @@ -0,0 +1,50 @@ +glabel func_80071538 +/* 072138 80071538 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 07213C 8007153C AFBF0014 */ sw $ra, 0x14($sp) +/* 072140 80071540 0C01BD44 */ jal func_8006F510 +/* 072144 80071544 AFA40028 */ sw $a0, 0x28($sp) +/* 072148 80071548 8FA40028 */ lw $a0, 0x28($sp) +/* 07214C 8007154C 0C01C57B */ jal func_800715EC +/* 072150 80071550 AFA20018 */ sw $v0, 0x18($sp) +/* 072154 80071554 00027100 */ sll $t6, $v0, 4 +/* 072158 80071558 3C048012 */ lui $a0, 0x8012 +/* 07215C 8007155C 008E2021 */ addu $a0, $a0, $t6 +/* 072160 80071560 8FA70028 */ lw $a3, 0x28($sp) +/* 072164 80071564 8C843588 */ lw $a0, 0x3588($a0) +/* 072168 80071568 00001825 */ move $v1, $zero +/* 07216C 8007156C 2406FFFF */ li $a2, -1 +/* 072170 80071570 24050014 */ li $a1, 20 +.L80071574: +/* 072174 80071574 00650019 */ multu $v1, $a1 +/* 072178 80071578 00007812 */ mflo $t7 +/* 07217C 8007157C 01E41021 */ addu $v0, $t7, $a0 +/* 072180 80071580 8C580000 */ lw $t8, ($v0) +/* 072184 80071584 00000000 */ nop +/* 072188 80071588 14F8000C */ bne $a3, $t8, .L800715BC +/* 07218C 8007158C 00000000 */ nop +/* 072190 80071590 84430008 */ lh $v1, 8($v0) +/* 072194 80071594 00000000 */ nop +/* 072198 80071598 30790002 */ andi $t9, $v1, 2 +/* 07219C 8007159C 13200007 */ beqz $t9, .L800715BC +/* 0721A0 800715A0 38680002 */ xori $t0, $v1, 2 +/* 0721A4 800715A4 A4480008 */ sh $t0, 8($v0) +/* 0721A8 800715A8 8FA40018 */ lw $a0, 0x18($sp) +/* 0721AC 800715AC 0C01BD4F */ jal func_8006F53C +/* 0721B0 800715B0 00000000 */ nop +/* 0721B4 800715B4 10000009 */ b .L800715DC +/* 0721B8 800715B8 24020001 */ li $v0, 1 +.L800715BC: +/* 0721BC 800715BC 8443000C */ lh $v1, 0xc($v0) +/* 0721C0 800715C0 00000000 */ nop +/* 0721C4 800715C4 1466FFEB */ bne $v1, $a2, .L80071574 +/* 0721C8 800715C8 00000000 */ nop +/* 0721CC 800715CC 8FA40018 */ lw $a0, 0x18($sp) +/* 0721D0 800715D0 0C01BD4F */ jal func_8006F53C +/* 0721D4 800715D4 00000000 */ nop +/* 0721D8 800715D8 00001025 */ move $v0, $zero +.L800715DC: +/* 0721DC 800715DC 8FBF0014 */ lw $ra, 0x14($sp) +/* 0721E0 800715E0 27BD0028 */ addiu $sp, $sp, 0x28 +/* 0721E4 800715E4 03E00008 */ jr $ra +/* 0721E8 800715E8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_071730/func_800715EC.s b/asm/non_matchings/unknown_071730/func_800715EC.s new file mode 100644 index 00000000..35cc453e --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_800715EC.s @@ -0,0 +1,29 @@ +glabel func_800715EC +/* 0721EC 800715EC 3C038012 */ lui $v1, %hi(D_801235C0) # $v1, 0x8012 +/* 0721F0 800715F0 8C6335C0 */ lw $v1, %lo(D_801235C0)($v1) +/* 0721F4 800715F4 00802825 */ move $a1, $a0 +/* 0721F8 800715F8 18600012 */ blez $v1, .L80071644 +/* 0721FC 800715FC 00037100 */ sll $t6, $v1, 4 +/* 072200 80071600 3C0F8012 */ lui $t7, %hi(D_80123580) # $t7, 0x8012 +/* 072204 80071604 25EF3580 */ addiu $t7, %lo(D_80123580) # addiu $t7, $t7, 0x3580 +/* 072208 80071608 01CF1021 */ addu $v0, $t6, $t7 +.L8007160C: +/* 07220C 8007160C 8C440008 */ lw $a0, 8($v0) +/* 072210 80071610 00000000 */ nop +/* 072214 80071614 0085082B */ sltu $at, $a0, $a1 +/* 072218 80071618 10200007 */ beqz $at, .L80071638 +/* 07221C 8007161C 00000000 */ nop +/* 072220 80071620 8C58000C */ lw $t8, 0xc($v0) +/* 072224 80071624 00000000 */ nop +/* 072228 80071628 0304C821 */ addu $t9, $t8, $a0 +/* 07222C 8007162C 00B9082B */ sltu $at, $a1, $t9 +/* 072230 80071630 14200004 */ bnez $at, .L80071644 +/* 072234 80071634 00000000 */ nop +.L80071638: +/* 072238 80071638 2463FFFF */ addiu $v1, $v1, -1 +/* 07223C 8007163C 1C60FFF3 */ bgtz $v1, .L8007160C +/* 072240 80071640 2442FFF0 */ addiu $v0, $v0, -0x10 +.L80071644: +/* 072244 80071644 03E00008 */ jr $ra +/* 072248 80071648 00601025 */ move $v0, $v1 + diff --git a/asm/non_matchings/unknown_071730/func_8007164C.s b/asm/non_matchings/unknown_071730/func_8007164C.s new file mode 100644 index 00000000..4c196dcb --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_8007164C.s @@ -0,0 +1,87 @@ +glabel func_8007164C +/* 07224C 8007164C 240A0014 */ li $t2, 20 +/* 072250 80071650 00AA0019 */ multu $a1, $t2 +/* 072254 80071654 3C0F8012 */ lui $t7, %hi(D_80123580) # $t7, 0x8012 +/* 072258 80071658 25EF3580 */ addiu $t7, %lo(D_80123580) # addiu $t7, $t7, 0x3580 +/* 07225C 8007165C 00047100 */ sll $t6, $a0, 4 +/* 072260 80071660 01CF1821 */ addu $v1, $t6, $t7 +/* 072264 80071664 8C620008 */ lw $v0, 8($v1) +/* 072268 80071668 240BFFFF */ li $t3, -1 +/* 07226C 8007166C 0000C012 */ mflo $t8 +/* 072270 80071670 03023821 */ addu $a3, $t8, $v0 +/* 072274 80071674 84E6000C */ lh $a2, 0xc($a3) +/* 072278 80071678 84E8000A */ lh $t0, 0xa($a3) +/* 07227C 8007167C 10CB001D */ beq $a2, $t3, .L800716F4 +/* 072280 80071680 A4E00008 */ sh $zero, 8($a3) +/* 072284 80071684 00CA0019 */ multu $a2, $t2 +/* 072288 80071688 0000C812 */ mflo $t9 +/* 07228C 8007168C 03222021 */ addu $a0, $t9, $v0 +/* 072290 80071690 848C0008 */ lh $t4, 8($a0) +/* 072294 80071694 00000000 */ nop +/* 072298 80071698 15800016 */ bnez $t4, .L800716F4 +/* 07229C 8007169C 00000000 */ nop +/* 0722A0 800716A0 8CED0004 */ lw $t5, 4($a3) +/* 0722A4 800716A4 8C8E0004 */ lw $t6, 4($a0) +/* 0722A8 800716A8 00000000 */ nop +/* 0722AC 800716AC 01AE7821 */ addu $t7, $t5, $t6 +/* 0722B0 800716B0 ACEF0004 */ sw $t7, 4($a3) +/* 0722B4 800716B4 8489000C */ lh $t1, 0xc($a0) +/* 0722B8 800716B8 00000000 */ nop +/* 0722BC 800716BC 112B0005 */ beq $t1, $t3, .L800716D4 +/* 0722C0 800716C0 A4E9000C */ sh $t1, 0xc($a3) +/* 0722C4 800716C4 012A0019 */ multu $t1, $t2 +/* 0722C8 800716C8 0000C012 */ mflo $t8 +/* 0722CC 800716CC 0058C821 */ addu $t9, $v0, $t8 +/* 0722D0 800716D0 A725000A */ sh $a1, 0xa($t9) +.L800716D4: +/* 0722D4 800716D4 8C6C0004 */ lw $t4, 4($v1) +/* 0722D8 800716D8 00000000 */ nop +/* 0722DC 800716DC 258DFFFF */ addiu $t5, $t4, -1 +/* 0722E0 800716E0 01AA0019 */ multu $t5, $t2 +/* 0722E4 800716E4 AC6D0004 */ sw $t5, 4($v1) +/* 0722E8 800716E8 00007812 */ mflo $t7 +/* 0722EC 800716EC 004FC021 */ addu $t8, $v0, $t7 +/* 0722F0 800716F0 A706000E */ sh $a2, 0xe($t8) +.L800716F4: +/* 0722F4 800716F4 110B001D */ beq $t0, $t3, .L8007176C +/* 0722F8 800716F8 00000000 */ nop +/* 0722FC 800716FC 010A0019 */ multu $t0, $t2 +/* 072300 80071700 0000C812 */ mflo $t9 +/* 072304 80071704 03222021 */ addu $a0, $t9, $v0 +/* 072308 80071708 848C0008 */ lh $t4, 8($a0) +/* 07230C 8007170C 00000000 */ nop +/* 072310 80071710 15800016 */ bnez $t4, .L8007176C +/* 072314 80071714 00000000 */ nop +/* 072318 80071718 8C8D0004 */ lw $t5, 4($a0) +/* 07231C 8007171C 8CEE0004 */ lw $t6, 4($a3) +/* 072320 80071720 00000000 */ nop +/* 072324 80071724 01AE7821 */ addu $t7, $t5, $t6 +/* 072328 80071728 AC8F0004 */ sw $t7, 4($a0) +/* 07232C 8007172C 84E9000C */ lh $t1, 0xc($a3) +/* 072330 80071730 00000000 */ nop +/* 072334 80071734 112B0005 */ beq $t1, $t3, .L8007174C +/* 072338 80071738 A489000C */ sh $t1, 0xc($a0) +/* 07233C 8007173C 012A0019 */ multu $t1, $t2 +/* 072340 80071740 0000C012 */ mflo $t8 +/* 072344 80071744 0058C821 */ addu $t9, $v0, $t8 +/* 072348 80071748 A728000A */ sh $t0, 0xa($t9) +.L8007174C: +/* 07234C 8007174C 8C6C0004 */ lw $t4, 4($v1) +/* 072350 80071750 00000000 */ nop +/* 072354 80071754 258DFFFF */ addiu $t5, $t4, -1 +/* 072358 80071758 01AA0019 */ multu $t5, $t2 +/* 07235C 8007175C AC6D0004 */ sw $t5, 4($v1) +/* 072360 80071760 00007812 */ mflo $t7 +/* 072364 80071764 004FC021 */ addu $t8, $v0, $t7 +/* 072368 80071768 A705000E */ sh $a1, 0xe($t8) +.L8007176C: +/* 07236C 8007176C 03E00008 */ jr $ra +/* 072370 80071770 00000000 */ nop + +/* 072374 80071774 00047100 */ sll $t6, $a0, 4 +/* 072378 80071778 3C028012 */ lui $v0, 0x8012 +/* 07237C 8007177C 004E1021 */ addu $v0, $v0, $t6 +/* 072380 80071780 8C423588 */ lw $v0, 0x3588($v0) +/* 072384 80071784 03E00008 */ jr $ra +/* 072388 80071788 00000000 */ nop + diff --git a/asm/non_matchings/unknown_071730/func_8007178C.s b/asm/non_matchings/unknown_071730/func_8007178C.s new file mode 100644 index 00000000..7e1ab2d3 --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_8007178C.s @@ -0,0 +1,54 @@ +glabel func_8007178C +/* 07238C 8007178C 240B0014 */ li $t3, 20 +/* 072390 80071790 00AB0019 */ multu $a1, $t3 +/* 072394 80071794 3C0F8012 */ lui $t7, %hi(D_80123580) # $t7, 0x8012 +/* 072398 80071798 25EF3580 */ addiu $t7, %lo(D_80123580) # addiu $t7, $t7, 0x3580 +/* 07239C 8007179C 00047100 */ sll $t6, $a0, 4 +/* 0723A0 800717A0 01CF1821 */ addu $v1, $t6, $t7 +/* 0723A4 800717A4 8C620008 */ lw $v0, 8($v1) +/* 0723A8 800717A8 0000C012 */ mflo $t8 +/* 0723AC 800717AC 00584021 */ addu $t0, $v0, $t8 +/* 0723B0 800717B0 8D090004 */ lw $t1, 4($t0) +/* 0723B4 800717B4 A5070008 */ sh $a3, 8($t0) +/* 0723B8 800717B8 AD060004 */ sw $a2, 4($t0) +/* 0723BC 800717BC 8FB90014 */ lw $t9, 0x14($sp) +/* 0723C0 800717C0 00C9082A */ slt $at, $a2, $t1 +/* 0723C4 800717C4 1020001F */ beqz $at, .L80071844 +/* 0723C8 800717C8 AD190010 */ sw $t9, 0x10($t0) +/* 0723CC 800717CC 8C670004 */ lw $a3, 4($v1) +/* 0723D0 800717D0 2401FFFF */ li $at, -1 +/* 0723D4 800717D4 00EB0019 */ multu $a3, $t3 +/* 0723D8 800717D8 24EE0001 */ addiu $t6, $a3, 1 +/* 0723DC 800717DC 00006012 */ mflo $t4 +/* 0723E0 800717E0 01826821 */ addu $t5, $t4, $v0 +/* 0723E4 800717E4 85A4000E */ lh $a0, 0xe($t5) +/* 0723E8 800717E8 AC6E0004 */ sw $t6, 4($v1) +/* 0723EC 800717EC 008B0019 */ multu $a0, $t3 +/* 0723F0 800717F0 8D180000 */ lw $t8, ($t0) +/* 0723F4 800717F4 01266023 */ subu $t4, $t1, $a2 +/* 0723F8 800717F8 0306C821 */ addu $t9, $t8, $a2 +/* 0723FC 800717FC 00007812 */ mflo $t7 +/* 072400 80071800 004F5021 */ addu $t2, $v0, $t7 +/* 072404 80071804 AD590000 */ sw $t9, ($t2) +/* 072408 80071808 AD4C0004 */ sw $t4, 4($t2) +/* 07240C 8007180C 8FAD0010 */ lw $t5, 0x10($sp) +/* 072410 80071810 00000000 */ nop +/* 072414 80071814 A54D0008 */ sh $t5, 8($t2) +/* 072418 80071818 8509000C */ lh $t1, 0xc($t0) +/* 07241C 8007181C A545000A */ sh $a1, 0xa($t2) +/* 072420 80071820 A549000C */ sh $t1, 0xc($t2) +/* 072424 80071824 11210005 */ beq $t1, $at, .L8007183C +/* 072428 80071828 A504000C */ sh $a0, 0xc($t0) +/* 07242C 8007182C 012B0019 */ multu $t1, $t3 +/* 072430 80071830 00007012 */ mflo $t6 +/* 072434 80071834 004E7821 */ addu $t7, $v0, $t6 +/* 072438 80071838 A5E4000A */ sh $a0, 0xa($t7) +.L8007183C: +/* 07243C 8007183C 03E00008 */ jr $ra +/* 072440 80071840 00801025 */ move $v0, $a0 + +.L80071844: +/* 072444 80071844 00A01025 */ move $v0, $a1 +/* 072448 80071848 03E00008 */ jr $ra +/* 07244C 8007184C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_071730/func_80071850.s b/asm/non_matchings/unknown_071730/func_80071850.s new file mode 100644 index 00000000..39c6e069 --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_80071850.s @@ -0,0 +1,137 @@ +glabel func_80071850 +/* 072450 80071850 3083000F */ andi $v1, $a0, 0xf +/* 072454 80071854 18600003 */ blez $v1, .L80071864 +/* 072458 80071858 00000000 */ nop +/* 07245C 8007185C 00832023 */ subu $a0, $a0, $v1 +/* 072460 80071860 24840010 */ addiu $a0, $a0, 0x10 +.L80071864: +/* 072464 80071864 03E00008 */ jr $ra +/* 072468 80071868 00801025 */ move $v0, $a0 + +/* 07246C 8007186C 30830007 */ andi $v1, $a0, 7 +/* 072470 80071870 18600003 */ blez $v1, .L80071880 +/* 072474 80071874 00000000 */ nop +/* 072478 80071878 00832023 */ subu $a0, $a0, $v1 +/* 07247C 8007187C 24840008 */ addiu $a0, $a0, 8 +.L80071880: +/* 072480 80071880 03E00008 */ jr $ra +/* 072484 80071884 00801025 */ move $v0, $a0 + +/* 072488 80071888 30830003 */ andi $v1, $a0, 3 +/* 07248C 8007188C 18600003 */ blez $v1, .L8007189C +/* 072490 80071890 00000000 */ nop +/* 072494 80071894 00832023 */ subu $a0, $a0, $v1 +/* 072498 80071898 24840004 */ addiu $a0, $a0, 4 +.L8007189C: +/* 07249C 8007189C 03E00008 */ jr $ra +/* 0724A0 800718A0 00801025 */ move $v0, $a0 + +/* 0724A4 800718A4 27BDFDC8 */ addiu $sp, $sp, -0x238 +/* 0724A8 800718A8 AFB00004 */ sw $s0, 4($sp) +/* 0724AC 800718AC 00001025 */ move $v0, $zero +/* 0724B0 800718B0 27A40138 */ addiu $a0, $sp, 0x138 +/* 0724B4 800718B4 27A50038 */ addiu $a1, $sp, 0x38 +/* 0724B8 800718B8 27A30138 */ addiu $v1, $sp, 0x138 +.L800718BC: +/* 0724BC 800718BC 24A50010 */ addiu $a1, $a1, 0x10 +/* 0724C0 800718C0 AC800004 */ sw $zero, 4($a0) +/* 0724C4 800718C4 ACA0FFF4 */ sw $zero, -0xc($a1) +/* 0724C8 800718C8 AC800008 */ sw $zero, 8($a0) +/* 0724CC 800718CC ACA0FFF8 */ sw $zero, -8($a1) +/* 0724D0 800718D0 AC80000C */ sw $zero, 0xc($a0) +/* 0724D4 800718D4 ACA0FFFC */ sw $zero, -4($a1) +/* 0724D8 800718D8 24840010 */ addiu $a0, $a0, 0x10 +/* 0724DC 800718DC AC80FFF0 */ sw $zero, -0x10($a0) +/* 0724E0 800718E0 14A3FFF6 */ bne $a1, $v1, .L800718BC +/* 0724E4 800718E4 ACA0FFF0 */ sw $zero, -0x10($a1) +/* 0724E8 800718E8 3C048012 */ lui $a0, %hi(D_801235C0) # $a0, 0x8012 +/* 0724EC 800718EC 8C8435C0 */ lw $a0, %lo(D_801235C0)($a0) +/* 0724F0 800718F0 3C0E8012 */ lui $t6, 0x8012 +/* 0724F4 800718F4 1880003B */ blez $a0, .L800719E4 +/* 0724F8 800718F8 25C53580 */ addiu $a1, $t6, 0x3580 +/* 0724FC 800718FC 00047900 */ sll $t7, $a0, 4 +/* 072500 80071900 01E55021 */ addu $t2, $t7, $a1 +/* 072504 80071904 24100014 */ li $s0, 20 +/* 072508 80071908 240DFFFF */ li $t5, -1 +/* 07250C 8007190C 27AC0038 */ addiu $t4, $sp, 0x38 +/* 072510 80071910 27AB0138 */ addiu $t3, $sp, 0x138 +.L80071914: +/* 072514 80071914 8CA40008 */ lw $a0, 8($a1) +/* 072518 80071918 00000000 */ nop +/* 07251C 8007191C 00801825 */ move $v1, $a0 +.L80071920: +/* 072520 80071920 84780008 */ lh $t8, 8($v1) +/* 072524 80071924 00000000 */ nop +/* 072528 80071928 13000020 */ beqz $t8, .L800719AC +/* 07252C 8007192C 00000000 */ nop +/* 072530 80071930 8C660010 */ lw $a2, 0x10($v1) +/* 072534 80071934 8FB90138 */ lw $t9, 0x138($sp) +/* 072538 80071938 10C0001C */ beqz $a2, .L800719AC +/* 07253C 8007193C 00C03825 */ move $a3, $a2 +/* 072540 80071940 10D9000E */ beq $a2, $t9, .L8007197C +/* 072544 80071944 00004025 */ move $t0, $zero +/* 072548 80071948 1320000D */ beqz $t9, .L80071980 +/* 07254C 8007194C 29010040 */ slti $at, $t0, 0x40 +.L80071950: +/* 072550 80071950 25080001 */ addiu $t0, $t0, 1 +/* 072554 80071954 29010040 */ slti $at, $t0, 0x40 +/* 072558 80071958 10200008 */ beqz $at, .L8007197C +/* 07255C 8007195C 00087880 */ sll $t7, $t0, 2 +/* 072560 80071960 016F7021 */ addu $t6, $t3, $t7 +/* 072564 80071964 8DC60000 */ lw $a2, ($t6) +/* 072568 80071968 00000000 */ nop +/* 07256C 8007196C 10E60004 */ beq $a3, $a2, .L80071980 +/* 072570 80071970 29010040 */ slti $at, $t0, 0x40 +/* 072574 80071974 14C0FFF6 */ bnez $a2, .L80071950 +/* 072578 80071978 00000000 */ nop +.L8007197C: +/* 07257C 8007197C 29010040 */ slti $at, $t0, 0x40 +.L80071980: +/* 072580 80071980 10200009 */ beqz $at, .L800719A8 +/* 072584 80071984 00083080 */ sll $a2, $t0, 2 +/* 072588 80071988 0166C021 */ addu $t8, $t3, $a2 +/* 07258C 8007198C AF070000 */ sw $a3, ($t8) +/* 072590 80071990 01864821 */ addu $t1, $t4, $a2 +/* 072594 80071994 8D390000 */ lw $t9, ($t1) +/* 072598 80071998 00000000 */ nop +/* 07259C 8007199C 272F0001 */ addiu $t7, $t9, 1 +/* 0725A0 800719A0 10000002 */ b .L800719AC +/* 0725A4 800719A4 AD2F0000 */ sw $t7, ($t1) +.L800719A8: +/* 0725A8 800719A8 24420001 */ addiu $v0, $v0, 1 +.L800719AC: +/* 0725AC 800719AC 8467000C */ lh $a3, 0xc($v1) +/* 0725B0 800719B0 00000000 */ nop +/* 0725B4 800719B4 10ED0005 */ beq $a3, $t5, .L800719CC +/* 0725B8 800719B8 00E03025 */ move $a2, $a3 +/* 0725BC 800719BC 00F00019 */ multu $a3, $s0 +/* 0725C0 800719C0 00007012 */ mflo $t6 +/* 0725C4 800719C4 008E1821 */ addu $v1, $a0, $t6 +/* 0725C8 800719C8 00000000 */ nop +.L800719CC: +/* 0725CC 800719CC 14CDFFD4 */ bne $a2, $t5, .L80071920 +/* 0725D0 800719D0 00000000 */ nop +/* 0725D4 800719D4 24A50010 */ addiu $a1, $a1, 0x10 +/* 0725D8 800719D8 00AA082B */ sltu $at, $a1, $t2 +/* 0725DC 800719DC 1420FFCD */ bnez $at, .L80071914 +/* 0725E0 800719E0 00000000 */ nop +.L800719E4: +/* 0725E4 800719E4 8FB80138 */ lw $t8, 0x138($sp) +/* 0725E8 800719E8 8FB00004 */ lw $s0, 4($sp) +/* 0725EC 800719EC 1300000B */ beqz $t8, .L80071A1C +/* 0725F0 800719F0 00001025 */ move $v0, $zero +/* 0725F4 800719F4 0000C880 */ sll $t9, $zero, 2 +/* 0725F8 800719F8 27AF0138 */ addiu $t7, $sp, 0x138 +/* 0725FC 800719FC 032F2021 */ addu $a0, $t9, $t7 +/* 072600 80071A00 27A30238 */ addiu $v1, $sp, 0x238 +.L80071A04: +/* 072604 80071A04 8C8E0004 */ lw $t6, 4($a0) +/* 072608 80071A08 24840004 */ addiu $a0, $a0, 4 +/* 07260C 80071A0C 11C00003 */ beqz $t6, .L80071A1C +/* 072610 80071A10 00000000 */ nop +/* 072614 80071A14 1483FFFB */ bne $a0, $v1, .L80071A04 +/* 072618 80071A18 00000000 */ nop +.L80071A1C: +/* 07261C 80071A1C 03E00008 */ jr $ra +/* 072620 80071A20 27BD0238 */ addiu $sp, $sp, 0x238 + diff --git a/asm/non_matchings/unknown_071730/func_80071A24.s b/asm/non_matchings/unknown_071730/func_80071A24.s new file mode 100644 index 00000000..933950f2 --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_80071A24.s @@ -0,0 +1,215 @@ +glabel func_80071A24 +/* 072624 80071A24 3C028012 */ lui $v0, %hi(D_80123588) # $v0, 0x8012 +/* 072628 80071A28 8C423588 */ lw $v0, %lo(D_80123588)($v0) +/* 07262C 80071A2C 00001825 */ move $v1, $zero +/* 072630 80071A30 00002825 */ move $a1, $zero +/* 072634 80071A34 24060640 */ li $a2, 1600 +.L80071A38: +/* 072638 80071A38 844E0008 */ lh $t6, 8($v0) +/* 07263C 80071A3C 24A50004 */ addiu $a1, $a1, 4 +/* 072640 80071A40 11C00006 */ beqz $t6, .L80071A5C +/* 072644 80071A44 00000000 */ nop +/* 072648 80071A48 8C4F0010 */ lw $t7, 0x10($v0) +/* 07264C 80071A4C 00000000 */ nop +/* 072650 80071A50 148F0002 */ bne $a0, $t7, .L80071A5C +/* 072654 80071A54 00000000 */ nop +/* 072658 80071A58 24630001 */ addiu $v1, $v1, 1 +.L80071A5C: +/* 07265C 80071A5C 8458001C */ lh $t8, 0x1c($v0) +/* 072660 80071A60 24420014 */ addiu $v0, $v0, 0x14 +/* 072664 80071A64 13000006 */ beqz $t8, .L80071A80 +/* 072668 80071A68 00000000 */ nop +/* 07266C 80071A6C 8C590010 */ lw $t9, 0x10($v0) +/* 072670 80071A70 00000000 */ nop +/* 072674 80071A74 14990002 */ bne $a0, $t9, .L80071A80 +/* 072678 80071A78 00000000 */ nop +/* 07267C 80071A7C 24630001 */ addiu $v1, $v1, 1 +.L80071A80: +/* 072680 80071A80 8448001C */ lh $t0, 0x1c($v0) +/* 072684 80071A84 24420014 */ addiu $v0, $v0, 0x14 +/* 072688 80071A88 11000006 */ beqz $t0, .L80071AA4 +/* 07268C 80071A8C 00000000 */ nop +/* 072690 80071A90 8C490010 */ lw $t1, 0x10($v0) +/* 072694 80071A94 00000000 */ nop +/* 072698 80071A98 14890002 */ bne $a0, $t1, .L80071AA4 +/* 07269C 80071A9C 00000000 */ nop +/* 0726A0 80071AA0 24630001 */ addiu $v1, $v1, 1 +.L80071AA4: +/* 0726A4 80071AA4 844A001C */ lh $t2, 0x1c($v0) +/* 0726A8 80071AA8 24420014 */ addiu $v0, $v0, 0x14 +/* 0726AC 80071AAC 11400006 */ beqz $t2, .L80071AC8 +/* 0726B0 80071AB0 00000000 */ nop +/* 0726B4 80071AB4 8C4B0010 */ lw $t3, 0x10($v0) +/* 0726B8 80071AB8 00000000 */ nop +/* 0726BC 80071ABC 148B0002 */ bne $a0, $t3, .L80071AC8 +/* 0726C0 80071AC0 00000000 */ nop +/* 0726C4 80071AC4 24630001 */ addiu $v1, $v1, 1 +.L80071AC8: +/* 0726C8 80071AC8 14A6FFDB */ bne $a1, $a2, .L80071A38 +/* 0726CC 80071ACC 24420014 */ addiu $v0, $v0, 0x14 +/* 0726D0 80071AD0 03E00008 */ jr $ra +/* 0726D4 80071AD4 00601025 */ move $v0, $v1 + +/* 0726D8 80071AD8 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0726DC 80071ADC AFBF0014 */ sw $ra, 0x14($sp) +/* 0726E0 80071AE0 3C04FF00 */ lui $a0, (0xFF0000FF >> 16) # lui $a0, 0xff00 +/* 0726E4 80071AE4 0C01C689 */ jal func_80071A24 +/* 0726E8 80071AE8 348400FF */ ori $a0, (0xFF0000FF & 0xFFFF) # ori $a0, $a0, 0xff +/* 0726EC 80071AEC 3C0400FF */ lui $a0, (0x00FF00FF >> 16) # lui $a0, 0xff +/* 0726F0 80071AF0 0C01C689 */ jal func_80071A24 +/* 0726F4 80071AF4 348400FF */ ori $a0, (0x00FF00FF & 0xFFFF) # ori $a0, $a0, 0xff +/* 0726F8 80071AF8 0C01C689 */ jal func_80071A24 +/* 0726FC 80071AFC 3404FFFF */ li $a0, 65535 +/* 072700 80071B00 3C04FFFF */ lui $a0, (0xFFFF00FF >> 16) # lui $a0, 0xffff +/* 072704 80071B04 0C01C689 */ jal func_80071A24 +/* 072708 80071B08 348400FF */ ori $a0, (0xFFFF00FF & 0xFFFF) # ori $a0, $a0, 0xff +/* 07270C 80071B0C 3C04FF00 */ lui $a0, (0xFF00FFFF >> 16) # lui $a0, 0xff00 +/* 072710 80071B10 0C01C689 */ jal func_80071A24 +/* 072714 80071B14 3484FFFF */ ori $a0, (0xFF00FFFF & 0xFFFF) # ori $a0, $a0, 0xffff +/* 072718 80071B18 3C0400FF */ lui $a0, (0x00FFFFFF >> 16) # lui $a0, 0xff +/* 07271C 80071B1C 0C01C689 */ jal func_80071A24 +/* 072720 80071B20 3484FFFF */ ori $a0, (0x00FFFFFF & 0xFFFF) # ori $a0, $a0, 0xffff +/* 072724 80071B24 0C01C689 */ jal func_80071A24 +/* 072728 80071B28 2404FFFF */ li $a0, -1 +/* 07272C 80071B2C 3C047F7F */ lui $a0, (0x7F7F7FFF >> 16) # lui $a0, 0x7f7f +/* 072730 80071B30 0C01C689 */ jal func_80071A24 +/* 072734 80071B34 34847FFF */ ori $a0, (0x7F7F7FFF & 0xFFFF) # ori $a0, $a0, 0x7fff +/* 072738 80071B38 3C04FF7F */ lui $a0, (0xFF7F7FFF >> 16) # lui $a0, 0xff7f +/* 07273C 80071B3C 0C01C689 */ jal func_80071A24 +/* 072740 80071B40 34847FFF */ ori $a0, (0xFF7F7FFF & 0xFFFF) # ori $a0, $a0, 0x7fff +/* 072744 80071B44 8FBF0014 */ lw $ra, 0x14($sp) +/* 072748 80071B48 27BD0018 */ addiu $sp, $sp, 0x18 +/* 07274C 80071B4C 03E00008 */ jr $ra +/* 072750 80071B50 00000000 */ nop + +/* 072754 80071B54 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 072758 80071B58 AFBF0014 */ sw $ra, 0x14($sp) +/* 07275C 80071B5C 00002025 */ move $a0, $zero +/* 072760 80071B60 00002825 */ move $a1, $zero +/* 072764 80071B64 00003025 */ move $a2, $zero +/* 072768 80071B68 0C02D8AD */ jal func_800B62B4 +/* 07276C 80071B6C 24070080 */ li $a3, 128 +/* 072770 80071B70 3C04FF00 */ lui $a0, (0xFF0000FF >> 16) # lui $a0, 0xff00 +/* 072774 80071B74 0C01C689 */ jal func_80071A24 +/* 072778 80071B78 348400FF */ ori $a0, (0xFF0000FF & 0xFFFF) # ori $a0, $a0, 0xff +/* 07277C 80071B7C 3C04800E */ lui $a0, %hi(D_800E7528) # $a0, 0x800e +/* 072780 80071B80 24847528 */ addiu $a0, %lo(D_800E7528) # addiu $a0, $a0, 0x7528 +/* 072784 80071B84 0C02D7B7 */ jal func_800B5EDC +/* 072788 80071B88 00402825 */ move $a1, $v0 +/* 07278C 80071B8C 3C0400FF */ lui $a0, (0x00FF00FF >> 16) # lui $a0, 0xff +/* 072790 80071B90 0C01C689 */ jal func_80071A24 +/* 072794 80071B94 348400FF */ ori $a0, (0x00FF00FF & 0xFFFF) # ori $a0, $a0, 0xff +/* 072798 80071B98 3C04800E */ lui $a0, %hi(D_800E7530) # $a0, 0x800e +/* 07279C 80071B9C 24847530 */ addiu $a0, %lo(D_800E7530) # addiu $a0, $a0, 0x7530 +/* 0727A0 80071BA0 0C02D7B7 */ jal func_800B5EDC +/* 0727A4 80071BA4 00402825 */ move $a1, $v0 +/* 0727A8 80071BA8 0C01C689 */ jal func_80071A24 +/* 0727AC 80071BAC 3404FFFF */ li $a0, 65535 +/* 0727B0 80071BB0 3C04800E */ lui $a0, %hi(D_800E753C) # $a0, 0x800e +/* 0727B4 80071BB4 2484753C */ addiu $a0, %lo(D_800E753C) # addiu $a0, $a0, 0x753c +/* 0727B8 80071BB8 0C02D7B7 */ jal func_800B5EDC +/* 0727BC 80071BBC 00402825 */ move $a1, $v0 +/* 0727C0 80071BC0 3C04FFFF */ lui $a0, (0xFFFF00FF >> 16) # lui $a0, 0xffff +/* 0727C4 80071BC4 0C01C689 */ jal func_80071A24 +/* 0727C8 80071BC8 348400FF */ ori $a0, (0xFFFF00FF & 0xFFFF) # ori $a0, $a0, 0xff +/* 0727CC 80071BCC 3C04800E */ lui $a0, %hi(D_800E7548) # $a0, 0x800e +/* 0727D0 80071BD0 24847548 */ addiu $a0, %lo(D_800E7548) # addiu $a0, $a0, 0x7548 +/* 0727D4 80071BD4 0C02D7B7 */ jal func_800B5EDC +/* 0727D8 80071BD8 00402825 */ move $a1, $v0 +/* 0727DC 80071BDC 3C04FF00 */ lui $a0, (0xFF00FFFF >> 16) # lui $a0, 0xff00 +/* 0727E0 80071BE0 0C01C689 */ jal func_80071A24 +/* 0727E4 80071BE4 3484FFFF */ ori $a0, (0xFF00FFFF & 0xFFFF) # ori $a0, $a0, 0xffff +/* 0727E8 80071BE8 3C04800E */ lui $a0, %hi(D_800E7554) # $a0, 0x800e +/* 0727EC 80071BEC 24847554 */ addiu $a0, %lo(D_800E7554) # addiu $a0, $a0, 0x7554 +/* 0727F0 80071BF0 0C02D7B7 */ jal func_800B5EDC +/* 0727F4 80071BF4 00402825 */ move $a1, $v0 +/* 0727F8 80071BF8 3C0400FF */ lui $a0, (0x00FFFFFF >> 16) # lui $a0, 0xff +/* 0727FC 80071BFC 0C01C689 */ jal func_80071A24 +/* 072800 80071C00 3484FFFF */ ori $a0, (0x00FFFFFF & 0xFFFF) # ori $a0, $a0, 0xffff +/* 072804 80071C04 3C04800E */ lui $a0, %hi(D_800E7560) # $a0, 0x800e +/* 072808 80071C08 24847560 */ addiu $a0, %lo(D_800E7560) # addiu $a0, $a0, 0x7560 +/* 07280C 80071C0C 0C02D7B7 */ jal func_800B5EDC +/* 072810 80071C10 00402825 */ move $a1, $v0 +/* 072814 80071C14 0C01C689 */ jal func_80071A24 +/* 072818 80071C18 2404FFFF */ li $a0, -1 +/* 07281C 80071C1C 3C04800E */ lui $a0, %hi(D_800E756C) # $a0, 0x800e +/* 072820 80071C20 2484756C */ addiu $a0, %lo(D_800E756C) # addiu $a0, $a0, 0x756c +/* 072824 80071C24 0C02D7B7 */ jal func_800B5EDC +/* 072828 80071C28 00402825 */ move $a1, $v0 +/* 07282C 80071C2C 3C047F7F */ lui $a0, (0x7F7F7FFF >> 16) # lui $a0, 0x7f7f +/* 072830 80071C30 0C01C689 */ jal func_80071A24 +/* 072834 80071C34 34847FFF */ ori $a0, (0x7F7F7FFF & 0xFFFF) # ori $a0, $a0, 0x7fff +/* 072838 80071C38 3C04800E */ lui $a0, %hi(D_800E7578) # $a0, 0x800e +/* 07283C 80071C3C 24847578 */ addiu $a0, %lo(D_800E7578) # addiu $a0, $a0, 0x7578 +/* 072840 80071C40 0C02D7B7 */ jal func_800B5EDC +/* 072844 80071C44 00402825 */ move $a1, $v0 +/* 072848 80071C48 3C04FF7F */ lui $a0, (0xFF7F7FFF >> 16) # lui $a0, 0xff7f +/* 07284C 80071C4C 0C01C689 */ jal func_80071A24 +/* 072850 80071C50 34847FFF */ ori $a0, (0xFF7F7FFF & 0xFFFF) # ori $a0, $a0, 0x7fff +/* 072854 80071C54 3C04800E */ lui $a0, %hi(D_800E7584) # $a0, 0x800e +/* 072858 80071C58 24847584 */ addiu $a0, %lo(D_800E7584) # addiu $a0, $a0, 0x7584 +/* 07285C 80071C5C 0C02D7B7 */ jal func_800B5EDC +/* 072860 80071C60 00402825 */ move $a1, $v0 +/* 072864 80071C64 8FBF0014 */ lw $ra, 0x14($sp) +/* 072868 80071C68 27BD0018 */ addiu $sp, $sp, 0x18 +/* 07286C 80071C6C 03E00008 */ jr $ra +/* 072870 80071C70 00000000 */ nop + +/* 072874 80071C74 3C038012 */ lui $v1, %hi(D_801235C0) # $v1, 0x8012 +/* 072878 80071C78 8C6335C0 */ lw $v1, %lo(D_801235C0)($v1) +/* 07287C 80071C7C 3C0E8012 */ lui $t6, 0x8012 +/* 072880 80071C80 04600017 */ bltz $v1, .L80071CE0 +/* 072884 80071C84 25C43580 */ addiu $a0, $t6, 0x3580 +/* 072888 80071C88 00037900 */ sll $t7, $v1, 4 +/* 07288C 80071C8C 01E44021 */ addu $t0, $t7, $a0 +/* 072890 80071C90 240C0014 */ li $t4, 20 +/* 072894 80071C94 240BFFFF */ li $t3, -1 +.L80071C98: +/* 072898 80071C98 8C830008 */ lw $v1, 8($a0) +/* 07289C 80071C9C 24840010 */ addiu $a0, $a0, 0x10 +/* 0728A0 80071CA0 00601025 */ move $v0, $v1 +.L80071CA4: +/* 0728A4 80071CA4 84450008 */ lh $a1, 8($v0) +/* 0728A8 80071CA8 8447000C */ lh $a3, 0xc($v0) +/* 0728AC 80071CAC 10A00001 */ beqz $a1, .L80071CB4 +/* 0728B0 80071CB0 00E03025 */ move $a2, $a3 +.L80071CB4: +/* 0728B4 80071CB4 10CB0005 */ beq $a2, $t3, .L80071CCC +/* 0728B8 80071CB8 00000000 */ nop +/* 0728BC 80071CBC 00EC0019 */ multu $a3, $t4 +/* 0728C0 80071CC0 0000C012 */ mflo $t8 +/* 0728C4 80071CC4 00781021 */ addu $v0, $v1, $t8 +/* 0728C8 80071CC8 00000000 */ nop +.L80071CCC: +/* 0728CC 80071CCC 14CBFFF5 */ bne $a2, $t3, .L80071CA4 +/* 0728D0 80071CD0 00000000 */ nop +/* 0728D4 80071CD4 0104082B */ sltu $at, $t0, $a0 +/* 0728D8 80071CD8 1020FFEF */ beqz $at, .L80071C98 +/* 0728DC 80071CDC 00000000 */ nop +.L80071CE0: +/* 0728E0 80071CE0 03E00008 */ jr $ra +/* 0728E4 80071CE4 00000000 */ nop + +/* 0728E8 80071CE8 3C028012 */ lui $v0, %hi(D_801235C0) # $v0, 0x8012 +/* 0728EC 80071CEC 8C4235C0 */ lw $v0, %lo(D_801235C0)($v0) +/* 0728F0 80071CF0 2405FFFF */ li $a1, -1 +/* 0728F4 80071CF4 1045000C */ beq $v0, $a1, .L80071D28 +/* 0728F8 80071CF8 24440001 */ addiu $a0, $v0, 1 +/* 0728FC 80071CFC 308E0003 */ andi $t6, $a0, 3 +/* 072900 80071D00 000E2023 */ negu $a0, $t6 +/* 072904 80071D04 10800005 */ beqz $a0, .L80071D1C +/* 072908 80071D08 00821821 */ addu $v1, $a0, $v0 +.L80071D0C: +/* 07290C 80071D0C 2442FFFF */ addiu $v0, $v0, -1 +/* 072910 80071D10 1462FFFE */ bne $v1, $v0, .L80071D0C +/* 072914 80071D14 00000000 */ nop +/* 072918 80071D18 10450003 */ beq $v0, $a1, .L80071D28 +.L80071D1C: +/* 07291C 80071D1C 2442FFFC */ addiu $v0, $v0, -4 +.L80071D20: +/* 072920 80071D20 1445FFFF */ bne $v0, $a1, .L80071D20 +/* 072924 80071D24 2442FFFC */ addiu $v0, $v0, -4 +.L80071D28: +/* 072928 80071D28 03E00008 */ jr $ra +/* 07292C 80071D2C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_071730/func_80071D30.s b/asm/non_matchings/unknown_071730/func_80071D30.s new file mode 100644 index 00000000..263c2445 --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_80071D30.s @@ -0,0 +1,80 @@ +glabel func_80071D30 +/* 072930 80071D30 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 072934 80071D34 AFBF0014 */ sw $ra, 0x14($sp) +/* 072938 80071D38 0C033594 */ jal func_800CD650 +/* 07293C 80071D3C AFA40050 */ sw $a0, 0x50($sp) +/* 072940 80071D40 8FAF0050 */ lw $t7, 0x50($sp) +/* 072944 80071D44 240E0003 */ li $t6, 3 +/* 072948 80071D48 3C018013 */ lui $at, %hi(D_8012CD90) # $at, 0x8013 +/* 07294C 80071D4C A02ECD90 */ sb $t6, %lo(D_8012CD90)($at) +/* 072950 80071D50 8DF80008 */ lw $t8, 8($t7) +/* 072954 80071D54 3C088012 */ lui $t0, %hi(D_80123DD0) # $t0, 0x8012 +/* 072958 80071D58 25083DD0 */ addiu $t0, %lo(D_80123DD0) # addiu $t0, $t0, 0x3dd0 +/* 07295C 80071D5C 0018C980 */ sll $t9, $t8, 6 +/* 072960 80071D60 03282821 */ addu $a1, $t9, $t0 +/* 072964 80071D64 0C0335B0 */ jal func_800CD6C0 +/* 072968 80071D68 24040001 */ li $a0, 1 +/* 07296C 80071D6C 8FA90050 */ lw $t1, 0x50($sp) +/* 072970 80071D70 00002825 */ move $a1, $zero +/* 072974 80071D74 8D240004 */ lw $a0, 4($t1) +/* 072978 80071D78 0C0322EC */ jal osRecvMesg +/* 07297C 80071D7C 24060001 */ li $a2, 1 +/* 072980 80071D80 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013 +/* 072984 80071D84 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220 +/* 072988 80071D88 0C0335B0 */ jal func_800CD6C0 +/* 07298C 80071D8C 00002025 */ move $a0, $zero +/* 072990 80071D90 8FAA0050 */ lw $t2, 0x50($sp) +/* 072994 80071D94 00002825 */ move $a1, $zero +/* 072998 80071D98 8D440004 */ lw $a0, 4($t2) +/* 07299C 80071D9C 0C0322EC */ jal osRecvMesg +/* 0729A0 80071DA0 24060001 */ li $a2, 1 +/* 0729A4 80071DA4 8FAB0050 */ lw $t3, 0x50($sp) +/* 0729A8 80071DA8 3C038013 */ lui $v1, %hi(D_8012CDE0) # $v1, 0x8013 +/* 0729AC 80071DAC 8D640008 */ lw $a0, 8($t3) +/* 0729B0 80071DB0 2463CDE0 */ addiu $v1, %lo(D_8012CDE0) # addiu $v1, $v1, -0x3220 +/* 0729B4 80071DB4 10800007 */ beqz $a0, .L80071DD4 +/* 0729B8 80071DB8 27AC001C */ addiu $t4, $sp, 0x1c +/* 0729BC 80071DBC 18800005 */ blez $a0, .L80071DD4 +/* 0729C0 80071DC0 00001025 */ move $v0, $zero +.L80071DC4: +/* 0729C4 80071DC4 24420001 */ addiu $v0, $v0, 1 +/* 0729C8 80071DC8 0044082A */ slt $at, $v0, $a0 +/* 0729CC 80071DCC 1420FFFD */ bnez $at, .L80071DC4 +/* 0729D0 80071DD0 24630001 */ addiu $v1, $v1, 1 +.L80071DD4: +/* 0729D4 80071DD4 00607825 */ move $t7, $v1 +/* 0729D8 80071DD8 246E0024 */ addiu $t6, $v1, 0x24 +.L80071DDC: +/* 0729DC 80071DDC 89E10000 */ lwl $at, ($t7) +/* 0729E0 80071DE0 99E10003 */ lwr $at, 3($t7) +/* 0729E4 80071DE4 25EF000C */ addiu $t7, $t7, 0xc +/* 0729E8 80071DE8 AD810000 */ sw $at, ($t4) +/* 0729EC 80071DEC 89E1FFF8 */ lwl $at, -8($t7) +/* 0729F0 80071DF0 99E1FFFB */ lwr $at, -5($t7) +/* 0729F4 80071DF4 258C000C */ addiu $t4, $t4, 0xc +/* 0729F8 80071DF8 AD81FFF8 */ sw $at, -8($t4) +/* 0729FC 80071DFC 89E1FFFC */ lwl $at, -4($t7) +/* 072A00 80071E00 99E1FFFF */ lwr $at, -1($t7) +/* 072A04 80071E04 15EEFFF5 */ bne $t7, $t6, .L80071DDC +/* 072A08 80071E08 AD81FFFC */ sw $at, -4($t4) +/* 072A0C 80071E0C 89E10000 */ lwl $at, ($t7) +/* 072A10 80071E10 99E10003 */ lwr $at, 3($t7) +/* 072A14 80071E14 00000000 */ nop +/* 072A18 80071E18 AD810000 */ sw $at, ($t4) +/* 072A1C 80071E1C 93A2001E */ lbu $v0, 0x1e($sp) +/* 072A20 80071E20 93A80042 */ lbu $t0, 0x42($sp) +/* 072A24 80071E24 305800C0 */ andi $t8, $v0, 0xc0 +/* 072A28 80071E28 00182103 */ sra $a0, $t8, 4 +/* 072A2C 80071E2C 14800004 */ bnez $a0, .L80071E40 +/* 072A30 80071E30 00000000 */ nop +/* 072A34 80071E34 11000002 */ beqz $t0, .L80071E40 +/* 072A38 80071E38 00000000 */ nop +/* 072A3C 80071E3C 24040004 */ li $a0, 4 +.L80071E40: +/* 072A40 80071E40 0C0335A5 */ jal func_800CD694 +/* 072A44 80071E44 AFA40048 */ sw $a0, 0x48($sp) +/* 072A48 80071E48 8FBF0014 */ lw $ra, 0x14($sp) +/* 072A4C 80071E4C 8FA20048 */ lw $v0, 0x48($sp) +/* 072A50 80071E50 03E00008 */ jr $ra +/* 072A54 80071E54 27BD0050 */ addiu $sp, $sp, 0x50 + diff --git a/asm/non_matchings/unknown_071730/func_80071E58.s b/asm/non_matchings/unknown_071730/func_80071E58.s new file mode 100644 index 00000000..28fe9883 --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_80071E58.s @@ -0,0 +1,80 @@ +glabel func_80071E58 +/* 072A58 80071E58 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 072A5C 80071E5C AFBF0014 */ sw $ra, 0x14($sp) +/* 072A60 80071E60 0C033594 */ jal func_800CD650 +/* 072A64 80071E64 AFA40050 */ sw $a0, 0x50($sp) +/* 072A68 80071E68 8FAF0050 */ lw $t7, 0x50($sp) +/* 072A6C 80071E6C 240E0003 */ li $t6, 3 +/* 072A70 80071E70 3C018013 */ lui $at, %hi(D_8012CD90) # $at, 0x8013 +/* 072A74 80071E74 A02ECD90 */ sb $t6, %lo(D_8012CD90)($at) +/* 072A78 80071E78 8DF80008 */ lw $t8, 8($t7) +/* 072A7C 80071E7C 3C088012 */ lui $t0, %hi(D_80123ED0) # $t0, 0x8012 +/* 072A80 80071E80 25083ED0 */ addiu $t0, %lo(D_80123ED0) # addiu $t0, $t0, 0x3ed0 +/* 072A84 80071E84 0018C980 */ sll $t9, $t8, 6 +/* 072A88 80071E88 03282821 */ addu $a1, $t9, $t0 +/* 072A8C 80071E8C 0C0335B0 */ jal func_800CD6C0 +/* 072A90 80071E90 24040001 */ li $a0, 1 +/* 072A94 80071E94 8FA90050 */ lw $t1, 0x50($sp) +/* 072A98 80071E98 00002825 */ move $a1, $zero +/* 072A9C 80071E9C 8D240004 */ lw $a0, 4($t1) +/* 072AA0 80071EA0 0C0322EC */ jal osRecvMesg +/* 072AA4 80071EA4 24060001 */ li $a2, 1 +/* 072AA8 80071EA8 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013 +/* 072AAC 80071EAC 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220 +/* 072AB0 80071EB0 0C0335B0 */ jal func_800CD6C0 +/* 072AB4 80071EB4 00002025 */ move $a0, $zero +/* 072AB8 80071EB8 8FAA0050 */ lw $t2, 0x50($sp) +/* 072ABC 80071EBC 00002825 */ move $a1, $zero +/* 072AC0 80071EC0 8D440004 */ lw $a0, 4($t2) +/* 072AC4 80071EC4 0C0322EC */ jal osRecvMesg +/* 072AC8 80071EC8 24060001 */ li $a2, 1 +/* 072ACC 80071ECC 8FAB0050 */ lw $t3, 0x50($sp) +/* 072AD0 80071ED0 3C038013 */ lui $v1, %hi(D_8012CDE0) # $v1, 0x8013 +/* 072AD4 80071ED4 8D640008 */ lw $a0, 8($t3) +/* 072AD8 80071ED8 2463CDE0 */ addiu $v1, %lo(D_8012CDE0) # addiu $v1, $v1, -0x3220 +/* 072ADC 80071EDC 10800007 */ beqz $a0, .L80071EFC +/* 072AE0 80071EE0 27AC001C */ addiu $t4, $sp, 0x1c +/* 072AE4 80071EE4 18800005 */ blez $a0, .L80071EFC +/* 072AE8 80071EE8 00001025 */ move $v0, $zero +.L80071EEC: +/* 072AEC 80071EEC 24420001 */ addiu $v0, $v0, 1 +/* 072AF0 80071EF0 0044082A */ slt $at, $v0, $a0 +/* 072AF4 80071EF4 1420FFFD */ bnez $at, .L80071EEC +/* 072AF8 80071EF8 24630001 */ addiu $v1, $v1, 1 +.L80071EFC: +/* 072AFC 80071EFC 00607825 */ move $t7, $v1 +/* 072B00 80071F00 246E0024 */ addiu $t6, $v1, 0x24 +.L80071F04: +/* 072B04 80071F04 89E10000 */ lwl $at, ($t7) +/* 072B08 80071F08 99E10003 */ lwr $at, 3($t7) +/* 072B0C 80071F0C 25EF000C */ addiu $t7, $t7, 0xc +/* 072B10 80071F10 AD810000 */ sw $at, ($t4) +/* 072B14 80071F14 89E1FFF8 */ lwl $at, -8($t7) +/* 072B18 80071F18 99E1FFFB */ lwr $at, -5($t7) +/* 072B1C 80071F1C 258C000C */ addiu $t4, $t4, 0xc +/* 072B20 80071F20 AD81FFF8 */ sw $at, -8($t4) +/* 072B24 80071F24 89E1FFFC */ lwl $at, -4($t7) +/* 072B28 80071F28 99E1FFFF */ lwr $at, -1($t7) +/* 072B2C 80071F2C 15EEFFF5 */ bne $t7, $t6, .L80071F04 +/* 072B30 80071F30 AD81FFFC */ sw $at, -4($t4) +/* 072B34 80071F34 89E10000 */ lwl $at, ($t7) +/* 072B38 80071F38 99E10003 */ lwr $at, 3($t7) +/* 072B3C 80071F3C 00000000 */ nop +/* 072B40 80071F40 AD810000 */ sw $at, ($t4) +/* 072B44 80071F44 93A2001E */ lbu $v0, 0x1e($sp) +/* 072B48 80071F48 93A80042 */ lbu $t0, 0x42($sp) +/* 072B4C 80071F4C 305800C0 */ andi $t8, $v0, 0xc0 +/* 072B50 80071F50 00182103 */ sra $a0, $t8, 4 +/* 072B54 80071F54 14800004 */ bnez $a0, .L80071F68 +/* 072B58 80071F58 240100EB */ li $at, 235 +/* 072B5C 80071F5C 11010002 */ beq $t0, $at, .L80071F68 +/* 072B60 80071F60 00000000 */ nop +/* 072B64 80071F64 24040004 */ li $a0, 4 +.L80071F68: +/* 072B68 80071F68 0C0335A5 */ jal func_800CD694 +/* 072B6C 80071F6C AFA40048 */ sw $a0, 0x48($sp) +/* 072B70 80071F70 8FBF0014 */ lw $ra, 0x14($sp) +/* 072B74 80071F74 8FA20048 */ lw $v0, 0x48($sp) +/* 072B78 80071F78 03E00008 */ jr $ra +/* 072B7C 80071F7C 27BD0050 */ addiu $sp, $sp, 0x50 + diff --git a/asm/non_matchings/unknown_071730/func_80071F80.s b/asm/non_matchings/unknown_071730/func_80071F80.s new file mode 100644 index 00000000..6f83936f --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_80071F80.s @@ -0,0 +1,95 @@ +glabel func_80071F80 +/* 072B80 80071F80 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 072B84 80071F84 AFB00018 */ sw $s0, 0x18($sp) +/* 072B88 80071F88 00808025 */ move $s0, $a0 +/* 072B8C 80071F8C AFBF001C */ sw $ra, 0x1c($sp) +/* 072B90 80071F90 AFA5005C */ sw $a1, 0x5c($sp) +/* 072B94 80071F94 00E01825 */ move $v1, $a3 +/* 072B98 80071F98 00004025 */ move $t0, $zero +/* 072B9C 80071F9C 00E01025 */ move $v0, $a3 +.L80071FA0: +/* 072BA0 80071FA0 25080001 */ addiu $t0, $t0, 1 +/* 072BA4 80071FA4 2901000F */ slti $at, $t0, 0xf +/* 072BA8 80071FA8 24420004 */ addiu $v0, $v0, 4 +/* 072BAC 80071FAC 1420FFFC */ bnez $at, .L80071FA0 +/* 072BB0 80071FB0 AC40FFFC */ sw $zero, -4($v0) +/* 072BB4 80071FB4 240E0001 */ li $t6, 1 +/* 072BB8 80071FB8 ACEE003C */ sw $t6, 0x3c($a3) +/* 072BBC 80071FBC 240F00FF */ li $t7, 255 +/* 072BC0 80071FC0 24180023 */ li $t8, 35 +/* 072BC4 80071FC4 24190001 */ li $t9, 1 +/* 072BC8 80071FC8 24090003 */ li $t1, 3 +/* 072BCC 80071FCC 97A4005E */ lhu $a0, 0x5e($sp) +/* 072BD0 80071FD0 A3AF002C */ sb $t7, 0x2c($sp) +/* 072BD4 80071FD4 A3B8002D */ sb $t8, 0x2d($sp) +/* 072BD8 80071FD8 A3B9002E */ sb $t9, 0x2e($sp) +/* 072BDC 80071FDC A3A9002F */ sb $t1, 0x2f($sp) +/* 072BE0 80071FE0 AFA60060 */ sw $a2, 0x60($sp) +/* 072BE4 80071FE4 0C0335DC */ jal func_800CD770 +/* 072BE8 80071FE8 AFA30054 */ sw $v1, 0x54($sp) +/* 072BEC 80071FEC 97AA005E */ lhu $t2, 0x5e($sp) +/* 072BF0 80071FF0 240D00FF */ li $t5, 255 +/* 072BF4 80071FF4 000A5940 */ sll $t3, $t2, 5 +/* 072BF8 80071FF8 004B6025 */ or $t4, $v0, $t3 +/* 072BFC 80071FFC 8FA30054 */ lw $v1, 0x54($sp) +/* 072C00 80072000 8FA60060 */ lw $a2, 0x60($sp) +/* 072C04 80072004 A7AC0030 */ sh $t4, 0x30($sp) +/* 072C08 80072008 A3AD0052 */ sb $t5, 0x52($sp) +/* 072C0C 8007200C 27A2004C */ addiu $v0, $sp, 0x4c +/* 072C10 80072010 27A4002C */ addiu $a0, $sp, 0x2c +.L80072014: +/* 072C14 80072014 90CE0000 */ lbu $t6, ($a2) +/* 072C18 80072018 24840001 */ addiu $a0, $a0, 1 +/* 072C1C 8007201C 0082082B */ sltu $at, $a0, $v0 +/* 072C20 80072020 24C60001 */ addiu $a2, $a2, 1 +/* 072C24 80072024 1420FFFB */ bnez $at, .L80072014 +/* 072C28 80072028 A08E0005 */ sb $t6, 5($a0) +/* 072C2C 8007202C 12000012 */ beqz $s0, .L80072078 +/* 072C30 80072030 27AF002C */ addiu $t7, $sp, 0x2c +/* 072C34 80072034 1A000010 */ blez $s0, .L80072078 +/* 072C38 80072038 00004025 */ move $t0, $zero +/* 072C3C 8007203C 32040003 */ andi $a0, $s0, 3 +/* 072C40 80072040 10800006 */ beqz $a0, .L8007205C +/* 072C44 80072044 00801025 */ move $v0, $a0 +.L80072048: +/* 072C48 80072048 25080001 */ addiu $t0, $t0, 1 +/* 072C4C 8007204C A0600000 */ sb $zero, ($v1) +/* 072C50 80072050 1448FFFD */ bne $v0, $t0, .L80072048 +/* 072C54 80072054 24630001 */ addiu $v1, $v1, 1 +/* 072C58 80072058 11100007 */ beq $t0, $s0, .L80072078 +.L8007205C: +/* 072C5C 8007205C 25080004 */ addiu $t0, $t0, 4 +/* 072C60 80072060 A0600001 */ sb $zero, 1($v1) +/* 072C64 80072064 A0600002 */ sb $zero, 2($v1) +/* 072C68 80072068 A0600003 */ sb $zero, 3($v1) +/* 072C6C 8007206C 24630004 */ addiu $v1, $v1, 4 +/* 072C70 80072070 1510FFFA */ bne $t0, $s0, .L8007205C +/* 072C74 80072074 A060FFFC */ sb $zero, -4($v1) +.L80072078: +/* 072C78 80072078 00604825 */ move $t1, $v1 +/* 072C7C 8007207C 25F90024 */ addiu $t9, $t7, 0x24 +.L80072080: +/* 072C80 80072080 8DE10000 */ lw $at, ($t7) +/* 072C84 80072084 25EF000C */ addiu $t7, $t7, 0xc +/* 072C88 80072088 A9210000 */ swl $at, ($t1) +/* 072C8C 8007208C B9210003 */ swr $at, 3($t1) +/* 072C90 80072090 8DE1FFF8 */ lw $at, -8($t7) +/* 072C94 80072094 2529000C */ addiu $t1, $t1, 0xc +/* 072C98 80072098 A921FFF8 */ swl $at, -8($t1) +/* 072C9C 8007209C B921FFFB */ swr $at, -5($t1) +/* 072CA0 800720A0 8DE1FFFC */ lw $at, -4($t7) +/* 072CA4 800720A4 00000000 */ nop +/* 072CA8 800720A8 A921FFFC */ swl $at, -4($t1) +/* 072CAC 800720AC 15F9FFF4 */ bne $t7, $t9, .L80072080 +/* 072CB0 800720B0 B921FFFF */ swr $at, -1($t1) +/* 072CB4 800720B4 8DE10000 */ lw $at, ($t7) +/* 072CB8 800720B8 240A00FE */ li $t2, 254 +/* 072CBC 800720BC A9210000 */ swl $at, ($t1) +/* 072CC0 800720C0 B9210003 */ swr $at, 3($t1) +/* 072CC4 800720C4 A06A0028 */ sb $t2, 0x28($v1) +/* 072CC8 800720C8 8FBF001C */ lw $ra, 0x1c($sp) +/* 072CCC 800720CC 8FB00018 */ lw $s0, 0x18($sp) +/* 072CD0 800720D0 24630028 */ addiu $v1, $v1, 0x28 +/* 072CD4 800720D4 03E00008 */ jr $ra +/* 072CD8 800720D8 27BD0058 */ addiu $sp, $sp, 0x58 + diff --git a/asm/non_matchings/unknown_071730/func_800720DC.s b/asm/non_matchings/unknown_071730/func_800720DC.s new file mode 100644 index 00000000..ebaf0f01 --- /dev/null +++ b/asm/non_matchings/unknown_071730/func_800720DC.s @@ -0,0 +1,104 @@ +glabel func_800720DC +/* 072CDC 800720DC 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 072CE0 800720E0 AFB00020 */ sw $s0, 0x20($sp) +/* 072CE4 800720E4 AFBF0024 */ sw $ra, 0x24($sp) +/* 072CE8 800720E8 24070080 */ li $a3, 128 +/* 072CEC 800720EC 00C08025 */ move $s0, $a2 +/* 072CF0 800720F0 ACA40004 */ sw $a0, 4($a1) +/* 072CF4 800720F4 ACA60008 */ sw $a2, 8($a1) +/* 072CF8 800720F8 ACA00000 */ sw $zero, ($a1) +/* 072CFC 800720FC A0A70065 */ sb $a3, 0x65($a1) +/* 072D00 80072100 27A20030 */ addiu $v0, $sp, 0x30 +/* 072D04 80072104 27A30050 */ addiu $v1, $sp, 0x50 +.L80072108: +/* 072D08 80072108 24420001 */ addiu $v0, $v0, 1 +/* 072D0C 8007210C 0043082B */ sltu $at, $v0, $v1 +/* 072D10 80072110 1420FFFD */ bnez $at, .L80072108 +/* 072D14 80072114 A047FFFF */ sb $a3, -1($v0) +/* 072D18 80072118 02002825 */ move $a1, $s0 +/* 072D1C 8007211C 24060400 */ li $a2, 1024 +/* 072D20 80072120 27A70030 */ addiu $a3, $sp, 0x30 +/* 072D24 80072124 AFA00010 */ sw $zero, 0x10($sp) +/* 072D28 80072128 0C03363C */ jal func_800CD8F0 +/* 072D2C 8007212C AFA40058 */ sw $a0, 0x58($sp) +/* 072D30 80072130 24010002 */ li $at, 2 +/* 072D34 80072134 14410008 */ bne $v0, $at, .L80072158 +/* 072D38 80072138 00401825 */ move $v1, $v0 +/* 072D3C 8007213C 8FA40058 */ lw $a0, 0x58($sp) +/* 072D40 80072140 02002825 */ move $a1, $s0 +/* 072D44 80072144 24060400 */ li $a2, 1024 +/* 072D48 80072148 27A70030 */ addiu $a3, $sp, 0x30 +/* 072D4C 8007214C 0C03363C */ jal func_800CD8F0 +/* 072D50 80072150 AFA00010 */ sw $zero, 0x10($sp) +/* 072D54 80072154 00401825 */ move $v1, $v0 +.L80072158: +/* 072D58 80072158 10400003 */ beqz $v0, .L80072168 +/* 072D5C 8007215C 02002825 */ move $a1, $s0 +/* 072D60 80072160 10000034 */ b .L80072234 +/* 072D64 80072164 00601025 */ move $v0, $v1 +.L80072168: +/* 072D68 80072168 8FA40058 */ lw $a0, 0x58($sp) +/* 072D6C 8007216C 24060400 */ li $a2, 1024 +/* 072D70 80072170 0C033728 */ jal func_800CDCA0 +/* 072D74 80072174 27A70030 */ addiu $a3, $sp, 0x30 +/* 072D78 80072178 10400004 */ beqz $v0, .L8007218C +/* 072D7C 8007217C 93AE004F */ lbu $t6, 0x4f($sp) +/* 072D80 80072180 1000002D */ b .L80072238 +/* 072D84 80072184 8FBF0024 */ lw $ra, 0x24($sp) +/* 072D88 80072188 93AE004F */ lbu $t6, 0x4f($sp) +.L8007218C: +/* 072D8C 8007218C 24010080 */ li $at, 128 +/* 072D90 80072190 11C10003 */ beq $t6, $at, .L800721A0 +/* 072D94 80072194 3C048012 */ lui $a0, %hi(D_80123FF0) # $a0, 0x8012 +/* 072D98 80072198 10000026 */ b .L80072234 +/* 072D9C 8007219C 2402000B */ li $v0, 11 +.L800721A0: +/* 072DA0 800721A0 3C038012 */ lui $v1, %hi(D_80123FD0) # $v1, 0x8012 +/* 072DA4 800721A4 3C058012 */ lui $a1, %hi(D_80123FF0) # $a1, 0x8012 +/* 072DA8 800721A8 24A53FF0 */ addiu $a1, %lo(D_80123FF0) # addiu $a1, $a1, 0x3ff0 +/* 072DAC 800721AC 24633FD0 */ addiu $v1, %lo(D_80123FD0) # addiu $v1, $v1, 0x3fd0 +/* 072DB0 800721B0 24843FF0 */ addiu $a0, %lo(D_80123FF0) # addiu $a0, $a0, 0x3ff0 +/* 072DB4 800721B4 24020001 */ li $v0, 1 +.L800721B8: +/* 072DB8 800721B8 24630004 */ addiu $v1, $v1, 4 +/* 072DBC 800721BC A0820001 */ sb $v0, 1($a0) +/* 072DC0 800721C0 A060FFFD */ sb $zero, -3($v1) +/* 072DC4 800721C4 A0820002 */ sb $v0, 2($a0) +/* 072DC8 800721C8 A060FFFE */ sb $zero, -2($v1) +/* 072DCC 800721CC A0820003 */ sb $v0, 3($a0) +/* 072DD0 800721D0 A060FFFF */ sb $zero, -1($v1) +/* 072DD4 800721D4 24840004 */ addiu $a0, $a0, 4 +/* 072DD8 800721D8 A082FFFC */ sb $v0, -4($a0) +/* 072DDC 800721DC 1465FFF6 */ bne $v1, $a1, .L800721B8 +/* 072DE0 800721E0 A060FFFC */ sb $zero, -4($v1) +/* 072DE4 800721E4 3C0F8012 */ lui $t7, %hi(D_80123ED0) # $t7, 0x8012 +/* 072DE8 800721E8 25EF3ED0 */ addiu $t7, %lo(D_80123ED0) # addiu $t7, $t7, 0x3ed0 +/* 072DEC 800721EC 3C068012 */ lui $a2, %hi(D_80123FF0) # $a2, 0x8012 +/* 072DF0 800721F0 00101180 */ sll $v0, $s0, 6 +/* 072DF4 800721F4 004F3821 */ addu $a3, $v0, $t7 +/* 072DF8 800721F8 AFA2002C */ sw $v0, 0x2c($sp) +/* 072DFC 800721FC 24C63FF0 */ addiu $a2, %lo(D_80123FF0) # addiu $a2, $a2, 0x3ff0 +/* 072E00 80072200 02002025 */ move $a0, $s0 +/* 072E04 80072204 0C01C7E0 */ jal func_80071F80 +/* 072E08 80072208 24050600 */ li $a1, 1536 +/* 072E0C 8007220C 8FA2002C */ lw $v0, 0x2c($sp) +/* 072E10 80072210 3C188012 */ lui $t8, %hi(D_80123DD0) # $t8, 0x8012 +/* 072E14 80072214 27183DD0 */ addiu $t8, %lo(D_80123DD0) # addiu $t8, $t8, 0x3dd0 +/* 072E18 80072218 3C068012 */ lui $a2, %hi(D_80123FD0) # $a2, 0x8012 +/* 072E1C 8007221C 24C63FD0 */ addiu $a2, %lo(D_80123FD0) # addiu $a2, $a2, 0x3fd0 +/* 072E20 80072220 02002025 */ move $a0, $s0 +/* 072E24 80072224 24050600 */ li $a1, 1536 +/* 072E28 80072228 0C01C7E0 */ jal func_80071F80 +/* 072E2C 8007222C 00583821 */ addu $a3, $v0, $t8 +/* 072E30 80072230 00001025 */ move $v0, $zero +.L80072234: +/* 072E34 80072234 8FBF0024 */ lw $ra, 0x24($sp) +.L80072238: +/* 072E38 80072238 8FB00020 */ lw $s0, 0x20($sp) +/* 072E3C 8007223C 03E00008 */ jr $ra +/* 072E40 80072240 27BD0058 */ addiu $sp, $sp, 0x58 + +/* 072E44 80072244 00000000 */ nop +/* 072E48 80072248 00000000 */ nop +/* 072E4C 8007224C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_072E50/func_80072250.s b/asm/non_matchings/unknown_072E50/func_80072250.s new file mode 100644 index 00000000..d87b923e --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80072250.s @@ -0,0 +1,22 @@ +glabel func_80072250 +/* 072E50 80072250 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 072E54 80072254 10800004 */ beqz $a0, .L80072268 +/* 072E58 80072258 AFBF0014 */ sw $ra, 0x14($sp) +/* 072E5C 8007225C 24010001 */ li $at, 1 +/* 072E60 80072260 14810007 */ bne $a0, $at, .L80072280 +/* 072E64 80072264 00000000 */ nop +.L80072268: +/* 072E68 80072268 0C003856 */ jal func_8000E158 +/* 072E6C 8007226C AFA40018 */ sw $a0, 0x18($sp) +/* 072E70 80072270 8FA40018 */ lw $a0, 0x18($sp) +/* 072E74 80072274 10400002 */ beqz $v0, .L80072280 +/* 072E78 80072278 240E0001 */ li $t6, 1 +/* 072E7C 8007227C 01C42023 */ subu $a0, $t6, $a0 +.L80072280: +/* 072E80 80072280 0C01A93E */ jal func_8006A4F8 +/* 072E84 80072284 00000000 */ nop +/* 072E88 80072288 8FBF0014 */ lw $ra, 0x14($sp) +/* 072E8C 8007228C 27BD0018 */ addiu $sp, $sp, 0x18 +/* 072E90 80072290 03E00008 */ jr $ra +/* 072E94 80072294 00000000 */ nop + diff --git a/asm/non_matchings/unknown_072E50/func_80072298.s b/asm/non_matchings/unknown_072E50/func_80072298.s new file mode 100644 index 00000000..3f9ee6fe --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80072298.s @@ -0,0 +1,52 @@ +glabel func_80072298 +/* 072E98 80072298 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 072E9C 8007229C 308E00FF */ andi $t6, $a0, 0xff +/* 072EA0 800722A0 3C018012 */ lui $at, %hi(D_801241E4) # $at, 0x8012 +/* 072EA4 800722A4 AFBF0014 */ sw $ra, 0x14($sp) +/* 072EA8 800722A8 AFA40018 */ sw $a0, 0x18($sp) +/* 072EAC 800722AC 11C00008 */ beqz $t6, .L800722D0 +/* 072EB0 800722B0 A02E41E4 */ sb $t6, %lo(D_801241E4)($at) +/* 072EB4 800722B4 240F0079 */ li $t7, 121 +/* 072EB8 800722B8 3C018012 */ lui $at, %hi(D_801241E8) # $at, 0x8012 +/* 072EBC 800722BC AC2F41E8 */ sw $t7, %lo(D_801241E8)($at) +/* 072EC0 800722C0 3C018012 */ lui $at, %hi(D_801241E6) # $at, 0x8012 +/* 072EC4 800722C4 2418000F */ li $t8, 15 +/* 072EC8 800722C8 10000003 */ b .L800722D8 +/* 072ECC 800722CC A03841E6 */ sb $t8, %lo(D_801241E6)($at) +.L800722D0: +/* 072ED0 800722D0 0C01C9C2 */ jal func_80072708 +/* 072ED4 800722D4 00000000 */ nop +.L800722D8: +/* 072ED8 800722D8 8FBF0014 */ lw $ra, 0x14($sp) +/* 072EDC 800722DC 27BD0018 */ addiu $sp, $sp, 0x18 +/* 072EE0 800722E0 03E00008 */ jr $ra +/* 072EE4 800722E4 00000000 */ nop + +/* 072EE8 800722E8 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 072EEC 800722EC 00047400 */ sll $t6, $a0, 0x10 +/* 072EF0 800722F0 000E7C03 */ sra $t7, $t6, 0x10 +/* 072EF4 800722F4 AFA40018 */ sw $a0, 0x18($sp) +/* 072EF8 800722F8 01E02025 */ move $a0, $t7 +/* 072EFC 800722FC 05E00004 */ bltz $t7, .L80072310 +/* 072F00 80072300 AFBF0014 */ sw $ra, 0x14($sp) +/* 072F04 80072304 29E10004 */ slti $at, $t7, 4 +/* 072F08 80072308 14200003 */ bnez $at, .L80072318 +/* 072F0C 8007230C 00000000 */ nop +.L80072310: +/* 072F10 80072310 10000009 */ b .L80072338 +/* 072F14 80072314 00001025 */ move $v0, $zero +.L80072318: +/* 072F18 80072318 0C01C894 */ jal func_80072250 +/* 072F1C 8007231C 00000000 */ nop +/* 072F20 80072320 3C188012 */ lui $t8, %hi(D_801241E5) # $t8, 0x8012 +/* 072F24 80072324 24190001 */ li $t9, 1 +/* 072F28 80072328 931841E5 */ lbu $t8, %lo(D_801241E5)($t8) +/* 072F2C 8007232C 00594004 */ sllv $t0, $t9, $v0 +/* 072F30 80072330 310900FF */ andi $t1, $t0, 0xff +/* 072F34 80072334 03091024 */ and $v0, $t8, $t1 +.L80072338: +/* 072F38 80072338 8FBF0014 */ lw $ra, 0x14($sp) +/* 072F3C 8007233C 27BD0018 */ addiu $sp, $sp, 0x18 +/* 072F40 80072340 03E00008 */ jr $ra +/* 072F44 80072344 00000000 */ nop + diff --git a/asm/non_matchings/unknown_072E50/func_80072348.s b/asm/non_matchings/unknown_072E50/func_80072348.s new file mode 100644 index 00000000..6bf6d196 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80072348.s @@ -0,0 +1,61 @@ +glabel func_80072348 +/* 072F48 80072348 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 072F4C 8007234C 00047400 */ sll $t6, $a0, 0x10 +/* 072F50 80072350 30B800FF */ andi $t8, $a1, 0xff +/* 072F54 80072354 000E7C03 */ sra $t7, $t6, 0x10 +/* 072F58 80072358 AFA40020 */ sw $a0, 0x20($sp) +/* 072F5C 8007235C 2B010013 */ slti $at, $t8, 0x13 +/* 072F60 80072360 01E02025 */ move $a0, $t7 +/* 072F64 80072364 AFBF0014 */ sw $ra, 0x14($sp) +/* 072F68 80072368 1020002A */ beqz $at, .L80072414 +/* 072F6C 8007236C AFA50024 */ sw $a1, 0x24($sp) +/* 072F70 80072370 05E00028 */ bltz $t7, .L80072414 +/* 072F74 80072374 29E10004 */ slti $at, $t7, 4 +/* 072F78 80072378 10200027 */ beqz $at, .L80072418 +/* 072F7C 8007237C 8FBF0014 */ lw $ra, 0x14($sp) +/* 072F80 80072380 A7AF0022 */ sh $t7, 0x22($sp) +/* 072F84 80072384 0C01C894 */ jal func_80072250 +/* 072F88 80072388 AFB80018 */ sw $t8, 0x18($sp) +/* 072F8C 8007238C 3059FFFF */ andi $t9, $v0, 0xffff +/* 072F90 80072390 00194080 */ sll $t0, $t9, 2 +/* 072F94 80072394 01194021 */ addu $t0, $t0, $t9 +/* 072F98 80072398 3C098012 */ lui $t1, %hi(D_801241B8) # $t1, 0x8012 +/* 072F9C 8007239C 252941B8 */ addiu $t1, %lo(D_801241B8) # addiu $t1, $t1, 0x41b8 +/* 072FA0 800723A0 00084040 */ sll $t0, $t0, 1 +/* 072FA4 800723A4 01091821 */ addu $v1, $t0, $t1 +/* 072FA8 800723A8 8FA60018 */ lw $a2, 0x18($sp) +/* 072FAC 800723AC 846A0000 */ lh $t2, ($v1) +/* 072FB0 800723B0 87A40022 */ lh $a0, 0x22($sp) +/* 072FB4 800723B4 14CA000C */ bne $a2, $t2, .L800723E8 +/* 072FB8 800723B8 3C088012 */ lui $t0, %hi(D_801241E0) # $t0, 0x8012 +/* 072FBC 800723BC 846B0008 */ lh $t3, 8($v1) +/* 072FC0 800723C0 240CFED4 */ li $t4, -300 +/* 072FC4 800723C4 05610002 */ bgez $t3, .L800723D0 +/* 072FC8 800723C8 3C0D8012 */ lui $t5, %hi(D_801241E0) # $t5, 0x8012 +/* 072FCC 800723CC A46C0008 */ sh $t4, 8($v1) +.L800723D0: +/* 072FD0 800723D0 8DAD41E0 */ lw $t5, %lo(D_801241E0)($t5) +/* 072FD4 800723D4 00067880 */ sll $t7, $a2, 2 +/* 072FD8 800723D8 01AFC021 */ addu $t8, $t5, $t7 +/* 072FDC 800723DC 87190002 */ lh $t9, 2($t8) +/* 072FE0 800723E0 1000000C */ b .L80072414 +/* 072FE4 800723E4 A4790004 */ sh $t9, 4($v1) +.L800723E8: +/* 072FE8 800723E8 A4660000 */ sh $a2, ($v1) +/* 072FEC 800723EC 8D0841E0 */ lw $t0, %lo(D_801241E0)($t0) +/* 072FF0 800723F0 00065080 */ sll $t2, $a2, 2 +/* 072FF4 800723F4 010A1021 */ addu $v0, $t0, $t2 +/* 072FF8 800723F8 84450000 */ lh $a1, ($v0) +/* 072FFC 800723FC 00000000 */ nop +/* 073000 80072400 10A00005 */ beqz $a1, .L80072418 +/* 073004 80072404 8FBF0014 */ lw $ra, 0x14($sp) +/* 073008 80072408 84460002 */ lh $a2, 2($v0) +/* 07300C 8007240C 0C01C95E */ jal func_80072578 +/* 073010 80072410 00000000 */ nop +.L80072414: +/* 073014 80072414 8FBF0014 */ lw $ra, 0x14($sp) +.L80072418: +/* 073018 80072418 27BD0020 */ addiu $sp, $sp, 0x20 +/* 07301C 8007241C 03E00008 */ jr $ra +/* 073020 80072420 00000000 */ nop + diff --git a/asm/non_matchings/unknown_072E50/func_80072424.s b/asm/non_matchings/unknown_072E50/func_80072424.s new file mode 100644 index 00000000..0f57e167 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80072424.s @@ -0,0 +1,93 @@ +glabel func_80072424 +/* 073024 80072424 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 073028 80072428 00047400 */ sll $t6, $a0, 0x10 +/* 07302C 8007242C 30B800FF */ andi $t8, $a1, 0xff +/* 073030 80072430 000E7C03 */ sra $t7, $t6, 0x10 +/* 073034 80072434 AFA40020 */ sw $a0, 0x20($sp) +/* 073038 80072438 44866000 */ mtc1 $a2, $f12 +/* 07303C 8007243C 2B010013 */ slti $at, $t8, 0x13 +/* 073040 80072440 01E02025 */ move $a0, $t7 +/* 073044 80072444 AFBF0014 */ sw $ra, 0x14($sp) +/* 073048 80072448 10200047 */ beqz $at, .L80072568 +/* 07304C 8007244C AFA50024 */ sw $a1, 0x24($sp) +/* 073050 80072450 05E00045 */ bltz $t7, .L80072568 +/* 073054 80072454 29E10004 */ slti $at, $t7, 4 +/* 073058 80072458 10200044 */ beqz $at, .L8007256C +/* 07305C 8007245C 8FBF0014 */ lw $ra, 0x14($sp) +/* 073060 80072460 A7AF0022 */ sh $t7, 0x22($sp) +/* 073064 80072464 AFB80018 */ sw $t8, 0x18($sp) +/* 073068 80072468 0C01C894 */ jal func_80072250 +/* 07306C 8007246C E7AC0028 */ swc1 $f12, 0x28($sp) +/* 073070 80072470 3059FFFF */ andi $t9, $v0, 0xffff +/* 073074 80072474 00194080 */ sll $t0, $t9, 2 +/* 073078 80072478 01194021 */ addu $t0, $t0, $t9 +/* 07307C 8007247C 3C098012 */ lui $t1, %hi(D_801241B8) # $t1, 0x8012 +/* 073080 80072480 252941B8 */ addiu $t1, %lo(D_801241B8) # addiu $t1, $t1, 0x41b8 +/* 073084 80072484 00084040 */ sll $t0, $t0, 1 +/* 073088 80072488 01091821 */ addu $v1, $t0, $t1 +/* 07308C 8007248C 8FA60018 */ lw $a2, 0x18($sp) +/* 073090 80072490 846A0000 */ lh $t2, ($v1) +/* 073094 80072494 87A40022 */ lh $a0, 0x22($sp) +/* 073098 80072498 C7AC0028 */ lwc1 $f12, 0x28($sp) +/* 07309C 8007249C 14CA000C */ bne $a2, $t2, .L800724D0 +/* 0730A0 800724A0 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0730A4 800724A4 846B0008 */ lh $t3, 8($v1) +/* 0730A8 800724A8 240CFED4 */ li $t4, -300 +/* 0730AC 800724AC 05610002 */ bgez $t3, .L800724B8 +/* 0730B0 800724B0 3C0D8012 */ lui $t5, %hi(D_801241E0) # $t5, 0x8012 +/* 0730B4 800724B4 A46C0008 */ sh $t4, 8($v1) +.L800724B8: +/* 0730B8 800724B8 8DAD41E0 */ lw $t5, %lo(D_801241E0)($t5) +/* 0730BC 800724BC 00067880 */ sll $t7, $a2, 2 +/* 0730C0 800724C0 01AFC021 */ addu $t8, $t5, $t7 +/* 0730C4 800724C4 87190002 */ lh $t9, 2($t8) +/* 0730C8 800724C8 10000027 */ b .L80072568 +/* 0730CC 800724CC A4790004 */ sh $t9, 4($v1) +.L800724D0: +/* 0730D0 800724D0 44800000 */ mtc1 $zero, $f0 +/* 0730D4 800724D4 3C088012 */ lui $t0, %hi(D_801241E0) # $t0, 0x8012 +/* 0730D8 800724D8 4600603C */ c.lt.s $f12, $f0 +/* 0730DC 800724DC 00000000 */ nop +/* 0730E0 800724E0 45000002 */ bc1f .L800724EC +/* 0730E4 800724E4 00000000 */ nop +/* 0730E8 800724E8 46000306 */ mov.s $f12, $f0 +.L800724EC: +/* 0730EC 800724EC 44810000 */ mtc1 $at, $f0 +/* 0730F0 800724F0 00000000 */ nop +/* 0730F4 800724F4 460C003C */ c.lt.s $f0, $f12 +/* 0730F8 800724F8 00000000 */ nop +/* 0730FC 800724FC 45000002 */ bc1f .L80072508 +/* 073100 80072500 00000000 */ nop +/* 073104 80072504 46000306 */ mov.s $f12, $f0 +.L80072508: +/* 073108 80072508 A4660000 */ sh $a2, ($v1) +/* 07310C 8007250C 8D0841E0 */ lw $t0, %lo(D_801241E0)($t0) +/* 073110 80072510 00065080 */ sll $t2, $a2, 2 +/* 073114 80072514 010A1021 */ addu $v0, $t0, $t2 +/* 073118 80072518 84470000 */ lh $a3, ($v0) +/* 07311C 8007251C 00000000 */ nop +/* 073120 80072520 10E00012 */ beqz $a3, .L8007256C +/* 073124 80072524 8FBF0014 */ lw $ra, 0x14($sp) +/* 073128 80072528 44872000 */ mtc1 $a3, $f4 +/* 07312C 8007252C 84460002 */ lh $a2, 2($v0) +/* 073130 80072530 468021A0 */ cvt.s.w $f6, $f4 +/* 073134 80072534 460C3202 */ mul.s $f8, $f6, $f12 +/* 073138 80072538 444BF800 */ cfc1 $t3, $31 +/* 07313C 8007253C 00000000 */ nop +/* 073140 80072540 35610003 */ ori $at, $t3, 3 +/* 073144 80072544 38210002 */ xori $at, $at, 2 +/* 073148 80072548 44C1F800 */ ctc1 $at, $31 +/* 07314C 8007254C 00000000 */ nop +/* 073150 80072550 460042A4 */ cvt.w.s $f10, $f8 +/* 073154 80072554 44055000 */ mfc1 $a1, $f10 +/* 073158 80072558 44CBF800 */ ctc1 $t3, $31 +/* 07315C 8007255C 00056400 */ sll $t4, $a1, 0x10 +/* 073160 80072560 0C01C95E */ jal func_80072578 +/* 073164 80072564 000C2C03 */ sra $a1, $t4, 0x10 +.L80072568: +/* 073168 80072568 8FBF0014 */ lw $ra, 0x14($sp) +.L8007256C: +/* 07316C 8007256C 27BD0020 */ addiu $sp, $sp, 0x20 +/* 073170 80072570 03E00008 */ jr $ra +/* 073174 80072574 00000000 */ nop + diff --git a/asm/non_matchings/unknown_072E50/func_80072578.s b/asm/non_matchings/unknown_072E50/func_80072578.s new file mode 100644 index 00000000..463e240b --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80072578.s @@ -0,0 +1,107 @@ +glabel func_80072578 +/* 073178 80072578 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 07317C 8007257C 3C198012 */ lui $t9, %hi(D_801241E4) # $t9, 0x8012 +/* 073180 80072580 933941E4 */ lbu $t9, %lo(D_801241E4)($t9) +/* 073184 80072584 00047400 */ sll $t6, $a0, 0x10 +/* 073188 80072588 000E7C03 */ sra $t7, $t6, 0x10 +/* 07318C 8007258C AFA40018 */ sw $a0, 0x18($sp) +/* 073190 80072590 00053C00 */ sll $a3, $a1, 0x10 +/* 073194 80072594 0007C403 */ sra $t8, $a3, 0x10 +/* 073198 80072598 01E02025 */ move $a0, $t7 +/* 07319C 8007259C AFBF0014 */ sw $ra, 0x14($sp) +/* 0731A0 800725A0 AFA5001C */ sw $a1, 0x1c($sp) +/* 0731A4 800725A4 13200031 */ beqz $t9, .L8007266C +/* 0731A8 800725A8 AFA60020 */ sw $a2, 0x20($sp) +/* 0731AC 800725AC 05E0002F */ bltz $t7, .L8007266C +/* 0731B0 800725B0 29E10004 */ slti $at, $t7, 4 +/* 0731B4 800725B4 1020002E */ beqz $at, .L80072670 +/* 0731B8 800725B8 8FBF0014 */ lw $ra, 0x14($sp) +/* 0731BC 800725BC 0C01C894 */ jal func_80072250 +/* 0731C0 800725C0 A7B8001E */ sh $t8, 0x1e($sp) +/* 0731C4 800725C4 87A7001E */ lh $a3, 0x1e($sp) +/* 0731C8 800725C8 3C088012 */ lui $t0, %hi(D_801241E6) # $t0, 0x8012 +/* 0731CC 800725CC 00E70019 */ multu $a3, $a3 +/* 0731D0 800725D0 00022400 */ sll $a0, $v0, 0x10 +/* 0731D4 800725D4 250841E6 */ addiu $t0, %lo(D_801241E6) # addiu $t0, $t0, 0x41e6 +/* 0731D8 800725D8 00045403 */ sra $t2, $a0, 0x10 +/* 0731DC 800725DC 240B0001 */ li $t3, 1 +/* 0731E0 800725E0 910D0000 */ lbu $t5, ($t0) +/* 0731E4 800725E4 3C098012 */ lui $t1, %hi(D_801241E7) # $t1, 0x8012 +/* 0731E8 800725E8 014B6004 */ sllv $t4, $t3, $t2 +/* 0731EC 800725EC 252941E7 */ addiu $t1, %lo(D_801241E7) # addiu $t1, $t1, 0x41e7 +/* 0731F0 800725F0 912F0000 */ lbu $t7, ($t1) +/* 0731F4 800725F4 0180C027 */ not $t8, $t4 +/* 0731F8 800725F8 01AC7025 */ or $t6, $t5, $t4 +/* 0731FC 800725FC 00006012 */ mflo $t4 +/* 073200 80072600 448C2000 */ mtc1 $t4, $f4 +/* 073204 80072604 01F8C824 */ and $t9, $t7, $t8 +/* 073208 80072608 A10E0000 */ sb $t6, ($t0) +/* 07320C 8007260C A1390000 */ sb $t9, ($t1) +/* 073210 80072610 3C01800E */ lui $at, %hi(D_800E77E4) # $at, 0x800e +/* 073214 80072614 468021A1 */ cvt.d.w $f6, $f4 +/* 073218 80072618 C42977E0 */ lwc1 $f9, %lo(D_800E77E0)($at) +/* 07321C 8007261C C42877E4 */ lwc1 $f8, %lo(D_800E77E4)($at) +/* 073220 80072620 01402025 */ move $a0, $t2 +/* 073224 80072624 46283282 */ mul.d $f10, $f6, $f8 +/* 073228 80072628 000A5080 */ sll $t2, $t2, 2 +/* 07322C 8007262C 01445021 */ addu $t2, $t2, $a0 +/* 073230 80072630 3C0B8012 */ lui $t3, %hi(D_801241B8) # $t3, 0x8012 +/* 073234 80072634 256B41B8 */ addiu $t3, %lo(D_801241B8) # addiu $t3, $t3, 0x41b8 +/* 073238 80072638 444DF800 */ cfc1 $t5, $31 +/* 07323C 8007263C 000A5040 */ sll $t2, $t2, 1 +/* 073240 80072640 35A10003 */ ori $at, $t5, 3 +/* 073244 80072644 38210002 */ xori $at, $at, 2 +/* 073248 80072648 44C1F800 */ ctc1 $at, $31 +/* 07324C 8007264C 014B1821 */ addu $v1, $t2, $t3 +/* 073250 80072650 46205424 */ cvt.w.d $f16, $f10 +/* 073254 80072654 87AE0022 */ lh $t6, 0x22($sp) +/* 073258 80072658 44068000 */ mfc1 $a2, $f16 +/* 07325C 8007265C 44CDF800 */ ctc1 $t5, $31 +/* 073260 80072660 A46E0004 */ sh $t6, 4($v1) +/* 073264 80072664 A4660006 */ sh $a2, 6($v1) +/* 073268 80072668 A4660002 */ sh $a2, 2($v1) +.L8007266C: +/* 07326C 8007266C 8FBF0014 */ lw $ra, 0x14($sp) +.L80072670: +/* 073270 80072670 27BD0018 */ addiu $sp, $sp, 0x18 +/* 073274 80072674 03E00008 */ jr $ra +/* 073278 80072678 00000000 */ nop + +/* 07327C 8007267C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 073280 80072680 00047400 */ sll $t6, $a0, 0x10 +/* 073284 80072684 000E7C03 */ sra $t7, $t6, 0x10 +/* 073288 80072688 AFA40018 */ sw $a0, 0x18($sp) +/* 07328C 8007268C 01E02025 */ move $a0, $t7 +/* 073290 80072690 05E00019 */ bltz $t7, .L800726F8 +/* 073294 80072694 AFBF0014 */ sw $ra, 0x14($sp) +/* 073298 80072698 29E10004 */ slti $at, $t7, 4 +/* 07329C 8007269C 10200017 */ beqz $at, .L800726FC +/* 0732A0 800726A0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0732A4 800726A4 0C01C894 */ jal func_80072250 +/* 0732A8 800726A8 00000000 */ nop +/* 0732AC 800726AC 00022400 */ sll $a0, $v0, 0x10 +/* 0732B0 800726B0 0004C403 */ sra $t8, $a0, 0x10 +/* 0732B4 800726B4 00185880 */ sll $t3, $t8, 2 +/* 0732B8 800726B8 3C058012 */ lui $a1, %hi(D_801241E7) # $a1, 0x8012 +/* 0732BC 800726BC 01785821 */ addu $t3, $t3, $t8 +/* 0732C0 800726C0 3C0C8012 */ lui $t4, %hi(D_801241B8) # $t4, 0x8012 +/* 0732C4 800726C4 24A541E7 */ addiu $a1, %lo(D_801241E7) # addiu $a1, $a1, 0x41e7 +/* 0732C8 800726C8 258C41B8 */ addiu $t4, %lo(D_801241B8) # addiu $t4, $t4, 0x41b8 +/* 0732CC 800726CC 000B5840 */ sll $t3, $t3, 1 +/* 0732D0 800726D0 90B90000 */ lbu $t9, ($a1) +/* 0732D4 800726D4 24080001 */ li $t0, 1 +/* 0732D8 800726D8 016C1821 */ addu $v1, $t3, $t4 +/* 0732DC 800726DC 2406FFFF */ li $a2, -1 +/* 0732E0 800726E0 03084804 */ sllv $t1, $t0, $t8 +/* 0732E4 800726E4 03295025 */ or $t2, $t9, $t1 +/* 0732E8 800726E8 A0AA0000 */ sb $t2, ($a1) +/* 0732EC 800726EC A4660004 */ sh $a2, 4($v1) +/* 0732F0 800726F0 A4660000 */ sh $a2, ($v1) +/* 0732F4 800726F4 A4600008 */ sh $zero, 8($v1) +.L800726F8: +/* 0732F8 800726F8 8FBF0014 */ lw $ra, 0x14($sp) +.L800726FC: +/* 0732FC 800726FC 27BD0018 */ addiu $sp, $sp, 0x18 +/* 073300 80072700 03E00008 */ jr $ra +/* 073304 80072704 00000000 */ nop + diff --git a/asm/non_matchings/unknown_072E50/func_80072708.s b/asm/non_matchings/unknown_072E50/func_80072708.s new file mode 100644 index 00000000..4dbbcd4d --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80072708.s @@ -0,0 +1,6 @@ +glabel func_80072708 +/* 073308 80072708 240E0003 */ li $t6, 3 +/* 07330C 8007270C 3C01800E */ lui $at, 0x800e +/* 073310 80072710 03E00008 */ jr $ra +/* 073314 80072714 AC2EE48C */ sw $t6, -0x1b74($at) + diff --git a/asm/non_matchings/unknown_072E50/func_80072718.s b/asm/non_matchings/unknown_072E50/func_80072718.s new file mode 100644 index 00000000..c4eefdac --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80072718.s @@ -0,0 +1,362 @@ +glabel func_80072718 +/* 073318 80072718 27BDFF88 */ addiu $sp, $sp, -0x78 +/* 07331C 8007271C AFBE0048 */ sw $fp, 0x48($sp) +/* 073320 80072720 3C1E8012 */ lui $fp, %hi(D_801241E6) # $fp, 0x8012 +/* 073324 80072724 27DE41E6 */ addiu $fp, %lo(D_801241E6) # addiu $fp, $fp, 0x41e6 +/* 073328 80072728 93CE0000 */ lbu $t6, ($fp) +/* 07332C 8007272C AFBF004C */ sw $ra, 0x4c($sp) +/* 073330 80072730 AFB70044 */ sw $s7, 0x44($sp) +/* 073334 80072734 AFB60040 */ sw $s6, 0x40($sp) +/* 073338 80072738 AFB5003C */ sw $s5, 0x3c($sp) +/* 07333C 8007273C AFB40038 */ sw $s4, 0x38($sp) +/* 073340 80072740 AFB30034 */ sw $s3, 0x34($sp) +/* 073344 80072744 AFB20030 */ sw $s2, 0x30($sp) +/* 073348 80072748 AFB1002C */ sw $s1, 0x2c($sp) +/* 07334C 8007274C AFB00028 */ sw $s0, 0x28($sp) +/* 073350 80072750 E7B70020 */ swc1 $f23, 0x20($sp) +/* 073354 80072754 E7B60024 */ swc1 $f22, 0x24($sp) +/* 073358 80072758 E7B50018 */ swc1 $f21, 0x18($sp) +/* 07335C 8007275C E7B4001C */ swc1 $f20, 0x1c($sp) +/* 073360 80072760 15C00005 */ bnez $t6, .L80072778 +/* 073364 80072764 AFA40078 */ sw $a0, 0x78($sp) +/* 073368 80072768 3C0F800E */ lui $t7, %hi(D_800DE48C) # $t7, 0x800e +/* 07336C 8007276C 8DEFE48C */ lw $t7, %lo(D_800DE48C)($t7) +/* 073370 80072770 00000000 */ nop +/* 073374 80072774 11E00127 */ beqz $t7, .L80072C14 +.L80072778: +/* 073378 80072778 3C028012 */ lui $v0, %hi(D_801241E8) # $v0, 0x8012 +/* 07337C 8007277C 244241E8 */ addiu $v0, %lo(D_801241E8) # addiu $v0, $v0, 0x41e8 +/* 073380 80072780 8C580000 */ lw $t8, ($v0) +/* 073384 80072784 8FB90078 */ lw $t9, 0x78($sp) +/* 073388 80072788 3C048012 */ lui $a0, %hi(D_80124010) # $a0, 0x8012 +/* 07338C 8007278C 03194021 */ addu $t0, $t8, $t9 +/* 073390 80072790 29010079 */ slti $at, $t0, 0x79 +/* 073394 80072794 1420003B */ bnez $at, .L80072884 +/* 073398 80072798 AC480000 */ sw $t0, ($v0) +/* 07339C 8007279C AC400000 */ sw $zero, ($v0) +/* 0733A0 800727A0 8C844010 */ lw $a0, %lo(D_80124010)($a0) +/* 0733A4 800727A4 0C0334A4 */ jal func_800CD290 +/* 0733A8 800727A8 27A5006D */ addiu $a1, $sp, 0x6d +/* 0733AC 800727AC 3C168012 */ lui $s6, %hi(D_80124018) # $s6, 0x8012 +/* 0733B0 800727B0 3C148012 */ lui $s4, %hi(D_801241E7) # $s4, 0x8012 +/* 0733B4 800727B4 269441E7 */ addiu $s4, %lo(D_801241E7) # addiu $s4, $s4, 0x41e7 +/* 0733B8 800727B8 26D64018 */ addiu $s6, %lo(D_80124018) # addiu $s6, $s6, 0x4018 +/* 0733BC 800727BC 00009825 */ move $s3, $zero +/* 0733C0 800727C0 24030001 */ li $v1, 1 +/* 0733C4 800727C4 24170068 */ li $s7, 104 +.L800727C8: +/* 0733C8 800727C8 93AA006D */ lbu $t2, 0x6d($sp) +/* 0733CC 800727CC 00608825 */ move $s1, $v1 +/* 0733D0 800727D0 01435824 */ and $t3, $t2, $v1 +/* 0733D4 800727D4 11600023 */ beqz $t3, .L80072864 +/* 0733D8 800727D8 3C0E8012 */ lui $t6, %hi(D_801241E5) # $t6, 0x8012 +/* 0733DC 800727DC 93CC0000 */ lbu $t4, ($fp) +/* 0733E0 800727E0 91CE41E5 */ lbu $t6, %lo(D_801241E5)($t6) +/* 0733E4 800727E4 01806827 */ not $t5, $t4 +/* 0733E8 800727E8 01AE7824 */ and $t7, $t5, $t6 +/* 0733EC 800727EC 01E3C024 */ and $t8, $t7, $v1 +/* 0733F0 800727F0 1700001C */ bnez $t8, .L80072864 +/* 0733F4 800727F4 00000000 */ nop +/* 0733F8 800727F8 02770019 */ multu $s3, $s7 +/* 0733FC 800727FC 3C048012 */ lui $a0, %hi(D_80124010) # $a0, 0x8012 +/* 073400 80072800 8C844010 */ lw $a0, %lo(D_80124010)($a0) +/* 073404 80072804 02603025 */ move $a2, $s3 +/* 073408 80072808 0000C812 */ mflo $t9 +/* 07340C 8007280C 02D92821 */ addu $a1, $s6, $t9 +/* 073410 80072810 0C01C837 */ jal func_800720DC +/* 073414 80072814 00000000 */ nop +/* 073418 80072818 1040000E */ beqz $v0, .L80072854 +/* 07341C 8007281C 3C0E8012 */ lui $t6, %hi(D_801241E5) # $t6, 0x8012 +/* 073420 80072820 93C80000 */ lbu $t0, ($fp) +/* 073424 80072824 928A0000 */ lbu $t2, ($s4) +/* 073428 80072828 02201027 */ not $v0, $s1 +/* 07342C 8007282C 01024824 */ and $t1, $t0, $v0 +/* 073430 80072830 01425824 */ and $t3, $t2, $v0 +/* 073434 80072834 A3C90000 */ sb $t1, ($fp) +/* 073438 80072838 A28B0000 */ sb $t3, ($s4) +/* 07343C 8007283C 3C0C8012 */ lui $t4, %hi(D_801241E5) # $t4, 0x8012 +/* 073440 80072840 918C41E5 */ lbu $t4, %lo(D_801241E5)($t4) +/* 073444 80072844 3C018012 */ lui $at, %hi(D_801241E5) # $at, 0x8012 +/* 073448 80072848 01826824 */ and $t5, $t4, $v0 +/* 07344C 8007284C 10000005 */ b .L80072864 +/* 073450 80072850 A02D41E5 */ sb $t5, %lo(D_801241E5)($at) +.L80072854: +/* 073454 80072854 91CE41E5 */ lbu $t6, %lo(D_801241E5)($t6) +/* 073458 80072858 3C018012 */ lui $at, %hi(D_801241E5) # $at, 0x8012 +/* 07345C 8007285C 01D17825 */ or $t7, $t6, $s1 +/* 073460 80072860 A02F41E5 */ sb $t7, %lo(D_801241E5)($at) +.L80072864: +/* 073464 80072864 26730001 */ addiu $s3, $s3, 1 +/* 073468 80072868 327800FF */ andi $t8, $s3, 0xff +/* 07346C 8007286C 00111840 */ sll $v1, $s1, 1 +/* 073470 80072870 307900FF */ andi $t9, $v1, 0xff +/* 073474 80072874 2B010004 */ slti $at, $t8, 4 +/* 073478 80072878 03201825 */ move $v1, $t9 +/* 07347C 8007287C 1420FFD2 */ bnez $at, .L800727C8 +/* 073480 80072880 03009825 */ move $s3, $t8 +.L80072884: +/* 073484 80072884 3C088012 */ lui $t0, %hi(D_801241E5) # $t0, 0x8012 +/* 073488 80072888 910841E5 */ lbu $t0, %lo(D_801241E5)($t0) +/* 07348C 8007288C 3C04800E */ lui $a0, %hi(D_800DE48C) # $a0, 0x800e +/* 073490 80072890 3C148012 */ lui $s4, %hi(D_801241E7) # $s4, 0x8012 +/* 073494 80072894 3C168012 */ lui $s6, %hi(D_80124018) # $s6, 0x8012 +/* 073498 80072898 8C84E48C */ lw $a0, %lo(D_800DE48C)($a0) +/* 07349C 8007289C 26D64018 */ addiu $s6, %lo(D_80124018) # addiu $s6, $s6, 0x4018 +/* 0734A0 800728A0 269441E7 */ addiu $s4, %lo(D_801241E7) # addiu $s4, $s4, 0x41e7 +/* 0734A4 800728A4 15000003 */ bnez $t0, .L800728B4 +/* 0734A8 800728A8 24170068 */ li $s7, 104 +/* 0734AC 800728AC 108000DA */ beqz $a0, .L80072C18 +/* 0734B0 800728B0 8FBF004C */ lw $ra, 0x4c($sp) +.L800728B4: +/* 0734B4 800728B4 10800008 */ beqz $a0, .L800728D8 +/* 0734B8 800728B8 0000A825 */ move $s5, $zero +/* 0734BC 800728BC 3C048012 */ lui $a0, %hi(D_80124010) # $a0, 0x8012 +/* 0734C0 800728C0 8C844010 */ lw $a0, %lo(D_80124010)($a0) +/* 0734C4 800728C4 0C0334A4 */ jal func_800CD290 +/* 0734C8 800728C8 27A5006D */ addiu $a1, $sp, 0x6d +/* 0734CC 800728CC 3C04800E */ lui $a0, %hi(D_800DE48C) # $a0, 0x800e +/* 0734D0 800728D0 8C84E48C */ lw $a0, %lo(D_800DE48C)($a0) +/* 0734D4 800728D4 00000000 */ nop +.L800728D8: +/* 0734D8 800728D8 3C01800E */ lui $at, %hi(D_800E77EC) # $at, 0x800e +/* 0734DC 800728DC C43777E8 */ lwc1 $f23, %lo(D_800E77E8)($at) +/* 0734E0 800728E0 C43677EC */ lwc1 $f22, %lo(D_800E77EC)($at) +/* 0734E4 800728E4 3C01800E */ lui $at, %hi(D_800E77F4) # $at, 0x800e +/* 0734E8 800728E8 3C108012 */ lui $s0, %hi(D_801241B8) # $s0, 0x8012 +/* 0734EC 800728EC C43577F0 */ lwc1 $f21, %lo(D_800E77F0)($at) +/* 0734F0 800728F0 C43477F4 */ lwc1 $f20, %lo(D_800E77F4)($at) +/* 0734F4 800728F4 261041B8 */ addiu $s0, %lo(D_801241B8) # addiu $s0, $s0, 0x41b8 +/* 0734F8 800728F8 00009825 */ move $s3, $zero +/* 0734FC 800728FC 24030001 */ li $v1, 1 +.L80072900: +/* 073500 80072900 1080001F */ beqz $a0, .L80072980 +/* 073504 80072904 3C0D8012 */ lui $t5, %hi(D_801241E5) # $t5, 0x8012 +/* 073508 80072908 2409FFFF */ li $t1, -1 +/* 07350C 8007290C A6090004 */ sh $t1, 4($s0) +/* 073510 80072910 86020004 */ lh $v0, 4($s0) +/* 073514 80072914 00608825 */ move $s1, $v1 +/* 073518 80072918 A6020006 */ sh $v0, 6($s0) +/* 07351C 8007291C A6020000 */ sh $v0, ($s0) +/* 073520 80072920 93AA006D */ lbu $t2, 0x6d($sp) +/* 073524 80072924 3C04800E */ lui $a0, %hi(D_800DE48C) # $a0, 0x800e +/* 073528 80072928 01435824 */ and $t3, $t2, $v1 +/* 07352C 8007292C 15600004 */ bnez $t3, .L80072940 +/* 073530 80072930 00000000 */ nop +/* 073534 80072934 8C84E48C */ lw $a0, %lo(D_800DE48C)($a0) +/* 073538 80072938 100000A7 */ b .L80072BD8 +/* 07353C 8007293C 26730001 */ addiu $s3, $s3, 1 +.L80072940: +/* 073540 80072940 02770019 */ multu $s3, $s7 +/* 073544 80072944 3C048012 */ lui $a0, %hi(D_80124010) # $a0, 0x8012 +/* 073548 80072948 8C844010 */ lw $a0, %lo(D_80124010)($a0) +/* 07354C 8007294C 02603025 */ move $a2, $s3 +/* 073550 80072950 00006012 */ mflo $t4 +/* 073554 80072954 02CC9021 */ addu $s2, $s6, $t4 +/* 073558 80072958 0C01C837 */ jal func_800720DC +/* 07355C 8007295C 02402825 */ move $a1, $s2 +/* 073560 80072960 14400003 */ bnez $v0, .L80072970 +/* 073564 80072964 00000000 */ nop +/* 073568 80072968 0C01C74C */ jal func_80071D30 +/* 07356C 8007296C 02402025 */ move $a0, $s2 +.L80072970: +/* 073570 80072970 3C04800E */ lui $a0, %hi(D_800DE48C) # $a0, 0x800e +/* 073574 80072974 8C84E48C */ lw $a0, %lo(D_800DE48C)($a0) +/* 073578 80072978 10000097 */ b .L80072BD8 +/* 07357C 8007297C 26730001 */ addiu $s3, $s3, 1 +.L80072980: +/* 073580 80072980 93C20000 */ lbu $v0, ($fp) +/* 073584 80072984 91AD41E5 */ lbu $t5, %lo(D_801241E5)($t5) +/* 073588 80072988 00608825 */ move $s1, $v1 +/* 07358C 8007298C 004D7024 */ and $t6, $v0, $t5 +/* 073590 80072990 01C37824 */ and $t7, $t6, $v1 +/* 073594 80072994 11E0008F */ beqz $t7, .L80072BD4 +/* 073598 80072998 00000000 */ nop +/* 07359C 8007299C 86030004 */ lh $v1, 4($s0) +/* 0735A0 800729A0 8FAA0078 */ lw $t2, 0x78($sp) +/* 0735A4 800729A4 1C600010 */ bgtz $v1, .L800729E8 +/* 0735A8 800729A8 006A5823 */ subu $t3, $v1, $t2 +/* 0735AC 800729AC 02770019 */ multu $s3, $s7 +/* 0735B0 800729B0 0220C027 */ not $t8, $s1 +/* 0735B4 800729B4 0058C824 */ and $t9, $v0, $t8 +/* 0735B8 800729B8 A3D90000 */ sb $t9, ($fp) +/* 0735BC 800729BC 2408FFFF */ li $t0, -1 +/* 0735C0 800729C0 A6080000 */ sh $t0, ($s0) +/* 0735C4 800729C4 A6000008 */ sh $zero, 8($s0) +/* 0735C8 800729C8 00004812 */ mflo $t1 +/* 0735CC 800729CC 02C92021 */ addu $a0, $s6, $t1 +/* 0735D0 800729D0 0C01C74C */ jal func_80071D30 +/* 0735D4 800729D4 00000000 */ nop +/* 0735D8 800729D8 3C04800E */ lui $a0, %hi(D_800DE48C) # $a0, 0x800e +/* 0735DC 800729DC 8C84E48C */ lw $a0, %lo(D_800DE48C)($a0) +/* 0735E0 800729E0 1000007D */ b .L80072BD8 +/* 0735E4 800729E4 26730001 */ addiu $s3, $s3, 1 +.L800729E8: +/* 0735E8 800729E8 A60B0004 */ sh $t3, 4($s0) +/* 0735EC 800729EC 8FAD0078 */ lw $t5, 0x78($sp) +/* 0735F0 800729F0 860C0008 */ lh $t4, 8($s0) +/* 0735F4 800729F4 3C04800E */ lui $a0, %hi(D_800DE48C) # $a0, 0x800e +/* 0735F8 800729F8 018D7021 */ addu $t6, $t4, $t5 +/* 0735FC 800729FC A60E0008 */ sh $t6, 8($s0) +/* 073600 80072A00 86020008 */ lh $v0, 8($s0) +/* 073604 80072A04 00000000 */ nop +/* 073608 80072A08 04410004 */ bgez $v0, .L80072A1C +/* 07360C 80072A0C 28410259 */ slti $at, $v0, 0x259 +/* 073610 80072A10 8C84E48C */ lw $a0, %lo(D_800DE48C)($a0) +/* 073614 80072A14 10000070 */ b .L80072BD8 +/* 073618 80072A18 26730001 */ addiu $s3, $s3, 1 +.L80072A1C: +/* 07361C 80072A1C 14200012 */ bnez $at, .L80072A68 +/* 073620 80072A20 00000000 */ nop +/* 073624 80072A24 02770019 */ multu $s3, $s7 +/* 073628 80072A28 93CF0000 */ lbu $t7, ($fp) +/* 07362C 80072A2C 0220C027 */ not $t8, $s1 +/* 073630 80072A30 01F8C824 */ and $t9, $t7, $t8 +/* 073634 80072A34 A3D90000 */ sb $t9, ($fp) +/* 073638 80072A38 2408FFFF */ li $t0, -1 +/* 07363C 80072A3C 2409FED4 */ li $t1, -300 +/* 073640 80072A40 A6080000 */ sh $t0, ($s0) +/* 073644 80072A44 A6090008 */ sh $t1, 8($s0) +/* 073648 80072A48 00005012 */ mflo $t2 +/* 07364C 80072A4C 02CA2021 */ addu $a0, $s6, $t2 +/* 073650 80072A50 0C01C74C */ jal func_80071D30 +/* 073654 80072A54 00000000 */ nop +/* 073658 80072A58 3C04800E */ lui $a0, %hi(D_800DE48C) # $a0, 0x800e +/* 07365C 80072A5C 8C84E48C */ lw $a0, %lo(D_800DE48C)($a0) +/* 073660 80072A60 1000005D */ b .L80072BD8 +/* 073664 80072A64 26730001 */ addiu $s3, $s3, 1 +.L80072A68: +/* 073668 80072A68 86040002 */ lh $a0, 2($s0) +/* 07366C 80072A6C 00000000 */ nop +/* 073670 80072A70 44842000 */ mtc1 $a0, $f4 +/* 073674 80072A74 00000000 */ nop +/* 073678 80072A78 46802021 */ cvt.d.w $f0, $f4 +/* 07367C 80072A7C 4620A03C */ c.lt.d $f20, $f0 +/* 073680 80072A80 00000000 */ nop +/* 073684 80072A84 45000010 */ bc1f .L80072AC8 +/* 073688 80072A88 00000000 */ nop +/* 07368C 80072A8C 928B0000 */ lbu $t3, ($s4) +/* 073690 80072A90 00000000 */ nop +/* 073694 80072A94 01716024 */ and $t4, $t3, $s1 +/* 073698 80072A98 1580004B */ bnez $t4, .L80072BC8 +/* 07369C 80072A9C 00000000 */ nop +/* 0736A0 80072AA0 02770019 */ multu $s3, $s7 +/* 0736A4 80072AA4 00006812 */ mflo $t5 +/* 0736A8 80072AA8 02CD2021 */ addu $a0, $s6, $t5 +/* 0736AC 80072AAC 0C01C796 */ jal func_80071E58 +/* 0736B0 80072AB0 00000000 */ nop +/* 0736B4 80072AB4 928E0000 */ lbu $t6, ($s4) +/* 0736B8 80072AB8 02A2A825 */ or $s5, $s5, $v0 +/* 0736BC 80072ABC 01D17825 */ or $t7, $t6, $s1 +/* 0736C0 80072AC0 10000041 */ b .L80072BC8 +/* 0736C4 80072AC4 A28F0000 */ sb $t7, ($s4) +.L80072AC8: +/* 0736C8 80072AC8 4636003C */ c.lt.d $f0, $f22 +/* 0736CC 80072ACC 00000000 */ nop +/* 0736D0 80072AD0 45000011 */ bc1f .L80072B18 +/* 0736D4 80072AD4 00000000 */ nop +/* 0736D8 80072AD8 92980000 */ lbu $t8, ($s4) +/* 0736DC 80072ADC 00000000 */ nop +/* 0736E0 80072AE0 0311C824 */ and $t9, $t8, $s1 +/* 0736E4 80072AE4 13200038 */ beqz $t9, .L80072BC8 +/* 0736E8 80072AE8 00000000 */ nop +/* 0736EC 80072AEC 02770019 */ multu $s3, $s7 +/* 0736F0 80072AF0 00004012 */ mflo $t0 +/* 0736F4 80072AF4 02C82021 */ addu $a0, $s6, $t0 +/* 0736F8 80072AF8 0C01C74C */ jal func_80071D30 +/* 0736FC 80072AFC 00000000 */ nop +/* 073700 80072B00 92890000 */ lbu $t1, ($s4) +/* 073704 80072B04 02205027 */ not $t2, $s1 +/* 073708 80072B08 012A5824 */ and $t3, $t1, $t2 +/* 07370C 80072B0C 02A2A825 */ or $s5, $s5, $v0 +/* 073710 80072B10 1000002D */ b .L80072BC8 +/* 073714 80072B14 A28B0000 */ sb $t3, ($s4) +.L80072B18: +/* 073718 80072B18 86030006 */ lh $v1, 6($s0) +/* 07371C 80072B1C 00000000 */ nop +/* 073720 80072B20 28610100 */ slti $at, $v1, 0x100 +/* 073724 80072B24 14200014 */ bnez $at, .L80072B78 +/* 073728 80072B28 00000000 */ nop +/* 07372C 80072B2C 928C0000 */ lbu $t4, ($s4) +/* 073730 80072B30 00000000 */ nop +/* 073734 80072B34 01916824 */ and $t5, $t4, $s1 +/* 073738 80072B38 15A0000D */ bnez $t5, .L80072B70 +/* 07373C 80072B3C 2479FF00 */ addiu $t9, $v1, -0x100 +/* 073740 80072B40 02770019 */ multu $s3, $s7 +/* 073744 80072B44 00007012 */ mflo $t6 +/* 073748 80072B48 02CE2021 */ addu $a0, $s6, $t6 +/* 07374C 80072B4C 0C01C796 */ jal func_80071E58 +/* 073750 80072B50 00000000 */ nop +/* 073754 80072B54 928F0000 */ lbu $t7, ($s4) +/* 073758 80072B58 02A2A825 */ or $s5, $s5, $v0 +/* 07375C 80072B5C 01F1C025 */ or $t8, $t7, $s1 +/* 073760 80072B60 A2980000 */ sb $t8, ($s4) +/* 073764 80072B64 86030006 */ lh $v1, 6($s0) +/* 073768 80072B68 00000000 */ nop +/* 07376C 80072B6C 2479FF00 */ addiu $t9, $v1, -0x100 +.L80072B70: +/* 073770 80072B70 10000015 */ b .L80072BC8 +/* 073774 80072B74 A6190006 */ sh $t9, 6($s0) +.L80072B78: +/* 073778 80072B78 92880000 */ lbu $t0, ($s4) +/* 07377C 80072B7C 00000000 */ nop +/* 073780 80072B80 01114824 */ and $t1, $t0, $s1 +/* 073784 80072B84 1120000E */ beqz $t1, .L80072BC0 +/* 073788 80072B88 00647021 */ addu $t6, $v1, $a0 +/* 07378C 80072B8C 02770019 */ multu $s3, $s7 +/* 073790 80072B90 00005012 */ mflo $t2 +/* 073794 80072B94 02CA2021 */ addu $a0, $s6, $t2 +/* 073798 80072B98 0C01C74C */ jal func_80071D30 +/* 07379C 80072B9C 00000000 */ nop +/* 0737A0 80072BA0 928B0000 */ lbu $t3, ($s4) +/* 0737A4 80072BA4 02206027 */ not $t4, $s1 +/* 0737A8 80072BA8 016C6824 */ and $t5, $t3, $t4 +/* 0737AC 80072BAC A28D0000 */ sb $t5, ($s4) +/* 0737B0 80072BB0 86030006 */ lh $v1, 6($s0) +/* 0737B4 80072BB4 86040002 */ lh $a0, 2($s0) +/* 0737B8 80072BB8 02A2A825 */ or $s5, $s5, $v0 +/* 0737BC 80072BBC 00647021 */ addu $t6, $v1, $a0 +.L80072BC0: +/* 0737C0 80072BC0 25CF0004 */ addiu $t7, $t6, 4 +/* 0737C4 80072BC4 A60F0006 */ sh $t7, 6($s0) +.L80072BC8: +/* 0737C8 80072BC8 3C04800E */ lui $a0, %hi(D_800DE48C) # $a0, 0x800e +/* 0737CC 80072BCC 8C84E48C */ lw $a0, %lo(D_800DE48C)($a0) +/* 0737D0 80072BD0 00000000 */ nop +.L80072BD4: +/* 0737D4 80072BD4 26730001 */ addiu $s3, $s3, 1 +.L80072BD8: +/* 0737D8 80072BD8 327800FF */ andi $t8, $s3, 0xff +/* 0737DC 80072BDC 00111840 */ sll $v1, $s1, 1 +/* 0737E0 80072BE0 307900FF */ andi $t9, $v1, 0xff +/* 0737E4 80072BE4 2B010004 */ slti $at, $t8, 4 +/* 0737E8 80072BE8 03201825 */ move $v1, $t9 +/* 0737EC 80072BEC 03009825 */ move $s3, $t8 +/* 0737F0 80072BF0 1420FF43 */ bnez $at, .L80072900 +/* 0737F4 80072BF4 2610000A */ addiu $s0, $s0, 0xa +/* 0737F8 80072BF8 12A00002 */ beqz $s5, .L80072C04 +/* 0737FC 80072BFC 3C018012 */ lui $at, %hi(D_801241E5) # $at, 0x8012 +/* 073800 80072C00 A02041E5 */ sb $zero, %lo(D_801241E5)($at) +.L80072C04: +/* 073804 80072C04 10800003 */ beqz $a0, .L80072C14 +/* 073808 80072C08 2488FFFF */ addiu $t0, $a0, -1 +/* 07380C 80072C0C 3C01800E */ lui $at, %hi(D_800DE48C) # $at, 0x800e +/* 073810 80072C10 AC28E48C */ sw $t0, %lo(D_800DE48C)($at) +.L80072C14: +/* 073814 80072C14 8FBF004C */ lw $ra, 0x4c($sp) +.L80072C18: +/* 073818 80072C18 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 07381C 80072C1C C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 073820 80072C20 C7B70020 */ lwc1 $f23, 0x20($sp) +/* 073824 80072C24 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 073828 80072C28 8FB00028 */ lw $s0, 0x28($sp) +/* 07382C 80072C2C 8FB1002C */ lw $s1, 0x2c($sp) +/* 073830 80072C30 8FB20030 */ lw $s2, 0x30($sp) +/* 073834 80072C34 8FB30034 */ lw $s3, 0x34($sp) +/* 073838 80072C38 8FB40038 */ lw $s4, 0x38($sp) +/* 07383C 80072C3C 8FB5003C */ lw $s5, 0x3c($sp) +/* 073840 80072C40 8FB60040 */ lw $s6, 0x40($sp) +/* 073844 80072C44 8FB70044 */ lw $s7, 0x44($sp) +/* 073848 80072C48 8FBE0048 */ lw $fp, 0x48($sp) +/* 07384C 80072C4C 03E00008 */ jr $ra +/* 073850 80072C50 27BD0078 */ addiu $sp, $sp, 0x78 + diff --git a/asm/non_matchings/unknown_072E50/func_80072C54.s b/asm/non_matchings/unknown_072E50/func_80072C54.s new file mode 100644 index 00000000..58c4ab6c --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80072C54.s @@ -0,0 +1,135 @@ +glabel func_80072C54 +/* 073854 80072C54 1C800003 */ bgtz $a0, .L80072C64 +/* 073858 80072C58 00001825 */ move $v1, $zero +/* 07385C 80072C5C 03E00008 */ jr $ra +/* 073860 80072C60 00001025 */ move $v0, $zero + +.L80072C64: +/* 073864 80072C64 248E001F */ addiu $t6, $a0, 0x1f +/* 073868 80072C68 240F0001 */ li $t7, 1 +/* 07386C 80072C6C 1080006B */ beqz $a0, .L80072E1C +/* 073870 80072C70 01CF1004 */ sllv $v0, $t7, $t6 +/* 073874 80072C74 30850003 */ andi $a1, $a0, 3 +/* 073878 80072C78 00052823 */ negu $a1, $a1 +/* 07387C 80072C7C 10A0001D */ beqz $a1, .L80072CF4 +/* 073880 80072C80 00A44021 */ addu $t0, $a1, $a0 +/* 073884 80072C84 3C0B8012 */ lui $t3, %hi(D_801241EC) # $t3, 0x8012 +/* 073888 80072C88 3C0A8012 */ lui $t2, %hi(D_801241F0) # $t2, 0x8012 +/* 07388C 80072C8C 3C098012 */ lui $t1, %hi(D_801241F4) # $t1, 0x8012 +/* 073890 80072C90 252941F4 */ addiu $t1, %lo(D_801241F4) # addiu $t1, $t1, 0x41f4 +/* 073894 80072C94 254A41F0 */ addiu $t2, %lo(D_801241F0) # addiu $t2, $t2, 0x41f0 +/* 073898 80072C98 256B41EC */ addiu $t3, %lo(D_801241EC) # addiu $t3, $t3, 0x41ec +/* 07389C 80072C9C 240C0080 */ li $t4, 128 +.L80072CA0: +/* 0738A0 80072CA0 8D260000 */ lw $a2, ($t1) +/* 0738A4 80072CA4 2485FFFF */ addiu $a1, $a0, -1 +/* 0738A8 80072CA8 14C00008 */ bnez $a2, .L80072CCC +/* 0738AC 80072CAC 00027042 */ srl $t6, $v0, 1 +/* 0738B0 80072CB0 8D670000 */ lw $a3, ($t3) +/* 0738B4 80072CB4 01803025 */ move $a2, $t4 +/* 0738B8 80072CB8 90F80000 */ lbu $t8, ($a3) +/* 0738BC 80072CBC 24F90001 */ addiu $t9, $a3, 1 +/* 0738C0 80072CC0 AD790000 */ sw $t9, ($t3) +/* 0738C4 80072CC4 AD2C0000 */ sw $t4, ($t1) +/* 0738C8 80072CC8 AD580000 */ sw $t8, ($t2) +.L80072CCC: +/* 0738CC 80072CCC 8D4D0000 */ lw $t5, ($t2) +/* 0738D0 80072CD0 0006C042 */ srl $t8, $a2, 1 +/* 0738D4 80072CD4 01A67824 */ and $t7, $t5, $a2 +/* 0738D8 80072CD8 11E00002 */ beqz $t7, .L80072CE4 +/* 0738DC 80072CDC 00A02025 */ move $a0, $a1 +/* 0738E0 80072CE0 00621825 */ or $v1, $v1, $v0 +.L80072CE4: +/* 0738E4 80072CE4 01C01025 */ move $v0, $t6 +/* 0738E8 80072CE8 1505FFED */ bne $t0, $a1, .L80072CA0 +/* 0738EC 80072CEC AD380000 */ sw $t8, ($t1) +/* 0738F0 80072CF0 10A0004A */ beqz $a1, .L80072E1C +.L80072CF4: +/* 0738F4 80072CF4 3C098012 */ lui $t1, %hi(D_801241F4) # $t1, 0x8012 +/* 0738F8 80072CF8 3C0A8012 */ lui $t2, %hi(D_801241F0) # $t2, 0x8012 +/* 0738FC 80072CFC 3C0B8012 */ lui $t3, %hi(D_801241EC) # $t3, 0x8012 +/* 073900 80072D00 256B41EC */ addiu $t3, %lo(D_801241EC) # addiu $t3, $t3, 0x41ec +/* 073904 80072D04 254A41F0 */ addiu $t2, %lo(D_801241F0) # addiu $t2, $t2, 0x41f0 +/* 073908 80072D08 252941F4 */ addiu $t1, %lo(D_801241F4) # addiu $t1, $t1, 0x41f4 +/* 07390C 80072D0C 240C0080 */ li $t4, 128 +.L80072D10: +/* 073910 80072D10 8D260000 */ lw $a2, ($t1) +/* 073914 80072D14 00027042 */ srl $t6, $v0, 1 +/* 073918 80072D18 14C00008 */ bnez $a2, .L80072D3C +/* 07391C 80072D1C 2484FFFC */ addiu $a0, $a0, -4 +/* 073920 80072D20 8D670000 */ lw $a3, ($t3) +/* 073924 80072D24 01803025 */ move $a2, $t4 +/* 073928 80072D28 90F90000 */ lbu $t9, ($a3) +/* 07392C 80072D2C 24ED0001 */ addiu $t5, $a3, 1 +/* 073930 80072D30 AD6D0000 */ sw $t5, ($t3) +/* 073934 80072D34 AD2C0000 */ sw $t4, ($t1) +/* 073938 80072D38 AD590000 */ sw $t9, ($t2) +.L80072D3C: +/* 07393C 80072D3C 8D450000 */ lw $a1, ($t2) +/* 073940 80072D40 0006C042 */ srl $t8, $a2, 1 +/* 073944 80072D44 00A67824 */ and $t7, $a1, $a2 +/* 073948 80072D48 11E00002 */ beqz $t7, .L80072D54 +/* 07394C 80072D4C 03003025 */ move $a2, $t8 +/* 073950 80072D50 00621825 */ or $v1, $v1, $v0 +.L80072D54: +/* 073954 80072D54 01C01025 */ move $v0, $t6 +/* 073958 80072D58 17000008 */ bnez $t8, .L80072D7C +/* 07395C 80072D5C AD380000 */ sw $t8, ($t1) +/* 073960 80072D60 8D670000 */ lw $a3, ($t3) +/* 073964 80072D64 01803025 */ move $a2, $t4 +/* 073968 80072D68 90E50000 */ lbu $a1, ($a3) +/* 07396C 80072D6C 24ED0001 */ addiu $t5, $a3, 1 +/* 073970 80072D70 AD6D0000 */ sw $t5, ($t3) +/* 073974 80072D74 AD2C0000 */ sw $t4, ($t1) +/* 073978 80072D78 AD450000 */ sw $a1, ($t2) +.L80072D7C: +/* 07397C 80072D7C 00A67824 */ and $t7, $a1, $a2 +/* 073980 80072D80 11E00002 */ beqz $t7, .L80072D8C +/* 073984 80072D84 00027042 */ srl $t6, $v0, 1 +/* 073988 80072D88 00621825 */ or $v1, $v1, $v0 +.L80072D8C: +/* 07398C 80072D8C 0006C042 */ srl $t8, $a2, 1 +/* 073990 80072D90 AD380000 */ sw $t8, ($t1) +/* 073994 80072D94 03003025 */ move $a2, $t8 +/* 073998 80072D98 17000008 */ bnez $t8, .L80072DBC +/* 07399C 80072D9C 01C01025 */ move $v0, $t6 +/* 0739A0 80072DA0 8D670000 */ lw $a3, ($t3) +/* 0739A4 80072DA4 01803025 */ move $a2, $t4 +/* 0739A8 80072DA8 90E50000 */ lbu $a1, ($a3) +/* 0739AC 80072DAC 24ED0001 */ addiu $t5, $a3, 1 +/* 0739B0 80072DB0 AD6D0000 */ sw $t5, ($t3) +/* 0739B4 80072DB4 AD2C0000 */ sw $t4, ($t1) +/* 0739B8 80072DB8 AD450000 */ sw $a1, ($t2) +.L80072DBC: +/* 0739BC 80072DBC 00A67824 */ and $t7, $a1, $a2 +/* 0739C0 80072DC0 11E00002 */ beqz $t7, .L80072DCC +/* 0739C4 80072DC4 00027042 */ srl $t6, $v0, 1 +/* 0739C8 80072DC8 00621825 */ or $v1, $v1, $v0 +.L80072DCC: +/* 0739CC 80072DCC 0006C042 */ srl $t8, $a2, 1 +/* 0739D0 80072DD0 AD380000 */ sw $t8, ($t1) +/* 0739D4 80072DD4 03003025 */ move $a2, $t8 +/* 0739D8 80072DD8 17000008 */ bnez $t8, .L80072DFC +/* 0739DC 80072DDC 01C01025 */ move $v0, $t6 +/* 0739E0 80072DE0 8D670000 */ lw $a3, ($t3) +/* 0739E4 80072DE4 01803025 */ move $a2, $t4 +/* 0739E8 80072DE8 90E50000 */ lbu $a1, ($a3) +/* 0739EC 80072DEC 24ED0001 */ addiu $t5, $a3, 1 +/* 0739F0 80072DF0 AD6D0000 */ sw $t5, ($t3) +/* 0739F4 80072DF4 AD2C0000 */ sw $t4, ($t1) +/* 0739F8 80072DF8 AD450000 */ sw $a1, ($t2) +.L80072DFC: +/* 0739FC 80072DFC 00A67824 */ and $t7, $a1, $a2 +/* 073A00 80072E00 11E00002 */ beqz $t7, .L80072E0C +/* 073A04 80072E04 00027042 */ srl $t6, $v0, 1 +/* 073A08 80072E08 00621825 */ or $v1, $v1, $v0 +.L80072E0C: +/* 073A0C 80072E0C 0006C042 */ srl $t8, $a2, 1 +/* 073A10 80072E10 AD380000 */ sw $t8, ($t1) +/* 073A14 80072E14 1480FFBE */ bnez $a0, .L80072D10 +/* 073A18 80072E18 01C01025 */ move $v0, $t6 +.L80072E1C: +/* 073A1C 80072E1C 00601025 */ move $v0, $v1 +/* 073A20 80072E20 03E00008 */ jr $ra +/* 073A24 80072E24 00000000 */ nop + diff --git a/asm/non_matchings/unknown_072E50/func_80072E28.s b/asm/non_matchings/unknown_072E50/func_80072E28.s new file mode 100644 index 00000000..9380337d --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80072E28.s @@ -0,0 +1,162 @@ +glabel func_80072E28 +/* 073A28 80072E28 1880008E */ blez $a0, .L80073064 +/* 073A2C 80072E2C 00A03025 */ move $a2, $a1 +/* 073A30 80072E30 248E001F */ addiu $t6, $a0, 0x1f +/* 073A34 80072E34 240F0001 */ li $t7, 1 +/* 073A38 80072E38 10800082 */ beqz $a0, .L80073044 +/* 073A3C 80072E3C 01CF1004 */ sllv $v0, $t7, $t6 +/* 073A40 80072E40 30830003 */ andi $v1, $a0, 3 +/* 073A44 80072E44 00031823 */ negu $v1, $v1 +/* 073A48 80072E48 10600021 */ beqz $v1, .L80072ED0 +/* 073A4C 80072E4C 00643821 */ addu $a3, $v1, $a0 +/* 073A50 80072E50 3C0A8012 */ lui $t2, %hi(D_801241F0) # $t2, 0x8012 +/* 073A54 80072E54 3C098012 */ lui $t1, %hi(D_801241EC) # $t1, 0x8012 +/* 073A58 80072E58 3C088012 */ lui $t0, %hi(D_801241F4) # $t0, 0x8012 +/* 073A5C 80072E5C 250841F4 */ addiu $t0, %lo(D_801241F4) # addiu $t0, $t0, 0x41f4 +/* 073A60 80072E60 252941EC */ addiu $t1, %lo(D_801241EC) # addiu $t1, $t1, 0x41ec +/* 073A64 80072E64 254A41F0 */ addiu $t2, %lo(D_801241F0) # addiu $t2, $t2, 0x41f0 +/* 073A68 80072E68 240B0080 */ li $t3, 128 +.L80072E6C: +/* 073A6C 80072E6C 8D050000 */ lw $a1, ($t0) +/* 073A70 80072E70 2483FFFF */ addiu $v1, $a0, -1 +/* 073A74 80072E74 14A0000A */ bnez $a1, .L80072EA0 +/* 073A78 80072E78 00C27824 */ and $t7, $a2, $v0 +/* 073A7C 80072E7C 8D580000 */ lw $t8, ($t2) +/* 073A80 80072E80 8D390000 */ lw $t9, ($t1) +/* 073A84 80072E84 01602825 */ move $a1, $t3 +/* 073A88 80072E88 A3380000 */ sb $t8, ($t9) +/* 073A8C 80072E8C 8D2C0000 */ lw $t4, ($t1) +/* 073A90 80072E90 AD0B0000 */ sw $t3, ($t0) +/* 073A94 80072E94 258D0001 */ addiu $t5, $t4, 1 +/* 073A98 80072E98 AD2D0000 */ sw $t5, ($t1) +/* 073A9C 80072E9C AD400000 */ sw $zero, ($t2) +.L80072EA0: +/* 073AA0 80072EA0 11E00005 */ beqz $t7, .L80072EB8 +/* 073AA4 80072EA4 0002C842 */ srl $t9, $v0, 1 +/* 073AA8 80072EA8 8D4E0000 */ lw $t6, ($t2) +/* 073AAC 80072EAC 00000000 */ nop +/* 073AB0 80072EB0 01C5C025 */ or $t8, $t6, $a1 +/* 073AB4 80072EB4 AD580000 */ sw $t8, ($t2) +.L80072EB8: +/* 073AB8 80072EB8 00056042 */ srl $t4, $a1, 1 +/* 073ABC 80072EBC AD0C0000 */ sw $t4, ($t0) +/* 073AC0 80072EC0 03201025 */ move $v0, $t9 +/* 073AC4 80072EC4 14E3FFE9 */ bne $a3, $v1, .L80072E6C +/* 073AC8 80072EC8 00602025 */ move $a0, $v1 +/* 073ACC 80072ECC 1060005D */ beqz $v1, .L80073044 +.L80072ED0: +/* 073AD0 80072ED0 3C088012 */ lui $t0, %hi(D_801241F4) # $t0, 0x8012 +/* 073AD4 80072ED4 3C098012 */ lui $t1, %hi(D_801241EC) # $t1, 0x8012 +/* 073AD8 80072ED8 3C0A8012 */ lui $t2, %hi(D_801241F0) # $t2, 0x8012 +/* 073ADC 80072EDC 254A41F0 */ addiu $t2, %lo(D_801241F0) # addiu $t2, $t2, 0x41f0 +/* 073AE0 80072EE0 252941EC */ addiu $t1, %lo(D_801241EC) # addiu $t1, $t1, 0x41ec +/* 073AE4 80072EE4 250841F4 */ addiu $t0, %lo(D_801241F4) # addiu $t0, $t0, 0x41f4 +/* 073AE8 80072EE8 240B0080 */ li $t3, 128 +.L80072EEC: +/* 073AEC 80072EEC 8D050000 */ lw $a1, ($t0) +/* 073AF0 80072EF0 00C2C824 */ and $t9, $a2, $v0 +/* 073AF4 80072EF4 14A0000A */ bnez $a1, .L80072F20 +/* 073AF8 80072EF8 2484FFFC */ addiu $a0, $a0, -4 +/* 073AFC 80072EFC 8D4D0000 */ lw $t5, ($t2) +/* 073B00 80072F00 8D2F0000 */ lw $t7, ($t1) +/* 073B04 80072F04 01602825 */ move $a1, $t3 +/* 073B08 80072F08 A1ED0000 */ sb $t5, ($t7) +/* 073B0C 80072F0C 8D2E0000 */ lw $t6, ($t1) +/* 073B10 80072F10 AD400000 */ sw $zero, ($t2) +/* 073B14 80072F14 25D80001 */ addiu $t8, $t6, 1 +/* 073B18 80072F18 AD380000 */ sw $t8, ($t1) +/* 073B1C 80072F1C AD0B0000 */ sw $t3, ($t0) +.L80072F20: +/* 073B20 80072F20 13200005 */ beqz $t9, .L80072F38 +/* 073B24 80072F24 00027842 */ srl $t7, $v0, 1 +/* 073B28 80072F28 8D4C0000 */ lw $t4, ($t2) +/* 073B2C 80072F2C 00000000 */ nop +/* 073B30 80072F30 01856825 */ or $t5, $t4, $a1 +/* 073B34 80072F34 AD4D0000 */ sw $t5, ($t2) +.L80072F38: +/* 073B38 80072F38 00057042 */ srl $t6, $a1, 1 +/* 073B3C 80072F3C 01E01025 */ move $v0, $t7 +/* 073B40 80072F40 AD0E0000 */ sw $t6, ($t0) +/* 073B44 80072F44 15C0000A */ bnez $t6, .L80072F70 +/* 073B48 80072F48 01C02825 */ move $a1, $t6 +/* 073B4C 80072F4C 8D580000 */ lw $t8, ($t2) +/* 073B50 80072F50 8D390000 */ lw $t9, ($t1) +/* 073B54 80072F54 01602825 */ move $a1, $t3 +/* 073B58 80072F58 A3380000 */ sb $t8, ($t9) +/* 073B5C 80072F5C 8D2C0000 */ lw $t4, ($t1) +/* 073B60 80072F60 AD0B0000 */ sw $t3, ($t0) +/* 073B64 80072F64 258D0001 */ addiu $t5, $t4, 1 +/* 073B68 80072F68 AD2D0000 */ sw $t5, ($t1) +/* 073B6C 80072F6C AD400000 */ sw $zero, ($t2) +.L80072F70: +/* 073B70 80072F70 00C27824 */ and $t7, $a2, $v0 +/* 073B74 80072F74 11E00005 */ beqz $t7, .L80072F8C +/* 073B78 80072F78 0002C842 */ srl $t9, $v0, 1 +/* 073B7C 80072F7C 8D4E0000 */ lw $t6, ($t2) +/* 073B80 80072F80 00000000 */ nop +/* 073B84 80072F84 01C5C025 */ or $t8, $t6, $a1 +/* 073B88 80072F88 AD580000 */ sw $t8, ($t2) +.L80072F8C: +/* 073B8C 80072F8C 00056042 */ srl $t4, $a1, 1 +/* 073B90 80072F90 AD0C0000 */ sw $t4, ($t0) +/* 073B94 80072F94 01802825 */ move $a1, $t4 +/* 073B98 80072F98 1580000A */ bnez $t4, .L80072FC4 +/* 073B9C 80072F9C 03201025 */ move $v0, $t9 +/* 073BA0 80072FA0 8D4D0000 */ lw $t5, ($t2) +/* 073BA4 80072FA4 8D2F0000 */ lw $t7, ($t1) +/* 073BA8 80072FA8 01602825 */ move $a1, $t3 +/* 073BAC 80072FAC A1ED0000 */ sb $t5, ($t7) +/* 073BB0 80072FB0 8D2E0000 */ lw $t6, ($t1) +/* 073BB4 80072FB4 AD0B0000 */ sw $t3, ($t0) +/* 073BB8 80072FB8 25D80001 */ addiu $t8, $t6, 1 +/* 073BBC 80072FBC AD380000 */ sw $t8, ($t1) +/* 073BC0 80072FC0 AD400000 */ sw $zero, ($t2) +.L80072FC4: +/* 073BC4 80072FC4 00C2C824 */ and $t9, $a2, $v0 +/* 073BC8 80072FC8 13200005 */ beqz $t9, .L80072FE0 +/* 073BCC 80072FCC 00027842 */ srl $t7, $v0, 1 +/* 073BD0 80072FD0 8D4C0000 */ lw $t4, ($t2) +/* 073BD4 80072FD4 00000000 */ nop +/* 073BD8 80072FD8 01856825 */ or $t5, $t4, $a1 +/* 073BDC 80072FDC AD4D0000 */ sw $t5, ($t2) +.L80072FE0: +/* 073BE0 80072FE0 00057042 */ srl $t6, $a1, 1 +/* 073BE4 80072FE4 AD0E0000 */ sw $t6, ($t0) +/* 073BE8 80072FE8 01C02825 */ move $a1, $t6 +/* 073BEC 80072FEC 15C0000A */ bnez $t6, .L80073018 +/* 073BF0 80072FF0 01E01025 */ move $v0, $t7 +/* 073BF4 80072FF4 8D580000 */ lw $t8, ($t2) +/* 073BF8 80072FF8 8D390000 */ lw $t9, ($t1) +/* 073BFC 80072FFC 01602825 */ move $a1, $t3 +/* 073C00 80073000 A3380000 */ sb $t8, ($t9) +/* 073C04 80073004 8D2C0000 */ lw $t4, ($t1) +/* 073C08 80073008 AD0B0000 */ sw $t3, ($t0) +/* 073C0C 8007300C 258D0001 */ addiu $t5, $t4, 1 +/* 073C10 80073010 AD2D0000 */ sw $t5, ($t1) +/* 073C14 80073014 AD400000 */ sw $zero, ($t2) +.L80073018: +/* 073C18 80073018 00C27824 */ and $t7, $a2, $v0 +/* 073C1C 8007301C 11E00005 */ beqz $t7, .L80073034 +/* 073C20 80073020 0002C842 */ srl $t9, $v0, 1 +/* 073C24 80073024 8D4E0000 */ lw $t6, ($t2) +/* 073C28 80073028 00000000 */ nop +/* 073C2C 8007302C 01C5C025 */ or $t8, $t6, $a1 +/* 073C30 80073030 AD580000 */ sw $t8, ($t2) +.L80073034: +/* 073C34 80073034 00056042 */ srl $t4, $a1, 1 +/* 073C38 80073038 AD0C0000 */ sw $t4, ($t0) +/* 073C3C 8007303C 1480FFAB */ bnez $a0, .L80072EEC +/* 073C40 80073040 03201025 */ move $v0, $t9 +.L80073044: +/* 073C44 80073044 3C098012 */ lui $t1, %hi(D_801241EC) # $t1, 0x8012 +/* 073C48 80073048 3C0A8012 */ lui $t2, %hi(D_801241F0) # $t2, 0x8012 +/* 073C4C 8007304C 254A41F0 */ addiu $t2, %lo(D_801241F0) # addiu $t2, $t2, 0x41f0 +/* 073C50 80073050 252941EC */ addiu $t1, %lo(D_801241EC) # addiu $t1, $t1, 0x41ec +/* 073C54 80073054 8D2F0000 */ lw $t7, ($t1) +/* 073C58 80073058 8D4D0000 */ lw $t5, ($t2) +/* 073C5C 8007305C 00000000 */ nop +/* 073C60 80073060 A1ED0000 */ sb $t5, ($t7) +.L80073064: +/* 073C64 80073064 03E00008 */ jr $ra +/* 073C68 80073068 00000000 */ nop + diff --git a/asm/non_matchings/unknown_072E50/func_8007306C.s b/asm/non_matchings/unknown_072E50/func_8007306C.s new file mode 100644 index 00000000..2f458182 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_8007306C.s @@ -0,0 +1,174 @@ +glabel func_8007306C +/* 073C6C 8007306C 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 073C70 80073070 AFBF0024 */ sw $ra, 0x24($sp) +/* 073C74 80073074 AFB20020 */ sw $s2, 0x20($sp) +/* 073C78 80073078 AFB1001C */ sw $s1, 0x1c($sp) +/* 073C7C 8007307C 00A08825 */ move $s1, $a1 +/* 073C80 80073080 00809025 */ move $s2, $a0 +/* 073C84 80073084 0C01BA65 */ jal func_8006E994 +/* 073C88 80073088 AFB00018 */ sw $s0, 0x18($sp) +/* 073C8C 8007308C 27A40048 */ addiu $a0, $sp, 0x48 +/* 073C90 80073090 0C01AC89 */ jal func_8006B224 +/* 073C94 80073094 27A50044 */ addiu $a1, $sp, 0x44 +/* 073C98 80073098 3C018012 */ lui $at, %hi(D_801241EC) # $at, 0x8012 +/* 073C9C 8007309C 3C028012 */ lui $v0, %hi(D_801241F4) # $v0, 0x8012 +/* 073CA0 800730A0 AC3141EC */ sw $s1, %lo(D_801241EC)($at) +/* 073CA4 800730A4 244241F4 */ addiu $v0, %lo(D_801241F4) # addiu $v0, $v0, 0x41f4 +/* 073CA8 800730A8 AC400000 */ sw $zero, ($v0) +/* 073CAC 800730AC 3C018012 */ lui $at, %hi(D_801241F0) # $at, 0x8012 +/* 073CB0 800730B0 AC2041F0 */ sw $zero, %lo(D_801241F0)($at) +/* 073CB4 800730B4 0C01CB15 */ jal func_80072C54 +/* 073CB8 800730B8 24040010 */ li $a0, 16 +/* 073CBC 800730BC 2444FFFB */ addiu $a0, $v0, -5 +/* 073CC0 800730C0 00047C00 */ sll $t7, $a0, 0x10 +/* 073CC4 800730C4 000F2403 */ sra $a0, $t7, 0x10 +/* 073CC8 800730C8 24100002 */ li $s0, 2 +/* 073CCC 800730CC 26230002 */ addiu $v1, $s1, 2 +.L800730D0: +/* 073CD0 800730D0 90790000 */ lbu $t9, ($v1) +/* 073CD4 800730D4 26100001 */ addiu $s0, $s0, 1 +/* 073CD8 800730D8 00992023 */ subu $a0, $a0, $t9 +/* 073CDC 800730DC 00044400 */ sll $t0, $a0, 0x10 +/* 073CE0 800730E0 00084C03 */ sra $t1, $t0, 0x10 +/* 073CE4 800730E4 2A010028 */ slti $at, $s0, 0x28 +/* 073CE8 800730E8 01202025 */ move $a0, $t1 +/* 073CEC 800730EC 1420FFF8 */ bnez $at, .L800730D0 +/* 073CF0 800730F0 24630001 */ addiu $v1, $v1, 1 +/* 073CF4 800730F4 15200077 */ bnez $t1, .L800732D4 +/* 073CF8 800730F8 8FBF0024 */ lw $ra, 0x24($sp) +/* 073CFC 800730FC 8FAA0048 */ lw $t2, 0x48($sp) +/* 073D00 80073100 00008025 */ move $s0, $zero +/* 073D04 80073104 1940002E */ blez $t2, .L800731C0 +/* 073D08 80073108 00008825 */ move $s1, $zero +.L8007310C: +/* 073D0C 8007310C 0C01AC53 */ jal func_8006B14C +/* 073D10 80073110 02002025 */ move $a0, $s0 +/* 073D14 80073114 10400005 */ beqz $v0, .L8007312C +/* 073D18 80073118 304B0040 */ andi $t3, $v0, 0x40 +/* 073D1C 8007311C 15600003 */ bnez $t3, .L8007312C +/* 073D20 80073120 24010008 */ li $at, 8 +/* 073D24 80073124 14410021 */ bne $v0, $at, .L800731AC +/* 073D28 80073128 8FAE0048 */ lw $t6, 0x48($sp) +.L8007312C: +/* 073D2C 8007312C 0C01CB15 */ jal func_80072C54 +/* 073D30 80073130 24040002 */ li $a0, 2 +/* 073D34 80073134 304300FF */ andi $v1, $v0, 0xff +/* 073D38 80073138 18600008 */ blez $v1, .L8007315C +/* 073D3C 8007313C 28610002 */ slti $at, $v1, 2 +/* 073D40 80073140 8E4C0004 */ lw $t4, 4($s2) +/* 073D44 80073144 00106880 */ sll $t5, $s0, 2 +/* 073D48 80073148 018D1021 */ addu $v0, $t4, $t5 +/* 073D4C 8007314C 8C4E0000 */ lw $t6, ($v0) +/* 073D50 80073150 00000000 */ nop +/* 073D54 80073154 35CF0001 */ ori $t7, $t6, 1 +/* 073D58 80073158 AC4F0000 */ sw $t7, ($v0) +.L8007315C: +/* 073D5C 8007315C 14200008 */ bnez $at, .L80073180 +/* 073D60 80073160 26310002 */ addiu $s1, $s1, 2 +/* 073D64 80073164 8E580004 */ lw $t8, 4($s2) +/* 073D68 80073168 0010C880 */ sll $t9, $s0, 2 +/* 073D6C 8007316C 03191021 */ addu $v0, $t8, $t9 +/* 073D70 80073170 8C480000 */ lw $t0, ($v0) +/* 073D74 80073174 00000000 */ nop +/* 073D78 80073178 35090002 */ ori $t1, $t0, 2 +/* 073D7C 8007317C AC490000 */ sw $t1, ($v0) +.L80073180: +/* 073D80 80073180 28610003 */ slti $at, $v1, 3 +/* 073D84 80073184 14200008 */ bnez $at, .L800731A8 +/* 073D88 80073188 00000000 */ nop +/* 073D8C 8007318C 8E4A0004 */ lw $t2, 4($s2) +/* 073D90 80073190 00105880 */ sll $t3, $s0, 2 +/* 073D94 80073194 014B1021 */ addu $v0, $t2, $t3 +/* 073D98 80073198 8C4C0000 */ lw $t4, ($v0) +/* 073D9C 8007319C 00000000 */ nop +/* 073DA0 800731A0 358D0004 */ ori $t5, $t4, 4 +/* 073DA4 800731A4 AC4D0000 */ sw $t5, ($v0) +.L800731A8: +/* 073DA8 800731A8 8FAE0048 */ lw $t6, 0x48($sp) +.L800731AC: +/* 073DAC 800731AC 26100001 */ addiu $s0, $s0, 1 +/* 073DB0 800731B0 020E082A */ slt $at, $s0, $t6 +/* 073DB4 800731B4 1420FFD5 */ bnez $at, .L8007310C +/* 073DB8 800731B8 00000000 */ nop +/* 073DBC 800731BC 00008025 */ move $s0, $zero +.L800731C0: +/* 073DC0 800731C0 240F0044 */ li $t7, 68 +/* 073DC4 800731C4 0C01CB15 */ jal func_80072C54 +/* 073DC8 800731C8 01F12023 */ subu $a0, $t7, $s1 +/* 073DCC 800731CC 0C01CB15 */ jal func_80072C54 +/* 073DD0 800731D0 24040006 */ li $a0, 6 +/* 073DD4 800731D4 A6420014 */ sh $v0, 0x14($s2) +/* 073DD8 800731D8 0C01CB15 */ jal func_80072C54 +/* 073DDC 800731DC 2404000A */ li $a0, 10 +/* 073DE0 800731E0 A642000E */ sh $v0, 0xe($s2) +/* 073DE4 800731E4 0C01CB15 */ jal func_80072C54 +/* 073DE8 800731E8 2404000C */ li $a0, 12 +/* 073DEC 800731EC A642000C */ sh $v0, 0xc($s2) +/* 073DF0 800731F0 8FB80044 */ lw $t8, 0x44($sp) +/* 073DF4 800731F4 00001825 */ move $v1, $zero +/* 073DF8 800731F8 1B00000E */ blez $t8, .L80073234 +/* 073DFC 800731FC 24040007 */ li $a0, 7 +.L80073200: +/* 073E00 80073200 0C01CB15 */ jal func_80072C54 +/* 073E04 80073204 AFA3002C */ sw $v1, 0x2c($sp) +/* 073E08 80073208 8FA3002C */ lw $v1, 0x2c($sp) +/* 073E0C 8007320C 8E590000 */ lw $t9, ($s2) +/* 073E10 80073210 26100001 */ addiu $s0, $s0, 1 +/* 073E14 80073214 03234021 */ addu $t0, $t9, $v1 +/* 073E18 80073218 A5020000 */ sh $v0, ($t0) +/* 073E1C 8007321C 8FA90044 */ lw $t1, 0x44($sp) +/* 073E20 80073220 24630002 */ addiu $v1, $v1, 2 +/* 073E24 80073224 0209082A */ slt $at, $s0, $t1 +/* 073E28 80073228 1420FFF5 */ bnez $at, .L80073200 +/* 073E2C 8007322C 24040007 */ li $a0, 7 +/* 073E30 80073230 00008025 */ move $s0, $zero +.L80073234: +/* 073E34 80073234 0C01CB15 */ jal func_80072C54 +/* 073E38 80073238 24040003 */ li $a0, 3 +/* 073E3C 8007323C A2420016 */ sb $v0, 0x16($s2) +/* 073E40 80073240 0C01CB15 */ jal func_80072C54 +/* 073E44 80073244 24040003 */ li $a0, 3 +/* 073E48 80073248 A2420017 */ sb $v0, 0x17($s2) +/* 073E4C 8007324C 8FAA0044 */ lw $t2, 0x44($sp) +/* 073E50 80073250 00000000 */ nop +/* 073E54 80073254 19400012 */ blez $t2, .L800732A0 +/* 073E58 80073258 00000000 */ nop +.L8007325C: +/* 073E5C 8007325C 0C01CB15 */ jal func_80072C54 +/* 073E60 80073260 24040010 */ li $a0, 16 +/* 073E64 80073264 00408825 */ move $s1, $v0 +/* 073E68 80073268 0C01AC75 */ jal func_8006B1D4 +/* 073E6C 8007326C 02002025 */ move $a0, $s0 +/* 073E70 80073270 8E4B0004 */ lw $t3, 4($s2) +/* 073E74 80073274 00026080 */ sll $t4, $v0, 2 +/* 073E78 80073278 016C1821 */ addu $v1, $t3, $t4 +/* 073E7C 8007327C 8C6D0000 */ lw $t5, ($v1) +/* 073E80 80073280 00117400 */ sll $t6, $s1, 0x10 +/* 073E84 80073284 01AE7825 */ or $t7, $t5, $t6 +/* 073E88 80073288 AC6F0000 */ sw $t7, ($v1) +/* 073E8C 8007328C 8FB80044 */ lw $t8, 0x44($sp) +/* 073E90 80073290 26100001 */ addiu $s0, $s0, 1 +/* 073E94 80073294 0218082A */ slt $at, $s0, $t8 +/* 073E98 80073298 1420FFF0 */ bnez $at, .L8007325C +/* 073E9C 8007329C 00000000 */ nop +.L800732A0: +/* 073EA0 800732A0 0C01CB15 */ jal func_80072C54 +/* 073EA4 800732A4 24040008 */ li $a0, 8 +/* 073EA8 800732A8 A6420008 */ sh $v0, 8($s2) +/* 073EAC 800732AC 0C01CB15 */ jal func_80072C54 +/* 073EB0 800732B0 24040020 */ li $a0, 32 +/* 073EB4 800732B4 AE420010 */ sw $v0, 0x10($s2) +/* 073EB8 800732B8 0C01CB15 */ jal func_80072C54 +/* 073EBC 800732BC 24040010 */ li $a0, 16 +/* 073EC0 800732C0 AE420050 */ sw $v0, 0x50($s2) +/* 073EC4 800732C4 0C01CB15 */ jal func_80072C54 +/* 073EC8 800732C8 24040008 */ li $a0, 8 +/* 073ECC 800732CC A240004B */ sb $zero, 0x4b($s2) +/* 073ED0 800732D0 8FBF0024 */ lw $ra, 0x24($sp) +.L800732D4: +/* 073ED4 800732D4 8FB00018 */ lw $s0, 0x18($sp) +/* 073ED8 800732D8 8FB1001C */ lw $s1, 0x1c($sp) +/* 073EDC 800732DC 8FB20020 */ lw $s2, 0x20($sp) +/* 073EE0 800732E0 03E00008 */ jr $ra +/* 073EE4 800732E4 27BD0050 */ addiu $sp, $sp, 0x50 + diff --git a/asm/non_matchings/unknown_072E50/func_800732E8.s b/asm/non_matchings/unknown_072E50/func_800732E8.s new file mode 100644 index 00000000..e3d13327 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_800732E8.s @@ -0,0 +1,182 @@ +glabel func_800732E8 +/* 073EE8 800732E8 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 073EEC 800732EC AFB20020 */ sw $s2, 0x20($sp) +/* 073EF0 800732F0 00809025 */ move $s2, $a0 +/* 073EF4 800732F4 AFBF0024 */ sw $ra, 0x24($sp) +/* 073EF8 800732F8 AFA5004C */ sw $a1, 0x4c($sp) +/* 073EFC 800732FC AFB1001C */ sw $s1, 0x1c($sp) +/* 073F00 80073300 AFB00018 */ sw $s0, 0x18($sp) +/* 073F04 80073304 27A5003C */ addiu $a1, $sp, 0x3c +/* 073F08 80073308 0C01AC89 */ jal func_8006B224 +/* 073F0C 8007330C 27A40040 */ addiu $a0, $sp, 0x40 +/* 073F10 80073310 8FAE004C */ lw $t6, 0x4c($sp) +/* 073F14 80073314 3C018012 */ lui $at, %hi(D_801241EC) # $at, 0x8012 +/* 073F18 80073318 AC2E41EC */ sw $t6, %lo(D_801241EC)($at) +/* 073F1C 8007331C 3C018012 */ lui $at, %hi(D_801241F0) # $at, 0x8012 +/* 073F20 80073320 AC2041F0 */ sw $zero, %lo(D_801241F0)($at) +/* 073F24 80073324 3C018012 */ lui $at, %hi(D_801241F4) # $at, 0x8012 +/* 073F28 80073328 240F0080 */ li $t7, 128 +/* 073F2C 8007332C AC2F41F4 */ sw $t7, %lo(D_801241F4)($at) +/* 073F30 80073330 24040010 */ li $a0, 16 +/* 073F34 80073334 0C01CB8A */ jal func_80072E28 +/* 073F38 80073338 00002825 */ move $a1, $zero +/* 073F3C 8007333C 8FB80040 */ lw $t8, 0x40($sp) +/* 073F40 80073340 00008825 */ move $s1, $zero +/* 073F44 80073344 1B000025 */ blez $t8, .L800733DC +/* 073F48 80073348 00008025 */ move $s0, $zero +.L8007334C: +/* 073F4C 8007334C 0C01AC53 */ jal func_8006B14C +/* 073F50 80073350 02202025 */ move $a0, $s1 +/* 073F54 80073354 10400005 */ beqz $v0, .L8007336C +/* 073F58 80073358 30590040 */ andi $t9, $v0, 0x40 +/* 073F5C 8007335C 17200003 */ bnez $t9, .L8007336C +/* 073F60 80073360 24010008 */ li $at, 8 +/* 073F64 80073364 14410018 */ bne $v0, $at, .L800733C8 +/* 073F68 80073368 8FB80040 */ lw $t8, 0x40($sp) +.L8007336C: +/* 073F6C 8007336C 8E480004 */ lw $t0, 4($s2) +/* 073F70 80073370 00114880 */ sll $t1, $s1, 2 +/* 073F74 80073374 01095021 */ addu $t2, $t0, $t1 +/* 073F78 80073378 8D420000 */ lw $v0, ($t2) +/* 073F7C 8007337C 00002825 */ move $a1, $zero +/* 073F80 80073380 304B0001 */ andi $t3, $v0, 1 +/* 073F84 80073384 11600002 */ beqz $t3, .L80073390 +/* 073F88 80073388 304C0002 */ andi $t4, $v0, 2 +/* 073F8C 8007338C 24050001 */ li $a1, 1 +.L80073390: +/* 073F90 80073390 11800004 */ beqz $t4, .L800733A4 +/* 073F94 80073394 304E0004 */ andi $t6, $v0, 4 +/* 073F98 80073398 24A50001 */ addiu $a1, $a1, 1 +/* 073F9C 8007339C 30AD00FF */ andi $t5, $a1, 0xff +/* 073FA0 800733A0 01A02825 */ move $a1, $t5 +.L800733A4: +/* 073FA4 800733A4 11C00004 */ beqz $t6, .L800733B8 +/* 073FA8 800733A8 00000000 */ nop +/* 073FAC 800733AC 24A50001 */ addiu $a1, $a1, 1 +/* 073FB0 800733B0 30AF00FF */ andi $t7, $a1, 0xff +/* 073FB4 800733B4 01E02825 */ move $a1, $t7 +.L800733B8: +/* 073FB8 800733B8 0C01CB8A */ jal func_80072E28 +/* 073FBC 800733BC 24040002 */ li $a0, 2 +/* 073FC0 800733C0 26100002 */ addiu $s0, $s0, 2 +/* 073FC4 800733C4 8FB80040 */ lw $t8, 0x40($sp) +.L800733C8: +/* 073FC8 800733C8 26310001 */ addiu $s1, $s1, 1 +/* 073FCC 800733CC 0238082A */ slt $at, $s1, $t8 +/* 073FD0 800733D0 1420FFDE */ bnez $at, .L8007334C +/* 073FD4 800733D4 00000000 */ nop +/* 073FD8 800733D8 00008825 */ move $s1, $zero +.L800733DC: +/* 073FDC 800733DC 24190044 */ li $t9, 68 +/* 073FE0 800733E0 03302023 */ subu $a0, $t9, $s0 +/* 073FE4 800733E4 0C01CB8A */ jal func_80072E28 +/* 073FE8 800733E8 00002825 */ move $a1, $zero +/* 073FEC 800733EC 96450014 */ lhu $a1, 0x14($s2) +/* 073FF0 800733F0 0C01CB8A */ jal func_80072E28 +/* 073FF4 800733F4 24040006 */ li $a0, 6 +/* 073FF8 800733F8 9645000E */ lhu $a1, 0xe($s2) +/* 073FFC 800733FC 0C01CB8A */ jal func_80072E28 +/* 074000 80073400 2404000A */ li $a0, 10 +/* 074004 80073404 9645000C */ lhu $a1, 0xc($s2) +/* 074008 80073408 0C01CB8A */ jal func_80072E28 +/* 07400C 8007340C 2404000C */ li $a0, 12 +/* 074010 80073410 8FA8003C */ lw $t0, 0x3c($sp) +/* 074014 80073414 00008025 */ move $s0, $zero +/* 074018 80073418 1900000D */ blez $t0, .L80073450 +/* 07401C 8007341C 00000000 */ nop +.L80073420: +/* 074020 80073420 8E490000 */ lw $t1, ($s2) +/* 074024 80073424 24040007 */ li $a0, 7 +/* 074028 80073428 01305021 */ addu $t2, $t1, $s0 +/* 07402C 8007342C 85450000 */ lh $a1, ($t2) +/* 074030 80073430 0C01CB8A */ jal func_80072E28 +/* 074034 80073434 00000000 */ nop +/* 074038 80073438 8FAB003C */ lw $t3, 0x3c($sp) +/* 07403C 8007343C 26310001 */ addiu $s1, $s1, 1 +/* 074040 80073440 022B082A */ slt $at, $s1, $t3 +/* 074044 80073444 1420FFF6 */ bnez $at, .L80073420 +/* 074048 80073448 26100002 */ addiu $s0, $s0, 2 +/* 07404C 8007344C 00008825 */ move $s1, $zero +.L80073450: +/* 074050 80073450 92450016 */ lbu $a1, 0x16($s2) +/* 074054 80073454 0C01CB8A */ jal func_80072E28 +/* 074058 80073458 24040003 */ li $a0, 3 +/* 07405C 8007345C 92450017 */ lbu $a1, 0x17($s2) +/* 074060 80073460 0C01CB8A */ jal func_80072E28 +/* 074064 80073464 24040003 */ li $a0, 3 +/* 074068 80073468 8FAC003C */ lw $t4, 0x3c($sp) +/* 07406C 8007346C 00000000 */ nop +/* 074070 80073470 19800010 */ blez $t4, .L800734B4 +/* 074074 80073474 00000000 */ nop +.L80073478: +/* 074078 80073478 0C01AC75 */ jal func_8006B1D4 +/* 07407C 8007347C 02202025 */ move $a0, $s1 +/* 074080 80073480 8E4D0004 */ lw $t5, 4($s2) +/* 074084 80073484 00027080 */ sll $t6, $v0, 2 +/* 074088 80073488 01AE7821 */ addu $t7, $t5, $t6 +/* 07408C 8007348C 8DE50000 */ lw $a1, ($t7) +/* 074090 80073490 24040010 */ li $a0, 16 +/* 074094 80073494 0005C403 */ sra $t8, $a1, 0x10 +/* 074098 80073498 0C01CB8A */ jal func_80072E28 +/* 07409C 8007349C 3305FFFF */ andi $a1, $t8, 0xffff +/* 0740A0 800734A0 8FA8003C */ lw $t0, 0x3c($sp) +/* 0740A4 800734A4 26310001 */ addiu $s1, $s1, 1 +/* 0740A8 800734A8 0228082A */ slt $at, $s1, $t0 +/* 0740AC 800734AC 1420FFF2 */ bnez $at, .L80073478 +/* 0740B0 800734B0 00000000 */ nop +.L800734B4: +/* 0740B4 800734B4 96450008 */ lhu $a1, 8($s2) +/* 0740B8 800734B8 0C01CB8A */ jal func_80072E28 +/* 0740BC 800734BC 24040008 */ li $a0, 8 +/* 0740C0 800734C0 8E450010 */ lw $a1, 0x10($s2) +/* 0740C4 800734C4 0C01CB8A */ jal func_80072E28 +/* 0740C8 800734C8 24040020 */ li $a0, 32 +/* 0740CC 800734CC 8E450050 */ lw $a1, 0x50($s2) +/* 0740D0 800734D0 0C01CB8A */ jal func_80072E28 +/* 0740D4 800734D4 24040010 */ li $a0, 16 +/* 0740D8 800734D8 24040008 */ li $a0, 8 +/* 0740DC 800734DC 0C01CB8A */ jal func_80072E28 +/* 0740E0 800734E0 00002825 */ move $a1, $zero +/* 0740E4 800734E4 8FA6004C */ lw $a2, 0x4c($sp) +/* 0740E8 800734E8 24110004 */ li $s1, 4 +/* 0740EC 800734EC 24C40002 */ addiu $a0, $a2, 2 +/* 0740F0 800734F0 90820000 */ lbu $v0, ($a0) +/* 0740F4 800734F4 908B0001 */ lbu $t3, 1($a0) +/* 0740F8 800734F8 244A0005 */ addiu $t2, $v0, 5 +/* 0740FC 800734FC 014B1021 */ addu $v0, $t2, $t3 +/* 074100 80073500 00026400 */ sll $t4, $v0, 0x10 +/* 074104 80073504 000C1403 */ sra $v0, $t4, 0x10 +/* 074108 80073508 24040028 */ li $a0, 40 +/* 07410C 8007350C 24C30004 */ addiu $v1, $a2, 4 +.L80073510: +/* 074110 80073510 906E0000 */ lbu $t6, ($v1) +/* 074114 80073514 90790001 */ lbu $t9, 1($v1) +/* 074118 80073518 906A0002 */ lbu $t2, 2($v1) +/* 07411C 8007351C 004EC021 */ addu $t8, $v0, $t6 +/* 074120 80073520 906D0003 */ lbu $t5, 3($v1) +/* 074124 80073524 03194821 */ addu $t1, $t8, $t9 +/* 074128 80073528 012A6021 */ addu $t4, $t1, $t2 +/* 07412C 8007352C 018D1021 */ addu $v0, $t4, $t5 +/* 074130 80073530 00027400 */ sll $t6, $v0, 0x10 +/* 074134 80073534 000E7C03 */ sra $t7, $t6, 0x10 +/* 074138 80073538 26310004 */ addiu $s1, $s1, 4 +/* 07413C 8007353C 01E01025 */ move $v0, $t7 +/* 074140 80073540 1624FFF3 */ bne $s1, $a0, .L80073510 +/* 074144 80073544 24630004 */ addiu $v1, $v1, 4 +/* 074148 80073548 3C018012 */ lui $at, %hi(D_801241EC) # $at, 0x8012 +/* 07414C 8007354C AC2641EC */ sw $a2, %lo(D_801241EC)($at) +/* 074150 80073550 3C018012 */ lui $at, %hi(D_801241F0) # $at, 0x8012 +/* 074154 80073554 AC2041F0 */ sw $zero, %lo(D_801241F0)($at) +/* 074158 80073558 3C018012 */ lui $at, %hi(D_801241F4) # $at, 0x8012 +/* 07415C 8007355C 24180080 */ li $t8, 128 +/* 074160 80073560 AC3841F4 */ sw $t8, %lo(D_801241F4)($at) +/* 074164 80073564 24040010 */ li $a0, 16 +/* 074168 80073568 0C01CB8A */ jal func_80072E28 +/* 07416C 8007356C 01E02825 */ move $a1, $t7 +/* 074170 80073570 8FBF0024 */ lw $ra, 0x24($sp) +/* 074174 80073574 8FB00018 */ lw $s0, 0x18($sp) +/* 074178 80073578 8FB1001C */ lw $s1, 0x1c($sp) +/* 07417C 8007357C 8FB20020 */ lw $s2, 0x20($sp) +/* 074180 80073580 03E00008 */ jr $ra +/* 074184 80073584 27BD0048 */ addiu $sp, $sp, 0x48 + diff --git a/asm/non_matchings/unknown_072E50/func_80073588.s b/asm/non_matchings/unknown_072E50/func_80073588.s new file mode 100644 index 00000000..e148410a --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80073588.s @@ -0,0 +1,217 @@ +glabel func_80073588 +/* 074188 80073588 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 07418C 8007358C AFA5004C */ sw $a1, 0x4c($sp) +/* 074190 80073590 30C500FF */ andi $a1, $a2, 0xff +/* 074194 80073594 AFBF0024 */ sw $ra, 0x24($sp) +/* 074198 80073598 AFB30020 */ sw $s3, 0x20($sp) +/* 07419C 8007359C 00809825 */ move $s3, $a0 +/* 0741A0 800735A0 AFB2001C */ sw $s2, 0x1c($sp) +/* 0741A4 800735A4 AFB10018 */ sw $s1, 0x18($sp) +/* 0741A8 800735A8 AFB00014 */ sw $s0, 0x14($sp) +/* 0741AC 800735AC AFA60050 */ sw $a2, 0x50($sp) +/* 0741B0 800735B0 0C01B9DC */ jal func_8006E770 +/* 0741B4 800735B4 AFA5002C */ sw $a1, 0x2c($sp) +/* 0741B8 800735B8 27A40040 */ addiu $a0, $sp, 0x40 +/* 0741BC 800735BC 0C01AC89 */ jal func_8006B224 +/* 0741C0 800735C0 27A5003C */ addiu $a1, $sp, 0x3c +/* 0741C4 800735C4 8FAF002C */ lw $t7, 0x2c($sp) +/* 0741C8 800735C8 8FB9004C */ lw $t9, 0x4c($sp) +/* 0741CC 800735CC 31F80001 */ andi $t8, $t7, 1 +/* 0741D0 800735D0 13000054 */ beqz $t8, .L80073724 +/* 0741D4 800735D4 3C018012 */ lui $at, %hi(D_801241EC) # $at, 0x8012 +/* 0741D8 800735D8 AC3941EC */ sw $t9, %lo(D_801241EC)($at) +/* 0741DC 800735DC 3C018012 */ lui $at, %hi(D_801241F0) # $at, 0x8012 +/* 0741E0 800735E0 AC2041F0 */ sw $zero, %lo(D_801241F0)($at) +/* 0741E4 800735E4 3C018012 */ lui $at, %hi(D_801241F4) # $at, 0x8012 +/* 0741E8 800735E8 AC2041F4 */ sw $zero, %lo(D_801241F4)($at) +/* 0741EC 800735EC 24110002 */ li $s1, 2 +/* 0741F0 800735F0 24100005 */ li $s0, 5 +/* 0741F4 800735F4 27220002 */ addiu $v0, $t9, 2 +.L800735F8: +/* 0741F8 800735F8 90480000 */ lbu $t0, ($v0) +/* 0741FC 800735FC 26310001 */ addiu $s1, $s1, 1 +/* 074200 80073600 02088021 */ addu $s0, $s0, $t0 +/* 074204 80073604 2A2100C0 */ slti $at, $s1, 0xc0 +/* 074208 80073608 00104C00 */ sll $t1, $s0, 0x10 +/* 07420C 8007360C 24420001 */ addiu $v0, $v0, 1 +/* 074210 80073610 1420FFF9 */ bnez $at, .L800735F8 +/* 074214 80073614 00098403 */ sra $s0, $t1, 0x10 +/* 074218 80073618 0C01CB15 */ jal func_80072C54 +/* 07421C 8007361C 24040010 */ li $a0, 16 +/* 074220 80073620 02028023 */ subu $s0, $s0, $v0 +/* 074224 80073624 00105C00 */ sll $t3, $s0, 0x10 +/* 074228 80073628 000B6403 */ sra $t4, $t3, 0x10 +/* 07422C 8007362C 1580003E */ bnez $t4, .L80073728 +/* 074230 80073630 8FAD002C */ lw $t5, 0x2c($sp) +/* 074234 80073634 8FAD0040 */ lw $t5, 0x40($sp) +/* 074238 80073638 00008825 */ move $s1, $zero +/* 07423C 8007363C 19A0003A */ blez $t5, .L80073728 +/* 074240 80073640 8FAD002C */ lw $t5, 0x2c($sp) +.L80073644: +/* 074244 80073644 0C01AC53 */ jal func_8006B14C +/* 074248 80073648 02202025 */ move $a0, $s1 +/* 07424C 8007364C 14400031 */ bnez $v0, .L80073714 +/* 074250 80073650 8FAC0040 */ lw $t4, 0x40($sp) +/* 074254 80073654 0C01AC3E */ jal func_8006B0F8 +/* 074258 80073658 02202025 */ move $a0, $s1 +/* 07425C 8007365C 00029400 */ sll $s2, $v0, 0x10 +/* 074260 80073660 00127403 */ sra $t6, $s2, 0x10 +/* 074264 80073664 30590001 */ andi $t9, $v0, 1 +/* 074268 80073668 1320000D */ beqz $t9, .L800736A0 +/* 07426C 8007366C 01C09025 */ move $s2, $t6 +/* 074270 80073670 24040010 */ li $a0, 16 +/* 074274 80073674 0C01CB15 */ jal func_80072C54 +/* 074278 80073678 00118040 */ sll $s0, $s1, 1 +/* 07427C 8007367C 8E680024 */ lw $t0, 0x24($s3) +/* 074280 80073680 24040010 */ li $a0, 16 +/* 074284 80073684 01104821 */ addu $t1, $t0, $s0 +/* 074288 80073688 0C01CB15 */ jal func_80072C54 +/* 07428C 8007368C A5220000 */ sh $v0, ($t1) +/* 074290 80073690 8E6A0018 */ lw $t2, 0x18($s3) +/* 074294 80073694 00000000 */ nop +/* 074298 80073698 01505821 */ addu $t3, $t2, $s0 +/* 07429C 8007369C A5620000 */ sh $v0, ($t3) +.L800736A0: +/* 0742A0 800736A0 324C0002 */ andi $t4, $s2, 2 +/* 0742A4 800736A4 1180000C */ beqz $t4, .L800736D8 +/* 0742A8 800736A8 24040010 */ li $a0, 16 +/* 0742AC 800736AC 0C01CB15 */ jal func_80072C54 +/* 0742B0 800736B0 00118040 */ sll $s0, $s1, 1 +/* 0742B4 800736B4 8E6D0028 */ lw $t5, 0x28($s3) +/* 0742B8 800736B8 24040010 */ li $a0, 16 +/* 0742BC 800736BC 01B07021 */ addu $t6, $t5, $s0 +/* 0742C0 800736C0 0C01CB15 */ jal func_80072C54 +/* 0742C4 800736C4 A5C20000 */ sh $v0, ($t6) +/* 0742C8 800736C8 8E6F001C */ lw $t7, 0x1c($s3) +/* 0742CC 800736CC 00000000 */ nop +/* 0742D0 800736D0 01F0C021 */ addu $t8, $t7, $s0 +/* 0742D4 800736D4 A7020000 */ sh $v0, ($t8) +.L800736D8: +/* 0742D8 800736D8 32590004 */ andi $t9, $s2, 4 +/* 0742DC 800736DC 1320000C */ beqz $t9, .L80073710 +/* 0742E0 800736E0 24040010 */ li $a0, 16 +/* 0742E4 800736E4 0C01CB15 */ jal func_80072C54 +/* 0742E8 800736E8 00118040 */ sll $s0, $s1, 1 +/* 0742EC 800736EC 8E68002C */ lw $t0, 0x2c($s3) +/* 0742F0 800736F0 24040010 */ li $a0, 16 +/* 0742F4 800736F4 01104821 */ addu $t1, $t0, $s0 +/* 0742F8 800736F8 0C01CB15 */ jal func_80072C54 +/* 0742FC 800736FC A5220000 */ sh $v0, ($t1) +/* 074300 80073700 8E6A0020 */ lw $t2, 0x20($s3) +/* 074304 80073704 00000000 */ nop +/* 074308 80073708 01505821 */ addu $t3, $t2, $s0 +/* 07430C 8007370C A5620000 */ sh $v0, ($t3) +.L80073710: +/* 074310 80073710 8FAC0040 */ lw $t4, 0x40($sp) +.L80073714: +/* 074314 80073714 26310001 */ addiu $s1, $s1, 1 +/* 074318 80073718 022C082A */ slt $at, $s1, $t4 +/* 07431C 8007371C 1420FFC9 */ bnez $at, .L80073644 +/* 074320 80073720 00000000 */ nop +.L80073724: +/* 074324 80073724 8FAD002C */ lw $t5, 0x2c($sp) +.L80073728: +/* 074328 80073728 8FAF004C */ lw $t7, 0x4c($sp) +/* 07432C 8007372C 31AE0002 */ andi $t6, $t5, 2 +/* 074330 80073730 11C00055 */ beqz $t6, .L80073888 +/* 074334 80073734 25F800C0 */ addiu $t8, $t7, 0xc0 +/* 074338 80073738 3C018012 */ lui $at, %hi(D_801241EC) # $at, 0x8012 +/* 07433C 8007373C AC3841EC */ sw $t8, %lo(D_801241EC)($at) +/* 074340 80073740 3C018012 */ lui $at, %hi(D_801241F0) # $at, 0x8012 +/* 074344 80073744 AC2041F0 */ sw $zero, %lo(D_801241F0)($at) +/* 074348 80073748 3C018012 */ lui $at, %hi(D_801241F4) # $at, 0x8012 +/* 07434C 8007374C AC2041F4 */ sw $zero, %lo(D_801241F4)($at) +/* 074350 80073750 24110002 */ li $s1, 2 +/* 074354 80073754 24100005 */ li $s0, 5 +/* 074358 80073758 27020002 */ addiu $v0, $t8, 2 +.L8007375C: +/* 07435C 8007375C 90590000 */ lbu $t9, ($v0) +/* 074360 80073760 26310001 */ addiu $s1, $s1, 1 +/* 074364 80073764 02198021 */ addu $s0, $s0, $t9 +/* 074368 80073768 2A2100C0 */ slti $at, $s1, 0xc0 +/* 07436C 8007376C 00104400 */ sll $t0, $s0, 0x10 +/* 074370 80073770 24420001 */ addiu $v0, $v0, 1 +/* 074374 80073774 1420FFF9 */ bnez $at, .L8007375C +/* 074378 80073778 00088403 */ sra $s0, $t0, 0x10 +/* 07437C 8007377C 0C01CB15 */ jal func_80072C54 +/* 074380 80073780 24040010 */ li $a0, 16 +/* 074384 80073784 02028023 */ subu $s0, $s0, $v0 +/* 074388 80073788 00105400 */ sll $t2, $s0, 0x10 +/* 07438C 8007378C 000A5C03 */ sra $t3, $t2, 0x10 +/* 074390 80073790 1560003E */ bnez $t3, .L8007388C +/* 074394 80073794 8FBF0024 */ lw $ra, 0x24($sp) +/* 074398 80073798 8FAC0040 */ lw $t4, 0x40($sp) +/* 07439C 8007379C 00008825 */ move $s1, $zero +/* 0743A0 800737A0 1980003A */ blez $t4, .L8007388C +/* 0743A4 800737A4 8FBF0024 */ lw $ra, 0x24($sp) +.L800737A8: +/* 0743A8 800737A8 0C01AC53 */ jal func_8006B14C +/* 0743AC 800737AC 02202025 */ move $a0, $s1 +/* 0743B0 800737B0 14400031 */ bnez $v0, .L80073878 +/* 0743B4 800737B4 8FAB0040 */ lw $t3, 0x40($sp) +/* 0743B8 800737B8 0C01AC3E */ jal func_8006B0F8 +/* 0743BC 800737BC 02202025 */ move $a0, $s1 +/* 0743C0 800737C0 00029400 */ sll $s2, $v0, 0x10 +/* 0743C4 800737C4 00126C03 */ sra $t5, $s2, 0x10 +/* 0743C8 800737C8 30580001 */ andi $t8, $v0, 1 +/* 0743CC 800737CC 1300000D */ beqz $t8, .L80073804 +/* 0743D0 800737D0 01A09025 */ move $s2, $t5 +/* 0743D4 800737D4 24040010 */ li $a0, 16 +/* 0743D8 800737D8 0C01CB15 */ jal func_80072C54 +/* 0743DC 800737DC 00118040 */ sll $s0, $s1, 1 +/* 0743E0 800737E0 8E79003C */ lw $t9, 0x3c($s3) +/* 0743E4 800737E4 24040010 */ li $a0, 16 +/* 0743E8 800737E8 03304021 */ addu $t0, $t9, $s0 +/* 0743EC 800737EC 0C01CB15 */ jal func_80072C54 +/* 0743F0 800737F0 A5020000 */ sh $v0, ($t0) +/* 0743F4 800737F4 8E690030 */ lw $t1, 0x30($s3) +/* 0743F8 800737F8 00000000 */ nop +/* 0743FC 800737FC 01305021 */ addu $t2, $t1, $s0 +/* 074400 80073800 A5420000 */ sh $v0, ($t2) +.L80073804: +/* 074404 80073804 324B0002 */ andi $t3, $s2, 2 +/* 074408 80073808 1160000C */ beqz $t3, .L8007383C +/* 07440C 8007380C 24040010 */ li $a0, 16 +/* 074410 80073810 0C01CB15 */ jal func_80072C54 +/* 074414 80073814 00118040 */ sll $s0, $s1, 1 +/* 074418 80073818 8E6C0040 */ lw $t4, 0x40($s3) +/* 07441C 8007381C 24040010 */ li $a0, 16 +/* 074420 80073820 01906821 */ addu $t5, $t4, $s0 +/* 074424 80073824 0C01CB15 */ jal func_80072C54 +/* 074428 80073828 A5A20000 */ sh $v0, ($t5) +/* 07442C 8007382C 8E6E0034 */ lw $t6, 0x34($s3) +/* 074430 80073830 00000000 */ nop +/* 074434 80073834 01D07821 */ addu $t7, $t6, $s0 +/* 074438 80073838 A5E20000 */ sh $v0, ($t7) +.L8007383C: +/* 07443C 8007383C 32580004 */ andi $t8, $s2, 4 +/* 074440 80073840 1300000C */ beqz $t8, .L80073874 +/* 074444 80073844 24040010 */ li $a0, 16 +/* 074448 80073848 0C01CB15 */ jal func_80072C54 +/* 07444C 8007384C 00118040 */ sll $s0, $s1, 1 +/* 074450 80073850 8E790044 */ lw $t9, 0x44($s3) +/* 074454 80073854 24040010 */ li $a0, 16 +/* 074458 80073858 03304021 */ addu $t0, $t9, $s0 +/* 07445C 8007385C 0C01CB15 */ jal func_80072C54 +/* 074460 80073860 A5020000 */ sh $v0, ($t0) +/* 074464 80073864 8E690038 */ lw $t1, 0x38($s3) +/* 074468 80073868 00000000 */ nop +/* 07446C 8007386C 01305021 */ addu $t2, $t1, $s0 +/* 074470 80073870 A5420000 */ sh $v0, ($t2) +.L80073874: +/* 074474 80073874 8FAB0040 */ lw $t3, 0x40($sp) +.L80073878: +/* 074478 80073878 26310001 */ addiu $s1, $s1, 1 +/* 07447C 8007387C 022B082A */ slt $at, $s1, $t3 +/* 074480 80073880 1420FFC9 */ bnez $at, .L800737A8 +/* 074484 80073884 00000000 */ nop +.L80073888: +/* 074488 80073888 8FBF0024 */ lw $ra, 0x24($sp) +.L8007388C: +/* 07448C 8007388C 8FB00014 */ lw $s0, 0x14($sp) +/* 074490 80073890 8FB10018 */ lw $s1, 0x18($sp) +/* 074494 80073894 8FB2001C */ lw $s2, 0x1c($sp) +/* 074498 80073898 8FB30020 */ lw $s3, 0x20($sp) +/* 07449C 8007389C 03E00008 */ jr $ra +/* 0744A0 800738A0 27BD0048 */ addiu $sp, $sp, 0x48 + diff --git a/asm/non_matchings/unknown_072E50/func_800738A4.s b/asm/non_matchings/unknown_072E50/func_800738A4.s new file mode 100644 index 00000000..a9acb3bb --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_800738A4.s @@ -0,0 +1,250 @@ +glabel func_800738A4 +/* 0744A4 800738A4 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 0744A8 800738A8 AFB40028 */ sw $s4, 0x28($sp) +/* 0744AC 800738AC 0080A025 */ move $s4, $a0 +/* 0744B0 800738B0 AFBF002C */ sw $ra, 0x2c($sp) +/* 0744B4 800738B4 AFA50054 */ sw $a1, 0x54($sp) +/* 0744B8 800738B8 AFB30024 */ sw $s3, 0x24($sp) +/* 0744BC 800738BC AFB20020 */ sw $s2, 0x20($sp) +/* 0744C0 800738C0 AFB1001C */ sw $s1, 0x1c($sp) +/* 0744C4 800738C4 AFB00018 */ sw $s0, 0x18($sp) +/* 0744C8 800738C8 27A50044 */ addiu $a1, $sp, 0x44 +/* 0744CC 800738CC 0C01AC89 */ jal func_8006B224 +/* 0744D0 800738D0 27A40048 */ addiu $a0, $sp, 0x48 +/* 0744D4 800738D4 8FAE0054 */ lw $t6, 0x54($sp) +/* 0744D8 800738D8 3C018012 */ lui $at, %hi(D_801241EC) # $at, 0x8012 +/* 0744DC 800738DC AC2E41EC */ sw $t6, %lo(D_801241EC)($at) +/* 0744E0 800738E0 3C018012 */ lui $at, %hi(D_801241F0) # $at, 0x8012 +/* 0744E4 800738E4 AC2041F0 */ sw $zero, %lo(D_801241F0)($at) +/* 0744E8 800738E8 3C018012 */ lui $at, %hi(D_801241F4) # $at, 0x8012 +/* 0744EC 800738EC 240F0080 */ li $t7, 128 +/* 0744F0 800738F0 AC2F41F4 */ sw $t7, %lo(D_801241F4)($at) +/* 0744F4 800738F4 24040010 */ li $a0, 16 +/* 0744F8 800738F8 0C01CB8A */ jal func_80072E28 +/* 0744FC 800738FC 00002825 */ move $a1, $zero +/* 074500 80073900 8FB80048 */ lw $t8, 0x48($sp) +/* 074504 80073904 00009025 */ move $s2, $zero +/* 074508 80073908 1B000043 */ blez $t8, .L80073A18 +/* 07450C 8007390C 00008825 */ move $s1, $zero +.L80073910: +/* 074510 80073910 0C01AC53 */ jal func_8006B14C +/* 074514 80073914 02202025 */ move $a0, $s1 +/* 074518 80073918 1440003B */ bnez $v0, .L80073A08 +/* 07451C 8007391C 8FAF0048 */ lw $t7, 0x48($sp) +/* 074520 80073920 0C01AC3E */ jal func_8006B0F8 +/* 074524 80073924 02202025 */ move $a0, $s1 +/* 074528 80073928 00029C00 */ sll $s3, $v0, 0x10 +/* 07452C 8007392C 0013CC03 */ sra $t9, $s3, 0x10 +/* 074530 80073930 304A0001 */ andi $t2, $v0, 1 +/* 074534 80073934 1140000E */ beqz $t2, .L80073970 +/* 074538 80073938 03209825 */ move $s3, $t9 +/* 07453C 8007393C 8E8B0024 */ lw $t3, 0x24($s4) +/* 074540 80073940 00118040 */ sll $s0, $s1, 1 +/* 074544 80073944 01706021 */ addu $t4, $t3, $s0 +/* 074548 80073948 95850000 */ lhu $a1, ($t4) +/* 07454C 8007394C 0C01CB8A */ jal func_80072E28 +/* 074550 80073950 24040010 */ li $a0, 16 +/* 074554 80073954 8E8D0018 */ lw $t5, 0x18($s4) +/* 074558 80073958 24040010 */ li $a0, 16 +/* 07455C 8007395C 01B07021 */ addu $t6, $t5, $s0 +/* 074560 80073960 95C50000 */ lhu $a1, ($t6) +/* 074564 80073964 0C01CB8A */ jal func_80072E28 +/* 074568 80073968 00000000 */ nop +/* 07456C 8007396C 26520001 */ addiu $s2, $s2, 1 +.L80073970: +/* 074570 80073970 326F0002 */ andi $t7, $s3, 2 +/* 074574 80073974 11E0000F */ beqz $t7, .L800739B4 +/* 074578 80073978 326A0004 */ andi $t2, $s3, 4 +/* 07457C 8007397C 8E980028 */ lw $t8, 0x28($s4) +/* 074580 80073980 00118040 */ sll $s0, $s1, 1 +/* 074584 80073984 0310C821 */ addu $t9, $t8, $s0 +/* 074588 80073988 97250000 */ lhu $a1, ($t9) +/* 07458C 8007398C 0C01CB8A */ jal func_80072E28 +/* 074590 80073990 24040010 */ li $a0, 16 +/* 074594 80073994 8E88001C */ lw $t0, 0x1c($s4) +/* 074598 80073998 24040010 */ li $a0, 16 +/* 07459C 8007399C 01104821 */ addu $t1, $t0, $s0 +/* 0745A0 800739A0 95250000 */ lhu $a1, ($t1) +/* 0745A4 800739A4 0C01CB8A */ jal func_80072E28 +/* 0745A8 800739A8 00000000 */ nop +/* 0745AC 800739AC 26520001 */ addiu $s2, $s2, 1 +/* 0745B0 800739B0 326A0004 */ andi $t2, $s3, 4 +.L800739B4: +/* 0745B4 800739B4 1140000F */ beqz $t2, .L800739F4 +/* 0745B8 800739B8 2A410030 */ slti $at, $s2, 0x30 +/* 0745BC 800739BC 8E8B002C */ lw $t3, 0x2c($s4) +/* 0745C0 800739C0 00118040 */ sll $s0, $s1, 1 +/* 0745C4 800739C4 01706021 */ addu $t4, $t3, $s0 +/* 0745C8 800739C8 95850000 */ lhu $a1, ($t4) +/* 0745CC 800739CC 0C01CB8A */ jal func_80072E28 +/* 0745D0 800739D0 24040010 */ li $a0, 16 +/* 0745D4 800739D4 8E8D0020 */ lw $t5, 0x20($s4) +/* 0745D8 800739D8 24040010 */ li $a0, 16 +/* 0745DC 800739DC 01B07021 */ addu $t6, $t5, $s0 +/* 0745E0 800739E0 95C50000 */ lhu $a1, ($t6) +/* 0745E4 800739E4 0C01CB8A */ jal func_80072E28 +/* 0745E8 800739E8 00000000 */ nop +/* 0745EC 800739EC 26520001 */ addiu $s2, $s2, 1 +/* 0745F0 800739F0 2A410030 */ slti $at, $s2, 0x30 +.L800739F4: +/* 0745F4 800739F4 14200004 */ bnez $at, .L80073A08 +/* 0745F8 800739F8 8FAF0048 */ lw $t7, 0x48($sp) +/* 0745FC 800739FC 10000007 */ b .L80073A1C +/* 074600 80073A00 8FB80054 */ lw $t8, 0x54($sp) +/* 074604 80073A04 8FAF0048 */ lw $t7, 0x48($sp) +.L80073A08: +/* 074608 80073A08 26310001 */ addiu $s1, $s1, 1 +/* 07460C 80073A0C 022F082A */ slt $at, $s1, $t7 +/* 074610 80073A10 1420FFBF */ bnez $at, .L80073910 +/* 074614 80073A14 00000000 */ nop +.L80073A18: +/* 074618 80073A18 8FB80054 */ lw $t8, 0x54($sp) +.L80073A1C: +/* 07461C 80073A1C 3C018012 */ lui $at, %hi(D_801241EC) # $at, 0x8012 +/* 074620 80073A20 AC3841EC */ sw $t8, %lo(D_801241EC)($at) +/* 074624 80073A24 3C018012 */ lui $at, %hi(D_801241F0) # $at, 0x8012 +/* 074628 80073A28 AC2041F0 */ sw $zero, %lo(D_801241F0)($at) +/* 07462C 80073A2C 3C018012 */ lui $at, %hi(D_801241F4) # $at, 0x8012 +/* 074630 80073A30 24190080 */ li $t9, 128 +/* 074634 80073A34 AC3941F4 */ sw $t9, %lo(D_801241F4)($at) +/* 074638 80073A38 24110002 */ li $s1, 2 +/* 07463C 80073A3C 24030005 */ li $v1, 5 +/* 074640 80073A40 27020002 */ addiu $v0, $t8, 2 +.L80073A44: +/* 074644 80073A44 90480000 */ lbu $t0, ($v0) +/* 074648 80073A48 26310001 */ addiu $s1, $s1, 1 +/* 07464C 80073A4C 00681821 */ addu $v1, $v1, $t0 +/* 074650 80073A50 00034C00 */ sll $t1, $v1, 0x10 +/* 074654 80073A54 2A2100C0 */ slti $at, $s1, 0xc0 +/* 074658 80073A58 00095403 */ sra $t2, $t1, 0x10 +/* 07465C 80073A5C 24420001 */ addiu $v0, $v0, 1 +/* 074660 80073A60 1420FFF8 */ bnez $at, .L80073A44 +/* 074664 80073A64 01401825 */ move $v1, $t2 +/* 074668 80073A68 24040010 */ li $a0, 16 +/* 07466C 80073A6C 0C01CB8A */ jal func_80072E28 +/* 074670 80073A70 01402825 */ move $a1, $t2 +/* 074674 80073A74 8FB20054 */ lw $s2, 0x54($sp) +/* 074678 80073A78 3C018012 */ lui $at, %hi(D_801241EC) # $at, 0x8012 +/* 07467C 80073A7C 265200C0 */ addiu $s2, $s2, 0xc0 +/* 074680 80073A80 AC3241EC */ sw $s2, %lo(D_801241EC)($at) +/* 074684 80073A84 3C018012 */ lui $at, %hi(D_801241F0) # $at, 0x8012 +/* 074688 80073A88 AC2041F0 */ sw $zero, %lo(D_801241F0)($at) +/* 07468C 80073A8C 3C018012 */ lui $at, %hi(D_801241F4) # $at, 0x8012 +/* 074690 80073A90 240B0080 */ li $t3, 128 +/* 074694 80073A94 AC2B41F4 */ sw $t3, %lo(D_801241F4)($at) +/* 074698 80073A98 24040010 */ li $a0, 16 +/* 07469C 80073A9C 0C01CB8A */ jal func_80072E28 +/* 0746A0 80073AA0 00002825 */ move $a1, $zero +/* 0746A4 80073AA4 8FAC0048 */ lw $t4, 0x48($sp) +/* 0746A8 80073AA8 00008825 */ move $s1, $zero +/* 0746AC 80073AAC 1980003B */ blez $t4, .L80073B9C +/* 0746B0 80073AB0 00000000 */ nop +.L80073AB4: +/* 0746B4 80073AB4 0C01AC53 */ jal func_8006B14C +/* 0746B8 80073AB8 02202025 */ move $a0, $s1 +/* 0746BC 80073ABC 14400033 */ bnez $v0, .L80073B8C +/* 0746C0 80073AC0 8FAB0048 */ lw $t3, 0x48($sp) +/* 0746C4 80073AC4 0C01AC3E */ jal func_8006B0F8 +/* 0746C8 80073AC8 02202025 */ move $a0, $s1 +/* 0746CC 80073ACC 00029C00 */ sll $s3, $v0, 0x10 +/* 0746D0 80073AD0 00136C03 */ sra $t5, $s3, 0x10 +/* 0746D4 80073AD4 30590001 */ andi $t9, $v0, 1 +/* 0746D8 80073AD8 1320000D */ beqz $t9, .L80073B10 +/* 0746DC 80073ADC 01A09825 */ move $s3, $t5 +/* 0746E0 80073AE0 8E98003C */ lw $t8, 0x3c($s4) +/* 0746E4 80073AE4 00118040 */ sll $s0, $s1, 1 +/* 0746E8 80073AE8 03104021 */ addu $t0, $t8, $s0 +/* 0746EC 80073AEC 95050000 */ lhu $a1, ($t0) +/* 0746F0 80073AF0 0C01CB8A */ jal func_80072E28 +/* 0746F4 80073AF4 24040010 */ li $a0, 16 +/* 0746F8 80073AF8 8E890030 */ lw $t1, 0x30($s4) +/* 0746FC 80073AFC 24040010 */ li $a0, 16 +/* 074700 80073B00 01305021 */ addu $t2, $t1, $s0 +/* 074704 80073B04 95450000 */ lhu $a1, ($t2) +/* 074708 80073B08 0C01CB8A */ jal func_80072E28 +/* 07470C 80073B0C 00000000 */ nop +.L80073B10: +/* 074710 80073B10 326B0002 */ andi $t3, $s3, 2 +/* 074714 80073B14 1160000E */ beqz $t3, .L80073B50 +/* 074718 80073B18 32790004 */ andi $t9, $s3, 4 +/* 07471C 80073B1C 8E8C0040 */ lw $t4, 0x40($s4) +/* 074720 80073B20 00118040 */ sll $s0, $s1, 1 +/* 074724 80073B24 01906821 */ addu $t5, $t4, $s0 +/* 074728 80073B28 95A50000 */ lhu $a1, ($t5) +/* 07472C 80073B2C 0C01CB8A */ jal func_80072E28 +/* 074730 80073B30 24040010 */ li $a0, 16 +/* 074734 80073B34 8E8E0034 */ lw $t6, 0x34($s4) +/* 074738 80073B38 24040010 */ li $a0, 16 +/* 07473C 80073B3C 01D07821 */ addu $t7, $t6, $s0 +/* 074740 80073B40 95E50000 */ lhu $a1, ($t7) +/* 074744 80073B44 0C01CB8A */ jal func_80072E28 +/* 074748 80073B48 00000000 */ nop +/* 07474C 80073B4C 32790004 */ andi $t9, $s3, 4 +.L80073B50: +/* 074750 80073B50 1320000E */ beqz $t9, .L80073B8C +/* 074754 80073B54 8FAB0048 */ lw $t3, 0x48($sp) +/* 074758 80073B58 8E980044 */ lw $t8, 0x44($s4) +/* 07475C 80073B5C 00118040 */ sll $s0, $s1, 1 +/* 074760 80073B60 03104021 */ addu $t0, $t8, $s0 +/* 074764 80073B64 95050000 */ lhu $a1, ($t0) +/* 074768 80073B68 0C01CB8A */ jal func_80072E28 +/* 07476C 80073B6C 24040010 */ li $a0, 16 +/* 074770 80073B70 8E890038 */ lw $t1, 0x38($s4) +/* 074774 80073B74 24040010 */ li $a0, 16 +/* 074778 80073B78 01305021 */ addu $t2, $t1, $s0 +/* 07477C 80073B7C 95450000 */ lhu $a1, ($t2) +/* 074780 80073B80 0C01CB8A */ jal func_80072E28 +/* 074784 80073B84 00000000 */ nop +/* 074788 80073B88 8FAB0048 */ lw $t3, 0x48($sp) +.L80073B8C: +/* 07478C 80073B8C 26310001 */ addiu $s1, $s1, 1 +/* 074790 80073B90 022B082A */ slt $at, $s1, $t3 +/* 074794 80073B94 1420FFC7 */ bnez $at, .L80073AB4 +/* 074798 80073B98 00000000 */ nop +.L80073B9C: +/* 07479C 80073B9C 3C018012 */ lui $at, %hi(D_801241EC) # $at, 0x8012 +/* 0747A0 80073BA0 AC3241EC */ sw $s2, %lo(D_801241EC)($at) +/* 0747A4 80073BA4 3C018012 */ lui $at, %hi(D_801241F0) # $at, 0x8012 +/* 0747A8 80073BA8 3C048012 */ lui $a0, %hi(D_801241EC) # $a0, 0x8012 +/* 0747AC 80073BAC 8C8441EC */ lw $a0, %lo(D_801241EC)($a0) +/* 0747B0 80073BB0 AC2041F0 */ sw $zero, %lo(D_801241F0)($at) +/* 0747B4 80073BB4 3C018012 */ lui $at, %hi(D_801241F4) # $at, 0x8012 +/* 0747B8 80073BB8 240C0080 */ li $t4, 128 +/* 0747BC 80073BBC AC2C41F4 */ sw $t4, %lo(D_801241F4)($at) +/* 0747C0 80073BC0 24850002 */ addiu $a1, $a0, 2 +/* 0747C4 80073BC4 90A30000 */ lbu $v1, ($a1) +/* 0747C8 80073BC8 90AF0001 */ lbu $t7, 1($a1) +/* 0747CC 80073BCC 246E0005 */ addiu $t6, $v1, 5 +/* 0747D0 80073BD0 01CF1821 */ addu $v1, $t6, $t7 +/* 0747D4 80073BD4 0003CC00 */ sll $t9, $v1, 0x10 +/* 0747D8 80073BD8 24820004 */ addiu $v0, $a0, 4 +/* 0747DC 80073BDC 240400C0 */ li $a0, 192 +/* 0747E0 80073BE0 00191C03 */ sra $v1, $t9, 0x10 +/* 0747E4 80073BE4 24110004 */ li $s1, 4 +.L80073BE8: +/* 0747E8 80073BE8 90480000 */ lbu $t0, ($v0) +/* 0747EC 80073BEC 904B0001 */ lbu $t3, 1($v0) +/* 0747F0 80073BF0 904E0002 */ lbu $t6, 2($v0) +/* 0747F4 80073BF4 00685021 */ addu $t2, $v1, $t0 +/* 0747F8 80073BF8 90580003 */ lbu $t8, 3($v0) +/* 0747FC 80073BFC 014B6821 */ addu $t5, $t2, $t3 +/* 074800 80073C00 01AEC821 */ addu $t9, $t5, $t6 +/* 074804 80073C04 03381821 */ addu $v1, $t9, $t8 +/* 074808 80073C08 00034400 */ sll $t0, $v1, 0x10 +/* 07480C 80073C0C 00084C03 */ sra $t1, $t0, 0x10 +/* 074810 80073C10 26310004 */ addiu $s1, $s1, 4 +/* 074814 80073C14 01201825 */ move $v1, $t1 +/* 074818 80073C18 1624FFF3 */ bne $s1, $a0, .L80073BE8 +/* 07481C 80073C1C 24420004 */ addiu $v0, $v0, 4 +/* 074820 80073C20 24040010 */ li $a0, 16 +/* 074824 80073C24 0C01CB8A */ jal func_80072E28 +/* 074828 80073C28 01202825 */ move $a1, $t1 +/* 07482C 80073C2C 8FBF002C */ lw $ra, 0x2c($sp) +/* 074830 80073C30 8FB00018 */ lw $s0, 0x18($sp) +/* 074834 80073C34 8FB1001C */ lw $s1, 0x1c($sp) +/* 074838 80073C38 8FB20020 */ lw $s2, 0x20($sp) +/* 07483C 80073C3C 8FB30024 */ lw $s3, 0x24($sp) +/* 074840 80073C40 8FB40028 */ lw $s4, 0x28($sp) +/* 074844 80073C44 03E00008 */ jr $ra +/* 074848 80073C48 27BD0050 */ addiu $sp, $sp, 0x50 + diff --git a/asm/non_matchings/unknown_072E50/func_80073C4C.s b/asm/non_matchings/unknown_072E50/func_80073C4C.s new file mode 100644 index 00000000..c83da225 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80073C4C.s @@ -0,0 +1,4 @@ +glabel func_80073C4C +/* 07484C 80073C4C 03E00008 */ jr $ra +/* 074850 80073C50 24020100 */ li $v0, 256 + diff --git a/asm/non_matchings/unknown_072E50/func_80073C54.s b/asm/non_matchings/unknown_072E50/func_80073C54.s new file mode 100644 index 00000000..59017055 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80073C54.s @@ -0,0 +1,4 @@ +glabel func_80073C54 +/* 074854 80073C54 03E00008 */ jr $ra +/* 074858 80073C58 24020200 */ li $v0, 512 + diff --git a/asm/non_matchings/unknown_072E50/func_80073C5C.s b/asm/non_matchings/unknown_072E50/func_80073C5C.s new file mode 100644 index 00000000..7c88e3b1 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80073C5C.s @@ -0,0 +1,126 @@ +glabel func_80073C5C +/* 07485C 80073C5C 27BDFEC0 */ addiu $sp, $sp, -0x140 +/* 074860 80073C60 AFBF0044 */ sw $ra, 0x44($sp) +/* 074864 80073C64 AFB20028 */ sw $s2, 0x28($sp) +/* 074868 80073C68 AFB10024 */ sw $s1, 0x24($sp) +/* 07486C 80073C6C AFA50144 */ sw $a1, 0x144($sp) +/* 074870 80073C70 AFA60148 */ sw $a2, 0x148($sp) +/* 074874 80073C74 27AE0070 */ addiu $t6, $sp, 0x70 +/* 074878 80073C78 27AF00B0 */ addiu $t7, $sp, 0xb0 +/* 07487C 80073C7C AFBE0040 */ sw $fp, 0x40($sp) +/* 074880 80073C80 AFB7003C */ sw $s7, 0x3c($sp) +/* 074884 80073C84 AFB60038 */ sw $s6, 0x38($sp) +/* 074888 80073C88 AFB50034 */ sw $s5, 0x34($sp) +/* 07488C 80073C8C AFB40030 */ sw $s4, 0x30($sp) +/* 074890 80073C90 AFB3002C */ sw $s3, 0x2c($sp) +/* 074894 80073C94 AFB00020 */ sw $s0, 0x20($sp) +/* 074898 80073C98 24120020 */ li $s2, 32 +/* 07489C 80073C9C 00008825 */ move $s1, $zero +/* 0748A0 80073CA0 AFAF0014 */ sw $t7, 0x14($sp) +/* 0748A4 80073CA4 AFAE0010 */ sw $t6, 0x10($sp) +/* 0748A8 80073CA8 27A60100 */ addiu $a2, $sp, 0x100 +/* 0748AC 80073CAC 24050010 */ li $a1, 16 +/* 0748B0 80073CB0 0C01D798 */ jal func_80075E60 +/* 0748B4 80073CB4 27A700C0 */ addiu $a3, $sp, 0xc0 +/* 0748B8 80073CB8 1440004B */ bnez $v0, .L80073DE8 +/* 0748BC 80073CBC AFA20060 */ sw $v0, 0x60($sp) +/* 0748C0 80073CC0 3C1E800E */ lui $fp, %hi(D_800E7630) # $fp, 0x800e +/* 0748C4 80073CC4 3C17800E */ lui $s7, %hi(D_800E7640) # $s7, 0x800e +/* 0748C8 80073CC8 26F77640 */ addiu $s7, %lo(D_800E7640) # addiu $s7, $s7, 0x7640 +/* 0748CC 80073CCC 27DE7630 */ addiu $fp, %lo(D_800E7630) # addiu $fp, $fp, 0x7630 +/* 0748D0 80073CD0 00009825 */ move $s3, $zero +/* 0748D4 80073CD4 27B00100 */ addiu $s0, $sp, 0x100 +/* 0748D8 80073CD8 0240A025 */ move $s4, $s2 +/* 0748DC 80073CDC 24160003 */ li $s6, 3 +/* 0748E0 80073CE0 27B50140 */ addiu $s5, $sp, 0x140 +.L80073CE4: +/* 0748E4 80073CE4 8E180000 */ lw $t8, ($s0) +/* 0748E8 80073CE8 8FB90144 */ lw $t9, 0x144($sp) +/* 0748EC 80073CEC 13000022 */ beqz $t8, .L80073D78 +/* 0748F0 80073CF0 00000000 */ nop +/* 0748F4 80073CF4 1736000B */ bne $t9, $s6, .L80073D24 +/* 0748F8 80073CF8 3C04800E */ lui $a0, 0x800e +/* 0748FC 80073CFC 0C033867 */ jal strlen +/* 074900 80073D00 02E02025 */ move $a0, $s7 +/* 074904 80073D04 8E040000 */ lw $a0, ($s0) +/* 074908 80073D08 03C02825 */ move $a1, $fp +/* 07490C 80073D0C 0C033814 */ jal func_800CE050 +/* 074910 80073D10 00403025 */ move $a2, $v0 +/* 074914 80073D14 1040000C */ beqz $v0, .L80073D48 +/* 074918 80073D18 03B34021 */ addu $t0, $sp, $s3 +/* 07491C 80073D1C 10000017 */ b .L80073D7C +/* 074920 80073D20 26100004 */ addiu $s0, $s0, 4 +.L80073D24: +/* 074924 80073D24 0C033867 */ jal strlen +/* 074928 80073D28 24847660 */ addiu $a0, $a0, 0x7660 +/* 07492C 80073D2C 8E040000 */ lw $a0, ($s0) +/* 074930 80073D30 3C05800E */ lui $a1, %hi(D_800E7650) # $a1, 0x800e +/* 074934 80073D34 24A57650 */ addiu $a1, %lo(D_800E7650) # addiu $a1, $a1, 0x7650 +/* 074938 80073D38 0C033814 */ jal func_800CE050 +/* 07493C 80073D3C 00403025 */ move $a2, $v0 +/* 074940 80073D40 1440000D */ bnez $v0, .L80073D78 +/* 074944 80073D44 03B34021 */ addu $t0, $sp, $s3 +.L80073D48: +/* 074948 80073D48 8D0800C0 */ lw $t0, 0xc0($t0) +/* 07494C 80073D4C 240A0001 */ li $t2, 1 +/* 074950 80073D50 91020000 */ lbu $v0, ($t0) +/* 074954 80073D54 00000000 */ nop +/* 074958 80073D58 0282082A */ slt $at, $s4, $v0 +/* 07495C 80073D5C 10200003 */ beqz $at, .L80073D6C +/* 074960 80073D60 00401825 */ move $v1, $v0 +/* 074964 80073D64 305200FF */ andi $s2, $v0, 0xff +/* 074968 80073D68 0240A025 */ move $s4, $s2 +.L80073D6C: +/* 07496C 80073D6C 2469001F */ addiu $t1, $v1, 0x1f +/* 074970 80073D70 012A5804 */ sllv $t3, $t2, $t1 +/* 074974 80073D74 022B8825 */ or $s1, $s1, $t3 +.L80073D78: +/* 074978 80073D78 26100004 */ addiu $s0, $s0, 4 +.L80073D7C: +/* 07497C 80073D7C 1615FFD9 */ bne $s0, $s5, .L80073CE4 +/* 074980 80073D80 26730004 */ addiu $s3, $s3, 4 +/* 074984 80073D84 24010020 */ li $at, 32 +/* 074988 80073D88 8FA20148 */ lw $v0, 0x148($sp) +/* 07498C 80073D8C 16810004 */ bne $s4, $at, .L80073DA0 +/* 074990 80073D90 2401005A */ li $at, 90 +/* 074994 80073D94 10000012 */ b .L80073DE0 +/* 074998 80073D98 24120041 */ li $s2, 65 +/* 07499C 80073D9C 2401005A */ li $at, 90 +.L80073DA0: +/* 0749A0 80073DA0 1681000D */ bne $s4, $at, .L80073DD8 +/* 0749A4 80073DA4 26520001 */ addiu $s2, $s2, 1 +/* 0749A8 80073DA8 24120041 */ li $s2, 65 +.L80073DAC: +/* 0749AC 80073DAC 322C0001 */ andi $t4, $s1, 1 +/* 0749B0 80073DB0 1180000B */ beqz $t4, .L80073DE0 +/* 0749B4 80073DB4 00116843 */ sra $t5, $s1, 1 +/* 0749B8 80073DB8 26520001 */ addiu $s2, $s2, 1 +/* 0749BC 80073DBC 324E00FF */ andi $t6, $s2, 0xff +/* 0749C0 80073DC0 29C1005B */ slti $at, $t6, 0x5b +/* 0749C4 80073DC4 01C09025 */ move $s2, $t6 +/* 0749C8 80073DC8 1420FFF8 */ bnez $at, .L80073DAC +/* 0749CC 80073DCC 01A08825 */ move $s1, $t5 +/* 0749D0 80073DD0 10000004 */ b .L80073DE4 +/* 0749D4 80073DD4 A0520000 */ sb $s2, ($v0) +.L80073DD8: +/* 0749D8 80073DD8 324F00FF */ andi $t7, $s2, 0xff +/* 0749DC 80073DDC 01E09025 */ move $s2, $t7 +.L80073DE0: +/* 0749E0 80073DE0 A0520000 */ sb $s2, ($v0) +.L80073DE4: +/* 0749E4 80073DE4 A0400001 */ sb $zero, 1($v0) +.L80073DE8: +/* 0749E8 80073DE8 8FBF0044 */ lw $ra, 0x44($sp) +/* 0749EC 80073DEC 8FA20060 */ lw $v0, 0x60($sp) +/* 0749F0 80073DF0 8FB00020 */ lw $s0, 0x20($sp) +/* 0749F4 80073DF4 8FB10024 */ lw $s1, 0x24($sp) +/* 0749F8 80073DF8 8FB20028 */ lw $s2, 0x28($sp) +/* 0749FC 80073DFC 8FB3002C */ lw $s3, 0x2c($sp) +/* 074A00 80073E00 8FB40030 */ lw $s4, 0x30($sp) +/* 074A04 80073E04 8FB50034 */ lw $s5, 0x34($sp) +/* 074A08 80073E08 8FB60038 */ lw $s6, 0x38($sp) +/* 074A0C 80073E0C 8FB7003C */ lw $s7, 0x3c($sp) +/* 074A10 80073E10 8FBE0040 */ lw $fp, 0x40($sp) +/* 074A14 80073E14 03E00008 */ jr $ra +/* 074A18 80073E18 27BD0140 */ addiu $sp, $sp, 0x140 + diff --git a/asm/non_matchings/unknown_072E50/func_80073E1C.s b/asm/non_matchings/unknown_072E50/func_80073E1C.s new file mode 100644 index 00000000..ae69dee0 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80073E1C.s @@ -0,0 +1,88 @@ +glabel func_80073E1C +/* 074A1C 80073E1C 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 074A20 80073E20 AFBF001C */ sw $ra, 0x1c($sp) +/* 074A24 80073E24 AFB00018 */ sw $s0, 0x18($sp) +/* 074A28 80073E28 00808025 */ move $s0, $a0 +/* 074A2C 80073E2C AFA50034 */ sw $a1, 0x34($sp) +/* 074A30 80073E30 0C01D637 */ jal func_800758DC +/* 074A34 80073E34 AFA60038 */ sw $a2, 0x38($sp) +/* 074A38 80073E38 10400008 */ beqz $v0, .L80073E5C +/* 074A3C 80073E3C 02002025 */ move $a0, $s0 +/* 074A40 80073E40 02002025 */ move $a0, $s0 +/* 074A44 80073E44 0C01D6BB */ jal func_80075AEC +/* 074A48 80073E48 AFA20028 */ sw $v0, 0x28($sp) +/* 074A4C 80073E4C 8FA30028 */ lw $v1, 0x28($sp) +/* 074A50 80073E50 00107780 */ sll $t6, $s0, 0x1e +/* 074A54 80073E54 1000003D */ b .L80073F4C +/* 074A58 80073E58 01C31025 */ or $v0, $t6, $v1 +.L80073E5C: +/* 074A5C 80073E5C 3C05800E */ lui $a1, %hi(D_800E7670) # $a1, 0x800e +/* 074A60 80073E60 8FA60034 */ lw $a2, 0x34($sp) +/* 074A64 80073E64 24A57670 */ addiu $a1, %lo(D_800E7670) # addiu $a1, $a1, 0x7670 +/* 074A68 80073E68 0C01D93A */ jal func_800764E8 +/* 074A6C 80073E6C 27A70024 */ addiu $a3, $sp, 0x24 +/* 074A70 80073E70 1440002D */ bnez $v0, .L80073F28 +/* 074A74 80073E74 00401825 */ move $v1, $v0 +/* 074A78 80073E78 8FA50024 */ lw $a1, 0x24($sp) +/* 074A7C 80073E7C 02002025 */ move $a0, $s0 +/* 074A80 80073E80 0C01DA49 */ jal func_80076924 +/* 074A84 80073E84 27A60020 */ addiu $a2, $sp, 0x20 +/* 074A88 80073E88 8FA40020 */ lw $a0, 0x20($sp) +/* 074A8C 80073E8C 00401825 */ move $v1, $v0 +/* 074A90 80073E90 14800002 */ bnez $a0, .L80073E9C +/* 074A94 80073E94 00000000 */ nop +/* 074A98 80073E98 24030009 */ li $v1, 9 +.L80073E9C: +/* 074A9C 80073E9C 14600022 */ bnez $v1, .L80073F28 +/* 074AA0 80073EA0 00000000 */ nop +/* 074AA4 80073EA4 0C01C327 */ jal func_80070C9C +/* 074AA8 80073EA8 240500FF */ li $a1, 255 +/* 074AAC 80073EAC 8FA50024 */ lw $a1, 0x24($sp) +/* 074AB0 80073EB0 8FA70020 */ lw $a3, 0x20($sp) +/* 074AB4 80073EB4 AFA2002C */ sw $v0, 0x2c($sp) +/* 074AB8 80073EB8 02002025 */ move $a0, $s0 +/* 074ABC 80073EBC 0C01D984 */ jal func_80076610 +/* 074AC0 80073EC0 00403025 */ move $a2, $v0 +/* 074AC4 80073EC4 14400013 */ bnez $v0, .L80073F14 +/* 074AC8 80073EC8 00401825 */ move $v1, $v0 +/* 074ACC 80073ECC 8FA6002C */ lw $a2, 0x2c($sp) +/* 074AD0 80073ED0 3C014741 */ lui $at, (0x47414D44 >> 16) # lui $at, 0x4741 +/* 074AD4 80073ED4 8CCF0000 */ lw $t7, ($a2) +/* 074AD8 80073ED8 34214D44 */ ori $at, (0x47414D44 & 0xFFFF) # ori $at, $at, 0x4d44 +/* 074ADC 80073EDC 15E1000D */ bne $t7, $at, .L80073F14 +/* 074AE0 80073EE0 24030009 */ li $v1, 9 +/* 074AE4 80073EE4 8FA40038 */ lw $a0, 0x38($sp) +/* 074AE8 80073EE8 24C50004 */ addiu $a1, $a2, 4 +/* 074AEC 80073EEC 0C01CC1B */ jal func_8007306C +/* 074AF0 80073EF0 AFA20028 */ sw $v0, 0x28($sp) +/* 074AF4 80073EF4 8FB80038 */ lw $t8, 0x38($sp) +/* 074AF8 80073EF8 8FA30028 */ lw $v1, 0x28($sp) +/* 074AFC 80073EFC 9319004B */ lbu $t9, 0x4b($t8) +/* 074B00 80073F00 00000000 */ nop +/* 074B04 80073F04 13200004 */ beqz $t9, .L80073F18 +/* 074B08 80073F08 8FA4002C */ lw $a0, 0x2c($sp) +/* 074B0C 80073F0C 10000001 */ b .L80073F14 +/* 074B10 80073F10 24030005 */ li $v1, 5 +.L80073F14: +/* 074B14 80073F14 8FA4002C */ lw $a0, 0x2c($sp) +.L80073F18: +/* 074B18 80073F18 0C01C450 */ jal func_80071140 +/* 074B1C 80073F1C AFA30028 */ sw $v1, 0x28($sp) +/* 074B20 80073F20 8FA30028 */ lw $v1, 0x28($sp) +/* 074B24 80073F24 00000000 */ nop +.L80073F28: +/* 074B28 80073F28 02002025 */ move $a0, $s0 +/* 074B2C 80073F2C 0C01D6BB */ jal func_80075AEC +/* 074B30 80073F30 AFA30028 */ sw $v1, 0x28($sp) +/* 074B34 80073F34 8FA30028 */ lw $v1, 0x28($sp) +/* 074B38 80073F38 00104780 */ sll $t0, $s0, 0x1e +/* 074B3C 80073F3C 10600003 */ beqz $v1, .L80073F4C +/* 074B40 80073F40 00601025 */ move $v0, $v1 +/* 074B44 80073F44 00681825 */ or $v1, $v1, $t0 +/* 074B48 80073F48 00601025 */ move $v0, $v1 +.L80073F4C: +/* 074B4C 80073F4C 8FBF001C */ lw $ra, 0x1c($sp) +/* 074B50 80073F50 8FB00018 */ lw $s0, 0x18($sp) +/* 074B54 80073F54 03E00008 */ jr $ra +/* 074B58 80073F58 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_072E50/func_80073F5C.s b/asm/non_matchings/unknown_072E50/func_80073F5C.s new file mode 100644 index 00000000..4c59ed06 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80073F5C.s @@ -0,0 +1,51 @@ +glabel func_80073F5C +/* 074B5C 80073F5C 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 074B60 80073F60 AFBF001C */ sw $ra, 0x1c($sp) +/* 074B64 80073F64 AFA40038 */ sw $a0, 0x38($sp) +/* 074B68 80073F68 0C01CF13 */ jal func_80073C4C +/* 074B6C 80073F6C AFA5003C */ sw $a1, 0x3c($sp) +/* 074B70 80073F70 AFA20024 */ sw $v0, 0x24($sp) +/* 074B74 80073F74 00402025 */ move $a0, $v0 +/* 074B78 80073F78 0C01C327 */ jal func_80070C9C +/* 074B7C 80073F7C 2405FFFF */ li $a1, -1 +/* 074B80 80073F80 3C0E4741 */ lui $t6, (0x47414D44 >> 16) # lui $t6, 0x4741 +/* 074B84 80073F84 AFA2002C */ sw $v0, 0x2c($sp) +/* 074B88 80073F88 35CE4D44 */ ori $t6, (0x47414D44 & 0xFFFF) # ori $t6, $t6, 0x4d44 +/* 074B8C 80073F8C AC4E0000 */ sw $t6, ($v0) +/* 074B90 80073F90 8FA4003C */ lw $a0, 0x3c($sp) +/* 074B94 80073F94 0C01CCBA */ jal func_800732E8 +/* 074B98 80073F98 24450004 */ addiu $a1, $v0, 4 +/* 074B9C 80073F9C 8FA40038 */ lw $a0, 0x38($sp) +/* 074BA0 80073FA0 24050003 */ li $a1, 3 +/* 074BA4 80073FA4 0C01CF17 */ jal func_80073C5C +/* 074BA8 80073FA8 27A60030 */ addiu $a2, $sp, 0x30 +/* 074BAC 80073FAC 1440000C */ bnez $v0, .L80073FE0 +/* 074BB0 80073FB0 00401825 */ move $v1, $v0 +/* 074BB4 80073FB4 8FAF002C */ lw $t7, 0x2c($sp) +/* 074BB8 80073FB8 8FB80024 */ lw $t8, 0x24($sp) +/* 074BBC 80073FBC 8FA40038 */ lw $a0, 0x38($sp) +/* 074BC0 80073FC0 3C06800E */ lui $a2, %hi(D_800E7680) # $a2, 0x800e +/* 074BC4 80073FC4 24C67680 */ addiu $a2, %lo(D_800E7680) # addiu $a2, $a2, 0x7680 +/* 074BC8 80073FC8 2405FFFF */ li $a1, -1 +/* 074BCC 80073FCC 27A70030 */ addiu $a3, $sp, 0x30 +/* 074BD0 80073FD0 AFAF0010 */ sw $t7, 0x10($sp) +/* 074BD4 80073FD4 0C01D9B5 */ jal func_800766D4 +/* 074BD8 80073FD8 AFB80014 */ sw $t8, 0x14($sp) +/* 074BDC 80073FDC 00401825 */ move $v1, $v0 +.L80073FE0: +/* 074BE0 80073FE0 8FA4002C */ lw $a0, 0x2c($sp) +/* 074BE4 80073FE4 0C01C450 */ jal func_80071140 +/* 074BE8 80073FE8 AFA30028 */ sw $v1, 0x28($sp) +/* 074BEC 80073FEC 8FA30028 */ lw $v1, 0x28($sp) +/* 074BF0 80073FF0 8FBF001C */ lw $ra, 0x1c($sp) +/* 074BF4 80073FF4 10600006 */ beqz $v1, .L80074010 +/* 074BF8 80073FF8 00601025 */ move $v0, $v1 +/* 074BFC 80073FFC 8FB90038 */ lw $t9, 0x38($sp) +/* 074C00 80074000 00000000 */ nop +/* 074C04 80074004 00194780 */ sll $t0, $t9, 0x1e +/* 074C08 80074008 00681825 */ or $v1, $v1, $t0 +/* 074C0C 8007400C 00601025 */ move $v0, $v1 +.L80074010: +/* 074C10 80074010 03E00008 */ jr $ra +/* 074C14 80074014 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_072E50/func_80074018.s b/asm/non_matchings/unknown_072E50/func_80074018.s new file mode 100644 index 00000000..3b176561 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80074018.s @@ -0,0 +1,84 @@ +glabel func_80074018 +/* 074C18 80074018 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 074C1C 8007401C AFBF001C */ sw $ra, 0x1c($sp) +/* 074C20 80074020 AFB00018 */ sw $s0, 0x18($sp) +/* 074C24 80074024 00808025 */ move $s0, $a0 +/* 074C28 80074028 AFA50034 */ sw $a1, 0x34($sp) +/* 074C2C 8007402C 0C01D637 */ jal func_800758DC +/* 074C30 80074030 AFA60038 */ sw $a2, 0x38($sp) +/* 074C34 80074034 10400008 */ beqz $v0, .L80074058 +/* 074C38 80074038 02002025 */ move $a0, $s0 +/* 074C3C 8007403C 02002025 */ move $a0, $s0 +/* 074C40 80074040 0C01D6BB */ jal func_80075AEC +/* 074C44 80074044 AFA20028 */ sw $v0, 0x28($sp) +/* 074C48 80074048 8FA30028 */ lw $v1, 0x28($sp) +/* 074C4C 8007404C 00107780 */ sll $t6, $s0, 0x1e +/* 074C50 80074050 10000039 */ b .L80074138 +/* 074C54 80074054 01C31025 */ or $v0, $t6, $v1 +.L80074058: +/* 074C58 80074058 3C05800E */ lui $a1, %hi(D_800E7690) # $a1, 0x800e +/* 074C5C 8007405C 8FA60034 */ lw $a2, 0x34($sp) +/* 074C60 80074060 24A57690 */ addiu $a1, %lo(D_800E7690) # addiu $a1, $a1, 0x7690 +/* 074C64 80074064 0C01D93A */ jal func_800764E8 +/* 074C68 80074068 27A70024 */ addiu $a3, $sp, 0x24 +/* 074C6C 8007406C 14400029 */ bnez $v0, .L80074114 +/* 074C70 80074070 00401825 */ move $v1, $v0 +/* 074C74 80074074 8FA50024 */ lw $a1, 0x24($sp) +/* 074C78 80074078 02002025 */ move $a0, $s0 +/* 074C7C 8007407C 0C01DA49 */ jal func_80076924 +/* 074C80 80074080 27A60020 */ addiu $a2, $sp, 0x20 +/* 074C84 80074084 8FA40020 */ lw $a0, 0x20($sp) +/* 074C88 80074088 00401825 */ move $v1, $v0 +/* 074C8C 8007408C 14800002 */ bnez $a0, .L80074098 +/* 074C90 80074090 00000000 */ nop +/* 074C94 80074094 24030009 */ li $v1, 9 +.L80074098: +/* 074C98 80074098 1460001E */ bnez $v1, .L80074114 +/* 074C9C 8007409C 00000000 */ nop +/* 074CA0 800740A0 0C01C327 */ jal func_80070C9C +/* 074CA4 800740A4 240500FF */ li $a1, 255 +/* 074CA8 800740A8 8FA50024 */ lw $a1, 0x24($sp) +/* 074CAC 800740AC 8FA70020 */ lw $a3, 0x20($sp) +/* 074CB0 800740B0 AFA2002C */ sw $v0, 0x2c($sp) +/* 074CB4 800740B4 02002025 */ move $a0, $s0 +/* 074CB8 800740B8 0C01D984 */ jal func_80076610 +/* 074CBC 800740BC 00403025 */ move $a2, $v0 +/* 074CC0 800740C0 1440000F */ bnez $v0, .L80074100 +/* 074CC4 800740C4 00401825 */ move $v1, $v0 +/* 074CC8 800740C8 8FA7002C */ lw $a3, 0x2c($sp) +/* 074CCC 800740CC 3C015449 */ lui $at, (0x54494D44 >> 16) # lui $at, 0x5449 +/* 074CD0 800740D0 8CEF0000 */ lw $t7, ($a3) +/* 074CD4 800740D4 34214D44 */ ori $at, (0x54494D44 & 0xFFFF) # ori $at, $at, 0x4d44 +/* 074CD8 800740D8 15E10009 */ bne $t7, $at, .L80074100 +/* 074CDC 800740DC 24030009 */ li $v1, 9 +/* 074CE0 800740E0 8FA40038 */ lw $a0, 0x38($sp) +/* 074CE4 800740E4 24E50004 */ addiu $a1, $a3, 4 +/* 074CE8 800740E8 24060003 */ li $a2, 3 +/* 074CEC 800740EC 0C01CD62 */ jal func_80073588 +/* 074CF0 800740F0 AFA20028 */ sw $v0, 0x28($sp) +/* 074CF4 800740F4 8FA30028 */ lw $v1, 0x28($sp) +/* 074CF8 800740F8 10000002 */ b .L80074104 +/* 074CFC 800740FC 8FA4002C */ lw $a0, 0x2c($sp) +.L80074100: +/* 074D00 80074100 8FA4002C */ lw $a0, 0x2c($sp) +.L80074104: +/* 074D04 80074104 0C01C450 */ jal func_80071140 +/* 074D08 80074108 AFA30028 */ sw $v1, 0x28($sp) +/* 074D0C 8007410C 8FA30028 */ lw $v1, 0x28($sp) +/* 074D10 80074110 00000000 */ nop +.L80074114: +/* 074D14 80074114 02002025 */ move $a0, $s0 +/* 074D18 80074118 0C01D6BB */ jal func_80075AEC +/* 074D1C 8007411C AFA30028 */ sw $v1, 0x28($sp) +/* 074D20 80074120 8FA30028 */ lw $v1, 0x28($sp) +/* 074D24 80074124 0010C780 */ sll $t8, $s0, 0x1e +/* 074D28 80074128 10600003 */ beqz $v1, .L80074138 +/* 074D2C 8007412C 00601025 */ move $v0, $v1 +/* 074D30 80074130 00781825 */ or $v1, $v1, $t8 +/* 074D34 80074134 00601025 */ move $v0, $v1 +.L80074138: +/* 074D38 80074138 8FBF001C */ lw $ra, 0x1c($sp) +/* 074D3C 8007413C 8FB00018 */ lw $s0, 0x18($sp) +/* 074D40 80074140 03E00008 */ jr $ra +/* 074D44 80074144 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_072E50/func_80074148.s b/asm/non_matchings/unknown_072E50/func_80074148.s new file mode 100644 index 00000000..5656738e --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80074148.s @@ -0,0 +1,51 @@ +glabel func_80074148 +/* 074D48 80074148 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 074D4C 8007414C AFBF001C */ sw $ra, 0x1c($sp) +/* 074D50 80074150 AFA40038 */ sw $a0, 0x38($sp) +/* 074D54 80074154 0C01CF15 */ jal func_80073C54 +/* 074D58 80074158 AFA5003C */ sw $a1, 0x3c($sp) +/* 074D5C 8007415C AFA2002C */ sw $v0, 0x2c($sp) +/* 074D60 80074160 00402025 */ move $a0, $v0 +/* 074D64 80074164 0C01C327 */ jal func_80070C9C +/* 074D68 80074168 2405FFFF */ li $a1, -1 +/* 074D6C 8007416C 3C0E5449 */ lui $t6, (0x54494D44 >> 16) # lui $t6, 0x5449 +/* 074D70 80074170 AFA20034 */ sw $v0, 0x34($sp) +/* 074D74 80074174 35CE4D44 */ ori $t6, (0x54494D44 & 0xFFFF) # ori $t6, $t6, 0x4d44 +/* 074D78 80074178 AC4E0000 */ sw $t6, ($v0) +/* 074D7C 8007417C 8FA4003C */ lw $a0, 0x3c($sp) +/* 074D80 80074180 0C01CE29 */ jal func_800738A4 +/* 074D84 80074184 24450004 */ addiu $a1, $v0, 4 +/* 074D88 80074188 8FA40038 */ lw $a0, 0x38($sp) +/* 074D8C 8007418C 24050004 */ li $a1, 4 +/* 074D90 80074190 0C01CF17 */ jal func_80073C5C +/* 074D94 80074194 27A60024 */ addiu $a2, $sp, 0x24 +/* 074D98 80074198 1440000C */ bnez $v0, .L800741CC +/* 074D9C 8007419C 00401825 */ move $v1, $v0 +/* 074DA0 800741A0 8FAF0034 */ lw $t7, 0x34($sp) +/* 074DA4 800741A4 8FB8002C */ lw $t8, 0x2c($sp) +/* 074DA8 800741A8 8FA40038 */ lw $a0, 0x38($sp) +/* 074DAC 800741AC 3C06800E */ lui $a2, %hi(D_800E76A0) # $a2, 0x800e +/* 074DB0 800741B0 24C676A0 */ addiu $a2, %lo(D_800E76A0) # addiu $a2, $a2, 0x76a0 +/* 074DB4 800741B4 2405FFFF */ li $a1, -1 +/* 074DB8 800741B8 27A70024 */ addiu $a3, $sp, 0x24 +/* 074DBC 800741BC AFAF0010 */ sw $t7, 0x10($sp) +/* 074DC0 800741C0 0C01D9B5 */ jal func_800766D4 +/* 074DC4 800741C4 AFB80014 */ sw $t8, 0x14($sp) +/* 074DC8 800741C8 00401825 */ move $v1, $v0 +.L800741CC: +/* 074DCC 800741CC 8FA40034 */ lw $a0, 0x34($sp) +/* 074DD0 800741D0 0C01C450 */ jal func_80071140 +/* 074DD4 800741D4 AFA30030 */ sw $v1, 0x30($sp) +/* 074DD8 800741D8 8FA30030 */ lw $v1, 0x30($sp) +/* 074DDC 800741DC 8FBF001C */ lw $ra, 0x1c($sp) +/* 074DE0 800741E0 10600006 */ beqz $v1, .L800741FC +/* 074DE4 800741E4 00601025 */ move $v0, $v1 +/* 074DE8 800741E8 8FB90038 */ lw $t9, 0x38($sp) +/* 074DEC 800741EC 00000000 */ nop +/* 074DF0 800741F0 00194780 */ sll $t0, $t9, 0x1e +/* 074DF4 800741F4 00681825 */ or $v1, $v1, $t0 +/* 074DF8 800741F8 00601025 */ move $v0, $v1 +.L800741FC: +/* 074DFC 800741FC 03E00008 */ jr $ra +/* 074E00 80074200 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_072E50/func_80074204.s b/asm/non_matchings/unknown_072E50/func_80074204.s new file mode 100644 index 00000000..2cb1666a --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80074204.s @@ -0,0 +1,78 @@ +glabel func_80074204 +/* 074E04 80074204 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 074E08 80074208 AFBF0024 */ sw $ra, 0x24($sp) +/* 074E0C 8007420C AFB30020 */ sw $s3, 0x20($sp) +/* 074E10 80074210 AFB2001C */ sw $s2, 0x1c($sp) +/* 074E14 80074214 AFB10018 */ sw $s1, 0x18($sp) +/* 074E18 80074218 AFB00014 */ sw $s0, 0x14($sp) +/* 074E1C 8007421C AFA40030 */ sw $a0, 0x30($sp) +/* 074E20 80074220 0C01A840 */ jal func_8006A100 +/* 074E24 80074224 AFA50034 */ sw $a1, 0x34($sp) +/* 074E28 80074228 0C033884 */ jal func_800CE210 +/* 074E2C 8007422C 00402025 */ move $a0, $v0 +/* 074E30 80074230 14400003 */ bnez $v0, .L80074240 +/* 074E34 80074234 24130005 */ li $s3, 5 +/* 074E38 80074238 10000031 */ b .L80074300 +/* 074E3C 8007423C 2402FFFF */ li $v0, -1 +.L80074240: +/* 074E40 80074240 8FA20030 */ lw $v0, 0x30($sp) +/* 074E44 80074244 24040028 */ li $a0, 40 +/* 074E48 80074248 10400008 */ beqz $v0, .L8007426C +/* 074E4C 8007424C 2405FFFF */ li $a1, -1 +/* 074E50 80074250 24010001 */ li $at, 1 +/* 074E54 80074254 10410007 */ beq $v0, $at, .L80074274 +/* 074E58 80074258 24010002 */ li $at, 2 +/* 074E5C 8007425C 10410007 */ beq $v0, $at, .L8007427C +/* 074E60 80074260 2403000A */ li $v1, 10 +/* 074E64 80074264 10000005 */ b .L8007427C +/* 074E68 80074268 2403000A */ li $v1, 10 +.L8007426C: +/* 074E6C 8007426C 10000003 */ b .L8007427C +/* 074E70 80074270 00001825 */ move $v1, $zero +.L80074274: +/* 074E74 80074274 10000001 */ b .L8007427C +/* 074E78 80074278 24030005 */ li $v1, 5 +.L8007427C: +/* 074E7C 8007427C 0C01C327 */ jal func_80070C9C +/* 074E80 80074280 AFA3002C */ sw $v1, 0x2c($sp) +/* 074E84 80074284 8FB1002C */ lw $s1, 0x2c($sp) +/* 074E88 80074288 00409025 */ move $s2, $v0 +/* 074E8C 8007428C 00008025 */ move $s0, $zero +.L80074290: +/* 074E90 80074290 0C01A840 */ jal func_8006A100 +/* 074E94 80074294 00000000 */ nop +/* 074E98 80074298 001070C0 */ sll $t6, $s0, 3 +/* 074E9C 8007429C 01D23021 */ addu $a2, $t6, $s2 +/* 074EA0 800742A0 00402025 */ move $a0, $v0 +/* 074EA4 800742A4 0C0338A0 */ jal osEepromRead +/* 074EA8 800742A8 322500FF */ andi $a1, $s1, 0xff +/* 074EAC 800742AC 26100001 */ addiu $s0, $s0, 1 +/* 074EB0 800742B0 1613FFF7 */ bne $s0, $s3, .L80074290 +/* 074EB4 800742B4 26310001 */ addiu $s1, $s1, 1 +/* 074EB8 800742B8 8FA40034 */ lw $a0, 0x34($sp) +/* 074EBC 800742BC 0C01CC1B */ jal func_8007306C +/* 074EC0 800742C0 02402825 */ move $a1, $s2 +/* 074EC4 800742C4 0C01C450 */ jal func_80071140 +/* 074EC8 800742C8 02402025 */ move $a0, $s2 +/* 074ECC 800742CC 8FA50034 */ lw $a1, 0x34($sp) +/* 074ED0 800742D0 8FA40030 */ lw $a0, 0x30($sp) +/* 074ED4 800742D4 90A3004B */ lbu $v1, 0x4b($a1) +/* 074ED8 800742D8 00000000 */ nop +/* 074EDC 800742DC 10600008 */ beqz $v1, .L80074300 +/* 074EE0 800742E0 00601025 */ move $v0, $v1 +/* 074EE4 800742E4 0C01D0C7 */ jal func_8007431C +/* 074EE8 800742E8 00000000 */ nop +/* 074EEC 800742EC 8FAF0034 */ lw $t7, 0x34($sp) +/* 074EF0 800742F0 00000000 */ nop +/* 074EF4 800742F4 91E3004B */ lbu $v1, 0x4b($t7) +/* 074EF8 800742F8 00000000 */ nop +/* 074EFC 800742FC 00601025 */ move $v0, $v1 +.L80074300: +/* 074F00 80074300 8FBF0024 */ lw $ra, 0x24($sp) +/* 074F04 80074304 8FB00014 */ lw $s0, 0x14($sp) +/* 074F08 80074308 8FB10018 */ lw $s1, 0x18($sp) +/* 074F0C 8007430C 8FB2001C */ lw $s2, 0x1c($sp) +/* 074F10 80074310 8FB30020 */ lw $s3, 0x20($sp) +/* 074F14 80074314 03E00008 */ jr $ra +/* 074F18 80074318 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_072E50/func_8007431C.s b/asm/non_matchings/unknown_072E50/func_8007431C.s new file mode 100644 index 00000000..6bf7f7b7 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_8007431C.s @@ -0,0 +1,128 @@ +glabel func_8007431C +/* 074F1C 8007431C 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 074F20 80074320 AFBF0024 */ sw $ra, 0x24($sp) +/* 074F24 80074324 AFB2001C */ sw $s2, 0x1c($sp) +/* 074F28 80074328 AFB10018 */ sw $s1, 0x18($sp) +/* 074F2C 8007432C 00A08825 */ move $s1, $a1 +/* 074F30 80074330 00809025 */ move $s2, $a0 +/* 074F34 80074334 AFB30020 */ sw $s3, 0x20($sp) +/* 074F38 80074338 0C01A840 */ jal func_8006A100 +/* 074F3C 8007433C AFB00014 */ sw $s0, 0x14($sp) +/* 074F40 80074340 0C033884 */ jal func_800CE210 +/* 074F44 80074344 00402025 */ move $a0, $v0 +/* 074F48 80074348 1040005D */ beqz $v0, .L800744C0 +/* 074F4C 8007434C 27A40044 */ addiu $a0, $sp, 0x44 +/* 074F50 80074350 0C01AC89 */ jal func_8006B224 +/* 074F54 80074354 27A50040 */ addiu $a1, $sp, 0x40 +/* 074F58 80074358 8FAE0044 */ lw $t6, 0x44($sp) +/* 074F5C 8007435C 00008025 */ move $s0, $zero +/* 074F60 80074360 19C0000C */ blez $t6, .L80074394 +/* 074F64 80074364 240C0001 */ li $t4, 1 +/* 074F68 80074368 00001025 */ move $v0, $zero +.L8007436C: +/* 074F6C 8007436C 8E2F0004 */ lw $t7, 4($s1) +/* 074F70 80074370 26100001 */ addiu $s0, $s0, 1 +/* 074F74 80074374 01E2C021 */ addu $t8, $t7, $v0 +/* 074F78 80074378 AF000000 */ sw $zero, ($t8) +/* 074F7C 8007437C 8FB90044 */ lw $t9, 0x44($sp) +/* 074F80 80074380 24420004 */ addiu $v0, $v0, 4 +/* 074F84 80074384 0219082A */ slt $at, $s0, $t9 +/* 074F88 80074388 1420FFF8 */ bnez $at, .L8007436C +/* 074F8C 8007438C 00000000 */ nop +/* 074F90 80074390 00008025 */ move $s0, $zero +.L80074394: +/* 074F94 80074394 8FA80040 */ lw $t0, 0x40($sp) +/* 074F98 80074398 24040028 */ li $a0, 40 +/* 074F9C 8007439C 1900000C */ blez $t0, .L800743D0 +/* 074FA0 800743A0 2405FFFF */ li $a1, -1 +/* 074FA4 800743A4 00001025 */ move $v0, $zero +.L800743A8: +/* 074FA8 800743A8 8E290000 */ lw $t1, ($s1) +/* 074FAC 800743AC 26100001 */ addiu $s0, $s0, 1 +/* 074FB0 800743B0 01225021 */ addu $t2, $t1, $v0 +/* 074FB4 800743B4 A5400000 */ sh $zero, ($t2) +/* 074FB8 800743B8 8FAB0040 */ lw $t3, 0x40($sp) +/* 074FBC 800743BC 24420002 */ addiu $v0, $v0, 2 +/* 074FC0 800743C0 020B082A */ slt $at, $s0, $t3 +/* 074FC4 800743C4 1420FFF8 */ bnez $at, .L800743A8 +/* 074FC8 800743C8 00000000 */ nop +/* 074FCC 800743CC 00008025 */ move $s0, $zero +.L800743D0: +/* 074FD0 800743D0 A620000E */ sh $zero, 0xe($s1) +/* 074FD4 800743D4 A620000C */ sh $zero, 0xc($s1) +/* 074FD8 800743D8 A6200014 */ sh $zero, 0x14($s1) +/* 074FDC 800743DC AE200010 */ sw $zero, 0x10($s1) +/* 074FE0 800743E0 12400008 */ beqz $s2, .L80074404 +/* 074FE4 800743E4 A22C004B */ sb $t4, 0x4b($s1) +/* 074FE8 800743E8 24010001 */ li $at, 1 +/* 074FEC 800743EC 12410007 */ beq $s2, $at, .L8007440C +/* 074FF0 800743F0 24010002 */ li $at, 2 +/* 074FF4 800743F4 12410007 */ beq $s2, $at, .L80074414 +/* 074FF8 800743F8 2406000A */ li $a2, 10 +/* 074FFC 800743FC 10000005 */ b .L80074414 +/* 075000 80074400 2406000A */ li $a2, 10 +.L80074404: +/* 075004 80074404 10000003 */ b .L80074414 +/* 075008 80074408 00003025 */ move $a2, $zero +.L8007440C: +/* 07500C 8007440C 10000001 */ b .L80074414 +/* 075010 80074410 24060005 */ li $a2, 5 +.L80074414: +/* 075014 80074414 24120005 */ li $s2, 5 +/* 075018 80074418 0C01C327 */ jal func_80070C9C +/* 07501C 8007441C AFA60054 */ sw $a2, 0x54($sp) +/* 075020 80074420 8FA60054 */ lw $a2, 0x54($sp) +/* 075024 80074424 1000000A */ b .L80074450 +/* 075028 80074428 00409825 */ move $s3, $v0 +/* 07502C 8007442C 00002825 */ move $a1, $zero +/* 075030 80074430 00501821 */ addu $v1, $v0, $s0 +/* 075034 80074434 240400FF */ li $a0, 255 +.L80074438: +/* 075038 80074438 26100001 */ addiu $s0, $s0, 1 +/* 07503C 8007443C A0640000 */ sb $a0, ($v1) +/* 075040 80074440 14B0FFFD */ bne $a1, $s0, .L80074438 +/* 075044 80074444 24630001 */ addiu $v1, $v1, 1 +/* 075048 80074448 24010028 */ li $at, 40 +/* 07504C 8007444C 1201000A */ beq $s0, $at, .L80074478 +.L80074450: +/* 075050 80074450 240400FF */ li $a0, 255 +/* 075054 80074454 001228C0 */ sll $a1, $s2, 3 +/* 075058 80074458 00501821 */ addu $v1, $v0, $s0 +.L8007445C: +/* 07505C 8007445C 26100004 */ addiu $s0, $s0, 4 +/* 075060 80074460 A0640000 */ sb $a0, ($v1) +/* 075064 80074464 A0640001 */ sb $a0, 1($v1) +/* 075068 80074468 A0640002 */ sb $a0, 2($v1) +/* 07506C 8007446C A0640003 */ sb $a0, 3($v1) +/* 075070 80074470 1605FFFA */ bne $s0, $a1, .L8007445C +/* 075074 80074474 24630004 */ addiu $v1, $v1, 4 +.L80074478: +/* 075078 80074478 0C01BAB0 */ jal func_8006EAC0 +/* 07507C 8007447C AFA60054 */ sw $a2, 0x54($sp) +/* 075080 80074480 8FA60054 */ lw $a2, 0x54($sp) +/* 075084 80074484 1440000C */ bnez $v0, .L800744B8 +/* 075088 80074488 00008025 */ move $s0, $zero +/* 07508C 8007448C 00C08825 */ move $s1, $a2 +.L80074490: +/* 075090 80074490 0C01A840 */ jal func_8006A100 +/* 075094 80074494 00000000 */ nop +/* 075098 80074498 001068C0 */ sll $t5, $s0, 3 +/* 07509C 8007449C 01B33021 */ addu $a2, $t5, $s3 +/* 0750A0 800744A0 00402025 */ move $a0, $v0 +/* 0750A4 800744A4 0C033960 */ jal osEepromWrite +/* 0750A8 800744A8 322500FF */ andi $a1, $s1, 0xff +/* 0750AC 800744AC 26100001 */ addiu $s0, $s0, 1 +/* 0750B0 800744B0 1612FFF7 */ bne $s0, $s2, .L80074490 +/* 0750B4 800744B4 26310001 */ addiu $s1, $s1, 1 +.L800744B8: +/* 0750B8 800744B8 0C01C450 */ jal func_80071140 +/* 0750BC 800744BC 02602025 */ move $a0, $s3 +.L800744C0: +/* 0750C0 800744C0 8FBF0024 */ lw $ra, 0x24($sp) +/* 0750C4 800744C4 8FB00014 */ lw $s0, 0x14($sp) +/* 0750C8 800744C8 8FB10018 */ lw $s1, 0x18($sp) +/* 0750CC 800744CC 8FB2001C */ lw $s2, 0x1c($sp) +/* 0750D0 800744D0 8FB30020 */ lw $s3, 0x20($sp) +/* 0750D4 800744D4 03E00008 */ jr $ra +/* 0750D8 800744D8 27BD0058 */ addiu $sp, $sp, 0x58 + diff --git a/asm/non_matchings/unknown_072E50/func_800744DC.s b/asm/non_matchings/unknown_072E50/func_800744DC.s new file mode 100644 index 00000000..c1e1eae9 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_800744DC.s @@ -0,0 +1,70 @@ +glabel func_800744DC +/* 0750DC 800744DC 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0750E0 800744E0 AFBF0024 */ sw $ra, 0x24($sp) +/* 0750E4 800744E4 AFB10018 */ sw $s1, 0x18($sp) +/* 0750E8 800744E8 AFB00014 */ sw $s0, 0x14($sp) +/* 0750EC 800744EC 00808025 */ move $s0, $a0 +/* 0750F0 800744F0 00A08825 */ move $s1, $a1 +/* 0750F4 800744F4 AFB30020 */ sw $s3, 0x20($sp) +/* 0750F8 800744F8 0C01A840 */ jal func_8006A100 +/* 0750FC 800744FC AFB2001C */ sw $s2, 0x1c($sp) +/* 075100 80074500 0C033884 */ jal func_800CE210 +/* 075104 80074504 00402025 */ move $a0, $v0 +/* 075108 80074508 14400003 */ bnez $v0, .L80074518 +/* 07510C 8007450C 24120005 */ li $s2, 5 +/* 075110 80074510 10000028 */ b .L800745B4 +/* 075114 80074514 2402FFFF */ li $v0, -1 +.L80074518: +/* 075118 80074518 12000008 */ beqz $s0, .L8007453C +/* 07511C 8007451C 24040028 */ li $a0, 40 +/* 075120 80074520 24010001 */ li $at, 1 +/* 075124 80074524 12010007 */ beq $s0, $at, .L80074544 +/* 075128 80074528 24010002 */ li $at, 2 +/* 07512C 8007452C 12010007 */ beq $s0, $at, .L8007454C +/* 075130 80074530 2403000A */ li $v1, 10 +/* 075134 80074534 10000005 */ b .L8007454C +/* 075138 80074538 2403000A */ li $v1, 10 +.L8007453C: +/* 07513C 8007453C 10000003 */ b .L8007454C +/* 075140 80074540 00001825 */ move $v1, $zero +.L80074544: +/* 075144 80074544 10000001 */ b .L8007454C +/* 075148 80074548 24030005 */ li $v1, 5 +.L8007454C: +/* 07514C 8007454C 2405FFFF */ li $a1, -1 +/* 075150 80074550 0C01C327 */ jal func_80070C9C +/* 075154 80074554 AFA3002C */ sw $v1, 0x2c($sp) +/* 075158 80074558 00409825 */ move $s3, $v0 +/* 07515C 8007455C 02202025 */ move $a0, $s1 +/* 075160 80074560 0C01CCBA */ jal func_800732E8 +/* 075164 80074564 00402825 */ move $a1, $v0 +/* 075168 80074568 0C01BAB0 */ jal func_8006EAC0 +/* 07516C 8007456C 00000000 */ nop +/* 075170 80074570 8FA3002C */ lw $v1, 0x2c($sp) +/* 075174 80074574 1440000C */ bnez $v0, .L800745A8 +/* 075178 80074578 00008025 */ move $s0, $zero +/* 07517C 8007457C 00608825 */ move $s1, $v1 +.L80074580: +/* 075180 80074580 0C01A840 */ jal func_8006A100 +/* 075184 80074584 00000000 */ nop +/* 075188 80074588 001070C0 */ sll $t6, $s0, 3 +/* 07518C 8007458C 01D33021 */ addu $a2, $t6, $s3 +/* 075190 80074590 00402025 */ move $a0, $v0 +/* 075194 80074594 0C033960 */ jal osEepromWrite +/* 075198 80074598 322500FF */ andi $a1, $s1, 0xff +/* 07519C 8007459C 26100001 */ addiu $s0, $s0, 1 +/* 0751A0 800745A0 1612FFF7 */ bne $s0, $s2, .L80074580 +/* 0751A4 800745A4 26310001 */ addiu $s1, $s1, 1 +.L800745A8: +/* 0751A8 800745A8 0C01C450 */ jal func_80071140 +/* 0751AC 800745AC 02602025 */ move $a0, $s3 +/* 0751B0 800745B0 00001025 */ move $v0, $zero +.L800745B4: +/* 0751B4 800745B4 8FBF0024 */ lw $ra, 0x24($sp) +/* 0751B8 800745B8 8FB00014 */ lw $s0, 0x14($sp) +/* 0751BC 800745BC 8FB10018 */ lw $s1, 0x18($sp) +/* 0751C0 800745C0 8FB2001C */ lw $s2, 0x1c($sp) +/* 0751C4 800745C4 8FB30020 */ lw $s3, 0x20($sp) +/* 0751C8 800745C8 03E00008 */ jr $ra +/* 0751CC 800745CC 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_072E50/func_800745D0.s b/asm/non_matchings/unknown_072E50/func_800745D0.s new file mode 100644 index 00000000..a2f268c8 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_800745D0.s @@ -0,0 +1,80 @@ +glabel func_800745D0 +/* 0751D0 800745D0 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 0751D4 800745D4 AFBF0024 */ sw $ra, 0x24($sp) +/* 0751D8 800745D8 AFB00018 */ sw $s0, 0x18($sp) +/* 0751DC 800745DC 30B000FF */ andi $s0, $a1, 0xff +/* 0751E0 800745E0 AFB20020 */ sw $s2, 0x20($sp) +/* 0751E4 800745E4 AFB1001C */ sw $s1, 0x1c($sp) +/* 0751E8 800745E8 AFA40040 */ sw $a0, 0x40($sp) +/* 0751EC 800745EC 0C01A840 */ jal func_8006A100 +/* 0751F0 800745F0 AFA50044 */ sw $a1, 0x44($sp) +/* 0751F4 800745F4 0C033884 */ jal func_800CE210 +/* 0751F8 800745F8 00402025 */ move $a0, $v0 +/* 0751FC 800745FC 14400003 */ bnez $v0, .L8007460C +/* 075200 80074600 24040200 */ li $a0, 512 +/* 075204 80074604 10000034 */ b .L800746D8 +/* 075208 80074608 2402FFFF */ li $v0, -1 +.L8007460C: +/* 07520C 8007460C 0C01C327 */ jal func_80070C9C +/* 075210 80074610 2405FFFF */ li $a1, -1 +/* 075214 80074614 320F0001 */ andi $t7, $s0, 1 +/* 075218 80074618 00409025 */ move $s2, $v0 +/* 07521C 8007461C 11E00014 */ beqz $t7, .L80074670 +/* 075220 80074620 AFB00028 */ sw $s0, 0x28($sp) +/* 075224 80074624 24110018 */ li $s1, 24 +/* 075228 80074628 00008025 */ move $s0, $zero +.L8007462C: +/* 07522C 8007462C 0C01A840 */ jal func_8006A100 +/* 075230 80074630 00000000 */ nop +/* 075234 80074634 26050010 */ addiu $a1, $s0, 0x10 +/* 075238 80074638 30B800FF */ andi $t8, $a1, 0xff +/* 07523C 8007463C 0010C8C0 */ sll $t9, $s0, 3 +/* 075240 80074640 03323021 */ addu $a2, $t9, $s2 +/* 075244 80074644 03002825 */ move $a1, $t8 +/* 075248 80074648 0C0338A0 */ jal osEepromRead +/* 07524C 8007464C 00402025 */ move $a0, $v0 +/* 075250 80074650 26100001 */ addiu $s0, $s0, 1 +/* 075254 80074654 0211082A */ slt $at, $s0, $s1 +/* 075258 80074658 1420FFF4 */ bnez $at, .L8007462C +/* 07525C 8007465C 00000000 */ nop +/* 075260 80074660 8FA40040 */ lw $a0, 0x40($sp) +/* 075264 80074664 02402825 */ move $a1, $s2 +/* 075268 80074668 0C01CD62 */ jal func_80073588 +/* 07526C 8007466C 24060001 */ li $a2, 1 +.L80074670: +/* 075270 80074670 8FA80028 */ lw $t0, 0x28($sp) +/* 075274 80074674 24110018 */ li $s1, 24 +/* 075278 80074678 31090002 */ andi $t1, $t0, 2 +/* 07527C 8007467C 11200013 */ beqz $t1, .L800746CC +/* 075280 80074680 00008025 */ move $s0, $zero +.L80074684: +/* 075284 80074684 0C01A840 */ jal func_8006A100 +/* 075288 80074688 00000000 */ nop +/* 07528C 8007468C 26050028 */ addiu $a1, $s0, 0x28 +/* 075290 80074690 001058C0 */ sll $t3, $s0, 3 +/* 075294 80074694 024B3021 */ addu $a2, $s2, $t3 +/* 075298 80074698 30AA00FF */ andi $t2, $a1, 0xff +/* 07529C 8007469C 01402825 */ move $a1, $t2 +/* 0752A0 800746A0 24C600C0 */ addiu $a2, $a2, 0xc0 +/* 0752A4 800746A4 0C0338A0 */ jal osEepromRead +/* 0752A8 800746A8 00402025 */ move $a0, $v0 +/* 0752AC 800746AC 26100001 */ addiu $s0, $s0, 1 +/* 0752B0 800746B0 0211082A */ slt $at, $s0, $s1 +/* 0752B4 800746B4 1420FFF3 */ bnez $at, .L80074684 +/* 0752B8 800746B8 00000000 */ nop +/* 0752BC 800746BC 8FA40040 */ lw $a0, 0x40($sp) +/* 0752C0 800746C0 02402825 */ move $a1, $s2 +/* 0752C4 800746C4 0C01CD62 */ jal func_80073588 +/* 0752C8 800746C8 24060002 */ li $a2, 2 +.L800746CC: +/* 0752CC 800746CC 0C01C450 */ jal func_80071140 +/* 0752D0 800746D0 02402025 */ move $a0, $s2 +/* 0752D4 800746D4 00001025 */ move $v0, $zero +.L800746D8: +/* 0752D8 800746D8 8FBF0024 */ lw $ra, 0x24($sp) +/* 0752DC 800746DC 8FB00018 */ lw $s0, 0x18($sp) +/* 0752E0 800746E0 8FB1001C */ lw $s1, 0x1c($sp) +/* 0752E4 800746E4 8FB20020 */ lw $s2, 0x20($sp) +/* 0752E8 800746E8 03E00008 */ jr $ra +/* 0752EC 800746EC 27BD0040 */ addiu $sp, $sp, 0x40 + diff --git a/asm/non_matchings/unknown_072E50/func_800746F0.s b/asm/non_matchings/unknown_072E50/func_800746F0.s new file mode 100644 index 00000000..b88ab1ee --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_800746F0.s @@ -0,0 +1,79 @@ +glabel func_800746F0 +/* 0752F0 800746F0 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 0752F4 800746F4 AFBF0024 */ sw $ra, 0x24($sp) +/* 0752F8 800746F8 AFB1001C */ sw $s1, 0x1c($sp) +/* 0752FC 800746FC AFB00018 */ sw $s0, 0x18($sp) +/* 075300 80074700 00808025 */ move $s0, $a0 +/* 075304 80074704 30B100FF */ andi $s1, $a1, 0xff +/* 075308 80074708 AFB20020 */ sw $s2, 0x20($sp) +/* 07530C 8007470C 0C01A840 */ jal func_8006A100 +/* 075310 80074710 AFA50044 */ sw $a1, 0x44($sp) +/* 075314 80074714 0C033884 */ jal func_800CE210 +/* 075318 80074718 00402025 */ move $a0, $v0 +/* 07531C 8007471C 14400003 */ bnez $v0, .L8007472C +/* 075320 80074720 24040200 */ li $a0, 512 +/* 075324 80074724 10000033 */ b .L800747F4 +/* 075328 80074728 2402FFFF */ li $v0, -1 +.L8007472C: +/* 07532C 8007472C 0C01C327 */ jal func_80070C9C +/* 075330 80074730 2405FFFF */ li $a1, -1 +/* 075334 80074734 00409025 */ move $s2, $v0 +/* 075338 80074738 02002025 */ move $a0, $s0 +/* 07533C 8007473C 0C01CE29 */ jal func_800738A4 +/* 075340 80074740 00402825 */ move $a1, $v0 +/* 075344 80074744 322F0001 */ andi $t7, $s1, 1 +/* 075348 80074748 11E00011 */ beqz $t7, .L80074790 +/* 07534C 8007474C AFB10028 */ sw $s1, 0x28($sp) +/* 075350 80074750 0C01BAB0 */ jal func_8006EAC0 +/* 075354 80074754 24110018 */ li $s1, 24 +/* 075358 80074758 1440000D */ bnez $v0, .L80074790 +/* 07535C 8007475C 00008025 */ move $s0, $zero +.L80074760: +/* 075360 80074760 0C01A840 */ jal func_8006A100 +/* 075364 80074764 00000000 */ nop +/* 075368 80074768 26050010 */ addiu $a1, $s0, 0x10 +/* 07536C 8007476C 30B800FF */ andi $t8, $a1, 0xff +/* 075370 80074770 0010C8C0 */ sll $t9, $s0, 3 +/* 075374 80074774 03323021 */ addu $a2, $t9, $s2 +/* 075378 80074778 03002825 */ move $a1, $t8 +/* 07537C 8007477C 0C033960 */ jal osEepromWrite +/* 075380 80074780 00402025 */ move $a0, $v0 +/* 075384 80074784 26100001 */ addiu $s0, $s0, 1 +/* 075388 80074788 1611FFF5 */ bne $s0, $s1, .L80074760 +/* 07538C 8007478C 00000000 */ nop +.L80074790: +/* 075390 80074790 8FA80028 */ lw $t0, 0x28($sp) +/* 075394 80074794 00000000 */ nop +/* 075398 80074798 31090002 */ andi $t1, $t0, 2 +/* 07539C 8007479C 11200012 */ beqz $t1, .L800747E8 +/* 0753A0 800747A0 00000000 */ nop +/* 0753A4 800747A4 0C01BAB0 */ jal func_8006EAC0 +/* 0753A8 800747A8 24110018 */ li $s1, 24 +/* 0753AC 800747AC 1440000E */ bnez $v0, .L800747E8 +/* 0753B0 800747B0 00008025 */ move $s0, $zero +.L800747B4: +/* 0753B4 800747B4 0C01A840 */ jal func_8006A100 +/* 0753B8 800747B8 00000000 */ nop +/* 0753BC 800747BC 26050028 */ addiu $a1, $s0, 0x28 +/* 0753C0 800747C0 001058C0 */ sll $t3, $s0, 3 +/* 0753C4 800747C4 024B3021 */ addu $a2, $s2, $t3 +/* 0753C8 800747C8 30AA00FF */ andi $t2, $a1, 0xff +/* 0753CC 800747CC 01402825 */ move $a1, $t2 +/* 0753D0 800747D0 24C600C0 */ addiu $a2, $a2, 0xc0 +/* 0753D4 800747D4 0C033960 */ jal osEepromWrite +/* 0753D8 800747D8 00402025 */ move $a0, $v0 +/* 0753DC 800747DC 26100001 */ addiu $s0, $s0, 1 +/* 0753E0 800747E0 1611FFF4 */ bne $s0, $s1, .L800747B4 +/* 0753E4 800747E4 00000000 */ nop +.L800747E8: +/* 0753E8 800747E8 0C01C450 */ jal func_80071140 +/* 0753EC 800747EC 02402025 */ move $a0, $s2 +/* 0753F0 800747F0 00001025 */ move $v0, $zero +.L800747F4: +/* 0753F4 800747F4 8FBF0024 */ lw $ra, 0x24($sp) +/* 0753F8 800747F8 8FB00018 */ lw $s0, 0x18($sp) +/* 0753FC 800747FC 8FB1001C */ lw $s1, 0x1c($sp) +/* 075400 80074800 8FB20020 */ lw $s2, 0x20($sp) +/* 075404 80074804 03E00008 */ jr $ra +/* 075408 80074808 27BD0040 */ addiu $sp, $sp, 0x40 + diff --git a/asm/non_matchings/unknown_072E50/func_8007480C.s b/asm/non_matchings/unknown_072E50/func_8007480C.s new file mode 100644 index 00000000..72b412c6 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_8007480C.s @@ -0,0 +1,29 @@ +glabel func_8007480C +/* 07540C 8007480C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 075410 80074810 AFB20020 */ sw $s2, 0x20($sp) +/* 075414 80074814 AFB1001C */ sw $s1, 0x1c($sp) +/* 075418 80074818 AFB00018 */ sw $s0, 0x18($sp) +/* 07541C 8007481C AFBF0024 */ sw $ra, 0x24($sp) +/* 075420 80074820 AFA40028 */ sw $a0, 0x28($sp) +/* 075424 80074824 AFA5002C */ sw $a1, 0x2c($sp) +/* 075428 80074828 24110005 */ li $s1, 5 +/* 07542C 8007482C 00008025 */ move $s0, $zero +/* 075430 80074830 2412000E */ li $s2, 14 +.L80074834: +/* 075434 80074834 8FA40028 */ lw $a0, 0x28($sp) +/* 075438 80074838 8FA5002C */ lw $a1, 0x2c($sp) +/* 07543C 8007483C 00103880 */ sll $a3, $s0, 2 +/* 075440 80074840 0C033A98 */ jal __ull_rshift +/* 075444 80074844 000737C3 */ sra $a2, $a3, 0x1f +/* 075448 80074848 26100001 */ addiu $s0, $s0, 1 +/* 07544C 8007484C 3079000F */ andi $t9, $v1, 0xf +/* 075450 80074850 1612FFF8 */ bne $s0, $s2, .L80074834 +/* 075454 80074854 02398821 */ addu $s1, $s1, $t9 +/* 075458 80074858 8FBF0024 */ lw $ra, 0x24($sp) +/* 07545C 8007485C 02201025 */ move $v0, $s1 +/* 075460 80074860 8FB1001C */ lw $s1, 0x1c($sp) +/* 075464 80074864 8FB00018 */ lw $s0, 0x18($sp) +/* 075468 80074868 8FB20020 */ lw $s2, 0x20($sp) +/* 07546C 8007486C 03E00008 */ jr $ra +/* 075470 80074870 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_072E50/func_80074874.s b/asm/non_matchings/unknown_072E50/func_80074874.s new file mode 100644 index 00000000..db6f6fa8 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80074874.s @@ -0,0 +1,71 @@ +glabel func_80074874 +/* 075474 80074874 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 075478 80074878 AFBF001C */ sw $ra, 0x1c($sp) +/* 07547C 8007487C AFB00018 */ sw $s0, 0x18($sp) +/* 075480 80074880 0C01A840 */ jal func_8006A100 +/* 075484 80074884 00808025 */ move $s0, $a0 +/* 075488 80074888 0C033884 */ jal func_800CE210 +/* 07548C 8007488C 00402025 */ move $a0, $v0 +/* 075490 80074890 14400003 */ bnez $v0, .L800748A0 +/* 075494 80074894 00000000 */ nop +/* 075498 80074898 10000034 */ b .L8007496C +/* 07549C 8007489C 2402FFFF */ li $v0, -1 +.L800748A0: +/* 0754A0 800748A0 0C01A840 */ jal func_8006A100 +/* 0754A4 800748A4 00000000 */ nop +/* 0754A8 800748A8 00402025 */ move $a0, $v0 +/* 0754AC 800748AC 2405000F */ li $a1, 15 +/* 0754B0 800748B0 0C0338A0 */ jal osEepromRead +/* 0754B4 800748B4 02003025 */ move $a2, $s0 +/* 0754B8 800748B8 8E040000 */ lw $a0, ($s0) +/* 0754BC 800748BC 8E050004 */ lw $a1, 4($s0) +/* 0754C0 800748C0 0C01D203 */ jal func_8007480C +/* 0754C4 800748C4 00000000 */ nop +/* 0754C8 800748C8 AFA20020 */ sw $v0, 0x20($sp) +/* 0754CC 800748CC 8E050004 */ lw $a1, 4($s0) +/* 0754D0 800748D0 8E040000 */ lw $a0, ($s0) +/* 0754D4 800748D4 24060000 */ li $a2, 0 +/* 0754D8 800748D8 0C033A98 */ jal __ull_rshift +/* 0754DC 800748DC 24070038 */ li $a3, 56 +/* 0754E0 800748E0 8FAE0020 */ lw $t6, 0x20($sp) +/* 0754E4 800748E4 24180000 */ li $t8, 0 +/* 0754E8 800748E8 11C3001F */ beq $t6, $v1, .L80074968 +/* 0754EC 800748EC 3C190300 */ lui $t9, 0x300 +/* 0754F0 800748F0 AE180000 */ sw $t8, ($s0) +/* 0754F4 800748F4 AE190004 */ sw $t9, 4($s0) +/* 0754F8 800748F8 24040000 */ li $a0, 0 +/* 0754FC 800748FC 3C050300 */ lui $a1, 0x300 +/* 075500 80074900 24060000 */ li $a2, 0 +/* 075504 80074904 0C033AC1 */ jal __ll_lshift +/* 075508 80074908 24070008 */ li $a3, 8 +/* 07550C 8007490C AE020000 */ sw $v0, ($s0) +/* 075510 80074910 AE030004 */ sw $v1, 4($s0) +/* 075514 80074914 00402025 */ move $a0, $v0 +/* 075518 80074918 00602825 */ move $a1, $v1 +/* 07551C 8007491C 24060000 */ li $a2, 0 +/* 075520 80074920 0C033A98 */ jal __ull_rshift +/* 075524 80074924 24070008 */ li $a3, 8 +/* 075528 80074928 AE020000 */ sw $v0, ($s0) +/* 07552C 8007492C AE030004 */ sw $v1, 4($s0) +/* 075530 80074930 00402025 */ move $a0, $v0 +/* 075534 80074934 0C01D203 */ jal func_8007480C +/* 075538 80074938 00602825 */ move $a1, $v1 +/* 07553C 8007493C 00402825 */ move $a1, $v0 +/* 075540 80074940 000227C3 */ sra $a0, $v0, 0x1f +/* 075544 80074944 24060000 */ li $a2, 0 +/* 075548 80074948 0C033AC1 */ jal __ll_lshift +/* 07554C 8007494C 24070038 */ li $a3, 56 +/* 075550 80074950 8E080000 */ lw $t0, ($s0) +/* 075554 80074954 8E090004 */ lw $t1, 4($s0) +/* 075558 80074958 01025025 */ or $t2, $t0, $v0 +/* 07555C 8007495C 01235825 */ or $t3, $t1, $v1 +/* 075560 80074960 AE0B0004 */ sw $t3, 4($s0) +/* 075564 80074964 AE0A0000 */ sw $t2, ($s0) +.L80074968: +/* 075568 80074968 24020001 */ li $v0, 1 +.L8007496C: +/* 07556C 8007496C 8FBF001C */ lw $ra, 0x1c($sp) +/* 075570 80074970 8FB00018 */ lw $s0, 0x18($sp) +/* 075574 80074974 03E00008 */ jr $ra +/* 075578 80074978 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_072E50/func_8007497C.s b/asm/non_matchings/unknown_072E50/func_8007497C.s new file mode 100644 index 00000000..13dff2c6 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_8007497C.s @@ -0,0 +1,56 @@ +glabel func_8007497C +/* 07557C 8007497C 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 075580 80074980 AFBF001C */ sw $ra, 0x1c($sp) +/* 075584 80074984 AFB00018 */ sw $s0, 0x18($sp) +/* 075588 80074988 0C01A840 */ jal func_8006A100 +/* 07558C 8007498C 00808025 */ move $s0, $a0 +/* 075590 80074990 0C033884 */ jal func_800CE210 +/* 075594 80074994 00402025 */ move $a0, $v0 +/* 075598 80074998 14400003 */ bnez $v0, .L800749A8 +/* 07559C 8007499C 24060000 */ li $a2, 0 +/* 0755A0 800749A0 10000026 */ b .L80074A3C +/* 0755A4 800749A4 2402FFFF */ li $v0, -1 +.L800749A8: +/* 0755A8 800749A8 8E040000 */ lw $a0, ($s0) +/* 0755AC 800749AC 8E050004 */ lw $a1, 4($s0) +/* 0755B0 800749B0 0C033AC1 */ jal __ll_lshift +/* 0755B4 800749B4 24070008 */ li $a3, 8 +/* 0755B8 800749B8 AE020000 */ sw $v0, ($s0) +/* 0755BC 800749BC AE030004 */ sw $v1, 4($s0) +/* 0755C0 800749C0 00402025 */ move $a0, $v0 +/* 0755C4 800749C4 00602825 */ move $a1, $v1 +/* 0755C8 800749C8 24060000 */ li $a2, 0 +/* 0755CC 800749CC 0C033A98 */ jal __ull_rshift +/* 0755D0 800749D0 24070008 */ li $a3, 8 +/* 0755D4 800749D4 AE020000 */ sw $v0, ($s0) +/* 0755D8 800749D8 AE030004 */ sw $v1, 4($s0) +/* 0755DC 800749DC 00402025 */ move $a0, $v0 +/* 0755E0 800749E0 0C01D203 */ jal func_8007480C +/* 0755E4 800749E4 00602825 */ move $a1, $v1 +/* 0755E8 800749E8 00402825 */ move $a1, $v0 +/* 0755EC 800749EC 000227C3 */ sra $a0, $v0, 0x1f +/* 0755F0 800749F0 24060000 */ li $a2, 0 +/* 0755F4 800749F4 0C033AC1 */ jal __ll_lshift +/* 0755F8 800749F8 24070038 */ li $a3, 56 +/* 0755FC 800749FC 8E0E0000 */ lw $t6, ($s0) +/* 075600 80074A00 8E0F0004 */ lw $t7, 4($s0) +/* 075604 80074A04 01C2C025 */ or $t8, $t6, $v0 +/* 075608 80074A08 01E3C825 */ or $t9, $t7, $v1 +/* 07560C 80074A0C AE190004 */ sw $t9, 4($s0) +/* 075610 80074A10 0C01BAB0 */ jal func_8006EAC0 +/* 075614 80074A14 AE180000 */ sw $t8, ($s0) +/* 075618 80074A18 14400008 */ bnez $v0, .L80074A3C +/* 07561C 80074A1C 24020001 */ li $v0, 1 +/* 075620 80074A20 0C01A840 */ jal func_8006A100 +/* 075624 80074A24 00000000 */ nop +/* 075628 80074A28 00402025 */ move $a0, $v0 +/* 07562C 80074A2C 2405000F */ li $a1, 15 +/* 075630 80074A30 0C033960 */ jal osEepromWrite +/* 075634 80074A34 02003025 */ move $a2, $s0 +/* 075638 80074A38 24020001 */ li $v0, 1 +.L80074A3C: +/* 07563C 80074A3C 8FBF001C */ lw $ra, 0x1c($sp) +/* 075640 80074A40 8FB00018 */ lw $s0, 0x18($sp) +/* 075644 80074A44 03E00008 */ jr $ra +/* 075648 80074A48 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_072E50/func_80074A4C.s b/asm/non_matchings/unknown_072E50/func_80074A4C.s new file mode 100644 index 00000000..c0472d1a --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80074A4C.s @@ -0,0 +1,27 @@ +glabel func_80074A4C +/* 07564C 80074A4C 84820006 */ lh $v0, 6($a0) +/* 075650 80074A50 00001825 */ move $v1, $zero +/* 075654 80074A54 00027080 */ sll $t6, $v0, 2 +/* 075658 80074A58 01C27023 */ subu $t6, $t6, $v0 +/* 07565C 80074A5C 000EC080 */ sll $t8, $t6, 2 +/* 075660 80074A60 27020008 */ addiu $v0, $t8, 8 +/* 075664 80074A64 0002CC00 */ sll $t9, $v0, 0x10 +/* 075668 80074A68 00191403 */ sra $v0, $t9, 0x10 +/* 07566C 80074A6C 28410003 */ slti $at, $v0, 3 +/* 075670 80074A70 1420000B */ bnez $at, .L80074AA0 +/* 075674 80074A74 24050002 */ li $a1, 2 +.L80074A78: +/* 075678 80074A78 00854821 */ addu $t1, $a0, $a1 +/* 07567C 80074A7C 912A0000 */ lbu $t2, ($t1) +/* 075680 80074A80 24A50001 */ addiu $a1, $a1, 1 +/* 075684 80074A84 00056C00 */ sll $t5, $a1, 0x10 +/* 075688 80074A88 000D2C03 */ sra $a1, $t5, 0x10 +/* 07568C 80074A8C 006A1821 */ addu $v1, $v1, $t2 +/* 075690 80074A90 00A2082A */ slt $at, $a1, $v0 +/* 075694 80074A94 00035C00 */ sll $t3, $v1, 0x10 +/* 075698 80074A98 1420FFF7 */ bnez $at, .L80074A78 +/* 07569C 80074A9C 000B1C03 */ sra $v1, $t3, 0x10 +.L80074AA0: +/* 0756A0 80074AA0 03E00008 */ jr $ra +/* 0756A4 80074AA4 00601025 */ move $v0, $v1 + diff --git a/asm/non_matchings/unknown_072E50/func_80074AA8.s b/asm/non_matchings/unknown_072E50/func_80074AA8.s new file mode 100644 index 00000000..a390057b --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80074AA8.s @@ -0,0 +1,31 @@ +glabel func_80074AA8 +/* 0756A8 80074AA8 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0756AC 80074AAC AFBF001C */ sw $ra, 0x1c($sp) +/* 0756B0 80074AB0 AFB00018 */ sw $s0, 0x18($sp) +/* 0756B4 80074AB4 AFA50024 */ sw $a1, 0x24($sp) +/* 0756B8 80074AB8 AFA60028 */ sw $a2, 0x28($sp) +/* 0756BC 80074ABC AFA7002C */ sw $a3, 0x2c($sp) +/* 0756C0 80074AC0 A4800000 */ sh $zero, ($a0) +/* 0756C4 80074AC4 87B80026 */ lh $t8, 0x26($sp) +/* 0756C8 80074AC8 00077400 */ sll $t6, $a3, 0x10 +/* 0756CC 80074ACC A0800003 */ sb $zero, 3($a0) +/* 0756D0 80074AD0 A0980002 */ sb $t8, 2($a0) +/* 0756D4 80074AD4 87B9002A */ lh $t9, 0x2a($sp) +/* 0756D8 80074AD8 000E7C03 */ sra $t7, $t6, 0x10 +/* 0756DC 80074ADC 00808025 */ move $s0, $a0 +/* 0756E0 80074AE0 A48F0006 */ sh $t7, 6($a0) +/* 0756E4 80074AE4 000F3080 */ sll $a2, $t7, 2 +/* 0756E8 80074AE8 A4990004 */ sh $t9, 4($a0) +/* 0756EC 80074AEC 8FA40030 */ lw $a0, 0x30($sp) +/* 0756F0 80074AF0 00CF3023 */ subu $a2, $a2, $t7 +/* 0756F4 80074AF4 00063080 */ sll $a2, $a2, 2 +/* 0756F8 80074AF8 0C032768 */ jal bcopy +/* 0756FC 80074AFC 26050008 */ addiu $a1, $s0, 8 +/* 075700 80074B00 0C01D293 */ jal func_80074A4C +/* 075704 80074B04 02002025 */ move $a0, $s0 +/* 075708 80074B08 A6020000 */ sh $v0, ($s0) +/* 07570C 80074B0C 8FBF001C */ lw $ra, 0x1c($sp) +/* 075710 80074B10 8FB00018 */ lw $s0, 0x18($sp) +/* 075714 80074B14 03E00008 */ jr $ra +/* 075718 80074B18 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_072E50/func_80074B1C.s b/asm/non_matchings/unknown_072E50/func_80074B1C.s new file mode 100644 index 00000000..41034853 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80074B1C.s @@ -0,0 +1,8 @@ +glabel func_80074B1C +/* 07571C 80074B1C 24031100 */ li $v1, 4352 +/* 075720 80074B20 00031080 */ sll $v0, $v1, 2 +/* 075724 80074B24 00431023 */ subu $v0, $v0, $v1 +/* 075728 80074B28 00021040 */ sll $v0, $v0, 1 +/* 07572C 80074B2C 03E00008 */ jr $ra +/* 075730 80074B30 24420100 */ addiu $v0, $v0, 0x100 + diff --git a/asm/non_matchings/unknown_072E50/func_80074B34.s b/asm/non_matchings/unknown_072E50/func_80074B34.s new file mode 100644 index 00000000..040b0d2a --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80074B34.s @@ -0,0 +1,252 @@ +glabel func_80074B34 +/* 075734 80074B34 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 075738 80074B38 AFBF001C */ sw $ra, 0x1c($sp) +/* 07573C 80074B3C AFA40058 */ sw $a0, 0x58($sp) +/* 075740 80074B40 AFA5005C */ sw $a1, 0x5c($sp) +/* 075744 80074B44 AFA60060 */ sw $a2, 0x60($sp) +/* 075748 80074B48 AFA70064 */ sw $a3, 0x64($sp) +/* 07574C 80074B4C 0C01D637 */ jal func_800758DC +/* 075750 80074B50 AFA00040 */ sw $zero, 0x40($sp) +/* 075754 80074B54 10400007 */ beqz $v0, .L80074B74 +/* 075758 80074B58 3C05800E */ lui $a1, %hi(D_800E773C) # $a1, 0x800e +/* 07575C 80074B5C 8FA40058 */ lw $a0, 0x58($sp) +/* 075760 80074B60 0C01D6BB */ jal func_80075AEC +/* 075764 80074B64 AFA2004C */ sw $v0, 0x4c($sp) +/* 075768 80074B68 8FA2004C */ lw $v0, 0x4c($sp) +/* 07576C 80074B6C 100000CF */ b .L80074EAC +/* 075770 80074B70 8FBF001C */ lw $ra, 0x1c($sp) +.L80074B74: +/* 075774 80074B74 8FA20064 */ lw $v0, 0x64($sp) +/* 075778 80074B78 24A5773C */ addiu $a1, %lo(D_800E773C) # addiu $a1, $a1, 0x773c +/* 07577C 80074B7C 10400006 */ beqz $v0, .L80074B98 +/* 075780 80074B80 3C06800E */ lui $a2, %hi(D_800E774C) # $a2, 0x800e +/* 075784 80074B84 8FAF0068 */ lw $t7, 0x68($sp) +/* 075788 80074B88 240EFFFF */ li $t6, -1 +/* 07578C 80074B8C 3418FFFF */ li $t8, 65535 +/* 075790 80074B90 A5EE0000 */ sh $t6, ($t7) +/* 075794 80074B94 A4580000 */ sh $t8, ($v0) +.L80074B98: +/* 075798 80074B98 8FA40058 */ lw $a0, 0x58($sp) +/* 07579C 80074B9C 24C6774C */ addiu $a2, %lo(D_800E774C) # addiu $a2, $a2, 0x774c +/* 0757A0 80074BA0 0C01D93A */ jal func_800764E8 +/* 0757A4 80074BA4 27A70048 */ addiu $a3, $sp, 0x48 +/* 0757A8 80074BA8 144000A1 */ bnez $v0, .L80074E30 +/* 0757AC 80074BAC 00403825 */ move $a3, $v0 +/* 0757B0 80074BB0 24040100 */ li $a0, 256 +/* 0757B4 80074BB4 0C01C327 */ jal func_80070C9C +/* 0757B8 80074BB8 240500FF */ li $a1, 255 +/* 0757BC 80074BBC 8FB90058 */ lw $t9, 0x58($sp) +/* 0757C0 80074BC0 3C0B8012 */ lui $t3, %hi(D_80124018) # $t3, 0x8012 +/* 0757C4 80074BC4 00195080 */ sll $t2, $t9, 2 +/* 0757C8 80074BC8 01595023 */ subu $t2, $t2, $t9 +/* 0757CC 80074BCC 000A5080 */ sll $t2, $t2, 2 +/* 0757D0 80074BD0 01595021 */ addu $t2, $t2, $t9 +/* 0757D4 80074BD4 000A50C0 */ sll $t2, $t2, 3 +/* 0757D8 80074BD8 256B4018 */ addiu $t3, %lo(D_80124018) # addiu $t3, $t3, 0x4018 +/* 0757DC 80074BDC 014B6021 */ addu $t4, $t2, $t3 +/* 0757E0 80074BE0 AFA20050 */ sw $v0, 0x50($sp) +/* 0757E4 80074BE4 AFAC0030 */ sw $t4, 0x30($sp) +/* 0757E8 80074BE8 8D8D0000 */ lw $t5, ($t4) +/* 0757EC 80074BEC 01802825 */ move $a1, $t4 +/* 0757F0 80074BF0 31AE0001 */ andi $t6, $t5, 1 +/* 0757F4 80074BF4 15C00004 */ bnez $t6, .L80074C08 +/* 0757F8 80074BF8 3C048012 */ lui $a0, %hi(D_80124010) # $a0, 0x8012 +/* 0757FC 80074BFC 8C844010 */ lw $a0, %lo(D_80124010)($a0) +/* 075800 80074C00 0C033B48 */ jal func_800CED20 +/* 075804 80074C04 03203025 */ move $a2, $t9 +.L80074C08: +/* 075808 80074C08 8FA40058 */ lw $a0, 0x58($sp) +/* 07580C 80074C0C 8FA50048 */ lw $a1, 0x48($sp) +/* 075810 80074C10 8FA60050 */ lw $a2, 0x50($sp) +/* 075814 80074C14 0C01D984 */ jal func_80076610 +/* 075818 80074C18 24070100 */ li $a3, 256 +/* 07581C 80074C1C 87A8005E */ lh $t0, 0x5e($sp) +/* 075820 80074C20 87A90062 */ lh $t1, 0x62($sp) +/* 075824 80074C24 1440003F */ bnez $v0, .L80074D24 +/* 075828 80074C28 00403825 */ move $a3, $v0 +/* 07582C 80074C2C 8FA60050 */ lw $a2, 0x50($sp) +/* 075830 80074C30 3C014748 */ lui $at, (0x47485353 >> 16) # lui $at, 0x4748 +/* 075834 80074C34 8CCF0000 */ lw $t7, ($a2) +/* 075838 80074C38 34215353 */ ori $at, (0x47485353 & 0xFFFF) # ori $at, $at, 0x5353 +/* 07583C 80074C3C 15E10038 */ bne $t7, $at, .L80074D20 +/* 075840 80074C40 24C50004 */ addiu $a1, $a2, 4 +/* 075844 80074C44 00001825 */ move $v1, $zero +/* 075848 80074C48 00A01025 */ move $v0, $a1 +.L80074C4C: +/* 07584C 80074C4C 90580000 */ lbu $t8, ($v0) +/* 075850 80074C50 24630004 */ addiu $v1, $v1, 4 +/* 075854 80074C54 1518000D */ bne $t0, $t8, .L80074C8C +/* 075858 80074C58 28610018 */ slti $at, $v1, 0x18 +/* 07585C 80074C5C 904A0001 */ lbu $t2, 1($v0) +/* 075860 80074C60 00000000 */ nop +/* 075864 80074C64 152A0009 */ bne $t1, $t2, .L80074C8C +/* 075868 80074C68 00000000 */ nop +/* 07586C 80074C6C 844B0002 */ lh $t3, 2($v0) +/* 075870 80074C70 00000000 */ nop +/* 075874 80074C74 AFAB0040 */ sw $t3, 0x40($sp) +/* 075878 80074C78 844D0006 */ lh $t5, 6($v0) +/* 07587C 80074C7C 00000000 */ nop +/* 075880 80074C80 01AB6023 */ subu $t4, $t5, $t3 +/* 075884 80074C84 10000003 */ b .L80074C94 +/* 075888 80074C88 AFAC003C */ sw $t4, 0x3c($sp) +.L80074C8C: +/* 07588C 80074C8C 1420FFEF */ bnez $at, .L80074C4C +/* 075890 80074C90 24420004 */ addiu $v0, $v0, 4 +.L80074C94: +/* 075894 80074C94 8FB90040 */ lw $t9, 0x40($sp) +/* 075898 80074C98 240300FF */ li $v1, 255 +/* 07589C 80074C9C 17200021 */ bnez $t9, .L80074D24 +/* 0758A0 80074CA0 24040002 */ li $a0, 2 +/* 0758A4 80074CA4 90AF0000 */ lbu $t7, ($a1) +/* 0758A8 80074CA8 24070006 */ li $a3, 6 +/* 0758AC 80074CAC 146F0002 */ bne $v1, $t7, .L80074CB8 +/* 0758B0 80074CB0 00A01025 */ move $v0, $a1 +/* 0758B4 80074CB4 24070008 */ li $a3, 8 +.L80074CB8: +/* 0758B8 80074CB8 90580004 */ lbu $t8, 4($v0) +/* 0758BC 80074CBC 00045080 */ sll $t2, $a0, 2 +/* 0758C0 80074CC0 14780002 */ bne $v1, $t8, .L80074CCC +/* 0758C4 80074CC4 00AA1021 */ addu $v0, $a1, $t2 +/* 0758C8 80074CC8 24070008 */ li $a3, 8 +.L80074CCC: +/* 0758CC 80074CCC 904B0000 */ lbu $t3, ($v0) +/* 0758D0 80074CD0 00000000 */ nop +/* 0758D4 80074CD4 146B0002 */ bne $v1, $t3, .L80074CE0 +/* 0758D8 80074CD8 00000000 */ nop +/* 0758DC 80074CDC 24070008 */ li $a3, 8 +.L80074CE0: +/* 0758E0 80074CE0 904D0004 */ lbu $t5, 4($v0) +/* 0758E4 80074CE4 00000000 */ nop +/* 0758E8 80074CE8 146D0002 */ bne $v1, $t5, .L80074CF4 +/* 0758EC 80074CEC 00000000 */ nop +/* 0758F0 80074CF0 24070008 */ li $a3, 8 +.L80074CF4: +/* 0758F4 80074CF4 904E0008 */ lbu $t6, 8($v0) +/* 0758F8 80074CF8 00000000 */ nop +/* 0758FC 80074CFC 146E0002 */ bne $v1, $t6, .L80074D08 +/* 075900 80074D00 00000000 */ nop +/* 075904 80074D04 24070008 */ li $a3, 8 +.L80074D08: +/* 075908 80074D08 904C000C */ lbu $t4, 0xc($v0) +/* 07590C 80074D0C 00000000 */ nop +/* 075910 80074D10 146C0005 */ bne $v1, $t4, .L80074D28 +/* 075914 80074D14 8FA40050 */ lw $a0, 0x50($sp) +/* 075918 80074D18 10000002 */ b .L80074D24 +/* 07591C 80074D1C 24070008 */ li $a3, 8 +.L80074D20: +/* 075920 80074D20 24070009 */ li $a3, 9 +.L80074D24: +/* 075924 80074D24 8FA40050 */ lw $a0, 0x50($sp) +.L80074D28: +/* 075928 80074D28 0C01C450 */ jal func_80071140 +/* 07592C 80074D2C AFA7004C */ sw $a3, 0x4c($sp) +/* 075930 80074D30 8FB90040 */ lw $t9, 0x40($sp) +/* 075934 80074D34 8FA7004C */ lw $a3, 0x4c($sp) +/* 075938 80074D38 13200037 */ beqz $t9, .L80074E18 +/* 07593C 80074D3C 8FAB0040 */ lw $t3, 0x40($sp) +/* 075940 80074D40 8FAF0064 */ lw $t7, 0x64($sp) +/* 075944 80074D44 8FA4003C */ lw $a0, 0x3c($sp) +/* 075948 80074D48 11E00032 */ beqz $t7, .L80074E14 +/* 07594C 80074D4C 24840100 */ addiu $a0, $a0, 0x100 +/* 075950 80074D50 0C01C327 */ jal func_80070C9C +/* 075954 80074D54 240500FF */ li $a1, 255 +/* 075958 80074D58 8FB8003C */ lw $t8, 0x3c($sp) +/* 07595C 80074D5C 8FA40030 */ lw $a0, 0x30($sp) +/* 075960 80074D60 8FA50048 */ lw $a1, 0x48($sp) +/* 075964 80074D64 8FA70040 */ lw $a3, 0x40($sp) +/* 075968 80074D68 AFA20050 */ sw $v0, 0x50($sp) +/* 07596C 80074D6C 00003025 */ move $a2, $zero +/* 075970 80074D70 AFA20014 */ sw $v0, 0x14($sp) +/* 075974 80074D74 0C033BF7 */ jal func_800CEFDC +/* 075978 80074D78 AFB80010 */ sw $t8, 0x10($sp) +/* 07597C 80074D7C 14400020 */ bnez $v0, .L80074E00 +/* 075980 80074D80 24070009 */ li $a3, 9 +/* 075984 80074D84 8FA40050 */ lw $a0, 0x50($sp) +/* 075988 80074D88 0C01D293 */ jal func_80074A4C +/* 07598C 80074D8C 00000000 */ nop +/* 075990 80074D90 8FAA0050 */ lw $t2, 0x50($sp) +/* 075994 80074D94 8FAE0064 */ lw $t6, 0x64($sp) +/* 075998 80074D98 854B0000 */ lh $t3, ($t2) +/* 07599C 80074D9C 00000000 */ nop +/* 0759A0 80074DA0 144B0015 */ bne $v0, $t3, .L80074DF8 +/* 0759A4 80074DA4 00000000 */ nop +/* 0759A8 80074DA8 914D0002 */ lbu $t5, 2($t2) +/* 0759AC 80074DAC 8FA2006C */ lw $v0, 0x6c($sp) +/* 0759B0 80074DB0 A5CD0000 */ sh $t5, ($t6) +/* 0759B4 80074DB4 8FB90068 */ lw $t9, 0x68($sp) +/* 0759B8 80074DB8 854C0004 */ lh $t4, 4($t2) +/* 0759BC 80074DBC 00000000 */ nop +/* 0759C0 80074DC0 A72C0000 */ sh $t4, ($t9) +/* 0759C4 80074DC4 854F0006 */ lh $t7, 6($t2) +/* 0759C8 80074DC8 00000000 */ nop +/* 0759CC 80074DCC A44F0000 */ sh $t7, ($v0) +/* 0759D0 80074DD0 84460000 */ lh $a2, ($v0) +/* 0759D4 80074DD4 8FA40050 */ lw $a0, 0x50($sp) +/* 0759D8 80074DD8 0006C080 */ sll $t8, $a2, 2 +/* 0759DC 80074DDC 8FA50070 */ lw $a1, 0x70($sp) +/* 0759E0 80074DE0 0306C023 */ subu $t8, $t8, $a2 +/* 0759E4 80074DE4 00183080 */ sll $a2, $t8, 2 +/* 0759E8 80074DE8 0C032768 */ jal bcopy +/* 0759EC 80074DEC 24840008 */ addiu $a0, $a0, 8 +/* 0759F0 80074DF0 10000003 */ b .L80074E00 +/* 0759F4 80074DF4 00003825 */ move $a3, $zero +.L80074DF8: +/* 0759F8 80074DF8 10000001 */ b .L80074E00 +/* 0759FC 80074DFC 24070009 */ li $a3, 9 +.L80074E00: +/* 075A00 80074E00 8FA40050 */ lw $a0, 0x50($sp) +/* 075A04 80074E04 0C01C450 */ jal func_80071140 +/* 075A08 80074E08 AFA7004C */ sw $a3, 0x4c($sp) +/* 075A0C 80074E0C 8FA7004C */ lw $a3, 0x4c($sp) +/* 075A10 80074E10 00000000 */ nop +.L80074E14: +/* 075A14 80074E14 8FAB0040 */ lw $t3, 0x40($sp) +.L80074E18: +/* 075A18 80074E18 8FAD0064 */ lw $t5, 0x64($sp) +/* 075A1C 80074E1C 11600005 */ beqz $t3, .L80074E34 +/* 075A20 80074E20 8FA40058 */ lw $a0, 0x58($sp) +/* 075A24 80074E24 15A00003 */ bnez $t5, .L80074E34 +/* 075A28 80074E28 8FA40058 */ lw $a0, 0x58($sp) +/* 075A2C 80074E2C 00003825 */ move $a3, $zero +.L80074E30: +/* 075A30 80074E30 8FA40058 */ lw $a0, 0x58($sp) +.L80074E34: +/* 075A34 80074E34 0C01D6BB */ jal func_80075AEC +/* 075A38 80074E38 AFA7004C */ sw $a3, 0x4c($sp) +/* 075A3C 80074E3C 8FA7004C */ lw $a3, 0x4c($sp) +/* 075A40 80074E40 24010005 */ li $at, 5 +/* 075A44 80074E44 14E10017 */ bne $a3, $at, .L80074EA4 +/* 075A48 80074E48 27A50038 */ addiu $a1, $sp, 0x38 +/* 075A4C 80074E4C 8FA40058 */ lw $a0, 0x58($sp) +/* 075A50 80074E50 27A60034 */ addiu $a2, $sp, 0x34 +/* 075A54 80074E54 0C01D865 */ jal func_80076194 +/* 075A58 80074E58 AFA7004C */ sw $a3, 0x4c($sp) +/* 075A5C 80074E5C 8FA7004C */ lw $a3, 0x4c($sp) +/* 075A60 80074E60 1440000E */ bnez $v0, .L80074E9C +/* 075A64 80074E64 00000000 */ nop +/* 075A68 80074E68 0C01D2C7 */ jal func_80074B1C +/* 075A6C 80074E6C AFA7004C */ sw $a3, 0x4c($sp) +/* 075A70 80074E70 8FAE0038 */ lw $t6, 0x38($sp) +/* 075A74 80074E74 8FA7004C */ lw $a3, 0x4c($sp) +/* 075A78 80074E78 01C2082A */ slt $at, $t6, $v0 +/* 075A7C 80074E7C 14200005 */ bnez $at, .L80074E94 +/* 075A80 80074E80 00000000 */ nop +/* 075A84 80074E84 8FAC0034 */ lw $t4, 0x34($sp) +/* 075A88 80074E88 00000000 */ nop +/* 075A8C 80074E8C 15800006 */ bnez $t4, .L80074EA8 +/* 075A90 80074E90 00E01025 */ move $v0, $a3 +.L80074E94: +/* 075A94 80074E94 10000004 */ b .L80074EA8 +/* 075A98 80074E98 24020004 */ li $v0, 4 +.L80074E9C: +/* 075A9C 80074E9C 10000002 */ b .L80074EA8 +/* 075AA0 80074EA0 24020009 */ li $v0, 9 +.L80074EA4: +/* 075AA4 80074EA4 00E01025 */ move $v0, $a3 +.L80074EA8: +/* 075AA8 80074EA8 8FBF001C */ lw $ra, 0x1c($sp) +.L80074EAC: +/* 075AAC 80074EAC 27BD0058 */ addiu $sp, $sp, 0x58 +/* 075AB0 80074EB0 03E00008 */ jr $ra +/* 075AB4 80074EB4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_072E50/func_80074EB8.s b/asm/non_matchings/unknown_072E50/func_80074EB8.s new file mode 100644 index 00000000..3dd1f1ae --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80074EB8.s @@ -0,0 +1,84 @@ +glabel func_80074EB8 +/* 075AB8 80074EB8 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 075ABC 80074EBC AFA60048 */ sw $a2, 0x48($sp) +/* 075AC0 80074EC0 24061100 */ li $a2, 4352 +/* 075AC4 80074EC4 00061080 */ sll $v0, $a2, 2 +/* 075AC8 80074EC8 00461023 */ subu $v0, $v0, $a2 +/* 075ACC 80074ECC AFBF001C */ sw $ra, 0x1c($sp) +/* 075AD0 80074ED0 AFA40040 */ sw $a0, 0x40($sp) +/* 075AD4 80074ED4 AFA50044 */ sw $a1, 0x44($sp) +/* 075AD8 80074ED8 00021040 */ sll $v0, $v0, 1 +/* 075ADC 80074EDC AFA7004C */ sw $a3, 0x4c($sp) +/* 075AE0 80074EE0 24440200 */ addiu $a0, $v0, 0x200 +/* 075AE4 80074EE4 AFA20024 */ sw $v0, 0x24($sp) +/* 075AE8 80074EE8 240500FF */ li $a1, 255 +/* 075AEC 80074EEC 0C01C327 */ jal func_80070C9C +/* 075AF0 80074EF0 AFA60030 */ sw $a2, 0x30($sp) +/* 075AF4 80074EF4 3C0E4748 */ lui $t6, (0x47485353 >> 16) # lui $t6, 0x4748 +/* 075AF8 80074EF8 8FA60030 */ lw $a2, 0x30($sp) +/* 075AFC 80074EFC 35CE5353 */ ori $t6, (0x47485353 & 0xFFFF) # ori $t6, $t6, 0x5353 +/* 075B00 80074F00 AC4E0000 */ sw $t6, ($v0) +/* 075B04 80074F04 87AF0046 */ lh $t7, 0x46($sp) +/* 075B08 80074F08 24190100 */ li $t9, 256 +/* 075B0C 80074F0C A04F0004 */ sb $t7, 4($v0) +/* 075B10 80074F10 87B8004A */ lh $t8, 0x4a($sp) +/* 075B14 80074F14 A4590006 */ sh $t9, 6($v0) +/* 075B18 80074F18 844A0006 */ lh $t2, 6($v0) +/* 075B1C 80074F1C 00404825 */ move $t1, $v0 +/* 075B20 80074F20 01465821 */ addu $t3, $t2, $a2 +/* 075B24 80074F24 24430004 */ addiu $v1, $v0, 4 +/* 075B28 80074F28 A44B000A */ sh $t3, 0xa($v0) +/* 075B2C 80074F2C A0580005 */ sb $t8, 5($v0) +/* 075B30 80074F30 24620004 */ addiu $v0, $v1, 4 +/* 075B34 80074F34 240400FF */ li $a0, 255 +/* 075B38 80074F38 A0440000 */ sb $a0, ($v0) +/* 075B3C 80074F3C 846C0006 */ lh $t4, 6($v1) +/* 075B40 80074F40 A0440004 */ sb $a0, 4($v0) +/* 075B44 80074F44 A44C0002 */ sh $t4, 2($v0) +/* 075B48 80074F48 846D0006 */ lh $t5, 6($v1) +/* 075B4C 80074F4C 24050003 */ li $a1, 3 +/* 075B50 80074F50 00057080 */ sll $t6, $a1, 2 +/* 075B54 80074F54 A44D0006 */ sh $t5, 6($v0) +/* 075B58 80074F58 006E1021 */ addu $v0, $v1, $t6 +/* 075B5C 80074F5C A0440000 */ sb $a0, ($v0) +/* 075B60 80074F60 846F0006 */ lh $t7, 6($v1) +/* 075B64 80074F64 A0440004 */ sb $a0, 4($v0) +/* 075B68 80074F68 A44F0002 */ sh $t7, 2($v0) +/* 075B6C 80074F6C 84780006 */ lh $t8, 6($v1) +/* 075B70 80074F70 A0440008 */ sb $a0, 8($v0) +/* 075B74 80074F74 A4580006 */ sh $t8, 6($v0) +/* 075B78 80074F78 84790006 */ lh $t9, 6($v1) +/* 075B7C 80074F7C A044000C */ sb $a0, 0xc($v0) +/* 075B80 80074F80 A459000A */ sh $t9, 0xa($v0) +/* 075B84 80074F84 846A0006 */ lh $t2, 6($v1) +/* 075B88 80074F88 00000000 */ nop +/* 075B8C 80074F8C A44A000E */ sh $t2, 0xe($v0) +/* 075B90 80074F90 846B0002 */ lh $t3, 2($v1) +/* 075B94 80074F94 8FAC0058 */ lw $t4, 0x58($sp) +/* 075B98 80074F98 87A70056 */ lh $a3, 0x56($sp) +/* 075B9C 80074F9C 87A60052 */ lh $a2, 0x52($sp) +/* 075BA0 80074FA0 87A5004E */ lh $a1, 0x4e($sp) +/* 075BA4 80074FA4 AFA90038 */ sw $t1, 0x38($sp) +/* 075BA8 80074FA8 01692021 */ addu $a0, $t3, $t1 +/* 075BAC 80074FAC 0C01D2AA */ jal func_80074AA8 +/* 075BB0 80074FB0 AFAC0010 */ sw $t4, 0x10($sp) +/* 075BB4 80074FB4 8FAE0024 */ lw $t6, 0x24($sp) +/* 075BB8 80074FB8 8FAD0038 */ lw $t5, 0x38($sp) +/* 075BBC 80074FBC 8FA40040 */ lw $a0, 0x40($sp) +/* 075BC0 80074FC0 3C06800E */ lui $a2, %hi(D_800E7768) # $a2, 0x800e +/* 075BC4 80074FC4 3C07800E */ lui $a3, %hi(D_800E7778) # $a3, 0x800e +/* 075BC8 80074FC8 25CF0100 */ addiu $t7, $t6, 0x100 +/* 075BCC 80074FCC AFAF0014 */ sw $t7, 0x14($sp) +/* 075BD0 80074FD0 24E77778 */ addiu $a3, %lo(D_800E7778) # addiu $a3, $a3, 0x7778 +/* 075BD4 80074FD4 24C67768 */ addiu $a2, %lo(D_800E7768) # addiu $a2, $a2, 0x7768 +/* 075BD8 80074FD8 2405FFFF */ li $a1, -1 +/* 075BDC 80074FDC 0C01D9B5 */ jal func_800766D4 +/* 075BE0 80074FE0 AFAD0010 */ sw $t5, 0x10($sp) +/* 075BE4 80074FE4 8FA40038 */ lw $a0, 0x38($sp) +/* 075BE8 80074FE8 0C01C450 */ jal func_80071140 +/* 075BEC 80074FEC AFA20028 */ sw $v0, 0x28($sp) +/* 075BF0 80074FF0 8FBF001C */ lw $ra, 0x1c($sp) +/* 075BF4 80074FF4 8FA20028 */ lw $v0, 0x28($sp) +/* 075BF8 80074FF8 03E00008 */ jr $ra +/* 075BFC 80074FFC 27BD0040 */ addiu $sp, $sp, 0x40 + diff --git a/asm/non_matchings/unknown_072E50/func_80075000.s b/asm/non_matchings/unknown_072E50/func_80075000.s new file mode 100644 index 00000000..af6d8596 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80075000.s @@ -0,0 +1,268 @@ +glabel func_80075000 +/* 075C00 80075000 27BDFF88 */ addiu $sp, $sp, -0x78 +/* 075C04 80075004 AFBF0034 */ sw $ra, 0x34($sp) +/* 075C08 80075008 AFB20030 */ sw $s2, 0x30($sp) +/* 075C0C 8007500C AFB1002C */ sw $s1, 0x2c($sp) +/* 075C10 80075010 AFB00028 */ sw $s0, 0x28($sp) +/* 075C14 80075014 AFA40078 */ sw $a0, 0x78($sp) +/* 075C18 80075018 AFA5007C */ sw $a1, 0x7c($sp) +/* 075C1C 8007501C AFA60080 */ sw $a2, 0x80($sp) +/* 075C20 80075020 0C01D637 */ jal func_800758DC +/* 075C24 80075024 AFA70084 */ sw $a3, 0x84($sp) +/* 075C28 80075028 10400006 */ beqz $v0, .L80075044 +/* 075C2C 8007502C 00408025 */ move $s0, $v0 +/* 075C30 80075030 8FA40078 */ lw $a0, 0x78($sp) +/* 075C34 80075034 0C01D6BB */ jal func_80075AEC +/* 075C38 80075038 00000000 */ nop +/* 075C3C 8007503C 100000E0 */ b .L800753C0 +/* 075C40 80075040 02001025 */ move $v0, $s0 +.L80075044: +/* 075C44 80075044 8FA40078 */ lw $a0, 0x78($sp) +/* 075C48 80075048 3C05800E */ lui $a1, %hi(D_800E777C) # $a1, 0x800e +/* 075C4C 8007504C 3C06800E */ lui $a2, %hi(D_800E778C) # $a2, 0x800e +/* 075C50 80075050 24111100 */ li $s1, 4352 +/* 075C54 80075054 24C6778C */ addiu $a2, %lo(D_800E778C) # addiu $a2, $a2, 0x778c +/* 075C58 80075058 24A5777C */ addiu $a1, %lo(D_800E777C) # addiu $a1, $a1, 0x777c +/* 075C5C 8007505C 0C01D93A */ jal func_800764E8 +/* 075C60 80075060 27A7004C */ addiu $a3, $sp, 0x4c +/* 075C64 80075064 24010005 */ li $at, 5 +/* 075C68 80075068 14410011 */ bne $v0, $at, .L800750B0 +/* 075C6C 8007506C 00408025 */ move $s0, $v0 +/* 075C70 80075070 8FA40078 */ lw $a0, 0x78($sp) +/* 075C74 80075074 0C01D6BB */ jal func_80075AEC +/* 075C78 80075078 00000000 */ nop +/* 075C7C 8007507C 87AE008A */ lh $t6, 0x8a($sp) +/* 075C80 80075080 87AF008E */ lh $t7, 0x8e($sp) +/* 075C84 80075084 8FB80090 */ lw $t8, 0x90($sp) +/* 075C88 80075088 8FA40078 */ lw $a0, 0x78($sp) +/* 075C8C 8007508C 87A5007E */ lh $a1, 0x7e($sp) +/* 075C90 80075090 87A60082 */ lh $a2, 0x82($sp) +/* 075C94 80075094 87A70086 */ lh $a3, 0x86($sp) +/* 075C98 80075098 AFAE0010 */ sw $t6, 0x10($sp) +/* 075C9C 8007509C AFAF0014 */ sw $t7, 0x14($sp) +/* 075CA0 800750A0 0C01D3AE */ jal func_80074EB8 +/* 075CA4 800750A4 AFB80018 */ sw $t8, 0x18($sp) +/* 075CA8 800750A8 100000C6 */ b .L800753C4 +/* 075CAC 800750AC 8FBF0034 */ lw $ra, 0x34($sp) +.L800750B0: +/* 075CB0 800750B0 10400007 */ beqz $v0, .L800750D0 +/* 075CB4 800750B4 8FA40078 */ lw $a0, 0x78($sp) +/* 075CB8 800750B8 8FA40078 */ lw $a0, 0x78($sp) +/* 075CBC 800750BC 0C01D6BB */ jal func_80075AEC +/* 075CC0 800750C0 00000000 */ nop +/* 075CC4 800750C4 100000BE */ b .L800753C0 +/* 075CC8 800750C8 02001025 */ move $v0, $s0 +/* 075CCC 800750CC 8FA40078 */ lw $a0, 0x78($sp) +.L800750D0: +/* 075CD0 800750D0 8FA5004C */ lw $a1, 0x4c($sp) +/* 075CD4 800750D4 0C01DA49 */ jal func_80076924 +/* 075CD8 800750D8 27A60054 */ addiu $a2, $sp, 0x54 +/* 075CDC 800750DC 10400006 */ beqz $v0, .L800750F8 +/* 075CE0 800750E0 00408025 */ move $s0, $v0 +/* 075CE4 800750E4 8FA40078 */ lw $a0, 0x78($sp) +/* 075CE8 800750E8 0C01D6BB */ jal func_80075AEC +/* 075CEC 800750EC 00000000 */ nop +/* 075CF0 800750F0 100000B3 */ b .L800753C0 +/* 075CF4 800750F4 02001025 */ move $v0, $s0 +.L800750F8: +/* 075CF8 800750F8 8FA40054 */ lw $a0, 0x54($sp) +/* 075CFC 800750FC 240500FF */ li $a1, 255 +/* 075D00 80075100 0C01C327 */ jal func_80070C9C +/* 075D04 80075104 24840100 */ addiu $a0, $a0, 0x100 +/* 075D08 80075108 8FA40078 */ lw $a0, 0x78($sp) +/* 075D0C 8007510C 8FA5004C */ lw $a1, 0x4c($sp) +/* 075D10 80075110 8FA70054 */ lw $a3, 0x54($sp) +/* 075D14 80075114 00409025 */ move $s2, $v0 +/* 075D18 80075118 0C01D984 */ jal func_80076610 +/* 075D1C 8007511C 00403025 */ move $a2, $v0 +/* 075D20 80075120 8FA40078 */ lw $a0, 0x78($sp) +/* 075D24 80075124 0C01D6BB */ jal func_80075AEC +/* 075D28 80075128 00408025 */ move $s0, $v0 +/* 075D2C 8007512C 12000005 */ beqz $s0, .L80075144 +/* 075D30 80075130 3C014748 */ lui $at, (0x47485353 >> 16) # lui $at, 0x4748 +/* 075D34 80075134 0C01C450 */ jal func_80071140 +/* 075D38 80075138 02402025 */ move $a0, $s2 +/* 075D3C 8007513C 100000A0 */ b .L800753C0 +/* 075D40 80075140 02001025 */ move $v0, $s0 +.L80075144: +/* 075D44 80075144 8E590000 */ lw $t9, ($s2) +/* 075D48 80075148 34215353 */ ori $at, (0x47485353 & 0xFFFF) # ori $at, $at, 0x5353 +/* 075D4C 8007514C 17210099 */ bne $t9, $at, .L800753B4 +/* 075D50 80075150 24100009 */ li $s0, 9 +/* 075D54 80075154 26460004 */ addiu $a2, $s2, 4 +/* 075D58 80075158 87AB0082 */ lh $t3, 0x82($sp) +/* 075D5C 8007515C 87AA007E */ lh $t2, 0x7e($sp) +/* 075D60 80075160 00C08025 */ move $s0, $a2 +/* 075D64 80075164 00001825 */ move $v1, $zero +/* 075D68 80075168 2409FFFF */ li $t1, -1 +.L8007516C: +/* 075D6C 8007516C 920C0000 */ lbu $t4, ($s0) +/* 075D70 80075170 00000000 */ nop +/* 075D74 80075174 154C0007 */ bne $t2, $t4, .L80075194 +/* 075D78 80075178 00000000 */ nop +/* 075D7C 8007517C 920D0001 */ lbu $t5, 1($s0) +/* 075D80 80075180 00000000 */ nop +/* 075D84 80075184 156D0003 */ bne $t3, $t5, .L80075194 +/* 075D88 80075188 00000000 */ nop +/* 075D8C 8007518C 10000005 */ b .L800751A4 +/* 075D90 80075190 00604825 */ move $t1, $v1 +.L80075194: +/* 075D94 80075194 24630001 */ addiu $v1, $v1, 1 +/* 075D98 80075198 28610006 */ slti $at, $v1, 6 +/* 075D9C 8007519C 1420FFF3 */ bnez $at, .L8007516C +/* 075DA0 800751A0 26100004 */ addiu $s0, $s0, 4 +.L800751A4: +/* 075DA4 800751A4 2404FFFF */ li $a0, -1 +/* 075DA8 800751A8 1124000B */ beq $t1, $a0, .L800751D8 +/* 075DAC 800751AC 00097080 */ sll $t6, $t1, 2 +/* 075DB0 800751B0 00CE7821 */ addu $t7, $a2, $t6 +/* 075DB4 800751B4 85F80002 */ lh $t8, 2($t7) +/* 075DB8 800751B8 87B9008A */ lh $t9, 0x8a($sp) +/* 075DBC 800751BC 03121821 */ addu $v1, $t8, $s2 +/* 075DC0 800751C0 84630004 */ lh $v1, 4($v1) +/* 075DC4 800751C4 00000000 */ nop +/* 075DC8 800751C8 0079082A */ slt $at, $v1, $t9 +/* 075DCC 800751CC 10200002 */ beqz $at, .L800751D8 +/* 075DD0 800751D0 00000000 */ nop +/* 075DD4 800751D4 2409FFFE */ li $t1, -2 +.L800751D8: +/* 075DD8 800751D8 1524000E */ bne $t1, $a0, .L80075214 +/* 075DDC 800751DC 2401FFFE */ li $at, -2 +/* 075DE0 800751E0 00001825 */ move $v1, $zero +/* 075DE4 800751E4 00C08025 */ move $s0, $a2 +/* 075DE8 800751E8 24070006 */ li $a3, 6 +/* 075DEC 800751EC 240200FF */ li $v0, 255 +.L800751F0: +/* 075DF0 800751F0 920C0000 */ lbu $t4, ($s0) +/* 075DF4 800751F4 00000000 */ nop +/* 075DF8 800751F8 144C0003 */ bne $v0, $t4, .L80075208 +/* 075DFC 800751FC 00000000 */ nop +/* 075E00 80075200 10000004 */ b .L80075214 +/* 075E04 80075204 00604825 */ move $t1, $v1 +.L80075208: +/* 075E08 80075208 24630001 */ addiu $v1, $v1, 1 +/* 075E0C 8007520C 1467FFF8 */ bne $v1, $a3, .L800751F0 +/* 075E10 80075210 26100004 */ addiu $s0, $s0, 4 +.L80075214: +/* 075E14 80075214 15210003 */ bne $t1, $at, .L80075224 +/* 075E18 80075218 00000000 */ nop +/* 075E1C 8007521C 10000065 */ b .L800753B4 +/* 075E20 80075220 00008025 */ move $s0, $zero +.L80075224: +/* 075E24 80075224 15240003 */ bne $t1, $a0, .L80075234 +/* 075E28 80075228 00094080 */ sll $t0, $t1, 2 +/* 075E2C 8007522C 10000061 */ b .L800753B4 +/* 075E30 80075230 24100006 */ li $s0, 6 +.L80075234: +/* 075E34 80075234 00C81021 */ addu $v0, $a2, $t0 +/* 075E38 80075238 844D0006 */ lh $t5, 6($v0) +/* 075E3C 8007523C 844F0002 */ lh $t7, 2($v0) +/* 075E40 80075240 8FA40054 */ lw $a0, 0x54($sp) +/* 075E44 80075244 022D7023 */ subu $t6, $s1, $t5 +/* 075E48 80075248 01CFC021 */ addu $t8, $t6, $t7 +/* 075E4C 8007524C AFB80058 */ sw $t8, 0x58($sp) +/* 075E50 80075250 AFA9005C */ sw $t1, 0x5c($sp) +/* 075E54 80075254 AFA80044 */ sw $t0, 0x44($sp) +/* 075E58 80075258 AFA60048 */ sw $a2, 0x48($sp) +/* 075E5C 8007525C AFA00060 */ sw $zero, 0x60($sp) +/* 075E60 80075260 240500FF */ li $a1, 255 +/* 075E64 80075264 00001825 */ move $v1, $zero +/* 075E68 80075268 0C01C327 */ jal func_80070C9C +/* 075E6C 8007526C 24840100 */ addiu $a0, $a0, 0x100 +/* 075E70 80075270 3C194748 */ lui $t9, (0x47485353 >> 16) # lui $t9, 0x4748 +/* 075E74 80075274 8FB00048 */ lw $s0, 0x48($sp) +/* 075E78 80075278 8FA80058 */ lw $t0, 0x58($sp) +/* 075E7C 8007527C 8FA30060 */ lw $v1, 0x60($sp) +/* 075E80 80075280 8FA9005C */ lw $t1, 0x5c($sp) +/* 075E84 80075284 AFA20068 */ sw $v0, 0x68($sp) +/* 075E88 80075288 37395353 */ ori $t9, (0x47485353 & 0xFFFF) # ori $t9, $t9, 0x5353 +/* 075E8C 8007528C AC590000 */ sw $t9, ($v0) +/* 075E90 80075290 244C0004 */ addiu $t4, $v0, 4 +/* 075E94 80075294 AFAC0070 */ sw $t4, 0x70($sp) +/* 075E98 80075298 240D00FF */ li $t5, 255 +/* 075E9C 8007529C A04D001C */ sb $t5, 0x1c($v0) +/* 075EA0 800752A0 860E001A */ lh $t6, 0x1a($s0) +/* 075EA4 800752A4 00000000 */ nop +/* 075EA8 800752A8 01C87821 */ addu $t7, $t6, $t0 +/* 075EAC 800752AC A44F001E */ sh $t7, 0x1e($v0) +/* 075EB0 800752B0 8FB10070 */ lw $s1, 0x70($sp) +/* 075EB4 800752B4 00000000 */ nop +.L800752B8: +/* 075EB8 800752B8 92180000 */ lbu $t8, ($s0) +/* 075EBC 800752BC 8FA80058 */ lw $t0, 0x58($sp) +/* 075EC0 800752C0 A2380000 */ sb $t8, ($s1) +/* 075EC4 800752C4 92190001 */ lbu $t9, 1($s0) +/* 075EC8 800752C8 0123082A */ slt $at, $t1, $v1 +/* 075ECC 800752CC 14200004 */ bnez $at, .L800752E0 +/* 075ED0 800752D0 A2390001 */ sb $t9, 1($s1) +/* 075ED4 800752D4 860C0002 */ lh $t4, 2($s0) +/* 075ED8 800752D8 10000005 */ b .L800752F0 +/* 075EDC 800752DC A62C0002 */ sh $t4, 2($s1) +.L800752E0: +/* 075EE0 800752E0 860D0002 */ lh $t5, 2($s0) +/* 075EE4 800752E4 00000000 */ nop +/* 075EE8 800752E8 01A87021 */ addu $t6, $t5, $t0 +/* 075EEC 800752EC A62E0002 */ sh $t6, 2($s1) +.L800752F0: +/* 075EF0 800752F0 86020002 */ lh $v0, 2($s0) +/* 075EF4 800752F4 862F0002 */ lh $t7, 2($s1) +/* 075EF8 800752F8 86190006 */ lh $t9, 6($s0) +/* 075EFC 800752FC 8FB80068 */ lw $t8, 0x68($sp) +/* 075F00 80075300 AFA9005C */ sw $t1, 0x5c($sp) +/* 075F04 80075304 AFA30060 */ sw $v1, 0x60($sp) +/* 075F08 80075308 00522021 */ addu $a0, $v0, $s2 +/* 075F0C 8007530C 03223023 */ subu $a2, $t9, $v0 +/* 075F10 80075310 0C032768 */ jal bcopy +/* 075F14 80075314 01F82821 */ addu $a1, $t7, $t8 +/* 075F18 80075318 8FA30060 */ lw $v1, 0x60($sp) +/* 075F1C 8007531C 24070006 */ li $a3, 6 +/* 075F20 80075320 8FA9005C */ lw $t1, 0x5c($sp) +/* 075F24 80075324 24630001 */ addiu $v1, $v1, 1 +/* 075F28 80075328 26310004 */ addiu $s1, $s1, 4 +/* 075F2C 8007532C 1467FFE2 */ bne $v1, $a3, .L800752B8 +/* 075F30 80075330 26100004 */ addiu $s0, $s0, 4 +/* 075F34 80075334 8FAC0070 */ lw $t4, 0x70($sp) +/* 075F38 80075338 8FAD0044 */ lw $t5, 0x44($sp) +/* 075F3C 8007533C 8FAF0068 */ lw $t7, 0x68($sp) +/* 075F40 80075340 018D8021 */ addu $s0, $t4, $t5 +/* 075F44 80075344 860E0002 */ lh $t6, 2($s0) +/* 075F48 80075348 8FB80090 */ lw $t8, 0x90($sp) +/* 075F4C 8007534C 87A50086 */ lh $a1, 0x86($sp) +/* 075F50 80075350 87A6008A */ lh $a2, 0x8a($sp) +/* 075F54 80075354 87A7008E */ lh $a3, 0x8e($sp) +/* 075F58 80075358 01CF2021 */ addu $a0, $t6, $t7 +/* 075F5C 8007535C 0C01D2AA */ jal func_80074AA8 +/* 075F60 80075360 AFB80010 */ sw $t8, 0x10($sp) +/* 075F64 80075364 87B9007E */ lh $t9, 0x7e($sp) +/* 075F68 80075368 3C06800E */ lui $a2, %hi(D_800E7790) # $a2, 0x800e +/* 075F6C 8007536C A2190000 */ sb $t9, ($s0) +/* 075F70 80075370 87AC0082 */ lh $t4, 0x82($sp) +/* 075F74 80075374 3C07800E */ lui $a3, %hi(D_800E77A0) # $a3, 0x800e +/* 075F78 80075378 A20C0001 */ sb $t4, 1($s0) +/* 075F7C 8007537C 8FAE0054 */ lw $t6, 0x54($sp) +/* 075F80 80075380 8FAD0068 */ lw $t5, 0x68($sp) +/* 075F84 80075384 8FA5004C */ lw $a1, 0x4c($sp) +/* 075F88 80075388 8FA40078 */ lw $a0, 0x78($sp) +/* 075F8C 8007538C 24E777A0 */ addiu $a3, %lo(D_800E77A0) # addiu $a3, $a3, 0x77a0 +/* 075F90 80075390 24C67790 */ addiu $a2, %lo(D_800E7790) # addiu $a2, $a2, 0x7790 +/* 075F94 80075394 AFAE0014 */ sw $t6, 0x14($sp) +/* 075F98 80075398 0C01D9B5 */ jal func_800766D4 +/* 075F9C 8007539C AFAD0010 */ sw $t5, 0x10($sp) +/* 075FA0 800753A0 8FA40068 */ lw $a0, 0x68($sp) +/* 075FA4 800753A4 0C01C450 */ jal func_80071140 +/* 075FA8 800753A8 00408025 */ move $s0, $v0 +/* 075FAC 800753AC 10000001 */ b .L800753B4 +/* 075FB0 800753B0 00000000 */ nop +.L800753B4: +/* 075FB4 800753B4 0C01C450 */ jal func_80071140 +/* 075FB8 800753B8 02402025 */ move $a0, $s2 +/* 075FBC 800753BC 02001025 */ move $v0, $s0 +.L800753C0: +/* 075FC0 800753C0 8FBF0034 */ lw $ra, 0x34($sp) +.L800753C4: +/* 075FC4 800753C4 8FB00028 */ lw $s0, 0x28($sp) +/* 075FC8 800753C8 8FB1002C */ lw $s1, 0x2c($sp) +/* 075FCC 800753CC 8FB20030 */ lw $s2, 0x30($sp) +/* 075FD0 800753D0 03E00008 */ jr $ra +/* 075FD4 800753D4 27BD0078 */ addiu $sp, $sp, 0x78 + diff --git a/asm/non_matchings/unknown_072E50/func_800753D8.s b/asm/non_matchings/unknown_072E50/func_800753D8.s new file mode 100644 index 00000000..d38c03fe --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_800753D8.s @@ -0,0 +1,206 @@ +glabel func_800753D8 +/* 075FD8 800753D8 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 075FDC 800753DC AFBF001C */ sw $ra, 0x1c($sp) +/* 075FE0 800753E0 AFA40050 */ sw $a0, 0x50($sp) +/* 075FE4 800753E4 0C01D637 */ jal func_800758DC +/* 075FE8 800753E8 AFA50054 */ sw $a1, 0x54($sp) +/* 075FEC 800753EC 10400007 */ beqz $v0, .L8007540C +/* 075FF0 800753F0 3C05800E */ lui $a1, %hi(D_800E77A4) # $a1, 0x800e +/* 075FF4 800753F4 8FA40050 */ lw $a0, 0x50($sp) +/* 075FF8 800753F8 0C01D6BB */ jal func_80075AEC +/* 075FFC 800753FC AFA20040 */ sw $v0, 0x40($sp) +/* 076000 80075400 8FA20040 */ lw $v0, 0x40($sp) +/* 076004 80075404 100000B0 */ b .L800756C8 +/* 076008 80075408 8FBF001C */ lw $ra, 0x1c($sp) +.L8007540C: +/* 07600C 8007540C 8FA40050 */ lw $a0, 0x50($sp) +/* 076010 80075410 3C06800E */ lui $a2, %hi(D_800E77B4) # $a2, 0x800e +/* 076014 80075414 24C677B4 */ addiu $a2, %lo(D_800E77B4) # addiu $a2, $a2, 0x77b4 +/* 076018 80075418 24A577A4 */ addiu $a1, %lo(D_800E77A4) # addiu $a1, $a1, 0x77a4 +/* 07601C 8007541C 0C01D93A */ jal func_800764E8 +/* 076020 80075420 27A70034 */ addiu $a3, $sp, 0x34 +/* 076024 80075424 144000A1 */ bnez $v0, .L800756AC +/* 076028 80075428 00401825 */ move $v1, $v0 +/* 07602C 8007542C 8FA40050 */ lw $a0, 0x50($sp) +/* 076030 80075430 8FA50034 */ lw $a1, 0x34($sp) +/* 076034 80075434 0C01DA49 */ jal func_80076924 +/* 076038 80075438 27A60030 */ addiu $a2, $sp, 0x30 +/* 07603C 8007543C 10400007 */ beqz $v0, .L8007545C +/* 076040 80075440 240500FF */ li $a1, 255 +/* 076044 80075444 8FA40050 */ lw $a0, 0x50($sp) +/* 076048 80075448 0C01D6BB */ jal func_80075AEC +/* 07604C 8007544C AFA20040 */ sw $v0, 0x40($sp) +/* 076050 80075450 8FA20040 */ lw $v0, 0x40($sp) +/* 076054 80075454 1000009C */ b .L800756C8 +/* 076058 80075458 8FBF001C */ lw $ra, 0x1c($sp) +.L8007545C: +/* 07605C 8007545C 8FA40030 */ lw $a0, 0x30($sp) +/* 076060 80075460 0C01C327 */ jal func_80070C9C +/* 076064 80075464 24840100 */ addiu $a0, $a0, 0x100 +/* 076068 80075468 8FA40050 */ lw $a0, 0x50($sp) +/* 07606C 8007546C 8FA50034 */ lw $a1, 0x34($sp) +/* 076070 80075470 8FA70030 */ lw $a3, 0x30($sp) +/* 076074 80075474 AFA20048 */ sw $v0, 0x48($sp) +/* 076078 80075478 0C01D984 */ jal func_80076610 +/* 07607C 8007547C 00403025 */ move $a2, $v0 +/* 076080 80075480 8FA40050 */ lw $a0, 0x50($sp) +/* 076084 80075484 0C01D6BB */ jal func_80075AEC +/* 076088 80075488 AFA20040 */ sw $v0, 0x40($sp) +/* 07608C 8007548C 8FA30040 */ lw $v1, 0x40($sp) +/* 076090 80075490 8FAE0048 */ lw $t6, 0x48($sp) +/* 076094 80075494 1460007F */ bnez $v1, .L80075694 +/* 076098 80075498 3C014748 */ lui $at, (0x47485353 >> 16) # lui $at, 0x4748 +/* 07609C 8007549C 8DCF0000 */ lw $t7, ($t6) +/* 0760A0 800754A0 34215353 */ ori $at, (0x47485353 & 0xFFFF) # ori $at, $at, 0x5353 +/* 0760A4 800754A4 15E10076 */ bne $t7, $at, .L80075680 +/* 0760A8 800754A8 24030009 */ li $v1, 9 +/* 0760AC 800754AC 8FA80054 */ lw $t0, 0x54($sp) +/* 0760B0 800754B0 8FA40030 */ lw $a0, 0x30($sp) +/* 0760B4 800754B4 0008C080 */ sll $t8, $t0, 2 +/* 0760B8 800754B8 01D81021 */ addu $v0, $t6, $t8 +/* 0760BC 800754BC 84590006 */ lh $t9, 6($v0) +/* 0760C0 800754C0 844A000A */ lh $t2, 0xa($v0) +/* 0760C4 800754C4 AFB80024 */ sw $t8, 0x24($sp) +/* 0760C8 800754C8 032A3823 */ subu $a3, $t9, $t2 +/* 0760CC 800754CC AFA70038 */ sw $a3, 0x38($sp) +/* 0760D0 800754D0 240500FF */ li $a1, 255 +/* 0760D4 800754D4 0C01C327 */ jal func_80070C9C +/* 0760D8 800754D8 24840100 */ addiu $a0, $a0, 0x100 +/* 0760DC 800754DC 8FA40048 */ lw $a0, 0x48($sp) +/* 0760E0 800754E0 8FA80024 */ lw $t0, 0x24($sp) +/* 0760E4 800754E4 24830004 */ addiu $v1, $a0, 4 +/* 0760E8 800754E8 AFA20044 */ sw $v0, 0x44($sp) +/* 0760EC 800754EC 00684821 */ addu $t1, $v1, $t0 +/* 0760F0 800754F0 85260002 */ lh $a2, 2($t1) +/* 0760F4 800754F4 AFA90020 */ sw $t1, 0x20($sp) +/* 0760F8 800754F8 AFA30028 */ sw $v1, 0x28($sp) +/* 0760FC 800754FC 0C032768 */ jal bcopy +/* 076100 80075500 00402825 */ move $a1, $v0 +/* 076104 80075504 8FA80054 */ lw $t0, 0x54($sp) +/* 076108 80075508 8FA30028 */ lw $v1, 0x28($sp) +/* 07610C 8007550C 8FA70038 */ lw $a3, 0x38($sp) +/* 076110 80075510 8FA90020 */ lw $t1, 0x20($sp) +/* 076114 80075514 24010005 */ li $at, 5 +/* 076118 80075518 1101000F */ beq $t0, $at, .L80075558 +/* 07611C 8007551C 29010006 */ slti $at, $t0, 6 +/* 076120 80075520 85220006 */ lh $v0, 6($t1) +/* 076124 80075524 8FAC0044 */ lw $t4, 0x44($sp) +/* 076128 80075528 8FAB0048 */ lw $t3, 0x48($sp) +/* 07612C 8007552C 846F001A */ lh $t7, 0x1a($v1) +/* 076130 80075530 004C6821 */ addu $t5, $v0, $t4 +/* 076134 80075534 01A72821 */ addu $a1, $t5, $a3 +/* 076138 80075538 AFA70038 */ sw $a3, 0x38($sp) +/* 07613C 8007553C 004B2021 */ addu $a0, $v0, $t3 +/* 076140 80075540 0C032768 */ jal bcopy +/* 076144 80075544 01E23023 */ subu $a2, $t7, $v0 +/* 076148 80075548 8FA70038 */ lw $a3, 0x38($sp) +/* 07614C 8007554C 8FA80054 */ lw $t0, 0x54($sp) +/* 076150 80075550 00000000 */ nop +/* 076154 80075554 29010006 */ slti $at, $t0, 6 +.L80075558: +/* 076158 80075558 10200039 */ beqz $at, .L80075640 +/* 07615C 8007555C 01001825 */ move $v1, $t0 +/* 076160 80075560 24050006 */ li $a1, 6 +/* 076164 80075564 00A83023 */ subu $a2, $a1, $t0 +/* 076168 80075568 30D80003 */ andi $t8, $a2, 3 +/* 07616C 8007556C 13000011 */ beqz $t8, .L800755B4 +/* 076170 80075570 03082021 */ addu $a0, $t8, $t0 +/* 076174 80075574 8FA90044 */ lw $t1, 0x44($sp) +/* 076178 80075578 00087080 */ sll $t6, $t0, 2 +/* 07617C 8007557C 012E1021 */ addu $v0, $t1, $t6 +/* 076180 80075580 24420004 */ addiu $v0, $v0, 4 +.L80075584: +/* 076184 80075584 844B0006 */ lh $t3, 6($v0) +/* 076188 80075588 90590004 */ lbu $t9, 4($v0) +/* 07618C 8007558C 904A0005 */ lbu $t2, 5($v0) +/* 076190 80075590 24630001 */ addiu $v1, $v1, 1 +/* 076194 80075594 01676021 */ addu $t4, $t3, $a3 +/* 076198 80075598 A44C0002 */ sh $t4, 2($v0) +/* 07619C 8007559C 24420004 */ addiu $v0, $v0, 4 +/* 0761A0 800755A0 A059FFFC */ sb $t9, -4($v0) +/* 0761A4 800755A4 1483FFF7 */ bne $a0, $v1, .L80075584 +/* 0761A8 800755A8 A04AFFFD */ sb $t2, -3($v0) +/* 0761AC 800755AC 10650025 */ beq $v1, $a1, .L80075644 +/* 0761B0 800755B0 8FA90044 */ lw $t1, 0x44($sp) +.L800755B4: +/* 0761B4 800755B4 8FA90044 */ lw $t1, 0x44($sp) +/* 0761B8 800755B8 00036880 */ sll $t5, $v1, 2 +/* 0761BC 800755BC 012D1021 */ addu $v0, $t1, $t5 +/* 0761C0 800755C0 24420004 */ addiu $v0, $v0, 4 +.L800755C4: +/* 0761C4 800755C4 844C000A */ lh $t4, 0xa($v0) +/* 0761C8 800755C8 844E0006 */ lh $t6, 6($v0) +/* 0761CC 800755CC 904A0008 */ lbu $t2, 8($v0) +/* 0761D0 800755D0 904B0009 */ lbu $t3, 9($v0) +/* 0761D4 800755D4 904F0004 */ lbu $t7, 4($v0) +/* 0761D8 800755D8 90580005 */ lbu $t8, 5($v0) +/* 0761DC 800755DC 01876821 */ addu $t5, $t4, $a3 +/* 0761E0 800755E0 01C7C821 */ addu $t9, $t6, $a3 +/* 0761E4 800755E4 844E000E */ lh $t6, 0xe($v0) +/* 0761E8 800755E8 844C0012 */ lh $t4, 0x12($v0) +/* 0761EC 800755EC A04A0004 */ sb $t2, 4($v0) +/* 0761F0 800755F0 A04B0005 */ sb $t3, 5($v0) +/* 0761F4 800755F4 A04F0000 */ sb $t7, ($v0) +/* 0761F8 800755F8 A0580001 */ sb $t8, 1($v0) +/* 0761FC 800755FC 9058000D */ lbu $t8, 0xd($v0) +/* 076200 80075600 904F000C */ lbu $t7, 0xc($v0) +/* 076204 80075604 904B0011 */ lbu $t3, 0x11($v0) +/* 076208 80075608 904A0010 */ lbu $t2, 0x10($v0) +/* 07620C 8007560C A44D0006 */ sh $t5, 6($v0) +/* 076210 80075610 A4590002 */ sh $t9, 2($v0) +/* 076214 80075614 24630004 */ addiu $v1, $v1, 4 +/* 076218 80075618 01C7C821 */ addu $t9, $t6, $a3 +/* 07621C 8007561C 01876821 */ addu $t5, $t4, $a3 +/* 076220 80075620 A44D000E */ sh $t5, 0xe($v0) +/* 076224 80075624 A459000A */ sh $t9, 0xa($v0) +/* 076228 80075628 24420010 */ addiu $v0, $v0, 0x10 +/* 07622C 8007562C A058FFF9 */ sb $t8, -7($v0) +/* 076230 80075630 A04FFFF8 */ sb $t7, -8($v0) +/* 076234 80075634 A04BFFFD */ sb $t3, -3($v0) +/* 076238 80075638 1465FFE2 */ bne $v1, $a1, .L800755C4 +/* 07623C 8007563C A04AFFFC */ sb $t2, -4($v0) +.L80075640: +/* 076240 80075640 8FA90044 */ lw $t1, 0x44($sp) +.L80075644: +/* 076244 80075644 3C06800E */ lui $a2, %hi(D_800E77B8) # $a2, 0x800e +/* 076248 80075648 25220004 */ addiu $v0, $t1, 4 +/* 07624C 8007564C 844F0016 */ lh $t7, 0x16($v0) +/* 076250 80075650 3C07800E */ lui $a3, %hi(D_800E77C8) # $a3, 0x800e +/* 076254 80075654 A44F001A */ sh $t7, 0x1a($v0) +/* 076258 80075658 8FB80030 */ lw $t8, 0x30($sp) +/* 07625C 8007565C 8FA50034 */ lw $a1, 0x34($sp) +/* 076260 80075660 8FA40050 */ lw $a0, 0x50($sp) +/* 076264 80075664 24E777C8 */ addiu $a3, %lo(D_800E77C8) # addiu $a3, $a3, 0x77c8 +/* 076268 80075668 24C677B8 */ addiu $a2, %lo(D_800E77B8) # addiu $a2, $a2, 0x77b8 +/* 07626C 8007566C AFA90010 */ sw $t1, 0x10($sp) +/* 076270 80075670 0C01D9B5 */ jal func_800766D4 +/* 076274 80075674 AFB80014 */ sw $t8, 0x14($sp) +/* 076278 80075678 10000001 */ b .L80075680 +/* 07627C 8007567C 00401825 */ move $v1, $v0 +.L80075680: +/* 076280 80075680 8FA40044 */ lw $a0, 0x44($sp) +/* 076284 80075684 0C01C450 */ jal func_80071140 +/* 076288 80075688 AFA30040 */ sw $v1, 0x40($sp) +/* 07628C 8007568C 8FA30040 */ lw $v1, 0x40($sp) +/* 076290 80075690 00000000 */ nop +.L80075694: +/* 076294 80075694 8FA40048 */ lw $a0, 0x48($sp) +/* 076298 80075698 0C01C450 */ jal func_80071140 +/* 07629C 8007569C AFA30040 */ sw $v1, 0x40($sp) +/* 0762A0 800756A0 8FA30040 */ lw $v1, 0x40($sp) +/* 0762A4 800756A4 10000007 */ b .L800756C4 +/* 0762A8 800756A8 00601025 */ move $v0, $v1 +.L800756AC: +/* 0762AC 800756AC 8FA40050 */ lw $a0, 0x50($sp) +/* 0762B0 800756B0 0C01D6BB */ jal func_80075AEC +/* 0762B4 800756B4 AFA30040 */ sw $v1, 0x40($sp) +/* 0762B8 800756B8 8FA30040 */ lw $v1, 0x40($sp) +/* 0762BC 800756BC 00000000 */ nop +/* 0762C0 800756C0 00601025 */ move $v0, $v1 +.L800756C4: +/* 0762C4 800756C4 8FBF001C */ lw $ra, 0x1c($sp) +.L800756C8: +/* 0762C8 800756C8 27BD0050 */ addiu $sp, $sp, 0x50 +/* 0762CC 800756CC 03E00008 */ jr $ra +/* 0762D0 800756D0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_072E50/func_800756D4.s b/asm/non_matchings/unknown_072E50/func_800756D4.s new file mode 100644 index 00000000..b464ae60 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_800756D4.s @@ -0,0 +1,140 @@ +glabel func_800756D4 +/* 0762D4 800756D4 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 0762D8 800756D8 AFBF003C */ sw $ra, 0x3c($sp) +/* 0762DC 800756DC AFBE0038 */ sw $fp, 0x38($sp) +/* 0762E0 800756E0 AFB70034 */ sw $s7, 0x34($sp) +/* 0762E4 800756E4 AFB60030 */ sw $s6, 0x30($sp) +/* 0762E8 800756E8 00A0B025 */ move $s6, $a1 +/* 0762EC 800756EC 00E0B825 */ move $s7, $a3 +/* 0762F0 800756F0 00C0F025 */ move $fp, $a2 +/* 0762F4 800756F4 AFB5002C */ sw $s5, 0x2c($sp) +/* 0762F8 800756F8 AFB40028 */ sw $s4, 0x28($sp) +/* 0762FC 800756FC AFB30024 */ sw $s3, 0x24($sp) +/* 076300 80075700 AFB20020 */ sw $s2, 0x20($sp) +/* 076304 80075704 AFB1001C */ sw $s1, 0x1c($sp) +/* 076308 80075708 AFB00018 */ sw $s0, 0x18($sp) +/* 07630C 8007570C 0C01D637 */ jal func_800758DC +/* 076310 80075710 AFA40070 */ sw $a0, 0x70($sp) +/* 076314 80075714 10400007 */ beqz $v0, .L80075734 +/* 076318 80075718 AFA20064 */ sw $v0, 0x64($sp) +/* 07631C 8007571C 8FA40070 */ lw $a0, 0x70($sp) +/* 076320 80075720 0C01D6BB */ jal func_80075AEC +/* 076324 80075724 00000000 */ nop +/* 076328 80075728 8FA20064 */ lw $v0, 0x64($sp) +/* 07632C 8007572C 10000060 */ b .L800758B0 +/* 076330 80075730 8FBF003C */ lw $ra, 0x3c($sp) +.L80075734: +/* 076334 80075734 8FB50080 */ lw $s5, 0x80($sp) +/* 076338 80075738 00008025 */ move $s0, $zero +/* 07633C 8007573C 02C02025 */ move $a0, $s6 +/* 076340 80075740 02E02825 */ move $a1, $s7 +/* 076344 80075744 03C03025 */ move $a2, $fp +/* 076348 80075748 240700FF */ li $a3, 255 +/* 07634C 8007574C 02A01825 */ move $v1, $s5 +.L80075750: +/* 076350 80075750 A0870000 */ sb $a3, ($a0) +/* 076354 80075754 A4600000 */ sh $zero, ($v1) +/* 076358 80075758 90620001 */ lbu $v0, 1($v1) +/* 07635C 8007575C 26100001 */ addiu $s0, $s0, 1 +/* 076360 80075760 2A010006 */ slti $at, $s0, 6 +/* 076364 80075764 A0A20000 */ sb $v0, ($a1) +/* 076368 80075768 24840001 */ addiu $a0, $a0, 1 +/* 07636C 8007576C 24630002 */ addiu $v1, $v1, 2 +/* 076370 80075770 24A50001 */ addiu $a1, $a1, 1 +/* 076374 80075774 24C60001 */ addiu $a2, $a2, 1 +/* 076378 80075778 1420FFF5 */ bnez $at, .L80075750 +/* 07637C 8007577C A0C2FFFF */ sb $v0, -1($a2) +/* 076380 80075780 8FA40070 */ lw $a0, 0x70($sp) +/* 076384 80075784 3C05800E */ lui $a1, %hi(D_800E77CC) # $a1, 0x800e +/* 076388 80075788 3C06800E */ lui $a2, %hi(D_800E77DC) # $a2, 0x800e +/* 07638C 8007578C 24C677DC */ addiu $a2, %lo(D_800E77DC) # addiu $a2, $a2, 0x77dc +/* 076390 80075790 24A577CC */ addiu $a1, %lo(D_800E77CC) # addiu $a1, $a1, 0x77cc +/* 076394 80075794 0C01D93A */ jal func_800764E8 +/* 076398 80075798 27A7005C */ addiu $a3, $sp, 0x5c +/* 07639C 8007579C 1440003E */ bnez $v0, .L80075898 +/* 0763A0 800757A0 AFA20064 */ sw $v0, 0x64($sp) +/* 0763A4 800757A4 8FA40070 */ lw $a0, 0x70($sp) +/* 0763A8 800757A8 8FA5005C */ lw $a1, 0x5c($sp) +/* 0763AC 800757AC 0C01DA49 */ jal func_80076924 +/* 0763B0 800757B0 27A60058 */ addiu $a2, $sp, 0x58 +/* 0763B4 800757B4 14400038 */ bnez $v0, .L80075898 +/* 0763B8 800757B8 AFA20064 */ sw $v0, 0x64($sp) +/* 0763BC 800757BC 8FA40058 */ lw $a0, 0x58($sp) +/* 0763C0 800757C0 240500FF */ li $a1, 255 +/* 0763C4 800757C4 0C01C327 */ jal func_80070C9C +/* 0763C8 800757C8 24840100 */ addiu $a0, $a0, 0x100 +/* 0763CC 800757CC 8FA40070 */ lw $a0, 0x70($sp) +/* 0763D0 800757D0 8FA5005C */ lw $a1, 0x5c($sp) +/* 0763D4 800757D4 8FA70058 */ lw $a3, 0x58($sp) +/* 0763D8 800757D8 00409025 */ move $s2, $v0 +/* 0763DC 800757DC 0C01D984 */ jal func_80076610 +/* 0763E0 800757E0 00403025 */ move $a2, $v0 +/* 0763E4 800757E4 1440002A */ bnez $v0, .L80075890 +/* 0763E8 800757E8 AFA20064 */ sw $v0, 0x64($sp) +/* 0763EC 800757EC 00008025 */ move $s0, $zero +/* 0763F0 800757F0 26510004 */ addiu $s1, $s2, 4 +/* 0763F4 800757F4 24140006 */ li $s4, 6 +/* 0763F8 800757F8 241300FF */ li $s3, 255 +.L800757FC: +/* 0763FC 800757FC 922E0000 */ lbu $t6, ($s1) +/* 076400 80075800 00000000 */ nop +/* 076404 80075804 126E001F */ beq $s3, $t6, .L80075884 +/* 076408 80075808 00000000 */ nop +/* 07640C 8007580C 862F0002 */ lh $t7, 2($s1) +/* 076410 80075810 0C01D293 */ jal func_80074A4C +/* 076414 80075814 01F22021 */ addu $a0, $t7, $s2 +/* 076418 80075818 86380002 */ lh $t8, 2($s1) +/* 07641C 8007581C 00000000 */ nop +/* 076420 80075820 0312C821 */ addu $t9, $t8, $s2 +/* 076424 80075824 87280000 */ lh $t0, ($t9) +/* 076428 80075828 00000000 */ nop +/* 07642C 8007582C 10480003 */ beq $v0, $t0, .L8007583C +/* 076430 80075830 24090009 */ li $t1, 9 +/* 076434 80075834 10000016 */ b .L80075890 +/* 076438 80075838 AFA90064 */ sw $t1, 0x64($sp) +.L8007583C: +/* 07643C 8007583C 922A0000 */ lbu $t2, ($s1) +/* 076440 80075840 02D05821 */ addu $t3, $s6, $s0 +/* 076444 80075844 A16A0000 */ sb $t2, ($t3) +/* 076448 80075848 922C0001 */ lbu $t4, 1($s1) +/* 07644C 8007584C 03D06821 */ addu $t5, $fp, $s0 +/* 076450 80075850 A1AC0000 */ sb $t4, ($t5) +/* 076454 80075854 862E0002 */ lh $t6, 2($s1) +/* 076458 80075858 02F0C821 */ addu $t9, $s7, $s0 +/* 07645C 8007585C 01D27821 */ addu $t7, $t6, $s2 +/* 076460 80075860 91F80002 */ lbu $t8, 2($t7) +/* 076464 80075864 00105840 */ sll $t3, $s0, 1 +/* 076468 80075868 A3380000 */ sb $t8, ($t9) +/* 07646C 8007586C 86280002 */ lh $t0, 2($s1) +/* 076470 80075870 02AB6021 */ addu $t4, $s5, $t3 +/* 076474 80075874 01124821 */ addu $t1, $t0, $s2 +/* 076478 80075878 852A0004 */ lh $t2, 4($t1) +/* 07647C 8007587C 00000000 */ nop +/* 076480 80075880 A58A0000 */ sh $t2, ($t4) +.L80075884: +/* 076484 80075884 26100001 */ addiu $s0, $s0, 1 +/* 076488 80075888 1614FFDC */ bne $s0, $s4, .L800757FC +/* 07648C 8007588C 26310004 */ addiu $s1, $s1, 4 +.L80075890: +/* 076490 80075890 0C01C450 */ jal func_80071140 +/* 076494 80075894 02402025 */ move $a0, $s2 +.L80075898: +/* 076498 80075898 8FA40070 */ lw $a0, 0x70($sp) +/* 07649C 8007589C 0C01D6BB */ jal func_80075AEC +/* 0764A0 800758A0 00000000 */ nop +/* 0764A4 800758A4 8FA20064 */ lw $v0, 0x64($sp) +/* 0764A8 800758A8 00000000 */ nop +/* 0764AC 800758AC 8FBF003C */ lw $ra, 0x3c($sp) +.L800758B0: +/* 0764B0 800758B0 8FB00018 */ lw $s0, 0x18($sp) +/* 0764B4 800758B4 8FB1001C */ lw $s1, 0x1c($sp) +/* 0764B8 800758B8 8FB20020 */ lw $s2, 0x20($sp) +/* 0764BC 800758BC 8FB30024 */ lw $s3, 0x24($sp) +/* 0764C0 800758C0 8FB40028 */ lw $s4, 0x28($sp) +/* 0764C4 800758C4 8FB5002C */ lw $s5, 0x2c($sp) +/* 0764C8 800758C8 8FB60030 */ lw $s6, 0x30($sp) +/* 0764CC 800758CC 8FB70034 */ lw $s7, 0x34($sp) +/* 0764D0 800758D0 8FBE0038 */ lw $fp, 0x38($sp) +/* 0764D4 800758D4 03E00008 */ jr $ra +/* 0764D8 800758D8 27BD0070 */ addiu $sp, $sp, 0x70 + diff --git a/asm/non_matchings/unknown_072E50/func_800758DC.s b/asm/non_matchings/unknown_072E50/func_800758DC.s new file mode 100644 index 00000000..7b32da33 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_800758DC.s @@ -0,0 +1,151 @@ +glabel func_800758DC +/* 0764DC 800758DC 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 0764E0 800758E0 AFB40024 */ sw $s4, 0x24($sp) +/* 0764E4 800758E4 3C148012 */ lui $s4, %hi(D_80124010) # $s4, 0x8012 +/* 0764E8 800758E8 26944010 */ addiu $s4, %lo(D_80124010) # addiu $s4, $s4, 0x4010 +/* 0764EC 800758EC AFB00014 */ sw $s0, 0x14($sp) +/* 0764F0 800758F0 8E900000 */ lw $s0, ($s4) +/* 0764F4 800758F4 AFBF002C */ sw $ra, 0x2c($sp) +/* 0764F8 800758F8 AFB50028 */ sw $s5, 0x28($sp) +/* 0764FC 800758FC AFB30020 */ sw $s3, 0x20($sp) +/* 076500 80075900 AFB2001C */ sw $s2, 0x1c($sp) +/* 076504 80075904 AFB10018 */ sw $s1, 0x18($sp) +/* 076508 80075908 8E0E0008 */ lw $t6, 8($s0) +/* 07650C 8007590C 0080A825 */ move $s5, $a0 +/* 076510 80075910 15C0000F */ bnez $t6, .L80075950 +/* 076514 80075914 02002025 */ move $a0, $s0 +/* 076518 80075918 00157880 */ sll $t7, $s5, 2 +/* 07651C 8007591C 01F57823 */ subu $t7, $t7, $s5 +/* 076520 80075920 000F7880 */ sll $t7, $t7, 2 +/* 076524 80075924 01F57821 */ addu $t7, $t7, $s5 +/* 076528 80075928 3C188012 */ lui $t8, %hi(D_80124018) # $t8, 0x8012 +/* 07652C 8007592C 27184018 */ addiu $t8, %lo(D_80124018) # addiu $t8, $t8, 0x4018 +/* 076530 80075930 000F78C0 */ sll $t7, $t7, 3 +/* 076534 80075934 01F82821 */ addu $a1, $t7, $t8 +/* 076538 80075938 0C01C837 */ jal func_800720DC +/* 07653C 8007593C 02A03025 */ move $a2, $s5 +/* 076540 80075940 14400004 */ bnez $v0, .L80075954 +/* 076544 80075944 0015C880 */ sll $t9, $s5, 2 +/* 076548 80075948 1000005F */ b .L80075AC8 +/* 07654C 8007594C 24020007 */ li $v0, 7 +.L80075950: +/* 076550 80075950 0015C880 */ sll $t9, $s5, 2 +.L80075954: +/* 076554 80075954 8E900000 */ lw $s0, ($s4) +/* 076558 80075958 0335C823 */ subu $t9, $t9, $s5 +/* 07655C 8007595C 0019C880 */ sll $t9, $t9, 2 +/* 076560 80075960 8E090008 */ lw $t1, 8($s0) +/* 076564 80075964 0335C821 */ addu $t9, $t9, $s5 +/* 076568 80075968 3C088012 */ lui $t0, %hi(D_80124018) # $t0, 0x8012 +/* 07656C 8007596C 25084018 */ addiu $t0, %lo(D_80124018) # addiu $t0, $t0, 0x4018 +/* 076570 80075970 0019C8C0 */ sll $t9, $t9, 3 +/* 076574 80075974 00008825 */ move $s1, $zero +/* 076578 80075978 1120000E */ beqz $t1, .L800759B4 +/* 07657C 8007597C 03289821 */ addu $s3, $t9, $t0 +/* 076580 80075980 2412000A */ li $s2, 10 +/* 076584 80075984 02002025 */ move $a0, $s0 +.L80075988: +/* 076588 80075988 27A50044 */ addiu $a1, $sp, 0x44 +/* 07658C 8007598C 0C0322EC */ jal osRecvMesg +/* 076590 80075990 00003025 */ move $a2, $zero +/* 076594 80075994 8E900000 */ lw $s0, ($s4) +/* 076598 80075998 26310001 */ addiu $s1, $s1, 1 +/* 07659C 8007599C 8E0A0008 */ lw $t2, 8($s0) +/* 0765A0 800759A0 00000000 */ nop +/* 0765A4 800759A4 11400003 */ beqz $t2, .L800759B4 +/* 0765A8 800759A8 00000000 */ nop +/* 0765AC 800759AC 1632FFF6 */ bne $s1, $s2, .L80075988 +/* 0765B0 800759B0 02002025 */ move $a0, $s0 +.L800759B4: +/* 0765B4 800759B4 2412000A */ li $s2, 10 +/* 0765B8 800759B8 00008825 */ move $s1, $zero +/* 0765BC 800759BC 24100005 */ li $s0, 5 +/* 0765C0 800759C0 02602025 */ move $a0, $s3 +.L800759C4: +/* 0765C4 800759C4 0C033CF8 */ jal func_800CF3E0 +/* 0765C8 800759C8 27A5003C */ addiu $a1, $sp, 0x3c +/* 0765CC 800759CC 14500006 */ bne $v0, $s0, .L800759E8 +/* 0765D0 800759D0 00401825 */ move $v1, $v0 +/* 0765D4 800759D4 8E840000 */ lw $a0, ($s4) +/* 0765D8 800759D8 02602825 */ move $a1, $s3 +/* 0765DC 800759DC 0C033B48 */ jal func_800CED20 +/* 0765E0 800759E0 02A03025 */ move $a2, $s5 +/* 0765E4 800759E4 00401825 */ move $v1, $v0 +.L800759E8: +/* 0765E8 800759E8 1452000A */ bne $v0, $s2, .L80075A14 +/* 0765EC 800759EC 02602825 */ move $a1, $s3 +/* 0765F0 800759F0 8E840000 */ lw $a0, ($s4) +/* 0765F4 800759F4 02A03025 */ move $a2, $s5 +/* 0765F8 800759F8 0C01C837 */ jal func_800720DC +/* 0765FC 800759FC AFA30040 */ sw $v1, 0x40($sp) +/* 076600 80075A00 8FA30040 */ lw $v1, 0x40($sp) +/* 076604 80075A04 14400004 */ bnez $v0, .L80075A18 +/* 076608 80075A08 24010002 */ li $at, 2 +/* 07660C 80075A0C 1000002E */ b .L80075AC8 +/* 076610 80075A10 24020007 */ li $v0, 7 +.L80075A14: +/* 076614 80075A14 24010002 */ li $at, 2 +.L80075A18: +/* 076618 80075A18 14610011 */ bne $v1, $at, .L80075A60 +/* 07661C 80075A1C 24010001 */ li $at, 1 +/* 076620 80075A20 8E840000 */ lw $a0, ($s4) +/* 076624 80075A24 02602825 */ move $a1, $s3 +/* 076628 80075A28 0C033B48 */ jal func_800CED20 +/* 07662C 80075A2C 02A03025 */ move $a2, $s5 +/* 076630 80075A30 14520008 */ bne $v0, $s2, .L80075A54 +/* 076634 80075A34 02602825 */ move $a1, $s3 +/* 076638 80075A38 8E840000 */ lw $a0, ($s4) +/* 07663C 80075A3C 0C01C837 */ jal func_800720DC +/* 076640 80075A40 02A03025 */ move $a2, $s5 +/* 076644 80075A44 14400003 */ bnez $v0, .L80075A54 +/* 076648 80075A48 00000000 */ nop +/* 07664C 80075A4C 1000001E */ b .L80075AC8 +/* 076650 80075A50 24020007 */ li $v0, 7 +.L80075A54: +/* 076654 80075A54 1000001C */ b .L80075AC8 +/* 076658 80075A58 24020005 */ li $v0, 5 +/* 07665C 80075A5C 24010001 */ li $at, 1 +.L80075A60: +/* 076660 80075A60 10610003 */ beq $v1, $at, .L80075A70 +/* 076664 80075A64 2401000B */ li $at, 11 +/* 076668 80075A68 14610003 */ bne $v1, $at, .L80075A78 +/* 07666C 80075A6C 26310001 */ addiu $s1, $s1, 1 +.L80075A70: +/* 076670 80075A70 10000015 */ b .L80075AC8 +/* 076674 80075A74 24020001 */ li $v0, 1 +.L80075A78: +/* 076678 80075A78 24010006 */ li $at, 6 +/* 07667C 80075A7C 14610003 */ bne $v1, $at, .L80075A8C +/* 076680 80075A80 00000000 */ nop +/* 076684 80075A84 10000010 */ b .L80075AC8 +/* 076688 80075A88 24020009 */ li $v0, 9 +.L80075A8C: +/* 07668C 80075A8C 14720003 */ bne $v1, $s2, .L80075A9C +/* 076690 80075A90 24010003 */ li $at, 3 +/* 076694 80075A94 1000000C */ b .L80075AC8 +/* 076698 80075A98 24020003 */ li $v0, 3 +.L80075A9C: +/* 07669C 80075A9C 14610003 */ bne $v1, $at, .L80075AAC +/* 0766A0 80075AA0 00000000 */ nop +/* 0766A4 80075AA4 10000008 */ b .L80075AC8 +/* 0766A8 80075AA8 24020002 */ li $v0, 2 +.L80075AAC: +/* 0766AC 80075AAC 14600003 */ bnez $v1, .L80075ABC +/* 0766B0 80075AB0 00000000 */ nop +/* 0766B4 80075AB4 10000004 */ b .L80075AC8 +/* 0766B8 80075AB8 00001025 */ move $v0, $zero +.L80075ABC: +/* 0766BC 80075ABC 1630FFC1 */ bne $s1, $s0, .L800759C4 +/* 0766C0 80075AC0 02602025 */ move $a0, $s3 +/* 0766C4 80075AC4 24020001 */ li $v0, 1 +.L80075AC8: +/* 0766C8 80075AC8 8FBF002C */ lw $ra, 0x2c($sp) +/* 0766CC 80075ACC 8FB00014 */ lw $s0, 0x14($sp) +/* 0766D0 80075AD0 8FB10018 */ lw $s1, 0x18($sp) +/* 0766D4 80075AD4 8FB2001C */ lw $s2, 0x1c($sp) +/* 0766D8 80075AD8 8FB30020 */ lw $s3, 0x20($sp) +/* 0766DC 80075ADC 8FB40024 */ lw $s4, 0x24($sp) +/* 0766E0 80075AE0 8FB50028 */ lw $s5, 0x28($sp) +/* 0766E4 80075AE4 03E00008 */ jr $ra +/* 0766E8 80075AE8 27BD0048 */ addiu $sp, $sp, 0x48 + diff --git a/asm/non_matchings/unknown_072E50/func_80075AEC.s b/asm/non_matchings/unknown_072E50/func_80075AEC.s new file mode 100644 index 00000000..6e8f07b4 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80075AEC.s @@ -0,0 +1,13 @@ +glabel func_80075AEC +/* 0766EC 80075AEC 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0766F0 80075AF0 AFA40018 */ sw $a0, 0x18($sp) +/* 0766F4 80075AF4 3C048012 */ lui $a0, %hi(D_80124010) # $a0, 0x8012 +/* 0766F8 80075AF8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0766FC 80075AFC 8C844010 */ lw $a0, %lo(D_80124010)($a0) +/* 076700 80075B00 0C0333F8 */ jal func_800CCFE0 +/* 076704 80075B04 00000000 */ nop +/* 076708 80075B08 8FBF0014 */ lw $ra, 0x14($sp) +/* 07670C 80075B0C 27BD0018 */ addiu $sp, $sp, 0x18 +/* 076710 80075B10 03E00008 */ jr $ra +/* 076714 80075B14 00001025 */ move $v0, $zero + diff --git a/asm/non_matchings/unknown_072E50/func_80075B18.s b/asm/non_matchings/unknown_072E50/func_80075B18.s new file mode 100644 index 00000000..b5e7d7cd --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80075B18.s @@ -0,0 +1,145 @@ +glabel func_80075B18 +/* 076718 80075B18 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 07671C 80075B1C AFBF003C */ sw $ra, 0x3c($sp) +/* 076720 80075B20 AFBE0038 */ sw $fp, 0x38($sp) +/* 076724 80075B24 AFB70034 */ sw $s7, 0x34($sp) +/* 076728 80075B28 AFB60030 */ sw $s6, 0x30($sp) +/* 07672C 80075B2C AFB5002C */ sw $s5, 0x2c($sp) +/* 076730 80075B30 AFB40028 */ sw $s4, 0x28($sp) +/* 076734 80075B34 AFB30024 */ sw $s3, 0x24($sp) +/* 076738 80075B38 AFB20020 */ sw $s2, 0x20($sp) +/* 07673C 80075B3C AFB1001C */ sw $s1, 0x1c($sp) +/* 076740 80075B40 0C01A840 */ jal func_8006A100 +/* 076744 80075B44 AFB00018 */ sw $s0, 0x18($sp) +/* 076748 80075B48 3C148012 */ lui $s4, %hi(D_80124010) # $s4, 0x8012 +/* 07674C 80075B4C 26944010 */ addiu $s4, %lo(D_80124010) # addiu $s4, $s4, 0x4010 +/* 076750 80075B50 AE820000 */ sw $v0, ($s4) +/* 076754 80075B54 0C0078A7 */ jal func_8001E29C +/* 076758 80075B58 24040013 */ li $a0, 19 +/* 07675C 80075B5C 3C018012 */ lui $at, %hi(D_801241E0) # $at, 0x8012 +/* 076760 80075B60 AC2241E0 */ sw $v0, %lo(D_801241E0)($at) +/* 076764 80075B64 3C038012 */ lui $v1, %hi(D_801241E7) # $v1, 0x8012 +/* 076768 80075B68 246341E7 */ addiu $v1, %lo(D_801241E7) # addiu $v1, $v1, 0x41e7 +/* 07676C 80075B6C 240F000F */ li $t7, 15 +/* 076770 80075B70 A06F0000 */ sb $t7, ($v1) +/* 076774 80075B74 3C018012 */ lui $at, %hi(D_801241E6) # $at, 0x8012 +/* 076778 80075B78 A02F41E6 */ sb $t7, %lo(D_801241E6)($at) +/* 07677C 80075B7C 3C018012 */ lui $at, %hi(D_801241E4) # $at, 0x8012 +/* 076780 80075B80 24180001 */ li $t8, 1 +/* 076784 80075B84 A03841E4 */ sb $t8, %lo(D_801241E4)($at) +/* 076788 80075B88 3C018012 */ lui $at, %hi(D_801241E8) # $at, 0x8012 +/* 07678C 80075B8C AC2041E8 */ sw $zero, %lo(D_801241E8)($at) +/* 076790 80075B90 3C01800E */ lui $at, %hi(D_800DE48C) # $at, 0x800e +/* 076794 80075B94 24190001 */ li $t9, 1 +/* 076798 80075B98 3C158012 */ lui $s5, %hi(D_801241E5) # $s5, 0x8012 +/* 07679C 80075B9C 3C16800E */ lui $s6, %hi(D_800DE488) # $s6, 0x800e +/* 0767A0 80075BA0 AC39E48C */ sw $t9, %lo(D_800DE48C)($at) +/* 0767A4 80075BA4 26D6E488 */ addiu $s6, %lo(D_800DE488) # addiu $s6, $s6, -0x1b78 +/* 0767A8 80075BA8 26B541E5 */ addiu $s5, %lo(D_801241E5) # addiu $s5, $s5, 0x41e5 +/* 0767AC 80075BAC 8E840000 */ lw $a0, ($s4) +/* 0767B0 80075BB0 A2A00000 */ sb $zero, ($s5) +/* 0767B4 80075BB4 A2C00000 */ sb $zero, ($s6) +/* 0767B8 80075BB8 0C0334A4 */ jal func_800CD290 +/* 0767BC 80075BBC 27A5004E */ addiu $a1, $sp, 0x4e +/* 0767C0 80075BC0 3C118012 */ lui $s1, %hi(D_801241B8) # $s1, 0x8012 +/* 0767C4 80075BC4 263141B8 */ addiu $s1, %lo(D_801241B8) # addiu $s1, $s1, 0x41b8 +/* 0767C8 80075BC8 00008025 */ move $s0, $zero +/* 0767CC 80075BCC 24030001 */ li $v1, 1 +/* 0767D0 80075BD0 241E0004 */ li $fp, 4 +/* 0767D4 80075BD4 2417FFFF */ li $s7, -1 +.L80075BD8: +/* 0767D8 80075BD8 93AA004E */ lbu $t2, 0x4e($sp) +/* 0767DC 80075BDC A6200002 */ sh $zero, 2($s1) +/* 0767E0 80075BE0 86290002 */ lh $t1, 2($s1) +/* 0767E4 80075BE4 01435824 */ and $t3, $t2, $v1 +/* 0767E8 80075BE8 A6370004 */ sh $s7, 4($s1) +/* 0767EC 80075BEC A6370000 */ sh $s7, ($s1) +/* 0767F0 80075BF0 00609825 */ move $s3, $v1 +/* 0767F4 80075BF4 11600025 */ beqz $t3, .L80075C8C +/* 0767F8 80075BF8 A6290006 */ sh $t1, 6($s1) +/* 0767FC 80075BFC 00106080 */ sll $t4, $s0, 2 +/* 076800 80075C00 01906023 */ subu $t4, $t4, $s0 +/* 076804 80075C04 000C6080 */ sll $t4, $t4, 2 +/* 076808 80075C08 01906021 */ addu $t4, $t4, $s0 +/* 07680C 80075C0C 3C0D8012 */ lui $t5, %hi(D_80124018) # $t5, 0x8012 +/* 076810 80075C10 25AD4018 */ addiu $t5, %lo(D_80124018) # addiu $t5, $t5, 0x4018 +/* 076814 80075C14 000C60C0 */ sll $t4, $t4, 3 +/* 076818 80075C18 018D9021 */ addu $s2, $t4, $t5 +/* 07681C 80075C1C 8E840000 */ lw $a0, ($s4) +/* 076820 80075C20 02402825 */ move $a1, $s2 +/* 076824 80075C24 0C033B48 */ jal func_800CED20 +/* 076828 80075C28 02003025 */ move $a2, $s0 +/* 07682C 80075C2C 24010002 */ li $at, 2 +/* 076830 80075C30 14410004 */ bne $v0, $at, .L80075C44 +/* 076834 80075C34 02402825 */ move $a1, $s2 +/* 076838 80075C38 8E840000 */ lw $a0, ($s4) +/* 07683C 80075C3C 0C033B48 */ jal func_800CED20 +/* 076840 80075C40 02003025 */ move $a2, $s0 +.L80075C44: +/* 076844 80075C44 14400006 */ bnez $v0, .L80075C60 +/* 076848 80075C48 2401000A */ li $at, 10 +/* 07684C 80075C4C 92CE0000 */ lbu $t6, ($s6) +/* 076850 80075C50 00000000 */ nop +/* 076854 80075C54 01D37825 */ or $t7, $t6, $s3 +/* 076858 80075C58 1000000C */ b .L80075C8C +/* 07685C 80075C5C A2CF0000 */ sb $t7, ($s6) +.L80075C60: +/* 076860 80075C60 1441000A */ bne $v0, $at, .L80075C8C +/* 076864 80075C64 02402825 */ move $a1, $s2 +/* 076868 80075C68 8E840000 */ lw $a0, ($s4) +/* 07686C 80075C6C 0C01C837 */ jal func_800720DC +/* 076870 80075C70 02003025 */ move $a2, $s0 +/* 076874 80075C74 14400006 */ bnez $v0, .L80075C90 +/* 076878 80075C78 00131840 */ sll $v1, $s3, 1 +/* 07687C 80075C7C 92B80000 */ lbu $t8, ($s5) +/* 076880 80075C80 00000000 */ nop +/* 076884 80075C84 0313C825 */ or $t9, $t8, $s3 +/* 076888 80075C88 A2B90000 */ sb $t9, ($s5) +.L80075C8C: +/* 07688C 80075C8C 00131840 */ sll $v1, $s3, 1 +.L80075C90: +/* 076890 80075C90 306800FF */ andi $t0, $v1, 0xff +/* 076894 80075C94 26100001 */ addiu $s0, $s0, 1 +/* 076898 80075C98 01001825 */ move $v1, $t0 +/* 07689C 80075C9C 161EFFCE */ bne $s0, $fp, .L80075BD8 +/* 0768A0 80075CA0 2631000A */ addiu $s1, $s1, 0xa +/* 0768A4 80075CA4 8E840000 */ lw $a0, ($s4) +/* 0768A8 80075CA8 0C0333F8 */ jal func_800CCFE0 +/* 0768AC 80075CAC 00000000 */ nop +/* 0768B0 80075CB0 8FBF003C */ lw $ra, 0x3c($sp) +/* 0768B4 80075CB4 8FB00018 */ lw $s0, 0x18($sp) +/* 0768B8 80075CB8 8FB1001C */ lw $s1, 0x1c($sp) +/* 0768BC 80075CBC 8FB20020 */ lw $s2, 0x20($sp) +/* 0768C0 80075CC0 8FB30024 */ lw $s3, 0x24($sp) +/* 0768C4 80075CC4 8FB40028 */ lw $s4, 0x28($sp) +/* 0768C8 80075CC8 8FB5002C */ lw $s5, 0x2c($sp) +/* 0768CC 80075CCC 8FB60030 */ lw $s6, 0x30($sp) +/* 0768D0 80075CD0 8FB70034 */ lw $s7, 0x34($sp) +/* 0768D4 80075CD4 8FBE0038 */ lw $fp, 0x38($sp) +/* 0768D8 80075CD8 03E00008 */ jr $ra +/* 0768DC 80075CDC 27BD0058 */ addiu $sp, $sp, 0x58 + +/* 0768E0 80075CE0 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0768E4 80075CE4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0768E8 80075CE8 0C01D637 */ jal func_800758DC +/* 0768EC 80075CEC AFA40020 */ sw $a0, 0x20($sp) +/* 0768F0 80075CF0 8FA40020 */ lw $a0, 0x20($sp) +/* 0768F4 80075CF4 0C01D6BB */ jal func_80075AEC +/* 0768F8 80075CF8 AFA2001C */ sw $v0, 0x1c($sp) +/* 0768FC 80075CFC 8FA3001C */ lw $v1, 0x1c($sp) +/* 076900 80075D00 24010007 */ li $at, 7 +/* 076904 80075D04 14610008 */ bne $v1, $at, .L80075D28 +/* 076908 80075D08 3C028012 */ lui $v0, %hi(D_801241E5) # $v0, 0x8012 +/* 07690C 80075D0C 8FAF0020 */ lw $t7, 0x20($sp) +/* 076910 80075D10 244241E5 */ addiu $v0, %lo(D_801241E5) # addiu $v0, $v0, 0x41e5 +/* 076914 80075D14 904E0000 */ lbu $t6, ($v0) +/* 076918 80075D18 24180001 */ li $t8, 1 +/* 07691C 80075D1C 01F8C804 */ sllv $t9, $t8, $t7 +/* 076920 80075D20 01D94025 */ or $t0, $t6, $t9 +/* 076924 80075D24 A0480000 */ sb $t0, ($v0) +.L80075D28: +/* 076928 80075D28 8FBF0014 */ lw $ra, 0x14($sp) +/* 07692C 80075D2C 27BD0020 */ addiu $sp, $sp, 0x20 +/* 076930 80075D30 03E00008 */ jr $ra +/* 076934 80075D34 00601025 */ move $v0, $v1 + diff --git a/asm/non_matchings/unknown_072E50/func_80075D38.s b/asm/non_matchings/unknown_072E50/func_80075D38.s new file mode 100644 index 00000000..72c4c06d --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80075D38.s @@ -0,0 +1,41 @@ +glabel func_80075D38 +/* 076938 80075D38 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 07693C 80075D3C AFBF0014 */ sw $ra, 0x14($sp) +/* 076940 80075D40 0C01D637 */ jal func_800758DC +/* 076944 80075D44 AFA40020 */ sw $a0, 0x20($sp) +/* 076948 80075D48 10400003 */ beqz $v0, .L80075D58 +/* 07694C 80075D4C 24010002 */ li $at, 2 +/* 076950 80075D50 14410015 */ bne $v0, $at, .L80075DA8 +/* 076954 80075D54 00001825 */ move $v1, $zero +.L80075D58: +/* 076958 80075D58 8FAE0020 */ lw $t6, 0x20($sp) +/* 07695C 80075D5C 3C188012 */ lui $t8, %hi(D_80124018) # $t8, 0x8012 +/* 076960 80075D60 000E7880 */ sll $t7, $t6, 2 +/* 076964 80075D64 01EE7823 */ subu $t7, $t7, $t6 +/* 076968 80075D68 000F7880 */ sll $t7, $t7, 2 +/* 07696C 80075D6C 01EE7821 */ addu $t7, $t7, $t6 +/* 076970 80075D70 000F78C0 */ sll $t7, $t7, 3 +/* 076974 80075D74 27184018 */ addiu $t8, %lo(D_80124018) # addiu $t8, $t8, 0x4018 +/* 076978 80075D78 0C033D4C */ jal func_800CF530 +/* 07697C 80075D7C 01F82021 */ addu $a0, $t7, $t8 +/* 076980 80075D80 14400003 */ bnez $v0, .L80075D90 +/* 076984 80075D84 24010002 */ li $at, 2 +/* 076988 80075D88 10000007 */ b .L80075DA8 +/* 07698C 80075D8C 00001825 */ move $v1, $zero +.L80075D90: +/* 076990 80075D90 14410003 */ bne $v0, $at, .L80075DA0 +/* 076994 80075D94 00000000 */ nop +/* 076998 80075D98 10000003 */ b .L80075DA8 +/* 07699C 80075D9C 24030005 */ li $v1, 5 +.L80075DA0: +/* 0769A0 80075DA0 10000001 */ b .L80075DA8 +/* 0769A4 80075DA4 24030002 */ li $v1, 2 +.L80075DA8: +/* 0769A8 80075DA8 8FA40020 */ lw $a0, 0x20($sp) +/* 0769AC 80075DAC 0C01D6BB */ jal func_80075AEC +/* 0769B0 80075DB0 AFA3001C */ sw $v1, 0x1c($sp) +/* 0769B4 80075DB4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0769B8 80075DB8 8FA2001C */ lw $v0, 0x1c($sp) +/* 0769BC 80075DBC 03E00008 */ jr $ra +/* 0769C0 80075DC0 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_072E50/func_80075DC4.s b/asm/non_matchings/unknown_072E50/func_80075DC4.s new file mode 100644 index 00000000..49fb1dc2 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80075DC4.s @@ -0,0 +1,45 @@ +glabel func_80075DC4 +/* 0769C4 80075DC4 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0769C8 80075DC8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0769CC 80075DCC 0C01D637 */ jal func_800758DC +/* 0769D0 80075DD0 AFA40020 */ sw $a0, 0x20($sp) +/* 0769D4 80075DD4 10400005 */ beqz $v0, .L80075DEC +/* 0769D8 80075DD8 24010002 */ li $at, 2 +/* 0769DC 80075DDC 10410003 */ beq $v0, $at, .L80075DEC +/* 0769E0 80075DE0 24010003 */ li $at, 3 +/* 0769E4 80075DE4 14410017 */ bne $v0, $at, .L80075E44 +/* 0769E8 80075DE8 00001825 */ move $v1, $zero +.L80075DEC: +/* 0769EC 80075DEC 8FA60020 */ lw $a2, 0x20($sp) +/* 0769F0 80075DF0 3C0F8012 */ lui $t7, %hi(D_80124018) # $t7, 0x8012 +/* 0769F4 80075DF4 00067080 */ sll $t6, $a2, 2 +/* 0769F8 80075DF8 01C67023 */ subu $t6, $t6, $a2 +/* 0769FC 80075DFC 000E7080 */ sll $t6, $t6, 2 +/* 076A00 80075E00 3C058012 */ lui $a1, %hi(D_80124010) # $a1, 0x8012 +/* 076A04 80075E04 01C67021 */ addu $t6, $t6, $a2 +/* 076A08 80075E08 000E70C0 */ sll $t6, $t6, 3 +/* 076A0C 80075E0C 8CA54010 */ lw $a1, %lo(D_80124010)($a1) +/* 076A10 80075E10 25EF4018 */ addiu $t7, %lo(D_80124018) # addiu $t7, $t7, 0x4018 +/* 076A14 80075E14 0C033FE4 */ jal func_800CFF90 +/* 076A18 80075E18 01CF2021 */ addu $a0, $t6, $t7 +/* 076A1C 80075E1C 14400003 */ bnez $v0, .L80075E2C +/* 076A20 80075E20 24010002 */ li $at, 2 +/* 076A24 80075E24 10000007 */ b .L80075E44 +/* 076A28 80075E28 00001825 */ move $v1, $zero +.L80075E2C: +/* 076A2C 80075E2C 14410003 */ bne $v0, $at, .L80075E3C +/* 076A30 80075E30 00000000 */ nop +/* 076A34 80075E34 10000003 */ b .L80075E44 +/* 076A38 80075E38 24030005 */ li $v1, 5 +.L80075E3C: +/* 076A3C 80075E3C 10000001 */ b .L80075E44 +/* 076A40 80075E40 24030002 */ li $v1, 2 +.L80075E44: +/* 076A44 80075E44 8FA40020 */ lw $a0, 0x20($sp) +/* 076A48 80075E48 0C01D6BB */ jal func_80075AEC +/* 076A4C 80075E4C AFA3001C */ sw $v1, 0x1c($sp) +/* 076A50 80075E50 8FBF0014 */ lw $ra, 0x14($sp) +/* 076A54 80075E54 8FA2001C */ lw $v0, 0x1c($sp) +/* 076A58 80075E58 03E00008 */ jr $ra +/* 076A5C 80075E5C 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_072E50/func_80075E60.s b/asm/non_matchings/unknown_072E50/func_80075E60.s new file mode 100644 index 00000000..58828789 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80075E60.s @@ -0,0 +1,211 @@ +glabel func_80075E60 +/* 076A60 80075E60 27BDFF70 */ addiu $sp, $sp, -0x90 +/* 076A64 80075E64 AFBF0034 */ sw $ra, 0x34($sp) +/* 076A68 80075E68 AFB70030 */ sw $s7, 0x30($sp) +/* 076A6C 80075E6C AFB50028 */ sw $s5, 0x28($sp) +/* 076A70 80075E70 AFB40024 */ sw $s4, 0x24($sp) +/* 076A74 80075E74 00A0A025 */ move $s4, $a1 +/* 076A78 80075E78 00C0A825 */ move $s5, $a2 +/* 076A7C 80075E7C 0080B825 */ move $s7, $a0 +/* 076A80 80075E80 AFB6002C */ sw $s6, 0x2c($sp) +/* 076A84 80075E84 AFB30020 */ sw $s3, 0x20($sp) +/* 076A88 80075E88 AFB2001C */ sw $s2, 0x1c($sp) +/* 076A8C 80075E8C AFB10018 */ sw $s1, 0x18($sp) +/* 076A90 80075E90 AFB00014 */ sw $s0, 0x14($sp) +/* 076A94 80075E94 0C01D637 */ jal func_800758DC +/* 076A98 80075E98 AFA7009C */ sw $a3, 0x9c($sp) +/* 076A9C 80075E9C 10400006 */ beqz $v0, .L80075EB8 +/* 076AA0 80075EA0 00408025 */ move $s0, $v0 +/* 076AA4 80075EA4 0C01D6BB */ jal func_80075AEC +/* 076AA8 80075EA8 02E02025 */ move $a0, $s7 +/* 076AAC 80075EAC 00177780 */ sll $t6, $s7, 0x1e +/* 076AB0 80075EB0 100000A1 */ b .L80076138 +/* 076AB4 80075EB4 01D01025 */ or $v0, $t6, $s0 +.L80075EB8: +/* 076AB8 80075EB8 00177880 */ sll $t7, $s7, 2 +/* 076ABC 80075EBC 01F77823 */ subu $t7, $t7, $s7 +/* 076AC0 80075EC0 000F7880 */ sll $t7, $t7, 2 +/* 076AC4 80075EC4 01F77821 */ addu $t7, $t7, $s7 +/* 076AC8 80075EC8 3C188012 */ lui $t8, %hi(D_80124018) # $t8, 0x8012 +/* 076ACC 80075ECC 27184018 */ addiu $t8, %lo(D_80124018) # addiu $t8, $t8, 0x4018 +/* 076AD0 80075ED0 000F78C0 */ sll $t7, $t7, 3 +/* 076AD4 80075ED4 01F82021 */ addu $a0, $t7, $t8 +/* 076AD8 80075ED8 AFA40054 */ sw $a0, 0x54($sp) +/* 076ADC 80075EDC 27A50068 */ addiu $a1, $sp, 0x68 +/* 076AE0 80075EE0 0C0340E4 */ jal func_800D0390 +/* 076AE4 80075EE4 27A60064 */ addiu $a2, $sp, 0x64 +/* 076AE8 80075EE8 10400007 */ beqz $v0, .L80075F08 +/* 076AEC 80075EEC 00000000 */ nop +/* 076AF0 80075EF0 0C01D6BB */ jal func_80075AEC +/* 076AF4 80075EF4 02E02025 */ move $a0, $s7 +/* 076AF8 80075EF8 00171780 */ sll $v0, $s7, 0x1e +/* 076AFC 80075EFC 34590009 */ ori $t9, $v0, 9 +/* 076B00 80075F00 1000008D */ b .L80076138 +/* 076B04 80075F04 03201025 */ move $v0, $t9 +.L80075F08: +/* 076B08 80075F08 0C027AC8 */ jal func_8009EB20 +/* 076B0C 80075F0C 00000000 */ nop +/* 076B10 80075F10 24010003 */ li $at, 3 +/* 076B14 80075F14 8FA90068 */ lw $t1, 0x68($sp) +/* 076B18 80075F18 14410004 */ bne $v0, $at, .L80075F2C +/* 076B1C 80075F1C 3C10800E */ lui $s0, %hi(D_800DE440) # $s0, 0x800e +/* 076B20 80075F20 3C164E44 */ lui $s6, (0x4E44594A >> 16) # lui $s6, 0x4e44 +/* 076B24 80075F24 10000009 */ b .L80075F4C +/* 076B28 80075F28 36D6594A */ ori $s6, (0x4E44594A & 0xFFFF) # ori $s6, $s6, 0x594a +.L80075F2C: +/* 076B2C 80075F2C 3C088000 */ lui $t0, %hi(D_80000300) # $t0, 0x8000 +/* 076B30 80075F30 8D080300 */ lw $t0, %lo(D_80000300)($t0) +/* 076B34 80075F34 3C164E44 */ lui $s6, (0x4E445945 >> 16) # lui $s6, 0x4e44 +/* 076B38 80075F38 15000004 */ bnez $t0, .L80075F4C +/* 076B3C 80075F3C 36D65945 */ ori $s6, (0x4E445945 & 0xFFFF) # ori $s6, $s6, 0x5945 +/* 076B40 80075F40 3C164E44 */ lui $s6, (0x4E445950 >> 16) # lui $s6, 0x4e44 +/* 076B44 80075F44 10000001 */ b .L80075F4C +/* 076B48 80075F48 36D65950 */ ori $s6, (0x4E445950 & 0xFFFF) # ori $s6, $s6, 0x5950 +.L80075F4C: +/* 076B4C 80075F4C 0289082A */ slt $at, $s4, $t1 +/* 076B50 80075F50 10200002 */ beqz $at, .L80075F5C +/* 076B54 80075F54 2610E440 */ addiu $s0, %lo(D_800DE440) # addiu $s0, $s0, -0x1bc0 +/* 076B58 80075F58 AFB40068 */ sw $s4, 0x68($sp) +.L80075F5C: +/* 076B5C 80075F5C 8E040000 */ lw $a0, ($s0) +/* 076B60 80075F60 00000000 */ nop +/* 076B64 80075F64 10800004 */ beqz $a0, .L80075F78 +/* 076B68 80075F68 8FA60068 */ lw $a2, 0x68($sp) +/* 076B6C 80075F6C 0C01C450 */ jal func_80071140 +/* 076B70 80075F70 00000000 */ nop +/* 076B74 80075F74 8FA60068 */ lw $a2, 0x68($sp) +.L80075F78: +/* 076B78 80075F78 240500FF */ li $a1, 255 +/* 076B7C 80075F7C 00065080 */ sll $t2, $a2, 2 +/* 076B80 80075F80 01465023 */ subu $t2, $t2, $a2 +/* 076B84 80075F84 000A20C0 */ sll $a0, $t2, 3 +/* 076B88 80075F88 0C01C327 */ jal func_80070C9C +/* 076B8C 80075F8C AFA40064 */ sw $a0, 0x64($sp) +/* 076B90 80075F90 8FA50064 */ lw $a1, 0x64($sp) +/* 076B94 80075F94 AE020000 */ sw $v0, ($s0) +/* 076B98 80075F98 0C034138 */ jal func_800D04E0 +/* 076B9C 80075F9C 00402025 */ move $a0, $v0 +/* 076BA0 80075FA0 8FAB0068 */ lw $t3, 0x68($sp) +/* 076BA4 80075FA4 8E030000 */ lw $v1, ($s0) +/* 076BA8 80075FA8 19600014 */ blez $t3, .L80075FFC +/* 076BAC 80075FAC 00009825 */ move $s3, $zero +/* 076BB0 80075FB0 8FB000A0 */ lw $s0, 0xa0($sp) +/* 076BB4 80075FB4 8FB1009C */ lw $s1, 0x9c($sp) +/* 076BB8 80075FB8 8FB200A4 */ lw $s2, 0xa4($sp) +/* 076BBC 80075FBC 02A01025 */ move $v0, $s5 +/* 076BC0 80075FC0 240400FF */ li $a0, 255 +.L80075FC4: +/* 076BC4 80075FC4 AC430000 */ sw $v1, ($v0) +/* 076BC8 80075FC8 24630012 */ addiu $v1, $v1, 0x12 +/* 076BCC 80075FCC AE230000 */ sw $v1, ($s1) +/* 076BD0 80075FD0 AE000000 */ sw $zero, ($s0) +/* 076BD4 80075FD4 A2440000 */ sb $a0, ($s2) +/* 076BD8 80075FD8 8FAC0068 */ lw $t4, 0x68($sp) +/* 076BDC 80075FDC 26730001 */ addiu $s3, $s3, 1 +/* 076BE0 80075FE0 026C082A */ slt $at, $s3, $t4 +/* 076BE4 80075FE4 24420004 */ addiu $v0, $v0, 4 +/* 076BE8 80075FE8 26310004 */ addiu $s1, $s1, 4 +/* 076BEC 80075FEC 26100004 */ addiu $s0, $s0, 4 +/* 076BF0 80075FF0 26520001 */ addiu $s2, $s2, 1 +/* 076BF4 80075FF4 1420FFF3 */ bnez $at, .L80075FC4 +/* 076BF8 80075FF8 24630006 */ addiu $v1, $v1, 6 +.L80075FFC: +/* 076BFC 80075FFC 8FA700A0 */ lw $a3, 0xa0($sp) +/* 076C00 80076000 0274082A */ slt $at, $s3, $s4 +/* 076C04 80076004 10200014 */ beqz $at, .L80076058 +/* 076C08 80076008 240400FF */ li $a0, 255 +/* 076C0C 8007600C 00131880 */ sll $v1, $s3, 2 +/* 076C10 80076010 8FAD009C */ lw $t5, 0x9c($sp) +/* 076C14 80076014 8FAE00A4 */ lw $t6, 0xa4($sp) +/* 076C18 80076018 00147880 */ sll $t7, $s4, 2 +/* 076C1C 8007601C 01E72821 */ addu $a1, $t7, $a3 +/* 076C20 80076020 02A31021 */ addu $v0, $s5, $v1 +/* 076C24 80076024 00E38021 */ addu $s0, $a3, $v1 +/* 076C28 80076028 01A38821 */ addu $s1, $t5, $v1 +/* 076C2C 8007602C 01D39021 */ addu $s2, $t6, $s3 +.L80076030: +/* 076C30 80076030 AE200000 */ sw $zero, ($s1) +/* 076C34 80076034 AC400000 */ sw $zero, ($v0) +/* 076C38 80076038 26100004 */ addiu $s0, $s0, 4 +/* 076C3C 8007603C AE00FFFC */ sw $zero, -4($s0) +/* 076C40 80076040 0205082B */ sltu $at, $s0, $a1 +/* 076C44 80076044 A2440000 */ sb $a0, ($s2) +/* 076C48 80076048 24420004 */ addiu $v0, $v0, 4 +/* 076C4C 8007604C 26310004 */ addiu $s1, $s1, 4 +/* 076C50 80076050 1420FFF7 */ bnez $at, .L80076030 +/* 076C54 80076054 26520001 */ addiu $s2, $s2, 1 +.L80076058: +/* 076C58 80076058 8FB80068 */ lw $t8, 0x68($sp) +/* 076C5C 8007605C 00009825 */ move $s3, $zero +/* 076C60 80076060 1B000032 */ blez $t8, .L8007612C +/* 076C64 80076064 00000000 */ nop +/* 076C68 80076068 8FA40054 */ lw $a0, 0x54($sp) +.L8007606C: +/* 076C6C 8007606C 02602825 */ move $a1, $s3 +/* 076C70 80076070 0C034160 */ jal func_800D0580 +/* 076C74 80076074 27A60070 */ addiu $a2, $sp, 0x70 +/* 076C78 80076078 24010005 */ li $at, 5 +/* 076C7C 8007607C 14410004 */ bne $v0, $at, .L80076090 +/* 076C80 80076080 0013C880 */ sll $t9, $s3, 2 +/* 076C84 80076084 02B94021 */ addu $t0, $s5, $t9 +/* 076C88 80076088 10000023 */ b .L80076118 +/* 076C8C 8007608C AD000000 */ sw $zero, ($t0) +.L80076090: +/* 076C90 80076090 10400005 */ beqz $v0, .L800760A8 +/* 076C94 80076094 27A4007E */ addiu $a0, $sp, 0x7e +/* 076C98 80076098 0C01D6BB */ jal func_80075AEC +/* 076C9C 8007609C 02E02025 */ move $a0, $s7 +/* 076CA0 800760A0 10000025 */ b .L80076138 +/* 076CA4 800760A4 24020009 */ li $v0, 9 +.L800760A8: +/* 076CA8 800760A8 00131880 */ sll $v1, $s3, 2 +/* 076CAC 800760AC 8FAA009C */ lw $t2, 0x9c($sp) +/* 076CB0 800760B0 8FAB00A0 */ lw $t3, 0xa0($sp) +/* 076CB4 800760B4 8FAC00A4 */ lw $t4, 0xa4($sp) +/* 076CB8 800760B8 02A34821 */ addu $t1, $s5, $v1 +/* 076CBC 800760BC 8D250000 */ lw $a1, ($t1) +/* 076CC0 800760C0 24060010 */ li $a2, 16 +/* 076CC4 800760C4 01438821 */ addu $s1, $t2, $v1 +/* 076CC8 800760C8 01638021 */ addu $s0, $t3, $v1 +/* 076CCC 800760CC 0C01DA63 */ jal func_8007698C +/* 076CD0 800760D0 01939021 */ addu $s2, $t4, $s3 +/* 076CD4 800760D4 8E250000 */ lw $a1, ($s1) +/* 076CD8 800760D8 27A4007A */ addiu $a0, $sp, 0x7a +/* 076CDC 800760DC 0C01DA63 */ jal func_8007698C +/* 076CE0 800760E0 24060004 */ li $a2, 4 +/* 076CE4 800760E4 8FAD0070 */ lw $t5, 0x70($sp) +/* 076CE8 800760E8 240E0006 */ li $t6, 6 +/* 076CEC 800760EC AE0D0000 */ sw $t5, ($s0) +/* 076CF0 800760F0 A24E0000 */ sb $t6, ($s2) +/* 076CF4 800760F4 8FAF0074 */ lw $t7, 0x74($sp) +/* 076CF8 800760F8 97B80078 */ lhu $t8, 0x78($sp) +/* 076CFC 800760FC 15F60006 */ bne $t7, $s6, .L80076118 +/* 076D00 80076100 24013459 */ li $at, 13401 +/* 076D04 80076104 17010004 */ bne $t8, $at, .L80076118 +/* 076D08 80076108 02E02025 */ move $a0, $s7 +/* 076D0C 8007610C 0C01DABD */ jal func_80076AF4 +/* 076D10 80076110 02602825 */ move $a1, $s3 +/* 076D14 80076114 A2420000 */ sb $v0, ($s2) +.L80076118: +/* 076D18 80076118 8FB90068 */ lw $t9, 0x68($sp) +/* 076D1C 8007611C 26730001 */ addiu $s3, $s3, 1 +/* 076D20 80076120 0279082A */ slt $at, $s3, $t9 +/* 076D24 80076124 1420FFD1 */ bnez $at, .L8007606C +/* 076D28 80076128 8FA40054 */ lw $a0, 0x54($sp) +.L8007612C: +/* 076D2C 8007612C 0C01D6BB */ jal func_80075AEC +/* 076D30 80076130 02E02025 */ move $a0, $s7 +/* 076D34 80076134 00001025 */ move $v0, $zero +.L80076138: +/* 076D38 80076138 8FBF0034 */ lw $ra, 0x34($sp) +/* 076D3C 8007613C 8FB00014 */ lw $s0, 0x14($sp) +/* 076D40 80076140 8FB10018 */ lw $s1, 0x18($sp) +/* 076D44 80076144 8FB2001C */ lw $s2, 0x1c($sp) +/* 076D48 80076148 8FB30020 */ lw $s3, 0x20($sp) +/* 076D4C 8007614C 8FB40024 */ lw $s4, 0x24($sp) +/* 076D50 80076150 8FB50028 */ lw $s5, 0x28($sp) +/* 076D54 80076154 8FB6002C */ lw $s6, 0x2c($sp) +/* 076D58 80076158 8FB70030 */ lw $s7, 0x30($sp) +/* 076D5C 8007615C 03E00008 */ jr $ra +/* 076D60 80076160 27BD0090 */ addiu $sp, $sp, 0x90 + diff --git a/asm/non_matchings/unknown_072E50/func_80076164.s b/asm/non_matchings/unknown_072E50/func_80076164.s new file mode 100644 index 00000000..6284974a --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80076164.s @@ -0,0 +1,15 @@ +glabel func_80076164 +/* 076D64 80076164 3C04800E */ lui $a0, %hi(D_800DE440) # $a0, 0x800e +/* 076D68 80076168 8C84E440 */ lw $a0, %lo(D_800DE440)($a0) +/* 076D6C 8007616C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 076D70 80076170 10800003 */ beqz $a0, .L80076180 +/* 076D74 80076174 AFBF0014 */ sw $ra, 0x14($sp) +/* 076D78 80076178 0C01C450 */ jal func_80071140 +/* 076D7C 8007617C 00000000 */ nop +.L80076180: +/* 076D80 80076180 8FBF0014 */ lw $ra, 0x14($sp) +/* 076D84 80076184 3C01800E */ lui $at, %hi(D_800DE440) # $at, 0x800e +/* 076D88 80076188 AC20E440 */ sw $zero, %lo(D_800DE440)($at) +/* 076D8C 8007618C 03E00008 */ jr $ra +/* 076D90 80076190 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_072E50/func_80076194.s b/asm/non_matchings/unknown_072E50/func_80076194.s new file mode 100644 index 00000000..e705bba5 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80076194.s @@ -0,0 +1,86 @@ +glabel func_80076194 +/* 076D94 80076194 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 076D98 80076198 AFBF001C */ sw $ra, 0x1c($sp) +/* 076D9C 8007619C AFB00018 */ sw $s0, 0x18($sp) +/* 076DA0 800761A0 00808025 */ move $s0, $a0 +/* 076DA4 800761A4 AFA50034 */ sw $a1, 0x34($sp) +/* 076DA8 800761A8 0C01D637 */ jal func_800758DC +/* 076DAC 800761AC AFA60038 */ sw $a2, 0x38($sp) +/* 076DB0 800761B0 1440003A */ bnez $v0, .L8007629C +/* 076DB4 800761B4 00401825 */ move $v1, $v0 +/* 076DB8 800761B8 8FAE0034 */ lw $t6, 0x34($sp) +/* 076DBC 800761BC 00107880 */ sll $t7, $s0, 2 +/* 076DC0 800761C0 11C00015 */ beqz $t6, .L80076218 +/* 076DC4 800761C4 01F07823 */ subu $t7, $t7, $s0 +/* 076DC8 800761C8 000F7880 */ sll $t7, $t7, 2 +/* 076DCC 800761CC 01F07821 */ addu $t7, $t7, $s0 +/* 076DD0 800761D0 3C188012 */ lui $t8, %hi(D_80124018) # $t8, 0x8012 +/* 076DD4 800761D4 27184018 */ addiu $t8, %lo(D_80124018) # addiu $t8, $t8, 0x4018 +/* 076DD8 800761D8 000F78C0 */ sll $t7, $t7, 3 +/* 076DDC 800761DC 01F82021 */ addu $a0, $t7, $t8 +/* 076DE0 800761E0 0C033CF8 */ jal func_800CF3E0 +/* 076DE4 800761E4 27A50028 */ addiu $a1, $sp, 0x28 +/* 076DE8 800761E8 10400007 */ beqz $v0, .L80076208 +/* 076DEC 800761EC 00401825 */ move $v1, $v0 +/* 076DF0 800761F0 0C01D6BB */ jal func_80075AEC +/* 076DF4 800761F4 02002025 */ move $a0, $s0 +/* 076DF8 800761F8 00101780 */ sll $v0, $s0, 0x1e +/* 076DFC 800761FC 34590009 */ ori $t9, $v0, 9 +/* 076E00 80076200 1000002D */ b .L800762B8 +/* 076E04 80076204 03201025 */ move $v0, $t9 +.L80076208: +/* 076E08 80076208 8FA80028 */ lw $t0, 0x28($sp) +/* 076E0C 8007620C 8FA90034 */ lw $t1, 0x34($sp) +/* 076E10 80076210 00000000 */ nop +/* 076E14 80076214 AD280000 */ sw $t0, ($t1) +.L80076218: +/* 076E18 80076218 8FAA0038 */ lw $t2, 0x38($sp) +/* 076E1C 8007621C 00105880 */ sll $t3, $s0, 2 +/* 076E20 80076220 11400020 */ beqz $t2, .L800762A4 +/* 076E24 80076224 01705823 */ subu $t3, $t3, $s0 +/* 076E28 80076228 000B5880 */ sll $t3, $t3, 2 +/* 076E2C 8007622C 01705821 */ addu $t3, $t3, $s0 +/* 076E30 80076230 3C0C8012 */ lui $t4, %hi(D_80124018) # $t4, 0x8012 +/* 076E34 80076234 258C4018 */ addiu $t4, %lo(D_80124018) # addiu $t4, $t4, 0x4018 +/* 076E38 80076238 000B58C0 */ sll $t3, $t3, 3 +/* 076E3C 8007623C 016C2021 */ addu $a0, $t3, $t4 +/* 076E40 80076240 27A50024 */ addiu $a1, $sp, 0x24 +/* 076E44 80076244 0C0340E4 */ jal func_800D0390 +/* 076E48 80076248 27A60020 */ addiu $a2, $sp, 0x20 +/* 076E4C 8007624C 10400007 */ beqz $v0, .L8007626C +/* 076E50 80076250 00401825 */ move $v1, $v0 +/* 076E54 80076254 0C01D6BB */ jal func_80075AEC +/* 076E58 80076258 02002025 */ move $a0, $s0 +/* 076E5C 8007625C 00101780 */ sll $v0, $s0, 0x1e +/* 076E60 80076260 344D0009 */ ori $t5, $v0, 9 +/* 076E64 80076264 10000014 */ b .L800762B8 +/* 076E68 80076268 01A01025 */ move $v0, $t5 +.L8007626C: +/* 076E6C 8007626C 8FAE0020 */ lw $t6, 0x20($sp) +/* 076E70 80076270 8FB80020 */ lw $t8, 0x20($sp) +/* 076E74 80076274 29C10010 */ slti $at, $t6, 0x10 +/* 076E78 80076278 14200004 */ bnez $at, .L8007628C +/* 076E7C 8007627C 24190010 */ li $t9, 16 +/* 076E80 80076280 8FAF0038 */ lw $t7, 0x38($sp) +/* 076E84 80076284 10000007 */ b .L800762A4 +/* 076E88 80076288 ADE00000 */ sw $zero, ($t7) +.L8007628C: +/* 076E8C 8007628C 8FA90038 */ lw $t1, 0x38($sp) +/* 076E90 80076290 03384023 */ subu $t0, $t9, $t8 +/* 076E94 80076294 10000003 */ b .L800762A4 +/* 076E98 80076298 AD280000 */ sw $t0, ($t1) +.L8007629C: +/* 076E9C 8007629C 00105780 */ sll $t2, $s0, 0x1e +/* 076EA0 800762A0 004A1825 */ or $v1, $v0, $t2 +.L800762A4: +/* 076EA4 800762A4 02002025 */ move $a0, $s0 +/* 076EA8 800762A8 0C01D6BB */ jal func_80075AEC +/* 076EAC 800762AC AFA3002C */ sw $v1, 0x2c($sp) +/* 076EB0 800762B0 8FA2002C */ lw $v0, 0x2c($sp) +/* 076EB4 800762B4 00000000 */ nop +.L800762B8: +/* 076EB8 800762B8 8FBF001C */ lw $ra, 0x1c($sp) +/* 076EBC 800762BC 8FB00018 */ lw $s0, 0x18($sp) +/* 076EC0 800762C0 03E00008 */ jr $ra +/* 076EC4 800762C4 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_072E50/func_800762C8.s b/asm/non_matchings/unknown_072E50/func_800762C8.s new file mode 100644 index 00000000..ba2fc2a5 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_800762C8.s @@ -0,0 +1,53 @@ +glabel func_800762C8 +/* 076EC8 800762C8 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 076ECC 800762CC AFBF0024 */ sw $ra, 0x24($sp) +/* 076ED0 800762D0 AFB0001C */ sw $s0, 0x1c($sp) +/* 076ED4 800762D4 00808025 */ move $s0, $a0 +/* 076ED8 800762D8 AFB10020 */ sw $s1, 0x20($sp) +/* 076EDC 800762DC 0C01D637 */ jal func_800758DC +/* 076EE0 800762E0 AFA50054 */ sw $a1, 0x54($sp) +/* 076EE4 800762E4 10400006 */ beqz $v0, .L80076300 +/* 076EE8 800762E8 00408825 */ move $s1, $v0 +/* 076EEC 800762EC 0C01D6BB */ jal func_80075AEC +/* 076EF0 800762F0 02002025 */ move $a0, $s0 +/* 076EF4 800762F4 00107780 */ sll $t6, $s0, 0x1e +/* 076EF8 800762F8 1000001E */ b .L80076374 +/* 076EFC 800762FC 01D11025 */ or $v0, $t6, $s1 +.L80076300: +/* 076F00 80076300 0010C080 */ sll $t8, $s0, 2 +/* 076F04 80076304 0310C023 */ subu $t8, $t8, $s0 +/* 076F08 80076308 0018C080 */ sll $t8, $t8, 2 +/* 076F0C 8007630C 0310C021 */ addu $t8, $t8, $s0 +/* 076F10 80076310 3C198012 */ lui $t9, %hi(D_80124018) # $t9, 0x8012 +/* 076F14 80076314 00108F80 */ sll $s1, $s0, 0x1e +/* 076F18 80076318 27394018 */ addiu $t9, %lo(D_80124018) # addiu $t9, $t9, 0x4018 +/* 076F1C 8007631C 0018C0C0 */ sll $t8, $t8, 3 +/* 076F20 80076320 362F0009 */ ori $t7, $s1, 9 +/* 076F24 80076324 03192021 */ addu $a0, $t8, $t9 +/* 076F28 80076328 8FA50054 */ lw $a1, 0x54($sp) +/* 076F2C 8007632C 01E08825 */ move $s1, $t7 +/* 076F30 80076330 AFA40028 */ sw $a0, 0x28($sp) +/* 076F34 80076334 0C034160 */ jal func_800D0580 +/* 076F38 80076338 27A60030 */ addiu $a2, $sp, 0x30 +/* 076F3C 8007633C 8FA40028 */ lw $a0, 0x28($sp) +/* 076F40 80076340 14400009 */ bnez $v0, .L80076368 +/* 076F44 80076344 27A7003E */ addiu $a3, $sp, 0x3e +/* 076F48 80076348 97A50038 */ lhu $a1, 0x38($sp) +/* 076F4C 8007634C 8FA60034 */ lw $a2, 0x34($sp) +/* 076F50 80076350 27A8003A */ addiu $t0, $sp, 0x3a +/* 076F54 80076354 0C03421C */ jal func_800D0870 +/* 076F58 80076358 AFA80010 */ sw $t0, 0x10($sp) +/* 076F5C 8007635C 14400002 */ bnez $v0, .L80076368 +/* 076F60 80076360 00000000 */ nop +/* 076F64 80076364 00008825 */ move $s1, $zero +.L80076368: +/* 076F68 80076368 0C01D6BB */ jal func_80075AEC +/* 076F6C 8007636C 02002025 */ move $a0, $s0 +/* 076F70 80076370 02201025 */ move $v0, $s1 +.L80076374: +/* 076F74 80076374 8FBF0024 */ lw $ra, 0x24($sp) +/* 076F78 80076378 8FB0001C */ lw $s0, 0x1c($sp) +/* 076F7C 8007637C 8FB10020 */ lw $s1, 0x20($sp) +/* 076F80 80076380 03E00008 */ jr $ra +/* 076F84 80076384 27BD0050 */ addiu $sp, $sp, 0x50 + diff --git a/asm/non_matchings/unknown_072E50/func_80076388.s b/asm/non_matchings/unknown_072E50/func_80076388.s new file mode 100644 index 00000000..af487aac --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80076388.s @@ -0,0 +1,95 @@ +glabel func_80076388 +/* 076F88 80076388 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 076F8C 8007638C AFBF0024 */ sw $ra, 0x24($sp) +/* 076F90 80076390 AFB00020 */ sw $s0, 0x20($sp) +/* 076F94 80076394 00808025 */ move $s0, $a0 +/* 076F98 80076398 AFA50074 */ sw $a1, 0x74($sp) +/* 076F9C 8007639C 0C01D637 */ jal func_800758DC +/* 076FA0 800763A0 AFA60078 */ sw $a2, 0x78($sp) +/* 076FA4 800763A4 10400008 */ beqz $v0, .L800763C8 +/* 076FA8 800763A8 00107880 */ sll $t7, $s0, 2 +/* 076FAC 800763AC 02002025 */ move $a0, $s0 +/* 076FB0 800763B0 0C01D6BB */ jal func_80075AEC +/* 076FB4 800763B4 AFA20030 */ sw $v0, 0x30($sp) +/* 076FB8 800763B8 8FA30030 */ lw $v1, 0x30($sp) +/* 076FBC 800763BC 00107780 */ sll $t6, $s0, 0x1e +/* 076FC0 800763C0 10000045 */ b .L800764D8 +/* 076FC4 800763C4 01C31025 */ or $v0, $t6, $v1 +.L800763C8: +/* 076FC8 800763C8 01F07823 */ subu $t7, $t7, $s0 +/* 076FCC 800763CC 000F7880 */ sll $t7, $t7, 2 +/* 076FD0 800763D0 01F07821 */ addu $t7, $t7, $s0 +/* 076FD4 800763D4 3C188012 */ lui $t8, %hi(D_80124018) # $t8, 0x8012 +/* 076FD8 800763D8 27184018 */ addiu $t8, %lo(D_80124018) # addiu $t8, $t8, 0x4018 +/* 076FDC 800763DC 000F78C0 */ sll $t7, $t7, 3 +/* 076FE0 800763E0 8FA50074 */ lw $a1, 0x74($sp) +/* 076FE4 800763E4 01F82021 */ addu $a0, $t7, $t8 +/* 076FE8 800763E8 0C034160 */ jal func_800D0580 +/* 076FEC 800763EC 27A60034 */ addiu $a2, $sp, 0x34 +/* 076FF0 800763F0 10400008 */ beqz $v0, .L80076414 +/* 076FF4 800763F4 8FA40034 */ lw $a0, 0x34($sp) +/* 076FF8 800763F8 0C01D6BB */ jal func_80075AEC +/* 076FFC 800763FC 02002025 */ move $a0, $s0 +/* 077000 80076400 00101780 */ sll $v0, $s0, 0x1e +/* 077004 80076404 34590009 */ ori $t9, $v0, 9 +/* 077008 80076408 10000033 */ b .L800764D8 +/* 07700C 8007640C 03201025 */ move $v0, $t9 +/* 077010 80076410 8FA40034 */ lw $a0, 0x34($sp) +.L80076414: +/* 077014 80076414 0C01C327 */ jal func_80070C9C +/* 077018 80076418 240500FF */ li $a1, 255 +/* 07701C 8007641C 8FA50074 */ lw $a1, 0x74($sp) +/* 077020 80076420 8FA70034 */ lw $a3, 0x34($sp) +/* 077024 80076424 AFA2002C */ sw $v0, 0x2c($sp) +/* 077028 80076428 02002025 */ move $a0, $s0 +/* 07702C 8007642C 0C01D984 */ jal func_80076610 +/* 077030 80076430 00403025 */ move $a2, $v0 +/* 077034 80076434 02002025 */ move $a0, $s0 +/* 077038 80076438 0C01D6BB */ jal func_80075AEC +/* 07703C 8007643C AFA20030 */ sw $v0, 0x30($sp) +/* 077040 80076440 8FA30030 */ lw $v1, 0x30($sp) +/* 077044 80076444 27A40042 */ addiu $a0, $sp, 0x42 +/* 077048 80076448 10600008 */ beqz $v1, .L8007646C +/* 07704C 8007644C 24060010 */ li $a2, 16 +/* 077050 80076450 8FA4002C */ lw $a0, 0x2c($sp) +/* 077054 80076454 0C01C450 */ jal func_80071140 +/* 077058 80076458 AFA30030 */ sw $v1, 0x30($sp) +/* 07705C 8007645C 8FA30030 */ lw $v1, 0x30($sp) +/* 077060 80076460 00104780 */ sll $t0, $s0, 0x1e +/* 077064 80076464 1000001C */ b .L800764D8 +/* 077068 80076468 01031025 */ or $v0, $t0, $v1 +.L8007646C: +/* 07706C 8007646C 27B0005C */ addiu $s0, $sp, 0x5c +/* 077070 80076470 0C01DA63 */ jal func_8007698C +/* 077074 80076474 02002825 */ move $a1, $s0 +/* 077078 80076478 27A4003E */ addiu $a0, $sp, 0x3e +/* 07707C 8007647C 27A50054 */ addiu $a1, $sp, 0x54 +/* 077080 80076480 0C01DA63 */ jal func_8007698C +/* 077084 80076484 24060004 */ li $a2, 4 +/* 077088 80076488 8FA9002C */ lw $t1, 0x2c($sp) +/* 07708C 8007648C 8FAA0034 */ lw $t2, 0x34($sp) +/* 077090 80076490 8FA40078 */ lw $a0, 0x78($sp) +/* 077094 80076494 2405FFFF */ li $a1, -1 +/* 077098 80076498 02003025 */ move $a2, $s0 +/* 07709C 8007649C 27A70054 */ addiu $a3, $sp, 0x54 +/* 0770A0 800764A0 AFA90010 */ sw $t1, 0x10($sp) +/* 0770A4 800764A4 0C01D9B5 */ jal func_800766D4 +/* 0770A8 800764A8 AFAA0014 */ sw $t2, 0x14($sp) +/* 0770AC 800764AC 10400005 */ beqz $v0, .L800764C4 +/* 0770B0 800764B0 00401825 */ move $v1, $v0 +/* 0770B4 800764B4 8FAB0078 */ lw $t3, 0x78($sp) +/* 0770B8 800764B8 00000000 */ nop +/* 0770BC 800764BC 000B6780 */ sll $t4, $t3, 0x1e +/* 0770C0 800764C0 004C1825 */ or $v1, $v0, $t4 +.L800764C4: +/* 0770C4 800764C4 8FA4002C */ lw $a0, 0x2c($sp) +/* 0770C8 800764C8 0C01C450 */ jal func_80071140 +/* 0770CC 800764CC AFA30030 */ sw $v1, 0x30($sp) +/* 0770D0 800764D0 8FA20030 */ lw $v0, 0x30($sp) +/* 0770D4 800764D4 00000000 */ nop +.L800764D8: +/* 0770D8 800764D8 8FBF0024 */ lw $ra, 0x24($sp) +/* 0770DC 800764DC 8FB00020 */ lw $s0, 0x20($sp) +/* 0770E0 800764E0 03E00008 */ jr $ra +/* 0770E4 800764E4 27BD0070 */ addiu $sp, $sp, 0x70 + diff --git a/asm/non_matchings/unknown_072E50/func_800764E8.s b/asm/non_matchings/unknown_072E50/func_800764E8.s new file mode 100644 index 00000000..d094695d --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_800764E8.s @@ -0,0 +1,84 @@ +glabel func_800764E8 +/* 0770E8 800764E8 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 0770EC 800764EC AFA40048 */ sw $a0, 0x48($sp) +/* 0770F0 800764F0 AFBF001C */ sw $ra, 0x1c($sp) +/* 0770F4 800764F4 AFA5004C */ sw $a1, 0x4c($sp) +/* 0770F8 800764F8 AFA60050 */ sw $a2, 0x50($sp) +/* 0770FC 800764FC 00A02025 */ move $a0, $a1 +/* 077100 80076500 AFA70054 */ sw $a3, 0x54($sp) +/* 077104 80076504 27A50034 */ addiu $a1, $sp, 0x34 +/* 077108 80076508 0C01DA8E */ jal func_80076A38 +/* 07710C 8007650C 24060010 */ li $a2, 16 +/* 077110 80076510 8FA40050 */ lw $a0, 0x50($sp) +/* 077114 80076514 27A5002C */ addiu $a1, $sp, 0x2c +/* 077118 80076518 0C01DA8E */ jal func_80076A38 +/* 07711C 8007651C 24060004 */ li $a2, 4 +/* 077120 80076520 0C027AC8 */ jal func_8009EB20 +/* 077124 80076524 00000000 */ nop +/* 077128 80076528 24010003 */ li $at, 3 +/* 07712C 8007652C 14410004 */ bne $v0, $at, .L80076540 +/* 077130 80076530 3C198012 */ lui $t9, %hi(D_80124018) # $t9, 0x8012 +/* 077134 80076534 3C064E44 */ lui $a2, (0x4E44594A >> 16) # lui $a2, 0x4e44 +/* 077138 80076538 10000009 */ b .L80076560 +/* 07713C 8007653C 34C6594A */ ori $a2, (0x4E44594A & 0xFFFF) # ori $a2, $a2, 0x594a +.L80076540: +/* 077140 80076540 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 +/* 077144 80076544 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) +/* 077148 80076548 3C064E44 */ lui $a2, (0x4E445945 >> 16) # lui $a2, 0x4e44 +/* 07714C 8007654C 15C00004 */ bnez $t6, .L80076560 +/* 077150 80076550 34C65945 */ ori $a2, (0x4E445945 & 0xFFFF) # ori $a2, $a2, 0x5945 +/* 077154 80076554 3C064E44 */ lui $a2, (0x4E445950 >> 16) # lui $a2, 0x4e44 +/* 077158 80076558 10000001 */ b .L80076560 +/* 07715C 8007655C 34C65950 */ ori $a2, (0x4E445950 & 0xFFFF) # ori $a2, $a2, 0x5950 +.L80076560: +/* 077160 80076560 8FAF0048 */ lw $t7, 0x48($sp) +/* 077164 80076564 8FA90054 */ lw $t1, 0x54($sp) +/* 077168 80076568 000FC080 */ sll $t8, $t7, 2 +/* 07716C 8007656C 030FC023 */ subu $t8, $t8, $t7 +/* 077170 80076570 0018C080 */ sll $t8, $t8, 2 +/* 077174 80076574 030FC021 */ addu $t8, $t8, $t7 +/* 077178 80076578 0018C0C0 */ sll $t8, $t8, 3 +/* 07717C 8007657C 27394018 */ addiu $t9, %lo(D_80124018) # addiu $t9, $t9, 0x4018 +/* 077180 80076580 27A8002C */ addiu $t0, $sp, 0x2c +/* 077184 80076584 AFA80010 */ sw $t0, 0x10($sp) +/* 077188 80076588 03192021 */ addu $a0, $t8, $t9 +/* 07718C 8007658C 24053459 */ li $a1, 13401 +/* 077190 80076590 27A70034 */ addiu $a3, $sp, 0x34 +/* 077194 80076594 0C0343A0 */ jal func_800D0E80 +/* 077198 80076598 AFA90014 */ sw $t1, 0x14($sp) +/* 07719C 8007659C 8FBF001C */ lw $ra, 0x1c($sp) +/* 0771A0 800765A0 14400003 */ bnez $v0, .L800765B0 +/* 0771A4 800765A4 24010001 */ li $at, 1 +/* 0771A8 800765A8 10000017 */ b .L80076608 +/* 0771AC 800765AC 00001025 */ move $v0, $zero +.L800765B0: +/* 0771B0 800765B0 10410003 */ beq $v0, $at, .L800765C0 +/* 0771B4 800765B4 2401000B */ li $at, 11 +/* 0771B8 800765B8 14410004 */ bne $v0, $at, .L800765CC +/* 0771BC 800765BC 24010003 */ li $at, 3 +.L800765C0: +/* 0771C0 800765C0 10000011 */ b .L80076608 +/* 0771C4 800765C4 24020001 */ li $v0, 1 +/* 0771C8 800765C8 24010003 */ li $at, 3 +.L800765CC: +/* 0771CC 800765CC 14410004 */ bne $v0, $at, .L800765E0 +/* 0771D0 800765D0 2401000A */ li $at, 10 +/* 0771D4 800765D4 1000000C */ b .L80076608 +/* 0771D8 800765D8 24020002 */ li $v0, 2 +/* 0771DC 800765DC 2401000A */ li $at, 10 +.L800765E0: +/* 0771E0 800765E0 14410004 */ bne $v0, $at, .L800765F4 +/* 0771E4 800765E4 24010005 */ li $at, 5 +/* 0771E8 800765E8 10000007 */ b .L80076608 +/* 0771EC 800765EC 24020003 */ li $v0, 3 +/* 0771F0 800765F0 24010005 */ li $at, 5 +.L800765F4: +/* 0771F4 800765F4 14410004 */ bne $v0, $at, .L80076608 +/* 0771F8 800765F8 24020009 */ li $v0, 9 +/* 0771FC 800765FC 10000002 */ b .L80076608 +/* 077200 80076600 24020005 */ li $v0, 5 +/* 077204 80076604 24020009 */ li $v0, 9 +.L80076608: +/* 077208 80076608 03E00008 */ jr $ra +/* 07720C 8007660C 27BD0048 */ addiu $sp, $sp, 0x48 + diff --git a/asm/non_matchings/unknown_072E50/func_80076610.s b/asm/non_matchings/unknown_072E50/func_80076610.s new file mode 100644 index 00000000..3a53e4bb --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80076610.s @@ -0,0 +1,57 @@ +glabel func_80076610 +/* 077210 80076610 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 077214 80076614 00047880 */ sll $t7, $a0, 2 +/* 077218 80076618 01E47823 */ subu $t7, $t7, $a0 +/* 07721C 8007661C AFA60028 */ sw $a2, 0x28($sp) +/* 077220 80076620 AFA7002C */ sw $a3, 0x2c($sp) +/* 077224 80076624 000F7880 */ sll $t7, $t7, 2 +/* 077228 80076628 8FB9002C */ lw $t9, 0x2c($sp) +/* 07722C 8007662C 8FA80028 */ lw $t0, 0x28($sp) +/* 077230 80076630 01E47821 */ addu $t7, $t7, $a0 +/* 077234 80076634 3C188012 */ lui $t8, %hi(D_80124018) # $t8, 0x8012 +/* 077238 80076638 AFBF001C */ sw $ra, 0x1c($sp) +/* 07723C 8007663C AFA40020 */ sw $a0, 0x20($sp) +/* 077240 80076640 27184018 */ addiu $t8, %lo(D_80124018) # addiu $t8, $t8, 0x4018 +/* 077244 80076644 000F78C0 */ sll $t7, $t7, 3 +/* 077248 80076648 01F82021 */ addu $a0, $t7, $t8 +/* 07724C 8007664C 00003825 */ move $a3, $zero +/* 077250 80076650 00003025 */ move $a2, $zero +/* 077254 80076654 AFB90010 */ sw $t9, 0x10($sp) +/* 077258 80076658 0C033BF7 */ jal func_800CEFDC +/* 07725C 8007665C AFA80014 */ sw $t0, 0x14($sp) +/* 077260 80076660 8FBF001C */ lw $ra, 0x1c($sp) +/* 077264 80076664 14400003 */ bnez $v0, .L80076674 +/* 077268 80076668 24010001 */ li $at, 1 +/* 07726C 8007666C 10000017 */ b .L800766CC +/* 077270 80076670 00001025 */ move $v0, $zero +.L80076674: +/* 077274 80076674 10410003 */ beq $v0, $at, .L80076684 +/* 077278 80076678 2401000B */ li $at, 11 +/* 07727C 8007667C 14410004 */ bne $v0, $at, .L80076690 +/* 077280 80076680 24010003 */ li $at, 3 +.L80076684: +/* 077284 80076684 10000011 */ b .L800766CC +/* 077288 80076688 24020001 */ li $v0, 1 +/* 07728C 8007668C 24010003 */ li $at, 3 +.L80076690: +/* 077290 80076690 14410004 */ bne $v0, $at, .L800766A4 +/* 077294 80076694 2401000A */ li $at, 10 +/* 077298 80076698 1000000C */ b .L800766CC +/* 07729C 8007669C 24020002 */ li $v0, 2 +/* 0772A0 800766A0 2401000A */ li $at, 10 +.L800766A4: +/* 0772A4 800766A4 14410004 */ bne $v0, $at, .L800766B8 +/* 0772A8 800766A8 24010005 */ li $at, 5 +/* 0772AC 800766AC 10000007 */ b .L800766CC +/* 0772B0 800766B0 24020003 */ li $v0, 3 +/* 0772B4 800766B4 24010005 */ li $at, 5 +.L800766B8: +/* 0772B8 800766B8 14410004 */ bne $v0, $at, .L800766CC +/* 0772BC 800766BC 24020009 */ li $v0, 9 +/* 0772C0 800766C0 10000002 */ b .L800766CC +/* 0772C4 800766C4 24020005 */ li $v0, 5 +/* 0772C8 800766C8 24020009 */ li $v0, 9 +.L800766CC: +/* 0772CC 800766CC 03E00008 */ jr $ra +/* 0772D0 800766D0 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_072E50/func_800766D4.s b/asm/non_matchings/unknown_072E50/func_800766D4.s new file mode 100644 index 00000000..f0267cc3 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_800766D4.s @@ -0,0 +1,166 @@ +glabel func_800766D4 +/* 0772D4 800766D4 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 0772D8 800766D8 AFBF0024 */ sw $ra, 0x24($sp) +/* 0772DC 800766DC AFA40058 */ sw $a0, 0x58($sp) +/* 0772E0 800766E0 AFA5005C */ sw $a1, 0x5c($sp) +/* 0772E4 800766E4 AFA60060 */ sw $a2, 0x60($sp) +/* 0772E8 800766E8 0C01D637 */ jal func_800758DC +/* 0772EC 800766EC AFA70064 */ sw $a3, 0x64($sp) +/* 0772F0 800766F0 10400007 */ beqz $v0, .L80076710 +/* 0772F4 800766F4 27A50044 */ addiu $a1, $sp, 0x44 +/* 0772F8 800766F8 8FA40058 */ lw $a0, 0x58($sp) +/* 0772FC 800766FC 0C01D6BB */ jal func_80075AEC +/* 077300 80076700 AFA20038 */ sw $v0, 0x38($sp) +/* 077304 80076704 8FA20038 */ lw $v0, 0x38($sp) +/* 077308 80076708 10000083 */ b .L80076918 +/* 07730C 8007670C 8FBF0024 */ lw $ra, 0x24($sp) +.L80076710: +/* 077310 80076710 8FA3006C */ lw $v1, 0x6c($sp) +/* 077314 80076714 8FA40060 */ lw $a0, 0x60($sp) +/* 077318 80076718 306200FF */ andi $v0, $v1, 0xff +/* 07731C 8007671C 10400003 */ beqz $v0, .L8007672C +/* 077320 80076720 00603825 */ move $a3, $v1 +/* 077324 80076724 00623823 */ subu $a3, $v1, $v0 +/* 077328 80076728 24E70100 */ addiu $a3, $a3, 0x100 +.L8007672C: +/* 07732C 8007672C 24060010 */ li $a2, 16 +/* 077330 80076730 0C01DA8E */ jal func_80076A38 +/* 077334 80076734 AFA70030 */ sw $a3, 0x30($sp) +/* 077338 80076738 8FA40064 */ lw $a0, 0x64($sp) +/* 07733C 8007673C 27A5003C */ addiu $a1, $sp, 0x3c +/* 077340 80076740 0C01DA8E */ jal func_80076A38 +/* 077344 80076744 24060004 */ li $a2, 4 +/* 077348 80076748 0C027AC8 */ jal func_8009EB20 +/* 07734C 8007674C 00000000 */ nop +/* 077350 80076750 24010003 */ li $at, 3 +/* 077354 80076754 14410005 */ bne $v0, $at, .L8007676C +/* 077358 80076758 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 +/* 07735C 8007675C 3C0E4E44 */ lui $t6, (0x4E44594A >> 16) # lui $t6, 0x4e44 +/* 077360 80076760 35CE594A */ ori $t6, (0x4E44594A & 0xFFFF) # ori $t6, $t6, 0x594a +/* 077364 80076764 1000000A */ b .L80076790 +/* 077368 80076768 AFAE002C */ sw $t6, 0x2c($sp) +.L8007676C: +/* 07736C 8007676C 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) +/* 077370 80076770 3C194E44 */ lui $t9, (0x4E445945 >> 16) # lui $t9, 0x4e44 +/* 077374 80076774 15E00005 */ bnez $t7, .L8007678C +/* 077378 80076778 37395945 */ ori $t9, (0x4E445945 & 0xFFFF) # ori $t9, $t9, 0x5945 +/* 07737C 8007677C 3C184E44 */ lui $t8, (0x4E445950 >> 16) # lui $t8, 0x4e44 +/* 077380 80076780 37185950 */ ori $t8, (0x4E445950 & 0xFFFF) # ori $t8, $t8, 0x5950 +/* 077384 80076784 10000002 */ b .L80076790 +/* 077388 80076788 AFB8002C */ sw $t8, 0x2c($sp) +.L8007678C: +/* 07738C 8007678C AFB9002C */ sw $t9, 0x2c($sp) +.L80076790: +/* 077390 80076790 8FA40058 */ lw $a0, 0x58($sp) +/* 077394 80076794 8FA50060 */ lw $a1, 0x60($sp) +/* 077398 80076798 8FA60064 */ lw $a2, 0x64($sp) +/* 07739C 8007679C 0C01D93A */ jal func_800764E8 +/* 0773A0 800767A0 27A70034 */ addiu $a3, $sp, 0x34 +/* 0773A4 800767A4 1440000B */ bnez $v0, .L800767D4 +/* 0773A8 800767A8 00401825 */ move $v1, $v0 +/* 0773AC 800767AC 8FA2005C */ lw $v0, 0x5c($sp) +/* 0773B0 800767B0 2401FFFF */ li $at, -1 +/* 0773B4 800767B4 1041002C */ beq $v0, $at, .L80076868 +/* 0773B8 800767B8 00000000 */ nop +/* 0773BC 800767BC 8FA80034 */ lw $t0, 0x34($sp) +/* 0773C0 800767C0 00000000 */ nop +/* 0773C4 800767C4 10480028 */ beq $v0, $t0, .L80076868 +/* 0773C8 800767C8 00000000 */ nop +/* 0773CC 800767CC 10000026 */ b .L80076868 +/* 0773D0 800767D0 24030009 */ li $v1, 9 +.L800767D4: +/* 0773D4 800767D4 24010005 */ li $at, 5 +/* 0773D8 800767D8 14410023 */ bne $v0, $at, .L80076868 +/* 0773DC 800767DC 00000000 */ nop +/* 0773E0 800767E0 8FA9005C */ lw $t1, 0x5c($sp) +/* 0773E4 800767E4 2401FFFF */ li $at, -1 +/* 0773E8 800767E8 11210003 */ beq $t1, $at, .L800767F8 +/* 0773EC 800767EC 3C0C8012 */ lui $t4, %hi(D_80124018) # $t4, 0x8012 +/* 0773F0 800767F0 1000001D */ b .L80076868 +/* 0773F4 800767F4 24030009 */ li $v1, 9 +.L800767F8: +/* 0773F8 800767F8 8FAA0058 */ lw $t2, 0x58($sp) +/* 0773FC 800767FC 8FAE0030 */ lw $t6, 0x30($sp) +/* 077400 80076800 000A5880 */ sll $t3, $t2, 2 +/* 077404 80076804 016A5823 */ subu $t3, $t3, $t2 +/* 077408 80076808 000B5880 */ sll $t3, $t3, 2 +/* 07740C 8007680C 016A5821 */ addu $t3, $t3, $t2 +/* 077410 80076810 000B58C0 */ sll $t3, $t3, 3 +/* 077414 80076814 258C4018 */ addiu $t4, %lo(D_80124018) # addiu $t4, $t4, 0x4018 +/* 077418 80076818 8FA6002C */ lw $a2, 0x2c($sp) +/* 07741C 8007681C 27AD003C */ addiu $t5, $sp, 0x3c +/* 077420 80076820 27AF0034 */ addiu $t7, $sp, 0x34 +/* 077424 80076824 AFAF0018 */ sw $t7, 0x18($sp) +/* 077428 80076828 AFAD0010 */ sw $t5, 0x10($sp) +/* 07742C 8007682C 016C2021 */ addu $a0, $t3, $t4 +/* 077430 80076830 24053459 */ li $a1, 13401 +/* 077434 80076834 27A70044 */ addiu $a3, $sp, 0x44 +/* 077438 80076838 0C034410 */ jal func_800D1040 +/* 07743C 8007683C AFAE0014 */ sw $t6, 0x14($sp) +/* 077440 80076840 14400003 */ bnez $v0, .L80076850 +/* 077444 80076844 24010007 */ li $at, 7 +/* 077448 80076848 10000007 */ b .L80076868 +/* 07744C 8007684C 00001825 */ move $v1, $zero +.L80076850: +/* 077450 80076850 10410003 */ beq $v0, $at, .L80076860 +/* 077454 80076854 24010008 */ li $at, 8 +/* 077458 80076858 14410003 */ bne $v0, $at, .L80076868 +/* 07745C 8007685C 24030009 */ li $v1, 9 +.L80076860: +/* 077460 80076860 10000001 */ b .L80076868 +/* 077464 80076864 24030004 */ li $v1, 4 +.L80076868: +/* 077468 80076868 14600025 */ bnez $v1, .L80076900 +/* 07746C 8007686C 3C088012 */ lui $t0, %hi(D_80124018) # $t0, 0x8012 +/* 077470 80076870 8FB80058 */ lw $t8, 0x58($sp) +/* 077474 80076874 8FA90030 */ lw $t1, 0x30($sp) +/* 077478 80076878 0018C880 */ sll $t9, $t8, 2 +/* 07747C 8007687C 0338C823 */ subu $t9, $t9, $t8 +/* 077480 80076880 0019C880 */ sll $t9, $t9, 2 +/* 077484 80076884 8FAA0068 */ lw $t2, 0x68($sp) +/* 077488 80076888 0338C821 */ addu $t9, $t9, $t8 +/* 07748C 8007688C 0019C8C0 */ sll $t9, $t9, 3 +/* 077490 80076890 25084018 */ addiu $t0, %lo(D_80124018) # addiu $t0, $t0, 0x4018 +/* 077494 80076894 8FA50034 */ lw $a1, 0x34($sp) +/* 077498 80076898 03282021 */ addu $a0, $t9, $t0 +/* 07749C 8007689C 24060001 */ li $a2, 1 +/* 0774A0 800768A0 00003825 */ move $a3, $zero +/* 0774A4 800768A4 AFA90010 */ sw $t1, 0x10($sp) +/* 0774A8 800768A8 0C033BF7 */ jal func_800CEFDC +/* 0774AC 800768AC AFAA0014 */ sw $t2, 0x14($sp) +/* 0774B0 800768B0 14400003 */ bnez $v0, .L800768C0 +/* 0774B4 800768B4 24010001 */ li $at, 1 +/* 0774B8 800768B8 10000011 */ b .L80076900 +/* 0774BC 800768BC 00001825 */ move $v1, $zero +.L800768C0: +/* 0774C0 800768C0 10410003 */ beq $v0, $at, .L800768D0 +/* 0774C4 800768C4 2401000B */ li $at, 11 +/* 0774C8 800768C8 14410004 */ bne $v0, $at, .L800768DC +/* 0774CC 800768CC 24010003 */ li $at, 3 +.L800768D0: +/* 0774D0 800768D0 1000000B */ b .L80076900 +/* 0774D4 800768D4 24030001 */ li $v1, 1 +/* 0774D8 800768D8 24010003 */ li $at, 3 +.L800768DC: +/* 0774DC 800768DC 14410004 */ bne $v0, $at, .L800768F0 +/* 0774E0 800768E0 2401000A */ li $at, 10 +/* 0774E4 800768E4 10000006 */ b .L80076900 +/* 0774E8 800768E8 24030002 */ li $v1, 2 +/* 0774EC 800768EC 2401000A */ li $at, 10 +.L800768F0: +/* 0774F0 800768F0 14410003 */ bne $v0, $at, .L80076900 +/* 0774F4 800768F4 24030009 */ li $v1, 9 +/* 0774F8 800768F8 10000001 */ b .L80076900 +/* 0774FC 800768FC 24030003 */ li $v1, 3 +.L80076900: +/* 077500 80076900 8FA40058 */ lw $a0, 0x58($sp) +/* 077504 80076904 0C01D6BB */ jal func_80075AEC +/* 077508 80076908 AFA30038 */ sw $v1, 0x38($sp) +/* 07750C 8007690C 8FA20038 */ lw $v0, 0x38($sp) +/* 077510 80076910 00000000 */ nop +/* 077514 80076914 8FBF0024 */ lw $ra, 0x24($sp) +.L80076918: +/* 077518 80076918 27BD0058 */ addiu $sp, $sp, 0x58 +/* 07751C 8007691C 03E00008 */ jr $ra +/* 077520 80076920 00000000 */ nop + diff --git a/asm/non_matchings/unknown_072E50/func_80076924.s b/asm/non_matchings/unknown_072E50/func_80076924.s new file mode 100644 index 00000000..b1002f51 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80076924.s @@ -0,0 +1,29 @@ +glabel func_80076924 +/* 077524 80076924 00047880 */ sll $t7, $a0, 2 +/* 077528 80076928 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 07752C 8007692C 01E47823 */ subu $t7, $t7, $a0 +/* 077530 80076930 000F7880 */ sll $t7, $t7, 2 +/* 077534 80076934 AFBF0014 */ sw $ra, 0x14($sp) +/* 077538 80076938 AFA60040 */ sw $a2, 0x40($sp) +/* 07753C 8007693C 01E47821 */ addu $t7, $t7, $a0 +/* 077540 80076940 3C188012 */ lui $t8, %hi(D_80124018) # $t8, 0x8012 +/* 077544 80076944 ACC00000 */ sw $zero, ($a2) +/* 077548 80076948 27184018 */ addiu $t8, %lo(D_80124018) # addiu $t8, $t8, 0x4018 +/* 07754C 8007694C 000F78C0 */ sll $t7, $t7, 3 +/* 077550 80076950 01F82021 */ addu $a0, $t7, $t8 +/* 077554 80076954 0C034160 */ jal func_800D0580 +/* 077558 80076958 27A60018 */ addiu $a2, $sp, 0x18 +/* 07755C 8007695C 14400007 */ bnez $v0, .L8007697C +/* 077560 80076960 24020009 */ li $v0, 9 +/* 077564 80076964 8FB90018 */ lw $t9, 0x18($sp) +/* 077568 80076968 8FA80040 */ lw $t0, 0x40($sp) +/* 07756C 8007696C 00001025 */ move $v0, $zero +/* 077570 80076970 10000002 */ b .L8007697C +/* 077574 80076974 AD190000 */ sw $t9, ($t0) +/* 077578 80076978 24020009 */ li $v0, 9 +.L8007697C: +/* 07757C 8007697C 8FBF0014 */ lw $ra, 0x14($sp) +/* 077580 80076980 27BD0038 */ addiu $sp, $sp, 0x38 +/* 077584 80076984 03E00008 */ jr $ra +/* 077588 80076988 00000000 */ nop + diff --git a/asm/non_matchings/unknown_072E50/func_8007698C.s b/asm/non_matchings/unknown_072E50/func_8007698C.s new file mode 100644 index 00000000..b83952d5 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_8007698C.s @@ -0,0 +1,52 @@ +glabel func_8007698C +/* 07758C 8007698C 90820000 */ lbu $v0, ($a0) +/* 077590 80076990 00A01825 */ move $v1, $a1 +/* 077594 80076994 10400014 */ beqz $v0, .L800769E8 +/* 077598 80076998 00000000 */ nop +/* 07759C 8007699C 10C00012 */ beqz $a2, .L800769E8 +/* 0775A0 800769A0 2408002D */ li $t0, 45 +/* 0775A4 800769A4 3C07800E */ lui $a3, %hi(D_800DE444) # $a3, 0x800e +/* 0775A8 800769A8 24E7E444 */ addiu $a3, %lo(D_800DE444) # addiu $a3, $a3, -0x1bbc +/* 0775AC 800769AC 28410042 */ slti $at, $v0, 0x42 +.L800769B0: +/* 0775B0 800769B0 10200005 */ beqz $at, .L800769C8 +/* 0775B4 800769B4 00E27021 */ addu $t6, $a3, $v0 +/* 0775B8 800769B8 91CF0000 */ lbu $t7, ($t6) +/* 0775BC 800769BC 24A50001 */ addiu $a1, $a1, 1 +/* 0775C0 800769C0 10000003 */ b .L800769D0 +/* 0775C4 800769C4 A0AFFFFF */ sb $t7, -1($a1) +.L800769C8: +/* 0775C8 800769C8 A0A80000 */ sb $t0, ($a1) +/* 0775CC 800769CC 24A50001 */ addiu $a1, $a1, 1 +.L800769D0: +/* 0775D0 800769D0 90820001 */ lbu $v0, 1($a0) +/* 0775D4 800769D4 24840001 */ addiu $a0, $a0, 1 +/* 0775D8 800769D8 10400003 */ beqz $v0, .L800769E8 +/* 0775DC 800769DC 24C6FFFF */ addiu $a2, $a2, -1 +/* 0775E0 800769E0 14C0FFF3 */ bnez $a2, .L800769B0 +/* 0775E4 800769E4 28410042 */ slti $at, $v0, 0x42 +.L800769E8: +/* 0775E8 800769E8 10C00010 */ beqz $a2, .L80076A2C +/* 0775EC 800769EC 30C40003 */ andi $a0, $a2, 3 +/* 0775F0 800769F0 00042023 */ negu $a0, $a0 +/* 0775F4 800769F4 10800006 */ beqz $a0, .L80076A10 +/* 0775F8 800769F8 00861021 */ addu $v0, $a0, $a2 +.L800769FC: +/* 0775FC 800769FC 24C6FFFF */ addiu $a2, $a2, -1 +/* 077600 80076A00 A0A00000 */ sb $zero, ($a1) +/* 077604 80076A04 1446FFFD */ bne $v0, $a2, .L800769FC +/* 077608 80076A08 24A50001 */ addiu $a1, $a1, 1 +/* 07760C 80076A0C 10C00007 */ beqz $a2, .L80076A2C +.L80076A10: +/* 077610 80076A10 24C6FFFC */ addiu $a2, $a2, -4 +/* 077614 80076A14 A0A00000 */ sb $zero, ($a1) +/* 077618 80076A18 A0A00001 */ sb $zero, 1($a1) +/* 07761C 80076A1C A0A00002 */ sb $zero, 2($a1) +/* 077620 80076A20 A0A00003 */ sb $zero, 3($a1) +/* 077624 80076A24 14C0FFFA */ bnez $a2, .L80076A10 +/* 077628 80076A28 24A50004 */ addiu $a1, $a1, 4 +.L80076A2C: +/* 07762C 80076A2C A0A00000 */ sb $zero, ($a1) +/* 077630 80076A30 03E00008 */ jr $ra +/* 077634 80076A34 00601025 */ move $v0, $v1 + diff --git a/asm/non_matchings/unknown_072E50/func_80076A38.s b/asm/non_matchings/unknown_072E50/func_80076A38.s new file mode 100644 index 00000000..bde84a1d --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80076A38.s @@ -0,0 +1,57 @@ +glabel func_80076A38 +/* 077638 80076A38 908E0000 */ lbu $t6, ($a0) +/* 07763C 80076A3C 00A01825 */ move $v1, $a1 +/* 077640 80076A40 11C00018 */ beqz $t6, .L80076AA4 +/* 077644 80076A44 00000000 */ nop +/* 077648 80076A48 10C00016 */ beqz $a2, .L80076AA4 +/* 07764C 80076A4C 24090041 */ li $t1, 65 +.L80076A50: +/* 077650 80076A50 A0A00000 */ sb $zero, ($a1) +/* 077654 80076A54 3C08800E */ lui $t0, %hi(D_800DE444) # $t0, 0x800e +/* 077658 80076A58 90870000 */ lbu $a3, ($a0) +/* 07765C 80076A5C 2508E444 */ addiu $t0, %lo(D_800DE444) # addiu $t0, $t0, -0x1bbc +/* 077660 80076A60 00001025 */ move $v0, $zero +.L80076A64: +/* 077664 80076A64 910F0000 */ lbu $t7, ($t0) +/* 077668 80076A68 00000000 */ nop +/* 07766C 80076A6C 14EF0004 */ bne $a3, $t7, .L80076A80 +/* 077670 80076A70 00000000 */ nop +/* 077674 80076A74 A0A20000 */ sb $v0, ($a1) +/* 077678 80076A78 10000004 */ b .L80076A8C +/* 07767C 80076A7C 24A50001 */ addiu $a1, $a1, 1 +.L80076A80: +/* 077680 80076A80 24420001 */ addiu $v0, $v0, 1 +/* 077684 80076A84 1449FFF7 */ bne $v0, $t1, .L80076A64 +/* 077688 80076A88 25080001 */ addiu $t0, $t0, 1 +.L80076A8C: +/* 07768C 80076A8C 90980001 */ lbu $t8, 1($a0) +/* 077690 80076A90 24840001 */ addiu $a0, $a0, 1 +/* 077694 80076A94 13000003 */ beqz $t8, .L80076AA4 +/* 077698 80076A98 24C6FFFF */ addiu $a2, $a2, -1 +/* 07769C 80076A9C 14C0FFEC */ bnez $a2, .L80076A50 +/* 0776A0 80076AA0 00000000 */ nop +.L80076AA4: +/* 0776A4 80076AA4 10C00010 */ beqz $a2, .L80076AE8 +/* 0776A8 80076AA8 30C40003 */ andi $a0, $a2, 3 +/* 0776AC 80076AAC 00042023 */ negu $a0, $a0 +/* 0776B0 80076AB0 10800006 */ beqz $a0, .L80076ACC +/* 0776B4 80076AB4 00861021 */ addu $v0, $a0, $a2 +.L80076AB8: +/* 0776B8 80076AB8 24C6FFFF */ addiu $a2, $a2, -1 +/* 0776BC 80076ABC A0A00000 */ sb $zero, ($a1) +/* 0776C0 80076AC0 1446FFFD */ bne $v0, $a2, .L80076AB8 +/* 0776C4 80076AC4 24A50001 */ addiu $a1, $a1, 1 +/* 0776C8 80076AC8 10C00007 */ beqz $a2, .L80076AE8 +.L80076ACC: +/* 0776CC 80076ACC 24C6FFFC */ addiu $a2, $a2, -4 +/* 0776D0 80076AD0 A0A00000 */ sb $zero, ($a1) +/* 0776D4 80076AD4 A0A00001 */ sb $zero, 1($a1) +/* 0776D8 80076AD8 A0A00002 */ sb $zero, 2($a1) +/* 0776DC 80076ADC A0A00003 */ sb $zero, 3($a1) +/* 0776E0 80076AE0 14C0FFFA */ bnez $a2, .L80076ACC +/* 0776E4 80076AE4 24A50004 */ addiu $a1, $a1, 4 +.L80076AE8: +/* 0776E8 80076AE8 A0A00000 */ sb $zero, ($a1) +/* 0776EC 80076AEC 03E00008 */ jr $ra +/* 0776F0 80076AF0 00601025 */ move $v0, $v1 + diff --git a/asm/non_matchings/unknown_072E50/func_80076AF4.s b/asm/non_matchings/unknown_072E50/func_80076AF4.s new file mode 100644 index 00000000..a73f52f8 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80076AF4.s @@ -0,0 +1,49 @@ +glabel func_80076AF4 +/* 0776F4 80076AF4 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0776F8 80076AF8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0776FC 80076AFC AFA40028 */ sw $a0, 0x28($sp) +/* 077700 80076B00 AFA5002C */ sw $a1, 0x2c($sp) +/* 077704 80076B04 24030006 */ li $v1, 6 +/* 077708 80076B08 AFA3001C */ sw $v1, 0x1c($sp) +/* 07770C 80076B0C 240500FF */ li $a1, 255 +/* 077710 80076B10 0C01C327 */ jal func_80070C9C +/* 077714 80076B14 24040100 */ li $a0, 256 +/* 077718 80076B18 8FA40028 */ lw $a0, 0x28($sp) +/* 07771C 80076B1C 8FA5002C */ lw $a1, 0x2c($sp) +/* 077720 80076B20 AFA20024 */ sw $v0, 0x24($sp) +/* 077724 80076B24 00403025 */ move $a2, $v0 +/* 077728 80076B28 0C01D984 */ jal func_80076610 +/* 07772C 80076B2C 24070100 */ li $a3, 256 +/* 077730 80076B30 8FA3001C */ lw $v1, 0x1c($sp) +/* 077734 80076B34 8FA40024 */ lw $a0, 0x24($sp) +/* 077738 80076B38 14400012 */ bnez $v0, .L80076B84 +/* 07773C 80076B3C 3C014741 */ lui $at, (0x47414D44 >> 16) # lui $at, 0x4741 +/* 077740 80076B40 8C820000 */ lw $v0, ($a0) +/* 077744 80076B44 34214D44 */ ori $at, (0x47414D44 & 0xFFFF) # ori $at, $at, 0x4d44 +/* 077748 80076B48 10410009 */ beq $v0, $at, .L80076B70 +/* 07774C 80076B4C 3C014748 */ lui $at, (0x47485353 >> 16) # lui $at, 0x4748 +/* 077750 80076B50 34215353 */ ori $at, (0x47485353 & 0xFFFF) # ori $at, $at, 0x5353 +/* 077754 80076B54 1041000A */ beq $v0, $at, .L80076B80 +/* 077758 80076B58 3C015449 */ lui $at, (0x54494D44 >> 16) # lui $at, 0x5449 +/* 07775C 80076B5C 34214D44 */ ori $at, (0x54494D44 & 0xFFFF) # ori $at, $at, 0x4d44 +/* 077760 80076B60 10410005 */ beq $v0, $at, .L80076B78 +/* 077764 80076B64 00000000 */ nop +/* 077768 80076B68 10000006 */ b .L80076B84 +/* 07776C 80076B6C 00000000 */ nop +.L80076B70: +/* 077770 80076B70 10000004 */ b .L80076B84 +/* 077774 80076B74 24030003 */ li $v1, 3 +.L80076B78: +/* 077778 80076B78 10000002 */ b .L80076B84 +/* 07777C 80076B7C 24030004 */ li $v1, 4 +.L80076B80: +/* 077780 80076B80 24030005 */ li $v1, 5 +.L80076B84: +/* 077784 80076B84 0C01C450 */ jal func_80071140 +/* 077788 80076B88 AFA3001C */ sw $v1, 0x1c($sp) +/* 07778C 80076B8C 8FBF0014 */ lw $ra, 0x14($sp) +/* 077790 80076B90 8FA2001C */ lw $v0, 0x1c($sp) +/* 077794 80076B94 03E00008 */ jr $ra +/* 077798 80076B98 27BD0028 */ addiu $sp, $sp, 0x28 + +/* 07779C 80076B9C 00000000 */ nop diff --git a/asm/non_matchings/unknown_072E50/func_80076BA0.s b/asm/non_matchings/unknown_072E50/func_80076BA0.s new file mode 100644 index 00000000..1748249e --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80076BA0.s @@ -0,0 +1,48 @@ +glabel func_80076BA0 +/* 0777A0 80076BA0 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0777A4 80076BA4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0777A8 80076BA8 3C048012 */ lui $a0, %hi(D_80124278) # $a0, 0x8012 +/* 0777AC 80076BAC 3C058012 */ lui $a1, %hi(D_80124238) # $a1, 0x8012 +/* 0777B0 80076BB0 24A54238 */ addiu $a1, %lo(D_80124238) # addiu $a1, $a1, 0x4238 +/* 0777B4 80076BB4 24844278 */ addiu $a0, %lo(D_80124278) # addiu $a0, $a0, 0x4278 +/* 0777B8 80076BB8 0C032208 */ jal osCreateMesgQueue +/* 0777BC 80076BBC 24060010 */ li $a2, 16 +/* 0777C0 80076BC0 3C048012 */ lui $a0, %hi(D_80124220) # $a0, 0x8012 +/* 0777C4 80076BC4 3C058012 */ lui $a1, %hi(D_80124218) # $a1, 0x8012 +/* 0777C8 80076BC8 24A54218 */ addiu $a1, %lo(D_80124218) # addiu $a1, $a1, 0x4218 +/* 0777CC 80076BCC 24844220 */ addiu $a0, %lo(D_80124220) # addiu $a0, $a0, 0x4220 +/* 0777D0 80076BD0 0C032208 */ jal osCreateMesgQueue +/* 0777D4 80076BD4 24060001 */ li $a2, 1 +/* 0777D8 80076BD8 3C058012 */ lui $a1, %hi(D_80124278) # $a1, 0x8012 +/* 0777DC 80076BDC 3C068012 */ lui $a2, %hi(D_80124238) # $a2, 0x8012 +/* 0777E0 80076BE0 24C64238 */ addiu $a2, %lo(D_80124238) # addiu $a2, $a2, 0x4238 +/* 0777E4 80076BE4 24A54278 */ addiu $a1, %lo(D_80124278) # addiu $a1, $a1, 0x4278 +/* 0777E8 80076BE8 24040096 */ li $a0, 150 +/* 0777EC 80076BEC 0C031800 */ jal func_800C6000 +/* 0777F0 80076BF0 24070010 */ li $a3, 16 +/* 0777F4 80076BF4 3C0E000F */ lui $t6, %hi(D_000ECC30) # $t6, 0xf +/* 0777F8 80076BF8 3C0F000F */ lui $t7, %hi(D_000ECB60) # $t7, 0xf +/* 0777FC 80076BFC 25EFCB60 */ addiu $t7, %lo(D_000ECB60) # addiu $t7, $t7, -0x34a0 +/* 077800 80076C00 25CECC30 */ addiu $t6, %lo(D_000ECC30) # addiu $t6, $t6, -0x33d0 +/* 077804 80076C04 01CF1023 */ subu $v0, $t6, $t7 +/* 077808 80076C08 3C057F7F */ lui $a1, (0x7F7F7FFF >> 16) # lui $a1, 0x7f7f +/* 07780C 80076C0C 34A57FFF */ ori $a1, (0x7F7F7FFF & 0xFFFF) # ori $a1, $a1, 0x7fff +/* 077810 80076C10 00402025 */ move $a0, $v0 +/* 077814 80076C14 0C01C327 */ jal func_80070C9C +/* 077818 80076C18 AFA20018 */ sw $v0, 0x18($sp) +/* 07781C 80076C1C 3C038012 */ lui $v1, %hi(D_80124290) # $v1, 0x8012 +/* 077820 80076C20 24634290 */ addiu $v1, %lo(D_80124290) # addiu $v1, $v1, 0x4290 +/* 077824 80076C24 AC620000 */ sw $v0, ($v1) +/* 077828 80076C28 0C01C51E */ jal func_80071478 +/* 07782C 80076C2C 00402025 */ move $a0, $v0 +/* 077830 80076C30 3C058012 */ lui $a1, %hi(D_80124290) # $a1, 0x8012 +/* 077834 80076C34 8CA54290 */ lw $a1, %lo(D_80124290)($a1) +/* 077838 80076C38 3C04000F */ lui $a0, %hi(D_000ECB60) # $a0, 0xf +/* 07783C 80076C3C 8FA60018 */ lw $a2, 0x18($sp) +/* 077840 80076C40 0C01DBDE */ jal func_80076F78 +/* 077844 80076C44 2484CB60 */ addiu $a0, %lo(D_000ECB60) # addiu $a0, $a0, -0x34a0 +/* 077848 80076C48 8FBF0014 */ lw $ra, 0x14($sp) +/* 07784C 80076C4C 27BD0020 */ addiu $sp, $sp, 0x20 +/* 077850 80076C50 03E00008 */ jr $ra +/* 077854 80076C54 00000000 */ nop + diff --git a/asm/non_matchings/unknown_072E50/func_80076C58.s b/asm/non_matchings/unknown_072E50/func_80076C58.s new file mode 100644 index 00000000..beecd549 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80076C58.s @@ -0,0 +1,144 @@ +glabel func_80076C58 +/* 077858 80076C58 3C038012 */ lui $v1, %hi(D_80124290) # $v1, 0x8012 +/* 07785C 80076C5C 8C634290 */ lw $v1, %lo(D_80124290)($v1) +/* 077860 80076C60 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 077864 80076C64 AFBF0014 */ sw $ra, 0x14($sp) +/* 077868 80076C68 8C6E0000 */ lw $t6, ($v1) +/* 07786C 80076C6C 00803025 */ move $a2, $a0 +/* 077870 80076C70 01C4082B */ sltu $at, $t6, $a0 +/* 077874 80076C74 10200003 */ beqz $at, .L80076C84 +/* 077878 80076C78 24C60001 */ addiu $a2, $a2, 1 +/* 07787C 80076C7C 10000018 */ b .L80076CE0 +/* 077880 80076C80 00001025 */ move $v0, $zero +.L80076C84: +/* 077884 80076C84 00067880 */ sll $t7, $a2, 2 +/* 077888 80076C88 01E31021 */ addu $v0, $t7, $v1 +/* 07788C 80076C8C 8C470000 */ lw $a3, ($v0) +/* 077890 80076C90 8C580004 */ lw $t8, 4($v0) +/* 077894 80076C94 3C057F7F */ lui $a1, (0x7F7F7FFF >> 16) # lui $a1, 0x7f7f +/* 077898 80076C98 03072023 */ subu $a0, $t8, $a3 +/* 07789C 80076C9C AFA4001C */ sw $a0, 0x1c($sp) +/* 0778A0 80076CA0 34A57FFF */ ori $a1, (0x7F7F7FFF & 0xFFFF) # ori $a1, $a1, 0x7fff +/* 0778A4 80076CA4 0C01C327 */ jal func_80070C9C +/* 0778A8 80076CA8 AFA70018 */ sw $a3, 0x18($sp) +/* 0778AC 80076CAC 8FA70018 */ lw $a3, 0x18($sp) +/* 0778B0 80076CB0 14400003 */ bnez $v0, .L80076CC0 +/* 0778B4 80076CB4 00402825 */ move $a1, $v0 +/* 0778B8 80076CB8 10000009 */ b .L80076CE0 +/* 0778BC 80076CBC 00001025 */ move $v0, $zero +.L80076CC0: +/* 0778C0 80076CC0 3C19000F */ lui $t9, %hi(D_000ECC30) # $t9, 0xf +/* 0778C4 80076CC4 2739CC30 */ addiu $t9, %lo(D_000ECC30) # addiu $t9, $t9, -0x33d0 +/* 0778C8 80076CC8 8FA6001C */ lw $a2, 0x1c($sp) +/* 0778CC 80076CCC 00F92021 */ addu $a0, $a3, $t9 +/* 0778D0 80076CD0 0C01DBDE */ jal func_80076F78 +/* 0778D4 80076CD4 AFA50020 */ sw $a1, 0x20($sp) +/* 0778D8 80076CD8 8FA20020 */ lw $v0, 0x20($sp) +/* 0778DC 80076CDC 00000000 */ nop +.L80076CE0: +/* 0778E0 80076CE0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0778E4 80076CE4 27BD0028 */ addiu $sp, $sp, 0x28 +/* 0778E8 80076CE8 03E00008 */ jr $ra +/* 0778EC 80076CEC 00000000 */ nop + +/* 0778F0 80076CF0 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0778F4 80076CF4 3C028012 */ lui $v0, %hi(D_80124290) # $v0, 0x8012 +/* 0778F8 80076CF8 8C424290 */ lw $v0, %lo(D_80124290)($v0) +/* 0778FC 80076CFC AFBF0014 */ sw $ra, 0x14($sp) +/* 077900 80076D00 AFA5003C */ sw $a1, 0x3c($sp) +/* 077904 80076D04 8C4E0000 */ lw $t6, ($v0) +/* 077908 80076D08 00803025 */ move $a2, $a0 +/* 07790C 80076D0C 01C4082B */ sltu $at, $t6, $a0 +/* 077910 80076D10 10200003 */ beqz $at, .L80076D20 +/* 077914 80076D14 24C60001 */ addiu $a2, $a2, 1 +/* 077918 80076D18 10000034 */ b .L80076DEC +/* 07791C 80076D1C 00001025 */ move $v0, $zero +.L80076D20: +/* 077920 80076D20 00067880 */ sll $t7, $a2, 2 +/* 077924 80076D24 01E23821 */ addu $a3, $t7, $v0 +/* 077928 80076D28 8CE30000 */ lw $v1, ($a3) +/* 07792C 80076D2C 8CF80004 */ lw $t8, 4($a3) +/* 077930 80076D30 24040008 */ li $a0, 8 +/* 077934 80076D34 0303C823 */ subu $t9, $t8, $v1 +/* 077938 80076D38 AFB90034 */ sw $t9, 0x34($sp) +/* 07793C 80076D3C 2405FFFF */ li $a1, -1 +/* 077940 80076D40 0C01C327 */ jal func_80070C9C +/* 077944 80076D44 AFA30030 */ sw $v1, 0x30($sp) +/* 077948 80076D48 8FA30030 */ lw $v1, 0x30($sp) +/* 07794C 80076D4C 3C08000F */ lui $t0, %hi(D_000ECC30) # $t0, 0xf +/* 077950 80076D50 2508CC30 */ addiu $t0, %lo(D_000ECC30) # addiu $t0, $t0, -0x33d0 +/* 077954 80076D54 00682021 */ addu $a0, $v1, $t0 +/* 077958 80076D58 AFA20028 */ sw $v0, 0x28($sp) +/* 07795C 80076D5C AFA40020 */ sw $a0, 0x20($sp) +/* 077960 80076D60 00402825 */ move $a1, $v0 +/* 077964 80076D64 0C01DBDE */ jal func_80076F78 +/* 077968 80076D68 24060008 */ li $a2, 8 +/* 07796C 80076D6C 8FA40028 */ lw $a0, 0x28($sp) +/* 077970 80076D70 0C03186B */ jal func_800C61AC +/* 077974 80076D74 00000000 */ nop +/* 077978 80076D78 8FA9003C */ lw $t1, 0x3c($sp) +/* 07797C 80076D7C 8FA40028 */ lw $a0, 0x28($sp) +/* 077980 80076D80 00495021 */ addu $t2, $v0, $t1 +/* 077984 80076D84 0C01C450 */ jal func_80071140 +/* 077988 80076D88 AFAA002C */ sw $t2, 0x2c($sp) +/* 07798C 80076D8C 8FAB002C */ lw $t3, 0x2c($sp) +/* 077990 80076D90 8FAC003C */ lw $t4, 0x3c($sp) +/* 077994 80076D94 3C057F7F */ lui $a1, (0x7F7F7FFF >> 16) # lui $a1, 0x7f7f +/* 077998 80076D98 34A57FFF */ ori $a1, (0x7F7F7FFF & 0xFFFF) # ori $a1, $a1, 0x7fff +/* 07799C 80076D9C 0C01C327 */ jal func_80070C9C +/* 0779A0 80076DA0 016C2021 */ addu $a0, $t3, $t4 +/* 0779A4 80076DA4 14400003 */ bnez $v0, .L80076DB4 +/* 0779A8 80076DA8 00403825 */ move $a3, $v0 +/* 0779AC 80076DAC 1000000F */ b .L80076DEC +/* 0779B0 80076DB0 00001025 */ move $v0, $zero +.L80076DB4: +/* 0779B4 80076DB4 8FAD002C */ lw $t5, 0x2c($sp) +/* 0779B8 80076DB8 8FA60034 */ lw $a2, 0x34($sp) +/* 0779BC 80076DBC 00ED7021 */ addu $t6, $a3, $t5 +/* 0779C0 80076DC0 8FA40020 */ lw $a0, 0x20($sp) +/* 0779C4 80076DC4 01C62823 */ subu $a1, $t6, $a2 +/* 0779C8 80076DC8 AFA5001C */ sw $a1, 0x1c($sp) +/* 0779CC 80076DCC 0C01DBDE */ jal func_80076F78 +/* 0779D0 80076DD0 AFA70024 */ sw $a3, 0x24($sp) +/* 0779D4 80076DD4 8FA50024 */ lw $a1, 0x24($sp) +/* 0779D8 80076DD8 8FA4001C */ lw $a0, 0x1c($sp) +/* 0779DC 80076DDC 0C031886 */ jal func_800C6218 +/* 0779E0 80076DE0 00000000 */ nop +/* 0779E4 80076DE4 8FA20024 */ lw $v0, 0x24($sp) +/* 0779E8 80076DE8 00000000 */ nop +.L80076DEC: +/* 0779EC 80076DEC 8FBF0014 */ lw $ra, 0x14($sp) +/* 0779F0 80076DF0 27BD0038 */ addiu $sp, $sp, 0x38 +/* 0779F4 80076DF4 03E00008 */ jr $ra +/* 0779F8 80076DF8 00000000 */ nop + +/* 0779FC 80076DFC 3C088012 */ lui $t0, %hi(D_80124290) # $t0, 0x8012 +/* 077A00 80076E00 8D084290 */ lw $t0, %lo(D_80124290)($t0) +/* 077A04 80076E04 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 077A08 80076E08 AFBF0014 */ sw $ra, 0x14($sp) +/* 077A0C 80076E0C 8D0E0000 */ lw $t6, ($t0) +/* 077A10 80076E10 00803825 */ move $a3, $a0 +/* 077A14 80076E14 01C4082B */ sltu $at, $t6, $a0 +/* 077A18 80076E18 10200003 */ beqz $at, .L80076E28 +/* 077A1C 80076E1C 24E70001 */ addiu $a3, $a3, 1 +/* 077A20 80076E20 1000000D */ b .L80076E58 +/* 077A24 80076E24 00001025 */ move $v0, $zero +.L80076E28: +/* 077A28 80076E28 00077880 */ sll $t7, $a3, 2 +/* 077A2C 80076E2C 01E81021 */ addu $v0, $t7, $t0 +/* 077A30 80076E30 8C430000 */ lw $v1, ($v0) +/* 077A34 80076E34 8C580004 */ lw $t8, 4($v0) +/* 077A38 80076E38 3C19000F */ lui $t9, %hi(D_000ECC30) # $t9, 0xf +/* 077A3C 80076E3C 2739CC30 */ addiu $t9, %lo(D_000ECC30) # addiu $t9, $t9, -0x33d0 +/* 077A40 80076E40 03033023 */ subu $a2, $t8, $v1 +/* 077A44 80076E44 AFA60018 */ sw $a2, 0x18($sp) +/* 077A48 80076E48 0C01DBDE */ jal func_80076F78 +/* 077A4C 80076E4C 00792021 */ addu $a0, $v1, $t9 +/* 077A50 80076E50 8FA20018 */ lw $v0, 0x18($sp) +/* 077A54 80076E54 00000000 */ nop +.L80076E58: +/* 077A58 80076E58 8FBF0014 */ lw $ra, 0x14($sp) +/* 077A5C 80076E5C 27BD0020 */ addiu $sp, $sp, 0x20 +/* 077A60 80076E60 03E00008 */ jr $ra +/* 077A64 80076E64 00000000 */ nop + diff --git a/asm/non_matchings/unknown_072E50/func_80076E68.s b/asm/non_matchings/unknown_072E50/func_80076E68.s new file mode 100644 index 00000000..e32c63de --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80076E68.s @@ -0,0 +1,37 @@ +glabel func_80076E68 +/* 077A68 80076E68 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 077A6C 80076E6C AFBF0014 */ sw $ra, 0x14($sp) +/* 077A70 80076E70 AFA40018 */ sw $a0, 0x18($sp) +/* 077A74 80076E74 10E00009 */ beqz $a3, .L80076E9C +/* 077A78 80076E78 AFA60020 */ sw $a2, 0x20($sp) +/* 077A7C 80076E7C 3C088012 */ lui $t0, %hi(D_80124290) # $t0, 0x8012 +/* 077A80 80076E80 8D084290 */ lw $t0, %lo(D_80124290)($t0) +/* 077A84 80076E84 8FB80018 */ lw $t8, 0x18($sp) +/* 077A88 80076E88 8D0E0000 */ lw $t6, ($t0) +/* 077A8C 80076E8C 27190001 */ addiu $t9, $t8, 1 +/* 077A90 80076E90 01C4082B */ sltu $at, $t6, $a0 +/* 077A94 80076E94 10200003 */ beqz $at, .L80076EA4 +/* 077A98 80076E98 00194880 */ sll $t1, $t9, 2 +.L80076E9C: +/* 077A9C 80076E9C 1000000E */ b .L80076ED8 +/* 077AA0 80076EA0 00001025 */ move $v0, $zero +.L80076EA4: +/* 077AA4 80076EA4 AFB90018 */ sw $t9, 0x18($sp) +/* 077AA8 80076EA8 01281021 */ addu $v0, $t1, $t0 +/* 077AAC 80076EAC 8C4A0000 */ lw $t2, ($v0) +/* 077AB0 80076EB0 8FAB0020 */ lw $t3, 0x20($sp) +/* 077AB4 80076EB4 3C0C000F */ lui $t4, %hi(D_000ECC30) # $t4, 0xf +/* 077AB8 80076EB8 258CCC30 */ addiu $t4, %lo(D_000ECC30) # addiu $t4, $t4, -0x33d0 +/* 077ABC 80076EBC 014B1821 */ addu $v1, $t2, $t3 +/* 077AC0 80076EC0 006C2021 */ addu $a0, $v1, $t4 +/* 077AC4 80076EC4 AFA70024 */ sw $a3, 0x24($sp) +/* 077AC8 80076EC8 0C01DBDE */ jal func_80076F78 +/* 077ACC 80076ECC 00E03025 */ move $a2, $a3 +/* 077AD0 80076ED0 8FA20024 */ lw $v0, 0x24($sp) +/* 077AD4 80076ED4 00000000 */ nop +.L80076ED8: +/* 077AD8 80076ED8 8FBF0014 */ lw $ra, 0x14($sp) +/* 077ADC 80076EDC 27BD0018 */ addiu $sp, $sp, 0x18 +/* 077AE0 80076EE0 03E00008 */ jr $ra +/* 077AE4 80076EE4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_072E50/func_80076EE8.s b/asm/non_matchings/unknown_072E50/func_80076EE8.s new file mode 100644 index 00000000..3cf99b52 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80076EE8.s @@ -0,0 +1,22 @@ +glabel func_80076EE8 +/* 077AE8 80076EE8 3C038012 */ lui $v1, %hi(D_80124290) # $v1, 0x8012 +/* 077AEC 80076EEC 8C634290 */ lw $v1, %lo(D_80124290)($v1) +/* 077AF0 80076EF0 00A03825 */ move $a3, $a1 +/* 077AF4 80076EF4 8C6E0000 */ lw $t6, ($v1) +/* 077AF8 80076EF8 3C19000F */ lui $t9, 0xf +/* 077AFC 80076EFC 01C4082B */ sltu $at, $t6, $a0 +/* 077B00 80076F00 10200003 */ beqz $at, .L80076F10 +/* 077B04 80076F04 24840001 */ addiu $a0, $a0, 1 +/* 077B08 80076F08 03E00008 */ jr $ra +/* 077B0C 80076F0C 00001025 */ move $v0, $zero + +.L80076F10: +/* 077B10 80076F10 00047880 */ sll $t7, $a0, 2 +/* 077B14 80076F14 01E32821 */ addu $a1, $t7, $v1 +/* 077B18 80076F18 8CB80000 */ lw $t8, ($a1) +/* 077B1C 80076F1C 2739CC30 */ addiu $t9, $t9, -0x33d0 +/* 077B20 80076F20 03073021 */ addu $a2, $t8, $a3 +/* 077B24 80076F24 00D91021 */ addu $v0, $a2, $t9 +/* 077B28 80076F28 03E00008 */ jr $ra +/* 077B2C 80076F2C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_072E50/func_80076F30.s b/asm/non_matchings/unknown_072E50/func_80076F30.s new file mode 100644 index 00000000..3820fae5 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80076F30.s @@ -0,0 +1,22 @@ +glabel func_80076F30 +/* 077B30 80076F30 3C038012 */ lui $v1, %hi(D_80124290) # $v1, 0x8012 +/* 077B34 80076F34 8C634290 */ lw $v1, %lo(D_80124290)($v1) +/* 077B38 80076F38 00000000 */ nop +/* 077B3C 80076F3C 8C6E0000 */ lw $t6, ($v1) +/* 077B40 80076F40 00000000 */ nop +/* 077B44 80076F44 01C4082B */ sltu $at, $t6, $a0 +/* 077B48 80076F48 10200003 */ beqz $at, .L80076F58 +/* 077B4C 80076F4C 24840001 */ addiu $a0, $a0, 1 +/* 077B50 80076F50 03E00008 */ jr $ra +/* 077B54 80076F54 00001025 */ move $v0, $zero + +.L80076F58: +/* 077B58 80076F58 00047880 */ sll $t7, $a0, 2 +/* 077B5C 80076F5C 01E32821 */ addu $a1, $t7, $v1 +/* 077B60 80076F60 8CB80004 */ lw $t8, 4($a1) +/* 077B64 80076F64 8CB90000 */ lw $t9, ($a1) +/* 077B68 80076F68 00000000 */ nop +/* 077B6C 80076F6C 03191023 */ subu $v0, $t8, $t9 +/* 077B70 80076F70 03E00008 */ jr $ra +/* 077B74 80076F74 00000000 */ nop + diff --git a/asm/non_matchings/unknown_072E50/func_80076F78.s b/asm/non_matchings/unknown_072E50/func_80076F78.s new file mode 100644 index 00000000..490466e2 --- /dev/null +++ b/asm/non_matchings/unknown_072E50/func_80076F78.s @@ -0,0 +1,60 @@ +glabel func_80076F78 +/* 077B78 80076F78 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 077B7C 80076F7C AFB30034 */ sw $s3, 0x34($sp) +/* 077B80 80076F80 00809825 */ move $s3, $a0 +/* 077B84 80076F84 AFB20030 */ sw $s2, 0x30($sp) +/* 077B88 80076F88 00A09025 */ move $s2, $a1 +/* 077B8C 80076F8C AFBF0044 */ sw $ra, 0x44($sp) +/* 077B90 80076F90 AFB1002C */ sw $s1, 0x2c($sp) +/* 077B94 80076F94 00A02025 */ move $a0, $a1 +/* 077B98 80076F98 00C08825 */ move $s1, $a2 +/* 077B9C 80076F9C AFB60040 */ sw $s6, 0x40($sp) +/* 077BA0 80076FA0 AFB5003C */ sw $s5, 0x3c($sp) +/* 077BA4 80076FA4 AFB40038 */ sw $s4, 0x38($sp) +/* 077BA8 80076FA8 AFB00028 */ sw $s0, 0x28($sp) +/* 077BAC 80076FAC 0C0345FC */ jal func_800D17F0 +/* 077BB0 80076FB0 00C02825 */ move $a1, $a2 +/* 077BB4 80076FB4 1A200019 */ blez $s1, .L8007701C +/* 077BB8 80076FB8 24105000 */ li $s0, 20480 +/* 077BBC 80076FBC 3C158012 */ lui $s5, %hi(D_80124200) # $s5, 0x8012 +/* 077BC0 80076FC0 3C148012 */ lui $s4, %hi(D_80124220) # $s4, 0x8012 +/* 077BC4 80076FC4 26944220 */ addiu $s4, %lo(D_80124220) # addiu $s4, $s4, 0x4220 +/* 077BC8 80076FC8 26B54200 */ addiu $s5, %lo(D_80124200) # addiu $s5, $s5, 0x4200 +/* 077BCC 80076FCC 27B6004C */ addiu $s6, $sp, 0x4c +.L80076FD0: +/* 077BD0 80076FD0 0230082A */ slt $at, $s1, $s0 +/* 077BD4 80076FD4 10200002 */ beqz $at, .L80076FE0 +/* 077BD8 80076FD8 02A02025 */ move $a0, $s5 +/* 077BDC 80076FDC 02208025 */ move $s0, $s1 +.L80076FE0: +/* 077BE0 80076FE0 00002825 */ move $a1, $zero +/* 077BE4 80076FE4 00003025 */ move $a2, $zero +/* 077BE8 80076FE8 02603825 */ move $a3, $s3 +/* 077BEC 80076FEC AFB20010 */ sw $s2, 0x10($sp) +/* 077BF0 80076FF0 AFB00014 */ sw $s0, 0x14($sp) +/* 077BF4 80076FF4 0C0323E0 */ jal func_800C8F80 +/* 077BF8 80076FF8 AFB40018 */ sw $s4, 0x18($sp) +/* 077BFC 80076FFC 02802025 */ move $a0, $s4 +/* 077C00 80077000 02C02825 */ move $a1, $s6 +/* 077C04 80077004 0C0322EC */ jal osRecvMesg +/* 077C08 80077008 24060001 */ li $a2, 1 +/* 077C0C 8007700C 02308823 */ subu $s1, $s1, $s0 +/* 077C10 80077010 02709821 */ addu $s3, $s3, $s0 +/* 077C14 80077014 1E20FFEE */ bgtz $s1, .L80076FD0 +/* 077C18 80077018 02509021 */ addu $s2, $s2, $s0 +.L8007701C: +/* 077C1C 8007701C 8FBF0044 */ lw $ra, 0x44($sp) +/* 077C20 80077020 8FB00028 */ lw $s0, 0x28($sp) +/* 077C24 80077024 8FB1002C */ lw $s1, 0x2c($sp) +/* 077C28 80077028 8FB20030 */ lw $s2, 0x30($sp) +/* 077C2C 8007702C 8FB30034 */ lw $s3, 0x34($sp) +/* 077C30 80077030 8FB40038 */ lw $s4, 0x38($sp) +/* 077C34 80077034 8FB5003C */ lw $s5, 0x3c($sp) +/* 077C38 80077038 8FB60040 */ lw $s6, 0x40($sp) +/* 077C3C 8007703C 03E00008 */ jr $ra +/* 077C40 80077040 27BD0050 */ addiu $sp, $sp, 0x50 + +/* 077C44 80077044 00000000 */ nop +/* 077C48 80077048 00000000 */ nop +/* 077C4C 8007704C 00000000 */ nop + diff --git a/asm/unknown_077C50.s b/asm/non_matchings/unknown_077C50/func_80077050.s old mode 100755 new mode 100644 similarity index 50% rename from asm/unknown_077C50.s rename to asm/non_matchings/unknown_077C50/func_80077050.s index 6d82e053..0d124511 --- a/asm/unknown_077C50.s +++ b/asm/non_matchings/unknown_077C50/func_80077050.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_80077050 /* 077C50 80077050 27BDFFC0 */ addiu $sp, $sp, -0x40 /* 077C54 80077054 AFBF001C */ sw $ra, 0x1c($sp) @@ -148,131 +140,3 @@ glabel func_80077050 /* 077E60 80077260 03E00008 */ jr $ra /* 077E64 80077264 27BD0040 */ addiu $sp, $sp, 0x40 -glabel func_80077268 -/* 077E68 80077268 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 077E6C 8007726C AFBF0014 */ sw $ra, 0x14($sp) -/* 077E70 80077270 0C01E948 */ jal func_8007A520 -/* 077E74 80077274 AFA40030 */ sw $a0, 0x30($sp) -/* 077E78 80077278 8FA40030 */ lw $a0, 0x30($sp) -/* 077E7C 8007727C 00022C02 */ srl $a1, $v0, 0x10 -/* 077E80 80077280 8C830000 */ lw $v1, ($a0) -/* 077E84 80077284 000571C2 */ srl $t6, $a1, 7 -/* 077E88 80077288 000E5080 */ sll $t2, $t6, 2 -/* 077E8C 8007728C 246E0008 */ addiu $t6, $v1, 8 -/* 077E90 80077290 3C0FBA00 */ lui $t7, (0xBA001402 >> 16) # lui $t7, 0xba00 -/* 077E94 80077294 AC8E0000 */ sw $t6, ($a0) -/* 077E98 80077298 35EF1402 */ ori $t7, (0xBA001402 & 0xFFFF) # ori $t7, $t7, 0x1402 -/* 077E9C 8007729C 3046FFFF */ andi $a2, $v0, 0xffff -/* 077EA0 800772A0 AC6F0000 */ sw $t7, ($v1) -/* 077EA4 800772A4 AC600004 */ sw $zero, 4($v1) -/* 077EA8 800772A8 8C830000 */ lw $v1, ($a0) -/* 077EAC 800772AC 0006C202 */ srl $t8, $a2, 8 -/* 077EB0 800772B0 0018F880 */ sll $ra, $t8, 2 -/* 077EB4 800772B4 24780008 */ addiu $t8, $v1, 8 -/* 077EB8 800772B8 3C0EFFFD */ lui $t6, (0xFFFDF6FB >> 16) # lui $t6, 0xfffd -/* 077EBC 800772BC 3C19FCFF */ lui $t9, (0xFCFFFFFF >> 16) # lui $t9, 0xfcff -/* 077EC0 800772C0 AC980000 */ sw $t8, ($a0) -/* 077EC4 800772C4 3739FFFF */ ori $t9, (0xFCFFFFFF & 0xFFFF) # ori $t9, $t9, 0xffff -/* 077EC8 800772C8 35CEF6FB */ ori $t6, (0xFFFDF6FB & 0xFFFF) # ori $t6, $t6, 0xf6fb -/* 077ECC 800772CC AC6E0004 */ sw $t6, 4($v1) -/* 077ED0 800772D0 AC790000 */ sw $t9, ($v1) -/* 077ED4 800772D4 8C830000 */ lw $v1, ($a0) -/* 077ED8 800772D8 3C190050 */ lui $t9, (0x00504240 >> 16) # lui $t9, 0x50 -/* 077EDC 800772DC 246F0008 */ addiu $t7, $v1, 8 -/* 077EE0 800772E0 3C18B900 */ lui $t8, (0xB900031D >> 16) # lui $t8, 0xb900 -/* 077EE4 800772E4 AC8F0000 */ sw $t7, ($a0) -/* 077EE8 800772E8 3718031D */ ori $t8, (0xB900031D & 0xFFFF) # ori $t8, $t8, 0x31d -/* 077EEC 800772EC 37394240 */ ori $t9, (0x00504240 & 0xFFFF) # ori $t9, $t9, 0x4240 -/* 077EF0 800772F0 AC790004 */ sw $t9, 4($v1) -/* 077EF4 800772F4 AC780000 */ sw $t8, ($v1) -/* 077EF8 800772F8 8C830000 */ lw $v1, ($a0) -/* 077EFC 800772FC 3C0FFA00 */ lui $t7, 0xfa00 -/* 077F00 80077300 246E0008 */ addiu $t6, $v1, 8 -/* 077F04 80077304 AC8E0000 */ sw $t6, ($a0) -/* 077F08 80077308 AC600004 */ sw $zero, 4($v1) -/* 077F0C 8007730C AC6F0000 */ sw $t7, ($v1) -/* 077F10 80077310 AFBF001C */ sw $ra, 0x1c($sp) -/* 077F14 80077314 AFA60028 */ sw $a2, 0x28($sp) -/* 077F18 80077318 AFA50024 */ sw $a1, 0x24($sp) -/* 077F1C 8007731C AFAA0020 */ sw $t2, 0x20($sp) -/* 077F20 80077320 0C019884 */ jal func_80066210 -/* 077F24 80077324 AFA40030 */ sw $a0, 0x30($sp) -/* 077F28 80077328 8FA40030 */ lw $a0, 0x30($sp) -/* 077F2C 8007732C 8FAA0020 */ lw $t2, 0x20($sp) -/* 077F30 80077330 8FAC0024 */ lw $t4, 0x24($sp) -/* 077F34 80077334 8FAD0028 */ lw $t5, 0x28($sp) -/* 077F38 80077338 8FBF001C */ lw $ra, 0x1c($sp) -/* 077F3C 8007733C 24010001 */ li $at, 1 -/* 077F40 80077340 10410009 */ beq $v0, $at, .L80077368 -/* 077F44 80077344 3C08F600 */ lui $t0, 0xf600 -/* 077F48 80077348 24010002 */ li $at, 2 -/* 077F4C 8007734C 10410018 */ beq $v0, $at, .L800773B0 -/* 077F50 80077350 3C08F600 */ lui $t0, 0xf600 -/* 077F54 80077354 24010003 */ li $at, 3 -/* 077F58 80077358 10410015 */ beq $v0, $at, .L800773B0 -/* 077F5C 8007735C 00000000 */ nop -/* 077F60 80077360 10000036 */ b .L8007743C -/* 077F64 80077364 8FBF0014 */ lw $ra, 0x14($sp) -.L80077368: -/* 077F68 80077368 8C830000 */ lw $v1, ($a0) -/* 077F6C 8007736C 000CC842 */ srl $t9, $t4, 1 -/* 077F70 80077370 24780008 */ addiu $t8, $v1, 8 -/* 077F74 80077374 AC980000 */ sw $t8, ($a0) -/* 077F78 80077378 000A7042 */ srl $t6, $t2, 1 -/* 077F7C 8007737C 31AF03FF */ andi $t7, $t5, 0x3ff -/* 077F80 80077380 000FC380 */ sll $t8, $t7, 0xe -/* 077F84 80077384 032E1023 */ subu $v0, $t9, $t6 -/* 077F88 80077388 004A7021 */ addu $t6, $v0, $t2 -/* 077F8C 8007738C 31CF03FF */ andi $t7, $t6, 0x3ff -/* 077F90 80077390 0308C825 */ or $t9, $t8, $t0 -/* 077F94 80077394 000FC080 */ sll $t8, $t7, 2 -/* 077F98 80077398 03387025 */ or $t6, $t9, $t8 -/* 077F9C 8007739C 304F03FF */ andi $t7, $v0, 0x3ff -/* 077FA0 800773A0 000FC880 */ sll $t9, $t7, 2 -/* 077FA4 800773A4 AC790004 */ sw $t9, 4($v1) -/* 077FA8 800773A8 10000023 */ b .L80077438 -/* 077FAC 800773AC AC6E0000 */ sw $t6, ($v1) -.L800773B0: -/* 077FB0 800773B0 8C830000 */ lw $v1, ($a0) -/* 077FB4 800773B4 000C7042 */ srl $t6, $t4, 1 -/* 077FB8 800773B8 24780008 */ addiu $t8, $v1, 8 -/* 077FBC 800773BC AC980000 */ sw $t8, ($a0) -/* 077FC0 800773C0 000A7842 */ srl $t7, $t2, 1 -/* 077FC4 800773C4 31B903FF */ andi $t9, $t5, 0x3ff -/* 077FC8 800773C8 0019C380 */ sll $t8, $t9, 0xe -/* 077FCC 800773CC 01CF1023 */ subu $v0, $t6, $t7 -/* 077FD0 800773D0 004A7821 */ addu $t7, $v0, $t2 -/* 077FD4 800773D4 31F903FF */ andi $t9, $t7, 0x3ff -/* 077FD8 800773D8 03087025 */ or $t6, $t8, $t0 -/* 077FDC 800773DC 0019C080 */ sll $t8, $t9, 2 -/* 077FE0 800773E0 01D87825 */ or $t7, $t6, $t8 -/* 077FE4 800773E4 305903FF */ andi $t9, $v0, 0x3ff -/* 077FE8 800773E8 00197080 */ sll $t6, $t9, 2 -/* 077FEC 800773EC AC6E0004 */ sw $t6, 4($v1) -/* 077FF0 800773F0 AC6F0000 */ sw $t7, ($v1) -/* 077FF4 800773F4 8C830000 */ lw $v1, ($a0) -/* 077FF8 800773F8 000D7842 */ srl $t7, $t5, 1 -/* 077FFC 800773FC 001FC842 */ srl $t9, $ra, 1 -/* 078000 80077400 01F93023 */ subu $a2, $t7, $t9 -/* 078004 80077404 24780008 */ addiu $t8, $v1, 8 -/* 078008 80077408 AC980000 */ sw $t8, ($a0) -/* 07800C 8007740C 00DF7021 */ addu $t6, $a2, $ra -/* 078010 80077410 31D803FF */ andi $t8, $t6, 0x3ff -/* 078014 80077414 00187B80 */ sll $t7, $t8, 0xe -/* 078018 80077418 318E03FF */ andi $t6, $t4, 0x3ff -/* 07801C 8007741C 000EC080 */ sll $t8, $t6, 2 -/* 078020 80077420 01E8C825 */ or $t9, $t7, $t0 -/* 078024 80077424 03387825 */ or $t7, $t9, $t8 -/* 078028 80077428 30CE03FF */ andi $t6, $a2, 0x3ff -/* 07802C 8007742C 000ECB80 */ sll $t9, $t6, 0xe -/* 078030 80077430 AC790004 */ sw $t9, 4($v1) -/* 078034 80077434 AC6F0000 */ sw $t7, ($v1) -.L80077438: -/* 078038 80077438 8FBF0014 */ lw $ra, 0x14($sp) -.L8007743C: -/* 07803C 8007743C 27BD0030 */ addiu $sp, $sp, 0x30 -/* 078040 80077440 03E00008 */ jr $ra -/* 078044 80077444 00000000 */ nop - -/* 078048 80077448 00000000 */ nop -/* 07804C 8007744C 00000000 */ nop diff --git a/asm/non_matchings/unknown_077C50/func_80077268.s b/asm/non_matchings/unknown_077C50/func_80077268.s new file mode 100644 index 00000000..f6c48b3c --- /dev/null +++ b/asm/non_matchings/unknown_077C50/func_80077268.s @@ -0,0 +1,129 @@ +glabel func_80077268 +/* 077E68 80077268 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 077E6C 8007726C AFBF0014 */ sw $ra, 0x14($sp) +/* 077E70 80077270 0C01E948 */ jal func_8007A520 +/* 077E74 80077274 AFA40030 */ sw $a0, 0x30($sp) +/* 077E78 80077278 8FA40030 */ lw $a0, 0x30($sp) +/* 077E7C 8007727C 00022C02 */ srl $a1, $v0, 0x10 +/* 077E80 80077280 8C830000 */ lw $v1, ($a0) +/* 077E84 80077284 000571C2 */ srl $t6, $a1, 7 +/* 077E88 80077288 000E5080 */ sll $t2, $t6, 2 +/* 077E8C 8007728C 246E0008 */ addiu $t6, $v1, 8 +/* 077E90 80077290 3C0FBA00 */ lui $t7, (0xBA001402 >> 16) # lui $t7, 0xba00 +/* 077E94 80077294 AC8E0000 */ sw $t6, ($a0) +/* 077E98 80077298 35EF1402 */ ori $t7, (0xBA001402 & 0xFFFF) # ori $t7, $t7, 0x1402 +/* 077E9C 8007729C 3046FFFF */ andi $a2, $v0, 0xffff +/* 077EA0 800772A0 AC6F0000 */ sw $t7, ($v1) +/* 077EA4 800772A4 AC600004 */ sw $zero, 4($v1) +/* 077EA8 800772A8 8C830000 */ lw $v1, ($a0) +/* 077EAC 800772AC 0006C202 */ srl $t8, $a2, 8 +/* 077EB0 800772B0 0018F880 */ sll $ra, $t8, 2 +/* 077EB4 800772B4 24780008 */ addiu $t8, $v1, 8 +/* 077EB8 800772B8 3C0EFFFD */ lui $t6, (0xFFFDF6FB >> 16) # lui $t6, 0xfffd +/* 077EBC 800772BC 3C19FCFF */ lui $t9, (0xFCFFFFFF >> 16) # lui $t9, 0xfcff +/* 077EC0 800772C0 AC980000 */ sw $t8, ($a0) +/* 077EC4 800772C4 3739FFFF */ ori $t9, (0xFCFFFFFF & 0xFFFF) # ori $t9, $t9, 0xffff +/* 077EC8 800772C8 35CEF6FB */ ori $t6, (0xFFFDF6FB & 0xFFFF) # ori $t6, $t6, 0xf6fb +/* 077ECC 800772CC AC6E0004 */ sw $t6, 4($v1) +/* 077ED0 800772D0 AC790000 */ sw $t9, ($v1) +/* 077ED4 800772D4 8C830000 */ lw $v1, ($a0) +/* 077ED8 800772D8 3C190050 */ lui $t9, (0x00504240 >> 16) # lui $t9, 0x50 +/* 077EDC 800772DC 246F0008 */ addiu $t7, $v1, 8 +/* 077EE0 800772E0 3C18B900 */ lui $t8, (0xB900031D >> 16) # lui $t8, 0xb900 +/* 077EE4 800772E4 AC8F0000 */ sw $t7, ($a0) +/* 077EE8 800772E8 3718031D */ ori $t8, (0xB900031D & 0xFFFF) # ori $t8, $t8, 0x31d +/* 077EEC 800772EC 37394240 */ ori $t9, (0x00504240 & 0xFFFF) # ori $t9, $t9, 0x4240 +/* 077EF0 800772F0 AC790004 */ sw $t9, 4($v1) +/* 077EF4 800772F4 AC780000 */ sw $t8, ($v1) +/* 077EF8 800772F8 8C830000 */ lw $v1, ($a0) +/* 077EFC 800772FC 3C0FFA00 */ lui $t7, 0xfa00 +/* 077F00 80077300 246E0008 */ addiu $t6, $v1, 8 +/* 077F04 80077304 AC8E0000 */ sw $t6, ($a0) +/* 077F08 80077308 AC600004 */ sw $zero, 4($v1) +/* 077F0C 8007730C AC6F0000 */ sw $t7, ($v1) +/* 077F10 80077310 AFBF001C */ sw $ra, 0x1c($sp) +/* 077F14 80077314 AFA60028 */ sw $a2, 0x28($sp) +/* 077F18 80077318 AFA50024 */ sw $a1, 0x24($sp) +/* 077F1C 8007731C AFAA0020 */ sw $t2, 0x20($sp) +/* 077F20 80077320 0C019884 */ jal func_80066210 +/* 077F24 80077324 AFA40030 */ sw $a0, 0x30($sp) +/* 077F28 80077328 8FA40030 */ lw $a0, 0x30($sp) +/* 077F2C 8007732C 8FAA0020 */ lw $t2, 0x20($sp) +/* 077F30 80077330 8FAC0024 */ lw $t4, 0x24($sp) +/* 077F34 80077334 8FAD0028 */ lw $t5, 0x28($sp) +/* 077F38 80077338 8FBF001C */ lw $ra, 0x1c($sp) +/* 077F3C 8007733C 24010001 */ li $at, 1 +/* 077F40 80077340 10410009 */ beq $v0, $at, .L80077368 +/* 077F44 80077344 3C08F600 */ lui $t0, 0xf600 +/* 077F48 80077348 24010002 */ li $at, 2 +/* 077F4C 8007734C 10410018 */ beq $v0, $at, .L800773B0 +/* 077F50 80077350 3C08F600 */ lui $t0, 0xf600 +/* 077F54 80077354 24010003 */ li $at, 3 +/* 077F58 80077358 10410015 */ beq $v0, $at, .L800773B0 +/* 077F5C 8007735C 00000000 */ nop +/* 077F60 80077360 10000036 */ b .L8007743C +/* 077F64 80077364 8FBF0014 */ lw $ra, 0x14($sp) +.L80077368: +/* 077F68 80077368 8C830000 */ lw $v1, ($a0) +/* 077F6C 8007736C 000CC842 */ srl $t9, $t4, 1 +/* 077F70 80077370 24780008 */ addiu $t8, $v1, 8 +/* 077F74 80077374 AC980000 */ sw $t8, ($a0) +/* 077F78 80077378 000A7042 */ srl $t6, $t2, 1 +/* 077F7C 8007737C 31AF03FF */ andi $t7, $t5, 0x3ff +/* 077F80 80077380 000FC380 */ sll $t8, $t7, 0xe +/* 077F84 80077384 032E1023 */ subu $v0, $t9, $t6 +/* 077F88 80077388 004A7021 */ addu $t6, $v0, $t2 +/* 077F8C 8007738C 31CF03FF */ andi $t7, $t6, 0x3ff +/* 077F90 80077390 0308C825 */ or $t9, $t8, $t0 +/* 077F94 80077394 000FC080 */ sll $t8, $t7, 2 +/* 077F98 80077398 03387025 */ or $t6, $t9, $t8 +/* 077F9C 8007739C 304F03FF */ andi $t7, $v0, 0x3ff +/* 077FA0 800773A0 000FC880 */ sll $t9, $t7, 2 +/* 077FA4 800773A4 AC790004 */ sw $t9, 4($v1) +/* 077FA8 800773A8 10000023 */ b .L80077438 +/* 077FAC 800773AC AC6E0000 */ sw $t6, ($v1) +.L800773B0: +/* 077FB0 800773B0 8C830000 */ lw $v1, ($a0) +/* 077FB4 800773B4 000C7042 */ srl $t6, $t4, 1 +/* 077FB8 800773B8 24780008 */ addiu $t8, $v1, 8 +/* 077FBC 800773BC AC980000 */ sw $t8, ($a0) +/* 077FC0 800773C0 000A7842 */ srl $t7, $t2, 1 +/* 077FC4 800773C4 31B903FF */ andi $t9, $t5, 0x3ff +/* 077FC8 800773C8 0019C380 */ sll $t8, $t9, 0xe +/* 077FCC 800773CC 01CF1023 */ subu $v0, $t6, $t7 +/* 077FD0 800773D0 004A7821 */ addu $t7, $v0, $t2 +/* 077FD4 800773D4 31F903FF */ andi $t9, $t7, 0x3ff +/* 077FD8 800773D8 03087025 */ or $t6, $t8, $t0 +/* 077FDC 800773DC 0019C080 */ sll $t8, $t9, 2 +/* 077FE0 800773E0 01D87825 */ or $t7, $t6, $t8 +/* 077FE4 800773E4 305903FF */ andi $t9, $v0, 0x3ff +/* 077FE8 800773E8 00197080 */ sll $t6, $t9, 2 +/* 077FEC 800773EC AC6E0004 */ sw $t6, 4($v1) +/* 077FF0 800773F0 AC6F0000 */ sw $t7, ($v1) +/* 077FF4 800773F4 8C830000 */ lw $v1, ($a0) +/* 077FF8 800773F8 000D7842 */ srl $t7, $t5, 1 +/* 077FFC 800773FC 001FC842 */ srl $t9, $ra, 1 +/* 078000 80077400 01F93023 */ subu $a2, $t7, $t9 +/* 078004 80077404 24780008 */ addiu $t8, $v1, 8 +/* 078008 80077408 AC980000 */ sw $t8, ($a0) +/* 07800C 8007740C 00DF7021 */ addu $t6, $a2, $ra +/* 078010 80077410 31D803FF */ andi $t8, $t6, 0x3ff +/* 078014 80077414 00187B80 */ sll $t7, $t8, 0xe +/* 078018 80077418 318E03FF */ andi $t6, $t4, 0x3ff +/* 07801C 8007741C 000EC080 */ sll $t8, $t6, 2 +/* 078020 80077420 01E8C825 */ or $t9, $t7, $t0 +/* 078024 80077424 03387825 */ or $t7, $t9, $t8 +/* 078028 80077428 30CE03FF */ andi $t6, $a2, 0x3ff +/* 07802C 8007742C 000ECB80 */ sll $t9, $t6, 0xe +/* 078030 80077430 AC790004 */ sw $t9, 4($v1) +/* 078034 80077434 AC6F0000 */ sw $t7, ($v1) +.L80077438: +/* 078038 80077438 8FBF0014 */ lw $ra, 0x14($sp) +.L8007743C: +/* 07803C 8007743C 27BD0030 */ addiu $sp, $sp, 0x30 +/* 078040 80077440 03E00008 */ jr $ra +/* 078044 80077444 00000000 */ nop + +/* 078048 80077448 00000000 */ nop +/* 07804C 8007744C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_078050/func_80077A54.s b/asm/non_matchings/unknown_078050/func_80077A54.s new file mode 100644 index 00000000..7f100ef1 --- /dev/null +++ b/asm/non_matchings/unknown_078050/func_80077A54.s @@ -0,0 +1,65 @@ +glabel func_80077A54 +/* 078654 80077A54 3C0E800E */ lui $t6, %hi(D_800DE4DC) # $t6, 0x800e +/* 078658 80077A58 8DCEE4DC */ lw $t6, %lo(D_800DE4DC)($t6) +/* 07865C 80077A5C 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 078660 80077A60 AFBF0014 */ sw $ra, 0x14($sp) +/* 078664 80077A64 15C00003 */ bnez $t6, .L80077A74 +/* 078668 80077A68 AFA0001C */ sw $zero, 0x1c($sp) +/* 07866C 80077A6C 1000000B */ b .L80077A9C +/* 078670 80077A70 00001025 */ move $v0, $zero +.L80077A74: +/* 078674 80077A74 3C048012 */ lui $a0, %hi(D_80125ED8) # $a0, 0x8012 +/* 078678 80077A78 24845ED8 */ addiu $a0, %lo(D_80125ED8) # addiu $a0, $a0, 0x5ed8 +/* 07867C 80077A7C 27A5001C */ addiu $a1, $sp, 0x1c +/* 078680 80077A80 0C0322EC */ jal osRecvMesg +/* 078684 80077A84 24060001 */ li $a2, 1 +/* 078688 80077A88 8FAF001C */ lw $t7, 0x1c($sp) +/* 07868C 80077A8C 3C01800E */ lui $at, %hi(D_800DE4DC) # $at, 0x800e +/* 078690 80077A90 AC20E4DC */ sw $zero, %lo(D_800DE4DC)($at) +/* 078694 80077A94 8DE20004 */ lw $v0, 4($t7) +/* 078698 80077A98 00000000 */ nop +.L80077A9C: +/* 07869C 80077A9C 8FBF0014 */ lw $ra, 0x14($sp) +/* 0786A0 80077AA0 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0786A4 80077AA4 03E00008 */ jr $ra +/* 0786A8 80077AA8 00000000 */ nop + +/* 0786AC 80077AAC 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0786B0 80077AB0 AFBF0014 */ sw $ra, 0x14($sp) +/* 0786B4 80077AB4 AFA40018 */ sw $a0, 0x18($sp) +/* 0786B8 80077AB8 AFA5001C */ sw $a1, 0x1c($sp) +/* 0786BC 80077ABC 0C034628 */ jal func_800D18A0 +/* 0786C0 80077AC0 AFA60020 */ sw $a2, 0x20($sp) +/* 0786C4 80077AC4 0C034634 */ jal func_800D18D0 +/* 0786C8 80077AC8 00000000 */ nop +/* 0786CC 80077ACC 304E0100 */ andi $t6, $v0, 0x100 +/* 0786D0 80077AD0 11C00007 */ beqz $t6, .L80077AF0 +/* 0786D4 80077AD4 8FA7001C */ lw $a3, 0x1c($sp) +.L80077AD8: +/* 0786D8 80077AD8 0C034634 */ jal func_800D18D0 +/* 0786DC 80077ADC 00000000 */ nop +/* 0786E0 80077AE0 304F0100 */ andi $t7, $v0, 0x100 +/* 0786E4 80077AE4 15E0FFFC */ bnez $t7, .L80077AD8 +/* 0786E8 80077AE8 00000000 */ nop +/* 0786EC 80077AEC 8FA7001C */ lw $a3, 0x1c($sp) +.L80077AF0: +/* 0786F0 80077AF0 8FA40018 */ lw $a0, 0x18($sp) +/* 0786F4 80077AF4 0C034638 */ jal func_800D18E0 +/* 0786F8 80077AF8 000737C3 */ sra $a2, $a3, 0x1f +/* 0786FC 80077AFC 0C034634 */ jal func_800D18D0 +/* 078700 80077B00 00000000 */ nop +/* 078704 80077B04 30590100 */ andi $t9, $v0, 0x100 +/* 078708 80077B08 13200007 */ beqz $t9, .L80077B28 +/* 07870C 80077B0C 8FBF0014 */ lw $ra, 0x14($sp) +.L80077B10: +/* 078710 80077B10 0C034634 */ jal func_800D18D0 +/* 078714 80077B14 00000000 */ nop +/* 078718 80077B18 30480100 */ andi $t0, $v0, 0x100 +/* 07871C 80077B1C 1500FFFC */ bnez $t0, .L80077B10 +/* 078720 80077B20 00000000 */ nop +/* 078724 80077B24 8FBF0014 */ lw $ra, 0x14($sp) +.L80077B28: +/* 078728 80077B28 27BD0018 */ addiu $sp, $sp, 0x18 +/* 07872C 80077B2C 03E00008 */ jr $ra +/* 078730 80077B30 00000000 */ nop + diff --git a/asm/non_matchings/unknown_078050/func_80077B34.s b/asm/non_matchings/unknown_078050/func_80077B34.s new file mode 100644 index 00000000..133d2aac --- /dev/null +++ b/asm/non_matchings/unknown_078050/func_80077B34.s @@ -0,0 +1,12 @@ +glabel func_80077B34 +/* 078734 80077B34 3C01800E */ lui $at, %hi(D_800DE4B0) # $at, 0x800e +/* 078738 80077B38 A024E4B0 */ sb $a0, %lo(D_800DE4B0)($at) +/* 07873C 80077B3C 3C01800E */ lui $at, %hi(D_800DE4B4) # $at, 0x800e +/* 078740 80077B40 A025E4B4 */ sb $a1, %lo(D_800DE4B4)($at) +/* 078744 80077B44 3C01800E */ lui $at, 0x800e +/* 078748 80077B48 AFA40000 */ sw $a0, ($sp) +/* 07874C 80077B4C AFA50004 */ sw $a1, 4($sp) +/* 078750 80077B50 AFA60008 */ sw $a2, 8($sp) +/* 078754 80077B54 03E00008 */ jr $ra +/* 078758 80077B58 A026E4B8 */ sb $a2, -0x1b48($at) + diff --git a/asm/non_matchings/unknown_078050/func_80077B5C.s b/asm/non_matchings/unknown_078050/func_80077B5C.s new file mode 100644 index 00000000..69407966 --- /dev/null +++ b/asm/non_matchings/unknown_078050/func_80077B5C.s @@ -0,0 +1,18 @@ +glabel func_80077B5C +/* 07875C 80077B5C 00047200 */ sll $t6, $a0, 8 +/* 078760 80077B60 0005C0C0 */ sll $t8, $a1, 3 +/* 078764 80077B64 331907C0 */ andi $t9, $t8, 0x7c0 +/* 078768 80077B68 31CFF800 */ andi $t7, $t6, 0xf800 +/* 07876C 80077B6C 00064883 */ sra $t1, $a2, 2 +/* 078770 80077B70 312A003E */ andi $t2, $t1, 0x3e +/* 078774 80077B74 01F94025 */ or $t0, $t7, $t9 +/* 078778 80077B78 010A5825 */ or $t3, $t0, $t2 +/* 07877C 80077B7C 356C0001 */ ori $t4, $t3, 1 +/* 078780 80077B80 3C03800E */ lui $v1, %hi(D_800DE4BC) # $v1, 0x800e +/* 078784 80077B84 2463E4BC */ addiu $v1, %lo(D_800DE4BC) # addiu $v1, $v1, -0x1b44 +/* 078788 80077B88 000C6C00 */ sll $t5, $t4, 0x10 +/* 07878C 80077B8C AC6C0000 */ sw $t4, ($v1) +/* 078790 80077B90 018D7025 */ or $t6, $t4, $t5 +/* 078794 80077B94 03E00008 */ jr $ra +/* 078798 80077B98 AC6E0000 */ sw $t6, ($v1) + diff --git a/asm/non_matchings/unknown_078050/func_80077B9C.s b/asm/non_matchings/unknown_078050/func_80077B9C.s new file mode 100644 index 00000000..957e9f98 --- /dev/null +++ b/asm/non_matchings/unknown_078050/func_80077B9C.s @@ -0,0 +1,314 @@ +glabel func_80077B9C +/* 07879C 80077B9C 27BDFF60 */ addiu $sp, $sp, -0xa0 +/* 0787A0 80077BA0 AFBF0024 */ sw $ra, 0x24($sp) +/* 0787A4 80077BA4 AFB00020 */ sw $s0, 0x20($sp) +/* 0787A8 80077BA8 00808025 */ move $s0, $a0 +/* 0787AC 80077BAC AFA500A4 */ sw $a1, 0xa4($sp) +/* 0787B0 80077BB0 0C01E948 */ jal func_8007A520 +/* 0787B4 80077BB4 AFA600A8 */ sw $a2, 0xa8($sp) +/* 0787B8 80077BB8 304CFFFF */ andi $t4, $v0, 0xffff +/* 0787BC 80077BBC 2589FFFF */ addiu $t1, $t4, -1 +/* 0787C0 80077BC0 44892000 */ mtc1 $t1, $f4 +/* 0787C4 80077BC4 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 0787C8 80077BC8 468021A0 */ cvt.s.w $f6, $f4 +/* 0787CC 80077BCC 44810000 */ mtc1 $at, $f0 +/* 0787D0 80077BD0 8E030000 */ lw $v1, ($s0) +/* 0787D4 80077BD4 46003202 */ mul.s $f8, $f6, $f0 +/* 0787D8 80077BD8 246E0008 */ addiu $t6, $v1, 8 +/* 0787DC 80077BDC AE0E0000 */ sw $t6, ($s0) +/* 0787E0 80077BE0 00026C03 */ sra $t5, $v0, 0x10 +/* 0787E4 80077BE4 444EF800 */ cfc1 $t6, $31 +/* 0787E8 80077BE8 25AAFFFF */ addiu $t2, $t5, -1 +/* 0787EC 80077BEC 35C10003 */ ori $at, $t6, 3 +/* 0787F0 80077BF0 38210002 */ xori $at, $at, 2 +/* 0787F4 80077BF4 44C1F800 */ ctc1 $at, $31 +/* 0787F8 80077BF8 448A8000 */ mtc1 $t2, $f16 +/* 0787FC 80077BFC 460042A4 */ cvt.w.s $f10, $f8 +/* 078800 80077C00 3C0FE700 */ lui $t7, 0xe700 +/* 078804 80077C04 44CEF800 */ ctc1 $t6, $31 +/* 078808 80077C08 AC6F0000 */ sw $t7, ($v1) +/* 07880C 80077C0C 468084A0 */ cvt.s.w $f18, $f16 +/* 078810 80077C10 AC600004 */ sw $zero, 4($v1) +/* 078814 80077C14 35C10003 */ ori $at, $t6, 3 +/* 078818 80077C18 46009102 */ mul.s $f4, $f18, $f0 +/* 07881C 80077C1C 8E030000 */ lw $v1, ($s0) +/* 078820 80077C20 38210002 */ xori $at, $at, 2 +/* 078824 80077C24 440F5000 */ mfc1 $t7, $f10 +/* 078828 80077C28 44C1F800 */ ctc1 $at, $31 +/* 07882C 80077C2C 24780008 */ addiu $t8, $v1, 8 +/* 078830 80077C30 460021A4 */ cvt.w.s $f6, $f4 +/* 078834 80077C34 AE180000 */ sw $t8, ($s0) +/* 078838 80077C38 3C19ED00 */ lui $t9, 0xed00 +/* 07883C 80077C3C 31F80FFF */ andi $t8, $t7, 0xfff +/* 078840 80077C40 440F3000 */ mfc1 $t7, $f6 +/* 078844 80077C44 AC790000 */ sw $t9, ($v1) +/* 078848 80077C48 0018CB00 */ sll $t9, $t8, 0xc +/* 07884C 80077C4C 44CEF800 */ ctc1 $t6, $31 +/* 078850 80077C50 31F80FFF */ andi $t8, $t7, 0xfff +/* 078854 80077C54 03387025 */ or $t6, $t9, $t8 +/* 078858 80077C58 AC6E0004 */ sw $t6, 4($v1) +/* 07885C 80077C5C 8E030000 */ lw $v1, ($s0) +/* 078860 80077C60 3C19BA00 */ lui $t9, (0xBA001402 >> 16) # lui $t9, 0xba00 +/* 078864 80077C64 246F0008 */ addiu $t7, $v1, 8 +/* 078868 80077C68 AE0F0000 */ sw $t7, ($s0) +/* 07886C 80077C6C 37391402 */ ori $t9, (0xBA001402 & 0xFFFF) # ori $t9, $t9, 0x1402 +/* 078870 80077C70 3C180030 */ lui $t8, 0x30 +/* 078874 80077C74 AC780004 */ sw $t8, 4($v1) +/* 078878 80077C78 AC790000 */ sw $t9, ($v1) +/* 07887C 80077C7C 8E030000 */ lw $v1, ($s0) +/* 078880 80077C80 3C1FFF10 */ lui $ra, 0xff10 +/* 078884 80077C84 246E0008 */ addiu $t6, $v1, 8 +/* 078888 80077C88 AE0E0000 */ sw $t6, ($s0) +/* 07888C 80077C8C 312F0FFF */ andi $t7, $t1, 0xfff +/* 078890 80077C90 01FFC825 */ or $t9, $t7, $ra +/* 078894 80077C94 3C180200 */ lui $t8, 0x200 +/* 078898 80077C98 AC780004 */ sw $t8, 4($v1) +/* 07889C 80077C9C AC790000 */ sw $t9, ($v1) +/* 0788A0 80077CA0 8E030000 */ lw $v1, ($s0) +/* 0788A4 80077CA4 3C0FFFFC */ lui $t7, (0xFFFCFFFC >> 16) # lui $t7, 0xfffc +/* 0788A8 80077CA8 246E0008 */ addiu $t6, $v1, 8 +/* 0788AC 80077CAC AE0E0000 */ sw $t6, ($s0) +/* 0788B0 80077CB0 3C07F700 */ lui $a3, 0xf700 +/* 0788B4 80077CB4 35EFFFFC */ ori $t7, (0xFFFCFFFC & 0xFFFF) # ori $t7, $t7, 0xfffc +/* 0788B8 80077CB8 AC6F0004 */ sw $t7, 4($v1) +/* 0788BC 80077CBC AC670000 */ sw $a3, ($v1) +/* 0788C0 80077CC0 8E030000 */ lw $v1, ($s0) +/* 0788C4 80077CC4 313803FF */ andi $t8, $t1, 0x3ff +/* 0788C8 80077CC8 24790008 */ addiu $t9, $v1, 8 +/* 0788CC 80077CCC AE190000 */ sw $t9, ($s0) +/* 0788D0 80077CD0 00187380 */ sll $t6, $t8, 0xe +/* 0788D4 80077CD4 315903FF */ andi $t9, $t2, 0x3ff +/* 0788D8 80077CD8 3C01F600 */ lui $at, 0xf600 +/* 0788DC 80077CDC 01C17825 */ or $t7, $t6, $at +/* 0788E0 80077CE0 0019C080 */ sll $t8, $t9, 2 +/* 0788E4 80077CE4 01F87025 */ or $t6, $t7, $t8 +/* 0788E8 80077CE8 AC6E0000 */ sw $t6, ($v1) +/* 0788EC 80077CEC AC600004 */ sw $zero, 4($v1) +/* 0788F0 80077CF0 8E030000 */ lw $v1, ($s0) +/* 0788F4 80077CF4 3C0FE700 */ lui $t7, 0xe700 +/* 0788F8 80077CF8 24790008 */ addiu $t9, $v1, 8 +/* 0788FC 80077CFC AE190000 */ sw $t9, ($s0) +/* 078900 80077D00 AC600004 */ sw $zero, 4($v1) +/* 078904 80077D04 AC6F0000 */ sw $t7, ($v1) +/* 078908 80077D08 8E030000 */ lw $v1, ($s0) +/* 07890C 80077D0C 312E0FFF */ andi $t6, $t1, 0xfff +/* 078910 80077D10 24780008 */ addiu $t8, $v1, 8 +/* 078914 80077D14 AE180000 */ sw $t8, ($s0) +/* 078918 80077D18 01DFC825 */ or $t9, $t6, $ra +/* 07891C 80077D1C 3C0F0100 */ lui $t7, 0x100 +/* 078920 80077D20 AC6F0004 */ sw $t7, 4($v1) +/* 078924 80077D24 AC790000 */ sw $t9, ($v1) +/* 078928 80077D28 8FB800A8 */ lw $t8, 0xa8($sp) +/* 07892C 80077D2C 00002025 */ move $a0, $zero +/* 078930 80077D30 130000BC */ beqz $t8, .L80078024 +/* 078934 80077D34 00000000 */ nop +/* 078938 80077D38 AFAC0098 */ sw $t4, 0x98($sp) +/* 07893C 80077D3C 0C019A44 */ jal func_80066910 +/* 078940 80077D40 AFAD0094 */ sw $t5, 0x94($sp) +/* 078944 80077D44 8FAC0098 */ lw $t4, 0x98($sp) +/* 078948 80077D48 8FAD0094 */ lw $t5, 0x94($sp) +/* 07894C 80077D4C 10400079 */ beqz $v0, .L80077F34 +/* 078950 80077D50 3C07F700 */ lui $a3, 0xf700 +/* 078954 80077D54 3C0E800E */ lui $t6, %hi(D_800DE4CC) # $t6, 0x800e +/* 078958 80077D58 8DCEE4CC */ lw $t6, %lo(D_800DE4CC)($t6) +/* 07895C 80077D5C 3C19800E */ lui $t9, %hi(D_800DE4C4) # $t9, 0x800e +/* 078960 80077D60 11C00005 */ beqz $t6, .L80077D78 +/* 078964 80077D64 00000000 */ nop +/* 078968 80077D68 0C01E1FF */ jal func_800787FC +/* 07896C 80077D6C 02002025 */ move $a0, $s0 +/* 078970 80077D70 10000026 */ b .L80077E0C +/* 078974 80077D74 27AF0084 */ addiu $t7, $sp, 0x84 +.L80077D78: +/* 078978 80077D78 8F39E4C4 */ lw $t9, %lo(D_800DE4C4)($t9) +/* 07897C 80077D7C 3C02800E */ lui $v0, %hi(D_800DE4D0) # $v0, 0x800e +/* 078980 80077D80 13200005 */ beqz $t9, .L80077D98 +/* 078984 80077D84 00000000 */ nop +/* 078988 80077D88 0C01E064 */ jal func_80078190 +/* 07898C 80077D8C 02002025 */ move $a0, $s0 +/* 078990 80077D90 1000001E */ b .L80077E0C +/* 078994 80077D94 27AF0084 */ addiu $t7, $sp, 0x84 +.L80077D98: +/* 078998 80077D98 8C42E4D0 */ lw $v0, %lo(D_800DE4D0)($v0) +/* 07899C 80077D9C 3C18800E */ lui $t8, %hi(D_800DE4BC) # $t8, 0x800e +/* 0789A0 80077DA0 10400006 */ beqz $v0, .L80077DBC +/* 0789A4 80077DA4 2599FFFF */ addiu $t9, $t4, -1 +/* 0789A8 80077DA8 8FA500A4 */ lw $a1, 0xa4($sp) +/* 0789AC 80077DAC 0040F809 */ jalr $v0 +/* 0789B0 80077DB0 02002025 */ move $a0, $s0 +/* 0789B4 80077DB4 10000015 */ b .L80077E0C +/* 0789B8 80077DB8 27AF0084 */ addiu $t7, $sp, 0x84 +.L80077DBC: +/* 0789BC 80077DBC 8E030000 */ lw $v1, ($s0) +/* 0789C0 80077DC0 3C01F600 */ lui $at, 0xf600 +/* 0789C4 80077DC4 246F0008 */ addiu $t7, $v1, 8 +/* 0789C8 80077DC8 AE0F0000 */ sw $t7, ($s0) +/* 0789CC 80077DCC AC670000 */ sw $a3, ($v1) +/* 0789D0 80077DD0 8F18E4BC */ lw $t8, %lo(D_800DE4BC)($t8) +/* 0789D4 80077DD4 332F03FF */ andi $t7, $t9, 0x3ff +/* 0789D8 80077DD8 AC780004 */ sw $t8, 4($v1) +/* 0789DC 80077DDC 8E030000 */ lw $v1, ($s0) +/* 0789E0 80077DE0 000FC380 */ sll $t8, $t7, 0xe +/* 0789E4 80077DE4 246E0008 */ addiu $t6, $v1, 8 +/* 0789E8 80077DE8 AE0E0000 */ sw $t6, ($s0) +/* 0789EC 80077DEC 25B9FFFF */ addiu $t9, $t5, -1 +/* 0789F0 80077DF0 332F03FF */ andi $t7, $t9, 0x3ff +/* 0789F4 80077DF4 03017025 */ or $t6, $t8, $at +/* 0789F8 80077DF8 000FC080 */ sll $t8, $t7, 2 +/* 0789FC 80077DFC 01D8C825 */ or $t9, $t6, $t8 +/* 078A00 80077E00 AC790000 */ sw $t9, ($v1) +/* 078A04 80077E04 AC600004 */ sw $zero, 4($v1) +/* 078A08 80077E08 27AF0084 */ addiu $t7, $sp, 0x84 +.L80077E0C: +/* 078A0C 80077E0C AFAF0010 */ sw $t7, 0x10($sp) +/* 078A10 80077E10 00002025 */ move $a0, $zero +/* 078A14 80077E14 27A50090 */ addiu $a1, $sp, 0x90 +/* 078A18 80077E18 27A6008C */ addiu $a2, $sp, 0x8c +/* 078A1C 80077E1C 0C019AEA */ jal func_80066BA8 +/* 078A20 80077E20 27A70088 */ addiu $a3, $sp, 0x88 +/* 078A24 80077E24 1040007F */ beqz $v0, .L80078024 +/* 078A28 80077E28 3C18BA00 */ lui $t8, (0xBA001402 >> 16) # lui $t8, 0xba00 +/* 078A2C 80077E2C 8E030000 */ lw $v1, ($s0) +/* 078A30 80077E30 37181402 */ ori $t8, (0xBA001402 & 0xFFFF) # ori $t8, $t8, 0x1402 +/* 078A34 80077E34 246E0008 */ addiu $t6, $v1, 8 +/* 078A38 80077E38 AE0E0000 */ sw $t6, ($s0) +/* 078A3C 80077E3C AC600004 */ sw $zero, 4($v1) +/* 078A40 80077E40 AC780000 */ sw $t8, ($v1) +/* 078A44 80077E44 8E030000 */ lw $v1, ($s0) +/* 078A48 80077E48 3C0FFA00 */ lui $t7, 0xfa00 +/* 078A4C 80077E4C 24790008 */ addiu $t9, $v1, 8 +/* 078A50 80077E50 AE190000 */ sw $t9, ($s0) +/* 078A54 80077E54 3C0E800E */ lui $t6, %hi(D_800DE4B0) # $t6, 0x800e +/* 078A58 80077E58 AC6F0000 */ sw $t7, ($v1) +/* 078A5C 80077E5C 91D8E4B0 */ lbu $t8, %lo(D_800DE4B0)($t6) +/* 078A60 80077E60 3C0F800E */ lui $t7, %hi(D_800DE4B4) # $t7, 0x800e +/* 078A64 80077E64 91EEE4B4 */ lbu $t6, %lo(D_800DE4B4)($t7) +/* 078A68 80077E68 0018CE00 */ sll $t9, $t8, 0x18 +/* 078A6C 80077E6C 000EC400 */ sll $t8, $t6, 0x10 +/* 078A70 80077E70 03387825 */ or $t7, $t9, $t8 +/* 078A74 80077E74 3C0E800E */ lui $t6, %hi(D_800DE4B8) # $t6, 0x800e +/* 078A78 80077E78 91D9E4B8 */ lbu $t9, %lo(D_800DE4B8)($t6) +/* 078A7C 80077E7C 3C01F600 */ lui $at, 0xf600 +/* 078A80 80077E80 0019C200 */ sll $t8, $t9, 8 +/* 078A84 80077E84 01F87025 */ or $t6, $t7, $t8 +/* 078A88 80077E88 35D900FF */ ori $t9, $t6, 0xff +/* 078A8C 80077E8C AC790004 */ sw $t9, 4($v1) +/* 078A90 80077E90 8E030000 */ lw $v1, ($s0) +/* 078A94 80077E94 3C0EFFFD */ lui $t6, (0xFFFDF6FB >> 16) # lui $t6, 0xfffd +/* 078A98 80077E98 246F0008 */ addiu $t7, $v1, 8 +/* 078A9C 80077E9C AE0F0000 */ sw $t7, ($s0) +/* 078AA0 80077EA0 3C18FCFF */ lui $t8, (0xFCFFFFFF >> 16) # lui $t8, 0xfcff +/* 078AA4 80077EA4 3718FFFF */ ori $t8, (0xFCFFFFFF & 0xFFFF) # ori $t8, $t8, 0xffff +/* 078AA8 80077EA8 35CEF6FB */ ori $t6, (0xFFFDF6FB & 0xFFFF) # ori $t6, $t6, 0xf6fb +/* 078AAC 80077EAC AC6E0004 */ sw $t6, 4($v1) +/* 078AB0 80077EB0 AC780000 */ sw $t8, ($v1) +/* 078AB4 80077EB4 8E030000 */ lw $v1, ($s0) +/* 078AB8 80077EB8 3C180F0A */ lui $t8, (0x0F0A4000 >> 16) # lui $t8, 0xf0a +/* 078ABC 80077EBC 24790008 */ addiu $t9, $v1, 8 +/* 078AC0 80077EC0 AE190000 */ sw $t9, ($s0) +/* 078AC4 80077EC4 3C0FB900 */ lui $t7, (0xB900031D >> 16) # lui $t7, 0xb900 +/* 078AC8 80077EC8 35EF031D */ ori $t7, (0xB900031D & 0xFFFF) # ori $t7, $t7, 0x31d +/* 078ACC 80077ECC 37184000 */ ori $t8, (0x0F0A4000 & 0xFFFF) # ori $t8, $t8, 0x4000 +/* 078AD0 80077ED0 AC780004 */ sw $t8, 4($v1) +/* 078AD4 80077ED4 AC6F0000 */ sw $t7, ($v1) +/* 078AD8 80077ED8 8E030000 */ lw $v1, ($s0) +/* 078ADC 80077EDC 00000000 */ nop +/* 078AE0 80077EE0 246E0008 */ addiu $t6, $v1, 8 +/* 078AE4 80077EE4 AE0E0000 */ sw $t6, ($s0) +/* 078AE8 80077EE8 8FB90088 */ lw $t9, 0x88($sp) +/* 078AEC 80077EEC 00000000 */ nop +/* 078AF0 80077EF0 332F03FF */ andi $t7, $t9, 0x3ff +/* 078AF4 80077EF4 8FB90084 */ lw $t9, 0x84($sp) +/* 078AF8 80077EF8 000FC380 */ sll $t8, $t7, 0xe +/* 078AFC 80077EFC 03017025 */ or $t6, $t8, $at +/* 078B00 80077F00 332F03FF */ andi $t7, $t9, 0x3ff +/* 078B04 80077F04 000FC080 */ sll $t8, $t7, 2 +/* 078B08 80077F08 01D8C825 */ or $t9, $t6, $t8 +/* 078B0C 80077F0C AC790000 */ sw $t9, ($v1) +/* 078B10 80077F10 8FAF0090 */ lw $t7, 0x90($sp) +/* 078B14 80077F14 8FB9008C */ lw $t9, 0x8c($sp) +/* 078B18 80077F18 31EE03FF */ andi $t6, $t7, 0x3ff +/* 078B1C 80077F1C 000EC380 */ sll $t8, $t6, 0xe +/* 078B20 80077F20 332F03FF */ andi $t7, $t9, 0x3ff +/* 078B24 80077F24 000F7080 */ sll $t6, $t7, 2 +/* 078B28 80077F28 030EC825 */ or $t9, $t8, $t6 +/* 078B2C 80077F2C 1000003D */ b .L80078024 +/* 078B30 80077F30 AC790004 */ sw $t9, 4($v1) +.L80077F34: +/* 078B34 80077F34 3C0F800E */ lui $t7, %hi(D_800DE4CC) # $t7, 0x800e +/* 078B38 80077F38 8DEFE4CC */ lw $t7, %lo(D_800DE4CC)($t7) +/* 078B3C 80077F3C 3C18800E */ lui $t8, %hi(D_800DE4C4) # $t8, 0x800e +/* 078B40 80077F40 11E00005 */ beqz $t7, .L80077F58 +/* 078B44 80077F44 00000000 */ nop +/* 078B48 80077F48 0C01E1FF */ jal func_800787FC +/* 078B4C 80077F4C 02002025 */ move $a0, $s0 +/* 078B50 80077F50 10000035 */ b .L80078028 +/* 078B54 80077F54 8E030000 */ lw $v1, ($s0) +.L80077F58: +/* 078B58 80077F58 8F18E4C4 */ lw $t8, %lo(D_800DE4C4)($t8) +/* 078B5C 80077F5C 3C02800E */ lui $v0, %hi(D_800DE4D0) # $v0, 0x800e +/* 078B60 80077F60 13000005 */ beqz $t8, .L80077F78 +/* 078B64 80077F64 00000000 */ nop +/* 078B68 80077F68 0C01E064 */ jal func_80078190 +/* 078B6C 80077F6C 02002025 */ move $a0, $s0 +/* 078B70 80077F70 1000002D */ b .L80078028 +/* 078B74 80077F74 8E030000 */ lw $v1, ($s0) +.L80077F78: +/* 078B78 80077F78 8C42E4D0 */ lw $v0, %lo(D_800DE4D0)($v0) +/* 078B7C 80077F7C 8FA500A4 */ lw $a1, 0xa4($sp) +/* 078B80 80077F80 10400005 */ beqz $v0, .L80077F98 +/* 078B84 80077F84 3C19800E */ lui $t9, %hi(D_800DE4B0) # $t9, 0x800e +/* 078B88 80077F88 0040F809 */ jalr $v0 +/* 078B8C 80077F8C 02002025 */ move $a0, $s0 +/* 078B90 80077F90 10000025 */ b .L80078028 +/* 078B94 80077F94 8E030000 */ lw $v1, ($s0) +.L80077F98: +/* 078B98 80077F98 8E030000 */ lw $v1, ($s0) +/* 078B9C 80077F9C 3C01F600 */ lui $at, 0xf600 +/* 078BA0 80077FA0 246E0008 */ addiu $t6, $v1, 8 +/* 078BA4 80077FA4 AE0E0000 */ sw $t6, ($s0) +/* 078BA8 80077FA8 AC670000 */ sw $a3, ($v1) +/* 078BAC 80077FAC 9339E4B0 */ lbu $t9, %lo(D_800DE4B0)($t9) +/* 078BB0 80077FB0 3C0E800E */ lui $t6, %hi(D_800DE4B4) # $t6, 0x800e +/* 078BB4 80077FB4 91CEE4B4 */ lbu $t6, %lo(D_800DE4B4)($t6) +/* 078BB8 80077FB8 00197A00 */ sll $t7, $t9, 8 +/* 078BBC 80077FBC 31F8F800 */ andi $t8, $t7, 0xf800 +/* 078BC0 80077FC0 000EC8C0 */ sll $t9, $t6, 3 +/* 078BC4 80077FC4 332F07C0 */ andi $t7, $t9, 0x7c0 +/* 078BC8 80077FC8 3C19800E */ lui $t9, %hi(D_800DE4B8) # $t9, 0x800e +/* 078BCC 80077FCC 9339E4B8 */ lbu $t9, %lo(D_800DE4B8)($t9) +/* 078BD0 80077FD0 030F7025 */ or $t6, $t8, $t7 +/* 078BD4 80077FD4 0019C083 */ sra $t8, $t9, 2 +/* 078BD8 80077FD8 330F003E */ andi $t7, $t8, 0x3e +/* 078BDC 80077FDC 01CF2025 */ or $a0, $t6, $t7 +/* 078BE0 80077FE0 34990001 */ ori $t9, $a0, 1 +/* 078BE4 80077FE4 0019C400 */ sll $t8, $t9, 0x10 +/* 078BE8 80077FE8 03197025 */ or $t6, $t8, $t9 +/* 078BEC 80077FEC AC6E0004 */ sw $t6, 4($v1) +/* 078BF0 80077FF0 8E030000 */ lw $v1, ($s0) +/* 078BF4 80077FF4 2599FFFF */ addiu $t9, $t4, -1 +/* 078BF8 80077FF8 333803FF */ andi $t8, $t9, 0x3ff +/* 078BFC 80077FFC 00187380 */ sll $t6, $t8, 0xe +/* 078C00 80078000 246F0008 */ addiu $t7, $v1, 8 +/* 078C04 80078004 AE0F0000 */ sw $t7, ($s0) +/* 078C08 80078008 25B9FFFF */ addiu $t9, $t5, -1 +/* 078C0C 8007800C 333803FF */ andi $t8, $t9, 0x3ff +/* 078C10 80078010 01C17825 */ or $t7, $t6, $at +/* 078C14 80078014 00187080 */ sll $t6, $t8, 2 +/* 078C18 80078018 01EEC825 */ or $t9, $t7, $t6 +/* 078C1C 8007801C AC790000 */ sw $t9, ($v1) +/* 078C20 80078020 AC600004 */ sw $zero, 4($v1) +.L80078024: +/* 078C24 80078024 8E030000 */ lw $v1, ($s0) +.L80078028: +/* 078C28 80078028 3C0FE700 */ lui $t7, 0xe700 +/* 078C2C 8007802C 24780008 */ addiu $t8, $v1, 8 +/* 078C30 80078030 AE180000 */ sw $t8, ($s0) +/* 078C34 80078034 02002025 */ move $a0, $s0 +/* 078C38 80078038 AC600004 */ sw $zero, 4($v1) +/* 078C3C 8007803C 0C019E8F */ jal func_80067A3C +/* 078C40 80078040 AC6F0000 */ sw $t7, ($v1) +/* 078C44 80078044 8FBF0024 */ lw $ra, 0x24($sp) +/* 078C48 80078048 8FB00020 */ lw $s0, 0x20($sp) +/* 078C4C 8007804C 03E00008 */ jr $ra +/* 078C50 80078050 27BD00A0 */ addiu $sp, $sp, 0xa0 + diff --git a/asm/non_matchings/unknown_078050/func_80078054.s b/asm/non_matchings/unknown_078050/func_80078054.s new file mode 100644 index 00000000..fb5d20c4 --- /dev/null +++ b/asm/non_matchings/unknown_078050/func_80078054.s @@ -0,0 +1,36 @@ +glabel func_80078054 +/* 078C54 80078054 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 078C58 80078058 AFBF0014 */ sw $ra, 0x14($sp) +/* 078C5C 8007805C 0C01E948 */ jal func_8007A520 +/* 078C60 80078060 AFA40018 */ sw $a0, 0x18($sp) +/* 078C64 80078064 8FA50018 */ lw $a1, 0x18($sp) +/* 078C68 80078068 2458FFFF */ addiu $t8, $v0, -1 +/* 078C6C 8007806C 8CA30000 */ lw $v1, ($a1) +/* 078C70 80078070 33190FFF */ andi $t9, $t8, 0xfff +/* 078C74 80078074 246E0008 */ addiu $t6, $v1, 8 +/* 078C78 80078078 3C01FF10 */ lui $at, 0xff10 +/* 078C7C 8007807C ACAE0000 */ sw $t6, ($a1) +/* 078C80 80078080 03214025 */ or $t0, $t9, $at +/* 078C84 80078084 3C090100 */ lui $t1, 0x100 +/* 078C88 80078088 AC690004 */ sw $t1, 4($v1) +/* 078C8C 8007808C AC680000 */ sw $t0, ($v1) +/* 078C90 80078090 8CA30000 */ lw $v1, ($a1) +/* 078C94 80078094 3C0BFE00 */ lui $t3, 0xfe00 +/* 078C98 80078098 246A0008 */ addiu $t2, $v1, 8 +/* 078C9C 8007809C ACAA0000 */ sw $t2, ($a1) +/* 078CA0 800780A0 3C0C0200 */ lui $t4, 0x200 +/* 078CA4 800780A4 AC6C0004 */ sw $t4, 4($v1) +/* 078CA8 800780A8 AC6B0000 */ sw $t3, ($v1) +/* 078CAC 800780AC 8CA30000 */ lw $v1, ($a1) +/* 078CB0 800780B0 3C0F800E */ lui $t7, %hi(D_800DE520) # $t7, 0x800e +/* 078CB4 800780B4 246D0008 */ addiu $t5, $v1, 8 +/* 078CB8 800780B8 ACAD0000 */ sw $t5, ($a1) +/* 078CBC 800780BC 25EFE520 */ addiu $t7, %lo(D_800DE520) # addiu $t7, $t7, -0x1ae0 +/* 078CC0 800780C0 3C0E0600 */ lui $t6, 0x600 +/* 078CC4 800780C4 AC6E0000 */ sw $t6, ($v1) +/* 078CC8 800780C8 AC6F0004 */ sw $t7, 4($v1) +/* 078CCC 800780CC 8FBF0014 */ lw $ra, 0x14($sp) +/* 078CD0 800780D0 27BD0018 */ addiu $sp, $sp, 0x18 +/* 078CD4 800780D4 03E00008 */ jr $ra +/* 078CD8 800780D8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_078050/func_800780DC.s b/asm/non_matchings/unknown_078050/func_800780DC.s new file mode 100644 index 00000000..6c349b17 --- /dev/null +++ b/asm/non_matchings/unknown_078050/func_800780DC.s @@ -0,0 +1,11 @@ +glabel func_800780DC +/* 078CDC 800780DC 8C830000 */ lw $v1, ($a0) +/* 078CE0 800780E0 3C18800E */ lui $t8, %hi(D_800DE4E0) # $t8, 0x800e +/* 078CE4 800780E4 246E0008 */ addiu $t6, $v1, 8 +/* 078CE8 800780E8 AC8E0000 */ sw $t6, ($a0) +/* 078CEC 800780EC 2718E4E0 */ addiu $t8, %lo(D_800DE4E0) # addiu $t8, $t8, -0x1b20 +/* 078CF0 800780F0 3C0F0600 */ lui $t7, 0x600 +/* 078CF4 800780F4 AC6F0000 */ sw $t7, ($v1) +/* 078CF8 800780F8 03E00008 */ jr $ra +/* 078CFC 800780FC AC780004 */ sw $t8, 4($v1) + diff --git a/asm/non_matchings/unknown_078050/func_80078100.s b/asm/non_matchings/unknown_078050/func_80078100.s new file mode 100644 index 00000000..463aa2a3 --- /dev/null +++ b/asm/non_matchings/unknown_078050/func_80078100.s @@ -0,0 +1,30 @@ +glabel func_80078100 +/* 078D00 80078100 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 078D04 80078104 AFBF0014 */ sw $ra, 0x14($sp) +/* 078D08 80078108 0C01E55F */ jal func_8007957C +/* 078D0C 8007810C 00000000 */ nop +/* 078D10 80078110 3C018012 */ lui $at, %hi(D_80126100) # $at, 0x8012 +/* 078D14 80078114 3C048012 */ lui $a0, %hi(D_80125EA0) # $a0, 0x8012 +/* 078D18 80078118 3C058012 */ lui $a1, %hi(D_80125EB8) # $a1, 0x8012 +/* 078D1C 8007811C AC226100 */ sw $v0, %lo(D_80126100)($at) +/* 078D20 80078120 24A55EB8 */ addiu $a1, %lo(D_80125EB8) # addiu $a1, $a1, 0x5eb8 +/* 078D24 80078124 24845EA0 */ addiu $a0, %lo(D_80125EA0) # addiu $a0, $a0, 0x5ea0 +/* 078D28 80078128 0C032208 */ jal osCreateMesgQueue +/* 078D2C 8007812C 24060001 */ li $a2, 1 +/* 078D30 80078130 3C048012 */ lui $a0, %hi(D_80125EC0) # $a0, 0x8012 +/* 078D34 80078134 3C058012 */ lui $a1, %hi(D_80125EF0) # $a1, 0x8012 +/* 078D38 80078138 24A55EF0 */ addiu $a1, %lo(D_80125EF0) # addiu $a1, $a1, 0x5ef0 +/* 078D3C 8007813C 24845EC0 */ addiu $a0, %lo(D_80125EC0) # addiu $a0, $a0, 0x5ec0 +/* 078D40 80078140 0C032208 */ jal osCreateMesgQueue +/* 078D44 80078144 24060008 */ li $a2, 8 +/* 078D48 80078148 3C048012 */ lui $a0, %hi(D_80125ED8) # $a0, 0x8012 +/* 078D4C 8007814C 3C058012 */ lui $a1, %hi(D_80125F10) # $a1, 0x8012 +/* 078D50 80078150 24A55F10 */ addiu $a1, %lo(D_80125F10) # addiu $a1, $a1, 0x5f10 +/* 078D54 80078154 24845ED8 */ addiu $a0, %lo(D_80125ED8) # addiu $a0, $a0, 0x5ed8 +/* 078D58 80078158 0C032208 */ jal osCreateMesgQueue +/* 078D5C 8007815C 24060008 */ li $a2, 8 +/* 078D60 80078160 8FBF0014 */ lw $ra, 0x14($sp) +/* 078D64 80078164 27BD0018 */ addiu $sp, $sp, 0x18 +/* 078D68 80078168 03E00008 */ jr $ra +/* 078D6C 8007816C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_078050/func_80078170.s b/asm/non_matchings/unknown_078050/func_80078170.s new file mode 100644 index 00000000..2b53abd7 --- /dev/null +++ b/asm/non_matchings/unknown_078050/func_80078170.s @@ -0,0 +1,10 @@ +glabel func_80078170 +/* 078D70 80078170 3C01800E */ lui $at, %hi(D_800DE4C4) # $at, 0x800e +/* 078D74 80078174 AC24E4C4 */ sw $a0, %lo(D_800DE4C4)($at) +/* 078D78 80078178 3C01800E */ lui $at, %hi(D_800DE4C8) # $at, 0x800e +/* 078D7C 8007817C AC25E4C8 */ sw $a1, %lo(D_800DE4C8)($at) +/* 078D80 80078180 3C01800E */ lui $at, 0x800e +/* 078D84 80078184 00067080 */ sll $t6, $a2, 2 +/* 078D88 80078188 03E00008 */ jr $ra +/* 078D8C 8007818C AC2EE4C0 */ sw $t6, -0x1b40($at) + diff --git a/asm/non_matchings/unknown_078050/func_80078190.s b/asm/non_matchings/unknown_078050/func_80078190.s new file mode 100644 index 00000000..dd452cd3 --- /dev/null +++ b/asm/non_matchings/unknown_078050/func_80078190.s @@ -0,0 +1,434 @@ +glabel func_80078190 +/* 078D90 80078190 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 078D94 80078194 AFBF003C */ sw $ra, 0x3c($sp) +/* 078D98 80078198 AFBE0038 */ sw $fp, 0x38($sp) +/* 078D9C 8007819C AFB70034 */ sw $s7, 0x34($sp) +/* 078DA0 800781A0 AFB60030 */ sw $s6, 0x30($sp) +/* 078DA4 800781A4 AFB5002C */ sw $s5, 0x2c($sp) +/* 078DA8 800781A8 AFB40028 */ sw $s4, 0x28($sp) +/* 078DAC 800781AC AFB30024 */ sw $s3, 0x24($sp) +/* 078DB0 800781B0 AFB20020 */ sw $s2, 0x20($sp) +/* 078DB4 800781B4 AFB1001C */ sw $s1, 0x1c($sp) +/* 078DB8 800781B8 AFB00018 */ sw $s0, 0x18($sp) +/* 078DBC 800781BC 0C01E948 */ jal func_8007A520 +/* 078DC0 800781C0 AFA40040 */ sw $a0, 0x40($sp) +/* 078DC4 800781C4 8FA40040 */ lw $a0, 0x40($sp) +/* 078DC8 800781C8 00024403 */ sra $t0, $v0, 0x10 +/* 078DCC 800781CC 8C830000 */ lw $v1, ($a0) +/* 078DD0 800781D0 3C19800E */ lui $t9, %hi(D_800DE598) # $t9, 0x800e +/* 078DD4 800781D4 246F0008 */ addiu $t7, $v1, 8 +/* 078DD8 800781D8 AC8F0000 */ sw $t7, ($a0) +/* 078DDC 800781DC 3C0A800E */ lui $t2, %hi(D_800DE4C8) # $t2, 0x800e +/* 078DE0 800781E0 310EFFFF */ andi $t6, $t0, 0xffff +/* 078DE4 800781E4 2739E598 */ addiu $t9, %lo(D_800DE598) # addiu $t9, $t9, -0x1a68 +/* 078DE8 800781E8 3C180600 */ lui $t8, 0x600 +/* 078DEC 800781EC 254AE4C8 */ addiu $t2, %lo(D_800DE4C8) # addiu $t2, $t2, -0x1b38 +/* 078DF0 800781F0 01C04025 */ move $t0, $t6 +/* 078DF4 800781F4 AC780000 */ sw $t8, ($v1) +/* 078DF8 800781F8 AC790004 */ sw $t9, 4($v1) +/* 078DFC 800781FC 8D4E0000 */ lw $t6, ($t2) +/* 078E00 80078200 3C09800E */ lui $t1, %hi(D_800DE4C4) # $t1, 0x800e +/* 078E04 80078204 15C00070 */ bnez $t6, .L800783C8 +/* 078E08 80078208 2529E4C4 */ addiu $t1, %lo(D_800DE4C4) # addiu $t1, $t1, -0x1b3c +/* 078E0C 8007820C 8C830000 */ lw $v1, ($a0) +/* 078E10 80078210 3C09800E */ lui $t1, %hi(D_800DE4C4) # $t1, 0x800e +/* 078E14 80078214 246F0008 */ addiu $t7, $v1, 8 +/* 078E18 80078218 2529E4C4 */ addiu $t1, %lo(D_800DE4C4) # addiu $t1, $t1, -0x1b3c +/* 078E1C 8007821C AC8F0000 */ sw $t7, ($a0) +/* 078E20 80078220 8D380000 */ lw $t8, ($t1) +/* 078E24 80078224 3C010700 */ lui $at, 0x700 +/* 078E28 80078228 8707000A */ lh $a3, 0xa($t8) +/* 078E2C 8007822C 3051FFFF */ andi $s1, $v0, 0xffff +/* 078E30 80078230 30F900FF */ andi $t9, $a3, 0xff +/* 078E34 80078234 00197400 */ sll $t6, $t9, 0x10 +/* 078E38 80078238 0007C0C0 */ sll $t8, $a3, 3 +/* 078E3C 8007823C 3319FFFF */ andi $t9, $t8, 0xffff +/* 078E40 80078240 01C17825 */ or $t7, $t6, $at +/* 078E44 80078244 01F97025 */ or $t6, $t7, $t9 +/* 078E48 80078248 AC6E0000 */ sw $t6, ($v1) +/* 078E4C 8007824C 8D380000 */ lw $t8, ($t1) +/* 078E50 80078250 3C018000 */ lui $at, 0x8000 +/* 078E54 80078254 8F0F000C */ lw $t7, 0xc($t8) +/* 078E58 80078258 00117080 */ sll $t6, $s1, 2 +/* 078E5C 8007825C 01E1C821 */ addu $t9, $t7, $at +/* 078E60 80078260 AC790004 */ sw $t9, 4($v1) +/* 078E64 80078264 8D260000 */ lw $a2, ($t1) +/* 078E68 80078268 0008B080 */ sll $s6, $t0, 2 +/* 078E6C 8007826C 90D00000 */ lbu $s0, ($a2) +/* 078E70 80078270 90D40001 */ lbu $s4, 1($a2) +/* 078E74 80078274 0010C080 */ sll $t8, $s0, 2 +/* 078E78 80078278 00147880 */ sll $t7, $s4, 2 +/* 078E7C 8007827C 01C08825 */ move $s1, $t6 +/* 078E80 80078280 03008025 */ move $s0, $t8 +/* 078E84 80078284 01E0A025 */ move $s4, $t7 +/* 078E88 80078288 00009825 */ move $s3, $zero +/* 078E8C 8007828C 1AC00128 */ blez $s6, .L80078730 +/* 078E90 80078290 00009025 */ move $s2, $zero +/* 078E94 80078294 3C17800E */ lui $s7, %hi(D_800DE4C0) # $s7, 0x800e +/* 078E98 80078298 3C1F0400 */ lui $ra, (0x04000400 >> 16) # lui $ra, 0x400 +/* 078E9C 8007829C 37FF0400 */ ori $ra, (0x04000400 & 0xFFFF) # ori $ra, $ra, 0x400 +/* 078EA0 800782A0 26F7E4C0 */ addiu $s7, %lo(D_800DE4C0) # addiu $s7, $s7, -0x1b40 +/* 078EA4 800782A4 2715FFFF */ addiu $s5, $t8, -1 +/* 078EA8 800782A8 3C0DB200 */ lui $t5, 0xb200 +/* 078EAC 800782AC 3C0CB300 */ lui $t4, 0xb300 +/* 078EB0 800782B0 3C0BE400 */ lui $t3, 0xe400 +.L800782B4: +/* 078EB4 800782B4 00131023 */ negu $v0, $s3 +/* 078EB8 800782B8 0051082A */ slt $at, $v0, $s1 +/* 078EBC 800782BC 1020003A */ beqz $at, .L800783A8 +/* 078EC0 800782C0 02544821 */ addu $t1, $s2, $s4 +/* 078EC4 800782C4 31390FFF */ andi $t9, $t1, 0xfff +/* 078EC8 800782C8 03204825 */ move $t1, $t9 +/* 078ECC 800782CC 324A0FFF */ andi $t2, $s2, 0xfff +.L800782D0: +/* 078ED0 800782D0 0441001A */ bgez $v0, .L8007833C +/* 078ED4 800782D4 00503021 */ addu $a2, $v0, $s0 +/* 078ED8 800782D8 8C830000 */ lw $v1, ($a0) +/* 078EDC 800782DC 00503021 */ addu $a2, $v0, $s0 +/* 078EE0 800782E0 30D80FFF */ andi $t8, $a2, 0xfff +/* 078EE4 800782E4 246E0008 */ addiu $t6, $v1, 8 +/* 078EE8 800782E8 AC8E0000 */ sw $t6, ($a0) +/* 078EEC 800782EC 00187B00 */ sll $t7, $t8, 0xc +/* 078EF0 800782F0 01EBC825 */ or $t9, $t7, $t3 +/* 078EF4 800782F4 03297025 */ or $t6, $t9, $t1 +/* 078EF8 800782F8 AC6E0000 */ sw $t6, ($v1) +/* 078EFC 800782FC AC6A0004 */ sw $t2, 4($v1) +/* 078F00 80078300 8C830000 */ lw $v1, ($a0) +/* 078F04 80078304 000278C0 */ sll $t7, $v0, 3 +/* 078F08 80078308 24780008 */ addiu $t8, $v1, 8 +/* 078F0C 8007830C AC980000 */ sw $t8, ($a0) +/* 078F10 80078310 000F7023 */ negu $t6, $t7 +/* 078F14 80078314 000EC400 */ sll $t8, $t6, 0x10 +/* 078F18 80078318 AC780004 */ sw $t8, 4($v1) +/* 078F1C 8007831C AC6C0000 */ sw $t4, ($v1) +/* 078F20 80078320 8C830000 */ lw $v1, ($a0) +/* 078F24 80078324 00000000 */ nop +/* 078F28 80078328 246F0008 */ addiu $t7, $v1, 8 +/* 078F2C 8007832C AC8F0000 */ sw $t7, ($a0) +/* 078F30 80078330 AC7F0004 */ sw $ra, 4($v1) +/* 078F34 80078334 10000019 */ b .L8007839C +/* 078F38 80078338 AC6D0000 */ sw $t5, ($v1) +.L8007833C: +/* 078F3C 8007833C 8C830000 */ lw $v1, ($a0) +/* 078F40 80078340 30CE0FFF */ andi $t6, $a2, 0xfff +/* 078F44 80078344 000EC300 */ sll $t8, $t6, 0xc +/* 078F48 80078348 030B7825 */ or $t7, $t8, $t3 +/* 078F4C 8007834C 24790008 */ addiu $t9, $v1, 8 +/* 078F50 80078350 AC990000 */ sw $t9, ($a0) +/* 078F54 80078354 304E0FFF */ andi $t6, $v0, 0xfff +/* 078F58 80078358 000EC300 */ sll $t8, $t6, 0xc +/* 078F5C 8007835C 01E9C825 */ or $t9, $t7, $t1 +/* 078F60 80078360 030A7825 */ or $t7, $t8, $t2 +/* 078F64 80078364 AC6F0004 */ sw $t7, 4($v1) +/* 078F68 80078368 AC790000 */ sw $t9, ($v1) +/* 078F6C 8007836C 8C830000 */ lw $v1, ($a0) +/* 078F70 80078370 00000000 */ nop +/* 078F74 80078374 24790008 */ addiu $t9, $v1, 8 +/* 078F78 80078378 AC990000 */ sw $t9, ($a0) +/* 078F7C 8007837C AC600004 */ sw $zero, 4($v1) +/* 078F80 80078380 AC6C0000 */ sw $t4, ($v1) +/* 078F84 80078384 8C830000 */ lw $v1, ($a0) +/* 078F88 80078388 00000000 */ nop +/* 078F8C 8007838C 246E0008 */ addiu $t6, $v1, 8 +/* 078F90 80078390 AC8E0000 */ sw $t6, ($a0) +/* 078F94 80078394 AC7F0004 */ sw $ra, 4($v1) +/* 078F98 80078398 AC6D0000 */ sw $t5, ($v1) +.L8007839C: +/* 078F9C 8007839C 00D1082A */ slt $at, $a2, $s1 +/* 078FA0 800783A0 1420FFCB */ bnez $at, .L800782D0 +/* 078FA4 800783A4 00C01025 */ move $v0, $a2 +.L800783A8: +/* 078FA8 800783A8 8EF80000 */ lw $t8, ($s7) +/* 078FAC 800783AC 02549021 */ addu $s2, $s2, $s4 +/* 078FB0 800783B0 0256082A */ slt $at, $s2, $s6 +/* 078FB4 800783B4 02787821 */ addu $t7, $s3, $t8 +/* 078FB8 800783B8 1420FFBE */ bnez $at, .L800782B4 +/* 078FBC 800783BC 01F59824 */ and $s3, $t7, $s5 +/* 078FC0 800783C0 100000DC */ b .L80078734 +/* 078FC4 800783C4 8C830000 */ lw $v1, ($a0) +.L800783C8: +/* 078FC8 800783C8 8C830000 */ lw $v1, ($a0) +/* 078FCC 800783CC 3C010700 */ lui $at, 0x700 +/* 078FD0 800783D0 24790008 */ addiu $t9, $v1, 8 +/* 078FD4 800783D4 AC990000 */ sw $t9, ($a0) +/* 078FD8 800783D8 8D2E0000 */ lw $t6, ($t1) +/* 078FDC 800783DC 3051FFFF */ andi $s1, $v0, 0xffff +/* 078FE0 800783E0 85C7000A */ lh $a3, 0xa($t6) +/* 078FE4 800783E4 0008B080 */ sll $s6, $t0, 2 +/* 078FE8 800783E8 30F800FF */ andi $t8, $a3, 0xff +/* 078FEC 800783EC 00187C00 */ sll $t7, $t8, 0x10 +/* 078FF0 800783F0 000770C0 */ sll $t6, $a3, 3 +/* 078FF4 800783F4 31D8FFFF */ andi $t8, $t6, 0xffff +/* 078FF8 800783F8 01E1C825 */ or $t9, $t7, $at +/* 078FFC 800783FC 03387825 */ or $t7, $t9, $t8 +/* 079000 80078400 AC6F0000 */ sw $t7, ($v1) +/* 079004 80078404 8D2E0000 */ lw $t6, ($t1) +/* 079008 80078408 3C018000 */ lui $at, 0x8000 +/* 07900C 8007840C 8DD9000C */ lw $t9, 0xc($t6) +/* 079010 80078410 00117880 */ sll $t7, $s1, 2 +/* 079014 80078414 0321C021 */ addu $t8, $t9, $at +/* 079018 80078418 AC780004 */ sw $t8, 4($v1) +/* 07901C 8007841C 8D260000 */ lw $a2, ($t1) +/* 079020 80078420 8D580000 */ lw $t8, ($t2) +/* 079024 80078424 90D00000 */ lbu $s0, ($a2) +/* 079028 80078428 01E08825 */ move $s1, $t7 +/* 07902C 8007842C 90D40001 */ lbu $s4, 1($a2) +/* 079030 80078430 930F0001 */ lbu $t7, 1($t8) +/* 079034 80078434 00107080 */ sll $t6, $s0, 2 +/* 079038 80078438 01C08025 */ move $s0, $t6 +/* 07903C 8007843C 0014C880 */ sll $t9, $s4, 2 +/* 079040 80078440 000F7080 */ sll $t6, $t7, 2 +/* 079044 80078444 00009025 */ move $s2, $zero +/* 079048 80078448 0320A025 */ move $s4, $t9 +/* 07904C 8007844C 01D9F021 */ addu $fp, $t6, $t9 +/* 079050 80078450 1AC0004D */ blez $s6, .L80078588 +/* 079054 80078454 00009825 */ move $s3, $zero +/* 079058 80078458 3C17800E */ lui $s7, %hi(D_800DE4C0) # $s7, 0x800e +/* 07905C 8007845C 3C1F0400 */ lui $ra, (0x04000400 >> 16) # lui $ra, 0x400 +/* 079060 80078460 37FF0400 */ ori $ra, (0x04000400 & 0xFFFF) # ori $ra, $ra, 0x400 +/* 079064 80078464 26F7E4C0 */ addiu $s7, %lo(D_800DE4C0) # addiu $s7, $s7, -0x1b40 +/* 079068 80078468 2615FFFF */ addiu $s5, $s0, -1 +/* 07906C 8007846C 3C0DB200 */ lui $t5, 0xb200 +/* 079070 80078470 3C0CB300 */ lui $t4, 0xb300 +/* 079074 80078474 3C0BE400 */ lui $t3, 0xe400 +.L80078478: +/* 079078 80078478 00131023 */ negu $v0, $s3 +/* 07907C 8007847C 0051082A */ slt $at, $v0, $s1 +/* 079080 80078480 1020003A */ beqz $at, .L8007856C +/* 079084 80078484 02544821 */ addu $t1, $s2, $s4 +/* 079088 80078488 31390FFF */ andi $t9, $t1, 0xfff +/* 07908C 8007848C 03204825 */ move $t1, $t9 +/* 079090 80078490 324A0FFF */ andi $t2, $s2, 0xfff +.L80078494: +/* 079094 80078494 0441001A */ bgez $v0, .L80078500 +/* 079098 80078498 00503021 */ addu $a2, $v0, $s0 +/* 07909C 8007849C 8C830000 */ lw $v1, ($a0) +/* 0790A0 800784A0 00503021 */ addu $a2, $v0, $s0 +/* 0790A4 800784A4 30CF0FFF */ andi $t7, $a2, 0xfff +/* 0790A8 800784A8 24780008 */ addiu $t8, $v1, 8 +/* 0790AC 800784AC AC980000 */ sw $t8, ($a0) +/* 0790B0 800784B0 000F7300 */ sll $t6, $t7, 0xc +/* 0790B4 800784B4 01CBC825 */ or $t9, $t6, $t3 +/* 0790B8 800784B8 0329C025 */ or $t8, $t9, $t1 +/* 0790BC 800784BC AC780000 */ sw $t8, ($v1) +/* 0790C0 800784C0 AC6A0004 */ sw $t2, 4($v1) +/* 0790C4 800784C4 8C830000 */ lw $v1, ($a0) +/* 0790C8 800784C8 000270C0 */ sll $t6, $v0, 3 +/* 0790CC 800784CC 246F0008 */ addiu $t7, $v1, 8 +/* 0790D0 800784D0 AC8F0000 */ sw $t7, ($a0) +/* 0790D4 800784D4 000EC023 */ negu $t8, $t6 +/* 0790D8 800784D8 00187C00 */ sll $t7, $t8, 0x10 +/* 0790DC 800784DC AC6F0004 */ sw $t7, 4($v1) +/* 0790E0 800784E0 AC6C0000 */ sw $t4, ($v1) +/* 0790E4 800784E4 8C830000 */ lw $v1, ($a0) +/* 0790E8 800784E8 00000000 */ nop +/* 0790EC 800784EC 246E0008 */ addiu $t6, $v1, 8 +/* 0790F0 800784F0 AC8E0000 */ sw $t6, ($a0) +/* 0790F4 800784F4 AC7F0004 */ sw $ra, 4($v1) +/* 0790F8 800784F8 10000019 */ b .L80078560 +/* 0790FC 800784FC AC6D0000 */ sw $t5, ($v1) +.L80078500: +/* 079100 80078500 8C830000 */ lw $v1, ($a0) +/* 079104 80078504 30D80FFF */ andi $t8, $a2, 0xfff +/* 079108 80078508 00187B00 */ sll $t7, $t8, 0xc +/* 07910C 8007850C 01EB7025 */ or $t6, $t7, $t3 +/* 079110 80078510 24790008 */ addiu $t9, $v1, 8 +/* 079114 80078514 AC990000 */ sw $t9, ($a0) +/* 079118 80078518 30580FFF */ andi $t8, $v0, 0xfff +/* 07911C 8007851C 00187B00 */ sll $t7, $t8, 0xc +/* 079120 80078520 01C9C825 */ or $t9, $t6, $t1 +/* 079124 80078524 01EA7025 */ or $t6, $t7, $t2 +/* 079128 80078528 AC6E0004 */ sw $t6, 4($v1) +/* 07912C 8007852C AC790000 */ sw $t9, ($v1) +/* 079130 80078530 8C830000 */ lw $v1, ($a0) +/* 079134 80078534 00000000 */ nop +/* 079138 80078538 24790008 */ addiu $t9, $v1, 8 +/* 07913C 8007853C AC990000 */ sw $t9, ($a0) +/* 079140 80078540 AC600004 */ sw $zero, 4($v1) +/* 079144 80078544 AC6C0000 */ sw $t4, ($v1) +/* 079148 80078548 8C830000 */ lw $v1, ($a0) +/* 07914C 8007854C 00000000 */ nop +/* 079150 80078550 24780008 */ addiu $t8, $v1, 8 +/* 079154 80078554 AC980000 */ sw $t8, ($a0) +/* 079158 80078558 AC7F0004 */ sw $ra, 4($v1) +/* 07915C 8007855C AC6D0000 */ sw $t5, ($v1) +.L80078560: +/* 079160 80078560 00D1082A */ slt $at, $a2, $s1 +/* 079164 80078564 1420FFCB */ bnez $at, .L80078494 +/* 079168 80078568 00C01025 */ move $v0, $a2 +.L8007856C: +/* 07916C 8007856C 8EEF0000 */ lw $t7, ($s7) +/* 079170 80078570 025E9021 */ addu $s2, $s2, $fp +/* 079174 80078574 0256082A */ slt $at, $s2, $s6 +/* 079178 80078578 026F7021 */ addu $t6, $s3, $t7 +/* 07917C 8007857C 1420FFBE */ bnez $at, .L80078478 +/* 079180 80078580 01D59824 */ and $s3, $t6, $s5 +/* 079184 80078584 00009825 */ move $s3, $zero +.L80078588: +/* 079188 80078588 8C830000 */ lw $v1, ($a0) +/* 07918C 8007858C 3C06800E */ lui $a2, %hi(D_800DE4C8) # $a2, 0x800e +/* 079190 80078590 24790008 */ addiu $t9, $v1, 8 +/* 079194 80078594 24C6E4C8 */ addiu $a2, %lo(D_800DE4C8) # addiu $a2, $a2, -0x1b38 +/* 079198 80078598 AC990000 */ sw $t9, ($a0) +/* 07919C 8007859C 8CD80000 */ lw $t8, ($a2) +/* 0791A0 800785A0 3C010700 */ lui $at, 0x700 +/* 0791A4 800785A4 8705000A */ lh $a1, 0xa($t8) +/* 0791A8 800785A8 02809025 */ move $s2, $s4 +/* 0791AC 800785AC 30AF00FF */ andi $t7, $a1, 0xff +/* 0791B0 800785B0 000F7400 */ sll $t6, $t7, 0x10 +/* 0791B4 800785B4 0005C0C0 */ sll $t8, $a1, 3 +/* 0791B8 800785B8 330FFFFF */ andi $t7, $t8, 0xffff +/* 0791BC 800785BC 01C1C825 */ or $t9, $t6, $at +/* 0791C0 800785C0 032F7025 */ or $t6, $t9, $t7 +/* 0791C4 800785C4 AC6E0000 */ sw $t6, ($v1) +/* 0791C8 800785C8 8CD80000 */ lw $t8, ($a2) +/* 0791CC 800785CC 3C018000 */ lui $at, 0x8000 +/* 0791D0 800785D0 8F19000C */ lw $t9, 0xc($t8) +/* 0791D4 800785D4 0016C080 */ sll $t8, $s6, 2 +/* 0791D8 800785D8 03217821 */ addu $t7, $t9, $at +/* 0791DC 800785DC AC6F0004 */ sw $t7, 4($v1) +/* 0791E0 800785E0 8CD90000 */ lw $t9, ($a2) +/* 0791E4 800785E4 3C1F0400 */ lui $ra, (0x04000400 >> 16) # lui $ra, 0x400 +/* 0791E8 800785E8 93340001 */ lbu $s4, 1($t9) +/* 0791EC 800785EC 3C17800E */ lui $s7, %hi(D_800DE4C0) # $s7, 0x800e +/* 0791F0 800785F0 00117080 */ sll $t6, $s1, 2 +/* 0791F4 800785F4 0258082A */ slt $at, $s2, $t8 +/* 0791F8 800785F8 00147880 */ sll $t7, $s4, 2 +/* 0791FC 800785FC 26F7E4C0 */ addiu $s7, %lo(D_800DE4C0) # addiu $s7, $s7, -0x1b40 +/* 079200 80078600 37FF0400 */ ori $ra, (0x04000400 & 0xFFFF) # ori $ra, $ra, 0x400 +/* 079204 80078604 3C0BE400 */ lui $t3, 0xe400 +/* 079208 80078608 3C0CB300 */ lui $t4, 0xb300 +/* 07920C 8007860C 3C0DB200 */ lui $t5, 0xb200 +/* 079210 80078610 01C08825 */ move $s1, $t6 +/* 079214 80078614 0300B025 */ move $s6, $t8 +/* 079218 80078618 10200045 */ beqz $at, .L80078730 +/* 07921C 8007861C 01E0A025 */ move $s4, $t7 +/* 079220 80078620 2615FFFF */ addiu $s5, $s0, -1 +.L80078624: +/* 079224 80078624 00131023 */ negu $v0, $s3 +/* 079228 80078628 0051082A */ slt $at, $v0, $s1 +/* 07922C 8007862C 1020003A */ beqz $at, .L80078718 +/* 079230 80078630 02544821 */ addu $t1, $s2, $s4 +/* 079234 80078634 312E0FFF */ andi $t6, $t1, 0xfff +/* 079238 80078638 01C04825 */ move $t1, $t6 +/* 07923C 8007863C 324A0FFF */ andi $t2, $s2, 0xfff +.L80078640: +/* 079240 80078640 0441001A */ bgez $v0, .L800786AC +/* 079244 80078644 00503021 */ addu $a2, $v0, $s0 +/* 079248 80078648 8C830000 */ lw $v1, ($a0) +/* 07924C 8007864C 00503021 */ addu $a2, $v0, $s0 +/* 079250 80078650 30D90FFF */ andi $t9, $a2, 0xfff +/* 079254 80078654 24780008 */ addiu $t8, $v1, 8 +/* 079258 80078658 AC980000 */ sw $t8, ($a0) +/* 07925C 8007865C 00197B00 */ sll $t7, $t9, 0xc +/* 079260 80078660 01EB7025 */ or $t6, $t7, $t3 +/* 079264 80078664 01C9C025 */ or $t8, $t6, $t1 +/* 079268 80078668 AC780000 */ sw $t8, ($v1) +/* 07926C 8007866C AC6A0004 */ sw $t2, 4($v1) +/* 079270 80078670 8C830000 */ lw $v1, ($a0) +/* 079274 80078674 000278C0 */ sll $t7, $v0, 3 +/* 079278 80078678 24790008 */ addiu $t9, $v1, 8 +/* 07927C 8007867C AC990000 */ sw $t9, ($a0) +/* 079280 80078680 000FC023 */ negu $t8, $t7 +/* 079284 80078684 0018CC00 */ sll $t9, $t8, 0x10 +/* 079288 80078688 AC790004 */ sw $t9, 4($v1) +/* 07928C 8007868C AC6C0000 */ sw $t4, ($v1) +/* 079290 80078690 8C830000 */ lw $v1, ($a0) +/* 079294 80078694 00000000 */ nop +/* 079298 80078698 246F0008 */ addiu $t7, $v1, 8 +/* 07929C 8007869C AC8F0000 */ sw $t7, ($a0) +/* 0792A0 800786A0 AC7F0004 */ sw $ra, 4($v1) +/* 0792A4 800786A4 10000019 */ b .L8007870C +/* 0792A8 800786A8 AC6D0000 */ sw $t5, ($v1) +.L800786AC: +/* 0792AC 800786AC 8C830000 */ lw $v1, ($a0) +/* 0792B0 800786B0 30D80FFF */ andi $t8, $a2, 0xfff +/* 0792B4 800786B4 0018CB00 */ sll $t9, $t8, 0xc +/* 0792B8 800786B8 032B7825 */ or $t7, $t9, $t3 +/* 0792BC 800786BC 246E0008 */ addiu $t6, $v1, 8 +/* 0792C0 800786C0 AC8E0000 */ sw $t6, ($a0) +/* 0792C4 800786C4 30580FFF */ andi $t8, $v0, 0xfff +/* 0792C8 800786C8 0018CB00 */ sll $t9, $t8, 0xc +/* 0792CC 800786CC 01E97025 */ or $t6, $t7, $t1 +/* 0792D0 800786D0 032A7825 */ or $t7, $t9, $t2 +/* 0792D4 800786D4 AC6F0004 */ sw $t7, 4($v1) +/* 0792D8 800786D8 AC6E0000 */ sw $t6, ($v1) +/* 0792DC 800786DC 8C830000 */ lw $v1, ($a0) +/* 0792E0 800786E0 00000000 */ nop +/* 0792E4 800786E4 246E0008 */ addiu $t6, $v1, 8 +/* 0792E8 800786E8 AC8E0000 */ sw $t6, ($a0) +/* 0792EC 800786EC AC600004 */ sw $zero, 4($v1) +/* 0792F0 800786F0 AC6C0000 */ sw $t4, ($v1) +/* 0792F4 800786F4 8C830000 */ lw $v1, ($a0) +/* 0792F8 800786F8 00000000 */ nop +/* 0792FC 800786FC 24780008 */ addiu $t8, $v1, 8 +/* 079300 80078700 AC980000 */ sw $t8, ($a0) +/* 079304 80078704 AC7F0004 */ sw $ra, 4($v1) +/* 079308 80078708 AC6D0000 */ sw $t5, ($v1) +.L8007870C: +/* 07930C 8007870C 00D1082A */ slt $at, $a2, $s1 +/* 079310 80078710 1420FFCB */ bnez $at, .L80078640 +/* 079314 80078714 00C01025 */ move $v0, $a2 +.L80078718: +/* 079318 80078718 8EF90000 */ lw $t9, ($s7) +/* 07931C 8007871C 025E9021 */ addu $s2, $s2, $fp +/* 079320 80078720 0256082A */ slt $at, $s2, $s6 +/* 079324 80078724 02797821 */ addu $t7, $s3, $t9 +/* 079328 80078728 1420FFBE */ bnez $at, .L80078624 +/* 07932C 8007872C 01F59824 */ and $s3, $t7, $s5 +.L80078730: +/* 079330 80078730 8C830000 */ lw $v1, ($a0) +.L80078734: +/* 079334 80078734 3C18E700 */ lui $t8, 0xe700 +/* 079338 80078738 246E0008 */ addiu $t6, $v1, 8 +/* 07933C 8007873C AC8E0000 */ sw $t6, ($a0) +/* 079340 80078740 AC600004 */ sw $zero, 4($v1) +/* 079344 80078744 AC780000 */ sw $t8, ($v1) +/* 079348 80078748 8FBF003C */ lw $ra, 0x3c($sp) +/* 07934C 8007874C 8FBE0038 */ lw $fp, 0x38($sp) +/* 079350 80078750 8FB70034 */ lw $s7, 0x34($sp) +/* 079354 80078754 8FB60030 */ lw $s6, 0x30($sp) +/* 079358 80078758 8FB5002C */ lw $s5, 0x2c($sp) +/* 07935C 8007875C 8FB40028 */ lw $s4, 0x28($sp) +/* 079360 80078760 8FB30024 */ lw $s3, 0x24($sp) +/* 079364 80078764 8FB20020 */ lw $s2, 0x20($sp) +/* 079368 80078768 8FB1001C */ lw $s1, 0x1c($sp) +/* 07936C 8007876C 8FB00018 */ lw $s0, 0x18($sp) +/* 079370 80078770 03E00008 */ jr $ra +/* 079374 80078774 27BD0040 */ addiu $sp, $sp, 0x40 + +/* 079378 80078778 00047E03 */ sra $t7, $a0, 0x18 +/* 07937C 8007877C 3C018012 */ lui $at, %hi(D_80125F30) # $at, 0x8012 +/* 079380 80078780 A02F5F30 */ sb $t7, %lo(D_80125F30)($at) +/* 079384 80078784 3C018012 */ lui $at, %hi(D_80125F31) # $at, 0x8012 +/* 079388 80078788 0004CC03 */ sra $t9, $a0, 0x10 +/* 07938C 8007878C A0395F31 */ sb $t9, %lo(D_80125F31)($at) +/* 079390 80078790 3C018012 */ lui $at, %hi(D_80125F32) # $at, 0x8012 +/* 079394 80078794 00044A03 */ sra $t1, $a0, 8 +/* 079398 80078798 A0295F32 */ sb $t1, %lo(D_80125F32)($at) +/* 07939C 8007879C 3C018012 */ lui $at, %hi(D_80125F33) # $at, 0x8012 +/* 0793A0 800787A0 A0245F33 */ sb $a0, %lo(D_80125F33)($at) +/* 0793A4 800787A4 3C018012 */ lui $at, %hi(D_80125F34) # $at, 0x8012 +/* 0793A8 800787A8 00056603 */ sra $t4, $a1, 0x18 +/* 0793AC 800787AC A02C5F34 */ sb $t4, %lo(D_80125F34)($at) +/* 0793B0 800787B0 3C018012 */ lui $at, %hi(D_80125F35) # $at, 0x8012 +/* 0793B4 800787B4 00057403 */ sra $t6, $a1, 0x10 +/* 0793B8 800787B8 A02E5F35 */ sb $t6, %lo(D_80125F35)($at) +/* 0793BC 800787BC 3C018012 */ lui $at, %hi(D_80125F36) # $at, 0x8012 +/* 0793C0 800787C0 0005C203 */ sra $t8, $a1, 8 +/* 0793C4 800787C4 A0385F36 */ sb $t8, %lo(D_80125F36)($at) +/* 0793C8 800787C8 3C018012 */ lui $at, %hi(D_80125F37) # $at, 0x8012 +/* 0793CC 800787CC A0255F37 */ sb $a1, %lo(D_80125F37)($at) +/* 0793D0 800787D0 3C018012 */ lui $at, %hi(D_80125F38) # $at, 0x8012 +/* 0793D4 800787D4 AC265F38 */ sw $a2, %lo(D_80125F38)($at) +/* 0793D8 800787D8 3C018012 */ lui $at, %hi(D_80125F3C) # $at, 0x8012 +/* 0793DC 800787DC AC275F3C */ sw $a3, %lo(D_80125F3C)($at) +/* 0793E0 800787E0 3C01800E */ lui $at, 0x800e +/* 0793E4 800787E4 24080001 */ li $t0, 1 +/* 0793E8 800787E8 03E00008 */ jr $ra +/* 0793EC 800787EC AC28E4CC */ sw $t0, -0x1b34($at) + +/* 0793F0 800787F0 3C01800E */ lui $at, 0x800e +/* 0793F4 800787F4 03E00008 */ jr $ra +/* 0793F8 800787F8 AC20E4CC */ sw $zero, -0x1b34($at) + diff --git a/asm/non_matchings/unknown_078050/func_800787FC.s b/asm/non_matchings/unknown_078050/func_800787FC.s new file mode 100644 index 00000000..e2d7bc08 --- /dev/null +++ b/asm/non_matchings/unknown_078050/func_800787FC.s @@ -0,0 +1,182 @@ +glabel func_800787FC +/* 0793FC 800787FC 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 079400 80078800 AFBF001C */ sw $ra, 0x1c($sp) +/* 079404 80078804 AFB00018 */ sw $s0, 0x18($sp) +/* 079408 80078808 0C01E948 */ jal func_8007A520 +/* 07940C 8007880C 00808025 */ move $s0, $a0 +/* 079410 80078810 00027403 */ sra $t6, $v0, 0x10 +/* 079414 80078814 31DFFFFF */ andi $ra, $t6, 0xffff +/* 079418 80078818 AFBF0020 */ sw $ra, 0x20($sp) +/* 07941C 8007881C 8E030000 */ lw $v1, ($s0) +/* 079420 80078820 3C0E800E */ lui $t6, %hi(D_800DE5E0) # $t6, 0x800e +/* 079424 80078824 24780008 */ addiu $t8, $v1, 8 +/* 079428 80078828 AE180000 */ sw $t8, ($s0) +/* 07942C 8007882C 25CEE5E0 */ addiu $t6, %lo(D_800DE5E0) # addiu $t6, $t6, -0x1a20 +/* 079430 80078830 3C190600 */ lui $t9, 0x600 +/* 079434 80078834 AC790000 */ sw $t9, ($v1) +/* 079438 80078838 AC6E0004 */ sw $t6, 4($v1) +/* 07943C 8007883C 8E030000 */ lw $v1, ($s0) +/* 079440 80078840 3C18FA00 */ lui $t8, 0xfa00 +/* 079444 80078844 246F0008 */ addiu $t7, $v1, 8 +/* 079448 80078848 AE0F0000 */ sw $t7, ($s0) +/* 07944C 8007884C 3C198012 */ lui $t9, %hi(D_80125F30) # $t9, 0x8012 +/* 079450 80078850 AC780000 */ sw $t8, ($v1) +/* 079454 80078854 932E5F30 */ lbu $t6, %lo(D_80125F30)($t9) +/* 079458 80078858 3C188012 */ lui $t8, %hi(D_80125F31) # $t8, 0x8012 +/* 07945C 8007885C 93195F31 */ lbu $t9, %lo(D_80125F31)($t8) +/* 079460 80078860 000E7E00 */ sll $t7, $t6, 0x18 +/* 079464 80078864 00197400 */ sll $t6, $t9, 0x10 +/* 079468 80078868 01EEC025 */ or $t8, $t7, $t6 +/* 07946C 8007886C 3C198012 */ lui $t9, %hi(D_80125F32) # $t9, 0x8012 +/* 079470 80078870 932F5F32 */ lbu $t7, %lo(D_80125F32)($t9) +/* 079474 80078874 304DFFFF */ andi $t5, $v0, 0xffff +/* 079478 80078878 000F7200 */ sll $t6, $t7, 8 +/* 07947C 8007887C 030EC825 */ or $t9, $t8, $t6 +/* 079480 80078880 3C0F8012 */ lui $t7, %hi(D_80125F33) # $t7, 0x8012 +/* 079484 80078884 91F85F33 */ lbu $t8, %lo(D_80125F33)($t7) +/* 079488 80078888 01A05825 */ move $t3, $t5 +/* 07948C 8007888C 03387025 */ or $t6, $t9, $t8 +/* 079490 80078890 AC6E0004 */ sw $t6, 4($v1) +/* 079494 80078894 8FAF0020 */ lw $t7, 0x20($sp) +/* 079498 80078898 00004025 */ move $t0, $zero +/* 07949C 8007889C 19E00032 */ blez $t7, .L80078968 +/* 0794A0 800788A0 00006025 */ move $t4, $zero +/* 0794A4 800788A4 3C068012 */ lui $a2, %hi(D_80125F38) # $a2, 0x8012 +/* 0794A8 800788A8 3C098012 */ lui $t1, %hi(D_80125F3C) # $t1, 0x8012 +/* 0794AC 800788AC 3C078012 */ lui $a3, %hi(D_80125F38) # $a3, 0x8012 +/* 0794B0 800788B0 8CC65F38 */ lw $a2, %lo(D_80125F38)($a2) +/* 0794B4 800788B4 24E75F38 */ addiu $a3, %lo(D_80125F38) # addiu $a3, $a3, 0x5f38 +/* 0794B8 800788B8 25295F3C */ addiu $t1, %lo(D_80125F3C) # addiu $t1, $t1, 0x5f3c +/* 0794BC 800788BC 3C0AF600 */ lui $t2, 0xf600 +.L800788C0: +/* 0794C0 800788C0 01860019 */ multu $t4, $a2 +/* 0794C4 800788C4 310503FF */ andi $a1, $t0, 0x3ff +/* 0794C8 800788C8 0005C880 */ sll $t9, $a1, 2 +/* 0794CC 800788CC 03202825 */ move $a1, $t9 +/* 0794D0 800788D0 00001012 */ mflo $v0 +/* 0794D4 800788D4 004D082A */ slt $at, $v0, $t5 +/* 0794D8 800788D8 1020001C */ beqz $at, .L8007894C +/* 0794DC 800788DC 00000000 */ nop +.L800788E0: +/* 0794E0 800788E0 8E030000 */ lw $v1, ($s0) +/* 0794E4 800788E4 00000000 */ nop +/* 0794E8 800788E8 24780008 */ addiu $t8, $v1, 8 +/* 0794EC 800788EC AE180000 */ sw $t8, ($s0) +/* 0794F0 800788F0 8CEE0000 */ lw $t6, ($a3) +/* 0794F4 800788F4 00000000 */ nop +/* 0794F8 800788F8 004E7821 */ addu $t7, $v0, $t6 +/* 0794FC 800788FC 31F903FF */ andi $t9, $t7, 0x3ff +/* 079500 80078900 8D2F0000 */ lw $t7, ($t1) +/* 079504 80078904 0019C380 */ sll $t8, $t9, 0xe +/* 079508 80078908 030A7025 */ or $t6, $t8, $t2 +/* 07950C 8007890C 010FC821 */ addu $t9, $t0, $t7 +/* 079510 80078910 333803FF */ andi $t8, $t9, 0x3ff +/* 079514 80078914 00187880 */ sll $t7, $t8, 2 +/* 079518 80078918 01CFC825 */ or $t9, $t6, $t7 +/* 07951C 8007891C 305803FF */ andi $t8, $v0, 0x3ff +/* 079520 80078920 00187380 */ sll $t6, $t8, 0xe +/* 079524 80078924 01C57825 */ or $t7, $t6, $a1 +/* 079528 80078928 AC6F0004 */ sw $t7, 4($v1) +/* 07952C 8007892C AC790000 */ sw $t9, ($v1) +/* 079530 80078930 8CE60000 */ lw $a2, ($a3) +/* 079534 80078934 00000000 */ nop +/* 079538 80078938 0006C840 */ sll $t9, $a2, 1 +/* 07953C 8007893C 00591021 */ addu $v0, $v0, $t9 +/* 079540 80078940 004B082A */ slt $at, $v0, $t3 +/* 079544 80078944 1420FFE6 */ bnez $at, .L800788E0 +/* 079548 80078948 00000000 */ nop +.L8007894C: +/* 07954C 8007894C 8D380000 */ lw $t8, ($t1) +/* 079550 80078950 398E0001 */ xori $t6, $t4, 1 +/* 079554 80078954 01184021 */ addu $t0, $t0, $t8 +/* 079558 80078958 011F082A */ slt $at, $t0, $ra +/* 07955C 8007895C 1420FFD8 */ bnez $at, .L800788C0 +/* 079560 80078960 01C06025 */ move $t4, $t6 +/* 079564 80078964 00004025 */ move $t0, $zero +.L80078968: +/* 079568 80078968 8E030000 */ lw $v1, ($s0) +/* 07956C 8007896C 3C19FA00 */ lui $t9, 0xfa00 +/* 079570 80078970 246F0008 */ addiu $t7, $v1, 8 +/* 079574 80078974 AE0F0000 */ sw $t7, ($s0) +/* 079578 80078978 3C188012 */ lui $t8, %hi(D_80125F34) # $t8, 0x8012 +/* 07957C 8007897C AC790000 */ sw $t9, ($v1) +/* 079580 80078980 930E5F34 */ lbu $t6, %lo(D_80125F34)($t8) +/* 079584 80078984 3C198012 */ lui $t9, %hi(D_80125F35) # $t9, 0x8012 +/* 079588 80078988 93385F35 */ lbu $t8, %lo(D_80125F35)($t9) +/* 07958C 8007898C 000E7E00 */ sll $t7, $t6, 0x18 +/* 079590 80078990 00187400 */ sll $t6, $t8, 0x10 +/* 079594 80078994 01EEC825 */ or $t9, $t7, $t6 +/* 079598 80078998 3C188012 */ lui $t8, %hi(D_80125F36) # $t8, 0x8012 +/* 07959C 8007899C 930F5F36 */ lbu $t7, %lo(D_80125F36)($t8) +/* 0795A0 800789A0 3C078012 */ lui $a3, %hi(D_80125F38) # $a3, 0x8012 +/* 0795A4 800789A4 000F7200 */ sll $t6, $t7, 8 +/* 0795A8 800789A8 032EC025 */ or $t8, $t9, $t6 +/* 0795AC 800789AC 3C0F8012 */ lui $t7, %hi(D_80125F37) # $t7, 0x8012 +/* 0795B0 800789B0 91F95F37 */ lbu $t9, %lo(D_80125F37)($t7) +/* 0795B4 800789B4 3C098012 */ lui $t1, %hi(D_80125F3C) # $t1, 0x8012 +/* 0795B8 800789B8 03197025 */ or $t6, $t8, $t9 +/* 0795BC 800789BC AC6E0004 */ sw $t6, 4($v1) +/* 0795C0 800789C0 8FAF0020 */ lw $t7, 0x20($sp) +/* 0795C4 800789C4 25295F3C */ addiu $t1, %lo(D_80125F3C) # addiu $t1, $t1, 0x5f3c +/* 0795C8 800789C8 24E75F38 */ addiu $a3, %lo(D_80125F38) # addiu $a3, $a3, 0x5f38 +/* 0795CC 800789CC 3C0AF600 */ lui $t2, 0xf600 +/* 0795D0 800789D0 19E0002C */ blez $t7, .L80078A84 +/* 0795D4 800789D4 240C0001 */ li $t4, 1 +/* 0795D8 800789D8 8CE60000 */ lw $a2, ($a3) +/* 0795DC 800789DC 00000000 */ nop +.L800789E0: +/* 0795E0 800789E0 01860019 */ multu $t4, $a2 +/* 0795E4 800789E4 310503FF */ andi $a1, $t0, 0x3ff +/* 0795E8 800789E8 0005C080 */ sll $t8, $a1, 2 +/* 0795EC 800789EC 03002825 */ move $a1, $t8 +/* 0795F0 800789F0 00001012 */ mflo $v0 +/* 0795F4 800789F4 004D082A */ slt $at, $v0, $t5 +/* 0795F8 800789F8 1020001C */ beqz $at, .L80078A6C +/* 0795FC 800789FC 00000000 */ nop +.L80078A00: +/* 079600 80078A00 8E030000 */ lw $v1, ($s0) +/* 079604 80078A04 00000000 */ nop +/* 079608 80078A08 24790008 */ addiu $t9, $v1, 8 +/* 07960C 80078A0C AE190000 */ sw $t9, ($s0) +/* 079610 80078A10 8CEE0000 */ lw $t6, ($a3) +/* 079614 80078A14 00000000 */ nop +/* 079618 80078A18 004E7821 */ addu $t7, $v0, $t6 +/* 07961C 80078A1C 31F803FF */ andi $t8, $t7, 0x3ff +/* 079620 80078A20 8D2F0000 */ lw $t7, ($t1) +/* 079624 80078A24 0018CB80 */ sll $t9, $t8, 0xe +/* 079628 80078A28 032A7025 */ or $t6, $t9, $t2 +/* 07962C 80078A2C 010FC021 */ addu $t8, $t0, $t7 +/* 079630 80078A30 331903FF */ andi $t9, $t8, 0x3ff +/* 079634 80078A34 00197880 */ sll $t7, $t9, 2 +/* 079638 80078A38 01CFC025 */ or $t8, $t6, $t7 +/* 07963C 80078A3C 305903FF */ andi $t9, $v0, 0x3ff +/* 079640 80078A40 00197380 */ sll $t6, $t9, 0xe +/* 079644 80078A44 01C57825 */ or $t7, $t6, $a1 +/* 079648 80078A48 AC6F0004 */ sw $t7, 4($v1) +/* 07964C 80078A4C AC780000 */ sw $t8, ($v1) +/* 079650 80078A50 8CE60000 */ lw $a2, ($a3) +/* 079654 80078A54 00000000 */ nop +/* 079658 80078A58 0006C040 */ sll $t8, $a2, 1 +/* 07965C 80078A5C 00581021 */ addu $v0, $v0, $t8 +/* 079660 80078A60 004B082A */ slt $at, $v0, $t3 +/* 079664 80078A64 1420FFE6 */ bnez $at, .L80078A00 +/* 079668 80078A68 00000000 */ nop +.L80078A6C: +/* 07966C 80078A6C 8D390000 */ lw $t9, ($t1) +/* 079670 80078A70 398E0001 */ xori $t6, $t4, 1 +/* 079674 80078A74 01194021 */ addu $t0, $t0, $t9 +/* 079678 80078A78 011F082A */ slt $at, $t0, $ra +/* 07967C 80078A7C 1420FFD8 */ bnez $at, .L800789E0 +/* 079680 80078A80 01C06025 */ move $t4, $t6 +.L80078A84: +/* 079684 80078A84 8E030000 */ lw $v1, ($s0) +/* 079688 80078A88 3C18E700 */ lui $t8, 0xe700 +/* 07968C 80078A8C 246F0008 */ addiu $t7, $v1, 8 +/* 079690 80078A90 AE0F0000 */ sw $t7, ($s0) +/* 079694 80078A94 AC600004 */ sw $zero, 4($v1) +/* 079698 80078A98 AC780000 */ sw $t8, ($v1) +/* 07969C 80078A9C 8FBF001C */ lw $ra, 0x1c($sp) +/* 0796A0 80078AA0 8FB00018 */ lw $s0, 0x18($sp) +/* 0796A4 80078AA4 03E00008 */ jr $ra +/* 0796A8 80078AA8 27BD0050 */ addiu $sp, $sp, 0x50 + diff --git a/asm/non_matchings/unknown_078050/func_80078AAC.s b/asm/non_matchings/unknown_078050/func_80078AAC.s new file mode 100644 index 00000000..a6be530c --- /dev/null +++ b/asm/non_matchings/unknown_078050/func_80078AAC.s @@ -0,0 +1,5 @@ +glabel func_80078AAC +/* 0796AC 80078AAC 3C01800E */ lui $at, 0x800e +/* 0796B0 80078AB0 03E00008 */ jr $ra +/* 0796B4 80078AB4 AC24E4D0 */ sw $a0, -0x1b30($at) + diff --git a/asm/non_matchings/unknown_078050/func_80078AB8.s b/asm/non_matchings/unknown_078050/func_80078AB8.s new file mode 100644 index 00000000..70fcc6d0 --- /dev/null +++ b/asm/non_matchings/unknown_078050/func_80078AB8.s @@ -0,0 +1,153 @@ +glabel func_80078AB8 +/* 0796B8 80078AB8 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0796BC 80078ABC AFBF002C */ sw $ra, 0x2c($sp) +/* 0796C0 80078AC0 AFBE0028 */ sw $fp, 0x28($sp) +/* 0796C4 80078AC4 AFB70024 */ sw $s7, 0x24($sp) +/* 0796C8 80078AC8 AFB60020 */ sw $s6, 0x20($sp) +/* 0796CC 80078ACC AFB5001C */ sw $s5, 0x1c($sp) +/* 0796D0 80078AD0 AFB40018 */ sw $s4, 0x18($sp) +/* 0796D4 80078AD4 AFB30014 */ sw $s3, 0x14($sp) +/* 0796D8 80078AD8 AFB20010 */ sw $s2, 0x10($sp) +/* 0796DC 80078ADC AFB1000C */ sw $s1, 0xc($sp) +/* 0796E0 80078AE0 AFB00008 */ sw $s0, 8($sp) +/* 0796E4 80078AE4 8C820000 */ lw $v0, ($a0) +/* 0796E8 80078AE8 3C18800E */ lui $t8, %hi(D_800DE628) # $t8, 0x800e +/* 0796EC 80078AEC 244E0008 */ addiu $t6, $v0, 8 +/* 0796F0 80078AF0 AC8E0000 */ sw $t6, ($a0) +/* 0796F4 80078AF4 2718E628 */ addiu $t8, %lo(D_800DE628) # addiu $t8, $t8, -0x19d8 +/* 0796F8 80078AF8 3C0F0600 */ lui $t7, 0x600 +/* 0796FC 80078AFC AC4F0000 */ sw $t7, ($v0) +/* 079700 80078B00 AC580004 */ sw $t8, 4($v0) +/* 079704 80078B04 8C820000 */ lw $v0, ($a0) +/* 079708 80078B08 3C0EFA00 */ lui $t6, 0xfa00 +/* 07970C 80078B0C 24590008 */ addiu $t9, $v0, 8 +/* 079710 80078B10 AC990000 */ sw $t9, ($a0) +/* 079714 80078B14 AC4E0000 */ sw $t6, ($v0) +/* 079718 80078B18 93B80043 */ lbu $t8, 0x43($sp) +/* 07971C 80078B1C 93AF0047 */ lbu $t7, 0x47($sp) +/* 079720 80078B20 0018CE00 */ sll $t9, $t8, 0x18 +/* 079724 80078B24 000FC400 */ sll $t8, $t7, 0x10 +/* 079728 80078B28 03387025 */ or $t6, $t9, $t8 +/* 07972C 80078B2C 93B9004B */ lbu $t9, 0x4b($sp) +/* 079730 80078B30 00808025 */ move $s0, $a0 +/* 079734 80078B34 0019C200 */ sll $t8, $t9, 8 +/* 079738 80078B38 01D87825 */ or $t7, $t6, $t8 +/* 07973C 80078B3C 93AE004F */ lbu $t6, 0x4f($sp) +/* 079740 80078B40 0006F080 */ sll $fp, $a2, 2 +/* 079744 80078B44 01EEC025 */ or $t8, $t7, $t6 +/* 079748 80078B48 AC580004 */ sw $t8, 4($v0) +/* 07974C 80078B4C 8CA80000 */ lw $t0, ($a1) +/* 079750 80078B50 0007F880 */ sll $ra, $a3, 2 +/* 079754 80078B54 11000051 */ beqz $t0, .L80078C9C +/* 079758 80078B58 00A05025 */ move $t2, $a1 +/* 07975C 80078B5C 3C170400 */ lui $s7, (0x04000400 >> 16) # lui $s7, 0x400 +/* 079760 80078B60 36F70400 */ ori $s7, (0x04000400 & 0xFFFF) # ori $s7, $s7, 0x400 +/* 079764 80078B64 3C16B200 */ lui $s6, 0xb200 +/* 079768 80078B68 3C15B300 */ lui $s5, 0xb300 +/* 07976C 80078B6C 3C14E400 */ lui $s4, 0xe400 +/* 079770 80078B70 3C138000 */ lui $s3, 0x8000 +/* 079774 80078B74 3C120700 */ lui $s2, 0x700 +.L80078B78: +/* 079778 80078B78 854E0004 */ lh $t6, 4($t2) +/* 07977C 80078B7C 85590006 */ lh $t9, 6($t2) +/* 079780 80078B80 000EC080 */ sll $t8, $t6, 2 +/* 079784 80078B84 910E0000 */ lbu $t6, ($t0) +/* 079788 80078B88 00197880 */ sll $t7, $t9, 2 +/* 07978C 80078B8C 91190001 */ lbu $t9, 1($t0) +/* 079790 80078B90 031E3021 */ addu $a2, $t8, $fp +/* 079794 80078B94 01FF3821 */ addu $a3, $t7, $ra +/* 079798 80078B98 000EC080 */ sll $t8, $t6, 2 +/* 07979C 80078B9C 03065821 */ addu $t3, $t8, $a2 +/* 0797A0 80078BA0 00197880 */ sll $t7, $t9, 2 +/* 0797A4 80078BA4 19600039 */ blez $t3, .L80078C8C +/* 0797A8 80078BA8 01E76021 */ addu $t4, $t7, $a3 +/* 0797AC 80078BAC 19800037 */ blez $t4, .L80078C8C +/* 0797B0 80078BB0 00006825 */ move $t5, $zero +/* 0797B4 80078BB4 04C10004 */ bgez $a2, .L80078BC8 +/* 0797B8 80078BB8 00008825 */ move $s1, $zero +/* 0797BC 80078BBC 000668C0 */ sll $t5, $a2, 3 +/* 0797C0 80078BC0 000D6823 */ negu $t5, $t5 +/* 0797C4 80078BC4 00003025 */ move $a2, $zero +.L80078BC8: +/* 0797C8 80078BC8 04E10004 */ bgez $a3, .L80078BDC +/* 0797CC 80078BCC 00000000 */ nop +/* 0797D0 80078BD0 000788C0 */ sll $s1, $a3, 3 +/* 0797D4 80078BD4 00118823 */ negu $s1, $s1 +/* 0797D8 80078BD8 00003825 */ move $a3, $zero +.L80078BDC: +/* 0797DC 80078BDC 8E020000 */ lw $v0, ($s0) +/* 0797E0 80078BE0 00000000 */ nop +/* 0797E4 80078BE4 244E0008 */ addiu $t6, $v0, 8 +/* 0797E8 80078BE8 AE0E0000 */ sw $t6, ($s0) +/* 0797EC 80078BEC 8504000A */ lh $a0, 0xa($t0) +/* 0797F0 80078BF0 00000000 */ nop +/* 0797F4 80078BF4 309800FF */ andi $t8, $a0, 0xff +/* 0797F8 80078BF8 0018CC00 */ sll $t9, $t8, 0x10 +/* 0797FC 80078BFC 000470C0 */ sll $t6, $a0, 3 +/* 079800 80078C00 31D8FFFF */ andi $t8, $t6, 0xffff +/* 079804 80078C04 03327825 */ or $t7, $t9, $s2 +/* 079808 80078C08 01F8C825 */ or $t9, $t7, $t8 +/* 07980C 80078C0C AC590000 */ sw $t9, ($v0) +/* 079810 80078C10 8D0E000C */ lw $t6, 0xc($t0) +/* 079814 80078C14 31790FFF */ andi $t9, $t3, 0xfff +/* 079818 80078C18 01D37821 */ addu $t7, $t6, $s3 +/* 07981C 80078C1C AC4F0004 */ sw $t7, 4($v0) +/* 079820 80078C20 8E020000 */ lw $v0, ($s0) +/* 079824 80078C24 00197300 */ sll $t6, $t9, 0xc +/* 079828 80078C28 24580008 */ addiu $t8, $v0, 8 +/* 07982C 80078C2C AE180000 */ sw $t8, ($s0) +/* 079830 80078C30 31980FFF */ andi $t8, $t4, 0xfff +/* 079834 80078C34 01D47825 */ or $t7, $t6, $s4 +/* 079838 80078C38 01F8C825 */ or $t9, $t7, $t8 +/* 07983C 80078C3C 30CE0FFF */ andi $t6, $a2, 0xfff +/* 079840 80078C40 000E7B00 */ sll $t7, $t6, 0xc +/* 079844 80078C44 30F80FFF */ andi $t8, $a3, 0xfff +/* 079848 80078C48 AC590000 */ sw $t9, ($v0) +/* 07984C 80078C4C 01F8C825 */ or $t9, $t7, $t8 +/* 079850 80078C50 AC590004 */ sw $t9, 4($v0) +/* 079854 80078C54 8E020000 */ lw $v0, ($s0) +/* 079858 80078C58 3239FFFF */ andi $t9, $s1, 0xffff +/* 07985C 80078C5C 244E0008 */ addiu $t6, $v0, 8 +/* 079860 80078C60 AE0E0000 */ sw $t6, ($s0) +/* 079864 80078C64 000DC400 */ sll $t8, $t5, 0x10 +/* 079868 80078C68 03197025 */ or $t6, $t8, $t9 +/* 07986C 80078C6C AC4E0004 */ sw $t6, 4($v0) +/* 079870 80078C70 AC550000 */ sw $s5, ($v0) +/* 079874 80078C74 8E020000 */ lw $v0, ($s0) +/* 079878 80078C78 00000000 */ nop +/* 07987C 80078C7C 244F0008 */ addiu $t7, $v0, 8 +/* 079880 80078C80 AE0F0000 */ sw $t7, ($s0) +/* 079884 80078C84 AC570004 */ sw $s7, 4($v0) +/* 079888 80078C88 AC560000 */ sw $s6, ($v0) +.L80078C8C: +/* 07988C 80078C8C 8D480008 */ lw $t0, 8($t2) +/* 079890 80078C90 254A0008 */ addiu $t2, $t2, 8 +/* 079894 80078C94 1500FFB8 */ bnez $t0, .L80078B78 +/* 079898 80078C98 00000000 */ nop +.L80078C9C: +/* 07989C 80078C9C 8E020000 */ lw $v0, ($s0) +/* 0798A0 80078CA0 3C19E700 */ lui $t9, 0xe700 +/* 0798A4 80078CA4 24580008 */ addiu $t8, $v0, 8 +/* 0798A8 80078CA8 AE180000 */ sw $t8, ($s0) +/* 0798AC 80078CAC AC400004 */ sw $zero, 4($v0) +/* 0798B0 80078CB0 AC590000 */ sw $t9, ($v0) +/* 0798B4 80078CB4 8E020000 */ lw $v0, ($s0) +/* 0798B8 80078CB8 2418FFFF */ li $t8, -1 +/* 0798BC 80078CBC 244E0008 */ addiu $t6, $v0, 8 +/* 0798C0 80078CC0 AE0E0000 */ sw $t6, ($s0) +/* 0798C4 80078CC4 3C0FFA00 */ lui $t7, 0xfa00 +/* 0798C8 80078CC8 AC4F0000 */ sw $t7, ($v0) +/* 0798CC 80078CCC AC580004 */ sw $t8, 4($v0) +/* 0798D0 80078CD0 8FBF002C */ lw $ra, 0x2c($sp) +/* 0798D4 80078CD4 8FBE0028 */ lw $fp, 0x28($sp) +/* 0798D8 80078CD8 8FB70024 */ lw $s7, 0x24($sp) +/* 0798DC 80078CDC 8FB60020 */ lw $s6, 0x20($sp) +/* 0798E0 80078CE0 8FB5001C */ lw $s5, 0x1c($sp) +/* 0798E4 80078CE4 8FB40018 */ lw $s4, 0x18($sp) +/* 0798E8 80078CE8 8FB30014 */ lw $s3, 0x14($sp) +/* 0798EC 80078CEC 8FB20010 */ lw $s2, 0x10($sp) +/* 0798F0 80078CF0 8FB1000C */ lw $s1, 0xc($sp) +/* 0798F4 80078CF4 8FB00008 */ lw $s0, 8($sp) +/* 0798F8 80078CF8 03E00008 */ jr $ra +/* 0798FC 80078CFC 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_078050/func_80078D00.s b/asm/non_matchings/unknown_078050/func_80078D00.s new file mode 100644 index 00000000..d83395b7 --- /dev/null +++ b/asm/non_matchings/unknown_078050/func_80078D00.s @@ -0,0 +1,430 @@ +glabel func_80078D00 +/* 079900 80078D00 27BDFF50 */ addiu $sp, $sp, -0xb0 +/* 079904 80078D04 AFBF003C */ sw $ra, 0x3c($sp) +/* 079908 80078D08 AFB20020 */ sw $s2, 0x20($sp) +/* 07990C 80078D0C AFB00018 */ sw $s0, 0x18($sp) +/* 079910 80078D10 00808025 */ move $s0, $a0 +/* 079914 80078D14 00A09025 */ move $s2, $a1 +/* 079918 80078D18 AFBE0038 */ sw $fp, 0x38($sp) +/* 07991C 80078D1C AFB70034 */ sw $s7, 0x34($sp) +/* 079920 80078D20 AFB60030 */ sw $s6, 0x30($sp) +/* 079924 80078D24 AFB5002C */ sw $s5, 0x2c($sp) +/* 079928 80078D28 AFB40028 */ sw $s4, 0x28($sp) +/* 07992C 80078D2C AFB30024 */ sw $s3, 0x24($sp) +/* 079930 80078D30 AFB1001C */ sw $s1, 0x1c($sp) +/* 079934 80078D34 AFA600B8 */ sw $a2, 0xb8($sp) +/* 079938 80078D38 0C01E948 */ jal func_8007A520 +/* 07993C 80078D3C AFA700BC */ sw $a3, 0xbc($sp) +/* 079940 80078D40 8FA900C8 */ lw $t1, 0xc8($sp) +/* 079944 80078D44 240100FF */ li $at, 255 +/* 079948 80078D48 312E00FF */ andi $t6, $t1, 0xff +/* 07994C 80078D4C 15C10009 */ bne $t6, $at, .L80078D74 +/* 079950 80078D50 8FA800CC */ lw $t0, 0xcc($sp) +/* 079954 80078D54 8FA800CC */ lw $t0, 0xcc($sp) +/* 079958 80078D58 3C0E800E */ lui $t6, %hi(D_800DE6A8) # $t6, 0x800e +/* 07995C 80078D5C 311800FF */ andi $t8, $t0, 0xff +/* 079960 80078D60 0018C900 */ sll $t9, $t8, 4 +/* 079964 80078D64 25CEE6A8 */ addiu $t6, %lo(D_800DE6A8) # addiu $t6, $t6, -0x1958 +/* 079968 80078D68 10000007 */ b .L80078D88 +/* 07996C 80078D6C 032E3821 */ addu $a3, $t9, $t6 +/* 079970 80078D70 8FA800CC */ lw $t0, 0xcc($sp) +.L80078D74: +/* 079974 80078D74 3C0E800E */ lui $t6, %hi(D_800DE6E8) # $t6, 0x800e +/* 079978 80078D78 311800FF */ andi $t8, $t0, 0xff +/* 07997C 80078D7C 0018C900 */ sll $t9, $t8, 4 +/* 079980 80078D80 25CEE6E8 */ addiu $t6, %lo(D_800DE6E8) # addiu $t6, $t6, -0x1918 +/* 079984 80078D84 032E3821 */ addu $a3, $t9, $t6 +.L80078D88: +/* 079988 80078D88 8E040000 */ lw $a0, ($s0) +/* 07998C 80078D8C C7A000C0 */ lwc1 $f0, 0xc0($sp) +/* 079990 80078D90 248F0008 */ addiu $t7, $a0, 8 +/* 079994 80078D94 AE0F0000 */ sw $t7, ($s0) +/* 079998 80078D98 3C19800E */ lui $t9, %hi(D_800DE670) # $t9, 0x800e +/* 07999C 80078D9C 2739E670 */ addiu $t9, %lo(D_800DE670) # addiu $t9, $t9, -0x1990 +/* 0799A0 80078DA0 3C180600 */ lui $t8, 0x600 +/* 0799A4 80078DA4 AC980000 */ sw $t8, ($a0) +/* 0799A8 80078DA8 AC990004 */ sw $t9, 4($a0) +/* 0799AC 80078DAC 8E050000 */ lw $a1, ($s0) +/* 0799B0 80078DB0 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 0799B4 80078DB4 44816000 */ mtc1 $at, $f12 +/* 0799B8 80078DB8 24AE0008 */ addiu $t6, $a1, 8 +/* 0799BC 80078DBC AE0E0000 */ sw $t6, ($s0) +/* 0799C0 80078DC0 3C018000 */ lui $at, 0x8000 +/* 0799C4 80078DC4 3C0F0702 */ lui $t7, (0x07020010 >> 16) # lui $t7, 0x702 +/* 0799C8 80078DC8 35EF0010 */ ori $t7, (0x07020010 & 0xFFFF) # ori $t7, $t7, 0x10 +/* 0799CC 80078DCC 00E1C021 */ addu $t8, $a3, $at +/* 0799D0 80078DD0 ACB80004 */ sw $t8, 4($a1) +/* 0799D4 80078DD4 ACAF0000 */ sw $t7, ($a1) +/* 0799D8 80078DD8 8E060000 */ lw $a2, ($s0) +/* 0799DC 80078DDC 3C0EFA00 */ lui $t6, 0xfa00 +/* 0799E0 80078DE0 24D90008 */ addiu $t9, $a2, 8 +/* 0799E4 80078DE4 AE190000 */ sw $t9, ($s0) +/* 0799E8 80078DE8 460C0002 */ mul.s $f0, $f0, $f12 +/* 0799EC 80078DEC ACC90004 */ sw $t1, 4($a2) +/* 0799F0 80078DF0 ACCE0000 */ sw $t6, ($a2) +/* 0799F4 80078DF4 C7A200C4 */ lwc1 $f2, 0xc4($sp) +/* 0799F8 80078DF8 8E5F0000 */ lw $ra, ($s2) +/* 0799FC 80078DFC 460C1082 */ mul.s $f2, $f2, $f12 +/* 079A00 80078E00 13E00137 */ beqz $ra, .L800792E0 +/* 079A04 80078E04 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 079A08 80078E08 C7A400B8 */ lwc1 $f4, 0xb8($sp) +/* 079A0C 80078E0C 44813000 */ mtc1 $at, $f6 +/* 079A10 80078E10 C7B000BC */ lwc1 $f16, 0xbc($sp) +/* 079A14 80078E14 46062202 */ mul.s $f8, $f4, $f6 +/* 079A18 80078E18 304FFFFF */ andi $t7, $v0, 0xffff +/* 079A1C 80078E1C 02408825 */ move $s1, $s2 +/* 079A20 80078E20 000FC080 */ sll $t8, $t7, 2 +/* 079A24 80078E24 4459F800 */ cfc1 $t9, $31 +/* 079A28 80078E28 8FB20080 */ lw $s2, 0x80($sp) +/* 079A2C 80078E2C 37210003 */ ori $at, $t9, 3 +/* 079A30 80078E30 38210002 */ xori $at, $at, 2 +/* 079A34 80078E34 44C1F800 */ ctc1 $at, $31 +/* 079A38 80078E38 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 079A3C 80078E3C 460042A4 */ cvt.w.s $f10, $f8 +/* 079A40 80078E40 44819000 */ mtc1 $at, $f18 +/* 079A44 80078E44 44D9F800 */ ctc1 $t9, $31 +/* 079A48 80078E48 44175000 */ mfc1 $s7, $f10 +/* 079A4C 80078E4C 46128102 */ mul.s $f4, $f16, $f18 +/* 079A50 80078E50 8FB3007C */ lw $s3, 0x7c($sp) +/* 079A54 80078E54 AFB80044 */ sw $t8, 0x44($sp) +/* 079A58 80078E58 31151000 */ andi $s5, $t0, 0x1000 +/* 079A5C 80078E5C 444EF800 */ cfc1 $t6, $31 +/* 079A60 80078E60 31162000 */ andi $s6, $t0, 0x2000 +/* 079A64 80078E64 35C10003 */ ori $at, $t6, 3 +/* 079A68 80078E68 38210002 */ xori $at, $at, 2 +/* 079A6C 80078E6C 44C1F800 */ ctc1 $at, $31 +/* 079A70 80078E70 00000000 */ nop +/* 079A74 80078E74 460021A4 */ cvt.w.s $f6, $f4 +/* 079A78 80078E78 44CEF800 */ ctc1 $t6, $31 +/* 079A7C 80078E7C 441E3000 */ mfc1 $fp, $f6 +/* 079A80 80078E80 00000000 */ nop +.L80078E84: +/* 079A84 80078E84 16A00012 */ bnez $s5, .L80078ED0 +/* 079A88 80078E88 00000000 */ nop +/* 079A8C 80078E8C 862F0004 */ lh $t7, 4($s1) +/* 079A90 80078E90 00000000 */ nop +/* 079A94 80078E94 448F4000 */ mtc1 $t7, $f8 +/* 079A98 80078E98 00000000 */ nop +/* 079A9C 80078E9C 468042A0 */ cvt.s.w $f10, $f8 +/* 079AA0 80078EA0 46005402 */ mul.s $f16, $f10, $f0 +/* 079AA4 80078EA4 4458F800 */ cfc1 $t8, $31 +/* 079AA8 80078EA8 00000000 */ nop +/* 079AAC 80078EAC 37010003 */ ori $at, $t8, 3 +/* 079AB0 80078EB0 38210002 */ xori $at, $at, 2 +/* 079AB4 80078EB4 44C1F800 */ ctc1 $at, $31 +/* 079AB8 80078EB8 00000000 */ nop +/* 079ABC 80078EBC 460084A4 */ cvt.w.s $f18, $f16 +/* 079AC0 80078EC0 44199000 */ mfc1 $t9, $f18 +/* 079AC4 80078EC4 44D8F800 */ ctc1 $t8, $31 +/* 079AC8 80078EC8 10000022 */ b .L80078F54 +/* 079ACC 80078ECC 03375821 */ addu $t3, $t9, $s7 +.L80078ED0: +/* 079AD0 80078ED0 862E0004 */ lh $t6, 4($s1) +/* 079AD4 80078ED4 93F90000 */ lbu $t9, ($ra) +/* 079AD8 80078ED8 448E2000 */ mtc1 $t6, $f4 +/* 079ADC 80078EDC 44998000 */ mtc1 $t9, $f16 +/* 079AE0 80078EE0 468021A0 */ cvt.s.w $f6, $f4 +/* 079AE4 80078EE4 46003202 */ mul.s $f8, $f6, $f0 +/* 079AE8 80078EE8 444FF800 */ cfc1 $t7, $31 +/* 079AEC 80078EEC 00000000 */ nop +/* 079AF0 80078EF0 35E10003 */ ori $at, $t7, 3 +/* 079AF4 80078EF4 38210002 */ xori $at, $at, 2 +/* 079AF8 80078EF8 44C1F800 */ ctc1 $at, $31 +/* 079AFC 80078EFC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 079B00 80078F00 460042A4 */ cvt.w.s $f10, $f8 +/* 079B04 80078F04 44185000 */ mfc1 $t8, $f10 +/* 079B08 80078F08 44CFF800 */ ctc1 $t7, $31 +/* 079B0C 80078F0C 02F89023 */ subu $s2, $s7, $t8 +/* 079B10 80078F10 07210004 */ bgez $t9, .L80078F24 +/* 079B14 80078F14 468084A0 */ cvt.s.w $f18, $f16 +/* 079B18 80078F18 44812000 */ mtc1 $at, $f4 +/* 079B1C 80078F1C 00000000 */ nop +/* 079B20 80078F20 46049480 */ add.s $f18, $f18, $f4 +.L80078F24: +/* 079B24 80078F24 46009182 */ mul.s $f6, $f18, $f0 +/* 079B28 80078F28 444EF800 */ cfc1 $t6, $31 +/* 079B2C 80078F2C 00000000 */ nop +/* 079B30 80078F30 35C10003 */ ori $at, $t6, 3 +/* 079B34 80078F34 38210002 */ xori $at, $at, 2 +/* 079B38 80078F38 44C1F800 */ ctc1 $at, $31 +/* 079B3C 80078F3C 00000000 */ nop +/* 079B40 80078F40 46003224 */ cvt.w.s $f8, $f6 +/* 079B44 80078F44 440F4000 */ mfc1 $t7, $f8 +/* 079B48 80078F48 44CEF800 */ ctc1 $t6, $31 +/* 079B4C 80078F4C 024F5823 */ subu $t3, $s2, $t7 +/* 079B50 80078F50 00000000 */ nop +.L80078F54: +/* 079B54 80078F54 16C00012 */ bnez $s6, .L80078FA0 +/* 079B58 80078F58 00000000 */ nop +/* 079B5C 80078F5C 86380006 */ lh $t8, 6($s1) +/* 079B60 80078F60 00000000 */ nop +/* 079B64 80078F64 44985000 */ mtc1 $t8, $f10 +/* 079B68 80078F68 00000000 */ nop +/* 079B6C 80078F6C 46805420 */ cvt.s.w $f16, $f10 +/* 079B70 80078F70 46028102 */ mul.s $f4, $f16, $f2 +/* 079B74 80078F74 4459F800 */ cfc1 $t9, $31 +/* 079B78 80078F78 00000000 */ nop +/* 079B7C 80078F7C 37210003 */ ori $at, $t9, 3 +/* 079B80 80078F80 38210002 */ xori $at, $at, 2 +/* 079B84 80078F84 44C1F800 */ ctc1 $at, $31 +/* 079B88 80078F88 00000000 */ nop +/* 079B8C 80078F8C 460024A4 */ cvt.w.s $f18, $f4 +/* 079B90 80078F90 440E9000 */ mfc1 $t6, $f18 +/* 079B94 80078F94 44D9F800 */ ctc1 $t9, $31 +/* 079B98 80078F98 10000022 */ b .L80079024 +/* 079B9C 80078F9C 01DE5021 */ addu $t2, $t6, $fp +.L80078FA0: +/* 079BA0 80078FA0 862F0006 */ lh $t7, 6($s1) +/* 079BA4 80078FA4 93EE0001 */ lbu $t6, 1($ra) +/* 079BA8 80078FA8 448F3000 */ mtc1 $t7, $f6 +/* 079BAC 80078FAC 448E2000 */ mtc1 $t6, $f4 +/* 079BB0 80078FB0 46803220 */ cvt.s.w $f8, $f6 +/* 079BB4 80078FB4 46024282 */ mul.s $f10, $f8, $f2 +/* 079BB8 80078FB8 4458F800 */ cfc1 $t8, $31 +/* 079BBC 80078FBC 00000000 */ nop +/* 079BC0 80078FC0 37010003 */ ori $at, $t8, 3 +/* 079BC4 80078FC4 38210002 */ xori $at, $at, 2 +/* 079BC8 80078FC8 44C1F800 */ ctc1 $at, $31 +/* 079BCC 80078FCC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 079BD0 80078FD0 46005424 */ cvt.w.s $f16, $f10 +/* 079BD4 80078FD4 44198000 */ mfc1 $t9, $f16 +/* 079BD8 80078FD8 44D8F800 */ ctc1 $t8, $31 +/* 079BDC 80078FDC 03D99823 */ subu $s3, $fp, $t9 +/* 079BE0 80078FE0 05C10004 */ bgez $t6, .L80078FF4 +/* 079BE4 80078FE4 468024A0 */ cvt.s.w $f18, $f4 +/* 079BE8 80078FE8 44813000 */ mtc1 $at, $f6 +/* 079BEC 80078FEC 00000000 */ nop +/* 079BF0 80078FF0 46069480 */ add.s $f18, $f18, $f6 +.L80078FF4: +/* 079BF4 80078FF4 46029202 */ mul.s $f8, $f18, $f2 +/* 079BF8 80078FF8 444FF800 */ cfc1 $t7, $31 +/* 079BFC 80078FFC 00000000 */ nop +/* 079C00 80079000 35E10003 */ ori $at, $t7, 3 +/* 079C04 80079004 38210002 */ xori $at, $at, 2 +/* 079C08 80079008 44C1F800 */ ctc1 $at, $31 +/* 079C0C 8007900C 00000000 */ nop +/* 079C10 80079010 460042A4 */ cvt.w.s $f10, $f8 +/* 079C14 80079014 44185000 */ mfc1 $t8, $f10 +/* 079C18 80079018 44CFF800 */ ctc1 $t7, $31 +/* 079C1C 8007901C 02785023 */ subu $t2, $s3, $t8 +/* 079C20 80079020 00000000 */ nop +.L80079024: +/* 079C24 80079024 8FB90044 */ lw $t9, 0x44($sp) +/* 079C28 80079028 00027403 */ sra $t6, $v0, 0x10 +/* 079C2C 8007902C 0179082A */ slt $at, $t3, $t9 +/* 079C30 80079030 102000A5 */ beqz $at, .L800792C8 +/* 079C34 80079034 31CFFFFF */ andi $t7, $t6, 0xffff +/* 079C38 80079038 000FC080 */ sll $t8, $t7, 2 +/* 079C3C 8007903C 0158082A */ slt $at, $t2, $t8 +/* 079C40 80079040 102000A1 */ beqz $at, .L800792C8 +/* 079C44 80079044 00000000 */ nop +/* 079C48 80079048 16A00015 */ bnez $s5, .L800790A0 +/* 079C4C 8007904C 00000000 */ nop +/* 079C50 80079050 93F90000 */ lbu $t9, ($ra) +/* 079C54 80079054 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 079C58 80079058 44998000 */ mtc1 $t9, $f16 +/* 079C5C 8007905C 07210004 */ bgez $t9, .L80079070 +/* 079C60 80079060 46808120 */ cvt.s.w $f4, $f16 +/* 079C64 80079064 44813000 */ mtc1 $at, $f6 +/* 079C68 80079068 00000000 */ nop +/* 079C6C 8007906C 46062100 */ add.s $f4, $f4, $f6 +.L80079070: +/* 079C70 80079070 46002482 */ mul.s $f18, $f4, $f0 +/* 079C74 80079074 444EF800 */ cfc1 $t6, $31 +/* 079C78 80079078 00000000 */ nop +/* 079C7C 8007907C 35C10003 */ ori $at, $t6, 3 +/* 079C80 80079080 38210002 */ xori $at, $at, 2 +/* 079C84 80079084 44C1F800 */ ctc1 $at, $31 +/* 079C88 80079088 00000000 */ nop +/* 079C8C 8007908C 46009224 */ cvt.w.s $f8, $f18 +/* 079C90 80079090 440F4000 */ mfc1 $t7, $f8 +/* 079C94 80079094 44CEF800 */ ctc1 $t6, $31 +/* 079C98 80079098 01EB9021 */ addu $s2, $t7, $t3 +/* 079C9C 8007909C 00000000 */ nop +.L800790A0: +/* 079CA0 800790A0 16C00015 */ bnez $s6, .L800790F8 +/* 079CA4 800790A4 00000000 */ nop +/* 079CA8 800790A8 93F80001 */ lbu $t8, 1($ra) +/* 079CAC 800790AC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 079CB0 800790B0 44985000 */ mtc1 $t8, $f10 +/* 079CB4 800790B4 07010004 */ bgez $t8, .L800790C8 +/* 079CB8 800790B8 46805420 */ cvt.s.w $f16, $f10 +/* 079CBC 800790BC 44813000 */ mtc1 $at, $f6 +/* 079CC0 800790C0 00000000 */ nop +/* 079CC4 800790C4 46068400 */ add.s $f16, $f16, $f6 +.L800790C8: +/* 079CC8 800790C8 46028102 */ mul.s $f4, $f16, $f2 +/* 079CCC 800790CC 4459F800 */ cfc1 $t9, $31 +/* 079CD0 800790D0 00000000 */ nop +/* 079CD4 800790D4 37210003 */ ori $at, $t9, 3 +/* 079CD8 800790D8 38210002 */ xori $at, $at, 2 +/* 079CDC 800790DC 44C1F800 */ ctc1 $at, $31 +/* 079CE0 800790E0 00000000 */ nop +/* 079CE4 800790E4 460024A4 */ cvt.w.s $f18, $f4 +/* 079CE8 800790E8 440E9000 */ mfc1 $t6, $f18 +/* 079CEC 800790EC 44D9F800 */ ctc1 $t9, $31 +/* 079CF0 800790F0 01CA9821 */ addu $s3, $t6, $t2 +/* 079CF4 800790F4 00000000 */ nop +.L800790F8: +/* 079CF8 800790F8 1A400073 */ blez $s2, .L800792C8 +/* 079CFC 800790FC 00000000 */ nop +/* 079D00 80079100 1A600071 */ blez $s3, .L800792C8 +/* 079D04 80079104 0172082A */ slt $at, $t3, $s2 +/* 079D08 80079108 1020006F */ beqz $at, .L800792C8 +/* 079D0C 8007910C 0153082A */ slt $at, $t2, $s3 +/* 079D10 80079110 1020006D */ beqz $at, .L800792C8 +/* 079D14 80079114 00000000 */ nop +/* 079D18 80079118 93E30000 */ lbu $v1, ($ra) +/* 079D1C 8007911C 024BC023 */ subu $t8, $s2, $t3 +/* 079D20 80079120 2463FFFF */ addiu $v1, $v1, -1 +/* 079D24 80079124 00037B00 */ sll $t7, $v1, 0xc +/* 079D28 80079128 01F8001A */ div $zero, $t7, $t8 +/* 079D2C 8007912C 32590FFF */ andi $t9, $s2, 0xfff +/* 079D30 80079130 17000002 */ bnez $t8, .L8007913C +/* 079D34 80079134 00000000 */ nop +/* 079D38 80079138 0007000D */ break 7 +.L8007913C: +/* 079D3C 8007913C 2401FFFF */ li $at, -1 +/* 079D40 80079140 17010004 */ bne $t8, $at, .L80079154 +/* 079D44 80079144 3C018000 */ lui $at, 0x8000 +/* 079D48 80079148 15E10002 */ bne $t7, $at, .L80079154 +/* 079D4C 8007914C 00000000 */ nop +/* 079D50 80079150 0006000D */ break 6 +.L80079154: +/* 079D54 80079154 3C01E400 */ lui $at, 0xe400 +/* 079D58 80079158 00197300 */ sll $t6, $t9, 0xc +/* 079D5C 8007915C 01C17825 */ or $t7, $t6, $at +/* 079D60 80079160 32780FFF */ andi $t8, $s3, 0xfff +/* 079D64 80079164 01F8A025 */ or $s4, $t7, $t8 +/* 079D68 80079168 93E40001 */ lbu $a0, 1($ra) +/* 079D6C 8007916C 00006825 */ move $t5, $zero +/* 079D70 80079170 026A7023 */ subu $t6, $s3, $t2 +/* 079D74 80079174 00004025 */ move $t0, $zero +/* 079D78 80079178 000B7823 */ negu $t7, $t3 +/* 079D7C 8007917C 00006012 */ mflo $t4 +/* 079D80 80079180 12A00004 */ beqz $s5, .L80079194 +/* 079D84 80079184 00000000 */ nop +/* 079D88 80079188 00036940 */ sll $t5, $v1, 5 +/* 079D8C 8007918C 10000001 */ b .L80079194 +/* 079D90 80079190 000C6023 */ negu $t4, $t4 +.L80079194: +/* 079D94 80079194 2483FFFF */ addiu $v1, $a0, -1 +/* 079D98 80079198 0003CB00 */ sll $t9, $v1, 0xc +/* 079D9C 8007919C 032E001A */ div $zero, $t9, $t6 +/* 079DA0 800791A0 15C00002 */ bnez $t6, .L800791AC +/* 079DA4 800791A4 00000000 */ nop +/* 079DA8 800791A8 0007000D */ break 7 +.L800791AC: +/* 079DAC 800791AC 2401FFFF */ li $at, -1 +/* 079DB0 800791B0 15C10004 */ bne $t6, $at, .L800791C4 +/* 079DB4 800791B4 3C018000 */ lui $at, 0x8000 +/* 079DB8 800791B8 17210002 */ bne $t9, $at, .L800791C4 +/* 079DBC 800791BC 00000000 */ nop +/* 079DC0 800791C0 0006000D */ break 6 +.L800791C4: +/* 079DC4 800791C4 000A7023 */ negu $t6, $t2 +/* 079DC8 800791C8 00003812 */ mflo $a3 +/* 079DCC 800791CC 12C00004 */ beqz $s6, .L800791E0 +/* 079DD0 800791D0 00000000 */ nop +/* 079DD4 800791D4 00034140 */ sll $t0, $v1, 5 +/* 079DD8 800791D8 10000001 */ b .L800791E0 +/* 079DDC 800791DC 00073823 */ negu $a3, $a3 +.L800791E0: +/* 079DE0 800791E0 05610006 */ bgez $t3, .L800791FC +/* 079DE4 800791E4 00000000 */ nop +/* 079DE8 800791E8 01EC0019 */ multu $t7, $t4 +/* 079DEC 800791EC 00005825 */ move $t3, $zero +/* 079DF0 800791F0 0000C012 */ mflo $t8 +/* 079DF4 800791F4 0018C9C3 */ sra $t9, $t8, 7 +/* 079DF8 800791F8 01B96821 */ addu $t5, $t5, $t9 +.L800791FC: +/* 079DFC 800791FC 05410006 */ bgez $t2, .L80079218 +/* 079E00 80079200 00000000 */ nop +/* 079E04 80079204 01C70019 */ multu $t6, $a3 +/* 079E08 80079208 00005025 */ move $t2, $zero +/* 079E0C 8007920C 00007812 */ mflo $t7 +/* 079E10 80079210 000FC1C3 */ sra $t8, $t7, 7 +/* 079E14 80079214 01184021 */ addu $t0, $t0, $t8 +.L80079218: +/* 079E18 80079218 8E030000 */ lw $v1, ($s0) +/* 079E1C 8007921C 3C010700 */ lui $at, 0x700 +/* 079E20 80079220 24790008 */ addiu $t9, $v1, 8 +/* 079E24 80079224 AE190000 */ sw $t9, ($s0) +/* 079E28 80079228 87E5000A */ lh $a1, 0xa($ra) +/* 079E2C 8007922C 00000000 */ nop +/* 079E30 80079230 30AE00FF */ andi $t6, $a1, 0xff +/* 079E34 80079234 000E7C00 */ sll $t7, $t6, 0x10 +/* 079E38 80079238 0005C8C0 */ sll $t9, $a1, 3 +/* 079E3C 8007923C 332EFFFF */ andi $t6, $t9, 0xffff +/* 079E40 80079240 01E1C025 */ or $t8, $t7, $at +/* 079E44 80079244 030E7825 */ or $t7, $t8, $t6 +/* 079E48 80079248 AC6F0000 */ sw $t7, ($v1) +/* 079E4C 8007924C 8FF9000C */ lw $t9, 0xc($ra) +/* 079E50 80079250 3C018000 */ lui $at, 0x8000 +/* 079E54 80079254 0321C021 */ addu $t8, $t9, $at +/* 079E58 80079258 AC780004 */ sw $t8, 4($v1) +/* 079E5C 8007925C 8E060000 */ lw $a2, ($s0) +/* 079E60 80079260 316F0FFF */ andi $t7, $t3, 0xfff +/* 079E64 80079264 24CE0008 */ addiu $t6, $a2, 8 +/* 079E68 80079268 AE0E0000 */ sw $t6, ($s0) +/* 079E6C 8007926C 000FCB00 */ sll $t9, $t7, 0xc +/* 079E70 80079270 31580FFF */ andi $t8, $t2, 0xfff +/* 079E74 80079274 03387025 */ or $t6, $t9, $t8 +/* 079E78 80079278 ACCE0004 */ sw $t6, 4($a2) +/* 079E7C 8007927C ACD40000 */ sw $s4, ($a2) +/* 079E80 80079280 8E090000 */ lw $t1, ($s0) +/* 079E84 80079284 3C19B300 */ lui $t9, 0xb300 +/* 079E88 80079288 252F0008 */ addiu $t7, $t1, 8 +/* 079E8C 8007928C AE0F0000 */ sw $t7, ($s0) +/* 079E90 80079290 310FFFFF */ andi $t7, $t0, 0xffff +/* 079E94 80079294 000D7400 */ sll $t6, $t5, 0x10 +/* 079E98 80079298 AD390000 */ sw $t9, ($t1) +/* 079E9C 8007929C 01CFC825 */ or $t9, $t6, $t7 +/* 079EA0 800792A0 AD390004 */ sw $t9, 4($t1) +/* 079EA4 800792A4 8E040000 */ lw $a0, ($s0) +/* 079EA8 800792A8 3C0EB200 */ lui $t6, 0xb200 +/* 079EAC 800792AC 24980008 */ addiu $t8, $a0, 8 +/* 079EB0 800792B0 AE180000 */ sw $t8, ($s0) +/* 079EB4 800792B4 30F8FFFF */ andi $t8, $a3, 0xffff +/* 079EB8 800792B8 000CCC00 */ sll $t9, $t4, 0x10 +/* 079EBC 800792BC AC8E0000 */ sw $t6, ($a0) +/* 079EC0 800792C0 03387025 */ or $t6, $t9, $t8 +/* 079EC4 800792C4 AC8E0004 */ sw $t6, 4($a0) +.L800792C8: +/* 079EC8 800792C8 8E3F0008 */ lw $ra, 8($s1) +/* 079ECC 800792CC 26310008 */ addiu $s1, $s1, 8 +/* 079ED0 800792D0 17E0FEEC */ bnez $ra, .L80078E84 +/* 079ED4 800792D4 00000000 */ nop +/* 079ED8 800792D8 AFB3007C */ sw $s3, 0x7c($sp) +/* 079EDC 800792DC AFB20080 */ sw $s2, 0x80($sp) +.L800792E0: +/* 079EE0 800792E0 8E030000 */ lw $v1, ($s0) +/* 079EE4 800792E4 3C19E700 */ lui $t9, 0xe700 +/* 079EE8 800792E8 246F0008 */ addiu $t7, $v1, 8 +/* 079EEC 800792EC AE0F0000 */ sw $t7, ($s0) +/* 079EF0 800792F0 AC600004 */ sw $zero, 4($v1) +/* 079EF4 800792F4 AC790000 */ sw $t9, ($v1) +/* 079EF8 800792F8 8E030000 */ lw $v1, ($s0) +/* 079EFC 800792FC 240FFFFF */ li $t7, -1 +/* 079F00 80079300 24780008 */ addiu $t8, $v1, 8 +/* 079F04 80079304 AE180000 */ sw $t8, ($s0) +/* 079F08 80079308 3C0EFA00 */ lui $t6, 0xfa00 +/* 079F0C 8007930C AC6E0000 */ sw $t6, ($v1) +/* 079F10 80079310 AC6F0004 */ sw $t7, 4($v1) +/* 079F14 80079314 8FBF003C */ lw $ra, 0x3c($sp) +/* 079F18 80079318 8FBE0038 */ lw $fp, 0x38($sp) +/* 079F1C 8007931C 8FB70034 */ lw $s7, 0x34($sp) +/* 079F20 80079320 8FB60030 */ lw $s6, 0x30($sp) +/* 079F24 80079324 8FB5002C */ lw $s5, 0x2c($sp) +/* 079F28 80079328 8FB40028 */ lw $s4, 0x28($sp) +/* 079F2C 8007932C 8FB30024 */ lw $s3, 0x24($sp) +/* 079F30 80079330 8FB20020 */ lw $s2, 0x20($sp) +/* 079F34 80079334 8FB1001C */ lw $s1, 0x1c($sp) +/* 079F38 80079338 8FB00018 */ lw $s0, 0x18($sp) +/* 079F3C 8007933C 03E00008 */ jr $ra +/* 079F40 80079340 27BD00B0 */ addiu $sp, $sp, 0xb0 + +/* 079F44 80079344 00000000 */ nop +/* 079F48 80079348 00000000 */ nop +/* 079F4C 8007934C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_078050/setupOSTasks.s b/asm/non_matchings/unknown_078050/setupOSTasks.s new file mode 100644 index 00000000..d079abd1 --- /dev/null +++ b/asm/non_matchings/unknown_078050/setupOSTasks.s @@ -0,0 +1,400 @@ +glabel setupOSTasks +/* 078050 80077450 3C03800E */ lui $v1, %hi(D_800DE4D4) # $v1, 0x800e +/* 078054 80077454 240E0001 */ li $t6, 1 +/* 078058 80077458 3C01800E */ lui $at, %hi(D_800DE4DC) # $at, 0x800e +/* 07805C 8007745C 2463E4D4 */ addiu $v1, %lo(D_800DE4D4) # addiu $v1, $v1, -0x1b2c +/* 078060 80077460 AC2EE4DC */ sw $t6, %lo(D_800DE4DC)($at) +/* 078064 80077464 8C620000 */ lw $v0, ($v1) +/* 078068 80077468 3C188012 */ lui $t8, %hi(D_80125F40) # $t8, 0x8012 +/* 07806C 8007746C 000278C0 */ sll $t7, $v0, 3 +/* 078070 80077470 01E27823 */ subu $t7, $t7, $v0 +/* 078074 80077474 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 078078 80077478 000F7900 */ sll $t7, $t7, 4 +/* 07807C 8007747C 27185F40 */ addiu $t8, %lo(D_80125F40) # addiu $t8, $t8, 0x5f40 +/* 078080 80077480 24010002 */ li $at, 2 +/* 078084 80077484 24590001 */ addiu $t9, $v0, 1 +/* 078088 80077488 AFBF0014 */ sw $ra, 0x14($sp) +/* 07808C 8007748C AFA60028 */ sw $a2, 0x28($sp) +/* 078090 80077490 01F83821 */ addu $a3, $t7, $t8 +/* 078094 80077494 17210002 */ bne $t9, $at, .L800774A0 +/* 078098 80077498 AC790000 */ sw $t9, ($v1) +/* 07809C 8007749C AC600000 */ sw $zero, ($v1) +.L800774A0: +/* 0780A0 800774A0 00A45823 */ subu $t3, $a1, $a0 +/* 0780A4 800774A4 3C03800E */ lui $v1, %hi(D_800D84C0) # $v1, 0x800e +/* 0780A8 800774A8 3C0A8012 */ lui $t2, %hi(D_80125ED8) # $t2, 0x8012 +/* 0780AC 800774AC 000B60C3 */ sra $t4, $t3, 3 +/* 0780B0 800774B0 240D0001 */ li $t5, 1 +/* 0780B4 800774B4 3C0F800E */ lui $t7, %hi(D_800D8590) # $t7, 0x800e +/* 0780B8 800774B8 246384C0 */ addiu $v1, %lo(D_800D84C0) # addiu $v1, $v1, -0x7b40 +/* 0780BC 800774BC 254A5ED8 */ addiu $t2, %lo(D_80125ED8) # addiu $t2, $t2, 0x5ed8 +/* 0780C0 800774C0 ACEC0044 */ sw $t4, 0x44($a3) +/* 0780C4 800774C4 ACED0010 */ sw $t5, 0x10($a3) +/* 0780C8 800774C8 240E0002 */ li $t6, 2 +/* 0780CC 800774CC 25EF8590 */ addiu $t7, %lo(D_800D8590) # addiu $t7, $t7, -0x7a70 +/* 0780D0 800774D0 3C02FF00 */ lui $v0, (0xFF0000FF >> 16) # lui $v0, 0xff00 +/* 0780D4 800774D4 24090023 */ li $t1, 35 +/* 0780D8 800774D8 ACEA0050 */ sw $t2, 0x50($a3) +/* 0780DC 800774DC ACEE0014 */ sw $t6, 0x14($a3) +/* 0780E0 800774E0 01E3C023 */ subu $t8, $t7, $v1 +/* 0780E4 800774E4 3C0C8012 */ lui $t4, %hi(D_801246A0) # $t4, 0x8012 +/* 0780E8 800774E8 3C0D8012 */ lui $t5, %hi(D_80125EA0) # $t5, 0x8012 +/* 0780EC 800774EC 344200FF */ ori $v0, (0xFF0000FF & 0xFFFF) # ori $v0, $v0, 0xff +/* 0780F0 800774F0 ACE90008 */ sw $t1, 8($a3) +/* 0780F4 800774F4 3C19800E */ lui $t9, %hi(D_800DA970) # $t9, 0x800e +/* 0780F8 800774F8 3C08800F */ lui $t0, %hi(D_800EABA0) # $t0, 0x800f +/* 0780FC 800774FC 3C0A8012 */ lui $t2, %hi(D_801242A0) # $t2, 0x8012 +/* 078100 80077500 258C46A0 */ addiu $t4, %lo(D_801246A0) # addiu $t4, $t4, 0x46a0 +/* 078104 80077504 25AD5EA0 */ addiu $t5, %lo(D_80125EA0) # addiu $t5, $t5, 0x5ea0 +/* 078108 80077508 3C0E8012 */ lui $t6, %hi(D_801271B0) # $t6, 0x8012 +/* 07810C 8007750C ACF8001C */ sw $t8, 0x1c($a3) +/* 078110 80077510 2739A970 */ addiu $t9, %lo(D_800DA970) # addiu $t9, $t9, -0x5690 +/* 078114 80077514 2508ABA0 */ addiu $t0, %lo(D_800EABA0) # addiu $t0, $t0, -0x5460 +/* 078118 80077518 24090800 */ li $t1, 2048 +/* 07811C 8007751C 254A42A0 */ addiu $t2, %lo(D_801242A0) # addiu $t2, $t2, 0x42a0 +/* 078120 80077520 240B0400 */ li $t3, 1024 +/* 078124 80077524 ACEC0038 */ sw $t4, 0x38($a3) +/* 078128 80077528 ACED003C */ sw $t5, 0x3c($a3) +/* 07812C 8007752C 25CE71B0 */ addiu $t6, %lo(D_801271B0) # addiu $t6, $t6, 0x71b0 +/* 078130 80077530 240F0A00 */ li $t7, 2560 +/* 078134 80077534 ACE20058 */ sw $v0, 0x58($a3) +/* 078138 80077538 ACE2005C */ sw $v0, 0x5c($a3) +/* 07813C 8007753C ACE40040 */ sw $a0, 0x40($a3) +/* 078140 80077540 ACE30018 */ sw $v1, 0x18($a3) +/* 078144 80077544 ACF90020 */ sw $t9, 0x20($a3) +/* 078148 80077548 ACE80028 */ sw $t0, 0x28($a3) +/* 07814C 8007754C ACE9002C */ sw $t1, 0x2c($a3) +/* 078150 80077550 ACEA0030 */ sw $t2, 0x30($a3) +/* 078154 80077554 ACEB0034 */ sw $t3, 0x34($a3) +/* 078158 80077558 ACEE0048 */ sw $t6, 0x48($a3) +/* 07815C 8007755C ACEF004C */ sw $t7, 0x4c($a3) +/* 078160 80077560 ACE00038 */ sw $zero, 0x38($a3) +/* 078164 80077564 ACE0003C */ sw $zero, 0x3c($a3) +/* 078168 80077568 ACE00000 */ sw $zero, ($a3) +/* 07816C 8007756C 3C188012 */ lui $t8, %hi(D_801262D4) # $t8, 0x8012 +/* 078170 80077570 8F1862D4 */ lw $t8, %lo(D_801262D4)($t8) +/* 078174 80077574 240200FF */ li $v0, 255 +/* 078178 80077578 ACE20060 */ sw $v0, 0x60($a3) +/* 07817C 8007757C ACE20064 */ sw $v0, 0x64($a3) +/* 078180 80077580 ACF8000C */ sw $t8, 0xc($a3) +/* 078184 80077584 0C034628 */ jal func_800D18A0 +/* 078188 80077588 AFA7001C */ sw $a3, 0x1c($sp) +/* 07818C 8007758C 3C048012 */ lui $a0, %hi(D_80126100) # $a0, 0x8012 +/* 078190 80077590 8FA5001C */ lw $a1, 0x1c($sp) +/* 078194 80077594 8C846100 */ lw $a0, %lo(D_80126100)($a0) +/* 078198 80077598 0C03238C */ jal func_800C8E30 +/* 07819C 8007759C 24060001 */ li $a2, 1 +/* 0781A0 800775A0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0781A4 800775A4 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0781A8 800775A8 03E00008 */ jr $ra +/* 0781AC 800775AC 00001025 */ move $v0, $zero + +/* 0781B0 800775B0 3C03800E */ lui $v1, %hi(D_800DE4D8) # $v1, 0x800e +/* 0781B4 800775B4 2463E4D8 */ addiu $v1, %lo(D_800DE4D8) # addiu $v1, $v1, -0x1b28 +/* 0781B8 800775B8 8C620000 */ lw $v0, ($v1) +/* 0781BC 800775BC 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0781C0 800775C0 000270C0 */ sll $t6, $v0, 3 +/* 0781C4 800775C4 3C0F8012 */ lui $t7, %hi(D_80126020) # $t7, 0x8012 +/* 0781C8 800775C8 01C27023 */ subu $t6, $t6, $v0 +/* 0781CC 800775CC 000E7100 */ sll $t6, $t6, 4 +/* 0781D0 800775D0 25EF6020 */ addiu $t7, %lo(D_80126020) # addiu $t7, $t7, 0x6020 +/* 0781D4 800775D4 24010002 */ li $at, 2 +/* 0781D8 800775D8 24580001 */ addiu $t8, $v0, 1 +/* 0781DC 800775DC AFBF0014 */ sw $ra, 0x14($sp) +/* 0781E0 800775E0 AFA60030 */ sw $a2, 0x30($sp) +/* 0781E4 800775E4 AFA00020 */ sw $zero, 0x20($sp) +/* 0781E8 800775E8 01CF3821 */ addu $a3, $t6, $t7 +/* 0781EC 800775EC 17010002 */ bne $t8, $at, .L800775F8 +/* 0781F0 800775F0 AC780000 */ sw $t8, ($v1) +/* 0781F4 800775F4 AC600000 */ sw $zero, ($v1) +.L800775F8: +/* 0781F8 800775F8 3C02800E */ lui $v0, %hi(D_800D84C0) # $v0, 0x800e +/* 0781FC 800775FC 3C0D800E */ lui $t5, %hi(D_800D8590) # $t5, 0x800e +/* 078200 80077600 244284C0 */ addiu $v0, %lo(D_800D84C0) # addiu $v0, $v0, -0x7b40 +/* 078204 80077604 00A44023 */ subu $t0, $a1, $a0 +/* 078208 80077608 25AD8590 */ addiu $t5, %lo(D_800D8590) # addiu $t5, $t5, -0x7a70 +/* 07820C 8007760C 000848C3 */ sra $t1, $t0, 3 +/* 078210 80077610 01A27023 */ subu $t6, $t5, $v0 +/* 078214 80077614 000950C0 */ sll $t2, $t1, 3 +/* 078218 80077618 ACEA0044 */ sw $t2, 0x44($a3) +/* 07821C 8007761C 240B0001 */ li $t3, 1 +/* 078220 80077620 240C0002 */ li $t4, 2 +/* 078224 80077624 ACEE001C */ sw $t6, 0x1c($a3) +/* 078228 80077628 3C0F800E */ lui $t7, %hi(D_800DA970) # $t7, 0x800e +/* 07822C 8007762C ACEB0010 */ sw $t3, 0x10($a3) +/* 078230 80077630 ACEC0014 */ sw $t4, 0x14($a3) +/* 078234 80077634 25EFA970 */ addiu $t7, %lo(D_800DA970) # addiu $t7, $t7, -0x5690 +/* 078238 80077638 3C18800F */ lui $t8, %hi(D_800EABA0) # $t8, 0x800f +/* 07823C 8007763C 3C088012 */ lui $t0, %hi(D_801242A0) # $t0, 0x8012 +/* 078240 80077640 3C0A8012 */ lui $t2, %hi(D_801271B0) # $t2, 0x8012 +/* 078244 80077644 3C0D8012 */ lui $t5, %hi(D_80125ED8) # $t5, 0x8012 +/* 078248 80077648 3C0E800E */ lui $t6, %hi(D_800DE490) # $t6, 0x800e +/* 07824C 8007764C ACEF0020 */ sw $t7, 0x20($a3) +/* 078250 80077650 2718ABA0 */ addiu $t8, %lo(D_800EABA0) # addiu $t8, $t8, -0x5460 +/* 078254 80077654 24190800 */ li $t9, 2048 +/* 078258 80077658 250842A0 */ addiu $t0, %lo(D_801242A0) # addiu $t0, $t0, 0x42a0 +/* 07825C 8007765C 24090400 */ li $t1, 1024 +/* 078260 80077660 254A71B0 */ addiu $t2, %lo(D_801271B0) # addiu $t2, $t2, 0x71b0 +/* 078264 80077664 240B0A00 */ li $t3, 2560 +/* 078268 80077668 240C0003 */ li $t4, 3 +/* 07826C 8007766C 25AD5ED8 */ addiu $t5, %lo(D_80125ED8) # addiu $t5, $t5, 0x5ed8 +/* 078270 80077670 25CEE490 */ addiu $t6, %lo(D_800DE490) # addiu $t6, $t6, -0x1b70 +/* 078274 80077674 ACE40040 */ sw $a0, 0x40($a3) +/* 078278 80077678 ACE20018 */ sw $v0, 0x18($a3) +/* 07827C 8007767C ACF80028 */ sw $t8, 0x28($a3) +/* 078280 80077680 ACF9002C */ sw $t9, 0x2c($a3) +/* 078284 80077684 ACE80030 */ sw $t0, 0x30($a3) +/* 078288 80077688 ACE90034 */ sw $t1, 0x34($a3) +/* 07828C 8007768C ACEA0048 */ sw $t2, 0x48($a3) +/* 078290 80077690 ACEB004C */ sw $t3, 0x4c($a3) +/* 078294 80077694 ACE00038 */ sw $zero, 0x38($a3) +/* 078298 80077698 ACE0003C */ sw $zero, 0x3c($a3) +/* 07829C 8007769C ACE00000 */ sw $zero, ($a3) +/* 0782A0 800776A0 ACEC0008 */ sw $t4, 8($a3) +/* 0782A4 800776A4 ACED0050 */ sw $t5, 0x50($a3) +/* 0782A8 800776A8 ACEE0054 */ sw $t6, 0x54($a3) +/* 0782AC 800776AC 3C0F8012 */ lui $t7, %hi(D_801262D4) # $t7, 0x8012 +/* 0782B0 800776B0 8DEF62D4 */ lw $t7, %lo(D_801262D4)($t7) +/* 0782B4 800776B4 3C02FF00 */ lui $v0, (0xFF0000FF >> 16) # lui $v0, 0xff00 +/* 0782B8 800776B8 344200FF */ ori $v0, (0xFF0000FF & 0xFFFF) # ori $v0, $v0, 0xff +/* 0782BC 800776BC 240300FF */ li $v1, 255 +/* 0782C0 800776C0 ACE20058 */ sw $v0, 0x58($a3) +/* 0782C4 800776C4 ACE2005C */ sw $v0, 0x5c($a3) +/* 0782C8 800776C8 ACE30060 */ sw $v1, 0x60($a3) +/* 0782CC 800776CC ACE30064 */ sw $v1, 0x64($a3) +/* 0782D0 800776D0 ACE00068 */ sw $zero, 0x68($a3) +/* 0782D4 800776D4 ACEF000C */ sw $t7, 0xc($a3) +/* 0782D8 800776D8 8FB80030 */ lw $t8, 0x30($sp) +/* 0782DC 800776DC 3C198012 */ lui $t9, %hi(D_80125EA0) # $t9, 0x8012 +/* 0782E0 800776E0 13000002 */ beqz $t8, .L800776EC +/* 0782E4 800776E4 27395EA0 */ addiu $t9, %lo(D_80125EA0) # addiu $t9, $t9, 0x5ea0 +/* 0782E8 800776E8 ACF90050 */ sw $t9, 0x50($a3) +.L800776EC: +/* 0782EC 800776EC 0C034628 */ jal func_800D18A0 +/* 0782F0 800776F0 AFA70024 */ sw $a3, 0x24($sp) +/* 0782F4 800776F4 3C048012 */ lui $a0, %hi(D_80126100) # $a0, 0x8012 +/* 0782F8 800776F8 8FA50024 */ lw $a1, 0x24($sp) +/* 0782FC 800776FC 8C846100 */ lw $a0, %lo(D_80126100)($a0) +/* 078300 80077700 0C03238C */ jal func_800C8E30 +/* 078304 80077704 24060001 */ li $a2, 1 +/* 078308 80077708 8FA80030 */ lw $t0, 0x30($sp) +/* 07830C 8007770C 3C048012 */ lui $a0, %hi(D_80125EA0) # $a0, 0x8012 +/* 078310 80077710 11000004 */ beqz $t0, .L80077724 +/* 078314 80077714 24845EA0 */ addiu $a0, %lo(D_80125EA0) # addiu $a0, $a0, 0x5ea0 +/* 078318 80077718 27A50020 */ addiu $a1, $sp, 0x20 +/* 07831C 8007771C 0C0322EC */ jal osRecvMesg +/* 078320 80077720 24060001 */ li $a2, 1 +.L80077724: +/* 078324 80077724 8FBF0014 */ lw $ra, 0x14($sp) +/* 078328 80077728 27BD0028 */ addiu $sp, $sp, 0x28 +/* 07832C 8007772C 03E00008 */ jr $ra +/* 078330 80077730 00000000 */ nop + +/* 078334 80077734 3C03800E */ lui $v1, %hi(D_800DE4D8) # $v1, 0x800e +/* 078338 80077738 2463E4D8 */ addiu $v1, %lo(D_800DE4D8) # addiu $v1, $v1, -0x1b28 +/* 07833C 8007773C 8C620000 */ lw $v0, ($v1) +/* 078340 80077740 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 078344 80077744 000270C0 */ sll $t6, $v0, 3 +/* 078348 80077748 3C0F8012 */ lui $t7, %hi(D_80126020) # $t7, 0x8012 +/* 07834C 8007774C 01C27023 */ subu $t6, $t6, $v0 +/* 078350 80077750 000E7100 */ sll $t6, $t6, 4 +/* 078354 80077754 25EF6020 */ addiu $t7, %lo(D_80126020) # addiu $t7, $t7, 0x6020 +/* 078358 80077758 24010002 */ li $at, 2 +/* 07835C 8007775C 24580001 */ addiu $t8, $v0, 1 +/* 078360 80077760 AFBF0014 */ sw $ra, 0x14($sp) +/* 078364 80077764 AFA60030 */ sw $a2, 0x30($sp) +/* 078368 80077768 AFA00020 */ sw $zero, 0x20($sp) +/* 07836C 8007776C 01CF3821 */ addu $a3, $t6, $t7 +/* 078370 80077770 17010002 */ bne $t8, $at, .L8007777C +/* 078374 80077774 AC780000 */ sw $t8, ($v1) +/* 078378 80077778 AC600000 */ sw $zero, ($v1) +.L8007777C: +/* 07837C 8007777C 3C02800E */ lui $v0, %hi(D_800D84C0) # $v0, 0x800e +/* 078380 80077780 00A44023 */ subu $t0, $a1, $a0 +/* 078384 80077784 3C0D800E */ lui $t5, %hi(D_800D8590) # $t5, 0x800e +/* 078388 80077788 244284C0 */ addiu $v0, %lo(D_800D84C0) # addiu $v0, $v0, -0x7b40 +/* 07838C 8007778C 000848C3 */ sra $t1, $t0, 3 +/* 078390 80077790 25AD8590 */ addiu $t5, %lo(D_800D8590) # addiu $t5, $t5, -0x7a70 +/* 078394 80077794 3C0F800E */ lui $t7, %hi(D_800D9790) # $t7, 0x800e +/* 078398 80077798 3C18800F */ lui $t8, %hi(D_800EA3A0) # $t8, 0x800f +/* 07839C 8007779C 000950C0 */ sll $t2, $t1, 3 +/* 0783A0 800777A0 240B0001 */ li $t3, 1 +/* 0783A4 800777A4 240C0002 */ li $t4, 2 +/* 0783A8 800777A8 01A27023 */ subu $t6, $t5, $v0 +/* 0783AC 800777AC 25EF9790 */ addiu $t7, %lo(D_800D9790) # addiu $t7, $t7, -0x6870 +/* 0783B0 800777B0 2718A3A0 */ addiu $t8, %lo(D_800EA3A0) # addiu $t8, $t8, -0x5c60 +/* 0783B4 800777B4 ACEA0044 */ sw $t2, 0x44($a3) +/* 0783B8 800777B8 ACEB0010 */ sw $t3, 0x10($a3) +/* 0783BC 800777BC ACEC0014 */ sw $t4, 0x14($a3) +/* 0783C0 800777C0 ACEF0020 */ sw $t7, 0x20($a3) +/* 0783C4 800777C4 ACF80028 */ sw $t8, 0x28($a3) +/* 0783C8 800777C8 ACEE001C */ sw $t6, 0x1c($a3) +/* 0783CC 800777CC 24190800 */ li $t9, 2048 +/* 0783D0 800777D0 3C088012 */ lui $t0, %hi(D_801242A0) # $t0, 0x8012 +/* 0783D4 800777D4 3C0A8012 */ lui $t2, %hi(D_801246A0) # $t2, 0x8012 +/* 0783D8 800777D8 3C0B8012 */ lui $t3, %hi(D_80125EA0) # $t3, 0x8012 +/* 0783DC 800777DC 3C0C8012 */ lui $t4, %hi(D_801271B0) # $t4, 0x8012 +/* 0783E0 800777E0 3C0F8012 */ lui $t7, %hi(D_80125ED8) # $t7, 0x8012 +/* 0783E4 800777E4 3C18800E */ lui $t8, %hi(D_800DE490) # $t8, 0x800e +/* 0783E8 800777E8 ACF9002C */ sw $t9, 0x2c($a3) +/* 0783EC 800777EC 250842A0 */ addiu $t0, %lo(D_801242A0) # addiu $t0, $t0, 0x42a0 +/* 0783F0 800777F0 24090400 */ li $t1, 1024 +/* 0783F4 800777F4 254A46A0 */ addiu $t2, %lo(D_801246A0) # addiu $t2, $t2, 0x46a0 +/* 0783F8 800777F8 256B5EA0 */ addiu $t3, %lo(D_80125EA0) # addiu $t3, $t3, 0x5ea0 +/* 0783FC 800777FC 258C71B0 */ addiu $t4, %lo(D_801271B0) # addiu $t4, $t4, 0x71b0 +/* 078400 80077800 240D0A00 */ li $t5, 2560 +/* 078404 80077804 240E0007 */ li $t6, 7 +/* 078408 80077808 25EF5ED8 */ addiu $t7, %lo(D_80125ED8) # addiu $t7, $t7, 0x5ed8 +/* 07840C 8007780C 2718E490 */ addiu $t8, %lo(D_800DE490) # addiu $t8, $t8, -0x1b70 +/* 078410 80077810 ACE40040 */ sw $a0, 0x40($a3) +/* 078414 80077814 ACE20018 */ sw $v0, 0x18($a3) +/* 078418 80077818 ACE80030 */ sw $t0, 0x30($a3) +/* 07841C 8007781C ACE90034 */ sw $t1, 0x34($a3) +/* 078420 80077820 ACEA0038 */ sw $t2, 0x38($a3) +/* 078424 80077824 ACEB003C */ sw $t3, 0x3c($a3) +/* 078428 80077828 ACEC0048 */ sw $t4, 0x48($a3) +/* 07842C 8007782C ACED004C */ sw $t5, 0x4c($a3) +/* 078430 80077830 ACE00000 */ sw $zero, ($a3) +/* 078434 80077834 ACEE0008 */ sw $t6, 8($a3) +/* 078438 80077838 ACEF0050 */ sw $t7, 0x50($a3) +/* 07843C 8007783C ACF80054 */ sw $t8, 0x54($a3) +/* 078440 80077840 3C198012 */ lui $t9, %hi(D_801262D4) # $t9, 0x8012 +/* 078444 80077844 8F3962D4 */ lw $t9, %lo(D_801262D4)($t9) +/* 078448 80077848 3C02FF00 */ lui $v0, (0xFF0000FF >> 16) # lui $v0, 0xff00 +/* 07844C 8007784C 344200FF */ ori $v0, (0xFF0000FF & 0xFFFF) # ori $v0, $v0, 0xff +/* 078450 80077850 240300FF */ li $v1, 255 +/* 078454 80077854 ACE20058 */ sw $v0, 0x58($a3) +/* 078458 80077858 ACE2005C */ sw $v0, 0x5c($a3) +/* 07845C 8007785C ACE30060 */ sw $v1, 0x60($a3) +/* 078460 80077860 ACE30064 */ sw $v1, 0x64($a3) +/* 078464 80077864 ACE00068 */ sw $zero, 0x68($a3) +/* 078468 80077868 ACF9000C */ sw $t9, 0xc($a3) +/* 07846C 8007786C 8FA80030 */ lw $t0, 0x30($sp) +/* 078470 80077870 3C098012 */ lui $t1, %hi(D_80125EA0) # $t1, 0x8012 +/* 078474 80077874 11000002 */ beqz $t0, .L80077880 +/* 078478 80077878 25295EA0 */ addiu $t1, %lo(D_80125EA0) # addiu $t1, $t1, 0x5ea0 +/* 07847C 8007787C ACE90050 */ sw $t1, 0x50($a3) +.L80077880: +/* 078480 80077880 0C034628 */ jal func_800D18A0 +/* 078484 80077884 AFA70024 */ sw $a3, 0x24($sp) +/* 078488 80077888 3C048012 */ lui $a0, %hi(D_80126100) # $a0, 0x8012 +/* 07848C 8007788C 8FA50024 */ lw $a1, 0x24($sp) +/* 078490 80077890 8C846100 */ lw $a0, %lo(D_80126100)($a0) +/* 078494 80077894 0C03238C */ jal func_800C8E30 +/* 078498 80077898 24060001 */ li $a2, 1 +/* 07849C 8007789C 8FAA0030 */ lw $t2, 0x30($sp) +/* 0784A0 800778A0 3C048012 */ lui $a0, %hi(D_80125EA0) # $a0, 0x8012 +/* 0784A4 800778A4 11400004 */ beqz $t2, .L800778B8 +/* 0784A8 800778A8 24845EA0 */ addiu $a0, %lo(D_80125EA0) # addiu $a0, $a0, 0x5ea0 +/* 0784AC 800778AC 27A50020 */ addiu $a1, $sp, 0x20 +/* 0784B0 800778B0 0C0322EC */ jal osRecvMesg +/* 0784B4 800778B4 24060001 */ li $a2, 1 +.L800778B8: +/* 0784B8 800778B8 8FBF0014 */ lw $ra, 0x14($sp) +/* 0784BC 800778BC 27BD0028 */ addiu $sp, $sp, 0x28 +/* 0784C0 800778C0 03E00008 */ jr $ra +/* 0784C4 800778C4 00000000 */ nop + +/* 0784C8 800778C8 3C03800E */ lui $v1, %hi(D_800DE4D4) # $v1, 0x800e +/* 0784CC 800778CC 2463E4D4 */ addiu $v1, %lo(D_800DE4D4) # addiu $v1, $v1, -0x1b2c +/* 0784D0 800778D0 8C620000 */ lw $v0, ($v1) +/* 0784D4 800778D4 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0784D8 800778D8 000270C0 */ sll $t6, $v0, 3 +/* 0784DC 800778DC 3C0F8012 */ lui $t7, %hi(D_80125F40) # $t7, 0x8012 +/* 0784E0 800778E0 01C27023 */ subu $t6, $t6, $v0 +/* 0784E4 800778E4 000E7100 */ sll $t6, $t6, 4 +/* 0784E8 800778E8 25EF5F40 */ addiu $t7, %lo(D_80125F40) # addiu $t7, $t7, 0x5f40 +/* 0784EC 800778EC 24010003 */ li $at, 3 +/* 0784F0 800778F0 24580001 */ addiu $t8, $v0, 1 +/* 0784F4 800778F4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0784F8 800778F8 AFA60030 */ sw $a2, 0x30($sp) +/* 0784FC 800778FC AFA00020 */ sw $zero, 0x20($sp) +/* 078500 80077900 01CF3821 */ addu $a3, $t6, $t7 +/* 078504 80077904 17010002 */ bne $t8, $at, .L80077910 +/* 078508 80077908 AC780000 */ sw $t8, ($v1) +/* 07850C 8007790C AC600000 */ sw $zero, ($v1) +.L80077910: +/* 078510 80077910 3C02800E */ lui $v0, %hi(D_800D84C0) # $v0, 0x800e +/* 078514 80077914 00A44023 */ subu $t0, $a1, $a0 +/* 078518 80077918 3C0D800E */ lui $t5, %hi(D_800D8590) # $t5, 0x800e +/* 07851C 8007791C 244284C0 */ addiu $v0, %lo(D_800D84C0) # addiu $v0, $v0, -0x7b40 +/* 078520 80077920 000848C3 */ sra $t1, $t0, 3 +/* 078524 80077924 25AD8590 */ addiu $t5, %lo(D_800D8590) # addiu $t5, $t5, -0x7a70 +/* 078528 80077928 3C0F800E */ lui $t7, %hi(D_800D9790) # $t7, 0x800e +/* 07852C 8007792C 3C18800F */ lui $t8, %hi(D_800EA3A0) # $t8, 0x800f +/* 078530 80077930 000950C0 */ sll $t2, $t1, 3 +/* 078534 80077934 240B0001 */ li $t3, 1 +/* 078538 80077938 240C0002 */ li $t4, 2 +/* 07853C 8007793C 01A27023 */ subu $t6, $t5, $v0 +/* 078540 80077940 25EF9790 */ addiu $t7, %lo(D_800D9790) # addiu $t7, $t7, -0x6870 +/* 078544 80077944 2718A3A0 */ addiu $t8, %lo(D_800EA3A0) # addiu $t8, $t8, -0x5c60 +/* 078548 80077948 ACEA0044 */ sw $t2, 0x44($a3) +/* 07854C 8007794C ACEB0010 */ sw $t3, 0x10($a3) +/* 078550 80077950 ACEC0014 */ sw $t4, 0x14($a3) +/* 078554 80077954 ACEF0020 */ sw $t7, 0x20($a3) +/* 078558 80077958 ACF80028 */ sw $t8, 0x28($a3) +/* 07855C 8007795C ACEE001C */ sw $t6, 0x1c($a3) +/* 078560 80077960 24190800 */ li $t9, 2048 +/* 078564 80077964 3C088012 */ lui $t0, %hi(D_801242A0) # $t0, 0x8012 +/* 078568 80077968 3C0A8012 */ lui $t2, %hi(D_801246A0) # $t2, 0x8012 +/* 07856C 8007796C 3C0B8012 */ lui $t3, %hi(D_80125EA0) # $t3, 0x8012 +/* 078570 80077970 3C0C8012 */ lui $t4, %hi(D_801271B0) # $t4, 0x8012 +/* 078574 80077974 3C0F8012 */ lui $t7, %hi(D_80125ED8) # $t7, 0x8012 +/* 078578 80077978 3C18800E */ lui $t8, %hi(D_800DE490) # $t8, 0x800e +/* 07857C 8007797C ACE20018 */ sw $v0, 0x18($a3) +/* 078580 80077980 ACF9002C */ sw $t9, 0x2c($a3) +/* 078584 80077984 250842A0 */ addiu $t0, %lo(D_801242A0) # addiu $t0, $t0, 0x42a0 +/* 078588 80077988 24090400 */ li $t1, 1024 +/* 07858C 8007798C 254A46A0 */ addiu $t2, %lo(D_801246A0) # addiu $t2, $t2, 0x46a0 +/* 078590 80077990 256B5EA0 */ addiu $t3, %lo(D_80125EA0) # addiu $t3, $t3, 0x5ea0 +/* 078594 80077994 258C71B0 */ addiu $t4, %lo(D_801271B0) # addiu $t4, $t4, 0x71b0 +/* 078598 80077998 240D0A00 */ li $t5, 2560 +/* 07859C 8007799C 240E0007 */ li $t6, 7 +/* 0785A0 800779A0 25EF5ED8 */ addiu $t7, %lo(D_80125ED8) # addiu $t7, $t7, 0x5ed8 +/* 0785A4 800779A4 2718E490 */ addiu $t8, %lo(D_800DE490) # addiu $t8, $t8, -0x1b70 +/* 0785A8 800779A8 ACE40040 */ sw $a0, 0x40($a3) +/* 0785AC 800779AC ACE80030 */ sw $t0, 0x30($a3) +/* 0785B0 800779B0 ACE90034 */ sw $t1, 0x34($a3) +/* 0785B4 800779B4 ACEA0038 */ sw $t2, 0x38($a3) +/* 0785B8 800779B8 ACEB003C */ sw $t3, 0x3c($a3) +/* 0785BC 800779BC ACEC0048 */ sw $t4, 0x48($a3) +/* 0785C0 800779C0 ACED004C */ sw $t5, 0x4c($a3) +/* 0785C4 800779C4 ACE00000 */ sw $zero, ($a3) +/* 0785C8 800779C8 ACEE0008 */ sw $t6, 8($a3) +/* 0785CC 800779CC ACEF0050 */ sw $t7, 0x50($a3) +/* 0785D0 800779D0 ACF80054 */ sw $t8, 0x54($a3) +/* 0785D4 800779D4 3C198012 */ lui $t9, %hi(D_801262D4) # $t9, 0x8012 +/* 0785D8 800779D8 8F3962D4 */ lw $t9, %lo(D_801262D4)($t9) +/* 0785DC 800779DC 3C02FF00 */ lui $v0, (0xFF0000FF >> 16) # lui $v0, 0xff00 +/* 0785E0 800779E0 344200FF */ ori $v0, (0xFF0000FF & 0xFFFF) # ori $v0, $v0, 0xff +/* 0785E4 800779E4 ACE20058 */ sw $v0, 0x58($a3) +/* 0785E8 800779E8 ACE2005C */ sw $v0, 0x5c($a3) +/* 0785EC 800779EC ACF9000C */ sw $t9, 0xc($a3) +/* 0785F0 800779F0 8FA80030 */ lw $t0, 0x30($sp) +/* 0785F4 800779F4 240200FF */ li $v0, 255 +/* 0785F8 800779F8 11000003 */ beqz $t0, .L80077A08 +/* 0785FC 800779FC 00000000 */ nop +/* 078600 80077A00 ACE20060 */ sw $v0, 0x60($a3) +/* 078604 80077A04 ACE20064 */ sw $v0, 0x64($a3) +.L80077A08: +/* 078608 80077A08 ACE00068 */ sw $zero, 0x68($a3) +/* 07860C 80077A0C 0C034628 */ jal func_800D18A0 +/* 078610 80077A10 AFA70024 */ sw $a3, 0x24($sp) +/* 078614 80077A14 3C048012 */ lui $a0, %hi(D_80126100) # $a0, 0x8012 +/* 078618 80077A18 8FA50024 */ lw $a1, 0x24($sp) +/* 07861C 80077A1C 8C846100 */ lw $a0, %lo(D_80126100)($a0) +/* 078620 80077A20 0C03238C */ jal func_800C8E30 +/* 078624 80077A24 24060001 */ li $a2, 1 +/* 078628 80077A28 8FA90030 */ lw $t1, 0x30($sp) +/* 07862C 80077A2C 3C048012 */ lui $a0, %hi(D_80125ED8) # $a0, 0x8012 +/* 078630 80077A30 11200004 */ beqz $t1, .L80077A44 +/* 078634 80077A34 24845ED8 */ addiu $a0, %lo(D_80125ED8) # addiu $a0, $a0, 0x5ed8 +/* 078638 80077A38 27A50020 */ addiu $a1, $sp, 0x20 +/* 07863C 80077A3C 0C0322EC */ jal osRecvMesg +/* 078640 80077A40 24060001 */ li $a2, 1 +.L80077A44: +/* 078644 80077A44 8FBF0014 */ lw $ra, 0x14($sp) +/* 078648 80077A48 27BD0028 */ addiu $sp, $sp, 0x28 +/* 07864C 80077A4C 03E00008 */ jr $ra +/* 078650 80077A50 00000000 */ nop + diff --git a/asm/non_matchings/unknown_079F50/D_800795AC.s b/asm/non_matchings/unknown_079F50/D_800795AC.s new file mode 100644 index 00000000..d577042b --- /dev/null +++ b/asm/non_matchings/unknown_079F50/D_800795AC.s @@ -0,0 +1,119 @@ +glabel D_800795AC +/* 07A1AC 800795AC 27BDFF98 */ addiu $sp, $sp, -0x68 +/* 07A1B0 800795B0 AFBE0038 */ sw $fp, 0x38($sp) +/* 07A1B4 800795B4 AFB70034 */ sw $s7, 0x34($sp) +/* 07A1B8 800795B8 AFB60030 */ sw $s6, 0x30($sp) +/* 07A1BC 800795BC AFB5002C */ sw $s5, 0x2c($sp) +/* 07A1C0 800795C0 AFB40028 */ sw $s4, 0x28($sp) +/* 07A1C4 800795C4 AFB30024 */ sw $s3, 0x24($sp) +/* 07A1C8 800795C8 AFB20020 */ sw $s2, 0x20($sp) +/* 07A1CC 800795CC 00809025 */ move $s2, $a0 +/* 07A1D0 800795D0 AFBF003C */ sw $ra, 0x3c($sp) +/* 07A1D4 800795D4 AFB1001C */ sw $s1, 0x1c($sp) +/* 07A1D8 800795D8 AFB00018 */ sw $s0, 0x18($sp) +/* 07A1DC 800795DC AFA00064 */ sw $zero, 0x64($sp) +/* 07A1E0 800795E0 AFA00054 */ sw $zero, 0x54($sp) +/* 07A1E4 800795E4 AFA00050 */ sw $zero, 0x50($sp) +/* 07A1E8 800795E8 24930040 */ addiu $s3, $a0, 0x40 +/* 07A1EC 800795EC 27B40064 */ addiu $s4, $sp, 0x64 +/* 07A1F0 800795F0 24150063 */ li $s5, 99 +/* 07A1F4 800795F4 2416029A */ li $s6, 666 +/* 07A1F8 800795F8 2417029B */ li $s7, 667 +/* 07A1FC 800795FC 241E029C */ li $fp, 668 +/* 07A200 80079600 02602025 */ move $a0, $s3 +.L80079604: +/* 07A204 80079604 02802825 */ move $a1, $s4 +/* 07A208 80079608 0C0322EC */ jal osRecvMesg +/* 07A20C 8007960C 24060001 */ li $a2, 1 +/* 07A210 80079610 8FAE0064 */ lw $t6, 0x64($sp) +/* 07A214 80079614 00000000 */ nop +/* 07A218 80079618 11D50017 */ beq $t6, $s5, .L80079678 +/* 07A21C 8007961C 00000000 */ nop +/* 07A220 80079620 11D60009 */ beq $t6, $s6, .L80079648 +/* 07A224 80079624 00000000 */ nop +/* 07A228 80079628 11D7000B */ beq $t6, $s7, .L80079658 +/* 07A22C 8007962C 00000000 */ nop +/* 07A230 80079630 11DE000D */ beq $t6, $fp, .L80079668 +/* 07A234 80079634 2401029D */ li $at, 669 +/* 07A238 80079638 11C10013 */ beq $t6, $at, .L80079688 +/* 07A23C 8007963C 00000000 */ nop +/* 07A240 80079640 10000020 */ b .L800796C4 +/* 07A244 80079644 8FA50064 */ lw $a1, 0x64($sp) +.L80079648: +/* 07A248 80079648 0C01E606 */ jal func_80079818 +/* 07A24C 8007964C 02402025 */ move $a0, $s2 +/* 07A250 80079650 1000FFEC */ b .L80079604 +/* 07A254 80079654 02602025 */ move $a0, $s3 +.L80079658: +/* 07A258 80079658 0C01E6D1 */ jal func_80079B44 +/* 07A25C 8007965C 02402025 */ move $a0, $s2 +/* 07A260 80079660 1000FFE8 */ b .L80079604 +/* 07A264 80079664 02602025 */ move $a0, $s3 +.L80079668: +/* 07A268 80079668 0C01E757 */ jal func_80079D5C +/* 07A26C 8007966C 02402025 */ move $a0, $s2 +/* 07A270 80079670 1000FFE4 */ b .L80079604 +/* 07A274 80079674 02602025 */ move $a0, $s3 +.L80079678: +/* 07A278 80079678 0C01E5D8 */ jal func_80079760 +/* 07A27C 8007967C 02402025 */ move $a0, $s2 +/* 07A280 80079680 1000FFE0 */ b .L80079604 +/* 07A284 80079684 02602025 */ move $a0, $s3 +.L80079688: +/* 07A288 80079688 8E500260 */ lw $s0, 0x260($s2) +/* 07A28C 8007968C 26510020 */ addiu $s1, $s2, 0x20 +/* 07A290 80079690 1200FFDC */ beqz $s0, .L80079604 +/* 07A294 80079694 02602025 */ move $a0, $s3 +.L80079698: +/* 07A298 80079698 8E040008 */ lw $a0, 8($s0) +/* 07A29C 8007969C 02202825 */ move $a1, $s1 +/* 07A2A0 800796A0 0C03238C */ jal func_800C8E30 +/* 07A2A4 800796A4 00003025 */ move $a2, $zero +/* 07A2A8 800796A8 8E100004 */ lw $s0, 4($s0) +/* 07A2AC 800796AC 00000000 */ nop +/* 07A2B0 800796B0 1600FFF9 */ bnez $s0, .L80079698 +/* 07A2B4 800796B4 00000000 */ nop +/* 07A2B8 800796B8 1000FFD2 */ b .L80079604 +/* 07A2BC 800796BC 02602025 */ move $a0, $s3 +/* 07A2C0 800796C0 8FA50064 */ lw $a1, 0x64($sp) +.L800796C4: +/* 07A2C4 800796C4 0C01E7D0 */ jal func_80079F40 +/* 07A2C8 800796C8 02402025 */ move $a0, $s2 +/* 07A2CC 800796CC 8E4F0274 */ lw $t7, 0x274($s2) +/* 07A2D0 800796D0 8E480278 */ lw $t0, 0x278($s2) +/* 07A2D4 800796D4 2DF80001 */ sltiu $t8, $t7, 1 +/* 07A2D8 800796D8 0018C840 */ sll $t9, $t8, 1 +/* 07A2DC 800796DC 2D090001 */ sltiu $t1, $t0, 1 +/* 07A2E0 800796E0 03298025 */ or $s0, $t9, $t1 +/* 07A2E4 800796E4 02003825 */ move $a3, $s0 +/* 07A2E8 800796E8 02402025 */ move $a0, $s2 +/* 07A2EC 800796EC 27A50054 */ addiu $a1, $sp, 0x54 +/* 07A2F0 800796F0 0C01E835 */ jal func_8007A0D4 +/* 07A2F4 800796F4 27A60050 */ addiu $a2, $sp, 0x50 +/* 07A2F8 800796F8 1050FFC2 */ beq $v0, $s0, .L80079604 +/* 07A2FC 800796FC 02602025 */ move $a0, $s3 +/* 07A300 80079700 8FA50054 */ lw $a1, 0x54($sp) +/* 07A304 80079704 8FA60050 */ lw $a2, 0x50($sp) +/* 07A308 80079708 0C01E7EA */ jal func_80079FA8 +/* 07A30C 8007970C 02402025 */ move $a0, $s2 +/* 07A310 80079710 1000FFBC */ b .L80079604 +/* 07A314 80079714 02602025 */ move $a0, $s3 +/* 07A318 80079718 00000000 */ nop +/* 07A31C 8007971C 00000000 */ nop +/* 07A320 80079720 00000000 */ nop +/* 07A324 80079724 00000000 */ nop +/* 07A328 80079728 00000000 */ nop +/* 07A32C 8007972C 00000000 */ nop +/* 07A330 80079730 8FBF003C */ lw $ra, 0x3c($sp) +/* 07A334 80079734 8FB00018 */ lw $s0, 0x18($sp) +/* 07A338 80079738 8FB1001C */ lw $s1, 0x1c($sp) +/* 07A33C 8007973C 8FB20020 */ lw $s2, 0x20($sp) +/* 07A340 80079740 8FB30024 */ lw $s3, 0x24($sp) +/* 07A344 80079744 8FB40028 */ lw $s4, 0x28($sp) +/* 07A348 80079748 8FB5002C */ lw $s5, 0x2c($sp) +/* 07A34C 8007974C 8FB60030 */ lw $s6, 0x30($sp) +/* 07A350 80079750 8FB70034 */ lw $s7, 0x34($sp) +/* 07A354 80079754 8FBE0038 */ lw $fp, 0x38($sp) +/* 07A358 80079758 03E00008 */ jr $ra +/* 07A35C 8007975C 27BD0068 */ addiu $sp, $sp, 0x68 + diff --git a/asm/non_matchings/unknown_079F50/func_80079350.s b/asm/non_matchings/unknown_079F50/func_80079350.s new file mode 100644 index 00000000..c5c419fb --- /dev/null +++ b/asm/non_matchings/unknown_079F50/func_80079350.s @@ -0,0 +1,78 @@ +glabel func_80079350 +/* 079F50 80079350 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 079F54 80079354 AFB0001C */ sw $s0, 0x1c($sp) +/* 079F58 80079358 AFBF0024 */ sw $ra, 0x24($sp) +/* 079F5C 8007935C AFB10020 */ sw $s1, 0x20($sp) +/* 079F60 80079360 AFA5002C */ sw $a1, 0x2c($sp) +/* 079F64 80079364 AFA60030 */ sw $a2, 0x30($sp) +/* 079F68 80079368 AFA70034 */ sw $a3, 0x34($sp) +/* 079F6C 8007936C 240E0001 */ li $t6, 1 +/* 079F70 80079370 240F0004 */ li $t7, 4 +/* 079F74 80079374 00808025 */ move $s0, $a0 +/* 079F78 80079378 AC800274 */ sw $zero, 0x274($a0) +/* 079F7C 8007937C AC800278 */ sw $zero, 0x278($a0) +/* 079F80 80079380 AC800260 */ sw $zero, 0x260($a0) +/* 079F84 80079384 AC800264 */ sw $zero, 0x264($a0) +/* 079F88 80079388 AC800268 */ sw $zero, 0x268($a0) +/* 079F8C 8007938C AC80026C */ sw $zero, 0x26c($a0) +/* 079F90 80079390 AC800270 */ sw $zero, 0x270($a0) +/* 079F94 80079394 AC800280 */ sw $zero, 0x280($a0) +/* 079F98 80079398 AC80027C */ sw $zero, 0x27c($a0) +/* 079F9C 8007939C A48E0000 */ sh $t6, ($a0) +/* 079FA0 800793A0 A48F0020 */ sh $t7, 0x20($a0) +/* 079FA4 800793A4 30F100FF */ andi $s1, $a3, 0xff +/* 079FA8 800793A8 0C034664 */ jal func_800D1990 +/* 079FAC 800793AC 240400FE */ li $a0, 254 +/* 079FB0 800793B0 0011C080 */ sll $t8, $s1, 2 +/* 079FB4 800793B4 0311C021 */ addu $t8, $t8, $s1 +/* 079FB8 800793B8 3C19800E */ lui $t9, %hi(D_800E3900) # $t9, 0x800e +/* 079FBC 800793BC 27393900 */ addiu $t9, %lo(D_800E3900) # addiu $t9, $t9, 0x3900 +/* 079FC0 800793C0 0018C100 */ sll $t8, $t8, 4 +/* 079FC4 800793C4 0C034728 */ jal func_800D1CA0 +/* 079FC8 800793C8 03192021 */ addu $a0, $t8, $t9 +/* 079FCC 800793CC 0C034744 */ jal func_800D1D10 +/* 079FD0 800793D0 24040001 */ li $a0, 1 +/* 079FD4 800793D4 26110040 */ addiu $s1, $s0, 0x40 +/* 079FD8 800793D8 02202025 */ move $a0, $s1 +/* 079FDC 800793DC 26050058 */ addiu $a1, $s0, 0x58 +/* 079FE0 800793E0 0C032208 */ jal osCreateMesgQueue +/* 079FE4 800793E4 24060008 */ li $a2, 8 +/* 079FE8 800793E8 26040078 */ addiu $a0, $s0, 0x78 +/* 079FEC 800793EC 26050090 */ addiu $a1, $s0, 0x90 +/* 079FF0 800793F0 0C032208 */ jal osCreateMesgQueue +/* 079FF4 800793F4 24060008 */ li $a2, 8 +/* 079FF8 800793F8 24040004 */ li $a0, 4 +/* 079FFC 800793FC 02202825 */ move $a1, $s1 +/* 07A000 80079400 0C0332EC */ jal osSetEventMsg +/* 07A004 80079404 2406029B */ li $a2, 667 +/* 07A008 80079408 24040009 */ li $a0, 9 +/* 07A00C 8007940C 02202825 */ move $a1, $s1 +/* 07A010 80079410 0C0332EC */ jal osSetEventMsg +/* 07A014 80079414 2406029C */ li $a2, 668 +/* 07A018 80079418 2404000E */ li $a0, 14 +/* 07A01C 8007941C 02202825 */ move $a1, $s1 +/* 07A020 80079420 0C0332EC */ jal osSetEventMsg +/* 07A024 80079424 2406029D */ li $a2, 669 +/* 07A028 80079428 93A6003B */ lbu $a2, 0x3b($sp) +/* 07A02C 8007942C 02202025 */ move $a0, $s1 +/* 07A030 80079430 0C034760 */ jal osViSetEventMsg +/* 07A034 80079434 2405029A */ li $a1, 666 +/* 07A038 80079438 8FA8002C */ lw $t0, 0x2c($sp) +/* 07A03C 8007943C 8FA90030 */ lw $t1, 0x30($sp) +/* 07A040 80079440 261100B0 */ addiu $s1, $s0, 0xb0 +/* 07A044 80079444 3C068008 */ lui $a2, %hi(D_800795AC) # $a2, 0x8008 +/* 07A048 80079448 24C695AC */ addiu $a2, %lo(D_800795AC) # addiu $a2, $a2, -0x6a54 +/* 07A04C 8007944C 02202025 */ move $a0, $s1 +/* 07A050 80079450 24050005 */ li $a1, 5 +/* 07A054 80079454 02003825 */ move $a3, $s0 +/* 07A058 80079458 AFA80010 */ sw $t0, 0x10($sp) +/* 07A05C 8007945C 0C032214 */ jal osCreateThread +/* 07A060 80079460 AFA90014 */ sw $t1, 0x14($sp) +/* 07A064 80079464 0C032268 */ jal osStartThread +/* 07A068 80079468 02202025 */ move $a0, $s1 +/* 07A06C 8007946C 8FBF0024 */ lw $ra, 0x24($sp) +/* 07A070 80079470 8FB0001C */ lw $s0, 0x1c($sp) +/* 07A074 80079474 8FB10020 */ lw $s1, 0x20($sp) +/* 07A078 80079478 03E00008 */ jr $ra +/* 07A07C 8007947C 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_079F50/func_80079480.s b/asm/non_matchings/unknown_079F50/func_80079480.s new file mode 100644 index 00000000..84d52d07 --- /dev/null +++ b/asm/non_matchings/unknown_079F50/func_80079480.s @@ -0,0 +1,68 @@ +glabel func_80079480 +/* 07A080 80079480 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 07A084 80079484 AFBF0014 */ sw $ra, 0x14($sp) +/* 07A088 80079488 AFA40018 */ sw $a0, 0x18($sp) +/* 07A08C 8007948C AFA60020 */ sw $a2, 0x20($sp) +/* 07A090 80079490 AFA70024 */ sw $a3, 0x24($sp) +/* 07A094 80079494 24040001 */ li $a0, 1 +/* 07A098 80079498 0C03268C */ jal func_800C9A30 +/* 07A09C 8007949C AFA5001C */ sw $a1, 0x1c($sp) +/* 07A0A0 800794A0 8FA30018 */ lw $v1, 0x18($sp) +/* 07A0A4 800794A4 8FA5001C */ lw $a1, 0x1c($sp) +/* 07A0A8 800794A8 8FAE0020 */ lw $t6, 0x20($sp) +/* 07A0AC 800794AC 00402025 */ move $a0, $v0 +/* 07A0B0 800794B0 ACAE0008 */ sw $t6, 8($a1) +/* 07A0B4 800794B4 8C6F0260 */ lw $t7, 0x260($v1) +/* 07A0B8 800794B8 00000000 */ nop +/* 07A0BC 800794BC ACAF0004 */ sw $t7, 4($a1) +/* 07A0C0 800794C0 93B80027 */ lbu $t8, 0x27($sp) +/* 07A0C4 800794C4 00000000 */ nop +/* 07A0C8 800794C8 A0B80000 */ sb $t8, ($a1) +/* 07A0CC 800794CC 0C03268C */ jal func_800C9A30 +/* 07A0D0 800794D0 AC650260 */ sw $a1, 0x260($v1) +/* 07A0D4 800794D4 8FBF0014 */ lw $ra, 0x14($sp) +/* 07A0D8 800794D8 27BD0018 */ addiu $sp, $sp, 0x18 +/* 07A0DC 800794DC 03E00008 */ jr $ra +/* 07A0E0 800794E0 00000000 */ nop + +/* 07A0E4 800794E4 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 07A0E8 800794E8 AFBF0014 */ sw $ra, 0x14($sp) +/* 07A0EC 800794EC AFA40020 */ sw $a0, 0x20($sp) +/* 07A0F0 800794F0 8C830260 */ lw $v1, 0x260($a0) +/* 07A0F4 800794F4 AFA00018 */ sw $zero, 0x18($sp) +/* 07A0F8 800794F8 AFA50024 */ sw $a1, 0x24($sp) +/* 07A0FC 800794FC 24040001 */ li $a0, 1 +/* 07A100 80079500 0C03268C */ jal func_800C9A30 +/* 07A104 80079504 AFA3001C */ sw $v1, 0x1c($sp) +/* 07A108 80079508 8FA3001C */ lw $v1, 0x1c($sp) +/* 07A10C 8007950C 8FA50024 */ lw $a1, 0x24($sp) +/* 07A110 80079510 8FA60018 */ lw $a2, 0x18($sp) +/* 07A114 80079514 10600011 */ beqz $v1, .L8007955C +/* 07A118 80079518 00402025 */ move $a0, $v0 +.L8007951C: +/* 07A11C 8007951C 1465000A */ bne $v1, $a1, .L80079548 +/* 07A120 80079520 00000000 */ nop +/* 07A124 80079524 10C00004 */ beqz $a2, .L80079538 +/* 07A128 80079528 00000000 */ nop +/* 07A12C 8007952C 8CAF0004 */ lw $t7, 4($a1) +/* 07A130 80079530 1000000A */ b .L8007955C +/* 07A134 80079534 ACCF0004 */ sw $t7, 4($a2) +.L80079538: +/* 07A138 80079538 8CB80004 */ lw $t8, 4($a1) +/* 07A13C 8007953C 8FB90020 */ lw $t9, 0x20($sp) +/* 07A140 80079540 10000006 */ b .L8007955C +/* 07A144 80079544 AF380260 */ sw $t8, 0x260($t9) +.L80079548: +/* 07A148 80079548 00603025 */ move $a2, $v1 +/* 07A14C 8007954C 8C630004 */ lw $v1, 4($v1) +/* 07A150 80079550 00000000 */ nop +/* 07A154 80079554 1460FFF1 */ bnez $v1, .L8007951C +/* 07A158 80079558 00000000 */ nop +.L8007955C: +/* 07A15C 8007955C 0C03268C */ jal func_800C9A30 +/* 07A160 80079560 00000000 */ nop +/* 07A164 80079564 8FBF0014 */ lw $ra, 0x14($sp) +/* 07A168 80079568 27BD0020 */ addiu $sp, $sp, 0x20 +/* 07A16C 8007956C 03E00008 */ jr $ra +/* 07A170 80079570 00000000 */ nop + diff --git a/asm/non_matchings/unknown_079F50/func_80079574.s b/asm/non_matchings/unknown_079F50/func_80079574.s new file mode 100644 index 00000000..22dbf03f --- /dev/null +++ b/asm/non_matchings/unknown_079F50/func_80079574.s @@ -0,0 +1,4 @@ +glabel func_80079574 +/* 07A174 80079574 03E00008 */ jr $ra +/* 07A178 80079578 24820078 */ addiu $v0, $a0, 0x78 + diff --git a/asm/non_matchings/unknown_079F50/func_8007957C.s b/asm/non_matchings/unknown_079F50/func_8007957C.s new file mode 100644 index 00000000..52d55ce9 --- /dev/null +++ b/asm/non_matchings/unknown_079F50/func_8007957C.s @@ -0,0 +1,15 @@ +glabel func_8007957C +/* 07A17C 8007957C 03E00008 */ jr $ra +/* 07A180 80079580 24820040 */ addiu $v0, $a0, 0x40 + +/* 07A184 80079584 3C01800E */ lui $at, %hi(D_800DE740) # $at, 0x800e +/* 07A188 80079588 C424E740 */ lwc1 $f4, %lo(D_800DE740)($at) +/* 07A18C 8007958C 3C01800E */ lui $at, %hi(D_800DE748) # $at, 0x800e +/* 07A190 80079590 E4840000 */ swc1 $f4, ($a0) +/* 07A194 80079594 C426E748 */ lwc1 $f6, %lo(D_800DE748)($at) +/* 07A198 80079598 3C01800E */ lui $at, %hi(D_800DE74C) # $at, 0x800e +/* 07A19C 8007959C E4A60000 */ swc1 $f6, ($a1) +/* 07A1A0 800795A0 C428E74C */ lwc1 $f8, %lo(D_800DE74C)($at) +/* 07A1A4 800795A4 03E00008 */ jr $ra +/* 07A1A8 800795A8 E4C80000 */ swc1 $f8, ($a2) + diff --git a/asm/non_matchings/unknown_079F50/func_80079760.s b/asm/non_matchings/unknown_079F50/func_80079760.s new file mode 100644 index 00000000..43500e2b --- /dev/null +++ b/asm/non_matchings/unknown_079F50/func_80079760.s @@ -0,0 +1,53 @@ +glabel func_80079760 +/* 07A360 80079760 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 07A364 80079764 AFBF0014 */ sw $ra, 0x14($sp) +/* 07A368 80079768 AFA00020 */ sw $zero, 0x20($sp) +/* 07A36C 8007976C AFA0001C */ sw $zero, 0x1c($sp) +/* 07A370 80079770 8C8E0264 */ lw $t6, 0x264($a0) +/* 07A374 80079774 240F0001 */ li $t7, 1 +/* 07A378 80079778 11C00002 */ beqz $t6, .L80079784 +/* 07A37C 8007977C 27A50020 */ addiu $a1, $sp, 0x20 +/* 07A380 80079780 AC8F0284 */ sw $t7, 0x284($a0) +.L80079784: +/* 07A384 80079784 8C980284 */ lw $t8, 0x284($a0) +/* 07A388 80079788 27A6001C */ addiu $a2, $sp, 0x1c +/* 07A38C 8007978C 13000009 */ beqz $t8, .L800797B4 +/* 07A390 80079790 00000000 */ nop +/* 07A394 80079794 8C990274 */ lw $t9, 0x274($a0) +/* 07A398 80079798 00000000 */ nop +/* 07A39C 8007979C 13200005 */ beqz $t9, .L800797B4 +/* 07A3A0 800797A0 00000000 */ nop +/* 07A3A4 800797A4 0C01E820 */ jal func_8007A080 +/* 07A3A8 800797A8 00000000 */ nop +/* 07A3AC 800797AC 10000013 */ b .L800797FC +/* 07A3B0 800797B0 8FBF0014 */ lw $ra, 0x14($sp) +.L800797B4: +/* 07A3B4 800797B4 8C880274 */ lw $t0, 0x274($a0) +/* 07A3B8 800797B8 8C8B0278 */ lw $t3, 0x278($a0) +/* 07A3BC 800797BC 2D090001 */ sltiu $t1, $t0, 1 +/* 07A3C0 800797C0 00095040 */ sll $t2, $t1, 1 +/* 07A3C4 800797C4 2D6C0001 */ sltiu $t4, $t3, 1 +/* 07A3C8 800797C8 014C3825 */ or $a3, $t2, $t4 +/* 07A3CC 800797CC AFA70024 */ sw $a3, 0x24($sp) +/* 07A3D0 800797D0 0C01E835 */ jal func_8007A0D4 +/* 07A3D4 800797D4 AFA40028 */ sw $a0, 0x28($sp) +/* 07A3D8 800797D8 8FA70024 */ lw $a3, 0x24($sp) +/* 07A3DC 800797DC 8FA40028 */ lw $a0, 0x28($sp) +/* 07A3E0 800797E0 10470006 */ beq $v0, $a3, .L800797FC +/* 07A3E4 800797E4 8FBF0014 */ lw $ra, 0x14($sp) +/* 07A3E8 800797E8 8FA50020 */ lw $a1, 0x20($sp) +/* 07A3EC 800797EC 8FA6001C */ lw $a2, 0x1c($sp) +/* 07A3F0 800797F0 0C01E7EA */ jal func_80079FA8 +/* 07A3F4 800797F4 00000000 */ nop +/* 07A3F8 800797F8 8FBF0014 */ lw $ra, 0x14($sp) +.L800797FC: +/* 07A3FC 800797FC 27BD0028 */ addiu $sp, $sp, 0x28 +/* 07A400 80079800 03E00008 */ jr $ra +/* 07A404 80079804 00000000 */ nop + +/* 07A408 80079808 03E00008 */ jr $ra +/* 07A40C 8007980C 00000000 */ nop + +/* 07A410 80079810 03E00008 */ jr $ra +/* 07A414 80079814 00000000 */ nop + diff --git a/asm/non_matchings/unknown_079F50/func_80079818.s b/asm/non_matchings/unknown_079F50/func_80079818.s new file mode 100644 index 00000000..d6567ec4 --- /dev/null +++ b/asm/non_matchings/unknown_079F50/func_80079818.s @@ -0,0 +1,227 @@ +glabel func_80079818 +/* 07A418 80079818 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 07A41C 8007981C AFBF001C */ sw $ra, 0x1c($sp) +/* 07A420 80079820 AFB10018 */ sw $s1, 0x18($sp) +/* 07A424 80079824 AFB00014 */ sw $s0, 0x14($sp) +/* 07A428 80079828 AFA00044 */ sw $zero, 0x44($sp) +/* 07A42C 8007982C AFA00038 */ sw $zero, 0x38($sp) +/* 07A430 80079830 AFA00034 */ sw $zero, 0x34($sp) +/* 07A434 80079834 A3A00032 */ sb $zero, 0x32($sp) +/* 07A438 80079838 8C8E0274 */ lw $t6, 0x274($a0) +/* 07A43C 8007983C 00808825 */ move $s1, $a0 +/* 07A440 80079840 11C00007 */ beqz $t6, .L80079860 +/* 07A444 80079844 00008025 */ move $s0, $zero +/* 07A448 80079848 3C03800E */ lui $v1, %hi(D_800DE754) # $v1, 0x800e +/* 07A44C 8007984C 2463E754 */ addiu $v1, %lo(D_800DE754) # addiu $v1, $v1, -0x18ac +/* 07A450 80079850 8C6F0000 */ lw $t7, ($v1) +/* 07A454 80079854 00000000 */ nop +/* 07A458 80079858 25F80001 */ addiu $t8, $t7, 1 +/* 07A45C 8007985C AC780000 */ sw $t8, ($v1) +.L80079860: +/* 07A460 80079860 8E390278 */ lw $t9, 0x278($s1) +/* 07A464 80079864 3C03800E */ lui $v1, %hi(D_800DE754) # $v1, 0x800e +/* 07A468 80079868 13200006 */ beqz $t9, .L80079884 +/* 07A46C 8007986C 2463E754 */ addiu $v1, %lo(D_800DE754) # addiu $v1, $v1, -0x18ac +/* 07A470 80079870 3C08800E */ lui $t0, %hi(D_800DE758) # $t0, 0x800e +/* 07A474 80079874 8D08E758 */ lw $t0, %lo(D_800DE758)($t0) +/* 07A478 80079878 3C01800E */ lui $at, %hi(D_800DE758) # $at, 0x800e +/* 07A47C 8007987C 25090001 */ addiu $t1, $t0, 1 +/* 07A480 80079880 AC29E758 */ sw $t1, %lo(D_800DE758)($at) +.L80079884: +/* 07A484 80079884 8C6A0000 */ lw $t2, ($v1) +/* 07A488 80079888 8E220274 */ lw $v0, 0x274($s1) +/* 07A48C 8007988C 2941000B */ slti $at, $t2, 0xb +/* 07A490 80079890 14200009 */ bnez $at, .L800798B8 +/* 07A494 80079894 00000000 */ nop +/* 07A498 80079898 10400007 */ beqz $v0, .L800798B8 +/* 07A49C 8007989C 3C0400AA */ lui $a0, (0x00AAAA82 >> 16) # lui $a0, 0xaa +/* 07A4A0 800798A0 AC600000 */ sw $zero, ($v1) +/* 07A4A4 800798A4 24100001 */ li $s0, 1 +/* 07A4A8 800798A8 0C033490 */ jal func_800CD240 +/* 07A4AC 800798AC 3484AA82 */ ori $a0, (0x00AAAA82 & 0xFFFF) # ori $a0, $a0, 0xaa82 +/* 07A4B0 800798B0 10000005 */ b .L800798C8 +/* 07A4B4 800798B4 00000000 */ nop +.L800798B8: +/* 07A4B8 800798B8 10400003 */ beqz $v0, .L800798C8 +/* 07A4BC 800798BC 240B0001 */ li $t3, 1 +/* 07A4C0 800798C0 3C018012 */ lui $at, %hi(D_80126110) # $at, 0x8012 +/* 07A4C4 800798C4 AC2B6110 */ sw $t3, %lo(D_80126110)($at) +.L800798C8: +/* 07A4C8 800798C8 3C0C800E */ lui $t4, %hi(D_800DE758) # $t4, 0x800e +/* 07A4CC 800798CC 8D8CE758 */ lw $t4, %lo(D_800DE758)($t4) +/* 07A4D0 800798D0 8E220278 */ lw $v0, 0x278($s1) +/* 07A4D4 800798D4 2981000B */ slti $at, $t4, 0xb +/* 07A4D8 800798D8 14200016 */ bnez $at, .L80079934 +/* 07A4DC 800798DC 00000000 */ nop +/* 07A4E0 800798E0 10400014 */ beqz $v0, .L80079934 +/* 07A4E4 800798E4 00000000 */ nop +/* 07A4E8 800798E8 8C4D0068 */ lw $t5, 0x68($v0) +/* 07A4EC 800798EC 3C05800E */ lui $a1, %hi(D_800DE738) # $a1, 0x800e +/* 07A4F0 800798F0 15A00004 */ bnez $t5, .L80079904 +/* 07A4F4 800798F4 24A5E738 */ addiu $a1, %lo(D_800DE738) # addiu $a1, $a1, -0x18c8 +/* 07A4F8 800798F8 8C440050 */ lw $a0, 0x50($v0) +/* 07A4FC 800798FC 0C03238C */ jal func_800C8E30 +/* 07A500 80079900 24060001 */ li $a2, 1 +.L80079904: +/* 07A504 80079904 240E0001 */ li $t6, 1 +/* 07A508 80079908 A3AE0032 */ sb $t6, 0x32($sp) +/* 07A50C 8007990C AE200280 */ sw $zero, 0x280($s1) +/* 07A510 80079910 3C01800E */ lui $at, %hi(D_800DE758) # $at, 0x800e +/* 07A514 80079914 3C0400AA */ lui $a0, (0x00AAAA82 >> 16) # lui $a0, 0xaa +/* 07A518 80079918 AC20E758 */ sw $zero, %lo(D_800DE758)($at) +/* 07A51C 8007991C 0C033490 */ jal func_800CD240 +/* 07A520 80079920 3484AA82 */ ori $a0, (0x00AAAA82 & 0xFFFF) # ori $a0, $a0, 0xaa82 +/* 07A524 80079924 0C033494 */ jal func_800CD250 +/* 07A528 80079928 240401D6 */ li $a0, 470 +/* 07A52C 8007992C 10000005 */ b .L80079944 +/* 07A530 80079930 00000000 */ nop +.L80079934: +/* 07A534 80079934 10400003 */ beqz $v0, .L80079944 +/* 07A538 80079938 240F0001 */ li $t7, 1 +/* 07A53C 8007993C 3C018012 */ lui $at, %hi(D_80126114) # $at, 0x8012 +/* 07A540 80079940 AC2F6114 */ sw $t7, %lo(D_80126114)($at) +.L80079944: +/* 07A544 80079944 12000002 */ beqz $s0, .L80079950 +/* 07A548 80079948 26240078 */ addiu $a0, $s1, 0x78 +/* 07A54C 8007994C AE200274 */ sw $zero, 0x274($s1) +.L80079950: +/* 07A550 80079950 93B80032 */ lbu $t8, 0x32($sp) +/* 07A554 80079954 27A50044 */ addiu $a1, $sp, 0x44 +/* 07A558 80079958 13000002 */ beqz $t8, .L80079964 +/* 07A55C 8007995C 00003025 */ move $a2, $zero +/* 07A560 80079960 AE200278 */ sw $zero, 0x278($s1) +.L80079964: +/* 07A564 80079964 0C0322EC */ jal osRecvMesg +/* 07A568 80079968 AFA40028 */ sw $a0, 0x28($sp) +/* 07A56C 8007996C 2410FFFF */ li $s0, -1 +/* 07A570 80079970 1050000A */ beq $v0, $s0, .L8007999C +/* 07A574 80079974 00000000 */ nop +/* 07A578 80079978 8FA50044 */ lw $a1, 0x44($sp) +.L8007997C: +/* 07A57C 8007997C 0C01E7D0 */ jal func_80079F40 +/* 07A580 80079980 02202025 */ move $a0, $s1 +/* 07A584 80079984 8FA40028 */ lw $a0, 0x28($sp) +/* 07A588 80079988 27A50044 */ addiu $a1, $sp, 0x44 +/* 07A58C 8007998C 0C0322EC */ jal osRecvMesg +/* 07A590 80079990 00003025 */ move $a2, $zero +/* 07A594 80079994 1450FFF9 */ bne $v0, $s0, .L8007997C +/* 07A598 80079998 8FA50044 */ lw $a1, 0x44($sp) +.L8007999C: +/* 07A59C 8007999C 8E390274 */ lw $t9, 0x274($s1) +/* 07A5A0 800799A0 8E2A0278 */ lw $t2, 0x278($s1) +/* 07A5A4 800799A4 2F280001 */ sltiu $t0, $t9, 1 +/* 07A5A8 800799A8 00084840 */ sll $t1, $t0, 1 +/* 07A5AC 800799AC 2D4B0001 */ sltiu $t3, $t2, 1 +/* 07A5B0 800799B0 012B8025 */ or $s0, $t1, $t3 +/* 07A5B4 800799B4 02003825 */ move $a3, $s0 +/* 07A5B8 800799B8 02202025 */ move $a0, $s1 +/* 07A5BC 800799BC 27A50038 */ addiu $a1, $sp, 0x38 +/* 07A5C0 800799C0 0C01E835 */ jal func_8007A0D4 +/* 07A5C4 800799C4 27A60034 */ addiu $a2, $sp, 0x34 +/* 07A5C8 800799C8 10500005 */ beq $v0, $s0, .L800799E0 +/* 07A5CC 800799CC 00000000 */ nop +/* 07A5D0 800799D0 8FA50038 */ lw $a1, 0x38($sp) +/* 07A5D4 800799D4 8FA60034 */ lw $a2, 0x34($sp) +/* 07A5D8 800799D8 0C01E7EA */ jal func_80079FA8 +/* 07A5DC 800799DC 02202025 */ move $a0, $s1 +.L800799E0: +/* 07A5E0 800799E0 3C0D800E */ lui $t5, %hi(D_800DE764) # $t5, 0x800e +/* 07A5E4 800799E4 8DADE764 */ lw $t5, %lo(D_800DE764)($t5) +/* 07A5E8 800799E8 3C0C800E */ lui $t4, %hi(D_800DE760) # $t4, 0x800e +/* 07A5EC 800799EC 8D8CE760 */ lw $t4, %lo(D_800DE760)($t4) +/* 07A5F0 800799F0 25AF0001 */ addiu $t7, $t5, 1 +/* 07A5F4 800799F4 2DE10001 */ sltiu $at, $t7, 1 +/* 07A5F8 800799F8 01817021 */ addu $t6, $t4, $at +/* 07A5FC 800799FC 3C01800E */ lui $at, %hi(D_800DE764) # $at, 0x800e +/* 07A600 80079A00 3C02800E */ lui $v0, %hi(D_800DE750) # $v0, 0x800e +/* 07A604 80079A04 2442E750 */ addiu $v0, %lo(D_800DE750) # addiu $v0, $v0, -0x18b0 +/* 07A608 80079A08 AC2EE760 */ sw $t6, %lo(D_800DE760)($at) +/* 07A60C 80079A0C AC2FE764 */ sw $t7, %lo(D_800DE764)($at) +/* 07A610 80079A10 8C580000 */ lw $t8, ($v0) +/* 07A614 80079A14 00000000 */ nop +/* 07A618 80079A18 27190001 */ addiu $t9, $t8, 1 +/* 07A61C 80079A1C AC590000 */ sw $t9, ($v0) +/* 07A620 80079A20 8E280280 */ lw $t0, 0x280($s1) +/* 07A624 80079A24 8E23027C */ lw $v1, 0x27c($s1) +/* 07A628 80079A28 250A0001 */ addiu $t2, $t0, 1 +/* 07A62C 80079A2C 10600019 */ beqz $v1, .L80079A94 +/* 07A630 80079A30 AE2A0280 */ sw $t2, 0x280($s1) +/* 07A634 80079A34 2D410002 */ sltiu $at, $t2, 2 +/* 07A638 80079A38 14200016 */ bnez $at, .L80079A94 +/* 07A63C 80079A3C 00000000 */ nop +/* 07A640 80079A40 8C640050 */ lw $a0, 0x50($v1) +/* 07A644 80079A44 00601025 */ move $v0, $v1 +/* 07A648 80079A48 10800010 */ beqz $a0, .L80079A8C +/* 07A64C 80079A4C 00000000 */ nop +/* 07A650 80079A50 8C6B0068 */ lw $t3, 0x68($v1) +/* 07A654 80079A54 00000000 */ nop +/* 07A658 80079A58 15600005 */ bnez $t3, .L80079A70 +/* 07A65C 80079A5C 00000000 */ nop +/* 07A660 80079A60 8C6C0054 */ lw $t4, 0x54($v1) +/* 07A664 80079A64 3C05800E */ lui $a1, %hi(D_800DE730) # $a1, 0x800e +/* 07A668 80079A68 11800006 */ beqz $t4, .L80079A84 +/* 07A66C 80079A6C 24A5E730 */ addiu $a1, %lo(D_800DE730) # addiu $a1, $a1, -0x18d0 +.L80079A70: +/* 07A670 80079A70 8C450054 */ lw $a1, 0x54($v0) +/* 07A674 80079A74 0C03238C */ jal func_800C8E30 +/* 07A678 80079A78 24060001 */ li $a2, 1 +/* 07A67C 80079A7C 10000004 */ b .L80079A90 +/* 07A680 80079A80 AE200280 */ sw $zero, 0x280($s1) +.L80079A84: +/* 07A684 80079A84 0C03238C */ jal func_800C8E30 +/* 07A688 80079A88 24060001 */ li $a2, 1 +.L80079A8C: +/* 07A68C 80079A8C AE200280 */ sw $zero, 0x280($s1) +.L80079A90: +/* 07A690 80079A90 AE20027C */ sw $zero, 0x27c($s1) +.L80079A94: +/* 07A694 80079A94 8E300260 */ lw $s0, 0x260($s1) +/* 07A698 80079A98 00000000 */ nop +/* 07A69C 80079A9C 12000025 */ beqz $s0, .L80079B34 +/* 07A6A0 80079AA0 8FBF001C */ lw $ra, 0x1c($sp) +.L80079AA4: +/* 07A6A4 80079AA4 92020000 */ lbu $v0, ($s0) +/* 07A6A8 80079AA8 24010001 */ li $at, 1 +/* 07A6AC 80079AAC 14410016 */ bne $v0, $at, .L80079B08 +/* 07A6B0 80079AB0 3C04800E */ lui $a0, %hi(D_800DE760) # $a0, 0x800e +/* 07A6B4 80079AB4 3C05800E */ lui $a1, %hi(D_800DE764) # $a1, 0x800e +/* 07A6B8 80079AB8 8CA5E764 */ lw $a1, %lo(D_800DE764)($a1) +/* 07A6BC 80079ABC 8C84E760 */ lw $a0, %lo(D_800DE760)($a0) +/* 07A6C0 80079AC0 24060000 */ li $a2, 0 +/* 07A6C4 80079AC4 0C033AA3 */ jal __ull_rem +/* 07A6C8 80079AC8 24070002 */ li $a3, 2 +/* 07A6CC 80079ACC 14400014 */ bnez $v0, .L80079B20 +/* 07A6D0 80079AD0 00000000 */ nop +/* 07A6D4 80079AD4 14600012 */ bnez $v1, .L80079B20 +/* 07A6D8 80079AD8 02202825 */ move $a1, $s1 +/* 07A6DC 80079ADC 8E040008 */ lw $a0, 8($s0) +/* 07A6E0 80079AE0 0C03238C */ jal func_800C8E30 +/* 07A6E4 80079AE4 00003025 */ move $a2, $zero +/* 07A6E8 80079AE8 8E2D0264 */ lw $t5, 0x264($s1) +/* 07A6EC 80079AEC 00000000 */ nop +/* 07A6F0 80079AF0 11A0000B */ beqz $t5, .L80079B20 +/* 07A6F4 80079AF4 00000000 */ nop +/* 07A6F8 80079AF8 0C01E5D8 */ jal func_80079760 +/* 07A6FC 80079AFC 02202025 */ move $a0, $s1 +/* 07A700 80079B00 10000008 */ b .L80079B24 +/* 07A704 80079B04 8E100004 */ lw $s0, 4($s0) +.L80079B08: +/* 07A708 80079B08 24010002 */ li $at, 2 +/* 07A70C 80079B0C 14410004 */ bne $v0, $at, .L80079B20 +/* 07A710 80079B10 02202825 */ move $a1, $s1 +/* 07A714 80079B14 8E040008 */ lw $a0, 8($s0) +/* 07A718 80079B18 0C03238C */ jal func_800C8E30 +/* 07A71C 80079B1C 00003025 */ move $a2, $zero +.L80079B20: +/* 07A720 80079B20 8E100004 */ lw $s0, 4($s0) +.L80079B24: +/* 07A724 80079B24 00000000 */ nop +/* 07A728 80079B28 1600FFDE */ bnez $s0, .L80079AA4 +/* 07A72C 80079B2C 00000000 */ nop +/* 07A730 80079B30 8FBF001C */ lw $ra, 0x1c($sp) +.L80079B34: +/* 07A734 80079B34 8FB00014 */ lw $s0, 0x14($sp) +/* 07A738 80079B38 8FB10018 */ lw $s1, 0x18($sp) +/* 07A73C 80079B3C 03E00008 */ jr $ra +/* 07A740 80079B40 27BD0048 */ addiu $sp, $sp, 0x48 + diff --git a/asm/non_matchings/unknown_079F50/func_80079B44.s b/asm/non_matchings/unknown_079F50/func_80079B44.s new file mode 100644 index 00000000..182340db --- /dev/null +++ b/asm/non_matchings/unknown_079F50/func_80079B44.s @@ -0,0 +1,147 @@ +glabel func_80079B44 +/* 07A744 80079B44 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 07A748 80079B48 AFBF001C */ sw $ra, 0x1c($sp) +/* 07A74C 80079B4C AFB00018 */ sw $s0, 0x18($sp) +/* 07A750 80079B50 AFA00030 */ sw $zero, 0x30($sp) +/* 07A754 80079B54 AFA0002C */ sw $zero, 0x2c($sp) +/* 07A758 80079B58 8C850274 */ lw $a1, 0x274($a0) +/* 07A75C 80079B5C AC800274 */ sw $zero, 0x274($a0) +/* 07A760 80079B60 8CAE0010 */ lw $t6, 0x10($a1) +/* 07A764 80079B64 24010002 */ li $at, 2 +/* 07A768 80079B68 15C10039 */ bne $t6, $at, .L80079C50 +/* 07A76C 80079B6C 00808025 */ move $s0, $a0 +/* 07A770 80079B70 0C031E34 */ jal func_800C78D0 +/* 07A774 80079B74 AFA50034 */ sw $a1, 0x34($sp) +/* 07A778 80079B78 3C038012 */ lui $v1, %hi(D_80126124) # $v1, 0x8012 +/* 07A77C 80079B7C 24636124 */ addiu $v1, %lo(D_80126124) # addiu $v1, $v1, 0x6124 +/* 07A780 80079B80 AC620000 */ sw $v0, ($v1) +/* 07A784 80079B84 3C188012 */ lui $t8, %hi(D_80126120) # $t8, 0x8012 +/* 07A788 80079B88 8F186120 */ lw $t8, %lo(D_80126120)($t8) +/* 07A78C 80079B8C 3C04800E */ lui $a0, %hi(D_800DE74C) # $a0, 0x800e +/* 07A790 80079B90 0058C823 */ subu $t9, $v0, $t8 +/* 07A794 80079B94 44992000 */ mtc1 $t9, $f4 +/* 07A798 80079B98 8FA50034 */ lw $a1, 0x34($sp) +/* 07A79C 80079B9C 3C06800E */ lui $a2, %hi(D_800DE744) # $a2, 0x800e +/* 07A7A0 80079BA0 3C07800E */ lui $a3, %hi(D_800DE740) # $a3, 0x800e +/* 07A7A4 80079BA4 24E7E740 */ addiu $a3, %lo(D_800DE740) # addiu $a3, $a3, -0x18c0 +/* 07A7A8 80079BA8 24C6E744 */ addiu $a2, %lo(D_800DE744) # addiu $a2, $a2, -0x18bc +/* 07A7AC 80079BAC 2484E74C */ addiu $a0, %lo(D_800DE74C) # addiu $a0, $a0, -0x18b4 +/* 07A7B0 80079BB0 07210005 */ bgez $t9, .L80079BC8 +/* 07A7B4 80079BB4 468021A0 */ cvt.s.w $f6, $f4 +/* 07A7B8 80079BB8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 07A7BC 80079BBC 44814000 */ mtc1 $at, $f8 +/* 07A7C0 80079BC0 00000000 */ nop +/* 07A7C4 80079BC4 46083180 */ add.s $f6, $f6, $f8 +.L80079BC8: +/* 07A7C8 80079BC8 3C014270 */ li $at, 0x42700000 # 60.000000 +/* 07A7CC 80079BCC 44815000 */ mtc1 $at, $f10 +/* 07A7D0 80079BD0 3C01800E */ lui $at, %hi(D_800E796C) # $at, 0x800e +/* 07A7D4 80079BD4 460A3402 */ mul.s $f16, $f6, $f10 +/* 07A7D8 80079BD8 C432796C */ lwc1 $f18, %lo(D_800E796C)($at) +/* 07A7DC 80079BDC C4EA0000 */ lwc1 $f10, ($a3) +/* 07A7E0 80079BE0 C4C80000 */ lwc1 $f8, ($a2) +/* 07A7E4 80079BE4 46128103 */ div.s $f4, $f16, $f18 +/* 07A7E8 80079BE8 3C02800E */ lui $v0, %hi(D_800DE750) # $v0, 0x800e +/* 07A7EC 80079BEC E4840000 */ swc1 $f4, ($a0) +/* 07A7F0 80079BF0 C4800000 */ lwc1 $f0, ($a0) +/* 07A7F4 80079BF4 00000000 */ nop +/* 07A7F8 80079BF8 4600503C */ c.lt.s $f10, $f0 +/* 07A7FC 80079BFC 46004180 */ add.s $f6, $f8, $f0 +/* 07A800 80079C00 45000002 */ bc1f .L80079C0C +/* 07A804 80079C04 E4C60000 */ swc1 $f6, ($a2) +/* 07A808 80079C08 E4E00000 */ swc1 $f0, ($a3) +.L80079C0C: +/* 07A80C 80079C0C 8C42E750 */ lw $v0, %lo(D_800DE750)($v0) +/* 07A810 80079C10 240103E8 */ li $at, 1000 +/* 07A814 80079C14 0041001A */ div $zero, $v0, $at +/* 07A818 80079C18 24010001 */ li $at, 1 +/* 07A81C 80079C1C 00004010 */ mfhi $t0 +/* 07A820 80079C20 11010002 */ beq $t0, $at, .L80079C2C +/* 07A824 80079C24 24010002 */ li $at, 2 +/* 07A828 80079C28 15010009 */ bne $t0, $at, .L80079C50 +.L80079C2C: +/* 07A82C 80079C2C 3C0143FA */ li $at, 0x43FA0000 # 500.000000 +/* 07A830 80079C30 44819000 */ mtc1 $at, $f18 +/* 07A834 80079C34 C4D00000 */ lwc1 $f16, ($a2) +/* 07A838 80079C38 44800000 */ mtc1 $zero, $f0 +/* 07A83C 80079C3C 46128103 */ div.s $f4, $f16, $f18 +/* 07A840 80079C40 3C01800E */ lui $at, %hi(D_800DE748) # $at, 0x800e +/* 07A844 80079C44 E424E748 */ swc1 $f4, %lo(D_800DE748)($at) +/* 07A848 80079C48 E4C00000 */ swc1 $f0, ($a2) +/* 07A84C 80079C4C E4E00000 */ swc1 $f0, ($a3) +.L80079C50: +/* 07A850 80079C50 8CA20004 */ lw $v0, 4($a1) +/* 07A854 80079C54 2401FFFD */ li $at, -3 +/* 07A858 80079C58 30490010 */ andi $t1, $v0, 0x10 +/* 07A85C 80079C5C 11200026 */ beqz $t1, .L80079CF8 +/* 07A860 80079C60 00415024 */ and $t2, $v0, $at +/* 07A864 80079C64 24A40010 */ addiu $a0, $a1, 0x10 +/* 07A868 80079C68 0C03477C */ jal func_800D1DF0 +/* 07A86C 80079C6C AFA50034 */ sw $a1, 0x34($sp) +/* 07A870 80079C70 8FA50034 */ lw $a1, 0x34($sp) +/* 07A874 80079C74 10400015 */ beqz $v0, .L80079CCC +/* 07A878 80079C78 2401FFFD */ li $at, -3 +/* 07A87C 80079C7C 8CAA0004 */ lw $t2, 4($a1) +/* 07A880 80079C80 8CAC0008 */ lw $t4, 8($a1) +/* 07A884 80079C84 24010003 */ li $at, 3 +/* 07A888 80079C88 354B0020 */ ori $t3, $t2, 0x20 +/* 07A88C 80079C8C 318D0007 */ andi $t5, $t4, 7 +/* 07A890 80079C90 15A10009 */ bne $t5, $at, .L80079CB8 +/* 07A894 80079C94 ACAB0004 */ sw $t3, 4($a1) +/* 07A898 80079C98 8E0E0268 */ lw $t6, 0x268($s0) +/* 07A89C 80079C9C 00000000 */ nop +/* 07A8A0 80079CA0 ACAE0000 */ sw $t6, ($a1) +/* 07A8A4 80079CA4 8E0F0270 */ lw $t7, 0x270($s0) +/* 07A8A8 80079CA8 AE050268 */ sw $a1, 0x268($s0) +/* 07A8AC 80079CAC 15E00002 */ bnez $t7, .L80079CB8 +/* 07A8B0 80079CB0 00000000 */ nop +/* 07A8B4 80079CB4 AE050270 */ sw $a1, 0x270($s0) +.L80079CB8: +/* 07A8B8 80079CB8 8CA20008 */ lw $v0, 8($a1) +/* 07A8BC 80079CBC 00000000 */ nop +/* 07A8C0 80079CC0 30580007 */ andi $t8, $v0, 7 +/* 07A8C4 80079CC4 10000007 */ b .L80079CE4 +/* 07A8C8 80079CC8 03001025 */ move $v0, $t8 +.L80079CCC: +/* 07A8CC 80079CCC 8CB90004 */ lw $t9, 4($a1) +/* 07A8D0 80079CD0 8CA20008 */ lw $v0, 8($a1) +/* 07A8D4 80079CD4 03214024 */ and $t0, $t9, $at +/* 07A8D8 80079CD8 30490007 */ andi $t1, $v0, 7 +/* 07A8DC 80079CDC ACA80004 */ sw $t0, 4($a1) +/* 07A8E0 80079CE0 01201025 */ move $v0, $t1 +.L80079CE4: +/* 07A8E4 80079CE4 24010003 */ li $at, 3 +/* 07A8E8 80079CE8 10410006 */ beq $v0, $at, .L80079D04 +/* 07A8EC 80079CEC 00000000 */ nop +/* 07A8F0 80079CF0 10000005 */ b .L80079D08 +/* 07A8F4 80079CF4 8E0B0274 */ lw $t3, 0x274($s0) +.L80079CF8: +/* 07A8F8 80079CF8 ACAA0004 */ sw $t2, 4($a1) +/* 07A8FC 80079CFC 0C01E790 */ jal func_80079E40 +/* 07A900 80079D00 02002025 */ move $a0, $s0 +.L80079D04: +/* 07A904 80079D04 8E0B0274 */ lw $t3, 0x274($s0) +.L80079D08: +/* 07A908 80079D08 8E0E0278 */ lw $t6, 0x278($s0) +/* 07A90C 80079D0C 2D6C0001 */ sltiu $t4, $t3, 1 +/* 07A910 80079D10 000C6840 */ sll $t5, $t4, 1 +/* 07A914 80079D14 2DCF0001 */ sltiu $t7, $t6, 1 +/* 07A918 80079D18 01AF3825 */ or $a3, $t5, $t7 +/* 07A91C 80079D1C AFA70028 */ sw $a3, 0x28($sp) +/* 07A920 80079D20 02002025 */ move $a0, $s0 +/* 07A924 80079D24 27A50030 */ addiu $a1, $sp, 0x30 +/* 07A928 80079D28 0C01E835 */ jal func_8007A0D4 +/* 07A92C 80079D2C 27A6002C */ addiu $a2, $sp, 0x2c +/* 07A930 80079D30 8FA70028 */ lw $a3, 0x28($sp) +/* 07A934 80079D34 8FA50030 */ lw $a1, 0x30($sp) +/* 07A938 80079D38 10470005 */ beq $v0, $a3, .L80079D50 +/* 07A93C 80079D3C 8FBF001C */ lw $ra, 0x1c($sp) +/* 07A940 80079D40 8FA6002C */ lw $a2, 0x2c($sp) +/* 07A944 80079D44 0C01E7EA */ jal func_80079FA8 +/* 07A948 80079D48 02002025 */ move $a0, $s0 +/* 07A94C 80079D4C 8FBF001C */ lw $ra, 0x1c($sp) +.L80079D50: +/* 07A950 80079D50 8FB00018 */ lw $s0, 0x18($sp) +/* 07A954 80079D54 03E00008 */ jr $ra +/* 07A958 80079D58 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_079F50/func_80079D5C.s b/asm/non_matchings/unknown_079F50/func_80079D5C.s new file mode 100644 index 00000000..64de9d95 --- /dev/null +++ b/asm/non_matchings/unknown_079F50/func_80079D5C.s @@ -0,0 +1,38 @@ +glabel func_80079D5C +/* 07A95C 80079D5C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 07A960 80079D60 AFBF0014 */ sw $ra, 0x14($sp) +/* 07A964 80079D64 AFA00020 */ sw $zero, 0x20($sp) +/* 07A968 80079D68 AFA0001C */ sw $zero, 0x1c($sp) +/* 07A96C 80079D6C 8C850278 */ lw $a1, 0x278($a0) +/* 07A970 80079D70 AC800278 */ sw $zero, 0x278($a0) +/* 07A974 80079D74 8CAE0004 */ lw $t6, 4($a1) +/* 07A978 80079D78 2401FFFE */ li $at, -2 +/* 07A97C 80079D7C 01C17824 */ and $t7, $t6, $at +/* 07A980 80079D80 ACAF0004 */ sw $t7, 4($a1) +/* 07A984 80079D84 0C01E790 */ jal func_80079E40 +/* 07A988 80079D88 AFA40028 */ sw $a0, 0x28($sp) +/* 07A98C 80079D8C 8FA40028 */ lw $a0, 0x28($sp) +/* 07A990 80079D90 27A50020 */ addiu $a1, $sp, 0x20 +/* 07A994 80079D94 8C980274 */ lw $t8, 0x274($a0) +/* 07A998 80079D98 8C890278 */ lw $t1, 0x278($a0) +/* 07A99C 80079D9C 2F190001 */ sltiu $t9, $t8, 1 +/* 07A9A0 80079DA0 00194040 */ sll $t0, $t9, 1 +/* 07A9A4 80079DA4 2D2A0001 */ sltiu $t2, $t1, 1 +/* 07A9A8 80079DA8 010A3825 */ or $a3, $t0, $t2 +/* 07A9AC 80079DAC AFA70018 */ sw $a3, 0x18($sp) +/* 07A9B0 80079DB0 0C01E835 */ jal func_8007A0D4 +/* 07A9B4 80079DB4 27A6001C */ addiu $a2, $sp, 0x1c +/* 07A9B8 80079DB8 8FA70018 */ lw $a3, 0x18($sp) +/* 07A9BC 80079DBC 8FA40028 */ lw $a0, 0x28($sp) +/* 07A9C0 80079DC0 10470006 */ beq $v0, $a3, .L80079DDC +/* 07A9C4 80079DC4 8FBF0014 */ lw $ra, 0x14($sp) +/* 07A9C8 80079DC8 8FA50020 */ lw $a1, 0x20($sp) +/* 07A9CC 80079DCC 8FA6001C */ lw $a2, 0x1c($sp) +/* 07A9D0 80079DD0 0C01E7EA */ jal func_80079FA8 +/* 07A9D4 80079DD4 00000000 */ nop +/* 07A9D8 80079DD8 8FBF0014 */ lw $ra, 0x14($sp) +.L80079DDC: +/* 07A9DC 80079DDC 27BD0028 */ addiu $sp, $sp, 0x28 +/* 07A9E0 80079DE0 03E00008 */ jr $ra +/* 07A9E4 80079DE4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_079F50/func_80079DE8.s b/asm/non_matchings/unknown_079F50/func_80079DE8.s new file mode 100644 index 00000000..852ab2f3 --- /dev/null +++ b/asm/non_matchings/unknown_079F50/func_80079DE8.s @@ -0,0 +1,28 @@ +glabel func_80079DE8 +/* 07A9E8 80079DE8 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 07A9EC 80079DEC AFBF0014 */ sw $ra, 0x14($sp) +/* 07A9F0 80079DF0 1080000E */ beqz $a0, .L80079E2C +/* 07A9F4 80079DF4 AFA40020 */ sw $a0, 0x20($sp) +/* 07A9F8 80079DF8 0C03479C */ jal func_800D1E70 +/* 07A9FC 80079DFC 00000000 */ nop +/* 07AA00 80079E00 0C0347AC */ jal func_800D1EB0 +/* 07AA04 80079E04 AFA2001C */ sw $v0, 0x1c($sp) +/* 07AA08 80079E08 8FAF001C */ lw $t7, 0x1c($sp) +/* 07AA0C 80079E0C 00000000 */ nop +/* 07AA10 80079E10 104F0004 */ beq $v0, $t7, .L80079E24 +/* 07AA14 80079E14 8FA20020 */ lw $v0, 0x20($sp) +/* 07AA18 80079E18 10000005 */ b .L80079E30 +/* 07AA1C 80079E1C 00001025 */ move $v0, $zero +/* 07AA20 80079E20 8FA20020 */ lw $v0, 0x20($sp) +.L80079E24: +/* 07AA24 80079E24 10000003 */ b .L80079E34 +/* 07AA28 80079E28 8FBF0014 */ lw $ra, 0x14($sp) +.L80079E2C: +/* 07AA2C 80079E2C 00001025 */ move $v0, $zero +.L80079E30: +/* 07AA30 80079E30 8FBF0014 */ lw $ra, 0x14($sp) +.L80079E34: +/* 07AA34 80079E34 27BD0020 */ addiu $sp, $sp, 0x20 +/* 07AA38 80079E38 03E00008 */ jr $ra +/* 07AA3C 80079E3C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_079F50/func_80079E40.s b/asm/non_matchings/unknown_079F50/func_80079E40.s new file mode 100644 index 00000000..b5be5402 --- /dev/null +++ b/asm/non_matchings/unknown_079F50/func_80079E40.s @@ -0,0 +1,75 @@ +glabel func_80079E40 +/* 07AA40 80079E40 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 07AA44 80079E44 AFBF0014 */ sw $ra, 0x14($sp) +/* 07AA48 80079E48 AFA40018 */ sw $a0, 0x18($sp) +/* 07AA4C 80079E4C 8CAE0004 */ lw $t6, 4($a1) +/* 07AA50 80079E50 00A03825 */ move $a3, $a1 +/* 07AA54 80079E54 31CF0003 */ andi $t7, $t6, 3 +/* 07AA58 80079E58 15E00035 */ bnez $t7, .L80079F30 +/* 07AA5C 80079E5C 00001025 */ move $v0, $zero +/* 07AA60 80079E60 8CA40050 */ lw $a0, 0x50($a1) +/* 07AA64 80079E64 00000000 */ nop +/* 07AA68 80079E68 1080002F */ beqz $a0, .L80079F28 +/* 07AA6C 80079E6C 00000000 */ nop +/* 07AA70 80079E70 8CB80008 */ lw $t8, 8($a1) +/* 07AA74 80079E74 8FA80018 */ lw $t0, 0x18($sp) +/* 07AA78 80079E78 33190020 */ andi $t9, $t8, 0x20 +/* 07AA7C 80079E7C 1320001B */ beqz $t9, .L80079EEC +/* 07AA80 80079E80 00000000 */ nop +/* 07AA84 80079E84 8D090280 */ lw $t1, 0x280($t0) +/* 07AA88 80079E88 24020001 */ li $v0, 1 +/* 07AA8C 80079E8C 2D210002 */ sltiu $at, $t1, 2 +/* 07AA90 80079E90 10200003 */ beqz $at, .L80079EA0 +/* 07AA94 80079E94 00000000 */ nop +/* 07AA98 80079E98 10000025 */ b .L80079F30 +/* 07AA9C 80079E9C AD05027C */ sw $a1, 0x27c($t0) +.L80079EA0: +/* 07AAA0 80079EA0 8CEA0068 */ lw $t2, 0x68($a3) +/* 07AAA4 80079EA4 00000000 */ nop +/* 07AAA8 80079EA8 15400005 */ bnez $t2, .L80079EC0 +/* 07AAAC 80079EAC 00000000 */ nop +/* 07AAB0 80079EB0 8CEB0054 */ lw $t3, 0x54($a3) +/* 07AAB4 80079EB4 3C05800E */ lui $a1, %hi(D_800DE730) # $a1, 0x800e +/* 07AAB8 80079EB8 11600006 */ beqz $t3, .L80079ED4 +/* 07AABC 80079EBC 24A5E730 */ addiu $a1, %lo(D_800DE730) # addiu $a1, $a1, -0x18d0 +.L80079EC0: +/* 07AAC0 80079EC0 8CE50054 */ lw $a1, 0x54($a3) +/* 07AAC4 80079EC4 0C03238C */ jal func_800C8E30 +/* 07AAC8 80079EC8 24060001 */ li $a2, 1 +/* 07AACC 80079ECC 10000004 */ b .L80079EE0 +/* 07AAD0 80079ED0 8FAC0018 */ lw $t4, 0x18($sp) +.L80079ED4: +/* 07AAD4 80079ED4 0C03238C */ jal func_800C8E30 +/* 07AAD8 80079ED8 24060001 */ li $a2, 1 +/* 07AADC 80079EDC 8FAC0018 */ lw $t4, 0x18($sp) +.L80079EE0: +/* 07AAE0 80079EE0 24020001 */ li $v0, 1 +/* 07AAE4 80079EE4 10000012 */ b .L80079F30 +/* 07AAE8 80079EE8 AD800280 */ sw $zero, 0x280($t4) +.L80079EEC: +/* 07AAEC 80079EEC 8CED0068 */ lw $t5, 0x68($a3) +/* 07AAF0 80079EF0 00000000 */ nop +/* 07AAF4 80079EF4 15A00005 */ bnez $t5, .L80079F0C +/* 07AAF8 80079EF8 00000000 */ nop +/* 07AAFC 80079EFC 8CEE0054 */ lw $t6, 0x54($a3) +/* 07AB00 80079F00 3C05800E */ lui $a1, %hi(D_800DE730) # $a1, 0x800e +/* 07AB04 80079F04 11C00006 */ beqz $t6, .L80079F20 +/* 07AB08 80079F08 24A5E730 */ addiu $a1, %lo(D_800DE730) # addiu $a1, $a1, -0x18d0 +.L80079F0C: +/* 07AB0C 80079F0C 8CE50054 */ lw $a1, 0x54($a3) +/* 07AB10 80079F10 0C03238C */ jal func_800C8E30 +/* 07AB14 80079F14 24060001 */ li $a2, 1 +/* 07AB18 80079F18 10000005 */ b .L80079F30 +/* 07AB1C 80079F1C 24020001 */ li $v0, 1 +.L80079F20: +/* 07AB20 80079F20 0C03238C */ jal func_800C8E30 +/* 07AB24 80079F24 24060001 */ li $a2, 1 +.L80079F28: +/* 07AB28 80079F28 10000001 */ b .L80079F30 +/* 07AB2C 80079F2C 24020001 */ li $v0, 1 +.L80079F30: +/* 07AB30 80079F30 8FBF0014 */ lw $ra, 0x14($sp) +/* 07AB34 80079F34 27BD0018 */ addiu $sp, $sp, 0x18 +/* 07AB38 80079F38 03E00008 */ jr $ra +/* 07AB3C 80079F3C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_079F50/func_80079F40.s b/asm/non_matchings/unknown_079F50/func_80079F40.s new file mode 100644 index 00000000..9e2c0c3c --- /dev/null +++ b/asm/non_matchings/unknown_079F50/func_80079F40.s @@ -0,0 +1,34 @@ +glabel func_80079F40 +/* 07AB40 80079F40 8CA20010 */ lw $v0, 0x10($a1) +/* 07AB44 80079F44 24010002 */ li $at, 2 +/* 07AB48 80079F48 1441000A */ bne $v0, $at, .L80079F74 +/* 07AB4C 80079F4C 00000000 */ nop +/* 07AB50 80079F50 8C82026C */ lw $v0, 0x26c($a0) +/* 07AB54 80079F54 00000000 */ nop +/* 07AB58 80079F58 10400003 */ beqz $v0, .L80079F68 +/* 07AB5C 80079F5C 00000000 */ nop +/* 07AB60 80079F60 10000002 */ b .L80079F6C +/* 07AB64 80079F64 AC450000 */ sw $a1, ($v0) +.L80079F68: +/* 07AB68 80079F68 AC850264 */ sw $a1, 0x264($a0) +.L80079F6C: +/* 07AB6C 80079F6C 10000009 */ b .L80079F94 +/* 07AB70 80079F70 AC85026C */ sw $a1, 0x26c($a0) +.L80079F74: +/* 07AB74 80079F74 8C820270 */ lw $v0, 0x270($a0) +/* 07AB78 80079F78 00000000 */ nop +/* 07AB7C 80079F7C 10400003 */ beqz $v0, .L80079F8C +/* 07AB80 80079F80 00000000 */ nop +/* 07AB84 80079F84 10000002 */ b .L80079F90 +/* 07AB88 80079F88 AC450000 */ sw $a1, ($v0) +.L80079F8C: +/* 07AB8C 80079F8C AC850268 */ sw $a1, 0x268($a0) +.L80079F90: +/* 07AB90 80079F90 AC850270 */ sw $a1, 0x270($a0) +.L80079F94: +/* 07AB94 80079F94 8CAE0008 */ lw $t6, 8($a1) +/* 07AB98 80079F98 ACA00000 */ sw $zero, ($a1) +/* 07AB9C 80079F9C 31CF0003 */ andi $t7, $t6, 3 +/* 07ABA0 80079FA0 03E00008 */ jr $ra +/* 07ABA4 80079FA4 ACAF0004 */ sw $t7, 4($a1) + diff --git a/asm/non_matchings/unknown_079F50/func_80079FA8.s b/asm/non_matchings/unknown_079F50/func_80079FA8.s new file mode 100644 index 00000000..1d53cb4f --- /dev/null +++ b/asm/non_matchings/unknown_079F50/func_80079FA8.s @@ -0,0 +1,59 @@ +glabel func_80079FA8 +/* 07ABA8 80079FA8 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 07ABAC 80079FAC AFB10018 */ sw $s1, 0x18($sp) +/* 07ABB0 80079FB0 AFB00014 */ sw $s0, 0x14($sp) +/* 07ABB4 80079FB4 00A08025 */ move $s0, $a1 +/* 07ABB8 80079FB8 00C08825 */ move $s1, $a2 +/* 07ABBC 80079FBC AFBF001C */ sw $ra, 0x1c($sp) +/* 07ABC0 80079FC0 10A0001D */ beqz $a1, .L8007A038 +/* 07ABC4 80079FC4 AFA40028 */ sw $a0, 0x28($sp) +/* 07ABC8 80079FC8 8CAE0010 */ lw $t6, 0x10($a1) +/* 07ABCC 80079FCC 24010002 */ li $at, 2 +/* 07ABD0 80079FD0 15C10007 */ bne $t6, $at, .L80079FF0 +/* 07ABD4 80079FD4 00000000 */ nop +/* 07ABD8 80079FD8 0C034628 */ jal func_800D18A0 +/* 07ABDC 80079FDC 00000000 */ nop +/* 07ABE0 80079FE0 0C031E34 */ jal func_800C78D0 +/* 07ABE4 80079FE4 00000000 */ nop +/* 07ABE8 80079FE8 3C018012 */ lui $at, %hi(D_80126120) # $at, 0x8012 +/* 07ABEC 80079FEC AC226120 */ sw $v0, %lo(D_80126120)($at) +.L80079FF0: +/* 07ABF0 80079FF0 8E0F0004 */ lw $t7, 4($s0) +/* 07ABF4 80079FF4 2401FFCF */ li $at, -49 +/* 07ABF8 80079FF8 01E1C024 */ and $t8, $t7, $at +/* 07ABFC 80079FFC AE180004 */ sw $t8, 4($s0) +/* 07AC00 8007A000 26040010 */ addiu $a0, $s0, 0x10 +/* 07AC04 8007A004 0C034803 */ jal func_800D200C +/* 07AC08 8007A008 AFA40024 */ sw $a0, 0x24($sp) +/* 07AC0C 8007A00C 8FA40024 */ lw $a0, 0x24($sp) +/* 07AC10 8007A010 0C03485B */ jal func_800D216C +/* 07AC14 8007A014 00000000 */ nop +/* 07AC18 8007A018 3C01800E */ lui $at, %hi(D_800DE754) # $at, 0x800e +/* 07AC1C 8007A01C AC20E754 */ sw $zero, %lo(D_800DE754)($at) +/* 07AC20 8007A020 8FB90028 */ lw $t9, 0x28($sp) +/* 07AC24 8007A024 3C01800E */ lui $at, %hi(D_800DE758) # $at, 0x800e +/* 07AC28 8007A028 AC20E758 */ sw $zero, %lo(D_800DE758)($at) +/* 07AC2C 8007A02C 16110002 */ bne $s0, $s1, .L8007A038 +/* 07AC30 8007A030 AF300274 */ sw $s0, 0x274($t9) +/* 07AC34 8007A034 AF310278 */ sw $s1, 0x278($t9) +.L8007A038: +/* 07AC38 8007A038 1220000D */ beqz $s1, .L8007A070 +/* 07AC3C 8007A03C 8FBF001C */ lw $ra, 0x1c($sp) +/* 07AC40 8007A040 1230000B */ beq $s1, $s0, .L8007A070 +/* 07AC44 8007A044 8FBF001C */ lw $ra, 0x1c($sp) +/* 07AC48 8007A048 8E28003C */ lw $t0, 0x3c($s1) +/* 07AC4C 8007A04C 8E240038 */ lw $a0, 0x38($s1) +/* 07AC50 8007A050 8D060000 */ lw $a2, ($t0) +/* 07AC54 8007A054 8D070004 */ lw $a3, 4($t0) +/* 07AC58 8007A058 0C034638 */ jal func_800D18E0 +/* 07AC5C 8007A05C 00000000 */ nop +/* 07AC60 8007A060 8FA90028 */ lw $t1, 0x28($sp) +/* 07AC64 8007A064 00000000 */ nop +/* 07AC68 8007A068 AD310278 */ sw $s1, 0x278($t1) +/* 07AC6C 8007A06C 8FBF001C */ lw $ra, 0x1c($sp) +.L8007A070: +/* 07AC70 8007A070 8FB00014 */ lw $s0, 0x14($sp) +/* 07AC74 8007A074 8FB10018 */ lw $s1, 0x18($sp) +/* 07AC78 8007A078 03E00008 */ jr $ra +/* 07AC7C 8007A07C 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_079F50/func_8007A080.s b/asm/non_matchings/unknown_079F50/func_8007A080.s new file mode 100644 index 00000000..b1d947f5 --- /dev/null +++ b/asm/non_matchings/unknown_079F50/func_8007A080.s @@ -0,0 +1,24 @@ +glabel func_8007A080 +/* 07AC80 8007A080 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 07AC84 8007A084 AFBF0014 */ sw $ra, 0x14($sp) +/* 07AC88 8007A088 8C820274 */ lw $v0, 0x274($a0) +/* 07AC8C 8007A08C 24010001 */ li $at, 1 +/* 07AC90 8007A090 8C4E0010 */ lw $t6, 0x10($v0) +/* 07AC94 8007A094 00000000 */ nop +/* 07AC98 8007A098 15C1000B */ bne $t6, $at, .L8007A0C8 +/* 07AC9C 8007A09C 8FBF0014 */ lw $ra, 0x14($sp) +/* 07ACA0 8007A0A0 8C4F0004 */ lw $t7, 4($v0) +/* 07ACA4 8007A0A4 00000000 */ nop +/* 07ACA8 8007A0A8 35F80010 */ ori $t8, $t7, 0x10 +/* 07ACAC 8007A0AC 0C03486C */ jal func_800D21B0 +/* 07ACB0 8007A0B0 AC580004 */ sw $t8, 4($v0) +/* 07ACB4 8007A0B4 3C018012 */ lui $at, %hi(D_8012611C) # $at, 0x8012 +/* 07ACB8 8007A0B8 AC226118 */ sw $v0, %lo(D_80126118)($at) +/* 07ACBC 8007A0BC 0C034890 */ jal func_800D2240 +/* 07ACC0 8007A0C0 AC23611C */ sw $v1, %lo(D_8012611C)($at) +/* 07ACC4 8007A0C4 8FBF0014 */ lw $ra, 0x14($sp) +.L8007A0C8: +/* 07ACC8 8007A0C8 27BD0018 */ addiu $sp, $sp, 0x18 +/* 07ACCC 8007A0CC 03E00008 */ jr $ra +/* 07ACD0 8007A0D0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_079F50/func_8007A0D4.s b/asm/non_matchings/unknown_079F50/func_8007A0D4.s new file mode 100644 index 00000000..d76654bc --- /dev/null +++ b/asm/non_matchings/unknown_079F50/func_8007A0D4.s @@ -0,0 +1,138 @@ +glabel func_8007A0D4 +/* 07ACD4 8007A0D4 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 07ACD8 8007A0D8 AFB10018 */ sw $s1, 0x18($sp) +/* 07ACDC 8007A0DC 00808825 */ move $s1, $a0 +/* 07ACE0 8007A0E0 AFBF001C */ sw $ra, 0x1c($sp) +/* 07ACE4 8007A0E4 AFB00014 */ sw $s0, 0x14($sp) +/* 07ACE8 8007A0E8 2408FFFD */ li $t0, -3 +.L8007A0EC: +/* 07ACEC 8007A0EC 8E2E0284 */ lw $t6, 0x284($s1) +/* 07ACF0 8007A0F0 8E300268 */ lw $s0, 0x268($s1) +/* 07ACF4 8007A0F4 8E220264 */ lw $v0, 0x264($s1) +/* 07ACF8 8007A0F8 11C00016 */ beqz $t6, .L8007A154 +/* 07ACFC 8007A0FC 00E01825 */ move $v1, $a3 +/* 07AD00 8007A100 30EF0002 */ andi $t7, $a3, 2 +/* 07AD04 8007A104 11E00014 */ beqz $t7, .L8007A158 +/* 07AD08 8007A108 02002025 */ move $a0, $s0 +/* 07AD0C 8007A10C 12000008 */ beqz $s0, .L8007A130 +/* 07AD10 8007A110 00000000 */ nop +/* 07AD14 8007A114 8E180008 */ lw $t8, 8($s0) +/* 07AD18 8007A118 00E81824 */ and $v1, $a3, $t0 +/* 07AD1C 8007A11C 33190010 */ andi $t9, $t8, 0x10 +/* 07AD20 8007A120 13200003 */ beqz $t9, .L8007A130 +/* 07AD24 8007A124 00000000 */ nop +/* 07AD28 8007A128 1000005E */ b .L8007A2A4 +/* 07AD2C 8007A12C ACB00000 */ sw $s0, ($a1) +.L8007A130: +/* 07AD30 8007A130 ACA20000 */ sw $v0, ($a1) +/* 07AD34 8007A134 8E2A0264 */ lw $t2, 0x264($s1) +/* 07AD38 8007A138 AE200284 */ sw $zero, 0x284($s1) +/* 07AD3C 8007A13C 8D4B0000 */ lw $t3, ($t2) +/* 07AD40 8007A140 00E81824 */ and $v1, $a3, $t0 +/* 07AD44 8007A144 15600057 */ bnez $t3, .L8007A2A4 +/* 07AD48 8007A148 AE2B0264 */ sw $t3, 0x264($s1) +/* 07AD4C 8007A14C 10000055 */ b .L8007A2A4 +/* 07AD50 8007A150 AE20026C */ sw $zero, 0x26c($s1) +.L8007A154: +/* 07AD54 8007A154 02002025 */ move $a0, $s0 +.L8007A158: +/* 07AD58 8007A158 AFA30024 */ sw $v1, 0x24($sp) +/* 07AD5C 8007A15C AFA5002C */ sw $a1, 0x2c($sp) +/* 07AD60 8007A160 AFA60030 */ sw $a2, 0x30($sp) +/* 07AD64 8007A164 0C01E77A */ jal func_80079DE8 +/* 07AD68 8007A168 AFA70034 */ sw $a3, 0x34($sp) +/* 07AD6C 8007A16C 8FA30024 */ lw $v1, 0x24($sp) +/* 07AD70 8007A170 8FA5002C */ lw $a1, 0x2c($sp) +/* 07AD74 8007A174 8FA60030 */ lw $a2, 0x30($sp) +/* 07AD78 8007A178 8FA70034 */ lw $a3, 0x34($sp) +/* 07AD7C 8007A17C 2408FFFD */ li $t0, -3 +/* 07AD80 8007A180 10400048 */ beqz $v0, .L8007A2A4 +/* 07AD84 8007A184 2409FFFE */ li $t1, -2 +/* 07AD88 8007A188 8E0D0008 */ lw $t5, 8($s0) +/* 07AD8C 8007A18C 00000000 */ nop +/* 07AD90 8007A190 31AE0007 */ andi $t6, $t5, 7 +/* 07AD94 8007A194 25CFFFFF */ addiu $t7, $t6, -1 +/* 07AD98 8007A198 2DE10007 */ sltiu $at, $t7, 7 +/* 07AD9C 8007A19C 10200041 */ beqz $at, .L8007A2A4 +/* 07ADA0 8007A1A0 000F7880 */ sll $t7, $t7, 2 +/* 07ADA4 8007A1A4 3C01800E */ lui $at, 0x800e +/* 07ADA8 8007A1A8 002F0821 */ addu $at, $at, $t7 +/* 07ADAC 8007A1AC 8C2F7970 */ lw $t7, 0x7970($at) +/* 07ADB0 8007A1B0 00000000 */ nop +/* 07ADB4 8007A1B4 01E00008 */ jr $t7 +/* 07ADB8 8007A1B8 00000000 */ nop +/* 07ADBC 8007A1BC 8E180004 */ lw $t8, 4($s0) +/* 07ADC0 8007A1C0 30EA0002 */ andi $t2, $a3, 2 +/* 07ADC4 8007A1C4 33190020 */ andi $t9, $t8, 0x20 +/* 07ADC8 8007A1C8 13200013 */ beqz $t9, .L8007A218 +/* 07ADCC 8007A1CC 24010003 */ li $at, 3 +/* 07ADD0 8007A1D0 11400034 */ beqz $t2, .L8007A2A4 +/* 07ADD4 8007A1D4 00000000 */ nop +/* 07ADD8 8007A1D8 ACB00000 */ sw $s0, ($a1) +/* 07ADDC 8007A1DC 8E0B0004 */ lw $t3, 4($s0) +/* 07ADE0 8007A1E0 00E81824 */ and $v1, $a3, $t0 +/* 07ADE4 8007A1E4 316C0001 */ andi $t4, $t3, 1 +/* 07ADE8 8007A1E8 11800003 */ beqz $t4, .L8007A1F8 +/* 07ADEC 8007A1EC 00000000 */ nop +/* 07ADF0 8007A1F0 ACD00000 */ sw $s0, ($a2) +/* 07ADF4 8007A1F4 00691824 */ and $v1, $v1, $t1 +.L8007A1F8: +/* 07ADF8 8007A1F8 8E2D0268 */ lw $t5, 0x268($s1) +/* 07ADFC 8007A1FC 00000000 */ nop +/* 07AE00 8007A200 8DAE0000 */ lw $t6, ($t5) +/* 07AE04 8007A204 00000000 */ nop +/* 07AE08 8007A208 15C00026 */ bnez $t6, .L8007A2A4 +/* 07AE0C 8007A20C AE2E0268 */ sw $t6, 0x268($s1) +/* 07AE10 8007A210 10000024 */ b .L8007A2A4 +/* 07AE14 8007A214 AE200270 */ sw $zero, 0x270($s1) +.L8007A218: +/* 07AE18 8007A218 14E10022 */ bne $a3, $at, .L8007A2A4 +/* 07AE1C 8007A21C 00000000 */ nop +/* 07AE20 8007A220 ACD00000 */ sw $s0, ($a2) +/* 07AE24 8007A224 ACB00000 */ sw $s0, ($a1) +/* 07AE28 8007A228 8E380268 */ lw $t8, 0x268($s1) +/* 07AE2C 8007A22C 2401FFFC */ li $at, -4 +/* 07AE30 8007A230 8F190000 */ lw $t9, ($t8) +/* 07AE34 8007A234 00E11824 */ and $v1, $a3, $at +/* 07AE38 8007A238 1720001A */ bnez $t9, .L8007A2A4 +/* 07AE3C 8007A23C AE390268 */ sw $t9, 0x268($s1) +/* 07AE40 8007A240 10000018 */ b .L8007A2A4 +/* 07AE44 8007A244 AE200270 */ sw $zero, 0x270($s1) +/* 07AE48 8007A248 8E020004 */ lw $v0, 4($s0) +/* 07AE4C 8007A24C 30EC0002 */ andi $t4, $a3, 2 +/* 07AE50 8007A250 304B0002 */ andi $t3, $v0, 2 +/* 07AE54 8007A254 11600007 */ beqz $t3, .L8007A274 +/* 07AE58 8007A258 304D0001 */ andi $t5, $v0, 1 +/* 07AE5C 8007A25C 11800005 */ beqz $t4, .L8007A274 +/* 07AE60 8007A260 304D0001 */ andi $t5, $v0, 1 +/* 07AE64 8007A264 ACB00000 */ sw $s0, ($a1) +/* 07AE68 8007A268 8E020004 */ lw $v0, 4($s0) +/* 07AE6C 8007A26C 00E81824 */ and $v1, $a3, $t0 +/* 07AE70 8007A270 304D0001 */ andi $t5, $v0, 1 +.L8007A274: +/* 07AE74 8007A274 11A0000B */ beqz $t5, .L8007A2A4 +/* 07AE78 8007A278 306E0001 */ andi $t6, $v1, 1 +/* 07AE7C 8007A27C 11C00009 */ beqz $t6, .L8007A2A4 +/* 07AE80 8007A280 00000000 */ nop +/* 07AE84 8007A284 ACD00000 */ sw $s0, ($a2) +/* 07AE88 8007A288 8E2F0268 */ lw $t7, 0x268($s1) +/* 07AE8C 8007A28C 00691824 */ and $v1, $v1, $t1 +/* 07AE90 8007A290 8DF80000 */ lw $t8, ($t7) +/* 07AE94 8007A294 00000000 */ nop +/* 07AE98 8007A298 17000002 */ bnez $t8, .L8007A2A4 +/* 07AE9C 8007A29C AE380268 */ sw $t8, 0x268($s1) +/* 07AEA0 8007A2A0 AE200270 */ sw $zero, 0x270($s1) +.L8007A2A4: +/* 07AEA4 8007A2A4 10670004 */ beq $v1, $a3, .L8007A2B8 +/* 07AEA8 8007A2A8 8FBF001C */ lw $ra, 0x1c($sp) +/* 07AEAC 8007A2AC 1000FF8F */ b .L8007A0EC +/* 07AEB0 8007A2B0 00603825 */ move $a3, $v1 +/* 07AEB4 8007A2B4 8FBF001C */ lw $ra, 0x1c($sp) +.L8007A2B8: +/* 07AEB8 8007A2B8 8FB00014 */ lw $s0, 0x14($sp) +/* 07AEBC 8007A2BC 8FB10018 */ lw $s1, 0x18($sp) +/* 07AEC0 8007A2C0 27BD0028 */ addiu $sp, $sp, 0x28 +/* 07AEC4 8007A2C4 03E00008 */ jr $ra +/* 07AEC8 8007A2C8 00601025 */ move $v0, $v1 + +/* 07AECC 8007A2CC 00000000 */ nop diff --git a/asm/non_matchings/unknown_079F50/func_8007A2D0.s b/asm/non_matchings/unknown_079F50/func_8007A2D0.s new file mode 100644 index 00000000..ab50d7da --- /dev/null +++ b/asm/non_matchings/unknown_079F50/func_8007A2D0.s @@ -0,0 +1,19 @@ +glabel func_8007A2D0 +/* 07AED0 8007A2D0 00057880 */ sll $t7, $a1, 2 +/* 07AED4 8007A2D4 8C830000 */ lw $v1, ($a0) +/* 07AED8 8007A2D8 31F8FFFF */ andi $t8, $t7, 0xffff +/* 07AEDC 8007A2DC 0018CA00 */ sll $t9, $t8, 8 +/* 07AEE0 8007A2E0 3C01BC00 */ lui $at, 0xbc00 +/* 07AEE4 8007A2E4 03214025 */ or $t0, $t9, $at +/* 07AEE8 8007A2E8 3C018000 */ lui $at, 0x8000 +/* 07AEEC 8007A2EC 246E0008 */ addiu $t6, $v1, 8 +/* 07AEF0 8007A2F0 AC8E0000 */ sw $t6, ($a0) +/* 07AEF4 8007A2F4 00C15021 */ addu $t2, $a2, $at +/* 07AEF8 8007A2F8 35090006 */ ori $t1, $t0, 6 +/* 07AEFC 8007A2FC AC690000 */ sw $t1, ($v1) +/* 07AF00 8007A300 03E00008 */ jr $ra +/* 07AF04 8007A304 AC6A0004 */ sw $t2, 4($v1) + +/* 07AF08 8007A308 00000000 */ nop +/* 07AF0C 8007A30C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_07AF10/func_8007A310.s b/asm/non_matchings/unknown_07AF10/func_8007A310.s new file mode 100644 index 00000000..9f980783 --- /dev/null +++ b/asm/non_matchings/unknown_07AF10/func_8007A310.s @@ -0,0 +1,115 @@ +glabel func_8007A310 +/* 07AF10 8007A310 3C028000 */ lui $v0, %hi(D_80000300) # $v0, 0x8000 +/* 07AF14 8007A314 8C420300 */ lw $v0, %lo(D_80000300)($v0) +/* 07AF18 8007A318 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 07AF1C 8007A31C AFBF0014 */ sw $ra, 0x14($sp) +/* 07AF20 8007A320 AFA40018 */ sw $a0, 0x18($sp) +/* 07AF24 8007A324 1440000D */ bnez $v0, .L8007A35C +/* 07AF28 8007A328 AFA5001C */ sw $a1, 0x1c($sp) +/* 07AF2C 8007A32C 240E0032 */ li $t6, 50 +/* 07AF30 8007A330 3C018012 */ lui $at, %hi(D_80126170) # $at, 0x8012 +/* 07AF34 8007A334 AC2E6170 */ sw $t6, %lo(D_80126170)($at) +/* 07AF38 8007A338 3C01800E */ lui $at, %hi(D_800E7AFC) # $at, 0x800e +/* 07AF3C 8007A33C C4247AFC */ lwc1 $f4, %lo(D_800E7AFC)($at) +/* 07AF40 8007A340 3C018012 */ lui $at, %hi(D_80126174) # $at, 0x8012 +/* 07AF44 8007A344 E4246174 */ swc1 $f4, %lo(D_80126174)($at) +/* 07AF48 8007A348 3C01800E */ lui $at, %hi(D_800E7B00) # $at, 0x800e +/* 07AF4C 8007A34C C4267B00 */ lwc1 $f6, %lo(D_800E7B00)($at) +/* 07AF50 8007A350 3C018012 */ lui $at, %hi(D_80126178) # $at, 0x8012 +/* 07AF54 8007A354 1000001A */ b .L8007A3C0 +/* 07AF58 8007A358 E4266178 */ swc1 $f6, %lo(D_80126178)($at) +.L8007A35C: +/* 07AF5C 8007A35C 24010002 */ li $at, 2 +/* 07AF60 8007A360 1441000D */ bne $v0, $at, .L8007A398 +/* 07AF64 8007A364 2418003C */ li $t8, 60 +/* 07AF68 8007A368 240F003C */ li $t7, 60 +/* 07AF6C 8007A36C 3C018012 */ lui $at, %hi(D_80126170) # $at, 0x8012 +/* 07AF70 8007A370 AC2F6170 */ sw $t7, %lo(D_80126170)($at) +/* 07AF74 8007A374 3C01800E */ lui $at, %hi(D_800E7B04) # $at, 0x800e +/* 07AF78 8007A378 C4287B04 */ lwc1 $f8, %lo(D_800E7B04)($at) +/* 07AF7C 8007A37C 3C018012 */ lui $at, %hi(D_80126174) # $at, 0x8012 +/* 07AF80 8007A380 E4286174 */ swc1 $f8, %lo(D_80126174)($at) +/* 07AF84 8007A384 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 07AF88 8007A388 44815000 */ mtc1 $at, $f10 +/* 07AF8C 8007A38C 3C018012 */ lui $at, %hi(D_80126178) # $at, 0x8012 +/* 07AF90 8007A390 1000000B */ b .L8007A3C0 +/* 07AF94 8007A394 E42A6178 */ swc1 $f10, %lo(D_80126178)($at) +.L8007A398: +/* 07AF98 8007A398 3C018012 */ lui $at, %hi(D_80126170) # $at, 0x8012 +/* 07AF9C 8007A39C AC386170 */ sw $t8, %lo(D_80126170)($at) +/* 07AFA0 8007A3A0 3C01800E */ lui $at, %hi(D_800E7B08) # $at, 0x800e +/* 07AFA4 8007A3A4 C4307B08 */ lwc1 $f16, %lo(D_800E7B08)($at) +/* 07AFA8 8007A3A8 3C018012 */ lui $at, %hi(D_80126174) # $at, 0x8012 +/* 07AFAC 8007A3AC E4306174 */ swc1 $f16, %lo(D_80126174)($at) +/* 07AFB0 8007A3B0 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 07AFB4 8007A3B4 44819000 */ mtc1 $at, $f18 +/* 07AFB8 8007A3B8 3C018012 */ lui $at, %hi(D_80126178) # $at, 0x8012 +/* 07AFBC 8007A3BC E4326178 */ swc1 $f18, %lo(D_80126178)($at) +.L8007A3C0: +/* 07AFC0 8007A3C0 14400012 */ bnez $v0, .L8007A40C +/* 07AFC4 8007A3C4 3C03800E */ lui $v1, %hi(D_800DE7BC) # $v1, 0x800e +/* 07AFC8 8007A3C8 3C02800E */ lui $v0, %hi(D_800DE77C) # $v0, 0x800e +/* 07AFCC 8007A3CC 2442E77C */ addiu $v0, %lo(D_800DE77C) # addiu $v0, $v0, -0x1884 +/* 07AFD0 8007A3D0 2463E7BC */ addiu $v1, %lo(D_800DE7BC) # addiu $v1, $v1, -0x1844 +.L8007A3D4: +/* 07AFD4 8007A3D4 8C49000C */ lw $t1, 0xc($v0) +/* 07AFD8 8007A3D8 8C4B0014 */ lw $t3, 0x14($v0) +/* 07AFDC 8007A3DC 8C4D001C */ lw $t5, 0x1c($v0) +/* 07AFE0 8007A3E0 8C590004 */ lw $t9, 4($v0) +/* 07AFE4 8007A3E4 24420020 */ addiu $v0, $v0, 0x20 +/* 07AFE8 8007A3E8 252A0018 */ addiu $t2, $t1, 0x18 +/* 07AFEC 8007A3EC 256C0018 */ addiu $t4, $t3, 0x18 +/* 07AFF0 8007A3F0 25AE0018 */ addiu $t6, $t5, 0x18 +/* 07AFF4 8007A3F4 27280018 */ addiu $t0, $t9, 0x18 +/* 07AFF8 8007A3F8 AC4EFFFC */ sw $t6, -4($v0) +/* 07AFFC 8007A3FC AC4CFFF4 */ sw $t4, -0xc($v0) +/* 07B000 8007A400 AC4AFFEC */ sw $t2, -0x14($v0) +/* 07B004 8007A404 1443FFF3 */ bne $v0, $v1, .L8007A3D4 +/* 07B008 8007A408 AC48FFE4 */ sw $t0, -0x1c($v0) +.L8007A40C: +/* 07B00C 8007A40C 0C01EA5D */ jal func_8007A974 +/* 07B010 8007A410 00000000 */ nop +/* 07B014 8007A414 8FA40018 */ lw $a0, 0x18($sp) +/* 07B018 8007A418 0C01E930 */ jal func_8007A4C0 +/* 07B01C 8007A41C 00000000 */ nop +/* 07B020 8007A420 3C028012 */ lui $v0, %hi(D_801262C0) # $v0, 0x8012 +/* 07B024 8007A424 244262C0 */ addiu $v0, %lo(D_801262C0) # addiu $v0, $v0, 0x62c0 +/* 07B028 8007A428 AC400000 */ sw $zero, ($v0) +/* 07B02C 8007A42C AC400004 */ sw $zero, 4($v0) +/* 07B030 8007A430 0C01E9FA */ jal func_8007A7E8 +/* 07B034 8007A434 00002025 */ move $a0, $zero +/* 07B038 8007A438 0C01E9FA */ jal func_8007A7E8 +/* 07B03C 8007A43C 24040001 */ li $a0, 1 +/* 07B040 8007A440 240F0001 */ li $t7, 1 +/* 07B044 8007A444 3C018012 */ lui $at, %hi(D_801262C8) # $at, 0x8012 +/* 07B048 8007A448 0C01EAE7 */ jal func_8007AB9C +/* 07B04C 8007A44C AC2F62C8 */ sw $t7, %lo(D_801262C8)($at) +/* 07B050 8007A450 3C048012 */ lui $a0, %hi(D_801261A0) # $a0, 0x8012 +/* 07B054 8007A454 3C058012 */ lui $a1, %hi(D_80126180) # $a1, 0x8012 +/* 07B058 8007A458 24A56180 */ addiu $a1, %lo(D_80126180) # addiu $a1, $a1, 0x6180 +/* 07B05C 8007A45C 248461A0 */ addiu $a0, %lo(D_801261A0) # addiu $a0, $a0, 0x61a0 +/* 07B060 8007A460 0C032208 */ jal osCreateMesgQueue +/* 07B064 8007A464 24060008 */ li $a2, 8 +/* 07B068 8007A468 8FA4001C */ lw $a0, 0x1c($sp) +/* 07B06C 8007A46C 3C058012 */ lui $a1, %hi(D_80126310) # $a1, 0x8012 +/* 07B070 8007A470 3C068012 */ lui $a2, %hi(D_801261A0) # $a2, 0x8012 +/* 07B074 8007A474 24C661A0 */ addiu $a2, %lo(D_801261A0) # addiu $a2, $a2, 0x61a0 +/* 07B078 8007A478 24A56310 */ addiu $a1, %lo(D_80126310) # addiu $a1, $a1, 0x6310 +/* 07B07C 8007A47C 0C01E520 */ jal func_80079480 +/* 07B080 8007A480 24070002 */ li $a3, 2 +/* 07B084 8007A484 0C01E954 */ jal func_8007A550 +/* 07B088 8007A488 00000000 */ nop +/* 07B08C 8007A48C 2418000C */ li $t8, 12 +/* 07B090 8007A490 3C018012 */ lui $at, %hi(D_801262D0) # $at, 0x8012 +/* 07B094 8007A494 AC3862D0 */ sw $t8, %lo(D_801262D0)($at) +/* 07B098 8007A498 0C034744 */ jal func_800D1D10 +/* 07B09C 8007A49C 24040001 */ li $a0, 1 +/* 07B0A0 8007A4A0 3C018012 */ lui $at, %hi(D_80126308) # $at, 0x8012 +/* 07B0A4 8007A4A4 8FBF0014 */ lw $ra, 0x14($sp) +/* 07B0A8 8007A4A8 A0206308 */ sb $zero, %lo(D_80126308)($at) +/* 07B0AC 8007A4AC 3C018012 */ lui $at, %hi(D_801262E4) # $at, 0x8012 +/* 07B0B0 8007A4B0 24190003 */ li $t9, 3 +/* 07B0B4 8007A4B4 A03962E4 */ sb $t9, %lo(D_801262E4)($at) +/* 07B0B8 8007A4B8 03E00008 */ jr $ra +/* 07B0BC 8007A4BC 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_07AF10/func_8007A4C0.s b/asm/non_matchings/unknown_07AF10/func_8007A4C0.s new file mode 100644 index 00000000..6c005c1e --- /dev/null +++ b/asm/non_matchings/unknown_07AF10/func_8007A4C0.s @@ -0,0 +1,28 @@ +glabel func_8007A4C0 +/* 07B0C0 8007A4C0 3C018012 */ lui $at, 0x8012 +/* 07B0C4 8007A4C4 03E00008 */ jr $ra +/* 07B0C8 8007A4C8 AC2462CC */ sw $a0, 0x62cc($at) + +/* 07B0CC 8007A4CC 3C028012 */ lui $v0, %hi(D_801262CC) # $v0, 0x8012 +/* 07B0D0 8007A4D0 8C4262CC */ lw $v0, %lo(D_801262CC)($v0) +/* 07B0D4 8007A4D4 03E00008 */ jr $ra +/* 07B0D8 8007A4D8 00000000 */ nop + +/* 07B0DC 8007A4DC 3C0E8012 */ lui $t6, %hi(D_801262CC) # $t6, 0x8012 +/* 07B0E0 8007A4E0 8DCE62CC */ lw $t6, %lo(D_801262CC)($t6) +/* 07B0E4 8007A4E4 3C19800E */ lui $t9, %hi(D_800DE77C) # $t9, 0x800e +/* 07B0E8 8007A4E8 31CF0007 */ andi $t7, $t6, 7 +/* 07B0EC 8007A4EC 000FC0C0 */ sll $t8, $t7, 3 +/* 07B0F0 8007A4F0 2739E77C */ addiu $t9, %lo(D_800DE77C) # addiu $t9, $t9, -0x1884 +/* 07B0F4 8007A4F4 03191821 */ addu $v1, $t8, $t9 +/* 07B0F8 8007A4F8 8C680000 */ lw $t0, ($v1) +/* 07B0FC 8007A4FC 00041080 */ sll $v0, $a0, 2 +/* 07B100 8007A500 3C018012 */ lui $at, 0x8012 +/* 07B104 8007A504 00220821 */ addu $at, $at, $v0 +/* 07B108 8007A508 AC2862B0 */ sw $t0, 0x62b0($at) +/* 07B10C 8007A50C 8C690004 */ lw $t1, 4($v1) +/* 07B110 8007A510 3C018012 */ lui $at, 0x8012 +/* 07B114 8007A514 00220821 */ addu $at, $at, $v0 +/* 07B118 8007A518 03E00008 */ jr $ra +/* 07B11C 8007A51C AC2962B8 */ sw $t1, 0x62b8($at) + diff --git a/asm/non_matchings/unknown_07AF10/func_8007A520.s b/asm/non_matchings/unknown_07AF10/func_8007A520.s new file mode 100644 index 00000000..af4aa8a2 --- /dev/null +++ b/asm/non_matchings/unknown_07AF10/func_8007A520.s @@ -0,0 +1,14 @@ +glabel func_8007A520 +/* 07B120 8007A520 3C038012 */ lui $v1, %hi(D_801262C8) # $v1, 0x8012 +/* 07B124 8007A524 8C6362C8 */ lw $v1, %lo(D_801262C8)($v1) +/* 07B128 8007A528 3C188012 */ lui $t8, 0x8012 +/* 07B12C 8007A52C 00037080 */ sll $t6, $v1, 2 +/* 07B130 8007A530 030EC021 */ addu $t8, $t8, $t6 +/* 07B134 8007A534 3C0F8012 */ lui $t7, 0x8012 +/* 07B138 8007A538 8F1862B8 */ lw $t8, 0x62b8($t8) +/* 07B13C 8007A53C 01EE7821 */ addu $t7, $t7, $t6 +/* 07B140 8007A540 8DEF62B0 */ lw $t7, 0x62b0($t7) +/* 07B144 8007A544 0018CC00 */ sll $t9, $t8, 0x10 +/* 07B148 8007A548 03E00008 */ jr $ra +/* 07B14C 8007A54C 01F91025 */ or $v0, $t7, $t9 + diff --git a/asm/non_matchings/unknown_07AF10/func_8007A550.s b/asm/non_matchings/unknown_07AF10/func_8007A550.s new file mode 100644 index 00000000..9d57cf6b --- /dev/null +++ b/asm/non_matchings/unknown_07AF10/func_8007A550.s @@ -0,0 +1,178 @@ +glabel func_8007A550 +/* 07B150 8007A550 3C028000 */ lui $v0, %hi(D_80000300) # $v0, 0x8000 +/* 07B154 8007A554 8C420300 */ lw $v0, %lo(D_80000300)($v0) +/* 07B158 8007A558 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 07B15C 8007A55C AFBF0014 */ sw $ra, 0x14($sp) +/* 07B160 8007A560 14400004 */ bnez $v0, .L8007A574 +/* 07B164 8007A564 00001825 */ move $v1, $zero +/* 07B168 8007A568 2403000E */ li $v1, 14 +/* 07B16C 8007A56C 10000005 */ b .L8007A584 +/* 07B170 8007A570 24050002 */ li $a1, 2 +.L8007A574: +/* 07B174 8007A574 24050002 */ li $a1, 2 +/* 07B178 8007A578 14A20002 */ bne $a1, $v0, .L8007A584 +/* 07B17C 8007A57C 00000000 */ nop +/* 07B180 8007A580 2403001C */ li $v1, 28 +.L8007A584: +/* 07B184 8007A584 3C0E8012 */ lui $t6, %hi(D_801262CC) # $t6, 0x8012 +/* 07B188 8007A588 8DCE62CC */ lw $t6, %lo(D_801262CC)($t6) +/* 07B18C 8007A58C 3C01800E */ lui $at, 0x800e +/* 07B190 8007A590 31CF0007 */ andi $t7, $t6, 7 +/* 07B194 8007A594 000F7880 */ sll $t7, $t7, 2 +/* 07B198 8007A598 002F0821 */ addu $at, $at, $t7 +/* 07B19C 8007A59C 8C2F7B0C */ lw $t7, 0x7b0c($at) +/* 07B1A0 8007A5A0 00000000 */ nop +/* 07B1A4 8007A5A4 01E00008 */ jr $t7 +/* 07B1A8 8007A5A8 00000000 */ nop +/* 07B1AC 8007A5AC 0003C080 */ sll $t8, $v1, 2 +/* 07B1B0 8007A5B0 0303C021 */ addu $t8, $t8, $v1 +/* 07B1B4 8007A5B4 3C19800E */ lui $t9, %hi(D_800E3900) # $t9, 0x800e +/* 07B1B8 8007A5B8 27393900 */ addiu $t9, %lo(D_800E3900) # addiu $t9, $t9, 0x3900 +/* 07B1BC 8007A5BC 0018C100 */ sll $t8, $t8, 4 +/* 07B1C0 8007A5C0 0C034728 */ jal func_800D1CA0 +/* 07B1C4 8007A5C4 03192021 */ addu $a0, $t8, $t9 +/* 07B1C8 8007A5C8 1000007D */ b .L8007A7C0 +/* 07B1CC 8007A5CC 00000000 */ nop +/* 07B1D0 8007A5D0 3C04800E */ lui $a0, %hi(D_800E4620) # $a0, 0x800e +/* 07B1D4 8007A5D4 14400004 */ bnez $v0, .L8007A5E8 +/* 07B1D8 8007A5D8 24844620 */ addiu $a0, %lo(D_800E4620) # addiu $a0, $a0, 0x4620 +/* 07B1DC 8007A5DC 3C04800E */ lui $a0, %hi(D_800E4670) # $a0, 0x800e +/* 07B1E0 8007A5E0 10000005 */ b .L8007A5F8 +/* 07B1E4 8007A5E4 24844670 */ addiu $a0, %lo(D_800E4670) # addiu $a0, $a0, 0x4670 +.L8007A5E8: +/* 07B1E8 8007A5E8 14A20003 */ bne $a1, $v0, .L8007A5F8 +/* 07B1EC 8007A5EC 00000000 */ nop +/* 07B1F0 8007A5F0 3C04800E */ lui $a0, %hi(D_800E46C0) # $a0, 0x800e +/* 07B1F4 8007A5F4 248446C0 */ addiu $a0, %lo(D_800E46C0) # addiu $a0, $a0, 0x46c0 +.L8007A5F8: +/* 07B1F8 8007A5F8 3C058012 */ lui $a1, %hi(D_80126260) # $a1, 0x8012 +/* 07B1FC 8007A5FC 24A56260 */ addiu $a1, %lo(D_80126260) # addiu $a1, $a1, 0x6260 +/* 07B200 8007A600 0C01EAFF */ jal func_8007ABFC +/* 07B204 8007A604 24060050 */ li $a2, 80 +/* 07B208 8007A608 3C088000 */ lui $t0, %hi(D_80000300) # $t0, 0x8000 +/* 07B20C 8007A60C 8D080300 */ lw $t0, %lo(D_80000300)($t0) +/* 07B210 8007A610 3C058012 */ lui $a1, %hi(D_80126260) # $a1, 0x8012 +/* 07B214 8007A614 1500000C */ bnez $t0, .L8007A648 +/* 07B218 8007A618 24A56260 */ addiu $a1, %lo(D_80126260) # addiu $a1, $a1, 0x6260 +/* 07B21C 8007A61C 8CA90030 */ lw $t1, 0x30($a1) +/* 07B220 8007A620 8CAB0044 */ lw $t3, 0x44($a1) +/* 07B224 8007A624 3C020018 */ lui $v0, 0x18 +/* 07B228 8007A628 01225023 */ subu $t2, $t1, $v0 +/* 07B22C 8007A62C 01626023 */ subu $t4, $t3, $v0 +/* 07B230 8007A630 ACAA0030 */ sw $t2, 0x30($a1) +/* 07B234 8007A634 ACAC0044 */ sw $t4, 0x44($a1) +/* 07B238 8007A638 254E0018 */ addiu $t6, $t2, 0x18 +/* 07B23C 8007A63C 25980018 */ addiu $t8, $t4, 0x18 +/* 07B240 8007A640 ACAE0030 */ sw $t6, 0x30($a1) +/* 07B244 8007A644 ACB80044 */ sw $t8, 0x44($a1) +.L8007A648: +/* 07B248 8007A648 0C034728 */ jal func_800D1CA0 +/* 07B24C 8007A64C 00A02025 */ move $a0, $a1 +/* 07B250 8007A650 1000005B */ b .L8007A7C0 +/* 07B254 8007A654 00000000 */ nop +/* 07B258 8007A658 3C04800E */ lui $a0, %hi(D_800E4620) # $a0, 0x800e +/* 07B25C 8007A65C 14400004 */ bnez $v0, .L8007A670 +/* 07B260 8007A660 24844620 */ addiu $a0, %lo(D_800E4620) # addiu $a0, $a0, 0x4620 +/* 07B264 8007A664 3C04800E */ lui $a0, %hi(D_800E4670) # $a0, 0x800e +/* 07B268 8007A668 10000005 */ b .L8007A680 +/* 07B26C 8007A66C 24844670 */ addiu $a0, %lo(D_800E4670) # addiu $a0, $a0, 0x4670 +.L8007A670: +/* 07B270 8007A670 14A20003 */ bne $a1, $v0, .L8007A680 +/* 07B274 8007A674 00000000 */ nop +/* 07B278 8007A678 3C04800E */ lui $a0, %hi(D_800E46C0) # $a0, 0x800e +/* 07B27C 8007A67C 248446C0 */ addiu $a0, %lo(D_800E46C0) # addiu $a0, $a0, 0x46c0 +.L8007A680: +/* 07B280 8007A680 3C058012 */ lui $a1, %hi(D_80126260) # $a1, 0x8012 +/* 07B284 8007A684 24A56260 */ addiu $a1, %lo(D_80126260) # addiu $a1, $a1, 0x6260 +/* 07B288 8007A688 0C01EAFF */ jal func_8007ABFC +/* 07B28C 8007A68C 24060050 */ li $a2, 80 +/* 07B290 8007A690 3C058012 */ lui $a1, 0x8012 +/* 07B294 8007A694 24A46260 */ addiu $a0, $a1, 0x6260 +/* 07B298 8007A698 24020500 */ li $v0, 1280 +/* 07B29C 8007A69C 24190280 */ li $t9, 640 +/* 07B2A0 8007A6A0 24080400 */ li $t0, 1024 +/* 07B2A4 8007A6A4 AC990008 */ sw $t9, 8($a0) +/* 07B2A8 8007A6A8 AC880020 */ sw $t0, 0x20($a0) +/* 07B2AC 8007A6AC AC820028 */ sw $v0, 0x28($a0) +/* 07B2B0 8007A6B0 0C034728 */ jal func_800D1CA0 +/* 07B2B4 8007A6B4 AC82003C */ sw $v0, 0x3c($a0) +/* 07B2B8 8007A6B8 10000041 */ b .L8007A7C0 +/* 07B2BC 8007A6BC 00000000 */ nop +/* 07B2C0 8007A6C0 3C04800E */ lui $a0, %hi(D_800E4710) # $a0, 0x800e +/* 07B2C4 8007A6C4 14400004 */ bnez $v0, .L8007A6D8 +/* 07B2C8 8007A6C8 24844710 */ addiu $a0, %lo(D_800E4710) # addiu $a0, $a0, 0x4710 +/* 07B2CC 8007A6CC 3C04800E */ lui $a0, %hi(D_800E4760) # $a0, 0x800e +/* 07B2D0 8007A6D0 10000005 */ b .L8007A6E8 +/* 07B2D4 8007A6D4 24844760 */ addiu $a0, %lo(D_800E4760) # addiu $a0, $a0, 0x4760 +.L8007A6D8: +/* 07B2D8 8007A6D8 14A20003 */ bne $a1, $v0, .L8007A6E8 +/* 07B2DC 8007A6DC 00000000 */ nop +/* 07B2E0 8007A6E0 3C04800E */ lui $a0, %hi(D_800E47B0) # $a0, 0x800e +/* 07B2E4 8007A6E4 248447B0 */ addiu $a0, %lo(D_800E47B0) # addiu $a0, $a0, 0x47b0 +.L8007A6E8: +/* 07B2E8 8007A6E8 3C058012 */ lui $a1, %hi(D_80126260) # $a1, 0x8012 +/* 07B2EC 8007A6EC 24A56260 */ addiu $a1, %lo(D_80126260) # addiu $a1, $a1, 0x6260 +/* 07B2F0 8007A6F0 0C01EAFF */ jal func_8007ABFC +/* 07B2F4 8007A6F4 24060050 */ li $a2, 80 +/* 07B2F8 8007A6F8 3C058012 */ lui $a1, 0x8012 +/* 07B2FC 8007A6FC 24A46260 */ addiu $a0, $a1, 0x6260 +/* 07B300 8007A700 24020500 */ li $v0, 1280 +/* 07B304 8007A704 24090280 */ li $t1, 640 +/* 07B308 8007A708 240A0400 */ li $t2, 1024 +/* 07B30C 8007A70C AC890008 */ sw $t1, 8($a0) +/* 07B310 8007A710 AC8A0020 */ sw $t2, 0x20($a0) +/* 07B314 8007A714 AC820028 */ sw $v0, 0x28($a0) +/* 07B318 8007A718 0C034728 */ jal func_800D1CA0 +/* 07B31C 8007A71C AC82003C */ sw $v0, 0x3c($a0) +/* 07B320 8007A720 10000027 */ b .L8007A7C0 +/* 07B324 8007A724 00000000 */ nop +/* 07B328 8007A728 00035880 */ sll $t3, $v1, 2 +/* 07B32C 8007A72C 01635821 */ addu $t3, $t3, $v1 +/* 07B330 8007A730 000B5900 */ sll $t3, $t3, 4 +/* 07B334 8007A734 3C0D800E */ lui $t5, %hi(D_800E3900) # $t5, 0x800e +/* 07B338 8007A738 25AD3900 */ addiu $t5, %lo(D_800E3900) # addiu $t5, $t5, 0x3900 +/* 07B33C 8007A73C 256C0280 */ addiu $t4, $t3, 0x280 +/* 07B340 8007A740 0C034728 */ jal func_800D1CA0 +/* 07B344 8007A744 018D2021 */ addu $a0, $t4, $t5 +/* 07B348 8007A748 1000001D */ b .L8007A7C0 +/* 07B34C 8007A74C 00000000 */ nop +/* 07B350 8007A750 00037080 */ sll $t6, $v1, 2 +/* 07B354 8007A754 01C37021 */ addu $t6, $t6, $v1 +/* 07B358 8007A758 000E7100 */ sll $t6, $t6, 4 +/* 07B35C 8007A75C 3C18800E */ lui $t8, %hi(D_800E3900) # $t8, 0x800e +/* 07B360 8007A760 27183900 */ addiu $t8, %lo(D_800E3900) # addiu $t8, $t8, 0x3900 +/* 07B364 8007A764 25CF0320 */ addiu $t7, $t6, 0x320 +/* 07B368 8007A768 0C034728 */ jal func_800D1CA0 +/* 07B36C 8007A76C 01F82021 */ addu $a0, $t7, $t8 +/* 07B370 8007A770 10000013 */ b .L8007A7C0 +/* 07B374 8007A774 00000000 */ nop +/* 07B378 8007A778 0003C880 */ sll $t9, $v1, 2 +/* 07B37C 8007A77C 0323C821 */ addu $t9, $t9, $v1 +/* 07B380 8007A780 0019C900 */ sll $t9, $t9, 4 +/* 07B384 8007A784 3C09800E */ lui $t1, %hi(D_800E3900) # $t1, 0x800e +/* 07B388 8007A788 25293900 */ addiu $t1, %lo(D_800E3900) # addiu $t1, $t1, 0x3900 +/* 07B38C 8007A78C 272802D0 */ addiu $t0, $t9, 0x2d0 +/* 07B390 8007A790 0C034728 */ jal func_800D1CA0 +/* 07B394 8007A794 01092021 */ addu $a0, $t0, $t1 +/* 07B398 8007A798 10000009 */ b .L8007A7C0 +/* 07B39C 8007A79C 00000000 */ nop +/* 07B3A0 8007A7A0 00035080 */ sll $t2, $v1, 2 +/* 07B3A4 8007A7A4 01435021 */ addu $t2, $t2, $v1 +/* 07B3A8 8007A7A8 000A5100 */ sll $t2, $t2, 4 +/* 07B3AC 8007A7AC 3C0C800E */ lui $t4, %hi(D_800E3900) # $t4, 0x800e +/* 07B3B0 8007A7B0 258C3900 */ addiu $t4, %lo(D_800E3900) # addiu $t4, $t4, 0x3900 +/* 07B3B4 8007A7B4 254B0370 */ addiu $t3, $t2, 0x370 +/* 07B3B8 8007A7B8 0C034728 */ jal func_800D1CA0 +/* 07B3BC 8007A7BC 016C2021 */ addu $a0, $t3, $t4 +.L8007A7C0: +/* 07B3C0 8007A7C0 0C034898 */ jal func_800D2260 +/* 07B3C4 8007A7C4 24040010 */ li $a0, 16 +/* 07B3C8 8007A7C8 0C034898 */ jal func_800D2260 +/* 07B3CC 8007A7CC 24040040 */ li $a0, 64 +/* 07B3D0 8007A7D0 0C034898 */ jal func_800D2260 +/* 07B3D4 8007A7D4 24040002 */ li $a0, 2 +/* 07B3D8 8007A7D8 8FBF0014 */ lw $ra, 0x14($sp) +/* 07B3DC 8007A7DC 27BD0018 */ addiu $sp, $sp, 0x18 +/* 07B3E0 8007A7E0 03E00008 */ jr $ra +/* 07B3E4 8007A7E4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_07AF10/func_8007A7E8.s b/asm/non_matchings/unknown_07AF10/func_8007A7E8.s new file mode 100644 index 00000000..58ef8249 --- /dev/null +++ b/asm/non_matchings/unknown_07AF10/func_8007A7E8.s @@ -0,0 +1,104 @@ +glabel func_8007A7E8 +/* 07B3E8 8007A7E8 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 07B3EC 8007A7EC 3C0E8012 */ lui $t6, %hi(D_801262C0) # $t6, 0x8012 +/* 07B3F0 8007A7F0 AFB00018 */ sw $s0, 0x18($sp) +/* 07B3F4 8007A7F4 25CE62C0 */ addiu $t6, %lo(D_801262C0) # addiu $t6, $t6, 0x62c0 +/* 07B3F8 8007A7F8 00042880 */ sll $a1, $a0, 2 +/* 07B3FC 8007A7FC 00AE8021 */ addu $s0, $a1, $t6 +/* 07B400 8007A800 8E060000 */ lw $a2, ($s0) +/* 07B404 8007A804 AFBF001C */ sw $ra, 0x1c($sp) +/* 07B408 8007A808 10C00008 */ beqz $a2, .L8007A82C +/* 07B40C 8007A80C 00C02025 */ move $a0, $a2 +/* 07B410 8007A810 0C01C54E */ jal func_80071538 +/* 07B414 8007A814 AFA5002C */ sw $a1, 0x2c($sp) +/* 07B418 8007A818 8E040000 */ lw $a0, ($s0) +/* 07B41C 8007A81C 0C01C450 */ jal func_80071140 +/* 07B420 8007A820 00000000 */ nop +/* 07B424 8007A824 8FA5002C */ lw $a1, 0x2c($sp) +/* 07B428 8007A828 00000000 */ nop +.L8007A82C: +/* 07B42C 8007A82C 3C028012 */ lui $v0, %hi(D_801262CC) # $v0, 0x8012 +/* 07B430 8007A830 8C4262CC */ lw $v0, %lo(D_801262CC)($v0) +/* 07B434 8007A834 3C08800E */ lui $t0, %hi(D_800DE77C) # $t0, 0x800e +/* 07B438 8007A838 30580007 */ andi $t8, $v0, 7 +/* 07B43C 8007A83C 0018C8C0 */ sll $t9, $t8, 3 +/* 07B440 8007A840 2508E77C */ addiu $t0, %lo(D_800DE77C) # addiu $t0, $t0, -0x1884 +/* 07B444 8007A844 03281821 */ addu $v1, $t9, $t0 +/* 07B448 8007A848 3C0F8012 */ lui $t7, %hi(D_801262B0) # $t7, 0x8012 +/* 07B44C 8007A84C 3C0A8012 */ lui $t2, %hi(D_801262B8) # $t2, 0x8012 +/* 07B450 8007A850 8C690000 */ lw $t1, ($v1) +/* 07B454 8007A854 8C6B0004 */ lw $t3, 4($v1) +/* 07B458 8007A858 25EF62B0 */ addiu $t7, %lo(D_801262B0) # addiu $t7, $t7, 0x62b0 +/* 07B45C 8007A85C 254A62B8 */ addiu $t2, %lo(D_801262B8) # addiu $t2, $t2, 0x62b8 +/* 07B460 8007A860 00AF3021 */ addu $a2, $a1, $t7 +/* 07B464 8007A864 00AA3821 */ addu $a3, $a1, $t2 +/* 07B468 8007A868 28410002 */ slti $at, $v0, 2 +/* 07B46C 8007A86C ACC90000 */ sw $t1, ($a2) +/* 07B470 8007A870 14200019 */ bnez $at, .L8007A8D8 +/* 07B474 8007A874 ACEB0000 */ sw $t3, ($a3) +/* 07B478 8007A878 3C040009 */ lui $a0, (0x00096030 >> 16) # lui $a0, 9 +/* 07B47C 8007A87C 34846030 */ ori $a0, (0x00096030 & 0xFFFF) # ori $a0, $a0, 0x6030 +/* 07B480 8007A880 0C01C327 */ jal func_80070C9C +/* 07B484 8007A884 2405FFFF */ li $a1, -1 +/* 07B488 8007A888 3C03800E */ lui $v1, %hi(D_800DE770) # $v1, 0x800e +/* 07B48C 8007A88C 2463E770 */ addiu $v1, %lo(D_800DE770) # addiu $v1, $v1, -0x1890 +/* 07B490 8007A890 8C6E0000 */ lw $t6, ($v1) +/* 07B494 8007A894 244C003F */ addiu $t4, $v0, 0x3f +/* 07B498 8007A898 2401FFC0 */ li $at, -64 +/* 07B49C 8007A89C 01816824 */ and $t5, $t4, $at +/* 07B4A0 8007A8A0 15C00030 */ bnez $t6, .L8007A964 +/* 07B4A4 8007A8A4 AE0D0000 */ sw $t5, ($s0) +/* 07B4A8 8007A8A8 3C040009 */ lui $a0, (0x00096030 >> 16) # lui $a0, 9 +/* 07B4AC 8007A8AC 34846030 */ ori $a0, (0x00096030 & 0xFFFF) # ori $a0, $a0, 0x6030 +/* 07B4B0 8007A8B0 0C01C327 */ jal func_80070C9C +/* 07B4B4 8007A8B4 2405FFFF */ li $a1, -1 +/* 07B4B8 8007A8B8 3C03800E */ lui $v1, %hi(D_800DE770) # $v1, 0x800e +/* 07B4BC 8007A8BC 2463E770 */ addiu $v1, %lo(D_800DE770) # addiu $v1, $v1, -0x1890 +/* 07B4C0 8007A8C0 2458003F */ addiu $t8, $v0, 0x3f +/* 07B4C4 8007A8C4 2401FFC0 */ li $at, -64 +/* 07B4C8 8007A8C8 AC620000 */ sw $v0, ($v1) +/* 07B4CC 8007A8CC 0301C824 */ and $t9, $t8, $at +/* 07B4D0 8007A8D0 10000024 */ b .L8007A964 +/* 07B4D4 8007A8D4 AC790000 */ sw $t9, ($v1) +.L8007A8D8: +/* 07B4D8 8007A8D8 8CE80000 */ lw $t0, ($a3) +/* 07B4DC 8007A8DC 8CC90000 */ lw $t1, ($a2) +/* 07B4E0 8007A8E0 2405FFFF */ li $a1, -1 +/* 07B4E4 8007A8E4 01090019 */ multu $t0, $t1 +/* 07B4E8 8007A8E8 AFA60024 */ sw $a2, 0x24($sp) +/* 07B4EC 8007A8EC AFA70020 */ sw $a3, 0x20($sp) +/* 07B4F0 8007A8F0 00002012 */ mflo $a0 +/* 07B4F4 8007A8F4 00045040 */ sll $t2, $a0, 1 +/* 07B4F8 8007A8F8 0C01C327 */ jal func_80070C9C +/* 07B4FC 8007A8FC 25440030 */ addiu $a0, $t2, 0x30 +/* 07B500 8007A900 3C03800E */ lui $v1, %hi(D_800DE770) # $v1, 0x800e +/* 07B504 8007A904 2463E770 */ addiu $v1, %lo(D_800DE770) # addiu $v1, $v1, -0x1890 +/* 07B508 8007A908 8C6D0000 */ lw $t5, ($v1) +/* 07B50C 8007A90C 244B003F */ addiu $t3, $v0, 0x3f +/* 07B510 8007A910 2401FFC0 */ li $at, -64 +/* 07B514 8007A914 8FA60024 */ lw $a2, 0x24($sp) +/* 07B518 8007A918 8FA70020 */ lw $a3, 0x20($sp) +/* 07B51C 8007A91C 01616024 */ and $t4, $t3, $at +/* 07B520 8007A920 15A00010 */ bnez $t5, .L8007A964 +/* 07B524 8007A924 AE0C0000 */ sw $t4, ($s0) +/* 07B528 8007A928 8CEE0000 */ lw $t6, ($a3) +/* 07B52C 8007A92C 8CCF0000 */ lw $t7, ($a2) +/* 07B530 8007A930 2405FFFF */ li $a1, -1 +/* 07B534 8007A934 01CF0019 */ multu $t6, $t7 +/* 07B538 8007A938 00002012 */ mflo $a0 +/* 07B53C 8007A93C 0004C040 */ sll $t8, $a0, 1 +/* 07B540 8007A940 0C01C327 */ jal func_80070C9C +/* 07B544 8007A944 27040030 */ addiu $a0, $t8, 0x30 +/* 07B548 8007A948 3C03800E */ lui $v1, %hi(D_800DE770) # $v1, 0x800e +/* 07B54C 8007A94C 2463E770 */ addiu $v1, %lo(D_800DE770) # addiu $v1, $v1, -0x1890 +/* 07B550 8007A950 2448003F */ addiu $t0, $v0, 0x3f +/* 07B554 8007A954 2401FFC0 */ li $at, -64 +/* 07B558 8007A958 AC620000 */ sw $v0, ($v1) +/* 07B55C 8007A95C 01014824 */ and $t1, $t0, $at +/* 07B560 8007A960 AC690000 */ sw $t1, ($v1) +.L8007A964: +/* 07B564 8007A964 8FBF001C */ lw $ra, 0x1c($sp) +/* 07B568 8007A968 8FB00018 */ lw $s0, 0x18($sp) +/* 07B56C 8007A96C 03E00008 */ jr $ra +/* 07B570 8007A970 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_07AF10/func_8007A974.s b/asm/non_matchings/unknown_07AF10/func_8007A974.s new file mode 100644 index 00000000..decd5004 --- /dev/null +++ b/asm/non_matchings/unknown_07AF10/func_8007A974.s @@ -0,0 +1,8 @@ +glabel func_8007A974 +/* 07B574 8007A974 3C018012 */ lui $at, %hi(D_80126308) # $at, 0x8012 +/* 07B578 8007A978 A0206308 */ sb $zero, %lo(D_80126308)($at) +/* 07B57C 8007A97C 3C018012 */ lui $at, 0x8012 +/* 07B580 8007A980 240E0002 */ li $t6, 2 +/* 07B584 8007A984 03E00008 */ jr $ra +/* 07B588 8007A988 A02E6309 */ sb $t6, 0x6309($at) + diff --git a/asm/non_matchings/unknown_07AF10/func_8007A98C.s b/asm/non_matchings/unknown_07AF10/func_8007A98C.s new file mode 100644 index 00000000..8c408fe6 --- /dev/null +++ b/asm/non_matchings/unknown_07AF10/func_8007A98C.s @@ -0,0 +1,114 @@ +glabel func_8007A98C +/* 07B58C 8007A98C 3C038012 */ lui $v1, %hi(D_801262D0) # $v1, 0x8012 +/* 07B590 8007A990 246362D0 */ addiu $v1, %lo(D_801262D0) # addiu $v1, $v1, 0x62d0 +/* 07B594 8007A994 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 07B598 8007A998 8C620000 */ lw $v0, ($v1) +/* 07B59C 8007A99C AFB1001C */ sw $s1, 0x1c($sp) +/* 07B5A0 8007A9A0 AFB00018 */ sw $s0, 0x18($sp) +/* 07B5A4 8007A9A4 00808825 */ move $s1, $a0 +/* 07B5A8 8007A9A8 AFBF0024 */ sw $ra, 0x24($sp) +/* 07B5AC 8007A9AC AFB20020 */ sw $s2, 0x20($sp) +/* 07B5B0 8007A9B0 10400006 */ beqz $v0, .L8007A9CC +/* 07B5B4 8007A9B4 24100001 */ li $s0, 1 +/* 07B5B8 8007A9B8 244EFFFF */ addiu $t6, $v0, -1 +/* 07B5BC 8007A9BC 15C00003 */ bnez $t6, .L8007A9CC +/* 07B5C0 8007A9C0 AC6E0000 */ sw $t6, ($v1) +/* 07B5C4 8007A9C4 0C034744 */ jal func_800D1D10 +/* 07B5C8 8007A9C8 00002025 */ move $a0, $zero +.L8007A9CC: +/* 07B5CC 8007A9CC 24010008 */ li $at, 8 +/* 07B5D0 8007A9D0 12210003 */ beq $s1, $at, .L8007A9E0 +/* 07B5D4 8007A9D4 00000000 */ nop +/* 07B5D8 8007A9D8 0C01EAE7 */ jal func_8007AB9C +/* 07B5DC 8007A9DC 00000000 */ nop +.L8007A9E0: +/* 07B5E0 8007A9E0 3C128012 */ lui $s2, %hi(D_801261A0) # $s2, 0x8012 +/* 07B5E4 8007A9E4 265261A0 */ addiu $s2, %lo(D_801261A0) # addiu $s2, $s2, 0x61a0 +/* 07B5E8 8007A9E8 02402025 */ move $a0, $s2 +/* 07B5EC 8007A9EC 00002825 */ move $a1, $zero +/* 07B5F0 8007A9F0 0C0322EC */ jal osRecvMesg +/* 07B5F4 8007A9F4 00003025 */ move $a2, $zero +/* 07B5F8 8007A9F8 2411FFFF */ li $s1, -1 +/* 07B5FC 8007A9FC 1051000A */ beq $v0, $s1, .L8007AA28 +/* 07B600 8007AA00 00000000 */ nop +.L8007AA04: +/* 07B604 8007AA04 26100001 */ addiu $s0, $s0, 1 +/* 07B608 8007AA08 321800FF */ andi $t8, $s0, 0xff +/* 07B60C 8007AA0C 03008025 */ move $s0, $t8 +/* 07B610 8007AA10 02402025 */ move $a0, $s2 +/* 07B614 8007AA14 00002825 */ move $a1, $zero +/* 07B618 8007AA18 0C0322EC */ jal osRecvMesg +/* 07B61C 8007AA1C 00003025 */ move $a2, $zero +/* 07B620 8007AA20 1451FFF8 */ bne $v0, $s1, .L8007AA04 +/* 07B624 8007AA24 00000000 */ nop +.L8007AA28: +/* 07B628 8007AA28 3C118012 */ lui $s1, %hi(D_80126309) # $s1, 0x8012 +/* 07B62C 8007AA2C 26316309 */ addiu $s1, %lo(D_80126309) # addiu $s1, $s1, 0x6309 +/* 07B630 8007AA30 92240000 */ lbu $a0, ($s1) +/* 07B634 8007AA34 02001825 */ move $v1, $s0 +/* 07B638 8007AA38 0204082A */ slt $at, $s0, $a0 +/* 07B63C 8007AA3C 10200012 */ beqz $at, .L8007AA88 +/* 07B640 8007AA40 3C068012 */ lui $a2, 0x8012 +/* 07B644 8007AA44 3C068012 */ lui $a2, %hi(D_80126308) # $a2, 0x8012 +/* 07B648 8007AA48 24C66308 */ addiu $a2, %lo(D_80126308) # addiu $a2, $a2, 0x6308 +/* 07B64C 8007AA4C 90C50000 */ lbu $a1, ($a2) +/* 07B650 8007AA50 00000000 */ nop +/* 07B654 8007AA54 28A10014 */ slti $at, $a1, 0x14 +/* 07B658 8007AA58 10200004 */ beqz $at, .L8007AA6C +/* 07B65C 8007AA5C 00A01025 */ move $v0, $a1 +/* 07B660 8007AA60 24B90001 */ addiu $t9, $a1, 1 +/* 07B664 8007AA64 A0D90000 */ sb $t9, ($a2) +/* 07B668 8007AA68 332200FF */ andi $v0, $t9, 0xff +.L8007AA6C: +/* 07B66C 8007AA6C 24010014 */ li $at, 20 +/* 07B670 8007AA70 14410012 */ bne $v0, $at, .L8007AABC +/* 07B674 8007AA74 0064082A */ slt $at, $v1, $a0 +/* 07B678 8007AA78 A2300000 */ sb $s0, ($s1) +/* 07B67C 8007AA7C A0C00000 */ sb $zero, ($a2) +/* 07B680 8007AA80 1000000D */ b .L8007AAB8 +/* 07B684 8007AA84 320400FF */ andi $a0, $s0, 0xff +.L8007AA88: +/* 07B688 8007AA88 24C66308 */ addiu $a2, $a2, 0x6308 +/* 07B68C 8007AA8C 0083082A */ slt $at, $a0, $v1 +/* 07B690 8007AA90 10200009 */ beqz $at, .L8007AAB8 +/* 07B694 8007AA94 A0C00000 */ sb $zero, ($a2) +/* 07B698 8007AA98 3C088012 */ lui $t0, %hi(D_801262E4) # $t0, 0x8012 +/* 07B69C 8007AA9C 910862E4 */ lbu $t0, %lo(D_801262E4)($t0) +/* 07B6A0 8007AAA0 00000000 */ nop +/* 07B6A4 8007AAA4 0103082A */ slt $at, $t0, $v1 +/* 07B6A8 8007AAA8 14200004 */ bnez $at, .L8007AABC +/* 07B6AC 8007AAAC 0064082A */ slt $at, $v1, $a0 +/* 07B6B0 8007AAB0 A2300000 */ sb $s0, ($s1) +/* 07B6B4 8007AAB4 320400FF */ andi $a0, $s0, 0xff +.L8007AAB8: +/* 07B6B8 8007AAB8 0064082A */ slt $at, $v1, $a0 +.L8007AABC: +/* 07B6BC 8007AABC 1020000A */ beqz $at, .L8007AAE8 +.L8007AAC0: +/* 07B6C0 8007AAC0 02402025 */ move $a0, $s2 +/* 07B6C4 8007AAC4 00002825 */ move $a1, $zero +/* 07B6C8 8007AAC8 0C0322EC */ jal osRecvMesg +/* 07B6CC 8007AACC 24060001 */ li $a2, 1 +/* 07B6D0 8007AAD0 922A0000 */ lbu $t2, ($s1) +/* 07B6D4 8007AAD4 26100001 */ addiu $s0, $s0, 1 +/* 07B6D8 8007AAD8 320300FF */ andi $v1, $s0, 0xff +/* 07B6DC 8007AADC 006A082A */ slt $at, $v1, $t2 +/* 07B6E0 8007AAE0 1420FFF7 */ bnez $at, .L8007AAC0 +/* 07B6E4 8007AAE4 00608025 */ move $s0, $v1 +.L8007AAE8: +/* 07B6E8 8007AAE8 3C048012 */ lui $a0, %hi(D_801262D8) # $a0, 0x8012 +/* 07B6EC 8007AAEC 8C8462D8 */ lw $a0, %lo(D_801262D8)($a0) +/* 07B6F0 8007AAF0 0C034908 */ jal func_800D2420 +/* 07B6F4 8007AAF4 AFA30028 */ sw $v1, 0x28($sp) +/* 07B6F8 8007AAF8 02402025 */ move $a0, $s2 +/* 07B6FC 8007AAFC 00002825 */ move $a1, $zero +/* 07B700 8007AB00 0C0322EC */ jal osRecvMesg +/* 07B704 8007AB04 24060001 */ li $a2, 1 +/* 07B708 8007AB08 8FBF0024 */ lw $ra, 0x24($sp) +/* 07B70C 8007AB0C 8FA20028 */ lw $v0, 0x28($sp) +/* 07B710 8007AB10 8FB00018 */ lw $s0, 0x18($sp) +/* 07B714 8007AB14 8FB1001C */ lw $s1, 0x1c($sp) +/* 07B718 8007AB18 8FB20020 */ lw $s2, 0x20($sp) +/* 07B71C 8007AB1C 03E00008 */ jr $ra +/* 07B720 8007AB20 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_07AF10/func_8007AB24.s b/asm/non_matchings/unknown_07AF10/func_8007AB24.s new file mode 100644 index 00000000..a50f064b --- /dev/null +++ b/asm/non_matchings/unknown_07AF10/func_8007AB24.s @@ -0,0 +1,34 @@ +glabel func_8007AB24 +/* 07B724 8007AB24 3C018012 */ lui $at, 0x8012 +/* 07B728 8007AB28 AFA40000 */ sw $a0, ($sp) +/* 07B72C 8007AB2C 03E00008 */ jr $ra +/* 07B730 8007AB30 A02462E4 */ sb $a0, 0x62e4($at) + +/* 07B734 8007AB34 3C0E8012 */ lui $t6, %hi(D_80126170) # $t6, 0x8012 +/* 07B738 8007AB38 8DCE6170 */ lw $t6, %lo(D_80126170)($t6) +/* 07B73C 8007AB3C 3C0F8012 */ lui $t7, %hi(D_80126309) # $t7, 0x8012 +/* 07B740 8007AB40 448E9000 */ mtc1 $t6, $f18 +/* 07B744 8007AB44 91EF6309 */ lbu $t7, %lo(D_80126309)($t7) +/* 07B748 8007AB48 468091A0 */ cvt.s.w $f6, $f18 +/* 07B74C 8007AB4C 448F9000 */ mtc1 $t7, $f18 +/* 07B750 8007AB50 05E10005 */ bgez $t7, .L8007AB68 +/* 07B754 8007AB54 468092A0 */ cvt.s.w $f10, $f18 +/* 07B758 8007AB58 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 07B75C 8007AB5C 44818000 */ mtc1 $at, $f16 +/* 07B760 8007AB60 00000000 */ nop +/* 07B764 8007AB64 46105280 */ add.s $f10, $f10, $f16 +.L8007AB68: +/* 07B768 8007AB68 00000000 */ nop +/* 07B76C 8007AB6C 460A3483 */ div.s $f18, $f6, $f10 +/* 07B770 8007AB70 4458F800 */ cfc1 $t8, $31 +/* 07B774 8007AB74 00000000 */ nop +/* 07B778 8007AB78 37010003 */ ori $at, $t8, 3 +/* 07B77C 8007AB7C 38210002 */ xori $at, $at, 2 +/* 07B780 8007AB80 44C1F800 */ ctc1 $at, $31 +/* 07B784 8007AB84 00000000 */ nop +/* 07B788 8007AB88 46009124 */ cvt.w.s $f4, $f18 +/* 07B78C 8007AB8C 44022000 */ mfc1 $v0, $f4 +/* 07B790 8007AB90 44D8F800 */ ctc1 $t8, $31 +/* 07B794 8007AB94 03E00008 */ jr $ra +/* 07B798 8007AB98 00000000 */ nop + diff --git a/asm/non_matchings/unknown_07AF10/func_8007AB9C.s b/asm/non_matchings/unknown_07AF10/func_8007AB9C.s new file mode 100644 index 00000000..653952e3 --- /dev/null +++ b/asm/non_matchings/unknown_07AF10/func_8007AB9C.s @@ -0,0 +1,26 @@ +glabel func_8007AB9C +/* 07B79C 8007AB9C 3C058012 */ lui $a1, %hi(D_801262C8) # $a1, 0x8012 +/* 07B7A0 8007ABA0 24A562C8 */ addiu $a1, %lo(D_801262C8) # addiu $a1, $a1, 0x62c8 +/* 07B7A4 8007ABA4 8CA20000 */ lw $v0, ($a1) +/* 07B7A8 8007ABA8 3C048012 */ lui $a0, %hi(D_801262C0) # $a0, 0x8012 +/* 07B7AC 8007ABAC 248462C0 */ addiu $a0, %lo(D_801262C0) # addiu $a0, $a0, 0x62c0 +/* 07B7B0 8007ABB0 00027080 */ sll $t6, $v0, 2 +/* 07B7B4 8007ABB4 008E7821 */ addu $t7, $a0, $t6 +/* 07B7B8 8007ABB8 8DF80000 */ lw $t8, ($t7) +/* 07B7BC 8007ABBC 3C018012 */ lui $at, %hi(D_801262D8) # $at, 0x8012 +/* 07B7C0 8007ABC0 3C03800E */ lui $v1, %hi(D_800DE770) # $v1, 0x800e +/* 07B7C4 8007ABC4 8C63E770 */ lw $v1, %lo(D_800DE770)($v1) +/* 07B7C8 8007ABC8 AC3862D8 */ sw $t8, %lo(D_801262D8)($at) +/* 07B7CC 8007ABCC 3C018012 */ lui $at, %hi(D_801262E0) # $at, 0x8012 +/* 07B7D0 8007ABD0 38590001 */ xori $t9, $v0, 1 +/* 07B7D4 8007ABD4 00194880 */ sll $t1, $t9, 2 +/* 07B7D8 8007ABD8 AC2362E0 */ sw $v1, %lo(D_801262E0)($at) +/* 07B7DC 8007ABDC 00895021 */ addu $t2, $a0, $t1 +/* 07B7E0 8007ABE0 8D4B0000 */ lw $t3, ($t2) +/* 07B7E4 8007ABE4 ACB90000 */ sw $t9, ($a1) +/* 07B7E8 8007ABE8 3C018012 */ lui $at, %hi(D_801262D4) # $at, 0x8012 +/* 07B7EC 8007ABEC AC2B62D4 */ sw $t3, %lo(D_801262D4)($at) +/* 07B7F0 8007ABF0 3C018012 */ lui $at, 0x8012 +/* 07B7F4 8007ABF4 03E00008 */ jr $ra +/* 07B7F8 8007ABF8 AC2362DC */ sw $v1, 0x62dc($at) + diff --git a/asm/non_matchings/unknown_07AF10/func_8007ABFC.s b/asm/non_matchings/unknown_07AF10/func_8007ABFC.s new file mode 100644 index 00000000..944ff9e6 --- /dev/null +++ b/asm/non_matchings/unknown_07AF10/func_8007ABFC.s @@ -0,0 +1,35 @@ +glabel func_8007ABFC +/* 07B7FC 8007ABFC 18C00018 */ blez $a2, .L8007AC60 +/* 07B800 8007AC00 00001025 */ move $v0, $zero +/* 07B804 8007AC04 30C70003 */ andi $a3, $a2, 3 +/* 07B808 8007AC08 10E00009 */ beqz $a3, .L8007AC30 +/* 07B80C 8007AC0C 00E01825 */ move $v1, $a3 +.L8007AC10: +/* 07B810 8007AC10 908E0000 */ lbu $t6, ($a0) +/* 07B814 8007AC14 24420001 */ addiu $v0, $v0, 1 +/* 07B818 8007AC18 24A50001 */ addiu $a1, $a1, 1 +/* 07B81C 8007AC1C 24840001 */ addiu $a0, $a0, 1 +/* 07B820 8007AC20 1462FFFB */ bne $v1, $v0, .L8007AC10 +/* 07B824 8007AC24 A0AEFFFF */ sb $t6, -1($a1) +/* 07B828 8007AC28 1046000D */ beq $v0, $a2, .L8007AC60 +/* 07B82C 8007AC2C 00000000 */ nop +.L8007AC30: +/* 07B830 8007AC30 908F0000 */ lbu $t7, ($a0) +/* 07B834 8007AC34 24420004 */ addiu $v0, $v0, 4 +/* 07B838 8007AC38 A0AF0000 */ sb $t7, ($a1) +/* 07B83C 8007AC3C 90980001 */ lbu $t8, 1($a0) +/* 07B840 8007AC40 24A50004 */ addiu $a1, $a1, 4 +/* 07B844 8007AC44 A0B8FFFD */ sb $t8, -3($a1) +/* 07B848 8007AC48 90990002 */ lbu $t9, 2($a0) +/* 07B84C 8007AC4C 24840004 */ addiu $a0, $a0, 4 +/* 07B850 8007AC50 A0B9FFFE */ sb $t9, -2($a1) +/* 07B854 8007AC54 9088FFFF */ lbu $t0, -1($a0) +/* 07B858 8007AC58 1446FFF5 */ bne $v0, $a2, .L8007AC30 +/* 07B85C 8007AC5C A0A8FFFF */ sb $t0, -1($a1) +.L8007AC60: +/* 07B860 8007AC60 03E00008 */ jr $ra +/* 07B864 8007AC64 00000000 */ nop + +/* 07B868 8007AC68 00000000 */ nop +/* 07B86C 8007AC6C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_07B870/func_8007AC70.s b/asm/non_matchings/unknown_07B870/func_8007AC70.s new file mode 100644 index 00000000..d4b7dbde --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007AC70.s @@ -0,0 +1,111 @@ +glabel func_8007AC70 +/* 07B870 8007AC70 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 07B874 8007AC74 AFBF0014 */ sw $ra, 0x14($sp) +/* 07B878 8007AC78 3C05FF00 */ lui $a1, (0xFF00FFFF >> 16) # lui $a1, 0xff00 +/* 07B87C 8007AC7C 34A5FFFF */ ori $a1, (0xFF00FFFF & 0xFFFF) # ori $a1, $a1, 0xffff +/* 07B880 8007AC80 0C01C327 */ jal func_80070C9C +/* 07B884 8007AC84 240415E0 */ li $a0, 5600 +/* 07B888 8007AC88 3C018012 */ lui $at, %hi(D_80126328) # $at, 0x8012 +/* 07B88C 8007AC8C 3C05FF00 */ lui $a1, (0xFF00FFFF >> 16) # lui $a1, 0xff00 +/* 07B890 8007AC90 AC226328 */ sw $v0, %lo(D_80126328)($at) +/* 07B894 8007AC94 34A5FFFF */ ori $a1, (0xFF00FFFF & 0xFFFF) # ori $a1, $a1, 0xffff +/* 07B898 8007AC98 0C01C327 */ jal func_80070C9C +/* 07B89C 8007AC9C 24040280 */ li $a0, 640 +/* 07B8A0 8007ACA0 3C018012 */ lui $at, %hi(D_8012632C) # $at, 0x8012 +/* 07B8A4 8007ACA4 AC22632C */ sw $v0, %lo(D_8012632C)($at) +/* 07B8A8 8007ACA8 3C018012 */ lui $at, %hi(D_80126330) # $at, 0x8012 +/* 07B8AC 8007ACAC AC206330 */ sw $zero, %lo(D_80126330)($at) +/* 07B8B0 8007ACB0 3C018012 */ lui $at, %hi(D_80126340) # $at, 0x8012 +/* 07B8B4 8007ACB4 AC206340 */ sw $zero, %lo(D_80126340)($at) +/* 07B8B8 8007ACB8 0C01DB16 */ jal func_80076C58 +/* 07B8BC 8007ACBC 24040005 */ li $a0, 5 +/* 07B8C0 8007ACC0 3C058012 */ lui $a1, %hi(D_80126320) # $a1, 0x8012 +/* 07B8C4 8007ACC4 24A56320 */ addiu $a1, %lo(D_80126320) # addiu $a1, $a1, 0x6320 +/* 07B8C8 8007ACC8 ACA20000 */ sw $v0, ($a1) +/* 07B8CC 8007ACCC 0C01DB16 */ jal func_80076C58 +/* 07B8D0 8007ACD0 24040003 */ li $a0, 3 +/* 07B8D4 8007ACD4 3C058012 */ lui $a1, %hi(D_80126320) # $a1, 0x8012 +/* 07B8D8 8007ACD8 24A56320 */ addiu $a1, %lo(D_80126320) # addiu $a1, $a1, 0x6320 +/* 07B8DC 8007ACDC 8CA40000 */ lw $a0, ($a1) +/* 07B8E0 8007ACE0 ACA20004 */ sw $v0, 4($a1) +/* 07B8E4 8007ACE4 8C8E0000 */ lw $t6, ($a0) +/* 07B8E8 8007ACE8 2407FFFF */ li $a3, -1 +/* 07B8EC 8007ACEC 10EE0006 */ beq $a3, $t6, .L8007AD08 +/* 07B8F0 8007ACF0 00001825 */ move $v1, $zero +/* 07B8F4 8007ACF4 00801025 */ move $v0, $a0 +.L8007ACF8: +/* 07B8F8 8007ACF8 8C4F0004 */ lw $t7, 4($v0) +/* 07B8FC 8007ACFC 24630001 */ addiu $v1, $v1, 1 +/* 07B900 8007AD00 14EFFFFD */ bne $a3, $t7, .L8007ACF8 +/* 07B904 8007AD04 24420004 */ addiu $v0, $v0, 4 +.L8007AD08: +/* 07B908 8007AD08 3C068012 */ lui $a2, %hi(D_80126338) # $a2, 0x8012 +/* 07B90C 8007AD0C 8CA40004 */ lw $a0, 4($a1) +/* 07B910 8007AD10 24C66338 */ addiu $a2, %lo(D_80126338) # addiu $a2, $a2, 0x6338 +/* 07B914 8007AD14 2463FFFF */ addiu $v1, $v1, -1 +/* 07B918 8007AD18 ACC30000 */ sw $v1, ($a2) +/* 07B91C 8007AD1C 8C980000 */ lw $t8, ($a0) +/* 07B920 8007AD20 00001825 */ move $v1, $zero +/* 07B924 8007AD24 10F80006 */ beq $a3, $t8, .L8007AD40 +/* 07B928 8007AD28 3C05FF00 */ lui $a1, (0xFF00FFFF >> 16) # lui $a1, 0xff00 +/* 07B92C 8007AD2C 00801025 */ move $v0, $a0 +.L8007AD30: +/* 07B930 8007AD30 8C590004 */ lw $t9, 4($v0) +/* 07B934 8007AD34 24630001 */ addiu $v1, $v1, 1 +/* 07B938 8007AD38 14F9FFFD */ bne $a3, $t9, .L8007AD30 +/* 07B93C 8007AD3C 24420004 */ addiu $v0, $v0, 4 +.L8007AD40: +/* 07B940 8007AD40 2463FFFF */ addiu $v1, $v1, -1 +/* 07B944 8007AD44 ACC30004 */ sw $v1, 4($a2) +/* 07B948 8007AD48 24040320 */ li $a0, 800 +/* 07B94C 8007AD4C 0C01C327 */ jal func_80070C9C +/* 07B950 8007AD50 34A5FFFF */ ori $a1, (0xFF00FFFF & 0xFFFF) # ori $a1, $a1, 0xffff +/* 07B954 8007AD54 3C018012 */ lui $at, %hi(D_8012634C) # $at, 0x8012 +/* 07B958 8007AD58 3C05FF00 */ lui $a1, (0xFF00FFFF >> 16) # lui $a1, 0xff00 +/* 07B95C 8007AD5C AC22634C */ sw $v0, %lo(D_8012634C)($at) +/* 07B960 8007AD60 34A5FFFF */ ori $a1, (0xFF00FFFF & 0xFFFF) # ori $a1, $a1, 0xffff +/* 07B964 8007AD64 0C01C327 */ jal func_80070C9C +/* 07B968 8007AD68 24040200 */ li $a0, 512 +/* 07B96C 8007AD6C 3C018012 */ lui $at, %hi(D_80126350) # $at, 0x8012 +/* 07B970 8007AD70 AC226350 */ sw $v0, %lo(D_80126350)($at) +/* 07B974 8007AD74 3C018012 */ lui $at, %hi(D_80126358) # $at, 0x8012 +/* 07B978 8007AD78 AC206358 */ sw $zero, %lo(D_80126358)($at) +/* 07B97C 8007AD7C 0C01DB16 */ jal func_80076C58 +/* 07B980 8007AD80 2404000D */ li $a0, 13 +/* 07B984 8007AD84 3C058012 */ lui $a1, %hi(D_80126348) # $a1, 0x8012 +/* 07B988 8007AD88 3C068012 */ lui $a2, %hi(D_80126354) # $a2, 0x8012 +/* 07B98C 8007AD8C 24C66354 */ addiu $a2, %lo(D_80126354) # addiu $a2, $a2, 0x6354 +/* 07B990 8007AD90 24A56348 */ addiu $a1, %lo(D_80126348) # addiu $a1, $a1, 0x6348 +/* 07B994 8007AD94 00004080 */ sll $t0, $zero, 2 +/* 07B998 8007AD98 ACA20000 */ sw $v0, ($a1) +/* 07B99C 8007AD9C ACC00000 */ sw $zero, ($a2) +/* 07B9A0 8007ADA0 00484821 */ addu $t1, $v0, $t0 +/* 07B9A4 8007ADA4 8D2A0000 */ lw $t2, ($t1) +/* 07B9A8 8007ADA8 2407FFFF */ li $a3, -1 +/* 07B9AC 8007ADAC 00402025 */ move $a0, $v0 +/* 07B9B0 8007ADB0 10EA0009 */ beq $a3, $t2, .L8007ADD8 +/* 07B9B4 8007ADB4 00001825 */ move $v1, $zero +/* 07B9B8 8007ADB8 246B0001 */ addiu $t3, $v1, 1 +.L8007ADBC: +/* 07B9BC 8007ADBC 000B6080 */ sll $t4, $t3, 2 +/* 07B9C0 8007ADC0 008C6821 */ addu $t5, $a0, $t4 +/* 07B9C4 8007ADC4 ACCB0000 */ sw $t3, ($a2) +/* 07B9C8 8007ADC8 8DAE0000 */ lw $t6, ($t5) +/* 07B9CC 8007ADCC 01601825 */ move $v1, $t3 +/* 07B9D0 8007ADD0 14EEFFFA */ bne $a3, $t6, .L8007ADBC +/* 07B9D4 8007ADD4 246B0001 */ addiu $t3, $v1, 1 +.L8007ADD8: +/* 07B9D8 8007ADD8 246FFFFF */ addiu $t7, $v1, -1 +/* 07B9DC 8007ADDC 3C05FF00 */ lui $a1, (0xFF00FFFF >> 16) # lui $a1, 0xff00 +/* 07B9E0 8007ADE0 ACCF0000 */ sw $t7, ($a2) +/* 07B9E4 8007ADE4 34A5FFFF */ ori $a1, (0xFF00FFFF & 0xFFFF) # ori $a1, $a1, 0xffff +/* 07B9E8 8007ADE8 0C01C327 */ jal func_80070C9C +/* 07B9EC 8007ADEC 24040028 */ li $a0, 40 +/* 07B9F0 8007ADF0 3C018012 */ lui $at, %hi(D_8012636C) # $at, 0x8012 +/* 07B9F4 8007ADF4 8FBF0014 */ lw $ra, 0x14($sp) +/* 07B9F8 8007ADF8 AC22636C */ sw $v0, %lo(D_8012636C)($at) +/* 07B9FC 8007ADFC 3C018012 */ lui $at, %hi(D_80126344) # $at, 0x8012 +/* 07BA00 8007AE00 AC206344 */ sw $zero, %lo(D_80126344)($at) +/* 07BA04 8007AE04 03E00008 */ jr $ra +/* 07BA08 8007AE08 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_07B870/func_8007AE0C.s b/asm/non_matchings/unknown_07B870/func_8007AE0C.s new file mode 100644 index 00000000..15802143 --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007AE0C.s @@ -0,0 +1,9 @@ +glabel func_8007AE0C +/* 07BA0C 8007AE0C 3C028012 */ lui $v0, %hi(D_80126378) # $v0, 0x8012 +/* 07BA10 8007AE10 24426378 */ addiu $v0, %lo(D_80126378) # addiu $v0, $v0, 0x6378 +/* 07BA14 8007AE14 8C4E0000 */ lw $t6, ($v0) +/* 07BA18 8007AE18 00000000 */ nop +/* 07BA1C 8007AE1C 01C47825 */ or $t7, $t6, $a0 +/* 07BA20 8007AE20 03E00008 */ jr $ra +/* 07BA24 8007AE24 AC4F0000 */ sw $t7, ($v0) + diff --git a/asm/non_matchings/unknown_07B870/func_8007AE28.s b/asm/non_matchings/unknown_07B870/func_8007AE28.s new file mode 100644 index 00000000..79a6bf56 --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007AE28.s @@ -0,0 +1,24 @@ +glabel func_8007AE28 +/* 07BA28 8007AE28 3C028012 */ lui $v0, %hi(D_80126378) # $v0, 0x8012 +/* 07BA2C 8007AE2C 24426378 */ addiu $v0, %lo(D_80126378) # addiu $v0, $v0, 0x6378 +/* 07BA30 8007AE30 8C4E0000 */ lw $t6, ($v0) +/* 07BA34 8007AE34 00807827 */ not $t7, $a0 +/* 07BA38 8007AE38 01CFC024 */ and $t8, $t6, $t7 +/* 07BA3C 8007AE3C 03E00008 */ jr $ra +/* 07BA40 8007AE40 AC580000 */ sw $t8, ($v0) + +/* 07BA44 8007AE44 3C028012 */ lui $v0, %hi(D_80126338) # $v0, 0x8012 +/* 07BA48 8007AE48 8C426338 */ lw $v0, %lo(D_80126338)($v0) +/* 07BA4C 8007AE4C 03E00008 */ jr $ra +/* 07BA50 8007AE50 00000000 */ nop + +/* 07BA54 8007AE54 3C028012 */ lui $v0, %hi(D_8012633C) # $v0, 0x8012 +/* 07BA58 8007AE58 8C42633C */ lw $v0, %lo(D_8012633C)($v0) +/* 07BA5C 8007AE5C 03E00008 */ jr $ra +/* 07BA60 8007AE60 00000000 */ nop + +/* 07BA64 8007AE64 3C028012 */ lui $v0, %hi(D_80126354) # $v0, 0x8012 +/* 07BA68 8007AE68 8C426354 */ lw $v0, %lo(D_80126354)($v0) +/* 07BA6C 8007AE6C 03E00008 */ jr $ra +/* 07BA70 8007AE70 00000000 */ nop + diff --git a/asm/non_matchings/unknown_07B870/func_8007AE74.s b/asm/non_matchings/unknown_07B870/func_8007AE74.s new file mode 100644 index 00000000..79a169c4 --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007AE74.s @@ -0,0 +1,300 @@ +glabel func_8007AE74 +/* 07BA74 8007AE74 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 07BA78 8007AE78 308EFFFF */ andi $t6, $a0, 0xffff +/* 07BA7C 8007AE7C AFB30024 */ sw $s3, 0x24($sp) +/* 07BA80 8007AE80 AFB00018 */ sw $s0, 0x18($sp) +/* 07BA84 8007AE84 31CF8000 */ andi $t7, $t6, 0x8000 +/* 07BA88 8007AE88 AFBF002C */ sw $ra, 0x2c($sp) +/* 07BA8C 8007AE8C AFB40028 */ sw $s4, 0x28($sp) +/* 07BA90 8007AE90 AFB20020 */ sw $s2, 0x20($sp) +/* 07BA94 8007AE94 AFB1001C */ sw $s1, 0x1c($sp) +/* 07BA98 8007AE98 01C08025 */ move $s0, $t6 +/* 07BA9C 8007AE9C 01C04025 */ move $t0, $t6 +/* 07BAA0 8007AEA0 24130004 */ li $s3, 4 +/* 07BAA4 8007AEA4 11E00004 */ beqz $t7, .L8007AEB8 +/* 07BAA8 8007AEA8 00001025 */ move $v0, $zero +/* 07BAAC 8007AEAC 24020001 */ li $v0, 1 +/* 07BAB0 8007AEB0 31C87FFF */ andi $t0, $t6, 0x7fff +/* 07BAB4 8007AEB4 24130002 */ li $s3, 2 +.L8007AEB8: +/* 07BAB8 8007AEB8 00024880 */ sll $t1, $v0, 2 +/* 07BABC 8007AEBC 3C188012 */ lui $t8, 0x8012 +/* 07BAC0 8007AEC0 0309C021 */ addu $t8, $t8, $t1 +/* 07BAC4 8007AEC4 8F186338 */ lw $t8, 0x6338($t8) +/* 07BAC8 8007AEC8 3C028012 */ lui $v0, %hi(D_80126330) # $v0, 0x8012 +/* 07BACC 8007AECC 0118082A */ slt $at, $t0, $t8 +/* 07BAD0 8007AED0 10200003 */ beqz $at, .L8007AEE0 +/* 07BAD4 8007AED4 3C048012 */ lui $a0, %hi(D_80126328) # $a0, 0x8012 +/* 07BAD8 8007AED8 05010002 */ bgez $t0, .L8007AEE4 +/* 07BADC 8007AEDC 00000000 */ nop +.L8007AEE0: +/* 07BAE0 8007AEE0 00008025 */ move $s0, $zero +.L8007AEE4: +/* 07BAE4 8007AEE4 8C426330 */ lw $v0, %lo(D_80126330)($v0) +/* 07BAE8 8007AEE8 00008825 */ move $s1, $zero +/* 07BAEC 8007AEEC 18400012 */ blez $v0, .L8007AF38 +/* 07BAF0 8007AEF0 3C148012 */ lui $s4, %hi(D_8012636C) # $s4, 0x8012 +/* 07BAF4 8007AEF4 8C846328 */ lw $a0, %lo(D_80126328)($a0) +/* 07BAF8 8007AEF8 00000000 */ nop +/* 07BAFC 8007AEFC 001150C0 */ sll $t2, $s1, 3 +.L8007AF00: +/* 07BB00 8007AF00 008A1821 */ addu $v1, $a0, $t2 +/* 07BB04 8007AF04 8C6B0000 */ lw $t3, ($v1) +/* 07BB08 8007AF08 26310001 */ addiu $s1, $s1, 1 +/* 07BB0C 8007AF0C 160B0008 */ bne $s0, $t3, .L8007AF30 +/* 07BB10 8007AF10 0222082A */ slt $at, $s1, $v0 +/* 07BB14 8007AF14 8C620004 */ lw $v0, 4($v1) +/* 07BB18 8007AF18 00000000 */ nop +/* 07BB1C 8007AF1C 904C0005 */ lbu $t4, 5($v0) +/* 07BB20 8007AF20 00000000 */ nop +/* 07BB24 8007AF24 258D0001 */ addiu $t5, $t4, 1 +/* 07BB28 8007AF28 100000DC */ b .L8007B29C +/* 07BB2C 8007AF2C A04D0005 */ sb $t5, 5($v0) +.L8007AF30: +/* 07BB30 8007AF30 1420FFF3 */ bnez $at, .L8007AF00 +/* 07BB34 8007AF34 001150C0 */ sll $t2, $s1, 3 +.L8007AF38: +/* 07BB38 8007AF38 3C0E8012 */ lui $t6, 0x8012 +/* 07BB3C 8007AF3C 01C97021 */ addu $t6, $t6, $t1 +/* 07BB40 8007AF40 8DCE6320 */ lw $t6, 0x6320($t6) +/* 07BB44 8007AF44 00087880 */ sll $t7, $t0, 2 +/* 07BB48 8007AF48 01CF1021 */ addu $v0, $t6, $t7 +/* 07BB4C 8007AF4C 8C520000 */ lw $s2, ($v0) +/* 07BB50 8007AF50 8C580004 */ lw $t8, 4($v0) +/* 07BB54 8007AF54 2694636C */ addiu $s4, %lo(D_8012636C) # addiu $s4, $s4, 0x636c +/* 07BB58 8007AF58 8E850000 */ lw $a1, ($s4) +/* 07BB5C 8007AF5C 0312C823 */ subu $t9, $t8, $s2 +/* 07BB60 8007AF60 AFB90058 */ sw $t9, 0x58($sp) +/* 07BB64 8007AF64 AFB30050 */ sw $s3, 0x50($sp) +/* 07BB68 8007AF68 02602025 */ move $a0, $s3 +/* 07BB6C 8007AF6C 24070028 */ li $a3, 40 +/* 07BB70 8007AF70 0C01DB9A */ jal func_80076E68 +/* 07BB74 8007AF74 02403025 */ move $a2, $s2 +/* 07BB78 8007AF78 8E830000 */ lw $v1, ($s4) +/* 07BB7C 8007AF7C 8FAE0058 */ lw $t6, 0x58($sp) +/* 07BB80 8007AF80 94710012 */ lhu $s1, 0x12($v1) +/* 07BB84 8007AF84 906C001D */ lbu $t4, 0x1d($v1) +/* 07BB88 8007AF88 00115203 */ sra $t2, $s1, 8 +/* 07BB8C 8007AF8C 314BFFFF */ andi $t3, $t2, 0xffff +/* 07BB90 8007AF90 15800015 */ bnez $t4, .L8007AFE8 +/* 07BB94 8007AF94 01608825 */ move $s1, $t3 +/* 07BB98 8007AF98 000B6880 */ sll $t5, $t3, 2 +/* 07BB9C 8007AF9C 01AB6823 */ subu $t5, $t5, $t3 +/* 07BBA0 8007AFA0 3C05800E */ lui $a1, %hi(D_800DE7C0) # $a1, 0x800e +/* 07BBA4 8007AFA4 8CA5E7C0 */ lw $a1, %lo(D_800DE7C0)($a1) +/* 07BBA8 8007AFA8 000D6940 */ sll $t5, $t5, 5 +/* 07BBAC 8007AFAC 01AE2021 */ addu $a0, $t5, $t6 +/* 07BBB0 8007AFB0 0C01C344 */ jal func_80070D10 +/* 07BBB4 8007AFB4 0160A025 */ move $s4, $t3 +/* 07BBB8 8007AFB8 14400003 */ bnez $v0, .L8007AFC8 +/* 07BBBC 8007AFBC 00409825 */ move $s3, $v0 +/* 07BBC0 8007AFC0 100000B6 */ b .L8007B29C +/* 07BBC4 8007AFC4 00001025 */ move $v0, $zero +.L8007AFC8: +/* 07BBC8 8007AFC8 8FA40050 */ lw $a0, 0x50($sp) +/* 07BBCC 8007AFCC 8FA70058 */ lw $a3, 0x58($sp) +/* 07BBD0 8007AFD0 02602825 */ move $a1, $s3 +/* 07BBD4 8007AFD4 02403025 */ move $a2, $s2 +/* 07BBD8 8007AFD8 0C01DB9A */ jal func_80076E68 +/* 07BBDC 8007AFDC 00008825 */ move $s1, $zero +/* 07BBE0 8007AFE0 1000002A */ b .L8007B08C +/* 07BBE4 8007AFE4 00000000 */ nop +.L8007AFE8: +/* 07BBE8 8007AFE8 0C03186B */ jal func_800C61AC +/* 07BBEC 8007AFEC 24640020 */ addiu $a0, $v1, 0x20 +/* 07BBF0 8007AFF0 0011C080 */ sll $t8, $s1, 2 +/* 07BBF4 8007AFF4 0311C023 */ subu $t8, $t8, $s1 +/* 07BBF8 8007AFF8 0018C140 */ sll $t8, $t8, 5 +/* 07BBFC 8007AFFC 3C05800E */ lui $a1, %hi(D_800DE7C0) # $a1, 0x800e +/* 07BC00 8007B000 244F0020 */ addiu $t7, $v0, 0x20 +/* 07BC04 8007B004 8CA5E7C0 */ lw $a1, %lo(D_800DE7C0)($a1) +/* 07BC08 8007B008 03022021 */ addu $a0, $t8, $v0 +/* 07BC0C 8007B00C AFAF003C */ sw $t7, 0x3c($sp) +/* 07BC10 8007B010 24840020 */ addiu $a0, $a0, 0x20 +/* 07BC14 8007B014 0C01C344 */ jal func_80070D10 +/* 07BC18 8007B018 0220A025 */ move $s4, $s1 +/* 07BC1C 8007B01C 14400003 */ bnez $v0, .L8007B02C +/* 07BC20 8007B020 00409825 */ move $s3, $v0 +/* 07BC24 8007B024 1000009D */ b .L8007B29C +/* 07BC28 8007B028 00001025 */ move $v0, $zero +.L8007B02C: +/* 07BC2C 8007B02C 8FB9003C */ lw $t9, 0x3c($sp) +/* 07BC30 8007B030 8FAB0058 */ lw $t3, 0x58($sp) +/* 07BC34 8007B034 02795021 */ addu $t2, $s3, $t9 +/* 07BC38 8007B038 014B1023 */ subu $v0, $t2, $t3 +/* 07BC3C 8007B03C 8FA40050 */ lw $a0, 0x50($sp) +/* 07BC40 8007B040 04410004 */ bgez $v0, .L8007B054 +/* 07BC44 8007B044 304C000F */ andi $t4, $v0, 0xf +/* 07BC48 8007B048 11800002 */ beqz $t4, .L8007B054 +/* 07BC4C 8007B04C 00000000 */ nop +/* 07BC50 8007B050 258CFFF0 */ addiu $t4, $t4, -0x10 +.L8007B054: +/* 07BC54 8007B054 004C2823 */ subu $a1, $v0, $t4 +/* 07BC58 8007B058 AFA50034 */ sw $a1, 0x34($sp) +/* 07BC5C 8007B05C 02403025 */ move $a2, $s2 +/* 07BC60 8007B060 00008825 */ move $s1, $zero +/* 07BC64 8007B064 0C01DB9A */ jal func_80076E68 +/* 07BC68 8007B068 01603825 */ move $a3, $t3 +/* 07BC6C 8007B06C 8FA40034 */ lw $a0, 0x34($sp) +/* 07BC70 8007B070 02602825 */ move $a1, $s3 +/* 07BC74 8007B074 0C031886 */ jal func_800C6218 +/* 07BC78 8007B078 24840020 */ addiu $a0, $a0, 0x20 +/* 07BC7C 8007B07C 8FAD003C */ lw $t5, 0x3c($sp) +/* 07BC80 8007B080 00000000 */ nop +/* 07BC84 8007B084 25AEFFE0 */ addiu $t6, $t5, -0x20 +/* 07BC88 8007B088 AFAE0058 */ sw $t6, 0x58($sp) +.L8007B08C: +/* 07BC8C 8007B08C 3C028012 */ lui $v0, %hi(D_80126330) # $v0, 0x8012 +/* 07BC90 8007B090 8C426330 */ lw $v0, %lo(D_80126330)($v0) +/* 07BC94 8007B094 2405FFFF */ li $a1, -1 +/* 07BC98 8007B098 18400010 */ blez $v0, .L8007B0DC +/* 07BC9C 8007B09C 3C0E8012 */ lui $t6, %hi(D_80126328) # $t6, 0x8012 +/* 07BCA0 8007B0A0 3C048012 */ lui $a0, %hi(D_80126328) # $a0, 0x8012 +/* 07BCA4 8007B0A4 8C846328 */ lw $a0, %lo(D_80126328)($a0) +/* 07BCA8 8007B0A8 2403FFFF */ li $v1, -1 +/* 07BCAC 8007B0AC 0011C0C0 */ sll $t8, $s1, 3 +.L8007B0B0: +/* 07BCB0 8007B0B0 0098C821 */ addu $t9, $a0, $t8 +/* 07BCB4 8007B0B4 8F2A0000 */ lw $t2, ($t9) +/* 07BCB8 8007B0B8 00000000 */ nop +/* 07BCBC 8007B0BC 146A0002 */ bne $v1, $t2, .L8007B0C8 +/* 07BCC0 8007B0C0 00000000 */ nop +/* 07BCC4 8007B0C4 02202825 */ move $a1, $s1 +.L8007B0C8: +/* 07BCC8 8007B0C8 26310001 */ addiu $s1, $s1, 1 +/* 07BCCC 8007B0CC 0222082A */ slt $at, $s1, $v0 +/* 07BCD0 8007B0D0 1420FFF7 */ bnez $at, .L8007B0B0 +/* 07BCD4 8007B0D4 0011C0C0 */ sll $t8, $s1, 3 +/* 07BCD8 8007B0D8 00008825 */ move $s1, $zero +.L8007B0DC: +/* 07BCDC 8007B0DC 3C048012 */ lui $a0, %hi(D_80126328) # $a0, 0x8012 +/* 07BCE0 8007B0E0 2403FFFF */ li $v1, -1 +/* 07BCE4 8007B0E4 8C846328 */ lw $a0, %lo(D_80126328)($a0) +/* 07BCE8 8007B0E8 14A30004 */ bne $a1, $v1, .L8007B0FC +/* 07BCEC 8007B0EC 244C0001 */ addiu $t4, $v0, 1 +/* 07BCF0 8007B0F0 3C018012 */ lui $at, %hi(D_80126330) # $at, 0x8012 +/* 07BCF4 8007B0F4 00402825 */ move $a1, $v0 +/* 07BCF8 8007B0F8 AC2C6330 */ sw $t4, %lo(D_80126330)($at) +.L8007B0FC: +/* 07BCFC 8007B0FC 000558C0 */ sll $t3, $a1, 3 +/* 07BD00 8007B100 008B6821 */ addu $t5, $a0, $t3 +/* 07BD04 8007B104 ADB00000 */ sw $s0, ($t5) +/* 07BD08 8007B108 8DCE6328 */ lw $t6, %lo(D_80126328)($t6) +/* 07BD0C 8007B10C 24010007 */ li $at, 7 +/* 07BD10 8007B110 01CB7821 */ addu $t7, $t6, $t3 +/* 07BD14 8007B114 ADF30004 */ sw $s3, 4($t7) +/* 07BD18 8007B118 92660002 */ lbu $a2, 2($s3) +/* 07BD1C 8007B11C 2403FFFF */ li $v1, -1 +/* 07BD20 8007B120 30D8000F */ andi $t8, $a2, 0xf +/* 07BD24 8007B124 1701001E */ bne $t8, $at, .L8007B1A0 +/* 07BD28 8007B128 03003025 */ move $a2, $t8 +/* 07BD2C 8007B12C 3C128012 */ lui $s2, %hi(D_80126344) # $s2, 0x8012 +/* 07BD30 8007B130 26526344 */ addiu $s2, %lo(D_80126344) # addiu $s2, $s2, 0x6344 +/* 07BD34 8007B134 8E590000 */ lw $t9, ($s2) +/* 07BD38 8007B138 2404000E */ li $a0, 14 +/* 07BD3C 8007B13C 17200014 */ bnez $t9, .L8007B190 +/* 07BD40 8007B140 3C0A8012 */ lui $t2, %hi(D_8012632C) # $t2, 0x8012 +/* 07BD44 8007B144 3C0C8012 */ lui $t4, %hi(D_80126340) # $t4, 0x8012 +/* 07BD48 8007B148 8D8C6340 */ lw $t4, %lo(D_80126340)($t4) +/* 07BD4C 8007B14C 8D4A632C */ lw $t2, %lo(D_8012632C)($t2) +/* 07BD50 8007B150 86660008 */ lh $a2, 8($s3) +/* 07BD54 8007B154 24070020 */ li $a3, 32 +/* 07BD58 8007B158 0C01DB9A */ jal func_80076E68 +/* 07BD5C 8007B15C 014C2821 */ addu $a1, $t2, $t4 +/* 07BD60 8007B160 3C0B8012 */ lui $t3, %hi(D_80126340) # $t3, 0x8012 +/* 07BD64 8007B164 8D6B6340 */ lw $t3, %lo(D_80126340)($t3) +/* 07BD68 8007B168 3C0D8012 */ lui $t5, %hi(D_80126340) # $t5, 0x8012 +/* 07BD6C 8007B16C A66B0008 */ sh $t3, 8($s3) +/* 07BD70 8007B170 8DAD6340 */ lw $t5, %lo(D_80126340)($t5) +/* 07BD74 8007B174 3C018012 */ lui $at, %hi(D_80126340) # $at, 0x8012 +/* 07BD78 8007B178 25AE0020 */ addiu $t6, $t5, 0x20 +/* 07BD7C 8007B17C AC2E6340 */ sw $t6, %lo(D_80126340)($at) +/* 07BD80 8007B180 92660002 */ lbu $a2, 2($s3) +/* 07BD84 8007B184 00000000 */ nop +/* 07BD88 8007B188 30CF000F */ andi $t7, $a2, 0xf +/* 07BD8C 8007B18C 01E03025 */ move $a2, $t7 +.L8007B190: +/* 07BD90 8007B190 3C038012 */ lui $v1, %hi(D_80126340) # $v1, 0x8012 +/* 07BD94 8007B194 8C636340 */ lw $v1, %lo(D_80126340)($v1) +/* 07BD98 8007B198 00000000 */ nop +/* 07BD9C 8007B19C 2463FFE0 */ addiu $v1, $v1, -0x20 +.L8007B1A0: +/* 07BDA0 8007B1A0 3C128012 */ lui $s2, %hi(D_80126344) # $s2, 0x8012 +/* 07BDA4 8007B1A4 24010008 */ li $at, 8 +/* 07BDA8 8007B1A8 14C10016 */ bne $a2, $at, .L8007B204 +/* 07BDAC 8007B1AC 26526344 */ addiu $s2, %lo(D_80126344) # addiu $s2, $s2, 0x6344 +/* 07BDB0 8007B1B0 8E580000 */ lw $t8, ($s2) +/* 07BDB4 8007B1B4 3C108012 */ lui $s0, %hi(D_80126340) # $s0, 0x8012 +/* 07BDB8 8007B1B8 8E106340 */ lw $s0, %lo(D_80126340)($s0) +/* 07BDBC 8007B1BC 17000010 */ bnez $t8, .L8007B200 +/* 07BDC0 8007B1C0 2404000E */ li $a0, 14 +/* 07BDC4 8007B1C4 3C198012 */ lui $t9, %hi(D_8012632C) # $t9, 0x8012 +/* 07BDC8 8007B1C8 8F39632C */ lw $t9, %lo(D_8012632C)($t9) +/* 07BDCC 8007B1CC 86660008 */ lh $a2, 8($s3) +/* 07BDD0 8007B1D0 24070080 */ li $a3, 128 +/* 07BDD4 8007B1D4 0C01DB9A */ jal func_80076E68 +/* 07BDD8 8007B1D8 03302821 */ addu $a1, $t9, $s0 +/* 07BDDC 8007B1DC 3C038012 */ lui $v1, %hi(D_80126340) # $v1, 0x8012 +/* 07BDE0 8007B1E0 24636340 */ addiu $v1, %lo(D_80126340) # addiu $v1, $v1, 0x6340 +/* 07BDE4 8007B1E4 8C6A0000 */ lw $t2, ($v1) +/* 07BDE8 8007B1E8 00000000 */ nop +/* 07BDEC 8007B1EC A66A0008 */ sh $t2, 8($s3) +/* 07BDF0 8007B1F0 8C6C0000 */ lw $t4, ($v1) +/* 07BDF4 8007B1F4 00000000 */ nop +/* 07BDF8 8007B1F8 25900080 */ addiu $s0, $t4, 0x80 +/* 07BDFC 8007B1FC AC700000 */ sw $s0, ($v1) +.L8007B200: +/* 07BE00 8007B200 2603FF80 */ addiu $v1, $s0, -0x80 +.L8007B204: +/* 07BE04 8007B204 8FAD0058 */ lw $t5, 0x58($sp) +/* 07BE08 8007B208 AE400000 */ sw $zero, ($s2) +/* 07BE0C 8007B20C AFA30054 */ sw $v1, 0x54($sp) +/* 07BE10 8007B210 0C01C614 */ jal func_80071850 +/* 07BE14 8007B214 026D2021 */ addu $a0, $s3, $t5 +/* 07BE18 8007B218 8FA30054 */ lw $v1, 0x54($sp) +/* 07BE1C 8007B21C 00409025 */ move $s2, $v0 +/* 07BE20 8007B220 1A80000F */ blez $s4, .L8007B260 +/* 07BE24 8007B224 02608025 */ move $s0, $s3 +.L8007B228: +/* 07BE28 8007B228 02002025 */ move $a0, $s0 +/* 07BE2C 8007B22C 02402825 */ move $a1, $s2 +/* 07BE30 8007B230 0C01F43D */ jal func_8007D0F4 +/* 07BE34 8007B234 AFA30054 */ sw $v1, 0x54($sp) +/* 07BE38 8007B238 8FA30054 */ lw $v1, 0x54($sp) +/* 07BE3C 8007B23C 26310001 */ addiu $s1, $s1, 1 +/* 07BE40 8007B240 04600003 */ bltz $v1, .L8007B250 +/* 07BE44 8007B244 00000000 */ nop +/* 07BE48 8007B248 A6030008 */ sh $v1, 8($s0) +/* 07BE4C 8007B24C 26520030 */ addiu $s2, $s2, 0x30 +.L8007B250: +/* 07BE50 8007B250 860E0016 */ lh $t6, 0x16($s0) +/* 07BE54 8007B254 26520060 */ addiu $s2, $s2, 0x60 +/* 07BE58 8007B258 1634FFF3 */ bne $s1, $s4, .L8007B228 +/* 07BE5C 8007B25C 020E8021 */ addu $s0, $s0, $t6 +.L8007B260: +/* 07BE60 8007B260 3C0F8012 */ lui $t7, %hi(D_80126340) # $t7, 0x8012 +/* 07BE64 8007B264 8DEF6340 */ lw $t7, %lo(D_80126340)($t7) +/* 07BE68 8007B268 3C188012 */ lui $t8, %hi(D_80126330) # $t8, 0x8012 +/* 07BE6C 8007B26C 29E10280 */ slti $at, $t7, 0x280 +/* 07BE70 8007B270 14200003 */ bnez $at, .L8007B280 +/* 07BE74 8007B274 00000000 */ nop +/* 07BE78 8007B278 10000008 */ b .L8007B29C +/* 07BE7C 8007B27C 00001025 */ move $v0, $zero +.L8007B280: +/* 07BE80 8007B280 8F186330 */ lw $t8, %lo(D_80126330)($t8) +/* 07BE84 8007B284 02601025 */ move $v0, $s3 +/* 07BE88 8007B288 2B0102BD */ slti $at, $t8, 0x2bd +/* 07BE8C 8007B28C 14200003 */ bnez $at, .L8007B29C +/* 07BE90 8007B290 00000000 */ nop +/* 07BE94 8007B294 10000001 */ b .L8007B29C +/* 07BE98 8007B298 00001025 */ move $v0, $zero +.L8007B29C: +/* 07BE9C 8007B29C 8FBF002C */ lw $ra, 0x2c($sp) +/* 07BEA0 8007B2A0 8FB00018 */ lw $s0, 0x18($sp) +/* 07BEA4 8007B2A4 8FB1001C */ lw $s1, 0x1c($sp) +/* 07BEA8 8007B2A8 8FB20020 */ lw $s2, 0x20($sp) +/* 07BEAC 8007B2AC 8FB30024 */ lw $s3, 0x24($sp) +/* 07BEB0 8007B2B0 8FB40028 */ lw $s4, 0x28($sp) +/* 07BEB4 8007B2B4 03E00008 */ jr $ra +/* 07BEB8 8007B2B8 27BD0070 */ addiu $sp, $sp, 0x70 + diff --git a/asm/non_matchings/unknown_07B870/func_8007B2BC.s b/asm/non_matchings/unknown_07B870/func_8007B2BC.s new file mode 100644 index 00000000..322493da --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007B2BC.s @@ -0,0 +1,51 @@ +glabel func_8007B2BC +/* 07BEBC 8007B2BC 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 07BEC0 8007B2C0 AFBF0014 */ sw $ra, 0x14($sp) +/* 07BEC4 8007B2C4 10800027 */ beqz $a0, .L8007B364 +/* 07BEC8 8007B2C8 00803025 */ move $a2, $a0 +/* 07BECC 8007B2CC 908E0005 */ lbu $t6, 5($a0) +/* 07BED0 8007B2D0 00000000 */ nop +/* 07BED4 8007B2D4 25CFFFFF */ addiu $t7, $t6, -1 +/* 07BED8 8007B2D8 31F800FF */ andi $t8, $t7, 0xff +/* 07BEDC 8007B2DC 1F000021 */ bgtz $t8, .L8007B364 +/* 07BEE0 8007B2E0 A08F0005 */ sb $t7, 5($a0) +/* 07BEE4 8007B2E4 3C048012 */ lui $a0, %hi(D_80126330) # $a0, 0x8012 +/* 07BEE8 8007B2E8 8C846330 */ lw $a0, %lo(D_80126330)($a0) +/* 07BEEC 8007B2EC 00001025 */ move $v0, $zero +/* 07BEF0 8007B2F0 1880001C */ blez $a0, .L8007B364 +/* 07BEF4 8007B2F4 3C058012 */ lui $a1, %hi(D_80126328) # $a1, 0x8012 +/* 07BEF8 8007B2F8 8CA56328 */ lw $a1, %lo(D_80126328)($a1) +/* 07BEFC 8007B2FC 00000000 */ nop +/* 07BF00 8007B300 0002C8C0 */ sll $t9, $v0, 3 +.L8007B304: +/* 07BF04 8007B304 00B94021 */ addu $t0, $a1, $t9 +/* 07BF08 8007B308 8D090004 */ lw $t1, 4($t0) +/* 07BF0C 8007B30C 00000000 */ nop +/* 07BF10 8007B310 14C90011 */ bne $a2, $t1, .L8007B358 +/* 07BF14 8007B314 24420001 */ addiu $v0, $v0, 1 +/* 07BF18 8007B318 00C02025 */ move $a0, $a2 +/* 07BF1C 8007B31C 0C01C450 */ jal func_80071140 +/* 07BF20 8007B320 AFB90018 */ sw $t9, 0x18($sp) +/* 07BF24 8007B324 3C028012 */ lui $v0, %hi(D_80126328) # $v0, 0x8012 +/* 07BF28 8007B328 24426328 */ addiu $v0, %lo(D_80126328) # addiu $v0, $v0, 0x6328 +/* 07BF2C 8007B32C 8FA30018 */ lw $v1, 0x18($sp) +/* 07BF30 8007B330 8C4A0000 */ lw $t2, ($v0) +/* 07BF34 8007B334 2404FFFF */ li $a0, -1 +/* 07BF38 8007B338 01435821 */ addu $t3, $t2, $v1 +/* 07BF3C 8007B33C AD640000 */ sw $a0, ($t3) +/* 07BF40 8007B340 8C4C0000 */ lw $t4, ($v0) +/* 07BF44 8007B344 00000000 */ nop +/* 07BF48 8007B348 01836821 */ addu $t5, $t4, $v1 +/* 07BF4C 8007B34C 10000005 */ b .L8007B364 +/* 07BF50 8007B350 ADA40004 */ sw $a0, 4($t5) +/* 07BF54 8007B354 24420001 */ addiu $v0, $v0, 1 +.L8007B358: +/* 07BF58 8007B358 0044082A */ slt $at, $v0, $a0 +/* 07BF5C 8007B35C 1420FFE9 */ bnez $at, .L8007B304 +/* 07BF60 8007B360 0002C8C0 */ sll $t9, $v0, 3 +.L8007B364: +/* 07BF64 8007B364 8FBF0014 */ lw $ra, 0x14($sp) +/* 07BF68 8007B368 27BD0028 */ addiu $sp, $sp, 0x28 +/* 07BF6C 8007B36C 03E00008 */ jr $ra +/* 07BF70 8007B370 00000000 */ nop + diff --git a/asm/non_matchings/unknown_07B870/func_8007B374.s b/asm/non_matchings/unknown_07B870/func_8007B374.s new file mode 100644 index 00000000..e8c8f569 --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007B374.s @@ -0,0 +1,31 @@ +glabel func_8007B374 +/* 07BF74 8007B374 3C01800E */ lui $at, 0x800e +/* 07BF78 8007B378 03E00008 */ jr $ra +/* 07BF7C 8007B37C AC24E7C0 */ sw $a0, -0x1840($at) + +/* 07BF80 8007B380 04800006 */ bltz $a0, .L8007B39C +/* 07BF84 8007B384 3C0E8012 */ lui $t6, %hi(D_80126330) # $t6, 0x8012 +/* 07BF88 8007B388 8DCE6330 */ lw $t6, %lo(D_80126330)($t6) +/* 07BF8C 8007B38C 3C0F8012 */ lui $t7, 0x8012 +/* 07BF90 8007B390 008E082A */ slt $at, $a0, $t6 +/* 07BF94 8007B394 14200003 */ bnez $at, .L8007B3A4 +/* 07BF98 8007B398 00000000 */ nop +.L8007B39C: +/* 07BF9C 8007B39C 03E00008 */ jr $ra +/* 07BFA0 8007B3A0 00001025 */ move $v0, $zero + +.L8007B3A4: +/* 07BFA4 8007B3A4 8DEF6328 */ lw $t7, 0x6328($t7) +/* 07BFA8 8007B3A8 0004C8C0 */ sll $t9, $a0, 3 +/* 07BFAC 8007B3AC 01F94021 */ addu $t0, $t7, $t9 +/* 07BFB0 8007B3B0 8D030004 */ lw $v1, 4($t0) +/* 07BFB4 8007B3B4 2401FFFF */ li $at, -1 +/* 07BFB8 8007B3B8 14610003 */ bne $v1, $at, .L8007B3C8 +/* 07BFBC 8007B3BC 00601025 */ move $v0, $v1 +/* 07BFC0 8007B3C0 03E00008 */ jr $ra +/* 07BFC4 8007B3C4 00001025 */ move $v0, $zero + +.L8007B3C8: +/* 07BFC8 8007B3C8 03E00008 */ jr $ra +/* 07BFCC 8007B3CC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_07B870/func_8007B3D0.s b/asm/non_matchings/unknown_07B870/func_8007B3D0.s new file mode 100644 index 00000000..1d0775a3 --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007B3D0.s @@ -0,0 +1,29 @@ +glabel func_8007B3D0 +/* 07BFD0 8007B3D0 3C018012 */ lui $at, %hi(D_8012637C) # $at, 0x8012 +/* 07BFD4 8007B3D4 AC20637C */ sw $zero, %lo(D_8012637C)($at) +/* 07BFD8 8007B3D8 3C018012 */ lui $at, %hi(D_80126374) # $at, 0x8012 +/* 07BFDC 8007B3DC AC206374 */ sw $zero, %lo(D_80126374)($at) +/* 07BFE0 8007B3E0 3C018012 */ lui $at, %hi(D_80126380) # $at, 0x8012 +/* 07BFE4 8007B3E4 A4206380 */ sh $zero, %lo(D_80126380)($at) +/* 07BFE8 8007B3E8 3C018012 */ lui $at, %hi(D_80126382) # $at, 0x8012 +/* 07BFEC 8007B3EC 240E0001 */ li $t6, 1 +/* 07BFF0 8007B3F0 A42E6382 */ sh $t6, %lo(D_80126382)($at) +/* 07BFF4 8007B3F4 3C018012 */ lui $at, %hi(D_80126378) # $at, 0x8012 +/* 07BFF8 8007B3F8 AC206378 */ sw $zero, %lo(D_80126378)($at) +/* 07BFFC 8007B3FC 3C018012 */ lui $at, %hi(D_80126384) # $at, 0x8012 +/* 07C000 8007B400 A4206384 */ sh $zero, %lo(D_80126384)($at) +/* 07C004 8007B404 8C830000 */ lw $v1, ($a0) +/* 07C008 8007B408 3C18E700 */ lui $t8, 0xe700 +/* 07C00C 8007B40C 246F0008 */ addiu $t7, $v1, 8 +/* 07C010 8007B410 AC8F0000 */ sw $t7, ($a0) +/* 07C014 8007B414 AC600004 */ sw $zero, 4($v1) +/* 07C018 8007B418 AC780000 */ sw $t8, ($v1) +/* 07C01C 8007B41C 8C830000 */ lw $v1, ($a0) +/* 07C020 8007B420 3C08B700 */ lui $t0, 0xb700 +/* 07C024 8007B424 24790008 */ addiu $t9, $v1, 8 +/* 07C028 8007B428 AC990000 */ sw $t9, ($a0) +/* 07C02C 8007B42C 24090205 */ li $t1, 517 +/* 07C030 8007B430 AC690004 */ sw $t1, 4($v1) +/* 07C034 8007B434 03E00008 */ jr $ra +/* 07C038 8007B438 AC680000 */ sw $t0, ($v1) + diff --git a/asm/non_matchings/unknown_07B870/func_8007B43C.s b/asm/non_matchings/unknown_07B870/func_8007B43C.s new file mode 100644 index 00000000..2e495634 --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007B43C.s @@ -0,0 +1,8 @@ +glabel func_8007B43C +/* 07C03C 8007B43C 24020001 */ li $v0, 1 +/* 07C040 8007B440 3C018012 */ lui $at, %hi(D_80126384) # $at, 0x8012 +/* 07C044 8007B444 A4226384 */ sh $v0, %lo(D_80126384)($at) +/* 07C048 8007B448 3C018012 */ lui $at, 0x8012 +/* 07C04C 8007B44C 03E00008 */ jr $ra +/* 07C050 8007B450 A4226382 */ sh $v0, 0x6382($at) + diff --git a/asm/non_matchings/unknown_07B870/func_8007B454.s b/asm/non_matchings/unknown_07B870/func_8007B454.s new file mode 100644 index 00000000..d313214a --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007B454.s @@ -0,0 +1,8 @@ +glabel func_8007B454 +/* 07C054 8007B454 3C018012 */ lui $at, %hi(D_80126384) # $at, 0x8012 +/* 07C058 8007B458 A4206384 */ sh $zero, %lo(D_80126384)($at) +/* 07C05C 8007B45C 3C018012 */ lui $at, 0x8012 +/* 07C060 8007B460 240E0001 */ li $t6, 1 +/* 07C064 8007B464 03E00008 */ jr $ra +/* 07C068 8007B468 A42E6382 */ sh $t6, 0x6382($at) + diff --git a/asm/non_matchings/unknown_07B870/func_8007B46C.s b/asm/non_matchings/unknown_07B870/func_8007B46C.s new file mode 100644 index 00000000..82a7028d --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007B46C.s @@ -0,0 +1,28 @@ +glabel func_8007B46C +/* 07C06C 8007B46C 18A00014 */ blez $a1, .L8007B4C0 +/* 07C070 8007B470 00000000 */ nop +/* 07C074 8007B474 94820012 */ lhu $v0, 0x12($a0) +/* 07C078 8007B478 00000000 */ nop +/* 07C07C 8007B47C 00027200 */ sll $t6, $v0, 8 +/* 07C080 8007B480 00AE082A */ slt $at, $a1, $t6 +/* 07C084 8007B484 10200008 */ beqz $at, .L8007B4A8 +/* 07C088 8007B488 00024203 */ sra $t0, $v0, 8 +/* 07C08C 8007B48C 84980016 */ lh $t8, 0x16($a0) +/* 07C090 8007B490 00057C03 */ sra $t7, $a1, 0x10 +/* 07C094 8007B494 01F80019 */ multu $t7, $t8 +/* 07C098 8007B498 0000C812 */ mflo $t9 +/* 07C09C 8007B49C 00991021 */ addu $v0, $a0, $t9 +/* 07C0A0 8007B4A0 03E00008 */ jr $ra +/* 07C0A4 8007B4A4 00000000 */ nop + +.L8007B4A8: +/* 07C0A8 8007B4A8 848A0016 */ lh $t2, 0x16($a0) +/* 07C0AC 8007B4AC 2509FFFF */ addiu $t1, $t0, -1 +/* 07C0B0 8007B4B0 012A0019 */ multu $t1, $t2 +/* 07C0B4 8007B4B4 00005812 */ mflo $t3 +/* 07C0B8 8007B4B8 008B2021 */ addu $a0, $a0, $t3 +/* 07C0BC 8007B4BC 00000000 */ nop +.L8007B4C0: +/* 07C0C0 8007B4C0 03E00008 */ jr $ra +/* 07C0C4 8007B4C4 00801025 */ move $v0, $a0 + diff --git a/asm/non_matchings/unknown_07B870/func_8007B4C8.s b/asm/non_matchings/unknown_07B870/func_8007B4C8.s new file mode 100644 index 00000000..3a8b29a9 --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007B4C8.s @@ -0,0 +1,10 @@ +glabel func_8007B4C8 +/* 07C0C8 8007B4C8 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 07C0CC 8007B4CC AFBF0014 */ sw $ra, 0x14($sp) +/* 07C0D0 8007B4D0 0C01ED3A */ jal func_8007B4E8 +/* 07C0D4 8007B4D4 00003825 */ move $a3, $zero +/* 07C0D8 8007B4D8 8FBF0014 */ lw $ra, 0x14($sp) +/* 07C0DC 8007B4DC 27BD0018 */ addiu $sp, $sp, 0x18 +/* 07C0E0 8007B4E0 03E00008 */ jr $ra +/* 07C0E4 8007B4E4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_07B870/func_8007B4E8.s b/asm/non_matchings/unknown_07B870/func_8007B4E8.s new file mode 100644 index 00000000..37fff52d --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007B4E8.s @@ -0,0 +1,388 @@ +glabel func_8007B4E8 +/* 07C0E8 8007B4E8 3C0B8012 */ lui $t3, %hi(D_80126382) # $t3, 0x8012 +/* 07C0EC 8007B4EC 256B6382 */ addiu $t3, %lo(D_80126382) # addiu $t3, $t3, 0x6382 +/* 07C0F0 8007B4F0 85630000 */ lh $v1, ($t3) +/* 07C0F4 8007B4F4 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 07C0F8 8007B4F8 10A00030 */ beqz $a1, .L8007B5BC +/* 07C0FC 8007B4FC 24080001 */ li $t0, 1 +/* 07C100 8007B500 10E0000D */ beqz $a3, .L8007B538 +/* 07C104 8007B504 3C0C8012 */ lui $t4, %hi(D_8012637C) # $t4, 0x8012 +/* 07C108 8007B508 94AE0012 */ lhu $t6, 0x12($a1) +/* 07C10C 8007B50C 00000000 */ nop +/* 07C110 8007B510 000E7A00 */ sll $t7, $t6, 8 +/* 07C114 8007B514 00EF082A */ slt $at, $a3, $t7 +/* 07C118 8007B518 10200007 */ beqz $at, .L8007B538 +/* 07C11C 8007B51C 00000000 */ nop +/* 07C120 8007B520 84B90016 */ lh $t9, 0x16($a1) +/* 07C124 8007B524 0007C403 */ sra $t8, $a3, 0x10 +/* 07C128 8007B528 03190019 */ multu $t8, $t9 +/* 07C12C 8007B52C 00007012 */ mflo $t6 +/* 07C130 8007B530 00AE2821 */ addu $a1, $a1, $t6 +/* 07C134 8007B534 00000000 */ nop +.L8007B538: +/* 07C138 8007B538 258C637C */ addiu $t4, %lo(D_8012637C) # addiu $t4, $t4, 0x637c +/* 07C13C 8007B53C 84AF0006 */ lh $t7, 6($a1) +/* 07C140 8007B540 8D980000 */ lw $t8, ($t4) +/* 07C144 8007B544 00CF3025 */ or $a2, $a2, $t7 +/* 07C148 8007B548 10B80013 */ beq $a1, $t8, .L8007B598 +/* 07C14C 8007B54C 00000000 */ nop +/* 07C150 8007B550 8C820000 */ lw $v0, ($a0) +/* 07C154 8007B554 3C010700 */ lui $at, 0x700 +/* 07C158 8007B558 24590008 */ addiu $t9, $v0, 8 +/* 07C15C 8007B55C AC990000 */ sw $t9, ($a0) +/* 07C160 8007B560 84AA000A */ lh $t2, 0xa($a1) +/* 07C164 8007B564 3C098000 */ lui $t1, 0x8000 +/* 07C168 8007B568 314E00FF */ andi $t6, $t2, 0xff +/* 07C16C 8007B56C 000E7C00 */ sll $t7, $t6, 0x10 +/* 07C170 8007B570 000AC8C0 */ sll $t9, $t2, 3 +/* 07C174 8007B574 332EFFFF */ andi $t6, $t9, 0xffff +/* 07C178 8007B578 01E1C025 */ or $t8, $t7, $at +/* 07C17C 8007B57C 030E7825 */ or $t7, $t8, $t6 +/* 07C180 8007B580 AC4F0000 */ sw $t7, ($v0) +/* 07C184 8007B584 8CB9000C */ lw $t9, 0xc($a1) +/* 07C188 8007B588 00004025 */ move $t0, $zero +/* 07C18C 8007B58C 0329C021 */ addu $t8, $t9, $t1 +/* 07C190 8007B590 AC580004 */ sw $t8, 4($v0) +/* 07C194 8007B594 AD850000 */ sw $a1, ($t4) +.L8007B598: +/* 07C198 8007B598 3C0A8012 */ lui $t2, %hi(D_80126380) # $t2, 0x8012 +/* 07C19C 8007B59C 254A6380 */ addiu $t2, %lo(D_80126380) # addiu $t2, $t2, 0x6380 +/* 07C1A0 8007B5A0 854E0000 */ lh $t6, ($t2) +/* 07C1A4 8007B5A4 240F0001 */ li $t7, 1 +/* 07C1A8 8007B5A8 15C0000C */ bnez $t6, .L8007B5DC +/* 07C1AC 8007B5AC 00000000 */ nop +/* 07C1B0 8007B5B0 24030001 */ li $v1, 1 +/* 07C1B4 8007B5B4 10000009 */ b .L8007B5DC +/* 07C1B8 8007B5B8 A54F0000 */ sh $t7, ($t2) +.L8007B5BC: +/* 07C1BC 8007B5BC 3C0A8012 */ lui $t2, %hi(D_80126380) # $t2, 0x8012 +/* 07C1C0 8007B5C0 254A6380 */ addiu $t2, %lo(D_80126380) # addiu $t2, $t2, 0x6380 +/* 07C1C4 8007B5C4 85590000 */ lh $t9, ($t2) +/* 07C1C8 8007B5C8 00000000 */ nop +/* 07C1CC 8007B5CC 13200003 */ beqz $t9, .L8007B5DC +/* 07C1D0 8007B5D0 00000000 */ nop +/* 07C1D4 8007B5D4 24030001 */ li $v1, 1 +/* 07C1D8 8007B5D8 A5400000 */ sh $zero, ($t2) +.L8007B5DC: +/* 07C1DC 8007B5DC 3C0C8012 */ lui $t4, %hi(D_80126384) # $t4, 0x8012 +/* 07C1E0 8007B5E0 258C6384 */ addiu $t4, %lo(D_80126384) # addiu $t4, $t4, 0x6384 +/* 07C1E4 8007B5E4 85980000 */ lh $t8, ($t4) +/* 07C1E8 8007B5E8 3C098000 */ lui $t1, 0x8000 +/* 07C1EC 8007B5EC 13000004 */ beqz $t8, .L8007B600 +/* 07C1F0 8007B5F0 3C198012 */ lui $t9, %hi(D_80126378) # $t9, 0x8012 +/* 07C1F4 8007B5F4 30CE0827 */ andi $t6, $a2, 0x827 +/* 07C1F8 8007B5F8 10000005 */ b .L8007B610 +/* 07C1FC 8007B5FC 01C03025 */ move $a2, $t6 +.L8007B600: +/* 07C200 8007B600 3C010800 */ lui $at, (0x0800093F >> 16) # lui $at, 0x800 +/* 07C204 8007B604 3421093F */ ori $at, (0x0800093F & 0xFFFF) # ori $at, $at, 0x93f +/* 07C208 8007B608 00C17824 */ and $t7, $a2, $at +/* 07C20C 8007B60C 01E03025 */ move $a2, $t7 +.L8007B610: +/* 07C210 8007B610 8F396378 */ lw $t9, %lo(D_80126378)($t9) +/* 07C214 8007B614 3C050800 */ lui $a1, 0x800 +/* 07C218 8007B618 0320C027 */ not $t8, $t9 +/* 07C21C 8007B61C 00D83024 */ and $a2, $a2, $t8 +/* 07C220 8007B620 00067100 */ sll $t6, $a2, 4 +/* 07C224 8007B624 05C10005 */ bgez $t6, .L8007B63C +/* 07C228 8007B628 3C078012 */ lui $a3, %hi(D_80126374) # $a3, 0x8012 +/* 07C22C 8007B62C 2401FFF7 */ li $at, -9 +/* 07C230 8007B630 00C17824 */ and $t7, $a2, $at +/* 07C234 8007B634 10000004 */ b .L8007B648 +/* 07C238 8007B638 01E03025 */ move $a2, $t7 +.L8007B63C: +/* 07C23C 8007B63C 2401FEFF */ li $at, -257 +/* 07C240 8007B640 00C1C824 */ and $t9, $a2, $at +/* 07C244 8007B644 03203025 */ move $a2, $t9 +.L8007B648: +/* 07C248 8007B648 24E76374 */ addiu $a3, %lo(D_80126374) # addiu $a3, $a3, 0x6374 +/* 07C24C 8007B64C 8CED0000 */ lw $t5, ($a3) +/* 07C250 8007B650 00000000 */ nop +/* 07C254 8007B654 14CD0003 */ bne $a2, $t5, .L8007B664 +/* 07C258 8007B658 00000000 */ nop +/* 07C25C 8007B65C 106000FD */ beqz $v1, .L8007BA54 +/* 07C260 8007B660 00000000 */ nop +.L8007B664: +/* 07C264 8007B664 1100000A */ beqz $t0, .L8007B690 +/* 07C268 8007B668 00C54024 */ and $t0, $a2, $a1 +/* 07C26C 8007B66C 8C820000 */ lw $v0, ($a0) +/* 07C270 8007B670 3C0EE700 */ lui $t6, 0xe700 +/* 07C274 8007B674 24580008 */ addiu $t8, $v0, 8 +/* 07C278 8007B678 AC980000 */ sw $t8, ($a0) +/* 07C27C 8007B67C AC400004 */ sw $zero, 4($v0) +/* 07C280 8007B680 AC4E0000 */ sw $t6, ($v0) +/* 07C284 8007B684 8CED0000 */ lw $t5, ($a3) +/* 07C288 8007B688 00000000 */ nop +/* 07C28C 8007B68C 00C54024 */ and $t0, $a2, $a1 +.L8007B690: +/* 07C290 8007B690 01A57824 */ and $t7, $t5, $a1 +/* 07C294 8007B694 15E80005 */ bne $t7, $t0, .L8007B6AC +/* 07C298 8007B698 00000000 */ nop +/* 07C29C 8007B69C 85790000 */ lh $t9, ($t3) +/* 07C2A0 8007B6A0 00000000 */ nop +/* 07C2A4 8007B6A4 1320001C */ beqz $t9, .L8007B718 +/* 07C2A8 8007B6A8 30D90002 */ andi $t9, $a2, 2 +.L8007B6AC: +/* 07C2AC 8007B6AC 15000005 */ bnez $t0, .L8007B6C4 +/* 07C2B0 8007B6B0 3C0FB600 */ lui $t7, 0xb600 +/* 07C2B4 8007B6B4 85980000 */ lh $t8, ($t4) +/* 07C2B8 8007B6B8 00000000 */ nop +/* 07C2BC 8007B6BC 1300000A */ beqz $t8, .L8007B6E8 +/* 07C2C0 8007B6C0 00000000 */ nop +.L8007B6C4: +/* 07C2C4 8007B6C4 8C820000 */ lw $v0, ($a0) +/* 07C2C8 8007B6C8 3C190001 */ lui $t9, 1 +/* 07C2CC 8007B6CC 244E0008 */ addiu $t6, $v0, 8 +/* 07C2D0 8007B6D0 AC8E0000 */ sw $t6, ($a0) +/* 07C2D4 8007B6D4 AC590004 */ sw $t9, 4($v0) +/* 07C2D8 8007B6D8 AC4F0000 */ sw $t7, ($v0) +/* 07C2DC 8007B6DC 8CED0000 */ lw $t5, ($a3) +/* 07C2E0 8007B6E0 1000000D */ b .L8007B718 +/* 07C2E4 8007B6E4 30D90002 */ andi $t9, $a2, 2 +.L8007B6E8: +/* 07C2E8 8007B6E8 8C820000 */ lw $v0, ($a0) +/* 07C2EC 8007B6EC 3C03B700 */ lui $v1, 0xb700 +/* 07C2F0 8007B6F0 AFA2003C */ sw $v0, 0x3c($sp) +/* 07C2F4 8007B6F4 24580008 */ addiu $t8, $v0, 8 +/* 07C2F8 8007B6F8 AC980000 */ sw $t8, ($a0) +/* 07C2FC 8007B6FC 8FAE003C */ lw $t6, 0x3c($sp) +/* 07C300 8007B700 3C0F0001 */ lui $t7, 1 +/* 07C304 8007B704 ADCF0004 */ sw $t7, 4($t6) +/* 07C308 8007B708 ADC30000 */ sw $v1, ($t6) +/* 07C30C 8007B70C 8CED0000 */ lw $t5, ($a3) +/* 07C310 8007B710 00000000 */ nop +/* 07C314 8007B714 30D90002 */ andi $t9, $a2, 2 +.L8007B718: +/* 07C318 8007B718 31B80002 */ andi $t8, $t5, 2 +/* 07C31C 8007B71C 3C03B700 */ lui $v1, 0xb700 +/* 07C320 8007B720 17190005 */ bne $t8, $t9, .L8007B738 +/* 07C324 8007B724 AFB90004 */ sw $t9, 4($sp) +/* 07C328 8007B728 856E0000 */ lh $t6, ($t3) +/* 07C32C 8007B72C 00000000 */ nop +/* 07C330 8007B730 11C00012 */ beqz $t6, .L8007B77C +/* 07C334 8007B734 00000000 */ nop +.L8007B738: +/* 07C338 8007B738 8FB90004 */ lw $t9, 4($sp) +/* 07C33C 8007B73C 24180001 */ li $t8, 1 +/* 07C340 8007B740 13200008 */ beqz $t9, .L8007B764 +/* 07C344 8007B744 00000000 */ nop +/* 07C348 8007B748 8C820000 */ lw $v0, ($a0) +/* 07C34C 8007B74C 240F0001 */ li $t7, 1 +/* 07C350 8007B750 24580008 */ addiu $t8, $v0, 8 +/* 07C354 8007B754 AC980000 */ sw $t8, ($a0) +/* 07C358 8007B758 AC4F0004 */ sw $t7, 4($v0) +/* 07C35C 8007B75C 10000007 */ b .L8007B77C +/* 07C360 8007B760 AC430000 */ sw $v1, ($v0) +.L8007B764: +/* 07C364 8007B764 8C820000 */ lw $v0, ($a0) +/* 07C368 8007B768 3C19B600 */ lui $t9, 0xb600 +/* 07C36C 8007B76C 244E0008 */ addiu $t6, $v0, 8 +/* 07C370 8007B770 AC8E0000 */ sw $t6, ($a0) +/* 07C374 8007B774 AC580004 */ sw $t8, 4($v0) +/* 07C378 8007B778 AC590000 */ sw $t9, ($v0) +.L8007B77C: +/* 07C37C 8007B77C 854F0000 */ lh $t7, ($t2) +/* 07C380 8007B780 A5600000 */ sh $zero, ($t3) +/* 07C384 8007B784 15E0001E */ bnez $t7, .L8007B800 +/* 07C388 8007B788 ACE60000 */ sw $a2, ($a3) +/* 07C38C 8007B78C 1100000F */ beqz $t0, .L8007B7CC +/* 07C390 8007B790 3C0E0702 */ lui $t6, 0x702 +/* 07C394 8007B794 8C820000 */ lw $v0, ($a0) +/* 07C398 8007B798 3C190702 */ lui $t9, (0x07020010 >> 16) # lui $t9, 0x702 +/* 07C39C 8007B79C 244E0008 */ addiu $t6, $v0, 8 +/* 07C3A0 8007B7A0 AC8E0000 */ sw $t6, ($a0) +/* 07C3A4 8007B7A4 37390010 */ ori $t9, (0x07020010 & 0xFFFF) # ori $t9, $t9, 0x10 +/* 07C3A8 8007B7A8 30D80003 */ andi $t8, $a2, 3 +/* 07C3AC 8007B7AC AC590000 */ sw $t9, ($v0) +/* 07C3B0 8007B7B0 3C19800E */ lui $t9, %hi(D_800DEEE8) # $t9, 0x800e +/* 07C3B4 8007B7B4 00187900 */ sll $t7, $t8, 4 +/* 07C3B8 8007B7B8 01E97021 */ addu $t6, $t7, $t1 +/* 07C3BC 8007B7BC 2739EEE8 */ addiu $t9, %lo(D_800DEEE8) # addiu $t9, $t9, -0x1118 +/* 07C3C0 8007B7C0 01D9C021 */ addu $t8, $t6, $t9 +/* 07C3C4 8007B7C4 100000A3 */ b .L8007BA54 +/* 07C3C8 8007B7C8 AC580004 */ sw $t8, 4($v0) +.L8007B7CC: +/* 07C3CC 8007B7CC 8C820000 */ lw $v0, ($a0) +/* 07C3D0 8007B7D0 35CE0010 */ ori $t6, $t6, 0x10 +/* 07C3D4 8007B7D4 244F0008 */ addiu $t7, $v0, 8 +/* 07C3D8 8007B7D8 AC8F0000 */ sw $t7, ($a0) +/* 07C3DC 8007B7DC 30D9000F */ andi $t9, $a2, 0xf +/* 07C3E0 8007B7E0 AC4E0000 */ sw $t6, ($v0) +/* 07C3E4 8007B7E4 3C0E800E */ lui $t6, %hi(D_800DEF28) # $t6, 0x800e +/* 07C3E8 8007B7E8 0019C100 */ sll $t8, $t9, 4 +/* 07C3EC 8007B7EC 03097821 */ addu $t7, $t8, $t1 +/* 07C3F0 8007B7F0 25CEEF28 */ addiu $t6, %lo(D_800DEF28) # addiu $t6, $t6, -0x10d8 +/* 07C3F4 8007B7F4 01EEC821 */ addu $t9, $t7, $t6 +/* 07C3F8 8007B7F8 10000096 */ b .L8007BA54 +/* 07C3FC 8007B7FC AC590004 */ sw $t9, 4($v0) +.L8007B800: +/* 07C400 8007B800 85980000 */ lh $t8, ($t4) +/* 07C404 8007B804 30CF0800 */ andi $t7, $a2, 0x800 +/* 07C408 8007B808 1300002F */ beqz $t8, .L8007B8C8 +/* 07C40C 8007B80C 30D90800 */ andi $t9, $a2, 0x800 +/* 07C410 8007B810 11E0001D */ beqz $t7, .L8007B888 +/* 07C414 8007B814 30CE0020 */ andi $t6, $a2, 0x20 +/* 07C418 8007B818 8FAE0004 */ lw $t6, 4($sp) +/* 07C41C 8007B81C 30D90001 */ andi $t9, $a2, 1 +/* 07C420 8007B820 11C00018 */ beqz $t6, .L8007B884 +/* 07C424 8007B824 30D80004 */ andi $t8, $a2, 4 +/* 07C428 8007B828 13200002 */ beqz $t9, .L8007B834 +/* 07C42C 8007B82C 00002825 */ move $a1, $zero +/* 07C430 8007B830 24050001 */ li $a1, 1 +.L8007B834: +/* 07C434 8007B834 13000003 */ beqz $t8, .L8007B844 +/* 07C438 8007B838 30CE0020 */ andi $t6, $a2, 0x20 +/* 07C43C 8007B83C 34AF0002 */ ori $t7, $a1, 2 +/* 07C440 8007B840 01E02825 */ move $a1, $t7 +.L8007B844: +/* 07C444 8007B844 11C00003 */ beqz $t6, .L8007B854 +/* 07C448 8007B848 3C0F0702 */ lui $t7, (0x07020010 >> 16) # lui $t7, 0x702 +/* 07C44C 8007B84C 34B90004 */ ori $t9, $a1, 4 +/* 07C450 8007B850 03202825 */ move $a1, $t9 +.L8007B854: +/* 07C454 8007B854 8C820000 */ lw $v0, ($a0) +/* 07C458 8007B858 35EF0010 */ ori $t7, (0x07020010 & 0xFFFF) # ori $t7, $t7, 0x10 +/* 07C45C 8007B85C 24580008 */ addiu $t8, $v0, 8 +/* 07C460 8007B860 AC980000 */ sw $t8, ($a0) +/* 07C464 8007B864 3C18800E */ lui $t8, %hi(D_800DF028) # $t8, 0x800e +/* 07C468 8007B868 00057100 */ sll $t6, $a1, 4 +/* 07C46C 8007B86C 01C9C821 */ addu $t9, $t6, $t1 +/* 07C470 8007B870 2718F028 */ addiu $t8, %lo(D_800DF028) # addiu $t8, $t8, -0xfd8 +/* 07C474 8007B874 AC4F0000 */ sw $t7, ($v0) +/* 07C478 8007B878 03387821 */ addu $t7, $t9, $t8 +/* 07C47C 8007B87C 10000075 */ b .L8007BA54 +/* 07C480 8007B880 AC4F0004 */ sw $t7, 4($v0) +.L8007B884: +/* 07C484 8007B884 30CE0020 */ andi $t6, $a2, 0x20 +.L8007B888: +/* 07C488 8007B888 11C00002 */ beqz $t6, .L8007B894 +/* 07C48C 8007B88C 38D90020 */ xori $t9, $a2, 0x20 +/* 07C490 8007B890 37260008 */ ori $a2, $t9, 8 +.L8007B894: +/* 07C494 8007B894 8C820000 */ lw $v0, ($a0) +/* 07C498 8007B898 3C0E0702 */ lui $t6, (0x07020010 >> 16) # lui $t6, 0x702 +/* 07C49C 8007B89C 244F0008 */ addiu $t7, $v0, 8 +/* 07C4A0 8007B8A0 AC8F0000 */ sw $t7, ($a0) +/* 07C4A4 8007B8A4 3C0F800E */ lui $t7, %hi(D_800DF0A8) # $t7, 0x800e +/* 07C4A8 8007B8A8 35CE0010 */ ori $t6, (0x07020010 & 0xFFFF) # ori $t6, $t6, 0x10 +/* 07C4AC 8007B8AC 0006C900 */ sll $t9, $a2, 4 +/* 07C4B0 8007B8B0 0329C021 */ addu $t8, $t9, $t1 +/* 07C4B4 8007B8B4 25EFF0A8 */ addiu $t7, %lo(D_800DF0A8) # addiu $t7, $t7, -0xf58 +/* 07C4B8 8007B8B8 AC4E0000 */ sw $t6, ($v0) +/* 07C4BC 8007B8BC 030F7021 */ addu $t6, $t8, $t7 +/* 07C4C0 8007B8C0 10000064 */ b .L8007BA54 +/* 07C4C4 8007B8C4 AC4E0004 */ sw $t6, 4($v0) +.L8007B8C8: +/* 07C4C8 8007B8C8 13200021 */ beqz $t9, .L8007B950 +/* 07C4CC 8007B8CC 30CE0010 */ andi $t6, $a2, 0x10 +/* 07C4D0 8007B8D0 8FB80004 */ lw $t8, 4($sp) +/* 07C4D4 8007B8D4 30CF0001 */ andi $t7, $a2, 1 +/* 07C4D8 8007B8D8 1300001D */ beqz $t8, .L8007B950 +/* 07C4DC 8007B8DC 00000000 */ nop +/* 07C4E0 8007B8E0 11E00002 */ beqz $t7, .L8007B8EC +/* 07C4E4 8007B8E4 00002825 */ move $a1, $zero +/* 07C4E8 8007B8E8 24050001 */ li $a1, 1 +.L8007B8EC: +/* 07C4EC 8007B8EC 30CE0004 */ andi $t6, $a2, 4 +/* 07C4F0 8007B8F0 11C00003 */ beqz $t6, .L8007B900 +/* 07C4F4 8007B8F4 30D80008 */ andi $t8, $a2, 8 +/* 07C4F8 8007B8F8 34B90002 */ ori $t9, $a1, 2 +/* 07C4FC 8007B8FC 03202825 */ move $a1, $t9 +.L8007B900: +/* 07C500 8007B900 13000003 */ beqz $t8, .L8007B910 +/* 07C504 8007B904 30CE0020 */ andi $t6, $a2, 0x20 +/* 07C508 8007B908 34AF0004 */ ori $t7, $a1, 4 +/* 07C50C 8007B90C 01E02825 */ move $a1, $t7 +.L8007B910: +/* 07C510 8007B910 11C00003 */ beqz $t6, .L8007B920 +/* 07C514 8007B914 3C0F0702 */ lui $t7, (0x07020010 >> 16) # lui $t7, 0x702 +/* 07C518 8007B918 34B90008 */ ori $t9, $a1, 8 +/* 07C51C 8007B91C 03202825 */ move $a1, $t9 +.L8007B920: +/* 07C520 8007B920 8C820000 */ lw $v0, ($a0) +/* 07C524 8007B924 35EF0010 */ ori $t7, (0x07020010 & 0xFFFF) # ori $t7, $t7, 0x10 +/* 07C528 8007B928 24580008 */ addiu $t8, $v0, 8 +/* 07C52C 8007B92C AC980000 */ sw $t8, ($a0) +/* 07C530 8007B930 3C18800E */ lui $t8, %hi(D_800DEDE8) # $t8, 0x800e +/* 07C534 8007B934 00057100 */ sll $t6, $a1, 4 +/* 07C538 8007B938 01C9C821 */ addu $t9, $t6, $t1 +/* 07C53C 8007B93C 2718EDE8 */ addiu $t8, %lo(D_800DEDE8) # addiu $t8, $t8, -0x1218 +/* 07C540 8007B940 AC4F0000 */ sw $t7, ($v0) +/* 07C544 8007B944 03387821 */ addu $t7, $t9, $t8 +/* 07C548 8007B948 10000042 */ b .L8007BA54 +/* 07C54C 8007B94C AC4F0004 */ sw $t7, 4($v0) +.L8007B950: +/* 07C550 8007B950 11C00013 */ beqz $t6, .L8007B9A0 +/* 07C554 8007B954 2401F7FF */ li $at, -2049 +/* 07C558 8007B958 30C20007 */ andi $v0, $a2, 7 +/* 07C55C 8007B95C 30D90008 */ andi $t9, $a2, 8 +/* 07C560 8007B960 13200002 */ beqz $t9, .L8007B96C +/* 07C564 8007B964 00402825 */ move $a1, $v0 +/* 07C568 8007B968 34450008 */ ori $a1, $v0, 8 +.L8007B96C: +/* 07C56C 8007B96C 8C820000 */ lw $v0, ($a0) +/* 07C570 8007B970 3C0F0702 */ lui $t7, (0x07020010 >> 16) # lui $t7, 0x702 +/* 07C574 8007B974 24580008 */ addiu $t8, $v0, 8 +/* 07C578 8007B978 AC980000 */ sw $t8, ($a0) +/* 07C57C 8007B97C 3C18800E */ lui $t8, %hi(D_800DECE8) # $t8, 0x800e +/* 07C580 8007B980 35EF0010 */ ori $t7, (0x07020010 & 0xFFFF) # ori $t7, $t7, 0x10 +/* 07C584 8007B984 00057100 */ sll $t6, $a1, 4 +/* 07C588 8007B988 01C9C821 */ addu $t9, $t6, $t1 +/* 07C58C 8007B98C 2718ECE8 */ addiu $t8, %lo(D_800DECE8) # addiu $t8, $t8, -0x1318 +/* 07C590 8007B990 AC4F0000 */ sw $t7, ($v0) +/* 07C594 8007B994 03387821 */ addu $t7, $t9, $t8 +/* 07C598 8007B998 1000002E */ b .L8007BA54 +/* 07C59C 8007B99C AC4F0004 */ sw $t7, 4($v0) +.L8007B9A0: +/* 07C5A0 8007B9A0 00C17024 */ and $t6, $a2, $at +/* 07C5A4 8007B9A4 01C5C824 */ and $t9, $t6, $a1 +/* 07C5A8 8007B9A8 1320001E */ beqz $t9, .L8007BA24 +/* 07C5AC 8007B9AC 01C03025 */ move $a2, $t6 +/* 07C5B0 8007B9B0 31C20003 */ andi $v0, $t6, 3 +/* 07C5B4 8007B9B4 31D80100 */ andi $t8, $t6, 0x100 +/* 07C5B8 8007B9B8 13000003 */ beqz $t8, .L8007B9C8 +/* 07C5BC 8007B9BC 00402825 */ move $a1, $v0 +/* 07C5C0 8007B9C0 1000000B */ b .L8007B9F0 +/* 07C5C4 8007B9C4 34450004 */ ori $a1, $v0, 4 +.L8007B9C8: +/* 07C5C8 8007B9C8 8C820000 */ lw $v0, ($a0) +/* 07C5CC 8007B9CC 240E0001 */ li $t6, 1 +/* 07C5D0 8007B9D0 244F0008 */ addiu $t7, $v0, 8 +/* 07C5D4 8007B9D4 AC8F0000 */ sw $t7, ($a0) +/* 07C5D8 8007B9D8 AC4E0004 */ sw $t6, 4($v0) +/* 07C5DC 8007B9DC AC430000 */ sw $v1, ($v0) +/* 07C5E0 8007B9E0 8CF90000 */ lw $t9, ($a3) +/* 07C5E4 8007B9E4 00000000 */ nop +/* 07C5E8 8007B9E8 37380002 */ ori $t8, $t9, 2 +/* 07C5EC 8007B9EC ACF80000 */ sw $t8, ($a3) +.L8007B9F0: +/* 07C5F0 8007B9F0 8C820000 */ lw $v0, ($a0) +/* 07C5F4 8007B9F4 3C0E0702 */ lui $t6, (0x07020010 >> 16) # lui $t6, 0x702 +/* 07C5F8 8007B9F8 244F0008 */ addiu $t7, $v0, 8 +/* 07C5FC 8007B9FC AC8F0000 */ sw $t7, ($a0) +/* 07C600 8007BA00 3C0F800E */ lui $t7, %hi(D_800DE7C8) # $t7, 0x800e +/* 07C604 8007BA04 35CE0010 */ ori $t6, (0x07020010 & 0xFFFF) # ori $t6, $t6, 0x10 +/* 07C608 8007BA08 0005C900 */ sll $t9, $a1, 4 +/* 07C60C 8007BA0C 0329C021 */ addu $t8, $t9, $t1 +/* 07C610 8007BA10 25EFE7C8 */ addiu $t7, %lo(D_800DE7C8) # addiu $t7, $t7, -0x1838 +/* 07C614 8007BA14 AC4E0000 */ sw $t6, ($v0) +/* 07C618 8007BA18 030F7021 */ addu $t6, $t8, $t7 +/* 07C61C 8007BA1C 1000000D */ b .L8007BA54 +/* 07C620 8007BA20 AC4E0004 */ sw $t6, 4($v0) +.L8007BA24: +/* 07C624 8007BA24 8C820000 */ lw $v0, ($a0) +/* 07C628 8007BA28 3C180702 */ lui $t8, (0x07020010 >> 16) # lui $t8, 0x702 +/* 07C62C 8007BA2C 24590008 */ addiu $t9, $v0, 8 +/* 07C630 8007BA30 AC990000 */ sw $t9, ($a0) +/* 07C634 8007BA34 3C19800E */ lui $t9, %hi(D_800DE8E8) # $t9, 0x800e +/* 07C638 8007BA38 37180010 */ ori $t8, (0x07020010 & 0xFFFF) # ori $t8, $t8, 0x10 +/* 07C63C 8007BA3C 00067900 */ sll $t7, $a2, 4 +/* 07C640 8007BA40 01E97021 */ addu $t6, $t7, $t1 +/* 07C644 8007BA44 2739E8E8 */ addiu $t9, %lo(D_800DE8E8) # addiu $t9, $t9, -0x1718 +/* 07C648 8007BA48 AC580000 */ sw $t8, ($v0) +/* 07C64C 8007BA4C 01D9C021 */ addu $t8, $t6, $t9 +/* 07C650 8007BA50 AC580004 */ sw $t8, 4($v0) +.L8007BA54: +/* 07C654 8007BA54 03E00008 */ jr $ra +/* 07C658 8007BA58 27BD0058 */ addiu $sp, $sp, 0x58 + diff --git a/asm/non_matchings/unknown_07B870/func_8007BA5C.s b/asm/non_matchings/unknown_07B870/func_8007BA5C.s new file mode 100644 index 00000000..a0add459 --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007BA5C.s @@ -0,0 +1,311 @@ +glabel func_8007BA5C +/* 07C65C 8007BA5C 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 07C660 8007BA60 10E0000D */ beqz $a3, .L8007BA98 +/* 07C664 8007BA64 AFA60078 */ sw $a2, 0x78($sp) +/* 07C668 8007BA68 94AE0012 */ lhu $t6, 0x12($a1) +/* 07C66C 8007BA6C 00000000 */ nop +/* 07C670 8007BA70 000E7A00 */ sll $t7, $t6, 8 +/* 07C674 8007BA74 00EF082A */ slt $at, $a3, $t7 +/* 07C678 8007BA78 10200007 */ beqz $at, .L8007BA98 +/* 07C67C 8007BA7C 00000000 */ nop +/* 07C680 8007BA80 84B90016 */ lh $t9, 0x16($a1) +/* 07C684 8007BA84 0007C403 */ sra $t8, $a3, 0x10 +/* 07C688 8007BA88 03190019 */ multu $t8, $t9 +/* 07C68C 8007BA8C 00007012 */ mflo $t6 +/* 07C690 8007BA90 00AE2821 */ addu $a1, $a1, $t6 +/* 07C694 8007BA94 00000000 */ nop +.L8007BA98: +/* 07C698 8007BA98 90AF0000 */ lbu $t7, ($a1) +/* 07C69C 8007BA9C 24010040 */ li $at, 64 +/* 07C6A0 8007BAA0 15E10073 */ bne $t7, $at, .L8007BC70 +/* 07C6A4 8007BAA4 3C06B700 */ lui $a2, 0xb700 +/* 07C6A8 8007BAA8 8C820000 */ lw $v0, ($a0) +/* 07C6AC 8007BAAC 3C098000 */ lui $t1, 0x8000 +/* 07C6B0 8007BAB0 24580008 */ addiu $t8, $v0, 8 +/* 07C6B4 8007BAB4 AC980000 */ sw $t8, ($a0) +/* 07C6B8 8007BAB8 00A9C821 */ addu $t9, $a1, $t1 +/* 07C6BC 8007BABC 3C07FD10 */ lui $a3, 0xfd10 +/* 07C6C0 8007BAC0 272E0020 */ addiu $t6, $t9, 0x20 +/* 07C6C4 8007BAC4 AC4E0004 */ sw $t6, 4($v0) +/* 07C6C8 8007BAC8 AC470000 */ sw $a3, ($v0) +/* 07C6CC 8007BACC 8C820000 */ lw $v0, ($a0) +/* 07C6D0 8007BAD0 3C190701 */ lui $t9, (0x07010060 >> 16) # lui $t9, 0x701 +/* 07C6D4 8007BAD4 244F0008 */ addiu $t7, $v0, 8 +/* 07C6D8 8007BAD8 AC8F0000 */ sw $t7, ($a0) +/* 07C6DC 8007BADC 3C18F510 */ lui $t8, (0xF5100100 >> 16) # lui $t8, 0xf510 +/* 07C6E0 8007BAE0 37180100 */ ori $t8, (0xF5100100 & 0xFFFF) # ori $t8, $t8, 0x100 +/* 07C6E4 8007BAE4 37390060 */ ori $t9, (0x07010060 & 0xFFFF) # ori $t9, $t9, 0x60 +/* 07C6E8 8007BAE8 AC590004 */ sw $t9, 4($v0) +/* 07C6EC 8007BAEC AC580000 */ sw $t8, ($v0) +/* 07C6F0 8007BAF0 8C820000 */ lw $v0, ($a0) +/* 07C6F4 8007BAF4 3C0AE600 */ lui $t2, 0xe600 +/* 07C6F8 8007BAF8 244E0008 */ addiu $t6, $v0, 8 +/* 07C6FC 8007BAFC AC8E0000 */ sw $t6, ($a0) +/* 07C700 8007BB00 AC400004 */ sw $zero, 4($v0) +/* 07C704 8007BB04 AC4A0000 */ sw $t2, ($v0) +/* 07C708 8007BB08 8C820000 */ lw $v0, ($a0) +/* 07C70C 8007BB0C 3C18073F */ lui $t8, (0x073FF080 >> 16) # lui $t8, 0x73f +/* 07C710 8007BB10 244F0008 */ addiu $t7, $v0, 8 +/* 07C714 8007BB14 AC8F0000 */ sw $t7, ($a0) +/* 07C718 8007BB18 3C0BF300 */ lui $t3, 0xf300 +/* 07C71C 8007BB1C 3718F080 */ ori $t8, (0x073FF080 & 0xFFFF) # ori $t8, $t8, 0xf080 +/* 07C720 8007BB20 AC580004 */ sw $t8, 4($v0) +/* 07C724 8007BB24 AC4B0000 */ sw $t3, ($v0) +/* 07C728 8007BB28 8C820000 */ lw $v0, ($a0) +/* 07C72C 8007BB2C 3C08E700 */ lui $t0, 0xe700 +/* 07C730 8007BB30 24590008 */ addiu $t9, $v0, 8 +/* 07C734 8007BB34 AC990000 */ sw $t9, ($a0) +/* 07C738 8007BB38 AC400004 */ sw $zero, 4($v0) +/* 07C73C 8007BB3C AC480000 */ sw $t0, ($v0) +/* 07C740 8007BB40 8C820000 */ lw $v0, ($a0) +/* 07C744 8007BB44 3C190101 */ lui $t9, (0x01010060 >> 16) # lui $t9, 0x101 +/* 07C748 8007BB48 AFA20050 */ sw $v0, 0x50($sp) +/* 07C74C 8007BB4C 244E0008 */ addiu $t6, $v0, 8 +/* 07C750 8007BB50 AC8E0000 */ sw $t6, ($a0) +/* 07C754 8007BB54 8FB80050 */ lw $t8, 0x50($sp) +/* 07C758 8007BB58 3C0FF510 */ lui $t7, (0xF5102100 >> 16) # lui $t7, 0xf510 +/* 07C75C 8007BB5C 35EF2100 */ ori $t7, (0xF5102100 & 0xFFFF) # ori $t7, $t7, 0x2100 +/* 07C760 8007BB60 37390060 */ ori $t9, (0x01010060 & 0xFFFF) # ori $t9, $t9, 0x60 +/* 07C764 8007BB64 AF190004 */ sw $t9, 4($t8) +/* 07C768 8007BB68 AF0F0000 */ sw $t7, ($t8) +/* 07C76C 8007BB6C 8C820000 */ lw $v0, ($a0) +/* 07C770 8007BB70 3C19010F */ lui $t9, (0x010FC03C >> 16) # lui $t9, 0x10f +/* 07C774 8007BB74 AFA2004C */ sw $v0, 0x4c($sp) +/* 07C778 8007BB78 244E0008 */ addiu $t6, $v0, 8 +/* 07C77C 8007BB7C AC8E0000 */ sw $t6, ($a0) +/* 07C780 8007BB80 8FAF004C */ lw $t7, 0x4c($sp) +/* 07C784 8007BB84 3739C03C */ ori $t9, (0x010FC03C & 0xFFFF) # ori $t9, $t9, 0xc03c +/* 07C788 8007BB88 3C0CF200 */ lui $t4, 0xf200 +/* 07C78C 8007BB8C ADEC0000 */ sw $t4, ($t7) +/* 07C790 8007BB90 ADF90004 */ sw $t9, 4($t7) +/* 07C794 8007BB94 8C820000 */ lw $v0, ($a0) +/* 07C798 8007BB98 00A97021 */ addu $t6, $a1, $t1 +/* 07C79C 8007BB9C 24580008 */ addiu $t8, $v0, 8 +/* 07C7A0 8007BBA0 AC980000 */ sw $t8, ($a0) +/* 07C7A4 8007BBA4 AC470000 */ sw $a3, ($v0) +/* 07C7A8 8007BBA8 8FAD0078 */ lw $t5, 0x78($sp) +/* 07C7AC 8007BBAC 25D90820 */ addiu $t9, $t6, 0x820 +/* 07C7B0 8007BBB0 AC590004 */ sw $t9, 4($v0) +/* 07C7B4 8007BBB4 8C820000 */ lw $v0, ($a0) +/* 07C7B8 8007BBB8 3C0E0701 */ lui $t6, (0x07010060 >> 16) # lui $t6, 0x701 +/* 07C7BC 8007BBBC 244F0008 */ addiu $t7, $v0, 8 +/* 07C7C0 8007BBC0 AC8F0000 */ sw $t7, ($a0) +/* 07C7C4 8007BBC4 35CE0060 */ ori $t6, (0x07010060 & 0xFFFF) # ori $t6, $t6, 0x60 +/* 07C7C8 8007BBC8 3C18F510 */ lui $t8, 0xf510 +/* 07C7CC 8007BBCC AC580000 */ sw $t8, ($v0) +/* 07C7D0 8007BBD0 AC4E0004 */ sw $t6, 4($v0) +/* 07C7D4 8007BBD4 8C820000 */ lw $v0, ($a0) +/* 07C7D8 8007BBD8 3C0E073F */ lui $t6, (0x073FF080 >> 16) # lui $t6, 0x73f +/* 07C7DC 8007BBDC 24590008 */ addiu $t9, $v0, 8 +/* 07C7E0 8007BBE0 AC990000 */ sw $t9, ($a0) +/* 07C7E4 8007BBE4 AC400004 */ sw $zero, 4($v0) +/* 07C7E8 8007BBE8 AC4A0000 */ sw $t2, ($v0) +/* 07C7EC 8007BBEC 8C820000 */ lw $v0, ($a0) +/* 07C7F0 8007BBF0 35CEF080 */ ori $t6, (0x073FF080 & 0xFFFF) # ori $t6, $t6, 0xf080 +/* 07C7F4 8007BBF4 AFA2003C */ sw $v0, 0x3c($sp) +/* 07C7F8 8007BBF8 244F0008 */ addiu $t7, $v0, 8 +/* 07C7FC 8007BBFC AC8F0000 */ sw $t7, ($a0) +/* 07C800 8007BC00 8FB8003C */ lw $t8, 0x3c($sp) +/* 07C804 8007BC04 00000000 */ nop +/* 07C808 8007BC08 AF0B0000 */ sw $t3, ($t8) +/* 07C80C 8007BC0C AF0E0004 */ sw $t6, 4($t8) +/* 07C810 8007BC10 8C820000 */ lw $v0, ($a0) +/* 07C814 8007BC14 3C18F510 */ lui $t8, (0xF5102000 >> 16) # lui $t8, 0xf510 +/* 07C818 8007BC18 AFA20038 */ sw $v0, 0x38($sp) +/* 07C81C 8007BC1C 24590008 */ addiu $t9, $v0, 8 +/* 07C820 8007BC20 AC990000 */ sw $t9, ($a0) +/* 07C824 8007BC24 8FAF0038 */ lw $t7, 0x38($sp) +/* 07C828 8007BC28 3C190001 */ lui $t9, (0x00010060 >> 16) # lui $t9, 1 +/* 07C82C 8007BC2C ADE80000 */ sw $t0, ($t7) +/* 07C830 8007BC30 ADE00004 */ sw $zero, 4($t7) +/* 07C834 8007BC34 8C820000 */ lw $v0, ($a0) +/* 07C838 8007BC38 37390060 */ ori $t9, (0x00010060 & 0xFFFF) # ori $t9, $t9, 0x60 +/* 07C83C 8007BC3C 244E0008 */ addiu $t6, $v0, 8 +/* 07C840 8007BC40 AC8E0000 */ sw $t6, ($a0) +/* 07C844 8007BC44 37182000 */ ori $t8, (0xF5102000 & 0xFFFF) # ori $t8, $t8, 0x2000 +/* 07C848 8007BC48 AC580000 */ sw $t8, ($v0) +/* 07C84C 8007BC4C AC590004 */ sw $t9, 4($v0) +/* 07C850 8007BC50 8C820000 */ lw $v0, ($a0) +/* 07C854 8007BC54 3C0E000F */ lui $t6, (0x000FC03C >> 16) # lui $t6, 0xf +/* 07C858 8007BC58 244F0008 */ addiu $t7, $v0, 8 +/* 07C85C 8007BC5C AC8F0000 */ sw $t7, ($a0) +/* 07C860 8007BC60 35CEC03C */ ori $t6, (0x000FC03C & 0xFFFF) # ori $t6, $t6, 0xc03c +/* 07C864 8007BC64 AC4E0004 */ sw $t6, 4($v0) +/* 07C868 8007BC68 10000079 */ b .L8007BE50 +/* 07C86C 8007BC6C AC4C0000 */ sw $t4, ($v0) +.L8007BC70: +/* 07C870 8007BC70 8C820000 */ lw $v0, ($a0) +/* 07C874 8007BC74 3C098000 */ lui $t1, 0x8000 +/* 07C878 8007BC78 24580008 */ addiu $t8, $v0, 8 +/* 07C87C 8007BC7C AC980000 */ sw $t8, ($a0) +/* 07C880 8007BC80 00A9C821 */ addu $t9, $a1, $t1 +/* 07C884 8007BC84 3C07FD10 */ lui $a3, 0xfd10 +/* 07C888 8007BC88 272F0020 */ addiu $t7, $t9, 0x20 +/* 07C88C 8007BC8C AC4F0004 */ sw $t7, 4($v0) +/* 07C890 8007BC90 AC470000 */ sw $a3, ($v0) +/* 07C894 8007BC94 8C820000 */ lw $v0, ($a0) +/* 07C898 8007BC98 3C190701 */ lui $t9, (0x07014050 >> 16) # lui $t9, 0x701 +/* 07C89C 8007BC9C 244E0008 */ addiu $t6, $v0, 8 +/* 07C8A0 8007BCA0 AC8E0000 */ sw $t6, ($a0) +/* 07C8A4 8007BCA4 3C18F510 */ lui $t8, (0xF5100100 >> 16) # lui $t8, 0xf510 +/* 07C8A8 8007BCA8 37180100 */ ori $t8, (0xF5100100 & 0xFFFF) # ori $t8, $t8, 0x100 +/* 07C8AC 8007BCAC 37394050 */ ori $t9, (0x07014050 & 0xFFFF) # ori $t9, $t9, 0x4050 +/* 07C8B0 8007BCB0 AC590004 */ sw $t9, 4($v0) +/* 07C8B4 8007BCB4 AC580000 */ sw $t8, ($v0) +/* 07C8B8 8007BCB8 8C820000 */ lw $v0, ($a0) +/* 07C8BC 8007BCBC 3C0AE600 */ lui $t2, 0xe600 +/* 07C8C0 8007BCC0 244F0008 */ addiu $t7, $v0, 8 +/* 07C8C4 8007BCC4 AC8F0000 */ sw $t7, ($a0) +/* 07C8C8 8007BCC8 AC400004 */ sw $zero, 4($v0) +/* 07C8CC 8007BCCC AC4A0000 */ sw $t2, ($v0) +/* 07C8D0 8007BCD0 8C820000 */ lw $v0, ($a0) +/* 07C8D4 8007BCD4 3C0BF300 */ lui $t3, 0xf300 +/* 07C8D8 8007BCD8 244E0008 */ addiu $t6, $v0, 8 +/* 07C8DC 8007BCDC AC8E0000 */ sw $t6, ($a0) +/* 07C8E0 8007BCE0 3C18073F */ lui $t8, (0x073FF100 >> 16) # lui $t8, 0x73f +/* 07C8E4 8007BCE4 AC4B0000 */ sw $t3, ($v0) +/* 07C8E8 8007BCE8 8FAD0078 */ lw $t5, 0x78($sp) +/* 07C8EC 8007BCEC 3718F100 */ ori $t8, (0x073FF100 & 0xFFFF) # ori $t8, $t8, 0xf100 +/* 07C8F0 8007BCF0 AC580004 */ sw $t8, 4($v0) +/* 07C8F4 8007BCF4 8C820000 */ lw $v0, ($a0) +/* 07C8F8 8007BCF8 3C08E700 */ lui $t0, 0xe700 +/* 07C8FC 8007BCFC AFA2001C */ sw $v0, 0x1c($sp) +/* 07C900 8007BD00 24590008 */ addiu $t9, $v0, 8 +/* 07C904 8007BD04 AC990000 */ sw $t9, ($a0) +/* 07C908 8007BD08 8FAF001C */ lw $t7, 0x1c($sp) +/* 07C90C 8007BD0C 3C18F510 */ lui $t8, (0xF5101100 >> 16) # lui $t8, 0xf510 +/* 07C910 8007BD10 ADE80000 */ sw $t0, ($t7) +/* 07C914 8007BD14 ADE00004 */ sw $zero, 4($t7) +/* 07C918 8007BD18 8C820000 */ lw $v0, ($a0) +/* 07C91C 8007BD1C 3C0F0101 */ lui $t7, (0x01014050 >> 16) # lui $t7, 0x101 +/* 07C920 8007BD20 AFA20018 */ sw $v0, 0x18($sp) +/* 07C924 8007BD24 244E0008 */ addiu $t6, $v0, 8 +/* 07C928 8007BD28 AC8E0000 */ sw $t6, ($a0) +/* 07C92C 8007BD2C 8FB90018 */ lw $t9, 0x18($sp) +/* 07C930 8007BD30 35EF4050 */ ori $t7, (0x01014050 & 0xFFFF) # ori $t7, $t7, 0x4050 +/* 07C934 8007BD34 37181100 */ ori $t8, (0xF5101100 & 0xFFFF) # ori $t8, $t8, 0x1100 +/* 07C938 8007BD38 AF380000 */ sw $t8, ($t9) +/* 07C93C 8007BD3C AF2F0004 */ sw $t7, 4($t9) +/* 07C940 8007BD40 8C820000 */ lw $v0, ($a0) +/* 07C944 8007BD44 3C0CF200 */ lui $t4, 0xf200 +/* 07C948 8007BD48 AFA20014 */ sw $v0, 0x14($sp) +/* 07C94C 8007BD4C 244E0008 */ addiu $t6, $v0, 8 +/* 07C950 8007BD50 AC8E0000 */ sw $t6, ($a0) +/* 07C954 8007BD54 8FB80014 */ lw $t8, 0x14($sp) +/* 07C958 8007BD58 3C0F0107 */ lui $t7, (0x0107C07C >> 16) # lui $t7, 0x107 +/* 07C95C 8007BD5C AF0C0000 */ sw $t4, ($t8) +/* 07C960 8007BD60 8FB90014 */ lw $t9, 0x14($sp) +/* 07C964 8007BD64 35EFC07C */ ori $t7, (0x0107C07C & 0xFFFF) # ori $t7, $t7, 0xc07c +/* 07C968 8007BD68 AF2F0004 */ sw $t7, 4($t9) +/* 07C96C 8007BD6C 8C820000 */ lw $v0, ($a0) +/* 07C970 8007BD70 00A9C021 */ addu $t8, $a1, $t1 +/* 07C974 8007BD74 244E0008 */ addiu $t6, $v0, 8 +/* 07C978 8007BD78 AC8E0000 */ sw $t6, ($a0) +/* 07C97C 8007BD7C 270F0820 */ addiu $t7, $t8, 0x820 +/* 07C980 8007BD80 AC4F0004 */ sw $t7, 4($v0) +/* 07C984 8007BD84 AC470000 */ sw $a3, ($v0) +/* 07C988 8007BD88 8C820000 */ lw $v0, ($a0) +/* 07C98C 8007BD8C 3C180701 */ lui $t8, (0x07014050 >> 16) # lui $t8, 0x701 +/* 07C990 8007BD90 24590008 */ addiu $t9, $v0, 8 +/* 07C994 8007BD94 AC990000 */ sw $t9, ($a0) +/* 07C998 8007BD98 37184050 */ ori $t8, (0x07014050 & 0xFFFF) # ori $t8, $t8, 0x4050 +/* 07C99C 8007BD9C 3C0EF510 */ lui $t6, 0xf510 +/* 07C9A0 8007BDA0 AC4E0000 */ sw $t6, ($v0) +/* 07C9A4 8007BDA4 AC580004 */ sw $t8, 4($v0) +/* 07C9A8 8007BDA8 8C820000 */ lw $v0, ($a0) +/* 07C9AC 8007BDAC 3C18073F */ lui $t8, (0x073FF100 >> 16) # lui $t8, 0x73f +/* 07C9B0 8007BDB0 244F0008 */ addiu $t7, $v0, 8 +/* 07C9B4 8007BDB4 AC8F0000 */ sw $t7, ($a0) +/* 07C9B8 8007BDB8 AC400004 */ sw $zero, 4($v0) +/* 07C9BC 8007BDBC AC4A0000 */ sw $t2, ($v0) +/* 07C9C0 8007BDC0 8C820000 */ lw $v0, ($a0) +/* 07C9C4 8007BDC4 3718F100 */ ori $t8, (0x073FF100 & 0xFFFF) # ori $t8, $t8, 0xf100 +/* 07C9C8 8007BDC8 AFA20004 */ sw $v0, 4($sp) +/* 07C9CC 8007BDCC 24590008 */ addiu $t9, $v0, 8 +/* 07C9D0 8007BDD0 AC990000 */ sw $t9, ($a0) +/* 07C9D4 8007BDD4 8FAE0004 */ lw $t6, 4($sp) +/* 07C9D8 8007BDD8 00000000 */ nop +/* 07C9DC 8007BDDC ADCB0000 */ sw $t3, ($t6) +/* 07C9E0 8007BDE0 8FAF0004 */ lw $t7, 4($sp) +/* 07C9E4 8007BDE4 00000000 */ nop +/* 07C9E8 8007BDE8 ADF80004 */ sw $t8, 4($t7) +/* 07C9EC 8007BDEC 8C820000 */ lw $v0, ($a0) +/* 07C9F0 8007BDF0 00000000 */ nop +/* 07C9F4 8007BDF4 AFA20000 */ sw $v0, ($sp) +/* 07C9F8 8007BDF8 24590008 */ addiu $t9, $v0, 8 +/* 07C9FC 8007BDFC AC990000 */ sw $t9, ($a0) +/* 07CA00 8007BE00 8FAE0000 */ lw $t6, ($sp) +/* 07CA04 8007BE04 3C19F510 */ lui $t9, (0xF5101000 >> 16) # lui $t9, 0xf510 +/* 07CA08 8007BE08 ADC80000 */ sw $t0, ($t6) +/* 07CA0C 8007BE0C 8FB80000 */ lw $t8, ($sp) +/* 07CA10 8007BE10 3C0E0001 */ lui $t6, (0x00014050 >> 16) # lui $t6, 1 +/* 07CA14 8007BE14 AF000004 */ sw $zero, 4($t8) +/* 07CA18 8007BE18 8C820000 */ lw $v0, ($a0) +/* 07CA1C 8007BE1C 35CE4050 */ ori $t6, (0x00014050 & 0xFFFF) # ori $t6, $t6, 0x4050 +/* 07CA20 8007BE20 244F0008 */ addiu $t7, $v0, 8 +/* 07CA24 8007BE24 AC8F0000 */ sw $t7, ($a0) +/* 07CA28 8007BE28 37391000 */ ori $t9, (0xF5101000 & 0xFFFF) # ori $t9, $t9, 0x1000 +/* 07CA2C 8007BE2C AC590000 */ sw $t9, ($v0) +/* 07CA30 8007BE30 AC4E0004 */ sw $t6, 4($v0) +/* 07CA34 8007BE34 8C820000 */ lw $v0, ($a0) +/* 07CA38 8007BE38 3C0F0007 */ lui $t7, (0x0007C07C >> 16) # lui $t7, 7 +/* 07CA3C 8007BE3C 24580008 */ addiu $t8, $v0, 8 +/* 07CA40 8007BE40 AC980000 */ sw $t8, ($a0) +/* 07CA44 8007BE44 35EFC07C */ ori $t7, (0x0007C07C & 0xFFFF) # ori $t7, $t7, 0xc07c +/* 07CA48 8007BE48 AC4F0004 */ sw $t7, 4($v0) +/* 07CA4C 8007BE4C AC4C0000 */ sw $t4, ($v0) +.L8007BE50: +/* 07CA50 8007BE50 8C820000 */ lw $v0, ($a0) +/* 07CA54 8007BE54 3C018012 */ lui $at, %hi(D_8012637C) # $at, 0x8012 +/* 07CA58 8007BE58 24590008 */ addiu $t9, $v0, 8 +/* 07CA5C 8007BE5C AC990000 */ sw $t9, ($a0) +/* 07CA60 8007BE60 AC400004 */ sw $zero, 4($v0) +/* 07CA64 8007BE64 AC480000 */ sw $t0, ($v0) +/* 07CA68 8007BE68 AC20637C */ sw $zero, %lo(D_8012637C)($at) +/* 07CA6C 8007BE6C 8C820000 */ lw $v0, ($a0) +/* 07CA70 8007BE70 31AE001F */ andi $t6, $t5, 0x1f +/* 07CA74 8007BE74 24580008 */ addiu $t8, $v0, 8 +/* 07CA78 8007BE78 AC980000 */ sw $t8, ($a0) +/* 07CA7C 8007BE7C 3C0F0001 */ lui $t7, 1 +/* 07CA80 8007BE80 31D90002 */ andi $t9, $t6, 2 +/* 07CA84 8007BE84 01C06825 */ move $t5, $t6 +/* 07CA88 8007BE88 AC4F0004 */ sw $t7, 4($v0) +/* 07CA8C 8007BE8C 13200008 */ beqz $t9, .L8007BEB0 +/* 07CA90 8007BE90 AC460000 */ sw $a2, ($v0) +/* 07CA94 8007BE94 8C820000 */ lw $v0, ($a0) +/* 07CA98 8007BE98 24180001 */ li $t8, 1 +/* 07CA9C 8007BE9C 244E0008 */ addiu $t6, $v0, 8 +/* 07CAA0 8007BEA0 AC8E0000 */ sw $t6, ($a0) +/* 07CAA4 8007BEA4 AC580004 */ sw $t8, 4($v0) +/* 07CAA8 8007BEA8 10000008 */ b .L8007BECC +/* 07CAAC 8007BEAC AC460000 */ sw $a2, ($v0) +.L8007BEB0: +/* 07CAB0 8007BEB0 8C820000 */ lw $v0, ($a0) +/* 07CAB4 8007BEB4 3C19B600 */ lui $t9, 0xb600 +/* 07CAB8 8007BEB8 244F0008 */ addiu $t7, $v0, 8 +/* 07CABC 8007BEBC AC8F0000 */ sw $t7, ($a0) +/* 07CAC0 8007BEC0 240E0001 */ li $t6, 1 +/* 07CAC4 8007BEC4 AC4E0004 */ sw $t6, 4($v0) +/* 07CAC8 8007BEC8 AC590000 */ sw $t9, ($v0) +.L8007BECC: +/* 07CACC 8007BECC 24180001 */ li $t8, 1 +/* 07CAD0 8007BED0 3C018012 */ lui $at, %hi(D_80126382) # $at, 0x8012 +/* 07CAD4 8007BED4 A4386382 */ sh $t8, %lo(D_80126382)($at) +/* 07CAD8 8007BED8 3C018012 */ lui $at, %hi(D_80126374) # $at, 0x8012 +/* 07CADC 8007BEDC AC206374 */ sw $zero, %lo(D_80126374)($at) +/* 07CAE0 8007BEE0 8C820000 */ lw $v0, ($a0) +/* 07CAE4 8007BEE4 3C190702 */ lui $t9, (0x07020010 >> 16) # lui $t9, 0x702 +/* 07CAE8 8007BEE8 244F0008 */ addiu $t7, $v0, 8 +/* 07CAEC 8007BEEC AC8F0000 */ sw $t7, ($a0) +/* 07CAF0 8007BEF0 3C0F800E */ lui $t7, %hi(D_800DF1A8) # $t7, 0x800e +/* 07CAF4 8007BEF4 37390010 */ ori $t9, (0x07020010 & 0xFFFF) # ori $t9, $t9, 0x10 +/* 07CAF8 8007BEF8 3C018000 */ lui $at, 0x8000 +/* 07CAFC 8007BEFC 000D7100 */ sll $t6, $t5, 4 +/* 07CB00 8007BF00 01C1C021 */ addu $t8, $t6, $at +/* 07CB04 8007BF04 25EFF1A8 */ addiu $t7, %lo(D_800DF1A8) # addiu $t7, $t7, -0xe58 +/* 07CB08 8007BF08 AC590000 */ sw $t9, ($v0) +/* 07CB0C 8007BF0C 030FC821 */ addu $t9, $t8, $t7 +/* 07CB10 8007BF10 27BD0070 */ addiu $sp, $sp, 0x70 +/* 07CB14 8007BF14 03E00008 */ jr $ra +/* 07CB18 8007BF18 AC590004 */ sw $t9, 4($v0) + diff --git a/asm/non_matchings/unknown_07B870/func_8007BF1C.s b/asm/non_matchings/unknown_07B870/func_8007BF1C.s new file mode 100644 index 00000000..78eb55db --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007BF1C.s @@ -0,0 +1,8 @@ +glabel func_8007BF1C +/* 07CB1C 8007BF1C 3C01800E */ lui $at, %hi(D_800DE7C4) # $at, 0x800e +/* 07CB20 8007BF20 AC24E7C4 */ sw $a0, %lo(D_800DE7C4)($at) +/* 07CB24 8007BF24 3C018012 */ lui $at, 0x8012 +/* 07CB28 8007BF28 240E0001 */ li $t6, 1 +/* 07CB2C 8007BF2C 03E00008 */ jr $ra +/* 07CB30 8007BF30 A42E6382 */ sh $t6, 0x6382($at) + diff --git a/asm/non_matchings/unknown_07B870/func_8007BF34.s b/asm/non_matchings/unknown_07B870/func_8007BF34.s new file mode 100644 index 00000000..f3b965e4 --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007BF34.s @@ -0,0 +1,138 @@ +glabel func_8007BF34 +/* 07CB34 8007BF34 3C078012 */ lui $a3, %hi(D_80126374) # $a3, 0x8012 +/* 07CB38 8007BF38 24E76374 */ addiu $a3, %lo(D_80126374) # addiu $a3, $a3, 0x6374 +/* 07CB3C 8007BF3C 8CEE0000 */ lw $t6, ($a3) +/* 07CB40 8007BF40 3C088012 */ lui $t0, %hi(D_80126382) # $t0, 0x8012 +/* 07CB44 8007BF44 14AE0005 */ bne $a1, $t6, .L8007BF5C +/* 07CB48 8007BF48 25086382 */ addiu $t0, %lo(D_80126382) # addiu $t0, $t0, 0x6382 +/* 07CB4C 8007BF4C 850F0000 */ lh $t7, ($t0) +/* 07CB50 8007BF50 00000000 */ nop +/* 07CB54 8007BF54 11E00073 */ beqz $t7, .L8007C124 +/* 07CB58 8007BF58 00000000 */ nop +.L8007BF5C: +/* 07CB5C 8007BF5C 8C820000 */ lw $v0, ($a0) +/* 07CB60 8007BF60 3C19E700 */ lui $t9, 0xe700 +/* 07CB64 8007BF64 24580008 */ addiu $t8, $v0, 8 +/* 07CB68 8007BF68 AC980000 */ sw $t8, ($a0) +/* 07CB6C 8007BF6C AC400004 */ sw $zero, 4($v0) +/* 07CB70 8007BF70 AC590000 */ sw $t9, ($v0) +/* 07CB74 8007BF74 8CE30000 */ lw $v1, ($a3) +/* 07CB78 8007BF78 3C088012 */ lui $t0, %hi(D_80126382) # $t0, 0x8012 +/* 07CB7C 8007BF7C 00034900 */ sll $t1, $v1, 4 +/* 07CB80 8007BF80 05200005 */ bltz $t1, .L8007BF98 +/* 07CB84 8007BF84 25086382 */ addiu $t0, %lo(D_80126382) # addiu $t0, $t0, 0x6382 +/* 07CB88 8007BF88 850A0000 */ lh $t2, ($t0) +/* 07CB8C 8007BF8C 00000000 */ nop +/* 07CB90 8007BF90 1140000A */ beqz $t2, .L8007BFBC +/* 07CB94 8007BF94 00000000 */ nop +.L8007BF98: +/* 07CB98 8007BF98 8C820000 */ lw $v0, ($a0) +/* 07CB9C 8007BF9C 3C0CB700 */ lui $t4, 0xb700 +/* 07CBA0 8007BFA0 244B0008 */ addiu $t3, $v0, 8 +/* 07CBA4 8007BFA4 AC8B0000 */ sw $t3, ($a0) +/* 07CBA8 8007BFA8 3C0D0001 */ lui $t5, 1 +/* 07CBAC 8007BFAC AC4D0004 */ sw $t5, 4($v0) +/* 07CBB0 8007BFB0 AC4C0000 */ sw $t4, ($v0) +/* 07CBB4 8007BFB4 8CE30000 */ lw $v1, ($a3) +/* 07CBB8 8007BFB8 00000000 */ nop +.L8007BFBC: +/* 07CBBC 8007BFBC 3C0F8012 */ lui $t7, %hi(D_80126378) # $t7, 0x8012 +/* 07CBC0 8007BFC0 8DEF6378 */ lw $t7, %lo(D_80126378)($t7) +/* 07CBC4 8007BFC4 3C01F7FF */ lui $at, (0xF7FFFFFF >> 16) # lui $at, 0xf7ff +/* 07CBC8 8007BFC8 3421FFFF */ ori $at, (0xF7FFFFFF & 0xFFFF) # ori $at, $at, 0xffff +/* 07CBCC 8007BFCC 00A17024 */ and $t6, $a1, $at +/* 07CBD0 8007BFD0 01E0C027 */ not $t8, $t7 +/* 07CBD4 8007BFD4 01D82824 */ and $a1, $t6, $t8 +/* 07CBD8 8007BFD8 30A20002 */ andi $v0, $a1, 2 +/* 07CBDC 8007BFDC 30790002 */ andi $t9, $v1, 2 +/* 07CBE0 8007BFE0 17220005 */ bne $t9, $v0, .L8007BFF8 +/* 07CBE4 8007BFE4 2401F7FF */ li $at, -2049 +/* 07CBE8 8007BFE8 85090000 */ lh $t1, ($t0) +/* 07CBEC 8007BFEC 00000000 */ nop +/* 07CBF0 8007BFF0 11200011 */ beqz $t1, .L8007C038 +/* 07CBF4 8007BFF4 00000000 */ nop +.L8007BFF8: +/* 07CBF8 8007BFF8 10400009 */ beqz $v0, .L8007C020 +/* 07CBFC 8007BFFC 3C0EB600 */ lui $t6, 0xb600 +/* 07CC00 8007C000 8C820000 */ lw $v0, ($a0) +/* 07CC04 8007C004 3C0BB700 */ lui $t3, 0xb700 +/* 07CC08 8007C008 244A0008 */ addiu $t2, $v0, 8 +/* 07CC0C 8007C00C AC8A0000 */ sw $t2, ($a0) +/* 07CC10 8007C010 240C0001 */ li $t4, 1 +/* 07CC14 8007C014 AC4C0004 */ sw $t4, 4($v0) +/* 07CC18 8007C018 10000007 */ b .L8007C038 +/* 07CC1C 8007C01C AC4B0000 */ sw $t3, ($v0) +.L8007C020: +/* 07CC20 8007C020 8C820000 */ lw $v0, ($a0) +/* 07CC24 8007C024 240F0001 */ li $t7, 1 +/* 07CC28 8007C028 244D0008 */ addiu $t5, $v0, 8 +/* 07CC2C 8007C02C AC8D0000 */ sw $t5, ($a0) +/* 07CC30 8007C030 AC4F0004 */ sw $t7, 4($v0) +/* 07CC34 8007C034 AC4E0000 */ sw $t6, ($v0) +.L8007C038: +/* 07CC38 8007C038 A5000000 */ sh $zero, ($t0) +/* 07CC3C 8007C03C ACE50000 */ sw $a1, ($a3) +/* 07CC40 8007C040 3C19800E */ lui $t9, %hi(D_800DE7C4) # $t9, 0x800e +/* 07CC44 8007C044 8F39E7C4 */ lw $t9, %lo(D_800DE7C4)($t9) +/* 07CC48 8007C048 00A1C024 */ and $t8, $a1, $at +/* 07CC4C 8007C04C 17200023 */ bnez $t9, .L8007C0DC +/* 07CC50 8007C050 03002825 */ move $a1, $t8 +/* 07CC54 8007C054 8CE90000 */ lw $t1, ($a3) +/* 07CC58 8007C058 3C0B0702 */ lui $t3, (0x07020010 >> 16) # lui $t3, 0x702 +/* 07CC5C 8007C05C 312A0200 */ andi $t2, $t1, 0x200 +/* 07CC60 8007C060 11400011 */ beqz $t2, .L8007C0A8 +/* 07CC64 8007C064 356B0010 */ ori $t3, (0x07020010 & 0xFFFF) # ori $t3, $t3, 0x10 +/* 07CC68 8007C068 8C820000 */ lw $v0, ($a0) +/* 07CC6C 8007C06C 00186843 */ sra $t5, $t8, 1 +/* 07CC70 8007C070 31AE0001 */ andi $t6, $t5, 1 +/* 07CC74 8007C074 000E7900 */ sll $t7, $t6, 4 +/* 07CC78 8007C078 3C018000 */ lui $at, 0x8000 +/* 07CC7C 8007C07C 3C19800E */ lui $t9, %hi(D_800DE848) # $t9, 0x800e +/* 07CC80 8007C080 2739E848 */ addiu $t9, %lo(D_800DE848) # addiu $t9, $t9, -0x17b8 +/* 07CC84 8007C084 01E1C021 */ addu $t8, $t7, $at +/* 07CC88 8007C088 3C0C0702 */ lui $t4, (0x07020010 >> 16) # lui $t4, 0x702 +/* 07CC8C 8007C08C 244B0008 */ addiu $t3, $v0, 8 +/* 07CC90 8007C090 AC8B0000 */ sw $t3, ($a0) +/* 07CC94 8007C094 358C0010 */ ori $t4, (0x07020010 & 0xFFFF) # ori $t4, $t4, 0x10 +/* 07CC98 8007C098 03194821 */ addu $t1, $t8, $t9 +/* 07CC9C 8007C09C AC490004 */ sw $t1, 4($v0) +/* 07CCA0 8007C0A0 1000001B */ b .L8007C110 +/* 07CCA4 8007C0A4 AC4C0000 */ sw $t4, ($v0) +.L8007C0A8: +/* 07CCA8 8007C0A8 8C820000 */ lw $v0, ($a0) +/* 07CCAC 8007C0AC 24ACFFF0 */ addiu $t4, $a1, -0x10 +/* 07CCB0 8007C0B0 000C6900 */ sll $t5, $t4, 4 +/* 07CCB4 8007C0B4 3C018000 */ lui $at, 0x8000 +/* 07CCB8 8007C0B8 3C0F800E */ lui $t7, %hi(D_800DE868) # $t7, 0x800e +/* 07CCBC 8007C0BC 25EFE868 */ addiu $t7, %lo(D_800DE868) # addiu $t7, $t7, -0x1798 +/* 07CCC0 8007C0C0 01A17021 */ addu $t6, $t5, $at +/* 07CCC4 8007C0C4 244A0008 */ addiu $t2, $v0, 8 +/* 07CCC8 8007C0C8 AC8A0000 */ sw $t2, ($a0) +/* 07CCCC 8007C0CC 01CFC021 */ addu $t8, $t6, $t7 +/* 07CCD0 8007C0D0 AC580004 */ sw $t8, 4($v0) +/* 07CCD4 8007C0D4 1000000E */ b .L8007C110 +/* 07CCD8 8007C0D8 AC4B0000 */ sw $t3, ($v0) +.L8007C0DC: +/* 07CCDC 8007C0DC 8C820000 */ lw $v0, ($a0) +/* 07CCE0 8007C0E0 00055100 */ sll $t2, $a1, 4 +/* 07CCE4 8007C0E4 3C018000 */ lui $at, 0x8000 +/* 07CCE8 8007C0E8 3C0C800E */ lui $t4, %hi(D_800DE8E8) # $t4, 0x800e +/* 07CCEC 8007C0EC 24590008 */ addiu $t9, $v0, 8 +/* 07CCF0 8007C0F0 AC990000 */ sw $t9, ($a0) +/* 07CCF4 8007C0F4 258CE8E8 */ addiu $t4, %lo(D_800DE8E8) # addiu $t4, $t4, -0x1718 +/* 07CCF8 8007C0F8 01415821 */ addu $t3, $t2, $at +/* 07CCFC 8007C0FC 3C090702 */ lui $t1, (0x07020010 >> 16) # lui $t1, 0x702 +/* 07CD00 8007C100 35290010 */ ori $t1, (0x07020010 & 0xFFFF) # ori $t1, $t1, 0x10 +/* 07CD04 8007C104 016C6821 */ addu $t5, $t3, $t4 +/* 07CD08 8007C108 AC4D0004 */ sw $t5, 4($v0) +/* 07CD0C 8007C10C AC490000 */ sw $t1, ($v0) +.L8007C110: +/* 07CD10 8007C110 3C018012 */ lui $at, %hi(D_8012637C) # $at, 0x8012 +/* 07CD14 8007C114 AC20637C */ sw $zero, %lo(D_8012637C)($at) +/* 07CD18 8007C118 3C018012 */ lui $at, %hi(D_80126380) # $at, 0x8012 +/* 07CD1C 8007C11C 240E0001 */ li $t6, 1 +/* 07CD20 8007C120 A42E6380 */ sh $t6, %lo(D_80126380)($at) +.L8007C124: +/* 07CD24 8007C124 03E00008 */ jr $ra +/* 07CD28 8007C128 00000000 */ nop + diff --git a/asm/non_matchings/unknown_07B870/func_8007C12C.s b/asm/non_matchings/unknown_07B870/func_8007C12C.s new file mode 100644 index 00000000..5173c29f --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007C12C.s @@ -0,0 +1,307 @@ +glabel func_8007C12C +/* 07CD2C 8007C12C 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 07CD30 8007C130 AFB10018 */ sw $s1, 0x18($sp) +/* 07CD34 8007C134 3C018012 */ lui $at, %hi(D_8012635C) # $at, 0x8012 +/* 07CD38 8007C138 00808825 */ move $s1, $a0 +/* 07CD3C 8007C13C AFBF002C */ sw $ra, 0x2c($sp) +/* 07CD40 8007C140 AFB50028 */ sw $s5, 0x28($sp) +/* 07CD44 8007C144 AFB40024 */ sw $s4, 0x24($sp) +/* 07CD48 8007C148 AFB30020 */ sw $s3, 0x20($sp) +/* 07CD4C 8007C14C AFB2001C */ sw $s2, 0x1c($sp) +/* 07CD50 8007C150 AFB00014 */ sw $s0, 0x14($sp) +/* 07CD54 8007C154 04800007 */ bltz $a0, .L8007C174 +/* 07CD58 8007C158 AC25635C */ sw $a1, %lo(D_8012635C)($at) +/* 07CD5C 8007C15C 3C0E8012 */ lui $t6, %hi(D_80126354) # $t6, 0x8012 +/* 07CD60 8007C160 8DCE6354 */ lw $t6, %lo(D_80126354)($t6) +/* 07CD64 8007C164 3C0A8012 */ lui $t2, %hi(D_80126358) # $t2, 0x8012 +/* 07CD68 8007C168 008E082A */ slt $at, $a0, $t6 +/* 07CD6C 8007C16C 14200003 */ bnez $at, .L8007C17C +/* 07CD70 8007C170 254A6358 */ addiu $t2, %lo(D_80126358) # addiu $t2, $t2, 0x6358 +.L8007C174: +/* 07CD74 8007C174 100000E4 */ b .L8007C508 +/* 07CD78 8007C178 00001025 */ move $v0, $zero +.L8007C17C: +/* 07CD7C 8007C17C 8D440000 */ lw $a0, ($t2) +/* 07CD80 8007C180 00008025 */ move $s0, $zero +/* 07CD84 8007C184 18800014 */ blez $a0, .L8007C1D8 +/* 07CD88 8007C188 00004825 */ move $t1, $zero +/* 07CD8C 8007C18C 3C028012 */ lui $v0, %hi(D_8012634C) # $v0, 0x8012 +/* 07CD90 8007C190 8C42634C */ lw $v0, %lo(D_8012634C)($v0) +/* 07CD94 8007C194 00000000 */ nop +/* 07CD98 8007C198 0010C0C0 */ sll $t8, $s0, 3 +.L8007C19C: +/* 07CD9C 8007C19C 00581821 */ addu $v1, $v0, $t8 +/* 07CDA0 8007C1A0 8C790000 */ lw $t9, ($v1) +/* 07CDA4 8007C1A4 26100001 */ addiu $s0, $s0, 1 +/* 07CDA8 8007C1A8 16390008 */ bne $s1, $t9, .L8007C1CC +/* 07CDAC 8007C1AC 0204082A */ slt $at, $s0, $a0 +/* 07CDB0 8007C1B0 8C620004 */ lw $v0, 4($v1) +/* 07CDB4 8007C1B4 00000000 */ nop +/* 07CDB8 8007C1B8 844B0004 */ lh $t3, 4($v0) +/* 07CDBC 8007C1BC 00000000 */ nop +/* 07CDC0 8007C1C0 256C0001 */ addiu $t4, $t3, 1 +/* 07CDC4 8007C1C4 100000D0 */ b .L8007C508 +/* 07CDC8 8007C1C8 A44C0004 */ sh $t4, 4($v0) +.L8007C1CC: +/* 07CDCC 8007C1CC 1420FFF3 */ bnez $at, .L8007C19C +/* 07CDD0 8007C1D0 0010C0C0 */ sll $t8, $s0, 3 +/* 07CDD4 8007C1D4 00008025 */ move $s0, $zero +.L8007C1D8: +/* 07CDD8 8007C1D8 1880000F */ blez $a0, .L8007C218 +/* 07CDDC 8007C1DC 2408FFFF */ li $t0, -1 +/* 07CDE0 8007C1E0 3C028012 */ lui $v0, %hi(D_8012634C) # $v0, 0x8012 +/* 07CDE4 8007C1E4 8C42634C */ lw $v0, %lo(D_8012634C)($v0) +/* 07CDE8 8007C1E8 2403FFFF */ li $v1, -1 +/* 07CDEC 8007C1EC 001070C0 */ sll $t6, $s0, 3 +.L8007C1F0: +/* 07CDF0 8007C1F0 004E7821 */ addu $t7, $v0, $t6 +/* 07CDF4 8007C1F4 8DF80000 */ lw $t8, ($t7) +/* 07CDF8 8007C1F8 00000000 */ nop +/* 07CDFC 8007C1FC 14780002 */ bne $v1, $t8, .L8007C208 +/* 07CE00 8007C200 00000000 */ nop +/* 07CE04 8007C204 02004025 */ move $t0, $s0 +.L8007C208: +/* 07CE08 8007C208 26100001 */ addiu $s0, $s0, 1 +/* 07CE0C 8007C20C 0204082A */ slt $at, $s0, $a0 +/* 07CE10 8007C210 1420FFF7 */ bnez $at, .L8007C1F0 +/* 07CE14 8007C214 001070C0 */ sll $t6, $s0, 3 +.L8007C218: +/* 07CE18 8007C218 2403FFFF */ li $v1, -1 +/* 07CE1C 8007C21C 15030005 */ bne $t0, $v1, .L8007C234 +/* 07CE20 8007C220 3C0B8012 */ lui $t3, %hi(D_80126348) # $t3, 0x8012 +/* 07CE24 8007C224 24990001 */ addiu $t9, $a0, 1 +/* 07CE28 8007C228 24090001 */ li $t1, 1 +/* 07CE2C 8007C22C 00804025 */ move $t0, $a0 +/* 07CE30 8007C230 AD590000 */ sw $t9, ($t2) +.L8007C234: +/* 07CE34 8007C234 8D6B6348 */ lw $t3, %lo(D_80126348)($t3) +/* 07CE38 8007C238 00116080 */ sll $t4, $s1, 2 +/* 07CE3C 8007C23C 016C1021 */ addu $v0, $t3, $t4 +/* 07CE40 8007C240 8C460000 */ lw $a2, ($v0) +/* 07CE44 8007C244 8C4D0004 */ lw $t5, 4($v0) +/* 07CE48 8007C248 3C148012 */ lui $s4, %hi(D_80126350) # $s4, 0x8012 +/* 07CE4C 8007C24C 8E946350 */ lw $s4, %lo(D_80126350)($s4) +/* 07CE50 8007C250 AFB10050 */ sw $s1, 0x50($sp) +/* 07CE54 8007C254 A3A90032 */ sb $t1, 0x32($sp) +/* 07CE58 8007C258 AFA80044 */ sw $t0, 0x44($sp) +/* 07CE5C 8007C25C 2404000C */ li $a0, 12 +/* 07CE60 8007C260 01A63823 */ subu $a3, $t5, $a2 +/* 07CE64 8007C264 0C01DB9A */ jal func_80076E68 +/* 07CE68 8007C268 02802825 */ move $a1, $s4 +/* 07CE6C 8007C26C 86850002 */ lh $a1, 2($s4) +/* 07CE70 8007C270 24040010 */ li $a0, 16 +/* 07CE74 8007C274 02857021 */ addu $t6, $s4, $a1 +/* 07CE78 8007C278 91D5000C */ lbu $s5, 0xc($t6) +/* 07CE7C 8007C27C 000558C0 */ sll $t3, $a1, 3 +/* 07CE80 8007C280 00151880 */ sll $v1, $s5, 2 +/* 07CE84 8007C284 00037880 */ sll $t7, $v1, 2 +/* 07CE88 8007C288 01E37821 */ addu $t7, $t7, $v1 +/* 07CE8C 8007C28C 000F7840 */ sll $t7, $t7, 1 +/* 07CE90 8007C290 0003C0C0 */ sll $t8, $v1, 3 +/* 07CE94 8007C294 01F8C821 */ addu $t9, $t7, $t8 +/* 07CE98 8007C298 032B8021 */ addu $s0, $t9, $t3 +/* 07CE9C 8007C29C 00156940 */ sll $t5, $s5, 5 +/* 07CEA0 8007C2A0 020D8021 */ addu $s0, $s0, $t5 +/* 07CEA4 8007C2A4 0C01C614 */ jal func_80071850 +/* 07CEA8 8007C2A8 02038021 */ addu $s0, $s0, $v1 +/* 07CEAC 8007C2AC 86840002 */ lh $a0, 2($s4) +/* 07CEB0 8007C2B0 02028021 */ addu $s0, $s0, $v0 +/* 07CEB4 8007C2B4 00047080 */ sll $t6, $a0, 2 +/* 07CEB8 8007C2B8 0C01C614 */ jal func_80071850 +/* 07CEBC 8007C2BC 01C02025 */ move $a0, $t6 +/* 07CEC0 8007C2C0 3C05FF00 */ lui $a1, (0xFF00FFFF >> 16) # lui $a1, 0xff00 +/* 07CEC4 8007C2C4 02022021 */ addu $a0, $s0, $v0 +/* 07CEC8 8007C2C8 0C01C344 */ jal func_80070D10 +/* 07CECC 8007C2CC 34A5FFFF */ ori $a1, (0xFF00FFFF & 0xFFFF) # ori $a1, $a1, 0xffff +/* 07CED0 8007C2D0 1440000B */ bnez $v0, .L8007C300 +/* 07CED4 8007C2D4 00409825 */ move $s3, $v0 +/* 07CED8 8007C2D8 83AF0032 */ lb $t7, 0x32($sp) +/* 07CEDC 8007C2DC 3C028012 */ lui $v0, %hi(D_80126358) # $v0, 0x8012 +/* 07CEE0 8007C2E0 11E00005 */ beqz $t7, .L8007C2F8 +/* 07CEE4 8007C2E4 24426358 */ addiu $v0, %lo(D_80126358) # addiu $v0, $v0, 0x6358 +/* 07CEE8 8007C2E8 8C580000 */ lw $t8, ($v0) +/* 07CEEC 8007C2EC 00000000 */ nop +/* 07CEF0 8007C2F0 2719FFFF */ addiu $t9, $t8, -1 +/* 07CEF4 8007C2F4 AC590000 */ sw $t9, ($v0) +.L8007C2F8: +/* 07CEF8 8007C2F8 10000083 */ b .L8007C508 +/* 07CEFC 8007C2FC 00001025 */ move $v0, $zero +.L8007C300: +/* 07CF00 8007C300 24040010 */ li $a0, 16 +/* 07CF04 8007C304 0C01C614 */ jal func_80071850 +/* 07CF08 8007C308 00008025 */ move $s0, $zero +/* 07CF0C 8007C30C 86840002 */ lh $a0, 2($s4) +/* 07CF10 8007C310 00408825 */ move $s1, $v0 +/* 07CF14 8007C314 00045880 */ sll $t3, $a0, 2 +/* 07CF18 8007C318 0C01C614 */ jal func_80071850 +/* 07CF1C 8007C31C 01602025 */ move $a0, $t3 +/* 07CF20 8007C320 00536021 */ addu $t4, $v0, $s3 +/* 07CF24 8007C324 01916821 */ addu $t5, $t4, $s1 +/* 07CF28 8007C328 3C058012 */ lui $a1, %hi(D_80126368) # $a1, 0x8012 +/* 07CF2C 8007C32C 3C078012 */ lui $a3, %hi(D_80126364) # $a3, 0x8012 +/* 07CF30 8007C330 00152140 */ sll $a0, $s5, 5 +/* 07CF34 8007C334 24E76364 */ addiu $a3, %lo(D_80126364) # addiu $a3, $a3, 0x6364 +/* 07CF38 8007C338 24A56368 */ addiu $a1, %lo(D_80126368) # addiu $a1, $a1, 0x6368 +/* 07CF3C 8007C33C 01A47821 */ addu $t7, $t5, $a0 +/* 07CF40 8007C340 ACAD0000 */ sw $t5, ($a1) +/* 07CF44 8007C344 ACEF0000 */ sw $t7, ($a3) +/* 07CF48 8007C348 868B0002 */ lh $t3, 2($s4) +/* 07CF4C 8007C34C 01E4C821 */ addu $t9, $t7, $a0 +/* 07CF50 8007C350 00157880 */ sll $t7, $s5, 2 +/* 07CF54 8007C354 000B60C0 */ sll $t4, $t3, 3 +/* 07CF58 8007C358 3C068012 */ lui $a2, %hi(D_80126360) # $a2, 0x8012 +/* 07CF5C 8007C35C 032C6821 */ addu $t5, $t9, $t4 +/* 07CF60 8007C360 01F57821 */ addu $t7, $t7, $s5 +/* 07CF64 8007C364 24C66360 */ addiu $a2, %lo(D_80126360) # addiu $a2, $a2, 0x6360 +/* 07CF68 8007C368 000F78C0 */ sll $t7, $t7, 3 +/* 07CF6C 8007C36C ACCD0000 */ sw $t5, ($a2) +/* 07CF70 8007C370 01AFC021 */ addu $t8, $t5, $t7 +/* 07CF74 8007C374 AE780008 */ sw $t8, 8($s3) +/* 07CF78 8007C378 1AA0001E */ blez $s5, .L8007C3F4 +/* 07CF7C 8007C37C 00001825 */ move $v1, $zero +/* 07CF80 8007C380 3C12800E */ lui $s2, %hi(D_800DE7C0) # $s2, 0x800e +/* 07CF84 8007C384 2652E7C0 */ addiu $s2, %lo(D_800DE7C0) # addiu $s2, $s2, -0x1840 +/* 07CF88 8007C388 00008825 */ move $s1, $zero +.L8007C38C: +/* 07CF8C 8007C38C 3C0B00FF */ lui $t3, (0x00FF0163 >> 16) # lui $t3, 0xff +/* 07CF90 8007C390 356B0163 */ ori $t3, (0x00FF0163 & 0xFFFF) # ori $t3, $t3, 0x163 +/* 07CF94 8007C394 AE4B0000 */ sw $t3, ($s2) +/* 07CF98 8007C398 86990000 */ lh $t9, ($s4) +/* 07CF9C 8007C39C A3A30033 */ sb $v1, 0x33($sp) +/* 07CFA0 8007C3A0 0C01EB9D */ jal func_8007AE74 +/* 07CFA4 8007C3A4 03302021 */ addu $a0, $t9, $s0 +/* 07CFA8 8007C3A8 8E6C0008 */ lw $t4, 8($s3) +/* 07CFAC 8007C3AC 83A30033 */ lb $v1, 0x33($sp) +/* 07CFB0 8007C3B0 01916821 */ addu $t5, $t4, $s1 +/* 07CFB4 8007C3B4 ADA20000 */ sw $v0, ($t5) +/* 07CFB8 8007C3B8 8E6E0008 */ lw $t6, 8($s3) +/* 07CFBC 8007C3BC 3C0BFF00 */ lui $t3, (0xFF00FFFF >> 16) # lui $t3, 0xff00 +/* 07CFC0 8007C3C0 01D17821 */ addu $t7, $t6, $s1 +/* 07CFC4 8007C3C4 8DF80000 */ lw $t8, ($t7) +/* 07CFC8 8007C3C8 356BFFFF */ ori $t3, (0xFF00FFFF & 0xFFFF) # ori $t3, $t3, 0xffff +/* 07CFCC 8007C3CC 17000002 */ bnez $t8, .L8007C3D8 +/* 07CFD0 8007C3D0 24190001 */ li $t9, 1 +/* 07CFD4 8007C3D4 24030001 */ li $v1, 1 +.L8007C3D8: +/* 07CFD8 8007C3D8 26100001 */ addiu $s0, $s0, 1 +/* 07CFDC 8007C3DC AE4B0000 */ sw $t3, ($s2) +/* 07CFE0 8007C3E0 3C018012 */ lui $at, %hi(D_80126344) # $at, 0x8012 +/* 07CFE4 8007C3E4 26310004 */ addiu $s1, $s1, 4 +/* 07CFE8 8007C3E8 1615FFE8 */ bne $s0, $s5, .L8007C38C +/* 07CFEC 8007C3EC AC396344 */ sw $t9, %lo(D_80126344)($at) +/* 07CFF0 8007C3F0 00008025 */ move $s0, $zero +.L8007C3F4: +/* 07CFF4 8007C3F4 3C018012 */ lui $at, %hi(D_80126344) # $at, 0x8012 +/* 07CFF8 8007C3F8 1060001B */ beqz $v1, .L8007C468 +/* 07CFFC 8007C3FC AC206344 */ sw $zero, %lo(D_80126344)($at) +/* 07D000 8007C400 1AA0000D */ blez $s5, .L8007C438 +/* 07D004 8007C404 00008825 */ move $s1, $zero +.L8007C408: +/* 07D008 8007C408 8E6C0008 */ lw $t4, 8($s3) +/* 07D00C 8007C40C 00000000 */ nop +/* 07D010 8007C410 01916821 */ addu $t5, $t4, $s1 +/* 07D014 8007C414 8DA40000 */ lw $a0, ($t5) +/* 07D018 8007C418 00000000 */ nop +/* 07D01C 8007C41C 10800003 */ beqz $a0, .L8007C42C +/* 07D020 8007C420 00000000 */ nop +/* 07D024 8007C424 0C01ECAF */ jal func_8007B2BC +/* 07D028 8007C428 00000000 */ nop +.L8007C42C: +/* 07D02C 8007C42C 26100001 */ addiu $s0, $s0, 1 +/* 07D030 8007C430 1615FFF5 */ bne $s0, $s5, .L8007C408 +/* 07D034 8007C434 26310004 */ addiu $s1, $s1, 4 +.L8007C438: +/* 07D038 8007C438 83AE0032 */ lb $t6, 0x32($sp) +/* 07D03C 8007C43C 3C028012 */ lui $v0, %hi(D_80126358) # $v0, 0x8012 +/* 07D040 8007C440 11C00005 */ beqz $t6, .L8007C458 +/* 07D044 8007C444 24426358 */ addiu $v0, %lo(D_80126358) # addiu $v0, $v0, 0x6358 +/* 07D048 8007C448 8C4F0000 */ lw $t7, ($v0) +/* 07D04C 8007C44C 00000000 */ nop +/* 07D050 8007C450 25F8FFFF */ addiu $t8, $t7, -1 +/* 07D054 8007C454 AC580000 */ sw $t8, ($v0) +.L8007C458: +/* 07D058 8007C458 0C01C450 */ jal func_80071140 +/* 07D05C 8007C45C 02602025 */ move $a0, $s3 +/* 07D060 8007C460 10000029 */ b .L8007C508 +/* 07D064 8007C464 00001025 */ move $v0, $zero +.L8007C468: +/* 07D068 8007C468 A6750002 */ sh $s5, 2($s3) +/* 07D06C 8007C46C 868B0002 */ lh $t3, 2($s4) +/* 07D070 8007C470 02608825 */ move $s1, $s3 +/* 07D074 8007C474 A66B0000 */ sh $t3, ($s3) +/* 07D078 8007C478 86990002 */ lh $t9, 2($s4) +/* 07D07C 8007C47C 00000000 */ nop +/* 07D080 8007C480 1B20000D */ blez $t9, .L8007C4B8 +.L8007C484: +/* 07D084 8007C484 3C078012 */ lui $a3, %hi(D_80126364) # $a3, 0x8012 +/* 07D088 8007C488 24E76364 */ addiu $a3, %lo(D_80126364) # addiu $a3, $a3, 0x6364 +/* 07D08C 8007C48C 8CEC0000 */ lw $t4, ($a3) +/* 07D090 8007C490 02802025 */ move $a0, $s4 +/* 07D094 8007C494 02602825 */ move $a1, $s3 +/* 07D098 8007C498 02003025 */ move $a2, $s0 +/* 07D09C 8007C49C 0C01F370 */ jal func_8007CDC0 +/* 07D0A0 8007C4A0 AE2C000C */ sw $t4, 0xc($s1) +/* 07D0A4 8007C4A4 868D0002 */ lh $t5, 2($s4) +/* 07D0A8 8007C4A8 26100001 */ addiu $s0, $s0, 1 +/* 07D0AC 8007C4AC 020D082A */ slt $at, $s0, $t5 +/* 07D0B0 8007C4B0 1420FFF4 */ bnez $at, .L8007C484 +/* 07D0B4 8007C4B4 26310004 */ addiu $s1, $s1, 4 +.L8007C4B8: +/* 07D0B8 8007C4B8 3C0E8012 */ lui $t6, %hi(D_80126358) # $t6, 0x8012 +/* 07D0BC 8007C4BC 8DCE6358 */ lw $t6, %lo(D_80126358)($t6) +/* 07D0C0 8007C4C0 3C048012 */ lui $a0, %hi(D_8012634C) # $a0, 0x8012 +/* 07D0C4 8007C4C4 29C10064 */ slti $at, $t6, 0x64 +/* 07D0C8 8007C4C8 14200003 */ bnez $at, .L8007C4D8 +/* 07D0CC 8007C4CC 2484634C */ addiu $a0, %lo(D_8012634C) # addiu $a0, $a0, 0x634c +/* 07D0D0 8007C4D0 1000000D */ b .L8007C508 +/* 07D0D4 8007C4D4 00001025 */ move $v0, $zero +.L8007C4D8: +/* 07D0D8 8007C4D8 8FAF0044 */ lw $t7, 0x44($sp) +/* 07D0DC 8007C4DC 8C990000 */ lw $t9, ($a0) +/* 07D0E0 8007C4E0 8FAB0050 */ lw $t3, 0x50($sp) +/* 07D0E4 8007C4E4 000FC0C0 */ sll $t8, $t7, 3 +/* 07D0E8 8007C4E8 03386021 */ addu $t4, $t9, $t8 +/* 07D0EC 8007C4EC AD8B0000 */ sw $t3, ($t4) +/* 07D0F0 8007C4F0 8C8D0000 */ lw $t5, ($a0) +/* 07D0F4 8007C4F4 240F0001 */ li $t7, 1 +/* 07D0F8 8007C4F8 01B87021 */ addu $t6, $t5, $t8 +/* 07D0FC 8007C4FC ADD30004 */ sw $s3, 4($t6) +/* 07D100 8007C500 A66F0004 */ sh $t7, 4($s3) +/* 07D104 8007C504 02601025 */ move $v0, $s3 +.L8007C508: +/* 07D108 8007C508 8FBF002C */ lw $ra, 0x2c($sp) +/* 07D10C 8007C50C 8FB00014 */ lw $s0, 0x14($sp) +/* 07D110 8007C510 8FB10018 */ lw $s1, 0x18($sp) +/* 07D114 8007C514 8FB2001C */ lw $s2, 0x1c($sp) +/* 07D118 8007C518 8FB30020 */ lw $s3, 0x20($sp) +/* 07D11C 8007C51C 8FB40024 */ lw $s4, 0x24($sp) +/* 07D120 8007C520 8FB50028 */ lw $s5, 0x28($sp) +/* 07D124 8007C524 03E00008 */ jr $ra +/* 07D128 8007C528 27BD0050 */ addiu $sp, $sp, 0x50 + +/* 07D12C 8007C52C 04800006 */ bltz $a0, .L8007C548 +/* 07D130 8007C530 3C0E8012 */ lui $t6, %hi(D_80126358) # $t6, 0x8012 +/* 07D134 8007C534 8DCE6358 */ lw $t6, %lo(D_80126358)($t6) +/* 07D138 8007C538 3C0F8012 */ lui $t7, 0x8012 +/* 07D13C 8007C53C 008E082A */ slt $at, $a0, $t6 +/* 07D140 8007C540 14200003 */ bnez $at, .L8007C550 +/* 07D144 8007C544 00000000 */ nop +.L8007C548: +/* 07D148 8007C548 03E00008 */ jr $ra +/* 07D14C 8007C54C 00001025 */ move $v0, $zero + +.L8007C550: +/* 07D150 8007C550 8DEF634C */ lw $t7, 0x634c($t7) +/* 07D154 8007C554 0004C8C0 */ sll $t9, $a0, 3 +/* 07D158 8007C558 01F94021 */ addu $t0, $t7, $t9 +/* 07D15C 8007C55C 8D030004 */ lw $v1, 4($t0) +/* 07D160 8007C560 2401FFFF */ li $at, -1 +/* 07D164 8007C564 14610003 */ bne $v1, $at, .L8007C574 +/* 07D168 8007C568 00601025 */ move $v0, $v1 +/* 07D16C 8007C56C 03E00008 */ jr $ra +/* 07D170 8007C570 00001025 */ move $v0, $zero + +.L8007C574: +/* 07D174 8007C574 03E00008 */ jr $ra +/* 07D178 8007C578 00000000 */ nop + diff --git a/asm/non_matchings/unknown_07B870/func_8007C57C.s b/asm/non_matchings/unknown_07B870/func_8007C57C.s new file mode 100644 index 00000000..c1d85c50 --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007C57C.s @@ -0,0 +1,242 @@ +glabel func_8007C57C +/* 07D17C 8007C57C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 07D180 8007C580 240E0004 */ li $t6, 4 +/* 07D184 8007C584 308F8000 */ andi $t7, $a0, 0x8000 +/* 07D188 8007C588 AFBF0014 */ sw $ra, 0x14($sp) +/* 07D18C 8007C58C AFAE0018 */ sw $t6, 0x18($sp) +/* 07D190 8007C590 11E00006 */ beqz $t7, .L8007C5AC +/* 07D194 8007C594 00001025 */ move $v0, $zero +/* 07D198 8007C598 24180002 */ li $t8, 2 +/* 07D19C 8007C59C 30997FFF */ andi $t9, $a0, 0x7fff +/* 07D1A0 8007C5A0 AFB80018 */ sw $t8, 0x18($sp) +/* 07D1A4 8007C5A4 24020001 */ li $v0, 1 +/* 07D1A8 8007C5A8 03202025 */ move $a0, $t9 +.L8007C5AC: +/* 07D1AC 8007C5AC 00021880 */ sll $v1, $v0, 2 +/* 07D1B0 8007C5B0 3C088012 */ lui $t0, 0x8012 +/* 07D1B4 8007C5B4 01034021 */ addu $t0, $t0, $v1 +/* 07D1B8 8007C5B8 8D086338 */ lw $t0, 0x6338($t0) +/* 07D1BC 8007C5BC 00000000 */ nop +/* 07D1C0 8007C5C0 0088082A */ slt $at, $a0, $t0 +/* 07D1C4 8007C5C4 10200003 */ beqz $at, .L8007C5D4 +/* 07D1C8 8007C5C8 00000000 */ nop +/* 07D1CC 8007C5CC 04810003 */ bgez $a0, .L8007C5DC +/* 07D1D0 8007C5D0 3C098012 */ lui $t1, 0x8012 +.L8007C5D4: +/* 07D1D4 8007C5D4 1000001E */ b .L8007C650 +/* 07D1D8 8007C5D8 00001025 */ move $v0, $zero +.L8007C5DC: +/* 07D1DC 8007C5DC 01234821 */ addu $t1, $t1, $v1 +/* 07D1E0 8007C5E0 8D296320 */ lw $t1, 0x6320($t1) +/* 07D1E4 8007C5E4 00045080 */ sll $t2, $a0, 2 +/* 07D1E8 8007C5E8 3C058012 */ lui $a1, %hi(D_8012636C) # $a1, 0x8012 +/* 07D1EC 8007C5EC 8CA5636C */ lw $a1, %lo(D_8012636C)($a1) +/* 07D1F0 8007C5F0 012A1021 */ addu $v0, $t1, $t2 +/* 07D1F4 8007C5F4 8C460000 */ lw $a2, ($v0) +/* 07D1F8 8007C5F8 8C4B0004 */ lw $t3, 4($v0) +/* 07D1FC 8007C5FC 90AC001D */ lbu $t4, 0x1d($a1) +/* 07D200 8007C600 8FA40018 */ lw $a0, 0x18($sp) +/* 07D204 8007C604 1180000A */ beqz $t4, .L8007C630 +/* 07D208 8007C608 01663823 */ subu $a3, $t3, $a2 +/* 07D20C 8007C60C 0C01DB9A */ jal func_80076E68 +/* 07D210 8007C610 24070028 */ li $a3, 40 +/* 07D214 8007C614 3C038012 */ lui $v1, %hi(D_8012636C) # $v1, 0x8012 +/* 07D218 8007C618 8C63636C */ lw $v1, %lo(D_8012636C)($v1) +/* 07D21C 8007C61C 0C03186B */ jal func_800C61AC +/* 07D220 8007C620 24640020 */ addiu $a0, $v1, 0x20 +/* 07D224 8007C624 3C058012 */ lui $a1, %hi(D_8012636C) # $a1, 0x8012 +/* 07D228 8007C628 8CA5636C */ lw $a1, %lo(D_8012636C)($a1) +/* 07D22C 8007C62C 00403825 */ move $a3, $v0 +.L8007C630: +/* 07D230 8007C630 94A30012 */ lhu $v1, 0x12($a1) +/* 07D234 8007C634 00000000 */ nop +/* 07D238 8007C638 00036A03 */ sra $t5, $v1, 8 +/* 07D23C 8007C63C 31AEFFFF */ andi $t6, $t5, 0xffff +/* 07D240 8007C640 000E7880 */ sll $t7, $t6, 2 +/* 07D244 8007C644 01EE7823 */ subu $t7, $t7, $t6 +/* 07D248 8007C648 000F7940 */ sll $t7, $t7, 5 +/* 07D24C 8007C64C 01E71021 */ addu $v0, $t7, $a3 +.L8007C650: +/* 07D250 8007C650 8FBF0014 */ lw $ra, 0x14($sp) +/* 07D254 8007C654 27BD0028 */ addiu $sp, $sp, 0x28 +/* 07D258 8007C658 03E00008 */ jr $ra +/* 07D25C 8007C65C 00000000 */ nop + +/* 07D260 8007C660 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 07D264 8007C664 308F8000 */ andi $t7, $a0, 0x8000 +/* 07D268 8007C668 AFBF003C */ sw $ra, 0x3c($sp) +/* 07D26C 8007C66C AFBE0038 */ sw $fp, 0x38($sp) +/* 07D270 8007C670 AFB70034 */ sw $s7, 0x34($sp) +/* 07D274 8007C674 AFB60030 */ sw $s6, 0x30($sp) +/* 07D278 8007C678 AFB5002C */ sw $s5, 0x2c($sp) +/* 07D27C 8007C67C AFB40028 */ sw $s4, 0x28($sp) +/* 07D280 8007C680 AFB30024 */ sw $s3, 0x24($sp) +/* 07D284 8007C684 AFB20020 */ sw $s2, 0x20($sp) +/* 07D288 8007C688 AFB1001C */ sw $s1, 0x1c($sp) +/* 07D28C 8007C68C AFB00018 */ sw $s0, 0x18($sp) +/* 07D290 8007C690 11E00003 */ beqz $t7, .L8007C6A0 +/* 07D294 8007C694 AFA40040 */ sw $a0, 0x40($sp) +/* 07D298 8007C698 10000065 */ b .L8007C830 +/* 07D29C 8007C69C 00001025 */ move $v0, $zero +.L8007C6A0: +/* 07D2A0 8007C6A0 3C138012 */ lui $s3, %hi(D_80126370) # $s3, 0x8012 +/* 07D2A4 8007C6A4 26736370 */ addiu $s3, %lo(D_80126370) # addiu $s3, $s3, 0x6370 +/* 07D2A8 8007C6A8 8E780000 */ lw $t8, ($s3) +/* 07D2AC 8007C6AC 3C108012 */ lui $s0, %hi(D_80126338) # $s0, 0x8012 +/* 07D2B0 8007C6B0 17000059 */ bnez $t8, .L8007C818 +/* 07D2B4 8007C6B4 26106338 */ addiu $s0, %lo(D_80126338) # addiu $s0, $s0, 0x6338 +/* 07D2B8 8007C6B8 8E040000 */ lw $a0, ($s0) +/* 07D2BC 8007C6BC 3C05FF00 */ lui $a1, (0xFF00FFFF >> 16) # lui $a1, 0xff00 +/* 07D2C0 8007C6C0 0C01C327 */ jal func_80070C9C +/* 07D2C4 8007C6C4 34A5FFFF */ ori $a1, (0xFF00FFFF & 0xFFFF) # ori $a1, $a1, 0xffff +/* 07D2C8 8007C6C8 8E190000 */ lw $t9, ($s0) +/* 07D2CC 8007C6CC AE620000 */ sw $v0, ($s3) +/* 07D2D0 8007C6D0 1B20000B */ blez $t9, .L8007C700 +/* 07D2D4 8007C6D4 0000A025 */ move $s4, $zero +.L8007C6D8: +/* 07D2D8 8007C6D8 8E680000 */ lw $t0, ($s3) +/* 07D2DC 8007C6DC 00000000 */ nop +/* 07D2E0 8007C6E0 01144821 */ addu $t1, $t0, $s4 +/* 07D2E4 8007C6E4 A1200000 */ sb $zero, ($t1) +/* 07D2E8 8007C6E8 8E0A0000 */ lw $t2, ($s0) +/* 07D2EC 8007C6EC 26940001 */ addiu $s4, $s4, 1 +/* 07D2F0 8007C6F0 028A082A */ slt $at, $s4, $t2 +/* 07D2F4 8007C6F4 1420FFF8 */ bnez $at, .L8007C6D8 +/* 07D2F8 8007C6F8 00000000 */ nop +/* 07D2FC 8007C6FC 0000A025 */ move $s4, $zero +.L8007C700: +/* 07D300 8007C700 3C1E8012 */ lui $fp, %hi(D_80126354) # $fp, 0x8012 +/* 07D304 8007C704 27DE6354 */ addiu $fp, %lo(D_80126354) # addiu $fp, $fp, 0x6354 +/* 07D308 8007C708 8FCB0000 */ lw $t3, ($fp) +/* 07D30C 8007C70C 0000A825 */ move $s5, $zero +/* 07D310 8007C710 19600041 */ blez $t3, .L8007C818 +/* 07D314 8007C714 3C178012 */ lui $s7, %hi(D_80126348) # $s7, 0x8012 +/* 07D318 8007C718 3C168012 */ lui $s6, %hi(D_80126350) # $s6, 0x8012 +/* 07D31C 8007C71C 26D66350 */ addiu $s6, %lo(D_80126350) # addiu $s6, $s6, 0x6350 +/* 07D320 8007C720 26F76348 */ addiu $s7, %lo(D_80126348) # addiu $s7, $s7, 0x6348 +/* 07D324 8007C724 24120001 */ li $s2, 1 +.L8007C728: +/* 07D328 8007C728 8EEC0000 */ lw $t4, ($s7) +/* 07D32C 8007C72C 8ED10000 */ lw $s1, ($s6) +/* 07D330 8007C730 01951021 */ addu $v0, $t4, $s5 +/* 07D334 8007C734 8C460000 */ lw $a2, ($v0) +/* 07D338 8007C738 8C4D0004 */ lw $t5, 4($v0) +/* 07D33C 8007C73C 2404000C */ li $a0, 12 +/* 07D340 8007C740 00008025 */ move $s0, $zero +/* 07D344 8007C744 02202825 */ move $a1, $s1 +/* 07D348 8007C748 0C01DB9A */ jal func_80076E68 +/* 07D34C 8007C74C 01A63823 */ subu $a3, $t5, $a2 +/* 07D350 8007C750 862E0002 */ lh $t6, 2($s1) +/* 07D354 8007C754 00000000 */ nop +/* 07D358 8007C758 022E7821 */ addu $t7, $s1, $t6 +/* 07D35C 8007C75C 91E3000C */ lbu $v1, 0xc($t7) +/* 07D360 8007C760 00000000 */ nop +/* 07D364 8007C764 18600027 */ blez $v1, .L8007C804 +/* 07D368 8007C768 30640003 */ andi $a0, $v1, 3 +/* 07D36C 8007C76C 1080000B */ beqz $a0, .L8007C79C +/* 07D370 8007C770 00801025 */ move $v0, $a0 +.L8007C774: +/* 07D374 8007C774 8E780000 */ lw $t8, ($s3) +/* 07D378 8007C778 86390000 */ lh $t9, ($s1) +/* 07D37C 8007C77C 00000000 */ nop +/* 07D380 8007C780 03194021 */ addu $t0, $t8, $t9 +/* 07D384 8007C784 01104821 */ addu $t1, $t0, $s0 +/* 07D388 8007C788 26100001 */ addiu $s0, $s0, 1 +/* 07D38C 8007C78C 1450FFF9 */ bne $v0, $s0, .L8007C774 +/* 07D390 8007C790 A1320000 */ sb $s2, ($t1) +/* 07D394 8007C794 1203001B */ beq $s0, $v1, .L8007C804 +/* 07D398 8007C798 00000000 */ nop +.L8007C79C: +/* 07D39C 8007C79C 8E6A0000 */ lw $t2, ($s3) +/* 07D3A0 8007C7A0 862B0000 */ lh $t3, ($s1) +/* 07D3A4 8007C7A4 00000000 */ nop +/* 07D3A8 8007C7A8 014B6021 */ addu $t4, $t2, $t3 +/* 07D3AC 8007C7AC 01906821 */ addu $t5, $t4, $s0 +/* 07D3B0 8007C7B0 A1B20000 */ sb $s2, ($t5) +/* 07D3B4 8007C7B4 862F0000 */ lh $t7, ($s1) +/* 07D3B8 8007C7B8 8E6E0000 */ lw $t6, ($s3) +/* 07D3BC 8007C7BC 00000000 */ nop +/* 07D3C0 8007C7C0 01CFC021 */ addu $t8, $t6, $t7 +/* 07D3C4 8007C7C4 0310C821 */ addu $t9, $t8, $s0 +/* 07D3C8 8007C7C8 A3320001 */ sb $s2, 1($t9) +/* 07D3CC 8007C7CC 86290000 */ lh $t1, ($s1) +/* 07D3D0 8007C7D0 8E680000 */ lw $t0, ($s3) +/* 07D3D4 8007C7D4 00000000 */ nop +/* 07D3D8 8007C7D8 01095021 */ addu $t2, $t0, $t1 +/* 07D3DC 8007C7DC 01505821 */ addu $t3, $t2, $s0 +/* 07D3E0 8007C7E0 A1720002 */ sb $s2, 2($t3) +/* 07D3E4 8007C7E4 862D0000 */ lh $t5, ($s1) +/* 07D3E8 8007C7E8 8E6C0000 */ lw $t4, ($s3) +/* 07D3EC 8007C7EC 00000000 */ nop +/* 07D3F0 8007C7F0 018D7021 */ addu $t6, $t4, $t5 +/* 07D3F4 8007C7F4 01D07821 */ addu $t7, $t6, $s0 +/* 07D3F8 8007C7F8 26100004 */ addiu $s0, $s0, 4 +/* 07D3FC 8007C7FC 1603FFE7 */ bne $s0, $v1, .L8007C79C +/* 07D400 8007C800 A1F20003 */ sb $s2, 3($t7) +.L8007C804: +/* 07D404 8007C804 8FD80000 */ lw $t8, ($fp) +/* 07D408 8007C808 26940001 */ addiu $s4, $s4, 1 +/* 07D40C 8007C80C 0298082A */ slt $at, $s4, $t8 +/* 07D410 8007C810 1420FFC5 */ bnez $at, .L8007C728 +/* 07D414 8007C814 26B50004 */ addiu $s5, $s5, 4 +.L8007C818: +/* 07D418 8007C818 8E790000 */ lw $t9, ($s3) +/* 07D41C 8007C81C 8FA80040 */ lw $t0, 0x40($sp) +/* 07D420 8007C820 00000000 */ nop +/* 07D424 8007C824 03284821 */ addu $t1, $t9, $t0 +/* 07D428 8007C828 91220000 */ lbu $v0, ($t1) +/* 07D42C 8007C82C 00000000 */ nop +.L8007C830: +/* 07D430 8007C830 8FBF003C */ lw $ra, 0x3c($sp) +/* 07D434 8007C834 8FB00018 */ lw $s0, 0x18($sp) +/* 07D438 8007C838 8FB1001C */ lw $s1, 0x1c($sp) +/* 07D43C 8007C83C 8FB20020 */ lw $s2, 0x20($sp) +/* 07D440 8007C840 8FB30024 */ lw $s3, 0x24($sp) +/* 07D444 8007C844 8FB40028 */ lw $s4, 0x28($sp) +/* 07D448 8007C848 8FB5002C */ lw $s5, 0x2c($sp) +/* 07D44C 8007C84C 8FB60030 */ lw $s6, 0x30($sp) +/* 07D450 8007C850 8FB70034 */ lw $s7, 0x34($sp) +/* 07D454 8007C854 8FBE0038 */ lw $fp, 0x38($sp) +/* 07D458 8007C858 03E00008 */ jr $ra +/* 07D45C 8007C85C 27BD0040 */ addiu $sp, $sp, 0x40 + +/* 07D460 8007C860 04800006 */ bltz $a0, .L8007C87C +/* 07D464 8007C864 3C0E8012 */ lui $t6, %hi(D_80126330) # $t6, 0x8012 +/* 07D468 8007C868 8DCE6330 */ lw $t6, %lo(D_80126330)($t6) +/* 07D46C 8007C86C 3C0F8012 */ lui $t7, 0x8012 +/* 07D470 8007C870 008E082A */ slt $at, $a0, $t6 +/* 07D474 8007C874 14200003 */ bnez $at, .L8007C884 +/* 07D478 8007C878 00000000 */ nop +.L8007C87C: +/* 07D47C 8007C87C 03E00008 */ jr $ra +/* 07D480 8007C880 2402FFFF */ li $v0, -1 + +.L8007C884: +/* 07D484 8007C884 8DEF6328 */ lw $t7, 0x6328($t7) +/* 07D488 8007C888 0004C8C0 */ sll $t9, $a0, 3 +/* 07D48C 8007C88C 01F94021 */ addu $t0, $t7, $t9 +/* 07D490 8007C890 8D020000 */ lw $v0, ($t0) +/* 07D494 8007C894 00000000 */ nop +/* 07D498 8007C898 03E00008 */ jr $ra +/* 07D49C 8007C89C 00000000 */ nop + +/* 07D4A0 8007C8A0 04800006 */ bltz $a0, .L8007C8BC +/* 07D4A4 8007C8A4 3C0E8012 */ lui $t6, %hi(D_80126358) # $t6, 0x8012 +/* 07D4A8 8007C8A8 8DCE6358 */ lw $t6, %lo(D_80126358)($t6) +/* 07D4AC 8007C8AC 3C0F8012 */ lui $t7, 0x8012 +/* 07D4B0 8007C8B0 008E082A */ slt $at, $a0, $t6 +/* 07D4B4 8007C8B4 14200003 */ bnez $at, .L8007C8C4 +/* 07D4B8 8007C8B8 00000000 */ nop +.L8007C8BC: +/* 07D4BC 8007C8BC 03E00008 */ jr $ra +/* 07D4C0 8007C8C0 2402FFFF */ li $v0, -1 + +.L8007C8C4: +/* 07D4C4 8007C8C4 8DEF634C */ lw $t7, 0x634c($t7) +/* 07D4C8 8007C8C8 0004C8C0 */ sll $t9, $a0, 3 +/* 07D4CC 8007C8CC 01F94021 */ addu $t0, $t7, $t9 +/* 07D4D0 8007C8D0 8D020000 */ lw $v0, ($t0) +/* 07D4D4 8007C8D4 00000000 */ nop +/* 07D4D8 8007C8D8 03E00008 */ jr $ra +/* 07D4DC 8007C8DC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_07B870/func_8007C8E0.s b/asm/non_matchings/unknown_07B870/func_8007C8E0.s new file mode 100644 index 00000000..da201170 --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007C8E0.s @@ -0,0 +1,107 @@ +glabel func_8007C8E0 +/* 07D4E0 8007C8E0 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 07D4E4 8007C8E4 AFB00018 */ sw $s0, 0x18($sp) +/* 07D4E8 8007C8E8 00808025 */ move $s0, $a0 +/* 07D4EC 8007C8EC AFBF002C */ sw $ra, 0x2c($sp) +/* 07D4F0 8007C8F0 AFB40028 */ sw $s4, 0x28($sp) +/* 07D4F4 8007C8F4 AFB30024 */ sw $s3, 0x24($sp) +/* 07D4F8 8007C8F8 AFB20020 */ sw $s2, 0x20($sp) +/* 07D4FC 8007C8FC AFB1001C */ sw $s1, 0x1c($sp) +/* 07D500 8007C900 AFA50034 */ sw $a1, 0x34($sp) +/* 07D504 8007C904 AFA60038 */ sw $a2, 0x38($sp) +/* 07D508 8007C908 04800007 */ bltz $a0, .L8007C928 +/* 07D50C 8007C90C AFA7003C */ sw $a3, 0x3c($sp) +/* 07D510 8007C910 3C0E8012 */ lui $t6, %hi(D_80126354) # $t6, 0x8012 +/* 07D514 8007C914 8DCE6354 */ lw $t6, %lo(D_80126354)($t6) +/* 07D518 8007C918 3C088012 */ lui $t0, %hi(D_80126348) # $t0, 0x8012 +/* 07D51C 8007C91C 008E082A */ slt $at, $a0, $t6 +/* 07D520 8007C920 1420000A */ bnez $at, .L8007C94C +/* 07D524 8007C924 00104880 */ sll $t1, $s0, 2 +.L8007C928: +/* 07D528 8007C928 8FAF0034 */ lw $t7, 0x34($sp) +/* 07D52C 8007C92C 00001025 */ move $v0, $zero +/* 07D530 8007C930 ADE00000 */ sw $zero, ($t7) +/* 07D534 8007C934 8FB80038 */ lw $t8, 0x38($sp) +/* 07D538 8007C938 00000000 */ nop +/* 07D53C 8007C93C AF000000 */ sw $zero, ($t8) +/* 07D540 8007C940 8FB9003C */ lw $t9, 0x3c($sp) +/* 07D544 8007C944 10000040 */ b .L8007CA48 +/* 07D548 8007C948 AF200000 */ sw $zero, ($t9) +.L8007C94C: +/* 07D54C 8007C94C 8D086348 */ lw $t0, %lo(D_80126348)($t0) +/* 07D550 8007C950 3C138012 */ lui $s3, %hi(D_80126350) # $s3, 0x8012 +/* 07D554 8007C954 01091021 */ addu $v0, $t0, $t1 +/* 07D558 8007C958 8C460000 */ lw $a2, ($v0) +/* 07D55C 8007C95C 8C4A0004 */ lw $t2, 4($v0) +/* 07D560 8007C960 8E736350 */ lw $s3, %lo(D_80126350)($s3) +/* 07D564 8007C964 2404000C */ li $a0, 12 +/* 07D568 8007C968 01463823 */ subu $a3, $t2, $a2 +/* 07D56C 8007C96C 0C01DB9A */ jal func_80076E68 +/* 07D570 8007C970 02602825 */ move $a1, $s3 +/* 07D574 8007C974 926B000C */ lbu $t3, 0xc($s3) +/* 07D578 8007C978 866C0000 */ lh $t4, ($s3) +/* 07D57C 8007C97C 0C01EB9D */ jal func_8007AE74 +/* 07D580 8007C980 016C2021 */ addu $a0, $t3, $t4 +/* 07D584 8007C984 1040FFE8 */ beqz $v0, .L8007C928 +/* 07D588 8007C988 00402025 */ move $a0, $v0 +/* 07D58C 8007C98C 904D0002 */ lbu $t5, 2($v0) +/* 07D590 8007C990 8FAF0040 */ lw $t7, 0x40($sp) +/* 07D594 8007C994 31AE000F */ andi $t6, $t5, 0xf +/* 07D598 8007C998 0C01ECAF */ jal func_8007B2BC +/* 07D59C 8007C99C ADEE0000 */ sw $t6, ($t7) +/* 07D5A0 8007C9A0 8FB10044 */ lw $s1, 0x44($sp) +/* 07D5A4 8007C9A4 0000A025 */ move $s4, $zero +/* 07D5A8 8007C9A8 AE200000 */ sw $zero, ($s1) +/* 07D5AC 8007C9AC 86630002 */ lh $v1, 2($s3) +/* 07D5B0 8007C9B0 02609025 */ move $s2, $s3 +/* 07D5B4 8007C9B4 1860001A */ blez $v1, .L8007CA20 +/* 07D5B8 8007C9B8 8FAB003C */ lw $t3, 0x3c($sp) +.L8007C9BC: +/* 07D5BC 8007C9BC 9250000C */ lbu $s0, 0xc($s2) +/* 07D5C0 8007C9C0 9258000D */ lbu $t8, 0xd($s2) +/* 07D5C4 8007C9C4 00000000 */ nop +/* 07D5C8 8007C9C8 0218082A */ slt $at, $s0, $t8 +/* 07D5CC 8007C9CC 1020000F */ beqz $at, .L8007CA0C +/* 07D5D0 8007C9D0 00000000 */ nop +.L8007C9D4: +/* 07D5D4 8007C9D4 86790000 */ lh $t9, ($s3) +/* 07D5D8 8007C9D8 0C01F15F */ jal func_8007C57C +/* 07D5DC 8007C9DC 03302021 */ addu $a0, $t9, $s0 +/* 07D5E0 8007C9E0 8E280000 */ lw $t0, ($s1) +/* 07D5E4 8007C9E4 26100001 */ addiu $s0, $s0, 1 +/* 07D5E8 8007C9E8 01024821 */ addu $t1, $t0, $v0 +/* 07D5EC 8007C9EC AE290000 */ sw $t1, ($s1) +/* 07D5F0 8007C9F0 924A000D */ lbu $t2, 0xd($s2) +/* 07D5F4 8007C9F4 00000000 */ nop +/* 07D5F8 8007C9F8 020A082A */ slt $at, $s0, $t2 +/* 07D5FC 8007C9FC 1420FFF5 */ bnez $at, .L8007C9D4 +/* 07D600 8007CA00 00000000 */ nop +/* 07D604 8007CA04 86630002 */ lh $v1, 2($s3) +/* 07D608 8007CA08 00000000 */ nop +.L8007CA0C: +/* 07D60C 8007CA0C 26940001 */ addiu $s4, $s4, 1 +/* 07D610 8007CA10 0283082A */ slt $at, $s4, $v1 +/* 07D614 8007CA14 1420FFE9 */ bnez $at, .L8007C9BC +/* 07D618 8007CA18 26520001 */ addiu $s2, $s2, 1 +/* 07D61C 8007CA1C 8FAB003C */ lw $t3, 0x3c($sp) +.L8007CA20: +/* 07D620 8007CA20 24020001 */ li $v0, 1 +/* 07D624 8007CA24 AD630000 */ sw $v1, ($t3) +/* 07D628 8007CA28 8FAD0034 */ lw $t5, 0x34($sp) +/* 07D62C 8007CA2C 866C0004 */ lh $t4, 4($s3) +/* 07D630 8007CA30 00000000 */ nop +/* 07D634 8007CA34 ADAC0000 */ sw $t4, ($t5) +/* 07D638 8007CA38 8FAF0038 */ lw $t7, 0x38($sp) +/* 07D63C 8007CA3C 866E0006 */ lh $t6, 6($s3) +/* 07D640 8007CA40 00000000 */ nop +/* 07D644 8007CA44 ADEE0000 */ sw $t6, ($t7) +.L8007CA48: +/* 07D648 8007CA48 8FBF002C */ lw $ra, 0x2c($sp) +/* 07D64C 8007CA4C 8FB00018 */ lw $s0, 0x18($sp) +/* 07D650 8007CA50 8FB1001C */ lw $s1, 0x1c($sp) +/* 07D654 8007CA54 8FB20020 */ lw $s2, 0x20($sp) +/* 07D658 8007CA58 8FB30024 */ lw $s3, 0x24($sp) +/* 07D65C 8007CA5C 8FB40028 */ lw $s4, 0x28($sp) +/* 07D660 8007CA60 03E00008 */ jr $ra +/* 07D664 8007CA64 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_07B870/func_8007CA68.s b/asm/non_matchings/unknown_07B870/func_8007CA68.s new file mode 100644 index 00000000..b5e9a2cb --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007CA68.s @@ -0,0 +1,161 @@ +glabel func_8007CA68 +/* 07D668 8007CA68 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 07D66C 8007CA6C AFB1001C */ sw $s1, 0x1c($sp) +/* 07D670 8007CA70 AFB00018 */ sw $s0, 0x18($sp) +/* 07D674 8007CA74 00808025 */ move $s0, $a0 +/* 07D678 8007CA78 00A08825 */ move $s1, $a1 +/* 07D67C 8007CA7C AFBF003C */ sw $ra, 0x3c($sp) +/* 07D680 8007CA80 AFBE0038 */ sw $fp, 0x38($sp) +/* 07D684 8007CA84 AFB70034 */ sw $s7, 0x34($sp) +/* 07D688 8007CA88 AFB60030 */ sw $s6, 0x30($sp) +/* 07D68C 8007CA8C AFB5002C */ sw $s5, 0x2c($sp) +/* 07D690 8007CA90 AFB40028 */ sw $s4, 0x28($sp) +/* 07D694 8007CA94 AFB30024 */ sw $s3, 0x24($sp) +/* 07D698 8007CA98 AFB20020 */ sw $s2, 0x20($sp) +/* 07D69C 8007CA9C AFA60048 */ sw $a2, 0x48($sp) +/* 07D6A0 8007CAA0 04800007 */ bltz $a0, .L8007CAC0 +/* 07D6A4 8007CAA4 AFA7004C */ sw $a3, 0x4c($sp) +/* 07D6A8 8007CAA8 3C0E8012 */ lui $t6, %hi(D_80126354) # $t6, 0x8012 +/* 07D6AC 8007CAAC 8DCE6354 */ lw $t6, %lo(D_80126354)($t6) +/* 07D6B0 8007CAB0 3C198012 */ lui $t9, %hi(D_80126348) # $t9, 0x8012 +/* 07D6B4 8007CAB4 008E082A */ slt $at, $a0, $t6 +/* 07D6B8 8007CAB8 14200007 */ bnez $at, .L8007CAD8 +/* 07D6BC 8007CABC 00104080 */ sll $t0, $s0, 2 +.L8007CAC0: +/* 07D6C0 8007CAC0 8FAF0048 */ lw $t7, 0x48($sp) +/* 07D6C4 8007CAC4 00000000 */ nop +/* 07D6C8 8007CAC8 ADE00000 */ sw $zero, ($t7) +/* 07D6CC 8007CACC 8FB8004C */ lw $t8, 0x4c($sp) +/* 07D6D0 8007CAD0 1000006B */ b .L8007CC80 +/* 07D6D4 8007CAD4 AF000000 */ sw $zero, ($t8) +.L8007CAD8: +/* 07D6D8 8007CAD8 8F396348 */ lw $t9, %lo(D_80126348)($t9) +/* 07D6DC 8007CADC 3C128012 */ lui $s2, %hi(D_80126350) # $s2, 0x8012 +/* 07D6E0 8007CAE0 03281021 */ addu $v0, $t9, $t0 +/* 07D6E4 8007CAE4 8C460000 */ lw $a2, ($v0) +/* 07D6E8 8007CAE8 8C490004 */ lw $t1, 4($v0) +/* 07D6EC 8007CAEC 8E526350 */ lw $s2, %lo(D_80126350)($s2) +/* 07D6F0 8007CAF0 2404000C */ li $a0, 12 +/* 07D6F4 8007CAF4 01263823 */ subu $a3, $t1, $a2 +/* 07D6F8 8007CAF8 0C01DB9A */ jal func_80076E68 +/* 07D6FC 8007CAFC 02402825 */ move $a1, $s2 +/* 07D700 8007CB00 864A0002 */ lh $t2, 2($s2) +/* 07D704 8007CB04 8FB70050 */ lw $s7, 0x50($sp) +/* 07D708 8007CB08 0151082A */ slt $at, $t2, $s1 +/* 07D70C 8007CB0C 10200009 */ beqz $at, .L8007CB34 +/* 07D710 8007CB10 0251F021 */ addu $fp, $s2, $s1 +.L8007CB14: +/* 07D714 8007CB14 8FAB0048 */ lw $t3, 0x48($sp) +.L8007CB18: +/* 07D718 8007CB18 00000000 */ nop +/* 07D71C 8007CB1C AD600000 */ sw $zero, ($t3) +/* 07D720 8007CB20 8FAC004C */ lw $t4, 0x4c($sp) +/* 07D724 8007CB24 00000000 */ nop +/* 07D728 8007CB28 AD800000 */ sw $zero, ($t4) +/* 07D72C 8007CB2C 10000054 */ b .L8007CC80 +/* 07D730 8007CB30 AEE00000 */ sw $zero, ($s7) +.L8007CB34: +/* 07D734 8007CB34 93CD000C */ lbu $t5, 0xc($fp) +/* 07D738 8007CB38 864E0000 */ lh $t6, ($s2) +/* 07D73C 8007CB3C 0C01EB9D */ jal func_8007AE74 +/* 07D740 8007CB40 01AE2021 */ addu $a0, $t5, $t6 +/* 07D744 8007CB44 14400004 */ bnez $v0, .L8007CB58 +/* 07D748 8007CB48 00408025 */ move $s0, $v0 +/* 07D74C 8007CB4C 8FB70050 */ lw $s7, 0x50($sp) +/* 07D750 8007CB50 1000FFF1 */ b .L8007CB18 +/* 07D754 8007CB54 8FAB0048 */ lw $t3, 0x48($sp) +.L8007CB58: +/* 07D758 8007CB58 93CF000C */ lbu $t7, 0xc($fp) +/* 07D75C 8007CB5C 86580000 */ lh $t8, ($s2) +/* 07D760 8007CB60 0C01F15F */ jal func_8007C57C +/* 07D764 8007CB64 01F82021 */ addu $a0, $t7, $t8 +/* 07D768 8007CB68 8FB70050 */ lw $s7, 0x50($sp) +/* 07D76C 8007CB6C 02002025 */ move $a0, $s0 +/* 07D770 8007CB70 AEE20000 */ sw $v0, ($s7) +/* 07D774 8007CB74 86480004 */ lh $t0, 4($s2) +/* 07D778 8007CB78 82190003 */ lb $t9, 3($s0) +/* 07D77C 8007CB7C 820A0004 */ lb $t2, 4($s0) +/* 07D780 8007CB80 86490006 */ lh $t1, 6($s2) +/* 07D784 8007CB84 92050000 */ lbu $a1, ($s0) +/* 07D788 8007CB88 92060001 */ lbu $a2, 1($s0) +/* 07D78C 8007CB8C 03289823 */ subu $s3, $t9, $t0 +/* 07D790 8007CB90 012AA023 */ subu $s4, $t1, $t2 +/* 07D794 8007CB94 0265A821 */ addu $s5, $s3, $a1 +/* 07D798 8007CB98 0C01ECAF */ jal func_8007B2BC +/* 07D79C 8007CB9C 0286B023 */ subu $s6, $s4, $a2 +/* 07D7A0 8007CBA0 93D1000C */ lbu $s1, 0xc($fp) +/* 07D7A4 8007CBA4 93CB000D */ lbu $t3, 0xd($fp) +/* 07D7A8 8007CBA8 26310001 */ addiu $s1, $s1, 1 +/* 07D7AC 8007CBAC 022B082A */ slt $at, $s1, $t3 +/* 07D7B0 8007CBB0 1020002E */ beqz $at, .L8007CC6C +/* 07D7B4 8007CBB4 8FAC0048 */ lw $t4, 0x48($sp) +.L8007CBB8: +/* 07D7B8 8007CBB8 864C0000 */ lh $t4, ($s2) +/* 07D7BC 8007CBBC 0C01EB9D */ jal func_8007AE74 +/* 07D7C0 8007CBC0 01912021 */ addu $a0, $t4, $s1 +/* 07D7C4 8007CBC4 1040FFD3 */ beqz $v0, .L8007CB14 +/* 07D7C8 8007CBC8 00408025 */ move $s0, $v0 +/* 07D7CC 8007CBCC 864D0000 */ lh $t5, ($s2) +/* 07D7D0 8007CBD0 0C01F15F */ jal func_8007C57C +/* 07D7D4 8007CBD4 01B12021 */ addu $a0, $t5, $s1 +/* 07D7D8 8007CBD8 8EEE0000 */ lw $t6, ($s7) +/* 07D7DC 8007CBDC 00000000 */ nop +/* 07D7E0 8007CBE0 01C27821 */ addu $t7, $t6, $v0 +/* 07D7E4 8007CBE4 AEEF0000 */ sw $t7, ($s7) +/* 07D7E8 8007CBE8 86590004 */ lh $t9, 4($s2) +/* 07D7EC 8007CBEC 82180003 */ lb $t8, 3($s0) +/* 07D7F0 8007CBF0 82090004 */ lb $t1, 4($s0) +/* 07D7F4 8007CBF4 86480006 */ lh $t0, 6($s2) +/* 07D7F8 8007CBF8 03191823 */ subu $v1, $t8, $t9 +/* 07D7FC 8007CBFC 92050000 */ lbu $a1, ($s0) +/* 07D800 8007CC00 92060001 */ lbu $a2, 1($s0) +/* 07D804 8007CC04 0073082A */ slt $at, $v1, $s3 +/* 07D808 8007CC08 10200002 */ beqz $at, .L8007CC14 +/* 07D80C 8007CC0C 01092023 */ subu $a0, $t0, $t1 +/* 07D810 8007CC10 00609825 */ move $s3, $v1 +.L8007CC14: +/* 07D814 8007CC14 00651021 */ addu $v0, $v1, $a1 +/* 07D818 8007CC18 02A2082A */ slt $at, $s5, $v0 +/* 07D81C 8007CC1C 10200002 */ beqz $at, .L8007CC28 +/* 07D820 8007CC20 00000000 */ nop +/* 07D824 8007CC24 0040A825 */ move $s5, $v0 +.L8007CC28: +/* 07D828 8007CC28 00861023 */ subu $v0, $a0, $a2 +/* 07D82C 8007CC2C 0056082A */ slt $at, $v0, $s6 +/* 07D830 8007CC30 10200003 */ beqz $at, .L8007CC40 +/* 07D834 8007CC34 0284082A */ slt $at, $s4, $a0 +/* 07D838 8007CC38 0040B025 */ move $s6, $v0 +/* 07D83C 8007CC3C 0284082A */ slt $at, $s4, $a0 +.L8007CC40: +/* 07D840 8007CC40 10200002 */ beqz $at, .L8007CC4C +/* 07D844 8007CC44 00000000 */ nop +/* 07D848 8007CC48 0080A025 */ move $s4, $a0 +.L8007CC4C: +/* 07D84C 8007CC4C 0C01ECAF */ jal func_8007B2BC +/* 07D850 8007CC50 02002025 */ move $a0, $s0 +/* 07D854 8007CC54 93CA000D */ lbu $t2, 0xd($fp) +/* 07D858 8007CC58 26310001 */ addiu $s1, $s1, 1 +/* 07D85C 8007CC5C 022A082A */ slt $at, $s1, $t2 +/* 07D860 8007CC60 1420FFD5 */ bnez $at, .L8007CBB8 +/* 07D864 8007CC64 00000000 */ nop +/* 07D868 8007CC68 8FAC0048 */ lw $t4, 0x48($sp) +.L8007CC6C: +/* 07D86C 8007CC6C 02B35823 */ subu $t3, $s5, $s3 +/* 07D870 8007CC70 AD8B0000 */ sw $t3, ($t4) +/* 07D874 8007CC74 8FAE004C */ lw $t6, 0x4c($sp) +/* 07D878 8007CC78 02966823 */ subu $t5, $s4, $s6 +/* 07D87C 8007CC7C ADCD0000 */ sw $t5, ($t6) +.L8007CC80: +/* 07D880 8007CC80 8FBF003C */ lw $ra, 0x3c($sp) +/* 07D884 8007CC84 8FB00018 */ lw $s0, 0x18($sp) +/* 07D888 8007CC88 8FB1001C */ lw $s1, 0x1c($sp) +/* 07D88C 8007CC8C 8FB20020 */ lw $s2, 0x20($sp) +/* 07D890 8007CC90 8FB30024 */ lw $s3, 0x24($sp) +/* 07D894 8007CC94 8FB40028 */ lw $s4, 0x28($sp) +/* 07D898 8007CC98 8FB5002C */ lw $s5, 0x2c($sp) +/* 07D89C 8007CC9C 8FB60030 */ lw $s6, 0x30($sp) +/* 07D8A0 8007CCA0 8FB70034 */ lw $s7, 0x34($sp) +/* 07D8A4 8007CCA4 8FBE0038 */ lw $fp, 0x38($sp) +/* 07D8A8 8007CCA8 03E00008 */ jr $ra +/* 07D8AC 8007CCAC 27BD0040 */ addiu $sp, $sp, 0x40 + diff --git a/asm/non_matchings/unknown_07B870/func_8007CCB0.s b/asm/non_matchings/unknown_07B870/func_8007CCB0.s new file mode 100644 index 00000000..34f6824c --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007CCB0.s @@ -0,0 +1,76 @@ +glabel func_8007CCB0 +/* 07D8B0 8007CCB0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 07D8B4 8007CCB4 AFB2001C */ sw $s2, 0x1c($sp) +/* 07D8B8 8007CCB8 00809025 */ move $s2, $a0 +/* 07D8BC 8007CCBC AFBF0024 */ sw $ra, 0x24($sp) +/* 07D8C0 8007CCC0 AFB30020 */ sw $s3, 0x20($sp) +/* 07D8C4 8007CCC4 AFB10018 */ sw $s1, 0x18($sp) +/* 07D8C8 8007CCC8 10800036 */ beqz $a0, .L8007CDA4 +/* 07D8CC 8007CCCC AFB00014 */ sw $s0, 0x14($sp) +/* 07D8D0 8007CCD0 848E0004 */ lh $t6, 4($a0) +/* 07D8D4 8007CCD4 3C038012 */ lui $v1, %hi(D_80126358) # $v1, 0x8012 +/* 07D8D8 8007CCD8 25CFFFFF */ addiu $t7, $t6, -1 +/* 07D8DC 8007CCDC A48F0004 */ sh $t7, 4($a0) +/* 07D8E0 8007CCE0 84980004 */ lh $t8, 4($a0) +/* 07D8E4 8007CCE4 00000000 */ nop +/* 07D8E8 8007CCE8 1F00002F */ bgtz $t8, .L8007CDA8 +/* 07D8EC 8007CCEC 8FBF0024 */ lw $ra, 0x24($sp) +/* 07D8F0 8007CCF0 8C636358 */ lw $v1, %lo(D_80126358)($v1) +/* 07D8F4 8007CCF4 00001025 */ move $v0, $zero +/* 07D8F8 8007CCF8 1860002A */ blez $v1, .L8007CDA4 +/* 07D8FC 8007CCFC 3C048012 */ lui $a0, %hi(D_8012634C) # $a0, 0x8012 +/* 07D900 8007CD00 8C84634C */ lw $a0, %lo(D_8012634C)($a0) +/* 07D904 8007CD04 00000000 */ nop +/* 07D908 8007CD08 00409825 */ move $s3, $v0 +.L8007CD0C: +/* 07D90C 8007CD0C 0013C8C0 */ sll $t9, $s3, 3 +/* 07D910 8007CD10 00994021 */ addu $t0, $a0, $t9 +/* 07D914 8007CD14 8D090004 */ lw $t1, 4($t0) +/* 07D918 8007CD18 03209825 */ move $s3, $t9 +/* 07D91C 8007CD1C 1649001E */ bne $s2, $t1, .L8007CD98 +/* 07D920 8007CD20 24420001 */ addiu $v0, $v0, 1 +/* 07D924 8007CD24 864A0002 */ lh $t2, 2($s2) +/* 07D928 8007CD28 00008025 */ move $s0, $zero +/* 07D92C 8007CD2C 1940000C */ blez $t2, .L8007CD60 +/* 07D930 8007CD30 00008825 */ move $s1, $zero +.L8007CD34: +/* 07D934 8007CD34 8E4B0008 */ lw $t3, 8($s2) +/* 07D938 8007CD38 00000000 */ nop +/* 07D93C 8007CD3C 01716021 */ addu $t4, $t3, $s1 +/* 07D940 8007CD40 8D840000 */ lw $a0, ($t4) +/* 07D944 8007CD44 0C01ECAF */ jal func_8007B2BC +/* 07D948 8007CD48 00000000 */ nop +/* 07D94C 8007CD4C 864D0002 */ lh $t5, 2($s2) +/* 07D950 8007CD50 26100001 */ addiu $s0, $s0, 1 +/* 07D954 8007CD54 020D082A */ slt $at, $s0, $t5 +/* 07D958 8007CD58 1420FFF6 */ bnez $at, .L8007CD34 +/* 07D95C 8007CD5C 26310004 */ addiu $s1, $s1, 4 +.L8007CD60: +/* 07D960 8007CD60 0C01C450 */ jal func_80071140 +/* 07D964 8007CD64 02402025 */ move $a0, $s2 +/* 07D968 8007CD68 3C028012 */ lui $v0, %hi(D_8012634C) # $v0, 0x8012 +/* 07D96C 8007CD6C 2442634C */ addiu $v0, %lo(D_8012634C) # addiu $v0, $v0, 0x634c +/* 07D970 8007CD70 8C4E0000 */ lw $t6, ($v0) +/* 07D974 8007CD74 2403FFFF */ li $v1, -1 +/* 07D978 8007CD78 01D37821 */ addu $t7, $t6, $s3 +/* 07D97C 8007CD7C ADE30000 */ sw $v1, ($t7) +/* 07D980 8007CD80 8C580000 */ lw $t8, ($v0) +/* 07D984 8007CD84 00000000 */ nop +/* 07D988 8007CD88 0313C821 */ addu $t9, $t8, $s3 +/* 07D98C 8007CD8C 10000005 */ b .L8007CDA4 +/* 07D990 8007CD90 AF230004 */ sw $v1, 4($t9) +/* 07D994 8007CD94 24420001 */ addiu $v0, $v0, 1 +.L8007CD98: +/* 07D998 8007CD98 0043082A */ slt $at, $v0, $v1 +/* 07D99C 8007CD9C 1420FFDB */ bnez $at, .L8007CD0C +/* 07D9A0 8007CDA0 00409825 */ move $s3, $v0 +.L8007CDA4: +/* 07D9A4 8007CDA4 8FBF0024 */ lw $ra, 0x24($sp) +.L8007CDA8: +/* 07D9A8 8007CDA8 8FB00014 */ lw $s0, 0x14($sp) +/* 07D9AC 8007CDAC 8FB10018 */ lw $s1, 0x18($sp) +/* 07D9B0 8007CDB0 8FB2001C */ lw $s2, 0x1c($sp) +/* 07D9B4 8007CDB4 8FB30020 */ lw $s3, 0x20($sp) +/* 07D9B8 8007CDB8 03E00008 */ jr $ra +/* 07D9BC 8007CDBC 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_07B870/func_8007CDC0.s b/asm/non_matchings/unknown_07B870/func_8007CDC0.s new file mode 100644 index 00000000..bcf9417c --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007CDC0.s @@ -0,0 +1,213 @@ +glabel func_8007CDC0 +/* 07D9C0 8007CDC0 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 07D9C4 8007CDC4 AFBF002C */ sw $ra, 0x2c($sp) +/* 07D9C8 8007CDC8 AFBE0028 */ sw $fp, 0x28($sp) +/* 07D9CC 8007CDCC AFB70024 */ sw $s7, 0x24($sp) +/* 07D9D0 8007CDD0 AFB60020 */ sw $s6, 0x20($sp) +/* 07D9D4 8007CDD4 AFB5001C */ sw $s5, 0x1c($sp) +/* 07D9D8 8007CDD8 AFB40018 */ sw $s4, 0x18($sp) +/* 07D9DC 8007CDDC AFB30014 */ sw $s3, 0x14($sp) +/* 07D9E0 8007CDE0 AFB20010 */ sw $s2, 0x10($sp) +/* 07D9E4 8007CDE4 AFB1000C */ sw $s1, 0xc($sp) +/* 07D9E8 8007CDE8 AFB00008 */ sw $s0, 8($sp) +/* 07D9EC 8007CDEC 848E0004 */ lh $t6, 4($a0) +/* 07D9F0 8007CDF0 00863821 */ addu $a3, $a0, $a2 +/* 07D9F4 8007CDF4 AFAE0034 */ sw $t6, 0x34($sp) +/* 07D9F8 8007CDF8 848F0006 */ lh $t7, 6($a0) +/* 07D9FC 8007CDFC 3C098012 */ lui $t1, %hi(D_80126364) # $t1, 0x8012 +/* 07DA00 8007CE00 AFAF0030 */ sw $t7, 0x30($sp) +/* 07DA04 8007CE04 90F2000C */ lbu $s2, 0xc($a3) +/* 07DA08 8007CE08 90FE000D */ lbu $fp, 0xd($a3) +/* 07DA0C 8007CE0C 3C028012 */ lui $v0, %hi(D_80126360) # $v0, 0x8012 +/* 07DA10 8007CE10 3C038012 */ lui $v1, %hi(D_80126368) # $v1, 0x8012 +/* 07DA14 8007CE14 8D296364 */ lw $t1, %lo(D_80126364)($t1) +/* 07DA18 8007CE18 8C426360 */ lw $v0, %lo(D_80126360)($v0) +/* 07DA1C 8007CE1C 8C636368 */ lw $v1, %lo(D_80126368)($v1) +/* 07DA20 8007CE20 025E082A */ slt $at, $s2, $fp +/* 07DA24 8007CE24 1020000A */ beqz $at, .L8007CE50 +/* 07DA28 8007CE28 00005025 */ move $t2, $zero +/* 07DA2C 8007CE2C 8CB80008 */ lw $t8, 8($a1) +/* 07DA30 8007CE30 0012C880 */ sll $t9, $s2, 2 +/* 07DA34 8007CE34 03197021 */ addu $t6, $t8, $t9 +/* 07DA38 8007CE38 8DC40000 */ lw $a0, ($t6) +/* 07DA3C 8007CE3C 00000000 */ nop +/* 07DA40 8007CE40 84980006 */ lh $t8, 6($a0) +/* 07DA44 8007CE44 00000000 */ nop +/* 07DA48 8007CE48 3319003B */ andi $t9, $t8, 0x3b +/* 07DA4C 8007CE4C A4B90006 */ sh $t9, 6($a1) +.L8007CE50: +/* 07DA50 8007CE50 025E082A */ slt $at, $s2, $fp +/* 07DA54 8007CE54 1020008C */ beqz $at, .L8007D088 +/* 07DA58 8007CE58 00006825 */ move $t5, $zero +/* 07DA5C 8007CE5C AFA50044 */ sw $a1, 0x44($sp) +/* 07DA60 8007CE60 240500FF */ li $a1, 255 +/* 07DA64 8007CE64 00129880 */ sll $s3, $s2, 2 +/* 07DA68 8007CE68 3C1F0700 */ lui $ra, 0x700 +/* 07DA6C 8007CE6C 24170040 */ li $s7, 64 +/* 07DA70 8007CE70 24150001 */ li $s5, 1 +/* 07DA74 8007CE74 3C148000 */ lui $s4, 0x8000 +/* 07DA78 8007CE78 8FAE0044 */ lw $t6, 0x44($sp) +.L8007CE7C: +/* 07DA7C 8007CE7C 0040B025 */ move $s6, $v0 +/* 07DA80 8007CE80 8DCF0008 */ lw $t7, 8($t6) +/* 07DA84 8007CE84 8FAE0034 */ lw $t6, 0x34($sp) +/* 07DA88 8007CE88 01F3C021 */ addu $t8, $t7, $s3 +/* 07DA8C 8007CE8C 8F040000 */ lw $a0, ($t8) +/* 07DA90 8007CE90 8FAF0030 */ lw $t7, 0x30($sp) +/* 07DA94 8007CE94 90900000 */ lbu $s0, ($a0) +/* 07DA98 8007CE98 90910001 */ lbu $s1, 1($a0) +/* 07DA9C 8007CE9C 80990003 */ lb $t9, 3($a0) +/* 07DAA0 8007CEA0 80980004 */ lb $t8, 4($a0) +/* 07DAA4 8007CEA4 032E4023 */ subu $t0, $t9, $t6 +/* 07DAA8 8007CEA8 01F83023 */ subu $a2, $t7, $t8 +/* 07DAAC 8007CEAC 01105821 */ addu $t3, $t0, $s0 +/* 07DAB0 8007CEB0 24C7FFFF */ addiu $a3, $a2, -1 +/* 07DAB4 8007CEB4 256BFFFF */ addiu $t3, $t3, -1 +/* 07DAB8 8007CEB8 00D16023 */ subu $t4, $a2, $s1 +/* 07DABC 8007CEBC A4480000 */ sh $t0, ($v0) +/* 07DAC0 8007CEC0 A4470002 */ sh $a3, 2($v0) +/* 07DAC4 8007CEC4 A4400004 */ sh $zero, 4($v0) +/* 07DAC8 8007CEC8 A0450006 */ sb $a1, 6($v0) +/* 07DACC 8007CECC A0450007 */ sb $a1, 7($v0) +/* 07DAD0 8007CED0 A0450008 */ sb $a1, 8($v0) +/* 07DAD4 8007CED4 A0450009 */ sb $a1, 9($v0) +/* 07DAD8 8007CED8 A44B000A */ sh $t3, 0xa($v0) +/* 07DADC 8007CEDC A447000C */ sh $a3, 0xc($v0) +/* 07DAE0 8007CEE0 A440000E */ sh $zero, 0xe($v0) +/* 07DAE4 8007CEE4 A0450010 */ sb $a1, 0x10($v0) +/* 07DAE8 8007CEE8 A0450011 */ sb $a1, 0x11($v0) +/* 07DAEC 8007CEEC A0450012 */ sb $a1, 0x12($v0) +/* 07DAF0 8007CEF0 A0450013 */ sb $a1, 0x13($v0) +/* 07DAF4 8007CEF4 A44B0014 */ sh $t3, 0x14($v0) +/* 07DAF8 8007CEF8 A44C0016 */ sh $t4, 0x16($v0) +/* 07DAFC 8007CEFC A4400018 */ sh $zero, 0x18($v0) +/* 07DB00 8007CF00 A045001A */ sb $a1, 0x1a($v0) +/* 07DB04 8007CF04 A045001B */ sb $a1, 0x1b($v0) +/* 07DB08 8007CF08 A045001C */ sb $a1, 0x1c($v0) +/* 07DB0C 8007CF0C A045001D */ sb $a1, 0x1d($v0) +/* 07DB10 8007CF10 A448001E */ sh $t0, 0x1e($v0) +/* 07DB14 8007CF14 A44C0020 */ sh $t4, 0x20($v0) +/* 07DB18 8007CF18 A4400022 */ sh $zero, 0x22($v0) +/* 07DB1C 8007CF1C A0450024 */ sb $a1, 0x24($v0) +/* 07DB20 8007CF20 A0450025 */ sb $a1, 0x25($v0) +/* 07DB24 8007CF24 A0450026 */ sb $a1, 0x26($v0) +/* 07DB28 8007CF28 A0450027 */ sb $a1, 0x27($v0) +/* 07DB2C 8007CF2C 8487000A */ lh $a3, 0xa($a0) +/* 07DB30 8007CF30 01203025 */ move $a2, $t1 +/* 07DB34 8007CF34 30F900FF */ andi $t9, $a3, 0xff +/* 07DB38 8007CF38 00197400 */ sll $t6, $t9, 0x10 +/* 07DB3C 8007CF3C 0007C0C0 */ sll $t8, $a3, 3 +/* 07DB40 8007CF40 3319FFFF */ andi $t9, $t8, 0xffff +/* 07DB44 8007CF44 01DF7825 */ or $t7, $t6, $ra +/* 07DB48 8007CF48 01F97025 */ or $t6, $t7, $t9 +/* 07DB4C 8007CF4C ACCE0000 */ sw $t6, ($a2) +/* 07DB50 8007CF50 8C98000C */ lw $t8, 0xc($a0) +/* 07DB54 8007CF54 24420028 */ addiu $v0, $v0, 0x28 +/* 07DB58 8007CF58 03147821 */ addu $t7, $t8, $s4 +/* 07DB5C 8007CF5C ACCF0004 */ sw $t7, 4($a2) +/* 07DB60 8007CF60 15A0001A */ bnez $t5, .L8007CFCC +/* 07DB64 8007CF64 25290008 */ addiu $t1, $t1, 8 +/* 07DB68 8007CF68 03D24023 */ subu $t0, $fp, $s2 +/* 07DB6C 8007CF6C 29010006 */ slti $at, $t0, 6 +/* 07DB70 8007CF70 14200002 */ bnez $at, .L8007CF7C +/* 07DB74 8007CF74 01203025 */ move $a2, $t1 +/* 07DB78 8007CF78 24080005 */ li $t0, 5 +.L8007CF7C: +/* 07DB7C 8007CF7C 00082080 */ sll $a0, $t0, 2 +/* 07DB80 8007CF80 2499FFFF */ addiu $t9, $a0, -1 +/* 07DB84 8007CF84 02D43821 */ addu $a3, $s6, $s4 +/* 07DB88 8007CF88 30F80006 */ andi $t8, $a3, 6 +/* 07DB8C 8007CF8C 001970C0 */ sll $t6, $t9, 3 +/* 07DB90 8007CF90 01D87825 */ or $t7, $t6, $t8 +/* 07DB94 8007CF94 35F90001 */ ori $t9, $t7, 1 +/* 07DB98 8007CF98 332E00FF */ andi $t6, $t9, 0xff +/* 07DB9C 8007CF9C 000EC400 */ sll $t8, $t6, 0x10 +/* 07DBA0 8007CFA0 0004C8C0 */ sll $t9, $a0, 3 +/* 07DBA4 8007CFA4 3C010400 */ lui $at, 0x400 +/* 07DBA8 8007CFA8 03017825 */ or $t7, $t8, $at +/* 07DBAC 8007CFAC 03247021 */ addu $t6, $t9, $a0 +/* 07DBB0 8007CFB0 000EC040 */ sll $t8, $t6, 1 +/* 07DBB4 8007CFB4 27190008 */ addiu $t9, $t8, 8 +/* 07DBB8 8007CFB8 332EFFFF */ andi $t6, $t9, 0xffff +/* 07DBBC 8007CFBC 01EEC025 */ or $t8, $t7, $t6 +/* 07DBC0 8007CFC0 ACD80000 */ sw $t8, ($a2) +/* 07DBC4 8007CFC4 ACC70004 */ sw $a3, 4($a2) +/* 07DBC8 8007CFC8 25290008 */ addiu $t1, $t1, 8 +.L8007CFCC: +/* 07DBCC 8007CFCC 3C190511 */ lui $t9, (0x05110020 >> 16) # lui $t9, 0x511 +/* 07DBD0 8007CFD0 37390020 */ ori $t9, (0x05110020 & 0xFFFF) # ori $t9, $t9, 0x20 +/* 07DBD4 8007CFD4 01202025 */ move $a0, $t1 +/* 07DBD8 8007CFD8 AC990000 */ sw $t9, ($a0) +/* 07DBDC 8007CFDC 00747821 */ addu $t7, $v1, $s4 +/* 07DBE0 8007CFE0 AC8F0004 */ sw $t7, 4($a0) +/* 07DBE4 8007CFE4 2606FFFF */ addiu $a2, $s0, -1 +/* 07DBE8 8007CFE8 2627FFFF */ addiu $a3, $s1, -1 +/* 07DBEC 8007CFEC 25480003 */ addiu $t0, $t2, 3 +/* 07DBF0 8007CFF0 254B0001 */ addiu $t3, $t2, 1 +/* 07DBF4 8007CFF4 0006C140 */ sll $t8, $a2, 5 +/* 07DBF8 8007CFF8 0007C940 */ sll $t9, $a3, 5 +/* 07DBFC 8007CFFC 25AD0001 */ addiu $t5, $t5, 1 +/* 07DC00 8007D000 254E0002 */ addiu $t6, $t2, 2 +/* 07DC04 8007D004 25440004 */ addiu $a0, $t2, 4 +/* 07DC08 8007D008 29A10005 */ slti $at, $t5, 5 +/* 07DC0C 8007D00C 25290008 */ addiu $t1, $t1, 8 +/* 07DC10 8007D010 A0770000 */ sb $s7, ($v1) +/* 07DC14 8007D014 A0680001 */ sb $t0, 1($v1) +/* 07DC18 8007D018 A06E0002 */ sb $t6, 2($v1) +/* 07DC1C 8007D01C A06B0003 */ sb $t3, 3($v1) +/* 07DC20 8007D020 A4780004 */ sh $t8, 4($v1) +/* 07DC24 8007D024 A4790006 */ sh $t9, 6($v1) +/* 07DC28 8007D028 A4780008 */ sh $t8, 8($v1) +/* 07DC2C 8007D02C A460000A */ sh $zero, 0xa($v1) +/* 07DC30 8007D030 A475000C */ sh $s5, 0xc($v1) +/* 07DC34 8007D034 A460000E */ sh $zero, 0xe($v1) +/* 07DC38 8007D038 A0770010 */ sb $s7, 0x10($v1) +/* 07DC3C 8007D03C A0640011 */ sb $a0, 0x11($v1) +/* 07DC40 8007D040 A0680012 */ sb $t0, 0x12($v1) +/* 07DC44 8007D044 A06B0013 */ sb $t3, 0x13($v1) +/* 07DC48 8007D048 A4750014 */ sh $s5, 0x14($v1) +/* 07DC4C 8007D04C A4790016 */ sh $t9, 0x16($v1) +/* 07DC50 8007D050 A4780018 */ sh $t8, 0x18($v1) +/* 07DC54 8007D054 A479001A */ sh $t9, 0x1a($v1) +/* 07DC58 8007D058 A475001C */ sh $s5, 0x1c($v1) +/* 07DC5C 8007D05C A460001E */ sh $zero, 0x1e($v1) +/* 07DC60 8007D060 24630020 */ addiu $v1, $v1, 0x20 +/* 07DC64 8007D064 00805025 */ move $t2, $a0 +/* 07DC68 8007D068 26520001 */ addiu $s2, $s2, 1 +/* 07DC6C 8007D06C 14200003 */ bnez $at, .L8007D07C +/* 07DC70 8007D070 26730004 */ addiu $s3, $s3, 4 +/* 07DC74 8007D074 00006825 */ move $t5, $zero +/* 07DC78 8007D078 00005025 */ move $t2, $zero +.L8007D07C: +/* 07DC7C 8007D07C 025E082A */ slt $at, $s2, $fp +/* 07DC80 8007D080 1420FF7E */ bnez $at, .L8007CE7C +/* 07DC84 8007D084 8FAE0044 */ lw $t6, 0x44($sp) +.L8007D088: +/* 07DC88 8007D088 01202025 */ move $a0, $t1 +/* 07DC8C 8007D08C 3C0FE700 */ lui $t7, 0xe700 +/* 07DC90 8007D090 AC8F0000 */ sw $t7, ($a0) +/* 07DC94 8007D094 AC800004 */ sw $zero, 4($a0) +/* 07DC98 8007D098 25250008 */ addiu $a1, $t1, 8 +/* 07DC9C 8007D09C 3C0EB800 */ lui $t6, 0xb800 +/* 07DCA0 8007D0A0 ACAE0000 */ sw $t6, ($a1) +/* 07DCA4 8007D0A4 ACA00004 */ sw $zero, 4($a1) +/* 07DCA8 8007D0A8 24A90008 */ addiu $t1, $a1, 8 +/* 07DCAC 8007D0AC 3C018012 */ lui $at, %hi(D_80126364) # $at, 0x8012 +/* 07DCB0 8007D0B0 AC296364 */ sw $t1, %lo(D_80126364)($at) +/* 07DCB4 8007D0B4 3C018012 */ lui $at, %hi(D_80126360) # $at, 0x8012 +/* 07DCB8 8007D0B8 8FBF002C */ lw $ra, 0x2c($sp) +/* 07DCBC 8007D0BC AC226360 */ sw $v0, %lo(D_80126360)($at) +/* 07DCC0 8007D0C0 3C018012 */ lui $at, %hi(D_80126368) # $at, 0x8012 +/* 07DCC4 8007D0C4 8FBE0028 */ lw $fp, 0x28($sp) +/* 07DCC8 8007D0C8 8FB70024 */ lw $s7, 0x24($sp) +/* 07DCCC 8007D0CC 8FB60020 */ lw $s6, 0x20($sp) +/* 07DCD0 8007D0D0 8FB5001C */ lw $s5, 0x1c($sp) +/* 07DCD4 8007D0D4 8FB40018 */ lw $s4, 0x18($sp) +/* 07DCD8 8007D0D8 8FB30014 */ lw $s3, 0x14($sp) +/* 07DCDC 8007D0DC 8FB20010 */ lw $s2, 0x10($sp) +/* 07DCE0 8007D0E0 8FB1000C */ lw $s1, 0xc($sp) +/* 07DCE4 8007D0E4 8FB00008 */ lw $s0, 8($sp) +/* 07DCE8 8007D0E8 AC236368 */ sw $v1, %lo(D_80126368)($at) +/* 07DCEC 8007D0EC 03E00008 */ jr $ra +/* 07DCF0 8007D0F0 27BD0040 */ addiu $sp, $sp, 0x40 + diff --git a/asm/non_matchings/unknown_07B870/func_8007D0F4.s b/asm/non_matchings/unknown_07B870/func_8007D0F4.s new file mode 100644 index 00000000..82fd4f67 --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007D0F4.s @@ -0,0 +1,2060 @@ +glabel func_8007D0F4 +/* 07DCF4 8007D0F4 27BDFD80 */ addiu $sp, $sp, -0x280 +/* 07DCF8 8007D0F8 AFBF001C */ sw $ra, 0x1c($sp) +/* 07DCFC 8007D0FC AFB10018 */ sw $s1, 0x18($sp) +/* 07DD00 8007D100 AFB00014 */ sw $s0, 0x14($sp) +/* 07DD04 8007D104 AFA50284 */ sw $a1, 0x284($sp) +/* 07DD08 8007D108 90830002 */ lbu $v1, 2($a0) +/* 07DD0C 8007D10C AC85000C */ sw $a1, 0xc($a0) +/* 07DD10 8007D110 00037903 */ sra $t7, $v1, 4 +/* 07DD14 8007D114 31F8000F */ andi $t8, $t7, 0xf +/* 07DD18 8007D118 AFB80278 */ sw $t8, 0x278($sp) +/* 07DD1C 8007D11C 00808825 */ move $s1, $a0 +/* 07DD20 8007D120 90900001 */ lbu $s0, 1($a0) +/* 07DD24 8007D124 908D0000 */ lbu $t5, ($a0) +/* 07DD28 8007D128 00A03825 */ move $a3, $a1 +/* 07DD2C 8007D12C 24020001 */ li $v0, 1 +/* 07DD30 8007D130 240A0001 */ li $t2, 1 +/* 07DD34 8007D134 240B0001 */ li $t3, 1 +/* 07DD38 8007D138 24080001 */ li $t0, 1 +/* 07DD3C 8007D13C 24090001 */ li $t1, 1 +/* 07DD40 8007D140 24040007 */ li $a0, 7 +/* 07DD44 8007D144 00003025 */ move $a2, $zero +/* 07DD48 8007D148 306C000F */ andi $t4, $v1, 0xf +.L8007D14C: +/* 07DD4C 8007D14C 004D082A */ slt $at, $v0, $t5 +/* 07DD50 8007D150 10200003 */ beqz $at, .L8007D160 +/* 07DD54 8007D154 00027840 */ sll $t7, $v0, 1 +/* 07DD58 8007D158 10000004 */ b .L8007D16C +/* 07DD5C 8007D15C 24CA0001 */ addiu $t2, $a2, 1 +.L8007D160: +/* 07DD60 8007D160 144D0003 */ bne $v0, $t5, .L8007D170 +/* 07DD64 8007D164 0050082A */ slt $at, $v0, $s0 +/* 07DD68 8007D168 00004025 */ move $t0, $zero +.L8007D16C: +/* 07DD6C 8007D16C 0050082A */ slt $at, $v0, $s0 +.L8007D170: +/* 07DD70 8007D170 10200003 */ beqz $at, .L8007D180 +/* 07DD74 8007D174 24C30001 */ addiu $v1, $a2, 1 +/* 07DD78 8007D178 10000004 */ b .L8007D18C +/* 07DD7C 8007D17C 00605825 */ move $t3, $v1 +.L8007D180: +/* 07DD80 8007D180 14500003 */ bne $v0, $s0, .L8007D190 +/* 07DD84 8007D184 00603025 */ move $a2, $v1 +/* 07DD88 8007D188 00004825 */ move $t1, $zero +.L8007D18C: +/* 07DD8C 8007D18C 00603025 */ move $a2, $v1 +.L8007D190: +/* 07DD90 8007D190 1464FFEE */ bne $v1, $a0, .L8007D14C +/* 07DD94 8007D194 01E01025 */ move $v0, $t7 +/* 07DD98 8007D198 15000006 */ bnez $t0, .L8007D1B4 +/* 07DD9C 8007D19C 24190002 */ li $t9, 2 +/* 07DDA0 8007D1A0 86220006 */ lh $v0, 6($s1) +/* 07DDA4 8007D1A4 00000000 */ nop +/* 07DDA8 8007D1A8 30580040 */ andi $t8, $v0, 0x40 +/* 07DDAC 8007D1AC 13000005 */ beqz $t8, .L8007D1C4 +/* 07DDB0 8007D1B0 00000000 */ nop +.L8007D1B4: +/* 07DDB4 8007D1B4 AFB9026C */ sw $t9, 0x26c($sp) +/* 07DDB8 8007D1B8 86220006 */ lh $v0, 6($s1) +/* 07DDBC 8007D1BC 10000002 */ b .L8007D1C8 +/* 07DDC0 8007D1C0 00005025 */ move $t2, $zero +.L8007D1C4: +/* 07DDC4 8007D1C4 AFA0026C */ sw $zero, 0x26c($sp) +.L8007D1C8: +/* 07DDC8 8007D1C8 15200003 */ bnez $t1, .L8007D1D8 +/* 07DDCC 8007D1CC 30580400 */ andi $t8, $v0, 0x400 +/* 07DDD0 8007D1D0 304E0080 */ andi $t6, $v0, 0x80 +/* 07DDD4 8007D1D4 11C00004 */ beqz $t6, .L8007D1E8 +.L8007D1D8: +/* 07DDD8 8007D1D8 240F0002 */ li $t7, 2 +/* 07DDDC 8007D1DC AFAF0268 */ sw $t7, 0x268($sp) +/* 07DDE0 8007D1E0 10000002 */ b .L8007D1EC +/* 07DDE4 8007D1E4 00005825 */ move $t3, $zero +.L8007D1E8: +/* 07DDE8 8007D1E8 AFA00268 */ sw $zero, 0x268($sp) +.L8007D1EC: +/* 07DDEC 8007D1EC 17000417 */ bnez $t8, .L8007E24C +/* 07DDF0 8007D1F0 00000000 */ nop +/* 07DDF4 8007D1F4 AFAA0264 */ sw $t2, 0x264($sp) +/* 07DDF8 8007D1F8 AFAB0260 */ sw $t3, 0x260($sp) +/* 07DDFC 8007D1FC 1580007B */ bnez $t4, .L8007D3EC +/* 07DE00 8007D200 AFAC027C */ sw $t4, 0x27c($sp) +/* 07DE04 8007D204 8FAA0284 */ lw $t2, 0x284($sp) +/* 07DE08 8007D208 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 +/* 07DE0C 8007D20C 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 +/* 07DE10 8007D210 02217021 */ addu $t6, $s1, $at +/* 07DE14 8007D214 3C19FD18 */ lui $t9, 0xfd18 +/* 07DE18 8007D218 25470008 */ addiu $a3, $t2, 8 +/* 07DE1C 8007D21C 00E04025 */ move $t0, $a3 +/* 07DE20 8007D220 3C0FF518 */ lui $t7, 0xf518 +/* 07DE24 8007D224 AD590000 */ sw $t9, ($t2) +/* 07DE28 8007D228 AD4E0004 */ sw $t6, 4($t2) +/* 07DE2C 8007D22C 01B00019 */ multu $t5, $s0 +/* 07DE30 8007D230 AD0F0000 */ sw $t7, ($t0) +/* 07DE34 8007D234 8FA20268 */ lw $v0, 0x268($sp) +/* 07DE38 8007D238 8FA5026C */ lw $a1, 0x26c($sp) +/* 07DE3C 8007D23C 8FA30260 */ lw $v1, 0x260($sp) +/* 07DE40 8007D240 30580003 */ andi $t8, $v0, 3 +/* 07DE44 8007D244 00181480 */ sll $v0, $t8, 0x12 +/* 07DE48 8007D248 8FA60264 */ lw $a2, 0x264($sp) +/* 07DE4C 8007D24C 30B80003 */ andi $t8, $a1, 3 +/* 07DE50 8007D250 306E000F */ andi $t6, $v1, 0xf +/* 07DE54 8007D254 000E1B80 */ sll $v1, $t6, 0xe +/* 07DE58 8007D258 00182A00 */ sll $a1, $t8, 8 +/* 07DE5C 8007D25C 3C010700 */ lui $at, 0x700 +/* 07DE60 8007D260 0041C025 */ or $t8, $v0, $at +/* 07DE64 8007D264 30CE000F */ andi $t6, $a2, 0xf +/* 07DE68 8007D268 000E3100 */ sll $a2, $t6, 4 +/* 07DE6C 8007D26C 0303C825 */ or $t9, $t8, $v1 +/* 07DE70 8007D270 03257025 */ or $t6, $t9, $a1 +/* 07DE74 8007D274 01C67825 */ or $t7, $t6, $a2 +/* 07DE78 8007D278 24E70008 */ addiu $a3, $a3, 8 +/* 07DE7C 8007D27C 00E04825 */ move $t1, $a3 +/* 07DE80 8007D280 AD0F0004 */ sw $t7, 4($t0) +/* 07DE84 8007D284 00004012 */ mflo $t0 +/* 07DE88 8007D288 2508FFFF */ addiu $t0, $t0, -1 +/* 07DE8C 8007D28C 24E70008 */ addiu $a3, $a3, 8 +/* 07DE90 8007D290 3C18E600 */ lui $t8, 0xe600 +/* 07DE94 8007D294 AD380000 */ sw $t8, ($t1) +/* 07DE98 8007D298 00E06025 */ move $t4, $a3 +/* 07DE9C 8007D29C 290107FF */ slti $at, $t0, 0x7ff +/* 07DEA0 8007D2A0 AD200004 */ sw $zero, 4($t1) +/* 07DEA4 8007D2A4 3C19F300 */ lui $t9, 0xf300 +/* 07DEA8 8007D2A8 AD990000 */ sw $t9, ($t4) +/* 07DEAC 8007D2AC 10200003 */ beqz $at, .L8007D2BC +/* 07DEB0 8007D2B0 24E70008 */ addiu $a3, $a3, 8 +/* 07DEB4 8007D2B4 10000002 */ b .L8007D2C0 +/* 07DEB8 8007D2B8 0100F825 */ move $ra, $t0 +.L8007D2BC: +/* 07DEBC 8007D2BC 241F07FF */ li $ra, 2047 +.L8007D2C0: +/* 07DEC0 8007D2C0 000D4080 */ sll $t0, $t5, 2 +/* 07DEC4 8007D2C4 05010003 */ bgez $t0, .L8007D2D4 +/* 07DEC8 8007D2C8 000870C3 */ sra $t6, $t0, 3 +/* 07DECC 8007D2CC 25010007 */ addiu $at, $t0, 7 +/* 07DED0 8007D2D0 000170C3 */ sra $t6, $at, 3 +.L8007D2D4: +/* 07DED4 8007D2D4 1DC00003 */ bgtz $t6, .L8007D2E4 +/* 07DED8 8007D2D8 01C04025 */ move $t0, $t6 +/* 07DEDC 8007D2DC 10000002 */ b .L8007D2E8 +/* 07DEE0 8007D2E0 240A0001 */ li $t2, 1 +.L8007D2E4: +/* 07DEE4 8007D2E4 01005025 */ move $t2, $t0 +.L8007D2E8: +/* 07DEE8 8007D2E8 1D000003 */ bgtz $t0, .L8007D2F8 +/* 07DEEC 8007D2EC 254F07FF */ addiu $t7, $t2, 0x7ff +/* 07DEF0 8007D2F0 10000002 */ b .L8007D2FC +/* 07DEF4 8007D2F4 24040001 */ li $a0, 1 +.L8007D2F8: +/* 07DEF8 8007D2F8 01002025 */ move $a0, $t0 +.L8007D2FC: +/* 07DEFC 8007D2FC 01E4001A */ div $zero, $t7, $a0 +/* 07DF00 8007D300 00E04025 */ move $t0, $a3 +/* 07DF04 8007D304 14800002 */ bnez $a0, .L8007D310 +/* 07DF08 8007D308 00000000 */ nop +/* 07DF0C 8007D30C 0007000D */ break 7 +.L8007D310: +/* 07DF10 8007D310 2401FFFF */ li $at, -1 +/* 07DF14 8007D314 14810004 */ bne $a0, $at, .L8007D328 +/* 07DF18 8007D318 3C018000 */ lui $at, 0x8000 +/* 07DF1C 8007D31C 15E10002 */ bne $t7, $at, .L8007D328 +/* 07DF20 8007D320 00000000 */ nop +/* 07DF24 8007D324 0006000D */ break 6 +.L8007D328: +/* 07DF28 8007D328 3C010700 */ lui $at, 0x700 +/* 07DF2C 8007D32C 33EF0FFF */ andi $t7, $ra, 0xfff +/* 07DF30 8007D330 24E70008 */ addiu $a3, $a3, 8 +/* 07DF34 8007D334 00E04825 */ move $t1, $a3 +/* 07DF38 8007D338 24E70008 */ addiu $a3, $a3, 8 +/* 07DF3C 8007D33C 00E05825 */ move $t3, $a3 +/* 07DF40 8007D340 24E70008 */ addiu $a3, $a3, 8 +/* 07DF44 8007D344 0000C012 */ mflo $t8 +/* 07DF48 8007D348 33190FFF */ andi $t9, $t8, 0xfff +/* 07DF4C 8007D34C 03217025 */ or $t6, $t9, $at +/* 07DF50 8007D350 000FC300 */ sll $t8, $t7, 0xc +/* 07DF54 8007D354 01D8C825 */ or $t9, $t6, $t8 +/* 07DF58 8007D358 AD990004 */ sw $t9, 4($t4) +/* 07DF5C 8007D35C 000D7040 */ sll $t6, $t5, 1 +/* 07DF60 8007D360 25D80007 */ addiu $t8, $t6, 7 +/* 07DF64 8007D364 3C0FE700 */ lui $t7, 0xe700 +/* 07DF68 8007D368 AD0F0000 */ sw $t7, ($t0) +/* 07DF6C 8007D36C 0018C8C3 */ sra $t9, $t8, 3 +/* 07DF70 8007D370 332F01FF */ andi $t7, $t9, 0x1ff +/* 07DF74 8007D374 000F7240 */ sll $t6, $t7, 9 +/* 07DF78 8007D378 0043C825 */ or $t9, $v0, $v1 +/* 07DF7C 8007D37C 3C01F518 */ lui $at, 0xf518 +/* 07DF80 8007D380 01C1C025 */ or $t8, $t6, $at +/* 07DF84 8007D384 03257825 */ or $t7, $t9, $a1 +/* 07DF88 8007D388 01E67025 */ or $t6, $t7, $a2 +/* 07DF8C 8007D38C AD000004 */ sw $zero, 4($t0) +/* 07DF90 8007D390 25B9FFFF */ addiu $t9, $t5, -1 +/* 07DF94 8007D394 00197880 */ sll $t7, $t9, 2 +/* 07DF98 8007D398 AD2E0004 */ sw $t6, 4($t1) +/* 07DF9C 8007D39C AD380000 */ sw $t8, ($t1) +/* 07DFA0 8007D3A0 3C18F200 */ lui $t8, 0xf200 +/* 07DFA4 8007D3A4 31EE0FFF */ andi $t6, $t7, 0xfff +/* 07DFA8 8007D3A8 AD780000 */ sw $t8, ($t3) +/* 07DFAC 8007D3AC 2619FFFF */ addiu $t9, $s0, -1 +/* 07DFB0 8007D3B0 00197880 */ sll $t7, $t9, 2 +/* 07DFB4 8007D3B4 000EC300 */ sll $t8, $t6, 0xc +/* 07DFB8 8007D3B8 31EE0FFF */ andi $t6, $t7, 0xfff +/* 07DFBC 8007D3BC 030EC825 */ or $t9, $t8, $t6 +/* 07DFC0 8007D3C0 AD790004 */ sw $t9, 4($t3) +/* 07DFC4 8007D3C4 8FAF0278 */ lw $t7, 0x278($sp) +/* 07DFC8 8007D3C8 24010002 */ li $at, 2 +/* 07DFCC 8007D3CC 11E00003 */ beqz $t7, .L8007D3DC +/* 07DFD0 8007D3D0 00000000 */ nop +/* 07DFD4 8007D3D4 15E10006 */ bne $t7, $at, .L8007D3F0 +/* 07DFD8 8007D3D8 8FB9027C */ lw $t9, 0x27c($sp) +.L8007D3DC: +/* 07DFDC 8007D3DC 86380006 */ lh $t8, 6($s1) +/* 07DFE0 8007D3E0 00000000 */ nop +/* 07DFE4 8007D3E4 370E0004 */ ori $t6, $t8, 4 +/* 07DFE8 8007D3E8 A62E0006 */ sh $t6, 6($s1) +.L8007D3EC: +/* 07DFEC 8007D3EC 8FB9027C */ lw $t9, 0x27c($sp) +.L8007D3F0: +/* 07DFF0 8007D3F0 24010001 */ li $at, 1 +/* 07DFF4 8007D3F4 17210080 */ bne $t9, $at, .L8007D5F8 +/* 07DFF8 8007D3F8 00E02025 */ move $a0, $a3 +/* 07DFFC 8007D3FC 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 +/* 07E000 8007D400 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 +/* 07E004 8007D404 0221C021 */ addu $t8, $s1, $at +/* 07E008 8007D408 AC980004 */ sw $t8, 4($a0) +/* 07E00C 8007D40C 24E70008 */ addiu $a3, $a3, 8 +/* 07E010 8007D410 3C0FFD10 */ lui $t7, 0xfd10 +/* 07E014 8007D414 AC8F0000 */ sw $t7, ($a0) +/* 07E018 8007D418 00E04825 */ move $t1, $a3 +/* 07E01C 8007D41C 3C0EF510 */ lui $t6, 0xf510 +/* 07E020 8007D420 AD2E0000 */ sw $t6, ($t1) +/* 07E024 8007D424 8FA20268 */ lw $v0, 0x268($sp) +/* 07E028 8007D428 8FA30260 */ lw $v1, 0x260($sp) +/* 07E02C 8007D42C 8FA5026C */ lw $a1, 0x26c($sp) +/* 07E030 8007D430 30590003 */ andi $t9, $v0, 3 +/* 07E034 8007D434 8FA60264 */ lw $a2, 0x264($sp) +/* 07E038 8007D438 00191480 */ sll $v0, $t9, 0x12 +/* 07E03C 8007D43C 3078000F */ andi $t8, $v1, 0xf +/* 07E040 8007D440 00181B80 */ sll $v1, $t8, 0xe +/* 07E044 8007D444 30B90003 */ andi $t9, $a1, 3 +/* 07E048 8007D448 00192A00 */ sll $a1, $t9, 8 +/* 07E04C 8007D44C 3C010700 */ lui $at, 0x700 +/* 07E050 8007D450 30D8000F */ andi $t8, $a2, 0xf +/* 07E054 8007D454 00187100 */ sll $t6, $t8, 4 +/* 07E058 8007D458 0041C825 */ or $t9, $v0, $at +/* 07E05C 8007D45C 03237825 */ or $t7, $t9, $v1 +/* 07E060 8007D460 01E5C025 */ or $t8, $t7, $a1 +/* 07E064 8007D464 01C03025 */ move $a2, $t6 +/* 07E068 8007D468 01B00019 */ multu $t5, $s0 +/* 07E06C 8007D46C 030E7025 */ or $t6, $t8, $t6 +/* 07E070 8007D470 24E70008 */ addiu $a3, $a3, 8 +/* 07E074 8007D474 00E05025 */ move $t2, $a3 +/* 07E078 8007D478 AD2E0004 */ sw $t6, 4($t1) +/* 07E07C 8007D47C 3C19E600 */ lui $t9, 0xe600 +/* 07E080 8007D480 000D6040 */ sll $t4, $t5, 1 +/* 07E084 8007D484 25980007 */ addiu $t8, $t4, 7 +/* 07E088 8007D488 AD590000 */ sw $t9, ($t2) +/* 07E08C 8007D48C 24E70008 */ addiu $a3, $a3, 8 +/* 07E090 8007D490 00E05825 */ move $t3, $a3 +/* 07E094 8007D494 001870C3 */ sra $t6, $t8, 3 +/* 07E098 8007D498 AD400004 */ sw $zero, 4($t2) +/* 07E09C 8007D49C 3C0FF300 */ lui $t7, 0xf300 +/* 07E0A0 8007D4A0 AD6F0000 */ sw $t7, ($t3) +/* 07E0A4 8007D4A4 31D901FF */ andi $t9, $t6, 0x1ff +/* 07E0A8 8007D4A8 00197A40 */ sll $t7, $t9, 9 +/* 07E0AC 8007D4AC 0043C025 */ or $t8, $v0, $v1 +/* 07E0B0 8007D4B0 03057025 */ or $t6, $t8, $a1 +/* 07E0B4 8007D4B4 AFAF0030 */ sw $t7, 0x30($sp) +/* 07E0B8 8007D4B8 25AFFFFF */ addiu $t7, $t5, -1 +/* 07E0BC 8007D4BC 000FC080 */ sll $t8, $t7, 2 +/* 07E0C0 8007D4C0 01C6C825 */ or $t9, $t6, $a2 +/* 07E0C4 8007D4C4 330E0FFF */ andi $t6, $t8, 0xfff +/* 07E0C8 8007D4C8 AFB9002C */ sw $t9, 0x2c($sp) +/* 07E0CC 8007D4CC 260FFFFF */ addiu $t7, $s0, -1 +/* 07E0D0 8007D4D0 000FC080 */ sll $t8, $t7, 2 +/* 07E0D4 8007D4D4 000ECB00 */ sll $t9, $t6, 0xc +/* 07E0D8 8007D4D8 00004012 */ mflo $t0 +/* 07E0DC 8007D4DC 2508FFFF */ addiu $t0, $t0, -1 +/* 07E0E0 8007D4E0 330E0FFF */ andi $t6, $t8, 0xfff +/* 07E0E4 8007D4E4 032E7825 */ or $t7, $t9, $t6 +/* 07E0E8 8007D4E8 290107FF */ slti $at, $t0, 0x7ff +/* 07E0EC 8007D4EC AFAF0028 */ sw $t7, 0x28($sp) +/* 07E0F0 8007D4F0 AFAB021C */ sw $t3, 0x21c($sp) +/* 07E0F4 8007D4F4 10200003 */ beqz $at, .L8007D504 +/* 07E0F8 8007D4F8 24E70008 */ addiu $a3, $a3, 8 +/* 07E0FC 8007D4FC 10000002 */ b .L8007D508 +/* 07E100 8007D500 0100F825 */ move $ra, $t0 +.L8007D504: +/* 07E104 8007D504 241F07FF */ li $ra, 2047 +.L8007D508: +/* 07E108 8007D508 05810003 */ bgez $t4, .L8007D518 +/* 07E10C 8007D50C 000C58C3 */ sra $t3, $t4, 3 +/* 07E110 8007D510 25810007 */ addiu $at, $t4, 7 +/* 07E114 8007D514 000158C3 */ sra $t3, $at, 3 +.L8007D518: +/* 07E118 8007D518 1D600003 */ bgtz $t3, .L8007D528 +/* 07E11C 8007D51C 01605025 */ move $t2, $t3 +/* 07E120 8007D520 10000001 */ b .L8007D528 +/* 07E124 8007D524 240A0001 */ li $t2, 1 +.L8007D528: +/* 07E128 8007D528 1D600003 */ bgtz $t3, .L8007D538 +/* 07E12C 8007D52C 255807FF */ addiu $t8, $t2, 0x7ff +/* 07E130 8007D530 10000002 */ b .L8007D53C +/* 07E134 8007D534 24040001 */ li $a0, 1 +.L8007D538: +/* 07E138 8007D538 01602025 */ move $a0, $t3 +.L8007D53C: +/* 07E13C 8007D53C 0304001A */ div $zero, $t8, $a0 +/* 07E140 8007D540 00E01025 */ move $v0, $a3 +/* 07E144 8007D544 14800002 */ bnez $a0, .L8007D550 +/* 07E148 8007D548 00000000 */ nop +/* 07E14C 8007D54C 0007000D */ break 7 +.L8007D550: +/* 07E150 8007D550 2401FFFF */ li $at, -1 +/* 07E154 8007D554 14810004 */ bne $a0, $at, .L8007D568 +/* 07E158 8007D558 3C018000 */ lui $at, 0x8000 +/* 07E15C 8007D55C 17010002 */ bne $t8, $at, .L8007D568 +/* 07E160 8007D560 00000000 */ nop +/* 07E164 8007D564 0006000D */ break 6 +.L8007D568: +/* 07E168 8007D568 33F80FFF */ andi $t8, $ra, 0xfff +/* 07E16C 8007D56C 3C010700 */ lui $at, 0x700 +/* 07E170 8007D570 24E70008 */ addiu $a3, $a3, 8 +/* 07E174 8007D574 00E01825 */ move $v1, $a3 +/* 07E178 8007D578 24E70008 */ addiu $a3, $a3, 8 +/* 07E17C 8007D57C 00E02825 */ move $a1, $a3 +/* 07E180 8007D580 24E70008 */ addiu $a3, $a3, 8 +/* 07E184 8007D584 0000C812 */ mflo $t9 +/* 07E188 8007D588 332E0FFF */ andi $t6, $t9, 0xfff +/* 07E18C 8007D58C 0018CB00 */ sll $t9, $t8, 0xc +/* 07E190 8007D590 8FB8021C */ lw $t8, 0x21c($sp) +/* 07E194 8007D594 01C17825 */ or $t7, $t6, $at +/* 07E198 8007D598 01F97025 */ or $t6, $t7, $t9 +/* 07E19C 8007D59C AF0E0004 */ sw $t6, 4($t8) +/* 07E1A0 8007D5A0 3C0FE700 */ lui $t7, 0xe700 +/* 07E1A4 8007D5A4 AC4F0000 */ sw $t7, ($v0) +/* 07E1A8 8007D5A8 AC400004 */ sw $zero, 4($v0) +/* 07E1AC 8007D5AC 8FB90030 */ lw $t9, 0x30($sp) +/* 07E1B0 8007D5B0 3C01F510 */ lui $at, 0xf510 +/* 07E1B4 8007D5B4 03217025 */ or $t6, $t9, $at +/* 07E1B8 8007D5B8 AC6E0000 */ sw $t6, ($v1) +/* 07E1BC 8007D5BC 8FB8002C */ lw $t8, 0x2c($sp) +/* 07E1C0 8007D5C0 3C0FF200 */ lui $t7, 0xf200 +/* 07E1C4 8007D5C4 AC780004 */ sw $t8, 4($v1) +/* 07E1C8 8007D5C8 ACAF0000 */ sw $t7, ($a1) +/* 07E1CC 8007D5CC 8FB90028 */ lw $t9, 0x28($sp) +/* 07E1D0 8007D5D0 8FA20278 */ lw $v0, 0x278($sp) +/* 07E1D4 8007D5D4 24010002 */ li $at, 2 +/* 07E1D8 8007D5D8 10400003 */ beqz $v0, .L8007D5E8 +/* 07E1DC 8007D5DC ACB90004 */ sw $t9, 4($a1) +/* 07E1E0 8007D5E0 14410006 */ bne $v0, $at, .L8007D5FC +/* 07E1E4 8007D5E4 8FAF027C */ lw $t7, 0x27c($sp) +.L8007D5E8: +/* 07E1E8 8007D5E8 862E0006 */ lh $t6, 6($s1) +/* 07E1EC 8007D5EC 00000000 */ nop +/* 07E1F0 8007D5F0 35D80004 */ ori $t8, $t6, 4 +/* 07E1F4 8007D5F4 A6380006 */ sh $t8, 6($s1) +.L8007D5F8: +/* 07E1F8 8007D5F8 8FAF027C */ lw $t7, 0x27c($sp) +.L8007D5FC: +/* 07E1FC 8007D5FC 24010007 */ li $at, 7 +/* 07E200 8007D600 15E100A8 */ bne $t7, $at, .L8007D8A4 +/* 07E204 8007D604 8FAE027C */ lw $t6, 0x27c($sp) +/* 07E208 8007D608 8FA20268 */ lw $v0, 0x268($sp) +/* 07E20C 8007D60C 8FA30260 */ lw $v1, 0x260($sp) +/* 07E210 8007D610 8FA5026C */ lw $a1, 0x26c($sp) +/* 07E214 8007D614 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 +/* 07E218 8007D618 304E0003 */ andi $t6, $v0, 3 +/* 07E21C 8007D61C 000E1480 */ sll $v0, $t6, 0x12 +/* 07E220 8007D620 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 +/* 07E224 8007D624 8FA60264 */ lw $a2, 0x264($sp) +/* 07E228 8007D628 0221C821 */ addu $t9, $s1, $at +/* 07E22C 8007D62C 306F000F */ andi $t7, $v1, 0xf +/* 07E230 8007D630 30AE0003 */ andi $t6, $a1, 3 +/* 07E234 8007D634 01B00019 */ multu $t5, $s0 +/* 07E238 8007D638 000E2A00 */ sll $a1, $t6, 8 +/* 07E23C 8007D63C 000F1B80 */ sll $v1, $t7, 0xe +/* 07E240 8007D640 3C010700 */ lui $at, 0x700 +/* 07E244 8007D644 00417025 */ or $t6, $v0, $at +/* 07E248 8007D648 30CF000F */ andi $t7, $a2, 0xf +/* 07E24C 8007D64C 000F3100 */ sll $a2, $t7, 4 +/* 07E250 8007D650 01C3C025 */ or $t8, $t6, $v1 +/* 07E254 8007D654 86240008 */ lh $a0, 8($s1) +/* 07E258 8007D658 AFB90048 */ sw $t9, 0x48($sp) +/* 07E25C 8007D65C 03057825 */ or $t7, $t8, $a1 +/* 07E260 8007D660 01E6C825 */ or $t9, $t7, $a2 +/* 07E264 8007D664 00437025 */ or $t6, $v0, $v1 +/* 07E268 8007D668 01C5C025 */ or $t8, $t6, $a1 +/* 07E26C 8007D66C AFB90034 */ sw $t9, 0x34($sp) +/* 07E270 8007D670 25B9FFFF */ addiu $t9, $t5, -1 +/* 07E274 8007D674 00197080 */ sll $t6, $t9, 2 +/* 07E278 8007D678 03067825 */ or $t7, $t8, $a2 +/* 07E27C 8007D67C 31D80FFF */ andi $t8, $t6, 0xfff +/* 07E280 8007D680 AFAF002C */ sw $t7, 0x2c($sp) +/* 07E284 8007D684 2619FFFF */ addiu $t9, $s0, -1 +/* 07E288 8007D688 00197080 */ sll $t6, $t9, 2 +/* 07E28C 8007D68C 00187B00 */ sll $t7, $t8, 0xc +/* 07E290 8007D690 31D80FFF */ andi $t8, $t6, 0xfff +/* 07E294 8007D694 01F8C825 */ or $t9, $t7, $t8 +/* 07E298 8007D698 00005012 */ mflo $t2 +/* 07E29C 8007D69C AFAA0030 */ sw $t2, 0x30($sp) +/* 07E2A0 8007D6A0 AFB90028 */ sw $t9, 0x28($sp) +/* 07E2A4 8007D6A4 AFAD0274 */ sw $t5, 0x274($sp) +/* 07E2A8 8007D6A8 0C01FBD9 */ jal func_8007EF64 +/* 07E2AC 8007D6AC AFA70248 */ sw $a3, 0x248($sp) +/* 07E2B0 8007D6B0 8FA70248 */ lw $a3, 0x248($sp) +/* 07E2B4 8007D6B4 8FAA0030 */ lw $t2, 0x30($sp) +/* 07E2B8 8007D6B8 8FAD0274 */ lw $t5, 0x274($sp) +/* 07E2BC 8007D6BC 3C0EFD50 */ lui $t6, 0xfd50 +/* 07E2C0 8007D6C0 00E01825 */ move $v1, $a3 +/* 07E2C4 8007D6C4 AC6E0000 */ sw $t6, ($v1) +/* 07E2C8 8007D6C8 8FAF0048 */ lw $t7, 0x48($sp) +/* 07E2CC 8007D6CC 24E70008 */ addiu $a3, $a3, 8 +/* 07E2D0 8007D6D0 00E02025 */ move $a0, $a3 +/* 07E2D4 8007D6D4 3C18F550 */ lui $t8, 0xf550 +/* 07E2D8 8007D6D8 AC6F0004 */ sw $t7, 4($v1) +/* 07E2DC 8007D6DC AC980000 */ sw $t8, ($a0) +/* 07E2E0 8007D6E0 8FB90034 */ lw $t9, 0x34($sp) +/* 07E2E4 8007D6E4 24E70008 */ addiu $a3, $a3, 8 +/* 07E2E8 8007D6E8 00E02825 */ move $a1, $a3 +/* 07E2EC 8007D6EC 25480003 */ addiu $t0, $t2, 3 +/* 07E2F0 8007D6F0 0008C083 */ sra $t8, $t0, 2 +/* 07E2F4 8007D6F4 AC990004 */ sw $t9, 4($a0) +/* 07E2F8 8007D6F8 2708FFFF */ addiu $t0, $t8, -1 +/* 07E2FC 8007D6FC 24E70008 */ addiu $a3, $a3, 8 +/* 07E300 8007D700 3C0EE600 */ lui $t6, 0xe600 +/* 07E304 8007D704 ACAE0000 */ sw $t6, ($a1) +/* 07E308 8007D708 00E03025 */ move $a2, $a3 +/* 07E30C 8007D70C 290107FF */ slti $at, $t0, 0x7ff +/* 07E310 8007D710 ACA00004 */ sw $zero, 4($a1) +/* 07E314 8007D714 3C0FF300 */ lui $t7, 0xf300 +/* 07E318 8007D718 ACCF0000 */ sw $t7, ($a2) +/* 07E31C 8007D71C 10200003 */ beqz $at, .L8007D72C +/* 07E320 8007D720 24E70008 */ addiu $a3, $a3, 8 +/* 07E324 8007D724 10000002 */ b .L8007D730 +/* 07E328 8007D728 01002025 */ move $a0, $t0 +.L8007D72C: +/* 07E32C 8007D72C 240407FF */ li $a0, 2047 +.L8007D730: +/* 07E330 8007D730 05A10003 */ bgez $t5, .L8007D740 +/* 07E334 8007D734 000D4903 */ sra $t1, $t5, 4 +/* 07E338 8007D738 25A1000F */ addiu $at, $t5, 0xf +/* 07E33C 8007D73C 00014903 */ sra $t1, $at, 4 +.L8007D740: +/* 07E340 8007D740 253807FF */ addiu $t8, $t1, 0x7ff +/* 07E344 8007D744 0309001A */ div $zero, $t8, $t1 +/* 07E348 8007D748 30990FFF */ andi $t9, $a0, 0xfff +/* 07E34C 8007D74C 00197300 */ sll $t6, $t9, 0xc +/* 07E350 8007D750 3C010700 */ lui $at, 0x700 +/* 07E354 8007D754 01C17825 */ or $t7, $t6, $at +/* 07E358 8007D758 15200002 */ bnez $t1, .L8007D764 +/* 07E35C 8007D75C 00000000 */ nop +/* 07E360 8007D760 0007000D */ break 7 +.L8007D764: +/* 07E364 8007D764 2401FFFF */ li $at, -1 +/* 07E368 8007D768 15210004 */ bne $t1, $at, .L8007D77C +/* 07E36C 8007D76C 3C018000 */ lui $at, 0x8000 +/* 07E370 8007D770 17010002 */ bne $t8, $at, .L8007D77C +/* 07E374 8007D774 00000000 */ nop +/* 07E378 8007D778 0006000D */ break 6 +.L8007D77C: +/* 07E37C 8007D77C 00E01825 */ move $v1, $a3 +/* 07E380 8007D780 24E70008 */ addiu $a3, $a3, 8 +/* 07E384 8007D784 3C01F540 */ lui $at, 0xf540 +/* 07E388 8007D788 00E02825 */ move $a1, $a3 +/* 07E38C 8007D78C 24E70008 */ addiu $a3, $a3, 8 +/* 07E390 8007D790 00E04025 */ move $t0, $a3 +/* 07E394 8007D794 24E70008 */ addiu $a3, $a3, 8 +/* 07E398 8007D798 0000C812 */ mflo $t9 +/* 07E39C 8007D79C 332E0FFF */ andi $t6, $t9, 0xfff +/* 07E3A0 8007D7A0 01EEC025 */ or $t8, $t7, $t6 +/* 07E3A4 8007D7A4 ACD80004 */ sw $t8, 4($a2) +/* 07E3A8 8007D7A8 000D7843 */ sra $t7, $t5, 1 +/* 07E3AC 8007D7AC 25EE0007 */ addiu $t6, $t7, 7 +/* 07E3B0 8007D7B0 3C19E700 */ lui $t9, 0xe700 +/* 07E3B4 8007D7B4 AC790000 */ sw $t9, ($v1) +/* 07E3B8 8007D7B8 000EC0C3 */ sra $t8, $t6, 3 +/* 07E3BC 8007D7BC 331901FF */ andi $t9, $t8, 0x1ff +/* 07E3C0 8007D7C0 00197A40 */ sll $t7, $t9, 9 +/* 07E3C4 8007D7C4 01E17025 */ or $t6, $t7, $at +/* 07E3C8 8007D7C8 AC600004 */ sw $zero, 4($v1) +/* 07E3CC 8007D7CC ACAE0000 */ sw $t6, ($a1) +/* 07E3D0 8007D7D0 8FB8002C */ lw $t8, 0x2c($sp) +/* 07E3D4 8007D7D4 3C19F200 */ lui $t9, 0xf200 +/* 07E3D8 8007D7D8 ACB80004 */ sw $t8, 4($a1) +/* 07E3DC 8007D7DC AD190000 */ sw $t9, ($t0) +/* 07E3E0 8007D7E0 8FAF0028 */ lw $t7, 0x28($sp) +/* 07E3E4 8007D7E4 00E01825 */ move $v1, $a3 +/* 07E3E8 8007D7E8 AD0F0004 */ sw $t7, 4($t0) +/* 07E3EC 8007D7EC 24E70008 */ addiu $a3, $a3, 8 +/* 07E3F0 8007D7F0 3C0EFD10 */ lui $t6, 0xfd10 +/* 07E3F4 8007D7F4 AC6E0000 */ sw $t6, ($v1) +/* 07E3F8 8007D7F8 00E02025 */ move $a0, $a3 +/* 07E3FC 8007D7FC AC620004 */ sw $v0, 4($v1) +/* 07E400 8007D800 24E70008 */ addiu $a3, $a3, 8 +/* 07E404 8007D804 00E02825 */ move $a1, $a3 +/* 07E408 8007D808 3C18E800 */ lui $t8, 0xe800 +/* 07E40C 8007D80C AC980000 */ sw $t8, ($a0) +/* 07E410 8007D810 AC800004 */ sw $zero, 4($a0) +/* 07E414 8007D814 3C19F500 */ lui $t9, (0xF5000100 >> 16) # lui $t9, 0xf500 +/* 07E418 8007D818 37390100 */ ori $t9, (0xF5000100 & 0xFFFF) # ori $t9, $t9, 0x100 +/* 07E41C 8007D81C 24E70008 */ addiu $a3, $a3, 8 +/* 07E420 8007D820 3C0F0700 */ lui $t7, 0x700 +/* 07E424 8007D824 ACAF0004 */ sw $t7, 4($a1) +/* 07E428 8007D828 00E03025 */ move $a2, $a3 +/* 07E42C 8007D82C ACB90000 */ sw $t9, ($a1) +/* 07E430 8007D830 24E70008 */ addiu $a3, $a3, 8 +/* 07E434 8007D834 3C0EE600 */ lui $t6, 0xe600 +/* 07E438 8007D838 ACCE0000 */ sw $t6, ($a2) +/* 07E43C 8007D83C 00E01025 */ move $v0, $a3 +/* 07E440 8007D840 ACC00004 */ sw $zero, 4($a2) +/* 07E444 8007D844 8FA40278 */ lw $a0, 0x278($sp) +/* 07E448 8007D848 3C190703 */ lui $t9, (0x0703C000 >> 16) # lui $t9, 0x703 +/* 07E44C 8007D84C 3739C000 */ ori $t9, (0x0703C000 & 0xFFFF) # ori $t9, $t9, 0xc000 +/* 07E450 8007D850 24E70008 */ addiu $a3, $a3, 8 +/* 07E454 8007D854 3C18F000 */ lui $t8, 0xf000 +/* 07E458 8007D858 AC580000 */ sw $t8, ($v0) +/* 07E45C 8007D85C 00E01825 */ move $v1, $a3 +/* 07E460 8007D860 AC590004 */ sw $t9, 4($v0) +/* 07E464 8007D864 3C0FE700 */ lui $t7, 0xe700 +/* 07E468 8007D868 AC6F0000 */ sw $t7, ($v1) +/* 07E46C 8007D86C AC600004 */ sw $zero, 4($v1) +/* 07E470 8007D870 862E0006 */ lh $t6, 6($s1) +/* 07E474 8007D874 24E70008 */ addiu $a3, $a3, 8 +/* 07E478 8007D878 35D80020 */ ori $t8, $t6, 0x20 +/* 07E47C 8007D87C 10800004 */ beqz $a0, .L8007D890 +/* 07E480 8007D880 A6380006 */ sh $t8, 6($s1) +/* 07E484 8007D884 24010002 */ li $at, 2 +/* 07E488 8007D888 14810006 */ bne $a0, $at, .L8007D8A4 +/* 07E48C 8007D88C 8FAE027C */ lw $t6, 0x27c($sp) +.L8007D890: +/* 07E490 8007D890 86390006 */ lh $t9, 6($s1) +/* 07E494 8007D894 00000000 */ nop +/* 07E498 8007D898 372F0004 */ ori $t7, $t9, 4 +/* 07E49C 8007D89C A62F0006 */ sh $t7, 6($s1) +/* 07E4A0 8007D8A0 8FAE027C */ lw $t6, 0x27c($sp) +.L8007D8A4: +/* 07E4A4 8007D8A4 24010004 */ li $at, 4 +/* 07E4A8 8007D8A8 15C1007C */ bne $t6, $at, .L8007DA9C +/* 07E4AC 8007D8AC 00E02025 */ move $a0, $a3 +/* 07E4B0 8007D8B0 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 +/* 07E4B4 8007D8B4 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 +/* 07E4B8 8007D8B8 0221C821 */ addu $t9, $s1, $at +/* 07E4BC 8007D8BC AC990004 */ sw $t9, 4($a0) +/* 07E4C0 8007D8C0 24E70008 */ addiu $a3, $a3, 8 +/* 07E4C4 8007D8C4 3C18FD70 */ lui $t8, 0xfd70 +/* 07E4C8 8007D8C8 AC980000 */ sw $t8, ($a0) +/* 07E4CC 8007D8CC 00E04825 */ move $t1, $a3 +/* 07E4D0 8007D8D0 3C0FF570 */ lui $t7, 0xf570 +/* 07E4D4 8007D8D4 AD2F0000 */ sw $t7, ($t1) +/* 07E4D8 8007D8D8 8FA20268 */ lw $v0, 0x268($sp) +/* 07E4DC 8007D8DC 8FA30260 */ lw $v1, 0x260($sp) +/* 07E4E0 8007D8E0 8FA5026C */ lw $a1, 0x26c($sp) +/* 07E4E4 8007D8E4 304E0003 */ andi $t6, $v0, 3 +/* 07E4E8 8007D8E8 8FA60264 */ lw $a2, 0x264($sp) +/* 07E4EC 8007D8EC 000E1480 */ sll $v0, $t6, 0x12 +/* 07E4F0 8007D8F0 3079000F */ andi $t9, $v1, 0xf +/* 07E4F4 8007D8F4 00191B80 */ sll $v1, $t9, 0xe +/* 07E4F8 8007D8F8 30AE0003 */ andi $t6, $a1, 3 +/* 07E4FC 8007D8FC 000E2A00 */ sll $a1, $t6, 8 +/* 07E500 8007D900 3C010700 */ lui $at, 0x700 +/* 07E504 8007D904 30D9000F */ andi $t9, $a2, 0xf +/* 07E508 8007D908 00197900 */ sll $t7, $t9, 4 +/* 07E50C 8007D90C 00417025 */ or $t6, $v0, $at +/* 07E510 8007D910 01C3C025 */ or $t8, $t6, $v1 +/* 07E514 8007D914 0305C825 */ or $t9, $t8, $a1 +/* 07E518 8007D918 01E03025 */ move $a2, $t7 +/* 07E51C 8007D91C 01B00019 */ multu $t5, $s0 +/* 07E520 8007D920 032F7825 */ or $t7, $t9, $t7 +/* 07E524 8007D924 24E70008 */ addiu $a3, $a3, 8 +/* 07E528 8007D928 00E05025 */ move $t2, $a3 +/* 07E52C 8007D92C AD2F0004 */ sw $t7, 4($t1) +/* 07E530 8007D930 3C0EE600 */ lui $t6, 0xe600 +/* 07E534 8007D934 000D6040 */ sll $t4, $t5, 1 +/* 07E538 8007D938 25990007 */ addiu $t9, $t4, 7 +/* 07E53C 8007D93C AD4E0000 */ sw $t6, ($t2) +/* 07E540 8007D940 24E70008 */ addiu $a3, $a3, 8 +/* 07E544 8007D944 00E0F825 */ move $ra, $a3 +/* 07E548 8007D948 001978C3 */ sra $t7, $t9, 3 +/* 07E54C 8007D94C AD400004 */ sw $zero, 4($t2) +/* 07E550 8007D950 3C18F300 */ lui $t8, 0xf300 +/* 07E554 8007D954 AFF80000 */ sw $t8, ($ra) +/* 07E558 8007D958 31EE01FF */ andi $t6, $t7, 0x1ff +/* 07E55C 8007D95C 000EC240 */ sll $t8, $t6, 9 +/* 07E560 8007D960 0043C825 */ or $t9, $v0, $v1 +/* 07E564 8007D964 03257825 */ or $t7, $t9, $a1 +/* 07E568 8007D968 AFB80030 */ sw $t8, 0x30($sp) +/* 07E56C 8007D96C 25B8FFFF */ addiu $t8, $t5, -1 +/* 07E570 8007D970 0018C880 */ sll $t9, $t8, 2 +/* 07E574 8007D974 01E67025 */ or $t6, $t7, $a2 +/* 07E578 8007D978 332F0FFF */ andi $t7, $t9, 0xfff +/* 07E57C 8007D97C AFAE002C */ sw $t6, 0x2c($sp) +/* 07E580 8007D980 2618FFFF */ addiu $t8, $s0, -1 +/* 07E584 8007D984 0018C880 */ sll $t9, $t8, 2 +/* 07E588 8007D988 000F7300 */ sll $t6, $t7, 0xc +/* 07E58C 8007D98C 00004012 */ mflo $t0 +/* 07E590 8007D990 2508FFFF */ addiu $t0, $t0, -1 +/* 07E594 8007D994 332F0FFF */ andi $t7, $t9, 0xfff +/* 07E598 8007D998 01CFC025 */ or $t8, $t6, $t7 +/* 07E59C 8007D99C AFB80028 */ sw $t8, 0x28($sp) +/* 07E5A0 8007D9A0 AFBF01CC */ sw $ra, 0x1cc($sp) +/* 07E5A4 8007D9A4 24E70008 */ addiu $a3, $a3, 8 +/* 07E5A8 8007D9A8 05810003 */ bgez $t4, .L8007D9B8 +/* 07E5AC 8007D9AC 000C58C3 */ sra $t3, $t4, 3 +/* 07E5B0 8007D9B0 25810007 */ addiu $at, $t4, 7 +/* 07E5B4 8007D9B4 000158C3 */ sra $t3, $at, 3 +.L8007D9B8: +/* 07E5B8 8007D9B8 290107FF */ slti $at, $t0, 0x7ff +/* 07E5BC 8007D9BC 10200003 */ beqz $at, .L8007D9CC +/* 07E5C0 8007D9C0 01605025 */ move $t2, $t3 +/* 07E5C4 8007D9C4 10000002 */ b .L8007D9D0 +/* 07E5C8 8007D9C8 0100F825 */ move $ra, $t0 +.L8007D9CC: +/* 07E5CC 8007D9CC 241F07FF */ li $ra, 2047 +.L8007D9D0: +/* 07E5D0 8007D9D0 1D600003 */ bgtz $t3, .L8007D9E0 +/* 07E5D4 8007D9D4 01602025 */ move $a0, $t3 +/* 07E5D8 8007D9D8 10000001 */ b .L8007D9E0 +/* 07E5DC 8007D9DC 240A0001 */ li $t2, 1 +.L8007D9E0: +/* 07E5E0 8007D9E0 1D600003 */ bgtz $t3, .L8007D9F0 +/* 07E5E4 8007D9E4 255907FF */ addiu $t9, $t2, 0x7ff +/* 07E5E8 8007D9E8 10000001 */ b .L8007D9F0 +/* 07E5EC 8007D9EC 24040001 */ li $a0, 1 +.L8007D9F0: +/* 07E5F0 8007D9F0 0324001A */ div $zero, $t9, $a0 +/* 07E5F4 8007D9F4 00E01025 */ move $v0, $a3 +/* 07E5F8 8007D9F8 14800002 */ bnez $a0, .L8007DA04 +/* 07E5FC 8007D9FC 00000000 */ nop +/* 07E600 8007DA00 0007000D */ break 7 +.L8007DA04: +/* 07E604 8007DA04 2401FFFF */ li $at, -1 +/* 07E608 8007DA08 14810004 */ bne $a0, $at, .L8007DA1C +/* 07E60C 8007DA0C 3C018000 */ lui $at, 0x8000 +/* 07E610 8007DA10 17210002 */ bne $t9, $at, .L8007DA1C +/* 07E614 8007DA14 00000000 */ nop +/* 07E618 8007DA18 0006000D */ break 6 +.L8007DA1C: +/* 07E61C 8007DA1C 33F90FFF */ andi $t9, $ra, 0xfff +/* 07E620 8007DA20 3C010700 */ lui $at, 0x700 +/* 07E624 8007DA24 24E70008 */ addiu $a3, $a3, 8 +/* 07E628 8007DA28 00E01825 */ move $v1, $a3 +/* 07E62C 8007DA2C 24E70008 */ addiu $a3, $a3, 8 +/* 07E630 8007DA30 00E02825 */ move $a1, $a3 +/* 07E634 8007DA34 24E70008 */ addiu $a3, $a3, 8 +/* 07E638 8007DA38 00007012 */ mflo $t6 +/* 07E63C 8007DA3C 31CF0FFF */ andi $t7, $t6, 0xfff +/* 07E640 8007DA40 00197300 */ sll $t6, $t9, 0xc +/* 07E644 8007DA44 8FB901CC */ lw $t9, 0x1cc($sp) +/* 07E648 8007DA48 01E1C025 */ or $t8, $t7, $at +/* 07E64C 8007DA4C 030E7825 */ or $t7, $t8, $t6 +/* 07E650 8007DA50 AF2F0004 */ sw $t7, 4($t9) +/* 07E654 8007DA54 3C18E700 */ lui $t8, 0xe700 +/* 07E658 8007DA58 AC580000 */ sw $t8, ($v0) +/* 07E65C 8007DA5C AC400004 */ sw $zero, 4($v0) +/* 07E660 8007DA60 8FAE0030 */ lw $t6, 0x30($sp) +/* 07E664 8007DA64 3C01F570 */ lui $at, 0xf570 +/* 07E668 8007DA68 01C17825 */ or $t7, $t6, $at +/* 07E66C 8007DA6C AC6F0000 */ sw $t7, ($v1) +/* 07E670 8007DA70 8FB9002C */ lw $t9, 0x2c($sp) +/* 07E674 8007DA74 3C18F200 */ lui $t8, 0xf200 +/* 07E678 8007DA78 AC790004 */ sw $t9, 4($v1) +/* 07E67C 8007DA7C ACB80000 */ sw $t8, ($a1) +/* 07E680 8007DA80 8FAE0028 */ lw $t6, 0x28($sp) +/* 07E684 8007DA84 00000000 */ nop +/* 07E688 8007DA88 ACAE0004 */ sw $t6, 4($a1) +/* 07E68C 8007DA8C 862F0006 */ lh $t7, 6($s1) +/* 07E690 8007DA90 00000000 */ nop +/* 07E694 8007DA94 35F90004 */ ori $t9, $t7, 4 +/* 07E698 8007DA98 A6390006 */ sh $t9, 6($s1) +.L8007DA9C: +/* 07E69C 8007DA9C 8FB8027C */ lw $t8, 0x27c($sp) +/* 07E6A0 8007DAA0 24010005 */ li $at, 5 +/* 07E6A4 8007DAA4 1701007C */ bne $t8, $at, .L8007DC98 +/* 07E6A8 8007DAA8 00E02025 */ move $a0, $a3 +/* 07E6AC 8007DAAC 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 +/* 07E6B0 8007DAB0 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 +/* 07E6B4 8007DAB4 02217821 */ addu $t7, $s1, $at +/* 07E6B8 8007DAB8 AC8F0004 */ sw $t7, 4($a0) +/* 07E6BC 8007DABC 24E70008 */ addiu $a3, $a3, 8 +/* 07E6C0 8007DAC0 3C0EFD70 */ lui $t6, 0xfd70 +/* 07E6C4 8007DAC4 AC8E0000 */ sw $t6, ($a0) +/* 07E6C8 8007DAC8 00E04025 */ move $t0, $a3 +/* 07E6CC 8007DACC 3C19F570 */ lui $t9, 0xf570 +/* 07E6D0 8007DAD0 AD190000 */ sw $t9, ($t0) +/* 07E6D4 8007DAD4 8FA20268 */ lw $v0, 0x268($sp) +/* 07E6D8 8007DAD8 8FA30260 */ lw $v1, 0x260($sp) +/* 07E6DC 8007DADC 8FA5026C */ lw $a1, 0x26c($sp) +/* 07E6E0 8007DAE0 30580003 */ andi $t8, $v0, 3 +/* 07E6E4 8007DAE4 8FA60264 */ lw $a2, 0x264($sp) +/* 07E6E8 8007DAE8 00181480 */ sll $v0, $t8, 0x12 +/* 07E6EC 8007DAEC 306F000F */ andi $t7, $v1, 0xf +/* 07E6F0 8007DAF0 000F1B80 */ sll $v1, $t7, 0xe +/* 07E6F4 8007DAF4 30B80003 */ andi $t8, $a1, 3 +/* 07E6F8 8007DAF8 00182A00 */ sll $a1, $t8, 8 +/* 07E6FC 8007DAFC 3C010700 */ lui $at, 0x700 +/* 07E700 8007DB00 30CF000F */ andi $t7, $a2, 0xf +/* 07E704 8007DB04 000FC900 */ sll $t9, $t7, 4 +/* 07E708 8007DB08 0041C025 */ or $t8, $v0, $at +/* 07E70C 8007DB0C 01B00019 */ multu $t5, $s0 +/* 07E710 8007DB10 03037025 */ or $t6, $t8, $v1 +/* 07E714 8007DB14 01C57825 */ or $t7, $t6, $a1 +/* 07E718 8007DB18 03203025 */ move $a2, $t9 +/* 07E71C 8007DB1C 01F9C825 */ or $t9, $t7, $t9 +/* 07E720 8007DB20 24E70008 */ addiu $a3, $a3, 8 +/* 07E724 8007DB24 00E04825 */ move $t1, $a3 +/* 07E728 8007DB28 AD190004 */ sw $t9, 4($t0) +/* 07E72C 8007DB2C 24E70008 */ addiu $a3, $a3, 8 +/* 07E730 8007DB30 3C18E600 */ lui $t8, 0xe600 +/* 07E734 8007DB34 AD380000 */ sw $t8, ($t1) +/* 07E738 8007DB38 00E05825 */ move $t3, $a3 +/* 07E73C 8007DB3C AD200004 */ sw $zero, 4($t1) +/* 07E740 8007DB40 00437825 */ or $t7, $v0, $v1 +/* 07E744 8007DB44 3C0EF300 */ lui $t6, 0xf300 +/* 07E748 8007DB48 AD6E0000 */ sw $t6, ($t3) +/* 07E74C 8007DB4C 01E5C825 */ or $t9, $t7, $a1 +/* 07E750 8007DB50 25AEFFFF */ addiu $t6, $t5, -1 +/* 07E754 8007DB54 000E7880 */ sll $t7, $t6, 2 +/* 07E758 8007DB58 0326C025 */ or $t8, $t9, $a2 +/* 07E75C 8007DB5C 31F90FFF */ andi $t9, $t7, 0xfff +/* 07E760 8007DB60 AFB8002C */ sw $t8, 0x2c($sp) +/* 07E764 8007DB64 260EFFFF */ addiu $t6, $s0, -1 +/* 07E768 8007DB68 000E7880 */ sll $t7, $t6, 2 +/* 07E76C 8007DB6C 0019C300 */ sll $t8, $t9, 0xc +/* 07E770 8007DB70 00005012 */ mflo $t2 +/* 07E774 8007DB74 25480001 */ addiu $t0, $t2, 1 +/* 07E778 8007DB78 31F90FFF */ andi $t9, $t7, 0xfff +/* 07E77C 8007DB7C 00087843 */ sra $t7, $t0, 1 +/* 07E780 8007DB80 25E8FFFF */ addiu $t0, $t7, -1 +/* 07E784 8007DB84 290107FF */ slti $at, $t0, 0x7ff +/* 07E788 8007DB88 03197025 */ or $t6, $t8, $t9 +/* 07E78C 8007DB8C AFAE0028 */ sw $t6, 0x28($sp) +/* 07E790 8007DB90 AFAB01B0 */ sw $t3, 0x1b0($sp) +/* 07E794 8007DB94 10200003 */ beqz $at, .L8007DBA4 +/* 07E798 8007DB98 24E70008 */ addiu $a3, $a3, 8 +/* 07E79C 8007DB9C 10000002 */ b .L8007DBA8 +/* 07E7A0 8007DBA0 0100F825 */ move $ra, $t0 +.L8007DBA4: +/* 07E7A4 8007DBA4 241F07FF */ li $ra, 2047 +.L8007DBA8: +/* 07E7A8 8007DBA8 01A06025 */ move $t4, $t5 +/* 07E7AC 8007DBAC 05810003 */ bgez $t4, .L8007DBBC +/* 07E7B0 8007DBB0 000C58C3 */ sra $t3, $t4, 3 +/* 07E7B4 8007DBB4 25810007 */ addiu $at, $t4, 7 +/* 07E7B8 8007DBB8 000158C3 */ sra $t3, $at, 3 +.L8007DBBC: +/* 07E7BC 8007DBBC 1D600003 */ bgtz $t3, .L8007DBCC +/* 07E7C0 8007DBC0 01605025 */ move $t2, $t3 +/* 07E7C4 8007DBC4 10000001 */ b .L8007DBCC +/* 07E7C8 8007DBC8 240A0001 */ li $t2, 1 +.L8007DBCC: +/* 07E7CC 8007DBCC 1D600003 */ bgtz $t3, .L8007DBDC +/* 07E7D0 8007DBD0 255807FF */ addiu $t8, $t2, 0x7ff +/* 07E7D4 8007DBD4 10000002 */ b .L8007DBE0 +/* 07E7D8 8007DBD8 24040001 */ li $a0, 1 +.L8007DBDC: +/* 07E7DC 8007DBDC 01602025 */ move $a0, $t3 +.L8007DBE0: +/* 07E7E0 8007DBE0 0304001A */ div $zero, $t8, $a0 +/* 07E7E4 8007DBE4 00E01025 */ move $v0, $a3 +/* 07E7E8 8007DBE8 14800002 */ bnez $a0, .L8007DBF4 +/* 07E7EC 8007DBEC 00000000 */ nop +/* 07E7F0 8007DBF0 0007000D */ break 7 +.L8007DBF4: +/* 07E7F4 8007DBF4 2401FFFF */ li $at, -1 +/* 07E7F8 8007DBF8 14810004 */ bne $a0, $at, .L8007DC0C +/* 07E7FC 8007DBFC 3C018000 */ lui $at, 0x8000 +/* 07E800 8007DC00 17010002 */ bne $t8, $at, .L8007DC0C +/* 07E804 8007DC04 00000000 */ nop +/* 07E808 8007DC08 0006000D */ break 6 +.L8007DC0C: +/* 07E80C 8007DC0C 33F80FFF */ andi $t8, $ra, 0xfff +/* 07E810 8007DC10 3C010700 */ lui $at, 0x700 +/* 07E814 8007DC14 24E70008 */ addiu $a3, $a3, 8 +/* 07E818 8007DC18 00E01825 */ move $v1, $a3 +/* 07E81C 8007DC1C 24E70008 */ addiu $a3, $a3, 8 +/* 07E820 8007DC20 00E02825 */ move $a1, $a3 +/* 07E824 8007DC24 24E70008 */ addiu $a3, $a3, 8 +/* 07E828 8007DC28 0000C812 */ mflo $t9 +/* 07E82C 8007DC2C 332E0FFF */ andi $t6, $t9, 0xfff +/* 07E830 8007DC30 0018CB00 */ sll $t9, $t8, 0xc +/* 07E834 8007DC34 01C17825 */ or $t7, $t6, $at +/* 07E838 8007DC38 8FB801B0 */ lw $t8, 0x1b0($sp) +/* 07E83C 8007DC3C 01F97025 */ or $t6, $t7, $t9 +/* 07E840 8007DC40 AF0E0004 */ sw $t6, 4($t8) +/* 07E844 8007DC44 25990007 */ addiu $t9, $t4, 7 +/* 07E848 8007DC48 001970C3 */ sra $t6, $t9, 3 +/* 07E84C 8007DC4C 3C0FE700 */ lui $t7, 0xe700 +/* 07E850 8007DC50 AC4F0000 */ sw $t7, ($v0) +/* 07E854 8007DC54 31D801FF */ andi $t8, $t6, 0x1ff +/* 07E858 8007DC58 00187A40 */ sll $t7, $t8, 9 +/* 07E85C 8007DC5C 3C01F568 */ lui $at, 0xf568 +/* 07E860 8007DC60 01E1C825 */ or $t9, $t7, $at +/* 07E864 8007DC64 AC400004 */ sw $zero, 4($v0) +/* 07E868 8007DC68 AC790000 */ sw $t9, ($v1) +/* 07E86C 8007DC6C 8FAE002C */ lw $t6, 0x2c($sp) +/* 07E870 8007DC70 3C18F200 */ lui $t8, 0xf200 +/* 07E874 8007DC74 AC6E0004 */ sw $t6, 4($v1) +/* 07E878 8007DC78 ACB80000 */ sw $t8, ($a1) +/* 07E87C 8007DC7C 8FAF0028 */ lw $t7, 0x28($sp) +/* 07E880 8007DC80 00000000 */ nop +/* 07E884 8007DC84 ACAF0004 */ sw $t7, 4($a1) +/* 07E888 8007DC88 86390006 */ lh $t9, 6($s1) +/* 07E88C 8007DC8C 00000000 */ nop +/* 07E890 8007DC90 372E0004 */ ori $t6, $t9, 4 +/* 07E894 8007DC94 A62E0006 */ sh $t6, 6($s1) +.L8007DC98: +/* 07E898 8007DC98 8FB8027C */ lw $t8, 0x27c($sp) +/* 07E89C 8007DC9C 24010006 */ li $at, 6 +/* 07E8A0 8007DCA0 17010074 */ bne $t8, $at, .L8007DE74 +/* 07E8A4 8007DCA4 00E02025 */ move $a0, $a3 +/* 07E8A8 8007DCA8 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 +/* 07E8AC 8007DCAC 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 +/* 07E8B0 8007DCB0 0221C821 */ addu $t9, $s1, $at +/* 07E8B4 8007DCB4 AC990004 */ sw $t9, 4($a0) +/* 07E8B8 8007DCB8 24E70008 */ addiu $a3, $a3, 8 +/* 07E8BC 8007DCBC 3C0FFD70 */ lui $t7, 0xfd70 +/* 07E8C0 8007DCC0 AC8F0000 */ sw $t7, ($a0) +/* 07E8C4 8007DCC4 00E05025 */ move $t2, $a3 +/* 07E8C8 8007DCC8 3C0EF570 */ lui $t6, 0xf570 +/* 07E8CC 8007DCCC AD4E0000 */ sw $t6, ($t2) +/* 07E8D0 8007DCD0 8FA20268 */ lw $v0, 0x268($sp) +/* 07E8D4 8007DCD4 8FA30260 */ lw $v1, 0x260($sp) +/* 07E8D8 8007DCD8 8FA5026C */ lw $a1, 0x26c($sp) +/* 07E8DC 8007DCDC 30580003 */ andi $t8, $v0, 3 +/* 07E8E0 8007DCE0 8FA60264 */ lw $a2, 0x264($sp) +/* 07E8E4 8007DCE4 00181480 */ sll $v0, $t8, 0x12 +/* 07E8E8 8007DCE8 3079000F */ andi $t9, $v1, 0xf +/* 07E8EC 8007DCEC 00191B80 */ sll $v1, $t9, 0xe +/* 07E8F0 8007DCF0 30B80003 */ andi $t8, $a1, 3 +/* 07E8F4 8007DCF4 00182A00 */ sll $a1, $t8, 8 +/* 07E8F8 8007DCF8 3C010700 */ lui $at, 0x700 +/* 07E8FC 8007DCFC 30D9000F */ andi $t9, $a2, 0xf +/* 07E900 8007DD00 00197100 */ sll $t6, $t9, 4 +/* 07E904 8007DD04 0041C025 */ or $t8, $v0, $at +/* 07E908 8007DD08 03037825 */ or $t7, $t8, $v1 +/* 07E90C 8007DD0C 01B00019 */ multu $t5, $s0 +/* 07E910 8007DD10 01E5C825 */ or $t9, $t7, $a1 +/* 07E914 8007DD14 01C03025 */ move $a2, $t6 +/* 07E918 8007DD18 032E7025 */ or $t6, $t9, $t6 +/* 07E91C 8007DD1C 24E70008 */ addiu $a3, $a3, 8 +/* 07E920 8007DD20 00E05825 */ move $t3, $a3 +/* 07E924 8007DD24 AD4E0004 */ sw $t6, 4($t2) +/* 07E928 8007DD28 24E70008 */ addiu $a3, $a3, 8 +/* 07E92C 8007DD2C 3C18E600 */ lui $t8, 0xe600 +/* 07E930 8007DD30 AD780000 */ sw $t8, ($t3) +/* 07E934 8007DD34 00E06025 */ move $t4, $a3 +/* 07E938 8007DD38 AD600004 */ sw $zero, 4($t3) +/* 07E93C 8007DD3C 0043C825 */ or $t9, $v0, $v1 +/* 07E940 8007DD40 3C0FF300 */ lui $t7, 0xf300 +/* 07E944 8007DD44 AD8F0000 */ sw $t7, ($t4) +/* 07E948 8007DD48 03257025 */ or $t6, $t9, $a1 +/* 07E94C 8007DD4C 25AFFFFF */ addiu $t7, $t5, -1 +/* 07E950 8007DD50 000FC880 */ sll $t9, $t7, 2 +/* 07E954 8007DD54 01C6C025 */ or $t8, $t6, $a2 +/* 07E958 8007DD58 332E0FFF */ andi $t6, $t9, 0xfff +/* 07E95C 8007DD5C AFB8002C */ sw $t8, 0x2c($sp) +/* 07E960 8007DD60 260FFFFF */ addiu $t7, $s0, -1 +/* 07E964 8007DD64 000FC880 */ sll $t9, $t7, 2 +/* 07E968 8007DD68 000EC300 */ sll $t8, $t6, 0xc +/* 07E96C 8007DD6C 00004012 */ mflo $t0 +/* 07E970 8007DD70 332E0FFF */ andi $t6, $t9, 0xfff +/* 07E974 8007DD74 030E7825 */ or $t7, $t8, $t6 +/* 07E978 8007DD78 25080003 */ addiu $t0, $t0, 3 +/* 07E97C 8007DD7C 0008C883 */ sra $t9, $t0, 2 +/* 07E980 8007DD80 000DF843 */ sra $ra, $t5, 1 +/* 07E984 8007DD84 27FF0007 */ addiu $ra, $ra, 7 +/* 07E988 8007DD88 2728FFFF */ addiu $t0, $t9, -1 +/* 07E98C 8007DD8C 001FC8C3 */ sra $t9, $ra, 3 +/* 07E990 8007DD90 AFAF0028 */ sw $t7, 0x28($sp) +/* 07E994 8007DD94 24E70008 */ addiu $a3, $a3, 8 +/* 07E998 8007DD98 05A10003 */ bgez $t5, .L8007DDA8 +/* 07E99C 8007DD9C 000D4903 */ sra $t1, $t5, 4 +/* 07E9A0 8007DDA0 25A1000F */ addiu $at, $t5, 0xf +/* 07E9A4 8007DDA4 00014903 */ sra $t1, $at, 4 +.L8007DDA8: +/* 07E9A8 8007DDA8 253807FF */ addiu $t8, $t1, 0x7ff +/* 07E9AC 8007DDAC 0309001A */ div $zero, $t8, $t1 +/* 07E9B0 8007DDB0 15200002 */ bnez $t1, .L8007DDBC +/* 07E9B4 8007DDB4 00000000 */ nop +/* 07E9B8 8007DDB8 0007000D */ break 7 +.L8007DDBC: +/* 07E9BC 8007DDBC 2401FFFF */ li $at, -1 +/* 07E9C0 8007DDC0 15210004 */ bne $t1, $at, .L8007DDD4 +/* 07E9C4 8007DDC4 3C018000 */ lui $at, 0x8000 +/* 07E9C8 8007DDC8 17010002 */ bne $t8, $at, .L8007DDD4 +/* 07E9CC 8007DDCC 00000000 */ nop +/* 07E9D0 8007DDD0 0006000D */ break 6 +.L8007DDD4: +/* 07E9D4 8007DDD4 333801FF */ andi $t8, $t9, 0x1ff +/* 07E9D8 8007DDD8 00E01025 */ move $v0, $a3 +/* 07E9DC 8007DDDC 24E70008 */ addiu $a3, $a3, 8 +/* 07E9E0 8007DDE0 290107FF */ slti $at, $t0, 0x7ff +/* 07E9E4 8007DDE4 00E01825 */ move $v1, $a3 +/* 07E9E8 8007DDE8 240407FF */ li $a0, 2047 +/* 07E9EC 8007DDEC 00007012 */ mflo $t6 +/* 07E9F0 8007DDF0 31CF0FFF */ andi $t7, $t6, 0xfff +/* 07E9F4 8007DDF4 00187240 */ sll $t6, $t8, 9 +/* 07E9F8 8007DDF8 01C0F825 */ move $ra, $t6 +/* 07E9FC 8007DDFC 10200003 */ beqz $at, .L8007DE0C +/* 07EA00 8007DE00 AFAF0030 */ sw $t7, 0x30($sp) +/* 07EA04 8007DE04 10000001 */ b .L8007DE0C +/* 07EA08 8007DE08 01002025 */ move $a0, $t0 +.L8007DE0C: +/* 07EA0C 8007DE0C 308F0FFF */ andi $t7, $a0, 0xfff +/* 07EA10 8007DE10 8FAE0030 */ lw $t6, 0x30($sp) +/* 07EA14 8007DE14 000FCB00 */ sll $t9, $t7, 0xc +/* 07EA18 8007DE18 3C010700 */ lui $at, 0x700 +/* 07EA1C 8007DE1C 0321C025 */ or $t8, $t9, $at +/* 07EA20 8007DE20 030E7825 */ or $t7, $t8, $t6 +/* 07EA24 8007DE24 AD8F0004 */ sw $t7, 4($t4) +/* 07EA28 8007DE28 3C01F560 */ lui $at, 0xf560 +/* 07EA2C 8007DE2C 3C19E700 */ lui $t9, 0xe700 +/* 07EA30 8007DE30 AC590000 */ sw $t9, ($v0) +/* 07EA34 8007DE34 03E1C025 */ or $t8, $ra, $at +/* 07EA38 8007DE38 AC400004 */ sw $zero, 4($v0) +/* 07EA3C 8007DE3C AC780000 */ sw $t8, ($v1) +/* 07EA40 8007DE40 8FAE002C */ lw $t6, 0x2c($sp) +/* 07EA44 8007DE44 24E70008 */ addiu $a3, $a3, 8 +/* 07EA48 8007DE48 00E02825 */ move $a1, $a3 +/* 07EA4C 8007DE4C 3C0FF200 */ lui $t7, 0xf200 +/* 07EA50 8007DE50 AC6E0004 */ sw $t6, 4($v1) +/* 07EA54 8007DE54 ACAF0000 */ sw $t7, ($a1) +/* 07EA58 8007DE58 8FB90028 */ lw $t9, 0x28($sp) +/* 07EA5C 8007DE5C 24E70008 */ addiu $a3, $a3, 8 +/* 07EA60 8007DE60 ACB90004 */ sw $t9, 4($a1) +/* 07EA64 8007DE64 86380006 */ lh $t8, 6($s1) +/* 07EA68 8007DE68 00000000 */ nop +/* 07EA6C 8007DE6C 370E0004 */ ori $t6, $t8, 4 +/* 07EA70 8007DE70 A62E0006 */ sh $t6, 6($s1) +.L8007DE74: +/* 07EA74 8007DE74 8FAF027C */ lw $t7, 0x27c($sp) +/* 07EA78 8007DE78 24010002 */ li $at, 2 +/* 07EA7C 8007DE7C 15E1007A */ bne $t7, $at, .L8007E068 +/* 07EA80 8007DE80 00E02025 */ move $a0, $a3 +/* 07EA84 8007DE84 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 +/* 07EA88 8007DE88 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 +/* 07EA8C 8007DE8C 0221C021 */ addu $t8, $s1, $at +/* 07EA90 8007DE90 AC980004 */ sw $t8, 4($a0) +/* 07EA94 8007DE94 24E70008 */ addiu $a3, $a3, 8 +/* 07EA98 8007DE98 3C19FD90 */ lui $t9, 0xfd90 +/* 07EA9C 8007DE9C AC990000 */ sw $t9, ($a0) +/* 07EAA0 8007DEA0 00E04825 */ move $t1, $a3 +/* 07EAA4 8007DEA4 3C0EF590 */ lui $t6, 0xf590 +/* 07EAA8 8007DEA8 AD2E0000 */ sw $t6, ($t1) +/* 07EAAC 8007DEAC 8FA20268 */ lw $v0, 0x268($sp) +/* 07EAB0 8007DEB0 8FA30260 */ lw $v1, 0x260($sp) +/* 07EAB4 8007DEB4 8FA5026C */ lw $a1, 0x26c($sp) +/* 07EAB8 8007DEB8 304F0003 */ andi $t7, $v0, 3 +/* 07EABC 8007DEBC 8FA60264 */ lw $a2, 0x264($sp) +/* 07EAC0 8007DEC0 000F1480 */ sll $v0, $t7, 0x12 +/* 07EAC4 8007DEC4 3078000F */ andi $t8, $v1, 0xf +/* 07EAC8 8007DEC8 00181B80 */ sll $v1, $t8, 0xe +/* 07EACC 8007DECC 30AF0003 */ andi $t7, $a1, 3 +/* 07EAD0 8007DED0 000F2A00 */ sll $a1, $t7, 8 +/* 07EAD4 8007DED4 3C010700 */ lui $at, 0x700 +/* 07EAD8 8007DED8 30D8000F */ andi $t8, $a2, 0xf +/* 07EADC 8007DEDC 00187100 */ sll $t6, $t8, 4 +/* 07EAE0 8007DEE0 00417825 */ or $t7, $v0, $at +/* 07EAE4 8007DEE4 01E3C825 */ or $t9, $t7, $v1 +/* 07EAE8 8007DEE8 0325C025 */ or $t8, $t9, $a1 +/* 07EAEC 8007DEEC 01C03025 */ move $a2, $t6 +/* 07EAF0 8007DEF0 01B00019 */ multu $t5, $s0 +/* 07EAF4 8007DEF4 030E7025 */ or $t6, $t8, $t6 +/* 07EAF8 8007DEF8 24E70008 */ addiu $a3, $a3, 8 +/* 07EAFC 8007DEFC 00E05025 */ move $t2, $a3 +/* 07EB00 8007DF00 AD2E0004 */ sw $t6, 4($t1) +/* 07EB04 8007DF04 24E70008 */ addiu $a3, $a3, 8 +/* 07EB08 8007DF08 3C0FE600 */ lui $t7, 0xe600 +/* 07EB0C 8007DF0C AD4F0000 */ sw $t7, ($t2) +/* 07EB10 8007DF10 00E0F825 */ move $ra, $a3 +/* 07EB14 8007DF14 AD400004 */ sw $zero, 4($t2) +/* 07EB18 8007DF18 0043C025 */ or $t8, $v0, $v1 +/* 07EB1C 8007DF1C 3C19F300 */ lui $t9, 0xf300 +/* 07EB20 8007DF20 AFF90000 */ sw $t9, ($ra) +/* 07EB24 8007DF24 03057025 */ or $t6, $t8, $a1 +/* 07EB28 8007DF28 25B9FFFF */ addiu $t9, $t5, -1 +/* 07EB2C 8007DF2C 0019C080 */ sll $t8, $t9, 2 +/* 07EB30 8007DF30 01C67825 */ or $t7, $t6, $a2 +/* 07EB34 8007DF34 330E0FFF */ andi $t6, $t8, 0xfff +/* 07EB38 8007DF38 AFAF002C */ sw $t7, 0x2c($sp) +/* 07EB3C 8007DF3C 2619FFFF */ addiu $t9, $s0, -1 +/* 07EB40 8007DF40 0019C080 */ sll $t8, $t9, 2 +/* 07EB44 8007DF44 000E7B00 */ sll $t7, $t6, 0xc +/* 07EB48 8007DF48 330E0FFF */ andi $t6, $t8, 0xfff +/* 07EB4C 8007DF4C 01EEC825 */ or $t9, $t7, $t6 +/* 07EB50 8007DF50 00004012 */ mflo $t0 +/* 07EB54 8007DF54 25080001 */ addiu $t0, $t0, 1 +/* 07EB58 8007DF58 01A06025 */ move $t4, $t5 +/* 07EB5C 8007DF5C 258F0007 */ addiu $t7, $t4, 7 +/* 07EB60 8007DF60 0008C043 */ sra $t8, $t0, 1 +/* 07EB64 8007DF64 2708FFFF */ addiu $t0, $t8, -1 +/* 07EB68 8007DF68 000F70C3 */ sra $t6, $t7, 3 +/* 07EB6C 8007DF6C AFB90028 */ sw $t9, 0x28($sp) +/* 07EB70 8007DF70 31D901FF */ andi $t9, $t6, 0x1ff +/* 07EB74 8007DF74 0019C240 */ sll $t8, $t9, 9 +/* 07EB78 8007DF78 AFB80024 */ sw $t8, 0x24($sp) +/* 07EB7C 8007DF7C AFBF0178 */ sw $ra, 0x178($sp) +/* 07EB80 8007DF80 24E70008 */ addiu $a3, $a3, 8 +/* 07EB84 8007DF84 05810003 */ bgez $t4, .L8007DF94 +/* 07EB88 8007DF88 000C58C3 */ sra $t3, $t4, 3 +/* 07EB8C 8007DF8C 25810007 */ addiu $at, $t4, 7 +/* 07EB90 8007DF90 000158C3 */ sra $t3, $at, 3 +.L8007DF94: +/* 07EB94 8007DF94 290107FF */ slti $at, $t0, 0x7ff +/* 07EB98 8007DF98 10200003 */ beqz $at, .L8007DFA8 +/* 07EB9C 8007DF9C 03006025 */ move $t4, $t8 +/* 07EBA0 8007DFA0 10000002 */ b .L8007DFAC +/* 07EBA4 8007DFA4 0100F825 */ move $ra, $t0 +.L8007DFA8: +/* 07EBA8 8007DFA8 241F07FF */ li $ra, 2047 +.L8007DFAC: +/* 07EBAC 8007DFAC 1D600003 */ bgtz $t3, .L8007DFBC +/* 07EBB0 8007DFB0 01605025 */ move $t2, $t3 +/* 07EBB4 8007DFB4 10000001 */ b .L8007DFBC +/* 07EBB8 8007DFB8 240A0001 */ li $t2, 1 +.L8007DFBC: +/* 07EBBC 8007DFBC 1D600003 */ bgtz $t3, .L8007DFCC +/* 07EBC0 8007DFC0 254F07FF */ addiu $t7, $t2, 0x7ff +/* 07EBC4 8007DFC4 10000002 */ b .L8007DFD0 +/* 07EBC8 8007DFC8 24040001 */ li $a0, 1 +.L8007DFCC: +/* 07EBCC 8007DFCC 01602025 */ move $a0, $t3 +.L8007DFD0: +/* 07EBD0 8007DFD0 01E4001A */ div $zero, $t7, $a0 +/* 07EBD4 8007DFD4 00E01025 */ move $v0, $a3 +/* 07EBD8 8007DFD8 14800002 */ bnez $a0, .L8007DFE4 +/* 07EBDC 8007DFDC 00000000 */ nop +/* 07EBE0 8007DFE0 0007000D */ break 7 +.L8007DFE4: +/* 07EBE4 8007DFE4 2401FFFF */ li $at, -1 +/* 07EBE8 8007DFE8 14810004 */ bne $a0, $at, .L8007DFFC +/* 07EBEC 8007DFEC 3C018000 */ lui $at, 0x8000 +/* 07EBF0 8007DFF0 15E10002 */ bne $t7, $at, .L8007DFFC +/* 07EBF4 8007DFF4 00000000 */ nop +/* 07EBF8 8007DFF8 0006000D */ break 6 +.L8007DFFC: +/* 07EBFC 8007DFFC 33EF0FFF */ andi $t7, $ra, 0xfff +/* 07EC00 8007E000 3C010700 */ lui $at, 0x700 +/* 07EC04 8007E004 24E70008 */ addiu $a3, $a3, 8 +/* 07EC08 8007E008 00E01825 */ move $v1, $a3 +/* 07EC0C 8007E00C 24E70008 */ addiu $a3, $a3, 8 +/* 07EC10 8007E010 00E02825 */ move $a1, $a3 +/* 07EC14 8007E014 24E70008 */ addiu $a3, $a3, 8 +/* 07EC18 8007E018 00007012 */ mflo $t6 +/* 07EC1C 8007E01C 31D90FFF */ andi $t9, $t6, 0xfff +/* 07EC20 8007E020 000F7300 */ sll $t6, $t7, 0xc +/* 07EC24 8007E024 8FAF0178 */ lw $t7, 0x178($sp) +/* 07EC28 8007E028 0321C025 */ or $t8, $t9, $at +/* 07EC2C 8007E02C 030EC825 */ or $t9, $t8, $t6 +/* 07EC30 8007E030 ADF90004 */ sw $t9, 4($t7) +/* 07EC34 8007E034 3C18E700 */ lui $t8, 0xe700 +/* 07EC38 8007E038 3C01F588 */ lui $at, 0xf588 +/* 07EC3C 8007E03C 01817025 */ or $t6, $t4, $at +/* 07EC40 8007E040 AC580000 */ sw $t8, ($v0) +/* 07EC44 8007E044 AC400004 */ sw $zero, 4($v0) +/* 07EC48 8007E048 AC6E0000 */ sw $t6, ($v1) +/* 07EC4C 8007E04C 8FB9002C */ lw $t9, 0x2c($sp) +/* 07EC50 8007E050 3C0FF200 */ lui $t7, 0xf200 +/* 07EC54 8007E054 AC790004 */ sw $t9, 4($v1) +/* 07EC58 8007E058 ACAF0000 */ sw $t7, ($a1) +/* 07EC5C 8007E05C 8FB80028 */ lw $t8, 0x28($sp) +/* 07EC60 8007E060 00000000 */ nop +/* 07EC64 8007E064 ACB80004 */ sw $t8, 4($a1) +.L8007E068: +/* 07EC68 8007E068 8FAE027C */ lw $t6, 0x27c($sp) +/* 07EC6C 8007E06C 24010003 */ li $at, 3 +/* 07EC70 8007E070 15C10070 */ bne $t6, $at, .L8007E234 +/* 07EC74 8007E074 00E02025 */ move $a0, $a3 +/* 07EC78 8007E078 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 +/* 07EC7C 8007E07C 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 +/* 07EC80 8007E080 02217821 */ addu $t7, $s1, $at +/* 07EC84 8007E084 AC8F0004 */ sw $t7, 4($a0) +/* 07EC88 8007E088 24E70008 */ addiu $a3, $a3, 8 +/* 07EC8C 8007E08C 3C19FD90 */ lui $t9, 0xfd90 +/* 07EC90 8007E090 AC990000 */ sw $t9, ($a0) +/* 07EC94 8007E094 00E05025 */ move $t2, $a3 +/* 07EC98 8007E098 3C18F590 */ lui $t8, 0xf590 +/* 07EC9C 8007E09C AD580000 */ sw $t8, ($t2) +/* 07ECA0 8007E0A0 8FA20268 */ lw $v0, 0x268($sp) +/* 07ECA4 8007E0A4 8FA30260 */ lw $v1, 0x260($sp) +/* 07ECA8 8007E0A8 8FA5026C */ lw $a1, 0x26c($sp) +/* 07ECAC 8007E0AC 304E0003 */ andi $t6, $v0, 3 +/* 07ECB0 8007E0B0 8FA60264 */ lw $a2, 0x264($sp) +/* 07ECB4 8007E0B4 000E1480 */ sll $v0, $t6, 0x12 +/* 07ECB8 8007E0B8 306F000F */ andi $t7, $v1, 0xf +/* 07ECBC 8007E0BC 000F1B80 */ sll $v1, $t7, 0xe +/* 07ECC0 8007E0C0 30AE0003 */ andi $t6, $a1, 3 +/* 07ECC4 8007E0C4 000E2A00 */ sll $a1, $t6, 8 +/* 07ECC8 8007E0C8 3C010700 */ lui $at, 0x700 +/* 07ECCC 8007E0CC 30CF000F */ andi $t7, $a2, 0xf +/* 07ECD0 8007E0D0 000FC100 */ sll $t8, $t7, 4 +/* 07ECD4 8007E0D4 00417025 */ or $t6, $v0, $at +/* 07ECD8 8007E0D8 01C3C825 */ or $t9, $t6, $v1 +/* 07ECDC 8007E0DC 01B00019 */ multu $t5, $s0 +/* 07ECE0 8007E0E0 03257825 */ or $t7, $t9, $a1 +/* 07ECE4 8007E0E4 03003025 */ move $a2, $t8 +/* 07ECE8 8007E0E8 01F8C025 */ or $t8, $t7, $t8 +/* 07ECEC 8007E0EC 24E70008 */ addiu $a3, $a3, 8 +/* 07ECF0 8007E0F0 00E05825 */ move $t3, $a3 +/* 07ECF4 8007E0F4 AD580004 */ sw $t8, 4($t2) +/* 07ECF8 8007E0F8 24E70008 */ addiu $a3, $a3, 8 +/* 07ECFC 8007E0FC 3C0EE600 */ lui $t6, 0xe600 +/* 07ED00 8007E100 AD6E0000 */ sw $t6, ($t3) +/* 07ED04 8007E104 00E06025 */ move $t4, $a3 +/* 07ED08 8007E108 AD600004 */ sw $zero, 4($t3) +/* 07ED0C 8007E10C 00437825 */ or $t7, $v0, $v1 +/* 07ED10 8007E110 3C19F300 */ lui $t9, 0xf300 +/* 07ED14 8007E114 AD990000 */ sw $t9, ($t4) +/* 07ED18 8007E118 01E5C025 */ or $t8, $t7, $a1 +/* 07ED1C 8007E11C 25B9FFFF */ addiu $t9, $t5, -1 +/* 07ED20 8007E120 00197880 */ sll $t7, $t9, 2 +/* 07ED24 8007E124 03067025 */ or $t6, $t8, $a2 +/* 07ED28 8007E128 31F80FFF */ andi $t8, $t7, 0xfff +/* 07ED2C 8007E12C AFAE002C */ sw $t6, 0x2c($sp) +/* 07ED30 8007E130 2619FFFF */ addiu $t9, $s0, -1 +/* 07ED34 8007E134 00197880 */ sll $t7, $t9, 2 +/* 07ED38 8007E138 00187300 */ sll $t6, $t8, 0xc +/* 07ED3C 8007E13C 00004012 */ mflo $t0 +/* 07ED40 8007E140 31F80FFF */ andi $t8, $t7, 0xfff +/* 07ED44 8007E144 01D8C825 */ or $t9, $t6, $t8 +/* 07ED48 8007E148 25080003 */ addiu $t0, $t0, 3 +/* 07ED4C 8007E14C 00087883 */ sra $t7, $t0, 2 +/* 07ED50 8007E150 000DF843 */ sra $ra, $t5, 1 +/* 07ED54 8007E154 27FF0007 */ addiu $ra, $ra, 7 +/* 07ED58 8007E158 25E8FFFF */ addiu $t0, $t7, -1 +/* 07ED5C 8007E15C 001F78C3 */ sra $t7, $ra, 3 +/* 07ED60 8007E160 AFB90028 */ sw $t9, 0x28($sp) +/* 07ED64 8007E164 24E70008 */ addiu $a3, $a3, 8 +/* 07ED68 8007E168 05A10003 */ bgez $t5, .L8007E178 +/* 07ED6C 8007E16C 000D4903 */ sra $t1, $t5, 4 +/* 07ED70 8007E170 25A1000F */ addiu $at, $t5, 0xf +/* 07ED74 8007E174 00014903 */ sra $t1, $at, 4 +.L8007E178: +/* 07ED78 8007E178 252E07FF */ addiu $t6, $t1, 0x7ff +/* 07ED7C 8007E17C 01C9001A */ div $zero, $t6, $t1 +/* 07ED80 8007E180 15200002 */ bnez $t1, .L8007E18C +/* 07ED84 8007E184 00000000 */ nop +/* 07ED88 8007E188 0007000D */ break 7 +.L8007E18C: +/* 07ED8C 8007E18C 2401FFFF */ li $at, -1 +/* 07ED90 8007E190 15210004 */ bne $t1, $at, .L8007E1A4 +/* 07ED94 8007E194 3C018000 */ lui $at, 0x8000 +/* 07ED98 8007E198 15C10002 */ bne $t6, $at, .L8007E1A4 +/* 07ED9C 8007E19C 00000000 */ nop +/* 07EDA0 8007E1A0 0006000D */ break 6 +.L8007E1A4: +/* 07EDA4 8007E1A4 31EE01FF */ andi $t6, $t7, 0x1ff +/* 07EDA8 8007E1A8 00E01025 */ move $v0, $a3 +/* 07EDAC 8007E1AC 24E70008 */ addiu $a3, $a3, 8 +/* 07EDB0 8007E1B0 290107FF */ slti $at, $t0, 0x7ff +/* 07EDB4 8007E1B4 00E01825 */ move $v1, $a3 +/* 07EDB8 8007E1B8 240407FF */ li $a0, 2047 +/* 07EDBC 8007E1BC 0000C012 */ mflo $t8 +/* 07EDC0 8007E1C0 33190FFF */ andi $t9, $t8, 0xfff +/* 07EDC4 8007E1C4 000EC240 */ sll $t8, $t6, 9 +/* 07EDC8 8007E1C8 0300F825 */ move $ra, $t8 +/* 07EDCC 8007E1CC 10200003 */ beqz $at, .L8007E1DC +/* 07EDD0 8007E1D0 AFB90030 */ sw $t9, 0x30($sp) +/* 07EDD4 8007E1D4 10000001 */ b .L8007E1DC +/* 07EDD8 8007E1D8 01002025 */ move $a0, $t0 +.L8007E1DC: +/* 07EDDC 8007E1DC 30990FFF */ andi $t9, $a0, 0xfff +/* 07EDE0 8007E1E0 8FB80030 */ lw $t8, 0x30($sp) +/* 07EDE4 8007E1E4 00197B00 */ sll $t7, $t9, 0xc +/* 07EDE8 8007E1E8 3C010700 */ lui $at, 0x700 +/* 07EDEC 8007E1EC 01E17025 */ or $t6, $t7, $at +/* 07EDF0 8007E1F0 01D8C825 */ or $t9, $t6, $t8 +/* 07EDF4 8007E1F4 AD990004 */ sw $t9, 4($t4) +/* 07EDF8 8007E1F8 3C01F580 */ lui $at, 0xf580 +/* 07EDFC 8007E1FC 3C0FE700 */ lui $t7, 0xe700 +/* 07EE00 8007E200 AC4F0000 */ sw $t7, ($v0) +/* 07EE04 8007E204 03E17025 */ or $t6, $ra, $at +/* 07EE08 8007E208 AC400004 */ sw $zero, 4($v0) +/* 07EE0C 8007E20C AC6E0000 */ sw $t6, ($v1) +/* 07EE10 8007E210 8FB8002C */ lw $t8, 0x2c($sp) +/* 07EE14 8007E214 24E70008 */ addiu $a3, $a3, 8 +/* 07EE18 8007E218 00E02825 */ move $a1, $a3 +/* 07EE1C 8007E21C 3C19F200 */ lui $t9, 0xf200 +/* 07EE20 8007E220 AC780004 */ sw $t8, 4($v1) +/* 07EE24 8007E224 ACB90000 */ sw $t9, ($a1) +/* 07EE28 8007E228 8FAF0028 */ lw $t7, 0x28($sp) +/* 07EE2C 8007E22C 24E70008 */ addiu $a3, $a3, 8 +/* 07EE30 8007E230 ACAF0004 */ sw $t7, 4($a1) +.L8007E234: +/* 07EE34 8007E234 8E2E000C */ lw $t6, 0xc($s1) +/* 07EE38 8007E238 00000000 */ nop +/* 07EE3C 8007E23C 00EEC023 */ subu $t8, $a3, $t6 +/* 07EE40 8007E240 0018C8C3 */ sra $t9, $t8, 3 +/* 07EE44 8007E244 10000342 */ b .L8007EF50 +/* 07EE48 8007E248 A639000A */ sh $t9, 0xa($s1) +.L8007E24C: +/* 07EE4C 8007E24C AFAA0264 */ sw $t2, 0x264($sp) +/* 07EE50 8007E250 AFAB0260 */ sw $t3, 0x260($sp) +/* 07EE54 8007E254 1580005E */ bnez $t4, .L8007E3D0 +/* 07EE58 8007E258 AFAC027C */ sw $t4, 0x27c($sp) +/* 07EE5C 8007E25C 8FAA0284 */ lw $t2, 0x284($sp) +/* 07EE60 8007E260 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 +/* 07EE64 8007E264 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 +/* 07EE68 8007E268 02217021 */ addu $t6, $s1, $at +/* 07EE6C 8007E26C 3C0FFD18 */ lui $t7, 0xfd18 +/* 07EE70 8007E270 25470008 */ addiu $a3, $t2, 8 +/* 07EE74 8007E274 00E04025 */ move $t0, $a3 +/* 07EE78 8007E278 3C18F518 */ lui $t8, 0xf518 +/* 07EE7C 8007E27C AD4F0000 */ sw $t7, ($t2) +/* 07EE80 8007E280 AD4E0004 */ sw $t6, 4($t2) +/* 07EE84 8007E284 01B00019 */ multu $t5, $s0 +/* 07EE88 8007E288 AD180000 */ sw $t8, ($t0) +/* 07EE8C 8007E28C 8FA20268 */ lw $v0, 0x268($sp) +/* 07EE90 8007E290 8FA5026C */ lw $a1, 0x26c($sp) +/* 07EE94 8007E294 8FA30260 */ lw $v1, 0x260($sp) +/* 07EE98 8007E298 30590003 */ andi $t9, $v0, 3 +/* 07EE9C 8007E29C 00191480 */ sll $v0, $t9, 0x12 +/* 07EEA0 8007E2A0 8FA60264 */ lw $a2, 0x264($sp) +/* 07EEA4 8007E2A4 30B90003 */ andi $t9, $a1, 3 +/* 07EEA8 8007E2A8 306E000F */ andi $t6, $v1, 0xf +/* 07EEAC 8007E2AC 000E1B80 */ sll $v1, $t6, 0xe +/* 07EEB0 8007E2B0 00192A00 */ sll $a1, $t9, 8 +/* 07EEB4 8007E2B4 3C010700 */ lui $at, 0x700 +/* 07EEB8 8007E2B8 0041C825 */ or $t9, $v0, $at +/* 07EEBC 8007E2BC 30CE000F */ andi $t6, $a2, 0xf +/* 07EEC0 8007E2C0 000E3100 */ sll $a2, $t6, 4 +/* 07EEC4 8007E2C4 03237825 */ or $t7, $t9, $v1 +/* 07EEC8 8007E2C8 01E57025 */ or $t6, $t7, $a1 +/* 07EECC 8007E2CC 01C6C025 */ or $t8, $t6, $a2 +/* 07EED0 8007E2D0 24E70008 */ addiu $a3, $a3, 8 +/* 07EED4 8007E2D4 00E04825 */ move $t1, $a3 +/* 07EED8 8007E2D8 AD180004 */ sw $t8, 4($t0) +/* 07EEDC 8007E2DC 00004012 */ mflo $t0 +/* 07EEE0 8007E2E0 2508FFFF */ addiu $t0, $t0, -1 +/* 07EEE4 8007E2E4 24E70008 */ addiu $a3, $a3, 8 +/* 07EEE8 8007E2E8 3C19E600 */ lui $t9, 0xe600 +/* 07EEEC 8007E2EC AD390000 */ sw $t9, ($t1) +/* 07EEF0 8007E2F0 00E05825 */ move $t3, $a3 +/* 07EEF4 8007E2F4 290107FF */ slti $at, $t0, 0x7ff +/* 07EEF8 8007E2F8 AD200004 */ sw $zero, 4($t1) +/* 07EEFC 8007E2FC 3C0FF300 */ lui $t7, 0xf300 +/* 07EF00 8007E300 AD6F0000 */ sw $t7, ($t3) +/* 07EF04 8007E304 10200003 */ beqz $at, .L8007E314 +/* 07EF08 8007E308 24E70008 */ addiu $a3, $a3, 8 +/* 07EF0C 8007E30C 10000002 */ b .L8007E318 +/* 07EF10 8007E310 01002025 */ move $a0, $t0 +.L8007E314: +/* 07EF14 8007E314 240407FF */ li $a0, 2047 +.L8007E318: +/* 07EF18 8007E318 308E0FFF */ andi $t6, $a0, 0xfff +/* 07EF1C 8007E31C 000EC300 */ sll $t8, $t6, 0xc +/* 07EF20 8007E320 3C010700 */ lui $at, 0x700 +/* 07EF24 8007E324 0301C825 */ or $t9, $t8, $at +/* 07EF28 8007E328 AD790004 */ sw $t9, 4($t3) +/* 07EF2C 8007E32C 000D7040 */ sll $t6, $t5, 1 +/* 07EF30 8007E330 25D80007 */ addiu $t8, $t6, 7 +/* 07EF34 8007E334 00E04025 */ move $t0, $a3 +/* 07EF38 8007E338 3C0FE700 */ lui $t7, 0xe700 +/* 07EF3C 8007E33C AD0F0000 */ sw $t7, ($t0) +/* 07EF40 8007E340 0018C8C3 */ sra $t9, $t8, 3 +/* 07EF44 8007E344 332F01FF */ andi $t7, $t9, 0x1ff +/* 07EF48 8007E348 000F7240 */ sll $t6, $t7, 9 +/* 07EF4C 8007E34C 0043C825 */ or $t9, $v0, $v1 +/* 07EF50 8007E350 24E70008 */ addiu $a3, $a3, 8 +/* 07EF54 8007E354 3C01F518 */ lui $at, 0xf518 +/* 07EF58 8007E358 01C1C025 */ or $t8, $t6, $at +/* 07EF5C 8007E35C 00E04825 */ move $t1, $a3 +/* 07EF60 8007E360 03257825 */ or $t7, $t9, $a1 +/* 07EF64 8007E364 01E67025 */ or $t6, $t7, $a2 +/* 07EF68 8007E368 AD000004 */ sw $zero, 4($t0) +/* 07EF6C 8007E36C 25B9FFFF */ addiu $t9, $t5, -1 +/* 07EF70 8007E370 00197880 */ sll $t7, $t9, 2 +/* 07EF74 8007E374 AD2E0004 */ sw $t6, 4($t1) +/* 07EF78 8007E378 AD380000 */ sw $t8, ($t1) +/* 07EF7C 8007E37C 24E70008 */ addiu $a3, $a3, 8 +/* 07EF80 8007E380 00E05025 */ move $t2, $a3 +/* 07EF84 8007E384 3C18F200 */ lui $t8, 0xf200 +/* 07EF88 8007E388 31EE0FFF */ andi $t6, $t7, 0xfff +/* 07EF8C 8007E38C AD580000 */ sw $t8, ($t2) +/* 07EF90 8007E390 2619FFFF */ addiu $t9, $s0, -1 +/* 07EF94 8007E394 00197880 */ sll $t7, $t9, 2 +/* 07EF98 8007E398 000EC300 */ sll $t8, $t6, 0xc +/* 07EF9C 8007E39C 31EE0FFF */ andi $t6, $t7, 0xfff +/* 07EFA0 8007E3A0 030EC825 */ or $t9, $t8, $t6 +/* 07EFA4 8007E3A4 AD590004 */ sw $t9, 4($t2) +/* 07EFA8 8007E3A8 8FAF0278 */ lw $t7, 0x278($sp) +/* 07EFAC 8007E3AC 24E70008 */ addiu $a3, $a3, 8 +/* 07EFB0 8007E3B0 11E00003 */ beqz $t7, .L8007E3C0 +/* 07EFB4 8007E3B4 24010002 */ li $at, 2 +/* 07EFB8 8007E3B8 15E10006 */ bne $t7, $at, .L8007E3D4 +/* 07EFBC 8007E3BC 8FB9027C */ lw $t9, 0x27c($sp) +.L8007E3C0: +/* 07EFC0 8007E3C0 86380006 */ lh $t8, 6($s1) +/* 07EFC4 8007E3C4 00000000 */ nop +/* 07EFC8 8007E3C8 370E0004 */ ori $t6, $t8, 4 +/* 07EFCC 8007E3CC A62E0006 */ sh $t6, 6($s1) +.L8007E3D0: +/* 07EFD0 8007E3D0 8FB9027C */ lw $t9, 0x27c($sp) +.L8007E3D4: +/* 07EFD4 8007E3D4 24010001 */ li $at, 1 +/* 07EFD8 8007E3D8 17210064 */ bne $t9, $at, .L8007E56C +/* 07EFDC 8007E3DC 00E02025 */ move $a0, $a3 +/* 07EFE0 8007E3E0 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 +/* 07EFE4 8007E3E4 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 +/* 07EFE8 8007E3E8 0221C021 */ addu $t8, $s1, $at +/* 07EFEC 8007E3EC 24E70008 */ addiu $a3, $a3, 8 +/* 07EFF0 8007E3F0 3C0FFD10 */ lui $t7, 0xfd10 +/* 07EFF4 8007E3F4 AC8F0000 */ sw $t7, ($a0) +/* 07EFF8 8007E3F8 00E04825 */ move $t1, $a3 +/* 07EFFC 8007E3FC AC980004 */ sw $t8, 4($a0) +/* 07F000 8007E400 3C0EF510 */ lui $t6, 0xf510 +/* 07F004 8007E404 AD2E0000 */ sw $t6, ($t1) +/* 07F008 8007E408 8FA20268 */ lw $v0, 0x268($sp) +/* 07F00C 8007E40C 8FA5026C */ lw $a1, 0x26c($sp) +/* 07F010 8007E410 8FA30260 */ lw $v1, 0x260($sp) +/* 07F014 8007E414 30590003 */ andi $t9, $v0, 3 +/* 07F018 8007E418 00191480 */ sll $v0, $t9, 0x12 +/* 07F01C 8007E41C 8FA60264 */ lw $a2, 0x264($sp) +/* 07F020 8007E420 30B90003 */ andi $t9, $a1, 3 +/* 07F024 8007E424 3078000F */ andi $t8, $v1, 0xf +/* 07F028 8007E428 00181B80 */ sll $v1, $t8, 0xe +/* 07F02C 8007E42C 00192A00 */ sll $a1, $t9, 8 +/* 07F030 8007E430 3C010700 */ lui $at, 0x700 +/* 07F034 8007E434 0041C825 */ or $t9, $v0, $at +/* 07F038 8007E438 30D8000F */ andi $t8, $a2, 0xf +/* 07F03C 8007E43C 00183100 */ sll $a2, $t8, 4 +/* 07F040 8007E440 03237825 */ or $t7, $t9, $v1 +/* 07F044 8007E444 01E5C025 */ or $t8, $t7, $a1 +/* 07F048 8007E448 03067025 */ or $t6, $t8, $a2 +/* 07F04C 8007E44C 24E70008 */ addiu $a3, $a3, 8 +/* 07F050 8007E450 01B00019 */ multu $t5, $s0 +/* 07F054 8007E454 00E05025 */ move $t2, $a3 +/* 07F058 8007E458 AD2E0004 */ sw $t6, 4($t1) +/* 07F05C 8007E45C 3C19E600 */ lui $t9, 0xe600 +/* 07F060 8007E460 AD590000 */ sw $t9, ($t2) +/* 07F064 8007E464 24E70008 */ addiu $a3, $a3, 8 +/* 07F068 8007E468 000DC040 */ sll $t8, $t5, 1 +/* 07F06C 8007E46C 270E0007 */ addiu $t6, $t8, 7 +/* 07F070 8007E470 00E05825 */ move $t3, $a3 +/* 07F074 8007E474 AD400004 */ sw $zero, 4($t2) +/* 07F078 8007E478 3C0FF300 */ lui $t7, 0xf300 +/* 07F07C 8007E47C AD6F0000 */ sw $t7, ($t3) +/* 07F080 8007E480 000EC8C3 */ sra $t9, $t6, 3 +/* 07F084 8007E484 332F01FF */ andi $t7, $t9, 0x1ff +/* 07F088 8007E488 000FC240 */ sll $t8, $t7, 9 +/* 07F08C 8007E48C 00437025 */ or $t6, $v0, $v1 +/* 07F090 8007E490 01C5C825 */ or $t9, $t6, $a1 +/* 07F094 8007E494 AFB80030 */ sw $t8, 0x30($sp) +/* 07F098 8007E498 25B8FFFF */ addiu $t8, $t5, -1 +/* 07F09C 8007E49C 00187080 */ sll $t6, $t8, 2 +/* 07F0A0 8007E4A0 03267825 */ or $t7, $t9, $a2 +/* 07F0A4 8007E4A4 31D90FFF */ andi $t9, $t6, 0xfff +/* 07F0A8 8007E4A8 AFAF002C */ sw $t7, 0x2c($sp) +/* 07F0AC 8007E4AC 2618FFFF */ addiu $t8, $s0, -1 +/* 07F0B0 8007E4B0 00187080 */ sll $t6, $t8, 2 +/* 07F0B4 8007E4B4 00197B00 */ sll $t7, $t9, 0xc +/* 07F0B8 8007E4B8 00004012 */ mflo $t0 +/* 07F0BC 8007E4BC 2508FFFF */ addiu $t0, $t0, -1 +/* 07F0C0 8007E4C0 31D90FFF */ andi $t9, $t6, 0xfff +/* 07F0C4 8007E4C4 01F9C025 */ or $t8, $t7, $t9 +/* 07F0C8 8007E4C8 290107FF */ slti $at, $t0, 0x7ff +/* 07F0CC 8007E4CC AFB80028 */ sw $t8, 0x28($sp) +/* 07F0D0 8007E4D0 10200003 */ beqz $at, .L8007E4E0 +/* 07F0D4 8007E4D4 24E70008 */ addiu $a3, $a3, 8 +/* 07F0D8 8007E4D8 10000002 */ b .L8007E4E4 +/* 07F0DC 8007E4DC 01002025 */ move $a0, $t0 +.L8007E4E0: +/* 07F0E0 8007E4E0 240407FF */ li $a0, 2047 +.L8007E4E4: +/* 07F0E4 8007E4E4 308E0FFF */ andi $t6, $a0, 0xfff +/* 07F0E8 8007E4E8 000E7B00 */ sll $t7, $t6, 0xc +/* 07F0EC 8007E4EC 3C010700 */ lui $at, 0x700 +/* 07F0F0 8007E4F0 01E1C825 */ or $t9, $t7, $at +/* 07F0F4 8007E4F4 AD790004 */ sw $t9, 4($t3) +/* 07F0F8 8007E4F8 00E01025 */ move $v0, $a3 +/* 07F0FC 8007E4FC 3C18E700 */ lui $t8, 0xe700 +/* 07F100 8007E500 AC580000 */ sw $t8, ($v0) +/* 07F104 8007E504 AC400004 */ sw $zero, 4($v0) +/* 07F108 8007E508 8FAE0030 */ lw $t6, 0x30($sp) +/* 07F10C 8007E50C 24E70008 */ addiu $a3, $a3, 8 +/* 07F110 8007E510 3C01F510 */ lui $at, 0xf510 +/* 07F114 8007E514 00E01825 */ move $v1, $a3 +/* 07F118 8007E518 01C17825 */ or $t7, $t6, $at +/* 07F11C 8007E51C AC6F0000 */ sw $t7, ($v1) +/* 07F120 8007E520 8FB9002C */ lw $t9, 0x2c($sp) +/* 07F124 8007E524 24E70008 */ addiu $a3, $a3, 8 +/* 07F128 8007E528 00E02825 */ move $a1, $a3 +/* 07F12C 8007E52C 3C18F200 */ lui $t8, 0xf200 +/* 07F130 8007E530 AC790004 */ sw $t9, 4($v1) +/* 07F134 8007E534 ACB80000 */ sw $t8, ($a1) +/* 07F138 8007E538 8FAE0028 */ lw $t6, 0x28($sp) +/* 07F13C 8007E53C 24E70008 */ addiu $a3, $a3, 8 +/* 07F140 8007E540 ACAE0004 */ sw $t6, 4($a1) +/* 07F144 8007E544 8FAF0278 */ lw $t7, 0x278($sp) +/* 07F148 8007E548 24010002 */ li $at, 2 +/* 07F14C 8007E54C 11E00003 */ beqz $t7, .L8007E55C +/* 07F150 8007E550 00000000 */ nop +/* 07F154 8007E554 15E10006 */ bne $t7, $at, .L8007E570 +/* 07F158 8007E558 8FAE027C */ lw $t6, 0x27c($sp) +.L8007E55C: +/* 07F15C 8007E55C 86390006 */ lh $t9, 6($s1) +/* 07F160 8007E560 00000000 */ nop +/* 07F164 8007E564 37380004 */ ori $t8, $t9, 4 +/* 07F168 8007E568 A6380006 */ sh $t8, 6($s1) +.L8007E56C: +/* 07F16C 8007E56C 8FAE027C */ lw $t6, 0x27c($sp) +.L8007E570: +/* 07F170 8007E570 24010007 */ li $at, 7 +/* 07F174 8007E574 15C10097 */ bne $t6, $at, .L8007E7D4 +/* 07F178 8007E578 8FAE027C */ lw $t6, 0x27c($sp) +/* 07F17C 8007E57C 8FA20268 */ lw $v0, 0x268($sp) +/* 07F180 8007E580 8FA30260 */ lw $v1, 0x260($sp) +/* 07F184 8007E584 8FA5026C */ lw $a1, 0x26c($sp) +/* 07F188 8007E588 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 +/* 07F18C 8007E58C 30590003 */ andi $t9, $v0, 3 +/* 07F190 8007E590 00191480 */ sll $v0, $t9, 0x12 +/* 07F194 8007E594 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 +/* 07F198 8007E598 8FA60264 */ lw $a2, 0x264($sp) +/* 07F19C 8007E59C 02217821 */ addu $t7, $s1, $at +/* 07F1A0 8007E5A0 306E000F */ andi $t6, $v1, 0xf +/* 07F1A4 8007E5A4 30B90003 */ andi $t9, $a1, 3 +/* 07F1A8 8007E5A8 01B00019 */ multu $t5, $s0 +/* 07F1AC 8007E5AC 00192A00 */ sll $a1, $t9, 8 +/* 07F1B0 8007E5B0 000E1B80 */ sll $v1, $t6, 0xe +/* 07F1B4 8007E5B4 3C010700 */ lui $at, 0x700 +/* 07F1B8 8007E5B8 0041C825 */ or $t9, $v0, $at +/* 07F1BC 8007E5BC 30CE000F */ andi $t6, $a2, 0xf +/* 07F1C0 8007E5C0 000E3100 */ sll $a2, $t6, 4 +/* 07F1C4 8007E5C4 0323C025 */ or $t8, $t9, $v1 +/* 07F1C8 8007E5C8 86240008 */ lh $a0, 8($s1) +/* 07F1CC 8007E5CC AFAF0048 */ sw $t7, 0x48($sp) +/* 07F1D0 8007E5D0 03057025 */ or $t6, $t8, $a1 +/* 07F1D4 8007E5D4 01C67825 */ or $t7, $t6, $a2 +/* 07F1D8 8007E5D8 0043C825 */ or $t9, $v0, $v1 +/* 07F1DC 8007E5DC 0325C025 */ or $t8, $t9, $a1 +/* 07F1E0 8007E5E0 AFAF0034 */ sw $t7, 0x34($sp) +/* 07F1E4 8007E5E4 25AFFFFF */ addiu $t7, $t5, -1 +/* 07F1E8 8007E5E8 000FC880 */ sll $t9, $t7, 2 +/* 07F1EC 8007E5EC 03067025 */ or $t6, $t8, $a2 +/* 07F1F0 8007E5F0 33380FFF */ andi $t8, $t9, 0xfff +/* 07F1F4 8007E5F4 AFAE002C */ sw $t6, 0x2c($sp) +/* 07F1F8 8007E5F8 260FFFFF */ addiu $t7, $s0, -1 +/* 07F1FC 8007E5FC 000FC880 */ sll $t9, $t7, 2 +/* 07F200 8007E600 00187300 */ sll $t6, $t8, 0xc +/* 07F204 8007E604 33380FFF */ andi $t8, $t9, 0xfff +/* 07F208 8007E608 01D87825 */ or $t7, $t6, $t8 +/* 07F20C 8007E60C 00005012 */ mflo $t2 +/* 07F210 8007E610 AFAA0030 */ sw $t2, 0x30($sp) +/* 07F214 8007E614 AFAF0028 */ sw $t7, 0x28($sp) +/* 07F218 8007E618 AFAD0274 */ sw $t5, 0x274($sp) +/* 07F21C 8007E61C 0C01FBD9 */ jal func_8007EF64 +/* 07F220 8007E620 AFA70248 */ sw $a3, 0x248($sp) +/* 07F224 8007E624 8FA70248 */ lw $a3, 0x248($sp) +/* 07F228 8007E628 8FAA0030 */ lw $t2, 0x30($sp) +/* 07F22C 8007E62C 8FAD0274 */ lw $t5, 0x274($sp) +/* 07F230 8007E630 3C19FD50 */ lui $t9, 0xfd50 +/* 07F234 8007E634 00E01825 */ move $v1, $a3 +/* 07F238 8007E638 AC790000 */ sw $t9, ($v1) +/* 07F23C 8007E63C 8FAE0048 */ lw $t6, 0x48($sp) +/* 07F240 8007E640 24E70008 */ addiu $a3, $a3, 8 +/* 07F244 8007E644 00E02025 */ move $a0, $a3 +/* 07F248 8007E648 3C18F550 */ lui $t8, 0xf550 +/* 07F24C 8007E64C AC6E0004 */ sw $t6, 4($v1) +/* 07F250 8007E650 AC980000 */ sw $t8, ($a0) +/* 07F254 8007E654 8FAF0034 */ lw $t7, 0x34($sp) +/* 07F258 8007E658 24E70008 */ addiu $a3, $a3, 8 +/* 07F25C 8007E65C 00E02825 */ move $a1, $a3 +/* 07F260 8007E660 25480003 */ addiu $t0, $t2, 3 +/* 07F264 8007E664 0008C083 */ sra $t8, $t0, 2 +/* 07F268 8007E668 AC8F0004 */ sw $t7, 4($a0) +/* 07F26C 8007E66C 2708FFFF */ addiu $t0, $t8, -1 +/* 07F270 8007E670 24E70008 */ addiu $a3, $a3, 8 +/* 07F274 8007E674 3C19E600 */ lui $t9, 0xe600 +/* 07F278 8007E678 ACB90000 */ sw $t9, ($a1) +/* 07F27C 8007E67C 00E04825 */ move $t1, $a3 +/* 07F280 8007E680 290107FF */ slti $at, $t0, 0x7ff +/* 07F284 8007E684 ACA00004 */ sw $zero, 4($a1) +/* 07F288 8007E688 3C0EF300 */ lui $t6, 0xf300 +/* 07F28C 8007E68C AD2E0000 */ sw $t6, ($t1) +/* 07F290 8007E690 10200003 */ beqz $at, .L8007E6A0 +/* 07F294 8007E694 24E70008 */ addiu $a3, $a3, 8 +/* 07F298 8007E698 10000002 */ b .L8007E6A4 +/* 07F29C 8007E69C 01002025 */ move $a0, $t0 +.L8007E6A0: +/* 07F2A0 8007E6A0 240407FF */ li $a0, 2047 +.L8007E6A4: +/* 07F2A4 8007E6A4 308F0FFF */ andi $t7, $a0, 0xfff +/* 07F2A8 8007E6A8 000FCB00 */ sll $t9, $t7, 0xc +/* 07F2AC 8007E6AC 3C010700 */ lui $at, 0x700 +/* 07F2B0 8007E6B0 03217025 */ or $t6, $t9, $at +/* 07F2B4 8007E6B4 AD2E0004 */ sw $t6, 4($t1) +/* 07F2B8 8007E6B8 000D7843 */ sra $t7, $t5, 1 +/* 07F2BC 8007E6BC 25F90007 */ addiu $t9, $t7, 7 +/* 07F2C0 8007E6C0 00E01825 */ move $v1, $a3 +/* 07F2C4 8007E6C4 3C18E700 */ lui $t8, 0xe700 +/* 07F2C8 8007E6C8 AC780000 */ sw $t8, ($v1) +/* 07F2CC 8007E6CC 001970C3 */ sra $t6, $t9, 3 +/* 07F2D0 8007E6D0 31D801FF */ andi $t8, $t6, 0x1ff +/* 07F2D4 8007E6D4 00187A40 */ sll $t7, $t8, 9 +/* 07F2D8 8007E6D8 24E70008 */ addiu $a3, $a3, 8 +/* 07F2DC 8007E6DC 3C01F540 */ lui $at, 0xf540 +/* 07F2E0 8007E6E0 01E1C825 */ or $t9, $t7, $at +/* 07F2E4 8007E6E4 00E02825 */ move $a1, $a3 +/* 07F2E8 8007E6E8 AC600004 */ sw $zero, 4($v1) +/* 07F2EC 8007E6EC ACB90000 */ sw $t9, ($a1) +/* 07F2F0 8007E6F0 8FAE002C */ lw $t6, 0x2c($sp) +/* 07F2F4 8007E6F4 24E70008 */ addiu $a3, $a3, 8 +/* 07F2F8 8007E6F8 00E03025 */ move $a2, $a3 +/* 07F2FC 8007E6FC 3C18F200 */ lui $t8, 0xf200 +/* 07F300 8007E700 ACAE0004 */ sw $t6, 4($a1) +/* 07F304 8007E704 ACD80000 */ sw $t8, ($a2) +/* 07F308 8007E708 8FAF0028 */ lw $t7, 0x28($sp) +/* 07F30C 8007E70C 24E70008 */ addiu $a3, $a3, 8 +/* 07F310 8007E710 ACCF0004 */ sw $t7, 4($a2) +/* 07F314 8007E714 00E01825 */ move $v1, $a3 +/* 07F318 8007E718 24E70008 */ addiu $a3, $a3, 8 +/* 07F31C 8007E71C 00E02025 */ move $a0, $a3 +/* 07F320 8007E720 3C19FD10 */ lui $t9, 0xfd10 +/* 07F324 8007E724 AC790000 */ sw $t9, ($v1) +/* 07F328 8007E728 24E70008 */ addiu $a3, $a3, 8 +/* 07F32C 8007E72C AC620004 */ sw $v0, 4($v1) +/* 07F330 8007E730 00E02825 */ move $a1, $a3 +/* 07F334 8007E734 3C0EE800 */ lui $t6, 0xe800 +/* 07F338 8007E738 AC8E0000 */ sw $t6, ($a0) +/* 07F33C 8007E73C AC800004 */ sw $zero, 4($a0) +/* 07F340 8007E740 3C18F500 */ lui $t8, (0xF5000100 >> 16) # lui $t8, 0xf500 +/* 07F344 8007E744 37180100 */ ori $t8, (0xF5000100 & 0xFFFF) # ori $t8, $t8, 0x100 +/* 07F348 8007E748 24E70008 */ addiu $a3, $a3, 8 +/* 07F34C 8007E74C 3C0F0700 */ lui $t7, 0x700 +/* 07F350 8007E750 ACAF0004 */ sw $t7, 4($a1) +/* 07F354 8007E754 00E03025 */ move $a2, $a3 +/* 07F358 8007E758 ACB80000 */ sw $t8, ($a1) +/* 07F35C 8007E75C 24E70008 */ addiu $a3, $a3, 8 +/* 07F360 8007E760 00E04025 */ move $t0, $a3 +/* 07F364 8007E764 3C19E600 */ lui $t9, 0xe600 +/* 07F368 8007E768 ACD90000 */ sw $t9, ($a2) +/* 07F36C 8007E76C ACC00004 */ sw $zero, 4($a2) +/* 07F370 8007E770 3C180703 */ lui $t8, (0x0703C000 >> 16) # lui $t8, 0x703 +/* 07F374 8007E774 3718C000 */ ori $t8, (0x0703C000 & 0xFFFF) # ori $t8, $t8, 0xc000 +/* 07F378 8007E778 24E70008 */ addiu $a3, $a3, 8 +/* 07F37C 8007E77C 3C0EF000 */ lui $t6, 0xf000 +/* 07F380 8007E780 AD0E0000 */ sw $t6, ($t0) +/* 07F384 8007E784 00E01025 */ move $v0, $a3 +/* 07F388 8007E788 AD180004 */ sw $t8, 4($t0) +/* 07F38C 8007E78C 3C0FE700 */ lui $t7, 0xe700 +/* 07F390 8007E790 AC4F0000 */ sw $t7, ($v0) +/* 07F394 8007E794 AC400004 */ sw $zero, 4($v0) +/* 07F398 8007E798 86390006 */ lh $t9, 6($s1) +/* 07F39C 8007E79C 24E70008 */ addiu $a3, $a3, 8 +/* 07F3A0 8007E7A0 372E0020 */ ori $t6, $t9, 0x20 +/* 07F3A4 8007E7A4 A62E0006 */ sh $t6, 6($s1) +/* 07F3A8 8007E7A8 8FB80278 */ lw $t8, 0x278($sp) +/* 07F3AC 8007E7AC 24010002 */ li $at, 2 +/* 07F3B0 8007E7B0 13000003 */ beqz $t8, .L8007E7C0 +/* 07F3B4 8007E7B4 00000000 */ nop +/* 07F3B8 8007E7B8 17010006 */ bne $t8, $at, .L8007E7D4 +/* 07F3BC 8007E7BC 8FAE027C */ lw $t6, 0x27c($sp) +.L8007E7C0: +/* 07F3C0 8007E7C0 862F0006 */ lh $t7, 6($s1) +/* 07F3C4 8007E7C4 00000000 */ nop +/* 07F3C8 8007E7C8 35F90004 */ ori $t9, $t7, 4 +/* 07F3CC 8007E7CC A6390006 */ sh $t9, 6($s1) +/* 07F3D0 8007E7D0 8FAE027C */ lw $t6, 0x27c($sp) +.L8007E7D4: +/* 07F3D4 8007E7D4 24010004 */ li $at, 4 +/* 07F3D8 8007E7D8 15C1005E */ bne $t6, $at, .L8007E954 +/* 07F3DC 8007E7DC 00E02025 */ move $a0, $a3 +/* 07F3E0 8007E7E0 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 +/* 07F3E4 8007E7E4 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 +/* 07F3E8 8007E7E8 02217821 */ addu $t7, $s1, $at +/* 07F3EC 8007E7EC 24E70008 */ addiu $a3, $a3, 8 +/* 07F3F0 8007E7F0 3C18FD70 */ lui $t8, 0xfd70 +/* 07F3F4 8007E7F4 AC980000 */ sw $t8, ($a0) +/* 07F3F8 8007E7F8 00E04825 */ move $t1, $a3 +/* 07F3FC 8007E7FC AC8F0004 */ sw $t7, 4($a0) +/* 07F400 8007E800 3C19F570 */ lui $t9, 0xf570 +/* 07F404 8007E804 AD390000 */ sw $t9, ($t1) +/* 07F408 8007E808 8FA20268 */ lw $v0, 0x268($sp) +/* 07F40C 8007E80C 8FA5026C */ lw $a1, 0x26c($sp) +/* 07F410 8007E810 8FA30260 */ lw $v1, 0x260($sp) +/* 07F414 8007E814 304E0003 */ andi $t6, $v0, 3 +/* 07F418 8007E818 000E1480 */ sll $v0, $t6, 0x12 +/* 07F41C 8007E81C 8FA60264 */ lw $a2, 0x264($sp) +/* 07F420 8007E820 30AE0003 */ andi $t6, $a1, 3 +/* 07F424 8007E824 306F000F */ andi $t7, $v1, 0xf +/* 07F428 8007E828 000F1B80 */ sll $v1, $t7, 0xe +/* 07F42C 8007E82C 000E2A00 */ sll $a1, $t6, 8 +/* 07F430 8007E830 3C010700 */ lui $at, 0x700 +/* 07F434 8007E834 00417025 */ or $t6, $v0, $at +/* 07F438 8007E838 30CF000F */ andi $t7, $a2, 0xf +/* 07F43C 8007E83C 000F3100 */ sll $a2, $t7, 4 +/* 07F440 8007E840 01C3C025 */ or $t8, $t6, $v1 +/* 07F444 8007E844 03057825 */ or $t7, $t8, $a1 +/* 07F448 8007E848 01E6C825 */ or $t9, $t7, $a2 +/* 07F44C 8007E84C 24E70008 */ addiu $a3, $a3, 8 +/* 07F450 8007E850 01B00019 */ multu $t5, $s0 +/* 07F454 8007E854 00E05025 */ move $t2, $a3 +/* 07F458 8007E858 AD390004 */ sw $t9, 4($t1) +/* 07F45C 8007E85C 3C0EE600 */ lui $t6, 0xe600 +/* 07F460 8007E860 AD4E0000 */ sw $t6, ($t2) +/* 07F464 8007E864 24E70008 */ addiu $a3, $a3, 8 +/* 07F468 8007E868 000D7840 */ sll $t7, $t5, 1 +/* 07F46C 8007E86C 25F90007 */ addiu $t9, $t7, 7 +/* 07F470 8007E870 00E05825 */ move $t3, $a3 +/* 07F474 8007E874 AD400004 */ sw $zero, 4($t2) +/* 07F478 8007E878 3C18F300 */ lui $t8, 0xf300 +/* 07F47C 8007E87C AD780000 */ sw $t8, ($t3) +/* 07F480 8007E880 001970C3 */ sra $t6, $t9, 3 +/* 07F484 8007E884 31D801FF */ andi $t8, $t6, 0x1ff +/* 07F488 8007E888 00187A40 */ sll $t7, $t8, 9 +/* 07F48C 8007E88C 0043C825 */ or $t9, $v0, $v1 +/* 07F490 8007E890 03257025 */ or $t6, $t9, $a1 +/* 07F494 8007E894 AFAF0030 */ sw $t7, 0x30($sp) +/* 07F498 8007E898 25AFFFFF */ addiu $t7, $t5, -1 +/* 07F49C 8007E89C 000FC880 */ sll $t9, $t7, 2 +/* 07F4A0 8007E8A0 01C6C025 */ or $t8, $t6, $a2 +/* 07F4A4 8007E8A4 332E0FFF */ andi $t6, $t9, 0xfff +/* 07F4A8 8007E8A8 AFB8002C */ sw $t8, 0x2c($sp) +/* 07F4AC 8007E8AC 260FFFFF */ addiu $t7, $s0, -1 +/* 07F4B0 8007E8B0 000FC880 */ sll $t9, $t7, 2 +/* 07F4B4 8007E8B4 000EC300 */ sll $t8, $t6, 0xc +/* 07F4B8 8007E8B8 00004012 */ mflo $t0 +/* 07F4BC 8007E8BC 2508FFFF */ addiu $t0, $t0, -1 +/* 07F4C0 8007E8C0 332E0FFF */ andi $t6, $t9, 0xfff +/* 07F4C4 8007E8C4 030E7825 */ or $t7, $t8, $t6 +/* 07F4C8 8007E8C8 290107FF */ slti $at, $t0, 0x7ff +/* 07F4CC 8007E8CC AFAF0028 */ sw $t7, 0x28($sp) +/* 07F4D0 8007E8D0 10200003 */ beqz $at, .L8007E8E0 +/* 07F4D4 8007E8D4 24E70008 */ addiu $a3, $a3, 8 +/* 07F4D8 8007E8D8 10000002 */ b .L8007E8E4 +/* 07F4DC 8007E8DC 01002025 */ move $a0, $t0 +.L8007E8E0: +/* 07F4E0 8007E8E0 240407FF */ li $a0, 2047 +.L8007E8E4: +/* 07F4E4 8007E8E4 30990FFF */ andi $t9, $a0, 0xfff +/* 07F4E8 8007E8E8 0019C300 */ sll $t8, $t9, 0xc +/* 07F4EC 8007E8EC 3C010700 */ lui $at, 0x700 +/* 07F4F0 8007E8F0 03017025 */ or $t6, $t8, $at +/* 07F4F4 8007E8F4 AD6E0004 */ sw $t6, 4($t3) +/* 07F4F8 8007E8F8 00E01025 */ move $v0, $a3 +/* 07F4FC 8007E8FC 3C0FE700 */ lui $t7, 0xe700 +/* 07F500 8007E900 AC4F0000 */ sw $t7, ($v0) +/* 07F504 8007E904 AC400004 */ sw $zero, 4($v0) +/* 07F508 8007E908 8FB90030 */ lw $t9, 0x30($sp) +/* 07F50C 8007E90C 24E70008 */ addiu $a3, $a3, 8 +/* 07F510 8007E910 3C01F570 */ lui $at, 0xf570 +/* 07F514 8007E914 00E01825 */ move $v1, $a3 +/* 07F518 8007E918 0321C025 */ or $t8, $t9, $at +/* 07F51C 8007E91C AC780000 */ sw $t8, ($v1) +/* 07F520 8007E920 8FAE002C */ lw $t6, 0x2c($sp) +/* 07F524 8007E924 24E70008 */ addiu $a3, $a3, 8 +/* 07F528 8007E928 00E02825 */ move $a1, $a3 +/* 07F52C 8007E92C 3C0FF200 */ lui $t7, 0xf200 +/* 07F530 8007E930 AC6E0004 */ sw $t6, 4($v1) +/* 07F534 8007E934 ACAF0000 */ sw $t7, ($a1) +/* 07F538 8007E938 8FB90028 */ lw $t9, 0x28($sp) +/* 07F53C 8007E93C 24E70008 */ addiu $a3, $a3, 8 +/* 07F540 8007E940 ACB90004 */ sw $t9, 4($a1) +/* 07F544 8007E944 86380006 */ lh $t8, 6($s1) +/* 07F548 8007E948 00000000 */ nop +/* 07F54C 8007E94C 370E0004 */ ori $t6, $t8, 4 +/* 07F550 8007E950 A62E0006 */ sh $t6, 6($s1) +.L8007E954: +/* 07F554 8007E954 8FAF027C */ lw $t7, 0x27c($sp) +/* 07F558 8007E958 24010005 */ li $at, 5 +/* 07F55C 8007E95C 15E1005D */ bne $t7, $at, .L8007EAD4 +/* 07F560 8007E960 00E02025 */ move $a0, $a3 +/* 07F564 8007E964 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 +/* 07F568 8007E968 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 +/* 07F56C 8007E96C 0221C021 */ addu $t8, $s1, $at +/* 07F570 8007E970 24E70008 */ addiu $a3, $a3, 8 +/* 07F574 8007E974 3C19FD70 */ lui $t9, 0xfd70 +/* 07F578 8007E978 AC990000 */ sw $t9, ($a0) +/* 07F57C 8007E97C 00E04025 */ move $t0, $a3 +/* 07F580 8007E980 AC980004 */ sw $t8, 4($a0) +/* 07F584 8007E984 3C0EF570 */ lui $t6, 0xf570 +/* 07F588 8007E988 AD0E0000 */ sw $t6, ($t0) +/* 07F58C 8007E98C 8FA20268 */ lw $v0, 0x268($sp) +/* 07F590 8007E990 8FA5026C */ lw $a1, 0x26c($sp) +/* 07F594 8007E994 8FA30260 */ lw $v1, 0x260($sp) +/* 07F598 8007E998 304F0003 */ andi $t7, $v0, 3 +/* 07F59C 8007E99C 000F1480 */ sll $v0, $t7, 0x12 +/* 07F5A0 8007E9A0 8FA60264 */ lw $a2, 0x264($sp) +/* 07F5A4 8007E9A4 30AF0003 */ andi $t7, $a1, 3 +/* 07F5A8 8007E9A8 3078000F */ andi $t8, $v1, 0xf +/* 07F5AC 8007E9AC 00181B80 */ sll $v1, $t8, 0xe +/* 07F5B0 8007E9B0 000F2A00 */ sll $a1, $t7, 8 +/* 07F5B4 8007E9B4 3C010700 */ lui $at, 0x700 +/* 07F5B8 8007E9B8 00417825 */ or $t7, $v0, $at +/* 07F5BC 8007E9BC 30D8000F */ andi $t8, $a2, 0xf +/* 07F5C0 8007E9C0 01B00019 */ multu $t5, $s0 +/* 07F5C4 8007E9C4 00183100 */ sll $a2, $t8, 4 +/* 07F5C8 8007E9C8 01E3C825 */ or $t9, $t7, $v1 +/* 07F5CC 8007E9CC 0325C025 */ or $t8, $t9, $a1 +/* 07F5D0 8007E9D0 03067025 */ or $t6, $t8, $a2 +/* 07F5D4 8007E9D4 24E70008 */ addiu $a3, $a3, 8 +/* 07F5D8 8007E9D8 00E04825 */ move $t1, $a3 +/* 07F5DC 8007E9DC AD0E0004 */ sw $t6, 4($t0) +/* 07F5E0 8007E9E0 24E70008 */ addiu $a3, $a3, 8 +/* 07F5E4 8007E9E4 3C0FE600 */ lui $t7, 0xe600 +/* 07F5E8 8007E9E8 AD2F0000 */ sw $t7, ($t1) +/* 07F5EC 8007E9EC 00E05825 */ move $t3, $a3 +/* 07F5F0 8007E9F0 AD200004 */ sw $zero, 4($t1) +/* 07F5F4 8007E9F4 0043C025 */ or $t8, $v0, $v1 +/* 07F5F8 8007E9F8 3C19F300 */ lui $t9, 0xf300 +/* 07F5FC 8007E9FC AD790000 */ sw $t9, ($t3) +/* 07F600 8007EA00 03057025 */ or $t6, $t8, $a1 +/* 07F604 8007EA04 25B9FFFF */ addiu $t9, $t5, -1 +/* 07F608 8007EA08 0019C080 */ sll $t8, $t9, 2 +/* 07F60C 8007EA0C 01C67825 */ or $t7, $t6, $a2 +/* 07F610 8007EA10 330E0FFF */ andi $t6, $t8, 0xfff +/* 07F614 8007EA14 AFAF002C */ sw $t7, 0x2c($sp) +/* 07F618 8007EA18 2619FFFF */ addiu $t9, $s0, -1 +/* 07F61C 8007EA1C 0019C080 */ sll $t8, $t9, 2 +/* 07F620 8007EA20 000E7B00 */ sll $t7, $t6, 0xc +/* 07F624 8007EA24 00005012 */ mflo $t2 +/* 07F628 8007EA28 25480001 */ addiu $t0, $t2, 1 +/* 07F62C 8007EA2C 330E0FFF */ andi $t6, $t8, 0xfff +/* 07F630 8007EA30 0008C043 */ sra $t8, $t0, 1 +/* 07F634 8007EA34 2708FFFF */ addiu $t0, $t8, -1 +/* 07F638 8007EA38 290107FF */ slti $at, $t0, 0x7ff +/* 07F63C 8007EA3C 01EEC825 */ or $t9, $t7, $t6 +/* 07F640 8007EA40 AFB90028 */ sw $t9, 0x28($sp) +/* 07F644 8007EA44 10200003 */ beqz $at, .L8007EA54 +/* 07F648 8007EA48 24E70008 */ addiu $a3, $a3, 8 +/* 07F64C 8007EA4C 10000002 */ b .L8007EA58 +/* 07F650 8007EA50 01002025 */ move $a0, $t0 +.L8007EA54: +/* 07F654 8007EA54 240407FF */ li $a0, 2047 +.L8007EA58: +/* 07F658 8007EA58 308F0FFF */ andi $t7, $a0, 0xfff +/* 07F65C 8007EA5C 000F7300 */ sll $t6, $t7, 0xc +/* 07F660 8007EA60 3C010700 */ lui $at, 0x700 +/* 07F664 8007EA64 01C1C825 */ or $t9, $t6, $at +/* 07F668 8007EA68 AD790004 */ sw $t9, 4($t3) +/* 07F66C 8007EA6C 25AF0007 */ addiu $t7, $t5, 7 +/* 07F670 8007EA70 000F70C3 */ sra $t6, $t7, 3 +/* 07F674 8007EA74 00E01025 */ move $v0, $a3 +/* 07F678 8007EA78 3C18E700 */ lui $t8, 0xe700 +/* 07F67C 8007EA7C AC580000 */ sw $t8, ($v0) +/* 07F680 8007EA80 31D901FF */ andi $t9, $t6, 0x1ff +/* 07F684 8007EA84 0019C240 */ sll $t8, $t9, 9 +/* 07F688 8007EA88 24E70008 */ addiu $a3, $a3, 8 +/* 07F68C 8007EA8C 3C01F568 */ lui $at, 0xf568 +/* 07F690 8007EA90 03017825 */ or $t7, $t8, $at +/* 07F694 8007EA94 00E01825 */ move $v1, $a3 +/* 07F698 8007EA98 AC400004 */ sw $zero, 4($v0) +/* 07F69C 8007EA9C AC6F0000 */ sw $t7, ($v1) +/* 07F6A0 8007EAA0 8FAE002C */ lw $t6, 0x2c($sp) +/* 07F6A4 8007EAA4 24E70008 */ addiu $a3, $a3, 8 +/* 07F6A8 8007EAA8 00E02825 */ move $a1, $a3 +/* 07F6AC 8007EAAC 3C19F200 */ lui $t9, 0xf200 +/* 07F6B0 8007EAB0 AC6E0004 */ sw $t6, 4($v1) +/* 07F6B4 8007EAB4 ACB90000 */ sw $t9, ($a1) +/* 07F6B8 8007EAB8 8FB80028 */ lw $t8, 0x28($sp) +/* 07F6BC 8007EABC 24E70008 */ addiu $a3, $a3, 8 +/* 07F6C0 8007EAC0 ACB80004 */ sw $t8, 4($a1) +/* 07F6C4 8007EAC4 862F0006 */ lh $t7, 6($s1) +/* 07F6C8 8007EAC8 00000000 */ nop +/* 07F6CC 8007EACC 35EE0004 */ ori $t6, $t7, 4 +/* 07F6D0 8007EAD0 A62E0006 */ sh $t6, 6($s1) +.L8007EAD4: +/* 07F6D4 8007EAD4 8FB9027C */ lw $t9, 0x27c($sp) +/* 07F6D8 8007EAD8 24010006 */ li $at, 6 +/* 07F6DC 8007EADC 1721005E */ bne $t9, $at, .L8007EC58 +/* 07F6E0 8007EAE0 00E02025 */ move $a0, $a3 +/* 07F6E4 8007EAE4 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 +/* 07F6E8 8007EAE8 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 +/* 07F6EC 8007EAEC 02217821 */ addu $t7, $s1, $at +/* 07F6F0 8007EAF0 24E70008 */ addiu $a3, $a3, 8 +/* 07F6F4 8007EAF4 3C18FD70 */ lui $t8, 0xfd70 +/* 07F6F8 8007EAF8 AC980000 */ sw $t8, ($a0) +/* 07F6FC 8007EAFC 00E04825 */ move $t1, $a3 +/* 07F700 8007EB00 AC8F0004 */ sw $t7, 4($a0) +/* 07F704 8007EB04 3C0EF570 */ lui $t6, 0xf570 +/* 07F708 8007EB08 AD2E0000 */ sw $t6, ($t1) +/* 07F70C 8007EB0C 8FA20268 */ lw $v0, 0x268($sp) +/* 07F710 8007EB10 8FA5026C */ lw $a1, 0x26c($sp) +/* 07F714 8007EB14 8FA30260 */ lw $v1, 0x260($sp) +/* 07F718 8007EB18 30590003 */ andi $t9, $v0, 3 +/* 07F71C 8007EB1C 00191480 */ sll $v0, $t9, 0x12 +/* 07F720 8007EB20 8FA60264 */ lw $a2, 0x264($sp) +/* 07F724 8007EB24 30B90003 */ andi $t9, $a1, 3 +/* 07F728 8007EB28 306F000F */ andi $t7, $v1, 0xf +/* 07F72C 8007EB2C 000F1B80 */ sll $v1, $t7, 0xe +/* 07F730 8007EB30 00192A00 */ sll $a1, $t9, 8 +/* 07F734 8007EB34 3C010700 */ lui $at, 0x700 +/* 07F738 8007EB38 0041C825 */ or $t9, $v0, $at +/* 07F73C 8007EB3C 30CF000F */ andi $t7, $a2, 0xf +/* 07F740 8007EB40 000F3100 */ sll $a2, $t7, 4 +/* 07F744 8007EB44 0323C025 */ or $t8, $t9, $v1 +/* 07F748 8007EB48 01B00019 */ multu $t5, $s0 +/* 07F74C 8007EB4C 03057825 */ or $t7, $t8, $a1 +/* 07F750 8007EB50 01E67025 */ or $t6, $t7, $a2 +/* 07F754 8007EB54 24E70008 */ addiu $a3, $a3, 8 +/* 07F758 8007EB58 00E05025 */ move $t2, $a3 +/* 07F75C 8007EB5C AD2E0004 */ sw $t6, 4($t1) +/* 07F760 8007EB60 24E70008 */ addiu $a3, $a3, 8 +/* 07F764 8007EB64 3C19E600 */ lui $t9, 0xe600 +/* 07F768 8007EB68 AD590000 */ sw $t9, ($t2) +/* 07F76C 8007EB6C 00E05825 */ move $t3, $a3 +/* 07F770 8007EB70 AD400004 */ sw $zero, 4($t2) +/* 07F774 8007EB74 00437825 */ or $t7, $v0, $v1 +/* 07F778 8007EB78 3C18F300 */ lui $t8, 0xf300 +/* 07F77C 8007EB7C AD780000 */ sw $t8, ($t3) +/* 07F780 8007EB80 01E57025 */ or $t6, $t7, $a1 +/* 07F784 8007EB84 25B8FFFF */ addiu $t8, $t5, -1 +/* 07F788 8007EB88 00187880 */ sll $t7, $t8, 2 +/* 07F78C 8007EB8C 01C6C825 */ or $t9, $t6, $a2 +/* 07F790 8007EB90 31EE0FFF */ andi $t6, $t7, 0xfff +/* 07F794 8007EB94 AFB9002C */ sw $t9, 0x2c($sp) +/* 07F798 8007EB98 2618FFFF */ addiu $t8, $s0, -1 +/* 07F79C 8007EB9C 00187880 */ sll $t7, $t8, 2 +/* 07F7A0 8007EBA0 000ECB00 */ sll $t9, $t6, 0xc +/* 07F7A4 8007EBA4 31EE0FFF */ andi $t6, $t7, 0xfff +/* 07F7A8 8007EBA8 00004012 */ mflo $t0 +/* 07F7AC 8007EBAC 25080003 */ addiu $t0, $t0, 3 +/* 07F7B0 8007EBB0 000DF843 */ sra $ra, $t5, 1 +/* 07F7B4 8007EBB4 27FF0007 */ addiu $ra, $ra, 7 +/* 07F7B8 8007EBB8 00087883 */ sra $t7, $t0, 2 +/* 07F7BC 8007EBBC 032EC025 */ or $t8, $t9, $t6 +/* 07F7C0 8007EBC0 001FC8C3 */ sra $t9, $ra, 3 +/* 07F7C4 8007EBC4 25E8FFFF */ addiu $t0, $t7, -1 +/* 07F7C8 8007EBC8 290107FF */ slti $at, $t0, 0x7ff +/* 07F7CC 8007EBCC 332E01FF */ andi $t6, $t9, 0x1ff +/* 07F7D0 8007EBD0 000EFA40 */ sll $ra, $t6, 9 +/* 07F7D4 8007EBD4 AFB80028 */ sw $t8, 0x28($sp) +/* 07F7D8 8007EBD8 10200003 */ beqz $at, .L8007EBE8 +/* 07F7DC 8007EBDC 24E70008 */ addiu $a3, $a3, 8 +/* 07F7E0 8007EBE0 10000002 */ b .L8007EBEC +/* 07F7E4 8007EBE4 01002025 */ move $a0, $t0 +.L8007EBE8: +/* 07F7E8 8007EBE8 240407FF */ li $a0, 2047 +.L8007EBEC: +/* 07F7EC 8007EBEC 308F0FFF */ andi $t7, $a0, 0xfff +/* 07F7F0 8007EBF0 000FCB00 */ sll $t9, $t7, 0xc +/* 07F7F4 8007EBF4 3C010700 */ lui $at, 0x700 +/* 07F7F8 8007EBF8 03217025 */ or $t6, $t9, $at +/* 07F7FC 8007EBFC 00E01025 */ move $v0, $a3 +/* 07F800 8007EC00 AD6E0004 */ sw $t6, 4($t3) +/* 07F804 8007EC04 24E70008 */ addiu $a3, $a3, 8 +/* 07F808 8007EC08 3C01F560 */ lui $at, 0xf560 +/* 07F80C 8007EC0C 3C18E700 */ lui $t8, 0xe700 +/* 07F810 8007EC10 AC580000 */ sw $t8, ($v0) +/* 07F814 8007EC14 03E17825 */ or $t7, $ra, $at +/* 07F818 8007EC18 00E01825 */ move $v1, $a3 +/* 07F81C 8007EC1C AC400004 */ sw $zero, 4($v0) +/* 07F820 8007EC20 AC6F0000 */ sw $t7, ($v1) +/* 07F824 8007EC24 8FB9002C */ lw $t9, 0x2c($sp) +/* 07F828 8007EC28 24E70008 */ addiu $a3, $a3, 8 +/* 07F82C 8007EC2C 00E02825 */ move $a1, $a3 +/* 07F830 8007EC30 3C0EF200 */ lui $t6, 0xf200 +/* 07F834 8007EC34 AC790004 */ sw $t9, 4($v1) +/* 07F838 8007EC38 ACAE0000 */ sw $t6, ($a1) +/* 07F83C 8007EC3C 8FB80028 */ lw $t8, 0x28($sp) +/* 07F840 8007EC40 24E70008 */ addiu $a3, $a3, 8 +/* 07F844 8007EC44 ACB80004 */ sw $t8, 4($a1) +/* 07F848 8007EC48 862F0006 */ lh $t7, 6($s1) +/* 07F84C 8007EC4C 00000000 */ nop +/* 07F850 8007EC50 35F90004 */ ori $t9, $t7, 4 +/* 07F854 8007EC54 A6390006 */ sh $t9, 6($s1) +.L8007EC58: +/* 07F858 8007EC58 8FAE027C */ lw $t6, 0x27c($sp) +/* 07F85C 8007EC5C 24010002 */ li $at, 2 +/* 07F860 8007EC60 15C10059 */ bne $t6, $at, .L8007EDC8 +/* 07F864 8007EC64 00E02025 */ move $a0, $a3 +/* 07F868 8007EC68 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 +/* 07F86C 8007EC6C 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 +/* 07F870 8007EC70 02217821 */ addu $t7, $s1, $at +/* 07F874 8007EC74 24E70008 */ addiu $a3, $a3, 8 +/* 07F878 8007EC78 3C18FD90 */ lui $t8, 0xfd90 +/* 07F87C 8007EC7C AC980000 */ sw $t8, ($a0) +/* 07F880 8007EC80 00E04825 */ move $t1, $a3 +/* 07F884 8007EC84 AC8F0004 */ sw $t7, 4($a0) +/* 07F888 8007EC88 3C19F590 */ lui $t9, 0xf590 +/* 07F88C 8007EC8C AD390000 */ sw $t9, ($t1) +/* 07F890 8007EC90 8FA20268 */ lw $v0, 0x268($sp) +/* 07F894 8007EC94 8FA5026C */ lw $a1, 0x26c($sp) +/* 07F898 8007EC98 8FA30260 */ lw $v1, 0x260($sp) +/* 07F89C 8007EC9C 304E0003 */ andi $t6, $v0, 3 +/* 07F8A0 8007ECA0 000E1480 */ sll $v0, $t6, 0x12 +/* 07F8A4 8007ECA4 8FA60264 */ lw $a2, 0x264($sp) +/* 07F8A8 8007ECA8 30AE0003 */ andi $t6, $a1, 3 +/* 07F8AC 8007ECAC 306F000F */ andi $t7, $v1, 0xf +/* 07F8B0 8007ECB0 000F1B80 */ sll $v1, $t7, 0xe +/* 07F8B4 8007ECB4 000E2A00 */ sll $a1, $t6, 8 +/* 07F8B8 8007ECB8 3C010700 */ lui $at, 0x700 +/* 07F8BC 8007ECBC 00417025 */ or $t6, $v0, $at +/* 07F8C0 8007ECC0 30CF000F */ andi $t7, $a2, 0xf +/* 07F8C4 8007ECC4 000F3100 */ sll $a2, $t7, 4 +/* 07F8C8 8007ECC8 01C3C025 */ or $t8, $t6, $v1 +/* 07F8CC 8007ECCC 01B00019 */ multu $t5, $s0 +/* 07F8D0 8007ECD0 03057825 */ or $t7, $t8, $a1 +/* 07F8D4 8007ECD4 01E6C825 */ or $t9, $t7, $a2 +/* 07F8D8 8007ECD8 24E70008 */ addiu $a3, $a3, 8 +/* 07F8DC 8007ECDC 00E05025 */ move $t2, $a3 +/* 07F8E0 8007ECE0 AD390004 */ sw $t9, 4($t1) +/* 07F8E4 8007ECE4 24E70008 */ addiu $a3, $a3, 8 +/* 07F8E8 8007ECE8 3C0EE600 */ lui $t6, 0xe600 +/* 07F8EC 8007ECEC AD4E0000 */ sw $t6, ($t2) +/* 07F8F0 8007ECF0 00E05825 */ move $t3, $a3 +/* 07F8F4 8007ECF4 AD400004 */ sw $zero, 4($t2) +/* 07F8F8 8007ECF8 00437825 */ or $t7, $v0, $v1 +/* 07F8FC 8007ECFC 3C18F300 */ lui $t8, 0xf300 +/* 07F900 8007ED00 AD780000 */ sw $t8, ($t3) +/* 07F904 8007ED04 01E5C825 */ or $t9, $t7, $a1 +/* 07F908 8007ED08 25B8FFFF */ addiu $t8, $t5, -1 +/* 07F90C 8007ED0C 00187880 */ sll $t7, $t8, 2 +/* 07F910 8007ED10 03267025 */ or $t6, $t9, $a2 +/* 07F914 8007ED14 31F90FFF */ andi $t9, $t7, 0xfff +/* 07F918 8007ED18 AFAE002C */ sw $t6, 0x2c($sp) +/* 07F91C 8007ED1C 2618FFFF */ addiu $t8, $s0, -1 +/* 07F920 8007ED20 00187880 */ sll $t7, $t8, 2 +/* 07F924 8007ED24 00197300 */ sll $t6, $t9, 0xc +/* 07F928 8007ED28 31F90FFF */ andi $t9, $t7, 0xfff +/* 07F92C 8007ED2C 00004012 */ mflo $t0 +/* 07F930 8007ED30 25080001 */ addiu $t0, $t0, 1 +/* 07F934 8007ED34 00087843 */ sra $t7, $t0, 1 +/* 07F938 8007ED38 01D9C025 */ or $t8, $t6, $t9 +/* 07F93C 8007ED3C 25AC0007 */ addiu $t4, $t5, 7 +/* 07F940 8007ED40 000C70C3 */ sra $t6, $t4, 3 +/* 07F944 8007ED44 25E8FFFF */ addiu $t0, $t7, -1 +/* 07F948 8007ED48 290107FF */ slti $at, $t0, 0x7ff +/* 07F94C 8007ED4C 31D901FF */ andi $t9, $t6, 0x1ff +/* 07F950 8007ED50 00196240 */ sll $t4, $t9, 9 +/* 07F954 8007ED54 AFB80028 */ sw $t8, 0x28($sp) +/* 07F958 8007ED58 10200003 */ beqz $at, .L8007ED68 +/* 07F95C 8007ED5C 24E70008 */ addiu $a3, $a3, 8 +/* 07F960 8007ED60 10000002 */ b .L8007ED6C +/* 07F964 8007ED64 01002025 */ move $a0, $t0 +.L8007ED68: +/* 07F968 8007ED68 240407FF */ li $a0, 2047 +.L8007ED6C: +/* 07F96C 8007ED6C 308F0FFF */ andi $t7, $a0, 0xfff +/* 07F970 8007ED70 000F7300 */ sll $t6, $t7, 0xc +/* 07F974 8007ED74 3C010700 */ lui $at, 0x700 +/* 07F978 8007ED78 01C1C825 */ or $t9, $t6, $at +/* 07F97C 8007ED7C 00E01025 */ move $v0, $a3 +/* 07F980 8007ED80 AD790004 */ sw $t9, 4($t3) +/* 07F984 8007ED84 24E70008 */ addiu $a3, $a3, 8 +/* 07F988 8007ED88 3C01F588 */ lui $at, 0xf588 +/* 07F98C 8007ED8C 3C18E700 */ lui $t8, 0xe700 +/* 07F990 8007ED90 AC580000 */ sw $t8, ($v0) +/* 07F994 8007ED94 01817825 */ or $t7, $t4, $at +/* 07F998 8007ED98 00E01825 */ move $v1, $a3 +/* 07F99C 8007ED9C AC400004 */ sw $zero, 4($v0) +/* 07F9A0 8007EDA0 AC6F0000 */ sw $t7, ($v1) +/* 07F9A4 8007EDA4 8FAE002C */ lw $t6, 0x2c($sp) +/* 07F9A8 8007EDA8 24E70008 */ addiu $a3, $a3, 8 +/* 07F9AC 8007EDAC 00E02825 */ move $a1, $a3 +/* 07F9B0 8007EDB0 3C19F200 */ lui $t9, 0xf200 +/* 07F9B4 8007EDB4 AC6E0004 */ sw $t6, 4($v1) +/* 07F9B8 8007EDB8 ACB90000 */ sw $t9, ($a1) +/* 07F9BC 8007EDBC 8FB80028 */ lw $t8, 0x28($sp) +/* 07F9C0 8007EDC0 24E70008 */ addiu $a3, $a3, 8 +/* 07F9C4 8007EDC4 ACB80004 */ sw $t8, 4($a1) +.L8007EDC8: +/* 07F9C8 8007EDC8 8FAF027C */ lw $t7, 0x27c($sp) +/* 07F9CC 8007EDCC 24010003 */ li $at, 3 +/* 07F9D0 8007EDD0 15E1005A */ bne $t7, $at, .L8007EF3C +/* 07F9D4 8007EDD4 00E02025 */ move $a0, $a3 +/* 07F9D8 8007EDD8 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 +/* 07F9DC 8007EDDC 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 +/* 07F9E0 8007EDE0 0221C821 */ addu $t9, $s1, $at +/* 07F9E4 8007EDE4 24E70008 */ addiu $a3, $a3, 8 +/* 07F9E8 8007EDE8 3C0EFD90 */ lui $t6, 0xfd90 +/* 07F9EC 8007EDEC AC8E0000 */ sw $t6, ($a0) +/* 07F9F0 8007EDF0 00E04825 */ move $t1, $a3 +/* 07F9F4 8007EDF4 AC990004 */ sw $t9, 4($a0) +/* 07F9F8 8007EDF8 3C18F590 */ lui $t8, 0xf590 +/* 07F9FC 8007EDFC AD380000 */ sw $t8, ($t1) +/* 07FA00 8007EE00 8FA20268 */ lw $v0, 0x268($sp) +/* 07FA04 8007EE04 8FA5026C */ lw $a1, 0x26c($sp) +/* 07FA08 8007EE08 8FA30260 */ lw $v1, 0x260($sp) +/* 07FA0C 8007EE0C 304F0003 */ andi $t7, $v0, 3 +/* 07FA10 8007EE10 000F1480 */ sll $v0, $t7, 0x12 +/* 07FA14 8007EE14 8FA60264 */ lw $a2, 0x264($sp) +/* 07FA18 8007EE18 30AF0003 */ andi $t7, $a1, 3 +/* 07FA1C 8007EE1C 3079000F */ andi $t9, $v1, 0xf +/* 07FA20 8007EE20 00191B80 */ sll $v1, $t9, 0xe +/* 07FA24 8007EE24 000F2A00 */ sll $a1, $t7, 8 +/* 07FA28 8007EE28 3C010700 */ lui $at, 0x700 +/* 07FA2C 8007EE2C 00417825 */ or $t7, $v0, $at +/* 07FA30 8007EE30 30D9000F */ andi $t9, $a2, 0xf +/* 07FA34 8007EE34 00193100 */ sll $a2, $t9, 4 +/* 07FA38 8007EE38 01E37025 */ or $t6, $t7, $v1 +/* 07FA3C 8007EE3C 01B00019 */ multu $t5, $s0 +/* 07FA40 8007EE40 01C5C825 */ or $t9, $t6, $a1 +/* 07FA44 8007EE44 0326C025 */ or $t8, $t9, $a2 +/* 07FA48 8007EE48 24E70008 */ addiu $a3, $a3, 8 +/* 07FA4C 8007EE4C 00E05025 */ move $t2, $a3 +/* 07FA50 8007EE50 AD380004 */ sw $t8, 4($t1) +/* 07FA54 8007EE54 24E70008 */ addiu $a3, $a3, 8 +/* 07FA58 8007EE58 3C0FE600 */ lui $t7, 0xe600 +/* 07FA5C 8007EE5C AD4F0000 */ sw $t7, ($t2) +/* 07FA60 8007EE60 00E05825 */ move $t3, $a3 +/* 07FA64 8007EE64 AD400004 */ sw $zero, 4($t2) +/* 07FA68 8007EE68 0043C825 */ or $t9, $v0, $v1 +/* 07FA6C 8007EE6C 3C0EF300 */ lui $t6, 0xf300 +/* 07FA70 8007EE70 AD6E0000 */ sw $t6, ($t3) +/* 07FA74 8007EE74 0325C025 */ or $t8, $t9, $a1 +/* 07FA78 8007EE78 25AEFFFF */ addiu $t6, $t5, -1 +/* 07FA7C 8007EE7C 000EC880 */ sll $t9, $t6, 2 +/* 07FA80 8007EE80 03067825 */ or $t7, $t8, $a2 +/* 07FA84 8007EE84 33380FFF */ andi $t8, $t9, 0xfff +/* 07FA88 8007EE88 AFAF002C */ sw $t7, 0x2c($sp) +/* 07FA8C 8007EE8C 260EFFFF */ addiu $t6, $s0, -1 +/* 07FA90 8007EE90 000EC880 */ sll $t9, $t6, 2 +/* 07FA94 8007EE94 00187B00 */ sll $t7, $t8, 0xc +/* 07FA98 8007EE98 33380FFF */ andi $t8, $t9, 0xfff +/* 07FA9C 8007EE9C 00004012 */ mflo $t0 +/* 07FAA0 8007EEA0 25080003 */ addiu $t0, $t0, 3 +/* 07FAA4 8007EEA4 000DF843 */ sra $ra, $t5, 1 +/* 07FAA8 8007EEA8 27FF0007 */ addiu $ra, $ra, 7 +/* 07FAAC 8007EEAC 0008C883 */ sra $t9, $t0, 2 +/* 07FAB0 8007EEB0 01F87025 */ or $t6, $t7, $t8 +/* 07FAB4 8007EEB4 001F78C3 */ sra $t7, $ra, 3 +/* 07FAB8 8007EEB8 2728FFFF */ addiu $t0, $t9, -1 +/* 07FABC 8007EEBC 290107FF */ slti $at, $t0, 0x7ff +/* 07FAC0 8007EEC0 31F801FF */ andi $t8, $t7, 0x1ff +/* 07FAC4 8007EEC4 0018FA40 */ sll $ra, $t8, 9 +/* 07FAC8 8007EEC8 AFAE0028 */ sw $t6, 0x28($sp) +/* 07FACC 8007EECC 10200003 */ beqz $at, .L8007EEDC +/* 07FAD0 8007EED0 24E70008 */ addiu $a3, $a3, 8 +/* 07FAD4 8007EED4 10000002 */ b .L8007EEE0 +/* 07FAD8 8007EED8 01002025 */ move $a0, $t0 +.L8007EEDC: +/* 07FADC 8007EEDC 240407FF */ li $a0, 2047 +.L8007EEE0: +/* 07FAE0 8007EEE0 30990FFF */ andi $t9, $a0, 0xfff +/* 07FAE4 8007EEE4 00197B00 */ sll $t7, $t9, 0xc +/* 07FAE8 8007EEE8 3C010700 */ lui $at, 0x700 +/* 07FAEC 8007EEEC 01E1C025 */ or $t8, $t7, $at +/* 07FAF0 8007EEF0 00E01025 */ move $v0, $a3 +/* 07FAF4 8007EEF4 AD780004 */ sw $t8, 4($t3) +/* 07FAF8 8007EEF8 24E70008 */ addiu $a3, $a3, 8 +/* 07FAFC 8007EEFC 3C01F580 */ lui $at, 0xf580 +/* 07FB00 8007EF00 3C0EE700 */ lui $t6, 0xe700 +/* 07FB04 8007EF04 AC4E0000 */ sw $t6, ($v0) +/* 07FB08 8007EF08 03E1C825 */ or $t9, $ra, $at +/* 07FB0C 8007EF0C 00E01825 */ move $v1, $a3 +/* 07FB10 8007EF10 AC400004 */ sw $zero, 4($v0) +/* 07FB14 8007EF14 AC790000 */ sw $t9, ($v1) +/* 07FB18 8007EF18 8FAF002C */ lw $t7, 0x2c($sp) +/* 07FB1C 8007EF1C 24E70008 */ addiu $a3, $a3, 8 +/* 07FB20 8007EF20 00E02825 */ move $a1, $a3 +/* 07FB24 8007EF24 3C18F200 */ lui $t8, 0xf200 +/* 07FB28 8007EF28 AC6F0004 */ sw $t7, 4($v1) +/* 07FB2C 8007EF2C ACB80000 */ sw $t8, ($a1) +/* 07FB30 8007EF30 8FAE0028 */ lw $t6, 0x28($sp) +/* 07FB34 8007EF34 24E70008 */ addiu $a3, $a3, 8 +/* 07FB38 8007EF38 ACAE0004 */ sw $t6, 4($a1) +.L8007EF3C: +/* 07FB3C 8007EF3C 8E39000C */ lw $t9, 0xc($s1) +/* 07FB40 8007EF40 00000000 */ nop +/* 07FB44 8007EF44 00F97823 */ subu $t7, $a3, $t9 +/* 07FB48 8007EF48 000FC0C3 */ sra $t8, $t7, 3 +/* 07FB4C 8007EF4C A638000A */ sh $t8, 0xa($s1) +.L8007EF50: +/* 07FB50 8007EF50 8FBF001C */ lw $ra, 0x1c($sp) +/* 07FB54 8007EF54 8FB00014 */ lw $s0, 0x14($sp) +/* 07FB58 8007EF58 8FB10018 */ lw $s1, 0x18($sp) +/* 07FB5C 8007EF5C 03E00008 */ jr $ra +/* 07FB60 8007EF60 27BD0280 */ addiu $sp, $sp, 0x280 + diff --git a/asm/non_matchings/unknown_07B870/func_8007EF64.s b/asm/non_matchings/unknown_07B870/func_8007EF64.s new file mode 100644 index 00000000..a94db8c6 --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007EF64.s @@ -0,0 +1,9 @@ +glabel func_8007EF64 +/* 07FB64 8007EF64 3C188012 */ lui $t8, %hi(D_8012632C) # $t8, 0x8012 +/* 07FB68 8007EF68 8F18632C */ lw $t8, %lo(D_8012632C)($t8) +/* 07FB6C 8007EF6C 00047400 */ sll $t6, $a0, 0x10 +/* 07FB70 8007EF70 000E7C03 */ sra $t7, $t6, 0x10 +/* 07FB74 8007EF74 AFA40000 */ sw $a0, ($sp) +/* 07FB78 8007EF78 03E00008 */ jr $ra +/* 07FB7C 8007EF7C 01F81021 */ addu $v0, $t7, $t8 + diff --git a/asm/non_matchings/unknown_07B870/func_8007EF80.s b/asm/non_matchings/unknown_07B870/func_8007EF80.s new file mode 100644 index 00000000..55fe6366 --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007EF80.s @@ -0,0 +1,170 @@ +glabel func_8007EF80 +/* 07FB80 8007EF80 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 07FB84 8007EF84 AFBF001C */ sw $ra, 0x1c($sp) +/* 07FB88 8007EF88 AFB10018 */ sw $s1, 0x18($sp) +/* 07FB8C 8007EF8C AFB00014 */ sw $s0, 0x14($sp) +/* 07FB90 8007EF90 8CA20000 */ lw $v0, ($a1) +/* 07FB94 8007EF94 3C080400 */ lui $t0, 0x400 +/* 07FB98 8007EF98 3C010200 */ lui $at, 0x200 +/* 07FB9C 8007EF9C 00021A00 */ sll $v1, $v0, 8 +/* 07FBA0 8007EFA0 00A08025 */ move $s0, $a1 +/* 07FBA4 8007EFA4 00808825 */ move $s1, $a0 +/* 07FBA8 8007EFA8 00485024 */ and $t2, $v0, $t0 +/* 07FBAC 8007EFAC 0461003B */ bgez $v1, .L8007F09C +/* 07FBB0 8007EFB0 00414824 */ and $t1, $v0, $at +/* 07FBB4 8007EFB4 1520000E */ bnez $t1, .L8007EFF0 +/* 07FBB8 8007EFB8 00002025 */ move $a0, $zero +/* 07FBBC 8007EFBC 0C01BE53 */ jal func_8006F94C +/* 07FBC0 8007EFC0 240503E8 */ li $a1, 1000 +/* 07FBC4 8007EFC4 284103DA */ slti $at, $v0, 0x3da +/* 07FBC8 8007EFC8 14200082 */ bnez $at, .L8007F1D4 +/* 07FBCC 8007EFCC 3C05FBFF */ lui $a1, (0xFBFFFFFF >> 16) # lui $a1, 0xfbff +/* 07FBD0 8007EFD0 8E0E0000 */ lw $t6, ($s0) +/* 07FBD4 8007EFD4 34A5FFFF */ ori $a1, (0xFBFFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff +/* 07FBD8 8007EFD8 01C57824 */ and $t7, $t6, $a1 +/* 07FBDC 8007EFDC 3C010200 */ lui $at, 0x200 +/* 07FBE0 8007EFE0 AE0F0000 */ sw $t7, ($s0) +/* 07FBE4 8007EFE4 01E1C825 */ or $t9, $t7, $at +/* 07FBE8 8007EFE8 1000007A */ b .L8007F1D4 +/* 07FBEC 8007EFEC AE190000 */ sw $t9, ($s0) +.L8007EFF0: +/* 07FBF0 8007EFF0 1540001C */ bnez $t2, .L8007F064 +/* 07FBF4 8007EFF4 00000000 */ nop +/* 07FBF8 8007EFF8 962C0014 */ lhu $t4, 0x14($s1) +/* 07FBFC 8007EFFC 8CCB0000 */ lw $t3, ($a2) +/* 07FC00 8007F000 01870019 */ multu $t4, $a3 +/* 07FC04 8007F004 00006812 */ mflo $t5 +/* 07FC08 8007F008 016D7021 */ addu $t6, $t3, $t5 +/* 07FC0C 8007F00C ACCE0000 */ sw $t6, ($a2) +/* 07FC10 8007F010 96230012 */ lhu $v1, 0x12($s1) +/* 07FC14 8007F014 00000000 */ nop +/* 07FC18 8007F018 01C3082A */ slt $at, $t6, $v1 +/* 07FC1C 8007F01C 1420006D */ bnez $at, .L8007F1D4 +/* 07FC20 8007F020 00037840 */ sll $t7, $v1, 1 +/* 07FC24 8007F024 01EEC023 */ subu $t8, $t7, $t6 +/* 07FC28 8007F028 2719FFFF */ addiu $t9, $t8, -1 +/* 07FC2C 8007F02C 07210008 */ bgez $t9, .L8007F050 +/* 07FC30 8007F030 ACD90000 */ sw $t9, ($a2) +/* 07FC34 8007F034 ACC00000 */ sw $zero, ($a2) +/* 07FC38 8007F038 8E0B0000 */ lw $t3, ($s0) +/* 07FC3C 8007F03C 3C01F9FF */ lui $at, (0xF9FFFFFF >> 16) # lui $at, 0xf9ff +/* 07FC40 8007F040 3421FFFF */ ori $at, (0xF9FFFFFF & 0xFFFF) # ori $at, $at, 0xffff +/* 07FC44 8007F044 01616824 */ and $t5, $t3, $at +/* 07FC48 8007F048 10000062 */ b .L8007F1D4 +/* 07FC4C 8007F04C AE0D0000 */ sw $t5, ($s0) +.L8007F050: +/* 07FC50 8007F050 8E0E0000 */ lw $t6, ($s0) +/* 07FC54 8007F054 00000000 */ nop +/* 07FC58 8007F058 01C87825 */ or $t7, $t6, $t0 +/* 07FC5C 8007F05C 1000005D */ b .L8007F1D4 +/* 07FC60 8007F060 AE0F0000 */ sw $t7, ($s0) +.L8007F064: +/* 07FC64 8007F064 96390014 */ lhu $t9, 0x14($s1) +/* 07FC68 8007F068 8CD80000 */ lw $t8, ($a2) +/* 07FC6C 8007F06C 03270019 */ multu $t9, $a3 +/* 07FC70 8007F070 3C01F9FF */ lui $at, (0xF9FFFFFF >> 16) # lui $at, 0xf9ff +/* 07FC74 8007F074 00006012 */ mflo $t4 +/* 07FC78 8007F078 030C5823 */ subu $t3, $t8, $t4 +/* 07FC7C 8007F07C 05610055 */ bgez $t3, .L8007F1D4 +/* 07FC80 8007F080 ACCB0000 */ sw $t3, ($a2) +/* 07FC84 8007F084 ACC00000 */ sw $zero, ($a2) +/* 07FC88 8007F088 8E0E0000 */ lw $t6, ($s0) +/* 07FC8C 8007F08C 3421FFFF */ ori $at, (0xF9FFFFFF & 0xFFFF) # ori $at, $at, 0xffff +/* 07FC90 8007F090 01C17824 */ and $t7, $t6, $at +/* 07FC94 8007F094 1000004F */ b .L8007F1D4 +/* 07FC98 8007F098 AE0F0000 */ sw $t7, ($s0) +.L8007F09C: +/* 07FC9C 8007F09C 1120002B */ beqz $t1, .L8007F14C +/* 07FCA0 8007F0A0 3C05FBFF */ lui $a1, (0xFBFFFFFF >> 16) # lui $a1, 0xfbff +/* 07FCA4 8007F0A4 15400008 */ bnez $t2, .L8007F0C8 +/* 07FCA8 8007F0A8 34A5FFFF */ ori $a1, (0xFBFFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff +/* 07FCAC 8007F0AC 96380014 */ lhu $t8, 0x14($s1) +/* 07FCB0 8007F0B0 8CD90000 */ lw $t9, ($a2) +/* 07FCB4 8007F0B4 03070019 */ multu $t8, $a3 +/* 07FCB8 8007F0B8 00006012 */ mflo $t4 +/* 07FCBC 8007F0BC 032C5821 */ addu $t3, $t9, $t4 +/* 07FCC0 8007F0C0 10000007 */ b .L8007F0E0 +/* 07FCC4 8007F0C4 ACCB0000 */ sw $t3, ($a2) +.L8007F0C8: +/* 07FCC8 8007F0C8 962E0014 */ lhu $t6, 0x14($s1) +/* 07FCCC 8007F0CC 8CCD0000 */ lw $t5, ($a2) +/* 07FCD0 8007F0D0 01C70019 */ multu $t6, $a3 +/* 07FCD4 8007F0D4 00007812 */ mflo $t7 +/* 07FCD8 8007F0D8 01AFC023 */ subu $t8, $t5, $t7 +/* 07FCDC 8007F0DC ACD80000 */ sw $t8, ($a2) +.L8007F0E0: +/* 07FCE0 8007F0E0 8CC20000 */ lw $v0, ($a2) +/* 07FCE4 8007F0E4 00002025 */ move $a0, $zero +/* 07FCE8 8007F0E8 04410008 */ bgez $v0, .L8007F10C +/* 07FCEC 8007F0EC 0002C823 */ negu $t9, $v0 +/* 07FCF0 8007F0F0 ACD90000 */ sw $t9, ($a2) +/* 07FCF4 8007F0F4 8E0C0000 */ lw $t4, ($s0) +/* 07FCF8 8007F0F8 24040001 */ li $a0, 1 +/* 07FCFC 8007F0FC 01855824 */ and $t3, $t4, $a1 +/* 07FD00 8007F100 AE0B0000 */ sw $t3, ($s0) +/* 07FD04 8007F104 8CC20000 */ lw $v0, ($a2) +/* 07FD08 8007F108 00000000 */ nop +.L8007F10C: +/* 07FD0C 8007F10C 96230012 */ lhu $v1, 0x12($s1) +/* 07FD10 8007F110 00000000 */ nop +/* 07FD14 8007F114 0043082A */ slt $at, $v0, $v1 +/* 07FD18 8007F118 14200008 */ bnez $at, .L8007F13C +/* 07FD1C 8007F11C 00037040 */ sll $t6, $v1, 1 +/* 07FD20 8007F120 01C26823 */ subu $t5, $t6, $v0 +/* 07FD24 8007F124 25AFFFFF */ addiu $t7, $t5, -1 +/* 07FD28 8007F128 ACCF0000 */ sw $t7, ($a2) +/* 07FD2C 8007F12C 8E180000 */ lw $t8, ($s0) +/* 07FD30 8007F130 24040001 */ li $a0, 1 +/* 07FD34 8007F134 0308C825 */ or $t9, $t8, $t0 +/* 07FD38 8007F138 AE190000 */ sw $t9, ($s0) +.L8007F13C: +/* 07FD3C 8007F13C 1480FFE8 */ bnez $a0, .L8007F0E0 +/* 07FD40 8007F140 00000000 */ nop +/* 07FD44 8007F144 10000024 */ b .L8007F1D8 +/* 07FD48 8007F148 8FBF001C */ lw $ra, 0x1c($sp) +.L8007F14C: +/* 07FD4C 8007F14C 15400014 */ bnez $t2, .L8007F1A0 +/* 07FD50 8007F150 00000000 */ nop +/* 07FD54 8007F154 962B0014 */ lhu $t3, 0x14($s1) +/* 07FD58 8007F158 8CCC0000 */ lw $t4, ($a2) +/* 07FD5C 8007F15C 01670019 */ multu $t3, $a3 +/* 07FD60 8007F160 00007012 */ mflo $t6 +/* 07FD64 8007F164 018E1021 */ addu $v0, $t4, $t6 +/* 07FD68 8007F168 ACC20000 */ sw $v0, ($a2) +/* 07FD6C 8007F16C 96230012 */ lhu $v1, 0x12($s1) +/* 07FD70 8007F170 00000000 */ nop +/* 07FD74 8007F174 0043082A */ slt $at, $v0, $v1 +/* 07FD78 8007F178 14200016 */ bnez $at, .L8007F1D4 +/* 07FD7C 8007F17C 00437823 */ subu $t7, $v0, $v1 +.L8007F180: +/* 07FD80 8007F180 ACCF0000 */ sw $t7, ($a2) +/* 07FD84 8007F184 96230012 */ lhu $v1, 0x12($s1) +/* 07FD88 8007F188 01E01025 */ move $v0, $t7 +/* 07FD8C 8007F18C 01E3082A */ slt $at, $t7, $v1 +/* 07FD90 8007F190 1020FFFB */ beqz $at, .L8007F180 +/* 07FD94 8007F194 00437823 */ subu $t7, $v0, $v1 +/* 07FD98 8007F198 1000000F */ b .L8007F1D8 +/* 07FD9C 8007F19C 8FBF001C */ lw $ra, 0x1c($sp) +.L8007F1A0: +/* 07FDA0 8007F1A0 96390014 */ lhu $t9, 0x14($s1) +/* 07FDA4 8007F1A4 8CD80000 */ lw $t8, ($a2) +/* 07FDA8 8007F1A8 03270019 */ multu $t9, $a3 +/* 07FDAC 8007F1AC 00005812 */ mflo $t3 +/* 07FDB0 8007F1B0 030B1023 */ subu $v0, $t8, $t3 +/* 07FDB4 8007F1B4 04410007 */ bgez $v0, .L8007F1D4 +/* 07FDB8 8007F1B8 ACC20000 */ sw $v0, ($a2) +.L8007F1BC: +/* 07FDBC 8007F1BC 962E0012 */ lhu $t6, 0x12($s1) +/* 07FDC0 8007F1C0 00000000 */ nop +/* 07FDC4 8007F1C4 004E6821 */ addu $t5, $v0, $t6 +/* 07FDC8 8007F1C8 ACCD0000 */ sw $t5, ($a2) +/* 07FDCC 8007F1CC 05A0FFFB */ bltz $t5, .L8007F1BC +/* 07FDD0 8007F1D0 01A01025 */ move $v0, $t5 +.L8007F1D4: +/* 07FDD4 8007F1D4 8FBF001C */ lw $ra, 0x1c($sp) +.L8007F1D8: +/* 07FDD8 8007F1D8 8FB00014 */ lw $s0, 0x14($sp) +/* 07FDDC 8007F1DC 8FB10018 */ lw $s1, 0x18($sp) +/* 07FDE0 8007F1E0 03E00008 */ jr $ra +/* 07FDE4 8007F1E4 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_07B870/func_8007F1E8.s b/asm/non_matchings/unknown_07B870/func_8007F1E8.s new file mode 100644 index 00000000..b9d8fe27 --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007F1E8.s @@ -0,0 +1,29 @@ +glabel func_8007F1E8 +/* 07FDE8 8007F1E8 908E0014 */ lbu $t6, 0x14($a0) +/* 07FDEC 8007F1EC 908F0015 */ lbu $t7, 0x15($a0) +/* 07FDF0 8007F1F0 90980016 */ lbu $t8, 0x16($a0) +/* 07FDF4 8007F1F4 90990017 */ lbu $t9, 0x17($a0) +/* 07FDF8 8007F1F8 8C830000 */ lw $v1, ($a0) +/* 07FDFC 8007F1FC AC800004 */ sw $zero, 4($a0) +/* 07FE00 8007F200 AC800008 */ sw $zero, 8($a0) +/* 07FE04 8007F204 AC80000C */ sw $zero, 0xc($a0) +/* 07FE08 8007F208 A08E0010 */ sb $t6, 0x10($a0) +/* 07FE0C 8007F20C A08F0011 */ sb $t7, 0x11($a0) +/* 07FE10 8007F210 A0980012 */ sb $t8, 0x12($a0) +/* 07FE14 8007F214 1860000B */ blez $v1, .L8007F244 +/* 07FE18 8007F218 A0990013 */ sb $t9, 0x13($a0) +/* 07FE1C 8007F21C 000340C0 */ sll $t0, $v1, 3 +/* 07FE20 8007F220 01042821 */ addu $a1, $t0, $a0 +/* 07FE24 8007F224 00801025 */ move $v0, $a0 +.L8007F228: +/* 07FE28 8007F228 8C89000C */ lw $t1, 0xc($a0) +/* 07FE2C 8007F22C 8C4A0018 */ lw $t2, 0x18($v0) +/* 07FE30 8007F230 24420008 */ addiu $v0, $v0, 8 +/* 07FE34 8007F234 0045082B */ sltu $at, $v0, $a1 +/* 07FE38 8007F238 012A5821 */ addu $t3, $t1, $t2 +/* 07FE3C 8007F23C 1420FFFA */ bnez $at, .L8007F228 +/* 07FE40 8007F240 AC8B000C */ sw $t3, 0xc($a0) +.L8007F244: +/* 07FE44 8007F244 03E00008 */ jr $ra +/* 07FE48 8007F248 00000000 */ nop + diff --git a/asm/non_matchings/unknown_07B870/func_8007F24C.s b/asm/non_matchings/unknown_07B870/func_8007F24C.s new file mode 100644 index 00000000..7eb08ed5 --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007F24C.s @@ -0,0 +1,125 @@ +glabel func_8007F24C +/* 07FE4C 8007F24C 8C8E0000 */ lw $t6, ($a0) +/* 07FE50 8007F250 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 07FE54 8007F254 29C10002 */ slti $at, $t6, 2 +/* 07FE58 8007F258 1420006C */ bnez $at, .L8007F40C +/* 07FE5C 8007F25C 00000000 */ nop +/* 07FE60 8007F260 8C8F0008 */ lw $t7, 8($a0) +/* 07FE64 8007F264 8C83000C */ lw $v1, 0xc($a0) +/* 07FE68 8007F268 01E51021 */ addu $v0, $t7, $a1 +/* 07FE6C 8007F26C 0043082A */ slt $at, $v0, $v1 +/* 07FE70 8007F270 14200006 */ bnez $at, .L8007F28C +/* 07FE74 8007F274 AC820008 */ sw $v0, 8($a0) +.L8007F278: +/* 07FE78 8007F278 0043C823 */ subu $t9, $v0, $v1 +/* 07FE7C 8007F27C 0323082A */ slt $at, $t9, $v1 +/* 07FE80 8007F280 AC990008 */ sw $t9, 8($a0) +/* 07FE84 8007F284 1020FFFC */ beqz $at, .L8007F278 +/* 07FE88 8007F288 03201025 */ move $v0, $t9 +.L8007F28C: +/* 07FE8C 8007F28C 8C830004 */ lw $v1, 4($a0) +/* 07FE90 8007F290 00000000 */ nop +/* 07FE94 8007F294 000370C0 */ sll $t6, $v1, 3 +/* 07FE98 8007F298 008E7821 */ addu $t7, $a0, $t6 +/* 07FE9C 8007F29C 8DE50018 */ lw $a1, 0x18($t7) +/* 07FEA0 8007F2A0 00000000 */ nop +/* 07FEA4 8007F2A4 0045082A */ slt $at, $v0, $a1 +/* 07FEA8 8007F2A8 14200013 */ bnez $at, .L8007F2F8 +/* 07FEAC 8007F2AC 00000000 */ nop +.L8007F2B0: +/* 07FEB0 8007F2B0 8C8E0000 */ lw $t6, ($a0) +/* 07FEB4 8007F2B4 24790001 */ addiu $t9, $v1, 1 +/* 07FEB8 8007F2B8 0045C023 */ subu $t8, $v0, $a1 +/* 07FEBC 8007F2BC 032E082A */ slt $at, $t9, $t6 +/* 07FEC0 8007F2C0 AC980008 */ sw $t8, 8($a0) +/* 07FEC4 8007F2C4 AC990004 */ sw $t9, 4($a0) +/* 07FEC8 8007F2C8 14200003 */ bnez $at, .L8007F2D8 +/* 07FECC 8007F2CC 03201825 */ move $v1, $t9 +/* 07FED0 8007F2D0 AC800004 */ sw $zero, 4($a0) +/* 07FED4 8007F2D4 00001825 */ move $v1, $zero +.L8007F2D8: +/* 07FED8 8007F2D8 000378C0 */ sll $t7, $v1, 3 +/* 07FEDC 8007F2DC 008FC021 */ addu $t8, $a0, $t7 +/* 07FEE0 8007F2E0 8F050018 */ lw $a1, 0x18($t8) +/* 07FEE4 8007F2E4 8C820008 */ lw $v0, 8($a0) +/* 07FEE8 8007F2E8 00000000 */ nop +/* 07FEEC 8007F2EC 0045082A */ slt $at, $v0, $a1 +/* 07FEF0 8007F2F0 1020FFEF */ beqz $at, .L8007F2B0 +/* 07FEF4 8007F2F4 00000000 */ nop +.L8007F2F8: +/* 07FEF8 8007F2F8 8C990000 */ lw $t9, ($a0) +/* 07FEFC 8007F2FC 24650001 */ addiu $a1, $v1, 1 +/* 07FF00 8007F300 00B9082A */ slt $at, $a1, $t9 +/* 07FF04 8007F304 00603025 */ move $a2, $v1 +/* 07FF08 8007F308 14200002 */ bnez $at, .L8007F314 +/* 07FF0C 8007F30C 00A03825 */ move $a3, $a1 +/* 07FF10 8007F310 00003825 */ move $a3, $zero +.L8007F314: +/* 07FF14 8007F314 000670C0 */ sll $t6, $a2, 3 +/* 07FF18 8007F318 008E1821 */ addu $v1, $a0, $t6 +/* 07FF1C 8007F31C 8C780018 */ lw $t8, 0x18($v1) +/* 07FF20 8007F320 00027C00 */ sll $t7, $v0, 0x10 +/* 07FF24 8007F324 01F8001A */ div $zero, $t7, $t8 +/* 07FF28 8007F328 0007C8C0 */ sll $t9, $a3, 3 +/* 07FF2C 8007F32C 00996821 */ addu $t5, $a0, $t9 +/* 07FF30 8007F330 90680014 */ lbu $t0, 0x14($v1) +/* 07FF34 8007F334 91AC0014 */ lbu $t4, 0x14($t5) +/* 07FF38 8007F338 91AE0015 */ lbu $t6, 0x15($t5) +/* 07FF3C 8007F33C 0188C823 */ subu $t9, $t4, $t0 +/* 07FF40 8007F340 90690015 */ lbu $t1, 0x15($v1) +/* 07FF44 8007F344 906A0016 */ lbu $t2, 0x16($v1) +/* 07FF48 8007F348 906B0017 */ lbu $t3, 0x17($v1) +/* 07FF4C 8007F34C 17000002 */ bnez $t8, .L8007F358 +/* 07FF50 8007F350 00000000 */ nop +/* 07FF54 8007F354 0007000D */ break 7 +.L8007F358: +/* 07FF58 8007F358 2401FFFF */ li $at, -1 +/* 07FF5C 8007F35C 17010004 */ bne $t8, $at, .L8007F370 +/* 07FF60 8007F360 3C018000 */ lui $at, 0x8000 +/* 07FF64 8007F364 15E10002 */ bne $t7, $at, .L8007F370 +/* 07FF68 8007F368 00000000 */ nop +/* 07FF6C 8007F36C 0006000D */ break 6 +.L8007F370: +/* 07FF70 8007F370 AFAE0008 */ sw $t6, 8($sp) +/* 07FF74 8007F374 91AF0016 */ lbu $t7, 0x16($t5) +/* 07FF78 8007F378 00000000 */ nop +/* 07FF7C 8007F37C AFAF0004 */ sw $t7, 4($sp) +/* 07FF80 8007F380 91B80017 */ lbu $t8, 0x17($t5) +/* 07FF84 8007F384 00000000 */ nop +/* 07FF88 8007F388 AFB80000 */ sw $t8, ($sp) +/* 07FF8C 8007F38C 00002812 */ mflo $a1 +/* 07FF90 8007F390 00000000 */ nop +/* 07FF94 8007F394 00000000 */ nop +/* 07FF98 8007F398 03250019 */ multu $t9, $a1 +/* 07FF9C 8007F39C 00007012 */ mflo $t6 +/* 07FFA0 8007F3A0 000E7C02 */ srl $t7, $t6, 0x10 +/* 07FFA4 8007F3A4 01E8C021 */ addu $t8, $t7, $t0 +/* 07FFA8 8007F3A8 A0980010 */ sb $t8, 0x10($a0) +/* 07FFAC 8007F3AC 8FB90008 */ lw $t9, 8($sp) +/* 07FFB0 8007F3B0 00000000 */ nop +/* 07FFB4 8007F3B4 03297023 */ subu $t6, $t9, $t1 +/* 07FFB8 8007F3B8 01C50019 */ multu $t6, $a1 +/* 07FFBC 8007F3BC 00007812 */ mflo $t7 +/* 07FFC0 8007F3C0 000FC402 */ srl $t8, $t7, 0x10 +/* 07FFC4 8007F3C4 0309C821 */ addu $t9, $t8, $t1 +/* 07FFC8 8007F3C8 A0990011 */ sb $t9, 0x11($a0) +/* 07FFCC 8007F3CC 8FAE0004 */ lw $t6, 4($sp) +/* 07FFD0 8007F3D0 00000000 */ nop +/* 07FFD4 8007F3D4 01CA7823 */ subu $t7, $t6, $t2 +/* 07FFD8 8007F3D8 01E50019 */ multu $t7, $a1 +/* 07FFDC 8007F3DC 0000C012 */ mflo $t8 +/* 07FFE0 8007F3E0 0018CC02 */ srl $t9, $t8, 0x10 +/* 07FFE4 8007F3E4 032A7021 */ addu $t6, $t9, $t2 +/* 07FFE8 8007F3E8 A08E0012 */ sb $t6, 0x12($a0) +/* 07FFEC 8007F3EC 8FAF0000 */ lw $t7, ($sp) +/* 07FFF0 8007F3F0 00000000 */ nop +/* 07FFF4 8007F3F4 01EBC023 */ subu $t8, $t7, $t3 +/* 07FFF8 8007F3F8 03050019 */ multu $t8, $a1 +/* 07FFFC 8007F3FC 0000C812 */ mflo $t9 +/* 080000 8007F400 00197402 */ srl $t6, $t9, 0x10 +/* 080004 8007F404 01CB7821 */ addu $t7, $t6, $t3 +/* 080008 8007F408 A08F0013 */ sb $t7, 0x13($a0) +.L8007F40C: +/* 08000C 8007F40C 03E00008 */ jr $ra +/* 080010 8007F410 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_07B870/func_8007F414.s b/asm/non_matchings/unknown_07B870/func_8007F414.s new file mode 100644 index 00000000..81e58402 --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007F414.s @@ -0,0 +1,23 @@ +glabel func_8007F414 +/* 080014 8007F414 948E000C */ lhu $t6, 0xc($a0) +/* 080018 8007F418 94830000 */ lhu $v1, ($a0) +/* 08001C 8007F41C A4800002 */ sh $zero, 2($a0) +/* 080020 8007F420 A4800004 */ sh $zero, 4($a0) +/* 080024 8007F424 A4800006 */ sh $zero, 6($a0) +/* 080028 8007F428 1860000B */ blez $v1, .L8007F458 +/* 08002C 8007F42C AC8E0008 */ sw $t6, 8($a0) +/* 080030 8007F430 00037880 */ sll $t7, $v1, 2 +/* 080034 8007F434 01E42821 */ addu $a1, $t7, $a0 +/* 080038 8007F438 00801025 */ move $v0, $a0 +.L8007F43C: +/* 08003C 8007F43C 94980006 */ lhu $t8, 6($a0) +/* 080040 8007F440 9459000E */ lhu $t9, 0xe($v0) +/* 080044 8007F444 24420004 */ addiu $v0, $v0, 4 +/* 080048 8007F448 0045082B */ sltu $at, $v0, $a1 +/* 08004C 8007F44C 03194021 */ addu $t0, $t8, $t9 +/* 080050 8007F450 1420FFFA */ bnez $at, .L8007F43C +/* 080054 8007F454 A4880006 */ sh $t0, 6($a0) +.L8007F458: +/* 080058 8007F458 03E00008 */ jr $ra +/* 08005C 8007F45C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_07B870/func_8007F460.s b/asm/non_matchings/unknown_07B870/func_8007F460.s new file mode 100644 index 00000000..6fd90741 --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007F460.s @@ -0,0 +1,88 @@ +glabel func_8007F460 +/* 080060 8007F460 948E0000 */ lhu $t6, ($a0) +/* 080064 8007F464 00000000 */ nop +/* 080068 8007F468 29C10002 */ slti $at, $t6, 2 +/* 08006C 8007F46C 14200047 */ bnez $at, .L8007F58C +/* 080070 8007F470 00000000 */ nop +/* 080074 8007F474 948F0004 */ lhu $t7, 4($a0) +/* 080078 8007F478 94830006 */ lhu $v1, 6($a0) +/* 08007C 8007F47C 01E5C021 */ addu $t8, $t7, $a1 +/* 080080 8007F480 3302FFFF */ andi $v0, $t8, 0xffff +/* 080084 8007F484 0043082A */ slt $at, $v0, $v1 +/* 080088 8007F488 14200006 */ bnez $at, .L8007F4A4 +/* 08008C 8007F48C A4980004 */ sh $t8, 4($a0) +.L8007F490: +/* 080090 8007F490 0043C823 */ subu $t9, $v0, $v1 +/* 080094 8007F494 3322FFFF */ andi $v0, $t9, 0xffff +/* 080098 8007F498 0043082A */ slt $at, $v0, $v1 +/* 08009C 8007F49C 1020FFFC */ beqz $at, .L8007F490 +/* 0800A0 8007F4A0 A4990004 */ sh $t9, 4($a0) +.L8007F4A4: +/* 0800A4 8007F4A4 94830002 */ lhu $v1, 2($a0) +/* 0800A8 8007F4A8 00000000 */ nop +/* 0800AC 8007F4AC 00034080 */ sll $t0, $v1, 2 +/* 0800B0 8007F4B0 00884821 */ addu $t1, $a0, $t0 +/* 0800B4 8007F4B4 9525000E */ lhu $a1, 0xe($t1) +/* 0800B8 8007F4B8 00000000 */ nop +/* 0800BC 8007F4BC 0045082A */ slt $at, $v0, $a1 +/* 0800C0 8007F4C0 14200013 */ bnez $at, .L8007F510 +/* 0800C4 8007F4C4 00000000 */ nop +.L8007F4C8: +/* 0800C8 8007F4C8 948C0000 */ lhu $t4, ($a0) +/* 0800CC 8007F4CC 246B0001 */ addiu $t3, $v1, 1 +/* 0800D0 8007F4D0 3163FFFF */ andi $v1, $t3, 0xffff +/* 0800D4 8007F4D4 00455023 */ subu $t2, $v0, $a1 +/* 0800D8 8007F4D8 006C082A */ slt $at, $v1, $t4 +/* 0800DC 8007F4DC A48A0004 */ sh $t2, 4($a0) +/* 0800E0 8007F4E0 14200003 */ bnez $at, .L8007F4F0 +/* 0800E4 8007F4E4 A48B0002 */ sh $t3, 2($a0) +/* 0800E8 8007F4E8 A4800002 */ sh $zero, 2($a0) +/* 0800EC 8007F4EC 3003FFFF */ andi $v1, $zero, 0xffff +.L8007F4F0: +/* 0800F0 8007F4F0 00036880 */ sll $t5, $v1, 2 +/* 0800F4 8007F4F4 008D7021 */ addu $t6, $a0, $t5 +/* 0800F8 8007F4F8 95C5000E */ lhu $a1, 0xe($t6) +/* 0800FC 8007F4FC 94820004 */ lhu $v0, 4($a0) +/* 080100 8007F500 00000000 */ nop +/* 080104 8007F504 0045082A */ slt $at, $v0, $a1 +/* 080108 8007F508 1020FFEF */ beqz $at, .L8007F4C8 +/* 08010C 8007F50C 00000000 */ nop +.L8007F510: +/* 080110 8007F510 948F0000 */ lhu $t7, ($a0) +/* 080114 8007F514 24670001 */ addiu $a3, $v1, 1 +/* 080118 8007F518 00EF082A */ slt $at, $a3, $t7 +/* 08011C 8007F51C 00602825 */ move $a1, $v1 +/* 080120 8007F520 14200002 */ bnez $at, .L8007F52C +/* 080124 8007F524 00E03025 */ move $a2, $a3 +/* 080128 8007F528 00003025 */ move $a2, $zero +.L8007F52C: +/* 08012C 8007F52C 0006C880 */ sll $t9, $a2, 2 +/* 080130 8007F530 00994021 */ addu $t0, $a0, $t9 +/* 080134 8007F534 9509000C */ lhu $t1, 0xc($t0) +/* 080138 8007F538 0005C080 */ sll $t8, $a1, 2 +/* 08013C 8007F53C 01220019 */ multu $t1, $v0 +/* 080140 8007F540 00981821 */ addu $v1, $a0, $t8 +/* 080144 8007F544 946B000E */ lhu $t3, 0xe($v1) +/* 080148 8007F548 946D000C */ lhu $t5, 0xc($v1) +/* 08014C 8007F54C 00005012 */ mflo $t2 +/* 080150 8007F550 00000000 */ nop +/* 080154 8007F554 00000000 */ nop +/* 080158 8007F558 014B001A */ div $zero, $t2, $t3 +/* 08015C 8007F55C 15600002 */ bnez $t3, .L8007F568 +/* 080160 8007F560 00000000 */ nop +/* 080164 8007F564 0007000D */ break 7 +.L8007F568: +/* 080168 8007F568 2401FFFF */ li $at, -1 +/* 08016C 8007F56C 15610004 */ bne $t3, $at, .L8007F580 +/* 080170 8007F570 3C018000 */ lui $at, 0x8000 +/* 080174 8007F574 15410002 */ bne $t2, $at, .L8007F580 +/* 080178 8007F578 00000000 */ nop +/* 08017C 8007F57C 0006000D */ break 6 +.L8007F580: +/* 080180 8007F580 00006012 */ mflo $t4 +/* 080184 8007F584 018D7021 */ addu $t6, $t4, $t5 +/* 080188 8007F588 AC8E0008 */ sw $t6, 8($a0) +.L8007F58C: +/* 08018C 8007F58C 03E00008 */ jr $ra +/* 080190 8007F590 00000000 */ nop + diff --git a/asm/non_matchings/unknown_07B870/func_8007F594.s b/asm/non_matchings/unknown_07B870/func_8007F594.s new file mode 100644 index 00000000..b3fe357b --- /dev/null +++ b/asm/non_matchings/unknown_07B870/func_8007F594.s @@ -0,0 +1,47 @@ +glabel func_8007F594 +/* 080194 8007F594 3C02800E */ lui $v0, %hi(D_800DF3A8) # $v0, 0x800e +/* 080198 8007F598 2CA10002 */ sltiu $at, $a1, 2 +/* 08019C 8007F59C AFA40000 */ sw $a0, ($sp) +/* 0801A0 8007F5A0 AFA60008 */ sw $a2, 8($sp) +/* 0801A4 8007F5A4 AFA7000C */ sw $a3, 0xc($sp) +/* 0801A8 8007F5A8 2442F3A8 */ addiu $v0, %lo(D_800DF3A8) # addiu $v0, $v0, -0xc58 +/* 0801AC 8007F5AC 14200004 */ bnez $at, .L8007F5C0 +/* 0801B0 8007F5B0 00A01825 */ move $v1, $a1 +/* 0801B4 8007F5B4 3C02800E */ lui $v0, %hi(D_800DF3D8) # $v0, 0x800e +/* 0801B8 8007F5B8 24030002 */ li $v1, 2 +/* 0801BC 8007F5BC 2442F3D8 */ addiu $v0, %lo(D_800DF3D8) # addiu $v0, $v0, -0xc28 +.L8007F5C0: +/* 0801C0 8007F5C0 8FAE0000 */ lw $t6, ($sp) +/* 0801C4 8007F5C4 3C0F0600 */ lui $t7, 0x600 +/* 0801C8 8007F5C8 8DC50000 */ lw $a1, ($t6) +/* 0801CC 8007F5CC 0003C900 */ sll $t9, $v1, 4 +/* 0801D0 8007F5D0 3C018000 */ lui $at, 0x8000 +/* 0801D4 8007F5D4 3C0A800E */ lui $t2, %hi(D_800DF410) # $t2, 0x800e +/* 0801D8 8007F5D8 24A60008 */ addiu $a2, $a1, 8 +/* 0801DC 8007F5DC 254AF410 */ addiu $t2, %lo(D_800DF410) # addiu $t2, $t2, -0xbf0 +/* 0801E0 8007F5E0 03214821 */ addu $t1, $t9, $at +/* 0801E4 8007F5E4 3C180702 */ lui $t8, (0x07020010 >> 16) # lui $t8, 0x702 +/* 0801E8 8007F5E8 ACAF0000 */ sw $t7, ($a1) +/* 0801EC 8007F5EC ACA20004 */ sw $v0, 4($a1) +/* 0801F0 8007F5F0 37180010 */ ori $t8, (0x07020010 & 0xFFFF) # ori $t8, $t8, 0x10 +/* 0801F4 8007F5F4 012A5821 */ addu $t3, $t1, $t2 +/* 0801F8 8007F5F8 ACCB0004 */ sw $t3, 4($a2) +/* 0801FC 8007F5FC ACD80000 */ sw $t8, ($a2) +/* 080200 8007F600 24C70008 */ addiu $a3, $a2, 8 +/* 080204 8007F604 3C0CFA00 */ lui $t4, 0xfa00 +/* 080208 8007F608 ACEC0000 */ sw $t4, ($a3) +/* 08020C 8007F60C 8FAD0008 */ lw $t5, 8($sp) +/* 080210 8007F610 24E80008 */ addiu $t0, $a3, 8 +/* 080214 8007F614 3C0EFB00 */ lui $t6, 0xfb00 +/* 080218 8007F618 ACED0004 */ sw $t5, 4($a3) +/* 08021C 8007F61C AD0E0000 */ sw $t6, ($t0) +/* 080220 8007F620 8FAF000C */ lw $t7, 0xc($sp) +/* 080224 8007F624 25040008 */ addiu $a0, $t0, 8 +/* 080228 8007F628 AD0F0004 */ sw $t7, 4($t0) +/* 08022C 8007F62C 8FB80000 */ lw $t8, ($sp) +/* 080230 8007F630 03E00008 */ jr $ra +/* 080234 8007F634 AF040000 */ sw $a0, ($t8) + +/* 080238 8007F638 00000000 */ nop +/* 08023C 8007F63C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_080240/func_8007F640.s b/asm/non_matchings/unknown_080240/func_8007F640.s new file mode 100644 index 00000000..be224d22 --- /dev/null +++ b/asm/non_matchings/unknown_080240/func_8007F640.s @@ -0,0 +1,60 @@ +glabel func_8007F640 +/* 080240 8007F640 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 080244 8007F644 AFBF001C */ sw $ra, 0x1c($sp) +/* 080248 8007F648 AFA40030 */ sw $a0, 0x30($sp) +/* 08024C 8007F64C AFB00018 */ sw $s0, 0x18($sp) +/* 080250 8007F650 0C01DB16 */ jal func_80076C58 +/* 080254 8007F654 2404000B */ li $a0, 11 +/* 080258 8007F658 8C4E0000 */ lw $t6, ($v0) +/* 08025C 8007F65C 2404FFFF */ li $a0, -1 +/* 080260 8007F660 8FA80030 */ lw $t0, 0x30($sp) +/* 080264 8007F664 00408025 */ move $s0, $v0 +/* 080268 8007F668 108E0005 */ beq $a0, $t6, .L8007F680 +/* 08026C 8007F66C 00001825 */ move $v1, $zero +.L8007F670: +/* 080270 8007F670 8C4F0004 */ lw $t7, 4($v0) +/* 080274 8007F674 24630001 */ addiu $v1, $v1, 1 +/* 080278 8007F678 148FFFFD */ bne $a0, $t7, .L8007F670 +/* 08027C 8007F67C 24420004 */ addiu $v0, $v0, 4 +.L8007F680: +/* 080280 8007F680 2463FFFF */ addiu $v1, $v1, -1 +/* 080284 8007F684 14600005 */ bnez $v1, .L8007F69C +/* 080288 8007F688 00000000 */ nop +/* 08028C 8007F68C 0C01C450 */ jal func_80071140 +/* 080290 8007F690 02002025 */ move $a0, $s0 +/* 080294 8007F694 1000001B */ b .L8007F704 +/* 080298 8007F698 3C028010 */ lui $v0, 0x8010 +.L8007F69C: +/* 08029C 8007F69C 05000002 */ bltz $t0, .L8007F6A8 +/* 0802A0 8007F6A0 0103082A */ slt $at, $t0, $v1 +/* 0802A4 8007F6A4 14200004 */ bnez $at, .L8007F6B8 +.L8007F6A8: +/* 0802A8 8007F6A8 3C04800E */ lui $a0, %hi(D_800E7C90) # $a0, 0x800e +/* 0802AC 8007F6AC 0C032755 */ jal func_800C9D54 +/* 0802B0 8007F6B0 24847C90 */ addiu $a0, %lo(D_800E7C90) # addiu $a0, $a0, 0x7c90 +/* 0802B4 8007F6B4 00004025 */ move $t0, $zero +.L8007F6B8: +/* 0802B8 8007F6B8 0008C080 */ sll $t8, $t0, 2 +/* 0802BC 8007F6BC 02181021 */ addu $v0, $s0, $t8 +/* 0802C0 8007F6C0 8C460000 */ lw $a2, ($v0) +/* 0802C4 8007F6C4 8C590004 */ lw $t9, 4($v0) +/* 0802C8 8007F6C8 3405FFFF */ li $a1, 65535 +/* 0802CC 8007F6CC 03262023 */ subu $a0, $t9, $a2 +/* 0802D0 8007F6D0 AFA40020 */ sw $a0, 0x20($sp) +/* 0802D4 8007F6D4 0C01C327 */ jal func_80070C9C +/* 0802D8 8007F6D8 AFA60024 */ sw $a2, 0x24($sp) +/* 0802DC 8007F6DC 8FA60024 */ lw $a2, 0x24($sp) +/* 0802E0 8007F6E0 8FA70020 */ lw $a3, 0x20($sp) +/* 0802E4 8007F6E4 AFA2002C */ sw $v0, 0x2c($sp) +/* 0802E8 8007F6E8 2404000A */ li $a0, 10 +/* 0802EC 8007F6EC 0C01DB9A */ jal func_80076E68 +/* 0802F0 8007F6F0 00402825 */ move $a1, $v0 +/* 0802F4 8007F6F4 0C01C450 */ jal func_80071140 +/* 0802F8 8007F6F8 02002025 */ move $a0, $s0 +/* 0802FC 8007F6FC 8FA2002C */ lw $v0, 0x2c($sp) +/* 080300 8007F700 00000000 */ nop +.L8007F704: +/* 080304 8007F704 8FBF001C */ lw $ra, 0x1c($sp) +/* 080308 8007F708 8FB00018 */ lw $s0, 0x18($sp) +/* 08030C 8007F70C 03E00008 */ jr $ra +/* 080310 8007F710 27BD0030 */ addiu $sp, $sp, 0x30 diff --git a/asm/unknown_080240.s b/asm/non_matchings/unknown_080240/func_8007F714.s old mode 100755 new mode 100644 similarity index 68% rename from asm/unknown_080240.s rename to asm/non_matchings/unknown_080240/func_8007F714.s index 47c8a2b7..8489faa7 --- a/asm/unknown_080240.s +++ b/asm/non_matchings/unknown_080240/func_8007F714.s @@ -1,193 +1,126 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -/* 080240 8007F640 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 080244 8007F644 AFBF001C */ sw $ra, 0x1c($sp) -/* 080248 8007F648 AFA40030 */ sw $a0, 0x30($sp) -/* 08024C 8007F64C AFB00018 */ sw $s0, 0x18($sp) -/* 080250 8007F650 0C01DB16 */ jal func_80076C58 -/* 080254 8007F654 2404000B */ li $a0, 11 -/* 080258 8007F658 8C4E0000 */ lw $t6, ($v0) -/* 08025C 8007F65C 2404FFFF */ li $a0, -1 -/* 080260 8007F660 8FA80030 */ lw $t0, 0x30($sp) -/* 080264 8007F664 00408025 */ move $s0, $v0 -/* 080268 8007F668 108E0005 */ beq $a0, $t6, .L8007F680 -/* 08026C 8007F66C 00001825 */ move $v1, $zero -.L8007F670: -/* 080270 8007F670 8C4F0004 */ lw $t7, 4($v0) -/* 080274 8007F674 24630001 */ addiu $v1, $v1, 1 -/* 080278 8007F678 148FFFFD */ bne $a0, $t7, .L8007F670 -/* 08027C 8007F67C 24420004 */ addiu $v0, $v0, 4 -.L8007F680: -/* 080280 8007F680 2463FFFF */ addiu $v1, $v1, -1 -/* 080284 8007F684 14600005 */ bnez $v1, .L8007F69C -/* 080288 8007F688 00000000 */ nop -/* 08028C 8007F68C 0C01C450 */ jal func_80071140 -/* 080290 8007F690 02002025 */ move $a0, $s0 -/* 080294 8007F694 1000001B */ b .L8007F704 -/* 080298 8007F698 3C028010 */ lui $v0, 0x8010 -.L8007F69C: -/* 08029C 8007F69C 05000002 */ bltz $t0, .L8007F6A8 -/* 0802A0 8007F6A0 0103082A */ slt $at, $t0, $v1 -/* 0802A4 8007F6A4 14200004 */ bnez $at, .L8007F6B8 -.L8007F6A8: -/* 0802A8 8007F6A8 3C04800E */ lui $a0, %hi(D_800E7C90) # $a0, 0x800e -/* 0802AC 8007F6AC 0C032755 */ jal func_800C9D54 -/* 0802B0 8007F6B0 24847C90 */ addiu $a0, %lo(D_800E7C90) # addiu $a0, $a0, 0x7c90 -/* 0802B4 8007F6B4 00004025 */ move $t0, $zero -.L8007F6B8: -/* 0802B8 8007F6B8 0008C080 */ sll $t8, $t0, 2 -/* 0802BC 8007F6BC 02181021 */ addu $v0, $s0, $t8 -/* 0802C0 8007F6C0 8C460000 */ lw $a2, ($v0) -/* 0802C4 8007F6C4 8C590004 */ lw $t9, 4($v0) -/* 0802C8 8007F6C8 3405FFFF */ li $a1, 65535 -/* 0802CC 8007F6CC 03262023 */ subu $a0, $t9, $a2 -/* 0802D0 8007F6D0 AFA40020 */ sw $a0, 0x20($sp) -/* 0802D4 8007F6D4 0C01C327 */ jal func_80070C9C -/* 0802D8 8007F6D8 AFA60024 */ sw $a2, 0x24($sp) -/* 0802DC 8007F6DC 8FA60024 */ lw $a2, 0x24($sp) -/* 0802E0 8007F6E0 8FA70020 */ lw $a3, 0x20($sp) -/* 0802E4 8007F6E4 AFA2002C */ sw $v0, 0x2c($sp) -/* 0802E8 8007F6E8 2404000A */ li $a0, 10 -/* 0802EC 8007F6EC 0C01DB9A */ jal func_80076E68 -/* 0802F0 8007F6F0 00402825 */ move $a1, $v0 -/* 0802F4 8007F6F4 0C01C450 */ jal func_80071140 -/* 0802F8 8007F6F8 02002025 */ move $a0, $s0 -/* 0802FC 8007F6FC 8FA2002C */ lw $v0, 0x2c($sp) -/* 080300 8007F700 00000000 */ nop -.L8007F704: -/* 080304 8007F704 8FBF001C */ lw $ra, 0x1c($sp) -/* 080308 8007F708 8FB00018 */ lw $s0, 0x18($sp) -/* 08030C 8007F70C 03E00008 */ jr $ra -/* 080310 8007F710 27BD0030 */ addiu $sp, $sp, 0x30 - -/* 080314 8007F714 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 080318 8007F718 AFBF002C */ sw $ra, 0x2c($sp) -/* 08031C 8007F71C AFBE0028 */ sw $fp, 0x28($sp) -/* 080320 8007F720 AFB70024 */ sw $s7, 0x24($sp) -/* 080324 8007F724 AFB60020 */ sw $s6, 0x20($sp) -/* 080328 8007F728 AFB5001C */ sw $s5, 0x1c($sp) -/* 08032C 8007F72C AFB40018 */ sw $s4, 0x18($sp) -/* 080330 8007F730 AFB30014 */ sw $s3, 0x14($sp) -/* 080334 8007F734 AFB20010 */ sw $s2, 0x10($sp) -/* 080338 8007F738 AFB1000C */ sw $s1, 0xc($sp) -/* 08033C 8007F73C AFB00008 */ sw $s0, 8($sp) -/* 080340 8007F740 8C820000 */ lw $v0, ($a0) -/* 080344 8007F744 3C18800E */ lui $t8, %hi(D_800DF440) # $t8, 0x800e -/* 080348 8007F748 244E0008 */ addiu $t6, $v0, 8 -/* 08034C 8007F74C AC8E0000 */ sw $t6, ($a0) -/* 080350 8007F750 2718F440 */ addiu $t8, %lo(D_800DF440) # addiu $t8, $t8, -0xbc0 -/* 080354 8007F754 3C0F0702 */ lui $t7, (0x07020010 >> 16) # lui $t7, 0x702 -/* 080358 8007F758 3C018000 */ lui $at, 0x8000 -/* 08035C 8007F75C 0301C821 */ addu $t9, $t8, $at -/* 080360 8007F760 35EF0010 */ ori $t7, (0x07020010 & 0xFFFF) # ori $t7, $t7, 0x10 -/* 080364 8007F764 3C110708 */ lui $s1, (0x07080200 >> 16) # lui $s1, 0x708 -/* 080368 8007F768 3C140777 */ lui $s4, (0x0777F000 >> 16) # lui $s4, 0x777 -/* 08036C 8007F76C 3C16F510 */ lui $s6, (0xF510A000 >> 16) # lui $s6, 0xf510 -/* 080370 8007F770 3C170008 */ lui $s7, (0x00080200 >> 16) # lui $s7, 8 -/* 080374 8007F774 3C1F004F */ lui $ra, (0x004FC014 >> 16) # lui $ra, 0x4f -/* 080378 8007F778 24B00010 */ addiu $s0, $a1, 0x10 -/* 08037C 8007F77C 00003825 */ move $a3, $zero -/* 080380 8007F780 37FFC014 */ ori $ra, (0x004FC014 & 0xFFFF) # ori $ra, $ra, 0xc014 -/* 080384 8007F784 36F70200 */ ori $s7, (0x00080200 & 0xFFFF) # ori $s7, $s7, 0x200 -/* 080388 8007F788 36D6A000 */ ori $s6, (0xF510A000 & 0xFFFF) # ori $s6, $s6, 0xa000 -/* 08038C 8007F78C 3694F000 */ ori $s4, (0x0777F000 & 0xFFFF) # ori $s4, $s4, 0xf000 -/* 080390 8007F790 36310200 */ ori $s1, (0x07080200 & 0xFFFF) # ori $s1, $s1, 0x200 -/* 080394 8007F794 3C12E600 */ lui $s2, 0xe600 -/* 080398 8007F798 3C13F300 */ lui $s3, 0xf300 -/* 08039C 8007F79C 3C15E700 */ lui $s5, 0xe700 -/* 0803A0 8007F7A0 3C1EF200 */ lui $fp, 0xf200 -/* 0803A4 8007F7A4 3C0DF510 */ lui $t5, 0xf510 -/* 0803A8 8007F7A8 3C0C8000 */ lui $t4, 0x8000 -/* 0803AC 8007F7AC 3C0BFD10 */ lui $t3, 0xfd10 -/* 0803B0 8007F7B0 AC4F0000 */ sw $t7, ($v0) -/* 0803B4 8007F7B4 AC590004 */ sw $t9, 4($v0) -.L8007F7B8: -/* 0803B8 8007F7B8 8C820000 */ lw $v0, ($a0) -/* 0803BC 8007F7BC 020C7821 */ addu $t7, $s0, $t4 -/* 0803C0 8007F7C0 244E0008 */ addiu $t6, $v0, 8 -/* 0803C4 8007F7C4 AC8E0000 */ sw $t6, ($a0) -/* 0803C8 8007F7C8 AC4F0004 */ sw $t7, 4($v0) -/* 0803CC 8007F7CC AC4B0000 */ sw $t3, ($v0) -/* 0803D0 8007F7D0 8C820000 */ lw $v0, ($a0) -/* 0803D4 8007F7D4 24EA0006 */ addiu $t2, $a3, 6 -/* 0803D8 8007F7D8 24580008 */ addiu $t8, $v0, 8 -/* 0803DC 8007F7DC AC980000 */ sw $t8, ($a0) -/* 0803E0 8007F7E0 AC510004 */ sw $s1, 4($v0) -/* 0803E4 8007F7E4 AC4D0000 */ sw $t5, ($v0) -/* 0803E8 8007F7E8 8C820000 */ lw $v0, ($a0) -/* 0803EC 8007F7EC 3C01E450 */ lui $at, 0xe450 -/* 0803F0 8007F7F0 24590008 */ addiu $t9, $v0, 8 -/* 0803F4 8007F7F4 AC990000 */ sw $t9, ($a0) -/* 0803F8 8007F7F8 AC400004 */ sw $zero, 4($v0) -/* 0803FC 8007F7FC AC520000 */ sw $s2, ($v0) -/* 080400 8007F800 8C820000 */ lw $v0, ($a0) -/* 080404 8007F804 26100F00 */ addiu $s0, $s0, 0xf00 -/* 080408 8007F808 244E0008 */ addiu $t6, $v0, 8 -/* 08040C 8007F80C AC8E0000 */ sw $t6, ($a0) -/* 080410 8007F810 AC540004 */ sw $s4, 4($v0) -/* 080414 8007F814 AC530000 */ sw $s3, ($v0) -/* 080418 8007F818 8C820000 */ lw $v0, ($a0) -/* 08041C 8007F81C 00000000 */ nop -/* 080420 8007F820 244F0008 */ addiu $t7, $v0, 8 -/* 080424 8007F824 AC8F0000 */ sw $t7, ($a0) -/* 080428 8007F828 AC400004 */ sw $zero, 4($v0) -/* 08042C 8007F82C AC550000 */ sw $s5, ($v0) -/* 080430 8007F830 8C820000 */ lw $v0, ($a0) -/* 080434 8007F834 000A7880 */ sll $t7, $t2, 2 -/* 080438 8007F838 24580008 */ addiu $t8, $v0, 8 -/* 08043C 8007F83C AC980000 */ sw $t8, ($a0) -/* 080440 8007F840 AC570004 */ sw $s7, 4($v0) -/* 080444 8007F844 AC560000 */ sw $s6, ($v0) -/* 080448 8007F848 8C820000 */ lw $v0, ($a0) -/* 08044C 8007F84C 31F80FFF */ andi $t8, $t7, 0xfff -/* 080450 8007F850 24590008 */ addiu $t9, $v0, 8 -/* 080454 8007F854 AC990000 */ sw $t9, ($a0) -/* 080458 8007F858 AC5F0004 */ sw $ra, 4($v0) -/* 08045C 8007F85C AC5E0000 */ sw $fp, ($v0) -/* 080460 8007F860 8C820000 */ lw $v0, ($a0) -/* 080464 8007F864 0301C825 */ or $t9, $t8, $at -/* 080468 8007F868 244E0008 */ addiu $t6, $v0, 8 -/* 08046C 8007F86C AC8E0000 */ sw $t6, ($a0) -/* 080470 8007F870 00077080 */ sll $t6, $a3, 2 -/* 080474 8007F874 31CF0FFF */ andi $t7, $t6, 0xfff -/* 080478 8007F878 AC4F0004 */ sw $t7, 4($v0) -/* 08047C 8007F87C AC590000 */ sw $t9, ($v0) -/* 080480 8007F880 8C820000 */ lw $v0, ($a0) -/* 080484 8007F884 3C19B300 */ lui $t9, 0xb300 -/* 080488 8007F888 24580008 */ addiu $t8, $v0, 8 -/* 08048C 8007F88C AC980000 */ sw $t8, ($a0) -/* 080490 8007F890 AC400004 */ sw $zero, 4($v0) -/* 080494 8007F894 AC590000 */ sw $t9, ($v0) -/* 080498 8007F898 8C820000 */ lw $v0, ($a0) -/* 08049C 8007F89C 3C181000 */ lui $t8, (0x10000400 >> 16) # lui $t8, 0x1000 -/* 0804A0 8007F8A0 244E0008 */ addiu $t6, $v0, 8 -/* 0804A4 8007F8A4 AC8E0000 */ sw $t6, ($a0) -/* 0804A8 8007F8A8 37180400 */ ori $t8, (0x10000400 & 0xFFFF) # ori $t8, $t8, 0x400 -/* 0804AC 8007F8AC 3C0FB200 */ lui $t7, 0xb200 -/* 0804B0 8007F8B0 240100F0 */ li $at, 240 -/* 0804B4 8007F8B4 01403825 */ move $a3, $t2 -/* 0804B8 8007F8B8 AC4F0000 */ sw $t7, ($v0) -/* 0804BC 8007F8BC 1541FFBE */ bne $t2, $at, .L8007F7B8 -/* 0804C0 8007F8C0 AC580004 */ sw $t8, 4($v0) -/* 0804C4 8007F8C4 8FBF002C */ lw $ra, 0x2c($sp) -/* 0804C8 8007F8C8 8FB00008 */ lw $s0, 8($sp) -/* 0804CC 8007F8CC 8FB1000C */ lw $s1, 0xc($sp) -/* 0804D0 8007F8D0 8FB20010 */ lw $s2, 0x10($sp) -/* 0804D4 8007F8D4 8FB30014 */ lw $s3, 0x14($sp) -/* 0804D8 8007F8D8 8FB40018 */ lw $s4, 0x18($sp) -/* 0804DC 8007F8DC 8FB5001C */ lw $s5, 0x1c($sp) -/* 0804E0 8007F8E0 8FB60020 */ lw $s6, 0x20($sp) -/* 0804E4 8007F8E4 8FB70024 */ lw $s7, 0x24($sp) -/* 0804E8 8007F8E8 8FBE0028 */ lw $fp, 0x28($sp) -/* 0804EC 8007F8EC 03E00008 */ jr $ra -/* 0804F0 8007F8F0 27BD0030 */ addiu $sp, $sp, 0x30 - -/* 0804F4 8007F8F4 00000000 */ nop -/* 0804F8 8007F8F8 00000000 */ nop -/* 0804FC 8007F8FC 00000000 */ nop +glabel func_8007F714 +/* 080314 8007F714 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 080318 8007F718 AFBF002C */ sw $ra, 0x2c($sp) +/* 08031C 8007F71C AFBE0028 */ sw $fp, 0x28($sp) +/* 080320 8007F720 AFB70024 */ sw $s7, 0x24($sp) +/* 080324 8007F724 AFB60020 */ sw $s6, 0x20($sp) +/* 080328 8007F728 AFB5001C */ sw $s5, 0x1c($sp) +/* 08032C 8007F72C AFB40018 */ sw $s4, 0x18($sp) +/* 080330 8007F730 AFB30014 */ sw $s3, 0x14($sp) +/* 080334 8007F734 AFB20010 */ sw $s2, 0x10($sp) +/* 080338 8007F738 AFB1000C */ sw $s1, 0xc($sp) +/* 08033C 8007F73C AFB00008 */ sw $s0, 8($sp) +/* 080340 8007F740 8C820000 */ lw $v0, ($a0) +/* 080344 8007F744 3C18800E */ lui $t8, %hi(D_800DF440) # $t8, 0x800e +/* 080348 8007F748 244E0008 */ addiu $t6, $v0, 8 +/* 08034C 8007F74C AC8E0000 */ sw $t6, ($a0) +/* 080350 8007F750 2718F440 */ addiu $t8, %lo(D_800DF440) # addiu $t8, $t8, -0xbc0 +/* 080354 8007F754 3C0F0702 */ lui $t7, (0x07020010 >> 16) # lui $t7, 0x702 +/* 080358 8007F758 3C018000 */ lui $at, 0x8000 +/* 08035C 8007F75C 0301C821 */ addu $t9, $t8, $at +/* 080360 8007F760 35EF0010 */ ori $t7, (0x07020010 & 0xFFFF) # ori $t7, $t7, 0x10 +/* 080364 8007F764 3C110708 */ lui $s1, (0x07080200 >> 16) # lui $s1, 0x708 +/* 080368 8007F768 3C140777 */ lui $s4, (0x0777F000 >> 16) # lui $s4, 0x777 +/* 08036C 8007F76C 3C16F510 */ lui $s6, (0xF510A000 >> 16) # lui $s6, 0xf510 +/* 080370 8007F770 3C170008 */ lui $s7, (0x00080200 >> 16) # lui $s7, 8 +/* 080374 8007F774 3C1F004F */ lui $ra, (0x004FC014 >> 16) # lui $ra, 0x4f +/* 080378 8007F778 24B00010 */ addiu $s0, $a1, 0x10 +/* 08037C 8007F77C 00003825 */ move $a3, $zero +/* 080380 8007F780 37FFC014 */ ori $ra, (0x004FC014 & 0xFFFF) # ori $ra, $ra, 0xc014 +/* 080384 8007F784 36F70200 */ ori $s7, (0x00080200 & 0xFFFF) # ori $s7, $s7, 0x200 +/* 080388 8007F788 36D6A000 */ ori $s6, (0xF510A000 & 0xFFFF) # ori $s6, $s6, 0xa000 +/* 08038C 8007F78C 3694F000 */ ori $s4, (0x0777F000 & 0xFFFF) # ori $s4, $s4, 0xf000 +/* 080390 8007F790 36310200 */ ori $s1, (0x07080200 & 0xFFFF) # ori $s1, $s1, 0x200 +/* 080394 8007F794 3C12E600 */ lui $s2, 0xe600 +/* 080398 8007F798 3C13F300 */ lui $s3, 0xf300 +/* 08039C 8007F79C 3C15E700 */ lui $s5, 0xe700 +/* 0803A0 8007F7A0 3C1EF200 */ lui $fp, 0xf200 +/* 0803A4 8007F7A4 3C0DF510 */ lui $t5, 0xf510 +/* 0803A8 8007F7A8 3C0C8000 */ lui $t4, 0x8000 +/* 0803AC 8007F7AC 3C0BFD10 */ lui $t3, 0xfd10 +/* 0803B0 8007F7B0 AC4F0000 */ sw $t7, ($v0) +/* 0803B4 8007F7B4 AC590004 */ sw $t9, 4($v0) +.L8007F7B8: +/* 0803B8 8007F7B8 8C820000 */ lw $v0, ($a0) +/* 0803BC 8007F7BC 020C7821 */ addu $t7, $s0, $t4 +/* 0803C0 8007F7C0 244E0008 */ addiu $t6, $v0, 8 +/* 0803C4 8007F7C4 AC8E0000 */ sw $t6, ($a0) +/* 0803C8 8007F7C8 AC4F0004 */ sw $t7, 4($v0) +/* 0803CC 8007F7CC AC4B0000 */ sw $t3, ($v0) +/* 0803D0 8007F7D0 8C820000 */ lw $v0, ($a0) +/* 0803D4 8007F7D4 24EA0006 */ addiu $t2, $a3, 6 +/* 0803D8 8007F7D8 24580008 */ addiu $t8, $v0, 8 +/* 0803DC 8007F7DC AC980000 */ sw $t8, ($a0) +/* 0803E0 8007F7E0 AC510004 */ sw $s1, 4($v0) +/* 0803E4 8007F7E4 AC4D0000 */ sw $t5, ($v0) +/* 0803E8 8007F7E8 8C820000 */ lw $v0, ($a0) +/* 0803EC 8007F7EC 3C01E450 */ lui $at, 0xe450 +/* 0803F0 8007F7F0 24590008 */ addiu $t9, $v0, 8 +/* 0803F4 8007F7F4 AC990000 */ sw $t9, ($a0) +/* 0803F8 8007F7F8 AC400004 */ sw $zero, 4($v0) +/* 0803FC 8007F7FC AC520000 */ sw $s2, ($v0) +/* 080400 8007F800 8C820000 */ lw $v0, ($a0) +/* 080404 8007F804 26100F00 */ addiu $s0, $s0, 0xf00 +/* 080408 8007F808 244E0008 */ addiu $t6, $v0, 8 +/* 08040C 8007F80C AC8E0000 */ sw $t6, ($a0) +/* 080410 8007F810 AC540004 */ sw $s4, 4($v0) +/* 080414 8007F814 AC530000 */ sw $s3, ($v0) +/* 080418 8007F818 8C820000 */ lw $v0, ($a0) +/* 08041C 8007F81C 00000000 */ nop +/* 080420 8007F820 244F0008 */ addiu $t7, $v0, 8 +/* 080424 8007F824 AC8F0000 */ sw $t7, ($a0) +/* 080428 8007F828 AC400004 */ sw $zero, 4($v0) +/* 08042C 8007F82C AC550000 */ sw $s5, ($v0) +/* 080430 8007F830 8C820000 */ lw $v0, ($a0) +/* 080434 8007F834 000A7880 */ sll $t7, $t2, 2 +/* 080438 8007F838 24580008 */ addiu $t8, $v0, 8 +/* 08043C 8007F83C AC980000 */ sw $t8, ($a0) +/* 080440 8007F840 AC570004 */ sw $s7, 4($v0) +/* 080444 8007F844 AC560000 */ sw $s6, ($v0) +/* 080448 8007F848 8C820000 */ lw $v0, ($a0) +/* 08044C 8007F84C 31F80FFF */ andi $t8, $t7, 0xfff +/* 080450 8007F850 24590008 */ addiu $t9, $v0, 8 +/* 080454 8007F854 AC990000 */ sw $t9, ($a0) +/* 080458 8007F858 AC5F0004 */ sw $ra, 4($v0) +/* 08045C 8007F85C AC5E0000 */ sw $fp, ($v0) +/* 080460 8007F860 8C820000 */ lw $v0, ($a0) +/* 080464 8007F864 0301C825 */ or $t9, $t8, $at +/* 080468 8007F868 244E0008 */ addiu $t6, $v0, 8 +/* 08046C 8007F86C AC8E0000 */ sw $t6, ($a0) +/* 080470 8007F870 00077080 */ sll $t6, $a3, 2 +/* 080474 8007F874 31CF0FFF */ andi $t7, $t6, 0xfff +/* 080478 8007F878 AC4F0004 */ sw $t7, 4($v0) +/* 08047C 8007F87C AC590000 */ sw $t9, ($v0) +/* 080480 8007F880 8C820000 */ lw $v0, ($a0) +/* 080484 8007F884 3C19B300 */ lui $t9, 0xb300 +/* 080488 8007F888 24580008 */ addiu $t8, $v0, 8 +/* 08048C 8007F88C AC980000 */ sw $t8, ($a0) +/* 080490 8007F890 AC400004 */ sw $zero, 4($v0) +/* 080494 8007F894 AC590000 */ sw $t9, ($v0) +/* 080498 8007F898 8C820000 */ lw $v0, ($a0) +/* 08049C 8007F89C 3C181000 */ lui $t8, (0x10000400 >> 16) # lui $t8, 0x1000 +/* 0804A0 8007F8A0 244E0008 */ addiu $t6, $v0, 8 +/* 0804A4 8007F8A4 AC8E0000 */ sw $t6, ($a0) +/* 0804A8 8007F8A8 37180400 */ ori $t8, (0x10000400 & 0xFFFF) # ori $t8, $t8, 0x400 +/* 0804AC 8007F8AC 3C0FB200 */ lui $t7, 0xb200 +/* 0804B0 8007F8B0 240100F0 */ li $at, 240 +/* 0804B4 8007F8B4 01403825 */ move $a3, $t2 +/* 0804B8 8007F8B8 AC4F0000 */ sw $t7, ($v0) +/* 0804BC 8007F8BC 1541FFBE */ bne $t2, $at, .L8007F7B8 +/* 0804C0 8007F8C0 AC580004 */ sw $t8, 4($v0) +/* 0804C4 8007F8C4 8FBF002C */ lw $ra, 0x2c($sp) +/* 0804C8 8007F8C8 8FB00008 */ lw $s0, 8($sp) +/* 0804CC 8007F8CC 8FB1000C */ lw $s1, 0xc($sp) +/* 0804D0 8007F8D0 8FB20010 */ lw $s2, 0x10($sp) +/* 0804D4 8007F8D4 8FB30014 */ lw $s3, 0x14($sp) +/* 0804D8 8007F8D8 8FB40018 */ lw $s4, 0x18($sp) +/* 0804DC 8007F8DC 8FB5001C */ lw $s5, 0x1c($sp) +/* 0804E0 8007F8E0 8FB60020 */ lw $s6, 0x20($sp) +/* 0804E4 8007F8E4 8FB70024 */ lw $s7, 0x24($sp) +/* 0804E8 8007F8E8 8FBE0028 */ lw $fp, 0x28($sp) +/* 0804EC 8007F8EC 03E00008 */ jr $ra +/* 0804F0 8007F8F0 27BD0030 */ addiu $sp, $sp, 0x30 + +/* 0804F4 8007F8F4 00000000 */ nop +/* 0804F8 8007F8F8 00000000 */ nop +/* 0804FC 8007F8FC 00000000 */ nop diff --git a/asm/non_matchings/unknown_09F8F0/func_8009ECF0.s b/asm/non_matchings/unknown_09F8F0/func_8009ECF0.s new file mode 100644 index 00000000..fc4719ef --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_8009ECF0.s @@ -0,0 +1,219 @@ +glabel func_8009ECF0 +/* 09F8F0 8009ECF0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 09F8F4 8009ECF4 AFBF0024 */ sw $ra, 0x24($sp) +/* 09F8F8 8009ECF8 AFB20020 */ sw $s2, 0x20($sp) +/* 09F8FC 8009ECFC AFB1001C */ sw $s1, 0x1c($sp) +/* 09F900 8009ED00 AFB00018 */ sw $s0, 0x18($sp) +/* 09F904 8009ED04 0C019884 */ jal func_80066210 +/* 09F908 8009ED08 AFA40028 */ sw $a0, 0x28($sp) +/* 09F90C 8009ED0C 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 +/* 09F910 8009ED10 24636D0C */ addiu $v1, %lo(D_80126D0C) # addiu $v1, $v1, 0x6d0c +/* 09F914 8009ED14 AC620000 */ sw $v0, ($v1) +/* 09F918 8009ED18 0C01994B */ jal func_8006652C +/* 09F91C 8009ED1C 00402025 */ move $a0, $v0 +/* 09F920 8009ED20 3C018012 */ lui $at, %hi(D_80126D37) # $at, 0x8012 +/* 09F924 8009ED24 0C01BAA4 */ jal func_8006EA90 +/* 09F928 8009ED28 A0226D37 */ sb $v0, %lo(D_80126D37)($at) +/* 09F92C 8009ED2C 3C018012 */ lui $at, %hi(D_80127184) # $at, 0x8012 +/* 09F930 8009ED30 0C003877 */ jal func_8000E1DC +/* 09F934 8009ED34 AC227184 */ sw $v0, %lo(D_80127184)($at) +/* 09F938 8009ED38 3C018012 */ lui $at, %hi(D_80127188) # $at, 0x8012 +/* 09F93C 8009ED3C A0227188 */ sb $v0, %lo(D_80127188)($at) +/* 09F940 8009ED40 0C01DB16 */ jal func_80076C58 +/* 09F944 8009ED44 24040011 */ li $a0, 17 +/* 09F948 8009ED48 3C068012 */ lui $a2, %hi(D_80126CF8) # $a2, 0x8012 +/* 09F94C 8009ED4C 3C118012 */ lui $s1, %hi(D_80126CF0) # $s1, 0x8012 +/* 09F950 8009ED50 26316CF0 */ addiu $s1, %lo(D_80126CF0) # addiu $s1, $s1, 0x6cf0 +/* 09F954 8009ED54 24C66CF8 */ addiu $a2, %lo(D_80126CF8) # addiu $a2, $a2, 0x6cf8 +/* 09F958 8009ED58 00007040 */ sll $t6, $zero, 1 +/* 09F95C 8009ED5C AE220000 */ sw $v0, ($s1) +/* 09F960 8009ED60 ACC00000 */ sw $zero, ($a2) +/* 09F964 8009ED64 004E7821 */ addu $t7, $v0, $t6 +/* 09F968 8009ED68 85F80000 */ lh $t8, ($t7) +/* 09F96C 8009ED6C 2412FFFF */ li $s2, -1 +/* 09F970 8009ED70 00401825 */ move $v1, $v0 +/* 09F974 8009ED74 12580009 */ beq $s2, $t8, .L8009ED9C +/* 09F978 8009ED78 00008025 */ move $s0, $zero +/* 09F97C 8009ED7C 26190001 */ addiu $t9, $s0, 1 +.L8009ED80: +/* 09F980 8009ED80 00194040 */ sll $t0, $t9, 1 +/* 09F984 8009ED84 00684821 */ addu $t1, $v1, $t0 +/* 09F988 8009ED88 ACD90000 */ sw $t9, ($a2) +/* 09F98C 8009ED8C 852A0000 */ lh $t2, ($t1) +/* 09F990 8009ED90 03208025 */ move $s0, $t9 +/* 09F994 8009ED94 164AFFFA */ bne $s2, $t2, .L8009ED80 +/* 09F998 8009ED98 26190001 */ addiu $t9, $s0, 1 +.L8009ED9C: +/* 09F99C 8009ED9C 00102080 */ sll $a0, $s0, 2 +/* 09F9A0 8009EDA0 00902021 */ addu $a0, $a0, $s0 +/* 09F9A4 8009EDA4 0C01C327 */ jal func_80070C9C +/* 09F9A8 8009EDA8 3405FFFF */ li $a1, 65535 +/* 09F9AC 8009EDAC 3C068012 */ lui $a2, %hi(D_80126CF8) # $a2, 0x8012 +/* 09F9B0 8009EDB0 24C66CF8 */ addiu $a2, %lo(D_80126CF8) # addiu $a2, $a2, 0x6cf8 +/* 09F9B4 8009EDB4 8CD00000 */ lw $s0, ($a2) +/* 09F9B8 8009EDB8 3C048012 */ lui $a0, %hi(D_80126CD8) # $a0, 0x8012 +/* 09F9BC 8009EDBC 3C078012 */ lui $a3, %hi(D_80126CF4) # $a3, 0x8012 +/* 09F9C0 8009EDC0 00105880 */ sll $t3, $s0, 2 +/* 09F9C4 8009EDC4 24E76CF4 */ addiu $a3, %lo(D_80126CF4) # addiu $a3, $a3, 0x6cf4 +/* 09F9C8 8009EDC8 24846CD8 */ addiu $a0, %lo(D_80126CD8) # addiu $a0, $a0, 0x6cd8 +/* 09F9CC 8009EDCC 01626821 */ addu $t5, $t3, $v0 +/* 09F9D0 8009EDD0 ACE20000 */ sw $v0, ($a3) +/* 09F9D4 8009EDD4 AC8D0000 */ sw $t5, ($a0) +/* 09F9D8 8009EDD8 1A00000F */ blez $s0, .L8009EE18 +/* 09F9DC 8009EDDC 00001825 */ move $v1, $zero +/* 09F9E0 8009EDE0 00001025 */ move $v0, $zero +.L8009EDE4: +/* 09F9E4 8009EDE4 8C8E0000 */ lw $t6, ($a0) +/* 09F9E8 8009EDE8 00000000 */ nop +/* 09F9EC 8009EDEC 01C37821 */ addu $t7, $t6, $v1 +/* 09F9F0 8009EDF0 A1E00000 */ sb $zero, ($t7) +/* 09F9F4 8009EDF4 8CF80000 */ lw $t8, ($a3) +/* 09F9F8 8009EDF8 24630001 */ addiu $v1, $v1, 1 +/* 09F9FC 8009EDFC 0302C821 */ addu $t9, $t8, $v0 +/* 09FA00 8009EE00 AF200000 */ sw $zero, ($t9) +/* 09FA04 8009EE04 8CC80000 */ lw $t0, ($a2) +/* 09FA08 8009EE08 24420004 */ addiu $v0, $v0, 4 +/* 09FA0C 8009EE0C 0068082A */ slt $at, $v1, $t0 +/* 09FA10 8009EE10 1420FFF4 */ bnez $at, .L8009EDE4 +/* 09FA14 8009EE14 00000000 */ nop +.L8009EE18: +/* 09FA18 8009EE18 8E290000 */ lw $t1, ($s1) +/* 09FA1C 8009EE1C 24050001 */ li $a1, 1 +/* 09FA20 8009EE20 85240002 */ lh $a0, 2($t1) +/* 09FA24 8009EE24 00000000 */ nop +/* 09FA28 8009EE28 308A3FFF */ andi $t2, $a0, 0x3fff +/* 09FA2C 8009EE2C 0C01F04B */ jal func_8007C12C +/* 09FA30 8009EE30 01402025 */ move $a0, $t2 +/* 09FA34 8009EE34 3C078012 */ lui $a3, %hi(D_80126CF4) # $a3, 0x8012 +/* 09FA38 8009EE38 24E76CF4 */ addiu $a3, %lo(D_80126CF4) # addiu $a3, $a3, 0x6cf4 +/* 09FA3C 8009EE3C 8CEB0000 */ lw $t3, ($a3) +/* 09FA40 8009EE40 24050001 */ li $a1, 1 +/* 09FA44 8009EE44 AD620004 */ sw $v0, 4($t3) +/* 09FA48 8009EE48 8E2C0000 */ lw $t4, ($s1) +/* 09FA4C 8009EE4C 00000000 */ nop +/* 09FA50 8009EE50 8584002E */ lh $a0, 0x2e($t4) +/* 09FA54 8009EE54 00000000 */ nop +/* 09FA58 8009EE58 308D3FFF */ andi $t5, $a0, 0x3fff +/* 09FA5C 8009EE5C 0C01F04B */ jal func_8007C12C +/* 09FA60 8009EE60 01A02025 */ move $a0, $t5 +/* 09FA64 8009EE64 3C078012 */ lui $a3, %hi(D_80126CF4) # $a3, 0x8012 +/* 09FA68 8009EE68 24E76CF4 */ addiu $a3, %lo(D_80126CF4) # addiu $a3, $a3, 0x6cf4 +/* 09FA6C 8009EE6C 8CEE0000 */ lw $t6, ($a3) +/* 09FA70 8009EE70 24050001 */ li $a1, 1 +/* 09FA74 8009EE74 ADC2005C */ sw $v0, 0x5c($t6) +/* 09FA78 8009EE78 8E2F0000 */ lw $t7, ($s1) +/* 09FA7C 8009EE7C 00000000 */ nop +/* 09FA80 8009EE80 85E40010 */ lh $a0, 0x10($t7) +/* 09FA84 8009EE84 00000000 */ nop +/* 09FA88 8009EE88 30983FFF */ andi $t8, $a0, 0x3fff +/* 09FA8C 8009EE8C 0C01F04B */ jal func_8007C12C +/* 09FA90 8009EE90 03002025 */ move $a0, $t8 +/* 09FA94 8009EE94 3C078012 */ lui $a3, %hi(D_80126CF4) # $a3, 0x8012 +/* 09FA98 8009EE98 24E76CF4 */ addiu $a3, %lo(D_80126CF4) # addiu $a3, $a3, 0x6cf4 +/* 09FA9C 8009EE9C 8CF90000 */ lw $t9, ($a3) +/* 09FAA0 8009EEA0 24050001 */ li $a1, 1 +/* 09FAA4 8009EEA4 AF220020 */ sw $v0, 0x20($t9) +/* 09FAA8 8009EEA8 8E280000 */ lw $t0, ($s1) +/* 09FAAC 8009EEAC 00000000 */ nop +/* 09FAB0 8009EEB0 85040022 */ lh $a0, 0x22($t0) +/* 09FAB4 8009EEB4 00000000 */ nop +/* 09FAB8 8009EEB8 30893FFF */ andi $t1, $a0, 0x3fff +/* 09FABC 8009EEBC 0C01F04B */ jal func_8007C12C +/* 09FAC0 8009EEC0 01202025 */ move $a0, $t1 +/* 09FAC4 8009EEC4 3C078012 */ lui $a3, %hi(D_80126CF4) # $a3, 0x8012 +/* 09FAC8 8009EEC8 24E76CF4 */ addiu $a3, %lo(D_80126CF4) # addiu $a3, $a3, 0x6cf4 +/* 09FACC 8009EECC 8CEA0000 */ lw $t2, ($a3) +/* 09FAD0 8009EED0 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 +/* 09FAD4 8009EED4 AD420044 */ sw $v0, 0x44($t2) +/* 09FAD8 8009EED8 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) +/* 09FADC 8009EEDC 24010003 */ li $at, 3 +/* 09FAE0 8009EEE0 10610003 */ beq $v1, $at, .L8009EEF0 +/* 09FAE4 8009EEE4 3405FFFF */ li $a1, 65535 +/* 09FAE8 8009EEE8 10000002 */ b .L8009EEF4 +/* 09FAEC 8009EEEC 00601025 */ move $v0, $v1 +.L8009EEF0: +/* 09FAF0 8009EEF0 24020004 */ li $v0, 4 +.L8009EEF4: +/* 09FAF4 8009EEF4 00022100 */ sll $a0, $v0, 4 +/* 09FAF8 8009EEF8 00822023 */ subu $a0, $a0, $v0 +/* 09FAFC 8009EEFC 00042080 */ sll $a0, $a0, 2 +/* 09FB00 8009EF00 00822023 */ subu $a0, $a0, $v0 +/* 09FB04 8009EF04 0C01C327 */ jal func_80070C9C +/* 09FB08 8009EF08 00042140 */ sll $a0, $a0, 5 +/* 09FB0C 8009EF0C 3C038012 */ lui $v1, %hi(D_80126CE0) # $v1, 0x8012 +/* 09FB10 8009EF10 24636CE0 */ addiu $v1, %lo(D_80126CE0) # addiu $v1, $v1, 0x6ce0 +/* 09FB14 8009EF14 244C0760 */ addiu $t4, $v0, 0x760 +/* 09FB18 8009EF18 258E0760 */ addiu $t6, $t4, 0x760 +/* 09FB1C 8009EF1C 25D80760 */ addiu $t8, $t6, 0x760 +/* 09FB20 8009EF20 AC620000 */ sw $v0, ($v1) +/* 09FB24 8009EF24 AC6C0004 */ sw $t4, 4($v1) +/* 09FB28 8009EF28 AC6E0008 */ sw $t6, 8($v1) +/* 09FB2C 8009EF2C 0C027C0D */ jal func_8009F034 +/* 09FB30 8009EF30 AC78000C */ sw $t8, 0xc($v1) +/* 09FB34 8009EF34 3C018012 */ lui $at, %hi(D_80126D64) # $at, 0x8012 +/* 09FB38 8009EF38 A0206D64 */ sb $zero, %lo(D_80126D64)($at) +/* 09FB3C 8009EF3C 3C018012 */ lui $at, %hi(D_80126D6C) # $at, 0x8012 +/* 09FB40 8009EF40 AC206D6C */ sw $zero, %lo(D_80126D6C)($at) +/* 09FB44 8009EF44 3C018012 */ lui $at, %hi(D_80126D48) # $at, 0x8012 +/* 09FB48 8009EF48 A4206D48 */ sh $zero, %lo(D_80126D48)($at) +/* 09FB4C 8009EF4C 24020004 */ li $v0, 4 +/* 09FB50 8009EF50 3C018012 */ lui $at, %hi(D_80126D66) # $at, 0x8012 +/* 09FB54 8009EF54 A0226D66 */ sb $v0, %lo(D_80126D66)($at) +/* 09FB58 8009EF58 3C018012 */ lui $at, %hi(D_80126D65) # $at, 0x8012 +/* 09FB5C 8009EF5C A0206D65 */ sb $zero, %lo(D_80126D65)($at) +/* 09FB60 8009EF60 3C018012 */ lui $at, %hi(D_80126D67) # $at, 0x8012 +/* 09FB64 8009EF64 A0226D67 */ sb $v0, %lo(D_80126D67)($at) +/* 09FB68 8009EF68 3C018012 */ lui $at, %hi(D_80126D69) # $at, 0x8012 +/* 09FB6C 8009EF6C 24190001 */ li $t9, 1 +/* 09FB70 8009EF70 A0396D69 */ sb $t9, %lo(D_80126D69)($at) +/* 09FB74 8009EF74 3C018012 */ lui $at, %hi(D_80126D68) # $at, 0x8012 +/* 09FB78 8009EF78 24080001 */ li $t0, 1 +/* 09FB7C 8009EF7C A0286D68 */ sb $t0, %lo(D_80126D68)($at) +/* 09FB80 8009EF80 3C018012 */ lui $at, %hi(D_80126D70) # $at, 0x8012 +/* 09FB84 8009EF84 A0206D70 */ sb $zero, %lo(D_80126D70)($at) +/* 09FB88 8009EF88 3C018012 */ lui $at, %hi(D_80126D7C) # $at, 0x8012 +/* 09FB8C 8009EF8C A4206D7C */ sh $zero, %lo(D_80126D7C)($at) +/* 09FB90 8009EF90 3C018012 */ lui $at, %hi(D_80126D74) # $at, 0x8012 +/* 09FB94 8009EF94 AC206D74 */ sw $zero, %lo(D_80126D74)($at) +/* 09FB98 8009EF98 3C018012 */ lui $at, %hi(D_80126D3C) # $at, 0x8012 +/* 09FB9C 8009EF9C AC206D3C */ sw $zero, %lo(D_80126D3C)($at) +/* 09FBA0 8009EFA0 3C018012 */ lui $at, %hi(D_80126D44) # $at, 0x8012 +/* 09FBA4 8009EFA4 AC206D44 */ sw $zero, %lo(D_80126D44)($at) +/* 09FBA8 8009EFA8 3C018012 */ lui $at, %hi(D_80126CD3) # $at, 0x8012 +/* 09FBAC 8009EFAC A0206CD3 */ sb $zero, %lo(D_80126CD3)($at) +/* 09FBB0 8009EFB0 0C0078A7 */ jal func_8001E29C +/* 09FBB4 8009EFB4 2404003A */ li $a0, 58 +/* 09FBB8 8009EFB8 3C038012 */ lui $v1, %hi(D_80127194) # $v1, 0x8012 +/* 09FBBC 8009EFBC 24637194 */ addiu $v1, %lo(D_80127194) # addiu $v1, $v1, 0x7194 +/* 09FBC0 8009EFC0 AC620000 */ sw $v0, ($v1) +/* 09FBC4 8009EFC4 0C01FC7A */ jal func_8007F1E8 +/* 09FBC8 8009EFC8 00402025 */ move $a0, $v0 +/* 09FBCC 8009EFCC 00002025 */ move $a0, $zero +/* 09FBD0 8009EFD0 0C001298 */ jal func_80004A60 +/* 09FBD4 8009EFD4 24057FFF */ li $a1, 32767 +/* 09FBD8 8009EFD8 24040002 */ li $a0, 2 +/* 09FBDC 8009EFDC 0C001298 */ jal func_80004A60 +/* 09FBE0 8009EFE0 24057FFF */ li $a1, 32767 +/* 09FBE4 8009EFE4 3C10800E */ lui $s0, %hi(D_800E2770) # $s0, 0x800e +/* 09FBE8 8009EFE8 3C11800E */ lui $s1, %hi(D_800E2790) # $s1, 0x800e +/* 09FBEC 8009EFEC 26312790 */ addiu $s1, %lo(D_800E2790) # addiu $s1, $s1, 0x2790 +/* 09FBF0 8009EFF0 26102770 */ addiu $s0, %lo(D_800E2770) # addiu $s0, $s0, 0x2770 +.L8009EFF4: +/* 09FBF4 8009EFF4 8E040004 */ lw $a0, 4($s0) +/* 09FBF8 8009EFF8 A2000002 */ sb $zero, 2($s0) +/* 09FBFC 8009EFFC A2000003 */ sb $zero, 3($s0) +/* 09FC00 8009F000 10800003 */ beqz $a0, .L8009F010 +/* 09FC04 8009F004 A212000C */ sb $s2, 0xc($s0) +/* 09FC08 8009F008 0C001223 */ jal func_8000488C +/* 09FC0C 8009F00C 00000000 */ nop +.L8009F010: +/* 09FC10 8009F010 26100010 */ addiu $s0, $s0, 0x10 +/* 09FC14 8009F014 1611FFF7 */ bne $s0, $s1, .L8009EFF4 +/* 09FC18 8009F018 00000000 */ nop +/* 09FC1C 8009F01C 8FBF0024 */ lw $ra, 0x24($sp) +/* 09FC20 8009F020 8FB00018 */ lw $s0, 0x18($sp) +/* 09FC24 8009F024 8FB1001C */ lw $s1, 0x1c($sp) +/* 09FC28 8009F028 8FB20020 */ lw $s2, 0x20($sp) +/* 09FC2C 8009F02C 03E00008 */ jr $ra +/* 09FC30 8009F030 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_09F8F0/func_8009F034.s b/asm/non_matchings/unknown_09F8F0/func_8009F034.s new file mode 100644 index 00000000..f831fdcc --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_8009F034.s @@ -0,0 +1,1091 @@ +glabel func_8009F034 +/* 09FC34 8009F034 27BDFF68 */ addiu $sp, $sp, -0x98 +/* 09FC38 8009F038 AFBF0064 */ sw $ra, 0x64($sp) +/* 09FC3C 8009F03C AFBE0060 */ sw $fp, 0x60($sp) +/* 09FC40 8009F040 AFB7005C */ sw $s7, 0x5c($sp) +/* 09FC44 8009F044 AFB60058 */ sw $s6, 0x58($sp) +/* 09FC48 8009F048 AFB50054 */ sw $s5, 0x54($sp) +/* 09FC4C 8009F04C AFB40050 */ sw $s4, 0x50($sp) +/* 09FC50 8009F050 AFB3004C */ sw $s3, 0x4c($sp) +/* 09FC54 8009F054 AFB20048 */ sw $s2, 0x48($sp) +/* 09FC58 8009F058 AFB10044 */ sw $s1, 0x44($sp) +/* 09FC5C 8009F05C AFB00040 */ sw $s0, 0x40($sp) +/* 09FC60 8009F060 E7BD0038 */ swc1 $f29, 0x38($sp) +/* 09FC64 8009F064 E7BC003C */ swc1 $f28, 0x3c($sp) +/* 09FC68 8009F068 E7BB0030 */ swc1 $f27, 0x30($sp) +/* 09FC6C 8009F06C E7BA0034 */ swc1 $f26, 0x34($sp) +/* 09FC70 8009F070 E7B90028 */ swc1 $f25, 0x28($sp) +/* 09FC74 8009F074 E7B8002C */ swc1 $f24, 0x2c($sp) +/* 09FC78 8009F078 E7B70020 */ swc1 $f23, 0x20($sp) +/* 09FC7C 8009F07C E7B60024 */ swc1 $f22, 0x24($sp) +/* 09FC80 8009F080 E7B50018 */ swc1 $f21, 0x18($sp) +/* 09FC84 8009F084 0C01AF66 */ jal func_8006BD98 +/* 09FC88 8009F088 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 09FC8C 8009F08C 240C0001 */ li $t4, 1 +/* 09FC90 8009F090 11820004 */ beq $t4, $v0, .L8009F0A4 +/* 09FC94 8009F094 3C108000 */ lui $s0, %hi(D_80000300) # $s0, 0x8000 +/* 09FC98 8009F098 24010005 */ li $at, 5 +/* 09FC9C 8009F09C 14410007 */ bne $v0, $at, .L8009F0BC +/* 09FCA0 8009F0A0 3C0F8012 */ lui $t7, %hi(D_80126D0C) # $t7, 0x8012 +.L8009F0A4: +/* 09FCA4 8009F0A4 3C018012 */ lui $at, %hi(D_80126D24) # $at, 0x8012 +/* 09FCA8 8009F0A8 AC206D24 */ sw $zero, %lo(D_80126D24)($at) +/* 09FCAC 8009F0AC 3C018012 */ lui $at, %hi(D_80126D34) # $at, 0x8012 +/* 09FCB0 8009F0B0 240E0001 */ li $t6, 1 +/* 09FCB4 8009F0B4 10000015 */ b .L8009F10C +/* 09FCB8 8009F0B8 A02E6D34 */ sb $t6, %lo(D_80126D34)($at) +.L8009F0BC: +/* 09FCBC 8009F0BC 8DEF6D0C */ lw $t7, %lo(D_80126D0C)($t7) +/* 09FCC0 8009F0C0 24180140 */ li $t8, 320 +/* 09FCC4 8009F0C4 29E10002 */ slti $at, $t7, 2 +/* 09FCC8 8009F0C8 10200008 */ beqz $at, .L8009F0EC +/* 09FCCC 8009F0CC 241900C8 */ li $t9, 200 +/* 09FCD0 8009F0D0 3C018012 */ lui $at, %hi(D_80126D24) # $at, 0x8012 +/* 09FCD4 8009F0D4 AC386D24 */ sw $t8, %lo(D_80126D24)($at) +/* 09FCD8 8009F0D8 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 09FCDC 8009F0DC 44812000 */ mtc1 $at, $f4 +/* 09FCE0 8009F0E0 3C018012 */ lui $at, %hi(D_80126D30) # $at, 0x8012 +/* 09FCE4 8009F0E4 10000007 */ b .L8009F104 +/* 09FCE8 8009F0E8 E4246D30 */ swc1 $f4, %lo(D_80126D30)($at) +.L8009F0EC: +/* 09FCEC 8009F0EC 3C018012 */ lui $at, %hi(D_80126D24) # $at, 0x8012 +/* 09FCF0 8009F0F0 AC396D24 */ sw $t9, %lo(D_80126D24)($at) +/* 09FCF4 8009F0F4 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 09FCF8 8009F0F8 44813000 */ mtc1 $at, $f6 +/* 09FCFC 8009F0FC 3C018012 */ lui $at, %hi(D_80126D30) # $at, 0x8012 +/* 09FD00 8009F100 E4266D30 */ swc1 $f6, %lo(D_80126D30)($at) +.L8009F104: +/* 09FD04 8009F104 3C018012 */ lui $at, %hi(D_80126D34) # $at, 0x8012 +/* 09FD08 8009F108 A0206D34 */ sb $zero, %lo(D_80126D34)($at) +.L8009F10C: +/* 09FD0C 8009F10C 3C018012 */ lui $at, %hi(D_80126D2C) # $at, 0x8012 +/* 09FD10 8009F110 A4206D2C */ sh $zero, %lo(D_80126D2C)($at) +/* 09FD14 8009F114 3C018012 */ lui $at, %hi(D_80126CD4) # $at, 0x8012 +/* 09FD18 8009F118 A0206CD4 */ sb $zero, %lo(D_80126CD4)($at) +/* 09FD1C 8009F11C 3C018012 */ lui $at, %hi(D_80126D36) # $at, 0x8012 +/* 09FD20 8009F120 A0206D36 */ sb $zero, %lo(D_80126D36)($at) +/* 09FD24 8009F124 3C018012 */ lui $at, %hi(D_80126D38) # $at, 0x8012 +/* 09FD28 8009F128 A0206D38 */ sb $zero, %lo(D_80126D38)($at) +/* 09FD2C 8009F12C 3C018012 */ lui $at, %hi(D_80126D35) # $at, 0x8012 +/* 09FD30 8009F130 A0206D35 */ sb $zero, %lo(D_80126D35)($at) +/* 09FD34 8009F134 3C018012 */ lui $at, %hi(D_80126CD0) # $at, 0x8012 +/* 09FD38 8009F138 26100300 */ addiu $s0, %lo(D_80000300) # addiu $s0, $s0, 0x300 +/* 09FD3C 8009F13C A0206CD0 */ sb $zero, %lo(D_80126CD0)($at) +/* 09FD40 8009F140 8E0E0000 */ lw $t6, ($s0) +/* 09FD44 8009F144 2419FF9C */ li $t9, -100 +/* 09FD48 8009F148 15C00005 */ bnez $t6, .L8009F160 +/* 09FD4C 8009F14C 24040078 */ li $a0, 120 +/* 09FD50 8009F150 240F003C */ li $t7, 60 +/* 09FD54 8009F154 3C018012 */ lui $at, %hi(D_8012718B) # $at, 0x8012 +/* 09FD58 8009F158 10000004 */ b .L8009F16C +/* 09FD5C 8009F15C A02F718B */ sb $t7, %lo(D_8012718B)($at) +.L8009F160: +/* 09FD60 8009F160 24180032 */ li $t8, 50 +/* 09FD64 8009F164 3C018012 */ lui $at, %hi(D_8012718B) # $at, 0x8012 +/* 09FD68 8009F168 A038718B */ sb $t8, %lo(D_8012718B)($at) +.L8009F16C: +/* 09FD6C 8009F16C 3C018012 */ lui $at, %hi(D_80126CD1) # $at, 0x8012 +/* 09FD70 8009F170 A0206CD1 */ sb $zero, %lo(D_80126CD1)($at) +/* 09FD74 8009F174 3C018012 */ lui $at, %hi(D_80126CD2) # $at, 0x8012 +/* 09FD78 8009F178 A0206CD2 */ sb $zero, %lo(D_80126CD2)($at) +/* 09FD7C 8009F17C 3C018012 */ lui $at, %hi(D_80126CD5) # $at, 0x8012 +/* 09FD80 8009F180 A0206CD5 */ sb $zero, %lo(D_80126CD5)($at) +/* 09FD84 8009F184 3C018012 */ lui $at, %hi(D_80127189) # $at, 0x8012 +/* 09FD88 8009F188 A0207189 */ sb $zero, %lo(D_80127189)($at) +/* 09FD8C 8009F18C 3C018012 */ lui $at, %hi(D_80126D4C) # $at, 0x8012 +/* 09FD90 8009F190 AC396D4C */ sw $t9, %lo(D_80126D4C)($at) +/* 09FD94 8009F194 0C01BE53 */ jal func_8006F94C +/* 09FD98 8009F198 24050168 */ li $a1, 360 +/* 09FD9C 8009F19C 3C018012 */ lui $at, %hi(D_80126D50) # $at, 0x8012 +/* 09FDA0 8009F1A0 0C003856 */ jal func_8000E158 +/* 09FDA4 8009F1A4 AC226D50 */ sw $v0, %lo(D_80126D50)($at) +/* 09FDA8 8009F1A8 3C018012 */ lui $at, %hi(D_8012718A) # $at, 0x8012 +/* 09FDAC 8009F1AC A022718A */ sb $v0, %lo(D_8012718A)($at) +/* 09FDB0 8009F1B0 8E180000 */ lw $t8, ($s0) +/* 09FDB4 8009F1B4 3C038012 */ lui $v1, %hi(D_8012718C) # $v1, 0x8012 +/* 09FDB8 8009F1B8 3C048012 */ lui $a0, %hi(D_80127190) # $a0, 0x8012 +/* 09FDBC 8009F1BC 24847190 */ addiu $a0, %lo(D_80127190) # addiu $a0, $a0, 0x7190 +/* 09FDC0 8009F1C0 2463718C */ addiu $v1, %lo(D_8012718C) # addiu $v1, $v1, 0x718c +/* 09FDC4 8009F1C4 240E0037 */ li $t6, 55 +/* 09FDC8 8009F1C8 240F00B3 */ li $t7, 179 +/* 09FDCC 8009F1CC AC6E0000 */ sw $t6, ($v1) +/* 09FDD0 8009F1D0 17000006 */ bnez $t8, .L8009F1EC +/* 09FDD4 8009F1D4 AC8F0000 */ sw $t7, ($a0) +/* 09FDD8 8009F1D8 25EE001E */ addiu $t6, $t7, 0x1e +/* 09FDDC 8009F1DC 8C6F0000 */ lw $t7, ($v1) +/* 09FDE0 8009F1E0 AC8E0000 */ sw $t6, ($a0) +/* 09FDE4 8009F1E4 25F8FFFC */ addiu $t8, $t7, -4 +/* 09FDE8 8009F1E8 AC780000 */ sw $t8, ($v1) +.L8009F1EC: +/* 09FDEC 8009F1EC 0C006D90 */ jal func_8001B640 +/* 09FDF0 8009F1F0 00000000 */ nop +/* 09FDF4 8009F1F4 14400004 */ bnez $v0, .L8009F208 +/* 09FDF8 8009F1F8 240C0001 */ li $t4, 1 +/* 09FDFC 8009F1FC 3C018012 */ lui $at, %hi(D_80126D71) # $at, 0x8012 +/* 09FE00 8009F200 10000004 */ b .L8009F214 +/* 09FE04 8009F204 A0206D71 */ sb $zero, %lo(D_80126D71)($at) +.L8009F208: +/* 09FE08 8009F208 24190001 */ li $t9, 1 +/* 09FE0C 8009F20C 3C018012 */ lui $at, %hi(D_80126D71) # $at, 0x8012 +/* 09FE10 8009F210 A0396D71 */ sb $t9, %lo(D_80126D71)($at) +.L8009F214: +/* 09FE14 8009F214 3C028012 */ lui $v0, %hi(D_80126D37) # $v0, 0x8012 +/* 09FE18 8009F218 90426D37 */ lbu $v0, %lo(D_80126D37)($v0) +/* 09FE1C 8009F21C 24010003 */ li $at, 3 +/* 09FE20 8009F220 10410003 */ beq $v0, $at, .L8009F230 +/* 09FE24 8009F224 240E0004 */ li $t6, 4 +/* 09FE28 8009F228 10000002 */ b .L8009F234 +/* 09FE2C 8009F22C AFA2008C */ sw $v0, 0x8c($sp) +.L8009F230: +/* 09FE30 8009F230 AFAE008C */ sw $t6, 0x8c($sp) +.L8009F234: +/* 09FE34 8009F234 8FAF008C */ lw $t7, 0x8c($sp) +/* 09FE38 8009F238 00003825 */ move $a3, $zero +/* 09FE3C 8009F23C 19E00359 */ blez $t7, .L8009FFA4 +/* 09FE40 8009F240 3C188012 */ lui $t8, %hi(D_80126CE0) # $t8, 0x8012 +/* 09FE44 8009F244 3C01C268 */ li $at, 0xC2680000 # -58.000000 +/* 09FE48 8009F248 4481E000 */ mtc1 $at, $f28 +/* 09FE4C 8009F24C 3C01C2F0 */ li $at, 0xC2F00000 # -120.000000 +/* 09FE50 8009F250 4481D000 */ mtc1 $at, $f26 +/* 09FE54 8009F254 3C01C1C8 */ li $at, 0xC1C80000 # -25.000000 +/* 09FE58 8009F258 4481C000 */ mtc1 $at, $f24 +/* 09FE5C 8009F25C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 09FE60 8009F260 4481B000 */ mtc1 $at, $f22 +/* 09FE64 8009F264 3C0141E0 */ li $at, 0x41E00000 # 28.000000 +/* 09FE68 8009F268 4481A000 */ mtc1 $at, $f20 +/* 09FE6C 8009F26C 3C013FE8 */ li $at, 0x3FE80000 # 1.812500 +/* 09FE70 8009F270 44818800 */ mtc1 $at, $f17 +/* 09FE74 8009F274 3C01800F */ lui $at, %hi(D_800E86AC) # $at, 0x800f +/* 09FE78 8009F278 27186CE0 */ addiu $t8, %lo(D_80126CE0) # addiu $t8, $t8, 0x6ce0 +/* 09FE7C 8009F27C 3C10800E */ lui $s0, %hi(D_800E25C4) # $s0, 0x800e +/* 09FE80 8009F280 3C098012 */ lui $t1, %hi(D_80126CF0) # $t1, 0x8012 +/* 09FE84 8009F284 3C058012 */ lui $a1, %hi(D_80126CDC) # $a1, 0x8012 +/* 09FE88 8009F288 C42F86A8 */ lwc1 $f15, %lo(D_800E86A8)($at) +/* 09FE8C 8009F28C C42E86AC */ lwc1 $f14, %lo(D_800E86AC)($at) +/* 09FE90 8009F290 44808000 */ mtc1 $zero, $f16 +/* 09FE94 8009F294 24A56CDC */ addiu $a1, %lo(D_80126CDC) # addiu $a1, $a1, 0x6cdc +/* 09FE98 8009F298 25296CF0 */ addiu $t1, %lo(D_80126CF0) # addiu $t1, $t1, 0x6cf0 +/* 09FE9C 8009F29C 261025C4 */ addiu $s0, %lo(D_800E25C4) # addiu $s0, $s0, 0x25c4 +/* 09FEA0 8009F2A0 AFB8006C */ sw $t8, 0x6c($sp) +/* 09FEA4 8009F2A4 241E0036 */ li $fp, 54 +/* 09FEA8 8009F2A8 2417001C */ li $s7, 28 +/* 09FEAC 8009F2AC 2416000C */ li $s6, 12 +/* 09FEB0 8009F2B0 2415000B */ li $s5, 11 +/* 09FEB4 8009F2B4 2414000F */ li $s4, 15 +/* 09FEB8 8009F2B8 24130004 */ li $s3, 4 +/* 09FEBC 8009F2BC 24120760 */ li $s2, 1888 +/* 09FEC0 8009F2C0 2411000A */ li $s1, 10 +/* 09FEC4 8009F2C4 241F0012 */ li $ra, 18 +/* 09FEC8 8009F2C8 240D0009 */ li $t5, 9 +/* 09FECC 8009F2CC 240B0002 */ li $t3, 2 +/* 09FED0 8009F2D0 240AFFFF */ li $t2, -1 +/* 09FED4 8009F2D4 3408C000 */ li $t0, 49152 +.L8009F2D8: +/* 09FED8 8009F2D8 8FB9006C */ lw $t9, 0x6c($sp) +/* 09FEDC 8009F2DC 3C02800E */ lui $v0, %hi(D_800E1E64) # $v0, 0x800e +/* 09FEE0 8009F2E0 8F2E0000 */ lw $t6, ($t9) +/* 09FEE4 8009F2E4 24421E64 */ addiu $v0, %lo(D_800E1E64) # addiu $v0, $v0, 0x1e64 +/* 09FEE8 8009F2E8 00001825 */ move $v1, $zero +/* 09FEEC 8009F2EC ACAE0000 */ sw $t6, ($a1) +.L8009F2F0: +/* 09FEF0 8009F2F0 8CAF0000 */ lw $t7, ($a1) +/* 09FEF4 8009F2F4 C448000C */ lwc1 $f8, 0xc($v0) +/* 09FEF8 8009F2F8 01E3C021 */ addu $t8, $t7, $v1 +/* 09FEFC 8009F2FC E708000C */ swc1 $f8, 0xc($t8) +/* 09FF00 8009F300 8CB90000 */ lw $t9, ($a1) +/* 09FF04 8009F304 C44A0010 */ lwc1 $f10, 0x10($v0) +/* 09FF08 8009F308 03237021 */ addu $t6, $t9, $v1 +/* 09FF0C 8009F30C E5CA0010 */ swc1 $f10, 0x10($t6) +/* 09FF10 8009F310 8CAF0000 */ lw $t7, ($a1) +/* 09FF14 8009F314 C4440014 */ lwc1 $f4, 0x14($v0) +/* 09FF18 8009F318 01E3C021 */ addu $t8, $t7, $v1 +/* 09FF1C 8009F31C E7040014 */ swc1 $f4, 0x14($t8) +/* 09FF20 8009F320 8CB90000 */ lw $t9, ($a1) +/* 09FF24 8009F324 C4460008 */ lwc1 $f6, 8($v0) +/* 09FF28 8009F328 03237021 */ addu $t6, $t9, $v1 +/* 09FF2C 8009F32C E5C60008 */ swc1 $f6, 8($t6) +/* 09FF30 8009F330 8CB80000 */ lw $t8, ($a1) +/* 09FF34 8009F334 844F0004 */ lh $t7, 4($v0) +/* 09FF38 8009F338 0303C821 */ addu $t9, $t8, $v1 +/* 09FF3C 8009F33C A72F0004 */ sh $t7, 4($t9) +/* 09FF40 8009F340 8CB80000 */ lw $t8, ($a1) +/* 09FF44 8009F344 844E0002 */ lh $t6, 2($v0) +/* 09FF48 8009F348 03037821 */ addu $t7, $t8, $v1 +/* 09FF4C 8009F34C A5EE0002 */ sh $t6, 2($t7) +/* 09FF50 8009F350 8CB80000 */ lw $t8, ($a1) +/* 09FF54 8009F354 84590000 */ lh $t9, ($v0) +/* 09FF58 8009F358 03037021 */ addu $t6, $t8, $v1 +/* 09FF5C 8009F35C A5D90000 */ sh $t9, ($t6) +/* 09FF60 8009F360 8CB80000 */ lw $t8, ($a1) +/* 09FF64 8009F364 844F0006 */ lh $t7, 6($v0) +/* 09FF68 8009F368 0303C821 */ addu $t9, $t8, $v1 +/* 09FF6C 8009F36C A72F0006 */ sh $t7, 6($t9) +/* 09FF70 8009F370 8CB80000 */ lw $t8, ($a1) +/* 09FF74 8009F374 844E0018 */ lh $t6, 0x18($v0) +/* 09FF78 8009F378 03037821 */ addu $t7, $t8, $v1 +/* 09FF7C 8009F37C A5EE0018 */ sh $t6, 0x18($t7) +/* 09FF80 8009F380 8CB80000 */ lw $t8, ($a1) +/* 09FF84 8009F384 8059001A */ lb $t9, 0x1a($v0) +/* 09FF88 8009F388 03037021 */ addu $t6, $t8, $v1 +/* 09FF8C 8009F38C A1D9001A */ sb $t9, 0x1a($t6) +/* 09FF90 8009F390 8CB80000 */ lw $t8, ($a1) +/* 09FF94 8009F394 804F001B */ lb $t7, 0x1b($v0) +/* 09FF98 8009F398 0303C821 */ addu $t9, $t8, $v1 +/* 09FF9C 8009F39C A32F001B */ sb $t7, 0x1b($t9) +/* 09FFA0 8009F3A0 8CB80000 */ lw $t8, ($a1) +/* 09FFA4 8009F3A4 804E001C */ lb $t6, 0x1c($v0) +/* 09FFA8 8009F3A8 03037821 */ addu $t7, $t8, $v1 +/* 09FFAC 8009F3AC A1EE001C */ sb $t6, 0x1c($t7) +/* 09FFB0 8009F3B0 8CB80000 */ lw $t8, ($a1) +/* 09FFB4 8009F3B4 8059001D */ lb $t9, 0x1d($v0) +/* 09FFB8 8009F3B8 24420020 */ addiu $v0, $v0, 0x20 +/* 09FFBC 8009F3BC 03037021 */ addu $t6, $t8, $v1 +/* 09FFC0 8009F3C0 24630020 */ addiu $v1, $v1, 0x20 +/* 09FFC4 8009F3C4 1450FFCA */ bne $v0, $s0, .L8009F2F0 +/* 09FFC8 8009F3C8 A1D9001D */ sb $t9, 0x1d($t6) +/* 09FFCC 8009F3CC 8CB80000 */ lw $t8, ($a1) +/* 09FFD0 8009F3D0 240F0005 */ li $t7, 5 +/* 09FFD4 8009F3D4 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 +/* 09FFD8 8009F3D8 A30F05DC */ sb $t7, 0x5dc($t8) +/* 09FFDC 8009F3DC 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) +/* 09FFE0 8009F3E0 3C014188 */ li $at, 0x41880000 # 17.000000 +/* 09FFE4 8009F3E4 15830084 */ bne $t4, $v1, .L8009F5F8 +/* 09FFE8 8009F3E8 00000000 */ nop +/* 09FFEC 8009F3EC 3C03800E */ lui $v1, 0x800e +/* 09FFF0 8009F3F0 246225C4 */ addiu $v0, $v1, 0x25c4 +/* 09FFF4 8009F3F4 84590000 */ lh $t9, ($v0) +/* 09FFF8 8009F3F8 44810000 */ mtc1 $at, $f0 +/* 09FFFC 8009F3FC 1159003F */ beq $t2, $t9, .L8009F4FC +/* 0A0000 8009F400 3C01800F */ lui $at, %hi(D_800E86B8) # $at, 0x800f +/* 0A0004 8009F404 3C0E800E */ lui $t6, %hi(D_800E25C4) # $t6, 0x800e +/* 0A0008 8009F408 25CE25C4 */ addiu $t6, %lo(D_800E25C4) # addiu $t6, $t6, 0x25c4 +/* 0A000C 8009F40C 85C40000 */ lh $a0, ($t6) +/* 0A0010 8009F410 00000000 */ nop +.L8009F414: +/* 0A0014 8009F414 844F0002 */ lh $t7, 2($v0) +/* 0A0018 8009F418 8CB80000 */ lw $t8, ($a1) +/* 0A001C 8009F41C 448F4000 */ mtc1 $t7, $f8 +/* 0A0020 8009F420 0004C940 */ sll $t9, $a0, 5 +/* 0A0024 8009F424 468042A0 */ cvt.s.w $f10, $f8 +/* 0A0028 8009F428 03197021 */ addu $t6, $t8, $t9 +/* 0A002C 8009F42C E5CA000C */ swc1 $f10, 0xc($t6) +/* 0A0030 8009F430 84580000 */ lh $t8, ($v0) +/* 0A0034 8009F434 8CAF0000 */ lw $t7, ($a1) +/* 0A0038 8009F438 0018C940 */ sll $t9, $t8, 5 +/* 0A003C 8009F43C 01F91821 */ addu $v1, $t7, $t9 +/* 0A0040 8009F440 84780006 */ lh $t8, 6($v1) +/* 0A0044 8009F444 8D2E0000 */ lw $t6, ($t1) +/* 0A0048 8009F448 00187840 */ sll $t7, $t8, 1 +/* 0A004C 8009F44C 01CFC821 */ addu $t9, $t6, $t7 +/* 0A0050 8009F450 87380000 */ lh $t8, ($t9) +/* 0A0054 8009F454 00000000 */ nop +/* 0A0058 8009F458 330EC000 */ andi $t6, $t8, 0xc000 +/* 0A005C 8009F45C 150E0012 */ bne $t0, $t6, .L8009F4A8 +/* 0A0060 8009F460 00000000 */ nop +/* 0A0064 8009F464 14E00008 */ bnez $a3, .L8009F488 +/* 0A0068 8009F468 00000000 */ nop +/* 0A006C 8009F46C 844F0004 */ lh $t7, 4($v0) +/* 0A0070 8009F470 00000000 */ nop +/* 0A0074 8009F474 448F2000 */ mtc1 $t7, $f4 +/* 0A0078 8009F478 00000000 */ nop +/* 0A007C 8009F47C 468021A0 */ cvt.s.w $f6, $f4 +/* 0A0080 8009F480 1000001A */ b .L8009F4EC +/* 0A0084 8009F484 E4660010 */ swc1 $f6, 0x10($v1) +.L8009F488: +/* 0A0088 8009F488 84590004 */ lh $t9, 4($v0) +/* 0A008C 8009F48C 00000000 */ nop +/* 0A0090 8009F490 2738006C */ addiu $t8, $t9, 0x6c +/* 0A0094 8009F494 44984000 */ mtc1 $t8, $f8 +/* 0A0098 8009F498 00000000 */ nop +/* 0A009C 8009F49C 468042A0 */ cvt.s.w $f10, $f8 +/* 0A00A0 8009F4A0 10000012 */ b .L8009F4EC +/* 0A00A4 8009F4A4 E46A0010 */ swc1 $f10, 0x10($v1) +.L8009F4A8: +/* 0A00A8 8009F4A8 14E00009 */ bnez $a3, .L8009F4D0 +/* 0A00AC 8009F4AC 00000000 */ nop +/* 0A00B0 8009F4B0 844E0004 */ lh $t6, 4($v0) +/* 0A00B4 8009F4B4 00000000 */ nop +/* 0A00B8 8009F4B8 25CF003C */ addiu $t7, $t6, 0x3c +/* 0A00BC 8009F4BC 448F2000 */ mtc1 $t7, $f4 +/* 0A00C0 8009F4C0 00000000 */ nop +/* 0A00C4 8009F4C4 468021A0 */ cvt.s.w $f6, $f4 +/* 0A00C8 8009F4C8 10000008 */ b .L8009F4EC +/* 0A00CC 8009F4CC E4660010 */ swc1 $f6, 0x10($v1) +.L8009F4D0: +/* 0A00D0 8009F4D0 84590004 */ lh $t9, 4($v0) +/* 0A00D4 8009F4D4 00000000 */ nop +/* 0A00D8 8009F4D8 2738FFD0 */ addiu $t8, $t9, -0x30 +/* 0A00DC 8009F4DC 44984000 */ mtc1 $t8, $f8 +/* 0A00E0 8009F4E0 00000000 */ nop +/* 0A00E4 8009F4E4 468042A0 */ cvt.s.w $f10, $f8 +/* 0A00E8 8009F4E8 E46A0010 */ swc1 $f10, 0x10($v1) +.L8009F4EC: +/* 0A00EC 8009F4EC 84440006 */ lh $a0, 6($v0) +/* 0A00F0 8009F4F0 24420006 */ addiu $v0, $v0, 6 +/* 0A00F4 8009F4F4 1544FFC7 */ bne $t2, $a0, .L8009F414 +/* 0A00F8 8009F4F8 00000000 */ nop +.L8009F4FC: +/* 0A00FC 8009F4FC C42486B8 */ lwc1 $f4, %lo(D_800E86B8)($at) +/* 0A0100 8009F500 8CAE0000 */ lw $t6, ($a1) +/* 0A0104 8009F504 3C014377 */ li $at, 0x43770000 # 247.000000 +/* 0A0108 8009F508 E5C4064C */ swc1 $f4, 0x64c($t6) +/* 0A010C 8009F50C 8CAF0000 */ lw $t7, ($a1) +/* 0A0110 8009F510 44813000 */ mtc1 $at, $f6 +/* 0A0114 8009F514 E5E00650 */ swc1 $f0, 0x650($t7) +/* 0A0118 8009F518 8CB90000 */ lw $t9, ($a1) +/* 0A011C 8009F51C 3C014234 */ li $at, 0x42340000 # 45.000000 +/* 0A0120 8009F520 E726040C */ swc1 $f6, 0x40c($t9) +/* 0A0124 8009F524 8CB80000 */ lw $t8, ($a1) +/* 0A0128 8009F528 44814000 */ mtc1 $at, $f8 +/* 0A012C 8009F52C 3C01800F */ lui $at, %hi(D_800E86BC) # $at, 0x800f +/* 0A0130 8009F530 E7080410 */ swc1 $f8, 0x410($t8) +/* 0A0134 8009F534 8CAE0000 */ lw $t6, ($a1) +/* 0A0138 8009F538 C42A86BC */ lwc1 $f10, %lo(D_800E86BC)($at) +/* 0A013C 8009F53C 3C014244 */ li $at, 0x42440000 # 49.000000 +/* 0A0140 8009F540 E5CA066C */ swc1 $f10, 0x66c($t6) +/* 0A0144 8009F544 8CAF0000 */ lw $t7, ($a1) +/* 0A0148 8009F548 44812000 */ mtc1 $at, $f4 +/* 0A014C 8009F54C 3C0142CE */ li $at, 0x42CE0000 # 103.000000 +/* 0A0150 8009F550 E5E40670 */ swc1 $f4, 0x670($t7) +/* 0A0154 8009F554 8CB90000 */ lw $t9, ($a1) +/* 0A0158 8009F558 44813000 */ mtc1 $at, $f6 +/* 0A015C 8009F55C 3C014244 */ li $at, 0x42440000 # 49.000000 +/* 0A0160 8009F560 E726068C */ swc1 $f6, 0x68c($t9) +/* 0A0164 8009F564 8CB80000 */ lw $t8, ($a1) +/* 0A0168 8009F568 44814000 */ mtc1 $at, $f8 +/* 0A016C 8009F56C 3C014384 */ li $at, 0x43840000 # 264.000000 +/* 0A0170 8009F570 E7080690 */ swc1 $f8, 0x690($t8) +/* 0A0174 8009F574 8CAE0000 */ lw $t6, ($a1) +/* 0A0178 8009F578 44815000 */ mtc1 $at, $f10 +/* 0A017C 8009F57C 3C014248 */ li $at, 0x42480000 # 50.000000 +/* 0A0180 8009F580 E5CA06AC */ swc1 $f10, 0x6ac($t6) +/* 0A0184 8009F584 8CAF0000 */ lw $t7, ($a1) +/* 0A0188 8009F588 44812000 */ mtc1 $at, $f4 +/* 0A018C 8009F58C 3C01800F */ lui $at, %hi(D_800E86C0) # $at, 0x800f +/* 0A0190 8009F590 E5E406B0 */ swc1 $f4, 0x6b0($t7) +/* 0A0194 8009F594 8CB90000 */ lw $t9, ($a1) +/* 0A0198 8009F598 C42686C0 */ lwc1 $f6, %lo(D_800E86C0)($at) +/* 0A019C 8009F59C 3C01424C */ li $at, 0x424C0000 # 51.000000 +/* 0A01A0 8009F5A0 E72606CC */ swc1 $f6, 0x6cc($t9) +/* 0A01A4 8009F5A4 8CB80000 */ lw $t8, ($a1) +/* 0A01A8 8009F5A8 44814000 */ mtc1 $at, $f8 +/* 0A01AC 8009F5AC 3C014389 */ li $at, 0x43890000 # 274.000000 +/* 0A01B0 8009F5B0 E70806D0 */ swc1 $f8, 0x6d0($t8) +/* 0A01B4 8009F5B4 8CAE0000 */ lw $t6, ($a1) +/* 0A01B8 8009F5B8 44815000 */ mtc1 $at, $f10 +/* 0A01BC 8009F5BC 3C01424C */ li $at, 0x424C0000 # 51.000000 +/* 0A01C0 8009F5C0 E5CA06EC */ swc1 $f10, 0x6ec($t6) +/* 0A01C4 8009F5C4 8CAF0000 */ lw $t7, ($a1) +/* 0A01C8 8009F5C8 44812000 */ mtc1 $at, $f4 +/* 0A01CC 8009F5CC 24180003 */ li $t8, 3 +/* 0A01D0 8009F5D0 E5E406F0 */ swc1 $f4, 0x6f0($t7) +/* 0A01D4 8009F5D4 8CB90000 */ lw $t9, ($a1) +/* 0A01D8 8009F5D8 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 +/* 0A01DC 8009F5DC E7200650 */ swc1 $f0, 0x650($t9) +/* 0A01E0 8009F5E0 8CAE0000 */ lw $t6, ($a1) +/* 0A01E4 8009F5E4 00000000 */ nop +/* 0A01E8 8009F5E8 A1D805DC */ sb $t8, 0x5dc($t6) +/* 0A01EC 8009F5EC 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) +/* 0A01F0 8009F5F0 10000072 */ b .L8009F7BC +/* 0A01F4 8009F5F4 00000000 */ nop +.L8009F5F8: +/* 0A01F8 8009F5F8 11630002 */ beq $t3, $v1, .L8009F604 +/* 0A01FC 8009F5FC 24010003 */ li $at, 3 +/* 0A0200 8009F600 1461006E */ bne $v1, $at, .L8009F7BC +.L8009F604: +/* 0A0204 8009F604 3C04800E */ lui $a0, 0x800e +/* 0A0208 8009F608 24822684 */ addiu $v0, $a0, 0x2684 +/* 0A020C 8009F60C 844F0000 */ lh $t7, ($v0) +/* 0A0210 8009F610 3C19800E */ lui $t9, %hi(D_800E2684) # $t9, 0x800e +/* 0A0214 8009F614 114F0069 */ beq $t2, $t7, .L8009F7BC +/* 0A0218 8009F618 27392684 */ addiu $t9, %lo(D_800E2684) # addiu $t9, $t9, 0x2684 +/* 0A021C 8009F61C 87230000 */ lh $v1, ($t9) +/* 0A0220 8009F620 00000000 */ nop +.L8009F624: +/* 0A0224 8009F624 8CB80000 */ lw $t8, ($a1) +/* 0A0228 8009F628 00037140 */ sll $t6, $v1, 5 +/* 0A022C 8009F62C 030E2021 */ addu $a0, $t8, $t6 +/* 0A0230 8009F630 84990006 */ lh $t9, 6($a0) +/* 0A0234 8009F634 8D2F0000 */ lw $t7, ($t1) +/* 0A0238 8009F638 0019C040 */ sll $t8, $t9, 1 +/* 0A023C 8009F63C 01F87021 */ addu $t6, $t7, $t8 +/* 0A0240 8009F640 85D90000 */ lh $t9, ($t6) +/* 0A0244 8009F644 00000000 */ nop +/* 0A0248 8009F648 332FC000 */ andi $t7, $t9, 0xc000 +/* 0A024C 8009F64C 150F002A */ bne $t0, $t7, .L8009F6F8 +/* 0A0250 8009F650 00000000 */ nop +/* 0A0254 8009F654 10E00003 */ beqz $a3, .L8009F664 +/* 0A0258 8009F658 00000000 */ nop +/* 0A025C 8009F65C 14EB0008 */ bne $a3, $t3, .L8009F680 +/* 0A0260 8009F660 00000000 */ nop +.L8009F664: +/* 0A0264 8009F664 84580002 */ lh $t8, 2($v0) +/* 0A0268 8009F668 00000000 */ nop +/* 0A026C 8009F66C 44983000 */ mtc1 $t8, $f6 +/* 0A0270 8009F670 00000000 */ nop +/* 0A0274 8009F674 46803220 */ cvt.s.w $f8, $f6 +/* 0A0278 8009F678 10000008 */ b .L8009F69C +/* 0A027C 8009F67C E488000C */ swc1 $f8, 0xc($a0) +.L8009F680: +/* 0A0280 8009F680 844E0006 */ lh $t6, 6($v0) +/* 0A0284 8009F684 00000000 */ nop +/* 0A0288 8009F688 25D900A0 */ addiu $t9, $t6, 0xa0 +/* 0A028C 8009F68C 44995000 */ mtc1 $t9, $f10 +/* 0A0290 8009F690 00000000 */ nop +/* 0A0294 8009F694 46805120 */ cvt.s.w $f4, $f10 +/* 0A0298 8009F698 E484000C */ swc1 $f4, 0xc($a0) +.L8009F69C: +/* 0A029C 8009F69C 10E00003 */ beqz $a3, .L8009F6AC +/* 0A02A0 8009F6A0 00000000 */ nop +/* 0A02A4 8009F6A4 14EC000A */ bne $a3, $t4, .L8009F6D0 +/* 0A02A8 8009F6A8 00000000 */ nop +.L8009F6AC: +/* 0A02AC 8009F6AC 844F0004 */ lh $t7, 4($v0) +/* 0A02B0 8009F6B0 844E0000 */ lh $t6, ($v0) +/* 0A02B4 8009F6B4 448F3000 */ mtc1 $t7, $f6 +/* 0A02B8 8009F6B8 8CB80000 */ lw $t8, ($a1) +/* 0A02BC 8009F6BC 46803220 */ cvt.s.w $f8, $f6 +/* 0A02C0 8009F6C0 000EC940 */ sll $t9, $t6, 5 +/* 0A02C4 8009F6C4 03197821 */ addu $t7, $t8, $t9 +/* 0A02C8 8009F6C8 10000035 */ b .L8009F7A0 +/* 0A02CC 8009F6CC E5E80010 */ swc1 $f8, 0x10($t7) +.L8009F6D0: +/* 0A02D0 8009F6D0 844E0004 */ lh $t6, 4($v0) +/* 0A02D4 8009F6D4 844F0000 */ lh $t7, ($v0) +/* 0A02D8 8009F6D8 25D8006C */ addiu $t8, $t6, 0x6c +/* 0A02DC 8009F6DC 44985000 */ mtc1 $t8, $f10 +/* 0A02E0 8009F6E0 8CB90000 */ lw $t9, ($a1) +/* 0A02E4 8009F6E4 46805120 */ cvt.s.w $f4, $f10 +/* 0A02E8 8009F6E8 000F7140 */ sll $t6, $t7, 5 +/* 0A02EC 8009F6EC 032EC021 */ addu $t8, $t9, $t6 +/* 0A02F0 8009F6F0 1000002B */ b .L8009F7A0 +/* 0A02F4 8009F6F4 E7040010 */ swc1 $f4, 0x10($t8) +.L8009F6F8: +/* 0A02F8 8009F6F8 10E00003 */ beqz $a3, .L8009F708 +/* 0A02FC 8009F6FC 00000000 */ nop +/* 0A0300 8009F700 14EB0009 */ bne $a3, $t3, .L8009F728 +/* 0A0304 8009F704 00000000 */ nop +.L8009F708: +/* 0A0308 8009F708 844F0002 */ lh $t7, 2($v0) +/* 0A030C 8009F70C 00000000 */ nop +/* 0A0310 8009F710 25F9FFB0 */ addiu $t9, $t7, -0x50 +/* 0A0314 8009F714 44993000 */ mtc1 $t9, $f6 +/* 0A0318 8009F718 00000000 */ nop +/* 0A031C 8009F71C 46803220 */ cvt.s.w $f8, $f6 +/* 0A0320 8009F720 10000008 */ b .L8009F744 +/* 0A0324 8009F724 E488000C */ swc1 $f8, 0xc($a0) +.L8009F728: +/* 0A0328 8009F728 844E0006 */ lh $t6, 6($v0) +/* 0A032C 8009F72C 00000000 */ nop +/* 0A0330 8009F730 25D80050 */ addiu $t8, $t6, 0x50 +/* 0A0334 8009F734 44985000 */ mtc1 $t8, $f10 +/* 0A0338 8009F738 00000000 */ nop +/* 0A033C 8009F73C 46805120 */ cvt.s.w $f4, $f10 +/* 0A0340 8009F740 E484000C */ swc1 $f4, 0xc($a0) +.L8009F744: +/* 0A0344 8009F744 10E00003 */ beqz $a3, .L8009F754 +/* 0A0348 8009F748 00000000 */ nop +/* 0A034C 8009F74C 14EC000B */ bne $a3, $t4, .L8009F77C +/* 0A0350 8009F750 00000000 */ nop +.L8009F754: +/* 0A0354 8009F754 844F0004 */ lh $t7, 4($v0) +/* 0A0358 8009F758 84580000 */ lh $t8, ($v0) +/* 0A035C 8009F75C 25F9003C */ addiu $t9, $t7, 0x3c +/* 0A0360 8009F760 44993000 */ mtc1 $t9, $f6 +/* 0A0364 8009F764 8CAE0000 */ lw $t6, ($a1) +/* 0A0368 8009F768 46803220 */ cvt.s.w $f8, $f6 +/* 0A036C 8009F76C 00187940 */ sll $t7, $t8, 5 +/* 0A0370 8009F770 01CFC821 */ addu $t9, $t6, $t7 +/* 0A0374 8009F774 1000000A */ b .L8009F7A0 +/* 0A0378 8009F778 E7280010 */ swc1 $f8, 0x10($t9) +.L8009F77C: +/* 0A037C 8009F77C 84580004 */ lh $t8, 4($v0) +/* 0A0380 8009F780 84590000 */ lh $t9, ($v0) +/* 0A0384 8009F784 270EFFD0 */ addiu $t6, $t8, -0x30 +/* 0A0388 8009F788 448E5000 */ mtc1 $t6, $f10 +/* 0A038C 8009F78C 8CAF0000 */ lw $t7, ($a1) +/* 0A0390 8009F790 46805120 */ cvt.s.w $f4, $f10 +/* 0A0394 8009F794 0019C140 */ sll $t8, $t9, 5 +/* 0A0398 8009F798 01F87021 */ addu $t6, $t7, $t8 +/* 0A039C 8009F79C E5C40010 */ swc1 $f4, 0x10($t6) +.L8009F7A0: +/* 0A03A0 8009F7A0 84430008 */ lh $v1, 8($v0) +/* 0A03A4 8009F7A4 24420008 */ addiu $v0, $v0, 8 +/* 0A03A8 8009F7A8 1543FF9E */ bne $t2, $v1, .L8009F624 +/* 0A03AC 8009F7AC 00000000 */ nop +/* 0A03B0 8009F7B0 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 +/* 0A03B4 8009F7B4 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) +/* 0A03B8 8009F7B8 00000000 */ nop +.L8009F7BC: +/* 0A03BC 8009F7BC 10600046 */ beqz $v1, .L8009F8D8 +/* 0A03C0 8009F7C0 00000000 */ nop +/* 0A03C4 8009F7C4 00001825 */ move $v1, $zero +.L8009F7C8: +/* 0A03C8 8009F7C8 8CB90000 */ lw $t9, ($a1) +/* 0A03CC 8009F7CC 00000000 */ nop +/* 0A03D0 8009F7D0 03232021 */ addu $a0, $t9, $v1 +/* 0A03D4 8009F7D4 84820006 */ lh $v0, 6($a0) +/* 0A03D8 8009F7D8 00000000 */ nop +/* 0A03DC 8009F7DC 15A20003 */ bne $t5, $v0, .L8009F7EC +/* 0A03E0 8009F7E0 00000000 */ nop +/* 0A03E4 8009F7E4 10000036 */ b .L8009F8C0 +/* 0A03E8 8009F7E8 A4910006 */ sh $s1, 6($a0) +.L8009F7EC: +/* 0A03EC 8009F7EC 16620003 */ bne $s3, $v0, .L8009F7FC +/* 0A03F0 8009F7F0 00000000 */ nop +/* 0A03F4 8009F7F4 10000032 */ b .L8009F8C0 +/* 0A03F8 8009F7F8 A4940006 */ sh $s4, 6($a0) +.L8009F7FC: +/* 0A03FC 8009F7FC 16A20003 */ bne $s5, $v0, .L8009F80C +/* 0A0400 8009F800 00000000 */ nop +/* 0A0404 8009F804 1000002E */ b .L8009F8C0 +/* 0A0408 8009F808 A4960006 */ sh $s6, 6($a0) +.L8009F80C: +/* 0A040C 8009F80C 17E20003 */ bne $ra, $v0, .L8009F81C +/* 0A0410 8009F810 00000000 */ nop +/* 0A0414 8009F814 1000002A */ b .L8009F8C0 +/* 0A0418 8009F818 A4970006 */ sh $s7, 6($a0) +.L8009F81C: +/* 0A041C 8009F81C 17C20008 */ bne $fp, $v0, .L8009F840 +/* 0A0420 8009F820 00000000 */ nop +/* 0A0424 8009F824 C4860008 */ lwc1 $f6, 8($a0) +/* 0A0428 8009F828 00000000 */ nop +/* 0A042C 8009F82C 46003221 */ cvt.d.s $f8, $f6 +/* 0A0430 8009F830 462E4282 */ mul.d $f10, $f8, $f14 +/* 0A0434 8009F834 46205120 */ cvt.s.d $f4, $f10 +/* 0A0438 8009F838 10000021 */ b .L8009F8C0 +/* 0A043C 8009F83C E4840008 */ swc1 $f4, 8($a0) +.L8009F840: +/* 0A0440 8009F840 1060001F */ beqz $v1, .L8009F8C0 +/* 0A0444 8009F844 24010020 */ li $at, 32 +/* 0A0448 8009F848 1061001D */ beq $v1, $at, .L8009F8C0 +/* 0A044C 8009F84C 24010040 */ li $at, 64 +/* 0A0450 8009F850 1061001B */ beq $v1, $at, .L8009F8C0 +/* 0A0454 8009F854 240104A0 */ li $at, 1184 +/* 0A0458 8009F858 10610019 */ beq $v1, $at, .L8009F8C0 +/* 0A045C 8009F85C 240105E0 */ li $at, 1504 +/* 0A0460 8009F860 10610017 */ beq $v1, $at, .L8009F8C0 +/* 0A0464 8009F864 24010600 */ li $at, 1536 +/* 0A0468 8009F868 10610015 */ beq $v1, $at, .L8009F8C0 +/* 0A046C 8009F86C 24010060 */ li $at, 96 +/* 0A0470 8009F870 10610013 */ beq $v1, $at, .L8009F8C0 +/* 0A0474 8009F874 24010640 */ li $at, 1600 +/* 0A0478 8009F878 10610011 */ beq $v1, $at, .L8009F8C0 +/* 0A047C 8009F87C 24010660 */ li $at, 1632 +/* 0A0480 8009F880 1061000F */ beq $v1, $at, .L8009F8C0 +/* 0A0484 8009F884 28610680 */ slti $at, $v1, 0x680 +/* 0A0488 8009F888 14200007 */ bnez $at, .L8009F8A8 +/* 0A048C 8009F88C 28610700 */ slti $at, $v1, 0x700 +/* 0A0490 8009F890 10200005 */ beqz $at, .L8009F8A8 +/* 0A0494 8009F894 24010380 */ li $at, 896 +/* 0A0498 8009F898 10610003 */ beq $v1, $at, .L8009F8A8 +/* 0A049C 8009F89C 24010120 */ li $at, 288 +/* 0A04A0 8009F8A0 14610007 */ bne $v1, $at, .L8009F8C0 +/* 0A04A4 8009F8A4 00000000 */ nop +.L8009F8A8: +/* 0A04A8 8009F8A8 C4860008 */ lwc1 $f6, 8($a0) +/* 0A04AC 8009F8AC 00000000 */ nop +/* 0A04B0 8009F8B0 46003221 */ cvt.d.s $f8, $f6 +/* 0A04B4 8009F8B4 46304282 */ mul.d $f10, $f8, $f16 +/* 0A04B8 8009F8B8 46205120 */ cvt.s.d $f4, $f10 +/* 0A04BC 8009F8BC E4840008 */ swc1 $f4, 8($a0) +.L8009F8C0: +/* 0A04C0 8009F8C0 24630020 */ addiu $v1, $v1, 0x20 +/* 0A04C4 8009F8C4 1472FFC0 */ bne $v1, $s2, .L8009F7C8 +/* 0A04C8 8009F8C8 00000000 */ nop +/* 0A04CC 8009F8CC 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 +/* 0A04D0 8009F8D0 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) +/* 0A04D4 8009F8D4 00000000 */ nop +.L8009F8D8: +/* 0A04D8 8009F8D8 8CA40000 */ lw $a0, ($a1) +/* 0A04DC 8009F8DC 28610002 */ slti $at, $v1, 2 +/* 0A04E0 8009F8E0 1420002F */ bnez $at, .L8009F9A0 +/* 0A04E4 8009F8E4 00000000 */ nop +/* 0A04E8 8009F8E8 E49603C8 */ swc1 $f22, 0x3c8($a0) +/* 0A04EC 8009F8EC 8CAF0000 */ lw $t7, ($a1) +/* 0A04F0 8009F8F0 00000000 */ nop +/* 0A04F4 8009F8F4 E5F603E8 */ swc1 $f22, 0x3e8($t7) +/* 0A04F8 8009F8F8 8CB80000 */ lw $t8, ($a1) +/* 0A04FC 8009F8FC 00000000 */ nop +/* 0A0500 8009F900 E71603A8 */ swc1 $f22, 0x3a8($t8) +/* 0A0504 8009F904 8CAE0000 */ lw $t6, ($a1) +/* 0A0508 8009F908 00000000 */ nop +/* 0A050C 8009F90C E5D60188 */ swc1 $f22, 0x188($t6) +/* 0A0510 8009F910 8CB90000 */ lw $t9, ($a1) +/* 0A0514 8009F914 00000000 */ nop +/* 0A0518 8009F918 E73601A8 */ swc1 $f22, 0x1a8($t9) +/* 0A051C 8009F91C 8CAF0000 */ lw $t7, ($a1) +/* 0A0520 8009F920 24190026 */ li $t9, 38 +/* 0A0524 8009F924 E5F60468 */ swc1 $f22, 0x468($t7) +/* 0A0528 8009F928 8CB80000 */ lw $t8, ($a1) +/* 0A052C 8009F92C 00000000 */ nop +/* 0A0530 8009F930 E7160488 */ swc1 $f22, 0x488($t8) +/* 0A0534 8009F934 8CAE0000 */ lw $t6, ($a1) +/* 0A0538 8009F938 2418002B */ li $t8, 43 +/* 0A053C 8009F93C E5D601C8 */ swc1 $f22, 0x1c8($t6) +/* 0A0540 8009F940 8CAF0000 */ lw $t7, ($a1) +/* 0A0544 8009F944 00000000 */ nop +/* 0A0548 8009F948 A5F903C6 */ sh $t9, 0x3c6($t7) +/* 0A054C 8009F94C 8CAE0000 */ lw $t6, ($a1) +/* 0A0550 8009F950 24190029 */ li $t9, 41 +/* 0A0554 8009F954 A5D803E6 */ sh $t8, 0x3e6($t6) +/* 0A0558 8009F958 8CAF0000 */ lw $t7, ($a1) +/* 0A055C 8009F95C 24180025 */ li $t8, 37 +/* 0A0560 8009F960 A5F903A6 */ sh $t9, 0x3a6($t7) +/* 0A0564 8009F964 8CAE0000 */ lw $t6, ($a1) +/* 0A0568 8009F968 24190027 */ li $t9, 39 +/* 0A056C 8009F96C A5D80186 */ sh $t8, 0x186($t6) +/* 0A0570 8009F970 8CAF0000 */ lw $t7, ($a1) +/* 0A0574 8009F974 2418002D */ li $t8, 45 +/* 0A0578 8009F978 A5F901A6 */ sh $t9, 0x1a6($t7) +/* 0A057C 8009F97C 8CAE0000 */ lw $t6, ($a1) +/* 0A0580 8009F980 2419002C */ li $t9, 44 +/* 0A0584 8009F984 A5D80466 */ sh $t8, 0x466($t6) +/* 0A0588 8009F988 8CAF0000 */ lw $t7, ($a1) +/* 0A058C 8009F98C 2418002A */ li $t8, 42 +/* 0A0590 8009F990 A5F90486 */ sh $t9, 0x486($t7) +/* 0A0594 8009F994 8CAE0000 */ lw $t6, ($a1) +/* 0A0598 8009F998 10000005 */ b .L8009F9B0 +/* 0A059C 8009F99C A5D801C6 */ sh $t8, 0x1c6($t6) +.L8009F9A0: +/* 0A05A0 8009F9A0 A08C005D */ sb $t4, 0x5d($a0) +/* 0A05A4 8009F9A4 8CB90000 */ lw $t9, ($a1) +/* 0A05A8 8009F9A8 00000000 */ nop +/* 0A05AC 8009F9AC A32C037D */ sb $t4, 0x37d($t9) +.L8009F9B0: +/* 0A05B0 8009F9B0 0C003936 */ jal func_8000E4D8 +/* 0A05B4 8009F9B4 AFA70090 */ sw $a3, 0x90($sp) +/* 0A05B8 8009F9B8 3C058012 */ lui $a1, %hi(D_80126CDC) # $a1, 0x8012 +/* 0A05BC 8009F9BC 8FA70090 */ lw $a3, 0x90($sp) +/* 0A05C0 8009F9C0 10400043 */ beqz $v0, .L8009FAD0 +/* 0A05C4 8009F9C4 24A56CDC */ addiu $a1, %lo(D_80126CDC) # addiu $a1, $a1, 0x6cdc +/* 0A05C8 8009F9C8 8CA40000 */ lw $a0, ($a1) +/* 0A05CC 8009F9CC 00000000 */ nop +/* 0A05D0 8009F9D0 C48600EC */ lwc1 $f6, 0xec($a0) +/* 0A05D4 8009F9D4 00000000 */ nop +/* 0A05D8 8009F9D8 46183200 */ add.s $f8, $f6, $f24 +/* 0A05DC 8009F9DC E48800EC */ swc1 $f8, 0xec($a0) +/* 0A05E0 8009F9E0 8CA40000 */ lw $a0, ($a1) +/* 0A05E4 8009F9E4 00000000 */ nop +/* 0A05E8 8009F9E8 C48A010C */ lwc1 $f10, 0x10c($a0) +/* 0A05EC 8009F9EC 00000000 */ nop +/* 0A05F0 8009F9F0 46185100 */ add.s $f4, $f10, $f24 +/* 0A05F4 8009F9F4 E484010C */ swc1 $f4, 0x10c($a0) +/* 0A05F8 8009F9F8 8CA40000 */ lw $a0, ($a1) +/* 0A05FC 8009F9FC 00000000 */ nop +/* 0A0600 8009FA00 C486012C */ lwc1 $f6, 0x12c($a0) +/* 0A0604 8009FA04 00000000 */ nop +/* 0A0608 8009FA08 46183200 */ add.s $f8, $f6, $f24 +/* 0A060C 8009FA0C E488012C */ swc1 $f8, 0x12c($a0) +/* 0A0610 8009FA10 8CA40000 */ lw $a0, ($a1) +/* 0A0614 8009FA14 00000000 */ nop +/* 0A0618 8009FA18 C48A038C */ lwc1 $f10, 0x38c($a0) +/* 0A061C 8009FA1C 00000000 */ nop +/* 0A0620 8009FA20 46185100 */ add.s $f4, $f10, $f24 +/* 0A0624 8009FA24 E484038C */ swc1 $f4, 0x38c($a0) +/* 0A0628 8009FA28 8CA40000 */ lw $a0, ($a1) +/* 0A062C 8009FA2C 00000000 */ nop +/* 0A0630 8009FA30 C486036C */ lwc1 $f6, 0x36c($a0) +/* 0A0634 8009FA34 00000000 */ nop +/* 0A0638 8009FA38 46183200 */ add.s $f8, $f6, $f24 +/* 0A063C 8009FA3C E488036C */ swc1 $f8, 0x36c($a0) +/* 0A0640 8009FA40 8CA40000 */ lw $a0, ($a1) +/* 0A0644 8009FA44 00000000 */ nop +/* 0A0648 8009FA48 C48A024C */ lwc1 $f10, 0x24c($a0) +/* 0A064C 8009FA4C 00000000 */ nop +/* 0A0650 8009FA50 46185100 */ add.s $f4, $f10, $f24 +/* 0A0654 8009FA54 E484024C */ swc1 $f4, 0x24c($a0) +/* 0A0658 8009FA58 8CA40000 */ lw $a0, ($a1) +/* 0A065C 8009FA5C 00000000 */ nop +/* 0A0660 8009FA60 C486008C */ lwc1 $f6, 0x8c($a0) +/* 0A0664 8009FA64 00000000 */ nop +/* 0A0668 8009FA68 461C3200 */ add.s $f8, $f6, $f28 +/* 0A066C 8009FA6C E488008C */ swc1 $f8, 0x8c($a0) +/* 0A0670 8009FA70 8CA40000 */ lw $a0, ($a1) +/* 0A0674 8009FA74 00000000 */ nop +/* 0A0678 8009FA78 C48A00AC */ lwc1 $f10, 0xac($a0) +/* 0A067C 8009FA7C 00000000 */ nop +/* 0A0680 8009FA80 461C5100 */ add.s $f4, $f10, $f28 +/* 0A0684 8009FA84 E48400AC */ swc1 $f4, 0xac($a0) +/* 0A0688 8009FA88 8CA40000 */ lw $a0, ($a1) +/* 0A068C 8009FA8C 00000000 */ nop +/* 0A0690 8009FA90 C48600CC */ lwc1 $f6, 0xcc($a0) +/* 0A0694 8009FA94 00000000 */ nop +/* 0A0698 8009FA98 461C3200 */ add.s $f8, $f6, $f28 +/* 0A069C 8009FA9C E48800CC */ swc1 $f8, 0xcc($a0) +/* 0A06A0 8009FAA0 8CA40000 */ lw $a0, ($a1) +/* 0A06A4 8009FAA4 00000000 */ nop +/* 0A06A8 8009FAA8 C48A006C */ lwc1 $f10, 0x6c($a0) +/* 0A06AC 8009FAAC 00000000 */ nop +/* 0A06B0 8009FAB0 461C5100 */ add.s $f4, $f10, $f28 +/* 0A06B4 8009FAB4 E484006C */ swc1 $f4, 0x6c($a0) +/* 0A06B8 8009FAB8 8CA40000 */ lw $a0, ($a1) +/* 0A06BC 8009FABC 00000000 */ nop +/* 0A06C0 8009FAC0 C486020C */ lwc1 $f6, 0x20c($a0) +/* 0A06C4 8009FAC4 00000000 */ nop +/* 0A06C8 8009FAC8 461C3200 */ add.s $f8, $f6, $f28 +/* 0A06CC 8009FACC E488020C */ swc1 $f8, 0x20c($a0) +.L8009FAD0: +/* 0A06D0 8009FAD0 0C01AF66 */ jal func_8006BD98 +/* 0A06D4 8009FAD4 AFA70090 */ sw $a3, 0x90($sp) +/* 0A06D8 8009FAD8 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 0A06DC 8009FADC 44819000 */ mtc1 $at, $f18 +/* 0A06E0 8009FAE0 24010008 */ li $at, 8 +/* 0A06E4 8009FAE4 3C058012 */ lui $a1, %hi(D_80126CDC) # $a1, 0x8012 +/* 0A06E8 8009FAE8 8FA70090 */ lw $a3, 0x90($sp) +/* 0A06EC 8009FAEC 24A56CDC */ addiu $a1, %lo(D_80126CDC) # addiu $a1, $a1, 0x6cdc +/* 0A06F0 8009FAF0 240B0002 */ li $t3, 2 +/* 0A06F4 8009FAF4 10410006 */ beq $v0, $at, .L8009FB10 +/* 0A06F8 8009FAF8 240C0001 */ li $t4, 1 +/* 0A06FC 8009FAFC 24010041 */ li $at, 65 +/* 0A0700 8009FB00 10410046 */ beq $v0, $at, .L8009FC1C +/* 0A0704 8009FB04 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 +/* 0A0708 8009FB08 10000085 */ b .L8009FD20 +/* 0A070C 8009FB0C 00000000 */ nop +.L8009FB10: +/* 0A0710 8009FB10 8CA40000 */ lw $a0, ($a1) +/* 0A0714 8009FB14 00000000 */ nop +/* 0A0718 8009FB18 C48A00EC */ lwc1 $f10, 0xec($a0) +/* 0A071C 8009FB1C 00000000 */ nop +/* 0A0720 8009FB20 461A5100 */ add.s $f4, $f10, $f26 +/* 0A0724 8009FB24 E48400EC */ swc1 $f4, 0xec($a0) +/* 0A0728 8009FB28 8CA40000 */ lw $a0, ($a1) +/* 0A072C 8009FB2C 00000000 */ nop +/* 0A0730 8009FB30 C486010C */ lwc1 $f6, 0x10c($a0) +/* 0A0734 8009FB34 00000000 */ nop +/* 0A0738 8009FB38 461A3200 */ add.s $f8, $f6, $f26 +/* 0A073C 8009FB3C E488010C */ swc1 $f8, 0x10c($a0) +/* 0A0740 8009FB40 8CA40000 */ lw $a0, ($a1) +/* 0A0744 8009FB44 00000000 */ nop +/* 0A0748 8009FB48 C48A012C */ lwc1 $f10, 0x12c($a0) +/* 0A074C 8009FB4C 00000000 */ nop +/* 0A0750 8009FB50 461A5100 */ add.s $f4, $f10, $f26 +/* 0A0754 8009FB54 E484012C */ swc1 $f4, 0x12c($a0) +/* 0A0758 8009FB58 8CA40000 */ lw $a0, ($a1) +/* 0A075C 8009FB5C 00000000 */ nop +/* 0A0760 8009FB60 C486038C */ lwc1 $f6, 0x38c($a0) +/* 0A0764 8009FB64 00000000 */ nop +/* 0A0768 8009FB68 461A3200 */ add.s $f8, $f6, $f26 +/* 0A076C 8009FB6C E488038C */ swc1 $f8, 0x38c($a0) +/* 0A0770 8009FB70 8CA40000 */ lw $a0, ($a1) +/* 0A0774 8009FB74 00000000 */ nop +/* 0A0778 8009FB78 C48A036C */ lwc1 $f10, 0x36c($a0) +/* 0A077C 8009FB7C 00000000 */ nop +/* 0A0780 8009FB80 461A5100 */ add.s $f4, $f10, $f26 +/* 0A0784 8009FB84 E484036C */ swc1 $f4, 0x36c($a0) +/* 0A0788 8009FB88 8CA40000 */ lw $a0, ($a1) +/* 0A078C 8009FB8C 00000000 */ nop +/* 0A0790 8009FB90 C486024C */ lwc1 $f6, 0x24c($a0) +/* 0A0794 8009FB94 00000000 */ nop +/* 0A0798 8009FB98 461A3200 */ add.s $f8, $f6, $f26 +/* 0A079C 8009FB9C E488024C */ swc1 $f8, 0x24c($a0) +/* 0A07A0 8009FBA0 8CA40000 */ lw $a0, ($a1) +/* 0A07A4 8009FBA4 00000000 */ nop +/* 0A07A8 8009FBA8 C48A006C */ lwc1 $f10, 0x6c($a0) +/* 0A07AC 8009FBAC 00000000 */ nop +/* 0A07B0 8009FBB0 46145100 */ add.s $f4, $f10, $f20 +/* 0A07B4 8009FBB4 E484006C */ swc1 $f4, 0x6c($a0) +/* 0A07B8 8009FBB8 8CA40000 */ lw $a0, ($a1) +/* 0A07BC 8009FBBC 00000000 */ nop +/* 0A07C0 8009FBC0 C486008C */ lwc1 $f6, 0x8c($a0) +/* 0A07C4 8009FBC4 00000000 */ nop +/* 0A07C8 8009FBC8 46143200 */ add.s $f8, $f6, $f20 +/* 0A07CC 8009FBCC E488008C */ swc1 $f8, 0x8c($a0) +/* 0A07D0 8009FBD0 8CA40000 */ lw $a0, ($a1) +/* 0A07D4 8009FBD4 00000000 */ nop +/* 0A07D8 8009FBD8 C48A00AC */ lwc1 $f10, 0xac($a0) +/* 0A07DC 8009FBDC 00000000 */ nop +/* 0A07E0 8009FBE0 46145100 */ add.s $f4, $f10, $f20 +/* 0A07E4 8009FBE4 E48400AC */ swc1 $f4, 0xac($a0) +/* 0A07E8 8009FBE8 8CA40000 */ lw $a0, ($a1) +/* 0A07EC 8009FBEC 00000000 */ nop +/* 0A07F0 8009FBF0 C48600CC */ lwc1 $f6, 0xcc($a0) +/* 0A07F4 8009FBF4 00000000 */ nop +/* 0A07F8 8009FBF8 46143200 */ add.s $f8, $f6, $f20 +/* 0A07FC 8009FBFC E48800CC */ swc1 $f8, 0xcc($a0) +/* 0A0800 8009FC00 8CA40000 */ lw $a0, ($a1) +/* 0A0804 8009FC04 00000000 */ nop +/* 0A0808 8009FC08 C48A020C */ lwc1 $f10, 0x20c($a0) +/* 0A080C 8009FC0C 00000000 */ nop +/* 0A0810 8009FC10 46145100 */ add.s $f4, $f10, $f20 +/* 0A0814 8009FC14 10000042 */ b .L8009FD20 +/* 0A0818 8009FC18 E484020C */ swc1 $f4, 0x20c($a0) +.L8009FC1C: +/* 0A081C 8009FC1C 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) +/* 0A0820 8009FC20 3C028012 */ lui $v0, %hi(D_80126D37) # $v0, 0x8012 +/* 0A0824 8009FC24 15E00007 */ bnez $t7, .L8009FC44 +/* 0A0828 8009FC28 00000000 */ nop +/* 0A082C 8009FC2C 8CA40000 */ lw $a0, ($a1) +/* 0A0830 8009FC30 00000000 */ nop +/* 0A0834 8009FC34 C4860410 */ lwc1 $f6, 0x410($a0) +/* 0A0838 8009FC38 00000000 */ nop +/* 0A083C 8009FC3C 46123201 */ sub.s $f8, $f6, $f18 +/* 0A0840 8009FC40 E4880410 */ swc1 $f8, 0x410($a0) +.L8009FC44: +/* 0A0844 8009FC44 90426D37 */ lbu $v0, %lo(D_80126D37)($v0) +/* 0A0848 8009FC48 00000000 */ nop +/* 0A084C 8009FC4C 28410003 */ slti $at, $v0, 3 +/* 0A0850 8009FC50 14200009 */ bnez $at, .L8009FC78 +/* 0A0854 8009FC54 00000000 */ nop +/* 0A0858 8009FC58 10E00003 */ beqz $a3, .L8009FC68 +/* 0A085C 8009FC5C 00000000 */ nop +/* 0A0860 8009FC60 14EB0003 */ bne $a3, $t3, .L8009FC70 +/* 0A0864 8009FC64 00000000 */ nop +.L8009FC68: +/* 0A0868 8009FC68 10000008 */ b .L8009FC8C +/* 0A086C 8009FC6C 02801025 */ move $v0, $s4 +.L8009FC70: +/* 0A0870 8009FC70 10000006 */ b .L8009FC8C +/* 0A0874 8009FC74 2402FFF6 */ li $v0, -10 +.L8009FC78: +/* 0A0878 8009FC78 15820004 */ bne $t4, $v0, .L8009FC8C +/* 0A087C 8009FC7C 00001025 */ move $v0, $zero +/* 0A0880 8009FC80 10000002 */ b .L8009FC8C +/* 0A0884 8009FC84 2402FFF6 */ li $v0, -10 +/* 0A0888 8009FC88 00001025 */ move $v0, $zero +.L8009FC8C: +/* 0A088C 8009FC8C 44825000 */ mtc1 $v0, $f10 +/* 0A0890 8009FC90 8CA40000 */ lw $a0, ($a1) +/* 0A0894 8009FC94 46805020 */ cvt.s.w $f0, $f10 +/* 0A0898 8009FC98 C484036C */ lwc1 $f4, 0x36c($a0) +/* 0A089C 8009FC9C 00000000 */ nop +/* 0A08A0 8009FCA0 46002180 */ add.s $f6, $f4, $f0 +/* 0A08A4 8009FCA4 E486036C */ swc1 $f6, 0x36c($a0) +/* 0A08A8 8009FCA8 8CA40000 */ lw $a0, ($a1) +/* 0A08AC 8009FCAC 00000000 */ nop +/* 0A08B0 8009FCB0 C48800EC */ lwc1 $f8, 0xec($a0) +/* 0A08B4 8009FCB4 00000000 */ nop +/* 0A08B8 8009FCB8 46004280 */ add.s $f10, $f8, $f0 +/* 0A08BC 8009FCBC E48A00EC */ swc1 $f10, 0xec($a0) +/* 0A08C0 8009FCC0 8CA40000 */ lw $a0, ($a1) +/* 0A08C4 8009FCC4 00000000 */ nop +/* 0A08C8 8009FCC8 C484010C */ lwc1 $f4, 0x10c($a0) +/* 0A08CC 8009FCCC 00000000 */ nop +/* 0A08D0 8009FCD0 46002180 */ add.s $f6, $f4, $f0 +/* 0A08D4 8009FCD4 E486010C */ swc1 $f6, 0x10c($a0) +/* 0A08D8 8009FCD8 8CA40000 */ lw $a0, ($a1) +/* 0A08DC 8009FCDC 00000000 */ nop +/* 0A08E0 8009FCE0 C488012C */ lwc1 $f8, 0x12c($a0) +/* 0A08E4 8009FCE4 00000000 */ nop +/* 0A08E8 8009FCE8 46004280 */ add.s $f10, $f8, $f0 +/* 0A08EC 8009FCEC E48A012C */ swc1 $f10, 0x12c($a0) +/* 0A08F0 8009FCF0 8CA40000 */ lw $a0, ($a1) +/* 0A08F4 8009FCF4 00000000 */ nop +/* 0A08F8 8009FCF8 C484038C */ lwc1 $f4, 0x38c($a0) +/* 0A08FC 8009FCFC 00000000 */ nop +/* 0A0900 8009FD00 46002180 */ add.s $f6, $f4, $f0 +/* 0A0904 8009FD04 E486038C */ swc1 $f6, 0x38c($a0) +/* 0A0908 8009FD08 8CA40000 */ lw $a0, ($a1) +/* 0A090C 8009FD0C 00000000 */ nop +/* 0A0910 8009FD10 C488024C */ lwc1 $f8, 0x24c($a0) +/* 0A0914 8009FD14 00000000 */ nop +/* 0A0918 8009FD18 46004280 */ add.s $f10, $f8, $f0 +/* 0A091C 8009FD1C E48A024C */ swc1 $f10, 0x24c($a0) +.L8009FD20: +/* 0A0920 8009FD20 0C008D07 */ jal func_8002341C +/* 0A0924 8009FD24 AFA70090 */ sw $a3, 0x90($sp) +/* 0A0928 8009FD28 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 0A092C 8009FD2C 44811000 */ mtc1 $at, $f2 +/* 0A0930 8009FD30 3C01800F */ lui $at, %hi(D_800E86EC) # $at, 0x800f +/* 0A0934 8009FD34 C42D86E8 */ lwc1 $f13, %lo(D_800E86E8)($at) +/* 0A0938 8009FD38 C42C86EC */ lwc1 $f12, %lo(D_800E86EC)($at) +/* 0A093C 8009FD3C 3C01800F */ lui $at, %hi(D_800E86F4) # $at, 0x800f +/* 0A0940 8009FD40 C42F86F0 */ lwc1 $f15, %lo(D_800E86F0)($at) +/* 0A0944 8009FD44 C42E86F4 */ lwc1 $f14, %lo(D_800E86F4)($at) +/* 0A0948 8009FD48 3C013FE8 */ li $at, 0x3FE80000 # 1.812500 +/* 0A094C 8009FD4C 44818800 */ mtc1 $at, $f17 +/* 0A0950 8009FD50 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 0A0954 8009FD54 44819000 */ mtc1 $at, $f18 +/* 0A0958 8009FD58 3C058012 */ lui $a1, %hi(D_80126CDC) # $a1, 0x8012 +/* 0A095C 8009FD5C 8FA70090 */ lw $a3, 0x90($sp) +/* 0A0960 8009FD60 3C098012 */ lui $t1, %hi(D_80126CF0) # $t1, 0x8012 +/* 0A0964 8009FD64 44808000 */ mtc1 $zero, $f16 +/* 0A0968 8009FD68 25296CF0 */ addiu $t1, %lo(D_80126CF0) # addiu $t1, $t1, 0x6cf0 +/* 0A096C 8009FD6C 24A56CDC */ addiu $a1, %lo(D_80126CDC) # addiu $a1, $a1, 0x6cdc +/* 0A0970 8009FD70 3408C000 */ li $t0, 49152 +/* 0A0974 8009FD74 240AFFFF */ li $t2, -1 +/* 0A0978 8009FD78 240B0002 */ li $t3, 2 +/* 0A097C 8009FD7C 240C0001 */ li $t4, 1 +/* 0A0980 8009FD80 240D0009 */ li $t5, 9 +/* 0A0984 8009FD84 1040001F */ beqz $v0, .L8009FE04 +/* 0A0988 8009FD88 241F0012 */ li $ra, 18 +/* 0A098C 8009FD8C 8CA40000 */ lw $a0, ($a1) +/* 0A0990 8009FD90 00000000 */ nop +/* 0A0994 8009FD94 C484006C */ lwc1 $f4, 0x6c($a0) +/* 0A0998 8009FD98 00000000 */ nop +/* 0A099C 8009FD9C 46142180 */ add.s $f6, $f4, $f20 +/* 0A09A0 8009FDA0 E486006C */ swc1 $f6, 0x6c($a0) +/* 0A09A4 8009FDA4 8CA40000 */ lw $a0, ($a1) +/* 0A09A8 8009FDA8 00000000 */ nop +/* 0A09AC 8009FDAC C488008C */ lwc1 $f8, 0x8c($a0) +/* 0A09B0 8009FDB0 00000000 */ nop +/* 0A09B4 8009FDB4 46144280 */ add.s $f10, $f8, $f20 +/* 0A09B8 8009FDB8 E48A008C */ swc1 $f10, 0x8c($a0) +/* 0A09BC 8009FDBC 8CA40000 */ lw $a0, ($a1) +/* 0A09C0 8009FDC0 00000000 */ nop +/* 0A09C4 8009FDC4 C48400AC */ lwc1 $f4, 0xac($a0) +/* 0A09C8 8009FDC8 00000000 */ nop +/* 0A09CC 8009FDCC 46142180 */ add.s $f6, $f4, $f20 +/* 0A09D0 8009FDD0 E48600AC */ swc1 $f6, 0xac($a0) +/* 0A09D4 8009FDD4 8CA40000 */ lw $a0, ($a1) +/* 0A09D8 8009FDD8 00000000 */ nop +/* 0A09DC 8009FDDC C48800CC */ lwc1 $f8, 0xcc($a0) +/* 0A09E0 8009FDE0 00000000 */ nop +/* 0A09E4 8009FDE4 46144280 */ add.s $f10, $f8, $f20 +/* 0A09E8 8009FDE8 E48A00CC */ swc1 $f10, 0xcc($a0) +/* 0A09EC 8009FDEC 8CA40000 */ lw $a0, ($a1) +/* 0A09F0 8009FDF0 00000000 */ nop +/* 0A09F4 8009FDF4 C484020C */ lwc1 $f4, 0x20c($a0) +/* 0A09F8 8009FDF8 00000000 */ nop +/* 0A09FC 8009FDFC 46142180 */ add.s $f6, $f4, $f20 +/* 0A0A00 8009FE00 E486020C */ swc1 $f6, 0x20c($a0) +.L8009FE04: +/* 0A0A04 8009FE04 3C188000 */ lui $t8, %hi(D_80000300) # $t8, 0x8000 +/* 0A0A08 8009FE08 8F180300 */ lw $t8, %lo(D_80000300)($t8) +/* 0A0A0C 8009FE0C 00000000 */ nop +/* 0A0A10 8009FE10 17000053 */ bnez $t8, .L8009FF60 +/* 0A0A14 8009FE14 00000000 */ nop +/* 0A0A18 8009FE18 8CA40000 */ lw $a0, ($a1) +/* 0A0A1C 8009FE1C 00001825 */ move $v1, $zero +/* 0A0A20 8009FE20 00831021 */ addu $v0, $a0, $v1 +.L8009FE24: +/* 0A0A24 8009FE24 C4480010 */ lwc1 $f8, 0x10($v0) +/* 0A0A28 8009FE28 00000000 */ nop +/* 0A0A2C 8009FE2C 460042A1 */ cvt.d.s $f10, $f8 +/* 0A0A30 8009FE30 462C5102 */ mul.d $f4, $f10, $f12 +/* 0A0A34 8009FE34 462021A0 */ cvt.s.d $f6, $f4 +/* 0A0A38 8009FE38 E4460010 */ swc1 $f6, 0x10($v0) +/* 0A0A3C 8009FE3C 8CAE0000 */ lw $t6, ($a1) +/* 0A0A40 8009FE40 00000000 */ nop +/* 0A0A44 8009FE44 01C31021 */ addu $v0, $t6, $v1 +/* 0A0A48 8009FE48 C448000C */ lwc1 $f8, 0xc($v0) +/* 0A0A4C 8009FE4C 00000000 */ nop +/* 0A0A50 8009FE50 46124281 */ sub.s $f10, $f8, $f18 +/* 0A0A54 8009FE54 E44A000C */ swc1 $f10, 0xc($v0) +/* 0A0A58 8009FE58 8CA40000 */ lw $a0, ($a1) +/* 0A0A5C 8009FE5C 8D390000 */ lw $t9, ($t1) +/* 0A0A60 8009FE60 00831021 */ addu $v0, $a0, $v1 +/* 0A0A64 8009FE64 844F0006 */ lh $t7, 6($v0) +/* 0A0A68 8009FE68 24630020 */ addiu $v1, $v1, 0x20 +/* 0A0A6C 8009FE6C 000FC040 */ sll $t8, $t7, 1 +/* 0A0A70 8009FE70 03387021 */ addu $t6, $t9, $t8 +/* 0A0A74 8009FE74 85CF0000 */ lh $t7, ($t6) +/* 0A0A78 8009FE78 28610760 */ slti $at, $v1, 0x760 +/* 0A0A7C 8009FE7C 31F9C000 */ andi $t9, $t7, 0xc000 +/* 0A0A80 8009FE80 15190007 */ bne $t0, $t9, .L8009FEA0 +/* 0A0A84 8009FE84 00000000 */ nop +/* 0A0A88 8009FE88 C4440010 */ lwc1 $f4, 0x10($v0) +/* 0A0A8C 8009FE8C 00000000 */ nop +/* 0A0A90 8009FE90 46022181 */ sub.s $f6, $f4, $f2 +/* 0A0A94 8009FE94 E4460010 */ swc1 $f6, 0x10($v0) +/* 0A0A98 8009FE98 8CA40000 */ lw $a0, ($a1) +/* 0A0A9C 8009FE9C 00000000 */ nop +.L8009FEA0: +/* 0A0AA0 8009FEA0 1420FFE0 */ bnez $at, .L8009FE24 +/* 0A0AA4 8009FEA4 00831021 */ addu $v0, $a0, $v1 +/* 0A0AA8 8009FEA8 248204E0 */ addiu $v0, $a0, 0x4e0 +/* 0A0AAC 8009FEAC C4480010 */ lwc1 $f8, 0x10($v0) +/* 0A0AB0 8009FEB0 2406002A */ li $a2, 42 +/* 0A0AB4 8009FEB4 46024280 */ add.s $f10, $f8, $f2 +/* 0A0AB8 8009FEB8 00061940 */ sll $v1, $a2, 5 +/* 0A0ABC 8009FEBC E44A0010 */ swc1 $f10, 0x10($v0) +/* 0A0AC0 8009FEC0 8CA20000 */ lw $v0, ($a1) +/* 0A0AC4 8009FEC4 00000000 */ nop +/* 0A0AC8 8009FEC8 C4440510 */ lwc1 $f4, 0x510($v0) +/* 0A0ACC 8009FECC 244204E0 */ addiu $v0, $v0, 0x4e0 +/* 0A0AD0 8009FED0 46022180 */ add.s $f6, $f4, $f2 +/* 0A0AD4 8009FED4 E4460030 */ swc1 $f6, 0x30($v0) +/* 0A0AD8 8009FED8 8CA20000 */ lw $v0, ($a1) +/* 0A0ADC 8009FEDC 00000000 */ nop +/* 0A0AE0 8009FEE0 C4480530 */ lwc1 $f8, 0x530($v0) +/* 0A0AE4 8009FEE4 244204E0 */ addiu $v0, $v0, 0x4e0 +/* 0A0AE8 8009FEE8 46024280 */ add.s $f10, $f8, $f2 +/* 0A0AEC 8009FEEC E44A0050 */ swc1 $f10, 0x50($v0) +/* 0A0AF0 8009FEF0 8CB80000 */ lw $t8, ($a1) +/* 0A0AF4 8009FEF4 00000000 */ nop +/* 0A0AF8 8009FEF8 03031021 */ addu $v0, $t8, $v1 +/* 0A0AFC 8009FEFC C4440010 */ lwc1 $f4, 0x10($v0) +/* 0A0B00 8009FF00 00000000 */ nop +/* 0A0B04 8009FF04 46022180 */ add.s $f6, $f4, $f2 +/* 0A0B08 8009FF08 E4460010 */ swc1 $f6, 0x10($v0) +/* 0A0B0C 8009FF0C 8CAE0000 */ lw $t6, ($a1) +/* 0A0B10 8009FF10 00000000 */ nop +/* 0A0B14 8009FF14 01C31021 */ addu $v0, $t6, $v1 +/* 0A0B18 8009FF18 C4480030 */ lwc1 $f8, 0x30($v0) +/* 0A0B1C 8009FF1C 00000000 */ nop +/* 0A0B20 8009FF20 46024280 */ add.s $f10, $f8, $f2 +/* 0A0B24 8009FF24 E44A0030 */ swc1 $f10, 0x30($v0) +/* 0A0B28 8009FF28 8CAF0000 */ lw $t7, ($a1) +/* 0A0B2C 8009FF2C 00000000 */ nop +/* 0A0B30 8009FF30 01E31021 */ addu $v0, $t7, $v1 +/* 0A0B34 8009FF34 C4440050 */ lwc1 $f4, 0x50($v0) +/* 0A0B38 8009FF38 00000000 */ nop +/* 0A0B3C 8009FF3C 46022180 */ add.s $f6, $f4, $f2 +/* 0A0B40 8009FF40 E4460050 */ swc1 $f6, 0x50($v0) +/* 0A0B44 8009FF44 8CB90000 */ lw $t9, ($a1) +/* 0A0B48 8009FF48 00000000 */ nop +/* 0A0B4C 8009FF4C 03231021 */ addu $v0, $t9, $v1 +/* 0A0B50 8009FF50 C4480070 */ lwc1 $f8, 0x70($v0) +/* 0A0B54 8009FF54 00000000 */ nop +/* 0A0B58 8009FF58 46024280 */ add.s $f10, $f8, $f2 +/* 0A0B5C 8009FF5C E44A0070 */ swc1 $f10, 0x70($v0) +.L8009FF60: +/* 0A0B60 8009FF60 8CB80000 */ lw $t8, ($a1) +/* 0A0B64 8009FF64 24E70001 */ addiu $a3, $a3, 1 +/* 0A0B68 8009FF68 E7160268 */ swc1 $f22, 0x268($t8) +/* 0A0B6C 8009FF6C 8CAE0000 */ lw $t6, ($a1) +/* 0A0B70 8009FF70 00000000 */ nop +/* 0A0B74 8009FF74 A5DF0286 */ sh $ra, 0x286($t6) +/* 0A0B78 8009FF78 8CAF0000 */ lw $t7, ($a1) +/* 0A0B7C 8009FF7C 00000000 */ nop +/* 0A0B80 8009FF80 A5ED02A6 */ sh $t5, 0x2a6($t7) +/* 0A0B84 8009FF84 8CB90000 */ lw $t9, ($a1) +/* 0A0B88 8009FF88 00000000 */ nop +/* 0A0B8C 8009FF8C A72D02C6 */ sh $t5, 0x2c6($t9) +/* 0A0B90 8009FF90 8FB8006C */ lw $t8, 0x6c($sp) +/* 0A0B94 8009FF94 8FAF008C */ lw $t7, 0x8c($sp) +/* 0A0B98 8009FF98 270E0004 */ addiu $t6, $t8, 4 +/* 0A0B9C 8009FF9C 14EFFCCE */ bne $a3, $t7, .L8009F2D8 +/* 0A0BA0 8009FFA0 AFAE006C */ sw $t6, 0x6c($sp) +.L8009FFA4: +/* 0A0BA4 8009FFA4 0C01AF66 */ jal func_8006BD98 +/* 0A0BA8 8009FFA8 00000000 */ nop +/* 0A0BAC 8009FFAC 30590040 */ andi $t9, $v0, 0x40 +/* 0A0BB0 8009FFB0 13200008 */ beqz $t9, .L8009FFD4 +/* 0A0BB4 8009FFB4 3C02800E */ lui $v0, 0x800e +/* 0A0BB8 8009FFB8 3C02800E */ lui $v0, %hi(D_800E27A4) # $v0, 0x800e +/* 0A0BBC 8009FFBC 244227A4 */ addiu $v0, %lo(D_800E27A4) # addiu $v0, $v0, 0x27a4 +/* 0A0BC0 8009FFC0 80580001 */ lb $t8, 1($v0) +/* 0A0BC4 8009FFC4 3C01800E */ lui $at, %hi(D_800E27A8) # $at, 0x800e +/* 0A0BC8 8009FFC8 A03827A8 */ sb $t8, %lo(D_800E27A8)($at) +/* 0A0BCC 8009FFCC 10000005 */ b .L8009FFE4 +/* 0A0BD0 8009FFD0 A0400001 */ sb $zero, 1($v0) +.L8009FFD4: +/* 0A0BD4 8009FFD4 3C0E800E */ lui $t6, %hi(D_800E27A8) # $t6, 0x800e +/* 0A0BD8 8009FFD8 81CE27A8 */ lb $t6, %lo(D_800E27A8)($t6) +/* 0A0BDC 8009FFDC 244227A4 */ addiu $v0, $v0, 0x27a4 +/* 0A0BE0 8009FFE0 A04E0001 */ sb $t6, 1($v0) +.L8009FFE4: +/* 0A0BE4 8009FFE4 8FBF0064 */ lw $ra, 0x64($sp) +/* 0A0BE8 8009FFE8 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 0A0BEC 8009FFEC C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 0A0BF0 8009FFF0 C7B70020 */ lwc1 $f23, 0x20($sp) +/* 0A0BF4 8009FFF4 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 0A0BF8 8009FFF8 C7B90028 */ lwc1 $f25, 0x28($sp) +/* 0A0BFC 8009FFFC C7B8002C */ lwc1 $f24, 0x2c($sp) +/* 0A0C00 800A0000 C7BB0030 */ lwc1 $f27, 0x30($sp) +/* 0A0C04 800A0004 C7BA0034 */ lwc1 $f26, 0x34($sp) +/* 0A0C08 800A0008 C7BD0038 */ lwc1 $f29, 0x38($sp) +/* 0A0C0C 800A000C C7BC003C */ lwc1 $f28, 0x3c($sp) +/* 0A0C10 800A0010 8FB00040 */ lw $s0, 0x40($sp) +/* 0A0C14 800A0014 8FB10044 */ lw $s1, 0x44($sp) +/* 0A0C18 800A0018 8FB20048 */ lw $s2, 0x48($sp) +/* 0A0C1C 800A001C 8FB3004C */ lw $s3, 0x4c($sp) +/* 0A0C20 800A0020 8FB40050 */ lw $s4, 0x50($sp) +/* 0A0C24 800A0024 8FB50054 */ lw $s5, 0x54($sp) +/* 0A0C28 800A0028 8FB60058 */ lw $s6, 0x58($sp) +/* 0A0C2C 800A002C 8FB7005C */ lw $s7, 0x5c($sp) +/* 0A0C30 800A0030 8FBE0060 */ lw $fp, 0x60($sp) +/* 0A0C34 800A0034 03E00008 */ jr $ra +/* 0A0C38 800A0038 27BD0098 */ addiu $sp, $sp, 0x98 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A003C.s b/asm/non_matchings/unknown_09F8F0/func_800A003C.s new file mode 100644 index 00000000..22223ca0 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A003C.s @@ -0,0 +1,94 @@ +glabel func_800A003C +/* 0A0C3C 800A003C 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0A0C40 800A0040 3C028012 */ lui $v0, %hi(D_80126CF8) # $v0, 0x8012 +/* 0A0C44 800A0044 8C426CF8 */ lw $v0, %lo(D_80126CF8)($v0) +/* 0A0C48 800A0048 AFB00018 */ sw $s0, 0x18($sp) +/* 0A0C4C 800A004C AFBF002C */ sw $ra, 0x2c($sp) +/* 0A0C50 800A0050 AFB40028 */ sw $s4, 0x28($sp) +/* 0A0C54 800A0054 AFB30024 */ sw $s3, 0x24($sp) +/* 0A0C58 800A0058 AFB20020 */ sw $s2, 0x20($sp) +/* 0A0C5C 800A005C AFB1001C */ sw $s1, 0x1c($sp) +/* 0A0C60 800A0060 18400032 */ blez $v0, .L800A012C +/* 0A0C64 800A0064 00008025 */ move $s0, $zero +/* 0A0C68 800A0068 3C148012 */ lui $s4, %hi(D_80126CF0) # $s4, 0x8012 +/* 0A0C6C 800A006C 3C128012 */ lui $s2, %hi(D_80126CF4) # $s2, 0x8012 +/* 0A0C70 800A0070 26526CF4 */ addiu $s2, %lo(D_80126CF4) # addiu $s2, $s2, 0x6cf4 +/* 0A0C74 800A0074 26946CF0 */ addiu $s4, %lo(D_80126CF0) # addiu $s4, $s4, 0x6cf0 +/* 0A0C78 800A0078 00008825 */ move $s1, $zero +/* 0A0C7C 800A007C 3413C000 */ li $s3, 49152 +.L800A0080: +/* 0A0C80 800A0080 8E4E0000 */ lw $t6, ($s2) +/* 0A0C84 800A0084 00000000 */ nop +/* 0A0C88 800A0088 01D17821 */ addu $t7, $t6, $s1 +/* 0A0C8C 800A008C 8DE40000 */ lw $a0, ($t7) +/* 0A0C90 800A0090 00000000 */ nop +/* 0A0C94 800A0094 10800021 */ beqz $a0, .L800A011C +/* 0A0C98 800A0098 00000000 */ nop +/* 0A0C9C 800A009C 8E980000 */ lw $t8, ($s4) +/* 0A0CA0 800A00A0 0010C840 */ sll $t9, $s0, 1 +/* 0A0CA4 800A00A4 03194021 */ addu $t0, $t8, $t9 +/* 0A0CA8 800A00A8 85020000 */ lh $v0, ($t0) +/* 0A0CAC 800A00AC 00000000 */ nop +/* 0A0CB0 800A00B0 3049C000 */ andi $t1, $v0, 0xc000 +/* 0A0CB4 800A00B4 16690005 */ bne $s3, $t1, .L800A00CC +/* 0A0CB8 800A00B8 304A8000 */ andi $t2, $v0, 0x8000 +/* 0A0CBC 800A00BC 0C01ECAF */ jal func_8007B2BC +/* 0A0CC0 800A00C0 00000000 */ nop +/* 0A0CC4 800A00C4 10000010 */ b .L800A0108 +/* 0A0CC8 800A00C8 8E4C0000 */ lw $t4, ($s2) +.L800A00CC: +/* 0A0CCC 800A00CC 11400005 */ beqz $t2, .L800A00E4 +/* 0A0CD0 800A00D0 304B4000 */ andi $t3, $v0, 0x4000 +/* 0A0CD4 800A00D4 0C01F32C */ jal func_8007CCB0 +/* 0A0CD8 800A00D8 00000000 */ nop +/* 0A0CDC 800A00DC 1000000A */ b .L800A0108 +/* 0A0CE0 800A00E0 8E4C0000 */ lw $t4, ($s2) +.L800A00E4: +/* 0A0CE4 800A00E4 11600005 */ beqz $t3, .L800A00FC +/* 0A0CE8 800A00E8 00000000 */ nop +/* 0A0CEC 800A00EC 0C003FEE */ jal func_8000FFB8 +/* 0A0CF0 800A00F0 00000000 */ nop +/* 0A0CF4 800A00F4 10000004 */ b .L800A0108 +/* 0A0CF8 800A00F8 8E4C0000 */ lw $t4, ($s2) +.L800A00FC: +/* 0A0CFC 800A00FC 0C017FD0 */ jal func_8005FF40 +/* 0A0D00 800A0100 00000000 */ nop +/* 0A0D04 800A0104 8E4C0000 */ lw $t4, ($s2) +.L800A0108: +/* 0A0D08 800A0108 3C028012 */ lui $v0, %hi(D_80126CF8) # $v0, 0x8012 +/* 0A0D0C 800A010C 01916821 */ addu $t5, $t4, $s1 +/* 0A0D10 800A0110 ADA00000 */ sw $zero, ($t5) +/* 0A0D14 800A0114 8C426CF8 */ lw $v0, %lo(D_80126CF8)($v0) +/* 0A0D18 800A0118 00000000 */ nop +.L800A011C: +/* 0A0D1C 800A011C 26100001 */ addiu $s0, $s0, 1 +/* 0A0D20 800A0120 0202082A */ slt $at, $s0, $v0 +/* 0A0D24 800A0124 1420FFD6 */ bnez $at, .L800A0080 +/* 0A0D28 800A0128 26310004 */ addiu $s1, $s1, 4 +.L800A012C: +/* 0A0D2C 800A012C 3C048012 */ lui $a0, %hi(D_80126CE0) # $a0, 0x8012 +/* 0A0D30 800A0130 3C128012 */ lui $s2, %hi(D_80126CF4) # $s2, 0x8012 +/* 0A0D34 800A0134 3C148012 */ lui $s4, %hi(D_80126CF0) # $s4, 0x8012 +/* 0A0D38 800A0138 8C846CE0 */ lw $a0, %lo(D_80126CE0)($a0) +/* 0A0D3C 800A013C 26946CF0 */ addiu $s4, %lo(D_80126CF0) # addiu $s4, $s4, 0x6cf0 +/* 0A0D40 800A0140 0C01C450 */ jal func_80071140 +/* 0A0D44 800A0144 26526CF4 */ addiu $s2, %lo(D_80126CF4) # addiu $s2, $s2, 0x6cf4 +/* 0A0D48 800A0148 8E840000 */ lw $a0, ($s4) +/* 0A0D4C 800A014C 0C01C450 */ jal func_80071140 +/* 0A0D50 800A0150 00000000 */ nop +/* 0A0D54 800A0154 3C018012 */ lui $at, %hi(D_80126CF8) # $at, 0x8012 +/* 0A0D58 800A0158 AC206CF8 */ sw $zero, %lo(D_80126CF8)($at) +/* 0A0D5C 800A015C 8E440000 */ lw $a0, ($s2) +/* 0A0D60 800A0160 0C01C450 */ jal func_80071140 +/* 0A0D64 800A0164 00000000 */ nop +/* 0A0D68 800A0168 0C004013 */ jal func_8001004C +/* 0A0D6C 800A016C 00000000 */ nop +/* 0A0D70 800A0170 8FBF002C */ lw $ra, 0x2c($sp) +/* 0A0D74 800A0174 8FB00018 */ lw $s0, 0x18($sp) +/* 0A0D78 800A0178 8FB1001C */ lw $s1, 0x1c($sp) +/* 0A0D7C 800A017C 8FB20020 */ lw $s2, 0x20($sp) +/* 0A0D80 800A0180 8FB30024 */ lw $s3, 0x24($sp) +/* 0A0D84 800A0184 8FB40028 */ lw $s4, 0x28($sp) +/* 0A0D88 800A0188 03E00008 */ jr $ra +/* 0A0D8C 800A018C 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A0190.s b/asm/non_matchings/unknown_09F8F0/func_800A0190.s new file mode 100644 index 00000000..1c2cffe2 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A0190.s @@ -0,0 +1,6 @@ +glabel func_800A0190 +/* 0A0D90 800A0190 3C028012 */ lui $v0, %hi(D_80126D34) # $v0, 0x8012 +/* 0A0D94 800A0194 90426D34 */ lbu $v0, %lo(D_80126D34)($v0) +/* 0A0D98 800A0198 03E00008 */ jr $ra +/* 0A0D9C 800A019C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A01A0.s b/asm/non_matchings/unknown_09F8F0/func_800A01A0.s new file mode 100644 index 00000000..1a859a75 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A01A0.s @@ -0,0 +1,672 @@ +glabel func_800A01A0 +/* 0A0DA0 800A01A0 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0A0DA4 800A01A4 AFBF0024 */ sw $ra, 0x24($sp) +/* 0A0DA8 800A01A8 AFA40030 */ sw $a0, 0x30($sp) +/* 0A0DAC 800A01AC AFA50034 */ sw $a1, 0x34($sp) +/* 0A0DB0 800A01B0 AFA60038 */ sw $a2, 0x38($sp) +/* 0A0DB4 800A01B4 0C019888 */ jal func_80066220 +/* 0A0DB8 800A01B8 AFA7003C */ sw $a3, 0x3c($sp) +/* 0A0DBC 800A01BC 3C0E8012 */ lui $t6, %hi(D_8012718A) # $t6, 0x8012 +/* 0A0DC0 800A01C0 91CE718A */ lbu $t6, %lo(D_8012718A)($t6) +/* 0A0DC4 800A01C4 3C018012 */ lui $at, %hi(D_80126D08) # $at, 0x8012 +/* 0A0DC8 800A01C8 11C00007 */ beqz $t6, .L800A01E8 +/* 0A0DCC 800A01CC AC226D08 */ sw $v0, %lo(D_80126D08)($at) +/* 0A0DD0 800A01D0 3C0F8012 */ lui $t7, %hi(D_80126D08) # $t7, 0x8012 +/* 0A0DD4 800A01D4 8DEF6D08 */ lw $t7, %lo(D_80126D08)($t7) +/* 0A0DD8 800A01D8 24180001 */ li $t8, 1 +/* 0A0DDC 800A01DC 0C006EC6 */ jal func_8001BB18 +/* 0A0DE0 800A01E0 030F2023 */ subu $a0, $t8, $t7 +/* 0A0DE4 800A01E4 AFA2003C */ sw $v0, 0x3c($sp) +.L800A01E8: +/* 0A0DE8 800A01E8 0C01AF6C */ jal func_8006BDB0 +/* 0A0DEC 800A01EC 00000000 */ nop +/* 0A0DF0 800A01F0 8FB9003C */ lw $t9, 0x3c($sp) +/* 0A0DF4 800A01F4 3C018012 */ lui $at, %hi(D_80126D60) # $at, 0x8012 +/* 0A0DF8 800A01F8 17200009 */ bnez $t9, .L800A0220 +/* 0A0DFC 800A01FC AC226D60 */ sw $v0, %lo(D_80126D60)($at) +/* 0A0E00 800A0200 0C007910 */ jal func_8001E440 +/* 0A0E04 800A0204 00000000 */ nop +/* 0A0E08 800A0208 2401000A */ li $at, 10 +/* 0A0E0C 800A020C 14410005 */ bne $v0, $at, .L800A0224 +/* 0A0E10 800A0210 8FA8003C */ lw $t0, 0x3c($sp) +/* 0A0E14 800A0214 0C006EC6 */ jal func_8001BB18 +/* 0A0E18 800A0218 00002025 */ move $a0, $zero +/* 0A0E1C 800A021C AFA2003C */ sw $v0, 0x3c($sp) +.L800A0220: +/* 0A0E20 800A0220 8FA8003C */ lw $t0, 0x3c($sp) +.L800A0224: +/* 0A0E24 800A0224 3C098012 */ lui $t1, %hi(D_80126D60) # $t1, 0x8012 +/* 0A0E28 800A0228 1100024F */ beqz $t0, .L800A0B68 +/* 0A0E2C 800A022C 8FBF0024 */ lw $ra, 0x24($sp) +/* 0A0E30 800A0230 8D296D60 */ lw $t1, %lo(D_80126D60)($t1) +/* 0A0E34 800A0234 00000000 */ nop +/* 0A0E38 800A0238 912A00BC */ lbu $t2, 0xbc($t1) +/* 0A0E3C 800A023C 00000000 */ nop +/* 0A0E40 800A0240 314B0002 */ andi $t3, $t2, 2 +/* 0A0E44 800A0244 15600248 */ bnez $t3, .L800A0B68 +/* 0A0E48 800A0248 8FBF0024 */ lw $ra, 0x24($sp) +/* 0A0E4C 800A024C 0C01B683 */ jal func_8006DA0C +/* 0A0E50 800A0250 00000000 */ nop +/* 0A0E54 800A0254 24030001 */ li $v1, 1 +/* 0A0E58 800A0258 10430242 */ beq $v0, $v1, .L800A0B64 +/* 0A0E5C 800A025C 3C018012 */ lui $at, %hi(D_80126CFC) # $at, 0x8012 +/* 0A0E60 800A0260 8FAC0030 */ lw $t4, 0x30($sp) +/* 0A0E64 800A0264 8FAE0034 */ lw $t6, 0x34($sp) +/* 0A0E68 800A0268 8D8D0000 */ lw $t5, ($t4) +/* 0A0E6C 800A026C 8FAF0038 */ lw $t7, 0x38($sp) +/* 0A0E70 800A0270 AC2D6CFC */ sw $t5, %lo(D_80126CFC)($at) +/* 0A0E74 800A0274 8DD80000 */ lw $t8, ($t6) +/* 0A0E78 800A0278 3C018012 */ lui $at, %hi(D_80126D00) # $at, 0x8012 +/* 0A0E7C 800A027C AC386D00 */ sw $t8, %lo(D_80126D00)($at) +/* 0A0E80 800A0280 8DF90000 */ lw $t9, ($t7) +/* 0A0E84 800A0284 3C018012 */ lui $at, %hi(D_80126D04) # $at, 0x8012 +/* 0A0E88 800A0288 3C088012 */ lui $t0, %hi(D_80126CD1) # $t0, 0x8012 +/* 0A0E8C 800A028C 81086CD1 */ lb $t0, %lo(D_80126CD1)($t0) +/* 0A0E90 800A0290 AC396D04 */ sw $t9, %lo(D_80126D04)($at) +/* 0A0E94 800A0294 3C018012 */ lui $at, %hi(D_80127180) # $at, 0x8012 +/* 0A0E98 800A0298 11000010 */ beqz $t0, .L800A02DC +/* 0A0E9C 800A029C AC207180 */ sw $zero, %lo(D_80127180)($at) +/* 0A0EA0 800A02A0 3C068012 */ lui $a2, %hi(D_80126CD0) # $a2, 0x8012 +/* 0A0EA4 800A02A4 24C66CD0 */ addiu $a2, %lo(D_80126CD0) # addiu $a2, $a2, 0x6cd0 +/* 0A0EA8 800A02A8 80C90000 */ lb $t1, ($a2) +/* 0A0EAC 800A02AC 8FAA0040 */ lw $t2, 0x40($sp) +/* 0A0EB0 800A02B0 3C028012 */ lui $v0, %hi(D_8012718B) # $v0, 0x8012 +/* 0A0EB4 800A02B4 012A5821 */ addu $t3, $t1, $t2 +/* 0A0EB8 800A02B8 A0CB0000 */ sb $t3, ($a2) +/* 0A0EBC 800A02BC 80CC0000 */ lb $t4, ($a2) +/* 0A0EC0 800A02C0 9042718B */ lbu $v0, %lo(D_8012718B)($v0) +/* 0A0EC4 800A02C4 00000000 */ nop +/* 0A0EC8 800A02C8 004C082A */ slt $at, $v0, $t4 +/* 0A0ECC 800A02CC 1020000F */ beqz $at, .L800A030C +/* 0A0ED0 800A02D0 00000000 */ nop +/* 0A0ED4 800A02D4 1000000D */ b .L800A030C +/* 0A0ED8 800A02D8 A0C20000 */ sb $v0, ($a2) +.L800A02DC: +/* 0A0EDC 800A02DC 3C068012 */ lui $a2, %hi(D_80126CD0) # $a2, 0x8012 +/* 0A0EE0 800A02E0 24C66CD0 */ addiu $a2, %lo(D_80126CD0) # addiu $a2, $a2, 0x6cd0 +/* 0A0EE4 800A02E4 80CD0000 */ lb $t5, ($a2) +/* 0A0EE8 800A02E8 8FAE0040 */ lw $t6, 0x40($sp) +/* 0A0EEC 800A02EC 00000000 */ nop +/* 0A0EF0 800A02F0 01AEC023 */ subu $t8, $t5, $t6 +/* 0A0EF4 800A02F4 A0D80000 */ sb $t8, ($a2) +/* 0A0EF8 800A02F8 80CF0000 */ lb $t7, ($a2) +/* 0A0EFC 800A02FC 00000000 */ nop +/* 0A0F00 800A0300 05E10002 */ bgez $t7, .L800A030C +/* 0A0F04 800A0304 00000000 */ nop +/* 0A0F08 800A0308 A0C00000 */ sb $zero, ($a2) +.L800A030C: +/* 0A0F0C 800A030C 3C198012 */ lui $t9, %hi(D_80126CD2) # $t9, 0x8012 +/* 0A0F10 800A0310 83396CD2 */ lb $t9, %lo(D_80126CD2)($t9) +/* 0A0F14 800A0314 8FA8003C */ lw $t0, 0x3c($sp) +/* 0A0F18 800A0318 17200212 */ bnez $t9, .L800A0B64 +/* 0A0F1C 800A031C 3C098012 */ lui $t1, %hi(D_8012718A) # $t1, 0x8012 +/* 0A0F20 800A0320 9129718A */ lbu $t1, %lo(D_8012718A)($t1) +/* 0A0F24 800A0324 8D020064 */ lw $v0, 0x64($t0) +/* 0A0F28 800A0328 11200006 */ beqz $t1, .L800A0344 +/* 0A0F2C 800A032C 3C0D8012 */ lui $t5, %hi(D_80126D08) # $t5, 0x8012 +/* 0A0F30 800A0330 844A0000 */ lh $t2, ($v0) +/* 0A0F34 800A0334 3C018012 */ lui $at, %hi(D_80126D10) # $at, 0x8012 +/* 0A0F38 800A0338 006A5823 */ subu $t3, $v1, $t2 +/* 0A0F3C 800A033C 10000004 */ b .L800A0350 +/* 0A0F40 800A0340 AC2B6D10 */ sw $t3, %lo(D_80126D10)($at) +.L800A0344: +/* 0A0F44 800A0344 844C0000 */ lh $t4, ($v0) +/* 0A0F48 800A0348 3C018012 */ lui $at, %hi(D_80126D10) # $at, 0x8012 +/* 0A0F4C 800A034C AC2C6D10 */ sw $t4, %lo(D_80126D10)($at) +.L800A0350: +/* 0A0F50 800A0350 8DAD6D08 */ lw $t5, %lo(D_80126D08)($t5) +/* 0A0F54 800A0354 3C188012 */ lui $t8, 0x8012 +/* 0A0F58 800A0358 000D7080 */ sll $t6, $t5, 2 +/* 0A0F5C 800A035C 030EC021 */ addu $t8, $t8, $t6 +/* 0A0F60 800A0360 8F186CE0 */ lw $t8, 0x6ce0($t8) +/* 0A0F64 800A0364 3C018012 */ lui $at, %hi(D_80126CDC) # $at, 0x8012 +/* 0A0F68 800A0368 AFA20028 */ sw $v0, 0x28($sp) +/* 0A0F6C 800A036C 0C007910 */ jal func_8001E440 +/* 0A0F70 800A0370 AC386CDC */ sw $t8, %lo(D_80126CDC)($at) +/* 0A0F74 800A0374 2401000A */ li $at, 10 +/* 0A0F78 800A0378 1041008B */ beq $v0, $at, .L800A05A8 +/* 0A0F7C 800A037C 3C0F8012 */ lui $t7, %hi(D_80126D0C) # $t7, 0x8012 +/* 0A0F80 800A0380 8DEF6D0C */ lw $t7, %lo(D_80126D0C)($t7) +/* 0A0F84 800A0384 3C048012 */ lui $a0, 0x8012 +/* 0A0F88 800A0388 15E0002F */ bnez $t7, .L800A0448 +/* 0A0F8C 800A038C 00000000 */ nop +/* 0A0F90 800A0390 3C048012 */ lui $a0, %hi(D_80126D10) # $a0, 0x8012 +/* 0A0F94 800A0394 8C846D10 */ lw $a0, %lo(D_80126D10)($a0) +/* 0A0F98 800A0398 0C01A955 */ jal func_8006A554 +/* 0A0F9C 800A039C 00000000 */ nop +/* 0A0FA0 800A03A0 30590004 */ andi $t9, $v0, 4 +/* 0A0FA4 800A03A4 13200059 */ beqz $t9, .L800A050C +/* 0A0FA8 800A03A8 00000000 */ nop +/* 0A0FAC 800A03AC 8FA80028 */ lw $t0, 0x28($sp) +/* 0A0FB0 800A03B0 3C0A8012 */ lui $t2, %hi(D_80126D60) # $t2, 0x8012 +/* 0A0FB4 800A03B4 810901D8 */ lb $t1, 0x1d8($t0) +/* 0A0FB8 800A03B8 00000000 */ nop +/* 0A0FBC 800A03BC 15200053 */ bnez $t1, .L800A050C +/* 0A0FC0 800A03C0 00000000 */ nop +/* 0A0FC4 800A03C4 8D4A6D60 */ lw $t2, %lo(D_80126D60)($t2) +/* 0A0FC8 800A03C8 24010003 */ li $at, 3 +/* 0A0FCC 800A03CC 8142004C */ lb $v0, 0x4c($t2) +/* 0A0FD0 800A03D0 3C0B8012 */ lui $t3, %hi(D_80126D34) # $t3, 0x8012 +/* 0A0FD4 800A03D4 10400003 */ beqz $v0, .L800A03E4 +/* 0A0FD8 800A03D8 00000000 */ nop +/* 0A0FDC 800A03DC 1441004B */ bne $v0, $at, .L800A050C +/* 0A0FE0 800A03E0 00000000 */ nop +.L800A03E4: +/* 0A0FE4 800A03E4 916B6D34 */ lbu $t3, %lo(D_80126D34)($t3) +/* 0A0FE8 800A03E8 3C02800E */ lui $v0, %hi(D_800E2790) # $v0, 0x800e +/* 0A0FEC 800A03EC 11600047 */ beqz $t3, .L800A050C +/* 0A0FF0 800A03F0 24422790 */ addiu $v0, %lo(D_800E2790) # addiu $v0, $v0, 0x2790 +/* 0A0FF4 800A03F4 904C0000 */ lbu $t4, ($v0) +/* 0A0FF8 800A03F8 240D0001 */ li $t5, 1 +/* 0A0FFC 800A03FC 01AC7023 */ subu $t6, $t5, $t4 +/* 0A1000 800A0400 31C400FF */ andi $a0, $t6, 0xff +/* 0A1004 800A0404 2484014F */ addiu $a0, $a0, 0x14f +/* 0A1008 800A0408 3098FFFF */ andi $t8, $a0, 0xffff +/* 0A100C 800A040C A04E0000 */ sb $t6, ($v0) +/* 0A1010 800A0410 03002025 */ move $a0, $t8 +/* 0A1014 800A0414 0C000741 */ jal func_80001D04 +/* 0A1018 800A0418 00002825 */ move $a1, $zero +/* 0A101C 800A041C 3C02800E */ lui $v0, %hi(D_800E2790) # $v0, 0x800e +/* 0A1020 800A0420 24422790 */ addiu $v0, %lo(D_800E2790) # addiu $v0, $v0, 0x2790 +/* 0A1024 800A0424 904F0000 */ lbu $t7, ($v0) +/* 0A1028 800A0428 24190078 */ li $t9, 120 +/* 0A102C 800A042C 11E00004 */ beqz $t7, .L800A0440 +/* 0A1030 800A0430 3C01800E */ lui $at, 0x800e +/* 0A1034 800A0434 3C01800E */ lui $at, %hi(D_800E27B8) # $at, 0x800e +/* 0A1038 800A0438 10000034 */ b .L800A050C +/* 0A103C 800A043C A03927B8 */ sb $t9, %lo(D_800E27B8)($at) +.L800A0440: +/* 0A1040 800A0440 10000032 */ b .L800A050C +/* 0A1044 800A0444 A02027B8 */ sb $zero, %lo(D_800E27B8)($at) +.L800A0448: +/* 0A1048 800A0448 8C846D10 */ lw $a0, 0x6d10($a0) +/* 0A104C 800A044C 0C01A955 */ jal func_8006A554 +/* 0A1050 800A0450 00000000 */ nop +/* 0A1054 800A0454 30480004 */ andi $t0, $v0, 4 +/* 0A1058 800A0458 1100002C */ beqz $t0, .L800A050C +/* 0A105C 800A045C 00000000 */ nop +/* 0A1060 800A0460 8FA90028 */ lw $t1, 0x28($sp) +/* 0A1064 800A0464 3C0B8012 */ lui $t3, %hi(D_80126D60) # $t3, 0x8012 +/* 0A1068 800A0468 812A01D8 */ lb $t2, 0x1d8($t1) +/* 0A106C 800A046C 00000000 */ nop +/* 0A1070 800A0470 15400026 */ bnez $t2, .L800A050C +/* 0A1074 800A0474 00000000 */ nop +/* 0A1078 800A0478 8D6B6D60 */ lw $t3, %lo(D_80126D60)($t3) +/* 0A107C 800A047C 3C0E8012 */ lui $t6, %hi(D_80126D34) # $t6, 0x8012 +/* 0A1080 800A0480 816D004C */ lb $t5, 0x4c($t3) +/* 0A1084 800A0484 00000000 */ nop +/* 0A1088 800A0488 31AC0040 */ andi $t4, $t5, 0x40 +/* 0A108C 800A048C 1580001F */ bnez $t4, .L800A050C +/* 0A1090 800A0490 00000000 */ nop +/* 0A1094 800A0494 91CE6D34 */ lbu $t6, %lo(D_80126D34)($t6) +/* 0A1098 800A0498 3C188012 */ lui $t8, %hi(D_80126D0C) # $t8, 0x8012 +/* 0A109C 800A049C 11C0001B */ beqz $t6, .L800A050C +/* 0A10A0 800A04A0 3C19800E */ lui $t9, %hi(D_800E2794) # $t9, 0x800e +/* 0A10A4 800A04A4 8F186D0C */ lw $t8, %lo(D_80126D0C)($t8) +/* 0A10A8 800A04A8 85280000 */ lh $t0, ($t1) +/* 0A10AC 800A04AC 27392794 */ addiu $t9, %lo(D_800E2794) # addiu $t9, $t9, 0x2794 +/* 0A10B0 800A04B0 00187880 */ sll $t7, $t8, 2 +/* 0A10B4 800A04B4 01F91821 */ addu $v1, $t7, $t9 +/* 0A10B8 800A04B8 00681021 */ addu $v0, $v1, $t0 +/* 0A10BC 800A04BC 90440000 */ lbu $a0, ($v0) +/* 0A10C0 800A04C0 00000000 */ nop +/* 0A10C4 800A04C4 28810003 */ slti $at, $a0, 3 +/* 0A10C8 800A04C8 10200003 */ beqz $at, .L800A04D8 +/* 0A10CC 800A04CC 248A0001 */ addiu $t2, $a0, 1 +/* 0A10D0 800A04D0 10000002 */ b .L800A04DC +/* 0A10D4 800A04D4 A04A0000 */ sb $t2, ($v0) +.L800A04D8: +/* 0A10D8 800A04D8 A0400000 */ sb $zero, ($v0) +.L800A04DC: +/* 0A10DC 800A04DC 8FAB0028 */ lw $t3, 0x28($sp) +/* 0A10E0 800A04E0 240F0150 */ li $t7, 336 +/* 0A10E4 800A04E4 856D0000 */ lh $t5, ($t3) +/* 0A10E8 800A04E8 00002825 */ move $a1, $zero +/* 0A10EC 800A04EC 006D6021 */ addu $t4, $v1, $t5 +/* 0A10F0 800A04F0 918E0000 */ lbu $t6, ($t4) +/* 0A10F4 800A04F4 00000000 */ nop +/* 0A10F8 800A04F8 2DD80001 */ sltiu $t8, $t6, 1 +/* 0A10FC 800A04FC 01F82023 */ subu $a0, $t7, $t8 +/* 0A1100 800A0500 3099FFFF */ andi $t9, $a0, 0xffff +/* 0A1104 800A0504 0C000741 */ jal func_80001D04 +/* 0A1108 800A0508 03202025 */ move $a0, $t9 +.L800A050C: +/* 0A110C 800A050C 3C048012 */ lui $a0, %hi(D_80126D10) # $a0, 0x8012 +/* 0A1110 800A0510 8C846D10 */ lw $a0, %lo(D_80126D10)($a0) +/* 0A1114 800A0514 0C01A955 */ jal func_8006A554 +/* 0A1118 800A0518 00000000 */ nop +/* 0A111C 800A051C 3C068012 */ lui $a2, %hi(D_80126CD0) # $a2, 0x8012 +/* 0A1120 800A0520 30490001 */ andi $t1, $v0, 1 +/* 0A1124 800A0524 11200020 */ beqz $t1, .L800A05A8 +/* 0A1128 800A0528 24C66CD0 */ addiu $a2, %lo(D_80126CD0) # addiu $a2, $a2, 0x6cd0 +/* 0A112C 800A052C 8FA80028 */ lw $t0, 0x28($sp) +/* 0A1130 800A0530 3C0B8012 */ lui $t3, %hi(D_80126D34) # $t3, 0x8012 +/* 0A1134 800A0534 810A01D8 */ lb $t2, 0x1d8($t0) +/* 0A1138 800A0538 00000000 */ nop +/* 0A113C 800A053C 1540001A */ bnez $t2, .L800A05A8 +/* 0A1140 800A0540 00000000 */ nop +/* 0A1144 800A0544 916B6D34 */ lbu $t3, %lo(D_80126D34)($t3) +/* 0A1148 800A0548 00000000 */ nop +/* 0A114C 800A054C 11600016 */ beqz $t3, .L800A05A8 +/* 0A1150 800A0550 00000000 */ nop +/* 0A1154 800A0554 80CD0000 */ lb $t5, ($a2) +/* 0A1158 800A0558 3C0C8012 */ lui $t4, %hi(D_80126D0C) # $t4, 0x8012 +/* 0A115C 800A055C 15A00012 */ bnez $t5, .L800A05A8 +/* 0A1160 800A0560 3C0E800E */ lui $t6, %hi(D_800E27A4) # $t6, 0x800e +/* 0A1164 800A0564 8D8C6D0C */ lw $t4, %lo(D_80126D0C)($t4) +/* 0A1168 800A0568 25CE27A4 */ addiu $t6, %lo(D_800E27A4) # addiu $t6, $t6, 0x27a4 +/* 0A116C 800A056C 018E1021 */ addu $v0, $t4, $t6 +/* 0A1170 800A0570 804F0000 */ lb $t7, ($v0) +/* 0A1174 800A0574 24180001 */ li $t8, 1 +/* 0A1178 800A0578 030FC823 */ subu $t9, $t8, $t7 +/* 0A117C 800A057C A0590000 */ sb $t9, ($v0) +/* 0A1180 800A0580 80490000 */ lb $t1, ($v0) +/* 0A1184 800A0584 00002825 */ move $a1, $zero +/* 0A1188 800A0588 15200005 */ bnez $t1, .L800A05A0 +/* 0A118C 800A058C 2404005E */ li $a0, 94 +/* 0A1190 800A0590 0C000741 */ jal func_80001D04 +/* 0A1194 800A0594 2404005D */ li $a0, 93 +/* 0A1198 800A0598 10000003 */ b .L800A05A8 +/* 0A119C 800A059C 00000000 */ nop +.L800A05A0: +/* 0A11A0 800A05A0 0C000741 */ jal func_80001D04 +/* 0A11A4 800A05A4 00002825 */ move $a1, $zero +.L800A05A8: +/* 0A11A8 800A05A8 3C088012 */ lui $t0, %hi(D_80126CD4) # $t0, 0x8012 +/* 0A11AC 800A05AC 81086CD4 */ lb $t0, %lo(D_80126CD4)($t0) +/* 0A11B0 800A05B0 00000000 */ nop +/* 0A11B4 800A05B4 15000024 */ bnez $t0, .L800A0648 +/* 0A11B8 800A05B8 3C0A8012 */ lui $t2, %hi(D_80126D60) # $t2, 0x8012 +/* 0A11BC 800A05BC 8D4A6D60 */ lw $t2, %lo(D_80126D60)($t2) +/* 0A11C0 800A05C0 2403007F */ li $v1, 127 +/* 0A11C4 800A05C4 8142004C */ lb $v0, 0x4c($t2) +/* 0A11C8 800A05C8 00000000 */ nop +/* 0A11CC 800A05CC 304B0040 */ andi $t3, $v0, 0x40 +/* 0A11D0 800A05D0 15600006 */ bnez $t3, .L800A05EC +/* 0A11D4 800A05D4 00000000 */ nop +/* 0A11D8 800A05D8 10400004 */ beqz $v0, .L800A05EC +/* 0A11DC 800A05DC 24010003 */ li $at, 3 +/* 0A11E0 800A05E0 10410002 */ beq $v0, $at, .L800A05EC +/* 0A11E4 800A05E4 24010008 */ li $at, 8 +/* 0A11E8 800A05E8 1441000D */ bne $v0, $at, .L800A0620 +.L800A05EC: +/* 0A11EC 800A05EC 3C02800E */ lui $v0, %hi(D_800E2770) # $v0, 0x800e +/* 0A11F0 800A05F0 24422770 */ addiu $v0, %lo(D_800E2770) # addiu $v0, $v0, 0x2770 +/* 0A11F4 800A05F4 A0430002 */ sb $v1, 2($v0) +/* 0A11F8 800A05F8 0C000611 */ jal func_80001844 +/* 0A11FC 800A05FC A0430012 */ sb $v1, 0x12($v0) +/* 0A1200 800A0600 0C0004BA */ jal func_800012E8 +/* 0A1204 800A0604 00000000 */ nop +/* 0A1208 800A0608 0C0002CD */ jal func_80000B34 +/* 0A120C 800A060C 2404001E */ li $a0, 30 +/* 0A1210 800A0610 0C000C63 */ jal func_8000318C +/* 0A1214 800A0614 2404000C */ li $a0, 12 +/* 0A1218 800A0618 10000005 */ b .L800A0630 +/* 0A121C 800A061C 00000000 */ nop +.L800A0620: +/* 0A1220 800A0620 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0A1224 800A0624 44816000 */ mtc1 $at, $f12 +/* 0A1228 800A0628 0C01AF44 */ jal func_8006BD10 +/* 0A122C 800A062C 00000000 */ nop +.L800A0630: +/* 0A1230 800A0630 3C028012 */ lui $v0, %hi(D_80126CD4) # $v0, 0x8012 +/* 0A1234 800A0634 24426CD4 */ addiu $v0, %lo(D_80126CD4) # addiu $v0, $v0, 0x6cd4 +/* 0A1238 800A0638 804D0000 */ lb $t5, ($v0) +/* 0A123C 800A063C 00000000 */ nop +/* 0A1240 800A0640 25AC0001 */ addiu $t4, $t5, 1 +/* 0A1244 800A0644 A04C0000 */ sb $t4, ($v0) +.L800A0648: +/* 0A1248 800A0648 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A124C 800A064C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A1250 800A0650 8C820000 */ lw $v0, ($a0) +/* 0A1254 800A0654 3C18E700 */ lui $t8, 0xe700 +/* 0A1258 800A0658 244E0008 */ addiu $t6, $v0, 8 +/* 0A125C 800A065C AC8E0000 */ sw $t6, ($a0) +/* 0A1260 800A0660 AC400004 */ sw $zero, 4($v0) +/* 0A1264 800A0664 0C01E037 */ jal func_800780DC +/* 0A1268 800A0668 AC580000 */ sw $t8, ($v0) +/* 0A126C 800A066C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A1270 800A0670 0C01E015 */ jal func_80078054 +/* 0A1274 800A0674 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A1278 800A0678 0C01EB8A */ jal func_8007AE28 +/* 0A127C 800A067C 2404FFFF */ li $a0, -1 +/* 0A1280 800A0680 0C01EB83 */ jal func_8007AE0C +/* 0A1284 800A0684 24040002 */ li $a0, 2 +/* 0A1288 800A0688 0C01EFC7 */ jal func_8007BF1C +/* 0A128C 800A068C 00002025 */ move $a0, $zero +/* 0A1290 800A0690 0C019944 */ jal func_80066510 +/* 0A1294 800A0694 00000000 */ nop +/* 0A1298 800A0698 14400066 */ bnez $v0, .L800A0834 +/* 0A129C 800A069C 3C0F8012 */ lui $t7, %hi(D_80126D34) # $t7, 0x8012 +/* 0A12A0 800A06A0 91EF6D34 */ lbu $t7, %lo(D_80126D34)($t7) +/* 0A12A4 800A06A4 8FB90028 */ lw $t9, 0x28($sp) +/* 0A12A8 800A06A8 15E00062 */ bnez $t7, .L800A0834 +/* 0A12AC 800A06AC 00000000 */ nop +/* 0A12B0 800A06B0 87290000 */ lh $t1, ($t9) +/* 0A12B4 800A06B4 3C088012 */ lui $t0, %hi(D_80126D35) # $t0, 0x8012 +/* 0A12B8 800A06B8 1520005E */ bnez $t1, .L800A0834 +/* 0A12BC 800A06BC 00000000 */ nop +/* 0A12C0 800A06C0 91086D35 */ lbu $t0, %lo(D_80126D35)($t0) +/* 0A12C4 800A06C4 3C028012 */ lui $v0, %hi(D_80126D2C) # $v0, 0x8012 +/* 0A12C8 800A06C8 11000039 */ beqz $t0, .L800A07B0 +/* 0A12CC 800A06CC 3C098012 */ lui $t1, %hi(D_80126CD4) # $t1, 0x8012 +/* 0A12D0 800A06D0 24426D2C */ addiu $v0, %lo(D_80126D2C) # addiu $v0, $v0, 0x6d2c +/* 0A12D4 800A06D4 84440000 */ lh $a0, ($v0) +/* 0A12D8 800A06D8 0C01C1F1 */ jal func_800707C4 +/* 0A12DC 800A06DC 00000000 */ nop +/* 0A12E0 800A06E0 3C048012 */ lui $a0, %hi(D_80126D30) # $a0, 0x8012 +/* 0A12E4 800A06E4 24846D30 */ addiu $a0, %lo(D_80126D30) # addiu $a0, $a0, 0x6d30 +/* 0A12E8 800A06E8 C4820000 */ lwc1 $f2, ($a0) +/* 0A12EC 800A06EC 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 0A12F0 800A06F0 46020102 */ mul.s $f4, $f0, $f2 +/* 0A12F4 800A06F4 44813000 */ mtc1 $at, $f6 +/* 0A12F8 800A06F8 3C028012 */ lui $v0, %hi(D_80126D2C) # $v0, 0x8012 +/* 0A12FC 800A06FC 8FAC0040 */ lw $t4, 0x40($sp) +/* 0A1300 800A0700 46062202 */ mul.s $f8, $f4, $f6 +/* 0A1304 800A0704 24426D2C */ addiu $v0, %lo(D_80126D2C) # addiu $v0, $v0, 0x6d2c +/* 0A1308 800A0708 000C72C0 */ sll $t6, $t4, 0xb +/* 0A130C 800A070C 444AF800 */ cfc1 $t2, $31 +/* 0A1310 800A0710 00000000 */ nop +/* 0A1314 800A0714 35410003 */ ori $at, $t2, 3 +/* 0A1318 800A0718 38210002 */ xori $at, $at, 2 +/* 0A131C 800A071C 44C1F800 */ ctc1 $at, $31 +/* 0A1320 800A0720 3C018012 */ lui $at, %hi(D_80126D28) # $at, 0x8012 +/* 0A1324 800A0724 460042A4 */ cvt.w.s $f10, $f8 +/* 0A1328 800A0728 440B5000 */ mfc1 $t3, $f10 +/* 0A132C 800A072C 44CAF800 */ ctc1 $t2, $31 +/* 0A1330 800A0730 AC2B6D28 */ sw $t3, %lo(D_80126D28)($at) +/* 0A1334 800A0734 944D0000 */ lhu $t5, ($v0) +/* 0A1338 800A0738 34018000 */ li $at, 32768 +/* 0A133C 800A073C 01AEC021 */ addu $t8, $t5, $t6 +/* 0A1340 800A0740 3303FFFF */ andi $v1, $t8, 0xffff +/* 0A1344 800A0744 0061082A */ slt $at, $v1, $at +/* 0A1348 800A0748 1420003A */ bnez $at, .L800A0834 +/* 0A134C 800A074C A4580000 */ sh $t8, ($v0) +/* 0A1350 800A0750 24018000 */ li $at, -32768 +/* 0A1354 800A0754 00617821 */ addu $t7, $v1, $at +/* 0A1358 800A0758 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 0A135C 800A075C 44818000 */ mtc1 $at, $f16 +/* 0A1360 800A0760 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 +/* 0A1364 800A0764 46101483 */ div.s $f18, $f2, $f16 +/* 0A1368 800A0768 44812800 */ mtc1 $at, $f5 +/* 0A136C 800A076C 44802000 */ mtc1 $zero, $f4 +/* 0A1370 800A0770 3C038012 */ lui $v1, %hi(D_80126D24) # $v1, 0x8012 +/* 0A1374 800A0774 A44F0000 */ sh $t7, ($v0) +/* 0A1378 800A0778 24636D24 */ addiu $v1, %lo(D_80126D24) # addiu $v1, $v1, 0x6d24 +/* 0A137C 800A077C 3C018012 */ lui $at, %hi(D_80126D34) # $at, 0x8012 +/* 0A1380 800A0780 24190001 */ li $t9, 1 +/* 0A1384 800A0784 E4920000 */ swc1 $f18, ($a0) +/* 0A1388 800A0788 C4860000 */ lwc1 $f6, ($a0) +/* 0A138C 800A078C 00000000 */ nop +/* 0A1390 800A0790 46003221 */ cvt.d.s $f8, $f6 +/* 0A1394 800A0794 4624403E */ c.le.d $f8, $f4 +/* 0A1398 800A0798 00000000 */ nop +/* 0A139C 800A079C 45000025 */ bc1f .L800A0834 +/* 0A13A0 800A07A0 00000000 */ nop +/* 0A13A4 800A07A4 A0396D34 */ sb $t9, %lo(D_80126D34)($at) +/* 0A13A8 800A07A8 10000022 */ b .L800A0834 +/* 0A13AC 800A07AC AC600000 */ sw $zero, ($v1) +.L800A07B0: +/* 0A13B0 800A07B0 81296CD4 */ lb $t1, %lo(D_80126CD4)($t1) +/* 0A13B4 800A07B4 24010001 */ li $at, 1 +/* 0A13B8 800A07B8 15210008 */ bne $t1, $at, .L800A07DC +/* 0A13BC 800A07BC 24040016 */ li $a0, 22 +/* 0A13C0 800A07C0 0C000741 */ jal func_80001D04 +/* 0A13C4 800A07C4 00002825 */ move $a1, $zero +/* 0A13C8 800A07C8 3C088012 */ lui $t0, %hi(D_80126CD4) # $t0, 0x8012 +/* 0A13CC 800A07CC 81086CD4 */ lb $t0, %lo(D_80126CD4)($t0) +/* 0A13D0 800A07D0 3C018012 */ lui $at, %hi(D_80126CD4) # $at, 0x8012 +/* 0A13D4 800A07D4 250A0001 */ addiu $t2, $t0, 1 +/* 0A13D8 800A07D8 A02A6CD4 */ sb $t2, %lo(D_80126CD4)($at) +.L800A07DC: +/* 0A13DC 800A07DC 8FAC0040 */ lw $t4, 0x40($sp) +/* 0A13E0 800A07E0 3C038012 */ lui $v1, %hi(D_80126D24) # $v1, 0x8012 +/* 0A13E4 800A07E4 000C6880 */ sll $t5, $t4, 2 +/* 0A13E8 800A07E8 24636D24 */ addiu $v1, %lo(D_80126D24) # addiu $v1, $v1, 0x6d24 +/* 0A13EC 800A07EC 01AC6823 */ subu $t5, $t5, $t4 +/* 0A13F0 800A07F0 8C6B0000 */ lw $t3, ($v1) +/* 0A13F4 800A07F4 000D6880 */ sll $t5, $t5, 2 +/* 0A13F8 800A07F8 01AC6821 */ addu $t5, $t5, $t4 +/* 0A13FC 800A07FC 016D1023 */ subu $v0, $t3, $t5 +/* 0A1400 800A0800 04410003 */ bgez $v0, .L800A0810 +/* 0A1404 800A0804 AC620000 */ sw $v0, ($v1) +/* 0A1408 800A0808 AC600000 */ sw $zero, ($v1) +/* 0A140C 800A080C 00001025 */ move $v0, $zero +.L800A0810: +/* 0A1410 800A0810 14400008 */ bnez $v0, .L800A0834 +/* 0A1414 800A0814 24180001 */ li $t8, 1 +/* 0A1418 800A0818 3C018012 */ lui $at, %hi(D_80126D35) # $at, 0x8012 +/* 0A141C 800A081C A0386D35 */ sb $t8, %lo(D_80126D35)($at) +/* 0A1420 800A0820 24040017 */ li $a0, 23 +/* 0A1424 800A0824 0C000741 */ jal func_80001D04 +/* 0A1428 800A0828 00002825 */ move $a1, $zero +/* 0A142C 800A082C 3C018012 */ lui $at, %hi(D_80126D28) # $at, 0x8012 +/* 0A1430 800A0830 AC206D28 */ sw $zero, %lo(D_80126D28)($at) +.L800A0834: +/* 0A1434 800A0834 3C058012 */ lui $a1, %hi(D_80126CFC) # $a1, 0x8012 +/* 0A1438 800A0838 24A56CFC */ addiu $a1, %lo(D_80126CFC) # addiu $a1, $a1, 0x6cfc +/* 0A143C 800A083C 8CA20000 */ lw $v0, ($a1) +/* 0A1440 800A0840 3C19FA00 */ lui $t9, 0xfa00 +/* 0A1444 800A0844 244F0008 */ addiu $t7, $v0, 8 +/* 0A1448 800A0848 ACAF0000 */ sw $t7, ($a1) +/* 0A144C 800A084C 2409FFFF */ li $t1, -1 +/* 0A1450 800A0850 AC490004 */ sw $t1, 4($v0) +/* 0A1454 800A0854 AC590000 */ sw $t9, ($v0) +/* 0A1458 800A0858 8FA4003C */ lw $a0, 0x3c($sp) +/* 0A145C 800A085C 0C029E98 */ jal func_800A7A60 +/* 0A1460 800A0860 00000000 */ nop +/* 0A1464 800A0864 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A1468 800A0868 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A146C 800A086C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A1470 800A0870 0C019FCB */ jal func_80067F2C +/* 0A1474 800A0874 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A1478 800A0878 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A147C 800A087C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A1480 800A0880 8C820000 */ lw $v0, ($a0) +/* 0A1484 800A0884 3C0AFB00 */ lui $t2, 0xfb00 +/* 0A1488 800A0888 24480008 */ addiu $t0, $v0, 8 +/* 0A148C 800A088C AC880000 */ sw $t0, ($a0) +/* 0A1490 800A0890 240CFF00 */ li $t4, -256 +/* 0A1494 800A0894 AC4C0004 */ sw $t4, 4($v0) +/* 0A1498 800A0898 0C0044E7 */ jal func_8001139C +/* 0A149C 800A089C AC4A0000 */ sw $t2, ($v0) +/* 0A14A0 800A08A0 00022043 */ sra $a0, $v0, 1 +/* 0A14A4 800A08A4 0C003936 */ jal func_8000E4D8 +/* 0A14A8 800A08A8 AFA4002C */ sw $a0, 0x2c($sp) +/* 0A14AC 800A08AC 8FA4002C */ lw $a0, 0x2c($sp) +/* 0A14B0 800A08B0 10400007 */ beqz $v0, .L800A08D0 +/* 0A14B4 800A08B4 00000000 */ nop +/* 0A14B8 800A08B8 8FA5003C */ lw $a1, 0x3c($sp) +/* 0A14BC 800A08BC 8FA60040 */ lw $a2, 0x40($sp) +/* 0A14C0 800A08C0 0C0289DF */ jal func_800A277C +/* 0A14C4 800A08C4 00000000 */ nop +/* 0A14C8 800A08C8 1000004F */ b .L800A0A08 +/* 0A14CC 800A08CC 8FAB0028 */ lw $t3, 0x28($sp) +.L800A08D0: +/* 0A14D0 800A08D0 0C007910 */ jal func_8001E440 +/* 0A14D4 800A08D4 AFA4002C */ sw $a0, 0x2c($sp) +/* 0A14D8 800A08D8 8FA4002C */ lw $a0, 0x2c($sp) +/* 0A14DC 800A08DC 2401000A */ li $at, 10 +/* 0A14E0 800A08E0 1441000A */ bne $v0, $at, .L800A090C +/* 0A14E4 800A08E4 00000000 */ nop +/* 0A14E8 800A08E8 0C01A142 */ jal func_80068508 +/* 0A14EC 800A08EC 24040001 */ li $a0, 1 +/* 0A14F0 800A08F0 8FA40028 */ lw $a0, 0x28($sp) +/* 0A14F4 800A08F4 0C029C63 */ jal func_800A718C +/* 0A14F8 800A08F8 00000000 */ nop +/* 0A14FC 800A08FC 0C01A142 */ jal func_80068508 +/* 0A1500 800A0900 00002025 */ move $a0, $zero +/* 0A1504 800A0904 10000040 */ b .L800A0A08 +/* 0A1508 800A0908 8FAB0028 */ lw $t3, 0x28($sp) +.L800A090C: +/* 0A150C 800A090C 0C01AF66 */ jal func_8006BD98 +/* 0A1510 800A0910 AFA4002C */ sw $a0, 0x2c($sp) +/* 0A1514 800A0914 8FA4002C */ lw $a0, 0x2c($sp) +/* 0A1518 800A0918 1040000D */ beqz $v0, .L800A0950 +/* 0A151C 800A091C 24010003 */ li $at, 3 +/* 0A1520 800A0920 1041000B */ beq $v0, $at, .L800A0950 +/* 0A1524 800A0924 24010008 */ li $at, 8 +/* 0A1528 800A0928 1041001A */ beq $v0, $at, .L800A0994 +/* 0A152C 800A092C 24010040 */ li $at, 64 +/* 0A1530 800A0930 10410024 */ beq $v0, $at, .L800A09C4 +/* 0A1534 800A0934 24010041 */ li $at, 65 +/* 0A1538 800A0938 1041001C */ beq $v0, $at, .L800A09AC +/* 0A153C 800A093C 24010042 */ li $at, 66 +/* 0A1540 800A0940 10410027 */ beq $v0, $at, .L800A09E0 +/* 0A1544 800A0944 8FA5003C */ lw $a1, 0x3c($sp) +/* 0A1548 800A0948 1000002B */ b .L800A09F8 +/* 0A154C 800A094C 8FA4003C */ lw $a0, 0x3c($sp) +.L800A0950: +/* 0A1550 800A0950 0C008D07 */ jal func_8002341C +/* 0A1554 800A0954 AFA4002C */ sw $a0, 0x2c($sp) +/* 0A1558 800A0958 8FA4002C */ lw $a0, 0x2c($sp) +/* 0A155C 800A095C 10400008 */ beqz $v0, .L800A0980 +/* 0A1560 800A0960 8FA5003C */ lw $a1, 0x3c($sp) +/* 0A1564 800A0964 8FA5003C */ lw $a1, 0x3c($sp) +/* 0A1568 800A0968 8FA60040 */ lw $a2, 0x40($sp) +/* 0A156C 800A096C 0C02898F */ jal func_800A263C +/* 0A1570 800A0970 00000000 */ nop +/* 0A1574 800A0974 10000024 */ b .L800A0A08 +/* 0A1578 800A0978 8FAB0028 */ lw $t3, 0x28($sp) +/* 0A157C 800A097C 8FA5003C */ lw $a1, 0x3c($sp) +.L800A0980: +/* 0A1580 800A0980 8FA60040 */ lw $a2, 0x40($sp) +/* 0A1584 800A0984 0C028370 */ jal func_800A0DC0 +/* 0A1588 800A0988 00000000 */ nop +/* 0A158C 800A098C 1000001E */ b .L800A0A08 +/* 0A1590 800A0990 8FAB0028 */ lw $t3, 0x28($sp) +.L800A0994: +/* 0A1594 800A0994 8FA5003C */ lw $a1, 0x3c($sp) +/* 0A1598 800A0998 8FA60040 */ lw $a2, 0x40($sp) +/* 0A159C 800A099C 0C028963 */ jal func_800A258C +/* 0A15A0 800A09A0 00000000 */ nop +/* 0A15A4 800A09A4 10000018 */ b .L800A0A08 +/* 0A15A8 800A09A8 8FAB0028 */ lw $t3, 0x28($sp) +.L800A09AC: +/* 0A15AC 800A09AC 8FA5003C */ lw $a1, 0x3c($sp) +/* 0A15B0 800A09B0 8FA60040 */ lw $a2, 0x40($sp) +/* 0A15B4 800A09B4 0C028492 */ jal func_800A1248 +/* 0A15B8 800A09B8 00000000 */ nop +/* 0A15BC 800A09BC 10000012 */ b .L800A0A08 +/* 0A15C0 800A09C0 8FAB0028 */ lw $t3, 0x28($sp) +.L800A09C4: +/* 0A15C4 800A09C4 8FA5003C */ lw $a1, 0x3c($sp) +/* 0A15C8 800A09C8 8FA60040 */ lw $a2, 0x40($sp) +/* 0A15CC 800A09CC 0C028701 */ jal func_800A1C04 +/* 0A15D0 800A09D0 00000000 */ nop +/* 0A15D4 800A09D4 1000000C */ b .L800A0A08 +/* 0A15D8 800A09D8 8FAB0028 */ lw $t3, 0x28($sp) +/* 0A15DC 800A09DC 8FA5003C */ lw $a1, 0x3c($sp) +.L800A09E0: +/* 0A15E0 800A09E0 8FA60040 */ lw $a2, 0x40($sp) +/* 0A15E4 800A09E4 0C02850A */ jal func_800A1428 +/* 0A15E8 800A09E8 00000000 */ nop +/* 0A15EC 800A09EC 10000006 */ b .L800A0A08 +/* 0A15F0 800A09F0 8FAB0028 */ lw $t3, 0x28($sp) +/* 0A15F4 800A09F4 8FA4003C */ lw $a0, 0x3c($sp) +.L800A09F8: +/* 0A15F8 800A09F8 8FA50040 */ lw $a1, 0x40($sp) +/* 0A15FC 800A09FC 0C0289B2 */ jal func_800A26C8 +/* 0A1600 800A0A00 00000000 */ nop +/* 0A1604 800A0A04 8FAB0028 */ lw $t3, 0x28($sp) +.L800A0A08: +/* 0A1608 800A0A08 24010001 */ li $at, 1 +/* 0A160C 800A0A0C 816D01D8 */ lb $t5, 0x1d8($t3) +/* 0A1610 800A0A10 00000000 */ nop +/* 0A1614 800A0A14 15A1002C */ bne $t5, $at, .L800A0AC8 +/* 0A1618 800A0A18 00000000 */ nop +/* 0A161C 800A0A1C 0C01A142 */ jal func_80068508 +/* 0A1620 800A0A20 24040001 */ li $a0, 1 +/* 0A1624 800A0A24 0C003936 */ jal func_8000E4D8 +/* 0A1628 800A0A28 00000000 */ nop +/* 0A162C 800A0A2C 10400007 */ beqz $v0, .L800A0A4C +/* 0A1630 800A0A30 00000000 */ nop +/* 0A1634 800A0A34 8FA40028 */ lw $a0, 0x28($sp) +/* 0A1638 800A0A38 8FA50040 */ lw $a1, 0x40($sp) +/* 0A163C 800A0A3C 0C029B8C */ jal func_800A6E30 +/* 0A1640 800A0A40 00000000 */ nop +/* 0A1644 800A0A44 1000001E */ b .L800A0AC0 +/* 0A1648 800A0A48 00000000 */ nop +.L800A0A4C: +/* 0A164C 800A0A4C 0C019884 */ jal func_80066210 +/* 0A1650 800A0A50 00000000 */ nop +/* 0A1654 800A0A54 14400017 */ bnez $v0, .L800A0AB4 +/* 0A1658 800A0A58 8FA40028 */ lw $a0, 0x28($sp) +/* 0A165C 800A0A5C 8FAE0028 */ lw $t6, 0x28($sp) +/* 0A1660 800A0A60 24010001 */ li $at, 1 +/* 0A1664 800A0A64 85D801AC */ lh $t8, 0x1ac($t6) +/* 0A1668 800A0A68 00000000 */ nop +/* 0A166C 800A0A6C 17010011 */ bne $t8, $at, .L800A0AB4 +/* 0A1670 800A0A70 8FA40028 */ lw $a0, 0x28($sp) +/* 0A1674 800A0A74 0C027B20 */ jal func_8009EC80 +/* 0A1678 800A0A78 00000000 */ nop +/* 0A167C 800A0A7C 10400007 */ beqz $v0, .L800A0A9C +/* 0A1680 800A0A80 8FA40028 */ lw $a0, 0x28($sp) +/* 0A1684 800A0A84 0C01AF66 */ jal func_8006BD98 +/* 0A1688 800A0A88 00000000 */ nop +/* 0A168C 800A0A8C 24010008 */ li $at, 8 +/* 0A1690 800A0A90 14410008 */ bne $v0, $at, .L800A0AB4 +/* 0A1694 800A0A94 8FA40028 */ lw $a0, 0x28($sp) +/* 0A1698 800A0A98 8FA40028 */ lw $a0, 0x28($sp) +.L800A0A9C: +/* 0A169C 800A0A9C 8FA50040 */ lw $a1, 0x40($sp) +/* 0A16A0 800A0AA0 0C02925F */ jal func_800A497C +/* 0A16A4 800A0AA4 00000000 */ nop +/* 0A16A8 800A0AA8 10000005 */ b .L800A0AC0 +/* 0A16AC 800A0AAC 00000000 */ nop +/* 0A16B0 800A0AB0 8FA40028 */ lw $a0, 0x28($sp) +.L800A0AB4: +/* 0A16B4 800A0AB4 8FA50040 */ lw $a1, 0x40($sp) +/* 0A16B8 800A0AB8 0C029895 */ jal func_800A6254 +/* 0A16BC 800A0ABC 00000000 */ nop +.L800A0AC0: +/* 0A16C0 800A0AC0 0C01A142 */ jal func_80068508 +/* 0A16C4 800A0AC4 00002025 */ move $a0, $zero +.L800A0AC8: +/* 0A16C8 800A0AC8 3C018012 */ lui $at, %hi(D_80126CD1) # $at, 0x8012 +/* 0A16CC 800A0ACC A0206CD1 */ sb $zero, %lo(D_80126CD1)($at) +/* 0A16D0 800A0AD0 0C01EFC7 */ jal func_8007BF1C +/* 0A16D4 800A0AD4 24040001 */ li $a0, 1 +/* 0A16D8 800A0AD8 3C028012 */ lui $v0, %hi(D_80127180) # $v0, 0x8012 +/* 0A16DC 800A0ADC 8C427180 */ lw $v0, %lo(D_80127180)($v0) +/* 0A16E0 800A0AE0 3C058012 */ lui $a1, %hi(D_80126D80) # $a1, 0x8012 +/* 0A16E4 800A0AE4 10400011 */ beqz $v0, .L800A0B2C +/* 0A16E8 800A0AE8 24A56D80 */ addiu $a1, %lo(D_80126D80) # addiu $a1, $a1, 0x6d80 +/* 0A16EC 800A0AEC 000278C0 */ sll $t7, $v0, 3 +/* 0A16F0 800A0AF0 00AFC821 */ addu $t9, $a1, $t7 +/* 0A16F4 800A0AF4 AF200000 */ sw $zero, ($t9) +/* 0A16F8 800A0AF8 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A16FC 800A0AFC 240900FF */ li $t1, 255 +/* 0A1700 800A0B00 240800FF */ li $t0, 255 +/* 0A1704 800A0B04 240A00FF */ li $t2, 255 +/* 0A1708 800A0B08 240C00FF */ li $t4, 255 +/* 0A170C 800A0B0C AFAC001C */ sw $t4, 0x1c($sp) +/* 0A1710 800A0B10 AFAA0018 */ sw $t2, 0x18($sp) +/* 0A1714 800A0B14 AFA80014 */ sw $t0, 0x14($sp) +/* 0A1718 800A0B18 AFA90010 */ sw $t1, 0x10($sp) +/* 0A171C 800A0B1C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A1720 800A0B20 00003025 */ move $a2, $zero +/* 0A1724 800A0B24 0C01E2AE */ jal func_80078AB8 +/* 0A1728 800A0B28 00003825 */ move $a3, $zero +.L800A0B2C: +/* 0A172C 800A0B2C 3C0B8012 */ lui $t3, %hi(D_80126CFC) # $t3, 0x8012 +/* 0A1730 800A0B30 8D6B6CFC */ lw $t3, %lo(D_80126CFC)($t3) +/* 0A1734 800A0B34 8FAD0030 */ lw $t5, 0x30($sp) +/* 0A1738 800A0B38 3C0E8012 */ lui $t6, %hi(D_80126D00) # $t6, 0x8012 +/* 0A173C 800A0B3C ADAB0000 */ sw $t3, ($t5) +/* 0A1740 800A0B40 8FB80034 */ lw $t8, 0x34($sp) +/* 0A1744 800A0B44 8DCE6D00 */ lw $t6, %lo(D_80126D00)($t6) +/* 0A1748 800A0B48 3C0F8012 */ lui $t7, %hi(D_80126D04) # $t7, 0x8012 +/* 0A174C 800A0B4C AF0E0000 */ sw $t6, ($t8) +/* 0A1750 800A0B50 8FB90038 */ lw $t9, 0x38($sp) +/* 0A1754 800A0B54 8DEF6D04 */ lw $t7, %lo(D_80126D04)($t7) +/* 0A1758 800A0B58 2404FFFF */ li $a0, -1 +/* 0A175C 800A0B5C 0C01EB8A */ jal func_8007AE28 +/* 0A1760 800A0B60 AF2F0000 */ sw $t7, ($t9) +.L800A0B64: +/* 0A1764 800A0B64 8FBF0024 */ lw $ra, 0x24($sp) +.L800A0B68: +/* 0A1768 800A0B68 27BD0030 */ addiu $sp, $sp, 0x30 +/* 0A176C 800A0B6C 03E00008 */ jr $ra +/* 0A1770 800A0B70 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A0B74.s b/asm/non_matchings/unknown_09F8F0/func_800A0B74.s new file mode 100644 index 00000000..63e0a66c --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A0B74.s @@ -0,0 +1,28 @@ +glabel func_800A0B74 +/* 0A1774 800A0B74 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0A1778 800A0B78 AFB10018 */ sw $s1, 0x18($sp) +/* 0A177C 800A0B7C AFB00014 */ sw $s0, 0x14($sp) +/* 0A1780 800A0B80 3C10800E */ lui $s0, %hi(D_800E2770) # $s0, 0x800e +/* 0A1784 800A0B84 3C11800E */ lui $s1, %hi(D_800E2790) # $s1, 0x800e +/* 0A1788 800A0B88 AFBF001C */ sw $ra, 0x1c($sp) +/* 0A178C 800A0B8C 26312790 */ addiu $s1, %lo(D_800E2790) # addiu $s1, $s1, 0x2790 +/* 0A1790 800A0B90 26102770 */ addiu $s0, %lo(D_800E2770) # addiu $s0, $s0, 0x2770 +.L800A0B94: +/* 0A1794 800A0B94 8E040004 */ lw $a0, 4($s0) +/* 0A1798 800A0B98 00000000 */ nop +/* 0A179C 800A0B9C 10800005 */ beqz $a0, .L800A0BB4 +/* 0A17A0 800A0BA0 00000000 */ nop +/* 0A17A4 800A0BA4 0C001223 */ jal func_8000488C +/* 0A17A8 800A0BA8 00000000 */ nop +/* 0A17AC 800A0BAC AE000004 */ sw $zero, 4($s0) +/* 0A17B0 800A0BB0 A2000002 */ sb $zero, 2($s0) +.L800A0BB4: +/* 0A17B4 800A0BB4 26100010 */ addiu $s0, $s0, 0x10 +/* 0A17B8 800A0BB8 1611FFF6 */ bne $s0, $s1, .L800A0B94 +/* 0A17BC 800A0BBC 00000000 */ nop +/* 0A17C0 800A0BC0 8FBF001C */ lw $ra, 0x1c($sp) +/* 0A17C4 800A0BC4 8FB00014 */ lw $s0, 0x14($sp) +/* 0A17C8 800A0BC8 8FB10018 */ lw $s1, 0x18($sp) +/* 0A17CC 800A0BCC 03E00008 */ jr $ra +/* 0A17D0 800A0BD0 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A0BD4.s b/asm/non_matchings/unknown_09F8F0/func_800A0BD4.s new file mode 100644 index 00000000..c3720905 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A0BD4.s @@ -0,0 +1,136 @@ +glabel func_800A0BD4 +/* 0A17D4 800A0BD4 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0A17D8 800A0BD8 3C038012 */ lui $v1, %hi(D_80126D74) # $v1, 0x8012 +/* 0A17DC 800A0BDC 24636D74 */ addiu $v1, %lo(D_80126D74) # addiu $v1, $v1, 0x6d74 +/* 0A17E0 800A0BE0 8C620000 */ lw $v0, ($v1) +/* 0A17E4 800A0BE4 AFB1001C */ sw $s1, 0x1c($sp) +/* 0A17E8 800A0BE8 00808825 */ move $s1, $a0 +/* 0A17EC 800A0BEC AFBF002C */ sw $ra, 0x2c($sp) +/* 0A17F0 800A0BF0 AFB40028 */ sw $s4, 0x28($sp) +/* 0A17F4 800A0BF4 AFB30024 */ sw $s3, 0x24($sp) +/* 0A17F8 800A0BF8 AFB20020 */ sw $s2, 0x20($sp) +/* 0A17FC 800A0BFC 1840000D */ blez $v0, .L800A0C34 +/* 0A1800 800A0C00 AFB00018 */ sw $s0, 0x18($sp) +/* 0A1804 800A0C04 00447023 */ subu $t6, $v0, $a0 +/* 0A1808 800A0C08 1DC0000A */ bgtz $t6, .L800A0C34 +/* 0A180C 800A0C0C AC6E0000 */ sw $t6, ($v1) +/* 0A1810 800A0C10 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 +/* 0A1814 800A0C14 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 +/* 0A1818 800A0C18 8CB80000 */ lw $t8, ($a1) +/* 0A181C 800A0C1C AC600000 */ sw $zero, ($v1) +/* 0A1820 800A0C20 17000004 */ bnez $t8, .L800A0C34 +/* 0A1824 800A0C24 3C048012 */ lui $a0, %hi(D_80126D7C) # $a0, 0x8012 +/* 0A1828 800A0C28 94846D7C */ lhu $a0, %lo(D_80126D7C)($a0) +/* 0A182C 800A0C2C 0C000741 */ jal func_80001D04 +/* 0A1830 800A0C30 00000000 */ nop +.L800A0C34: +/* 0A1834 800A0C34 3C10800E */ lui $s0, %hi(D_800E2770) # $s0, 0x800e +/* 0A1838 800A0C38 3C13800E */ lui $s3, %hi(D_800E2790) # $s3, 0x800e +/* 0A183C 800A0C3C 26732790 */ addiu $s3, %lo(D_800E2790) # addiu $s3, $s3, 0x2790 +/* 0A1840 800A0C40 26102770 */ addiu $s0, %lo(D_800E2770) # addiu $s0, $s0, 0x2770 +/* 0A1844 800A0C44 2414007F */ li $s4, 127 +/* 0A1848 800A0C48 2412007F */ li $s2, 127 +.L800A0C4C: +/* 0A184C 800A0C4C 92060002 */ lbu $a2, 2($s0) +/* 0A1850 800A0C50 00000000 */ nop +/* 0A1854 800A0C54 10C0002C */ beqz $a2, .L800A0D08 +/* 0A1858 800A0C58 00000000 */ nop +/* 0A185C 800A0C5C 8E050004 */ lw $a1, 4($s0) +/* 0A1860 800A0C60 00000000 */ nop +/* 0A1864 800A0C64 14A00007 */ bnez $a1, .L800A0C84 +/* 0A1868 800A0C68 00000000 */ nop +/* 0A186C 800A0C6C 96040000 */ lhu $a0, ($s0) +/* 0A1870 800A0C70 0C000741 */ jal func_80001D04 +/* 0A1874 800A0C74 26050004 */ addiu $a1, $s0, 4 +/* 0A1878 800A0C78 92060002 */ lbu $a2, 2($s0) +/* 0A187C 800A0C7C 8E050004 */ lw $a1, 4($s0) +/* 0A1880 800A0C80 00000000 */ nop +.L800A0C84: +/* 0A1884 800A0C84 96040000 */ lhu $a0, ($s0) +/* 0A1888 800A0C88 0C0007EE */ jal func_80001FB8 +/* 0A188C 800A0C8C 00000000 */ nop +/* 0A1890 800A0C90 82040003 */ lb $a0, 3($s0) +/* 0A1894 800A0C94 00000000 */ nop +/* 0A1898 800A0C98 1880000D */ blez $a0, .L800A0CD0 +/* 0A189C 800A0C9C 00000000 */ nop +/* 0A18A0 800A0CA0 00910019 */ multu $a0, $s1 +/* 0A18A4 800A0CA4 92030002 */ lbu $v1, 2($s0) +/* 0A18A8 800A0CA8 00001012 */ mflo $v0 +/* 0A18AC 800A0CAC 0242C823 */ subu $t9, $s2, $v0 +/* 0A18B0 800A0CB0 0323082A */ slt $at, $t9, $v1 +/* 0A18B4 800A0CB4 14200003 */ bnez $at, .L800A0CC4 +/* 0A18B8 800A0CB8 00624021 */ addu $t0, $v1, $v0 +/* 0A18BC 800A0CBC 10000019 */ b .L800A0D24 +/* 0A18C0 800A0CC0 A2080002 */ sb $t0, 2($s0) +.L800A0CC4: +/* 0A18C4 800A0CC4 A2000003 */ sb $zero, 3($s0) +/* 0A18C8 800A0CC8 10000016 */ b .L800A0D24 +/* 0A18CC 800A0CCC A2140002 */ sb $s4, 2($s0) +.L800A0CD0: +/* 0A18D0 800A0CD0 04810014 */ bgez $a0, .L800A0D24 +/* 0A18D4 800A0CD4 00000000 */ nop +/* 0A18D8 800A0CD8 00910019 */ multu $a0, $s1 +/* 0A18DC 800A0CDC 92030002 */ lbu $v1, 2($s0) +/* 0A18E0 800A0CE0 00001012 */ mflo $v0 +/* 0A18E4 800A0CE4 00024823 */ negu $t1, $v0 +/* 0A18E8 800A0CE8 0123082A */ slt $at, $t1, $v1 +/* 0A18EC 800A0CEC 10200003 */ beqz $at, .L800A0CFC +/* 0A18F0 800A0CF0 00625021 */ addu $t2, $v1, $v0 +/* 0A18F4 800A0CF4 1000000B */ b .L800A0D24 +/* 0A18F8 800A0CF8 A20A0002 */ sb $t2, 2($s0) +.L800A0CFC: +/* 0A18FC 800A0CFC A2000003 */ sb $zero, 3($s0) +/* 0A1900 800A0D00 10000008 */ b .L800A0D24 +/* 0A1904 800A0D04 A2000002 */ sb $zero, 2($s0) +.L800A0D08: +/* 0A1908 800A0D08 8E050004 */ lw $a1, 4($s0) +/* 0A190C 800A0D0C 00000000 */ nop +/* 0A1910 800A0D10 10A00004 */ beqz $a1, .L800A0D24 +/* 0A1914 800A0D14 00000000 */ nop +/* 0A1918 800A0D18 0C001223 */ jal func_8000488C +/* 0A191C 800A0D1C 00A02025 */ move $a0, $a1 +/* 0A1920 800A0D20 AE000004 */ sw $zero, 4($s0) +.L800A0D24: +/* 0A1924 800A0D24 26100010 */ addiu $s0, $s0, 0x10 +/* 0A1928 800A0D28 1613FFC8 */ bne $s0, $s3, .L800A0C4C +/* 0A192C 800A0D2C 00000000 */ nop +/* 0A1930 800A0D30 3C038012 */ lui $v1, %hi(D_80126D70) # $v1, 0x8012 +/* 0A1934 800A0D34 24636D70 */ addiu $v1, %lo(D_80126D70) # addiu $v1, $v1, 0x6d70 +/* 0A1938 800A0D38 906B0000 */ lbu $t3, ($v1) +/* 0A193C 800A0D3C 3C0C800E */ lui $t4, %hi(D_800E2772) # $t4, 0x800e +/* 0A1940 800A0D40 11600018 */ beqz $t3, .L800A0DA4 +/* 0A1944 800A0D44 8FBF002C */ lw $ra, 0x2c($sp) +/* 0A1948 800A0D48 918C2772 */ lbu $t4, %lo(D_800E2772)($t4) +/* 0A194C 800A0D4C 3C028012 */ lui $v0, %hi(D_80126D37) # $v0, 0x8012 +/* 0A1950 800A0D50 15800014 */ bnez $t4, .L800A0DA4 +/* 0A1954 800A0D54 8FBF002C */ lw $ra, 0x2c($sp) +/* 0A1958 800A0D58 A0600000 */ sb $zero, ($v1) +/* 0A195C 800A0D5C 90426D37 */ lbu $v0, %lo(D_80126D37)($v0) +/* 0A1960 800A0D60 24010001 */ li $at, 1 +/* 0A1964 800A0D64 14410006 */ bne $v0, $at, .L800A0D80 +/* 0A1968 800A0D68 24010002 */ li $at, 2 +/* 0A196C 800A0D6C 0C000C63 */ jal func_8000318C +/* 0A1970 800A0D70 24040008 */ li $a0, 8 +/* 0A1974 800A0D74 1000000B */ b .L800A0DA4 +/* 0A1978 800A0D78 8FBF002C */ lw $ra, 0x2c($sp) +/* 0A197C 800A0D7C 24010002 */ li $at, 2 +.L800A0D80: +/* 0A1980 800A0D80 14410005 */ bne $v0, $at, .L800A0D98 +/* 0A1984 800A0D84 00000000 */ nop +/* 0A1988 800A0D88 0C000C63 */ jal func_8000318C +/* 0A198C 800A0D8C 2404000C */ li $a0, 12 +/* 0A1990 800A0D90 10000004 */ b .L800A0DA4 +/* 0A1994 800A0D94 8FBF002C */ lw $ra, 0x2c($sp) +.L800A0D98: +/* 0A1998 800A0D98 0C000C63 */ jal func_8000318C +/* 0A199C 800A0D9C 24040010 */ li $a0, 16 +/* 0A19A0 800A0DA0 8FBF002C */ lw $ra, 0x2c($sp) +.L800A0DA4: +/* 0A19A4 800A0DA4 8FB00018 */ lw $s0, 0x18($sp) +/* 0A19A8 800A0DA8 8FB1001C */ lw $s1, 0x1c($sp) +/* 0A19AC 800A0DAC 8FB20020 */ lw $s2, 0x20($sp) +/* 0A19B0 800A0DB0 8FB30024 */ lw $s3, 0x24($sp) +/* 0A19B4 800A0DB4 8FB40028 */ lw $s4, 0x28($sp) +/* 0A19B8 800A0DB8 03E00008 */ jr $ra +/* 0A19BC 800A0DBC 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A0DC0.s b/asm/non_matchings/unknown_09F8F0/func_800A0DC0.s new file mode 100644 index 00000000..089adb8f --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A0DC0.s @@ -0,0 +1,66 @@ +glabel func_800A0DC0 +/* 0A19C0 800A0DC0 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0A19C4 800A0DC4 AFBF001C */ sw $ra, 0x1c($sp) +/* 0A19C8 800A0DC8 AFB10018 */ sw $s1, 0x18($sp) +/* 0A19CC 800A0DCC AFB00014 */ sw $s0, 0x14($sp) +/* 0A19D0 800A0DD0 AFA40020 */ sw $a0, 0x20($sp) +/* 0A19D4 800A0DD4 AFA50024 */ sw $a1, 0x24($sp) +/* 0A19D8 800A0DD8 8CB10064 */ lw $s1, 0x64($a1) +/* 0A19DC 800A0DDC 00C08025 */ move $s0, $a2 +/* 0A19E0 800A0DE0 0C01A142 */ jal func_80068508 +/* 0A19E4 800A0DE4 24040001 */ li $a0, 1 +/* 0A19E8 800A0DE8 02202025 */ move $a0, $s1 +/* 0A19EC 800A0DEC 0C0283AD */ jal func_800A0EB4 +/* 0A19F0 800A0DF0 02002825 */ move $a1, $s0 +/* 0A19F4 800A0DF4 02202025 */ move $a0, $s1 +/* 0A19F8 800A0DF8 0C029699 */ jal func_800A5A64 +/* 0A19FC 800A0DFC 02002825 */ move $a1, $s0 +/* 0A1A00 800A0E00 8FA40020 */ lw $a0, 0x20($sp) +/* 0A1A04 800A0E04 0C028F39 */ jal func_800A3CE4 +/* 0A1A08 800A0E08 02002825 */ move $a1, $s0 +/* 0A1A0C 800A0E0C 3C0F8012 */ lui $t7, %hi(D_80126D60) # $t7, 0x8012 +/* 0A1A10 800A0E10 8DEF6D60 */ lw $t7, %lo(D_80126D60)($t7) +/* 0A1A14 800A0E14 02202025 */ move $a0, $s1 +/* 0A1A18 800A0E18 81F8004C */ lb $t8, 0x4c($t7) +/* 0A1A1C 800A0E1C 00000000 */ nop +/* 0A1A20 800A0E20 17000003 */ bnez $t8, .L800A0E30 +/* 0A1A24 800A0E24 00000000 */ nop +/* 0A1A28 800A0E28 0C0293D4 */ jal func_800A4F50 +/* 0A1A2C 800A0E2C 02002825 */ move $a1, $s0 +.L800A0E30: +/* 0A1A30 800A0E30 02202025 */ move $a0, $s1 +/* 0A1A34 800A0E34 0C029055 */ jal func_800A4154 +/* 0A1A38 800A0E38 02002825 */ move $a1, $s0 +/* 0A1A3C 800A0E3C 02202025 */ move $a0, $s1 +/* 0A1A40 800A0E40 0C029EDA */ jal func_800A7B68 +/* 0A1A44 800A0E44 02002825 */ move $a1, $s0 +/* 0A1A48 800A0E48 02202025 */ move $a0, $s1 +/* 0A1A4C 800A0E4C 0C029311 */ jal func_800A4C44 +/* 0A1A50 800A0E50 02002825 */ move $a1, $s0 +/* 0A1A54 800A0E54 8FA40024 */ lw $a0, 0x24($sp) +/* 0A1A58 800A0E58 0C028E21 */ jal func_800A3884 +/* 0A1A5C 800A0E5C 02002825 */ move $a1, $s0 +/* 0A1A60 800A0E60 3C198012 */ lui $t9, %hi(D_80127188) # $t9, 0x8012 +/* 0A1A64 800A0E64 93397188 */ lbu $t9, %lo(D_80127188)($t9) +/* 0A1A68 800A0E68 00000000 */ nop +/* 0A1A6C 800A0E6C 13200008 */ beqz $t9, .L800A0E90 +/* 0A1A70 800A0E70 8FA40024 */ lw $a0, 0x24($sp) +/* 0A1A74 800A0E74 822801D8 */ lb $t0, 0x1d8($s1) +/* 0A1A78 800A0E78 02202025 */ move $a0, $s1 +/* 0A1A7C 800A0E7C 15000003 */ bnez $t0, .L800A0E8C +/* 0A1A80 800A0E80 00000000 */ nop +/* 0A1A84 800A0E84 0C0291E8 */ jal func_800A47A0 +/* 0A1A88 800A0E88 02002825 */ move $a1, $s0 +.L800A0E8C: +/* 0A1A8C 800A0E8C 8FA40024 */ lw $a0, 0x24($sp) +.L800A0E90: +/* 0A1A90 800A0E90 0C029D48 */ jal func_800A7520 +/* 0A1A94 800A0E94 02002825 */ move $a1, $s0 +/* 0A1A98 800A0E98 0C01A142 */ jal func_80068508 +/* 0A1A9C 800A0E9C 00002025 */ move $a0, $zero +/* 0A1AA0 800A0EA0 8FBF001C */ lw $ra, 0x1c($sp) +/* 0A1AA4 800A0EA4 8FB00014 */ lw $s0, 0x14($sp) +/* 0A1AA8 800A0EA8 8FB10018 */ lw $s1, 0x18($sp) +/* 0A1AAC 800A0EAC 03E00008 */ jr $ra +/* 0A1AB0 800A0EB0 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A0EB4.s b/asm/non_matchings/unknown_09F8F0/func_800A0EB4.s new file mode 100644 index 00000000..48c6fbe2 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A0EB4.s @@ -0,0 +1,241 @@ +glabel func_800A0EB4 +/* 0A1AB4 800A0EB4 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0A1AB8 800A0EB8 3C0E800E */ lui $t6, %hi(D_800E2790) # $t6, 0x800e +/* 0A1ABC 800A0EBC 91CE2790 */ lbu $t6, %lo(D_800E2790)($t6) +/* 0A1AC0 800A0EC0 AFBF001C */ sw $ra, 0x1c($sp) +/* 0A1AC4 800A0EC4 AFB00018 */ sw $s0, 0x18($sp) +/* 0A1AC8 800A0EC8 AFA40020 */ sw $a0, 0x20($sp) +/* 0A1ACC 800A0ECC 11C000DA */ beqz $t6, .L800A1238 +/* 0A1AD0 800A0ED0 AFA50024 */ sw $a1, 0x24($sp) +/* 0A1AD4 800A0ED4 808201F9 */ lb $v0, 0x1f9($a0) +/* 0A1AD8 800A0ED8 00000000 */ nop +/* 0A1ADC 800A0EDC 18400085 */ blez $v0, .L800A10F4 +/* 0A1AE0 800A0EE0 8FB90020 */ lw $t9, 0x20($sp) +/* 0A1AE4 800A0EE4 908301F8 */ lbu $v1, 0x1f8($a0) +/* 0A1AE8 800A0EE8 0045C823 */ subu $t9, $v0, $a1 +/* 0A1AEC 800A0EEC 1060007B */ beqz $v1, .L800A10DC +/* 0A1AF0 800A0EF0 A09901F9 */ sb $t9, 0x1f9($a0) +/* 0A1AF4 800A0EF4 3C108012 */ lui $s0, %hi(D_80126CDC) # $s0, 0x8012 +/* 0A1AF8 800A0EF8 8E106CDC */ lw $s0, %lo(D_80126CDC)($s0) +/* 0A1AFC 800A0EFC 2469FFFF */ addiu $t1, $v1, -1 +/* 0A1B00 800A0F00 2D210008 */ sltiu $at, $t1, 8 +/* 0A1B04 800A0F04 1020002D */ beqz $at, .L800A0FBC +/* 0A1B08 800A0F08 26100420 */ addiu $s0, $s0, 0x420 +/* 0A1B0C 800A0F0C 00094880 */ sll $t1, $t1, 2 +/* 0A1B10 800A0F10 3C01800F */ lui $at, 0x800f +/* 0A1B14 800A0F14 00290821 */ addu $at, $at, $t1 +/* 0A1B18 800A0F18 8C2986F8 */ lw $t1, -0x7908($at) +/* 0A1B1C 800A0F1C 00000000 */ nop +/* 0A1B20 800A0F20 01200008 */ jr $t1 +/* 0A1B24 800A0F24 00000000 */ nop +/* 0A1B28 800A0F28 240A0021 */ li $t2, 33 +/* 0A1B2C 800A0F2C A60A0006 */ sh $t2, 6($s0) +/* 0A1B30 800A0F30 10000025 */ b .L800A0FC8 +/* 0A1B34 800A0F34 A6000000 */ sh $zero, ($s0) +/* 0A1B38 800A0F38 240B0020 */ li $t3, 32 +/* 0A1B3C 800A0F3C A60B0006 */ sh $t3, 6($s0) +/* 0A1B40 800A0F40 10000021 */ b .L800A0FC8 +/* 0A1B44 800A0F44 A6000000 */ sh $zero, ($s0) +/* 0A1B48 800A0F48 240C001F */ li $t4, 31 +/* 0A1B4C 800A0F4C A60C0006 */ sh $t4, 6($s0) +/* 0A1B50 800A0F50 1000001D */ b .L800A0FC8 +/* 0A1B54 800A0F54 A6000000 */ sh $zero, ($s0) +/* 0A1B58 800A0F58 24028000 */ li $v0, -32768 +/* 0A1B5C 800A0F5C 240D0021 */ li $t5, 33 +/* 0A1B60 800A0F60 A60D0006 */ sh $t5, 6($s0) +/* 0A1B64 800A0F64 10000018 */ b .L800A0FC8 +/* 0A1B68 800A0F68 A6020000 */ sh $v0, ($s0) +/* 0A1B6C 800A0F6C 24028000 */ li $v0, -32768 +/* 0A1B70 800A0F70 240E0020 */ li $t6, 32 +/* 0A1B74 800A0F74 A60E0006 */ sh $t6, 6($s0) +/* 0A1B78 800A0F78 10000013 */ b .L800A0FC8 +/* 0A1B7C 800A0F7C A6020000 */ sh $v0, ($s0) +/* 0A1B80 800A0F80 24028000 */ li $v0, -32768 +/* 0A1B84 800A0F84 2418001F */ li $t8, 31 +/* 0A1B88 800A0F88 A6180006 */ sh $t8, 6($s0) +/* 0A1B8C 800A0F8C 1000000E */ b .L800A0FC8 +/* 0A1B90 800A0F90 A6020000 */ sh $v0, ($s0) +/* 0A1B94 800A0F94 24028000 */ li $v0, -32768 +/* 0A1B98 800A0F98 2419001E */ li $t9, 30 +/* 0A1B9C 800A0F9C A6190006 */ sh $t9, 6($s0) +/* 0A1BA0 800A0FA0 A6020000 */ sh $v0, ($s0) +/* 0A1BA4 800A0FA4 10000008 */ b .L800A0FC8 +/* 0A1BA8 800A0FA8 A6020002 */ sh $v0, 2($s0) +/* 0A1BAC 800A0FAC 240F001E */ li $t7, 30 +/* 0A1BB0 800A0FB0 A60F0006 */ sh $t7, 6($s0) +/* 0A1BB4 800A0FB4 10000004 */ b .L800A0FC8 +/* 0A1BB8 800A0FB8 A6000000 */ sh $zero, ($s0) +.L800A0FBC: +/* 0A1BBC 800A0FBC 2409001D */ li $t1, 29 +/* 0A1BC0 800A0FC0 A6090006 */ sh $t1, 6($s0) +/* 0A1BC4 800A0FC4 A6000000 */ sh $zero, ($s0) +.L800A0FC8: +/* 0A1BC8 800A0FC8 0C0270C3 */ jal func_8009C30C +/* 0A1BCC 800A0FCC 00000000 */ nop +/* 0A1BD0 800A0FD0 304A0004 */ andi $t2, $v0, 4 +/* 0A1BD4 800A0FD4 1140000C */ beqz $t2, .L800A1008 +/* 0A1BD8 800A0FD8 3C188012 */ lui $t8, %hi(D_80126D0C) # $t8, 0x8012 +/* 0A1BDC 800A0FDC 8FA80020 */ lw $t0, 0x20($sp) +/* 0A1BE0 800A0FE0 00000000 */ nop +/* 0A1BE4 800A0FE4 910B01F8 */ lbu $t3, 0x1f8($t0) +/* 0A1BE8 800A0FE8 00000000 */ nop +/* 0A1BEC 800A0FEC 2961001E */ slti $at, $t3, 0x1e +/* 0A1BF0 800A0FF0 10200005 */ beqz $at, .L800A1008 +/* 0A1BF4 800A0FF4 00000000 */ nop +/* 0A1BF8 800A0FF8 860C0000 */ lh $t4, ($s0) +/* 0A1BFC 800A0FFC 340D8000 */ li $t5, 32768 +/* 0A1C00 800A1000 01AC7023 */ subu $t6, $t5, $t4 +/* 0A1C04 800A1004 A60E0000 */ sh $t6, ($s0) +.L800A1008: +/* 0A1C08 800A1008 8F186D0C */ lw $t8, %lo(D_80126D0C)($t8) +/* 0A1C0C 800A100C 8FA80020 */ lw $t0, 0x20($sp) +/* 0A1C10 800A1010 17000032 */ bnez $t8, .L800A10DC +/* 0A1C14 800A1014 00000000 */ nop +/* 0A1C18 800A1018 811901D8 */ lb $t9, 0x1d8($t0) +/* 0A1C1C 800A101C 00000000 */ nop +/* 0A1C20 800A1020 1720002E */ bnez $t9, .L800A10DC +/* 0A1C24 800A1024 00000000 */ nop +/* 0A1C28 800A1028 910F01F8 */ lbu $t7, 0x1f8($t0) +/* 0A1C2C 800A102C 3C09800E */ lui $t1, %hi(D_800E27B8) # $t1, 0x800e +/* 0A1C30 800A1030 11E0002A */ beqz $t7, .L800A10DC +/* 0A1C34 800A1034 00000000 */ nop +/* 0A1C38 800A1038 912927B8 */ lbu $t1, %lo(D_800E27B8)($t1) +/* 0A1C3C 800A103C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A1C40 800A1040 15200026 */ bnez $t1, .L800A10DC +/* 0A1C44 800A1044 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A1C48 800A1048 8C820000 */ lw $v0, ($a0) +/* 0A1C4C 800A104C 3C0BFA00 */ lui $t3, 0xfa00 +/* 0A1C50 800A1050 244A0008 */ addiu $t2, $v0, 8 +/* 0A1C54 800A1054 AC8A0000 */ sw $t2, ($a0) +/* 0A1C58 800A1058 240DFFA0 */ li $t5, -96 +/* 0A1C5C 800A105C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A1C60 800A1060 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A1C64 800A1064 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A1C68 800A1068 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A1C6C 800A106C 02003825 */ move $a3, $s0 +/* 0A1C70 800A1070 AC4D0004 */ sw $t5, 4($v0) +/* 0A1C74 800A1074 0C02A980 */ jal func_800AA600 +/* 0A1C78 800A1078 AC4B0000 */ sw $t3, ($v0) +/* 0A1C7C 800A107C C604000C */ lwc1 $f4, 0xc($s0) +/* 0A1C80 800A1080 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A1C84 800A1084 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A1C88 800A1088 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A1C8C 800A108C 46002187 */ neg.s $f6, $f4 +/* 0A1C90 800A1090 E606000C */ swc1 $f6, 0xc($s0) +/* 0A1C94 800A1094 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A1C98 800A1098 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A1C9C 800A109C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A1CA0 800A10A0 0C02A980 */ jal func_800AA600 +/* 0A1CA4 800A10A4 02003825 */ move $a3, $s0 +/* 0A1CA8 800A10A8 C608000C */ lwc1 $f8, 0xc($s0) +/* 0A1CAC 800A10AC 3C058012 */ lui $a1, %hi(D_80126CFC) # $a1, 0x8012 +/* 0A1CB0 800A10B0 46004287 */ neg.s $f10, $f8 +/* 0A1CB4 800A10B4 24A56CFC */ addiu $a1, %lo(D_80126CFC) # addiu $a1, $a1, 0x6cfc +/* 0A1CB8 800A10B8 E60A000C */ swc1 $f10, 0xc($s0) +/* 0A1CBC 800A10BC A6000002 */ sh $zero, 2($s0) +/* 0A1CC0 800A10C0 8CA20000 */ lw $v0, ($a1) +/* 0A1CC4 800A10C4 3C0EFA00 */ lui $t6, 0xfa00 +/* 0A1CC8 800A10C8 244C0008 */ addiu $t4, $v0, 8 +/* 0A1CCC 800A10CC ACAC0000 */ sw $t4, ($a1) +/* 0A1CD0 800A10D0 2418FFFF */ li $t8, -1 +/* 0A1CD4 800A10D4 AC580004 */ sw $t8, 4($v0) +/* 0A1CD8 800A10D8 AC4E0000 */ sw $t6, ($v0) +.L800A10DC: +/* 0A1CDC 800A10DC 3C02800E */ lui $v0, %hi(D_800E27B8) # $v0, 0x800e +/* 0A1CE0 800A10E0 904227B8 */ lbu $v0, %lo(D_800E27B8)($v0) +/* 0A1CE4 800A10E4 3C058012 */ lui $a1, %hi(D_80126CFC) # $a1, 0x8012 +/* 0A1CE8 800A10E8 10000007 */ b .L800A1108 +/* 0A1CEC 800A10EC 24A56CFC */ addiu $a1, %lo(D_80126CFC) # addiu $a1, $a1, 0x6cfc +/* 0A1CF0 800A10F0 8FB90020 */ lw $t9, 0x20($sp) +.L800A10F4: +/* 0A1CF4 800A10F4 3C02800E */ lui $v0, %hi(D_800E27B8) # $v0, 0x800e +/* 0A1CF8 800A10F8 A32001F9 */ sb $zero, 0x1f9($t9) +/* 0A1CFC 800A10FC 3C058012 */ lui $a1, %hi(D_80126CFC) # $a1, 0x8012 +/* 0A1D00 800A1100 904227B8 */ lbu $v0, %lo(D_800E27B8)($v0) +/* 0A1D04 800A1104 24A56CFC */ addiu $a1, %lo(D_80126CFC) # addiu $a1, $a1, 0x6cfc +.L800A1108: +/* 0A1D08 800A1108 1040004B */ beqz $v0, .L800A1238 +/* 0A1D0C 800A110C 304F0020 */ andi $t7, $v0, 0x20 +/* 0A1D10 800A1110 11E0003F */ beqz $t7, .L800A1210 +/* 0A1D14 800A1114 00402025 */ move $a0, $v0 +/* 0A1D18 800A1118 8CA20000 */ lw $v0, ($a1) +/* 0A1D1C 800A111C 3C0AFA00 */ lui $t2, 0xfa00 +/* 0A1D20 800A1120 24490008 */ addiu $t1, $v0, 8 +/* 0A1D24 800A1124 ACA90000 */ sw $t1, ($a1) +/* 0A1D28 800A1128 240BFFA0 */ li $t3, -96 +/* 0A1D2C 800A112C 3C108012 */ lui $s0, %hi(D_80126CDC) # $s0, 0x8012 +/* 0A1D30 800A1130 AC4B0004 */ sw $t3, 4($v0) +/* 0A1D34 800A1134 AC4A0000 */ sw $t2, ($v0) +/* 0A1D38 800A1138 8E106CDC */ lw $s0, %lo(D_80126CDC)($s0) +/* 0A1D3C 800A113C 240D001D */ li $t5, 29 +/* 0A1D40 800A1140 26100420 */ addiu $s0, $s0, 0x420 +/* 0A1D44 800A1144 A6000000 */ sh $zero, ($s0) +/* 0A1D48 800A1148 A6000002 */ sh $zero, 2($s0) +/* 0A1D4C 800A114C 0C0270C3 */ jal func_8009C30C +/* 0A1D50 800A1150 A60D0006 */ sh $t5, 6($s0) +/* 0A1D54 800A1154 304C0004 */ andi $t4, $v0, 4 +/* 0A1D58 800A1158 1180000C */ beqz $t4, .L800A118C +/* 0A1D5C 800A115C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A1D60 800A1160 8FAE0020 */ lw $t6, 0x20($sp) +/* 0A1D64 800A1164 00000000 */ nop +/* 0A1D68 800A1168 91D801F8 */ lbu $t8, 0x1f8($t6) +/* 0A1D6C 800A116C 00000000 */ nop +/* 0A1D70 800A1170 2B01001E */ slti $at, $t8, 0x1e +/* 0A1D74 800A1174 10200005 */ beqz $at, .L800A118C +/* 0A1D78 800A1178 00000000 */ nop +/* 0A1D7C 800A117C 86190000 */ lh $t9, ($s0) +/* 0A1D80 800A1180 340F8000 */ li $t7, 32768 +/* 0A1D84 800A1184 01F94823 */ subu $t1, $t7, $t9 +/* 0A1D88 800A1188 A6090000 */ sh $t1, ($s0) +.L800A118C: +/* 0A1D8C 800A118C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A1D90 800A1190 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A1D94 800A1194 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A1D98 800A1198 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A1D9C 800A119C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A1DA0 800A11A0 0C02A980 */ jal func_800AA600 +/* 0A1DA4 800A11A4 02003825 */ move $a3, $s0 +/* 0A1DA8 800A11A8 C610000C */ lwc1 $f16, 0xc($s0) +/* 0A1DAC 800A11AC 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A1DB0 800A11B0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A1DB4 800A11B4 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A1DB8 800A11B8 46008487 */ neg.s $f18, $f16 +/* 0A1DBC 800A11BC E612000C */ swc1 $f18, 0xc($s0) +/* 0A1DC0 800A11C0 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A1DC4 800A11C4 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A1DC8 800A11C8 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A1DCC 800A11CC 0C02A980 */ jal func_800AA600 +/* 0A1DD0 800A11D0 02003825 */ move $a3, $s0 +/* 0A1DD4 800A11D4 C604000C */ lwc1 $f4, 0xc($s0) +/* 0A1DD8 800A11D8 3C028012 */ lui $v0, %hi(D_80126CFC) # $v0, 0x8012 +/* 0A1DDC 800A11DC 46002187 */ neg.s $f6, $f4 +/* 0A1DE0 800A11E0 E606000C */ swc1 $f6, 0xc($s0) +/* 0A1DE4 800A11E4 8C426CFC */ lw $v0, %lo(D_80126CFC)($v0) +/* 0A1DE8 800A11E8 3C018012 */ lui $at, %hi(D_80126CFC) # $at, 0x8012 +/* 0A1DEC 800A11EC 244A0008 */ addiu $t2, $v0, 8 +/* 0A1DF0 800A11F0 AC2A6CFC */ sw $t2, %lo(D_80126CFC)($at) +/* 0A1DF4 800A11F4 3C0BFA00 */ lui $t3, 0xfa00 +/* 0A1DF8 800A11F8 240DFFFF */ li $t5, -1 +/* 0A1DFC 800A11FC 3C04800E */ lui $a0, %hi(D_800E27B8) # $a0, 0x800e +/* 0A1E00 800A1200 AC4D0004 */ sw $t5, 4($v0) +/* 0A1E04 800A1204 AC4B0000 */ sw $t3, ($v0) +/* 0A1E08 800A1208 908427B8 */ lbu $a0, %lo(D_800E27B8)($a0) +/* 0A1E0C 800A120C 00000000 */ nop +.L800A1210: +/* 0A1E10 800A1210 8FAC0024 */ lw $t4, 0x24($sp) +/* 0A1E14 800A1214 00000000 */ nop +/* 0A1E18 800A1218 0184082A */ slt $at, $t4, $a0 +/* 0A1E1C 800A121C 10200004 */ beqz $at, .L800A1230 +/* 0A1E20 800A1220 008C7023 */ subu $t6, $a0, $t4 +/* 0A1E24 800A1224 3C01800E */ lui $at, %hi(D_800E27B8) # $at, 0x800e +/* 0A1E28 800A1228 10000003 */ b .L800A1238 +/* 0A1E2C 800A122C A02E27B8 */ sb $t6, %lo(D_800E27B8)($at) +.L800A1230: +/* 0A1E30 800A1230 3C01800E */ lui $at, %hi(D_800E27B8) # $at, 0x800e +/* 0A1E34 800A1234 A02027B8 */ sb $zero, %lo(D_800E27B8)($at) +.L800A1238: +/* 0A1E38 800A1238 8FBF001C */ lw $ra, 0x1c($sp) +/* 0A1E3C 800A123C 8FB00018 */ lw $s0, 0x18($sp) +/* 0A1E40 800A1240 03E00008 */ jr $ra +/* 0A1E44 800A1244 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A1248.s b/asm/non_matchings/unknown_09F8F0/func_800A1248.s new file mode 100644 index 00000000..2c6830e3 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A1248.s @@ -0,0 +1,129 @@ +glabel func_800A1248 +/* 0A1E48 800A1248 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 0A1E4C 800A124C AFBF002C */ sw $ra, 0x2c($sp) +/* 0A1E50 800A1250 AFB30028 */ sw $s3, 0x28($sp) +/* 0A1E54 800A1254 AFB20024 */ sw $s2, 0x24($sp) +/* 0A1E58 800A1258 AFB10020 */ sw $s1, 0x20($sp) +/* 0A1E5C 800A125C AFB0001C */ sw $s0, 0x1c($sp) +/* 0A1E60 800A1260 E7B50010 */ swc1 $f21, 0x10($sp) +/* 0A1E64 800A1264 E7B40014 */ swc1 $f20, 0x14($sp) +/* 0A1E68 800A1268 AFA5004C */ sw $a1, 0x4c($sp) +/* 0A1E6C 800A126C AFA60050 */ sw $a2, 0x50($sp) +/* 0A1E70 800A1270 8CA70064 */ lw $a3, 0x64($a1) +/* 0A1E74 800A1274 00808025 */ move $s0, $a0 +/* 0A1E78 800A1278 27A4003C */ addiu $a0, $sp, 0x3c +/* 0A1E7C 800A127C 0C006E9D */ jal func_8001BA74 +/* 0A1E80 800A1280 AFA70044 */ sw $a3, 0x44($sp) +/* 0A1E84 800A1284 00409025 */ move $s2, $v0 +/* 0A1E88 800A1288 0C01A142 */ jal func_80068508 +/* 0A1E8C 800A128C 24040001 */ li $a0, 1 +/* 0A1E90 800A1290 8FA50050 */ lw $a1, 0x50($sp) +/* 0A1E94 800A1294 0C028F39 */ jal func_800A3CE4 +/* 0A1E98 800A1298 02002025 */ move $a0, $s0 +/* 0A1E9C 800A129C 3C028012 */ lui $v0, %hi(D_80126D37) # $v0, 0x8012 +/* 0A1EA0 800A12A0 90426D37 */ lbu $v0, %lo(D_80126D37)($v0) +/* 0A1EA4 800A12A4 8FA70044 */ lw $a3, 0x44($sp) +/* 0A1EA8 800A12A8 24130001 */ li $s3, 1 +/* 0A1EAC 800A12AC 10530007 */ beq $v0, $s3, .L800A12CC +/* 0A1EB0 800A12B0 24010003 */ li $at, 3 +/* 0A1EB4 800A12B4 10410041 */ beq $v0, $at, .L800A13BC +/* 0A1EB8 800A12B8 24010004 */ li $at, 4 +/* 0A1EBC 800A12BC 1041003F */ beq $v0, $at, .L800A13BC +/* 0A1EC0 800A12C0 00000000 */ nop +/* 0A1EC4 800A12C4 10000040 */ b .L800A13C8 +/* 0A1EC8 800A12C8 8FA8004C */ lw $t0, 0x4c($sp) +.L800A12CC: +/* 0A1ECC 800A12CC 8FAF003C */ lw $t7, 0x3c($sp) +/* 0A1ED0 800A12D0 00008825 */ move $s1, $zero +/* 0A1ED4 800A12D4 19E00029 */ blez $t7, .L800A137C +/* 0A1ED8 800A12D8 02408025 */ move $s0, $s2 +/* 0A1EDC 800A12DC 3C01425C */ li $at, 0x425C0000 # 55.000000 +/* 0A1EE0 800A12E0 3C128012 */ lui $s2, %hi(D_80126CDC) # $s2, 0x8012 +/* 0A1EE4 800A12E4 4481A000 */ mtc1 $at, $f20 +/* 0A1EE8 800A12E8 26526CDC */ addiu $s2, %lo(D_80126CDC) # addiu $s2, $s2, 0x6cdc +.L800A12EC: +/* 0A1EEC 800A12EC 8E180000 */ lw $t8, ($s0) +/* 0A1EF0 800A12F0 00000000 */ nop +/* 0A1EF4 800A12F4 8F040064 */ lw $a0, 0x64($t8) +/* 0A1EF8 800A12F8 0C02917C */ jal func_800A45F0 +/* 0A1EFC 800A12FC 00000000 */ nop +/* 0A1F00 800A1300 1633000D */ bne $s1, $s3, .L800A1338 +/* 0A1F04 800A1304 00000000 */ nop +/* 0A1F08 800A1308 8E420000 */ lw $v0, ($s2) +/* 0A1F0C 800A130C 00000000 */ nop +/* 0A1F10 800A1310 C444064C */ lwc1 $f4, 0x64c($v0) +/* 0A1F14 800A1314 00000000 */ nop +/* 0A1F18 800A1318 46142180 */ add.s $f6, $f4, $f20 +/* 0A1F1C 800A131C E446064C */ swc1 $f6, 0x64c($v0) +/* 0A1F20 800A1320 8E420000 */ lw $v0, ($s2) +/* 0A1F24 800A1324 00000000 */ nop +/* 0A1F28 800A1328 C448040C */ lwc1 $f8, 0x40c($v0) +/* 0A1F2C 800A132C 00000000 */ nop +/* 0A1F30 800A1330 46144280 */ add.s $f10, $f8, $f20 +/* 0A1F34 800A1334 E44A040C */ swc1 $f10, 0x40c($v0) +.L800A1338: +/* 0A1F38 800A1338 8E420000 */ lw $v0, ($s2) +/* 0A1F3C 800A133C 26310001 */ addiu $s1, $s1, 1 +/* 0A1F40 800A1340 C450064C */ lwc1 $f16, 0x64c($v0) +/* 0A1F44 800A1344 26100004 */ addiu $s0, $s0, 4 +/* 0A1F48 800A1348 46148480 */ add.s $f18, $f16, $f20 +/* 0A1F4C 800A134C E452064C */ swc1 $f18, 0x64c($v0) +/* 0A1F50 800A1350 8E420000 */ lw $v0, ($s2) +/* 0A1F54 800A1354 00000000 */ nop +/* 0A1F58 800A1358 C444040C */ lwc1 $f4, 0x40c($v0) +/* 0A1F5C 800A135C 00000000 */ nop +/* 0A1F60 800A1360 46142180 */ add.s $f6, $f4, $f20 +/* 0A1F64 800A1364 E446040C */ swc1 $f6, 0x40c($v0) +/* 0A1F68 800A1368 8FB9003C */ lw $t9, 0x3c($sp) +/* 0A1F6C 800A136C 00000000 */ nop +/* 0A1F70 800A1370 0239082A */ slt $at, $s1, $t9 +/* 0A1F74 800A1374 1420FFDD */ bnez $at, .L800A12EC +/* 0A1F78 800A1378 00000000 */ nop +.L800A137C: +/* 0A1F7C 800A137C 3C128012 */ lui $s2, %hi(D_80126CDC) # $s2, 0x8012 +/* 0A1F80 800A1380 26526CDC */ addiu $s2, %lo(D_80126CDC) # addiu $s2, $s2, 0x6cdc +/* 0A1F84 800A1384 8E420000 */ lw $v0, ($s2) +/* 0A1F88 800A1388 3C01800F */ lui $at, %hi(D_800E8718) # $at, 0x800f +/* 0A1F8C 800A138C C4208718 */ lwc1 $f0, %lo(D_800E8718)($at) +/* 0A1F90 800A1390 C448064C */ lwc1 $f8, 0x64c($v0) +/* 0A1F94 800A1394 00000000 */ nop +/* 0A1F98 800A1398 46004281 */ sub.s $f10, $f8, $f0 +/* 0A1F9C 800A139C E44A064C */ swc1 $f10, 0x64c($v0) +/* 0A1FA0 800A13A0 8E420000 */ lw $v0, ($s2) +/* 0A1FA4 800A13A4 00000000 */ nop +/* 0A1FA8 800A13A8 C450040C */ lwc1 $f16, 0x40c($v0) +/* 0A1FAC 800A13AC 00000000 */ nop +/* 0A1FB0 800A13B0 46008481 */ sub.s $f18, $f16, $f0 +/* 0A1FB4 800A13B4 10000003 */ b .L800A13C4 +/* 0A1FB8 800A13B8 E452040C */ swc1 $f18, 0x40c($v0) +.L800A13BC: +/* 0A1FBC 800A13BC 0C02917C */ jal func_800A45F0 +/* 0A1FC0 800A13C0 00E02025 */ move $a0, $a3 +.L800A13C4: +/* 0A1FC4 800A13C4 8FA8004C */ lw $t0, 0x4c($sp) +.L800A13C8: +/* 0A1FC8 800A13C8 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A1FCC 800A13CC 8D070064 */ lw $a3, 0x64($t0) +/* 0A1FD0 800A13D0 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A1FD4 800A13D4 0C01ECF4 */ jal func_8007B3D0 +/* 0A1FD8 800A13D8 AFA70044 */ sw $a3, 0x44($sp) +/* 0A1FDC 800A13DC 8FA40044 */ lw $a0, 0x44($sp) +/* 0A1FE0 800A13E0 8FA50050 */ lw $a1, 0x50($sp) +/* 0A1FE4 800A13E4 0C029055 */ jal func_800A4154 +/* 0A1FE8 800A13E8 00000000 */ nop +/* 0A1FEC 800A13EC 8FA4004C */ lw $a0, 0x4c($sp) +/* 0A1FF0 800A13F0 8FA50050 */ lw $a1, 0x50($sp) +/* 0A1FF4 800A13F4 0C029D48 */ jal func_800A7520 +/* 0A1FF8 800A13F8 00000000 */ nop +/* 0A1FFC 800A13FC 0C01A142 */ jal func_80068508 +/* 0A2000 800A1400 00002025 */ move $a0, $zero +/* 0A2004 800A1404 8FBF002C */ lw $ra, 0x2c($sp) +/* 0A2008 800A1408 C7B50010 */ lwc1 $f21, 0x10($sp) +/* 0A200C 800A140C C7B40014 */ lwc1 $f20, 0x14($sp) +/* 0A2010 800A1410 8FB0001C */ lw $s0, 0x1c($sp) +/* 0A2014 800A1414 8FB10020 */ lw $s1, 0x20($sp) +/* 0A2018 800A1418 8FB20024 */ lw $s2, 0x24($sp) +/* 0A201C 800A141C 8FB30028 */ lw $s3, 0x28($sp) +/* 0A2020 800A1420 03E00008 */ jr $ra +/* 0A2024 800A1424 27BD0048 */ addiu $sp, $sp, 0x48 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A1428.s b/asm/non_matchings/unknown_09F8F0/func_800A1428.s new file mode 100644 index 00000000..7cf55e70 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A1428.s @@ -0,0 +1,56 @@ +glabel func_800A1428 +/* 0A2028 800A1428 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0A202C 800A142C AFBF0014 */ sw $ra, 0x14($sp) +/* 0A2030 800A1430 AFA40018 */ sw $a0, 0x18($sp) +/* 0A2034 800A1434 AFA5001C */ sw $a1, 0x1c($sp) +/* 0A2038 800A1438 AFA60020 */ sw $a2, 0x20($sp) +/* 0A203C 800A143C 8CA20064 */ lw $v0, 0x64($a1) +/* 0A2040 800A1440 00000000 */ nop +/* 0A2044 800A1444 804F01D8 */ lb $t7, 0x1d8($v0) +/* 0A2048 800A1448 00000000 */ nop +/* 0A204C 800A144C 15E00025 */ bnez $t7, .L800A14E4 +/* 0A2050 800A1450 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A2054 800A1454 0C01A142 */ jal func_80068508 +/* 0A2058 800A1458 24040001 */ li $a0, 1 +/* 0A205C 800A145C 8FA40018 */ lw $a0, 0x18($sp) +/* 0A2060 800A1460 8FA50020 */ lw $a1, 0x20($sp) +/* 0A2064 800A1464 0C028F39 */ jal func_800A3CE4 +/* 0A2068 800A1468 00000000 */ nop +/* 0A206C 800A146C 8FA4001C */ lw $a0, 0x1c($sp) +/* 0A2070 800A1470 8FA50020 */ lw $a1, 0x20($sp) +/* 0A2074 800A1474 0C029D48 */ jal func_800A7520 +/* 0A2078 800A1478 00000000 */ nop +/* 0A207C 800A147C 3C038012 */ lui $v1, %hi(D_80126CDC) # $v1, 0x8012 +/* 0A2080 800A1480 8FA50020 */ lw $a1, 0x20($sp) +/* 0A2084 800A1484 8C636CDC */ lw $v1, %lo(D_80126CDC)($v1) +/* 0A2088 800A1488 2418007F */ li $t8, 127 +/* 0A208C 800A148C 8064067A */ lb $a0, 0x67a($v1) +/* 0A2090 800A1490 00051040 */ sll $v0, $a1, 1 +/* 0A2094 800A1494 0302C823 */ subu $t9, $t8, $v0 +/* 0A2098 800A1498 0324082A */ slt $at, $t9, $a0 +/* 0A209C 800A149C 14200004 */ bnez $at, .L800A14B0 +/* 0A20A0 800A14A0 3C0B8012 */ lui $t3, %hi(D_80126D37) # $t3, 0x8012 +/* 0A20A4 800A14A4 00824021 */ addu $t0, $a0, $v0 +/* 0A20A8 800A14A8 10000004 */ b .L800A14BC +/* 0A20AC 800A14AC A068067A */ sb $t0, 0x67a($v1) +.L800A14B0: +/* 0A20B0 800A14B0 00824821 */ addu $t1, $a0, $v0 +/* 0A20B4 800A14B4 252AFF01 */ addiu $t2, $t1, -0xff +/* 0A20B8 800A14B8 A06A067A */ sb $t2, 0x67a($v1) +.L800A14BC: +/* 0A20BC 800A14BC 916B6D37 */ lbu $t3, %lo(D_80126D37)($t3) +/* 0A20C0 800A14C0 24010002 */ li $at, 2 +/* 0A20C4 800A14C4 11610004 */ beq $t3, $at, .L800A14D8 +/* 0A20C8 800A14C8 00000000 */ nop +/* 0A20CC 800A14CC 8FA4001C */ lw $a0, 0x1c($sp) +/* 0A20D0 800A14D0 0C02853C */ jal func_800A14F0 +/* 0A20D4 800A14D4 00000000 */ nop +.L800A14D8: +/* 0A20D8 800A14D8 0C01A142 */ jal func_80068508 +/* 0A20DC 800A14DC 00002025 */ move $a0, $zero +/* 0A20E0 800A14E0 8FBF0014 */ lw $ra, 0x14($sp) +.L800A14E4: +/* 0A20E4 800A14E4 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0A20E8 800A14E8 03E00008 */ jr $ra +/* 0A20EC 800A14EC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A14F0.s b/asm/non_matchings/unknown_09F8F0/func_800A14F0.s new file mode 100644 index 00000000..b5502492 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A14F0.s @@ -0,0 +1,324 @@ +glabel func_800A14F0 +/* 0A20F0 800A14F0 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 0A20F4 800A14F4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0A20F8 800A14F8 AFA40060 */ sw $a0, 0x60($sp) +/* 0A20FC 800A14FC AFA50064 */ sw $a1, 0x64($sp) +/* 0A2100 800A1500 0C006E9D */ jal func_8001BA74 +/* 0A2104 800A1504 27A40050 */ addiu $a0, $sp, 0x50 +/* 0A2108 800A1508 3C0E8012 */ lui $t6, %hi(D_80126D37) # $t6, 0x8012 +/* 0A210C 800A150C 91CE6D37 */ lbu $t6, %lo(D_80126D37)($t6) +/* 0A2110 800A1510 8FAB0060 */ lw $t3, 0x60($sp) +/* 0A2114 800A1514 240C0002 */ li $t4, 2 +/* 0A2118 800A1518 158E005C */ bne $t4, $t6, .L800A168C +/* 0A211C 800A151C 00405025 */ move $t2, $v0 +/* 0A2120 800A1520 8FAF0050 */ lw $t7, 0x50($sp) +/* 0A2124 800A1524 00003025 */ move $a2, $zero +/* 0A2128 800A1528 19E00056 */ blez $t7, .L800A1684 +/* 0A212C 800A152C 00003825 */ move $a3, $zero +/* 0A2130 800A1530 31E30003 */ andi $v1, $t7, 3 +/* 0A2134 800A1534 10600017 */ beqz $v1, .L800A1594 +/* 0A2138 800A1538 00604825 */ move $t1, $v1 +/* 0A213C 800A153C 0000C080 */ sll $t8, $zero, 2 +/* 0A2140 800A1540 00582821 */ addu $a1, $v0, $t8 +/* 0A2144 800A1544 2408FFFF */ li $t0, -1 +.L800A1548: +/* 0A2148 800A1548 8CB90000 */ lw $t9, ($a1) +/* 0A214C 800A154C 24E70001 */ addiu $a3, $a3, 1 +/* 0A2150 800A1550 8F230064 */ lw $v1, 0x64($t9) +/* 0A2154 800A1554 00000000 */ nop +/* 0A2158 800A1558 846D0000 */ lh $t5, ($v1) +/* 0A215C 800A155C 00000000 */ nop +/* 0A2160 800A1560 110D0006 */ beq $t0, $t5, .L800A157C +/* 0A2164 800A1564 00000000 */ nop +/* 0A2168 800A1568 806E01D8 */ lb $t6, 0x1d8($v1) +/* 0A216C 800A156C 00000000 */ nop +/* 0A2170 800A1570 11C00002 */ beqz $t6, .L800A157C +/* 0A2174 800A1574 00000000 */ nop +/* 0A2178 800A1578 24C60001 */ addiu $a2, $a2, 1 +.L800A157C: +/* 0A217C 800A157C 1527FFF2 */ bne $t1, $a3, .L800A1548 +/* 0A2180 800A1580 24A50004 */ addiu $a1, $a1, 4 +/* 0A2184 800A1584 8FAF0050 */ lw $t7, 0x50($sp) +/* 0A2188 800A1588 00000000 */ nop +/* 0A218C 800A158C 10EF003D */ beq $a3, $t7, .L800A1684 +/* 0A2190 800A1590 00000000 */ nop +.L800A1594: +/* 0A2194 800A1594 8FB80050 */ lw $t8, 0x50($sp) +/* 0A2198 800A1598 00076880 */ sll $t5, $a3, 2 +/* 0A219C 800A159C 0018C880 */ sll $t9, $t8, 2 +/* 0A21A0 800A15A0 03224821 */ addu $t1, $t9, $v0 +/* 0A21A4 800A15A4 004D2821 */ addu $a1, $v0, $t5 +/* 0A21A8 800A15A8 2408FFFF */ li $t0, -1 +.L800A15AC: +/* 0A21AC 800A15AC 8CAE0000 */ lw $t6, ($a1) +/* 0A21B0 800A15B0 00000000 */ nop +/* 0A21B4 800A15B4 8DC30064 */ lw $v1, 0x64($t6) +/* 0A21B8 800A15B8 00000000 */ nop +/* 0A21BC 800A15BC 846F0000 */ lh $t7, ($v1) +/* 0A21C0 800A15C0 00000000 */ nop +/* 0A21C4 800A15C4 110F0006 */ beq $t0, $t7, .L800A15E0 +/* 0A21C8 800A15C8 00000000 */ nop +/* 0A21CC 800A15CC 807801D8 */ lb $t8, 0x1d8($v1) +/* 0A21D0 800A15D0 00000000 */ nop +/* 0A21D4 800A15D4 13000002 */ beqz $t8, .L800A15E0 +/* 0A21D8 800A15D8 00000000 */ nop +/* 0A21DC 800A15DC 24C60001 */ addiu $a2, $a2, 1 +.L800A15E0: +/* 0A21E0 800A15E0 8CB90004 */ lw $t9, 4($a1) +/* 0A21E4 800A15E4 00000000 */ nop +/* 0A21E8 800A15E8 8F240064 */ lw $a0, 0x64($t9) +/* 0A21EC 800A15EC 00000000 */ nop +/* 0A21F0 800A15F0 848D0000 */ lh $t5, ($a0) +/* 0A21F4 800A15F4 00000000 */ nop +/* 0A21F8 800A15F8 110D0006 */ beq $t0, $t5, .L800A1614 +/* 0A21FC 800A15FC 00000000 */ nop +/* 0A2200 800A1600 808E01D8 */ lb $t6, 0x1d8($a0) +/* 0A2204 800A1604 00000000 */ nop +/* 0A2208 800A1608 11C00002 */ beqz $t6, .L800A1614 +/* 0A220C 800A160C 00000000 */ nop +/* 0A2210 800A1610 24C60001 */ addiu $a2, $a2, 1 +.L800A1614: +/* 0A2214 800A1614 8CAF0008 */ lw $t7, 8($a1) +/* 0A2218 800A1618 00000000 */ nop +/* 0A221C 800A161C 8DE40064 */ lw $a0, 0x64($t7) +/* 0A2220 800A1620 00000000 */ nop +/* 0A2224 800A1624 84980000 */ lh $t8, ($a0) +/* 0A2228 800A1628 00000000 */ nop +/* 0A222C 800A162C 11180006 */ beq $t0, $t8, .L800A1648 +/* 0A2230 800A1630 00000000 */ nop +/* 0A2234 800A1634 809901D8 */ lb $t9, 0x1d8($a0) +/* 0A2238 800A1638 00000000 */ nop +/* 0A223C 800A163C 13200002 */ beqz $t9, .L800A1648 +/* 0A2240 800A1640 00000000 */ nop +/* 0A2244 800A1644 24C60001 */ addiu $a2, $a2, 1 +.L800A1648: +/* 0A2248 800A1648 8CAD000C */ lw $t5, 0xc($a1) +/* 0A224C 800A164C 24A50010 */ addiu $a1, $a1, 0x10 +/* 0A2250 800A1650 8DA40064 */ lw $a0, 0x64($t5) +/* 0A2254 800A1654 00000000 */ nop +/* 0A2258 800A1658 848E0000 */ lh $t6, ($a0) +/* 0A225C 800A165C 00000000 */ nop +/* 0A2260 800A1660 110E0006 */ beq $t0, $t6, .L800A167C +/* 0A2264 800A1664 00000000 */ nop +/* 0A2268 800A1668 808F01D8 */ lb $t7, 0x1d8($a0) +/* 0A226C 800A166C 00000000 */ nop +/* 0A2270 800A1670 11E00002 */ beqz $t7, .L800A167C +/* 0A2274 800A1674 00000000 */ nop +/* 0A2278 800A1678 24C60001 */ addiu $a2, $a2, 1 +.L800A167C: +/* 0A227C 800A167C 14A9FFCB */ bne $a1, $t1, .L800A15AC +/* 0A2280 800A1680 00000000 */ nop +.L800A1684: +/* 0A2284 800A1684 10CC00C4 */ beq $a2, $t4, .L800A1998 +/* 0A2288 800A1688 8FBF0014 */ lw $ra, 0x14($sp) +.L800A168C: +/* 0A228C 800A168C 11600004 */ beqz $t3, .L800A16A0 +/* 0A2290 800A1690 24040001 */ li $a0, 1 +/* 0A2294 800A1694 8D690064 */ lw $t1, 0x64($t3) +/* 0A2298 800A1698 10000006 */ b .L800A16B4 +/* 0A229C 800A169C 8FB90050 */ lw $t9, 0x50($sp) +.L800A16A0: +/* 0A22A0 800A16A0 8C580000 */ lw $t8, ($v0) +/* 0A22A4 800A16A4 00000000 */ nop +/* 0A22A8 800A16A8 8F090064 */ lw $t1, 0x64($t8) +/* 0A22AC 800A16AC 00000000 */ nop +/* 0A22B0 800A16B0 8FB90050 */ lw $t9, 0x50($sp) +.L800A16B4: +/* 0A22B4 800A16B4 24010004 */ li $at, 4 +/* 0A22B8 800A16B8 172100B6 */ bne $t9, $at, .L800A1994 +/* 0A22BC 800A16BC 00003825 */ move $a3, $zero +/* 0A22C0 800A16C0 AFA90054 */ sw $t1, 0x54($sp) +/* 0A22C4 800A16C4 0C01A142 */ jal func_80068508 +/* 0A22C8 800A16C8 AFAA005C */ sw $t2, 0x5c($sp) +/* 0A22CC 800A16CC 444DF800 */ cfc1 $t5, $31 +/* 0A22D0 800A16D0 3C068012 */ lui $a2, %hi(D_80126CDC) # $a2, 0x8012 +/* 0A22D4 800A16D4 24C66CDC */ addiu $a2, %lo(D_80126CDC) # addiu $a2, $a2, 0x6cdc +/* 0A22D8 800A16D8 8CC20000 */ lw $v0, ($a2) +/* 0A22DC 800A16DC 35A10003 */ ori $at, $t5, 3 +/* 0A22E0 800A16E0 38210002 */ xori $at, $at, 2 +/* 0A22E4 800A16E4 44C1F800 */ ctc1 $at, $31 +/* 0A22E8 800A16E8 C444064C */ lwc1 $f4, 0x64c($v0) +/* 0A22EC 800A16EC 8FA90054 */ lw $t1, 0x54($sp) +/* 0A22F0 800A16F0 460021A4 */ cvt.w.s $f6, $f4 +/* 0A22F4 800A16F4 8FA8005C */ lw $t0, 0x5c($sp) +/* 0A22F8 800A16F8 44CDF800 */ ctc1 $t5, $31 +/* 0A22FC 800A16FC 44193000 */ mfc1 $t9, $f6 +/* 0A2300 800A1700 00003825 */ move $a3, $zero +/* 0A2304 800A1704 444FF800 */ cfc1 $t7, $31 +/* 0A2308 800A1708 AFB90044 */ sw $t9, 0x44($sp) +/* 0A230C 800A170C 35E10003 */ ori $at, $t7, 3 +/* 0A2310 800A1710 38210002 */ xori $at, $at, 2 +/* 0A2314 800A1714 44C1F800 */ ctc1 $at, $31 +/* 0A2318 800A1718 C4480650 */ lwc1 $f8, 0x650($v0) +/* 0A231C 800A171C 44998000 */ mtc1 $t9, $f16 +/* 0A2320 800A1720 460042A4 */ cvt.w.s $f10, $f8 +/* 0A2324 800A1724 35A10003 */ ori $at, $t5, 3 +/* 0A2328 800A1728 44CFF800 */ ctc1 $t7, $31 +/* 0A232C 800A172C 440F5000 */ mfc1 $t7, $f10 +/* 0A2330 800A1730 468083A0 */ cvt.s.w $f14, $f16 +/* 0A2334 800A1734 AFAF003C */ sw $t7, 0x3c($sp) +/* 0A2338 800A1738 C452066C */ lwc1 $f18, 0x66c($v0) +/* 0A233C 800A173C 38210002 */ xori $at, $at, 2 +/* 0A2340 800A1740 460E9101 */ sub.s $f4, $f18, $f14 +/* 0A2344 800A1744 448F4000 */ mtc1 $t7, $f8 +/* 0A2348 800A1748 44C1F800 */ ctc1 $at, $31 +/* 0A234C 800A174C 00000000 */ nop +/* 0A2350 800A1750 460021A4 */ cvt.w.s $f6, $f4 +/* 0A2354 800A1754 44CDF800 */ ctc1 $t5, $31 +/* 0A2358 800A1758 440E3000 */ mfc1 $t6, $f6 +/* 0A235C 800A175C 468042A0 */ cvt.s.w $f10, $f8 +/* 0A2360 800A1760 AFAE0040 */ sw $t6, 0x40($sp) +/* 0A2364 800A1764 448E3000 */ mtc1 $t6, $f6 +/* 0A2368 800A1768 E7AA001C */ swc1 $f10, 0x1c($sp) +/* 0A236C 800A176C C4500670 */ lwc1 $f16, 0x670($v0) +/* 0A2370 800A1770 00000000 */ nop +/* 0A2374 800A1774 460A8481 */ sub.s $f18, $f16, $f10 +/* 0A2378 800A1778 4458F800 */ cfc1 $t8, $31 +/* 0A237C 800A177C 00000000 */ nop +/* 0A2380 800A1780 37010003 */ ori $at, $t8, 3 +/* 0A2384 800A1784 38210002 */ xori $at, $at, 2 +/* 0A2388 800A1788 44C1F800 */ ctc1 $at, $31 +/* 0A238C 800A178C 3C01425C */ li $at, 0x425C0000 # 55.000000 +/* 0A2390 800A1790 46009124 */ cvt.w.s $f4, $f18 +/* 0A2394 800A1794 44811000 */ mtc1 $at, $f2 +/* 0A2398 800A1798 3C01800F */ lui $at, %hi(D_800E8724) # $at, 0x800f +/* 0A239C 800A179C 44192000 */ mfc1 $t9, $f4 +/* 0A23A0 800A17A0 44D8F800 */ ctc1 $t8, $31 +/* 0A23A4 800A17A4 C4218720 */ lwc1 $f1, %lo(D_800E8720)($at) +/* 0A23A8 800A17A8 C4208724 */ lwc1 $f0, %lo(D_800E8724)($at) +/* 0A23AC 800A17AC AFB90038 */ sw $t9, 0x38($sp) +/* 0A23B0 800A17B0 46803320 */ cvt.s.w $f12, $f6 +.L800A17B4: +/* 0A23B4 800A17B4 8D0D0000 */ lw $t5, ($t0) +/* 0A23B8 800A17B8 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 +/* 0A23BC 800A17BC 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) +/* 0A23C0 800A17C0 8DA20064 */ lw $v0, 0x64($t5) +/* 0A23C4 800A17C4 28610003 */ slti $at, $v1, 3 +/* 0A23C8 800A17C8 14200006 */ bnez $at, .L800A17E4 +/* 0A23CC 800A17CC 00402025 */ move $a0, $v0 +/* 0A23D0 800A17D0 844F0000 */ lh $t7, ($v0) +/* 0A23D4 800A17D4 85380000 */ lh $t8, ($t1) +/* 0A23D8 800A17D8 00000000 */ nop +/* 0A23DC 800A17DC 15F80017 */ bne $t7, $t8, .L800A183C +/* 0A23E0 800A17E0 2419FFFE */ li $t9, -2 +.L800A17E4: +/* 0A23E4 800A17E4 8FA50064 */ lw $a1, 0x64($sp) +/* 0A23E8 800A17E8 AFA7002C */ sw $a3, 0x2c($sp) +/* 0A23EC 800A17EC AFA80028 */ sw $t0, 0x28($sp) +/* 0A23F0 800A17F0 AFA90054 */ sw $t1, 0x54($sp) +/* 0A23F4 800A17F4 E7AC0018 */ swc1 $f12, 0x18($sp) +/* 0A23F8 800A17F8 0C028669 */ jal func_800A19A4 +/* 0A23FC 800A17FC E7AE0020 */ swc1 $f14, 0x20($sp) +/* 0A2400 800A1800 3C01800F */ lui $at, %hi(D_800E872C) # $at, 0x800f +/* 0A2404 800A1804 C4218728 */ lwc1 $f1, %lo(D_800E8728)($at) +/* 0A2408 800A1808 C420872C */ lwc1 $f0, %lo(D_800E872C)($at) +/* 0A240C 800A180C 3C01425C */ li $at, 0x425C0000 # 55.000000 +/* 0A2410 800A1810 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 +/* 0A2414 800A1814 3C068012 */ lui $a2, %hi(D_80126CDC) # $a2, 0x8012 +/* 0A2418 800A1818 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) +/* 0A241C 800A181C 44811000 */ mtc1 $at, $f2 +/* 0A2420 800A1820 8FA7002C */ lw $a3, 0x2c($sp) +/* 0A2424 800A1824 8FA80028 */ lw $t0, 0x28($sp) +/* 0A2428 800A1828 8FA90054 */ lw $t1, 0x54($sp) +/* 0A242C 800A182C C7AC0018 */ lwc1 $f12, 0x18($sp) +/* 0A2430 800A1830 C7AE0020 */ lwc1 $f14, 0x20($sp) +/* 0A2434 800A1834 24C66CDC */ addiu $a2, %lo(D_80126CDC) # addiu $a2, $a2, 0x6cdc +/* 0A2438 800A1838 2419FFFE */ li $t9, -2 +.L800A183C: +/* 0A243C 800A183C 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e +/* 0A2440 800A1840 AC392834 */ sw $t9, %lo(D_800E2834)($at) +/* 0A2444 800A1844 8CC20000 */ lw $v0, ($a2) +/* 0A2448 800A1848 24010001 */ li $at, 1 +/* 0A244C 800A184C 1461000A */ bne $v1, $at, .L800A1878 +/* 0A2450 800A1850 24E70004 */ addiu $a3, $a3, 4 +/* 0A2454 800A1854 3C014288 */ li $at, 0x42880000 # 68.000000 +/* 0A2458 800A1858 44818000 */ mtc1 $at, $f16 +/* 0A245C 800A185C C448064C */ lwc1 $f8, 0x64c($v0) +/* 0A2460 800A1860 00000000 */ nop +/* 0A2464 800A1864 46104280 */ add.s $f10, $f8, $f16 +/* 0A2468 800A1868 E44A064C */ swc1 $f10, 0x64c($v0) +/* 0A246C 800A186C 8CC20000 */ lw $v0, ($a2) +/* 0A2470 800A1870 1000002B */ b .L800A1920 +/* 0A2474 800A1874 C452064C */ lwc1 $f18, 0x64c($v0) +.L800A1878: +/* 0A2478 800A1878 24010002 */ li $at, 2 +/* 0A247C 800A187C 14610027 */ bne $v1, $at, .L800A191C +/* 0A2480 800A1880 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 +/* 0A2484 800A1884 E44E064C */ swc1 $f14, 0x64c($v0) +/* 0A2488 800A1888 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) +/* 0A248C 800A188C 00000000 */ nop +/* 0A2490 800A1890 15C00014 */ bnez $t6, .L800A18E4 +/* 0A2494 800A1894 00000000 */ nop +/* 0A2498 800A1898 8CC20000 */ lw $v0, ($a2) +/* 0A249C 800A189C 00000000 */ nop +/* 0A24A0 800A18A0 C4520650 */ lwc1 $f18, 0x650($v0) +/* 0A24A4 800A18A4 00000000 */ nop +/* 0A24A8 800A18A8 46009121 */ cvt.d.s $f4, $f18 +/* 0A24AC 800A18AC 46202180 */ add.d $f6, $f4, $f0 +/* 0A24B0 800A18B0 46203220 */ cvt.s.d $f8, $f6 +/* 0A24B4 800A18B4 E4480650 */ swc1 $f8, 0x650($v0) +/* 0A24B8 800A18B8 8CC20000 */ lw $v0, ($a2) +/* 0A24BC 800A18BC 00000000 */ nop +/* 0A24C0 800A18C0 C4500670 */ lwc1 $f16, 0x670($v0) +/* 0A24C4 800A18C4 00000000 */ nop +/* 0A24C8 800A18C8 460082A1 */ cvt.d.s $f10, $f16 +/* 0A24CC 800A18CC 46205480 */ add.d $f18, $f10, $f0 +/* 0A24D0 800A18D0 46209120 */ cvt.s.d $f4, $f18 +/* 0A24D4 800A18D4 E4440670 */ swc1 $f4, 0x670($v0) +/* 0A24D8 800A18D8 8CC20000 */ lw $v0, ($a2) +/* 0A24DC 800A18DC 10000010 */ b .L800A1920 +/* 0A24E0 800A18E0 C452064C */ lwc1 $f18, 0x64c($v0) +.L800A18E4: +/* 0A24E4 800A18E4 8CC20000 */ lw $v0, ($a2) +/* 0A24E8 800A18E8 00000000 */ nop +/* 0A24EC 800A18EC C4460650 */ lwc1 $f6, 0x650($v0) +/* 0A24F0 800A18F0 00000000 */ nop +/* 0A24F4 800A18F4 46023200 */ add.s $f8, $f6, $f2 +/* 0A24F8 800A18F8 E4480650 */ swc1 $f8, 0x650($v0) +/* 0A24FC 800A18FC 8CC20000 */ lw $v0, ($a2) +/* 0A2500 800A1900 00000000 */ nop +/* 0A2504 800A1904 C4500670 */ lwc1 $f16, 0x670($v0) +/* 0A2508 800A1908 00000000 */ nop +/* 0A250C 800A190C 46028280 */ add.s $f10, $f16, $f2 +/* 0A2510 800A1910 E44A0670 */ swc1 $f10, 0x670($v0) +/* 0A2514 800A1914 8CC20000 */ lw $v0, ($a2) +/* 0A2518 800A1918 00000000 */ nop +.L800A191C: +/* 0A251C 800A191C C452064C */ lwc1 $f18, 0x64c($v0) +.L800A1920: +/* 0A2520 800A1920 24010010 */ li $at, 16 +/* 0A2524 800A1924 460C9100 */ add.s $f4, $f18, $f12 +/* 0A2528 800A1928 25080004 */ addiu $t0, $t0, 4 +/* 0A252C 800A192C 14E1FFA1 */ bne $a3, $at, .L800A17B4 +/* 0A2530 800A1930 E444066C */ swc1 $f4, 0x66c($v0) +/* 0A2534 800A1934 8CCD0000 */ lw $t5, ($a2) +/* 0A2538 800A1938 00002025 */ move $a0, $zero +/* 0A253C 800A193C E5AE064C */ swc1 $f14, 0x64c($t5) +/* 0A2540 800A1940 8FB80040 */ lw $t8, 0x40($sp) +/* 0A2544 800A1944 8FAF0044 */ lw $t7, 0x44($sp) +/* 0A2548 800A1948 8CCE0000 */ lw $t6, ($a2) +/* 0A254C 800A194C 01F8C821 */ addu $t9, $t7, $t8 +/* 0A2550 800A1950 44993000 */ mtc1 $t9, $f6 +/* 0A2554 800A1954 00000000 */ nop +/* 0A2558 800A1958 46803220 */ cvt.s.w $f8, $f6 +/* 0A255C 800A195C E5C8066C */ swc1 $f8, 0x66c($t6) +/* 0A2560 800A1960 8CCD0000 */ lw $t5, ($a2) +/* 0A2564 800A1964 C7B0001C */ lwc1 $f16, 0x1c($sp) +/* 0A2568 800A1968 00000000 */ nop +/* 0A256C 800A196C E5B00650 */ swc1 $f16, 0x650($t5) +/* 0A2570 800A1970 8FB80038 */ lw $t8, 0x38($sp) +/* 0A2574 800A1974 8FAF003C */ lw $t7, 0x3c($sp) +/* 0A2578 800A1978 8CCE0000 */ lw $t6, ($a2) +/* 0A257C 800A197C 01F8C821 */ addu $t9, $t7, $t8 +/* 0A2580 800A1980 44995000 */ mtc1 $t9, $f10 +/* 0A2584 800A1984 00000000 */ nop +/* 0A2588 800A1988 468054A0 */ cvt.s.w $f18, $f10 +/* 0A258C 800A198C 0C01A142 */ jal func_80068508 +/* 0A2590 800A1990 E5D20670 */ swc1 $f18, 0x670($t6) +.L800A1994: +/* 0A2594 800A1994 8FBF0014 */ lw $ra, 0x14($sp) +.L800A1998: +/* 0A2598 800A1998 27BD0060 */ addiu $sp, $sp, 0x60 +/* 0A259C 800A199C 03E00008 */ jr $ra +/* 0A25A0 800A19A0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A19A4.s b/asm/non_matchings/unknown_09F8F0/func_800A19A4.s new file mode 100644 index 00000000..8d1d6245 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A19A4.s @@ -0,0 +1,165 @@ +glabel func_800A19A4 +/* 0A25A4 800A19A4 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 0A25A8 800A19A8 AFB20028 */ sw $s2, 0x28($sp) +/* 0A25AC 800A19AC 444EF800 */ cfc1 $t6, $31 +/* 0A25B0 800A19B0 3C128012 */ lui $s2, %hi(D_80126CDC) # $s2, 0x8012 +/* 0A25B4 800A19B4 26526CDC */ addiu $s2, %lo(D_80126CDC) # addiu $s2, $s2, 0x6cdc +/* 0A25B8 800A19B8 8E420000 */ lw $v0, ($s2) +/* 0A25BC 800A19BC 35C10003 */ ori $at, $t6, 3 +/* 0A25C0 800A19C0 AFBF003C */ sw $ra, 0x3c($sp) +/* 0A25C4 800A19C4 AFB60038 */ sw $s6, 0x38($sp) +/* 0A25C8 800A19C8 AFB50034 */ sw $s5, 0x34($sp) +/* 0A25CC 800A19CC AFB40030 */ sw $s4, 0x30($sp) +/* 0A25D0 800A19D0 AFB3002C */ sw $s3, 0x2c($sp) +/* 0A25D4 800A19D4 AFB10024 */ sw $s1, 0x24($sp) +/* 0A25D8 800A19D8 AFB00020 */ sw $s0, 0x20($sp) +/* 0A25DC 800A19DC E7B50018 */ swc1 $f21, 0x18($sp) +/* 0A25E0 800A19E0 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 0A25E4 800A19E4 AFA50054 */ sw $a1, 0x54($sp) +/* 0A25E8 800A19E8 38210002 */ xori $at, $at, 2 +/* 0A25EC 800A19EC 44C1F800 */ ctc1 $at, $31 +/* 0A25F0 800A19F0 C444066C */ lwc1 $f4, 0x66c($v0) +/* 0A25F4 800A19F4 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 +/* 0A25F8 800A19F8 460021A4 */ cvt.w.s $f6, $f4 +/* 0A25FC 800A19FC 3C018012 */ lui $at, %hi(D_80126CD5) # $at, 0x8012 +/* 0A2600 800A1A00 440F3000 */ mfc1 $t7, $f6 +/* 0A2604 800A1A04 24080001 */ li $t0, 1 +/* 0A2608 800A1A08 AFAF0040 */ sw $t7, 0x40($sp) +/* 0A260C 800A1A0C 80980003 */ lb $t8, 3($a0) +/* 0A2610 800A1A10 44CEF800 */ ctc1 $t6, $31 +/* 0A2614 800A1A14 27190038 */ addiu $t9, $t8, 0x38 +/* 0A2618 800A1A18 A4590646 */ sh $t9, 0x646($v0) +/* 0A261C 800A1A1C 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) +/* 0A2620 800A1A20 A0286CD5 */ sb $t0, %lo(D_80126CD5)($at) +/* 0A2624 800A1A24 28610003 */ slti $at, $v1, 3 +/* 0A2628 800A1A28 14200008 */ bnez $at, .L800A1A4C +/* 0A262C 800A1A2C 00809825 */ move $s3, $a0 +/* 0A2630 800A1A30 24110003 */ li $s1, 3 +/* 0A2634 800A1A34 1623000F */ bne $s1, $v1, .L800A1A74 +/* 0A2638 800A1A38 00000000 */ nop +/* 0A263C 800A1A3C 84890000 */ lh $t1, ($a0) +/* 0A2640 800A1A40 2401FFFF */ li $at, -1 +/* 0A2644 800A1A44 1521000B */ bne $t1, $at, .L800A1A74 +/* 0A2648 800A1A48 00000000 */ nop +.L800A1A4C: +/* 0A264C 800A1A4C 8E470000 */ lw $a3, ($s2) +/* 0A2650 800A1A50 3C148012 */ lui $s4, 0x8012 +/* 0A2654 800A1A54 3C158012 */ lui $s5, 0x8012 +/* 0A2658 800A1A58 3C168012 */ lui $s6, 0x8012 +/* 0A265C 800A1A5C 26C66D04 */ addiu $a2, $s6, 0x6d04 +/* 0A2660 800A1A60 26A56D00 */ addiu $a1, $s5, 0x6d00 +/* 0A2664 800A1A64 26846CFC */ addiu $a0, $s4, 0x6cfc +/* 0A2668 800A1A68 24110003 */ li $s1, 3 +/* 0A266C 800A1A6C 0C02A980 */ jal func_800AA600 +/* 0A2670 800A1A70 24E70640 */ addiu $a3, $a3, 0x640 +.L800A1A74: +/* 0A2674 800A1A74 8E4A0000 */ lw $t2, ($s2) +/* 0A2678 800A1A78 3C148012 */ lui $s4, %hi(D_80126CFC) # $s4, 0x8012 +/* 0A267C 800A1A7C 8142067A */ lb $v0, 0x67a($t2) +/* 0A2680 800A1A80 3C158012 */ lui $s5, %hi(D_80126D00) # $s5, 0x8012 +/* 0A2684 800A1A84 3C168012 */ lui $s6, %hi(D_80126D04) # $s6, 0x8012 +/* 0A2688 800A1A88 26D66D04 */ addiu $s6, %lo(D_80126D04) # addiu $s6, $s6, 0x6d04 +/* 0A268C 800A1A8C 26B56D00 */ addiu $s5, %lo(D_80126D00) # addiu $s5, $s5, 0x6d00 +/* 0A2690 800A1A90 04410005 */ bgez $v0, .L800A1AA8 +/* 0A2694 800A1A94 26946CFC */ addiu $s4, %lo(D_80126CFC) # addiu $s4, $s4, 0x6cfc +/* 0A2698 800A1A98 00025840 */ sll $t3, $v0, 1 +/* 0A269C 800A1A9C 256C0100 */ addiu $t4, $t3, 0x100 +/* 0A26A0 800A1AA0 10000005 */ b .L800A1AB8 +/* 0A26A4 800A1AA4 AFAC0044 */ sw $t4, 0x44($sp) +.L800A1AA8: +/* 0A26A8 800A1AA8 00026840 */ sll $t5, $v0, 1 +/* 0A26AC 800A1AAC 240E00FF */ li $t6, 255 +/* 0A26B0 800A1AB0 01CD7823 */ subu $t7, $t6, $t5 +/* 0A26B4 800A1AB4 AFAF0044 */ sw $t7, 0x44($sp) +.L800A1AB8: +/* 0A26B8 800A1AB8 8FB80044 */ lw $t8, 0x44($sp) +/* 0A26BC 800A1ABC 241900FE */ li $t9, 254 +/* 0A26C0 800A1AC0 2B0100FF */ slti $at, $t8, 0xff +/* 0A26C4 800A1AC4 14200002 */ bnez $at, .L800A1AD0 +/* 0A26C8 800A1AC8 00000000 */ nop +/* 0A26CC 800A1ACC AFB90044 */ sw $t9, 0x44($sp) +.L800A1AD0: +/* 0A26D0 800A1AD0 82680193 */ lb $t0, 0x193($s3) +/* 0A26D4 800A1AD4 00008025 */ move $s0, $zero +/* 0A26D8 800A1AD8 19000016 */ blez $t0, .L800A1B34 +/* 0A26DC 800A1ADC 3C014140 */ li $at, 0x41400000 # 12.000000 +/* 0A26E0 800A1AE0 4481A000 */ mtc1 $at, $f20 +/* 0A26E4 800A1AE4 00000000 */ nop +.L800A1AE8: +/* 0A26E8 800A1AE8 8E470000 */ lw $a3, ($s2) +/* 0A26EC 800A1AEC 02802025 */ move $a0, $s4 +/* 0A26F0 800A1AF0 02A02825 */ move $a1, $s5 +/* 0A26F4 800A1AF4 02C03025 */ move $a2, $s6 +/* 0A26F8 800A1AF8 0C02A980 */ jal func_800AA600 +/* 0A26FC 800A1AFC 24E70660 */ addiu $a3, $a3, 0x660 +/* 0A2700 800A1B00 8E420000 */ lw $v0, ($s2) +/* 0A2704 800A1B04 26100001 */ addiu $s0, $s0, 1 +/* 0A2708 800A1B08 C448066C */ lwc1 $f8, 0x66c($v0) +/* 0A270C 800A1B0C 00000000 */ nop +/* 0A2710 800A1B10 46144280 */ add.s $f10, $f8, $f20 +/* 0A2714 800A1B14 E44A066C */ swc1 $f10, 0x66c($v0) +/* 0A2718 800A1B18 82690193 */ lb $t1, 0x193($s3) +/* 0A271C 800A1B1C 00000000 */ nop +/* 0A2720 800A1B20 0209082A */ slt $at, $s0, $t1 +/* 0A2724 800A1B24 10200004 */ beqz $at, .L800A1B38 +/* 0A2728 800A1B28 3C014140 */ lui $at, 0x4140 +/* 0A272C 800A1B2C 1611FFEE */ bne $s0, $s1, .L800A1AE8 +/* 0A2730 800A1B30 00000000 */ nop +.L800A1B34: +/* 0A2734 800A1B34 3C014140 */ li $at, 0x41400000 # 12.000000 +.L800A1B38: +/* 0A2738 800A1B38 8FAA0044 */ lw $t2, 0x44($sp) +/* 0A273C 800A1B3C 4481A000 */ mtc1 $at, $f20 +/* 0A2740 800A1B40 2401FF00 */ li $at, -256 +/* 0A2744 800A1B44 01415825 */ or $t3, $t2, $at +/* 0A2748 800A1B48 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e +/* 0A274C 800A1B4C AC2B2834 */ sw $t3, %lo(D_800E2834)($at) +/* 0A2750 800A1B50 826C01CF */ lb $t4, 0x1cf($s3) +/* 0A2754 800A1B54 02008825 */ move $s1, $s0 +/* 0A2758 800A1B58 19800017 */ blez $t4, .L800A1BB8 +/* 0A275C 800A1B5C 00008025 */ move $s0, $zero +/* 0A2760 800A1B60 2A210003 */ slti $at, $s1, 3 +/* 0A2764 800A1B64 10200015 */ beqz $at, .L800A1BBC +/* 0A2768 800A1B68 8FAD0040 */ lw $t5, 0x40($sp) +.L800A1B6C: +/* 0A276C 800A1B6C 8E470000 */ lw $a3, ($s2) +/* 0A2770 800A1B70 02802025 */ move $a0, $s4 +/* 0A2774 800A1B74 02A02825 */ move $a1, $s5 +/* 0A2778 800A1B78 02C03025 */ move $a2, $s6 +/* 0A277C 800A1B7C 0C02A980 */ jal func_800AA600 +/* 0A2780 800A1B80 24E70660 */ addiu $a3, $a3, 0x660 +/* 0A2784 800A1B84 8E420000 */ lw $v0, ($s2) +/* 0A2788 800A1B88 26100001 */ addiu $s0, $s0, 1 +/* 0A278C 800A1B8C C450066C */ lwc1 $f16, 0x66c($v0) +/* 0A2790 800A1B90 26310001 */ addiu $s1, $s1, 1 +/* 0A2794 800A1B94 46148480 */ add.s $f18, $f16, $f20 +/* 0A2798 800A1B98 E452066C */ swc1 $f18, 0x66c($v0) +/* 0A279C 800A1B9C 826E01CF */ lb $t6, 0x1cf($s3) +/* 0A27A0 800A1BA0 00000000 */ nop +/* 0A27A4 800A1BA4 020E082A */ slt $at, $s0, $t6 +/* 0A27A8 800A1BA8 10200003 */ beqz $at, .L800A1BB8 +/* 0A27AC 800A1BAC 2A210003 */ slti $at, $s1, 3 +/* 0A27B0 800A1BB0 1420FFEE */ bnez $at, .L800A1B6C +/* 0A27B4 800A1BB4 00000000 */ nop +.L800A1BB8: +/* 0A27B8 800A1BB8 8FAD0040 */ lw $t5, 0x40($sp) +.L800A1BBC: +/* 0A27BC 800A1BBC 8E4F0000 */ lw $t7, ($s2) +/* 0A27C0 800A1BC0 448D2000 */ mtc1 $t5, $f4 +/* 0A27C4 800A1BC4 3C018012 */ lui $at, %hi(D_80126CD5) # $at, 0x8012 +/* 0A27C8 800A1BC8 468021A0 */ cvt.s.w $f6, $f4 +/* 0A27CC 800A1BCC E5E6066C */ swc1 $f6, 0x66c($t7) +/* 0A27D0 800A1BD0 8FBF003C */ lw $ra, 0x3c($sp) +/* 0A27D4 800A1BD4 8FB60038 */ lw $s6, 0x38($sp) +/* 0A27D8 800A1BD8 8FB50034 */ lw $s5, 0x34($sp) +/* 0A27DC 800A1BDC 8FB40030 */ lw $s4, 0x30($sp) +/* 0A27E0 800A1BE0 8FB3002C */ lw $s3, 0x2c($sp) +/* 0A27E4 800A1BE4 8FB20028 */ lw $s2, 0x28($sp) +/* 0A27E8 800A1BE8 8FB10024 */ lw $s1, 0x24($sp) +/* 0A27EC 800A1BEC 8FB00020 */ lw $s0, 0x20($sp) +/* 0A27F0 800A1BF0 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 0A27F4 800A1BF4 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 0A27F8 800A1BF8 A0206CD5 */ sb $zero, %lo(D_80126CD5)($at) +/* 0A27FC 800A1BFC 03E00008 */ jr $ra +/* 0A2800 800A1C00 27BD0050 */ addiu $sp, $sp, 0x50 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A1C04.s b/asm/non_matchings/unknown_09F8F0/func_800A1C04.s new file mode 100644 index 00000000..ae32e2b5 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A1C04.s @@ -0,0 +1,162 @@ +glabel func_800A1C04 +/* 0A2804 800A1C04 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 0A2808 800A1C08 3C0F8012 */ lui $t7, %hi(D_80126D37) # $t7, 0x8012 +/* 0A280C 800A1C0C 91EF6D37 */ lbu $t7, %lo(D_80126D37)($t7) +/* 0A2810 800A1C10 AFBF0014 */ sw $ra, 0x14($sp) +/* 0A2814 800A1C14 AFA40040 */ sw $a0, 0x40($sp) +/* 0A2818 800A1C18 AFA50044 */ sw $a1, 0x44($sp) +/* 0A281C 800A1C1C AFA60048 */ sw $a2, 0x48($sp) +/* 0A2820 800A1C20 8CA70064 */ lw $a3, 0x64($a1) +/* 0A2824 800A1C24 24010001 */ li $at, 1 +/* 0A2828 800A1C28 15E10005 */ bne $t7, $at, .L800A1C40 +/* 0A282C 800A1C2C 24040001 */ li $a0, 1 +/* 0A2830 800A1C30 80F801D8 */ lb $t8, 0x1d8($a3) +/* 0A2834 800A1C34 00000000 */ nop +/* 0A2838 800A1C38 17000080 */ bnez $t8, .L800A1E3C +/* 0A283C 800A1C3C 8FBF0014 */ lw $ra, 0x14($sp) +.L800A1C40: +/* 0A2840 800A1C40 0C01A142 */ jal func_80068508 +/* 0A2844 800A1C44 AFA70038 */ sw $a3, 0x38($sp) +/* 0A2848 800A1C48 8FA40040 */ lw $a0, 0x40($sp) +/* 0A284C 800A1C4C 8FA50048 */ lw $a1, 0x48($sp) +/* 0A2850 800A1C50 0C028F39 */ jal func_800A3CE4 +/* 0A2854 800A1C54 00000000 */ nop +/* 0A2858 800A1C58 8FA40044 */ lw $a0, 0x44($sp) +/* 0A285C 800A1C5C 8FA50048 */ lw $a1, 0x48($sp) +/* 0A2860 800A1C60 0C029D48 */ jal func_800A7520 +/* 0A2864 800A1C64 00000000 */ nop +/* 0A2868 800A1C68 0C006E9D */ jal func_8001BA74 +/* 0A286C 800A1C6C 27A40034 */ addiu $a0, $sp, 0x34 +/* 0A2870 800A1C70 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 +/* 0A2874 800A1C74 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) +/* 0A2878 800A1C78 8FA70038 */ lw $a3, 0x38($sp) +/* 0A287C 800A1C7C 24010001 */ li $at, 1 +/* 0A2880 800A1C80 10610005 */ beq $v1, $at, .L800A1C98 +/* 0A2884 800A1C84 240A0002 */ li $t2, 2 +/* 0A2888 800A1C88 106A000A */ beq $v1, $t2, .L800A1CB4 +/* 0A288C 800A1C8C 8FB90034 */ lw $t9, 0x34($sp) +/* 0A2890 800A1C90 10000065 */ b .L800A1E28 +/* 0A2894 800A1C94 8FA50048 */ lw $a1, 0x48($sp) +.L800A1C98: +/* 0A2898 800A1C98 8FA40044 */ lw $a0, 0x44($sp) +/* 0A289C 800A1C9C 8FA50048 */ lw $a1, 0x48($sp) +/* 0A28A0 800A1CA0 0C028792 */ jal func_800A1E48 +/* 0A28A4 800A1CA4 00000000 */ nop +/* 0A28A8 800A1CA8 10000061 */ b .L800A1E30 +/* 0A28AC 800A1CAC 00000000 */ nop +/* 0A28B0 800A1CB0 8FB90034 */ lw $t9, 0x34($sp) +.L800A1CB4: +/* 0A28B4 800A1CB4 00002825 */ move $a1, $zero +/* 0A28B8 800A1CB8 1B200056 */ blez $t9, .L800A1E14 +/* 0A28BC 800A1CBC 00003025 */ move $a2, $zero +/* 0A28C0 800A1CC0 33230003 */ andi $v1, $t9, 3 +/* 0A28C4 800A1CC4 10600017 */ beqz $v1, .L800A1D24 +/* 0A28C8 800A1CC8 00604825 */ move $t1, $v1 +/* 0A28CC 800A1CCC 00005880 */ sll $t3, $zero, 2 +/* 0A28D0 800A1CD0 004B2021 */ addu $a0, $v0, $t3 +/* 0A28D4 800A1CD4 2408FFFF */ li $t0, -1 +.L800A1CD8: +/* 0A28D8 800A1CD8 8C8C0000 */ lw $t4, ($a0) +/* 0A28DC 800A1CDC 24C60001 */ addiu $a2, $a2, 1 +/* 0A28E0 800A1CE0 8D830064 */ lw $v1, 0x64($t4) +/* 0A28E4 800A1CE4 00000000 */ nop +/* 0A28E8 800A1CE8 846D0000 */ lh $t5, ($v1) +/* 0A28EC 800A1CEC 00000000 */ nop +/* 0A28F0 800A1CF0 110D0006 */ beq $t0, $t5, .L800A1D0C +/* 0A28F4 800A1CF4 00000000 */ nop +/* 0A28F8 800A1CF8 806E01D8 */ lb $t6, 0x1d8($v1) +/* 0A28FC 800A1CFC 00000000 */ nop +/* 0A2900 800A1D00 11C00002 */ beqz $t6, .L800A1D0C +/* 0A2904 800A1D04 00000000 */ nop +/* 0A2908 800A1D08 24A50001 */ addiu $a1, $a1, 1 +.L800A1D0C: +/* 0A290C 800A1D0C 1526FFF2 */ bne $t1, $a2, .L800A1CD8 +/* 0A2910 800A1D10 24840004 */ addiu $a0, $a0, 4 +/* 0A2914 800A1D14 8FAF0034 */ lw $t7, 0x34($sp) +/* 0A2918 800A1D18 00000000 */ nop +/* 0A291C 800A1D1C 10CF003D */ beq $a2, $t7, .L800A1E14 +/* 0A2920 800A1D20 00000000 */ nop +.L800A1D24: +/* 0A2924 800A1D24 8FB80034 */ lw $t8, 0x34($sp) +/* 0A2928 800A1D28 00065880 */ sll $t3, $a2, 2 +/* 0A292C 800A1D2C 0018C880 */ sll $t9, $t8, 2 +/* 0A2930 800A1D30 03224821 */ addu $t1, $t9, $v0 +/* 0A2934 800A1D34 004B2021 */ addu $a0, $v0, $t3 +/* 0A2938 800A1D38 2408FFFF */ li $t0, -1 +.L800A1D3C: +/* 0A293C 800A1D3C 8C8C0000 */ lw $t4, ($a0) +/* 0A2940 800A1D40 00000000 */ nop +/* 0A2944 800A1D44 8D830064 */ lw $v1, 0x64($t4) +/* 0A2948 800A1D48 00000000 */ nop +/* 0A294C 800A1D4C 846D0000 */ lh $t5, ($v1) +/* 0A2950 800A1D50 00000000 */ nop +/* 0A2954 800A1D54 110D0006 */ beq $t0, $t5, .L800A1D70 +/* 0A2958 800A1D58 00000000 */ nop +/* 0A295C 800A1D5C 806E01D8 */ lb $t6, 0x1d8($v1) +/* 0A2960 800A1D60 00000000 */ nop +/* 0A2964 800A1D64 11C00002 */ beqz $t6, .L800A1D70 +/* 0A2968 800A1D68 00000000 */ nop +/* 0A296C 800A1D6C 24A50001 */ addiu $a1, $a1, 1 +.L800A1D70: +/* 0A2970 800A1D70 8C8F0004 */ lw $t7, 4($a0) +/* 0A2974 800A1D74 00000000 */ nop +/* 0A2978 800A1D78 8DE70064 */ lw $a3, 0x64($t7) +/* 0A297C 800A1D7C 00000000 */ nop +/* 0A2980 800A1D80 84F80000 */ lh $t8, ($a3) +/* 0A2984 800A1D84 00000000 */ nop +/* 0A2988 800A1D88 11180006 */ beq $t0, $t8, .L800A1DA4 +/* 0A298C 800A1D8C 00000000 */ nop +/* 0A2990 800A1D90 80F901D8 */ lb $t9, 0x1d8($a3) +/* 0A2994 800A1D94 00000000 */ nop +/* 0A2998 800A1D98 13200002 */ beqz $t9, .L800A1DA4 +/* 0A299C 800A1D9C 00000000 */ nop +/* 0A29A0 800A1DA0 24A50001 */ addiu $a1, $a1, 1 +.L800A1DA4: +/* 0A29A4 800A1DA4 8C8B0008 */ lw $t3, 8($a0) +/* 0A29A8 800A1DA8 00000000 */ nop +/* 0A29AC 800A1DAC 8D670064 */ lw $a3, 0x64($t3) +/* 0A29B0 800A1DB0 00000000 */ nop +/* 0A29B4 800A1DB4 84EC0000 */ lh $t4, ($a3) +/* 0A29B8 800A1DB8 00000000 */ nop +/* 0A29BC 800A1DBC 110C0006 */ beq $t0, $t4, .L800A1DD8 +/* 0A29C0 800A1DC0 00000000 */ nop +/* 0A29C4 800A1DC4 80ED01D8 */ lb $t5, 0x1d8($a3) +/* 0A29C8 800A1DC8 00000000 */ nop +/* 0A29CC 800A1DCC 11A00002 */ beqz $t5, .L800A1DD8 +/* 0A29D0 800A1DD0 00000000 */ nop +/* 0A29D4 800A1DD4 24A50001 */ addiu $a1, $a1, 1 +.L800A1DD8: +/* 0A29D8 800A1DD8 8C8E000C */ lw $t6, 0xc($a0) +/* 0A29DC 800A1DDC 24840010 */ addiu $a0, $a0, 0x10 +/* 0A29E0 800A1DE0 8DC70064 */ lw $a3, 0x64($t6) +/* 0A29E4 800A1DE4 00000000 */ nop +/* 0A29E8 800A1DE8 84EF0000 */ lh $t7, ($a3) +/* 0A29EC 800A1DEC 00000000 */ nop +/* 0A29F0 800A1DF0 110F0006 */ beq $t0, $t7, .L800A1E0C +/* 0A29F4 800A1DF4 00000000 */ nop +/* 0A29F8 800A1DF8 80F801D8 */ lb $t8, 0x1d8($a3) +/* 0A29FC 800A1DFC 00000000 */ nop +/* 0A2A00 800A1E00 13000002 */ beqz $t8, .L800A1E0C +/* 0A2A04 800A1E04 00000000 */ nop +/* 0A2A08 800A1E08 24A50001 */ addiu $a1, $a1, 1 +.L800A1E0C: +/* 0A2A0C 800A1E0C 1489FFCB */ bne $a0, $t1, .L800A1D3C +/* 0A2A10 800A1E10 00000000 */ nop +.L800A1E14: +/* 0A2A14 800A1E14 14AA0006 */ bne $a1, $t2, .L800A1E30 +/* 0A2A18 800A1E18 00000000 */ nop +/* 0A2A1C 800A1E1C 10000007 */ b .L800A1E3C +/* 0A2A20 800A1E20 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A2A24 800A1E24 8FA50048 */ lw $a1, 0x48($sp) +.L800A1E28: +/* 0A2A28 800A1E28 0C029055 */ jal func_800A4154 +/* 0A2A2C 800A1E2C 00E02025 */ move $a0, $a3 +.L800A1E30: +/* 0A2A30 800A1E30 0C01A142 */ jal func_80068508 +/* 0A2A34 800A1E34 00002025 */ move $a0, $zero +/* 0A2A38 800A1E38 8FBF0014 */ lw $ra, 0x14($sp) +.L800A1E3C: +/* 0A2A3C 800A1E3C 27BD0040 */ addiu $sp, $sp, 0x40 +/* 0A2A40 800A1E40 03E00008 */ jr $ra +/* 0A2A44 800A1E44 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A1E48.s b/asm/non_matchings/unknown_09F8F0/func_800A1E48.s new file mode 100644 index 00000000..f69778be --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A1E48.s @@ -0,0 +1,310 @@ +glabel func_800A1E48 +/* 0A2A48 800A1E48 27BDFF78 */ addiu $sp, $sp, -0x88 +/* 0A2A4C 800A1E4C AFB00020 */ sw $s0, 0x20($sp) +/* 0A2A50 800A1E50 00808025 */ move $s0, $a0 +/* 0A2A54 800A1E54 AFBF0044 */ sw $ra, 0x44($sp) +/* 0A2A58 800A1E58 AFBE0040 */ sw $fp, 0x40($sp) +/* 0A2A5C 800A1E5C AFB7003C */ sw $s7, 0x3c($sp) +/* 0A2A60 800A1E60 AFB60038 */ sw $s6, 0x38($sp) +/* 0A2A64 800A1E64 AFB50034 */ sw $s5, 0x34($sp) +/* 0A2A68 800A1E68 AFB40030 */ sw $s4, 0x30($sp) +/* 0A2A6C 800A1E6C AFB3002C */ sw $s3, 0x2c($sp) +/* 0A2A70 800A1E70 AFB20028 */ sw $s2, 0x28($sp) +/* 0A2A74 800A1E74 AFB10024 */ sw $s1, 0x24($sp) +/* 0A2A78 800A1E78 E7B50018 */ swc1 $f21, 0x18($sp) +/* 0A2A7C 800A1E7C E7B4001C */ swc1 $f20, 0x1c($sp) +/* 0A2A80 800A1E80 AFA5008C */ sw $a1, 0x8c($sp) +/* 0A2A84 800A1E84 0C006E9D */ jal func_8001BA74 +/* 0A2A88 800A1E88 27A40078 */ addiu $a0, $sp, 0x78 +/* 0A2A8C 800A1E8C 12000004 */ beqz $s0, .L800A1EA0 +/* 0A2A90 800A1E90 0040A825 */ move $s5, $v0 +/* 0A2A94 800A1E94 8E070064 */ lw $a3, 0x64($s0) +/* 0A2A98 800A1E98 10000006 */ b .L800A1EB4 +/* 0A2A9C 800A1E9C 24040001 */ li $a0, 1 +.L800A1EA0: +/* 0A2AA0 800A1EA0 8C4E0000 */ lw $t6, ($v0) +/* 0A2AA4 800A1EA4 00000000 */ nop +/* 0A2AA8 800A1EA8 8DC70064 */ lw $a3, 0x64($t6) +/* 0A2AAC 800A1EAC 00000000 */ nop +/* 0A2AB0 800A1EB0 24040001 */ li $a0, 1 +.L800A1EB4: +/* 0A2AB4 800A1EB4 0C01A142 */ jal func_80068508 +/* 0A2AB8 800A1EB8 AFA7007C */ sw $a3, 0x7c($sp) +/* 0A2ABC 800A1EBC 8FAF0078 */ lw $t7, 0x78($sp) +/* 0A2AC0 800A1EC0 8FA7007C */ lw $a3, 0x7c($sp) +/* 0A2AC4 800A1EC4 24010004 */ li $at, 4 +/* 0A2AC8 800A1EC8 15E100FA */ bne $t7, $at, .L800A22B4 +/* 0A2ACC 800A1ECC 3C108012 */ lui $s0, %hi(D_80126CDC) # $s0, 0x8012 +/* 0A2AD0 800A1ED0 4458F800 */ cfc1 $t8, $31 +/* 0A2AD4 800A1ED4 26106CDC */ addiu $s0, %lo(D_80126CDC) # addiu $s0, $s0, 0x6cdc +/* 0A2AD8 800A1ED8 8E020000 */ lw $v0, ($s0) +/* 0A2ADC 800A1EDC 37010003 */ ori $at, $t8, 3 +/* 0A2AE0 800A1EE0 38210002 */ xori $at, $at, 2 +/* 0A2AE4 800A1EE4 44C1F800 */ ctc1 $at, $31 +/* 0A2AE8 800A1EE8 C444064C */ lwc1 $f4, 0x64c($v0) +/* 0A2AEC 800A1EEC C4480650 */ lwc1 $f8, 0x650($v0) +/* 0A2AF0 800A1EF0 460021A4 */ cvt.w.s $f6, $f4 +/* 0A2AF4 800A1EF4 02A09825 */ move $s3, $s5 +/* 0A2AF8 800A1EF8 44D8F800 */ ctc1 $t8, $31 +/* 0A2AFC 800A1EFC 44143000 */ mfc1 $s4, $f6 +/* 0A2B00 800A1F00 3C158012 */ lui $s5, %hi(D_80126D37) # $s5, 0x8012 +/* 0A2B04 800A1F04 4459F800 */ cfc1 $t9, $31 +/* 0A2B08 800A1F08 00008825 */ move $s1, $zero +/* 0A2B0C 800A1F0C 37210003 */ ori $at, $t9, 3 +/* 0A2B10 800A1F10 38210002 */ xori $at, $at, 2 +/* 0A2B14 800A1F14 44C1F800 */ ctc1 $at, $31 +/* 0A2B18 800A1F18 3C01800F */ lui $at, %hi(D_800E8734) # $at, 0x800f +/* 0A2B1C 800A1F1C 460042A4 */ cvt.w.s $f10, $f8 +/* 0A2B20 800A1F20 C4358730 */ lwc1 $f21, %lo(D_800E8730)($at) +/* 0A2B24 800A1F24 44D9F800 */ ctc1 $t9, $31 +/* 0A2B28 800A1F28 44085000 */ mfc1 $t0, $f10 +/* 0A2B2C 800A1F2C C4348734 */ lwc1 $f20, %lo(D_800E8734)($at) +/* 0A2B30 800A1F30 26B56D37 */ addiu $s5, %lo(D_80126D37) # addiu $s5, $s5, 0x6d37 +/* 0A2B34 800A1F34 00009025 */ move $s2, $zero +/* 0A2B38 800A1F38 241E0002 */ li $fp, 2 +/* 0A2B3C 800A1F3C 24170010 */ li $s7, 16 +/* 0A2B40 800A1F40 24160001 */ li $s6, 1 +/* 0A2B44 800A1F44 AFB40070 */ sw $s4, 0x70($sp) +.L800A1F48: +/* 0A2B48 800A1F48 44948000 */ mtc1 $s4, $f16 +/* 0A2B4C 800A1F4C 8E020000 */ lw $v0, ($s0) +/* 0A2B50 800A1F50 468084A0 */ cvt.s.w $f18, $f16 +/* 0A2B54 800A1F54 C44C064C */ lwc1 $f12, 0x64c($v0) +/* 0A2B58 800A1F58 02285821 */ addu $t3, $s1, $t0 +/* 0A2B5C 800A1F5C 460C9101 */ sub.s $f4, $f18, $f12 +/* 0A2B60 800A1F60 448B4000 */ mtc1 $t3, $f8 +/* 0A2B64 800A1F64 444AF800 */ cfc1 $t2, $31 +/* 0A2B68 800A1F68 C4500650 */ lwc1 $f16, 0x650($v0) +/* 0A2B6C 800A1F6C 35410003 */ ori $at, $t2, 3 +/* 0A2B70 800A1F70 38210002 */ xori $at, $at, 2 +/* 0A2B74 800A1F74 44C1F800 */ ctc1 $at, $31 +/* 0A2B78 800A1F78 8E690000 */ lw $t1, ($s3) +/* 0A2B7C 800A1F7C 460021A4 */ cvt.w.s $f6, $f4 +/* 0A2B80 800A1F80 8D240064 */ lw $a0, 0x64($t1) +/* 0A2B84 800A1F84 44CAF800 */ ctc1 $t2, $31 +/* 0A2B88 800A1F88 44053000 */ mfc1 $a1, $f6 +/* 0A2B8C 800A1F8C 468042A0 */ cvt.s.w $f10, $f8 +/* 0A2B90 800A1F90 44853000 */ mtc1 $a1, $f6 +/* 0A2B94 800A1F94 46105481 */ sub.s $f18, $f10, $f16 +/* 0A2B98 800A1F98 444CF800 */ cfc1 $t4, $31 +/* 0A2B9C 800A1F9C 00000000 */ nop +/* 0A2BA0 800A1FA0 35810003 */ ori $at, $t4, 3 +/* 0A2BA4 800A1FA4 38210002 */ xori $at, $at, 2 +/* 0A2BA8 800A1FA8 44C1F800 */ ctc1 $at, $31 +/* 0A2BAC 800A1FAC 00000000 */ nop +/* 0A2BB0 800A1FB0 46009124 */ cvt.w.s $f4, $f18 +/* 0A2BB4 800A1FB4 44CCF800 */ ctc1 $t4, $31 +/* 0A2BB8 800A1FB8 44062000 */ mfc1 $a2, $f4 +/* 0A2BBC 800A1FBC 46803020 */ cvt.s.w $f0, $f6 +/* 0A2BC0 800A1FC0 44865000 */ mtc1 $a2, $f10 +/* 0A2BC4 800A1FC4 46006200 */ add.s $f8, $f12, $f0 +/* 0A2BC8 800A1FC8 E448064C */ swc1 $f8, 0x64c($v0) +/* 0A2BCC 800A1FCC 8E020000 */ lw $v0, ($s0) +/* 0A2BD0 800A1FD0 468050A0 */ cvt.s.w $f2, $f10 +/* 0A2BD4 800A1FD4 C4500650 */ lwc1 $f16, 0x650($v0) +/* 0A2BD8 800A1FD8 00000000 */ nop +/* 0A2BDC 800A1FDC 46028480 */ add.s $f18, $f16, $f2 +/* 0A2BE0 800A1FE0 E4520650 */ swc1 $f18, 0x650($v0) +/* 0A2BE4 800A1FE4 8E020000 */ lw $v0, ($s0) +/* 0A2BE8 800A1FE8 00000000 */ nop +/* 0A2BEC 800A1FEC C444068C */ lwc1 $f4, 0x68c($v0) +/* 0A2BF0 800A1FF0 00000000 */ nop +/* 0A2BF4 800A1FF4 46002180 */ add.s $f6, $f4, $f0 +/* 0A2BF8 800A1FF8 E446068C */ swc1 $f6, 0x68c($v0) +/* 0A2BFC 800A1FFC 8E020000 */ lw $v0, ($s0) +/* 0A2C00 800A2000 00000000 */ nop +/* 0A2C04 800A2004 C4480690 */ lwc1 $f8, 0x690($v0) +/* 0A2C08 800A2008 00000000 */ nop +/* 0A2C0C 800A200C 46024281 */ sub.s $f10, $f8, $f2 +/* 0A2C10 800A2010 E44A0690 */ swc1 $f10, 0x690($v0) +/* 0A2C14 800A2014 8E020000 */ lw $v0, ($s0) +/* 0A2C18 800A2018 00000000 */ nop +/* 0A2C1C 800A201C C45006AC */ lwc1 $f16, 0x6ac($v0) +/* 0A2C20 800A2020 00000000 */ nop +/* 0A2C24 800A2024 46008480 */ add.s $f18, $f16, $f0 +/* 0A2C28 800A2028 E45206AC */ swc1 $f18, 0x6ac($v0) +/* 0A2C2C 800A202C 8E020000 */ lw $v0, ($s0) +/* 0A2C30 800A2030 00000000 */ nop +/* 0A2C34 800A2034 C44406B0 */ lwc1 $f4, 0x6b0($v0) +/* 0A2C38 800A2038 00000000 */ nop +/* 0A2C3C 800A203C 46022180 */ add.s $f6, $f4, $f2 +/* 0A2C40 800A2040 E44606B0 */ swc1 $f6, 0x6b0($v0) +/* 0A2C44 800A2044 8E020000 */ lw $v0, ($s0) +/* 0A2C48 800A2048 00000000 */ nop +/* 0A2C4C 800A204C C44806CC */ lwc1 $f8, 0x6cc($v0) +/* 0A2C50 800A2050 00000000 */ nop +/* 0A2C54 800A2054 46004280 */ add.s $f10, $f8, $f0 +/* 0A2C58 800A2058 E44A06CC */ swc1 $f10, 0x6cc($v0) +/* 0A2C5C 800A205C 8E020000 */ lw $v0, ($s0) +/* 0A2C60 800A2060 00000000 */ nop +/* 0A2C64 800A2064 C45006D0 */ lwc1 $f16, 0x6d0($v0) +/* 0A2C68 800A2068 00000000 */ nop +/* 0A2C6C 800A206C 46028480 */ add.s $f18, $f16, $f2 +/* 0A2C70 800A2070 E45206D0 */ swc1 $f18, 0x6d0($v0) +/* 0A2C74 800A2074 8E020000 */ lw $v0, ($s0) +/* 0A2C78 800A2078 00000000 */ nop +/* 0A2C7C 800A207C C44406EC */ lwc1 $f4, 0x6ec($v0) +/* 0A2C80 800A2080 00000000 */ nop +/* 0A2C84 800A2084 46002180 */ add.s $f6, $f4, $f0 +/* 0A2C88 800A2088 E44606EC */ swc1 $f6, 0x6ec($v0) +/* 0A2C8C 800A208C 8E020000 */ lw $v0, ($s0) +/* 0A2C90 800A2090 00000000 */ nop +/* 0A2C94 800A2094 C44806F0 */ lwc1 $f8, 0x6f0($v0) +/* 0A2C98 800A2098 00000000 */ nop +/* 0A2C9C 800A209C 46024280 */ add.s $f10, $f8, $f2 +/* 0A2CA0 800A20A0 E44A06F0 */ swc1 $f10, 0x6f0($v0) +/* 0A2CA4 800A20A4 92A30000 */ lbu $v1, ($s5) +/* 0A2CA8 800A20A8 8FA5008C */ lw $a1, 0x8c($sp) +/* 0A2CAC 800A20AC 28610003 */ slti $at, $v1, 3 +/* 0A2CB0 800A20B0 14200006 */ bnez $at, .L800A20CC +/* 0A2CB4 800A20B4 00000000 */ nop +/* 0A2CB8 800A20B8 848D0000 */ lh $t5, ($a0) +/* 0A2CBC 800A20BC 84EE0000 */ lh $t6, ($a3) +/* 0A2CC0 800A20C0 00000000 */ nop +/* 0A2CC4 800A20C4 15AE0008 */ bne $t5, $t6, .L800A20E8 +/* 0A2CC8 800A20C8 00000000 */ nop +.L800A20CC: +/* 0A2CCC 800A20CC AFA7007C */ sw $a3, 0x7c($sp) +/* 0A2CD0 800A20D0 0C0288BD */ jal func_800A22F4 +/* 0A2CD4 800A20D4 AFA8006C */ sw $t0, 0x6c($sp) +/* 0A2CD8 800A20D8 8FA7007C */ lw $a3, 0x7c($sp) +/* 0A2CDC 800A20DC 8FA8006C */ lw $t0, 0x6c($sp) +/* 0A2CE0 800A20E0 92A30000 */ lbu $v1, ($s5) +/* 0A2CE4 800A20E4 00000000 */ nop +.L800A20E8: +/* 0A2CE8 800A20E8 16C30003 */ bne $s6, $v1, .L800A20F8 +/* 0A2CEC 800A20EC 26520004 */ addiu $s2, $s2, 4 +/* 0A2CF0 800A20F0 10000017 */ b .L800A2150 +/* 0A2CF4 800A20F4 26940044 */ addiu $s4, $s4, 0x44 +.L800A20F8: +/* 0A2CF8 800A20F8 17C30015 */ bne $fp, $v1, .L800A2150 +/* 0A2CFC 800A20FC 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 +/* 0A2D00 800A2100 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) +/* 0A2D04 800A2104 00000000 */ nop +/* 0A2D08 800A2108 15E00010 */ bnez $t7, .L800A214C +/* 0A2D0C 800A210C 00000000 */ nop +/* 0A2D10 800A2110 44918000 */ mtc1 $s1, $f16 +/* 0A2D14 800A2114 00000000 */ nop +/* 0A2D18 800A2118 468084A1 */ cvt.d.w $f18, $f16 +/* 0A2D1C 800A211C 46349100 */ add.d $f4, $f18, $f20 +/* 0A2D20 800A2120 4458F800 */ cfc1 $t8, $31 +/* 0A2D24 800A2124 00000000 */ nop +/* 0A2D28 800A2128 37010003 */ ori $at, $t8, 3 +/* 0A2D2C 800A212C 38210002 */ xori $at, $at, 2 +/* 0A2D30 800A2130 44C1F800 */ ctc1 $at, $31 +/* 0A2D34 800A2134 00000000 */ nop +/* 0A2D38 800A2138 462021A4 */ cvt.w.d $f6, $f4 +/* 0A2D3C 800A213C 44113000 */ mfc1 $s1, $f6 +/* 0A2D40 800A2140 44D8F800 */ ctc1 $t8, $31 +/* 0A2D44 800A2144 10000002 */ b .L800A2150 +/* 0A2D48 800A2148 00000000 */ nop +.L800A214C: +/* 0A2D4C 800A214C 26310037 */ addiu $s1, $s1, 0x37 +.L800A2150: +/* 0A2D50 800A2150 1657FF7D */ bne $s2, $s7, .L800A1F48 +/* 0A2D54 800A2154 26730004 */ addiu $s3, $s3, 4 +/* 0A2D58 800A2158 8FB90070 */ lw $t9, 0x70($sp) +/* 0A2D5C 800A215C 8E020000 */ lw $v0, ($s0) +/* 0A2D60 800A2160 44994000 */ mtc1 $t9, $f8 +/* 0A2D64 800A2164 C44C064C */ lwc1 $f12, 0x64c($v0) +/* 0A2D68 800A2168 468042A0 */ cvt.s.w $f10, $f8 +/* 0A2D6C 800A216C 44882000 */ mtc1 $t0, $f4 +/* 0A2D70 800A2170 C4480650 */ lwc1 $f8, 0x650($v0) +/* 0A2D74 800A2174 460C5401 */ sub.s $f16, $f10, $f12 +/* 0A2D78 800A2178 4449F800 */ cfc1 $t1, $31 +/* 0A2D7C 800A217C 00000000 */ nop +/* 0A2D80 800A2180 35210003 */ ori $at, $t1, 3 +/* 0A2D84 800A2184 38210002 */ xori $at, $at, 2 +/* 0A2D88 800A2188 44C1F800 */ ctc1 $at, $31 +/* 0A2D8C 800A218C 00000000 */ nop +/* 0A2D90 800A2190 460084A4 */ cvt.w.s $f18, $f16 +/* 0A2D94 800A2194 44C9F800 */ ctc1 $t1, $31 +/* 0A2D98 800A2198 44059000 */ mfc1 $a1, $f18 +/* 0A2D9C 800A219C 468021A0 */ cvt.s.w $f6, $f4 +/* 0A2DA0 800A21A0 44859000 */ mtc1 $a1, $f18 +/* 0A2DA4 800A21A4 46083281 */ sub.s $f10, $f6, $f8 +/* 0A2DA8 800A21A8 444AF800 */ cfc1 $t2, $31 +/* 0A2DAC 800A21AC 00000000 */ nop +/* 0A2DB0 800A21B0 35410003 */ ori $at, $t2, 3 +/* 0A2DB4 800A21B4 38210002 */ xori $at, $at, 2 +/* 0A2DB8 800A21B8 44C1F800 */ ctc1 $at, $31 +/* 0A2DBC 800A21BC 00000000 */ nop +/* 0A2DC0 800A21C0 46005424 */ cvt.w.s $f16, $f10 +/* 0A2DC4 800A21C4 44CAF800 */ ctc1 $t2, $31 +/* 0A2DC8 800A21C8 44068000 */ mfc1 $a2, $f16 +/* 0A2DCC 800A21CC 46809020 */ cvt.s.w $f0, $f18 +/* 0A2DD0 800A21D0 44863000 */ mtc1 $a2, $f6 +/* 0A2DD4 800A21D4 46006100 */ add.s $f4, $f12, $f0 +/* 0A2DD8 800A21D8 E444064C */ swc1 $f4, 0x64c($v0) +/* 0A2DDC 800A21DC 8E020000 */ lw $v0, ($s0) +/* 0A2DE0 800A21E0 468030A0 */ cvt.s.w $f2, $f6 +/* 0A2DE4 800A21E4 C4480650 */ lwc1 $f8, 0x650($v0) +/* 0A2DE8 800A21E8 00000000 */ nop +/* 0A2DEC 800A21EC 46024280 */ add.s $f10, $f8, $f2 +/* 0A2DF0 800A21F0 E44A0650 */ swc1 $f10, 0x650($v0) +/* 0A2DF4 800A21F4 8E020000 */ lw $v0, ($s0) +/* 0A2DF8 800A21F8 00000000 */ nop +/* 0A2DFC 800A21FC C450068C */ lwc1 $f16, 0x68c($v0) +/* 0A2E00 800A2200 00000000 */ nop +/* 0A2E04 800A2204 46008480 */ add.s $f18, $f16, $f0 +/* 0A2E08 800A2208 E452068C */ swc1 $f18, 0x68c($v0) +/* 0A2E0C 800A220C 8E020000 */ lw $v0, ($s0) +/* 0A2E10 800A2210 00000000 */ nop +/* 0A2E14 800A2214 C4440690 */ lwc1 $f4, 0x690($v0) +/* 0A2E18 800A2218 00000000 */ nop +/* 0A2E1C 800A221C 46022181 */ sub.s $f6, $f4, $f2 +/* 0A2E20 800A2220 E4460690 */ swc1 $f6, 0x690($v0) +/* 0A2E24 800A2224 8E020000 */ lw $v0, ($s0) +/* 0A2E28 800A2228 00000000 */ nop +/* 0A2E2C 800A222C C44806AC */ lwc1 $f8, 0x6ac($v0) +/* 0A2E30 800A2230 00000000 */ nop +/* 0A2E34 800A2234 46004280 */ add.s $f10, $f8, $f0 +/* 0A2E38 800A2238 E44A06AC */ swc1 $f10, 0x6ac($v0) +/* 0A2E3C 800A223C 8E020000 */ lw $v0, ($s0) +/* 0A2E40 800A2240 00000000 */ nop +/* 0A2E44 800A2244 C45006B0 */ lwc1 $f16, 0x6b0($v0) +/* 0A2E48 800A2248 00000000 */ nop +/* 0A2E4C 800A224C 46028480 */ add.s $f18, $f16, $f2 +/* 0A2E50 800A2250 E45206B0 */ swc1 $f18, 0x6b0($v0) +/* 0A2E54 800A2254 8E020000 */ lw $v0, ($s0) +/* 0A2E58 800A2258 00000000 */ nop +/* 0A2E5C 800A225C C44406CC */ lwc1 $f4, 0x6cc($v0) +/* 0A2E60 800A2260 00000000 */ nop +/* 0A2E64 800A2264 46002180 */ add.s $f6, $f4, $f0 +/* 0A2E68 800A2268 E44606CC */ swc1 $f6, 0x6cc($v0) +/* 0A2E6C 800A226C 8E020000 */ lw $v0, ($s0) +/* 0A2E70 800A2270 00000000 */ nop +/* 0A2E74 800A2274 C44806D0 */ lwc1 $f8, 0x6d0($v0) +/* 0A2E78 800A2278 00000000 */ nop +/* 0A2E7C 800A227C 46024280 */ add.s $f10, $f8, $f2 +/* 0A2E80 800A2280 E44A06D0 */ swc1 $f10, 0x6d0($v0) +/* 0A2E84 800A2284 8E020000 */ lw $v0, ($s0) +/* 0A2E88 800A2288 00000000 */ nop +/* 0A2E8C 800A228C C45006EC */ lwc1 $f16, 0x6ec($v0) +/* 0A2E90 800A2290 00000000 */ nop +/* 0A2E94 800A2294 46008480 */ add.s $f18, $f16, $f0 +/* 0A2E98 800A2298 E45206EC */ swc1 $f18, 0x6ec($v0) +/* 0A2E9C 800A229C 8E020000 */ lw $v0, ($s0) +/* 0A2EA0 800A22A0 00000000 */ nop +/* 0A2EA4 800A22A4 C44406F0 */ lwc1 $f4, 0x6f0($v0) +/* 0A2EA8 800A22A8 00000000 */ nop +/* 0A2EAC 800A22AC 46022180 */ add.s $f6, $f4, $f2 +/* 0A2EB0 800A22B0 E44606F0 */ swc1 $f6, 0x6f0($v0) +.L800A22B4: +/* 0A2EB4 800A22B4 0C01A142 */ jal func_80068508 +/* 0A2EB8 800A22B8 00002025 */ move $a0, $zero +/* 0A2EBC 800A22BC 8FBF0044 */ lw $ra, 0x44($sp) +/* 0A2EC0 800A22C0 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 0A2EC4 800A22C4 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 0A2EC8 800A22C8 8FB00020 */ lw $s0, 0x20($sp) +/* 0A2ECC 800A22CC 8FB10024 */ lw $s1, 0x24($sp) +/* 0A2ED0 800A22D0 8FB20028 */ lw $s2, 0x28($sp) +/* 0A2ED4 800A22D4 8FB3002C */ lw $s3, 0x2c($sp) +/* 0A2ED8 800A22D8 8FB40030 */ lw $s4, 0x30($sp) +/* 0A2EDC 800A22DC 8FB50034 */ lw $s5, 0x34($sp) +/* 0A2EE0 800A22E0 8FB60038 */ lw $s6, 0x38($sp) +/* 0A2EE4 800A22E4 8FB7003C */ lw $s7, 0x3c($sp) +/* 0A2EE8 800A22E8 8FBE0040 */ lw $fp, 0x40($sp) +/* 0A2EEC 800A22EC 03E00008 */ jr $ra +/* 0A2EF0 800A22F0 27BD0088 */ addiu $sp, $sp, 0x88 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A22F4.s b/asm/non_matchings/unknown_09F8F0/func_800A22F4.s new file mode 100644 index 00000000..ae5eba3d --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A22F4.s @@ -0,0 +1,178 @@ +glabel func_800A22F4 +/* 0A2EF4 800A22F4 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0A2EF8 800A22F8 AFB00018 */ sw $s0, 0x18($sp) +/* 0A2EFC 800A22FC 3C108012 */ lui $s0, %hi(D_80126CDC) # $s0, 0x8012 +/* 0A2F00 800A2300 AFBF001C */ sw $ra, 0x1c($sp) +/* 0A2F04 800A2304 AFA40020 */ sw $a0, 0x20($sp) +/* 0A2F08 800A2308 AFA50024 */ sw $a1, 0x24($sp) +/* 0A2F0C 800A230C 808F0003 */ lb $t7, 3($a0) +/* 0A2F10 800A2310 26106CDC */ addiu $s0, %lo(D_80126CDC) # addiu $s0, $s0, 0x6cdc +/* 0A2F14 800A2314 8E190000 */ lw $t9, ($s0) +/* 0A2F18 800A2318 25F80038 */ addiu $t8, $t7, 0x38 +/* 0A2F1C 800A231C 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 +/* 0A2F20 800A2320 A7380646 */ sh $t8, 0x646($t9) +/* 0A2F24 800A2324 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) +/* 0A2F28 800A2328 00807025 */ move $t6, $a0 +/* 0A2F2C 800A232C 28610003 */ slti $at, $v1, 3 +/* 0A2F30 800A2330 14200009 */ bnez $at, .L800A2358 +/* 0A2F34 800A2334 24010003 */ li $at, 3 +/* 0A2F38 800A2338 1461001C */ bne $v1, $at, .L800A23AC +/* 0A2F3C 800A233C 8FAB0020 */ lw $t3, 0x20($sp) +/* 0A2F40 800A2340 8FA80020 */ lw $t0, 0x20($sp) +/* 0A2F44 800A2344 2401FFFF */ li $at, -1 +/* 0A2F48 800A2348 85090000 */ lh $t1, ($t0) +/* 0A2F4C 800A234C 00000000 */ nop +/* 0A2F50 800A2350 15210016 */ bne $t1, $at, .L800A23AC +/* 0A2F54 800A2354 8FAB0020 */ lw $t3, 0x20($sp) +.L800A2358: +/* 0A2F58 800A2358 240A0001 */ li $t2, 1 +/* 0A2F5C 800A235C 3C018012 */ lui $at, %hi(D_80126CD5) # $at, 0x8012 +/* 0A2F60 800A2360 A02A6CD5 */ sb $t2, %lo(D_80126CD5)($at) +/* 0A2F64 800A2364 8E070000 */ lw $a3, ($s0) +/* 0A2F68 800A2368 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A2F6C 800A236C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A2F70 800A2370 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A2F74 800A2374 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A2F78 800A2378 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A2F7C 800A237C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A2F80 800A2380 0C02A980 */ jal func_800AA600 +/* 0A2F84 800A2384 24E70640 */ addiu $a3, $a3, 0x640 +/* 0A2F88 800A2388 3C018012 */ lui $at, %hi(D_80126CD5) # $at, 0x8012 +/* 0A2F8C 800A238C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A2F90 800A2390 A0206CD5 */ sb $zero, %lo(D_80126CD5)($at) +/* 0A2F94 800A2394 0C01E015 */ jal func_80078054 +/* 0A2F98 800A2398 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A2F9C 800A239C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A2FA0 800A23A0 0C01ECF4 */ jal func_8007B3D0 +/* 0A2FA4 800A23A4 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A2FA8 800A23A8 8FAB0020 */ lw $t3, 0x20($sp) +.L800A23AC: +/* 0A2FAC 800A23AC 2403000A */ li $v1, 10 +/* 0A2FB0 800A23B0 81620185 */ lb $v0, 0x185($t3) +/* 0A2FB4 800A23B4 00000000 */ nop +/* 0A2FB8 800A23B8 2841000A */ slti $at, $v0, 0xa +/* 0A2FBC 800A23BC 10200010 */ beqz $at, .L800A2400 +/* 0A2FC0 800A23C0 00000000 */ nop +/* 0A2FC4 800A23C4 8E0C0000 */ lw $t4, ($s0) +/* 0A2FC8 800A23C8 3C0D8012 */ lui $t5, %hi(D_80126D37) # $t5, 0x8012 +/* 0A2FCC 800A23CC A58206D8 */ sh $v0, 0x6d8($t4) +/* 0A2FD0 800A23D0 91AD6D37 */ lbu $t5, %lo(D_80126D37)($t5) +/* 0A2FD4 800A23D4 24010002 */ li $at, 2 +/* 0A2FD8 800A23D8 15A1002F */ bne $t5, $at, .L800A2498 +/* 0A2FDC 800A23DC 00000000 */ nop +/* 0A2FE0 800A23E0 8E020000 */ lw $v0, ($s0) +/* 0A2FE4 800A23E4 3C0140C0 */ li $at, 0x40C00000 # 6.000000 +/* 0A2FE8 800A23E8 44813000 */ mtc1 $at, $f6 +/* 0A2FEC 800A23EC C44406CC */ lwc1 $f4, 0x6cc($v0) +/* 0A2FF0 800A23F0 00000000 */ nop +/* 0A2FF4 800A23F4 46062200 */ add.s $f8, $f4, $f6 +/* 0A2FF8 800A23F8 10000027 */ b .L800A2498 +/* 0A2FFC 800A23FC E44806CC */ swc1 $f8, 0x6cc($v0) +.L800A2400: +/* 0A3000 800A2400 0043001A */ div $zero, $v0, $v1 +/* 0A3004 800A2404 8E0F0000 */ lw $t7, ($s0) +/* 0A3008 800A2408 14600002 */ bnez $v1, .L800A2414 +/* 0A300C 800A240C 00000000 */ nop +/* 0A3010 800A2410 0007000D */ break 7 +.L800A2414: +/* 0A3014 800A2414 2401FFFF */ li $at, -1 +/* 0A3018 800A2418 14610004 */ bne $v1, $at, .L800A242C +/* 0A301C 800A241C 3C018000 */ lui $at, 0x8000 +/* 0A3020 800A2420 14410002 */ bne $v0, $at, .L800A242C +/* 0A3024 800A2424 00000000 */ nop +/* 0A3028 800A2428 0006000D */ break 6 +.L800A242C: +/* 0A302C 800A242C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A3030 800A2430 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A3034 800A2434 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A3038 800A2438 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A303C 800A243C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A3040 800A2440 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A3044 800A2444 00007012 */ mflo $t6 +/* 0A3048 800A2448 A5EE06D8 */ sh $t6, 0x6d8($t7) +/* 0A304C 800A244C 8FB80020 */ lw $t8, 0x20($sp) +/* 0A3050 800A2450 8E090000 */ lw $t1, ($s0) +/* 0A3054 800A2454 83190185 */ lb $t9, 0x185($t8) +/* 0A3058 800A2458 00000000 */ nop +/* 0A305C 800A245C 0323001A */ div $zero, $t9, $v1 +/* 0A3060 800A2460 14600002 */ bnez $v1, .L800A246C +/* 0A3064 800A2464 00000000 */ nop +/* 0A3068 800A2468 0007000D */ break 7 +.L800A246C: +/* 0A306C 800A246C 2401FFFF */ li $at, -1 +/* 0A3070 800A2470 14610004 */ bne $v1, $at, .L800A2484 +/* 0A3074 800A2474 3C018000 */ lui $at, 0x8000 +/* 0A3078 800A2478 17210002 */ bne $t9, $at, .L800A2484 +/* 0A307C 800A247C 00000000 */ nop +/* 0A3080 800A2480 0006000D */ break 6 +.L800A2484: +/* 0A3084 800A2484 00004010 */ mfhi $t0 +/* 0A3088 800A2488 A52806F8 */ sh $t0, 0x6f8($t1) +/* 0A308C 800A248C 8E070000 */ lw $a3, ($s0) +/* 0A3090 800A2490 0C02A980 */ jal func_800AA600 +/* 0A3094 800A2494 24E706E0 */ addiu $a3, $a3, 0x6e0 +.L800A2498: +/* 0A3098 800A2498 8E070000 */ lw $a3, ($s0) +/* 0A309C 800A249C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A30A0 800A24A0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A30A4 800A24A4 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A30A8 800A24A8 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A30AC 800A24AC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A30B0 800A24B0 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A30B4 800A24B4 0C02A980 */ jal func_800AA600 +/* 0A30B8 800A24B8 24E706C0 */ addiu $a3, $a3, 0x6c0 +/* 0A30BC 800A24BC 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 +/* 0A30C0 800A24C0 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) +/* 0A30C4 800A24C4 24040002 */ li $a0, 2 +/* 0A30C8 800A24C8 14830011 */ bne $a0, $v1, .L800A2510 +/* 0A30CC 800A24CC 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A30D0 800A24D0 8FAA0020 */ lw $t2, 0x20($sp) +/* 0A30D4 800A24D4 00000000 */ nop +/* 0A30D8 800A24D8 814B0185 */ lb $t3, 0x185($t2) +/* 0A30DC 800A24DC 00000000 */ nop +/* 0A30E0 800A24E0 2961000A */ slti $at, $t3, 0xa +/* 0A30E4 800A24E4 1020000A */ beqz $at, .L800A2510 +/* 0A30E8 800A24E8 00000000 */ nop +/* 0A30EC 800A24EC 8E020000 */ lw $v0, ($s0) +/* 0A30F0 800A24F0 3C0140C0 */ li $at, 0x40C00000 # 6.000000 +/* 0A30F4 800A24F4 44818000 */ mtc1 $at, $f16 +/* 0A30F8 800A24F8 C44A06CC */ lwc1 $f10, 0x6cc($v0) +/* 0A30FC 800A24FC 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 +/* 0A3100 800A2500 46105481 */ sub.s $f18, $f10, $f16 +/* 0A3104 800A2504 E45206CC */ swc1 $f18, 0x6cc($v0) +/* 0A3108 800A2508 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) +/* 0A310C 800A250C 00000000 */ nop +.L800A2510: +/* 0A3110 800A2510 1083001A */ beq $a0, $v1, .L800A257C +/* 0A3114 800A2514 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A3118 800A2518 8E070000 */ lw $a3, ($s0) +/* 0A311C 800A251C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A3120 800A2520 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A3124 800A2524 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A3128 800A2528 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A312C 800A252C 0C02A980 */ jal func_800AA600 +/* 0A3130 800A2530 24E706A0 */ addiu $a3, $a3, 0x6a0 +/* 0A3134 800A2534 0C01EFC7 */ jal func_8007BF1C +/* 0A3138 800A2538 24040001 */ li $a0, 1 +/* 0A313C 800A253C 240C0001 */ li $t4, 1 +/* 0A3140 800A2540 3C018012 */ lui $at, %hi(D_80126CD5) # $at, 0x8012 +/* 0A3144 800A2544 A02C6CD5 */ sb $t4, %lo(D_80126CD5)($at) +/* 0A3148 800A2548 8E070000 */ lw $a3, ($s0) +/* 0A314C 800A254C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A3150 800A2550 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A3154 800A2554 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A3158 800A2558 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A315C 800A255C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A3160 800A2560 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A3164 800A2564 0C02A980 */ jal func_800AA600 +/* 0A3168 800A2568 24E70680 */ addiu $a3, $a3, 0x680 +/* 0A316C 800A256C 3C018012 */ lui $at, %hi(D_80126CD5) # $at, 0x8012 +/* 0A3170 800A2570 A0206CD5 */ sb $zero, %lo(D_80126CD5)($at) +/* 0A3174 800A2574 0C01EFC7 */ jal func_8007BF1C +/* 0A3178 800A2578 00002025 */ move $a0, $zero +.L800A257C: +/* 0A317C 800A257C 8FBF001C */ lw $ra, 0x1c($sp) +/* 0A3180 800A2580 8FB00018 */ lw $s0, 0x18($sp) +/* 0A3184 800A2584 03E00008 */ jr $ra +/* 0A3188 800A2588 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A258C.s b/asm/non_matchings/unknown_09F8F0/func_800A258C.s new file mode 100644 index 00000000..c305a912 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A258C.s @@ -0,0 +1,47 @@ +glabel func_800A258C +/* 0A318C 800A258C 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0A3190 800A2590 AFBF001C */ sw $ra, 0x1c($sp) +/* 0A3194 800A2594 AFB10018 */ sw $s1, 0x18($sp) +/* 0A3198 800A2598 AFB00014 */ sw $s0, 0x14($sp) +/* 0A319C 800A259C AFA40020 */ sw $a0, 0x20($sp) +/* 0A31A0 800A25A0 AFA50024 */ sw $a1, 0x24($sp) +/* 0A31A4 800A25A4 8CB10064 */ lw $s1, 0x64($a1) +/* 0A31A8 800A25A8 00C08025 */ move $s0, $a2 +/* 0A31AC 800A25AC 0C01A142 */ jal func_80068508 +/* 0A31B0 800A25B0 24040001 */ li $a0, 1 +/* 0A31B4 800A25B4 02202025 */ move $a0, $s1 +/* 0A31B8 800A25B8 0C029699 */ jal func_800A5A64 +/* 0A31BC 800A25BC 02002825 */ move $a1, $s0 +/* 0A31C0 800A25C0 8FA40020 */ lw $a0, 0x20($sp) +/* 0A31C4 800A25C4 0C028F39 */ jal func_800A3CE4 +/* 0A31C8 800A25C8 02002825 */ move $a1, $s0 +/* 0A31CC 800A25CC 02202025 */ move $a0, $s1 +/* 0A31D0 800A25D0 0C029EDA */ jal func_800A7B68 +/* 0A31D4 800A25D4 02002825 */ move $a1, $s0 +/* 0A31D8 800A25D8 8FA40024 */ lw $a0, 0x24($sp) +/* 0A31DC 800A25DC 0C029D48 */ jal func_800A7520 +/* 0A31E0 800A25E0 02002825 */ move $a1, $s0 +/* 0A31E4 800A25E4 0C01AF6C */ jal func_8006BDB0 +/* 0A31E8 800A25E8 00000000 */ nop +/* 0A31EC 800A25EC 804F004B */ lb $t7, 0x4b($v0) +/* 0A31F0 800A25F0 02202025 */ move $a0, $s1 +/* 0A31F4 800A25F4 29E10002 */ slti $at, $t7, 2 +/* 0A31F8 800A25F8 14200003 */ bnez $at, .L800A2608 +/* 0A31FC 800A25FC 00000000 */ nop +/* 0A3200 800A2600 0C0293D4 */ jal func_800A4F50 +/* 0A3204 800A2604 02002825 */ move $a1, $s0 +.L800A2608: +/* 0A3208 800A2608 8FA40024 */ lw $a0, 0x24($sp) +/* 0A320C 800A260C 0C028E21 */ jal func_800A3884 +/* 0A3210 800A2610 02002825 */ move $a1, $s0 +/* 0A3214 800A2614 02202025 */ move $a0, $s1 +/* 0A3218 800A2618 0C029311 */ jal func_800A4C44 +/* 0A321C 800A261C 02002825 */ move $a1, $s0 +/* 0A3220 800A2620 0C01A142 */ jal func_80068508 +/* 0A3224 800A2624 00002025 */ move $a0, $zero +/* 0A3228 800A2628 8FBF001C */ lw $ra, 0x1c($sp) +/* 0A322C 800A262C 8FB00014 */ lw $s0, 0x14($sp) +/* 0A3230 800A2630 8FB10018 */ lw $s1, 0x18($sp) +/* 0A3234 800A2634 03E00008 */ jr $ra +/* 0A3238 800A2638 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A263C.s b/asm/non_matchings/unknown_09F8F0/func_800A263C.s new file mode 100644 index 00000000..1b5052c8 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A263C.s @@ -0,0 +1,37 @@ +glabel func_800A263C +/* 0A323C 800A263C 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0A3240 800A2640 AFBF001C */ sw $ra, 0x1c($sp) +/* 0A3244 800A2644 AFB10018 */ sw $s1, 0x18($sp) +/* 0A3248 800A2648 AFB00014 */ sw $s0, 0x14($sp) +/* 0A324C 800A264C AFA40020 */ sw $a0, 0x20($sp) +/* 0A3250 800A2650 AFA50024 */ sw $a1, 0x24($sp) +/* 0A3254 800A2654 8CB00064 */ lw $s0, 0x64($a1) +/* 0A3258 800A2658 00C08825 */ move $s1, $a2 +/* 0A325C 800A265C 0C01A142 */ jal func_80068508 +/* 0A3260 800A2660 24040001 */ li $a0, 1 +/* 0A3264 800A2664 02002025 */ move $a0, $s0 +/* 0A3268 800A2668 0C029699 */ jal func_800A5A64 +/* 0A326C 800A266C 02202825 */ move $a1, $s1 +/* 0A3270 800A2670 02002025 */ move $a0, $s0 +/* 0A3274 800A2674 0C0293D4 */ jal func_800A4F50 +/* 0A3278 800A2678 02202825 */ move $a1, $s1 +/* 0A327C 800A267C 02002025 */ move $a0, $s0 +/* 0A3280 800A2680 0C029311 */ jal func_800A4C44 +/* 0A3284 800A2684 02202825 */ move $a1, $s1 +/* 0A3288 800A2688 02002025 */ move $a0, $s0 +/* 0A328C 800A268C 0C029EDA */ jal func_800A7B68 +/* 0A3290 800A2690 02202825 */ move $a1, $s1 +/* 0A3294 800A2694 8FA40020 */ lw $a0, 0x20($sp) +/* 0A3298 800A2698 0C028F39 */ jal func_800A3CE4 +/* 0A329C 800A269C 02202825 */ move $a1, $s1 +/* 0A32A0 800A26A0 8FA40024 */ lw $a0, 0x24($sp) +/* 0A32A4 800A26A4 0C028E21 */ jal func_800A3884 +/* 0A32A8 800A26A8 02202825 */ move $a1, $s1 +/* 0A32AC 800A26AC 0C01A142 */ jal func_80068508 +/* 0A32B0 800A26B0 00002025 */ move $a0, $zero +/* 0A32B4 800A26B4 8FBF001C */ lw $ra, 0x1c($sp) +/* 0A32B8 800A26B8 8FB00014 */ lw $s0, 0x14($sp) +/* 0A32BC 800A26BC 8FB10018 */ lw $s1, 0x18($sp) +/* 0A32C0 800A26C0 03E00008 */ jr $ra +/* 0A32C4 800A26C4 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A26C8.s b/asm/non_matchings/unknown_09F8F0/func_800A26C8.s new file mode 100644 index 00000000..a5e000db --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A26C8.s @@ -0,0 +1,49 @@ +glabel func_800A26C8 +/* 0A32C8 800A26C8 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0A32CC 800A26CC AFBF0014 */ sw $ra, 0x14($sp) +/* 0A32D0 800A26D0 AFA40020 */ sw $a0, 0x20($sp) +/* 0A32D4 800A26D4 0C019884 */ jal func_80066210 +/* 0A32D8 800A26D8 AFA50024 */ sw $a1, 0x24($sp) +/* 0A32DC 800A26DC 14400024 */ bnez $v0, .L800A2770 +/* 0A32E0 800A26E0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A32E4 800A26E4 8FAE0020 */ lw $t6, 0x20($sp) +/* 0A32E8 800A26E8 24040001 */ li $a0, 1 +/* 0A32EC 800A26EC 8DCF0064 */ lw $t7, 0x64($t6) +/* 0A32F0 800A26F0 0C01A142 */ jal func_80068508 +/* 0A32F4 800A26F4 AFAF001C */ sw $t7, 0x1c($sp) +/* 0A32F8 800A26F8 8FA4001C */ lw $a0, 0x1c($sp) +/* 0A32FC 800A26FC 0C029C63 */ jal func_800A718C +/* 0A3300 800A2700 00000000 */ nop +/* 0A3304 800A2704 8FA40020 */ lw $a0, 0x20($sp) +/* 0A3308 800A2708 8FA50024 */ lw $a1, 0x24($sp) +/* 0A330C 800A270C 0C028E21 */ jal func_800A3884 +/* 0A3310 800A2710 00000000 */ nop +/* 0A3314 800A2714 0C027B20 */ jal func_8009EC80 +/* 0A3318 800A2718 00000000 */ nop +/* 0A331C 800A271C 10400011 */ beqz $v0, .L800A2764 +/* 0A3320 800A2720 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 +/* 0A3324 800A2724 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) +/* 0A3328 800A2728 00000000 */ nop +/* 0A332C 800A272C 24E70720 */ addiu $a3, $a3, 0x720 +/* 0A3330 800A2730 0C01BAA4 */ jal func_8006EA90 +/* 0A3334 800A2734 AFA70018 */ sw $a3, 0x18($sp) +/* 0A3338 800A2738 80580071 */ lb $t8, 0x71($v0) +/* 0A333C 800A273C 8FA70018 */ lw $a3, 0x18($sp) +/* 0A3340 800A2740 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A3344 800A2744 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A3348 800A2748 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A334C 800A274C 27190038 */ addiu $t9, $t8, 0x38 +/* 0A3350 800A2750 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A3354 800A2754 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A3358 800A2758 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A335C 800A275C 0C02A980 */ jal func_800AA600 +/* 0A3360 800A2760 A4F90006 */ sh $t9, 6($a3) +.L800A2764: +/* 0A3364 800A2764 0C01A142 */ jal func_80068508 +/* 0A3368 800A2768 00002025 */ move $a0, $zero +/* 0A336C 800A276C 8FBF0014 */ lw $ra, 0x14($sp) +.L800A2770: +/* 0A3370 800A2770 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0A3374 800A2774 03E00008 */ jr $ra +/* 0A3378 800A2778 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A277C.s b/asm/non_matchings/unknown_09F8F0/func_800A277C.s new file mode 100644 index 00000000..7beacf94 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A277C.s @@ -0,0 +1,1032 @@ +glabel func_800A277C +/* 0A337C 800A277C 27BDFF40 */ addiu $sp, $sp, -0xc0 +/* 0A3380 800A2780 AFB00020 */ sw $s0, 0x20($sp) +/* 0A3384 800A2784 3C108012 */ lui $s0, %hi(D_80126CF4) # $s0, 0x8012 +/* 0A3388 800A2788 AFBF002C */ sw $ra, 0x2c($sp) +/* 0A338C 800A278C AFB20028 */ sw $s2, 0x28($sp) +/* 0A3390 800A2790 AFB10024 */ sw $s1, 0x24($sp) +/* 0A3394 800A2794 AFA400C0 */ sw $a0, 0xc0($sp) +/* 0A3398 800A2798 AFA500C4 */ sw $a1, 0xc4($sp) +/* 0A339C 800A279C AFA600C8 */ sw $a2, 0xc8($sp) +/* 0A33A0 800A27A0 8CAF0064 */ lw $t7, 0x64($a1) +/* 0A33A4 800A27A4 26106CF4 */ addiu $s0, %lo(D_80126CF4) # addiu $s0, $s0, 0x6cf4 +/* 0A33A8 800A27A8 8E030000 */ lw $v1, ($s0) +/* 0A33AC 800A27AC AFAF00A0 */ sw $t7, 0xa0($sp) +/* 0A33B0 800A27B0 8C780050 */ lw $t8, 0x50($v1) +/* 0A33B4 800A27B4 00004825 */ move $t1, $zero +/* 0A33B8 800A27B8 1700001E */ bnez $t8, .L800A2834 +/* 0A33BC 800A27BC 3C198012 */ lui $t9, %hi(D_80126CF0) # $t9, 0x8012 +/* 0A33C0 800A27C0 8F396CF0 */ lw $t9, %lo(D_80126CF0)($t9) +/* 0A33C4 800A27C4 240C0008 */ li $t4, 8 +/* 0A33C8 800A27C8 872B0028 */ lh $t3, 0x28($t9) +/* 0A33CC 800A27CC A3AC0091 */ sb $t4, 0x91($sp) +/* 0A33D0 800A27D0 A7A00092 */ sh $zero, 0x92($sp) +/* 0A33D4 800A27D4 A7A00094 */ sh $zero, 0x94($sp) +/* 0A33D8 800A27D8 A7A00096 */ sh $zero, 0x96($sp) +/* 0A33DC 800A27DC AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A33E0 800A27E0 27A40090 */ addiu $a0, $sp, 0x90 +/* 0A33E4 800A27E4 00002825 */ move $a1, $zero +/* 0A33E8 800A27E8 0C003A95 */ jal func_8000EA54 +/* 0A33EC 800A27EC A3AB0090 */ sb $t3, 0x90($sp) +/* 0A33F0 800A27F0 8E0D0000 */ lw $t5, ($s0) +/* 0A33F4 800A27F4 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A33F8 800A27F8 3C118012 */ lui $s1, %hi(D_80126CDC) # $s1, 0x8012 +/* 0A33FC 800A27FC 26316CDC */ addiu $s1, %lo(D_80126CDC) # addiu $s1, $s1, 0x6cdc +/* 0A3400 800A2800 ADA20050 */ sw $v0, 0x50($t5) +/* 0A3404 800A2804 8E2F0000 */ lw $t7, ($s1) +/* 0A3408 800A2808 240E8000 */ li $t6, -32768 +/* 0A340C 800A280C A5EE0340 */ sh $t6, 0x340($t7) +/* 0A3410 800A2810 8E030000 */ lw $v1, ($s0) +/* 0A3414 800A2814 00000000 */ nop +/* 0A3418 800A2818 8C640050 */ lw $a0, 0x50($v1) +/* 0A341C 800A281C 00000000 */ nop +/* 0A3420 800A2820 10800004 */ beqz $a0, .L800A2834 +/* 0A3424 800A2824 00000000 */ nop +/* 0A3428 800A2828 A4800018 */ sh $zero, 0x18($a0) +/* 0A342C 800A282C 8E030000 */ lw $v1, ($s0) +/* 0A3430 800A2830 00000000 */ nop +.L800A2834: +/* 0A3434 800A2834 8C780088 */ lw $t8, 0x88($v1) +/* 0A3438 800A2838 3C118012 */ lui $s1, %hi(D_80126CDC) # $s1, 0x8012 +/* 0A343C 800A283C 17000016 */ bnez $t8, .L800A2898 +/* 0A3440 800A2840 26316CDC */ addiu $s1, %lo(D_80126CDC) # addiu $s1, $s1, 0x6cdc +/* 0A3444 800A2844 3C198012 */ lui $t9, %hi(D_80126CF0) # $t9, 0x8012 +/* 0A3448 800A2848 8F396CF0 */ lw $t9, %lo(D_80126CF0)($t9) +/* 0A344C 800A284C 240C0008 */ li $t4, 8 +/* 0A3450 800A2850 872B0044 */ lh $t3, 0x44($t9) +/* 0A3454 800A2854 A3AC0089 */ sb $t4, 0x89($sp) +/* 0A3458 800A2858 A7A0008A */ sh $zero, 0x8a($sp) +/* 0A345C 800A285C A7A0008C */ sh $zero, 0x8c($sp) +/* 0A3460 800A2860 A7A0008E */ sh $zero, 0x8e($sp) +/* 0A3464 800A2864 AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A3468 800A2868 27A40088 */ addiu $a0, $sp, 0x88 +/* 0A346C 800A286C 00002825 */ move $a1, $zero +/* 0A3470 800A2870 0C003A95 */ jal func_8000EA54 +/* 0A3474 800A2874 A3AB0088 */ sb $t3, 0x88($sp) +/* 0A3478 800A2878 8E0D0000 */ lw $t5, ($s0) +/* 0A347C 800A287C 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A3480 800A2880 ADA20088 */ sw $v0, 0x88($t5) +/* 0A3484 800A2884 8E2F0000 */ lw $t7, ($s1) +/* 0A3488 800A2888 240E8000 */ li $t6, -32768 +/* 0A348C 800A288C A5EE0440 */ sh $t6, 0x440($t7) +/* 0A3490 800A2890 8E030000 */ lw $v1, ($s0) +/* 0A3494 800A2894 00000000 */ nop +.L800A2898: +/* 0A3498 800A2898 8C700050 */ lw $s0, 0x50($v1) +/* 0A349C 800A289C 3C128012 */ lui $s2, %hi(D_80126D67) # $s2, 0x8012 +/* 0A34A0 800A28A0 12000384 */ beqz $s0, .L800A36B4 +/* 0A34A4 800A28A4 26526D67 */ addiu $s2, %lo(D_80126D67) # addiu $s2, $s2, 0x6d67 +/* 0A34A8 800A28A8 92580000 */ lbu $t8, ($s2) +/* 0A34AC 800A28AC 8E190068 */ lw $t9, 0x68($s0) +/* 0A34B0 800A28B0 A218003B */ sb $t8, 0x3b($s0) +/* 0A34B4 800A28B4 8F2A0000 */ lw $t2, ($t9) +/* 0A34B8 800A28B8 8FAB00C8 */ lw $t3, 0xc8($sp) +/* 0A34BC 800A28BC AFAA0098 */ sw $t2, 0x98($sp) +/* 0A34C0 800A28C0 8D4D0000 */ lw $t5, ($t2) +/* 0A34C4 800A28C4 240100FF */ li $at, 255 +/* 0A34C8 800A28C8 A5AB0052 */ sh $t3, 0x52($t5) +/* 0A34CC 800A28CC 92420000 */ lbu $v0, ($s2) +/* 0A34D0 800A28D0 00000000 */ nop +/* 0A34D4 800A28D4 104100A4 */ beq $v0, $at, .L800A2B68 +/* 0A34D8 800A28D8 24010004 */ li $at, 4 +/* 0A34DC 800A28DC 1441000D */ bne $v0, $at, .L800A2914 +/* 0A34E0 800A28E0 00000000 */ nop +/* 0A34E4 800A28E4 0C0044E7 */ jal func_8001139C +/* 0A34E8 800A28E8 AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A34EC 800A28EC 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A34F0 800A28F0 14400006 */ bnez $v0, .L800A290C +/* 0A34F4 800A28F4 240E0010 */ li $t6, 16 +/* 0A34F8 800A28F8 0C000572 */ jal func_800015C8 +/* 0A34FC 800A28FC AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A3500 800A2900 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A3504 800A2904 14400003 */ bnez $v0, .L800A2914 +/* 0A3508 800A2908 240E0010 */ li $t6, 16 +.L800A290C: +/* 0A350C 800A290C 10000091 */ b .L800A2B54 +/* 0A3510 800A2910 A60E0018 */ sh $t6, 0x18($s0) +.L800A2914: +/* 0A3514 800A2914 924F0000 */ lbu $t7, ($s2) +/* 0A3518 800A2918 24010004 */ li $at, 4 +/* 0A351C 800A291C 15E10042 */ bne $t7, $at, .L800A2A28 +/* 0A3520 800A2920 00000000 */ nop +/* 0A3524 800A2924 0C00057E */ jal func_800015F8 +/* 0A3528 800A2928 AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A352C 800A292C 8FB80098 */ lw $t8, 0x98($sp) +/* 0A3530 800A2930 924C0000 */ lbu $t4, ($s2) +/* 0A3534 800A2934 8F190000 */ lw $t9, ($t8) +/* 0A3538 800A2938 000C58C0 */ sll $t3, $t4, 3 +/* 0A353C 800A293C 8F2A0044 */ lw $t2, 0x44($t9) +/* 0A3540 800A2940 3C01BFF0 */ li $at, 0xBFF00000 # -1.875000 +/* 0A3544 800A2944 014B6821 */ addu $t5, $t2, $t3 +/* 0A3548 800A2948 8DA20004 */ lw $v0, 4($t5) +/* 0A354C 800A294C 44812800 */ mtc1 $at, $f5 +/* 0A3550 800A2950 44802000 */ mtc1 $zero, $f4 +/* 0A3554 800A2954 46000321 */ cvt.d.s $f12, $f0 +/* 0A3558 800A2958 462C2032 */ c.eq.d $f4, $f12 +/* 0A355C 800A295C 2442FFFF */ addiu $v0, $v0, -1 +/* 0A3560 800A2960 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A3564 800A2964 00027100 */ sll $t6, $v0, 4 +/* 0A3568 800A2968 45000003 */ bc1f .L800A2978 +/* 0A356C 800A296C 01C01025 */ move $v0, $t6 +/* 0A3570 800A2970 10000078 */ b .L800A2B54 +/* 0A3574 800A2974 A6000018 */ sh $zero, 0x18($s0) +.L800A2978: +/* 0A3578 800A2978 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 0A357C 800A297C 44819800 */ mtc1 $at, $f19 +/* 0A3580 800A2980 44809000 */ mtc1 $zero, $f18 +/* 0A3584 800A2984 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 0A3588 800A2988 462C903C */ c.lt.d $f18, $f12 +/* 0A358C 800A298C 00000000 */ nop +/* 0A3590 800A2990 45000015 */ bc1f .L800A29E8 +/* 0A3594 800A2994 00000000 */ nop +/* 0A3598 800A2998 46326181 */ sub.d $f6, $f12, $f18 +/* 0A359C 800A299C 44825000 */ mtc1 $v0, $f10 +/* 0A35A0 800A29A0 462033A0 */ cvt.s.d $f14, $f6 +/* 0A35A4 800A29A4 460070A1 */ cvt.d.s $f2, $f14 +/* 0A35A8 800A29A8 46221200 */ add.d $f8, $f2, $f2 +/* 0A35AC 800A29AC 46805420 */ cvt.s.w $f16, $f10 +/* 0A35B0 800A29B0 462043A0 */ cvt.s.d $f14, $f8 +/* 0A35B4 800A29B4 46107102 */ mul.s $f4, $f14, $f16 +/* 0A35B8 800A29B8 46048181 */ sub.s $f6, $f16, $f4 +/* 0A35BC 800A29BC 444FF800 */ cfc1 $t7, $31 +/* 0A35C0 800A29C0 00000000 */ nop +/* 0A35C4 800A29C4 35E10003 */ ori $at, $t7, 3 +/* 0A35C8 800A29C8 38210002 */ xori $at, $at, 2 +/* 0A35CC 800A29CC 44C1F800 */ ctc1 $at, $31 +/* 0A35D0 800A29D0 00000000 */ nop +/* 0A35D4 800A29D4 46003224 */ cvt.w.s $f8, $f6 +/* 0A35D8 800A29D8 44184000 */ mfc1 $t8, $f8 +/* 0A35DC 800A29DC 44CFF800 */ ctc1 $t7, $31 +/* 0A35E0 800A29E0 1000005C */ b .L800A2B54 +/* 0A35E4 800A29E4 A6180018 */ sh $t8, 0x18($s0) +.L800A29E8: +/* 0A35E8 800A29E8 44815000 */ mtc1 $at, $f10 +/* 0A35EC 800A29EC 44822000 */ mtc1 $v0, $f4 +/* 0A35F0 800A29F0 460A0382 */ mul.s $f14, $f0, $f10 +/* 0A35F4 800A29F4 468021A0 */ cvt.s.w $f6, $f4 +/* 0A35F8 800A29F8 460E3202 */ mul.s $f8, $f6, $f14 +/* 0A35FC 800A29FC 4459F800 */ cfc1 $t9, $31 +/* 0A3600 800A2A00 00000000 */ nop +/* 0A3604 800A2A04 37210003 */ ori $at, $t9, 3 +/* 0A3608 800A2A08 38210002 */ xori $at, $at, 2 +/* 0A360C 800A2A0C 44C1F800 */ ctc1 $at, $31 +/* 0A3610 800A2A10 00000000 */ nop +/* 0A3614 800A2A14 460042A4 */ cvt.w.s $f10, $f8 +/* 0A3618 800A2A18 440C5000 */ mfc1 $t4, $f10 +/* 0A361C 800A2A1C 44D9F800 */ ctc1 $t9, $31 +/* 0A3620 800A2A20 1000004C */ b .L800A2B54 +/* 0A3624 800A2A24 A60C0018 */ sh $t4, 0x18($s0) +.L800A2A28: +/* 0A3628 800A2A28 0C01BAA8 */ jal func_8006EAA0 +/* 0A362C 800A2A2C AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A3630 800A2A30 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A3634 800A2A34 14400047 */ bnez $v0, .L800A2B54 +/* 0A3638 800A2A38 3C058012 */ lui $a1, %hi(D_80126D69) # $a1, 0x8012 +/* 0A363C 800A2A3C 24A56D69 */ addiu $a1, %lo(D_80126D69) # addiu $a1, $a1, 0x6d69 +/* 0A3640 800A2A40 80A20000 */ lb $v0, ($a1) +/* 0A3644 800A2A44 8FAC00C8 */ lw $t4, 0xc8($sp) +/* 0A3648 800A2A48 04410012 */ bgez $v0, .L800A2A94 +/* 0A364C 800A2A4C 00000000 */ nop +/* 0A3650 800A2A50 8FAA00C8 */ lw $t2, 0xc8($sp) +/* 0A3654 800A2A54 86040018 */ lh $a0, 0x18($s0) +/* 0A3658 800A2A58 01420019 */ multu $t2, $v0 +/* 0A365C 800A2A5C 240E0001 */ li $t6, 1 +/* 0A3660 800A2A60 00001812 */ mflo $v1 +/* 0A3664 800A2A64 00035823 */ negu $t3, $v1 +/* 0A3668 800A2A68 0164082A */ slt $at, $t3, $a0 +/* 0A366C 800A2A6C 10200003 */ beqz $at, .L800A2A7C +/* 0A3670 800A2A70 00836821 */ addu $t5, $a0, $v1 +/* 0A3674 800A2A74 10000037 */ b .L800A2B54 +/* 0A3678 800A2A78 A60D0018 */ sh $t5, 0x18($s0) +.L800A2A7C: +/* 0A367C 800A2A7C A60E0018 */ sh $t6, 0x18($s0) +/* 0A3680 800A2A80 80AF0000 */ lb $t7, ($a1) +/* 0A3684 800A2A84 00000000 */ nop +/* 0A3688 800A2A88 000FC023 */ negu $t8, $t7 +/* 0A368C 800A2A8C 10000031 */ b .L800A2B54 +/* 0A3690 800A2A90 A0B80000 */ sb $t8, ($a1) +.L800A2A94: +/* 0A3694 800A2A94 01820019 */ multu $t4, $v0 +/* 0A3698 800A2A98 86190018 */ lh $t9, 0x18($s0) +/* 0A369C 800A2A9C 00005012 */ mflo $t2 +/* 0A36A0 800A2AA0 032A5821 */ addu $t3, $t9, $t2 +/* 0A36A4 800A2AA4 A60B0018 */ sh $t3, 0x18($s0) +/* 0A36A8 800A2AA8 8FAD0098 */ lw $t5, 0x98($sp) +/* 0A36AC 800A2AAC 92580000 */ lbu $t8, ($s2) +/* 0A36B0 800A2AB0 8DAE0000 */ lw $t6, ($t5) +/* 0A36B4 800A2AB4 001860C0 */ sll $t4, $t8, 3 +/* 0A36B8 800A2AB8 8DCF0044 */ lw $t7, 0x44($t6) +/* 0A36BC 800A2ABC 860B0018 */ lh $t3, 0x18($s0) +/* 0A36C0 800A2AC0 01ECC821 */ addu $t9, $t7, $t4 +/* 0A36C4 800A2AC4 8F230004 */ lw $v1, 4($t9) +/* 0A36C8 800A2AC8 3C0D8012 */ lui $t5, %hi(D_80126D68) # $t5, 0x8012 +/* 0A36CC 800A2ACC 2463FFFF */ addiu $v1, $v1, -1 +/* 0A36D0 800A2AD0 00035100 */ sll $t2, $v1, 4 +/* 0A36D4 800A2AD4 016A082A */ slt $at, $t3, $t2 +/* 0A36D8 800A2AD8 1420001F */ bnez $at, .L800A2B58 +/* 0A36DC 800A2ADC 02002025 */ move $a0, $s0 +/* 0A36E0 800A2AE0 91AD6D68 */ lbu $t5, %lo(D_80126D68)($t5) +/* 0A36E4 800A2AE4 00000000 */ nop +/* 0A36E8 800A2AE8 11A00007 */ beqz $t5, .L800A2B08 +/* 0A36EC 800A2AEC 00000000 */ nop +/* 0A36F0 800A2AF0 80AE0000 */ lb $t6, ($a1) +/* 0A36F4 800A2AF4 254FFFFF */ addiu $t7, $t2, -1 +/* 0A36F8 800A2AF8 000EC023 */ negu $t8, $t6 +/* 0A36FC 800A2AFC A0B80000 */ sb $t8, ($a1) +/* 0A3700 800A2B00 10000014 */ b .L800A2B54 +/* 0A3704 800A2B04 A60F0018 */ sh $t7, 0x18($s0) +.L800A2B08: +/* 0A3708 800A2B08 A6000018 */ sh $zero, 0x18($s0) +/* 0A370C 800A2B0C 8FAC00A0 */ lw $t4, 0xa0($sp) +/* 0A3710 800A2B10 00000000 */ nop +/* 0A3714 800A2B14 919901FC */ lbu $t9, 0x1fc($t4) +/* 0A3718 800A2B18 00000000 */ nop +/* 0A371C 800A2B1C 1720000E */ bnez $t9, .L800A2B58 +/* 0A3720 800A2B20 02002025 */ move $a0, $s0 +/* 0A3724 800A2B24 818A01D8 */ lb $t2, 0x1d8($t4) +/* 0A3728 800A2B28 24040004 */ li $a0, 4 +/* 0A372C 800A2B2C 15400009 */ bnez $t2, .L800A2B54 +/* 0A3730 800A2B30 00002825 */ move $a1, $zero +/* 0A3734 800A2B34 240B0001 */ li $t3, 1 +/* 0A3738 800A2B38 AFAB0010 */ sw $t3, 0x10($sp) +/* 0A373C 800A2B3C 24060004 */ li $a2, 4 +/* 0A3740 800A2B40 24070001 */ li $a3, 1 +/* 0A3744 800A2B44 0C028DB3 */ jal func_800A36CC +/* 0A3748 800A2B48 AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A374C 800A2B4C 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A3750 800A2B50 00000000 */ nop +.L800A2B54: +/* 0A3754 800A2B54 02002025 */ move $a0, $s0 +.L800A2B58: +/* 0A3758 800A2B58 0C01874C */ jal func_80061D30 +/* 0A375C 800A2B5C AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A3760 800A2B60 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A3764 800A2B64 00000000 */ nop +.L800A2B68: +/* 0A3768 800A2B68 8E270000 */ lw $a3, ($s1) +/* 0A376C 800A2B6C 3C128012 */ lui $s2, %hi(D_80126CFC) # $s2, 0x8012 +/* 0A3770 800A2B70 26526CFC */ addiu $s2, %lo(D_80126CFC) # addiu $s2, $s2, 0x6cfc +/* 0A3774 800A2B74 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A3778 800A2B78 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A377C 800A2B7C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A3780 800A2B80 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A3784 800A2B84 02402025 */ move $a0, $s2 +/* 0A3788 800A2B88 AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A378C 800A2B8C 0C02A980 */ jal func_800AA600 +/* 0A3790 800A2B90 24E70340 */ addiu $a3, $a3, 0x340 +/* 0A3794 800A2B94 8FA500A0 */ lw $a1, 0xa0($sp) +/* 0A3798 800A2B98 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A379C 800A2B9C 80A30193 */ lb $v1, 0x193($a1) +/* 0A37A0 800A2BA0 00004025 */ move $t0, $zero +/* 0A37A4 800A2BA4 0460000C */ bltz $v1, .L800A2BD8 +/* 0A37A8 800A2BA8 3C188000 */ lui $t8, %hi(D_80000300) # $t8, 0x8000 +/* 0A37AC 800A2BAC 00086880 */ sll $t5, $t0, 2 +/* 0A37B0 800A2BB0 00AD8021 */ addu $s0, $a1, $t5 +/* 0A37B4 800A2BB4 24020005 */ li $v0, 5 +.L800A2BB8: +/* 0A37B8 800A2BB8 8E0E0128 */ lw $t6, 0x128($s0) +/* 0A37BC 800A2BBC 25080001 */ addiu $t0, $t0, 1 +/* 0A37C0 800A2BC0 0068082A */ slt $at, $v1, $t0 +/* 0A37C4 800A2BC4 26100004 */ addiu $s0, $s0, 4 +/* 0A37C8 800A2BC8 14200003 */ bnez $at, .L800A2BD8 +/* 0A37CC 800A2BCC 012E4821 */ addu $t1, $t1, $t6 +/* 0A37D0 800A2BD0 1502FFF9 */ bne $t0, $v0, .L800A2BB8 +/* 0A37D4 800A2BD4 00000000 */ nop +.L800A2BD8: +/* 0A37D8 800A2BD8 8F180300 */ lw $t8, %lo(D_80000300)($t8) +/* 0A37DC 800A2BDC 34048CA0 */ li $a0, 36000 +/* 0A37E0 800A2BE0 17000012 */ bnez $t8, .L800A2C2C +/* 0A37E4 800A2BE4 00000000 */ nop +/* 0A37E8 800A2BE8 44892000 */ mtc1 $t1, $f4 +/* 0A37EC 800A2BEC 3C01800F */ lui $at, %hi(D_800E873C) # $at, 0x800f +/* 0A37F0 800A2BF0 468021A0 */ cvt.s.w $f6, $f4 +/* 0A37F4 800A2BF4 C42B8738 */ lwc1 $f11, %lo(D_800E8738)($at) +/* 0A37F8 800A2BF8 C42A873C */ lwc1 $f10, %lo(D_800E873C)($at) +/* 0A37FC 800A2BFC 46003221 */ cvt.d.s $f8, $f6 +/* 0A3800 800A2C00 462A4102 */ mul.d $f4, $f8, $f10 +/* 0A3804 800A2C04 444FF800 */ cfc1 $t7, $31 +/* 0A3808 800A2C08 00000000 */ nop +/* 0A380C 800A2C0C 35E10003 */ ori $at, $t7, 3 +/* 0A3810 800A2C10 38210002 */ xori $at, $at, 2 +/* 0A3814 800A2C14 44C1F800 */ ctc1 $at, $31 +/* 0A3818 800A2C18 00000000 */ nop +/* 0A381C 800A2C1C 462021A4 */ cvt.w.d $f6, $f4 +/* 0A3820 800A2C20 44CFF800 */ ctc1 $t7, $31 +/* 0A3824 800A2C24 44093000 */ mfc1 $t1, $f6 +/* 0A3828 800A2C28 00000000 */ nop +.L800A2C2C: +/* 0A382C 800A2C2C 0C00322D */ jal func_8000C8B4 +/* 0A3830 800A2C30 AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A3834 800A2C34 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A3838 800A2C38 00000000 */ nop +/* 0A383C 800A2C3C 0049082A */ slt $at, $v0, $t1 +/* 0A3840 800A2C40 10200005 */ beqz $at, .L800A2C58 +/* 0A3844 800A2C44 24100444 */ li $s0, 1092 +/* 0A3848 800A2C48 0C00322D */ jal func_8000C8B4 +/* 0A384C 800A2C4C 34048CA0 */ li $a0, 36000 +/* 0A3850 800A2C50 00404825 */ move $t1, $v0 +/* 0A3854 800A2C54 24100444 */ li $s0, 1092 +.L800A2C58: +/* 0A3858 800A2C58 01300019 */ multu $t1, $s0 +/* 0A385C 800A2C5C 8E2A0000 */ lw $t2, ($s1) +/* 0A3860 800A2C60 0000C812 */ mflo $t9 +/* 0A3864 800A2C64 272C7FF8 */ addiu $t4, $t9, 0x7ff8 +/* 0A3868 800A2C68 A54C0444 */ sh $t4, 0x444($t2) +/* 0A386C 800A2C6C 0C00382C */ jal func_8000E0B0 +/* 0A3870 800A2C70 AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A3874 800A2C74 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A3878 800A2C78 1C40000D */ bgtz $v0, .L800A2CB0 +/* 0A387C 800A2C7C 2403003C */ li $v1, 60 +/* 0A3880 800A2C80 8E270000 */ lw $a3, ($s1) +/* 0A3884 800A2C84 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A3888 800A2C88 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A388C 800A2C8C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A3890 800A2C90 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A3894 800A2C94 02402025 */ move $a0, $s2 +/* 0A3898 800A2C98 AFA900A8 */ sw $t1, 0xa8($sp) +/* 0A389C 800A2C9C 0C02A980 */ jal func_800AA600 +/* 0A38A0 800A2CA0 24E70440 */ addiu $a3, $a3, 0x440 +/* 0A38A4 800A2CA4 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0A38A8 800A2CA8 00000000 */ nop +/* 0A38AC 800A2CAC 2403003C */ li $v1, 60 +.L800A2CB0: +/* 0A38B0 800A2CB0 0123001A */ div $zero, $t1, $v1 +/* 0A38B4 800A2CB4 8E380000 */ lw $t8, ($s1) +/* 0A38B8 800A2CB8 14600002 */ bnez $v1, .L800A2CC4 +/* 0A38BC 800A2CBC 00000000 */ nop +/* 0A38C0 800A2CC0 0007000D */ break 7 +.L800A2CC4: +/* 0A38C4 800A2CC4 2401FFFF */ li $at, -1 +/* 0A38C8 800A2CC8 14610004 */ bne $v1, $at, .L800A2CDC +/* 0A38CC 800A2CCC 3C018000 */ lui $at, 0x8000 +/* 0A38D0 800A2CD0 15210002 */ bne $t1, $at, .L800A2CDC +/* 0A38D4 800A2CD4 00000000 */ nop +/* 0A38D8 800A2CD8 0006000D */ break 6 +.L800A2CDC: +/* 0A38DC 800A2CDC 00005812 */ mflo $t3 +/* 0A38E0 800A2CE0 256D001E */ addiu $t5, $t3, 0x1e +/* 0A38E4 800A2CE4 00000000 */ nop +/* 0A38E8 800A2CE8 01A3001A */ div $zero, $t5, $v1 +/* 0A38EC 800A2CEC 14600002 */ bnez $v1, .L800A2CF8 +/* 0A38F0 800A2CF0 00000000 */ nop +/* 0A38F4 800A2CF4 0007000D */ break 7 +.L800A2CF8: +/* 0A38F8 800A2CF8 2401FFFF */ li $at, -1 +/* 0A38FC 800A2CFC 14610004 */ bne $v1, $at, .L800A2D10 +/* 0A3900 800A2D00 3C018000 */ lui $at, 0x8000 +/* 0A3904 800A2D04 15A10002 */ bne $t5, $at, .L800A2D10 +/* 0A3908 800A2D08 00000000 */ nop +/* 0A390C 800A2D0C 0006000D */ break 6 +.L800A2D10: +/* 0A3910 800A2D10 3C0141E0 */ li $at, 0x41E00000 # 28.000000 +/* 0A3914 800A2D14 44815000 */ mtc1 $at, $f10 +/* 0A3918 800A2D18 00004810 */ mfhi $t1 +/* 0A391C 800A2D1C 00000000 */ nop +/* 0A3920 800A2D20 00000000 */ nop +/* 0A3924 800A2D24 01300019 */ multu $t1, $s0 +/* 0A3928 800A2D28 00007012 */ mflo $t6 +/* 0A392C 800A2D2C A70E0444 */ sh $t6, 0x444($t8) +/* 0A3930 800A2D30 8E220000 */ lw $v0, ($s1) +/* 0A3934 800A2D34 00000000 */ nop +/* 0A3938 800A2D38 C4480350 */ lwc1 $f8, 0x350($v0) +/* 0A393C 800A2D3C 00000000 */ nop +/* 0A3940 800A2D40 460A4100 */ add.s $f4, $f8, $f10 +/* 0A3944 800A2D44 0C00382C */ jal func_8000E0B0 +/* 0A3948 800A2D48 E4440450 */ swc1 $f4, 0x450($v0) +/* 0A394C 800A2D4C 1C40000A */ bgtz $v0, .L800A2D78 +/* 0A3950 800A2D50 8FAF0098 */ lw $t7, 0x98($sp) +/* 0A3954 800A2D54 8E270000 */ lw $a3, ($s1) +/* 0A3958 800A2D58 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A395C 800A2D5C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A3960 800A2D60 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A3964 800A2D64 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A3968 800A2D68 02402025 */ move $a0, $s2 +/* 0A396C 800A2D6C 0C02A980 */ jal func_800AA600 +/* 0A3970 800A2D70 24E70440 */ addiu $a3, $a3, 0x440 +/* 0A3974 800A2D74 8FAF0098 */ lw $t7, 0x98($sp) +.L800A2D78: +/* 0A3978 800A2D78 24040001 */ li $a0, 1 +/* 0A397C 800A2D7C 0C01A142 */ jal func_80068508 +/* 0A3980 800A2D80 A1E00020 */ sb $zero, 0x20($t7) +/* 0A3984 800A2D84 8FA400A0 */ lw $a0, 0xa0($sp) +/* 0A3988 800A2D88 8FA500C8 */ lw $a1, 0xc8($sp) +/* 0A398C 800A2D8C 0C0283AD */ jal func_800A0EB4 +/* 0A3990 800A2D90 00000000 */ nop +/* 0A3994 800A2D94 8FA900A0 */ lw $t1, 0xa0($sp) +/* 0A3998 800A2D98 00000000 */ nop +/* 0A399C 800A2D9C 813901D8 */ lb $t9, 0x1d8($t1) +/* 0A39A0 800A2DA0 00000000 */ nop +/* 0A39A4 800A2DA4 172000CC */ bnez $t9, .L800A30D8 +/* 0A39A8 800A2DA8 00000000 */ nop +/* 0A39AC 800A2DAC 444AF800 */ cfc1 $t2, $31 +/* 0A39B0 800A2DB0 8E2C0000 */ lw $t4, ($s1) +/* 0A39B4 800A2DB4 35410003 */ ori $at, $t2, 3 +/* 0A39B8 800A2DB8 38210002 */ xori $at, $at, 2 +/* 0A39BC 800A2DBC 44C1F800 */ ctc1 $at, $31 +/* 0A39C0 800A2DC0 C58602F0 */ lwc1 $f6, 0x2f0($t4) +/* 0A39C4 800A2DC4 00004025 */ move $t0, $zero +/* 0A39C8 800A2DC8 46003224 */ cvt.w.s $f8, $f6 +/* 0A39CC 800A2DCC 3C0E8012 */ lui $t6, %hi(D_80126D60) # $t6, 0x8012 +/* 0A39D0 800A2DD0 440B4000 */ mfc1 $t3, $f8 +/* 0A39D4 800A2DD4 44CAF800 */ ctc1 $t2, $31 +/* 0A39D8 800A2DD8 AFAB00B8 */ sw $t3, 0xb8($sp) +/* 0A39DC 800A2DDC 812D0194 */ lb $t5, 0x194($t1) +/* 0A39E0 800A2DE0 00000000 */ nop +/* 0A39E4 800A2DE4 19A00067 */ blez $t5, .L800A2F84 +/* 0A39E8 800A2DE8 00086880 */ sll $t5, $t0, 2 +/* 0A39EC 800A2DEC 8DCE6D60 */ lw $t6, %lo(D_80126D60)($t6) +/* 0A39F0 800A2DF0 00001080 */ sll $v0, $zero, 2 +/* 0A39F4 800A2DF4 81D8004B */ lb $t8, 0x4b($t6) +/* 0A39F8 800A2DF8 01228021 */ addu $s0, $t1, $v0 +/* 0A39FC 800A2DFC 1B000060 */ blez $t8, .L800A2F80 +/* 0A3A00 800A2E00 3C0F800E */ lui $t7, %hi(D_800E27AC) # $t7, 0x800e +/* 0A3A04 800A2E04 25EF27AC */ addiu $t7, %lo(D_800E27AC) # addiu $t7, $t7, 0x27ac +/* 0A3A08 800A2E08 004FC821 */ addu $t9, $v0, $t7 +/* 0A3A0C 800A2E0C AFB9003C */ sw $t9, 0x3c($sp) +.L800A2E10: +/* 0A3A10 800A2E10 8E040128 */ lw $a0, 0x128($s0) +/* 0A3A14 800A2E14 AFA800BC */ sw $t0, 0xbc($sp) +/* 0A3A18 800A2E18 27A500B4 */ addiu $a1, $sp, 0xb4 +/* 0A3A1C 800A2E1C 27A600B0 */ addiu $a2, $sp, 0xb0 +/* 0A3A20 800A2E20 0C0165E4 */ jal func_80059790 +/* 0A3A24 800A2E24 27A700AC */ addiu $a3, $sp, 0xac +/* 0A3A28 800A2E28 8FAC003C */ lw $t4, 0x3c($sp) +/* 0A3A2C 800A2E2C 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e +/* 0A3A30 800A2E30 8D8A0000 */ lw $t2, ($t4) +/* 0A3A34 800A2E34 444DF800 */ cfc1 $t5, $31 +/* 0A3A38 800A2E38 AC2A2834 */ sw $t2, %lo(D_800E2834)($at) +/* 0A3A3C 800A2E3C 8E2B0000 */ lw $t3, ($s1) +/* 0A3A40 800A2E40 35A10003 */ ori $at, $t5, 3 +/* 0A3A44 800A2E44 38210002 */ xori $at, $at, 2 +/* 0A3A48 800A2E48 44C1F800 */ ctc1 $at, $31 +/* 0A3A4C 800A2E4C C56A02EC */ lwc1 $f10, 0x2ec($t3) +/* 0A3A50 800A2E50 8FAE00AC */ lw $t6, 0xac($sp) +/* 0A3A54 800A2E54 46005124 */ cvt.w.s $f4, $f10 +/* 0A3A58 800A2E58 8FA500B8 */ lw $a1, 0xb8($sp) +/* 0A3A5C 800A2E5C 44042000 */ mfc1 $a0, $f4 +/* 0A3A60 800A2E60 8FA600B4 */ lw $a2, 0xb4($sp) +/* 0A3A64 800A2E64 8FA700B0 */ lw $a3, 0xb0($sp) +/* 0A3A68 800A2E68 24180001 */ li $t8, 1 +/* 0A3A6C 800A2E6C 44CDF800 */ ctc1 $t5, $31 +/* 0A3A70 800A2E70 AFB80014 */ sw $t8, 0x14($sp) +/* 0A3A74 800A2E74 0C029FEF */ jal func_800A7FBC +/* 0A3A78 800A2E78 AFAE0010 */ sw $t6, 0x10($sp) +/* 0A3A7C 800A2E7C 240FFFFE */ li $t7, -2 +/* 0A3A80 800A2E80 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e +/* 0A3A84 800A2E84 AC2F2834 */ sw $t7, %lo(D_800E2834)($at) +/* 0A3A88 800A2E88 8FB900B8 */ lw $t9, 0xb8($sp) +/* 0A3A8C 800A2E8C 8E430000 */ lw $v1, ($s2) +/* 0A3A90 800A2E90 272C000C */ addiu $t4, $t9, 0xc +/* 0A3A94 800A2E94 246A0008 */ addiu $t2, $v1, 8 +/* 0A3A98 800A2E98 8FA800BC */ lw $t0, 0xbc($sp) +/* 0A3A9C 800A2E9C AFAC00B8 */ sw $t4, 0xb8($sp) +/* 0A3AA0 800A2EA0 AE4A0000 */ sw $t2, ($s2) +/* 0A3AA4 800A2EA4 3C0BFA00 */ lui $t3, 0xfa00 +/* 0A3AA8 800A2EA8 240DFFFF */ li $t5, -1 +/* 0A3AAC 800A2EAC AC6D0004 */ sw $t5, 4($v1) +/* 0A3AB0 800A2EB0 AC6B0000 */ sw $t3, ($v1) +/* 0A3AB4 800A2EB4 8E2E0000 */ lw $t6, ($s1) +/* 0A3AB8 800A2EB8 25090001 */ addiu $t1, $t0, 1 +/* 0A3ABC 800A2EBC A5C90338 */ sh $t1, 0x338($t6) +/* 0A3AC0 800A2EC0 8E270000 */ lw $a3, ($s1) +/* 0A3AC4 800A2EC4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A3AC8 800A2EC8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A3ACC 800A2ECC 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A3AD0 800A2ED0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A3AD4 800A2ED4 AFA90050 */ sw $t1, 0x50($sp) +/* 0A3AD8 800A2ED8 02402025 */ move $a0, $s2 +/* 0A3ADC 800A2EDC 0C02A980 */ jal func_800AA600 +/* 0A3AE0 800A2EE0 24E70320 */ addiu $a3, $a3, 0x320 +/* 0A3AE4 800A2EE4 8E270000 */ lw $a3, ($s1) +/* 0A3AE8 800A2EE8 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A3AEC 800A2EEC 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A3AF0 800A2EF0 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A3AF4 800A2EF4 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A3AF8 800A2EF8 02402025 */ move $a0, $s2 +/* 0A3AFC 800A2EFC 0C02A980 */ jal func_800AA600 +/* 0A3B00 800A2F00 24E70300 */ addiu $a3, $a3, 0x300 +/* 0A3B04 800A2F04 8E220000 */ lw $v0, ($s1) +/* 0A3B08 800A2F08 3C014140 */ li $at, 0x41400000 # 12.000000 +/* 0A3B0C 800A2F0C 44810000 */ mtc1 $at, $f0 +/* 0A3B10 800A2F10 C4460330 */ lwc1 $f6, 0x330($v0) +/* 0A3B14 800A2F14 26100004 */ addiu $s0, $s0, 4 +/* 0A3B18 800A2F18 46003200 */ add.s $f8, $f6, $f0 +/* 0A3B1C 800A2F1C 3C0A8012 */ lui $t2, %hi(D_80126D60) # $t2, 0x8012 +/* 0A3B20 800A2F20 E4480330 */ swc1 $f8, 0x330($v0) +/* 0A3B24 800A2F24 8E220000 */ lw $v0, ($s1) +/* 0A3B28 800A2F28 00000000 */ nop +/* 0A3B2C 800A2F2C C44A0310 */ lwc1 $f10, 0x310($v0) +/* 0A3B30 800A2F30 00000000 */ nop +/* 0A3B34 800A2F34 46005100 */ add.s $f4, $f10, $f0 +/* 0A3B38 800A2F38 E4440310 */ swc1 $f4, 0x310($v0) +/* 0A3B3C 800A2F3C 8FB8003C */ lw $t8, 0x3c($sp) +/* 0A3B40 800A2F40 8FB900A0 */ lw $t9, 0xa0($sp) +/* 0A3B44 800A2F44 270F0004 */ addiu $t7, $t8, 4 +/* 0A3B48 800A2F48 AFAF003C */ sw $t7, 0x3c($sp) +/* 0A3B4C 800A2F4C 8FA80050 */ lw $t0, 0x50($sp) +/* 0A3B50 800A2F50 832C0194 */ lb $t4, 0x194($t9) +/* 0A3B54 800A2F54 00000000 */ nop +/* 0A3B58 800A2F58 010C082A */ slt $at, $t0, $t4 +/* 0A3B5C 800A2F5C 10200009 */ beqz $at, .L800A2F84 +/* 0A3B60 800A2F60 00086880 */ sll $t5, $t0, 2 +/* 0A3B64 800A2F64 8D4A6D60 */ lw $t2, %lo(D_80126D60)($t2) +/* 0A3B68 800A2F68 00000000 */ nop +/* 0A3B6C 800A2F6C 814B004B */ lb $t3, 0x4b($t2) +/* 0A3B70 800A2F70 00000000 */ nop +/* 0A3B74 800A2F74 010B082A */ slt $at, $t0, $t3 +/* 0A3B78 800A2F78 1420FFA5 */ bnez $at, .L800A2E10 +/* 0A3B7C 800A2F7C 00000000 */ nop +.L800A2F80: +/* 0A3B80 800A2F80 00086880 */ sll $t5, $t0, 2 +.L800A2F84: +/* 0A3B84 800A2F84 01A86823 */ subu $t5, $t5, $t0 +/* 0A3B88 800A2F88 000D6880 */ sll $t5, $t5, 2 +/* 0A3B8C 800A2F8C 448D3000 */ mtc1 $t5, $f6 +/* 0A3B90 800A2F90 8E220000 */ lw $v0, ($s1) +/* 0A3B94 800A2F94 46803020 */ cvt.s.w $f0, $f6 +/* 0A3B98 800A2F98 C4480330 */ lwc1 $f8, 0x330($v0) +/* 0A3B9C 800A2F9C 8FA900A0 */ lw $t1, 0xa0($sp) +/* 0A3BA0 800A2FA0 46004281 */ sub.s $f10, $f8, $f0 +/* 0A3BA4 800A2FA4 3C108012 */ lui $s0, %hi(D_80126D4C) # $s0, 0x8012 +/* 0A3BA8 800A2FA8 E44A0330 */ swc1 $f10, 0x330($v0) +/* 0A3BAC 800A2FAC 8E220000 */ lw $v0, ($s1) +/* 0A3BB0 800A2FB0 26106D4C */ addiu $s0, %lo(D_80126D4C) # addiu $s0, $s0, 0x6d4c +/* 0A3BB4 800A2FB4 C4440310 */ lwc1 $f4, 0x310($v0) +/* 0A3BB8 800A2FB8 00000000 */ nop +/* 0A3BBC 800A2FBC 46002181 */ sub.s $f6, $f4, $f0 +/* 0A3BC0 800A2FC0 E4460310 */ swc1 $f6, 0x310($v0) +/* 0A3BC4 800A2FC4 912E01EF */ lbu $t6, 0x1ef($t1) +/* 0A3BC8 800A2FC8 00000000 */ nop +/* 0A3BCC 800A2FCC 31D80004 */ andi $t8, $t6, 4 +/* 0A3BD0 800A2FD0 13000010 */ beqz $t8, .L800A3014 +/* 0A3BD4 800A2FD4 00000000 */ nop +/* 0A3BD8 800A2FD8 8E0F0000 */ lw $t7, ($s0) +/* 0A3BDC 800A2FDC 24040007 */ li $a0, 7 +/* 0A3BE0 800A2FE0 1DE0000C */ bgtz $t7, .L800A3014 +/* 0A3BE4 800A2FE4 24050003 */ li $a1, 3 +/* 0A3BE8 800A2FE8 00003025 */ move $a2, $zero +/* 0A3BEC 800A2FEC 24070004 */ li $a3, 4 +/* 0A3BF0 800A2FF0 0C028DB3 */ jal func_800A36CC +/* 0A3BF4 800A2FF4 AFA00010 */ sw $zero, 0x10($sp) +/* 0A3BF8 800A2FF8 8FA900A0 */ lw $t1, 0xa0($sp) +/* 0A3BFC 800A2FFC 2419003C */ li $t9, 60 +/* 0A3C00 800A3000 AE190000 */ sw $t9, ($s0) +/* 0A3C04 800A3004 912A01EF */ lbu $t2, 0x1ef($t1) +/* 0A3C08 800A3008 00000000 */ nop +/* 0A3C0C 800A300C 314BFFFB */ andi $t3, $t2, 0xfffb +/* 0A3C10 800A3010 A12B01EF */ sb $t3, 0x1ef($t1) +.L800A3014: +/* 0A3C14 800A3014 3C108012 */ lui $s0, %hi(D_80126D4C) # $s0, 0x8012 +/* 0A3C18 800A3018 26106D4C */ addiu $s0, %lo(D_80126D4C) # addiu $s0, $s0, 0x6d4c +/* 0A3C1C 800A301C 8E020000 */ lw $v0, ($s0) +/* 0A3C20 800A3020 8FAD00C8 */ lw $t5, 0xc8($sp) +/* 0A3C24 800A3024 18400006 */ blez $v0, .L800A3040 +/* 0A3C28 800A3028 004D7023 */ subu $t6, $v0, $t5 +/* 0A3C2C 800A302C AE0E0000 */ sw $t6, ($s0) +/* 0A3C30 800A3030 05C10003 */ bgez $t6, .L800A3040 +/* 0A3C34 800A3034 01C01025 */ move $v0, $t6 +/* 0A3C38 800A3038 AE000000 */ sw $zero, ($s0) +/* 0A3C3C 800A303C 00001025 */ move $v0, $zero +.L800A3040: +/* 0A3C40 800A3040 14400025 */ bnez $v0, .L800A30D8 +/* 0A3C44 800A3044 00000000 */ nop +/* 0A3C48 800A3048 813801D8 */ lb $t8, 0x1d8($t1) +/* 0A3C4C 800A304C 240FFF9C */ li $t7, -100 +/* 0A3C50 800A3050 17000021 */ bnez $t8, .L800A30D8 +/* 0A3C54 800A3054 3C198012 */ lui $t9, %hi(D_80126D40) # $t9, 0x8012 +/* 0A3C58 800A3058 AE0F0000 */ sw $t7, ($s0) +/* 0A3C5C 800A305C 8F396D40 */ lw $t9, %lo(D_80126D40)($t9) +/* 0A3C60 800A3060 3C108012 */ lui $s0, %hi(D_80126D64) # $s0, 0x8012 +/* 0A3C64 800A3064 1720001C */ bnez $t9, .L800A30D8 +/* 0A3C68 800A3068 26106D64 */ addiu $s0, %lo(D_80126D64) # addiu $s0, $s0, 0x6d64 +/* 0A3C6C 800A306C 92050000 */ lbu $a1, ($s0) +/* 0A3C70 800A3070 00002025 */ move $a0, $zero +/* 0A3C74 800A3074 0C01BE53 */ jal func_8006F94C +/* 0A3C78 800A3078 24A50002 */ addiu $a1, $a1, 2 +/* 0A3C7C 800A307C 3C118012 */ lui $s1, %hi(D_80126D48) # $s1, 0x8012 +/* 0A3C80 800A3080 26316D48 */ addiu $s1, %lo(D_80126D48) # addiu $s1, $s1, 0x6d48 +/* 0A3C84 800A3084 962A0000 */ lhu $t2, ($s1) +/* 0A3C88 800A3088 2443014B */ addiu $v1, $v0, 0x14b +/* 0A3C8C 800A308C 306BFFFF */ andi $t3, $v1, 0xffff +/* 0A3C90 800A3090 154B000A */ bne $t2, $t3, .L800A30BC +/* 0A3C94 800A3094 3064FFFF */ andi $a0, $v1, 0xffff +.L800A3098: +/* 0A3C98 800A3098 92050000 */ lbu $a1, ($s0) +/* 0A3C9C 800A309C 00002025 */ move $a0, $zero +/* 0A3CA0 800A30A0 0C01BE53 */ jal func_8006F94C +/* 0A3CA4 800A30A4 24A50002 */ addiu $a1, $a1, 2 +/* 0A3CA8 800A30A8 962C0000 */ lhu $t4, ($s1) +/* 0A3CAC 800A30AC 2443014B */ addiu $v1, $v0, 0x14b +/* 0A3CB0 800A30B0 306DFFFF */ andi $t5, $v1, 0xffff +/* 0A3CB4 800A30B4 118DFFF8 */ beq $t4, $t5, .L800A3098 +/* 0A3CB8 800A30B8 3064FFFF */ andi $a0, $v1, 0xffff +.L800A30BC: +/* 0A3CBC 800A30BC 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 +/* 0A3CC0 800A30C0 A6240000 */ sh $a0, ($s1) +/* 0A3CC4 800A30C4 0C000741 */ jal func_80001D04 +/* 0A3CC8 800A30C8 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 +/* 0A3CCC 800A30CC 240E0001 */ li $t6, 1 +/* 0A3CD0 800A30D0 8FA900A0 */ lw $t1, 0xa0($sp) +/* 0A3CD4 800A30D4 A20E0000 */ sb $t6, ($s0) +.L800A30D8: +/* 0A3CD8 800A30D8 81230193 */ lb $v1, 0x193($t1) +/* 0A3CDC 800A30DC 3C118012 */ lui $s1, %hi(D_80126D48) # $s1, 0x8012 +/* 0A3CE0 800A30E0 18600041 */ blez $v1, .L800A31E8 +/* 0A3CE4 800A30E4 26316D48 */ addiu $s1, %lo(D_80126D48) # addiu $s1, $s1, 0x6d48 +/* 0A3CE8 800A30E8 3C188012 */ lui $t8, %hi(D_80126D60) # $t8, 0x8012 +/* 0A3CEC 800A30EC 8F186D60 */ lw $t8, %lo(D_80126D60)($t8) +/* 0A3CF0 800A30F0 0003C880 */ sll $t9, $v1, 2 +/* 0A3CF4 800A30F4 830F004B */ lb $t7, 0x4b($t8) +/* 0A3CF8 800A30F8 01395021 */ addu $t2, $t1, $t9 +/* 0A3CFC 800A30FC 006F082A */ slt $at, $v1, $t7 +/* 0A3D00 800A3100 10200039 */ beqz $at, .L800A31E8 +/* 0A3D04 800A3104 00000000 */ nop +/* 0A3D08 800A3108 8D4B0128 */ lw $t3, 0x128($t2) +/* 0A3D0C 800A310C 3C0C8012 */ lui $t4, %hi(D_80126D40) # $t4, 0x8012 +/* 0A3D10 800A3110 29610014 */ slti $at, $t3, 0x14 +/* 0A3D14 800A3114 10200034 */ beqz $at, .L800A31E8 +/* 0A3D18 800A3118 00000000 */ nop +/* 0A3D1C 800A311C 8D8C6D40 */ lw $t4, %lo(D_80126D40)($t4) +/* 0A3D20 800A3120 00000000 */ nop +/* 0A3D24 800A3124 15800030 */ bnez $t4, .L800A31E8 +/* 0A3D28 800A3128 00000000 */ nop +/* 0A3D2C 800A312C 812D01D6 */ lb $t5, 0x1d6($t1) +/* 0A3D30 800A3130 00000000 */ nop +/* 0A3D34 800A3134 29A10003 */ slti $at, $t5, 3 +/* 0A3D38 800A3138 1020002B */ beqz $at, .L800A31E8 +/* 0A3D3C 800A313C 00000000 */ nop +/* 0A3D40 800A3140 0C01BAA4 */ jal func_8006EA90 +/* 0A3D44 800A3144 00000000 */ nop +/* 0A3D48 800A3148 3C108012 */ lui $s0, %hi(D_80127184) # $s0, 0x8012 +/* 0A3D4C 800A314C 26107184 */ addiu $s0, %lo(D_80127184) # addiu $s0, $s0, 0x7184 +/* 0A3D50 800A3150 0C01AF62 */ jal func_8006BD88 +/* 0A3D54 800A3154 AE020000 */ sw $v0, ($s0) +/* 0A3D58 800A3158 8FAE00A0 */ lw $t6, 0xa0($sp) +/* 0A3D5C 800A315C 8E190000 */ lw $t9, ($s0) +/* 0A3D60 800A3160 81C30193 */ lb $v1, 0x193($t6) +/* 0A3D64 800A3164 81CA01D6 */ lb $t2, 0x1d6($t6) +/* 0A3D68 800A3168 0003C080 */ sll $t8, $v1, 2 +/* 0A3D6C 800A316C 000A5880 */ sll $t3, $t2, 2 +/* 0A3D70 800A3170 01D87821 */ addu $t7, $t6, $t8 +/* 0A3D74 800A3174 032B6021 */ addu $t4, $t9, $t3 +/* 0A3D78 800A3178 8D8D0024 */ lw $t5, 0x24($t4) +/* 0A3D7C 800A317C 8DE40124 */ lw $a0, 0x124($t7) +/* 0A3D80 800A3180 0002C040 */ sll $t8, $v0, 1 +/* 0A3D84 800A3184 01B87821 */ addu $t7, $t5, $t8 +/* 0A3D88 800A3188 95EA0000 */ lhu $t2, ($t7) +/* 0A3D8C 800A318C 2465FFFF */ addiu $a1, $v1, -1 +/* 0A3D90 800A3190 008A082A */ slt $at, $a0, $t2 +/* 0A3D94 800A3194 10200014 */ beqz $at, .L800A31E8 +/* 0A3D98 800A3198 00000000 */ nop +/* 0A3D9C 800A319C 18A0000D */ blez $a1, .L800A31D4 +/* 0A3DA0 800A31A0 00804825 */ move $t1, $a0 +/* 0A3DA4 800A31A4 00001025 */ move $v0, $zero +/* 0A3DA8 800A31A8 01C08025 */ move $s0, $t6 +/* 0A3DAC 800A31AC 00051880 */ sll $v1, $a1, 2 +.L800A31B0: +/* 0A3DB0 800A31B0 8E190128 */ lw $t9, 0x128($s0) +/* 0A3DB4 800A31B4 24420004 */ addiu $v0, $v0, 4 +/* 0A3DB8 800A31B8 0139082A */ slt $at, $t1, $t9 +/* 0A3DBC 800A31BC 14200003 */ bnez $at, .L800A31CC +/* 0A3DC0 800A31C0 0043082A */ slt $at, $v0, $v1 +/* 0A3DC4 800A31C4 00004825 */ move $t1, $zero +/* 0A3DC8 800A31C8 0043082A */ slt $at, $v0, $v1 +.L800A31CC: +/* 0A3DCC 800A31CC 1420FFF8 */ bnez $at, .L800A31B0 +/* 0A3DD0 800A31D0 26100004 */ addiu $s0, $s0, 4 +.L800A31D4: +/* 0A3DD4 800A31D4 11200004 */ beqz $t1, .L800A31E8 +/* 0A3DD8 800A31D8 24040144 */ li $a0, 324 +/* 0A3DDC 800A31DC 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 +/* 0A3DE0 800A31E0 0C000741 */ jal func_80001D04 +/* 0A3DE4 800A31E4 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 +.L800A31E8: +/* 0A3DE8 800A31E8 0C006CA2 */ jal func_8001B288 +/* 0A3DEC 800A31EC 00000000 */ nop +/* 0A3DF0 800A31F0 1040004F */ beqz $v0, .L800A3330 +/* 0A3DF4 800A31F4 8FAA00A0 */ lw $t2, 0xa0($sp) +/* 0A3DF8 800A31F8 0C006CB8 */ jal func_8001B2E0 +/* 0A3DFC 800A31FC 00000000 */ nop +/* 0A3E00 800A3200 1040004A */ beqz $v0, .L800A332C +/* 0A3E04 800A3204 00408025 */ move $s0, $v0 +/* 0A3E08 800A3208 0C0044E7 */ jal func_8001139C +/* 0A3E0C 800A320C 00000000 */ nop +/* 0A3E10 800A3210 14400047 */ bnez $v0, .L800A3330 +/* 0A3E14 800A3214 8FAA00A0 */ lw $t2, 0xa0($sp) +/* 0A3E18 800A3218 8FAB00A0 */ lw $t3, 0xa0($sp) +/* 0A3E1C 800A321C 8FAD00C4 */ lw $t5, 0xc4($sp) +/* 0A3E20 800A3220 816C01D8 */ lb $t4, 0x1d8($t3) +/* 0A3E24 800A3224 00000000 */ nop +/* 0A3E28 800A3228 15800041 */ bnez $t4, .L800A3330 +/* 0A3E2C 800A322C 8FAA00A0 */ lw $t2, 0xa0($sp) +/* 0A3E30 800A3230 C608000C */ lwc1 $f8, 0xc($s0) +/* 0A3E34 800A3234 C5AA000C */ lwc1 $f10, 0xc($t5) +/* 0A3E38 800A3238 C6040010 */ lwc1 $f4, 0x10($s0) +/* 0A3E3C 800A323C C5A60010 */ lwc1 $f6, 0x10($t5) +/* 0A3E40 800A3240 460A4001 */ sub.s $f0, $f8, $f10 +/* 0A3E44 800A3244 C5AA0014 */ lwc1 $f10, 0x14($t5) +/* 0A3E48 800A3248 46062081 */ sub.s $f2, $f4, $f6 +/* 0A3E4C 800A324C C6080014 */ lwc1 $f8, 0x14($s0) +/* 0A3E50 800A3250 46000102 */ mul.s $f4, $f0, $f0 +/* 0A3E54 800A3254 460A4381 */ sub.s $f14, $f8, $f10 +/* 0A3E58 800A3258 46021182 */ mul.s $f6, $f2, $f2 +/* 0A3E5C 800A325C 00000000 */ nop +/* 0A3E60 800A3260 460E7282 */ mul.s $f10, $f14, $f14 +/* 0A3E64 800A3264 46062200 */ add.s $f8, $f4, $f6 +/* 0A3E68 800A3268 0C0326B4 */ jal sqrtf +/* 0A3E6C 800A326C 460A4300 */ add.s $f12, $f8, $f10 +/* 0A3E70 800A3270 3C014416 */ li $at, 0x44160000 # 600.000000 +/* 0A3E74 800A3274 44812000 */ mtc1 $at, $f4 +/* 0A3E78 800A3278 3C188012 */ lui $t8, %hi(D_80126D40) # $t8, 0x8012 +/* 0A3E7C 800A327C 4604003C */ c.lt.s $f0, $f4 +/* 0A3E80 800A3280 00000000 */ nop +/* 0A3E84 800A3284 45000020 */ bc1f .L800A3308 +/* 0A3E88 800A3288 00000000 */ nop +/* 0A3E8C 800A328C 8F186D40 */ lw $t8, %lo(D_80126D40)($t8) +/* 0A3E90 800A3290 3C108012 */ lui $s0, %hi(D_80126D50) # $s0, 0x8012 +/* 0A3E94 800A3294 1700001C */ bnez $t8, .L800A3308 +/* 0A3E98 800A3298 26106D50 */ addiu $s0, %lo(D_80126D50) # addiu $s0, $s0, 0x6d50 +/* 0A3E9C 800A329C 8E0F0000 */ lw $t7, ($s0) +/* 0A3EA0 800A32A0 00002025 */ move $a0, $zero +/* 0A3EA4 800A32A4 15E00018 */ bnez $t7, .L800A3308 +/* 0A3EA8 800A32A8 00000000 */ nop +/* 0A3EAC 800A32AC 0C01BE53 */ jal func_8006F94C +/* 0A3EB0 800A32B0 24050002 */ li $a1, 2 +/* 0A3EB4 800A32B4 962A0000 */ lhu $t2, ($s1) +/* 0A3EB8 800A32B8 24430147 */ addiu $v1, $v0, 0x147 +/* 0A3EBC 800A32BC 306EFFFF */ andi $t6, $v1, 0xffff +/* 0A3EC0 800A32C0 154E0009 */ bne $t2, $t6, .L800A32E8 +/* 0A3EC4 800A32C4 3064FFFF */ andi $a0, $v1, 0xffff +.L800A32C8: +/* 0A3EC8 800A32C8 00002025 */ move $a0, $zero +/* 0A3ECC 800A32CC 0C01BE53 */ jal func_8006F94C +/* 0A3ED0 800A32D0 24050002 */ li $a1, 2 +/* 0A3ED4 800A32D4 96390000 */ lhu $t9, ($s1) +/* 0A3ED8 800A32D8 24430147 */ addiu $v1, $v0, 0x147 +/* 0A3EDC 800A32DC 306BFFFF */ andi $t3, $v1, 0xffff +/* 0A3EE0 800A32E0 132BFFF9 */ beq $t9, $t3, .L800A32C8 +/* 0A3EE4 800A32E4 3064FFFF */ andi $a0, $v1, 0xffff +.L800A32E8: +/* 0A3EE8 800A32E8 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 +/* 0A3EEC 800A32EC A6240000 */ sh $a0, ($s1) +/* 0A3EF0 800A32F0 0C000741 */ jal func_80001D04 +/* 0A3EF4 800A32F4 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 +/* 0A3EF8 800A32F8 24040078 */ li $a0, 120 +/* 0A3EFC 800A32FC 0C01BE53 */ jal func_8006F94C +/* 0A3F00 800A3300 240504B0 */ li $a1, 1200 +/* 0A3F04 800A3304 AE020000 */ sw $v0, ($s0) +.L800A3308: +/* 0A3F08 800A3308 3C108012 */ lui $s0, %hi(D_80126D50) # $s0, 0x8012 +/* 0A3F0C 800A330C 26106D50 */ addiu $s0, %lo(D_80126D50) # addiu $s0, $s0, 0x6d50 +/* 0A3F10 800A3310 8E0C0000 */ lw $t4, ($s0) +/* 0A3F14 800A3314 8FAD00C8 */ lw $t5, 0xc8($sp) +/* 0A3F18 800A3318 00000000 */ nop +/* 0A3F1C 800A331C 018DC023 */ subu $t8, $t4, $t5 +/* 0A3F20 800A3320 07010002 */ bgez $t8, .L800A332C +/* 0A3F24 800A3324 AE180000 */ sw $t8, ($s0) +/* 0A3F28 800A3328 AE000000 */ sw $zero, ($s0) +.L800A332C: +/* 0A3F2C 800A332C 8FAA00A0 */ lw $t2, 0xa0($sp) +.L800A3330: +/* 0A3F30 800A3330 8FAC00A0 */ lw $t4, 0xa0($sp) +/* 0A3F34 800A3334 81430193 */ lb $v1, 0x193($t2) +/* 0A3F38 800A3338 00000000 */ nop +/* 0A3F3C 800A333C 00037080 */ sll $t6, $v1, 2 +/* 0A3F40 800A3340 014EC821 */ addu $t9, $t2, $t6 +/* 0A3F44 800A3344 8F2B0128 */ lw $t3, 0x128($t9) +/* 0A3F48 800A3348 00000000 */ nop +/* 0A3F4C 800A334C 2961001E */ slti $at, $t3, 0x1e +/* 0A3F50 800A3350 1020000A */ beqz $at, .L800A337C +/* 0A3F54 800A3354 00000000 */ nop +/* 0A3F58 800A3358 10600008 */ beqz $v1, .L800A337C +/* 0A3F5C 800A335C 24040005 */ li $a0, 5 +/* 0A3F60 800A3360 24050001 */ li $a1, 1 +/* 0A3F64 800A3364 24060002 */ li $a2, 2 +/* 0A3F68 800A3368 24070002 */ li $a3, 2 +/* 0A3F6C 800A336C 0C028DB3 */ jal func_800A36CC +/* 0A3F70 800A3370 AFA00010 */ sw $zero, 0x10($sp) +/* 0A3F74 800A3374 10000016 */ b .L800A33D0 +/* 0A3F78 800A3378 8FA400A0 */ lw $a0, 0xa0($sp) +.L800A337C: +/* 0A3F7C 800A337C 818D01D3 */ lb $t5, 0x1d3($t4) +/* 0A3F80 800A3380 8FB800A0 */ lw $t8, 0xa0($sp) +/* 0A3F84 800A3384 19A00008 */ blez $t5, .L800A33A8 +/* 0A3F88 800A3388 24040006 */ li $a0, 6 +/* 0A3F8C 800A338C 24050002 */ li $a1, 2 +/* 0A3F90 800A3390 24060003 */ li $a2, 3 +/* 0A3F94 800A3394 24070002 */ li $a3, 2 +/* 0A3F98 800A3398 0C028DB3 */ jal func_800A36CC +/* 0A3F9C 800A339C AFA00010 */ sw $zero, 0x10($sp) +/* 0A3FA0 800A33A0 1000000B */ b .L800A33D0 +/* 0A3FA4 800A33A4 8FA400A0 */ lw $a0, 0xa0($sp) +.L800A33A8: +/* 0A3FA8 800A33A8 930F01FC */ lbu $t7, 0x1fc($t8) +/* 0A3FAC 800A33AC 24040006 */ li $a0, 6 +/* 0A3FB0 800A33B0 29E10079 */ slti $at, $t7, 0x79 +/* 0A3FB4 800A33B4 14200005 */ bnez $at, .L800A33CC +/* 0A3FB8 800A33B8 24050003 */ li $a1, 3 +/* 0A3FBC 800A33BC 24060001 */ li $a2, 1 +/* 0A3FC0 800A33C0 24070004 */ li $a3, 4 +/* 0A3FC4 800A33C4 0C028DB3 */ jal func_800A36CC +/* 0A3FC8 800A33C8 AFA00010 */ sw $zero, 0x10($sp) +.L800A33CC: +/* 0A3FCC 800A33CC 8FA400A0 */ lw $a0, 0xa0($sp) +.L800A33D0: +/* 0A3FD0 800A33D0 8FA500C8 */ lw $a1, 0xc8($sp) +/* 0A3FD4 800A33D4 0C0293D4 */ jal func_800A4F50 +/* 0A3FD8 800A33D8 00000000 */ nop +/* 0A3FDC 800A33DC 8FA400A0 */ lw $a0, 0xa0($sp) +/* 0A3FE0 800A33E0 8FA500C8 */ lw $a1, 0xc8($sp) +/* 0A3FE4 800A33E4 0C029EDA */ jal func_800A7B68 +/* 0A3FE8 800A33E8 00000000 */ nop +/* 0A3FEC 800A33EC 8FA400A0 */ lw $a0, 0xa0($sp) +/* 0A3FF0 800A33F0 8FA500C8 */ lw $a1, 0xc8($sp) +/* 0A3FF4 800A33F4 0C029055 */ jal func_800A4154 +/* 0A3FF8 800A33F8 00000000 */ nop +/* 0A3FFC 800A33FC 8FA400A0 */ lw $a0, 0xa0($sp) +/* 0A4000 800A3400 8FA500C8 */ lw $a1, 0xc8($sp) +/* 0A4004 800A3404 0C029699 */ jal func_800A5A64 +/* 0A4008 800A3408 00000000 */ nop +/* 0A400C 800A340C 8FA400C0 */ lw $a0, 0xc0($sp) +/* 0A4010 800A3410 8FA500C8 */ lw $a1, 0xc8($sp) +/* 0A4014 800A3414 0C028F39 */ jal func_800A3CE4 +/* 0A4018 800A3418 00000000 */ nop +/* 0A401C 800A341C 8FA400C4 */ lw $a0, 0xc4($sp) +/* 0A4020 800A3420 8FA500C8 */ lw $a1, 0xc8($sp) +/* 0A4024 800A3424 0C028E21 */ jal func_800A3884 +/* 0A4028 800A3428 00000000 */ nop +/* 0A402C 800A342C 0C00382C */ jal func_8000E0B0 +/* 0A4030 800A3430 00000000 */ nop +/* 0A4034 800A3434 1840009D */ blez $v0, .L800A36AC +/* 0A4038 800A3438 00000000 */ nop +/* 0A403C 800A343C 0C00382C */ jal func_8000E0B0 +/* 0A4040 800A3440 00000000 */ nop +/* 0A4044 800A3444 24010001 */ li $at, 1 +/* 0A4048 800A3448 10410008 */ beq $v0, $at, .L800A346C +/* 0A404C 800A344C 24010002 */ li $at, 2 +/* 0A4050 800A3450 10410010 */ beq $v0, $at, .L800A3494 +/* 0A4054 800A3454 3C0B800F */ lui $t3, %hi(D_800E8658) # $t3, 0x800f +/* 0A4058 800A3458 24010003 */ li $at, 3 +/* 0A405C 800A345C 10410016 */ beq $v0, $at, .L800A34B8 +/* 0A4060 800A3460 3C18800F */ lui $t8, %hi(D_800E8670) # $t8, 0x800f +/* 0A4064 800A3464 1000001C */ b .L800A34D8 +/* 0A4068 800A3468 00000000 */ nop +.L800A346C: +/* 0A406C 800A346C 3C0A800F */ lui $t2, %hi(D_800E8640) # $t2, 0x800f +/* 0A4070 800A3470 3C0E800F */ lui $t6, %hi(D_800E8648) # $t6, 0x800f +/* 0A4074 800A3474 3C19800F */ lui $t9, %hi(D_800E8650) # $t9, 0x800f +/* 0A4078 800A3478 254A8640 */ addiu $t2, %lo(D_800E8640) # addiu $t2, $t2, -0x79c0 +/* 0A407C 800A347C 25CE8648 */ addiu $t6, %lo(D_800E8648) # addiu $t6, $t6, -0x79b8 +/* 0A4080 800A3480 27398650 */ addiu $t9, %lo(D_800E8650) # addiu $t9, $t9, -0x79b0 +/* 0A4084 800A3484 AFAA0060 */ sw $t2, 0x60($sp) +/* 0A4088 800A3488 AFAE005C */ sw $t6, 0x5c($sp) +/* 0A408C 800A348C 10000012 */ b .L800A34D8 +/* 0A4090 800A3490 AFB90058 */ sw $t9, 0x58($sp) +.L800A3494: +/* 0A4094 800A3494 3C0C800F */ lui $t4, %hi(D_800E8664) # $t4, 0x800f +/* 0A4098 800A3498 3C0D800F */ lui $t5, %hi(D_800E8668) # $t5, 0x800f +/* 0A409C 800A349C 256B8658 */ addiu $t3, %lo(D_800E8658) # addiu $t3, $t3, -0x79a8 +/* 0A40A0 800A34A0 258C8664 */ addiu $t4, %lo(D_800E8664) # addiu $t4, $t4, -0x799c +/* 0A40A4 800A34A4 25AD8668 */ addiu $t5, %lo(D_800E8668) # addiu $t5, $t5, -0x7998 +/* 0A40A8 800A34A8 AFAB0060 */ sw $t3, 0x60($sp) +/* 0A40AC 800A34AC AFAC005C */ sw $t4, 0x5c($sp) +/* 0A40B0 800A34B0 10000009 */ b .L800A34D8 +/* 0A40B4 800A34B4 AFAD0058 */ sw $t5, 0x58($sp) +.L800A34B8: +/* 0A40B8 800A34B8 3C0F800F */ lui $t7, %hi(D_800E867C) # $t7, 0x800f +/* 0A40BC 800A34BC 3C0A800F */ lui $t2, %hi(D_800E8680) # $t2, 0x800f +/* 0A40C0 800A34C0 27188670 */ addiu $t8, %lo(D_800E8670) # addiu $t8, $t8, -0x7990 +/* 0A40C4 800A34C4 25EF867C */ addiu $t7, %lo(D_800E867C) # addiu $t7, $t7, -0x7984 +/* 0A40C8 800A34C8 254A8680 */ addiu $t2, %lo(D_800E8680) # addiu $t2, $t2, -0x7980 +/* 0A40CC 800A34CC AFB80060 */ sw $t8, 0x60($sp) +/* 0A40D0 800A34D0 AFAF005C */ sw $t7, 0x5c($sp) +/* 0A40D4 800A34D4 AFAA0058 */ sw $t2, 0x58($sp) +.L800A34D8: +/* 0A40D8 800A34D8 0C031059 */ jal func_800C4164 +/* 0A40DC 800A34DC 24040001 */ li $a0, 1 +/* 0A40E0 800A34E0 0C0310BB */ jal func_800C42EC +/* 0A40E4 800A34E4 00002025 */ move $a0, $zero +/* 0A40E8 800A34E8 240E00FF */ li $t6, 255 +/* 0A40EC 800A34EC AFAE0010 */ sw $t6, 0x10($sp) +/* 0A40F0 800A34F0 00002025 */ move $a0, $zero +/* 0A40F4 800A34F4 00002825 */ move $a1, $zero +/* 0A40F8 800A34F8 00003025 */ move $a2, $zero +/* 0A40FC 800A34FC 0C0310E1 */ jal func_800C4384 +/* 0A4100 800A3500 240700FF */ li $a3, 255 +/* 0A4104 800A3504 3C108012 */ lui $s0, %hi(D_8012718C) # $s0, 0x8012 +/* 0A4108 800A3508 3C118012 */ lui $s1, %hi(D_80126D24) # $s1, 0x8012 +/* 0A410C 800A350C 26316D24 */ addiu $s1, %lo(D_80126D24) # addiu $s1, $s1, 0x6d24 +/* 0A4110 800A3510 2610718C */ addiu $s0, %lo(D_8012718C) # addiu $s0, $s0, 0x718c +/* 0A4114 800A3514 8E190000 */ lw $t9, ($s0) +/* 0A4118 800A3518 8E2B0000 */ lw $t3, ($s1) +/* 0A411C 800A351C 3C0D8012 */ lui $t5, %hi(D_80126D28) # $t5, 0x8012 +/* 0A4120 800A3520 8DAD6D28 */ lw $t5, %lo(D_80126D28)($t5) +/* 0A4124 800A3524 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 +/* 0A4128 800A3528 8CC67190 */ lw $a2, %lo(D_80127190)($a2) +/* 0A412C 800A352C 032B6021 */ addu $t4, $t9, $t3 +/* 0A4130 800A3530 8FA70060 */ lw $a3, 0x60($sp) +/* 0A4134 800A3534 2418000C */ li $t8, 12 +/* 0A4138 800A3538 018D2821 */ addu $a1, $t4, $t5 +/* 0A413C 800A353C 24A50001 */ addiu $a1, $a1, 1 +/* 0A4140 800A3540 AFB80010 */ sw $t8, 0x10($sp) +/* 0A4144 800A3544 02402025 */ move $a0, $s2 +/* 0A4148 800A3548 0C031110 */ jal func_800C4440 +/* 0A414C 800A354C 24C60001 */ addiu $a2, $a2, 1 +/* 0A4150 800A3550 8E0F0000 */ lw $t7, ($s0) +/* 0A4154 800A3554 8E2A0000 */ lw $t2, ($s1) +/* 0A4158 800A3558 3C198012 */ lui $t9, %hi(D_80126D28) # $t9, 0x8012 +/* 0A415C 800A355C 8F396D28 */ lw $t9, %lo(D_80126D28)($t9) +/* 0A4160 800A3560 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 +/* 0A4164 800A3564 8CC67190 */ lw $a2, %lo(D_80127190)($a2) +/* 0A4168 800A3568 01EA7021 */ addu $t6, $t7, $t2 +/* 0A416C 800A356C 8FA7005C */ lw $a3, 0x5c($sp) +/* 0A4170 800A3570 240B000C */ li $t3, 12 +/* 0A4174 800A3574 01D92821 */ addu $a1, $t6, $t9 +/* 0A4178 800A3578 24A50001 */ addiu $a1, $a1, 1 +/* 0A417C 800A357C AFAB0010 */ sw $t3, 0x10($sp) +/* 0A4180 800A3580 02402025 */ move $a0, $s2 +/* 0A4184 800A3584 0C031110 */ jal func_800C4440 +/* 0A4188 800A3588 24C6000F */ addiu $a2, $a2, 0xf +/* 0A418C 800A358C 8E0C0000 */ lw $t4, ($s0) +/* 0A4190 800A3590 8E2D0000 */ lw $t5, ($s1) +/* 0A4194 800A3594 3C0F8012 */ lui $t7, %hi(D_80126D28) # $t7, 0x8012 +/* 0A4198 800A3598 8DEF6D28 */ lw $t7, %lo(D_80126D28)($t7) +/* 0A419C 800A359C 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 +/* 0A41A0 800A35A0 8CC67190 */ lw $a2, %lo(D_80127190)($a2) +/* 0A41A4 800A35A4 018DC021 */ addu $t8, $t4, $t5 +/* 0A41A8 800A35A8 8FA70058 */ lw $a3, 0x58($sp) +/* 0A41AC 800A35AC 240A000C */ li $t2, 12 +/* 0A41B0 800A35B0 030F2821 */ addu $a1, $t8, $t7 +/* 0A41B4 800A35B4 24A50001 */ addiu $a1, $a1, 1 +/* 0A41B8 800A35B8 AFAA0010 */ sw $t2, 0x10($sp) +/* 0A41BC 800A35BC 02402025 */ move $a0, $s2 +/* 0A41C0 800A35C0 0C031110 */ jal func_800C4440 +/* 0A41C4 800A35C4 24C6001D */ addiu $a2, $a2, 0x1d +/* 0A41C8 800A35C8 3C028012 */ lui $v0, %hi(D_80127194) # $v0, 0x8012 +/* 0A41CC 800A35CC 8C427194 */ lw $v0, %lo(D_80127194)($v0) +/* 0A41D0 800A35D0 24070080 */ li $a3, 128 +/* 0A41D4 800A35D4 904E0013 */ lbu $t6, 0x13($v0) +/* 0A41D8 800A35D8 90440010 */ lbu $a0, 0x10($v0) +/* 0A41DC 800A35DC 90450011 */ lbu $a1, 0x11($v0) +/* 0A41E0 800A35E0 90460012 */ lbu $a2, 0x12($v0) +/* 0A41E4 800A35E4 0C0310E1 */ jal func_800C4384 +/* 0A41E8 800A35E8 AFAE0010 */ sw $t6, 0x10($sp) +/* 0A41EC 800A35EC 8E190000 */ lw $t9, ($s0) +/* 0A41F0 800A35F0 8E2B0000 */ lw $t3, ($s1) +/* 0A41F4 800A35F4 3C0D8012 */ lui $t5, %hi(D_80126D28) # $t5, 0x8012 +/* 0A41F8 800A35F8 8DAD6D28 */ lw $t5, %lo(D_80126D28)($t5) +/* 0A41FC 800A35FC 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 +/* 0A4200 800A3600 8CC67190 */ lw $a2, %lo(D_80127190)($a2) +/* 0A4204 800A3604 8FA70060 */ lw $a3, 0x60($sp) +/* 0A4208 800A3608 2418000C */ li $t8, 12 +/* 0A420C 800A360C 032B6021 */ addu $t4, $t9, $t3 +/* 0A4210 800A3610 AFB80010 */ sw $t8, 0x10($sp) +/* 0A4214 800A3614 02402025 */ move $a0, $s2 +/* 0A4218 800A3618 0C031110 */ jal func_800C4440 +/* 0A421C 800A361C 018D2821 */ addu $a1, $t4, $t5 +/* 0A4220 800A3620 8E0F0000 */ lw $t7, ($s0) +/* 0A4224 800A3624 8E2A0000 */ lw $t2, ($s1) +/* 0A4228 800A3628 3C198012 */ lui $t9, %hi(D_80126D28) # $t9, 0x8012 +/* 0A422C 800A362C 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 +/* 0A4230 800A3630 8CC67190 */ lw $a2, %lo(D_80127190)($a2) +/* 0A4234 800A3634 8F396D28 */ lw $t9, %lo(D_80126D28)($t9) +/* 0A4238 800A3638 8FA7005C */ lw $a3, 0x5c($sp) +/* 0A423C 800A363C 240B000C */ li $t3, 12 +/* 0A4240 800A3640 01EA7021 */ addu $t6, $t7, $t2 +/* 0A4244 800A3644 AFAB0010 */ sw $t3, 0x10($sp) +/* 0A4248 800A3648 02402025 */ move $a0, $s2 +/* 0A424C 800A364C 24C6000E */ addiu $a2, $a2, 0xe +/* 0A4250 800A3650 0C031110 */ jal func_800C4440 +/* 0A4254 800A3654 01D92821 */ addu $a1, $t6, $t9 +/* 0A4258 800A3658 8E0C0000 */ lw $t4, ($s0) +/* 0A425C 800A365C 8E2D0000 */ lw $t5, ($s1) +/* 0A4260 800A3660 3C0F8012 */ lui $t7, %hi(D_80126D28) # $t7, 0x8012 +/* 0A4264 800A3664 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 +/* 0A4268 800A3668 8CC67190 */ lw $a2, %lo(D_80127190)($a2) +/* 0A426C 800A366C 8DEF6D28 */ lw $t7, %lo(D_80126D28)($t7) +/* 0A4270 800A3670 8FA70058 */ lw $a3, 0x58($sp) +/* 0A4274 800A3674 240A000C */ li $t2, 12 +/* 0A4278 800A3678 018DC021 */ addu $t8, $t4, $t5 +/* 0A427C 800A367C AFAA0010 */ sw $t2, 0x10($sp) +/* 0A4280 800A3680 02402025 */ move $a0, $s2 +/* 0A4284 800A3684 24C6001C */ addiu $a2, $a2, 0x1c +/* 0A4288 800A3688 0C031110 */ jal func_800C4440 +/* 0A428C 800A368C 030F2821 */ addu $a1, $t8, $t7 +/* 0A4290 800A3690 3C048012 */ lui $a0, %hi(D_80127194) # $a0, 0x8012 +/* 0A4294 800A3694 8C847194 */ lw $a0, %lo(D_80127194)($a0) +/* 0A4298 800A3698 8FA500C8 */ lw $a1, 0xc8($sp) +/* 0A429C 800A369C 0C01FC93 */ jal func_8007F24C +/* 0A42A0 800A36A0 00000000 */ nop +/* 0A42A4 800A36A4 0C031059 */ jal func_800C4164 +/* 0A42A8 800A36A8 00002025 */ move $a0, $zero +.L800A36AC: +/* 0A42AC 800A36AC 0C01A142 */ jal func_80068508 +/* 0A42B0 800A36B0 00002025 */ move $a0, $zero +.L800A36B4: +/* 0A42B4 800A36B4 8FBF002C */ lw $ra, 0x2c($sp) +/* 0A42B8 800A36B8 8FB00020 */ lw $s0, 0x20($sp) +/* 0A42BC 800A36BC 8FB10024 */ lw $s1, 0x24($sp) +/* 0A42C0 800A36C0 8FB20028 */ lw $s2, 0x28($sp) +/* 0A42C4 800A36C4 03E00008 */ jr $ra +/* 0A42C8 800A36C8 27BD00C0 */ addiu $sp, $sp, 0xc0 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A36CC.s b/asm/non_matchings/unknown_09F8F0/func_800A36CC.s new file mode 100644 index 00000000..d65293d3 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A36CC.s @@ -0,0 +1,115 @@ +glabel func_800A36CC +/* 0A42CC 800A36CC 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0A42D0 800A36D0 AFBF001C */ sw $ra, 0x1c($sp) +/* 0A42D4 800A36D4 AFB10018 */ sw $s1, 0x18($sp) +/* 0A42D8 800A36D8 AFB00014 */ sw $s0, 0x14($sp) +/* 0A42DC 800A36DC 309000FF */ andi $s0, $a0, 0xff +/* 0A42E0 800A36E0 30B100FF */ andi $s1, $a1, 0xff +/* 0A42E4 800A36E4 AFA40020 */ sw $a0, 0x20($sp) +/* 0A42E8 800A36E8 AFA50024 */ sw $a1, 0x24($sp) +/* 0A42EC 800A36EC AFA60028 */ sw $a2, 0x28($sp) +/* 0A42F0 800A36F0 0C003936 */ jal func_8000E4D8 +/* 0A42F4 800A36F4 AFA7002C */ sw $a3, 0x2c($sp) +/* 0A42F8 800A36F8 10400058 */ beqz $v0, .L800A385C +/* 0A42FC 800A36FC 3C0E8012 */ lui $t6, %hi(D_80126CF4) # $t6, 0x8012 +/* 0A4300 800A3700 8DCE6CF4 */ lw $t6, %lo(D_80126CF4)($t6) +/* 0A4304 800A3704 00000000 */ nop +/* 0A4308 800A3708 8DC20050 */ lw $v0, 0x50($t6) +/* 0A430C 800A370C 00000000 */ nop +/* 0A4310 800A3710 10400053 */ beqz $v0, .L800A3860 +/* 0A4314 800A3714 8FBF001C */ lw $ra, 0x1c($sp) +/* 0A4318 800A3718 8C4F0068 */ lw $t7, 0x68($v0) +/* 0A431C 800A371C 3C1F8012 */ lui $ra, %hi(D_80126D65) # $ra, 0x8012 +/* 0A4320 800A3720 8DE50000 */ lw $a1, ($t7) +/* 0A4324 800A3724 27FF6D65 */ addiu $ra, %lo(D_80126D65) # addiu $ra, $ra, 0x6d65 +/* 0A4328 800A3728 8CA30000 */ lw $v1, ($a1) +/* 0A432C 800A372C 00004025 */ move $t0, $zero +/* 0A4330 800A3730 84670028 */ lh $a3, 0x28($v1) +/* 0A4334 800A3734 00002025 */ move $a0, $zero +/* 0A4338 800A3738 18E00039 */ blez $a3, .L800A3820 +/* 0A433C 800A373C 3C0D8012 */ lui $t5, %hi(D_80126D66) # $t5, 0x8012 +/* 0A4340 800A3740 3C0CFF7E */ lui $t4, (0xFF7EFFFF >> 16) # lui $t4, 0xff7e +/* 0A4344 800A3744 358CFFFF */ ori $t4, (0xFF7EFFFF & 0xFFFF) # ori $t4, $t4, 0xffff +/* 0A4348 800A3748 25AD6D66 */ addiu $t5, %lo(D_80126D66) # addiu $t5, $t5, 0x6d66 +/* 0A434C 800A374C 240B0001 */ li $t3, 1 +/* 0A4350 800A3750 3C0A0081 */ lui $t2, 0x81 +/* 0A4354 800A3754 24090004 */ li $t1, 4 +.L800A3758: +/* 0A4358 800A3758 8C780038 */ lw $t8, 0x38($v1) +/* 0A435C 800A375C 91B90000 */ lbu $t9, ($t5) +/* 0A4360 800A3760 03041021 */ addu $v0, $t8, $a0 +/* 0A4364 800A3764 90460000 */ lbu $a2, ($v0) +/* 0A4368 800A3768 25080001 */ addiu $t0, $t0, 1 +/* 0A436C 800A376C 17260020 */ bne $t9, $a2, .L800A37F0 +/* 0A4370 800A3770 00000000 */ nop +/* 0A4374 800A3774 1530000D */ bne $t1, $s0, .L800A37AC +/* 0A4378 800A3778 A0500000 */ sb $s0, ($v0) +/* 0A437C 800A377C 8CAE0000 */ lw $t6, ($a1) +/* 0A4380 800A3780 00000000 */ nop +/* 0A4384 800A3784 8DCF0038 */ lw $t7, 0x38($t6) +/* 0A4388 800A3788 00000000 */ nop +/* 0A438C 800A378C 01E41021 */ addu $v0, $t7, $a0 +/* 0A4390 800A3790 8C580008 */ lw $t8, 8($v0) +/* 0A4394 800A3794 00000000 */ nop +/* 0A4398 800A3798 030AC825 */ or $t9, $t8, $t2 +/* 0A439C 800A379C AC590008 */ sw $t9, 8($v0) +/* 0A43A0 800A37A0 8CAE0000 */ lw $t6, ($a1) +/* 0A43A4 800A37A4 1000000D */ b .L800A37DC +/* 0A43A8 800A37A8 A5CB0050 */ sh $t3, 0x50($t6) +.L800A37AC: +/* 0A43AC 800A37AC 8CAF0000 */ lw $t7, ($a1) +/* 0A43B0 800A37B0 00000000 */ nop +/* 0A43B4 800A37B4 8DF80038 */ lw $t8, 0x38($t7) +/* 0A43B8 800A37B8 00000000 */ nop +/* 0A43BC 800A37BC 03041021 */ addu $v0, $t8, $a0 +/* 0A43C0 800A37C0 8C590008 */ lw $t9, 8($v0) +/* 0A43C4 800A37C4 00000000 */ nop +/* 0A43C8 800A37C8 032C7024 */ and $t6, $t9, $t4 +/* 0A43CC 800A37CC AC4E0008 */ sw $t6, 8($v0) +/* 0A43D0 800A37D0 8CAF0000 */ lw $t7, ($a1) +/* 0A43D4 800A37D4 00000000 */ nop +/* 0A43D8 800A37D8 A5E00050 */ sh $zero, 0x50($t7) +.L800A37DC: +/* 0A43DC 800A37DC 8CA30000 */ lw $v1, ($a1) +/* 0A43E0 800A37E0 00000000 */ nop +/* 0A43E4 800A37E4 84670028 */ lh $a3, 0x28($v1) +/* 0A43E8 800A37E8 1000000B */ b .L800A3818 +/* 0A43EC 800A37EC 0107082A */ slt $at, $t0, $a3 +.L800A37F0: +/* 0A43F0 800A37F0 93F80000 */ lbu $t8, ($ra) +/* 0A43F4 800A37F4 00000000 */ nop +/* 0A43F8 800A37F8 17060007 */ bne $t8, $a2, .L800A3818 +/* 0A43FC 800A37FC 0107082A */ slt $at, $t0, $a3 +/* 0A4400 800A3800 A0510000 */ sb $s1, ($v0) +/* 0A4404 800A3804 8CA30000 */ lw $v1, ($a1) +/* 0A4408 800A3808 00000000 */ nop +/* 0A440C 800A380C 84670028 */ lh $a3, 0x28($v1) +/* 0A4410 800A3810 00000000 */ nop +/* 0A4414 800A3814 0107082A */ slt $at, $t0, $a3 +.L800A3818: +/* 0A4418 800A3818 1420FFCF */ bnez $at, .L800A3758 +/* 0A441C 800A381C 2484000C */ addiu $a0, $a0, 0xc +.L800A3820: +/* 0A4420 800A3820 3C0D8012 */ lui $t5, %hi(D_80126D66) # $t5, 0x8012 +/* 0A4424 800A3824 3C1F8012 */ lui $ra, %hi(D_80126D65) # $ra, 0x8012 +/* 0A4428 800A3828 93B9002B */ lbu $t9, 0x2b($sp) +/* 0A442C 800A382C 27FF6D65 */ addiu $ra, %lo(D_80126D65) # addiu $ra, $ra, 0x6d65 +/* 0A4430 800A3830 25AD6D66 */ addiu $t5, %lo(D_80126D66) # addiu $t5, $t5, 0x6d66 +/* 0A4434 800A3834 A1B00000 */ sb $s0, ($t5) +/* 0A4438 800A3838 A3F10000 */ sb $s1, ($ra) +/* 0A443C 800A383C 3C018012 */ lui $at, %hi(D_80126D67) # $at, 0x8012 +/* 0A4440 800A3840 93AE002F */ lbu $t6, 0x2f($sp) +/* 0A4444 800A3844 A0396D67 */ sb $t9, %lo(D_80126D67)($at) +/* 0A4448 800A3848 3C018012 */ lui $at, %hi(D_80126D69) # $at, 0x8012 +/* 0A444C 800A384C 93AF0033 */ lbu $t7, 0x33($sp) +/* 0A4450 800A3850 A02E6D69 */ sb $t6, %lo(D_80126D69)($at) +/* 0A4454 800A3854 3C018012 */ lui $at, %hi(D_80126D68) # $at, 0x8012 +/* 0A4458 800A3858 A02F6D68 */ sb $t7, %lo(D_80126D68)($at) +.L800A385C: +/* 0A445C 800A385C 8FBF001C */ lw $ra, 0x1c($sp) +.L800A3860: +/* 0A4460 800A3860 8FB00014 */ lw $s0, 0x14($sp) +/* 0A4464 800A3864 8FB10018 */ lw $s1, 0x18($sp) +/* 0A4468 800A3868 03E00008 */ jr $ra +/* 0A446C 800A386C 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A3870.s b/asm/non_matchings/unknown_09F8F0/func_800A3870.s new file mode 100644 index 00000000..9e1a6a43 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A3870.s @@ -0,0 +1,7 @@ +glabel func_800A3870 +/* 0A4470 800A3870 3C0F8012 */ lui $t7, %hi(D_80126CDC) # $t7, 0x8012 +/* 0A4474 800A3874 8DEF6CDC */ lw $t7, %lo(D_80126CDC)($t7) +/* 0A4478 800A3878 240E6490 */ li $t6, 25744 +/* 0A447C 800A387C 03E00008 */ jr $ra +/* 0A4480 800A3880 A5EE04C4 */ sh $t6, 0x4c4($t7) + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A3884.s b/asm/non_matchings/unknown_09F8F0/func_800A3884.s new file mode 100644 index 00000000..3b9f4020 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A3884.s @@ -0,0 +1,296 @@ +glabel func_800A3884 +/* 0A4484 800A3884 3C0E8012 */ lui $t6, %hi(D_80126D37) # $t6, 0x8012 +/* 0A4488 800A3888 91CE6D37 */ lbu $t6, %lo(D_80126D37)($t6) +/* 0A448C 800A388C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0A4490 800A3890 24010001 */ li $at, 1 +/* 0A4494 800A3894 AFBF0014 */ sw $ra, 0x14($sp) +/* 0A4498 800A3898 15C1010E */ bne $t6, $at, .L800A3CD4 +/* 0A449C 800A389C AFA5002C */ sw $a1, 0x2c($sp) +/* 0A44A0 800A38A0 0C019944 */ jal func_80066510 +/* 0A44A4 800A38A4 AFA40028 */ sw $a0, 0x28($sp) +/* 0A44A8 800A38A8 8FA40028 */ lw $a0, 0x28($sp) +/* 0A44AC 800A38AC 1440010A */ bnez $v0, .L800A3CD8 +/* 0A44B0 800A38B0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A44B4 800A38B4 8C820064 */ lw $v0, 0x64($a0) +/* 0A44B8 800A38B8 00000000 */ nop +/* 0A44BC 800A38BC 804F01D8 */ lb $t7, 0x1d8($v0) +/* 0A44C0 800A38C0 00000000 */ nop +/* 0A44C4 800A38C4 15E00104 */ bnez $t7, .L800A3CD8 +/* 0A44C8 800A38C8 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A44CC 800A38CC 805801D6 */ lb $t8, 0x1d6($v0) +/* 0A44D0 800A38D0 24010002 */ li $at, 2 +/* 0A44D4 800A38D4 1701000F */ bne $t8, $at, .L800A3914 +/* 0A44D8 800A38D8 00000000 */ nop +/* 0A44DC 800A38DC C480001C */ lwc1 $f0, 0x1c($a0) +/* 0A44E0 800A38E0 C4820020 */ lwc1 $f2, 0x20($a0) +/* 0A44E4 800A38E4 46000102 */ mul.s $f4, $f0, $f0 +/* 0A44E8 800A38E8 C48E0024 */ lwc1 $f14, 0x24($a0) +/* 0A44EC 800A38EC AFA20020 */ sw $v0, 0x20($sp) +/* 0A44F0 800A38F0 46021182 */ mul.s $f6, $f2, $f2 +/* 0A44F4 800A38F4 00000000 */ nop +/* 0A44F8 800A38F8 460E7282 */ mul.s $f10, $f14, $f14 +/* 0A44FC 800A38FC 46062200 */ add.s $f8, $f4, $f6 +/* 0A4500 800A3900 0C0326B4 */ jal sqrtf +/* 0A4504 800A3904 460A4300 */ add.s $f12, $f8, $f10 +/* 0A4508 800A3908 8FA20020 */ lw $v0, 0x20($sp) +/* 0A450C 800A390C 1000000A */ b .L800A3938 +/* 0A4510 800A3910 00000000 */ nop +.L800A3914: +/* 0A4514 800A3914 C480001C */ lwc1 $f0, 0x1c($a0) +/* 0A4518 800A3918 C48E0024 */ lwc1 $f14, 0x24($a0) +/* 0A451C 800A391C 46000402 */ mul.s $f16, $f0, $f0 +/* 0A4520 800A3920 AFA20020 */ sw $v0, 0x20($sp) +/* 0A4524 800A3924 460E7482 */ mul.s $f18, $f14, $f14 +/* 0A4528 800A3928 0C0326B4 */ jal sqrtf +/* 0A452C 800A392C 46128300 */ add.s $f12, $f16, $f18 +/* 0A4530 800A3930 8FA20020 */ lw $v0, 0x20($sp) +/* 0A4534 800A3934 00000000 */ nop +.L800A3938: +/* 0A4538 800A3938 3C01800E */ lui $at, %hi(D_800E2838) # $at, 0x800e +/* 0A453C 800A393C C4242838 */ lwc1 $f4, %lo(D_800E2838)($at) +/* 0A4540 800A3940 44806000 */ mtc1 $zero, $f12 +/* 0A4544 800A3944 4600203C */ c.lt.s $f4, $f0 +/* 0A4548 800A3948 3C01800E */ lui $at, %hi(D_800E2838) # $at, 0x800e +/* 0A454C 800A394C 45000002 */ bc1f .L800A3958 +/* 0A4550 800A3950 00000000 */ nop +/* 0A4554 800A3954 E4202838 */ swc1 $f0, %lo(D_800E2838)($at) +.L800A3958: +/* 0A4558 800A3958 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 0A455C 800A395C 44813000 */ mtc1 $at, $f6 +/* 0A4560 800A3960 805901E6 */ lb $t9, 0x1e6($v0) +/* 0A4564 800A3964 46060082 */ mul.s $f2, $f0, $f6 +/* 0A4568 800A3968 13200004 */ beqz $t9, .L800A397C +/* 0A456C 800A396C 3C0140E0 */ li $at, 0x40E00000 # 7.000000 +/* 0A4570 800A3970 44814000 */ mtc1 $at, $f8 +/* 0A4574 800A3974 00000000 */ nop +/* 0A4578 800A3978 46081080 */ add.s $f2, $f2, $f8 +.L800A397C: +/* 0A457C 800A397C 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 0A4580 800A3980 44810000 */ mtc1 $at, $f0 +/* 0A4584 800A3984 3C01800F */ lui $at, %hi(D_800E8740) # $at, 0x800f +/* 0A4588 800A3988 4602003C */ c.lt.s $f0, $f2 +/* 0A458C 800A398C 00000000 */ nop +/* 0A4590 800A3990 45000002 */ bc1f .L800A399C +/* 0A4594 800A3994 00000000 */ nop +/* 0A4598 800A3998 46000086 */ mov.s $f2, $f0 +.L800A399C: +/* 0A459C 800A399C C44A002C */ lwc1 $f10, 0x2c($v0) +/* 0A45A0 800A39A0 00000000 */ nop +/* 0A45A4 800A39A4 460A603C */ c.lt.s $f12, $f10 +/* 0A45A8 800A39A8 00000000 */ nop +/* 0A45AC 800A39AC 45000002 */ bc1f .L800A39B8 +/* 0A45B0 800A39B0 00000000 */ nop +/* 0A45B4 800A39B4 46006086 */ mov.s $f2, $f12 +.L800A39B8: +/* 0A45B8 800A39B8 C42C8740 */ lwc1 $f12, %lo(D_800E8740)($at) +/* 0A45BC 800A39BC 3C014396 */ li $at, 0x43960000 # 300.000000 +/* 0A45C0 800A39C0 46020081 */ sub.s $f2, $f0, $f2 +/* 0A45C4 800A39C4 44818000 */ mtc1 $at, $f16 +/* 0A45C8 800A39C8 00000000 */ nop +/* 0A45CC 800A39CC 46101082 */ mul.s $f2, $f2, $f16 +/* 0A45D0 800A39D0 4602603C */ c.lt.s $f12, $f2 +/* 0A45D4 800A39D4 00000000 */ nop +/* 0A45D8 800A39D8 45000002 */ bc1f .L800A39E4 +/* 0A45DC 800A39DC 00000000 */ nop +/* 0A45E0 800A39E0 46006086 */ mov.s $f2, $f12 +.L800A39E4: +/* 0A45E4 800A39E4 0C01BAA8 */ jal func_8006EAA0 +/* 0A45E8 800A39E8 E7A20024 */ swc1 $f2, 0x24($sp) +/* 0A45EC 800A39EC C7A20024 */ lwc1 $f2, 0x24($sp) +/* 0A45F0 800A39F0 1440002E */ bnez $v0, .L800A3AAC +/* 0A45F4 800A39F4 3C0D8012 */ lui $t5, %hi(D_80126D0C) # $t5, 0x8012 +/* 0A45F8 800A39F8 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 +/* 0A45FC 800A39FC 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) +/* 0A4600 800A3A00 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 0A4604 800A3A04 844804C4 */ lh $t0, 0x4c4($v0) +/* 0A4608 800A3A08 00000000 */ nop +/* 0A460C 800A3A0C 44889000 */ mtc1 $t0, $f18 +/* 0A4610 800A3A10 00000000 */ nop +/* 0A4614 800A3A14 46809020 */ cvt.s.w $f0, $f18 +/* 0A4618 800A3A18 4600103C */ c.lt.s $f2, $f0 +/* 0A461C 800A3A1C 00000000 */ nop +/* 0A4620 800A3A20 45000012 */ bc1f .L800A3A6C +/* 0A4624 800A3A24 00000000 */ nop +/* 0A4628 800A3A28 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 0A462C 800A3A2C 44813000 */ mtc1 $at, $f6 +/* 0A4630 800A3A30 46001101 */ sub.s $f4, $f2, $f0 +/* 0A4634 800A3A34 00000000 */ nop +/* 0A4638 800A3A38 46062203 */ div.s $f8, $f4, $f6 +/* 0A463C 800A3A3C 46080280 */ add.s $f10, $f0, $f8 +/* 0A4640 800A3A40 4449F800 */ cfc1 $t1, $31 +/* 0A4644 800A3A44 00000000 */ nop +/* 0A4648 800A3A48 35210003 */ ori $at, $t1, 3 +/* 0A464C 800A3A4C 38210002 */ xori $at, $at, 2 +/* 0A4650 800A3A50 44C1F800 */ ctc1 $at, $31 +/* 0A4654 800A3A54 00000000 */ nop +/* 0A4658 800A3A58 46005424 */ cvt.w.s $f16, $f10 +/* 0A465C 800A3A5C 440A8000 */ mfc1 $t2, $f16 +/* 0A4660 800A3A60 44C9F800 */ ctc1 $t1, $31 +/* 0A4664 800A3A64 10000011 */ b .L800A3AAC +/* 0A4668 800A3A68 A44A04C4 */ sh $t2, 0x4c4($v0) +.L800A3A6C: +/* 0A466C 800A3A6C 46001481 */ sub.s $f18, $f2, $f0 +/* 0A4670 800A3A70 44812000 */ mtc1 $at, $f4 +/* 0A4674 800A3A74 00000000 */ nop +/* 0A4678 800A3A78 46049183 */ div.s $f6, $f18, $f4 +/* 0A467C 800A3A7C 46060200 */ add.s $f8, $f0, $f6 +/* 0A4680 800A3A80 444BF800 */ cfc1 $t3, $31 +/* 0A4684 800A3A84 00000000 */ nop +/* 0A4688 800A3A88 35610003 */ ori $at, $t3, 3 +/* 0A468C 800A3A8C 38210002 */ xori $at, $at, 2 +/* 0A4690 800A3A90 44C1F800 */ ctc1 $at, $31 +/* 0A4694 800A3A94 00000000 */ nop +/* 0A4698 800A3A98 460042A4 */ cvt.w.s $f10, $f8 +/* 0A469C 800A3A9C 440C5000 */ mfc1 $t4, $f10 +/* 0A46A0 800A3AA0 44CBF800 */ ctc1 $t3, $31 +/* 0A46A4 800A3AA4 A44C04C4 */ sh $t4, 0x4c4($v0) +/* 0A46A8 800A3AA8 00000000 */ nop +.L800A3AAC: +/* 0A46AC 800A3AAC 8DAD6D0C */ lw $t5, %lo(D_80126D0C)($t5) +/* 0A46B0 800A3AB0 3C0E800E */ lui $t6, 0x800e +/* 0A46B4 800A3AB4 01CD7021 */ addu $t6, $t6, $t5 +/* 0A46B8 800A3AB8 81CE27A4 */ lb $t6, 0x27a4($t6) +/* 0A46BC 800A3ABC 3C0F8012 */ lui $t7, %hi(D_80126CD3) # $t7, 0x8012 +/* 0A46C0 800A3AC0 15C00084 */ bnez $t6, .L800A3CD4 +/* 0A46C4 800A3AC4 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A46C8 800A3AC8 81EF6CD3 */ lb $t7, %lo(D_80126CD3)($t7) +/* 0A46CC 800A3ACC 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A46D0 800A3AD0 31F80002 */ andi $t8, $t7, 2 +/* 0A46D4 800A3AD4 1300001F */ beqz $t8, .L800A3B54 +/* 0A46D8 800A3AD8 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A46DC 800A3ADC 3C198012 */ lui $t9, %hi(D_80126CD0) # $t9, 0x8012 +/* 0A46E0 800A3AE0 83396CD0 */ lb $t9, %lo(D_80126CD0)($t9) +/* 0A46E4 800A3AE4 3C088012 */ lui $t0, %hi(D_8012718B) # $t0, 0x8012 +/* 0A46E8 800A3AE8 44998000 */ mtc1 $t9, $f16 +/* 0A46EC 800A3AEC 9108718B */ lbu $t0, %lo(D_8012718B)($t0) +/* 0A46F0 800A3AF0 468084A0 */ cvt.s.w $f18, $f16 +/* 0A46F4 800A3AF4 3C01437F */ li $at, 0x437F0000 # 255.000000 +/* 0A46F8 800A3AF8 44810000 */ mtc1 $at, $f0 +/* 0A46FC 800A3AFC 44883000 */ mtc1 $t0, $f6 +/* 0A4700 800A3B00 46009102 */ mul.s $f4, $f18, $f0 +/* 0A4704 800A3B04 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0A4708 800A3B08 05010004 */ bgez $t0, .L800A3B1C +/* 0A470C 800A3B0C 46803220 */ cvt.s.w $f8, $f6 +/* 0A4710 800A3B10 44815000 */ mtc1 $at, $f10 +/* 0A4714 800A3B14 00000000 */ nop +/* 0A4718 800A3B18 460A4200 */ add.s $f8, $f8, $f10 +.L800A3B1C: +/* 0A471C 800A3B1C 00000000 */ nop +/* 0A4720 800A3B20 46082403 */ div.s $f16, $f4, $f8 +/* 0A4724 800A3B24 46100481 */ sub.s $f18, $f0, $f16 +/* 0A4728 800A3B28 4449F800 */ cfc1 $t1, $31 +/* 0A472C 800A3B2C 00000000 */ nop +/* 0A4730 800A3B30 35210003 */ ori $at, $t1, 3 +/* 0A4734 800A3B34 38210002 */ xori $at, $at, 2 +/* 0A4738 800A3B38 44C1F800 */ ctc1 $at, $31 +/* 0A473C 800A3B3C 00000000 */ nop +/* 0A4740 800A3B40 460091A4 */ cvt.w.s $f6, $f18 +/* 0A4744 800A3B44 440A3000 */ mfc1 $t2, $f6 +/* 0A4748 800A3B48 44C9F800 */ ctc1 $t1, $31 +/* 0A474C 800A3B4C 10000003 */ b .L800A3B5C +/* 0A4750 800A3B50 AFAA001C */ sw $t2, 0x1c($sp) +.L800A3B54: +/* 0A4754 800A3B54 240B00FF */ li $t3, 255 +/* 0A4758 800A3B58 AFAB001C */ sw $t3, 0x1c($sp) +.L800A3B5C: +/* 0A475C 800A3B5C 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 +/* 0A4760 800A3B60 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) +/* 0A4764 800A3B64 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A4768 800A3B68 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A476C 800A3B6C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A4770 800A3B70 0C02A980 */ jal func_800AA600 +/* 0A4774 800A3B74 24E705A0 */ addiu $a3, $a3, 0x5a0 +/* 0A4778 800A3B78 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A477C 800A3B7C 0C01ECF4 */ jal func_8007B3D0 +/* 0A4780 800A3B80 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A4784 800A3B84 0C01EFC7 */ jal func_8007BF1C +/* 0A4788 800A3B88 24040001 */ li $a0, 1 +/* 0A478C 800A3B8C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A4790 800A3B90 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A4794 800A3B94 8C830000 */ lw $v1, ($a0) +/* 0A4798 800A3B98 3C0DFA00 */ lui $t5, 0xfa00 +/* 0A479C 800A3B9C 246C0008 */ addiu $t4, $v1, 8 +/* 0A47A0 800A3BA0 AC8C0000 */ sw $t4, ($a0) +/* 0A47A4 800A3BA4 AC6D0000 */ sw $t5, ($v1) +/* 0A47A8 800A3BA8 8FAE001C */ lw $t6, 0x1c($sp) +/* 0A47AC 800A3BAC 2401FF00 */ li $at, -256 +/* 0A47B0 800A3BB0 31CF00FF */ andi $t7, $t6, 0xff +/* 0A47B4 800A3BB4 01E1C025 */ or $t8, $t7, $at +/* 0A47B8 800A3BB8 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 +/* 0A47BC 800A3BBC AC780004 */ sw $t8, 4($v1) +/* 0A47C0 800A3BC0 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) +/* 0A47C4 800A3BC4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A47C8 800A3BC8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A47CC 800A3BCC 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A47D0 800A3BD0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A47D4 800A3BD4 0C02A980 */ jal func_800AA600 +/* 0A47D8 800A3BD8 24E704C0 */ addiu $a3, $a3, 0x4c0 +/* 0A47DC 800A3BDC 0C01EFC7 */ jal func_8007BF1C +/* 0A47E0 800A3BE0 00002025 */ move $a0, $zero +/* 0A47E4 800A3BE4 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 +/* 0A47E8 800A3BE8 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) +/* 0A47EC 800A3BEC 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A47F0 800A3BF0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A47F4 800A3BF4 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A47F8 800A3BF8 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A47FC 800A3BFC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A4800 800A3C00 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A4804 800A3C04 0C02A980 */ jal func_800AA600 +/* 0A4808 800A3C08 24E704E0 */ addiu $a3, $a3, 0x4e0 +/* 0A480C 800A3C0C 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 +/* 0A4810 800A3C10 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) +/* 0A4814 800A3C14 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A4818 800A3C18 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A481C 800A3C1C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A4820 800A3C20 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A4824 800A3C24 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A4828 800A3C28 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A482C 800A3C2C 0C02A980 */ jal func_800AA600 +/* 0A4830 800A3C30 24E70500 */ addiu $a3, $a3, 0x500 +/* 0A4834 800A3C34 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 +/* 0A4838 800A3C38 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) +/* 0A483C 800A3C3C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A4840 800A3C40 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A4844 800A3C44 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A4848 800A3C48 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A484C 800A3C4C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A4850 800A3C50 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A4854 800A3C54 0C02A980 */ jal func_800AA600 +/* 0A4858 800A3C58 24E70520 */ addiu $a3, $a3, 0x520 +/* 0A485C 800A3C5C 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 +/* 0A4860 800A3C60 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) +/* 0A4864 800A3C64 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A4868 800A3C68 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A486C 800A3C6C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A4870 800A3C70 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A4874 800A3C74 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A4878 800A3C78 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A487C 800A3C7C 0C02A980 */ jal func_800AA600 +/* 0A4880 800A3C80 24E70540 */ addiu $a3, $a3, 0x540 +/* 0A4884 800A3C84 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 +/* 0A4888 800A3C88 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) +/* 0A488C 800A3C8C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A4890 800A3C90 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A4894 800A3C94 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A4898 800A3C98 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A489C 800A3C9C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A48A0 800A3CA0 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A48A4 800A3CA4 0C02A980 */ jal func_800AA600 +/* 0A48A8 800A3CA8 24E70560 */ addiu $a3, $a3, 0x560 +/* 0A48AC 800A3CAC 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 +/* 0A48B0 800A3CB0 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) +/* 0A48B4 800A3CB4 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A48B8 800A3CB8 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A48BC 800A3CBC 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A48C0 800A3CC0 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A48C4 800A3CC4 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A48C8 800A3CC8 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A48CC 800A3CCC 0C02A980 */ jal func_800AA600 +/* 0A48D0 800A3CD0 24E70580 */ addiu $a3, $a3, 0x580 +.L800A3CD4: +/* 0A48D4 800A3CD4 8FBF0014 */ lw $ra, 0x14($sp) +.L800A3CD8: +/* 0A48D8 800A3CD8 27BD0028 */ addiu $sp, $sp, 0x28 +/* 0A48DC 800A3CDC 03E00008 */ jr $ra +/* 0A48E0 800A3CE0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A3CE4.s b/asm/non_matchings/unknown_09F8F0/func_800A3CE4.s new file mode 100644 index 00000000..2e3e90c5 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A3CE4.s @@ -0,0 +1,297 @@ +glabel func_800A3CE4 +/* 0A48E4 800A3CE4 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 0A48E8 800A3CE8 AFBF0024 */ sw $ra, 0x24($sp) +/* 0A48EC 800A3CEC AFA40058 */ sw $a0, 0x58($sp) +/* 0A48F0 800A3CF0 0C01BAA8 */ jal func_8006EAA0 +/* 0A48F4 800A3CF4 AFA5005C */ sw $a1, 0x5c($sp) +/* 0A48F8 800A3CF8 8FA90058 */ lw $t1, 0x58($sp) +/* 0A48FC 800A3CFC 14400111 */ bnez $v0, .L800A4144 +/* 0A4900 800A3D00 3C0F8012 */ lui $t7, %hi(D_80126D0C) # $t7, 0x8012 +/* 0A4904 800A3D04 15200008 */ bnez $t1, .L800A3D28 +/* 0A4908 800A3D08 3C03800E */ lui $v1, %hi(D_800E2770) # $v1, 0x800e +/* 0A490C 800A3D0C 24632770 */ addiu $v1, %lo(D_800E2770) # addiu $v1, $v1, 0x2770 +/* 0A4910 800A3D10 806E000C */ lb $t6, 0xc($v1) +/* 0A4914 800A3D14 2402FFFF */ li $v0, -1 +/* 0A4918 800A3D18 144E0003 */ bne $v0, $t6, .L800A3D28 +/* 0A491C 800A3D1C 00000000 */ nop +/* 0A4920 800A3D20 A0620003 */ sb $v0, 3($v1) +/* 0A4924 800A3D24 A0620013 */ sb $v0, 0x13($v1) +.L800A3D28: +/* 0A4928 800A3D28 8DEF6D0C */ lw $t7, %lo(D_80126D0C)($t7) +/* 0A492C 800A3D2C 24010001 */ li $at, 1 +/* 0A4930 800A3D30 15E10005 */ bne $t7, $at, .L800A3D48 +/* 0A4934 800A3D34 00000000 */ nop +/* 0A4938 800A3D38 0C01EFC7 */ jal func_8007BF1C +/* 0A493C 800A3D3C 24040001 */ li $a0, 1 +/* 0A4940 800A3D40 8FA90058 */ lw $t1, 0x58($sp) +/* 0A4944 800A3D44 00000000 */ nop +.L800A3D48: +/* 0A4948 800A3D48 19200083 */ blez $t1, .L800A3F58 +/* 0A494C 800A3D4C 3C088012 */ lui $t0, 0x8012 +/* 0A4950 800A3D50 3C188012 */ lui $t8, %hi(D_80126D34) # $t8, 0x8012 +/* 0A4954 800A3D54 93186D34 */ lbu $t8, %lo(D_80126D34)($t8) +/* 0A4958 800A3D58 00095A00 */ sll $t3, $t1, 8 +/* 0A495C 800A3D5C 1300002F */ beqz $t8, .L800A3E1C +/* 0A4960 800A3D60 01695823 */ subu $t3, $t3, $t1 +/* 0A4964 800A3D64 24010028 */ li $at, 40 +/* 0A4968 800A3D68 0161001A */ div $zero, $t3, $at +/* 0A496C 800A3D6C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A4970 800A3D70 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A4974 800A3D74 8C820000 */ lw $v0, ($a0) +/* 0A4978 800A3D78 2401FF00 */ li $at, -256 +/* 0A497C 800A3D7C 24590008 */ addiu $t9, $v0, 8 +/* 0A4980 800A3D80 AC990000 */ sw $t9, ($a0) +/* 0A4984 800A3D84 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A4988 800A3D88 3C0AFA00 */ lui $t2, 0xfa00 +/* 0A498C 800A3D8C 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A4990 800A3D90 AC4A0000 */ sw $t2, ($v0) +/* 0A4994 800A3D94 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A4998 800A3D98 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A499C 800A3D9C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A49A0 800A3DA0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A49A4 800A3DA4 00006012 */ mflo $t4 +/* 0A49A8 800A3DA8 318D00FF */ andi $t5, $t4, 0xff +/* 0A49AC 800A3DAC 01A17025 */ or $t6, $t5, $at +/* 0A49B0 800A3DB0 AC4E0004 */ sw $t6, 4($v0) +/* 0A49B4 800A3DB4 8D070000 */ lw $a3, ($t0) +/* 0A49B8 800A3DB8 0C02A980 */ jal func_800AA600 +/* 0A49BC 800A3DBC 24E701A0 */ addiu $a3, $a3, 0x1a0 +/* 0A49C0 800A3DC0 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A49C4 800A3DC4 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A49C8 800A3DC8 8C820000 */ lw $v0, ($a0) +/* 0A49CC 800A3DCC 3C18FA00 */ lui $t8, 0xfa00 +/* 0A49D0 800A3DD0 244F0008 */ addiu $t7, $v0, 8 +/* 0A49D4 800A3DD4 AC8F0000 */ sw $t7, ($a0) +/* 0A49D8 800A3DD8 2419FFFF */ li $t9, -1 +/* 0A49DC 800A3DDC 3C0A8012 */ lui $t2, %hi(D_80126CD4) # $t2, 0x8012 +/* 0A49E0 800A3DE0 AC590004 */ sw $t9, 4($v0) +/* 0A49E4 800A3DE4 AC580000 */ sw $t8, ($v0) +/* 0A49E8 800A3DE8 814A6CD4 */ lb $t2, %lo(D_80126CD4)($t2) +/* 0A49EC 800A3DEC 24010002 */ li $at, 2 +/* 0A49F0 800A3DF0 1541000A */ bne $t2, $at, .L800A3E1C +/* 0A49F4 800A3DF4 24040018 */ li $a0, 24 +/* 0A49F8 800A3DF8 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 +/* 0A49FC 800A3DFC 0C000741 */ jal func_80001D04 +/* 0A4A00 800A3E00 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 +/* 0A4A04 800A3E04 3C028012 */ lui $v0, %hi(D_80126CD4) # $v0, 0x8012 +/* 0A4A08 800A3E08 24426CD4 */ addiu $v0, %lo(D_80126CD4) # addiu $v0, $v0, 0x6cd4 +/* 0A4A0C 800A3E0C 804B0000 */ lb $t3, ($v0) +/* 0A4A10 800A3E10 00000000 */ nop +/* 0A4A14 800A3E14 256C0001 */ addiu $t4, $t3, 1 +/* 0A4A18 800A3E18 A04C0000 */ sb $t4, ($v0) +.L800A3E1C: +/* 0A4A1C 800A3E1C 3C0D8012 */ lui $t5, %hi(D_80126D3C) # $t5, 0x8012 +/* 0A4A20 800A3E20 8DAD6D3C */ lw $t5, %lo(D_80126D3C)($t5) +/* 0A4A24 800A3E24 00000000 */ nop +/* 0A4A28 800A3E28 15A000C4 */ bnez $t5, .L800A413C +/* 0A4A2C 800A3E2C 00000000 */ nop +/* 0A4A30 800A3E30 0C008D5A */ jal func_80023568 +/* 0A4A34 800A3E34 00000000 */ nop +/* 0A4A38 800A3E38 144000C0 */ bnez $v0, .L800A413C +/* 0A4A3C 800A3E3C 00000000 */ nop +/* 0A4A40 800A3E40 0C006E9D */ jal func_8001BA74 +/* 0A4A44 800A3E44 27A40038 */ addiu $a0, $sp, 0x38 +/* 0A4A48 800A3E48 8FA50038 */ lw $a1, 0x38($sp) +/* 0A4A4C 800A3E4C AFA20044 */ sw $v0, 0x44($sp) +/* 0A4A50 800A3E50 0C01BE53 */ jal func_8006F94C +/* 0A4A54 800A3E54 24040001 */ li $a0, 1 +/* 0A4A58 800A3E58 8FAE0044 */ lw $t6, 0x44($sp) +/* 0A4A5C 800A3E5C 00027880 */ sll $t7, $v0, 2 +/* 0A4A60 800A3E60 01CFC021 */ addu $t8, $t6, $t7 +/* 0A4A64 800A3E64 8F08FFFC */ lw $t0, -4($t8) +/* 0A4A68 800A3E68 00002025 */ move $a0, $zero +/* 0A4A6C 800A3E6C 8D030064 */ lw $v1, 0x64($t0) +/* 0A4A70 800A3E70 24050064 */ li $a1, 100 +/* 0A4A74 800A3E74 807901D6 */ lb $t9, 0x1d6($v1) +/* 0A4A78 800A3E78 00000000 */ nop +/* 0A4A7C 800A3E7C 172000AF */ bnez $t9, .L800A413C +/* 0A4A80 800A3E80 00000000 */ nop +/* 0A4A84 800A3E84 0C01BE53 */ jal func_8006F94C +/* 0A4A88 800A3E88 AFA80040 */ sw $t0, 0x40($sp) +/* 0A4A8C 800A3E8C 8FA80040 */ lw $t0, 0x40($sp) +/* 0A4A90 800A3E90 28410060 */ slti $at, $v0, 0x60 +/* 0A4A94 800A3E94 142000A9 */ bnez $at, .L800A413C +/* 0A4A98 800A3E98 00002025 */ move $a0, $zero +/* 0A4A9C 800A3E9C 24050007 */ li $a1, 7 +/* 0A4AA0 800A3EA0 0C01BE53 */ jal func_8006F94C +/* 0A4AA4 800A3EA4 AFA80040 */ sw $t0, 0x40($sp) +/* 0A4AA8 800A3EA8 44822000 */ mtc1 $v0, $f4 +/* 0A4AAC 800A3EAC 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 0A4AB0 800A3EB0 468021A1 */ cvt.d.w $f6, $f4 +/* 0A4AB4 800A3EB4 44814800 */ mtc1 $at, $f9 +/* 0A4AB8 800A3EB8 44804000 */ mtc1 $zero, $f8 +/* 0A4ABC 800A3EBC 3C01401C */ li $at, 0x401C0000 # 2.437500 +/* 0A4AC0 800A3EC0 46283282 */ mul.d $f10, $f6, $f8 +/* 0A4AC4 800A3EC4 44818800 */ mtc1 $at, $f17 +/* 0A4AC8 800A3EC8 44808000 */ mtc1 $zero, $f16 +/* 0A4ACC 800A3ECC 3C013FF4 */ li $at, 0x3FF40000 # 1.906250 +/* 0A4AD0 800A3ED0 44812800 */ mtc1 $at, $f5 +/* 0A4AD4 800A3ED4 46305483 */ div.d $f18, $f10, $f16 +/* 0A4AD8 800A3ED8 44802000 */ mtc1 $zero, $f4 +/* 0A4ADC 800A3EDC 00002025 */ move $a0, $zero +/* 0A4AE0 800A3EE0 24050007 */ li $a1, 7 +/* 0A4AE4 800A3EE4 46322181 */ sub.d $f6, $f4, $f18 +/* 0A4AE8 800A3EE8 46203220 */ cvt.s.d $f8, $f6 +/* 0A4AEC 800A3EEC 0C01BE53 */ jal func_8006F94C +/* 0A4AF0 800A3EF0 E7A8004C */ swc1 $f8, 0x4c($sp) +/* 0A4AF4 800A3EF4 00025980 */ sll $t3, $v0, 6 +/* 0A4AF8 800A3EF8 01625823 */ subu $t3, $t3, $v0 +/* 0A4AFC 800A3EFC 24010007 */ li $at, 7 +/* 0A4B00 800A3F00 0161001A */ div $zero, $t3, $at +/* 0A4B04 800A3F04 8FA80040 */ lw $t0, 0x40($sp) +/* 0A4B08 800A3F08 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 0A4B0C 800A3F0C 44818000 */ mtc1 $at, $f16 +/* 0A4B10 800A3F10 C7AA004C */ lwc1 $f10, 0x4c($sp) +/* 0A4B14 800A3F14 8D05000C */ lw $a1, 0xc($t0) +/* 0A4B18 800A3F18 8D060010 */ lw $a2, 0x10($t0) +/* 0A4B1C 800A3F1C 8D070014 */ lw $a3, 0x14($t0) +/* 0A4B20 800A3F20 46105102 */ mul.s $f4, $f10, $f16 +/* 0A4B24 800A3F24 3C0E8012 */ lui $t6, %hi(D_80126D3C) # $t6, 0x8012 +/* 0A4B28 800A3F28 25CE6D3C */ addiu $t6, %lo(D_80126D3C) # addiu $t6, $t6, 0x6d3c +/* 0A4B2C 800A3F2C 240A0004 */ li $t2, 4 +/* 0A4B30 800A3F30 AFAA0010 */ sw $t2, 0x10($sp) +/* 0A4B34 800A3F34 AFAE001C */ sw $t6, 0x1c($sp) +/* 0A4B38 800A3F38 E7A40018 */ swc1 $f4, 0x18($sp) +/* 0A4B3C 800A3F3C 2404004C */ li $a0, 76 +/* 0A4B40 800A3F40 00006012 */ mflo $t4 +/* 0A4B44 800A3F44 258D0018 */ addiu $t5, $t4, 0x18 +/* 0A4B48 800A3F48 0C00257A */ jal func_800095E8 +/* 0A4B4C 800A3F4C AFAD0014 */ sw $t5, 0x14($sp) +/* 0A4B50 800A3F50 1000007A */ b .L800A413C +/* 0A4B54 800A3F54 00000000 */ nop +.L800A3F58: +/* 0A4B58 800A3F58 25086CDC */ addiu $t0, $t0, 0x6cdc +/* 0A4B5C 800A3F5C 8D0F0000 */ lw $t7, ($t0) +/* 0A4B60 800A3F60 3C01C348 */ li $at, 0xC3480000 # -200.000000 +/* 0A4B64 800A3F64 44819000 */ mtc1 $at, $f18 +/* 0A4B68 800A3F68 C5E6018C */ lwc1 $f6, 0x18c($t7) +/* 0A4B6C 800A3F6C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A4B70 800A3F70 4606903C */ c.lt.s $f18, $f6 +/* 0A4B74 800A3F74 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A4B78 800A3F78 45000070 */ bc1f .L800A413C +/* 0A4B7C 800A3F7C 3C19FA00 */ lui $t9, 0xfa00 +/* 0A4B80 800A3F80 8C820000 */ lw $v0, ($a0) +/* 0A4B84 800A3F84 240AFFA0 */ li $t2, -96 +/* 0A4B88 800A3F88 24580008 */ addiu $t8, $v0, 8 +/* 0A4B8C 800A3F8C AC980000 */ sw $t8, ($a0) +/* 0A4B90 800A3F90 AC4A0004 */ sw $t2, 4($v0) +/* 0A4B94 800A3F94 AC590000 */ sw $t9, ($v0) +/* 0A4B98 800A3F98 8D070000 */ lw $a3, ($t0) +/* 0A4B9C 800A3F9C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A4BA0 800A3FA0 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A4BA4 800A3FA4 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A4BA8 800A3FA8 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A4BAC 800A3FAC 0C02A980 */ jal func_800AA600 +/* 0A4BB0 800A3FB0 24E70180 */ addiu $a3, $a3, 0x180 +/* 0A4BB4 800A3FB4 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A4BB8 800A3FB8 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A4BBC 800A3FBC 8C820000 */ lw $v0, ($a0) +/* 0A4BC0 800A3FC0 3C0CFA00 */ lui $t4, 0xfa00 +/* 0A4BC4 800A3FC4 244B0008 */ addiu $t3, $v0, 8 +/* 0A4BC8 800A3FC8 AC8B0000 */ sw $t3, ($a0) +/* 0A4BCC 800A3FCC 240DFFFF */ li $t5, -1 +/* 0A4BD0 800A3FD0 3C078012 */ lui $a3, %hi(D_80126D08) # $a3, 0x8012 +/* 0A4BD4 800A3FD4 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A4BD8 800A3FD8 AC4D0004 */ sw $t5, 4($v0) +/* 0A4BDC 800A3FDC AC4C0000 */ sw $t4, ($v0) +/* 0A4BE0 800A3FE0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A4BE4 800A3FE4 24E76D08 */ addiu $a3, %lo(D_80126D08) # addiu $a3, $a3, 0x6d08 +/* 0A4BE8 800A3FE8 8CEF0000 */ lw $t7, ($a3) +/* 0A4BEC 800A3FEC 8D0E0000 */ lw $t6, ($t0) +/* 0A4BF0 800A3FF0 8FB9005C */ lw $t9, 0x5c($sp) +/* 0A4BF4 800A3FF4 01CF2821 */ addu $a1, $t6, $t7 +/* 0A4BF8 800A3FF8 80B8019A */ lb $t8, 0x19a($a1) +/* 0A4BFC 800A3FFC 3C0E8012 */ lui $t6, %hi(D_80126CD4) # $t6, 0x8012 +/* 0A4C00 800A4000 03195021 */ addu $t2, $t8, $t9 +/* 0A4C04 800A4004 A0AA019A */ sb $t2, 0x19a($a1) +/* 0A4C08 800A4008 8CEB0000 */ lw $t3, ($a3) +/* 0A4C0C 800A400C 8D060000 */ lw $a2, ($t0) +/* 0A4C10 800A4010 00000000 */ nop +/* 0A4C14 800A4014 00CB6021 */ addu $t4, $a2, $t3 +/* 0A4C18 800A4018 818D019A */ lb $t5, 0x19a($t4) +/* 0A4C1C 800A401C 00000000 */ nop +/* 0A4C20 800A4020 29A1003C */ slti $at, $t5, 0x3c +/* 0A4C24 800A4024 14200025 */ bnez $at, .L800A40BC +/* 0A4C28 800A4028 00000000 */ nop +/* 0A4C2C 800A402C 81CE6CD4 */ lb $t6, %lo(D_80126CD4)($t6) +/* 0A4C30 800A4030 24010004 */ li $at, 4 +/* 0A4C34 800A4034 15C1001A */ bne $t6, $at, .L800A40A0 +/* 0A4C38 800A4038 8FB9005C */ lw $t9, 0x5c($sp) +/* 0A4C3C 800A403C 0C019884 */ jal func_80066210 +/* 0A4C40 800A4040 00000000 */ nop +/* 0A4C44 800A4044 28410002 */ slti $at, $v0, 2 +/* 0A4C48 800A4048 14200006 */ bnez $at, .L800A4064 +/* 0A4C4C 800A404C 3C013F80 */ lui $at, 0x3f80 +/* 0A4C50 800A4050 0C0002CD */ jal func_80000B34 +/* 0A4C54 800A4054 00002025 */ move $a0, $zero +/* 0A4C58 800A4058 10000006 */ b .L800A4074 +/* 0A4C5C 800A405C 24040016 */ li $a0, 22 +/* 0A4C60 800A4060 3C013F80 */ li $at, 0x3F800000 # 1.000000 +.L800A4064: +/* 0A4C64 800A4064 44816000 */ mtc1 $at, $f12 +/* 0A4C68 800A4068 0C01AF44 */ jal func_8006BD10 +/* 0A4C6C 800A406C 00000000 */ nop +/* 0A4C70 800A4070 24040016 */ li $a0, 22 +.L800A4074: +/* 0A4C74 800A4074 0C000741 */ jal func_80001D04 +/* 0A4C78 800A4078 00002825 */ move $a1, $zero +/* 0A4C7C 800A407C 3C028012 */ lui $v0, %hi(D_80126CD4) # $v0, 0x8012 +/* 0A4C80 800A4080 24426CD4 */ addiu $v0, %lo(D_80126CD4) # addiu $v0, $v0, 0x6cd4 +/* 0A4C84 800A4084 804F0000 */ lb $t7, ($v0) +/* 0A4C88 800A4088 3C068012 */ lui $a2, %hi(D_80126CDC) # $a2, 0x8012 +/* 0A4C8C 800A408C 25F80001 */ addiu $t8, $t7, 1 +/* 0A4C90 800A4090 A0580000 */ sb $t8, ($v0) +/* 0A4C94 800A4094 8CC66CDC */ lw $a2, %lo(D_80126CDC)($a2) +/* 0A4C98 800A4098 00000000 */ nop +/* 0A4C9C 800A409C 8FB9005C */ lw $t9, 0x5c($sp) +.L800A40A0: +/* 0A4CA0 800A40A0 C4C8018C */ lwc1 $f8, 0x18c($a2) +/* 0A4CA4 800A40A4 001950C0 */ sll $t2, $t9, 3 +/* 0A4CA8 800A40A8 448A5000 */ mtc1 $t2, $f10 +/* 0A4CAC 800A40AC 00000000 */ nop +/* 0A4CB0 800A40B0 46805420 */ cvt.s.w $f16, $f10 +/* 0A4CB4 800A40B4 46104101 */ sub.s $f4, $f8, $f16 +/* 0A4CB8 800A40B8 E4C4018C */ swc1 $f4, 0x18c($a2) +.L800A40BC: +/* 0A4CBC 800A40BC 3C0B8012 */ lui $t3, %hi(D_80126CD4) # $t3, 0x8012 +/* 0A4CC0 800A40C0 816B6CD4 */ lb $t3, %lo(D_80126CD4)($t3) +/* 0A4CC4 800A40C4 24010003 */ li $at, 3 +/* 0A4CC8 800A40C8 1561001C */ bne $t3, $at, .L800A413C +/* 0A4CCC 800A40CC 24040019 */ li $a0, 25 +/* 0A4CD0 800A40D0 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 +/* 0A4CD4 800A40D4 0C000741 */ jal func_80001D04 +/* 0A4CD8 800A40D8 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 +/* 0A4CDC 800A40DC 0C006D90 */ jal func_8001B640 +/* 0A4CE0 800A40E0 00000000 */ nop +/* 0A4CE4 800A40E4 1040000D */ beqz $v0, .L800A411C +/* 0A4CE8 800A40E8 00000000 */ nop +/* 0A4CEC 800A40EC 0C006D94 */ jal func_8001B650 +/* 0A4CF0 800A40F0 00000000 */ nop +/* 0A4CF4 800A40F4 14400009 */ bnez $v0, .L800A411C +/* 0A4CF8 800A40F8 2404024B */ li $a0, 587 +/* 0A4CFC 800A40FC 3C053FD9 */ lui $a1, (0x3FD9999A >> 16) # lui $a1, 0x3fd9 +/* 0A4D00 800A4100 34A5999A */ ori $a1, (0x3FD9999A & 0xFFFF) # ori $a1, $a1, 0x999a +/* 0A4D04 800A4104 0C029D21 */ jal func_800A7484 +/* 0A4D08 800A4108 00003025 */ move $a2, $zero +/* 0A4D0C 800A410C 3C053FD9 */ lui $a1, (0x3FD9999A >> 16) # lui $a1, 0x3fd9 +/* 0A4D10 800A4110 34A5999A */ ori $a1, (0x3FD9999A & 0xFFFF) # ori $a1, $a1, 0x999a +/* 0A4D14 800A4114 0C030C56 */ jal func_800C3158 +/* 0A4D18 800A4118 24040052 */ li $a0, 82 +.L800A411C: +/* 0A4D1C 800A411C 3C0D8012 */ lui $t5, %hi(D_80126CD4) # $t5, 0x8012 +/* 0A4D20 800A4120 81AD6CD4 */ lb $t5, %lo(D_80126CD4)($t5) +/* 0A4D24 800A4124 240C0001 */ li $t4, 1 +/* 0A4D28 800A4128 3C018012 */ lui $at, %hi(D_80126D70) # $at, 0x8012 +/* 0A4D2C 800A412C A02C6D70 */ sb $t4, %lo(D_80126D70)($at) +/* 0A4D30 800A4130 3C018012 */ lui $at, %hi(D_80126CD4) # $at, 0x8012 +/* 0A4D34 800A4134 25AE0001 */ addiu $t6, $t5, 1 +/* 0A4D38 800A4138 A02E6CD4 */ sb $t6, %lo(D_80126CD4)($at) +.L800A413C: +/* 0A4D3C 800A413C 0C01EFC7 */ jal func_8007BF1C +/* 0A4D40 800A4140 00002025 */ move $a0, $zero +.L800A4144: +/* 0A4D44 800A4144 8FBF0024 */ lw $ra, 0x24($sp) +/* 0A4D48 800A4148 27BD0058 */ addiu $sp, $sp, 0x58 +/* 0A4D4C 800A414C 03E00008 */ jr $ra +/* 0A4D50 800A4150 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A4154.s b/asm/non_matchings/unknown_09F8F0/func_800A4154.s new file mode 100644 index 00000000..6bdb7caf --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A4154.s @@ -0,0 +1,315 @@ +glabel func_800A4154 +/* 0A4D54 800A4154 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 0A4D58 800A4158 AFBF001C */ sw $ra, 0x1c($sp) +/* 0A4D5C 800A415C AFB00018 */ sw $s0, 0x18($sp) +/* 0A4D60 800A4160 AFA40040 */ sw $a0, 0x40($sp) +/* 0A4D64 800A4164 AFA50044 */ sw $a1, 0x44($sp) +/* 0A4D68 800A4168 84820000 */ lh $v0, ($a0) +/* 0A4D6C 800A416C 2401FFFF */ li $at, -1 +/* 0A4D70 800A4170 1041002B */ beq $v0, $at, .L800A4220 +/* 0A4D74 800A4174 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 +/* 0A4D78 800A4178 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) +/* 0A4D7C 800A417C 3C19800E */ lui $t9, 0x800e +/* 0A4D80 800A4180 1860000F */ blez $v1, .L800A41C0 +/* 0A4D84 800A4184 00037880 */ sll $t7, $v1, 2 +/* 0A4D88 800A4188 01E2C021 */ addu $t8, $t7, $v0 +/* 0A4D8C 800A418C 0338C821 */ addu $t9, $t9, $t8 +/* 0A4D90 800A4190 93392794 */ lbu $t9, 0x2794($t9) +/* 0A4D94 800A4194 24010002 */ li $at, 2 +/* 0A4D98 800A4198 13210009 */ beq $t9, $at, .L800A41C0 +/* 0A4D9C 800A419C 3C0A8012 */ lui $t2, %hi(D_80126D60) # $t2, 0x8012 +/* 0A4DA0 800A41A0 8D4A6D60 */ lw $t2, %lo(D_80126D60)($t2) +/* 0A4DA4 800A41A4 24010041 */ li $at, 65 +/* 0A4DA8 800A41A8 8142004C */ lb $v0, 0x4c($t2) +/* 0A4DAC 800A41AC 00000000 */ nop +/* 0A4DB0 800A41B0 10410003 */ beq $v0, $at, .L800A41C0 +/* 0A4DB4 800A41B4 24010040 */ li $at, 64 +/* 0A4DB8 800A41B8 1441010A */ bne $v0, $at, .L800A45E4 +/* 0A4DBC 800A41BC 8FBF001C */ lw $ra, 0x1c($sp) +.L800A41C0: +/* 0A4DC0 800A41C0 8FAB0040 */ lw $t3, 0x40($sp) +/* 0A4DC4 800A41C4 00000000 */ nop +/* 0A4DC8 800A41C8 816C01D8 */ lb $t4, 0x1d8($t3) +/* 0A4DCC 800A41CC 00000000 */ nop +/* 0A4DD0 800A41D0 15800104 */ bnez $t4, .L800A45E4 +/* 0A4DD4 800A41D4 8FBF001C */ lw $ra, 0x1c($sp) +/* 0A4DD8 800A41D8 18600011 */ blez $v1, .L800A4220 +/* 0A4DDC 800A41DC 00000000 */ nop +/* 0A4DE0 800A41E0 81620193 */ lb $v0, 0x193($t3) +/* 0A4DE4 800A41E4 00000000 */ nop +/* 0A4DE8 800A41E8 1840000D */ blez $v0, .L800A4220 +/* 0A4DEC 800A41EC 00026880 */ sll $t5, $v0, 2 +/* 0A4DF0 800A41F0 016D7021 */ addu $t6, $t3, $t5 +/* 0A4DF4 800A41F4 8DCF0128 */ lw $t7, 0x128($t6) +/* 0A4DF8 800A41F8 3C188012 */ lui $t8, %hi(D_80126D60) # $t8, 0x8012 +/* 0A4DFC 800A41FC 29E100B4 */ slti $at, $t7, 0xb4 +/* 0A4E00 800A4200 10200007 */ beqz $at, .L800A4220 +/* 0A4E04 800A4204 00000000 */ nop +/* 0A4E08 800A4208 8F186D60 */ lw $t8, %lo(D_80126D60)($t8) +/* 0A4E0C 800A420C 00000000 */ nop +/* 0A4E10 800A4210 8319004C */ lb $t9, 0x4c($t8) +/* 0A4E14 800A4214 00000000 */ nop +/* 0A4E18 800A4218 332A0040 */ andi $t2, $t9, 0x40 +/* 0A4E1C 800A421C 114000F0 */ beqz $t2, .L800A45E0 +.L800A4220: +/* 0A4E20 800A4220 3C108012 */ lui $s0, %hi(D_80126CDC) # $s0, 0x8012 +/* 0A4E24 800A4224 26106CDC */ addiu $s0, %lo(D_80126CDC) # addiu $s0, $s0, 0x6cdc +/* 0A4E28 800A4228 8E070000 */ lw $a3, ($s0) +/* 0A4E2C 800A422C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A4E30 800A4230 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A4E34 800A4234 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A4E38 800A4238 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A4E3C 800A423C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A4E40 800A4240 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A4E44 800A4244 0C02A980 */ jal func_800AA600 +/* 0A4E48 800A4248 24E70240 */ addiu $a3, $a3, 0x240 +/* 0A4E4C 800A424C 8FA60040 */ lw $a2, 0x40($sp) +/* 0A4E50 800A4250 8E020000 */ lw $v0, ($s0) +/* 0A4E54 800A4254 80C40185 */ lb $a0, 0x185($a2) +/* 0A4E58 800A4258 00000000 */ nop +/* 0A4E5C 800A425C AFA4003C */ sw $a0, 0x3c($sp) +/* 0A4E60 800A4260 804500FA */ lb $a1, 0xfa($v0) +/* 0A4E64 800A4264 904300F9 */ lbu $v1, 0xf9($v0) +/* 0A4E68 800A4268 14A0000A */ bnez $a1, .L800A4294 +/* 0A4E6C 800A426C 00000000 */ nop +/* 0A4E70 800A4270 804C00FB */ lb $t4, 0xfb($v0) +/* 0A4E74 800A4274 240B0002 */ li $t3, 2 +/* 0A4E78 800A4278 108C0006 */ beq $a0, $t4, .L800A4294 +/* 0A4E7C 800A427C 00000000 */ nop +/* 0A4E80 800A4280 A04B00FA */ sb $t3, 0xfa($v0) +/* 0A4E84 800A4284 8E0E0000 */ lw $t6, ($s0) +/* 0A4E88 800A4288 80CD0185 */ lb $t5, 0x185($a2) +/* 0A4E8C 800A428C 10000024 */ b .L800A4320 +/* 0A4E90 800A4290 A1CD00FB */ sb $t5, 0xfb($t6) +.L800A4294: +/* 0A4E94 800A4294 10A00022 */ beqz $a1, .L800A4320 +/* 0A4E98 800A4298 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 0A4E9C 800A429C 44812000 */ mtc1 $at, $f4 +/* 0A4EA0 800A42A0 00000000 */ nop +/* 0A4EA4 800A42A4 E4440388 */ swc1 $f4, 0x388($v0) +/* 0A4EA8 800A42A8 8FAF0044 */ lw $t7, 0x44($sp) +/* 0A4EAC 800A42AC 8E020000 */ lw $v0, ($s0) +/* 0A4EB0 800A42B0 000FC080 */ sll $t8, $t7, 2 +/* 0A4EB4 800A42B4 030FC023 */ subu $t8, $t8, $t7 +/* 0A4EB8 800A42B8 0018C080 */ sll $t8, $t8, 2 +/* 0A4EBC 800A42BC 844A00F8 */ lh $t2, 0xf8($v0) +/* 0A4EC0 800A42C0 030FC021 */ addu $t8, $t8, $t7 +/* 0A4EC4 800A42C4 00781821 */ addu $v1, $v1, $t8 +/* 0A4EC8 800A42C8 307900FF */ andi $t9, $v1, 0xff +/* 0A4ECC 800A42CC 314C00FF */ andi $t4, $t2, 0xff +/* 0A4ED0 800A42D0 032C082A */ slt $at, $t9, $t4 +/* 0A4ED4 800A42D4 10200012 */ beqz $at, .L800A4320 +/* 0A4ED8 800A42D8 03201825 */ move $v1, $t9 +/* 0A4EDC 800A42DC 804B00FA */ lb $t3, 0xfa($v0) +/* 0A4EE0 800A42E0 24040001 */ li $a0, 1 +/* 0A4EE4 800A42E4 256DFFFF */ addiu $t5, $t3, -1 +/* 0A4EE8 800A42E8 A04D00FA */ sb $t5, 0xfa($v0) +/* 0A4EEC 800A42EC 8E020000 */ lw $v0, ($s0) +/* 0A4EF0 800A42F0 00000000 */ nop +/* 0A4EF4 800A42F4 804E00FA */ lb $t6, 0xfa($v0) +/* 0A4EF8 800A42F8 00000000 */ nop +/* 0A4EFC 800A42FC 15C00008 */ bnez $t6, .L800A4320 +/* 0A4F00 800A4300 00000000 */ nop +/* 0A4F04 800A4304 A044039B */ sb $a0, 0x39b($v0) +/* 0A4F08 800A4308 8E180000 */ lw $t8, ($s0) +/* 0A4F0C 800A430C 240F0006 */ li $t7, 6 +/* 0A4F10 800A4310 A30F039A */ sb $t7, 0x39a($t8) +/* 0A4F14 800A4314 8E190000 */ lw $t9, ($s0) +/* 0A4F18 800A4318 00001825 */ move $v1, $zero +/* 0A4F1C 800A431C A7240398 */ sh $a0, 0x398($t9) +.L800A4320: +/* 0A4F20 800A4320 14600048 */ bnez $v1, .L800A4444 +/* 0A4F24 800A4324 00601025 */ move $v0, $v1 +/* 0A4F28 800A4328 24040001 */ li $a0, 1 +/* 0A4F2C 800A432C 0C01EFC7 */ jal func_8007BF1C +/* 0A4F30 800A4330 AFA30024 */ sw $v1, 0x24($sp) +/* 0A4F34 800A4334 0C019826 */ jal func_80066098 +/* 0A4F38 800A4338 24040001 */ li $a0, 1 +/* 0A4F3C 800A433C 8E070000 */ lw $a3, ($s0) +/* 0A4F40 800A4340 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A4F44 800A4344 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A4F48 800A4348 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A4F4C 800A434C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A4F50 800A4350 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A4F54 800A4354 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A4F58 800A4358 0C02A980 */ jal func_800AA600 +/* 0A4F5C 800A435C 24E70360 */ addiu $a3, $a3, 0x360 +/* 0A4F60 800A4360 0C019826 */ jal func_80066098 +/* 0A4F64 800A4364 00002025 */ move $a0, $zero +/* 0A4F68 800A4368 0C01EFC7 */ jal func_8007BF1C +/* 0A4F6C 800A436C 00002025 */ move $a0, $zero +/* 0A4F70 800A4370 8FAA0024 */ lw $t2, 0x24($sp) +/* 0A4F74 800A4374 8E0C0000 */ lw $t4, ($s0) +/* 0A4F78 800A4378 00000000 */ nop +/* 0A4F7C 800A437C A58A00F8 */ sh $t2, 0xf8($t4) +/* 0A4F80 800A4380 8E020000 */ lw $v0, ($s0) +/* 0A4F84 800A4384 00000000 */ nop +/* 0A4F88 800A4388 804B039B */ lb $t3, 0x39b($v0) +/* 0A4F8C 800A438C 00000000 */ nop +/* 0A4F90 800A4390 1160004D */ beqz $t3, .L800A44C8 +/* 0A4F94 800A4394 8FA9003C */ lw $t1, 0x3c($sp) +/* 0A4F98 800A4398 804D039A */ lb $t5, 0x39a($v0) +/* 0A4F9C 800A439C 8FAE0044 */ lw $t6, 0x44($sp) +/* 0A4FA0 800A43A0 24040006 */ li $a0, 6 +/* 0A4FA4 800A43A4 01AE7823 */ subu $t7, $t5, $t6 +/* 0A4FA8 800A43A8 A04F039A */ sb $t7, 0x39a($v0) +/* 0A4FAC 800A43AC 8E020000 */ lw $v0, ($s0) +/* 0A4FB0 800A43B0 00000000 */ nop +/* 0A4FB4 800A43B4 8058039A */ lb $t8, 0x39a($v0) +/* 0A4FB8 800A43B8 00000000 */ nop +/* 0A4FBC 800A43BC 07010011 */ bgez $t8, .L800A4404 +/* 0A4FC0 800A43C0 00000000 */ nop +/* 0A4FC4 800A43C4 A044039A */ sb $a0, 0x39a($v0) +/* 0A4FC8 800A43C8 8E020000 */ lw $v0, ($s0) +/* 0A4FCC 800A43CC 00000000 */ nop +/* 0A4FD0 800A43D0 84430398 */ lh $v1, 0x398($v0) +/* 0A4FD4 800A43D4 00000000 */ nop +/* 0A4FD8 800A43D8 14830009 */ bne $a0, $v1, .L800A4400 +/* 0A4FDC 800A43DC 246C0001 */ addiu $t4, $v1, 1 +/* 0A4FE0 800A43E0 A4400398 */ sh $zero, 0x398($v0) +/* 0A4FE4 800A43E4 8E020000 */ lw $v0, ($s0) +/* 0A4FE8 800A43E8 00000000 */ nop +/* 0A4FEC 800A43EC 8059039B */ lb $t9, 0x39b($v0) +/* 0A4FF0 800A43F0 00000000 */ nop +/* 0A4FF4 800A43F4 272AFFFF */ addiu $t2, $t9, -1 +/* 0A4FF8 800A43F8 10000002 */ b .L800A4404 +/* 0A4FFC 800A43FC A04A039B */ sb $t2, 0x39b($v0) +.L800A4400: +/* 0A5000 800A4400 A44C0398 */ sh $t4, 0x398($v0) +.L800A4404: +/* 0A5004 800A4404 0C019826 */ jal func_80066098 +/* 0A5008 800A4408 24040001 */ li $a0, 1 +/* 0A500C 800A440C 8E070000 */ lw $a3, ($s0) +/* 0A5010 800A4410 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A5014 800A4414 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A5018 800A4418 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A501C 800A441C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A5020 800A4420 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A5024 800A4424 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A5028 800A4428 0C02A980 */ jal func_800AA600 +/* 0A502C 800A442C 24E70380 */ addiu $a3, $a3, 0x380 +/* 0A5030 800A4430 0C019826 */ jal func_80066098 +/* 0A5034 800A4434 00002025 */ move $a0, $zero +/* 0A5038 800A4438 8E020000 */ lw $v0, ($s0) +/* 0A503C 800A443C 10000022 */ b .L800A44C8 +/* 0A5040 800A4440 8FA9003C */ lw $t1, 0x3c($sp) +.L800A4444: +/* 0A5044 800A4444 8E0D0000 */ lw $t5, ($s0) +/* 0A5048 800A4448 244B0080 */ addiu $t3, $v0, 0x80 +/* 0A504C 800A444C 00002025 */ move $a0, $zero +/* 0A5050 800A4450 0C01A142 */ jal func_80068508 +/* 0A5054 800A4454 A5AB00F8 */ sh $t3, 0xf8($t5) +/* 0A5058 800A4458 0C01EFC7 */ jal func_8007BF1C +/* 0A505C 800A445C 24040001 */ li $a0, 1 +/* 0A5060 800A4460 0C019826 */ jal func_80066098 +/* 0A5064 800A4464 24040001 */ li $a0, 1 +/* 0A5068 800A4468 8E070000 */ lw $a3, ($s0) +/* 0A506C 800A446C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A5070 800A4470 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A5074 800A4474 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A5078 800A4478 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A507C 800A447C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A5080 800A4480 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A5084 800A4484 0C02A980 */ jal func_800AA600 +/* 0A5088 800A4488 24E700E0 */ addiu $a3, $a3, 0xe0 +/* 0A508C 800A448C 0C01EFC7 */ jal func_8007BF1C +/* 0A5090 800A4490 00002025 */ move $a0, $zero +/* 0A5094 800A4494 0C019826 */ jal func_80066098 +/* 0A5098 800A4498 00002025 */ move $a0, $zero +/* 0A509C 800A449C 0C01A142 */ jal func_80068508 +/* 0A50A0 800A44A0 24040001 */ li $a0, 1 +/* 0A50A4 800A44A4 8E020000 */ lw $v0, ($s0) +/* 0A50A8 800A44A8 00000000 */ nop +/* 0A50AC 800A44AC 844E00F8 */ lh $t6, 0xf8($v0) +/* 0A50B0 800A44B0 00000000 */ nop +/* 0A50B4 800A44B4 25CFFF80 */ addiu $t7, $t6, -0x80 +/* 0A50B8 800A44B8 A44F00F8 */ sh $t7, 0xf8($v0) +/* 0A50BC 800A44BC 8E020000 */ lw $v0, ($s0) +/* 0A50C0 800A44C0 00000000 */ nop +/* 0A50C4 800A44C4 8FA9003C */ lw $t1, 0x3c($sp) +.L800A44C8: +/* 0A50C8 800A44C8 2408000A */ li $t0, 10 +/* 0A50CC 800A44CC 0128001A */ div $zero, $t1, $t0 +/* 0A50D0 800A44D0 15000002 */ bnez $t0, .L800A44DC +/* 0A50D4 800A44D4 00000000 */ nop +/* 0A50D8 800A44D8 0007000D */ break 7 +.L800A44DC: +/* 0A50DC 800A44DC 2401FFFF */ li $at, -1 +/* 0A50E0 800A44E0 15010004 */ bne $t0, $at, .L800A44F4 +/* 0A50E4 800A44E4 3C018000 */ lui $at, 0x8000 +/* 0A50E8 800A44E8 15210002 */ bne $t1, $at, .L800A44F4 +/* 0A50EC 800A44EC 00000000 */ nop +/* 0A50F0 800A44F0 0006000D */ break 6 +.L800A44F4: +/* 0A50F4 800A44F4 00001812 */ mflo $v1 +/* 0A50F8 800A44F8 1060001A */ beqz $v1, .L800A4564 +/* 0A50FC 800A44FC 00000000 */ nop +/* 0A5100 800A4500 0128001A */ div $zero, $t1, $t0 +/* 0A5104 800A4504 A4430118 */ sh $v1, 0x118($v0) +/* 0A5108 800A4508 8E190000 */ lw $t9, ($s0) +/* 0A510C 800A450C 15000002 */ bnez $t0, .L800A4518 +/* 0A5110 800A4510 00000000 */ nop +/* 0A5114 800A4514 0007000D */ break 7 +.L800A4518: +/* 0A5118 800A4518 2401FFFF */ li $at, -1 +/* 0A511C 800A451C 15010004 */ bne $t0, $at, .L800A4530 +/* 0A5120 800A4520 3C018000 */ lui $at, 0x8000 +/* 0A5124 800A4524 15210002 */ bne $t1, $at, .L800A4530 +/* 0A5128 800A4528 00000000 */ nop +/* 0A512C 800A452C 0006000D */ break 6 +.L800A4530: +/* 0A5130 800A4530 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A5134 800A4534 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A5138 800A4538 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A513C 800A453C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A5140 800A4540 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A5144 800A4544 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A5148 800A4548 0000C010 */ mfhi $t8 +/* 0A514C 800A454C A7380138 */ sh $t8, 0x138($t9) +/* 0A5150 800A4550 8E070000 */ lw $a3, ($s0) +/* 0A5154 800A4554 0C02A980 */ jal func_800AA600 +/* 0A5158 800A4558 24E70120 */ addiu $a3, $a3, 0x120 +/* 0A515C 800A455C 1000000F */ b .L800A459C +/* 0A5160 800A4560 8E070000 */ lw $a3, ($s0) +.L800A4564: +/* 0A5164 800A4564 0128001A */ div $zero, $t1, $t0 +/* 0A5168 800A4568 15000002 */ bnez $t0, .L800A4574 +/* 0A516C 800A456C 00000000 */ nop +/* 0A5170 800A4570 0007000D */ break 7 +.L800A4574: +/* 0A5174 800A4574 2401FFFF */ li $at, -1 +/* 0A5178 800A4578 15010004 */ bne $t0, $at, .L800A458C +/* 0A517C 800A457C 3C018000 */ lui $at, 0x8000 +/* 0A5180 800A4580 15210002 */ bne $t1, $at, .L800A458C +/* 0A5184 800A4584 00000000 */ nop +/* 0A5188 800A4588 0006000D */ break 6 +.L800A458C: +/* 0A518C 800A458C 00005010 */ mfhi $t2 +/* 0A5190 800A4590 A44A0118 */ sh $t2, 0x118($v0) +/* 0A5194 800A4594 00000000 */ nop +/* 0A5198 800A4598 8E070000 */ lw $a3, ($s0) +.L800A459C: +/* 0A519C 800A459C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A51A0 800A45A0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A51A4 800A45A4 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A51A8 800A45A8 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A51AC 800A45AC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A51B0 800A45B0 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A51B4 800A45B4 0C02A980 */ jal func_800AA600 +/* 0A51B8 800A45B8 24E70100 */ addiu $a3, $a3, 0x100 +/* 0A51BC 800A45BC 3C038012 */ lui $v1, %hi(D_80126CFC) # $v1, 0x8012 +/* 0A51C0 800A45C0 8C636CFC */ lw $v1, %lo(D_80126CFC)($v1) +/* 0A51C4 800A45C4 3C018012 */ lui $at, %hi(D_80126CFC) # $at, 0x8012 +/* 0A51C8 800A45C8 246C0008 */ addiu $t4, $v1, 8 +/* 0A51CC 800A45CC AC2C6CFC */ sw $t4, %lo(D_80126CFC)($at) +/* 0A51D0 800A45D0 3C0BFA00 */ lui $t3, 0xfa00 +/* 0A51D4 800A45D4 240DFFFF */ li $t5, -1 +/* 0A51D8 800A45D8 AC6D0004 */ sw $t5, 4($v1) +/* 0A51DC 800A45DC AC6B0000 */ sw $t3, ($v1) +.L800A45E0: +/* 0A51E0 800A45E0 8FBF001C */ lw $ra, 0x1c($sp) +.L800A45E4: +/* 0A51E4 800A45E4 8FB00018 */ lw $s0, 0x18($sp) +/* 0A51E8 800A45E8 03E00008 */ jr $ra +/* 0A51EC 800A45EC 27BD0040 */ addiu $sp, $sp, 0x40 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A45F0.s b/asm/non_matchings/unknown_09F8F0/func_800A45F0.s new file mode 100644 index 00000000..fb1a03e8 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A45F0.s @@ -0,0 +1,114 @@ +glabel func_800A45F0 +/* 0A51F0 800A45F0 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 0A51F4 800A45F4 AFB7003C */ sw $s7, 0x3c($sp) +/* 0A51F8 800A45F8 444EF800 */ cfc1 $t6, $31 +/* 0A51FC 800A45FC 3C178012 */ lui $s7, %hi(D_80126CDC) # $s7, 0x8012 +/* 0A5200 800A4600 26F76CDC */ addiu $s7, %lo(D_80126CDC) # addiu $s7, $s7, 0x6cdc +/* 0A5204 800A4604 AFB10024 */ sw $s1, 0x24($sp) +/* 0A5208 800A4608 8EF10000 */ lw $s1, ($s7) +/* 0A520C 800A460C 35C10003 */ ori $at, $t6, 3 +/* 0A5210 800A4610 AFBF0044 */ sw $ra, 0x44($sp) +/* 0A5214 800A4614 AFBE0040 */ sw $fp, 0x40($sp) +/* 0A5218 800A4618 AFB60038 */ sw $s6, 0x38($sp) +/* 0A521C 800A461C AFB50034 */ sw $s5, 0x34($sp) +/* 0A5220 800A4620 AFB40030 */ sw $s4, 0x30($sp) +/* 0A5224 800A4624 AFB3002C */ sw $s3, 0x2c($sp) +/* 0A5228 800A4628 AFB20028 */ sw $s2, 0x28($sp) +/* 0A522C 800A462C AFB00020 */ sw $s0, 0x20($sp) +/* 0A5230 800A4630 E7B50018 */ swc1 $f21, 0x18($sp) +/* 0A5234 800A4634 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 0A5238 800A4638 38210002 */ xori $at, $at, 2 +/* 0A523C 800A463C 44C1F800 */ ctc1 $at, $31 +/* 0A5240 800A4640 C6240410 */ lwc1 $f4, 0x410($s1) +/* 0A5244 800A4644 3C028012 */ lui $v0, %hi(D_80126D37) # $v0, 0x8012 +/* 0A5248 800A4648 460021A4 */ cvt.w.s $f6, $f4 +/* 0A524C 800A464C 90426D37 */ lbu $v0, %lo(D_80126D37)($v0) +/* 0A5250 800A4650 440F3000 */ mfc1 $t7, $f6 +/* 0A5254 800A4654 44CEF800 */ ctc1 $t6, $31 +/* 0A5258 800A4658 28410003 */ slti $at, $v0, 3 +/* 0A525C 800A465C 0080B025 */ move $s6, $a0 +/* 0A5260 800A4660 14200008 */ bnez $at, .L800A4684 +/* 0A5264 800A4664 AFAF0048 */ sw $t7, 0x48($sp) +/* 0A5268 800A4668 24010003 */ li $at, 3 +/* 0A526C 800A466C 14410017 */ bne $v0, $at, .L800A46CC +/* 0A5270 800A4670 3C014040 */ lui $at, 0x4040 +/* 0A5274 800A4674 84980000 */ lh $t8, ($a0) +/* 0A5278 800A4678 2401FFFF */ li $at, -1 +/* 0A527C 800A467C 17010013 */ bne $t8, $at, .L800A46CC +/* 0A5280 800A4680 3C014040 */ lui $at, 0x4040 +.L800A4684: +/* 0A5284 800A4684 82D90003 */ lb $t9, 3($s6) +/* 0A5288 800A4688 3C128012 */ lui $s2, %hi(D_80126CD5) # $s2, 0x8012 +/* 0A528C 800A468C 27280038 */ addiu $t0, $t9, 0x38 +/* 0A5290 800A4690 A6280646 */ sh $t0, 0x646($s1) +/* 0A5294 800A4694 8EE70000 */ lw $a3, ($s7) +/* 0A5298 800A4698 26526CD5 */ addiu $s2, %lo(D_80126CD5) # addiu $s2, $s2, 0x6cd5 +/* 0A529C 800A469C 241E0001 */ li $fp, 1 +/* 0A52A0 800A46A0 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A52A4 800A46A4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A52A8 800A46A8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A52AC 800A46AC A25E0000 */ sb $fp, ($s2) +/* 0A52B0 800A46B0 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A52B4 800A46B4 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A52B8 800A46B8 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A52BC 800A46BC 0C02A980 */ jal func_800AA600 +/* 0A52C0 800A46C0 24E70640 */ addiu $a3, $a3, 0x640 +/* 0A52C4 800A46C4 A2400000 */ sb $zero, ($s2) +/* 0A52C8 800A46C8 3C014040 */ li $at, 0x40400000 # 3.000000 +.L800A46CC: +/* 0A52CC 800A46CC 3C128012 */ lui $s2, %hi(D_80126CD5) # $s2, 0x8012 +/* 0A52D0 800A46D0 3C15800E */ lui $s5, %hi(D_800E2834) # $s5, 0x800e +/* 0A52D4 800A46D4 3C138080 */ lui $s3, (0x80808080 >> 16) # lui $s3, 0x8080 +/* 0A52D8 800A46D8 4481A000 */ mtc1 $at, $f20 +/* 0A52DC 800A46DC 26526CD5 */ addiu $s2, %lo(D_80126CD5) # addiu $s2, $s2, 0x6cd5 +/* 0A52E0 800A46E0 241E0001 */ li $fp, 1 +/* 0A52E4 800A46E4 36738080 */ ori $s3, (0x80808080 & 0xFFFF) # ori $s3, $s3, 0x8080 +/* 0A52E8 800A46E8 26B52834 */ addiu $s5, %lo(D_800E2834) # addiu $s5, $s5, 0x2834 +/* 0A52EC 800A46EC 00008025 */ move $s0, $zero +/* 0A52F0 800A46F0 2414000A */ li $s4, 10 +.L800A46F4: +/* 0A52F4 800A46F4 82C90193 */ lb $t1, 0x193($s6) +/* 0A52F8 800A46F8 8EF10000 */ lw $s1, ($s7) +/* 0A52FC 800A46FC 0209082A */ slt $at, $s0, $t1 +/* 0A5300 800A4700 14200002 */ bnez $at, .L800A470C +/* 0A5304 800A4704 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A5308 800A4708 AEB30000 */ sw $s3, ($s5) +.L800A470C: +/* 0A530C 800A470C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A5310 800A4710 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A5314 800A4714 A25E0000 */ sb $fp, ($s2) +/* 0A5318 800A4718 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A531C 800A471C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A5320 800A4720 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A5324 800A4724 0C02A980 */ jal func_800AA600 +/* 0A5328 800A4728 26270400 */ addiu $a3, $s1, 0x400 +/* 0A532C 800A472C 8EF10000 */ lw $s1, ($s7) +/* 0A5330 800A4730 A2400000 */ sb $zero, ($s2) +/* 0A5334 800A4734 C6280410 */ lwc1 $f8, 0x410($s1) +/* 0A5338 800A4738 26100001 */ addiu $s0, $s0, 1 +/* 0A533C 800A473C 46144281 */ sub.s $f10, $f8, $f20 +/* 0A5340 800A4740 1614FFEC */ bne $s0, $s4, .L800A46F4 +/* 0A5344 800A4744 E62A0410 */ swc1 $f10, 0x410($s1) +/* 0A5348 800A4748 8FAA0048 */ lw $t2, 0x48($sp) +/* 0A534C 800A474C 8EEB0000 */ lw $t3, ($s7) +/* 0A5350 800A4750 448A8000 */ mtc1 $t2, $f16 +/* 0A5354 800A4754 240CFFFE */ li $t4, -2 +/* 0A5358 800A4758 468084A0 */ cvt.s.w $f18, $f16 +/* 0A535C 800A475C E5720410 */ swc1 $f18, 0x410($t3) +/* 0A5360 800A4760 8FBF0044 */ lw $ra, 0x44($sp) +/* 0A5364 800A4764 AEAC0000 */ sw $t4, ($s5) +/* 0A5368 800A4768 A2400000 */ sb $zero, ($s2) +/* 0A536C 800A476C 8FB20028 */ lw $s2, 0x28($sp) +/* 0A5370 800A4770 8FB50034 */ lw $s5, 0x34($sp) +/* 0A5374 800A4774 8FBE0040 */ lw $fp, 0x40($sp) +/* 0A5378 800A4778 8FB7003C */ lw $s7, 0x3c($sp) +/* 0A537C 800A477C 8FB60038 */ lw $s6, 0x38($sp) +/* 0A5380 800A4780 8FB40030 */ lw $s4, 0x30($sp) +/* 0A5384 800A4784 8FB3002C */ lw $s3, 0x2c($sp) +/* 0A5388 800A4788 8FB10024 */ lw $s1, 0x24($sp) +/* 0A538C 800A478C 8FB00020 */ lw $s0, 0x20($sp) +/* 0A5390 800A4790 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 0A5394 800A4794 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 0A5398 800A4798 03E00008 */ jr $ra +/* 0A539C 800A479C 27BD0050 */ addiu $sp, $sp, 0x50 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A47A0.s b/asm/non_matchings/unknown_09F8F0/func_800A47A0.s new file mode 100644 index 00000000..e02c49cd --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A47A0.s @@ -0,0 +1,126 @@ +glabel func_800A47A0 +/* 0A53A0 800A47A0 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 0A53A4 800A47A4 AFBE0038 */ sw $fp, 0x38($sp) +/* 0A53A8 800A47A8 444EF800 */ cfc1 $t6, $31 +/* 0A53AC 800A47AC 3C1E8012 */ lui $fp, %hi(D_80126CDC) # $fp, 0x8012 +/* 0A53B0 800A47B0 27DE6CDC */ addiu $fp, %lo(D_80126CDC) # addiu $fp, $fp, 0x6cdc +/* 0A53B4 800A47B4 AFB1001C */ sw $s1, 0x1c($sp) +/* 0A53B8 800A47B8 8FD10000 */ lw $s1, ($fp) +/* 0A53BC 800A47BC 35C10003 */ ori $at, $t6, 3 +/* 0A53C0 800A47C0 AFBF003C */ sw $ra, 0x3c($sp) +/* 0A53C4 800A47C4 AFB70034 */ sw $s7, 0x34($sp) +/* 0A53C8 800A47C8 AFB60030 */ sw $s6, 0x30($sp) +/* 0A53CC 800A47CC AFB5002C */ sw $s5, 0x2c($sp) +/* 0A53D0 800A47D0 AFB40028 */ sw $s4, 0x28($sp) +/* 0A53D4 800A47D4 AFB30024 */ sw $s3, 0x24($sp) +/* 0A53D8 800A47D8 AFB20020 */ sw $s2, 0x20($sp) +/* 0A53DC 800A47DC AFB00018 */ sw $s0, 0x18($sp) +/* 0A53E0 800A47E0 AFA5004C */ sw $a1, 0x4c($sp) +/* 0A53E4 800A47E4 38210002 */ xori $at, $at, 2 +/* 0A53E8 800A47E8 44C1F800 */ ctc1 $at, $31 +/* 0A53EC 800A47EC C62405D0 */ lwc1 $f4, 0x5d0($s1) +/* 0A53F0 800A47F0 3C128080 */ lui $s2, (0x80808080 >> 16) # lui $s2, 0x8080 +/* 0A53F4 800A47F4 460021A4 */ cvt.w.s $f6, $f4 +/* 0A53F8 800A47F8 3C138012 */ lui $s3, %hi(D_80126CFC) # $s3, 0x8012 +/* 0A53FC 800A47FC 440F3000 */ mfc1 $t7, $f6 +/* 0A5400 800A4800 44CEF800 */ ctc1 $t6, $31 +/* 0A5404 800A4804 448F4000 */ mtc1 $t7, $f8 +/* 0A5408 800A4808 3C148012 */ lui $s4, %hi(D_80126D00) # $s4, 0x8012 +/* 0A540C 800A480C 468042A0 */ cvt.s.w $f10, $f8 +/* 0A5410 800A4810 3C158012 */ lui $s5, %hi(D_80126D04) # $s5, 0x8012 +/* 0A5414 800A4814 0080B025 */ move $s6, $a0 +/* 0A5418 800A4818 4459F800 */ cfc1 $t9, $31 +/* 0A541C 800A481C E62A05D0 */ swc1 $f10, 0x5d0($s1) +/* 0A5420 800A4820 8FD80000 */ lw $t8, ($fp) +/* 0A5424 800A4824 37210003 */ ori $at, $t9, 3 +/* 0A5428 800A4828 38210002 */ xori $at, $at, 2 +/* 0A542C 800A482C 44C1F800 */ ctc1 $at, $31 +/* 0A5430 800A4830 C71005D0 */ lwc1 $f16, 0x5d0($t8) +/* 0A5434 800A4834 26B56D04 */ addiu $s5, %lo(D_80126D04) # addiu $s5, $s5, 0x6d04 +/* 0A5438 800A4838 460084A4 */ cvt.w.s $f18, $f16 +/* 0A543C 800A483C 26946D00 */ addiu $s4, %lo(D_80126D00) # addiu $s4, $s4, 0x6d00 +/* 0A5440 800A4840 44089000 */ mfc1 $t0, $f18 +/* 0A5444 800A4844 44D9F800 */ ctc1 $t9, $31 +/* 0A5448 800A4848 26736CFC */ addiu $s3, %lo(D_80126CFC) # addiu $s3, $s3, 0x6cfc +/* 0A544C 800A484C 36528080 */ ori $s2, (0x80808080 & 0xFFFF) # ori $s2, $s2, 0x8080 +/* 0A5450 800A4850 00008025 */ move $s0, $zero +/* 0A5454 800A4854 24170008 */ li $s7, 8 +/* 0A5458 800A4858 AFA80040 */ sw $t0, 0x40($sp) +.L800A485C: +/* 0A545C 800A485C 82C90202 */ lb $t1, 0x202($s6) +/* 0A5460 800A4860 8FD10000 */ lw $s1, ($fp) +/* 0A5464 800A4864 0209082A */ slt $at, $s0, $t1 +/* 0A5468 800A4868 14200003 */ bnez $at, .L800A4878 +/* 0A546C 800A486C 02602025 */ move $a0, $s3 +/* 0A5470 800A4870 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e +/* 0A5474 800A4874 AC322834 */ sw $s2, %lo(D_800E2834)($at) +.L800A4878: +/* 0A5478 800A4878 02802825 */ move $a1, $s4 +/* 0A547C 800A487C 02A03025 */ move $a2, $s5 +/* 0A5480 800A4880 0C02A980 */ jal func_800AA600 +/* 0A5484 800A4884 262705C0 */ addiu $a3, $s1, 0x5c0 +/* 0A5488 800A4888 8FD10000 */ lw $s1, ($fp) +/* 0A548C 800A488C 26100001 */ addiu $s0, $s0, 1 +/* 0A5490 800A4890 822A05DC */ lb $t2, 0x5dc($s1) +/* 0A5494 800A4894 C62405D0 */ lwc1 $f4, 0x5d0($s1) +/* 0A5498 800A4898 448A3000 */ mtc1 $t2, $f6 +/* 0A549C 800A489C 00000000 */ nop +/* 0A54A0 800A48A0 46803220 */ cvt.s.w $f8, $f6 +/* 0A54A4 800A48A4 46082281 */ sub.s $f10, $f4, $f8 +/* 0A54A8 800A48A8 1617FFEC */ bne $s0, $s7, .L800A485C +/* 0A54AC 800A48AC E62A05D0 */ swc1 $f10, 0x5d0($s1) +/* 0A54B0 800A48B0 82CB0202 */ lb $t3, 0x202($s6) +/* 0A54B4 800A48B4 00000000 */ nop +/* 0A54B8 800A48B8 16EB001D */ bne $s7, $t3, .L800A4930 +/* 0A54BC 800A48BC 8FA80040 */ lw $t0, 0x40($sp) +/* 0A54C0 800A48C0 8FD10000 */ lw $s1, ($fp) +/* 0A54C4 800A48C4 8FAC004C */ lw $t4, 0x4c($sp) +/* 0A54C8 800A48C8 822205DB */ lb $v0, 0x5db($s1) +/* 0A54CC 800A48CC 00000000 */ nop +/* 0A54D0 800A48D0 2841001E */ slti $at, $v0, 0x1e +/* 0A54D4 800A48D4 10200004 */ beqz $at, .L800A48E8 +/* 0A54D8 800A48D8 004C6821 */ addu $t5, $v0, $t4 +/* 0A54DC 800A48DC A22D05DB */ sb $t5, 0x5db($s1) +/* 0A54E0 800A48E0 8FD10000 */ lw $s1, ($fp) +/* 0A54E4 800A48E4 00000000 */ nop +.L800A48E8: +/* 0A54E8 800A48E8 822E05DA */ lb $t6, 0x5da($s1) +/* 0A54EC 800A48EC 00000000 */ nop +/* 0A54F0 800A48F0 15C0000F */ bnez $t6, .L800A4930 +/* 0A54F4 800A48F4 8FA80040 */ lw $t0, 0x40($sp) +/* 0A54F8 800A48F8 822F05DB */ lb $t7, 0x5db($s1) +/* 0A54FC 800A48FC 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 +/* 0A5500 800A4900 29E1001E */ slti $at, $t7, 0x1e +/* 0A5504 800A4904 14200009 */ bnez $at, .L800A492C +/* 0A5508 800A4908 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 +/* 0A550C 800A490C 24180001 */ li $t8, 1 +/* 0A5510 800A4910 A23805DA */ sb $t8, 0x5da($s1) +/* 0A5514 800A4914 8CB90000 */ lw $t9, ($a1) +/* 0A5518 800A4918 00000000 */ nop +/* 0A551C 800A491C 17200004 */ bnez $t9, .L800A4930 +/* 0A5520 800A4920 8FA80040 */ lw $t0, 0x40($sp) +/* 0A5524 800A4924 0C000741 */ jal func_80001D04 +/* 0A5528 800A4928 24040147 */ li $a0, 327 +.L800A492C: +/* 0A552C 800A492C 8FA80040 */ lw $t0, 0x40($sp) +.L800A4930: +/* 0A5530 800A4930 8FC90000 */ lw $t1, ($fp) +/* 0A5534 800A4934 44888000 */ mtc1 $t0, $f16 +/* 0A5538 800A4938 240AFFFE */ li $t2, -2 +/* 0A553C 800A493C 468084A0 */ cvt.s.w $f18, $f16 +/* 0A5540 800A4940 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e +/* 0A5544 800A4944 E53205D0 */ swc1 $f18, 0x5d0($t1) +/* 0A5548 800A4948 8FBF003C */ lw $ra, 0x3c($sp) +/* 0A554C 800A494C 8FBE0038 */ lw $fp, 0x38($sp) +/* 0A5550 800A4950 8FB70034 */ lw $s7, 0x34($sp) +/* 0A5554 800A4954 8FB60030 */ lw $s6, 0x30($sp) +/* 0A5558 800A4958 8FB5002C */ lw $s5, 0x2c($sp) +/* 0A555C 800A495C 8FB40028 */ lw $s4, 0x28($sp) +/* 0A5560 800A4960 8FB30024 */ lw $s3, 0x24($sp) +/* 0A5564 800A4964 8FB20020 */ lw $s2, 0x20($sp) +/* 0A5568 800A4968 8FB1001C */ lw $s1, 0x1c($sp) +/* 0A556C 800A496C 8FB00018 */ lw $s0, 0x18($sp) +/* 0A5570 800A4970 AC2A2834 */ sw $t2, %lo(D_800E2834)($at) +/* 0A5574 800A4974 03E00008 */ jr $ra +/* 0A5578 800A4978 27BD0048 */ addiu $sp, $sp, 0x48 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A497C.s b/asm/non_matchings/unknown_09F8F0/func_800A497C.s new file mode 100644 index 00000000..2c5e1df6 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A497C.s @@ -0,0 +1,191 @@ +glabel func_800A497C +/* 0A557C 800A497C 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0A5580 800A4980 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 +/* 0A5584 800A4984 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) +/* 0A5588 800A4988 AFBF001C */ sw $ra, 0x1c($sp) +/* 0A558C 800A498C AFB00018 */ sw $s0, 0x18($sp) +/* 0A5590 800A4990 AFA40030 */ sw $a0, 0x30($sp) +/* 0A5594 800A4994 A3A00027 */ sb $zero, 0x27($sp) +/* 0A5598 800A4998 24470700 */ addiu $a3, $v0, 0x700 +/* 0A559C 800A499C 80E3001A */ lb $v1, 0x1a($a3) +/* 0A55A0 800A49A0 24040018 */ li $a0, 24 +/* 0A55A4 800A49A4 1060000B */ beqz $v1, .L800A49D4 +/* 0A55A8 800A49A8 24500740 */ addiu $s0, $v0, 0x740 +/* 0A55AC 800A49AC 24010001 */ li $at, 1 +/* 0A55B0 800A49B0 1061001F */ beq $v1, $at, .L800A4A30 +/* 0A55B4 800A49B4 24020002 */ li $v0, 2 +/* 0A55B8 800A49B8 1062005F */ beq $v1, $v0, .L800A4B38 +/* 0A55BC 800A49BC 00055880 */ sll $t3, $a1, 2 +/* 0A55C0 800A49C0 24020003 */ li $v0, 3 +/* 0A55C4 800A49C4 10620074 */ beq $v1, $v0, .L800A4B98 +/* 0A55C8 800A49C8 00000000 */ nop +/* 0A55CC 800A49CC 10000074 */ b .L800A4BA0 +/* 0A55D0 800A49D0 83AD0027 */ lb $t5, 0x27($sp) +.L800A49D4: +/* 0A55D4 800A49D4 0C0002F8 */ jal func_80000BE0 +/* 0A55D8 800A49D8 AFA7002C */ sw $a3, 0x2c($sp) +/* 0A55DC 800A49DC 0C0002CD */ jal func_80000B34 +/* 0A55E0 800A49E0 24040019 */ li $a0, 25 +/* 0A55E4 800A49E4 24040016 */ li $a0, 22 +/* 0A55E8 800A49E8 0C000741 */ jal func_80001D04 +/* 0A55EC 800A49EC 00002825 */ move $a1, $zero +/* 0A55F0 800A49F0 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 +/* 0A55F4 800A49F4 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 +/* 0A55F8 800A49F8 0C000741 */ jal func_80001D04 +/* 0A55FC 800A49FC 24040102 */ li $a0, 258 +/* 0A5600 800A4A00 3C02800E */ lui $v0, %hi(D_800E2770) # $v0, 0x800e +/* 0A5604 800A4A04 24422770 */ addiu $v0, %lo(D_800E2770) # addiu $v0, $v0, 0x2770 +/* 0A5608 800A4A08 8FAF0030 */ lw $t7, 0x30($sp) +/* 0A560C 800A4A0C 240E007F */ li $t6, 127 +/* 0A5610 800A4A10 A04E0002 */ sb $t6, 2($v0) +/* 0A5614 800A4A14 A0400003 */ sb $zero, 3($v0) +/* 0A5618 800A4A18 85F80000 */ lh $t8, ($t7) +/* 0A561C 800A4A1C 8FA7002C */ lw $a3, 0x2c($sp) +/* 0A5620 800A4A20 24190001 */ li $t9, 1 +/* 0A5624 800A4A24 A058000C */ sb $t8, 0xc($v0) +/* 0A5628 800A4A28 1000005C */ b .L800A4B9C +/* 0A562C 800A4A2C A0F9001A */ sb $t9, 0x1a($a3) +.L800A4A30: +/* 0A5630 800A4A30 00054080 */ sll $t0, $a1, 2 +/* 0A5634 800A4A34 01054023 */ subu $t0, $t0, $a1 +/* 0A5638 800A4A38 00084080 */ sll $t0, $t0, 2 +/* 0A563C 800A4A3C 01054021 */ addu $t0, $t0, $a1 +/* 0A5640 800A4A40 44882000 */ mtc1 $t0, $f4 +/* 0A5644 800A4A44 C4E6000C */ lwc1 $f6, 0xc($a3) +/* 0A5648 800A4A48 46802020 */ cvt.s.w $f0, $f4 +/* 0A564C 800A4A4C 3C01C1B8 */ li $at, 0xC1B80000 # -23.000000 +/* 0A5650 800A4A50 44811000 */ mtc1 $at, $f2 +/* 0A5654 800A4A54 46003200 */ add.s $f8, $f6, $f0 +/* 0A5658 800A4A58 E4E8000C */ swc1 $f8, 0xc($a3) +/* 0A565C 800A4A5C C4EA000C */ lwc1 $f10, 0xc($a3) +/* 0A5660 800A4A60 00000000 */ nop +/* 0A5664 800A4A64 460A103C */ c.lt.s $f2, $f10 +/* 0A5668 800A4A68 00000000 */ nop +/* 0A566C 800A4A6C 45000002 */ bc1f .L800A4A78 +/* 0A5670 800A4A70 00000000 */ nop +/* 0A5674 800A4A74 E4E2000C */ swc1 $f2, 0xc($a3) +.L800A4A78: +/* 0A5678 800A4A78 C610000C */ lwc1 $f16, 0xc($s0) +/* 0A567C 800A4A7C 3C0141B0 */ li $at, 0x41B00000 # 22.000000 +/* 0A5680 800A4A80 46008481 */ sub.s $f18, $f16, $f0 +/* 0A5684 800A4A84 44816000 */ mtc1 $at, $f12 +/* 0A5688 800A4A88 E612000C */ swc1 $f18, 0xc($s0) +/* 0A568C 800A4A8C C602000C */ lwc1 $f2, 0xc($s0) +/* 0A5690 800A4A90 00000000 */ nop +/* 0A5694 800A4A94 460C103C */ c.lt.s $f2, $f12 +/* 0A5698 800A4A98 00000000 */ nop +/* 0A569C 800A4A9C 45000004 */ bc1f .L800A4AB0 +/* 0A56A0 800A4AA0 00000000 */ nop +/* 0A56A4 800A4AA4 E60C000C */ swc1 $f12, 0xc($s0) +/* 0A56A8 800A4AA8 C602000C */ lwc1 $f2, 0xc($s0) +/* 0A56AC 800A4AAC 00000000 */ nop +.L800A4AB0: +/* 0A56B0 800A4AB0 46026032 */ c.eq.s $f12, $f2 +/* 0A56B4 800A4AB4 24090001 */ li $t1, 1 +/* 0A56B8 800A4AB8 45000038 */ bc1f .L800A4B9C +/* 0A56BC 800A4ABC A3A90027 */ sb $t1, 0x27($sp) +/* 0A56C0 800A4AC0 80EA001B */ lb $t2, 0x1b($a3) +/* 0A56C4 800A4AC4 240DFF88 */ li $t5, -120 +/* 0A56C8 800A4AC8 01455821 */ addu $t3, $t2, $a1 +/* 0A56CC 800A4ACC A0EB001B */ sb $t3, 0x1b($a3) +/* 0A56D0 800A4AD0 80EC001B */ lb $t4, 0x1b($a3) +/* 0A56D4 800A4AD4 00002825 */ move $a1, $zero +/* 0A56D8 800A4AD8 29810078 */ slti $at, $t4, 0x78 +/* 0A56DC 800A4ADC 14200005 */ bnez $at, .L800A4AF4 +/* 0A56E0 800A4AE0 24040016 */ li $a0, 22 +/* 0A56E4 800A4AE4 80EE001C */ lb $t6, 0x1c($a3) +/* 0A56E8 800A4AE8 A0ED001B */ sb $t5, 0x1b($a3) +/* 0A56EC 800A4AEC 25CF0001 */ addiu $t7, $t6, 1 +/* 0A56F0 800A4AF0 A0EF001C */ sb $t7, 0x1c($a3) +.L800A4AF4: +/* 0A56F4 800A4AF4 80F8001C */ lb $t8, 0x1c($a3) +/* 0A56F8 800A4AF8 24020002 */ li $v0, 2 +/* 0A56FC 800A4AFC 14580028 */ bne $v0, $t8, .L800A4BA0 +/* 0A5700 800A4B00 83AD0027 */ lb $t5, 0x27($sp) +/* 0A5704 800A4B04 A0E2001A */ sb $v0, 0x1a($a3) +/* 0A5708 800A4B08 0C000741 */ jal func_80001D04 +/* 0A570C 800A4B0C AFA7002C */ sw $a3, 0x2c($sp) +/* 0A5710 800A4B10 8FB90030 */ lw $t9, 0x30($sp) +/* 0A5714 800A4B14 3C02800E */ lui $v0, %hi(D_800E2770) # $v0, 0x800e +/* 0A5718 800A4B18 24422770 */ addiu $v0, %lo(D_800E2770) # addiu $v0, $v0, 0x2770 +/* 0A571C 800A4B1C 8049000C */ lb $t1, 0xc($v0) +/* 0A5720 800A4B20 87280000 */ lh $t0, ($t9) +/* 0A5724 800A4B24 8FA7002C */ lw $a3, 0x2c($sp) +/* 0A5728 800A4B28 1509001C */ bne $t0, $t1, .L800A4B9C +/* 0A572C 800A4B2C 240AFFFF */ li $t2, -1 +/* 0A5730 800A4B30 1000001A */ b .L800A4B9C +/* 0A5734 800A4B34 A04A0003 */ sb $t2, 3($v0) +.L800A4B38: +/* 0A5738 800A4B38 01655823 */ subu $t3, $t3, $a1 +/* 0A573C 800A4B3C 000B5880 */ sll $t3, $t3, 2 +/* 0A5740 800A4B40 01655821 */ addu $t3, $t3, $a1 +/* 0A5744 800A4B44 448B2000 */ mtc1 $t3, $f4 +/* 0A5748 800A4B48 C4E6000C */ lwc1 $f6, 0xc($a3) +/* 0A574C 800A4B4C 46802020 */ cvt.s.w $f0, $f4 +/* 0A5750 800A4B50 240C0001 */ li $t4, 1 +/* 0A5754 800A4B54 3C014348 */ li $at, 0x43480000 # 200.000000 +/* 0A5758 800A4B58 46003200 */ add.s $f8, $f6, $f0 +/* 0A575C 800A4B5C 44819000 */ mtc1 $at, $f18 +/* 0A5760 800A4B60 E4E8000C */ swc1 $f8, 0xc($a3) +/* 0A5764 800A4B64 C60A000C */ lwc1 $f10, 0xc($s0) +/* 0A5768 800A4B68 24020003 */ li $v0, 3 +/* 0A576C 800A4B6C 46005400 */ add.s $f16, $f10, $f0 +/* 0A5770 800A4B70 E610000C */ swc1 $f16, 0xc($s0) +/* 0A5774 800A4B74 A3AC0027 */ sb $t4, 0x27($sp) +/* 0A5778 800A4B78 C4E4000C */ lwc1 $f4, 0xc($a3) +/* 0A577C 800A4B7C 00000000 */ nop +/* 0A5780 800A4B80 4604903C */ c.lt.s $f18, $f4 +/* 0A5784 800A4B84 00000000 */ nop +/* 0A5788 800A4B88 45000005 */ bc1f .L800A4BA0 +/* 0A578C 800A4B8C 83AD0027 */ lb $t5, 0x27($sp) +/* 0A5790 800A4B90 10000002 */ b .L800A4B9C +/* 0A5794 800A4B94 A0E2001A */ sb $v0, 0x1a($a3) +.L800A4B98: +/* 0A5798 800A4B98 A0E2001A */ sb $v0, 0x1a($a3) +.L800A4B9C: +/* 0A579C 800A4B9C 83AD0027 */ lb $t5, 0x27($sp) +.L800A4BA0: +/* 0A57A0 800A4BA0 00000000 */ nop +/* 0A57A4 800A4BA4 11A0001F */ beqz $t5, .L800A4C24 +/* 0A57A8 800A4BA8 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A57AC 800A4BAC 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A57B0 800A4BB0 8C830000 */ lw $v1, ($a0) +/* 0A57B4 800A4BB4 3C0FFA00 */ lui $t7, 0xfa00 +/* 0A57B8 800A4BB8 246E0008 */ addiu $t6, $v1, 8 +/* 0A57BC 800A4BBC AC8E0000 */ sw $t6, ($a0) +/* 0A57C0 800A4BC0 2418FFD2 */ li $t8, -46 +/* 0A57C4 800A4BC4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A57C8 800A4BC8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A57CC 800A4BCC 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A57D0 800A4BD0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A57D4 800A4BD4 AC780004 */ sw $t8, 4($v1) +/* 0A57D8 800A4BD8 0C02A980 */ jal func_800AA600 +/* 0A57DC 800A4BDC AC6F0000 */ sw $t7, ($v1) +/* 0A57E0 800A4BE0 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A57E4 800A4BE4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A57E8 800A4BE8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A57EC 800A4BEC 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A57F0 800A4BF0 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A57F4 800A4BF4 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A57F8 800A4BF8 0C02A980 */ jal func_800AA600 +/* 0A57FC 800A4BFC 02003825 */ move $a3, $s0 +/* 0A5800 800A4C00 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A5804 800A4C04 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A5808 800A4C08 8C830000 */ lw $v1, ($a0) +/* 0A580C 800A4C0C 3C08FA00 */ lui $t0, 0xfa00 +/* 0A5810 800A4C10 24790008 */ addiu $t9, $v1, 8 +/* 0A5814 800A4C14 AC990000 */ sw $t9, ($a0) +/* 0A5818 800A4C18 2409FFFF */ li $t1, -1 +/* 0A581C 800A4C1C AC690004 */ sw $t1, 4($v1) +/* 0A5820 800A4C20 AC680000 */ sw $t0, ($v1) +.L800A4C24: +/* 0A5824 800A4C24 8FBF001C */ lw $ra, 0x1c($sp) +/* 0A5828 800A4C28 8FB00018 */ lw $s0, 0x18($sp) +/* 0A582C 800A4C2C 03E00008 */ jr $ra +/* 0A5830 800A4C30 27BD0030 */ addiu $sp, $sp, 0x30 + +/* 0A5834 800A4C34 AFA40000 */ sw $a0, ($sp) +/* 0A5838 800A4C38 AFA50004 */ sw $a1, 4($sp) +/* 0A583C 800A4C3C 03E00008 */ jr $ra +/* 0A5840 800A4C40 AFA60008 */ sw $a2, 8($sp) + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A4C44.s b/asm/non_matchings/unknown_09F8F0/func_800A4C44.s new file mode 100644 index 00000000..64271fc9 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A4C44.s @@ -0,0 +1,210 @@ +glabel func_800A4C44 +/* 0A5844 800A4C44 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0A5848 800A4C48 AFBF0014 */ sw $ra, 0x14($sp) +/* 0A584C 800A4C4C AFA5003C */ sw $a1, 0x3c($sp) +/* 0A5850 800A4C50 808E01D8 */ lb $t6, 0x1d8($a0) +/* 0A5854 800A4C54 00000000 */ nop +/* 0A5858 800A4C58 15C000BA */ bnez $t6, .L800A4F44 +/* 0A585C 800A4C5C 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A5860 800A4C60 848301AE */ lh $v1, 0x1ae($a0) +/* 0A5864 800A4C64 0C0044E7 */ jal func_8001139C +/* 0A5868 800A4C68 AFA30034 */ sw $v1, 0x34($sp) +/* 0A586C 800A4C6C 8FA30034 */ lw $v1, 0x34($sp) +/* 0A5870 800A4C70 1040001B */ beqz $v0, .L800A4CE0 +/* 0A5874 800A4C74 00000000 */ nop +/* 0A5878 800A4C78 0C01AF66 */ jal func_8006BD98 +/* 0A587C 800A4C7C 00000000 */ nop +/* 0A5880 800A4C80 24010008 */ li $at, 8 +/* 0A5884 800A4C84 10410005 */ beq $v0, $at, .L800A4C9C +/* 0A5888 800A4C88 00000000 */ nop +/* 0A588C 800A4C8C 0C008D07 */ jal func_8002341C +/* 0A5890 800A4C90 00000000 */ nop +/* 0A5894 800A4C94 10400003 */ beqz $v0, .L800A4CA4 +/* 0A5898 800A4C98 00000000 */ nop +.L800A4C9C: +/* 0A589C 800A4C9C 10000010 */ b .L800A4CE0 +/* 0A58A0 800A4CA0 24030002 */ li $v1, 2 +.L800A4CA4: +/* 0A58A4 800A4CA4 0C01BAA4 */ jal func_8006EA90 +/* 0A58A8 800A4CA8 00000000 */ nop +/* 0A58AC 800A4CAC 3C0F8012 */ lui $t7, %hi(D_80126D10) # $t7, 0x8012 +/* 0A58B0 800A4CB0 8DEF6D10 */ lw $t7, %lo(D_80126D10)($t7) +/* 0A58B4 800A4CB4 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A58B8 800A4CB8 000FC080 */ sll $t8, $t7, 2 +/* 0A58BC 800A4CBC 030FC023 */ subu $t8, $t8, $t7 +/* 0A58C0 800A4CC0 0018C0C0 */ sll $t8, $t8, 3 +/* 0A58C4 800A4CC4 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A58C8 800A4CC8 0058C821 */ addu $t9, $v0, $t8 +/* 0A58CC 800A4CCC 8323005A */ lb $v1, 0x5a($t9) +/* 0A58D0 800A4CD0 8D090000 */ lw $t1, ($t0) +/* 0A58D4 800A4CD4 00000000 */ nop +/* 0A58D8 800A4CD8 A5230018 */ sh $v1, 0x18($t1) +/* 0A58DC 800A4CDC 24630001 */ addiu $v1, $v1, 1 +.L800A4CE0: +/* 0A58E0 800A4CE0 3C0A8012 */ lui $t2, %hi(D_80126D0C) # $t2, 0x8012 +/* 0A58E4 800A4CE4 8D4A6D0C */ lw $t2, %lo(D_80126D0C)($t2) +/* 0A58E8 800A4CE8 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A58EC 800A4CEC 29410002 */ slti $at, $t2, 2 +/* 0A58F0 800A4CF0 10200017 */ beqz $at, .L800A4D50 +/* 0A58F4 800A4CF4 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A58F8 800A4CF8 28610004 */ slti $at, $v1, 4 +/* 0A58FC 800A4CFC 10200005 */ beqz $at, .L800A4D14 +/* 0A5900 800A4D00 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A5904 800A4D04 8D0C0000 */ lw $t4, ($t0) +/* 0A5908 800A4D08 246BFFFF */ addiu $t3, $v1, -1 +/* 0A590C 800A4D0C 10000004 */ b .L800A4D20 +/* 0A5910 800A4D10 A58B0038 */ sh $t3, 0x38($t4) +.L800A4D14: +/* 0A5914 800A4D14 8D0E0000 */ lw $t6, ($t0) +/* 0A5918 800A4D18 240D0003 */ li $t5, 3 +/* 0A591C 800A4D1C A5CD0038 */ sh $t5, 0x38($t6) +.L800A4D20: +/* 0A5920 800A4D20 8D070000 */ lw $a3, ($t0) +/* 0A5924 800A4D24 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A5928 800A4D28 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A592C 800A4D2C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A5930 800A4D30 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A5934 800A4D34 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A5938 800A4D38 AFA30034 */ sw $v1, 0x34($sp) +/* 0A593C 800A4D3C 0C02A980 */ jal func_800AA600 +/* 0A5940 800A4D40 24E70020 */ addiu $a3, $a3, 0x20 +/* 0A5944 800A4D44 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A5948 800A4D48 8FA30034 */ lw $v1, 0x34($sp) +/* 0A594C 800A4D4C 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +.L800A4D50: +/* 0A5950 800A4D50 8D0F0000 */ lw $t7, ($t0) +/* 0A5954 800A4D54 3C014300 */ li $at, 0x43000000 # 128.000000 +/* 0A5958 800A4D58 81F8001B */ lb $t8, 0x1b($t7) +/* 0A595C 800A4D5C 44813000 */ mtc1 $at, $f6 +/* 0A5960 800A4D60 27190081 */ addiu $t9, $t8, 0x81 +/* 0A5964 800A4D64 44992000 */ mtc1 $t9, $f4 +/* 0A5968 800A4D68 246CFFFF */ addiu $t4, $v1, -1 +/* 0A596C 800A4D6C 46802020 */ cvt.s.w $f0, $f4 +/* 0A5970 800A4D70 AFAC001C */ sw $t4, 0x1c($sp) +/* 0A5974 800A4D74 46060002 */ mul.s $f0, $f0, $f6 +/* 0A5978 800A4D78 4449F800 */ cfc1 $t1, $31 +/* 0A597C 800A4D7C 00000000 */ nop +/* 0A5980 800A4D80 35210003 */ ori $at, $t1, 3 +/* 0A5984 800A4D84 38210002 */ xori $at, $at, 2 +/* 0A5988 800A4D88 44C1F800 */ ctc1 $at, $31 +/* 0A598C 800A4D8C 00000000 */ nop +/* 0A5990 800A4D90 46000224 */ cvt.w.s $f8, $f0 +/* 0A5994 800A4D94 44044000 */ mfc1 $a0, $f8 +/* 0A5998 800A4D98 44C9F800 */ ctc1 $t1, $31 +/* 0A599C 800A4D9C 00045400 */ sll $t2, $a0, 0x10 +/* 0A59A0 800A4DA0 0C01C1F1 */ jal func_800707C4 +/* 0A59A4 800A4DA4 000A2403 */ sra $a0, $t2, 0x10 +/* 0A59A8 800A4DA8 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A59AC 800A4DAC 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A59B0 800A4DB0 8D020000 */ lw $v0, ($t0) +/* 0A59B4 800A4DB4 3C0142FE */ li $at, 0x42FE0000 # 127.000000 +/* 0A59B8 800A4DB8 804D001C */ lb $t5, 0x1c($v0) +/* 0A59BC 800A4DBC 44819000 */ mtc1 $at, $f18 +/* 0A59C0 800A4DC0 448D5000 */ mtc1 $t5, $f10 +/* 0A59C4 800A4DC4 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 0A59C8 800A4DC8 46805420 */ cvt.s.w $f16, $f10 +/* 0A59CC 800A4DCC 44814800 */ mtc1 $at, $f9 +/* 0A59D0 800A4DD0 44804000 */ mtc1 $zero, $f8 +/* 0A59D4 800A4DD4 46128103 */ div.s $f4, $f16, $f18 +/* 0A59D8 800A4DD8 460002A1 */ cvt.d.s $f10, $f0 +/* 0A59DC 800A4DDC 462A4402 */ mul.d $f16, $f8, $f10 +/* 0A59E0 800A4DE0 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 0A59E4 800A4DE4 44819800 */ mtc1 $at, $f19 +/* 0A59E8 800A4DE8 44809000 */ mtc1 $zero, $f18 +/* 0A59EC 800A4DEC 3C0141C0 */ li $at, 0x41C00000 # 24.000000 +/* 0A59F0 800A4DF0 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A59F4 800A4DF4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A59F8 800A4DF8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A59FC 800A4DFC 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A5A00 800A4E00 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A5A04 800A4E04 460021A1 */ cvt.d.s $f6, $f4 +/* 0A5A08 800A4E08 46309100 */ add.d $f4, $f18, $f16 +/* 0A5A0C 800A4E0C 44819000 */ mtc1 $at, $f18 +/* 0A5A10 800A4E10 46243200 */ add.d $f8, $f6, $f4 +/* 0A5A14 800A4E14 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A5A18 800A4E18 462042A0 */ cvt.s.d $f10, $f8 +/* 0A5A1C 800A4E1C E44A0008 */ swc1 $f10, 8($v0) +/* 0A5A20 800A4E20 8D020000 */ lw $v0, ($t0) +/* 0A5A24 800A4E24 00000000 */ nop +/* 0A5A28 800A4E28 C442000C */ lwc1 $f2, 0xc($v0) +/* 0A5A2C 800A4E2C 00000000 */ nop +/* 0A5A30 800A4E30 E7A20030 */ swc1 $f2, 0x30($sp) +/* 0A5A34 800A4E34 C4500008 */ lwc1 $f16, 8($v0) +/* 0A5A38 800A4E38 00000000 */ nop +/* 0A5A3C 800A4E3C 46109182 */ mul.s $f6, $f18, $f16 +/* 0A5A40 800A4E40 46061101 */ sub.s $f4, $f2, $f6 +/* 0A5A44 800A4E44 E444000C */ swc1 $f4, 0xc($v0) +/* 0A5A48 800A4E48 8D070000 */ lw $a3, ($t0) +/* 0A5A4C 800A4E4C 0C02A980 */ jal func_800AA600 +/* 0A5A50 800A4E50 00000000 */ nop +/* 0A5A54 800A4E54 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A5A58 800A4E58 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A5A5C 800A4E5C 8D0E0000 */ lw $t6, ($t0) +/* 0A5A60 800A4E60 C7A80030 */ lwc1 $f8, 0x30($sp) +/* 0A5A64 800A4E64 2405007F */ li $a1, 127 +/* 0A5A68 800A4E68 E5C8000C */ swc1 $f8, 0xc($t6) +/* 0A5A6C 800A4E6C 8D020000 */ lw $v0, ($t0) +/* 0A5A70 800A4E70 8FA4003C */ lw $a0, 0x3c($sp) +/* 0A5A74 800A4E74 804F001A */ lb $t7, 0x1a($v0) +/* 0A5A78 800A4E78 0004C100 */ sll $t8, $a0, 4 +/* 0A5A7C 800A4E7C 11E0000D */ beqz $t7, .L800A4EB4 +/* 0A5A80 800A4E80 00000000 */ nop +/* 0A5A84 800A4E84 8043001B */ lb $v1, 0x1b($v0) +/* 0A5A88 800A4E88 00B8C823 */ subu $t9, $a1, $t8 +/* 0A5A8C 800A4E8C 0079082A */ slt $at, $v1, $t9 +/* 0A5A90 800A4E90 10200005 */ beqz $at, .L800A4EA8 +/* 0A5A94 800A4E94 00784821 */ addu $t1, $v1, $t8 +/* 0A5A98 800A4E98 A049001B */ sb $t1, 0x1b($v0) +/* 0A5A9C 800A4E9C 8D020000 */ lw $v0, ($t0) +/* 0A5AA0 800A4EA0 10000005 */ b .L800A4EB8 +/* 0A5AA4 800A4EA4 8FA4001C */ lw $a0, 0x1c($sp) +.L800A4EA8: +/* 0A5AA8 800A4EA8 A045001B */ sb $a1, 0x1b($v0) +/* 0A5AAC 800A4EAC 8D020000 */ lw $v0, ($t0) +/* 0A5AB0 800A4EB0 00000000 */ nop +.L800A4EB4: +/* 0A5AB4 800A4EB4 8FA4001C */ lw $a0, 0x1c($sp) +.L800A4EB8: +/* 0A5AB8 800A4EB8 844A0018 */ lh $t2, 0x18($v0) +/* 0A5ABC 800A4EBC 2405007F */ li $a1, 127 +/* 0A5AC0 800A4EC0 108A0013 */ beq $a0, $t2, .L800A4F10 +/* 0A5AC4 800A4EC4 00000000 */ nop +/* 0A5AC8 800A4EC8 804B001A */ lb $t3, 0x1a($v0) +/* 0A5ACC 800A4ECC 240DFF81 */ li $t5, -127 +/* 0A5AD0 800A4ED0 11600009 */ beqz $t3, .L800A4EF8 +/* 0A5AD4 800A4ED4 00000000 */ nop +/* 0A5AD8 800A4ED8 8043001B */ lb $v1, 0x1b($v0) +/* 0A5ADC 800A4EDC 00000000 */ nop +/* 0A5AE0 800A4EE0 18600005 */ blez $v1, .L800A4EF8 +/* 0A5AE4 800A4EE4 00036023 */ negu $t4, $v1 +/* 0A5AE8 800A4EE8 A04C001B */ sb $t4, 0x1b($v0) +/* 0A5AEC 800A4EEC 8D020000 */ lw $v0, ($t0) +/* 0A5AF0 800A4EF0 10000008 */ b .L800A4F14 +/* 0A5AF4 800A4EF4 A4440018 */ sh $a0, 0x18($v0) +.L800A4EF8: +/* 0A5AF8 800A4EF8 A04D001B */ sb $t5, 0x1b($v0) +/* 0A5AFC 800A4EFC 8D0F0000 */ lw $t7, ($t0) +/* 0A5B00 800A4F00 240E0001 */ li $t6, 1 +/* 0A5B04 800A4F04 A1EE001A */ sb $t6, 0x1a($t7) +/* 0A5B08 800A4F08 8D020000 */ lw $v0, ($t0) +/* 0A5B0C 800A4F0C 00000000 */ nop +.L800A4F10: +/* 0A5B10 800A4F10 A4440018 */ sh $a0, 0x18($v0) +.L800A4F14: +/* 0A5B14 800A4F14 8D020000 */ lw $v0, ($t0) +/* 0A5B18 800A4F18 00000000 */ nop +/* 0A5B1C 800A4F1C 8058001A */ lb $t8, 0x1a($v0) +/* 0A5B20 800A4F20 00000000 */ nop +/* 0A5B24 800A4F24 13000007 */ beqz $t8, .L800A4F44 +/* 0A5B28 800A4F28 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A5B2C 800A4F2C 8059001B */ lb $t9, 0x1b($v0) +/* 0A5B30 800A4F30 00000000 */ nop +/* 0A5B34 800A4F34 14B90003 */ bne $a1, $t9, .L800A4F44 +/* 0A5B38 800A4F38 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A5B3C 800A4F3C A040001A */ sb $zero, 0x1a($v0) +/* 0A5B40 800A4F40 8FBF0014 */ lw $ra, 0x14($sp) +.L800A4F44: +/* 0A5B44 800A4F44 27BD0038 */ addiu $sp, $sp, 0x38 +/* 0A5B48 800A4F48 03E00008 */ jr $ra +/* 0A5B4C 800A4F4C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A4F50.s b/asm/non_matchings/unknown_09F8F0/func_800A4F50.s new file mode 100644 index 00000000..9984f39c --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A4F50.s @@ -0,0 +1,747 @@ +glabel func_800A4F50 +/* 0A5B50 800A4F50 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0A5B54 800A4F54 AFBF0014 */ sw $ra, 0x14($sp) +/* 0A5B58 800A4F58 AFA40018 */ sw $a0, 0x18($sp) +/* 0A5B5C 800A4F5C AFA5001C */ sw $a1, 0x1c($sp) +/* 0A5B60 800A4F60 808F01D8 */ lb $t7, 0x1d8($a0) +/* 0A5B64 800A4F64 3C028012 */ lui $v0, %hi(D_80126D0C) # $v0, 0x8012 +/* 0A5B68 800A4F68 15E00089 */ bnez $t7, .L800A5190 +/* 0A5B6C 800A4F6C 00000000 */ nop +/* 0A5B70 800A4F70 8C426D0C */ lw $v0, %lo(D_80126D0C)($v0) +/* 0A5B74 800A4F74 00000000 */ nop +/* 0A5B78 800A4F78 1840000B */ blez $v0, .L800A4FA8 +/* 0A5B7C 800A4F7C 00000000 */ nop +/* 0A5B80 800A4F80 80830193 */ lb $v1, 0x193($a0) +/* 0A5B84 800A4F84 00000000 */ nop +/* 0A5B88 800A4F88 18600007 */ blez $v1, .L800A4FA8 +/* 0A5B8C 800A4F8C 0003C080 */ sll $t8, $v1, 2 +/* 0A5B90 800A4F90 0098C821 */ addu $t9, $a0, $t8 +/* 0A5B94 800A4F94 8F2B0128 */ lw $t3, 0x128($t9) +/* 0A5B98 800A4F98 00000000 */ nop +/* 0A5B9C 800A4F9C 296100B4 */ slti $at, $t3, 0xb4 +/* 0A5BA0 800A4FA0 1420007B */ bnez $at, .L800A5190 +/* 0A5BA4 800A4FA4 00000000 */ nop +.L800A4FA8: +/* 0A5BA8 800A4FA8 1840000B */ blez $v0, .L800A4FD8 +/* 0A5BAC 800A4FAC 3C198012 */ lui $t9, %hi(D_80126D60) # $t9, 0x8012 +/* 0A5BB0 800A4FB0 8FAD0018 */ lw $t5, 0x18($sp) +/* 0A5BB4 800A4FB4 00026080 */ sll $t4, $v0, 2 +/* 0A5BB8 800A4FB8 85AF0000 */ lh $t7, ($t5) +/* 0A5BBC 800A4FBC 3C18800E */ lui $t8, 0x800e +/* 0A5BC0 800A4FC0 018F7021 */ addu $t6, $t4, $t7 +/* 0A5BC4 800A4FC4 030EC021 */ addu $t8, $t8, $t6 +/* 0A5BC8 800A4FC8 93182794 */ lbu $t8, 0x2794($t8) +/* 0A5BCC 800A4FCC 24010003 */ li $at, 3 +/* 0A5BD0 800A4FD0 1701006F */ bne $t8, $at, .L800A5190 +/* 0A5BD4 800A4FD4 00000000 */ nop +.L800A4FD8: +/* 0A5BD8 800A4FD8 8FAD0018 */ lw $t5, 0x18($sp) +/* 0A5BDC 800A4FDC 8F396D60 */ lw $t9, %lo(D_80126D60)($t9) +/* 0A5BE0 800A4FE0 81AC0194 */ lb $t4, 0x194($t5) +/* 0A5BE4 800A4FE4 832B004B */ lb $t3, 0x4b($t9) +/* 0A5BE8 800A4FE8 258F0001 */ addiu $t7, $t4, 1 +/* 0A5BEC 800A4FEC 156F0029 */ bne $t3, $t7, .L800A5094 +/* 0A5BF0 800A4FF0 28410002 */ slti $at, $v0, 2 +/* 0A5BF4 800A4FF4 10200027 */ beqz $at, .L800A5094 +/* 0A5BF8 800A4FF8 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A5BFC 800A4FFC 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A5C00 800A5000 8D020000 */ lw $v0, ($t0) +/* 0A5C04 800A5004 8FB8001C */ lw $t8, 0x1c($sp) +/* 0A5C08 800A5008 804E021A */ lb $t6, 0x21a($v0) +/* 0A5C0C 800A500C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A5C10 800A5010 01D8C821 */ addu $t9, $t6, $t8 +/* 0A5C14 800A5014 A059021A */ sb $t9, 0x21a($v0) +/* 0A5C18 800A5018 8D020000 */ lw $v0, ($t0) +/* 0A5C1C 800A501C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A5C20 800A5020 804D021A */ lb $t5, 0x21a($v0) +/* 0A5C24 800A5024 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A5C28 800A5028 29A10007 */ slti $at, $t5, 7 +/* 0A5C2C 800A502C 14200015 */ bnez $at, .L800A5084 +/* 0A5C30 800A5030 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A5C34 800A5034 844C0218 */ lh $t4, 0x218($v0) +/* 0A5C38 800A5038 00000000 */ nop +/* 0A5C3C 800A503C 258B0001 */ addiu $t3, $t4, 1 +/* 0A5C40 800A5040 A44B0218 */ sh $t3, 0x218($v0) +/* 0A5C44 800A5044 8D020000 */ lw $v0, ($t0) +/* 0A5C48 800A5048 00000000 */ nop +/* 0A5C4C 800A504C 804F021A */ lb $t7, 0x21a($v0) +/* 0A5C50 800A5050 00000000 */ nop +/* 0A5C54 800A5054 25EEFFFA */ addiu $t6, $t7, -6 +/* 0A5C58 800A5058 A04E021A */ sb $t6, 0x21a($v0) +/* 0A5C5C 800A505C 8D020000 */ lw $v0, ($t0) +/* 0A5C60 800A5060 00000000 */ nop +/* 0A5C64 800A5064 84580218 */ lh $t8, 0x218($v0) +/* 0A5C68 800A5068 00000000 */ nop +/* 0A5C6C 800A506C 2B010005 */ slti $at, $t8, 5 +/* 0A5C70 800A5070 14200004 */ bnez $at, .L800A5084 +/* 0A5C74 800A5074 00000000 */ nop +/* 0A5C78 800A5078 A4400218 */ sh $zero, 0x218($v0) +/* 0A5C7C 800A507C 8D020000 */ lw $v0, ($t0) +/* 0A5C80 800A5080 00000000 */ nop +.L800A5084: +/* 0A5C84 800A5084 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A5C88 800A5088 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A5C8C 800A508C 0C02A980 */ jal func_800AA600 +/* 0A5C90 800A5090 24470200 */ addiu $a3, $v0, 0x200 +.L800A5094: +/* 0A5C94 800A5094 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A5C98 800A5098 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A5C9C 800A509C 8D070000 */ lw $a3, ($t0) +/* 0A5CA0 800A50A0 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A5CA4 800A50A4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A5CA8 800A50A8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A5CAC 800A50AC 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A5CB0 800A50B0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A5CB4 800A50B4 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A5CB8 800A50B8 0C02A980 */ jal func_800AA600 +/* 0A5CBC 800A50BC 24E70060 */ addiu $a3, $a3, 0x60 +/* 0A5CC0 800A50C0 3C0A8012 */ lui $t2, %hi(D_80126D60) # $t2, 0x8012 +/* 0A5CC4 800A50C4 254A6D60 */ addiu $t2, %lo(D_80126D60) # addiu $t2, $t2, 0x6d60 +/* 0A5CC8 800A50C8 8D590000 */ lw $t9, ($t2) +/* 0A5CCC 800A50CC 8FA90018 */ lw $t1, 0x18($sp) +/* 0A5CD0 800A50D0 8322004B */ lb $v0, 0x4b($t9) +/* 0A5CD4 800A50D4 81230194 */ lb $v1, 0x194($t1) +/* 0A5CD8 800A50D8 244DFFFF */ addiu $t5, $v0, -1 +/* 0A5CDC 800A50DC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A5CE0 800A50E0 006D082A */ slt $at, $v1, $t5 +/* 0A5CE4 800A50E4 14200004 */ bnez $at, .L800A50F8 +/* 0A5CE8 800A50E8 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A5CEC 800A50EC 8D0C0000 */ lw $t4, ($t0) +/* 0A5CF0 800A50F0 10000004 */ b .L800A5104 +/* 0A5CF4 800A50F4 A5820098 */ sh $v0, 0x98($t4) +.L800A50F8: +/* 0A5CF8 800A50F8 8D0F0000 */ lw $t7, ($t0) +/* 0A5CFC 800A50FC 246B0001 */ addiu $t3, $v1, 1 +/* 0A5D00 800A5100 A5EB0098 */ sh $t3, 0x98($t7) +.L800A5104: +/* 0A5D04 800A5104 8D4E0000 */ lw $t6, ($t2) +/* 0A5D08 800A5108 8D190000 */ lw $t9, ($t0) +/* 0A5D0C 800A510C 81D8004B */ lb $t8, 0x4b($t6) +/* 0A5D10 800A5110 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A5D14 800A5114 A73800D8 */ sh $t8, 0xd8($t9) +/* 0A5D18 800A5118 8D070000 */ lw $a3, ($t0) +/* 0A5D1C 800A511C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A5D20 800A5120 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A5D24 800A5124 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A5D28 800A5128 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A5D2C 800A512C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A5D30 800A5130 0C02A980 */ jal func_800AA600 +/* 0A5D34 800A5134 24E70080 */ addiu $a3, $a3, 0x80 +/* 0A5D38 800A5138 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A5D3C 800A513C 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A5D40 800A5140 8D070000 */ lw $a3, ($t0) +/* 0A5D44 800A5144 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A5D48 800A5148 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A5D4C 800A514C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A5D50 800A5150 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A5D54 800A5154 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A5D58 800A5158 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A5D5C 800A515C 0C02A980 */ jal func_800AA600 +/* 0A5D60 800A5160 24E700A0 */ addiu $a3, $a3, 0xa0 +/* 0A5D64 800A5164 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A5D68 800A5168 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A5D6C 800A516C 8D070000 */ lw $a3, ($t0) +/* 0A5D70 800A5170 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A5D74 800A5174 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A5D78 800A5178 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A5D7C 800A517C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A5D80 800A5180 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A5D84 800A5184 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A5D88 800A5188 0C02A980 */ jal func_800AA600 +/* 0A5D8C 800A518C 24E700C0 */ addiu $a3, $a3, 0xc0 +.L800A5190: +/* 0A5D90 800A5190 3C0D8012 */ lui $t5, %hi(D_80126D0C) # $t5, 0x8012 +/* 0A5D94 800A5194 8DAD6D0C */ lw $t5, %lo(D_80126D0C)($t5) +/* 0A5D98 800A5198 24010001 */ li $at, 1 +/* 0A5D9C 800A519C 15A10003 */ bne $t5, $at, .L800A51AC +/* 0A5DA0 800A51A0 00000000 */ nop +/* 0A5DA4 800A51A4 0C01EFC7 */ jal func_8007BF1C +/* 0A5DA8 800A51A8 24040001 */ li $a0, 1 +.L800A51AC: +/* 0A5DAC 800A51AC 0C01BAA8 */ jal func_8006EAA0 +/* 0A5DB0 800A51B0 00000000 */ nop +/* 0A5DB4 800A51B4 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A5DB8 800A51B8 8FA90018 */ lw $t1, 0x18($sp) +/* 0A5DBC 800A51BC 14400223 */ bnez $v0, .L800A5A4C +/* 0A5DC0 800A51C0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A5DC4 800A51C4 81230193 */ lb $v1, 0x193($t1) +/* 0A5DC8 800A51C8 00000000 */ nop +/* 0A5DCC 800A51CC 00036080 */ sll $t4, $v1, 2 +/* 0A5DD0 800A51D0 012C5821 */ addu $t3, $t1, $t4 +/* 0A5DD4 800A51D4 8D6F0128 */ lw $t7, 0x128($t3) +/* 0A5DD8 800A51D8 00000000 */ nop +/* 0A5DDC 800A51DC 29E1001E */ slti $at, $t7, 0x1e +/* 0A5DE0 800A51E0 102000BF */ beqz $at, .L800A54E0 +/* 0A5DE4 800A51E4 00000000 */ nop +/* 0A5DE8 800A51E8 8D020000 */ lw $v0, ($t0) +/* 0A5DEC 800A51EC 00000000 */ nop +/* 0A5DF0 800A51F0 804E03DA */ lb $t6, 0x3da($v0) +/* 0A5DF4 800A51F4 00000000 */ nop +/* 0A5DF8 800A51F8 15C000B9 */ bnez $t6, .L800A54E0 +/* 0A5DFC 800A51FC 00000000 */ nop +/* 0A5E00 800A5200 813801D8 */ lb $t8, 0x1d8($t1) +/* 0A5E04 800A5204 24060001 */ li $a2, 1 +/* 0A5E08 800A5208 170000B5 */ bnez $t8, .L800A54E0 +/* 0A5E0C 800A520C 00000000 */ nop +/* 0A5E10 800A5210 14C30058 */ bne $a2, $v1, .L800A5374 +/* 0A5E14 800A5214 3C198012 */ lui $t9, %hi(D_80126D60) # $t9, 0x8012 +/* 0A5E18 800A5218 8F396D60 */ lw $t9, %lo(D_80126D60)($t9) +/* 0A5E1C 800A521C 240C0002 */ li $t4, 2 +/* 0A5E20 800A5220 832D004B */ lb $t5, 0x4b($t9) +/* 0A5E24 800A5224 24040016 */ li $a0, 22 +/* 0A5E28 800A5228 29A10003 */ slti $at, $t5, 3 +/* 0A5E2C 800A522C 14200051 */ bnez $at, .L800A5374 +/* 0A5E30 800A5230 00000000 */ nop +/* 0A5E34 800A5234 A04C03DA */ sb $t4, 0x3da($v0) +/* 0A5E38 800A5238 8D0B0000 */ lw $t3, ($t0) +/* 0A5E3C 800A523C 00002825 */ move $a1, $zero +/* 0A5E40 800A5240 A16603DB */ sb $a2, 0x3db($t3) +/* 0A5E44 800A5244 8D0F0000 */ lw $t7, ($t0) +/* 0A5E48 800A5248 0C000741 */ jal func_80001D04 +/* 0A5E4C 800A524C A1E003DD */ sb $zero, 0x3dd($t7) +/* 0A5E50 800A5250 3C028012 */ lui $v0, %hi(D_80126D0C) # $v0, 0x8012 +/* 0A5E54 800A5254 8C426D0C */ lw $v0, %lo(D_80126D0C)($v0) +/* 0A5E58 800A5258 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A5E5C 800A525C 8FA90018 */ lw $t1, 0x18($sp) +/* 0A5E60 800A5260 10400006 */ beqz $v0, .L800A527C +/* 0A5E64 800A5264 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A5E68 800A5268 24010001 */ li $at, 1 +/* 0A5E6C 800A526C 10410012 */ beq $v0, $at, .L800A52B8 +/* 0A5E70 800A5270 240FFFF0 */ li $t7, -16 +/* 0A5E74 800A5274 1000001E */ b .L800A52F0 +/* 0A5E78 800A5278 24010002 */ li $at, 2 +.L800A527C: +/* 0A5E7C 800A527C 8D180000 */ lw $t8, ($t0) +/* 0A5E80 800A5280 240EFFEB */ li $t6, -21 +/* 0A5E84 800A5284 A30E03DC */ sb $t6, 0x3dc($t8) +/* 0A5E88 800A5288 8D0D0000 */ lw $t5, ($t0) +/* 0A5E8C 800A528C 24190020 */ li $t9, 32 +/* 0A5E90 800A5290 3C01C348 */ li $at, 0xC3480000 # -200.000000 +/* 0A5E94 800A5294 A1B903FC */ sb $t9, 0x3fc($t5) +/* 0A5E98 800A5298 8D0C0000 */ lw $t4, ($t0) +/* 0A5E9C 800A529C 44812000 */ mtc1 $at, $f4 +/* 0A5EA0 800A52A0 3C014353 */ li $at, 0x43530000 # 211.000000 +/* 0A5EA4 800A52A4 E58403CC */ swc1 $f4, 0x3cc($t4) +/* 0A5EA8 800A52A8 8D0B0000 */ lw $t3, ($t0) +/* 0A5EAC 800A52AC 44813000 */ mtc1 $at, $f6 +/* 0A5EB0 800A52B0 1000008B */ b .L800A54E0 +/* 0A5EB4 800A52B4 E56603EC */ swc1 $f6, 0x3ec($t3) +.L800A52B8: +/* 0A5EB8 800A52B8 8D0E0000 */ lw $t6, ($t0) +/* 0A5EBC 800A52BC 2418001B */ li $t8, 27 +/* 0A5EC0 800A52C0 A1CF03DC */ sb $t7, 0x3dc($t6) +/* 0A5EC4 800A52C4 8D190000 */ lw $t9, ($t0) +/* 0A5EC8 800A52C8 3C01C348 */ li $at, 0xC3480000 # -200.000000 +/* 0A5ECC 800A52CC A33803FC */ sb $t8, 0x3fc($t9) +/* 0A5ED0 800A52D0 8D0D0000 */ lw $t5, ($t0) +/* 0A5ED4 800A52D4 44814000 */ mtc1 $at, $f8 +/* 0A5ED8 800A52D8 3C014353 */ li $at, 0x43530000 # 211.000000 +/* 0A5EDC 800A52DC E5A803CC */ swc1 $f8, 0x3cc($t5) +/* 0A5EE0 800A52E0 8D0C0000 */ lw $t4, ($t0) +/* 0A5EE4 800A52E4 44815000 */ mtc1 $at, $f10 +/* 0A5EE8 800A52E8 1000007D */ b .L800A54E0 +/* 0A5EEC 800A52EC E58A03EC */ swc1 $f10, 0x3ec($t4) +.L800A52F0: +/* 0A5EF0 800A52F0 85220000 */ lh $v0, ($t1) +/* 0A5EF4 800A52F4 240CFFA6 */ li $t4, -90 +/* 0A5EF8 800A52F8 10400011 */ beqz $v0, .L800A5340 +/* 0A5EFC 800A52FC 240FFFC5 */ li $t7, -59 +/* 0A5F00 800A5300 1041000F */ beq $v0, $at, .L800A5340 +/* 0A5F04 800A5304 240B003C */ li $t3, 60 +/* 0A5F08 800A5308 8D0F0000 */ lw $t7, ($t0) +/* 0A5F0C 800A530C 240E005B */ li $t6, 91 +/* 0A5F10 800A5310 A1EB03DC */ sb $t3, 0x3dc($t7) +/* 0A5F14 800A5314 8D180000 */ lw $t8, ($t0) +/* 0A5F18 800A5318 3C01C28C */ li $at, 0xC28C0000 # -70.000000 +/* 0A5F1C 800A531C A30E03FC */ sb $t6, 0x3fc($t8) +/* 0A5F20 800A5320 8D190000 */ lw $t9, ($t0) +/* 0A5F24 800A5324 44818000 */ mtc1 $at, $f16 +/* 0A5F28 800A5328 3C01435D */ li $at, 0x435D0000 # 221.000000 +/* 0A5F2C 800A532C E73003CC */ swc1 $f16, 0x3cc($t9) +/* 0A5F30 800A5330 8D0D0000 */ lw $t5, ($t0) +/* 0A5F34 800A5334 44819000 */ mtc1 $at, $f18 +/* 0A5F38 800A5338 10000069 */ b .L800A54E0 +/* 0A5F3C 800A533C E5B203EC */ swc1 $f18, 0x3ec($t5) +.L800A5340: +/* 0A5F40 800A5340 8D0B0000 */ lw $t3, ($t0) +/* 0A5F44 800A5344 3C01C35C */ li $at, 0xC35C0000 # -220.000000 +/* 0A5F48 800A5348 A16C03DC */ sb $t4, 0x3dc($t3) +/* 0A5F4C 800A534C 8D0E0000 */ lw $t6, ($t0) +/* 0A5F50 800A5350 44812000 */ mtc1 $at, $f4 +/* 0A5F54 800A5354 A1CF03FC */ sb $t7, 0x3fc($t6) +/* 0A5F58 800A5358 8D180000 */ lw $t8, ($t0) +/* 0A5F5C 800A535C 3C01428E */ li $at, 0x428E0000 # 71.000000 +/* 0A5F60 800A5360 E70403CC */ swc1 $f4, 0x3cc($t8) +/* 0A5F64 800A5364 8D190000 */ lw $t9, ($t0) +/* 0A5F68 800A5368 44813000 */ mtc1 $at, $f6 +/* 0A5F6C 800A536C 1000005C */ b .L800A54E0 +/* 0A5F70 800A5370 E72603EC */ swc1 $f6, 0x3ec($t9) +.L800A5374: +/* 0A5F74 800A5374 3C0D8012 */ lui $t5, %hi(D_80126D60) # $t5, 0x8012 +/* 0A5F78 800A5378 8DAD6D60 */ lw $t5, %lo(D_80126D60)($t5) +/* 0A5F7C 800A537C 246B0001 */ addiu $t3, $v1, 1 +/* 0A5F80 800A5380 81AC004B */ lb $t4, 0x4b($t5) +/* 0A5F84 800A5384 00000000 */ nop +/* 0A5F88 800A5388 158B0055 */ bne $t4, $t3, .L800A54E0 +/* 0A5F8C 800A538C 00000000 */ nop +/* 0A5F90 800A5390 10600053 */ beqz $v1, .L800A54E0 +/* 0A5F94 800A5394 240F0003 */ li $t7, 3 +/* 0A5F98 800A5398 A04F03DA */ sb $t7, 0x3da($v0) +/* 0A5F9C 800A539C 8D180000 */ lw $t8, ($t0) +/* 0A5FA0 800A53A0 240EFFFF */ li $t6, -1 +/* 0A5FA4 800A53A4 A30E03DB */ sb $t6, 0x3db($t8) +/* 0A5FA8 800A53A8 8D190000 */ lw $t9, ($t0) +/* 0A5FAC 800A53AC 24040016 */ li $a0, 22 +/* 0A5FB0 800A53B0 00002825 */ move $a1, $zero +/* 0A5FB4 800A53B4 0C000741 */ jal func_80001D04 +/* 0A5FB8 800A53B8 A32003DD */ sb $zero, 0x3dd($t9) +/* 0A5FBC 800A53BC 3C028012 */ lui $v0, %hi(D_80126D0C) # $v0, 0x8012 +/* 0A5FC0 800A53C0 8C426D0C */ lw $v0, %lo(D_80126D0C)($v0) +/* 0A5FC4 800A53C4 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A5FC8 800A53C8 8FA90018 */ lw $t1, 0x18($sp) +/* 0A5FCC 800A53CC 10400006 */ beqz $v0, .L800A53E8 +/* 0A5FD0 800A53D0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A5FD4 800A53D4 24010001 */ li $at, 1 +/* 0A5FD8 800A53D8 10410012 */ beq $v0, $at, .L800A5424 +/* 0A5FDC 800A53DC 24190029 */ li $t9, 41 +/* 0A5FE0 800A53E0 1000001E */ b .L800A545C +/* 0A5FE4 800A53E4 24010002 */ li $at, 2 +.L800A53E8: +/* 0A5FE8 800A53E8 8D0C0000 */ lw $t4, ($t0) +/* 0A5FEC 800A53EC 240D0033 */ li $t5, 51 +/* 0A5FF0 800A53F0 A18D03DC */ sb $t5, 0x3dc($t4) +/* 0A5FF4 800A53F4 8D0F0000 */ lw $t7, ($t0) +/* 0A5FF8 800A53F8 240BFFD7 */ li $t3, -41 +/* 0A5FFC 800A53FC 3C014352 */ li $at, 0x43520000 # 210.000000 +/* 0A6000 800A5400 A1EB03BC */ sb $t3, 0x3bc($t7) +/* 0A6004 800A5404 8D0E0000 */ lw $t6, ($t0) +/* 0A6008 800A5408 44814000 */ mtc1 $at, $f8 +/* 0A600C 800A540C 3C01C348 */ li $at, 0xC3480000 # -200.000000 +/* 0A6010 800A5410 E5C803CC */ swc1 $f8, 0x3cc($t6) +/* 0A6014 800A5414 8D180000 */ lw $t8, ($t0) +/* 0A6018 800A5418 44815000 */ mtc1 $at, $f10 +/* 0A601C 800A541C 10000030 */ b .L800A54E0 +/* 0A6020 800A5420 E70A03AC */ swc1 $f10, 0x3ac($t8) +.L800A5424: +/* 0A6024 800A5424 8D0D0000 */ lw $t5, ($t0) +/* 0A6028 800A5428 240CFFE1 */ li $t4, -31 +/* 0A602C 800A542C A1B903DC */ sb $t9, 0x3dc($t5) +/* 0A6030 800A5430 8D0B0000 */ lw $t3, ($t0) +/* 0A6034 800A5434 3C014352 */ li $at, 0x43520000 # 210.000000 +/* 0A6038 800A5438 A16C03BC */ sb $t4, 0x3bc($t3) +/* 0A603C 800A543C 8D0F0000 */ lw $t7, ($t0) +/* 0A6040 800A5440 44818000 */ mtc1 $at, $f16 +/* 0A6044 800A5444 3C01C348 */ li $at, 0xC3480000 # -200.000000 +/* 0A6048 800A5448 E5F003CC */ swc1 $f16, 0x3cc($t7) +/* 0A604C 800A544C 8D0E0000 */ lw $t6, ($t0) +/* 0A6050 800A5450 44819000 */ mtc1 $at, $f18 +/* 0A6054 800A5454 10000022 */ b .L800A54E0 +/* 0A6058 800A5458 E5D203AC */ swc1 $f18, 0x3ac($t6) +.L800A545C: +/* 0A605C 800A545C 85220000 */ lh $v0, ($t1) +/* 0A6060 800A5460 240EFFCE */ li $t6, -50 +/* 0A6064 800A5464 10400011 */ beqz $v0, .L800A54AC +/* 0A6068 800A5468 2419FF9C */ li $t9, -100 +/* 0A606C 800A546C 1041000F */ beq $v0, $at, .L800A54AC +/* 0A6070 800A5470 24180064 */ li $t8, 100 +/* 0A6074 800A5474 8D190000 */ lw $t9, ($t0) +/* 0A6078 800A5478 240D0032 */ li $t5, 50 +/* 0A607C 800A547C A33803DC */ sb $t8, 0x3dc($t9) +/* 0A6080 800A5480 8D0C0000 */ lw $t4, ($t0) +/* 0A6084 800A5484 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 0A6088 800A5488 A18D03BC */ sb $t5, 0x3bc($t4) +/* 0A608C 800A548C 8D0B0000 */ lw $t3, ($t0) +/* 0A6090 800A5490 44812000 */ mtc1 $at, $f4 +/* 0A6094 800A5494 3C01C248 */ li $at, 0xC2480000 # -50.000000 +/* 0A6098 800A5498 E56403CC */ swc1 $f4, 0x3cc($t3) +/* 0A609C 800A549C 8D0F0000 */ lw $t7, ($t0) +/* 0A60A0 800A54A0 44813000 */ mtc1 $at, $f6 +/* 0A60A4 800A54A4 1000000E */ b .L800A54E0 +/* 0A60A8 800A54A8 E5E603AC */ swc1 $f6, 0x3ac($t7) +.L800A54AC: +/* 0A60AC 800A54AC 8D180000 */ lw $t8, ($t0) +/* 0A60B0 800A54B0 3C014248 */ li $at, 0x42480000 # 50.000000 +/* 0A60B4 800A54B4 A30E03DC */ sb $t6, 0x3dc($t8) +/* 0A60B8 800A54B8 8D0D0000 */ lw $t5, ($t0) +/* 0A60BC 800A54BC 44814000 */ mtc1 $at, $f8 +/* 0A60C0 800A54C0 A1B903BC */ sb $t9, 0x3bc($t5) +/* 0A60C4 800A54C4 8D0C0000 */ lw $t4, ($t0) +/* 0A60C8 800A54C8 3C01C348 */ li $at, 0xC3480000 # -200.000000 +/* 0A60CC 800A54CC E58803CC */ swc1 $f8, 0x3cc($t4) +/* 0A60D0 800A54D0 8D0B0000 */ lw $t3, ($t0) +/* 0A60D4 800A54D4 44815000 */ mtc1 $at, $f10 +/* 0A60D8 800A54D8 00000000 */ nop +/* 0A60DC 800A54DC E56A03AC */ swc1 $f10, 0x3ac($t3) +.L800A54E0: +/* 0A60E0 800A54E0 8D020000 */ lw $v0, ($t0) +/* 0A60E4 800A54E4 24060001 */ li $a2, 1 +/* 0A60E8 800A54E8 804303DA */ lb $v1, 0x3da($v0) +/* 0A60EC 800A54EC 24010002 */ li $at, 2 +/* 0A60F0 800A54F0 10600156 */ beqz $v1, .L800A5A4C +/* 0A60F4 800A54F4 00000000 */ nop +/* 0A60F8 800A54F8 146100AA */ bne $v1, $at, .L800A57A4 +/* 0A60FC 800A54FC 24010003 */ li $at, 3 +/* 0A6100 800A5500 804303DB */ lb $v1, 0x3db($v0) +/* 0A6104 800A5504 8FA4001C */ lw $a0, 0x1c($sp) +/* 0A6108 800A5508 14C30063 */ bne $a2, $v1, .L800A5698 +/* 0A610C 800A550C 2401FFFF */ li $at, -1 +/* 0A6110 800A5510 00047880 */ sll $t7, $a0, 2 +/* 0A6114 800A5514 01E47823 */ subu $t7, $t7, $a0 +/* 0A6118 800A5518 804303DC */ lb $v1, 0x3dc($v0) +/* 0A611C 800A551C 000F7880 */ sll $t7, $t7, 2 +/* 0A6120 800A5520 01E47821 */ addu $t7, $t7, $a0 +/* 0A6124 800A5524 006F7023 */ subu $t6, $v1, $t7 +/* 0A6128 800A5528 448E8000 */ mtc1 $t6, $f16 +/* 0A612C 800A552C C44003CC */ lwc1 $f0, 0x3cc($v0) +/* 0A6130 800A5530 468084A0 */ cvt.s.w $f18, $f16 +/* 0A6134 800A5534 01E02025 */ move $a0, $t7 +/* 0A6138 800A5538 240FFFFF */ li $t7, -1 +/* 0A613C 800A553C 4612003C */ c.lt.s $f0, $f18 +/* 0A6140 800A5540 00002825 */ move $a1, $zero +/* 0A6144 800A5544 45000007 */ bc1f .L800A5564 +/* 0A6148 800A5548 00000000 */ nop +/* 0A614C 800A554C 44842000 */ mtc1 $a0, $f4 +/* 0A6150 800A5550 00000000 */ nop +/* 0A6154 800A5554 468021A0 */ cvt.s.w $f6, $f4 +/* 0A6158 800A5558 46060200 */ add.s $f8, $f0, $f6 +/* 0A615C 800A555C 10000005 */ b .L800A5574 +/* 0A6160 800A5560 E44803CC */ swc1 $f8, 0x3cc($v0) +.L800A5564: +/* 0A6164 800A5564 44835000 */ mtc1 $v1, $f10 +/* 0A6168 800A5568 00000000 */ nop +/* 0A616C 800A556C 46805420 */ cvt.s.w $f16, $f10 +/* 0A6170 800A5570 E45003CC */ swc1 $f16, 0x3cc($v0) +.L800A5574: +/* 0A6174 800A5574 8D020000 */ lw $v0, ($t0) +/* 0A6178 800A5578 00000000 */ nop +/* 0A617C 800A557C 804303FC */ lb $v1, 0x3fc($v0) +/* 0A6180 800A5580 C44003EC */ lwc1 $f0, 0x3ec($v0) +/* 0A6184 800A5584 0064C021 */ addu $t8, $v1, $a0 +/* 0A6188 800A5588 44989000 */ mtc1 $t8, $f18 +/* 0A618C 800A558C 00000000 */ nop +/* 0A6190 800A5590 46809120 */ cvt.s.w $f4, $f18 +/* 0A6194 800A5594 4600203C */ c.lt.s $f4, $f0 +/* 0A6198 800A5598 00000000 */ nop +/* 0A619C 800A559C 45000007 */ bc1f .L800A55BC +/* 0A61A0 800A55A0 00000000 */ nop +/* 0A61A4 800A55A4 44843000 */ mtc1 $a0, $f6 +/* 0A61A8 800A55A8 00000000 */ nop +/* 0A61AC 800A55AC 46803220 */ cvt.s.w $f8, $f6 +/* 0A61B0 800A55B0 46080281 */ sub.s $f10, $f0, $f8 +/* 0A61B4 800A55B4 10000005 */ b .L800A55CC +/* 0A61B8 800A55B8 E44A03EC */ swc1 $f10, 0x3ec($v0) +.L800A55BC: +/* 0A61BC 800A55BC 44838000 */ mtc1 $v1, $f16 +/* 0A61C0 800A55C0 00000000 */ nop +/* 0A61C4 800A55C4 468084A0 */ cvt.s.w $f18, $f16 +/* 0A61C8 800A55C8 E45203EC */ swc1 $f18, 0x3ec($v0) +.L800A55CC: +/* 0A61CC 800A55CC 81390193 */ lb $t9, 0x193($t1) +/* 0A61D0 800A55D0 24040016 */ li $a0, 22 +/* 0A61D4 800A55D4 00196880 */ sll $t5, $t9, 2 +/* 0A61D8 800A55D8 012D6021 */ addu $t4, $t1, $t5 +/* 0A61DC 800A55DC 8D8B0128 */ lw $t3, 0x128($t4) +/* 0A61E0 800A55E0 00000000 */ nop +/* 0A61E4 800A55E4 2961003C */ slti $at, $t3, 0x3c +/* 0A61E8 800A55E8 14200007 */ bnez $at, .L800A5608 +/* 0A61EC 800A55EC 00000000 */ nop +/* 0A61F0 800A55F0 8D0E0000 */ lw $t6, ($t0) +/* 0A61F4 800A55F4 0C000741 */ jal func_80001D04 +/* 0A61F8 800A55F8 A1CF03DB */ sb $t7, 0x3db($t6) +/* 0A61FC 800A55FC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A6200 800A5600 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A6204 800A5604 24060001 */ li $a2, 1 +.L800A5608: +/* 0A6208 800A5608 8D020000 */ lw $v0, ($t0) +/* 0A620C 800A560C 00000000 */ nop +/* 0A6210 800A5610 805803DC */ lb $t8, 0x3dc($v0) +/* 0A6214 800A5614 C44403CC */ lwc1 $f4, 0x3cc($v0) +/* 0A6218 800A5618 44983000 */ mtc1 $t8, $f6 +/* 0A621C 800A561C 00000000 */ nop +/* 0A6220 800A5620 46803220 */ cvt.s.w $f8, $f6 +/* 0A6224 800A5624 46082032 */ c.eq.s $f4, $f8 +/* 0A6228 800A5628 00000000 */ nop +/* 0A622C 800A562C 45000037 */ bc1f .L800A570C +/* 0A6230 800A5630 00000000 */ nop +/* 0A6234 800A5634 805903FC */ lb $t9, 0x3fc($v0) +/* 0A6238 800A5638 C44A03EC */ lwc1 $f10, 0x3ec($v0) +/* 0A623C 800A563C 44998000 */ mtc1 $t9, $f16 +/* 0A6240 800A5640 00000000 */ nop +/* 0A6244 800A5644 468084A0 */ cvt.s.w $f18, $f16 +/* 0A6248 800A5648 46125032 */ c.eq.s $f10, $f18 +/* 0A624C 800A564C 00000000 */ nop +/* 0A6250 800A5650 4500002E */ bc1f .L800A570C +/* 0A6254 800A5654 00000000 */ nop +/* 0A6258 800A5658 804D03DD */ lb $t5, 0x3dd($v0) +/* 0A625C 800A565C 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 +/* 0A6260 800A5660 15A0002A */ bnez $t5, .L800A570C +/* 0A6264 800A5664 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 +/* 0A6268 800A5668 8CAC0000 */ lw $t4, ($a1) +/* 0A626C 800A566C 00000000 */ nop +/* 0A6270 800A5670 15800007 */ bnez $t4, .L800A5690 +/* 0A6274 800A5674 00000000 */ nop +/* 0A6278 800A5678 0C000741 */ jal func_80001D04 +/* 0A627C 800A567C 24040100 */ li $a0, 256 +/* 0A6280 800A5680 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A6284 800A5684 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A6288 800A5688 8D020000 */ lw $v0, ($t0) +/* 0A628C 800A568C 24060001 */ li $a2, 1 +.L800A5690: +/* 0A6290 800A5690 1000001E */ b .L800A570C +/* 0A6294 800A5694 A04603DD */ sb $a2, 0x3dd($v0) +.L800A5698: +/* 0A6298 800A5698 1461001C */ bne $v1, $at, .L800A570C +/* 0A629C 800A569C 00000000 */ nop +/* 0A62A0 800A56A0 8FAB001C */ lw $t3, 0x1c($sp) +/* 0A62A4 800A56A4 C44403CC */ lwc1 $f4, 0x3cc($v0) +/* 0A62A8 800A56A8 000B7880 */ sll $t7, $t3, 2 +/* 0A62AC 800A56AC 01EB7823 */ subu $t7, $t7, $t3 +/* 0A62B0 800A56B0 000F7880 */ sll $t7, $t7, 2 +/* 0A62B4 800A56B4 01EB7821 */ addu $t7, $t7, $t3 +/* 0A62B8 800A56B8 448F3000 */ mtc1 $t7, $f6 +/* 0A62BC 800A56BC 3C01C348 */ li $at, 0xC3480000 # -200.000000 +/* 0A62C0 800A56C0 46803020 */ cvt.s.w $f0, $f6 +/* 0A62C4 800A56C4 44813000 */ mtc1 $at, $f6 +/* 0A62C8 800A56C8 46002201 */ sub.s $f8, $f4, $f0 +/* 0A62CC 800A56CC E44803CC */ swc1 $f8, 0x3cc($v0) +/* 0A62D0 800A56D0 8D020000 */ lw $v0, ($t0) +/* 0A62D4 800A56D4 00000000 */ nop +/* 0A62D8 800A56D8 C45003EC */ lwc1 $f16, 0x3ec($v0) +/* 0A62DC 800A56DC 00000000 */ nop +/* 0A62E0 800A56E0 46008280 */ add.s $f10, $f16, $f0 +/* 0A62E4 800A56E4 E44A03EC */ swc1 $f10, 0x3ec($v0) +/* 0A62E8 800A56E8 8D020000 */ lw $v0, ($t0) +/* 0A62EC 800A56EC 00000000 */ nop +/* 0A62F0 800A56F0 C45203CC */ lwc1 $f18, 0x3cc($v0) +/* 0A62F4 800A56F4 00000000 */ nop +/* 0A62F8 800A56F8 4606903C */ c.lt.s $f18, $f6 +/* 0A62FC 800A56FC 00000000 */ nop +/* 0A6300 800A5700 45000002 */ bc1f .L800A570C +/* 0A6304 800A5704 00000000 */ nop +/* 0A6308 800A5708 A04003DA */ sb $zero, 0x3da($v0) +.L800A570C: +/* 0A630C 800A570C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A6310 800A5710 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A6314 800A5714 8C820000 */ lw $v0, ($a0) +/* 0A6318 800A5718 3C18FA00 */ lui $t8, 0xfa00 +/* 0A631C 800A571C 244E0008 */ addiu $t6, $v0, 8 +/* 0A6320 800A5720 AC8E0000 */ sw $t6, ($a0) +/* 0A6324 800A5724 2419FFA0 */ li $t9, -96 +/* 0A6328 800A5728 AC590004 */ sw $t9, 4($v0) +/* 0A632C 800A572C AC580000 */ sw $t8, ($v0) +/* 0A6330 800A5730 8D070000 */ lw $a3, ($t0) +/* 0A6334 800A5734 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A6338 800A5738 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A633C 800A573C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A6340 800A5740 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A6344 800A5744 0C02A980 */ jal func_800AA600 +/* 0A6348 800A5748 24E703E0 */ addiu $a3, $a3, 0x3e0 +/* 0A634C 800A574C 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A6350 800A5750 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A6354 800A5754 8D070000 */ lw $a3, ($t0) +/* 0A6358 800A5758 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A635C 800A575C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A6360 800A5760 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A6364 800A5764 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A6368 800A5768 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A636C 800A576C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A6370 800A5770 0C02A980 */ jal func_800AA600 +/* 0A6374 800A5774 24E703C0 */ addiu $a3, $a3, 0x3c0 +/* 0A6378 800A5778 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A637C 800A577C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A6380 800A5780 8C820000 */ lw $v0, ($a0) +/* 0A6384 800A5784 3C0CFA00 */ lui $t4, 0xfa00 +/* 0A6388 800A5788 244D0008 */ addiu $t5, $v0, 8 +/* 0A638C 800A578C AC8D0000 */ sw $t5, ($a0) +/* 0A6390 800A5790 240BFFFF */ li $t3, -1 +/* 0A6394 800A5794 AC4B0004 */ sw $t3, 4($v0) +/* 0A6398 800A5798 100000AC */ b .L800A5A4C +/* 0A639C 800A579C AC4C0000 */ sw $t4, ($v0) +/* 0A63A0 800A57A0 24010003 */ li $at, 3 +.L800A57A4: +/* 0A63A4 800A57A4 146100A9 */ bne $v1, $at, .L800A5A4C +/* 0A63A8 800A57A8 00000000 */ nop +/* 0A63AC 800A57AC 804303DB */ lb $v1, 0x3db($v0) +/* 0A63B0 800A57B0 2401FFFF */ li $at, -1 +/* 0A63B4 800A57B4 14610064 */ bne $v1, $at, .L800A5948 +/* 0A63B8 800A57B8 00000000 */ nop +/* 0A63BC 800A57BC 8FA4001C */ lw $a0, 0x1c($sp) +/* 0A63C0 800A57C0 804303DC */ lb $v1, 0x3dc($v0) +/* 0A63C4 800A57C4 00047880 */ sll $t7, $a0, 2 +/* 0A63C8 800A57C8 01E47823 */ subu $t7, $t7, $a0 +/* 0A63CC 800A57CC 000F7880 */ sll $t7, $t7, 2 +/* 0A63D0 800A57D0 01E47821 */ addu $t7, $t7, $a0 +/* 0A63D4 800A57D4 006F7021 */ addu $t6, $v1, $t7 +/* 0A63D8 800A57D8 448E2000 */ mtc1 $t6, $f4 +/* 0A63DC 800A57DC C44003CC */ lwc1 $f0, 0x3cc($v0) +/* 0A63E0 800A57E0 46802220 */ cvt.s.w $f8, $f4 +/* 0A63E4 800A57E4 01E02025 */ move $a0, $t7 +/* 0A63E8 800A57E8 00002825 */ move $a1, $zero +/* 0A63EC 800A57EC 4600403C */ c.lt.s $f8, $f0 +/* 0A63F0 800A57F0 00000000 */ nop +/* 0A63F4 800A57F4 45000007 */ bc1f .L800A5814 +/* 0A63F8 800A57F8 00000000 */ nop +/* 0A63FC 800A57FC 44848000 */ mtc1 $a0, $f16 +/* 0A6400 800A5800 00000000 */ nop +/* 0A6404 800A5804 468082A0 */ cvt.s.w $f10, $f16 +/* 0A6408 800A5808 460A0481 */ sub.s $f18, $f0, $f10 +/* 0A640C 800A580C 10000005 */ b .L800A5824 +/* 0A6410 800A5810 E45203CC */ swc1 $f18, 0x3cc($v0) +.L800A5814: +/* 0A6414 800A5814 44833000 */ mtc1 $v1, $f6 +/* 0A6418 800A5818 00000000 */ nop +/* 0A641C 800A581C 46803120 */ cvt.s.w $f4, $f6 +/* 0A6420 800A5820 E44403CC */ swc1 $f4, 0x3cc($v0) +.L800A5824: +/* 0A6424 800A5824 8D020000 */ lw $v0, ($t0) +/* 0A6428 800A5828 00000000 */ nop +/* 0A642C 800A582C 804303BC */ lb $v1, 0x3bc($v0) +/* 0A6430 800A5830 C44003AC */ lwc1 $f0, 0x3ac($v0) +/* 0A6434 800A5834 0064C023 */ subu $t8, $v1, $a0 +/* 0A6438 800A5838 44984000 */ mtc1 $t8, $f8 +/* 0A643C 800A583C 00000000 */ nop +/* 0A6440 800A5840 46804420 */ cvt.s.w $f16, $f8 +/* 0A6444 800A5844 4610003C */ c.lt.s $f0, $f16 +/* 0A6448 800A5848 00000000 */ nop +/* 0A644C 800A584C 45000007 */ bc1f .L800A586C +/* 0A6450 800A5850 00000000 */ nop +/* 0A6454 800A5854 44845000 */ mtc1 $a0, $f10 +/* 0A6458 800A5858 00000000 */ nop +/* 0A645C 800A585C 468054A0 */ cvt.s.w $f18, $f10 +/* 0A6460 800A5860 46120180 */ add.s $f6, $f0, $f18 +/* 0A6464 800A5864 10000005 */ b .L800A587C +/* 0A6468 800A5868 E44603AC */ swc1 $f6, 0x3ac($v0) +.L800A586C: +/* 0A646C 800A586C 44832000 */ mtc1 $v1, $f4 +/* 0A6470 800A5870 00000000 */ nop +/* 0A6474 800A5874 46802220 */ cvt.s.w $f8, $f4 +/* 0A6478 800A5878 E44803AC */ swc1 $f8, 0x3ac($v0) +.L800A587C: +/* 0A647C 800A587C 81390193 */ lb $t9, 0x193($t1) +/* 0A6480 800A5880 24040016 */ li $a0, 22 +/* 0A6484 800A5884 00196880 */ sll $t5, $t9, 2 +/* 0A6488 800A5888 012D6021 */ addu $t4, $t1, $t5 +/* 0A648C 800A588C 8D8B0128 */ lw $t3, 0x128($t4) +/* 0A6490 800A5890 00000000 */ nop +/* 0A6494 800A5894 2961003C */ slti $at, $t3, 0x3c +/* 0A6498 800A5898 14200007 */ bnez $at, .L800A58B8 +/* 0A649C 800A589C 00000000 */ nop +/* 0A64A0 800A58A0 8D0F0000 */ lw $t7, ($t0) +/* 0A64A4 800A58A4 0C000741 */ jal func_80001D04 +/* 0A64A8 800A58A8 A1E603DB */ sb $a2, 0x3db($t7) +/* 0A64AC 800A58AC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A64B0 800A58B0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A64B4 800A58B4 24060001 */ li $a2, 1 +.L800A58B8: +/* 0A64B8 800A58B8 8D020000 */ lw $v0, ($t0) +/* 0A64BC 800A58BC 00000000 */ nop +/* 0A64C0 800A58C0 804E03DC */ lb $t6, 0x3dc($v0) +/* 0A64C4 800A58C4 C45003CC */ lwc1 $f16, 0x3cc($v0) +/* 0A64C8 800A58C8 448E5000 */ mtc1 $t6, $f10 +/* 0A64CC 800A58CC 00000000 */ nop +/* 0A64D0 800A58D0 468054A0 */ cvt.s.w $f18, $f10 +/* 0A64D4 800A58D4 46128032 */ c.eq.s $f16, $f18 +/* 0A64D8 800A58D8 00000000 */ nop +/* 0A64DC 800A58DC 45000037 */ bc1f .L800A59BC +/* 0A64E0 800A58E0 00000000 */ nop +/* 0A64E4 800A58E4 805803BC */ lb $t8, 0x3bc($v0) +/* 0A64E8 800A58E8 C44603AC */ lwc1 $f6, 0x3ac($v0) +/* 0A64EC 800A58EC 44982000 */ mtc1 $t8, $f4 +/* 0A64F0 800A58F0 00000000 */ nop +/* 0A64F4 800A58F4 46802220 */ cvt.s.w $f8, $f4 +/* 0A64F8 800A58F8 46083032 */ c.eq.s $f6, $f8 +/* 0A64FC 800A58FC 00000000 */ nop +/* 0A6500 800A5900 4500002E */ bc1f .L800A59BC +/* 0A6504 800A5904 00000000 */ nop +/* 0A6508 800A5908 805903DD */ lb $t9, 0x3dd($v0) +/* 0A650C 800A590C 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 +/* 0A6510 800A5910 1720002A */ bnez $t9, .L800A59BC +/* 0A6514 800A5914 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 +/* 0A6518 800A5918 8CAD0000 */ lw $t5, ($a1) +/* 0A651C 800A591C 00000000 */ nop +/* 0A6520 800A5920 15A00007 */ bnez $t5, .L800A5940 +/* 0A6524 800A5924 00000000 */ nop +/* 0A6528 800A5928 0C000741 */ jal func_80001D04 +/* 0A652C 800A592C 24040101 */ li $a0, 257 +/* 0A6530 800A5930 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A6534 800A5934 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A6538 800A5938 8D020000 */ lw $v0, ($t0) +/* 0A653C 800A593C 24060001 */ li $a2, 1 +.L800A5940: +/* 0A6540 800A5940 1000001E */ b .L800A59BC +/* 0A6544 800A5944 A04603DD */ sb $a2, 0x3dd($v0) +.L800A5948: +/* 0A6548 800A5948 14C3001C */ bne $a2, $v1, .L800A59BC +/* 0A654C 800A594C 00000000 */ nop +/* 0A6550 800A5950 8FAC001C */ lw $t4, 0x1c($sp) +/* 0A6554 800A5954 C45003CC */ lwc1 $f16, 0x3cc($v0) +/* 0A6558 800A5958 000C5880 */ sll $t3, $t4, 2 +/* 0A655C 800A595C 016C5823 */ subu $t3, $t3, $t4 +/* 0A6560 800A5960 000B5880 */ sll $t3, $t3, 2 +/* 0A6564 800A5964 016C5821 */ addu $t3, $t3, $t4 +/* 0A6568 800A5968 448B5000 */ mtc1 $t3, $f10 +/* 0A656C 800A596C 3C014348 */ li $at, 0x43480000 # 200.000000 +/* 0A6570 800A5970 46805020 */ cvt.s.w $f0, $f10 +/* 0A6574 800A5974 44814000 */ mtc1 $at, $f8 +/* 0A6578 800A5978 46008480 */ add.s $f18, $f16, $f0 +/* 0A657C 800A597C E45203CC */ swc1 $f18, 0x3cc($v0) +/* 0A6580 800A5980 8D020000 */ lw $v0, ($t0) +/* 0A6584 800A5984 00000000 */ nop +/* 0A6588 800A5988 C44403AC */ lwc1 $f4, 0x3ac($v0) +/* 0A658C 800A598C 00000000 */ nop +/* 0A6590 800A5990 46002181 */ sub.s $f6, $f4, $f0 +/* 0A6594 800A5994 E44603AC */ swc1 $f6, 0x3ac($v0) +/* 0A6598 800A5998 8D020000 */ lw $v0, ($t0) +/* 0A659C 800A599C 00000000 */ nop +/* 0A65A0 800A59A0 C44A03CC */ lwc1 $f10, 0x3cc($v0) +/* 0A65A4 800A59A4 00000000 */ nop +/* 0A65A8 800A59A8 460A403C */ c.lt.s $f8, $f10 +/* 0A65AC 800A59AC 00000000 */ nop +/* 0A65B0 800A59B0 45000002 */ bc1f .L800A59BC +/* 0A65B4 800A59B4 00000000 */ nop +/* 0A65B8 800A59B8 A04003DA */ sb $zero, 0x3da($v0) +.L800A59BC: +/* 0A65BC 800A59BC 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A65C0 800A59C0 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A65C4 800A59C4 8C820000 */ lw $v0, ($a0) +/* 0A65C8 800A59C8 3C0EFA00 */ lui $t6, 0xfa00 +/* 0A65CC 800A59CC 244F0008 */ addiu $t7, $v0, 8 +/* 0A65D0 800A59D0 AC8F0000 */ sw $t7, ($a0) +/* 0A65D4 800A59D4 2418FFA0 */ li $t8, -96 +/* 0A65D8 800A59D8 AC580004 */ sw $t8, 4($v0) +/* 0A65DC 800A59DC AC4E0000 */ sw $t6, ($v0) +/* 0A65E0 800A59E0 8D070000 */ lw $a3, ($t0) +/* 0A65E4 800A59E4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A65E8 800A59E8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A65EC 800A59EC 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A65F0 800A59F0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A65F4 800A59F4 0C02A980 */ jal func_800AA600 +/* 0A65F8 800A59F8 24E703A0 */ addiu $a3, $a3, 0x3a0 +/* 0A65FC 800A59FC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A6600 800A5A00 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A6604 800A5A04 8D070000 */ lw $a3, ($t0) +/* 0A6608 800A5A08 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A660C 800A5A0C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A6610 800A5A10 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A6614 800A5A14 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A6618 800A5A18 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A661C 800A5A1C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A6620 800A5A20 0C02A980 */ jal func_800AA600 +/* 0A6624 800A5A24 24E703C0 */ addiu $a3, $a3, 0x3c0 +/* 0A6628 800A5A28 3C028012 */ lui $v0, %hi(D_80126CFC) # $v0, 0x8012 +/* 0A662C 800A5A2C 8C426CFC */ lw $v0, %lo(D_80126CFC)($v0) +/* 0A6630 800A5A30 3C018012 */ lui $at, %hi(D_80126CFC) # $at, 0x8012 +/* 0A6634 800A5A34 24590008 */ addiu $t9, $v0, 8 +/* 0A6638 800A5A38 AC396CFC */ sw $t9, %lo(D_80126CFC)($at) +/* 0A663C 800A5A3C 3C0DFA00 */ lui $t5, 0xfa00 +/* 0A6640 800A5A40 240CFFFF */ li $t4, -1 +/* 0A6644 800A5A44 AC4C0004 */ sw $t4, 4($v0) +/* 0A6648 800A5A48 AC4D0000 */ sw $t5, ($v0) +.L800A5A4C: +/* 0A664C 800A5A4C 0C01EFC7 */ jal func_8007BF1C +/* 0A6650 800A5A50 00002025 */ move $a0, $zero +/* 0A6654 800A5A54 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A6658 800A5A58 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0A665C 800A5A5C 03E00008 */ jr $ra +/* 0A6660 800A5A60 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A5A64.s b/asm/non_matchings/unknown_09F8F0/func_800A5A64.s new file mode 100644 index 00000000..27c36e53 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A5A64.s @@ -0,0 +1,320 @@ +glabel func_800A5A64 +/* 0A6664 800A5A64 3C0E8012 */ lui $t6, %hi(D_80126D0C) # $t6, 0x8012 +/* 0A6668 800A5A68 8DCE6D0C */ lw $t6, %lo(D_80126D0C)($t6) +/* 0A666C 800A5A6C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0A6670 800A5A70 24060001 */ li $a2, 1 +/* 0A6674 800A5A74 AFBF0014 */ sw $ra, 0x14($sp) +/* 0A6678 800A5A78 AFA40018 */ sw $a0, 0x18($sp) +/* 0A667C 800A5A7C 14CE0003 */ bne $a2, $t6, .L800A5A8C +/* 0A6680 800A5A80 AFA5001C */ sw $a1, 0x1c($sp) +/* 0A6684 800A5A84 0C01EFC7 */ jal func_8007BF1C +/* 0A6688 800A5A88 00C02025 */ move $a0, $a2 +.L800A5A8C: +/* 0A668C 800A5A8C 8FAF0018 */ lw $t7, 0x18($sp) +/* 0A6690 800A5A90 3C198012 */ lui $t9, %hi(D_80126D0C) # $t9, 0x8012 +/* 0A6694 800A5A94 91F801FC */ lbu $t8, 0x1fc($t7) +/* 0A6698 800A5A98 00000000 */ nop +/* 0A669C 800A5A9C 2B010079 */ slti $at, $t8, 0x79 +/* 0A66A0 800A5AA0 14200047 */ bnez $at, .L800A5BC0 +/* 0A66A4 800A5AA4 00000000 */ nop +/* 0A66A8 800A5AA8 8F396D0C */ lw $t9, %lo(D_80126D0C)($t9) +/* 0A66AC 800A5AAC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A66B0 800A5AB0 1720000C */ bnez $t9, .L800A5AE4 +/* 0A66B4 800A5AB4 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A66B8 800A5AB8 8D020000 */ lw $v0, ($t0) +/* 0A66BC 800A5ABC 00000000 */ nop +/* 0A66C0 800A5AC0 8049047C */ lb $t1, 0x47c($v0) +/* 0A66C4 800A5AC4 C444046C */ lwc1 $f4, 0x46c($v0) +/* 0A66C8 800A5AC8 44893000 */ mtc1 $t1, $f6 +/* 0A66CC 800A5ACC 00000000 */ nop +/* 0A66D0 800A5AD0 46803220 */ cvt.s.w $f8, $f6 +/* 0A66D4 800A5AD4 46082032 */ c.eq.s $f4, $f8 +/* 0A66D8 800A5AD8 00000000 */ nop +/* 0A66DC 800A5ADC 45000038 */ bc1f .L800A5BC0 +/* 0A66E0 800A5AE0 00000000 */ nop +.L800A5AE4: +/* 0A66E4 800A5AE4 0C01BAA8 */ jal func_8006EAA0 +/* 0A66E8 800A5AE8 00000000 */ nop +/* 0A66EC 800A5AEC 14400034 */ bnez $v0, .L800A5BC0 +/* 0A66F0 800A5AF0 3C038012 */ lui $v1, %hi(D_80126D38) # $v1, 0x8012 +/* 0A66F4 800A5AF4 24636D38 */ addiu $v1, %lo(D_80126D38) # addiu $v1, $v1, 0x6d38 +/* 0A66F8 800A5AF8 90620000 */ lbu $v0, ($v1) +/* 0A66FC 800A5AFC 3C078012 */ lui $a3, %hi(D_80126D6C) # $a3, 0x8012 +/* 0A6700 800A5B00 14400004 */ bnez $v0, .L800A5B14 +/* 0A6704 800A5B04 24E76D6C */ addiu $a3, %lo(D_80126D6C) # addiu $a3, $a3, 0x6d6c +/* 0A6708 800A5B08 8CEA0000 */ lw $t2, ($a3) +/* 0A670C 800A5B0C 00000000 */ nop +/* 0A6710 800A5B10 15400024 */ bnez $t2, .L800A5BA4 +.L800A5B14: +/* 0A6714 800A5B14 3C068012 */ lui $a2, %hi(D_80126D40) # $a2, 0x8012 +/* 0A6718 800A5B18 24C66D40 */ addiu $a2, %lo(D_80126D40) # addiu $a2, $a2, 0x6d40 +/* 0A671C 800A5B1C 8CCB0000 */ lw $t3, ($a2) +/* 0A6720 800A5B20 3C078012 */ lui $a3, %hi(D_80126D6C) # $a3, 0x8012 +/* 0A6724 800A5B24 1560001F */ bnez $t3, .L800A5BA4 +/* 0A6728 800A5B28 24E76D6C */ addiu $a3, %lo(D_80126D6C) # addiu $a3, $a3, 0x6d6c +/* 0A672C 800A5B2C 14400009 */ bnez $v0, .L800A5B54 +/* 0A6730 800A5B30 24040001 */ li $a0, 1 +/* 0A6734 800A5B34 0C01BE53 */ jal func_8006F94C +/* 0A6738 800A5B38 2405000A */ li $a1, 10 +/* 0A673C 800A5B3C 3C038012 */ lui $v1, %hi(D_80126D38) # $v1, 0x8012 +/* 0A6740 800A5B40 3C068012 */ lui $a2, %hi(D_80126D40) # $a2, 0x8012 +/* 0A6744 800A5B44 28410008 */ slti $at, $v0, 8 +/* 0A6748 800A5B48 24C66D40 */ addiu $a2, %lo(D_80126D40) # addiu $a2, $a2, 0x6d40 +/* 0A674C 800A5B4C 1420000E */ bnez $at, .L800A5B88 +/* 0A6750 800A5B50 24636D38 */ addiu $v1, %lo(D_80126D38) # addiu $v1, $v1, 0x6d38 +.L800A5B54: +/* 0A6754 800A5B54 A0600000 */ sb $zero, ($v1) +/* 0A6758 800A5B58 24040066 */ li $a0, 102 +/* 0A675C 800A5B5C 0C000741 */ jal func_80001D04 +/* 0A6760 800A5B60 00C02825 */ move $a1, $a2 +/* 0A6764 800A5B64 24040001 */ li $a0, 1 +/* 0A6768 800A5B68 0C01BE53 */ jal func_8006F94C +/* 0A676C 800A5B6C 240501E0 */ li $a1, 480 +/* 0A6770 800A5B70 244C0078 */ addiu $t4, $v0, 0x78 +/* 0A6774 800A5B74 3C018012 */ lui $at, %hi(D_80126D6C) # $at, 0x8012 +/* 0A6778 800A5B78 3C078012 */ lui $a3, %hi(D_80126D6C) # $a3, 0x8012 +/* 0A677C 800A5B7C 24E76D6C */ addiu $a3, %lo(D_80126D6C) # addiu $a3, $a3, 0x6d6c +/* 0A6780 800A5B80 10000008 */ b .L800A5BA4 +/* 0A6784 800A5B84 AC2C6D6C */ sw $t4, %lo(D_80126D6C)($at) +.L800A5B88: +/* 0A6788 800A5B88 240D0001 */ li $t5, 1 +/* 0A678C 800A5B8C A06D0000 */ sb $t5, ($v1) +/* 0A6790 800A5B90 24040067 */ li $a0, 103 +/* 0A6794 800A5B94 0C000741 */ jal func_80001D04 +/* 0A6798 800A5B98 00C02825 */ move $a1, $a2 +/* 0A679C 800A5B9C 3C078012 */ lui $a3, %hi(D_80126D6C) # $a3, 0x8012 +/* 0A67A0 800A5BA0 24E76D6C */ addiu $a3, %lo(D_80126D6C) # addiu $a3, $a3, 0x6d6c +.L800A5BA4: +/* 0A67A4 800A5BA4 8CEE0000 */ lw $t6, ($a3) +/* 0A67A8 800A5BA8 8FAF001C */ lw $t7, 0x1c($sp) +/* 0A67AC 800A5BAC 00000000 */ nop +/* 0A67B0 800A5BB0 01CFC023 */ subu $t8, $t6, $t7 +/* 0A67B4 800A5BB4 07010002 */ bgez $t8, .L800A5BC0 +/* 0A67B8 800A5BB8 ACF80000 */ sw $t8, ($a3) +/* 0A67BC 800A5BBC ACE00000 */ sw $zero, ($a3) +.L800A5BC0: +/* 0A67C0 800A5BC0 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A67C4 800A5BC4 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A67C8 800A5BC8 8D020000 */ lw $v0, ($t0) +/* 0A67CC 800A5BCC 8FB80018 */ lw $t8, 0x18($sp) +/* 0A67D0 800A5BD0 8043047A */ lb $v1, 0x47a($v0) +/* 0A67D4 800A5BD4 24060001 */ li $a2, 1 +/* 0A67D8 800A5BD8 10600084 */ beqz $v1, .L800A5DEC +/* 0A67DC 800A5BDC 00000000 */ nop +/* 0A67E0 800A5BE0 14C300C7 */ bne $a2, $v1, .L800A5F00 +/* 0A67E4 800A5BE4 00000000 */ nop +/* 0A67E8 800A5BE8 8043047B */ lb $v1, 0x47b($v0) +/* 0A67EC 800A5BEC 8FA9001C */ lw $t1, 0x1c($sp) +/* 0A67F0 800A5BF0 14C30037 */ bne $a2, $v1, .L800A5CD0 +/* 0A67F4 800A5BF4 2401FFFF */ li $at, -1 +/* 0A67F8 800A5BF8 00095080 */ sll $t2, $t1, 2 +/* 0A67FC 800A5BFC 01495023 */ subu $t2, $t2, $t1 +/* 0A6800 800A5C00 000A5080 */ sll $t2, $t2, 2 +/* 0A6804 800A5C04 01495021 */ addu $t2, $t2, $t1 +/* 0A6808 800A5C08 448A5000 */ mtc1 $t2, $f10 +/* 0A680C 800A5C0C C450046C */ lwc1 $f16, 0x46c($v0) +/* 0A6810 800A5C10 46805020 */ cvt.s.w $f0, $f10 +/* 0A6814 800A5C14 240FFFFF */ li $t7, -1 +/* 0A6818 800A5C18 24040016 */ li $a0, 22 +/* 0A681C 800A5C1C 46008480 */ add.s $f18, $f16, $f0 +/* 0A6820 800A5C20 00002825 */ move $a1, $zero +/* 0A6824 800A5C24 E452046C */ swc1 $f18, 0x46c($v0) +/* 0A6828 800A5C28 8D020000 */ lw $v0, ($t0) +/* 0A682C 800A5C2C 00000000 */ nop +/* 0A6830 800A5C30 804B047C */ lb $t3, 0x47c($v0) +/* 0A6834 800A5C34 C444046C */ lwc1 $f4, 0x46c($v0) +/* 0A6838 800A5C38 448B3000 */ mtc1 $t3, $f6 +/* 0A683C 800A5C3C 00000000 */ nop +/* 0A6840 800A5C40 468030A0 */ cvt.s.w $f2, $f6 +/* 0A6844 800A5C44 4604103C */ c.lt.s $f2, $f4 +/* 0A6848 800A5C48 00000000 */ nop +/* 0A684C 800A5C4C 45000004 */ bc1f .L800A5C60 +/* 0A6850 800A5C50 00000000 */ nop +/* 0A6854 800A5C54 E442046C */ swc1 $f2, 0x46c($v0) +/* 0A6858 800A5C58 8D020000 */ lw $v0, ($t0) +/* 0A685C 800A5C5C 00000000 */ nop +.L800A5C60: +/* 0A6860 800A5C60 C448048C */ lwc1 $f8, 0x48c($v0) +/* 0A6864 800A5C64 00000000 */ nop +/* 0A6868 800A5C68 46004281 */ sub.s $f10, $f8, $f0 +/* 0A686C 800A5C6C E44A048C */ swc1 $f10, 0x48c($v0) +/* 0A6870 800A5C70 8D020000 */ lw $v0, ($t0) +/* 0A6874 800A5C74 00000000 */ nop +/* 0A6878 800A5C78 804C049C */ lb $t4, 0x49c($v0) +/* 0A687C 800A5C7C C452048C */ lwc1 $f18, 0x48c($v0) +/* 0A6880 800A5C80 448C8000 */ mtc1 $t4, $f16 +/* 0A6884 800A5C84 00000000 */ nop +/* 0A6888 800A5C88 468080A0 */ cvt.s.w $f2, $f16 +/* 0A688C 800A5C8C 4602903C */ c.lt.s $f18, $f2 +/* 0A6890 800A5C90 00000000 */ nop +/* 0A6894 800A5C94 45000003 */ bc1f .L800A5CA4 +/* 0A6898 800A5C98 8FAD0018 */ lw $t5, 0x18($sp) +/* 0A689C 800A5C9C E442048C */ swc1 $f2, 0x48c($v0) +/* 0A68A0 800A5CA0 8FAD0018 */ lw $t5, 0x18($sp) +.L800A5CA4: +/* 0A68A4 800A5CA4 00000000 */ nop +/* 0A68A8 800A5CA8 91AE01FC */ lbu $t6, 0x1fc($t5) +/* 0A68AC 800A5CAC 00000000 */ nop +/* 0A68B0 800A5CB0 29C1005B */ slti $at, $t6, 0x5b +/* 0A68B4 800A5CB4 10200023 */ beqz $at, .L800A5D44 +/* 0A68B8 800A5CB8 00000000 */ nop +/* 0A68BC 800A5CBC 8D180000 */ lw $t8, ($t0) +/* 0A68C0 800A5CC0 0C000741 */ jal func_80001D04 +/* 0A68C4 800A5CC4 A30F047B */ sb $t7, 0x47b($t8) +/* 0A68C8 800A5CC8 1000001E */ b .L800A5D44 +/* 0A68CC 800A5CCC 00000000 */ nop +.L800A5CD0: +/* 0A68D0 800A5CD0 1461001C */ bne $v1, $at, .L800A5D44 +/* 0A68D4 800A5CD4 00000000 */ nop +/* 0A68D8 800A5CD8 8FB9001C */ lw $t9, 0x1c($sp) +/* 0A68DC 800A5CDC C444046C */ lwc1 $f4, 0x46c($v0) +/* 0A68E0 800A5CE0 00194880 */ sll $t1, $t9, 2 +/* 0A68E4 800A5CE4 01394823 */ subu $t1, $t1, $t9 +/* 0A68E8 800A5CE8 00094880 */ sll $t1, $t1, 2 +/* 0A68EC 800A5CEC 01394821 */ addu $t1, $t1, $t9 +/* 0A68F0 800A5CF0 44893000 */ mtc1 $t1, $f6 +/* 0A68F4 800A5CF4 3C01C348 */ li $at, 0xC3480000 # -200.000000 +/* 0A68F8 800A5CF8 46803020 */ cvt.s.w $f0, $f6 +/* 0A68FC 800A5CFC 44813000 */ mtc1 $at, $f6 +/* 0A6900 800A5D00 46002201 */ sub.s $f8, $f4, $f0 +/* 0A6904 800A5D04 E448046C */ swc1 $f8, 0x46c($v0) +/* 0A6908 800A5D08 8D020000 */ lw $v0, ($t0) +/* 0A690C 800A5D0C 00000000 */ nop +/* 0A6910 800A5D10 C44A048C */ lwc1 $f10, 0x48c($v0) +/* 0A6914 800A5D14 00000000 */ nop +/* 0A6918 800A5D18 46005400 */ add.s $f16, $f10, $f0 +/* 0A691C 800A5D1C E450048C */ swc1 $f16, 0x48c($v0) +/* 0A6920 800A5D20 8D020000 */ lw $v0, ($t0) +/* 0A6924 800A5D24 00000000 */ nop +/* 0A6928 800A5D28 C452046C */ lwc1 $f18, 0x46c($v0) +/* 0A692C 800A5D2C 00000000 */ nop +/* 0A6930 800A5D30 4606903C */ c.lt.s $f18, $f6 +/* 0A6934 800A5D34 00000000 */ nop +/* 0A6938 800A5D38 45000002 */ bc1f .L800A5D44 +/* 0A693C 800A5D3C 00000000 */ nop +/* 0A6940 800A5D40 A040047A */ sb $zero, 0x47a($v0) +.L800A5D44: +/* 0A6944 800A5D44 0C01BAA8 */ jal func_8006EAA0 +/* 0A6948 800A5D48 00000000 */ nop +/* 0A694C 800A5D4C 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A6950 800A5D50 1440006B */ bnez $v0, .L800A5F00 +/* 0A6954 800A5D54 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A6958 800A5D58 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A695C 800A5D5C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A6960 800A5D60 8C830000 */ lw $v1, ($a0) +/* 0A6964 800A5D64 3C0BFA00 */ lui $t3, 0xfa00 +/* 0A6968 800A5D68 246A0008 */ addiu $t2, $v1, 8 +/* 0A696C 800A5D6C AC8A0000 */ sw $t2, ($a0) +/* 0A6970 800A5D70 240CFFA0 */ li $t4, -96 +/* 0A6974 800A5D74 AC6C0004 */ sw $t4, 4($v1) +/* 0A6978 800A5D78 AC6B0000 */ sw $t3, ($v1) +/* 0A697C 800A5D7C 8D070000 */ lw $a3, ($t0) +/* 0A6980 800A5D80 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A6984 800A5D84 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A6988 800A5D88 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A698C 800A5D8C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A6990 800A5D90 0C02A980 */ jal func_800AA600 +/* 0A6994 800A5D94 24E70460 */ addiu $a3, $a3, 0x460 +/* 0A6998 800A5D98 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A699C 800A5D9C 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A69A0 800A5DA0 8D070000 */ lw $a3, ($t0) +/* 0A69A4 800A5DA4 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A69A8 800A5DA8 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A69AC 800A5DAC 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A69B0 800A5DB0 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A69B4 800A5DB4 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A69B8 800A5DB8 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A69BC 800A5DBC 0C02A980 */ jal func_800AA600 +/* 0A69C0 800A5DC0 24E70480 */ addiu $a3, $a3, 0x480 +/* 0A69C4 800A5DC4 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A69C8 800A5DC8 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A69CC 800A5DCC 8C830000 */ lw $v1, ($a0) +/* 0A69D0 800A5DD0 3C0EFA00 */ lui $t6, 0xfa00 +/* 0A69D4 800A5DD4 246D0008 */ addiu $t5, $v1, 8 +/* 0A69D8 800A5DD8 AC8D0000 */ sw $t5, ($a0) +/* 0A69DC 800A5DDC 240FFFFF */ li $t7, -1 +/* 0A69E0 800A5DE0 AC6F0004 */ sw $t7, 4($v1) +/* 0A69E4 800A5DE4 10000046 */ b .L800A5F00 +/* 0A69E8 800A5DE8 AC6E0000 */ sw $t6, ($v1) +.L800A5DEC: +/* 0A69EC 800A5DEC 931901FC */ lbu $t9, 0x1fc($t8) +/* 0A69F0 800A5DF0 00000000 */ nop +/* 0A69F4 800A5DF4 2B210079 */ slti $at, $t9, 0x79 +/* 0A69F8 800A5DF8 14200041 */ bnez $at, .L800A5F00 +/* 0A69FC 800A5DFC 00000000 */ nop +/* 0A6A00 800A5E00 A046047A */ sb $a2, 0x47a($v0) +/* 0A6A04 800A5E04 8D090000 */ lw $t1, ($t0) +/* 0A6A08 800A5E08 240AFFE1 */ li $t2, -31 +/* 0A6A0C 800A5E0C A126047B */ sb $a2, 0x47b($t1) +/* 0A6A10 800A5E10 8D0B0000 */ lw $t3, ($t0) +/* 0A6A14 800A5E14 240C0034 */ li $t4, 52 +/* 0A6A18 800A5E18 A16A047C */ sb $t2, 0x47c($t3) +/* 0A6A1C 800A5E1C 8D0D0000 */ lw $t5, ($t0) +/* 0A6A20 800A5E20 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 +/* 0A6A24 800A5E24 A1AC049C */ sb $t4, 0x49c($t5) +/* 0A6A28 800A5E28 8D0E0000 */ lw $t6, ($t0) +/* 0A6A2C 800A5E2C 240FFFEB */ li $t7, -21 +/* 0A6A30 800A5E30 A1C0047D */ sb $zero, 0x47d($t6) +/* 0A6A34 800A5E34 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) +/* 0A6A38 800A5E38 00000000 */ nop +/* 0A6A3C 800A5E3C 14C30007 */ bne $a2, $v1, .L800A5E5C +/* 0A6A40 800A5E40 28610002 */ slti $at, $v1, 2 +/* 0A6A44 800A5E44 8D180000 */ lw $t8, ($t0) +/* 0A6A48 800A5E48 2419002A */ li $t9, 42 +/* 0A6A4C 800A5E4C A30F047C */ sb $t7, 0x47c($t8) +/* 0A6A50 800A5E50 8D090000 */ lw $t1, ($t0) +/* 0A6A54 800A5E54 10000017 */ b .L800A5EB4 +/* 0A6A58 800A5E58 A139049C */ sb $t9, 0x49c($t1) +.L800A5E5C: +/* 0A6A5C 800A5E5C 14200015 */ bnez $at, .L800A5EB4 +/* 0A6A60 800A5E60 00000000 */ nop +/* 0A6A64 800A5E64 8FAA0018 */ lw $t2, 0x18($sp) +/* 0A6A68 800A5E68 24010002 */ li $at, 2 +/* 0A6A6C 800A5E6C 85420000 */ lh $v0, ($t2) +/* 0A6A70 800A5E70 240BFF9C */ li $t3, -100 +/* 0A6A74 800A5E74 10400003 */ beqz $v0, .L800A5E84 +/* 0A6A78 800A5E78 00000000 */ nop +/* 0A6A7C 800A5E7C 14410007 */ bne $v0, $at, .L800A5E9C +/* 0A6A80 800A5E80 00000000 */ nop +.L800A5E84: +/* 0A6A84 800A5E84 8D0C0000 */ lw $t4, ($t0) +/* 0A6A88 800A5E88 240DFFC9 */ li $t5, -55 +/* 0A6A8C 800A5E8C A18B047C */ sb $t3, 0x47c($t4) +/* 0A6A90 800A5E90 8D0E0000 */ lw $t6, ($t0) +/* 0A6A94 800A5E94 10000007 */ b .L800A5EB4 +/* 0A6A98 800A5E98 A1CD049C */ sb $t5, 0x49c($t6) +.L800A5E9C: +/* 0A6A9C 800A5E9C 8D180000 */ lw $t8, ($t0) +/* 0A6AA0 800A5EA0 240F003B */ li $t7, 59 +/* 0A6AA4 800A5EA4 A30F047C */ sb $t7, 0x47c($t8) +/* 0A6AA8 800A5EA8 8D090000 */ lw $t1, ($t0) +/* 0A6AAC 800A5EAC 24190068 */ li $t9, 104 +/* 0A6AB0 800A5EB0 A139049C */ sb $t9, 0x49c($t1) +.L800A5EB4: +/* 0A6AB4 800A5EB4 8D020000 */ lw $v0, ($t0) +/* 0A6AB8 800A5EB8 24040016 */ li $a0, 22 +/* 0A6ABC 800A5EBC 804A049C */ lb $t2, 0x49c($v0) +/* 0A6AC0 800A5EC0 00002825 */ move $a1, $zero +/* 0A6AC4 800A5EC4 254B00C8 */ addiu $t3, $t2, 0xc8 +/* 0A6AC8 800A5EC8 448B2000 */ mtc1 $t3, $f4 +/* 0A6ACC 800A5ECC 00000000 */ nop +/* 0A6AD0 800A5ED0 46802220 */ cvt.s.w $f8, $f4 +/* 0A6AD4 800A5ED4 E448048C */ swc1 $f8, 0x48c($v0) +/* 0A6AD8 800A5ED8 8D020000 */ lw $v0, ($t0) +/* 0A6ADC 800A5EDC 00000000 */ nop +/* 0A6AE0 800A5EE0 804C049C */ lb $t4, 0x49c($v0) +/* 0A6AE4 800A5EE4 00000000 */ nop +/* 0A6AE8 800A5EE8 258DFF38 */ addiu $t5, $t4, -0xc8 +/* 0A6AEC 800A5EEC 448D5000 */ mtc1 $t5, $f10 +/* 0A6AF0 800A5EF0 00000000 */ nop +/* 0A6AF4 800A5EF4 46805420 */ cvt.s.w $f16, $f10 +/* 0A6AF8 800A5EF8 0C000741 */ jal func_80001D04 +/* 0A6AFC 800A5EFC E450046C */ swc1 $f16, 0x46c($v0) +.L800A5F00: +/* 0A6B00 800A5F00 0C01EFC7 */ jal func_8007BF1C +/* 0A6B04 800A5F04 00002025 */ move $a0, $zero +/* 0A6B08 800A5F08 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A6B0C 800A5F0C 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0A6B10 800A5F10 03E00008 */ jr $ra +/* 0A6B14 800A5F14 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A5F18.s b/asm/non_matchings/unknown_09F8F0/func_800A5F18.s new file mode 100644 index 00000000..e95c74db --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A5F18.s @@ -0,0 +1,212 @@ +glabel func_800A5F18 +/* 0A6B18 800A5F18 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0A6B1C 800A5F1C 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 +/* 0A6B20 800A5F20 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) +/* 0A6B24 800A5F24 AFA40028 */ sw $a0, 0x28($sp) +/* 0A6B28 800A5F28 AFBF001C */ sw $ra, 0x1c($sp) +/* 0A6B2C 800A5F2C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A6B30 800A5F30 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A6B34 800A5F34 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A6B38 800A5F38 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A6B3C 800A5F3C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A6B40 800A5F40 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A6B44 800A5F44 0C02A980 */ jal func_800AA600 +/* 0A6B48 800A5F48 24E705E0 */ addiu $a3, $a3, 0x5e0 +/* 0A6B4C 800A5F4C 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 +/* 0A6B50 800A5F50 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) +/* 0A6B54 800A5F54 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A6B58 800A5F58 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A6B5C 800A5F5C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A6B60 800A5F60 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A6B64 800A5F64 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A6B68 800A5F68 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A6B6C 800A5F6C 0C02A980 */ jal func_800AA600 +/* 0A6B70 800A5F70 24E70600 */ addiu $a3, $a3, 0x600 +/* 0A6B74 800A5F74 0C01AF66 */ jal func_8006BD98 +/* 0A6B78 800A5F78 00000000 */ nop +/* 0A6B7C 800A5F7C 304E0040 */ andi $t6, $v0, 0x40 +/* 0A6B80 800A5F80 15C000B1 */ bnez $t6, .L800A6248 +/* 0A6B84 800A5F84 8FBF001C */ lw $ra, 0x1c($sp) +/* 0A6B88 800A5F88 0C027B20 */ jal func_8009EC80 +/* 0A6B8C 800A5F8C 00000000 */ nop +/* 0A6B90 800A5F90 144000AD */ bnez $v0, .L800A6248 +/* 0A6B94 800A5F94 8FBF001C */ lw $ra, 0x1c($sp) +/* 0A6B98 800A5F98 0C006E9D */ jal func_8001BA74 +/* 0A6B9C 800A5F9C 27A40024 */ addiu $a0, $sp, 0x24 +/* 0A6BA0 800A5FA0 3C0F8012 */ lui $t7, %hi(D_80126D37) # $t7, 0x8012 +/* 0A6BA4 800A5FA4 91EF6D37 */ lbu $t7, %lo(D_80126D37)($t7) +/* 0A6BA8 800A5FA8 00000000 */ nop +/* 0A6BAC 800A5FAC 29E10002 */ slti $at, $t7, 2 +/* 0A6BB0 800A5FB0 142000A5 */ bnez $at, .L800A6248 +/* 0A6BB4 800A5FB4 8FBF001C */ lw $ra, 0x1c($sp) +/* 0A6BB8 800A5FB8 0C027B20 */ jal func_8009EC80 +/* 0A6BBC 800A5FBC 00000000 */ nop +/* 0A6BC0 800A5FC0 10400005 */ beqz $v0, .L800A5FD8 +/* 0A6BC4 800A5FC4 00000000 */ nop +/* 0A6BC8 800A5FC8 0C01BAAC */ jal func_8006EAB0 +/* 0A6BCC 800A5FCC 00000000 */ nop +/* 0A6BD0 800A5FD0 1440009D */ bnez $v0, .L800A6248 +/* 0A6BD4 800A5FD4 8FBF001C */ lw $ra, 0x1c($sp) +.L800A5FD8: +/* 0A6BD8 800A5FD8 0C0310BB */ jal func_800C42EC +/* 0A6BDC 800A5FDC 00002025 */ move $a0, $zero +/* 0A6BE0 800A5FE0 8FB90028 */ lw $t9, 0x28($sp) +/* 0A6BE4 800A5FE4 8FB80024 */ lw $t8, 0x24($sp) +/* 0A6BE8 800A5FE8 872801AC */ lh $t0, 0x1ac($t9) +/* 0A6BEC 800A5FEC 3C028012 */ lui $v0, 0x8012 +/* 0A6BF0 800A5FF0 13080078 */ beq $t8, $t0, .L800A61D4 +/* 0A6BF4 800A5FF4 3C01420C */ li $at, 0x420C0000 # 35.000000 +/* 0A6BF8 800A5FF8 240900FF */ li $t1, 255 +/* 0A6BFC 800A5FFC AFA90010 */ sw $t1, 0x10($sp) +/* 0A6C00 800A6000 240400FF */ li $a0, 255 +/* 0A6C04 800A6004 240500FF */ li $a1, 255 +/* 0A6C08 800A6008 240600FF */ li $a2, 255 +/* 0A6C0C 800A600C 0C0310E1 */ jal func_800C4384 +/* 0A6C10 800A6010 00003825 */ move $a3, $zero +/* 0A6C14 800A6014 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 +/* 0A6C18 800A6018 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) +/* 0A6C1C 800A601C 3C014220 */ li $at, 0x42200000 # 40.000000 +/* 0A6C20 800A6020 44813000 */ mtc1 $at, $f6 +/* 0A6C24 800A6024 C444016C */ lwc1 $f4, 0x16c($v0) +/* 0A6C28 800A6028 C4500170 */ lwc1 $f16, 0x170($v0) +/* 0A6C2C 800A602C 46062201 */ sub.s $f8, $f4, $f6 +/* 0A6C30 800A6030 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A6C34 800A6034 444AF800 */ cfc1 $t2, $31 +/* 0A6C38 800A6038 3C07800F */ lui $a3, %hi(D_800E8688) # $a3, 0x800f +/* 0A6C3C 800A603C 35410003 */ ori $at, $t2, 3 +/* 0A6C40 800A6040 38210002 */ xori $at, $at, 2 +/* 0A6C44 800A6044 44C1F800 */ ctc1 $at, $31 +/* 0A6C48 800A6048 24E78688 */ addiu $a3, %lo(D_800E8688) # addiu $a3, $a3, -0x7978 +/* 0A6C4C 800A604C 460042A4 */ cvt.w.s $f10, $f8 +/* 0A6C50 800A6050 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A6C54 800A6054 44CAF800 */ ctc1 $t2, $31 +/* 0A6C58 800A6058 44055000 */ mfc1 $a1, $f10 +/* 0A6C5C 800A605C AFA00010 */ sw $zero, 0x10($sp) +/* 0A6C60 800A6060 444BF800 */ cfc1 $t3, $31 +/* 0A6C64 800A6064 00000000 */ nop +/* 0A6C68 800A6068 35610003 */ ori $at, $t3, 3 +/* 0A6C6C 800A606C 38210002 */ xori $at, $at, 2 +/* 0A6C70 800A6070 44C1F800 */ ctc1 $at, $31 +/* 0A6C74 800A6074 00000000 */ nop +/* 0A6C78 800A6078 460084A4 */ cvt.w.s $f18, $f16 +/* 0A6C7C 800A607C 44069000 */ mfc1 $a2, $f18 +/* 0A6C80 800A6080 44CBF800 */ ctc1 $t3, $31 +/* 0A6C84 800A6084 0C031110 */ jal func_800C4440 +/* 0A6C88 800A6088 00000000 */ nop +/* 0A6C8C 800A608C 444CF800 */ cfc1 $t4, $31 +/* 0A6C90 800A6090 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 +/* 0A6C94 800A6094 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) +/* 0A6C98 800A6098 35810003 */ ori $at, $t4, 3 +/* 0A6C9C 800A609C 38210002 */ xori $at, $at, 2 +/* 0A6CA0 800A60A0 44C1F800 */ ctc1 $at, $31 +/* 0A6CA4 800A60A4 C444016C */ lwc1 $f4, 0x16c($v0) +/* 0A6CA8 800A60A8 C4480170 */ lwc1 $f8, 0x170($v0) +/* 0A6CAC 800A60AC 460021A4 */ cvt.w.s $f6, $f4 +/* 0A6CB0 800A60B0 804E017C */ lb $t6, 0x17c($v0) +/* 0A6CB4 800A60B4 44CCF800 */ ctc1 $t4, $31 +/* 0A6CB8 800A60B8 8046017A */ lb $a2, 0x17a($v0) +/* 0A6CBC 800A60BC 8047017B */ lb $a3, 0x17b($v0) +/* 0A6CC0 800A60C0 444DF800 */ cfc1 $t5, $31 +/* 0A6CC4 800A60C4 44043000 */ mfc1 $a0, $f6 +/* 0A6CC8 800A60C8 35A10003 */ ori $at, $t5, 3 +/* 0A6CCC 800A60CC 38210002 */ xori $at, $at, 2 +/* 0A6CD0 800A60D0 44C1F800 */ ctc1 $at, $31 +/* 0A6CD4 800A60D4 240F0001 */ li $t7, 1 +/* 0A6CD8 800A60D8 460042A4 */ cvt.w.s $f10, $f8 +/* 0A6CDC 800A60DC AFAF0014 */ sw $t7, 0x14($sp) +/* 0A6CE0 800A60E0 44055000 */ mfc1 $a1, $f10 +/* 0A6CE4 800A60E4 44CDF800 */ ctc1 $t5, $31 +/* 0A6CE8 800A60E8 0C029FEF */ jal func_800A7FBC +/* 0A6CEC 800A60EC AFAE0010 */ sw $t6, 0x10($sp) +/* 0A6CF0 800A60F0 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 +/* 0A6CF4 800A60F4 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) +/* 0A6CF8 800A60F8 3C014220 */ li $at, 0x42200000 # 40.000000 +/* 0A6CFC 800A60FC 44819000 */ mtc1 $at, $f18 +/* 0A6D00 800A6100 C45002EC */ lwc1 $f16, 0x2ec($v0) +/* 0A6D04 800A6104 C44802F0 */ lwc1 $f8, 0x2f0($v0) +/* 0A6D08 800A6108 46128101 */ sub.s $f4, $f16, $f18 +/* 0A6D0C 800A610C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A6D10 800A6110 4459F800 */ cfc1 $t9, $31 +/* 0A6D14 800A6114 3C07800F */ lui $a3, %hi(D_800E8690) # $a3, 0x800f +/* 0A6D18 800A6118 37210003 */ ori $at, $t9, 3 +/* 0A6D1C 800A611C 38210002 */ xori $at, $at, 2 +/* 0A6D20 800A6120 44C1F800 */ ctc1 $at, $31 +/* 0A6D24 800A6124 24E78690 */ addiu $a3, %lo(D_800E8690) # addiu $a3, $a3, -0x7970 +/* 0A6D28 800A6128 460021A4 */ cvt.w.s $f6, $f4 +/* 0A6D2C 800A612C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A6D30 800A6130 44D9F800 */ ctc1 $t9, $31 +/* 0A6D34 800A6134 44053000 */ mfc1 $a1, $f6 +/* 0A6D38 800A6138 AFA00010 */ sw $zero, 0x10($sp) +/* 0A6D3C 800A613C 4458F800 */ cfc1 $t8, $31 +/* 0A6D40 800A6140 00000000 */ nop +/* 0A6D44 800A6144 37010003 */ ori $at, $t8, 3 +/* 0A6D48 800A6148 38210002 */ xori $at, $at, 2 +/* 0A6D4C 800A614C 44C1F800 */ ctc1 $at, $31 +/* 0A6D50 800A6150 00000000 */ nop +/* 0A6D54 800A6154 460042A4 */ cvt.w.s $f10, $f8 +/* 0A6D58 800A6158 44065000 */ mfc1 $a2, $f10 +/* 0A6D5C 800A615C 44D8F800 */ ctc1 $t8, $31 +/* 0A6D60 800A6160 0C031110 */ jal func_800C4440 +/* 0A6D64 800A6164 00000000 */ nop +/* 0A6D68 800A6168 4448F800 */ cfc1 $t0, $31 +/* 0A6D6C 800A616C 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 +/* 0A6D70 800A6170 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) +/* 0A6D74 800A6174 35010003 */ ori $at, $t0, 3 +/* 0A6D78 800A6178 38210002 */ xori $at, $at, 2 +/* 0A6D7C 800A617C 44C1F800 */ ctc1 $at, $31 +/* 0A6D80 800A6180 C45002EC */ lwc1 $f16, 0x2ec($v0) +/* 0A6D84 800A6184 C44402F0 */ lwc1 $f4, 0x2f0($v0) +/* 0A6D88 800A6188 460084A4 */ cvt.w.s $f18, $f16 +/* 0A6D8C 800A618C 804A02FC */ lb $t2, 0x2fc($v0) +/* 0A6D90 800A6190 44C8F800 */ ctc1 $t0, $31 +/* 0A6D94 800A6194 804602FA */ lb $a2, 0x2fa($v0) +/* 0A6D98 800A6198 804702FB */ lb $a3, 0x2fb($v0) +/* 0A6D9C 800A619C 4449F800 */ cfc1 $t1, $31 +/* 0A6DA0 800A61A0 44049000 */ mfc1 $a0, $f18 +/* 0A6DA4 800A61A4 35210003 */ ori $at, $t1, 3 +/* 0A6DA8 800A61A8 38210002 */ xori $at, $at, 2 +/* 0A6DAC 800A61AC 44C1F800 */ ctc1 $at, $31 +/* 0A6DB0 800A61B0 240B0001 */ li $t3, 1 +/* 0A6DB4 800A61B4 460021A4 */ cvt.w.s $f6, $f4 +/* 0A6DB8 800A61B8 AFAB0014 */ sw $t3, 0x14($sp) +/* 0A6DBC 800A61BC 44053000 */ mfc1 $a1, $f6 +/* 0A6DC0 800A61C0 44C9F800 */ ctc1 $t1, $31 +/* 0A6DC4 800A61C4 0C029FEF */ jal func_800A7FBC +/* 0A6DC8 800A61C8 AFAA0010 */ sw $t2, 0x10($sp) +/* 0A6DCC 800A61CC 1000001E */ b .L800A6248 +/* 0A6DD0 800A61D0 8FBF001C */ lw $ra, 0x1c($sp) +.L800A61D4: +/* 0A6DD4 800A61D4 8C426CDC */ lw $v0, 0x6cdc($v0) +/* 0A6DD8 800A61D8 44815000 */ mtc1 $at, $f10 +/* 0A6DDC 800A61DC C448016C */ lwc1 $f8, 0x16c($v0) +/* 0A6DE0 800A61E0 C4440170 */ lwc1 $f4, 0x170($v0) +/* 0A6DE4 800A61E4 460A4401 */ sub.s $f16, $f8, $f10 +/* 0A6DE8 800A61E8 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A6DEC 800A61EC 444CF800 */ cfc1 $t4, $31 +/* 0A6DF0 800A61F0 3C07800F */ lui $a3, %hi(D_800E8694) # $a3, 0x800f +/* 0A6DF4 800A61F4 35810003 */ ori $at, $t4, 3 +/* 0A6DF8 800A61F8 38210002 */ xori $at, $at, 2 +/* 0A6DFC 800A61FC 44C1F800 */ ctc1 $at, $31 +/* 0A6E00 800A6200 24E78694 */ addiu $a3, %lo(D_800E8694) # addiu $a3, $a3, -0x796c +/* 0A6E04 800A6204 460084A4 */ cvt.w.s $f18, $f16 +/* 0A6E08 800A6208 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A6E0C 800A620C 44CCF800 */ ctc1 $t4, $31 +/* 0A6E10 800A6210 44059000 */ mfc1 $a1, $f18 +/* 0A6E14 800A6214 AFA00010 */ sw $zero, 0x10($sp) +/* 0A6E18 800A6218 444DF800 */ cfc1 $t5, $31 +/* 0A6E1C 800A621C 00000000 */ nop +/* 0A6E20 800A6220 35A10003 */ ori $at, $t5, 3 +/* 0A6E24 800A6224 38210002 */ xori $at, $at, 2 +/* 0A6E28 800A6228 44C1F800 */ ctc1 $at, $31 +/* 0A6E2C 800A622C 00000000 */ nop +/* 0A6E30 800A6230 460021A4 */ cvt.w.s $f6, $f4 +/* 0A6E34 800A6234 44063000 */ mfc1 $a2, $f6 +/* 0A6E38 800A6238 44CDF800 */ ctc1 $t5, $31 +/* 0A6E3C 800A623C 0C031110 */ jal func_800C4440 +/* 0A6E40 800A6240 00000000 */ nop +/* 0A6E44 800A6244 8FBF001C */ lw $ra, 0x1c($sp) +.L800A6248: +/* 0A6E48 800A6248 27BD0028 */ addiu $sp, $sp, 0x28 +/* 0A6E4C 800A624C 03E00008 */ jr $ra +/* 0A6E50 800A6250 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A6254.s b/asm/non_matchings/unknown_09F8F0/func_800A6254.s new file mode 100644 index 00000000..155d2fc2 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A6254.s @@ -0,0 +1,780 @@ +glabel func_800A6254 +/* 0A6E54 800A6254 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 0A6E58 800A6258 AFBF0014 */ sw $ra, 0x14($sp) +/* 0A6E5C 800A625C AFA50074 */ sw $a1, 0x74($sp) +/* 0A6E60 800A6260 0C01AF66 */ jal func_8006BD98 +/* 0A6E64 800A6264 AFA40070 */ sw $a0, 0x70($sp) +/* 0A6E68 800A6268 0C027B20 */ jal func_8009EC80 +/* 0A6E6C 800A626C AFA2005C */ sw $v0, 0x5c($sp) +/* 0A6E70 800A6270 8FA70070 */ lw $a3, 0x70($sp) +/* 0A6E74 800A6274 10400049 */ beqz $v0, .L800A639C +/* 0A6E78 800A6278 00000000 */ nop +/* 0A6E7C 800A627C 0C01BAAC */ jal func_8006EAB0 +/* 0A6E80 800A6280 AFA70070 */ sw $a3, 0x70($sp) +/* 0A6E84 800A6284 8FA70070 */ lw $a3, 0x70($sp) +/* 0A6E88 800A6288 10400044 */ beqz $v0, .L800A639C +/* 0A6E8C 800A628C 3C0E8012 */ lui $t6, %hi(D_80127189) # $t6, 0x8012 +/* 0A6E90 800A6290 91CE7189 */ lbu $t6, %lo(D_80127189)($t6) +/* 0A6E94 800A6294 00000000 */ nop +/* 0A6E98 800A6298 15C00040 */ bnez $t6, .L800A639C +/* 0A6E9C 800A629C 00000000 */ nop +/* 0A6EA0 800A62A0 0C003861 */ jal func_8000E184 +/* 0A6EA4 800A62A4 AFA70070 */ sw $a3, 0x70($sp) +/* 0A6EA8 800A62A8 8FA70070 */ lw $a3, 0x70($sp) +/* 0A6EAC 800A62AC 1040001B */ beqz $v0, .L800A631C +/* 0A6EB0 800A62B0 3C098012 */ lui $t1, %hi(D_80126CDC) # $t1, 0x8012 +/* 0A6EB4 800A62B4 25296CDC */ addiu $t1, %lo(D_80126CDC) # addiu $t1, $t1, 0x6cdc +/* 0A6EB8 800A62B8 8D220000 */ lw $v0, ($t1) +/* 0A6EBC 800A62BC 3C0142D8 */ li $at, 0x42D80000 # 108.000000 +/* 0A6EC0 800A62C0 44810000 */ mtc1 $at, $f0 +/* 0A6EC4 800A62C4 C44405F0 */ lwc1 $f4, 0x5f0($v0) +/* 0A6EC8 800A62C8 00000000 */ nop +/* 0A6ECC 800A62CC 46002181 */ sub.s $f6, $f4, $f0 +/* 0A6ED0 800A62D0 E44605F0 */ swc1 $f6, 0x5f0($v0) +/* 0A6ED4 800A62D4 8D220000 */ lw $v0, ($t1) +/* 0A6ED8 800A62D8 00000000 */ nop +/* 0A6EDC 800A62DC C4480610 */ lwc1 $f8, 0x610($v0) +/* 0A6EE0 800A62E0 00000000 */ nop +/* 0A6EE4 800A62E4 46004281 */ sub.s $f10, $f8, $f0 +/* 0A6EE8 800A62E8 E44A0610 */ swc1 $f10, 0x610($v0) +/* 0A6EEC 800A62EC 8D220000 */ lw $v0, ($t1) +/* 0A6EF0 800A62F0 00000000 */ nop +/* 0A6EF4 800A62F4 C4440170 */ lwc1 $f4, 0x170($v0) +/* 0A6EF8 800A62F8 00000000 */ nop +/* 0A6EFC 800A62FC 46002181 */ sub.s $f6, $f4, $f0 +/* 0A6F00 800A6300 E4460170 */ swc1 $f6, 0x170($v0) +/* 0A6F04 800A6304 8D220000 */ lw $v0, ($t1) +/* 0A6F08 800A6308 00000000 */ nop +/* 0A6F0C 800A630C C44802F0 */ lwc1 $f8, 0x2f0($v0) +/* 0A6F10 800A6310 00000000 */ nop +/* 0A6F14 800A6314 46004281 */ sub.s $f10, $f8, $f0 +/* 0A6F18 800A6318 E44A02F0 */ swc1 $f10, 0x2f0($v0) +.L800A631C: +/* 0A6F1C 800A631C 3C098012 */ lui $t1, %hi(D_80126CDC) # $t1, 0x8012 +/* 0A6F20 800A6320 25296CDC */ addiu $t1, %lo(D_80126CDC) # addiu $t1, $t1, 0x6cdc +/* 0A6F24 800A6324 8D220000 */ lw $v0, ($t1) +/* 0A6F28 800A6328 3C01420C */ li $at, 0x420C0000 # 35.000000 +/* 0A6F2C 800A632C 44810000 */ mtc1 $at, $f0 +/* 0A6F30 800A6330 C44405F0 */ lwc1 $f4, 0x5f0($v0) +/* 0A6F34 800A6334 3C03800E */ lui $v1, %hi(D_800E2770) # $v1, 0x800e +/* 0A6F38 800A6338 46002180 */ add.s $f6, $f4, $f0 +/* 0A6F3C 800A633C 24632770 */ addiu $v1, %lo(D_800E2770) # addiu $v1, $v1, 0x2770 +/* 0A6F40 800A6340 E44605F0 */ swc1 $f6, 0x5f0($v0) +/* 0A6F44 800A6344 8D220000 */ lw $v0, ($t1) +/* 0A6F48 800A6348 3C018012 */ lui $at, %hi(D_80127189) # $at, 0x8012 +/* 0A6F4C 800A634C C4480610 */ lwc1 $f8, 0x610($v0) +/* 0A6F50 800A6350 24180001 */ li $t8, 1 +/* 0A6F54 800A6354 46004280 */ add.s $f10, $f8, $f0 +/* 0A6F58 800A6358 E44A0610 */ swc1 $f10, 0x610($v0) +/* 0A6F5C 800A635C 8D220000 */ lw $v0, ($t1) +/* 0A6F60 800A6360 00000000 */ nop +/* 0A6F64 800A6364 C4440170 */ lwc1 $f4, 0x170($v0) +/* 0A6F68 800A6368 00000000 */ nop +/* 0A6F6C 800A636C 46002180 */ add.s $f6, $f4, $f0 +/* 0A6F70 800A6370 E4460170 */ swc1 $f6, 0x170($v0) +/* 0A6F74 800A6374 8D220000 */ lw $v0, ($t1) +/* 0A6F78 800A6378 00000000 */ nop +/* 0A6F7C 800A637C C44802F0 */ lwc1 $f8, 0x2f0($v0) +/* 0A6F80 800A6380 00000000 */ nop +/* 0A6F84 800A6384 46004280 */ add.s $f10, $f8, $f0 +/* 0A6F88 800A6388 E44A02F0 */ swc1 $f10, 0x2f0($v0) +/* 0A6F8C 800A638C 84EF0000 */ lh $t7, ($a3) +/* 0A6F90 800A6390 00000000 */ nop +/* 0A6F94 800A6394 A06F000C */ sb $t7, 0xc($v1) +/* 0A6F98 800A6398 A0387189 */ sb $t8, %lo(D_80127189)($at) +.L800A639C: +/* 0A6F9C 800A639C 3C098012 */ lui $t1, %hi(D_80126CDC) # $t1, 0x8012 +/* 0A6FA0 800A63A0 25296CDC */ addiu $t1, %lo(D_80126CDC) # addiu $t1, $t1, 0x6cdc +/* 0A6FA4 800A63A4 8D220000 */ lw $v0, ($t1) +/* 0A6FA8 800A63A8 3C03800E */ lui $v1, %hi(D_800E2770) # $v1, 0x800e +/* 0A6FAC 800A63AC 905905FA */ lbu $t9, 0x5fa($v0) +/* 0A6FB0 800A63B0 24632770 */ addiu $v1, %lo(D_800E2770) # addiu $v1, $v1, 0x2770 +/* 0A6FB4 800A63B4 2F210005 */ sltiu $at, $t9, 5 +/* 0A6FB8 800A63B8 10200278 */ beqz $at, .L800A6D9C +/* 0A6FBC 800A63BC 0019C880 */ sll $t9, $t9, 2 +/* 0A6FC0 800A63C0 3C01800F */ lui $at, 0x800f +/* 0A6FC4 800A63C4 00390821 */ addu $at, $at, $t9 +/* 0A6FC8 800A63C8 8C398744 */ lw $t9, -0x78bc($at) +/* 0A6FCC 800A63CC 00000000 */ nop +/* 0A6FD0 800A63D0 03200008 */ jr $t9 +/* 0A6FD4 800A63D4 00000000 */ nop +/* 0A6FD8 800A63D8 8FAA005C */ lw $t2, 0x5c($sp) +/* 0A6FDC 800A63DC 240C007F */ li $t4, 127 +/* 0A6FE0 800A63E0 314B0040 */ andi $t3, $t2, 0x40 +/* 0A6FE4 800A63E4 1560000D */ bnez $t3, .L800A641C +/* 0A6FE8 800A63E8 24040016 */ li $a0, 22 +/* 0A6FEC 800A63EC A06C0002 */ sb $t4, 2($v1) +/* 0A6FF0 800A63F0 A0600003 */ sb $zero, 3($v1) +/* 0A6FF4 800A63F4 84ED0000 */ lh $t5, ($a3) +/* 0A6FF8 800A63F8 AFA70070 */ sw $a3, 0x70($sp) +/* 0A6FFC 800A63FC 00002825 */ move $a1, $zero +/* 0A7000 800A6400 0C000741 */ jal func_80001D04 +/* 0A7004 800A6404 A06D000C */ sb $t5, 0xc($v1) +/* 0A7008 800A6408 3C098012 */ lui $t1, %hi(D_80126CDC) # $t1, 0x8012 +/* 0A700C 800A640C 25296CDC */ addiu $t1, %lo(D_80126CDC) # addiu $t1, $t1, 0x6cdc +/* 0A7010 800A6410 8D220000 */ lw $v0, ($t1) +/* 0A7014 800A6414 8FA70070 */ lw $a3, 0x70($sp) +/* 0A7018 800A6418 00000000 */ nop +.L800A641C: +/* 0A701C 800A641C 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 +/* 0A7020 800A6420 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) +/* 0A7024 800A6424 240EFFEC */ li $t6, -20 +/* 0A7028 800A6428 10600006 */ beqz $v1, .L800A6444 +/* 0A702C 800A642C 24060002 */ li $a2, 2 +/* 0A7030 800A6430 24080001 */ li $t0, 1 +/* 0A7034 800A6434 10680004 */ beq $v1, $t0, .L800A6448 +/* 0A7038 800A6438 00000000 */ nop +/* 0A703C 800A643C 10000009 */ b .L800A6464 +/* 0A7040 800A6440 24060002 */ li $a2, 2 +.L800A6444: +/* 0A7044 800A6444 24080001 */ li $t0, 1 +.L800A6448: +/* 0A7048 800A6448 A04E05FD */ sb $t6, 0x5fd($v0) +/* 0A704C 800A644C 8D2F0000 */ lw $t7, ($t1) +/* 0A7050 800A6450 2403FFF1 */ li $v1, -15 +/* 0A7054 800A6454 A1E3017D */ sb $v1, 0x17d($t7) +/* 0A7058 800A6458 8D380000 */ lw $t8, ($t1) +/* 0A705C 800A645C 10000016 */ b .L800A64B8 +/* 0A7060 800A6460 A30302FD */ sb $v1, 0x2fd($t8) +.L800A6464: +/* 0A7064 800A6464 84E30000 */ lh $v1, ($a3) +/* 0A7068 800A6468 2419FFA6 */ li $t9, -90 +/* 0A706C 800A646C 10600003 */ beqz $v1, .L800A647C +/* 0A7070 800A6470 00000000 */ nop +/* 0A7074 800A6474 14C30009 */ bne $a2, $v1, .L800A649C +/* 0A7078 800A6478 240C0037 */ li $t4, 55 +.L800A647C: +/* 0A707C 800A647C A05905FD */ sb $t9, 0x5fd($v0) +/* 0A7080 800A6480 8D2A0000 */ lw $t2, ($t1) +/* 0A7084 800A6484 2403FFAB */ li $v1, -85 +/* 0A7088 800A6488 A143017D */ sb $v1, 0x17d($t2) +/* 0A708C 800A648C 8D2B0000 */ lw $t3, ($t1) +/* 0A7090 800A6490 24060002 */ li $a2, 2 +/* 0A7094 800A6494 10000008 */ b .L800A64B8 +/* 0A7098 800A6498 A16302FD */ sb $v1, 0x2fd($t3) +.L800A649C: +/* 0A709C 800A649C A04C05FD */ sb $t4, 0x5fd($v0) +/* 0A70A0 800A64A0 8D2D0000 */ lw $t5, ($t1) +/* 0A70A4 800A64A4 2403003C */ li $v1, 60 +/* 0A70A8 800A64A8 A1A3017D */ sb $v1, 0x17d($t5) +/* 0A70AC 800A64AC 8D2E0000 */ lw $t6, ($t1) +/* 0A70B0 800A64B0 00000000 */ nop +/* 0A70B4 800A64B4 A1C302FD */ sb $v1, 0x2fd($t6) +.L800A64B8: +/* 0A70B8 800A64B8 3C048000 */ lui $a0, %hi(D_80000300) # $a0, 0x8000 +/* 0A70BC 800A64BC 24840300 */ addiu $a0, %lo(D_80000300) # addiu $a0, $a0, 0x300 +/* 0A70C0 800A64C0 8C8F0000 */ lw $t7, ($a0) +/* 0A70C4 800A64C4 00000000 */ nop +/* 0A70C8 800A64C8 15E00013 */ bnez $t7, .L800A6518 +/* 0A70CC 800A64CC 00000000 */ nop +/* 0A70D0 800A64D0 8D220000 */ lw $v0, ($t1) +/* 0A70D4 800A64D4 00000000 */ nop +/* 0A70D8 800A64D8 805805FD */ lb $t8, 0x5fd($v0) +/* 0A70DC 800A64DC 00000000 */ nop +/* 0A70E0 800A64E0 2719FFFC */ addiu $t9, $t8, -4 +/* 0A70E4 800A64E4 A05905FD */ sb $t9, 0x5fd($v0) +/* 0A70E8 800A64E8 8D220000 */ lw $v0, ($t1) +/* 0A70EC 800A64EC 00000000 */ nop +/* 0A70F0 800A64F0 804A017D */ lb $t2, 0x17d($v0) +/* 0A70F4 800A64F4 00000000 */ nop +/* 0A70F8 800A64F8 254BFFFC */ addiu $t3, $t2, -4 +/* 0A70FC 800A64FC A04B017D */ sb $t3, 0x17d($v0) +/* 0A7100 800A6500 8D220000 */ lw $v0, ($t1) +/* 0A7104 800A6504 00000000 */ nop +/* 0A7108 800A6508 804C02FD */ lb $t4, 0x2fd($v0) +/* 0A710C 800A650C 00000000 */ nop +/* 0A7110 800A6510 258DFFFC */ addiu $t5, $t4, -4 +/* 0A7114 800A6514 A04D02FD */ sb $t5, 0x2fd($v0) +.L800A6518: +/* 0A7118 800A6518 84E201AC */ lh $v0, 0x1ac($a3) +/* 0A711C 800A651C 00000000 */ nop +/* 0A7120 800A6520 28410004 */ slti $at, $v0, 4 +/* 0A7124 800A6524 10200004 */ beqz $at, .L800A6538 +/* 0A7128 800A6528 244EFFFF */ addiu $t6, $v0, -1 +/* 0A712C 800A652C 8D2F0000 */ lw $t7, ($t1) +/* 0A7130 800A6530 10000004 */ b .L800A6544 +/* 0A7134 800A6534 A5EE0618 */ sh $t6, 0x618($t7) +.L800A6538: +/* 0A7138 800A6538 8D390000 */ lw $t9, ($t1) +/* 0A713C 800A653C 24180003 */ li $t8, 3 +/* 0A7140 800A6540 A7380618 */ sh $t8, 0x618($t9) +.L800A6544: +/* 0A7144 800A6544 84EA01AC */ lh $t2, 0x1ac($a3) +/* 0A7148 800A6548 8D2C0000 */ lw $t4, ($t1) +/* 0A714C 800A654C 254BFFFF */ addiu $t3, $t2, -1 +/* 0A7150 800A6550 A58B05F8 */ sh $t3, 0x5f8($t4) +/* 0A7154 800A6554 8D2D0000 */ lw $t5, ($t1) +/* 0A7158 800A6558 3C028012 */ lui $v0, %hi(D_80126D37) # $v0, 0x8012 +/* 0A715C 800A655C A1A805FA */ sb $t0, 0x5fa($t5) +/* 0A7160 800A6560 90426D37 */ lbu $v0, %lo(D_80126D37)($v0) +/* 0A7164 800A6564 3C0143B4 */ li $at, 0x43B40000 # 360.000000 +/* 0A7168 800A6568 10460008 */ beq $v0, $a2, .L800A658C +/* 0A716C 800A656C 00000000 */ nop +/* 0A7170 800A6570 24010003 */ li $at, 3 +/* 0A7174 800A6574 10410054 */ beq $v0, $at, .L800A66C8 +/* 0A7178 800A6578 24010004 */ li $at, 4 +/* 0A717C 800A657C 10410052 */ beq $v0, $at, .L800A66C8 +/* 0A7180 800A6580 00000000 */ nop +/* 0A7184 800A6584 100000A8 */ b .L800A6828 +/* 0A7188 800A6588 00000000 */ nop +.L800A658C: +/* 0A718C 800A658C 44816000 */ mtc1 $at, $f12 +/* 0A7190 800A6590 84E30000 */ lh $v1, ($a3) +/* 0A7194 800A6594 3C01C220 */ li $at, 0xC2200000 # -40.000000 +/* 0A7198 800A6598 44817000 */ mtc1 $at, $f14 +/* 0A719C 800A659C 14600007 */ bnez $v1, .L800A65BC +/* 0A71A0 800A65A0 3C014337 */ li $at, 0x43370000 # 183.000000 +/* 0A71A4 800A65A4 3C014296 */ li $at, 0x42960000 # 75.000000 +/* 0A71A8 800A65A8 44810000 */ mtc1 $at, $f0 +/* 0A71AC 800A65AC 3C0142B4 */ li $at, 0x42B40000 # 90.000000 +/* 0A71B0 800A65B0 44811000 */ mtc1 $at, $f2 +/* 0A71B4 800A65B4 10000006 */ b .L800A65D0 +/* 0A71B8 800A65B8 8C8E0000 */ lw $t6, ($a0) +.L800A65BC: +/* 0A71BC 800A65BC 44810000 */ mtc1 $at, $f0 +/* 0A71C0 800A65C0 3C014346 */ li $at, 0x43460000 # 198.000000 +/* 0A71C4 800A65C4 44811000 */ mtc1 $at, $f2 +/* 0A71C8 800A65C8 00000000 */ nop +/* 0A71CC 800A65CC 8C8E0000 */ lw $t6, ($a0) +.L800A65D0: +/* 0A71D0 800A65D0 3C01800F */ lui $at, %hi(D_800E875C) # $at, 0x800f +/* 0A71D4 800A65D4 15C0002D */ bnez $t6, .L800A668C +/* 0A71D8 800A65D8 00000000 */ nop +/* 0A71DC 800A65DC C4318758 */ lwc1 $f17, %lo(D_800E8758)($at) +/* 0A71E0 800A65E0 C430875C */ lwc1 $f16, %lo(D_800E875C)($at) +/* 0A71E4 800A65E4 46000121 */ cvt.d.s $f4, $f0 +/* 0A71E8 800A65E8 46302182 */ mul.d $f6, $f4, $f16 +/* 0A71EC 800A65EC 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 0A71F0 800A65F0 44819000 */ mtc1 $at, $f18 +/* 0A71F4 800A65F4 46001221 */ cvt.d.s $f8, $f2 +/* 0A71F8 800A65F8 3C0143B4 */ li $at, 0x43B40000 # 360.000000 +/* 0A71FC 800A65FC 46304282 */ mul.d $f10, $f8, $f16 +/* 0A7200 800A6600 44812000 */ mtc1 $at, $f4 +/* 0A7204 800A6604 46203020 */ cvt.s.d $f0, $f6 +/* 0A7208 800A6608 3C01C220 */ li $at, 0xC2200000 # -40.000000 +/* 0A720C 800A660C 44813000 */ mtc1 $at, $f6 +/* 0A7210 800A6610 462050A0 */ cvt.s.d $f2, $f10 +/* 0A7214 800A6614 46122301 */ sub.s $f12, $f4, $f18 +/* 0A7218 800A6618 46123381 */ sub.s $f14, $f6, $f18 +/* 0A721C 800A661C 444FF800 */ cfc1 $t7, $31 +/* 0A7220 800A6620 00000000 */ nop +/* 0A7224 800A6624 35E10003 */ ori $at, $t7, 3 +/* 0A7228 800A6628 38210002 */ xori $at, $at, 2 +/* 0A722C 800A662C 44C1F800 */ ctc1 $at, $31 +/* 0A7230 800A6630 00000000 */ nop +/* 0A7234 800A6634 46000224 */ cvt.w.s $f8, $f0 +/* 0A7238 800A6638 44184000 */ mfc1 $t8, $f8 +/* 0A723C 800A663C 44CFF800 */ ctc1 $t7, $31 +/* 0A7240 800A6640 44985000 */ mtc1 $t8, $f10 +/* 0A7244 800A6644 00000000 */ nop +/* 0A7248 800A6648 46805020 */ cvt.s.w $f0, $f10 +/* 0A724C 800A664C 4459F800 */ cfc1 $t9, $31 +/* 0A7250 800A6650 00000000 */ nop +/* 0A7254 800A6654 37210003 */ ori $at, $t9, 3 +/* 0A7258 800A6658 38210002 */ xori $at, $at, 2 +/* 0A725C 800A665C 44C1F800 */ ctc1 $at, $31 +/* 0A7260 800A6660 3C014110 */ li $at, 0x41100000 # 9.000000 +/* 0A7264 800A6664 46001124 */ cvt.w.s $f4, $f2 +/* 0A7268 800A6668 440A2000 */ mfc1 $t2, $f4 +/* 0A726C 800A666C 44D9F800 */ ctc1 $t9, $31 +/* 0A7270 800A6670 448A3000 */ mtc1 $t2, $f6 +/* 0A7274 800A6674 14600005 */ bnez $v1, .L800A668C +/* 0A7278 800A6678 468030A0 */ cvt.s.w $f2, $f6 +/* 0A727C 800A667C 44818000 */ mtc1 $at, $f16 +/* 0A7280 800A6680 00000000 */ nop +/* 0A7284 800A6684 46100001 */ sub.s $f0, $f0, $f16 +/* 0A7288 800A6688 46101081 */ sub.s $f2, $f2, $f16 +.L800A668C: +/* 0A728C 800A668C 8D2B0000 */ lw $t3, ($t1) +/* 0A7290 800A6690 3C028012 */ lui $v0, %hi(D_80126D37) # $v0, 0x8012 +/* 0A7294 800A6694 E56C016C */ swc1 $f12, 0x16c($t3) +/* 0A7298 800A6698 8D2C0000 */ lw $t4, ($t1) +/* 0A729C 800A669C 00000000 */ nop +/* 0A72A0 800A66A0 E5800170 */ swc1 $f0, 0x170($t4) +/* 0A72A4 800A66A4 8D2D0000 */ lw $t5, ($t1) +/* 0A72A8 800A66A8 00000000 */ nop +/* 0A72AC 800A66AC E5AE02EC */ swc1 $f14, 0x2ec($t5) +/* 0A72B0 800A66B0 8D2E0000 */ lw $t6, ($t1) +/* 0A72B4 800A66B4 00000000 */ nop +/* 0A72B8 800A66B8 E5C202F0 */ swc1 $f2, 0x2f0($t6) +/* 0A72BC 800A66BC 90426D37 */ lbu $v0, %lo(D_80126D37)($v0) +/* 0A72C0 800A66C0 10000059 */ b .L800A6828 +/* 0A72C4 800A66C4 00000000 */ nop +.L800A66C8: +/* 0A72C8 800A66C8 84E30000 */ lh $v1, ($a3) +/* 0A72CC 800A66CC 00000000 */ nop +/* 0A72D0 800A66D0 28610002 */ slti $at, $v1, 2 +/* 0A72D4 800A66D4 10200006 */ beqz $at, .L800A66F0 +/* 0A72D8 800A66D8 3C014296 */ li $at, 0x42960000 # 75.000000 +/* 0A72DC 800A66DC 44810000 */ mtc1 $at, $f0 +/* 0A72E0 800A66E0 3C0142B4 */ li $at, 0x42B40000 # 90.000000 +/* 0A72E4 800A66E4 44811000 */ mtc1 $at, $f2 +/* 0A72E8 800A66E8 10000006 */ b .L800A6704 +/* 0A72EC 800A66EC 00000000 */ nop +.L800A66F0: +/* 0A72F0 800A66F0 3C014337 */ li $at, 0x43370000 # 183.000000 +/* 0A72F4 800A66F4 44810000 */ mtc1 $at, $f0 +/* 0A72F8 800A66F8 3C014346 */ li $at, 0x43460000 # 198.000000 +/* 0A72FC 800A66FC 44811000 */ mtc1 $at, $f2 +/* 0A7300 800A6700 00000000 */ nop +.L800A6704: +/* 0A7304 800A6704 10600003 */ beqz $v1, .L800A6714 +/* 0A7308 800A6708 3C01428C */ li $at, 0x428C0000 # 70.000000 +/* 0A730C 800A670C 14C30006 */ bne $a2, $v1, .L800A6728 +/* 0A7310 800A6710 00000000 */ nop +.L800A6714: +/* 0A7314 800A6714 44816000 */ mtc1 $at, $f12 +/* 0A7318 800A6718 3C01C366 */ li $at, 0xC3660000 # -230.000000 +/* 0A731C 800A671C 44817000 */ mtc1 $at, $f14 +/* 0A7320 800A6720 10000007 */ b .L800A6740 +/* 0A7324 800A6724 8C8F0000 */ lw $t7, ($a0) +.L800A6728: +/* 0A7328 800A6728 3C014366 */ li $at, 0x43660000 # 230.000000 +/* 0A732C 800A672C 44816000 */ mtc1 $at, $f12 +/* 0A7330 800A6730 3C01C28C */ li $at, 0xC28C0000 # -70.000000 +/* 0A7334 800A6734 44817000 */ mtc1 $at, $f14 +/* 0A7338 800A6738 00000000 */ nop +/* 0A733C 800A673C 8C8F0000 */ lw $t7, ($a0) +.L800A6740: +/* 0A7340 800A6740 3C01800F */ lui $at, %hi(D_800E8764) # $at, 0x800f +/* 0A7344 800A6744 15E0002A */ bnez $t7, .L800A67F0 +/* 0A7348 800A6748 00000000 */ nop +/* 0A734C 800A674C C4318760 */ lwc1 $f17, %lo(D_800E8760)($at) +/* 0A7350 800A6750 C4308764 */ lwc1 $f16, %lo(D_800E8764)($at) +/* 0A7354 800A6754 46000221 */ cvt.d.s $f8, $f0 +/* 0A7358 800A6758 46304282 */ mul.d $f10, $f8, $f16 +/* 0A735C 800A675C 46001121 */ cvt.d.s $f4, $f2 +/* 0A7360 800A6760 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 0A7364 800A6764 44819000 */ mtc1 $at, $f18 +/* 0A7368 800A6768 46302182 */ mul.d $f6, $f4, $f16 +/* 0A736C 800A676C 46205020 */ cvt.s.d $f0, $f10 +/* 0A7370 800A6770 462030A0 */ cvt.s.d $f2, $f6 +/* 0A7374 800A6774 46126301 */ sub.s $f12, $f12, $f18 +/* 0A7378 800A6778 46127381 */ sub.s $f14, $f14, $f18 +/* 0A737C 800A677C 4458F800 */ cfc1 $t8, $31 +/* 0A7380 800A6780 00000000 */ nop +/* 0A7384 800A6784 37010003 */ ori $at, $t8, 3 +/* 0A7388 800A6788 38210002 */ xori $at, $at, 2 +/* 0A738C 800A678C 44C1F800 */ ctc1 $at, $31 +/* 0A7390 800A6790 00000000 */ nop +/* 0A7394 800A6794 46000224 */ cvt.w.s $f8, $f0 +/* 0A7398 800A6798 44194000 */ mfc1 $t9, $f8 +/* 0A739C 800A679C 44D8F800 */ ctc1 $t8, $31 +/* 0A73A0 800A67A0 44995000 */ mtc1 $t9, $f10 +/* 0A73A4 800A67A4 00000000 */ nop +/* 0A73A8 800A67A8 46805020 */ cvt.s.w $f0, $f10 +/* 0A73AC 800A67AC 444AF800 */ cfc1 $t2, $31 +/* 0A73B0 800A67B0 00000000 */ nop +/* 0A73B4 800A67B4 35410003 */ ori $at, $t2, 3 +/* 0A73B8 800A67B8 38210002 */ xori $at, $at, 2 +/* 0A73BC 800A67BC 44C1F800 */ ctc1 $at, $31 +/* 0A73C0 800A67C0 28610002 */ slti $at, $v1, 2 +/* 0A73C4 800A67C4 46001124 */ cvt.w.s $f4, $f2 +/* 0A73C8 800A67C8 440B2000 */ mfc1 $t3, $f4 +/* 0A73CC 800A67CC 44CAF800 */ ctc1 $t2, $31 +/* 0A73D0 800A67D0 448B3000 */ mtc1 $t3, $f6 +/* 0A73D4 800A67D4 10200006 */ beqz $at, .L800A67F0 +/* 0A73D8 800A67D8 468030A0 */ cvt.s.w $f2, $f6 +/* 0A73DC 800A67DC 3C014110 */ li $at, 0x41100000 # 9.000000 +/* 0A73E0 800A67E0 44818000 */ mtc1 $at, $f16 +/* 0A73E4 800A67E4 00000000 */ nop +/* 0A73E8 800A67E8 46100001 */ sub.s $f0, $f0, $f16 +/* 0A73EC 800A67EC 46101081 */ sub.s $f2, $f2, $f16 +.L800A67F0: +/* 0A73F0 800A67F0 8D2C0000 */ lw $t4, ($t1) +/* 0A73F4 800A67F4 3C028012 */ lui $v0, %hi(D_8012004B) # $v0, 0x8012 +/* 0A73F8 800A67F8 E58C016C */ swc1 $f12, 0x16c($t4) +/* 0A73FC 800A67FC 8D2D0000 */ lw $t5, ($t1) +/* 0A7400 800A6800 00000000 */ nop +/* 0A7404 800A6804 E5A00170 */ swc1 $f0, 0x170($t5) +/* 0A7408 800A6808 8D2E0000 */ lw $t6, ($t1) +/* 0A740C 800A680C 00000000 */ nop +/* 0A7410 800A6810 E5CE02EC */ swc1 $f14, 0x2ec($t6) +/* 0A7414 800A6814 8D2F0000 */ lw $t7, ($t1) +/* 0A7418 800A6818 00000000 */ nop +/* 0A741C 800A681C E5E202F0 */ swc1 $f2, 0x2f0($t7) +/* 0A7420 800A6820 90426D37 */ lbu $v0, %lo(D_80126D37)($v0) +/* 0A7424 800A6824 00000000 */ nop +.L800A6828: +/* 0A7428 800A6828 1102015F */ beq $t0, $v0, .L800A6DA8 +/* 0A742C 800A682C 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A7430 800A6830 0C01AF6C */ jal func_8006BDB0 +/* 0A7434 800A6834 AFA70070 */ sw $a3, 0x70($sp) +/* 0A7438 800A6838 8FA70070 */ lw $a3, 0x70($sp) +/* 0A743C 800A683C 00004025 */ move $t0, $zero +/* 0A7440 800A6840 8CF80128 */ lw $t8, 0x128($a3) +/* 0A7444 800A6844 00001825 */ move $v1, $zero +/* 0A7448 800A6848 AFB80044 */ sw $t8, 0x44($sp) +/* 0A744C 800A684C 8059004B */ lb $t9, %lo(D_8012004B)($v0) +/* 0A7450 800A6850 27A6003C */ addiu $a2, $sp, 0x3c +/* 0A7454 800A6854 1B20000E */ blez $t9, .L800A6890 +/* 0A7458 800A6858 8FA40044 */ lw $a0, 0x44($sp) +/* 0A745C 800A685C 8045004B */ lb $a1, %lo(D_8012004B)($v0) +/* 0A7460 800A6860 00E02025 */ move $a0, $a3 +.L800A6864: +/* 0A7464 800A6864 8C820128 */ lw $v0, 0x128($a0) +/* 0A7468 800A6868 8FAA0044 */ lw $t2, 0x44($sp) +/* 0A746C 800A686C 24630001 */ addiu $v1, $v1, 1 +/* 0A7470 800A6870 004A082A */ slt $at, $v0, $t2 +/* 0A7474 800A6874 10200002 */ beqz $at, .L800A6880 +/* 0A7478 800A6878 01024021 */ addu $t0, $t0, $v0 +/* 0A747C 800A687C AFA20044 */ sw $v0, 0x44($sp) +.L800A6880: +/* 0A7480 800A6880 0065082A */ slt $at, $v1, $a1 +/* 0A7484 800A6884 1420FFF7 */ bnez $at, .L800A6864 +/* 0A7488 800A6888 24840004 */ addiu $a0, $a0, 4 +/* 0A748C 800A688C 8FA40044 */ lw $a0, 0x44($sp) +.L800A6890: +/* 0A7490 800A6890 27A50040 */ addiu $a1, $sp, 0x40 +/* 0A7494 800A6894 27A70038 */ addiu $a3, $sp, 0x38 +/* 0A7498 800A6898 0C0165E4 */ jal func_80059790 +/* 0A749C 800A689C AFA80048 */ sw $t0, 0x48($sp) +/* 0A74A0 800A68A0 3C098012 */ lui $t1, %hi(D_80126CDC) # $t1, 0x8012 +/* 0A74A4 800A68A4 25296CDC */ addiu $t1, %lo(D_80126CDC) # addiu $t1, $t1, 0x6cdc +/* 0A74A8 800A68A8 8D2C0000 */ lw $t4, ($t1) +/* 0A74AC 800A68AC 8FAB0040 */ lw $t3, 0x40($sp) +/* 0A74B0 800A68B0 27A50040 */ addiu $a1, $sp, 0x40 +/* 0A74B4 800A68B4 A18B02FA */ sb $t3, 0x2fa($t4) +/* 0A74B8 800A68B8 8D2E0000 */ lw $t6, ($t1) +/* 0A74BC 800A68BC 8FAD003C */ lw $t5, 0x3c($sp) +/* 0A74C0 800A68C0 27A6003C */ addiu $a2, $sp, 0x3c +/* 0A74C4 800A68C4 A1CD02FB */ sb $t5, 0x2fb($t6) +/* 0A74C8 800A68C8 8D380000 */ lw $t8, ($t1) +/* 0A74CC 800A68CC 8FAF0038 */ lw $t7, 0x38($sp) +/* 0A74D0 800A68D0 27A70038 */ addiu $a3, $sp, 0x38 +/* 0A74D4 800A68D4 A30F02FC */ sb $t7, 0x2fc($t8) +/* 0A74D8 800A68D8 8FA40048 */ lw $a0, 0x48($sp) +/* 0A74DC 800A68DC 0C0165E4 */ jal func_80059790 +/* 0A74E0 800A68E0 00000000 */ nop +/* 0A74E4 800A68E4 3C098012 */ lui $t1, %hi(D_80126CDC) # $t1, 0x8012 +/* 0A74E8 800A68E8 25296CDC */ addiu $t1, %lo(D_80126CDC) # addiu $t1, $t1, 0x6cdc +/* 0A74EC 800A68EC 8D2A0000 */ lw $t2, ($t1) +/* 0A74F0 800A68F0 8FB90040 */ lw $t9, 0x40($sp) +/* 0A74F4 800A68F4 00000000 */ nop +/* 0A74F8 800A68F8 A159017A */ sb $t9, 0x17a($t2) +/* 0A74FC 800A68FC 8D2C0000 */ lw $t4, ($t1) +/* 0A7500 800A6900 8FAB003C */ lw $t3, 0x3c($sp) +/* 0A7504 800A6904 00000000 */ nop +/* 0A7508 800A6908 A18B017B */ sb $t3, 0x17b($t4) +/* 0A750C 800A690C 8D2E0000 */ lw $t6, ($t1) +/* 0A7510 800A6910 8FAD0038 */ lw $t5, 0x38($sp) +/* 0A7514 800A6914 10000123 */ b .L800A6DA4 +/* 0A7518 800A6918 A1CD017C */ sb $t5, 0x17c($t6) +/* 0A751C 800A691C 8FA40074 */ lw $a0, 0x74($sp) +/* 0A7520 800A6920 804505FD */ lb $a1, 0x5fd($v0) +/* 0A7524 800A6924 00047880 */ sll $t7, $a0, 2 +/* 0A7528 800A6928 01E47823 */ subu $t7, $t7, $a0 +/* 0A752C 800A692C 000F7880 */ sll $t7, $t7, 2 +/* 0A7530 800A6930 01E47821 */ addu $t7, $t7, $a0 +/* 0A7534 800A6934 00AFC023 */ subu $t8, $a1, $t7 +/* 0A7538 800A6938 271900A0 */ addiu $t9, $t8, 0xa0 +/* 0A753C 800A693C 44994000 */ mtc1 $t9, $f8 +/* 0A7540 800A6940 C44205EC */ lwc1 $f2, 0x5ec($v0) +/* 0A7544 800A6944 468042A0 */ cvt.s.w $f10, $f8 +/* 0A7548 800A6948 24060001 */ li $a2, 1 +/* 0A754C 800A694C 01E02025 */ move $a0, $t7 +/* 0A7550 800A6950 460A103C */ c.lt.s $f2, $f10 +/* 0A7554 800A6954 01E01825 */ move $v1, $t7 +/* 0A7558 800A6958 45000003 */ bc1f .L800A6968 +/* 0A755C 800A695C 24AA00A0 */ addiu $t2, $a1, 0xa0 +/* 0A7560 800A6960 1000000F */ b .L800A69A0 +/* 0A7564 800A6964 00003025 */ move $a2, $zero +.L800A6968: +/* 0A7568 800A6968 448A2000 */ mtc1 $t2, $f4 +/* 0A756C 800A696C 00000000 */ nop +/* 0A7570 800A6970 468021A0 */ cvt.s.w $f6, $f4 +/* 0A7574 800A6974 46023201 */ sub.s $f8, $f6, $f2 +/* 0A7578 800A6978 444BF800 */ cfc1 $t3, $31 +/* 0A757C 800A697C 00000000 */ nop +/* 0A7580 800A6980 35610003 */ ori $at, $t3, 3 +/* 0A7584 800A6984 38210002 */ xori $at, $at, 2 +/* 0A7588 800A6988 44C1F800 */ ctc1 $at, $31 +/* 0A758C 800A698C 00000000 */ nop +/* 0A7590 800A6990 460042A4 */ cvt.w.s $f10, $f8 +/* 0A7594 800A6994 44CBF800 */ ctc1 $t3, $31 +/* 0A7598 800A6998 44035000 */ mfc1 $v1, $f10 +/* 0A759C 800A699C 00000000 */ nop +.L800A69A0: +/* 0A75A0 800A69A0 44832000 */ mtc1 $v1, $f4 +/* 0A75A4 800A69A4 3C0C8012 */ lui $t4, %hi(D_80126D37) # $t4, 0x8012 +/* 0A75A8 800A69A8 46802020 */ cvt.s.w $f0, $f4 +/* 0A75AC 800A69AC 24080001 */ li $t0, 1 +/* 0A75B0 800A69B0 46001180 */ add.s $f6, $f2, $f0 +/* 0A75B4 800A69B4 E44605EC */ swc1 $f6, 0x5ec($v0) +/* 0A75B8 800A69B8 8D220000 */ lw $v0, ($t1) +/* 0A75BC 800A69BC 00000000 */ nop +/* 0A75C0 800A69C0 C448060C */ lwc1 $f8, 0x60c($v0) +/* 0A75C4 800A69C4 00000000 */ nop +/* 0A75C8 800A69C8 46004280 */ add.s $f10, $f8, $f0 +/* 0A75CC 800A69CC E44A060C */ swc1 $f10, 0x60c($v0) +/* 0A75D0 800A69D0 918C6D37 */ lbu $t4, %lo(D_80126D37)($t4) +/* 0A75D4 800A69D4 00000000 */ nop +/* 0A75D8 800A69D8 110C0045 */ beq $t0, $t4, .L800A6AF0 +/* 0A75DC 800A69DC 00000000 */ nop +/* 0A75E0 800A69E0 8D220000 */ lw $v0, ($t1) +/* 0A75E4 800A69E4 00801825 */ move $v1, $a0 +/* 0A75E8 800A69E8 8045017D */ lb $a1, 0x17d($v0) +/* 0A75EC 800A69EC C440016C */ lwc1 $f0, 0x16c($v0) +/* 0A75F0 800A69F0 00A46821 */ addu $t5, $a1, $a0 +/* 0A75F4 800A69F4 25AE00A0 */ addiu $t6, $t5, 0xa0 +/* 0A75F8 800A69F8 448E2000 */ mtc1 $t6, $f4 +/* 0A75FC 800A69FC 24AF00A0 */ addiu $t7, $a1, 0xa0 +/* 0A7600 800A6A00 468021A0 */ cvt.s.w $f6, $f4 +/* 0A7604 800A6A04 4600303C */ c.lt.s $f6, $f0 +/* 0A7608 800A6A08 00000000 */ nop +/* 0A760C 800A6A0C 45000003 */ bc1f .L800A6A1C +/* 0A7610 800A6A10 00000000 */ nop +/* 0A7614 800A6A14 1000000F */ b .L800A6A54 +/* 0A7618 800A6A18 00003025 */ move $a2, $zero +.L800A6A1C: +/* 0A761C 800A6A1C 448F4000 */ mtc1 $t7, $f8 +/* 0A7620 800A6A20 00000000 */ nop +/* 0A7624 800A6A24 468042A0 */ cvt.s.w $f10, $f8 +/* 0A7628 800A6A28 460A0101 */ sub.s $f4, $f0, $f10 +/* 0A762C 800A6A2C 4458F800 */ cfc1 $t8, $31 +/* 0A7630 800A6A30 00000000 */ nop +/* 0A7634 800A6A34 37010003 */ ori $at, $t8, 3 +/* 0A7638 800A6A38 38210002 */ xori $at, $at, 2 +/* 0A763C 800A6A3C 44C1F800 */ ctc1 $at, $31 +/* 0A7640 800A6A40 00000000 */ nop +/* 0A7644 800A6A44 460021A4 */ cvt.w.s $f6, $f4 +/* 0A7648 800A6A48 44D8F800 */ ctc1 $t8, $31 +/* 0A764C 800A6A4C 44033000 */ mfc1 $v1, $f6 +/* 0A7650 800A6A50 00000000 */ nop +.L800A6A54: +/* 0A7654 800A6A54 44834000 */ mtc1 $v1, $f8 +/* 0A7658 800A6A58 00801825 */ move $v1, $a0 +/* 0A765C 800A6A5C 468042A0 */ cvt.s.w $f10, $f8 +/* 0A7660 800A6A60 460A0101 */ sub.s $f4, $f0, $f10 +/* 0A7664 800A6A64 E444016C */ swc1 $f4, 0x16c($v0) +/* 0A7668 800A6A68 8D220000 */ lw $v0, ($t1) +/* 0A766C 800A6A6C 00000000 */ nop +/* 0A7670 800A6A70 804502FD */ lb $a1, 0x2fd($v0) +/* 0A7674 800A6A74 C44202EC */ lwc1 $f2, 0x2ec($v0) +/* 0A7678 800A6A78 00A4C823 */ subu $t9, $a1, $a0 +/* 0A767C 800A6A7C 272A00A0 */ addiu $t2, $t9, 0xa0 +/* 0A7680 800A6A80 448A3000 */ mtc1 $t2, $f6 +/* 0A7684 800A6A84 24AB00A0 */ addiu $t3, $a1, 0xa0 +/* 0A7688 800A6A88 46803220 */ cvt.s.w $f8, $f6 +/* 0A768C 800A6A8C 4608103C */ c.lt.s $f2, $f8 +/* 0A7690 800A6A90 00000000 */ nop +/* 0A7694 800A6A94 45000003 */ bc1f .L800A6AA4 +/* 0A7698 800A6A98 00000000 */ nop +/* 0A769C 800A6A9C 1000000F */ b .L800A6ADC +/* 0A76A0 800A6AA0 00003025 */ move $a2, $zero +.L800A6AA4: +/* 0A76A4 800A6AA4 448B5000 */ mtc1 $t3, $f10 +/* 0A76A8 800A6AA8 00000000 */ nop +/* 0A76AC 800A6AAC 46805120 */ cvt.s.w $f4, $f10 +/* 0A76B0 800A6AB0 46022181 */ sub.s $f6, $f4, $f2 +/* 0A76B4 800A6AB4 444CF800 */ cfc1 $t4, $31 +/* 0A76B8 800A6AB8 00000000 */ nop +/* 0A76BC 800A6ABC 35810003 */ ori $at, $t4, 3 +/* 0A76C0 800A6AC0 38210002 */ xori $at, $at, 2 +/* 0A76C4 800A6AC4 44C1F800 */ ctc1 $at, $31 +/* 0A76C8 800A6AC8 00000000 */ nop +/* 0A76CC 800A6ACC 46003224 */ cvt.w.s $f8, $f6 +/* 0A76D0 800A6AD0 44CCF800 */ ctc1 $t4, $31 +/* 0A76D4 800A6AD4 44034000 */ mfc1 $v1, $f8 +/* 0A76D8 800A6AD8 00000000 */ nop +.L800A6ADC: +/* 0A76DC 800A6ADC 44835000 */ mtc1 $v1, $f10 +/* 0A76E0 800A6AE0 00000000 */ nop +/* 0A76E4 800A6AE4 46805120 */ cvt.s.w $f4, $f10 +/* 0A76E8 800A6AE8 46041180 */ add.s $f6, $f2, $f4 +/* 0A76EC 800A6AEC E44602EC */ swc1 $f6, 0x2ec($v0) +.L800A6AF0: +/* 0A76F0 800A6AF0 10C00032 */ beqz $a2, .L800A6BBC +/* 0A76F4 800A6AF4 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 +/* 0A76F8 800A6AF8 8D2D0000 */ lw $t5, ($t1) +/* 0A76FC 800A6AFC 24060002 */ li $a2, 2 +/* 0A7700 800A6B00 A1A605FA */ sb $a2, 0x5fa($t5) +/* 0A7704 800A6B04 8D2F0000 */ lw $t7, ($t1) +/* 0A7708 800A6B08 240EFF88 */ li $t6, -120 +/* 0A770C 800A6B0C A1EE05FB */ sb $t6, 0x5fb($t7) +/* 0A7710 800A6B10 8D380000 */ lw $t8, ($t1) +/* 0A7714 800A6B14 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 +/* 0A7718 800A6B18 A30005FC */ sb $zero, 0x5fc($t8) +/* 0A771C 800A6B1C 8CB90000 */ lw $t9, ($a1) +/* 0A7720 800A6B20 8FAA005C */ lw $t2, 0x5c($sp) +/* 0A7724 800A6B24 17200025 */ bnez $t9, .L800A6BBC +/* 0A7728 800A6B28 24010040 */ li $at, 64 +/* 0A772C 800A6B2C 1541001A */ bne $t2, $at, .L800A6B98 +/* 0A7730 800A6B30 00000000 */ nop +/* 0A7734 800A6B34 84E301AC */ lh $v1, 0x1ac($a3) +/* 0A7738 800A6B38 24040146 */ li $a0, 326 +/* 0A773C 800A6B3C 10680007 */ beq $v1, $t0, .L800A6B5C +/* 0A7740 800A6B40 00000000 */ nop +/* 0A7744 800A6B44 10660005 */ beq $v1, $a2, .L800A6B5C +/* 0A7748 800A6B48 24010003 */ li $at, 3 +/* 0A774C 800A6B4C 10610008 */ beq $v1, $at, .L800A6B70 +/* 0A7750 800A6B50 2404014C */ li $a0, 332 +/* 0A7754 800A6B54 1000000B */ b .L800A6B84 +/* 0A7758 800A6B58 2404014D */ li $a0, 333 +.L800A6B5C: +/* 0A775C 800A6B5C 0C000741 */ jal func_80001D04 +/* 0A7760 800A6B60 AFA70070 */ sw $a3, 0x70($sp) +/* 0A7764 800A6B64 8FA70070 */ lw $a3, 0x70($sp) +/* 0A7768 800A6B68 10000014 */ b .L800A6BBC +/* 0A776C 800A6B6C 00000000 */ nop +.L800A6B70: +/* 0A7770 800A6B70 0C000741 */ jal func_80001D04 +/* 0A7774 800A6B74 AFA70070 */ sw $a3, 0x70($sp) +/* 0A7778 800A6B78 8FA70070 */ lw $a3, 0x70($sp) +/* 0A777C 800A6B7C 1000000F */ b .L800A6BBC +/* 0A7780 800A6B80 00000000 */ nop +.L800A6B84: +/* 0A7784 800A6B84 0C000741 */ jal func_80001D04 +/* 0A7788 800A6B88 AFA70070 */ sw $a3, 0x70($sp) +/* 0A778C 800A6B8C 8FA70070 */ lw $a3, 0x70($sp) +/* 0A7790 800A6B90 1000000A */ b .L800A6BBC +/* 0A7794 800A6B94 00000000 */ nop +.L800A6B98: +/* 0A7798 800A6B98 0C006D90 */ jal func_8001B640 +/* 0A779C 800A6B9C AFA70070 */ sw $a3, 0x70($sp) +/* 0A77A0 800A6BA0 8FA70070 */ lw $a3, 0x70($sp) +/* 0A77A4 800A6BA4 14400005 */ bnez $v0, .L800A6BBC +/* 0A77A8 800A6BA8 00E02025 */ move $a0, $a3 +/* 0A77AC 800A6BAC 0C029B6D */ jal func_800A6DB4 +/* 0A77B0 800A6BB0 AFA70070 */ sw $a3, 0x70($sp) +/* 0A77B4 800A6BB4 8FA70070 */ lw $a3, 0x70($sp) +/* 0A77B8 800A6BB8 00000000 */ nop +.L800A6BBC: +/* 0A77BC 800A6BBC 0C0297C6 */ jal func_800A5F18 +/* 0A77C0 800A6BC0 00E02025 */ move $a0, $a3 +/* 0A77C4 800A6BC4 10000078 */ b .L800A6DA8 +/* 0A77C8 800A6BC8 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A77CC 800A6BCC 804B05FB */ lb $t3, 0x5fb($v0) +/* 0A77D0 800A6BD0 8FAC0074 */ lw $t4, 0x74($sp) +/* 0A77D4 800A6BD4 240FFF88 */ li $t7, -120 +/* 0A77D8 800A6BD8 016C6821 */ addu $t5, $t3, $t4 +/* 0A77DC 800A6BDC A04D05FB */ sb $t5, 0x5fb($v0) +/* 0A77E0 800A6BE0 8D220000 */ lw $v0, ($t1) +/* 0A77E4 800A6BE4 3C0B8012 */ lui $t3, %hi(D_80126D37) # $t3, 0x8012 +/* 0A77E8 800A6BE8 804E05FB */ lb $t6, 0x5fb($v0) +/* 0A77EC 800A6BEC 00000000 */ nop +/* 0A77F0 800A6BF0 29C10078 */ slti $at, $t6, 0x78 +/* 0A77F4 800A6BF4 1420000A */ bnez $at, .L800A6C20 +/* 0A77F8 800A6BF8 00000000 */ nop +/* 0A77FC 800A6BFC A04F05FB */ sb $t7, 0x5fb($v0) +/* 0A7800 800A6C00 8D220000 */ lw $v0, ($t1) +/* 0A7804 800A6C04 00000000 */ nop +/* 0A7808 800A6C08 805805FC */ lb $t8, 0x5fc($v0) +/* 0A780C 800A6C0C 00000000 */ nop +/* 0A7810 800A6C10 27190001 */ addiu $t9, $t8, 1 +/* 0A7814 800A6C14 A05905FC */ sb $t9, 0x5fc($v0) +/* 0A7818 800A6C18 8D220000 */ lw $v0, ($t1) +/* 0A781C 800A6C1C 00000000 */ nop +.L800A6C20: +/* 0A7820 800A6C20 804A05FC */ lb $t2, 0x5fc($v0) +/* 0A7824 800A6C24 24060002 */ li $a2, 2 +/* 0A7828 800A6C28 14CA001A */ bne $a2, $t2, .L800A6C94 +/* 0A782C 800A6C2C 00000000 */ nop +/* 0A7830 800A6C30 916B6D37 */ lbu $t3, %lo(D_80126D37)($t3) +/* 0A7834 800A6C34 24080001 */ li $t0, 1 +/* 0A7838 800A6C38 110B000B */ beq $t0, $t3, .L800A6C68 +/* 0A783C 800A6C3C 240C0003 */ li $t4, 3 +/* 0A7840 800A6C40 0C027B20 */ jal func_8009EC80 +/* 0A7844 800A6C44 AFA70070 */ sw $a3, 0x70($sp) +/* 0A7848 800A6C48 8FA70070 */ lw $a3, 0x70($sp) +/* 0A784C 800A6C4C 3C098012 */ lui $t1, %hi(D_80126CDC) # $t1, 0x8012 +/* 0A7850 800A6C50 1040000D */ beqz $v0, .L800A6C88 +/* 0A7854 800A6C54 25296CDC */ addiu $t1, %lo(D_80126CDC) # addiu $t1, $t1, 0x6cdc +/* 0A7858 800A6C58 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 +/* 0A785C 800A6C5C 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) +/* 0A7860 800A6C60 00000000 */ nop +/* 0A7864 800A6C64 240C0003 */ li $t4, 3 +.L800A6C68: +/* 0A7868 800A6C68 A04C05FA */ sb $t4, 0x5fa($v0) +/* 0A786C 800A6C6C AFA70070 */ sw $a3, 0x70($sp) +/* 0A7870 800A6C70 24040016 */ li $a0, 22 +/* 0A7874 800A6C74 0C000741 */ jal func_80001D04 +/* 0A7878 800A6C78 00002825 */ move $a1, $zero +/* 0A787C 800A6C7C 8FA70070 */ lw $a3, 0x70($sp) +/* 0A7880 800A6C80 10000004 */ b .L800A6C94 +/* 0A7884 800A6C84 00000000 */ nop +.L800A6C88: +/* 0A7888 800A6C88 8D2E0000 */ lw $t6, ($t1) +/* 0A788C 800A6C8C 240D0004 */ li $t5, 4 +/* 0A7890 800A6C90 A1CD05FA */ sb $t5, 0x5fa($t6) +.L800A6C94: +/* 0A7894 800A6C94 0C0297C6 */ jal func_800A5F18 +/* 0A7898 800A6C98 00E02025 */ move $a0, $a3 +/* 0A789C 800A6C9C 10000042 */ b .L800A6DA8 +/* 0A78A0 800A6CA0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A78A4 800A6CA4 8FAF005C */ lw $t7, 0x5c($sp) +/* 0A78A8 800A6CA8 24010040 */ li $at, 64 +/* 0A78AC 800A6CAC 15E10003 */ bne $t7, $at, .L800A6CBC +/* 0A78B0 800A6CB0 24180004 */ li $t8, 4 +/* 0A78B4 800A6CB4 10000028 */ b .L800A6D58 +/* 0A78B8 800A6CB8 A05805FA */ sb $t8, 0x5fa($v0) +.L800A6CBC: +/* 0A78BC 800A6CBC 8FB90074 */ lw $t9, 0x74($sp) +/* 0A78C0 800A6CC0 C44A05EC */ lwc1 $f10, 0x5ec($v0) +/* 0A78C4 800A6CC4 00195080 */ sll $t2, $t9, 2 +/* 0A78C8 800A6CC8 01595023 */ subu $t2, $t2, $t9 +/* 0A78CC 800A6CCC 000A5080 */ sll $t2, $t2, 2 +/* 0A78D0 800A6CD0 01595021 */ addu $t2, $t2, $t9 +/* 0A78D4 800A6CD4 448A4000 */ mtc1 $t2, $f8 +/* 0A78D8 800A6CD8 3C01C348 */ li $at, 0xC3480000 # -200.000000 +/* 0A78DC 800A6CDC 46804020 */ cvt.s.w $f0, $f8 +/* 0A78E0 800A6CE0 240B0004 */ li $t3, 4 +/* 0A78E4 800A6CE4 46005101 */ sub.s $f4, $f10, $f0 +/* 0A78E8 800A6CE8 E44405EC */ swc1 $f4, 0x5ec($v0) +/* 0A78EC 800A6CEC 8D220000 */ lw $v0, ($t1) +/* 0A78F0 800A6CF0 44812000 */ mtc1 $at, $f4 +/* 0A78F4 800A6CF4 C446060C */ lwc1 $f6, 0x60c($v0) +/* 0A78F8 800A6CF8 00000000 */ nop +/* 0A78FC 800A6CFC 46003201 */ sub.s $f8, $f6, $f0 +/* 0A7900 800A6D00 E448060C */ swc1 $f8, 0x60c($v0) +/* 0A7904 800A6D04 8D220000 */ lw $v0, ($t1) +/* 0A7908 800A6D08 00000000 */ nop +/* 0A790C 800A6D0C C44A05EC */ lwc1 $f10, 0x5ec($v0) +/* 0A7910 800A6D10 00000000 */ nop +/* 0A7914 800A6D14 4604503C */ c.lt.s $f10, $f4 +/* 0A7918 800A6D18 00000000 */ nop +/* 0A791C 800A6D1C 45000004 */ bc1f .L800A6D30 +/* 0A7920 800A6D20 00000000 */ nop +/* 0A7924 800A6D24 A04B05FA */ sb $t3, 0x5fa($v0) +/* 0A7928 800A6D28 8D220000 */ lw $v0, ($t1) +/* 0A792C 800A6D2C 00000000 */ nop +.L800A6D30: +/* 0A7930 800A6D30 C446016C */ lwc1 $f6, 0x16c($v0) +/* 0A7934 800A6D34 00000000 */ nop +/* 0A7938 800A6D38 46003200 */ add.s $f8, $f6, $f0 +/* 0A793C 800A6D3C E448016C */ swc1 $f8, 0x16c($v0) +/* 0A7940 800A6D40 8D220000 */ lw $v0, ($t1) +/* 0A7944 800A6D44 00000000 */ nop +/* 0A7948 800A6D48 C44A02EC */ lwc1 $f10, 0x2ec($v0) +/* 0A794C 800A6D4C 00000000 */ nop +/* 0A7950 800A6D50 46005100 */ add.s $f4, $f10, $f0 +/* 0A7954 800A6D54 E44402EC */ swc1 $f4, 0x2ec($v0) +.L800A6D58: +/* 0A7958 800A6D58 0C0297C6 */ jal func_800A5F18 +/* 0A795C 800A6D5C 00E02025 */ move $a0, $a3 +/* 0A7960 800A6D60 10000011 */ b .L800A6DA8 +/* 0A7964 800A6D64 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A7968 800A6D68 84EC0000 */ lh $t4, ($a3) +/* 0A796C 800A6D6C 806D000C */ lb $t5, 0xc($v1) +/* 0A7970 800A6D70 240F0005 */ li $t7, 5 +/* 0A7974 800A6D74 158D0003 */ bne $t4, $t5, .L800A6D84 +/* 0A7978 800A6D78 00E02025 */ move $a0, $a3 +/* 0A797C 800A6D7C 240EFFFF */ li $t6, -1 +/* 0A7980 800A6D80 A06E0003 */ sb $t6, 3($v1) +.L800A6D84: +/* 0A7984 800A6D84 A04F05FA */ sb $t7, 0x5fa($v0) +/* 0A7988 800A6D88 8D380000 */ lw $t8, ($t1) +/* 0A798C 800A6D8C 0C0297C6 */ jal func_800A5F18 +/* 0A7990 800A6D90 A30005FB */ sb $zero, 0x5fb($t8) +/* 0A7994 800A6D94 10000004 */ b .L800A6DA8 +/* 0A7998 800A6D98 8FBF0014 */ lw $ra, 0x14($sp) +.L800A6D9C: +/* 0A799C 800A6D9C 0C0297C6 */ jal func_800A5F18 +/* 0A79A0 800A6DA0 00E02025 */ move $a0, $a3 +.L800A6DA4: +/* 0A79A4 800A6DA4 8FBF0014 */ lw $ra, 0x14($sp) +.L800A6DA8: +/* 0A79A8 800A6DA8 27BD0070 */ addiu $sp, $sp, 0x70 +/* 0A79AC 800A6DAC 03E00008 */ jr $ra +/* 0A79B0 800A6DB0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A6DB4.s b/asm/non_matchings/unknown_09F8F0/func_800A6DB4.s new file mode 100644 index 00000000..427a6cf9 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A6DB4.s @@ -0,0 +1,35 @@ +glabel func_800A6DB4 +/* 0A79B4 800A6DB4 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0A79B8 800A6DB8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0A79BC 800A6DBC 0C01BAA4 */ jal func_8006EA90 +/* 0A79C0 800A6DC0 AFA40018 */ sw $a0, 0x18($sp) +/* 0A79C4 800A6DC4 8FA30018 */ lw $v1, 0x18($sp) +/* 0A79C8 800A6DC8 00000000 */ nop +/* 0A79CC 800A6DCC 10600015 */ beqz $v1, .L800A6E24 +/* 0A79D0 800A6DD0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A79D4 800A6DD4 846E0000 */ lh $t6, ($v1) +/* 0A79D8 800A6DD8 24040102 */ li $a0, 258 +/* 0A79DC 800A6DDC 000E7880 */ sll $t7, $t6, 2 +/* 0A79E0 800A6DE0 01EE7823 */ subu $t7, $t7, $t6 +/* 0A79E4 800A6DE4 000F78C0 */ sll $t7, $t7, 3 +/* 0A79E8 800A6DE8 004FC021 */ addu $t8, $v0, $t7 +/* 0A79EC 800A6DEC 83190058 */ lb $t9, 0x58($t8) +/* 0A79F0 800A6DF0 3C058012 */ lui $a1, 0x8012 +/* 0A79F4 800A6DF4 33280080 */ andi $t0, $t9, 0x80 +/* 0A79F8 800A6DF8 11000007 */ beqz $t0, .L800A6E18 +/* 0A79FC 800A6DFC 00000000 */ nop +/* 0A7A00 800A6E00 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 +/* 0A7A04 800A6E04 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 +/* 0A7A08 800A6E08 0C000741 */ jal func_80001D04 +/* 0A7A0C 800A6E0C 24040145 */ li $a0, 325 +/* 0A7A10 800A6E10 10000004 */ b .L800A6E24 +/* 0A7A14 800A6E14 8FBF0014 */ lw $ra, 0x14($sp) +.L800A6E18: +/* 0A7A18 800A6E18 0C000741 */ jal func_80001D04 +/* 0A7A1C 800A6E1C 24A56D40 */ addiu $a1, $a1, 0x6d40 +/* 0A7A20 800A6E20 8FBF0014 */ lw $ra, 0x14($sp) +.L800A6E24: +/* 0A7A24 800A6E24 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0A7A28 800A6E28 03E00008 */ jr $ra +/* 0A7A2C 800A6E2C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A6E30.s b/asm/non_matchings/unknown_09F8F0/func_800A6E30.s new file mode 100644 index 00000000..94c535e2 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A6E30.s @@ -0,0 +1,233 @@ +glabel func_800A6E30 +/* 0A7A30 800A6E30 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A7A34 800A6E34 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A7A38 800A6E38 8D020000 */ lw $v0, ($t0) +/* 0A7A3C 800A6E3C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0A7A40 800A6E40 AFBF0014 */ sw $ra, 0x14($sp) +/* 0A7A44 800A6E44 904E01DA */ lbu $t6, 0x1da($v0) +/* 0A7A48 800A6E48 00803025 */ move $a2, $a0 +/* 0A7A4C 800A6E4C 2DC10005 */ sltiu $at, $t6, 5 +/* 0A7A50 800A6E50 102000CA */ beqz $at, .L800A717C +/* 0A7A54 800A6E54 000E7080 */ sll $t6, $t6, 2 +/* 0A7A58 800A6E58 3C01800F */ lui $at, 0x800f +/* 0A7A5C 800A6E5C 002E0821 */ addu $at, $at, $t6 +/* 0A7A60 800A6E60 8C2E8768 */ lw $t6, -0x7898($at) +/* 0A7A64 800A6E64 00000000 */ nop +/* 0A7A68 800A6E68 01C00008 */ jr $t6 +/* 0A7A6C 800A6E6C 00000000 */ nop +/* 0A7A70 800A6E70 3C03800E */ lui $v1, %hi(D_800E2770) # $v1, 0x800e +/* 0A7A74 800A6E74 24632770 */ addiu $v1, %lo(D_800E2770) # addiu $v1, $v1, 0x2770 +/* 0A7A78 800A6E78 240F007F */ li $t7, 127 +/* 0A7A7C 800A6E7C A06F0002 */ sb $t7, 2($v1) +/* 0A7A80 800A6E80 A0600003 */ sb $zero, 3($v1) +/* 0A7A84 800A6E84 84D80000 */ lh $t8, ($a2) +/* 0A7A88 800A6E88 AFA60018 */ sw $a2, 0x18($sp) +/* 0A7A8C 800A6E8C 24040016 */ li $a0, 22 +/* 0A7A90 800A6E90 00002825 */ move $a1, $zero +/* 0A7A94 800A6E94 0C000741 */ jal func_80001D04 +/* 0A7A98 800A6E98 A078000C */ sb $t8, 0xc($v1) +/* 0A7A9C 800A6E9C 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 +/* 0A7AA0 800A6EA0 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) +/* 0A7AA4 800A6EA4 8FA60018 */ lw $a2, 0x18($sp) +/* 0A7AA8 800A6EA8 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A7AAC 800A6EAC 10600003 */ beqz $v1, .L800A6EBC +/* 0A7AB0 800A6EB0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A7AB4 800A6EB4 24010001 */ li $at, 1 +/* 0A7AB8 800A6EB8 14610008 */ bne $v1, $at, .L800A6EDC +.L800A6EBC: +/* 0A7ABC 800A6EBC 3C01C348 */ li $at, 0xC3480000 # -200.000000 +/* 0A7AC0 800A6EC0 44812000 */ mtc1 $at, $f4 +/* 0A7AC4 800A6EC4 8D190000 */ lw $t9, ($t0) +/* 0A7AC8 800A6EC8 00000000 */ nop +/* 0A7ACC 800A6ECC E72401CC */ swc1 $f4, 0x1cc($t9) +/* 0A7AD0 800A6ED0 8D090000 */ lw $t1, ($t0) +/* 0A7AD4 800A6ED4 10000015 */ b .L800A6F2C +/* 0A7AD8 800A6ED8 A12001DD */ sb $zero, 0x1dd($t1) +.L800A6EDC: +/* 0A7ADC 800A6EDC 84C20000 */ lh $v0, ($a2) +/* 0A7AE0 800A6EE0 24010002 */ li $at, 2 +/* 0A7AE4 800A6EE4 10400003 */ beqz $v0, .L800A6EF4 +/* 0A7AE8 800A6EE8 240AFFB0 */ li $t2, -80 +/* 0A7AEC 800A6EEC 14410008 */ bne $v0, $at, .L800A6F10 +/* 0A7AF0 800A6EF0 240D0050 */ li $t5, 80 +.L800A6EF4: +/* 0A7AF4 800A6EF4 8D0B0000 */ lw $t3, ($t0) +/* 0A7AF8 800A6EF8 3C01C348 */ li $at, 0xC3480000 # -200.000000 +/* 0A7AFC 800A6EFC A16A01DD */ sb $t2, 0x1dd($t3) +/* 0A7B00 800A6F00 8D0C0000 */ lw $t4, ($t0) +/* 0A7B04 800A6F04 44813000 */ mtc1 $at, $f6 +/* 0A7B08 800A6F08 10000008 */ b .L800A6F2C +/* 0A7B0C 800A6F0C E58601CC */ swc1 $f6, 0x1cc($t4) +.L800A6F10: +/* 0A7B10 800A6F10 8D0E0000 */ lw $t6, ($t0) +/* 0A7B14 800A6F14 3C01C220 */ li $at, 0xC2200000 # -40.000000 +/* 0A7B18 800A6F18 A1CD01DD */ sb $t5, 0x1dd($t6) +/* 0A7B1C 800A6F1C 8D0F0000 */ lw $t7, ($t0) +/* 0A7B20 800A6F20 44814000 */ mtc1 $at, $f8 +/* 0A7B24 800A6F24 00000000 */ nop +/* 0A7B28 800A6F28 E5E801CC */ swc1 $f8, 0x1cc($t7) +.L800A6F2C: +/* 0A7B2C 800A6F2C 8D190000 */ lw $t9, ($t0) +/* 0A7B30 800A6F30 24180001 */ li $t8, 1 +/* 0A7B34 800A6F34 10000091 */ b .L800A717C +/* 0A7B38 800A6F38 A33801DA */ sb $t8, 0x1da($t9) +/* 0A7B3C 800A6F3C 00051880 */ sll $v1, $a1, 2 +/* 0A7B40 800A6F40 00651823 */ subu $v1, $v1, $a1 +/* 0A7B44 800A6F44 804401DD */ lb $a0, 0x1dd($v0) +/* 0A7B48 800A6F48 00031880 */ sll $v1, $v1, 2 +/* 0A7B4C 800A6F4C 00651821 */ addu $v1, $v1, $a1 +/* 0A7B50 800A6F50 00834823 */ subu $t1, $a0, $v1 +/* 0A7B54 800A6F54 44895000 */ mtc1 $t1, $f10 +/* 0A7B58 800A6F58 C44001CC */ lwc1 $f0, 0x1cc($v0) +/* 0A7B5C 800A6F5C 46805420 */ cvt.s.w $f16, $f10 +/* 0A7B60 800A6F60 4610003C */ c.lt.s $f0, $f16 +/* 0A7B64 800A6F64 00000000 */ nop +/* 0A7B68 800A6F68 45000007 */ bc1f .L800A6F88 +/* 0A7B6C 800A6F6C 00000000 */ nop +/* 0A7B70 800A6F70 44839000 */ mtc1 $v1, $f18 +/* 0A7B74 800A6F74 00000000 */ nop +/* 0A7B78 800A6F78 46809120 */ cvt.s.w $f4, $f18 +/* 0A7B7C 800A6F7C 46040180 */ add.s $f6, $f0, $f4 +/* 0A7B80 800A6F80 10000019 */ b .L800A6FE8 +/* 0A7B84 800A6F84 E44601CC */ swc1 $f6, 0x1cc($v0) +.L800A6F88: +/* 0A7B88 800A6F88 44844000 */ mtc1 $a0, $f8 +/* 0A7B8C 800A6F8C 240A0002 */ li $t2, 2 +/* 0A7B90 800A6F90 468042A0 */ cvt.s.w $f10, $f8 +/* 0A7B94 800A6F94 240CFF88 */ li $t4, -120 +/* 0A7B98 800A6F98 3C0E8012 */ lui $t6, %hi(D_80126D40) # $t6, 0x8012 +/* 0A7B9C 800A6F9C E44A01CC */ swc1 $f10, 0x1cc($v0) +/* 0A7BA0 800A6FA0 8D0B0000 */ lw $t3, ($t0) +/* 0A7BA4 800A6FA4 3C0F8012 */ lui $t7, %hi(D_80126D71) # $t7, 0x8012 +/* 0A7BA8 800A6FA8 A16A01DA */ sb $t2, 0x1da($t3) +/* 0A7BAC 800A6FAC 8D0D0000 */ lw $t5, ($t0) +/* 0A7BB0 800A6FB0 00000000 */ nop +/* 0A7BB4 800A6FB4 A1AC01DB */ sb $t4, 0x1db($t5) +/* 0A7BB8 800A6FB8 8DCE6D40 */ lw $t6, %lo(D_80126D40)($t6) +/* 0A7BBC 800A6FBC 00000000 */ nop +/* 0A7BC0 800A6FC0 15C00009 */ bnez $t6, .L800A6FE8 +/* 0A7BC4 800A6FC4 00000000 */ nop +/* 0A7BC8 800A6FC8 91EF6D71 */ lbu $t7, %lo(D_80126D71)($t7) +/* 0A7BCC 800A6FCC 00000000 */ nop +/* 0A7BD0 800A6FD0 15E00005 */ bnez $t7, .L800A6FE8 +/* 0A7BD4 800A6FD4 00000000 */ nop +/* 0A7BD8 800A6FD8 0C029B6D */ jal func_800A6DB4 +/* 0A7BDC 800A6FDC 00C02025 */ move $a0, $a2 +/* 0A7BE0 800A6FE0 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A7BE4 800A6FE4 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +.L800A6FE8: +/* 0A7BE8 800A6FE8 8D070000 */ lw $a3, ($t0) +/* 0A7BEC 800A6FEC 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A7BF0 800A6FF0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A7BF4 800A6FF4 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A7BF8 800A6FF8 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A7BFC 800A6FFC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A7C00 800A7000 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A7C04 800A7004 0C02A980 */ jal func_800AA600 +/* 0A7C08 800A7008 24E701C0 */ addiu $a3, $a3, 0x1c0 +/* 0A7C0C 800A700C 1000005C */ b .L800A7180 +/* 0A7C10 800A7010 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A7C14 800A7014 805801DB */ lb $t8, 0x1db($v0) +/* 0A7C18 800A7018 240A0003 */ li $t2, 3 +/* 0A7C1C 800A701C 0305C821 */ addu $t9, $t8, $a1 +/* 0A7C20 800A7020 A05901DB */ sb $t9, 0x1db($v0) +/* 0A7C24 800A7024 8D020000 */ lw $v0, ($t0) +/* 0A7C28 800A7028 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 +/* 0A7C2C 800A702C 804901DB */ lb $t1, 0x1db($v0) +/* 0A7C30 800A7030 24040016 */ li $a0, 22 +/* 0A7C34 800A7034 29210078 */ slti $at, $t1, 0x78 +/* 0A7C38 800A7038 1420001C */ bnez $at, .L800A70AC +/* 0A7C3C 800A703C 00000000 */ nop +/* 0A7C40 800A7040 A04A01DA */ sb $t2, 0x1da($v0) +/* 0A7C44 800A7044 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) +/* 0A7C48 800A7048 24010001 */ li $at, 1 +/* 0A7C4C 800A704C 10600003 */ beqz $v1, .L800A705C +/* 0A7C50 800A7050 240B0038 */ li $t3, 56 +/* 0A7C54 800A7054 14610004 */ bne $v1, $at, .L800A7068 +/* 0A7C58 800A7058 00000000 */ nop +.L800A705C: +/* 0A7C5C 800A705C 8D0C0000 */ lw $t4, ($t0) +/* 0A7C60 800A7060 1000000D */ b .L800A7098 +/* 0A7C64 800A7064 A18B01DD */ sb $t3, 0x1dd($t4) +.L800A7068: +/* 0A7C68 800A7068 84C20000 */ lh $v0, ($a2) +/* 0A7C6C 800A706C 24010002 */ li $at, 2 +/* 0A7C70 800A7070 10400003 */ beqz $v0, .L800A7080 +/* 0A7C74 800A7074 240D0038 */ li $t5, 56 +/* 0A7C78 800A7078 14410004 */ bne $v0, $at, .L800A708C +/* 0A7C7C 800A707C 00000000 */ nop +.L800A7080: +/* 0A7C80 800A7080 8D0E0000 */ lw $t6, ($t0) +/* 0A7C84 800A7084 10000004 */ b .L800A7098 +/* 0A7C88 800A7088 A1CD01DD */ sb $t5, 0x1dd($t6) +.L800A708C: +/* 0A7C8C 800A708C 8D180000 */ lw $t8, ($t0) +/* 0A7C90 800A7090 240FFFD8 */ li $t7, -40 +/* 0A7C94 800A7094 A30F01DD */ sb $t7, 0x1dd($t8) +.L800A7098: +/* 0A7C98 800A7098 0C000741 */ jal func_80001D04 +/* 0A7C9C 800A709C 00002825 */ move $a1, $zero +/* 0A7CA0 800A70A0 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 +/* 0A7CA4 800A70A4 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) +/* 0A7CA8 800A70A8 00000000 */ nop +.L800A70AC: +/* 0A7CAC 800A70AC 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A7CB0 800A70B0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A7CB4 800A70B4 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A7CB8 800A70B8 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A7CBC 800A70BC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A7CC0 800A70C0 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A7CC4 800A70C4 0C02A980 */ jal func_800AA600 +/* 0A7CC8 800A70C8 244701C0 */ addiu $a3, $v0, 0x1c0 +/* 0A7CCC 800A70CC 1000002C */ b .L800A7180 +/* 0A7CD0 800A70D0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A7CD4 800A70D4 0005C880 */ sll $t9, $a1, 2 +/* 0A7CD8 800A70D8 0325C823 */ subu $t9, $t9, $a1 +/* 0A7CDC 800A70DC 0019C880 */ sll $t9, $t9, 2 +/* 0A7CE0 800A70E0 0325C821 */ addu $t9, $t9, $a1 +/* 0A7CE4 800A70E4 44999000 */ mtc1 $t9, $f18 +/* 0A7CE8 800A70E8 C45001CC */ lwc1 $f16, 0x1cc($v0) +/* 0A7CEC 800A70EC 46809120 */ cvt.s.w $f4, $f18 +/* 0A7CF0 800A70F0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A7CF4 800A70F4 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A7CF8 800A70F8 46048181 */ sub.s $f6, $f16, $f4 +/* 0A7CFC 800A70FC 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A7D00 800A7100 E44601CC */ swc1 $f6, 0x1cc($v0) +/* 0A7D04 800A7104 8D020000 */ lw $v0, ($t0) +/* 0A7D08 800A7108 240A0004 */ li $t2, 4 +/* 0A7D0C 800A710C 804901DD */ lb $t1, 0x1dd($v0) +/* 0A7D10 800A7110 C44801CC */ lwc1 $f8, 0x1cc($v0) +/* 0A7D14 800A7114 44895000 */ mtc1 $t1, $f10 +/* 0A7D18 800A7118 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A7D1C 800A711C 468054A0 */ cvt.s.w $f18, $f10 +/* 0A7D20 800A7120 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A7D24 800A7124 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A7D28 800A7128 4612403C */ c.lt.s $f8, $f18 +/* 0A7D2C 800A712C 00000000 */ nop +/* 0A7D30 800A7130 45000005 */ bc1f .L800A7148 +/* 0A7D34 800A7134 00000000 */ nop +/* 0A7D38 800A7138 A04A01DA */ sb $t2, 0x1da($v0) +/* 0A7D3C 800A713C 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 +/* 0A7D40 800A7140 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) +/* 0A7D44 800A7144 00000000 */ nop +.L800A7148: +/* 0A7D48 800A7148 0C02A980 */ jal func_800AA600 +/* 0A7D4C 800A714C 244701C0 */ addiu $a3, $v0, 0x1c0 +/* 0A7D50 800A7150 1000000B */ b .L800A7180 +/* 0A7D54 800A7154 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A7D58 800A7158 3C03800E */ lui $v1, %hi(D_800E2770) # $v1, 0x800e +/* 0A7D5C 800A715C 24632770 */ addiu $v1, %lo(D_800E2770) # addiu $v1, $v1, 0x2770 +/* 0A7D60 800A7160 240BFFFF */ li $t3, -1 +/* 0A7D64 800A7164 A06B0003 */ sb $t3, 3($v1) +/* 0A7D68 800A7168 240C0005 */ li $t4, 5 +/* 0A7D6C 800A716C A04C01DA */ sb $t4, 0x1da($v0) +/* 0A7D70 800A7170 8D0D0000 */ lw $t5, ($t0) +/* 0A7D74 800A7174 00000000 */ nop +/* 0A7D78 800A7178 A1A001DB */ sb $zero, 0x1db($t5) +.L800A717C: +/* 0A7D7C 800A717C 8FBF0014 */ lw $ra, 0x14($sp) +.L800A7180: +/* 0A7D80 800A7180 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0A7D84 800A7184 03E00008 */ jr $ra +/* 0A7D88 800A7188 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A718C.s b/asm/non_matchings/unknown_09F8F0/func_800A718C.s new file mode 100644 index 00000000..e9c841b9 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A718C.s @@ -0,0 +1,209 @@ +glabel func_800A718C +/* 0A7D8C 800A718C 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0A7D90 800A7190 AFBF0014 */ sw $ra, 0x14($sp) +/* 0A7D94 800A7194 0C01BAA4 */ jal func_8006EA90 +/* 0A7D98 800A7198 AFA40030 */ sw $a0, 0x30($sp) +/* 0A7D9C 800A719C 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 +/* 0A7DA0 800A71A0 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) +/* 0A7DA4 800A71A4 00402025 */ move $a0, $v0 +/* 0A7DA8 800A71A8 15C00003 */ bnez $t6, .L800A71B8 +/* 0A7DAC 800A71AC 240F0286 */ li $t7, 646 +/* 0A7DB0 800A71B0 10000003 */ b .L800A71C0 +/* 0A7DB4 800A71B4 AFAF0020 */ sw $t7, 0x20($sp) +.L800A71B8: +/* 0A7DB8 800A71B8 24180348 */ li $t8, 840 +/* 0A7DBC 800A71BC AFB80020 */ sw $t8, 0x20($sp) +.L800A71C0: +/* 0A7DC0 800A71C0 8C590010 */ lw $t9, 0x10($v0) +/* 0A7DC4 800A71C4 00000000 */ nop +/* 0A7DC8 800A71C8 332A0004 */ andi $t2, $t9, 4 +/* 0A7DCC 800A71CC 11400004 */ beqz $t2, .L800A71E0 +/* 0A7DD0 800A71D0 3C0C8012 */ lui $t4, %hi(D_80126CDC) # $t4, 0x8012 +/* 0A7DD4 800A71D4 8D8C6CDC */ lw $t4, %lo(D_80126CDC)($t4) +/* 0A7DD8 800A71D8 240B0045 */ li $t3, 69 +/* 0A7DDC 800A71DC A58B0266 */ sh $t3, 0x266($t4) +.L800A71E0: +/* 0A7DE0 800A71E0 0C007910 */ jal func_8001E440 +/* 0A7DE4 800A71E4 AFA4001C */ sw $a0, 0x1c($sp) +/* 0A7DE8 800A71E8 8FA4001C */ lw $a0, 0x1c($sp) +/* 0A7DEC 800A71EC 2401000A */ li $at, 10 +/* 0A7DF0 800A71F0 1441000D */ bne $v0, $at, .L800A7228 +/* 0A7DF4 800A71F4 00000000 */ nop +/* 0A7DF8 800A71F8 0C006B95 */ jal func_8001AE54 +/* 0A7DFC 800A71FC AFA4001C */ sw $a0, 0x1c($sp) +/* 0A7E00 800A7200 8FAD0020 */ lw $t5, 0x20($sp) +/* 0A7E04 800A7204 8FA4001C */ lw $a0, 0x1c($sp) +/* 0A7E08 800A7208 004D082B */ sltu $at, $v0, $t5 +/* 0A7E0C 800A720C 10200006 */ beqz $at, .L800A7228 +/* 0A7E10 800A7210 00000000 */ nop +/* 0A7E14 800A7214 8C8E0000 */ lw $t6, ($a0) +/* 0A7E18 800A7218 00000000 */ nop +/* 0A7E1C 800A721C 85C30000 */ lh $v1, ($t6) +/* 0A7E20 800A7220 1000001D */ b .L800A7298 +/* 0A7E24 800A7224 2463FFFF */ addiu $v1, $v1, -1 +.L800A7228: +/* 0A7E28 800A7228 8C8F0000 */ lw $t7, ($a0) +/* 0A7E2C 800A722C 00000000 */ nop +/* 0A7E30 800A7230 85E30000 */ lh $v1, ($t7) +/* 0A7E34 800A7234 0C007910 */ jal func_8001E440 +/* 0A7E38 800A7238 AFA3002C */ sw $v1, 0x2c($sp) +/* 0A7E3C 800A723C 8FA3002C */ lw $v1, 0x2c($sp) +/* 0A7E40 800A7240 2401000A */ li $at, 10 +/* 0A7E44 800A7244 14410014 */ bne $v0, $at, .L800A7298 +/* 0A7E48 800A7248 00000000 */ nop +/* 0A7E4C 800A724C 0C006B95 */ jal func_8001AE54 +/* 0A7E50 800A7250 AFA3002C */ sw $v1, 0x2c($sp) +/* 0A7E54 800A7254 8FB80020 */ lw $t8, 0x20($sp) +/* 0A7E58 800A7258 8FA3002C */ lw $v1, 0x2c($sp) +/* 0A7E5C 800A725C 27190008 */ addiu $t9, $t8, 8 +/* 0A7E60 800A7260 0059082B */ sltu $at, $v0, $t9 +/* 0A7E64 800A7264 1020000C */ beqz $at, .L800A7298 +/* 0A7E68 800A7268 00000000 */ nop +/* 0A7E6C 800A726C 3C058012 */ lui $a1, %hi(D_80126D44) # $a1, 0x8012 +/* 0A7E70 800A7270 24A56D44 */ addiu $a1, %lo(D_80126D44) # addiu $a1, $a1, 0x6d44 +/* 0A7E74 800A7274 8CAA0000 */ lw $t2, ($a1) +/* 0A7E78 800A7278 00000000 */ nop +/* 0A7E7C 800A727C 15400006 */ bnez $t2, .L800A7298 +/* 0A7E80 800A7280 00000000 */ nop +/* 0A7E84 800A7284 240400FE */ li $a0, 254 +/* 0A7E88 800A7288 0C000741 */ jal func_80001D04 +/* 0A7E8C 800A728C AFA3002C */ sw $v1, 0x2c($sp) +/* 0A7E90 800A7290 8FA3002C */ lw $v1, 0x2c($sp) +/* 0A7E94 800A7294 00000000 */ nop +.L800A7298: +/* 0A7E98 800A7298 04610002 */ bgez $v1, .L800A72A4 +/* 0A7E9C 800A729C 2409000A */ li $t1, 10 +/* 0A7EA0 800A72A0 00001825 */ move $v1, $zero +.L800A72A4: +/* 0A7EA4 800A72A4 0069001A */ div $zero, $v1, $t1 +/* 0A7EA8 800A72A8 15200002 */ bnez $t1, .L800A72B4 +/* 0A7EAC 800A72AC 00000000 */ nop +/* 0A7EB0 800A72B0 0007000D */ break 7 +.L800A72B4: +/* 0A7EB4 800A72B4 2401FFFF */ li $at, -1 +/* 0A7EB8 800A72B8 15210004 */ bne $t1, $at, .L800A72CC +/* 0A7EBC 800A72BC 3C018000 */ lui $at, 0x8000 +/* 0A7EC0 800A72C0 14610002 */ bne $v1, $at, .L800A72CC +/* 0A7EC4 800A72C4 00000000 */ nop +/* 0A7EC8 800A72C8 0006000D */ break 6 +.L800A72CC: +/* 0A7ECC 800A72CC 00001012 */ mflo $v0 +/* 0A7ED0 800A72D0 1040001D */ beqz $v0, .L800A7348 +/* 0A7ED4 800A72D4 00000000 */ nop +/* 0A7ED8 800A72D8 0069001A */ div $zero, $v1, $t1 +/* 0A7EDC 800A72DC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A7EE0 800A72E0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A7EE4 800A72E4 8D0B0000 */ lw $t3, ($t0) +/* 0A7EE8 800A72E8 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A7EEC 800A72EC A56202B8 */ sh $v0, 0x2b8($t3) +/* 0A7EF0 800A72F0 8D0D0000 */ lw $t5, ($t0) +/* 0A7EF4 800A72F4 15200002 */ bnez $t1, .L800A7300 +/* 0A7EF8 800A72F8 00000000 */ nop +/* 0A7EFC 800A72FC 0007000D */ break 7 +.L800A7300: +/* 0A7F00 800A7300 2401FFFF */ li $at, -1 +/* 0A7F04 800A7304 15210004 */ bne $t1, $at, .L800A7318 +/* 0A7F08 800A7308 3C018000 */ lui $at, 0x8000 +/* 0A7F0C 800A730C 14610002 */ bne $v1, $at, .L800A7318 +/* 0A7F10 800A7310 00000000 */ nop +/* 0A7F14 800A7314 0006000D */ break 6 +.L800A7318: +/* 0A7F18 800A7318 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A7F1C 800A731C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A7F20 800A7320 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A7F24 800A7324 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A7F28 800A7328 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A7F2C 800A732C 00006010 */ mfhi $t4 +/* 0A7F30 800A7330 A5AC02D8 */ sh $t4, 0x2d8($t5) +/* 0A7F34 800A7334 8D070000 */ lw $a3, ($t0) +/* 0A7F38 800A7338 0C02A980 */ jal func_800AA600 +/* 0A7F3C 800A733C 24E702C0 */ addiu $a3, $a3, 0x2c0 +/* 0A7F40 800A7340 10000010 */ b .L800A7384 +/* 0A7F44 800A7344 00000000 */ nop +.L800A7348: +/* 0A7F48 800A7348 0069001A */ div $zero, $v1, $t1 +/* 0A7F4C 800A734C 3C0F8012 */ lui $t7, %hi(D_80126CDC) # $t7, 0x8012 +/* 0A7F50 800A7350 8DEF6CDC */ lw $t7, %lo(D_80126CDC)($t7) +/* 0A7F54 800A7354 15200002 */ bnez $t1, .L800A7360 +/* 0A7F58 800A7358 00000000 */ nop +/* 0A7F5C 800A735C 0007000D */ break 7 +.L800A7360: +/* 0A7F60 800A7360 2401FFFF */ li $at, -1 +/* 0A7F64 800A7364 15210004 */ bne $t1, $at, .L800A7378 +/* 0A7F68 800A7368 3C018000 */ lui $at, 0x8000 +/* 0A7F6C 800A736C 14610002 */ bne $v1, $at, .L800A7378 +/* 0A7F70 800A7370 00000000 */ nop +/* 0A7F74 800A7374 0006000D */ break 6 +.L800A7378: +/* 0A7F78 800A7378 00007010 */ mfhi $t6 +/* 0A7F7C 800A737C A5EE02B8 */ sh $t6, 0x2b8($t7) +/* 0A7F80 800A7380 00000000 */ nop +.L800A7384: +/* 0A7F84 800A7384 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 +/* 0A7F88 800A7388 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) +/* 0A7F8C 800A738C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A7F90 800A7390 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A7F94 800A7394 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A7F98 800A7398 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A7F9C 800A739C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A7FA0 800A73A0 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A7FA4 800A73A4 0C02A980 */ jal func_800AA600 +/* 0A7FA8 800A73A8 24E702A0 */ addiu $a3, $a3, 0x2a0 +/* 0A7FAC 800A73AC 0C019826 */ jal func_80066098 +/* 0A7FB0 800A73B0 24040001 */ li $a0, 1 +/* 0A7FB4 800A73B4 3C188000 */ lui $t8, %hi(D_80000300) # $t8, 0x8000 +/* 0A7FB8 800A73B8 8F180300 */ lw $t8, %lo(D_80000300)($t8) +/* 0A7FBC 800A73BC 00000000 */ nop +/* 0A7FC0 800A73C0 17000003 */ bnez $t8, .L800A73D0 +/* 0A7FC4 800A73C4 00000000 */ nop +/* 0A7FC8 800A73C8 0C01EFC7 */ jal func_8007BF1C +/* 0A7FCC 800A73CC 24040001 */ li $a0, 1 +.L800A73D0: +/* 0A7FD0 800A73D0 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 +/* 0A7FD4 800A73D4 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) +/* 0A7FD8 800A73D8 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A7FDC 800A73DC 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A7FE0 800A73E0 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A7FE4 800A73E4 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A7FE8 800A73E8 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A7FEC 800A73EC 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A7FF0 800A73F0 0C02A980 */ jal func_800AA600 +/* 0A7FF4 800A73F4 24E70260 */ addiu $a3, $a3, 0x260 +/* 0A7FF8 800A73F8 0C01EFC7 */ jal func_8007BF1C +/* 0A7FFC 800A73FC 00002025 */ move $a0, $zero +/* 0A8000 800A7400 0C019826 */ jal func_80066098 +/* 0A8004 800A7404 00002025 */ move $a0, $zero +/* 0A8008 800A7408 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 +/* 0A800C 800A740C 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) +/* 0A8010 800A7410 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A8014 800A7414 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A8018 800A7418 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A801C 800A741C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A8020 800A7420 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A8024 800A7424 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A8028 800A7428 0C02A980 */ jal func_800AA600 +/* 0A802C 800A742C 24E70280 */ addiu $a3, $a3, 0x280 +/* 0A8030 800A7430 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A8034 800A7434 27BD0030 */ addiu $sp, $sp, 0x30 +/* 0A8038 800A7438 03E00008 */ jr $ra +/* 0A803C 800A743C 00000000 */ nop + +/* 0A8040 800A7440 3C0E8012 */ lui $t6, %hi(D_80126D40) # $t6, 0x8012 +/* 0A8044 800A7444 8DCE6D40 */ lw $t6, %lo(D_80126D40)($t6) +/* 0A8048 800A7448 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0A804C 800A744C AFBF0014 */ sw $ra, 0x14($sp) +/* 0A8050 800A7450 15C00008 */ bnez $t6, .L800A7474 +/* 0A8054 800A7454 AFA40018 */ sw $a0, 0x18($sp) +/* 0A8058 800A7458 0C01BAA8 */ jal func_8006EAA0 +/* 0A805C 800A745C 00000000 */ nop +/* 0A8060 800A7460 14400004 */ bnez $v0, .L800A7474 +/* 0A8064 800A7464 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 +/* 0A8068 800A7468 97A4001A */ lhu $a0, 0x1a($sp) +/* 0A806C 800A746C 0C000741 */ jal func_80001D04 +/* 0A8070 800A7470 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 +.L800A7474: +/* 0A8074 800A7474 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A8078 800A7478 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0A807C 800A747C 03E00008 */ jr $ra +/* 0A8080 800A7480 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A7484.s b/asm/non_matchings/unknown_09F8F0/func_800A7484.s new file mode 100644 index 00000000..e385c942 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A7484.s @@ -0,0 +1,29 @@ +glabel func_800A7484 +/* 0A8084 800A7484 3C028012 */ lui $v0, %hi(D_80126D74) # $v0, 0x8012 +/* 0A8088 800A7488 24426D74 */ addiu $v0, %lo(D_80126D74) # addiu $v0, $v0, 0x6d74 +/* 0A808C 800A748C 8C4F0000 */ lw $t7, ($v0) +/* 0A8090 800A7490 44856000 */ mtc1 $a1, $f12 +/* 0A8094 800A7494 AFA40000 */ sw $a0, ($sp) +/* 0A8098 800A7498 15E00012 */ bnez $t7, .L800A74E4 +/* 0A809C 800A749C 308EFFFF */ andi $t6, $a0, 0xffff +/* 0A80A0 800A74A0 3C018012 */ lui $at, %hi(D_80126D7C) # $at, 0x8012 +/* 0A80A4 800A74A4 A42E6D7C */ sh $t6, %lo(D_80126D7C)($at) +/* 0A80A8 800A74A8 3C014270 */ li $at, 0x42700000 # 60.000000 +/* 0A80AC 800A74AC 44812000 */ mtc1 $at, $f4 +/* 0A80B0 800A74B0 00000000 */ nop +/* 0A80B4 800A74B4 46046182 */ mul.s $f6, $f12, $f4 +/* 0A80B8 800A74B8 4458F800 */ cfc1 $t8, $31 +/* 0A80BC 800A74BC 00000000 */ nop +/* 0A80C0 800A74C0 37010003 */ ori $at, $t8, 3 +/* 0A80C4 800A74C4 38210002 */ xori $at, $at, 2 +/* 0A80C8 800A74C8 44C1F800 */ ctc1 $at, $31 +/* 0A80CC 800A74CC 3C018012 */ lui $at, %hi(D_80126D78) # $at, 0x8012 +/* 0A80D0 800A74D0 46003224 */ cvt.w.s $f8, $f6 +/* 0A80D4 800A74D4 44194000 */ mfc1 $t9, $f8 +/* 0A80D8 800A74D8 44D8F800 */ ctc1 $t8, $31 +/* 0A80DC 800A74DC AC590000 */ sw $t9, ($v0) +/* 0A80E0 800A74E0 AC266D78 */ sw $a2, %lo(D_80126D78)($at) +.L800A74E4: +/* 0A80E4 800A74E4 03E00008 */ jr $ra +/* 0A80E8 800A74E8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A74EC.s b/asm/non_matchings/unknown_09F8F0/func_800A74EC.s new file mode 100644 index 00000000..20f80716 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A74EC.s @@ -0,0 +1,16 @@ +glabel func_800A74EC +/* 0A80EC 800A74EC 3C0F8012 */ lui $t7, %hi(D_80126D7C) # $t7, 0x8012 +/* 0A80F0 800A74F0 95EF6D7C */ lhu $t7, %lo(D_80126D7C)($t7) +/* 0A80F4 800A74F4 308EFFFF */ andi $t6, $a0, 0xffff +/* 0A80F8 800A74F8 15EE0007 */ bne $t7, $t6, .L800A7518 +/* 0A80FC 800A74FC AFA40000 */ sw $a0, ($sp) +/* 0A8100 800A7500 3C188012 */ lui $t8, %hi(D_80126D78) # $t8, 0x8012 +/* 0A8104 800A7504 8F186D78 */ lw $t8, %lo(D_80126D78)($t8) +/* 0A8108 800A7508 3C018012 */ lui $at, %hi(D_80126D74) # $at, 0x8012 +/* 0A810C 800A750C 14B80002 */ bne $a1, $t8, .L800A7518 +/* 0A8110 800A7510 00000000 */ nop +/* 0A8114 800A7514 AC206D74 */ sw $zero, %lo(D_80126D74)($at) +.L800A7518: +/* 0A8118 800A7518 03E00008 */ jr $ra +/* 0A811C 800A751C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A7520.s b/asm/non_matchings/unknown_09F8F0/func_800A7520.s new file mode 100644 index 00000000..0ebd5a62 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A7520.s @@ -0,0 +1,358 @@ +glabel func_800A7520 +/* 0A8120 800A7520 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0A8124 800A7524 AFBF0014 */ sw $ra, 0x14($sp) +/* 0A8128 800A7528 AFA50024 */ sw $a1, 0x24($sp) +/* 0A812C 800A752C 8C890064 */ lw $t1, 0x64($a0) +/* 0A8130 800A7530 24040001 */ li $a0, 1 +/* 0A8134 800A7534 812E01D8 */ lb $t6, 0x1d8($t1) +/* 0A8138 800A7538 00000000 */ nop +/* 0A813C 800A753C 15C00145 */ bnez $t6, .L800A7A54 +/* 0A8140 800A7540 8FBF0014 */ lw $ra, 0x14($sp) +/* 0A8144 800A7544 0C019826 */ jal func_80066098 +/* 0A8148 800A7548 AFA9001C */ sw $t1, 0x1c($sp) +/* 0A814C 800A754C 8FA9001C */ lw $t1, 0x1c($sp) +/* 0A8150 800A7550 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A8154 800A7554 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A8158 800A7558 8D020000 */ lw $v0, ($t0) +/* 0A815C 800A755C 812F0172 */ lb $t7, 0x172($t1) +/* 0A8160 800A7560 81230174 */ lb $v1, 0x174($t1) +/* 0A8164 800A7564 8059005D */ lb $t9, 0x5d($v0) +/* 0A8168 800A7568 000FC080 */ sll $t8, $t7, 2 +/* 0A816C 800A756C 030FC023 */ subu $t8, $t8, $t7 +/* 0A8170 800A7570 10790013 */ beq $v1, $t9, .L800A75C0 +/* 0A8174 800A7574 03032021 */ addu $a0, $t8, $v1 +/* 0A8178 800A7578 14600004 */ bnez $v1, .L800A758C +/* 0A817C 800A757C 3C0B8012 */ lui $t3, %hi(D_80126D37) # $t3, 0x8012 +/* 0A8180 800A7580 240A0078 */ li $t2, 120 +/* 0A8184 800A7584 10000008 */ b .L800A75A8 +/* 0A8188 800A7588 A04A005C */ sb $t2, 0x5c($v0) +.L800A758C: +/* 0A818C 800A758C 916B6D37 */ lbu $t3, %lo(D_80126D37)($t3) +/* 0A8190 800A7590 24010001 */ li $at, 1 +/* 0A8194 800A7594 15610003 */ bne $t3, $at, .L800A75A4 +/* 0A8198 800A7598 240C0078 */ li $t4, 120 +/* 0A819C 800A759C 10000002 */ b .L800A75A8 +/* 0A81A0 800A75A0 A040005C */ sb $zero, 0x5c($v0) +.L800A75A4: +/* 0A81A4 800A75A4 A04C005C */ sb $t4, 0x5c($v0) +.L800A75A8: +/* 0A81A8 800A75A8 812D0174 */ lb $t5, 0x174($t1) +/* 0A81AC 800A75AC 8D0E0000 */ lw $t6, ($t0) +/* 0A81B0 800A75B0 00000000 */ nop +/* 0A81B4 800A75B4 A1CD005D */ sb $t5, 0x5d($t6) +/* 0A81B8 800A75B8 8D020000 */ lw $v0, ($t0) +/* 0A81BC 800A75BC 00000000 */ nop +.L800A75C0: +/* 0A81C0 800A75C0 812F0173 */ lb $t7, 0x173($t1) +/* 0A81C4 800A75C4 00000000 */ nop +/* 0A81C8 800A75C8 19E000DD */ blez $t7, .L800A7940 +/* 0A81CC 800A75CC 00000000 */ nop +/* 0A81D0 800A75D0 8043005B */ lb $v1, 0x5b($v0) +/* 0A81D4 800A75D4 00000000 */ nop +/* 0A81D8 800A75D8 28610010 */ slti $at, $v1, 0x10 +/* 0A81DC 800A75DC 10200016 */ beqz $at, .L800A7638 +/* 0A81E0 800A75E0 00000000 */ nop +/* 0A81E4 800A75E4 85380170 */ lh $t8, 0x170($t1) +/* 0A81E8 800A75E8 0003CB00 */ sll $t9, $v1, 0xc +/* 0A81EC 800A75EC 17000012 */ bnez $t8, .L800A7638 +/* 0A81F0 800A75F0 00000000 */ nop +/* 0A81F4 800A75F4 A4590044 */ sh $t9, 0x44($v0) +/* 0A81F8 800A75F8 8D020000 */ lw $v0, ($t0) +/* 0A81FC 800A75FC 3C01800F */ lui $at, %hi(D_800E8784) # $at, 0x800f +/* 0A8200 800A7600 804A005B */ lb $t2, 0x5b($v0) +/* 0A8204 800A7604 C4298780 */ lwc1 $f9, %lo(D_800E8780)($at) +/* 0A8208 800A7608 448A2000 */ mtc1 $t2, $f4 +/* 0A820C 800A760C C4288784 */ lwc1 $f8, %lo(D_800E8784)($at) +/* 0A8210 800A7610 468021A1 */ cvt.d.w $f6, $f4 +/* 0A8214 800A7614 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 0A8218 800A7618 44818800 */ mtc1 $at, $f17 +/* 0A821C 800A761C 46283282 */ mul.d $f10, $f6, $f8 +/* 0A8220 800A7620 44808000 */ mtc1 $zero, $f16 +/* 0A8224 800A7624 00000000 */ nop +/* 0A8228 800A7628 46305480 */ add.d $f18, $f10, $f16 +/* 0A822C 800A762C 46209120 */ cvt.s.d $f4, $f18 +/* 0A8230 800A7630 10000007 */ b .L800A7650 +/* 0A8234 800A7634 E4440048 */ swc1 $f4, 0x48($v0) +.L800A7638: +/* 0A8238 800A7638 A4400044 */ sh $zero, 0x44($v0) +/* 0A823C 800A763C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0A8240 800A7640 44813000 */ mtc1 $at, $f6 +/* 0A8244 800A7644 8D0B0000 */ lw $t3, ($t0) +/* 0A8248 800A7648 00000000 */ nop +/* 0A824C 800A764C E5660048 */ swc1 $f6, 0x48($t3) +.L800A7650: +/* 0A8250 800A7650 8D0C0000 */ lw $t4, ($t0) +/* 0A8254 800A7654 24190010 */ li $t9, 16 +/* 0A8258 800A7658 A5840058 */ sh $a0, 0x58($t4) +/* 0A825C 800A765C 8D020000 */ lw $v0, ($t0) +/* 0A8260 800A7660 8FAE0024 */ lw $t6, 0x24($sp) +/* 0A8264 800A7664 804D005B */ lb $t5, 0x5b($v0) +/* 0A8268 800A7668 00000000 */ nop +/* 0A826C 800A766C 01AE7821 */ addu $t7, $t5, $t6 +/* 0A8270 800A7670 A04F005B */ sb $t7, 0x5b($v0) +/* 0A8274 800A7674 8D020000 */ lw $v0, ($t0) +/* 0A8278 800A7678 00000000 */ nop +/* 0A827C 800A767C 8058005B */ lb $t8, 0x5b($v0) +/* 0A8280 800A7680 00000000 */ nop +/* 0A8284 800A7684 2B010011 */ slti $at, $t8, 0x11 +/* 0A8288 800A7688 14200040 */ bnez $at, .L800A778C +/* 0A828C 800A768C 00000000 */ nop +/* 0A8290 800A7690 A059005B */ sb $t9, 0x5b($v0) +/* 0A8294 800A7694 8D020000 */ lw $v0, ($t0) +/* 0A8298 800A7698 8FAB0024 */ lw $t3, 0x24($sp) +/* 0A829C 800A769C 804A005C */ lb $t2, 0x5c($v0) +/* 0A82A0 800A76A0 240D0078 */ li $t5, 120 +/* 0A82A4 800A76A4 014B6021 */ addu $t4, $t2, $t3 +/* 0A82A8 800A76A8 A04C005C */ sb $t4, 0x5c($v0) +/* 0A82AC 800A76AC 8D020000 */ lw $v0, ($t0) +/* 0A82B0 800A76B0 3C0E8012 */ lui $t6, %hi(D_80126D0C) # $t6, 0x8012 +/* 0A82B4 800A76B4 8043005C */ lb $v1, 0x5c($v0) +/* 0A82B8 800A76B8 00000000 */ nop +/* 0A82BC 800A76BC 28610079 */ slti $at, $v1, 0x79 +/* 0A82C0 800A76C0 14200005 */ bnez $at, .L800A76D8 +/* 0A82C4 800A76C4 00000000 */ nop +/* 0A82C8 800A76C8 A04D005C */ sb $t5, 0x5c($v0) +/* 0A82CC 800A76CC 8D020000 */ lw $v0, ($t0) +/* 0A82D0 800A76D0 1000002E */ b .L800A778C +/* 0A82D4 800A76D4 00000000 */ nop +.L800A76D8: +/* 0A82D8 800A76D8 8DCE6D0C */ lw $t6, %lo(D_80126D0C)($t6) +/* 0A82DC 800A76DC 00000000 */ nop +/* 0A82E0 800A76E0 15C0002A */ bnez $t6, .L800A778C +/* 0A82E4 800A76E4 00000000 */ nop +/* 0A82E8 800A76E8 44834000 */ mtc1 $v1, $f8 +/* 0A82EC 800A76EC 3C01800F */ lui $at, %hi(D_800E878C) # $at, 0x800f +/* 0A82F0 800A76F0 468042A0 */ cvt.s.w $f10, $f8 +/* 0A82F4 800A76F4 C4338788 */ lwc1 $f19, %lo(D_800E8788)($at) +/* 0A82F8 800A76F8 C432878C */ lwc1 $f18, %lo(D_800E878C)($at) +/* 0A82FC 800A76FC 46005421 */ cvt.d.s $f16, $f10 +/* 0A8300 800A7700 46328102 */ mul.d $f4, $f16, $f18 +/* 0A8304 800A7704 3C014010 */ li $at, 0x40100000 # 2.250000 +/* 0A8308 800A7708 44813800 */ mtc1 $at, $f7 +/* 0A830C 800A770C 44803000 */ mtc1 $zero, $f6 +/* 0A8310 800A7710 AFA9001C */ sw $t1, 0x1c($sp) +/* 0A8314 800A7714 46262202 */ mul.d $f8, $f4, $f6 +/* 0A8318 800A7718 444FF800 */ cfc1 $t7, $31 +/* 0A831C 800A771C 00000000 */ nop +/* 0A8320 800A7720 35E10003 */ ori $at, $t7, 3 +/* 0A8324 800A7724 38210002 */ xori $at, $at, 2 +/* 0A8328 800A7728 44C1F800 */ ctc1 $at, $31 +/* 0A832C 800A772C 00000000 */ nop +/* 0A8330 800A7730 462042A4 */ cvt.w.d $f10, $f8 +/* 0A8334 800A7734 44045000 */ mfc1 $a0, $f10 +/* 0A8338 800A7738 44CFF800 */ ctc1 $t7, $31 +/* 0A833C 800A773C 0004C400 */ sll $t8, $a0, 0x10 +/* 0A8340 800A7740 0C01C1F1 */ jal func_800707C4 +/* 0A8344 800A7744 00182403 */ sra $a0, $t8, 0x10 +/* 0A8348 800A7748 3C01800F */ lui $at, %hi(D_800E8794) # $at, 0x800f +/* 0A834C 800A774C C4318790 */ lwc1 $f17, %lo(D_800E8790)($at) +/* 0A8350 800A7750 C4308794 */ lwc1 $f16, %lo(D_800E8794)($at) +/* 0A8354 800A7754 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A8358 800A7758 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A835C 800A775C 460004A1 */ cvt.d.s $f18, $f0 +/* 0A8360 800A7760 46328102 */ mul.d $f4, $f16, $f18 +/* 0A8364 800A7764 8D020000 */ lw $v0, ($t0) +/* 0A8368 800A7768 8FA9001C */ lw $t1, 0x1c($sp) +/* 0A836C 800A776C C4460048 */ lwc1 $f6, 0x48($v0) +/* 0A8370 800A7770 00000000 */ nop +/* 0A8374 800A7774 46003221 */ cvt.d.s $f8, $f6 +/* 0A8378 800A7778 46244280 */ add.d $f10, $f8, $f4 +/* 0A837C 800A777C 46205420 */ cvt.s.d $f16, $f10 +/* 0A8380 800A7780 E4500048 */ swc1 $f16, 0x48($v0) +/* 0A8384 800A7784 8D020000 */ lw $v0, ($t0) +/* 0A8388 800A7788 00000000 */ nop +.L800A778C: +/* 0A838C 800A778C 3C0A8012 */ lui $t2, %hi(D_80126D0C) # $t2, 0x8012 +/* 0A8390 800A7790 8D4A6D0C */ lw $t2, %lo(D_80126D0C)($t2) +/* 0A8394 800A7794 44808000 */ mtc1 $zero, $f16 +/* 0A8398 800A7798 1940000A */ blez $t2, .L800A77C4 +/* 0A839C 800A779C 3C013FE8 */ li $at, 0x3FE80000 # 1.812500 +/* 0A83A0 800A77A0 C4520048 */ lwc1 $f18, 0x48($v0) +/* 0A83A4 800A77A4 44814800 */ mtc1 $at, $f9 +/* 0A83A8 800A77A8 44804000 */ mtc1 $zero, $f8 +/* 0A83AC 800A77AC 460091A1 */ cvt.d.s $f6, $f18 +/* 0A83B0 800A77B0 46283102 */ mul.d $f4, $f6, $f8 +/* 0A83B4 800A77B4 462022A0 */ cvt.s.d $f10, $f4 +/* 0A83B8 800A77B8 E44A0048 */ swc1 $f10, 0x48($v0) +/* 0A83BC 800A77BC 8D020000 */ lw $v0, ($t0) +/* 0A83C0 800A77C0 00000000 */ nop +.L800A77C4: +/* 0A83C4 800A77C4 C4520048 */ lwc1 $f18, 0x48($v0) +/* 0A83C8 800A77C8 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 0A83CC 800A77CC 44818800 */ mtc1 $at, $f17 +/* 0A83D0 800A77D0 460091A1 */ cvt.d.s $f6, $f18 +/* 0A83D4 800A77D4 46268032 */ c.eq.d $f16, $f6 +/* 0A83D8 800A77D8 24040001 */ li $a0, 1 +/* 0A83DC 800A77DC 45010008 */ bc1t .L800A7800 +/* 0A83E0 800A77E0 00000000 */ nop +/* 0A83E4 800A77E4 0C01EFC7 */ jal func_8007BF1C +/* 0A83E8 800A77E8 AFA9001C */ sw $t1, 0x1c($sp) +/* 0A83EC 800A77EC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A83F0 800A77F0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A83F4 800A77F4 8D020000 */ lw $v0, ($t0) +/* 0A83F8 800A77F8 8FA9001C */ lw $t1, 0x1c($sp) +/* 0A83FC 800A77FC 00000000 */ nop +.L800A7800: +/* 0A8400 800A7800 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A8404 800A7804 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A8408 800A7808 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A840C 800A780C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A8410 800A7810 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A8414 800A7814 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A8418 800A7818 24470040 */ addiu $a3, $v0, 0x40 +/* 0A841C 800A781C 0C02A980 */ jal func_800AA600 +/* 0A8420 800A7820 AFA9001C */ sw $t1, 0x1c($sp) +/* 0A8424 800A7824 0C01EFC7 */ jal func_8007BF1C +/* 0A8428 800A7828 00002025 */ move $a0, $zero +/* 0A842C 800A782C 8FA9001C */ lw $t1, 0x1c($sp) +/* 0A8430 800A7830 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A8434 800A7834 81230173 */ lb $v1, 0x173($t1) +/* 0A8438 800A7838 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc +/* 0A843C 800A783C 28610004 */ slti $at, $v1, 4 +/* 0A8440 800A7840 14200006 */ bnez $at, .L800A785C +/* 0A8444 800A7844 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A8448 800A7848 8D0C0000 */ lw $t4, ($t0) +/* 0A844C 800A784C 240BFF80 */ li $t3, -128 +/* 0A8450 800A7850 A18B063A */ sb $t3, 0x63a($t4) +/* 0A8454 800A7854 81230173 */ lb $v1, 0x173($t1) +/* 0A8458 800A7858 00000000 */ nop +.L800A785C: +/* 0A845C 800A785C 28610003 */ slti $at, $v1, 3 +/* 0A8460 800A7860 10200009 */ beqz $at, .L800A7888 +/* 0A8464 800A7864 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A8468 800A7868 8D020000 */ lw $v0, ($t0) +/* 0A846C 800A786C 8FAE0024 */ lw $t6, 0x24($sp) +/* 0A8470 800A7870 804D063A */ lb $t5, 0x63a($v0) +/* 0A8474 800A7874 00000000 */ nop +/* 0A8478 800A7878 01AE7823 */ subu $t7, $t5, $t6 +/* 0A847C 800A787C A04F063A */ sb $t7, 0x63a($v0) +/* 0A8480 800A7880 81230173 */ lb $v1, 0x173($t1) +/* 0A8484 800A7884 00000000 */ nop +.L800A7888: +/* 0A8488 800A7888 28610003 */ slti $at, $v1, 3 +/* 0A848C 800A788C 10200010 */ beqz $at, .L800A78D0 +/* 0A8490 800A7890 3C0DFA00 */ lui $t5, 0xfa00 +/* 0A8494 800A7894 8D180000 */ lw $t8, ($t0) +/* 0A8498 800A7898 00000000 */ nop +/* 0A849C 800A789C 8319063A */ lb $t9, 0x63a($t8) +/* 0A84A0 800A78A0 00000000 */ nop +/* 0A84A4 800A78A4 272A0080 */ addiu $t2, $t9, 0x80 +/* 0A84A8 800A78A8 05410004 */ bgez $t2, .L800A78BC +/* 0A84AC 800A78AC 314B001F */ andi $t3, $t2, 0x1f +/* 0A84B0 800A78B0 11600002 */ beqz $t3, .L800A78BC +/* 0A84B4 800A78B4 00000000 */ nop +/* 0A84B8 800A78B8 256BFFE0 */ addiu $t3, $t3, -0x20 +.L800A78BC: +/* 0A84BC 800A78BC 29610014 */ slti $at, $t3, 0x14 +/* 0A84C0 800A78C0 1020001D */ beqz $at, .L800A7938 +/* 0A84C4 800A78C4 24010001 */ li $at, 1 +/* 0A84C8 800A78C8 1061001B */ beq $v1, $at, .L800A7938 +/* 0A84CC 800A78CC 00000000 */ nop +.L800A78D0: +/* 0A84D0 800A78D0 8C820000 */ lw $v0, ($a0) +/* 0A84D4 800A78D4 240EFFA0 */ li $t6, -96 +/* 0A84D8 800A78D8 244C0008 */ addiu $t4, $v0, 8 +/* 0A84DC 800A78DC AC8C0000 */ sw $t4, ($a0) +/* 0A84E0 800A78E0 AC4E0004 */ sw $t6, 4($v0) +/* 0A84E4 800A78E4 AC4D0000 */ sw $t5, ($v0) +/* 0A84E8 800A78E8 812F0173 */ lb $t7, 0x173($t1) +/* 0A84EC 800A78EC 8D190000 */ lw $t9, ($t0) +/* 0A84F0 800A78F0 25F8FFFF */ addiu $t8, $t7, -1 +/* 0A84F4 800A78F4 A7380638 */ sh $t8, 0x638($t9) +/* 0A84F8 800A78F8 8D070000 */ lw $a3, ($t0) +/* 0A84FC 800A78FC 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A8500 800A7900 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A8504 800A7904 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A8508 800A7908 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A850C 800A790C 0C02A980 */ jal func_800AA600 +/* 0A8510 800A7910 24E70620 */ addiu $a3, $a3, 0x620 +/* 0A8514 800A7914 3C058012 */ lui $a1, %hi(D_80126CFC) # $a1, 0x8012 +/* 0A8518 800A7918 24A56CFC */ addiu $a1, %lo(D_80126CFC) # addiu $a1, $a1, 0x6cfc +/* 0A851C 800A791C 8CA20000 */ lw $v0, ($a1) +/* 0A8520 800A7920 3C0BFA00 */ lui $t3, 0xfa00 +/* 0A8524 800A7924 244A0008 */ addiu $t2, $v0, 8 +/* 0A8528 800A7928 ACAA0000 */ sw $t2, ($a1) +/* 0A852C 800A792C 240CFFFF */ li $t4, -1 +/* 0A8530 800A7930 AC4C0004 */ sw $t4, 4($v0) +/* 0A8534 800A7934 AC4B0000 */ sw $t3, ($v0) +.L800A7938: +/* 0A8538 800A7938 1000003A */ b .L800A7A24 +/* 0A853C 800A793C 00000000 */ nop +.L800A7940: +/* 0A8540 800A7940 8043005B */ lb $v1, 0x5b($v0) +/* 0A8544 800A7944 00000000 */ nop +/* 0A8548 800A7948 18600036 */ blez $v1, .L800A7A24 +/* 0A854C 800A794C 00036B00 */ sll $t5, $v1, 0xc +/* 0A8550 800A7950 A44D0044 */ sh $t5, 0x44($v0) +/* 0A8554 800A7954 8D020000 */ lw $v0, ($t0) +/* 0A8558 800A7958 3C01800F */ lui $at, %hi(D_800E879C) # $at, 0x800f +/* 0A855C 800A795C 804E005B */ lb $t6, 0x5b($v0) +/* 0A8560 800A7960 C42B8798 */ lwc1 $f11, %lo(D_800E8798)($at) +/* 0A8564 800A7964 448E4000 */ mtc1 $t6, $f8 +/* 0A8568 800A7968 C42A879C */ lwc1 $f10, %lo(D_800E879C)($at) +/* 0A856C 800A796C 46804121 */ cvt.d.w $f4, $f8 +/* 0A8570 800A7970 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 0A8574 800A7974 44818800 */ mtc1 $at, $f17 +/* 0A8578 800A7978 462A2482 */ mul.d $f18, $f4, $f10 +/* 0A857C 800A797C 44808000 */ mtc1 $zero, $f16 +/* 0A8580 800A7980 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A8584 800A7984 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A8588 800A7988 3C0C8012 */ lui $t4, %hi(D_80126D0C) # $t4, 0x8012 +/* 0A858C 800A798C 46309180 */ add.d $f6, $f18, $f16 +/* 0A8590 800A7990 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 0A8594 800A7994 46203220 */ cvt.s.d $f8, $f6 +/* 0A8598 800A7998 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A859C 800A799C E4480048 */ swc1 $f8, 0x48($v0) +/* 0A85A0 800A79A0 8D020000 */ lw $v0, ($t0) +/* 0A85A4 800A79A4 8FB80024 */ lw $t8, 0x24($sp) +/* 0A85A8 800A79A8 804F005B */ lb $t7, 0x5b($v0) +/* 0A85AC 800A79AC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A85B0 800A79B0 01F8C823 */ subu $t9, $t7, $t8 +/* 0A85B4 800A79B4 A059005B */ sb $t9, 0x5b($v0) +/* 0A85B8 800A79B8 8D0A0000 */ lw $t2, ($t0) +/* 0A85BC 800A79BC 00000000 */ nop +/* 0A85C0 800A79C0 A5440058 */ sh $a0, 0x58($t2) +/* 0A85C4 800A79C4 8D020000 */ lw $v0, ($t0) +/* 0A85C8 800A79C8 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A85CC 800A79CC 804B005B */ lb $t3, 0x5b($v0) +/* 0A85D0 800A79D0 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A85D4 800A79D4 05610005 */ bgez $t3, .L800A79EC +/* 0A85D8 800A79D8 00000000 */ nop +/* 0A85DC 800A79DC A040005B */ sb $zero, 0x5b($v0) +/* 0A85E0 800A79E0 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 +/* 0A85E4 800A79E4 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) +/* 0A85E8 800A79E8 00000000 */ nop +.L800A79EC: +/* 0A85EC 800A79EC 8D8C6D0C */ lw $t4, %lo(D_80126D0C)($t4) +/* 0A85F0 800A79F0 00000000 */ nop +/* 0A85F4 800A79F4 11800009 */ beqz $t4, .L800A7A1C +/* 0A85F8 800A79F8 00000000 */ nop +/* 0A85FC 800A79FC C4440048 */ lwc1 $f4, 0x48($v0) +/* 0A8600 800A7A00 44815000 */ mtc1 $at, $f10 +/* 0A8604 800A7A04 00000000 */ nop +/* 0A8608 800A7A08 460A2483 */ div.s $f18, $f4, $f10 +/* 0A860C 800A7A0C E4520048 */ swc1 $f18, 0x48($v0) +/* 0A8610 800A7A10 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 +/* 0A8614 800A7A14 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) +/* 0A8618 800A7A18 00000000 */ nop +.L800A7A1C: +/* 0A861C 800A7A1C 0C02A980 */ jal func_800AA600 +/* 0A8620 800A7A20 24470040 */ addiu $a3, $v0, 0x40 +.L800A7A24: +/* 0A8624 800A7A24 3C058012 */ lui $a1, %hi(D_80126CFC) # $a1, 0x8012 +/* 0A8628 800A7A28 24A56CFC */ addiu $a1, %lo(D_80126CFC) # addiu $a1, $a1, 0x6cfc +/* 0A862C 800A7A2C 8CA20000 */ lw $v0, ($a1) +/* 0A8630 800A7A30 3C0EFA00 */ lui $t6, 0xfa00 +/* 0A8634 800A7A34 244D0008 */ addiu $t5, $v0, 8 +/* 0A8638 800A7A38 ACAD0000 */ sw $t5, ($a1) +/* 0A863C 800A7A3C 240FFFFF */ li $t7, -1 +/* 0A8640 800A7A40 00002025 */ move $a0, $zero +/* 0A8644 800A7A44 AC4F0004 */ sw $t7, 4($v0) +/* 0A8648 800A7A48 0C019826 */ jal func_80066098 +/* 0A864C 800A7A4C AC4E0000 */ sw $t6, ($v0) +/* 0A8650 800A7A50 8FBF0014 */ lw $ra, 0x14($sp) +.L800A7A54: +/* 0A8654 800A7A54 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0A8658 800A7A58 03E00008 */ jr $ra +/* 0A865C 800A7A5C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A7A60.s b/asm/non_matchings/unknown_09F8F0/func_800A7A60.s new file mode 100644 index 00000000..604ad3e3 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A7A60.s @@ -0,0 +1,70 @@ +glabel func_800A7A60 +/* 0A8660 800A7A60 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0A8664 800A7A64 AFBF001C */ sw $ra, 0x1c($sp) +/* 0A8668 800A7A68 8C830064 */ lw $v1, 0x64($a0) +/* 0A866C 800A7A6C 00000000 */ nop +/* 0A8670 800A7A70 8C6E0140 */ lw $t6, 0x140($v1) +/* 0A8674 800A7A74 00000000 */ nop +/* 0A8678 800A7A78 11C00038 */ beqz $t6, .L800A7B5C +/* 0A867C 800A7A7C 8FBF001C */ lw $ra, 0x1c($sp) +/* 0A8680 800A7A80 0C019888 */ jal func_80066220 +/* 0A8684 800A7A84 AFA30024 */ sw $v1, 0x24($sp) +/* 0A8688 800A7A88 8FA30024 */ lw $v1, 0x24($sp) +/* 0A868C 800A7A8C 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 +/* 0A8690 800A7A90 846F0000 */ lh $t7, ($v1) +/* 0A8694 800A7A94 00000000 */ nop +/* 0A8698 800A7A98 144F0030 */ bne $v0, $t7, .L800A7B5C +/* 0A869C 800A7A9C 8FBF001C */ lw $ra, 0x1c($sp) +/* 0A86A0 800A7AA0 8C780140 */ lw $t8, 0x140($v1) +/* 0A86A4 800A7AA4 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) +/* 0A86A8 800A7AA8 C704000C */ lwc1 $f4, 0xc($t8) +/* 0A86AC 800A7AAC 84E60226 */ lh $a2, 0x226($a3) +/* 0A86B0 800A7AB0 E4E4022C */ swc1 $f4, 0x22c($a3) +/* 0A86B4 800A7AB4 8C790140 */ lw $t9, 0x140($v1) +/* 0A86B8 800A7AB8 3C098012 */ lui $t1, %hi(D_80126CF4) # $t1, 0x8012 +/* 0A86BC 800A7ABC C7260010 */ lwc1 $f6, 0x10($t9) +/* 0A86C0 800A7AC0 00065080 */ sll $t2, $a2, 2 +/* 0A86C4 800A7AC4 E4E60230 */ swc1 $f6, 0x230($a3) +/* 0A86C8 800A7AC8 8C680140 */ lw $t0, 0x140($v1) +/* 0A86CC 800A7ACC 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A86D0 800A7AD0 C5080014 */ lwc1 $f8, 0x14($t0) +/* 0A86D4 800A7AD4 3C0C8012 */ lui $t4, %hi(D_80126CD8) # $t4, 0x8012 +/* 0A86D8 800A7AD8 E4E80234 */ swc1 $f8, 0x234($a3) +/* 0A86DC 800A7ADC 8D296CF4 */ lw $t1, %lo(D_80126CF4)($t1) +/* 0A86E0 800A7AE0 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A86E4 800A7AE4 012A5821 */ addu $t3, $t1, $t2 +/* 0A86E8 800A7AE8 8D620000 */ lw $v0, ($t3) +/* 0A86EC 800A7AEC 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A86F0 800A7AF0 10400019 */ beqz $v0, .L800A7B58 +/* 0A86F4 800A7AF4 24E70220 */ addiu $a3, $a3, 0x220 +/* 0A86F8 800A7AF8 8D8C6CD8 */ lw $t4, %lo(D_80126CD8)($t4) +/* 0A86FC 800A7AFC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A8700 800A7B00 01866821 */ addu $t5, $t4, $a2 +/* 0A8704 800A7B04 A1A00000 */ sb $zero, ($t5) +/* 0A8708 800A7B08 AFA70028 */ sw $a3, 0x28($sp) +/* 0A870C 800A7B0C 0C019B37 */ jal func_80066CDC +/* 0A8710 800A7B10 AFA2002C */ sw $v0, 0x2c($sp) +/* 0A8714 800A7B14 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A8718 800A7B18 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A871C 800A7B1C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A8720 800A7B20 0C01A102 */ jal func_80068408 +/* 0A8724 800A7B24 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A8728 800A7B28 8FA2002C */ lw $v0, 0x2c($sp) +/* 0A872C 800A7B2C 8FA70028 */ lw $a3, 0x28($sp) +/* 0A8730 800A7B30 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A8734 800A7B34 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A8738 800A7B38 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A873C 800A7B3C 240E0100 */ li $t6, 256 +/* 0A8740 800A7B40 AFAE0014 */ sw $t6, 0x14($sp) +/* 0A8744 800A7B44 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A8748 800A7B48 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A874C 800A7B4C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A8750 800A7B50 0C01A145 */ jal func_80068514 +/* 0A8754 800A7B54 AFA20010 */ sw $v0, 0x10($sp) +.L800A7B58: +/* 0A8758 800A7B58 8FBF001C */ lw $ra, 0x1c($sp) +.L800A7B5C: +/* 0A875C 800A7B5C 27BD0030 */ addiu $sp, $sp, 0x30 +/* 0A8760 800A7B60 03E00008 */ jr $ra +/* 0A8764 800A7B64 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A7B68.s b/asm/non_matchings/unknown_09F8F0/func_800A7B68.s new file mode 100644 index 00000000..8af39425 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A7B68.s @@ -0,0 +1,301 @@ +glabel func_800A7B68 +/* 0A8768 800A7B68 3C078012 */ lui $a3, %hi(D_80126D0C) # $a3, 0x8012 +/* 0A876C 800A7B6C 8CE76D0C */ lw $a3, %lo(D_80126D0C)($a3) +/* 0A8770 800A7B70 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 0A8774 800A7B74 AFBF0024 */ sw $ra, 0x24($sp) +/* 0A8778 800A7B78 AFB00020 */ sw $s0, 0x20($sp) +/* 0A877C 800A7B7C AFA50064 */ sw $a1, 0x64($sp) +/* 0A8780 800A7B80 10E00016 */ beqz $a3, .L800A7BDC +/* 0A8784 800A7B84 00803025 */ move $a2, $a0 +/* 0A8788 800A7B88 848F0000 */ lh $t7, ($a0) +/* 0A878C 800A7B8C 00077080 */ sll $t6, $a3, 2 +/* 0A8790 800A7B90 3C19800E */ lui $t9, 0x800e +/* 0A8794 800A7B94 01CFC021 */ addu $t8, $t6, $t7 +/* 0A8798 800A7B98 0338C821 */ addu $t9, $t9, $t8 +/* 0A879C 800A7B9C 93392794 */ lbu $t9, 0x2794($t9) +/* 0A87A0 800A7BA0 24010001 */ li $at, 1 +/* 0A87A4 800A7BA4 1321000D */ beq $t9, $at, .L800A7BDC +/* 0A87A8 800A7BA8 00000000 */ nop +/* 0A87AC 800A7BAC 18E00100 */ blez $a3, .L800A7FB0 +/* 0A87B0 800A7BB0 8FBF0024 */ lw $ra, 0x24($sp) +/* 0A87B4 800A7BB4 80820193 */ lb $v0, 0x193($a0) +/* 0A87B8 800A7BB8 00000000 */ nop +/* 0A87BC 800A7BBC 184000FB */ blez $v0, .L800A7FAC +/* 0A87C0 800A7BC0 00025880 */ sll $t3, $v0, 2 +/* 0A87C4 800A7BC4 008B6021 */ addu $t4, $a0, $t3 +/* 0A87C8 800A7BC8 8D8D0128 */ lw $t5, 0x128($t4) +/* 0A87CC 800A7BCC 00000000 */ nop +/* 0A87D0 800A7BD0 29A100B4 */ slti $at, $t5, 0xb4 +/* 0A87D4 800A7BD4 102000F6 */ beqz $at, .L800A7FB0 +/* 0A87D8 800A7BD8 8FBF0024 */ lw $ra, 0x24($sp) +.L800A7BDC: +/* 0A87DC 800A7BDC 80CA01D8 */ lb $t2, 0x1d8($a2) +/* 0A87E0 800A7BE0 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A87E4 800A7BE4 154000F2 */ bnez $t2, .L800A7FB0 +/* 0A87E8 800A7BE8 8FBF0024 */ lw $ra, 0x24($sp) +/* 0A87EC 800A7BEC 8D086CDC */ lw $t0, %lo(D_80126CDC)($t0) +/* 0A87F0 800A7BF0 80C20193 */ lb $v0, 0x193($a2) +/* 0A87F4 800A7BF4 8109015A */ lb $t1, 0x15a($t0) +/* 0A87F8 800A7BF8 18400014 */ blez $v0, .L800A7C4C +/* 0A87FC 800A7BFC 2529007F */ addiu $t1, $t1, 0x7f +/* 0A8800 800A7C00 00027080 */ sll $t6, $v0, 2 +/* 0A8804 800A7C04 00CE1821 */ addu $v1, $a2, $t6 +/* 0A8808 800A7C08 8C6F0128 */ lw $t7, 0x128($v1) +/* 0A880C 800A7C0C 3C188012 */ lui $t8, %hi(D_80126D60) # $t8, 0x8012 +/* 0A8810 800A7C10 29E100B4 */ slti $at, $t7, 0xb4 +/* 0A8814 800A7C14 1020000D */ beqz $at, .L800A7C4C +/* 0A8818 800A7C18 00000000 */ nop +/* 0A881C 800A7C1C 8F186D60 */ lw $t8, %lo(D_80126D60)($t8) +/* 0A8820 800A7C20 240B0001 */ li $t3, 1 +/* 0A8824 800A7C24 8319004B */ lb $t9, 0x4b($t8) +/* 0A8828 800A7C28 00000000 */ nop +/* 0A882C 800A7C2C 0059082A */ slt $at, $v0, $t9 +/* 0A8830 800A7C30 10200006 */ beqz $at, .L800A7C4C +/* 0A8834 800A7C34 00000000 */ nop +/* 0A8838 800A7C38 8C700124 */ lw $s0, 0x124($v1) +/* 0A883C 800A7C3C 15200028 */ bnez $t1, .L800A7CE0 +/* 0A8840 800A7C40 AFAB0048 */ sw $t3, 0x48($sp) +/* 0A8844 800A7C44 10000026 */ b .L800A7CE0 +/* 0A8848 800A7C48 240900B4 */ li $t1, 180 +.L800A7C4C: +/* 0A884C 800A7C4C 80C50194 */ lb $a1, 0x194($a2) +/* 0A8850 800A7C50 00008025 */ move $s0, $zero +/* 0A8854 800A7C54 04A00011 */ bltz $a1, .L800A7C9C +/* 0A8858 800A7C58 00001025 */ move $v0, $zero +/* 0A885C 800A7C5C 3C0C8012 */ lui $t4, %hi(D_80126D60) # $t4, 0x8012 +/* 0A8860 800A7C60 8D8C6D60 */ lw $t4, %lo(D_80126D60)($t4) +/* 0A8864 800A7C64 00026880 */ sll $t5, $v0, 2 +/* 0A8868 800A7C68 8184004B */ lb $a0, 0x4b($t4) +/* 0A886C 800A7C6C 00CD1821 */ addu $v1, $a2, $t5 +/* 0A8870 800A7C70 1880000A */ blez $a0, .L800A7C9C +/* 0A8874 800A7C74 00000000 */ nop +.L800A7C78: +/* 0A8878 800A7C78 8C6E0128 */ lw $t6, 0x128($v1) +/* 0A887C 800A7C7C 24420001 */ addiu $v0, $v0, 1 +/* 0A8880 800A7C80 00A2082A */ slt $at, $a1, $v0 +/* 0A8884 800A7C84 24630004 */ addiu $v1, $v1, 4 +/* 0A8888 800A7C88 14200004 */ bnez $at, .L800A7C9C +/* 0A888C 800A7C8C 020E8021 */ addu $s0, $s0, $t6 +/* 0A8890 800A7C90 0044082A */ slt $at, $v0, $a0 +/* 0A8894 800A7C94 1420FFF8 */ bnez $at, .L800A7C78 +/* 0A8898 800A7C98 00000000 */ nop +.L800A7C9C: +/* 0A889C 800A7C9C 2E030001 */ sltiu $v1, $s0, 1 +/* 0A88A0 800A7CA0 14600009 */ bnez $v1, .L800A7CC8 +/* 0A88A4 800A7CA4 00000000 */ nop +/* 0A88A8 800A7CA8 000A182B */ sltu $v1, $zero, $t2 +/* 0A88AC 800A7CAC 14600006 */ bnez $v1, .L800A7CC8 +/* 0A88B0 800A7CB0 00000000 */ nop +/* 0A88B4 800A7CB4 0C01BAA8 */ jal func_8006EAA0 +/* 0A88B8 800A7CB8 00000000 */ nop +/* 0A88BC 800A7CBC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A88C0 800A7CC0 8D086CDC */ lw $t0, %lo(D_80126CDC)($t0) +/* 0A88C4 800A7CC4 0002182B */ sltu $v1, $zero, $v0 +.L800A7CC8: +/* 0A88C8 800A7CC8 AFA30048 */ sw $v1, 0x48($sp) +/* 0A88CC 800A7CCC 240FFF81 */ li $t7, -127 +/* 0A88D0 800A7CD0 A10F015A */ sb $t7, 0x15a($t0) +/* 0A88D4 800A7CD4 3C078012 */ lui $a3, %hi(D_80126D0C) # $a3, 0x8012 +/* 0A88D8 800A7CD8 8CE76D0C */ lw $a3, %lo(D_80126D0C)($a3) +/* 0A88DC 800A7CDC 00004825 */ move $t1, $zero +.L800A7CE0: +/* 0A88E0 800A7CE0 14E0000D */ bnez $a3, .L800A7D18 +/* 0A88E4 800A7CE4 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0A88E8 800A7CE8 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 +/* 0A88EC 800A7CEC 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) +/* 0A88F0 800A7CF0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A88F4 800A7CF4 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A88F8 800A7CF8 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A88FC 800A7CFC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A8900 800A7D00 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0A8904 800A7D04 AFA90044 */ sw $t1, 0x44($sp) +/* 0A8908 800A7D08 0C02A980 */ jal func_800AA600 +/* 0A890C 800A7D0C 24E70140 */ addiu $a3, $a3, 0x140 +/* 0A8910 800A7D10 8FA90044 */ lw $t1, 0x44($sp) +/* 0A8914 800A7D14 00000000 */ nop +.L800A7D18: +/* 0A8918 800A7D18 34048CA0 */ li $a0, 36000 +/* 0A891C 800A7D1C 0C00322D */ jal func_8000C8B4 +/* 0A8920 800A7D20 AFA90044 */ sw $t1, 0x44($sp) +/* 0A8924 800A7D24 8FA90044 */ lw $t1, 0x44($sp) +/* 0A8928 800A7D28 0050082A */ slt $at, $v0, $s0 +/* 0A892C 800A7D2C 10200005 */ beqz $at, .L800A7D44 +/* 0A8930 800A7D30 34048CA0 */ li $a0, 36000 +/* 0A8934 800A7D34 0C00322D */ jal func_8000C8B4 +/* 0A8938 800A7D38 AFA90044 */ sw $t1, 0x44($sp) +/* 0A893C 800A7D3C 8FA90044 */ lw $t1, 0x44($sp) +/* 0A8940 800A7D40 00408025 */ move $s0, $v0 +.L800A7D44: +/* 0A8944 800A7D44 02002025 */ move $a0, $s0 +/* 0A8948 800A7D48 27A50054 */ addiu $a1, $sp, 0x54 +/* 0A894C 800A7D4C 27A60050 */ addiu $a2, $sp, 0x50 +/* 0A8950 800A7D50 27A7004C */ addiu $a3, $sp, 0x4c +/* 0A8954 800A7D54 0C0165E4 */ jal func_80059790 +/* 0A8958 800A7D58 AFA90044 */ sw $t1, 0x44($sp) +/* 0A895C 800A7D5C 8FB80048 */ lw $t8, 0x48($sp) +/* 0A8960 800A7D60 8FA90044 */ lw $t1, 0x44($sp) +/* 0A8964 800A7D64 17000006 */ bnez $t8, .L800A7D80 +/* 0A8968 800A7D68 34048CA0 */ li $a0, 36000 +/* 0A896C 800A7D6C 0C00322D */ jal func_8000C8B4 +/* 0A8970 800A7D70 AFA90044 */ sw $t1, 0x44($sp) +/* 0A8974 800A7D74 8FA90044 */ lw $t1, 0x44($sp) +/* 0A8978 800A7D78 14500028 */ bne $v0, $s0, .L800A7E1C +/* 0A897C 800A7D7C 8FAB004C */ lw $t3, 0x4c($sp) +.L800A7D80: +/* 0A8980 800A7D80 8FB90064 */ lw $t9, 0x64($sp) +/* 0A8984 800A7D84 3C108012 */ lui $s0, %hi(D_80126D36) # $s0, 0x8012 +/* 0A8988 800A7D88 0329082A */ slt $at, $t9, $t1 +/* 0A898C 800A7D8C 10200003 */ beqz $at, .L800A7D9C +/* 0A8990 800A7D90 26106D36 */ addiu $s0, %lo(D_80126D36) # addiu $s0, $s0, 0x6d36 +/* 0A8994 800A7D94 10000002 */ b .L800A7DA0 +/* 0A8998 800A7D98 01394823 */ subu $t1, $t1, $t9 +.L800A7D9C: +/* 0A899C 800A7D9C 00004825 */ move $t1, $zero +.L800A7DA0: +/* 0A89A0 800A7DA0 2401001E */ li $at, 30 +/* 0A89A4 800A7DA4 0121001A */ div $zero, $t1, $at +/* 0A89A8 800A7DA8 3C0C8012 */ lui $t4, %hi(D_80126CDC) # $t4, 0x8012 +/* 0A89AC 800A7DAC 8D8C6CDC */ lw $t4, %lo(D_80126CDC)($t4) +/* 0A89B0 800A7DB0 252BFF81 */ addiu $t3, $t1, -0x7f +/* 0A89B4 800A7DB4 240E0001 */ li $t6, 1 +/* 0A89B8 800A7DB8 A18B015A */ sb $t3, 0x15a($t4) +/* 0A89BC 800A7DBC 00006810 */ mfhi $t5 +/* 0A89C0 800A7DC0 29A10015 */ slti $at, $t5, 0x15 +/* 0A89C4 800A7DC4 14200005 */ bnez $at, .L800A7DDC +/* 0A89C8 800A7DC8 00000000 */ nop +/* 0A89CC 800A7DCC 3C108012 */ lui $s0, %hi(D_80126D36) # $s0, 0x8012 +/* 0A89D0 800A7DD0 26106D36 */ addiu $s0, %lo(D_80126D36) # addiu $s0, $s0, 0x6d36 +/* 0A89D4 800A7DD4 10000075 */ b .L800A7FAC +/* 0A89D8 800A7DD8 A20E0000 */ sb $t6, ($s0) +.L800A7DDC: +/* 0A89DC 800A7DDC 920F0000 */ lbu $t7, ($s0) +/* 0A89E0 800A7DE0 3C188012 */ lui $t8, %hi(D_80126D0C) # $t8, 0x8012 +/* 0A89E4 800A7DE4 11E00008 */ beqz $t7, .L800A7E08 +/* 0A89E8 800A7DE8 00000000 */ nop +/* 0A89EC 800A7DEC 8F186D0C */ lw $t8, %lo(D_80126D0C)($t8) +/* 0A89F0 800A7DF0 240400FE */ li $a0, 254 +/* 0A89F4 800A7DF4 17000003 */ bnez $t8, .L800A7E04 +/* 0A89F8 800A7DF8 00000000 */ nop +/* 0A89FC 800A7DFC 0C000741 */ jal func_80001D04 +/* 0A8A00 800A7E00 00002825 */ move $a1, $zero +.L800A7E04: +/* 0A8A04 800A7E04 A2000000 */ sb $zero, ($s0) +.L800A7E08: +/* 0A8A08 800A7E08 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A8A0C 800A7E0C 8D086CDC */ lw $t0, %lo(D_80126CDC)($t0) +/* 0A8A10 800A7E10 10000028 */ b .L800A7EB4 +/* 0A8A14 800A7E14 00000000 */ nop +/* 0A8A18 800A7E18 8FAB004C */ lw $t3, 0x4c($sp) +.L800A7E1C: +/* 0A8A1C 800A7E1C 2402000A */ li $v0, 10 +/* 0A8A20 800A7E20 0162001A */ div $zero, $t3, $v0 +/* 0A8A24 800A7E24 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A8A28 800A7E28 8D086CDC */ lw $t0, %lo(D_80126CDC)($t0) +/* 0A8A2C 800A7E2C 00000000 */ nop +/* 0A8A30 800A7E30 8119015B */ lb $t9, 0x15b($t0) +/* 0A8A34 800A7E34 14400002 */ bnez $v0, .L800A7E40 +/* 0A8A38 800A7E38 00000000 */ nop +/* 0A8A3C 800A7E3C 0007000D */ break 7 +.L800A7E40: +/* 0A8A40 800A7E40 2401FFFF */ li $at, -1 +/* 0A8A44 800A7E44 14410004 */ bne $v0, $at, .L800A7E58 +/* 0A8A48 800A7E48 3C018000 */ lui $at, 0x8000 +/* 0A8A4C 800A7E4C 15610002 */ bne $t3, $at, .L800A7E58 +/* 0A8A50 800A7E50 00000000 */ nop +/* 0A8A54 800A7E54 0006000D */ break 6 +.L800A7E58: +/* 0A8A58 800A7E58 00006012 */ mflo $t4 +/* 0A8A5C 800A7E5C 00000000 */ nop +/* 0A8A60 800A7E60 00000000 */ nop +/* 0A8A64 800A7E64 01820019 */ multu $t4, $v0 +/* 0A8A68 800A7E68 00006812 */ mflo $t5 +/* 0A8A6C 800A7E6C 032D7021 */ addu $t6, $t9, $t5 +/* 0A8A70 800A7E70 AFAE004C */ sw $t6, 0x4c($sp) +/* 0A8A74 800A7E74 810F015B */ lb $t7, 0x15b($t0) +/* 0A8A78 800A7E78 00000000 */ nop +/* 0A8A7C 800A7E7C 25F80001 */ addiu $t8, $t7, 1 +/* 0A8A80 800A7E80 A118015B */ sb $t8, 0x15b($t0) +/* 0A8A84 800A7E84 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A8A88 800A7E88 8D086CDC */ lw $t0, %lo(D_80126CDC)($t0) +/* 0A8A8C 800A7E8C 00000000 */ nop +/* 0A8A90 800A7E90 810B015B */ lb $t3, 0x15b($t0) +/* 0A8A94 800A7E94 00000000 */ nop +/* 0A8A98 800A7E98 2961000A */ slti $at, $t3, 0xa +/* 0A8A9C 800A7E9C 14200005 */ bnez $at, .L800A7EB4 +/* 0A8AA0 800A7EA0 00000000 */ nop +/* 0A8AA4 800A7EA4 A100015B */ sb $zero, 0x15b($t0) +/* 0A8AA8 800A7EA8 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 +/* 0A8AAC 800A7EAC 8D086CDC */ lw $t0, %lo(D_80126CDC)($t0) +/* 0A8AB0 800A7EB0 00000000 */ nop +.L800A7EB4: +/* 0A8AB4 800A7EB4 3C0C8012 */ lui $t4, %hi(D_80126D37) # $t4, 0x8012 +/* 0A8AB8 800A7EB8 918C6D37 */ lbu $t4, %lo(D_80126D37)($t4) +/* 0A8ABC 800A7EBC 24010001 */ li $at, 1 +/* 0A8AC0 800A7EC0 1581001A */ bne $t4, $at, .L800A7F2C +/* 0A8AC4 800A7EC4 00000000 */ nop +/* 0A8AC8 800A7EC8 4459F800 */ cfc1 $t9, $31 +/* 0A8ACC 800A7ECC C504016C */ lwc1 $f4, 0x16c($t0) +/* 0A8AD0 800A7ED0 37210003 */ ori $at, $t9, 3 +/* 0A8AD4 800A7ED4 38210002 */ xori $at, $at, 2 +/* 0A8AD8 800A7ED8 44C1F800 */ ctc1 $at, $31 +/* 0A8ADC 800A7EDC C5080170 */ lwc1 $f8, 0x170($t0) +/* 0A8AE0 800A7EE0 460021A4 */ cvt.w.s $f6, $f4 +/* 0A8AE4 800A7EE4 8FAE004C */ lw $t6, 0x4c($sp) +/* 0A8AE8 800A7EE8 44D9F800 */ ctc1 $t9, $31 +/* 0A8AEC 800A7EEC 44043000 */ mfc1 $a0, $f6 +/* 0A8AF0 800A7EF0 8FA60054 */ lw $a2, 0x54($sp) +/* 0A8AF4 800A7EF4 444DF800 */ cfc1 $t5, $31 +/* 0A8AF8 800A7EF8 8FA70050 */ lw $a3, 0x50($sp) +/* 0A8AFC 800A7EFC 35A10003 */ ori $at, $t5, 3 +/* 0A8B00 800A7F00 38210002 */ xori $at, $at, 2 +/* 0A8B04 800A7F04 44C1F800 */ ctc1 $at, $31 +/* 0A8B08 800A7F08 AFA00014 */ sw $zero, 0x14($sp) +/* 0A8B0C 800A7F0C 460042A4 */ cvt.w.s $f10, $f8 +/* 0A8B10 800A7F10 AFAE0010 */ sw $t6, 0x10($sp) +/* 0A8B14 800A7F14 44055000 */ mfc1 $a1, $f10 +/* 0A8B18 800A7F18 44CDF800 */ ctc1 $t5, $31 +/* 0A8B1C 800A7F1C 0C029FEF */ jal func_800A7FBC +/* 0A8B20 800A7F20 00000000 */ nop +/* 0A8B24 800A7F24 10000018 */ b .L800A7F88 +/* 0A8B28 800A7F28 00000000 */ nop +.L800A7F2C: +/* 0A8B2C 800A7F2C 444FF800 */ cfc1 $t7, $31 +/* 0A8B30 800A7F30 C510016C */ lwc1 $f16, 0x16c($t0) +/* 0A8B34 800A7F34 35E10003 */ ori $at, $t7, 3 +/* 0A8B38 800A7F38 38210002 */ xori $at, $at, 2 +/* 0A8B3C 800A7F3C 44C1F800 */ ctc1 $at, $31 +/* 0A8B40 800A7F40 C5040170 */ lwc1 $f4, 0x170($t0) +/* 0A8B44 800A7F44 460084A4 */ cvt.w.s $f18, $f16 +/* 0A8B48 800A7F48 8FAB004C */ lw $t3, 0x4c($sp) +/* 0A8B4C 800A7F4C 44CFF800 */ ctc1 $t7, $31 +/* 0A8B50 800A7F50 44049000 */ mfc1 $a0, $f18 +/* 0A8B54 800A7F54 8FA60054 */ lw $a2, 0x54($sp) +/* 0A8B58 800A7F58 4458F800 */ cfc1 $t8, $31 +/* 0A8B5C 800A7F5C 8FA70050 */ lw $a3, 0x50($sp) +/* 0A8B60 800A7F60 37010003 */ ori $at, $t8, 3 +/* 0A8B64 800A7F64 38210002 */ xori $at, $at, 2 +/* 0A8B68 800A7F68 44C1F800 */ ctc1 $at, $31 +/* 0A8B6C 800A7F6C 240C0001 */ li $t4, 1 +/* 0A8B70 800A7F70 460021A4 */ cvt.w.s $f6, $f4 +/* 0A8B74 800A7F74 AFAC0014 */ sw $t4, 0x14($sp) +/* 0A8B78 800A7F78 44053000 */ mfc1 $a1, $f6 +/* 0A8B7C 800A7F7C 44D8F800 */ ctc1 $t8, $31 +/* 0A8B80 800A7F80 0C029FEF */ jal func_800A7FBC +/* 0A8B84 800A7F84 AFAB0010 */ sw $t3, 0x10($sp) +.L800A7F88: +/* 0A8B88 800A7F88 3C038012 */ lui $v1, %hi(D_80126CFC) # $v1, 0x8012 +/* 0A8B8C 800A7F8C 8C636CFC */ lw $v1, %lo(D_80126CFC)($v1) +/* 0A8B90 800A7F90 3C018012 */ lui $at, %hi(D_80126CFC) # $at, 0x8012 +/* 0A8B94 800A7F94 24790008 */ addiu $t9, $v1, 8 +/* 0A8B98 800A7F98 AC396CFC */ sw $t9, %lo(D_80126CFC)($at) +/* 0A8B9C 800A7F9C 3C0DFA00 */ lui $t5, 0xfa00 +/* 0A8BA0 800A7FA0 240EFFFF */ li $t6, -1 +/* 0A8BA4 800A7FA4 AC6E0004 */ sw $t6, 4($v1) +/* 0A8BA8 800A7FA8 AC6D0000 */ sw $t5, ($v1) +.L800A7FAC: +/* 0A8BAC 800A7FAC 8FBF0024 */ lw $ra, 0x24($sp) +.L800A7FB0: +/* 0A8BB0 800A7FB0 8FB00020 */ lw $s0, 0x20($sp) +/* 0A8BB4 800A7FB4 03E00008 */ jr $ra +/* 0A8BB8 800A7FB8 27BD0060 */ addiu $sp, $sp, 0x60 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A7FBC.s b/asm/non_matchings/unknown_09F8F0/func_800A7FBC.s new file mode 100644 index 00000000..5aabc4fc --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A7FBC.s @@ -0,0 +1,270 @@ +glabel func_800A7FBC +/* 0A8BBC 800A7FBC 27BDFF80 */ addiu $sp, $sp, -0x80 +/* 0A8BC0 800A7FC0 44842000 */ mtc1 $a0, $f4 +/* 0A8BC4 800A7FC4 44854000 */ mtc1 $a1, $f8 +/* 0A8BC8 800A7FC8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0A8BCC 800A7FCC 468021A0 */ cvt.s.w $f6, $f4 +/* 0A8BD0 800A7FD0 44818000 */ mtc1 $at, $f16 +/* 0A8BD4 800A7FD4 44809000 */ mtc1 $zero, $f18 +/* 0A8BD8 800A7FD8 468042A0 */ cvt.s.w $f10, $f8 +/* 0A8BDC 800A7FDC 8FAE0094 */ lw $t6, 0x94($sp) +/* 0A8BE0 800A7FE0 AFBF0034 */ sw $ra, 0x34($sp) +/* 0A8BE4 800A7FE4 AFB50030 */ sw $s5, 0x30($sp) +/* 0A8BE8 800A7FE8 AFB4002C */ sw $s4, 0x2c($sp) +/* 0A8BEC 800A7FEC AFB30028 */ sw $s3, 0x28($sp) +/* 0A8BF0 800A7FF0 AFB20024 */ sw $s2, 0x24($sp) +/* 0A8BF4 800A7FF4 AFB10020 */ sw $s1, 0x20($sp) +/* 0A8BF8 800A7FF8 AFB0001C */ sw $s0, 0x1c($sp) +/* 0A8BFC 800A7FFC E7B50010 */ swc1 $f21, 0x10($sp) +/* 0A8C00 800A8000 E7B40014 */ swc1 $f20, 0x14($sp) +/* 0A8C04 800A8004 AFA60088 */ sw $a2, 0x88($sp) +/* 0A8C08 800A8008 AFA7008C */ sw $a3, 0x8c($sp) +/* 0A8C0C 800A800C E7A6006C */ swc1 $f6, 0x6c($sp) +/* 0A8C10 800A8010 E7AA0070 */ swc1 $f10, 0x70($sp) +/* 0A8C14 800A8014 A7A00064 */ sh $zero, 0x64($sp) +/* 0A8C18 800A8018 A7A00062 */ sh $zero, 0x62($sp) +/* 0A8C1C 800A801C A7A00060 */ sh $zero, 0x60($sp) +/* 0A8C20 800A8020 E7B00068 */ swc1 $f16, 0x68($sp) +/* 0A8C24 800A8024 15C0000A */ bnez $t6, .L800A8050 +/* 0A8C28 800A8028 E7B20074 */ swc1 $f18, 0x74($sp) +/* 0A8C2C 800A802C 240F000A */ li $t7, 10 +/* 0A8C30 800A8030 2418000B */ li $t8, 11 +/* 0A8C34 800A8034 2402000B */ li $v0, 11 +/* 0A8C38 800A8038 2403000A */ li $v1, 10 +/* 0A8C3C 800A803C AFAF0054 */ sw $t7, 0x54($sp) +/* 0A8C40 800A8040 24080002 */ li $t0, 2 +/* 0A8C44 800A8044 24140009 */ li $s4, 9 +/* 0A8C48 800A8048 10000009 */ b .L800A8070 +/* 0A8C4C 800A804C AFB80048 */ sw $t8, 0x48($sp) +.L800A8050: +/* 0A8C50 800A8050 24190007 */ li $t9, 7 +/* 0A8C54 800A8054 2409000C */ li $t1, 12 +/* 0A8C58 800A8058 2402000A */ li $v0, 10 +/* 0A8C5C 800A805C 24030008 */ li $v1, 8 +/* 0A8C60 800A8060 AFB90054 */ sw $t9, 0x54($sp) +/* 0A8C64 800A8064 00004025 */ move $t0, $zero +/* 0A8C68 800A8068 2414000A */ li $s4, 10 +/* 0A8C6C 800A806C AFA90048 */ sw $t1, 0x48($sp) +.L800A8070: +/* 0A8C70 800A8070 8FAA0088 */ lw $t2, 0x88($sp) +/* 0A8C74 800A8074 2415000A */ li $s5, 10 +/* 0A8C78 800A8078 0155001A */ div $zero, $t2, $s5 +/* 0A8C7C 800A807C 3C108012 */ lui $s0, %hi(D_80126CFC) # $s0, 0x8012 +/* 0A8C80 800A8080 3C118012 */ lui $s1, %hi(D_80126D00) # $s1, 0x8012 +/* 0A8C84 800A8084 3C128012 */ lui $s2, %hi(D_80126D04) # $s2, 0x8012 +/* 0A8C88 800A8088 26526D04 */ addiu $s2, %lo(D_80126D04) # addiu $s2, $s2, 0x6d04 +/* 0A8C8C 800A808C 26316D00 */ addiu $s1, %lo(D_80126D00) # addiu $s1, $s1, 0x6d00 +/* 0A8C90 800A8090 26106CFC */ addiu $s0, %lo(D_80126CFC) # addiu $s0, $s0, 0x6cfc +/* 0A8C94 800A8094 27B30060 */ addiu $s3, $sp, 0x60 +/* 0A8C98 800A8098 A7B40066 */ sh $s4, 0x66($sp) +/* 0A8C9C 800A809C 16A00002 */ bnez $s5, .L800A80A8 +/* 0A8CA0 800A80A0 00000000 */ nop +/* 0A8CA4 800A80A4 0007000D */ break 7 +.L800A80A8: +/* 0A8CA8 800A80A8 2401FFFF */ li $at, -1 +/* 0A8CAC 800A80AC 16A10004 */ bne $s5, $at, .L800A80C0 +/* 0A8CB0 800A80B0 3C018000 */ lui $at, 0x8000 +/* 0A8CB4 800A80B4 15410002 */ bne $t2, $at, .L800A80C0 +/* 0A8CB8 800A80B8 00000000 */ nop +/* 0A8CBC 800A80BC 0006000D */ break 6 +.L800A80C0: +/* 0A8CC0 800A80C0 02603825 */ move $a3, $s3 +/* 0A8CC4 800A80C4 02002025 */ move $a0, $s0 +/* 0A8CC8 800A80C8 02202825 */ move $a1, $s1 +/* 0A8CCC 800A80CC 02403025 */ move $a2, $s2 +/* 0A8CD0 800A80D0 AFA2005C */ sw $v0, 0x5c($sp) +/* 0A8CD4 800A80D4 AFA30058 */ sw $v1, 0x58($sp) +/* 0A8CD8 800A80D8 AFA80050 */ sw $t0, 0x50($sp) +/* 0A8CDC 800A80DC 00005812 */ mflo $t3 +/* 0A8CE0 800A80E0 A7AB0078 */ sh $t3, 0x78($sp) +/* 0A8CE4 800A80E4 0C02A980 */ jal func_800AA600 +/* 0A8CE8 800A80E8 00000000 */ nop +/* 0A8CEC 800A80EC 8FAC0088 */ lw $t4, 0x88($sp) +/* 0A8CF0 800A80F0 8FA2005C */ lw $v0, 0x5c($sp) +/* 0A8CF4 800A80F4 0195001A */ div $zero, $t4, $s5 +/* 0A8CF8 800A80F8 44822000 */ mtc1 $v0, $f4 +/* 0A8CFC 800A80FC C7A6006C */ lwc1 $f6, 0x6c($sp) +/* 0A8D00 800A8100 46802020 */ cvt.s.w $f0, $f4 +/* 0A8D04 800A8104 8FA30058 */ lw $v1, 0x58($sp) +/* 0A8D08 800A8108 8FA80050 */ lw $t0, 0x50($sp) +/* 0A8D0C 800A810C 46003200 */ add.s $f8, $f6, $f0 +/* 0A8D10 800A8110 E7A00044 */ swc1 $f0, 0x44($sp) +/* 0A8D14 800A8114 E7A8006C */ swc1 $f8, 0x6c($sp) +/* 0A8D18 800A8118 16A00002 */ bnez $s5, .L800A8124 +/* 0A8D1C 800A811C 00000000 */ nop +/* 0A8D20 800A8120 0007000D */ break 7 +.L800A8124: +/* 0A8D24 800A8124 2401FFFF */ li $at, -1 +/* 0A8D28 800A8128 16A10004 */ bne $s5, $at, .L800A813C +/* 0A8D2C 800A812C 3C018000 */ lui $at, 0x8000 +/* 0A8D30 800A8130 15810002 */ bne $t4, $at, .L800A813C +/* 0A8D34 800A8134 00000000 */ nop +/* 0A8D38 800A8138 0006000D */ break 6 +.L800A813C: +/* 0A8D3C 800A813C 02002025 */ move $a0, $s0 +/* 0A8D40 800A8140 02202825 */ move $a1, $s1 +/* 0A8D44 800A8144 02403025 */ move $a2, $s2 +/* 0A8D48 800A8148 02603825 */ move $a3, $s3 +/* 0A8D4C 800A814C 00006810 */ mfhi $t5 +/* 0A8D50 800A8150 A7AD0078 */ sh $t5, 0x78($sp) +/* 0A8D54 800A8154 0C02A980 */ jal func_800AA600 +/* 0A8D58 800A8158 00000000 */ nop +/* 0A8D5C 800A815C 8FA30058 */ lw $v1, 0x58($sp) +/* 0A8D60 800A8160 8FA80050 */ lw $t0, 0x50($sp) +/* 0A8D64 800A8164 44835000 */ mtc1 $v1, $f10 +/* 0A8D68 800A8168 44882000 */ mtc1 $t0, $f4 +/* 0A8D6C 800A816C 46805020 */ cvt.s.w $f0, $f10 +/* 0A8D70 800A8170 C7B0006C */ lwc1 $f16, 0x6c($sp) +/* 0A8D74 800A8174 C7A60070 */ lwc1 $f6, 0x70($sp) +/* 0A8D78 800A8178 46802520 */ cvt.s.w $f20, $f4 +/* 0A8D7C 800A817C 8FAE0048 */ lw $t6, 0x48($sp) +/* 0A8D80 800A8180 A7A00078 */ sh $zero, 0x78($sp) +/* 0A8D84 800A8184 46008480 */ add.s $f18, $f16, $f0 +/* 0A8D88 800A8188 E7A00040 */ swc1 $f0, 0x40($sp) +/* 0A8D8C 800A818C 46143200 */ add.s $f8, $f6, $f20 +/* 0A8D90 800A8190 E7B2006C */ swc1 $f18, 0x6c($sp) +/* 0A8D94 800A8194 E7A80070 */ swc1 $f8, 0x70($sp) +/* 0A8D98 800A8198 02002025 */ move $a0, $s0 +/* 0A8D9C 800A819C 02202825 */ move $a1, $s1 +/* 0A8DA0 800A81A0 02403025 */ move $a2, $s2 +/* 0A8DA4 800A81A4 02603825 */ move $a3, $s3 +/* 0A8DA8 800A81A8 0C02A980 */ jal func_800AA600 +/* 0A8DAC 800A81AC A7AE0066 */ sh $t6, 0x66($sp) +/* 0A8DB0 800A81B0 8FB8008C */ lw $t8, 0x8c($sp) +/* 0A8DB4 800A81B4 8FAF0054 */ lw $t7, 0x54($sp) +/* 0A8DB8 800A81B8 0315001A */ div $zero, $t8, $s5 +/* 0A8DBC 800A81BC 448F5000 */ mtc1 $t7, $f10 +/* 0A8DC0 800A81C0 C7B0006C */ lwc1 $f16, 0x6c($sp) +/* 0A8DC4 800A81C4 46805020 */ cvt.s.w $f0, $f10 +/* 0A8DC8 800A81C8 C7A40070 */ lwc1 $f4, 0x70($sp) +/* 0A8DCC 800A81CC A7B40066 */ sh $s4, 0x66($sp) +/* 0A8DD0 800A81D0 46008480 */ add.s $f18, $f16, $f0 +/* 0A8DD4 800A81D4 E7A00038 */ swc1 $f0, 0x38($sp) +/* 0A8DD8 800A81D8 46142181 */ sub.s $f6, $f4, $f20 +/* 0A8DDC 800A81DC E7B2006C */ swc1 $f18, 0x6c($sp) +/* 0A8DE0 800A81E0 E7A60070 */ swc1 $f6, 0x70($sp) +/* 0A8DE4 800A81E4 16A00002 */ bnez $s5, .L800A81F0 +/* 0A8DE8 800A81E8 00000000 */ nop +/* 0A8DEC 800A81EC 0007000D */ break 7 +.L800A81F0: +/* 0A8DF0 800A81F0 2401FFFF */ li $at, -1 +/* 0A8DF4 800A81F4 16A10004 */ bne $s5, $at, .L800A8208 +/* 0A8DF8 800A81F8 3C018000 */ lui $at, 0x8000 +/* 0A8DFC 800A81FC 17010002 */ bne $t8, $at, .L800A8208 +/* 0A8E00 800A8200 00000000 */ nop +/* 0A8E04 800A8204 0006000D */ break 6 +.L800A8208: +/* 0A8E08 800A8208 02002025 */ move $a0, $s0 +/* 0A8E0C 800A820C 02202825 */ move $a1, $s1 +/* 0A8E10 800A8210 02403025 */ move $a2, $s2 +/* 0A8E14 800A8214 02603825 */ move $a3, $s3 +/* 0A8E18 800A8218 0000C812 */ mflo $t9 +/* 0A8E1C 800A821C A7B90078 */ sh $t9, 0x78($sp) +/* 0A8E20 800A8220 0C02A980 */ jal func_800AA600 +/* 0A8E24 800A8224 00000000 */ nop +/* 0A8E28 800A8228 8FA9008C */ lw $t1, 0x8c($sp) +/* 0A8E2C 800A822C C7A8006C */ lwc1 $f8, 0x6c($sp) +/* 0A8E30 800A8230 0135001A */ div $zero, $t1, $s5 +/* 0A8E34 800A8234 C7AA0044 */ lwc1 $f10, 0x44($sp) +/* 0A8E38 800A8238 02002025 */ move $a0, $s0 +/* 0A8E3C 800A823C 460A4400 */ add.s $f16, $f8, $f10 +/* 0A8E40 800A8240 02202825 */ move $a1, $s1 +/* 0A8E44 800A8244 E7B0006C */ swc1 $f16, 0x6c($sp) +/* 0A8E48 800A8248 16A00002 */ bnez $s5, .L800A8254 +/* 0A8E4C 800A824C 00000000 */ nop +/* 0A8E50 800A8250 0007000D */ break 7 +.L800A8254: +/* 0A8E54 800A8254 2401FFFF */ li $at, -1 +/* 0A8E58 800A8258 16A10004 */ bne $s5, $at, .L800A826C +/* 0A8E5C 800A825C 3C018000 */ lui $at, 0x8000 +/* 0A8E60 800A8260 15210002 */ bne $t1, $at, .L800A826C +/* 0A8E64 800A8264 00000000 */ nop +/* 0A8E68 800A8268 0006000D */ break 6 +.L800A826C: +/* 0A8E6C 800A826C 02403025 */ move $a2, $s2 +/* 0A8E70 800A8270 02603825 */ move $a3, $s3 +/* 0A8E74 800A8274 00005010 */ mfhi $t2 +/* 0A8E78 800A8278 A7AA0078 */ sh $t2, 0x78($sp) +/* 0A8E7C 800A827C 0C02A980 */ jal func_800AA600 +/* 0A8E80 800A8280 00000000 */ nop +/* 0A8E84 800A8284 C7B2006C */ lwc1 $f18, 0x6c($sp) +/* 0A8E88 800A8288 C7A40040 */ lwc1 $f4, 0x40($sp) +/* 0A8E8C 800A828C C7A80070 */ lwc1 $f8, 0x70($sp) +/* 0A8E90 800A8290 8FAB0048 */ lw $t3, 0x48($sp) +/* 0A8E94 800A8294 46049180 */ add.s $f6, $f18, $f4 +/* 0A8E98 800A8298 A7A00078 */ sh $zero, 0x78($sp) +/* 0A8E9C 800A829C 46144280 */ add.s $f10, $f8, $f20 +/* 0A8EA0 800A82A0 E7A6006C */ swc1 $f6, 0x6c($sp) +/* 0A8EA4 800A82A4 E7AA0070 */ swc1 $f10, 0x70($sp) +/* 0A8EA8 800A82A8 02002025 */ move $a0, $s0 +/* 0A8EAC 800A82AC 02202825 */ move $a1, $s1 +/* 0A8EB0 800A82B0 02403025 */ move $a2, $s2 +/* 0A8EB4 800A82B4 02603825 */ move $a3, $s3 +/* 0A8EB8 800A82B8 0C02A980 */ jal func_800AA600 +/* 0A8EBC 800A82BC A7AB0066 */ sh $t3, 0x66($sp) +/* 0A8EC0 800A82C0 8FAC0090 */ lw $t4, 0x90($sp) +/* 0A8EC4 800A82C4 C7B0006C */ lwc1 $f16, 0x6c($sp) +/* 0A8EC8 800A82C8 0195001A */ div $zero, $t4, $s5 +/* 0A8ECC 800A82CC C7B20038 */ lwc1 $f18, 0x38($sp) +/* 0A8ED0 800A82D0 C7A60070 */ lwc1 $f6, 0x70($sp) +/* 0A8ED4 800A82D4 46128100 */ add.s $f4, $f16, $f18 +/* 0A8ED8 800A82D8 A7B40066 */ sh $s4, 0x66($sp) +/* 0A8EDC 800A82DC 46143201 */ sub.s $f8, $f6, $f20 +/* 0A8EE0 800A82E0 E7A4006C */ swc1 $f4, 0x6c($sp) +/* 0A8EE4 800A82E4 E7A80070 */ swc1 $f8, 0x70($sp) +/* 0A8EE8 800A82E8 16A00002 */ bnez $s5, .L800A82F4 +/* 0A8EEC 800A82EC 00000000 */ nop +/* 0A8EF0 800A82F0 0007000D */ break 7 +.L800A82F4: +/* 0A8EF4 800A82F4 2401FFFF */ li $at, -1 +/* 0A8EF8 800A82F8 16A10004 */ bne $s5, $at, .L800A830C +/* 0A8EFC 800A82FC 3C018000 */ lui $at, 0x8000 +/* 0A8F00 800A8300 15810002 */ bne $t4, $at, .L800A830C +/* 0A8F04 800A8304 00000000 */ nop +/* 0A8F08 800A8308 0006000D */ break 6 +.L800A830C: +/* 0A8F0C 800A830C 02002025 */ move $a0, $s0 +/* 0A8F10 800A8310 02202825 */ move $a1, $s1 +/* 0A8F14 800A8314 02403025 */ move $a2, $s2 +/* 0A8F18 800A8318 02603825 */ move $a3, $s3 +/* 0A8F1C 800A831C 00006812 */ mflo $t5 +/* 0A8F20 800A8320 A7AD0078 */ sh $t5, 0x78($sp) +/* 0A8F24 800A8324 0C02A980 */ jal func_800AA600 +/* 0A8F28 800A8328 00000000 */ nop +/* 0A8F2C 800A832C 8FAE0090 */ lw $t6, 0x90($sp) +/* 0A8F30 800A8330 C7AA006C */ lwc1 $f10, 0x6c($sp) +/* 0A8F34 800A8334 01D5001A */ div $zero, $t6, $s5 +/* 0A8F38 800A8338 C7B00044 */ lwc1 $f16, 0x44($sp) +/* 0A8F3C 800A833C 02002025 */ move $a0, $s0 +/* 0A8F40 800A8340 46105480 */ add.s $f18, $f10, $f16 +/* 0A8F44 800A8344 02202825 */ move $a1, $s1 +/* 0A8F48 800A8348 E7B2006C */ swc1 $f18, 0x6c($sp) +/* 0A8F4C 800A834C 16A00002 */ bnez $s5, .L800A8358 +/* 0A8F50 800A8350 00000000 */ nop +/* 0A8F54 800A8354 0007000D */ break 7 +.L800A8358: +/* 0A8F58 800A8358 2401FFFF */ li $at, -1 +/* 0A8F5C 800A835C 16A10004 */ bne $s5, $at, .L800A8370 +/* 0A8F60 800A8360 3C018000 */ lui $at, 0x8000 +/* 0A8F64 800A8364 15C10002 */ bne $t6, $at, .L800A8370 +/* 0A8F68 800A8368 00000000 */ nop +/* 0A8F6C 800A836C 0006000D */ break 6 +.L800A8370: +/* 0A8F70 800A8370 02403025 */ move $a2, $s2 +/* 0A8F74 800A8374 02603825 */ move $a3, $s3 +/* 0A8F78 800A8378 00007810 */ mfhi $t7 +/* 0A8F7C 800A837C A7AF0078 */ sh $t7, 0x78($sp) +/* 0A8F80 800A8380 0C02A980 */ jal func_800AA600 +/* 0A8F84 800A8384 00000000 */ nop +/* 0A8F88 800A8388 8FBF0034 */ lw $ra, 0x34($sp) +/* 0A8F8C 800A838C C7B50010 */ lwc1 $f21, 0x10($sp) +/* 0A8F90 800A8390 C7B40014 */ lwc1 $f20, 0x14($sp) +/* 0A8F94 800A8394 8FB0001C */ lw $s0, 0x1c($sp) +/* 0A8F98 800A8398 8FB10020 */ lw $s1, 0x20($sp) +/* 0A8F9C 800A839C 8FB20024 */ lw $s2, 0x24($sp) +/* 0A8FA0 800A83A0 8FB30028 */ lw $s3, 0x28($sp) +/* 0A8FA4 800A83A4 8FB4002C */ lw $s4, 0x2c($sp) +/* 0A8FA8 800A83A8 8FB50030 */ lw $s5, 0x30($sp) +/* 0A8FAC 800A83AC 03E00008 */ jr $ra +/* 0A8FB0 800A83B0 27BD0080 */ addiu $sp, $sp, 0x80 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A83B4.s b/asm/non_matchings/unknown_09F8F0/func_800A83B4.s new file mode 100644 index 00000000..7f83a6d7 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A83B4.s @@ -0,0 +1,43 @@ +glabel func_800A83B4 +/* 0A8FB4 800A83B4 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0A8FB8 800A83B8 AFBF0024 */ sw $ra, 0x24($sp) +/* 0A8FBC 800A83BC AFB00020 */ sw $s0, 0x20($sp) +/* 0A8FC0 800A83C0 8C8E0038 */ lw $t6, 0x38($a0) +/* 0A8FC4 800A83C4 3C018012 */ lui $at, %hi(D_80126D54) # $at, 0x8012 +/* 0A8FC8 800A83C8 000EC402 */ srl $t8, $t6, 0x10 +/* 0A8FCC 800A83CC A0386D54 */ sb $t8, %lo(D_80126D54)($at) +/* 0A8FD0 800A83D0 8C990038 */ lw $t9, 0x38($a0) +/* 0A8FD4 800A83D4 3C018012 */ lui $at, %hi(D_80126D55) # $at, 0x8012 +/* 0A8FD8 800A83D8 00194A02 */ srl $t1, $t9, 8 +/* 0A8FDC 800A83DC A0296D55 */ sb $t1, %lo(D_80126D55)($at) +/* 0A8FE0 800A83E0 8C8B0038 */ lw $t3, 0x38($a0) +/* 0A8FE4 800A83E4 3C018012 */ lui $at, %hi(D_80126D56) # $at, 0x8012 +/* 0A8FE8 800A83E8 00808025 */ move $s0, $a0 +/* 0A8FEC 800A83EC A02B6D56 */ sb $t3, %lo(D_80126D56)($at) +/* 0A8FF0 800A83F0 8C840020 */ lw $a0, 0x20($a0) +/* 0A8FF4 800A83F4 27A7002C */ addiu $a3, $sp, 0x2c +/* 0A8FF8 800A83F8 3C058012 */ lui $a1, %hi(D_80126D1C) # $a1, 0x8012 +/* 0A8FFC 800A83FC 3C068012 */ lui $a2, %hi(D_80126D20) # $a2, 0x8012 +/* 0A9000 800A8400 24C66D20 */ addiu $a2, %lo(D_80126D20) # addiu $a2, $a2, 0x6d20 +/* 0A9004 800A8404 24A56D1C */ addiu $a1, %lo(D_80126D1C) # addiu $a1, $a1, 0x6d1c +/* 0A9008 800A8408 AFA70010 */ sw $a3, 0x10($sp) +/* 0A900C 800A840C 0C01F238 */ jal func_8007C8E0 +/* 0A9010 800A8410 AFA70014 */ sw $a3, 0x14($sp) +/* 0A9014 800A8414 8E040020 */ lw $a0, 0x20($s0) +/* 0A9018 800A8418 3C068012 */ lui $a2, %hi(D_80126D14) # $a2, 0x8012 +/* 0A901C 800A841C 3C078012 */ lui $a3, %hi(D_80126D18) # $a3, 0x8012 +/* 0A9020 800A8420 27AC002C */ addiu $t4, $sp, 0x2c +/* 0A9024 800A8424 AFAC0010 */ sw $t4, 0x10($sp) +/* 0A9028 800A8428 24E76D18 */ addiu $a3, %lo(D_80126D18) # addiu $a3, $a3, 0x6d18 +/* 0A902C 800A842C 24C66D14 */ addiu $a2, %lo(D_80126D14) # addiu $a2, $a2, 0x6d14 +/* 0A9030 800A8430 0C01F29A */ jal func_8007CA68 +/* 0A9034 800A8434 00002825 */ move $a1, $zero +/* 0A9038 800A8438 8E040020 */ lw $a0, 0x20($s0) +/* 0A903C 800A843C 0C01F04B */ jal func_8007C12C +/* 0A9040 800A8440 24050001 */ li $a1, 1 +/* 0A9044 800A8444 AE020020 */ sw $v0, 0x20($s0) +/* 0A9048 800A8448 8FBF0024 */ lw $ra, 0x24($sp) +/* 0A904C 800A844C 8FB00020 */ lw $s0, 0x20($sp) +/* 0A9050 800A8450 03E00008 */ jr $ra +/* 0A9054 800A8454 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A8458.s b/asm/non_matchings/unknown_09F8F0/func_800A8458.s new file mode 100644 index 00000000..a04bda95 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A8458.s @@ -0,0 +1,9 @@ +glabel func_800A8458 +/* 0A9058 800A8458 3C0E8012 */ lui $t6, %hi(D_80126D0C) # $t6, 0x8012 +/* 0A905C 800A845C 8DCE6D0C */ lw $t6, %lo(D_80126D0C)($t6) +/* 0A9060 800A8460 3C02800E */ lui $v0, 0x800e +/* 0A9064 800A8464 004E1021 */ addu $v0, $v0, $t6 +/* 0A9068 800A8468 804227A4 */ lb $v0, 0x27a4($v0) +/* 0A906C 800A846C 03E00008 */ jr $ra +/* 0A9070 800A8470 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800A8474.s b/asm/non_matchings/unknown_09F8F0/func_800A8474.s new file mode 100644 index 00000000..6f03f37b --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800A8474.s @@ -0,0 +1,2133 @@ +glabel func_800A8474 +/* 0A9074 800A8474 27BDFEA0 */ addiu $sp, $sp, -0x160 +/* 0A9078 800A8478 AFBF003C */ sw $ra, 0x3c($sp) +/* 0A907C 800A847C AFA40160 */ sw $a0, 0x160($sp) +/* 0A9080 800A8480 AFB40038 */ sw $s4, 0x38($sp) +/* 0A9084 800A8484 AFB30034 */ sw $s3, 0x34($sp) +/* 0A9088 800A8488 AFB20030 */ sw $s2, 0x30($sp) +/* 0A908C 800A848C AFB1002C */ sw $s1, 0x2c($sp) +/* 0A9090 800A8490 AFB00028 */ sw $s0, 0x28($sp) +/* 0A9094 800A8494 AFA50164 */ sw $a1, 0x164($sp) +/* 0A9098 800A8498 AFA60168 */ sw $a2, 0x168($sp) +/* 0A909C 800A849C AFA7016C */ sw $a3, 0x16c($sp) +/* 0A90A0 800A84A0 0C0282F5 */ jal func_800A0BD4 +/* 0A90A4 800A84A4 00E02025 */ move $a0, $a3 +/* 0A90A8 800A84A8 3C108012 */ lui $s0, %hi(D_80126CD8) # $s0, 0x8012 +/* 0A90AC 800A84AC 26106CD8 */ addiu $s0, %lo(D_80126CD8) # addiu $s0, $s0, 0x6cd8 +/* 0A90B0 800A84B0 8E0E0000 */ lw $t6, ($s0) +/* 0A90B4 800A84B4 3C0A8012 */ lui $t2, %hi(D_80126CD3) # $t2, 0x8012 +/* 0A90B8 800A84B8 A1C00001 */ sb $zero, 1($t6) +/* 0A90BC 800A84BC 8E0F0000 */ lw $t7, ($s0) +/* 0A90C0 800A84C0 3C018012 */ lui $at, %hi(D_80127180) # $at, 0x8012 +/* 0A90C4 800A84C4 A1E00017 */ sb $zero, 0x17($t7) +/* 0A90C8 800A84C8 8E180000 */ lw $t8, ($s0) +/* 0A90CC 800A84CC 3C0C8012 */ lui $t4, %hi(D_80126CD0) # $t4, 0x8012 +/* 0A90D0 800A84D0 A3000008 */ sb $zero, 8($t8) +/* 0A90D4 800A84D4 8E190000 */ lw $t9, ($s0) +/* 0A90D8 800A84D8 241800FF */ li $t8, 255 +/* 0A90DC 800A84DC A3200011 */ sb $zero, 0x11($t9) +/* 0A90E0 800A84E0 814A6CD3 */ lb $t2, %lo(D_80126CD3)($t2) +/* 0A90E4 800A84E4 AC207180 */ sw $zero, %lo(D_80127180)($at) +/* 0A90E8 800A84E8 314B0002 */ andi $t3, $t2, 2 +/* 0A90EC 800A84EC 1160001E */ beqz $t3, .L800A8568 +/* 0A90F0 800A84F0 3C198012 */ lui $t9, %hi(D_80126CF8) # $t9, 0x8012 +/* 0A90F4 800A84F4 818C6CD0 */ lb $t4, %lo(D_80126CD0)($t4) +/* 0A90F8 800A84F8 3C0D8012 */ lui $t5, %hi(D_8012718B) # $t5, 0x8012 +/* 0A90FC 800A84FC 448C2000 */ mtc1 $t4, $f4 +/* 0A9100 800A8500 91AD718B */ lbu $t5, %lo(D_8012718B)($t5) +/* 0A9104 800A8504 468021A0 */ cvt.s.w $f6, $f4 +/* 0A9108 800A8508 3C01437F */ li $at, 0x437F0000 # 255.000000 +/* 0A910C 800A850C 44810000 */ mtc1 $at, $f0 +/* 0A9110 800A8510 448D5000 */ mtc1 $t5, $f10 +/* 0A9114 800A8514 46003202 */ mul.s $f8, $f6, $f0 +/* 0A9118 800A8518 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0A911C 800A851C 05A10004 */ bgez $t5, .L800A8530 +/* 0A9120 800A8520 46805420 */ cvt.s.w $f16, $f10 +/* 0A9124 800A8524 44819000 */ mtc1 $at, $f18 +/* 0A9128 800A8528 00000000 */ nop +/* 0A912C 800A852C 46128400 */ add.s $f16, $f16, $f18 +.L800A8530: +/* 0A9130 800A8530 00000000 */ nop +/* 0A9134 800A8534 46104103 */ div.s $f4, $f8, $f16 +/* 0A9138 800A8538 46040181 */ sub.s $f6, $f0, $f4 +/* 0A913C 800A853C 444EF800 */ cfc1 $t6, $31 +/* 0A9140 800A8540 00000000 */ nop +/* 0A9144 800A8544 35C10003 */ ori $at, $t6, 3 +/* 0A9148 800A8548 38210002 */ xori $at, $at, 2 +/* 0A914C 800A854C 44C1F800 */ ctc1 $at, $31 +/* 0A9150 800A8550 00000000 */ nop +/* 0A9154 800A8554 460032A4 */ cvt.w.s $f10, $f6 +/* 0A9158 800A8558 440F5000 */ mfc1 $t7, $f10 +/* 0A915C 800A855C 44CEF800 */ ctc1 $t6, $31 +/* 0A9160 800A8560 10000002 */ b .L800A856C +/* 0A9164 800A8564 AFAF010C */ sw $t7, 0x10c($sp) +.L800A8568: +/* 0A9168 800A8568 AFB8010C */ sw $t8, 0x10c($sp) +.L800A856C: +/* 0A916C 800A856C 8F396CF8 */ lw $t9, %lo(D_80126CF8)($t9) +/* 0A9170 800A8570 00001825 */ move $v1, $zero +/* 0A9174 800A8574 1B200058 */ blez $t9, .L800A86D8 +/* 0A9178 800A8578 00008825 */ move $s1, $zero +/* 0A917C 800A857C 3C058012 */ lui $a1, %hi(D_80126CF4) # $a1, 0x8012 +/* 0A9180 800A8580 24A56CF4 */ addiu $a1, %lo(D_80126CF4) # addiu $a1, $a1, 0x6cf4 +/* 0A9184 800A8584 3413C000 */ li $s3, 49152 +/* 0A9188 800A8588 24120028 */ li $s2, 40 +.L800A858C: +/* 0A918C 800A858C 8CAA0000 */ lw $t2, ($a1) +/* 0A9190 800A8590 00000000 */ nop +/* 0A9194 800A8594 01515821 */ addu $t3, $t2, $s1 +/* 0A9198 800A8598 8D6C0000 */ lw $t4, ($t3) +/* 0A919C 800A859C 00000000 */ nop +/* 0A91A0 800A85A0 11800047 */ beqz $t4, .L800A86C0 +/* 0A91A4 800A85A4 00000000 */ nop +/* 0A91A8 800A85A8 10720045 */ beq $v1, $s2, .L800A86C0 +/* 0A91AC 800A85AC 00000000 */ nop +/* 0A91B0 800A85B0 8E0D0000 */ lw $t5, ($s0) +/* 0A91B4 800A85B4 3C0B8012 */ lui $t3, %hi(D_80126CF0) # $t3, 0x8012 +/* 0A91B8 800A85B8 01A31021 */ addu $v0, $t5, $v1 +/* 0A91BC 800A85BC 904E0000 */ lbu $t6, ($v0) +/* 0A91C0 800A85C0 00000000 */ nop +/* 0A91C4 800A85C4 25CF0001 */ addiu $t7, $t6, 1 +/* 0A91C8 800A85C8 A04F0000 */ sb $t7, ($v0) +/* 0A91CC 800A85CC 8E180000 */ lw $t8, ($s0) +/* 0A91D0 800A85D0 00000000 */ nop +/* 0A91D4 800A85D4 0303C821 */ addu $t9, $t8, $v1 +/* 0A91D8 800A85D8 932A0000 */ lbu $t2, ($t9) +/* 0A91DC 800A85DC 00000000 */ nop +/* 0A91E0 800A85E0 2941003D */ slti $at, $t2, 0x3d +/* 0A91E4 800A85E4 14200036 */ bnez $at, .L800A86C0 +/* 0A91E8 800A85E8 00000000 */ nop +/* 0A91EC 800A85EC 8D6B6CF0 */ lw $t3, %lo(D_80126CF0)($t3) +/* 0A91F0 800A85F0 00036040 */ sll $t4, $v1, 1 +/* 0A91F4 800A85F4 016C6821 */ addu $t5, $t3, $t4 +/* 0A91F8 800A85F8 85A20000 */ lh $v0, ($t5) +/* 0A91FC 800A85FC 00000000 */ nop +/* 0A9200 800A8600 304EC000 */ andi $t6, $v0, 0xc000 +/* 0A9204 800A8604 166E000A */ bne $s3, $t6, .L800A8630 +/* 0A9208 800A8608 30598000 */ andi $t9, $v0, 0x8000 +/* 0A920C 800A860C 8CAF0000 */ lw $t7, ($a1) +/* 0A9210 800A8610 00000000 */ nop +/* 0A9214 800A8614 01F1C021 */ addu $t8, $t7, $s1 +/* 0A9218 800A8618 8F040000 */ lw $a0, ($t8) +/* 0A921C 800A861C 0C01ECAF */ jal func_8007B2BC +/* 0A9220 800A8620 AFA30144 */ sw $v1, 0x144($sp) +/* 0A9224 800A8624 8FA30144 */ lw $v1, 0x144($sp) +/* 0A9228 800A8628 1000001F */ b .L800A86A8 +/* 0A922C 800A862C 00000000 */ nop +.L800A8630: +/* 0A9230 800A8630 1320000A */ beqz $t9, .L800A865C +/* 0A9234 800A8634 304C4000 */ andi $t4, $v0, 0x4000 +/* 0A9238 800A8638 8CAA0000 */ lw $t2, ($a1) +/* 0A923C 800A863C 00000000 */ nop +/* 0A9240 800A8640 01515821 */ addu $t3, $t2, $s1 +/* 0A9244 800A8644 8D640000 */ lw $a0, ($t3) +/* 0A9248 800A8648 0C01F32C */ jal func_8007CCB0 +/* 0A924C 800A864C AFA30144 */ sw $v1, 0x144($sp) +/* 0A9250 800A8650 8FA30144 */ lw $v1, 0x144($sp) +/* 0A9254 800A8654 10000014 */ b .L800A86A8 +/* 0A9258 800A8658 00000000 */ nop +.L800A865C: +/* 0A925C 800A865C 1180000A */ beqz $t4, .L800A8688 +/* 0A9260 800A8660 00000000 */ nop +/* 0A9264 800A8664 8CAD0000 */ lw $t5, ($a1) +/* 0A9268 800A8668 00000000 */ nop +/* 0A926C 800A866C 01B17021 */ addu $t6, $t5, $s1 +/* 0A9270 800A8670 8DC40000 */ lw $a0, ($t6) +/* 0A9274 800A8674 0C003FEE */ jal func_8000FFB8 +/* 0A9278 800A8678 AFA30144 */ sw $v1, 0x144($sp) +/* 0A927C 800A867C 8FA30144 */ lw $v1, 0x144($sp) +/* 0A9280 800A8680 10000009 */ b .L800A86A8 +/* 0A9284 800A8684 00000000 */ nop +.L800A8688: +/* 0A9288 800A8688 8CAF0000 */ lw $t7, ($a1) +/* 0A928C 800A868C 00000000 */ nop +/* 0A9290 800A8690 01F1C021 */ addu $t8, $t7, $s1 +/* 0A9294 800A8694 8F040000 */ lw $a0, ($t8) +/* 0A9298 800A8698 0C017FD0 */ jal func_8005FF40 +/* 0A929C 800A869C AFA30144 */ sw $v1, 0x144($sp) +/* 0A92A0 800A86A0 8FA30144 */ lw $v1, 0x144($sp) +/* 0A92A4 800A86A4 00000000 */ nop +.L800A86A8: +/* 0A92A8 800A86A8 3C198012 */ lui $t9, %hi(D_80126CF4) # $t9, 0x8012 +/* 0A92AC 800A86AC 8F396CF4 */ lw $t9, %lo(D_80126CF4)($t9) +/* 0A92B0 800A86B0 3C058012 */ lui $a1, %hi(D_80126CF4) # $a1, 0x8012 +/* 0A92B4 800A86B4 03315021 */ addu $t2, $t9, $s1 +/* 0A92B8 800A86B8 AD400000 */ sw $zero, ($t2) +/* 0A92BC 800A86BC 24A56CF4 */ addiu $a1, %lo(D_80126CF4) # addiu $a1, $a1, 0x6cf4 +.L800A86C0: +/* 0A92C0 800A86C0 3C0B8012 */ lui $t3, %hi(D_80126CF8) # $t3, 0x8012 +/* 0A92C4 800A86C4 8D6B6CF8 */ lw $t3, %lo(D_80126CF8)($t3) +/* 0A92C8 800A86C8 24630001 */ addiu $v1, $v1, 1 +/* 0A92CC 800A86CC 006B082A */ slt $at, $v1, $t3 +/* 0A92D0 800A86D0 1420FFAE */ bnez $at, .L800A858C +/* 0A92D4 800A86D4 26310004 */ addiu $s1, $s1, 4 +.L800A86D8: +/* 0A92D8 800A86D8 0C01AF6C */ jal func_8006BDB0 +/* 0A92DC 800A86DC 00000000 */ nop +/* 0A92E0 800A86E0 3C018012 */ lui $at, %hi(D_80126D60) # $at, 0x8012 +/* 0A92E4 800A86E4 AC226D60 */ sw $v0, %lo(D_80126D60)($at) +/* 0A92E8 800A86E8 0C006EA4 */ jal func_8001BA90 +/* 0A92EC 800A86EC 27A40140 */ addiu $a0, $sp, 0x140 +/* 0A92F0 800A86F0 8FAC0160 */ lw $t4, 0x160($sp) +/* 0A92F4 800A86F4 AFA20150 */ sw $v0, 0x150($sp) +/* 0A92F8 800A86F8 8D8D0000 */ lw $t5, ($t4) +/* 0A92FC 800A86FC 3C148012 */ lui $s4, %hi(D_80126CFC) # $s4, 0x8012 +/* 0A9300 800A8700 8FAE0164 */ lw $t6, 0x164($sp) +/* 0A9304 800A8704 26946CFC */ addiu $s4, %lo(D_80126CFC) # addiu $s4, $s4, 0x6cfc +/* 0A9308 800A8708 AE8D0000 */ sw $t5, ($s4) +/* 0A930C 800A870C 8DCF0000 */ lw $t7, ($t6) +/* 0A9310 800A8710 8FB80168 */ lw $t8, 0x168($sp) +/* 0A9314 800A8714 3C018012 */ lui $at, %hi(D_80126D00) # $at, 0x8012 +/* 0A9318 800A8718 AC2F6D00 */ sw $t7, %lo(D_80126D00)($at) +/* 0A931C 800A871C 8F190000 */ lw $t9, ($t8) +/* 0A9320 800A8720 3C0A8012 */ lui $t2, %hi(D_80126D60) # $t2, 0x8012 +/* 0A9324 800A8724 8D4A6D60 */ lw $t2, %lo(D_80126D60)($t2) +/* 0A9328 800A8728 3C018012 */ lui $at, %hi(D_80126D04) # $at, 0x8012 +/* 0A932C 800A872C AC396D04 */ sw $t9, %lo(D_80126D04)($at) +/* 0A9330 800A8730 8143004C */ lb $v1, 0x4c($t2) +/* 0A9334 800A8734 24010042 */ li $at, 66 +/* 0A9338 800A8738 146100D4 */ bne $v1, $at, .L800A8A8C +/* 0A933C 800A873C 24010040 */ li $at, 64 +/* 0A9340 800A8740 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 +/* 0A9344 800A8744 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) +/* 0A9348 800A8748 24010002 */ li $at, 2 +/* 0A934C 800A874C 1461000E */ bne $v1, $at, .L800A8788 +/* 0A9350 800A8750 3C0B8012 */ lui $t3, %hi(D_80126D0C) # $t3, 0x8012 +/* 0A9354 800A8754 8D6B6D0C */ lw $t3, %lo(D_80126D0C)($t3) +/* 0A9358 800A8758 3C0C800E */ lui $t4, 0x800e +/* 0A935C 800A875C 018B6021 */ addu $t4, $t4, $t3 +/* 0A9360 800A8760 818C27A4 */ lb $t4, 0x27a4($t4) +/* 0A9364 800A8764 8FA5016C */ lw $a1, 0x16c($sp) +/* 0A9368 800A8768 15800008 */ bnez $t4, .L800A878C +/* 0A936C 800A876C 24010003 */ li $at, 3 +/* 0A9370 800A8770 0C02853C */ jal func_800A14F0 +/* 0A9374 800A8774 00002025 */ move $a0, $zero +/* 0A9378 800A8778 0C01ECF4 */ jal func_8007B3D0 +/* 0A937C 800A877C 02802025 */ move $a0, $s4 +/* 0A9380 800A8780 100003CC */ b .L800A96B4 +/* 0A9384 800A8784 00000000 */ nop +.L800A8788: +/* 0A9388 800A8788 24010003 */ li $at, 3 +.L800A878C: +/* 0A938C 800A878C 146100BC */ bne $v1, $at, .L800A8A80 +/* 0A9390 800A8790 00000000 */ nop +/* 0A9394 800A8794 8FAD0140 */ lw $t5, 0x140($sp) +/* 0A9398 800A8798 00003025 */ move $a2, $zero +/* 0A939C 800A879C 19A00042 */ blez $t5, .L800A88A8 +/* 0A93A0 800A87A0 00002825 */ move $a1, $zero +/* 0A93A4 800A87A4 31A80003 */ andi $t0, $t5, 3 +/* 0A93A8 800A87A8 11000013 */ beqz $t0, .L800A87F8 +/* 0A93AC 800A87AC 01003825 */ move $a3, $t0 +/* 0A93B0 800A87B0 00007080 */ sll $t6, $zero, 2 +/* 0A93B4 800A87B4 004E2021 */ addu $a0, $v0, $t6 +/* 0A93B8 800A87B8 2413FFFF */ li $s3, -1 +.L800A87BC: +/* 0A93BC 800A87BC 8C8F0000 */ lw $t7, ($a0) +/* 0A93C0 800A87C0 24A50001 */ addiu $a1, $a1, 1 +/* 0A93C4 800A87C4 8DE30064 */ lw $v1, 0x64($t7) +/* 0A93C8 800A87C8 00000000 */ nop +/* 0A93CC 800A87CC 84780000 */ lh $t8, ($v1) +/* 0A93D0 800A87D0 00000000 */ nop +/* 0A93D4 800A87D4 16780002 */ bne $s3, $t8, .L800A87E0 +/* 0A93D8 800A87D8 00000000 */ nop +/* 0A93DC 800A87DC 00603025 */ move $a2, $v1 +.L800A87E0: +/* 0A93E0 800A87E0 14E5FFF6 */ bne $a3, $a1, .L800A87BC +/* 0A93E4 800A87E4 24840004 */ addiu $a0, $a0, 4 +/* 0A93E8 800A87E8 8FB90140 */ lw $t9, 0x140($sp) +/* 0A93EC 800A87EC 00000000 */ nop +/* 0A93F0 800A87F0 10B9002D */ beq $a1, $t9, .L800A88A8 +/* 0A93F4 800A87F4 00000000 */ nop +.L800A87F8: +/* 0A93F8 800A87F8 8FAA0140 */ lw $t2, 0x140($sp) +/* 0A93FC 800A87FC 00056080 */ sll $t4, $a1, 2 +/* 0A9400 800A8800 000A5880 */ sll $t3, $t2, 2 +/* 0A9404 800A8804 01623821 */ addu $a3, $t3, $v0 +/* 0A9408 800A8808 004C2021 */ addu $a0, $v0, $t4 +/* 0A940C 800A880C 2413FFFF */ li $s3, -1 +.L800A8810: +/* 0A9410 800A8810 8C8D0000 */ lw $t5, ($a0) +/* 0A9414 800A8814 00000000 */ nop +/* 0A9418 800A8818 8DA30064 */ lw $v1, 0x64($t5) +/* 0A941C 800A881C 00000000 */ nop +/* 0A9420 800A8820 846E0000 */ lh $t6, ($v1) +/* 0A9424 800A8824 00000000 */ nop +/* 0A9428 800A8828 166E0002 */ bne $s3, $t6, .L800A8834 +/* 0A942C 800A882C 00000000 */ nop +/* 0A9430 800A8830 00603025 */ move $a2, $v1 +.L800A8834: +/* 0A9434 800A8834 8C8F0004 */ lw $t7, 4($a0) +/* 0A9438 800A8838 00000000 */ nop +/* 0A943C 800A883C 8DE30064 */ lw $v1, 0x64($t7) +/* 0A9440 800A8840 00000000 */ nop +/* 0A9444 800A8844 84780000 */ lh $t8, ($v1) +/* 0A9448 800A8848 00000000 */ nop +/* 0A944C 800A884C 16780002 */ bne $s3, $t8, .L800A8858 +/* 0A9450 800A8850 00000000 */ nop +/* 0A9454 800A8854 00603025 */ move $a2, $v1 +.L800A8858: +/* 0A9458 800A8858 8C990008 */ lw $t9, 8($a0) +/* 0A945C 800A885C 00000000 */ nop +/* 0A9460 800A8860 8F230064 */ lw $v1, 0x64($t9) +/* 0A9464 800A8864 00000000 */ nop +/* 0A9468 800A8868 846A0000 */ lh $t2, ($v1) +/* 0A946C 800A886C 00000000 */ nop +/* 0A9470 800A8870 166A0002 */ bne $s3, $t2, .L800A887C +/* 0A9474 800A8874 00000000 */ nop +/* 0A9478 800A8878 00603025 */ move $a2, $v1 +.L800A887C: +/* 0A947C 800A887C 8C8B000C */ lw $t3, 0xc($a0) +/* 0A9480 800A8880 24840010 */ addiu $a0, $a0, 0x10 +/* 0A9484 800A8884 8D630064 */ lw $v1, 0x64($t3) +/* 0A9488 800A8888 00000000 */ nop +/* 0A948C 800A888C 846C0000 */ lh $t4, ($v1) +/* 0A9490 800A8890 00000000 */ nop +/* 0A9494 800A8894 166C0002 */ bne $s3, $t4, .L800A88A0 +/* 0A9498 800A8898 00000000 */ nop +/* 0A949C 800A889C 00603025 */ move $a2, $v1 +.L800A88A0: +/* 0A94A0 800A88A0 1487FFDB */ bne $a0, $a3, .L800A8810 +/* 0A94A4 800A88A4 00000000 */ nop +.L800A88A8: +/* 0A94A8 800A88A8 10C00075 */ beqz $a2, .L800A8A80 +/* 0A94AC 800A88AC 3C128012 */ lui $s2, %hi(D_80126CDC) # $s2, 0x8012 +/* 0A94B0 800A88B0 444DF800 */ cfc1 $t5, $31 +/* 0A94B4 800A88B4 26526CDC */ addiu $s2, %lo(D_80126CDC) # addiu $s2, $s2, 0x6cdc +/* 0A94B8 800A88B8 8E420000 */ lw $v0, ($s2) +/* 0A94BC 800A88BC 35A10003 */ ori $at, $t5, 3 +/* 0A94C0 800A88C0 38210002 */ xori $at, $at, 2 +/* 0A94C4 800A88C4 44C1F800 */ ctc1 $at, $31 +/* 0A94C8 800A88C8 C452064C */ lwc1 $f18, 0x64c($v0) +/* 0A94CC 800A88CC C4500650 */ lwc1 $f16, 0x650($v0) +/* 0A94D0 800A88D0 46009224 */ cvt.w.s $f8, $f18 +/* 0A94D4 800A88D4 C446066C */ lwc1 $f6, 0x66c($v0) +/* 0A94D8 800A88D8 44CDF800 */ ctc1 $t5, $31 +/* 0A94DC 800A88DC C4520670 */ lwc1 $f18, 0x670($v0) +/* 0A94E0 800A88E0 44104000 */ mfc1 $s0, $f8 +/* 0A94E4 800A88E4 444EF800 */ cfc1 $t6, $31 +/* 0A94E8 800A88E8 3C0C8000 */ lui $t4, %hi(D_80000300) # $t4, 0x8000 +/* 0A94EC 800A88EC 35C10003 */ ori $at, $t6, 3 +/* 0A94F0 800A88F0 38210002 */ xori $at, $at, 2 +/* 0A94F4 800A88F4 44C1F800 */ ctc1 $at, $31 +/* 0A94F8 800A88F8 00C02025 */ move $a0, $a2 +/* 0A94FC 800A88FC 46008124 */ cvt.w.s $f4, $f16 +/* 0A9500 800A8900 44CEF800 */ ctc1 $t6, $31 +/* 0A9504 800A8904 44112000 */ mfc1 $s1, $f4 +/* 0A9508 800A8908 00000000 */ nop +/* 0A950C 800A890C 444FF800 */ cfc1 $t7, $31 +/* 0A9510 800A8910 00000000 */ nop +/* 0A9514 800A8914 35E10003 */ ori $at, $t7, 3 +/* 0A9518 800A8918 38210002 */ xori $at, $at, 2 +/* 0A951C 800A891C 44C1F800 */ ctc1 $at, $31 +/* 0A9520 800A8920 00000000 */ nop +/* 0A9524 800A8924 460032A4 */ cvt.w.s $f10, $f6 +/* 0A9528 800A8928 44CFF800 */ ctc1 $t7, $31 +/* 0A952C 800A892C 44035000 */ mfc1 $v1, $f10 +/* 0A9530 800A8930 00000000 */ nop +/* 0A9534 800A8934 4458F800 */ cfc1 $t8, $31 +/* 0A9538 800A8938 00000000 */ nop +/* 0A953C 800A893C 37010003 */ ori $at, $t8, 3 +/* 0A9540 800A8940 38210002 */ xori $at, $at, 2 +/* 0A9544 800A8944 44C1F800 */ ctc1 $at, $31 +/* 0A9548 800A8948 3C014361 */ li $at, 0x43610000 # 225.000000 +/* 0A954C 800A894C 44818000 */ mtc1 $at, $f16 +/* 0A9550 800A8950 3C01435D */ li $at, 0x435D0000 # 221.000000 +/* 0A9554 800A8954 E450064C */ swc1 $f16, 0x64c($v0) +/* 0A9558 800A8958 8E590000 */ lw $t9, ($s2) +/* 0A955C 800A895C 44812000 */ mtc1 $at, $f4 +/* 0A9560 800A8960 3C014345 */ li $at, 0x43450000 # 197.000000 +/* 0A9564 800A8964 E724066C */ swc1 $f4, 0x66c($t9) +/* 0A9568 800A8968 8E4A0000 */ lw $t2, ($s2) +/* 0A956C 800A896C 44813000 */ mtc1 $at, $f6 +/* 0A9570 800A8970 3C014325 */ li $at, 0x43250000 # 165.000000 +/* 0A9574 800A8974 E5460670 */ swc1 $f6, 0x670($t2) +/* 0A9578 800A8978 8E4B0000 */ lw $t3, ($s2) +/* 0A957C 800A897C 44815000 */ mtc1 $at, $f10 +/* 0A9580 800A8980 46009224 */ cvt.w.s $f8, $f18 +/* 0A9584 800A8984 E56A0650 */ swc1 $f10, 0x650($t3) +/* 0A9588 800A8988 8D8C0300 */ lw $t4, %lo(D_80000300)($t4) +/* 0A958C 800A898C 44074000 */ mfc1 $a3, $f8 +/* 0A9590 800A8990 44D8F800 */ ctc1 $t8, $31 +/* 0A9594 800A8994 15800020 */ bnez $t4, .L800A8A18 +/* 0A9598 800A8998 3C01800F */ li $at, 0x800F0000 # -0.000000 +/* 0A959C 800A899C C42187A0 */ lwc1 $f1, %lo(D_800E87A0)($at) +/* 0A95A0 800A89A0 C42087A4 */ lwc1 $f0, %lo(D_800E87A4)($at) +/* 0A95A4 800A89A4 8E420000 */ lw $v0, ($s2) +/* 0A95A8 800A89A8 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 0A95AC 800A89AC 44814000 */ mtc1 $at, $f8 +/* 0A95B0 800A89B0 C452064C */ lwc1 $f18, 0x64c($v0) +/* 0A95B4 800A89B4 44813000 */ mtc1 $at, $f6 +/* 0A95B8 800A89B8 46089401 */ sub.s $f16, $f18, $f8 +/* 0A95BC 800A89BC E450064C */ swc1 $f16, 0x64c($v0) +/* 0A95C0 800A89C0 8E420000 */ lw $v0, ($s2) +/* 0A95C4 800A89C4 00000000 */ nop +/* 0A95C8 800A89C8 C444066C */ lwc1 $f4, 0x66c($v0) +/* 0A95CC 800A89CC 00000000 */ nop +/* 0A95D0 800A89D0 46062281 */ sub.s $f10, $f4, $f6 +/* 0A95D4 800A89D4 E44A066C */ swc1 $f10, 0x66c($v0) +/* 0A95D8 800A89D8 8E420000 */ lw $v0, ($s2) +/* 0A95DC 800A89DC 00000000 */ nop +/* 0A95E0 800A89E0 C4520650 */ lwc1 $f18, 0x650($v0) +/* 0A95E4 800A89E4 00000000 */ nop +/* 0A95E8 800A89E8 46009221 */ cvt.d.s $f8, $f18 +/* 0A95EC 800A89EC 46204402 */ mul.d $f16, $f8, $f0 +/* 0A95F0 800A89F0 46208120 */ cvt.s.d $f4, $f16 +/* 0A95F4 800A89F4 E4440650 */ swc1 $f4, 0x650($v0) +/* 0A95F8 800A89F8 8E420000 */ lw $v0, ($s2) +/* 0A95FC 800A89FC 00000000 */ nop +/* 0A9600 800A8A00 C4460670 */ lwc1 $f6, 0x670($v0) +/* 0A9604 800A8A04 00000000 */ nop +/* 0A9608 800A8A08 460032A1 */ cvt.d.s $f10, $f6 +/* 0A960C 800A8A0C 46205482 */ mul.d $f18, $f10, $f0 +/* 0A9610 800A8A10 46209220 */ cvt.s.d $f8, $f18 +/* 0A9614 800A8A14 E4480670 */ swc1 $f8, 0x670($v0) +.L800A8A18: +/* 0A9618 800A8A18 8FA5016C */ lw $a1, 0x16c($sp) +/* 0A961C 800A8A1C AFA300F4 */ sw $v1, 0xf4($sp) +/* 0A9620 800A8A20 0C028669 */ jal func_800A19A4 +/* 0A9624 800A8A24 AFA700F0 */ sw $a3, 0xf0($sp) +/* 0A9628 800A8A28 44908000 */ mtc1 $s0, $f16 +/* 0A962C 800A8A2C 240DFFFE */ li $t5, -2 +/* 0A9630 800A8A30 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e +/* 0A9634 800A8A34 46808120 */ cvt.s.w $f4, $f16 +/* 0A9638 800A8A38 AC2D2834 */ sw $t5, %lo(D_800E2834)($at) +/* 0A963C 800A8A3C 8FA300F4 */ lw $v1, 0xf4($sp) +/* 0A9640 800A8A40 8E4E0000 */ lw $t6, ($s2) +/* 0A9644 800A8A44 44913000 */ mtc1 $s1, $f6 +/* 0A9648 800A8A48 8FA700F0 */ lw $a3, 0xf0($sp) +/* 0A964C 800A8A4C 468032A0 */ cvt.s.w $f10, $f6 +/* 0A9650 800A8A50 E5C4064C */ swc1 $f4, 0x64c($t6) +/* 0A9654 800A8A54 8E4F0000 */ lw $t7, ($s2) +/* 0A9658 800A8A58 44839000 */ mtc1 $v1, $f18 +/* 0A965C 800A8A5C E5EA0650 */ swc1 $f10, 0x650($t7) +/* 0A9660 800A8A60 46809220 */ cvt.s.w $f8, $f18 +/* 0A9664 800A8A64 8E580000 */ lw $t8, ($s2) +/* 0A9668 800A8A68 44878000 */ mtc1 $a3, $f16 +/* 0A966C 800A8A6C E708066C */ swc1 $f8, 0x66c($t8) +/* 0A9670 800A8A70 46808120 */ cvt.s.w $f4, $f16 +/* 0A9674 800A8A74 8E590000 */ lw $t9, ($s2) +/* 0A9678 800A8A78 00000000 */ nop +/* 0A967C 800A8A7C E7240670 */ swc1 $f4, 0x670($t9) +.L800A8A80: +/* 0A9680 800A8A80 1000030C */ b .L800A96B4 +/* 0A9684 800A8A84 00000000 */ nop +/* 0A9688 800A8A88 24010040 */ li $at, 64 +.L800A8A8C: +/* 0A968C 800A8A8C 146101B2 */ bne $v1, $at, .L800A9158 +/* 0A9690 800A8A90 24010041 */ li $at, 65 +/* 0A9694 800A8A94 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 +/* 0A9698 800A8A98 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) +/* 0A969C 800A8A9C 24010002 */ li $at, 2 +/* 0A96A0 800A8AA0 1461001B */ bne $v1, $at, .L800A8B10 +/* 0A96A4 800A8AA4 3C0A8012 */ lui $t2, %hi(D_80126D0C) # $t2, 0x8012 +/* 0A96A8 800A8AA8 8D4A6D0C */ lw $t2, %lo(D_80126D0C)($t2) +/* 0A96AC 800A8AAC 3C0B800E */ lui $t3, 0x800e +/* 0A96B0 800A8AB0 016A5821 */ addu $t3, $t3, $t2 +/* 0A96B4 800A8AB4 816B27A4 */ lb $t3, 0x27a4($t3) +/* 0A96B8 800A8AB8 00000000 */ nop +/* 0A96BC 800A8ABC 15600015 */ bnez $t3, .L800A8B14 +/* 0A96C0 800A8AC0 24010003 */ li $at, 3 +/* 0A96C4 800A8AC4 0C01A142 */ jal func_80068508 +/* 0A96C8 800A8AC8 24040001 */ li $a0, 1 +/* 0A96CC 800A8ACC 0C01EFC7 */ jal func_8007BF1C +/* 0A96D0 800A8AD0 00002025 */ move $a0, $zero +/* 0A96D4 800A8AD4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A96D8 800A8AD8 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A96DC 800A8ADC 0C019FCB */ jal func_80067F2C +/* 0A96E0 800A8AE0 02802025 */ move $a0, $s4 +/* 0A96E4 800A8AE4 8FA5016C */ lw $a1, 0x16c($sp) +/* 0A96E8 800A8AE8 0C028792 */ jal func_800A1E48 +/* 0A96EC 800A8AEC 00002025 */ move $a0, $zero +/* 0A96F0 800A8AF0 0C01A142 */ jal func_80068508 +/* 0A96F4 800A8AF4 00002025 */ move $a0, $zero +/* 0A96F8 800A8AF8 0C01ECF4 */ jal func_8007B3D0 +/* 0A96FC 800A8AFC 02802025 */ move $a0, $s4 +/* 0A9700 800A8B00 0C01EFC7 */ jal func_8007BF1C +/* 0A9704 800A8B04 24040001 */ li $a0, 1 +/* 0A9708 800A8B08 100002EA */ b .L800A96B4 +/* 0A970C 800A8B0C 00000000 */ nop +.L800A8B10: +/* 0A9710 800A8B10 24010003 */ li $at, 3 +.L800A8B14: +/* 0A9714 800A8B14 1461018D */ bne $v1, $at, .L800A914C +/* 0A9718 800A8B18 00000000 */ nop +/* 0A971C 800A8B1C 8FAC0140 */ lw $t4, 0x140($sp) +/* 0A9720 800A8B20 00008025 */ move $s0, $zero +/* 0A9724 800A8B24 19800042 */ blez $t4, .L800A8C30 +/* 0A9728 800A8B28 00002825 */ move $a1, $zero +/* 0A972C 800A8B2C 31880003 */ andi $t0, $t4, 3 +/* 0A9730 800A8B30 11000013 */ beqz $t0, .L800A8B80 +/* 0A9734 800A8B34 01003025 */ move $a2, $t0 +/* 0A9738 800A8B38 00006880 */ sll $t5, $zero, 2 +/* 0A973C 800A8B3C 004D2021 */ addu $a0, $v0, $t5 +/* 0A9740 800A8B40 2413FFFF */ li $s3, -1 +.L800A8B44: +/* 0A9744 800A8B44 8C8E0000 */ lw $t6, ($a0) +/* 0A9748 800A8B48 24A50001 */ addiu $a1, $a1, 1 +/* 0A974C 800A8B4C 8DC30064 */ lw $v1, 0x64($t6) +/* 0A9750 800A8B50 00000000 */ nop +/* 0A9754 800A8B54 846F0000 */ lh $t7, ($v1) +/* 0A9758 800A8B58 00000000 */ nop +/* 0A975C 800A8B5C 166F0002 */ bne $s3, $t7, .L800A8B68 +/* 0A9760 800A8B60 00000000 */ nop +/* 0A9764 800A8B64 00608025 */ move $s0, $v1 +.L800A8B68: +/* 0A9768 800A8B68 14C5FFF6 */ bne $a2, $a1, .L800A8B44 +/* 0A976C 800A8B6C 24840004 */ addiu $a0, $a0, 4 +/* 0A9770 800A8B70 8FB80140 */ lw $t8, 0x140($sp) +/* 0A9774 800A8B74 00000000 */ nop +/* 0A9778 800A8B78 10B8002D */ beq $a1, $t8, .L800A8C30 +/* 0A977C 800A8B7C 00000000 */ nop +.L800A8B80: +/* 0A9780 800A8B80 8FB90140 */ lw $t9, 0x140($sp) +/* 0A9784 800A8B84 00055880 */ sll $t3, $a1, 2 +/* 0A9788 800A8B88 00195080 */ sll $t2, $t9, 2 +/* 0A978C 800A8B8C 01423021 */ addu $a2, $t2, $v0 +/* 0A9790 800A8B90 004B2021 */ addu $a0, $v0, $t3 +/* 0A9794 800A8B94 2413FFFF */ li $s3, -1 +.L800A8B98: +/* 0A9798 800A8B98 8C8C0000 */ lw $t4, ($a0) +/* 0A979C 800A8B9C 00000000 */ nop +/* 0A97A0 800A8BA0 8D830064 */ lw $v1, 0x64($t4) +/* 0A97A4 800A8BA4 00000000 */ nop +/* 0A97A8 800A8BA8 846D0000 */ lh $t5, ($v1) +/* 0A97AC 800A8BAC 00000000 */ nop +/* 0A97B0 800A8BB0 166D0002 */ bne $s3, $t5, .L800A8BBC +/* 0A97B4 800A8BB4 00000000 */ nop +/* 0A97B8 800A8BB8 00608025 */ move $s0, $v1 +.L800A8BBC: +/* 0A97BC 800A8BBC 8C8E0004 */ lw $t6, 4($a0) +/* 0A97C0 800A8BC0 00000000 */ nop +/* 0A97C4 800A8BC4 8DC30064 */ lw $v1, 0x64($t6) +/* 0A97C8 800A8BC8 00000000 */ nop +/* 0A97CC 800A8BCC 846F0000 */ lh $t7, ($v1) +/* 0A97D0 800A8BD0 00000000 */ nop +/* 0A97D4 800A8BD4 166F0002 */ bne $s3, $t7, .L800A8BE0 +/* 0A97D8 800A8BD8 00000000 */ nop +/* 0A97DC 800A8BDC 00608025 */ move $s0, $v1 +.L800A8BE0: +/* 0A97E0 800A8BE0 8C980008 */ lw $t8, 8($a0) +/* 0A97E4 800A8BE4 00000000 */ nop +/* 0A97E8 800A8BE8 8F030064 */ lw $v1, 0x64($t8) +/* 0A97EC 800A8BEC 00000000 */ nop +/* 0A97F0 800A8BF0 84790000 */ lh $t9, ($v1) +/* 0A97F4 800A8BF4 00000000 */ nop +/* 0A97F8 800A8BF8 16790002 */ bne $s3, $t9, .L800A8C04 +/* 0A97FC 800A8BFC 00000000 */ nop +/* 0A9800 800A8C00 00608025 */ move $s0, $v1 +.L800A8C04: +/* 0A9804 800A8C04 8C8A000C */ lw $t2, 0xc($a0) +/* 0A9808 800A8C08 24840010 */ addiu $a0, $a0, 0x10 +/* 0A980C 800A8C0C 8D430064 */ lw $v1, 0x64($t2) +/* 0A9810 800A8C10 00000000 */ nop +/* 0A9814 800A8C14 846B0000 */ lh $t3, ($v1) +/* 0A9818 800A8C18 00000000 */ nop +/* 0A981C 800A8C1C 166B0002 */ bne $s3, $t3, .L800A8C28 +/* 0A9820 800A8C20 00000000 */ nop +/* 0A9824 800A8C24 00608025 */ move $s0, $v1 +.L800A8C28: +/* 0A9828 800A8C28 1486FFDB */ bne $a0, $a2, .L800A8B98 +/* 0A982C 800A8C2C 00000000 */ nop +.L800A8C30: +/* 0A9830 800A8C30 12000146 */ beqz $s0, .L800A914C +/* 0A9834 800A8C34 3C128012 */ lui $s2, %hi(D_80126CDC) # $s2, 0x8012 +/* 0A9838 800A8C38 444DF800 */ cfc1 $t5, $31 +/* 0A983C 800A8C3C 3C0C8012 */ lui $t4, %hi(D_80126CEC) # $t4, 0x8012 +/* 0A9840 800A8C40 8D8C6CEC */ lw $t4, %lo(D_80126CEC)($t4) +/* 0A9844 800A8C44 26526CDC */ addiu $s2, %lo(D_80126CDC) # addiu $s2, $s2, 0x6cdc +/* 0A9848 800A8C48 35A10003 */ ori $at, $t5, 3 +/* 0A984C 800A8C4C 38210002 */ xori $at, $at, 2 +/* 0A9850 800A8C50 AE4C0000 */ sw $t4, ($s2) +/* 0A9854 800A8C54 44C1F800 */ ctc1 $at, $31 +/* 0A9858 800A8C58 C586064C */ lwc1 $f6, 0x64c($t4) +/* 0A985C 800A8C5C 00002025 */ move $a0, $zero +/* 0A9860 800A8C60 460032A4 */ cvt.w.s $f10, $f6 +/* 0A9864 800A8C64 44CDF800 */ ctc1 $t5, $31 +/* 0A9868 800A8C68 440E5000 */ mfc1 $t6, $f10 +/* 0A986C 800A8C6C 00000000 */ nop +/* 0A9870 800A8C70 444FF800 */ cfc1 $t7, $31 +/* 0A9874 800A8C74 AFAE00E4 */ sw $t6, 0xe4($sp) +/* 0A9878 800A8C78 35E10003 */ ori $at, $t7, 3 +/* 0A987C 800A8C7C 38210002 */ xori $at, $at, 2 +/* 0A9880 800A8C80 44C1F800 */ ctc1 $at, $31 +/* 0A9884 800A8C84 C5920650 */ lwc1 $f18, 0x650($t4) +/* 0A9888 800A8C88 00000000 */ nop +/* 0A988C 800A8C8C 46009224 */ cvt.w.s $f8, $f18 +/* 0A9890 800A8C90 44184000 */ mfc1 $t8, $f8 +/* 0A9894 800A8C94 44CFF800 */ ctc1 $t7, $31 +/* 0A9898 800A8C98 0C01EFC7 */ jal func_8007BF1C +/* 0A989C 800A8C9C AFB800E0 */ sw $t8, 0xe0($sp) +/* 0A98A0 800A8CA0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A98A4 800A8CA4 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A98A8 800A8CA8 0C019FCB */ jal func_80067F2C +/* 0A98AC 800A8CAC 02802025 */ move $a0, $s4 +/* 0A98B0 800A8CB0 0C01A142 */ jal func_80068508 +/* 0A98B4 800A8CB4 24040001 */ li $a0, 1 +/* 0A98B8 800A8CB8 3C014361 */ li $at, 0x43610000 # 225.000000 +/* 0A98BC 800A8CBC 44818000 */ mtc1 $at, $f16 +/* 0A98C0 800A8CC0 8E590000 */ lw $t9, ($s2) +/* 0A98C4 800A8CC4 3C0A8000 */ lui $t2, %hi(D_80000300) # $t2, 0x8000 +/* 0A98C8 800A8CC8 E730064C */ swc1 $f16, 0x64c($t9) +/* 0A98CC 800A8CCC 8D4A0300 */ lw $t2, %lo(D_80000300)($t2) +/* 0A98D0 800A8CD0 3C0D8000 */ lui $t5, %hi(D_80000300) # $t5, 0x8000 +/* 0A98D4 800A8CD4 15400006 */ bnez $t2, .L800A8CF0 +/* 0A98D8 800A8CD8 3C118012 */ lui $s1, %hi(D_80126CD5) # $s1, 0x8012 +/* 0A98DC 800A8CDC 3C01800F */ li $at, 0x800F0000 # -0.000000 +/* 0A98E0 800A8CE0 C42487A8 */ lwc1 $f4, %lo(D_800E87A8)($at) +/* 0A98E4 800A8CE4 8E4B0000 */ lw $t3, ($s2) +/* 0A98E8 800A8CE8 10000006 */ b .L800A8D04 +/* 0A98EC 800A8CEC E5640650 */ swc1 $f4, 0x650($t3) +.L800A8CF0: +/* 0A98F0 800A8CF0 3C014325 */ li $at, 0x43250000 # 165.000000 +/* 0A98F4 800A8CF4 44813000 */ mtc1 $at, $f6 +/* 0A98F8 800A8CF8 8E4C0000 */ lw $t4, ($s2) +/* 0A98FC 800A8CFC 00000000 */ nop +/* 0A9900 800A8D00 E5860650 */ swc1 $f6, 0x650($t4) +.L800A8D04: +/* 0A9904 800A8D04 8DAD0300 */ lw $t5, %lo(D_80000300)($t5) +/* 0A9908 800A8D08 26316CD5 */ addiu $s1, %lo(D_80126CD5) # addiu $s1, $s1, 0x6cd5 +/* 0A990C 800A8D0C 15A00020 */ bnez $t5, .L800A8D90 +/* 0A9910 800A8D10 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0A9914 800A8D14 8E420000 */ lw $v0, ($s2) +/* 0A9918 800A8D18 3C014284 */ li $at, 0x42840000 # 66.000000 +/* 0A991C 800A8D1C 44815000 */ mtc1 $at, $f10 +/* 0A9920 800A8D20 C44C036C */ lwc1 $f12, 0x36c($v0) +/* 0A9924 800A8D24 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 0A9928 800A8D28 44814000 */ mtc1 $at, $f8 +/* 0A992C 800A8D2C 460C5481 */ sub.s $f18, $f10, $f12 +/* 0A9930 800A8D30 C44A0370 */ lwc1 $f10, 0x370($v0) +/* 0A9934 800A8D34 46089401 */ sub.s $f16, $f18, $f8 +/* 0A9938 800A8D38 444EF800 */ cfc1 $t6, $31 +/* 0A993C 800A8D3C 00000000 */ nop +/* 0A9940 800A8D40 35C10003 */ ori $at, $t6, 3 +/* 0A9944 800A8D44 38210002 */ xori $at, $at, 2 +/* 0A9948 800A8D48 44C1F800 */ ctc1 $at, $31 +/* 0A994C 800A8D4C 3C01C2E4 */ li $at, 0xC2E40000 # -114.000000 +/* 0A9950 800A8D50 46008124 */ cvt.w.s $f4, $f16 +/* 0A9954 800A8D54 44813000 */ mtc1 $at, $f6 +/* 0A9958 800A8D58 44CEF800 */ ctc1 $t6, $31 +/* 0A995C 800A8D5C 44042000 */ mfc1 $a0, $f4 +/* 0A9960 800A8D60 460A3481 */ sub.s $f18, $f6, $f10 +/* 0A9964 800A8D64 444FF800 */ cfc1 $t7, $31 +/* 0A9968 800A8D68 00000000 */ nop +/* 0A996C 800A8D6C 35E10003 */ ori $at, $t7, 3 +/* 0A9970 800A8D70 38210002 */ xori $at, $at, 2 +/* 0A9974 800A8D74 44C1F800 */ ctc1 $at, $31 +/* 0A9978 800A8D78 00000000 */ nop +/* 0A997C 800A8D7C 46009224 */ cvt.w.s $f8, $f18 +/* 0A9980 800A8D80 44034000 */ mfc1 $v1, $f8 +/* 0A9984 800A8D84 44CFF800 */ ctc1 $t7, $31 +/* 0A9988 800A8D88 1000001D */ b .L800A8E00 +/* 0A998C 800A8D8C 44842000 */ mtc1 $a0, $f4 +.L800A8D90: +/* 0A9990 800A8D90 8E420000 */ lw $v0, ($s2) +/* 0A9994 800A8D94 3C014284 */ li $at, 0x42840000 # 66.000000 +/* 0A9998 800A8D98 44818000 */ mtc1 $at, $f16 +/* 0A999C 800A8D9C C44C036C */ lwc1 $f12, 0x36c($v0) +/* 0A99A0 800A8DA0 C4520370 */ lwc1 $f18, 0x370($v0) +/* 0A99A4 800A8DA4 460C8101 */ sub.s $f4, $f16, $f12 +/* 0A99A8 800A8DA8 4458F800 */ cfc1 $t8, $31 +/* 0A99AC 800A8DAC 00000000 */ nop +/* 0A99B0 800A8DB0 37010003 */ ori $at, $t8, 3 +/* 0A99B4 800A8DB4 38210002 */ xori $at, $at, 2 +/* 0A99B8 800A8DB8 44C1F800 */ ctc1 $at, $31 +/* 0A99BC 800A8DBC 3C01C2C8 */ li $at, 0xC2C80000 # -100.000000 +/* 0A99C0 800A8DC0 460021A4 */ cvt.w.s $f6, $f4 +/* 0A99C4 800A8DC4 44815000 */ mtc1 $at, $f10 +/* 0A99C8 800A8DC8 44D8F800 */ ctc1 $t8, $31 +/* 0A99CC 800A8DCC 44043000 */ mfc1 $a0, $f6 +/* 0A99D0 800A8DD0 46125201 */ sub.s $f8, $f10, $f18 +/* 0A99D4 800A8DD4 4459F800 */ cfc1 $t9, $31 +/* 0A99D8 800A8DD8 00000000 */ nop +/* 0A99DC 800A8DDC 37210003 */ ori $at, $t9, 3 +/* 0A99E0 800A8DE0 38210002 */ xori $at, $at, 2 +/* 0A99E4 800A8DE4 44C1F800 */ ctc1 $at, $31 +/* 0A99E8 800A8DE8 00000000 */ nop +/* 0A99EC 800A8DEC 46004424 */ cvt.w.s $f16, $f8 +/* 0A99F0 800A8DF0 44D9F800 */ ctc1 $t9, $31 +/* 0A99F4 800A8DF4 44038000 */ mfc1 $v1, $f16 +/* 0A99F8 800A8DF8 00000000 */ nop +/* 0A99FC 800A8DFC 44842000 */ mtc1 $a0, $f4 +.L800A8E00: +/* 0A9A00 800A8E00 44835000 */ mtc1 $v1, $f10 +/* 0A9A04 800A8E04 46802020 */ cvt.s.w $f0, $f4 +/* 0A9A08 800A8E08 246A0001 */ addiu $t2, $v1, 1 +/* 0A9A0C 800A8E0C 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 +/* 0A9A10 800A8E10 46006180 */ add.s $f6, $f12, $f0 +/* 0A9A14 800A8E14 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0A9A18 800A8E18 E446036C */ swc1 $f6, 0x36c($v0) +/* 0A9A1C 800A8E1C 8E420000 */ lw $v0, ($s2) +/* 0A9A20 800A8E20 468050A0 */ cvt.s.w $f2, $f10 +/* 0A9A24 800A8E24 C4520370 */ lwc1 $f18, 0x370($v0) +/* 0A9A28 800A8E28 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 0A9A2C 800A8E2C 46029200 */ add.s $f8, $f18, $f2 +/* 0A9A30 800A8E30 240F0001 */ li $t7, 1 +/* 0A9A34 800A8E34 E4480370 */ swc1 $f8, 0x370($v0) +/* 0A9A38 800A8E38 8E420000 */ lw $v0, ($s2) +/* 0A9A3C 800A8E3C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0A9A40 800A8E40 C45000EC */ lwc1 $f16, 0xec($v0) +/* 0A9A44 800A8E44 02802025 */ move $a0, $s4 +/* 0A9A48 800A8E48 46008100 */ add.s $f4, $f16, $f0 +/* 0A9A4C 800A8E4C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0A9A50 800A8E50 E44400EC */ swc1 $f4, 0xec($v0) +/* 0A9A54 800A8E54 8E420000 */ lw $v0, ($s2) +/* 0A9A58 800A8E58 00000000 */ nop +/* 0A9A5C 800A8E5C C44600F0 */ lwc1 $f6, 0xf0($v0) +/* 0A9A60 800A8E60 00000000 */ nop +/* 0A9A64 800A8E64 46023280 */ add.s $f10, $f6, $f2 +/* 0A9A68 800A8E68 E44A00F0 */ swc1 $f10, 0xf0($v0) +/* 0A9A6C 800A8E6C 8E420000 */ lw $v0, ($s2) +/* 0A9A70 800A8E70 00000000 */ nop +/* 0A9A74 800A8E74 C452038C */ lwc1 $f18, 0x38c($v0) +/* 0A9A78 800A8E78 00000000 */ nop +/* 0A9A7C 800A8E7C 46009200 */ add.s $f8, $f18, $f0 +/* 0A9A80 800A8E80 448A9000 */ mtc1 $t2, $f18 +/* 0A9A84 800A8E84 E448038C */ swc1 $f8, 0x38c($v0) +/* 0A9A88 800A8E88 8E420000 */ lw $v0, ($s2) +/* 0A9A8C 800A8E8C 468093A0 */ cvt.s.w $f14, $f18 +/* 0A9A90 800A8E90 C4500390 */ lwc1 $f16, 0x390($v0) +/* 0A9A94 800A8E94 00000000 */ nop +/* 0A9A98 800A8E98 46028100 */ add.s $f4, $f16, $f2 +/* 0A9A9C 800A8E9C E4440390 */ swc1 $f4, 0x390($v0) +/* 0A9AA0 800A8EA0 8E420000 */ lw $v0, ($s2) +/* 0A9AA4 800A8EA4 00000000 */ nop +/* 0A9AA8 800A8EA8 C446010C */ lwc1 $f6, 0x10c($v0) +/* 0A9AAC 800A8EAC 00000000 */ nop +/* 0A9AB0 800A8EB0 46003280 */ add.s $f10, $f6, $f0 +/* 0A9AB4 800A8EB4 E44A010C */ swc1 $f10, 0x10c($v0) +/* 0A9AB8 800A8EB8 8E420000 */ lw $v0, ($s2) +/* 0A9ABC 800A8EBC 00000000 */ nop +/* 0A9AC0 800A8EC0 C4480110 */ lwc1 $f8, 0x110($v0) +/* 0A9AC4 800A8EC4 00000000 */ nop +/* 0A9AC8 800A8EC8 460E4401 */ sub.s $f16, $f8, $f14 +/* 0A9ACC 800A8ECC E4500110 */ swc1 $f16, 0x110($v0) +/* 0A9AD0 800A8ED0 8E420000 */ lw $v0, ($s2) +/* 0A9AD4 800A8ED4 00000000 */ nop +/* 0A9AD8 800A8ED8 C444012C */ lwc1 $f4, 0x12c($v0) +/* 0A9ADC 800A8EDC 00000000 */ nop +/* 0A9AE0 800A8EE0 46002180 */ add.s $f6, $f4, $f0 +/* 0A9AE4 800A8EE4 E446012C */ swc1 $f6, 0x12c($v0) +/* 0A9AE8 800A8EE8 8E420000 */ lw $v0, ($s2) +/* 0A9AEC 800A8EEC 00000000 */ nop +/* 0A9AF0 800A8EF0 C44A0130 */ lwc1 $f10, 0x130($v0) +/* 0A9AF4 800A8EF4 00000000 */ nop +/* 0A9AF8 800A8EF8 460E5481 */ sub.s $f18, $f10, $f14 +/* 0A9AFC 800A8EFC E4520130 */ swc1 $f18, 0x130($v0) +/* 0A9B00 800A8F00 8E420000 */ lw $v0, ($s2) +/* 0A9B04 800A8F04 00000000 */ nop +/* 0A9B08 800A8F08 C448024C */ lwc1 $f8, 0x24c($v0) +/* 0A9B0C 800A8F0C 00000000 */ nop +/* 0A9B10 800A8F10 46004400 */ add.s $f16, $f8, $f0 +/* 0A9B14 800A8F14 E450024C */ swc1 $f16, 0x24c($v0) +/* 0A9B18 800A8F18 8E420000 */ lw $v0, ($s2) +/* 0A9B1C 800A8F1C 00000000 */ nop +/* 0A9B20 800A8F20 C4440250 */ lwc1 $f4, 0x250($v0) +/* 0A9B24 800A8F24 00000000 */ nop +/* 0A9B28 800A8F28 46022181 */ sub.s $f6, $f4, $f2 +/* 0A9B2C 800A8F2C E4460250 */ swc1 $f6, 0x250($v0) +/* 0A9B30 800A8F30 820B0003 */ lb $t3, 3($s0) +/* 0A9B34 800A8F34 8E4D0000 */ lw $t5, ($s2) +/* 0A9B38 800A8F38 256C0038 */ addiu $t4, $t3, 0x38 +/* 0A9B3C 800A8F3C A5AC0646 */ sh $t4, 0x646($t5) +/* 0A9B40 800A8F40 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) +/* 0A9B44 800A8F44 00000000 */ nop +/* 0A9B48 800A8F48 15C0000D */ bnez $t6, .L800A8F80 +/* 0A9B4C 800A8F4C 00000000 */ nop +/* 0A9B50 800A8F50 8E420000 */ lw $v0, ($s2) +/* 0A9B54 800A8F54 44819000 */ mtc1 $at, $f18 +/* 0A9B58 800A8F58 C44A064C */ lwc1 $f10, 0x64c($v0) +/* 0A9B5C 800A8F5C 44812000 */ mtc1 $at, $f4 +/* 0A9B60 800A8F60 46125201 */ sub.s $f8, $f10, $f18 +/* 0A9B64 800A8F64 E448064C */ swc1 $f8, 0x64c($v0) +/* 0A9B68 800A8F68 8E420000 */ lw $v0, ($s2) +/* 0A9B6C 800A8F6C 00000000 */ nop +/* 0A9B70 800A8F70 C450066C */ lwc1 $f16, 0x66c($v0) +/* 0A9B74 800A8F74 00000000 */ nop +/* 0A9B78 800A8F78 46048181 */ sub.s $f6, $f16, $f4 +/* 0A9B7C 800A8F7C E446066C */ swc1 $f6, 0x66c($v0) +.L800A8F80: +/* 0A9B80 800A8F80 8E470000 */ lw $a3, ($s2) +/* 0A9B84 800A8F84 A22F0000 */ sb $t7, ($s1) +/* 0A9B88 800A8F88 E7A0004C */ swc1 $f0, 0x4c($sp) +/* 0A9B8C 800A8F8C E7A20048 */ swc1 $f2, 0x48($sp) +/* 0A9B90 800A8F90 E7AE0044 */ swc1 $f14, 0x44($sp) +/* 0A9B94 800A8F94 0C02A980 */ jal func_800AA600 +/* 0A9B98 800A8F98 24E70640 */ addiu $a3, $a3, 0x640 +/* 0A9B9C 800A8F9C 8E420000 */ lw $v0, ($s2) +/* 0A9BA0 800A8FA0 A2200000 */ sb $zero, ($s1) +/* 0A9BA4 800A8FA4 805800FB */ lb $t8, 0xfb($v0) +/* 0A9BA8 800A8FA8 C7A0004C */ lwc1 $f0, 0x4c($sp) +/* 0A9BAC 800A8FAC C7A20048 */ lwc1 $f2, 0x48($sp) +/* 0A9BB0 800A8FB0 C7AE0044 */ lwc1 $f14, 0x44($sp) +/* 0A9BB4 800A8FB4 17000006 */ bnez $t8, .L800A8FD0 +/* 0A9BB8 800A8FB8 02002025 */ move $a0, $s0 +/* 0A9BBC 800A8FBC 82030185 */ lb $v1, 0x185($s0) +/* 0A9BC0 800A8FC0 2401000A */ li $at, 10 +/* 0A9BC4 800A8FC4 14610003 */ bne $v1, $at, .L800A8FD4 +/* 0A9BC8 800A8FC8 8FA5016C */ lw $a1, 0x16c($sp) +/* 0A9BCC 800A8FCC A04300FB */ sb $v1, 0xfb($v0) +.L800A8FD0: +/* 0A9BD0 800A8FD0 8FA5016C */ lw $a1, 0x16c($sp) +.L800A8FD4: +/* 0A9BD4 800A8FD4 E7A0004C */ swc1 $f0, 0x4c($sp) +/* 0A9BD8 800A8FD8 E7A20048 */ swc1 $f2, 0x48($sp) +/* 0A9BDC 800A8FDC 0C029055 */ jal func_800A4154 +/* 0A9BE0 800A8FE0 E7AE0044 */ swc1 $f14, 0x44($sp) +/* 0A9BE4 800A8FE4 8E420000 */ lw $v0, ($s2) +/* 0A9BE8 800A8FE8 C7A0004C */ lwc1 $f0, 0x4c($sp) +/* 0A9BEC 800A8FEC C44A036C */ lwc1 $f10, 0x36c($v0) +/* 0A9BF0 800A8FF0 C7A20048 */ lwc1 $f2, 0x48($sp) +/* 0A9BF4 800A8FF4 46005481 */ sub.s $f18, $f10, $f0 +/* 0A9BF8 800A8FF8 C7AE0044 */ lwc1 $f14, 0x44($sp) +/* 0A9BFC 800A8FFC E452036C */ swc1 $f18, 0x36c($v0) +/* 0A9C00 800A9000 8E420000 */ lw $v0, ($s2) +/* 0A9C04 800A9004 24040001 */ li $a0, 1 +/* 0A9C08 800A9008 C4480370 */ lwc1 $f8, 0x370($v0) +/* 0A9C0C 800A900C 00000000 */ nop +/* 0A9C10 800A9010 46024401 */ sub.s $f16, $f8, $f2 +/* 0A9C14 800A9014 E4500370 */ swc1 $f16, 0x370($v0) +/* 0A9C18 800A9018 8E420000 */ lw $v0, ($s2) +/* 0A9C1C 800A901C 00000000 */ nop +/* 0A9C20 800A9020 C44400EC */ lwc1 $f4, 0xec($v0) +/* 0A9C24 800A9024 00000000 */ nop +/* 0A9C28 800A9028 46002181 */ sub.s $f6, $f4, $f0 +/* 0A9C2C 800A902C E44600EC */ swc1 $f6, 0xec($v0) +/* 0A9C30 800A9030 8E420000 */ lw $v0, ($s2) +/* 0A9C34 800A9034 00000000 */ nop +/* 0A9C38 800A9038 C44A00F0 */ lwc1 $f10, 0xf0($v0) +/* 0A9C3C 800A903C 00000000 */ nop +/* 0A9C40 800A9040 46025481 */ sub.s $f18, $f10, $f2 +/* 0A9C44 800A9044 E45200F0 */ swc1 $f18, 0xf0($v0) +/* 0A9C48 800A9048 8E420000 */ lw $v0, ($s2) +/* 0A9C4C 800A904C 00000000 */ nop +/* 0A9C50 800A9050 C448038C */ lwc1 $f8, 0x38c($v0) +/* 0A9C54 800A9054 00000000 */ nop +/* 0A9C58 800A9058 46004401 */ sub.s $f16, $f8, $f0 +/* 0A9C5C 800A905C E450038C */ swc1 $f16, 0x38c($v0) +/* 0A9C60 800A9060 8E420000 */ lw $v0, ($s2) +/* 0A9C64 800A9064 00000000 */ nop +/* 0A9C68 800A9068 C4440390 */ lwc1 $f4, 0x390($v0) +/* 0A9C6C 800A906C 00000000 */ nop +/* 0A9C70 800A9070 46022181 */ sub.s $f6, $f4, $f2 +/* 0A9C74 800A9074 E4460390 */ swc1 $f6, 0x390($v0) +/* 0A9C78 800A9078 8E420000 */ lw $v0, ($s2) +/* 0A9C7C 800A907C 00000000 */ nop +/* 0A9C80 800A9080 C44A010C */ lwc1 $f10, 0x10c($v0) +/* 0A9C84 800A9084 00000000 */ nop +/* 0A9C88 800A9088 46005481 */ sub.s $f18, $f10, $f0 +/* 0A9C8C 800A908C E452010C */ swc1 $f18, 0x10c($v0) +/* 0A9C90 800A9090 8E420000 */ lw $v0, ($s2) +/* 0A9C94 800A9094 00000000 */ nop +/* 0A9C98 800A9098 C4480110 */ lwc1 $f8, 0x110($v0) +/* 0A9C9C 800A909C 00000000 */ nop +/* 0A9CA0 800A90A0 460E4400 */ add.s $f16, $f8, $f14 +/* 0A9CA4 800A90A4 E4500110 */ swc1 $f16, 0x110($v0) +/* 0A9CA8 800A90A8 8E420000 */ lw $v0, ($s2) +/* 0A9CAC 800A90AC 00000000 */ nop +/* 0A9CB0 800A90B0 C444012C */ lwc1 $f4, 0x12c($v0) +/* 0A9CB4 800A90B4 00000000 */ nop +/* 0A9CB8 800A90B8 46002181 */ sub.s $f6, $f4, $f0 +/* 0A9CBC 800A90BC E446012C */ swc1 $f6, 0x12c($v0) +/* 0A9CC0 800A90C0 8E420000 */ lw $v0, ($s2) +/* 0A9CC4 800A90C4 00000000 */ nop +/* 0A9CC8 800A90C8 C44A0130 */ lwc1 $f10, 0x130($v0) +/* 0A9CCC 800A90CC 00000000 */ nop +/* 0A9CD0 800A90D0 460E5480 */ add.s $f18, $f10, $f14 +/* 0A9CD4 800A90D4 E4520130 */ swc1 $f18, 0x130($v0) +/* 0A9CD8 800A90D8 8E420000 */ lw $v0, ($s2) +/* 0A9CDC 800A90DC 00000000 */ nop +/* 0A9CE0 800A90E0 C448024C */ lwc1 $f8, 0x24c($v0) +/* 0A9CE4 800A90E4 00000000 */ nop +/* 0A9CE8 800A90E8 46004401 */ sub.s $f16, $f8, $f0 +/* 0A9CEC 800A90EC E450024C */ swc1 $f16, 0x24c($v0) +/* 0A9CF0 800A90F0 8E420000 */ lw $v0, ($s2) +/* 0A9CF4 800A90F4 00000000 */ nop +/* 0A9CF8 800A90F8 C4440250 */ lwc1 $f4, 0x250($v0) +/* 0A9CFC 800A90FC 00000000 */ nop +/* 0A9D00 800A9100 46022180 */ add.s $f6, $f4, $f2 +/* 0A9D04 800A9104 E4460250 */ swc1 $f6, 0x250($v0) +/* 0A9D08 800A9108 8FB900E4 */ lw $t9, 0xe4($sp) +/* 0A9D0C 800A910C 8E4A0000 */ lw $t2, ($s2) +/* 0A9D10 800A9110 44995000 */ mtc1 $t9, $f10 +/* 0A9D14 800A9114 00000000 */ nop +/* 0A9D18 800A9118 468054A0 */ cvt.s.w $f18, $f10 +/* 0A9D1C 800A911C E552064C */ swc1 $f18, 0x64c($t2) +/* 0A9D20 800A9120 8FAB00E0 */ lw $t3, 0xe0($sp) +/* 0A9D24 800A9124 8E4C0000 */ lw $t4, ($s2) +/* 0A9D28 800A9128 448B4000 */ mtc1 $t3, $f8 +/* 0A9D2C 800A912C 00000000 */ nop +/* 0A9D30 800A9130 46804420 */ cvt.s.w $f16, $f8 +/* 0A9D34 800A9134 0C01EFC7 */ jal func_8007BF1C +/* 0A9D38 800A9138 E5900650 */ swc1 $f16, 0x650($t4) +/* 0A9D3C 800A913C 0C01ECF4 */ jal func_8007B3D0 +/* 0A9D40 800A9140 02802025 */ move $a0, $s4 +/* 0A9D44 800A9144 0C01A142 */ jal func_80068508 +/* 0A9D48 800A9148 00002025 */ move $a0, $zero +.L800A914C: +/* 0A9D4C 800A914C 10000159 */ b .L800A96B4 +/* 0A9D50 800A9150 00000000 */ nop +/* 0A9D54 800A9154 24010041 */ li $at, 65 +.L800A9158: +/* 0A9D58 800A9158 14610156 */ bne $v1, $at, .L800A96B4 +/* 0A9D5C 800A915C 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 +/* 0A9D60 800A9160 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) +/* 0A9D64 800A9164 24010002 */ li $at, 2 +/* 0A9D68 800A9168 1461007C */ bne $v1, $at, .L800A935C +/* 0A9D6C 800A916C 3C0D8012 */ lui $t5, %hi(D_80126D0C) # $t5, 0x8012 +/* 0A9D70 800A9170 8DAD6D0C */ lw $t5, %lo(D_80126D0C)($t5) +/* 0A9D74 800A9174 3C0E800E */ lui $t6, 0x800e +/* 0A9D78 800A9178 01CD7021 */ addu $t6, $t6, $t5 +/* 0A9D7C 800A917C 81CE27A4 */ lb $t6, 0x27a4($t6) +/* 0A9D80 800A9180 3C128012 */ lui $s2, %hi(D_80126CDC) # $s2, 0x8012 +/* 0A9D84 800A9184 15C00075 */ bnez $t6, .L800A935C +/* 0A9D88 800A9188 26526CDC */ addiu $s2, %lo(D_80126CDC) # addiu $s2, $s2, 0x6cdc +/* 0A9D8C 800A918C 444FF800 */ cfc1 $t7, $31 +/* 0A9D90 800A9190 8E420000 */ lw $v0, ($s2) +/* 0A9D94 800A9194 35E10003 */ ori $at, $t7, 3 +/* 0A9D98 800A9198 38210002 */ xori $at, $at, 2 +/* 0A9D9C 800A919C 44C1F800 */ ctc1 $at, $31 +/* 0A9DA0 800A91A0 C444064C */ lwc1 $f4, 0x64c($v0) +/* 0A9DA4 800A91A4 C44A0650 */ lwc1 $f10, 0x650($v0) +/* 0A9DA8 800A91A8 460021A4 */ cvt.w.s $f6, $f4 +/* 0A9DAC 800A91AC C448040C */ lwc1 $f8, 0x40c($v0) +/* 0A9DB0 800A91B0 44CFF800 */ ctc1 $t7, $31 +/* 0A9DB4 800A91B4 C4440410 */ lwc1 $f4, 0x410($v0) +/* 0A9DB8 800A91B8 44103000 */ mfc1 $s0, $f6 +/* 0A9DBC 800A91BC 4458F800 */ cfc1 $t8, $31 +/* 0A9DC0 800A91C0 27A400CC */ addiu $a0, $sp, 0xcc +/* 0A9DC4 800A91C4 37010003 */ ori $at, $t8, 3 +/* 0A9DC8 800A91C8 38210002 */ xori $at, $at, 2 +/* 0A9DCC 800A91CC 44C1F800 */ ctc1 $at, $31 +/* 0A9DD0 800A91D0 00000000 */ nop +/* 0A9DD4 800A91D4 460054A4 */ cvt.w.s $f18, $f10 +/* 0A9DD8 800A91D8 44D8F800 */ ctc1 $t8, $31 +/* 0A9DDC 800A91DC 44119000 */ mfc1 $s1, $f18 +/* 0A9DE0 800A91E0 00000000 */ nop +/* 0A9DE4 800A91E4 4459F800 */ cfc1 $t9, $31 +/* 0A9DE8 800A91E8 00000000 */ nop +/* 0A9DEC 800A91EC 37210003 */ ori $at, $t9, 3 +/* 0A9DF0 800A91F0 38210002 */ xori $at, $at, 2 +/* 0A9DF4 800A91F4 44C1F800 */ ctc1 $at, $31 +/* 0A9DF8 800A91F8 00000000 */ nop +/* 0A9DFC 800A91FC 46004424 */ cvt.w.s $f16, $f8 +/* 0A9E00 800A9200 44D9F800 */ ctc1 $t9, $31 +/* 0A9E04 800A9204 44138000 */ mfc1 $s3, $f16 +/* 0A9E08 800A9208 00000000 */ nop +/* 0A9E0C 800A920C 444AF800 */ cfc1 $t2, $31 +/* 0A9E10 800A9210 00000000 */ nop +/* 0A9E14 800A9214 35410003 */ ori $at, $t2, 3 +/* 0A9E18 800A9218 38210002 */ xori $at, $at, 2 +/* 0A9E1C 800A921C 44C1F800 */ ctc1 $at, $31 +/* 0A9E20 800A9220 00000000 */ nop +/* 0A9E24 800A9224 460021A4 */ cvt.w.s $f6, $f4 +/* 0A9E28 800A9228 440B3000 */ mfc1 $t3, $f6 +/* 0A9E2C 800A922C 44CAF800 */ ctc1 $t2, $31 +/* 0A9E30 800A9230 0C006E9D */ jal func_8001BA74 +/* 0A9E34 800A9234 AFAB00BC */ sw $t3, 0xbc($sp) +/* 0A9E38 800A9238 8FAC00CC */ lw $t4, 0xcc($sp) +/* 0A9E3C 800A923C 00001825 */ move $v1, $zero +/* 0A9E40 800A9240 19800032 */ blez $t4, .L800A930C +/* 0A9E44 800A9244 00403025 */ move $a2, $v0 +.L800A9248: +/* 0A9E48 800A9248 8CCD0000 */ lw $t5, ($a2) +/* 0A9E4C 800A924C 00000000 */ nop +/* 0A9E50 800A9250 8DA40064 */ lw $a0, 0x64($t5) +/* 0A9E54 800A9254 AFA60054 */ sw $a2, 0x54($sp) +/* 0A9E58 800A9258 0C02917C */ jal func_800A45F0 +/* 0A9E5C 800A925C AFA300D0 */ sw $v1, 0xd0($sp) +/* 0A9E60 800A9260 3C01800F */ li $at, 0x800F0000 # -0.000000 +/* 0A9E64 800A9264 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 +/* 0A9E68 800A9268 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) +/* 0A9E6C 800A926C C42187B8 */ lwc1 $f1, %lo(D_800E87B8)($at) +/* 0A9E70 800A9270 C42087BC */ lwc1 $f0, %lo(D_800E87BC)($at) +/* 0A9E74 800A9274 8FA300D0 */ lw $v1, 0xd0($sp) +/* 0A9E78 800A9278 8FA60054 */ lw $a2, 0x54($sp) +/* 0A9E7C 800A927C 15C00012 */ bnez $t6, .L800A92C8 +/* 0A9E80 800A9280 3C01425C */ li $at, 0x425C0000 # 55.000000 +/* 0A9E84 800A9284 8E420000 */ lw $v0, ($s2) +/* 0A9E88 800A9288 00000000 */ nop +/* 0A9E8C 800A928C C44A0650 */ lwc1 $f10, 0x650($v0) +/* 0A9E90 800A9290 00000000 */ nop +/* 0A9E94 800A9294 460054A1 */ cvt.d.s $f18, $f10 +/* 0A9E98 800A9298 46209200 */ add.d $f8, $f18, $f0 +/* 0A9E9C 800A929C 46204420 */ cvt.s.d $f16, $f8 +/* 0A9EA0 800A92A0 E4500650 */ swc1 $f16, 0x650($v0) +/* 0A9EA4 800A92A4 8E420000 */ lw $v0, ($s2) +/* 0A9EA8 800A92A8 00000000 */ nop +/* 0A9EAC 800A92AC C4440410 */ lwc1 $f4, 0x410($v0) +/* 0A9EB0 800A92B0 00000000 */ nop +/* 0A9EB4 800A92B4 460021A1 */ cvt.d.s $f6, $f4 +/* 0A9EB8 800A92B8 46203280 */ add.d $f10, $f6, $f0 +/* 0A9EBC 800A92BC 462054A0 */ cvt.s.d $f18, $f10 +/* 0A9EC0 800A92C0 1000000D */ b .L800A92F8 +/* 0A9EC4 800A92C4 E4520410 */ swc1 $f18, 0x410($v0) +.L800A92C8: +/* 0A9EC8 800A92C8 8E420000 */ lw $v0, ($s2) +/* 0A9ECC 800A92CC 44818000 */ mtc1 $at, $f16 +/* 0A9ED0 800A92D0 C4480650 */ lwc1 $f8, 0x650($v0) +/* 0A9ED4 800A92D4 44815000 */ mtc1 $at, $f10 +/* 0A9ED8 800A92D8 46104100 */ add.s $f4, $f8, $f16 +/* 0A9EDC 800A92DC E4440650 */ swc1 $f4, 0x650($v0) +/* 0A9EE0 800A92E0 8E420000 */ lw $v0, ($s2) +/* 0A9EE4 800A92E4 00000000 */ nop +/* 0A9EE8 800A92E8 C4460410 */ lwc1 $f6, 0x410($v0) +/* 0A9EEC 800A92EC 00000000 */ nop +/* 0A9EF0 800A92F0 460A3480 */ add.s $f18, $f6, $f10 +/* 0A9EF4 800A92F4 E4520410 */ swc1 $f18, 0x410($v0) +.L800A92F8: +/* 0A9EF8 800A92F8 8FAF00CC */ lw $t7, 0xcc($sp) +/* 0A9EFC 800A92FC 24630001 */ addiu $v1, $v1, 1 +/* 0A9F00 800A9300 006F082A */ slt $at, $v1, $t7 +/* 0A9F04 800A9304 1420FFD0 */ bnez $at, .L800A9248 +/* 0A9F08 800A9308 24C60004 */ addiu $a2, $a2, 4 +.L800A930C: +/* 0A9F0C 800A930C 44904000 */ mtc1 $s0, $f8 +/* 0A9F10 800A9310 8E580000 */ lw $t8, ($s2) +/* 0A9F14 800A9314 46804420 */ cvt.s.w $f16, $f8 +/* 0A9F18 800A9318 44912000 */ mtc1 $s1, $f4 +/* 0A9F1C 800A931C 44935000 */ mtc1 $s3, $f10 +/* 0A9F20 800A9320 468021A0 */ cvt.s.w $f6, $f4 +/* 0A9F24 800A9324 E710064C */ swc1 $f16, 0x64c($t8) +/* 0A9F28 800A9328 8E590000 */ lw $t9, ($s2) +/* 0A9F2C 800A932C 468054A0 */ cvt.s.w $f18, $f10 +/* 0A9F30 800A9330 E7260650 */ swc1 $f6, 0x650($t9) +/* 0A9F34 800A9334 8E4A0000 */ lw $t2, ($s2) +/* 0A9F38 800A9338 00000000 */ nop +/* 0A9F3C 800A933C E552040C */ swc1 $f18, 0x40c($t2) +/* 0A9F40 800A9340 8FAB00BC */ lw $t3, 0xbc($sp) +/* 0A9F44 800A9344 8E4C0000 */ lw $t4, ($s2) +/* 0A9F48 800A9348 448B4000 */ mtc1 $t3, $f8 +/* 0A9F4C 800A934C 00000000 */ nop +/* 0A9F50 800A9350 46804420 */ cvt.s.w $f16, $f8 +/* 0A9F54 800A9354 100000D7 */ b .L800A96B4 +/* 0A9F58 800A9358 E5900410 */ swc1 $f16, 0x410($t4) +.L800A935C: +/* 0A9F5C 800A935C 24010003 */ li $at, 3 +/* 0A9F60 800A9360 146100D4 */ bne $v1, $at, .L800A96B4 +/* 0A9F64 800A9364 00000000 */ nop +/* 0A9F68 800A9368 8FAD0140 */ lw $t5, 0x140($sp) +/* 0A9F6C 800A936C 00003025 */ move $a2, $zero +/* 0A9F70 800A9370 19A00042 */ blez $t5, .L800A947C +/* 0A9F74 800A9374 00002825 */ move $a1, $zero +/* 0A9F78 800A9378 31A80003 */ andi $t0, $t5, 3 +/* 0A9F7C 800A937C 11000013 */ beqz $t0, .L800A93CC +/* 0A9F80 800A9380 01003825 */ move $a3, $t0 +/* 0A9F84 800A9384 00007080 */ sll $t6, $zero, 2 +/* 0A9F88 800A9388 004E2021 */ addu $a0, $v0, $t6 +/* 0A9F8C 800A938C 2413FFFF */ li $s3, -1 +.L800A9390: +/* 0A9F90 800A9390 8C8F0000 */ lw $t7, ($a0) +/* 0A9F94 800A9394 24A50001 */ addiu $a1, $a1, 1 +/* 0A9F98 800A9398 8DE30064 */ lw $v1, 0x64($t7) +/* 0A9F9C 800A939C 00000000 */ nop +/* 0A9FA0 800A93A0 84780000 */ lh $t8, ($v1) +/* 0A9FA4 800A93A4 00000000 */ nop +/* 0A9FA8 800A93A8 16780002 */ bne $s3, $t8, .L800A93B4 +/* 0A9FAC 800A93AC 00000000 */ nop +/* 0A9FB0 800A93B0 00603025 */ move $a2, $v1 +.L800A93B4: +/* 0A9FB4 800A93B4 14E5FFF6 */ bne $a3, $a1, .L800A9390 +/* 0A9FB8 800A93B8 24840004 */ addiu $a0, $a0, 4 +/* 0A9FBC 800A93BC 8FB90140 */ lw $t9, 0x140($sp) +/* 0A9FC0 800A93C0 00000000 */ nop +/* 0A9FC4 800A93C4 10B9002D */ beq $a1, $t9, .L800A947C +/* 0A9FC8 800A93C8 00000000 */ nop +.L800A93CC: +/* 0A9FCC 800A93CC 8FAA0140 */ lw $t2, 0x140($sp) +/* 0A9FD0 800A93D0 00056080 */ sll $t4, $a1, 2 +/* 0A9FD4 800A93D4 000A5880 */ sll $t3, $t2, 2 +/* 0A9FD8 800A93D8 01623821 */ addu $a3, $t3, $v0 +/* 0A9FDC 800A93DC 004C2021 */ addu $a0, $v0, $t4 +/* 0A9FE0 800A93E0 2413FFFF */ li $s3, -1 +.L800A93E4: +/* 0A9FE4 800A93E4 8C8D0000 */ lw $t5, ($a0) +/* 0A9FE8 800A93E8 00000000 */ nop +/* 0A9FEC 800A93EC 8DA30064 */ lw $v1, 0x64($t5) +/* 0A9FF0 800A93F0 00000000 */ nop +/* 0A9FF4 800A93F4 846E0000 */ lh $t6, ($v1) +/* 0A9FF8 800A93F8 00000000 */ nop +/* 0A9FFC 800A93FC 166E0002 */ bne $s3, $t6, .L800A9408 +/* 0AA000 800A9400 00000000 */ nop +/* 0AA004 800A9404 00603025 */ move $a2, $v1 +.L800A9408: +/* 0AA008 800A9408 8C8F0004 */ lw $t7, 4($a0) +/* 0AA00C 800A940C 00000000 */ nop +/* 0AA010 800A9410 8DE30064 */ lw $v1, 0x64($t7) +/* 0AA014 800A9414 00000000 */ nop +/* 0AA018 800A9418 84780000 */ lh $t8, ($v1) +/* 0AA01C 800A941C 00000000 */ nop +/* 0AA020 800A9420 16780002 */ bne $s3, $t8, .L800A942C +/* 0AA024 800A9424 00000000 */ nop +/* 0AA028 800A9428 00603025 */ move $a2, $v1 +.L800A942C: +/* 0AA02C 800A942C 8C990008 */ lw $t9, 8($a0) +/* 0AA030 800A9430 00000000 */ nop +/* 0AA034 800A9434 8F230064 */ lw $v1, 0x64($t9) +/* 0AA038 800A9438 00000000 */ nop +/* 0AA03C 800A943C 846A0000 */ lh $t2, ($v1) +/* 0AA040 800A9440 00000000 */ nop +/* 0AA044 800A9444 166A0002 */ bne $s3, $t2, .L800A9450 +/* 0AA048 800A9448 00000000 */ nop +/* 0AA04C 800A944C 00603025 */ move $a2, $v1 +.L800A9450: +/* 0AA050 800A9450 8C8B000C */ lw $t3, 0xc($a0) +/* 0AA054 800A9454 24840010 */ addiu $a0, $a0, 0x10 +/* 0AA058 800A9458 8D630064 */ lw $v1, 0x64($t3) +/* 0AA05C 800A945C 00000000 */ nop +/* 0AA060 800A9460 846C0000 */ lh $t4, ($v1) +/* 0AA064 800A9464 00000000 */ nop +/* 0AA068 800A9468 166C0002 */ bne $s3, $t4, .L800A9474 +/* 0AA06C 800A946C 00000000 */ nop +/* 0AA070 800A9470 00603025 */ move $a2, $v1 +.L800A9474: +/* 0AA074 800A9474 1487FFDB */ bne $a0, $a3, .L800A93E4 +/* 0AA078 800A9478 00000000 */ nop +.L800A947C: +/* 0AA07C 800A947C 10C0008D */ beqz $a2, .L800A96B4 +/* 0AA080 800A9480 3C128012 */ lui $s2, %hi(D_80126CDC) # $s2, 0x8012 +/* 0AA084 800A9484 444DF800 */ cfc1 $t5, $31 +/* 0AA088 800A9488 26526CDC */ addiu $s2, %lo(D_80126CDC) # addiu $s2, $s2, 0x6cdc +/* 0AA08C 800A948C 8E420000 */ lw $v0, ($s2) +/* 0AA090 800A9490 35A10003 */ ori $at, $t5, 3 +/* 0AA094 800A9494 38210002 */ xori $at, $at, 2 +/* 0AA098 800A9498 44C1F800 */ ctc1 $at, $31 +/* 0AA09C 800A949C C444064C */ lwc1 $f4, 0x64c($v0) +/* 0AA0A0 800A94A0 C44A0650 */ lwc1 $f10, 0x650($v0) +/* 0AA0A4 800A94A4 460021A4 */ cvt.w.s $f6, $f4 +/* 0AA0A8 800A94A8 C448040C */ lwc1 $f8, 0x40c($v0) +/* 0AA0AC 800A94AC 44CDF800 */ ctc1 $t5, $31 +/* 0AA0B0 800A94B0 C4440410 */ lwc1 $f4, 0x410($v0) +/* 0AA0B4 800A94B4 44103000 */ mfc1 $s0, $f6 +/* 0AA0B8 800A94B8 444EF800 */ cfc1 $t6, $31 +/* 0AA0BC 800A94BC 3C0C8000 */ lui $t4, %hi(D_80000300) # $t4, 0x8000 +/* 0AA0C0 800A94C0 35C10003 */ ori $at, $t6, 3 +/* 0AA0C4 800A94C4 38210002 */ xori $at, $at, 2 +/* 0AA0C8 800A94C8 44C1F800 */ ctc1 $at, $31 +/* 0AA0CC 800A94CC 00C02025 */ move $a0, $a2 +/* 0AA0D0 800A94D0 460054A4 */ cvt.w.s $f18, $f10 +/* 0AA0D4 800A94D4 44CEF800 */ ctc1 $t6, $31 +/* 0AA0D8 800A94D8 44119000 */ mfc1 $s1, $f18 +/* 0AA0DC 800A94DC 00000000 */ nop +/* 0AA0E0 800A94E0 444FF800 */ cfc1 $t7, $31 +/* 0AA0E4 800A94E4 00000000 */ nop +/* 0AA0E8 800A94E8 35E10003 */ ori $at, $t7, 3 +/* 0AA0EC 800A94EC 38210002 */ xori $at, $at, 2 +/* 0AA0F0 800A94F0 44C1F800 */ ctc1 $at, $31 +/* 0AA0F4 800A94F4 00000000 */ nop +/* 0AA0F8 800A94F8 46004424 */ cvt.w.s $f16, $f8 +/* 0AA0FC 800A94FC 44CFF800 */ ctc1 $t7, $31 +/* 0AA100 800A9500 44038000 */ mfc1 $v1, $f16 +/* 0AA104 800A9504 00000000 */ nop +/* 0AA108 800A9508 4458F800 */ cfc1 $t8, $31 +/* 0AA10C 800A950C 00000000 */ nop +/* 0AA110 800A9510 37010003 */ ori $at, $t8, 3 +/* 0AA114 800A9514 38210002 */ xori $at, $at, 2 +/* 0AA118 800A9518 44C1F800 */ ctc1 $at, $31 +/* 0AA11C 800A951C 3C014361 */ li $at, 0x43610000 # 225.000000 +/* 0AA120 800A9520 44815000 */ mtc1 $at, $f10 +/* 0AA124 800A9524 3C014325 */ li $at, 0x43250000 # 165.000000 +/* 0AA128 800A9528 E44A064C */ swc1 $f10, 0x64c($v0) +/* 0AA12C 800A952C 8E590000 */ lw $t9, ($s2) +/* 0AA130 800A9530 44819000 */ mtc1 $at, $f18 +/* 0AA134 800A9534 3C014351 */ li $at, 0x43510000 # 209.000000 +/* 0AA138 800A9538 E7320650 */ swc1 $f18, 0x650($t9) +/* 0AA13C 800A953C 8E4A0000 */ lw $t2, ($s2) +/* 0AA140 800A9540 44814000 */ mtc1 $at, $f8 +/* 0AA144 800A9544 3C014341 */ li $at, 0x43410000 # 193.000000 +/* 0AA148 800A9548 E548040C */ swc1 $f8, 0x40c($t2) +/* 0AA14C 800A954C 8E4B0000 */ lw $t3, ($s2) +/* 0AA150 800A9550 44818000 */ mtc1 $at, $f16 +/* 0AA154 800A9554 460021A4 */ cvt.w.s $f6, $f4 +/* 0AA158 800A9558 E5700410 */ swc1 $f16, 0x410($t3) +/* 0AA15C 800A955C 8D8C0300 */ lw $t4, %lo(D_80000300)($t4) +/* 0AA160 800A9560 44053000 */ mfc1 $a1, $f6 +/* 0AA164 800A9564 44D8F800 */ ctc1 $t8, $31 +/* 0AA168 800A9568 1580003C */ bnez $t4, .L800A965C +/* 0AA16C 800A956C 3C01800F */ li $at, 0x800F0000 # -0.000000 +/* 0AA170 800A9570 C42187C0 */ lwc1 $f1, %lo(D_800E87C0)($at) +/* 0AA174 800A9574 C42087C4 */ lwc1 $f0, %lo(D_800E87C4)($at) +/* 0AA178 800A9578 8E420000 */ lw $v0, ($s2) +/* 0AA17C 800A957C 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 0AA180 800A9580 44813000 */ mtc1 $at, $f6 +/* 0AA184 800A9584 C444064C */ lwc1 $f4, 0x64c($v0) +/* 0AA188 800A9588 44814000 */ mtc1 $at, $f8 +/* 0AA18C 800A958C 46062281 */ sub.s $f10, $f4, $f6 +/* 0AA190 800A9590 E44A064C */ swc1 $f10, 0x64c($v0) +/* 0AA194 800A9594 8E420000 */ lw $v0, ($s2) +/* 0AA198 800A9598 00000000 */ nop +/* 0AA19C 800A959C C452040C */ lwc1 $f18, 0x40c($v0) +/* 0AA1A0 800A95A0 00000000 */ nop +/* 0AA1A4 800A95A4 46089401 */ sub.s $f16, $f18, $f8 +/* 0AA1A8 800A95A8 E450040C */ swc1 $f16, 0x40c($v0) +/* 0AA1AC 800A95AC 8E420000 */ lw $v0, ($s2) +/* 0AA1B0 800A95B0 00000000 */ nop +/* 0AA1B4 800A95B4 C4440650 */ lwc1 $f4, 0x650($v0) +/* 0AA1B8 800A95B8 00000000 */ nop +/* 0AA1BC 800A95BC 460021A1 */ cvt.d.s $f6, $f4 +/* 0AA1C0 800A95C0 46203282 */ mul.d $f10, $f6, $f0 +/* 0AA1C4 800A95C4 462054A0 */ cvt.s.d $f18, $f10 +/* 0AA1C8 800A95C8 E4520650 */ swc1 $f18, 0x650($v0) +/* 0AA1CC 800A95CC 8E420000 */ lw $v0, ($s2) +/* 0AA1D0 800A95D0 00000000 */ nop +/* 0AA1D4 800A95D4 C4480410 */ lwc1 $f8, 0x410($v0) +/* 0AA1D8 800A95D8 00000000 */ nop +/* 0AA1DC 800A95DC 46004421 */ cvt.d.s $f16, $f8 +/* 0AA1E0 800A95E0 46208102 */ mul.d $f4, $f16, $f0 +/* 0AA1E4 800A95E4 462021A0 */ cvt.s.d $f6, $f4 +/* 0AA1E8 800A95E8 444DF800 */ cfc1 $t5, $31 +/* 0AA1EC 800A95EC E4460410 */ swc1 $f6, 0x410($v0) +/* 0AA1F0 800A95F0 8E420000 */ lw $v0, ($s2) +/* 0AA1F4 800A95F4 35A10003 */ ori $at, $t5, 3 +/* 0AA1F8 800A95F8 38210002 */ xori $at, $at, 2 +/* 0AA1FC 800A95FC 44C1F800 */ ctc1 $at, $31 +/* 0AA200 800A9600 C44A0650 */ lwc1 $f10, 0x650($v0) +/* 0AA204 800A9604 00000000 */ nop +/* 0AA208 800A9608 460054A4 */ cvt.w.s $f18, $f10 +/* 0AA20C 800A960C 440E9000 */ mfc1 $t6, $f18 +/* 0AA210 800A9610 44CDF800 */ ctc1 $t5, $31 +/* 0AA214 800A9614 448E4000 */ mtc1 $t6, $f8 +/* 0AA218 800A9618 00000000 */ nop +/* 0AA21C 800A961C 46804420 */ cvt.s.w $f16, $f8 +/* 0AA220 800A9620 444FF800 */ cfc1 $t7, $31 +/* 0AA224 800A9624 E4500650 */ swc1 $f16, 0x650($v0) +/* 0AA228 800A9628 8E420000 */ lw $v0, ($s2) +/* 0AA22C 800A962C 35E10003 */ ori $at, $t7, 3 +/* 0AA230 800A9630 38210002 */ xori $at, $at, 2 +/* 0AA234 800A9634 44C1F800 */ ctc1 $at, $31 +/* 0AA238 800A9638 C4440410 */ lwc1 $f4, 0x410($v0) +/* 0AA23C 800A963C 00000000 */ nop +/* 0AA240 800A9640 460021A4 */ cvt.w.s $f6, $f4 +/* 0AA244 800A9644 44183000 */ mfc1 $t8, $f6 +/* 0AA248 800A9648 44CFF800 */ ctc1 $t7, $31 +/* 0AA24C 800A964C 44985000 */ mtc1 $t8, $f10 +/* 0AA250 800A9650 00000000 */ nop +/* 0AA254 800A9654 468054A0 */ cvt.s.w $f18, $f10 +/* 0AA258 800A9658 E4520410 */ swc1 $f18, 0x410($v0) +.L800A965C: +/* 0AA25C 800A965C AFA300A8 */ sw $v1, 0xa8($sp) +/* 0AA260 800A9660 0C02917C */ jal func_800A45F0 +/* 0AA264 800A9664 AFA500A4 */ sw $a1, 0xa4($sp) +/* 0AA268 800A9668 44904000 */ mtc1 $s0, $f8 +/* 0AA26C 800A966C 8FA300A8 */ lw $v1, 0xa8($sp) +/* 0AA270 800A9670 46804420 */ cvt.s.w $f16, $f8 +/* 0AA274 800A9674 8E590000 */ lw $t9, ($s2) +/* 0AA278 800A9678 44912000 */ mtc1 $s1, $f4 +/* 0AA27C 800A967C 8FA500A4 */ lw $a1, 0xa4($sp) +/* 0AA280 800A9680 468021A0 */ cvt.s.w $f6, $f4 +/* 0AA284 800A9684 E730064C */ swc1 $f16, 0x64c($t9) +/* 0AA288 800A9688 8E4A0000 */ lw $t2, ($s2) +/* 0AA28C 800A968C 44835000 */ mtc1 $v1, $f10 +/* 0AA290 800A9690 E5460650 */ swc1 $f6, 0x650($t2) +/* 0AA294 800A9694 468054A0 */ cvt.s.w $f18, $f10 +/* 0AA298 800A9698 8E4B0000 */ lw $t3, ($s2) +/* 0AA29C 800A969C 44854000 */ mtc1 $a1, $f8 +/* 0AA2A0 800A96A0 E572040C */ swc1 $f18, 0x40c($t3) +/* 0AA2A4 800A96A4 46804420 */ cvt.s.w $f16, $f8 +/* 0AA2A8 800A96A8 8E4C0000 */ lw $t4, ($s2) +/* 0AA2AC 800A96AC 00000000 */ nop +/* 0AA2B0 800A96B0 E5900410 */ swc1 $f16, 0x410($t4) +.L800A96B4: +/* 0AA2B4 800A96B4 3C028012 */ lui $v0, %hi(D_80127180) # $v0, 0x8012 +/* 0AA2B8 800A96B8 8C427180 */ lw $v0, %lo(D_80127180)($v0) +/* 0AA2BC 800A96BC 3C128012 */ lui $s2, %hi(D_80126CDC) # $s2, 0x8012 +/* 0AA2C0 800A96C0 26526CDC */ addiu $s2, %lo(D_80126CDC) # addiu $s2, $s2, 0x6cdc +/* 0AA2C4 800A96C4 10400012 */ beqz $v0, .L800A9710 +/* 0AA2C8 800A96C8 2413FFFF */ li $s3, -1 +/* 0AA2CC 800A96CC 3C058012 */ lui $a1, %hi(D_80126D80) # $a1, 0x8012 +/* 0AA2D0 800A96D0 24A56D80 */ addiu $a1, %lo(D_80126D80) # addiu $a1, $a1, 0x6d80 +/* 0AA2D4 800A96D4 000268C0 */ sll $t5, $v0, 3 +/* 0AA2D8 800A96D8 00AD7021 */ addu $t6, $a1, $t5 +/* 0AA2DC 800A96DC ADC00000 */ sw $zero, ($t6) +/* 0AA2E0 800A96E0 240F00FF */ li $t7, 255 +/* 0AA2E4 800A96E4 241800FF */ li $t8, 255 +/* 0AA2E8 800A96E8 241900FF */ li $t9, 255 +/* 0AA2EC 800A96EC 240A00FF */ li $t2, 255 +/* 0AA2F0 800A96F0 AFAA001C */ sw $t2, 0x1c($sp) +/* 0AA2F4 800A96F4 AFB90018 */ sw $t9, 0x18($sp) +/* 0AA2F8 800A96F8 AFB80014 */ sw $t8, 0x14($sp) +/* 0AA2FC 800A96FC AFAF0010 */ sw $t7, 0x10($sp) +/* 0AA300 800A9700 02802025 */ move $a0, $s4 +/* 0AA304 800A9704 00003025 */ move $a2, $zero +/* 0AA308 800A9708 0C01E2AE */ jal func_80078AB8 +/* 0AA30C 800A970C 00003825 */ move $a3, $zero +.L800A9710: +/* 0AA310 800A9710 8E8B0000 */ lw $t3, ($s4) +/* 0AA314 800A9714 8FAC0160 */ lw $t4, 0x160($sp) +/* 0AA318 800A9718 3C0D8012 */ lui $t5, %hi(D_80126D00) # $t5, 0x8012 +/* 0AA31C 800A971C AD8B0000 */ sw $t3, ($t4) +/* 0AA320 800A9720 8FAE0164 */ lw $t6, 0x164($sp) +/* 0AA324 800A9724 8DAD6D00 */ lw $t5, %lo(D_80126D00)($t5) +/* 0AA328 800A9728 3C0F8012 */ lui $t7, %hi(D_80126D04) # $t7, 0x8012 +/* 0AA32C 800A972C ADCD0000 */ sw $t5, ($t6) +/* 0AA330 800A9730 8FB80168 */ lw $t8, 0x168($sp) +/* 0AA334 800A9734 8DEF6D04 */ lw $t7, %lo(D_80126D04)($t7) +/* 0AA338 800A9738 3C198012 */ lui $t9, %hi(D_80126D60) # $t9, 0x8012 +/* 0AA33C 800A973C AF0F0000 */ sw $t7, ($t8) +/* 0AA340 800A9740 8F396D60 */ lw $t9, %lo(D_80126D60)($t9) +/* 0AA344 800A9744 00000000 */ nop +/* 0AA348 800A9748 932A00BC */ lbu $t2, 0xbc($t9) +/* 0AA34C 800A974C 00000000 */ nop +/* 0AA350 800A9750 314B0001 */ andi $t3, $t2, 1 +/* 0AA354 800A9754 1560031E */ bnez $t3, .L800AA3D0 +/* 0AA358 800A9758 8FBF003C */ lw $ra, 0x3c($sp) +/* 0AA35C 800A975C 8FAC0140 */ lw $t4, 0x140($sp) +/* 0AA360 800A9760 24040001 */ li $a0, 1 +/* 0AA364 800A9764 19800060 */ blez $t4, .L800A98E8 +/* 0AA368 800A9768 00001825 */ move $v1, $zero +/* 0AA36C 800A976C 31880003 */ andi $t0, $t4, 3 +/* 0AA370 800A9770 11000019 */ beqz $t0, .L800A97D8 +/* 0AA374 800A9774 01003025 */ move $a2, $t0 +/* 0AA378 800A9778 8FAD0150 */ lw $t5, 0x150($sp) +/* 0AA37C 800A977C 00007080 */ sll $t6, $zero, 2 +/* 0AA380 800A9780 01AE8021 */ addu $s0, $t5, $t6 +.L800A9784: +/* 0AA384 800A9784 8E0F0000 */ lw $t7, ($s0) +/* 0AA388 800A9788 24630001 */ addiu $v1, $v1, 1 +/* 0AA38C 800A978C 8DE20064 */ lw $v0, 0x64($t7) +/* 0AA390 800A9790 00000000 */ nop +/* 0AA394 800A9794 1040000A */ beqz $v0, .L800A97C0 +/* 0AA398 800A9798 00000000 */ nop +/* 0AA39C 800A979C 84580000 */ lh $t8, ($v0) +/* 0AA3A0 800A97A0 00000000 */ nop +/* 0AA3A4 800A97A4 12780006 */ beq $s3, $t8, .L800A97C0 +/* 0AA3A8 800A97A8 00000000 */ nop +/* 0AA3AC 800A97AC 805901D8 */ lb $t9, 0x1d8($v0) +/* 0AA3B0 800A97B0 00000000 */ nop +/* 0AA3B4 800A97B4 17200002 */ bnez $t9, .L800A97C0 +/* 0AA3B8 800A97B8 00000000 */ nop +/* 0AA3BC 800A97BC 00002025 */ move $a0, $zero +.L800A97C0: +/* 0AA3C0 800A97C0 14C3FFF0 */ bne $a2, $v1, .L800A9784 +/* 0AA3C4 800A97C4 26100004 */ addiu $s0, $s0, 4 +/* 0AA3C8 800A97C8 8FAA0140 */ lw $t2, 0x140($sp) +/* 0AA3CC 800A97CC 00000000 */ nop +/* 0AA3D0 800A97D0 106A0045 */ beq $v1, $t2, .L800A98E8 +/* 0AA3D4 800A97D4 00000000 */ nop +.L800A97D8: +/* 0AA3D8 800A97D8 8FA60140 */ lw $a2, 0x140($sp) +/* 0AA3DC 800A97DC 8FAB0150 */ lw $t3, 0x150($sp) +/* 0AA3E0 800A97E0 00038880 */ sll $s1, $v1, 2 +/* 0AA3E4 800A97E4 00066080 */ sll $t4, $a2, 2 +/* 0AA3E8 800A97E8 01803025 */ move $a2, $t4 +/* 0AA3EC 800A97EC 01718021 */ addu $s0, $t3, $s1 +.L800A97F0: +/* 0AA3F0 800A97F0 8E0D0000 */ lw $t5, ($s0) +/* 0AA3F4 800A97F4 26310010 */ addiu $s1, $s1, 0x10 +/* 0AA3F8 800A97F8 8DA20064 */ lw $v0, 0x64($t5) +/* 0AA3FC 800A97FC 00000000 */ nop +/* 0AA400 800A9800 1040000A */ beqz $v0, .L800A982C +/* 0AA404 800A9804 00000000 */ nop +/* 0AA408 800A9808 844E0000 */ lh $t6, ($v0) +/* 0AA40C 800A980C 00000000 */ nop +/* 0AA410 800A9810 126E0006 */ beq $s3, $t6, .L800A982C +/* 0AA414 800A9814 00000000 */ nop +/* 0AA418 800A9818 804F01D8 */ lb $t7, 0x1d8($v0) +/* 0AA41C 800A981C 00000000 */ nop +/* 0AA420 800A9820 15E00002 */ bnez $t7, .L800A982C +/* 0AA424 800A9824 00000000 */ nop +/* 0AA428 800A9828 00002025 */ move $a0, $zero +.L800A982C: +/* 0AA42C 800A982C 8E180004 */ lw $t8, 4($s0) +/* 0AA430 800A9830 00000000 */ nop +/* 0AA434 800A9834 8F050064 */ lw $a1, 0x64($t8) +/* 0AA438 800A9838 00000000 */ nop +/* 0AA43C 800A983C 10A0000A */ beqz $a1, .L800A9868 +/* 0AA440 800A9840 00000000 */ nop +/* 0AA444 800A9844 84B90000 */ lh $t9, ($a1) +/* 0AA448 800A9848 00000000 */ nop +/* 0AA44C 800A984C 12790006 */ beq $s3, $t9, .L800A9868 +/* 0AA450 800A9850 00000000 */ nop +/* 0AA454 800A9854 80AA01D8 */ lb $t2, 0x1d8($a1) +/* 0AA458 800A9858 00000000 */ nop +/* 0AA45C 800A985C 15400002 */ bnez $t2, .L800A9868 +/* 0AA460 800A9860 00000000 */ nop +/* 0AA464 800A9864 00002025 */ move $a0, $zero +.L800A9868: +/* 0AA468 800A9868 8E0B0008 */ lw $t3, 8($s0) +/* 0AA46C 800A986C 00000000 */ nop +/* 0AA470 800A9870 8D650064 */ lw $a1, 0x64($t3) +/* 0AA474 800A9874 00000000 */ nop +/* 0AA478 800A9878 10A0000A */ beqz $a1, .L800A98A4 +/* 0AA47C 800A987C 00000000 */ nop +/* 0AA480 800A9880 84AC0000 */ lh $t4, ($a1) +/* 0AA484 800A9884 00000000 */ nop +/* 0AA488 800A9888 126C0006 */ beq $s3, $t4, .L800A98A4 +/* 0AA48C 800A988C 00000000 */ nop +/* 0AA490 800A9890 80AD01D8 */ lb $t5, 0x1d8($a1) +/* 0AA494 800A9894 00000000 */ nop +/* 0AA498 800A9898 15A00002 */ bnez $t5, .L800A98A4 +/* 0AA49C 800A989C 00000000 */ nop +/* 0AA4A0 800A98A0 00002025 */ move $a0, $zero +.L800A98A4: +/* 0AA4A4 800A98A4 8E0E000C */ lw $t6, 0xc($s0) +/* 0AA4A8 800A98A8 00000000 */ nop +/* 0AA4AC 800A98AC 8DC50064 */ lw $a1, 0x64($t6) +/* 0AA4B0 800A98B0 00000000 */ nop +/* 0AA4B4 800A98B4 10A0000A */ beqz $a1, .L800A98E0 +/* 0AA4B8 800A98B8 00000000 */ nop +/* 0AA4BC 800A98BC 84AF0000 */ lh $t7, ($a1) +/* 0AA4C0 800A98C0 00000000 */ nop +/* 0AA4C4 800A98C4 126F0006 */ beq $s3, $t7, .L800A98E0 +/* 0AA4C8 800A98C8 00000000 */ nop +/* 0AA4CC 800A98CC 80B801D8 */ lb $t8, 0x1d8($a1) +/* 0AA4D0 800A98D0 00000000 */ nop +/* 0AA4D4 800A98D4 17000002 */ bnez $t8, .L800A98E0 +/* 0AA4D8 800A98D8 00000000 */ nop +/* 0AA4DC 800A98DC 00002025 */ move $a0, $zero +.L800A98E0: +/* 0AA4E0 800A98E0 1626FFC3 */ bne $s1, $a2, .L800A97F0 +/* 0AA4E4 800A98E4 26100010 */ addiu $s0, $s0, 0x10 +.L800A98E8: +/* 0AA4E8 800A98E8 3C198012 */ lui $t9, %hi(D_80126D0C) # $t9, 0x8012 +/* 0AA4EC 800A98EC 8F396D0C */ lw $t9, %lo(D_80126D0C)($t9) +/* 0AA4F0 800A98F0 24010002 */ li $at, 2 +/* 0AA4F4 800A98F4 17210006 */ bne $t9, $at, .L800A9910 +/* 0AA4F8 800A98F8 00000000 */ nop +/* 0AA4FC 800A98FC 0C01BAAC */ jal func_8006EAB0 +/* 0AA500 800A9900 A3A40113 */ sb $a0, 0x113($sp) +/* 0AA504 800A9904 93A40113 */ lbu $a0, 0x113($sp) +/* 0AA508 800A9908 144002B1 */ bnez $v0, .L800AA3D0 +/* 0AA50C 800A990C 8FBF003C */ lw $ra, 0x3c($sp) +.L800A9910: +/* 0AA510 800A9910 0C019944 */ jal func_80066510 +/* 0AA514 800A9914 A3A40113 */ sb $a0, 0x113($sp) +/* 0AA518 800A9918 93A40113 */ lbu $a0, 0x113($sp) +/* 0AA51C 800A991C 144002AC */ bnez $v0, .L800AA3D0 +/* 0AA520 800A9920 8FBF003C */ lw $ra, 0x3c($sp) +/* 0AA524 800A9924 148002A9 */ bnez $a0, .L800AA3CC +/* 0AA528 800A9928 3C0A8012 */ lui $t2, %hi(D_80126D0C) # $t2, 0x8012 +/* 0AA52C 800A992C 8D4A6D0C */ lw $t2, %lo(D_80126D0C)($t2) +/* 0AA530 800A9930 3C0B800E */ lui $t3, 0x800e +/* 0AA534 800A9934 016A5821 */ addu $t3, $t3, $t2 +/* 0AA538 800A9938 816B27A4 */ lb $t3, 0x27a4($t3) +/* 0AA53C 800A993C 24010001 */ li $at, 1 +/* 0AA540 800A9940 11610003 */ beq $t3, $at, .L800A9950 +/* 0AA544 800A9944 00000000 */ nop +/* 0AA548 800A9948 100002A1 */ b .L800AA3D0 +/* 0AA54C 800A994C 8FBF003C */ lw $ra, 0x3c($sp) +.L800A9950: +/* 0AA550 800A9950 0C01ECF4 */ jal func_8007B3D0 +/* 0AA554 800A9954 02802025 */ move $a0, $s4 +/* 0AA558 800A9958 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0AA55C 800A995C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0AA560 800A9960 0C019FCB */ jal func_80067F2C +/* 0AA564 800A9964 02802025 */ move $a0, $s4 +/* 0AA568 800A9968 0C00B1F1 */ jal func_8002C7C4 +/* 0AA56C 800A996C 00000000 */ nop +/* 0AA570 800A9970 10400296 */ beqz $v0, .L800AA3CC +/* 0AA574 800A9974 AFA20158 */ sw $v0, 0x158($sp) +/* 0AA578 800A9978 0C01A748 */ jal func_80069D20 +/* 0AA57C 800A997C 00000000 */ nop +/* 0AA580 800A9980 00408825 */ move $s1, $v0 +/* 0AA584 800A9984 0C01A142 */ jal func_80068508 +/* 0AA588 800A9988 24040001 */ li $a0, 1 +/* 0AA58C 800A998C 8FAC0158 */ lw $t4, 0x158($sp) +/* 0AA590 800A9990 3C028012 */ lui $v0, %hi(D_80126D0C) # $v0, 0x8012 +/* 0AA594 800A9994 8C426D0C */ lw $v0, %lo(D_80126D0C)($v0) +/* 0AA598 800A9998 8D8D0020 */ lw $t5, 0x20($t4) +/* 0AA59C 800A999C 24010001 */ li $at, 1 +/* 0AA5A0 800A99A0 1041000E */ beq $v0, $at, .L800A99DC +/* 0AA5A4 800A99A4 AFAD0154 */ sw $t5, 0x154($sp) +/* 0AA5A8 800A99A8 24010002 */ li $at, 2 +/* 0AA5AC 800A99AC 10410019 */ beq $v0, $at, .L800A9A14 +/* 0AA5B0 800A99B0 24010003 */ li $at, 3 +/* 0AA5B4 800A99B4 1041004E */ beq $v0, $at, .L800A9AF0 +/* 0AA5B8 800A99B8 3C108012 */ lui $s0, 0x8012 +/* 0AA5BC 800A99BC 3C108012 */ lui $s0, %hi(D_80126D5C) # $s0, 0x8012 +/* 0AA5C0 800A99C0 240E0087 */ li $t6, 135 +/* 0AA5C4 800A99C4 3C018012 */ lui $at, %hi(D_80126D58) # $at, 0x8012 +/* 0AA5C8 800A99C8 AC2E6D58 */ sw $t6, %lo(D_80126D58)($at) +/* 0AA5CC 800A99CC 26106D5C */ addiu $s0, %lo(D_80126D5C) # addiu $s0, $s0, 0x6d5c +/* 0AA5D0 800A99D0 240FFF9E */ li $t7, -98 +/* 0AA5D4 800A99D4 10000058 */ b .L800A9B38 +/* 0AA5D8 800A99D8 AE0F0000 */ sw $t7, ($s0) +.L800A99DC: +/* 0AA5DC 800A99DC 3C198012 */ lui $t9, %hi(D_80126D20) # $t9, 0x8012 +/* 0AA5E0 800A99E0 8F396D20 */ lw $t9, %lo(D_80126D20)($t9) +/* 0AA5E4 800A99E4 24180087 */ li $t8, 135 +/* 0AA5E8 800A99E8 3C018012 */ lui $at, %hi(D_80126D58) # $at, 0x8012 +/* 0AA5EC 800A99EC AC386D58 */ sw $t8, %lo(D_80126D58)($at) +/* 0AA5F0 800A99F0 00195023 */ negu $t2, $t9 +/* 0AA5F4 800A99F4 3C108012 */ lui $s0, %hi(D_80126D5C) # $s0, 0x8012 +/* 0AA5F8 800A99F8 26106D5C */ addiu $s0, %lo(D_80126D5C) # addiu $s0, $s0, 0x6d5c +/* 0AA5FC 800A99FC 05410003 */ bgez $t2, .L800A9A0C +/* 0AA600 800A9A00 000A5843 */ sra $t3, $t2, 1 +/* 0AA604 800A9A04 25410001 */ addiu $at, $t2, 1 +/* 0AA608 800A9A08 00015843 */ sra $t3, $at, 1 +.L800A9A0C: +/* 0AA60C 800A9A0C 1000004A */ b .L800A9B38 +/* 0AA610 800A9A10 AE0B0000 */ sw $t3, ($s0) +.L800A9A14: +/* 0AA614 800A9A14 0C01AF66 */ jal func_8006BD98 +/* 0AA618 800A9A18 00000000 */ nop +/* 0AA61C 800A9A1C 24010042 */ li $at, 66 +/* 0AA620 800A9A20 1041000B */ beq $v0, $at, .L800A9A50 +/* 0AA624 800A9A24 00000000 */ nop +/* 0AA628 800A9A28 0C01AF66 */ jal func_8006BD98 +/* 0AA62C 800A9A2C 00000000 */ nop +/* 0AA630 800A9A30 24010040 */ li $at, 64 +/* 0AA634 800A9A34 10410006 */ beq $v0, $at, .L800A9A50 +/* 0AA638 800A9A38 00000000 */ nop +/* 0AA63C 800A9A3C 0C01AF66 */ jal func_8006BD98 +/* 0AA640 800A9A40 00000000 */ nop +/* 0AA644 800A9A44 24010041 */ li $at, 65 +/* 0AA648 800A9A48 14410015 */ bne $v0, $at, .L800A9AA0 +/* 0AA64C 800A9A4C 3C108012 */ lui $s0, 0x8012 +.L800A9A50: +/* 0AA650 800A9A50 3C0C8012 */ lui $t4, %hi(D_80126D1C) # $t4, 0x8012 +/* 0AA654 800A9A54 8D8C6D1C */ lw $t4, %lo(D_80126D1C)($t4) +/* 0AA658 800A9A58 3C0F8012 */ lui $t7, %hi(D_80126D20) # $t7, 0x8012 +/* 0AA65C 800A9A5C 8DEF6D20 */ lw $t7, %lo(D_80126D20)($t7) +/* 0AA660 800A9A60 3C108012 */ lui $s0, %hi(D_80126D5C) # $s0, 0x8012 +/* 0AA664 800A9A64 000FC023 */ negu $t8, $t7 +/* 0AA668 800A9A68 26106D5C */ addiu $s0, %lo(D_80126D5C) # addiu $s0, $s0, 0x6d5c +/* 0AA66C 800A9A6C 05810003 */ bgez $t4, .L800A9A7C +/* 0AA670 800A9A70 000C6843 */ sra $t5, $t4, 1 +/* 0AA674 800A9A74 25810001 */ addiu $at, $t4, 1 +/* 0AA678 800A9A78 00016843 */ sra $t5, $at, 1 +.L800A9A7C: +/* 0AA67C 800A9A7C 3C018012 */ lui $at, %hi(D_80126D58) # $at, 0x8012 +/* 0AA680 800A9A80 25AEFFF8 */ addiu $t6, $t5, -8 +/* 0AA684 800A9A84 AC2E6D58 */ sw $t6, %lo(D_80126D58)($at) +/* 0AA688 800A9A88 07010003 */ bgez $t8, .L800A9A98 +/* 0AA68C 800A9A8C 0018C843 */ sra $t9, $t8, 1 +/* 0AA690 800A9A90 27010001 */ addiu $at, $t8, 1 +/* 0AA694 800A9A94 0001C843 */ sra $t9, $at, 1 +.L800A9A98: +/* 0AA698 800A9A98 10000027 */ b .L800A9B38 +/* 0AA69C 800A9A9C AE190000 */ sw $t9, ($s0) +.L800A9AA0: +/* 0AA6A0 800A9AA0 3C0A8012 */ lui $t2, %hi(D_80126D1C) # $t2, 0x8012 +/* 0AA6A4 800A9AA4 8D4A6D1C */ lw $t2, %lo(D_80126D1C)($t2) +/* 0AA6A8 800A9AA8 3C0D8012 */ lui $t5, %hi(D_80126D20) # $t5, 0x8012 +/* 0AA6AC 800A9AAC 8DAD6D20 */ lw $t5, %lo(D_80126D20)($t5) +/* 0AA6B0 800A9AB0 240FFFC4 */ li $t7, -60 +/* 0AA6B4 800A9AB4 26106D5C */ addiu $s0, $s0, 0x6d5c +/* 0AA6B8 800A9AB8 05410003 */ bgez $t2, .L800A9AC8 +/* 0AA6BC 800A9ABC 000A5843 */ sra $t3, $t2, 1 +/* 0AA6C0 800A9AC0 25410001 */ addiu $at, $t2, 1 +/* 0AA6C4 800A9AC4 00015843 */ sra $t3, $at, 1 +.L800A9AC8: +/* 0AA6C8 800A9AC8 3C018012 */ lui $at, %hi(D_80126D58) # $at, 0x8012 +/* 0AA6CC 800A9ACC 256C0048 */ addiu $t4, $t3, 0x48 +/* 0AA6D0 800A9AD0 AC2C6D58 */ sw $t4, %lo(D_80126D58)($at) +/* 0AA6D4 800A9AD4 05A10003 */ bgez $t5, .L800A9AE4 +/* 0AA6D8 800A9AD8 000D7043 */ sra $t6, $t5, 1 +/* 0AA6DC 800A9ADC 25A10001 */ addiu $at, $t5, 1 +/* 0AA6E0 800A9AE0 00017043 */ sra $t6, $at, 1 +.L800A9AE4: +/* 0AA6E4 800A9AE4 01EEC023 */ subu $t8, $t7, $t6 +/* 0AA6E8 800A9AE8 10000013 */ b .L800A9B38 +/* 0AA6EC 800A9AEC AE180000 */ sw $t8, ($s0) +.L800A9AF0: +/* 0AA6F0 800A9AF0 3C198012 */ lui $t9, %hi(D_80126D1C) # $t9, 0x8012 +/* 0AA6F4 800A9AF4 8F396D1C */ lw $t9, %lo(D_80126D1C)($t9) +/* 0AA6F8 800A9AF8 3C0C8012 */ lui $t4, %hi(D_80126D20) # $t4, 0x8012 +/* 0AA6FC 800A9AFC 8D8C6D20 */ lw $t4, %lo(D_80126D20)($t4) +/* 0AA700 800A9B00 26106D5C */ addiu $s0, $s0, 0x6d5c +/* 0AA704 800A9B04 07210003 */ bgez $t9, .L800A9B14 +/* 0AA708 800A9B08 00195043 */ sra $t2, $t9, 1 +/* 0AA70C 800A9B0C 27210001 */ addiu $at, $t9, 1 +/* 0AA710 800A9B10 00015043 */ sra $t2, $at, 1 +.L800A9B14: +/* 0AA714 800A9B14 3C018012 */ lui $at, %hi(D_80126D58) # $at, 0x8012 +/* 0AA718 800A9B18 254BFFF8 */ addiu $t3, $t2, -8 +/* 0AA71C 800A9B1C AC2B6D58 */ sw $t3, %lo(D_80126D58)($at) +/* 0AA720 800A9B20 000C6823 */ negu $t5, $t4 +/* 0AA724 800A9B24 05A10003 */ bgez $t5, .L800A9B34 +/* 0AA728 800A9B28 000D7843 */ sra $t7, $t5, 1 +/* 0AA72C 800A9B2C 25A10001 */ addiu $at, $t5, 1 +/* 0AA730 800A9B30 00017843 */ sra $t7, $at, 1 +.L800A9B34: +/* 0AA734 800A9B34 AE0F0000 */ sw $t7, ($s0) +.L800A9B38: +/* 0AA738 800A9B38 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 +/* 0AA73C 800A9B3C 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) +/* 0AA740 800A9B40 00000000 */ nop +/* 0AA744 800A9B44 15C00013 */ bnez $t6, .L800A9B94 +/* 0AA748 800A9B48 00000000 */ nop +/* 0AA74C 800A9B4C 8E180000 */ lw $t8, ($s0) +/* 0AA750 800A9B50 3C01800F */ lui $at, %hi(D_800E87CC) # $at, 0x800f +/* 0AA754 800A9B54 44982000 */ mtc1 $t8, $f4 +/* 0AA758 800A9B58 C42B87C8 */ lwc1 $f11, %lo(D_800E87C8)($at) +/* 0AA75C 800A9B5C 468021A1 */ cvt.d.w $f6, $f4 +/* 0AA760 800A9B60 C42A87CC */ lwc1 $f10, %lo(D_800E87CC)($at) +/* 0AA764 800A9B64 00000000 */ nop +/* 0AA768 800A9B68 462A3482 */ mul.d $f18, $f6, $f10 +/* 0AA76C 800A9B6C 4459F800 */ cfc1 $t9, $31 +/* 0AA770 800A9B70 00000000 */ nop +/* 0AA774 800A9B74 37210003 */ ori $at, $t9, 3 +/* 0AA778 800A9B78 38210002 */ xori $at, $at, 2 +/* 0AA77C 800A9B7C 44C1F800 */ ctc1 $at, $31 +/* 0AA780 800A9B80 00000000 */ nop +/* 0AA784 800A9B84 46209224 */ cvt.w.d $f8, $f18 +/* 0AA788 800A9B88 44D9F800 */ ctc1 $t9, $31 +/* 0AA78C 800A9B8C E6080000 */ swc1 $f8, ($s0) +/* 0AA790 800A9B90 00000000 */ nop +.L800A9B94: +/* 0AA794 800A9B94 0C01EFC7 */ jal func_8007BF1C +/* 0AA798 800A9B98 00002025 */ move $a0, $zero +/* 0AA79C 800A9B9C 8E0E0000 */ lw $t6, ($s0) +/* 0AA7A0 800A9BA0 3C0A8012 */ lui $t2, %hi(D_80126D58) # $t2, 0x8012 +/* 0AA7A4 800A9BA4 8D4A6D58 */ lw $t2, %lo(D_80126D58)($t2) +/* 0AA7A8 800A9BA8 448E9000 */ mtc1 $t6, $f18 +/* 0AA7AC 800A9BAC 3C0B8012 */ lui $t3, %hi(D_80126D24) # $t3, 0x8012 +/* 0AA7B0 800A9BB0 8D6B6D24 */ lw $t3, %lo(D_80126D24)($t3) +/* 0AA7B4 800A9BB4 468094A0 */ cvt.s.w $f18, $f18 +/* 0AA7B8 800A9BB8 3C0D8012 */ lui $t5, %hi(D_80126D28) # $t5, 0x8012 +/* 0AA7BC 800A9BBC 8DAD6D28 */ lw $t5, %lo(D_80126D28)($t5) +/* 0AA7C0 800A9BC0 014B6021 */ addu $t4, $t2, $t3 +/* 0AA7C4 800A9BC4 018D7821 */ addu $t7, $t4, $t5 +/* 0AA7C8 800A9BC8 448F8000 */ mtc1 $t7, $f16 +/* 0AA7CC 800A9BCC 3C188000 */ lui $t8, %hi(D_80000300) # $t8, 0x8000 +/* 0AA7D0 800A9BD0 46808020 */ cvt.s.w $f0, $f16 +/* 0AA7D4 800A9BD4 8F180300 */ lw $t8, %lo(D_80000300)($t8) +/* 0AA7D8 800A9BD8 E7B20130 */ swc1 $f18, 0x130($sp) +/* 0AA7DC 800A9BDC 17000006 */ bnez $t8, .L800A9BF8 +/* 0AA7E0 800A9BE0 E7A0012C */ swc1 $f0, 0x12c($sp) +/* 0AA7E4 800A9BE4 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 0AA7E8 800A9BE8 44815000 */ mtc1 $at, $f10 +/* 0AA7EC 800A9BEC 00000000 */ nop +/* 0AA7F0 800A9BF0 460A0001 */ sub.s $f0, $f0, $f10 +/* 0AA7F4 800A9BF4 E7A0012C */ swc1 $f0, 0x12c($sp) +.L800A9BF8: +/* 0AA7F8 800A9BF8 86390004 */ lh $t9, 4($s1) +/* 0AA7FC 800A9BFC A7A00122 */ sh $zero, 0x122($sp) +/* 0AA800 800A9C00 00195023 */ negu $t2, $t9 +/* 0AA804 800A9C04 0C0270C3 */ jal func_8009C30C +/* 0AA808 800A9C08 A7AA0124 */ sh $t2, 0x124($sp) +/* 0AA80C 800A9C0C 304B0004 */ andi $t3, $v0, 4 +/* 0AA810 800A9C10 1160000B */ beqz $t3, .L800A9C40 +/* 0AA814 800A9C14 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0AA818 800A9C18 3C0D8012 */ lui $t5, %hi(D_80126D1C) # $t5, 0x8012 +/* 0AA81C 800A9C1C 8DAD6D1C */ lw $t5, %lo(D_80126D1C)($t5) +/* 0AA820 800A9C20 C7A0012C */ lwc1 $f0, 0x12c($sp) +/* 0AA824 800A9C24 448D9000 */ mtc1 $t5, $f18 +/* 0AA828 800A9C28 240C8000 */ li $t4, -32768 +/* 0AA82C 800A9C2C 46809220 */ cvt.s.w $f8, $f18 +/* 0AA830 800A9C30 A7AC0120 */ sh $t4, 0x120($sp) +/* 0AA834 800A9C34 46080001 */ sub.s $f0, $f0, $f8 +/* 0AA838 800A9C38 10000002 */ b .L800A9C44 +/* 0AA83C 800A9C3C E7A0012C */ swc1 $f0, 0x12c($sp) +.L800A9C40: +/* 0AA840 800A9C40 A7A00120 */ sh $zero, 0x120($sp) +.L800A9C44: +/* 0AA844 800A9C44 44812000 */ mtc1 $at, $f4 +/* 0AA848 800A9C48 8FAF010C */ lw $t7, 0x10c($sp) +/* 0AA84C 800A9C4C 44808000 */ mtc1 $zero, $f16 +/* 0AA850 800A9C50 29E100A1 */ slti $at, $t7, 0xa1 +/* 0AA854 800A9C54 A7A00138 */ sh $zero, 0x138($sp) +/* 0AA858 800A9C58 E7A40128 */ swc1 $f4, 0x128($sp) +/* 0AA85C 800A9C5C AFAF0108 */ sw $t7, 0x108($sp) +/* 0AA860 800A9C60 14200003 */ bnez $at, .L800A9C70 +/* 0AA864 800A9C64 E7B00134 */ swc1 $f16, 0x134($sp) +/* 0AA868 800A9C68 240E00A0 */ li $t6, 160 +/* 0AA86C 800A9C6C AFAE010C */ sw $t6, 0x10c($sp) +.L800A9C70: +/* 0AA870 800A9C70 3C188012 */ lui $t8, %hi(D_80126D37) # $t8, 0x8012 +/* 0AA874 800A9C74 93186D37 */ lbu $t8, %lo(D_80126D37)($t8) +/* 0AA878 800A9C78 24010003 */ li $at, 3 +/* 0AA87C 800A9C7C 1701000C */ bne $t8, $at, .L800A9CB0 +/* 0AA880 800A9C80 02802025 */ move $a0, $s4 +/* 0AA884 800A9C84 8E880000 */ lw $t0, ($s4) +/* 0AA888 800A9C88 3C0AFA00 */ lui $t2, 0xfa00 +/* 0AA88C 800A9C8C 25190008 */ addiu $t9, $t0, 8 +/* 0AA890 800A9C90 AE990000 */ sw $t9, ($s4) +/* 0AA894 800A9C94 AD0A0000 */ sw $t2, ($t0) +/* 0AA898 800A9C98 8FAB010C */ lw $t3, 0x10c($sp) +/* 0AA89C 800A9C9C 2401FF00 */ li $at, -256 +/* 0AA8A0 800A9CA0 316C00FF */ andi $t4, $t3, 0xff +/* 0AA8A4 800A9CA4 01816825 */ or $t5, $t4, $at +/* 0AA8A8 800A9CA8 10000015 */ b .L800A9D00 +/* 0AA8AC 800A9CAC AD0D0004 */ sw $t5, 4($t0) +.L800A9CB0: +/* 0AA8B0 800A9CB0 8E880000 */ lw $t0, ($s4) +/* 0AA8B4 800A9CB4 3C0EFA00 */ lui $t6, 0xfa00 +/* 0AA8B8 800A9CB8 250F0008 */ addiu $t7, $t0, 8 +/* 0AA8BC 800A9CBC AE8F0000 */ sw $t7, ($s4) +/* 0AA8C0 800A9CC0 3C0B8012 */ lui $t3, %hi(D_80126D55) # $t3, 0x8012 +/* 0AA8C4 800A9CC4 AD0E0000 */ sw $t6, ($t0) +/* 0AA8C8 800A9CC8 916C6D55 */ lbu $t4, %lo(D_80126D55)($t3) +/* 0AA8CC 800A9CCC 3C188012 */ lui $t8, %hi(D_80126D54) # $t8, 0x8012 +/* 0AA8D0 800A9CD0 93196D54 */ lbu $t9, %lo(D_80126D54)($t8) +/* 0AA8D4 800A9CD4 3C0E8012 */ lui $t6, %hi(D_80126D56) # $t6, 0x8012 +/* 0AA8D8 800A9CD8 000C6C00 */ sll $t5, $t4, 0x10 +/* 0AA8DC 800A9CDC 91D86D56 */ lbu $t8, %lo(D_80126D56)($t6) +/* 0AA8E0 800A9CE0 00195600 */ sll $t2, $t9, 0x18 +/* 0AA8E4 800A9CE4 8FAC010C */ lw $t4, 0x10c($sp) +/* 0AA8E8 800A9CE8 014D7825 */ or $t7, $t2, $t5 +/* 0AA8EC 800A9CEC 0018CA00 */ sll $t9, $t8, 8 +/* 0AA8F0 800A9CF0 01F95825 */ or $t3, $t7, $t9 +/* 0AA8F4 800A9CF4 318A00FF */ andi $t2, $t4, 0xff +/* 0AA8F8 800A9CF8 016A6825 */ or $t5, $t3, $t2 +/* 0AA8FC 800A9CFC AD0D0004 */ sw $t5, 4($t0) +.L800A9D00: +/* 0AA900 800A9D00 8FAE0154 */ lw $t6, 0x154($sp) +/* 0AA904 800A9D04 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0AA908 800A9D08 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0AA90C 800A9D0C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0AA910 800A9D10 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0AA914 800A9D14 27A70120 */ addiu $a3, $sp, 0x120 +/* 0AA918 800A9D18 AFA00014 */ sw $zero, 0x14($sp) +/* 0AA91C 800A9D1C 0C01A2FD */ jal func_80068BF4 +/* 0AA920 800A9D20 AFAE0010 */ sw $t6, 0x10($sp) +/* 0AA924 800A9D24 8FA20158 */ lw $v0, 0x158($sp) +/* 0AA928 800A9D28 24010168 */ li $at, 360 +/* 0AA92C 800A9D2C 8458003E */ lh $t8, 0x3e($v0) +/* 0AA930 800A9D30 844F003C */ lh $t7, 0x3c($v0) +/* 0AA934 800A9D34 844C0046 */ lh $t4, 0x46($v0) +/* 0AA938 800A9D38 844B0044 */ lh $t3, 0x44($v0) +/* 0AA93C 800A9D3C 030FC823 */ subu $t9, $t8, $t7 +/* 0AA940 800A9D40 018B5023 */ subu $t2, $t4, $t3 +/* 0AA944 800A9D44 448A9000 */ mtc1 $t2, $f18 +/* 0AA948 800A9D48 44993000 */ mtc1 $t9, $f6 +/* 0AA94C 800A9D4C 46809220 */ cvt.s.w $f8, $f18 +/* 0AA950 800A9D50 468032A0 */ cvt.s.w $f10, $f6 +/* 0AA954 800A9D54 00000000 */ nop +/* 0AA958 800A9D58 46085403 */ div.s $f16, $f10, $f8 +/* 0AA95C 800A9D5C E7B0011C */ swc1 $f16, 0x11c($sp) +/* 0AA960 800A9D60 94440024 */ lhu $a0, 0x24($v0) +/* 0AA964 800A9D64 00000000 */ nop +/* 0AA968 800A9D68 00046C00 */ sll $t5, $a0, 0x10 +/* 0AA96C 800A9D6C 01A46823 */ subu $t5, $t5, $a0 +/* 0AA970 800A9D70 01A1001A */ div $zero, $t5, $at +/* 0AA974 800A9D74 00007012 */ mflo $t6 +/* 0AA978 800A9D78 000EC400 */ sll $t8, $t6, 0x10 +/* 0AA97C 800A9D7C 0C01C1FE */ jal func_800707F8 +/* 0AA980 800A9D80 00182403 */ sra $a0, $t8, 0x10 +/* 0AA984 800A9D84 8FB90158 */ lw $t9, 0x158($sp) +/* 0AA988 800A9D88 E7A00118 */ swc1 $f0, 0x118($sp) +/* 0AA98C 800A9D8C 97240024 */ lhu $a0, 0x24($t9) +/* 0AA990 800A9D90 24010168 */ li $at, 360 +/* 0AA994 800A9D94 00046400 */ sll $t4, $a0, 0x10 +/* 0AA998 800A9D98 01846023 */ subu $t4, $t4, $a0 +/* 0AA99C 800A9D9C 0181001A */ div $zero, $t4, $at +/* 0AA9A0 800A9DA0 00005812 */ mflo $t3 +/* 0AA9A4 800A9DA4 000B5400 */ sll $t2, $t3, 0x10 +/* 0AA9A8 800A9DA8 0C01C1F1 */ jal func_800707C4 +/* 0AA9AC 800A9DAC 000A2403 */ sra $a0, $t2, 0x10 +/* 0AA9B0 800A9DB0 0C003936 */ jal func_8000E4D8 +/* 0AA9B4 800A9DB4 E7A00114 */ swc1 $f0, 0x114($sp) +/* 0AA9B8 800A9DB8 10400043 */ beqz $v0, .L800A9EC8 +/* 0AA9BC 800A9DBC 00000000 */ nop +/* 0AA9C0 800A9DC0 0C006CA2 */ jal func_8001B288 +/* 0AA9C4 800A9DC4 00000000 */ nop +/* 0AA9C8 800A9DC8 1040003F */ beqz $v0, .L800A9EC8 +/* 0AA9CC 800A9DCC 00000000 */ nop +/* 0AA9D0 800A9DD0 0C006CB8 */ jal func_8001B2E0 +/* 0AA9D4 800A9DD4 00000000 */ nop +/* 0AA9D8 800A9DD8 1040003B */ beqz $v0, .L800A9EC8 +/* 0AA9DC 800A9DDC 00408025 */ move $s0, $v0 +/* 0AA9E0 800A9DE0 C7A4011C */ lwc1 $f4, 0x11c($sp) +/* 0AA9E4 800A9DE4 C44C000C */ lwc1 $f12, 0xc($v0) +/* 0AA9E8 800A9DE8 C44E0014 */ lwc1 $f14, 0x14($v0) +/* 0AA9EC 800A9DEC 8FA60114 */ lw $a2, 0x114($sp) +/* 0AA9F0 800A9DF0 8FA70118 */ lw $a3, 0x118($sp) +/* 0AA9F4 800A9DF4 0C02A8FB */ jal func_800AA3EC +/* 0AA9F8 800A9DF8 E7A40010 */ swc1 $f4, 0x10($sp) +/* 0AA9FC 800A9DFC 8E580000 */ lw $t8, ($s2) +/* 0AAA00 800A9E00 240E000E */ li $t6, 14 +/* 0AAA04 800A9E04 A70E01E6 */ sh $t6, 0x1e6($t8) +/* 0AAA08 800A9E08 8E4F0000 */ lw $t7, ($s2) +/* 0AAA0C 800A9E0C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0AAA10 800A9E10 A5E001E4 */ sh $zero, 0x1e4($t7) +/* 0AAA14 800A9E14 8E590000 */ lw $t9, ($s2) +/* 0AAA18 800A9E18 44813000 */ mtc1 $at, $f6 +/* 0AAA1C 800A9E1C 3C0EFA00 */ lui $t6, 0xfa00 +/* 0AAA20 800A9E20 E72601E8 */ swc1 $f6, 0x1e8($t9) +/* 0AAA24 800A9E24 920B0039 */ lbu $t3, 0x39($s0) +/* 0AAA28 800A9E28 8FAC0108 */ lw $t4, 0x108($sp) +/* 0AAA2C 800A9E2C 448B4000 */ mtc1 $t3, $f8 +/* 0AAA30 800A9E30 448C9000 */ mtc1 $t4, $f18 +/* 0AAA34 800A9E34 46804420 */ cvt.s.w $f16, $f8 +/* 0AAA38 800A9E38 44804000 */ mtc1 $zero, $f8 +/* 0AAA3C 800A9E3C 05610005 */ bgez $t3, .L800A9E54 +/* 0AAA40 800A9E40 468092A0 */ cvt.s.w $f10, $f18 +/* 0AAA44 800A9E44 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0AAA48 800A9E48 44812000 */ mtc1 $at, $f4 +/* 0AAA4C 800A9E4C 00000000 */ nop +/* 0AAA50 800A9E50 46048400 */ add.s $f16, $f16, $f4 +.L800A9E54: +/* 0AAA54 800A9E54 46105182 */ mul.s $f6, $f10, $f16 +/* 0AAA58 800A9E58 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0AAA5C 800A9E5C 44814800 */ mtc1 $at, $f9 +/* 0AAA60 800A9E60 8E880000 */ lw $t0, ($s4) +/* 0AAA64 800A9E64 460034A1 */ cvt.d.s $f18, $f6 +/* 0AAA68 800A9E68 46289102 */ mul.d $f4, $f18, $f8 +/* 0AAA6C 800A9E6C 250D0008 */ addiu $t5, $t0, 8 +/* 0AAA70 800A9E70 AE8D0000 */ sw $t5, ($s4) +/* 0AAA74 800A9E74 AD0E0000 */ sw $t6, ($t0) +/* 0AAA78 800A9E78 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0AAA7C 800A9E7C 444AF800 */ cfc1 $t2, $31 +/* 0AAA80 800A9E80 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0AAA84 800A9E84 35410003 */ ori $at, $t2, 3 +/* 0AAA88 800A9E88 38210002 */ xori $at, $at, 2 +/* 0AAA8C 800A9E8C 44C1F800 */ ctc1 $at, $31 +/* 0AAA90 800A9E90 3C013C3C */ lui $at, (0x3C3C3C00 >> 16) # lui $at, 0x3c3c +/* 0AAA94 800A9E94 462022A4 */ cvt.w.d $f10, $f4 +/* 0AAA98 800A9E98 34213C00 */ ori $at, (0x3C3C3C00 & 0xFFFF) # ori $at, $at, 0x3c00 +/* 0AAA9C 800A9E9C 44035000 */ mfc1 $v1, $f10 +/* 0AAAA0 800A9EA0 44CAF800 */ ctc1 $t2, $31 +/* 0AAAA4 800A9EA4 307800FF */ andi $t8, $v1, 0xff +/* 0AAAA8 800A9EA8 03017825 */ or $t7, $t8, $at +/* 0AAAAC 800A9EAC AD0F0004 */ sw $t7, 4($t0) +/* 0AAAB0 800A9EB0 8E470000 */ lw $a3, ($s2) +/* 0AAAB4 800A9EB4 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0AAAB8 800A9EB8 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0AAABC 800A9EBC 02802025 */ move $a0, $s4 +/* 0AAAC0 800A9EC0 0C02A980 */ jal func_800AA600 +/* 0AAAC4 800A9EC4 24E701E0 */ addiu $a3, $a3, 0x1e0 +.L800A9EC8: +/* 0AAAC8 800A9EC8 0C006D90 */ jal func_8001B640 +/* 0AAACC 800A9ECC 00000000 */ nop +/* 0AAAD0 800A9ED0 10400045 */ beqz $v0, .L800A9FE8 +/* 0AAAD4 800A9ED4 00408025 */ move $s0, $v0 +/* 0AAAD8 800A9ED8 8FB90108 */ lw $t9, 0x108($sp) +/* 0AAADC 800A9EDC C7B0011C */ lwc1 $f16, 0x11c($sp) +/* 0AAAE0 800A9EE0 44993000 */ mtc1 $t9, $f6 +/* 0AAAE4 800A9EE4 C44C000C */ lwc1 $f12, 0xc($v0) +/* 0AAAE8 800A9EE8 468034A0 */ cvt.s.w $f18, $f6 +/* 0AAAEC 800A9EEC C44E0014 */ lwc1 $f14, 0x14($v0) +/* 0AAAF0 800A9EF0 8FA60114 */ lw $a2, 0x114($sp) +/* 0AAAF4 800A9EF4 8FA70118 */ lw $a3, 0x118($sp) +/* 0AAAF8 800A9EF8 E7B20054 */ swc1 $f18, 0x54($sp) +/* 0AAAFC 800A9EFC 0C02A8FB */ jal func_800AA3EC +/* 0AAB00 800A9F00 E7B00010 */ swc1 $f16, 0x10($sp) +/* 0AAB04 800A9F04 8E4C0000 */ lw $t4, ($s2) +/* 0AAB08 800A9F08 3C09800E */ lui $t1, %hi(D_800E27BC) # $t1, 0x800e +/* 0AAB0C 800A9F0C A58001E4 */ sh $zero, 0x1e4($t4) +/* 0AAB10 800A9F10 920B0039 */ lbu $t3, 0x39($s0) +/* 0AAB14 800A9F14 C7A80054 */ lwc1 $f8, 0x54($sp) +/* 0AAB18 800A9F18 448B2000 */ mtc1 $t3, $f4 +/* 0AAB1C 800A9F1C 252927BC */ addiu $t1, %lo(D_800E27BC) # addiu $t1, $t1, 0x27bc +/* 0AAB20 800A9F20 05610005 */ bgez $t3, .L800A9F38 +/* 0AAB24 800A9F24 468022A0 */ cvt.s.w $f10, $f4 +/* 0AAB28 800A9F28 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0AAB2C 800A9F2C 44818000 */ mtc1 $at, $f16 +/* 0AAB30 800A9F30 00000000 */ nop +/* 0AAB34 800A9F34 46105280 */ add.s $f10, $f10, $f16 +.L800A9F38: +/* 0AAB38 800A9F38 460A4182 */ mul.s $f6, $f8, $f10 +/* 0AAB3C 800A9F3C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0AAB40 800A9F40 44812800 */ mtc1 $at, $f5 +/* 0AAB44 800A9F44 44802000 */ mtc1 $zero, $f4 +/* 0AAB48 800A9F48 460034A1 */ cvt.d.s $f18, $f6 +/* 0AAB4C 800A9F4C 46249402 */ mul.d $f16, $f18, $f4 +/* 0AAB50 800A9F50 8E880000 */ lw $t0, ($s4) +/* 0AAB54 800A9F54 3C0EFA00 */ lui $t6, 0xfa00 +/* 0AAB58 800A9F58 250D0008 */ addiu $t5, $t0, 8 +/* 0AAB5C 800A9F5C AE8D0000 */ sw $t5, ($s4) +/* 0AAB60 800A9F60 444AF800 */ cfc1 $t2, $31 +/* 0AAB64 800A9F64 AD0E0000 */ sw $t6, ($t0) +/* 0AAB68 800A9F68 35410003 */ ori $at, $t2, 3 +/* 0AAB6C 800A9F6C 38210002 */ xori $at, $at, 2 +/* 0AAB70 800A9F70 44C1F800 */ ctc1 $at, $31 +/* 0AAB74 800A9F74 912F001A */ lbu $t7, 0x1a($t1) +/* 0AAB78 800A9F78 46208224 */ cvt.w.d $f8, $f16 +/* 0AAB7C 800A9F7C 912B0018 */ lbu $t3, 0x18($t1) +/* 0AAB80 800A9F80 91380019 */ lbu $t8, 0x19($t1) +/* 0AAB84 800A9F84 44CAF800 */ ctc1 $t2, $31 +/* 0AAB88 800A9F88 000FCA00 */ sll $t9, $t7, 8 +/* 0AAB8C 800A9F8C 44034000 */ mfc1 $v1, $f8 +/* 0AAB90 800A9F90 000B5600 */ sll $t2, $t3, 0x18 +/* 0AAB94 800A9F94 032A6825 */ or $t5, $t9, $t2 +/* 0AAB98 800A9F98 00187C00 */ sll $t7, $t8, 0x10 +/* 0AAB9C 800A9F9C 01AF6025 */ or $t4, $t5, $t7 +/* 0AABA0 800A9FA0 306B00FF */ andi $t3, $v1, 0xff +/* 0AABA4 800A9FA4 018BC825 */ or $t9, $t4, $t3 +/* 0AABA8 800A9FA8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0AABAC 800A9FAC AD190004 */ sw $t9, 4($t0) +/* 0AABB0 800A9FB0 8E4A0000 */ lw $t2, ($s2) +/* 0AABB4 800A9FB4 44815000 */ mtc1 $at, $f10 +/* 0AABB8 800A9FB8 240E000E */ li $t6, 14 +/* 0AABBC 800A9FBC E54A01E8 */ swc1 $f10, 0x1e8($t2) +/* 0AABC0 800A9FC0 8E580000 */ lw $t8, ($s2) +/* 0AABC4 800A9FC4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0AABC8 800A9FC8 A70E01E6 */ sh $t6, 0x1e6($t8) +/* 0AABCC 800A9FCC 8E470000 */ lw $a3, ($s2) +/* 0AABD0 800A9FD0 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0AABD4 800A9FD4 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0AABD8 800A9FD8 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0AABDC 800A9FDC 02802025 */ move $a0, $s4 +/* 0AABE0 800A9FE0 0C02A980 */ jal func_800AA600 +/* 0AABE4 800A9FE4 24E701E0 */ addiu $a3, $a3, 0x1e0 +.L800A9FE8: +/* 0AABE8 800A9FE8 3C0D8012 */ lui $t5, %hi(D_80126D60) # $t5, 0x8012 +/* 0AABEC 800A9FEC 8DAD6D60 */ lw $t5, %lo(D_80126D60)($t5) +/* 0AABF0 800A9FF0 24010005 */ li $at, 5 +/* 0AABF4 800A9FF4 81AF004C */ lb $t7, 0x4c($t5) +/* 0AABF8 800A9FF8 00000000 */ nop +/* 0AABFC 800A9FFC 15E10029 */ bne $t7, $at, .L800AA0A4 +/* 0AAC00 800AA000 8FA20140 */ lw $v0, 0x140($sp) +/* 0AAC04 800AA004 0C00631B */ jal func_80018C6C +/* 0AAC08 800AA008 00000000 */ nop +/* 0AAC0C 800AA00C 10400024 */ beqz $v0, .L800AA0A0 +/* 0AAC10 800AA010 00000000 */ nop +/* 0AAC14 800AA014 8E4B0000 */ lw $t3, ($s2) +/* 0AAC18 800AA018 240C000E */ li $t4, 14 +/* 0AAC1C 800AA01C A56C01E6 */ sh $t4, 0x1e6($t3) +/* 0AAC20 800AA020 C7A6011C */ lwc1 $f6, 0x11c($sp) +/* 0AAC24 800AA024 8FA70118 */ lw $a3, 0x118($sp) +/* 0AAC28 800AA028 8FA60114 */ lw $a2, 0x114($sp) +/* 0AAC2C 800AA02C C44E0014 */ lwc1 $f14, 0x14($v0) +/* 0AAC30 800AA030 C44C000C */ lwc1 $f12, 0xc($v0) +/* 0AAC34 800AA034 0C02A8FB */ jal func_800AA3EC +/* 0AAC38 800AA038 E7A60010 */ swc1 $f6, 0x10($sp) +/* 0AAC3C 800AA03C 8E590000 */ lw $t9, ($s2) +/* 0AAC40 800AA040 3C0EFA00 */ lui $t6, 0xfa00 +/* 0AAC44 800AA044 A72001E4 */ sh $zero, 0x1e4($t9) +/* 0AAC48 800AA048 8E880000 */ lw $t0, ($s4) +/* 0AAC4C 800AA04C 3C01FF00 */ lui $at, (0xFF00FF00 >> 16) # lui $at, 0xff00 +/* 0AAC50 800AA050 250A0008 */ addiu $t2, $t0, 8 +/* 0AAC54 800AA054 AE8A0000 */ sw $t2, ($s4) +/* 0AAC58 800AA058 AD0E0000 */ sw $t6, ($t0) +/* 0AAC5C 800AA05C 8FB80108 */ lw $t8, 0x108($sp) +/* 0AAC60 800AA060 3421FF00 */ ori $at, (0xFF00FF00 & 0xFFFF) # ori $at, $at, 0xff00 +/* 0AAC64 800AA064 330D00FF */ andi $t5, $t8, 0xff +/* 0AAC68 800AA068 01A17825 */ or $t7, $t5, $at +/* 0AAC6C 800AA06C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0AAC70 800AA070 AD0F0004 */ sw $t7, 4($t0) +/* 0AAC74 800AA074 8E4C0000 */ lw $t4, ($s2) +/* 0AAC78 800AA078 44819000 */ mtc1 $at, $f18 +/* 0AAC7C 800AA07C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0AAC80 800AA080 E59201E8 */ swc1 $f18, 0x1e8($t4) +/* 0AAC84 800AA084 8E470000 */ lw $a3, ($s2) +/* 0AAC88 800AA088 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0AAC8C 800AA08C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0AAC90 800AA090 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0AAC94 800AA094 02802025 */ move $a0, $s4 +/* 0AAC98 800AA098 0C02A980 */ jal func_800AA600 +/* 0AAC9C 800AA09C 24E701E0 */ addiu $a3, $a3, 0x1e0 +.L800AA0A0: +/* 0AACA0 800AA0A0 8FA20140 */ lw $v0, 0x140($sp) +.L800AA0A4: +/* 0AACA4 800AA0A4 8FAB0150 */ lw $t3, 0x150($sp) +/* 0AACA8 800AA0A8 2442FFFF */ addiu $v0, $v0, -1 +/* 0AACAC 800AA0AC 044000B1 */ bltz $v0, .L800AA374 +/* 0AACB0 800AA0B0 00028880 */ sll $s1, $v0, 2 +/* 0AACB4 800AA0B4 01718021 */ addu $s0, $t3, $s1 +.L800AA0B8: +/* 0AACB8 800AA0B8 8E020000 */ lw $v0, ($s0) +/* 0AACBC 800AA0BC 8FA60114 */ lw $a2, 0x114($sp) +/* 0AACC0 800AA0C0 8C450064 */ lw $a1, 0x64($v0) +/* 0AACC4 800AA0C4 8FA70118 */ lw $a3, 0x118($sp) +/* 0AACC8 800AA0C8 10A000A7 */ beqz $a1, .L800AA368 +/* 0AACCC 800AA0CC 00000000 */ nop +/* 0AACD0 800AA0D0 8FB90108 */ lw $t9, 0x108($sp) +/* 0AACD4 800AA0D4 C44C000C */ lwc1 $f12, 0xc($v0) +/* 0AACD8 800AA0D8 C44E0014 */ lwc1 $f14, 0x14($v0) +/* 0AACDC 800AA0DC C7A4011C */ lwc1 $f4, 0x11c($sp) +/* 0AACE0 800AA0E0 332A00FF */ andi $t2, $t9, 0xff +/* 0AACE4 800AA0E4 AFAA0048 */ sw $t2, 0x48($sp) +/* 0AACE8 800AA0E8 AFA50148 */ sw $a1, 0x148($sp) +/* 0AACEC 800AA0EC 0C02A8FB */ jal func_800AA3EC +/* 0AACF0 800AA0F0 E7A40010 */ swc1 $f4, 0x10($sp) +/* 0AACF4 800AA0F4 8FA50148 */ lw $a1, 0x148($sp) +/* 0AACF8 800AA0F8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0AACFC 800AA0FC 84AE0000 */ lh $t6, ($a1) +/* 0AAD00 800AA100 00000000 */ nop +/* 0AAD04 800AA104 126E0027 */ beq $s3, $t6, .L800AA1A4 +/* 0AAD08 800AA108 00000000 */ nop +/* 0AAD0C 800AA10C 8E420000 */ lw $v0, ($s2) +/* 0AAD10 800AA110 44814000 */ mtc1 $at, $f8 +/* 0AAD14 800AA114 C45001F0 */ lwc1 $f16, 0x1f0($v0) +/* 0AAD18 800AA118 2418001B */ li $t8, 27 +/* 0AAD1C 800AA11C 46088281 */ sub.s $f10, $f16, $f8 +/* 0AAD20 800AA120 24010168 */ li $at, 360 +/* 0AAD24 800AA124 E44A01F0 */ swc1 $f10, 0x1f0($v0) +/* 0AAD28 800AA128 8E4D0000 */ lw $t5, ($s2) +/* 0AAD2C 800AA12C 00000000 */ nop +/* 0AAD30 800AA130 A5B801E6 */ sh $t8, 0x1e6($t5) +/* 0AAD34 800AA134 8FAB0158 */ lw $t3, 0x158($sp) +/* 0AAD38 800AA138 8E0F0000 */ lw $t7, ($s0) +/* 0AAD3C 800AA13C 95790024 */ lhu $t9, 0x24($t3) +/* 0AAD40 800AA140 85EC0000 */ lh $t4, ($t7) +/* 0AAD44 800AA144 00195400 */ sll $t2, $t9, 0x10 +/* 0AAD48 800AA148 01595023 */ subu $t2, $t2, $t9 +/* 0AAD4C 800AA14C 0141001A */ div $zero, $t2, $at +/* 0AAD50 800AA150 8E4F0000 */ lw $t7, ($s2) +/* 0AAD54 800AA154 00007012 */ mflo $t6 +/* 0AAD58 800AA158 018E6823 */ subu $t5, $t4, $t6 +/* 0AAD5C 800AA15C A5ED01E4 */ sh $t5, 0x1e4($t7) +/* 0AAD60 800AA160 0C0270C3 */ jal func_8009C30C +/* 0AAD64 800AA164 AFA50148 */ sw $a1, 0x148($sp) +/* 0AAD68 800AA168 8FA50148 */ lw $a1, 0x148($sp) +/* 0AAD6C 800AA16C 304B0004 */ andi $t3, $v0, 4 +/* 0AAD70 800AA170 11600007 */ beqz $t3, .L800AA190 +/* 0AAD74 800AA174 24040001 */ li $a0, 1 +/* 0AAD78 800AA178 8E420000 */ lw $v0, ($s2) +/* 0AAD7C 800AA17C 340AFFFF */ li $t2, 65535 +/* 0AAD80 800AA180 845901E4 */ lh $t9, 0x1e4($v0) +/* 0AAD84 800AA184 00000000 */ nop +/* 0AAD88 800AA188 01596023 */ subu $t4, $t2, $t9 +/* 0AAD8C 800AA18C A44C01E4 */ sh $t4, 0x1e4($v0) +.L800AA190: +/* 0AAD90 800AA190 0C01EFC7 */ jal func_8007BF1C +/* 0AAD94 800AA194 AFA50148 */ sw $a1, 0x148($sp) +/* 0AAD98 800AA198 8FA50148 */ lw $a1, 0x148($sp) +/* 0AAD9C 800AA19C 10000007 */ b .L800AA1BC +/* 0AADA0 800AA1A0 00000000 */ nop +.L800AA1A4: +/* 0AADA4 800AA1A4 8E4E0000 */ lw $t6, ($s2) +/* 0AADA8 800AA1A8 2418000E */ li $t8, 14 +/* 0AADAC 800AA1AC A5C001E4 */ sh $zero, 0x1e4($t6) +/* 0AADB0 800AA1B0 8E4D0000 */ lw $t5, ($s2) +/* 0AADB4 800AA1B4 00000000 */ nop +/* 0AADB8 800AA1B8 A5B801E6 */ sh $t8, 0x1e6($t5) +.L800AA1BC: +/* 0AADBC 800AA1BC 0C008D07 */ jal func_8002341C +/* 0AADC0 800AA1C0 AFA50148 */ sw $a1, 0x148($sp) +/* 0AADC4 800AA1C4 8FA50148 */ lw $a1, 0x148($sp) +/* 0AADC8 800AA1C8 1040000F */ beqz $v0, .L800AA208 +/* 0AADCC 800AA1CC 3C18FA00 */ lui $t8, 0xfa00 +/* 0AADD0 800AA1D0 80AF01D6 */ lb $t7, 0x1d6($a1) +/* 0AADD4 800AA1D4 2401000A */ li $at, 10 +/* 0AADD8 800AA1D8 15E1000B */ bne $t7, $at, .L800AA208 +/* 0AADDC 800AA1DC 3C0AFA00 */ lui $t2, 0xfa00 +/* 0AADE0 800AA1E0 8E880000 */ lw $t0, ($s4) +/* 0AADE4 800AA1E4 3C01FF00 */ lui $at, (0xFF00FF00 >> 16) # lui $at, 0xff00 +/* 0AADE8 800AA1E8 250B0008 */ addiu $t3, $t0, 8 +/* 0AADEC 800AA1EC AE8B0000 */ sw $t3, ($s4) +/* 0AADF0 800AA1F0 AD0A0000 */ sw $t2, ($t0) +/* 0AADF4 800AA1F4 8FB90048 */ lw $t9, 0x48($sp) +/* 0AADF8 800AA1F8 3421FF00 */ ori $at, (0xFF00FF00 & 0xFFFF) # ori $at, $at, 0xff00 +/* 0AADFC 800AA1FC 03216025 */ or $t4, $t9, $at +/* 0AAE00 800AA200 10000016 */ b .L800AA25C +/* 0AAE04 800AA204 AD0C0004 */ sw $t4, 4($t0) +.L800AA208: +/* 0AAE08 800AA208 8E880000 */ lw $t0, ($s4) +/* 0AAE0C 800AA20C 3C0B800E */ lui $t3, %hi(D_800E27BC) # $t3, 0x800e +/* 0AAE10 800AA210 250E0008 */ addiu $t6, $t0, 8 +/* 0AAE14 800AA214 AE8E0000 */ sw $t6, ($s4) +/* 0AAE18 800AA218 AD180000 */ sw $t8, ($t0) +/* 0AAE1C 800AA21C 80AD0003 */ lb $t5, 3($a1) +/* 0AAE20 800AA220 256B27BC */ addiu $t3, %lo(D_800E27BC) # addiu $t3, $t3, 0x27bc +/* 0AAE24 800AA224 000D7880 */ sll $t7, $t5, 2 +/* 0AAE28 800AA228 01ED7823 */ subu $t7, $t7, $t5 +/* 0AAE2C 800AA22C 01EB1021 */ addu $v0, $t7, $t3 +/* 0AAE30 800AA230 90590002 */ lbu $t9, 2($v0) +/* 0AAE34 800AA234 90580000 */ lbu $t8, ($v0) +/* 0AAE38 800AA238 904A0001 */ lbu $t2, 1($v0) +/* 0AAE3C 800AA23C 00196200 */ sll $t4, $t9, 8 +/* 0AAE40 800AA240 00186E00 */ sll $t5, $t8, 0x18 +/* 0AAE44 800AA244 8FB80048 */ lw $t8, 0x48($sp) +/* 0AAE48 800AA248 018D7825 */ or $t7, $t4, $t5 +/* 0AAE4C 800AA24C 000ACC00 */ sll $t9, $t2, 0x10 +/* 0AAE50 800AA250 01F97025 */ or $t6, $t7, $t9 +/* 0AAE54 800AA254 01D86025 */ or $t4, $t6, $t8 +/* 0AAE58 800AA258 AD0C0004 */ sw $t4, 4($t0) +.L800AA25C: +/* 0AAE5C 800AA25C 0C01AF66 */ jal func_8006BD98 +/* 0AAE60 800AA260 AFA50148 */ sw $a1, 0x148($sp) +/* 0AAE64 800AA264 8FA50148 */ lw $a1, 0x148($sp) +/* 0AAE68 800AA268 304D0040 */ andi $t5, $v0, 0x40 +/* 0AAE6C 800AA26C 11A00005 */ beqz $t5, .L800AA284 +/* 0AAE70 800AA270 3C0A8000 */ lui $t2, %hi(D_80000300) # $t2, 0x8000 +/* 0AAE74 800AA274 80AB01D8 */ lb $t3, 0x1d8($a1) +/* 0AAE78 800AA278 00000000 */ nop +/* 0AAE7C 800AA27C 15600038 */ bnez $t3, .L800AA360 +/* 0AAE80 800AA280 00000000 */ nop +.L800AA284: +/* 0AAE84 800AA284 8D4A0300 */ lw $t2, %lo(D_80000300)($t2) +/* 0AAE88 800AA288 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 0AAE8C 800AA28C 15400007 */ bnez $t2, .L800AA2AC +/* 0AAE90 800AA290 00000000 */ nop +/* 0AAE94 800AA294 8E420000 */ lw $v0, ($s2) +/* 0AAE98 800AA298 44819000 */ mtc1 $at, $f18 +/* 0AAE9C 800AA29C C44601EC */ lwc1 $f6, 0x1ec($v0) +/* 0AAEA0 800AA2A0 00000000 */ nop +/* 0AAEA4 800AA2A4 46123101 */ sub.s $f4, $f6, $f18 +/* 0AAEA8 800AA2A8 E44401EC */ swc1 $f4, 0x1ec($v0) +.L800AA2AC: +/* 0AAEAC 800AA2AC 0C01AF66 */ jal func_8006BD98 +/* 0AAEB0 800AA2B0 AFA50148 */ sw $a1, 0x148($sp) +/* 0AAEB4 800AA2B4 8FA50148 */ lw $a1, 0x148($sp) +/* 0AAEB8 800AA2B8 24010040 */ li $at, 64 +/* 0AAEBC 800AA2BC 1441001C */ bne $v0, $at, .L800AA330 +/* 0AAEC0 800AA2C0 02802025 */ move $a0, $s4 +/* 0AAEC4 800AA2C4 80A20212 */ lb $v0, 0x212($a1) +/* 0AAEC8 800AA2C8 3C01800F */ lui $at, %hi(D_800E87D0) # $at, 0x800f +/* 0AAECC 800AA2CC 1040000A */ beqz $v0, .L800AA2F8 +/* 0AAED0 800AA2D0 00000000 */ nop +/* 0AAED4 800AA2D4 24010001 */ li $at, 1 +/* 0AAED8 800AA2D8 1041000B */ beq $v0, $at, .L800AA308 +/* 0AAEDC 800AA2DC 24010002 */ li $at, 2 +/* 0AAEE0 800AA2E0 1041000E */ beq $v0, $at, .L800AA31C +/* 0AAEE4 800AA2E4 24010003 */ li $at, 3 +/* 0AAEE8 800AA2E8 1041000C */ beq $v0, $at, .L800AA31C +/* 0AAEEC 800AA2EC 00000000 */ nop +/* 0AAEF0 800AA2F0 10000015 */ b .L800AA348 +/* 0AAEF4 800AA2F4 8E470000 */ lw $a3, ($s2) +.L800AA2F8: +/* 0AAEF8 800AA2F8 C43087D0 */ lwc1 $f16, %lo(D_800E87D0)($at) +/* 0AAEFC 800AA2FC 8E4F0000 */ lw $t7, ($s2) +/* 0AAF00 800AA300 10000010 */ b .L800AA344 +/* 0AAF04 800AA304 E5F001E8 */ swc1 $f16, 0x1e8($t7) +.L800AA308: +/* 0AAF08 800AA308 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0AAF0C 800AA30C 44814000 */ mtc1 $at, $f8 +/* 0AAF10 800AA310 8E590000 */ lw $t9, ($s2) +/* 0AAF14 800AA314 1000000B */ b .L800AA344 +/* 0AAF18 800AA318 E72801E8 */ swc1 $f8, 0x1e8($t9) +.L800AA31C: +/* 0AAF1C 800AA31C 3C01800F */ lui $at, %hi(D_800E87D4) # $at, 0x800f +/* 0AAF20 800AA320 C42A87D4 */ lwc1 $f10, %lo(D_800E87D4)($at) +/* 0AAF24 800AA324 8E4E0000 */ lw $t6, ($s2) +/* 0AAF28 800AA328 10000006 */ b .L800AA344 +/* 0AAF2C 800AA32C E5CA01E8 */ swc1 $f10, 0x1e8($t6) +.L800AA330: +/* 0AAF30 800AA330 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0AAF34 800AA334 44813000 */ mtc1 $at, $f6 +/* 0AAF38 800AA338 8E580000 */ lw $t8, ($s2) +/* 0AAF3C 800AA33C 00000000 */ nop +/* 0AAF40 800AA340 E70601E8 */ swc1 $f6, 0x1e8($t8) +.L800AA344: +/* 0AAF44 800AA344 8E470000 */ lw $a3, ($s2) +.L800AA348: +/* 0AAF48 800AA348 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0AAF4C 800AA34C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0AAF50 800AA350 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0AAF54 800AA354 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0AAF58 800AA358 0C02A980 */ jal func_800AA600 +/* 0AAF5C 800AA35C 24E701E0 */ addiu $a3, $a3, 0x1e0 +.L800AA360: +/* 0AAF60 800AA360 0C01EFC7 */ jal func_8007BF1C +/* 0AAF64 800AA364 00002025 */ move $a0, $zero +.L800AA368: +/* 0AAF68 800AA368 2631FFFC */ addiu $s1, $s1, -4 +/* 0AAF6C 800AA36C 0621FF52 */ bgez $s1, .L800AA0B8 +/* 0AAF70 800AA370 2610FFFC */ addiu $s0, $s0, -4 +.L800AA374: +/* 0AAF74 800AA374 8E880000 */ lw $t0, ($s4) +/* 0AAF78 800AA378 3C0DE700 */ lui $t5, 0xe700 +/* 0AAF7C 800AA37C 250C0008 */ addiu $t4, $t0, 8 +/* 0AAF80 800AA380 AE8C0000 */ sw $t4, ($s4) +/* 0AAF84 800AA384 00002025 */ move $a0, $zero +/* 0AAF88 800AA388 AD000004 */ sw $zero, 4($t0) +/* 0AAF8C 800AA38C 0C01A142 */ jal func_80068508 +/* 0AAF90 800AA390 AD0D0000 */ sw $t5, ($t0) +/* 0AAF94 800AA394 0C01EFC7 */ jal func_8007BF1C +/* 0AAF98 800AA398 24040001 */ li $a0, 1 +/* 0AAF9C 800AA39C 8E8B0000 */ lw $t3, ($s4) +/* 0AAFA0 800AA3A0 8FAA0160 */ lw $t2, 0x160($sp) +/* 0AAFA4 800AA3A4 3C0F8012 */ lui $t7, %hi(D_80126D00) # $t7, 0x8012 +/* 0AAFA8 800AA3A8 AD4B0000 */ sw $t3, ($t2) +/* 0AAFAC 800AA3AC 8FB90164 */ lw $t9, 0x164($sp) +/* 0AAFB0 800AA3B0 8DEF6D00 */ lw $t7, %lo(D_80126D00)($t7) +/* 0AAFB4 800AA3B4 3C0E8012 */ lui $t6, %hi(D_80126D04) # $t6, 0x8012 +/* 0AAFB8 800AA3B8 AF2F0000 */ sw $t7, ($t9) +/* 0AAFBC 800AA3BC 8FB80168 */ lw $t8, 0x168($sp) +/* 0AAFC0 800AA3C0 8DCE6D04 */ lw $t6, %lo(D_80126D04)($t6) +/* 0AAFC4 800AA3C4 00000000 */ nop +/* 0AAFC8 800AA3C8 AF0E0000 */ sw $t6, ($t8) +.L800AA3CC: +/* 0AAFCC 800AA3CC 8FBF003C */ lw $ra, 0x3c($sp) +.L800AA3D0: +/* 0AAFD0 800AA3D0 8FB00028 */ lw $s0, 0x28($sp) +/* 0AAFD4 800AA3D4 8FB1002C */ lw $s1, 0x2c($sp) +/* 0AAFD8 800AA3D8 8FB20030 */ lw $s2, 0x30($sp) +/* 0AAFDC 800AA3DC 8FB30034 */ lw $s3, 0x34($sp) +/* 0AAFE0 800AA3E0 8FB40038 */ lw $s4, 0x38($sp) +/* 0AAFE4 800AA3E4 03E00008 */ jr $ra +/* 0AAFE8 800AA3E8 27BD0160 */ addiu $sp, $sp, 0x160 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AA3EC.s b/asm/non_matchings/unknown_09F8F0/func_800AA3EC.s new file mode 100644 index 00000000..da13bfc7 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AA3EC.s @@ -0,0 +1,137 @@ +glabel func_800AA3EC +/* 0AAFEC 800AA3EC 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0AAFF0 800AA3F0 AFBF0014 */ sw $ra, 0x14($sp) +/* 0AAFF4 800AA3F4 E7AC0030 */ swc1 $f12, 0x30($sp) +/* 0AAFF8 800AA3F8 E7AE0034 */ swc1 $f14, 0x34($sp) +/* 0AAFFC 800AA3FC AFA60038 */ sw $a2, 0x38($sp) +/* 0AB000 800AA400 0C00B1F1 */ jal func_8002C7C4 +/* 0AB004 800AA404 AFA7003C */ sw $a3, 0x3c($sp) +/* 0AB008 800AA408 3C014270 */ li $at, 0x42700000 # 60.000000 +/* 0AB00C 800AA40C 44812000 */ mtc1 $at, $f4 +/* 0AB010 800AA410 C7A60040 */ lwc1 $f6, 0x40($sp) +/* 0AB014 800AA414 8443003C */ lh $v1, 0x3c($v0) +/* 0AB018 800AA418 46062202 */ mul.s $f8, $f4, $f6 +/* 0AB01C 800AA41C 44832000 */ mtc1 $v1, $f4 +/* 0AB020 800AA420 C44A0028 */ lwc1 $f10, 0x28($v0) +/* 0AB024 800AA424 844E003E */ lh $t6, 0x3e($v0) +/* 0AB028 800AA428 468021A0 */ cvt.s.w $f6, $f4 +/* 0AB02C 800AA42C C7B20030 */ lwc1 $f18, 0x30($sp) +/* 0AB030 800AA430 01C33023 */ subu $a2, $t6, $v1 +/* 0AB034 800AA434 460A4402 */ mul.s $f16, $f8, $f10 +/* 0AB038 800AA438 46069201 */ sub.s $f8, $f18, $f6 +/* 0AB03C 800AA43C 44862000 */ mtc1 $a2, $f4 +/* 0AB040 800AA440 84440044 */ lh $a0, 0x44($v0) +/* 0AB044 800AA444 46088282 */ mul.s $f10, $f16, $f8 +/* 0AB048 800AA448 3C01C270 */ li $at, 0xC2700000 # -60.000000 +/* 0AB04C 800AA44C 44818000 */ mtc1 $at, $f16 +/* 0AB050 800AA450 C446002C */ lwc1 $f6, 0x2c($v0) +/* 0AB054 800AA454 468024A0 */ cvt.s.w $f18, $f4 +/* 0AB058 800AA458 844F0046 */ lh $t7, 0x46($v0) +/* 0AB05C 800AA45C C7A40034 */ lwc1 $f4, 0x34($sp) +/* 0AB060 800AA460 46125003 */ div.s $f0, $f10, $f18 +/* 0AB064 800AA464 44845000 */ mtc1 $a0, $f10 +/* 0AB068 800AA468 46103202 */ mul.s $f8, $f6, $f16 +/* 0AB06C 800AA46C 01E43823 */ subu $a3, $t7, $a0 +/* 0AB070 800AA470 AFA2002C */ sw $v0, 0x2c($sp) +/* 0AB074 800AA474 468054A0 */ cvt.s.w $f18, $f10 +/* 0AB078 800AA478 44875000 */ mtc1 $a3, $f10 +/* 0AB07C 800AA47C 46122181 */ sub.s $f6, $f4, $f18 +/* 0AB080 800AA480 E7A00020 */ swc1 $f0, 0x20($sp) +/* 0AB084 800AA484 46064402 */ mul.s $f16, $f8, $f6 +/* 0AB088 800AA488 46805120 */ cvt.s.w $f4, $f10 +/* 0AB08C 800AA48C 00000000 */ nop +/* 0AB090 800AA490 46048083 */ div.s $f2, $f16, $f4 +/* 0AB094 800AA494 0C0270C3 */ jal func_8009C30C +/* 0AB098 800AA498 E7A2001C */ swc1 $f2, 0x1c($sp) +/* 0AB09C 800AA49C 8FA5002C */ lw $a1, 0x2c($sp) +/* 0AB0A0 800AA4A0 C7A00020 */ lwc1 $f0, 0x20($sp) +/* 0AB0A4 800AA4A4 C7A2001C */ lwc1 $f2, 0x1c($sp) +/* 0AB0A8 800AA4A8 C7AC003C */ lwc1 $f12, 0x3c($sp) +/* 0AB0AC 800AA4AC C7AE0038 */ lwc1 $f14, 0x38($sp) +/* 0AB0B0 800AA4B0 30580004 */ andi $t8, $v0, 4 +/* 0AB0B4 800AA4B4 13000028 */ beqz $t8, .L800AA558 +/* 0AB0B8 800AA4B8 00000000 */ nop +/* 0AB0BC 800AA4BC 460C0482 */ mul.s $f18, $f0, $f12 +/* 0AB0C0 800AA4C0 3C198012 */ lui $t9, %hi(D_80126D58) # $t9, 0x8012 +/* 0AB0C4 800AA4C4 8F396D58 */ lw $t9, %lo(D_80126D58)($t9) +/* 0AB0C8 800AA4C8 84A80034 */ lh $t0, 0x34($a1) +/* 0AB0CC 800AA4CC 460E1202 */ mul.s $f8, $f2, $f14 +/* 0AB0D0 800AA4D0 44995000 */ mtc1 $t9, $f10 +/* 0AB0D4 800AA4D4 3C098012 */ lui $t1, %hi(D_80126D1C) # $t1, 0x8012 +/* 0AB0D8 800AA4D8 8D296D1C */ lw $t1, %lo(D_80126D1C)($t1) +/* 0AB0DC 800AA4DC 46805420 */ cvt.s.w $f16, $f10 +/* 0AB0E0 800AA4E0 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 +/* 0AB0E4 800AA4E4 24426CDC */ addiu $v0, %lo(D_80126CDC) # addiu $v0, $v0, 0x6cdc +/* 0AB0E8 800AA4E8 46089180 */ add.s $f6, $f18, $f8 +/* 0AB0EC 800AA4EC 44889000 */ mtc1 $t0, $f18 +/* 0AB0F0 800AA4F0 46068101 */ sub.s $f4, $f16, $f6 +/* 0AB0F4 800AA4F4 44898000 */ mtc1 $t1, $f16 +/* 0AB0F8 800AA4F8 46809220 */ cvt.s.w $f8, $f18 +/* 0AB0FC 800AA4FC 8C4A0000 */ lw $t2, ($v0) +/* 0AB100 800AA500 3C0C8012 */ lui $t4, %hi(D_80126D5C) # $t4, 0x8012 +/* 0AB104 800AA504 468081A0 */ cvt.s.w $f6, $f16 +/* 0AB108 800AA508 3C0E8012 */ lui $t6, %hi(D_80126D20) # $t6, 0x8012 +/* 0AB10C 800AA50C 46082280 */ add.s $f10, $f4, $f8 +/* 0AB110 800AA510 46065481 */ sub.s $f18, $f10, $f6 +/* 0AB114 800AA514 E55201EC */ swc1 $f18, 0x1ec($t2) +/* 0AB118 800AA518 460E0402 */ mul.s $f16, $f0, $f14 +/* 0AB11C 800AA51C 8D8C6D5C */ lw $t4, %lo(D_80126D5C)($t4) +/* 0AB120 800AA520 84AB0036 */ lh $t3, 0x36($a1) +/* 0AB124 800AA524 8DCE6D20 */ lw $t6, %lo(D_80126D20)($t6) +/* 0AB128 800AA528 460C1282 */ mul.s $f10, $f2, $f12 +/* 0AB12C 800AA52C 016C6821 */ addu $t5, $t3, $t4 +/* 0AB130 800AA530 448D2000 */ mtc1 $t5, $f4 +/* 0AB134 800AA534 8C4F0000 */ lw $t7, ($v0) +/* 0AB138 800AA538 46802220 */ cvt.s.w $f8, $f4 +/* 0AB13C 800AA53C 448E2000 */ mtc1 $t6, $f4 +/* 0AB140 800AA540 460A8181 */ sub.s $f6, $f16, $f10 +/* 0AB144 800AA544 46802420 */ cvt.s.w $f16, $f4 +/* 0AB148 800AA548 46064481 */ sub.s $f18, $f8, $f6 +/* 0AB14C 800AA54C 46109280 */ add.s $f10, $f18, $f16 +/* 0AB150 800AA550 10000027 */ b .L800AA5F0 +/* 0AB154 800AA554 E5EA01F0 */ swc1 $f10, 0x1f0($t7) +.L800AA558: +/* 0AB158 800AA558 460C0202 */ mul.s $f8, $f0, $f12 +/* 0AB15C 800AA55C 3C188012 */ lui $t8, %hi(D_80126D58) # $t8, 0x8012 +/* 0AB160 800AA560 8F186D58 */ lw $t8, %lo(D_80126D58)($t8) +/* 0AB164 800AA564 84B90030 */ lh $t9, 0x30($a1) +/* 0AB168 800AA568 460E1182 */ mul.s $f6, $f2, $f14 +/* 0AB16C 800AA56C 44989000 */ mtc1 $t8, $f18 +/* 0AB170 800AA570 3C088012 */ lui $t0, %hi(D_80126D1C) # $t0, 0x8012 +/* 0AB174 800AA574 8D086D1C */ lw $t0, %lo(D_80126D1C)($t0) +/* 0AB178 800AA578 46809420 */ cvt.s.w $f16, $f18 +/* 0AB17C 800AA57C 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 +/* 0AB180 800AA580 24426CDC */ addiu $v0, %lo(D_80126CDC) # addiu $v0, $v0, 0x6cdc +/* 0AB184 800AA584 46064100 */ add.s $f4, $f8, $f6 +/* 0AB188 800AA588 44994000 */ mtc1 $t9, $f8 +/* 0AB18C 800AA58C 46048280 */ add.s $f10, $f16, $f4 +/* 0AB190 800AA590 44888000 */ mtc1 $t0, $f16 +/* 0AB194 800AA594 468041A0 */ cvt.s.w $f6, $f8 +/* 0AB198 800AA598 8C490000 */ lw $t1, ($v0) +/* 0AB19C 800AA59C 3C0B8012 */ lui $t3, %hi(D_80126D5C) # $t3, 0x8012 +/* 0AB1A0 800AA5A0 46808120 */ cvt.s.w $f4, $f16 +/* 0AB1A4 800AA5A4 3C0D8012 */ lui $t5, %hi(D_80126D20) # $t5, 0x8012 +/* 0AB1A8 800AA5A8 46065480 */ add.s $f18, $f10, $f6 +/* 0AB1AC 800AA5AC 46049201 */ sub.s $f8, $f18, $f4 +/* 0AB1B0 800AA5B0 E52801EC */ swc1 $f8, 0x1ec($t1) +/* 0AB1B4 800AA5B4 460E0402 */ mul.s $f16, $f0, $f14 +/* 0AB1B8 800AA5B8 8D6B6D5C */ lw $t3, %lo(D_80126D5C)($t3) +/* 0AB1BC 800AA5BC 84AA0032 */ lh $t2, 0x32($a1) +/* 0AB1C0 800AA5C0 8DAD6D20 */ lw $t5, %lo(D_80126D20)($t5) +/* 0AB1C4 800AA5C4 460C1482 */ mul.s $f18, $f2, $f12 +/* 0AB1C8 800AA5C8 014B6021 */ addu $t4, $t2, $t3 +/* 0AB1CC 800AA5CC 448C5000 */ mtc1 $t4, $f10 +/* 0AB1D0 800AA5D0 8C4E0000 */ lw $t6, ($v0) +/* 0AB1D4 800AA5D4 468051A0 */ cvt.s.w $f6, $f10 +/* 0AB1D8 800AA5D8 448D5000 */ mtc1 $t5, $f10 +/* 0AB1DC 800AA5DC 46128101 */ sub.s $f4, $f16, $f18 +/* 0AB1E0 800AA5E0 46805420 */ cvt.s.w $f16, $f10 +/* 0AB1E4 800AA5E4 46043201 */ sub.s $f8, $f6, $f4 +/* 0AB1E8 800AA5E8 46104480 */ add.s $f18, $f8, $f16 +/* 0AB1EC 800AA5EC E5D201F0 */ swc1 $f18, 0x1f0($t6) +.L800AA5F0: +/* 0AB1F0 800AA5F0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0AB1F4 800AA5F4 27BD0030 */ addiu $sp, $sp, 0x30 +/* 0AB1F8 800AA5F8 03E00008 */ jr $ra +/* 0AB1FC 800AA5FC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AA600.s b/asm/non_matchings/unknown_09F8F0/func_800AA600.s new file mode 100644 index 00000000..ac82716b --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AA600.s @@ -0,0 +1,662 @@ +glabel func_800AA600 +/* 0AB200 800AA600 27BDFF48 */ addiu $sp, $sp, -0xb8 +/* 0AB204 800AA604 AFBF002C */ sw $ra, 0x2c($sp) +/* 0AB208 800AA608 AFB00028 */ sw $s0, 0x28($sp) +/* 0AB20C 800AA60C AFA400B8 */ sw $a0, 0xb8($sp) +/* 0AB210 800AA610 AFA500BC */ sw $a1, 0xbc($sp) +/* 0AB214 800AA614 AFA600C0 */ sw $a2, 0xc0($sp) +/* 0AB218 800AA618 84E80006 */ lh $t0, 6($a3) +/* 0AB21C 800AA61C 3C038012 */ lui $v1, %hi(D_80126CF0) # $v1, 0x8012 +/* 0AB220 800AA620 8C636CF0 */ lw $v1, %lo(D_80126CF0)($v1) +/* 0AB224 800AA624 00087040 */ sll $t6, $t0, 1 +/* 0AB228 800AA628 006E7821 */ addu $t7, $v1, $t6 +/* 0AB22C 800AA62C 85F80000 */ lh $t8, ($t7) +/* 0AB230 800AA630 340AC000 */ li $t2, 49152 +/* 0AB234 800AA634 3302C000 */ andi $v0, $t8, 0xc000 +/* 0AB238 800AA638 00E08025 */ move $s0, $a3 +/* 0AB23C 800AA63C 15420007 */ bne $t2, $v0, .L800AA65C +/* 0AB240 800AA640 AFB80038 */ sw $t8, 0x38($sp) +/* 0AB244 800AA644 3C0B8012 */ lui $t3, %hi(D_80126CD0) # $t3, 0x8012 +/* 0AB248 800AA648 816B6CD0 */ lb $t3, %lo(D_80126CD0)($t3) +/* 0AB24C 800AA64C 00000000 */ nop +/* 0AB250 800AA650 000B6023 */ negu $t4, $t3 +/* 0AB254 800AA654 10000005 */ b .L800AA66C +/* 0AB258 800AA658 AFAC00A4 */ sw $t4, 0xa4($sp) +.L800AA65C: +/* 0AB25C 800AA65C 3C0D8012 */ lui $t5, %hi(D_80126CD0) # $t5, 0x8012 +/* 0AB260 800AA660 81AD6CD0 */ lb $t5, %lo(D_80126CD0)($t5) +/* 0AB264 800AA664 00000000 */ nop +/* 0AB268 800AA668 AFAD00A4 */ sw $t5, 0xa4($sp) +.L800AA66C: +/* 0AB26C 800AA66C 3C098012 */ lui $t1, %hi(D_80126CF4) # $t1, 0x8012 +/* 0AB270 800AA670 25296CF4 */ addiu $t1, %lo(D_80126CF4) # addiu $t1, $t1, 0x6cf4 +/* 0AB274 800AA674 8D2E0000 */ lw $t6, ($t1) +/* 0AB278 800AA678 00087880 */ sll $t7, $t0, 2 +/* 0AB27C 800AA67C 01CFC021 */ addu $t8, $t6, $t7 +/* 0AB280 800AA680 8F190000 */ lw $t9, ($t8) +/* 0AB284 800AA684 00000000 */ nop +/* 0AB288 800AA688 1720004A */ bnez $t9, .L800AA7B4 +/* 0AB28C 800AA68C 00000000 */ nop +/* 0AB290 800AA690 1542000F */ bne $t2, $v0, .L800AA6D0 +/* 0AB294 800AA694 8FB80038 */ lw $t8, 0x38($sp) +/* 0AB298 800AA698 8FA40038 */ lw $a0, 0x38($sp) +/* 0AB29C 800AA69C 00000000 */ nop +/* 0AB2A0 800AA6A0 308B3FFF */ andi $t3, $a0, 0x3fff +/* 0AB2A4 800AA6A4 0C01EB9D */ jal func_8007AE74 +/* 0AB2A8 800AA6A8 01602025 */ move $a0, $t3 +/* 0AB2AC 800AA6AC 3C098012 */ lui $t1, %hi(D_80126CF4) # $t1, 0x8012 +/* 0AB2B0 800AA6B0 860D0006 */ lh $t5, 6($s0) +/* 0AB2B4 800AA6B4 25296CF4 */ addiu $t1, %lo(D_80126CF4) # addiu $t1, $t1, 0x6cf4 +/* 0AB2B8 800AA6B8 8D2C0000 */ lw $t4, ($t1) +/* 0AB2BC 800AA6BC 000D7080 */ sll $t6, $t5, 2 +/* 0AB2C0 800AA6C0 018E7821 */ addu $t7, $t4, $t6 +/* 0AB2C4 800AA6C4 10000034 */ b .L800AA798 +/* 0AB2C8 800AA6C8 ADE20000 */ sw $v0, ($t7) +/* 0AB2CC 800AA6CC 8FB80038 */ lw $t8, 0x38($sp) +.L800AA6D0: +/* 0AB2D0 800AA6D0 8FAF0038 */ lw $t7, 0x38($sp) +/* 0AB2D4 800AA6D4 33198000 */ andi $t9, $t8, 0x8000 +/* 0AB2D8 800AA6D8 1320000B */ beqz $t9, .L800AA708 +/* 0AB2DC 800AA6DC 33043FFF */ andi $a0, $t8, 0x3fff +/* 0AB2E0 800AA6E0 0C01F04B */ jal func_8007C12C +/* 0AB2E4 800AA6E4 24050001 */ li $a1, 1 +/* 0AB2E8 800AA6E8 3C098012 */ lui $t1, %hi(D_80126CF4) # $t1, 0x8012 +/* 0AB2EC 800AA6EC 860D0006 */ lh $t5, 6($s0) +/* 0AB2F0 800AA6F0 25296CF4 */ addiu $t1, %lo(D_80126CF4) # addiu $t1, $t1, 0x6cf4 +/* 0AB2F4 800AA6F4 8D2B0000 */ lw $t3, ($t1) +/* 0AB2F8 800AA6F8 000D6080 */ sll $t4, $t5, 2 +/* 0AB2FC 800AA6FC 016C7021 */ addu $t6, $t3, $t4 +/* 0AB300 800AA700 10000025 */ b .L800AA798 +/* 0AB304 800AA704 ADC20000 */ sw $v0, ($t6) +.L800AA708: +/* 0AB308 800AA708 31F94000 */ andi $t9, $t7, 0x4000 +/* 0AB30C 800AA70C 13200018 */ beqz $t9, .L800AA770 +/* 0AB310 800AA710 01E0C025 */ move $t8, $t7 +/* 0AB314 800AA714 A3B8009C */ sb $t8, 0x9c($sp) +/* 0AB318 800AA718 860D0006 */ lh $t5, 6($s0) +/* 0AB31C 800AA71C 27A4009C */ addiu $a0, $sp, 0x9c +/* 0AB320 800AA720 000D5840 */ sll $t3, $t5, 1 +/* 0AB324 800AA724 006B6021 */ addu $t4, $v1, $t3 +/* 0AB328 800AA728 858E0000 */ lh $t6, ($t4) +/* 0AB32C 800AA72C A7A0009E */ sh $zero, 0x9e($sp) +/* 0AB330 800AA730 31D90100 */ andi $t9, $t6, 0x100 +/* 0AB334 800AA734 00197843 */ sra $t7, $t9, 1 +/* 0AB338 800AA738 35F80008 */ ori $t8, $t7, 8 +/* 0AB33C 800AA73C A3B8009D */ sb $t8, 0x9d($sp) +/* 0AB340 800AA740 A7A000A0 */ sh $zero, 0xa0($sp) +/* 0AB344 800AA744 A7A000A2 */ sh $zero, 0xa2($sp) +/* 0AB348 800AA748 0C003A95 */ jal func_8000EA54 +/* 0AB34C 800AA74C 00002825 */ move $a1, $zero +/* 0AB350 800AA750 3C098012 */ lui $t1, %hi(D_80126CF4) # $t1, 0x8012 +/* 0AB354 800AA754 860B0006 */ lh $t3, 6($s0) +/* 0AB358 800AA758 25296CF4 */ addiu $t1, %lo(D_80126CF4) # addiu $t1, $t1, 0x6cf4 +/* 0AB35C 800AA75C 8D2D0000 */ lw $t5, ($t1) +/* 0AB360 800AA760 000B6080 */ sll $t4, $t3, 2 +/* 0AB364 800AA764 01AC7021 */ addu $t6, $t5, $t4 +/* 0AB368 800AA768 1000000B */ b .L800AA798 +/* 0AB36C 800AA76C ADC20000 */ sw $v0, ($t6) +.L800AA770: +/* 0AB370 800AA770 8FA40038 */ lw $a0, 0x38($sp) +/* 0AB374 800AA774 0C017E67 */ jal func_8005F99C +/* 0AB378 800AA778 00002825 */ move $a1, $zero +/* 0AB37C 800AA77C 3C098012 */ lui $t1, %hi(D_80126CF4) # $t1, 0x8012 +/* 0AB380 800AA780 860F0006 */ lh $t7, 6($s0) +/* 0AB384 800AA784 25296CF4 */ addiu $t1, %lo(D_80126CF4) # addiu $t1, $t1, 0x6cf4 +/* 0AB388 800AA788 8D390000 */ lw $t9, ($t1) +/* 0AB38C 800AA78C 000FC080 */ sll $t8, $t7, 2 +/* 0AB390 800AA790 03385821 */ addu $t3, $t9, $t8 +/* 0AB394 800AA794 AD620000 */ sw $v0, ($t3) +.L800AA798: +/* 0AB398 800AA798 86080006 */ lh $t0, 6($s0) +/* 0AB39C 800AA79C 8D2D0000 */ lw $t5, ($t1) +/* 0AB3A0 800AA7A0 00086080 */ sll $t4, $t0, 2 +/* 0AB3A4 800AA7A4 01AC7021 */ addu $t6, $t5, $t4 +/* 0AB3A8 800AA7A8 8DCF0000 */ lw $t7, ($t6) +/* 0AB3AC 800AA7AC 00000000 */ nop +/* 0AB3B0 800AA7B0 11E00203 */ beqz $t7, .L800AAFC0 +.L800AA7B4: +/* 0AB3B4 800AA7B4 3C198012 */ lui $t9, %hi(D_80126CD8) # $t9, 0x8012 +/* 0AB3B8 800AA7B8 8F396CD8 */ lw $t9, %lo(D_80126CD8)($t9) +/* 0AB3BC 800AA7BC 3C018012 */ lui $at, %hi(D_80126CFC) # $at, 0x8012 +/* 0AB3C0 800AA7C0 0328C021 */ addu $t8, $t9, $t0 +/* 0AB3C4 800AA7C4 A3000000 */ sb $zero, ($t8) +/* 0AB3C8 800AA7C8 8FAB00B8 */ lw $t3, 0xb8($sp) +/* 0AB3CC 800AA7CC 8FAC00BC */ lw $t4, 0xbc($sp) +/* 0AB3D0 800AA7D0 8D6D0000 */ lw $t5, ($t3) +/* 0AB3D4 800AA7D4 8FAF00C0 */ lw $t7, 0xc0($sp) +/* 0AB3D8 800AA7D8 AC2D6CFC */ sw $t5, %lo(D_80126CFC)($at) +/* 0AB3DC 800AA7DC 8D8E0000 */ lw $t6, ($t4) +/* 0AB3E0 800AA7E0 3C018012 */ lui $at, %hi(D_80126D00) # $at, 0x8012 +/* 0AB3E4 800AA7E4 AC2E6D00 */ sw $t6, %lo(D_80126D00)($at) +/* 0AB3E8 800AA7E8 8DF90000 */ lw $t9, ($t7) +/* 0AB3EC 800AA7EC 3C018012 */ lui $at, %hi(D_80126D04) # $at, 0x8012 +/* 0AB3F0 800AA7F0 AC396D04 */ sw $t9, %lo(D_80126D04)($at) +/* 0AB3F4 800AA7F4 86080006 */ lh $t0, 6($s0) +/* 0AB3F8 800AA7F8 24010028 */ li $at, 40 +/* 0AB3FC 800AA7FC 11010021 */ beq $t0, $at, .L800AA884 +/* 0AB400 800AA800 340AC000 */ li $t2, 49152 +/* 0AB404 800AA804 2401000E */ li $at, 14 +/* 0AB408 800AA808 11010014 */ beq $t0, $at, .L800AA85C +/* 0AB40C 800AA80C 3C0C8012 */ lui $t4, %hi(D_80126D24) # $t4, 0x8012 +/* 0AB410 800AA810 2401001B */ li $at, 27 +/* 0AB414 800AA814 11010011 */ beq $t0, $at, .L800AA85C +/* 0AB418 800AA818 2901002F */ slti $at, $t0, 0x2f +/* 0AB41C 800AA81C 14200002 */ bnez $at, .L800AA828 +/* 0AB420 800AA820 29010036 */ slti $at, $t0, 0x36 +/* 0AB424 800AA824 1420000D */ bnez $at, .L800AA85C +.L800AA828: +/* 0AB428 800AA828 2401002E */ li $at, 46 +/* 0AB42C 800AA82C 1101000B */ beq $t0, $at, .L800AA85C +/* 0AB430 800AA830 3C188012 */ lui $t8, %hi(D_80126CD3) # $t8, 0x8012 +/* 0AB434 800AA834 83186CD3 */ lb $t8, %lo(D_80126CD3)($t8) +/* 0AB438 800AA838 8FAD00A4 */ lw $t5, 0xa4($sp) +/* 0AB43C 800AA83C 330B0001 */ andi $t3, $t8, 1 +/* 0AB440 800AA840 11600006 */ beqz $t3, .L800AA85C +/* 0AB444 800AA844 00000000 */ nop +/* 0AB448 800AA848 448D3000 */ mtc1 $t5, $f6 +/* 0AB44C 800AA84C C6040010 */ lwc1 $f4, 0x10($s0) +/* 0AB450 800AA850 46803220 */ cvt.s.w $f8, $f6 +/* 0AB454 800AA854 46082280 */ add.s $f10, $f4, $f8 +/* 0AB458 800AA858 E60A0010 */ swc1 $f10, 0x10($s0) +.L800AA85C: +/* 0AB45C 800AA85C 3C0E8012 */ lui $t6, %hi(D_80126D28) # $t6, 0x8012 +/* 0AB460 800AA860 8DCE6D28 */ lw $t6, %lo(D_80126D28)($t6) +/* 0AB464 800AA864 8D8C6D24 */ lw $t4, %lo(D_80126D24)($t4) +/* 0AB468 800AA868 C606000C */ lwc1 $f6, 0xc($s0) +/* 0AB46C 800AA86C 018E7821 */ addu $t7, $t4, $t6 +/* 0AB470 800AA870 448F8000 */ mtc1 $t7, $f16 +/* 0AB474 800AA874 86080006 */ lh $t0, 6($s0) +/* 0AB478 800AA878 468084A0 */ cvt.s.w $f18, $f16 +/* 0AB47C 800AA87C 46123100 */ add.s $f4, $f6, $f18 +/* 0AB480 800AA880 E604000C */ swc1 $f4, 0xc($s0) +.L800AA884: +/* 0AB484 800AA884 3C198012 */ lui $t9, %hi(D_80126CF0) # $t9, 0x8012 +/* 0AB488 800AA888 8F396CF0 */ lw $t9, %lo(D_80126CF0)($t9) +/* 0AB48C 800AA88C 0008C040 */ sll $t8, $t0, 1 +/* 0AB490 800AA890 03385821 */ addu $t3, $t9, $t8 +/* 0AB494 800AA894 85620000 */ lh $v0, ($t3) +/* 0AB498 800AA898 2901002F */ slti $at, $t0, 0x2f +/* 0AB49C 800AA89C 304DC000 */ andi $t5, $v0, 0xc000 +/* 0AB4A0 800AA8A0 154D0140 */ bne $t2, $t5, .L800AADA4 +/* 0AB4A4 800AA8A4 30598000 */ andi $t9, $v0, 0x8000 +/* 0AB4A8 800AA8A8 14200095 */ bnez $at, .L800AAB00 +/* 0AB4AC 800AA8AC 3C198012 */ lui $t9, 0x8012 +/* 0AB4B0 800AA8B0 29010036 */ slti $at, $t0, 0x36 +/* 0AB4B4 800AA8B4 10200092 */ beqz $at, .L800AAB00 +/* 0AB4B8 800AA8B8 3C048000 */ lui $a0, %hi(D_80000300) # $a0, 0x8000 +/* 0AB4BC 800AA8BC 8C840300 */ lw $a0, %lo(D_80000300)($a0) +/* 0AB4C0 800AA8C0 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 0AB4C4 800AA8C4 14800009 */ bnez $a0, .L800AA8EC +/* 0AB4C8 800AA8C8 3C0C8012 */ lui $t4, %hi(D_80126CD3) # $t4, 0x8012 +/* 0AB4CC 800AA8CC C6080010 */ lwc1 $f8, 0x10($s0) +/* 0AB4D0 800AA8D0 44815000 */ mtc1 $at, $f10 +/* 0AB4D4 800AA8D4 3C048000 */ lui $a0, %hi(D_80000300) # $a0, 0x8000 +/* 0AB4D8 800AA8D8 460A4401 */ sub.s $f16, $f8, $f10 +/* 0AB4DC 800AA8DC 86080006 */ lh $t0, 6($s0) +/* 0AB4E0 800AA8E0 E6100010 */ swc1 $f16, 0x10($s0) +/* 0AB4E4 800AA8E4 8C840300 */ lw $a0, %lo(D_80000300)($a0) +/* 0AB4E8 800AA8E8 00000000 */ nop +.L800AA8EC: +/* 0AB4EC 800AA8EC 818C6CD3 */ lb $t4, %lo(D_80126CD3)($t4) +/* 0AB4F0 800AA8F0 3C01437F */ li $at, 0x437F0000 # 255.000000 +/* 0AB4F4 800AA8F4 318E0002 */ andi $t6, $t4, 2 +/* 0AB4F8 800AA8F8 11C0001E */ beqz $t6, .L800AA974 +/* 0AB4FC 800AA8FC 240300FF */ li $v1, 255 +/* 0AB500 800AA900 3C0F8012 */ lui $t7, %hi(D_80126CD0) # $t7, 0x8012 +/* 0AB504 800AA904 81EF6CD0 */ lb $t7, %lo(D_80126CD0)($t7) +/* 0AB508 800AA908 3C198012 */ lui $t9, %hi(D_80126CD5) # $t9, 0x8012 +/* 0AB50C 800AA90C 448F3000 */ mtc1 $t7, $f6 +/* 0AB510 800AA910 9339718B */ lbu $t9, %lo(D_8012718B)($t9) +/* 0AB514 800AA914 468034A0 */ cvt.s.w $f18, $f6 +/* 0AB518 800AA918 44810000 */ mtc1 $at, $f0 +/* 0AB51C 800AA91C 44994000 */ mtc1 $t9, $f8 +/* 0AB520 800AA920 46009102 */ mul.s $f4, $f18, $f0 +/* 0AB524 800AA924 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0AB528 800AA928 07210004 */ bgez $t9, .L800AA93C +/* 0AB52C 800AA92C 468042A0 */ cvt.s.w $f10, $f8 +/* 0AB530 800AA930 44818000 */ mtc1 $at, $f16 +/* 0AB534 800AA934 00000000 */ nop +/* 0AB538 800AA938 46105280 */ add.s $f10, $f10, $f16 +.L800AA93C: +/* 0AB53C 800AA93C 00000000 */ nop +/* 0AB540 800AA940 460A2183 */ div.s $f6, $f4, $f10 +/* 0AB544 800AA944 46060481 */ sub.s $f18, $f0, $f6 +/* 0AB548 800AA948 4458F800 */ cfc1 $t8, $31 +/* 0AB54C 800AA94C 00000000 */ nop +/* 0AB550 800AA950 37010003 */ ori $at, $t8, 3 +/* 0AB554 800AA954 38210002 */ xori $at, $at, 2 +/* 0AB558 800AA958 44C1F800 */ ctc1 $at, $31 +/* 0AB55C 800AA95C 00000000 */ nop +/* 0AB560 800AA960 46009224 */ cvt.w.s $f8, $f18 +/* 0AB564 800AA964 44034000 */ mfc1 $v1, $f8 +/* 0AB568 800AA968 44D8F800 */ ctc1 $t8, $31 +/* 0AB56C 800AA96C 10000002 */ b .L800AA978 +/* 0AB570 800AA970 8D2B0000 */ lw $t3, ($t1) +.L800AA974: +/* 0AB574 800AA974 8D2B0000 */ lw $t3, ($t1) +.L800AA978: +/* 0AB578 800AA978 00086880 */ sll $t5, $t0, 2 +/* 0AB57C 800AA97C 016D6021 */ addu $t4, $t3, $t5 +/* 0AB580 800AA980 8D820000 */ lw $v0, ($t4) +/* 0AB584 800AA984 860E0018 */ lh $t6, 0x18($s0) +/* 0AB588 800AA988 844F0016 */ lh $t7, 0x16($v0) +/* 0AB58C 800AA98C 4458F800 */ cfc1 $t8, $31 +/* 0AB590 800AA990 01CF0019 */ multu $t6, $t7 +/* 0AB594 800AA994 37010003 */ ori $at, $t8, 3 +/* 0AB598 800AA998 38210002 */ xori $at, $at, 2 +/* 0AB59C 800AA99C 44C1F800 */ ctc1 $at, $31 +/* 0AB5A0 800AA9A0 240E00FF */ li $t6, 255 +/* 0AB5A4 800AA9A4 27A50088 */ addiu $a1, $sp, 0x88 +/* 0AB5A8 800AA9A8 00003025 */ move $a2, $zero +/* 0AB5AC 800AA9AC 00003825 */ move $a3, $zero +/* 0AB5B0 800AA9B0 0000C812 */ mflo $t9 +/* 0AB5B4 800AA9B4 00591021 */ addu $v0, $v0, $t9 +/* 0AB5B8 800AA9B8 AFA20088 */ sw $v0, 0x88($sp) +/* 0AB5BC 800AA9BC C610000C */ lwc1 $f16, 0xc($s0) +/* 0AB5C0 800AA9C0 00000000 */ nop +/* 0AB5C4 800AA9C4 46008124 */ cvt.w.s $f4, $f16 +/* 0AB5C8 800AA9C8 44D8F800 */ ctc1 $t8, $31 +/* 0AB5CC 800AA9CC 440B2000 */ mfc1 $t3, $f4 +/* 0AB5D0 800AA9D0 00000000 */ nop +/* 0AB5D4 800AA9D4 444DF800 */ cfc1 $t5, $31 +/* 0AB5D8 800AA9D8 A7AB008C */ sh $t3, 0x8c($sp) +/* 0AB5DC 800AA9DC 35A10003 */ ori $at, $t5, 3 +/* 0AB5E0 800AA9E0 38210002 */ xori $at, $at, 2 +/* 0AB5E4 800AA9E4 44C1F800 */ ctc1 $at, $31 +/* 0AB5E8 800AA9E8 C60A0010 */ lwc1 $f10, 0x10($s0) +/* 0AB5EC 800AA9EC AFA00090 */ sw $zero, 0x90($sp) +/* 0AB5F0 800AA9F0 460051A4 */ cvt.w.s $f6, $f10 +/* 0AB5F4 800AA9F4 440C3000 */ mfc1 $t4, $f6 +/* 0AB5F8 800AA9F8 44CDF800 */ ctc1 $t5, $31 +/* 0AB5FC 800AA9FC 1480002C */ bnez $a0, .L800AAAB0 +/* 0AB600 800AAA00 A7AC008E */ sh $t4, 0x8e($sp) +/* 0AB604 800AAA04 860E0006 */ lh $t6, 6($s0) +/* 0AB608 800AAA08 24010035 */ li $at, 53 +/* 0AB60C 800AAA0C 15C1001A */ bne $t6, $at, .L800AAA78 +/* 0AB610 800AAA10 3C048012 */ lui $a0, 0x8012 +/* 0AB614 800AAA14 240100FF */ li $at, 255 +/* 0AB618 800AAA18 14610003 */ bne $v1, $at, .L800AAA28 +/* 0AB61C 800AAA1C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0AB620 800AAA20 10000003 */ b .L800AAA30 +/* 0AB624 800AAA24 2402FFFE */ li $v0, -2 +.L800AAA28: +/* 0AB628 800AAA28 2401FF00 */ li $at, -256 +/* 0AB62C 800AAA2C 00611025 */ or $v0, $v1, $at +.L800AAA30: +/* 0AB630 800AAA30 A7A0008C */ sh $zero, 0x8c($sp) +/* 0AB634 800AAA34 A7A0008E */ sh $zero, 0x8e($sp) +/* 0AB638 800AAA38 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0AB63C 800AAA3C 44819000 */ mtc1 $at, $f18 +/* 0AB640 800AAA40 8E070010 */ lw $a3, 0x10($s0) +/* 0AB644 800AAA44 8E06000C */ lw $a2, 0xc($s0) +/* 0AB648 800AAA48 3C01800F */ lui $at, %hi(D_800E87D8) # $at, 0x800f +/* 0AB64C 800AAA4C C42887D8 */ lwc1 $f8, %lo(D_800E87D8)($at) +/* 0AB650 800AAA50 240F0001 */ li $t7, 1 +/* 0AB654 800AAA54 AFAF001C */ sw $t7, 0x1c($sp) +/* 0AB658 800AAA58 AFA20018 */ sw $v0, 0x18($sp) +/* 0AB65C 800AAA5C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0AB660 800AAA60 27A50088 */ addiu $a1, $sp, 0x88 +/* 0AB664 800AAA64 E7B20010 */ swc1 $f18, 0x10($sp) +/* 0AB668 800AAA68 0C01E340 */ jal func_80078D00 +/* 0AB66C 800AAA6C E7A80014 */ swc1 $f8, 0x14($sp) +/* 0AB670 800AAA70 10000018 */ b .L800AAAD4 +/* 0AB674 800AAA74 00000000 */ nop +.L800AAA78: +/* 0AB678 800AAA78 241900FF */ li $t9, 255 +/* 0AB67C 800AAA7C 241800FF */ li $t8, 255 +/* 0AB680 800AAA80 240B00FF */ li $t3, 255 +/* 0AB684 800AAA84 AFAB0018 */ sw $t3, 0x18($sp) +/* 0AB688 800AAA88 AFB80014 */ sw $t8, 0x14($sp) +/* 0AB68C 800AAA8C AFB90010 */ sw $t9, 0x10($sp) +/* 0AB690 800AAA90 24846CFC */ addiu $a0, $a0, 0x6cfc +/* 0AB694 800AAA94 27A50088 */ addiu $a1, $sp, 0x88 +/* 0AB698 800AAA98 00003025 */ move $a2, $zero +/* 0AB69C 800AAA9C 00003825 */ move $a3, $zero +/* 0AB6A0 800AAAA0 0C01E2AE */ jal func_80078AB8 +/* 0AB6A4 800AAAA4 AFA3001C */ sw $v1, 0x1c($sp) +/* 0AB6A8 800AAAA8 1000000A */ b .L800AAAD4 +/* 0AB6AC 800AAAAC 00000000 */ nop +.L800AAAB0: +/* 0AB6B0 800AAAB0 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0AB6B4 800AAAB4 240D00FF */ li $t5, 255 +/* 0AB6B8 800AAAB8 240C00FF */ li $t4, 255 +/* 0AB6BC 800AAABC AFAC0014 */ sw $t4, 0x14($sp) +/* 0AB6C0 800AAAC0 AFAD0010 */ sw $t5, 0x10($sp) +/* 0AB6C4 800AAAC4 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0AB6C8 800AAAC8 AFAE0018 */ sw $t6, 0x18($sp) +/* 0AB6CC 800AAACC 0C01E2AE */ jal func_80078AB8 +/* 0AB6D0 800AAAD0 AFA3001C */ sw $v1, 0x1c($sp) +.L800AAAD4: +/* 0AB6D4 800AAAD4 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 +/* 0AB6D8 800AAAD8 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) +/* 0AB6DC 800AAADC 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 0AB6E0 800AAAE0 15E00107 */ bnez $t7, .L800AAF00 +/* 0AB6E4 800AAAE4 00000000 */ nop +/* 0AB6E8 800AAAE8 C6100010 */ lwc1 $f16, 0x10($s0) +/* 0AB6EC 800AAAEC 44812000 */ mtc1 $at, $f4 +/* 0AB6F0 800AAAF0 00000000 */ nop +/* 0AB6F4 800AAAF4 46048280 */ add.s $f10, $f16, $f4 +/* 0AB6F8 800AAAF8 10000101 */ b .L800AAF00 +/* 0AB6FC 800AAAFC E60A0010 */ swc1 $f10, 0x10($s0) +.L800AAB00: +/* 0AB700 800AAB00 83396CD5 */ lb $t9, %lo(D_80126CD5)($t9) +/* 0AB704 800AAB04 3C188000 */ lui $t8, %hi(D_80000300) # $t8, 0x8000 +/* 0AB708 800AAB08 13200028 */ beqz $t9, .L800AABAC +/* 0AB70C 800AAB0C 3C013FF0 */ lui $at, 0x3ff0 +/* 0AB710 800AAB10 8F180300 */ lw $t8, %lo(D_80000300)($t8) +/* 0AB714 800AAB14 00000000 */ nop +/* 0AB718 800AAB18 17000024 */ bnez $t8, .L800AABAC +/* 0AB71C 800AAB1C 00000000 */ nop +/* 0AB720 800AAB20 8D2B0000 */ lw $t3, ($t1) +/* 0AB724 800AAB24 00086880 */ sll $t5, $t0, 2 +/* 0AB728 800AAB28 016D6021 */ addu $t4, $t3, $t5 +/* 0AB72C 800AAB2C 8D820000 */ lw $v0, ($t4) +/* 0AB730 800AAB30 860E0018 */ lh $t6, 0x18($s0) +/* 0AB734 800AAB34 844F0016 */ lh $t7, 0x16($v0) +/* 0AB738 800AAB38 A7A00074 */ sh $zero, 0x74($sp) +/* 0AB73C 800AAB3C 01CF0019 */ multu $t6, $t7 +/* 0AB740 800AAB40 A7A00076 */ sh $zero, 0x76($sp) +/* 0AB744 800AAB44 AFA00078 */ sw $zero, 0x78($sp) +/* 0AB748 800AAB48 3C01800F */ li $at, 0x800F0000 # -0.000000 +/* 0AB74C 800AAB4C C43387E0 */ lwc1 $f19, %lo(D_800E87E0)($at) +/* 0AB750 800AAB50 C43287E4 */ lwc1 $f18, %lo(D_800E87E4)($at) +/* 0AB754 800AAB54 3C18800E */ lui $t8, %hi(D_800E2834) # $t8, 0x800e +/* 0AB758 800AAB58 8F182834 */ lw $t8, %lo(D_800E2834)($t8) +/* 0AB75C 800AAB5C 240B0001 */ li $t3, 1 +/* 0AB760 800AAB60 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0AB764 800AAB64 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0AB768 800AAB68 27A50070 */ addiu $a1, $sp, 0x70 +/* 0AB76C 800AAB6C 0000C812 */ mflo $t9 +/* 0AB770 800AAB70 00591021 */ addu $v0, $v0, $t9 +/* 0AB774 800AAB74 AFA20070 */ sw $v0, 0x70($sp) +/* 0AB778 800AAB78 C6000008 */ lwc1 $f0, 8($s0) +/* 0AB77C 800AAB7C 8E070010 */ lw $a3, 0x10($s0) +/* 0AB780 800AAB80 460001A1 */ cvt.d.s $f6, $f0 +/* 0AB784 800AAB84 46323202 */ mul.d $f8, $f6, $f18 +/* 0AB788 800AAB88 8E06000C */ lw $a2, 0xc($s0) +/* 0AB78C 800AAB8C AFAB001C */ sw $t3, 0x1c($sp) +/* 0AB790 800AAB90 AFB80018 */ sw $t8, 0x18($sp) +/* 0AB794 800AAB94 E7A00010 */ swc1 $f0, 0x10($sp) +/* 0AB798 800AAB98 46204420 */ cvt.s.d $f16, $f8 +/* 0AB79C 800AAB9C 0C01E340 */ jal func_80078D00 +/* 0AB7A0 800AABA0 E7B00014 */ swc1 $f16, 0x14($sp) +/* 0AB7A4 800AABA4 100000D7 */ b .L800AAF04 +/* 0AB7A8 800AABA8 86080006 */ lh $t0, 6($s0) +.L800AABAC: +/* 0AB7AC 800AABAC C60A0008 */ lwc1 $f10, 8($s0) +/* 0AB7B0 800AABB0 44812800 */ mtc1 $at, $f5 +/* 0AB7B4 800AABB4 44802000 */ mtc1 $zero, $f4 +/* 0AB7B8 800AABB8 460051A1 */ cvt.d.s $f6, $f10 +/* 0AB7BC 800AABBC 46262032 */ c.eq.d $f4, $f6 +/* 0AB7C0 800AABC0 00000000 */ nop +/* 0AB7C4 800AABC4 45000057 */ bc1f .L800AAD24 +/* 0AB7C8 800AABC8 00000000 */ nop +/* 0AB7CC 800AABCC 8D2D0000 */ lw $t5, ($t1) +/* 0AB7D0 800AABD0 00086080 */ sll $t4, $t0, 2 +/* 0AB7D4 800AABD4 01AC7021 */ addu $t6, $t5, $t4 +/* 0AB7D8 800AABD8 8DC30000 */ lw $v1, ($t6) +/* 0AB7DC 800AABDC 860F0018 */ lh $t7, 0x18($s0) +/* 0AB7E0 800AABE0 84790016 */ lh $t9, 0x16($v1) +/* 0AB7E4 800AABE4 3C02800E */ lui $v0, %hi(D_800E2834) # $v0, 0x800e +/* 0AB7E8 800AABE8 01F90019 */ multu $t7, $t9 +/* 0AB7EC 800AABEC 8C422834 */ lw $v0, %lo(D_800E2834)($v0) +/* 0AB7F0 800AABF0 2401FFFE */ li $at, -2 +/* 0AB7F4 800AABF4 3C058012 */ lui $a1, %hi(D_80127180) # $a1, 0x8012 +/* 0AB7F8 800AABF8 3C0D8012 */ lui $t5, %hi(D_80126D80) # $t5, 0x8012 +/* 0AB7FC 800AABFC 24A57180 */ addiu $a1, %lo(D_80127180) # addiu $a1, $a1, 0x7180 +/* 0AB800 800AAC00 25AD6D80 */ addiu $t5, %lo(D_80126D80) # addiu $t5, $t5, 0x6d80 +/* 0AB804 800AAC04 0000C012 */ mflo $t8 +/* 0AB808 800AAC08 00781821 */ addu $v1, $v1, $t8 +/* 0AB80C 800AAC0C 1441001B */ bne $v0, $at, .L800AAC7C +/* 0AB810 800AAC10 00000000 */ nop +/* 0AB814 800AAC14 8CA40000 */ lw $a0, ($a1) +/* 0AB818 800AAC18 444CF800 */ cfc1 $t4, $31 +/* 0AB81C 800AAC1C 000458C0 */ sll $t3, $a0, 3 +/* 0AB820 800AAC20 016D1021 */ addu $v0, $t3, $t5 +/* 0AB824 800AAC24 35810003 */ ori $at, $t4, 3 +/* 0AB828 800AAC28 AC430000 */ sw $v1, ($v0) +/* 0AB82C 800AAC2C 38210002 */ xori $at, $at, 2 +/* 0AB830 800AAC30 44C1F800 */ ctc1 $at, $31 +/* 0AB834 800AAC34 C612000C */ lwc1 $f18, 0xc($s0) +/* 0AB838 800AAC38 24980001 */ addiu $t8, $a0, 1 +/* 0AB83C 800AAC3C 46009224 */ cvt.w.s $f8, $f18 +/* 0AB840 800AAC40 44CCF800 */ ctc1 $t4, $31 +/* 0AB844 800AAC44 440E4000 */ mfc1 $t6, $f8 +/* 0AB848 800AAC48 00000000 */ nop +/* 0AB84C 800AAC4C 444FF800 */ cfc1 $t7, $31 +/* 0AB850 800AAC50 A44E0004 */ sh $t6, 4($v0) +/* 0AB854 800AAC54 35E10003 */ ori $at, $t7, 3 +/* 0AB858 800AAC58 38210002 */ xori $at, $at, 2 +/* 0AB85C 800AAC5C 44C1F800 */ ctc1 $at, $31 +/* 0AB860 800AAC60 C6100010 */ lwc1 $f16, 0x10($s0) +/* 0AB864 800AAC64 ACB80000 */ sw $t8, ($a1) +/* 0AB868 800AAC68 460082A4 */ cvt.w.s $f10, $f16 +/* 0AB86C 800AAC6C 44195000 */ mfc1 $t9, $f10 +/* 0AB870 800AAC70 44CFF800 */ ctc1 $t7, $31 +/* 0AB874 800AAC74 100000A2 */ b .L800AAF00 +/* 0AB878 800AAC78 A4590006 */ sh $t9, 6($v0) +.L800AAC7C: +/* 0AB87C 800AAC7C 444BF800 */ cfc1 $t3, $31 +/* 0AB880 800AAC80 AFA30058 */ sw $v1, 0x58($sp) +/* 0AB884 800AAC84 35610003 */ ori $at, $t3, 3 +/* 0AB888 800AAC88 38210002 */ xori $at, $at, 2 +/* 0AB88C 800AAC8C 44C1F800 */ ctc1 $at, $31 +/* 0AB890 800AAC90 C604000C */ lwc1 $f4, 0xc($s0) +/* 0AB894 800AAC94 00027E02 */ srl $t7, $v0, 0x18 +/* 0AB898 800AAC98 460021A4 */ cvt.w.s $f6, $f4 +/* 0AB89C 800AAC9C 0002C402 */ srl $t8, $v0, 0x10 +/* 0AB8A0 800AACA0 44CBF800 */ ctc1 $t3, $31 +/* 0AB8A4 800AACA4 440D3000 */ mfc1 $t5, $f6 +/* 0AB8A8 800AACA8 330B00FF */ andi $t3, $t8, 0xff +/* 0AB8AC 800AACAC 444CF800 */ cfc1 $t4, $31 +/* 0AB8B0 800AACB0 A7AD005C */ sh $t5, 0x5c($sp) +/* 0AB8B4 800AACB4 35810003 */ ori $at, $t4, 3 +/* 0AB8B8 800AACB8 38210002 */ xori $at, $at, 2 +/* 0AB8BC 800AACBC 44C1F800 */ ctc1 $at, $31 +/* 0AB8C0 800AACC0 C6120010 */ lwc1 $f18, 0x10($s0) +/* 0AB8C4 800AACC4 00026A02 */ srl $t5, $v0, 8 +/* 0AB8C8 800AACC8 46009224 */ cvt.w.s $f8, $f18 +/* 0AB8CC 800AACCC 31F900FF */ andi $t9, $t7, 0xff +/* 0AB8D0 800AACD0 440E4000 */ mfc1 $t6, $f8 +/* 0AB8D4 800AACD4 44CCF800 */ ctc1 $t4, $31 +/* 0AB8D8 800AACD8 A7AE005E */ sh $t6, 0x5e($sp) +/* 0AB8DC 800AACDC 304E00FF */ andi $t6, $v0, 0xff +/* 0AB8E0 800AACE0 31AC00FF */ andi $t4, $t5, 0xff +/* 0AB8E4 800AACE4 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0AB8E8 800AACE8 AFA00060 */ sw $zero, 0x60($sp) +/* 0AB8EC 800AACEC 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0AB8F0 800AACF0 AFAC0018 */ sw $t4, 0x18($sp) +/* 0AB8F4 800AACF4 AFAE001C */ sw $t6, 0x1c($sp) +/* 0AB8F8 800AACF8 AFB90010 */ sw $t9, 0x10($sp) +/* 0AB8FC 800AACFC AFAB0014 */ sw $t3, 0x14($sp) +/* 0AB900 800AAD00 27A50058 */ addiu $a1, $sp, 0x58 +/* 0AB904 800AAD04 00003025 */ move $a2, $zero +/* 0AB908 800AAD08 0C01E2AE */ jal func_80078AB8 +/* 0AB90C 800AAD0C 00003825 */ move $a3, $zero +/* 0AB910 800AAD10 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0AB914 800AAD14 0C01ECF4 */ jal func_8007B3D0 +/* 0AB918 800AAD18 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0AB91C 800AAD1C 10000079 */ b .L800AAF04 +/* 0AB920 800AAD20 86080006 */ lh $t0, 6($s0) +.L800AAD24: +/* 0AB924 800AAD24 8D2F0000 */ lw $t7, ($t1) +/* 0AB928 800AAD28 0008C880 */ sll $t9, $t0, 2 +/* 0AB92C 800AAD2C 01F9C021 */ addu $t8, $t7, $t9 +/* 0AB930 800AAD30 8F020000 */ lw $v0, ($t8) +/* 0AB934 800AAD34 860B0018 */ lh $t3, 0x18($s0) +/* 0AB938 800AAD38 844D0016 */ lh $t5, 0x16($v0) +/* 0AB93C 800AAD3C A7A0004C */ sh $zero, 0x4c($sp) +/* 0AB940 800AAD40 016D0019 */ multu $t3, $t5 +/* 0AB944 800AAD44 A7A0004E */ sh $zero, 0x4e($sp) +/* 0AB948 800AAD48 AFA00050 */ sw $zero, 0x50($sp) +/* 0AB94C 800AAD4C 3C0E800E */ lui $t6, %hi(D_800E2834) # $t6, 0x800e +/* 0AB950 800AAD50 8DCE2834 */ lw $t6, %lo(D_800E2834)($t6) +/* 0AB954 800AAD54 240F0001 */ li $t7, 1 +/* 0AB958 800AAD58 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0AB95C 800AAD5C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0AB960 800AAD60 27A50048 */ addiu $a1, $sp, 0x48 +/* 0AB964 800AAD64 00006012 */ mflo $t4 +/* 0AB968 800AAD68 004C1021 */ addu $v0, $v0, $t4 +/* 0AB96C 800AAD6C AFA20048 */ sw $v0, 0x48($sp) +/* 0AB970 800AAD70 C6000008 */ lwc1 $f0, 8($s0) +/* 0AB974 800AAD74 8E070010 */ lw $a3, 0x10($s0) +/* 0AB978 800AAD78 8E06000C */ lw $a2, 0xc($s0) +/* 0AB97C 800AAD7C AFAF001C */ sw $t7, 0x1c($sp) +/* 0AB980 800AAD80 AFAE0018 */ sw $t6, 0x18($sp) +/* 0AB984 800AAD84 E7A00014 */ swc1 $f0, 0x14($sp) +/* 0AB988 800AAD88 0C01E340 */ jal func_80078D00 +/* 0AB98C 800AAD8C E7A00010 */ swc1 $f0, 0x10($sp) +/* 0AB990 800AAD90 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0AB994 800AAD94 0C01ECF4 */ jal func_8007B3D0 +/* 0AB998 800AAD98 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0AB99C 800AAD9C 10000059 */ b .L800AAF04 +/* 0AB9A0 800AADA0 86080006 */ lh $t0, 6($s0) +.L800AADA4: +/* 0AB9A4 800AADA4 13200020 */ beqz $t9, .L800AAE28 +/* 0AB9A8 800AADA8 304E4000 */ andi $t6, $v0, 0x4000 +/* 0AB9AC 800AADAC 0C01A748 */ jal func_80069D20 +/* 0AB9B0 800AADB0 00000000 */ nop +/* 0AB9B4 800AADB4 3C098012 */ lui $t1, %hi(D_80126CF4) # $t1, 0x8012 +/* 0AB9B8 800AADB8 AFA200A8 */ sw $v0, 0xa8($sp) +/* 0AB9BC 800AADBC 860B0006 */ lh $t3, 6($s0) +/* 0AB9C0 800AADC0 25296CF4 */ addiu $t1, %lo(D_80126CF4) # addiu $t1, $t1, 0x6cf4 +/* 0AB9C4 800AADC4 8D380000 */ lw $t8, ($t1) +/* 0AB9C8 800AADC8 000B6880 */ sll $t5, $t3, 2 +/* 0AB9CC 800AADCC 860E0004 */ lh $t6, 4($s0) +/* 0AB9D0 800AADD0 844F0004 */ lh $t7, 4($v0) +/* 0AB9D4 800AADD4 030D6021 */ addu $t4, $t8, $t5 +/* 0AB9D8 800AADD8 8D830000 */ lw $v1, ($t4) +/* 0AB9DC 800AADDC 01CFC823 */ subu $t9, $t6, $t7 +/* 0AB9E0 800AADE0 A6190004 */ sh $t9, 4($s0) +/* 0AB9E4 800AADE4 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0AB9E8 800AADE8 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0AB9EC 800AADEC 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0AB9F0 800AADF0 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0AB9F4 800AADF4 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0AB9F8 800AADF8 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0AB9FC 800AADFC AFA00014 */ sw $zero, 0x14($sp) +/* 0ABA00 800AAE00 02003825 */ move $a3, $s0 +/* 0ABA04 800AAE04 0C01A2FD */ jal func_80068BF4 +/* 0ABA08 800AAE08 AFA30010 */ sw $v1, 0x10($sp) +/* 0ABA0C 800AAE0C 8FB800A8 */ lw $t8, 0xa8($sp) +/* 0ABA10 800AAE10 860B0004 */ lh $t3, 4($s0) +/* 0ABA14 800AAE14 870D0004 */ lh $t5, 4($t8) +/* 0ABA18 800AAE18 00000000 */ nop +/* 0ABA1C 800AAE1C 016D6021 */ addu $t4, $t3, $t5 +/* 0ABA20 800AAE20 10000037 */ b .L800AAF00 +/* 0ABA24 800AAE24 A60C0004 */ sh $t4, 4($s0) +.L800AAE28: +/* 0ABA28 800AAE28 11C0001F */ beqz $t6, .L800AAEA8 +/* 0ABA2C 800AAE2C 3C048012 */ lui $a0, 0x8012 +/* 0ABA30 800AAE30 8D2F0000 */ lw $t7, ($t1) +/* 0ABA34 800AAE34 0008C880 */ sll $t9, $t0, 2 +/* 0ABA38 800AAE38 01F9C021 */ addu $t8, $t7, $t9 +/* 0ABA3C 800AAE3C 8F070000 */ lw $a3, ($t8) +/* 0ABA40 800AAE40 860B0000 */ lh $t3, ($s0) +/* 0ABA44 800AAE44 240E00FF */ li $t6, 255 +/* 0ABA48 800AAE48 A4EB0000 */ sh $t3, ($a3) +/* 0ABA4C 800AAE4C 860D0002 */ lh $t5, 2($s0) +/* 0ABA50 800AAE50 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0ABA54 800AAE54 A4ED0002 */ sh $t5, 2($a3) +/* 0ABA58 800AAE58 860C0004 */ lh $t4, 4($s0) +/* 0ABA5C 800AAE5C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0ABA60 800AAE60 A4EC0004 */ sh $t4, 4($a3) +/* 0ABA64 800AAE64 C610000C */ lwc1 $f16, 0xc($s0) +/* 0ABA68 800AAE68 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 +/* 0ABA6C 800AAE6C E4F0000C */ swc1 $f16, 0xc($a3) +/* 0ABA70 800AAE70 C60A0010 */ lwc1 $f10, 0x10($s0) +/* 0ABA74 800AAE74 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 +/* 0ABA78 800AAE78 E4EA0010 */ swc1 $f10, 0x10($a3) +/* 0ABA7C 800AAE7C C6040014 */ lwc1 $f4, 0x14($s0) +/* 0ABA80 800AAE80 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0ABA84 800AAE84 E4E40014 */ swc1 $f4, 0x14($a3) +/* 0ABA88 800AAE88 C6060008 */ lwc1 $f6, 8($s0) +/* 0ABA8C 800AAE8C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +/* 0ABA90 800AAE90 A0E0003A */ sb $zero, 0x3a($a3) +/* 0ABA94 800AAE94 A0EE0039 */ sb $t6, 0x39($a3) +/* 0ABA98 800AAE98 0C004B57 */ jal func_80012D5C +/* 0ABA9C 800AAE9C E4E60008 */ swc1 $f6, 8($a3) +/* 0ABAA0 800AAEA0 10000018 */ b .L800AAF04 +/* 0ABAA4 800AAEA4 86080006 */ lh $t0, 6($s0) +.L800AAEA8: +/* 0ABAA8 800AAEA8 44809000 */ mtc1 $zero, $f18 +/* 0ABAAC 800AAEAC 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 +/* 0ABAB0 800AAEB0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 +/* 0ABAB4 800AAEB4 24846CFC */ addiu $a0, $a0, 0x6cfc +/* 0ABAB8 800AAEB8 02003025 */ move $a2, $s0 +/* 0ABABC 800AAEBC 3C073F80 */ lui $a3, 0x3f80 +/* 0ABAC0 800AAEC0 0C01A521 */ jal func_80069484 +/* 0ABAC4 800AAEC4 E7B20010 */ swc1 $f18, 0x10($sp) +/* 0ABAC8 800AAEC8 3C098012 */ lui $t1, %hi(D_80126CF4) # $t1, 0x8012 +/* 0ABACC 800AAECC 86190006 */ lh $t9, 6($s0) +/* 0ABAD0 800AAED0 25296CF4 */ addiu $t1, %lo(D_80126CF4) # addiu $t1, $t1, 0x6cf4 +/* 0ABAD4 800AAED4 8D2F0000 */ lw $t7, ($t1) +/* 0ABAD8 800AAED8 0019C080 */ sll $t8, $t9, 2 +/* 0ABADC 800AAEDC 01F85821 */ addu $t3, $t7, $t8 +/* 0ABAE0 800AAEE0 8D620000 */ lw $v0, ($t3) +/* 0ABAE4 800AAEE4 00000000 */ nop +/* 0ABAE8 800AAEE8 8C440000 */ lw $a0, ($v0) +/* 0ABAEC 800AAEEC 0C02ABF4 */ jal func_800AAFD0 +/* 0ABAF0 800AAEF0 00000000 */ nop +/* 0ABAF4 800AAEF4 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 +/* 0ABAF8 800AAEF8 0C01A690 */ jal func_80069A40 +/* 0ABAFC 800AAEFC 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc +.L800AAF00: +/* 0ABB00 800AAF00 86080006 */ lh $t0, 6($s0) +.L800AAF04: +/* 0ABB04 800AAF04 24010028 */ li $at, 40 +/* 0ABB08 800AAF08 11010021 */ beq $t0, $at, .L800AAF90 +/* 0ABB0C 800AAF0C 3C0B8012 */ lui $t3, %hi(D_80126CFC) # $t3, 0x8012 +/* 0ABB10 800AAF10 2401000E */ li $at, 14 +/* 0ABB14 800AAF14 11010014 */ beq $t0, $at, .L800AAF68 +/* 0ABB18 800AAF18 3C198012 */ lui $t9, %hi(D_80126D24) # $t9, 0x8012 +/* 0ABB1C 800AAF1C 2401001B */ li $at, 27 +/* 0ABB20 800AAF20 11010011 */ beq $t0, $at, .L800AAF68 +/* 0ABB24 800AAF24 2901002F */ slti $at, $t0, 0x2f +/* 0ABB28 800AAF28 14200002 */ bnez $at, .L800AAF34 +/* 0ABB2C 800AAF2C 29010036 */ slti $at, $t0, 0x36 +/* 0ABB30 800AAF30 1420000D */ bnez $at, .L800AAF68 +.L800AAF34: +/* 0ABB34 800AAF34 2401002E */ li $at, 46 +/* 0ABB38 800AAF38 1101000B */ beq $t0, $at, .L800AAF68 +/* 0ABB3C 800AAF3C 3C0D8012 */ lui $t5, %hi(D_80126CD3) # $t5, 0x8012 +/* 0ABB40 800AAF40 81AD6CD3 */ lb $t5, %lo(D_80126CD3)($t5) +/* 0ABB44 800AAF44 8FAE00A4 */ lw $t6, 0xa4($sp) +/* 0ABB48 800AAF48 31AC0001 */ andi $t4, $t5, 1 +/* 0ABB4C 800AAF4C 11800006 */ beqz $t4, .L800AAF68 +/* 0ABB50 800AAF50 00000000 */ nop +/* 0ABB54 800AAF54 448E8000 */ mtc1 $t6, $f16 +/* 0ABB58 800AAF58 C6080010 */ lwc1 $f8, 0x10($s0) +/* 0ABB5C 800AAF5C 468082A0 */ cvt.s.w $f10, $f16 +/* 0ABB60 800AAF60 460A4101 */ sub.s $f4, $f8, $f10 +/* 0ABB64 800AAF64 E6040010 */ swc1 $f4, 0x10($s0) +.L800AAF68: +/* 0ABB68 800AAF68 3C0F8012 */ lui $t7, %hi(D_80126D28) # $t7, 0x8012 +/* 0ABB6C 800AAF6C 8DEF6D28 */ lw $t7, %lo(D_80126D28)($t7) +/* 0ABB70 800AAF70 8F396D24 */ lw $t9, %lo(D_80126D24)($t9) +/* 0ABB74 800AAF74 C610000C */ lwc1 $f16, 0xc($s0) +/* 0ABB78 800AAF78 032FC021 */ addu $t8, $t9, $t7 +/* 0ABB7C 800AAF7C 44983000 */ mtc1 $t8, $f6 +/* 0ABB80 800AAF80 00000000 */ nop +/* 0ABB84 800AAF84 468034A0 */ cvt.s.w $f18, $f6 +/* 0ABB88 800AAF88 46128201 */ sub.s $f8, $f16, $f18 +/* 0ABB8C 800AAF8C E608000C */ swc1 $f8, 0xc($s0) +.L800AAF90: +/* 0ABB90 800AAF90 8D6B6CFC */ lw $t3, %lo(D_80126CFC)($t3) +/* 0ABB94 800AAF94 8FAD00B8 */ lw $t5, 0xb8($sp) +/* 0ABB98 800AAF98 3C0C8012 */ lui $t4, %hi(D_80126D00) # $t4, 0x8012 +/* 0ABB9C 800AAF9C ADAB0000 */ sw $t3, ($t5) +/* 0ABBA0 800AAFA0 8FAE00BC */ lw $t6, 0xbc($sp) +/* 0ABBA4 800AAFA4 8D8C6D00 */ lw $t4, %lo(D_80126D00)($t4) +/* 0ABBA8 800AAFA8 3C198012 */ lui $t9, %hi(D_80126D04) # $t9, 0x8012 +/* 0ABBAC 800AAFAC ADCC0000 */ sw $t4, ($t6) +/* 0ABBB0 800AAFB0 8FAF00C0 */ lw $t7, 0xc0($sp) +/* 0ABBB4 800AAFB4 8F396D04 */ lw $t9, %lo(D_80126D04)($t9) +/* 0ABBB8 800AAFB8 00000000 */ nop +/* 0ABBBC 800AAFBC ADF90000 */ sw $t9, ($t7) +.L800AAFC0: +/* 0ABBC0 800AAFC0 8FBF002C */ lw $ra, 0x2c($sp) +/* 0ABBC4 800AAFC4 8FB00028 */ lw $s0, 0x28($sp) +/* 0ABBC8 800AAFC8 03E00008 */ jr $ra +/* 0ABBCC 800AAFCC 27BD00B8 */ addiu $sp, $sp, 0xb8 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AAFD0.s b/asm/non_matchings/unknown_09F8F0/func_800AAFD0.s new file mode 100644 index 00000000..6de69551 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AAFD0.s @@ -0,0 +1,121 @@ +glabel func_800AAFD0 +/* 0ABBD0 800AAFD0 27BDFF98 */ addiu $sp, $sp, -0x68 +/* 0ABBD4 800AAFD4 AFBF003C */ sw $ra, 0x3c($sp) +/* 0ABBD8 800AAFD8 AFBE0038 */ sw $fp, 0x38($sp) +/* 0ABBDC 800AAFDC AFB70034 */ sw $s7, 0x34($sp) +/* 0ABBE0 800AAFE0 AFB60030 */ sw $s6, 0x30($sp) +/* 0ABBE4 800AAFE4 AFB5002C */ sw $s5, 0x2c($sp) +/* 0ABBE8 800AAFE8 AFB40028 */ sw $s4, 0x28($sp) +/* 0ABBEC 800AAFEC AFB30024 */ sw $s3, 0x24($sp) +/* 0ABBF0 800AAFF0 AFB20020 */ sw $s2, 0x20($sp) +/* 0ABBF4 800AAFF4 AFB1001C */ sw $s1, 0x1c($sp) +/* 0ABBF8 800AAFF8 AFB00018 */ sw $s0, 0x18($sp) +/* 0ABBFC 800AAFFC 84850028 */ lh $a1, 0x28($a0) +/* 0ABC00 800AB000 00809825 */ move $s3, $a0 +/* 0ABC04 800AB004 18A00057 */ blez $a1, .L800AB164 +/* 0ABC08 800AB008 0000B825 */ move $s7, $zero +/* 0ABC0C 800AB00C 3C128012 */ lui $s2, %hi(D_80126CFC) # $s2, 0x8012 +/* 0ABC10 800AB010 26526CFC */ addiu $s2, %lo(D_80126CFC) # addiu $s2, $s2, 0x6cfc +/* 0ABC14 800AB014 0000F025 */ move $fp, $zero +.L800AB018: +/* 0ABC18 800AB018 8E6E0038 */ lw $t6, 0x38($s3) +/* 0ABC1C 800AB01C 24160001 */ li $s6, 1 +/* 0ABC20 800AB020 01DE1021 */ addu $v0, $t6, $fp +/* 0ABC24 800AB024 8C470008 */ lw $a3, 8($v0) +/* 0ABC28 800AB028 240100FF */ li $at, 255 +/* 0ABC2C 800AB02C 30EF0100 */ andi $t7, $a3, 0x100 +/* 0ABC30 800AB030 15E00048 */ bnez $t7, .L800AB154 +/* 0ABC34 800AB034 00000000 */ nop +/* 0ABC38 800AB038 84430002 */ lh $v1, 2($v0) +/* 0ABC3C 800AB03C 84440004 */ lh $a0, 4($v0) +/* 0ABC40 800AB040 00035880 */ sll $t3, $v1, 2 +/* 0ABC44 800AB044 8458000E */ lh $t8, 0xe($v0) +/* 0ABC48 800AB048 84590010 */ lh $t9, 0x10($v0) +/* 0ABC4C 800AB04C 8E6A0004 */ lw $t2, 4($s3) +/* 0ABC50 800AB050 8E6C0008 */ lw $t4, 8($s3) +/* 0ABC54 800AB054 90450000 */ lbu $a1, ($v0) +/* 0ABC58 800AB058 01635821 */ addu $t3, $t3, $v1 +/* 0ABC5C 800AB05C 000B5840 */ sll $t3, $t3, 1 +/* 0ABC60 800AB060 00046900 */ sll $t5, $a0, 4 +/* 0ABC64 800AB064 03038023 */ subu $s0, $t8, $v1 +/* 0ABC68 800AB068 0324A023 */ subu $s4, $t9, $a0 +/* 0ABC6C 800AB06C 014BA821 */ addu $s5, $t2, $t3 +/* 0ABC70 800AB070 14A10003 */ bne $a1, $at, .L800AB080 +/* 0ABC74 800AB074 018D4021 */ addu $t0, $t4, $t5 +/* 0ABC78 800AB078 10000006 */ b .L800AB094 +/* 0ABC7C 800AB07C 00008825 */ move $s1, $zero +.L800AB080: +/* 0ABC80 800AB080 8E6E0000 */ lw $t6, ($s3) +/* 0ABC84 800AB084 000578C0 */ sll $t7, $a1, 3 +/* 0ABC88 800AB088 01CFC021 */ addu $t8, $t6, $t7 +/* 0ABC8C 800AB08C 8F110000 */ lw $s1, ($t8) +/* 0ABC90 800AB090 00000000 */ nop +.L800AB094: +/* 0ABC94 800AB094 2401FFFD */ li $at, -3 +/* 0ABC98 800AB098 00E13024 */ and $a2, $a3, $at +/* 0ABC9C 800AB09C 02402025 */ move $a0, $s2 +/* 0ABCA0 800AB0A0 02202825 */ move $a1, $s1 +/* 0ABCA4 800AB0A4 0C01ED32 */ jal func_8007B4C8 +/* 0ABCA8 800AB0A8 AFA80044 */ sw $t0, 0x44($sp) +/* 0ABCAC 800AB0AC 8E430000 */ lw $v1, ($s2) +/* 0ABCB0 800AB0B0 3C098000 */ lui $t1, 0x8000 +/* 0ABCB4 800AB0B4 02A92021 */ addu $a0, $s5, $t1 +/* 0ABCB8 800AB0B8 260AFFFF */ addiu $t2, $s0, -1 +/* 0ABCBC 800AB0BC 24790008 */ addiu $t9, $v1, 8 +/* 0ABCC0 800AB0C0 AE590000 */ sw $t9, ($s2) +/* 0ABCC4 800AB0C4 000A58C0 */ sll $t3, $t2, 3 +/* 0ABCC8 800AB0C8 308C0006 */ andi $t4, $a0, 6 +/* 0ABCCC 800AB0CC 016C6825 */ or $t5, $t3, $t4 +/* 0ABCD0 800AB0D0 0010C8C0 */ sll $t9, $s0, 3 +/* 0ABCD4 800AB0D4 03305021 */ addu $t2, $t9, $s0 +/* 0ABCD8 800AB0D8 000A5840 */ sll $t3, $t2, 1 +/* 0ABCDC 800AB0DC 31AE00FF */ andi $t6, $t5, 0xff +/* 0ABCE0 800AB0E0 000E7C00 */ sll $t7, $t6, 0x10 +/* 0ABCE4 800AB0E4 256C0008 */ addiu $t4, $t3, 8 +/* 0ABCE8 800AB0E8 3C010400 */ lui $at, 0x400 +/* 0ABCEC 800AB0EC 8FA80044 */ lw $t0, 0x44($sp) +/* 0ABCF0 800AB0F0 01E1C025 */ or $t8, $t7, $at +/* 0ABCF4 800AB0F4 318DFFFF */ andi $t5, $t4, 0xffff +/* 0ABCF8 800AB0F8 030D7025 */ or $t6, $t8, $t5 +/* 0ABCFC 800AB0FC AC6E0000 */ sw $t6, ($v1) +/* 0ABD00 800AB100 16200002 */ bnez $s1, .L800AB10C +/* 0ABD04 800AB104 AC640004 */ sw $a0, 4($v1) +/* 0ABD08 800AB108 0000B025 */ move $s6, $zero +.L800AB10C: +/* 0ABD0C 800AB10C 2699FFFF */ addiu $t9, $s4, -1 +/* 0ABD10 800AB110 8E430000 */ lw $v1, ($s2) +/* 0ABD14 800AB114 00195100 */ sll $t2, $t9, 4 +/* 0ABD18 800AB118 01565825 */ or $t3, $t2, $s6 +/* 0ABD1C 800AB11C 316C00FF */ andi $t4, $t3, 0xff +/* 0ABD20 800AB120 246F0008 */ addiu $t7, $v1, 8 +/* 0ABD24 800AB124 AE4F0000 */ sw $t7, ($s2) +/* 0ABD28 800AB128 000CC400 */ sll $t8, $t4, 0x10 +/* 0ABD2C 800AB12C 3C010500 */ lui $at, 0x500 +/* 0ABD30 800AB130 00147100 */ sll $t6, $s4, 4 +/* 0ABD34 800AB134 31CFFFFF */ andi $t7, $t6, 0xffff +/* 0ABD38 800AB138 03016825 */ or $t5, $t8, $at +/* 0ABD3C 800AB13C 01AFC825 */ or $t9, $t5, $t7 +/* 0ABD40 800AB140 01095021 */ addu $t2, $t0, $t1 +/* 0ABD44 800AB144 AC6A0004 */ sw $t2, 4($v1) +/* 0ABD48 800AB148 AC790000 */ sw $t9, ($v1) +/* 0ABD4C 800AB14C 86650028 */ lh $a1, 0x28($s3) +/* 0ABD50 800AB150 00000000 */ nop +.L800AB154: +/* 0ABD54 800AB154 26F70001 */ addiu $s7, $s7, 1 +/* 0ABD58 800AB158 02E5082A */ slt $at, $s7, $a1 +/* 0ABD5C 800AB15C 1420FFAE */ bnez $at, .L800AB018 +/* 0ABD60 800AB160 27DE000C */ addiu $fp, $fp, 0xc +.L800AB164: +/* 0ABD64 800AB164 8FBF003C */ lw $ra, 0x3c($sp) +/* 0ABD68 800AB168 8FB00018 */ lw $s0, 0x18($sp) +/* 0ABD6C 800AB16C 8FB1001C */ lw $s1, 0x1c($sp) +/* 0ABD70 800AB170 8FB20020 */ lw $s2, 0x20($sp) +/* 0ABD74 800AB174 8FB30024 */ lw $s3, 0x24($sp) +/* 0ABD78 800AB178 8FB40028 */ lw $s4, 0x28($sp) +/* 0ABD7C 800AB17C 8FB5002C */ lw $s5, 0x2c($sp) +/* 0ABD80 800AB180 8FB60030 */ lw $s6, 0x30($sp) +/* 0ABD84 800AB184 8FB70034 */ lw $s7, 0x34($sp) +/* 0ABD88 800AB188 8FBE0038 */ lw $fp, 0x38($sp) +/* 0ABD8C 800AB18C 03E00008 */ jr $ra +/* 0ABD90 800AB190 27BD0068 */ addiu $sp, $sp, 0x68 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AB194.s b/asm/non_matchings/unknown_09F8F0/func_800AB194.s new file mode 100644 index 00000000..05768ce2 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AB194.s @@ -0,0 +1,8 @@ +glabel func_800AB194 +/* 0ABD94 800AB194 240E0001 */ li $t6, 1 +/* 0ABD98 800AB198 3C018012 */ lui $at, %hi(D_80126CD1) # $at, 0x8012 +/* 0ABD9C 800AB19C A02E6CD1 */ sb $t6, %lo(D_80126CD1)($at) +/* 0ABDA0 800AB1A0 3C018012 */ lui $at, 0x8012 +/* 0ABDA4 800AB1A4 03E00008 */ jr $ra +/* 0ABDA8 800AB1A8 A0246CD3 */ sb $a0, 0x6cd3($at) + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AB1AC.s b/asm/non_matchings/unknown_09F8F0/func_800AB1AC.s new file mode 100644 index 00000000..d6ff91a1 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AB1AC.s @@ -0,0 +1,13 @@ +glabel func_800AB1AC +/* 0ABDAC 800AB1AC 3C0E8012 */ lui $t6, %hi(D_8012718B) # $t6, 0x8012 +/* 0ABDB0 800AB1B0 91CE718B */ lbu $t6, %lo(D_8012718B)($t6) +/* 0ABDB4 800AB1B4 3C018012 */ lui $at, %hi(D_80126CD0) # $at, 0x8012 +/* 0ABDB8 800AB1B8 A02E6CD0 */ sb $t6, %lo(D_80126CD0)($at) +/* 0ABDBC 800AB1BC 3C018012 */ lui $at, 0x8012 +/* 0ABDC0 800AB1C0 03E00008 */ jr $ra +/* 0ABDC4 800AB1C4 A0246CD3 */ sb $a0, 0x6cd3($at) + +/* 0ABDC8 800AB1C8 3C018012 */ lui $at, 0x8012 +/* 0ABDCC 800AB1CC 03E00008 */ jr $ra +/* 0ABDD0 800AB1D0 A0206CD4 */ sb $zero, 0x6cd4($at) + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AB1D4.s b/asm/non_matchings/unknown_09F8F0/func_800AB1D4.s new file mode 100644 index 00000000..c6cfc01f --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AB1D4.s @@ -0,0 +1,9 @@ +glabel func_800AB1D4 +/* 0ABDD4 800AB1D4 240F0001 */ li $t7, 1 +/* 0ABDD8 800AB1D8 01E4C023 */ subu $t8, $t7, $a0 +/* 0ABDDC 800AB1DC 3C018012 */ lui $at, 0x8012 +/* 0ABDE0 800AB1E0 AFA40000 */ sw $a0, ($sp) +/* 0ABDE4 800AB1E4 03E00008 */ jr $ra +/* 0ABDE8 800AB1E8 A0386CD2 */ sb $t8, 0x6cd2($at) + +/* 0ABDEC 800AB1EC 00000000 */ nop diff --git a/asm/non_matchings/unknown_09F8F0/func_800AB1F0.s b/asm/non_matchings/unknown_09F8F0/func_800AB1F0.s new file mode 100644 index 00000000..108231ac --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AB1F0.s @@ -0,0 +1,74 @@ +glabel func_800AB1F0 +/* 0ABDF0 800AB1F0 3C03800E */ lui $v1, %hi(D_800E28D8) # $v1, 0x800e +/* 0ABDF4 800AB1F4 246328D8 */ addiu $v1, %lo(D_800E28D8) # addiu $v1, $v1, 0x28d8 +/* 0ABDF8 800AB1F8 AC600000 */ sw $zero, ($v1) +/* 0ABDFC 800AB1FC AC600004 */ sw $zero, 4($v1) +/* 0ABE00 800AB200 3C01800E */ lui $at, %hi(D_800E28D4) # $at, 0x800e +/* 0ABE04 800AB204 AC2028D4 */ sw $zero, %lo(D_800E28D4)($at) +/* 0ABE08 800AB208 3C028012 */ lui $v0, %hi(D_80127C00) # $v0, 0x8012 +/* 0ABE0C 800AB20C 3C018012 */ lui $at, %hi(D_80127BB0) # $at, 0x8012 +/* 0ABE10 800AB210 240E0006 */ li $t6, 6 +/* 0ABE14 800AB214 24427C00 */ addiu $v0, %lo(D_80127C00) # addiu $v0, $v0, 0x7c00 +/* 0ABE18 800AB218 AC207BB0 */ sw $zero, %lo(D_80127BB0)($at) +/* 0ABE1C 800AB21C 000EC080 */ sll $t8, $t6, 2 +/* 0ABE20 800AB220 AC4E0000 */ sw $t6, ($v0) +/* 0ABE24 800AB224 AC580000 */ sw $t8, ($v0) +/* 0ABE28 800AB228 00184043 */ sra $t0, $t8, 1 +/* 0ABE2C 800AB22C 3C018012 */ lui $at, %hi(D_80127C04) # $at, 0x8012 +/* 0ABE30 800AB230 3C04800E */ lui $a0, %hi(D_800E2914) # $a0, 0x800e +/* 0ABE34 800AB234 AC287C04 */ sw $t0, %lo(D_80127C04)($at) +/* 0ABE38 800AB238 24842914 */ addiu $a0, %lo(D_800E2914) # addiu $a0, $a0, 0x2914 +/* 0ABE3C 800AB23C AC800000 */ sw $zero, ($a0) +/* 0ABE40 800AB240 AC800004 */ sw $zero, 4($a0) +/* 0ABE44 800AB244 3C01800E */ lui $at, %hi(D_800E290C) # $at, 0x800e +/* 0ABE48 800AB248 3C058012 */ lui $a1, %hi(D_80127BF8) # $a1, 0x8012 +/* 0ABE4C 800AB24C AC20290C */ sw $zero, %lo(D_800E290C)($at) +/* 0ABE50 800AB250 24A57BF8 */ addiu $a1, %lo(D_80127BF8) # addiu $a1, $a1, 0x7bf8 +/* 0ABE54 800AB254 2406FFFF */ li $a2, -1 +/* 0ABE58 800AB258 2409FE00 */ li $t1, -512 +/* 0ABE5C 800AB25C A4A60000 */ sh $a2, ($a1) +/* 0ABE60 800AB260 A4A90002 */ sh $t1, 2($a1) +/* 0ABE64 800AB264 3C01800E */ lui $at, %hi(D_800E2A80) # $at, 0x800e +/* 0ABE68 800AB268 AC202A80 */ sw $zero, %lo(D_800E2A80)($at) +/* 0ABE6C 800AB26C 3C01800E */ lui $at, %hi(D_800E2A84) # $at, 0x800e +/* 0ABE70 800AB270 240A0001 */ li $t2, 1 +/* 0ABE74 800AB274 AC2A2A84 */ sw $t2, %lo(D_800E2A84)($at) +/* 0ABE78 800AB278 3C07800E */ lui $a3, %hi(D_800E291C) # $a3, 0x800e +/* 0ABE7C 800AB27C 3C01800E */ lui $at, %hi(D_800E2A88) # $at, 0x800e +/* 0ABE80 800AB280 24E7291C */ addiu $a3, %lo(D_800E291C) # addiu $a3, $a3, 0x291c +/* 0ABE84 800AB284 AC202A88 */ sw $zero, %lo(D_800E2A88)($at) +/* 0ABE88 800AB288 8CEB0000 */ lw $t3, ($a3) +/* 0ABE8C 800AB28C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0ABE90 800AB290 15600018 */ bnez $t3, .L800AB2F4 +/* 0ABE94 800AB294 AFBF0014 */ sw $ra, 0x14($sp) +/* 0ABE98 800AB298 0C01DB16 */ jal func_80076C58 +/* 0ABE9C 800AB29C 24040013 */ li $a0, 19 +/* 0ABEA0 800AB2A0 3C04800E */ lui $a0, %hi(D_800E2920) # $a0, 0x800e +/* 0ABEA4 800AB2A4 3C07800E */ lui $a3, %hi(D_800E291C) # $a3, 0x800e +/* 0ABEA8 800AB2A8 24E7291C */ addiu $a3, %lo(D_800E291C) # addiu $a3, $a3, 0x291c +/* 0ABEAC 800AB2AC 24842920 */ addiu $a0, %lo(D_800E2920) # addiu $a0, $a0, 0x2920 +/* 0ABEB0 800AB2B0 00006080 */ sll $t4, $zero, 2 +/* 0ABEB4 800AB2B4 ACE20000 */ sw $v0, ($a3) +/* 0ABEB8 800AB2B8 AC800000 */ sw $zero, ($a0) +/* 0ABEBC 800AB2BC 004C6821 */ addu $t5, $v0, $t4 +/* 0ABEC0 800AB2C0 8DAE0000 */ lw $t6, ($t5) +/* 0ABEC4 800AB2C4 2406FFFF */ li $a2, -1 +/* 0ABEC8 800AB2C8 00402825 */ move $a1, $v0 +/* 0ABECC 800AB2CC 10CE0009 */ beq $a2, $t6, .L800AB2F4 +/* 0ABED0 800AB2D0 00001825 */ move $v1, $zero +/* 0ABED4 800AB2D4 246F0001 */ addiu $t7, $v1, 1 +.L800AB2D8: +/* 0ABED8 800AB2D8 000FC080 */ sll $t8, $t7, 2 +/* 0ABEDC 800AB2DC 00B8C821 */ addu $t9, $a1, $t8 +/* 0ABEE0 800AB2E0 AC8F0000 */ sw $t7, ($a0) +/* 0ABEE4 800AB2E4 8F280000 */ lw $t0, ($t9) +/* 0ABEE8 800AB2E8 01E01825 */ move $v1, $t7 +/* 0ABEEC 800AB2EC 14C8FFFA */ bne $a2, $t0, .L800AB2D8 +/* 0ABEF0 800AB2F0 246F0001 */ addiu $t7, $v1, 1 +.L800AB2F4: +/* 0ABEF4 800AB2F4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0ABEF8 800AB2F8 3C018012 */ lui $at, %hi(D_80127C08) # $at, 0x8012 +/* 0ABEFC 800AB2FC AC207C08 */ sw $zero, %lo(D_80127C08)($at) +/* 0ABF00 800AB300 03E00008 */ jr $ra +/* 0ABF04 800AB304 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AB308.s b/asm/non_matchings/unknown_09F8F0/func_800AB308.s new file mode 100644 index 00000000..0c062f68 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AB308.s @@ -0,0 +1,25 @@ +glabel func_800AB308 +/* 0ABF08 800AB308 3C028012 */ lui $v0, %hi(D_80127BF8) # $v0, 0x8012 +/* 0ABF0C 800AB30C 24427BF8 */ addiu $v0, %lo(D_80127BF8) # addiu $v0, $v0, 0x7bf8 +/* 0ABF10 800AB310 84480002 */ lh $t0, 2($v0) +/* 0ABF14 800AB314 84490000 */ lh $t1, ($v0) +/* 0ABF18 800AB318 00047400 */ sll $t6, $a0, 0x10 +/* 0ABF1C 800AB31C 0005C400 */ sll $t8, $a1, 0x10 +/* 0ABF20 800AB320 0018CC03 */ sra $t9, $t8, 0x10 +/* 0ABF24 800AB324 000E7C03 */ sra $t7, $t6, 0x10 +/* 0ABF28 800AB328 AFA40000 */ sw $a0, ($sp) +/* 0ABF2C 800AB32C AFA50004 */ sw $a1, 4($sp) +/* 0ABF30 800AB330 0109082A */ slt $at, $t0, $t1 +/* 0ABF34 800AB334 03202825 */ move $a1, $t9 +/* 0ABF38 800AB338 10200004 */ beqz $at, .L800AB34C +/* 0ABF3C 800AB33C 01E02025 */ move $a0, $t7 +/* 0ABF40 800AB340 A44F0000 */ sh $t7, ($v0) +/* 0ABF44 800AB344 03E00008 */ jr $ra +/* 0ABF48 800AB348 A4590002 */ sh $t9, 2($v0) + +.L800AB34C: +/* 0ABF4C 800AB34C A4450000 */ sh $a1, ($v0) +/* 0ABF50 800AB350 A4440002 */ sh $a0, 2($v0) +/* 0ABF54 800AB354 03E00008 */ jr $ra +/* 0ABF58 800AB358 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AB35C.s b/asm/non_matchings/unknown_09F8F0/func_800AB35C.s new file mode 100644 index 00000000..7bf293a6 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AB35C.s @@ -0,0 +1,93 @@ +glabel func_800AB35C +/* 0ABF5C 800AB35C 3C04800E */ lui $a0, %hi(D_800E290C) # $a0, 0x800e +/* 0ABF60 800AB360 8C84290C */ lw $a0, %lo(D_800E290C)($a0) +/* 0ABF64 800AB364 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0ABF68 800AB368 10800005 */ beqz $a0, .L800AB380 +/* 0ABF6C 800AB36C AFBF0014 */ sw $ra, 0x14($sp) +/* 0ABF70 800AB370 0C01C450 */ jal func_80071140 +/* 0ABF74 800AB374 00000000 */ nop +/* 0ABF78 800AB378 3C01800E */ lui $at, %hi(D_800E290C) # $at, 0x800e +/* 0ABF7C 800AB37C AC20290C */ sw $zero, %lo(D_800E290C)($at) +.L800AB380: +/* 0ABF80 800AB380 3C02800E */ lui $v0, %hi(D_800E2914) # $v0, 0x800e +/* 0ABF84 800AB384 24422914 */ addiu $v0, %lo(D_800E2914) # addiu $v0, $v0, 0x2914 +/* 0ABF88 800AB388 8C440000 */ lw $a0, ($v0) +/* 0ABF8C 800AB38C 00000000 */ nop +/* 0ABF90 800AB390 10800006 */ beqz $a0, .L800AB3AC +/* 0ABF94 800AB394 00000000 */ nop +/* 0ABF98 800AB398 0C01C450 */ jal func_80071140 +/* 0ABF9C 800AB39C 00000000 */ nop +/* 0ABFA0 800AB3A0 3C02800E */ lui $v0, %hi(D_800E2914) # $v0, 0x800e +/* 0ABFA4 800AB3A4 24422914 */ addiu $v0, %lo(D_800E2914) # addiu $v0, $v0, 0x2914 +/* 0ABFA8 800AB3A8 AC400000 */ sw $zero, ($v0) +.L800AB3AC: +/* 0ABFAC 800AB3AC 8C440004 */ lw $a0, 4($v0) +/* 0ABFB0 800AB3B0 00000000 */ nop +/* 0ABFB4 800AB3B4 10800006 */ beqz $a0, .L800AB3D0 +/* 0ABFB8 800AB3B8 00000000 */ nop +/* 0ABFBC 800AB3BC 0C01C450 */ jal func_80071140 +/* 0ABFC0 800AB3C0 00000000 */ nop +/* 0ABFC4 800AB3C4 3C02800E */ lui $v0, %hi(D_800E2914) # $v0, 0x800e +/* 0ABFC8 800AB3C8 24422914 */ addiu $v0, %lo(D_800E2914) # addiu $v0, $v0, 0x2914 +/* 0ABFCC 800AB3CC AC400004 */ sw $zero, 4($v0) +.L800AB3D0: +/* 0ABFD0 800AB3D0 3C04800E */ lui $a0, %hi(D_800E28D4) # $a0, 0x800e +/* 0ABFD4 800AB3D4 8C8428D4 */ lw $a0, %lo(D_800E28D4)($a0) +/* 0ABFD8 800AB3D8 00000000 */ nop +/* 0ABFDC 800AB3DC 10800005 */ beqz $a0, .L800AB3F4 +/* 0ABFE0 800AB3E0 00000000 */ nop +/* 0ABFE4 800AB3E4 0C01C450 */ jal func_80071140 +/* 0ABFE8 800AB3E8 00000000 */ nop +/* 0ABFEC 800AB3EC 3C01800E */ lui $at, %hi(D_800E28D4) # $at, 0x800e +/* 0ABFF0 800AB3F0 AC2028D4 */ sw $zero, %lo(D_800E28D4)($at) +.L800AB3F4: +/* 0ABFF4 800AB3F4 3C02800E */ lui $v0, %hi(D_800E28D8) # $v0, 0x800e +/* 0ABFF8 800AB3F8 244228D8 */ addiu $v0, %lo(D_800E28D8) # addiu $v0, $v0, 0x28d8 +/* 0ABFFC 800AB3FC 8C440000 */ lw $a0, ($v0) +/* 0AC000 800AB400 00000000 */ nop +/* 0AC004 800AB404 10800006 */ beqz $a0, .L800AB420 +/* 0AC008 800AB408 00000000 */ nop +/* 0AC00C 800AB40C 0C01C450 */ jal func_80071140 +/* 0AC010 800AB410 00000000 */ nop +/* 0AC014 800AB414 3C02800E */ lui $v0, %hi(D_800E28D8) # $v0, 0x800e +/* 0AC018 800AB418 244228D8 */ addiu $v0, %lo(D_800E28D8) # addiu $v0, $v0, 0x28d8 +/* 0AC01C 800AB41C AC400000 */ sw $zero, ($v0) +.L800AB420: +/* 0AC020 800AB420 8C440008 */ lw $a0, 8($v0) +/* 0AC024 800AB424 00000000 */ nop +/* 0AC028 800AB428 10800006 */ beqz $a0, .L800AB444 +/* 0AC02C 800AB42C 00000000 */ nop +/* 0AC030 800AB430 0C01ECAF */ jal func_8007B2BC +/* 0AC034 800AB434 00000000 */ nop +/* 0AC038 800AB438 3C02800E */ lui $v0, %hi(D_800E28D8) # $v0, 0x800e +/* 0AC03C 800AB43C 244228D8 */ addiu $v0, %lo(D_800E28D8) # addiu $v0, $v0, 0x28d8 +/* 0AC040 800AB440 AC400008 */ sw $zero, 8($v0) +.L800AB444: +/* 0AC044 800AB444 3C04800E */ lui $a0, %hi(D_800E2910) # $a0, 0x800e +/* 0AC048 800AB448 8C842910 */ lw $a0, %lo(D_800E2910)($a0) +/* 0AC04C 800AB44C 00000000 */ nop +/* 0AC050 800AB450 10800005 */ beqz $a0, .L800AB468 +/* 0AC054 800AB454 00000000 */ nop +/* 0AC058 800AB458 0C01C450 */ jal func_80071140 +/* 0AC05C 800AB45C 00000000 */ nop +/* 0AC060 800AB460 3C01800E */ lui $at, %hi(D_800E2910) # $at, 0x800e +/* 0AC064 800AB464 AC202910 */ sw $zero, %lo(D_800E2910)($at) +.L800AB468: +/* 0AC068 800AB468 3C01800E */ lui $at, %hi(D_800E2A88) # $at, 0x800e +/* 0AC06C 800AB46C AC202A88 */ sw $zero, %lo(D_800E2A88)($at) +/* 0AC070 800AB470 3C01800E */ lui $at, %hi(D_800E2A80) # $at, 0x800e +/* 0AC074 800AB474 3C0F800E */ lui $t7, %hi(D_800E2C5C) # $t7, 0x800e +/* 0AC078 800AB478 8DEF2C5C */ lw $t7, %lo(D_800E2C5C)($t7) +/* 0AC07C 800AB47C AC202A80 */ sw $zero, %lo(D_800E2A80)($at) +/* 0AC080 800AB480 3C01800E */ lui $at, %hi(D_800E2A84) # $at, 0x800e +/* 0AC084 800AB484 240E0001 */ li $t6, 1 +/* 0AC088 800AB488 11E00003 */ beqz $t7, .L800AB498 +/* 0AC08C 800AB48C AC2E2A84 */ sw $t6, %lo(D_800E2A84)($at) +/* 0AC090 800AB490 0C02B488 */ jal func_800AD220 +/* 0AC094 800AB494 00000000 */ nop +.L800AB498: +/* 0AC098 800AB498 8FBF0014 */ lw $ra, 0x14($sp) +/* 0AC09C 800AB49C 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0AC0A0 800AB4A0 03E00008 */ jr $ra +/* 0AC0A4 800AB4A4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AB4A8.s b/asm/non_matchings/unknown_09F8F0/func_800AB4A8.s new file mode 100644 index 00000000..317bc1df --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AB4A8.s @@ -0,0 +1,435 @@ +glabel func_800AB4A8 +/* 0AC0A8 800AB4A8 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0AC0AC 800AB4AC AFBF0034 */ sw $ra, 0x34($sp) +/* 0AC0B0 800AB4B0 AFB40028 */ sw $s4, 0x28($sp) +/* 0AC0B4 800AB4B4 AFB20020 */ sw $s2, 0x20($sp) +/* 0AC0B8 800AB4B8 AFB1001C */ sw $s1, 0x1c($sp) +/* 0AC0BC 800AB4BC AFB00018 */ sw $s0, 0x18($sp) +/* 0AC0C0 800AB4C0 00C08025 */ move $s0, $a2 +/* 0AC0C4 800AB4C4 00808825 */ move $s1, $a0 +/* 0AC0C8 800AB4C8 00E09025 */ move $s2, $a3 +/* 0AC0CC 800AB4CC 00A0A025 */ move $s4, $a1 +/* 0AC0D0 800AB4D0 AFB60030 */ sw $s6, 0x30($sp) +/* 0AC0D4 800AB4D4 AFB5002C */ sw $s5, 0x2c($sp) +/* 0AC0D8 800AB4D8 0C02ACD7 */ jal func_800AB35C +/* 0AC0DC 800AB4DC AFB30024 */ sw $s3, 0x24($sp) +/* 0AC0E0 800AB4E0 3C028012 */ lui $v0, %hi(D_80127BB8) # $v0, 0x8012 +/* 0AC0E4 800AB4E4 24427BB8 */ addiu $v0, %lo(D_80127BB8) # addiu $v0, $v0, 0x7bb8 +/* 0AC0E8 800AB4E8 8FA30048 */ lw $v1, 0x48($sp) +/* 0AC0EC 800AB4EC 8FA6004C */ lw $a2, 0x4c($sp) +/* 0AC0F0 800AB4F0 8FA70050 */ lw $a3, 0x50($sp) +/* 0AC0F4 800AB4F4 2A210002 */ slti $at, $s1, 2 +/* 0AC0F8 800AB4F8 AC50000C */ sw $s0, 0xc($v0) +/* 0AC0FC 800AB4FC AC400010 */ sw $zero, 0x10($v0) +/* 0AC100 800AB500 AC500014 */ sw $s0, 0x14($v0) +/* 0AC104 800AB504 AC520018 */ sw $s2, 0x18($v0) +/* 0AC108 800AB508 AC40001C */ sw $zero, 0x1c($v0) +/* 0AC10C 800AB50C AC520020 */ sw $s2, 0x20($v0) +/* 0AC110 800AB510 AC400028 */ sw $zero, 0x28($v0) +/* 0AC114 800AB514 AC400004 */ sw $zero, 4($v0) +/* 0AC118 800AB518 AC400034 */ sw $zero, 0x34($v0) +/* 0AC11C 800AB51C AC40003C */ sw $zero, 0x3c($v0) +/* 0AC120 800AB520 AC430024 */ sw $v1, 0x24($v0) +/* 0AC124 800AB524 AC43002C */ sw $v1, 0x2c($v0) +/* 0AC128 800AB528 AC460000 */ sw $a2, ($v0) +/* 0AC12C 800AB52C AC460008 */ sw $a2, 8($v0) +/* 0AC130 800AB530 AC470030 */ sw $a3, 0x30($v0) +/* 0AC134 800AB534 14200002 */ bnez $at, .L800AB540 +/* 0AC138 800AB538 AC470038 */ sw $a3, 0x38($v0) +/* 0AC13C 800AB53C 24110001 */ li $s1, 1 +.L800AB540: +/* 0AC140 800AB540 00117080 */ sll $t6, $s1, 2 +/* 0AC144 800AB544 01D17023 */ subu $t6, $t6, $s1 +/* 0AC148 800AB548 000E7080 */ sll $t6, $t6, 2 +/* 0AC14C 800AB54C 01D17023 */ subu $t6, $t6, $s1 +/* 0AC150 800AB550 3C0F800E */ lui $t7, %hi(D_800E2850) # $t7, 0x800e +/* 0AC154 800AB554 25EF2850 */ addiu $t7, %lo(D_800E2850) # addiu $t7, $t7, 0x2850 +/* 0AC158 800AB558 000E7080 */ sll $t6, $t6, 2 +/* 0AC15C 800AB55C 01CF8021 */ addu $s0, $t6, $t7 +/* 0AC160 800AB560 8E180008 */ lw $t8, 8($s0) +/* 0AC164 800AB564 24010001 */ li $at, 1 +/* 0AC168 800AB568 17010006 */ bne $t8, $at, .L800AB584 +/* 0AC16C 800AB56C 3C16FFAA */ lui $s6, (0xFFAA55FF >> 16) # lui $s6, 0xffaa +/* 0AC170 800AB570 24C40001 */ addiu $a0, $a2, 1 +/* 0AC174 800AB574 0C02B451 */ jal func_800AD144 +/* 0AC178 800AB578 24E50001 */ addiu $a1, $a3, 1 +/* 0AC17C 800AB57C 10000164 */ b .L800ABB10 +/* 0AC180 800AB580 8FBF0034 */ lw $ra, 0x34($sp) +.L800AB584: +/* 0AC184 800AB584 8E040004 */ lw $a0, 4($s0) +/* 0AC188 800AB588 36D655FF */ ori $s6, (0xFFAA55FF & 0xFFFF) # ori $s6, $s6, 0x55ff +/* 0AC18C 800AB58C 0004C880 */ sll $t9, $a0, 2 +/* 0AC190 800AB590 0324C823 */ subu $t9, $t9, $a0 +/* 0AC194 800AB594 00192080 */ sll $a0, $t9, 2 +/* 0AC198 800AB598 0C01C327 */ jal func_80070C9C +/* 0AC19C 800AB59C 02C02825 */ move $a1, $s6 +/* 0AC1A0 800AB5A0 3C15800E */ lui $s5, %hi(D_800E28D8) # $s5, 0x800e +/* 0AC1A4 800AB5A4 26B528D8 */ addiu $s5, %lo(D_800E28D8) # addiu $s5, $s5, 0x28d8 +/* 0AC1A8 800AB5A8 8E090004 */ lw $t1, 4($s0) +/* 0AC1AC 800AB5AC 8E0B0010 */ lw $t3, 0x10($s0) +/* 0AC1B0 800AB5B0 86180024 */ lh $t8, 0x24($s0) +/* 0AC1B4 800AB5B4 86190026 */ lh $t9, 0x26($s0) +/* 0AC1B8 800AB5B8 8E0D0018 */ lw $t5, 0x18($s0) +/* 0AC1BC 800AB5BC 8E0A000C */ lw $t2, 0xc($s0) +/* 0AC1C0 800AB5C0 8E0C0014 */ lw $t4, 0x14($s0) +/* 0AC1C4 800AB5C4 AEA90004 */ sw $t1, 4($s5) +/* 0AC1C8 800AB5C8 AEAB0010 */ sw $t3, 0x10($s5) +/* 0AC1CC 800AB5CC A6B80024 */ sh $t8, 0x24($s5) +/* 0AC1D0 800AB5D0 A6B90026 */ sh $t9, 0x26($s5) +/* 0AC1D4 800AB5D4 86A90024 */ lh $t1, 0x24($s5) +/* 0AC1D8 800AB5D8 86AB0026 */ lh $t3, 0x26($s5) +/* 0AC1DC 800AB5DC AEAD0018 */ sw $t5, 0x18($s5) +/* 0AC1E0 800AB5E0 8E0E001C */ lw $t6, 0x1c($s0) +/* 0AC1E4 800AB5E4 8E0F0020 */ lw $t7, 0x20($s0) +/* 0AC1E8 800AB5E8 8E0D0008 */ lw $t5, 8($s0) +/* 0AC1EC 800AB5EC AEAA000C */ sw $t2, 0xc($s5) +/* 0AC1F0 800AB5F0 AEAC0014 */ sw $t4, 0x14($s5) +/* 0AC1F4 800AB5F4 00095040 */ sll $t2, $t1, 1 +/* 0AC1F8 800AB5F8 000B6040 */ sll $t4, $t3, 1 +/* 0AC1FC 800AB5FC AEA20000 */ sw $v0, ($s5) +/* 0AC200 800AB600 A6AA0028 */ sh $t2, 0x28($s5) +/* 0AC204 800AB604 A6AC002A */ sh $t4, 0x2a($s5) +/* 0AC208 800AB608 AEAE001C */ sw $t6, 0x1c($s5) +/* 0AC20C 800AB60C 15A00003 */ bnez $t5, .L800AB61C +/* 0AC210 800AB610 AEAF0020 */ sw $t7, 0x20($s5) +/* 0AC214 800AB614 0C02AECD */ jal func_800ABB34 +/* 0AC218 800AB618 00000000 */ nop +.L800AB61C: +/* 0AC21C 800AB61C 3C138012 */ lui $s3, %hi(D_80127BB0) # $s3, 0x8012 +/* 0AC220 800AB620 26737BB0 */ addiu $s3, %lo(D_80127BB0) # addiu $s3, $s3, 0x7bb0 +/* 0AC224 800AB624 AE740000 */ sw $s4, ($s3) +/* 0AC228 800AB628 00142040 */ sll $a0, $s4, 1 +/* 0AC22C 800AB62C 0C01C327 */ jal func_80070C9C +/* 0AC230 800AB630 02C02825 */ move $a1, $s6 +/* 0AC234 800AB634 3C01800E */ lui $at, %hi(D_800E2910) # $at, 0x800e +/* 0AC238 800AB638 AC222910 */ sw $v0, %lo(D_800E2910)($at) +/* 0AC23C 800AB63C 00142100 */ sll $a0, $s4, 4 +/* 0AC240 800AB640 0C01C327 */ jal func_80070C9C +/* 0AC244 800AB644 02C02825 */ move $a1, $s6 +/* 0AC248 800AB648 8E6E0000 */ lw $t6, ($s3) +/* 0AC24C 800AB64C 3C12800E */ lui $s2, %hi(D_800E28D4) # $s2, 0x800e +/* 0AC250 800AB650 265228D4 */ addiu $s2, %lo(D_800E28D4) # addiu $s2, $s2, 0x28d4 +/* 0AC254 800AB654 AE420000 */ sw $v0, ($s2) +/* 0AC258 800AB658 19C0003F */ blez $t6, .L800AB758 +/* 0AC25C 800AB65C 00008825 */ move $s1, $zero +/* 0AC260 800AB660 00008025 */ move $s0, $zero +.L800AB664: +/* 0AC264 800AB664 8EA50018 */ lw $a1, 0x18($s5) +/* 0AC268 800AB668 0C01BE53 */ jal func_8006F94C +/* 0AC26C 800AB66C 00002025 */ move $a0, $zero +/* 0AC270 800AB670 8E4F0000 */ lw $t7, ($s2) +/* 0AC274 800AB674 00002025 */ move $a0, $zero +/* 0AC278 800AB678 01F0C021 */ addu $t8, $t7, $s0 +/* 0AC27C 800AB67C AF020000 */ sw $v0, ($t8) +/* 0AC280 800AB680 8EA5001C */ lw $a1, 0x1c($s5) +/* 0AC284 800AB684 0C01BE53 */ jal func_8006F94C +/* 0AC288 800AB688 00000000 */ nop +/* 0AC28C 800AB68C 8E590000 */ lw $t9, ($s2) +/* 0AC290 800AB690 00002025 */ move $a0, $zero +/* 0AC294 800AB694 03304821 */ addu $t1, $t9, $s0 +/* 0AC298 800AB698 AD220004 */ sw $v0, 4($t1) +/* 0AC29C 800AB69C 8EA50020 */ lw $a1, 0x20($s5) +/* 0AC2A0 800AB6A0 0C01BE53 */ jal func_8006F94C +/* 0AC2A4 800AB6A4 00000000 */ nop +/* 0AC2A8 800AB6A8 8E4A0000 */ lw $t2, ($s2) +/* 0AC2AC 800AB6AC 00002025 */ move $a0, $zero +/* 0AC2B0 800AB6B0 01505821 */ addu $t3, $t2, $s0 +/* 0AC2B4 800AB6B4 AD620008 */ sw $v0, 8($t3) +/* 0AC2B8 800AB6B8 0C01BE53 */ jal func_8006F94C +/* 0AC2BC 800AB6BC 24050020 */ li $a1, 32 +/* 0AC2C0 800AB6C0 8E4F0000 */ lw $t7, ($s2) +/* 0AC2C4 800AB6C4 244C0005 */ addiu $t4, $v0, 5 +/* 0AC2C8 800AB6C8 240D0001 */ li $t5, 1 +/* 0AC2CC 800AB6CC 018D7004 */ sllv $t6, $t5, $t4 +/* 0AC2D0 800AB6D0 01F0C021 */ addu $t8, $t7, $s0 +/* 0AC2D4 800AB6D4 A30E000C */ sb $t6, 0xc($t8) +/* 0AC2D8 800AB6D8 00002025 */ move $a0, $zero +/* 0AC2DC 800AB6DC 0C01BE53 */ jal func_8006F94C +/* 0AC2E0 800AB6E0 24050020 */ li $a1, 32 +/* 0AC2E4 800AB6E4 8E4B0000 */ lw $t3, ($s2) +/* 0AC2E8 800AB6E8 24590005 */ addiu $t9, $v0, 5 +/* 0AC2EC 800AB6EC 24090001 */ li $t1, 1 +/* 0AC2F0 800AB6F0 03295004 */ sllv $t2, $t1, $t9 +/* 0AC2F4 800AB6F4 01706821 */ addu $t5, $t3, $s0 +/* 0AC2F8 800AB6F8 A1AA000D */ sb $t2, 0xd($t5) +/* 0AC2FC 800AB6FC 00002025 */ move $a0, $zero +/* 0AC300 800AB700 0C01BE53 */ jal func_8006F94C +/* 0AC304 800AB704 24050020 */ li $a1, 32 +/* 0AC308 800AB708 8E580000 */ lw $t8, ($s2) +/* 0AC30C 800AB70C 244C0005 */ addiu $t4, $v0, 5 +/* 0AC310 800AB710 240F0001 */ li $t7, 1 +/* 0AC314 800AB714 018F7004 */ sllv $t6, $t7, $t4 +/* 0AC318 800AB718 03104821 */ addu $t1, $t8, $s0 +/* 0AC31C 800AB71C A12E000E */ sb $t6, 0xe($t1) +/* 0AC320 800AB720 8EA50004 */ lw $a1, 4($s5) +/* 0AC324 800AB724 00002025 */ move $a0, $zero +/* 0AC328 800AB728 0C01BE53 */ jal func_8006F94C +/* 0AC32C 800AB72C 24A5FFFF */ addiu $a1, $a1, -1 +/* 0AC330 800AB730 8E590000 */ lw $t9, ($s2) +/* 0AC334 800AB734 26310001 */ addiu $s1, $s1, 1 +/* 0AC338 800AB738 03305821 */ addu $t3, $t9, $s0 +/* 0AC33C 800AB73C A162000F */ sb $v0, 0xf($t3) +/* 0AC340 800AB740 8E6A0000 */ lw $t2, ($s3) +/* 0AC344 800AB744 26100010 */ addiu $s0, $s0, 0x10 +/* 0AC348 800AB748 022A082A */ slt $at, $s1, $t2 +/* 0AC34C 800AB74C 1420FFC5 */ bnez $at, .L800AB664 +/* 0AC350 800AB750 00000000 */ nop +/* 0AC354 800AB754 00008825 */ move $s1, $zero +.L800AB758: +/* 0AC358 800AB758 00148080 */ sll $s0, $s4, 2 +/* 0AC35C 800AB75C 00109080 */ sll $s2, $s0, 2 +/* 0AC360 800AB760 02509021 */ addu $s2, $s2, $s0 +/* 0AC364 800AB764 00129040 */ sll $s2, $s2, 1 +/* 0AC368 800AB768 02402025 */ move $a0, $s2 +/* 0AC36C 800AB76C 0C01C327 */ jal func_80070C9C +/* 0AC370 800AB770 02C02825 */ move $a1, $s6 +/* 0AC374 800AB774 3C13800E */ lui $s3, %hi(D_800E2914) # $s3, 0x800e +/* 0AC378 800AB778 26732914 */ addiu $s3, %lo(D_800E2914) # addiu $s3, $s3, 0x2914 +/* 0AC37C 800AB77C AE620000 */ sw $v0, ($s3) +/* 0AC380 800AB780 02402025 */ move $a0, $s2 +/* 0AC384 800AB784 0C01C327 */ jal func_80070C9C +/* 0AC388 800AB788 02C02825 */ move $a1, $s6 +/* 0AC38C 800AB78C 3C07800E */ lui $a3, %hi(D_800E2914) # $a3, 0x800e +/* 0AC390 800AB790 3C08800E */ lui $t0, %hi(D_800E291C) # $t0, 0x800e +/* 0AC394 800AB794 3C03800E */ lui $v1, %hi(D_800E2904) # $v1, 0x800e +/* 0AC398 800AB798 AE620004 */ sw $v0, 4($s3) +/* 0AC39C 800AB79C 24632904 */ addiu $v1, %lo(D_800E2904) # addiu $v1, $v1, 0x2904 +/* 0AC3A0 800AB7A0 2508291C */ addiu $t0, %lo(D_800E291C) # addiu $t0, $t0, 0x291c +/* 0AC3A4 800AB7A4 24E72914 */ addiu $a3, %lo(D_800E2914) # addiu $a3, $a3, 0x2914 +/* 0AC3A8 800AB7A8 240400FF */ li $a0, 255 +.L800AB7AC: +/* 0AC3AC 800AB7AC 8CED0000 */ lw $t5, ($a3) +/* 0AC3B0 800AB7B0 1A000063 */ blez $s0, .L800AB940 +/* 0AC3B4 800AB7B4 AC6D0000 */ sw $t5, ($v1) +/* 0AC3B8 800AB7B8 32060003 */ andi $a2, $s0, 3 +/* 0AC3BC 800AB7BC 10C00017 */ beqz $a2, .L800AB81C +/* 0AC3C0 800AB7C0 00C02825 */ move $a1, $a2 +/* 0AC3C4 800AB7C4 00111080 */ sll $v0, $s1, 2 +/* 0AC3C8 800AB7C8 00511021 */ addu $v0, $v0, $s1 +/* 0AC3CC 800AB7CC 00021040 */ sll $v0, $v0, 1 +.L800AB7D0: +/* 0AC3D0 800AB7D0 8C6F0000 */ lw $t7, ($v1) +/* 0AC3D4 800AB7D4 26310001 */ addiu $s1, $s1, 1 +/* 0AC3D8 800AB7D8 01E26021 */ addu $t4, $t7, $v0 +/* 0AC3DC 800AB7DC A1840006 */ sb $a0, 6($t4) +/* 0AC3E0 800AB7E0 8C780000 */ lw $t8, ($v1) +/* 0AC3E4 800AB7E4 00000000 */ nop +/* 0AC3E8 800AB7E8 03027021 */ addu $t6, $t8, $v0 +/* 0AC3EC 800AB7EC A1C40007 */ sb $a0, 7($t6) +/* 0AC3F0 800AB7F0 8C690000 */ lw $t1, ($v1) +/* 0AC3F4 800AB7F4 00000000 */ nop +/* 0AC3F8 800AB7F8 0122C821 */ addu $t9, $t1, $v0 +/* 0AC3FC 800AB7FC A3240008 */ sb $a0, 8($t9) +/* 0AC400 800AB800 8C6B0000 */ lw $t3, ($v1) +/* 0AC404 800AB804 00000000 */ nop +/* 0AC408 800AB808 01625021 */ addu $t2, $t3, $v0 +/* 0AC40C 800AB80C A1440009 */ sb $a0, 9($t2) +/* 0AC410 800AB810 14B1FFEF */ bne $a1, $s1, .L800AB7D0 +/* 0AC414 800AB814 2442000A */ addiu $v0, $v0, 0xa +/* 0AC418 800AB818 12300048 */ beq $s1, $s0, .L800AB93C +.L800AB81C: +/* 0AC41C 800AB81C 00111080 */ sll $v0, $s1, 2 +/* 0AC420 800AB820 00102880 */ sll $a1, $s0, 2 +/* 0AC424 800AB824 00B02821 */ addu $a1, $a1, $s0 +/* 0AC428 800AB828 00511021 */ addu $v0, $v0, $s1 +/* 0AC42C 800AB82C 00021040 */ sll $v0, $v0, 1 +/* 0AC430 800AB830 00052840 */ sll $a1, $a1, 1 +.L800AB834: +/* 0AC434 800AB834 8C6D0000 */ lw $t5, ($v1) +/* 0AC438 800AB838 00000000 */ nop +/* 0AC43C 800AB83C 01A27821 */ addu $t7, $t5, $v0 +/* 0AC440 800AB840 A1E40006 */ sb $a0, 6($t7) +/* 0AC444 800AB844 8C6C0000 */ lw $t4, ($v1) +/* 0AC448 800AB848 00000000 */ nop +/* 0AC44C 800AB84C 0182C021 */ addu $t8, $t4, $v0 +/* 0AC450 800AB850 A3040007 */ sb $a0, 7($t8) +/* 0AC454 800AB854 8C6E0000 */ lw $t6, ($v1) +/* 0AC458 800AB858 00000000 */ nop +/* 0AC45C 800AB85C 01C24821 */ addu $t1, $t6, $v0 +/* 0AC460 800AB860 A1240008 */ sb $a0, 8($t1) +/* 0AC464 800AB864 8C790000 */ lw $t9, ($v1) +/* 0AC468 800AB868 00000000 */ nop +/* 0AC46C 800AB86C 03225821 */ addu $t3, $t9, $v0 +/* 0AC470 800AB870 A1640009 */ sb $a0, 9($t3) +/* 0AC474 800AB874 8C6A0000 */ lw $t2, ($v1) +/* 0AC478 800AB878 00000000 */ nop +/* 0AC47C 800AB87C 01426821 */ addu $t5, $t2, $v0 +/* 0AC480 800AB880 A1A40010 */ sb $a0, 0x10($t5) +/* 0AC484 800AB884 8C6F0000 */ lw $t7, ($v1) +/* 0AC488 800AB888 00000000 */ nop +/* 0AC48C 800AB88C 01E26021 */ addu $t4, $t7, $v0 +/* 0AC490 800AB890 A1840011 */ sb $a0, 0x11($t4) +/* 0AC494 800AB894 8C780000 */ lw $t8, ($v1) +/* 0AC498 800AB898 00000000 */ nop +/* 0AC49C 800AB89C 03027021 */ addu $t6, $t8, $v0 +/* 0AC4A0 800AB8A0 A1C40012 */ sb $a0, 0x12($t6) +/* 0AC4A4 800AB8A4 8C690000 */ lw $t1, ($v1) +/* 0AC4A8 800AB8A8 00000000 */ nop +/* 0AC4AC 800AB8AC 0122C821 */ addu $t9, $t1, $v0 +/* 0AC4B0 800AB8B0 A3240013 */ sb $a0, 0x13($t9) +/* 0AC4B4 800AB8B4 8C6B0000 */ lw $t3, ($v1) +/* 0AC4B8 800AB8B8 00000000 */ nop +/* 0AC4BC 800AB8BC 01625021 */ addu $t2, $t3, $v0 +/* 0AC4C0 800AB8C0 A144001A */ sb $a0, 0x1a($t2) +/* 0AC4C4 800AB8C4 8C6D0000 */ lw $t5, ($v1) +/* 0AC4C8 800AB8C8 00000000 */ nop +/* 0AC4CC 800AB8CC 01A27821 */ addu $t7, $t5, $v0 +/* 0AC4D0 800AB8D0 A1E4001B */ sb $a0, 0x1b($t7) +/* 0AC4D4 800AB8D4 8C6C0000 */ lw $t4, ($v1) +/* 0AC4D8 800AB8D8 00000000 */ nop +/* 0AC4DC 800AB8DC 0182C021 */ addu $t8, $t4, $v0 +/* 0AC4E0 800AB8E0 A304001C */ sb $a0, 0x1c($t8) +/* 0AC4E4 800AB8E4 8C6E0000 */ lw $t6, ($v1) +/* 0AC4E8 800AB8E8 00000000 */ nop +/* 0AC4EC 800AB8EC 01C24821 */ addu $t1, $t6, $v0 +/* 0AC4F0 800AB8F0 A124001D */ sb $a0, 0x1d($t1) +/* 0AC4F4 800AB8F4 8C790000 */ lw $t9, ($v1) +/* 0AC4F8 800AB8F8 00000000 */ nop +/* 0AC4FC 800AB8FC 03225821 */ addu $t3, $t9, $v0 +/* 0AC500 800AB900 A1640024 */ sb $a0, 0x24($t3) +/* 0AC504 800AB904 8C6A0000 */ lw $t2, ($v1) +/* 0AC508 800AB908 00000000 */ nop +/* 0AC50C 800AB90C 01426821 */ addu $t5, $t2, $v0 +/* 0AC510 800AB910 A1A40025 */ sb $a0, 0x25($t5) +/* 0AC514 800AB914 8C6F0000 */ lw $t7, ($v1) +/* 0AC518 800AB918 00000000 */ nop +/* 0AC51C 800AB91C 01E26021 */ addu $t4, $t7, $v0 +/* 0AC520 800AB920 A1840026 */ sb $a0, 0x26($t4) +/* 0AC524 800AB924 8C780000 */ lw $t8, ($v1) +/* 0AC528 800AB928 00000000 */ nop +/* 0AC52C 800AB92C 03027021 */ addu $t6, $t8, $v0 +/* 0AC530 800AB930 24420028 */ addiu $v0, $v0, 0x28 +/* 0AC534 800AB934 1445FFBF */ bne $v0, $a1, .L800AB834 +/* 0AC538 800AB938 A1C40027 */ sb $a0, 0x27($t6) +.L800AB93C: +/* 0AC53C 800AB93C 00008825 */ move $s1, $zero +.L800AB940: +/* 0AC540 800AB940 24E70004 */ addiu $a3, $a3, 4 +/* 0AC544 800AB944 00E8082B */ sltu $at, $a3, $t0 +/* 0AC548 800AB948 1420FF98 */ bnez $at, .L800AB7AC +/* 0AC54C 800AB94C 00000000 */ nop +/* 0AC550 800AB950 8EA20008 */ lw $v0, 8($s5) +/* 0AC554 800AB954 3C148012 */ lui $s4, %hi(D_80127C04) # $s4, 0x8012 +/* 0AC558 800AB958 90520000 */ lbu $s2, ($v0) +/* 0AC55C 800AB95C 90530001 */ lbu $s3, 1($v0) +/* 0AC560 800AB960 26947C04 */ addiu $s4, %lo(D_80127C04) # addiu $s4, $s4, 0x7c04 +/* 0AC564 800AB964 8E840000 */ lw $a0, ($s4) +/* 0AC568 800AB968 00124940 */ sll $t1, $s2, 5 +/* 0AC56C 800AB96C 00135140 */ sll $t2, $s3, 5 +/* 0AC570 800AB970 2532FFFF */ addiu $s2, $t1, -1 +/* 0AC574 800AB974 2553FFFF */ addiu $s3, $t2, -1 +/* 0AC578 800AB978 0012CC00 */ sll $t9, $s2, 0x10 +/* 0AC57C 800AB97C 00136C00 */ sll $t5, $s3, 0x10 +/* 0AC580 800AB980 00046100 */ sll $t4, $a0, 4 +/* 0AC584 800AB984 00199403 */ sra $s2, $t9, 0x10 +/* 0AC588 800AB988 000D9C03 */ sra $s3, $t5, 0x10 +/* 0AC58C 800AB98C 01802025 */ move $a0, $t4 +/* 0AC590 800AB990 0C01C327 */ jal func_80070C9C +/* 0AC594 800AB994 02C02825 */ move $a1, $s6 +/* 0AC598 800AB998 8E980000 */ lw $t8, ($s4) +/* 0AC59C 800AB99C 3C03800E */ lui $v1, %hi(D_800E290C) # $v1, 0x800e +/* 0AC5A0 800AB9A0 2463290C */ addiu $v1, %lo(D_800E290C) # addiu $v1, $v1, 0x290c +/* 0AC5A4 800AB9A4 1B000057 */ blez $t8, .L800ABB04 +/* 0AC5A8 800AB9A8 AC620000 */ sw $v0, ($v1) +/* 0AC5AC 800AB9AC 00008025 */ move $s0, $zero +.L800AB9B0: +/* 0AC5B0 800AB9B0 8C6E0000 */ lw $t6, ($v1) +/* 0AC5B4 800AB9B4 00112040 */ sll $a0, $s1, 1 +/* 0AC5B8 800AB9B8 01D04821 */ addu $t1, $t6, $s0 +/* 0AC5BC 800AB9BC A1200000 */ sb $zero, ($t1) +/* 0AC5C0 800AB9C0 8C790000 */ lw $t9, ($v1) +/* 0AC5C4 800AB9C4 24820003 */ addiu $v0, $a0, 3 +/* 0AC5C8 800AB9C8 03305821 */ addu $t3, $t9, $s0 +/* 0AC5CC 800AB9CC A1620001 */ sb $v0, 1($t3) +/* 0AC5D0 800AB9D0 8C6A0000 */ lw $t2, ($v1) +/* 0AC5D4 800AB9D4 24850001 */ addiu $a1, $a0, 1 +/* 0AC5D8 800AB9D8 01506821 */ addu $t5, $t2, $s0 +/* 0AC5DC 800AB9DC A5A00004 */ sh $zero, 4($t5) +/* 0AC5E0 800AB9E0 8C6F0000 */ lw $t7, ($v1) +/* 0AC5E4 800AB9E4 26310002 */ addiu $s1, $s1, 2 +/* 0AC5E8 800AB9E8 01F06021 */ addu $t4, $t7, $s0 +/* 0AC5EC 800AB9EC A5930006 */ sh $s3, 6($t4) +/* 0AC5F0 800AB9F0 8C780000 */ lw $t8, ($v1) +/* 0AC5F4 800AB9F4 00000000 */ nop +/* 0AC5F8 800AB9F8 03107021 */ addu $t6, $t8, $s0 +/* 0AC5FC 800AB9FC A1C50002 */ sb $a1, 2($t6) +/* 0AC600 800ABA00 8C690000 */ lw $t1, ($v1) +/* 0AC604 800ABA04 00000000 */ nop +/* 0AC608 800ABA08 0130C821 */ addu $t9, $t1, $s0 +/* 0AC60C 800ABA0C A7320008 */ sh $s2, 8($t9) +/* 0AC610 800ABA10 8C6B0000 */ lw $t3, ($v1) +/* 0AC614 800ABA14 00000000 */ nop +/* 0AC618 800ABA18 01705021 */ addu $t2, $t3, $s0 +/* 0AC61C 800ABA1C A540000A */ sh $zero, 0xa($t2) +/* 0AC620 800ABA20 8C6D0000 */ lw $t5, ($v1) +/* 0AC624 800ABA24 00000000 */ nop +/* 0AC628 800ABA28 01B07821 */ addu $t7, $t5, $s0 +/* 0AC62C 800ABA2C A1E40003 */ sb $a0, 3($t7) +/* 0AC630 800ABA30 8C6C0000 */ lw $t4, ($v1) +/* 0AC634 800ABA34 00000000 */ nop +/* 0AC638 800ABA38 0190C021 */ addu $t8, $t4, $s0 +/* 0AC63C 800ABA3C A700000C */ sh $zero, 0xc($t8) +/* 0AC640 800ABA40 8C6E0000 */ lw $t6, ($v1) +/* 0AC644 800ABA44 00000000 */ nop +/* 0AC648 800ABA48 01D04821 */ addu $t1, $t6, $s0 +/* 0AC64C 800ABA4C A520000E */ sh $zero, 0xe($t1) +/* 0AC650 800ABA50 8C790000 */ lw $t9, ($v1) +/* 0AC654 800ABA54 24890002 */ addiu $t1, $a0, 2 +/* 0AC658 800ABA58 03305821 */ addu $t3, $t9, $s0 +/* 0AC65C 800ABA5C A1600010 */ sb $zero, 0x10($t3) +/* 0AC660 800ABA60 8C6A0000 */ lw $t2, ($v1) +/* 0AC664 800ABA64 00000000 */ nop +/* 0AC668 800ABA68 01506821 */ addu $t5, $t2, $s0 +/* 0AC66C 800ABA6C A1A20011 */ sb $v0, 0x11($t5) +/* 0AC670 800ABA70 8C6F0000 */ lw $t7, ($v1) +/* 0AC674 800ABA74 00000000 */ nop +/* 0AC678 800ABA78 01F06021 */ addu $t4, $t7, $s0 +/* 0AC67C 800ABA7C A5800014 */ sh $zero, 0x14($t4) +/* 0AC680 800ABA80 8C780000 */ lw $t8, ($v1) +/* 0AC684 800ABA84 00000000 */ nop +/* 0AC688 800ABA88 03107021 */ addu $t6, $t8, $s0 +/* 0AC68C 800ABA8C A5D30016 */ sh $s3, 0x16($t6) +/* 0AC690 800ABA90 8C790000 */ lw $t9, ($v1) +/* 0AC694 800ABA94 00000000 */ nop +/* 0AC698 800ABA98 03305821 */ addu $t3, $t9, $s0 +/* 0AC69C 800ABA9C A1690012 */ sb $t1, 0x12($t3) +/* 0AC6A0 800ABAA0 8C6A0000 */ lw $t2, ($v1) +/* 0AC6A4 800ABAA4 00000000 */ nop +/* 0AC6A8 800ABAA8 01506821 */ addu $t5, $t2, $s0 +/* 0AC6AC 800ABAAC A5B20018 */ sh $s2, 0x18($t5) +/* 0AC6B0 800ABAB0 8C6F0000 */ lw $t7, ($v1) +/* 0AC6B4 800ABAB4 00000000 */ nop +/* 0AC6B8 800ABAB8 01F06021 */ addu $t4, $t7, $s0 +/* 0AC6BC 800ABABC A593001A */ sh $s3, 0x1a($t4) +/* 0AC6C0 800ABAC0 8C780000 */ lw $t8, ($v1) +/* 0AC6C4 800ABAC4 00000000 */ nop +/* 0AC6C8 800ABAC8 03107021 */ addu $t6, $t8, $s0 +/* 0AC6CC 800ABACC A1C50013 */ sb $a1, 0x13($t6) +/* 0AC6D0 800ABAD0 8C790000 */ lw $t9, ($v1) +/* 0AC6D4 800ABAD4 00000000 */ nop +/* 0AC6D8 800ABAD8 03304821 */ addu $t1, $t9, $s0 +/* 0AC6DC 800ABADC A532001C */ sh $s2, 0x1c($t1) +/* 0AC6E0 800ABAE0 8C6B0000 */ lw $t3, ($v1) +/* 0AC6E4 800ABAE4 00000000 */ nop +/* 0AC6E8 800ABAE8 01705021 */ addu $t2, $t3, $s0 +/* 0AC6EC 800ABAEC A540001E */ sh $zero, 0x1e($t2) +/* 0AC6F0 800ABAF0 8E8D0000 */ lw $t5, ($s4) +/* 0AC6F4 800ABAF4 26100020 */ addiu $s0, $s0, 0x20 +/* 0AC6F8 800ABAF8 022D082A */ slt $at, $s1, $t5 +/* 0AC6FC 800ABAFC 1420FFAC */ bnez $at, .L800AB9B0 +/* 0AC700 800ABB00 00000000 */ nop +.L800ABB04: +/* 0AC704 800ABB04 3C018012 */ lui $at, %hi(D_80127C08) # $at, 0x8012 +/* 0AC708 800ABB08 AC207C08 */ sw $zero, %lo(D_80127C08)($at) +/* 0AC70C 800ABB0C 8FBF0034 */ lw $ra, 0x34($sp) +.L800ABB10: +/* 0AC710 800ABB10 8FB00018 */ lw $s0, 0x18($sp) +/* 0AC714 800ABB14 8FB1001C */ lw $s1, 0x1c($sp) +/* 0AC718 800ABB18 8FB20020 */ lw $s2, 0x20($sp) +/* 0AC71C 800ABB1C 8FB30024 */ lw $s3, 0x24($sp) +/* 0AC720 800ABB20 8FB40028 */ lw $s4, 0x28($sp) +/* 0AC724 800ABB24 8FB5002C */ lw $s5, 0x2c($sp) +/* 0AC728 800ABB28 8FB60030 */ lw $s6, 0x30($sp) +/* 0AC72C 800ABB2C 03E00008 */ jr $ra +/* 0AC730 800ABB30 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800ABB34.s b/asm/non_matchings/unknown_09F8F0/func_800ABB34.s new file mode 100644 index 00000000..4f573dc0 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800ABB34.s @@ -0,0 +1,80 @@ +glabel func_800ABB34 +/* 0AC734 800ABB34 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0AC738 800ABB38 AFB40028 */ sw $s4, 0x28($sp) +/* 0AC73C 800ABB3C 3C14800E */ lui $s4, %hi(D_800E28D8) # $s4, 0x800e +/* 0AC740 800ABB40 269428D8 */ addiu $s4, %lo(D_800E28D8) # addiu $s4, $s4, 0x28d8 +/* 0AC744 800ABB44 8E820004 */ lw $v0, 4($s4) +/* 0AC748 800ABB48 3C0E0001 */ lui $t6, 1 +/* 0AC74C 800ABB4C 01C2001A */ div $zero, $t6, $v0 +/* 0AC750 800ABB50 AFB5002C */ sw $s5, 0x2c($sp) +/* 0AC754 800ABB54 AFB60030 */ sw $s6, 0x30($sp) +/* 0AC758 800ABB58 AFB20020 */ sw $s2, 0x20($sp) +/* 0AC75C 800ABB5C AFB1001C */ sw $s1, 0x1c($sp) +/* 0AC760 800ABB60 AFB00018 */ sw $s0, 0x18($sp) +/* 0AC764 800ABB64 AFBF0034 */ sw $ra, 0x34($sp) +/* 0AC768 800ABB68 AFB30024 */ sw $s3, 0x24($sp) +/* 0AC76C 800ABB6C 14400002 */ bnez $v0, .L800ABB78 +/* 0AC770 800ABB70 00000000 */ nop +/* 0AC774 800ABB74 0007000D */ break 7 +.L800ABB78: +/* 0AC778 800ABB78 2401FFFF */ li $at, -1 +/* 0AC77C 800ABB7C 14410004 */ bne $v0, $at, .L800ABB90 +/* 0AC780 800ABB80 3C018000 */ lui $at, 0x8000 +/* 0AC784 800ABB84 15C10002 */ bne $t6, $at, .L800ABB90 +/* 0AC788 800ABB88 00000000 */ nop +/* 0AC78C 800ABB8C 0006000D */ break 6 +.L800ABB90: +/* 0AC790 800ABB90 00008825 */ move $s1, $zero +/* 0AC794 800ABB94 00008025 */ move $s0, $zero +/* 0AC798 800ABB98 00009025 */ move $s2, $zero +/* 0AC79C 800ABB9C 3C16FFFC */ lui $s6, 0xfffc +/* 0AC7A0 800ABBA0 0000A812 */ mflo $s5 +/* 0AC7A4 800ABBA4 1840001C */ blez $v0, .L800ABC18 +.L800ABBA8: +/* 0AC7A8 800ABBA8 02209825 */ move $s3, $s1 +/* 0AC7AC 800ABBAC 00137C00 */ sll $t7, $s3, 0x10 +/* 0AC7B0 800ABBB0 000F9C03 */ sra $s3, $t7, 0x10 +/* 0AC7B4 800ABBB4 00132400 */ sll $a0, $s3, 0x10 +/* 0AC7B8 800ABBB8 0004CC03 */ sra $t9, $a0, 0x10 +/* 0AC7BC 800ABBBC 0C01C20B */ jal func_8007082C +/* 0AC7C0 800ABBC0 03202025 */ move $a0, $t9 +/* 0AC7C4 800ABBC4 8E890000 */ lw $t1, ($s4) +/* 0AC7C8 800ABBC8 000240C0 */ sll $t0, $v0, 3 +/* 0AC7CC 800ABBCC 01305021 */ addu $t2, $t1, $s0 +/* 0AC7D0 800ABBD0 AD480000 */ sw $t0, ($t2) +/* 0AC7D4 800ABBD4 8E8B0000 */ lw $t3, ($s4) +/* 0AC7D8 800ABBD8 00132400 */ sll $a0, $s3, 0x10 +/* 0AC7DC 800ABBDC 00046C03 */ sra $t5, $a0, 0x10 +/* 0AC7E0 800ABBE0 01706021 */ addu $t4, $t3, $s0 +/* 0AC7E4 800ABBE4 AD960004 */ sw $s6, 4($t4) +/* 0AC7E8 800ABBE8 0C01C20C */ jal func_80070830 +/* 0AC7EC 800ABBEC 01A02025 */ move $a0, $t5 +/* 0AC7F0 800ABBF0 8E8F0000 */ lw $t7, ($s4) +/* 0AC7F4 800ABBF4 00027040 */ sll $t6, $v0, 1 +/* 0AC7F8 800ABBF8 01F0C021 */ addu $t8, $t7, $s0 +/* 0AC7FC 800ABBFC AF0E0008 */ sw $t6, 8($t8) +/* 0AC800 800ABC00 8E990004 */ lw $t9, 4($s4) +/* 0AC804 800ABC04 26520001 */ addiu $s2, $s2, 1 +/* 0AC808 800ABC08 0259082A */ slt $at, $s2, $t9 +/* 0AC80C 800ABC0C 2610000C */ addiu $s0, $s0, 0xc +/* 0AC810 800ABC10 1420FFE5 */ bnez $at, .L800ABBA8 +/* 0AC814 800ABC14 02358821 */ addu $s1, $s1, $s5 +.L800ABC18: +/* 0AC818 800ABC18 3C09800E */ lui $t1, %hi(D_800E291C) # $t1, 0x800e +/* 0AC81C 800ABC1C 8D29291C */ lw $t1, %lo(D_800E291C)($t1) +/* 0AC820 800ABC20 00000000 */ nop +/* 0AC824 800ABC24 8D240000 */ lw $a0, ($t1) +/* 0AC828 800ABC28 0C01EB9D */ jal func_8007AE74 +/* 0AC82C 800ABC2C 00000000 */ nop +/* 0AC830 800ABC30 8FBF0034 */ lw $ra, 0x34($sp) +/* 0AC834 800ABC34 AE820008 */ sw $v0, 8($s4) +/* 0AC838 800ABC38 8FB40028 */ lw $s4, 0x28($sp) +/* 0AC83C 800ABC3C 8FB00018 */ lw $s0, 0x18($sp) +/* 0AC840 800ABC40 8FB1001C */ lw $s1, 0x1c($sp) +/* 0AC844 800ABC44 8FB20020 */ lw $s2, 0x20($sp) +/* 0AC848 800ABC48 8FB30024 */ lw $s3, 0x24($sp) +/* 0AC84C 800ABC4C 8FB5002C */ lw $s5, 0x2c($sp) +/* 0AC850 800ABC50 8FB60030 */ lw $s6, 0x30($sp) +/* 0AC854 800ABC54 03E00008 */ jr $ra +/* 0AC858 800ABC58 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800ABC5C.s b/asm/non_matchings/unknown_09F8F0/func_800ABC5C.s new file mode 100644 index 00000000..470a4252 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800ABC5C.s @@ -0,0 +1,147 @@ +glabel func_800ABC5C +/* 0AC85C 800ABC5C 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0AC860 800ABC60 AFB00018 */ sw $s0, 0x18($sp) +/* 0AC864 800ABC64 8FB00034 */ lw $s0, 0x34($sp) +/* 0AC868 800ABC68 AFBF001C */ sw $ra, 0x1c($sp) +/* 0AC86C 800ABC6C 1A00007A */ blez $s0, .L800ABE58 +/* 0AC870 800ABC70 3C028012 */ lui $v0, %hi(D_80127BB8) # $v0, 0x8012 +/* 0AC874 800ABC74 24427BB8 */ addiu $v0, %lo(D_80127BB8) # addiu $v0, $v0, 0x7bb8 +/* 0AC878 800ABC78 8C4E0014 */ lw $t6, 0x14($v0) +/* 0AC87C 800ABC7C 00000000 */ nop +/* 0AC880 800ABC80 148E0011 */ bne $a0, $t6, .L800ABCC8 +/* 0AC884 800ABC84 00000000 */ nop +/* 0AC888 800ABC88 8C4F0020 */ lw $t7, 0x20($v0) +/* 0AC88C 800ABC8C 00000000 */ nop +/* 0AC890 800ABC90 14AF000D */ bne $a1, $t7, .L800ABCC8 +/* 0AC894 800ABC94 00000000 */ nop +/* 0AC898 800ABC98 8C58002C */ lw $t8, 0x2c($v0) +/* 0AC89C 800ABC9C 00000000 */ nop +/* 0AC8A0 800ABCA0 14D80009 */ bne $a2, $t8, .L800ABCC8 +/* 0AC8A4 800ABCA4 00000000 */ nop +/* 0AC8A8 800ABCA8 8C590000 */ lw $t9, ($v0) +/* 0AC8AC 800ABCAC 8FA30030 */ lw $v1, 0x30($sp) +/* 0AC8B0 800ABCB0 14F90005 */ bne $a3, $t9, .L800ABCC8 +/* 0AC8B4 800ABCB4 00000000 */ nop +/* 0AC8B8 800ABCB8 8C480030 */ lw $t0, 0x30($v0) +/* 0AC8BC 800ABCBC 00000000 */ nop +/* 0AC8C0 800ABCC0 10680065 */ beq $v1, $t0, .L800ABE58 +/* 0AC8C4 800ABCC4 00000000 */ nop +.L800ABCC8: +/* 0AC8C8 800ABCC8 8C49000C */ lw $t1, 0xc($v0) +/* 0AC8CC 800ABCCC 8C4C0018 */ lw $t4, 0x18($v0) +/* 0AC8D0 800ABCD0 00895023 */ subu $t2, $a0, $t1 +/* 0AC8D4 800ABCD4 0150001A */ div $zero, $t2, $s0 +/* 0AC8D8 800ABCD8 00AC6823 */ subu $t5, $a1, $t4 +/* 0AC8DC 800ABCDC 8C4F0024 */ lw $t7, 0x24($v0) +/* 0AC8E0 800ABCE0 AC440014 */ sw $a0, 0x14($v0) +/* 0AC8E4 800ABCE4 00CFC023 */ subu $t8, $a2, $t7 +/* 0AC8E8 800ABCE8 AC450020 */ sw $a1, 0x20($v0) +/* 0AC8EC 800ABCEC AC46002C */ sw $a2, 0x2c($v0) +/* 0AC8F0 800ABCF0 3C08800E */ lui $t0, %hi(D_800E2C5C) # $t0, 0x800e +/* 0AC8F4 800ABCF4 8FA30030 */ lw $v1, 0x30($sp) +/* 0AC8F8 800ABCF8 16000002 */ bnez $s0, .L800ABD04 +/* 0AC8FC 800ABCFC 00000000 */ nop +/* 0AC900 800ABD00 0007000D */ break 7 +.L800ABD04: +/* 0AC904 800ABD04 2401FFFF */ li $at, -1 +/* 0AC908 800ABD08 16010004 */ bne $s0, $at, .L800ABD1C +/* 0AC90C 800ABD0C 3C018000 */ lui $at, 0x8000 +/* 0AC910 800ABD10 15410002 */ bne $t2, $at, .L800ABD1C +/* 0AC914 800ABD14 00000000 */ nop +/* 0AC918 800ABD18 0006000D */ break 6 +.L800ABD1C: +/* 0AC91C 800ABD1C 00005812 */ mflo $t3 +/* 0AC920 800ABD20 AC4B0010 */ sw $t3, 0x10($v0) +/* 0AC924 800ABD24 00000000 */ nop +/* 0AC928 800ABD28 01B0001A */ div $zero, $t5, $s0 +/* 0AC92C 800ABD2C 16000002 */ bnez $s0, .L800ABD38 +/* 0AC930 800ABD30 00000000 */ nop +/* 0AC934 800ABD34 0007000D */ break 7 +.L800ABD38: +/* 0AC938 800ABD38 2401FFFF */ li $at, -1 +/* 0AC93C 800ABD3C 16010004 */ bne $s0, $at, .L800ABD50 +/* 0AC940 800ABD40 3C018000 */ lui $at, 0x8000 +/* 0AC944 800ABD44 15A10002 */ bne $t5, $at, .L800ABD50 +/* 0AC948 800ABD48 00000000 */ nop +/* 0AC94C 800ABD4C 0006000D */ break 6 +.L800ABD50: +/* 0AC950 800ABD50 00007012 */ mflo $t6 +/* 0AC954 800ABD54 AC4E001C */ sw $t6, 0x1c($v0) +/* 0AC958 800ABD58 00000000 */ nop +/* 0AC95C 800ABD5C 0310001A */ div $zero, $t8, $s0 +/* 0AC960 800ABD60 16000002 */ bnez $s0, .L800ABD6C +/* 0AC964 800ABD64 00000000 */ nop +/* 0AC968 800ABD68 0007000D */ break 7 +.L800ABD6C: +/* 0AC96C 800ABD6C 2401FFFF */ li $at, -1 +/* 0AC970 800ABD70 16010004 */ bne $s0, $at, .L800ABD84 +/* 0AC974 800ABD74 3C018000 */ lui $at, 0x8000 +/* 0AC978 800ABD78 17010002 */ bne $t8, $at, .L800ABD84 +/* 0AC97C 800ABD7C 00000000 */ nop +/* 0AC980 800ABD80 0006000D */ break 6 +.L800ABD84: +/* 0AC984 800ABD84 0000C812 */ mflo $t9 +/* 0AC988 800ABD88 AC590028 */ sw $t9, 0x28($v0) +/* 0AC98C 800ABD8C 8D082C5C */ lw $t0, %lo(D_800E2C5C)($t0) +/* 0AC990 800ABD90 00000000 */ nop +/* 0AC994 800ABD94 15000023 */ bnez $t0, .L800ABE24 +/* 0AC998 800ABD98 00000000 */ nop +/* 0AC99C 800ABD9C 8C490000 */ lw $t1, ($v0) +/* 0AC9A0 800ABDA0 8C4C0030 */ lw $t4, 0x30($v0) +/* 0AC9A4 800ABDA4 00E95023 */ subu $t2, $a3, $t1 +/* 0AC9A8 800ABDA8 0150001A */ div $zero, $t2, $s0 +/* 0AC9AC 800ABDAC 006C6823 */ subu $t5, $v1, $t4 +/* 0AC9B0 800ABDB0 16000002 */ bnez $s0, .L800ABDBC +/* 0AC9B4 800ABDB4 00000000 */ nop +/* 0AC9B8 800ABDB8 0007000D */ break 7 +.L800ABDBC: +/* 0AC9BC 800ABDBC 2401FFFF */ li $at, -1 +/* 0AC9C0 800ABDC0 16010004 */ bne $s0, $at, .L800ABDD4 +/* 0AC9C4 800ABDC4 3C018000 */ lui $at, 0x8000 +/* 0AC9C8 800ABDC8 15410002 */ bne $t2, $at, .L800ABDD4 +/* 0AC9CC 800ABDCC 00000000 */ nop +/* 0AC9D0 800ABDD0 0006000D */ break 6 +.L800ABDD4: +/* 0AC9D4 800ABDD4 AC470008 */ sw $a3, 8($v0) +/* 0AC9D8 800ABDD8 AC430038 */ sw $v1, 0x38($v0) +/* 0AC9DC 800ABDDC AC50003C */ sw $s0, 0x3c($v0) +/* 0AC9E0 800ABDE0 00005812 */ mflo $t3 +/* 0AC9E4 800ABDE4 AC4B0004 */ sw $t3, 4($v0) +/* 0AC9E8 800ABDE8 00000000 */ nop +/* 0AC9EC 800ABDEC 01B0001A */ div $zero, $t5, $s0 +/* 0AC9F0 800ABDF0 16000002 */ bnez $s0, .L800ABDFC +/* 0AC9F4 800ABDF4 00000000 */ nop +/* 0AC9F8 800ABDF8 0007000D */ break 7 +.L800ABDFC: +/* 0AC9FC 800ABDFC 2401FFFF */ li $at, -1 +/* 0ACA00 800ABE00 16010004 */ bne $s0, $at, .L800ABE14 +/* 0ACA04 800ABE04 3C018000 */ lui $at, 0x8000 +/* 0ACA08 800ABE08 15A10002 */ bne $t5, $at, .L800ABE14 +/* 0ACA0C 800ABE0C 00000000 */ nop +/* 0ACA10 800ABE10 0006000D */ break 6 +.L800ABE14: +/* 0ACA14 800ABE14 00007012 */ mflo $t6 +/* 0ACA18 800ABE18 AC4E0034 */ sw $t6, 0x34($v0) +/* 0ACA1C 800ABE1C 1000000F */ b .L800ABE5C +/* 0ACA20 800ABE20 8FBF001C */ lw $ra, 0x1c($sp) +.L800ABE24: +/* 0ACA24 800ABE24 44902000 */ mtc1 $s0, $f4 +/* 0ACA28 800ABE28 3C014270 */ li $at, 0x42700000 # 60.000000 +/* 0ACA2C 800ABE2C 468021A0 */ cvt.s.w $f6, $f4 +/* 0ACA30 800ABE30 44814000 */ mtc1 $at, $f8 +/* 0ACA34 800ABE34 AC470000 */ sw $a3, ($v0) +/* 0ACA38 800ABE38 46083283 */ div.s $f10, $f6, $f8 +/* 0ACA3C 800ABE3C AC430030 */ sw $v1, 0x30($v0) +/* 0ACA40 800ABE40 AC40003C */ sw $zero, 0x3c($v0) +/* 0ACA44 800ABE44 24E40001 */ addiu $a0, $a3, 1 +/* 0ACA48 800ABE48 24650001 */ addiu $a1, $v1, 1 +/* 0ACA4C 800ABE4C 44065000 */ mfc1 $a2, $f10 +/* 0ACA50 800ABE50 0C02B4B1 */ jal func_800AD2C4 +/* 0ACA54 800ABE54 00000000 */ nop +.L800ABE58: +/* 0ACA58 800ABE58 8FBF001C */ lw $ra, 0x1c($sp) +.L800ABE5C: +/* 0ACA5C 800ABE5C 8FB00018 */ lw $s0, 0x18($sp) +/* 0ACA60 800ABE60 03E00008 */ jr $ra +/* 0ACA64 800ABE64 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800ABE68.s b/asm/non_matchings/unknown_09F8F0/func_800ABE68.s new file mode 100644 index 00000000..77b30067 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800ABE68.s @@ -0,0 +1,158 @@ +glabel func_800ABE68 +/* 0ACA68 800ABE68 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0ACA6C 800ABE6C AFBF0014 */ sw $ra, 0x14($sp) +/* 0ACA70 800ABE70 AFA40018 */ sw $a0, 0x18($sp) +/* 0ACA74 800ABE74 AFA5001C */ sw $a1, 0x1c($sp) +/* 0ACA78 800ABE78 AFA60020 */ sw $a2, 0x20($sp) +/* 0ACA7C 800ABE7C AFA70024 */ sw $a3, 0x24($sp) +/* 0ACA80 800ABE80 8C8F0000 */ lw $t7, ($a0) +/* 0ACA84 800ABE84 3C018012 */ lui $at, %hi(D_80127C0C) # $at, 0x8012 +/* 0ACA88 800ABE88 AC2F7C0C */ sw $t7, %lo(D_80127C0C)($at) +/* 0ACA8C 800ABE8C 8CB90000 */ lw $t9, ($a1) +/* 0ACA90 800ABE90 3C018012 */ lui $at, %hi(D_80127C10) # $at, 0x8012 +/* 0ACA94 800ABE94 AC397C10 */ sw $t9, %lo(D_80127C10)($at) +/* 0ACA98 800ABE98 8CC90000 */ lw $t1, ($a2) +/* 0ACA9C 800ABE9C 3C018012 */ lui $at, %hi(D_80127C14) # $at, 0x8012 +/* 0ACAA0 800ABEA0 AC297C14 */ sw $t1, %lo(D_80127C14)($at) +/* 0ACAA4 800ABEA4 8CEB0000 */ lw $t3, ($a3) +/* 0ACAA8 800ABEA8 3C018012 */ lui $at, %hi(D_80127C18) # $at, 0x8012 +/* 0ACAAC 800ABEAC 0C01A748 */ jal func_80069D20 +/* 0ACAB0 800ABEB0 AC2B7C18 */ sw $t3, %lo(D_80127C18)($at) +/* 0ACAB4 800ABEB4 3C018012 */ lui $at, %hi(D_80127C1C) # $at, 0x8012 +/* 0ACAB8 800ABEB8 0C01A76F */ jal func_80069DBC +/* 0ACABC 800ABEBC AC227C1C */ sw $v0, %lo(D_80127C1C)($at) +/* 0ACAC0 800ABEC0 3C0C800E */ lui $t4, %hi(D_800E2C5C) # $t4, 0x800e +/* 0ACAC4 800ABEC4 8D8C2C5C */ lw $t4, %lo(D_800E2C5C)($t4) +/* 0ACAC8 800ABEC8 3C018012 */ lui $at, %hi(D_80127C20) # $at, 0x8012 +/* 0ACACC 800ABECC 11800006 */ beqz $t4, .L800ABEE8 +/* 0ACAD0 800ABED0 AC227C20 */ sw $v0, %lo(D_80127C20)($at) +/* 0ACAD4 800ABED4 8FA40028 */ lw $a0, 0x28($sp) +/* 0ACAD8 800ABED8 0C02B52E */ jal func_800AD4B8 +/* 0ACADC 800ABEDC 00000000 */ nop +/* 0ACAE0 800ABEE0 10000064 */ b .L800AC074 +/* 0ACAE4 800ABEE4 00000000 */ nop +.L800ABEE8: +/* 0ACAE8 800ABEE8 3C028012 */ lui $v0, %hi(D_80127BB8) # $v0, 0x8012 +/* 0ACAEC 800ABEEC 24427BB8 */ addiu $v0, %lo(D_80127BB8) # addiu $v0, $v0, 0x7bb8 +/* 0ACAF0 800ABEF0 8C43003C */ lw $v1, 0x3c($v0) +/* 0ACAF4 800ABEF4 8FA40028 */ lw $a0, 0x28($sp) +/* 0ACAF8 800ABEF8 1860002F */ blez $v1, .L800ABFB8 +/* 0ACAFC 800ABEFC 0083082A */ slt $at, $a0, $v1 +/* 0ACB00 800ABF00 10200022 */ beqz $at, .L800ABF8C +/* 0ACB04 800ABF04 00000000 */ nop +/* 0ACB08 800ABF08 8C4E0004 */ lw $t6, 4($v0) +/* 0ACB0C 800ABF0C 8C480010 */ lw $t0, 0x10($v0) +/* 0ACB10 800ABF10 01C40019 */ multu $t6, $a0 +/* 0ACB14 800ABF14 8C4C001C */ lw $t4, 0x1c($v0) +/* 0ACB18 800ABF18 8C4D0000 */ lw $t5, ($v0) +/* 0ACB1C 800ABF1C 8C59000C */ lw $t9, 0xc($v0) +/* 0ACB20 800ABF20 8C4B0018 */ lw $t3, 0x18($v0) +/* 0ACB24 800ABF24 00007812 */ mflo $t7 +/* 0ACB28 800ABF28 01AFC021 */ addu $t8, $t5, $t7 +/* 0ACB2C 800ABF2C AC580000 */ sw $t8, ($v0) +/* 0ACB30 800ABF30 01040019 */ multu $t0, $a0 +/* 0ACB34 800ABF34 8C580028 */ lw $t8, 0x28($v0) +/* 0ACB38 800ABF38 8C4F0024 */ lw $t7, 0x24($v0) +/* 0ACB3C 800ABF3C 00004812 */ mflo $t1 +/* 0ACB40 800ABF40 03295021 */ addu $t2, $t9, $t1 +/* 0ACB44 800ABF44 AC4A000C */ sw $t2, 0xc($v0) +/* 0ACB48 800ABF48 01840019 */ multu $t4, $a0 +/* 0ACB4C 800ABF4C 8C4A0034 */ lw $t2, 0x34($v0) +/* 0ACB50 800ABF50 8C490030 */ lw $t1, 0x30($v0) +/* 0ACB54 800ABF54 00007012 */ mflo $t6 +/* 0ACB58 800ABF58 016E6821 */ addu $t5, $t3, $t6 +/* 0ACB5C 800ABF5C 00647023 */ subu $t6, $v1, $a0 +/* 0ACB60 800ABF60 03040019 */ multu $t8, $a0 +/* 0ACB64 800ABF64 AC4D0018 */ sw $t5, 0x18($v0) +/* 0ACB68 800ABF68 AC4E003C */ sw $t6, 0x3c($v0) +/* 0ACB6C 800ABF6C 00004012 */ mflo $t0 +/* 0ACB70 800ABF70 01E8C821 */ addu $t9, $t7, $t0 +/* 0ACB74 800ABF74 AC590024 */ sw $t9, 0x24($v0) +/* 0ACB78 800ABF78 01440019 */ multu $t2, $a0 +/* 0ACB7C 800ABF7C 00006012 */ mflo $t4 +/* 0ACB80 800ABF80 012C5821 */ addu $t3, $t1, $t4 +/* 0ACB84 800ABF84 1000000C */ b .L800ABFB8 +/* 0ACB88 800ABF88 AC4B0030 */ sw $t3, 0x30($v0) +.L800ABF8C: +/* 0ACB8C 800ABF8C 8C4D0008 */ lw $t5, 8($v0) +/* 0ACB90 800ABF90 8C580014 */ lw $t8, 0x14($v0) +/* 0ACB94 800ABF94 8C4F0020 */ lw $t7, 0x20($v0) +/* 0ACB98 800ABF98 8C48002C */ lw $t0, 0x2c($v0) +/* 0ACB9C 800ABF9C 8C590038 */ lw $t9, 0x38($v0) +/* 0ACBA0 800ABFA0 AC40003C */ sw $zero, 0x3c($v0) +/* 0ACBA4 800ABFA4 AC4D0000 */ sw $t5, ($v0) +/* 0ACBA8 800ABFA8 AC58000C */ sw $t8, 0xc($v0) +/* 0ACBAC 800ABFAC AC4F0018 */ sw $t7, 0x18($v0) +/* 0ACBB0 800ABFB0 AC480024 */ sw $t0, 0x24($v0) +/* 0ACBB4 800ABFB4 AC590030 */ sw $t9, 0x30($v0) +.L800ABFB8: +/* 0ACBB8 800ABFB8 3C0A8012 */ lui $t2, %hi(D_80127BB0) # $t2, 0x8012 +/* 0ACBBC 800ABFBC 8D4A7BB0 */ lw $t2, %lo(D_80127BB0)($t2) +/* 0ACBC0 800ABFC0 8C490000 */ lw $t1, ($v0) +/* 0ACBC4 800ABFC4 3C058012 */ lui $a1, %hi(D_80127BF8) # $a1, 0x8012 +/* 0ACBC8 800ABFC8 01490019 */ multu $t2, $t1 +/* 0ACBCC 800ABFCC 3C018012 */ lui $at, %hi(D_80127BB4) # $at, 0x8012 +/* 0ACBD0 800ABFD0 24A57BF8 */ addiu $a1, %lo(D_80127BF8) # addiu $a1, $a1, 0x7bf8 +/* 0ACBD4 800ABFD4 8FA40028 */ lw $a0, 0x28($sp) +/* 0ACBD8 800ABFD8 00006012 */ mflo $t4 +/* 0ACBDC 800ABFDC 000C5C03 */ sra $t3, $t4, 0x10 +/* 0ACBE0 800ABFE0 AC2B7BB4 */ sw $t3, %lo(D_80127BB4)($at) +/* 0ACBE4 800ABFE4 84AE0002 */ lh $t6, 2($a1) +/* 0ACBE8 800ABFE8 84A30000 */ lh $v1, ($a1) +/* 0ACBEC 800ABFEC 8C580030 */ lw $t8, 0x30($v0) +/* 0ACBF0 800ABFF0 01C36823 */ subu $t5, $t6, $v1 +/* 0ACBF4 800ABFF4 01B80019 */ multu $t5, $t8 +/* 0ACBF8 800ABFF8 00007812 */ mflo $t7 +/* 0ACBFC 800ABFFC 006F4021 */ addu $t0, $v1, $t7 +/* 0ACC00 800AC000 0008CC03 */ sra $t9, $t0, 0x10 +/* 0ACC04 800AC004 0C02B032 */ jal func_800AC0C8 +/* 0ACC08 800AC008 ACB90004 */ sw $t9, 4($a1) +/* 0ACC0C 800AC00C 3C0A8012 */ lui $t2, %hi(D_80127BB4) # $t2, 0x8012 +/* 0ACC10 800AC010 8D4A7BB4 */ lw $t2, %lo(D_80127BB4)($t2) +/* 0ACC14 800AC014 3C058012 */ lui $a1, %hi(D_80127BF8) # $a1, 0x8012 +/* 0ACC18 800AC018 19400016 */ blez $t2, .L800AC074 +/* 0ACC1C 800AC01C 24A57BF8 */ addiu $a1, %lo(D_80127BF8) # addiu $a1, $a1, 0x7bf8 +/* 0ACC20 800AC020 8CA90004 */ lw $t1, 4($a1) +/* 0ACC24 800AC024 84AC0000 */ lh $t4, ($a1) +/* 0ACC28 800AC028 3C0B8012 */ lui $t3, %hi(D_80127C08) # $t3, 0x8012 +/* 0ACC2C 800AC02C 012C082A */ slt $at, $t1, $t4 +/* 0ACC30 800AC030 10200010 */ beqz $at, .L800AC074 +/* 0ACC34 800AC034 3C0D800E */ lui $t5, 0x800e +/* 0ACC38 800AC038 8D6B7C08 */ lw $t3, %lo(D_80127C08)($t3) +/* 0ACC3C 800AC03C 3C01800E */ lui $at, %hi(D_800E2904) # $at, 0x800e +/* 0ACC40 800AC040 000B7080 */ sll $t6, $t3, 2 +/* 0ACC44 800AC044 01AE6821 */ addu $t5, $t5, $t6 +/* 0ACC48 800AC048 8DAD2914 */ lw $t5, 0x2914($t5) +/* 0ACC4C 800AC04C 0C02B087 */ jal func_800AC21C +/* 0ACC50 800AC050 AC2D2904 */ sw $t5, %lo(D_800E2904)($at) +/* 0ACC54 800AC054 0C02B169 */ jal func_800AC5A4 +/* 0ACC58 800AC058 00000000 */ nop +/* 0ACC5C 800AC05C 3C028012 */ lui $v0, %hi(D_80127C08) # $v0, 0x8012 +/* 0ACC60 800AC060 24427C08 */ addiu $v0, %lo(D_80127C08) # addiu $v0, $v0, 0x7c08 +/* 0ACC64 800AC064 8C580000 */ lw $t8, ($v0) +/* 0ACC68 800AC068 240F0001 */ li $t7, 1 +/* 0ACC6C 800AC06C 01F84023 */ subu $t0, $t7, $t8 +/* 0ACC70 800AC070 AC480000 */ sw $t0, ($v0) +.L800AC074: +/* 0ACC74 800AC074 3C198012 */ lui $t9, %hi(D_80127C0C) # $t9, 0x8012 +/* 0ACC78 800AC078 8F397C0C */ lw $t9, %lo(D_80127C0C)($t9) +/* 0ACC7C 800AC07C 8FAA0018 */ lw $t2, 0x18($sp) +/* 0ACC80 800AC080 3C098012 */ lui $t1, %hi(D_80127C10) # $t1, 0x8012 +/* 0ACC84 800AC084 AD590000 */ sw $t9, ($t2) +/* 0ACC88 800AC088 8FAC001C */ lw $t4, 0x1c($sp) +/* 0ACC8C 800AC08C 8D297C10 */ lw $t1, %lo(D_80127C10)($t1) +/* 0ACC90 800AC090 3C0B8012 */ lui $t3, %hi(D_80127C14) # $t3, 0x8012 +/* 0ACC94 800AC094 AD890000 */ sw $t1, ($t4) +/* 0ACC98 800AC098 8FAE0020 */ lw $t6, 0x20($sp) +/* 0ACC9C 800AC09C 8D6B7C14 */ lw $t3, %lo(D_80127C14)($t3) +/* 0ACCA0 800AC0A0 3C0D8012 */ lui $t5, %hi(D_80127C18) # $t5, 0x8012 +/* 0ACCA4 800AC0A4 ADCB0000 */ sw $t3, ($t6) +/* 0ACCA8 800AC0A8 8FAF0024 */ lw $t7, 0x24($sp) +/* 0ACCAC 800AC0AC 8DAD7C18 */ lw $t5, %lo(D_80127C18)($t5) +/* 0ACCB0 800AC0B0 00000000 */ nop +/* 0ACCB4 800AC0B4 ADED0000 */ sw $t5, ($t7) +/* 0ACCB8 800AC0B8 8FBF0014 */ lw $ra, 0x14($sp) +/* 0ACCBC 800AC0BC 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0ACCC0 800AC0C0 03E00008 */ jr $ra +/* 0ACCC4 800AC0C4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AC0C8.s b/asm/non_matchings/unknown_09F8F0/func_800AC0C8.s new file mode 100644 index 00000000..c52ab35c --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AC0C8.s @@ -0,0 +1,90 @@ +glabel func_800AC0C8 +/* 0ACCC8 800AC0C8 3C098012 */ lui $t1, %hi(D_80127BB0) # $t1, 0x8012 +/* 0ACCCC 800AC0CC 25297BB0 */ addiu $t1, %lo(D_80127BB0) # addiu $t1, $t1, 0x7bb0 +/* 0ACCD0 800AC0D0 8D2E0000 */ lw $t6, ($t1) +/* 0ACCD4 800AC0D4 00803025 */ move $a2, $a0 +/* 0ACCD8 800AC0D8 19C0004E */ blez $t6, .L800AC214 +/* 0ACCDC 800AC0DC 00001025 */ move $v0, $zero +/* 0ACCE0 800AC0E0 3C0D8012 */ lui $t5, %hi(D_80127BB8) # $t5, 0x8012 +/* 0ACCE4 800AC0E4 3C0C800E */ lui $t4, %hi(D_800E28D8) # $t4, 0x800e +/* 0ACCE8 800AC0E8 3C0A800E */ lui $t2, %hi(D_800E28D4) # $t2, 0x800e +/* 0ACCEC 800AC0EC 254A28D4 */ addiu $t2, %lo(D_800E28D4) # addiu $t2, $t2, 0x28d4 +/* 0ACCF0 800AC0F0 258C28D8 */ addiu $t4, %lo(D_800E28D8) # addiu $t4, $t4, 0x28d8 +/* 0ACCF4 800AC0F4 25AD7BB8 */ addiu $t5, %lo(D_80127BB8) # addiu $t5, $t5, 0x7bb8 +/* 0ACCF8 800AC0F8 00002025 */ move $a0, $zero +/* 0ACCFC 800AC0FC 240B000C */ li $t3, 12 +.L800AC100: +/* 0ACD00 800AC100 8D4F0000 */ lw $t7, ($t2) +/* 0ACD04 800AC104 8D8E0000 */ lw $t6, ($t4) +/* 0ACD08 800AC108 01E42821 */ addu $a1, $t7, $a0 +/* 0ACD0C 800AC10C 90B8000F */ lbu $t8, 0xf($a1) +/* 0ACD10 800AC110 00000000 */ nop +/* 0ACD14 800AC114 030B0019 */ multu $t8, $t3 +/* 0ACD18 800AC118 8DB8000C */ lw $t8, 0xc($t5) +/* 0ACD1C 800AC11C 0000C812 */ mflo $t9 +/* 0ACD20 800AC120 032E1821 */ addu $v1, $t9, $t6 +/* 0ACD24 800AC124 8C6F0000 */ lw $t7, ($v1) +/* 0ACD28 800AC128 0018C840 */ sll $t9, $t8, 1 +/* 0ACD2C 800AC12C 01F97021 */ addu $t6, $t7, $t9 +/* 0ACD30 800AC130 01C60019 */ multu $t6, $a2 +/* 0ACD34 800AC134 8CB90000 */ lw $t9, ($a1) +/* 0ACD38 800AC138 0000C012 */ mflo $t8 +/* 0ACD3C 800AC13C 00187843 */ sra $t7, $t8, 1 +/* 0ACD40 800AC140 8D980018 */ lw $t8, 0x18($t4) +/* 0ACD44 800AC144 032F7021 */ addu $t6, $t9, $t7 +/* 0ACD48 800AC148 01D8C824 */ and $t9, $t6, $t8 +/* 0ACD4C 800AC14C ACB90000 */ sw $t9, ($a1) +/* 0ACD50 800AC150 8D4F0000 */ lw $t7, ($t2) +/* 0ACD54 800AC154 8DB80018 */ lw $t8, 0x18($t5) +/* 0ACD58 800AC158 8C6E0004 */ lw $t6, 4($v1) +/* 0ACD5C 800AC15C 01E42821 */ addu $a1, $t7, $a0 +/* 0ACD60 800AC160 0018C840 */ sll $t9, $t8, 1 +/* 0ACD64 800AC164 01D97821 */ addu $t7, $t6, $t9 +/* 0ACD68 800AC168 01E60019 */ multu $t7, $a2 +/* 0ACD6C 800AC16C 8CB90004 */ lw $t9, 4($a1) +/* 0ACD70 800AC170 0000C012 */ mflo $t8 +/* 0ACD74 800AC174 00187043 */ sra $t6, $t8, 1 +/* 0ACD78 800AC178 8D98001C */ lw $t8, 0x1c($t4) +/* 0ACD7C 800AC17C 032E7821 */ addu $t7, $t9, $t6 +/* 0ACD80 800AC180 01F8C824 */ and $t9, $t7, $t8 +/* 0ACD84 800AC184 ACB90004 */ sw $t9, 4($a1) +/* 0ACD88 800AC188 8D4E0000 */ lw $t6, ($t2) +/* 0ACD8C 800AC18C 8DB80024 */ lw $t8, 0x24($t5) +/* 0ACD90 800AC190 8C6F0008 */ lw $t7, 8($v1) +/* 0ACD94 800AC194 01C42821 */ addu $a1, $t6, $a0 +/* 0ACD98 800AC198 0018C840 */ sll $t9, $t8, 1 +/* 0ACD9C 800AC19C 01F97021 */ addu $t6, $t7, $t9 +/* 0ACDA0 800AC1A0 01C60019 */ multu $t6, $a2 +/* 0ACDA4 800AC1A4 8CB90008 */ lw $t9, 8($a1) +/* 0ACDA8 800AC1A8 0000C012 */ mflo $t8 +/* 0ACDAC 800AC1AC 00187843 */ sra $t7, $t8, 1 +/* 0ACDB0 800AC1B0 8D980020 */ lw $t8, 0x20($t4) +/* 0ACDB4 800AC1B4 032F7021 */ addu $t6, $t9, $t7 +/* 0ACDB8 800AC1B8 01D8C824 */ and $t9, $t6, $t8 +/* 0ACDBC 800AC1BC ACB90008 */ sw $t9, 8($a1) +/* 0ACDC0 800AC1C0 8D4F0000 */ lw $t7, ($t2) +/* 0ACDC4 800AC1C4 00000000 */ nop +/* 0ACDC8 800AC1C8 01E42821 */ addu $a1, $t7, $a0 +/* 0ACDCC 800AC1CC 90AE000F */ lbu $t6, 0xf($a1) +/* 0ACDD0 800AC1D0 00000000 */ nop +/* 0ACDD4 800AC1D4 25D80001 */ addiu $t8, $t6, 1 +/* 0ACDD8 800AC1D8 A0B8000F */ sb $t8, 0xf($a1) +/* 0ACDDC 800AC1DC 8D590000 */ lw $t9, ($t2) +/* 0ACDE0 800AC1E0 8D880004 */ lw $t0, 4($t4) +/* 0ACDE4 800AC1E4 03242821 */ addu $a1, $t9, $a0 +/* 0ACDE8 800AC1E8 90A7000F */ lbu $a3, 0xf($a1) +/* 0ACDEC 800AC1EC 00000000 */ nop +/* 0ACDF0 800AC1F0 00E8082A */ slt $at, $a3, $t0 +/* 0ACDF4 800AC1F4 14200002 */ bnez $at, .L800AC200 +/* 0ACDF8 800AC1F8 00E87823 */ subu $t7, $a3, $t0 +/* 0ACDFC 800AC1FC A0AF000F */ sb $t7, 0xf($a1) +.L800AC200: +/* 0ACE00 800AC200 8D2E0000 */ lw $t6, ($t1) +/* 0ACE04 800AC204 24420001 */ addiu $v0, $v0, 1 +/* 0ACE08 800AC208 004E082A */ slt $at, $v0, $t6 +/* 0ACE0C 800AC20C 1420FFBC */ bnez $at, .L800AC100 +/* 0ACE10 800AC210 24840010 */ addiu $a0, $a0, 0x10 +.L800AC214: +/* 0ACE14 800AC214 03E00008 */ jr $ra +/* 0ACE18 800AC218 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AC21C.s b/asm/non_matchings/unknown_09F8F0/func_800AC21C.s new file mode 100644 index 00000000..9e74e313 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AC21C.s @@ -0,0 +1,231 @@ +glabel func_800AC21C +/* 0ACE1C 800AC21C 27BDFF88 */ addiu $sp, $sp, -0x78 +/* 0ACE20 800AC220 3C028012 */ lui $v0, %hi(D_80127C1C) # $v0, 0x8012 +/* 0ACE24 800AC224 8C427C1C */ lw $v0, %lo(D_80127C1C)($v0) +/* 0ACE28 800AC228 AFBF0044 */ sw $ra, 0x44($sp) +/* 0ACE2C 800AC22C AFBE0040 */ sw $fp, 0x40($sp) +/* 0ACE30 800AC230 AFB7003C */ sw $s7, 0x3c($sp) +/* 0ACE34 800AC234 AFB60038 */ sw $s6, 0x38($sp) +/* 0ACE38 800AC238 AFB50034 */ sw $s5, 0x34($sp) +/* 0ACE3C 800AC23C AFB40030 */ sw $s4, 0x30($sp) +/* 0ACE40 800AC240 AFB3002C */ sw $s3, 0x2c($sp) +/* 0ACE44 800AC244 AFB20028 */ sw $s2, 0x28($sp) +/* 0ACE48 800AC248 AFB10024 */ sw $s1, 0x24($sp) +/* 0ACE4C 800AC24C AFB00020 */ sw $s0, 0x20($sp) +/* 0ACE50 800AC250 E7B50018 */ swc1 $f21, 0x18($sp) +/* 0ACE54 800AC254 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 0ACE58 800AC258 3C014780 */ li $at, 0x47800000 # 65536.000000 +/* 0ACE5C 800AC25C 44810000 */ mtc1 $at, $f0 +/* 0ACE60 800AC260 C444000C */ lwc1 $f4, 0xc($v0) +/* 0ACE64 800AC264 C44A0010 */ lwc1 $f10, 0x10($v0) +/* 0ACE68 800AC268 46002182 */ mul.s $f6, $f4, $f0 +/* 0ACE6C 800AC26C C4440014 */ lwc1 $f4, 0x14($v0) +/* 0ACE70 800AC270 3C14800E */ lui $s4, %hi(D_800E2908) # $s4, 0x800e +/* 0ACE74 800AC274 26942908 */ addiu $s4, %lo(D_800E2908) # addiu $s4, $s4, 0x2908 +/* 0ACE78 800AC278 444EF800 */ cfc1 $t6, $31 +/* 0ACE7C 800AC27C AE800000 */ sw $zero, ($s4) +/* 0ACE80 800AC280 35C10003 */ ori $at, $t6, 3 +/* 0ACE84 800AC284 38210002 */ xori $at, $at, 2 +/* 0ACE88 800AC288 44C1F800 */ ctc1 $at, $31 +/* 0ACE8C 800AC28C 3C198012 */ lui $t9, %hi(D_80127BB4) # $t9, 0x8012 +/* 0ACE90 800AC290 46003224 */ cvt.w.s $f8, $f6 +/* 0ACE94 800AC294 8F397BB4 */ lw $t9, %lo(D_80127BB4)($t9) +/* 0ACE98 800AC298 44CEF800 */ ctc1 $t6, $31 +/* 0ACE9C 800AC29C 44034000 */ mfc1 $v1, $f8 +/* 0ACEA0 800AC2A0 46005402 */ mul.s $f16, $f10, $f0 +/* 0ACEA4 800AC2A4 3C11800E */ lui $s1, %hi(D_800E2904) # $s1, 0x800e +/* 0ACEA8 800AC2A8 8E312904 */ lw $s1, %lo(D_800E2904)($s1) +/* 0ACEAC 800AC2AC 3C168012 */ lui $s6, %hi(D_80127BF8) # $s6, 0x8012 +/* 0ACEB0 800AC2B0 444FF800 */ cfc1 $t7, $31 +/* 0ACEB4 800AC2B4 3C17800E */ lui $s7, %hi(D_800E28D4) # $s7, 0x800e +/* 0ACEB8 800AC2B8 35E10003 */ ori $at, $t7, 3 +/* 0ACEBC 800AC2BC 38210002 */ xori $at, $at, 2 +/* 0ACEC0 800AC2C0 44C1F800 */ ctc1 $at, $31 +/* 0ACEC4 800AC2C4 3C1E8012 */ lui $fp, %hi(D_80127C20) # $fp, 0x8012 +/* 0ACEC8 800AC2C8 460084A4 */ cvt.w.s $f18, $f16 +/* 0ACECC 800AC2CC 27DE7C20 */ addiu $fp, %lo(D_80127C20) # addiu $fp, $fp, 0x7c20 +/* 0ACED0 800AC2D0 44CFF800 */ ctc1 $t7, $31 +/* 0ACED4 800AC2D4 44079000 */ mfc1 $a3, $f18 +/* 0ACED8 800AC2D8 46002182 */ mul.s $f6, $f4, $f0 +/* 0ACEDC 800AC2DC 26F728D4 */ addiu $s7, %lo(D_800E28D4) # addiu $s7, $s7, 0x28d4 +/* 0ACEE0 800AC2E0 26D67BF8 */ addiu $s6, %lo(D_80127BF8) # addiu $s6, $s6, 0x7bf8 +/* 0ACEE4 800AC2E4 3C10800E */ lui $s0, %hi(D_800E28D8) # $s0, 0x800e +/* 0ACEE8 800AC2E8 4458F800 */ cfc1 $t8, $31 +/* 0ACEEC 800AC2EC 00009025 */ move $s2, $zero +/* 0ACEF0 800AC2F0 37010003 */ ori $at, $t8, 3 +/* 0ACEF4 800AC2F4 38210002 */ xori $at, $at, 2 +/* 0ACEF8 800AC2F8 44C1F800 */ ctc1 $at, $31 +/* 0ACEFC 800AC2FC 3C013780 */ li $at, 0x37800000 # 0.000015 +/* 0ACF00 800AC300 46003224 */ cvt.w.s $f8, $f6 +/* 0ACF04 800AC304 00009825 */ move $s3, $zero +/* 0ACF08 800AC308 44084000 */ mfc1 $t0, $f8 +/* 0ACF0C 800AC30C 44D8F800 */ ctc1 $t8, $31 +/* 0ACF10 800AC310 1B200096 */ blez $t9, .L800AC56C +/* 0ACF14 800AC314 27B50064 */ addiu $s5, $sp, 0x64 +/* 0ACF18 800AC318 4481A000 */ mtc1 $at, $f20 +/* 0ACF1C 800AC31C AFA30058 */ sw $v1, 0x58($sp) +/* 0ACF20 800AC320 AFA70054 */ sw $a3, 0x54($sp) +/* 0ACF24 800AC324 AFA80050 */ sw $t0, 0x50($sp) +/* 0ACF28 800AC328 261028D8 */ addiu $s0, %lo(D_800E28D8) # addiu $s0, $s0, 0x28d8 +.L800AC32C: +/* 0ACF2C 800AC32C 8EE90000 */ lw $t1, ($s7) +/* 0ACF30 800AC330 8FA30058 */ lw $v1, 0x58($sp) +/* 0ACF34 800AC334 01331021 */ addu $v0, $t1, $s3 +/* 0ACF38 800AC338 8C4A0000 */ lw $t2, ($v0) +/* 0ACF3C 800AC33C 8E0C0018 */ lw $t4, 0x18($s0) +/* 0ACF40 800AC340 8E0E000C */ lw $t6, 0xc($s0) +/* 0ACF44 800AC344 01435823 */ subu $t3, $t2, $v1 +/* 0ACF48 800AC348 016C6824 */ and $t5, $t3, $t4 +/* 0ACF4C 800AC34C 01AE7821 */ addu $t7, $t5, $t6 +/* 0ACF50 800AC350 448F5000 */ mtc1 $t7, $f10 +/* 0ACF54 800AC354 8FA70054 */ lw $a3, 0x54($sp) +/* 0ACF58 800AC358 46805420 */ cvt.s.w $f16, $f10 +/* 0ACF5C 800AC35C 8E09001C */ lw $t1, 0x1c($s0) +/* 0ACF60 800AC360 8E0B0010 */ lw $t3, 0x10($s0) +/* 0ACF64 800AC364 46148482 */ mul.s $f18, $f16, $f20 +/* 0ACF68 800AC368 8FA80050 */ lw $t0, 0x50($sp) +/* 0ACF6C 800AC36C 8E0F0020 */ lw $t7, 0x20($s0) +/* 0ACF70 800AC370 8FC40000 */ lw $a0, ($fp) +/* 0ACF74 800AC374 E7B20064 */ swc1 $f18, 0x64($sp) +/* 0ACF78 800AC378 8C580004 */ lw $t8, 4($v0) +/* 0ACF7C 800AC37C 02A02825 */ move $a1, $s5 +/* 0ACF80 800AC380 0307C823 */ subu $t9, $t8, $a3 +/* 0ACF84 800AC384 03295024 */ and $t2, $t9, $t1 +/* 0ACF88 800AC388 014B6021 */ addu $t4, $t2, $t3 +/* 0ACF8C 800AC38C 448C2000 */ mtc1 $t4, $f4 +/* 0ACF90 800AC390 8E190014 */ lw $t9, 0x14($s0) +/* 0ACF94 800AC394 468021A0 */ cvt.s.w $f6, $f4 +/* 0ACF98 800AC398 02A03025 */ move $a2, $s5 +/* 0ACF9C 800AC39C 46143202 */ mul.s $f8, $f6, $f20 +/* 0ACFA0 800AC3A0 E7A80068 */ swc1 $f8, 0x68($sp) +/* 0ACFA4 800AC3A4 8C4D0008 */ lw $t5, 8($v0) +/* 0ACFA8 800AC3A8 00000000 */ nop +/* 0ACFAC 800AC3AC 01A87023 */ subu $t6, $t5, $t0 +/* 0ACFB0 800AC3B0 01CFC024 */ and $t8, $t6, $t7 +/* 0ACFB4 800AC3B4 03194821 */ addu $t1, $t8, $t9 +/* 0ACFB8 800AC3B8 44895000 */ mtc1 $t1, $f10 +/* 0ACFBC 800AC3BC 00000000 */ nop +/* 0ACFC0 800AC3C0 46805420 */ cvt.s.w $f16, $f10 +/* 0ACFC4 800AC3C4 46148482 */ mul.s $f18, $f16, $f20 +/* 0ACFC8 800AC3C8 0C01BDBB */ jal func_8006F6EC +/* 0ACFCC 800AC3CC E7B2006C */ swc1 $f18, 0x6c($sp) +/* 0ACFD0 800AC3D0 444AF800 */ cfc1 $t2, $31 +/* 0ACFD4 800AC3D4 C7A4006C */ lwc1 $f4, 0x6c($sp) +/* 0ACFD8 800AC3D8 35410003 */ ori $at, $t2, 3 +/* 0ACFDC 800AC3DC 38210002 */ xori $at, $at, 2 +/* 0ACFE0 800AC3E0 44C1F800 */ ctc1 $at, $31 +/* 0ACFE4 800AC3E4 86CD0000 */ lh $t5, ($s6) +/* 0ACFE8 800AC3E8 460021A4 */ cvt.w.s $f6, $f4 +/* 0ACFEC 800AC3EC 44023000 */ mfc1 $v0, $f6 +/* 0ACFF0 800AC3F0 44CAF800 */ ctc1 $t2, $31 +/* 0ACFF4 800AC3F4 00025C00 */ sll $t3, $v0, 0x10 +/* 0ACFF8 800AC3F8 000B6403 */ sra $t4, $t3, 0x10 +/* 0ACFFC 800AC3FC 018D082A */ slt $at, $t4, $t5 +/* 0AD000 800AC400 10200054 */ beqz $at, .L800AC554 +/* 0AD004 800AC404 A7AC0074 */ sh $t4, 0x74($sp) +/* 0AD008 800AC408 8ECE0004 */ lw $t6, 4($s6) +/* 0AD00C 800AC40C A7AC0074 */ sh $t4, 0x74($sp) +/* 0AD010 800AC410 01CC082A */ slt $at, $t6, $t4 +/* 0AD014 800AC414 1020004F */ beqz $at, .L800AC554 +/* 0AD018 800AC418 00000000 */ nop +/* 0AD01C 800AC41C 444FF800 */ cfc1 $t7, $31 +/* 0AD020 800AC420 C7A80064 */ lwc1 $f8, 0x64($sp) +/* 0AD024 800AC424 35E10003 */ ori $at, $t7, 3 +/* 0AD028 800AC428 38210002 */ xori $at, $at, 2 +/* 0AD02C 800AC42C 44C1F800 */ ctc1 $at, $31 +/* 0AD030 800AC430 C7B00068 */ lwc1 $f16, 0x68($sp) +/* 0AD034 800AC434 460042A4 */ cvt.w.s $f10, $f8 +/* 0AD038 800AC438 860A0024 */ lh $t2, 0x24($s0) +/* 0AD03C 800AC43C 44CFF800 */ ctc1 $t7, $31 +/* 0AD040 800AC440 440C5000 */ mfc1 $t4, $f10 +/* 0AD044 800AC444 26310028 */ addiu $s1, $s1, 0x28 +/* 0AD048 800AC448 4459F800 */ cfc1 $t9, $31 +/* 0AD04C 800AC44C A7AC0070 */ sh $t4, 0x70($sp) +/* 0AD050 800AC450 37210003 */ ori $at, $t9, 3 +/* 0AD054 800AC454 38210002 */ xori $at, $at, 2 +/* 0AD058 800AC458 44C1F800 */ ctc1 $at, $31 +/* 0AD05C 800AC45C 018A6823 */ subu $t5, $t4, $t2 +/* 0AD060 800AC460 460084A4 */ cvt.w.s $f18, $f16 +/* 0AD064 800AC464 44099000 */ mfc1 $t1, $f18 +/* 0AD068 800AC468 44D9F800 */ ctc1 $t9, $31 +/* 0AD06C 800AC46C A7A90072 */ sh $t1, 0x72($sp) +/* 0AD070 800AC470 A62DFFD8 */ sh $t5, -0x28($s1) +/* 0AD074 800AC474 860F0026 */ lh $t7, 0x26($s0) +/* 0AD078 800AC478 87AE0072 */ lh $t6, 0x72($sp) +/* 0AD07C 800AC47C 00000000 */ nop +/* 0AD080 800AC480 01CFC821 */ addu $t9, $t6, $t7 +/* 0AD084 800AC484 A639FFDA */ sh $t9, -0x26($s1) +/* 0AD088 800AC488 87A90074 */ lh $t1, 0x74($sp) +/* 0AD08C 800AC48C 00000000 */ nop +/* 0AD090 800AC490 A629FFDC */ sh $t1, -0x24($s1) +/* 0AD094 800AC494 860B0024 */ lh $t3, 0x24($s0) +/* 0AD098 800AC498 87B80070 */ lh $t8, 0x70($sp) +/* 0AD09C 800AC49C 00000000 */ nop +/* 0AD0A0 800AC4A0 030B6021 */ addu $t4, $t8, $t3 +/* 0AD0A4 800AC4A4 A62CFFE2 */ sh $t4, -0x1e($s1) +/* 0AD0A8 800AC4A8 860D0026 */ lh $t5, 0x26($s0) +/* 0AD0AC 800AC4AC 87AA0072 */ lh $t2, 0x72($sp) +/* 0AD0B0 800AC4B0 00000000 */ nop +/* 0AD0B4 800AC4B4 014D7021 */ addu $t6, $t2, $t5 +/* 0AD0B8 800AC4B8 A62EFFE4 */ sh $t6, -0x1c($s1) +/* 0AD0BC 800AC4BC 87AF0074 */ lh $t7, 0x74($sp) +/* 0AD0C0 800AC4C0 00000000 */ nop +/* 0AD0C4 800AC4C4 A62FFFE6 */ sh $t7, -0x1a($s1) +/* 0AD0C8 800AC4C8 86090024 */ lh $t1, 0x24($s0) +/* 0AD0CC 800AC4CC 87B90070 */ lh $t9, 0x70($sp) +/* 0AD0D0 800AC4D0 00000000 */ nop +/* 0AD0D4 800AC4D4 0329C021 */ addu $t8, $t9, $t1 +/* 0AD0D8 800AC4D8 A638FFEC */ sh $t8, -0x14($s1) +/* 0AD0DC 800AC4DC 860C0026 */ lh $t4, 0x26($s0) +/* 0AD0E0 800AC4E0 87AB0072 */ lh $t3, 0x72($sp) +/* 0AD0E4 800AC4E4 00000000 */ nop +/* 0AD0E8 800AC4E8 016C5023 */ subu $t2, $t3, $t4 +/* 0AD0EC 800AC4EC A62AFFEE */ sh $t2, -0x12($s1) +/* 0AD0F0 800AC4F0 87AD0074 */ lh $t5, 0x74($sp) +/* 0AD0F4 800AC4F4 00000000 */ nop +/* 0AD0F8 800AC4F8 A62DFFF0 */ sh $t5, -0x10($s1) +/* 0AD0FC 800AC4FC 860F0024 */ lh $t7, 0x24($s0) +/* 0AD100 800AC500 87AE0070 */ lh $t6, 0x70($sp) +/* 0AD104 800AC504 00000000 */ nop +/* 0AD108 800AC508 01CFC823 */ subu $t9, $t6, $t7 +/* 0AD10C 800AC50C A639FFF6 */ sh $t9, -0xa($s1) +/* 0AD110 800AC510 86180026 */ lh $t8, 0x26($s0) +/* 0AD114 800AC514 87A90072 */ lh $t1, 0x72($sp) +/* 0AD118 800AC518 3C0E800E */ lui $t6, %hi(D_800E2910) # $t6, 0x800e +/* 0AD11C 800AC51C 01385823 */ subu $t3, $t1, $t8 +/* 0AD120 800AC520 A62BFFF8 */ sh $t3, -8($s1) +/* 0AD124 800AC524 87AC0074 */ lh $t4, 0x74($sp) +/* 0AD128 800AC528 00000000 */ nop +/* 0AD12C 800AC52C A62CFFFA */ sh $t4, -6($s1) +/* 0AD130 800AC530 8E8A0000 */ lw $t2, ($s4) +/* 0AD134 800AC534 00000000 */ nop +/* 0AD138 800AC538 254D0004 */ addiu $t5, $t2, 4 +/* 0AD13C 800AC53C AE8D0000 */ sw $t5, ($s4) +/* 0AD140 800AC540 8DCE2910 */ lw $t6, %lo(D_800E2910)($t6) +/* 0AD144 800AC544 000DC883 */ sra $t9, $t5, 2 +/* 0AD148 800AC548 00194840 */ sll $t1, $t9, 1 +/* 0AD14C 800AC54C 01C9C021 */ addu $t8, $t6, $t1 +/* 0AD150 800AC550 A7120000 */ sh $s2, ($t8) +.L800AC554: +/* 0AD154 800AC554 3C0B8012 */ lui $t3, %hi(D_80127BB4) # $t3, 0x8012 +/* 0AD158 800AC558 8D6B7BB4 */ lw $t3, %lo(D_80127BB4)($t3) +/* 0AD15C 800AC55C 26520001 */ addiu $s2, $s2, 1 +/* 0AD160 800AC560 024B082A */ slt $at, $s2, $t3 +/* 0AD164 800AC564 1420FF71 */ bnez $at, .L800AC32C +/* 0AD168 800AC568 26730010 */ addiu $s3, $s3, 0x10 +.L800AC56C: +/* 0AD16C 800AC56C 8FBF0044 */ lw $ra, 0x44($sp) +/* 0AD170 800AC570 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 0AD174 800AC574 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 0AD178 800AC578 8FB00020 */ lw $s0, 0x20($sp) +/* 0AD17C 800AC57C 8FB10024 */ lw $s1, 0x24($sp) +/* 0AD180 800AC580 8FB20028 */ lw $s2, 0x28($sp) +/* 0AD184 800AC584 8FB3002C */ lw $s3, 0x2c($sp) +/* 0AD188 800AC588 8FB40030 */ lw $s4, 0x30($sp) +/* 0AD18C 800AC58C 8FB50034 */ lw $s5, 0x34($sp) +/* 0AD190 800AC590 8FB60038 */ lw $s6, 0x38($sp) +/* 0AD194 800AC594 8FB7003C */ lw $s7, 0x3c($sp) +/* 0AD198 800AC598 8FBE0040 */ lw $fp, 0x40($sp) +/* 0AD19C 800AC59C 03E00008 */ jr $ra +/* 0AD1A0 800AC5A0 27BD0078 */ addiu $sp, $sp, 0x78 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AC5A4.s b/asm/non_matchings/unknown_09F8F0/func_800AC5A4.s new file mode 100644 index 00000000..511b622c --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AC5A4.s @@ -0,0 +1,191 @@ +glabel func_800AC5A4 +/* 0AD1A4 800AC5A4 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0AD1A8 800AC5A8 AFB10018 */ sw $s1, 0x18($sp) +/* 0AD1AC 800AC5AC 3C11800E */ lui $s1, %hi(D_800E28D8) # $s1, 0x800e +/* 0AD1B0 800AC5B0 263128D8 */ addiu $s1, %lo(D_800E28D8) # addiu $s1, $s1, 0x28d8 +/* 0AD1B4 800AC5B4 8E2E0008 */ lw $t6, 8($s1) +/* 0AD1B8 800AC5B8 AFBF002C */ sw $ra, 0x2c($sp) +/* 0AD1BC 800AC5BC AFB50028 */ sw $s5, 0x28($sp) +/* 0AD1C0 800AC5C0 AFB40024 */ sw $s4, 0x24($sp) +/* 0AD1C4 800AC5C4 AFB30020 */ sw $s3, 0x20($sp) +/* 0AD1C8 800AC5C8 AFB2001C */ sw $s2, 0x1c($sp) +/* 0AD1CC 800AC5CC 11C00097 */ beqz $t6, .L800AC82C +/* 0AD1D0 800AC5D0 AFB00014 */ sw $s0, 0x14($sp) +/* 0AD1D4 800AC5D4 3C13800E */ lui $s3, %hi(D_800E2908) # $s3, 0x800e +/* 0AD1D8 800AC5D8 26732908 */ addiu $s3, %lo(D_800E2908) # addiu $s3, $s3, 0x2908 +/* 0AD1DC 800AC5DC 8E790000 */ lw $t9, ($s3) +/* 0AD1E0 800AC5E0 3C148012 */ lui $s4, %hi(D_80127C00) # $s4, 0x8012 +/* 0AD1E4 800AC5E4 3C158012 */ lui $s5, %hi(D_80127C04) # $s5, 0x8012 +/* 0AD1E8 800AC5E8 26B57C04 */ addiu $s5, %lo(D_80127C04) # addiu $s5, $s5, 0x7c04 +/* 0AD1EC 800AC5EC 26947C00 */ addiu $s4, %lo(D_80127C00) # addiu $s4, $s4, 0x7c00 +/* 0AD1F0 800AC5F0 240F0004 */ li $t7, 4 +/* 0AD1F4 800AC5F4 24180002 */ li $t8, 2 +/* 0AD1F8 800AC5F8 2B210004 */ slti $at, $t9, 4 +/* 0AD1FC 800AC5FC AE8F0000 */ sw $t7, ($s4) +/* 0AD200 800AC600 1420008A */ bnez $at, .L800AC82C +/* 0AD204 800AC604 AEB80000 */ sw $t8, ($s5) +/* 0AD208 800AC608 0C01A76C */ jal func_80069DB0 +/* 0AD20C 800AC60C AFA00034 */ sw $zero, 0x34($sp) +/* 0AD210 800AC610 3C108012 */ lui $s0, %hi(D_80127C0C) # $s0, 0x8012 +/* 0AD214 800AC614 26107C0C */ addiu $s0, %lo(D_80127C0C) # addiu $s0, $s0, 0x7c0c +/* 0AD218 800AC618 8E030000 */ lw $v1, ($s0) +/* 0AD21C 800AC61C 3C0B8000 */ lui $t3, 0x8000 +/* 0AD220 800AC620 246E0008 */ addiu $t6, $v1, 8 +/* 0AD224 800AC624 AE0E0000 */ sw $t6, ($s0) +/* 0AD228 800AC628 3C0F0100 */ lui $t7, (0x01000040 >> 16) # lui $t7, 0x100 +/* 0AD22C 800AC62C 35EF0040 */ ori $t7, (0x01000040 & 0xFFFF) # ori $t7, $t7, 0x40 +/* 0AD230 800AC630 004BC021 */ addu $t8, $v0, $t3 +/* 0AD234 800AC634 AC780004 */ sw $t8, 4($v1) +/* 0AD238 800AC638 AC6F0000 */ sw $t7, ($v1) +/* 0AD23C 800AC63C 8E030000 */ lw $v1, ($s0) +/* 0AD240 800AC640 3C0EBC00 */ lui $t6, (0xBC00000A >> 16) # lui $t6, 0xbc00 +/* 0AD244 800AC644 24790008 */ addiu $t9, $v1, 8 +/* 0AD248 800AC648 AE190000 */ sw $t9, ($s0) +/* 0AD24C 800AC64C 35CE000A */ ori $t6, (0xBC00000A & 0xFFFF) # ori $t6, $t6, 0xa +/* 0AD250 800AC650 AC6E0000 */ sw $t6, ($v1) +/* 0AD254 800AC654 AC600004 */ sw $zero, 4($v1) +/* 0AD258 800AC658 8E250008 */ lw $a1, 8($s1) +/* 0AD25C 800AC65C 02002025 */ move $a0, $s0 +/* 0AD260 800AC660 0C01ED32 */ jal func_8007B4C8 +/* 0AD264 800AC664 24060002 */ li $a2, 2 +/* 0AD268 800AC668 8E820000 */ lw $v0, ($s4) +/* 0AD26C 800AC66C 8E690000 */ lw $t1, ($s3) +/* 0AD270 800AC670 8FA80034 */ lw $t0, 0x34($sp) +/* 0AD274 800AC674 0049082A */ slt $at, $v0, $t1 +/* 0AD278 800AC678 10200038 */ beqz $at, .L800AC75C +/* 0AD27C 800AC67C 3C0B8000 */ lui $t3, 0x8000 +/* 0AD280 800AC680 3C12800E */ lui $s2, %hi(D_800E290C) # $s2, 0x800e +/* 0AD284 800AC684 3C0D800E */ lui $t5, %hi(D_800E2904) # $t5, 0x800e +/* 0AD288 800AC688 25AD2904 */ addiu $t5, %lo(D_800E2904) # addiu $t5, $t5, 0x2904 +/* 0AD28C 800AC68C 2652290C */ addiu $s2, %lo(D_800E290C) # addiu $s2, $s2, 0x290c +/* 0AD290 800AC690 3C110500 */ lui $s1, 0x500 +/* 0AD294 800AC694 3C1F0400 */ lui $ra, 0x400 +/* 0AD298 800AC698 240C000A */ li $t4, 10 +.L800AC69C: +/* 0AD29C 800AC69C 010C0019 */ multu $t0, $t4 +/* 0AD2A0 800AC6A0 8DB80000 */ lw $t8, ($t5) +/* 0AD2A4 800AC6A4 8E030000 */ lw $v1, ($s0) +/* 0AD2A8 800AC6A8 244EFFFF */ addiu $t6, $v0, -1 +/* 0AD2AC 800AC6AC 24790008 */ addiu $t9, $v1, 8 +/* 0AD2B0 800AC6B0 AE190000 */ sw $t9, ($s0) +/* 0AD2B4 800AC6B4 00007812 */ mflo $t7 +/* 0AD2B8 800AC6B8 01F85021 */ addu $t2, $t7, $t8 +/* 0AD2BC 800AC6BC 014B3821 */ addu $a3, $t2, $t3 +/* 0AD2C0 800AC6C0 30F80006 */ andi $t8, $a3, 6 +/* 0AD2C4 800AC6C4 000E78C0 */ sll $t7, $t6, 3 +/* 0AD2C8 800AC6C8 01F8C825 */ or $t9, $t7, $t8 +/* 0AD2CC 800AC6CC 332E00FF */ andi $t6, $t9, 0xff +/* 0AD2D0 800AC6D0 000E7C00 */ sll $t7, $t6, 0x10 +/* 0AD2D4 800AC6D4 0002C8C0 */ sll $t9, $v0, 3 +/* 0AD2D8 800AC6D8 03227021 */ addu $t6, $t9, $v0 +/* 0AD2DC 800AC6DC 01FFC025 */ or $t8, $t7, $ra +/* 0AD2E0 800AC6E0 000E7840 */ sll $t7, $t6, 1 +/* 0AD2E4 800AC6E4 25F90008 */ addiu $t9, $t7, 8 +/* 0AD2E8 800AC6E8 332EFFFF */ andi $t6, $t9, 0xffff +/* 0AD2EC 800AC6EC 030E7825 */ or $t7, $t8, $t6 +/* 0AD2F0 800AC6F0 AC6F0000 */ sw $t7, ($v1) +/* 0AD2F4 800AC6F4 AC670004 */ sw $a3, 4($v1) +/* 0AD2F8 800AC6F8 8EA60000 */ lw $a2, ($s5) +/* 0AD2FC 800AC6FC 8E030000 */ lw $v1, ($s0) +/* 0AD300 800AC700 24D8FFFF */ addiu $t8, $a2, -1 +/* 0AD304 800AC704 00187100 */ sll $t6, $t8, 4 +/* 0AD308 800AC708 24790008 */ addiu $t9, $v1, 8 +/* 0AD30C 800AC70C AE190000 */ sw $t9, ($s0) +/* 0AD310 800AC710 35CF0001 */ ori $t7, $t6, 1 +/* 0AD314 800AC714 31F900FF */ andi $t9, $t7, 0xff +/* 0AD318 800AC718 0019C400 */ sll $t8, $t9, 0x10 +/* 0AD31C 800AC71C 00067900 */ sll $t7, $a2, 4 +/* 0AD320 800AC720 31F9FFFF */ andi $t9, $t7, 0xffff +/* 0AD324 800AC724 03117025 */ or $t6, $t8, $s1 +/* 0AD328 800AC728 01D9C025 */ or $t8, $t6, $t9 +/* 0AD32C 800AC72C AC780000 */ sw $t8, ($v1) +/* 0AD330 800AC730 8E4F0000 */ lw $t7, ($s2) +/* 0AD334 800AC734 00000000 */ nop +/* 0AD338 800AC738 01EB7021 */ addu $t6, $t7, $t3 +/* 0AD33C 800AC73C AC6E0004 */ sw $t6, 4($v1) +/* 0AD340 800AC740 8E820000 */ lw $v0, ($s4) +/* 0AD344 800AC744 8E690000 */ lw $t1, ($s3) +/* 0AD348 800AC748 01024021 */ addu $t0, $t0, $v0 +/* 0AD34C 800AC74C 0102C821 */ addu $t9, $t0, $v0 +/* 0AD350 800AC750 0329082A */ slt $at, $t9, $t1 +/* 0AD354 800AC754 1420FFD1 */ bnez $at, .L800AC69C +/* 0AD358 800AC758 00000000 */ nop +.L800AC75C: +/* 0AD35C 800AC75C 240C000A */ li $t4, 10 +/* 0AD360 800AC760 010C0019 */ multu $t0, $t4 +/* 0AD364 800AC764 3C0D800E */ lui $t5, %hi(D_800E2904) # $t5, 0x800e +/* 0AD368 800AC768 25AD2904 */ addiu $t5, %lo(D_800E2904) # addiu $t5, $t5, 0x2904 +/* 0AD36C 800AC76C 8DAF0000 */ lw $t7, ($t5) +/* 0AD370 800AC770 8E030000 */ lw $v1, ($s0) +/* 0AD374 800AC774 01281023 */ subu $v0, $t1, $t0 +/* 0AD378 800AC778 2459FFFF */ addiu $t9, $v0, -1 +/* 0AD37C 800AC77C 246E0008 */ addiu $t6, $v1, 8 +/* 0AD380 800AC780 AE0E0000 */ sw $t6, ($s0) +/* 0AD384 800AC784 3C1F0400 */ lui $ra, 0x400 +/* 0AD388 800AC788 3C110500 */ lui $s1, 0x500 +/* 0AD38C 800AC78C 3C12800E */ lui $s2, %hi(D_800E290C) # $s2, 0x800e +/* 0AD390 800AC790 0000C012 */ mflo $t8 +/* 0AD394 800AC794 030F5021 */ addu $t2, $t8, $t7 +/* 0AD398 800AC798 014B3821 */ addu $a3, $t2, $t3 +/* 0AD39C 800AC79C 30EF0006 */ andi $t7, $a3, 6 +/* 0AD3A0 800AC7A0 0019C0C0 */ sll $t8, $t9, 3 +/* 0AD3A4 800AC7A4 030F7025 */ or $t6, $t8, $t7 +/* 0AD3A8 800AC7A8 31D900FF */ andi $t9, $t6, 0xff +/* 0AD3AC 800AC7AC 0019C400 */ sll $t8, $t9, 0x10 +/* 0AD3B0 800AC7B0 000270C0 */ sll $t6, $v0, 3 +/* 0AD3B4 800AC7B4 01C2C821 */ addu $t9, $t6, $v0 +/* 0AD3B8 800AC7B8 031F7825 */ or $t7, $t8, $ra +/* 0AD3BC 800AC7BC 0019C040 */ sll $t8, $t9, 1 +/* 0AD3C0 800AC7C0 270E0008 */ addiu $t6, $t8, 8 +/* 0AD3C4 800AC7C4 31D9FFFF */ andi $t9, $t6, 0xffff +/* 0AD3C8 800AC7C8 01F9C025 */ or $t8, $t7, $t9 +/* 0AD3CC 800AC7CC AC780000 */ sw $t8, ($v1) +/* 0AD3D0 800AC7D0 AC670004 */ sw $a3, 4($v1) +/* 0AD3D4 800AC7D4 8E6F0000 */ lw $t7, ($s3) +/* 0AD3D8 800AC7D8 8E030000 */ lw $v1, ($s0) +/* 0AD3DC 800AC7DC 01E83023 */ subu $a2, $t7, $t0 +/* 0AD3E0 800AC7E0 0006C843 */ sra $t9, $a2, 1 +/* 0AD3E4 800AC7E4 246E0008 */ addiu $t6, $v1, 8 +/* 0AD3E8 800AC7E8 AE0E0000 */ sw $t6, ($s0) +/* 0AD3EC 800AC7EC 2738FFFF */ addiu $t8, $t9, -1 +/* 0AD3F0 800AC7F0 00187100 */ sll $t6, $t8, 4 +/* 0AD3F4 800AC7F4 35CF0001 */ ori $t7, $t6, 1 +/* 0AD3F8 800AC7F8 03203025 */ move $a2, $t9 +/* 0AD3FC 800AC7FC 31F900FF */ andi $t9, $t7, 0xff +/* 0AD400 800AC800 0019C400 */ sll $t8, $t9, 0x10 +/* 0AD404 800AC804 00067900 */ sll $t7, $a2, 4 +/* 0AD408 800AC808 31F9FFFF */ andi $t9, $t7, 0xffff +/* 0AD40C 800AC80C 03117025 */ or $t6, $t8, $s1 +/* 0AD410 800AC810 01D9C025 */ or $t8, $t6, $t9 +/* 0AD414 800AC814 2652290C */ addiu $s2, %lo(D_800E290C) # addiu $s2, $s2, 0x290c +/* 0AD418 800AC818 AC780000 */ sw $t8, ($v1) +/* 0AD41C 800AC81C 8E4F0000 */ lw $t7, ($s2) +/* 0AD420 800AC820 00000000 */ nop +/* 0AD424 800AC824 01EB7021 */ addu $t6, $t7, $t3 +/* 0AD428 800AC828 AC6E0004 */ sw $t6, 4($v1) +.L800AC82C: +/* 0AD42C 800AC82C 8FBF002C */ lw $ra, 0x2c($sp) +/* 0AD430 800AC830 8FB00014 */ lw $s0, 0x14($sp) +/* 0AD434 800AC834 8FB10018 */ lw $s1, 0x18($sp) +/* 0AD438 800AC838 8FB2001C */ lw $s2, 0x1c($sp) +/* 0AD43C 800AC83C 8FB30020 */ lw $s3, 0x20($sp) +/* 0AD440 800AC840 8FB40024 */ lw $s4, 0x24($sp) +/* 0AD444 800AC844 8FB50028 */ lw $s5, 0x28($sp) +/* 0AD448 800AC848 03E00008 */ jr $ra +/* 0AD44C 800AC84C 27BD0038 */ addiu $sp, $sp, 0x38 + +/* 0AD450 800AC850 240E0001 */ li $t6, 1 +/* 0AD454 800AC854 3C01800E */ lui $at, 0x800e +/* 0AD458 800AC858 03E00008 */ jr $ra +/* 0AD45C 800AC85C AC2E2A84 */ sw $t6, 0x2a84($at) + +/* 0AD460 800AC860 3C0E800E */ lui $t6, %hi(D_800E2A80) # $t6, 0x800e +/* 0AD464 800AC864 8DCE2A80 */ lw $t6, %lo(D_800E2A80)($t6) +/* 0AD468 800AC868 3C01800E */ lui $at, %hi(D_800E2A84) # $at, 0x800e +/* 0AD46C 800AC86C 11C00002 */ beqz $t6, .L800AC878 +/* 0AD470 800AC870 00000000 */ nop +/* 0AD474 800AC874 AC202A84 */ sw $zero, %lo(D_800E2A84)($at) +.L800AC878: +/* 0AD478 800AC878 03E00008 */ jr $ra +/* 0AD47C 800AC87C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AC880.s b/asm/non_matchings/unknown_09F8F0/func_800AC880.s new file mode 100644 index 00000000..12940a70 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AC880.s @@ -0,0 +1,13 @@ +glabel func_800AC880 +/* 0AD480 800AC880 3C02800E */ lui $v0, %hi(D_800E2A80) # $v0, 0x800e +/* 0AD484 800AC884 24422A80 */ addiu $v0, %lo(D_800E2A80) # addiu $v0, $v0, 0x2a80 +/* 0AD488 800AC888 8C4E0000 */ lw $t6, ($v0) +/* 0AD48C 800AC88C 240F0001 */ li $t7, 1 +/* 0AD490 800AC890 148E0003 */ bne $a0, $t6, .L800AC8A0 +/* 0AD494 800AC894 3C01800E */ lui $at, %hi(D_800E2A84) # $at, 0x800e +/* 0AD498 800AC898 AC400000 */ sw $zero, ($v0) +/* 0AD49C 800AC89C AC2F2A84 */ sw $t7, %lo(D_800E2A84)($at) +.L800AC8A0: +/* 0AD4A0 800AC8A0 03E00008 */ jr $ra +/* 0AD4A4 800AC8A4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AC8A8.s b/asm/non_matchings/unknown_09F8F0/func_800AC8A8.s new file mode 100644 index 00000000..b84877c6 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AC8A8.s @@ -0,0 +1,106 @@ +glabel func_800AC8A8 +/* 0AD4A8 800AC8A8 3C05800E */ lui $a1, %hi(D_800E2A80) # $a1, 0x800e +/* 0AD4AC 800AC8AC 24A52A80 */ addiu $a1, %lo(D_800E2A80) # addiu $a1, $a1, 0x2a80 +/* 0AD4B0 800AC8B0 ACA40000 */ sw $a0, ($a1) +/* 0AD4B4 800AC8B4 3C01800E */ lui $at, %hi(D_800E2A84) # $at, 0x800e +/* 0AD4B8 800AC8B8 AC202A84 */ sw $zero, %lo(D_800E2A84)($at) +/* 0AD4BC 800AC8BC 8CAE0000 */ lw $t6, ($a1) +/* 0AD4C0 800AC8C0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0AD4C4 800AC8C4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0AD4C8 800AC8C8 8DC3003C */ lw $v1, 0x3c($t6) +/* 0AD4CC 800AC8CC 24060001 */ li $a2, 1 +/* 0AD4D0 800AC8D0 9062000C */ lbu $v0, 0xc($v1) +/* 0AD4D4 800AC8D4 3C058012 */ lui $a1, %hi(D_80127C30) # $a1, 0x8012 +/* 0AD4D8 800AC8D8 1046000A */ beq $v0, $a2, .L800AC904 +/* 0AD4DC 800AC8DC 24A57C30 */ addiu $a1, %lo(D_80127C30) # addiu $a1, $a1, 0x7c30 +/* 0AD4E0 800AC8E0 24010002 */ li $at, 2 +/* 0AD4E4 800AC8E4 1041000C */ beq $v0, $at, .L800AC918 +/* 0AD4E8 800AC8E8 3C18800E */ lui $t8, %hi(D_800E29E0) # $t8, 0x800e +/* 0AD4EC 800AC8EC 24010003 */ li $at, 3 +/* 0AD4F0 800AC8F0 1041000D */ beq $v0, $at, .L800AC928 +/* 0AD4F4 800AC8F4 3C19800E */ lui $t9, %hi(D_800E2A30) # $t9, 0x800e +/* 0AD4F8 800AC8F8 3C018012 */ lui $at, %hi(D_80127C24) # $at, 0x8012 +/* 0AD4FC 800AC8FC 1000000D */ b .L800AC934 +/* 0AD500 800AC900 AC207C24 */ sw $zero, %lo(D_80127C24)($at) +.L800AC904: +/* 0AD504 800AC904 3C0F800E */ lui $t7, %hi(D_800E29A0) # $t7, 0x800e +/* 0AD508 800AC908 25EF29A0 */ addiu $t7, %lo(D_800E29A0) # addiu $t7, $t7, 0x29a0 +/* 0AD50C 800AC90C 3C018012 */ lui $at, %hi(D_80127C24) # $at, 0x8012 +/* 0AD510 800AC910 10000008 */ b .L800AC934 +/* 0AD514 800AC914 AC2F7C24 */ sw $t7, %lo(D_80127C24)($at) +.L800AC918: +/* 0AD518 800AC918 271829E0 */ addiu $t8, %lo(D_800E29E0) # addiu $t8, $t8, 0x29e0 +/* 0AD51C 800AC91C 3C018012 */ lui $at, %hi(D_80127C24) # $at, 0x8012 +/* 0AD520 800AC920 10000004 */ b .L800AC934 +/* 0AD524 800AC924 AC387C24 */ sw $t8, %lo(D_80127C24)($at) +.L800AC928: +/* 0AD528 800AC928 27392A30 */ addiu $t9, %lo(D_800E2A30) # addiu $t9, $t9, 0x2a30 +/* 0AD52C 800AC92C 3C018012 */ lui $at, %hi(D_80127C24) # $at, 0x8012 +/* 0AD530 800AC930 AC397C24 */ sw $t9, %lo(D_80127C24)($at) +.L800AC934: +/* 0AD534 800AC934 9062000D */ lbu $v0, 0xd($v1) +/* 0AD538 800AC938 44800000 */ mtc1 $zero, $f0 +/* 0AD53C 800AC93C 1046000A */ beq $v0, $a2, .L800AC968 +/* 0AD540 800AC940 27A4001C */ addiu $a0, $sp, 0x1c +/* 0AD544 800AC944 24010002 */ li $at, 2 +/* 0AD548 800AC948 1041000C */ beq $v0, $at, .L800AC97C +/* 0AD54C 800AC94C 3C09800E */ lui $t1, %hi(D_800E29E0) # $t1, 0x800e +/* 0AD550 800AC950 24010003 */ li $at, 3 +/* 0AD554 800AC954 1041000D */ beq $v0, $at, .L800AC98C +/* 0AD558 800AC958 3C0A800E */ lui $t2, %hi(D_800E2A30) # $t2, 0x800e +/* 0AD55C 800AC95C 3C018012 */ lui $at, %hi(D_80127C28) # $at, 0x8012 +/* 0AD560 800AC960 1000000D */ b .L800AC998 +/* 0AD564 800AC964 AC207C28 */ sw $zero, %lo(D_80127C28)($at) +.L800AC968: +/* 0AD568 800AC968 3C08800E */ lui $t0, %hi(D_800E29A0) # $t0, 0x800e +/* 0AD56C 800AC96C 250829A0 */ addiu $t0, %lo(D_800E29A0) # addiu $t0, $t0, 0x29a0 +/* 0AD570 800AC970 3C018012 */ lui $at, %hi(D_80127C28) # $at, 0x8012 +/* 0AD574 800AC974 10000008 */ b .L800AC998 +/* 0AD578 800AC978 AC287C28 */ sw $t0, %lo(D_80127C28)($at) +.L800AC97C: +/* 0AD57C 800AC97C 252929E0 */ addiu $t1, %lo(D_800E29E0) # addiu $t1, $t1, 0x29e0 +/* 0AD580 800AC980 3C018012 */ lui $at, %hi(D_80127C28) # $at, 0x8012 +/* 0AD584 800AC984 10000004 */ b .L800AC998 +/* 0AD588 800AC988 AC297C28 */ sw $t1, %lo(D_80127C28)($at) +.L800AC98C: +/* 0AD58C 800AC98C 254A2A30 */ addiu $t2, %lo(D_800E2A30) # addiu $t2, $t2, 0x2a30 +/* 0AD590 800AC990 3C018012 */ lui $at, %hi(D_80127C28) # $at, 0x8012 +/* 0AD594 800AC994 AC2A7C28 */ sw $t2, %lo(D_80127C28)($at) +.L800AC998: +/* 0AD598 800AC998 906B000E */ lbu $t3, 0xe($v1) +/* 0AD59C 800AC99C 3C0C800E */ lui $t4, %hi(D_800E2980) # $t4, 0x800e +/* 0AD5A0 800AC9A0 14CB0005 */ bne $a2, $t3, .L800AC9B8 +/* 0AD5A4 800AC9A4 3C018012 */ lui $at, 0x8012 +/* 0AD5A8 800AC9A8 258C2980 */ addiu $t4, %lo(D_800E2980) # addiu $t4, $t4, 0x2980 +/* 0AD5AC 800AC9AC 3C018012 */ lui $at, %hi(D_80127C2C) # $at, 0x8012 +/* 0AD5B0 800AC9B0 10000002 */ b .L800AC9BC +/* 0AD5B4 800AC9B4 AC2C7C2C */ sw $t4, %lo(D_80127C2C)($at) +.L800AC9B8: +/* 0AD5B8 800AC9B8 AC207C2C */ sw $zero, %lo(D_80127C2C)($at) +.L800AC9BC: +/* 0AD5BC 800AC9BC 846D000A */ lh $t5, 0xa($v1) +/* 0AD5C0 800AC9C0 3C01BF80 */ li $at, 0xBF800000 # -1.000000 +/* 0AD5C4 800AC9C4 A7AD001C */ sh $t5, 0x1c($sp) +/* 0AD5C8 800AC9C8 846E0008 */ lh $t6, 8($v1) +/* 0AD5CC 800AC9CC 44812000 */ mtc1 $at, $f4 +/* 0AD5D0 800AC9D0 A7A00020 */ sh $zero, 0x20($sp) +/* 0AD5D4 800AC9D4 E4A00000 */ swc1 $f0, ($a1) +/* 0AD5D8 800AC9D8 E4A00004 */ swc1 $f0, 4($a1) +/* 0AD5DC 800AC9DC A7AE001E */ sh $t6, 0x1e($sp) +/* 0AD5E0 800AC9E0 0C01C124 */ jal func_80070490 +/* 0AD5E4 800AC9E4 E4A40008 */ swc1 $f4, 8($a1) +/* 0AD5E8 800AC9E8 3C058012 */ lui $a1, %hi(D_80127C30) # $a1, 0x8012 +/* 0AD5EC 800AC9EC 24A57C30 */ addiu $a1, %lo(D_80127C30) # addiu $a1, $a1, 0x7c30 +/* 0AD5F0 800AC9F0 C4A60000 */ lwc1 $f6, ($a1) +/* 0AD5F4 800AC9F4 C4AA0004 */ lwc1 $f10, 4($a1) +/* 0AD5F8 800AC9F8 C4B20008 */ lwc1 $f18, 8($a1) +/* 0AD5FC 800AC9FC 8FBF0014 */ lw $ra, 0x14($sp) +/* 0AD600 800ACA00 46003207 */ neg.s $f8, $f6 +/* 0AD604 800ACA04 46005407 */ neg.s $f16, $f10 +/* 0AD608 800ACA08 46009107 */ neg.s $f4, $f18 +/* 0AD60C 800ACA0C E4A80000 */ swc1 $f8, ($a1) +/* 0AD610 800ACA10 E4B00004 */ swc1 $f16, 4($a1) +/* 0AD614 800ACA14 E4A40008 */ swc1 $f4, 8($a1) +/* 0AD618 800ACA18 03E00008 */ jr $ra +/* 0AD61C 800ACA1C 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800ACA20.s b/asm/non_matchings/unknown_09F8F0/func_800ACA20.s new file mode 100644 index 00000000..757ec4e7 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800ACA20.s @@ -0,0 +1,350 @@ +glabel func_800ACA20 +/* 0AD620 800ACA20 27BDFF10 */ addiu $sp, $sp, -0xf0 +/* 0AD624 800ACA24 AFB60050 */ sw $s6, 0x50($sp) +/* 0AD628 800ACA28 3C16800E */ lui $s6, %hi(D_800E2A80) # $s6, 0x800e +/* 0AD62C 800ACA2C 26D62A80 */ addiu $s6, %lo(D_800E2A80) # addiu $s6, $s6, 0x2a80 +/* 0AD630 800ACA30 8ECF0000 */ lw $t7, ($s6) +/* 0AD634 800ACA34 AFB70054 */ sw $s7, 0x54($sp) +/* 0AD638 800ACA38 AFB5004C */ sw $s5, 0x4c($sp) +/* 0AD63C 800ACA3C AFB1003C */ sw $s1, 0x3c($sp) +/* 0AD640 800ACA40 AFB00038 */ sw $s0, 0x38($sp) +/* 0AD644 800ACA44 00E08025 */ move $s0, $a3 +/* 0AD648 800ACA48 00808825 */ move $s1, $a0 +/* 0AD64C 800ACA4C 00A0A825 */ move $s5, $a1 +/* 0AD650 800ACA50 00C0B825 */ move $s7, $a2 +/* 0AD654 800ACA54 AFBF005C */ sw $ra, 0x5c($sp) +/* 0AD658 800ACA58 AFBE0058 */ sw $fp, 0x58($sp) +/* 0AD65C 800ACA5C AFB40048 */ sw $s4, 0x48($sp) +/* 0AD660 800ACA60 AFB30044 */ sw $s3, 0x44($sp) +/* 0AD664 800ACA64 AFB20040 */ sw $s2, 0x40($sp) +/* 0AD668 800ACA68 E7B90030 */ swc1 $f25, 0x30($sp) +/* 0AD66C 800ACA6C E7B80034 */ swc1 $f24, 0x34($sp) +/* 0AD670 800ACA70 E7B70028 */ swc1 $f23, 0x28($sp) +/* 0AD674 800ACA74 E7B6002C */ swc1 $f22, 0x2c($sp) +/* 0AD678 800ACA78 E7B50020 */ swc1 $f21, 0x20($sp) +/* 0AD67C 800ACA7C 11E00126 */ beqz $t7, .L800ACF18 +/* 0AD680 800ACA80 E7B40024 */ swc1 $f20, 0x24($sp) +/* 0AD684 800ACA84 3C19800E */ lui $t9, %hi(D_800E2A84) # $t9, 0x800e +/* 0AD688 800ACA88 8F392A84 */ lw $t9, %lo(D_800E2A84)($t9) +/* 0AD68C 800ACA8C 00000000 */ nop +/* 0AD690 800ACA90 17200122 */ bnez $t9, .L800ACF1C +/* 0AD694 800ACA94 8FBF005C */ lw $ra, 0x5c($sp) +/* 0AD698 800ACA98 0C019884 */ jal func_80066210 +/* 0AD69C 800ACA9C 00000000 */ nop +/* 0AD6A0 800ACAA0 1440011D */ bnez $v0, .L800ACF18 +/* 0AD6A4 800ACAA4 3C01BF80 */ li $at, 0xBF800000 # -1.000000 +/* 0AD6A8 800ACAA8 8ECE0000 */ lw $t6, ($s6) +/* 0AD6AC 800ACAAC 4480A000 */ mtc1 $zero, $f20 +/* 0AD6B0 800ACAB0 8DCB003C */ lw $t3, 0x3c($t6) +/* 0AD6B4 800ACAB4 44815000 */ mtc1 $at, $f10 +/* 0AD6B8 800ACAB8 E7B400D8 */ swc1 $f20, 0xd8($sp) +/* 0AD6BC 800ACABC E7B400DC */ swc1 $f20, 0xdc($sp) +/* 0AD6C0 800ACAC0 AFAB0098 */ sw $t3, 0x98($sp) +/* 0AD6C4 800ACAC4 0C01A769 */ jal func_80069DA4 +/* 0AD6C8 800ACAC8 E7AA00E0 */ swc1 $f10, 0xe0($sp) +/* 0AD6CC 800ACACC 27A500D8 */ addiu $a1, $sp, 0xd8 +/* 0AD6D0 800ACAD0 00A03025 */ move $a2, $a1 +/* 0AD6D4 800ACAD4 0C01BDBB */ jal func_8006F6EC +/* 0AD6D8 800ACAD8 00402025 */ move $a0, $v0 +/* 0AD6DC 800ACADC 3C1E8012 */ lui $fp, %hi(D_80127C30) # $fp, 0x8012 +/* 0AD6E0 800ACAE0 27DE7C30 */ addiu $fp, %lo(D_80127C30) # addiu $fp, $fp, 0x7c30 +/* 0AD6E4 800ACAE4 C7C60000 */ lwc1 $f6, ($fp) +/* 0AD6E8 800ACAE8 C7A400D8 */ lwc1 $f4, 0xd8($sp) +/* 0AD6EC 800ACAEC C7CA0004 */ lwc1 $f10, 4($fp) +/* 0AD6F0 800ACAF0 46043202 */ mul.s $f8, $f6, $f4 +/* 0AD6F4 800ACAF4 C7A600DC */ lwc1 $f6, 0xdc($sp) +/* 0AD6F8 800ACAF8 02202025 */ move $a0, $s1 +/* 0AD6FC 800ACAFC 02A02825 */ move $a1, $s5 +/* 0AD700 800ACB00 46065102 */ mul.s $f4, $f10, $f6 +/* 0AD704 800ACB04 C7A600E0 */ lwc1 $f6, 0xe0($sp) +/* 0AD708 800ACB08 46044280 */ add.s $f10, $f8, $f4 +/* 0AD70C 800ACB0C C7C80008 */ lwc1 $f8, 8($fp) +/* 0AD710 800ACB10 00000000 */ nop +/* 0AD714 800ACB14 46083102 */ mul.s $f4, $f6, $f8 +/* 0AD718 800ACB18 460A2480 */ add.s $f18, $f4, $f10 +/* 0AD71C 800ACB1C 4612A03C */ c.lt.s $f20, $f18 +/* 0AD720 800ACB20 00000000 */ nop +/* 0AD724 800ACB24 450000FD */ bc1f .L800ACF1C +/* 0AD728 800ACB28 8FBF005C */ lw $ra, 0x5c($sp) +/* 0AD72C 800ACB2C 0C019B37 */ jal func_80066CDC +/* 0AD730 800ACB30 E7B200C8 */ swc1 $f18, 0xc8($sp) +/* 0AD734 800ACB34 02202025 */ move $a0, $s1 +/* 0AD738 800ACB38 0C01A102 */ jal func_80068408 +/* 0AD73C 800ACB3C 02A02825 */ move $a1, $s5 +/* 0AD740 800ACB40 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 0AD744 800ACB44 4481C000 */ mtc1 $at, $f24 +/* 0AD748 800ACB48 3C014380 */ li $at, 0x43800000 # 256.000000 +/* 0AD74C 800ACB4C 44813000 */ mtc1 $at, $f6 +/* 0AD750 800ACB50 C7CC0000 */ lwc1 $f12, ($fp) +/* 0AD754 800ACB54 C604000C */ lwc1 $f4, 0xc($s0) +/* 0AD758 800ACB58 46066202 */ mul.s $f8, $f12, $f6 +/* 0AD75C 800ACB5C 44813000 */ mtc1 $at, $f6 +/* 0AD760 800ACB60 C7CE0004 */ lwc1 $f14, 4($fp) +/* 0AD764 800ACB64 C7C20008 */ lwc1 $f2, 8($fp) +/* 0AD768 800ACB68 46044280 */ add.s $f10, $f8, $f4 +/* 0AD76C 800ACB6C C7B200C8 */ lwc1 $f18, 0xc8($sp) +/* 0AD770 800ACB70 46067202 */ mul.s $f8, $f14, $f6 +/* 0AD774 800ACB74 E7AA00CC */ swc1 $f10, 0xcc($sp) +/* 0AD778 800ACB78 C6040010 */ lwc1 $f4, 0x10($s0) +/* 0AD77C 800ACB7C 44813000 */ mtc1 $at, $f6 +/* 0AD780 800ACB80 46044280 */ add.s $f10, $f8, $f4 +/* 0AD784 800ACB84 00009025 */ move $s2, $zero +/* 0AD788 800ACB88 46061202 */ mul.s $f8, $f2, $f6 +/* 0AD78C 800ACB8C E7AA00D0 */ swc1 $f10, 0xd0($sp) +/* 0AD790 800ACB90 C6040014 */ lwc1 $f4, 0x14($s0) +/* 0AD794 800ACB94 C7A600D8 */ lwc1 $f6, 0xd8($sp) +/* 0AD798 800ACB98 46129502 */ mul.s $f20, $f18, $f18 +/* 0AD79C 800ACB9C 46044280 */ add.s $f10, $f8, $f4 +/* 0AD7A0 800ACBA0 A7A000A4 */ sh $zero, 0xa4($sp) +/* 0AD7A4 800ACBA4 E7AA00D4 */ swc1 $f10, 0xd4($sp) +/* 0AD7A8 800ACBA8 4614A582 */ mul.s $f22, $f20, $f20 +/* 0AD7AC 800ACBAC C7AA00DC */ lwc1 $f10, 0xdc($sp) +/* 0AD7B0 800ACBB0 A7A000A6 */ sh $zero, 0xa6($sp) +/* 0AD7B4 800ACBB4 A7A000A8 */ sh $zero, 0xa8($sp) +/* 0AD7B8 800ACBB8 4612C402 */ mul.s $f16, $f24, $f18 +/* 0AD7BC 800ACBBC 3C14FA00 */ lui $s4, 0xfa00 +/* 0AD7C0 800ACBC0 27B300A4 */ addiu $s3, $sp, 0xa4 +/* 0AD7C4 800ACBC4 24020001 */ li $v0, 1 +/* 0AD7C8 800ACBC8 46068202 */ mul.s $f8, $f16, $f6 +/* 0AD7CC 800ACBCC 460C4101 */ sub.s $f4, $f8, $f12 +/* 0AD7D0 800ACBD0 460A8182 */ mul.s $f6, $f16, $f10 +/* 0AD7D4 800ACBD4 E7A400D8 */ swc1 $f4, 0xd8($sp) +/* 0AD7D8 800ACBD8 C7A400E0 */ lwc1 $f4, 0xe0($sp) +/* 0AD7DC 800ACBDC 00000000 */ nop +/* 0AD7E0 800ACBE0 46048282 */ mul.s $f10, $f16, $f4 +/* 0AD7E4 800ACBE4 460E3201 */ sub.s $f8, $f6, $f14 +/* 0AD7E8 800ACBE8 E7A800DC */ swc1 $f8, 0xdc($sp) +/* 0AD7EC 800ACBEC 46025181 */ sub.s $f6, $f10, $f2 +/* 0AD7F0 800ACBF0 E7A600E0 */ swc1 $f6, 0xe0($sp) +.L800ACBF4: +/* 0AD7F4 800ACBF4 16400004 */ bnez $s2, .L800ACC08 +/* 0AD7F8 800ACBF8 3C108012 */ lui $s0, %hi(D_80127C2C) # $s0, 0x8012 +/* 0AD7FC 800ACBFC 8E107C2C */ lw $s0, %lo(D_80127C2C)($s0) +/* 0AD800 800ACC00 10000009 */ b .L800ACC28 +/* 0AD804 800ACC04 00000000 */ nop +.L800ACC08: +/* 0AD808 800ACC08 16420005 */ bne $s2, $v0, .L800ACC20 +/* 0AD80C 800ACC0C 3C108012 */ lui $s0, 0x8012 +/* 0AD810 800ACC10 3C108012 */ lui $s0, %hi(D_80127C24) # $s0, 0x8012 +/* 0AD814 800ACC14 8E107C24 */ lw $s0, %lo(D_80127C24)($s0) +/* 0AD818 800ACC18 10000003 */ b .L800ACC28 +/* 0AD81C 800ACC1C 00000000 */ nop +.L800ACC20: +/* 0AD820 800ACC20 8E107C28 */ lw $s0, 0x7c28($s0) +/* 0AD824 800ACC24 00000000 */ nop +.L800ACC28: +/* 0AD828 800ACC28 12000058 */ beqz $s0, .L800ACD8C +/* 0AD82C 800ACC2C 00000000 */ nop +/* 0AD830 800ACC30 8E0D0000 */ lw $t5, ($s0) +/* 0AD834 800ACC34 00000000 */ nop +/* 0AD838 800ACC38 19A00054 */ blez $t5, .L800ACD8C +/* 0AD83C 800ACC3C 00000000 */ nop +.L800ACC40: +/* 0AD840 800ACC40 C7A800CC */ lwc1 $f8, 0xcc($sp) +/* 0AD844 800ACC44 C7A400D0 */ lwc1 $f4, 0xd0($sp) +/* 0AD848 800ACC48 C7AA00D4 */ lwc1 $f10, 0xd4($sp) +/* 0AD84C 800ACC4C E7A800B0 */ swc1 $f8, 0xb0($sp) +/* 0AD850 800ACC50 E7A400B4 */ swc1 $f4, 0xb4($sp) +/* 0AD854 800ACC54 12400016 */ beqz $s2, .L800ACCB0 +/* 0AD858 800ACC58 E7AA00B8 */ swc1 $f10, 0xb8($sp) +/* 0AD85C 800ACC5C C606000C */ lwc1 $f6, 0xc($s0) +/* 0AD860 800ACC60 E7A80060 */ swc1 $f8, 0x60($sp) +/* 0AD864 800ACC64 C7A800D8 */ lwc1 $f8, 0xd8($sp) +/* 0AD868 800ACC68 00000000 */ nop +/* 0AD86C 800ACC6C 46083182 */ mul.s $f6, $f6, $f8 +/* 0AD870 800ACC70 C7A80060 */ lwc1 $f8, 0x60($sp) +/* 0AD874 800ACC74 00000000 */ nop +/* 0AD878 800ACC78 46064200 */ add.s $f8, $f8, $f6 +/* 0AD87C 800ACC7C E7A800B0 */ swc1 $f8, 0xb0($sp) +/* 0AD880 800ACC80 C606000C */ lwc1 $f6, 0xc($s0) +/* 0AD884 800ACC84 C7A800DC */ lwc1 $f8, 0xdc($sp) +/* 0AD888 800ACC88 00000000 */ nop +/* 0AD88C 800ACC8C 46083182 */ mul.s $f6, $f6, $f8 +/* 0AD890 800ACC90 46062200 */ add.s $f8, $f4, $f6 +/* 0AD894 800ACC94 C7A600E0 */ lwc1 $f6, 0xe0($sp) +/* 0AD898 800ACC98 E7A800B4 */ swc1 $f8, 0xb4($sp) +/* 0AD89C 800ACC9C C604000C */ lwc1 $f4, 0xc($s0) +/* 0AD8A0 800ACCA0 00000000 */ nop +/* 0AD8A4 800ACCA4 46062202 */ mul.s $f8, $f4, $f6 +/* 0AD8A8 800ACCA8 46085100 */ add.s $f4, $f10, $f8 +/* 0AD8AC 800ACCAC E7A400B8 */ swc1 $f4, 0xb8($sp) +.L800ACCB0: +/* 0AD8B0 800ACCB0 C6060008 */ lwc1 $f6, 8($s0) +/* 0AD8B4 800ACCB4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0AD8B8 800ACCB8 46143282 */ mul.s $f10, $f6, $f20 +/* 0AD8BC 800ACCBC E7AA00AC */ swc1 $f10, 0xac($sp) +/* 0AD8C0 800ACCC0 8E220000 */ lw $v0, ($s1) +/* 0AD8C4 800ACCC4 00000000 */ nop +/* 0AD8C8 800ACCC8 24580008 */ addiu $t8, $v0, 8 +/* 0AD8CC 800ACCCC AE380000 */ sw $t8, ($s1) +/* 0AD8D0 800ACCD0 AC540000 */ sw $s4, ($v0) +/* 0AD8D4 800ACCD4 920B0005 */ lbu $t3, 5($s0) +/* 0AD8D8 800ACCD8 920F0004 */ lbu $t7, 4($s0) +/* 0AD8DC 800ACCDC 000B6C00 */ sll $t5, $t3, 0x10 +/* 0AD8E0 800ACCE0 000FCE00 */ sll $t9, $t7, 0x18 +/* 0AD8E4 800ACCE4 032DC025 */ or $t8, $t9, $t5 +/* 0AD8E8 800ACCE8 92190007 */ lbu $t9, 7($s0) +/* 0AD8EC 800ACCEC 920F0006 */ lbu $t7, 6($s0) +/* 0AD8F0 800ACCF0 44994000 */ mtc1 $t9, $f8 +/* 0AD8F4 800ACCF4 000F7200 */ sll $t6, $t7, 8 +/* 0AD8F8 800ACCF8 030E5825 */ or $t3, $t8, $t6 +/* 0AD8FC 800ACCFC 07210004 */ bgez $t9, .L800ACD10 +/* 0AD900 800ACD00 46804120 */ cvt.s.w $f4, $f8 +/* 0AD904 800ACD04 44813000 */ mtc1 $at, $f6 +/* 0AD908 800ACD08 00000000 */ nop +/* 0AD90C 800ACD0C 46062100 */ add.s $f4, $f4, $f6 +.L800ACD10: +/* 0AD910 800ACD10 46162282 */ mul.s $f10, $f4, $f22 +/* 0AD914 800ACD14 02202025 */ move $a0, $s1 +/* 0AD918 800ACD18 02A02825 */ move $a1, $s5 +/* 0AD91C 800ACD1C 02E03025 */ move $a2, $s7 +/* 0AD920 800ACD20 444DF800 */ cfc1 $t5, $31 +/* 0AD924 800ACD24 02603825 */ move $a3, $s3 +/* 0AD928 800ACD28 35A10003 */ ori $at, $t5, 3 +/* 0AD92C 800ACD2C 38210002 */ xori $at, $at, 2 +/* 0AD930 800ACD30 44C1F800 */ ctc1 $at, $31 +/* 0AD934 800ACD34 00000000 */ nop +/* 0AD938 800ACD38 46005224 */ cvt.w.s $f8, $f10 +/* 0AD93C 800ACD3C 440C4000 */ mfc1 $t4, $f8 +/* 0AD940 800ACD40 44CDF800 */ ctc1 $t5, $31 +/* 0AD944 800ACD44 318F00FF */ andi $t7, $t4, 0xff +/* 0AD948 800ACD48 016FC025 */ or $t8, $t3, $t7 +/* 0AD94C 800ACD4C AC580004 */ sw $t8, 4($v0) +/* 0AD950 800ACD50 8ECE0000 */ lw $t6, ($s6) +/* 0AD954 800ACD54 8E0D0000 */ lw $t5, ($s0) +/* 0AD958 800ACD58 8DD90068 */ lw $t9, 0x68($t6) +/* 0AD95C 800ACD5C 000D6080 */ sll $t4, $t5, 2 +/* 0AD960 800ACD60 032C5821 */ addu $t3, $t9, $t4 +/* 0AD964 800ACD64 8D6F0000 */ lw $t7, ($t3) +/* 0AD968 800ACD68 24180104 */ li $t8, 260 +/* 0AD96C 800ACD6C AFB80014 */ sw $t8, 0x14($sp) +/* 0AD970 800ACD70 0C01A145 */ jal func_80068514 +/* 0AD974 800ACD74 AFAF0010 */ sw $t7, 0x10($sp) +/* 0AD978 800ACD78 8E0E0010 */ lw $t6, 0x10($s0) +/* 0AD97C 800ACD7C 26100010 */ addiu $s0, $s0, 0x10 +/* 0AD980 800ACD80 1DC0FFAF */ bgtz $t6, .L800ACC40 +/* 0AD984 800ACD84 00000000 */ nop +/* 0AD988 800ACD88 24020001 */ li $v0, 1 +.L800ACD8C: +/* 0AD98C 800ACD8C 16420019 */ bne $s2, $v0, .L800ACDF4 +/* 0AD990 800ACD90 24010003 */ li $at, 3 +/* 0AD994 800ACD94 C7CC0000 */ lwc1 $f12, ($fp) +/* 0AD998 800ACD98 C7A600D8 */ lwc1 $f6, 0xd8($sp) +/* 0AD99C 800ACD9C C7CE0004 */ lwc1 $f14, 4($fp) +/* 0AD9A0 800ACDA0 460C3102 */ mul.s $f4, $f6, $f12 +/* 0AD9A4 800ACDA4 C7AA00DC */ lwc1 $f10, 0xdc($sp) +/* 0AD9A8 800ACDA8 C7C20008 */ lwc1 $f2, 8($fp) +/* 0AD9AC 800ACDAC E7A60060 */ swc1 $f6, 0x60($sp) +/* 0AD9B0 800ACDB0 460E5202 */ mul.s $f8, $f10, $f14 +/* 0AD9B4 800ACDB4 46082100 */ add.s $f4, $f4, $f8 +/* 0AD9B8 800ACDB8 C7A800E0 */ lwc1 $f8, 0xe0($sp) +/* 0AD9BC 800ACDBC 00000000 */ nop +/* 0AD9C0 800ACDC0 46081182 */ mul.s $f6, $f2, $f8 +/* 0AD9C4 800ACDC4 46043180 */ add.s $f6, $f6, $f4 +/* 0AD9C8 800ACDC8 46183002 */ mul.s $f0, $f6, $f24 +/* 0AD9CC 800ACDCC C7A60060 */ lwc1 $f6, 0x60($sp) +/* 0AD9D0 800ACDD0 460C0102 */ mul.s $f4, $f0, $f12 +/* 0AD9D4 800ACDD4 46062101 */ sub.s $f4, $f4, $f6 +/* 0AD9D8 800ACDD8 460E0182 */ mul.s $f6, $f0, $f14 +/* 0AD9DC 800ACDDC E7A400D8 */ swc1 $f4, 0xd8($sp) +/* 0AD9E0 800ACDE0 460A3101 */ sub.s $f4, $f6, $f10 +/* 0AD9E4 800ACDE4 46020182 */ mul.s $f6, $f0, $f2 +/* 0AD9E8 800ACDE8 E7A400DC */ swc1 $f4, 0xdc($sp) +/* 0AD9EC 800ACDEC 46083281 */ sub.s $f10, $f6, $f8 +/* 0AD9F0 800ACDF0 E7AA00E0 */ swc1 $f10, 0xe0($sp) +.L800ACDF4: +/* 0AD9F4 800ACDF4 26520001 */ addiu $s2, $s2, 1 +/* 0AD9F8 800ACDF8 1641FF7E */ bne $s2, $at, .L800ACBF4 +/* 0AD9FC 800ACDFC 00000000 */ nop +/* 0ADA00 800ACE00 0C01E948 */ jal func_8007A520 +/* 0ADA04 800ACE04 00000000 */ nop +/* 0ADA08 800ACE08 8E230000 */ lw $v1, ($s1) +/* 0ADA0C 800ACE0C 8FAA0098 */ lw $t2, 0x98($sp) +/* 0ADA10 800ACE10 00602025 */ move $a0, $v1 +/* 0ADA14 800ACE14 3C0C800E */ lui $t4, %hi(D_800E2928) # $t4, 0x800e +/* 0ADA18 800ACE18 258C2928 */ addiu $t4, %lo(D_800E2928) # addiu $t4, $t4, 0x2928 +/* 0ADA1C 800ACE1C 3C190600 */ lui $t9, 0x600 +/* 0ADA20 800ACE20 24630008 */ addiu $v1, $v1, 8 +/* 0ADA24 800ACE24 00024403 */ sra $t0, $v0, 0x10 +/* 0ADA28 800ACE28 AC990000 */ sw $t9, ($a0) +/* 0ADA2C 800ACE2C AC8C0004 */ sw $t4, 4($a0) +/* 0ADA30 800ACE30 00602825 */ move $a1, $v1 +/* 0ADA34 800ACE34 310DFFFF */ andi $t5, $t0, 0xffff +/* 0ADA38 800ACE38 ACB40000 */ sw $s4, ($a1) +/* 0ADA3C 800ACE3C 01A04025 */ move $t0, $t5 +/* 0ADA40 800ACE40 914D0011 */ lbu $t5, 0x11($t2) +/* 0ADA44 800ACE44 914F0010 */ lbu $t7, 0x10($t2) +/* 0ADA48 800ACE48 000DCC00 */ sll $t9, $t5, 0x10 +/* 0ADA4C 800ACE4C 000FC600 */ sll $t8, $t7, 0x18 +/* 0ADA50 800ACE50 03196025 */ or $t4, $t8, $t9 +/* 0ADA54 800ACE54 91580013 */ lbu $t8, 0x13($t2) +/* 0ADA58 800ACE58 914F0012 */ lbu $t7, 0x12($t2) +/* 0ADA5C 800ACE5C 44982000 */ mtc1 $t8, $f4 +/* 0ADA60 800ACE60 000F7200 */ sll $t6, $t7, 8 +/* 0ADA64 800ACE64 3049FFFF */ andi $t1, $v0, 0xffff +/* 0ADA68 800ACE68 018E6825 */ or $t5, $t4, $t6 +/* 0ADA6C 800ACE6C 24630008 */ addiu $v1, $v1, 8 +/* 0ADA70 800ACE70 07010005 */ bgez $t8, .L800ACE88 +/* 0ADA74 800ACE74 468021A0 */ cvt.s.w $f6, $f4 +/* 0ADA78 800ACE78 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0ADA7C 800ACE7C 44814000 */ mtc1 $at, $f8 +/* 0ADA80 800ACE80 00000000 */ nop +/* 0ADA84 800ACE84 46083180 */ add.s $f6, $f6, $f8 +.L800ACE88: +/* 0ADA88 800ACE88 46163282 */ mul.s $f10, $f6, $f22 +/* 0ADA8C 800ACE8C 00603025 */ move $a2, $v1 +/* 0ADA90 800ACE90 3C0EFCFF */ lui $t6, (0xFCFFFFFF >> 16) # lui $t6, 0xfcff +/* 0ADA94 800ACE94 3C18FFFD */ lui $t8, (0xFFFDF6FB >> 16) # lui $t8, 0xfffd +/* 0ADA98 800ACE98 4459F800 */ cfc1 $t9, $31 +/* 0ADA9C 800ACE9C 3718F6FB */ ori $t8, (0xFFFDF6FB & 0xFFFF) # ori $t8, $t8, 0xf6fb +/* 0ADAA0 800ACEA0 37210003 */ ori $at, $t9, 3 +/* 0ADAA4 800ACEA4 38210002 */ xori $at, $at, 2 +/* 0ADAA8 800ACEA8 44C1F800 */ ctc1 $at, $31 +/* 0ADAAC 800ACEAC 35CEFFFF */ ori $t6, (0xFCFFFFFF & 0xFFFF) # ori $t6, $t6, 0xffff +/* 0ADAB0 800ACEB0 46005124 */ cvt.w.s $f4, $f10 +/* 0ADAB4 800ACEB4 24670008 */ addiu $a3, $v1, 8 +/* 0ADAB8 800ACEB8 440B2000 */ mfc1 $t3, $f4 +/* 0ADABC 800ACEBC 44D9F800 */ ctc1 $t9, $31 +/* 0ADAC0 800ACEC0 316F00FF */ andi $t7, $t3, 0xff +/* 0ADAC4 800ACEC4 01AF6025 */ or $t4, $t5, $t7 +/* 0ADAC8 800ACEC8 ACAC0004 */ sw $t4, 4($a1) +/* 0ADACC 800ACECC 313903FF */ andi $t9, $t1, 0x3ff +/* 0ADAD0 800ACED0 ACD80004 */ sw $t8, 4($a2) +/* 0ADAD4 800ACED4 ACCE0000 */ sw $t6, ($a2) +/* 0ADAD8 800ACED8 00195B80 */ sll $t3, $t9, 0xe +/* 0ADADC 800ACEDC 310F03FF */ andi $t7, $t0, 0x3ff +/* 0ADAE0 800ACEE0 3C01F600 */ lui $at, 0xf600 +/* 0ADAE4 800ACEE4 01616825 */ or $t5, $t3, $at +/* 0ADAE8 800ACEE8 000F6080 */ sll $t4, $t7, 2 +/* 0ADAEC 800ACEEC 01AC7025 */ or $t6, $t5, $t4 +/* 0ADAF0 800ACEF0 24E20008 */ addiu $v0, $a3, 8 +/* 0ADAF4 800ACEF4 ACEE0000 */ sw $t6, ($a3) +/* 0ADAF8 800ACEF8 ACE00004 */ sw $zero, 4($a3) +/* 0ADAFC 800ACEFC 3C18E700 */ lui $t8, 0xe700 +/* 0ADB00 800ACF00 AC580000 */ sw $t8, ($v0) +/* 0ADB04 800ACF04 AC400004 */ sw $zero, 4($v0) +/* 0ADB08 800ACF08 24430008 */ addiu $v1, $v0, 8 +/* 0ADB0C 800ACF0C AE230000 */ sw $v1, ($s1) +/* 0ADB10 800ACF10 0C01ECF4 */ jal func_8007B3D0 +/* 0ADB14 800ACF14 02202025 */ move $a0, $s1 +.L800ACF18: +/* 0ADB18 800ACF18 8FBF005C */ lw $ra, 0x5c($sp) +.L800ACF1C: +/* 0ADB1C 800ACF1C C7B50020 */ lwc1 $f21, 0x20($sp) +/* 0ADB20 800ACF20 C7B40024 */ lwc1 $f20, 0x24($sp) +/* 0ADB24 800ACF24 C7B70028 */ lwc1 $f23, 0x28($sp) +/* 0ADB28 800ACF28 C7B6002C */ lwc1 $f22, 0x2c($sp) +/* 0ADB2C 800ACF2C C7B90030 */ lwc1 $f25, 0x30($sp) +/* 0ADB30 800ACF30 C7B80034 */ lwc1 $f24, 0x34($sp) +/* 0ADB34 800ACF34 8FB00038 */ lw $s0, 0x38($sp) +/* 0ADB38 800ACF38 8FB1003C */ lw $s1, 0x3c($sp) +/* 0ADB3C 800ACF3C 8FB20040 */ lw $s2, 0x40($sp) +/* 0ADB40 800ACF40 8FB30044 */ lw $s3, 0x44($sp) +/* 0ADB44 800ACF44 8FB40048 */ lw $s4, 0x48($sp) +/* 0ADB48 800ACF48 8FB5004C */ lw $s5, 0x4c($sp) +/* 0ADB4C 800ACF4C 8FB60050 */ lw $s6, 0x50($sp) +/* 0ADB50 800ACF50 8FB70054 */ lw $s7, 0x54($sp) +/* 0ADB54 800ACF54 8FBE0058 */ lw $fp, 0x58($sp) +/* 0ADB58 800ACF58 03E00008 */ jr $ra +/* 0ADB5C 800ACF5C 27BD00F0 */ addiu $sp, $sp, 0xf0 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800ACF60.s b/asm/non_matchings/unknown_09F8F0/func_800ACF60.s new file mode 100644 index 00000000..06fadc1d --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800ACF60.s @@ -0,0 +1,17 @@ +glabel func_800ACF60 +/* 0ADB60 800ACF60 3C03800E */ lui $v1, %hi(D_800E2A88) # $v1, 0x800e +/* 0ADB64 800ACF64 24632A88 */ addiu $v1, %lo(D_800E2A88) # addiu $v1, $v1, 0x2a88 +/* 0ADB68 800ACF68 8C620000 */ lw $v0, ($v1) +/* 0ADB6C 800ACF6C 00000000 */ nop +/* 0ADB70 800ACF70 28410010 */ slti $at, $v0, 0x10 +/* 0ADB74 800ACF74 10200006 */ beqz $at, .L800ACF90 +/* 0ADB78 800ACF78 00027080 */ sll $t6, $v0, 2 +/* 0ADB7C 800ACF7C 3C018012 */ lui $at, 0x8012 +/* 0ADB80 800ACF80 002E0821 */ addu $at, $at, $t6 +/* 0ADB84 800ACF84 AC247C40 */ sw $a0, 0x7c40($at) +/* 0ADB88 800ACF88 244F0001 */ addiu $t7, $v0, 1 +/* 0ADB8C 800ACF8C AC6F0000 */ sw $t7, ($v1) +.L800ACF90: +/* 0ADB90 800ACF90 03E00008 */ jr $ra +/* 0ADB94 800ACF94 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800ACF98.s b/asm/non_matchings/unknown_09F8F0/func_800ACF98.s new file mode 100644 index 00000000..969677c1 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800ACF98.s @@ -0,0 +1,45 @@ +glabel func_800ACF98 +/* 0ADB98 800ACF98 3C07800E */ lui $a3, %hi(D_800E2A88) # $a3, 0x800e +/* 0ADB9C 800ACF9C 24E72A88 */ addiu $a3, %lo(D_800E2A88) # addiu $a3, $a3, 0x2a88 +/* 0ADBA0 800ACFA0 8CE50000 */ lw $a1, ($a3) +/* 0ADBA4 800ACFA4 00001025 */ move $v0, $zero +/* 0ADBA8 800ACFA8 18A0000E */ blez $a1, .L800ACFE4 +/* 0ADBAC 800ACFAC 00001825 */ move $v1, $zero +/* 0ADBB0 800ACFB0 3C0F8012 */ lui $t7, %hi(D_80127C40) # $t7, 0x8012 +/* 0ADBB4 800ACFB4 25EF7C40 */ addiu $t7, %lo(D_80127C40) # addiu $t7, $t7, 0x7c40 +/* 0ADBB8 800ACFB8 00007080 */ sll $t6, $zero, 2 +/* 0ADBBC 800ACFBC 01CF3021 */ addu $a2, $t6, $t7 +.L800ACFC0: +/* 0ADBC0 800ACFC0 8CD80000 */ lw $t8, ($a2) +/* 0ADBC4 800ACFC4 24630001 */ addiu $v1, $v1, 1 +/* 0ADBC8 800ACFC8 14980002 */ bne $a0, $t8, .L800ACFD4 +/* 0ADBCC 800ACFCC 0065082A */ slt $at, $v1, $a1 +/* 0ADBD0 800ACFD0 24020001 */ li $v0, 1 +.L800ACFD4: +/* 0ADBD4 800ACFD4 10200003 */ beqz $at, .L800ACFE4 +/* 0ADBD8 800ACFD8 24C60004 */ addiu $a2, $a2, 4 +/* 0ADBDC 800ACFDC 1040FFF8 */ beqz $v0, .L800ACFC0 +/* 0ADBE0 800ACFE0 00000000 */ nop +.L800ACFE4: +/* 0ADBE4 800ACFE4 10400010 */ beqz $v0, .L800AD028 +/* 0ADBE8 800ACFE8 24B9FFFF */ addiu $t9, $a1, -1 +/* 0ADBEC 800ACFEC 2463FFFF */ addiu $v1, $v1, -1 +/* 0ADBF0 800ACFF0 0079082A */ slt $at, $v1, $t9 +/* 0ADBF4 800ACFF4 1020000C */ beqz $at, .L800AD028 +/* 0ADBF8 800ACFF8 ACF90000 */ sw $t9, ($a3) +/* 0ADBFC 800ACFFC 3C098012 */ lui $t1, %hi(D_80127C40) # $t1, 0x8012 +/* 0ADC00 800AD000 25297C40 */ addiu $t1, %lo(D_80127C40) # addiu $t1, $t1, 0x7c40 +/* 0ADC04 800AD004 00034080 */ sll $t0, $v1, 2 +/* 0ADC08 800AD008 00195080 */ sll $t2, $t9, 2 +/* 0ADC0C 800AD00C 01491021 */ addu $v0, $t2, $t1 +/* 0ADC10 800AD010 01093021 */ addu $a2, $t0, $t1 +.L800AD014: +/* 0ADC14 800AD014 8CCB0004 */ lw $t3, 4($a2) +/* 0ADC18 800AD018 24C60004 */ addiu $a2, $a2, 4 +/* 0ADC1C 800AD01C 00C2082B */ sltu $at, $a2, $v0 +/* 0ADC20 800AD020 1420FFFC */ bnez $at, .L800AD014 +/* 0ADC24 800AD024 ACCBFFFC */ sw $t3, -4($a2) +.L800AD028: +/* 0ADC28 800AD028 03E00008 */ jr $ra +/* 0ADC2C 800AD02C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AD030.s b/asm/non_matchings/unknown_09F8F0/func_800AD030.s new file mode 100644 index 00000000..5665d920 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AD030.s @@ -0,0 +1,75 @@ +glabel func_800AD030 +/* 0ADC30 800AD030 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0ADC34 800AD034 AFB60030 */ sw $s6, 0x30($sp) +/* 0ADC38 800AD038 3C16800E */ lui $s6, %hi(D_800E2A88) # $s6, 0x800e +/* 0ADC3C 800AD03C 26D62A88 */ addiu $s6, %lo(D_800E2A88) # addiu $s6, $s6, 0x2a88 +/* 0ADC40 800AD040 AFB5002C */ sw $s5, 0x2c($sp) +/* 0ADC44 800AD044 8EC20000 */ lw $v0, ($s6) +/* 0ADC48 800AD048 3C15800E */ lui $s5, %hi(D_800E2A84) # $s5, 0x800e +/* 0ADC4C 800AD04C 26B52A84 */ addiu $s5, %lo(D_800E2A84) # addiu $s5, $s5, 0x2a84 +/* 0ADC50 800AD050 AFB30024 */ sw $s3, 0x24($sp) +/* 0ADC54 800AD054 00809825 */ move $s3, $a0 +/* 0ADC58 800AD058 AFBF0034 */ sw $ra, 0x34($sp) +/* 0ADC5C 800AD05C AFB40028 */ sw $s4, 0x28($sp) +/* 0ADC60 800AD060 AFB20020 */ sw $s2, 0x20($sp) +/* 0ADC64 800AD064 AFB1001C */ sw $s1, 0x1c($sp) +/* 0ADC68 800AD068 AFB00018 */ sw $s0, 0x18($sp) +/* 0ADC6C 800AD06C 1840002B */ blez $v0, .L800AD11C +/* 0ADC70 800AD070 AEA00000 */ sw $zero, ($s5) +/* 0ADC74 800AD074 3C0E800E */ lui $t6, %hi(D_800E2A80) # $t6, 0x800e +/* 0ADC78 800AD078 8DCE2A80 */ lw $t6, %lo(D_800E2A80)($t6) +/* 0ADC7C 800AD07C 00000000 */ nop +/* 0ADC80 800AD080 11C00027 */ beqz $t6, .L800AD120 +/* 0ADC84 800AD084 8FBF0034 */ lw $ra, 0x34($sp) +/* 0ADC88 800AD088 18400024 */ blez $v0, .L800AD11C +/* 0ADC8C 800AD08C 00008825 */ move $s1, $zero +/* 0ADC90 800AD090 3C108012 */ lui $s0, %hi(D_80127C40) # $s0, 0x8012 +/* 0ADC94 800AD094 26107C40 */ addiu $s0, %lo(D_80127C40) # addiu $s0, $s0, 0x7c40 +/* 0ADC98 800AD098 24140001 */ li $s4, 1 +.L800AD09C: +/* 0ADC9C 800AD09C 8E020000 */ lw $v0, ($s0) +/* 0ADCA0 800AD0A0 C664000C */ lwc1 $f4, 0xc($s3) +/* 0ADCA4 800AD0A4 C446000C */ lwc1 $f6, 0xc($v0) +/* 0ADCA8 800AD0A8 C6680010 */ lwc1 $f8, 0x10($s3) +/* 0ADCAC 800AD0AC 46062001 */ sub.s $f0, $f4, $f6 +/* 0ADCB0 800AD0B0 C44A0010 */ lwc1 $f10, 0x10($v0) +/* 0ADCB4 800AD0B4 46000102 */ mul.s $f4, $f0, $f0 +/* 0ADCB8 800AD0B8 460A4081 */ sub.s $f2, $f8, $f10 +/* 0ADCBC 800AD0BC C6700014 */ lwc1 $f16, 0x14($s3) +/* 0ADCC0 800AD0C0 C4520014 */ lwc1 $f18, 0x14($v0) +/* 0ADCC4 800AD0C4 46021182 */ mul.s $f6, $f2, $f2 +/* 0ADCC8 800AD0C8 46128381 */ sub.s $f14, $f16, $f18 +/* 0ADCCC 800AD0CC 8C52003C */ lw $s2, 0x3c($v0) +/* 0ADCD0 800AD0D0 460E7282 */ mul.s $f10, $f14, $f14 +/* 0ADCD4 800AD0D4 46062200 */ add.s $f8, $f4, $f6 +/* 0ADCD8 800AD0D8 0C0326B4 */ jal sqrtf +/* 0ADCDC 800AD0DC 460A4300 */ add.s $f12, $f8, $f10 +/* 0ADCE0 800AD0E0 864F0008 */ lh $t7, 8($s2) +/* 0ADCE4 800AD0E4 00000000 */ nop +/* 0ADCE8 800AD0E8 448F8000 */ mtc1 $t7, $f16 +/* 0ADCEC 800AD0EC 00000000 */ nop +/* 0ADCF0 800AD0F0 468084A0 */ cvt.s.w $f18, $f16 +/* 0ADCF4 800AD0F4 4612003C */ c.lt.s $f0, $f18 +/* 0ADCF8 800AD0F8 00000000 */ nop +/* 0ADCFC 800AD0FC 45000002 */ bc1f .L800AD108 +/* 0ADD00 800AD100 00000000 */ nop +/* 0ADD04 800AD104 AEB40000 */ sw $s4, ($s5) +.L800AD108: +/* 0ADD08 800AD108 8ED80000 */ lw $t8, ($s6) +/* 0ADD0C 800AD10C 26310001 */ addiu $s1, $s1, 1 +/* 0ADD10 800AD110 0238082A */ slt $at, $s1, $t8 +/* 0ADD14 800AD114 1420FFE1 */ bnez $at, .L800AD09C +/* 0ADD18 800AD118 26100004 */ addiu $s0, $s0, 4 +.L800AD11C: +/* 0ADD1C 800AD11C 8FBF0034 */ lw $ra, 0x34($sp) +.L800AD120: +/* 0ADD20 800AD120 8FB00018 */ lw $s0, 0x18($sp) +/* 0ADD24 800AD124 8FB1001C */ lw $s1, 0x1c($sp) +/* 0ADD28 800AD128 8FB20020 */ lw $s2, 0x20($sp) +/* 0ADD2C 800AD12C 8FB30024 */ lw $s3, 0x24($sp) +/* 0ADD30 800AD130 8FB40028 */ lw $s4, 0x28($sp) +/* 0ADD34 800AD134 8FB5002C */ lw $s5, 0x2c($sp) +/* 0ADD38 800AD138 8FB60030 */ lw $s6, 0x30($sp) +/* 0ADD3C 800AD13C 03E00008 */ jr $ra +/* 0ADD40 800AD140 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AD144.s b/asm/non_matchings/unknown_09F8F0/func_800AD144.s new file mode 100644 index 00000000..a5312c28 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AD144.s @@ -0,0 +1,57 @@ +glabel func_800AD144 +/* 0ADD44 800AD144 3C02800E */ lui $v0, %hi(D_800E2C60) # $v0, 0x800e +/* 0ADD48 800AD148 24422C60 */ addiu $v0, %lo(D_800E2C60) # addiu $v0, $v0, 0x2c60 +/* 0ADD4C 800AD14C AC440000 */ sw $a0, ($v0) +/* 0ADD50 800AD150 3C01800E */ lui $at, %hi(D_800E2C64) # $at, 0x800e +/* 0ADD54 800AD154 AC202C64 */ sw $zero, %lo(D_800E2C64)($at) +/* 0ADD58 800AD158 8C4E0000 */ lw $t6, ($v0) +/* 0ADD5C 800AD15C 3C01800E */ lui $at, %hi(D_800E2C68) # $at, 0x800e +/* 0ADD60 800AD160 3C03800E */ lui $v1, %hi(D_800E2C6C) # $v1, 0x800e +/* 0ADD64 800AD164 AC2E2C68 */ sw $t6, %lo(D_800E2C68)($at) +/* 0ADD68 800AD168 24632C6C */ addiu $v1, %lo(D_800E2C6C) # addiu $v1, $v1, 0x2c6c +/* 0ADD6C 800AD16C AC650000 */ sw $a1, ($v1) +/* 0ADD70 800AD170 3C01800E */ lui $at, %hi(D_800E2C70) # $at, 0x800e +/* 0ADD74 800AD174 AC202C70 */ sw $zero, %lo(D_800E2C70)($at) +/* 0ADD78 800AD178 8C6F0000 */ lw $t7, ($v1) +/* 0ADD7C 800AD17C 3C01800E */ lui $at, %hi(D_800E2C74) # $at, 0x800e +/* 0ADD80 800AD180 AC2F2C74 */ sw $t7, %lo(D_800E2C74)($at) +/* 0ADD84 800AD184 3C01800E */ lui $at, %hi(D_800E2C78) # $at, 0x800e +/* 0ADD88 800AD188 AC202C78 */ sw $zero, %lo(D_800E2C78)($at) +/* 0ADD8C 800AD18C 3C01800E */ lui $at, %hi(D_800E2C7C) # $at, 0x800e +/* 0ADD90 800AD190 AC202C7C */ sw $zero, %lo(D_800E2C7C)($at) +/* 0ADD94 800AD194 3C01800E */ lui $at, %hi(D_800E2C80) # $at, 0x800e +/* 0ADD98 800AD198 AC202C80 */ sw $zero, %lo(D_800E2C80)($at) +/* 0ADD9C 800AD19C 3C01800E */ lui $at, %hi(D_800E2C84) # $at, 0x800e +/* 0ADDA0 800AD1A0 AC202C84 */ sw $zero, %lo(D_800E2C84)($at) +/* 0ADDA4 800AD1A4 3C18800E */ lui $t8, %hi(D_800E291C) # $t8, 0x800e +/* 0ADDA8 800AD1A8 8F18291C */ lw $t8, %lo(D_800E291C)($t8) +/* 0ADDAC 800AD1AC 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0ADDB0 800AD1B0 3C01800E */ lui $at, %hi(D_800E2C90) # $at, 0x800e +/* 0ADDB4 800AD1B4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0ADDB8 800AD1B8 AC202C90 */ sw $zero, %lo(D_800E2C90)($at) +/* 0ADDBC 800AD1BC 8F040004 */ lw $a0, 4($t8) +/* 0ADDC0 800AD1C0 0C01EB9D */ jal func_8007AE74 +/* 0ADDC4 800AD1C4 00000000 */ nop +/* 0ADDC8 800AD1C8 3C19800E */ lui $t9, %hi(D_800E291C) # $t9, 0x800e +/* 0ADDCC 800AD1CC 8F39291C */ lw $t9, %lo(D_800E291C)($t9) +/* 0ADDD0 800AD1D0 3C01800E */ lui $at, %hi(D_800E2C38) # $at, 0x800e +/* 0ADDD4 800AD1D4 AC222C38 */ sw $v0, %lo(D_800E2C38)($at) +/* 0ADDD8 800AD1D8 8F240004 */ lw $a0, 4($t9) +/* 0ADDDC 800AD1DC 0C01EB9D */ jal func_8007AE74 +/* 0ADDE0 800AD1E0 00000000 */ nop +/* 0ADDE4 800AD1E4 3C08800E */ lui $t0, %hi(D_800E291C) # $t0, 0x800e +/* 0ADDE8 800AD1E8 8D08291C */ lw $t0, %lo(D_800E291C)($t0) +/* 0ADDEC 800AD1EC 3C01800E */ lui $at, %hi(D_800E2C50) # $at, 0x800e +/* 0ADDF0 800AD1F0 AC222C50 */ sw $v0, %lo(D_800E2C50)($at) +/* 0ADDF4 800AD1F4 8D04000C */ lw $a0, 0xc($t0) +/* 0ADDF8 800AD1F8 0C01F04B */ jal func_8007C12C +/* 0ADDFC 800AD1FC 00002825 */ move $a1, $zero +/* 0ADE00 800AD200 3C01800E */ lui $at, %hi(D_800E2C8C) # $at, 0x800e +/* 0ADE04 800AD204 8FBF0014 */ lw $ra, 0x14($sp) +/* 0ADE08 800AD208 AC222C8C */ sw $v0, %lo(D_800E2C8C)($at) +/* 0ADE0C 800AD20C 3C01800E */ lui $at, %hi(D_800E2C5C) # $at, 0x800e +/* 0ADE10 800AD210 24090001 */ li $t1, 1 +/* 0ADE14 800AD214 AC292C5C */ sw $t1, %lo(D_800E2C5C)($at) +/* 0ADE18 800AD218 03E00008 */ jr $ra +/* 0ADE1C 800AD21C 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AD220.s b/asm/non_matchings/unknown_09F8F0/func_800AD220.s new file mode 100644 index 00000000..b7935527 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AD220.s @@ -0,0 +1,47 @@ +glabel func_800AD220 +/* 0ADE20 800AD220 3C04800E */ lui $a0, %hi(D_800E2C38) # $a0, 0x800e +/* 0ADE24 800AD224 8C842C38 */ lw $a0, %lo(D_800E2C38)($a0) +/* 0ADE28 800AD228 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0ADE2C 800AD22C 10800005 */ beqz $a0, .L800AD244 +/* 0ADE30 800AD230 AFBF0014 */ sw $ra, 0x14($sp) +/* 0ADE34 800AD234 0C01ECAF */ jal func_8007B2BC +/* 0ADE38 800AD238 00000000 */ nop +/* 0ADE3C 800AD23C 3C01800E */ lui $at, %hi(D_800E2C88) # $at, 0x800e +/* 0ADE40 800AD240 AC202C88 */ sw $zero, %lo(D_800E2C88)($at) +.L800AD244: +/* 0ADE44 800AD244 3C04800E */ lui $a0, %hi(D_800E2C50) # $a0, 0x800e +/* 0ADE48 800AD248 8C842C50 */ lw $a0, %lo(D_800E2C50)($a0) +/* 0ADE4C 800AD24C 00000000 */ nop +/* 0ADE50 800AD250 10800005 */ beqz $a0, .L800AD268 +/* 0ADE54 800AD254 00000000 */ nop +/* 0ADE58 800AD258 0C01ECAF */ jal func_8007B2BC +/* 0ADE5C 800AD25C 00000000 */ nop +/* 0ADE60 800AD260 3C01800E */ lui $at, %hi(D_800E2C88) # $at, 0x800e +/* 0ADE64 800AD264 AC202C88 */ sw $zero, %lo(D_800E2C88)($at) +.L800AD268: +/* 0ADE68 800AD268 3C04800E */ lui $a0, %hi(D_800E2C8C) # $a0, 0x800e +/* 0ADE6C 800AD26C 8C842C8C */ lw $a0, %lo(D_800E2C8C)($a0) +/* 0ADE70 800AD270 00000000 */ nop +/* 0ADE74 800AD274 10800005 */ beqz $a0, .L800AD28C +/* 0ADE78 800AD278 00000000 */ nop +/* 0ADE7C 800AD27C 0C01F32C */ jal func_8007CCB0 +/* 0ADE80 800AD280 00000000 */ nop +/* 0ADE84 800AD284 3C01800E */ lui $at, %hi(D_800E2C8C) # $at, 0x800e +/* 0ADE88 800AD288 AC202C8C */ sw $zero, %lo(D_800E2C8C)($at) +.L800AD28C: +/* 0ADE8C 800AD28C 3C04800E */ lui $a0, %hi(D_800E2C94) # $a0, 0x800e +/* 0ADE90 800AD290 8C842C94 */ lw $a0, %lo(D_800E2C94)($a0) +/* 0ADE94 800AD294 00000000 */ nop +/* 0ADE98 800AD298 10800006 */ beqz $a0, .L800AD2B4 +/* 0ADE9C 800AD29C 8FBF0014 */ lw $ra, 0x14($sp) +/* 0ADEA0 800AD2A0 0C0025BE */ jal func_800096F8 +/* 0ADEA4 800AD2A4 00000000 */ nop +/* 0ADEA8 800AD2A8 3C01800E */ lui $at, %hi(D_800E2C94) # $at, 0x800e +/* 0ADEAC 800AD2AC AC202C94 */ sw $zero, %lo(D_800E2C94)($at) +/* 0ADEB0 800AD2B0 8FBF0014 */ lw $ra, 0x14($sp) +.L800AD2B4: +/* 0ADEB4 800AD2B4 3C01800E */ lui $at, %hi(D_800E2C5C) # $at, 0x800e +/* 0ADEB8 800AD2B8 AC202C5C */ sw $zero, %lo(D_800E2C5C)($at) +/* 0ADEBC 800AD2BC 03E00008 */ jr $ra +/* 0ADEC0 800AD2C0 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AD2C4.s b/asm/non_matchings/unknown_09F8F0/func_800AD2C4.s new file mode 100644 index 00000000..2a3b6cde --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AD2C4.s @@ -0,0 +1,90 @@ +glabel func_800AD2C4 +/* 0ADEC4 800AD2C4 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 +/* 0ADEC8 800AD2C8 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) +/* 0ADECC 800AD2CC 44866000 */ mtc1 $a2, $f12 +/* 0ADED0 800AD2D0 15C00012 */ bnez $t6, .L800AD31C +/* 0ADED4 800AD2D4 3C06800E */ lui $a2, %hi(D_800E2C68) # $a2, 0x800e +/* 0ADED8 800AD2D8 3C014049 */ li $at, 0x40490000 # 3.140625 +/* 0ADEDC 800AD2DC 44813800 */ mtc1 $at, $f7 +/* 0ADEE0 800AD2E0 44803000 */ mtc1 $zero, $f6 +/* 0ADEE4 800AD2E4 46006121 */ cvt.d.s $f4, $f12 +/* 0ADEE8 800AD2E8 46262202 */ mul.d $f8, $f4, $f6 +/* 0ADEEC 800AD2EC 3C03800E */ lui $v1, %hi(D_800E2C78) # $v1, 0x800e +/* 0ADEF0 800AD2F0 24632C78 */ addiu $v1, %lo(D_800E2C78) # addiu $v1, $v1, 0x2c78 +/* 0ADEF4 800AD2F4 444FF800 */ cfc1 $t7, $31 +/* 0ADEF8 800AD2F8 00000000 */ nop +/* 0ADEFC 800AD2FC 35E10003 */ ori $at, $t7, 3 +/* 0ADF00 800AD300 38210002 */ xori $at, $at, 2 +/* 0ADF04 800AD304 44C1F800 */ ctc1 $at, $31 +/* 0ADF08 800AD308 00000000 */ nop +/* 0ADF0C 800AD30C 462042A4 */ cvt.w.d $f10, $f8 +/* 0ADF10 800AD310 44CFF800 */ ctc1 $t7, $31 +/* 0ADF14 800AD314 10000012 */ b .L800AD360 +/* 0ADF18 800AD318 E46A0000 */ swc1 $f10, ($v1) +.L800AD31C: +/* 0ADF1C 800AD31C 3C01404E */ li $at, 0x404E0000 # 3.218750 +/* 0ADF20 800AD320 44819800 */ mtc1 $at, $f19 +/* 0ADF24 800AD324 44809000 */ mtc1 $zero, $f18 +/* 0ADF28 800AD328 46006421 */ cvt.d.s $f16, $f12 +/* 0ADF2C 800AD32C 46328102 */ mul.d $f4, $f16, $f18 +/* 0ADF30 800AD330 3C03800E */ lui $v1, %hi(D_800E2C78) # $v1, 0x800e +/* 0ADF34 800AD334 24632C78 */ addiu $v1, %lo(D_800E2C78) # addiu $v1, $v1, 0x2c78 +/* 0ADF38 800AD338 4458F800 */ cfc1 $t8, $31 +/* 0ADF3C 800AD33C 00000000 */ nop +/* 0ADF40 800AD340 37010003 */ ori $at, $t8, 3 +/* 0ADF44 800AD344 38210002 */ xori $at, $at, 2 +/* 0ADF48 800AD348 44C1F800 */ ctc1 $at, $31 +/* 0ADF4C 800AD34C 00000000 */ nop +/* 0ADF50 800AD350 462021A4 */ cvt.w.d $f6, $f4 +/* 0ADF54 800AD354 44D8F800 */ ctc1 $t8, $31 +/* 0ADF58 800AD358 E4660000 */ swc1 $f6, ($v1) +/* 0ADF5C 800AD35C 00000000 */ nop +.L800AD360: +/* 0ADF60 800AD360 24C62C68 */ addiu $a2, %lo(D_800E2C68) # addiu $a2, $a2, 0x2c68 +/* 0ADF64 800AD364 ACC40000 */ sw $a0, ($a2) +/* 0ADF68 800AD368 3C08800E */ lui $t0, %hi(D_800E2C60) # $t0, 0x800e +/* 0ADF6C 800AD36C 8D082C60 */ lw $t0, %lo(D_800E2C60)($t0) +/* 0ADF70 800AD370 8C620000 */ lw $v0, ($v1) +/* 0ADF74 800AD374 00884823 */ subu $t1, $a0, $t0 +/* 0ADF78 800AD378 0122001A */ div $zero, $t1, $v0 +/* 0ADF7C 800AD37C 3C07800E */ lui $a3, %hi(D_800E2C74) # $a3, 0x800e +/* 0ADF80 800AD380 24E72C74 */ addiu $a3, %lo(D_800E2C74) # addiu $a3, $a3, 0x2c74 +/* 0ADF84 800AD384 3C0C800E */ lui $t4, %hi(D_800E2C6C) # $t4, 0x800e +/* 0ADF88 800AD388 0080C825 */ move $t9, $a0 +/* 0ADF8C 800AD38C 14400002 */ bnez $v0, .L800AD398 +/* 0ADF90 800AD390 00000000 */ nop +/* 0ADF94 800AD394 0007000D */ break 7 +.L800AD398: +/* 0ADF98 800AD398 2401FFFF */ li $at, -1 +/* 0ADF9C 800AD39C 14410004 */ bne $v0, $at, .L800AD3B0 +/* 0ADFA0 800AD3A0 3C018000 */ lui $at, 0x8000 +/* 0ADFA4 800AD3A4 15210002 */ bne $t1, $at, .L800AD3B0 +/* 0ADFA8 800AD3A8 00000000 */ nop +/* 0ADFAC 800AD3AC 0006000D */ break 6 +.L800AD3B0: +/* 0ADFB0 800AD3B0 3C01800E */ lui $at, %hi(D_800E2C64) # $at, 0x800e +/* 0ADFB4 800AD3B4 00A05825 */ move $t3, $a1 +/* 0ADFB8 800AD3B8 00005012 */ mflo $t2 +/* 0ADFBC 800AD3BC AC2A2C64 */ sw $t2, %lo(D_800E2C64)($at) +/* 0ADFC0 800AD3C0 ACE50000 */ sw $a1, ($a3) +/* 0ADFC4 800AD3C4 8D8C2C6C */ lw $t4, %lo(D_800E2C6C)($t4) +/* 0ADFC8 800AD3C8 00000000 */ nop +/* 0ADFCC 800AD3CC 00AC6823 */ subu $t5, $a1, $t4 +/* 0ADFD0 800AD3D0 01A2001A */ div $zero, $t5, $v0 +/* 0ADFD4 800AD3D4 14400002 */ bnez $v0, .L800AD3E0 +/* 0ADFD8 800AD3D8 00000000 */ nop +/* 0ADFDC 800AD3DC 0007000D */ break 7 +.L800AD3E0: +/* 0ADFE0 800AD3E0 2401FFFF */ li $at, -1 +/* 0ADFE4 800AD3E4 14410004 */ bne $v0, $at, .L800AD3F8 +/* 0ADFE8 800AD3E8 3C018000 */ lui $at, 0x8000 +/* 0ADFEC 800AD3EC 15A10002 */ bne $t5, $at, .L800AD3F8 +/* 0ADFF0 800AD3F0 00000000 */ nop +/* 0ADFF4 800AD3F4 0006000D */ break 6 +.L800AD3F8: +/* 0ADFF8 800AD3F8 3C01800E */ lui $at, %hi(D_800E2C70) # $at, 0x800e +/* 0ADFFC 800AD3FC 00007012 */ mflo $t6 +/* 0AE000 800AD400 AC2E2C70 */ sw $t6, %lo(D_800E2C70)($at) +/* 0AE004 800AD404 03E00008 */ jr $ra +/* 0AE008 800AD408 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AD40C.s b/asm/non_matchings/unknown_09F8F0/func_800AD40C.s new file mode 100644 index 00000000..b207f51f --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AD40C.s @@ -0,0 +1,47 @@ +glabel func_800AD40C +/* 0AE00C 800AD40C 3C0E800E */ lui $t6, %hi(D_800E2C5C) # $t6, 0x800e +/* 0AE010 800AD410 8DCE2C5C */ lw $t6, %lo(D_800E2C5C)($t6) +/* 0AE014 800AD414 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0AE018 800AD418 11C00020 */ beqz $t6, .L800AD49C +/* 0AE01C 800AD41C AFBF001C */ sw $ra, 0x1c($sp) +/* 0AE020 800AD420 0C019884 */ jal func_80066210 +/* 0AE024 800AD424 00000000 */ nop +/* 0AE028 800AD428 1440001C */ bnez $v0, .L800AD49C +/* 0AE02C 800AD42C 00002025 */ move $a0, $zero +/* 0AE030 800AD430 3C02800E */ lui $v0, %hi(D_800E2C60) # $v0, 0x800e +/* 0AE034 800AD434 8C422C60 */ lw $v0, %lo(D_800E2C60)($v0) +/* 0AE038 800AD438 240A000F */ li $t2, 15 +/* 0AE03C 800AD43C 00020823 */ negu $at, $v0 +/* 0AE040 800AD440 00011880 */ sll $v1, $at, 2 +/* 0AE044 800AD444 00611821 */ addu $v1, $v1, $at +/* 0AE048 800AD448 00031880 */ sll $v1, $v1, 2 +/* 0AE04C 800AD44C 00014080 */ sll $t0, $at, 2 +/* 0AE050 800AD450 00611823 */ subu $v1, $v1, $at +/* 0AE054 800AD454 01014021 */ addu $t0, $t0, $at +/* 0AE058 800AD458 00031840 */ sll $v1, $v1, 1 +/* 0AE05C 800AD45C 00084080 */ sll $t0, $t0, 2 +/* 0AE060 800AD460 00037C03 */ sra $t7, $v1, 0x10 +/* 0AE064 800AD464 0008C403 */ sra $t8, $t0, 0x10 +/* 0AE068 800AD468 25E303FA */ addiu $v1, $t7, 0x3fa +/* 0AE06C 800AD46C 270803FF */ addiu $t0, $t8, 0x3ff +/* 0AE070 800AD470 00083400 */ sll $a2, $t0, 0x10 +/* 0AE074 800AD474 00032C00 */ sll $a1, $v1, 0x10 +/* 0AE078 800AD478 0005CC03 */ sra $t9, $a1, 0x10 +/* 0AE07C 800AD47C 00064C03 */ sra $t1, $a2, 0x10 +/* 0AE080 800AD480 240B0024 */ li $t3, 36 +/* 0AE084 800AD484 AFAB0014 */ sw $t3, 0x14($sp) +/* 0AE088 800AD488 01203025 */ move $a2, $t1 +/* 0AE08C 800AD48C 03202825 */ move $a1, $t9 +/* 0AE090 800AD490 AFAA0010 */ sw $t2, 0x10($sp) +/* 0AE094 800AD494 0C00C199 */ jal func_80030664 +/* 0AE098 800AD498 2407001C */ li $a3, 28 +.L800AD49C: +/* 0AE09C 800AD49C 8FBF001C */ lw $ra, 0x1c($sp) +/* 0AE0A0 800AD4A0 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0AE0A4 800AD4A4 03E00008 */ jr $ra +/* 0AE0A8 800AD4A8 00000000 */ nop + +/* 0AE0AC 800AD4AC 3C01800E */ lui $at, 0x800e +/* 0AE0B0 800AD4B0 03E00008 */ jr $ra +/* 0AE0B4 800AD4B4 AC242C6C */ sw $a0, 0x2c6c($at) + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AD4B8.s b/asm/non_matchings/unknown_09F8F0/func_800AD4B8.s new file mode 100644 index 00000000..ac70995a --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AD4B8.s @@ -0,0 +1,110 @@ +glabel func_800AD4B8 +/* 0AE0B8 800AD4B8 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0AE0BC 800AD4BC AFBF0024 */ sw $ra, 0x24($sp) +/* 0AE0C0 800AD4C0 AFB2001C */ sw $s2, 0x1c($sp) +/* 0AE0C4 800AD4C4 00809025 */ move $s2, $a0 +/* 0AE0C8 800AD4C8 AFB30020 */ sw $s3, 0x20($sp) +/* 0AE0CC 800AD4CC AFB10018 */ sw $s1, 0x18($sp) +/* 0AE0D0 800AD4D0 0C019884 */ jal func_80066210 +/* 0AE0D4 800AD4D4 AFB00014 */ sw $s0, 0x14($sp) +/* 0AE0D8 800AD4D8 14400058 */ bnez $v0, .L800AD63C +/* 0AE0DC 800AD4DC 3C0E800E */ lui $t6, %hi(D_800E2C5C) # $t6, 0x800e +/* 0AE0E0 800AD4E0 8DCE2C5C */ lw $t6, %lo(D_800E2C5C)($t6) +/* 0AE0E4 800AD4E4 3C03800E */ lui $v1, %hi(D_800E2C78) # $v1, 0x800e +/* 0AE0E8 800AD4E8 11C00054 */ beqz $t6, .L800AD63C +/* 0AE0EC 800AD4EC 24632C78 */ addiu $v1, %lo(D_800E2C78) # addiu $v1, $v1, 0x2c78 +/* 0AE0F0 800AD4F0 8C620000 */ lw $v0, ($v1) +/* 0AE0F4 800AD4F4 00000000 */ nop +/* 0AE0F8 800AD4F8 18400023 */ blez $v0, .L800AD588 +/* 0AE0FC 800AD4FC 0242082A */ slt $at, $s2, $v0 +/* 0AE100 800AD500 10200017 */ beqz $at, .L800AD560 +/* 0AE104 800AD504 3C04800E */ lui $a0, 0x800e +/* 0AE108 800AD508 00527823 */ subu $t7, $v0, $s2 +/* 0AE10C 800AD50C AC6F0000 */ sw $t7, ($v1) +/* 0AE110 800AD510 3C19800E */ lui $t9, %hi(D_800E2C64) # $t9, 0x800e +/* 0AE114 800AD514 8F392C64 */ lw $t9, %lo(D_800E2C64)($t9) +/* 0AE118 800AD518 3C10800E */ lui $s0, %hi(D_800E2C60) # $s0, 0x800e +/* 0AE11C 800AD51C 03320019 */ multu $t9, $s2 +/* 0AE120 800AD520 26102C60 */ addiu $s0, %lo(D_800E2C60) # addiu $s0, $s0, 0x2c60 +/* 0AE124 800AD524 8E180000 */ lw $t8, ($s0) +/* 0AE128 800AD528 3C0B800E */ lui $t3, %hi(D_800E2C70) # $t3, 0x800e +/* 0AE12C 800AD52C 3C04800E */ lui $a0, %hi(D_800E2C6C) # $a0, 0x800e +/* 0AE130 800AD530 24842C6C */ addiu $a0, %lo(D_800E2C6C) # addiu $a0, $a0, 0x2c6c +/* 0AE134 800AD534 8C8A0000 */ lw $t2, ($a0) +/* 0AE138 800AD538 00004012 */ mflo $t0 +/* 0AE13C 800AD53C 03084821 */ addu $t1, $t8, $t0 +/* 0AE140 800AD540 AE090000 */ sw $t1, ($s0) +/* 0AE144 800AD544 8D6B2C70 */ lw $t3, %lo(D_800E2C70)($t3) +/* 0AE148 800AD548 00000000 */ nop +/* 0AE14C 800AD54C 01720019 */ multu $t3, $s2 +/* 0AE150 800AD550 00006012 */ mflo $t4 +/* 0AE154 800AD554 014C6821 */ addu $t5, $t2, $t4 +/* 0AE158 800AD558 1000000B */ b .L800AD588 +/* 0AE15C 800AD55C AC8D0000 */ sw $t5, ($a0) +.L800AD560: +/* 0AE160 800AD560 AC600000 */ sw $zero, ($v1) +/* 0AE164 800AD564 3C0E800E */ lui $t6, %hi(D_800E2C68) # $t6, 0x800e +/* 0AE168 800AD568 8DCE2C68 */ lw $t6, %lo(D_800E2C68)($t6) +/* 0AE16C 800AD56C 3C10800E */ lui $s0, %hi(D_800E2C60) # $s0, 0x800e +/* 0AE170 800AD570 26102C60 */ addiu $s0, %lo(D_800E2C60) # addiu $s0, $s0, 0x2c60 +/* 0AE174 800AD574 3C0F800E */ lui $t7, %hi(D_800E2C74) # $t7, 0x800e +/* 0AE178 800AD578 AE0E0000 */ sw $t6, ($s0) +/* 0AE17C 800AD57C 8DEF2C74 */ lw $t7, %lo(D_800E2C74)($t7) +/* 0AE180 800AD580 24842C6C */ addiu $a0, $a0, 0x2c6c +/* 0AE184 800AD584 AC8F0000 */ sw $t7, ($a0) +.L800AD588: +/* 0AE188 800AD588 3C10800E */ lui $s0, %hi(D_800E2C60) # $s0, 0x800e +/* 0AE18C 800AD58C 26102C60 */ addiu $s0, %lo(D_800E2C60) # addiu $s0, $s0, 0x2c60 +/* 0AE190 800AD590 0C02B6F2 */ jal func_800ADBC8 +/* 0AE194 800AD594 02402025 */ move $a0, $s2 +/* 0AE198 800AD598 0C02B596 */ jal func_800AD658 +/* 0AE19C 800AD59C 02402025 */ move $a0, $s2 +/* 0AE1A0 800AD5A0 0C02B6AE */ jal func_800ADAB8 +/* 0AE1A4 800AD5A4 02402025 */ move $a0, $s2 +/* 0AE1A8 800AD5A8 8E190000 */ lw $t9, ($s0) +/* 0AE1AC 800AD5AC 3C138012 */ lui $s3, %hi(D_80127C0C) # $s3, 0x8012 +/* 0AE1B0 800AD5B0 2B210100 */ slti $at, $t9, 0x100 +/* 0AE1B4 800AD5B4 14200021 */ bnez $at, .L800AD63C +/* 0AE1B8 800AD5B8 26737C0C */ addiu $s3, %lo(D_80127C0C) # addiu $s3, $s3, 0x7c0c +/* 0AE1BC 800AD5BC 3C058012 */ lui $a1, %hi(D_80127C10) # $a1, 0x8012 +/* 0AE1C0 800AD5C0 24A57C10 */ addiu $a1, %lo(D_80127C10) # addiu $a1, $a1, 0x7c10 +/* 0AE1C4 800AD5C4 0C019FCB */ jal func_80067F2C +/* 0AE1C8 800AD5C8 02602025 */ move $a0, $s3 +/* 0AE1CC 800AD5CC 3C10800E */ lui $s0, %hi(D_800E2C2C) # $s0, 0x800e +/* 0AE1D0 800AD5D0 3C11800E */ lui $s1, %hi(D_800E2C5C) # $s1, 0x800e +/* 0AE1D4 800AD5D4 26312C5C */ addiu $s1, %lo(D_800E2C5C) # addiu $s1, $s1, 0x2c5c +/* 0AE1D8 800AD5D8 26102C2C */ addiu $s0, %lo(D_800E2C2C) # addiu $s0, $s0, 0x2c2c +/* 0AE1DC 800AD5DC 02002025 */ move $a0, $s0 +.L800AD5E0: +/* 0AE1E0 800AD5E0 0C02B72F */ jal func_800ADCBC +/* 0AE1E4 800AD5E4 02402825 */ move $a1, $s2 +/* 0AE1E8 800AD5E8 26100018 */ addiu $s0, $s0, 0x18 +/* 0AE1EC 800AD5EC 1611FFFC */ bne $s0, $s1, .L800AD5E0 +/* 0AE1F0 800AD5F0 02002025 */ move $a0, $s0 +/* 0AE1F4 800AD5F4 8E620000 */ lw $v0, ($s3) +/* 0AE1F8 800AD5F8 3C08FA00 */ lui $t0, 0xfa00 +/* 0AE1FC 800AD5FC 24580008 */ addiu $t8, $v0, 8 +/* 0AE200 800AD600 AE780000 */ sw $t8, ($s3) +/* 0AE204 800AD604 2409FFFF */ li $t1, -1 +/* 0AE208 800AD608 AC490004 */ sw $t1, 4($v0) +/* 0AE20C 800AD60C AC480000 */ sw $t0, ($v0) +/* 0AE210 800AD610 8E620000 */ lw $v0, ($s3) +/* 0AE214 800AD614 3C0AFB00 */ lui $t2, 0xfb00 +/* 0AE218 800AD618 244B0008 */ addiu $t3, $v0, 8 +/* 0AE21C 800AD61C AE6B0000 */ sw $t3, ($s3) +/* 0AE220 800AD620 240CFF00 */ li $t4, -256 +/* 0AE224 800AD624 02602025 */ move $a0, $s3 +/* 0AE228 800AD628 AC4C0004 */ sw $t4, 4($v0) +/* 0AE22C 800AD62C 0C01ECF4 */ jal func_8007B3D0 +/* 0AE230 800AD630 AC4A0000 */ sw $t2, ($v0) +/* 0AE234 800AD634 0C01A0AB */ jal func_800682AC +/* 0AE238 800AD638 02602025 */ move $a0, $s3 +.L800AD63C: +/* 0AE23C 800AD63C 8FBF0024 */ lw $ra, 0x24($sp) +/* 0AE240 800AD640 8FB00014 */ lw $s0, 0x14($sp) +/* 0AE244 800AD644 8FB10018 */ lw $s1, 0x18($sp) +/* 0AE248 800AD648 8FB2001C */ lw $s2, 0x1c($sp) +/* 0AE24C 800AD64C 8FB30020 */ lw $s3, 0x20($sp) +/* 0AE250 800AD650 03E00008 */ jr $ra +/* 0AE254 800AD654 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800AD658.s b/asm/non_matchings/unknown_09F8F0/func_800AD658.s new file mode 100644 index 00000000..bfc038c8 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800AD658.s @@ -0,0 +1,297 @@ +glabel func_800AD658 +/* 0AE258 800AD658 27BDFF80 */ addiu $sp, $sp, -0x80 +/* 0AE25C 800AD65C 3C0E800E */ lui $t6, %hi(D_800E2C8C) # $t6, 0x800e +/* 0AE260 800AD660 8DCE2C8C */ lw $t6, %lo(D_800E2C8C)($t6) +/* 0AE264 800AD664 AFB20028 */ sw $s2, 0x28($sp) +/* 0AE268 800AD668 AFBF002C */ sw $ra, 0x2c($sp) +/* 0AE26C 800AD66C AFB10024 */ sw $s1, 0x24($sp) +/* 0AE270 800AD670 AFB00020 */ sw $s0, 0x20($sp) +/* 0AE274 800AD674 AFA40080 */ sw $a0, 0x80($sp) +/* 0AE278 800AD678 11C00109 */ beqz $t6, .L800ADAA0 +/* 0AE27C 800AD67C 24120001 */ li $s2, 1 +/* 0AE280 800AD680 3C0F800E */ lui $t7, %hi(D_800E2C6C) # $t7, 0x800e +/* 0AE284 800AD684 8DEF2C6C */ lw $t7, %lo(D_800E2C6C)($t7) +/* 0AE288 800AD688 3C19800E */ lui $t9, %hi(D_800E2C60) # $t9, 0x800e +/* 0AE28C 800AD68C 8F392C60 */ lw $t9, %lo(D_800E2C60)($t9) +/* 0AE290 800AD690 000FC083 */ sra $t8, $t7, 2 +/* 0AE294 800AD694 03190019 */ multu $t8, $t9 +/* 0AE298 800AD698 00002025 */ move $a0, $zero +/* 0AE29C 800AD69C 00001012 */ mflo $v0 +/* 0AE2A0 800AD6A0 00024383 */ sra $t0, $v0, 0xe +/* 0AE2A4 800AD6A4 29014001 */ slti $at, $t0, 0x4001 +/* 0AE2A8 800AD6A8 142000C0 */ bnez $at, .L800AD9AC +/* 0AE2AC 800AD6AC 00000000 */ nop +/* 0AE2B0 800AD6B0 0C006EC6 */ jal func_8001BB18 +/* 0AE2B4 800AD6B4 AFA8007C */ sw $t0, 0x7c($sp) +/* 0AE2B8 800AD6B8 3C06800E */ lui $a2, %hi(D_800E2C84) # $a2, 0x800e +/* 0AE2BC 800AD6BC 24C62C84 */ addiu $a2, %lo(D_800E2C84) # addiu $a2, $a2, 0x2c84 +/* 0AE2C0 800AD6C0 8CC90000 */ lw $t1, ($a2) +/* 0AE2C4 800AD6C4 8FAA0080 */ lw $t2, 0x80($sp) +/* 0AE2C8 800AD6C8 AFA20050 */ sw $v0, 0x50($sp) +/* 0AE2CC 800AD6CC 012A5823 */ subu $t3, $t1, $t2 +/* 0AE2D0 800AD6D0 1D6000B6 */ bgtz $t3, .L800AD9AC +/* 0AE2D4 800AD6D4 ACCB0000 */ sw $t3, ($a2) +/* 0AE2D8 800AD6D8 104000B4 */ beqz $v0, .L800AD9AC +/* 0AE2DC 800AD6DC 00001825 */ move $v1, $zero +/* 0AE2E0 800AD6E0 000068C0 */ sll $t5, $zero, 3 +/* 0AE2E4 800AD6E4 01A06823 */ subu $t5, $t5, $zero +/* 0AE2E8 800AD6E8 3C0E800E */ lui $t6, %hi(D_800E2B4C) # $t6, 0x800e +/* 0AE2EC 800AD6EC 25CE2B4C */ addiu $t6, %lo(D_800E2B4C) # addiu $t6, $t6, 0x2b4c +/* 0AE2F0 800AD6F0 000D6880 */ sll $t5, $t5, 2 +/* 0AE2F4 800AD6F4 2411FFFF */ li $s1, -1 +/* 0AE2F8 800AD6F8 01AE8021 */ addu $s0, $t5, $t6 +.L800AD6FC: +/* 0AE2FC 800AD6FC 860F0006 */ lh $t7, 6($s0) +/* 0AE300 800AD700 00000000 */ nop +/* 0AE304 800AD704 15E00002 */ bnez $t7, .L800AD710 +/* 0AE308 800AD708 00000000 */ nop +/* 0AE30C 800AD70C 00608825 */ move $s1, $v1 +.L800AD710: +/* 0AE310 800AD710 24630001 */ addiu $v1, $v1, 1 +/* 0AE314 800AD714 28610008 */ slti $at, $v1, 8 +/* 0AE318 800AD718 10200003 */ beqz $at, .L800AD728 +/* 0AE31C 800AD71C 2610001C */ addiu $s0, $s0, 0x1c +/* 0AE320 800AD720 0620FFF6 */ bltz $s1, .L800AD6FC +/* 0AE324 800AD724 00000000 */ nop +.L800AD728: +/* 0AE328 800AD728 062000A0 */ bltz $s1, .L800AD9AC +/* 0AE32C 800AD72C 2404E000 */ li $a0, -8192 +/* 0AE330 800AD730 0C01BE53 */ jal func_8006F94C +/* 0AE334 800AD734 24052000 */ li $a1, 8192 +/* 0AE338 800AD738 8FB80050 */ lw $t8, 0x50($sp) +/* 0AE33C 800AD73C 34018000 */ li $at, 32768 +/* 0AE340 800AD740 87190000 */ lh $t9, ($t8) +/* 0AE344 800AD744 24040032 */ li $a0, 50 +/* 0AE348 800AD748 00594021 */ addu $t0, $v0, $t9 +/* 0AE34C 800AD74C 01014821 */ addu $t1, $t0, $at +/* 0AE350 800AD750 AFA9006C */ sw $t1, 0x6c($sp) +/* 0AE354 800AD754 0C01BE53 */ jal func_8006F94C +/* 0AE358 800AD758 240501F4 */ li $a1, 500 +/* 0AE35C 800AD75C 44822000 */ mtc1 $v0, $f4 +/* 0AE360 800AD760 87B0006E */ lh $s0, 0x6e($sp) +/* 0AE364 800AD764 468021A0 */ cvt.s.w $f6, $f4 +/* 0AE368 800AD768 00102400 */ sll $a0, $s0, 0x10 +/* 0AE36C 800AD76C 00045403 */ sra $t2, $a0, 0x10 +/* 0AE370 800AD770 E7A6005C */ swc1 $f6, 0x5c($sp) +/* 0AE374 800AD774 0C01C1F1 */ jal func_800707C4 +/* 0AE378 800AD778 01402025 */ move $a0, $t2 +/* 0AE37C 800AD77C C7A8005C */ lwc1 $f8, 0x5c($sp) +/* 0AE380 800AD780 8FAB0050 */ lw $t3, 0x50($sp) +/* 0AE384 800AD784 46080282 */ mul.s $f10, $f0, $f8 +/* 0AE388 800AD788 C570000C */ lwc1 $f16, 0xc($t3) +/* 0AE38C 800AD78C 00102400 */ sll $a0, $s0, 0x10 +/* 0AE390 800AD790 00046403 */ sra $t4, $a0, 0x10 +/* 0AE394 800AD794 46105480 */ add.s $f18, $f10, $f16 +/* 0AE398 800AD798 01802025 */ move $a0, $t4 +/* 0AE39C 800AD79C 0C01C1FE */ jal func_800707F8 +/* 0AE3A0 800AD7A0 E7B20058 */ swc1 $f18, 0x58($sp) +/* 0AE3A4 800AD7A4 C7A4005C */ lwc1 $f4, 0x5c($sp) +/* 0AE3A8 800AD7A8 8FA20050 */ lw $v0, 0x50($sp) +/* 0AE3AC 800AD7AC 46040182 */ mul.s $f6, $f0, $f4 +/* 0AE3B0 800AD7B0 C4480014 */ lwc1 $f8, 0x14($v0) +/* 0AE3B4 800AD7B4 C7AC0058 */ lwc1 $f12, 0x58($sp) +/* 0AE3B8 800AD7B8 C44E0010 */ lwc1 $f14, 0x10($v0) +/* 0AE3BC 800AD7BC 46083080 */ add.s $f2, $f6, $f8 +/* 0AE3C0 800AD7C0 44061000 */ mfc1 $a2, $f2 +/* 0AE3C4 800AD7C4 0C00A7C6 */ jal func_80029F18 +/* 0AE3C8 800AD7C8 E7A20054 */ swc1 $f2, 0x54($sp) +/* 0AE3CC 800AD7CC 8FA50058 */ lw $a1, 0x58($sp) +/* 0AE3D0 800AD7D0 8FA60054 */ lw $a2, 0x54($sp) +/* 0AE3D4 800AD7D4 00402025 */ move $a0, $v0 +/* 0AE3D8 800AD7D8 0C00AC3D */ jal func_8002B0F4 +/* 0AE3DC 800AD7DC 27A7004C */ addiu $a3, $sp, 0x4c +/* 0AE3E0 800AD7E0 10400072 */ beqz $v0, .L800AD9AC +/* 0AE3E4 800AD7E4 3C01447A */ li $at, 0x447A0000 # 1000.000000 +/* 0AE3E8 800AD7E8 44811000 */ mtc1 $at, $f2 +/* 0AE3EC 800AD7EC 28410002 */ slti $at, $v0, 2 +/* 0AE3F0 800AD7F0 1420002D */ bnez $at, .L800AD8A8 +/* 0AE3F4 800AD7F4 00001825 */ move $v1, $zero +/* 0AE3F8 800AD7F8 2444FFFF */ addiu $a0, $v0, -1 +/* 0AE3FC 800AD7FC 1880001A */ blez $a0, .L800AD868 +/* 0AE400 800AD800 00000000 */ nop +/* 0AE404 800AD804 8FAE004C */ lw $t6, 0x4c($sp) +/* 0AE408 800AD808 8FAD0050 */ lw $t5, 0x50($sp) +/* 0AE40C 800AD80C 8DCF0000 */ lw $t7, ($t6) +/* 0AE410 800AD810 C5A00010 */ lwc1 $f0, 0x10($t5) +/* 0AE414 800AD814 C5EA0000 */ lwc1 $f10, ($t7) +/* 0AE418 800AD818 00000000 */ nop +/* 0AE41C 800AD81C 460A003C */ c.lt.s $f0, $f10 +/* 0AE420 800AD820 00000000 */ nop +/* 0AE424 800AD824 45000010 */ bc1f .L800AD868 +/* 0AE428 800AD828 00000000 */ nop +.L800AD82C: +/* 0AE42C 800AD82C 24630001 */ addiu $v1, $v1, 1 +/* 0AE430 800AD830 0064082A */ slt $at, $v1, $a0 +/* 0AE434 800AD834 1020000C */ beqz $at, .L800AD868 +/* 0AE438 800AD838 00000000 */ nop +/* 0AE43C 800AD83C 8FB8004C */ lw $t8, 0x4c($sp) +/* 0AE440 800AD840 0003C880 */ sll $t9, $v1, 2 +/* 0AE444 800AD844 03194021 */ addu $t0, $t8, $t9 +/* 0AE448 800AD848 8D090000 */ lw $t1, ($t0) +/* 0AE44C 800AD84C 00000000 */ nop +/* 0AE450 800AD850 C5300000 */ lwc1 $f16, ($t1) +/* 0AE454 800AD854 00000000 */ nop +/* 0AE458 800AD858 4610003C */ c.lt.s $f0, $f16 +/* 0AE45C 800AD85C 00000000 */ nop +/* 0AE460 800AD860 4501FFF2 */ bc1t .L800AD82C +/* 0AE464 800AD864 00000000 */ nop +.L800AD868: +/* 0AE468 800AD868 1860000F */ blez $v1, .L800AD8A8 +/* 0AE46C 800AD86C 00035880 */ sll $t3, $v1, 2 +/* 0AE470 800AD870 8FAA004C */ lw $t2, 0x4c($sp) +/* 0AE474 800AD874 8FAE0050 */ lw $t6, 0x50($sp) +/* 0AE478 800AD878 014B6021 */ addu $t4, $t2, $t3 +/* 0AE47C 800AD87C 8D8D0000 */ lw $t5, ($t4) +/* 0AE480 800AD880 C5C40010 */ lwc1 $f4, 0x10($t6) +/* 0AE484 800AD884 C5B20000 */ lwc1 $f18, ($t5) +/* 0AE488 800AD888 44803000 */ mtc1 $zero, $f6 +/* 0AE48C 800AD88C 46122081 */ sub.s $f2, $f4, $f18 +/* 0AE490 800AD890 2463FFFF */ addiu $v1, $v1, -1 +/* 0AE494 800AD894 4606103C */ c.lt.s $f2, $f6 +/* 0AE498 800AD898 00000000 */ nop +/* 0AE49C 800AD89C 45000002 */ bc1f .L800AD8A8 +/* 0AE4A0 800AD8A0 00000000 */ nop +/* 0AE4A4 800AD8A4 46001087 */ neg.s $f2, $f2 +.L800AD8A8: +/* 0AE4A8 800AD8A8 8FAF004C */ lw $t7, 0x4c($sp) +/* 0AE4AC 800AD8AC 0003C080 */ sll $t8, $v1, 2 +/* 0AE4B0 800AD8B0 01F81021 */ addu $v0, $t7, $t8 +/* 0AE4B4 800AD8B4 8C480000 */ lw $t0, ($v0) +/* 0AE4B8 800AD8B8 8FB90050 */ lw $t9, 0x50($sp) +/* 0AE4BC 800AD8BC C50A0000 */ lwc1 $f10, ($t0) +/* 0AE4C0 800AD8C0 C7280010 */ lwc1 $f8, 0x10($t9) +/* 0AE4C4 800AD8C4 44808000 */ mtc1 $zero, $f16 +/* 0AE4C8 800AD8C8 460A4001 */ sub.s $f0, $f8, $f10 +/* 0AE4CC 800AD8CC 3C0A800E */ lui $t2, %hi(D_800E2B4C) # $t2, 0x800e +/* 0AE4D0 800AD8D0 4610003C */ c.lt.s $f0, $f16 +/* 0AE4D4 800AD8D4 3C014348 */ li $at, 0x43480000 # 200.000000 +/* 0AE4D8 800AD8D8 45000002 */ bc1f .L800AD8E4 +/* 0AE4DC 800AD8DC 254A2B4C */ addiu $t2, %lo(D_800E2B4C) # addiu $t2, $t2, 0x2b4c +/* 0AE4E0 800AD8E0 46000007 */ neg.s $f0, $f0 +.L800AD8E4: +/* 0AE4E4 800AD8E4 4602003C */ c.lt.s $f0, $f2 +/* 0AE4E8 800AD8E8 C7A60058 */ lwc1 $f6, 0x58($sp) +/* 0AE4EC 800AD8EC 4500000A */ bc1f .L800AD918 +/* 0AE4F0 800AD8F0 240C0001 */ li $t4, 1 +/* 0AE4F4 800AD8F4 3C014348 */ li $at, 0x43480000 # 200.000000 +/* 0AE4F8 800AD8F8 44812000 */ mtc1 $at, $f4 +/* 0AE4FC 800AD8FC 00000000 */ nop +/* 0AE500 800AD900 4600203C */ c.lt.s $f4, $f0 +/* 0AE504 800AD904 00000000 */ nop +/* 0AE508 800AD908 4500000A */ bc1f .L800AD934 +/* 0AE50C 800AD90C 00000000 */ nop +/* 0AE510 800AD910 10000008 */ b .L800AD934 +/* 0AE514 800AD914 2411FFFF */ li $s1, -1 +.L800AD918: +/* 0AE518 800AD918 44819000 */ mtc1 $at, $f18 +/* 0AE51C 800AD91C 24420004 */ addiu $v0, $v0, 4 +/* 0AE520 800AD920 4602903C */ c.lt.s $f18, $f2 +/* 0AE524 800AD924 00000000 */ nop +/* 0AE528 800AD928 45000002 */ bc1f .L800AD934 +/* 0AE52C 800AD92C 00000000 */ nop +/* 0AE530 800AD930 2411FFFF */ li $s1, -1 +.L800AD934: +/* 0AE534 800AD934 0620001D */ bltz $s1, .L800AD9AC +/* 0AE538 800AD938 001148C0 */ sll $t1, $s1, 3 +/* 0AE53C 800AD93C 01314823 */ subu $t1, $t1, $s1 +/* 0AE540 800AD940 00094880 */ sll $t1, $t1, 2 +/* 0AE544 800AD944 012A8021 */ addu $s0, $t1, $t2 +/* 0AE548 800AD948 E606000C */ swc1 $f6, 0xc($s0) +/* 0AE54C 800AD94C 8C4B0000 */ lw $t3, ($v0) +/* 0AE550 800AD950 8FA3007C */ lw $v1, 0x7c($sp) +/* 0AE554 800AD954 C5680000 */ lwc1 $f8, ($t3) +/* 0AE558 800AD958 C7AA0054 */ lwc1 $f10, 0x54($sp) +/* 0AE55C 800AD95C 00036A83 */ sra $t5, $v1, 0xa +/* 0AE560 800AD960 A6000018 */ sh $zero, 0x18($s0) +/* 0AE564 800AD964 A60C0006 */ sh $t4, 6($s0) +/* 0AE568 800AD968 01A01825 */ move $v1, $t5 +/* 0AE56C 800AD96C 25A500BF */ addiu $a1, $t5, 0xbf +/* 0AE570 800AD970 AFAD0030 */ sw $t5, 0x30($sp) +/* 0AE574 800AD974 24040080 */ li $a0, 128 +/* 0AE578 800AD978 E6080010 */ swc1 $f8, 0x10($s0) +/* 0AE57C 800AD97C 0C01BE53 */ jal func_8006F94C +/* 0AE580 800AD980 E60A0014 */ swc1 $f10, 0x14($s0) +/* 0AE584 800AD984 3C04800E */ lui $a0, %hi(D_800E2C84) # $a0, 0x800e +/* 0AE588 800AD988 24842C84 */ addiu $a0, %lo(D_800E2C84) # addiu $a0, $a0, 0x2c84 +/* 0AE58C 800AD98C 8FA30030 */ lw $v1, 0x30($sp) +/* 0AE590 800AD990 8C8E0000 */ lw $t6, ($a0) +/* 0AE594 800AD994 A602001A */ sh $v0, 0x1a($s0) +/* 0AE598 800AD998 01C37823 */ subu $t7, $t6, $v1 +/* 0AE59C 800AD99C 25F80040 */ addiu $t8, $t7, 0x40 +/* 0AE5A0 800AD9A0 07010002 */ bgez $t8, .L800AD9AC +/* 0AE5A4 800AD9A4 AC980000 */ sw $t8, ($a0) +/* 0AE5A8 800AD9A8 AC800000 */ sw $zero, ($a0) +.L800AD9AC: +/* 0AE5AC 800AD9AC 3C10800E */ lui $s0, %hi(D_800E2B4C) # $s0, 0x800e +/* 0AE5B0 800AD9B0 3C118012 */ lui $s1, %hi(D_80127C0C) # $s1, 0x8012 +/* 0AE5B4 800AD9B4 26317C0C */ addiu $s1, %lo(D_80127C0C) # addiu $s1, $s1, 0x7c0c +/* 0AE5B8 800AD9B8 26102B4C */ addiu $s0, %lo(D_800E2B4C) # addiu $s0, $s0, 0x2b4c +.L800AD9BC: +/* 0AE5BC 800AD9BC 86080006 */ lh $t0, 6($s0) +/* 0AE5C0 800AD9C0 8FAA0080 */ lw $t2, 0x80($sp) +/* 0AE5C4 800AD9C4 1100002A */ beqz $t0, .L800ADA70 +/* 0AE5C8 800AD9C8 00000000 */ nop +/* 0AE5CC 800AD9CC 86090018 */ lh $t1, 0x18($s0) +/* 0AE5D0 800AD9D0 000A5900 */ sll $t3, $t2, 4 +/* 0AE5D4 800AD9D4 012B6021 */ addu $t4, $t1, $t3 +/* 0AE5D8 800AD9D8 A60C0018 */ sh $t4, 0x18($s0) +/* 0AE5DC 800AD9DC 860D0018 */ lh $t5, 0x18($s0) +/* 0AE5E0 800AD9E0 3C08FA00 */ lui $t0, 0xfa00 +/* 0AE5E4 800AD9E4 29A10100 */ slti $at, $t5, 0x100 +/* 0AE5E8 800AD9E8 14200003 */ bnez $at, .L800AD9F8 +/* 0AE5EC 800AD9EC 02202025 */ move $a0, $s1 +/* 0AE5F0 800AD9F0 1000001F */ b .L800ADA70 +/* 0AE5F4 800AD9F4 A6000006 */ sh $zero, 6($s0) +.L800AD9F8: +/* 0AE5F8 800AD9F8 12400009 */ beqz $s2, .L800ADA20 +/* 0AE5FC 800AD9FC 3C01C0C0 */ lui $at, (0xC0C0FF00 >> 16) # lui $at, 0xc0c0 +/* 0AE600 800ADA00 8E220000 */ lw $v0, ($s1) +/* 0AE604 800ADA04 3C0FFB00 */ lui $t7, 0xfb00 +/* 0AE608 800ADA08 244E0008 */ addiu $t6, $v0, 8 +/* 0AE60C 800ADA0C AE2E0000 */ sw $t6, ($s1) +/* 0AE610 800ADA10 2418FF00 */ li $t8, -256 +/* 0AE614 800ADA14 00009025 */ move $s2, $zero +/* 0AE618 800ADA18 AC580004 */ sw $t8, 4($v0) +/* 0AE61C 800ADA1C AC4F0000 */ sw $t7, ($v0) +.L800ADA20: +/* 0AE620 800ADA20 8E220000 */ lw $v0, ($s1) +/* 0AE624 800ADA24 3421FF00 */ ori $at, (0xC0C0FF00 & 0xFFFF) # ori $at, $at, 0xff00 +/* 0AE628 800ADA28 24590008 */ addiu $t9, $v0, 8 +/* 0AE62C 800ADA2C AE390000 */ sw $t9, ($s1) +/* 0AE630 800ADA30 AC480000 */ sw $t0, ($v0) +/* 0AE634 800ADA34 860A001A */ lh $t2, 0x1a($s0) +/* 0AE638 800ADA38 3C0C800E */ lui $t4, %hi(D_800E2C8C) # $t4, 0x800e +/* 0AE63C 800ADA3C 314900FF */ andi $t1, $t2, 0xff +/* 0AE640 800ADA40 01215825 */ or $t3, $t1, $at +/* 0AE644 800ADA44 AC4B0004 */ sw $t3, 4($v0) +/* 0AE648 800ADA48 8D8C2C8C */ lw $t4, %lo(D_800E2C8C)($t4) +/* 0AE64C 800ADA4C 3C058012 */ lui $a1, %hi(D_80127C10) # $a1, 0x8012 +/* 0AE650 800ADA50 3C068012 */ lui $a2, %hi(D_80127C14) # $a2, 0x8012 +/* 0AE654 800ADA54 240D010E */ li $t5, 270 +/* 0AE658 800ADA58 AFAD0014 */ sw $t5, 0x14($sp) +/* 0AE65C 800ADA5C 24C67C14 */ addiu $a2, %lo(D_80127C14) # addiu $a2, $a2, 0x7c14 +/* 0AE660 800ADA60 24A57C10 */ addiu $a1, %lo(D_80127C10) # addiu $a1, $a1, 0x7c10 +/* 0AE664 800ADA64 02003825 */ move $a3, $s0 +/* 0AE668 800ADA68 0C01A145 */ jal func_80068514 +/* 0AE66C 800ADA6C AFAC0010 */ sw $t4, 0x10($sp) +.L800ADA70: +/* 0AE670 800ADA70 3C0E800E */ lui $t6, %hi(D_800E2C2C) # $t6, 0x800e +/* 0AE674 800ADA74 25CE2C2C */ addiu $t6, %lo(D_800E2C2C) # addiu $t6, $t6, 0x2c2c +/* 0AE678 800ADA78 2610001C */ addiu $s0, $s0, 0x1c +/* 0AE67C 800ADA7C 160EFFCF */ bne $s0, $t6, .L800AD9BC +/* 0AE680 800ADA80 00000000 */ nop +/* 0AE684 800ADA84 8E220000 */ lw $v0, ($s1) +/* 0AE688 800ADA88 3C18FA00 */ lui $t8, 0xfa00 +/* 0AE68C 800ADA8C 244F0008 */ addiu $t7, $v0, 8 +/* 0AE690 800ADA90 AE2F0000 */ sw $t7, ($s1) +/* 0AE694 800ADA94 2419FFFF */ li $t9, -1 +/* 0AE698 800ADA98 AC590004 */ sw $t9, 4($v0) +/* 0AE69C 800ADA9C AC580000 */ sw $t8, ($v0) +.L800ADAA0: +/* 0AE6A0 800ADAA0 8FBF002C */ lw $ra, 0x2c($sp) +/* 0AE6A4 800ADAA4 8FB00020 */ lw $s0, 0x20($sp) +/* 0AE6A8 800ADAA8 8FB10024 */ lw $s1, 0x24($sp) +/* 0AE6AC 800ADAAC 8FB20028 */ lw $s2, 0x28($sp) +/* 0AE6B0 800ADAB0 03E00008 */ jr $ra +/* 0AE6B4 800ADAB4 27BD0080 */ addiu $sp, $sp, 0x80 + diff --git a/asm/non_matchings/unknown_09F8F0/func_800ADAB8.s b/asm/non_matchings/unknown_09F8F0/func_800ADAB8.s new file mode 100644 index 00000000..1bf38850 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800ADAB8.s @@ -0,0 +1,75 @@ +glabel func_800ADAB8 +/* 0AE6B8 800ADAB8 3C06800E */ lui $a2, %hi(D_800E2C80) # $a2, 0x800e +/* 0AE6BC 800ADABC 24C62C80 */ addiu $a2, %lo(D_800E2C80) # addiu $a2, $a2, 0x2c80 +/* 0AE6C0 800ADAC0 8CC20000 */ lw $v0, ($a2) +/* 0AE6C4 800ADAC4 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0AE6C8 800ADAC8 18400016 */ blez $v0, .L800ADB24 +/* 0AE6CC 800ADACC AFBF0014 */ sw $ra, 0x14($sp) +/* 0AE6D0 800ADAD0 00447023 */ subu $t6, $v0, $a0 +/* 0AE6D4 800ADAD4 1DC00038 */ bgtz $t6, .L800ADBB8 +/* 0AE6D8 800ADAD8 ACCE0000 */ sw $t6, ($a2) +/* 0AE6DC 800ADADC 3C18800E */ lui $t8, %hi(D_800E2C6C) # $t8, 0x800e +/* 0AE6E0 800ADAE0 8F182C6C */ lw $t8, %lo(D_800E2C6C)($t8) +/* 0AE6E4 800ADAE4 34018001 */ li $at, 32769 +/* 0AE6E8 800ADAE8 0301082A */ slt $at, $t8, $at +/* 0AE6EC 800ADAEC 14200008 */ bnez $at, .L800ADB10 +/* 0AE6F0 800ADAF0 24040027 */ li $a0, 39 +/* 0AE6F4 800ADAF4 0C030063 */ jal func_800C018C +/* 0AE6F8 800ADAF8 00000000 */ nop +/* 0AE6FC 800ADAFC 14400003 */ bnez $v0, .L800ADB0C +/* 0AE700 800ADB00 3C04800E */ lui $a0, %hi(D_800E2C98) # $a0, 0x800e +/* 0AE704 800ADB04 0C030076 */ jal func_800C01D8 +/* 0AE708 800ADB08 24842C98 */ addiu $a0, %lo(D_800E2C98) # addiu $a0, $a0, 0x2c98 +.L800ADB0C: +/* 0AE70C 800ADB0C 24040027 */ li $a0, 39 +.L800ADB10: +/* 0AE710 800ADB10 0C000741 */ jal func_80001D04 +/* 0AE714 800ADB14 00002825 */ move $a1, $zero +/* 0AE718 800ADB18 3C01800E */ lui $at, %hi(D_800E2C80) # $at, 0x800e +/* 0AE71C 800ADB1C 10000026 */ b .L800ADBB8 +/* 0AE720 800ADB20 AC202C80 */ sw $zero, %lo(D_800E2C80)($at) +.L800ADB24: +/* 0AE724 800ADB24 3C19800E */ lui $t9, %hi(D_800E2C60) # $t9, 0x800e +/* 0AE728 800ADB28 8F392C60 */ lw $t9, %lo(D_800E2C60)($t9) +/* 0AE72C 800ADB2C 3401BB80 */ li $at, 48000 +/* 0AE730 800ADB30 0321082A */ slt $at, $t9, $at +/* 0AE734 800ADB34 14200020 */ bnez $at, .L800ADBB8 +/* 0AE738 800ADB38 3C03800E */ lui $v1, %hi(D_800E2C7C) # $v1, 0x800e +/* 0AE73C 800ADB3C 24632C7C */ addiu $v1, %lo(D_800E2C7C) # addiu $v1, $v1, 0x2c7c +/* 0AE740 800ADB40 8C620000 */ lw $v0, ($v1) +/* 0AE744 800ADB44 00002825 */ move $a1, $zero +/* 0AE748 800ADB48 18400003 */ blez $v0, .L800ADB58 +/* 0AE74C 800ADB4C 00444023 */ subu $t0, $v0, $a0 +/* 0AE750 800ADB50 10000019 */ b .L800ADBB8 +/* 0AE754 800ADB54 AC680000 */ sw $t0, ($v1) +.L800ADB58: +/* 0AE758 800ADB58 0C000741 */ jal func_80001D04 +/* 0AE75C 800ADB5C 2404023F */ li $a0, 575 +/* 0AE760 800ADB60 3C09800E */ lui $t1, %hi(D_800E2C60) # $t1, 0x800e +/* 0AE764 800ADB64 8D292C60 */ lw $t1, %lo(D_800E2C60)($t1) +/* 0AE768 800ADB68 3C01FFFF */ lui $at, (0xFFFF4480 >> 16) # lui $at, 0xffff +/* 0AE76C 800ADB6C 34214480 */ ori $at, (0xFFFF4480 & 0xFFFF) # ori $at, $at, 0x4480 +/* 0AE770 800ADB70 01215021 */ addu $t2, $t1, $at +/* 0AE774 800ADB74 000A5943 */ sra $t3, $t2, 5 +/* 0AE778 800ADB78 240C0258 */ li $t4, 600 +/* 0AE77C 800ADB7C 018B6823 */ subu $t5, $t4, $t3 +/* 0AE780 800ADB80 3C01800E */ lui $at, %hi(D_800E2C80) # $at, 0x800e +/* 0AE784 800ADB84 AC2D2C80 */ sw $t5, %lo(D_800E2C80)($at) +/* 0AE788 800ADB88 24040384 */ li $a0, 900 +/* 0AE78C 800ADB8C 0C01BE53 */ jal func_8006F94C +/* 0AE790 800ADB90 24050474 */ li $a1, 1140 +/* 0AE794 800ADB94 3C0E800E */ lui $t6, %hi(D_800E2C60) # $t6, 0x800e +/* 0AE798 800ADB98 8DCE2C60 */ lw $t6, %lo(D_800E2C60)($t6) +/* 0AE79C 800ADB9C 3C01FFFF */ lui $at, (0xFFFF4480 >> 16) # lui $at, 0xffff +/* 0AE7A0 800ADBA0 34214480 */ ori $at, (0xFFFF4480 & 0xFFFF) # ori $at, $at, 0x4480 +/* 0AE7A4 800ADBA4 01C17821 */ addu $t7, $t6, $at +/* 0AE7A8 800ADBA8 000FC143 */ sra $t8, $t7, 5 +/* 0AE7AC 800ADBAC 0058C823 */ subu $t9, $v0, $t8 +/* 0AE7B0 800ADBB0 3C01800E */ lui $at, %hi(D_800E2C7C) # $at, 0x800e +/* 0AE7B4 800ADBB4 AC392C7C */ sw $t9, %lo(D_800E2C7C)($at) +.L800ADBB8: +/* 0AE7B8 800ADBB8 8FBF0014 */ lw $ra, 0x14($sp) +/* 0AE7BC 800ADBBC 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0AE7C0 800ADBC0 03E00008 */ jr $ra +/* 0AE7C4 800ADBC4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800ADBC8.s b/asm/non_matchings/unknown_09F8F0/func_800ADBC8.s new file mode 100644 index 00000000..dcc4bc57 --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800ADBC8.s @@ -0,0 +1,65 @@ +glabel func_800ADBC8 +/* 0AE7C8 800ADBC8 3C0E800E */ lui $t6, %hi(D_800E2C60) # $t6, 0x800e +/* 0AE7CC 800ADBCC 8DCE2C60 */ lw $t6, %lo(D_800E2C60)($t6) +/* 0AE7D0 800ADBD0 3C014490 */ li $at, 0x44900000 # 1152.000000 +/* 0AE7D4 800ADBD4 000E7983 */ sra $t7, $t6, 6 +/* 0AE7D8 800ADBD8 448F3000 */ mtc1 $t7, $f6 +/* 0AE7DC 800ADBDC 44812000 */ mtc1 $at, $f4 +/* 0AE7E0 800ADBE0 46803220 */ cvt.s.w $f8, $f6 +/* 0AE7E4 800ADBE4 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0AE7E8 800ADBE8 3C188012 */ lui $t8, %hi(D_80127C1C) # $t8, 0x8012 +/* 0AE7EC 800ADBEC 46082281 */ sub.s $f10, $f4, $f8 +/* 0AE7F0 800ADBF0 8F187C1C */ lw $t8, %lo(D_80127C1C)($t8) +/* 0AE7F4 800ADBF4 AFBF001C */ sw $ra, 0x1c($sp) +/* 0AE7F8 800ADBF8 AFA40038 */ sw $a0, 0x38($sp) +/* 0AE7FC 800ADBFC E7AA0028 */ swc1 $f10, 0x28($sp) +/* 0AE800 800ADC00 87040000 */ lh $a0, ($t8) +/* 0AE804 800ADC04 0C01C1F1 */ jal func_800707C4 +/* 0AE808 800ADC08 00000000 */ nop +/* 0AE80C 800ADC0C C7A60028 */ lwc1 $f6, 0x28($sp) +/* 0AE810 800ADC10 3C198012 */ lui $t9, %hi(D_80127C1C) # $t9, 0x8012 +/* 0AE814 800ADC14 46060302 */ mul.s $f12, $f0, $f6 +/* 0AE818 800ADC18 8F397C1C */ lw $t9, %lo(D_80127C1C)($t9) +/* 0AE81C 800ADC1C 00000000 */ nop +/* 0AE820 800ADC20 87240000 */ lh $a0, ($t9) +/* 0AE824 800ADC24 0C01C1FE */ jal func_800707F8 +/* 0AE828 800ADC28 E7AC0024 */ swc1 $f12, 0x24($sp) +/* 0AE82C 800ADC2C C7A40028 */ lwc1 $f4, 0x28($sp) +/* 0AE830 800ADC30 3C028012 */ lui $v0, %hi(D_80127C1C) # $v0, 0x8012 +/* 0AE834 800ADC34 46040082 */ mul.s $f2, $f0, $f4 +/* 0AE838 800ADC38 C7AC0024 */ lwc1 $f12, 0x24($sp) +/* 0AE83C 800ADC3C 8C427C1C */ lw $v0, %lo(D_80127C1C)($v0) +/* 0AE840 800ADC40 3C03800E */ lui $v1, %hi(D_800E2C94) # $v1, 0x800e +/* 0AE844 800ADC44 460C1281 */ sub.s $f10, $f2, $f12 +/* 0AE848 800ADC48 C448000C */ lwc1 $f8, 0xc($v0) +/* 0AE84C 800ADC4C 24632C94 */ addiu $v1, %lo(D_800E2C94) # addiu $v1, $v1, 0x2c94 +/* 0AE850 800ADC50 8C640000 */ lw $a0, ($v1) +/* 0AE854 800ADC54 C4460014 */ lwc1 $f6, 0x14($v0) +/* 0AE858 800ADC58 46001107 */ neg.s $f4, $f2 +/* 0AE85C 800ADC5C 460A4380 */ add.s $f14, $f8, $f10 +/* 0AE860 800ADC60 C4500010 */ lwc1 $f16, 0x10($v0) +/* 0AE864 800ADC64 460C2201 */ sub.s $f8, $f4, $f12 +/* 0AE868 800ADC68 10800008 */ beqz $a0, .L800ADC8C +/* 0AE86C 800ADC6C 46083480 */ add.s $f18, $f6, $f8 +/* 0AE870 800ADC70 44057000 */ mfc1 $a1, $f14 +/* 0AE874 800ADC74 44068000 */ mfc1 $a2, $f16 +/* 0AE878 800ADC78 44079000 */ mfc1 $a3, $f18 +/* 0AE87C 800ADC7C 0C0025B6 */ jal func_800096D8 +/* 0AE880 800ADC80 00000000 */ nop +/* 0AE884 800ADC84 1000000A */ b .L800ADCB0 +/* 0AE888 800ADC88 8FBF001C */ lw $ra, 0x1c($sp) +.L800ADC8C: +/* 0AE88C 800ADC8C 44057000 */ mfc1 $a1, $f14 +/* 0AE890 800ADC90 44068000 */ mfc1 $a2, $f16 +/* 0AE894 800ADC94 44079000 */ mfc1 $a3, $f18 +/* 0AE898 800ADC98 24080001 */ li $t0, 1 +/* 0AE89C 800ADC9C AFA80010 */ sw $t0, 0x10($sp) +/* 0AE8A0 800ADCA0 2404023E */ li $a0, 574 +/* 0AE8A4 800ADCA4 0C002556 */ jal func_80009558 +/* 0AE8A8 800ADCA8 AFA30014 */ sw $v1, 0x14($sp) +/* 0AE8AC 800ADCAC 8FBF001C */ lw $ra, 0x1c($sp) +.L800ADCB0: +/* 0AE8B0 800ADCB0 27BD0038 */ addiu $sp, $sp, 0x38 +/* 0AE8B4 800ADCB4 03E00008 */ jr $ra +/* 0AE8B8 800ADCB8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_09F8F0/func_800ADCBC.s b/asm/non_matchings/unknown_09F8F0/func_800ADCBC.s new file mode 100644 index 00000000..7d5dc05a --- /dev/null +++ b/asm/non_matchings/unknown_09F8F0/func_800ADCBC.s @@ -0,0 +1,370 @@ +glabel func_800ADCBC +/* 0AE8BC 800ADCBC 27BDFF60 */ addiu $sp, $sp, -0xa0 +/* 0AE8C0 800ADCC0 AFBF0044 */ sw $ra, 0x44($sp) +/* 0AE8C4 800ADCC4 AFB30040 */ sw $s3, 0x40($sp) +/* 0AE8C8 800ADCC8 AFB2003C */ sw $s2, 0x3c($sp) +/* 0AE8CC 800ADCCC AFB10038 */ sw $s1, 0x38($sp) +/* 0AE8D0 800ADCD0 AFB00034 */ sw $s0, 0x34($sp) +/* 0AE8D4 800ADCD4 E7BB0028 */ swc1 $f27, 0x28($sp) +/* 0AE8D8 800ADCD8 E7BA002C */ swc1 $f26, 0x2c($sp) +/* 0AE8DC 800ADCDC E7B90020 */ swc1 $f25, 0x20($sp) +/* 0AE8E0 800ADCE0 E7B80024 */ swc1 $f24, 0x24($sp) +/* 0AE8E4 800ADCE4 E7B70018 */ swc1 $f23, 0x18($sp) +/* 0AE8E8 800ADCE8 E7B6001C */ swc1 $f22, 0x1c($sp) +/* 0AE8EC 800ADCEC E7B50010 */ swc1 $f21, 0x10($sp) +/* 0AE8F0 800ADCF0 E7B40014 */ swc1 $f20, 0x14($sp) +/* 0AE8F4 800ADCF4 AFA500A4 */ sw $a1, 0xa4($sp) +/* 0AE8F8 800ADCF8 8C82000C */ lw $v0, 0xc($a0) +/* 0AE8FC 800ADCFC 00808025 */ move $s0, $a0 +/* 0AE900 800ADD00 1040014A */ beqz $v0, .L800AE22C +/* 0AE904 800ADD04 8FBF0044 */ lw $ra, 0x44($sp) +/* 0AE908 800ADD08 90510000 */ lbu $s1, ($v0) +/* 0AE90C 800ADD0C 90520001 */ lbu $s2, 1($v0) +/* 0AE910 800ADD10 00117140 */ sll $t6, $s1, 5 +/* 0AE914 800ADD14 00127940 */ sll $t7, $s2, 5 +/* 0AE918 800ADD18 000E1840 */ sll $v1, $t6, 1 +/* 0AE91C 800ADD1C 000FC040 */ sll $t8, $t7, 1 +/* 0AE920 800ADD20 2463FFFF */ addiu $v1, $v1, -1 +/* 0AE924 800ADD24 2719FFFF */ addiu $t9, $t8, -1 +/* 0AE928 800ADD28 AFA3008C */ sw $v1, 0x8c($sp) +/* 0AE92C 800ADD2C AFB90088 */ sw $t9, 0x88($sp) +/* 0AE930 800ADD30 848D0008 */ lh $t5, 8($a0) +/* 0AE934 800ADD34 00409825 */ move $s3, $v0 +/* 0AE938 800ADD38 01A50019 */ multu $t5, $a1 +/* 0AE93C 800ADD3C 01C08825 */ move $s1, $t6 +/* 0AE940 800ADD40 01E09025 */ move $s2, $t7 +/* 0AE944 800ADD44 AFA3004C */ sw $v1, 0x4c($sp) +/* 0AE948 800ADD48 00002012 */ mflo $a0 +/* 0AE94C 800ADD4C 0C00322D */ jal func_8000C8B4 +/* 0AE950 800ADD50 00000000 */ nop +/* 0AE954 800ADD54 860F0000 */ lh $t7, ($s0) +/* 0AE958 800ADD58 8FA3004C */ lw $v1, 0x4c($sp) +/* 0AE95C 800ADD5C 004FC021 */ addu $t8, $v0, $t7 +/* 0AE960 800ADD60 0303C824 */ and $t9, $t8, $v1 +/* 0AE964 800ADD64 A6190000 */ sh $t9, ($s0) +/* 0AE968 800ADD68 8FAE00A4 */ lw $t6, 0xa4($sp) +/* 0AE96C 800ADD6C 860D000A */ lh $t5, 0xa($s0) +/* 0AE970 800ADD70 00000000 */ nop +/* 0AE974 800ADD74 01AE0019 */ multu $t5, $t6 +/* 0AE978 800ADD78 00002012 */ mflo $a0 +/* 0AE97C 800ADD7C 0C00322D */ jal func_8000C8B4 +/* 0AE980 800ADD80 00000000 */ nop +/* 0AE984 800ADD84 860E0004 */ lh $t6, 4($s0) +/* 0AE988 800ADD88 860F0002 */ lh $t7, 2($s0) +/* 0AE98C 800ADD8C 01D10019 */ multu $t6, $s1 +/* 0AE990 800ADD90 8FB90088 */ lw $t9, 0x88($sp) +/* 0AE994 800ADD94 004FC021 */ addu $t8, $v0, $t7 +/* 0AE998 800ADD98 03196824 */ and $t5, $t8, $t9 +/* 0AE99C 800ADD9C 86180006 */ lh $t8, 6($s0) +/* 0AE9A0 800ADDA0 A60D0002 */ sh $t5, 2($s0) +/* 0AE9A4 800ADDA4 3C0D800E */ lui $t5, %hi(D_800E2C6C) # $t5, 0x800e +/* 0AE9A8 800ADDA8 8DAD2C6C */ lw $t5, %lo(D_800E2C6C)($t5) +/* 0AE9AC 800ADDAC 3C028012 */ lui $v0, %hi(D_80127C1C) # $v0, 0x8012 +/* 0AE9B0 800ADDB0 000D7083 */ sra $t6, $t5, 2 +/* 0AE9B4 800ADDB4 00008812 */ mflo $s1 +/* 0AE9B8 800ADDB8 00117A03 */ sra $t7, $s1, 8 +/* 0AE9BC 800ADDBC 01E08825 */ move $s1, $t7 +/* 0AE9C0 800ADDC0 03120019 */ multu $t8, $s2 +/* 0AE9C4 800ADDC4 3C0F800E */ lui $t7, %hi(D_800E2C60) # $t7, 0x800e +/* 0AE9C8 800ADDC8 8DEF2C60 */ lw $t7, %lo(D_800E2C60)($t7) +/* 0AE9CC 800ADDCC 00009012 */ mflo $s2 +/* 0AE9D0 800ADDD0 0012CA03 */ sra $t9, $s2, 8 +/* 0AE9D4 800ADDD4 03209025 */ move $s2, $t9 +/* 0AE9D8 800ADDD8 01CF0019 */ multu $t6, $t7 +/* 0AE9DC 800ADDDC 92190016 */ lbu $t9, 0x16($s0) +/* 0AE9E0 800ADDE0 00117080 */ sll $t6, $s1, 2 +/* 0AE9E4 800ADDE4 00001812 */ mflo $v1 +/* 0AE9E8 800ADDE8 0003C383 */ sra $t8, $v1, 0xe +/* 0AE9EC 800ADDEC 00000000 */ nop +/* 0AE9F0 800ADDF0 03380019 */ multu $t9, $t8 +/* 0AE9F4 800ADDF4 00001812 */ mflo $v1 +/* 0AE9F8 800ADDF8 00036C03 */ sra $t5, $v1, 0x10 +/* 0AE9FC 800ADDFC 19A0010A */ blez $t5, .L800AE228 +/* 0AEA00 800ADE00 01A01825 */ move $v1, $t5 +/* 0AEA04 800ADE04 8C427C1C */ lw $v0, %lo(D_80127C1C)($v0) +/* 0AEA08 800ADE08 01D17023 */ subu $t6, $t6, $s1 +/* 0AEA0C 800ADE0C 844F0000 */ lh $t7, ($v0) +/* 0AEA10 800ADE10 000E7040 */ sll $t6, $t6, 1 +/* 0AEA14 800ADE14 01CF0019 */ multu $t6, $t7 +/* 0AEA18 800ADE18 860D0000 */ lh $t5, ($s0) +/* 0AEA1C 800ADE1C 860A0002 */ lh $t2, 2($s0) +/* 0AEA20 800ADE20 8FAF008C */ lw $t7, 0x8c($sp) +/* 0AEA24 800ADE24 84440004 */ lh $a0, 4($v0) +/* 0AEA28 800ADE28 AFA30084 */ sw $v1, 0x84($sp) +/* 0AEA2C 800ADE2C 024A9021 */ addu $s2, $s2, $t2 +/* 0AEA30 800ADE30 AFAA0098 */ sw $t2, 0x98($sp) +/* 0AEA34 800ADE34 0000C012 */ mflo $t8 +/* 0AEA38 800ADE38 0018CC03 */ sra $t9, $t8, 0x10 +/* 0AEA3C 800ADE3C 01B97021 */ addu $t6, $t5, $t9 +/* 0AEA40 800ADE40 01CF4024 */ and $t0, $t6, $t7 +/* 0AEA44 800ADE44 02288821 */ addu $s1, $s1, $t0 +/* 0AEA48 800ADE48 0C01C1F1 */ jal func_800707C4 +/* 0AEA4C 800ADE4C AFA8009C */ sw $t0, 0x9c($sp) +/* 0AEA50 800ADE50 3C188012 */ lui $t8, %hi(D_80127C1C) # $t8, 0x8012 +/* 0AEA54 800ADE54 8F187C1C */ lw $t8, %lo(D_80127C1C)($t8) +/* 0AEA58 800ADE58 00000000 */ nop +/* 0AEA5C 800ADE5C 87040004 */ lh $a0, 4($t8) +/* 0AEA60 800ADE60 0C01C1FE */ jal func_800707F8 +/* 0AEA64 800ADE64 E7A0007C */ swc1 $f0, 0x7c($sp) +/* 0AEA68 800ADE68 3C01800E */ lui $at, %hi(D_800E2A8C) # $at, 0x800e +/* 0AEA6C 800ADE6C C42C2A8C */ lwc1 $f12, %lo(D_800E2A8C)($at) +/* 0AEA70 800ADE70 3C01800E */ lui $at, %hi(D_800E2A9C) # $at, 0x800e +/* 0AEA74 800ADE74 46006102 */ mul.s $f4, $f12, $f0 +/* 0AEA78 800ADE78 C7A2007C */ lwc1 $f2, 0x7c($sp) +/* 0AEA7C 800ADE7C C42E2A90 */ lwc1 $f14, %lo(D_800E2A90)($at) +/* 0AEA80 800ADE80 C4302A94 */ lwc1 $f16, %lo(D_800E2A94)($at) +/* 0AEA84 800ADE84 46027182 */ mul.s $f6, $f14, $f2 +/* 0AEA88 800ADE88 C4322A98 */ lwc1 $f18, %lo(D_800E2A98)($at) +/* 0AEA8C 800ADE8C C4342A9C */ lwc1 $f20, %lo(D_800E2A9C)($at) +/* 0AEA90 800ADE90 3C01800E */ lui $at, %hi(D_800E2AA8) # $at, 0x800e +/* 0AEA94 800ADE94 46062201 */ sub.s $f8, $f4, $f6 +/* 0AEA98 800ADE98 C4362AA0 */ lwc1 $f22, %lo(D_800E2AA0)($at) +/* 0AEA9C 800ADE9C 444EF800 */ cfc1 $t6, $31 +/* 0AEAA0 800ADEA0 C4382AA4 */ lwc1 $f24, %lo(D_800E2AA4)($at) +/* 0AEAA4 800ADEA4 C43A2AA8 */ lwc1 $f26, %lo(D_800E2AA8)($at) +/* 0AEAA8 800ADEA8 35C10003 */ ori $at, $t6, 3 +/* 0AEAAC 800ADEAC 38210002 */ xori $at, $at, 2 +/* 0AEAB0 800ADEB0 44C1F800 */ ctc1 $at, $31 +/* 0AEAB4 800ADEB4 3C09800E */ lui $t1, %hi(D_800E2C90) # $t1, 0x800e +/* 0AEAB8 800ADEB8 460042A4 */ cvt.w.s $f10, $f8 +/* 0AEABC 800ADEBC 25292C90 */ addiu $t1, %lo(D_800E2C90) # addiu $t1, $t1, 0x2c90 +/* 0AEAC0 800ADEC0 44CEF800 */ ctc1 $t6, $31 +/* 0AEAC4 800ADEC4 440F5000 */ mfc1 $t7, $f10 +/* 0AEAC8 800ADEC8 46026102 */ mul.s $f4, $f12, $f2 +/* 0AEACC 800ADECC 8D2D0000 */ lw $t5, ($t1) +/* 0AEAD0 800ADED0 3C0B800E */ lui $t3, %hi(D_800E2AAC) # $t3, 0x800e +/* 0AEAD4 800ADED4 000DC880 */ sll $t9, $t5, 2 +/* 0AEAD8 800ADED8 46007182 */ mul.s $f6, $f14, $f0 +/* 0AEADC 800ADEDC 032DC821 */ addu $t9, $t9, $t5 +/* 0AEAE0 800ADEE0 256B2AAC */ addiu $t3, %lo(D_800E2AAC) # addiu $t3, $t3, 0x2aac +/* 0AEAE4 800ADEE4 0019C840 */ sll $t9, $t9, 1 +/* 0AEAE8 800ADEE8 46062200 */ add.s $f8, $f4, $f6 +/* 0AEAEC 800ADEEC 01791021 */ addu $v0, $t3, $t9 +/* 0AEAF0 800ADEF0 4458F800 */ cfc1 $t8, $31 +/* 0AEAF4 800ADEF4 A44F0000 */ sh $t7, ($v0) +/* 0AEAF8 800ADEF8 37010003 */ ori $at, $t8, 3 +/* 0AEAFC 800ADEFC 38210002 */ xori $at, $at, 2 +/* 0AEB00 800ADF00 44C1F800 */ ctc1 $at, $31 +/* 0AEB04 800ADF04 3C0C8012 */ lui $t4, %hi(D_80127C18) # $t4, 0x8012 +/* 0AEB08 800ADF08 460042A4 */ cvt.w.s $f10, $f8 +/* 0AEB0C 800ADF0C 258C7C18 */ addiu $t4, %lo(D_80127C18) # addiu $t4, $t4, 0x7c18 +/* 0AEB10 800ADF10 44D8F800 */ ctc1 $t8, $31 +/* 0AEB14 800ADF14 440D5000 */ mfc1 $t5, $f10 +/* 0AEB18 800ADF18 46008102 */ mul.s $f4, $f16, $f0 +/* 0AEB1C 800ADF1C A44D0002 */ sh $t5, 2($v0) +/* 0AEB20 800ADF20 8FAA0098 */ lw $t2, 0x98($sp) +/* 0AEB24 800ADF24 8FA30084 */ lw $v1, 0x84($sp) +/* 0AEB28 800ADF28 46029182 */ mul.s $f6, $f18, $f2 +/* 0AEB2C 800ADF2C 8FA8009C */ lw $t0, 0x9c($sp) +/* 0AEB30 800ADF30 27A40068 */ addiu $a0, $sp, 0x68 +/* 0AEB34 800ADF34 00002825 */ move $a1, $zero +/* 0AEB38 800ADF38 46062201 */ sub.s $f8, $f4, $f6 +/* 0AEB3C 800ADF3C 4459F800 */ cfc1 $t9, $31 +/* 0AEB40 800ADF40 00000000 */ nop +/* 0AEB44 800ADF44 37210003 */ ori $at, $t9, 3 +/* 0AEB48 800ADF48 38210002 */ xori $at, $at, 2 +/* 0AEB4C 800ADF4C 44C1F800 */ ctc1 $at, $31 +/* 0AEB50 800ADF50 00000000 */ nop +/* 0AEB54 800ADF54 460042A4 */ cvt.w.s $f10, $f8 +/* 0AEB58 800ADF58 44D9F800 */ ctc1 $t9, $31 +/* 0AEB5C 800ADF5C 440E5000 */ mfc1 $t6, $f10 +/* 0AEB60 800ADF60 46028102 */ mul.s $f4, $f16, $f2 +/* 0AEB64 800ADF64 A44E000A */ sh $t6, 0xa($v0) +/* 0AEB68 800ADF68 46009182 */ mul.s $f6, $f18, $f0 +/* 0AEB6C 800ADF6C 46062200 */ add.s $f8, $f4, $f6 +/* 0AEB70 800ADF70 444FF800 */ cfc1 $t7, $31 +/* 0AEB74 800ADF74 00000000 */ nop +/* 0AEB78 800ADF78 35E10003 */ ori $at, $t7, 3 +/* 0AEB7C 800ADF7C 38210002 */ xori $at, $at, 2 +/* 0AEB80 800ADF80 44C1F800 */ ctc1 $at, $31 +/* 0AEB84 800ADF84 00000000 */ nop +/* 0AEB88 800ADF88 460042A4 */ cvt.w.s $f10, $f8 +/* 0AEB8C 800ADF8C 44CFF800 */ ctc1 $t7, $31 +/* 0AEB90 800ADF90 44185000 */ mfc1 $t8, $f10 +/* 0AEB94 800ADF94 4600A102 */ mul.s $f4, $f20, $f0 +/* 0AEB98 800ADF98 A458000C */ sh $t8, 0xc($v0) +/* 0AEB9C 800ADF9C 4602B182 */ mul.s $f6, $f22, $f2 +/* 0AEBA0 800ADFA0 46062201 */ sub.s $f8, $f4, $f6 +/* 0AEBA4 800ADFA4 444DF800 */ cfc1 $t5, $31 +/* 0AEBA8 800ADFA8 00000000 */ nop +/* 0AEBAC 800ADFAC 35A10003 */ ori $at, $t5, 3 +/* 0AEBB0 800ADFB0 38210002 */ xori $at, $at, 2 +/* 0AEBB4 800ADFB4 44C1F800 */ ctc1 $at, $31 +/* 0AEBB8 800ADFB8 00000000 */ nop +/* 0AEBBC 800ADFBC 460042A4 */ cvt.w.s $f10, $f8 +/* 0AEBC0 800ADFC0 44CDF800 */ ctc1 $t5, $31 +/* 0AEBC4 800ADFC4 44195000 */ mfc1 $t9, $f10 +/* 0AEBC8 800ADFC8 4602A102 */ mul.s $f4, $f20, $f2 +/* 0AEBCC 800ADFCC A4590014 */ sh $t9, 0x14($v0) +/* 0AEBD0 800ADFD0 4600B182 */ mul.s $f6, $f22, $f0 +/* 0AEBD4 800ADFD4 46062200 */ add.s $f8, $f4, $f6 +/* 0AEBD8 800ADFD8 444EF800 */ cfc1 $t6, $31 +/* 0AEBDC 800ADFDC 00000000 */ nop +/* 0AEBE0 800ADFE0 35C10003 */ ori $at, $t6, 3 +/* 0AEBE4 800ADFE4 38210002 */ xori $at, $at, 2 +/* 0AEBE8 800ADFE8 44C1F800 */ ctc1 $at, $31 +/* 0AEBEC 800ADFEC 00000000 */ nop +/* 0AEBF0 800ADFF0 460042A4 */ cvt.w.s $f10, $f8 +/* 0AEBF4 800ADFF4 44CEF800 */ ctc1 $t6, $31 +/* 0AEBF8 800ADFF8 440F5000 */ mfc1 $t7, $f10 +/* 0AEBFC 800ADFFC 4600C102 */ mul.s $f4, $f24, $f0 +/* 0AEC00 800AE000 A44F0016 */ sh $t7, 0x16($v0) +/* 0AEC04 800AE004 3C0F8012 */ lui $t7, %hi(D_80127C0C) # $t7, 0x8012 +/* 0AEC08 800AE008 4602D182 */ mul.s $f6, $f26, $f2 +/* 0AEC0C 800AE00C 46062201 */ sub.s $f8, $f4, $f6 +/* 0AEC10 800AE010 4458F800 */ cfc1 $t8, $31 +/* 0AEC14 800AE014 00000000 */ nop +/* 0AEC18 800AE018 37010003 */ ori $at, $t8, 3 +/* 0AEC1C 800AE01C 38210002 */ xori $at, $at, 2 +/* 0AEC20 800AE020 44C1F800 */ ctc1 $at, $31 +/* 0AEC24 800AE024 00000000 */ nop +/* 0AEC28 800AE028 460042A4 */ cvt.w.s $f10, $f8 +/* 0AEC2C 800AE02C 44D8F800 */ ctc1 $t8, $31 +/* 0AEC30 800AE030 440D5000 */ mfc1 $t5, $f10 +/* 0AEC34 800AE034 4602C102 */ mul.s $f4, $f24, $f2 +/* 0AEC38 800AE038 A44D001E */ sh $t5, 0x1e($v0) +/* 0AEC3C 800AE03C 3C184000 */ lui $t8, (0x40000102 >> 16) # lui $t8, 0x4000 +/* 0AEC40 800AE040 3C0D4002 */ lui $t5, (0x40020300 >> 16) # lui $t5, 0x4002 +/* 0AEC44 800AE044 4600D182 */ mul.s $f6, $f26, $f0 +/* 0AEC48 800AE048 37180102 */ ori $t8, (0x40000102 & 0xFFFF) # ori $t8, $t8, 0x102 +/* 0AEC4C 800AE04C 35AD0300 */ ori $t5, (0x40020300 & 0xFFFF) # ori $t5, $t5, 0x300 +/* 0AEC50 800AE050 46062200 */ add.s $f8, $f4, $f6 +/* 0AEC54 800AE054 4459F800 */ cfc1 $t9, $31 +/* 0AEC58 800AE058 00000000 */ nop +/* 0AEC5C 800AE05C 37210003 */ ori $at, $t9, 3 +/* 0AEC60 800AE060 38210002 */ xori $at, $at, 2 +/* 0AEC64 800AE064 44C1F800 */ ctc1 $at, $31 +/* 0AEC68 800AE068 00000000 */ nop +/* 0AEC6C 800AE06C 460042A4 */ cvt.w.s $f10, $f8 +/* 0AEC70 800AE070 440E5000 */ mfc1 $t6, $f10 +/* 0AEC74 800AE074 44D9F800 */ ctc1 $t9, $31 +/* 0AEC78 800AE078 A44E0020 */ sh $t6, 0x20($v0) +/* 0AEC7C 800AE07C 8DEF7C0C */ lw $t7, %lo(D_80127C0C)($t7) +/* 0AEC80 800AE080 8D820000 */ lw $v0, ($t4) +/* 0AEC84 800AE084 AFAF0068 */ sw $t7, 0x68($sp) +/* 0AEC88 800AE088 AC580000 */ sw $t8, ($v0) +/* 0AEC8C 800AE08C A4480004 */ sh $t0, 4($v0) +/* 0AEC90 800AE090 A44A0006 */ sh $t2, 6($v0) +/* 0AEC94 800AE094 A4510008 */ sh $s1, 8($v0) +/* 0AEC98 800AE098 A44A000A */ sh $t2, 0xa($v0) +/* 0AEC9C 800AE09C A451000C */ sh $s1, 0xc($v0) +/* 0AECA0 800AE0A0 A452000E */ sh $s2, 0xe($v0) +/* 0AECA4 800AE0A4 AC4D0010 */ sw $t5, 0x10($v0) +/* 0AECA8 800AE0A8 A4510014 */ sh $s1, 0x14($v0) +/* 0AECAC 800AE0AC A4520016 */ sh $s2, 0x16($v0) +/* 0AECB0 800AE0B0 A4480018 */ sh $t0, 0x18($v0) +/* 0AECB4 800AE0B4 A452001A */ sh $s2, 0x1a($v0) +/* 0AECB8 800AE0B8 A448001C */ sh $t0, 0x1c($v0) +/* 0AECBC 800AE0BC A44A001E */ sh $t2, 0x1e($v0) +/* 0AECC0 800AE0C0 92190010 */ lbu $t9, 0x10($s0) +/* 0AECC4 800AE0C4 920F0011 */ lbu $t7, 0x11($s0) +/* 0AECC8 800AE0C8 00197600 */ sll $t6, $t9, 0x18 +/* 0AECCC 800AE0CC 92190012 */ lbu $t9, 0x12($s0) +/* 0AECD0 800AE0D0 000FC400 */ sll $t8, $t7, 0x10 +/* 0AECD4 800AE0D4 01D86825 */ or $t5, $t6, $t8 +/* 0AECD8 800AE0D8 00197A00 */ sll $t7, $t9, 8 +/* 0AECDC 800AE0DC 92180013 */ lbu $t8, 0x13($s0) +/* 0AECE0 800AE0E0 01AF7025 */ or $t6, $t5, $t7 +/* 0AECE4 800AE0E4 920D0014 */ lbu $t5, 0x14($s0) +/* 0AECE8 800AE0E8 0018CE00 */ sll $t9, $t8, 0x18 +/* 0AECEC 800AE0EC 92180015 */ lbu $t8, 0x15($s0) +/* 0AECF0 800AE0F0 000D7C00 */ sll $t7, $t5, 0x10 +/* 0AECF4 800AE0F4 01C33025 */ or $a2, $t6, $v1 +/* 0AECF8 800AE0F8 032F7025 */ or $t6, $t9, $t7 +/* 0AECFC 800AE0FC 24420020 */ addiu $v0, $v0, 0x20 +/* 0AED00 800AE100 00186A00 */ sll $t5, $t8, 8 +/* 0AED04 800AE104 01CD3825 */ or $a3, $t6, $t5 +/* 0AED08 800AE108 0C01FD65 */ jal func_8007F594 +/* 0AED0C 800AE10C AFA20064 */ sw $v0, 0x64($sp) +/* 0AED10 800AE110 8FA30068 */ lw $v1, 0x68($sp) +/* 0AED14 800AE114 3C010700 */ lui $at, 0x700 +/* 0AED18 800AE118 246F0008 */ addiu $t7, $v1, 8 +/* 0AED1C 800AE11C AFAF0068 */ sw $t7, 0x68($sp) +/* 0AED20 800AE120 8664000A */ lh $a0, 0xa($s3) +/* 0AED24 800AE124 8FA20064 */ lw $v0, 0x64($sp) +/* 0AED28 800AE128 309800FF */ andi $t8, $a0, 0xff +/* 0AED2C 800AE12C 00187400 */ sll $t6, $t8, 0x10 +/* 0AED30 800AE130 0004C8C0 */ sll $t9, $a0, 3 +/* 0AED34 800AE134 332FFFFF */ andi $t7, $t9, 0xffff +/* 0AED38 800AE138 01C16825 */ or $t5, $t6, $at +/* 0AED3C 800AE13C 01AFC025 */ or $t8, $t5, $t7 +/* 0AED40 800AE140 AC780000 */ sw $t8, ($v1) +/* 0AED44 800AE144 8E6E000C */ lw $t6, 0xc($s3) +/* 0AED48 800AE148 3C088000 */ lui $t0, 0x8000 +/* 0AED4C 800AE14C 3C09800E */ lui $t1, %hi(D_800E2C90) # $t1, 0x800e +/* 0AED50 800AE150 01C8C821 */ addu $t9, $t6, $t0 +/* 0AED54 800AE154 25292C90 */ addiu $t1, %lo(D_800E2C90) # addiu $t1, $t1, 0x2c90 +/* 0AED58 800AE158 AC790004 */ sw $t9, 4($v1) +/* 0AED5C 800AE15C 8D380000 */ lw $t8, ($t1) +/* 0AED60 800AE160 240A000A */ li $t2, 10 +/* 0AED64 800AE164 030A0019 */ multu $t8, $t2 +/* 0AED68 800AE168 8FA50068 */ lw $a1, 0x68($sp) +/* 0AED6C 800AE16C 3C0B800E */ lui $t3, %hi(D_800E2AAC) # $t3, 0x800e +/* 0AED70 800AE170 256B2AAC */ addiu $t3, %lo(D_800E2AAC) # addiu $t3, $t3, 0x2aac +/* 0AED74 800AE174 24AF0008 */ addiu $t7, $a1, 8 +/* 0AED78 800AE178 AFAF0068 */ sw $t7, 0x68($sp) +/* 0AED7C 800AE17C 3C010400 */ lui $at, 0x400 +/* 0AED80 800AE180 3C0C8012 */ lui $t4, %hi(D_80127C18) # $t4, 0x8012 +/* 0AED84 800AE184 258C7C18 */ addiu $t4, %lo(D_80127C18) # addiu $t4, $t4, 0x7c18 +/* 0AED88 800AE188 00007012 */ mflo $t6 +/* 0AED8C 800AE18C 016EC821 */ addu $t9, $t3, $t6 +/* 0AED90 800AE190 03286821 */ addu $t5, $t9, $t0 +/* 0AED94 800AE194 31AF0006 */ andi $t7, $t5, 6 +/* 0AED98 800AE198 35F80018 */ ori $t8, $t7, 0x18 +/* 0AED9C 800AE19C 330E00FF */ andi $t6, $t8, 0xff +/* 0AEDA0 800AE1A0 000ECC00 */ sll $t9, $t6, 0x10 +/* 0AEDA4 800AE1A4 03216825 */ or $t5, $t9, $at +/* 0AEDA8 800AE1A8 35AF0050 */ ori $t7, $t5, 0x50 +/* 0AEDAC 800AE1AC ACAF0000 */ sw $t7, ($a1) +/* 0AEDB0 800AE1B0 8D380000 */ lw $t8, ($t1) +/* 0AEDB4 800AE1B4 3C018012 */ lui $at, %hi(D_80127C0C) # $at, 0x8012 +/* 0AEDB8 800AE1B8 030A0019 */ multu $t8, $t2 +/* 0AEDBC 800AE1BC 00007012 */ mflo $t6 +/* 0AEDC0 800AE1C0 016EC821 */ addu $t9, $t3, $t6 +/* 0AEDC4 800AE1C4 03286821 */ addu $t5, $t9, $t0 +/* 0AEDC8 800AE1C8 ACAD0004 */ sw $t5, 4($a1) +/* 0AEDCC 800AE1CC 8FAF0068 */ lw $t7, 0x68($sp) +/* 0AEDD0 800AE1D0 3C0E0511 */ lui $t6, (0x05110020 >> 16) # lui $t6, 0x511 +/* 0AEDD4 800AE1D4 25F80008 */ addiu $t8, $t7, 8 +/* 0AEDD8 800AE1D8 AFB80068 */ sw $t8, 0x68($sp) +/* 0AEDDC 800AE1DC 35CE0020 */ ori $t6, (0x05110020 & 0xFFFF) # ori $t6, $t6, 0x20 +/* 0AEDE0 800AE1E0 ADEE0000 */ sw $t6, ($t7) +/* 0AEDE4 800AE1E4 8D990000 */ lw $t9, ($t4) +/* 0AEDE8 800AE1E8 3C0EE700 */ lui $t6, 0xe700 +/* 0AEDEC 800AE1EC 03286821 */ addu $t5, $t9, $t0 +/* 0AEDF0 800AE1F0 ADED0004 */ sw $t5, 4($t7) +/* 0AEDF4 800AE1F4 8FAF0068 */ lw $t7, 0x68($sp) +/* 0AEDF8 800AE1F8 00000000 */ nop +/* 0AEDFC 800AE1FC 25F80008 */ addiu $t8, $t7, 8 +/* 0AEE00 800AE200 AFB80068 */ sw $t8, 0x68($sp) +/* 0AEE04 800AE204 ADE00004 */ sw $zero, 4($t7) +/* 0AEE08 800AE208 ADEE0000 */ sw $t6, ($t7) +/* 0AEE0C 800AE20C 8D390000 */ lw $t9, ($t1) +/* 0AEE10 800AE210 8FB80068 */ lw $t8, 0x68($sp) +/* 0AEE14 800AE214 272D0004 */ addiu $t5, $t9, 4 +/* 0AEE18 800AE218 31AF000F */ andi $t7, $t5, 0xf +/* 0AEE1C 800AE21C AD2F0000 */ sw $t7, ($t1) +/* 0AEE20 800AE220 AC387C0C */ sw $t8, %lo(D_80127C0C)($at) +/* 0AEE24 800AE224 AD820000 */ sw $v0, ($t4) +.L800AE228: +/* 0AEE28 800AE228 8FBF0044 */ lw $ra, 0x44($sp) +.L800AE22C: +/* 0AEE2C 800AE22C C7B50010 */ lwc1 $f21, 0x10($sp) +/* 0AEE30 800AE230 C7B40014 */ lwc1 $f20, 0x14($sp) +/* 0AEE34 800AE234 C7B70018 */ lwc1 $f23, 0x18($sp) +/* 0AEE38 800AE238 C7B6001C */ lwc1 $f22, 0x1c($sp) +/* 0AEE3C 800AE23C C7B90020 */ lwc1 $f25, 0x20($sp) +/* 0AEE40 800AE240 C7B80024 */ lwc1 $f24, 0x24($sp) +/* 0AEE44 800AE244 C7BB0028 */ lwc1 $f27, 0x28($sp) +/* 0AEE48 800AE248 C7BA002C */ lwc1 $f26, 0x2c($sp) +/* 0AEE4C 800AE24C 8FB00034 */ lw $s0, 0x34($sp) +/* 0AEE50 800AE250 8FB10038 */ lw $s1, 0x38($sp) +/* 0AEE54 800AE254 8FB2003C */ lw $s2, 0x3c($sp) +/* 0AEE58 800AE258 8FB30040 */ lw $s3, 0x40($sp) +/* 0AEE5C 800AE25C 03E00008 */ jr $ra +/* 0AEE60 800AE260 27BD00A0 */ addiu $sp, $sp, 0xa0 + +/* 0AEE64 800AE264 00000000 */ nop +/* 0AEE68 800AE268 00000000 */ nop +/* 0AEE6C 800AE26C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800B7D20.s b/asm/non_matchings/unknown_0B8920/func_800B7D20.s new file mode 100644 index 00000000..948264f1 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800B7D20.s @@ -0,0 +1,113 @@ +glabel func_800B7D20 +/* 0B8920 800B7D20 3C04800E */ lui $a0, %hi(D_800E3040) # $a0, 0x800e +/* 0B8924 800B7D24 8C843040 */ lw $a0, %lo(D_800E3040)($a0) +/* 0B8928 800B7D28 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0B892C 800B7D2C 10800005 */ beqz $a0, .L800B7D44 +/* 0B8930 800B7D30 AFBF0014 */ sw $ra, 0x14($sp) +/* 0B8934 800B7D34 0C01C450 */ jal func_80071140 +/* 0B8938 800B7D38 00000000 */ nop +/* 0B893C 800B7D3C 3C01800E */ lui $at, %hi(D_800E3040) # $at, 0x800e +/* 0B8940 800B7D40 AC203040 */ sw $zero, %lo(D_800E3040)($at) +.L800B7D44: +/* 0B8944 800B7D44 3C04800E */ lui $a0, %hi(D_800E3044) # $a0, 0x800e +/* 0B8948 800B7D48 8C843044 */ lw $a0, %lo(D_800E3044)($a0) +/* 0B894C 800B7D4C 00000000 */ nop +/* 0B8950 800B7D50 10800005 */ beqz $a0, .L800B7D68 +/* 0B8954 800B7D54 00000000 */ nop +/* 0B8958 800B7D58 0C01C450 */ jal func_80071140 +/* 0B895C 800B7D5C 00000000 */ nop +/* 0B8960 800B7D60 3C01800E */ lui $at, %hi(D_800E3044) # $at, 0x800e +/* 0B8964 800B7D64 AC203044 */ sw $zero, %lo(D_800E3044)($at) +.L800B7D68: +/* 0B8968 800B7D68 3C04800E */ lui $a0, %hi(D_800E3048) # $a0, 0x800e +/* 0B896C 800B7D6C 8C843048 */ lw $a0, %lo(D_800E3048)($a0) +/* 0B8970 800B7D70 00000000 */ nop +/* 0B8974 800B7D74 10800005 */ beqz $a0, .L800B7D8C +/* 0B8978 800B7D78 00000000 */ nop +/* 0B897C 800B7D7C 0C01C450 */ jal func_80071140 +/* 0B8980 800B7D80 00000000 */ nop +/* 0B8984 800B7D84 3C01800E */ lui $at, %hi(D_800E3048) # $at, 0x800e +/* 0B8988 800B7D88 AC203048 */ sw $zero, %lo(D_800E3048)($at) +.L800B7D8C: +/* 0B898C 800B7D8C 3C04800E */ lui $a0, %hi(D_800E304C) # $a0, 0x800e +/* 0B8990 800B7D90 8C84304C */ lw $a0, %lo(D_800E304C)($a0) +/* 0B8994 800B7D94 00000000 */ nop +/* 0B8998 800B7D98 10800005 */ beqz $a0, .L800B7DB0 +/* 0B899C 800B7D9C 00000000 */ nop +/* 0B89A0 800B7DA0 0C01C450 */ jal func_80071140 +/* 0B89A4 800B7DA4 00000000 */ nop +/* 0B89A8 800B7DA8 3C01800E */ lui $at, %hi(D_800E304C) # $at, 0x800e +/* 0B89AC 800B7DAC AC20304C */ sw $zero, %lo(D_800E304C)($at) +.L800B7DB0: +/* 0B89B0 800B7DB0 3C04800E */ lui $a0, %hi(D_800E3070) # $a0, 0x800e +/* 0B89B4 800B7DB4 8C843070 */ lw $a0, %lo(D_800E3070)($a0) +/* 0B89B8 800B7DB8 00000000 */ nop +/* 0B89BC 800B7DBC 10800005 */ beqz $a0, .L800B7DD4 +/* 0B89C0 800B7DC0 00000000 */ nop +/* 0B89C4 800B7DC4 0C01C450 */ jal func_80071140 +/* 0B89C8 800B7DC8 00000000 */ nop +/* 0B89CC 800B7DCC 3C01800E */ lui $at, %hi(D_800E3070) # $at, 0x800e +/* 0B89D0 800B7DD0 AC203070 */ sw $zero, %lo(D_800E3070)($at) +.L800B7DD4: +/* 0B89D4 800B7DD4 3C04800E */ lui $a0, %hi(D_800E3080) # $a0, 0x800e +/* 0B89D8 800B7DD8 8C843080 */ lw $a0, %lo(D_800E3080)($a0) +/* 0B89DC 800B7DDC 00000000 */ nop +/* 0B89E0 800B7DE0 10800005 */ beqz $a0, .L800B7DF8 +/* 0B89E4 800B7DE4 00000000 */ nop +/* 0B89E8 800B7DE8 0C01C450 */ jal func_80071140 +/* 0B89EC 800B7DEC 00000000 */ nop +/* 0B89F0 800B7DF0 3C01800E */ lui $at, %hi(D_800E3080) # $at, 0x800e +/* 0B89F4 800B7DF4 AC203080 */ sw $zero, %lo(D_800E3080)($at) +.L800B7DF8: +/* 0B89F8 800B7DF8 3C04800E */ lui $a0, %hi(D_800E30D0) # $a0, 0x800e +/* 0B89FC 800B7DFC 8C8430D0 */ lw $a0, %lo(D_800E30D0)($a0) +/* 0B8A00 800B7E00 00000000 */ nop +/* 0B8A04 800B7E04 10800005 */ beqz $a0, .L800B7E1C +/* 0B8A08 800B7E08 00000000 */ nop +/* 0B8A0C 800B7E0C 0C01ECAF */ jal func_8007B2BC +/* 0B8A10 800B7E10 00000000 */ nop +/* 0B8A14 800B7E14 3C01800E */ lui $at, %hi(D_800E30D0) # $at, 0x800e +/* 0B8A18 800B7E18 AC2030D0 */ sw $zero, %lo(D_800E30D0)($at) +.L800B7E1C: +/* 0B8A1C 800B7E1C 3C04800E */ lui $a0, %hi(D_800E30D4) # $a0, 0x800e +/* 0B8A20 800B7E20 8C8430D4 */ lw $a0, %lo(D_800E30D4)($a0) +/* 0B8A24 800B7E24 00000000 */ nop +/* 0B8A28 800B7E28 10800005 */ beqz $a0, .L800B7E40 +/* 0B8A2C 800B7E2C 00000000 */ nop +/* 0B8A30 800B7E30 0C01C450 */ jal func_80071140 +/* 0B8A34 800B7E34 00000000 */ nop +/* 0B8A38 800B7E38 3C01800E */ lui $at, %hi(D_800E30D4) # $at, 0x800e +/* 0B8A3C 800B7E3C AC2030D4 */ sw $zero, %lo(D_800E30D4)($at) +.L800B7E40: +/* 0B8A40 800B7E40 3C04800E */ lui $a0, %hi(D_800E30D8) # $a0, 0x800e +/* 0B8A44 800B7E44 8C8430D8 */ lw $a0, %lo(D_800E30D8)($a0) +/* 0B8A48 800B7E48 00000000 */ nop +/* 0B8A4C 800B7E4C 10800005 */ beqz $a0, .L800B7E64 +/* 0B8A50 800B7E50 00000000 */ nop +/* 0B8A54 800B7E54 0C01C450 */ jal func_80071140 +/* 0B8A58 800B7E58 00000000 */ nop +/* 0B8A5C 800B7E5C 3C01800E */ lui $at, %hi(D_800E30D8) # $at, 0x800e +/* 0B8A60 800B7E60 AC2030D8 */ sw $zero, %lo(D_800E30D8)($at) +.L800B7E64: +/* 0B8A64 800B7E64 3C04800E */ lui $a0, %hi(D_800E3178) # $a0, 0x800e +/* 0B8A68 800B7E68 8C843178 */ lw $a0, %lo(D_800E3178)($a0) +/* 0B8A6C 800B7E6C 00000000 */ nop +/* 0B8A70 800B7E70 10800005 */ beqz $a0, .L800B7E88 +/* 0B8A74 800B7E74 00000000 */ nop +/* 0B8A78 800B7E78 0C01C450 */ jal func_80071140 +/* 0B8A7C 800B7E7C 00000000 */ nop +/* 0B8A80 800B7E80 3C01800E */ lui $at, %hi(D_800E3178) # $at, 0x800e +/* 0B8A84 800B7E84 AC203178 */ sw $zero, %lo(D_800E3178)($at) +.L800B7E88: +/* 0B8A88 800B7E88 3C01800E */ lui $at, %hi(D_800E3190) # $at, 0x800e +/* 0B8A8C 800B7E8C AC203190 */ sw $zero, %lo(D_800E3190)($at) +/* 0B8A90 800B7E90 3C01800E */ lui $at, %hi(D_800E3194) # $at, 0x800e +/* 0B8A94 800B7E94 AC203194 */ sw $zero, %lo(D_800E3194)($at) +/* 0B8A98 800B7E98 3C01800E */ lui $at, %hi(D_800E3184) # $at, 0x800e +/* 0B8A9C 800B7E9C 8FBF0014 */ lw $ra, 0x14($sp) +/* 0B8AA0 800B7EA0 AC203184 */ sw $zero, %lo(D_800E3184)($at) +/* 0B8AA4 800B7EA4 3C01800E */ lui $at, %hi(D_800E3188) # $at, 0x800e +/* 0B8AA8 800B7EA8 AC203188 */ sw $zero, %lo(D_800E3188)($at) +/* 0B8AAC 800B7EAC 03E00008 */ jr $ra +/* 0B8AB0 800B7EB0 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_0B8920/func_800B7EB4.s b/asm/non_matchings/unknown_0B8920/func_800B7EB4.s new file mode 100644 index 00000000..c4985a26 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800B7EB4.s @@ -0,0 +1,167 @@ +glabel func_800B7EB4 +/* 0B8AB4 800B7EB4 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0B8AB8 800B7EB8 AFBF0024 */ sw $ra, 0x24($sp) +/* 0B8ABC 800B7EBC AFB20020 */ sw $s2, 0x20($sp) +/* 0B8AC0 800B7EC0 AFB1001C */ sw $s1, 0x1c($sp) +/* 0B8AC4 800B7EC4 0C02DF48 */ jal func_800B7D20 +/* 0B8AC8 800B7EC8 AFB00018 */ sw $s0, 0x18($sp) +/* 0B8ACC 800B7ECC 3C128013 */ lui $s2, %hi(D_80129FC8) # $s2, 0x8013 +/* 0B8AD0 800B7ED0 26529FC8 */ addiu $s2, %lo(D_80129FC8) # addiu $s2, $s2, -0x6038 +/* 0B8AD4 800B7ED4 8E440020 */ lw $a0, 0x20($s2) +/* 0B8AD8 800B7ED8 3C1100FF */ lui $s1, (0x00FFFFFF >> 16) # lui $s1, 0xff +/* 0B8ADC 800B7EDC 3631FFFF */ ori $s1, (0x00FFFFFF & 0xFFFF) # ori $s1, $s1, 0xffff +/* 0B8AE0 800B7EE0 00047080 */ sll $t6, $a0, 2 +/* 0B8AE4 800B7EE4 01C02025 */ move $a0, $t6 +/* 0B8AE8 800B7EE8 0C01C327 */ jal func_80070C9C +/* 0B8AEC 800B7EEC 02202825 */ move $a1, $s1 +/* 0B8AF0 800B7EF0 3C01800E */ lui $at, %hi(D_800E3040) # $at, 0x800e +/* 0B8AF4 800B7EF4 AC223040 */ sw $v0, %lo(D_800E3040)($at) +/* 0B8AF8 800B7EF8 8E430004 */ lw $v1, 4($s2) +/* 0B8AFC 800B7EFC 02202825 */ move $a1, $s1 +/* 0B8B00 800B7F00 00037880 */ sll $t7, $v1, 2 +/* 0B8B04 800B7F04 01E30019 */ multu $t7, $v1 +/* 0B8B08 800B7F08 00002012 */ mflo $a0 +/* 0B8B0C 800B7F0C 0C01C327 */ jal func_80070C9C +/* 0B8B10 800B7F10 00000000 */ nop +/* 0B8B14 800B7F14 3C01800E */ lui $at, %hi(D_800E3044) # $at, 0x800e +/* 0B8B18 800B7F18 AC223044 */ sw $v0, %lo(D_800E3044)($at) +/* 0B8B1C 800B7F1C 8E430000 */ lw $v1, ($s2) +/* 0B8B20 800B7F20 02202825 */ move $a1, $s1 +/* 0B8B24 800B7F24 24630001 */ addiu $v1, $v1, 1 +/* 0B8B28 800B7F28 0003C080 */ sll $t8, $v1, 2 +/* 0B8B2C 800B7F2C 03030019 */ multu $t8, $v1 +/* 0B8B30 800B7F30 00002012 */ mflo $a0 +/* 0B8B34 800B7F34 0C01C327 */ jal func_80070C9C +/* 0B8B38 800B7F38 00000000 */ nop +/* 0B8B3C 800B7F3C 3C01800E */ lui $at, %hi(D_800E3048) # $at, 0x800e +/* 0B8B40 800B7F40 AC223048 */ sw $v0, %lo(D_800E3048)($at) +/* 0B8B44 800B7F44 8E430000 */ lw $v1, ($s2) +/* 0B8B48 800B7F48 241F0009 */ li $ra, 9 +/* 0B8B4C 800B7F4C 24630001 */ addiu $v1, $v1, 1 +/* 0B8B50 800B7F50 0003C880 */ sll $t9, $v1, 2 +/* 0B8B54 800B7F54 03230019 */ multu $t9, $v1 +/* 0B8B58 800B7F58 02202825 */ move $a1, $s1 +/* 0B8B5C 800B7F5C 00008012 */ mflo $s0 +/* 0B8B60 800B7F60 00000000 */ nop +/* 0B8B64 800B7F64 00000000 */ nop +/* 0B8B68 800B7F68 021F0019 */ multu $s0, $ra +/* 0B8B6C 800B7F6C 00002012 */ mflo $a0 +/* 0B8B70 800B7F70 0C01C327 */ jal func_80070C9C +/* 0B8B74 800B7F74 00000000 */ nop +/* 0B8B78 800B7F78 3C04800E */ lui $a0, %hi(D_800E304C) # $a0, 0x800e +/* 0B8B7C 800B7F7C 2484304C */ addiu $a0, %lo(D_800E304C) # addiu $a0, $a0, 0x304c +/* 0B8B80 800B7F80 3C03800E */ lui $v1, %hi(D_800E3050) # $v1, 0x800e +/* 0B8B84 800B7F84 00104080 */ sll $t0, $s0, 2 +/* 0B8B88 800B7F88 AC820000 */ sw $v0, ($a0) +/* 0B8B8C 800B7F8C 241F0009 */ li $ra, 9 +/* 0B8B90 800B7F90 01104023 */ subu $t0, $t0, $s0 +/* 0B8B94 800B7F94 24633050 */ addiu $v1, %lo(D_800E3050) # addiu $v1, $v1, 0x3050 +/* 0B8B98 800B7F98 24050001 */ li $a1, 1 +/* 0B8B9C 800B7F9C 02003025 */ move $a2, $s0 +/* 0B8BA0 800B7FA0 00105080 */ sll $t2, $s0, 2 +/* 0B8BA4 800B7FA4 00103840 */ sll $a3, $s0, 1 +/* 0B8BA8 800B7FA8 00105880 */ sll $t3, $s0, 2 +/* 0B8BAC 800B7FAC 00106080 */ sll $t4, $s0, 2 +/* 0B8BB0 800B7FB0 00104880 */ sll $t1, $s0, 2 +/* 0B8BB4 800B7FB4 00106880 */ sll $t5, $s0, 2 +.L800B7FB8: +/* 0B8BB8 800B7FB8 8C8E0000 */ lw $t6, ($a0) +/* 0B8BBC 800B7FBC 24A50004 */ addiu $a1, $a1, 4 +/* 0B8BC0 800B7FC0 01C67821 */ addu $t7, $t6, $a2 +/* 0B8BC4 800B7FC4 AC6F0000 */ sw $t7, ($v1) +/* 0B8BC8 800B7FC8 8C980000 */ lw $t8, ($a0) +/* 0B8BCC 800B7FCC 00CA3021 */ addu $a2, $a2, $t2 +/* 0B8BD0 800B7FD0 0307C821 */ addu $t9, $t8, $a3 +/* 0B8BD4 800B7FD4 AC790004 */ sw $t9, 4($v1) +/* 0B8BD8 800B7FD8 8C8E0000 */ lw $t6, ($a0) +/* 0B8BDC 800B7FDC 00EB3821 */ addu $a3, $a3, $t3 +/* 0B8BE0 800B7FE0 01C87821 */ addu $t7, $t6, $t0 +/* 0B8BE4 800B7FE4 AC6F0008 */ sw $t7, 8($v1) +/* 0B8BE8 800B7FE8 8C980000 */ lw $t8, ($a0) +/* 0B8BEC 800B7FEC 010C4021 */ addu $t0, $t0, $t4 +/* 0B8BF0 800B7FF0 0309C821 */ addu $t9, $t8, $t1 +/* 0B8BF4 800B7FF4 AC79000C */ sw $t9, 0xc($v1) +/* 0B8BF8 800B7FF8 012D4821 */ addu $t1, $t1, $t5 +/* 0B8BFC 800B7FFC 14BFFFEE */ bne $a1, $ra, .L800B7FB8 +/* 0B8C00 800B8000 24630010 */ addiu $v1, $v1, 0x10 +/* 0B8C04 800B8004 8E430000 */ lw $v1, ($s2) +/* 0B8C08 800B8008 3C0F8013 */ lui $t7, %hi(D_8012A078) # $t7, 0x8013 +/* 0B8C0C 800B800C 24630001 */ addiu $v1, $v1, 1 +/* 0B8C10 800B8010 00037140 */ sll $t6, $v1, 5 +/* 0B8C14 800B8014 01C37023 */ subu $t6, $t6, $v1 +/* 0B8C18 800B8018 000E7080 */ sll $t6, $t6, 2 +/* 0B8C1C 800B801C 01C37021 */ addu $t6, $t6, $v1 +/* 0B8C20 800B8020 000E7040 */ sll $t6, $t6, 1 +/* 0B8C24 800B8024 01C30019 */ multu $t6, $v1 +/* 0B8C28 800B8028 8DEFA078 */ lw $t7, %lo(D_8012A078)($t7) +/* 0B8C2C 800B802C 24010002 */ li $at, 2 +/* 0B8C30 800B8030 00008012 */ mflo $s0 +/* 0B8C34 800B8034 00102040 */ sll $a0, $s0, 1 +/* 0B8C38 800B8038 11E10009 */ beq $t7, $at, .L800B8060 +/* 0B8C3C 800B803C 00000000 */ nop +/* 0B8C40 800B8040 0C01C327 */ jal func_80070C9C +/* 0B8C44 800B8044 02202825 */ move $a1, $s1 +/* 0B8C48 800B8048 3C03800E */ lui $v1, %hi(D_800E3070) # $v1, 0x800e +/* 0B8C4C 800B804C 24633070 */ addiu $v1, %lo(D_800E3070) # addiu $v1, $v1, 0x3070 +/* 0B8C50 800B8050 0050C821 */ addu $t9, $v0, $s0 +/* 0B8C54 800B8054 AC620000 */ sw $v0, ($v1) +/* 0B8C58 800B8058 1000000D */ b .L800B8090 +/* 0B8C5C 800B805C AC790004 */ sw $t9, 4($v1) +.L800B8060: +/* 0B8C60 800B8060 00102080 */ sll $a0, $s0, 2 +/* 0B8C64 800B8064 0C01C327 */ jal func_80070C9C +/* 0B8C68 800B8068 02202825 */ move $a1, $s1 +/* 0B8C6C 800B806C 3C03800E */ lui $v1, %hi(D_800E3070) # $v1, 0x800e +/* 0B8C70 800B8070 24633070 */ addiu $v1, %lo(D_800E3070) # addiu $v1, $v1, 0x3070 +/* 0B8C74 800B8074 00507821 */ addu $t7, $v0, $s0 +/* 0B8C78 800B8078 AC6F0004 */ sw $t7, 4($v1) +/* 0B8C7C 800B807C 01F0C821 */ addu $t9, $t7, $s0 +/* 0B8C80 800B8080 03307821 */ addu $t7, $t9, $s0 +/* 0B8C84 800B8084 AC620000 */ sw $v0, ($v1) +/* 0B8C88 800B8088 AC790008 */ sw $t9, 8($v1) +/* 0B8C8C 800B808C AC6F000C */ sw $t7, 0xc($v1) +.L800B8090: +/* 0B8C90 800B8090 8E420000 */ lw $v0, ($s2) +/* 0B8C94 800B8094 3C198013 */ lui $t9, %hi(D_8012A078) # $t9, 0x8013 +/* 0B8C98 800B8098 0002C140 */ sll $t8, $v0, 5 +/* 0B8C9C 800B809C 03020019 */ multu $t8, $v0 +/* 0B8CA0 800B80A0 8F39A078 */ lw $t9, %lo(D_8012A078)($t9) +/* 0B8CA4 800B80A4 24010002 */ li $at, 2 +/* 0B8CA8 800B80A8 00008012 */ mflo $s0 +/* 0B8CAC 800B80AC 00102040 */ sll $a0, $s0, 1 +/* 0B8CB0 800B80B0 13210009 */ beq $t9, $at, .L800B80D8 +/* 0B8CB4 800B80B4 00000000 */ nop +/* 0B8CB8 800B80B8 0C01C327 */ jal func_80070C9C +/* 0B8CBC 800B80BC 02202825 */ move $a1, $s1 +/* 0B8CC0 800B80C0 3C03800E */ lui $v1, %hi(D_800E3080) # $v1, 0x800e +/* 0B8CC4 800B80C4 24633080 */ addiu $v1, %lo(D_800E3080) # addiu $v1, $v1, 0x3080 +/* 0B8CC8 800B80C8 00507821 */ addu $t7, $v0, $s0 +/* 0B8CCC 800B80CC AC620000 */ sw $v0, ($v1) +/* 0B8CD0 800B80D0 1000000D */ b .L800B8108 +/* 0B8CD4 800B80D4 AC6F0004 */ sw $t7, 4($v1) +.L800B80D8: +/* 0B8CD8 800B80D8 00102080 */ sll $a0, $s0, 2 +/* 0B8CDC 800B80DC 0C01C327 */ jal func_80070C9C +/* 0B8CE0 800B80E0 02202825 */ move $a1, $s1 +/* 0B8CE4 800B80E4 3C03800E */ lui $v1, %hi(D_800E3080) # $v1, 0x800e +/* 0B8CE8 800B80E8 24633080 */ addiu $v1, %lo(D_800E3080) # addiu $v1, $v1, 0x3080 +/* 0B8CEC 800B80EC 0050C821 */ addu $t9, $v0, $s0 +/* 0B8CF0 800B80F0 AC790004 */ sw $t9, 4($v1) +/* 0B8CF4 800B80F4 03307821 */ addu $t7, $t9, $s0 +/* 0B8CF8 800B80F8 01F0C821 */ addu $t9, $t7, $s0 +/* 0B8CFC 800B80FC AC620000 */ sw $v0, ($v1) +/* 0B8D00 800B8100 AC6F0008 */ sw $t7, 8($v1) +/* 0B8D04 800B8104 AC79000C */ sw $t9, 0xc($v1) +.L800B8108: +/* 0B8D08 800B8108 8E44002C */ lw $a0, 0x2c($s2) +/* 0B8D0C 800B810C 0C01EB9D */ jal func_8007AE74 +/* 0B8D10 800B8110 00000000 */ nop +/* 0B8D14 800B8114 8FBF0024 */ lw $ra, 0x24($sp) +/* 0B8D18 800B8118 3C01800E */ lui $at, %hi(D_800E30D0) # $at, 0x800e +/* 0B8D1C 800B811C 8FB00018 */ lw $s0, 0x18($sp) +/* 0B8D20 800B8120 8FB1001C */ lw $s1, 0x1c($sp) +/* 0B8D24 800B8124 8FB20020 */ lw $s2, 0x20($sp) +/* 0B8D28 800B8128 AC2230D0 */ sw $v0, %lo(D_800E30D0)($at) +/* 0B8D2C 800B812C 03E00008 */ jr $ra +/* 0B8D30 800B8130 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_0B8920/func_800B8134.s b/asm/non_matchings/unknown_0B8920/func_800B8134.s new file mode 100644 index 00000000..b1c15f88 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800B8134.s @@ -0,0 +1,102 @@ +glabel func_800B8134 +/* 0B8D34 800B8134 3C028013 */ lui $v0, %hi(D_8012A078) # $v0, 0x8013 +/* 0B8D38 800B8138 8C42A078 */ lw $v0, %lo(D_8012A078)($v0) +/* 0B8D3C 800B813C 24030002 */ li $v1, 2 +/* 0B8D40 800B8140 10620006 */ beq $v1, $v0, .L800B815C +/* 0B8D44 800B8144 3C058013 */ lui $a1, 0x8013 +/* 0B8D48 800B8148 908E0056 */ lbu $t6, 0x56($a0) +/* 0B8D4C 800B814C 3C058013 */ lui $a1, %hi(D_80129FC8) # $a1, 0x8013 +/* 0B8D50 800B8150 24A59FC8 */ addiu $a1, %lo(D_80129FC8) # addiu $a1, $a1, -0x6038 +/* 0B8D54 800B8154 10000004 */ b .L800B8168 +/* 0B8D58 800B8158 ACAE0000 */ sw $t6, ($a1) +.L800B815C: +/* 0B8D5C 800B815C 24A59FC8 */ addiu $a1, $a1, -0x6038 +/* 0B8D60 800B8160 240F0004 */ li $t7, 4 +/* 0B8D64 800B8164 ACAF0000 */ sw $t7, ($a1) +.L800B8168: +/* 0B8D68 800B8168 90980057 */ lbu $t8, 0x57($a0) +/* 0B8D6C 800B816C 3C013B80 */ li $at, 0x3B800000 # 0.003906 +/* 0B8D70 800B8170 ACB80004 */ sw $t8, 4($a1) +/* 0B8D74 800B8174 90990058 */ lbu $t9, 0x58($a0) +/* 0B8D78 800B8178 44810000 */ mtc1 $at, $f0 +/* 0B8D7C 800B817C ACB90008 */ sw $t9, 8($a1) +/* 0B8D80 800B8180 8488005A */ lh $t0, 0x5a($a0) +/* 0B8D84 800B8184 2401FFFE */ li $at, -2 +/* 0B8D88 800B8188 44882000 */ mtc1 $t0, $f4 +/* 0B8D8C 800B818C 24080003 */ li $t0, 3 +/* 0B8D90 800B8190 468021A0 */ cvt.s.w $f6, $f4 +/* 0B8D94 800B8194 46003202 */ mul.s $f8, $f6, $f0 +/* 0B8D98 800B8198 E4A8000C */ swc1 $f8, 0xc($a1) +/* 0B8D9C 800B819C 90890059 */ lbu $t1, 0x59($a0) +/* 0B8DA0 800B81A0 00000000 */ nop +/* 0B8DA4 800B81A4 00095200 */ sll $t2, $t1, 8 +/* 0B8DA8 800B81A8 ACAA0010 */ sw $t2, 0x10($a1) +/* 0B8DAC 800B81AC 908B005C */ lbu $t3, 0x5c($a0) +/* 0B8DB0 800B81B0 00000000 */ nop +/* 0B8DB4 800B81B4 ACAB0014 */ sw $t3, 0x14($a1) +/* 0B8DB8 800B81B8 848C005E */ lh $t4, 0x5e($a0) +/* 0B8DBC 800B81BC 00000000 */ nop +/* 0B8DC0 800B81C0 448C5000 */ mtc1 $t4, $f10 +/* 0B8DC4 800B81C4 00000000 */ nop +/* 0B8DC8 800B81C8 46805420 */ cvt.s.w $f16, $f10 +/* 0B8DCC 800B81CC 46008482 */ mul.s $f18, $f16, $f0 +/* 0B8DD0 800B81D0 E4B20018 */ swc1 $f18, 0x18($a1) +/* 0B8DD4 800B81D4 908D005D */ lbu $t5, 0x5d($a0) +/* 0B8DD8 800B81D8 00000000 */ nop +/* 0B8DDC 800B81DC 000D7200 */ sll $t6, $t5, 8 +/* 0B8DE0 800B81E0 ACAE001C */ sw $t6, 0x1c($a1) +/* 0B8DE4 800B81E4 848F0060 */ lh $t7, 0x60($a0) +/* 0B8DE8 800B81E8 00000000 */ nop +/* 0B8DEC 800B81EC 01E1C024 */ and $t8, $t7, $at +/* 0B8DF0 800B81F0 10620004 */ beq $v1, $v0, .L800B8204 +/* 0B8DF4 800B81F4 ACB80020 */ sw $t8, 0x20($a1) +/* 0B8DF8 800B81F8 8499006E */ lh $t9, 0x6e($a0) +/* 0B8DFC 800B81FC 10000002 */ b .L800B8208 +/* 0B8E00 800B8200 ACB90024 */ sw $t9, 0x24($a1) +.L800B8204: +/* 0B8E04 800B8204 ACA80024 */ sw $t0, 0x24($a1) +.L800B8208: +/* 0B8E08 800B8208 90890071 */ lbu $t1, 0x71($a0) +/* 0B8E0C 800B820C 00000000 */ nop +/* 0B8E10 800B8210 ACA90028 */ sw $t1, 0x28($a1) +/* 0B8E14 800B8214 848A0068 */ lh $t2, 0x68($a0) +/* 0B8E18 800B8218 00000000 */ nop +/* 0B8E1C 800B821C 314BFFFF */ andi $t3, $t2, 0xffff +/* 0B8E20 800B8220 ACAB002C */ sw $t3, 0x2c($a1) +/* 0B8E24 800B8224 908C006A */ lbu $t4, 0x6a($a0) +/* 0B8E28 800B8228 00000000 */ nop +/* 0B8E2C 800B822C ACAC0030 */ sw $t4, 0x30($a1) +/* 0B8E30 800B8230 908D006B */ lbu $t5, 0x6b($a0) +/* 0B8E34 800B8234 00000000 */ nop +/* 0B8E38 800B8238 ACAD0034 */ sw $t5, 0x34($a1) +/* 0B8E3C 800B823C 808E006C */ lb $t6, 0x6c($a0) +/* 0B8E40 800B8240 00000000 */ nop +/* 0B8E44 800B8244 ACAE0038 */ sw $t6, 0x38($a1) +/* 0B8E48 800B8248 808F006D */ lb $t7, 0x6d($a0) +/* 0B8E4C 800B824C 00000000 */ nop +/* 0B8E50 800B8250 ACAF003C */ sw $t7, 0x3c($a1) +/* 0B8E54 800B8254 84980062 */ lh $t8, 0x62($a0) +/* 0B8E58 800B8258 00000000 */ nop +/* 0B8E5C 800B825C 44982000 */ mtc1 $t8, $f4 +/* 0B8E60 800B8260 00000000 */ nop +/* 0B8E64 800B8264 468021A0 */ cvt.s.w $f6, $f4 +/* 0B8E68 800B8268 46003202 */ mul.s $f8, $f6, $f0 +/* 0B8E6C 800B826C E4A80040 */ swc1 $f8, 0x40($a1) +/* 0B8E70 800B8270 84990064 */ lh $t9, 0x64($a0) +/* 0B8E74 800B8274 00000000 */ nop +/* 0B8E78 800B8278 44995000 */ mtc1 $t9, $f10 +/* 0B8E7C 800B827C 00000000 */ nop +/* 0B8E80 800B8280 46805420 */ cvt.s.w $f16, $f10 +/* 0B8E84 800B8284 46008482 */ mul.s $f18, $f16, $f0 +/* 0B8E88 800B8288 E4B20044 */ swc1 $f18, 0x44($a1) +/* 0B8E8C 800B828C 84880066 */ lh $t0, 0x66($a0) +/* 0B8E90 800B8290 00000000 */ nop +/* 0B8E94 800B8294 44882000 */ mtc1 $t0, $f4 +/* 0B8E98 800B8298 00000000 */ nop +/* 0B8E9C 800B829C 468021A0 */ cvt.s.w $f6, $f4 +/* 0B8EA0 800B82A0 46003202 */ mul.s $f8, $f6, $f0 +/* 0B8EA4 800B82A4 E4A80048 */ swc1 $f8, 0x48($a1) +/* 0B8EA8 800B82A8 90890070 */ lbu $t1, 0x70($a0) +/* 0B8EAC 800B82AC 03E00008 */ jr $ra +/* 0B8EB0 800B82B0 ACA9004C */ sw $t1, 0x4c($a1) + diff --git a/asm/non_matchings/unknown_0B8920/func_800B82B4.s b/asm/non_matchings/unknown_0B8920/func_800B82B4.s new file mode 100644 index 00000000..1594e3e3 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800B82B4.s @@ -0,0 +1,605 @@ +glabel func_800B82B4 +/* 0B8EB4 800B82B4 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 0B8EB8 800B82B8 AFBF0044 */ sw $ra, 0x44($sp) +/* 0B8EBC 800B82BC AFB3002C */ sw $s3, 0x2c($sp) +/* 0B8EC0 800B82C0 AFB00020 */ sw $s0, 0x20($sp) +/* 0B8EC4 800B82C4 AFA40070 */ sw $a0, 0x70($sp) +/* 0B8EC8 800B82C8 3C018013 */ lui $at, %hi(D_8012A078) # $at, 0x8013 +/* 0B8ECC 800B82CC 00A08025 */ move $s0, $a1 +/* 0B8ED0 800B82D0 00C09825 */ move $s3, $a2 +/* 0B8ED4 800B82D4 AFBE0040 */ sw $fp, 0x40($sp) +/* 0B8ED8 800B82D8 AFB7003C */ sw $s7, 0x3c($sp) +/* 0B8EDC 800B82DC AFB60038 */ sw $s6, 0x38($sp) +/* 0B8EE0 800B82E0 AFB50034 */ sw $s5, 0x34($sp) +/* 0B8EE4 800B82E4 AFB40030 */ sw $s4, 0x30($sp) +/* 0B8EE8 800B82E8 AFB20028 */ sw $s2, 0x28($sp) +/* 0B8EEC 800B82EC AFB10024 */ sw $s1, 0x24($sp) +/* 0B8EF0 800B82F0 E7B50018 */ swc1 $f21, 0x18($sp) +/* 0B8EF4 800B82F4 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 0B8EF8 800B82F8 AC26A078 */ sw $a2, %lo(D_8012A078)($at) +/* 0B8EFC 800B82FC 0C02E04D */ jal func_800B8134 +/* 0B8F00 800B8300 00A02025 */ move $a0, $a1 +/* 0B8F04 800B8304 0C02DFAD */ jal func_800B7EB4 +/* 0B8F08 800B8308 00000000 */ nop +/* 0B8F0C 800B830C 8FA40070 */ lw $a0, 0x70($sp) +/* 0B8F10 800B8310 0C02EF77 */ jal func_800BBDDC +/* 0B8F14 800B8314 02002825 */ move $a1, $s0 +/* 0B8F18 800B8318 3C0E8013 */ lui $t6, %hi(D_8012A0A8) # $t6, 0x8013 +/* 0B8F1C 800B831C 8DCEA0A8 */ lw $t6, %lo(D_8012A0A8)($t6) +/* 0B8F20 800B8320 3C058013 */ lui $a1, %hi(D_8012A0A0) # $a1, 0x8013 +/* 0B8F24 800B8324 448E2000 */ mtc1 $t6, $f4 +/* 0B8F28 800B8328 24A5A0A0 */ addiu $a1, %lo(D_8012A0A0) # addiu $a1, $a1, -0x5f60 +/* 0B8F2C 800B832C 468021A0 */ cvt.s.w $f6, $f4 +/* 0B8F30 800B8330 3C0F8013 */ lui $t7, %hi(D_8012A0AC) # $t7, 0x8013 +/* 0B8F34 800B8334 3C148013 */ lui $s4, %hi(D_80129FC8) # $s4, 0x8013 +/* 0B8F38 800B8338 E4A60000 */ swc1 $f6, ($a1) +/* 0B8F3C 800B833C 8DEFA0AC */ lw $t7, %lo(D_8012A0AC)($t7) +/* 0B8F40 800B8340 26949FC8 */ addiu $s4, %lo(D_80129FC8) # addiu $s4, $s4, -0x6038 +/* 0B8F44 800B8344 8E820000 */ lw $v0, ($s4) +/* 0B8F48 800B8348 448F4000 */ mtc1 $t7, $f8 +/* 0B8F4C 800B834C 44828000 */ mtc1 $v0, $f16 +/* 0B8F50 800B8350 468042A0 */ cvt.s.w $f10, $f8 +/* 0B8F54 800B8354 3C068013 */ lui $a2, %hi(D_8012A0A4) # $a2, 0x8013 +/* 0B8F58 800B8358 24C6A0A4 */ addiu $a2, %lo(D_8012A0A4) # addiu $a2, $a2, -0x5f5c +/* 0B8F5C 800B835C 46808020 */ cvt.s.w $f0, $f16 +/* 0B8F60 800B8360 E4CA0000 */ swc1 $f10, ($a2) +/* 0B8F64 800B8364 C4B20000 */ lwc1 $f18, ($a1) +/* 0B8F68 800B8368 C4C60000 */ lwc1 $f6, ($a2) +/* 0B8F6C 800B836C 46009103 */ div.s $f4, $f18, $f0 +/* 0B8F70 800B8370 3C118013 */ lui $s1, %hi(D_8012A0B8) # $s1, 0x8013 +/* 0B8F74 800B8374 3C128013 */ lui $s2, %hi(D_8012A0BC) # $s2, 0x8013 +/* 0B8F78 800B8378 2652A0BC */ addiu $s2, %lo(D_8012A0BC) # addiu $s2, $s2, -0x5f44 +/* 0B8F7C 800B837C 2631A0B8 */ addiu $s1, %lo(D_8012A0B8) # addiu $s1, $s1, -0x5f48 +/* 0B8F80 800B8380 3C018013 */ lui $at, %hi(D_8012A084) # $at, 0x8013 +/* 0B8F84 800B8384 3C038013 */ lui $v1, %hi(D_8012A080) # $v1, 0x8013 +/* 0B8F88 800B8388 0000B825 */ move $s7, $zero +/* 0B8F8C 800B838C 46003203 */ div.s $f8, $f6, $f0 +/* 0B8F90 800B8390 E6240000 */ swc1 $f4, ($s1) +/* 0B8F94 800B8394 E6480000 */ swc1 $f8, ($s2) +/* 0B8F98 800B8398 AC20A084 */ sw $zero, %lo(D_8012A084)($at) +/* 0B8F9C 800B839C 3C018013 */ lui $at, %hi(D_8012A088) # $at, 0x8013 +/* 0B8FA0 800B83A0 8C63A080 */ lw $v1, %lo(D_8012A080)($v1) +/* 0B8FA4 800B83A4 AC20A088 */ sw $zero, %lo(D_8012A088)($at) +/* 0B8FA8 800B83A8 8E990030 */ lw $t9, 0x30($s4) +/* 0B8FAC 800B83AC 90780000 */ lbu $t8, ($v1) +/* 0B8FB0 800B83B0 00000000 */ nop +/* 0B8FB4 800B83B4 03190019 */ multu $t8, $t9 +/* 0B8FB8 800B83B8 00005012 */ mflo $t2 +/* 0B8FBC 800B83BC 000A5940 */ sll $t3, $t2, 5 +/* 0B8FC0 800B83C0 00000000 */ nop +/* 0B8FC4 800B83C4 0162001A */ div $zero, $t3, $v0 +/* 0B8FC8 800B83C8 14400002 */ bnez $v0, .L800B83D4 +/* 0B8FCC 800B83CC 00000000 */ nop +/* 0B8FD0 800B83D0 0007000D */ break 7 +.L800B83D4: +/* 0B8FD4 800B83D4 2401FFFF */ li $at, -1 +/* 0B8FD8 800B83D8 14410004 */ bne $v0, $at, .L800B83EC +/* 0B8FDC 800B83DC 3C018000 */ lui $at, 0x8000 +/* 0B8FE0 800B83E0 15610002 */ bne $t3, $at, .L800B83EC +/* 0B8FE4 800B83E4 00000000 */ nop +/* 0B8FE8 800B83E8 0006000D */ break 6 +.L800B83EC: +/* 0B8FEC 800B83EC 3C018013 */ lui $at, %hi(D_8012A08C) # $at, 0x8013 +/* 0B8FF0 800B83F0 00006012 */ mflo $t4 +/* 0B8FF4 800B83F4 AC2CA08C */ sw $t4, %lo(D_8012A08C)($at) +/* 0B8FF8 800B83F8 8E8E0034 */ lw $t6, 0x34($s4) +/* 0B8FFC 800B83FC 906D0001 */ lbu $t5, 1($v1) +/* 0B9000 800B8400 00000000 */ nop +/* 0B9004 800B8404 01AE0019 */ multu $t5, $t6 +/* 0B9008 800B8408 00007812 */ mflo $t7 +/* 0B900C 800B840C 000FC140 */ sll $t8, $t7, 5 +/* 0B9010 800B8410 00000000 */ nop +/* 0B9014 800B8414 0302001A */ div $zero, $t8, $v0 +/* 0B9018 800B8418 14400002 */ bnez $v0, .L800B8424 +/* 0B901C 800B841C 00000000 */ nop +/* 0B9020 800B8420 0007000D */ break 7 +.L800B8424: +/* 0B9024 800B8424 2401FFFF */ li $at, -1 +/* 0B9028 800B8428 14410004 */ bne $v0, $at, .L800B843C +/* 0B902C 800B842C 3C018000 */ lui $at, 0x8000 +/* 0B9030 800B8430 17010002 */ bne $t8, $at, .L800B843C +/* 0B9034 800B8434 00000000 */ nop +/* 0B9038 800B8438 0006000D */ break 6 +.L800B843C: +/* 0B903C 800B843C 3C018013 */ lui $at, %hi(D_8012A090) # $at, 0x8013 +/* 0B9040 800B8440 0000C812 */ mflo $t9 +/* 0B9044 800B8444 AC39A090 */ sw $t9, %lo(D_8012A090)($at) +/* 0B9048 800B8448 906A0000 */ lbu $t2, ($v1) +/* 0B904C 800B844C 3C018013 */ lui $at, %hi(D_8012A094) # $at, 0x8013 +/* 0B9050 800B8450 000A5940 */ sll $t3, $t2, 5 +/* 0B9054 800B8454 256CFFFF */ addiu $t4, $t3, -1 +/* 0B9058 800B8458 AC2CA094 */ sw $t4, %lo(D_8012A094)($at) +/* 0B905C 800B845C 906D0001 */ lbu $t5, 1($v1) +/* 0B9060 800B8460 3C018013 */ lui $at, %hi(D_8012A098) # $at, 0x8013 +/* 0B9064 800B8464 000D7140 */ sll $t6, $t5, 5 +/* 0B9068 800B8468 25CFFFFF */ addiu $t7, $t6, -1 +/* 0B906C 800B846C AC2FA098 */ sw $t7, %lo(D_8012A098)($at) +/* 0B9070 800B8470 3C018013 */ lui $at, %hi(D_8012A09C) # $at, 0x8013 +/* 0B9074 800B8474 AC20A09C */ sw $zero, %lo(D_8012A09C)($at) +/* 0B9078 800B8478 8E980008 */ lw $t8, 8($s4) +/* 0B907C 800B847C 8E840020 */ lw $a0, 0x20($s4) +/* 0B9080 800B8480 0018CC00 */ sll $t9, $t8, 0x10 +/* 0B9084 800B8484 0324001A */ div $zero, $t9, $a0 +/* 0B9088 800B8488 8E8B0014 */ lw $t3, 0x14($s4) +/* 0B908C 800B848C 8E960010 */ lw $s6, 0x10($s4) +/* 0B9090 800B8490 000B6400 */ sll $t4, $t3, 0x10 +/* 0B9094 800B8494 14800002 */ bnez $a0, .L800B84A0 +/* 0B9098 800B8498 00000000 */ nop +/* 0B909C 800B849C 0007000D */ break 7 +.L800B84A0: +/* 0B90A0 800B84A0 2401FFFF */ li $at, -1 +/* 0B90A4 800B84A4 14810004 */ bne $a0, $at, .L800B84B8 +/* 0B90A8 800B84A8 3C018000 */ lui $at, 0x8000 +/* 0B90AC 800B84AC 17210002 */ bne $t9, $at, .L800B84B8 +/* 0B90B0 800B84B0 00000000 */ nop +/* 0B90B4 800B84B4 0006000D */ break 6 +.L800B84B8: +/* 0B90B8 800B84B8 8E9E001C */ lw $fp, 0x1c($s4) +/* 0B90BC 800B84BC 00005012 */ mflo $t2 +/* 0B90C0 800B84C0 AFAA0054 */ sw $t2, 0x54($sp) +/* 0B90C4 800B84C4 00000000 */ nop +/* 0B90C8 800B84C8 0184001A */ div $zero, $t4, $a0 +/* 0B90CC 800B84CC 14800002 */ bnez $a0, .L800B84D8 +/* 0B90D0 800B84D0 00000000 */ nop +/* 0B90D4 800B84D4 0007000D */ break 7 +.L800B84D8: +/* 0B90D8 800B84D8 2401FFFF */ li $at, -1 +/* 0B90DC 800B84DC 14810004 */ bne $a0, $at, .L800B84F0 +/* 0B90E0 800B84E0 3C018000 */ lui $at, 0x8000 +/* 0B90E4 800B84E4 15810002 */ bne $t4, $at, .L800B84F0 +/* 0B90E8 800B84E8 00000000 */ nop +/* 0B90EC 800B84EC 0006000D */ break 6 +.L800B84F0: +/* 0B90F0 800B84F0 3C01800F */ lui $at, %hi(D_800E92A0) # $at, 0x800f +/* 0B90F4 800B84F4 C42A92A0 */ lwc1 $f10, %lo(D_800E92A0)($at) +/* 0B90F8 800B84F8 3C018013 */ lui $at, %hi(D_8012A01C) # $at, 0x8013 +/* 0B90FC 800B84FC E42AA01C */ swc1 $f10, %lo(D_8012A01C)($at) +/* 0B9100 800B8500 3C01800F */ lui $at, %hi(D_800E92A4) # $at, 0x800f +/* 0B9104 800B8504 C43092A4 */ lwc1 $f16, %lo(D_800E92A4)($at) +/* 0B9108 800B8508 3C018013 */ lui $at, %hi(D_8012A020) # $at, 0x8013 +/* 0B910C 800B850C E430A020 */ swc1 $f16, %lo(D_8012A020)($at) +/* 0B9110 800B8510 00006812 */ mflo $t5 +/* 0B9114 800B8514 AFAD004C */ sw $t5, 0x4c($sp) +/* 0B9118 800B8518 1880003F */ blez $a0, .L800B8618 +/* 0B911C 800B851C 3C15800E */ lui $s5, %hi(D_800E3040) # $s5, 0x800e +/* 0B9120 800B8520 26B53040 */ addiu $s5, %lo(D_800E3040) # addiu $s5, $s5, 0x3040 +/* 0B9124 800B8524 00008025 */ move $s0, $zero +.L800B8528: +/* 0B9128 800B8528 00162400 */ sll $a0, $s6, 0x10 +/* 0B912C 800B852C 00047403 */ sra $t6, $a0, 0x10 +/* 0B9130 800B8530 0C01C1F1 */ jal func_800707C4 +/* 0B9134 800B8534 01C02025 */ move $a0, $t6 +/* 0B9138 800B8538 001E2400 */ sll $a0, $fp, 0x10 +/* 0B913C 800B853C 00047C03 */ sra $t7, $a0, 0x10 +/* 0B9140 800B8540 01E02025 */ move $a0, $t7 +/* 0B9144 800B8544 0C01C1F1 */ jal func_800707C4 +/* 0B9148 800B8548 46000506 */ mov.s $f20, $f0 +/* 0B914C 800B854C C6920018 */ lwc1 $f18, 0x18($s4) +/* 0B9150 800B8550 C686000C */ lwc1 $f6, 0xc($s4) +/* 0B9154 800B8554 46120102 */ mul.s $f4, $f0, $f18 +/* 0B9158 800B8558 8EB80000 */ lw $t8, ($s5) +/* 0B915C 800B855C 3C038013 */ lui $v1, %hi(D_8012A01C) # $v1, 0x8013 +/* 0B9160 800B8560 0310C821 */ addu $t9, $t8, $s0 +/* 0B9164 800B8564 4606A202 */ mul.s $f8, $f20, $f6 +/* 0B9168 800B8568 26F70001 */ addiu $s7, $s7, 1 +/* 0B916C 800B856C 2463A01C */ addiu $v1, %lo(D_8012A01C) # addiu $v1, $v1, -0x5fe4 +/* 0B9170 800B8570 46082280 */ add.s $f10, $f4, $f8 +/* 0B9174 800B8574 E72A0000 */ swc1 $f10, ($t9) +/* 0B9178 800B8578 8E8A0028 */ lw $t2, 0x28($s4) +/* 0B917C 800B857C 00000000 */ nop +/* 0B9180 800B8580 11400008 */ beqz $t2, .L800B85A4 +/* 0B9184 800B8584 00000000 */ nop +/* 0B9188 800B8588 8EAB0000 */ lw $t3, ($s5) +/* 0B918C 800B858C 00000000 */ nop +/* 0B9190 800B8590 01701021 */ addu $v0, $t3, $s0 +/* 0B9194 800B8594 C4400000 */ lwc1 $f0, ($v0) +/* 0B9198 800B8598 00000000 */ nop +/* 0B919C 800B859C 46000400 */ add.s $f16, $f0, $f0 +/* 0B91A0 800B85A0 E4500000 */ swc1 $f16, ($v0) +.L800B85A4: +/* 0B91A4 800B85A4 8EAC0000 */ lw $t4, ($s5) +/* 0B91A8 800B85A8 C4720000 */ lwc1 $f18, ($v1) +/* 0B91AC 800B85AC 01901021 */ addu $v0, $t4, $s0 +/* 0B91B0 800B85B0 C4400000 */ lwc1 $f0, ($v0) +/* 0B91B4 800B85B4 26100004 */ addiu $s0, $s0, 4 +/* 0B91B8 800B85B8 4612003C */ c.lt.s $f0, $f18 +/* 0B91BC 800B85BC 00000000 */ nop +/* 0B91C0 800B85C0 45000004 */ bc1f .L800B85D4 +/* 0B91C4 800B85C4 00000000 */ nop +/* 0B91C8 800B85C8 E4600000 */ swc1 $f0, ($v1) +/* 0B91CC 800B85CC C4400000 */ lwc1 $f0, ($v0) +/* 0B91D0 800B85D0 00000000 */ nop +.L800B85D4: +/* 0B91D4 800B85D4 3C028013 */ lui $v0, %hi(D_8012A020) # $v0, 0x8013 +/* 0B91D8 800B85D8 2442A020 */ addiu $v0, %lo(D_8012A020) # addiu $v0, $v0, -0x5fe0 +/* 0B91DC 800B85DC C4460000 */ lwc1 $f6, ($v0) +/* 0B91E0 800B85E0 00000000 */ nop +/* 0B91E4 800B85E4 4600303C */ c.lt.s $f6, $f0 +/* 0B91E8 800B85E8 00000000 */ nop +/* 0B91EC 800B85EC 45000002 */ bc1f .L800B85F8 +/* 0B91F0 800B85F0 00000000 */ nop +/* 0B91F4 800B85F4 E4400000 */ swc1 $f0, ($v0) +.L800B85F8: +/* 0B91F8 800B85F8 8E8F0020 */ lw $t7, 0x20($s4) +/* 0B91FC 800B85FC 8FAD0054 */ lw $t5, 0x54($sp) +/* 0B9200 800B8600 8FAE004C */ lw $t6, 0x4c($sp) +/* 0B9204 800B8604 02EF082A */ slt $at, $s7, $t7 +/* 0B9208 800B8608 02CDB021 */ addu $s6, $s6, $t5 +/* 0B920C 800B860C 1420FFC6 */ bnez $at, .L800B8528 +/* 0B9210 800B8610 03CEF021 */ addu $fp, $fp, $t6 +/* 0B9214 800B8614 0000B825 */ move $s7, $zero +.L800B8618: +/* 0B9218 800B8618 0C01BE46 */ jal func_8006F918 +/* 0B921C 800B861C 00000000 */ nop +/* 0B9220 800B8620 3C045741 */ lui $a0, %hi(D_57410001) # $a0, 0x5741 +/* 0B9224 800B8624 0C01BE43 */ jal func_8006F90C +/* 0B9228 800B8628 34845646 */ ori $a0, (0x57415646 & 0xFFFF) # ori $a0, $a0, 0x5646 +/* 0B922C 800B862C 8E830004 */ lw $v1, 4($s4) +/* 0B9230 800B8630 0000A825 */ move $s5, $zero +/* 0B9234 800B8634 18600020 */ blez $v1, .L800B86B8 +/* 0B9238 800B8638 00000000 */ nop +/* 0B923C 800B863C 3C1E800E */ lui $fp, %hi(D_800E3044) # $fp, 0x800e +/* 0B9240 800B8640 27DE3044 */ addiu $fp, %lo(D_800E3044) # addiu $fp, $fp, 0x3044 +.L800B8644: +/* 0B9244 800B8644 18600016 */ blez $v1, .L800B86A0 +/* 0B9248 800B8648 00008025 */ move $s0, $zero +/* 0B924C 800B864C 0015B080 */ sll $s6, $s5, 2 +.L800B8650: +/* 0B9250 800B8650 8E850020 */ lw $a1, 0x20($s4) +/* 0B9254 800B8654 00002025 */ move $a0, $zero +/* 0B9258 800B8658 0C01BE53 */ jal func_8006F94C +/* 0B925C 800B865C 24A5FFFF */ addiu $a1, $a1, -1 +/* 0B9260 800B8660 8FD80000 */ lw $t8, ($fp) +/* 0B9264 800B8664 00002025 */ move $a0, $zero +/* 0B9268 800B8668 0316C821 */ addu $t9, $t8, $s6 +/* 0B926C 800B866C A7220000 */ sh $v0, ($t9) +/* 0B9270 800B8670 8E850020 */ lw $a1, 0x20($s4) +/* 0B9274 800B8674 0C01BE53 */ jal func_8006F94C +/* 0B9278 800B8678 24A5FFFF */ addiu $a1, $a1, -1 +/* 0B927C 800B867C 8FCA0000 */ lw $t2, ($fp) +/* 0B9280 800B8680 26100001 */ addiu $s0, $s0, 1 +/* 0B9284 800B8684 01565821 */ addu $t3, $t2, $s6 +/* 0B9288 800B8688 A5620002 */ sh $v0, 2($t3) +/* 0B928C 800B868C 8E830004 */ lw $v1, 4($s4) +/* 0B9290 800B8690 26D60004 */ addiu $s6, $s6, 4 +/* 0B9294 800B8694 0203082A */ slt $at, $s0, $v1 +/* 0B9298 800B8698 1420FFED */ bnez $at, .L800B8650 +/* 0B929C 800B869C 26B50001 */ addiu $s5, $s5, 1 +.L800B86A0: +/* 0B92A0 800B86A0 26F70001 */ addiu $s7, $s7, 1 +/* 0B92A4 800B86A4 02E3082A */ slt $at, $s7, $v1 +/* 0B92A8 800B86A8 1420FFE6 */ bnez $at, .L800B8644 +/* 0B92AC 800B86AC 00000000 */ nop +/* 0B92B0 800B86B0 0000B825 */ move $s7, $zero +/* 0B92B4 800B86B4 0000A825 */ move $s5, $zero +.L800B86B8: +/* 0B92B8 800B86B8 0C01BE4B */ jal func_8006F92C +/* 0B92BC 800B86BC 00000000 */ nop +/* 0B92C0 800B86C0 24010002 */ li $at, 2 +/* 0B92C4 800B86C4 12610003 */ beq $s3, $at, .L800B86D4 +/* 0B92C8 800B86C8 00003025 */ move $a2, $zero +/* 0B92CC 800B86CC 10000002 */ b .L800B86D8 +/* 0B92D0 800B86D0 24130002 */ li $s3, 2 +.L800B86D4: +/* 0B92D4 800B86D4 24130004 */ li $s3, 4 +.L800B86D8: +/* 0B92D8 800B86D8 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 0B92DC 800B86DC 44810800 */ mtc1 $at, $f1 +/* 0B92E0 800B86E0 8E820000 */ lw $v0, ($s4) +/* 0B92E4 800B86E4 44800000 */ mtc1 $zero, $f0 +/* 0B92E8 800B86E8 240500FF */ li $a1, 255 +.L800B86EC: +/* 0B92EC 800B86EC 0440005C */ bltz $v0, .L800B8860 +/* 0B92F0 800B86F0 24C60001 */ addiu $a2, $a2, 1 +.L800B86F4: +/* 0B92F4 800B86F4 04400055 */ bltz $v0, .L800B884C +/* 0B92F8 800B86F8 00008025 */ move $s0, $zero +.L800B86FC: +/* 0B92FC 800B86FC 1A60004F */ blez $s3, .L800B883C +/* 0B9300 800B8700 00002025 */ move $a0, $zero +/* 0B9304 800B8704 4490A000 */ mtc1 $s0, $f20 +/* 0B9308 800B8708 44979000 */ mtc1 $s7, $f18 +/* 0B930C 800B870C 4680A0A0 */ cvt.s.w $f2, $f20 +/* 0B9310 800B8710 00151880 */ sll $v1, $s5, 2 +/* 0B9314 800B8714 3C02800E */ lui $v0, %hi(D_800E3070) # $v0, 0x800e +/* 0B9318 800B8718 46809320 */ cvt.s.w $f12, $f18 +/* 0B931C 800B871C 00751821 */ addu $v1, $v1, $s5 +/* 0B9320 800B8720 24423070 */ addiu $v0, %lo(D_800E3070) # addiu $v0, $v0, 0x3070 +/* 0B9324 800B8724 00031840 */ sll $v1, $v1, 1 +.L800B8728: +/* 0B9328 800B8728 C62A0000 */ lwc1 $f10, ($s1) +/* 0B932C 800B872C 8C4E0000 */ lw $t6, ($v0) +/* 0B9330 800B8730 460A1402 */ mul.s $f16, $f2, $f10 +/* 0B9334 800B8734 01C37821 */ addu $t7, $t6, $v1 +/* 0B9338 800B8738 24840001 */ addiu $a0, %lo(D_57410001) # addiu $a0, $a0, 1 +/* 0B933C 800B873C 460084A1 */ cvt.d.s $f18, $f16 +/* 0B9340 800B8740 46209180 */ add.d $f6, $f18, $f0 +/* 0B9344 800B8744 444CF800 */ cfc1 $t4, $31 +/* 0B9348 800B8748 00000000 */ nop +/* 0B934C 800B874C 35810003 */ ori $at, $t4, 3 +/* 0B9350 800B8750 38210002 */ xori $at, $at, 2 +/* 0B9354 800B8754 44C1F800 */ ctc1 $at, $31 +/* 0B9358 800B8758 00000000 */ nop +/* 0B935C 800B875C 46203124 */ cvt.w.d $f4, $f6 +/* 0B9360 800B8760 440D2000 */ mfc1 $t5, $f4 +/* 0B9364 800B8764 44CCF800 */ ctc1 $t4, $31 +/* 0B9368 800B8768 A5ED0000 */ sh $t5, ($t7) +/* 0B936C 800B876C C6480000 */ lwc1 $f8, ($s2) +/* 0B9370 800B8770 8C4A0000 */ lw $t2, ($v0) +/* 0B9374 800B8774 46086282 */ mul.s $f10, $f12, $f8 +/* 0B9378 800B8778 01435821 */ addu $t3, $t2, $v1 +/* 0B937C 800B877C 46005421 */ cvt.d.s $f16, $f10 +/* 0B9380 800B8780 46208480 */ add.d $f18, $f16, $f0 +/* 0B9384 800B8784 4458F800 */ cfc1 $t8, $31 +/* 0B9388 800B8788 00000000 */ nop +/* 0B938C 800B878C 37010003 */ ori $at, $t8, 3 +/* 0B9390 800B8790 38210002 */ xori $at, $at, 2 +/* 0B9394 800B8794 44C1F800 */ ctc1 $at, $31 +/* 0B9398 800B8798 00000000 */ nop +/* 0B939C 800B879C 462091A4 */ cvt.w.d $f6, $f18 +/* 0B93A0 800B87A0 44193000 */ mfc1 $t9, $f6 +/* 0B93A4 800B87A4 44D8F800 */ ctc1 $t8, $31 +/* 0B93A8 800B87A8 A5790004 */ sh $t9, 4($t3) +/* 0B93AC 800B87AC 8E8C004C */ lw $t4, 0x4c($s4) +/* 0B93B0 800B87B0 00000000 */ nop +/* 0B93B4 800B87B4 1580000E */ bnez $t4, .L800B87F0 +/* 0B93B8 800B87B8 00000000 */ nop +/* 0B93BC 800B87BC 8C4E0000 */ lw $t6, ($v0) +/* 0B93C0 800B87C0 00000000 */ nop +/* 0B93C4 800B87C4 01C36821 */ addu $t5, $t6, $v1 +/* 0B93C8 800B87C8 A1A50006 */ sb $a1, 6($t5) +/* 0B93CC 800B87CC 8C4F0000 */ lw $t7, ($v0) +/* 0B93D0 800B87D0 00000000 */ nop +/* 0B93D4 800B87D4 01E3C021 */ addu $t8, $t7, $v1 +/* 0B93D8 800B87D8 A3050007 */ sb $a1, 7($t8) +/* 0B93DC 800B87DC 8C4A0000 */ lw $t2, ($v0) +/* 0B93E0 800B87E0 00000000 */ nop +/* 0B93E4 800B87E4 0143C821 */ addu $t9, $t2, $v1 +/* 0B93E8 800B87E8 1000000D */ b .L800B8820 +/* 0B93EC 800B87EC A3250008 */ sb $a1, 8($t9) +.L800B87F0: +/* 0B93F0 800B87F0 8C4B0000 */ lw $t3, ($v0) +/* 0B93F4 800B87F4 00000000 */ nop +/* 0B93F8 800B87F8 01636021 */ addu $t4, $t3, $v1 +/* 0B93FC 800B87FC A1800006 */ sb $zero, 6($t4) +/* 0B9400 800B8800 8C4E0000 */ lw $t6, ($v0) +/* 0B9404 800B8804 00000000 */ nop +/* 0B9408 800B8808 01C36821 */ addu $t5, $t6, $v1 +/* 0B940C 800B880C A1A00007 */ sb $zero, 7($t5) +/* 0B9410 800B8810 8C4F0000 */ lw $t7, ($v0) +/* 0B9414 800B8814 00000000 */ nop +/* 0B9418 800B8818 01E3C021 */ addu $t8, $t7, $v1 +/* 0B941C 800B881C A3000008 */ sb $zero, 8($t8) +.L800B8820: +/* 0B9420 800B8820 8C4A0000 */ lw $t2, ($v0) +/* 0B9424 800B8824 24420004 */ addiu $v0, $v0, 4 +/* 0B9428 800B8828 0143C821 */ addu $t9, $t2, $v1 +/* 0B942C 800B882C 1493FFBE */ bne $a0, $s3, .L800B8728 +/* 0B9430 800B8830 A3250009 */ sb $a1, 9($t9) +/* 0B9434 800B8834 8E820000 */ lw $v0, ($s4) +/* 0B9438 800B8838 00000000 */ nop +.L800B883C: +/* 0B943C 800B883C 26100001 */ addiu $s0, $s0, 1 +/* 0B9440 800B8840 0050082A */ slt $at, $v0, $s0 +/* 0B9444 800B8844 1020FFAD */ beqz $at, .L800B86FC +/* 0B9448 800B8848 26B50001 */ addiu $s5, $s5, 1 +.L800B884C: +/* 0B944C 800B884C 26F70001 */ addiu $s7, $s7, 1 +/* 0B9450 800B8850 0057082A */ slt $at, $v0, $s7 +/* 0B9454 800B8854 1020FFA7 */ beqz $at, .L800B86F4 +/* 0B9458 800B8858 00000000 */ nop +/* 0B945C 800B885C 0000B825 */ move $s7, $zero +.L800B8860: +/* 0B9460 800B8860 28C10019 */ slti $at, $a2, 0x19 +/* 0B9464 800B8864 1420FFA1 */ bnez $at, .L800B86EC +/* 0B9468 800B8868 00000000 */ nop +/* 0B946C 800B886C 1840003C */ blez $v0, .L800B8960 +/* 0B9470 800B8870 0000A825 */ move $s5, $zero +/* 0B9474 800B8874 24060040 */ li $a2, 64 +.L800B8878: +/* 0B9478 800B8878 18400035 */ blez $v0, .L800B8950 +/* 0B947C 800B887C 00008025 */ move $s0, $zero +.L800B8880: +/* 0B9480 800B8880 1A60002F */ blez $s3, .L800B8940 +/* 0B9484 800B8884 00002025 */ move $a0, $zero +/* 0B9488 800B8888 3C03800E */ lui $v1, %hi(D_800E3080) # $v1, 0x800e +/* 0B948C 800B888C 24633080 */ addiu $v1, %lo(D_800E3080) # addiu $v1, $v1, 0x3080 +/* 0B9490 800B8890 26050001 */ addiu $a1, $s0, 1 +/* 0B9494 800B8894 00151100 */ sll $v0, $s5, 4 +.L800B8898: +/* 0B9498 800B8898 8C6B0000 */ lw $t3, ($v1) +/* 0B949C 800B889C 24840001 */ addiu $a0, $a0, 1 +/* 0B94A0 800B88A0 01626021 */ addu $t4, $t3, $v0 +/* 0B94A4 800B88A4 A1860000 */ sb $a2, ($t4) +/* 0B94A8 800B88A8 8C6E0000 */ lw $t6, ($v1) +/* 0B94AC 800B88AC 24630004 */ addiu $v1, $v1, 4 +/* 0B94B0 800B88B0 01C26821 */ addu $t5, $t6, $v0 +/* 0B94B4 800B88B4 A1B00001 */ sb $s0, 1($t5) +/* 0B94B8 800B88B8 8E8F0000 */ lw $t7, ($s4) +/* 0B94BC 800B88BC 8C79FFFC */ lw $t9, -4($v1) +/* 0B94C0 800B88C0 020FC021 */ addu $t8, $s0, $t7 +/* 0B94C4 800B88C4 270A0001 */ addiu $t2, $t8, 1 +/* 0B94C8 800B88C8 03225821 */ addu $t3, $t9, $v0 +/* 0B94CC 800B88CC A16A0002 */ sb $t2, 2($t3) +/* 0B94D0 800B88D0 8C6CFFFC */ lw $t4, -4($v1) +/* 0B94D4 800B88D4 26B50000 */ addiu $s5, $s5, 0 +/* 0B94D8 800B88D8 01827021 */ addu $t6, $t4, $v0 +/* 0B94DC 800B88DC A1C50003 */ sb $a1, 3($t6) +/* 0B94E0 800B88E0 8C6DFFFC */ lw $t5, -4($v1) +/* 0B94E4 800B88E4 24420010 */ addiu $v0, $v0, 0x10 +/* 0B94E8 800B88E8 01A27821 */ addu $t7, $t5, $v0 +/* 0B94EC 800B88EC A1E60000 */ sb $a2, ($t7) +/* 0B94F0 800B88F0 8C78FFFC */ lw $t8, -4($v1) +/* 0B94F4 800B88F4 00000000 */ nop +/* 0B94F8 800B88F8 0302C821 */ addu $t9, $t8, $v0 +/* 0B94FC 800B88FC A3250001 */ sb $a1, 1($t9) +/* 0B9500 800B8900 8E8A0000 */ lw $t2, ($s4) +/* 0B9504 800B8904 8C6EFFFC */ lw $t6, -4($v1) +/* 0B9508 800B8908 020A5821 */ addu $t3, $s0, $t2 +/* 0B950C 800B890C 256C0001 */ addiu $t4, $t3, 1 +/* 0B9510 800B8910 01C26821 */ addu $t5, $t6, $v0 +/* 0B9514 800B8914 A1AC0002 */ sb $t4, 2($t5) +/* 0B9518 800B8918 8E8F0000 */ lw $t7, ($s4) +/* 0B951C 800B891C 8C6AFFFC */ lw $t2, -4($v1) +/* 0B9520 800B8920 020FC021 */ addu $t8, $s0, $t7 +/* 0B9524 800B8924 27190002 */ addiu $t9, $t8, 2 +/* 0B9528 800B8928 01425821 */ addu $t3, $t2, $v0 +/* 0B952C 800B892C A1790003 */ sb $t9, 3($t3) +/* 0B9530 800B8930 1493FFD9 */ bne $a0, $s3, .L800B8898 +/* 0B9534 800B8934 2442FFF0 */ addiu $v0, $v0, -0x10 +/* 0B9538 800B8938 8E820000 */ lw $v0, ($s4) +/* 0B953C 800B893C 00000000 */ nop +.L800B8940: +/* 0B9540 800B8940 26100001 */ addiu $s0, $s0, 1 +/* 0B9544 800B8944 0202082A */ slt $at, $s0, $v0 +/* 0B9548 800B8948 1420FFCD */ bnez $at, .L800B8880 +/* 0B954C 800B894C 26B50002 */ addiu $s5, $s5, 2 +.L800B8950: +/* 0B9550 800B8950 26F70001 */ addiu $s7, $s7, 1 +/* 0B9554 800B8954 02E2082A */ slt $at, $s7, $v0 +/* 0B9558 800B8958 1420FFC7 */ bnez $at, .L800B8878 +/* 0B955C 800B895C 00000000 */ nop +.L800B8960: +/* 0B9560 800B8960 0C02F1B2 */ jal func_800BC6C8 +/* 0B9564 800B8964 00000000 */ nop +/* 0B9568 800B8968 8E820000 */ lw $v0, ($s4) +/* 0B956C 800B896C 3C048013 */ lui $a0, %hi(D_8012A028) # $a0, 0x8013 +/* 0B9570 800B8970 244E0001 */ addiu $t6, $v0, 1 +/* 0B9574 800B8974 01C20019 */ multu $t6, $v0 +/* 0B9578 800B8978 00024080 */ sll $t0, $v0, 2 +/* 0B957C 800B897C 3C07800E */ lui $a3, %hi(D_800E3070) # $a3, 0x800e +/* 0B9580 800B8980 3C09800E */ lui $t1, %hi(D_800E3078) # $t1, 0x800e +/* 0B9584 800B8984 01024021 */ addu $t0, $t0, $v0 +/* 0B9588 800B8988 00084040 */ sll $t0, $t0, 1 +/* 0B958C 800B898C 25293078 */ addiu $t1, %lo(D_800E3078) # addiu $t1, $t1, 0x3078 +/* 0B9590 800B8990 24E73070 */ addiu $a3, %lo(D_800E3070) # addiu $a3, $a3, 0x3070 +/* 0B9594 800B8994 2484A028 */ addiu $a0, %lo(D_8012A028) # addiu $a0, $a0, -0x5fd8 +/* 0B9598 800B8998 0000A812 */ mflo $s5 +/* 0B959C 800B899C 00151880 */ sll $v1, $s5, 2 +/* 0B95A0 800B89A0 00751821 */ addu $v1, $v1, $s5 +/* 0B95A4 800B89A4 00031840 */ sll $v1, $v1, 1 +.L800B89A8: +/* 0B95A8 800B89A8 8CE50000 */ lw $a1, ($a3) +/* 0B95AC 800B89AC 24E70004 */ addiu $a3, $a3, 4 +/* 0B95B0 800B89B0 84AC0000 */ lh $t4, ($a1) +/* 0B95B4 800B89B4 A4800002 */ sh $zero, 2($a0) +/* 0B95B8 800B89B8 A48C0000 */ sh $t4, ($a0) +/* 0B95BC 800B89BC 84AD0004 */ lh $t5, 4($a1) +/* 0B95C0 800B89C0 00A81021 */ addu $v0, $a1, $t0 +/* 0B95C4 800B89C4 A48D0004 */ sh $t5, 4($a0) +/* 0B95C8 800B89C8 90AF0006 */ lbu $t7, 6($a1) +/* 0B95CC 800B89CC 00A33021 */ addu $a2, $a1, $v1 +/* 0B95D0 800B89D0 A08F0006 */ sb $t7, 6($a0) +/* 0B95D4 800B89D4 90B80007 */ lbu $t8, 7($a1) +/* 0B95D8 800B89D8 24840028 */ addiu $a0, $a0, 0x28 +/* 0B95DC 800B89DC A098FFDF */ sb $t8, -0x21($a0) +/* 0B95E0 800B89E0 90AA0008 */ lbu $t2, 8($a1) +/* 0B95E4 800B89E4 00000000 */ nop +/* 0B95E8 800B89E8 A08AFFE0 */ sb $t2, -0x20($a0) +/* 0B95EC 800B89EC 90B90009 */ lbu $t9, 9($a1) +/* 0B95F0 800B89F0 00000000 */ nop +/* 0B95F4 800B89F4 A099FFE1 */ sb $t9, -0x1f($a0) +/* 0B95F8 800B89F8 844B0000 */ lh $t3, ($v0) +/* 0B95FC 800B89FC A480FFE4 */ sh $zero, -0x1c($a0) +/* 0B9600 800B8A00 A48BFFE2 */ sh $t3, -0x1e($a0) +/* 0B9604 800B8A04 844E0004 */ lh $t6, 4($v0) +/* 0B9608 800B8A08 00000000 */ nop +/* 0B960C 800B8A0C A48EFFE6 */ sh $t6, -0x1a($a0) +/* 0B9610 800B8A10 904C0006 */ lbu $t4, 6($v0) +/* 0B9614 800B8A14 00000000 */ nop +/* 0B9618 800B8A18 A08CFFE8 */ sb $t4, -0x18($a0) +/* 0B961C 800B8A1C 904D0007 */ lbu $t5, 7($v0) +/* 0B9620 800B8A20 00000000 */ nop +/* 0B9624 800B8A24 A08DFFE9 */ sb $t5, -0x17($a0) +/* 0B9628 800B8A28 904F0008 */ lbu $t7, 8($v0) +/* 0B962C 800B8A2C 00000000 */ nop +/* 0B9630 800B8A30 A08FFFEA */ sb $t7, -0x16($a0) +/* 0B9634 800B8A34 90580009 */ lbu $t8, 9($v0) +/* 0B9638 800B8A38 00157880 */ sll $t7, $s5, 2 +/* 0B963C 800B8A3C A098FFEB */ sb $t8, -0x15($a0) +/* 0B9640 800B8A40 84CA0000 */ lh $t2, ($a2) +/* 0B9644 800B8A44 A480FFEE */ sh $zero, -0x12($a0) +/* 0B9648 800B8A48 A48AFFEC */ sh $t2, -0x14($a0) +/* 0B964C 800B8A4C 84D90004 */ lh $t9, 4($a2) +/* 0B9650 800B8A50 01F57821 */ addu $t7, $t7, $s5 +/* 0B9654 800B8A54 A499FFF0 */ sh $t9, -0x10($a0) +/* 0B9658 800B8A58 90CB0006 */ lbu $t3, 6($a2) +/* 0B965C 800B8A5C 000F7840 */ sll $t7, $t7, 1 +/* 0B9660 800B8A60 A08BFFF2 */ sb $t3, -0xe($a0) +/* 0B9664 800B8A64 90CE0007 */ lbu $t6, 7($a2) +/* 0B9668 800B8A68 00AFC021 */ addu $t8, $a1, $t7 +/* 0B966C 800B8A6C A08EFFF3 */ sb $t6, -0xd($a0) +/* 0B9670 800B8A70 90CC0008 */ lbu $t4, 8($a2) +/* 0B9674 800B8A74 03081021 */ addu $v0, $t8, $t0 +/* 0B9678 800B8A78 A08CFFF4 */ sb $t4, -0xc($a0) +/* 0B967C 800B8A7C 90CD0009 */ lbu $t5, 9($a2) +/* 0B9680 800B8A80 00000000 */ nop +/* 0B9684 800B8A84 A08DFFF5 */ sb $t5, -0xb($a0) +/* 0B9688 800B8A88 844A0000 */ lh $t2, ($v0) +/* 0B968C 800B8A8C A480FFF8 */ sh $zero, -8($a0) +/* 0B9690 800B8A90 A48AFFF6 */ sh $t2, -0xa($a0) +/* 0B9694 800B8A94 84590004 */ lh $t9, 4($v0) +/* 0B9698 800B8A98 00000000 */ nop +/* 0B969C 800B8A9C A499FFFA */ sh $t9, -6($a0) +/* 0B96A0 800B8AA0 904B0006 */ lbu $t3, 6($v0) +/* 0B96A4 800B8AA4 00000000 */ nop +/* 0B96A8 800B8AA8 A08BFFFC */ sb $t3, -4($a0) +/* 0B96AC 800B8AAC 904E0007 */ lbu $t6, 7($v0) +/* 0B96B0 800B8AB0 00000000 */ nop +/* 0B96B4 800B8AB4 A08EFFFD */ sb $t6, -3($a0) +/* 0B96B8 800B8AB8 904C0008 */ lbu $t4, 8($v0) +/* 0B96BC 800B8ABC 00000000 */ nop +/* 0B96C0 800B8AC0 A08CFFFE */ sb $t4, -2($a0) +/* 0B96C4 800B8AC4 904D0009 */ lbu $t5, 9($v0) +/* 0B96C8 800B8AC8 14E9FFB7 */ bne $a3, $t1, .L800B89A8 +/* 0B96CC 800B8ACC A08DFFFF */ sb $t5, -1($a0) +/* 0B96D0 800B8AD0 8FA40070 */ lw $a0, 0x70($sp) +/* 0B96D4 800B8AD4 0C02F31C */ jal func_800BCC70 +/* 0B96D8 800B8AD8 00000000 */ nop +/* 0B96DC 800B8ADC 8E8F0024 */ lw $t7, 0x24($s4) +/* 0B96E0 800B8AE0 24010003 */ li $at, 3 +/* 0B96E4 800B8AE4 15E1000A */ bne $t7, $at, .L800B8B10 +/* 0B96E8 800B8AE8 24190005 */ li $t9, 5 +/* 0B96EC 800B8AEC 3C18800E */ lui $t8, %hi(D_800E30E8) # $t8, 0x800e +/* 0B96F0 800B8AF0 271830E8 */ addiu $t8, %lo(D_800E30E8) # addiu $t8, $t8, 0x30e8 +/* 0B96F4 800B8AF4 3C01800E */ lui $at, %hi(D_800E30E0) # $at, 0x800e +/* 0B96F8 800B8AF8 AC3830E0 */ sw $t8, %lo(D_800E30E0)($at) +/* 0B96FC 800B8AFC 3C0A800E */ lui $t2, %hi(D_800E30FC) # $t2, 0x800e +/* 0B9700 800B8B00 254A30FC */ addiu $t2, %lo(D_800E30FC) # addiu $t2, $t2, 0x30fc +/* 0B9704 800B8B04 3C01800E */ lui $at, %hi(D_800E30E4) # $at, 0x800e +/* 0B9708 800B8B08 1000000A */ b .L800B8B34 +/* 0B970C 800B8B0C AC2A30E4 */ sw $t2, %lo(D_800E30E4)($at) +.L800B8B10: +/* 0B9710 800B8B10 3C0B800E */ lui $t3, %hi(D_800E3110) # $t3, 0x800e +/* 0B9714 800B8B14 AE990024 */ sw $t9, 0x24($s4) +/* 0B9718 800B8B18 256B3110 */ addiu $t3, %lo(D_800E3110) # addiu $t3, $t3, 0x3110 +/* 0B971C 800B8B1C 3C01800E */ lui $at, %hi(D_800E30E0) # $at, 0x800e +/* 0B9720 800B8B20 AC2B30E0 */ sw $t3, %lo(D_800E30E0)($at) +/* 0B9724 800B8B24 3C0E800E */ lui $t6, %hi(D_800E3144) # $t6, 0x800e +/* 0B9728 800B8B28 25CE3144 */ addiu $t6, %lo(D_800E3144) # addiu $t6, $t6, 0x3144 +/* 0B972C 800B8B2C 3C01800E */ lui $at, %hi(D_800E30E4) # $at, 0x800e +/* 0B9730 800B8B30 AC2E30E4 */ sw $t6, %lo(D_800E30E4)($at) +.L800B8B34: +/* 0B9734 800B8B34 3C01800E */ lui $at, %hi(D_800E3188) # $at, 0x800e +/* 0B9738 800B8B38 AC203188 */ sw $zero, %lo(D_800E3188)($at) +/* 0B973C 800B8B3C 3C018013 */ lui $at, %hi(D_8012A728) # $at, 0x8013 +/* 0B9740 800B8B40 AC20A728 */ sw $zero, %lo(D_8012A728)($at) +/* 0B9744 800B8B44 3C01800E */ lui $at, %hi(D_800E3198) # $at, 0x800e +/* 0B9748 800B8B48 8FBF0044 */ lw $ra, 0x44($sp) +/* 0B974C 800B8B4C AC203198 */ sw $zero, %lo(D_800E3198)($at) +/* 0B9750 800B8B50 3C018013 */ lui $at, %hi(D_8012A018) # $at, 0x8013 +/* 0B9754 800B8B54 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 0B9758 800B8B58 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 0B975C 800B8B5C 8FB00020 */ lw $s0, 0x20($sp) +/* 0B9760 800B8B60 8FB10024 */ lw $s1, 0x24($sp) +/* 0B9764 800B8B64 8FB20028 */ lw $s2, 0x28($sp) +/* 0B9768 800B8B68 8FB3002C */ lw $s3, 0x2c($sp) +/* 0B976C 800B8B6C 8FB40030 */ lw $s4, 0x30($sp) +/* 0B9770 800B8B70 8FB50034 */ lw $s5, 0x34($sp) +/* 0B9774 800B8B74 8FB60038 */ lw $s6, 0x38($sp) +/* 0B9778 800B8B78 8FB7003C */ lw $s7, 0x3c($sp) +/* 0B977C 800B8B7C 8FBE0040 */ lw $fp, 0x40($sp) +/* 0B9780 800B8B80 AC20A018 */ sw $zero, %lo(D_8012A018)($at) +/* 0B9784 800B8B84 03E00008 */ jr $ra +/* 0B9788 800B8B88 27BD0070 */ addiu $sp, $sp, 0x70 + diff --git a/asm/non_matchings/unknown_0B8920/func_800B8B8C.s b/asm/non_matchings/unknown_0B8920/func_800B8B8C.s new file mode 100644 index 00000000..592767bb --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800B8B8C.s @@ -0,0 +1,34 @@ +glabel func_800B8B8C +/* 0B978C 800B8B8C 3C01800E */ lui $at, %hi(D_800E30DC) # $at, 0x800e +/* 0B9790 800B8B90 3C048013 */ lui $a0, %hi(D_8012A0D8) # $a0, 0x8013 +/* 0B9794 800B8B94 3C058013 */ lui $a1, %hi(D_8012A0DC) # $a1, 0x8013 +/* 0B9798 800B8B98 AC2030DC */ sw $zero, %lo(D_800E30DC)($at) +/* 0B979C 800B8B9C 24A5A0DC */ addiu $a1, %lo(D_8012A0DC) # addiu $a1, $a1, -0x5f24 +/* 0B97A0 800B8BA0 2484A0D8 */ addiu $a0, %lo(D_8012A0D8) # addiu $a0, $a0, -0x5f28 +/* 0B97A4 800B8BA4 8C8E0000 */ lw $t6, ($a0) +/* 0B97A8 800B8BA8 8CAF0000 */ lw $t7, ($a1) +/* 0B97AC 800B8BAC 3C06800E */ lui $a2, %hi(D_800E30D4) # $a2, 0x800e +/* 0B97B0 800B8BB0 01CF0019 */ multu $t6, $t7 +/* 0B97B4 800B8BB4 24C630D4 */ addiu $a2, %lo(D_800E30D4) # addiu $a2, $a2, 0x30d4 +/* 0B97B8 800B8BB8 00001025 */ move $v0, $zero +/* 0B97BC 800B8BBC 00001825 */ move $v1, $zero +/* 0B97C0 800B8BC0 0000C012 */ mflo $t8 +/* 0B97C4 800B8BC4 1B00000D */ blez $t8, .L800B8BFC +/* 0B97C8 800B8BC8 00000000 */ nop +.L800B8BCC: +/* 0B97CC 800B8BCC 8CD90000 */ lw $t9, ($a2) +/* 0B97D0 800B8BD0 24420001 */ addiu $v0, $v0, 1 +/* 0B97D4 800B8BD4 03234021 */ addu $t0, $t9, $v1 +/* 0B97D8 800B8BD8 AD000000 */ sw $zero, ($t0) +/* 0B97DC 800B8BDC 8CAA0000 */ lw $t2, ($a1) +/* 0B97E0 800B8BE0 8C890000 */ lw $t1, ($a0) +/* 0B97E4 800B8BE4 24630004 */ addiu $v1, $v1, 4 +/* 0B97E8 800B8BE8 012A0019 */ multu $t1, $t2 +/* 0B97EC 800B8BEC 00005812 */ mflo $t3 +/* 0B97F0 800B8BF0 004B082A */ slt $at, $v0, $t3 +/* 0B97F4 800B8BF4 1420FFF5 */ bnez $at, .L800B8BCC +/* 0B97F8 800B8BF8 00000000 */ nop +.L800B8BFC: +/* 0B97FC 800B8BFC 03E00008 */ jr $ra +/* 0B9800 800B8C00 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800B8C04.s b/asm/non_matchings/unknown_0B8920/func_800B8C04.s new file mode 100644 index 00000000..00e122fb --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800B8C04.s @@ -0,0 +1,428 @@ +glabel func_800B8C04 +/* 0B9804 800B8C04 3C0A8013 */ lui $t2, %hi(D_8012A0D0) # $t2, 0x8013 +/* 0B9808 800B8C08 8D4AA0D0 */ lw $t2, %lo(D_8012A0D0)($t2) +/* 0B980C 800B8C0C 3C088013 */ lui $t0, %hi(D_8012A0A8) # $t0, 0x8013 +/* 0B9810 800B8C10 8D08A0A8 */ lw $t0, %lo(D_8012A0A8)($t0) +/* 0B9814 800B8C14 008A7023 */ subu $t6, $a0, $t2 +/* 0B9818 800B8C18 01C8001A */ div $zero, $t6, $t0 +/* 0B981C 800B8C1C 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 0B9820 800B8C20 AFA50054 */ sw $a1, 0x54($sp) +/* 0B9824 800B8C24 3C0C8013 */ lui $t4, %hi(D_8012A0D4) # $t4, 0x8013 +/* 0B9828 800B8C28 8D8CA0D4 */ lw $t4, %lo(D_8012A0D4)($t4) +/* 0B982C 800B8C2C 3C098013 */ lui $t1, %hi(D_8012A0AC) # $t1, 0x8013 +/* 0B9830 800B8C30 8D29A0AC */ lw $t1, %lo(D_8012A0AC)($t1) +/* 0B9834 800B8C34 00CC7823 */ subu $t7, $a2, $t4 +/* 0B9838 800B8C38 AFB70034 */ sw $s7, 0x34($sp) +/* 0B983C 800B8C3C AFB00018 */ sw $s0, 0x18($sp) +/* 0B9840 800B8C40 2418FFFF */ li $t8, -1 +/* 0B9844 800B8C44 00808025 */ move $s0, $a0 +/* 0B9848 800B8C48 AFB60030 */ sw $s6, 0x30($sp) +/* 0B984C 800B8C4C AFA7005C */ sw $a3, 0x5c($sp) +/* 0B9850 800B8C50 3C048013 */ lui $a0, %hi(D_8012A720) # $a0, 0x8013 +/* 0B9854 800B8C54 2419FFFF */ li $t9, -1 +/* 0B9858 800B8C58 3C038013 */ lui $v1, %hi(D_8012A600) # $v1, 0x8013 +/* 0B985C 800B8C5C AFBF003C */ sw $ra, 0x3c($sp) +/* 0B9860 800B8C60 AFBE0038 */ sw $fp, 0x38($sp) +/* 0B9864 800B8C64 AFB5002C */ sw $s5, 0x2c($sp) +/* 0B9868 800B8C68 AFB40028 */ sw $s4, 0x28($sp) +/* 0B986C 800B8C6C AFB30024 */ sw $s3, 0x24($sp) +/* 0B9870 800B8C70 AFB20020 */ sw $s2, 0x20($sp) +/* 0B9874 800B8C74 AFB1001C */ sw $s1, 0x1c($sp) +/* 0B9878 800B8C78 15000002 */ bnez $t0, .L800B8C84 +/* 0B987C 800B8C7C 00000000 */ nop +/* 0B9880 800B8C80 0007000D */ break 7 +.L800B8C84: +/* 0B9884 800B8C84 2401FFFF */ li $at, -1 +/* 0B9888 800B8C88 15010004 */ bne $t0, $at, .L800B8C9C +/* 0B988C 800B8C8C 3C018000 */ lui $at, 0x8000 +/* 0B9890 800B8C90 15C10002 */ bne $t6, $at, .L800B8C9C +/* 0B9894 800B8C94 00000000 */ nop +/* 0B9898 800B8C98 0006000D */ break 6 +.L800B8C9C: +/* 0B989C 800B8C9C 00002812 */ mflo $a1 +/* 0B98A0 800B8CA0 2463A600 */ addiu $v1, %lo(D_8012A600) # addiu $v1, $v1, -0x5a00 +/* 0B98A4 800B8CA4 2484A720 */ addiu $a0, %lo(D_8012A720) # addiu $a0, $a0, -0x58e0 +/* 0B98A8 800B8CA8 01E9001A */ div $zero, $t7, $t1 +/* 0B98AC 800B8CAC 15200002 */ bnez $t1, .L800B8CB8 +/* 0B98B0 800B8CB0 00000000 */ nop +/* 0B98B4 800B8CB4 0007000D */ break 7 +.L800B8CB8: +/* 0B98B8 800B8CB8 2401FFFF */ li $at, -1 +/* 0B98BC 800B8CBC 15210004 */ bne $t1, $at, .L800B8CD0 +/* 0B98C0 800B8CC0 3C018000 */ lui $at, 0x8000 +/* 0B98C4 800B8CC4 15E10002 */ bne $t7, $at, .L800B8CD0 +/* 0B98C8 800B8CC8 00000000 */ nop +/* 0B98CC 800B8CCC 0006000D */ break 6 +.L800B8CD0: +/* 0B98D0 800B8CD0 3C018013 */ lui $at, %hi(D_8012A5E8) # $at, 0x8013 +/* 0B98D4 800B8CD4 A438A5E8 */ sh $t8, %lo(D_8012A5E8)($at) +/* 0B98D8 800B8CD8 3C018013 */ lui $at, %hi(D_8012A5F4) # $at, 0x8013 +/* 0B98DC 800B8CDC A439A5F4 */ sh $t9, %lo(D_8012A5F4)($at) +/* 0B98E0 800B8CE0 2402FFFF */ li $v0, -1 +/* 0B98E4 800B8CE4 3C0B8013 */ lui $t3, %hi(D_80129FC8) # $t3, 0x8013 +/* 0B98E8 800B8CE8 00003825 */ move $a3, $zero +/* 0B98EC 800B8CEC 0000B025 */ move $s6, $zero +/* 0B98F0 800B8CF0 0000B812 */ mflo $s7 +/* 0B98F4 800B8CF4 00000000 */ nop +/* 0B98F8 800B8CF8 00000000 */ nop +.L800B8CFC: +/* 0B98FC 800B8CFC 24630030 */ addiu $v1, $v1, 0x30 +/* 0B9900 800B8D00 A462FFD0 */ sh $v0, -0x30($v1) +/* 0B9904 800B8D04 A462FFDC */ sh $v0, -0x24($v1) +/* 0B9908 800B8D08 A462FFE8 */ sh $v0, -0x18($v1) +/* 0B990C 800B8D0C 1464FFFB */ bne $v1, $a0, .L800B8CFC +/* 0B9910 800B8D10 A462FFF4 */ sh $v0, -0xc($v1) +/* 0B9914 800B8D14 256B9FC8 */ addiu $t3, %lo(D_80129FC8) # addiu $t3, $t3, -0x6038 +/* 0B9918 800B8D18 8D6E0028 */ lw $t6, 0x28($t3) +/* 0B991C 800B8D1C 00000000 */ nop +/* 0B9920 800B8D20 11C000C8 */ beqz $t6, .L800B9044 +/* 0B9924 800B8D24 00000000 */ nop +/* 0B9928 800B8D28 00A80019 */ multu $a1, $t0 +/* 0B992C 800B8D2C 3C12800E */ lui $s2, %hi(D_800E317C) # $s2, 0x800e +/* 0B9930 800B8D30 00001825 */ move $v1, $zero +/* 0B9934 800B8D34 0000A025 */ move $s4, $zero +/* 0B9938 800B8D38 2652317C */ addiu $s2, %lo(D_800E317C) # addiu $s2, $s2, 0x317c +/* 0B993C 800B8D3C 2411000C */ li $s1, 12 +/* 0B9940 800B8D40 241F001C */ li $ra, 28 +/* 0B9944 800B8D44 00007812 */ mflo $t7 +/* 0B9948 800B8D48 020FC023 */ subu $t8, $s0, $t7 +/* 0B994C 800B8D4C 030A8023 */ subu $s0, $t8, $t2 +/* 0B9950 800B8D50 02E90019 */ multu $s7, $t1 +/* 0B9954 800B8D54 00087843 */ sra $t7, $t0, 1 +/* 0B9958 800B8D58 01F0082A */ slt $at, $t7, $s0 +/* 0B995C 800B8D5C 3C108013 */ lui $s0, %hi(D_8012A5E8) # $s0, 0x8013 +/* 0B9960 800B8D60 0009C043 */ sra $t8, $t1, 1 +/* 0B9964 800B8D64 2610A5E8 */ addiu $s0, %lo(D_8012A5E8) # addiu $s0, $s0, -0x5a18 +/* 0B9968 800B8D68 0000C812 */ mflo $t9 +/* 0B996C 800B8D6C 00D97023 */ subu $t6, $a2, $t9 +/* 0B9970 800B8D70 10200003 */ beqz $at, .L800B8D80 +/* 0B9974 800B8D74 01CC3023 */ subu $a2, $t6, $t4 +/* 0B9978 800B8D78 10000002 */ b .L800B8D84 +/* 0B997C 800B8D7C 24030008 */ li $v1, 8 +.L800B8D80: +/* 0B9980 800B8D80 AFA00040 */ sw $zero, 0x40($sp) +.L800B8D84: +/* 0B9984 800B8D84 0306082A */ slt $at, $t8, $a2 +/* 0B9988 800B8D88 10200003 */ beqz $at, .L800B8D98 +/* 0B998C 800B8D8C 00000000 */ nop +/* 0B9990 800B8D90 10000001 */ b .L800B8D98 +/* 0B9994 800B8D94 24140010 */ li $s4, 16 +.L800B8D98: +/* 0B9998 800B8D98 8D640024 */ lw $a0, 0x24($t3) +/* 0B999C 800B8D9C 00000000 */ nop +/* 0B99A0 800B8DA0 00041043 */ sra $v0, $a0, 1 +/* 0B99A4 800B8DA4 0002C8C0 */ sll $t9, $v0, 3 +/* 0B99A8 800B8DA8 00791823 */ subu $v1, $v1, $t9 +/* 0B99AC 800B8DAC 04610004 */ bgez $v1, .L800B8DC0 +/* 0B99B0 800B8DB0 00027100 */ sll $t6, $v0, 4 +.L800B8DB4: +/* 0B99B4 800B8DB4 24630010 */ addiu $v1, $v1, 0x10 +/* 0B99B8 800B8DB8 0460FFFE */ bltz $v1, .L800B8DB4 +/* 0B99BC 800B8DBC 24A5FFFF */ addiu $a1, $a1, -1 +.L800B8DC0: +/* 0B99C0 800B8DC0 028EA023 */ subu $s4, $s4, $t6 +/* 0B99C4 800B8DC4 06810004 */ bgez $s4, .L800B8DD8 +/* 0B99C8 800B8DC8 00000000 */ nop +.L800B8DCC: +/* 0B99CC 800B8DCC 26940020 */ addiu $s4, $s4, 0x20 +/* 0B99D0 800B8DD0 0680FFFE */ bltz $s4, .L800B8DCC +/* 0B99D4 800B8DD4 26F7FFFF */ addiu $s7, $s7, -1 +.L800B8DD8: +/* 0B99D8 800B8DD8 18800103 */ blez $a0, .L800B91E8 +/* 0B99DC 800B8DDC 0000B025 */ move $s6, $zero +/* 0B99E0 800B8DE0 3C1E8013 */ lui $fp, %hi(D_8012A0D8) # $fp, 0x8013 +/* 0B99E4 800B8DE4 27DEA0D8 */ addiu $fp, %lo(D_8012A0D8) # addiu $fp, $fp, -0x5f28 +/* 0B99E8 800B8DE8 AFA5004C */ sw $a1, 0x4c($sp) +.L800B8DEC: +/* 0B99EC 800B8DEC 06E00089 */ bltz $s7, .L800B9014 +/* 0B99F0 800B8DF0 AFA30040 */ sw $v1, 0x40($sp) +/* 0B99F4 800B8DF4 3C0F8013 */ lui $t7, %hi(D_8012A0DC) # $t7, 0x8013 +/* 0B99F8 800B8DF8 8DEFA0DC */ lw $t7, %lo(D_8012A0DC)($t7) +/* 0B99FC 800B8DFC AFA30040 */ sw $v1, 0x40($sp) +/* 0B9A00 800B8E00 02EF082A */ slt $at, $s7, $t7 +/* 0B9A04 800B8E04 10200083 */ beqz $at, .L800B9014 +/* 0B9A08 800B8E08 00000000 */ nop +/* 0B9A0C 800B8E0C 8FD80000 */ lw $t8, ($fp) +/* 0B9A10 800B8E10 8FB3004C */ lw $s3, 0x4c($sp) +/* 0B9A14 800B8E14 02F80019 */ multu $s7, $t8 +/* 0B9A18 800B8E18 00606825 */ move $t5, $v1 +/* 0B9A1C 800B8E1C 0000A825 */ move $s5, $zero +/* 0B9A20 800B8E20 0000C812 */ mflo $t9 +/* 0B9A24 800B8E24 03335021 */ addu $t2, $t9, $s3 +/* 0B9A28 800B8E28 1880007A */ blez $a0, .L800B9014 +/* 0B9A2C 800B8E2C 00000000 */ nop +.L800B8E30: +/* 0B9A30 800B8E30 0660006D */ bltz $s3, .L800B8FE8 +/* 0B9A34 800B8E34 00000000 */ nop +/* 0B9A38 800B8E38 8FCE0000 */ lw $t6, ($fp) +/* 0B9A3C 800B8E3C 00177880 */ sll $t7, $s7, 2 +/* 0B9A40 800B8E40 026E082A */ slt $at, $s3, $t6 +/* 0B9A44 800B8E44 10200068 */ beqz $at, .L800B8FE8 +/* 0B9A48 800B8E48 3C188013 */ lui $t8, 0x8013 +/* 0B9A4C 800B8E4C 030FC021 */ addu $t8, $t8, $t7 +/* 0B9A50 800B8E50 8F18A0E8 */ lw $t8, -0x5f18($t8) +/* 0B9A54 800B8E54 24190001 */ li $t9, 1 +/* 0B9A58 800B8E58 02797004 */ sllv $t6, $t9, $s3 +/* 0B9A5C 800B8E5C 030E7824 */ and $t7, $t8, $t6 +/* 0B9A60 800B8E60 11E00061 */ beqz $t7, .L800B8FE8 +/* 0B9A64 800B8E64 00000000 */ nop +/* 0B9A68 800B8E68 02C40019 */ multu $s6, $a0 +/* 0B9A6C 800B8E6C 3C19800E */ lui $t9, %hi(D_800E30D4) # $t9, 0x800e +/* 0B9A70 800B8E70 8F3930D4 */ lw $t9, %lo(D_800E30D4)($t9) +/* 0B9A74 800B8E74 000AC080 */ sll $t8, $t2, 2 +/* 0B9A78 800B8E78 3C0E800E */ lui $t6, %hi(D_800E30E0) # $t6, 0x800e +/* 0B9A7C 800B8E7C 03381821 */ addu $v1, $t9, $t8 +/* 0B9A80 800B8E80 8DCE30E0 */ lw $t6, %lo(D_800E30E0)($t6) +/* 0B9A84 800B8E84 01B46021 */ addu $t4, $t5, $s4 +/* 0B9A88 800B8E88 3C088013 */ lui $t0, %hi(D_8012A0E0) # $t0, 0x8013 +/* 0B9A8C 800B8E8C 00001025 */ move $v0, $zero +/* 0B9A90 800B8E90 3C09800E */ lui $t1, %hi(D_800E30D8) # $t1, 0x800e +/* 0B9A94 800B8E94 00007812 */ mflo $t7 +/* 0B9A98 800B8E98 000FC840 */ sll $t9, $t7, 1 +/* 0B9A9C 800B8E9C 00157840 */ sll $t7, $s5, 1 +/* 0B9AA0 800B8EA0 01D9C021 */ addu $t8, $t6, $t9 +/* 0B9AA4 800B8EA4 030F7021 */ addu $t6, $t8, $t7 +/* 0B9AA8 800B8EA8 85D90000 */ lh $t9, ($t6) +/* 0B9AAC 800B8EAC 8C6F0000 */ lw $t7, ($v1) +/* 0B9AB0 800B8EB0 0199C004 */ sllv $t8, $t9, $t4 +/* 0B9AB4 800B8EB4 01F87025 */ or $t6, $t7, $t8 +/* 0B9AB8 800B8EB8 AC6E0000 */ sw $t6, ($v1) +/* 0B9ABC 800B8EBC 8D08A0E0 */ lw $t0, %lo(D_8012A0E0)($t0) +/* 0B9AC0 800B8EC0 00000000 */ nop +/* 0B9AC4 800B8EC4 19000048 */ blez $t0, .L800B8FE8 +/* 0B9AC8 800B8EC8 00000000 */ nop +/* 0B9ACC 800B8ECC 8D2930D8 */ lw $t1, %lo(D_800E30D8)($t1) +/* 0B9AD0 800B8ED0 00000000 */ nop +.L800B8ED4: +/* 0B9AD4 800B8ED4 005F0019 */ multu $v0, $ra +/* 0B9AD8 800B8ED8 0000C812 */ mflo $t9 +/* 0B9ADC 800B8EDC 01393021 */ addu $a2, $t1, $t9 +/* 0B9AE0 800B8EE0 8CCF000C */ lw $t7, 0xc($a2) +/* 0B9AE4 800B8EE4 00000000 */ nop +/* 0B9AE8 800B8EE8 154F003B */ bne $t2, $t7, .L800B8FD8 +/* 0B9AEC 800B8EEC 00000000 */ nop +/* 0B9AF0 800B8EF0 00F10019 */ multu $a3, $s1 +/* 0B9AF4 800B8EF4 8E590000 */ lw $t9, ($s2) +/* 0B9AF8 800B8EF8 000C70C3 */ sra $t6, $t4, 3 +/* 0B9AFC 800B8EFC 24E70001 */ addiu $a3, $a3, 1 +/* 0B9B00 800B8F00 0000C012 */ mflo $t8 +/* 0B9B04 800B8F04 02181821 */ addu $v1, $s0, $t8 +/* 0B9B08 800B8F08 A4620000 */ sh $v0, ($v1) +/* 0B9B0C 800B8F0C 00590019 */ multu $v0, $t9 +/* 0B9B10 800B8F10 A46E0002 */ sh $t6, 2($v1) +/* 0B9B14 800B8F14 00007812 */ mflo $t7 +/* 0B9B18 800B8F18 AC6F0008 */ sw $t7, 8($v1) +/* 0B9B1C 800B8F1C 84D80012 */ lh $t8, 0x12($a2) +/* 0B9B20 800B8F20 11A00013 */ beqz $t5, .L800B8F70 +/* 0B9B24 800B8F24 A4780004 */ sh $t8, 4($v1) +/* 0B9B28 800B8F28 8D650000 */ lw $a1, ($t3) +/* 0B9B2C 800B8F2C 8D640004 */ lw $a0, 4($t3) +/* 0B9B30 800B8F30 01E5C821 */ addu $t9, $t7, $a1 +/* 0B9B34 800B8F34 846F0004 */ lh $t7, 4($v1) +/* 0B9B38 800B8F38 AC790008 */ sw $t9, 8($v1) +/* 0B9B3C 800B8F3C 01E5C021 */ addu $t8, $t7, $a1 +/* 0B9B40 800B8F40 A4780004 */ sh $t8, 4($v1) +/* 0B9B44 800B8F44 84620004 */ lh $v0, 4($v1) +/* 0B9B48 800B8F48 00000000 */ nop +/* 0B9B4C 800B8F4C 0044082A */ slt $at, $v0, $a0 +/* 0B9B50 800B8F50 14200007 */ bnez $at, .L800B8F70 +/* 0B9B54 800B8F54 00447023 */ subu $t6, $v0, $a0 +.L800B8F58: +/* 0B9B58 800B8F58 A46E0004 */ sh $t6, 4($v1) +/* 0B9B5C 800B8F5C 84620004 */ lh $v0, 4($v1) +/* 0B9B60 800B8F60 00000000 */ nop +/* 0B9B64 800B8F64 0044082A */ slt $at, $v0, $a0 +/* 0B9B68 800B8F68 1020FFFB */ beqz $at, .L800B8F58 +/* 0B9B6C 800B8F6C 00447023 */ subu $t6, $v0, $a0 +.L800B8F70: +/* 0B9B70 800B8F70 84D90010 */ lh $t9, 0x10($a2) +/* 0B9B74 800B8F74 12800017 */ beqz $s4, .L800B8FD4 +/* 0B9B78 800B8F78 A4790006 */ sh $t9, 6($v1) +/* 0B9B7C 800B8F7C 8D650000 */ lw $a1, ($t3) +/* 0B9B80 800B8F80 8C6F0008 */ lw $t7, 8($v1) +/* 0B9B84 800B8F84 0005C040 */ sll $t8, $a1, 1 +/* 0B9B88 800B8F88 270E0001 */ addiu $t6, $t8, 1 +/* 0B9B8C 800B8F8C 01C50019 */ multu $t6, $a1 +/* 0B9B90 800B8F90 846E0006 */ lh $t6, 6($v1) +/* 0B9B94 800B8F94 8D640004 */ lw $a0, 4($t3) +/* 0B9B98 800B8F98 0000C812 */ mflo $t9 +/* 0B9B9C 800B8F9C 01F9C021 */ addu $t8, $t7, $t9 +/* 0B9BA0 800B8FA0 01C57821 */ addu $t7, $t6, $a1 +/* 0B9BA4 800B8FA4 A46F0006 */ sh $t7, 6($v1) +/* 0B9BA8 800B8FA8 84620006 */ lh $v0, 6($v1) +/* 0B9BAC 800B8FAC AC780008 */ sw $t8, 8($v1) +/* 0B9BB0 800B8FB0 0044082A */ slt $at, $v0, $a0 +/* 0B9BB4 800B8FB4 14200007 */ bnez $at, .L800B8FD4 +/* 0B9BB8 800B8FB8 0044C823 */ subu $t9, $v0, $a0 +.L800B8FBC: +/* 0B9BBC 800B8FBC A4790006 */ sh $t9, 6($v1) +/* 0B9BC0 800B8FC0 84620006 */ lh $v0, 6($v1) +/* 0B9BC4 800B8FC4 00000000 */ nop +/* 0B9BC8 800B8FC8 0044082A */ slt $at, $v0, $a0 +/* 0B9BCC 800B8FCC 1020FFFB */ beqz $at, .L800B8FBC +/* 0B9BD0 800B8FD0 0044C823 */ subu $t9, $v0, $a0 +.L800B8FD4: +/* 0B9BD4 800B8FD4 24027FFF */ li $v0, 32767 +.L800B8FD8: +/* 0B9BD8 800B8FD8 24420001 */ addiu $v0, $v0, 1 +/* 0B9BDC 800B8FDC 0048082A */ slt $at, $v0, $t0 +/* 0B9BE0 800B8FE0 1420FFBC */ bnez $at, .L800B8ED4 +/* 0B9BE4 800B8FE4 00000000 */ nop +.L800B8FE8: +/* 0B9BE8 800B8FE8 25AD0008 */ addiu $t5, $t5, 8 +/* 0B9BEC 800B8FEC 29A10009 */ slti $at, $t5, 9 +/* 0B9BF0 800B8FF0 8D640024 */ lw $a0, 0x24($t3) +/* 0B9BF4 800B8FF4 14200004 */ bnez $at, .L800B9008 +/* 0B9BF8 800B8FF8 26B50001 */ addiu $s5, $s5, 1 +/* 0B9BFC 800B8FFC 25ADFFF0 */ addiu $t5, $t5, -0x10 +/* 0B9C00 800B9000 26730001 */ addiu $s3, $s3, 1 +/* 0B9C04 800B9004 254A0001 */ addiu $t2, $t2, 1 +.L800B9008: +/* 0B9C08 800B9008 02A4082A */ slt $at, $s5, $a0 +/* 0B9C0C 800B900C 1420FF88 */ bnez $at, .L800B8E30 +/* 0B9C10 800B9010 00000000 */ nop +.L800B9014: +/* 0B9C14 800B9014 26940010 */ addiu $s4, $s4, 0x10 +/* 0B9C18 800B9018 8FA30040 */ lw $v1, 0x40($sp) +/* 0B9C1C 800B901C 2A810011 */ slti $at, $s4, 0x11 +/* 0B9C20 800B9020 14200003 */ bnez $at, .L800B9030 +/* 0B9C24 800B9024 26D60001 */ addiu $s6, $s6, 1 +/* 0B9C28 800B9028 2694FFE0 */ addiu $s4, $s4, -0x20 +/* 0B9C2C 800B902C 26F70001 */ addiu $s7, $s7, 1 +.L800B9030: +/* 0B9C30 800B9030 02C4082A */ slt $at, $s6, $a0 +/* 0B9C34 800B9034 1420FF6D */ bnez $at, .L800B8DEC +/* 0B9C38 800B9038 00000000 */ nop +/* 0B9C3C 800B903C 1000006B */ b .L800B91EC +/* 0B9C40 800B9040 8FA4005C */ lw $a0, 0x5c($sp) +.L800B9044: +/* 0B9C44 800B9044 8D640024 */ lw $a0, 0x24($t3) +/* 0B9C48 800B9048 00003825 */ move $a3, $zero +/* 0B9C4C 800B904C 00041043 */ sra $v0, $a0, 1 +/* 0B9C50 800B9050 00A22823 */ subu $a1, $a1, $v0 +/* 0B9C54 800B9054 18800064 */ blez $a0, .L800B91E8 +/* 0B9C58 800B9058 02E2B823 */ subu $s7, $s7, $v0 +/* 0B9C5C 800B905C 3C1E8013 */ lui $fp, %hi(D_8012A0D8) # $fp, 0x8013 +/* 0B9C60 800B9060 3C12800E */ lui $s2, %hi(D_800E317C) # $s2, 0x800e +/* 0B9C64 800B9064 3C108013 */ lui $s0, %hi(D_8012A5E8) # $s0, 0x8013 +/* 0B9C68 800B9068 2610A5E8 */ addiu $s0, %lo(D_8012A5E8) # addiu $s0, $s0, -0x5a18 +/* 0B9C6C 800B906C 2652317C */ addiu $s2, %lo(D_800E317C) # addiu $s2, $s2, 0x317c +/* 0B9C70 800B9070 27DEA0D8 */ addiu $fp, %lo(D_8012A0D8) # addiu $fp, $fp, -0x5f28 +/* 0B9C74 800B9074 AFA5004C */ sw $a1, 0x4c($sp) +/* 0B9C78 800B9078 2411000C */ li $s1, 12 +/* 0B9C7C 800B907C 241F001C */ li $ra, 28 +.L800B9080: +/* 0B9C80 800B9080 06E00055 */ bltz $s7, .L800B91D8 +/* 0B9C84 800B9084 3C188013 */ lui $t8, %hi(D_8012A0DC) # $t8, 0x8013 +/* 0B9C88 800B9088 8F18A0DC */ lw $t8, %lo(D_8012A0DC)($t8) +/* 0B9C8C 800B908C 00000000 */ nop +/* 0B9C90 800B9090 02F8082A */ slt $at, $s7, $t8 +/* 0B9C94 800B9094 10200050 */ beqz $at, .L800B91D8 +/* 0B9C98 800B9098 00000000 */ nop +/* 0B9C9C 800B909C 8FCF0000 */ lw $t7, ($fp) +/* 0B9CA0 800B90A0 8FB3004C */ lw $s3, 0x4c($sp) +/* 0B9CA4 800B90A4 02EF0019 */ multu $s7, $t7 +/* 0B9CA8 800B90A8 0000A825 */ move $s5, $zero +/* 0B9CAC 800B90AC 0000C812 */ mflo $t9 +/* 0B9CB0 800B90B0 03335021 */ addu $t2, $t9, $s3 +/* 0B9CB4 800B90B4 18800048 */ blez $a0, .L800B91D8 +/* 0B9CB8 800B90B8 00000000 */ nop +.L800B90BC: +/* 0B9CBC 800B90BC 06600040 */ bltz $s3, .L800B91C0 +/* 0B9CC0 800B90C0 00000000 */ nop +/* 0B9CC4 800B90C4 8FD80000 */ lw $t8, ($fp) +/* 0B9CC8 800B90C8 00177880 */ sll $t7, $s7, 2 +/* 0B9CCC 800B90CC 0278082A */ slt $at, $s3, $t8 +/* 0B9CD0 800B90D0 1020003B */ beqz $at, .L800B91C0 +/* 0B9CD4 800B90D4 3C198013 */ lui $t9, 0x8013 +/* 0B9CD8 800B90D8 032FC821 */ addu $t9, $t9, $t7 +/* 0B9CDC 800B90DC 8F39A0E8 */ lw $t9, -0x5f18($t9) +/* 0B9CE0 800B90E0 240E0001 */ li $t6, 1 +/* 0B9CE4 800B90E4 026EC004 */ sllv $t8, $t6, $s3 +/* 0B9CE8 800B90E8 03387824 */ and $t7, $t9, $t8 +/* 0B9CEC 800B90EC 11E00034 */ beqz $t7, .L800B91C0 +/* 0B9CF0 800B90F0 00000000 */ nop +/* 0B9CF4 800B90F4 02C40019 */ multu $s6, $a0 +/* 0B9CF8 800B90F8 3C0E800E */ lui $t6, %hi(D_800E30E0) # $t6, 0x800e +/* 0B9CFC 800B90FC 8DCE30E0 */ lw $t6, %lo(D_800E30E0)($t6) +/* 0B9D00 800B9100 3C088013 */ lui $t0, %hi(D_8012A0E0) # $t0, 0x8013 +/* 0B9D04 800B9104 00001025 */ move $v0, $zero +/* 0B9D08 800B9108 3C09800E */ lui $t1, %hi(D_800E30D8) # $t1, 0x800e +/* 0B9D0C 800B910C 0000C812 */ mflo $t9 +/* 0B9D10 800B9110 0019C040 */ sll $t8, $t9, 1 +/* 0B9D14 800B9114 0015C840 */ sll $t9, $s5, 1 +/* 0B9D18 800B9118 01D87821 */ addu $t7, $t6, $t8 +/* 0B9D1C 800B911C 01F97021 */ addu $t6, $t7, $t9 +/* 0B9D20 800B9120 3C0F800E */ lui $t7, %hi(D_800E30D4) # $t7, 0x800e +/* 0B9D24 800B9124 8DEF30D4 */ lw $t7, %lo(D_800E30D4)($t7) +/* 0B9D28 800B9128 85D80000 */ lh $t8, ($t6) +/* 0B9D2C 800B912C 000AC880 */ sll $t9, $t2, 2 +/* 0B9D30 800B9130 01F97021 */ addu $t6, $t7, $t9 +/* 0B9D34 800B9134 ADD80000 */ sw $t8, ($t6) +/* 0B9D38 800B9138 8D08A0E0 */ lw $t0, %lo(D_8012A0E0)($t0) +/* 0B9D3C 800B913C 00000000 */ nop +/* 0B9D40 800B9140 1900001F */ blez $t0, .L800B91C0 +/* 0B9D44 800B9144 00000000 */ nop +/* 0B9D48 800B9148 8D2930D8 */ lw $t1, %lo(D_800E30D8)($t1) +/* 0B9D4C 800B914C 00000000 */ nop +.L800B9150: +/* 0B9D50 800B9150 005F0019 */ multu $v0, $ra +/* 0B9D54 800B9154 00007812 */ mflo $t7 +/* 0B9D58 800B9158 012F3021 */ addu $a2, $t1, $t7 +/* 0B9D5C 800B915C 8CD9000C */ lw $t9, 0xc($a2) +/* 0B9D60 800B9160 00000000 */ nop +/* 0B9D64 800B9164 15590012 */ bne $t2, $t9, .L800B91B0 +/* 0B9D68 800B9168 00000000 */ nop +/* 0B9D6C 800B916C 00F10019 */ multu $a3, $s1 +/* 0B9D70 800B9170 8E590000 */ lw $t9, ($s2) +/* 0B9D74 800B9174 24E70001 */ addiu $a3, $a3, 1 +/* 0B9D78 800B9178 0000C012 */ mflo $t8 +/* 0B9D7C 800B917C 02181821 */ addu $v1, $s0, $t8 +/* 0B9D80 800B9180 A4620000 */ sh $v0, ($v1) +/* 0B9D84 800B9184 00590019 */ multu $v0, $t9 +/* 0B9D88 800B9188 A4600002 */ sh $zero, 2($v1) +/* 0B9D8C 800B918C 84CE0012 */ lh $t6, 0x12($a2) +/* 0B9D90 800B9190 24027FFF */ li $v0, 32767 +/* 0B9D94 800B9194 A46E0004 */ sh $t6, 4($v1) +/* 0B9D98 800B9198 84CF0010 */ lh $t7, 0x10($a2) +/* 0B9D9C 800B919C 00000000 */ nop +/* 0B9DA0 800B91A0 A46F0006 */ sh $t7, 6($v1) +/* 0B9DA4 800B91A4 0000C012 */ mflo $t8 +/* 0B9DA8 800B91A8 AC780008 */ sw $t8, 8($v1) +/* 0B9DAC 800B91AC 00000000 */ nop +.L800B91B0: +/* 0B9DB0 800B91B0 24420001 */ addiu $v0, $v0, 1 +/* 0B9DB4 800B91B4 0048082A */ slt $at, $v0, $t0 +/* 0B9DB8 800B91B8 1420FFE5 */ bnez $at, .L800B9150 +/* 0B9DBC 800B91BC 00000000 */ nop +.L800B91C0: +/* 0B9DC0 800B91C0 8D640024 */ lw $a0, 0x24($t3) +/* 0B9DC4 800B91C4 26B50001 */ addiu $s5, $s5, 1 +/* 0B9DC8 800B91C8 02A4082A */ slt $at, $s5, $a0 +/* 0B9DCC 800B91CC 26730001 */ addiu $s3, $s3, 1 +/* 0B9DD0 800B91D0 1420FFBA */ bnez $at, .L800B90BC +/* 0B9DD4 800B91D4 254A0001 */ addiu $t2, $t2, 1 +.L800B91D8: +/* 0B9DD8 800B91D8 26D60001 */ addiu $s6, $s6, 1 +/* 0B9DDC 800B91DC 02C4082A */ slt $at, $s6, $a0 +/* 0B9DE0 800B91E0 1420FFA7 */ bnez $at, .L800B9080 +/* 0B9DE4 800B91E4 26F70001 */ addiu $s7, $s7, 1 +.L800B91E8: +/* 0B9DE8 800B91E8 8FA4005C */ lw $a0, 0x5c($sp) +.L800B91EC: +/* 0B9DEC 800B91EC 8FA50060 */ lw $a1, 0x60($sp) +/* 0B9DF0 800B91F0 0C02E8A2 */ jal func_800BA288 +/* 0B9DF4 800B91F4 00000000 */ nop +/* 0B9DF8 800B91F8 8FBF003C */ lw $ra, 0x3c($sp) +/* 0B9DFC 800B91FC 8FB00018 */ lw $s0, 0x18($sp) +/* 0B9E00 800B9200 8FB1001C */ lw $s1, 0x1c($sp) +/* 0B9E04 800B9204 8FB20020 */ lw $s2, 0x20($sp) +/* 0B9E08 800B9208 8FB30024 */ lw $s3, 0x24($sp) +/* 0B9E0C 800B920C 8FB40028 */ lw $s4, 0x28($sp) +/* 0B9E10 800B9210 8FB5002C */ lw $s5, 0x2c($sp) +/* 0B9E14 800B9214 8FB60030 */ lw $s6, 0x30($sp) +/* 0B9E18 800B9218 8FB70034 */ lw $s7, 0x34($sp) +/* 0B9E1C 800B921C 8FBE0038 */ lw $fp, 0x38($sp) +/* 0B9E20 800B9220 03E00008 */ jr $ra +/* 0B9E24 800B9224 27BD0050 */ addiu $sp, $sp, 0x50 + diff --git a/asm/non_matchings/unknown_0B8920/func_800B9228.s b/asm/non_matchings/unknown_0B8920/func_800B9228.s new file mode 100644 index 00000000..e99ae33e --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800B9228.s @@ -0,0 +1,56 @@ +glabel func_800B9228 +/* 0B9E28 800B9228 3C058013 */ lui $a1, %hi(D_8012A0E0) # $a1, 0x8013 +/* 0B9E2C 800B922C 8CA5A0E0 */ lw $a1, %lo(D_8012A0E0)($a1) +/* 0B9E30 800B9230 00001025 */ move $v0, $zero +/* 0B9E34 800B9234 18A00013 */ blez $a1, .L800B9284 +/* 0B9E38 800B9238 00001825 */ move $v1, $zero +/* 0B9E3C 800B923C 3C06800E */ lui $a2, %hi(D_800E30D8) # $a2, 0x800e +/* 0B9E40 800B9240 8CC630D8 */ lw $a2, %lo(D_800E30D8)($a2) +/* 0B9E44 800B9244 2407001C */ li $a3, 28 +/* 0B9E48 800B9248 8CCE0000 */ lw $t6, ($a2) +/* 0B9E4C 800B924C 00000000 */ nop +/* 0B9E50 800B9250 108E000C */ beq $a0, $t6, .L800B9284 +/* 0B9E54 800B9254 00000000 */ nop +.L800B9258: +/* 0B9E58 800B9258 24420001 */ addiu $v0, $v0, 1 +/* 0B9E5C 800B925C 0045082A */ slt $at, $v0, $a1 +/* 0B9E60 800B9260 10200008 */ beqz $at, .L800B9284 +/* 0B9E64 800B9264 00000000 */ nop +/* 0B9E68 800B9268 00470019 */ multu $v0, $a3 +/* 0B9E6C 800B926C 00007812 */ mflo $t7 +/* 0B9E70 800B9270 00CFC021 */ addu $t8, $a2, $t7 +/* 0B9E74 800B9274 8F190000 */ lw $t9, ($t8) +/* 0B9E78 800B9278 00000000 */ nop +/* 0B9E7C 800B927C 1499FFF6 */ bne $a0, $t9, .L800B9258 +/* 0B9E80 800B9280 00000000 */ nop +.L800B9284: +/* 0B9E84 800B9284 2407001C */ li $a3, 28 +/* 0B9E88 800B9288 00470019 */ multu $v0, $a3 +/* 0B9E8C 800B928C 3C08800E */ lui $t0, %hi(D_800E30D8) # $t0, 0x800e +/* 0B9E90 800B9290 8D0830D8 */ lw $t0, %lo(D_800E30D8)($t0) +/* 0B9E94 800B9294 3C0D800E */ lui $t5, %hi(D_800E30D4) # $t5, 0x800e +/* 0B9E98 800B9298 8DAD30D4 */ lw $t5, %lo(D_800E30D4)($t5) +/* 0B9E9C 800B929C 3C05800E */ lui $a1, %hi(D_800E30DC) # $a1, 0x800e +/* 0B9EA0 800B92A0 24A530DC */ addiu $a1, %lo(D_800E30DC) # addiu $a1, $a1, 0x30dc +/* 0B9EA4 800B92A4 3C018013 */ lui $at, 0x8013 +/* 0B9EA8 800B92A8 00004812 */ mflo $t1 +/* 0B9EAC 800B92AC 01095021 */ addu $t2, $t0, $t1 +/* 0B9EB0 800B92B0 8D4B000C */ lw $t3, 0xc($t2) +/* 0B9EB4 800B92B4 00000000 */ nop +/* 0B9EB8 800B92B8 000B6080 */ sll $t4, $t3, 2 +/* 0B9EBC 800B92BC 01AC7021 */ addu $t6, $t5, $t4 +/* 0B9EC0 800B92C0 8DCF0000 */ lw $t7, ($t6) +/* 0B9EC4 800B92C4 00000000 */ nop +/* 0B9EC8 800B92C8 11E00008 */ beqz $t7, .L800B92EC +/* 0B9ECC 800B92CC 00000000 */ nop +/* 0B9ED0 800B92D0 8CA40000 */ lw $a0, ($a1) +/* 0B9ED4 800B92D4 24030001 */ li $v1, 1 +/* 0B9ED8 800B92D8 0004C040 */ sll $t8, $a0, 1 +/* 0B9EDC 800B92DC 00380821 */ addu $at, $at, $t8 +/* 0B9EE0 800B92E0 A422A1E8 */ sh $v0, -0x5e18($at) +/* 0B9EE4 800B92E4 24990001 */ addiu $t9, $a0, 1 +/* 0B9EE8 800B92E8 ACB90000 */ sw $t9, ($a1) +.L800B92EC: +/* 0B9EEC 800B92EC 03E00008 */ jr $ra +/* 0B9EF0 800B92F0 00601025 */ move $v0, $v1 + diff --git a/asm/non_matchings/unknown_0B8920/func_800B92F4.s b/asm/non_matchings/unknown_0B8920/func_800B92F4.s new file mode 100644 index 00000000..1574e60f --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800B92F4.s @@ -0,0 +1,322 @@ +glabel func_800B92F4 +/* 0B9EF4 800B92F4 27BDFF50 */ addiu $sp, $sp, -0xb0 +/* 0B9EF8 800B92F8 AFB5003C */ sw $s5, 0x3c($sp) +/* 0B9EFC 800B92FC 3C158013 */ lui $s5, %hi(D_80129FC8) # $s5, 0x8013 +/* 0B9F00 800B9300 26B59FC8 */ addiu $s5, %lo(D_80129FC8) # addiu $s5, $s5, -0x6038 +/* 0B9F04 800B9304 8EA30000 */ lw $v1, ($s5) +/* 0B9F08 800B9308 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0B9F0C 800B930C 24620001 */ addiu $v0, $v1, 1 +/* 0B9F10 800B9310 00420019 */ multu $v0, $v0 +/* 0B9F14 800B9314 44812000 */ mtc1 $at, $f4 +/* 0B9F18 800B9318 3C01437F */ li $at, 0x437F0000 # 255.000000 +/* 0B9F1C 800B931C 000478C0 */ sll $t7, $a0, 3 +/* 0B9F20 800B9320 3C18800E */ lui $t8, %hi(D_800E30D8) # $t8, 0x800e +/* 0B9F24 800B9324 44815000 */ mtc1 $at, $f10 +/* 0B9F28 800B9328 C6A60044 */ lwc1 $f6, 0x44($s5) +/* 0B9F2C 800B932C 8F1830D8 */ lw $t8, %lo(D_800E30D8)($t8) +/* 0B9F30 800B9330 01E47823 */ subu $t7, $t7, $a0 +/* 0B9F34 800B9334 3C0A8013 */ lui $t2, %hi(D_8012A5E8) # $t2, 0x8013 +/* 0B9F38 800B9338 854AA5E8 */ lh $t2, %lo(D_8012A5E8)($t2) +/* 0B9F3C 800B933C 000F7880 */ sll $t7, $t7, 2 +/* 0B9F40 800B9340 46062201 */ sub.s $f8, $f4, $f6 +/* 0B9F44 800B9344 E7B70020 */ swc1 $f23, 0x20($sp) +/* 0B9F48 800B9348 E7B60024 */ swc1 $f22, 0x24($sp) +/* 0B9F4C 800B934C 00004812 */ mflo $t1 +/* 0B9F50 800B9350 2401FFFF */ li $at, -1 +/* 0B9F54 800B9354 01F8C821 */ addu $t9, $t7, $t8 +/* 0B9F58 800B9358 AFBF004C */ sw $ra, 0x4c($sp) +/* 0B9F5C 800B935C AFBE0048 */ sw $fp, 0x48($sp) +/* 0B9F60 800B9360 AFB70044 */ sw $s7, 0x44($sp) +/* 0B9F64 800B9364 AFB60040 */ sw $s6, 0x40($sp) +/* 0B9F68 800B9368 AFB40038 */ sw $s4, 0x38($sp) +/* 0B9F6C 800B936C AFB30034 */ sw $s3, 0x34($sp) +/* 0B9F70 800B9370 AFB20030 */ sw $s2, 0x30($sp) +/* 0B9F74 800B9374 AFB1002C */ sw $s1, 0x2c($sp) +/* 0B9F78 800B9378 AFB00028 */ sw $s0, 0x28($sp) +/* 0B9F7C 800B937C E7B50018 */ swc1 $f21, 0x18($sp) +/* 0B9F80 800B9380 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 0B9F84 800B9384 AFA400B0 */ sw $a0, 0xb0($sp) +/* 0B9F88 800B9388 AFA500B4 */ sw $a1, 0xb4($sp) +/* 0B9F8C 800B938C AFB9006C */ sw $t9, 0x6c($sp) +/* 0B9F90 800B9390 AFA90090 */ sw $t1, 0x90($sp) +/* 0B9F94 800B9394 114100F4 */ beq $t2, $at, .L800B9768 +/* 0B9F98 800B9398 460A4583 */ div.s $f22, $f8, $f10 +/* 0B9F9C 800B939C 3C0B8013 */ lui $t3, %hi(D_8012A5E8) # $t3, 0x8013 +/* 0B9FA0 800B93A0 256BA5E8 */ addiu $t3, %lo(D_8012A5E8) # addiu $t3, $t3, -0x5a18 +/* 0B9FA4 800B93A4 3C168013 */ lui $s6, %hi(D_8012A5E8) # $s6, 0x8013 +/* 0B9FA8 800B93A8 85620000 */ lh $v0, ($t3) +/* 0B9FAC 800B93AC 26D6A5E8 */ addiu $s6, %lo(D_8012A5E8) # addiu $s6, $s6, -0x5a18 +/* 0B9FB0 800B93B0 241E00FF */ li $fp, 255 +.L800B93B4: +/* 0B9FB4 800B93B4 8FAC00B0 */ lw $t4, 0xb0($sp) +/* 0B9FB8 800B93B8 8FAE006C */ lw $t6, 0x6c($sp) +/* 0B9FBC 800B93BC 158200E6 */ bne $t4, $v0, .L800B9758 +/* 0B9FC0 800B93C0 3C0D800E */ lui $t5, %hi(D_800E30D4) # $t5, 0x800e +/* 0B9FC4 800B93C4 3C098013 */ lui $t1, %hi(D_8012A018) # $t1, 0x8013 +/* 0B9FC8 800B93C8 8D29A018 */ lw $t1, %lo(D_8012A018)($t1) +/* 0B9FCC 800B93CC 8FAB00B4 */ lw $t3, 0xb4($sp) +/* 0B9FD0 800B93D0 8DCF000C */ lw $t7, 0xc($t6) +/* 0B9FD4 800B93D4 8DAD30D4 */ lw $t5, %lo(D_800E30D4)($t5) +/* 0B9FD8 800B93D8 00095080 */ sll $t2, $t1, 2 +/* 0B9FDC 800B93DC 000B6080 */ sll $t4, $t3, 2 +/* 0B9FE0 800B93E0 014C7021 */ addu $t6, $t2, $t4 +/* 0B9FE4 800B93E4 3C06800E */ lui $a2, 0x800e +/* 0B9FE8 800B93E8 000FC080 */ sll $t8, $t7, 2 +/* 0B9FEC 800B93EC 8EA50028 */ lw $a1, 0x28($s5) +/* 0B9FF0 800B93F0 00CE3021 */ addu $a2, $a2, $t6 +/* 0B9FF4 800B93F4 3C07800E */ lui $a3, %hi(D_800E30E4) # $a3, 0x800e +/* 0B9FF8 800B93F8 01B8C821 */ addu $t9, $t5, $t8 +/* 0B9FFC 800B93FC 8F240000 */ lw $a0, ($t9) +/* 0BA000 800B9400 8CE730E4 */ lw $a3, %lo(D_800E30E4)($a3) +/* 0BA004 800B9404 8CC63070 */ lw $a2, 0x3070($a2) +/* 0BA008 800B9408 AFA000AC */ sw $zero, 0xac($sp) +/* 0BA00C 800B940C 10A00014 */ beqz $a1, .L800B9460 +/* 0BA010 800B9410 0000B825 */ move $s7, $zero +/* 0BA014 800B9414 86C20002 */ lh $v0, 2($s6) +/* 0BA018 800B9418 00000000 */ nop +/* 0BA01C 800B941C 30490001 */ andi $t1, $v0, 1 +/* 0BA020 800B9420 01230019 */ multu $t1, $v1 +/* 0BA024 800B9424 304A0002 */ andi $t2, $v0, 2 +/* 0BA028 800B9428 000A6043 */ sra $t4, $t2, 1 +/* 0BA02C 800B942C 000278C0 */ sll $t7, $v0, 3 +/* 0BA030 800B9430 01E46806 */ srlv $t5, $a0, $t7 +/* 0BA034 800B9434 31B800FF */ andi $t8, $t5, 0xff +/* 0BA038 800B9438 2719FFFF */ addiu $t9, $t8, -1 +/* 0BA03C 800B943C AFB90098 */ sw $t9, 0x98($sp) +/* 0BA040 800B9440 00005812 */ mflo $t3 +/* 0BA044 800B9444 AFAB008C */ sw $t3, 0x8c($sp) +/* 0BA048 800B9448 00000000 */ nop +/* 0BA04C 800B944C 01830019 */ multu $t4, $v1 +/* 0BA050 800B9450 00007012 */ mflo $t6 +/* 0BA054 800B9454 AFAE0088 */ sw $t6, 0x88($sp) +/* 0BA058 800B9458 10000007 */ b .L800B9478 +/* 0BA05C 800B945C 8FB80090 */ lw $t8, 0x90($sp) +.L800B9460: +/* 0BA060 800B9460 308F00FF */ andi $t7, $a0, 0xff +/* 0BA064 800B9464 25EDFFFF */ addiu $t5, $t7, -1 +/* 0BA068 800B9468 AFAD0098 */ sw $t5, 0x98($sp) +/* 0BA06C 800B946C AFA0008C */ sw $zero, 0x8c($sp) +/* 0BA070 800B9470 AFA00088 */ sw $zero, 0x88($sp) +/* 0BA074 800B9474 8FB80090 */ lw $t8, 0x90($sp) +.L800B9478: +/* 0BA078 800B9478 8FB90098 */ lw $t9, 0x98($sp) +/* 0BA07C 800B947C 86C40006 */ lh $a0, 6($s6) +/* 0BA080 800B9480 03190019 */ multu $t8, $t9 +/* 0BA084 800B9484 00196040 */ sll $t4, $t9, 1 +/* 0BA088 800B9488 00EC7021 */ addu $t6, $a3, $t4 +/* 0BA08C 800B948C 00004812 */ mflo $t1 +/* 0BA090 800B9490 00095880 */ sll $t3, $t1, 2 +/* 0BA094 800B9494 01695821 */ addu $t3, $t3, $t1 +/* 0BA098 800B9498 000B5840 */ sll $t3, $t3, 1 +/* 0BA09C 800B949C 00CB5021 */ addu $t2, $a2, $t3 +/* 0BA0A0 800B94A0 AFAA0070 */ sw $t2, 0x70($sp) +/* 0BA0A4 800B94A4 85CF0000 */ lh $t7, ($t6) +/* 0BA0A8 800B94A8 046000AB */ bltz $v1, .L800B9758 +/* 0BA0AC 800B94AC AFAF0098 */ sw $t7, 0x98($sp) +/* 0BA0B0 800B94B0 8EA20004 */ lw $v0, 4($s5) +/* 0BA0B4 800B94B4 00000000 */ nop +.L800B94B8: +/* 0BA0B8 800B94B8 00820019 */ multu $a0, $v0 +/* 0BA0BC 800B94BC 86D10004 */ lh $s1, 4($s6) +/* 0BA0C0 800B94C0 3C0B800E */ lui $t3, %hi(D_800E304C) # $t3, 0x800e +/* 0BA0C4 800B94C4 256B304C */ addiu $t3, %lo(D_800E304C) # addiu $t3, $t3, 0x304c +/* 0BA0C8 800B94C8 00009825 */ move $s3, $zero +/* 0BA0CC 800B94CC 0017A080 */ sll $s4, $s7, 2 +/* 0BA0D0 800B94D0 00006812 */ mflo $t5 +/* 0BA0D4 800B94D4 01B19021 */ addu $s2, $t5, $s1 +/* 0BA0D8 800B94D8 0460008E */ bltz $v1, .L800B9714 +/* 0BA0DC 800B94DC 00176880 */ sll $t5, $s7, 2 +/* 0BA0E0 800B94E0 8FB900B4 */ lw $t9, 0xb4($sp) +/* 0BA0E4 800B94E4 8FB80098 */ lw $t8, 0x98($sp) +/* 0BA0E8 800B94E8 8FAA006C */ lw $t2, 0x6c($sp) +/* 0BA0EC 800B94EC 8FAF0070 */ lw $t7, 0x70($sp) +/* 0BA0F0 800B94F0 01B76821 */ addu $t5, $t5, $s7 +/* 0BA0F4 800B94F4 00196043 */ sra $t4, $t9, 1 +/* 0BA0F8 800B94F8 000C7080 */ sll $t6, $t4, 2 +/* 0BA0FC 800B94FC 000D6840 */ sll $t5, $t5, 1 +/* 0BA100 800B9500 00184880 */ sll $t1, $t8, 2 +/* 0BA104 800B9504 012B3821 */ addu $a3, $t1, $t3 +/* 0BA108 800B9508 AFA40084 */ sw $a0, 0x84($sp) +/* 0BA10C 800B950C 014E4021 */ addu $t0, $t2, $t6 +/* 0BA110 800B9510 01ED8021 */ addu $s0, $t7, $t5 +.L800B9514: +/* 0BA114 800B9514 3C18800E */ lui $t8, %hi(D_800E3044) # $t8, 0x800e +/* 0BA118 800B9518 8F183044 */ lw $t8, %lo(D_800E3044)($t8) +/* 0BA11C 800B951C 00124880 */ sll $t1, $s2, 2 +/* 0BA120 800B9520 03091821 */ addu $v1, $t8, $t1 +/* 0BA124 800B9524 3C02800E */ lui $v0, %hi(D_800E3040) # $v0, 0x800e +/* 0BA128 800B9528 8C423040 */ lw $v0, %lo(D_800E3040)($v0) +/* 0BA12C 800B952C 846B0002 */ lh $t3, 2($v1) +/* 0BA130 800B9530 846A0000 */ lh $t2, ($v1) +/* 0BA134 800B9534 000BC880 */ sll $t9, $t3, 2 +/* 0BA138 800B9538 000A7080 */ sll $t6, $t2, 2 +/* 0BA13C 800B953C 004E7821 */ addu $t7, $v0, $t6 +/* 0BA140 800B9540 00596021 */ addu $t4, $v0, $t9 +/* 0BA144 800B9544 C5900000 */ lwc1 $f16, ($t4) +/* 0BA148 800B9548 C5F20000 */ lwc1 $f18, ($t7) +/* 0BA14C 800B954C C6A60040 */ lwc1 $f6, 0x40($s5) +/* 0BA150 800B9550 46128100 */ add.s $f4, $f16, $f18 +/* 0BA154 800B9554 3C0D800E */ lui $t5, %hi(D_800E3188) # $t5, 0x800e +/* 0BA158 800B9558 8DAD3188 */ lw $t5, %lo(D_800E3188)($t5) +/* 0BA15C 800B955C 46062502 */ mul.s $f20, $f4, $f6 +/* 0BA160 800B9560 19A0000D */ blez $t5, .L800B9598 +/* 0BA164 800B9564 00000000 */ nop +/* 0BA168 800B9568 8FB8008C */ lw $t8, 0x8c($sp) +/* 0BA16C 800B956C 8FA900AC */ lw $t1, 0xac($sp) +/* 0BA170 800B9570 8FAB0088 */ lw $t3, 0x88($sp) +/* 0BA174 800B9574 8FA400B0 */ lw $a0, 0xb0($sp) +/* 0BA178 800B9578 AFA7005C */ sw $a3, 0x5c($sp) +/* 0BA17C 800B957C AFA80050 */ sw $t0, 0x50($sp) +/* 0BA180 800B9580 02782821 */ addu $a1, $s3, $t8 +/* 0BA184 800B9584 0C02FBF1 */ jal func_800BEFC4 +/* 0BA188 800B9588 012B3021 */ addu $a2, $t1, $t3 +/* 0BA18C 800B958C 8FA7005C */ lw $a3, 0x5c($sp) +/* 0BA190 800B9590 8FA80050 */ lw $t0, 0x50($sp) +/* 0BA194 800B9594 4600A500 */ add.s $f20, $f20, $f0 +.L800B9598: +/* 0BA198 800B9598 3C0A800E */ lui $t2, %hi(D_800E3178) # $t2, 0x800e +/* 0BA19C 800B959C 8D4A3178 */ lw $t2, %lo(D_800E3178)($t2) +/* 0BA1A0 800B95A0 8EC30008 */ lw $v1, 8($s6) +/* 0BA1A4 800B95A4 8CF90000 */ lw $t9, ($a3) +/* 0BA1A8 800B95A8 006A7021 */ addu $t6, $v1, $t2 +/* 0BA1AC 800B95AC 91C20000 */ lbu $v0, ($t6) +/* 0BA1B0 800B95B0 03346021 */ addu $t4, $t9, $s4 +/* 0BA1B4 800B95B4 C5880000 */ lwc1 $f8, ($t4) +/* 0BA1B8 800B95B8 00027840 */ sll $t7, $v0, 1 +/* 0BA1BC 800B95BC 29E100FF */ slti $at, $t7, 0xff +/* 0BA1C0 800B95C0 246D0001 */ addiu $t5, $v1, 1 +/* 0BA1C4 800B95C4 4608A502 */ mul.s $f20, $f20, $f8 +/* 0BA1C8 800B95C8 AECD0008 */ sw $t5, 8($s6) +/* 0BA1CC 800B95CC 10200008 */ beqz $at, .L800B95F0 +/* 0BA1D0 800B95D0 01E01025 */ move $v0, $t7 +/* 0BA1D4 800B95D4 44828000 */ mtc1 $v0, $f16 +/* 0BA1D8 800B95D8 C6AA0044 */ lwc1 $f10, 0x44($s5) +/* 0BA1DC 800B95DC 468084A0 */ cvt.s.w $f18, $f16 +/* 0BA1E0 800B95E0 46169102 */ mul.s $f4, $f18, $f22 +/* 0BA1E4 800B95E4 46045180 */ add.s $f6, $f10, $f4 +/* 0BA1E8 800B95E8 4606A502 */ mul.s $f20, $f20, $f6 +/* 0BA1EC 800B95EC 00000000 */ nop +.L800B95F0: +/* 0BA1F0 800B95F0 C6A80048 */ lwc1 $f8, 0x48($s5) +/* 0BA1F4 800B95F4 26F70001 */ addiu $s7, $s7, 1 +/* 0BA1F8 800B95F8 4608A402 */ mul.s $f16, $f20, $f8 +/* 0BA1FC 800B95FC 26940004 */ addiu $s4, $s4, 4 +/* 0BA200 800B9600 26310001 */ addiu $s1, $s1, 1 +/* 0BA204 800B9604 4458F800 */ cfc1 $t8, $31 +/* 0BA208 800B9608 00000000 */ nop +/* 0BA20C 800B960C 37010003 */ ori $at, $t8, 3 +/* 0BA210 800B9610 38210002 */ xori $at, $at, 2 +/* 0BA214 800B9614 44C1F800 */ ctc1 $at, $31 +/* 0BA218 800B9618 00000000 */ nop +/* 0BA21C 800B961C 460084A4 */ cvt.w.s $f18, $f16 +/* 0BA220 800B9620 44099000 */ mfc1 $t1, $f18 +/* 0BA224 800B9624 44D8F800 */ ctc1 $t8, $31 +/* 0BA228 800B9628 00491021 */ addu $v0, $v0, $t1 +/* 0BA22C 800B962C 28410100 */ slti $at, $v0, 0x100 +/* 0BA230 800B9630 14200003 */ bnez $at, .L800B9640 +/* 0BA234 800B9634 00000000 */ nop +/* 0BA238 800B9638 10000004 */ b .L800B964C +/* 0BA23C 800B963C 03C01025 */ move $v0, $fp +.L800B9640: +/* 0BA240 800B9640 04410002 */ bgez $v0, .L800B964C +/* 0BA244 800B9644 00000000 */ nop +/* 0BA248 800B9648 00001025 */ move $v0, $zero +.L800B964C: +/* 0BA24C 800B964C 86D90002 */ lh $t9, 2($s6) +/* 0BA250 800B9650 03C25823 */ subu $t3, $fp, $v0 +/* 0BA254 800B9654 01196021 */ addu $t4, $t0, $t9 +/* 0BA258 800B9658 918A0014 */ lbu $t2, 0x14($t4) +/* 0BA25C 800B965C 444DF800 */ cfc1 $t5, $31 +/* 0BA260 800B9660 016A0019 */ multu $t3, $t2 +/* 0BA264 800B9664 35A10003 */ ori $at, $t5, 3 +/* 0BA268 800B9668 38210002 */ xori $at, $at, 2 +/* 0BA26C 800B966C 44C1F800 */ ctc1 $at, $31 +/* 0BA270 800B9670 00000000 */ nop +/* 0BA274 800B9674 4600A2A4 */ cvt.w.s $f10, $f20 +/* 0BA278 800B9678 44185000 */ mfc1 $t8, $f10 +/* 0BA27C 800B967C 44CDF800 */ ctc1 $t5, $31 +/* 0BA280 800B9680 A6180002 */ sh $t8, 2($s0) +/* 0BA284 800B9684 00007012 */ mflo $t6 +/* 0BA288 800B9688 000E79C3 */ sra $t7, $t6, 7 +/* 0BA28C 800B968C 004F1021 */ addu $v0, $v0, $t7 +/* 0BA290 800B9690 284100C0 */ slti $at, $v0, 0xc0 +/* 0BA294 800B9694 10200003 */ beqz $at, .L800B96A4 +/* 0BA298 800B9698 03C21823 */ subu $v1, $fp, $v0 +/* 0BA29C 800B969C 10000003 */ b .L800B96AC +/* 0BA2A0 800B96A0 03C01825 */ move $v1, $fp +.L800B96A4: +/* 0BA2A4 800B96A4 00034880 */ sll $t1, $v1, 2 +/* 0BA2A8 800B96A8 312300FF */ andi $v1, $t1, 0xff +.L800B96AC: +/* 0BA2AC 800B96AC 28410040 */ slti $at, $v0, 0x40 +/* 0BA2B0 800B96B0 A2030006 */ sb $v1, 6($s0) +/* 0BA2B4 800B96B4 A2030007 */ sb $v1, 7($s0) +/* 0BA2B8 800B96B8 10200005 */ beqz $at, .L800B96D0 +/* 0BA2BC 800B96BC A2030008 */ sb $v1, 8($s0) +/* 0BA2C0 800B96C0 00021880 */ sll $v1, $v0, 2 +/* 0BA2C4 800B96C4 306C00FF */ andi $t4, $v1, 0xff +/* 0BA2C8 800B96C8 10000002 */ b .L800B96D4 +/* 0BA2CC 800B96CC 01801825 */ move $v1, $t4 +.L800B96D0: +/* 0BA2D0 800B96D0 03C01825 */ move $v1, $fp +.L800B96D4: +/* 0BA2D4 800B96D4 A2030009 */ sb $v1, 9($s0) +/* 0BA2D8 800B96D8 8EA20004 */ lw $v0, 4($s5) +/* 0BA2DC 800B96DC 2610000A */ addiu $s0, $s0, 0xa +/* 0BA2E0 800B96E0 0222082A */ slt $at, $s1, $v0 +/* 0BA2E4 800B96E4 14200003 */ bnez $at, .L800B96F4 +/* 0BA2E8 800B96E8 26520001 */ addiu $s2, $s2, 1 +/* 0BA2EC 800B96EC 02228823 */ subu $s1, $s1, $v0 +/* 0BA2F0 800B96F0 02429023 */ subu $s2, $s2, $v0 +.L800B96F4: +/* 0BA2F4 800B96F4 8EA30000 */ lw $v1, ($s5) +/* 0BA2F8 800B96F8 26730001 */ addiu $s3, $s3, 1 +/* 0BA2FC 800B96FC 0073082A */ slt $at, $v1, $s3 +/* 0BA300 800B9700 1020FF84 */ beqz $at, .L800B9514 +/* 0BA304 800B9704 00000000 */ nop +/* 0BA308 800B9708 8EA50028 */ lw $a1, 0x28($s5) +/* 0BA30C 800B970C 8FA40084 */ lw $a0, 0x84($sp) +/* 0BA310 800B9710 00000000 */ nop +.L800B9714: +/* 0BA314 800B9714 24840001 */ addiu $a0, $a0, 1 +/* 0BA318 800B9718 0082082A */ slt $at, $a0, $v0 +/* 0BA31C 800B971C 14200002 */ bnez $at, .L800B9728 +/* 0BA320 800B9720 00000000 */ nop +/* 0BA324 800B9724 00822023 */ subu $a0, $a0, $v0 +.L800B9728: +/* 0BA328 800B9728 10A00006 */ beqz $a1, .L800B9744 +/* 0BA32C 800B972C 8FAE00AC */ lw $t6, 0xac($sp) +/* 0BA330 800B9730 8ECB0008 */ lw $t3, 8($s6) +/* 0BA334 800B9734 00000000 */ nop +/* 0BA338 800B9738 01635021 */ addu $t2, $t3, $v1 +/* 0BA33C 800B973C AECA0008 */ sw $t2, 8($s6) +/* 0BA340 800B9740 8FAE00AC */ lw $t6, 0xac($sp) +.L800B9744: +/* 0BA344 800B9744 00000000 */ nop +/* 0BA348 800B9748 25CF0001 */ addiu $t7, $t6, 1 +/* 0BA34C 800B974C 006F082A */ slt $at, $v1, $t7 +/* 0BA350 800B9750 1020FF59 */ beqz $at, .L800B94B8 +/* 0BA354 800B9754 AFAF00AC */ sw $t7, 0xac($sp) +.L800B9758: +/* 0BA358 800B9758 86C2000C */ lh $v0, 0xc($s6) +/* 0BA35C 800B975C 2401FFFF */ li $at, -1 +/* 0BA360 800B9760 1441FF14 */ bne $v0, $at, .L800B93B4 +/* 0BA364 800B9764 26D6000C */ addiu $s6, $s6, 0xc +.L800B9768: +/* 0BA368 800B9768 8FBF004C */ lw $ra, 0x4c($sp) +/* 0BA36C 800B976C C7B50018 */ lwc1 $f21, 0x18($sp) +/* 0BA370 800B9770 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 0BA374 800B9774 C7B70020 */ lwc1 $f23, 0x20($sp) +/* 0BA378 800B9778 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 0BA37C 800B977C 8FB00028 */ lw $s0, 0x28($sp) +/* 0BA380 800B9780 8FB1002C */ lw $s1, 0x2c($sp) +/* 0BA384 800B9784 8FB20030 */ lw $s2, 0x30($sp) +/* 0BA388 800B9788 8FB30034 */ lw $s3, 0x34($sp) +/* 0BA38C 800B978C 8FB40038 */ lw $s4, 0x38($sp) +/* 0BA390 800B9790 8FB5003C */ lw $s5, 0x3c($sp) +/* 0BA394 800B9794 8FB60040 */ lw $s6, 0x40($sp) +/* 0BA398 800B9798 8FB70044 */ lw $s7, 0x44($sp) +/* 0BA39C 800B979C 8FBE0048 */ lw $fp, 0x48($sp) +/* 0BA3A0 800B97A0 03E00008 */ jr $ra +/* 0BA3A4 800B97A4 27BD00B0 */ addiu $sp, $sp, 0xb0 + diff --git a/asm/non_matchings/unknown_0B8920/func_800B97A8.s b/asm/non_matchings/unknown_0B8920/func_800B97A8.s new file mode 100644 index 00000000..fcd76108 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800B97A8.s @@ -0,0 +1,302 @@ +glabel func_800B97A8 +/* 0BA3A8 800B97A8 27BDFF48 */ addiu $sp, $sp, -0xb8 +/* 0BA3AC 800B97AC AFB50054 */ sw $s5, 0x54($sp) +/* 0BA3B0 800B97B0 3C158013 */ lui $s5, %hi(D_80129FC8) # $s5, 0x8013 +/* 0BA3B4 800B97B4 26B59FC8 */ addiu $s5, %lo(D_80129FC8) # addiu $s5, $s5, -0x6038 +/* 0BA3B8 800B97B8 8EA20000 */ lw $v0, ($s5) +/* 0BA3BC 800B97BC 3C018013 */ lui $at, %hi(D_8012A020) # $at, 0x8013 +/* 0BA3C0 800B97C0 24430001 */ addiu $v1, $v0, 1 +/* 0BA3C4 800B97C4 00630019 */ multu $v1, $v1 +/* 0BA3C8 800B97C8 C420A020 */ lwc1 $f0, %lo(D_8012A020)($at) +/* 0BA3CC 800B97CC 3C018013 */ lui $at, %hi(D_8012A01C) # $at, 0x8013 +/* 0BA3D0 800B97D0 C422A01C */ lwc1 $f2, %lo(D_8012A01C)($at) +/* 0BA3D4 800B97D4 46000100 */ add.s $f4, $f0, $f0 +/* 0BA3D8 800B97D8 E7BB0030 */ swc1 $f27, 0x30($sp) +/* 0BA3DC 800B97DC 46021300 */ add.s $f12, $f2, $f2 +/* 0BA3E0 800B97E0 E7BA0034 */ swc1 $f26, 0x34($sp) +/* 0BA3E4 800B97E4 E7B60024 */ swc1 $f22, 0x24($sp) +/* 0BA3E8 800B97E8 4480B000 */ mtc1 $zero, $f22 +/* 0BA3EC 800B97EC 460C2681 */ sub.s $f26, $f4, $f12 +/* 0BA3F0 800B97F0 0004C0C0 */ sll $t8, $a0, 3 +/* 0BA3F4 800B97F4 3C19800E */ lui $t9, %hi(D_800E30D8) # $t9, 0x800e +/* 0BA3F8 800B97F8 8F3930D8 */ lw $t9, %lo(D_800E30D8)($t9) +/* 0BA3FC 800B97FC 0304C023 */ subu $t8, $t8, $a0 +/* 0BA400 800B9800 4616D03E */ c.le.s $f26, $f22 +/* 0BA404 800B9804 0018C080 */ sll $t8, $t8, 2 +/* 0BA408 800B9808 00007012 */ mflo $t6 +/* 0BA40C 800B980C 03194821 */ addu $t1, $t8, $t9 +/* 0BA410 800B9810 AFBF0064 */ sw $ra, 0x64($sp) +/* 0BA414 800B9814 AFBE0060 */ sw $fp, 0x60($sp) +/* 0BA418 800B9818 AFB7005C */ sw $s7, 0x5c($sp) +/* 0BA41C 800B981C AFB60058 */ sw $s6, 0x58($sp) +/* 0BA420 800B9820 AFB40050 */ sw $s4, 0x50($sp) +/* 0BA424 800B9824 AFB3004C */ sw $s3, 0x4c($sp) +/* 0BA428 800B9828 AFB20048 */ sw $s2, 0x48($sp) +/* 0BA42C 800B982C AFB10044 */ sw $s1, 0x44($sp) +/* 0BA430 800B9830 AFB00040 */ sw $s0, 0x40($sp) +/* 0BA434 800B9834 E7BD0038 */ swc1 $f29, 0x38($sp) +/* 0BA438 800B9838 E7BC003C */ swc1 $f28, 0x3c($sp) +/* 0BA43C 800B983C E7B90028 */ swc1 $f25, 0x28($sp) +/* 0BA440 800B9840 E7B8002C */ swc1 $f24, 0x2c($sp) +/* 0BA444 800B9844 E7B70020 */ swc1 $f23, 0x20($sp) +/* 0BA448 800B9848 E7B50018 */ swc1 $f21, 0x18($sp) +/* 0BA44C 800B984C E7B4001C */ swc1 $f20, 0x1c($sp) +/* 0BA450 800B9850 AFA400B8 */ sw $a0, 0xb8($sp) +/* 0BA454 800B9854 AFA500BC */ sw $a1, 0xbc($sp) +/* 0BA458 800B9858 00003825 */ move $a3, $zero +/* 0BA45C 800B985C AFAE00A0 */ sw $t6, 0xa0($sp) +/* 0BA460 800B9860 45000005 */ bc1f .L800B9878 +/* 0BA464 800B9864 AFA90078 */ sw $t1, 0x78($sp) +/* 0BA468 800B9868 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0BA46C 800B986C 4481C000 */ mtc1 $at, $f24 +/* 0BA470 800B9870 10000005 */ b .L800B9888 +/* 0BA474 800B9874 4600B706 */ mov.s $f28, $f22 +.L800B9878: +/* 0BA478 800B9878 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0BA47C 800B987C 4481C000 */ mtc1 $at, $f24 +/* 0BA480 800B9880 00000000 */ nop +/* 0BA484 800B9884 461AC703 */ div.s $f28, $f24, $f26 +.L800B9888: +/* 0BA488 800B9888 3C0A8013 */ lui $t2, %hi(D_8012A5E8) # $t2, 0x8013 +/* 0BA48C 800B988C 854AA5E8 */ lh $t2, %lo(D_8012A5E8)($t2) +/* 0BA490 800B9890 2401FFFF */ li $at, -1 +/* 0BA494 800B9894 114100CA */ beq $t2, $at, .L800B9BC0 +/* 0BA498 800B9898 46006686 */ mov.s $f26, $f12 +/* 0BA49C 800B989C 00075880 */ sll $t3, $a3, 2 +/* 0BA4A0 800B98A0 01675823 */ subu $t3, $t3, $a3 +/* 0BA4A4 800B98A4 3C0C8013 */ lui $t4, %hi(D_8012A5E8) # $t4, 0x8013 +/* 0BA4A8 800B98A8 258CA5E8 */ addiu $t4, %lo(D_8012A5E8) # addiu $t4, $t4, -0x5a18 +/* 0BA4AC 800B98AC 000B5880 */ sll $t3, $t3, 2 +/* 0BA4B0 800B98B0 016C3021 */ addu $a2, $t3, $t4 +/* 0BA4B4 800B98B4 84C30000 */ lh $v1, ($a2) +/* 0BA4B8 800B98B8 00000000 */ nop +.L800B98BC: +/* 0BA4BC 800B98BC 8FAD00B8 */ lw $t5, 0xb8($sp) +/* 0BA4C0 800B98C0 8FAF0078 */ lw $t7, 0x78($sp) +/* 0BA4C4 800B98C4 15A300BA */ bne $t5, $v1, .L800B9BB0 +/* 0BA4C8 800B98C8 3C0E800E */ lui $t6, %hi(D_800E30D4) # $t6, 0x800e +/* 0BA4CC 800B98CC 3C0A8013 */ lui $t2, %hi(D_8012A018) # $t2, 0x8013 +/* 0BA4D0 800B98D0 8D4AA018 */ lw $t2, %lo(D_8012A018)($t2) +/* 0BA4D4 800B98D4 8FAC00BC */ lw $t4, 0xbc($sp) +/* 0BA4D8 800B98D8 8DF8000C */ lw $t8, 0xc($t7) +/* 0BA4DC 800B98DC 8DCE30D4 */ lw $t6, %lo(D_800E30D4)($t6) +/* 0BA4E0 800B98E0 000A5880 */ sll $t3, $t2, 2 +/* 0BA4E4 800B98E4 000C6880 */ sll $t5, $t4, 2 +/* 0BA4E8 800B98E8 016D7821 */ addu $t7, $t3, $t5 +/* 0BA4EC 800B98EC 3C07800E */ lui $a3, 0x800e +/* 0BA4F0 800B98F0 0018C880 */ sll $t9, $t8, 2 +/* 0BA4F4 800B98F4 8EA50028 */ lw $a1, 0x28($s5) +/* 0BA4F8 800B98F8 00EF3821 */ addu $a3, $a3, $t7 +/* 0BA4FC 800B98FC 3C08800E */ lui $t0, %hi(D_800E30E4) # $t0, 0x800e +/* 0BA500 800B9900 01D94821 */ addu $t1, $t6, $t9 +/* 0BA504 800B9904 8D240000 */ lw $a0, ($t1) +/* 0BA508 800B9908 8D0830E4 */ lw $t0, %lo(D_800E30E4)($t0) +/* 0BA50C 800B990C 8CE73070 */ lw $a3, 0x3070($a3) +/* 0BA510 800B9910 0000F025 */ move $fp, $zero +/* 0BA514 800B9914 10A00014 */ beqz $a1, .L800B9968 +/* 0BA518 800B9918 0000B025 */ move $s6, $zero +/* 0BA51C 800B991C 84C30002 */ lh $v1, 2($a2) +/* 0BA520 800B9920 00000000 */ nop +/* 0BA524 800B9924 306A0001 */ andi $t2, $v1, 1 +/* 0BA528 800B9928 01420019 */ multu $t2, $v0 +/* 0BA52C 800B992C 306B0002 */ andi $t3, $v1, 2 +/* 0BA530 800B9930 000B6843 */ sra $t5, $t3, 1 +/* 0BA534 800B9934 0003C0C0 */ sll $t8, $v1, 3 +/* 0BA538 800B9938 03047006 */ srlv $t6, $a0, $t8 +/* 0BA53C 800B993C 31D900FF */ andi $t9, $t6, 0xff +/* 0BA540 800B9940 2729FFFF */ addiu $t1, $t9, -1 +/* 0BA544 800B9944 AFA900A8 */ sw $t1, 0xa8($sp) +/* 0BA548 800B9948 00006012 */ mflo $t4 +/* 0BA54C 800B994C AFAC009C */ sw $t4, 0x9c($sp) +/* 0BA550 800B9950 00000000 */ nop +/* 0BA554 800B9954 01A20019 */ multu $t5, $v0 +/* 0BA558 800B9958 00007812 */ mflo $t7 +/* 0BA55C 800B995C AFAF0098 */ sw $t7, 0x98($sp) +/* 0BA560 800B9960 10000007 */ b .L800B9980 +/* 0BA564 800B9964 8FB900A0 */ lw $t9, 0xa0($sp) +.L800B9968: +/* 0BA568 800B9968 309800FF */ andi $t8, $a0, 0xff +/* 0BA56C 800B996C 270EFFFF */ addiu $t6, $t8, -1 +/* 0BA570 800B9970 AFAE00A8 */ sw $t6, 0xa8($sp) +/* 0BA574 800B9974 AFA0009C */ sw $zero, 0x9c($sp) +/* 0BA578 800B9978 AFA00098 */ sw $zero, 0x98($sp) +/* 0BA57C 800B997C 8FB900A0 */ lw $t9, 0xa0($sp) +.L800B9980: +/* 0BA580 800B9980 8FA900A8 */ lw $t1, 0xa8($sp) +/* 0BA584 800B9984 84C40006 */ lh $a0, 6($a2) +/* 0BA588 800B9988 03290019 */ multu $t9, $t1 +/* 0BA58C 800B998C 00096840 */ sll $t5, $t1, 1 +/* 0BA590 800B9990 010D7821 */ addu $t7, $t0, $t5 +/* 0BA594 800B9994 00005012 */ mflo $t2 +/* 0BA598 800B9998 000A6080 */ sll $t4, $t2, 2 +/* 0BA59C 800B999C 018A6021 */ addu $t4, $t4, $t2 +/* 0BA5A0 800B99A0 000C6040 */ sll $t4, $t4, 1 +/* 0BA5A4 800B99A4 00EC5821 */ addu $t3, $a3, $t4 +/* 0BA5A8 800B99A8 AFAB007C */ sw $t3, 0x7c($sp) +/* 0BA5AC 800B99AC 85F80000 */ lh $t8, ($t7) +/* 0BA5B0 800B99B0 0440007F */ bltz $v0, .L800B9BB0 +/* 0BA5B4 800B99B4 AFB800A8 */ sw $t8, 0xa8($sp) +/* 0BA5B8 800B99B8 8EA30004 */ lw $v1, 4($s5) +/* 0BA5BC 800B99BC 00000000 */ nop +.L800B99C0: +/* 0BA5C0 800B99C0 00830019 */ multu $a0, $v1 +/* 0BA5C4 800B99C4 84D10004 */ lh $s1, 4($a2) +/* 0BA5C8 800B99C8 00164880 */ sll $t1, $s6, 2 +/* 0BA5CC 800B99CC 01364821 */ addu $t1, $t1, $s6 +/* 0BA5D0 800B99D0 3C0C800E */ lui $t4, %hi(D_800E304C) # $t4, 0x800e +/* 0BA5D4 800B99D4 258C304C */ addiu $t4, %lo(D_800E304C) # addiu $t4, $t4, 0x304c +/* 0BA5D8 800B99D8 00094840 */ sll $t1, $t1, 1 +/* 0BA5DC 800B99DC 00009825 */ move $s3, $zero +/* 0BA5E0 800B99E0 0016A080 */ sll $s4, $s6, 2 +/* 0BA5E4 800B99E4 00007012 */ mflo $t6 +/* 0BA5E8 800B99E8 01D19021 */ addu $s2, $t6, $s1 +/* 0BA5EC 800B99EC 04400063 */ bltz $v0, .L800B9B7C +/* 0BA5F0 800B99F0 00000000 */ nop +/* 0BA5F4 800B99F4 8FB900A8 */ lw $t9, 0xa8($sp) +/* 0BA5F8 800B99F8 8FAB007C */ lw $t3, 0x7c($sp) +/* 0BA5FC 800B99FC 00195080 */ sll $t2, $t9, 2 +/* 0BA600 800B9A00 014CB821 */ addu $s7, $t2, $t4 +/* 0BA604 800B9A04 AFA6006C */ sw $a2, 0x6c($sp) +/* 0BA608 800B9A08 AFA40094 */ sw $a0, 0x94($sp) +/* 0BA60C 800B9A0C 01698021 */ addu $s0, $t3, $t1 +.L800B9A10: +/* 0BA610 800B9A10 3C0D800E */ lui $t5, %hi(D_800E3044) # $t5, 0x800e +/* 0BA614 800B9A14 8DAD3044 */ lw $t5, %lo(D_800E3044)($t5) +/* 0BA618 800B9A18 00127880 */ sll $t7, $s2, 2 +/* 0BA61C 800B9A1C 01AF1821 */ addu $v1, $t5, $t7 +/* 0BA620 800B9A20 3C02800E */ lui $v0, %hi(D_800E3040) # $v0, 0x800e +/* 0BA624 800B9A24 8C423040 */ lw $v0, %lo(D_800E3040)($v0) +/* 0BA628 800B9A28 84780002 */ lh $t8, 2($v1) +/* 0BA62C 800B9A2C 846A0000 */ lh $t2, ($v1) +/* 0BA630 800B9A30 00187080 */ sll $t6, $t8, 2 +/* 0BA634 800B9A34 000A6080 */ sll $t4, $t2, 2 +/* 0BA638 800B9A38 004C5821 */ addu $t3, $v0, $t4 +/* 0BA63C 800B9A3C 004EC821 */ addu $t9, $v0, $t6 +/* 0BA640 800B9A40 C7260000 */ lwc1 $f6, ($t9) +/* 0BA644 800B9A44 C5680000 */ lwc1 $f8, ($t3) +/* 0BA648 800B9A48 C6B00040 */ lwc1 $f16, 0x40($s5) +/* 0BA64C 800B9A4C 46083280 */ add.s $f10, $f6, $f8 +/* 0BA650 800B9A50 3C09800E */ lui $t1, %hi(D_800E3188) # $t1, 0x800e +/* 0BA654 800B9A54 8D293188 */ lw $t1, %lo(D_800E3188)($t1) +/* 0BA658 800B9A58 46105502 */ mul.s $f20, $f10, $f16 +/* 0BA65C 800B9A5C 19200008 */ blez $t1, .L800B9A80 +/* 0BA660 800B9A60 00000000 */ nop +/* 0BA664 800B9A64 8FAD009C */ lw $t5, 0x9c($sp) +/* 0BA668 800B9A68 8FAF0098 */ lw $t7, 0x98($sp) +/* 0BA66C 800B9A6C 8FA400B8 */ lw $a0, 0xb8($sp) +/* 0BA670 800B9A70 026D2821 */ addu $a1, $s3, $t5 +/* 0BA674 800B9A74 0C02FBF1 */ jal func_800BEFC4 +/* 0BA678 800B9A78 03CF3021 */ addu $a2, $fp, $t7 +/* 0BA67C 800B9A7C 4600A500 */ add.s $f20, $f20, $f0 +.L800B9A80: +/* 0BA680 800B9A80 8EF80000 */ lw $t8, ($s7) +/* 0BA684 800B9A84 00000000 */ nop +/* 0BA688 800B9A88 03147021 */ addu $t6, $t8, $s4 +/* 0BA68C 800B9A8C C5D20000 */ lwc1 $f18, ($t6) +/* 0BA690 800B9A90 00000000 */ nop +/* 0BA694 800B9A94 4612A502 */ mul.s $f20, $f20, $f18 +/* 0BA698 800B9A98 4459F800 */ cfc1 $t9, $31 +/* 0BA69C 800B9A9C 00000000 */ nop +/* 0BA6A0 800B9AA0 37210003 */ ori $at, $t9, 3 +/* 0BA6A4 800B9AA4 38210002 */ xori $at, $at, 2 +/* 0BA6A8 800B9AA8 44C1F800 */ ctc1 $at, $31 +/* 0BA6AC 800B9AAC 00000000 */ nop +/* 0BA6B0 800B9AB0 4600A124 */ cvt.w.s $f4, $f20 +/* 0BA6B4 800B9AB4 44D9F800 */ ctc1 $t9, $31 +/* 0BA6B8 800B9AB8 440A2000 */ mfc1 $t2, $f4 +/* 0BA6BC 800B9ABC 461AA181 */ sub.s $f6, $f20, $f26 +/* 0BA6C0 800B9AC0 A60A0002 */ sh $t2, 2($s0) +/* 0BA6C4 800B9AC4 461C3502 */ mul.s $f20, $f6, $f28 +/* 0BA6C8 800B9AC8 4614C03C */ c.lt.s $f24, $f20 +/* 0BA6CC 800B9ACC 00000000 */ nop +/* 0BA6D0 800B9AD0 45000003 */ bc1f .L800B9AE0 +/* 0BA6D4 800B9AD4 00000000 */ nop +/* 0BA6D8 800B9AD8 10000006 */ b .L800B9AF4 +/* 0BA6DC 800B9ADC 4600C506 */ mov.s $f20, $f24 +.L800B9AE0: +/* 0BA6E0 800B9AE0 4616A03C */ c.lt.s $f20, $f22 +/* 0BA6E4 800B9AE4 00000000 */ nop +/* 0BA6E8 800B9AE8 45000002 */ bc1f .L800B9AF4 +/* 0BA6EC 800B9AEC 00000000 */ nop +/* 0BA6F0 800B9AF0 4600B506 */ mov.s $f20, $f22 +.L800B9AF4: +/* 0BA6F4 800B9AF4 4614B202 */ mul.s $f8, $f22, $f20 +/* 0BA6F8 800B9AF8 240B00FF */ li $t3, 255 +/* 0BA6FC 800B9AFC A20B0009 */ sb $t3, 9($s0) +/* 0BA700 800B9B00 26310001 */ addiu $s1, $s1, 1 +/* 0BA704 800B9B04 444CF800 */ cfc1 $t4, $31 +/* 0BA708 800B9B08 26D60001 */ addiu $s6, $s6, 1 +/* 0BA70C 800B9B0C 35810003 */ ori $at, $t4, 3 +/* 0BA710 800B9B10 38210002 */ xori $at, $at, 2 +/* 0BA714 800B9B14 44C1F800 */ ctc1 $at, $31 +/* 0BA718 800B9B18 26940004 */ addiu $s4, $s4, 4 +/* 0BA71C 800B9B1C 460042A4 */ cvt.w.s $f10, $f8 +/* 0BA720 800B9B20 2610000A */ addiu $s0, $s0, 0xa +/* 0BA724 800B9B24 44025000 */ mfc1 $v0, $f10 +/* 0BA728 800B9B28 44CCF800 */ ctc1 $t4, $31 +/* 0BA72C 800B9B2C 244200FF */ addiu $v0, $v0, 0xff +/* 0BA730 800B9B30 A202FFFC */ sb $v0, -4($s0) +/* 0BA734 800B9B34 A202FFFD */ sb $v0, -3($s0) +/* 0BA738 800B9B38 A202FFFE */ sb $v0, -2($s0) +/* 0BA73C 800B9B3C 8EA30004 */ lw $v1, 4($s5) +/* 0BA740 800B9B40 26520001 */ addiu $s2, $s2, 1 +/* 0BA744 800B9B44 0223082A */ slt $at, $s1, $v1 +/* 0BA748 800B9B48 14200003 */ bnez $at, .L800B9B58 +/* 0BA74C 800B9B4C 00000000 */ nop +/* 0BA750 800B9B50 02238823 */ subu $s1, $s1, $v1 +/* 0BA754 800B9B54 02439023 */ subu $s2, $s2, $v1 +.L800B9B58: +/* 0BA758 800B9B58 8EA20000 */ lw $v0, ($s5) +/* 0BA75C 800B9B5C 26730001 */ addiu $s3, $s3, 1 +/* 0BA760 800B9B60 0053082A */ slt $at, $v0, $s3 +/* 0BA764 800B9B64 1020FFAA */ beqz $at, .L800B9A10 +/* 0BA768 800B9B68 00000000 */ nop +/* 0BA76C 800B9B6C 8EA50028 */ lw $a1, 0x28($s5) +/* 0BA770 800B9B70 8FA6006C */ lw $a2, 0x6c($sp) +/* 0BA774 800B9B74 8FA40094 */ lw $a0, 0x94($sp) +/* 0BA778 800B9B78 00000000 */ nop +.L800B9B7C: +/* 0BA77C 800B9B7C 24840001 */ addiu $a0, $a0, 1 +/* 0BA780 800B9B80 0083082A */ slt $at, $a0, $v1 +/* 0BA784 800B9B84 14200002 */ bnez $at, .L800B9B90 +/* 0BA788 800B9B88 27DE0001 */ addiu $fp, $fp, 1 +/* 0BA78C 800B9B8C 00832023 */ subu $a0, $a0, $v1 +.L800B9B90: +/* 0BA790 800B9B90 10A00005 */ beqz $a1, .L800B9BA8 +/* 0BA794 800B9B94 005E082A */ slt $at, $v0, $fp +/* 0BA798 800B9B98 8CC90008 */ lw $t1, 8($a2) +/* 0BA79C 800B9B9C 00000000 */ nop +/* 0BA7A0 800B9BA0 01226821 */ addu $t5, $t1, $v0 +/* 0BA7A4 800B9BA4 ACCD0008 */ sw $t5, 8($a2) +.L800B9BA8: +/* 0BA7A8 800B9BA8 1020FF85 */ beqz $at, .L800B99C0 +/* 0BA7AC 800B9BAC 00000000 */ nop +.L800B9BB0: +/* 0BA7B0 800B9BB0 84C3000C */ lh $v1, 0xc($a2) +/* 0BA7B4 800B9BB4 2401FFFF */ li $at, -1 +/* 0BA7B8 800B9BB8 1461FF40 */ bne $v1, $at, .L800B98BC +/* 0BA7BC 800B9BBC 24C6000C */ addiu $a2, $a2, 0xc +.L800B9BC0: +/* 0BA7C0 800B9BC0 8FBF0064 */ lw $ra, 0x64($sp) +/* 0BA7C4 800B9BC4 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 0BA7C8 800B9BC8 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 0BA7CC 800B9BCC C7B70020 */ lwc1 $f23, 0x20($sp) +/* 0BA7D0 800B9BD0 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 0BA7D4 800B9BD4 C7B90028 */ lwc1 $f25, 0x28($sp) +/* 0BA7D8 800B9BD8 C7B8002C */ lwc1 $f24, 0x2c($sp) +/* 0BA7DC 800B9BDC C7BB0030 */ lwc1 $f27, 0x30($sp) +/* 0BA7E0 800B9BE0 C7BA0034 */ lwc1 $f26, 0x34($sp) +/* 0BA7E4 800B9BE4 C7BD0038 */ lwc1 $f29, 0x38($sp) +/* 0BA7E8 800B9BE8 C7BC003C */ lwc1 $f28, 0x3c($sp) +/* 0BA7EC 800B9BEC 8FB00040 */ lw $s0, 0x40($sp) +/* 0BA7F0 800B9BF0 8FB10044 */ lw $s1, 0x44($sp) +/* 0BA7F4 800B9BF4 8FB20048 */ lw $s2, 0x48($sp) +/* 0BA7F8 800B9BF8 8FB3004C */ lw $s3, 0x4c($sp) +/* 0BA7FC 800B9BFC 8FB40050 */ lw $s4, 0x50($sp) +/* 0BA800 800B9C00 8FB50054 */ lw $s5, 0x54($sp) +/* 0BA804 800B9C04 8FB60058 */ lw $s6, 0x58($sp) +/* 0BA808 800B9C08 8FB7005C */ lw $s7, 0x5c($sp) +/* 0BA80C 800B9C0C 8FBE0060 */ lw $fp, 0x60($sp) +/* 0BA810 800B9C10 03E00008 */ jr $ra +/* 0BA814 800B9C14 27BD00B8 */ addiu $sp, $sp, 0xb8 + diff --git a/asm/non_matchings/unknown_0B8920/func_800B9C18.s b/asm/non_matchings/unknown_0B8920/func_800B9C18.s new file mode 100644 index 00000000..be2613af --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800B9C18.s @@ -0,0 +1,440 @@ +glabel func_800B9C18 +/* 0BA818 800B9C18 3C098013 */ lui $t1, %hi(D_8012A018) # $t1, 0x8013 +/* 0BA81C 800B9C1C 2529A018 */ addiu $t1, %lo(D_8012A018) # addiu $t1, $t1, -0x5fe8 +/* 0BA820 800B9C20 3C0B8013 */ lui $t3, %hi(D_80129FC8) # $t3, 0x8013 +/* 0BA824 800B9C24 8D2E0000 */ lw $t6, ($t1) +/* 0BA828 800B9C28 256B9FC8 */ addiu $t3, %lo(D_80129FC8) # addiu $t3, $t3, -0x6038 +/* 0BA82C 800B9C2C 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 0BA830 800B9C30 8D620004 */ lw $v0, 4($t3) +/* 0BA834 800B9C34 240F0001 */ li $t7, 1 +/* 0BA838 800B9C38 AFB1001C */ sw $s1, 0x1c($sp) +/* 0BA83C 800B9C3C 01EEC023 */ subu $t8, $t7, $t6 +/* 0BA840 800B9C40 00808825 */ move $s1, $a0 +/* 0BA844 800B9C44 AFBF0024 */ sw $ra, 0x24($sp) +/* 0BA848 800B9C48 AFB20020 */ sw $s2, 0x20($sp) +/* 0BA84C 800B9C4C AFB00018 */ sw $s0, 0x18($sp) +/* 0BA850 800B9C50 AD380000 */ sw $t8, ($t1) +/* 0BA854 800B9C54 00005025 */ move $t2, $zero +/* 0BA858 800B9C58 1840003B */ blez $v0, .L800B9D48 +/* 0BA85C 800B9C5C 00004025 */ move $t0, $zero +/* 0BA860 800B9C60 3C06800E */ lui $a2, %hi(D_800E3044) # $a2, 0x800e +/* 0BA864 800B9C64 24C63044 */ addiu $a2, %lo(D_800E3044) # addiu $a2, $a2, 0x3044 +.L800B9C68: +/* 0BA868 800B9C68 18400033 */ blez $v0, .L800B9D38 +/* 0BA86C 800B9C6C 00003825 */ move $a3, $zero +/* 0BA870 800B9C70 8CD90000 */ lw $t9, ($a2) +/* 0BA874 800B9C74 00082880 */ sll $a1, $t0, 2 +/* 0BA878 800B9C78 03251821 */ addu $v1, $t9, $a1 +.L800B9C7C: +/* 0BA87C 800B9C7C 846F0000 */ lh $t7, ($v1) +/* 0BA880 800B9C80 24E70001 */ addiu $a3, $a3, 1 +/* 0BA884 800B9C84 01F17021 */ addu $t6, $t7, $s1 +/* 0BA888 800B9C88 A46E0000 */ sh $t6, ($v1) +/* 0BA88C 800B9C8C 8CD80000 */ lw $t8, ($a2) +/* 0BA890 800B9C90 8D620020 */ lw $v0, 0x20($t3) +/* 0BA894 800B9C94 03051821 */ addu $v1, $t8, $a1 +/* 0BA898 800B9C98 84640000 */ lh $a0, ($v1) +/* 0BA89C 800B9C9C 25080001 */ addiu $t0, $t0, 1 +/* 0BA8A0 800B9CA0 0082082A */ slt $at, $a0, $v0 +/* 0BA8A4 800B9CA4 1420000A */ bnez $at, .L800B9CD0 +/* 0BA8A8 800B9CA8 0082C823 */ subu $t9, $a0, $v0 +.L800B9CAC: +/* 0BA8AC 800B9CAC A4790000 */ sh $t9, ($v1) +/* 0BA8B0 800B9CB0 8CCF0000 */ lw $t7, ($a2) +/* 0BA8B4 800B9CB4 8D620020 */ lw $v0, 0x20($t3) +/* 0BA8B8 800B9CB8 01E51821 */ addu $v1, $t7, $a1 +/* 0BA8BC 800B9CBC 84640000 */ lh $a0, ($v1) +/* 0BA8C0 800B9CC0 00000000 */ nop +/* 0BA8C4 800B9CC4 0082082A */ slt $at, $a0, $v0 +/* 0BA8C8 800B9CC8 1020FFF8 */ beqz $at, .L800B9CAC +/* 0BA8CC 800B9CCC 0082C823 */ subu $t9, $a0, $v0 +.L800B9CD0: +/* 0BA8D0 800B9CD0 846E0002 */ lh $t6, 2($v1) +/* 0BA8D4 800B9CD4 00000000 */ nop +/* 0BA8D8 800B9CD8 01D1C021 */ addu $t8, $t6, $s1 +/* 0BA8DC 800B9CDC A4780002 */ sh $t8, 2($v1) +/* 0BA8E0 800B9CE0 8CD90000 */ lw $t9, ($a2) +/* 0BA8E4 800B9CE4 8D620020 */ lw $v0, 0x20($t3) +/* 0BA8E8 800B9CE8 03251821 */ addu $v1, $t9, $a1 +/* 0BA8EC 800B9CEC 84640002 */ lh $a0, 2($v1) +/* 0BA8F0 800B9CF0 00000000 */ nop +/* 0BA8F4 800B9CF4 0082082A */ slt $at, $a0, $v0 +/* 0BA8F8 800B9CF8 1420000A */ bnez $at, .L800B9D24 +/* 0BA8FC 800B9CFC 00827823 */ subu $t7, $a0, $v0 +.L800B9D00: +/* 0BA900 800B9D00 A46F0002 */ sh $t7, 2($v1) +/* 0BA904 800B9D04 8CCE0000 */ lw $t6, ($a2) +/* 0BA908 800B9D08 8D620020 */ lw $v0, 0x20($t3) +/* 0BA90C 800B9D0C 01C51821 */ addu $v1, $t6, $a1 +/* 0BA910 800B9D10 84640002 */ lh $a0, 2($v1) +/* 0BA914 800B9D14 00000000 */ nop +/* 0BA918 800B9D18 0082082A */ slt $at, $a0, $v0 +/* 0BA91C 800B9D1C 1020FFF8 */ beqz $at, .L800B9D00 +/* 0BA920 800B9D20 00827823 */ subu $t7, $a0, $v0 +.L800B9D24: +/* 0BA924 800B9D24 8D620004 */ lw $v0, 4($t3) +/* 0BA928 800B9D28 24A50004 */ addiu $a1, $a1, 4 +/* 0BA92C 800B9D2C 00E2082A */ slt $at, $a3, $v0 +/* 0BA930 800B9D30 1420FFD2 */ bnez $at, .L800B9C7C +/* 0BA934 800B9D34 24630004 */ addiu $v1, $v1, 4 +.L800B9D38: +/* 0BA938 800B9D38 254A0001 */ addiu $t2, $t2, 1 +/* 0BA93C 800B9D3C 0142082A */ slt $at, $t2, $v0 +/* 0BA940 800B9D40 1420FFC9 */ bnez $at, .L800B9C68 +/* 0BA944 800B9D44 00000000 */ nop +.L800B9D48: +/* 0BA948 800B9D48 3C05800E */ lui $a1, %hi(D_800E30D0) # $a1, 0x800e +/* 0BA94C 800B9D4C 8CA530D0 */ lw $a1, %lo(D_800E30D0)($a1) +/* 0BA950 800B9D50 3C048013 */ lui $a0, %hi(D_8012A09C) # $a0, 0x8013 +/* 0BA954 800B9D54 94B90014 */ lhu $t9, 0x14($a1) +/* 0BA958 800B9D58 2484A09C */ addiu $a0, %lo(D_8012A09C) # addiu $a0, $a0, -0x5f64 +/* 0BA95C 800B9D5C 03310019 */ multu $t9, $s1 +/* 0BA960 800B9D60 8C980000 */ lw $t8, ($a0) +/* 0BA964 800B9D64 3C08800E */ lui $t0, %hi(D_800E3048) # $t0, 0x800e +/* 0BA968 800B9D68 3C078013 */ lui $a3, %hi(D_8012A090) # $a3, 0x8013 +/* 0BA96C 800B9D6C 24E7A090 */ addiu $a3, %lo(D_8012A090) # addiu $a3, $a3, -0x5f70 +/* 0BA970 800B9D70 25083048 */ addiu $t0, %lo(D_800E3048) # addiu $t0, $t0, 0x3048 +/* 0BA974 800B9D74 00006825 */ move $t5, $zero +/* 0BA978 800B9D78 00007812 */ mflo $t7 +/* 0BA97C 800B9D7C 030F1021 */ addu $v0, $t8, $t7 +/* 0BA980 800B9D80 04410003 */ bgez $v0, .L800B9D90 +/* 0BA984 800B9D84 AC820000 */ sw $v0, ($a0) +/* 0BA988 800B9D88 1000000C */ b .L800B9DBC +/* 0BA98C 800B9D8C AC800000 */ sw $zero, ($a0) +.L800B9D90: +/* 0BA990 800B9D90 94A30012 */ lhu $v1, 0x12($a1) +/* 0BA994 800B9D94 00000000 */ nop +/* 0BA998 800B9D98 0043082A */ slt $at, $v0, $v1 +/* 0BA99C 800B9D9C 14200007 */ bnez $at, .L800B9DBC +/* 0BA9A0 800B9DA0 0043C823 */ subu $t9, $v0, $v1 +.L800B9DA4: +/* 0BA9A4 800B9DA4 AC990000 */ sw $t9, ($a0) +/* 0BA9A8 800B9DA8 94A30012 */ lhu $v1, 0x12($a1) +/* 0BA9AC 800B9DAC 03201025 */ move $v0, $t9 +/* 0BA9B0 800B9DB0 0323082A */ slt $at, $t9, $v1 +/* 0BA9B4 800B9DB4 1020FFFB */ beqz $at, .L800B9DA4 +/* 0BA9B8 800B9DB8 0043C823 */ subu $t9, $v0, $v1 +.L800B9DBC: +/* 0BA9BC 800B9DBC 8D780038 */ lw $t8, 0x38($t3) +/* 0BA9C0 800B9DC0 3C0A8013 */ lui $t2, %hi(D_8012A084) # $t2, 0x8013 +/* 0BA9C4 800B9DC4 03110019 */ multu $t8, $s1 +/* 0BA9C8 800B9DC8 254AA084 */ addiu $t2, %lo(D_8012A084) # addiu $t2, $t2, -0x5f7c +/* 0BA9CC 800B9DCC 8D4E0000 */ lw $t6, ($t2) +/* 0BA9D0 800B9DD0 3C188013 */ lui $t8, %hi(D_8012A094) # $t8, 0x8013 +/* 0BA9D4 800B9DD4 8F18A094 */ lw $t8, %lo(D_8012A094)($t8) +/* 0BA9D8 800B9DD8 3C028013 */ lui $v0, %hi(D_8012A088) # $v0, 0x8013 +/* 0BA9DC 800B9DDC 2442A088 */ addiu $v0, %lo(D_8012A088) # addiu $v0, $v0, -0x5f78 +/* 0BA9E0 800B9DE0 8D640000 */ lw $a0, ($t3) +/* 0BA9E4 800B9DE4 3C058013 */ lui $a1, %hi(D_8012A08C) # $a1, 0x8013 +/* 0BA9E8 800B9DE8 24A5A08C */ addiu $a1, %lo(D_8012A08C) # addiu $a1, $a1, -0x5f74 +/* 0BA9EC 800B9DEC 00009025 */ move $s2, $zero +/* 0BA9F0 800B9DF0 00008025 */ move $s0, $zero +/* 0BA9F4 800B9DF4 00007812 */ mflo $t7 +/* 0BA9F8 800B9DF8 01EEC821 */ addu $t9, $t7, $t6 +/* 0BA9FC 800B9DFC 8D6E003C */ lw $t6, 0x3c($t3) +/* 0BAA00 800B9E00 03387824 */ and $t7, $t9, $t8 +/* 0BAA04 800B9E04 01D10019 */ multu $t6, $s1 +/* 0BAA08 800B9E08 8C580000 */ lw $t8, ($v0) +/* 0BAA0C 800B9E0C AD4F0000 */ sw $t7, ($t2) +/* 0BAA10 800B9E10 3C0E8013 */ lui $t6, %hi(D_8012A098) # $t6, 0x8013 +/* 0BAA14 800B9E14 8DCEA098 */ lw $t6, %lo(D_8012A098)($t6) +/* 0BAA18 800B9E18 0000C812 */ mflo $t9 +/* 0BAA1C 800B9E1C 03387821 */ addu $t7, $t9, $t8 +/* 0BAA20 800B9E20 01EE3024 */ and $a2, $t7, $t6 +/* 0BAA24 800B9E24 0480001A */ bltz $a0, .L800B9E90 +/* 0BAA28 800B9E28 AC460000 */ sw $a2, ($v0) +.L800B9E2C: +/* 0BAA2C 800B9E2C 8D430000 */ lw $v1, ($t2) +/* 0BAA30 800B9E30 04800010 */ bltz $a0, .L800B9E74 +/* 0BAA34 800B9E34 00006025 */ move $t4, $zero +/* 0BAA38 800B9E38 00101080 */ sll $v0, $s0, 2 +.L800B9E3C: +/* 0BAA3C 800B9E3C 8D180000 */ lw $t8, ($t0) +/* 0BAA40 800B9E40 258C0001 */ addiu $t4, $t4, 1 +/* 0BAA44 800B9E44 03027821 */ addu $t7, $t8, $v0 +/* 0BAA48 800B9E48 A5E30000 */ sh $v1, ($t7) +/* 0BAA4C 800B9E4C 8D0E0000 */ lw $t6, ($t0) +/* 0BAA50 800B9E50 26100001 */ addiu $s0, $s0, 1 +/* 0BAA54 800B9E54 01C2C821 */ addu $t9, $t6, $v0 +/* 0BAA58 800B9E58 A7260002 */ sh $a2, 2($t9) +/* 0BAA5C 800B9E5C 8D640000 */ lw $a0, ($t3) +/* 0BAA60 800B9E60 8CB80000 */ lw $t8, ($a1) +/* 0BAA64 800B9E64 008C082A */ slt $at, $a0, $t4 +/* 0BAA68 800B9E68 24420004 */ addiu $v0, $v0, 4 +/* 0BAA6C 800B9E6C 1020FFF3 */ beqz $at, .L800B9E3C +/* 0BAA70 800B9E70 00781821 */ addu $v1, $v1, $t8 +.L800B9E74: +/* 0BAA74 800B9E74 8CEF0000 */ lw $t7, ($a3) +/* 0BAA78 800B9E78 26520001 */ addiu $s2, $s2, 1 +/* 0BAA7C 800B9E7C 0092082A */ slt $at, $a0, $s2 +/* 0BAA80 800B9E80 1020FFEA */ beqz $at, .L800B9E2C +/* 0BAA84 800B9E84 00CF3021 */ addu $a2, $a2, $t7 +/* 0BAA88 800B9E88 00009025 */ move $s2, $zero +/* 0BAA8C 800B9E8C 00008025 */ move $s0, $zero +.L800B9E90: +/* 0BAA90 800B9E90 3C0E8013 */ lui $t6, %hi(D_8012A078) # $t6, 0x8013 +/* 0BAA94 800B9E94 8DCEA078 */ lw $t6, %lo(D_8012A078)($t6) +/* 0BAA98 800B9E98 3C08800E */ lui $t0, %hi(D_800E3048) # $t0, 0x800e +/* 0BAA9C 800B9E9C 24010002 */ li $at, 2 +/* 0BAAA0 800B9EA0 11C10003 */ beq $t6, $at, .L800B9EB0 +/* 0BAAA4 800B9EA4 25083048 */ addiu $t0, %lo(D_800E3048) # addiu $t0, $t0, 0x3048 +/* 0BAAA8 800B9EA8 10000002 */ b .L800B9EB4 +/* 0BAAAC 800B9EAC 240A0001 */ li $t2, 1 +.L800B9EB0: +/* 0BAAB0 800B9EB0 240A0002 */ li $t2, 2 +.L800B9EB4: +/* 0BAAB4 800B9EB4 249F0001 */ addiu $ra, $a0, 1 +/* 0BAAB8 800B9EB8 1880009F */ blez $a0, .L800BA138 +/* 0BAABC 800B9EBC AFBF0028 */ sw $ra, 0x28($sp) +/* 0BAAC0 800B9EC0 3C06800E */ lui $a2, %hi(D_800E3080) # $a2, 0x800e +/* 0BAAC4 800B9EC4 24C63080 */ addiu $a2, %lo(D_800E3080) # addiu $a2, $a2, 0x3080 +.L800B9EC8: +/* 0BAAC8 800B9EC8 18800094 */ blez $a0, .L800BA11C +/* 0BAACC 800B9ECC 00006025 */ move $t4, $zero +.L800B9ED0: +/* 0BAAD0 800B9ED0 1940008C */ blez $t2, .L800BA104 +/* 0BAAD4 800B9ED4 00003825 */ move $a3, $zero +/* 0BAAD8 800B9ED8 00101900 */ sll $v1, $s0, 4 +/* 0BAADC 800B9EDC 000D2080 */ sll $a0, $t5, 2 +/* 0BAAE0 800B9EE0 001F2880 */ sll $a1, $ra, 2 +.L800B9EE4: +/* 0BAAE4 800B9EE4 8D180000 */ lw $t8, ($t0) +/* 0BAAE8 800B9EE8 8D390000 */ lw $t9, ($t1) +/* 0BAAEC 800B9EEC 03047821 */ addu $t7, $t8, $a0 +/* 0BAAF0 800B9EF0 85EE0000 */ lh $t6, ($t7) +/* 0BAAF4 800B9EF4 0019C080 */ sll $t8, $t9, 2 +/* 0BAAF8 800B9EF8 00D87821 */ addu $t7, $a2, $t8 +/* 0BAAFC 800B9EFC 000710C0 */ sll $v0, $a3, 3 +/* 0BAB00 800B9F00 01E2C821 */ addu $t9, $t7, $v0 +/* 0BAB04 800B9F04 8F380000 */ lw $t8, ($t9) +/* 0BAB08 800B9F08 24E70001 */ addiu $a3, $a3, 1 +/* 0BAB0C 800B9F0C 03037821 */ addu $t7, $t8, $v1 +/* 0BAB10 800B9F10 A5EE0004 */ sh $t6, 4($t7) +/* 0BAB14 800B9F14 8D190000 */ lw $t9, ($t0) +/* 0BAB18 800B9F18 8D2F0000 */ lw $t7, ($t1) +/* 0BAB1C 800B9F1C 0324C021 */ addu $t8, $t9, $a0 +/* 0BAB20 800B9F20 870E0006 */ lh $t6, 6($t8) +/* 0BAB24 800B9F24 000FC880 */ sll $t9, $t7, 2 +/* 0BAB28 800B9F28 00D9C021 */ addu $t8, $a2, $t9 +/* 0BAB2C 800B9F2C 03027821 */ addu $t7, $t8, $v0 +/* 0BAB30 800B9F30 8DF90000 */ lw $t9, ($t7) +/* 0BAB34 800B9F34 00000000 */ nop +/* 0BAB38 800B9F38 0323C021 */ addu $t8, $t9, $v1 +/* 0BAB3C 800B9F3C A70E0006 */ sh $t6, 6($t8) +/* 0BAB40 800B9F40 8D0F0000 */ lw $t7, ($t0) +/* 0BAB44 800B9F44 8D380000 */ lw $t8, ($t1) +/* 0BAB48 800B9F48 01E5C821 */ addu $t9, $t7, $a1 +/* 0BAB4C 800B9F4C 872E0000 */ lh $t6, ($t9) +/* 0BAB50 800B9F50 00187880 */ sll $t7, $t8, 2 +/* 0BAB54 800B9F54 00CFC821 */ addu $t9, $a2, $t7 +/* 0BAB58 800B9F58 0322C021 */ addu $t8, $t9, $v0 +/* 0BAB5C 800B9F5C 8F0F0000 */ lw $t7, ($t8) +/* 0BAB60 800B9F60 00000000 */ nop +/* 0BAB64 800B9F64 01E3C821 */ addu $t9, $t7, $v1 +/* 0BAB68 800B9F68 A72E0008 */ sh $t6, 8($t9) +/* 0BAB6C 800B9F6C 8D180000 */ lw $t8, ($t0) +/* 0BAB70 800B9F70 8D390000 */ lw $t9, ($t1) +/* 0BAB74 800B9F74 03057821 */ addu $t7, $t8, $a1 +/* 0BAB78 800B9F78 85EE0002 */ lh $t6, 2($t7) +/* 0BAB7C 800B9F7C 0019C080 */ sll $t8, $t9, 2 +/* 0BAB80 800B9F80 00D87821 */ addu $t7, $a2, $t8 +/* 0BAB84 800B9F84 01E2C821 */ addu $t9, $t7, $v0 +/* 0BAB88 800B9F88 8F380000 */ lw $t8, ($t9) +/* 0BAB8C 800B9F8C 00000000 */ nop +/* 0BAB90 800B9F90 03037821 */ addu $t7, $t8, $v1 +/* 0BAB94 800B9F94 A5EE000A */ sh $t6, 0xa($t7) +/* 0BAB98 800B9F98 8D190000 */ lw $t9, ($t0) +/* 0BAB9C 800B9F9C 8D2F0000 */ lw $t7, ($t1) +/* 0BABA0 800B9FA0 0324C021 */ addu $t8, $t9, $a0 +/* 0BABA4 800B9FA4 870E0004 */ lh $t6, 4($t8) +/* 0BABA8 800B9FA8 000FC880 */ sll $t9, $t7, 2 +/* 0BABAC 800B9FAC 00D9C021 */ addu $t8, $a2, $t9 +/* 0BABB0 800B9FB0 03027821 */ addu $t7, $t8, $v0 +/* 0BABB4 800B9FB4 8DF90000 */ lw $t9, ($t7) +/* 0BABB8 800B9FB8 00000000 */ nop +/* 0BABBC 800B9FBC 0323C021 */ addu $t8, $t9, $v1 +/* 0BABC0 800B9FC0 A70E000C */ sh $t6, 0xc($t8) +/* 0BABC4 800B9FC4 8D0F0000 */ lw $t7, ($t0) +/* 0BABC8 800B9FC8 8D380000 */ lw $t8, ($t1) +/* 0BABCC 800B9FCC 01E4C821 */ addu $t9, $t7, $a0 +/* 0BABD0 800B9FD0 872E0006 */ lh $t6, 6($t9) +/* 0BABD4 800B9FD4 00187880 */ sll $t7, $t8, 2 +/* 0BABD8 800B9FD8 00CFC821 */ addu $t9, $a2, $t7 +/* 0BABDC 800B9FDC 0322C021 */ addu $t8, $t9, $v0 +/* 0BABE0 800B9FE0 8F0F0000 */ lw $t7, ($t8) +/* 0BABE4 800B9FE4 00000000 */ nop +/* 0BABE8 800B9FE8 01E3C821 */ addu $t9, $t7, $v1 +/* 0BABEC 800B9FEC A72E000E */ sh $t6, 0xe($t9) +/* 0BABF0 800B9FF0 8D180000 */ lw $t8, ($t0) +/* 0BABF4 800B9FF4 8D390000 */ lw $t9, ($t1) +/* 0BABF8 800B9FF8 03047821 */ addu $t7, $t8, $a0 +/* 0BABFC 800B9FFC 85EE0004 */ lh $t6, 4($t7) +/* 0BAC00 800BA000 0019C080 */ sll $t8, $t9, 2 +/* 0BAC04 800BA004 00D87821 */ addu $t7, $a2, $t8 +/* 0BAC08 800BA008 01E2C821 */ addu $t9, $t7, $v0 +/* 0BAC0C 800BA00C 8F380000 */ lw $t8, ($t9) +/* 0BAC10 800BA010 00000000 */ nop +/* 0BAC14 800BA014 03037821 */ addu $t7, $t8, $v1 +/* 0BAC18 800BA018 A5EE0014 */ sh $t6, 0x14($t7) +/* 0BAC1C 800BA01C 8D190000 */ lw $t9, ($t0) +/* 0BAC20 800BA020 8D2F0000 */ lw $t7, ($t1) +/* 0BAC24 800BA024 0324C021 */ addu $t8, $t9, $a0 +/* 0BAC28 800BA028 870E0006 */ lh $t6, 6($t8) +/* 0BAC2C 800BA02C 000FC880 */ sll $t9, $t7, 2 +/* 0BAC30 800BA030 00D9C021 */ addu $t8, $a2, $t9 +/* 0BAC34 800BA034 03027821 */ addu $t7, $t8, $v0 +/* 0BAC38 800BA038 8DF90000 */ lw $t9, ($t7) +/* 0BAC3C 800BA03C 00000000 */ nop +/* 0BAC40 800BA040 0323C021 */ addu $t8, $t9, $v1 +/* 0BAC44 800BA044 A70E0016 */ sh $t6, 0x16($t8) +/* 0BAC48 800BA048 8D0F0000 */ lw $t7, ($t0) +/* 0BAC4C 800BA04C 8D380000 */ lw $t8, ($t1) +/* 0BAC50 800BA050 01E5C821 */ addu $t9, $t7, $a1 +/* 0BAC54 800BA054 872E0000 */ lh $t6, ($t9) +/* 0BAC58 800BA058 00187880 */ sll $t7, $t8, 2 +/* 0BAC5C 800BA05C 00CFC821 */ addu $t9, $a2, $t7 +/* 0BAC60 800BA060 0322C021 */ addu $t8, $t9, $v0 +/* 0BAC64 800BA064 8F0F0000 */ lw $t7, ($t8) +/* 0BAC68 800BA068 00000000 */ nop +/* 0BAC6C 800BA06C 01E3C821 */ addu $t9, $t7, $v1 +/* 0BAC70 800BA070 A72E0018 */ sh $t6, 0x18($t9) +/* 0BAC74 800BA074 8D180000 */ lw $t8, ($t0) +/* 0BAC78 800BA078 8D390000 */ lw $t9, ($t1) +/* 0BAC7C 800BA07C 03057821 */ addu $t7, $t8, $a1 +/* 0BAC80 800BA080 85EE0006 */ lh $t6, 6($t7) +/* 0BAC84 800BA084 0019C080 */ sll $t8, $t9, 2 +/* 0BAC88 800BA088 00D87821 */ addu $t7, $a2, $t8 +/* 0BAC8C 800BA08C 01E2C821 */ addu $t9, $t7, $v0 +/* 0BAC90 800BA090 8F380000 */ lw $t8, ($t9) +/* 0BAC94 800BA094 00000000 */ nop +/* 0BAC98 800BA098 03037821 */ addu $t7, $t8, $v1 +/* 0BAC9C 800BA09C A5EE001A */ sh $t6, 0x1a($t7) +/* 0BACA0 800BA0A0 8D190000 */ lw $t9, ($t0) +/* 0BACA4 800BA0A4 8D2F0000 */ lw $t7, ($t1) +/* 0BACA8 800BA0A8 0325C021 */ addu $t8, $t9, $a1 +/* 0BACAC 800BA0AC 870E0004 */ lh $t6, 4($t8) +/* 0BACB0 800BA0B0 000FC880 */ sll $t9, $t7, 2 +/* 0BACB4 800BA0B4 00D9C021 */ addu $t8, $a2, $t9 +/* 0BACB8 800BA0B8 03027821 */ addu $t7, $t8, $v0 +/* 0BACBC 800BA0BC 8DF90000 */ lw $t9, ($t7) +/* 0BACC0 800BA0C0 00000000 */ nop +/* 0BACC4 800BA0C4 0323C021 */ addu $t8, $t9, $v1 +/* 0BACC8 800BA0C8 A70E001C */ sh $t6, 0x1c($t8) +/* 0BACCC 800BA0CC 8D0F0000 */ lw $t7, ($t0) +/* 0BACD0 800BA0D0 8D380000 */ lw $t8, ($t1) +/* 0BACD4 800BA0D4 01E5C821 */ addu $t9, $t7, $a1 +/* 0BACD8 800BA0D8 872E0006 */ lh $t6, 6($t9) +/* 0BACDC 800BA0DC 00187880 */ sll $t7, $t8, 2 +/* 0BACE0 800BA0E0 00CFC821 */ addu $t9, $a2, $t7 +/* 0BACE4 800BA0E4 0322C021 */ addu $t8, $t9, $v0 +/* 0BACE8 800BA0E8 8F0F0000 */ lw $t7, ($t8) +/* 0BACEC 800BA0EC 00000000 */ nop +/* 0BACF0 800BA0F0 01E3C821 */ addu $t9, $t7, $v1 +/* 0BACF4 800BA0F4 14EAFF7B */ bne $a3, $t2, .L800B9EE4 +/* 0BACF8 800BA0F8 A72E001E */ sh $t6, 0x1e($t9) +/* 0BACFC 800BA0FC 8D640000 */ lw $a0, ($t3) +/* 0BAD00 800BA100 00000000 */ nop +.L800BA104: +/* 0BAD04 800BA104 258C0001 */ addiu $t4, $t4, 1 +/* 0BAD08 800BA108 0184082A */ slt $at, $t4, $a0 +/* 0BAD0C 800BA10C 25AD0001 */ addiu $t5, $t5, 1 +/* 0BAD10 800BA110 27FF0001 */ addiu $ra, $ra, 1 +/* 0BAD14 800BA114 1420FF6E */ bnez $at, .L800B9ED0 +/* 0BAD18 800BA118 26100002 */ addiu $s0, $s0, 2 +.L800BA11C: +/* 0BAD1C 800BA11C 26520001 */ addiu $s2, $s2, 1 +/* 0BAD20 800BA120 0244082A */ slt $at, $s2, $a0 +/* 0BAD24 800BA124 25AD0001 */ addiu $t5, $t5, 1 +/* 0BAD28 800BA128 1420FF67 */ bnez $at, .L800B9EC8 +/* 0BAD2C 800BA12C 27FF0001 */ addiu $ra, $ra, 1 +/* 0BAD30 800BA130 24980001 */ addiu $t8, $a0, 1 +/* 0BAD34 800BA134 AFB80028 */ sw $t8, 0x28($sp) +.L800BA138: +/* 0BAD38 800BA138 8D2E0000 */ lw $t6, ($t1) +/* 0BAD3C 800BA13C 3C18800E */ lui $t8, %hi(D_800E3090) # $t8, 0x800e +/* 0BAD40 800BA140 27183090 */ addiu $t8, %lo(D_800E3090) # addiu $t8, $t8, 0x3090 +/* 0BAD44 800BA144 000EC940 */ sll $t9, $t6, 5 +/* 0BAD48 800BA148 03381021 */ addu $v0, $t9, $t8 +/* 0BAD4C 800BA14C 8FB90028 */ lw $t9, 0x28($sp) +/* 0BAD50 800BA150 8D030000 */ lw $v1, ($t0) +/* 0BAD54 800BA154 03240019 */ multu $t9, $a0 +/* 0BAD58 800BA158 846F0000 */ lh $t7, ($v1) +/* 0BAD5C 800BA15C 00045080 */ sll $t2, $a0, 2 +/* 0BAD60 800BA160 A44F0004 */ sh $t7, 4($v0) +/* 0BAD64 800BA164 846E0002 */ lh $t6, 2($v1) +/* 0BAD68 800BA168 006A3021 */ addu $a2, $v1, $t2 +/* 0BAD6C 800BA16C A44E0006 */ sh $t6, 6($v0) +/* 0BAD70 800BA170 00003812 */ mflo $a3 +/* 0BAD74 800BA174 0007C080 */ sll $t8, $a3, 2 +/* 0BAD78 800BA178 00782821 */ addu $a1, $v1, $t8 +/* 0BAD7C 800BA17C 84AF0000 */ lh $t7, ($a1) +/* 0BAD80 800BA180 00000000 */ nop +/* 0BAD84 800BA184 A44F0008 */ sh $t7, 8($v0) +/* 0BAD88 800BA188 84AE0002 */ lh $t6, 2($a1) +/* 0BAD8C 800BA18C 00000000 */ nop +/* 0BAD90 800BA190 A44E000A */ sh $t6, 0xa($v0) +/* 0BAD94 800BA194 84D90000 */ lh $t9, ($a2) +/* 0BAD98 800BA198 00000000 */ nop +/* 0BAD9C 800BA19C A459000C */ sh $t9, 0xc($v0) +/* 0BADA0 800BA1A0 84D80002 */ lh $t8, 2($a2) +/* 0BADA4 800BA1A4 00000000 */ nop +/* 0BADA8 800BA1A8 A458000E */ sh $t8, 0xe($v0) +/* 0BADAC 800BA1AC 84CF0000 */ lh $t7, ($a2) +/* 0BADB0 800BA1B0 00000000 */ nop +/* 0BADB4 800BA1B4 A44F0014 */ sh $t7, 0x14($v0) +/* 0BADB8 800BA1B8 84CE0002 */ lh $t6, 2($a2) +/* 0BADBC 800BA1BC 00077880 */ sll $t7, $a3, 2 +/* 0BADC0 800BA1C0 A44E0016 */ sh $t6, 0x16($v0) +/* 0BADC4 800BA1C4 84B90000 */ lh $t9, ($a1) +/* 0BADC8 800BA1C8 006F7021 */ addu $t6, $v1, $t7 +/* 0BADCC 800BA1CC A4590018 */ sh $t9, 0x18($v0) +/* 0BADD0 800BA1D0 84B80002 */ lh $t8, 2($a1) +/* 0BADD4 800BA1D4 01CA6021 */ addu $t4, $t6, $t2 +/* 0BADD8 800BA1D8 A458001A */ sh $t8, 0x1a($v0) +/* 0BADDC 800BA1DC 85990000 */ lh $t9, ($t4) +/* 0BADE0 800BA1E0 3C0F800E */ lui $t7, %hi(D_800E3188) # $t7, 0x800e +/* 0BADE4 800BA1E4 A459001C */ sh $t9, 0x1c($v0) +/* 0BADE8 800BA1E8 85980002 */ lh $t8, 2($t4) +/* 0BADEC 800BA1EC 00000000 */ nop +/* 0BADF0 800BA1F0 A458001E */ sh $t8, 0x1e($v0) +/* 0BADF4 800BA1F4 8DEF3188 */ lw $t7, %lo(D_800E3188)($t7) +/* 0BADF8 800BA1F8 00000000 */ nop +/* 0BADFC 800BA1FC 19E00005 */ blez $t7, .L800BA214 +/* 0BAE00 800BA200 00000000 */ nop +/* 0BAE04 800BA204 0C02FFA6 */ jal func_800BFE98 +/* 0BAE08 800BA208 02202025 */ move $a0, $s1 +/* 0BAE0C 800BA20C 3C0B8013 */ lui $t3, %hi(D_80129FC8) # $t3, 0x8013 +/* 0BAE10 800BA210 256B9FC8 */ addiu $t3, %lo(D_80129FC8) # addiu $t3, $t3, -0x6038 +.L800BA214: +/* 0BAE14 800BA214 3C038013 */ lui $v1, %hi(D_8012A728) # $v1, 0x8013 +/* 0BAE18 800BA218 2463A728 */ addiu $v1, %lo(D_8012A728) # addiu $v1, $v1, -0x58d8 +/* 0BAE1C 800BA21C 8C620000 */ lw $v0, ($v1) +/* 0BAE20 800BA220 00000000 */ nop +/* 0BAE24 800BA224 18400012 */ blez $v0, .L800BA270 +/* 0BAE28 800BA228 0222082A */ slt $at, $s1, $v0 +/* 0BAE2C 800BA22C 1020000C */ beqz $at, .L800BA260 +/* 0BAE30 800BA230 00000000 */ nop +/* 0BAE34 800BA234 44912000 */ mtc1 $s1, $f4 +/* 0BAE38 800BA238 3C018013 */ lui $at, %hi(D_8012A724) # $at, 0x8013 +/* 0BAE3C 800BA23C 468021A0 */ cvt.s.w $f6, $f4 +/* 0BAE40 800BA240 C428A724 */ lwc1 $f8, %lo(D_8012A724)($at) +/* 0BAE44 800BA244 C5700040 */ lwc1 $f16, 0x40($t3) +/* 0BAE48 800BA248 46083282 */ mul.s $f10, $f6, $f8 +/* 0BAE4C 800BA24C 00517023 */ subu $t6, $v0, $s1 +/* 0BAE50 800BA250 AC6E0000 */ sw $t6, ($v1) +/* 0BAE54 800BA254 460A8480 */ add.s $f18, $f16, $f10 +/* 0BAE58 800BA258 10000005 */ b .L800BA270 +/* 0BAE5C 800BA25C E5720040 */ swc1 $f18, 0x40($t3) +.L800BA260: +/* 0BAE60 800BA260 3C018013 */ lui $at, %hi(D_8012A720) # $at, 0x8013 +/* 0BAE64 800BA264 C424A720 */ lwc1 $f4, %lo(D_8012A720)($at) +/* 0BAE68 800BA268 AC600000 */ sw $zero, ($v1) +/* 0BAE6C 800BA26C E5640040 */ swc1 $f4, 0x40($t3) +.L800BA270: +/* 0BAE70 800BA270 8FBF0024 */ lw $ra, 0x24($sp) +/* 0BAE74 800BA274 8FB00018 */ lw $s0, 0x18($sp) +/* 0BAE78 800BA278 8FB1001C */ lw $s1, 0x1c($sp) +/* 0BAE7C 800BA27C 8FB20020 */ lw $s2, 0x20($sp) +/* 0BAE80 800BA280 03E00008 */ jr $ra +/* 0BAE84 800BA284 27BD0060 */ addiu $sp, $sp, 0x60 + diff --git a/asm/non_matchings/unknown_0B8920/func_800BA288.s b/asm/non_matchings/unknown_0B8920/func_800BA288.s new file mode 100644 index 00000000..806adf42 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800BA288.s @@ -0,0 +1,156 @@ +glabel func_800BA288 +/* 0BAE88 800BA288 3C038013 */ lui $v1, %hi(D_8012A0E0) # $v1, 0x8013 +/* 0BAE8C 800BA28C 8C63A0E0 */ lw $v1, %lo(D_8012A0E0)($v1) +/* 0BAE90 800BA290 27BDFFF0 */ addiu $sp, $sp, -0x10 +/* 0BAE94 800BA294 AFB00008 */ sw $s0, 8($sp) +/* 0BAE98 800BA298 000570C0 */ sll $t6, $a1, 3 +/* 0BAE9C 800BA29C 00808025 */ move $s0, $a0 +/* 0BAEA0 800BA2A0 AFB1000C */ sw $s1, 0xc($sp) +/* 0BAEA4 800BA2A4 01C02825 */ move $a1, $t6 +/* 0BAEA8 800BA2A8 1860007F */ blez $v1, .L800BA4A8 +/* 0BAEAC 800BA2AC 00001025 */ move $v0, $zero +/* 0BAEB0 800BA2B0 3C0C800E */ lui $t4, %hi(D_800E30D4) # $t4, 0x800e +/* 0BAEB4 800BA2B4 3C0B8013 */ lui $t3, %hi(D_80129FC8) # $t3, 0x8013 +/* 0BAEB8 800BA2B8 3C0A8013 */ lui $t2, %hi(D_8012A0E8) # $t2, 0x8013 +/* 0BAEBC 800BA2BC 3C09800E */ lui $t1, %hi(D_800E30D8) # $t1, 0x800e +/* 0BAEC0 800BA2C0 252930D8 */ addiu $t1, %lo(D_800E30D8) # addiu $t1, $t1, 0x30d8 +/* 0BAEC4 800BA2C4 254AA0E8 */ addiu $t2, %lo(D_8012A0E8) # addiu $t2, $t2, -0x5f18 +/* 0BAEC8 800BA2C8 256B9FC8 */ addiu $t3, %lo(D_80129FC8) # addiu $t3, $t3, -0x6038 +/* 0BAECC 800BA2CC 258C30D4 */ addiu $t4, %lo(D_800E30D4) # addiu $t4, $t4, 0x30d4 +/* 0BAED0 800BA2D0 00003025 */ move $a2, $zero +/* 0BAED4 800BA2D4 24110080 */ li $s1, 128 +/* 0BAED8 800BA2D8 240D0004 */ li $t5, 4 +.L800BA2DC: +/* 0BAEDC 800BA2DC 8D240000 */ lw $a0, ($t1) +/* 0BAEE0 800BA2E0 24180001 */ li $t8, 1 +/* 0BAEE4 800BA2E4 00863821 */ addu $a3, $a0, $a2 +/* 0BAEE8 800BA2E8 90EF000A */ lbu $t7, 0xa($a3) +/* 0BAEEC 800BA2EC 90EE000B */ lbu $t6, 0xb($a3) +/* 0BAEF0 800BA2F0 01F8C804 */ sllv $t9, $t8, $t7 +/* 0BAEF4 800BA2F4 000EC080 */ sll $t8, $t6, 2 +/* 0BAEF8 800BA2F8 01587821 */ addu $t7, $t2, $t8 +/* 0BAEFC 800BA2FC 8DEE0000 */ lw $t6, ($t7) +/* 0BAF00 800BA300 00000000 */ nop +/* 0BAF04 800BA304 032EC024 */ and $t8, $t9, $t6 +/* 0BAF08 800BA308 13000063 */ beqz $t8, .L800BA498 +/* 0BAF0C 800BA30C 00000000 */ nop +/* 0BAF10 800BA310 8D6F0028 */ lw $t7, 0x28($t3) +/* 0BAF14 800BA314 00001825 */ move $v1, $zero +/* 0BAF18 800BA318 11E00035 */ beqz $t7, .L800BA3F0 +/* 0BAF1C 800BA31C 00000000 */ nop +.L800BA320: +/* 0BAF20 800BA320 8D240000 */ lw $a0, ($t1) +/* 0BAF24 800BA324 8D990000 */ lw $t9, ($t4) +/* 0BAF28 800BA328 00867021 */ addu $t6, $a0, $a2 +/* 0BAF2C 800BA32C 8DD8000C */ lw $t8, 0xc($t6) +/* 0BAF30 800BA330 00000000 */ nop +/* 0BAF34 800BA334 00187880 */ sll $t7, $t8, 2 +/* 0BAF38 800BA338 032F7021 */ addu $t6, $t9, $t7 +/* 0BAF3C 800BA33C 8DD80000 */ lw $t8, ($t6) +/* 0BAF40 800BA340 240F00FF */ li $t7, 255 +/* 0BAF44 800BA344 0003C8C0 */ sll $t9, $v1, 3 +/* 0BAF48 800BA348 032F7004 */ sllv $t6, $t7, $t9 +/* 0BAF4C 800BA34C 030E7824 */ and $t7, $t8, $t6 +/* 0BAF50 800BA350 11E00011 */ beqz $t7, .L800BA398 +/* 0BAF54 800BA354 0002C0C0 */ sll $t8, $v0, 3 +/* 0BAF58 800BA358 0002C8C0 */ sll $t9, $v0, 3 +/* 0BAF5C 800BA35C 0322C823 */ subu $t9, $t9, $v0 +/* 0BAF60 800BA360 0019C880 */ sll $t9, $t9, 2 +/* 0BAF64 800BA364 0099C021 */ addu $t8, $a0, $t9 +/* 0BAF68 800BA368 00107080 */ sll $t6, $s0, 2 +/* 0BAF6C 800BA36C 030E7821 */ addu $t7, $t8, $t6 +/* 0BAF70 800BA370 01E33821 */ addu $a3, $t7, $v1 +/* 0BAF74 800BA374 90E80014 */ lbu $t0, 0x14($a3) +/* 0BAF78 800BA378 00000000 */ nop +/* 0BAF7C 800BA37C 00A8082A */ slt $at, $a1, $t0 +/* 0BAF80 800BA380 10200003 */ beqz $at, .L800BA390 +/* 0BAF84 800BA384 0105C823 */ subu $t9, $t0, $a1 +/* 0BAF88 800BA388 10000012 */ b .L800BA3D4 +/* 0BAF8C 800BA38C A0F90014 */ sb $t9, 0x14($a3) +.L800BA390: +/* 0BAF90 800BA390 10000010 */ b .L800BA3D4 +/* 0BAF94 800BA394 A0E00014 */ sb $zero, 0x14($a3) +.L800BA398: +/* 0BAF98 800BA398 0302C023 */ subu $t8, $t8, $v0 +/* 0BAF9C 800BA39C 0018C080 */ sll $t8, $t8, 2 +/* 0BAFA0 800BA3A0 00987021 */ addu $t6, $a0, $t8 +/* 0BAFA4 800BA3A4 00107880 */ sll $t7, $s0, 2 +/* 0BAFA8 800BA3A8 01CFC821 */ addu $t9, $t6, $t7 +/* 0BAFAC 800BA3AC 03233821 */ addu $a3, $t9, $v1 +/* 0BAFB0 800BA3B0 90F80014 */ lbu $t8, 0x14($a3) +/* 0BAFB4 800BA3B4 00000000 */ nop +/* 0BAFB8 800BA3B8 03054021 */ addu $t0, $t8, $a1 +/* 0BAFBC 800BA3BC 29010080 */ slti $at, $t0, 0x80 +/* 0BAFC0 800BA3C0 10200003 */ beqz $at, .L800BA3D0 +/* 0BAFC4 800BA3C4 00000000 */ nop +/* 0BAFC8 800BA3C8 10000002 */ b .L800BA3D4 +/* 0BAFCC 800BA3CC A0E80014 */ sb $t0, 0x14($a3) +.L800BA3D0: +/* 0BAFD0 800BA3D0 A0F10014 */ sb $s1, 0x14($a3) +.L800BA3D4: +/* 0BAFD4 800BA3D4 24630001 */ addiu $v1, $v1, 1 +/* 0BAFD8 800BA3D8 146DFFD1 */ bne $v1, $t5, .L800BA320 +/* 0BAFDC 800BA3DC 00000000 */ nop +/* 0BAFE0 800BA3E0 3C038013 */ lui $v1, %hi(D_8012A0E0) # $v1, 0x8013 +/* 0BAFE4 800BA3E4 8C63A0E0 */ lw $v1, %lo(D_8012A0E0)($v1) +/* 0BAFE8 800BA3E8 1000002C */ b .L800BA49C +/* 0BAFEC 800BA3EC 24420001 */ addiu $v0, $v0, 1 +.L800BA3F0: +/* 0BAFF0 800BA3F0 8CEF000C */ lw $t7, 0xc($a3) +/* 0BAFF4 800BA3F4 8D8E0000 */ lw $t6, ($t4) +/* 0BAFF8 800BA3F8 000FC880 */ sll $t9, $t7, 2 +/* 0BAFFC 800BA3FC 01D9C021 */ addu $t8, $t6, $t9 +/* 0BB000 800BA400 8F0F0000 */ lw $t7, ($t8) +/* 0BB004 800BA404 00101880 */ sll $v1, $s0, 2 +/* 0BB008 800BA408 11E00010 */ beqz $t7, .L800BA44C +/* 0BB00C 800BA40C 000270C0 */ sll $t6, $v0, 3 +/* 0BB010 800BA410 01C27023 */ subu $t6, $t6, $v0 +/* 0BB014 800BA414 000E7080 */ sll $t6, $t6, 2 +/* 0BB018 800BA418 008EC821 */ addu $t9, $a0, $t6 +/* 0BB01C 800BA41C 03233821 */ addu $a3, $t9, $v1 +/* 0BB020 800BA420 90E80014 */ lbu $t0, 0x14($a3) +/* 0BB024 800BA424 3C038013 */ lui $v1, %hi(D_8012A0E0) # $v1, 0x8013 +/* 0BB028 800BA428 00A8082A */ slt $at, $a1, $t0 +/* 0BB02C 800BA42C 10200003 */ beqz $at, .L800BA43C +/* 0BB030 800BA430 0105C023 */ subu $t8, $t0, $a1 +/* 0BB034 800BA434 10000002 */ b .L800BA440 +/* 0BB038 800BA438 A0F80014 */ sb $t8, 0x14($a3) +.L800BA43C: +/* 0BB03C 800BA43C A0E00014 */ sb $zero, 0x14($a3) +.L800BA440: +/* 0BB040 800BA440 8C63A0E0 */ lw $v1, %lo(D_8012A0E0)($v1) +/* 0BB044 800BA444 10000015 */ b .L800BA49C +/* 0BB048 800BA448 24420001 */ addiu $v0, $v0, 1 +.L800BA44C: +/* 0BB04C 800BA44C 000278C0 */ sll $t7, $v0, 3 +/* 0BB050 800BA450 01E27823 */ subu $t7, $t7, $v0 +/* 0BB054 800BA454 000F7880 */ sll $t7, $t7, 2 +/* 0BB058 800BA458 008F7021 */ addu $t6, $a0, $t7 +/* 0BB05C 800BA45C 01C33821 */ addu $a3, $t6, $v1 +/* 0BB060 800BA460 90F90014 */ lbu $t9, 0x14($a3) +/* 0BB064 800BA464 3C038013 */ lui $v1, 0x8013 +/* 0BB068 800BA468 03254021 */ addu $t0, $t9, $a1 +/* 0BB06C 800BA46C 29010080 */ slti $at, $t0, 0x80 +/* 0BB070 800BA470 10200006 */ beqz $at, .L800BA48C +/* 0BB074 800BA474 00000000 */ nop +/* 0BB078 800BA478 A0E80014 */ sb $t0, 0x14($a3) +/* 0BB07C 800BA47C 3C038013 */ lui $v1, %hi(D_8012A0E0) # $v1, 0x8013 +/* 0BB080 800BA480 8C63A0E0 */ lw $v1, %lo(D_8012A0E0)($v1) +/* 0BB084 800BA484 10000005 */ b .L800BA49C +/* 0BB088 800BA488 24420001 */ addiu $v0, $v0, 1 +.L800BA48C: +/* 0BB08C 800BA48C A0F10014 */ sb $s1, 0x14($a3) +/* 0BB090 800BA490 8C63A0E0 */ lw $v1, -0x5f20($v1) +/* 0BB094 800BA494 00000000 */ nop +.L800BA498: +/* 0BB098 800BA498 24420001 */ addiu $v0, $v0, 1 +.L800BA49C: +/* 0BB09C 800BA49C 0043082A */ slt $at, $v0, $v1 +/* 0BB0A0 800BA4A0 1420FF8E */ bnez $at, .L800BA2DC +/* 0BB0A4 800BA4A4 24C6001C */ addiu $a2, $a2, 0x1c +.L800BA4A8: +/* 0BB0A8 800BA4A8 8FB00008 */ lw $s0, 8($sp) +/* 0BB0AC 800BA4AC 8FB1000C */ lw $s1, 0xc($sp) +/* 0BB0B0 800BA4B0 03E00008 */ jr $ra +/* 0BB0B4 800BA4B4 27BD0010 */ addiu $sp, $sp, 0x10 + diff --git a/asm/non_matchings/unknown_0B8920/func_800BA4B8.s b/asm/non_matchings/unknown_0B8920/func_800BA4B8.s new file mode 100644 index 00000000..9c560bf2 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800BA4B8.s @@ -0,0 +1,290 @@ +glabel func_800BA4B8 +/* 0BB0B8 800BA4B8 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 0BB0BC 800BA4BC AFA50064 */ sw $a1, 0x64($sp) +/* 0BB0C0 800BA4C0 90880000 */ lbu $t0, ($a0) +/* 0BB0C4 800BA4C4 24010010 */ li $at, 16 +/* 0BB0C8 800BA4C8 00803825 */ move $a3, $a0 +/* 0BB0CC 800BA4CC 15010006 */ bne $t0, $at, .L800BA4E8 +/* 0BB0D0 800BA4D0 00003025 */ move $a2, $zero +/* 0BB0D4 800BA4D4 10A00002 */ beqz $a1, .L800BA4E0 +/* 0BB0D8 800BA4D8 240C0004 */ li $t4, 4 +/* 0BB0DC 800BA4DC 24060180 */ li $a2, 384 +.L800BA4E0: +/* 0BB0E0 800BA4E0 10000010 */ b .L800BA524 +/* 0BB0E4 800BA4E4 AFAC005C */ sw $t4, 0x5c($sp) +.L800BA4E8: +/* 0BB0E8 800BA4E8 24010020 */ li $at, 32 +/* 0BB0EC 800BA4EC 15010009 */ bne $t0, $at, .L800BA514 +/* 0BB0F0 800BA4F0 8FB80064 */ lw $t8, 0x64($sp) +/* 0BB0F4 800BA4F4 8FAF0064 */ lw $t7, 0x64($sp) +/* 0BB0F8 800BA4F8 240C0005 */ li $t4, 5 +/* 0BB0FC 800BA4FC 11E00002 */ beqz $t7, .L800BA508 +/* 0BB100 800BA500 00000000 */ nop +/* 0BB104 800BA504 24060100 */ li $a2, 256 +.L800BA508: +/* 0BB108 800BA508 10000006 */ b .L800BA524 +/* 0BB10C 800BA50C AFAC005C */ sw $t4, 0x5c($sp) +/* 0BB110 800BA510 8FB80064 */ lw $t8, 0x64($sp) +.L800BA514: +/* 0BB114 800BA514 24080003 */ li $t0, 3 +/* 0BB118 800BA518 13000002 */ beqz $t8, .L800BA524 +/* 0BB11C 800BA51C 00000000 */ nop +/* 0BB120 800BA520 24060180 */ li $a2, 384 +.L800BA524: +/* 0BB124 800BA524 90F90002 */ lbu $t9, 2($a3) +/* 0BB128 800BA528 8FAC005C */ lw $t4, 0x5c($sp) +/* 0BB12C 800BA52C 332E000F */ andi $t6, $t9, 0xf +/* 0BB130 800BA530 15C00073 */ bnez $t6, .L800BA700 +/* 0BB134 800BA534 3C038013 */ lui $v1, 0x8013 +/* 0BB138 800BA538 3C038013 */ lui $v1, %hi(D_80129FC0) # $v1, 0x8013 +/* 0BB13C 800BA53C 24639FC0 */ addiu $v1, %lo(D_80129FC0) # addiu $v1, $v1, -0x6040 +/* 0BB140 800BA540 8C620000 */ lw $v0, ($v1) +/* 0BB144 800BA544 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 +/* 0BB148 800BA548 244F0008 */ addiu $t7, $v0, 8 +/* 0BB14C 800BA54C AC6F0000 */ sw $t7, ($v1) +/* 0BB150 800BA550 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 +/* 0BB154 800BA554 AFA20050 */ sw $v0, 0x50($sp) +/* 0BB158 800BA558 00E17021 */ addu $t6, $a3, $at +/* 0BB15C 800BA55C 3C18FD18 */ lui $t8, 0xfd18 +/* 0BB160 800BA560 AC580000 */ sw $t8, ($v0) +/* 0BB164 800BA564 AC4E0004 */ sw $t6, 4($v0) +/* 0BB168 800BA568 8C620000 */ lw $v0, ($v1) +/* 0BB16C 800BA56C 3C01F518 */ lui $at, 0xf518 +/* 0BB170 800BA570 30C901FF */ andi $t1, $a2, 0x1ff +/* 0BB174 800BA574 0121C025 */ or $t8, $t1, $at +/* 0BB178 800BA578 3184000F */ andi $a0, $t4, 0xf +/* 0BB17C 800BA57C 244F0008 */ addiu $t7, $v0, 8 +/* 0BB180 800BA580 01080019 */ multu $t0, $t0 +/* 0BB184 800BA584 AC6F0000 */ sw $t7, ($v1) +/* 0BB188 800BA588 00045380 */ sll $t2, $a0, 0xe +/* 0BB18C 800BA58C 3C010700 */ lui $at, 0x700 +/* 0BB190 800BA590 0141C825 */ or $t9, $t2, $at +/* 0BB194 800BA594 00045900 */ sll $t3, $a0, 4 +/* 0BB198 800BA598 AFA2004C */ sw $v0, 0x4c($sp) +/* 0BB19C 800BA59C 032B7825 */ or $t7, $t9, $t3 +/* 0BB1A0 800BA5A0 AC4F0004 */ sw $t7, 4($v0) +/* 0BB1A4 800BA5A4 AC580000 */ sw $t8, ($v0) +/* 0BB1A8 800BA5A8 8C620000 */ lw $v0, ($v1) +/* 0BB1AC 800BA5AC 3C19E600 */ lui $t9, 0xe600 +/* 0BB1B0 800BA5B0 24580008 */ addiu $t8, $v0, 8 +/* 0BB1B4 800BA5B4 AC780000 */ sw $t8, ($v1) +/* 0BB1B8 800BA5B8 AFA20048 */ sw $v0, 0x48($sp) +/* 0BB1BC 800BA5BC AC400004 */ sw $zero, 4($v0) +/* 0BB1C0 800BA5C0 AC590000 */ sw $t9, ($v0) +/* 0BB1C4 800BA5C4 8C6D0000 */ lw $t5, ($v1) +/* 0BB1C8 800BA5C8 00002812 */ mflo $a1 +/* 0BB1CC 800BA5CC 24A5FFFF */ addiu $a1, $a1, -1 +/* 0BB1D0 800BA5D0 25AE0008 */ addiu $t6, $t5, 8 +/* 0BB1D4 800BA5D4 AC6E0000 */ sw $t6, ($v1) +/* 0BB1D8 800BA5D8 2CA107FF */ sltiu $at, $a1, 0x7ff +/* 0BB1DC 800BA5DC 3C18F300 */ lui $t8, 0xf300 +/* 0BB1E0 800BA5E0 10200003 */ beqz $at, .L800BA5F0 +/* 0BB1E4 800BA5E4 ADB80000 */ sw $t8, ($t5) +/* 0BB1E8 800BA5E8 10000002 */ b .L800BA5F4 +/* 0BB1EC 800BA5EC 00A06025 */ move $t4, $a1 +.L800BA5F0: +/* 0BB1F0 800BA5F0 240C07FF */ li $t4, 2047 +.L800BA5F4: +/* 0BB1F4 800BA5F4 00081080 */ sll $v0, $t0, 2 +/* 0BB1F8 800BA5F8 0002C8C2 */ srl $t9, $v0, 3 +/* 0BB1FC 800BA5FC 17200003 */ bnez $t9, .L800BA60C +/* 0BB200 800BA600 03201025 */ move $v0, $t9 +/* 0BB204 800BA604 10000002 */ b .L800BA610 +/* 0BB208 800BA608 24070001 */ li $a3, 1 +.L800BA60C: +/* 0BB20C 800BA60C 00403825 */ move $a3, $v0 +.L800BA610: +/* 0BB210 800BA610 14400003 */ bnez $v0, .L800BA620 +/* 0BB214 800BA614 24EF07FF */ addiu $t7, $a3, 0x7ff +/* 0BB218 800BA618 10000002 */ b .L800BA624 +/* 0BB21C 800BA61C 24060001 */ li $a2, 1 +.L800BA620: +/* 0BB220 800BA620 00403025 */ move $a2, $v0 +.L800BA624: +/* 0BB224 800BA624 01E6001B */ divu $zero, $t7, $a2 +/* 0BB228 800BA628 318F0FFF */ andi $t7, $t4, 0xfff +/* 0BB22C 800BA62C 3C010700 */ lui $at, 0x700 +/* 0BB230 800BA630 2505FFFF */ addiu $a1, $t0, -1 +/* 0BB234 800BA634 14C00002 */ bnez $a2, .L800BA640 +/* 0BB238 800BA638 00000000 */ nop +/* 0BB23C 800BA63C 0007000D */ break 7 +.L800BA640: +/* 0BB240 800BA640 00007012 */ mflo $t6 +/* 0BB244 800BA644 31D80FFF */ andi $t8, $t6, 0xfff +/* 0BB248 800BA648 0301C825 */ or $t9, $t8, $at +/* 0BB24C 800BA64C 000F7300 */ sll $t6, $t7, 0xc +/* 0BB250 800BA650 032EC025 */ or $t8, $t9, $t6 +/* 0BB254 800BA654 ADB80004 */ sw $t8, 4($t5) +/* 0BB258 800BA658 8C620000 */ lw $v0, ($v1) +/* 0BB25C 800BA65C 3C19E700 */ lui $t9, 0xe700 +/* 0BB260 800BA660 244F0008 */ addiu $t7, $v0, 8 +/* 0BB264 800BA664 AC6F0000 */ sw $t7, ($v1) +/* 0BB268 800BA668 AFA20040 */ sw $v0, 0x40($sp) +/* 0BB26C 800BA66C AC400004 */ sw $zero, 4($v0) +/* 0BB270 800BA670 AC590000 */ sw $t9, ($v0) +/* 0BB274 800BA674 8C620000 */ lw $v0, ($v1) +/* 0BB278 800BA678 00087840 */ sll $t7, $t0, 1 +/* 0BB27C 800BA67C 25F90007 */ addiu $t9, $t7, 7 +/* 0BB280 800BA680 24580008 */ addiu $t8, $v0, 8 +/* 0BB284 800BA684 AC780000 */ sw $t8, ($v1) +/* 0BB288 800BA688 001970C2 */ srl $t6, $t9, 3 +/* 0BB28C 800BA68C 31D801FF */ andi $t8, $t6, 0x1ff +/* 0BB290 800BA690 00187A40 */ sll $t7, $t8, 9 +/* 0BB294 800BA694 3C01F518 */ lui $at, 0xf518 +/* 0BB298 800BA698 01E1C825 */ or $t9, $t7, $at +/* 0BB29C 800BA69C 03297025 */ or $t6, $t9, $t1 +/* 0BB2A0 800BA6A0 AFA2003C */ sw $v0, 0x3c($sp) +/* 0BB2A4 800BA6A4 AC4E0000 */ sw $t6, ($v0) +/* 0BB2A8 800BA6A8 8FA40064 */ lw $a0, 0x64($sp) +/* 0BB2AC 800BA6AC 0005C080 */ sll $t8, $a1, 2 +/* 0BB2B0 800BA6B0 308F0007 */ andi $t7, $a0, 7 +/* 0BB2B4 800BA6B4 000FCE00 */ sll $t9, $t7, 0x18 +/* 0BB2B8 800BA6B8 032A7025 */ or $t6, $t9, $t2 +/* 0BB2BC 800BA6BC 01CB7825 */ or $t7, $t6, $t3 +/* 0BB2C0 800BA6C0 AC4F0004 */ sw $t7, 4($v0) +/* 0BB2C4 800BA6C4 8C620000 */ lw $v0, ($v1) +/* 0BB2C8 800BA6C8 03202025 */ move $a0, $t9 +/* 0BB2CC 800BA6CC 24590008 */ addiu $t9, $v0, 8 +/* 0BB2D0 800BA6D0 AC790000 */ sw $t9, ($v1) +/* 0BB2D4 800BA6D4 33190FFF */ andi $t9, $t8, 0xfff +/* 0BB2D8 800BA6D8 3C0EF200 */ lui $t6, 0xf200 +/* 0BB2DC 800BA6DC AFA20038 */ sw $v0, 0x38($sp) +/* 0BB2E0 800BA6E0 AC4E0000 */ sw $t6, ($v0) +/* 0BB2E4 800BA6E4 00197300 */ sll $t6, $t9, 0xc +/* 0BB2E8 800BA6E8 008EC025 */ or $t8, $a0, $t6 +/* 0BB2EC 800BA6EC 03202825 */ move $a1, $t9 +/* 0BB2F0 800BA6F0 0319C825 */ or $t9, $t8, $t9 +/* 0BB2F4 800BA6F4 AC590004 */ sw $t9, 4($v0) +/* 0BB2F8 800BA6F8 10000078 */ b .L800BA8DC +/* 0BB2FC 800BA6FC 00407825 */ move $t7, $v0 +.L800BA700: +/* 0BB300 800BA700 24639FC0 */ addiu $v1, $v1, -0x6040 +/* 0BB304 800BA704 8C620000 */ lw $v0, ($v1) +/* 0BB308 800BA708 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 +/* 0BB30C 800BA70C 244E0008 */ addiu $t6, $v0, 8 +/* 0BB310 800BA710 AC6E0000 */ sw $t6, ($v1) +/* 0BB314 800BA714 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 +/* 0BB318 800BA718 AFA20034 */ sw $v0, 0x34($sp) +/* 0BB31C 800BA71C 00E17821 */ addu $t7, $a3, $at +/* 0BB320 800BA720 3C18FD10 */ lui $t8, 0xfd10 +/* 0BB324 800BA724 AC580000 */ sw $t8, ($v0) +/* 0BB328 800BA728 AC4F0004 */ sw $t7, 4($v0) +/* 0BB32C 800BA72C 8C620000 */ lw $v0, ($v1) +/* 0BB330 800BA730 3C01F510 */ lui $at, 0xf510 +/* 0BB334 800BA734 30C901FF */ andi $t1, $a2, 0x1ff +/* 0BB338 800BA738 0121C025 */ or $t8, $t1, $at +/* 0BB33C 800BA73C 244E0008 */ addiu $t6, $v0, 8 +/* 0BB340 800BA740 AC6E0000 */ sw $t6, ($v1) +/* 0BB344 800BA744 3184000F */ andi $a0, $t4, 0xf +/* 0BB348 800BA748 AFA20030 */ sw $v0, 0x30($sp) +/* 0BB34C 800BA74C 00045380 */ sll $t2, $a0, 0xe +/* 0BB350 800BA750 3C010700 */ lui $at, 0x700 +/* 0BB354 800BA754 AC580000 */ sw $t8, ($v0) +/* 0BB358 800BA758 8FB80030 */ lw $t8, 0x30($sp) +/* 0BB35C 800BA75C 0141C825 */ or $t9, $t2, $at +/* 0BB360 800BA760 00045900 */ sll $t3, $a0, 4 +/* 0BB364 800BA764 01080019 */ multu $t0, $t0 +/* 0BB368 800BA768 032B7025 */ or $t6, $t9, $t3 +/* 0BB36C 800BA76C AF0E0004 */ sw $t6, 4($t8) +/* 0BB370 800BA770 8C620000 */ lw $v0, ($v1) +/* 0BB374 800BA774 3C19E600 */ lui $t9, 0xe600 +/* 0BB378 800BA778 244F0008 */ addiu $t7, $v0, 8 +/* 0BB37C 800BA77C AC6F0000 */ sw $t7, ($v1) +/* 0BB380 800BA780 AFA2002C */ sw $v0, 0x2c($sp) +/* 0BB384 800BA784 AC590000 */ sw $t9, ($v0) +/* 0BB388 800BA788 8FB8002C */ lw $t8, 0x2c($sp) +/* 0BB38C 800BA78C 3C19F300 */ lui $t9, 0xf300 +/* 0BB390 800BA790 AF000004 */ sw $zero, 4($t8) +/* 0BB394 800BA794 8C6D0000 */ lw $t5, ($v1) +/* 0BB398 800BA798 00002812 */ mflo $a1 +/* 0BB39C 800BA79C 24A5FFFF */ addiu $a1, $a1, -1 +/* 0BB3A0 800BA7A0 25AF0008 */ addiu $t7, $t5, 8 +/* 0BB3A4 800BA7A4 AC6F0000 */ sw $t7, ($v1) +/* 0BB3A8 800BA7A8 2CA107FF */ sltiu $at, $a1, 0x7ff +/* 0BB3AC 800BA7AC 10200003 */ beqz $at, .L800BA7BC +/* 0BB3B0 800BA7B0 ADB90000 */ sw $t9, ($t5) +/* 0BB3B4 800BA7B4 10000002 */ b .L800BA7C0 +/* 0BB3B8 800BA7B8 00A06025 */ move $t4, $a1 +.L800BA7BC: +/* 0BB3BC 800BA7BC 240C07FF */ li $t4, 2047 +.L800BA7C0: +/* 0BB3C0 800BA7C0 00087040 */ sll $t6, $t0, 1 +/* 0BB3C4 800BA7C4 000EC0C2 */ srl $t8, $t6, 3 +/* 0BB3C8 800BA7C8 03001025 */ move $v0, $t8 +/* 0BB3CC 800BA7CC 17000003 */ bnez $t8, .L800BA7DC +/* 0BB3D0 800BA7D0 AFAE0000 */ sw $t6, ($sp) +/* 0BB3D4 800BA7D4 10000002 */ b .L800BA7E0 +/* 0BB3D8 800BA7D8 24070001 */ li $a3, 1 +.L800BA7DC: +/* 0BB3DC 800BA7DC 00403825 */ move $a3, $v0 +.L800BA7E0: +/* 0BB3E0 800BA7E0 14400003 */ bnez $v0, .L800BA7F0 +/* 0BB3E4 800BA7E4 24EF07FF */ addiu $t7, $a3, 0x7ff +/* 0BB3E8 800BA7E8 10000002 */ b .L800BA7F4 +/* 0BB3EC 800BA7EC 24060001 */ li $a2, 1 +.L800BA7F0: +/* 0BB3F0 800BA7F0 00403025 */ move $a2, $v0 +.L800BA7F4: +/* 0BB3F4 800BA7F4 01E6001B */ divu $zero, $t7, $a2 +/* 0BB3F8 800BA7F8 318F0FFF */ andi $t7, $t4, 0xfff +/* 0BB3FC 800BA7FC 3C010700 */ lui $at, 0x700 +/* 0BB400 800BA800 2505FFFF */ addiu $a1, $t0, -1 +/* 0BB404 800BA804 14C00002 */ bnez $a2, .L800BA810 +/* 0BB408 800BA808 00000000 */ nop +/* 0BB40C 800BA80C 0007000D */ break 7 +.L800BA810: +/* 0BB410 800BA810 0000C812 */ mflo $t9 +/* 0BB414 800BA814 332E0FFF */ andi $t6, $t9, 0xfff +/* 0BB418 800BA818 01C1C025 */ or $t8, $t6, $at +/* 0BB41C 800BA81C 000FCB00 */ sll $t9, $t7, 0xc +/* 0BB420 800BA820 03197025 */ or $t6, $t8, $t9 +/* 0BB424 800BA824 ADAE0004 */ sw $t6, 4($t5) +/* 0BB428 800BA828 8C620000 */ lw $v0, ($v1) +/* 0BB42C 800BA82C 3C18E700 */ lui $t8, 0xe700 +/* 0BB430 800BA830 244F0008 */ addiu $t7, $v0, 8 +/* 0BB434 800BA834 AC6F0000 */ sw $t7, ($v1) +/* 0BB438 800BA838 AFA20024 */ sw $v0, 0x24($sp) +/* 0BB43C 800BA83C AC580000 */ sw $t8, ($v0) +/* 0BB440 800BA840 8FAE0024 */ lw $t6, 0x24($sp) +/* 0BB444 800BA844 3C01F510 */ lui $at, 0xf510 +/* 0BB448 800BA848 ADC00004 */ sw $zero, 4($t6) +/* 0BB44C 800BA84C 8C620000 */ lw $v0, ($v1) +/* 0BB450 800BA850 8FB80000 */ lw $t8, ($sp) +/* 0BB454 800BA854 244F0008 */ addiu $t7, $v0, 8 +/* 0BB458 800BA858 27190007 */ addiu $t9, $t8, 7 +/* 0BB45C 800BA85C 001970C2 */ srl $t6, $t9, 3 +/* 0BB460 800BA860 AC6F0000 */ sw $t7, ($v1) +/* 0BB464 800BA864 31CF01FF */ andi $t7, $t6, 0x1ff +/* 0BB468 800BA868 000FC240 */ sll $t8, $t7, 9 +/* 0BB46C 800BA86C 0301C825 */ or $t9, $t8, $at +/* 0BB470 800BA870 03297025 */ or $t6, $t9, $t1 +/* 0BB474 800BA874 AFA20020 */ sw $v0, 0x20($sp) +/* 0BB478 800BA878 AC4E0000 */ sw $t6, ($v0) +/* 0BB47C 800BA87C 8FA40064 */ lw $a0, 0x64($sp) +/* 0BB480 800BA880 00000000 */ nop +/* 0BB484 800BA884 30980007 */ andi $t8, $a0, 7 +/* 0BB488 800BA888 0018CE00 */ sll $t9, $t8, 0x18 +/* 0BB48C 800BA88C 8FB80020 */ lw $t8, 0x20($sp) +/* 0BB490 800BA890 032A7025 */ or $t6, $t9, $t2 +/* 0BB494 800BA894 01CB7825 */ or $t7, $t6, $t3 +/* 0BB498 800BA898 AF0F0004 */ sw $t7, 4($t8) +/* 0BB49C 800BA89C 8C620000 */ lw $v0, ($v1) +/* 0BB4A0 800BA8A0 03202025 */ move $a0, $t9 +/* 0BB4A4 800BA8A4 24590008 */ addiu $t9, $v0, 8 +/* 0BB4A8 800BA8A8 AC790000 */ sw $t9, ($v1) +/* 0BB4AC 800BA8AC 0005C080 */ sll $t8, $a1, 2 +/* 0BB4B0 800BA8B0 3C0EF200 */ lui $t6, 0xf200 +/* 0BB4B4 800BA8B4 AFA2001C */ sw $v0, 0x1c($sp) +/* 0BB4B8 800BA8B8 33190FFF */ andi $t9, $t8, 0xfff +/* 0BB4BC 800BA8BC AC4E0000 */ sw $t6, ($v0) +/* 0BB4C0 800BA8C0 00197300 */ sll $t6, $t9, 0xc +/* 0BB4C4 800BA8C4 008E7825 */ or $t7, $a0, $t6 +/* 0BB4C8 800BA8C8 01F9C025 */ or $t8, $t7, $t9 +/* 0BB4CC 800BA8CC 03202825 */ move $a1, $t9 +/* 0BB4D0 800BA8D0 8FB9001C */ lw $t9, 0x1c($sp) +/* 0BB4D4 800BA8D4 00000000 */ nop +/* 0BB4D8 800BA8D8 AF380004 */ sw $t8, 4($t9) +.L800BA8DC: +/* 0BB4DC 800BA8DC 03E00008 */ jr $ra +/* 0BB4E0 800BA8E0 27BD0060 */ addiu $sp, $sp, 0x60 + diff --git a/asm/non_matchings/unknown_0B8920/func_800BA8E4.s b/asm/non_matchings/unknown_0B8920/func_800BA8E4.s new file mode 100644 index 00000000..43c646c3 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800BA8E4.s @@ -0,0 +1,672 @@ +glabel func_800BA8E4 +/* 0BB4E4 800BA8E4 27BDFEE0 */ addiu $sp, $sp, -0x120 +/* 0BB4E8 800BA8E8 24010001 */ li $at, 1 +/* 0BB4EC 800BA8EC AFBF005C */ sw $ra, 0x5c($sp) +/* 0BB4F0 800BA8F0 AFBE0058 */ sw $fp, 0x58($sp) +/* 0BB4F4 800BA8F4 AFB70054 */ sw $s7, 0x54($sp) +/* 0BB4F8 800BA8F8 AFB60050 */ sw $s6, 0x50($sp) +/* 0BB4FC 800BA8FC AFB5004C */ sw $s5, 0x4c($sp) +/* 0BB500 800BA900 AFB40048 */ sw $s4, 0x48($sp) +/* 0BB504 800BA904 AFB30044 */ sw $s3, 0x44($sp) +/* 0BB508 800BA908 AFB20040 */ sw $s2, 0x40($sp) +/* 0BB50C 800BA90C AFB1003C */ sw $s1, 0x3c($sp) +/* 0BB510 800BA910 AFB00038 */ sw $s0, 0x38($sp) +/* 0BB514 800BA914 E7B90030 */ swc1 $f25, 0x30($sp) +/* 0BB518 800BA918 E7B80034 */ swc1 $f24, 0x34($sp) +/* 0BB51C 800BA91C E7B70028 */ swc1 $f23, 0x28($sp) +/* 0BB520 800BA920 E7B6002C */ swc1 $f22, 0x2c($sp) +/* 0BB524 800BA924 E7B50020 */ swc1 $f21, 0x20($sp) +/* 0BB528 800BA928 E7B40024 */ swc1 $f20, 0x24($sp) +/* 0BB52C 800BA92C AFA40120 */ sw $a0, 0x120($sp) +/* 0BB530 800BA930 14C10006 */ bne $a2, $at, .L800BA94C +/* 0BB534 800BA934 AFA50124 */ sw $a1, 0x124($sp) +/* 0BB538 800BA938 3C0E8013 */ lui $t6, %hi(D_8012A078) # $t6, 0x8013 +/* 0BB53C 800BA93C 8DCEA078 */ lw $t6, %lo(D_8012A078)($t6) +/* 0BB540 800BA940 24010002 */ li $at, 2 +/* 0BB544 800BA944 11C10003 */ beq $t6, $at, .L800BA954 +/* 0BB548 800BA948 240F0002 */ li $t7, 2 +.L800BA94C: +/* 0BB54C 800BA94C 10000002 */ b .L800BA958 +/* 0BB550 800BA950 AFA00128 */ sw $zero, 0x128($sp) +.L800BA954: +/* 0BB554 800BA954 AFAF0128 */ sw $t7, 0x128($sp) +.L800BA958: +/* 0BB558 800BA958 3C18800E */ lui $t8, %hi(D_800E30DC) # $t8, 0x800e +/* 0BB55C 800BA95C 8F1830DC */ lw $t8, %lo(D_800E30DC)($t8) +/* 0BB560 800BA960 3C118013 */ lui $s1, %hi(D_80129FC0) # $s1, 0x8013 +/* 0BB564 800BA964 1B00024F */ blez $t8, .L800BB2A4 +/* 0BB568 800BA968 26319FC0 */ addiu $s1, %lo(D_80129FC0) # addiu $s1, $s1, -0x6040 +/* 0BB56C 800BA96C 8FB90120 */ lw $t9, 0x120($sp) +/* 0BB570 800BA970 8FAF0124 */ lw $t7, 0x124($sp) +/* 0BB574 800BA974 8F2E0000 */ lw $t6, ($t9) +/* 0BB578 800BA978 3C018013 */ lui $at, %hi(D_80129FC4) # $at, 0x8013 +/* 0BB57C 800BA97C AE2E0000 */ sw $t6, ($s1) +/* 0BB580 800BA980 8DF80000 */ lw $t8, ($t7) +/* 0BB584 800BA984 AFA000DC */ sw $zero, 0xdc($sp) +/* 0BB588 800BA988 02202025 */ move $a0, $s1 +/* 0BB58C 800BA98C 0C01ECF4 */ jal func_8007B3D0 +/* 0BB590 800BA990 AC389FC4 */ sw $t8, %lo(D_80129FC4)($at) +/* 0BB594 800BA994 8E270000 */ lw $a3, ($s1) +/* 0BB598 800BA998 3C1F8013 */ lui $ra, %hi(D_80129FC8) # $ra, 0x8013 +/* 0BB59C 800BA99C 24F90008 */ addiu $t9, $a3, 8 +/* 0BB5A0 800BA9A0 AE390000 */ sw $t9, ($s1) +/* 0BB5A4 800BA9A4 3C0EB700 */ lui $t6, 0xb700 +/* 0BB5A8 800BA9A8 240F0001 */ li $t7, 1 +/* 0BB5AC 800BA9AC 27FF9FC8 */ addiu $ra, %lo(D_80129FC8) # addiu $ra, $ra, -0x6038 +/* 0BB5B0 800BA9B0 ACEF0004 */ sw $t7, 4($a3) +/* 0BB5B4 800BA9B4 ACEE0000 */ sw $t6, ($a3) +/* 0BB5B8 800BA9B8 8FF8004C */ lw $t8, 0x4c($ra) +/* 0BB5BC 800BA9BC 3C190001 */ lui $t9, 1 +/* 0BB5C0 800BA9C0 1300006F */ beqz $t8, .L800BAB80 +/* 0BB5C4 800BA9C4 3C0F8013 */ lui $t7, 0x8013 +/* 0BB5C8 800BA9C8 8E270000 */ lw $a3, ($s1) +/* 0BB5CC 800BA9CC 3C0EB600 */ lui $t6, 0xb600 +/* 0BB5D0 800BA9D0 24F90008 */ addiu $t9, $a3, 8 +/* 0BB5D4 800BA9D4 AE390000 */ sw $t9, ($s1) +/* 0BB5D8 800BA9D8 3C0F0001 */ lui $t7, 1 +/* 0BB5DC 800BA9DC 3C058013 */ lui $a1, %hi(D_8012A09C) # $a1, 0x8013 +/* 0BB5E0 800BA9E0 ACEF0004 */ sw $t7, 4($a3) +/* 0BB5E4 800BA9E4 ACEE0000 */ sw $t6, ($a3) +/* 0BB5E8 800BA9E8 8CA5A09C */ lw $a1, %lo(D_8012A09C)($a1) +/* 0BB5EC 800BA9EC 3C04800E */ lui $a0, %hi(D_800E30D0) # $a0, 0x800e +/* 0BB5F0 800BA9F0 8C8430D0 */ lw $a0, %lo(D_800E30D0)($a0) +/* 0BB5F4 800BA9F4 0005C200 */ sll $t8, $a1, 8 +/* 0BB5F8 800BA9F8 0C01ED1B */ jal func_8007B46C +/* 0BB5FC 800BA9FC 03002825 */ move $a1, $t8 +/* 0BB600 800BAA00 3C198013 */ lui $t9, %hi(D_8012A07C) # $t9, 0x8013 +/* 0BB604 800BAA04 8F39A07C */ lw $t9, %lo(D_8012A07C)($t9) +/* 0BB608 800BAA08 3C048013 */ lui $a0, %hi(D_8012A080) # $a0, 0x8013 +/* 0BB60C 800BAA0C 93250007 */ lbu $a1, 7($t9) +/* 0BB610 800BAA10 8C84A080 */ lw $a0, %lo(D_8012A080)($a0) +/* 0BB614 800BAA14 00057380 */ sll $t6, $a1, 0xe +/* 0BB618 800BAA18 00408025 */ move $s0, $v0 +/* 0BB61C 800BAA1C 0C01ED1B */ jal func_8007B46C +/* 0BB620 800BAA20 01C02825 */ move $a1, $t6 +/* 0BB624 800BAA24 00409025 */ move $s2, $v0 +/* 0BB628 800BAA28 02002025 */ move $a0, $s0 +/* 0BB62C 800BAA2C 0C02E92E */ jal func_800BA4B8 +/* 0BB630 800BAA30 24050001 */ li $a1, 1 +/* 0BB634 800BAA34 02402025 */ move $a0, $s2 +/* 0BB638 800BAA38 0C02E92E */ jal func_800BA4B8 +/* 0BB63C 800BAA3C 00002825 */ move $a1, $zero +/* 0BB640 800BAA40 8E270000 */ lw $a3, ($s1) +/* 0BB644 800BAA44 3C18FC22 */ lui $t8, (0xFC2266AC >> 16) # lui $t8, 0xfc22 +/* 0BB648 800BAA48 24EF0008 */ addiu $t7, $a3, 8 +/* 0BB64C 800BAA4C AE2F0000 */ sw $t7, ($s1) +/* 0BB650 800BAA50 3C191010 */ lui $t9, (0x1010923F >> 16) # lui $t9, 0x1010 +/* 0BB654 800BAA54 3739923F */ ori $t9, (0x1010923F & 0xFFFF) # ori $t9, $t9, 0x923f +/* 0BB658 800BAA58 371866AC */ ori $t8, (0xFC2266AC & 0xFFFF) # ori $t8, $t8, 0x66ac +/* 0BB65C 800BAA5C ACF80000 */ sw $t8, ($a3) +/* 0BB660 800BAA60 ACF90004 */ sw $t9, 4($a3) +/* 0BB664 800BAA64 920E0002 */ lbu $t6, 2($s0) +/* 0BB668 800BAA68 3C1F8013 */ lui $ra, %hi(D_80129FC8) # $ra, 0x8013 +/* 0BB66C 800BAA6C 31CF000F */ andi $t7, $t6, 0xf +/* 0BB670 800BAA70 15E00010 */ bnez $t7, .L800BAAB4 +/* 0BB674 800BAA74 27FF9FC8 */ addiu $ra, %lo(D_80129FC8) # addiu $ra, $ra, -0x6038 +/* 0BB678 800BAA78 0C019884 */ jal func_80066210 +/* 0BB67C 800BAA7C 00000000 */ nop +/* 0BB680 800BAA80 3C1F8013 */ lui $ra, %hi(D_80129FC8) # $ra, 0x8013 +/* 0BB684 800BAA84 1C40000B */ bgtz $v0, .L800BAAB4 +/* 0BB688 800BAA88 27FF9FC8 */ addiu $ra, %lo(D_80129FC8) # addiu $ra, $ra, -0x6038 +/* 0BB68C 800BAA8C 8E270000 */ lw $a3, ($s1) +/* 0BB690 800BAA90 3C19EF18 */ lui $t9, (0xEF182C0F >> 16) # lui $t9, 0xef18 +/* 0BB694 800BAA94 3C0E0010 */ lui $t6, (0x001045D8 >> 16) # lui $t6, 0x10 +/* 0BB698 800BAA98 24F80008 */ addiu $t8, $a3, 8 +/* 0BB69C 800BAA9C AE380000 */ sw $t8, ($s1) +/* 0BB6A0 800BAAA0 35CE45D8 */ ori $t6, (0x001045D8 & 0xFFFF) # ori $t6, $t6, 0x45d8 +/* 0BB6A4 800BAAA4 37392C0F */ ori $t9, (0xEF182C0F & 0xFFFF) # ori $t9, $t9, 0x2c0f +/* 0BB6A8 800BAAA8 ACF90000 */ sw $t9, ($a3) +/* 0BB6AC 800BAAAC 1000000A */ b .L800BAAD8 +/* 0BB6B0 800BAAB0 ACEE0004 */ sw $t6, 4($a3) +.L800BAAB4: +/* 0BB6B4 800BAAB4 8E270000 */ lw $a3, ($s1) +/* 0BB6B8 800BAAB8 3C18EF18 */ lui $t8, (0xEF182C0F >> 16) # lui $t8, 0xef18 +/* 0BB6BC 800BAABC 24EF0008 */ addiu $t7, $a3, 8 +/* 0BB6C0 800BAAC0 AE2F0000 */ sw $t7, ($s1) +/* 0BB6C4 800BAAC4 3C190011 */ lui $t9, (0x00112078 >> 16) # lui $t9, 0x11 +/* 0BB6C8 800BAAC8 37392078 */ ori $t9, (0x00112078 & 0xFFFF) # ori $t9, $t9, 0x2078 +/* 0BB6CC 800BAACC 37182C0F */ ori $t8, (0xEF182C0F & 0xFFFF) # ori $t8, $t8, 0x2c0f +/* 0BB6D0 800BAAD0 ACF80000 */ sw $t8, ($a3) +/* 0BB6D4 800BAAD4 ACF90004 */ sw $t9, 4($a3) +.L800BAAD8: +/* 0BB6D8 800BAAD8 8E270000 */ lw $a3, ($s1) +/* 0BB6DC 800BAADC 2403FF00 */ li $v1, -256 +/* 0BB6E0 800BAAE0 24EE0008 */ addiu $t6, $a3, 8 +/* 0BB6E4 800BAAE4 AE2E0000 */ sw $t6, ($s1) +/* 0BB6E8 800BAAE8 3C09800E */ lui $t1, %hi(D_800E3180) # $t1, 0x800e +/* 0BB6EC 800BAAEC 3C0FFA00 */ lui $t7, 0xfa00 +/* 0BB6F0 800BAAF0 25293180 */ addiu $t1, %lo(D_800E3180) # addiu $t1, $t1, 0x3180 +/* 0BB6F4 800BAAF4 ACEF0000 */ sw $t7, ($a3) +/* 0BB6F8 800BAAF8 ACE30004 */ sw $v1, 4($a3) +/* 0BB6FC 800BAAFC 8D380000 */ lw $t8, ($t1) +/* 0BB700 800BAB00 00000000 */ nop +/* 0BB704 800BAB04 13000016 */ beqz $t8, .L800BAB60 +/* 0BB708 800BAB08 00000000 */ nop +/* 0BB70C 800BAB0C 8E270000 */ lw $a3, ($s1) +/* 0BB710 800BAB10 3C0EFB00 */ lui $t6, 0xfb00 +/* 0BB714 800BAB14 24F90008 */ addiu $t9, $a3, 8 +/* 0BB718 800BAB18 AE390000 */ sw $t9, ($s1) +/* 0BB71C 800BAB1C ACEE0000 */ sw $t6, ($a3) +/* 0BB720 800BAB20 8D220000 */ lw $v0, ($t1) +/* 0BB724 800BAB24 3C128000 */ lui $s2, 0x8000 +/* 0BB728 800BAB28 90580010 */ lbu $t8, 0x10($v0) +/* 0BB72C 800BAB2C 904F0011 */ lbu $t7, 0x11($v0) +/* 0BB730 800BAB30 0018CE00 */ sll $t9, $t8, 0x18 +/* 0BB734 800BAB34 000FC400 */ sll $t8, $t7, 0x10 +/* 0BB738 800BAB38 03387025 */ or $t6, $t9, $t8 +/* 0BB73C 800BAB3C 90590012 */ lbu $t9, 0x12($v0) +/* 0BB740 800BAB40 00000000 */ nop +/* 0BB744 800BAB44 0019C200 */ sll $t8, $t9, 8 +/* 0BB748 800BAB48 01D87825 */ or $t7, $t6, $t8 +/* 0BB74C 800BAB4C 904E0013 */ lbu $t6, 0x13($v0) +/* 0BB750 800BAB50 00000000 */ nop +/* 0BB754 800BAB54 01EEC025 */ or $t8, $t7, $t6 +/* 0BB758 800BAB58 10000061 */ b .L800BACE0 +/* 0BB75C 800BAB5C ACF80004 */ sw $t8, 4($a3) +.L800BAB60: +/* 0BB760 800BAB60 8E270000 */ lw $a3, ($s1) +/* 0BB764 800BAB64 3C0FFB00 */ lui $t7, %hi(D_FAFFA07C) # $t7, 0xfb00 +/* 0BB768 800BAB68 24F90008 */ addiu $t9, $a3, 8 +/* 0BB76C 800BAB6C AE390000 */ sw $t9, ($s1) +/* 0BB770 800BAB70 ACE30004 */ sw $v1, 4($a3) +/* 0BB774 800BAB74 ACEF0000 */ sw $t7, ($a3) +/* 0BB778 800BAB78 10000059 */ b .L800BACE0 +/* 0BB77C 800BAB7C 3C128000 */ lui $s2, 0x8000 +.L800BAB80: +/* 0BB780 800BAB80 8E270000 */ lw $a3, ($s1) +/* 0BB784 800BAB84 3C18B700 */ lui $t8, 0xb700 +/* 0BB788 800BAB88 24EE0008 */ addiu $t6, $a3, 8 +/* 0BB78C 800BAB8C AE2E0000 */ sw $t6, ($s1) +/* 0BB790 800BAB90 ACF90004 */ sw $t9, 4($a3) +/* 0BB794 800BAB94 ACF80000 */ sw $t8, ($a3) +/* 0BB798 800BAB98 8DEFA07C */ lw $t7, %lo(D_FAFFA07C)($t7) +/* 0BB79C 800BAB9C 3C048013 */ lui $a0, %hi(D_8012A080) # $a0, 0x8013 +/* 0BB7A0 800BABA0 91E50007 */ lbu $a1, 7($t7) +/* 0BB7A4 800BABA4 8C84A080 */ lw $a0, %lo(D_8012A080)($a0) +/* 0BB7A8 800BABA8 00057380 */ sll $t6, $a1, 0xe +/* 0BB7AC 800BABAC 0C01ED1B */ jal func_8007B46C +/* 0BB7B0 800BABB0 01C02825 */ move $a1, $t6 +/* 0BB7B4 800BABB4 8E270000 */ lw $a3, ($s1) +/* 0BB7B8 800BABB8 3C010700 */ lui $at, 0x700 +/* 0BB7BC 800BABBC 24F80008 */ addiu $t8, $a3, 8 +/* 0BB7C0 800BABC0 AE380000 */ sw $t8, ($s1) +/* 0BB7C4 800BABC4 8444000A */ lh $a0, 0xa($v0) +/* 0BB7C8 800BABC8 3C128000 */ lui $s2, 0x8000 +/* 0BB7CC 800BABCC 309900FF */ andi $t9, $a0, 0xff +/* 0BB7D0 800BABD0 00197C00 */ sll $t7, $t9, 0x10 +/* 0BB7D4 800BABD4 0004C0C0 */ sll $t8, $a0, 3 +/* 0BB7D8 800BABD8 3319FFFF */ andi $t9, $t8, 0xffff +/* 0BB7DC 800BABDC 01E17025 */ or $t6, $t7, $at +/* 0BB7E0 800BABE0 01D97825 */ or $t7, $t6, $t9 +/* 0BB7E4 800BABE4 ACEF0000 */ sw $t7, ($a3) +/* 0BB7E8 800BABE8 8C58000C */ lw $t8, 0xc($v0) +/* 0BB7EC 800BABEC 3C0FFC56 */ lui $t7, (0xFC567E04 >> 16) # lui $t7, 0xfc56 +/* 0BB7F0 800BABF0 03127021 */ addu $t6, $t8, $s2 +/* 0BB7F4 800BABF4 ACEE0004 */ sw $t6, 4($a3) +/* 0BB7F8 800BABF8 8E270000 */ lw $a3, ($s1) +/* 0BB7FC 800BABFC 3C181FFC */ lui $t8, (0x1FFCF7F8 >> 16) # lui $t8, 0x1ffc +/* 0BB800 800BAC00 24F90008 */ addiu $t9, $a3, 8 +/* 0BB804 800BAC04 AE390000 */ sw $t9, ($s1) +/* 0BB808 800BAC08 3718F7F8 */ ori $t8, (0x1FFCF7F8 & 0xFFFF) # ori $t8, $t8, 0xf7f8 +/* 0BB80C 800BAC0C 35EF7E04 */ ori $t7, (0xFC567E04 & 0xFFFF) # ori $t7, $t7, 0x7e04 +/* 0BB810 800BAC10 ACEF0000 */ sw $t7, ($a3) +/* 0BB814 800BAC14 ACF80004 */ sw $t8, 4($a3) +/* 0BB818 800BAC18 8E270000 */ lw $a3, ($s1) +/* 0BB81C 800BAC1C 3C0FC811 */ lui $t7, (0xC8112078 >> 16) # lui $t7, 0xc811 +/* 0BB820 800BAC20 24EE0008 */ addiu $t6, $a3, 8 +/* 0BB824 800BAC24 AE2E0000 */ sw $t6, ($s1) +/* 0BB828 800BAC28 3C19EF18 */ lui $t9, (0xEF182C0F >> 16) # lui $t9, 0xef18 +/* 0BB82C 800BAC2C 37392C0F */ ori $t9, (0xEF182C0F & 0xFFFF) # ori $t9, $t9, 0x2c0f +/* 0BB830 800BAC30 35EF2078 */ ori $t7, (0xC8112078 & 0xFFFF) # ori $t7, $t7, 0x2078 +/* 0BB834 800BAC34 ACEF0004 */ sw $t7, 4($a3) +/* 0BB838 800BAC38 ACF90000 */ sw $t9, ($a3) +/* 0BB83C 800BAC3C 8E270000 */ lw $a3, ($s1) +/* 0BB840 800BAC40 3C09800E */ lui $t1, %hi(D_800E3180) # $t1, 0x800e +/* 0BB844 800BAC44 24F80008 */ addiu $t8, $a3, 8 +/* 0BB848 800BAC48 AE380000 */ sw $t8, ($s1) +/* 0BB84C 800BAC4C 2419FFFF */ li $t9, -1 +/* 0BB850 800BAC50 3C0EFA00 */ lui $t6, 0xfa00 +/* 0BB854 800BAC54 25293180 */ addiu $t1, %lo(D_800E3180) # addiu $t1, $t1, 0x3180 +/* 0BB858 800BAC58 ACEE0000 */ sw $t6, ($a3) +/* 0BB85C 800BAC5C ACF90004 */ sw $t9, 4($a3) +/* 0BB860 800BAC60 8D2F0000 */ lw $t7, ($t1) +/* 0BB864 800BAC64 3C1F8013 */ lui $ra, %hi(D_80129FC8) # $ra, 0x8013 +/* 0BB868 800BAC68 11E00016 */ beqz $t7, .L800BACC4 +/* 0BB86C 800BAC6C 27FF9FC8 */ addiu $ra, %lo(D_80129FC8) # addiu $ra, $ra, -0x6038 +/* 0BB870 800BAC70 8E270000 */ lw $a3, ($s1) +/* 0BB874 800BAC74 3C0EFB00 */ lui $t6, 0xfb00 +/* 0BB878 800BAC78 24F80008 */ addiu $t8, $a3, 8 +/* 0BB87C 800BAC7C AE380000 */ sw $t8, ($s1) +/* 0BB880 800BAC80 ACEE0000 */ sw $t6, ($a3) +/* 0BB884 800BAC84 8D220000 */ lw $v0, ($t1) +/* 0BB888 800BAC88 00000000 */ nop +/* 0BB88C 800BAC8C 904F0010 */ lbu $t7, 0x10($v0) +/* 0BB890 800BAC90 90590011 */ lbu $t9, 0x11($v0) +/* 0BB894 800BAC94 000FC600 */ sll $t8, $t7, 0x18 +/* 0BB898 800BAC98 00197C00 */ sll $t7, $t9, 0x10 +/* 0BB89C 800BAC9C 030F7025 */ or $t6, $t8, $t7 +/* 0BB8A0 800BACA0 90580012 */ lbu $t8, 0x12($v0) +/* 0BB8A4 800BACA4 00000000 */ nop +/* 0BB8A8 800BACA8 00187A00 */ sll $t7, $t8, 8 +/* 0BB8AC 800BACAC 01CFC825 */ or $t9, $t6, $t7 +/* 0BB8B0 800BACB0 904E0013 */ lbu $t6, 0x13($v0) +/* 0BB8B4 800BACB4 00000000 */ nop +/* 0BB8B8 800BACB8 032E7825 */ or $t7, $t9, $t6 +/* 0BB8BC 800BACBC 10000008 */ b .L800BACE0 +/* 0BB8C0 800BACC0 ACEF0004 */ sw $t7, 4($a3) +.L800BACC4: +/* 0BB8C4 800BACC4 8E270000 */ lw $a3, ($s1) +/* 0BB8C8 800BACC8 2403FF00 */ li $v1, -256 +/* 0BB8CC 800BACCC 24F80008 */ addiu $t8, $a3, 8 +/* 0BB8D0 800BACD0 AE380000 */ sw $t8, ($s1) +/* 0BB8D4 800BACD4 3C19FB00 */ lui $t9, 0xfb00 +/* 0BB8D8 800BACD8 ACF90000 */ sw $t9, ($a3) +/* 0BB8DC 800BACDC ACE30004 */ sw $v1, 4($a3) +.L800BACE0: +/* 0BB8E0 800BACE0 8FEE0028 */ lw $t6, 0x28($ra) +/* 0BB8E4 800BACE4 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0BB8E8 800BACE8 11C00007 */ beqz $t6, .L800BAD08 +/* 0BB8EC 800BACEC 3C0F800E */ lui $t7, %hi(D_800E30DC) # $t7, 0x800e +/* 0BB8F0 800BACF0 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 0BB8F4 800BACF4 4481A000 */ mtc1 $at, $f20 +/* 0BB8F8 800BACF8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0BB8FC 800BACFC 4481C000 */ mtc1 $at, $f24 +/* 0BB900 800BAD00 10000005 */ b .L800BAD18 +/* 0BB904 800BAD04 E7B400EC */ swc1 $f20, 0xec($sp) +.L800BAD08: +/* 0BB908 800BAD08 4481C000 */ mtc1 $at, $f24 +/* 0BB90C 800BAD0C 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 0BB910 800BAD10 4481A000 */ mtc1 $at, $f20 +/* 0BB914 800BAD14 E7B800EC */ swc1 $f24, 0xec($sp) +.L800BAD18: +/* 0BB918 800BAD18 8DEF30DC */ lw $t7, %lo(D_800E30DC)($t7) +/* 0BB91C 800BAD1C A7A000E8 */ sh $zero, 0xe8($sp) +/* 0BB920 800BAD20 A7A000E6 */ sh $zero, 0xe6($sp) +/* 0BB924 800BAD24 19E00146 */ blez $t7, .L800BB240 +/* 0BB928 800BAD28 A7A000E4 */ sh $zero, 0xe4($sp) +/* 0BB92C 800BAD2C 8FB800DC */ lw $t8, 0xdc($sp) +/* 0BB930 800BAD30 3C0E8013 */ lui $t6, %hi(D_8012A1E8) # $t6, 0x8013 +/* 0BB934 800BAD34 25CEA1E8 */ addiu $t6, %lo(D_8012A1E8) # addiu $t6, $t6, -0x5e18 +/* 0BB938 800BAD38 0018C840 */ sll $t9, $t8, 1 +/* 0BB93C 800BAD3C 032E8021 */ addu $s0, $t9, $t6 +/* 0BB940 800BAD40 3C17800E */ lui $s7, %hi(D_800E3080) # $s7, 0x800e +/* 0BB944 800BAD44 3C15800E */ lui $s5, %hi(D_800E3070) # $s5, 0x800e +/* 0BB948 800BAD48 3C138013 */ lui $s3, %hi(D_8012A018) # $s3, 0x8013 +/* 0BB94C 800BAD4C 4480B000 */ mtc1 $zero, $f22 +/* 0BB950 800BAD50 2673A018 */ addiu $s3, %lo(D_8012A018) # addiu $s3, $s3, -0x5fe8 +/* 0BB954 800BAD54 26B53070 */ addiu $s5, %lo(D_800E3070) # addiu $s5, $s5, 0x3070 +/* 0BB958 800BAD58 26F73080 */ addiu $s7, %lo(D_800E3080) # addiu $s7, $s7, 0x3080 +/* 0BB95C 800BAD5C AFB00074 */ sw $s0, 0x74($sp) +/* 0BB960 800BAD60 2416000A */ li $s6, 10 +/* 0BB964 800BAD64 3C140400 */ lui $s4, 0x400 +.L800BAD68: +/* 0BB968 800BAD68 8FEF004C */ lw $t7, 0x4c($ra) +/* 0BB96C 800BAD6C 8FB00074 */ lw $s0, 0x74($sp) +/* 0BB970 800BAD70 11E00008 */ beqz $t7, .L800BAD94 +/* 0BB974 800BAD74 00000000 */ nop +/* 0BB978 800BAD78 86040000 */ lh $a0, ($s0) +/* 0BB97C 800BAD7C 8FA50128 */ lw $a1, 0x128($sp) +/* 0BB980 800BAD80 0C02E4BD */ jal func_800B92F4 +/* 0BB984 800BAD84 00000000 */ nop +/* 0BB988 800BAD88 3C1F8013 */ lui $ra, %hi(D_80129FC8) # $ra, 0x8013 +/* 0BB98C 800BAD8C 10000007 */ b .L800BADAC +/* 0BB990 800BAD90 27FF9FC8 */ addiu $ra, %lo(D_80129FC8) # addiu $ra, $ra, -0x6038 +.L800BAD94: +/* 0BB994 800BAD94 86040000 */ lh $a0, ($s0) +/* 0BB998 800BAD98 8FA50128 */ lw $a1, 0x128($sp) +/* 0BB99C 800BAD9C 0C02E5EA */ jal func_800B97A8 +/* 0BB9A0 800BADA0 00000000 */ nop +/* 0BB9A4 800BADA4 3C1F8013 */ lui $ra, %hi(D_80129FC8) # $ra, 0x8013 +/* 0BB9A8 800BADA8 27FF9FC8 */ addiu $ra, %lo(D_80129FC8) # addiu $ra, $ra, -0x6038 +.L800BADAC: +/* 0BB9AC 800BADAC 86180000 */ lh $t8, ($s0) +/* 0BB9B0 800BADB0 3C0E800E */ lui $t6, %hi(D_800E30D8) # $t6, 0x800e +/* 0BB9B4 800BADB4 0018C8C0 */ sll $t9, $t8, 3 +/* 0BB9B8 800BADB8 8DCE30D8 */ lw $t6, %lo(D_800E30D8)($t6) +/* 0BB9BC 800BADBC 0338C823 */ subu $t9, $t9, $t8 +/* 0BB9C0 800BADC0 0019C880 */ sll $t9, $t9, 2 +/* 0BB9C4 800BADC4 032E1021 */ addu $v0, $t9, $t6 +/* 0BB9C8 800BADC8 844F0004 */ lh $t7, 4($v0) +/* 0BB9CC 800BADCC 3C0E800E */ lui $t6, %hi(D_800E30D4) # $t6, 0x800e +/* 0BB9D0 800BADD0 448F2000 */ mtc1 $t7, $f4 +/* 0BB9D4 800BADD4 8DCE30D4 */ lw $t6, %lo(D_800E30D4)($t6) +/* 0BB9D8 800BADD8 468021A0 */ cvt.s.w $f6, $f4 +/* 0BB9DC 800BADDC 3C058013 */ lui $a1, %hi(D_80129FC4) # $a1, 0x8013 +/* 0BB9E0 800BADE0 24A59FC4 */ addiu $a1, %lo(D_80129FC4) # addiu $a1, $a1, -0x603c +/* 0BB9E4 800BADE4 E7A600F0 */ swc1 $f6, 0xf0($sp) +/* 0BB9E8 800BADE8 84580006 */ lh $t8, 6($v0) +/* 0BB9EC 800BADEC 02202025 */ move $a0, $s1 +/* 0BB9F0 800BADF0 44984000 */ mtc1 $t8, $f8 +/* 0BB9F4 800BADF4 27A600E4 */ addiu $a2, $sp, 0xe4 +/* 0BB9F8 800BADF8 468042A0 */ cvt.s.w $f10, $f8 +/* 0BB9FC 800BADFC E7AA00F4 */ swc1 $f10, 0xf4($sp) +/* 0BBA00 800BAE00 84590008 */ lh $t9, 8($v0) +/* 0BBA04 800BAE04 00000000 */ nop +/* 0BBA08 800BAE08 44998000 */ mtc1 $t9, $f16 +/* 0BBA0C 800BAE0C 00000000 */ nop +/* 0BBA10 800BAE10 468084A0 */ cvt.s.w $f18, $f16 +/* 0BBA14 800BAE14 E7B200F8 */ swc1 $f18, 0xf8($sp) +/* 0BBA18 800BAE18 8C4F000C */ lw $t7, 0xc($v0) +/* 0BBA1C 800BAE1C 00000000 */ nop +/* 0BBA20 800BAE20 000FC080 */ sll $t8, $t7, 2 +/* 0BBA24 800BAE24 01D8C821 */ addu $t9, $t6, $t8 +/* 0BBA28 800BAE28 8F2F0000 */ lw $t7, ($t9) +/* 0BBA2C 800BAE2C 8FEE0028 */ lw $t6, 0x28($ra) +/* 0BBA30 800BAE30 AFAF0104 */ sw $t7, 0x104($sp) +/* 0BBA34 800BAE34 11C000A4 */ beqz $t6, .L800BB0C8 +/* 0BBA38 800BAE38 00000000 */ nop +/* 0BBA3C 800BAE3C AFA0011C */ sw $zero, 0x11c($sp) +/* 0BBA40 800BAE40 AFA200E0 */ sw $v0, 0xe0($sp) +/* 0BBA44 800BAE44 AFB00074 */ sw $s0, 0x74($sp) +.L800BAE48: +/* 0BBA48 800BAE48 8FA200E0 */ lw $v0, 0xe0($sp) +/* 0BBA4C 800BAE4C 0000F025 */ move $fp, $zero +/* 0BBA50 800BAE50 84580004 */ lh $t8, 4($v0) +/* 0BBA54 800BAE54 00000000 */ nop +/* 0BBA58 800BAE58 44982000 */ mtc1 $t8, $f4 +/* 0BBA5C 800BAE5C 00000000 */ nop +/* 0BBA60 800BAE60 468021A0 */ cvt.s.w $f6, $f4 +/* 0BBA64 800BAE64 E7A600F0 */ swc1 $f6, 0xf0($sp) +.L800BAE68: +/* 0BBA68 800BAE68 3C058013 */ lui $a1, %hi(D_80129FC4) # $a1, 0x8013 +/* 0BBA6C 800BAE6C 4407C000 */ mfc1 $a3, $f24 +/* 0BBA70 800BAE70 24A59FC4 */ addiu $a1, %lo(D_80129FC4) # addiu $a1, $a1, -0x603c +/* 0BBA74 800BAE74 02202025 */ move $a0, $s1 +/* 0BBA78 800BAE78 27A600E4 */ addiu $a2, $sp, 0xe4 +/* 0BBA7C 800BAE7C 0C01A521 */ jal func_80069484 +/* 0BBA80 800BAE80 E7B60010 */ swc1 $f22, 0x10($sp) +/* 0BBA84 800BAE84 8FA50104 */ lw $a1, 0x104($sp) +/* 0BBA88 800BAE88 3C1F8013 */ lui $ra, %hi(D_80129FC8) # $ra, 0x8013 +/* 0BBA8C 800BAE8C 30B900FF */ andi $t9, $a1, 0xff +/* 0BBA90 800BAE90 1320004B */ beqz $t9, .L800BAFC0 +/* 0BBA94 800BAE94 27FF9FC8 */ addiu $ra, %lo(D_80129FC8) # addiu $ra, $ra, -0x6038 +/* 0BBA98 800BAE98 8FE60000 */ lw $a2, ($ra) +/* 0BBA9C 800BAE9C 272FFFFF */ addiu $t7, $t9, -1 +/* 0BBAA0 800BAEA0 24C30001 */ addiu $v1, $a2, 1 +/* 0BBAA4 800BAEA4 01E30019 */ multu $t7, $v1 +/* 0BBAA8 800BAEA8 00031040 */ sll $v0, $v1, 1 +/* 0BBAAC 800BAEAC 0002C8C0 */ sll $t9, $v0, 3 +/* 0BBAB0 800BAEB0 03226021 */ addu $t4, $t9, $v0 +/* 0BBAB4 800BAEB4 244BFFFF */ addiu $t3, $v0, -1 +/* 0BBAB8 800BAEB8 000BC0C0 */ sll $t8, $t3, 3 +/* 0BBABC 800BAEBC 000C7840 */ sll $t7, $t4, 1 +/* 0BBAC0 800BAEC0 25EC0008 */ addiu $t4, $t7, 8 +/* 0BBAC4 800BAEC4 03005825 */ move $t3, $t8 +/* 0BBAC8 800BAEC8 00062040 */ sll $a0, $a2, 1 +/* 0BBACC 800BAECC 2498FFFF */ addiu $t8, $a0, -1 +/* 0BBAD0 800BAED0 0018C900 */ sll $t9, $t8, 4 +/* 0BBAD4 800BAED4 00007012 */ mflo $t6 +/* 0BBAD8 800BAED8 372F0001 */ ori $t7, $t9, 1 +/* 0BBADC 800BAEDC 3C010500 */ lui $at, 0x500 +/* 0BBAE0 800BAEE0 01C30019 */ multu $t6, $v1 +/* 0BBAE4 800BAEE4 318EFFFF */ andi $t6, $t4, 0xffff +/* 0BBAE8 800BAEE8 01C06025 */ move $t4, $t6 +/* 0BBAEC 800BAEEC 31EE00FF */ andi $t6, $t7, 0xff +/* 0BBAF0 800BAEF0 000EC400 */ sll $t8, $t6, 0x10 +/* 0BBAF4 800BAEF4 00047900 */ sll $t7, $a0, 4 +/* 0BBAF8 800BAEF8 31EEFFFF */ andi $t6, $t7, 0xffff +/* 0BBAFC 800BAEFC 0301C825 */ or $t9, $t8, $at +/* 0BBB00 800BAF00 032E6825 */ or $t5, $t9, $t6 +/* 0BBB04 800BAF04 00008025 */ move $s0, $zero +/* 0BBB08 800BAF08 00004012 */ mflo $t0 +/* 0BBB0C 800BAF0C 18C00052 */ blez $a2, .L800BB058 +/* 0BBB10 800BAF10 00000000 */ nop +.L800BAF14: +/* 0BBB14 800BAF14 01160019 */ multu $t0, $s6 +/* 0BBB18 800BAF18 8E780000 */ lw $t8, ($s3) +/* 0BBB1C 800BAF1C 8FAF0128 */ lw $t7, 0x128($sp) +/* 0BBB20 800BAF20 8E270000 */ lw $a3, ($s1) +/* 0BBB24 800BAF24 030F2021 */ addu $a0, $t8, $t7 +/* 0BBB28 800BAF28 0004C880 */ sll $t9, $a0, 2 +/* 0BBB2C 800BAF2C 02B97021 */ addu $t6, $s5, $t9 +/* 0BBB30 800BAF30 8DD80000 */ lw $t8, ($t6) +/* 0BBB34 800BAF34 02F9C821 */ addu $t9, $s7, $t9 +/* 0BBB38 800BAF38 8F2E0000 */ lw $t6, ($t9) +/* 0BBB3C 800BAF3C 00007812 */ mflo $t7 +/* 0BBB40 800BAF40 030F4821 */ addu $t1, $t8, $t7 +/* 0BBB44 800BAF44 0006C040 */ sll $t8, $a2, 1 +/* 0BBB48 800BAF48 02180019 */ multu $s0, $t8 +/* 0BBB4C 800BAF4C 01322821 */ addu $a1, $t1, $s2 +/* 0BBB50 800BAF50 24F80008 */ addiu $t8, $a3, 8 +/* 0BBB54 800BAF54 AE380000 */ sw $t8, ($s1) +/* 0BBB58 800BAF58 ACE50004 */ sw $a1, 4($a3) +/* 0BBB5C 800BAF5C 26100001 */ addiu $s0, $s0, 1 +/* 0BBB60 800BAF60 00007812 */ mflo $t7 +/* 0BBB64 800BAF64 000FC900 */ sll $t9, $t7, 4 +/* 0BBB68 800BAF68 30AF0006 */ andi $t7, $a1, 6 +/* 0BBB6C 800BAF6C 01D95021 */ addu $t2, $t6, $t9 +/* 0BBB70 800BAF70 016F7025 */ or $t6, $t3, $t7 +/* 0BBB74 800BAF74 31D900FF */ andi $t9, $t6, 0xff +/* 0BBB78 800BAF78 0019C400 */ sll $t8, $t9, 0x10 +/* 0BBB7C 800BAF7C 03147825 */ or $t7, $t8, $s4 +/* 0BBB80 800BAF80 01EC7025 */ or $t6, $t7, $t4 +/* 0BBB84 800BAF84 ACEE0000 */ sw $t6, ($a3) +/* 0BBB88 800BAF88 8E270000 */ lw $a3, ($s1) +/* 0BBB8C 800BAF8C 0152C021 */ addu $t8, $t2, $s2 +/* 0BBB90 800BAF90 24F90008 */ addiu $t9, $a3, 8 +/* 0BBB94 800BAF94 AE390000 */ sw $t9, ($s1) +/* 0BBB98 800BAF98 ACF80004 */ sw $t8, 4($a3) +/* 0BBB9C 800BAF9C ACED0000 */ sw $t5, ($a3) +/* 0BBBA0 800BAFA0 8FE60000 */ lw $a2, ($ra) +/* 0BBBA4 800BAFA4 00000000 */ nop +/* 0BBBA8 800BAFA8 0206082A */ slt $at, $s0, $a2 +/* 0BBBAC 800BAFAC 01064021 */ addu $t0, $t0, $a2 +/* 0BBBB0 800BAFB0 1420FFD8 */ bnez $at, .L800BAF14 +/* 0BBBB4 800BAFB4 25080001 */ addiu $t0, $t0, 1 +/* 0BBBB8 800BAFB8 10000027 */ b .L800BB058 +/* 0BBBBC 800BAFBC 00000000 */ nop +.L800BAFC0: +/* 0BBBC0 800BAFC0 8E6E0000 */ lw $t6, ($s3) +/* 0BBBC4 800BAFC4 24050028 */ li $a1, 40 +/* 0BBBC8 800BAFC8 01C50019 */ multu $t6, $a1 +/* 0BBBCC 800BAFCC 8E270000 */ lw $a3, ($s1) +/* 0BBBD0 800BAFD0 3C048013 */ lui $a0, %hi(D_8012A028) # $a0, 0x8013 +/* 0BBBD4 800BAFD4 2484A028 */ addiu $a0, %lo(D_8012A028) # addiu $a0, $a0, -0x5fd8 +/* 0BBBD8 800BAFD8 24EF0008 */ addiu $t7, $a3, 8 +/* 0BBBDC 800BAFDC AE2F0000 */ sw $t7, ($s1) +/* 0BBBE0 800BAFE0 0000C812 */ mflo $t9 +/* 0BBBE4 800BAFE4 0099C021 */ addu $t8, $a0, $t9 +/* 0BBBE8 800BAFE8 03127821 */ addu $t7, $t8, $s2 +/* 0BBBEC 800BAFEC 31EE0006 */ andi $t6, $t7, 6 +/* 0BBBF0 800BAFF0 35D90018 */ ori $t9, $t6, 0x18 +/* 0BBBF4 800BAFF4 333800FF */ andi $t8, $t9, 0xff +/* 0BBBF8 800BAFF8 00187C00 */ sll $t7, $t8, 0x10 +/* 0BBBFC 800BAFFC 01F47025 */ or $t6, $t7, $s4 +/* 0BBC00 800BB000 35D90050 */ ori $t9, $t6, 0x50 +/* 0BBC04 800BB004 ACF90000 */ sw $t9, ($a3) +/* 0BBC08 800BB008 8E780000 */ lw $t8, ($s3) +/* 0BBC0C 800BB00C 00000000 */ nop +/* 0BBC10 800BB010 03050019 */ multu $t8, $a1 +/* 0BBC14 800BB014 00007812 */ mflo $t7 +/* 0BBC18 800BB018 008F7021 */ addu $t6, $a0, $t7 +/* 0BBC1C 800BB01C 01D2C821 */ addu $t9, $t6, $s2 +/* 0BBC20 800BB020 ACF90004 */ sw $t9, 4($a3) +/* 0BBC24 800BB024 8E270000 */ lw $a3, ($s1) +/* 0BBC28 800BB028 3C0F0511 */ lui $t7, (0x05110020 >> 16) # lui $t7, 0x511 +/* 0BBC2C 800BB02C 24F80008 */ addiu $t8, $a3, 8 +/* 0BBC30 800BB030 AE380000 */ sw $t8, ($s1) +/* 0BBC34 800BB034 35EF0020 */ ori $t7, (0x05110020 & 0xFFFF) # ori $t7, $t7, 0x20 +/* 0BBC38 800BB038 ACEF0000 */ sw $t7, ($a3) +/* 0BBC3C 800BB03C 8E790000 */ lw $t9, ($s3) +/* 0BBC40 800BB040 3C0E800E */ lui $t6, %hi(D_800E3090) # $t6, 0x800e +/* 0BBC44 800BB044 0019C140 */ sll $t8, $t9, 5 +/* 0BBC48 800BB048 03127821 */ addu $t7, $t8, $s2 +/* 0BBC4C 800BB04C 25CE3090 */ addiu $t6, %lo(D_800E3090) # addiu $t6, $t6, 0x3090 +/* 0BBC50 800BB050 01EEC821 */ addu $t9, $t7, $t6 +/* 0BBC54 800BB054 ACF90004 */ sw $t9, 4($a3) +.L800BB058: +/* 0BBC58 800BB058 0C01A690 */ jal func_80069A40 +/* 0BBC5C 800BB05C 02202025 */ move $a0, $s1 +/* 0BBC60 800BB060 3C018013 */ lui $at, %hi(D_8012A0A0) # $at, 0x8013 +/* 0BBC64 800BB064 C42AA0A0 */ lwc1 $f10, %lo(D_8012A0A0)($at) +/* 0BBC68 800BB068 8FB80104 */ lw $t8, 0x104($sp) +/* 0BBC6C 800BB06C 46145402 */ mul.s $f16, $f10, $f20 +/* 0BBC70 800BB070 C7A800F0 */ lwc1 $f8, 0xf0($sp) +/* 0BBC74 800BB074 27DE0001 */ addiu $fp, $fp, 1 +/* 0BBC78 800BB078 24030002 */ li $v1, 2 +/* 0BBC7C 800BB07C 46104480 */ add.s $f18, $f8, $f16 +/* 0BBC80 800BB080 3C1F8013 */ lui $ra, %hi(D_80129FC8) # $ra, 0x8013 +/* 0BBC84 800BB084 00187A03 */ sra $t7, $t8, 8 +/* 0BBC88 800BB088 27FF9FC8 */ addiu $ra, %lo(D_80129FC8) # addiu $ra, $ra, -0x6038 +/* 0BBC8C 800BB08C AFAF0104 */ sw $t7, 0x104($sp) +/* 0BBC90 800BB090 17C3FF75 */ bne $fp, $v1, .L800BAE68 +/* 0BBC94 800BB094 E7B200F0 */ swc1 $f18, 0xf0($sp) +/* 0BBC98 800BB098 3C018013 */ lui $at, %hi(D_8012A0A4) # $at, 0x8013 +/* 0BBC9C 800BB09C C426A0A4 */ lwc1 $f6, %lo(D_8012A0A4)($at) +/* 0BBCA0 800BB0A0 8FA2011C */ lw $v0, 0x11c($sp) +/* 0BBCA4 800BB0A4 46143282 */ mul.s $f10, $f6, $f20 +/* 0BBCA8 800BB0A8 C7A400F8 */ lwc1 $f4, 0xf8($sp) +/* 0BBCAC 800BB0AC 24420001 */ addiu $v0, $v0, 1 +/* 0BBCB0 800BB0B0 AFA2011C */ sw $v0, 0x11c($sp) +/* 0BBCB4 800BB0B4 460A2200 */ add.s $f8, $f4, $f10 +/* 0BBCB8 800BB0B8 1443FF63 */ bne $v0, $v1, .L800BAE48 +/* 0BBCBC 800BB0BC E7A800F8 */ swc1 $f8, 0xf8($sp) +/* 0BBCC0 800BB0C0 10000056 */ b .L800BB21C +/* 0BBCC4 800BB0C4 8FAE00DC */ lw $t6, 0xdc($sp) +.L800BB0C8: +/* 0BBCC8 800BB0C8 AFB00074 */ sw $s0, 0x74($sp) +/* 0BBCCC 800BB0CC 4407C000 */ mfc1 $a3, $f24 +/* 0BBCD0 800BB0D0 00008025 */ move $s0, $zero +/* 0BBCD4 800BB0D4 0C01A521 */ jal func_80069484 +/* 0BBCD8 800BB0D8 E7B60010 */ swc1 $f22, 0x10($sp) +/* 0BBCDC 800BB0DC 3C1F8013 */ lui $ra, %hi(D_80129FC8) # $ra, 0x8013 +/* 0BBCE0 800BB0E0 8FAE0104 */ lw $t6, 0x104($sp) +/* 0BBCE4 800BB0E4 27FF9FC8 */ addiu $ra, %lo(D_80129FC8) # addiu $ra, $ra, -0x6038 +/* 0BBCE8 800BB0E8 8FE60000 */ lw $a2, ($ra) +/* 0BBCEC 800BB0EC 31D900FF */ andi $t9, $t6, 0xff +/* 0BBCF0 800BB0F0 2738FFFF */ addiu $t8, $t9, -1 +/* 0BBCF4 800BB0F4 24C30001 */ addiu $v1, $a2, 1 +/* 0BBCF8 800BB0F8 03030019 */ multu $t8, $v1 +/* 0BBCFC 800BB0FC 00031040 */ sll $v0, $v1, 1 +/* 0BBD00 800BB100 0002C8C0 */ sll $t9, $v0, 3 +/* 0BBD04 800BB104 03226021 */ addu $t4, $t9, $v0 +/* 0BBD08 800BB108 244BFFFF */ addiu $t3, $v0, -1 +/* 0BBD0C 800BB10C 000B70C0 */ sll $t6, $t3, 3 +/* 0BBD10 800BB110 000CC040 */ sll $t8, $t4, 1 +/* 0BBD14 800BB114 270C0008 */ addiu $t4, $t8, 8 +/* 0BBD18 800BB118 01C05825 */ move $t3, $t6 +/* 0BBD1C 800BB11C 00062040 */ sll $a0, $a2, 1 +/* 0BBD20 800BB120 248EFFFF */ addiu $t6, $a0, -1 +/* 0BBD24 800BB124 000EC900 */ sll $t9, $t6, 4 +/* 0BBD28 800BB128 00007812 */ mflo $t7 +/* 0BBD2C 800BB12C 37380001 */ ori $t8, $t9, 1 +/* 0BBD30 800BB130 3C010500 */ lui $at, 0x500 +/* 0BBD34 800BB134 01E30019 */ multu $t7, $v1 +/* 0BBD38 800BB138 318FFFFF */ andi $t7, $t4, 0xffff +/* 0BBD3C 800BB13C 01E06025 */ move $t4, $t7 +/* 0BBD40 800BB140 330F00FF */ andi $t7, $t8, 0xff +/* 0BBD44 800BB144 000F7400 */ sll $t6, $t7, 0x10 +/* 0BBD48 800BB148 0004C100 */ sll $t8, $a0, 4 +/* 0BBD4C 800BB14C 330FFFFF */ andi $t7, $t8, 0xffff +/* 0BBD50 800BB150 01C1C825 */ or $t9, $t6, $at +/* 0BBD54 800BB154 00004012 */ mflo $t0 +/* 0BBD58 800BB158 18C0002B */ blez $a2, .L800BB208 +/* 0BBD5C 800BB15C 00000000 */ nop +/* 0BBD60 800BB160 8FBE0128 */ lw $fp, 0x128($sp) +/* 0BBD64 800BB164 032F6825 */ or $t5, $t9, $t7 +.L800BB168: +/* 0BBD68 800BB168 01160019 */ multu $t0, $s6 +/* 0BBD6C 800BB16C 8E6E0000 */ lw $t6, ($s3) +/* 0BBD70 800BB170 8E270000 */ lw $a3, ($s1) +/* 0BBD74 800BB174 01DE2021 */ addu $a0, $t6, $fp +/* 0BBD78 800BB178 0004C080 */ sll $t8, $a0, 2 +/* 0BBD7C 800BB17C 02B8C821 */ addu $t9, $s5, $t8 +/* 0BBD80 800BB180 8F2F0000 */ lw $t7, ($t9) +/* 0BBD84 800BB184 02F8C021 */ addu $t8, $s7, $t8 +/* 0BBD88 800BB188 8F190000 */ lw $t9, ($t8) +/* 0BBD8C 800BB18C 00007012 */ mflo $t6 +/* 0BBD90 800BB190 01EE4821 */ addu $t1, $t7, $t6 +/* 0BBD94 800BB194 00067840 */ sll $t7, $a2, 1 +/* 0BBD98 800BB198 020F0019 */ multu $s0, $t7 +/* 0BBD9C 800BB19C 01322821 */ addu $a1, $t1, $s2 +/* 0BBDA0 800BB1A0 24EF0008 */ addiu $t7, $a3, 8 +/* 0BBDA4 800BB1A4 AE2F0000 */ sw $t7, ($s1) +/* 0BBDA8 800BB1A8 ACE50004 */ sw $a1, 4($a3) +/* 0BBDAC 800BB1AC 26100001 */ addiu $s0, $s0, 1 +/* 0BBDB0 800BB1B0 00007012 */ mflo $t6 +/* 0BBDB4 800BB1B4 000EC100 */ sll $t8, $t6, 4 +/* 0BBDB8 800BB1B8 30AE0006 */ andi $t6, $a1, 6 +/* 0BBDBC 800BB1BC 03385021 */ addu $t2, $t9, $t8 +/* 0BBDC0 800BB1C0 016EC825 */ or $t9, $t3, $t6 +/* 0BBDC4 800BB1C4 333800FF */ andi $t8, $t9, 0xff +/* 0BBDC8 800BB1C8 00187C00 */ sll $t7, $t8, 0x10 +/* 0BBDCC 800BB1CC 01F47025 */ or $t6, $t7, $s4 +/* 0BBDD0 800BB1D0 01CCC825 */ or $t9, $t6, $t4 +/* 0BBDD4 800BB1D4 ACF90000 */ sw $t9, ($a3) +/* 0BBDD8 800BB1D8 8E270000 */ lw $a3, ($s1) +/* 0BBDDC 800BB1DC 01527821 */ addu $t7, $t2, $s2 +/* 0BBDE0 800BB1E0 24F80008 */ addiu $t8, $a3, 8 +/* 0BBDE4 800BB1E4 AE380000 */ sw $t8, ($s1) +/* 0BBDE8 800BB1E8 ACEF0004 */ sw $t7, 4($a3) +/* 0BBDEC 800BB1EC ACED0000 */ sw $t5, ($a3) +/* 0BBDF0 800BB1F0 8FE60000 */ lw $a2, ($ra) +/* 0BBDF4 800BB1F4 00000000 */ nop +/* 0BBDF8 800BB1F8 0206082A */ slt $at, $s0, $a2 +/* 0BBDFC 800BB1FC 01064021 */ addu $t0, $t0, $a2 +/* 0BBE00 800BB200 1420FFD9 */ bnez $at, .L800BB168 +/* 0BBE04 800BB204 25080001 */ addiu $t0, $t0, 1 +.L800BB208: +/* 0BBE08 800BB208 0C01A690 */ jal func_80069A40 +/* 0BBE0C 800BB20C 02202025 */ move $a0, $s1 +/* 0BBE10 800BB210 3C1F8013 */ lui $ra, %hi(D_80129FC8) # $ra, 0x8013 +/* 0BBE14 800BB214 27FF9FC8 */ addiu $ra, %lo(D_80129FC8) # addiu $ra, $ra, -0x6038 +/* 0BBE18 800BB218 8FAE00DC */ lw $t6, 0xdc($sp) +.L800BB21C: +/* 0BBE1C 800BB21C 8FB80074 */ lw $t8, 0x74($sp) +/* 0BBE20 800BB220 25D90001 */ addiu $t9, $t6, 1 +/* 0BBE24 800BB224 3C0E800E */ lui $t6, %hi(D_800E30DC) # $t6, 0x800e +/* 0BBE28 800BB228 8DCE30DC */ lw $t6, %lo(D_800E30DC)($t6) +/* 0BBE2C 800BB22C 270F0002 */ addiu $t7, $t8, 2 +/* 0BBE30 800BB230 032E082A */ slt $at, $t9, $t6 +/* 0BBE34 800BB234 AFAF0074 */ sw $t7, 0x74($sp) +/* 0BBE38 800BB238 1420FECB */ bnez $at, .L800BAD68 +/* 0BBE3C 800BB23C AFB900DC */ sw $t9, 0xdc($sp) +.L800BB240: +/* 0BBE40 800BB240 8FF8004C */ lw $t8, 0x4c($ra) +/* 0BBE44 800BB244 3C19B700 */ lui $t9, 0xb700 +/* 0BBE48 800BB248 1300000E */ beqz $t8, .L800BB284 +/* 0BBE4C 800BB24C 00000000 */ nop +/* 0BBE50 800BB250 8E270000 */ lw $a3, ($s1) +/* 0BBE54 800BB254 3C0E0001 */ lui $t6, 1 +/* 0BBE58 800BB258 24EF0008 */ addiu $t7, $a3, 8 +/* 0BBE5C 800BB25C AE2F0000 */ sw $t7, ($s1) +/* 0BBE60 800BB260 ACEE0004 */ sw $t6, 4($a3) +/* 0BBE64 800BB264 ACF90000 */ sw $t9, ($a3) +/* 0BBE68 800BB268 8E270000 */ lw $a3, ($s1) +/* 0BBE6C 800BB26C 2419FFFF */ li $t9, -1 +/* 0BBE70 800BB270 24F80008 */ addiu $t8, $a3, 8 +/* 0BBE74 800BB274 AE380000 */ sw $t8, ($s1) +/* 0BBE78 800BB278 3C0FFA00 */ lui $t7, 0xfa00 +/* 0BBE7C 800BB27C ACEF0000 */ sw $t7, ($a3) +/* 0BBE80 800BB280 ACF90004 */ sw $t9, 4($a3) +.L800BB284: +/* 0BBE84 800BB284 8E2E0000 */ lw $t6, ($s1) +/* 0BBE88 800BB288 8FB80120 */ lw $t8, 0x120($sp) +/* 0BBE8C 800BB28C 3C0F8013 */ lui $t7, %hi(D_80129FC4) # $t7, 0x8013 +/* 0BBE90 800BB290 AF0E0000 */ sw $t6, ($t8) +/* 0BBE94 800BB294 8FB90124 */ lw $t9, 0x124($sp) +/* 0BBE98 800BB298 8DEF9FC4 */ lw $t7, %lo(D_80129FC4)($t7) +/* 0BBE9C 800BB29C 00000000 */ nop +/* 0BBEA0 800BB2A0 AF2F0000 */ sw $t7, ($t9) +.L800BB2A4: +/* 0BBEA4 800BB2A4 8FBF005C */ lw $ra, 0x5c($sp) +/* 0BBEA8 800BB2A8 3C01800E */ lui $at, %hi(D_800E30DC) # $at, 0x800e +/* 0BBEAC 800BB2AC C7B50020 */ lwc1 $f21, 0x20($sp) +/* 0BBEB0 800BB2B0 C7B40024 */ lwc1 $f20, 0x24($sp) +/* 0BBEB4 800BB2B4 C7B70028 */ lwc1 $f23, 0x28($sp) +/* 0BBEB8 800BB2B8 C7B6002C */ lwc1 $f22, 0x2c($sp) +/* 0BBEBC 800BB2BC C7B90030 */ lwc1 $f25, 0x30($sp) +/* 0BBEC0 800BB2C0 C7B80034 */ lwc1 $f24, 0x34($sp) +/* 0BBEC4 800BB2C4 8FB00038 */ lw $s0, 0x38($sp) +/* 0BBEC8 800BB2C8 8FB1003C */ lw $s1, 0x3c($sp) +/* 0BBECC 800BB2CC 8FB20040 */ lw $s2, 0x40($sp) +/* 0BBED0 800BB2D0 8FB30044 */ lw $s3, 0x44($sp) +/* 0BBED4 800BB2D4 8FB40048 */ lw $s4, 0x48($sp) +/* 0BBED8 800BB2D8 8FB5004C */ lw $s5, 0x4c($sp) +/* 0BBEDC 800BB2DC 8FB60050 */ lw $s6, 0x50($sp) +/* 0BBEE0 800BB2E0 8FB70054 */ lw $s7, 0x54($sp) +/* 0BBEE4 800BB2E4 8FBE0058 */ lw $fp, 0x58($sp) +/* 0BBEE8 800BB2E8 AC2030DC */ sw $zero, %lo(D_800E30DC)($at) +/* 0BBEEC 800BB2EC 03E00008 */ jr $ra +/* 0BBEF0 800BB2F0 27BD0120 */ addiu $sp, $sp, 0x120 + diff --git a/asm/non_matchings/unknown_0B8920/func_800BB2F4.s b/asm/non_matchings/unknown_0B8920/func_800BB2F4.s new file mode 100644 index 00000000..b7cfc38c --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800BB2F4.s @@ -0,0 +1,741 @@ +glabel func_800BB2F4 +/* 0BBEF4 800BB2F4 27BDFF58 */ addiu $sp, $sp, -0xa8 +/* 0BBEF8 800BB2F8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0BBEFC 800BB2FC AFA400A8 */ sw $a0, 0xa8($sp) +/* 0BBF00 800BB300 AFA500AC */ sw $a1, 0xac($sp) +/* 0BBF04 800BB304 AFA600B0 */ sw $a2, 0xb0($sp) +/* 0BBF08 800BB308 04800007 */ bltz $a0, .L800BB328 +/* 0BBF0C 800BB30C AFA700B4 */ sw $a3, 0xb4($sp) +/* 0BBF10 800BB310 3C0F8013 */ lui $t7, %hi(D_8012A0E0) # $t7, 0x8013 +/* 0BBF14 800BB314 8DEFA0E0 */ lw $t7, %lo(D_8012A0E0)($t7) +/* 0BBF18 800BB318 00000000 */ nop +/* 0BBF1C 800BB31C 008F082A */ slt $at, $a0, $t7 +/* 0BBF20 800BB320 14200003 */ bnez $at, .L800BB330 +/* 0BBF24 800BB324 8FB800A8 */ lw $t8, 0xa8($sp) +.L800BB328: +/* 0BBF28 800BB328 AFA000A8 */ sw $zero, 0xa8($sp) +/* 0BBF2C 800BB32C 8FB800A8 */ lw $t8, 0xa8($sp) +.L800BB330: +/* 0BBF30 800BB330 3C19800E */ lui $t9, %hi(D_800E30D8) # $t9, 0x800e +/* 0BBF34 800BB334 001870C0 */ sll $t6, $t8, 3 +/* 0BBF38 800BB338 8F3930D8 */ lw $t9, %lo(D_800E30D8)($t9) +/* 0BBF3C 800BB33C 01D87023 */ subu $t6, $t6, $t8 +/* 0BBF40 800BB340 000E7080 */ sll $t6, $t6, 2 +/* 0BBF44 800BB344 032E2821 */ addu $a1, $t9, $t6 +/* 0BBF48 800BB348 3C19800E */ lui $t9, %hi(D_800E317C) # $t9, 0x800e +/* 0BBF4C 800BB34C 8F39317C */ lw $t9, %lo(D_800E317C)($t9) +/* 0BBF50 800BB350 84AF0006 */ lh $t7, 6($a1) +/* 0BBF54 800BB354 03190019 */ multu $t8, $t9 +/* 0BBF58 800BB358 448F5000 */ mtc1 $t7, $f10 +/* 0BBF5C 800BB35C 3C018013 */ lui $at, %hi(D_8012A0BC) # $at, 0x8013 +/* 0BBF60 800BB360 46805120 */ cvt.s.w $f4, $f10 +/* 0BBF64 800BB364 C426A0BC */ lwc1 $f6, %lo(D_8012A0BC)($at) +/* 0BBF68 800BB368 3C018013 */ li $at, 0x80130000 # -0.000000 +/* 0BBF6C 800BB36C C428A0B8 */ lwc1 $f8, %lo(D_8012A0B8)($at) +/* 0BBF70 800BB370 3C098013 */ lui $t1, %hi(D_80129FC8) # $t1, 0x8013 +/* 0BBF74 800BB374 25299FC8 */ addiu $t1, %lo(D_80129FC8) # addiu $t1, $t1, -0x6038 +/* 0BBF78 800BB378 E7A40078 */ swc1 $f4, 0x78($sp) +/* 0BBF7C 800BB37C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0BBF80 800BB380 44815000 */ mtc1 $at, $f10 +/* 0BBF84 800BB384 C5240044 */ lwc1 $f4, 0x44($t1) +/* 0BBF88 800BB388 3C0142FE */ li $at, 0x42FE0000 # 127.000000 +/* 0BBF8C 800BB38C 46045281 */ sub.s $f10, $f10, $f4 +/* 0BBF90 800BB390 44812000 */ mtc1 $at, $f4 +/* 0BBF94 800BB394 8D2F0028 */ lw $t7, 0x28($t1) +/* 0BBF98 800BB398 00007012 */ mflo $t6 +/* 0BBF9C 800BB39C AFAE0058 */ sw $t6, 0x58($sp) +/* 0BBFA0 800BB3A0 E7A60090 */ swc1 $f6, 0x90($sp) +/* 0BBFA4 800BB3A4 E7A80094 */ swc1 $f8, 0x94($sp) +/* 0BBFA8 800BB3A8 11E0000D */ beqz $t7, .L800BB3E0 +/* 0BBFAC 800BB3AC 46045403 */ div.s $f16, $f10, $f4 +/* 0BBFB0 800BB3B0 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 0BBFB4 800BB3B4 44815000 */ mtc1 $at, $f10 +/* 0BBFB8 800BB3B8 8D380000 */ lw $t8, ($t1) +/* 0BBFBC 800BB3BC 460A3102 */ mul.s $f4, $f6, $f10 +/* 0BBFC0 800BB3C0 44813000 */ mtc1 $at, $f6 +/* 0BBFC4 800BB3C4 0018C840 */ sll $t9, $t8, 1 +/* 0BBFC8 800BB3C8 272E0001 */ addiu $t6, $t9, 1 +/* 0BBFCC 800BB3CC 46064282 */ mul.s $f10, $f8, $f6 +/* 0BBFD0 800BB3D0 E7A40090 */ swc1 $f4, 0x90($sp) +/* 0BBFD4 800BB3D4 AFAE0060 */ sw $t6, 0x60($sp) +/* 0BBFD8 800BB3D8 10000005 */ b .L800BB3F0 +/* 0BBFDC 800BB3DC E7AA0094 */ swc1 $f10, 0x94($sp) +.L800BB3E0: +/* 0BBFE0 800BB3E0 8D2F0000 */ lw $t7, ($t1) +/* 0BBFE4 800BB3E4 00000000 */ nop +/* 0BBFE8 800BB3E8 25F80001 */ addiu $t8, $t7, 1 +/* 0BBFEC 800BB3EC AFB80060 */ sw $t8, 0x60($sp) +.L800BB3F0: +/* 0BBFF0 800BB3F0 84B90004 */ lh $t9, 4($a1) +/* 0BBFF4 800BB3F4 C7A400AC */ lwc1 $f4, 0xac($sp) +/* 0BBFF8 800BB3F8 44994000 */ mtc1 $t9, $f8 +/* 0BBFFC 800BB3FC 3C018013 */ lui $at, %hi(D_8012A0A0) # $at, 0x8013 +/* 0BC000 800BB400 468041A0 */ cvt.s.w $f6, $f8 +/* 0BC004 800BB404 44804000 */ mtc1 $zero, $f8 +/* 0BC008 800BB408 46062281 */ sub.s $f10, $f4, $f6 +/* 0BC00C 800BB40C 4608503C */ c.lt.s $f10, $f8 +/* 0BC010 800BB410 E7AA00AC */ swc1 $f10, 0xac($sp) +/* 0BC014 800BB414 45000004 */ bc1f .L800BB428 +/* 0BC018 800BB418 00000000 */ nop +/* 0BC01C 800BB41C 44802000 */ mtc1 $zero, $f4 +/* 0BC020 800BB420 1000000C */ b .L800BB454 +/* 0BC024 800BB424 E7A400AC */ swc1 $f4, 0xac($sp) +.L800BB428: +/* 0BC028 800BB428 C420A0A0 */ lwc1 $f0, %lo(D_8012A0A0)($at) +/* 0BC02C 800BB42C C7A600AC */ lwc1 $f6, 0xac($sp) +/* 0BC030 800BB430 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0BC034 800BB434 4606003E */ c.le.s $f0, $f6 +/* 0BC038 800BB438 00000000 */ nop +/* 0BC03C 800BB43C 45000005 */ bc1f .L800BB454 +/* 0BC040 800BB440 00000000 */ nop +/* 0BC044 800BB444 44815000 */ mtc1 $at, $f10 +/* 0BC048 800BB448 00000000 */ nop +/* 0BC04C 800BB44C 460A0201 */ sub.s $f8, $f0, $f10 +/* 0BC050 800BB450 E7A800AC */ swc1 $f8, 0xac($sp) +.L800BB454: +/* 0BC054 800BB454 84AE0008 */ lh $t6, 8($a1) +/* 0BC058 800BB458 C7A400B0 */ lwc1 $f4, 0xb0($sp) +/* 0BC05C 800BB45C 448E3000 */ mtc1 $t6, $f6 +/* 0BC060 800BB460 3C018013 */ lui $at, %hi(D_8012A0A4) # $at, 0x8013 +/* 0BC064 800BB464 468032A0 */ cvt.s.w $f10, $f6 +/* 0BC068 800BB468 44803000 */ mtc1 $zero, $f6 +/* 0BC06C 800BB46C 460A2201 */ sub.s $f8, $f4, $f10 +/* 0BC070 800BB470 4606403C */ c.lt.s $f8, $f6 +/* 0BC074 800BB474 E7A800B0 */ swc1 $f8, 0xb0($sp) +/* 0BC078 800BB478 45000004 */ bc1f .L800BB48C +/* 0BC07C 800BB47C 00000000 */ nop +/* 0BC080 800BB480 44802000 */ mtc1 $zero, $f4 +/* 0BC084 800BB484 1000000C */ b .L800BB4B8 +/* 0BC088 800BB488 E7A400B0 */ swc1 $f4, 0xb0($sp) +.L800BB48C: +/* 0BC08C 800BB48C C420A0A4 */ lwc1 $f0, %lo(D_8012A0A4)($at) +/* 0BC090 800BB490 C7AA00B0 */ lwc1 $f10, 0xb0($sp) +/* 0BC094 800BB494 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0BC098 800BB498 460A003E */ c.le.s $f0, $f10 +/* 0BC09C 800BB49C 00000000 */ nop +/* 0BC0A0 800BB4A0 45000005 */ bc1f .L800BB4B8 +/* 0BC0A4 800BB4A4 00000000 */ nop +/* 0BC0A8 800BB4A8 44814000 */ mtc1 $at, $f8 +/* 0BC0AC 800BB4AC 00000000 */ nop +/* 0BC0B0 800BB4B0 46080181 */ sub.s $f6, $f0, $f8 +/* 0BC0B4 800BB4B4 E7A600B0 */ swc1 $f6, 0xb0($sp) +.L800BB4B8: +/* 0BC0B8 800BB4B8 C7A400AC */ lwc1 $f4, 0xac($sp) +/* 0BC0BC 800BB4BC C7AA0094 */ lwc1 $f10, 0x94($sp) +/* 0BC0C0 800BB4C0 E7A40018 */ swc1 $f4, 0x18($sp) +/* 0BC0C4 800BB4C4 460A2203 */ div.s $f8, $f4, $f10 +/* 0BC0C8 800BB4C8 8D230004 */ lw $v1, 4($t1) +/* 0BC0CC 800BB4CC 3C0A800E */ lui $t2, 0x800e +/* 0BC0D0 800BB4D0 444FF800 */ cfc1 $t7, $31 +/* 0BC0D4 800BB4D4 00000000 */ nop +/* 0BC0D8 800BB4D8 35E10003 */ ori $at, $t7, 3 +/* 0BC0DC 800BB4DC 38210002 */ xori $at, $at, 2 +/* 0BC0E0 800BB4E0 44C1F800 */ ctc1 $at, $31 +/* 0BC0E4 800BB4E4 00000000 */ nop +/* 0BC0E8 800BB4E8 460041A4 */ cvt.w.s $f6, $f8 +/* 0BC0EC 800BB4EC C7A800B0 */ lwc1 $f8, 0xb0($sp) +/* 0BC0F0 800BB4F0 44023000 */ mfc1 $v0, $f6 +/* 0BC0F4 800BB4F4 44CFF800 */ ctc1 $t7, $31 +/* 0BC0F8 800BB4F8 C7A60090 */ lwc1 $f6, 0x90($sp) +/* 0BC0FC 800BB4FC AFA20070 */ sw $v0, 0x70($sp) +/* 0BC100 800BB500 46064103 */ div.s $f4, $f8, $f6 +/* 0BC104 800BB504 4458F800 */ cfc1 $t8, $31 +/* 0BC108 800BB508 00000000 */ nop +/* 0BC10C 800BB50C 37010003 */ ori $at, $t8, 3 +/* 0BC110 800BB510 38210002 */ xori $at, $at, 2 +/* 0BC114 800BB514 44C1F800 */ ctc1 $at, $31 +/* 0BC118 800BB518 00000000 */ nop +/* 0BC11C 800BB51C 46002124 */ cvt.w.s $f4, $f4 +/* 0BC120 800BB520 44042000 */ mfc1 $a0, $f4 +/* 0BC124 800BB524 44822000 */ mtc1 $v0, $f4 +/* 0BC128 800BB528 44D8F800 */ ctc1 $t8, $31 +/* 0BC12C 800BB52C AFA4006C */ sw $a0, 0x6c($sp) +/* 0BC130 800BB530 46802120 */ cvt.s.w $f4, $f4 +/* 0BC134 800BB534 8FB8006C */ lw $t8, 0x6c($sp) +/* 0BC138 800BB538 460A2102 */ mul.s $f4, $f4, $f10 +/* 0BC13C 800BB53C C7AA0018 */ lwc1 $f10, 0x18($sp) +/* 0BC140 800BB540 00000000 */ nop +/* 0BC144 800BB544 46045281 */ sub.s $f10, $f10, $f4 +/* 0BC148 800BB548 44842000 */ mtc1 $a0, $f4 +/* 0BC14C 800BB54C E7AA00AC */ swc1 $f10, 0xac($sp) +/* 0BC150 800BB550 468022A0 */ cvt.s.w $f10, $f4 +/* 0BC154 800BB554 46065102 */ mul.s $f4, $f10, $f6 +/* 0BC158 800BB558 46044281 */ sub.s $f10, $f8, $f4 +/* 0BC15C 800BB55C C7A80090 */ lwc1 $f8, 0x90($sp) +/* 0BC160 800BB560 E7AA00B0 */ swc1 $f10, 0xb0($sp) +/* 0BC164 800BB564 84B90012 */ lh $t9, 0x12($a1) +/* 0BC168 800BB568 C7A600B0 */ lwc1 $f6, 0xb0($sp) +/* 0BC16C 800BB56C 03224021 */ addu $t0, $t9, $v0 +/* 0BC170 800BB570 0103082A */ slt $at, $t0, $v1 +/* 0BC174 800BB574 14200005 */ bnez $at, .L800BB58C +/* 0BC178 800BB578 00000000 */ nop +.L800BB57C: +/* 0BC17C 800BB57C 01034023 */ subu $t0, $t0, $v1 +/* 0BC180 800BB580 0103082A */ slt $at, $t0, $v1 +/* 0BC184 800BB584 1020FFFD */ beqz $at, .L800BB57C +/* 0BC188 800BB588 00000000 */ nop +.L800BB58C: +/* 0BC18C 800BB58C 84AF0010 */ lh $t7, 0x10($a1) +/* 0BC190 800BB590 251F0001 */ addiu $ra, $t0, 1 +/* 0BC194 800BB594 01F83821 */ addu $a3, $t7, $t8 +/* 0BC198 800BB598 00E3082A */ slt $at, $a3, $v1 +/* 0BC19C 800BB59C 14200005 */ bnez $at, .L800BB5B4 +/* 0BC1A0 800BB5A0 3C05800E */ lui $a1, 0x800e +.L800BB5A4: +/* 0BC1A4 800BB5A4 00E33823 */ subu $a3, $a3, $v1 +/* 0BC1A8 800BB5A8 00E3082A */ slt $at, $a3, $v1 +/* 0BC1AC 800BB5AC 1020FFFD */ beqz $at, .L800BB5A4 +/* 0BC1B0 800BB5B0 00000000 */ nop +.L800BB5B4: +/* 0BC1B4 800BB5B4 46083032 */ c.eq.s $f6, $f8 +/* 0BC1B8 800BB5B8 00001025 */ move $v0, $zero +/* 0BC1BC 800BB5BC 4501000C */ bc1t .L800BB5F0 +/* 0BC1C0 800BB5C0 03E3082A */ slt $at, $ra, $v1 +/* 0BC1C4 800BB5C4 46064281 */ sub.s $f10, $f8, $f6 +/* 0BC1C8 800BB5C8 C7A400AC */ lwc1 $f4, 0xac($sp) +/* 0BC1CC 800BB5CC 46085183 */ div.s $f6, $f10, $f8 +/* 0BC1D0 800BB5D0 C7AA0094 */ lwc1 $f10, 0x94($sp) +/* 0BC1D4 800BB5D4 00000000 */ nop +/* 0BC1D8 800BB5D8 460A3202 */ mul.s $f8, $f6, $f10 +/* 0BC1DC 800BB5DC 4608203C */ c.lt.s $f4, $f8 +/* 0BC1E0 800BB5E0 00000000 */ nop +/* 0BC1E4 800BB5E4 45000002 */ bc1f .L800BB5F0 +/* 0BC1E8 800BB5E8 00000000 */ nop +/* 0BC1EC 800BB5EC 24020001 */ li $v0, 1 +.L800BB5F0: +/* 0BC1F0 800BB5F0 104000DF */ beqz $v0, .L800BB970 +/* 0BC1F4 800BB5F4 00000000 */ nop +/* 0BC1F8 800BB5F8 00E30019 */ multu $a3, $v1 +/* 0BC1FC 800BB5FC 3C0A800E */ lui $t2, %hi(D_800E3044) # $t2, 0x800e +/* 0BC200 800BB600 8D4A3044 */ lw $t2, %lo(D_800E3044)($t2) +/* 0BC204 800BB604 3C05800E */ lui $a1, %hi(D_800E3040) # $a1, 0x800e +/* 0BC208 800BB608 8CA53040 */ lw $a1, %lo(D_800E3040)($a1) +/* 0BC20C 800BB60C C52E0040 */ lwc1 $f14, 0x40($t1) +/* 0BC210 800BB610 3C0B800E */ lui $t3, %hi(D_800E3188) # $t3, 0x800e +/* 0BC214 800BB614 8D6B3188 */ lw $t3, %lo(D_800E3188)($t3) +/* 0BC218 800BB618 8FA6006C */ lw $a2, 0x6c($sp) +/* 0BC21C 800BB61C 0000C812 */ mflo $t9 +/* 0BC220 800BB620 03282021 */ addu $a0, $t9, $t0 +/* 0BC224 800BB624 00047080 */ sll $t6, $a0, 2 +/* 0BC228 800BB628 014E1021 */ addu $v0, $t2, $t6 +/* 0BC22C 800BB62C 844F0002 */ lh $t7, 2($v0) +/* 0BC230 800BB630 844E0000 */ lh $t6, ($v0) +/* 0BC234 800BB634 000FC080 */ sll $t8, $t7, 2 +/* 0BC238 800BB638 00B8C821 */ addu $t9, $a1, $t8 +/* 0BC23C 800BB63C 000E7880 */ sll $t7, $t6, 2 +/* 0BC240 800BB640 00AFC021 */ addu $t8, $a1, $t7 +/* 0BC244 800BB644 C70A0000 */ lwc1 $f10, ($t8) +/* 0BC248 800BB648 C7260000 */ lwc1 $f6, ($t9) +/* 0BC24C 800BB64C 8FA400A8 */ lw $a0, 0xa8($sp) +/* 0BC250 800BB650 460A3100 */ add.s $f4, $f6, $f10 +/* 0BC254 800BB654 460E2202 */ mul.s $f8, $f4, $f14 +/* 0BC258 800BB658 19600016 */ blez $t3, .L800BB6B4 +/* 0BC25C 800BB65C E7A800A0 */ swc1 $f8, 0xa0($sp) +/* 0BC260 800BB660 8FA50070 */ lw $a1, 0x70($sp) +/* 0BC264 800BB664 AFA70064 */ sw $a3, 0x64($sp) +/* 0BC268 800BB668 AFA80068 */ sw $t0, 0x68($sp) +/* 0BC26C 800BB66C 0C02FBF1 */ jal func_800BEFC4 +/* 0BC270 800BB670 E7B0008C */ swc1 $f16, 0x8c($sp) +/* 0BC274 800BB674 C7A600A0 */ lwc1 $f6, 0xa0($sp) +/* 0BC278 800BB678 3C038013 */ lui $v1, %hi(D_80129FCC) # $v1, 0x8013 +/* 0BC27C 800BB67C 46003280 */ add.s $f10, $f6, $f0 +/* 0BC280 800BB680 3C05800E */ lui $a1, %hi(D_800E3040) # $a1, 0x800e +/* 0BC284 800BB684 3C0A800E */ lui $t2, %hi(D_800E3044) # $t2, 0x800e +/* 0BC288 800BB688 3C018013 */ lui $at, %hi(D_8012A008) # $at, 0x8013 +/* 0BC28C 800BB68C 3C0B800E */ lui $t3, %hi(D_800E3188) # $t3, 0x800e +/* 0BC290 800BB690 8D6B3188 */ lw $t3, %lo(D_800E3188)($t3) +/* 0BC294 800BB694 C42EA008 */ lwc1 $f14, %lo(D_8012A008)($at) +/* 0BC298 800BB698 8D4A3044 */ lw $t2, %lo(D_800E3044)($t2) +/* 0BC29C 800BB69C 8CA53040 */ lw $a1, %lo(D_800E3040)($a1) +/* 0BC2A0 800BB6A0 8C639FCC */ lw $v1, %lo(D_80129FCC)($v1) +/* 0BC2A4 800BB6A4 8FA70064 */ lw $a3, 0x64($sp) +/* 0BC2A8 800BB6A8 8FA80068 */ lw $t0, 0x68($sp) +/* 0BC2AC 800BB6AC C7B0008C */ lwc1 $f16, 0x8c($sp) +/* 0BC2B0 800BB6B0 E7AA00A0 */ swc1 $f10, 0xa0($sp) +.L800BB6B4: +/* 0BC2B4 800BB6B4 8FAF006C */ lw $t7, 0x6c($sp) +/* 0BC2B8 800BB6B8 8FB80060 */ lw $t8, 0x60($sp) +/* 0BC2BC 800BB6BC 8FB90058 */ lw $t9, 0x58($sp) +/* 0BC2C0 800BB6C0 01F80019 */ multu $t7, $t8 +/* 0BC2C4 800BB6C4 8FAE0070 */ lw $t6, 0x70($sp) +/* 0BC2C8 800BB6C8 3C0C800E */ lui $t4, %hi(D_800E3178) # $t4, 0x800e +/* 0BC2CC 800BB6CC 032E6821 */ addu $t5, $t9, $t6 +/* 0BC2D0 800BB6D0 8D8C3178 */ lw $t4, %lo(D_800E3178)($t4) +/* 0BC2D4 800BB6D4 24E90001 */ addiu $t1, $a3, 1 +/* 0BC2D8 800BB6D8 0000C812 */ mflo $t9 +/* 0BC2DC 800BB6DC 01B9F821 */ addu $ra, $t5, $t9 +/* 0BC2E0 800BB6E0 019F7021 */ addu $t6, $t4, $ra +/* 0BC2E4 800BB6E4 91C20000 */ lbu $v0, ($t6) +/* 0BC2E8 800BB6E8 00000000 */ nop +/* 0BC2EC 800BB6EC 2841007F */ slti $at, $v0, 0x7f +/* 0BC2F0 800BB6F0 1020000B */ beqz $at, .L800BB720 +/* 0BC2F4 800BB6F4 0123082A */ slt $at, $t1, $v1 +/* 0BC2F8 800BB6F8 44824000 */ mtc1 $v0, $f8 +/* 0BC2FC 800BB6FC 3C018013 */ lui $at, %hi(D_8012A00C) # $at, 0x8013 +/* 0BC300 800BB700 468041A0 */ cvt.s.w $f6, $f8 +/* 0BC304 800BB704 C424A00C */ lwc1 $f4, %lo(D_8012A00C)($at) +/* 0BC308 800BB708 46103282 */ mul.s $f10, $f6, $f16 +/* 0BC30C 800BB70C C7A600A0 */ lwc1 $f6, 0xa0($sp) +/* 0BC310 800BB710 460A2200 */ add.s $f8, $f4, $f10 +/* 0BC314 800BB714 46083102 */ mul.s $f4, $f6, $f8 +/* 0BC318 800BB718 E7A400A0 */ swc1 $f4, 0xa0($sp) +/* 0BC31C 800BB71C 0123082A */ slt $at, $t1, $v1 +.L800BB720: +/* 0BC320 800BB720 14200003 */ bnez $at, .L800BB730 +/* 0BC324 800BB724 00000000 */ nop +/* 0BC328 800BB728 10000005 */ b .L800BB740 +/* 0BC32C 800BB72C 01002025 */ move $a0, $t0 +.L800BB730: +/* 0BC330 800BB730 01230019 */ multu $t1, $v1 +/* 0BC334 800BB734 00007812 */ mflo $t7 +/* 0BC338 800BB738 01E82021 */ addu $a0, $t7, $t0 +/* 0BC33C 800BB73C 00000000 */ nop +.L800BB740: +/* 0BC340 800BB740 0004C080 */ sll $t8, $a0, 2 +/* 0BC344 800BB744 01581021 */ addu $v0, $t2, $t8 +/* 0BC348 800BB748 84590002 */ lh $t9, 2($v0) +/* 0BC34C 800BB74C 84580000 */ lh $t8, ($v0) +/* 0BC350 800BB750 00197080 */ sll $t6, $t9, 2 +/* 0BC354 800BB754 00AE7821 */ addu $t7, $a1, $t6 +/* 0BC358 800BB758 0018C880 */ sll $t9, $t8, 2 +/* 0BC35C 800BB75C 00B97021 */ addu $t6, $a1, $t9 +/* 0BC360 800BB760 C5C60000 */ lwc1 $f6, ($t6) +/* 0BC364 800BB764 C5EA0000 */ lwc1 $f10, ($t7) +/* 0BC368 800BB768 8FA6006C */ lw $a2, 0x6c($sp) +/* 0BC36C 800BB76C 46065200 */ add.s $f8, $f10, $f6 +/* 0BC370 800BB770 8FA400A8 */ lw $a0, 0xa8($sp) +/* 0BC374 800BB774 460E4302 */ mul.s $f12, $f8, $f14 +/* 0BC378 800BB778 1960001C */ blez $t3, .L800BB7EC +/* 0BC37C 800BB77C 24C60001 */ addiu $a2, $a2, 1 +/* 0BC380 800BB780 8FA50070 */ lw $a1, 0x70($sp) +/* 0BC384 800BB784 AFBF0034 */ sw $ra, 0x34($sp) +/* 0BC388 800BB788 AFA70064 */ sw $a3, 0x64($sp) +/* 0BC38C 800BB78C AFA80068 */ sw $t0, 0x68($sp) +/* 0BC390 800BB790 AFAD0038 */ sw $t5, 0x38($sp) +/* 0BC394 800BB794 E7AC009C */ swc1 $f12, 0x9c($sp) +/* 0BC398 800BB798 0C02FBF1 */ jal func_800BEFC4 +/* 0BC39C 800BB79C E7B0008C */ swc1 $f16, 0x8c($sp) +/* 0BC3A0 800BB7A0 C7AC009C */ lwc1 $f12, 0x9c($sp) +/* 0BC3A4 800BB7A4 3C038013 */ lui $v1, %hi(D_80129FCC) # $v1, 0x8013 +/* 0BC3A8 800BB7A8 3C05800E */ lui $a1, %hi(D_800E3040) # $a1, 0x800e +/* 0BC3AC 800BB7AC 3C0A800E */ lui $t2, %hi(D_800E3044) # $t2, 0x800e +/* 0BC3B0 800BB7B0 3C018013 */ lui $at, %hi(D_8012A008) # $at, 0x8013 +/* 0BC3B4 800BB7B4 3C0B800E */ lui $t3, %hi(D_800E3188) # $t3, 0x800e +/* 0BC3B8 800BB7B8 3C0C800E */ lui $t4, %hi(D_800E3178) # $t4, 0x800e +/* 0BC3BC 800BB7BC 8D8C3178 */ lw $t4, %lo(D_800E3178)($t4) +/* 0BC3C0 800BB7C0 8D6B3188 */ lw $t3, %lo(D_800E3188)($t3) +/* 0BC3C4 800BB7C4 C42EA008 */ lwc1 $f14, %lo(D_8012A008)($at) +/* 0BC3C8 800BB7C8 8D4A3044 */ lw $t2, %lo(D_800E3044)($t2) +/* 0BC3CC 800BB7CC 8CA53040 */ lw $a1, %lo(D_800E3040)($a1) +/* 0BC3D0 800BB7D0 8C639FCC */ lw $v1, %lo(D_80129FCC)($v1) +/* 0BC3D4 800BB7D4 8FA70064 */ lw $a3, 0x64($sp) +/* 0BC3D8 800BB7D8 8FA80068 */ lw $t0, 0x68($sp) +/* 0BC3DC 800BB7DC 8FAD0038 */ lw $t5, 0x38($sp) +/* 0BC3E0 800BB7E0 8FBF0034 */ lw $ra, 0x34($sp) +/* 0BC3E4 800BB7E4 C7B0008C */ lwc1 $f16, 0x8c($sp) +/* 0BC3E8 800BB7E8 46006300 */ add.s $f12, $f12, $f0 +.L800BB7EC: +/* 0BC3EC 800BB7EC 8FAF006C */ lw $t7, 0x6c($sp) +/* 0BC3F0 800BB7F0 8FB90060 */ lw $t9, 0x60($sp) +/* 0BC3F4 800BB7F4 25F80001 */ addiu $t8, $t7, 1 +/* 0BC3F8 800BB7F8 03190019 */ multu $t8, $t9 +/* 0BC3FC 800BB7FC 25190001 */ addiu $t9, $t0, 1 +/* 0BC400 800BB800 00007012 */ mflo $t6 +/* 0BC404 800BB804 01AE7821 */ addu $t7, $t5, $t6 +/* 0BC408 800BB808 018FC021 */ addu $t8, $t4, $t7 +/* 0BC40C 800BB80C 00E30019 */ multu $a3, $v1 +/* 0BC410 800BB810 93020000 */ lbu $v0, ($t8) +/* 0BC414 800BB814 00000000 */ nop +/* 0BC418 800BB818 2841007F */ slti $at, $v0, 0x7f +/* 0BC41C 800BB81C 00003012 */ mflo $a2 +/* 0BC420 800BB820 01062021 */ addu $a0, $t0, $a2 +/* 0BC424 800BB824 10200009 */ beqz $at, .L800BB84C +/* 0BC428 800BB828 24840001 */ addiu $a0, $a0, 1 +/* 0BC42C 800BB82C 44825000 */ mtc1 $v0, $f10 +/* 0BC430 800BB830 3C018013 */ li $at, 0x80130000 # -0.000000 +/* 0BC434 800BB834 468051A0 */ cvt.s.w $f6, $f10 +/* 0BC438 800BB838 C424A00C */ lwc1 $f4, %lo(D_8012A00C)($at) +/* 0BC43C 800BB83C 46103202 */ mul.s $f8, $f6, $f16 +/* 0BC440 800BB840 46082280 */ add.s $f10, $f4, $f8 +/* 0BC444 800BB844 460A6302 */ mul.s $f12, $f12, $f10 +/* 0BC448 800BB848 00000000 */ nop +.L800BB84C: +/* 0BC44C 800BB84C 0323082A */ slt $at, $t9, $v1 +/* 0BC450 800BB850 14200003 */ bnez $at, .L800BB860 +/* 0BC454 800BB854 00000000 */ nop +/* 0BC458 800BB858 10000001 */ b .L800BB860 +/* 0BC45C 800BB85C 00C02025 */ move $a0, $a2 +.L800BB860: +/* 0BC460 800BB860 00047080 */ sll $t6, $a0, 2 +/* 0BC464 800BB864 014E1021 */ addu $v0, $t2, $t6 +/* 0BC468 800BB868 844F0002 */ lh $t7, 2($v0) +/* 0BC46C 800BB86C 844E0000 */ lh $t6, ($v0) +/* 0BC470 800BB870 000FC080 */ sll $t8, $t7, 2 +/* 0BC474 800BB874 00B8C821 */ addu $t9, $a1, $t8 +/* 0BC478 800BB878 000E7880 */ sll $t7, $t6, 2 +/* 0BC47C 800BB87C 00AFC021 */ addu $t8, $a1, $t7 +/* 0BC480 800BB880 C7040000 */ lwc1 $f4, ($t8) +/* 0BC484 800BB884 C7260000 */ lwc1 $f6, ($t9) +/* 0BC488 800BB888 8FA50070 */ lw $a1, 0x70($sp) +/* 0BC48C 800BB88C 46043200 */ add.s $f8, $f6, $f4 +/* 0BC490 800BB890 8FA400A8 */ lw $a0, 0xa8($sp) +/* 0BC494 800BB894 460E4082 */ mul.s $f2, $f8, $f14 +/* 0BC498 800BB898 1960000E */ blez $t3, .L800BB8D4 +/* 0BC49C 800BB89C 24A50001 */ addiu $a1, $a1, 1 +/* 0BC4A0 800BB8A0 8FA6006C */ lw $a2, 0x6c($sp) +/* 0BC4A4 800BB8A4 AFBF0034 */ sw $ra, 0x34($sp) +/* 0BC4A8 800BB8A8 E7A20098 */ swc1 $f2, 0x98($sp) +/* 0BC4AC 800BB8AC E7AC009C */ swc1 $f12, 0x9c($sp) +/* 0BC4B0 800BB8B0 0C02FBF1 */ jal func_800BEFC4 +/* 0BC4B4 800BB8B4 E7B0008C */ swc1 $f16, 0x8c($sp) +/* 0BC4B8 800BB8B8 C7A20098 */ lwc1 $f2, 0x98($sp) +/* 0BC4BC 800BB8BC 3C0C800E */ lui $t4, %hi(D_800E3178) # $t4, 0x800e +/* 0BC4C0 800BB8C0 8D8C3178 */ lw $t4, %lo(D_800E3178)($t4) +/* 0BC4C4 800BB8C4 8FBF0034 */ lw $ra, 0x34($sp) +/* 0BC4C8 800BB8C8 C7AC009C */ lwc1 $f12, 0x9c($sp) +/* 0BC4CC 800BB8CC C7B0008C */ lwc1 $f16, 0x8c($sp) +/* 0BC4D0 800BB8D0 46001080 */ add.s $f2, $f2, $f0 +.L800BB8D4: +/* 0BC4D4 800BB8D4 019FC821 */ addu $t9, $t4, $ra +/* 0BC4D8 800BB8D8 93220001 */ lbu $v0, 1($t9) +/* 0BC4DC 800BB8DC 3C038013 */ lui $v1, %hi(D_80129FF0) # $v1, 0x8013 +/* 0BC4E0 800BB8E0 8C639FF0 */ lw $v1, %lo(D_80129FF0)($v1) +/* 0BC4E4 800BB8E4 2841007F */ slti $at, $v0, 0x7f +/* 0BC4E8 800BB8E8 10200009 */ beqz $at, .L800BB910 +/* 0BC4EC 800BB8EC 00000000 */ nop +/* 0BC4F0 800BB8F0 44823000 */ mtc1 $v0, $f6 +/* 0BC4F4 800BB8F4 3C018013 */ li $at, 0x80130000 # -0.000000 +/* 0BC4F8 800BB8F8 46803120 */ cvt.s.w $f4, $f6 +/* 0BC4FC 800BB8FC C42AA00C */ lwc1 $f10, %lo(D_8012A00C)($at) +/* 0BC500 800BB900 46102202 */ mul.s $f8, $f4, $f16 +/* 0BC504 800BB904 46085180 */ add.s $f6, $f10, $f8 +/* 0BC508 800BB908 46061082 */ mul.s $f2, $f2, $f6 +/* 0BC50C 800BB90C 00000000 */ nop +.L800BB910: +/* 0BC510 800BB910 1060000A */ beqz $v1, .L800BB93C +/* 0BC514 800BB914 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 0BC518 800BB918 C7A400A0 */ lwc1 $f4, 0xa0($sp) +/* 0BC51C 800BB91C 44815000 */ mtc1 $at, $f10 +/* 0BC520 800BB920 44813000 */ mtc1 $at, $f6 +/* 0BC524 800BB924 460A2202 */ mul.s $f8, $f4, $f10 +/* 0BC528 800BB928 44812000 */ mtc1 $at, $f4 +/* 0BC52C 800BB92C 46066302 */ mul.s $f12, $f12, $f6 +/* 0BC530 800BB930 E7A800A0 */ swc1 $f8, 0xa0($sp) +/* 0BC534 800BB934 46041082 */ mul.s $f2, $f2, $f4 +/* 0BC538 800BB938 00000000 */ nop +.L800BB93C: +/* 0BC53C 800BB93C C7A800A0 */ lwc1 $f8, 0xa0($sp) +/* 0BC540 800BB940 44805000 */ mtc1 $zero, $f10 +/* 0BC544 800BB944 C7A40090 */ lwc1 $f4, 0x90($sp) +/* 0BC548 800BB948 46024181 */ sub.s $f6, $f8, $f2 +/* 0BC54C 800BB94C E7AA00A4 */ swc1 $f10, 0xa4($sp) +/* 0BC550 800BB950 46043382 */ mul.s $f14, $f6, $f4 +/* 0BC554 800BB954 C7AA0094 */ lwc1 $f10, 0x94($sp) +/* 0BC558 800BB958 00000000 */ nop +/* 0BC55C 800BB95C 460A2402 */ mul.s $f16, $f4, $f10 +/* 0BC560 800BB960 460C4181 */ sub.s $f6, $f8, $f12 +/* 0BC564 800BB964 460A3482 */ mul.s $f18, $f6, $f10 +/* 0BC568 800BB968 100000E5 */ b .L800BBD00 +/* 0BC56C 800BB96C E7B00084 */ swc1 $f16, 0x84($sp) +.L800BB970: +/* 0BC570 800BB970 14200005 */ bnez $at, .L800BB988 +/* 0BC574 800BB974 00000000 */ nop +/* 0BC578 800BB978 00E30019 */ multu $a3, $v1 +/* 0BC57C 800BB97C 00002012 */ mflo $a0 +/* 0BC580 800BB980 10000005 */ b .L800BB998 +/* 0BC584 800BB984 00000000 */ nop +.L800BB988: +/* 0BC588 800BB988 00E30019 */ multu $a3, $v1 +/* 0BC58C 800BB98C 00007012 */ mflo $t6 +/* 0BC590 800BB990 010E2021 */ addu $a0, $t0, $t6 +/* 0BC594 800BB994 24840001 */ addiu $a0, $a0, 1 +.L800BB998: +/* 0BC598 800BB998 8D4A3044 */ lw $t2, 0x3044($t2) +/* 0BC59C 800BB99C 00047880 */ sll $t7, $a0, 2 +/* 0BC5A0 800BB9A0 014F1021 */ addu $v0, $t2, $t7 +/* 0BC5A4 800BB9A4 84580002 */ lh $t8, 2($v0) +/* 0BC5A8 800BB9A8 844F0000 */ lh $t7, ($v0) +/* 0BC5AC 800BB9AC 8CA53040 */ lw $a1, 0x3040($a1) +/* 0BC5B0 800BB9B0 0018C880 */ sll $t9, $t8, 2 +/* 0BC5B4 800BB9B4 000FC080 */ sll $t8, $t7, 2 +/* 0BC5B8 800BB9B8 00B97021 */ addu $t6, $a1, $t9 +/* 0BC5BC 800BB9BC 00B8C821 */ addu $t9, $a1, $t8 +/* 0BC5C0 800BB9C0 C7280000 */ lwc1 $f8, ($t9) +/* 0BC5C4 800BB9C4 C5C40000 */ lwc1 $f4, ($t6) +/* 0BC5C8 800BB9C8 C52E0040 */ lwc1 $f14, 0x40($t1) +/* 0BC5CC 800BB9CC 46082180 */ add.s $f6, $f4, $f8 +/* 0BC5D0 800BB9D0 3C0B800E */ lui $t3, %hi(D_800E3188) # $t3, 0x800e +/* 0BC5D4 800BB9D4 460E3282 */ mul.s $f10, $f6, $f14 +/* 0BC5D8 800BB9D8 8D6B3188 */ lw $t3, %lo(D_800E3188)($t3) +/* 0BC5DC 800BB9DC 8FA400A8 */ lw $a0, 0xa8($sp) +/* 0BC5E0 800BB9E0 1960001A */ blez $t3, .L800BBA4C +/* 0BC5E4 800BB9E4 E7AA00A0 */ swc1 $f10, 0xa0($sp) +/* 0BC5E8 800BB9E8 8FA50070 */ lw $a1, 0x70($sp) +/* 0BC5EC 800BB9EC 8FA6006C */ lw $a2, 0x6c($sp) +/* 0BC5F0 800BB9F0 AFBF0024 */ sw $ra, 0x24($sp) +/* 0BC5F4 800BB9F4 AFA70064 */ sw $a3, 0x64($sp) +/* 0BC5F8 800BB9F8 AFA80068 */ sw $t0, 0x68($sp) +/* 0BC5FC 800BB9FC E7B0008C */ swc1 $f16, 0x8c($sp) +/* 0BC600 800BBA00 0C02FBF1 */ jal func_800BEFC4 +/* 0BC604 800BBA04 24A50001 */ addiu $a1, $a1, 1 +/* 0BC608 800BBA08 C7A400A0 */ lwc1 $f4, 0xa0($sp) +/* 0BC60C 800BBA0C 3C038013 */ lui $v1, %hi(D_80129FCC) # $v1, 0x8013 +/* 0BC610 800BBA10 46002200 */ add.s $f8, $f4, $f0 +/* 0BC614 800BBA14 3C05800E */ lui $a1, %hi(D_800E3040) # $a1, 0x800e +/* 0BC618 800BBA18 3C0A800E */ lui $t2, %hi(D_800E3044) # $t2, 0x800e +/* 0BC61C 800BBA1C 3C018013 */ lui $at, %hi(D_8012A008) # $at, 0x8013 +/* 0BC620 800BBA20 3C0B800E */ lui $t3, %hi(D_800E3188) # $t3, 0x800e +/* 0BC624 800BBA24 8D6B3188 */ lw $t3, %lo(D_800E3188)($t3) +/* 0BC628 800BBA28 C42EA008 */ lwc1 $f14, %lo(D_8012A008)($at) +/* 0BC62C 800BBA2C 8D4A3044 */ lw $t2, %lo(D_800E3044)($t2) +/* 0BC630 800BBA30 8CA53040 */ lw $a1, %lo(D_800E3040)($a1) +/* 0BC634 800BBA34 8C639FCC */ lw $v1, %lo(D_80129FCC)($v1) +/* 0BC638 800BBA38 8FA70064 */ lw $a3, 0x64($sp) +/* 0BC63C 800BBA3C 8FA80068 */ lw $t0, 0x68($sp) +/* 0BC640 800BBA40 8FBF0024 */ lw $ra, 0x24($sp) +/* 0BC644 800BBA44 C7B0008C */ lwc1 $f16, 0x8c($sp) +/* 0BC648 800BBA48 E7A800A0 */ swc1 $f8, 0xa0($sp) +.L800BBA4C: +/* 0BC64C 800BBA4C 8FB8006C */ lw $t8, 0x6c($sp) +/* 0BC650 800BBA50 8FB90060 */ lw $t9, 0x60($sp) +/* 0BC654 800BBA54 8FAE0058 */ lw $t6, 0x58($sp) +/* 0BC658 800BBA58 03190019 */ multu $t8, $t9 +/* 0BC65C 800BBA5C 8FAF0070 */ lw $t7, 0x70($sp) +/* 0BC660 800BBA60 3C0C800E */ lui $t4, %hi(D_800E3178) # $t4, 0x800e +/* 0BC664 800BBA64 01CF6821 */ addu $t5, $t6, $t7 +/* 0BC668 800BBA68 8D8C3178 */ lw $t4, %lo(D_800E3178)($t4) +/* 0BC66C 800BBA6C 24E90001 */ addiu $t1, $a3, 1 +/* 0BC670 800BBA70 00007012 */ mflo $t6 +/* 0BC674 800BBA74 01AE7821 */ addu $t7, $t5, $t6 +/* 0BC678 800BBA78 018FC021 */ addu $t8, $t4, $t7 +/* 0BC67C 800BBA7C 93020001 */ lbu $v0, 1($t8) +/* 0BC680 800BBA80 00000000 */ nop +/* 0BC684 800BBA84 2841007F */ slti $at, $v0, 0x7f +/* 0BC688 800BBA88 1020000B */ beqz $at, .L800BBAB8 +/* 0BC68C 800BBA8C 0123082A */ slt $at, $t1, $v1 +/* 0BC690 800BBA90 44825000 */ mtc1 $v0, $f10 +/* 0BC694 800BBA94 3C018013 */ lui $at, %hi(D_8012A00C) # $at, 0x8013 +/* 0BC698 800BBA98 46805120 */ cvt.s.w $f4, $f10 +/* 0BC69C 800BBA9C C426A00C */ lwc1 $f6, %lo(D_8012A00C)($at) +/* 0BC6A0 800BBAA0 46102202 */ mul.s $f8, $f4, $f16 +/* 0BC6A4 800BBAA4 C7A400A0 */ lwc1 $f4, 0xa0($sp) +/* 0BC6A8 800BBAA8 46083280 */ add.s $f10, $f6, $f8 +/* 0BC6AC 800BBAAC 460A2182 */ mul.s $f6, $f4, $f10 +/* 0BC6B0 800BBAB0 E7A600A0 */ swc1 $f6, 0xa0($sp) +/* 0BC6B4 800BBAB4 0123082A */ slt $at, $t1, $v1 +.L800BBAB8: +/* 0BC6B8 800BBAB8 14200003 */ bnez $at, .L800BBAC8 +/* 0BC6BC 800BBABC 00000000 */ nop +/* 0BC6C0 800BBAC0 10000005 */ b .L800BBAD8 +/* 0BC6C4 800BBAC4 01002025 */ move $a0, $t0 +.L800BBAC8: +/* 0BC6C8 800BBAC8 01230019 */ multu $t1, $v1 +/* 0BC6CC 800BBACC 0000C812 */ mflo $t9 +/* 0BC6D0 800BBAD0 03282021 */ addu $a0, $t9, $t0 +/* 0BC6D4 800BBAD4 00000000 */ nop +.L800BBAD8: +/* 0BC6D8 800BBAD8 00047080 */ sll $t6, $a0, 2 +/* 0BC6DC 800BBADC 014E1021 */ addu $v0, $t2, $t6 +/* 0BC6E0 800BBAE0 844F0002 */ lh $t7, 2($v0) +/* 0BC6E4 800BBAE4 844E0000 */ lh $t6, ($v0) +/* 0BC6E8 800BBAE8 000FC080 */ sll $t8, $t7, 2 +/* 0BC6EC 800BBAEC 00B8C821 */ addu $t9, $a1, $t8 +/* 0BC6F0 800BBAF0 000E7880 */ sll $t7, $t6, 2 +/* 0BC6F4 800BBAF4 00AFC021 */ addu $t8, $a1, $t7 +/* 0BC6F8 800BBAF8 C7040000 */ lwc1 $f4, ($t8) +/* 0BC6FC 800BBAFC C7280000 */ lwc1 $f8, ($t9) +/* 0BC700 800BBB00 8FA6006C */ lw $a2, 0x6c($sp) +/* 0BC704 800BBB04 46044280 */ add.s $f10, $f8, $f4 +/* 0BC708 800BBB08 8FA400A8 */ lw $a0, 0xa8($sp) +/* 0BC70C 800BBB0C 460E5302 */ mul.s $f12, $f10, $f14 +/* 0BC710 800BBB10 1960001A */ blez $t3, .L800BBB7C +/* 0BC714 800BBB14 24C60001 */ addiu $a2, $a2, 1 +/* 0BC718 800BBB18 8FA50070 */ lw $a1, 0x70($sp) +/* 0BC71C 800BBB1C AFBF0024 */ sw $ra, 0x24($sp) +/* 0BC720 800BBB20 AFA9004C */ sw $t1, 0x4c($sp) +/* 0BC724 800BBB24 AFAD0038 */ sw $t5, 0x38($sp) +/* 0BC728 800BBB28 E7AC009C */ swc1 $f12, 0x9c($sp) +/* 0BC72C 800BBB2C 0C02FBF1 */ jal func_800BEFC4 +/* 0BC730 800BBB30 E7B0008C */ swc1 $f16, 0x8c($sp) +/* 0BC734 800BBB34 C7AC009C */ lwc1 $f12, 0x9c($sp) +/* 0BC738 800BBB38 3C038013 */ lui $v1, %hi(D_80129FCC) # $v1, 0x8013 +/* 0BC73C 800BBB3C 3C05800E */ lui $a1, %hi(D_800E3040) # $a1, 0x800e +/* 0BC740 800BBB40 3C0A800E */ lui $t2, %hi(D_800E3044) # $t2, 0x800e +/* 0BC744 800BBB44 3C018013 */ lui $at, %hi(D_8012A008) # $at, 0x8013 +/* 0BC748 800BBB48 3C0B800E */ lui $t3, %hi(D_800E3188) # $t3, 0x800e +/* 0BC74C 800BBB4C 3C0C800E */ lui $t4, %hi(D_800E3178) # $t4, 0x800e +/* 0BC750 800BBB50 8D8C3178 */ lw $t4, %lo(D_800E3178)($t4) +/* 0BC754 800BBB54 8D6B3188 */ lw $t3, %lo(D_800E3188)($t3) +/* 0BC758 800BBB58 C42EA008 */ lwc1 $f14, %lo(D_8012A008)($at) +/* 0BC75C 800BBB5C 8D4A3044 */ lw $t2, %lo(D_800E3044)($t2) +/* 0BC760 800BBB60 8CA53040 */ lw $a1, %lo(D_800E3040)($a1) +/* 0BC764 800BBB64 8C639FCC */ lw $v1, %lo(D_80129FCC)($v1) +/* 0BC768 800BBB68 8FA9004C */ lw $t1, 0x4c($sp) +/* 0BC76C 800BBB6C 8FAD0038 */ lw $t5, 0x38($sp) +/* 0BC770 800BBB70 8FBF0024 */ lw $ra, 0x24($sp) +/* 0BC774 800BBB74 C7B0008C */ lwc1 $f16, 0x8c($sp) +/* 0BC778 800BBB78 46006300 */ add.s $f12, $f12, $f0 +.L800BBB7C: +/* 0BC77C 800BBB7C 8FA6006C */ lw $a2, 0x6c($sp) +/* 0BC780 800BBB80 8FB90060 */ lw $t9, 0x60($sp) +/* 0BC784 800BBB84 24C60001 */ addiu $a2, $a2, 1 +/* 0BC788 800BBB88 00D90019 */ multu $a2, $t9 +/* 0BC78C 800BBB8C 03E02025 */ move $a0, $ra +/* 0BC790 800BBB90 00007012 */ mflo $t6 +/* 0BC794 800BBB94 01AE3821 */ addu $a3, $t5, $t6 +/* 0BC798 800BBB98 01877821 */ addu $t7, $t4, $a3 +/* 0BC79C 800BBB9C 91E20000 */ lbu $v0, ($t7) +/* 0BC7A0 800BBBA0 00000000 */ nop +/* 0BC7A4 800BBBA4 2841007F */ slti $at, $v0, 0x7f +/* 0BC7A8 800BBBA8 1020000A */ beqz $at, .L800BBBD4 +/* 0BC7AC 800BBBAC 03E3082A */ slt $at, $ra, $v1 +/* 0BC7B0 800BBBB0 44824000 */ mtc1 $v0, $f8 +/* 0BC7B4 800BBBB4 3C018013 */ li $at, 0x80130000 # -0.000000 +/* 0BC7B8 800BBBB8 46804120 */ cvt.s.w $f4, $f8 +/* 0BC7BC 800BBBBC C426A00C */ lwc1 $f6, %lo(D_8012A00C)($at) +/* 0BC7C0 800BBBC0 46102282 */ mul.s $f10, $f4, $f16 +/* 0BC7C4 800BBBC4 460A3200 */ add.s $f8, $f6, $f10 +/* 0BC7C8 800BBBC8 46086302 */ mul.s $f12, $f12, $f8 +/* 0BC7CC 800BBBCC 00000000 */ nop +/* 0BC7D0 800BBBD0 03E3082A */ slt $at, $ra, $v1 +.L800BBBD4: +/* 0BC7D4 800BBBD4 14200003 */ bnez $at, .L800BBBE4 +/* 0BC7D8 800BBBD8 00000000 */ nop +/* 0BC7DC 800BBBDC 10000001 */ b .L800BBBE4 +/* 0BC7E0 800BBBE0 00002025 */ move $a0, $zero +.L800BBBE4: +/* 0BC7E4 800BBBE4 0123082A */ slt $at, $t1, $v1 +/* 0BC7E8 800BBBE8 10200006 */ beqz $at, .L800BBC04 +/* 0BC7EC 800BBBEC 0004C880 */ sll $t9, $a0, 2 +/* 0BC7F0 800BBBF0 01230019 */ multu $t1, $v1 +/* 0BC7F4 800BBBF4 0000C012 */ mflo $t8 +/* 0BC7F8 800BBBF8 00982021 */ addu $a0, $a0, $t8 +/* 0BC7FC 800BBBFC 00000000 */ nop +/* 0BC800 800BBC00 0004C880 */ sll $t9, $a0, 2 +.L800BBC04: +/* 0BC804 800BBC04 01591021 */ addu $v0, $t2, $t9 +/* 0BC808 800BBC08 844E0002 */ lh $t6, 2($v0) +/* 0BC80C 800BBC0C 84590000 */ lh $t9, ($v0) +/* 0BC810 800BBC10 000E7880 */ sll $t7, $t6, 2 +/* 0BC814 800BBC14 00AFC021 */ addu $t8, $a1, $t7 +/* 0BC818 800BBC18 00197080 */ sll $t6, $t9, 2 +/* 0BC81C 800BBC1C 00AE7821 */ addu $t7, $a1, $t6 +/* 0BC820 800BBC20 C5E60000 */ lwc1 $f6, ($t7) +/* 0BC824 800BBC24 C7040000 */ lwc1 $f4, ($t8) +/* 0BC828 800BBC28 8FA50070 */ lw $a1, 0x70($sp) +/* 0BC82C 800BBC2C 46062280 */ add.s $f10, $f4, $f6 +/* 0BC830 800BBC30 8FA400A8 */ lw $a0, 0xa8($sp) +/* 0BC834 800BBC34 460E5082 */ mul.s $f2, $f10, $f14 +/* 0BC838 800BBC38 1960000D */ blez $t3, .L800BBC70 +/* 0BC83C 800BBC3C 24A50001 */ addiu $a1, $a1, 1 +/* 0BC840 800BBC40 AFA70028 */ sw $a3, 0x28($sp) +/* 0BC844 800BBC44 E7A20098 */ swc1 $f2, 0x98($sp) +/* 0BC848 800BBC48 E7AC009C */ swc1 $f12, 0x9c($sp) +/* 0BC84C 800BBC4C 0C02FBF1 */ jal func_800BEFC4 +/* 0BC850 800BBC50 E7B0008C */ swc1 $f16, 0x8c($sp) +/* 0BC854 800BBC54 C7A20098 */ lwc1 $f2, 0x98($sp) +/* 0BC858 800BBC58 3C0C800E */ lui $t4, %hi(D_800E3178) # $t4, 0x800e +/* 0BC85C 800BBC5C 8D8C3178 */ lw $t4, %lo(D_800E3178)($t4) +/* 0BC860 800BBC60 8FA70028 */ lw $a3, 0x28($sp) +/* 0BC864 800BBC64 C7AC009C */ lwc1 $f12, 0x9c($sp) +/* 0BC868 800BBC68 C7B0008C */ lwc1 $f16, 0x8c($sp) +/* 0BC86C 800BBC6C 46001080 */ add.s $f2, $f2, $f0 +.L800BBC70: +/* 0BC870 800BBC70 0187C021 */ addu $t8, $t4, $a3 +/* 0BC874 800BBC74 93020001 */ lbu $v0, 1($t8) +/* 0BC878 800BBC78 3C038013 */ lui $v1, %hi(D_80129FF0) # $v1, 0x8013 +/* 0BC87C 800BBC7C 8C639FF0 */ lw $v1, %lo(D_80129FF0)($v1) +/* 0BC880 800BBC80 2841007F */ slti $at, $v0, 0x7f +/* 0BC884 800BBC84 10200009 */ beqz $at, .L800BBCAC +/* 0BC888 800BBC88 00000000 */ nop +/* 0BC88C 800BBC8C 44822000 */ mtc1 $v0, $f4 +/* 0BC890 800BBC90 3C018013 */ li $at, 0x80130000 # -0.000000 +/* 0BC894 800BBC94 468021A0 */ cvt.s.w $f6, $f4 +/* 0BC898 800BBC98 C428A00C */ lwc1 $f8, %lo(D_8012A00C)($at) +/* 0BC89C 800BBC9C 46103282 */ mul.s $f10, $f6, $f16 +/* 0BC8A0 800BBCA0 460A4100 */ add.s $f4, $f8, $f10 +/* 0BC8A4 800BBCA4 46041082 */ mul.s $f2, $f2, $f4 +/* 0BC8A8 800BBCA8 00000000 */ nop +.L800BBCAC: +/* 0BC8AC 800BBCAC 1060000A */ beqz $v1, .L800BBCD8 +/* 0BC8B0 800BBCB0 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 0BC8B4 800BBCB4 C7A600A0 */ lwc1 $f6, 0xa0($sp) +/* 0BC8B8 800BBCB8 44814000 */ mtc1 $at, $f8 +/* 0BC8BC 800BBCBC 44812000 */ mtc1 $at, $f4 +/* 0BC8C0 800BBCC0 46083282 */ mul.s $f10, $f6, $f8 +/* 0BC8C4 800BBCC4 44813000 */ mtc1 $at, $f6 +/* 0BC8C8 800BBCC8 46046302 */ mul.s $f12, $f12, $f4 +/* 0BC8CC 800BBCCC E7AA00A0 */ swc1 $f10, 0xa0($sp) +/* 0BC8D0 800BBCD0 46061082 */ mul.s $f2, $f2, $f6 +/* 0BC8D4 800BBCD4 00000000 */ nop +.L800BBCD8: +/* 0BC8D8 800BBCD8 46026281 */ sub.s $f10, $f12, $f2 +/* 0BC8DC 800BBCDC C7A40090 */ lwc1 $f4, 0x90($sp) +/* 0BC8E0 800BBCE0 C7A80094 */ lwc1 $f8, 0x94($sp) +/* 0BC8E4 800BBCE4 46045382 */ mul.s $f14, $f10, $f4 +/* 0BC8E8 800BBCE8 C7A600A0 */ lwc1 $f6, 0xa0($sp) +/* 0BC8EC 800BBCEC E7A800A4 */ swc1 $f8, 0xa4($sp) +/* 0BC8F0 800BBCF0 46082402 */ mul.s $f16, $f4, $f8 +/* 0BC8F4 800BBCF4 46023281 */ sub.s $f10, $f6, $f2 +/* 0BC8F8 800BBCF8 46085482 */ mul.s $f18, $f10, $f8 +/* 0BC8FC 800BBCFC E7B00084 */ swc1 $f16, 0x84($sp) +.L800BBD00: +/* 0BC900 800BBD00 460E7102 */ mul.s $f4, $f14, $f14 +/* 0BC904 800BBD04 E7AE0088 */ swc1 $f14, 0x88($sp) +/* 0BC908 800BBD08 E7B0004C */ swc1 $f16, 0x4c($sp) +/* 0BC90C 800BBD0C E7B20080 */ swc1 $f18, 0x80($sp) +/* 0BC910 800BBD10 46108182 */ mul.s $f6, $f16, $f16 +/* 0BC914 800BBD14 00000000 */ nop +/* 0BC918 800BBD18 46129202 */ mul.s $f8, $f18, $f18 +/* 0BC91C 800BBD1C 46062280 */ add.s $f10, $f4, $f6 +/* 0BC920 800BBD20 0C0326B4 */ jal sqrtf +/* 0BC924 800BBD24 46085300 */ add.s $f12, $f10, $f8 +/* 0BC928 800BBD28 44801800 */ mtc1 $zero, $f3 +/* 0BC92C 800BBD2C 44801000 */ mtc1 $zero, $f2 +/* 0BC930 800BBD30 46000121 */ cvt.d.s $f4, $f0 +/* 0BC934 800BBD34 46241032 */ c.eq.d $f2, $f4 +/* 0BC938 800BBD38 C7AE0088 */ lwc1 $f14, 0x88($sp) +/* 0BC93C 800BBD3C C7B0004C */ lwc1 $f16, 0x4c($sp) +/* 0BC940 800BBD40 C7B20080 */ lwc1 $f18, 0x80($sp) +/* 0BC944 800BBD44 4501001B */ bc1t .L800BBDB4 +/* 0BC948 800BBD48 8FB900B4 */ lw $t9, 0xb4($sp) +/* 0BC94C 800BBD4C 460081A1 */ cvt.d.s $f6, $f16 +/* 0BC950 800BBD50 46261032 */ c.eq.d $f2, $f6 +/* 0BC954 800BBD54 00000000 */ nop +/* 0BC958 800BBD58 45010015 */ bc1t .L800BBDB0 +/* 0BC95C 800BBD5C 00000000 */ nop +/* 0BC960 800BBD60 46007383 */ div.s $f14, $f14, $f0 +/* 0BC964 800BBD64 C7AA00AC */ lwc1 $f10, 0xac($sp) +/* 0BC968 800BBD68 C7A400B0 */ lwc1 $f4, 0xb0($sp) +/* 0BC96C 800BBD6C 46009483 */ div.s $f18, $f18, $f0 +/* 0BC970 800BBD70 460A7202 */ mul.s $f8, $f14, $f10 +/* 0BC974 800BBD74 00000000 */ nop +/* 0BC978 800BBD78 46008083 */ div.s $f2, $f16, $f0 +/* 0BC97C 800BBD7C 46049182 */ mul.s $f6, $f18, $f4 +/* 0BC980 800BBD80 C7A400A4 */ lwc1 $f4, 0xa4($sp) +/* 0BC984 800BBD84 46064280 */ add.s $f10, $f8, $f6 +/* 0BC988 800BBD88 C7A600A0 */ lwc1 $f6, 0xa0($sp) +/* 0BC98C 800BBD8C 460E2202 */ mul.s $f8, $f4, $f14 +/* 0BC990 800BBD90 E7A20084 */ swc1 $f2, 0x84($sp) +/* 0BC994 800BBD94 46023102 */ mul.s $f4, $f6, $f2 +/* 0BC998 800BBD98 46044180 */ add.s $f6, $f8, $f4 +/* 0BC99C 800BBD9C 46065201 */ sub.s $f8, $f10, $f6 +/* 0BC9A0 800BBDA0 C7AA0078 */ lwc1 $f10, 0x78($sp) +/* 0BC9A4 800BBDA4 46024103 */ div.s $f4, $f8, $f2 +/* 0BC9A8 800BBDA8 46045181 */ sub.s $f6, $f10, $f4 +/* 0BC9AC 800BBDAC E7A60078 */ swc1 $f6, 0x78($sp) +.L800BBDB0: +/* 0BC9B0 800BBDB0 8FB900B4 */ lw $t9, 0xb4($sp) +.L800BBDB4: +/* 0BC9B4 800BBDB4 C7A20084 */ lwc1 $f2, 0x84($sp) +/* 0BC9B8 800BBDB8 13200005 */ beqz $t9, .L800BBDD0 +/* 0BC9BC 800BBDBC 8FBF0014 */ lw $ra, 0x14($sp) +/* 0BC9C0 800BBDC0 E72E0000 */ swc1 $f14, ($t9) +/* 0BC9C4 800BBDC4 E7220004 */ swc1 $f2, 4($t9) +/* 0BC9C8 800BBDC8 E7320008 */ swc1 $f18, 8($t9) +/* 0BC9CC 800BBDCC 8FBF0014 */ lw $ra, 0x14($sp) +.L800BBDD0: +/* 0BC9D0 800BBDD0 C7A00078 */ lwc1 $f0, 0x78($sp) +/* 0BC9D4 800BBDD4 03E00008 */ jr $ra +/* 0BC9D8 800BBDD8 27BD00A8 */ addiu $sp, $sp, 0xa8 + diff --git a/asm/non_matchings/unknown_0B8920/func_800BBDDC.s b/asm/non_matchings/unknown_0B8920/func_800BBDDC.s new file mode 100644 index 00000000..0f86e915 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800BBDDC.s @@ -0,0 +1,13 @@ +glabel func_800BBDDC +/* 0BC9DC 800BBDDC 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0BC9E0 800BBDE0 AFBF0014 */ sw $ra, 0x14($sp) +/* 0BC9E4 800BBDE4 0C02EF82 */ jal func_800BBE08 +/* 0BC9E8 800BBDE8 AFA40018 */ sw $a0, 0x18($sp) +/* 0BC9EC 800BBDEC 8FA40018 */ lw $a0, 0x18($sp) +/* 0BC9F0 800BBDF0 0C02EFDE */ jal func_800BBF78 +/* 0BC9F4 800BBDF4 00000000 */ nop +/* 0BC9F8 800BBDF8 8FBF0014 */ lw $ra, 0x14($sp) +/* 0BC9FC 800BBDFC 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0BCA00 800BBE00 03E00008 */ jr $ra +/* 0BCA04 800BBE04 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800BBE08.s b/asm/non_matchings/unknown_0B8920/func_800BBE08.s new file mode 100644 index 00000000..c204778a --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800BBE08.s @@ -0,0 +1,102 @@ +glabel func_800BBE08 +/* 0BCA08 800BBE08 27BDFFF0 */ addiu $sp, $sp, -0x10 +/* 0BCA0C 800BBE0C AFB1000C */ sw $s1, 0xc($sp) +/* 0BCA10 800BBE10 AFB00008 */ sw $s0, 8($sp) +/* 0BCA14 800BBE14 8486001A */ lh $a2, 0x1a($a0) +/* 0BCA18 800BBE18 00001025 */ move $v0, $zero +/* 0BCA1C 800BBE1C 18C00023 */ blez $a2, .L800BBEAC +/* 0BCA20 800BBE20 00001825 */ move $v1, $zero +/* 0BCA24 800BBE24 8C8E0004 */ lw $t6, 4($a0) +/* 0BCA28 800BBE28 00007980 */ sll $t7, $zero, 6 +/* 0BCA2C 800BBE2C 3C110100 */ lui $s1, (0x01002100 >> 16) # lui $s1, 0x100 +/* 0BCA30 800BBE30 3C100100 */ lui $s0, (0x01002000 >> 16) # lui $s0, 0x100 +/* 0BCA34 800BBE34 36102000 */ ori $s0, (0x01002000 & 0xFFFF) # ori $s0, $s0, 0x2000 +/* 0BCA38 800BBE38 36312100 */ ori $s1, (0x01002100 & 0xFFFF) # ori $s1, $s1, 0x2100 +/* 0BCA3C 800BBE3C 01CF4021 */ addu $t0, $t6, $t7 +/* 0BCA40 800BBE40 01003825 */ move $a3, $t0 +.L800BBE44: +/* 0BCA44 800BBE44 14400013 */ bnez $v0, .L800BBE94 +/* 0BCA48 800BBE48 00004825 */ move $t1, $zero +/* 0BCA4C 800BBE4C 84EA0020 */ lh $t2, 0x20($a3) +/* 0BCA50 800BBE50 00006080 */ sll $t4, $zero, 2 +/* 0BCA54 800BBE54 1940000F */ blez $t2, .L800BBE94 +/* 0BCA58 800BBE58 01806023 */ subu $t4, $t4, $zero +/* 0BCA5C 800BBE5C 8CEB000C */ lw $t3, 0xc($a3) +/* 0BCA60 800BBE60 000C6080 */ sll $t4, $t4, 2 +/* 0BCA64 800BBE64 016C6821 */ addu $t5, $t3, $t4 +.L800BBE68: +/* 0BCA68 800BBE68 8DB80008 */ lw $t8, 8($t5) +/* 0BCA6C 800BBE6C 25290001 */ addiu $t1, $t1, 1 +/* 0BCA70 800BBE70 0311C824 */ and $t9, $t8, $s1 +/* 0BCA74 800BBE74 16190002 */ bne $s0, $t9, .L800BBE80 +/* 0BCA78 800BBE78 25AD000C */ addiu $t5, $t5, 0xc +/* 0BCA7C 800BBE7C 016C1021 */ addu $v0, $t3, $t4 +.L800BBE80: +/* 0BCA80 800BBE80 14400004 */ bnez $v0, .L800BBE94 +/* 0BCA84 800BBE84 258C000C */ addiu $t4, $t4, 0xc +/* 0BCA88 800BBE88 012A082A */ slt $at, $t1, $t2 +/* 0BCA8C 800BBE8C 1420FFF6 */ bnez $at, .L800BBE68 +/* 0BCA90 800BBE90 00000000 */ nop +.L800BBE94: +/* 0BCA94 800BBE94 24630001 */ addiu $v1, $v1, 1 +/* 0BCA98 800BBE98 14400004 */ bnez $v0, .L800BBEAC +/* 0BCA9C 800BBE9C 25080044 */ addiu $t0, $t0, 0x44 +/* 0BCAA0 800BBEA0 0066082A */ slt $at, $v1, $a2 +/* 0BCAA4 800BBEA4 1420FFE7 */ bnez $at, .L800BBE44 +/* 0BCAA8 800BBEA8 01003825 */ move $a3, $t0 +.L800BBEAC: +/* 0BCAAC 800BBEAC 14400003 */ bnez $v0, .L800BBEBC +/* 0BCAB0 800BBEB0 2463FFFF */ addiu $v1, $v1, -1 +/* 0BCAB4 800BBEB4 10000001 */ b .L800BBEBC +/* 0BCAB8 800BBEB8 00001825 */ move $v1, $zero +.L800BBEBC: +/* 0BCABC 800BBEBC 00037880 */ sll $t7, $v1, 2 +/* 0BCAC0 800BBEC0 8C8E0008 */ lw $t6, 8($a0) +/* 0BCAC4 800BBEC4 01E37823 */ subu $t7, $t7, $v1 +/* 0BCAC8 800BBEC8 000F7880 */ sll $t7, $t7, 2 +/* 0BCACC 800BBECC 01CF3021 */ addu $a2, $t6, $t7 +/* 0BCAD0 800BBED0 84D80006 */ lh $t8, 6($a2) +/* 0BCAD4 800BBED4 84D90000 */ lh $t9, ($a2) +/* 0BCAD8 800BBED8 3C018013 */ lui $at, %hi(D_8012A0A8) # $at, 0x8013 +/* 0BCADC 800BBEDC 03197023 */ subu $t6, $t8, $t9 +/* 0BCAE0 800BBEE0 AC2EA0A8 */ sw $t6, %lo(D_8012A0A8)($at) +/* 0BCAE4 800BBEE4 84D80004 */ lh $t8, 4($a2) +/* 0BCAE8 800BBEE8 84CF000A */ lh $t7, 0xa($a2) +/* 0BCAEC 800BBEEC 3C018013 */ lui $at, %hi(D_8012A0AC) # $at, 0x8013 +/* 0BCAF0 800BBEF0 01F8C823 */ subu $t9, $t7, $t8 +/* 0BCAF4 800BBEF4 AC39A0AC */ sw $t9, %lo(D_8012A0AC)($at) +/* 0BCAF8 800BBEF8 84CE0000 */ lh $t6, ($a2) +/* 0BCAFC 800BBEFC 3C018013 */ lui $at, %hi(D_8012A0B0) # $at, 0x8013 +/* 0BCB00 800BBF00 AC2EA0B0 */ sw $t6, %lo(D_8012A0B0)($at) +/* 0BCB04 800BBF04 84CF0004 */ lh $t7, 4($a2) +/* 0BCB08 800BBF08 3C018013 */ lui $at, %hi(D_8012A0B4) # $at, 0x8013 +/* 0BCB0C 800BBF0C AC2FA0B4 */ sw $t7, %lo(D_8012A0B4)($at) +/* 0BCB10 800BBF10 3C018013 */ lui $at, %hi(D_8012A07C) # $at, 0x8013 +/* 0BCB14 800BBF14 AC22A07C */ sw $v0, %lo(D_8012A07C)($at) +/* 0BCB18 800BBF18 90590000 */ lbu $t9, ($v0) +/* 0BCB1C 800BBF1C 8C980000 */ lw $t8, ($a0) +/* 0BCB20 800BBF20 001970C0 */ sll $t6, $t9, 3 +/* 0BCB24 800BBF24 030E7821 */ addu $t7, $t8, $t6 +/* 0BCB28 800BBF28 8DF90000 */ lw $t9, ($t7) +/* 0BCB2C 800BBF2C 3C018013 */ lui $at, %hi(D_8012A080) # $at, 0x8013 +/* 0BCB30 800BBF30 AC39A080 */ sw $t9, %lo(D_8012A080)($at) +/* 0BCB34 800BBF34 8C470008 */ lw $a3, 8($v0) +/* 0BCB38 800BBF38 3C017000 */ lui $at, 0x7000 +/* 0BCB3C 800BBF3C 00E1C024 */ and $t8, $a3, $at +/* 0BCB40 800BBF40 00187702 */ srl $t6, $t8, 0x1c +/* 0BCB44 800BBF44 19C00007 */ blez $t6, .L800BBF64 +/* 0BCB48 800BBF48 3C01800E */ lui $at, 0x800e +/* 0BCB4C 800BBF4C 000E7880 */ sll $t7, $t6, 2 +/* 0BCB50 800BBF50 00AFC821 */ addu $t9, $a1, $t7 +/* 0BCB54 800BBF54 8F380070 */ lw $t8, 0x70($t9) +/* 0BCB58 800BBF58 3C01800E */ lui $at, %hi(D_800E3180) # $at, 0x800e +/* 0BCB5C 800BBF5C 10000002 */ b .L800BBF68 +/* 0BCB60 800BBF60 AC383180 */ sw $t8, %lo(D_800E3180)($at) +.L800BBF64: +/* 0BCB64 800BBF64 AC203180 */ sw $zero, %lo(D_800E3180)($at) +.L800BBF68: +/* 0BCB68 800BBF68 8FB00008 */ lw $s0, 8($sp) +/* 0BCB6C 800BBF6C 8FB1000C */ lw $s1, 0xc($sp) +/* 0BCB70 800BBF70 03E00008 */ jr $ra +/* 0BCB74 800BBF74 27BD0010 */ addiu $sp, $sp, 0x10 + diff --git a/asm/non_matchings/unknown_0B8920/func_800BBF78.s b/asm/non_matchings/unknown_0B8920/func_800BBF78.s new file mode 100644 index 00000000..fc1260cf --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800BBF78.s @@ -0,0 +1,511 @@ +glabel func_800BBF78 +/* 0BCB78 800BBF78 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 0BCB7C 800BBF7C AFBF003C */ sw $ra, 0x3c($sp) +/* 0BCB80 800BBF80 AFBE0038 */ sw $fp, 0x38($sp) +/* 0BCB84 800BBF84 AFB70034 */ sw $s7, 0x34($sp) +/* 0BCB88 800BBF88 AFB60030 */ sw $s6, 0x30($sp) +/* 0BCB8C 800BBF8C AFB5002C */ sw $s5, 0x2c($sp) +/* 0BCB90 800BBF90 AFB40028 */ sw $s4, 0x28($sp) +/* 0BCB94 800BBF94 AFB30024 */ sw $s3, 0x24($sp) +/* 0BCB98 800BBF98 AFB20020 */ sw $s2, 0x20($sp) +/* 0BCB9C 800BBF9C AFB1001C */ sw $s1, 0x1c($sp) +/* 0BCBA0 800BBFA0 AFB00018 */ sw $s0, 0x18($sp) +/* 0BCBA4 800BBFA4 8C8E0004 */ lw $t6, 4($a0) +/* 0BCBA8 800BBFA8 3C0F8013 */ lui $t7, %hi(D_80129FC8) # $t7, 0x8013 +/* 0BCBAC 800BBFAC 3C188013 */ lui $t8, %hi(D_80129FF0) # $t8, 0x8013 +/* 0BCBB0 800BBFB0 8DEF9FC8 */ lw $t7, %lo(D_80129FC8)($t7) +/* 0BCBB4 800BBFB4 8F189FF0 */ lw $t8, %lo(D_80129FF0)($t8) +/* 0BCBB8 800BBFB8 AFAE0040 */ sw $t6, 0x40($sp) +/* 0BCBBC 800BBFBC 8C940008 */ lw $s4, 8($a0) +/* 0BCBC0 800BBFC0 00809825 */ move $s3, $a0 +/* 0BCBC4 800BBFC4 13000003 */ beqz $t8, .L800BBFD4 +/* 0BCBC8 800BBFC8 AFAF0044 */ sw $t7, 0x44($sp) +/* 0BCBCC 800BBFCC 000FC840 */ sll $t9, $t7, 1 +/* 0BCBD0 800BBFD0 AFB90044 */ sw $t9, 0x44($sp) +.L800BBFD4: +/* 0BCBD4 800BBFD4 868E0000 */ lh $t6, ($s4) +/* 0BCBD8 800BBFD8 3C038013 */ lui $v1, %hi(D_8012A0C0) # $v1, 0x8013 +/* 0BCBDC 800BBFDC 2463A0C0 */ addiu $v1, %lo(D_8012A0C0) # addiu $v1, $v1, -0x5f40 +/* 0BCBE0 800BBFE0 AC6E0000 */ sw $t6, ($v1) +/* 0BCBE4 800BBFE4 86980006 */ lh $t8, 6($s4) +/* 0BCBE8 800BBFE8 3C048013 */ lui $a0, %hi(D_8012A0C8) # $a0, 0x8013 +/* 0BCBEC 800BBFEC 2484A0C8 */ addiu $a0, %lo(D_8012A0C8) # addiu $a0, $a0, -0x5f38 +/* 0BCBF0 800BBFF0 AC980000 */ sw $t8, ($a0) +/* 0BCBF4 800BBFF4 868F0004 */ lh $t7, 4($s4) +/* 0BCBF8 800BBFF8 3C068013 */ lui $a2, %hi(D_8012A0C4) # $a2, 0x8013 +/* 0BCBFC 800BBFFC 24C6A0C4 */ addiu $a2, %lo(D_8012A0C4) # addiu $a2, $a2, -0x5f3c +/* 0BCC00 800BC000 ACCF0000 */ sw $t7, ($a2) +/* 0BCC04 800BC004 8699000A */ lh $t9, 0xa($s4) +/* 0BCC08 800BC008 3C098013 */ lui $t1, %hi(D_8012A0CC) # $t1, 0x8013 +/* 0BCC0C 800BC00C 2529A0CC */ addiu $t1, %lo(D_8012A0CC) # addiu $t1, $t1, -0x5f34 +/* 0BCC10 800BC010 AD390000 */ sw $t9, ($t1) +/* 0BCC14 800BC014 866E001A */ lh $t6, 0x1a($s3) +/* 0BCC18 800BC018 241F0001 */ li $ra, 1 +/* 0BCC1C 800BC01C 29C10002 */ slti $at, $t6, 2 +/* 0BCC20 800BC020 14200022 */ bnez $at, .L800BC0AC +/* 0BCC24 800BC024 3C168013 */ lui $s6, %hi(D_8012A0D0) # $s6, 0x8013 +/* 0BCC28 800BC028 2690000C */ addiu $s0, $s4, 0xc +.L800BC02C: +/* 0BCC2C 800BC02C 86020000 */ lh $v0, ($s0) +/* 0BCC30 800BC030 8C780000 */ lw $t8, ($v1) +/* 0BCC34 800BC034 8C870000 */ lw $a3, ($a0) +/* 0BCC38 800BC038 8CC50000 */ lw $a1, ($a2) +/* 0BCC3C 800BC03C 8D280000 */ lw $t0, ($t1) +/* 0BCC40 800BC040 0058082A */ slt $at, $v0, $t8 +/* 0BCC44 800BC044 10200002 */ beqz $at, .L800BC050 +/* 0BCC48 800BC048 00000000 */ nop +/* 0BCC4C 800BC04C AC620000 */ sw $v0, ($v1) +.L800BC050: +/* 0BCC50 800BC050 86020006 */ lh $v0, 6($s0) +/* 0BCC54 800BC054 00000000 */ nop +/* 0BCC58 800BC058 00E2082A */ slt $at, $a3, $v0 +/* 0BCC5C 800BC05C 10200002 */ beqz $at, .L800BC068 +/* 0BCC60 800BC060 00000000 */ nop +/* 0BCC64 800BC064 AC820000 */ sw $v0, ($a0) +.L800BC068: +/* 0BCC68 800BC068 86020004 */ lh $v0, 4($s0) +/* 0BCC6C 800BC06C 00000000 */ nop +/* 0BCC70 800BC070 0045082A */ slt $at, $v0, $a1 +/* 0BCC74 800BC074 10200002 */ beqz $at, .L800BC080 +/* 0BCC78 800BC078 00000000 */ nop +/* 0BCC7C 800BC07C ACC20000 */ sw $v0, ($a2) +.L800BC080: +/* 0BCC80 800BC080 8602000A */ lh $v0, 0xa($s0) +/* 0BCC84 800BC084 00000000 */ nop +/* 0BCC88 800BC088 0102082A */ slt $at, $t0, $v0 +/* 0BCC8C 800BC08C 10200002 */ beqz $at, .L800BC098 +/* 0BCC90 800BC090 00000000 */ nop +/* 0BCC94 800BC094 AD220000 */ sw $v0, ($t1) +.L800BC098: +/* 0BCC98 800BC098 866F001A */ lh $t7, 0x1a($s3) +/* 0BCC9C 800BC09C 27FF0001 */ addiu $ra, $ra, 1 +/* 0BCCA0 800BC0A0 03EF082A */ slt $at, $ra, $t7 +/* 0BCCA4 800BC0A4 1420FFE1 */ bnez $at, .L800BC02C +/* 0BCCA8 800BC0A8 2610000C */ addiu $s0, $s0, 0xc +.L800BC0AC: +/* 0BCCAC 800BC0AC 3C198013 */ lui $t9, %hi(D_8012A0B0) # $t9, 0x8013 +/* 0BCCB0 800BC0B0 8F24A0B0 */ lw $a0, %lo(D_8012A0B0)($t9) +/* 0BCCB4 800BC0B4 26D6A0D0 */ addiu $s6, %lo(D_8012A0D0) # addiu $s6, $s6, -0x5f30 +/* 0BCCB8 800BC0B8 AEC40000 */ sw $a0, ($s6) +/* 0BCCBC 800BC0BC 8C620000 */ lw $v0, ($v1) +/* 0BCCC0 800BC0C0 3C078013 */ lui $a3, %hi(D_8012A0C8) # $a3, 0x8013 +/* 0BCCC4 800BC0C4 3C058013 */ lui $a1, %hi(D_8012A0C4) # $a1, 0x8013 +/* 0BCCC8 800BC0C8 3C088013 */ lui $t0, %hi(D_8012A0CC) # $t0, 0x8013 +/* 0BCCCC 800BC0CC 8D08A0CC */ lw $t0, %lo(D_8012A0CC)($t0) +/* 0BCCD0 800BC0D0 8CA5A0C4 */ lw $a1, %lo(D_8012A0C4)($a1) +/* 0BCCD4 800BC0D4 8CE7A0C8 */ lw $a3, %lo(D_8012A0C8)($a3) +/* 0BCCD8 800BC0D8 0044082A */ slt $at, $v0, $a0 +/* 0BCCDC 800BC0DC 10200009 */ beqz $at, .L800BC104 +/* 0BCCE0 800BC0E0 3C158013 */ lui $s5, %hi(D_8012A0D4) # $s5, 0x8013 +/* 0BCCE4 800BC0E4 3C068013 */ lui $a2, %hi(D_8012A0A8) # $a2, 0x8013 +/* 0BCCE8 800BC0E8 8CC6A0A8 */ lw $a2, %lo(D_8012A0A8)($a2) +/* 0BCCEC 800BC0EC 00000000 */ nop +.L800BC0F0: +/* 0BCCF0 800BC0F0 00867023 */ subu $t6, $a0, $a2 +/* 0BCCF4 800BC0F4 004E082A */ slt $at, $v0, $t6 +/* 0BCCF8 800BC0F8 AECE0000 */ sw $t6, ($s6) +/* 0BCCFC 800BC0FC 1420FFFC */ bnez $at, .L800BC0F0 +/* 0BCD00 800BC100 01C02025 */ move $a0, $t6 +.L800BC104: +/* 0BCD04 800BC104 3C188013 */ lui $t8, %hi(D_8012A0B4) # $t8, 0x8013 +/* 0BCD08 800BC108 8F18A0B4 */ lw $t8, %lo(D_8012A0B4)($t8) +/* 0BCD0C 800BC10C 26B5A0D4 */ addiu $s5, %lo(D_8012A0D4) # addiu $s5, $s5, -0x5f2c +/* 0BCD10 800BC110 3C068013 */ lui $a2, %hi(D_8012A0A8) # $a2, 0x8013 +/* 0BCD14 800BC114 AEB80000 */ sw $t8, ($s5) +/* 0BCD18 800BC118 8CC6A0A8 */ lw $a2, %lo(D_8012A0A8)($a2) +/* 0BCD1C 800BC11C 00B8082A */ slt $at, $a1, $t8 +/* 0BCD20 800BC120 10200009 */ beqz $at, .L800BC148 +/* 0BCD24 800BC124 03001025 */ move $v0, $t8 +/* 0BCD28 800BC128 3C038013 */ lui $v1, %hi(D_8012A0AC) # $v1, 0x8013 +/* 0BCD2C 800BC12C 8C63A0AC */ lw $v1, %lo(D_8012A0AC)($v1) +/* 0BCD30 800BC130 00000000 */ nop +.L800BC134: +/* 0BCD34 800BC134 00437823 */ subu $t7, $v0, $v1 +/* 0BCD38 800BC138 00AF082A */ slt $at, $a1, $t7 +/* 0BCD3C 800BC13C AEAF0000 */ sw $t7, ($s5) +/* 0BCD40 800BC140 1420FFFC */ bnez $at, .L800BC134 +/* 0BCD44 800BC144 01E01025 */ move $v0, $t7 +.L800BC148: +/* 0BCD48 800BC148 00E4C823 */ subu $t9, $a3, $a0 +/* 0BCD4C 800BC14C 0326001A */ div $zero, $t9, $a2 +/* 0BCD50 800BC150 3C1E8013 */ lui $fp, %hi(D_8012A0AC) # $fp, 0x8013 +/* 0BCD54 800BC154 27DEA0AC */ addiu $fp, %lo(D_8012A0AC) # addiu $fp, $fp, -0x5f54 +/* 0BCD58 800BC158 01027823 */ subu $t7, $t0, $v0 +/* 0BCD5C 800BC15C 3C178013 */ lui $s7, %hi(D_8012A0D8) # $s7, 0x8013 +/* 0BCD60 800BC160 26F7A0D8 */ addiu $s7, %lo(D_8012A0D8) # addiu $s7, $s7, -0x5f28 +/* 0BCD64 800BC164 3C12800E */ lui $s2, %hi(D_800E30D4) # $s2, 0x800e +/* 0BCD68 800BC168 265230D4 */ addiu $s2, %lo(D_800E30D4) # addiu $s2, $s2, 0x30d4 +/* 0BCD6C 800BC16C 8E450000 */ lw $a1, ($s2) +/* 0BCD70 800BC170 3C10800E */ lui $s0, %hi(D_800E318C) # $s0, 0x800e +/* 0BCD74 800BC174 3C118013 */ lui $s1, %hi(D_8012A0DC) # $s1, 0x8013 +/* 0BCD78 800BC178 2631A0DC */ addiu $s1, %lo(D_8012A0DC) # addiu $s1, $s1, -0x5f24 +/* 0BCD7C 800BC17C 2610318C */ addiu $s0, %lo(D_800E318C) # addiu $s0, $s0, 0x318c +/* 0BCD80 800BC180 14C00002 */ bnez $a2, .L800BC18C +/* 0BCD84 800BC184 00000000 */ nop +/* 0BCD88 800BC188 0007000D */ break 7 +.L800BC18C: +/* 0BCD8C 800BC18C 2401FFFF */ li $at, -1 +/* 0BCD90 800BC190 14C10004 */ bne $a2, $at, .L800BC1A4 +/* 0BCD94 800BC194 3C018000 */ lui $at, 0x8000 +/* 0BCD98 800BC198 17210002 */ bne $t9, $at, .L800BC1A4 +/* 0BCD9C 800BC19C 00000000 */ nop +/* 0BCDA0 800BC1A0 0006000D */ break 6 +.L800BC1A4: +/* 0BCDA4 800BC1A4 8FD90000 */ lw $t9, ($fp) +/* 0BCDA8 800BC1A8 00007012 */ mflo $t6 +/* 0BCDAC 800BC1AC 25D80001 */ addiu $t8, $t6, 1 +/* 0BCDB0 800BC1B0 AEF80000 */ sw $t8, ($s7) +/* 0BCDB4 800BC1B4 01F9001A */ div $zero, $t7, $t9 +/* 0BCDB8 800BC1B8 8EE30000 */ lw $v1, ($s7) +/* 0BCDBC 800BC1BC 17200002 */ bnez $t9, .L800BC1C8 +/* 0BCDC0 800BC1C0 00000000 */ nop +/* 0BCDC4 800BC1C4 0007000D */ break 7 +.L800BC1C8: +/* 0BCDC8 800BC1C8 2401FFFF */ li $at, -1 +/* 0BCDCC 800BC1CC 17210004 */ bne $t9, $at, .L800BC1E0 +/* 0BCDD0 800BC1D0 3C018000 */ lui $at, 0x8000 +/* 0BCDD4 800BC1D4 15E10002 */ bne $t7, $at, .L800BC1E0 +/* 0BCDD8 800BC1D8 00000000 */ nop +/* 0BCDDC 800BC1DC 0006000D */ break 6 +.L800BC1E0: +/* 0BCDE0 800BC1E0 8FAF0044 */ lw $t7, 0x44($sp) +/* 0BCDE4 800BC1E4 00007012 */ mflo $t6 +/* 0BCDE8 800BC1E8 25D80001 */ addiu $t8, $t6, 1 +/* 0BCDEC 800BC1EC AE380000 */ sw $t8, ($s1) +/* 0BCDF0 800BC1F0 01E30019 */ multu $t7, $v1 +/* 0BCDF4 800BC1F4 0000C812 */ mflo $t9 +/* 0BCDF8 800BC1F8 272E0001 */ addiu $t6, $t9, 1 +/* 0BCDFC 800BC1FC 10A00005 */ beqz $a1, .L800BC214 +/* 0BCE00 800BC200 AE0E0000 */ sw $t6, ($s0) +/* 0BCE04 800BC204 0C01C450 */ jal func_80071140 +/* 0BCE08 800BC208 00A02025 */ move $a0, $a1 +/* 0BCE0C 800BC20C 8EE30000 */ lw $v1, ($s7) +/* 0BCE10 800BC210 00000000 */ nop +.L800BC214: +/* 0BCE14 800BC214 8E380000 */ lw $t8, ($s1) +/* 0BCE18 800BC218 3C0500FF */ lui $a1, (0x00FFFFFF >> 16) # lui $a1, 0xff +/* 0BCE1C 800BC21C 00780019 */ multu $v1, $t8 +/* 0BCE20 800BC220 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff +/* 0BCE24 800BC224 00002012 */ mflo $a0 +/* 0BCE28 800BC228 00047880 */ sll $t7, $a0, 2 +/* 0BCE2C 800BC22C 0C01C327 */ jal func_80070C9C +/* 0BCE30 800BC230 01E02025 */ move $a0, $t7 +/* 0BCE34 800BC234 AE420000 */ sw $v0, ($s2) +/* 0BCE38 800BC238 3C04800E */ lui $a0, %hi(D_800E30D8) # $a0, 0x800e +/* 0BCE3C 800BC23C 8C8430D8 */ lw $a0, %lo(D_800E30D8)($a0) +/* 0BCE40 800BC240 00000000 */ nop +/* 0BCE44 800BC244 10800003 */ beqz $a0, .L800BC254 +/* 0BCE48 800BC248 00000000 */ nop +/* 0BCE4C 800BC24C 0C01C450 */ jal func_80071140 +/* 0BCE50 800BC250 00000000 */ nop +.L800BC254: +/* 0BCE54 800BC254 8679001A */ lh $t9, 0x1a($s3) +/* 0BCE58 800BC258 8E180000 */ lw $t8, ($s0) +/* 0BCE5C 800BC25C 001970C0 */ sll $t6, $t9, 3 +/* 0BCE60 800BC260 01D97023 */ subu $t6, $t6, $t9 +/* 0BCE64 800BC264 000E7080 */ sll $t6, $t6, 2 +/* 0BCE68 800BC268 001878C0 */ sll $t7, $t8, 3 +/* 0BCE6C 800BC26C 01CF2021 */ addu $a0, $t6, $t7 +/* 0BCE70 800BC270 3C0500FF */ lui $a1, (0x00FFFFFF >> 16) # lui $a1, 0xff +/* 0BCE74 800BC274 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff +/* 0BCE78 800BC278 0C01C327 */ jal func_80070C9C +/* 0BCE7C 800BC27C 24840880 */ addiu $a0, $a0, 0x880 +/* 0BCE80 800BC280 3C01800E */ lui $at, %hi(D_800E30D8) # $at, 0x800e +/* 0BCE84 800BC284 AC2230D8 */ sw $v0, %lo(D_800E30D8)($at) +/* 0BCE88 800BC288 8678001A */ lh $t8, 0x1a($s3) +/* 0BCE8C 800BC28C 3C19800E */ lui $t9, %hi(D_800E30D8) # $t9, 0x800e +/* 0BCE90 800BC290 001870C0 */ sll $t6, $t8, 3 +/* 0BCE94 800BC294 8F3930D8 */ lw $t9, %lo(D_800E30D8)($t9) +/* 0BCE98 800BC298 01D87023 */ subu $t6, $t6, $t8 +/* 0BCE9C 800BC29C 000E7080 */ sll $t6, $t6, 2 +/* 0BCEA0 800BC2A0 3C05800E */ lui $a1, %hi(D_800E3190) # $a1, 0x800e +/* 0BCEA4 800BC2A4 032E7821 */ addu $t7, $t9, $t6 +/* 0BCEA8 800BC2A8 24A53190 */ addiu $a1, %lo(D_800E3190) # addiu $a1, $a1, 0x3190 +/* 0BCEAC 800BC2AC 3C04800E */ lui $a0, %hi(D_800E3194) # $a0, 0x800e +/* 0BCEB0 800BC2B0 25F90800 */ addiu $t9, $t7, 0x800 +/* 0BCEB4 800BC2B4 8E180000 */ lw $t8, ($s0) +/* 0BCEB8 800BC2B8 24843194 */ addiu $a0, %lo(D_800E3194) # addiu $a0, $a0, 0x3194 +/* 0BCEBC 800BC2BC ACAF0000 */ sw $t7, ($a1) +/* 0BCEC0 800BC2C0 3C03800E */ lui $v1, %hi(D_800E3184) # $v1, 0x800e +/* 0BCEC4 800BC2C4 AC990000 */ sw $t9, ($a0) +/* 0BCEC8 800BC2C8 272F0080 */ addiu $t7, $t9, 0x80 +/* 0BCECC 800BC2CC 24633184 */ addiu $v1, %lo(D_800E3184) # addiu $v1, $v1, 0x3184 +/* 0BCED0 800BC2D0 0018C8C0 */ sll $t9, $t8, 3 +/* 0BCED4 800BC2D4 AC6F0000 */ sw $t7, ($v1) +/* 0BCED8 800BC2D8 1B20000C */ blez $t9, .L800BC30C +/* 0BCEDC 800BC2DC 0000F825 */ move $ra, $zero +/* 0BCEE0 800BC2E0 240200FF */ li $v0, 255 +.L800BC2E4: +/* 0BCEE4 800BC2E4 8C6E0000 */ lw $t6, ($v1) +/* 0BCEE8 800BC2E8 00000000 */ nop +/* 0BCEEC 800BC2EC 01DF7821 */ addu $t7, $t6, $ra +/* 0BCEF0 800BC2F0 A1E20000 */ sb $v0, ($t7) +/* 0BCEF4 800BC2F4 8E180000 */ lw $t8, ($s0) +/* 0BCEF8 800BC2F8 27FF0001 */ addiu $ra, $ra, 1 +/* 0BCEFC 800BC2FC 0018C8C0 */ sll $t9, $t8, 3 +/* 0BCF00 800BC300 03F9082A */ slt $at, $ra, $t9 +/* 0BCF04 800BC304 1420FFF7 */ bnez $at, .L800BC2E4 +/* 0BCF08 800BC308 00000000 */ nop +.L800BC30C: +/* 0BCF0C 800BC30C 00001025 */ move $v0, $zero +.L800BC310: +/* 0BCF10 800BC310 8C8E0000 */ lw $t6, ($a0) +/* 0BCF14 800BC314 00000000 */ nop +/* 0BCF18 800BC318 01C27821 */ addu $t7, $t6, $v0 +/* 0BCF1C 800BC31C 24420004 */ addiu $v0, $v0, 4 +/* 0BCF20 800BC320 28410080 */ slti $at, $v0, 0x80 +/* 0BCF24 800BC324 1420FFFA */ bnez $at, .L800BC310 +/* 0BCF28 800BC328 ADE00000 */ sw $zero, ($t7) +/* 0BCF2C 800BC32C 3C01800E */ lui $at, %hi(D_800E3188) # $at, 0x800e +/* 0BCF30 800BC330 AC203188 */ sw $zero, %lo(D_800E3188)($at) +/* 0BCF34 800BC334 8E390000 */ lw $t9, ($s1) +/* 0BCF38 800BC338 8EF80000 */ lw $t8, ($s7) +/* 0BCF3C 800BC33C 02808025 */ move $s0, $s4 +/* 0BCF40 800BC340 03190019 */ multu $t8, $t9 +/* 0BCF44 800BC344 3C038013 */ lui $v1, %hi(D_8012A1E8) # $v1, 0x8013 +/* 0BCF48 800BC348 3C148013 */ lui $s4, %hi(D_8012A0A8) # $s4, 0x8013 +/* 0BCF4C 800BC34C 0000F825 */ move $ra, $zero +/* 0BCF50 800BC350 00001025 */ move $v0, $zero +/* 0BCF54 800BC354 2463A1E8 */ addiu $v1, %lo(D_8012A1E8) # addiu $v1, $v1, -0x5e18 +/* 0BCF58 800BC358 2694A0A8 */ addiu $s4, %lo(D_8012A0A8) # addiu $s4, $s4, -0x5f58 +/* 0BCF5C 800BC35C 240C000A */ li $t4, 10 +/* 0BCF60 800BC360 3C0B0040 */ lui $t3, 0x40 +/* 0BCF64 800BC364 24050080 */ li $a1, 128 +/* 0BCF68 800BC368 00007012 */ mflo $t6 +/* 0BCF6C 800BC36C 19C0000D */ blez $t6, .L800BC3A4 +/* 0BCF70 800BC370 00000000 */ nop +.L800BC374: +/* 0BCF74 800BC374 8E4F0000 */ lw $t7, ($s2) +/* 0BCF78 800BC378 27FF0001 */ addiu $ra, $ra, 1 +/* 0BCF7C 800BC37C 01E2C021 */ addu $t8, $t7, $v0 +/* 0BCF80 800BC380 AF000000 */ sw $zero, ($t8) +/* 0BCF84 800BC384 8E2E0000 */ lw $t6, ($s1) +/* 0BCF88 800BC388 8EF90000 */ lw $t9, ($s7) +/* 0BCF8C 800BC38C 24420004 */ addiu $v0, $v0, 4 +/* 0BCF90 800BC390 032E0019 */ multu $t9, $t6 +/* 0BCF94 800BC394 00007812 */ mflo $t7 +/* 0BCF98 800BC398 03EF082A */ slt $at, $ra, $t7 +/* 0BCF9C 800BC39C 1420FFF5 */ bnez $at, .L800BC374 +/* 0BCFA0 800BC3A0 00000000 */ nop +.L800BC3A4: +/* 0BCFA4 800BC3A4 3C028013 */ lui $v0, %hi(D_8012A0E8) # $v0, 0x8013 +/* 0BCFA8 800BC3A8 2442A0E8 */ addiu $v0, %lo(D_8012A0E8) # addiu $v0, $v0, -0x5f18 +.L800BC3AC: +/* 0BCFAC 800BC3AC 24420004 */ addiu $v0, $v0, 4 +/* 0BCFB0 800BC3B0 0043082B */ sltu $at, $v0, $v1 +/* 0BCFB4 800BC3B4 1420FFFD */ bnez $at, .L800BC3AC +/* 0BCFB8 800BC3B8 AC40FFFC */ sw $zero, -4($v0) +/* 0BCFBC 800BC3BC 8679001A */ lh $t9, 0x1a($s3) +/* 0BCFC0 800BC3C0 3C028013 */ lui $v0, %hi(D_8012A0E0) # $v0, 0x8013 +/* 0BCFC4 800BC3C4 2442A0E0 */ addiu $v0, %lo(D_8012A0E0) # addiu $v0, $v0, -0x5f20 +/* 0BCFC8 800BC3C8 0000F825 */ move $ra, $zero +/* 0BCFCC 800BC3CC 1B2000B2 */ blez $t9, .L800BC698 +/* 0BCFD0 800BC3D0 AC590000 */ sw $t9, ($v0) +/* 0BCFD4 800BC3D4 8FAE0040 */ lw $t6, 0x40($sp) +/* 0BCFD8 800BC3D8 00009025 */ move $s2, $zero +/* 0BCFDC 800BC3DC 01C04025 */ move $t0, $t6 +/* 0BCFE0 800BC3E0 01C09825 */ move $s3, $t6 +.L800BC3E4: +/* 0BCFE4 800BC3E4 8EC40000 */ lw $a0, ($s6) +/* 0BCFE8 800BC3E8 860F0000 */ lh $t7, ($s0) +/* 0BCFEC 800BC3EC 8E860000 */ lw $a2, ($s4) +/* 0BCFF0 800BC3F0 01E44823 */ subu $t1, $t7, $a0 +/* 0BCFF4 800BC3F4 25290008 */ addiu $t1, $t1, 8 +/* 0BCFF8 800BC3F8 0126001A */ div $zero, $t1, $a2 +/* 0BCFFC 800BC3FC 8EA20000 */ lw $v0, ($s5) +/* 0BD000 800BC400 86180004 */ lh $t8, 4($s0) +/* 0BD004 800BC404 8FC30000 */ lw $v1, ($fp) +/* 0BD008 800BC408 03025023 */ subu $t2, $t8, $v0 +/* 0BD00C 800BC40C 254A0008 */ addiu $t2, $t2, 8 +/* 0BD010 800BC410 14C00002 */ bnez $a2, .L800BC41C +/* 0BD014 800BC414 00000000 */ nop +/* 0BD018 800BC418 0007000D */ break 7 +.L800BC41C: +/* 0BD01C 800BC41C 2401FFFF */ li $at, -1 +/* 0BD020 800BC420 14C10004 */ bne $a2, $at, .L800BC434 +/* 0BD024 800BC424 3C018000 */ lui $at, 0x8000 +/* 0BD028 800BC428 15210002 */ bne $t1, $at, .L800BC434 +/* 0BD02C 800BC42C 00000000 */ nop +/* 0BD030 800BC430 0006000D */ break 6 +.L800BC434: +/* 0BD034 800BC434 AFA00058 */ sw $zero, 0x58($sp) +/* 0BD038 800BC438 850D0020 */ lh $t5, 0x20($t0) +/* 0BD03C 800BC43C 27FF0001 */ addiu $ra, $ra, 1 +/* 0BD040 800BC440 2610000C */ addiu $s0, $s0, 0xc +/* 0BD044 800BC444 00003825 */ move $a3, $zero +/* 0BD048 800BC448 0000C812 */ mflo $t9 +/* 0BD04C 800BC44C 00000000 */ nop +/* 0BD050 800BC450 00000000 */ nop +/* 0BD054 800BC454 03260019 */ multu $t9, $a2 +/* 0BD058 800BC458 00007012 */ mflo $t6 +/* 0BD05C 800BC45C 01C44821 */ addu $t1, $t6, $a0 +/* 0BD060 800BC460 00000000 */ nop +/* 0BD064 800BC464 0143001A */ div $zero, $t2, $v1 +/* 0BD068 800BC468 14600002 */ bnez $v1, .L800BC474 +/* 0BD06C 800BC46C 00000000 */ nop +/* 0BD070 800BC470 0007000D */ break 7 +.L800BC474: +/* 0BD074 800BC474 2401FFFF */ li $at, -1 +/* 0BD078 800BC478 14610004 */ bne $v1, $at, .L800BC48C +/* 0BD07C 800BC47C 3C018000 */ lui $at, 0x8000 +/* 0BD080 800BC480 15410002 */ bne $t2, $at, .L800BC48C +/* 0BD084 800BC484 00000000 */ nop +/* 0BD088 800BC488 0006000D */ break 6 +.L800BC48C: +/* 0BD08C 800BC48C 00007812 */ mflo $t7 +/* 0BD090 800BC490 00000000 */ nop +/* 0BD094 800BC494 00000000 */ nop +/* 0BD098 800BC498 01E30019 */ multu $t7, $v1 +/* 0BD09C 800BC49C 0000C012 */ mflo $t8 +/* 0BD0A0 800BC4A0 03025021 */ addu $t2, $t8, $v0 +/* 0BD0A4 800BC4A4 19A00017 */ blez $t5, .L800BC504 +/* 0BD0A8 800BC4A8 00000000 */ nop +/* 0BD0AC 800BC4AC 000D3080 */ sll $a2, $t5, 2 +/* 0BD0B0 800BC4B0 00CD3023 */ subu $a2, $a2, $t5 +/* 0BD0B4 800BC4B4 8D02000C */ lw $v0, 0xc($t0) +/* 0BD0B8 800BC4B8 00063080 */ sll $a2, $a2, 2 +/* 0BD0BC 800BC4BC 00001825 */ move $v1, $zero +.L800BC4C0: +/* 0BD0C0 800BC4C0 8C440008 */ lw $a0, 8($v0) +/* 0BD0C4 800BC4C4 2463000C */ addiu $v1, $v1, 0xc +/* 0BD0C8 800BC4C8 30992000 */ andi $t9, $a0, 0x2000 +/* 0BD0CC 800BC4CC 1320000B */ beqz $t9, .L800BC4FC +/* 0BD0D0 800BC4D0 0066082A */ slt $at, $v1, $a2 +/* 0BD0D4 800BC4D4 008B7024 */ and $t6, $a0, $t3 +/* 0BD0D8 800BC4D8 11C00008 */ beqz $t6, .L800BC4FC +/* 0BD0DC 800BC4DC 00000000 */ nop +/* 0BD0E0 800BC4E0 84580002 */ lh $t8, 2($v0) +/* 0BD0E4 800BC4E4 8D0F0000 */ lw $t7, ($t0) +/* 0BD0E8 800BC4E8 030C0019 */ multu $t8, $t4 +/* 0BD0EC 800BC4EC 0000C812 */ mflo $t9 +/* 0BD0F0 800BC4F0 01F97021 */ addu $t6, $t7, $t9 +/* 0BD0F4 800BC4F4 85C70002 */ lh $a3, 2($t6) +/* 0BD0F8 800BC4F8 00000000 */ nop +.L800BC4FC: +/* 0BD0FC 800BC4FC 1420FFF0 */ bnez $at, .L800BC4C0 +/* 0BD100 800BC500 2442000C */ addiu $v0, $v0, 0xc +.L800BC504: +/* 0BD104 800BC504 3C18800E */ lui $t8, %hi(D_800E30D8) # $t8, 0x800e +/* 0BD108 800BC508 8F1830D8 */ lw $t8, %lo(D_800E30D8)($t8) +/* 0BD10C 800BC50C 25080044 */ addiu $t0, $t0, 0x44 +/* 0BD110 800BC510 02582021 */ addu $a0, $s2, $t8 +/* 0BD114 800BC514 AC930000 */ sw $s3, ($a0) +/* 0BD118 800BC518 A4890004 */ sh $t1, 4($a0) +/* 0BD11C 800BC51C A4870006 */ sh $a3, 6($a0) +/* 0BD120 800BC520 A48A0008 */ sh $t2, 8($a0) +/* 0BD124 800BC524 8ECF0000 */ lw $t7, ($s6) +/* 0BD128 800BC528 8E8E0000 */ lw $t6, ($s4) +/* 0BD12C 800BC52C 012FC823 */ subu $t9, $t1, $t7 +/* 0BD130 800BC530 032E001A */ div $zero, $t9, $t6 +/* 0BD134 800BC534 15C00002 */ bnez $t6, .L800BC540 +/* 0BD138 800BC538 00000000 */ nop +/* 0BD13C 800BC53C 0007000D */ break 7 +.L800BC540: +/* 0BD140 800BC540 2401FFFF */ li $at, -1 +/* 0BD144 800BC544 15C10004 */ bne $t6, $at, .L800BC558 +/* 0BD148 800BC548 3C018000 */ lui $at, 0x8000 +/* 0BD14C 800BC54C 17210002 */ bne $t9, $at, .L800BC558 +/* 0BD150 800BC550 00000000 */ nop +/* 0BD154 800BC554 0006000D */ break 6 +.L800BC558: +/* 0BD158 800BC558 0000C012 */ mflo $t8 +/* 0BD15C 800BC55C A098000A */ sb $t8, 0xa($a0) +/* 0BD160 800BC560 8EAF0000 */ lw $t7, ($s5) +/* 0BD164 800BC564 8FCE0000 */ lw $t6, ($fp) +/* 0BD168 800BC568 014FC823 */ subu $t9, $t2, $t7 +/* 0BD16C 800BC56C 032E001A */ div $zero, $t9, $t6 +/* 0BD170 800BC570 9086000A */ lbu $a2, 0xa($a0) +/* 0BD174 800BC574 15C00002 */ bnez $t6, .L800BC580 +/* 0BD178 800BC578 00000000 */ nop +/* 0BD17C 800BC57C 0007000D */ break 7 +.L800BC580: +/* 0BD180 800BC580 2401FFFF */ li $at, -1 +/* 0BD184 800BC584 15C10004 */ bne $t6, $at, .L800BC598 +/* 0BD188 800BC588 3C018000 */ lui $at, 0x8000 +/* 0BD18C 800BC58C 17210002 */ bne $t9, $at, .L800BC598 +/* 0BD190 800BC590 00000000 */ nop +/* 0BD194 800BC594 0006000D */ break 6 +.L800BC598: +/* 0BD198 800BC598 0000C012 */ mflo $t8 +/* 0BD19C 800BC59C A098000B */ sb $t8, 0xb($a0) +/* 0BD1A0 800BC5A0 8EEF0000 */ lw $t7, ($s7) +/* 0BD1A4 800BC5A4 331100FF */ andi $s1, $t8, 0xff +/* 0BD1A8 800BC5A8 022F0019 */ multu $s1, $t7 +/* 0BD1AC 800BC5AC A4800012 */ sh $zero, 0x12($a0) +/* 0BD1B0 800BC5B0 A4800010 */ sh $zero, 0x10($a0) +/* 0BD1B4 800BC5B4 02206825 */ move $t5, $s1 +/* 0BD1B8 800BC5B8 0000C812 */ mflo $t9 +/* 0BD1BC 800BC5BC 00D97021 */ addu $t6, $a2, $t9 +/* 0BD1C0 800BC5C0 AC8E000C */ sw $t6, 0xc($a0) +/* 0BD1C4 800BC5C4 8118FFE7 */ lb $t8, -0x19($t0) +/* 0BD1C8 800BC5C8 8FAF0044 */ lw $t7, 0x44($sp) +/* 0BD1CC 800BC5CC 13000024 */ beqz $t8, .L800BC660 +/* 0BD1D0 800BC5D0 00000000 */ nop +/* 0BD1D4 800BC5D4 00CF0019 */ multu $a2, $t7 +/* 0BD1D8 800BC5D8 3C038013 */ lui $v1, %hi(D_80129FCC) # $v1, 0x8013 +/* 0BD1DC 800BC5DC 8C639FCC */ lw $v1, %lo(D_80129FCC)($v1) +/* 0BD1E0 800BC5E0 3C188013 */ lui $t8, %hi(D_8012A0E8) # $t8, 0x8013 +/* 0BD1E4 800BC5E4 2718A0E8 */ addiu $t8, %lo(D_8012A0E8) # addiu $t8, $t8, -0x5f18 +/* 0BD1E8 800BC5E8 00117080 */ sll $t6, $s1, 2 +/* 0BD1EC 800BC5EC 00001012 */ mflo $v0 +/* 0BD1F0 800BC5F0 0043082A */ slt $at, $v0, $v1 +/* 0BD1F4 800BC5F4 14200005 */ bnez $at, .L800BC60C +/* 0BD1F8 800BC5F8 00000000 */ nop +.L800BC5FC: +/* 0BD1FC 800BC5FC 00431023 */ subu $v0, $v0, $v1 +/* 0BD200 800BC600 0043082A */ slt $at, $v0, $v1 +/* 0BD204 800BC604 1020FFFD */ beqz $at, .L800BC5FC +/* 0BD208 800BC608 00000000 */ nop +.L800BC60C: +/* 0BD20C 800BC60C A4820012 */ sh $v0, 0x12($a0) +/* 0BD210 800BC610 8FB90044 */ lw $t9, 0x44($sp) +/* 0BD214 800BC614 3C038013 */ lui $v1, %hi(D_80129FCC) # $v1, 0x8013 +/* 0BD218 800BC618 01B90019 */ multu $t5, $t9 +/* 0BD21C 800BC61C 8C639FCC */ lw $v1, %lo(D_80129FCC)($v1) +/* 0BD220 800BC620 00001012 */ mflo $v0 +/* 0BD224 800BC624 0043082A */ slt $at, $v0, $v1 +/* 0BD228 800BC628 14200005 */ bnez $at, .L800BC640 +/* 0BD22C 800BC62C 00000000 */ nop +.L800BC630: +/* 0BD230 800BC630 00431023 */ subu $v0, $v0, $v1 +/* 0BD234 800BC634 0043082A */ slt $at, $v0, $v1 +/* 0BD238 800BC638 1020FFFD */ beqz $at, .L800BC630 +/* 0BD23C 800BC63C 00000000 */ nop +.L800BC640: +/* 0BD240 800BC640 01D81821 */ addu $v1, $t6, $t8 +/* 0BD244 800BC644 9099000A */ lbu $t9, 0xa($a0) +/* 0BD248 800BC648 A4820010 */ sh $v0, 0x10($a0) +/* 0BD24C 800BC64C 8C6F0000 */ lw $t7, ($v1) +/* 0BD250 800BC650 240E0001 */ li $t6, 1 +/* 0BD254 800BC654 032EC004 */ sllv $t8, $t6, $t9 +/* 0BD258 800BC658 01F87025 */ or $t6, $t7, $t8 +/* 0BD25C 800BC65C AC6E0000 */ sw $t6, ($v1) +.L800BC660: +/* 0BD260 800BC660 3C198013 */ lui $t9, %hi(D_8012A0E0) # $t9, 0x8013 +/* 0BD264 800BC664 A0850015 */ sb $a1, 0x15($a0) +/* 0BD268 800BC668 A0850019 */ sb $a1, 0x19($a0) +/* 0BD26C 800BC66C A0850016 */ sb $a1, 0x16($a0) +/* 0BD270 800BC670 A085001A */ sb $a1, 0x1a($a0) +/* 0BD274 800BC674 A0850017 */ sb $a1, 0x17($a0) +/* 0BD278 800BC678 A085001B */ sb $a1, 0x1b($a0) +/* 0BD27C 800BC67C A0850014 */ sb $a1, 0x14($a0) +/* 0BD280 800BC680 A0850018 */ sb $a1, 0x18($a0) +/* 0BD284 800BC684 8F39A0E0 */ lw $t9, %lo(D_8012A0E0)($t9) +/* 0BD288 800BC688 2652001C */ addiu $s2, $s2, 0x1c +/* 0BD28C 800BC68C 03F9082A */ slt $at, $ra, $t9 +/* 0BD290 800BC690 1420FF54 */ bnez $at, .L800BC3E4 +/* 0BD294 800BC694 26730044 */ addiu $s3, $s3, 0x44 +.L800BC698: +/* 0BD298 800BC698 8FBF003C */ lw $ra, 0x3c($sp) +/* 0BD29C 800BC69C 8FB00018 */ lw $s0, 0x18($sp) +/* 0BD2A0 800BC6A0 8FB1001C */ lw $s1, 0x1c($sp) +/* 0BD2A4 800BC6A4 8FB20020 */ lw $s2, 0x20($sp) +/* 0BD2A8 800BC6A8 8FB30024 */ lw $s3, 0x24($sp) +/* 0BD2AC 800BC6AC 8FB40028 */ lw $s4, 0x28($sp) +/* 0BD2B0 800BC6B0 8FB5002C */ lw $s5, 0x2c($sp) +/* 0BD2B4 800BC6B4 8FB60030 */ lw $s6, 0x30($sp) +/* 0BD2B8 800BC6B8 8FB70034 */ lw $s7, 0x34($sp) +/* 0BD2BC 800BC6BC 8FBE0038 */ lw $fp, 0x38($sp) +/* 0BD2C0 800BC6C0 03E00008 */ jr $ra +/* 0BD2C4 800BC6C4 27BD0060 */ addiu $sp, $sp, 0x60 + diff --git a/asm/non_matchings/unknown_0B8920/func_800BC6C8.s b/asm/non_matchings/unknown_0B8920/func_800BC6C8.s new file mode 100644 index 00000000..dbece45f --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800BC6C8.s @@ -0,0 +1,404 @@ +glabel func_800BC6C8 +/* 0BD2C8 800BC6C8 3C0A8013 */ lui $t2, %hi(D_80129FC8) # $t2, 0x8013 +/* 0BD2CC 800BC6CC 254A9FC8 */ addiu $t2, %lo(D_80129FC8) # addiu $t2, $t2, -0x6038 +/* 0BD2D0 800BC6D0 8D460000 */ lw $a2, ($t2) +/* 0BD2D4 800BC6D4 240E4000 */ li $t6, 16384 +/* 0BD2D8 800BC6D8 01C6001A */ div $zero, $t6, $a2 +/* 0BD2DC 800BC6DC 27BDFDB8 */ addiu $sp, $sp, -0x248 +/* 0BD2E0 800BC6E0 AFB00018 */ sw $s0, 0x18($sp) +/* 0BD2E4 800BC6E4 AFBF001C */ sw $ra, 0x1c($sp) +/* 0BD2E8 800BC6E8 14C00002 */ bnez $a2, .L800BC6F4 +/* 0BD2EC 800BC6EC 00000000 */ nop +/* 0BD2F0 800BC6F0 0007000D */ break 7 +.L800BC6F4: +/* 0BD2F4 800BC6F4 2401FFFF */ li $at, -1 +/* 0BD2F8 800BC6F8 14C10004 */ bne $a2, $at, .L800BC70C +/* 0BD2FC 800BC6FC 3C018000 */ lui $at, 0x8000 +/* 0BD300 800BC700 15C10002 */ bne $t6, $at, .L800BC70C +/* 0BD304 800BC704 00000000 */ nop +/* 0BD308 800BC708 0006000D */ break 6 +.L800BC70C: +/* 0BD30C 800BC70C 00008025 */ move $s0, $zero +/* 0BD310 800BC710 00005825 */ move $t3, $zero +/* 0BD314 800BC714 00001012 */ mflo $v0 +/* 0BD318 800BC718 18C00015 */ blez $a2, .L800BC770 +/* 0BD31C 800BC71C 27A50034 */ addiu $a1, $sp, 0x34 +.L800BC720: +/* 0BD320 800BC720 00102400 */ sll $a0, $s0, 0x10 +/* 0BD324 800BC724 00047C03 */ sra $t7, $a0, 0x10 +/* 0BD328 800BC728 01E02025 */ move $a0, $t7 +/* 0BD32C 800BC72C AFA20234 */ sw $v0, 0x234($sp) +/* 0BD330 800BC730 AFA50028 */ sw $a1, 0x28($sp) +/* 0BD334 800BC734 0C01C1F1 */ jal func_800707C4 +/* 0BD338 800BC738 AFAB0244 */ sw $t3, 0x244($sp) +/* 0BD33C 800BC73C 3C0A8013 */ lui $t2, %hi(D_80129FC8) # $t2, 0x8013 +/* 0BD340 800BC740 8FAB0244 */ lw $t3, 0x244($sp) +/* 0BD344 800BC744 254A9FC8 */ addiu $t2, %lo(D_80129FC8) # addiu $t2, $t2, -0x6038 +/* 0BD348 800BC748 8D460000 */ lw $a2, ($t2) +/* 0BD34C 800BC74C 8FA50028 */ lw $a1, 0x28($sp) +/* 0BD350 800BC750 8FA20234 */ lw $v0, 0x234($sp) +/* 0BD354 800BC754 256B0001 */ addiu $t3, $t3, 1 +/* 0BD358 800BC758 0166082A */ slt $at, $t3, $a2 +/* 0BD35C 800BC75C E4A00000 */ swc1 $f0, ($a1) +/* 0BD360 800BC760 24A50004 */ addiu $a1, $a1, 4 +/* 0BD364 800BC764 1420FFEE */ bnez $at, .L800BC720 +/* 0BD368 800BC768 02028021 */ addu $s0, $s0, $v0 +/* 0BD36C 800BC76C 00005825 */ move $t3, $zero +.L800BC770: +/* 0BD370 800BC770 44802000 */ mtc1 $zero, $f4 +/* 0BD374 800BC774 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0BD378 800BC778 44810000 */ mtc1 $at, $f0 +/* 0BD37C 800BC77C 27AC0034 */ addiu $t4, $sp, 0x34 +/* 0BD380 800BC780 0006C080 */ sll $t8, $a2, 2 +/* 0BD384 800BC784 0198C821 */ addu $t9, $t4, $t8 +/* 0BD388 800BC788 E7A40034 */ swc1 $f4, 0x34($sp) +/* 0BD38C 800BC78C 00004025 */ move $t0, $zero +/* 0BD390 800BC790 04C00015 */ bltz $a2, .L800BC7E8 +/* 0BD394 800BC794 E7200000 */ swc1 $f0, ($t9) +/* 0BD398 800BC798 3C09800E */ lui $t1, %hi(D_800E304C) # $t1, 0x800e +/* 0BD39C 800BC79C 2529304C */ addiu $t1, %lo(D_800E304C) # addiu $t1, $t1, 0x304c +.L800BC7A0: +/* 0BD3A0 800BC7A0 04C0000B */ bltz $a2, .L800BC7D0 +/* 0BD3A4 800BC7A4 00001825 */ move $v1, $zero +/* 0BD3A8 800BC7A8 00081080 */ sll $v0, $t0, 2 +.L800BC7AC: +/* 0BD3AC 800BC7AC 8D2D0010 */ lw $t5, 0x10($t1) +/* 0BD3B0 800BC7B0 24630001 */ addiu $v1, $v1, 1 +/* 0BD3B4 800BC7B4 01A27021 */ addu $t6, $t5, $v0 +/* 0BD3B8 800BC7B8 E5C00000 */ swc1 $f0, ($t6) +/* 0BD3BC 800BC7BC 8D460000 */ lw $a2, ($t2) +/* 0BD3C0 800BC7C0 24420004 */ addiu $v0, $v0, 4 +/* 0BD3C4 800BC7C4 00C3082A */ slt $at, $a2, $v1 +/* 0BD3C8 800BC7C8 1020FFF8 */ beqz $at, .L800BC7AC +/* 0BD3CC 800BC7CC 25080001 */ addiu $t0, $t0, 1 +.L800BC7D0: +/* 0BD3D0 800BC7D0 256B0001 */ addiu $t3, $t3, 1 +/* 0BD3D4 800BC7D4 00CB082A */ slt $at, $a2, $t3 +/* 0BD3D8 800BC7D8 1020FFF1 */ beqz $at, .L800BC7A0 +/* 0BD3DC 800BC7DC 00000000 */ nop +/* 0BD3E0 800BC7E0 00005825 */ move $t3, $zero +/* 0BD3E4 800BC7E4 00004025 */ move $t0, $zero +.L800BC7E8: +/* 0BD3E8 800BC7E8 3C09800E */ lui $t1, %hi(D_800E304C) # $t1, 0x800e +/* 0BD3EC 800BC7EC 04C00016 */ bltz $a2, .L800BC848 +/* 0BD3F0 800BC7F0 2529304C */ addiu $t1, %lo(D_800E304C) # addiu $t1, $t1, 0x304c +.L800BC7F4: +/* 0BD3F4 800BC7F4 04C0000E */ bltz $a2, .L800BC830 +/* 0BD3F8 800BC7F8 00001825 */ move $v1, $zero +/* 0BD3FC 800BC7FC 000B7880 */ sll $t7, $t3, 2 +/* 0BD400 800BC800 018F2821 */ addu $a1, $t4, $t7 +/* 0BD404 800BC804 00081080 */ sll $v0, $t0, 2 +.L800BC808: +/* 0BD408 800BC808 8D380004 */ lw $t8, 4($t1) +/* 0BD40C 800BC80C C4A60000 */ lwc1 $f6, ($a1) +/* 0BD410 800BC810 0302C821 */ addu $t9, $t8, $v0 +/* 0BD414 800BC814 E7260000 */ swc1 $f6, ($t9) +/* 0BD418 800BC818 8D460000 */ lw $a2, ($t2) +/* 0BD41C 800BC81C 24630001 */ addiu $v1, $v1, 1 +/* 0BD420 800BC820 00C3082A */ slt $at, $a2, $v1 +/* 0BD424 800BC824 24420004 */ addiu $v0, $v0, 4 +/* 0BD428 800BC828 1020FFF7 */ beqz $at, .L800BC808 +/* 0BD42C 800BC82C 25080001 */ addiu $t0, $t0, 1 +.L800BC830: +/* 0BD430 800BC830 256B0001 */ addiu $t3, $t3, 1 +/* 0BD434 800BC834 00CB082A */ slt $at, $a2, $t3 +/* 0BD438 800BC838 1020FFEE */ beqz $at, .L800BC7F4 +/* 0BD43C 800BC83C 00000000 */ nop +/* 0BD440 800BC840 00005825 */ move $t3, $zero +/* 0BD444 800BC844 00004025 */ move $t0, $zero +.L800BC848: +/* 0BD448 800BC848 04C00016 */ bltz $a2, .L800BC8A4 +/* 0BD44C 800BC84C 00000000 */ nop +.L800BC850: +/* 0BD450 800BC850 04C0000E */ bltz $a2, .L800BC88C +/* 0BD454 800BC854 00001825 */ move $v1, $zero +/* 0BD458 800BC858 00081080 */ sll $v0, $t0, 2 +/* 0BD45C 800BC85C 27A40034 */ addiu $a0, $sp, 0x34 +.L800BC860: +/* 0BD460 800BC860 8D2D000C */ lw $t5, 0xc($t1) +/* 0BD464 800BC864 C4880000 */ lwc1 $f8, ($a0) +/* 0BD468 800BC868 01A27021 */ addu $t6, $t5, $v0 +/* 0BD46C 800BC86C E5C80000 */ swc1 $f8, ($t6) +/* 0BD470 800BC870 8D460000 */ lw $a2, ($t2) +/* 0BD474 800BC874 24630001 */ addiu $v1, $v1, 1 +/* 0BD478 800BC878 00C3082A */ slt $at, $a2, $v1 +/* 0BD47C 800BC87C 24420004 */ addiu $v0, $v0, 4 +/* 0BD480 800BC880 25080001 */ addiu $t0, $t0, 1 +/* 0BD484 800BC884 1020FFF6 */ beqz $at, .L800BC860 +/* 0BD488 800BC888 24840004 */ addiu $a0, $a0, 4 +.L800BC88C: +/* 0BD48C 800BC88C 256B0001 */ addiu $t3, $t3, 1 +/* 0BD490 800BC890 00CB082A */ slt $at, $a2, $t3 +/* 0BD494 800BC894 1020FFEE */ beqz $at, .L800BC850 +/* 0BD498 800BC898 00000000 */ nop +/* 0BD49C 800BC89C 00005825 */ move $t3, $zero +/* 0BD4A0 800BC8A0 00004025 */ move $t0, $zero +.L800BC8A4: +/* 0BD4A4 800BC8A4 04C0001A */ bltz $a2, .L800BC910 +/* 0BD4A8 800BC8A8 00000000 */ nop +.L800BC8AC: +/* 0BD4AC 800BC8AC 04C00012 */ bltz $a2, .L800BC8F8 +/* 0BD4B0 800BC8B0 00001825 */ move $v1, $zero +/* 0BD4B4 800BC8B4 00081080 */ sll $v0, $t0, 2 +/* 0BD4B8 800BC8B8 00002025 */ move $a0, $zero +.L800BC8BC: +/* 0BD4BC 800BC8BC 00067880 */ sll $t7, $a2, 2 +/* 0BD4C0 800BC8C0 018FC021 */ addu $t8, $t4, $t7 +/* 0BD4C4 800BC8C4 0004C823 */ negu $t9, $a0 +/* 0BD4C8 800BC8C8 8D2E0014 */ lw $t6, 0x14($t1) +/* 0BD4CC 800BC8CC 03196821 */ addu $t5, $t8, $t9 +/* 0BD4D0 800BC8D0 C5AA0000 */ lwc1 $f10, ($t5) +/* 0BD4D4 800BC8D4 01C27821 */ addu $t7, $t6, $v0 +/* 0BD4D8 800BC8D8 E5EA0000 */ swc1 $f10, ($t7) +/* 0BD4DC 800BC8DC 8D460000 */ lw $a2, ($t2) +/* 0BD4E0 800BC8E0 24630001 */ addiu $v1, $v1, 1 +/* 0BD4E4 800BC8E4 00C3082A */ slt $at, $a2, $v1 +/* 0BD4E8 800BC8E8 24420004 */ addiu $v0, $v0, 4 +/* 0BD4EC 800BC8EC 24840004 */ addiu $a0, $a0, 4 +/* 0BD4F0 800BC8F0 1020FFF2 */ beqz $at, .L800BC8BC +/* 0BD4F4 800BC8F4 25080001 */ addiu $t0, $t0, 1 +.L800BC8F8: +/* 0BD4F8 800BC8F8 256B0001 */ addiu $t3, $t3, 1 +/* 0BD4FC 800BC8FC 00CB082A */ slt $at, $a2, $t3 +/* 0BD500 800BC900 1020FFEA */ beqz $at, .L800BC8AC +/* 0BD504 800BC904 00000000 */ nop +/* 0BD508 800BC908 00005825 */ move $t3, $zero +/* 0BD50C 800BC90C 00004025 */ move $t0, $zero +.L800BC910: +/* 0BD510 800BC910 04C00018 */ bltz $a2, .L800BC974 +/* 0BD514 800BC914 00000000 */ nop +.L800BC918: +/* 0BD518 800BC918 04C00011 */ bltz $a2, .L800BC960 +/* 0BD51C 800BC91C 00001825 */ move $v1, $zero +/* 0BD520 800BC920 000B3880 */ sll $a3, $t3, 2 +/* 0BD524 800BC924 00081080 */ sll $v0, $t0, 2 +.L800BC928: +/* 0BD528 800BC928 0006C080 */ sll $t8, $a2, 2 +/* 0BD52C 800BC92C 0198C821 */ addu $t9, $t4, $t8 +/* 0BD530 800BC930 00076823 */ negu $t5, $a3 +/* 0BD534 800BC934 8D2F001C */ lw $t7, 0x1c($t1) +/* 0BD538 800BC938 032D7021 */ addu $t6, $t9, $t5 +/* 0BD53C 800BC93C C5D00000 */ lwc1 $f16, ($t6) +/* 0BD540 800BC940 01E2C021 */ addu $t8, $t7, $v0 +/* 0BD544 800BC944 E7100000 */ swc1 $f16, ($t8) +/* 0BD548 800BC948 8D460000 */ lw $a2, ($t2) +/* 0BD54C 800BC94C 24630001 */ addiu $v1, $v1, 1 +/* 0BD550 800BC950 00C3082A */ slt $at, $a2, $v1 +/* 0BD554 800BC954 24420004 */ addiu $v0, $v0, 4 +/* 0BD558 800BC958 1020FFF3 */ beqz $at, .L800BC928 +/* 0BD55C 800BC95C 25080001 */ addiu $t0, $t0, 1 +.L800BC960: +/* 0BD560 800BC960 256B0001 */ addiu $t3, $t3, 1 +/* 0BD564 800BC964 00CB082A */ slt $at, $a2, $t3 +/* 0BD568 800BC968 1020FFEB */ beqz $at, .L800BC918 +/* 0BD56C 800BC96C 00000000 */ nop +/* 0BD570 800BC970 00005825 */ move $t3, $zero +.L800BC974: +/* 0BD574 800BC974 04C00026 */ bltz $a2, .L800BCA10 +/* 0BD578 800BC978 00CB082A */ slt $at, $a2, $t3 +.L800BC97C: +/* 0BD57C 800BC97C 1420001F */ bnez $at, .L800BC9FC +/* 0BD580 800BC980 01601825 */ move $v1, $t3 +/* 0BD584 800BC984 000B3880 */ sll $a3, $t3, 2 +/* 0BD588 800BC988 27B90034 */ addiu $t9, $sp, 0x34 +/* 0BD58C 800BC98C 00F92821 */ addu $a1, $a3, $t9 +/* 0BD590 800BC990 00032080 */ sll $a0, $v1, 2 +/* 0BD594 800BC994 24CE0001 */ addiu $t6, $a2, 1 +.L800BC998: +/* 0BD598 800BC998 016E0019 */ multu $t3, $t6 +/* 0BD59C 800BC99C 8D2D0000 */ lw $t5, ($t1) +/* 0BD5A0 800BC9A0 C4B20000 */ lwc1 $f18, ($a1) +/* 0BD5A4 800BC9A4 00007812 */ mflo $t7 +/* 0BD5A8 800BC9A8 000FC080 */ sll $t8, $t7, 2 +/* 0BD5AC 800BC9AC 01B8C821 */ addu $t9, $t5, $t8 +/* 0BD5B0 800BC9B0 03247021 */ addu $t6, $t9, $a0 +/* 0BD5B4 800BC9B4 E5D20000 */ swc1 $f18, ($t6) +/* 0BD5B8 800BC9B8 8D4D0000 */ lw $t5, ($t2) +/* 0BD5BC 800BC9BC 8D2F0000 */ lw $t7, ($t1) +/* 0BD5C0 800BC9C0 25B80001 */ addiu $t8, $t5, 1 +/* 0BD5C4 800BC9C4 00780019 */ multu $v1, $t8 +/* 0BD5C8 800BC9C8 C4A40000 */ lwc1 $f4, ($a1) +/* 0BD5CC 800BC9CC 24630001 */ addiu $v1, $v1, 1 +/* 0BD5D0 800BC9D0 24840004 */ addiu $a0, $a0, 4 +/* 0BD5D4 800BC9D4 0000C812 */ mflo $t9 +/* 0BD5D8 800BC9D8 00197080 */ sll $t6, $t9, 2 +/* 0BD5DC 800BC9DC 01EE6821 */ addu $t5, $t7, $t6 +/* 0BD5E0 800BC9E0 01A7C021 */ addu $t8, $t5, $a3 +/* 0BD5E4 800BC9E4 E7040000 */ swc1 $f4, ($t8) +/* 0BD5E8 800BC9E8 8D460000 */ lw $a2, ($t2) +/* 0BD5EC 800BC9EC 00000000 */ nop +/* 0BD5F0 800BC9F0 00C3082A */ slt $at, $a2, $v1 +/* 0BD5F4 800BC9F4 1020FFE8 */ beqz $at, .L800BC998 +/* 0BD5F8 800BC9F8 24CE0001 */ addiu $t6, $a2, 1 +.L800BC9FC: +/* 0BD5FC 800BC9FC 256B0001 */ addiu $t3, $t3, 1 +/* 0BD600 800BCA00 00CB082A */ slt $at, $a2, $t3 +/* 0BD604 800BCA04 1020FFDD */ beqz $at, .L800BC97C +/* 0BD608 800BCA08 00CB082A */ slt $at, $a2, $t3 +/* 0BD60C 800BCA0C 00005825 */ move $t3, $zero +.L800BCA10: +/* 0BD610 800BCA10 04C0002C */ bltz $a2, .L800BCAC4 +/* 0BD614 800BCA14 00CB082A */ slt $at, $a2, $t3 +.L800BCA18: +/* 0BD618 800BCA18 14200025 */ bnez $at, .L800BCAB0 +/* 0BD61C 800BCA1C 01601825 */ move $v1, $t3 +/* 0BD620 800BCA20 000B3880 */ sll $a3, $t3, 2 +/* 0BD624 800BCA24 27B90034 */ addiu $t9, $sp, 0x34 +/* 0BD628 800BCA28 00F92821 */ addu $a1, $a3, $t9 +/* 0BD62C 800BCA2C 00032080 */ sll $a0, $v1, 2 +/* 0BD630 800BCA30 24CE0001 */ addiu $t6, $a2, 1 +.L800BCA34: +/* 0BD634 800BCA34 016E0019 */ multu $t3, $t6 +/* 0BD638 800BCA38 8D2F0008 */ lw $t7, 8($t1) +/* 0BD63C 800BCA3C 00067080 */ sll $t6, $a2, 2 +/* 0BD640 800BCA40 C4A60000 */ lwc1 $f6, ($a1) +/* 0BD644 800BCA44 00006812 */ mflo $t5 +/* 0BD648 800BCA48 000DC080 */ sll $t8, $t5, 2 +/* 0BD64C 800BCA4C 01F8C821 */ addu $t9, $t7, $t8 +/* 0BD650 800BCA50 032E6821 */ addu $t5, $t9, $t6 +/* 0BD654 800BCA54 00047823 */ negu $t7, $a0 +/* 0BD658 800BCA58 01AFC021 */ addu $t8, $t5, $t7 +/* 0BD65C 800BCA5C E7060000 */ swc1 $f6, ($t8) +/* 0BD660 800BCA60 8D460000 */ lw $a2, ($t2) +/* 0BD664 800BCA64 8D390008 */ lw $t9, 8($t1) +/* 0BD668 800BCA68 24CE0001 */ addiu $t6, $a2, 1 +/* 0BD66C 800BCA6C 006E0019 */ multu $v1, $t6 +/* 0BD670 800BCA70 00067080 */ sll $t6, $a2, 2 +/* 0BD674 800BCA74 C4A80000 */ lwc1 $f8, ($a1) +/* 0BD678 800BCA78 24630001 */ addiu $v1, $v1, 1 +/* 0BD67C 800BCA7C 24840004 */ addiu $a0, $a0, 4 +/* 0BD680 800BCA80 00006812 */ mflo $t5 +/* 0BD684 800BCA84 000D7880 */ sll $t7, $t5, 2 +/* 0BD688 800BCA88 032FC021 */ addu $t8, $t9, $t7 +/* 0BD68C 800BCA8C 030E6821 */ addu $t5, $t8, $t6 +/* 0BD690 800BCA90 0007C823 */ negu $t9, $a3 +/* 0BD694 800BCA94 01B97821 */ addu $t7, $t5, $t9 +/* 0BD698 800BCA98 E5E80000 */ swc1 $f8, ($t7) +/* 0BD69C 800BCA9C 8D460000 */ lw $a2, ($t2) +/* 0BD6A0 800BCAA0 00000000 */ nop +/* 0BD6A4 800BCAA4 00C3082A */ slt $at, $a2, $v1 +/* 0BD6A8 800BCAA8 1020FFE2 */ beqz $at, .L800BCA34 +/* 0BD6AC 800BCAAC 24CE0001 */ addiu $t6, $a2, 1 +.L800BCAB0: +/* 0BD6B0 800BCAB0 256B0001 */ addiu $t3, $t3, 1 +/* 0BD6B4 800BCAB4 00CB082A */ slt $at, $a2, $t3 +/* 0BD6B8 800BCAB8 1020FFD7 */ beqz $at, .L800BCA18 +/* 0BD6BC 800BCABC 00CB082A */ slt $at, $a2, $t3 +/* 0BD6C0 800BCAC0 00005825 */ move $t3, $zero +.L800BCAC4: +/* 0BD6C4 800BCAC4 04C00030 */ bltz $a2, .L800BCB88 +/* 0BD6C8 800BCAC8 00CB082A */ slt $at, $a2, $t3 +.L800BCACC: +/* 0BD6CC 800BCACC 14200029 */ bnez $at, .L800BCB74 +/* 0BD6D0 800BCAD0 01601825 */ move $v1, $t3 +/* 0BD6D4 800BCAD4 000B3880 */ sll $a3, $t3, 2 +/* 0BD6D8 800BCAD8 27B80034 */ addiu $t8, $sp, 0x34 +/* 0BD6DC 800BCADC 00F82821 */ addu $a1, $a3, $t8 +/* 0BD6E0 800BCAE0 00032080 */ sll $a0, $v1, 2 +/* 0BD6E4 800BCAE4 24C20001 */ addiu $v0, $a2, 1 +.L800BCAE8: +/* 0BD6E8 800BCAE8 00C20019 */ multu $a2, $v0 +/* 0BD6EC 800BCAEC 8D2E0018 */ lw $t6, 0x18($t1) +/* 0BD6F0 800BCAF0 C4AA0000 */ lwc1 $f10, ($a1) +/* 0BD6F4 800BCAF4 00006812 */ mflo $t5 +/* 0BD6F8 800BCAF8 000DC880 */ sll $t9, $t5, 2 +/* 0BD6FC 800BCAFC 01D97821 */ addu $t7, $t6, $t9 +/* 0BD700 800BCB00 01620019 */ multu $t3, $v0 +/* 0BD704 800BCB04 0000C012 */ mflo $t8 +/* 0BD708 800BCB08 00180823 */ negu $at, $t8 +/* 0BD70C 800BCB0C 00016880 */ sll $t5, $at, 2 +/* 0BD710 800BCB10 01ED7021 */ addu $t6, $t7, $t5 +/* 0BD714 800BCB14 01C4C821 */ addu $t9, $t6, $a0 +/* 0BD718 800BCB18 E72A0000 */ swc1 $f10, ($t9) +/* 0BD71C 800BCB1C 8D460000 */ lw $a2, ($t2) +/* 0BD720 800BCB20 8D380018 */ lw $t8, 0x18($t1) +/* 0BD724 800BCB24 24C20001 */ addiu $v0, $a2, 1 +/* 0BD728 800BCB28 00C20019 */ multu $a2, $v0 +/* 0BD72C 800BCB2C C4B00000 */ lwc1 $f16, ($a1) +/* 0BD730 800BCB30 24840004 */ addiu $a0, $a0, 4 +/* 0BD734 800BCB34 00007812 */ mflo $t7 +/* 0BD738 800BCB38 000F6880 */ sll $t5, $t7, 2 +/* 0BD73C 800BCB3C 030D7021 */ addu $t6, $t8, $t5 +/* 0BD740 800BCB40 00620019 */ multu $v1, $v0 +/* 0BD744 800BCB44 24630001 */ addiu $v1, $v1, 1 +/* 0BD748 800BCB48 0000C812 */ mflo $t9 +/* 0BD74C 800BCB4C 00190823 */ negu $at, $t9 +/* 0BD750 800BCB50 00017880 */ sll $t7, $at, 2 +/* 0BD754 800BCB54 01CFC021 */ addu $t8, $t6, $t7 +/* 0BD758 800BCB58 03076821 */ addu $t5, $t8, $a3 +/* 0BD75C 800BCB5C E5B00000 */ swc1 $f16, ($t5) +/* 0BD760 800BCB60 8D460000 */ lw $a2, ($t2) +/* 0BD764 800BCB64 00000000 */ nop +/* 0BD768 800BCB68 00C3082A */ slt $at, $a2, $v1 +/* 0BD76C 800BCB6C 1020FFDE */ beqz $at, .L800BCAE8 +/* 0BD770 800BCB70 24C20001 */ addiu $v0, $a2, 1 +.L800BCB74: +/* 0BD774 800BCB74 256B0001 */ addiu $t3, $t3, 1 +/* 0BD778 800BCB78 00CB082A */ slt $at, $a2, $t3 +/* 0BD77C 800BCB7C 1020FFD3 */ beqz $at, .L800BCACC +/* 0BD780 800BCB80 00CB082A */ slt $at, $a2, $t3 +/* 0BD784 800BCB84 00005825 */ move $t3, $zero +.L800BCB88: +/* 0BD788 800BCB88 04C00035 */ bltz $a2, .L800BCC60 +/* 0BD78C 800BCB8C 00CB082A */ slt $at, $a2, $t3 +.L800BCB90: +/* 0BD790 800BCB90 1420002F */ bnez $at, .L800BCC50 +/* 0BD794 800BCB94 01601825 */ move $v1, $t3 +/* 0BD798 800BCB98 000B3880 */ sll $a3, $t3, 2 +/* 0BD79C 800BCB9C 27B90034 */ addiu $t9, $sp, 0x34 +/* 0BD7A0 800BCBA0 00F92821 */ addu $a1, $a3, $t9 +/* 0BD7A4 800BCBA4 00032080 */ sll $a0, $v1, 2 +/* 0BD7A8 800BCBA8 24C20001 */ addiu $v0, $a2, 1 +.L800BCBAC: +/* 0BD7AC 800BCBAC 00C20019 */ multu $a2, $v0 +/* 0BD7B0 800BCBB0 8D2E0020 */ lw $t6, 0x20($t1) +/* 0BD7B4 800BCBB4 C4B20000 */ lwc1 $f18, ($a1) +/* 0BD7B8 800BCBB8 00007812 */ mflo $t7 +/* 0BD7BC 800BCBBC 000FC080 */ sll $t8, $t7, 2 +/* 0BD7C0 800BCBC0 01D86821 */ addu $t5, $t6, $t8 +/* 0BD7C4 800BCBC4 01620019 */ multu $t3, $v0 +/* 0BD7C8 800BCBC8 0006C080 */ sll $t8, $a2, 2 +/* 0BD7CC 800BCBCC 0000C812 */ mflo $t9 +/* 0BD7D0 800BCBD0 00190823 */ negu $at, $t9 +/* 0BD7D4 800BCBD4 00017880 */ sll $t7, $at, 2 +/* 0BD7D8 800BCBD8 01AF7021 */ addu $t6, $t5, $t7 +/* 0BD7DC 800BCBDC 01D8C821 */ addu $t9, $t6, $t8 +/* 0BD7E0 800BCBE0 00046823 */ negu $t5, $a0 +/* 0BD7E4 800BCBE4 032D7821 */ addu $t7, $t9, $t5 +/* 0BD7E8 800BCBE8 E5F20000 */ swc1 $f18, ($t7) +/* 0BD7EC 800BCBEC 8D460000 */ lw $a2, ($t2) +/* 0BD7F0 800BCBF0 8D2E0020 */ lw $t6, 0x20($t1) +/* 0BD7F4 800BCBF4 24C20001 */ addiu $v0, $a2, 1 +/* 0BD7F8 800BCBF8 00C20019 */ multu $a2, $v0 +/* 0BD7FC 800BCBFC C4A40000 */ lwc1 $f4, ($a1) +/* 0BD800 800BCC00 24840004 */ addiu $a0, $a0, 4 +/* 0BD804 800BCC04 0000C012 */ mflo $t8 +/* 0BD808 800BCC08 0018C880 */ sll $t9, $t8, 2 +/* 0BD80C 800BCC0C 01D96821 */ addu $t5, $t6, $t9 +/* 0BD810 800BCC10 00620019 */ multu $v1, $v0 +/* 0BD814 800BCC14 0006C880 */ sll $t9, $a2, 2 +/* 0BD818 800BCC18 24630001 */ addiu $v1, $v1, 1 +/* 0BD81C 800BCC1C 00007812 */ mflo $t7 +/* 0BD820 800BCC20 000F0823 */ negu $at, $t7 +/* 0BD824 800BCC24 0001C080 */ sll $t8, $at, 2 +/* 0BD828 800BCC28 01B87021 */ addu $t6, $t5, $t8 +/* 0BD82C 800BCC2C 01D97821 */ addu $t7, $t6, $t9 +/* 0BD830 800BCC30 00076823 */ negu $t5, $a3 +/* 0BD834 800BCC34 01EDC021 */ addu $t8, $t7, $t5 +/* 0BD838 800BCC38 E7040000 */ swc1 $f4, ($t8) +/* 0BD83C 800BCC3C 8D460000 */ lw $a2, ($t2) +/* 0BD840 800BCC40 00000000 */ nop +/* 0BD844 800BCC44 00C3082A */ slt $at, $a2, $v1 +/* 0BD848 800BCC48 1020FFD8 */ beqz $at, .L800BCBAC +/* 0BD84C 800BCC4C 24C20001 */ addiu $v0, $a2, 1 +.L800BCC50: +/* 0BD850 800BCC50 256B0001 */ addiu $t3, $t3, 1 +/* 0BD854 800BCC54 00CB082A */ slt $at, $a2, $t3 +/* 0BD858 800BCC58 1020FFCD */ beqz $at, .L800BCB90 +/* 0BD85C 800BCC5C 00CB082A */ slt $at, $a2, $t3 +.L800BCC60: +/* 0BD860 800BCC60 8FBF001C */ lw $ra, 0x1c($sp) +/* 0BD864 800BCC64 8FB00018 */ lw $s0, 0x18($sp) +/* 0BD868 800BCC68 03E00008 */ jr $ra +/* 0BD86C 800BCC6C 27BD0248 */ addiu $sp, $sp, 0x248 + diff --git a/asm/non_matchings/unknown_0B8920/func_800BCC70.s b/asm/non_matchings/unknown_0B8920/func_800BCC70.s new file mode 100644 index 00000000..462ae347 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800BCC70.s @@ -0,0 +1,1102 @@ +glabel func_800BCC70 +/* 0BD870 800BCC70 27BDFE70 */ addiu $sp, $sp, -0x190 +/* 0BD874 800BCC74 AFBE0060 */ sw $fp, 0x60($sp) +/* 0BD878 800BCC78 3C1E8013 */ lui $fp, %hi(D_80129FC8) # $fp, 0x8013 +/* 0BD87C 800BCC7C 27DE9FC8 */ addiu $fp, %lo(D_80129FC8) # addiu $fp, $fp, -0x6038 +/* 0BD880 800BCC80 8FCE0028 */ lw $t6, 0x28($fp) +/* 0BD884 800BCC84 AFB40050 */ sw $s4, 0x50($sp) +/* 0BD888 800BCC88 8FD40000 */ lw $s4, ($fp) +/* 0BD88C 800BCC8C AFBF0064 */ sw $ra, 0x64($sp) +/* 0BD890 800BCC90 AFB7005C */ sw $s7, 0x5c($sp) +/* 0BD894 800BCC94 AFB60058 */ sw $s6, 0x58($sp) +/* 0BD898 800BCC98 AFB50054 */ sw $s5, 0x54($sp) +/* 0BD89C 800BCC9C AFB3004C */ sw $s3, 0x4c($sp) +/* 0BD8A0 800BCCA0 AFB20048 */ sw $s2, 0x48($sp) +/* 0BD8A4 800BCCA4 AFB10044 */ sw $s1, 0x44($sp) +/* 0BD8A8 800BCCA8 AFB00040 */ sw $s0, 0x40($sp) +/* 0BD8AC 800BCCAC E7BD0038 */ swc1 $f29, 0x38($sp) +/* 0BD8B0 800BCCB0 E7BC003C */ swc1 $f28, 0x3c($sp) +/* 0BD8B4 800BCCB4 E7BB0030 */ swc1 $f27, 0x30($sp) +/* 0BD8B8 800BCCB8 E7BA0034 */ swc1 $f26, 0x34($sp) +/* 0BD8BC 800BCCBC E7B90028 */ swc1 $f25, 0x28($sp) +/* 0BD8C0 800BCCC0 E7B8002C */ swc1 $f24, 0x2c($sp) +/* 0BD8C4 800BCCC4 E7B70020 */ swc1 $f23, 0x20($sp) +/* 0BD8C8 800BCCC8 E7B60024 */ swc1 $f22, 0x24($sp) +/* 0BD8CC 800BCCCC E7B50018 */ swc1 $f21, 0x18($sp) +/* 0BD8D0 800BCCD0 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 0BD8D4 800BCCD4 11C00003 */ beqz $t6, .L800BCCE4 +/* 0BD8D8 800BCCD8 AFA40190 */ sw $a0, 0x190($sp) +/* 0BD8DC 800BCCDC 00147840 */ sll $t7, $s4, 1 +/* 0BD8E0 800BCCE0 01E0A025 */ move $s4, $t7 +.L800BCCE4: +/* 0BD8E4 800BCCE4 26980001 */ addiu $t8, $s4, 1 +/* 0BD8E8 800BCCE8 03180019 */ multu $t8, $t8 +/* 0BD8EC 800BCCEC 3C11800E */ lui $s1, %hi(D_800E3178) # $s1, 0x800e +/* 0BD8F0 800BCCF0 3C01800E */ lui $at, %hi(D_800E317C) # $at, 0x800e +/* 0BD8F4 800BCCF4 26313178 */ addiu $s1, %lo(D_800E3178) # addiu $s1, $s1, 0x3178 +/* 0BD8F8 800BCCF8 AFB80090 */ sw $t8, 0x90($sp) +/* 0BD8FC 800BCCFC 00007012 */ mflo $t6 +/* 0BD900 800BCD00 AC2E317C */ sw $t6, %lo(D_800E317C)($at) +/* 0BD904 800BCD04 8E240000 */ lw $a0, ($s1) +/* 0BD908 800BCD08 00000000 */ nop +/* 0BD90C 800BCD0C 10800004 */ beqz $a0, .L800BCD20 +/* 0BD910 800BCD10 8FAF0190 */ lw $t7, 0x190($sp) +/* 0BD914 800BCD14 0C01C450 */ jal func_80071140 +/* 0BD918 800BCD18 00000000 */ nop +/* 0BD91C 800BCD1C 8FAF0190 */ lw $t7, 0x190($sp) +.L800BCD20: +/* 0BD920 800BCD20 3C19800E */ lui $t9, %hi(D_800E317C) # $t9, 0x800e +/* 0BD924 800BCD24 8F39317C */ lw $t9, %lo(D_800E317C)($t9) +/* 0BD928 800BCD28 85F8001A */ lh $t8, 0x1a($t7) +/* 0BD92C 800BCD2C 3C1000FF */ lui $s0, (0x00FFFFFF >> 16) # lui $s0, 0xff +/* 0BD930 800BCD30 03190019 */ multu $t8, $t9 +/* 0BD934 800BCD34 3610FFFF */ ori $s0, (0x00FFFFFF & 0xFFFF) # ori $s0, $s0, 0xffff +/* 0BD938 800BCD38 02002825 */ move $a1, $s0 +/* 0BD93C 800BCD3C 00002012 */ mflo $a0 +/* 0BD940 800BCD40 0C01C327 */ jal func_80070C9C +/* 0BD944 800BCD44 00000000 */ nop +/* 0BD948 800BCD48 8FAE0190 */ lw $t6, 0x190($sp) +/* 0BD94C 800BCD4C AE220000 */ sw $v0, ($s1) +/* 0BD950 800BCD50 85C4001A */ lh $a0, 0x1a($t6) +/* 0BD954 800BCD54 02002825 */ move $a1, $s0 +/* 0BD958 800BCD58 00047880 */ sll $t7, $a0, 2 +/* 0BD95C 800BCD5C 0C01C327 */ jal func_80070C9C +/* 0BD960 800BCD60 01E02025 */ move $a0, $t7 +/* 0BD964 800BCD64 3C188013 */ lui $t8, %hi(D_8012A0D8) # $t8, 0x8013 +/* 0BD968 800BCD68 3C198013 */ lui $t9, %hi(D_8012A0DC) # $t9, 0x8013 +/* 0BD96C 800BCD6C 8F39A0DC */ lw $t9, %lo(D_8012A0DC)($t9) +/* 0BD970 800BCD70 8F18A0D8 */ lw $t8, %lo(D_8012A0D8)($t8) +/* 0BD974 800BCD74 AFA200A0 */ sw $v0, 0xa0($sp) +/* 0BD978 800BCD78 03190019 */ multu $t8, $t9 +/* 0BD97C 800BCD7C 02002825 */ move $a1, $s0 +/* 0BD980 800BCD80 00002012 */ mflo $a0 +/* 0BD984 800BCD84 000470C0 */ sll $t6, $a0, 3 +/* 0BD988 800BCD88 0C01C327 */ jal func_80070C9C +/* 0BD98C 800BCD8C 01C02025 */ move $a0, $t6 +/* 0BD990 800BCD90 00142080 */ sll $a0, $s4, 2 +/* 0BD994 800BCD94 AFA200A4 */ sw $v0, 0xa4($sp) +/* 0BD998 800BCD98 24840004 */ addiu $a0, $a0, 4 +/* 0BD99C 800BCD9C 0C01C327 */ jal func_80070C9C +/* 0BD9A0 800BCDA0 02002825 */ move $a1, $s0 +/* 0BD9A4 800BCDA4 3C0F8013 */ lui $t7, %hi(D_8012A0D8) # $t7, 0x8013 +/* 0BD9A8 800BCDA8 3C188013 */ lui $t8, %hi(D_8012A0DC) # $t8, 0x8013 +/* 0BD9AC 800BCDAC 8F18A0DC */ lw $t8, %lo(D_8012A0DC)($t8) +/* 0BD9B0 800BCDB0 8DEFA0D8 */ lw $t7, %lo(D_8012A0D8)($t7) +/* 0BD9B4 800BCDB4 8FA300A4 */ lw $v1, 0xa4($sp) +/* 0BD9B8 800BCDB8 01F80019 */ multu $t7, $t8 +/* 0BD9BC 800BCDBC AFA200A8 */ sw $v0, 0xa8($sp) +/* 0BD9C0 800BCDC0 00003825 */ move $a3, $zero +/* 0BD9C4 800BCDC4 2404FFFF */ li $a0, -1 +/* 0BD9C8 800BCDC8 26850001 */ addiu $a1, $s4, 1 +/* 0BD9CC 800BCDCC 0000C812 */ mflo $t9 +/* 0BD9D0 800BCDD0 1B20000E */ blez $t9, .L800BCE0C +/* 0BD9D4 800BCDD4 240EFFFF */ li $t6, -1 +.L800BCDD8: +/* 0BD9D8 800BCDD8 AC6E0000 */ sw $t6, ($v1) +/* 0BD9DC 800BCDDC AC640004 */ sw $a0, 4($v1) +/* 0BD9E0 800BCDE0 3C0F8013 */ lui $t7, %hi(D_8012A0D8) # $t7, 0x8013 +/* 0BD9E4 800BCDE4 3C188013 */ lui $t8, %hi(D_8012A0DC) # $t8, 0x8013 +/* 0BD9E8 800BCDE8 8F18A0DC */ lw $t8, %lo(D_8012A0DC)($t8) +/* 0BD9EC 800BCDEC 8DEFA0D8 */ lw $t7, %lo(D_8012A0D8)($t7) +/* 0BD9F0 800BCDF0 24E70001 */ addiu $a3, $a3, 1 +/* 0BD9F4 800BCDF4 01F80019 */ multu $t7, $t8 +/* 0BD9F8 800BCDF8 24630008 */ addiu $v1, $v1, 8 +/* 0BD9FC 800BCDFC 0000C812 */ mflo $t9 +/* 0BDA00 800BCE00 00F9082A */ slt $at, $a3, $t9 +/* 0BDA04 800BCE04 1420FFF4 */ bnez $at, .L800BCDD8 +/* 0BDA08 800BCE08 240EFFFF */ li $t6, -1 +.L800BCE0C: +/* 0BDA0C 800BCE0C 0680004F */ bltz $s4, .L800BCF4C +/* 0BDA10 800BCE10 00005025 */ move $t2, $zero +/* 0BDA14 800BCE14 30AE0003 */ andi $t6, $a1, 3 +/* 0BDA18 800BCE18 11C00022 */ beqz $t6, .L800BCEA4 +/* 0BDA1C 800BCE1C 01C02025 */ move $a0, $t6 +/* 0BDA20 800BCE20 44942000 */ mtc1 $s4, $f4 +/* 0BDA24 800BCE24 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 0BDA28 800BCE28 000A7880 */ sll $t7, $t2, 2 +/* 0BDA2C 800BCE2C 44811000 */ mtc1 $at, $f2 +/* 0BDA30 800BCE30 004F1821 */ addu $v1, $v0, $t7 +/* 0BDA34 800BCE34 46802020 */ cvt.s.w $f0, $f4 +/* 0BDA38 800BCE38 000AC040 */ sll $t8, $t2, 1 +/* 0BDA3C 800BCE3C 0298C823 */ subu $t9, $s4, $t8 +/* 0BDA40 800BCE40 44993000 */ mtc1 $t9, $f6 +/* 0BDA44 800BCE44 2484FFFF */ addiu $a0, $a0, -1 +/* 0BDA48 800BCE48 108A000C */ beq $a0, $t2, .L800BCE7C +/* 0BDA4C 800BCE4C 46803220 */ cvt.s.w $f8, $f6 +.L800BCE50: +/* 0BDA50 800BCE50 00000000 */ nop +/* 0BDA54 800BCE54 46004283 */ div.s $f10, $f8, $f0 +/* 0BDA58 800BCE58 254A0001 */ addiu $t2, $t2, 1 +/* 0BDA5C 800BCE5C 000AC040 */ sll $t8, $t2, 1 +/* 0BDA60 800BCE60 0298C823 */ subu $t9, $s4, $t8 +/* 0BDA64 800BCE64 44993000 */ mtc1 $t9, $f6 +/* 0BDA68 800BCE68 24630004 */ addiu $v1, $v1, 4 +/* 0BDA6C 800BCE6C 46803220 */ cvt.s.w $f8, $f6 +/* 0BDA70 800BCE70 46025402 */ mul.s $f16, $f10, $f2 +/* 0BDA74 800BCE74 148AFFF6 */ bne $a0, $t2, .L800BCE50 +/* 0BDA78 800BCE78 E470FFFC */ swc1 $f16, -4($v1) +.L800BCE7C: +/* 0BDA7C 800BCE7C 00000000 */ nop +/* 0BDA80 800BCE80 46004283 */ div.s $f10, $f8, $f0 +/* 0BDA84 800BCE84 24840001 */ addiu $a0, $a0, 1 +/* 0BDA88 800BCE88 254A0001 */ addiu $t2, $t2, 1 +/* 0BDA8C 800BCE8C 24630004 */ addiu $v1, $v1, 4 +/* 0BDA90 800BCE90 46025402 */ mul.s $f16, $f10, $f2 +/* 0BDA94 800BCE94 E470FFFC */ swc1 $f16, -4($v1) +/* 0BDA98 800BCE98 268E0001 */ addiu $t6, $s4, 1 +/* 0BDA9C 800BCE9C 11CA002B */ beq $t6, $t2, .L800BCF4C +/* 0BDAA0 800BCEA0 00000000 */ nop +.L800BCEA4: +/* 0BDAA4 800BCEA4 44949000 */ mtc1 $s4, $f18 +/* 0BDAA8 800BCEA8 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 0BDAAC 800BCEAC 000A7880 */ sll $t7, $t2, 2 +/* 0BDAB0 800BCEB0 44811000 */ mtc1 $at, $f2 +/* 0BDAB4 800BCEB4 004F1821 */ addu $v1, $v0, $t7 +/* 0BDAB8 800BCEB8 46809020 */ cvt.s.w $f0, $f18 +.L800BCEBC: +/* 0BDABC 800BCEBC 000AC040 */ sll $t8, $t2, 1 +/* 0BDAC0 800BCEC0 0298C823 */ subu $t9, $s4, $t8 +/* 0BDAC4 800BCEC4 44992000 */ mtc1 $t9, $f4 +/* 0BDAC8 800BCEC8 254E0001 */ addiu $t6, $t2, 1 +/* 0BDACC 800BCECC 468021A0 */ cvt.s.w $f6, $f4 +/* 0BDAD0 800BCED0 000E7840 */ sll $t7, $t6, 1 +/* 0BDAD4 800BCED4 028FC023 */ subu $t8, $s4, $t7 +/* 0BDAD8 800BCED8 44988000 */ mtc1 $t8, $f16 +/* 0BDADC 800BCEDC 46003203 */ div.s $f8, $f6, $f0 +/* 0BDAE0 800BCEE0 468084A0 */ cvt.s.w $f18, $f16 +/* 0BDAE4 800BCEE4 25590002 */ addiu $t9, $t2, 2 +/* 0BDAE8 800BCEE8 00197040 */ sll $t6, $t9, 1 +/* 0BDAEC 800BCEEC 028E7823 */ subu $t7, $s4, $t6 +/* 0BDAF0 800BCEF0 25580003 */ addiu $t8, $t2, 3 +/* 0BDAF4 800BCEF4 0018C840 */ sll $t9, $t8, 1 +/* 0BDAF8 800BCEF8 02997023 */ subu $t6, $s4, $t9 +/* 0BDAFC 800BCEFC 254A0004 */ addiu $t2, $t2, 4 +/* 0BDB00 800BCF00 24630010 */ addiu $v1, $v1, 0x10 +/* 0BDB04 800BCF04 46009103 */ div.s $f4, $f18, $f0 +/* 0BDB08 800BCF08 46024282 */ mul.s $f10, $f8, $f2 +/* 0BDB0C 800BCF0C 448F4000 */ mtc1 $t7, $f8 +/* 0BDB10 800BCF10 268F0001 */ addiu $t7, $s4, 1 +/* 0BDB14 800BCF14 E46AFFF0 */ swc1 $f10, -0x10($v1) +/* 0BDB18 800BCF18 468042A0 */ cvt.s.w $f10, $f8 +/* 0BDB1C 800BCF1C 46022182 */ mul.s $f6, $f4, $f2 +/* 0BDB20 800BCF20 448E2000 */ mtc1 $t6, $f4 +/* 0BDB24 800BCF24 46005403 */ div.s $f16, $f10, $f0 +/* 0BDB28 800BCF28 E466FFF4 */ swc1 $f6, -0xc($v1) +/* 0BDB2C 800BCF2C 468021A0 */ cvt.s.w $f6, $f4 +/* 0BDB30 800BCF30 00000000 */ nop +/* 0BDB34 800BCF34 46003203 */ div.s $f8, $f6, $f0 +/* 0BDB38 800BCF38 46028482 */ mul.s $f18, $f16, $f2 +/* 0BDB3C 800BCF3C E472FFF8 */ swc1 $f18, -8($v1) +/* 0BDB40 800BCF40 46024282 */ mul.s $f10, $f8, $f2 +/* 0BDB44 800BCF44 15EAFFDD */ bne $t7, $t2, .L800BCEBC +/* 0BDB48 800BCF48 E46AFFFC */ swc1 $f10, -4($v1) +.L800BCF4C: +/* 0BDB4C 800BCF4C 44948000 */ mtc1 $s4, $f16 +/* 0BDB50 800BCF50 3C018013 */ lui $at, %hi(D_8012A0A0) # $at, 0x8013 +/* 0BDB54 800BCF54 C432A0A0 */ lwc1 $f18, %lo(D_8012A0A0)($at) +/* 0BDB58 800BCF58 8FB80190 */ lw $t8, 0x190($sp) +/* 0BDB5C 800BCF5C 46808020 */ cvt.s.w $f0, $f16 +/* 0BDB60 800BCF60 3C018013 */ lui $at, %hi(D_8012A0A4) # $at, 0x8013 +/* 0BDB64 800BCF64 AFA0018C */ sw $zero, 0x18c($sp) +/* 0BDB68 800BCF68 C424A0A4 */ lwc1 $f4, %lo(D_8012A0A4)($at) +/* 0BDB6C 800BCF6C 8702001A */ lh $v0, 0x1a($t8) +/* 0BDB70 800BCF70 0000A825 */ move $s5, $zero +/* 0BDB74 800BCF74 46009683 */ div.s $f26, $f18, $f0 +/* 0BDB78 800BCF78 184000BE */ blez $v0, .L800BD274 +/* 0BDB7C 800BCF7C 46002703 */ div.s $f28, $f4, $f0 +/* 0BDB80 800BCF80 3C06800E */ lui $a2, %hi(D_800E30D8) # $a2, 0x800e +/* 0BDB84 800BCF84 24C630D8 */ addiu $a2, %lo(D_800E30D8) # addiu $a2, $a2, 0x30d8 +/* 0BDB88 800BCF88 AFA00080 */ sw $zero, 0x80($sp) +/* 0BDB8C 800BCF8C 27B000AC */ addiu $s0, $sp, 0xac +.L800BCF90: +/* 0BDB90 800BCF90 8CD90000 */ lw $t9, ($a2) +/* 0BDB94 800BCF94 8FAE0080 */ lw $t6, 0x80($sp) +/* 0BDB98 800BCF98 240F0001 */ li $t7, 1 +/* 0BDB9C 800BCF9C 032E2821 */ addu $a1, $t9, $t6 +/* 0BDBA0 800BCFA0 90A4000B */ lbu $a0, 0xb($a1) +/* 0BDBA4 800BCFA4 3C0E8013 */ lui $t6, 0x8013 +/* 0BDBA8 800BCFA8 0004C880 */ sll $t9, $a0, 2 +/* 0BDBAC 800BCFAC 90A3000A */ lbu $v1, 0xa($a1) +/* 0BDBB0 800BCFB0 01D97021 */ addu $t6, $t6, $t9 +/* 0BDBB4 800BCFB4 8DCEA0E8 */ lw $t6, -0x5f18($t6) +/* 0BDBB8 800BCFB8 006FC004 */ sllv $t8, $t7, $v1 +/* 0BDBBC 800BCFBC 030E7824 */ and $t7, $t8, $t6 +/* 0BDBC0 800BCFC0 11E00091 */ beqz $t7, .L800BD208 +/* 0BDBC4 800BCFC4 3C0E800E */ lui $t6, 0x800e +/* 0BDBC8 800BCFC8 3C0E8013 */ lui $t6, %hi(D_8012A0D8) # $t6, 0x8013 +/* 0BDBCC 800BCFCC 8DCEA0D8 */ lw $t6, %lo(D_8012A0D8)($t6) +/* 0BDBD0 800BCFD0 8FB800A4 */ lw $t8, 0xa4($sp) +/* 0BDBD4 800BCFD4 008E0019 */ multu $a0, $t6 +/* 0BDBD8 800BCFD8 8FB9018C */ lw $t9, 0x18c($sp) +/* 0BDBDC 800BCFDC 00001025 */ move $v0, $zero +/* 0BDBE0 800BCFE0 00007812 */ mflo $t7 +/* 0BDBE4 800BCFE4 000F70C0 */ sll $t6, $t7, 3 +/* 0BDBE8 800BCFE8 030E7821 */ addu $t7, $t8, $t6 +/* 0BDBEC 800BCFEC 0003C0C0 */ sll $t8, $v1, 3 +/* 0BDBF0 800BCFF0 01F87021 */ addu $t6, $t7, $t8 +/* 0BDBF4 800BCFF4 ADD90000 */ sw $t9, ($t6) +/* 0BDBF8 800BCFF8 8FB80080 */ lw $t8, 0x80($sp) +/* 0BDBFC 800BCFFC 8CCF0000 */ lw $t7, ($a2) +/* 0BDC00 800BD000 3C0E8013 */ lui $t6, %hi(D_8012A0D8) # $t6, 0x8013 +/* 0BDC04 800BD004 01F82821 */ addu $a1, $t7, $t8 +/* 0BDC08 800BD008 90B9000B */ lbu $t9, 0xb($a1) +/* 0BDC0C 800BD00C 8DCEA0D8 */ lw $t6, %lo(D_8012A0D8)($t6) +/* 0BDC10 800BD010 00000000 */ nop +/* 0BDC14 800BD014 032E0019 */ multu $t9, $t6 +/* 0BDC18 800BD018 8FB900A4 */ lw $t9, 0xa4($sp) +/* 0BDC1C 800BD01C 00007812 */ mflo $t7 +/* 0BDC20 800BD020 000FC0C0 */ sll $t8, $t7, 3 +/* 0BDC24 800BD024 90AF000A */ lbu $t7, 0xa($a1) +/* 0BDC28 800BD028 03387021 */ addu $t6, $t9, $t8 +/* 0BDC2C 800BD02C 000FC8C0 */ sll $t9, $t7, 3 +/* 0BDC30 800BD030 01D9C021 */ addu $t8, $t6, $t9 +/* 0BDC34 800BD034 AF150004 */ sw $s5, 4($t8) +/* 0BDC38 800BD038 8FAE0080 */ lw $t6, 0x80($sp) +/* 0BDC3C 800BD03C 8CCF0000 */ lw $t7, ($a2) +/* 0BDC40 800BD040 00000000 */ nop +/* 0BDC44 800BD044 01EE2821 */ addu $a1, $t7, $t6 +/* 0BDC48 800BD048 84B90006 */ lh $t9, 6($a1) +/* 0BDC4C 800BD04C 84B80008 */ lh $t8, 8($a1) +/* 0BDC50 800BD050 44993000 */ mtc1 $t9, $f6 +/* 0BDC54 800BD054 44984000 */ mtc1 $t8, $f8 +/* 0BDC58 800BD058 46803520 */ cvt.s.w $f20, $f6 +/* 0BDC5C 800BD05C 06800065 */ bltz $s4, .L800BD1F4 +/* 0BDC60 800BD060 46804620 */ cvt.s.w $f24, $f8 +.L800BD064: +/* 0BDC64 800BD064 8CCF0000 */ lw $t7, ($a2) +/* 0BDC68 800BD068 8FAE0080 */ lw $t6, 0x80($sp) +/* 0BDC6C 800BD06C 00000000 */ nop +/* 0BDC70 800BD070 01EEC821 */ addu $t9, $t7, $t6 +/* 0BDC74 800BD074 87380004 */ lh $t8, 4($t9) +/* 0BDC78 800BD078 00000000 */ nop +/* 0BDC7C 800BD07C 44985000 */ mtc1 $t8, $f10 +/* 0BDC80 800BD080 06800058 */ bltz $s4, .L800BD1E4 +/* 0BDC84 800BD084 468055A0 */ cvt.s.w $f22, $f10 +/* 0BDC88 800BD088 AFA20184 */ sw $v0, 0x184($sp) +/* 0BDC8C 800BD08C 8FAF0184 */ lw $t7, 0x184($sp) +/* 0BDC90 800BD090 8FB70090 */ lw $s7, 0x90($sp) +/* 0BDC94 800BD094 8FB300A8 */ lw $s3, 0xa8($sp) +/* 0BDC98 800BD098 000F7080 */ sll $t6, $t7, 2 +/* 0BDC9C 800BD09C 0017C880 */ sll $t9, $s7, 2 +/* 0BDCA0 800BD0A0 0320B825 */ move $s7, $t9 +/* 0BDCA4 800BD0A4 00009025 */ move $s2, $zero +/* 0BDCA8 800BD0A8 026EB021 */ addu $s6, $s3, $t6 +.L800BD0AC: +/* 0BDCAC 800BD0AC C6700000 */ lwc1 $f16, ($s3) +/* 0BDCB0 800BD0B0 C6C40000 */ lwc1 $f4, ($s6) +/* 0BDCB4 800BD0B4 46168480 */ add.s $f18, $f16, $f22 +/* 0BDCB8 800BD0B8 8FA4018C */ lw $a0, 0x18c($sp) +/* 0BDCBC 800BD0BC 46182180 */ add.s $f6, $f4, $f24 +/* 0BDCC0 800BD0C0 44059000 */ mfc1 $a1, $f18 +/* 0BDCC4 800BD0C4 44063000 */ mfc1 $a2, $f6 +/* 0BDCC8 800BD0C8 0C00AEAC */ jal func_8002BAB0 +/* 0BDCCC 800BD0CC 02003825 */ move $a3, $s0 +/* 0BDCD0 800BD0D0 14400003 */ bnez $v0, .L800BD0E0 +/* 0BDCD4 800BD0D4 26520004 */ addiu $s2, $s2, 4 +/* 0BDCD8 800BD0D8 10000038 */ b .L800BD1BC +/* 0BDCDC 800BD0DC 240600FF */ li $a2, 255 +.L800BD0E0: +/* 0BDCE0 800BD0E0 2444FFFF */ addiu $a0, $v0, -1 +/* 0BDCE4 800BD0E4 18800012 */ blez $a0, .L800BD130 +/* 0BDCE8 800BD0E8 00001825 */ move $v1, $zero +/* 0BDCEC 800BD0EC C7A800AC */ lwc1 $f8, 0xac($sp) +/* 0BDCF0 800BD0F0 00000000 */ nop +/* 0BDCF4 800BD0F4 4608A03E */ c.le.s $f20, $f8 +/* 0BDCF8 800BD0F8 00000000 */ nop +/* 0BDCFC 800BD0FC 4500000D */ bc1f .L800BD134 +/* 0BDD00 800BD100 00037080 */ sll $t6, $v1, 2 +.L800BD104: +/* 0BDD04 800BD104 24630001 */ addiu $v1, $v1, 1 +/* 0BDD08 800BD108 0064082A */ slt $at, $v1, $a0 +/* 0BDD0C 800BD10C 10200008 */ beqz $at, .L800BD130 +/* 0BDD10 800BD110 0003C080 */ sll $t8, $v1, 2 +/* 0BDD14 800BD114 02187821 */ addu $t7, $s0, $t8 +/* 0BDD18 800BD118 C5EA0000 */ lwc1 $f10, ($t7) +/* 0BDD1C 800BD11C 00000000 */ nop +/* 0BDD20 800BD120 460AA03E */ c.le.s $f20, $f10 +/* 0BDD24 800BD124 00000000 */ nop +/* 0BDD28 800BD128 4501FFF6 */ bc1t .L800BD104 +/* 0BDD2C 800BD12C 00000000 */ nop +.L800BD130: +/* 0BDD30 800BD130 00037080 */ sll $t6, $v1, 2 +.L800BD134: +/* 0BDD34 800BD134 020EC821 */ addu $t9, $s0, $t6 +/* 0BDD38 800BD138 C7200000 */ lwc1 $f0, ($t9) +/* 0BDD3C 800BD13C 00000000 */ nop +/* 0BDD40 800BD140 4600A03C */ c.lt.s $f20, $f0 +/* 0BDD44 800BD144 00000000 */ nop +/* 0BDD48 800BD148 45000003 */ bc1f .L800BD158 +/* 0BDD4C 800BD14C 00000000 */ nop +/* 0BDD50 800BD150 1000001A */ b .L800BD1BC +/* 0BDD54 800BD154 00003025 */ move $a2, $zero +.L800BD158: +/* 0BDD58 800BD158 4600A032 */ c.eq.s $f20, $f0 +/* 0BDD5C 800BD15C 00000000 */ nop +/* 0BDD60 800BD160 45000003 */ bc1f .L800BD170 +/* 0BDD64 800BD164 00000000 */ nop +/* 0BDD68 800BD168 10000014 */ b .L800BD1BC +/* 0BDD6C 800BD16C 240600FF */ li $a2, 255 +.L800BD170: +/* 0BDD70 800BD170 4600A401 */ sub.s $f16, $f20, $f0 +/* 0BDD74 800BD174 C7D20048 */ lwc1 $f18, 0x48($fp) +/* 0BDD78 800BD178 00000000 */ nop +/* 0BDD7C 800BD17C 46128102 */ mul.s $f4, $f16, $f18 +/* 0BDD80 800BD180 4458F800 */ cfc1 $t8, $31 +/* 0BDD84 800BD184 00000000 */ nop +/* 0BDD88 800BD188 37010003 */ ori $at, $t8, 3 +/* 0BDD8C 800BD18C 38210002 */ xori $at, $at, 2 +/* 0BDD90 800BD190 44C1F800 */ ctc1 $at, $31 +/* 0BDD94 800BD194 00000000 */ nop +/* 0BDD98 800BD198 460021A4 */ cvt.w.s $f6, $f4 +/* 0BDD9C 800BD19C 44063000 */ mfc1 $a2, $f6 +/* 0BDDA0 800BD1A0 44D8F800 */ ctc1 $t8, $31 +/* 0BDDA4 800BD1A4 28C10200 */ slti $at, $a2, 0x200 +/* 0BDDA8 800BD1A8 14200003 */ bnez $at, .L800BD1B8 +/* 0BDDAC 800BD1AC 00067843 */ sra $t7, $a2, 1 +/* 0BDDB0 800BD1B0 240601FF */ li $a2, 511 +/* 0BDDB4 800BD1B4 00067843 */ sra $t7, $a2, 1 +.L800BD1B8: +/* 0BDDB8 800BD1B8 01E03025 */ move $a2, $t7 +.L800BD1BC: +/* 0BDDBC 800BD1BC 8E2E0000 */ lw $t6, ($s1) +/* 0BDDC0 800BD1C0 26730004 */ addiu $s3, $s3, 4 +/* 0BDDC4 800BD1C4 01D5C821 */ addu $t9, $t6, $s5 +/* 0BDDC8 800BD1C8 A3260000 */ sb $a2, ($t9) +/* 0BDDCC 800BD1CC 26B50001 */ addiu $s5, $s5, 1 +/* 0BDDD0 800BD1D0 16F2FFB6 */ bne $s7, $s2, .L800BD0AC +/* 0BDDD4 800BD1D4 461AB580 */ add.s $f22, $f22, $f26 +/* 0BDDD8 800BD1D8 3C06800E */ lui $a2, %hi(D_800E30D8) # $a2, 0x800e +/* 0BDDDC 800BD1DC 8FA20184 */ lw $v0, 0x184($sp) +/* 0BDDE0 800BD1E0 24C630D8 */ addiu $a2, %lo(D_800E30D8) # addiu $a2, $a2, 0x30d8 +.L800BD1E4: +/* 0BDDE4 800BD1E4 8FB80090 */ lw $t8, 0x90($sp) +/* 0BDDE8 800BD1E8 24420001 */ addiu $v0, $v0, 1 +/* 0BDDEC 800BD1EC 1702FF9D */ bne $t8, $v0, .L800BD064 +/* 0BDDF0 800BD1F0 461CC600 */ add.s $f24, $f24, $f28 +.L800BD1F4: +/* 0BDDF4 800BD1F4 8FAF0190 */ lw $t7, 0x190($sp) +/* 0BDDF8 800BD1F8 00000000 */ nop +/* 0BDDFC 800BD1FC 85E2001A */ lh $v0, 0x1a($t7) +/* 0BDE00 800BD200 10000014 */ b .L800BD254 +/* 0BDE04 800BD204 8FB9018C */ lw $t9, 0x18c($sp) +.L800BD208: +/* 0BDE08 800BD208 8DCE317C */ lw $t6, 0x317c($t6) +/* 0BDE0C 800BD20C 00005025 */ move $t2, $zero +/* 0BDE10 800BD210 19C00010 */ blez $t6, .L800BD254 +/* 0BDE14 800BD214 8FB9018C */ lw $t9, 0x18c($sp) +.L800BD218: +/* 0BDE18 800BD218 8E380000 */ lw $t8, ($s1) +/* 0BDE1C 800BD21C 241900FF */ li $t9, 255 +/* 0BDE20 800BD220 03157821 */ addu $t7, $t8, $s5 +/* 0BDE24 800BD224 A1F90000 */ sb $t9, ($t7) +/* 0BDE28 800BD228 3C0E800E */ lui $t6, %hi(D_800E317C) # $t6, 0x800e +/* 0BDE2C 800BD22C 8DCE317C */ lw $t6, %lo(D_800E317C)($t6) +/* 0BDE30 800BD230 254A0001 */ addiu $t2, $t2, 1 +/* 0BDE34 800BD234 014E082A */ slt $at, $t2, $t6 +/* 0BDE38 800BD238 1420FFF7 */ bnez $at, .L800BD218 +/* 0BDE3C 800BD23C 26B50001 */ addiu $s5, $s5, 1 +/* 0BDE40 800BD240 8FB80190 */ lw $t8, 0x190($sp) +/* 0BDE44 800BD244 00000000 */ nop +/* 0BDE48 800BD248 8702001A */ lh $v0, 0x1a($t8) +/* 0BDE4C 800BD24C 00000000 */ nop +/* 0BDE50 800BD250 8FB9018C */ lw $t9, 0x18c($sp) +.L800BD254: +/* 0BDE54 800BD254 8FAE0080 */ lw $t6, 0x80($sp) +/* 0BDE58 800BD258 272F0001 */ addiu $t7, $t9, 1 +/* 0BDE5C 800BD25C 01E2082A */ slt $at, $t7, $v0 +/* 0BDE60 800BD260 25D8001C */ addiu $t8, $t6, 0x1c +/* 0BDE64 800BD264 AFB80080 */ sw $t8, 0x80($sp) +/* 0BDE68 800BD268 1420FF49 */ bnez $at, .L800BCF90 +/* 0BDE6C 800BD26C AFAF018C */ sw $t7, 0x18c($sp) +/* 0BDE70 800BD270 AFA0018C */ sw $zero, 0x18c($sp) +.L800BD274: +/* 0BDE74 800BD274 3C038013 */ lui $v1, %hi(D_8012A0DC) # $v1, 0x8013 +/* 0BDE78 800BD278 8C63A0DC */ lw $v1, %lo(D_8012A0DC)($v1) +/* 0BDE7C 800BD27C AFA00184 */ sw $zero, 0x184($sp) +/* 0BDE80 800BD280 186000FC */ blez $v1, .L800BD674 +/* 0BDE84 800BD284 3C048013 */ lui $a0, %hi(D_8012A0D8) # $a0, 0x8013 +/* 0BDE88 800BD288 8C84A0D8 */ lw $a0, %lo(D_8012A0D8)($a0) +/* 0BDE8C 800BD28C 00000000 */ nop +.L800BD290: +/* 0BDE90 800BD290 188000EE */ blez $a0, .L800BD64C +/* 0BDE94 800BD294 00005025 */ move $t2, $zero +/* 0BDE98 800BD298 8FA500A4 */ lw $a1, 0xa4($sp) +/* 0BDE9C 800BD29C 00005825 */ move $t3, $zero +/* 0BDEA0 800BD2A0 2406FFFF */ li $a2, -1 +.L800BD2A4: +/* 0BDEA4 800BD2A4 8FB90184 */ lw $t9, 0x184($sp) +/* 0BDEA8 800BD2A8 00000000 */ nop +/* 0BDEAC 800BD2AC 03240019 */ multu $t9, $a0 +/* 0BDEB0 800BD2B0 00007012 */ mflo $t6 +/* 0BDEB4 800BD2B4 000EC0C0 */ sll $t8, $t6, 3 +/* 0BDEB8 800BD2B8 00B87821 */ addu $t7, $a1, $t8 +/* 0BDEBC 800BD2BC 01EB7021 */ addu $t6, $t7, $t3 +/* 0BDEC0 800BD2C0 8DCC0004 */ lw $t4, 4($t6) +/* 0BDEC4 800BD2C4 3C188013 */ lui $t8, %hi(D_8012A0DC) # $t8, 0x8013 +/* 0BDEC8 800BD2C8 118600D8 */ beq $t4, $a2, .L800BD62C +/* 0BDECC 800BD2CC 00000000 */ nop +/* 0BDED0 800BD2D0 8F18A0DC */ lw $t8, %lo(D_8012A0DC)($t8) +/* 0BDED4 800BD2D4 272E0001 */ addiu $t6, $t9, 1 +/* 0BDED8 800BD2D8 270FFFFF */ addiu $t7, $t8, -1 +/* 0BDEDC 800BD2DC 032F082A */ slt $at, $t9, $t7 +/* 0BDEE0 800BD2E0 10200066 */ beqz $at, .L800BD47C +/* 0BDEE4 800BD2E4 248FFFFF */ addiu $t7, $a0, -1 +/* 0BDEE8 800BD2E8 01C40019 */ multu $t6, $a0 +/* 0BDEEC 800BD2EC 0000C012 */ mflo $t8 +/* 0BDEF0 800BD2F0 001878C0 */ sll $t7, $t8, 3 +/* 0BDEF4 800BD2F4 00AFC821 */ addu $t9, $a1, $t7 +/* 0BDEF8 800BD2F8 032B7021 */ addu $t6, $t9, $t3 +/* 0BDEFC 800BD2FC 8DC20004 */ lw $v0, 4($t6) +/* 0BDF00 800BD300 8FB80090 */ lw $t8, 0x90($sp) +/* 0BDF04 800BD304 1046005D */ beq $v0, $a2, .L800BD47C +/* 0BDF08 800BD308 248FFFFF */ addiu $t7, $a0, -1 +/* 0BDF0C 800BD30C 03140019 */ multu $t8, $s4 +/* 0BDF10 800BD310 24430001 */ addiu $v1, $v0, 1 +/* 0BDF14 800BD314 2682FFFF */ addiu $v0, $s4, -1 +/* 0BDF18 800BD318 2689FFFF */ addiu $t1, $s4, -1 +/* 0BDF1C 800BD31C 30590003 */ andi $t9, $v0, 3 +/* 0BDF20 800BD320 00003825 */ move $a3, $zero +/* 0BDF24 800BD324 00007812 */ mflo $t7 +/* 0BDF28 800BD328 01EC2821 */ addu $a1, $t7, $t4 +/* 0BDF2C 800BD32C 19200052 */ blez $t1, .L800BD478 +/* 0BDF30 800BD330 24A50001 */ addiu $a1, $a1, 1 +/* 0BDF34 800BD334 13200013 */ beqz $t9, .L800BD384 +/* 0BDF38 800BD338 03204025 */ move $t0, $t9 +.L800BD33C: +/* 0BDF3C 800BD33C 8E240000 */ lw $a0, ($s1) +/* 0BDF40 800BD340 24E70001 */ addiu $a3, $a3, 1 +/* 0BDF44 800BD344 00851021 */ addu $v0, $a0, $a1 +/* 0BDF48 800BD348 00837021 */ addu $t6, $a0, $v1 +/* 0BDF4C 800BD34C 91D80000 */ lbu $t8, ($t6) +/* 0BDF50 800BD350 904F0000 */ lbu $t7, ($v0) +/* 0BDF54 800BD354 24A50001 */ addiu $a1, $a1, 1 +/* 0BDF58 800BD358 030F3021 */ addu $a2, $t8, $t7 +/* 0BDF5C 800BD35C 0006C843 */ sra $t9, $a2, 1 +/* 0BDF60 800BD360 A0590000 */ sb $t9, ($v0) +/* 0BDF64 800BD364 8E2E0000 */ lw $t6, ($s1) +/* 0BDF68 800BD368 00000000 */ nop +/* 0BDF6C 800BD36C 01C3C021 */ addu $t8, $t6, $v1 +/* 0BDF70 800BD370 A3190000 */ sb $t9, ($t8) +/* 0BDF74 800BD374 1507FFF1 */ bne $t0, $a3, .L800BD33C +/* 0BDF78 800BD378 24630001 */ addiu $v1, $v1, 1 +/* 0BDF7C 800BD37C 10E9003B */ beq $a3, $t1, .L800BD46C +/* 0BDF80 800BD380 00000000 */ nop +.L800BD384: +/* 0BDF84 800BD384 8E240000 */ lw $a0, ($s1) +/* 0BDF88 800BD388 24E70004 */ addiu $a3, $a3, 4 +/* 0BDF8C 800BD38C 00851021 */ addu $v0, $a0, $a1 +/* 0BDF90 800BD390 00837821 */ addu $t7, $a0, $v1 +/* 0BDF94 800BD394 91F90000 */ lbu $t9, ($t7) +/* 0BDF98 800BD398 904E0000 */ lbu $t6, ($v0) +/* 0BDF9C 800BD39C 24A50001 */ addiu $a1, $a1, 1 +/* 0BDFA0 800BD3A0 032E3021 */ addu $a2, $t9, $t6 +/* 0BDFA4 800BD3A4 0006C043 */ sra $t8, $a2, 1 +/* 0BDFA8 800BD3A8 A0580000 */ sb $t8, ($v0) +/* 0BDFAC 800BD3AC 8E2F0000 */ lw $t7, ($s1) +/* 0BDFB0 800BD3B0 00000000 */ nop +/* 0BDFB4 800BD3B4 01E3C821 */ addu $t9, $t7, $v1 +/* 0BDFB8 800BD3B8 A3380000 */ sb $t8, ($t9) +/* 0BDFBC 800BD3BC 8E240000 */ lw $a0, ($s1) +/* 0BDFC0 800BD3C0 24630001 */ addiu $v1, $v1, 1 +/* 0BDFC4 800BD3C4 00837021 */ addu $t6, $a0, $v1 +/* 0BDFC8 800BD3C8 00851021 */ addu $v0, $a0, $a1 +/* 0BDFCC 800BD3CC 904F0000 */ lbu $t7, ($v0) +/* 0BDFD0 800BD3D0 91D80000 */ lbu $t8, ($t6) +/* 0BDFD4 800BD3D4 24A50001 */ addiu $a1, $a1, 1 +/* 0BDFD8 800BD3D8 030F3021 */ addu $a2, $t8, $t7 +/* 0BDFDC 800BD3DC 0006C843 */ sra $t9, $a2, 1 +/* 0BDFE0 800BD3E0 A0590000 */ sb $t9, ($v0) +/* 0BDFE4 800BD3E4 8E2E0000 */ lw $t6, ($s1) +/* 0BDFE8 800BD3E8 00000000 */ nop +/* 0BDFEC 800BD3EC 01C3C021 */ addu $t8, $t6, $v1 +/* 0BDFF0 800BD3F0 A3190000 */ sb $t9, ($t8) +/* 0BDFF4 800BD3F4 8E240000 */ lw $a0, ($s1) +/* 0BDFF8 800BD3F8 24630001 */ addiu $v1, $v1, 1 +/* 0BDFFC 800BD3FC 00837821 */ addu $t7, $a0, $v1 +/* 0BE000 800BD400 00851021 */ addu $v0, $a0, $a1 +/* 0BE004 800BD404 904E0000 */ lbu $t6, ($v0) +/* 0BE008 800BD408 91F90000 */ lbu $t9, ($t7) +/* 0BE00C 800BD40C 24A50001 */ addiu $a1, $a1, 1 +/* 0BE010 800BD410 032E3021 */ addu $a2, $t9, $t6 +/* 0BE014 800BD414 0006C043 */ sra $t8, $a2, 1 +/* 0BE018 800BD418 A0580000 */ sb $t8, ($v0) +/* 0BE01C 800BD41C 8E2F0000 */ lw $t7, ($s1) +/* 0BE020 800BD420 00000000 */ nop +/* 0BE024 800BD424 01E3C821 */ addu $t9, $t7, $v1 +/* 0BE028 800BD428 A3380000 */ sb $t8, ($t9) +/* 0BE02C 800BD42C 8E240000 */ lw $a0, ($s1) +/* 0BE030 800BD430 24630001 */ addiu $v1, $v1, 1 +/* 0BE034 800BD434 00837021 */ addu $t6, $a0, $v1 +/* 0BE038 800BD438 00851021 */ addu $v0, $a0, $a1 +/* 0BE03C 800BD43C 904F0000 */ lbu $t7, ($v0) +/* 0BE040 800BD440 91D80000 */ lbu $t8, ($t6) +/* 0BE044 800BD444 24A50001 */ addiu $a1, $a1, 1 +/* 0BE048 800BD448 030F3021 */ addu $a2, $t8, $t7 +/* 0BE04C 800BD44C 0006C843 */ sra $t9, $a2, 1 +/* 0BE050 800BD450 A0590000 */ sb $t9, ($v0) +/* 0BE054 800BD454 8E2E0000 */ lw $t6, ($s1) +/* 0BE058 800BD458 00000000 */ nop +/* 0BE05C 800BD45C 01C3C021 */ addu $t8, $t6, $v1 +/* 0BE060 800BD460 A3190000 */ sb $t9, ($t8) +/* 0BE064 800BD464 14E9FFC7 */ bne $a3, $t1, .L800BD384 +/* 0BE068 800BD468 24630001 */ addiu $v1, $v1, 1 +.L800BD46C: +/* 0BE06C 800BD46C 3C048013 */ lui $a0, %hi(D_8012A0D8) # $a0, 0x8013 +/* 0BE070 800BD470 8C84A0D8 */ lw $a0, %lo(D_8012A0D8)($a0) +/* 0BE074 800BD474 2406FFFF */ li $a2, -1 +.L800BD478: +/* 0BE078 800BD478 248FFFFF */ addiu $t7, $a0, -1 +.L800BD47C: +/* 0BE07C 800BD47C 8FA500A4 */ lw $a1, 0xa4($sp) +/* 0BE080 800BD480 014F082A */ slt $at, $t2, $t7 +/* 0BE084 800BD484 10200069 */ beqz $at, .L800BD62C +/* 0BE088 800BD488 00000000 */ nop +/* 0BE08C 800BD48C 8FB90184 */ lw $t9, 0x184($sp) +/* 0BE090 800BD490 00003825 */ move $a3, $zero +/* 0BE094 800BD494 03240019 */ multu $t9, $a0 +/* 0BE098 800BD498 2689FFFF */ addiu $t1, $s4, -1 +/* 0BE09C 800BD49C 00007012 */ mflo $t6 +/* 0BE0A0 800BD4A0 000EC0C0 */ sll $t8, $t6, 3 +/* 0BE0A4 800BD4A4 00B87821 */ addu $t7, $a1, $t8 +/* 0BE0A8 800BD4A8 01EBC821 */ addu $t9, $t7, $t3 +/* 0BE0AC 800BD4AC 8F22000C */ lw $v0, 0xc($t9) +/* 0BE0B0 800BD4B0 00147040 */ sll $t6, $s4, 1 +/* 0BE0B4 800BD4B4 1046005D */ beq $v0, $a2, .L800BD62C +/* 0BE0B8 800BD4B8 01CC2821 */ addu $a1, $t6, $t4 +/* 0BE0BC 800BD4BC 00541821 */ addu $v1, $v0, $s4 +/* 0BE0C0 800BD4C0 24A50001 */ addiu $a1, $a1, 1 +/* 0BE0C4 800BD4C4 19200059 */ blez $t1, .L800BD62C +/* 0BE0C8 800BD4C8 24630001 */ addiu $v1, $v1, 1 +/* 0BE0CC 800BD4CC 2682FFFF */ addiu $v0, $s4, -1 +/* 0BE0D0 800BD4D0 30580003 */ andi $t8, $v0, 3 +/* 0BE0D4 800BD4D4 13000014 */ beqz $t8, .L800BD528 +/* 0BE0D8 800BD4D8 03004025 */ move $t0, $t8 +.L800BD4DC: +/* 0BE0DC 800BD4DC 8E240000 */ lw $a0, ($s1) +/* 0BE0E0 800BD4E0 24E70001 */ addiu $a3, $a3, 1 +/* 0BE0E4 800BD4E4 00851021 */ addu $v0, $a0, $a1 +/* 0BE0E8 800BD4E8 00837821 */ addu $t7, $a0, $v1 +/* 0BE0EC 800BD4EC 91F90000 */ lbu $t9, ($t7) +/* 0BE0F0 800BD4F0 904E0000 */ lbu $t6, ($v0) +/* 0BE0F4 800BD4F4 00B42821 */ addu $a1, $a1, $s4 +/* 0BE0F8 800BD4F8 032E3021 */ addu $a2, $t9, $t6 +/* 0BE0FC 800BD4FC 0006C043 */ sra $t8, $a2, 1 +/* 0BE100 800BD500 A0580000 */ sb $t8, ($v0) +/* 0BE104 800BD504 8E2F0000 */ lw $t7, ($s1) +/* 0BE108 800BD508 24A50001 */ addiu $a1, $a1, 1 +/* 0BE10C 800BD50C 01E3C821 */ addu $t9, $t7, $v1 +/* 0BE110 800BD510 00741821 */ addu $v1, $v1, $s4 +/* 0BE114 800BD514 24630001 */ addiu $v1, $v1, 1 +/* 0BE118 800BD518 1507FFF0 */ bne $t0, $a3, .L800BD4DC +/* 0BE11C 800BD51C A3380000 */ sb $t8, ($t9) +/* 0BE120 800BD520 10E9003F */ beq $a3, $t1, .L800BD620 +/* 0BE124 800BD524 00000000 */ nop +.L800BD528: +/* 0BE128 800BD528 8E240000 */ lw $a0, ($s1) +/* 0BE12C 800BD52C 24E70004 */ addiu $a3, $a3, 4 +/* 0BE130 800BD530 00851021 */ addu $v0, $a0, $a1 +/* 0BE134 800BD534 00837021 */ addu $t6, $a0, $v1 +/* 0BE138 800BD538 91D80000 */ lbu $t8, ($t6) +/* 0BE13C 800BD53C 904F0000 */ lbu $t7, ($v0) +/* 0BE140 800BD540 00B42821 */ addu $a1, $a1, $s4 +/* 0BE144 800BD544 030F3021 */ addu $a2, $t8, $t7 +/* 0BE148 800BD548 0006C843 */ sra $t9, $a2, 1 +/* 0BE14C 800BD54C A0590000 */ sb $t9, ($v0) +/* 0BE150 800BD550 8E2E0000 */ lw $t6, ($s1) +/* 0BE154 800BD554 24A50001 */ addiu $a1, $a1, 1 +/* 0BE158 800BD558 01C3C021 */ addu $t8, $t6, $v1 +/* 0BE15C 800BD55C A3190000 */ sb $t9, ($t8) +/* 0BE160 800BD560 8E240000 */ lw $a0, ($s1) +/* 0BE164 800BD564 00741821 */ addu $v1, $v1, $s4 +/* 0BE168 800BD568 24630001 */ addiu $v1, $v1, 1 +/* 0BE16C 800BD56C 00837821 */ addu $t7, $a0, $v1 +/* 0BE170 800BD570 00851021 */ addu $v0, $a0, $a1 +/* 0BE174 800BD574 904E0000 */ lbu $t6, ($v0) +/* 0BE178 800BD578 91F90000 */ lbu $t9, ($t7) +/* 0BE17C 800BD57C 00B42821 */ addu $a1, $a1, $s4 +/* 0BE180 800BD580 032E3021 */ addu $a2, $t9, $t6 +/* 0BE184 800BD584 0006C043 */ sra $t8, $a2, 1 +/* 0BE188 800BD588 A0580000 */ sb $t8, ($v0) +/* 0BE18C 800BD58C 8E2F0000 */ lw $t7, ($s1) +/* 0BE190 800BD590 24A50001 */ addiu $a1, $a1, 1 +/* 0BE194 800BD594 01E3C821 */ addu $t9, $t7, $v1 +/* 0BE198 800BD598 A3380000 */ sb $t8, ($t9) +/* 0BE19C 800BD59C 8E240000 */ lw $a0, ($s1) +/* 0BE1A0 800BD5A0 00741821 */ addu $v1, $v1, $s4 +/* 0BE1A4 800BD5A4 24630001 */ addiu $v1, $v1, 1 +/* 0BE1A8 800BD5A8 00837021 */ addu $t6, $a0, $v1 +/* 0BE1AC 800BD5AC 00851021 */ addu $v0, $a0, $a1 +/* 0BE1B0 800BD5B0 904F0000 */ lbu $t7, ($v0) +/* 0BE1B4 800BD5B4 91D80000 */ lbu $t8, ($t6) +/* 0BE1B8 800BD5B8 00B42821 */ addu $a1, $a1, $s4 +/* 0BE1BC 800BD5BC 030F3021 */ addu $a2, $t8, $t7 +/* 0BE1C0 800BD5C0 0006C843 */ sra $t9, $a2, 1 +/* 0BE1C4 800BD5C4 A0590000 */ sb $t9, ($v0) +/* 0BE1C8 800BD5C8 8E2E0000 */ lw $t6, ($s1) +/* 0BE1CC 800BD5CC 24A50001 */ addiu $a1, $a1, 1 +/* 0BE1D0 800BD5D0 01C3C021 */ addu $t8, $t6, $v1 +/* 0BE1D4 800BD5D4 A3190000 */ sb $t9, ($t8) +/* 0BE1D8 800BD5D8 8E240000 */ lw $a0, ($s1) +/* 0BE1DC 800BD5DC 00741821 */ addu $v1, $v1, $s4 +/* 0BE1E0 800BD5E0 24630001 */ addiu $v1, $v1, 1 +/* 0BE1E4 800BD5E4 00837821 */ addu $t7, $a0, $v1 +/* 0BE1E8 800BD5E8 00851021 */ addu $v0, $a0, $a1 +/* 0BE1EC 800BD5EC 904E0000 */ lbu $t6, ($v0) +/* 0BE1F0 800BD5F0 91F90000 */ lbu $t9, ($t7) +/* 0BE1F4 800BD5F4 00B42821 */ addu $a1, $a1, $s4 +/* 0BE1F8 800BD5F8 032E3021 */ addu $a2, $t9, $t6 +/* 0BE1FC 800BD5FC 0006C043 */ sra $t8, $a2, 1 +/* 0BE200 800BD600 A0580000 */ sb $t8, ($v0) +/* 0BE204 800BD604 8E2F0000 */ lw $t7, ($s1) +/* 0BE208 800BD608 24A50001 */ addiu $a1, $a1, 1 +/* 0BE20C 800BD60C 01E3C821 */ addu $t9, $t7, $v1 +/* 0BE210 800BD610 00741821 */ addu $v1, $v1, $s4 +/* 0BE214 800BD614 24630001 */ addiu $v1, $v1, 1 +/* 0BE218 800BD618 14E9FFC3 */ bne $a3, $t1, .L800BD528 +/* 0BE21C 800BD61C A3380000 */ sb $t8, ($t9) +.L800BD620: +/* 0BE220 800BD620 3C048013 */ lui $a0, %hi(D_8012A0D8) # $a0, 0x8013 +/* 0BE224 800BD624 8C84A0D8 */ lw $a0, %lo(D_8012A0D8)($a0) +/* 0BE228 800BD628 2406FFFF */ li $a2, -1 +.L800BD62C: +/* 0BE22C 800BD62C 254A0001 */ addiu $t2, $t2, 1 +/* 0BE230 800BD630 0144082A */ slt $at, $t2, $a0 +/* 0BE234 800BD634 8FA500A4 */ lw $a1, 0xa4($sp) +/* 0BE238 800BD638 1420FF1A */ bnez $at, .L800BD2A4 +/* 0BE23C 800BD63C 256B0008 */ addiu $t3, $t3, 8 +/* 0BE240 800BD640 3C038013 */ lui $v1, %hi(D_8012A0DC) # $v1, 0x8013 +/* 0BE244 800BD644 8C63A0DC */ lw $v1, %lo(D_8012A0DC)($v1) +/* 0BE248 800BD648 00000000 */ nop +.L800BD64C: +/* 0BE24C 800BD64C 8FAE0184 */ lw $t6, 0x184($sp) +/* 0BE250 800BD650 00000000 */ nop +/* 0BE254 800BD654 25D80001 */ addiu $t8, $t6, 1 +/* 0BE258 800BD658 0303082A */ slt $at, $t8, $v1 +/* 0BE25C 800BD65C 1420FF0C */ bnez $at, .L800BD290 +/* 0BE260 800BD660 AFB80184 */ sw $t8, 0x184($sp) +/* 0BE264 800BD664 8FAF0190 */ lw $t7, 0x190($sp) +/* 0BE268 800BD668 00000000 */ nop +/* 0BE26C 800BD66C 85E2001A */ lh $v0, 0x1a($t7) +/* 0BE270 800BD670 00000000 */ nop +.L800BD674: +/* 0BE274 800BD674 18400031 */ blez $v0, .L800BD73C +/* 0BE278 800BD678 00006025 */ move $t4, $zero +/* 0BE27C 800BD67C 8FB90090 */ lw $t9, 0x90($sp) +/* 0BE280 800BD680 3C03800E */ lui $v1, %hi(D_800E317C) # $v1, 0x800e +/* 0BE284 800BD684 03390019 */ multu $t9, $t9 +/* 0BE288 800BD688 8FA800A0 */ lw $t0, 0xa0($sp) +/* 0BE28C 800BD68C 8FA40190 */ lw $a0, 0x190($sp) +/* 0BE290 800BD690 2463317C */ addiu $v1, %lo(D_800E317C) # addiu $v1, $v1, 0x317c +/* 0BE294 800BD694 0000F812 */ mflo $ra +/* 0BE298 800BD698 00000000 */ nop +/* 0BE29C 800BD69C 00000000 */ nop +/* 0BE2A0 800BD6A0 03340019 */ multu $t9, $s4 +/* 0BE2A4 800BD6A4 00006812 */ mflo $t5 +/* 0BE2A8 800BD6A8 00000000 */ nop +/* 0BE2AC 800BD6AC 00000000 */ nop +.L800BD6B0: +/* 0BE2B0 800BD6B0 8E2E0000 */ lw $t6, ($s1) +/* 0BE2B4 800BD6B4 0194C821 */ addu $t9, $t4, $s4 +/* 0BE2B8 800BD6B8 01CCC021 */ addu $t8, $t6, $t4 +/* 0BE2BC 800BD6BC 930F0000 */ lbu $t7, ($t8) +/* 0BE2C0 800BD6C0 25080004 */ addiu $t0, $t0, 4 +/* 0BE2C4 800BD6C4 A10FFFFC */ sb $t7, -4($t0) +/* 0BE2C8 800BD6C8 8E2E0000 */ lw $t6, ($s1) +/* 0BE2CC 800BD6CC 00000000 */ nop +/* 0BE2D0 800BD6D0 032EC021 */ addu $t8, $t9, $t6 +/* 0BE2D4 800BD6D4 930F0000 */ lbu $t7, ($t8) +/* 0BE2D8 800BD6D8 01ACC821 */ addu $t9, $t5, $t4 +/* 0BE2DC 800BD6DC A10FFFFD */ sb $t7, -3($t0) +/* 0BE2E0 800BD6E0 8E2E0000 */ lw $t6, ($s1) +/* 0BE2E4 800BD6E4 00000000 */ nop +/* 0BE2E8 800BD6E8 032EC021 */ addu $t8, $t9, $t6 +/* 0BE2EC 800BD6EC 930F0000 */ lbu $t7, ($t8) +/* 0BE2F0 800BD6F0 03ECC821 */ addu $t9, $ra, $t4 +/* 0BE2F4 800BD6F4 A10FFFFE */ sb $t7, -2($t0) +/* 0BE2F8 800BD6F8 8E2E0000 */ lw $t6, ($s1) +/* 0BE2FC 800BD6FC 00000000 */ nop +/* 0BE300 800BD700 032EC021 */ addu $t8, $t9, $t6 +/* 0BE304 800BD704 930FFFFF */ lbu $t7, -1($t8) +/* 0BE308 800BD708 00000000 */ nop +/* 0BE30C 800BD70C A10FFFFF */ sb $t7, -1($t0) +/* 0BE310 800BD710 8FB9018C */ lw $t9, 0x18c($sp) +/* 0BE314 800BD714 8C780000 */ lw $t8, ($v1) +/* 0BE318 800BD718 272E0001 */ addiu $t6, $t9, 1 +/* 0BE31C 800BD71C AFAE018C */ sw $t6, 0x18c($sp) +/* 0BE320 800BD720 8482001A */ lh $v0, 0x1a($a0) +/* 0BE324 800BD724 01986021 */ addu $t4, $t4, $t8 +/* 0BE328 800BD728 01C2082A */ slt $at, $t6, $v0 +/* 0BE32C 800BD72C 1420FFE0 */ bnez $at, .L800BD6B0 +/* 0BE330 800BD730 00000000 */ nop +/* 0BE334 800BD734 AFA0018C */ sw $zero, 0x18c($sp) +/* 0BE338 800BD738 00006025 */ move $t4, $zero +.L800BD73C: +/* 0BE33C 800BD73C 3C03800E */ lui $v1, %hi(D_800E317C) # $v1, 0x800e +/* 0BE340 800BD740 18400130 */ blez $v0, .L800BDC04 +/* 0BE344 800BD744 2463317C */ addiu $v1, %lo(D_800E317C) # addiu $v1, $v1, 0x317c +/* 0BE348 800BD748 AFA00080 */ sw $zero, 0x80($sp) +/* 0BE34C 800BD74C 27A90160 */ addiu $t1, $sp, 0x160 +.L800BD750: +/* 0BE350 800BD750 3C0F800E */ lui $t7, %hi(D_800E30D8) # $t7, 0x800e +/* 0BE354 800BD754 8DEF30D8 */ lw $t7, %lo(D_800E30D8)($t7) +/* 0BE358 800BD758 8FB90080 */ lw $t9, 0x80($sp) +/* 0BE35C 800BD75C 3C048013 */ lui $a0, %hi(D_8012A0D8) # $a0, 0x8013 +/* 0BE360 800BD760 01F92821 */ addu $a1, $t7, $t9 +/* 0BE364 800BD764 90AE000B */ lbu $t6, 0xb($a1) +/* 0BE368 800BD768 8C84A0D8 */ lw $a0, %lo(D_8012A0D8)($a0) +/* 0BE36C 800BD76C 90B8000A */ lbu $t8, 0xa($a1) +/* 0BE370 800BD770 01C40019 */ multu $t6, $a0 +/* 0BE374 800BD774 8FB900A4 */ lw $t9, 0xa4($sp) +/* 0BE378 800BD778 2401FFFF */ li $at, -1 +/* 0BE37C 800BD77C 00007812 */ mflo $t7 +/* 0BE380 800BD780 030FA821 */ addu $s5, $t8, $t7 +/* 0BE384 800BD784 001570C0 */ sll $t6, $s5, 3 +/* 0BE388 800BD788 032E3021 */ addu $a2, $t9, $t6 +/* 0BE38C 800BD78C 8CD80000 */ lw $t8, ($a2) +/* 0BE390 800BD790 8FAF0090 */ lw $t7, 0x90($sp) +/* 0BE394 800BD794 13010111 */ beq $t8, $at, .L800BDBDC +/* 0BE398 800BD798 00000000 */ nop +/* 0BE39C 800BD79C 01EF0019 */ multu $t7, $t7 +/* 0BE3A0 800BD7A0 8FAE018C */ lw $t6, 0x18c($sp) +/* 0BE3A4 800BD7A4 3C0B8013 */ lui $t3, %hi(D_8012A0DC) # $t3, 0x8013 +/* 0BE3A8 800BD7A8 8D6BA0DC */ lw $t3, %lo(D_8012A0DC)($t3) +/* 0BE3AC 800BD7AC 8FB900A0 */ lw $t9, 0xa0($sp) +/* 0BE3B0 800BD7B0 000EC080 */ sll $t8, $t6, 2 +/* 0BE3B4 800BD7B4 248AFFFF */ addiu $t2, $a0, -1 +/* 0BE3B8 800BD7B8 27A20140 */ addiu $v0, $sp, 0x140 +/* 0BE3BC 800BD7BC 2403FFFF */ li $v1, -1 +/* 0BE3C0 800BD7C0 256BFFFF */ addiu $t3, $t3, -1 +/* 0BE3C4 800BD7C4 03384021 */ addu $t0, $t9, $t8 +/* 0BE3C8 800BD7C8 0000F812 */ mflo $ra +/* 0BE3CC 800BD7CC 00000000 */ nop +/* 0BE3D0 800BD7D0 00000000 */ nop +/* 0BE3D4 800BD7D4 01F40019 */ multu $t7, $s4 +/* 0BE3D8 800BD7D8 00006812 */ mflo $t5 +/* 0BE3DC 800BD7DC 00000000 */ nop +/* 0BE3E0 800BD7E0 00000000 */ nop +.L800BD7E4: +/* 0BE3E4 800BD7E4 24420004 */ addiu $v0, $v0, 4 +/* 0BE3E8 800BD7E8 0049082B */ sltu $at, $v0, $t1 +/* 0BE3EC 800BD7EC 1420FFFD */ bnez $at, .L800BD7E4 +/* 0BE3F0 800BD7F0 AC43FFFC */ sw $v1, -4($v0) +/* 0BE3F4 800BD7F4 90AF000B */ lbu $t7, 0xb($a1) +/* 0BE3F8 800BD7F8 00000000 */ nop +/* 0BE3FC 800BD7FC 19E0001D */ blez $t7, .L800BD874 +/* 0BE400 800BD800 00000000 */ nop +/* 0BE404 800BD804 90AE000A */ lbu $t6, 0xa($a1) +/* 0BE408 800BD808 8FB900A4 */ lw $t9, 0xa4($sp) +/* 0BE40C 800BD80C 19C00008 */ blez $t6, .L800BD830 +/* 0BE410 800BD810 0015C0C0 */ sll $t8, $s5, 3 +/* 0BE414 800BD814 03387821 */ addu $t7, $t9, $t8 +/* 0BE418 800BD818 000470C0 */ sll $t6, $a0, 3 +/* 0BE41C 800BD81C 000EC823 */ negu $t9, $t6 +/* 0BE420 800BD820 01F9C021 */ addu $t8, $t7, $t9 +/* 0BE424 800BD824 8F0EFFF8 */ lw $t6, -8($t8) +/* 0BE428 800BD828 00000000 */ nop +/* 0BE42C 800BD82C AFAE0140 */ sw $t6, 0x140($sp) +.L800BD830: +/* 0BE430 800BD830 8FAF00A4 */ lw $t7, 0xa4($sp) +/* 0BE434 800BD834 0015C8C0 */ sll $t9, $s5, 3 +/* 0BE438 800BD838 000470C0 */ sll $t6, $a0, 3 +/* 0BE43C 800BD83C 01F9C021 */ addu $t8, $t7, $t9 +/* 0BE440 800BD840 000E7823 */ negu $t7, $t6 +/* 0BE444 800BD844 030F1021 */ addu $v0, $t8, $t7 +/* 0BE448 800BD848 8C590000 */ lw $t9, ($v0) +/* 0BE44C 800BD84C 00000000 */ nop +/* 0BE450 800BD850 AFB90144 */ sw $t9, 0x144($sp) +/* 0BE454 800BD854 90AE000A */ lbu $t6, 0xa($a1) +/* 0BE458 800BD858 00000000 */ nop +/* 0BE45C 800BD85C 01CA082A */ slt $at, $t6, $t2 +/* 0BE460 800BD860 10200004 */ beqz $at, .L800BD874 +/* 0BE464 800BD864 00000000 */ nop +/* 0BE468 800BD868 8C580008 */ lw $t8, 8($v0) +/* 0BE46C 800BD86C 00000000 */ nop +/* 0BE470 800BD870 AFB80148 */ sw $t8, 0x148($sp) +.L800BD874: +/* 0BE474 800BD874 90A3000A */ lbu $v1, 0xa($a1) +/* 0BE478 800BD878 00000000 */ nop +/* 0BE47C 800BD87C 18600007 */ blez $v1, .L800BD89C +/* 0BE480 800BD880 006A082A */ slt $at, $v1, $t2 +/* 0BE484 800BD884 8CCFFFF8 */ lw $t7, -8($a2) +/* 0BE488 800BD888 00000000 */ nop +/* 0BE48C 800BD88C AFAF014C */ sw $t7, 0x14c($sp) +/* 0BE490 800BD890 90A3000A */ lbu $v1, 0xa($a1) +/* 0BE494 800BD894 00000000 */ nop +/* 0BE498 800BD898 006A082A */ slt $at, $v1, $t2 +.L800BD89C: +/* 0BE49C 800BD89C 10200004 */ beqz $at, .L800BD8B0 +/* 0BE4A0 800BD8A0 000418C0 */ sll $v1, $a0, 3 +/* 0BE4A4 800BD8A4 8CD90008 */ lw $t9, 8($a2) +/* 0BE4A8 800BD8A8 00000000 */ nop +/* 0BE4AC 800BD8AC AFB90150 */ sw $t9, 0x150($sp) +.L800BD8B0: +/* 0BE4B0 800BD8B0 90AE000B */ lbu $t6, 0xb($a1) +/* 0BE4B4 800BD8B4 8FB800A4 */ lw $t8, 0xa4($sp) +/* 0BE4B8 800BD8B8 01CB082A */ slt $at, $t6, $t3 +/* 0BE4BC 800BD8BC 10200015 */ beqz $at, .L800BD914 +/* 0BE4C0 800BD8C0 00000000 */ nop +/* 0BE4C4 800BD8C4 90B9000A */ lbu $t9, 0xa($a1) +/* 0BE4C8 800BD8C8 001578C0 */ sll $t7, $s5, 3 +/* 0BE4CC 800BD8CC 1B200005 */ blez $t9, .L800BD8E4 +/* 0BE4D0 800BD8D0 030F1021 */ addu $v0, $t8, $t7 +/* 0BE4D4 800BD8D4 00437021 */ addu $t6, $v0, $v1 +/* 0BE4D8 800BD8D8 8DD8FFF8 */ lw $t8, -8($t6) +/* 0BE4DC 800BD8DC 00000000 */ nop +/* 0BE4E0 800BD8E0 AFB80154 */ sw $t8, 0x154($sp) +.L800BD8E4: +/* 0BE4E4 800BD8E4 00432021 */ addu $a0, $v0, $v1 +/* 0BE4E8 800BD8E8 8C8F0000 */ lw $t7, ($a0) +/* 0BE4EC 800BD8EC 00000000 */ nop +/* 0BE4F0 800BD8F0 AFAF0158 */ sw $t7, 0x158($sp) +/* 0BE4F4 800BD8F4 90B9000A */ lbu $t9, 0xa($a1) +/* 0BE4F8 800BD8F8 00000000 */ nop +/* 0BE4FC 800BD8FC 032A082A */ slt $at, $t9, $t2 +/* 0BE500 800BD900 10200005 */ beqz $at, .L800BD918 +/* 0BE504 800BD904 8FB80140 */ lw $t8, 0x140($sp) +/* 0BE508 800BD908 8C8E0008 */ lw $t6, 8($a0) +/* 0BE50C 800BD90C 00000000 */ nop +/* 0BE510 800BD910 AFAE015C */ sw $t6, 0x15c($sp) +.L800BD914: +/* 0BE514 800BD914 8FB80140 */ lw $t8, 0x140($sp) +.L800BD918: +/* 0BE518 800BD918 2404FFFF */ li $a0, -1 +/* 0BE51C 800BD91C 91060000 */ lbu $a2, ($t0) +/* 0BE520 800BD920 10980007 */ beq $a0, $t8, .L800BD940 +/* 0BE524 800BD924 24070001 */ li $a3, 1 +/* 0BE528 800BD928 8FA300A0 */ lw $v1, 0xa0($sp) +/* 0BE52C 800BD92C 00187880 */ sll $t7, $t8, 2 +/* 0BE530 800BD930 006FC821 */ addu $t9, $v1, $t7 +/* 0BE534 800BD934 932E0003 */ lbu $t6, 3($t9) +/* 0BE538 800BD938 24070002 */ li $a3, 2 +/* 0BE53C 800BD93C 00CE3021 */ addu $a2, $a2, $t6 +.L800BD940: +/* 0BE540 800BD940 8FB80144 */ lw $t8, 0x144($sp) +/* 0BE544 800BD944 8FA300A0 */ lw $v1, 0xa0($sp) +/* 0BE548 800BD948 10980006 */ beq $a0, $t8, .L800BD964 +/* 0BE54C 800BD94C 00000000 */ nop +/* 0BE550 800BD950 00187880 */ sll $t7, $t8, 2 +/* 0BE554 800BD954 006FC821 */ addu $t9, $v1, $t7 +/* 0BE558 800BD958 932E0002 */ lbu $t6, 2($t9) +/* 0BE55C 800BD95C 24E70001 */ addiu $a3, $a3, 1 +/* 0BE560 800BD960 00CE3021 */ addu $a2, $a2, $t6 +.L800BD964: +/* 0BE564 800BD964 8FB8014C */ lw $t8, 0x14c($sp) +/* 0BE568 800BD968 00000000 */ nop +/* 0BE56C 800BD96C 10980006 */ beq $a0, $t8, .L800BD988 +/* 0BE570 800BD970 00000000 */ nop +/* 0BE574 800BD974 00187880 */ sll $t7, $t8, 2 +/* 0BE578 800BD978 006FC821 */ addu $t9, $v1, $t7 +/* 0BE57C 800BD97C 932E0001 */ lbu $t6, 1($t9) +/* 0BE580 800BD980 24E70001 */ addiu $a3, $a3, 1 +/* 0BE584 800BD984 00CE3021 */ addu $a2, $a2, $t6 +.L800BD988: +/* 0BE588 800BD988 00C7001A */ div $zero, $a2, $a3 +/* 0BE58C 800BD98C 8E2F0000 */ lw $t7, ($s1) +/* 0BE590 800BD990 14E00002 */ bnez $a3, .L800BD99C +/* 0BE594 800BD994 00000000 */ nop +/* 0BE598 800BD998 0007000D */ break 7 +.L800BD99C: +/* 0BE59C 800BD99C 2401FFFF */ li $at, -1 +/* 0BE5A0 800BD9A0 14E10004 */ bne $a3, $at, .L800BD9B4 +/* 0BE5A4 800BD9A4 3C018000 */ lui $at, 0x8000 +/* 0BE5A8 800BD9A8 14C10002 */ bne $a2, $at, .L800BD9B4 +/* 0BE5AC 800BD9AC 00000000 */ nop +/* 0BE5B0 800BD9B0 0006000D */ break 6 +.L800BD9B4: +/* 0BE5B4 800BD9B4 01ECC821 */ addu $t9, $t7, $t4 +/* 0BE5B8 800BD9B8 24070001 */ li $a3, 1 +/* 0BE5BC 800BD9BC 0000C012 */ mflo $t8 +/* 0BE5C0 800BD9C0 A3380000 */ sb $t8, ($t9) +/* 0BE5C4 800BD9C4 8FAE0144 */ lw $t6, 0x144($sp) +/* 0BE5C8 800BD9C8 91060001 */ lbu $a2, 1($t0) +/* 0BE5CC 800BD9CC 108E0006 */ beq $a0, $t6, .L800BD9E8 +/* 0BE5D0 800BD9D0 00000000 */ nop +/* 0BE5D4 800BD9D4 000E7880 */ sll $t7, $t6, 2 +/* 0BE5D8 800BD9D8 006FC021 */ addu $t8, $v1, $t7 +/* 0BE5DC 800BD9DC 93190003 */ lbu $t9, 3($t8) +/* 0BE5E0 800BD9E0 24070002 */ li $a3, 2 +/* 0BE5E4 800BD9E4 00D93021 */ addu $a2, $a2, $t9 +.L800BD9E8: +/* 0BE5E8 800BD9E8 8FAE0148 */ lw $t6, 0x148($sp) +/* 0BE5EC 800BD9EC 00000000 */ nop +/* 0BE5F0 800BD9F0 108E0006 */ beq $a0, $t6, .L800BDA0C +/* 0BE5F4 800BD9F4 00000000 */ nop +/* 0BE5F8 800BD9F8 000E7880 */ sll $t7, $t6, 2 +/* 0BE5FC 800BD9FC 006FC021 */ addu $t8, $v1, $t7 +/* 0BE600 800BDA00 93190002 */ lbu $t9, 2($t8) +/* 0BE604 800BDA04 24E70001 */ addiu $a3, $a3, 1 +/* 0BE608 800BDA08 00D93021 */ addu $a2, $a2, $t9 +.L800BDA0C: +/* 0BE60C 800BDA0C 8FAE0150 */ lw $t6, 0x150($sp) +/* 0BE610 800BDA10 00000000 */ nop +/* 0BE614 800BDA14 108E0006 */ beq $a0, $t6, .L800BDA30 +/* 0BE618 800BDA18 00000000 */ nop +/* 0BE61C 800BDA1C 000E7880 */ sll $t7, $t6, 2 +/* 0BE620 800BDA20 006FC021 */ addu $t8, $v1, $t7 +/* 0BE624 800BDA24 93190000 */ lbu $t9, ($t8) +/* 0BE628 800BDA28 24E70001 */ addiu $a3, $a3, 1 +/* 0BE62C 800BDA2C 00D93021 */ addu $a2, $a2, $t9 +.L800BDA30: +/* 0BE630 800BDA30 00C7001A */ div $zero, $a2, $a3 +/* 0BE634 800BDA34 8E2F0000 */ lw $t7, ($s1) +/* 0BE638 800BDA38 14E00002 */ bnez $a3, .L800BDA44 +/* 0BE63C 800BDA3C 00000000 */ nop +/* 0BE640 800BDA40 0007000D */ break 7 +.L800BDA44: +/* 0BE644 800BDA44 2401FFFF */ li $at, -1 +/* 0BE648 800BDA48 14E10004 */ bne $a3, $at, .L800BDA5C +/* 0BE64C 800BDA4C 3C018000 */ lui $at, 0x8000 +/* 0BE650 800BDA50 14C10002 */ bne $a2, $at, .L800BDA5C +/* 0BE654 800BDA54 00000000 */ nop +/* 0BE658 800BDA58 0006000D */ break 6 +.L800BDA5C: +/* 0BE65C 800BDA5C 01ECC021 */ addu $t8, $t7, $t4 +/* 0BE660 800BDA60 0314C821 */ addu $t9, $t8, $s4 +/* 0BE664 800BDA64 24070001 */ li $a3, 1 +/* 0BE668 800BDA68 00007012 */ mflo $t6 +/* 0BE66C 800BDA6C A32E0000 */ sb $t6, ($t9) +/* 0BE670 800BDA70 8FAF014C */ lw $t7, 0x14c($sp) +/* 0BE674 800BDA74 91060002 */ lbu $a2, 2($t0) +/* 0BE678 800BDA78 108F0006 */ beq $a0, $t7, .L800BDA94 +/* 0BE67C 800BDA7C 00000000 */ nop +/* 0BE680 800BDA80 000FC080 */ sll $t8, $t7, 2 +/* 0BE684 800BDA84 00787021 */ addu $t6, $v1, $t8 +/* 0BE688 800BDA88 91D90003 */ lbu $t9, 3($t6) +/* 0BE68C 800BDA8C 24070002 */ li $a3, 2 +/* 0BE690 800BDA90 00D93021 */ addu $a2, $a2, $t9 +.L800BDA94: +/* 0BE694 800BDA94 8FAF0154 */ lw $t7, 0x154($sp) +/* 0BE698 800BDA98 00000000 */ nop +/* 0BE69C 800BDA9C 108F0006 */ beq $a0, $t7, .L800BDAB8 +/* 0BE6A0 800BDAA0 00000000 */ nop +/* 0BE6A4 800BDAA4 000FC080 */ sll $t8, $t7, 2 +/* 0BE6A8 800BDAA8 00787021 */ addu $t6, $v1, $t8 +/* 0BE6AC 800BDAAC 91D90001 */ lbu $t9, 1($t6) +/* 0BE6B0 800BDAB0 24E70001 */ addiu $a3, $a3, 1 +/* 0BE6B4 800BDAB4 00D93021 */ addu $a2, $a2, $t9 +.L800BDAB8: +/* 0BE6B8 800BDAB8 8FAF0158 */ lw $t7, 0x158($sp) +/* 0BE6BC 800BDABC 00000000 */ nop +/* 0BE6C0 800BDAC0 108F0006 */ beq $a0, $t7, .L800BDADC +/* 0BE6C4 800BDAC4 00000000 */ nop +/* 0BE6C8 800BDAC8 000FC080 */ sll $t8, $t7, 2 +/* 0BE6CC 800BDACC 00787021 */ addu $t6, $v1, $t8 +/* 0BE6D0 800BDAD0 91D90000 */ lbu $t9, ($t6) +/* 0BE6D4 800BDAD4 24E70001 */ addiu $a3, $a3, 1 +/* 0BE6D8 800BDAD8 00D93021 */ addu $a2, $a2, $t9 +.L800BDADC: +/* 0BE6DC 800BDADC 00C7001A */ div $zero, $a2, $a3 +/* 0BE6E0 800BDAE0 8E380000 */ lw $t8, ($s1) +/* 0BE6E4 800BDAE4 14E00002 */ bnez $a3, .L800BDAF0 +/* 0BE6E8 800BDAE8 00000000 */ nop +/* 0BE6EC 800BDAEC 0007000D */ break 7 +.L800BDAF0: +/* 0BE6F0 800BDAF0 2401FFFF */ li $at, -1 +/* 0BE6F4 800BDAF4 14E10004 */ bne $a3, $at, .L800BDB08 +/* 0BE6F8 800BDAF8 3C018000 */ lui $at, 0x8000 +/* 0BE6FC 800BDAFC 14C10002 */ bne $a2, $at, .L800BDB08 +/* 0BE700 800BDB00 00000000 */ nop +/* 0BE704 800BDB04 0006000D */ break 6 +.L800BDB08: +/* 0BE708 800BDB08 030C7021 */ addu $t6, $t8, $t4 +/* 0BE70C 800BDB0C 01CDC821 */ addu $t9, $t6, $t5 +/* 0BE710 800BDB10 24070001 */ li $a3, 1 +/* 0BE714 800BDB14 00007812 */ mflo $t7 +/* 0BE718 800BDB18 A32F0000 */ sb $t7, ($t9) +/* 0BE71C 800BDB1C 8FB80150 */ lw $t8, 0x150($sp) +/* 0BE720 800BDB20 91060003 */ lbu $a2, 3($t0) +/* 0BE724 800BDB24 10980006 */ beq $a0, $t8, .L800BDB40 +/* 0BE728 800BDB28 00000000 */ nop +/* 0BE72C 800BDB2C 00187080 */ sll $t6, $t8, 2 +/* 0BE730 800BDB30 006E7821 */ addu $t7, $v1, $t6 +/* 0BE734 800BDB34 91F90002 */ lbu $t9, 2($t7) +/* 0BE738 800BDB38 24070002 */ li $a3, 2 +/* 0BE73C 800BDB3C 00D93021 */ addu $a2, $a2, $t9 +.L800BDB40: +/* 0BE740 800BDB40 8FB80158 */ lw $t8, 0x158($sp) +/* 0BE744 800BDB44 00000000 */ nop +/* 0BE748 800BDB48 10980006 */ beq $a0, $t8, .L800BDB64 +/* 0BE74C 800BDB4C 00000000 */ nop +/* 0BE750 800BDB50 00187080 */ sll $t6, $t8, 2 +/* 0BE754 800BDB54 006E7821 */ addu $t7, $v1, $t6 +/* 0BE758 800BDB58 91F90001 */ lbu $t9, 1($t7) +/* 0BE75C 800BDB5C 24E70001 */ addiu $a3, $a3, 1 +/* 0BE760 800BDB60 00D93021 */ addu $a2, $a2, $t9 +.L800BDB64: +/* 0BE764 800BDB64 8FB8015C */ lw $t8, 0x15c($sp) +/* 0BE768 800BDB68 00000000 */ nop +/* 0BE76C 800BDB6C 10980006 */ beq $a0, $t8, .L800BDB88 +/* 0BE770 800BDB70 00000000 */ nop +/* 0BE774 800BDB74 00187080 */ sll $t6, $t8, 2 +/* 0BE778 800BDB78 006E7821 */ addu $t7, $v1, $t6 +/* 0BE77C 800BDB7C 91F90000 */ lbu $t9, ($t7) +/* 0BE780 800BDB80 24E70001 */ addiu $a3, $a3, 1 +/* 0BE784 800BDB84 00D93021 */ addu $a2, $a2, $t9 +.L800BDB88: +/* 0BE788 800BDB88 00C7001A */ div $zero, $a2, $a3 +/* 0BE78C 800BDB8C 8E2E0000 */ lw $t6, ($s1) +/* 0BE790 800BDB90 3C03800E */ lui $v1, %hi(D_800E317C) # $v1, 0x800e +/* 0BE794 800BDB94 01CC7821 */ addu $t7, $t6, $t4 +/* 0BE798 800BDB98 01FFC821 */ addu $t9, $t7, $ra +/* 0BE79C 800BDB9C 2463317C */ addiu $v1, %lo(D_800E317C) # addiu $v1, $v1, 0x317c +/* 0BE7A0 800BDBA0 14E00002 */ bnez $a3, .L800BDBAC +/* 0BE7A4 800BDBA4 00000000 */ nop +/* 0BE7A8 800BDBA8 0007000D */ break 7 +.L800BDBAC: +/* 0BE7AC 800BDBAC 2401FFFF */ li $at, -1 +/* 0BE7B0 800BDBB0 14E10004 */ bne $a3, $at, .L800BDBC4 +/* 0BE7B4 800BDBB4 3C018000 */ lui $at, 0x8000 +/* 0BE7B8 800BDBB8 14C10002 */ bne $a2, $at, .L800BDBC4 +/* 0BE7BC 800BDBBC 00000000 */ nop +/* 0BE7C0 800BDBC0 0006000D */ break 6 +.L800BDBC4: +/* 0BE7C4 800BDBC4 0000C012 */ mflo $t8 +/* 0BE7C8 800BDBC8 A338FFFF */ sb $t8, -1($t9) +/* 0BE7CC 800BDBCC 8FAE0190 */ lw $t6, 0x190($sp) +/* 0BE7D0 800BDBD0 00000000 */ nop +/* 0BE7D4 800BDBD4 85C2001A */ lh $v0, 0x1a($t6) +/* 0BE7D8 800BDBD8 00000000 */ nop +.L800BDBDC: +/* 0BE7DC 800BDBDC 8FAF018C */ lw $t7, 0x18c($sp) +/* 0BE7E0 800BDBE0 8FB90080 */ lw $t9, 0x80($sp) +/* 0BE7E4 800BDBE4 25F80001 */ addiu $t8, $t7, 1 +/* 0BE7E8 800BDBE8 8C6F0000 */ lw $t7, ($v1) +/* 0BE7EC 800BDBEC 0302082A */ slt $at, $t8, $v0 +/* 0BE7F0 800BDBF0 272E001C */ addiu $t6, $t9, 0x1c +/* 0BE7F4 800BDBF4 AFAE0080 */ sw $t6, 0x80($sp) +/* 0BE7F8 800BDBF8 AFB8018C */ sw $t8, 0x18c($sp) +/* 0BE7FC 800BDBFC 1420FED4 */ bnez $at, .L800BD750 +/* 0BE800 800BDC00 018F6021 */ addu $t4, $t4, $t7 +.L800BDC04: +/* 0BE804 800BDC04 8FA400A8 */ lw $a0, 0xa8($sp) +/* 0BE808 800BDC08 0C01C450 */ jal func_80071140 +/* 0BE80C 800BDC0C 00000000 */ nop +/* 0BE810 800BDC10 8FA400A4 */ lw $a0, 0xa4($sp) +/* 0BE814 800BDC14 0C01C450 */ jal func_80071140 +/* 0BE818 800BDC18 00000000 */ nop +/* 0BE81C 800BDC1C 8FA400A0 */ lw $a0, 0xa0($sp) +/* 0BE820 800BDC20 0C01C450 */ jal func_80071140 +/* 0BE824 800BDC24 00000000 */ nop +/* 0BE828 800BDC28 8FBF0064 */ lw $ra, 0x64($sp) +/* 0BE82C 800BDC2C C7B50018 */ lwc1 $f21, 0x18($sp) +/* 0BE830 800BDC30 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 0BE834 800BDC34 C7B70020 */ lwc1 $f23, 0x20($sp) +/* 0BE838 800BDC38 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 0BE83C 800BDC3C C7B90028 */ lwc1 $f25, 0x28($sp) +/* 0BE840 800BDC40 C7B8002C */ lwc1 $f24, 0x2c($sp) +/* 0BE844 800BDC44 C7BB0030 */ lwc1 $f27, 0x30($sp) +/* 0BE848 800BDC48 C7BA0034 */ lwc1 $f26, 0x34($sp) +/* 0BE84C 800BDC4C C7BD0038 */ lwc1 $f29, 0x38($sp) +/* 0BE850 800BDC50 C7BC003C */ lwc1 $f28, 0x3c($sp) +/* 0BE854 800BDC54 8FB00040 */ lw $s0, 0x40($sp) +/* 0BE858 800BDC58 8FB10044 */ lw $s1, 0x44($sp) +/* 0BE85C 800BDC5C 8FB20048 */ lw $s2, 0x48($sp) +/* 0BE860 800BDC60 8FB3004C */ lw $s3, 0x4c($sp) +/* 0BE864 800BDC64 8FB40050 */ lw $s4, 0x50($sp) +/* 0BE868 800BDC68 8FB50054 */ lw $s5, 0x54($sp) +/* 0BE86C 800BDC6C 8FB60058 */ lw $s6, 0x58($sp) +/* 0BE870 800BDC70 8FB7005C */ lw $s7, 0x5c($sp) +/* 0BE874 800BDC74 8FBE0060 */ lw $fp, 0x60($sp) +/* 0BE878 800BDC78 03E00008 */ jr $ra +/* 0BE87C 800BDC7C 27BD0190 */ addiu $sp, $sp, 0x190 + diff --git a/asm/non_matchings/unknown_0B8920/func_800BDC80.s b/asm/non_matchings/unknown_0B8920/func_800BDC80.s new file mode 100644 index 00000000..d2b81793 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800BDC80.s @@ -0,0 +1,659 @@ +glabel func_800BDC80 +/* 0BE880 800BDC80 27BDFC90 */ addiu $sp, $sp, -0x370 +/* 0BE884 800BDC84 3C0E800E */ lui $t6, %hi(D_800E317C) # $t6, 0x800e +/* 0BE888 800BDC88 8DCE317C */ lw $t6, %lo(D_800E317C)($t6) +/* 0BE88C 800BDC8C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0BE890 800BDC90 008E0019 */ multu $a0, $t6 +/* 0BE894 800BDC94 44810000 */ mtc1 $at, $f0 +/* 0BE898 800BDC98 44876000 */ mtc1 $a3, $f12 +/* 0BE89C 800BDC9C 3C078013 */ lui $a3, %hi(D_80129FC8) # $a3, 0x8013 +/* 0BE8A0 800BDCA0 3C018013 */ lui $at, %hi(D_8012A0B8) # $at, 0x8013 +/* 0BE8A4 800BDCA4 C424A0B8 */ lwc1 $f4, %lo(D_8012A0B8)($at) +/* 0BE8A8 800BDCA8 24E79FC8 */ addiu $a3, %lo(D_80129FC8) # addiu $a3, $a3, -0x6038 +/* 0BE8AC 800BDCAC C4E80044 */ lwc1 $f8, 0x44($a3) +/* 0BE8B0 800BDCB0 3C018013 */ lui $at, %hi(D_8012A0BC) # $at, 0x8013 +/* 0BE8B4 800BDCB4 C426A0BC */ lwc1 $f6, %lo(D_8012A0BC)($at) +/* 0BE8B8 800BDCB8 46080281 */ sub.s $f10, $f0, $f8 +/* 0BE8BC 800BDCBC 3C0142FE */ li $at, 0x42FE0000 # 127.000000 +/* 0BE8C0 800BDCC0 44814000 */ mtc1 $at, $f8 +/* 0BE8C4 800BDCC4 8CEF0028 */ lw $t7, 0x28($a3) +/* 0BE8C8 800BDCC8 AFB00048 */ sw $s0, 0x48($sp) +/* 0BE8CC 800BDCCC E7B90028 */ swc1 $f25, 0x28($sp) +/* 0BE8D0 800BDCD0 E7B8002C */ swc1 $f24, 0x2c($sp) +/* 0BE8D4 800BDCD4 00004012 */ mflo $t0 +/* 0BE8D8 800BDCD8 00808025 */ move $s0, $a0 +/* 0BE8DC 800BDCDC AFBF006C */ sw $ra, 0x6c($sp) +/* 0BE8E0 800BDCE0 AFBE0068 */ sw $fp, 0x68($sp) +/* 0BE8E4 800BDCE4 AFB70064 */ sw $s7, 0x64($sp) +/* 0BE8E8 800BDCE8 AFB60060 */ sw $s6, 0x60($sp) +/* 0BE8EC 800BDCEC AFB5005C */ sw $s5, 0x5c($sp) +/* 0BE8F0 800BDCF0 AFB40058 */ sw $s4, 0x58($sp) +/* 0BE8F4 800BDCF4 AFB30054 */ sw $s3, 0x54($sp) +/* 0BE8F8 800BDCF8 AFB20050 */ sw $s2, 0x50($sp) +/* 0BE8FC 800BDCFC AFB1004C */ sw $s1, 0x4c($sp) +/* 0BE900 800BDD00 E7BF0040 */ swc1 $f31, 0x40($sp) +/* 0BE904 800BDD04 E7BE0044 */ swc1 $f30, 0x44($sp) +/* 0BE908 800BDD08 E7BD0038 */ swc1 $f29, 0x38($sp) +/* 0BE90C 800BDD0C E7BC003C */ swc1 $f28, 0x3c($sp) +/* 0BE910 800BDD10 E7BB0030 */ swc1 $f27, 0x30($sp) +/* 0BE914 800BDD14 E7BA0034 */ swc1 $f26, 0x34($sp) +/* 0BE918 800BDD18 E7B70020 */ swc1 $f23, 0x20($sp) +/* 0BE91C 800BDD1C E7B60024 */ swc1 $f22, 0x24($sp) +/* 0BE920 800BDD20 E7B50018 */ swc1 $f21, 0x18($sp) +/* 0BE924 800BDD24 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 0BE928 800BDD28 AFA50374 */ sw $a1, 0x374($sp) +/* 0BE92C 800BDD2C AFA60378 */ sw $a2, 0x378($sp) +/* 0BE930 800BDD30 E7A400CC */ swc1 $f4, 0xcc($sp) +/* 0BE934 800BDD34 E7A600C8 */ swc1 $f6, 0xc8($sp) +/* 0BE938 800BDD38 11E00012 */ beqz $t7, .L800BDD84 +/* 0BE93C 800BDD3C 46085603 */ div.s $f24, $f10, $f8 +/* 0BE940 800BDD40 4480F000 */ mtc1 $zero, $f30 +/* 0BE944 800BDD44 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 0BE948 800BDD48 4481F800 */ mtc1 $at, $f31 +/* 0BE94C 800BDD4C 46002721 */ cvt.d.s $f28, $f4 +/* 0BE950 800BDD50 463EE702 */ mul.d $f28, $f28, $f30 +/* 0BE954 800BDD54 8CF80000 */ lw $t8, ($a3) +/* 0BE958 800BDD58 460036A1 */ cvt.d.s $f26, $f6 +/* 0BE95C 800BDD5C 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 0BE960 800BDD60 4481B000 */ mtc1 $at, $f22 +/* 0BE964 800BDD64 463ED782 */ mul.d $f30, $f26, $f30 +/* 0BE968 800BDD68 4620E120 */ cvt.s.d $f4, $f28 +/* 0BE96C 800BDD6C 0018C840 */ sll $t9, $t8, 1 +/* 0BE970 800BDD70 E7A400CC */ swc1 $f4, 0xcc($sp) +/* 0BE974 800BDD74 AFB9036C */ sw $t9, 0x36c($sp) +/* 0BE978 800BDD78 4620F120 */ cvt.s.d $f4, $f30 +/* 0BE97C 800BDD7C 10000004 */ b .L800BDD90 +/* 0BE980 800BDD80 E7A400C8 */ swc1 $f4, 0xc8($sp) +.L800BDD84: +/* 0BE984 800BDD84 8CEA0000 */ lw $t2, ($a3) +/* 0BE988 800BDD88 46000586 */ mov.s $f22, $f0 +/* 0BE98C 800BDD8C AFAA036C */ sw $t2, 0x36c($sp) +.L800BDD90: +/* 0BE990 800BDD90 001058C0 */ sll $t3, $s0, 3 +/* 0BE994 800BDD94 01705823 */ subu $t3, $t3, $s0 +/* 0BE998 800BDD98 3C0C800E */ lui $t4, %hi(D_800E30D8) # $t4, 0x800e +/* 0BE99C 800BDD9C 8D8C30D8 */ lw $t4, %lo(D_800E30D8)($t4) +/* 0BE9A0 800BDDA0 000B5880 */ sll $t3, $t3, 2 +/* 0BE9A4 800BDDA4 AFAB00AC */ sw $t3, 0xac($sp) +/* 0BE9A8 800BDDA8 018B3021 */ addu $a2, $t4, $t3 +/* 0BE9AC 800BDDAC 84CE0004 */ lh $t6, 4($a2) +/* 0BE9B0 800BDDB0 84C90008 */ lh $t1, 8($a2) +/* 0BE9B4 800BDDB4 448E3000 */ mtc1 $t6, $f6 +/* 0BE9B8 800BDDB8 44895000 */ mtc1 $t1, $f10 +/* 0BE9BC 800BDDBC 46803020 */ cvt.s.w $f0, $f6 +/* 0BE9C0 800BDDC0 44804000 */ mtc1 $zero, $f8 +/* 0BE9C4 800BDDC4 C7AE0380 */ lwc1 $f14, 0x380($sp) +/* 0BE9C8 800BDDC8 46006301 */ sub.s $f12, $f12, $f0 +/* 0BE9CC 800BDDCC C7B00384 */ lwc1 $f16, 0x384($sp) +/* 0BE9D0 800BDDD0 468050A0 */ cvt.s.w $f2, $f10 +/* 0BE9D4 800BDDD4 C7B20388 */ lwc1 $f18, 0x388($sp) +/* 0BE9D8 800BDDD8 C7A400CC */ lwc1 $f4, 0xcc($sp) +/* 0BE9DC 800BDDDC 4608603C */ c.lt.s $f12, $f8 +/* 0BE9E0 800BDDE0 46027381 */ sub.s $f14, $f14, $f2 +/* 0BE9E4 800BDDE4 46008401 */ sub.s $f16, $f16, $f0 +/* 0BE9E8 800BDDE8 45000003 */ bc1f .L800BDDF8 +/* 0BE9EC 800BDDEC 46029481 */ sub.s $f18, $f18, $f2 +/* 0BE9F0 800BDDF0 1000000E */ b .L800BDE2C +/* 0BE9F4 800BDDF4 AFA00368 */ sw $zero, 0x368($sp) +.L800BDDF8: +/* 0BE9F8 800BDDF8 00000000 */ nop +/* 0BE9FC 800BDDFC 46046183 */ div.s $f6, $f12, $f4 +/* 0BEA00 800BDE00 444FF800 */ cfc1 $t7, $31 +/* 0BEA04 800BDE04 00000000 */ nop +/* 0BEA08 800BDE08 35E10003 */ ori $at, $t7, 3 +/* 0BEA0C 800BDE0C 38210002 */ xori $at, $at, 2 +/* 0BEA10 800BDE10 44C1F800 */ ctc1 $at, $31 +/* 0BEA14 800BDE14 00000000 */ nop +/* 0BEA18 800BDE18 460032A4 */ cvt.w.s $f10, $f6 +/* 0BEA1C 800BDE1C 44185000 */ mfc1 $t8, $f10 +/* 0BEA20 800BDE20 44CFF800 */ ctc1 $t7, $31 +/* 0BEA24 800BDE24 AFB80368 */ sw $t8, 0x368($sp) +/* 0BEA28 800BDE28 00000000 */ nop +.L800BDE2C: +/* 0BEA2C 800BDE2C 44804000 */ mtc1 $zero, $f8 +/* 0BEA30 800BDE30 C7A400C8 */ lwc1 $f4, 0xc8($sp) +/* 0BEA34 800BDE34 4608703C */ c.lt.s $f14, $f8 +/* 0BEA38 800BDE38 00000000 */ nop +/* 0BEA3C 800BDE3C 45000004 */ bc1f .L800BDE50 +/* 0BEA40 800BDE40 00000000 */ nop +/* 0BEA44 800BDE44 1000000E */ b .L800BDE80 +/* 0BEA48 800BDE48 AFA00364 */ sw $zero, 0x364($sp) +/* 0BEA4C 800BDE4C 00000000 */ nop +.L800BDE50: +/* 0BEA50 800BDE50 46047183 */ div.s $f6, $f14, $f4 +/* 0BEA54 800BDE54 4459F800 */ cfc1 $t9, $31 +/* 0BEA58 800BDE58 00000000 */ nop +/* 0BEA5C 800BDE5C 37210003 */ ori $at, $t9, 3 +/* 0BEA60 800BDE60 38210002 */ xori $at, $at, 2 +/* 0BEA64 800BDE64 44C1F800 */ ctc1 $at, $31 +/* 0BEA68 800BDE68 00000000 */ nop +/* 0BEA6C 800BDE6C 460032A4 */ cvt.w.s $f10, $f6 +/* 0BEA70 800BDE70 440A5000 */ mfc1 $t2, $f10 +/* 0BEA74 800BDE74 44D9F800 */ ctc1 $t9, $31 +/* 0BEA78 800BDE78 AFAA0364 */ sw $t2, 0x364($sp) +/* 0BEA7C 800BDE7C 00000000 */ nop +.L800BDE80: +/* 0BEA80 800BDE80 3C018013 */ lui $at, %hi(D_8012A0A0) # $at, 0x8013 +/* 0BEA84 800BDE84 C428A0A0 */ lwc1 $f8, %lo(D_8012A0A0)($at) +/* 0BEA88 800BDE88 8FAB036C */ lw $t3, 0x36c($sp) +/* 0BEA8C 800BDE8C 4610403E */ c.le.s $f8, $f16 +/* 0BEA90 800BDE90 C7A400CC */ lwc1 $f4, 0xcc($sp) +/* 0BEA94 800BDE94 45000004 */ bc1f .L800BDEA8 +/* 0BEA98 800BDE98 00000000 */ nop +/* 0BEA9C 800BDE9C 1000000E */ b .L800BDED8 +/* 0BEAA0 800BDEA0 AFAB0358 */ sw $t3, 0x358($sp) +/* 0BEAA4 800BDEA4 00000000 */ nop +.L800BDEA8: +/* 0BEAA8 800BDEA8 46048183 */ div.s $f6, $f16, $f4 +/* 0BEAAC 800BDEAC 444CF800 */ cfc1 $t4, $31 +/* 0BEAB0 800BDEB0 00000000 */ nop +/* 0BEAB4 800BDEB4 35810003 */ ori $at, $t4, 3 +/* 0BEAB8 800BDEB8 38210002 */ xori $at, $at, 2 +/* 0BEABC 800BDEBC 44C1F800 */ ctc1 $at, $31 +/* 0BEAC0 800BDEC0 00000000 */ nop +/* 0BEAC4 800BDEC4 460032A4 */ cvt.w.s $f10, $f6 +/* 0BEAC8 800BDEC8 440D5000 */ mfc1 $t5, $f10 +/* 0BEACC 800BDECC 44CCF800 */ ctc1 $t4, $31 +/* 0BEAD0 800BDED0 25AE0001 */ addiu $t6, $t5, 1 +/* 0BEAD4 800BDED4 AFAE0358 */ sw $t6, 0x358($sp) +.L800BDED8: +/* 0BEAD8 800BDED8 3C018013 */ lui $at, %hi(D_8012A0A4) # $at, 0x8013 +/* 0BEADC 800BDEDC C428A0A4 */ lwc1 $f8, %lo(D_8012A0A4)($at) +/* 0BEAE0 800BDEE0 8FAF036C */ lw $t7, 0x36c($sp) +/* 0BEAE4 800BDEE4 4612403E */ c.le.s $f8, $f18 +/* 0BEAE8 800BDEE8 C7A400CC */ lwc1 $f4, 0xcc($sp) +/* 0BEAEC 800BDEEC 45000004 */ bc1f .L800BDF00 +/* 0BEAF0 800BDEF0 00000000 */ nop +/* 0BEAF4 800BDEF4 1000000E */ b .L800BDF30 +/* 0BEAF8 800BDEF8 AFAF0354 */ sw $t7, 0x354($sp) +/* 0BEAFC 800BDEFC 00000000 */ nop +.L800BDF00: +/* 0BEB00 800BDF00 46049183 */ div.s $f6, $f18, $f4 +/* 0BEB04 800BDF04 4458F800 */ cfc1 $t8, $31 +/* 0BEB08 800BDF08 00000000 */ nop +/* 0BEB0C 800BDF0C 37010003 */ ori $at, $t8, 3 +/* 0BEB10 800BDF10 38210002 */ xori $at, $at, 2 +/* 0BEB14 800BDF14 44C1F800 */ ctc1 $at, $31 +/* 0BEB18 800BDF18 00000000 */ nop +/* 0BEB1C 800BDF1C 460032A4 */ cvt.w.s $f10, $f6 +/* 0BEB20 800BDF20 44195000 */ mfc1 $t9, $f10 +/* 0BEB24 800BDF24 44D8F800 */ ctc1 $t8, $31 +/* 0BEB28 800BDF28 272A0001 */ addiu $t2, $t9, 1 +/* 0BEB2C 800BDF2C AFAA0354 */ sw $t2, 0x354($sp) +.L800BDF30: +/* 0BEB30 800BDF30 84CB0012 */ lh $t3, 0x12($a2) +/* 0BEB34 800BDF34 8FAC0368 */ lw $t4, 0x368($sp) +/* 0BEB38 800BDF38 8CE40004 */ lw $a0, 4($a3) +/* 0BEB3C 800BDF3C 016C1821 */ addu $v1, $t3, $t4 +/* 0BEB40 800BDF40 0064082A */ slt $at, $v1, $a0 +/* 0BEB44 800BDF44 14200005 */ bnez $at, .L800BDF5C +/* 0BEB48 800BDF48 00000000 */ nop +.L800BDF4C: +/* 0BEB4C 800BDF4C 00641823 */ subu $v1, $v1, $a0 +/* 0BEB50 800BDF50 0064082A */ slt $at, $v1, $a0 +/* 0BEB54 800BDF54 1020FFFD */ beqz $at, .L800BDF4C +/* 0BEB58 800BDF58 00000000 */ nop +.L800BDF5C: +/* 0BEB5C 800BDF5C 84CD0010 */ lh $t5, 0x10($a2) +/* 0BEB60 800BDF60 8FAE0364 */ lw $t6, 0x364($sp) +/* 0BEB64 800BDF64 8FAF0364 */ lw $t7, 0x364($sp) +/* 0BEB68 800BDF68 01AE1021 */ addu $v0, $t5, $t6 +/* 0BEB6C 800BDF6C 0044082A */ slt $at, $v0, $a0 +/* 0BEB70 800BDF70 14200006 */ bnez $at, .L800BDF8C +/* 0BEB74 800BDF74 8FB80354 */ lw $t8, 0x354($sp) +.L800BDF78: +/* 0BEB78 800BDF78 00441023 */ subu $v0, $v0, $a0 +/* 0BEB7C 800BDF7C 0044082A */ slt $at, $v0, $a0 +/* 0BEB80 800BDF80 1020FFFD */ beqz $at, .L800BDF78 +/* 0BEB84 800BDF84 00000000 */ nop +/* 0BEB88 800BDF88 8FB80354 */ lw $t8, 0x354($sp) +.L800BDF8C: +/* 0BEB8C 800BDF8C 01E0B025 */ move $s6, $t7 +/* 0BEB90 800BDF90 030F082A */ slt $at, $t8, $t7 +/* 0BEB94 800BDF94 14200076 */ bnez $at, .L800BE170 +/* 0BEB98 800BDF98 0000B825 */ move $s7, $zero +/* 0BEB9C 800BDF9C 8FAB036C */ lw $t3, 0x36c($sp) +/* 0BEBA0 800BDFA0 8FB90368 */ lw $t9, 0x368($sp) +/* 0BEBA4 800BDFA4 01EB0019 */ multu $t7, $t3 +/* 0BEBA8 800BDFA8 01195021 */ addu $t2, $t0, $t9 +/* 0BEBAC 800BDFAC 270E0001 */ addiu $t6, $t8, 1 +/* 0BEBB0 800BDFB0 3C1E800E */ lui $fp, %hi(D_800E3040) # $fp, 0x800e +/* 0BEBB4 800BDFB4 27DE3040 */ addiu $fp, %lo(D_800E3040) # addiu $fp, $fp, 0x3040 +/* 0BEBB8 800BDFB8 AFAE0090 */ sw $t6, 0x90($sp) +/* 0BEBBC 800BDFBC AFA2034C */ sw $v0, 0x34c($sp) +/* 0BEBC0 800BDFC0 AFA30350 */ sw $v1, 0x350($sp) +/* 0BEBC4 800BDFC4 AFB00370 */ sw $s0, 0x370($sp) +/* 0BEBC8 800BDFC8 03204025 */ move $t0, $t9 +/* 0BEBCC 800BDFCC 00006012 */ mflo $t4 +/* 0BEBD0 800BDFD0 014C6821 */ addu $t5, $t2, $t4 +/* 0BEBD4 800BDFD4 AFAD00A4 */ sw $t5, 0xa4($sp) +.L800BDFD8: +/* 0BEBD8 800BDFD8 8FA2034C */ lw $v0, 0x34c($sp) +/* 0BEBDC 800BDFDC 8FAB0358 */ lw $t3, 0x358($sp) +/* 0BEBE0 800BDFE0 00440019 */ multu $v0, $a0 +/* 0BEBE4 800BDFE4 8FA500A4 */ lw $a1, 0xa4($sp) +/* 0BEBE8 800BDFE8 00175040 */ sll $t2, $s7, 1 +/* 0BEBEC 800BDFEC 27AC00D8 */ addiu $t4, $sp, 0xd8 +/* 0BEBF0 800BDFF0 0168082A */ slt $at, $t3, $t0 +/* 0BEBF4 800BDFF4 00608025 */ move $s0, $v1 +/* 0BEBF8 800BDFF8 014C9821 */ addu $s3, $t2, $t4 +/* 0BEBFC 800BDFFC 01008825 */ move $s1, $t0 +/* 0BEC00 800BE000 25750001 */ addiu $s5, $t3, 1 +/* 0BEC04 800BE004 00A0A025 */ move $s4, $a1 +/* 0BEC08 800BE008 00007812 */ mflo $t7 +/* 0BEC0C 800BE00C 01E39021 */ addu $s2, $t7, $v1 +/* 0BEC10 800BE010 14200049 */ bnez $at, .L800BE138 +.L800BE014: +/* 0BEC14 800BE014 3C0D800E */ lui $t5, %hi(D_800E3044) # $t5, 0x800e +/* 0BEC18 800BE018 8DAD3044 */ lw $t5, %lo(D_800E3044)($t5) +/* 0BEC1C 800BE01C 0012C080 */ sll $t8, $s2, 2 +/* 0BEC20 800BE020 01B81821 */ addu $v1, $t5, $t8 +/* 0BEC24 800BE024 846E0002 */ lh $t6, 2($v1) +/* 0BEC28 800BE028 846A0000 */ lh $t2, ($v1) +/* 0BEC2C 800BE02C 8FC20000 */ lw $v0, ($fp) +/* 0BEC30 800BE030 000EC880 */ sll $t9, $t6, 2 +/* 0BEC34 800BE034 000A6080 */ sll $t4, $t2, 2 +/* 0BEC38 800BE038 004C5821 */ addu $t3, $v0, $t4 +/* 0BEC3C 800BE03C 00597821 */ addu $t7, $v0, $t9 +/* 0BEC40 800BE040 C5E80000 */ lwc1 $f8, ($t7) +/* 0BEC44 800BE044 C5640000 */ lwc1 $f4, ($t3) +/* 0BEC48 800BE048 C4EA0040 */ lwc1 $f10, 0x40($a3) +/* 0BEC4C 800BE04C 46044180 */ add.s $f6, $f8, $f4 +/* 0BEC50 800BE050 3C0D800E */ lui $t5, %hi(D_800E3188) # $t5, 0x800e +/* 0BEC54 800BE054 8DAD3188 */ lw $t5, %lo(D_800E3188)($t5) +/* 0BEC58 800BE058 460A3502 */ mul.s $f20, $f6, $f10 +/* 0BEC5C 800BE05C 19A0000C */ blez $t5, .L800BE090 +/* 0BEC60 800BE060 02202825 */ move $a1, $s1 +/* 0BEC64 800BE064 8FA40370 */ lw $a0, 0x370($sp) +/* 0BEC68 800BE068 0C02FBF1 */ jal func_800BEFC4 +/* 0BEC6C 800BE06C 02C03025 */ move $a2, $s6 +/* 0BEC70 800BE070 3C078013 */ lui $a3, %hi(D_80129FC8) # $a3, 0x8013 +/* 0BEC74 800BE074 3C18800E */ lui $t8, %hi(D_800E30D8) # $t8, 0x800e +/* 0BEC78 800BE078 8F1830D8 */ lw $t8, %lo(D_800E30D8)($t8) +/* 0BEC7C 800BE07C 8FAE00AC */ lw $t6, 0xac($sp) +/* 0BEC80 800BE080 24E79FC8 */ addiu $a3, %lo(D_80129FC8) # addiu $a3, $a3, -0x6038 +/* 0BEC84 800BE084 8CE40004 */ lw $a0, 4($a3) +/* 0BEC88 800BE088 4600A500 */ add.s $f20, $f20, $f0 +/* 0BEC8C 800BE08C 030E3021 */ addu $a2, $t8, $t6 +.L800BE090: +/* 0BEC90 800BE090 3C19800E */ lui $t9, %hi(D_800E3178) # $t9, 0x800e +/* 0BEC94 800BE094 8F393178 */ lw $t9, %lo(D_800E3178)($t9) +/* 0BEC98 800BE098 26310001 */ addiu $s1, $s1, 1 +/* 0BEC9C 800BE09C 03347821 */ addu $t7, $t9, $s4 +/* 0BECA0 800BE0A0 91E20000 */ lbu $v0, ($t7) +/* 0BECA4 800BE0A4 26F70001 */ addiu $s7, $s7, 1 +/* 0BECA8 800BE0A8 2841007F */ slti $at, $v0, 0x7f +/* 0BECAC 800BE0AC 10200008 */ beqz $at, .L800BE0D0 +/* 0BECB0 800BE0B0 00000000 */ nop +/* 0BECB4 800BE0B4 44822000 */ mtc1 $v0, $f4 +/* 0BECB8 800BE0B8 C4E80044 */ lwc1 $f8, 0x44($a3) +/* 0BECBC 800BE0BC 468021A0 */ cvt.s.w $f6, $f4 +/* 0BECC0 800BE0C0 46183282 */ mul.s $f10, $f6, $f24 +/* 0BECC4 800BE0C4 460A4100 */ add.s $f4, $f8, $f10 +/* 0BECC8 800BE0C8 4604A502 */ mul.s $f20, $f20, $f4 +/* 0BECCC 800BE0CC 00000000 */ nop +.L800BE0D0: +/* 0BECD0 800BE0D0 4616A182 */ mul.s $f6, $f20, $f22 +/* 0BECD4 800BE0D4 84CA0006 */ lh $t2, 6($a2) +/* 0BECD8 800BE0D8 26100001 */ addiu $s0, $s0, 1 +/* 0BECDC 800BE0DC 26730002 */ addiu $s3, $s3, 2 +/* 0BECE0 800BE0E0 444CF800 */ cfc1 $t4, $31 +/* 0BECE4 800BE0E4 26940001 */ addiu $s4, $s4, 1 +/* 0BECE8 800BE0E8 35810003 */ ori $at, $t4, 3 +/* 0BECEC 800BE0EC 38210002 */ xori $at, $at, 2 +/* 0BECF0 800BE0F0 44C1F800 */ ctc1 $at, $31 +/* 0BECF4 800BE0F4 0204082A */ slt $at, $s0, $a0 +/* 0BECF8 800BE0F8 46003224 */ cvt.w.s $f8, $f6 +/* 0BECFC 800BE0FC 26520001 */ addiu $s2, $s2, 1 +/* 0BED00 800BE100 44184000 */ mfc1 $t8, $f8 +/* 0BED04 800BE104 44CCF800 */ ctc1 $t4, $31 +/* 0BED08 800BE108 01587021 */ addu $t6, $t2, $t8 +/* 0BED0C 800BE10C 14200003 */ bnez $at, .L800BE11C +/* 0BED10 800BE110 A66EFFFE */ sh $t6, -2($s3) +/* 0BED14 800BE114 02048023 */ subu $s0, $s0, $a0 +/* 0BED18 800BE118 02449023 */ subu $s2, $s2, $a0 +.L800BE11C: +/* 0BED1C 800BE11C 16B1FFBD */ bne $s5, $s1, .L800BE014 +/* 0BED20 800BE120 00000000 */ nop +/* 0BED24 800BE124 8FA80368 */ lw $t0, 0x368($sp) +/* 0BED28 800BE128 8FA500A4 */ lw $a1, 0xa4($sp) +/* 0BED2C 800BE12C 8FA30350 */ lw $v1, 0x350($sp) +/* 0BED30 800BE130 8FA2034C */ lw $v0, 0x34c($sp) +/* 0BED34 800BE134 00000000 */ nop +.L800BE138: +/* 0BED38 800BE138 24420001 */ addiu $v0, $v0, 1 +/* 0BED3C 800BE13C 0044082A */ slt $at, $v0, $a0 +/* 0BED40 800BE140 14200002 */ bnez $at, .L800BE14C +/* 0BED44 800BE144 26D60001 */ addiu $s6, $s6, 1 +/* 0BED48 800BE148 00441023 */ subu $v0, $v0, $a0 +.L800BE14C: +/* 0BED4C 800BE14C 8FB9036C */ lw $t9, 0x36c($sp) +/* 0BED50 800BE150 8FAF0090 */ lw $t7, 0x90($sp) +/* 0BED54 800BE154 00B92821 */ addu $a1, $a1, $t9 +/* 0BED58 800BE158 AFA500A4 */ sw $a1, 0xa4($sp) +/* 0BED5C 800BE15C 15F6FF9E */ bne $t7, $s6, .L800BDFD8 +/* 0BED60 800BE160 AFA2034C */ sw $v0, 0x34c($sp) +/* 0BED64 800BE164 84C90008 */ lh $t1, 8($a2) +/* 0BED68 800BE168 8FB60364 */ lw $s6, 0x364($sp) +/* 0BED6C 800BE16C 0000B825 */ move $s7, $zero +.L800BE170: +/* 0BED70 800BE170 8FB80364 */ lw $t8, 0x364($sp) +/* 0BED74 800BE174 C7A600C8 */ lwc1 $f6, 0xc8($sp) +/* 0BED78 800BE178 44985000 */ mtc1 $t8, $f10 +/* 0BED7C 800BE17C 8FAC0358 */ lw $t4, 0x358($sp) +/* 0BED80 800BE180 46805120 */ cvt.s.w $f4, $f10 +/* 0BED84 800BE184 8FAB0368 */ lw $t3, 0x368($sp) +/* 0BED88 800BE188 46062202 */ mul.s $f8, $f4, $f6 +/* 0BED8C 800BE18C 018B6823 */ subu $t5, $t4, $t3 +/* 0BED90 800BE190 25AA0001 */ addiu $t2, $t5, 1 +/* 0BED94 800BE194 AFAA036C */ sw $t2, 0x36c($sp) +/* 0BED98 800BE198 444EF800 */ cfc1 $t6, $31 +/* 0BED9C 800BE19C 00000000 */ nop +/* 0BEDA0 800BE1A0 35C10003 */ ori $at, $t6, 3 +/* 0BEDA4 800BE1A4 38210002 */ xori $at, $at, 2 +/* 0BEDA8 800BE1A8 44C1F800 */ ctc1 $at, $31 +/* 0BEDAC 800BE1AC 00000000 */ nop +/* 0BEDB0 800BE1B0 460042A4 */ cvt.w.s $f10, $f8 +/* 0BEDB4 800BE1B4 440C5000 */ mfc1 $t4, $f10 +/* 0BEDB8 800BE1B8 44CEF800 */ ctc1 $t6, $31 +/* 0BEDBC 800BE1BC 8FAE0354 */ lw $t6, 0x354($sp) +/* 0BEDC0 800BE1C0 012C2821 */ addu $a1, $t1, $t4 +/* 0BEDC4 800BE1C4 00056C00 */ sll $t5, $a1, 0x10 +/* 0BEDC8 800BE1C8 030E082A */ slt $at, $t8, $t6 +/* 0BEDCC 800BE1CC 10200108 */ beqz $at, .L800BE5F0 +/* 0BEDD0 800BE1D0 000D2C03 */ sra $a1, $t5, 0x10 +/* 0BEDD4 800BE1D4 448B2000 */ mtc1 $t3, $f4 +/* 0BEDD8 800BE1D8 C7A800CC */ lwc1 $f8, 0xcc($sp) +/* 0BEDDC 800BE1DC 468021A0 */ cvt.s.w $f6, $f4 +/* 0BEDE0 800BE1E0 46083282 */ mul.s $f10, $f6, $f8 +/* 0BEDE4 800BE1E4 4459F800 */ cfc1 $t9, $31 +/* 0BEDE8 800BE1E8 00000000 */ nop +/* 0BEDEC 800BE1EC 37210003 */ ori $at, $t9, 3 +/* 0BEDF0 800BE1F0 38210002 */ xori $at, $at, 2 +/* 0BEDF4 800BE1F4 44C1F800 */ ctc1 $at, $31 +/* 0BEDF8 800BE1F8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0BEDFC 800BE1FC 46005124 */ cvt.w.s $f4, $f10 +/* 0BEE00 800BE200 4481F000 */ mtc1 $at, $f30 +/* 0BEE04 800BE204 440F2000 */ mfc1 $t7, $f4 +/* 0BEE08 800BE208 44D9F800 */ ctc1 $t9, $31 +/* 0BEE0C 800BE20C 000F6400 */ sll $t4, $t7, 0x10 +/* 0BEE10 800BE210 000C6C03 */ sra $t5, $t4, 0x10 +/* 0BEE14 800BE214 AFAD0098 */ sw $t5, 0x98($sp) +.L800BE218: +/* 0BEE18 800BE218 26C20001 */ addiu $v0, $s6, 1 +/* 0BEE1C 800BE21C 44823000 */ mtc1 $v0, $f6 +/* 0BEE20 800BE220 C7AA00C8 */ lwc1 $f10, 0xc8($sp) +/* 0BEE24 800BE224 46803220 */ cvt.s.w $f8, $f6 +/* 0BEE28 800BE228 3C0A800E */ lui $t2, %hi(D_800E30D8) # $t2, 0x800e +/* 0BEE2C 800BE22C 8D4A30D8 */ lw $t2, %lo(D_800E30D8)($t2) +/* 0BEE30 800BE230 460A4102 */ mul.s $f4, $f8, $f10 +/* 0BEE34 800BE234 8FB800AC */ lw $t8, 0xac($sp) +/* 0BEE38 800BE238 00000000 */ nop +/* 0BEE3C 800BE23C 01583021 */ addu $a2, $t2, $t8 +/* 0BEE40 800BE240 444EF800 */ cfc1 $t6, $31 +/* 0BEE44 800BE244 84CC0008 */ lh $t4, 8($a2) +/* 0BEE48 800BE248 35C10003 */ ori $at, $t6, 3 +/* 0BEE4C 800BE24C 38210002 */ xori $at, $at, 2 +/* 0BEE50 800BE250 44C1F800 */ ctc1 $at, $31 +/* 0BEE54 800BE254 84D80004 */ lh $t8, 4($a2) +/* 0BEE58 800BE258 460021A4 */ cvt.w.s $f6, $f4 +/* 0BEE5C 800BE25C 440F3000 */ mfc1 $t7, $f6 +/* 0BEE60 800BE260 44CEF800 */ ctc1 $t6, $31 +/* 0BEE64 800BE264 018FF021 */ addu $fp, $t4, $t7 +/* 0BEE68 800BE268 8FAE0098 */ lw $t6, 0x98($sp) +/* 0BEE6C 800BE26C 8FAF0358 */ lw $t7, 0x358($sp) +/* 0BEE70 800BE270 8FAC0368 */ lw $t4, 0x368($sp) +/* 0BEE74 800BE274 030E9821 */ addu $s3, $t8, $t6 +/* 0BEE78 800BE278 001E6C00 */ sll $t5, $fp, 0x10 +/* 0BEE7C 800BE27C 00135C00 */ sll $t3, $s3, 0x10 +/* 0BEE80 800BE280 018F082A */ slt $at, $t4, $t7 +/* 0BEE84 800BE284 000DF403 */ sra $fp, $t5, 0x10 +/* 0BEE88 800BE288 000B9C03 */ sra $s3, $t3, 0x10 +/* 0BEE8C 800BE28C 102000D2 */ beqz $at, .L800BE5D8 +/* 0BEE90 800BE290 01808825 */ move $s1, $t4 +/* 0BEE94 800BE294 8FB90364 */ lw $t9, 0x364($sp) +/* 0BEE98 800BE298 8FAF036C */ lw $t7, 0x36c($sp) +/* 0BEE9C 800BE29C 02D93023 */ subu $a2, $s6, $t9 +/* 0BEEA0 800BE2A0 00CF0019 */ multu $a2, $t7 +/* 0BEEA4 800BE2A4 00175080 */ sll $t2, $s7, 2 +/* 0BEEA8 800BE2A8 8FAD0374 */ lw $t5, 0x374($sp) +/* 0BEEAC 800BE2AC 01575021 */ addu $t2, $t2, $s7 +/* 0BEEB0 800BE2B0 000A5080 */ sll $t2, $t2, 2 +/* 0BEEB4 800BE2B4 01AA8021 */ addu $s0, $t5, $t2 +/* 0BEEB8 800BE2B8 24CA0001 */ addiu $t2, $a2, 1 +/* 0BEEBC 800BE2BC 018CC023 */ subu $t8, $t4, $t4 +/* 0BEEC0 800BE2C0 00187040 */ sll $t6, $t8, 1 +/* 0BEEC4 800BE2C4 AFA200A4 */ sw $v0, 0xa4($sp) +/* 0BEEC8 800BE2C8 27AB00D8 */ addiu $t3, $sp, 0xd8 +/* 0BEECC 800BE2CC C7A000CC */ lwc1 $f0, 0xcc($sp) +/* 0BEED0 800BE2D0 00003812 */ mflo $a3 +/* 0BEED4 800BE2D4 01CB1021 */ addu $v0, $t6, $t3 +/* 0BEED8 800BE2D8 00076840 */ sll $t5, $a3, 1 +/* 0BEEDC 800BE2DC 014F0019 */ multu $t2, $t7 +/* 0BEEE0 800BE2E0 460A0682 */ mul.s $f26, $f0, $f10 +/* 0BEEE4 800BE2E4 000C0823 */ negu $at, $t4 +/* 0BEEE8 800BE2E8 00015840 */ sll $t3, $at, 1 +/* 0BEEEC 800BE2EC 01A03825 */ move $a3, $t5 +/* 0BEEF0 800BE2F0 004DA021 */ addu $s4, $v0, $t5 +/* 0BEEF4 800BE2F4 000C7040 */ sll $t6, $t4, 1 +/* 0BEEF8 800BE2F8 01CBC821 */ addu $t9, $t6, $t3 +/* 0BEEFC 800BE2FC 27AD00D8 */ addiu $t5, $sp, 0xd8 +/* 0BEF00 800BE300 032D4821 */ addu $t1, $t9, $t5 +/* 0BEF04 800BE304 461AD702 */ mul.s $f28, $f26, $f26 +/* 0BEF08 800BE308 01271821 */ addu $v1, $t1, $a3 +/* 0BEF0C 800BE30C 00004012 */ mflo $t0 +/* 0BEF10 800BE310 0008C040 */ sll $t8, $t0, 1 +/* 0BEF14 800BE314 0058A821 */ addu $s5, $v0, $t8 +/* 0BEF18 800BE318 01382021 */ addu $a0, $t1, $t8 +.L800BE31C: +/* 0BEF1C 800BE31C 26360001 */ addiu $s6, $s1, 1 +/* 0BEF20 800BE320 44964000 */ mtc1 $s6, $f8 +/* 0BEF24 800BE324 C7A000CC */ lwc1 $f0, 0xcc($sp) +/* 0BEF28 800BE328 46804120 */ cvt.s.w $f4, $f8 +/* 0BEF2C 800BE32C 3C0A800E */ lui $t2, %hi(D_800E30D8) # $t2, 0x800e +/* 0BEF30 800BE330 8D4A30D8 */ lw $t2, %lo(D_800E30D8)($t2) +/* 0BEF34 800BE334 46002182 */ mul.s $f6, $f4, $f0 +/* 0BEF38 800BE338 8FAF00AC */ lw $t7, 0xac($sp) +/* 0BEF3C 800BE33C C7A200C8 */ lwc1 $f2, 0xc8($sp) +/* 0BEF40 800BE340 014FC021 */ addu $t8, $t2, $t7 +/* 0BEF44 800BE344 444EF800 */ cfc1 $t6, $31 +/* 0BEF48 800BE348 870C0004 */ lh $t4, 4($t8) +/* 0BEF4C 800BE34C 35C10003 */ ori $at, $t6, 3 +/* 0BEF50 800BE350 38210002 */ xori $at, $at, 2 +/* 0BEF54 800BE354 44C1F800 */ ctc1 $at, $31 +/* 0BEF58 800BE358 A6130000 */ sh $s3, ($s0) +/* 0BEF5C 800BE35C 460032A4 */ cvt.w.s $f10, $f6 +/* 0BEF60 800BE360 A6130006 */ sh $s3, 6($s0) +/* 0BEF64 800BE364 440D5000 */ mfc1 $t5, $f10 +/* 0BEF68 800BE368 44CEF800 */ ctc1 $t6, $31 +/* 0BEF6C 800BE36C 018D9021 */ addu $s2, $t4, $t5 +/* 0BEF70 800BE370 00125400 */ sll $t2, $s2, 0x10 +/* 0BEF74 800BE374 000A9403 */ sra $s2, $t2, 0x10 +/* 0BEF78 800BE378 A612000C */ sh $s2, 0xc($s0) +/* 0BEF7C 800BE37C 86980000 */ lh $t8, ($s4) +/* 0BEF80 800BE380 00000000 */ nop +/* 0BEF84 800BE384 A6180002 */ sh $t8, 2($s0) +/* 0BEF88 800BE388 86AE0000 */ lh $t6, ($s5) +/* 0BEF8C 800BE38C 86020002 */ lh $v0, 2($s0) +/* 0BEF90 800BE390 A60E0008 */ sh $t6, 8($s0) +/* 0BEF94 800BE394 846B0002 */ lh $t3, 2($v1) +/* 0BEF98 800BE398 860D0008 */ lh $t5, 8($s0) +/* 0BEF9C 800BE39C A60B000E */ sh $t3, 0xe($s0) +/* 0BEFA0 800BE3A0 8619000E */ lh $t9, 0xe($s0) +/* 0BEFA4 800BE3A4 004D5023 */ subu $t2, $v0, $t5 +/* 0BEFA8 800BE3A8 00596023 */ subu $t4, $v0, $t9 +/* 0BEFAC 800BE3AC 448C4000 */ mtc1 $t4, $f8 +/* 0BEFB0 800BE3B0 448A3000 */ mtc1 $t2, $f6 +/* 0BEFB4 800BE3B4 46804120 */ cvt.s.w $f4, $f8 +/* 0BEFB8 800BE3B8 A6050004 */ sh $a1, 4($s0) +/* 0BEFBC 800BE3BC A61E000A */ sh $fp, 0xa($s0) +/* 0BEFC0 800BE3C0 46022502 */ mul.s $f20, $f4, $f2 +/* 0BEFC4 800BE3C4 A6050010 */ sh $a1, 0x10($s0) +/* 0BEFC8 800BE3C8 A7A50332 */ sh $a1, 0x332($sp) +/* 0BEFCC 800BE3CC AFA40074 */ sw $a0, 0x74($sp) +/* 0BEFD0 800BE3D0 468032A0 */ cvt.s.w $f10, $f6 +/* 0BEFD4 800BE3D4 AFA30078 */ sw $v1, 0x78($sp) +/* 0BEFD8 800BE3D8 46005582 */ mul.s $f22, $f10, $f0 +/* 0BEFDC 800BE3DC 00000000 */ nop +/* 0BEFE0 800BE3E0 4614A202 */ mul.s $f8, $f20, $f20 +/* 0BEFE4 800BE3E4 00000000 */ nop +/* 0BEFE8 800BE3E8 4616B182 */ mul.s $f6, $f22, $f22 +/* 0BEFEC 800BE3EC 461C4100 */ add.s $f4, $f8, $f28 +/* 0BEFF0 800BE3F0 0C0326B4 */ jal sqrtf +/* 0BEFF4 800BE3F4 46062300 */ add.s $f12, $f4, $f6 +/* 0BEFF8 800BE3F8 44805000 */ mtc1 $zero, $f10 +/* 0BEFFC 800BE3FC 8FA30078 */ lw $v1, 0x78($sp) +/* 0BF000 800BE400 4600503C */ c.lt.s $f10, $f0 +/* 0BF004 800BE404 8FA40074 */ lw $a0, 0x74($sp) +/* 0BF008 800BE408 87A50332 */ lh $a1, 0x332($sp) +/* 0BF00C 800BE40C 4500001E */ bc1f .L800BE488 +/* 0BF010 800BE410 00000000 */ nop +/* 0BF014 800BE414 4600F603 */ div.s $f24, $f30, $f0 +/* 0BF018 800BE418 8FAF0378 */ lw $t7, 0x378($sp) +/* 0BF01C 800BE41C 0017C100 */ sll $t8, $s7, 4 +/* 0BF020 800BE420 01F81021 */ addu $v0, $t7, $t8 +/* 0BF024 800BE424 26F70001 */ addiu $s7, $s7, 1 +/* 0BF028 800BE428 26100014 */ addiu $s0, $s0, 0x14 +/* 0BF02C 800BE42C 4618A082 */ mul.s $f2, $f20, $f24 +/* 0BF030 800BE430 00000000 */ nop +/* 0BF034 800BE434 4618D382 */ mul.s $f14, $f26, $f24 +/* 0BF038 800BE438 E4420000 */ swc1 $f2, ($v0) +/* 0BF03C 800BE43C 4618B302 */ mul.s $f12, $f22, $f24 +/* 0BF040 800BE440 E44E0004 */ swc1 $f14, 4($v0) +/* 0BF044 800BE444 E44C0008 */ swc1 $f12, 8($v0) +/* 0BF048 800BE448 860EFFEC */ lh $t6, -0x14($s0) +/* 0BF04C 800BE44C 860BFFEE */ lh $t3, -0x12($s0) +/* 0BF050 800BE450 448E4000 */ mtc1 $t6, $f8 +/* 0BF054 800BE454 448B5000 */ mtc1 $t3, $f10 +/* 0BF058 800BE458 46804120 */ cvt.s.w $f4, $f8 +/* 0BF05C 800BE45C 8619FFF0 */ lh $t9, -0x10($s0) +/* 0BF060 800BE460 46022182 */ mul.s $f6, $f4, $f2 +/* 0BF064 800BE464 46805220 */ cvt.s.w $f8, $f10 +/* 0BF068 800BE468 460E4102 */ mul.s $f4, $f8, $f14 +/* 0BF06C 800BE46C 44994000 */ mtc1 $t9, $f8 +/* 0BF070 800BE470 46043280 */ add.s $f10, $f6, $f4 +/* 0BF074 800BE474 468041A0 */ cvt.s.w $f6, $f8 +/* 0BF078 800BE478 46066102 */ mul.s $f4, $f12, $f6 +/* 0BF07C 800BE47C 460A2200 */ add.s $f8, $f4, $f10 +/* 0BF080 800BE480 46004187 */ neg.s $f6, $f8 +/* 0BF084 800BE484 E446000C */ swc1 $f6, 0xc($v0) +.L800BE488: +/* 0BF088 800BE488 A6120000 */ sh $s2, ($s0) +/* 0BF08C 800BE48C A6130006 */ sh $s3, 6($s0) +/* 0BF090 800BE490 A612000C */ sh $s2, 0xc($s0) +/* 0BF094 800BE494 868C0002 */ lh $t4, 2($s4) +/* 0BF098 800BE498 00000000 */ nop +/* 0BF09C 800BE49C A60C0002 */ sh $t4, 2($s0) +/* 0BF0A0 800BE4A0 86AD0000 */ lh $t5, ($s5) +/* 0BF0A4 800BE4A4 860E0002 */ lh $t6, 2($s0) +/* 0BF0A8 800BE4A8 A60D0008 */ sh $t5, 8($s0) +/* 0BF0AC 800BE4AC 848A0002 */ lh $t2, 2($a0) +/* 0BF0B0 800BE4B0 860F0008 */ lh $t7, 8($s0) +/* 0BF0B4 800BE4B4 A60A000E */ sh $t2, 0xe($s0) +/* 0BF0B8 800BE4B8 8602000E */ lh $v0, 0xe($s0) +/* 0BF0BC 800BE4BC A6050004 */ sh $a1, 4($s0) +/* 0BF0C0 800BE4C0 01E2C023 */ subu $t8, $t7, $v0 +/* 0BF0C4 800BE4C4 44982000 */ mtc1 $t8, $f4 +/* 0BF0C8 800BE4C8 A61E000A */ sh $fp, 0xa($s0) +/* 0BF0CC 800BE4CC 468022A0 */ cvt.s.w $f10, $f4 +/* 0BF0D0 800BE4D0 A61E0010 */ sh $fp, 0x10($s0) +/* 0BF0D4 800BE4D4 C7A800C8 */ lwc1 $f8, 0xc8($sp) +/* 0BF0D8 800BE4D8 01C25823 */ subu $t3, $t6, $v0 +/* 0BF0DC 800BE4DC 448B3000 */ mtc1 $t3, $f6 +/* 0BF0E0 800BE4E0 46085502 */ mul.s $f20, $f10, $f8 +/* 0BF0E4 800BE4E4 C7AA00CC */ lwc1 $f10, 0xcc($sp) +/* 0BF0E8 800BE4E8 A7A50332 */ sh $a1, 0x332($sp) +/* 0BF0EC 800BE4EC AFA40074 */ sw $a0, 0x74($sp) +/* 0BF0F0 800BE4F0 46803120 */ cvt.s.w $f4, $f6 +/* 0BF0F4 800BE4F4 AFA30078 */ sw $v1, 0x78($sp) +/* 0BF0F8 800BE4F8 460A2582 */ mul.s $f22, $f4, $f10 +/* 0BF0FC 800BE4FC 00000000 */ nop +/* 0BF100 800BE500 4614A202 */ mul.s $f8, $f20, $f20 +/* 0BF104 800BE504 00000000 */ nop +/* 0BF108 800BE508 4616B102 */ mul.s $f4, $f22, $f22 +/* 0BF10C 800BE50C 461C4180 */ add.s $f6, $f8, $f28 +/* 0BF110 800BE510 0C0326B4 */ jal sqrtf +/* 0BF114 800BE514 46043300 */ add.s $f12, $f6, $f4 +/* 0BF118 800BE518 44805000 */ mtc1 $zero, $f10 +/* 0BF11C 800BE51C 8FA30078 */ lw $v1, 0x78($sp) +/* 0BF120 800BE520 4600503C */ c.lt.s $f10, $f0 +/* 0BF124 800BE524 8FA40074 */ lw $a0, 0x74($sp) +/* 0BF128 800BE528 87A50332 */ lh $a1, 0x332($sp) +/* 0BF12C 800BE52C 4500001F */ bc1f .L800BE5AC +/* 0BF130 800BE530 00129C00 */ sll $s3, $s2, 0x10 +/* 0BF134 800BE534 00000000 */ nop +/* 0BF138 800BE538 4600F603 */ div.s $f24, $f30, $f0 +/* 0BF13C 800BE53C 8FB90378 */ lw $t9, 0x378($sp) +/* 0BF140 800BE540 00176100 */ sll $t4, $s7, 4 +/* 0BF144 800BE544 032C1021 */ addu $v0, $t9, $t4 +/* 0BF148 800BE548 26F70001 */ addiu $s7, $s7, 1 +/* 0BF14C 800BE54C 26100014 */ addiu $s0, $s0, 0x14 +/* 0BF150 800BE550 4618A082 */ mul.s $f2, $f20, $f24 +/* 0BF154 800BE554 00000000 */ nop +/* 0BF158 800BE558 4618D382 */ mul.s $f14, $f26, $f24 +/* 0BF15C 800BE55C E4420000 */ swc1 $f2, ($v0) +/* 0BF160 800BE560 4618B302 */ mul.s $f12, $f22, $f24 +/* 0BF164 800BE564 E44E0004 */ swc1 $f14, 4($v0) +/* 0BF168 800BE568 E44C0008 */ swc1 $f12, 8($v0) +/* 0BF16C 800BE56C 860DFFEC */ lh $t5, -0x14($s0) +/* 0BF170 800BE570 860AFFEE */ lh $t2, -0x12($s0) +/* 0BF174 800BE574 448D4000 */ mtc1 $t5, $f8 +/* 0BF178 800BE578 448A5000 */ mtc1 $t2, $f10 +/* 0BF17C 800BE57C 468041A0 */ cvt.s.w $f6, $f8 +/* 0BF180 800BE580 860FFFF0 */ lh $t7, -0x10($s0) +/* 0BF184 800BE584 46023102 */ mul.s $f4, $f6, $f2 +/* 0BF188 800BE588 46805220 */ cvt.s.w $f8, $f10 +/* 0BF18C 800BE58C 460E4182 */ mul.s $f6, $f8, $f14 +/* 0BF190 800BE590 448F4000 */ mtc1 $t7, $f8 +/* 0BF194 800BE594 46062280 */ add.s $f10, $f4, $f6 +/* 0BF198 800BE598 46804120 */ cvt.s.w $f4, $f8 +/* 0BF19C 800BE59C 46046182 */ mul.s $f6, $f12, $f4 +/* 0BF1A0 800BE5A0 460A3200 */ add.s $f8, $f6, $f10 +/* 0BF1A4 800BE5A4 46004107 */ neg.s $f4, $f8 +/* 0BF1A8 800BE5A8 E444000C */ swc1 $f4, 0xc($v0) +.L800BE5AC: +/* 0BF1AC 800BE5AC 8FAE0358 */ lw $t6, 0x358($sp) +/* 0BF1B0 800BE5B0 0013C403 */ sra $t8, $s3, 0x10 +/* 0BF1B4 800BE5B4 02C08825 */ move $s1, $s6 +/* 0BF1B8 800BE5B8 26940002 */ addiu $s4, $s4, 2 +/* 0BF1BC 800BE5BC 26B50002 */ addiu $s5, $s5, 2 +/* 0BF1C0 800BE5C0 24630002 */ addiu $v1, $v1, 2 +/* 0BF1C4 800BE5C4 24840002 */ addiu $a0, $a0, 2 +/* 0BF1C8 800BE5C8 16CEFF54 */ bne $s6, $t6, .L800BE31C +/* 0BF1CC 800BE5CC 03009825 */ move $s3, $t8 +/* 0BF1D0 800BE5D0 8FA200A4 */ lw $v0, 0xa4($sp) +/* 0BF1D4 800BE5D4 00000000 */ nop +.L800BE5D8: +/* 0BF1D8 800BE5D8 8FB90354 */ lw $t9, 0x354($sp) +/* 0BF1DC 800BE5DC 001E2C00 */ sll $a1, $fp, 0x10 +/* 0BF1E0 800BE5E0 00055C03 */ sra $t3, $a1, 0x10 +/* 0BF1E4 800BE5E4 0040B025 */ move $s6, $v0 +/* 0BF1E8 800BE5E8 1459FF0B */ bne $v0, $t9, .L800BE218 +/* 0BF1EC 800BE5EC 01602825 */ move $a1, $t3 +.L800BE5F0: +/* 0BF1F0 800BE5F0 8FBF006C */ lw $ra, 0x6c($sp) +/* 0BF1F4 800BE5F4 02E01025 */ move $v0, $s7 +/* 0BF1F8 800BE5F8 8FB70064 */ lw $s7, 0x64($sp) +/* 0BF1FC 800BE5FC C7B50018 */ lwc1 $f21, 0x18($sp) +/* 0BF200 800BE600 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 0BF204 800BE604 C7B70020 */ lwc1 $f23, 0x20($sp) +/* 0BF208 800BE608 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 0BF20C 800BE60C C7B90028 */ lwc1 $f25, 0x28($sp) +/* 0BF210 800BE610 C7B8002C */ lwc1 $f24, 0x2c($sp) +/* 0BF214 800BE614 C7BB0030 */ lwc1 $f27, 0x30($sp) +/* 0BF218 800BE618 C7BA0034 */ lwc1 $f26, 0x34($sp) +/* 0BF21C 800BE61C C7BD0038 */ lwc1 $f29, 0x38($sp) +/* 0BF220 800BE620 C7BC003C */ lwc1 $f28, 0x3c($sp) +/* 0BF224 800BE624 C7BF0040 */ lwc1 $f31, 0x40($sp) +/* 0BF228 800BE628 C7BE0044 */ lwc1 $f30, 0x44($sp) +/* 0BF22C 800BE62C 8FB00048 */ lw $s0, 0x48($sp) +/* 0BF230 800BE630 8FB1004C */ lw $s1, 0x4c($sp) +/* 0BF234 800BE634 8FB20050 */ lw $s2, 0x50($sp) +/* 0BF238 800BE638 8FB30054 */ lw $s3, 0x54($sp) +/* 0BF23C 800BE63C 8FB40058 */ lw $s4, 0x58($sp) +/* 0BF240 800BE640 8FB5005C */ lw $s5, 0x5c($sp) +/* 0BF244 800BE644 8FB60060 */ lw $s6, 0x60($sp) +/* 0BF248 800BE648 8FBE0068 */ lw $fp, 0x68($sp) +/* 0BF24C 800BE64C 03E00008 */ jr $ra +/* 0BF250 800BE650 27BD0370 */ addiu $sp, $sp, 0x370 + diff --git a/asm/non_matchings/unknown_0B8920/func_800BE654.s b/asm/non_matchings/unknown_0B8920/func_800BE654.s new file mode 100644 index 00000000..7a86d7bf --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800BE654.s @@ -0,0 +1,576 @@ +glabel func_800BE654 +/* 0BF254 800BE654 27BDFF18 */ addiu $sp, $sp, -0xe8 +/* 0BF258 800BE658 3C0E800E */ lui $t6, %hi(D_800E3040) # $t6, 0x800e +/* 0BF25C 800BE65C 8DCE3040 */ lw $t6, %lo(D_800E3040)($t6) +/* 0BF260 800BE660 E7B80024 */ swc1 $f24, 0x24($sp) +/* 0BF264 800BE664 4486C000 */ mtc1 $a2, $f24 +/* 0BF268 800BE668 00803025 */ move $a2, $a0 +/* 0BF26C 800BE66C AFBF002C */ sw $ra, 0x2c($sp) +/* 0BF270 800BE670 E7B90020 */ swc1 $f25, 0x20($sp) +/* 0BF274 800BE674 E7B70018 */ swc1 $f23, 0x18($sp) +/* 0BF278 800BE678 E7B6001C */ swc1 $f22, 0x1c($sp) +/* 0BF27C 800BE67C E7B50010 */ swc1 $f21, 0x10($sp) +/* 0BF280 800BE680 E7B40014 */ swc1 $f20, 0x14($sp) +/* 0BF284 800BE684 AFA400E8 */ sw $a0, 0xe8($sp) +/* 0BF288 800BE688 AFA500EC */ sw $a1, 0xec($sp) +/* 0BF28C 800BE68C 24080080 */ li $t0, 128 +/* 0BF290 800BE690 11C001FE */ beqz $t6, .L800BEE8C +/* 0BF294 800BE694 00005025 */ move $t2, $zero +/* 0BF298 800BE698 048001FC */ bltz $a0, .L800BEE8C +/* 0BF29C 800BE69C 3C0F8013 */ lui $t7, %hi(D_8012A0E0) # $t7, 0x8013 +/* 0BF2A0 800BE6A0 8DEFA0E0 */ lw $t7, %lo(D_8012A0E0)($t7) +/* 0BF2A4 800BE6A4 3C0500FF */ li $a1, 0x00FF0000 # 0.000000 +/* 0BF2A8 800BE6A8 008F082A */ slt $at, $a0, $t7 +/* 0BF2AC 800BE6AC 102001F7 */ beqz $at, .L800BEE8C +/* 0BF2B0 800BE6B0 3C048013 */ lui $a0, %hi(D_80129FE8) # $a0, 0x8013 +/* 0BF2B4 800BE6B4 8C849FE8 */ lw $a0, %lo(D_80129FE8)($a0) +/* 0BF2B8 800BE6B8 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff +/* 0BF2BC 800BE6BC 0004C043 */ sra $t8, $a0, 1 +/* 0BF2C0 800BE6C0 2704000E */ addiu $a0, $t8, 0xe +/* 0BF2C4 800BE6C4 AFA600E8 */ sw $a2, 0xe8($sp) +/* 0BF2C8 800BE6C8 0C01C327 */ jal func_80070C9C +/* 0BF2CC 800BE6CC A7A800A6 */ sh $t0, 0xa6($sp) +/* 0BF2D0 800BE6D0 8FBF00E8 */ lw $ra, 0xe8($sp) +/* 0BF2D4 800BE6D4 3C0D800E */ lui $t5, %hi(D_800E30D8) # $t5, 0x800e +/* 0BF2D8 800BE6D8 25AD30D8 */ addiu $t5, %lo(D_800E30D8) # addiu $t5, $t5, 0x30d8 +/* 0BF2DC 800BE6DC 001F48C0 */ sll $t1, $ra, 3 +/* 0BF2E0 800BE6E0 8DB90000 */ lw $t9, ($t5) +/* 0BF2E4 800BE6E4 013F4823 */ subu $t1, $t1, $ra +/* 0BF2E8 800BE6E8 00094880 */ sll $t1, $t1, 2 +/* 0BF2EC 800BE6EC 03297021 */ addu $t6, $t9, $t1 +/* 0BF2F0 800BE6F0 85CF0006 */ lh $t7, 6($t6) +/* 0BF2F4 800BE6F4 87A800A6 */ lh $t0, 0xa6($sp) +/* 0BF2F8 800BE6F8 24180001 */ li $t8, 1 +/* 0BF2FC 800BE6FC A0400002 */ sb $zero, 2($v0) +/* 0BF300 800BE700 A0580003 */ sb $t8, 3($v0) +/* 0BF304 800BE704 A4400004 */ sh $zero, 4($v0) +/* 0BF308 800BE708 3C198013 */ lui $t9, %hi(D_80129FE8) # $t9, 0x8013 +/* 0BF30C 800BE70C A44F0000 */ sh $t7, ($v0) +/* 0BF310 800BE710 8F399FE8 */ lw $t9, %lo(D_80129FE8)($t9) +/* 0BF314 800BE714 3C0E800E */ lui $t6, %hi(D_800E317C) # $t6, 0x800e +/* 0BF318 800BE718 A4590006 */ sh $t9, 6($v0) +/* 0BF31C 800BE71C 8DCE317C */ lw $t6, %lo(D_800E317C)($t6) +/* 0BF320 800BE720 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0BF324 800BE724 03EE0019 */ multu $ra, $t6 +/* 0BF328 800BE728 44816000 */ mtc1 $at, $f12 +/* 0BF32C 800BE72C 3C018013 */ lui $at, %hi(D_8012A0BC) # $at, 0x8013 +/* 0BF330 800BE730 C434A0BC */ lwc1 $f20, %lo(D_8012A0BC)($at) +/* 0BF334 800BE734 3C018013 */ lui $at, %hi(D_8012A0B8) # $at, 0x8013 +/* 0BF338 800BE738 C436A0B8 */ lwc1 $f22, %lo(D_8012A0B8)($at) +/* 0BF33C 800BE73C 3C018013 */ lui $at, %hi(D_8012A00C) # $at, 0x8013 +/* 0BF340 800BE740 C424A00C */ lwc1 $f4, %lo(D_8012A00C)($at) +/* 0BF344 800BE744 3C0142FE */ li $at, 0x42FE0000 # 127.000000 +/* 0BF348 800BE748 3C188013 */ lui $t8, %hi(D_80129FF0) # $t8, 0x8013 +/* 0BF34C 800BE74C 44814000 */ mtc1 $at, $f8 +/* 0BF350 800BE750 8F189FF0 */ lw $t8, %lo(D_80129FF0)($t8) +/* 0BF354 800BE754 46046181 */ sub.s $f6, $f12, $f4 +/* 0BF358 800BE758 00007812 */ mflo $t7 +/* 0BF35C 800BE75C 00405025 */ move $t2, $v0 +/* 0BF360 800BE760 AFAF00B0 */ sw $t7, 0xb0($sp) +/* 0BF364 800BE764 1300000B */ beqz $t8, .L800BE794 +/* 0BF368 800BE768 46083083 */ div.s $f2, $f6, $f8 +/* 0BF36C 800BE76C 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 0BF370 800BE770 44810000 */ mtc1 $at, $f0 +/* 0BF374 800BE774 3C0C8013 */ lui $t4, %hi(D_80129FC8) # $t4, 0x8013 +/* 0BF378 800BE778 4600A502 */ mul.s $f20, $f20, $f0 +/* 0BF37C 800BE77C 8D8C9FC8 */ lw $t4, %lo(D_80129FC8)($t4) +/* 0BF380 800BE780 00000000 */ nop +/* 0BF384 800BE784 000CC840 */ sll $t9, $t4, 1 +/* 0BF388 800BE788 4600B582 */ mul.s $f22, $f22, $f0 +/* 0BF38C 800BE78C 10000005 */ b .L800BE7A4 +/* 0BF390 800BE790 272C0001 */ addiu $t4, $t9, 1 +.L800BE794: +/* 0BF394 800BE794 3C0C8013 */ lui $t4, %hi(D_80129FC8) # $t4, 0x8013 +/* 0BF398 800BE798 8D8C9FC8 */ lw $t4, %lo(D_80129FC8)($t4) +/* 0BF39C 800BE79C 00000000 */ nop +/* 0BF3A0 800BE7A0 258C0001 */ addiu $t4, $t4, 1 +.L800BE7A4: +/* 0BF3A4 800BE7A4 8DAE0000 */ lw $t6, ($t5) +/* 0BF3A8 800BE7A8 C7B000EC */ lwc1 $f16, 0xec($sp) +/* 0BF3AC 800BE7AC 01C93821 */ addu $a3, $t6, $t1 +/* 0BF3B0 800BE7B0 84EF0004 */ lh $t7, 4($a3) +/* 0BF3B4 800BE7B4 44807000 */ mtc1 $zero, $f14 +/* 0BF3B8 800BE7B8 448F5000 */ mtc1 $t7, $f10 +/* 0BF3BC 800BE7BC 3C018013 */ lui $at, %hi(D_8012A0A0) # $at, 0x8013 +/* 0BF3C0 800BE7C0 46805120 */ cvt.s.w $f4, $f10 +/* 0BF3C4 800BE7C4 46048401 */ sub.s $f16, $f16, $f4 +/* 0BF3C8 800BE7C8 460E803C */ c.lt.s $f16, $f14 +/* 0BF3CC 800BE7CC 00000000 */ nop +/* 0BF3D0 800BE7D0 45000003 */ bc1f .L800BE7E0 +/* 0BF3D4 800BE7D4 00000000 */ nop +/* 0BF3D8 800BE7D8 1000000D */ b .L800BE810 +/* 0BF3DC 800BE7DC 46007406 */ mov.s $f16, $f14 +.L800BE7E0: +/* 0BF3E0 800BE7E0 C420A0A0 */ lwc1 $f0, %lo(D_8012A0A0)($at) +/* 0BF3E4 800BE7E4 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0BF3E8 800BE7E8 4610003E */ c.le.s $f0, $f16 +/* 0BF3EC 800BE7EC E7B000EC */ swc1 $f16, 0xec($sp) +/* 0BF3F0 800BE7F0 45000007 */ bc1f .L800BE810 +/* 0BF3F4 800BE7F4 00000000 */ nop +/* 0BF3F8 800BE7F8 44813000 */ mtc1 $at, $f6 +/* 0BF3FC 800BE7FC 00000000 */ nop +/* 0BF400 800BE800 46060201 */ sub.s $f8, $f0, $f6 +/* 0BF404 800BE804 E7A800EC */ swc1 $f8, 0xec($sp) +/* 0BF408 800BE808 C7B000EC */ lwc1 $f16, 0xec($sp) +/* 0BF40C 800BE80C 00000000 */ nop +.L800BE810: +/* 0BF410 800BE810 84F80008 */ lh $t8, 8($a3) +/* 0BF414 800BE814 3C018013 */ lui $at, %hi(D_8012A0A4) # $at, 0x8013 +/* 0BF418 800BE818 44985000 */ mtc1 $t8, $f10 +/* 0BF41C 800BE81C 46168203 */ div.s $f8, $f16, $f22 +/* 0BF420 800BE820 46805120 */ cvt.s.w $f4, $f10 +/* 0BF424 800BE824 4604C601 */ sub.s $f24, $f24, $f4 +/* 0BF428 800BE828 460EC03C */ c.lt.s $f24, $f14 +/* 0BF42C 800BE82C 00000000 */ nop +/* 0BF430 800BE830 45000003 */ bc1f .L800BE840 +/* 0BF434 800BE834 00000000 */ nop +/* 0BF438 800BE838 1000000A */ b .L800BE864 +/* 0BF43C 800BE83C 46007606 */ mov.s $f24, $f14 +.L800BE840: +/* 0BF440 800BE840 C420A0A4 */ lwc1 $f0, %lo(D_8012A0A4)($at) +/* 0BF444 800BE844 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0BF448 800BE848 4618003E */ c.le.s $f0, $f24 +/* 0BF44C 800BE84C 00000000 */ nop +/* 0BF450 800BE850 45000004 */ bc1f .L800BE864 +/* 0BF454 800BE854 00000000 */ nop +/* 0BF458 800BE858 44813000 */ mtc1 $at, $f6 +/* 0BF45C 800BE85C 00000000 */ nop +/* 0BF460 800BE860 46060601 */ sub.s $f24, $f0, $f6 +.L800BE864: +/* 0BF464 800BE864 4459F800 */ cfc1 $t9, $31 +/* 0BF468 800BE868 3C038013 */ lui $v1, %hi(D_80129FCC) # $v1, 0x8013 +/* 0BF46C 800BE86C 37210003 */ ori $at, $t9, 3 +/* 0BF470 800BE870 38210002 */ xori $at, $at, 2 +/* 0BF474 800BE874 44C1F800 */ ctc1 $at, $31 +/* 0BF478 800BE878 00000000 */ nop +/* 0BF47C 800BE87C 460042A4 */ cvt.w.s $f10, $f8 +/* 0BF480 800BE880 44D9F800 */ ctc1 $t9, $31 +/* 0BF484 800BE884 44055000 */ mfc1 $a1, $f10 +/* 0BF488 800BE888 4614C103 */ div.s $f4, $f24, $f20 +/* 0BF48C 800BE88C 44854000 */ mtc1 $a1, $f8 +/* 0BF490 800BE890 AFA500C4 */ sw $a1, 0xc4($sp) +/* 0BF494 800BE894 A45F000C */ sh $ra, 0xc($v0) +/* 0BF498 800BE898 A4450008 */ sh $a1, 8($v0) +/* 0BF49C 800BE89C 27BF0050 */ addiu $ra, $sp, 0x50 +/* 0BF4A0 800BE8A0 444EF800 */ cfc1 $t6, $31 +/* 0BF4A4 800BE8A4 00000000 */ nop +/* 0BF4A8 800BE8A8 35C10003 */ ori $at, $t6, 3 +/* 0BF4AC 800BE8AC 38210002 */ xori $at, $at, 2 +/* 0BF4B0 800BE8B0 44C1F800 */ ctc1 $at, $31 +/* 0BF4B4 800BE8B4 00000000 */ nop +/* 0BF4B8 800BE8B8 460021A4 */ cvt.w.s $f6, $f4 +/* 0BF4BC 800BE8BC 440B3000 */ mfc1 $t3, $f6 +/* 0BF4C0 800BE8C0 44CEF800 */ ctc1 $t6, $31 +/* 0BF4C4 800BE8C4 448B3000 */ mtc1 $t3, $f6 +/* 0BF4C8 800BE8C8 468042A0 */ cvt.s.w $f10, $f8 +/* 0BF4CC 800BE8CC A44B000A */ sh $t3, 0xa($v0) +/* 0BF4D0 800BE8D0 8DAF0000 */ lw $t7, ($t5) +/* 0BF4D4 800BE8D4 46165102 */ mul.s $f4, $f10, $f22 +/* 0BF4D8 800BE8D8 01E93821 */ addu $a3, $t7, $t1 +/* 0BF4DC 800BE8DC 84F80012 */ lh $t8, 0x12($a3) +/* 0BF4E0 800BE8E0 8FB900C4 */ lw $t9, 0xc4($sp) +/* 0BF4E4 800BE8E4 46803220 */ cvt.s.w $f8, $f6 +/* 0BF4E8 800BE8E8 8C639FCC */ lw $v1, %lo(D_80129FCC)($v1) +/* 0BF4EC 800BE8EC 03192021 */ addu $a0, $t8, $t9 +/* 0BF4F0 800BE8F0 46144282 */ mul.s $f10, $f8, $f20 +/* 0BF4F4 800BE8F4 0083082A */ slt $at, $a0, $v1 +/* 0BF4F8 800BE8F8 27AD0080 */ addiu $t5, $sp, 0x80 +/* 0BF4FC 800BE8FC 46048401 */ sub.s $f16, $f16, $f4 +/* 0BF500 800BE900 14200005 */ bnez $at, .L800BE918 +/* 0BF504 800BE904 460AC601 */ sub.s $f24, $f24, $f10 +.L800BE908: +/* 0BF508 800BE908 00832023 */ subu $a0, $a0, $v1 +/* 0BF50C 800BE90C 0083082A */ slt $at, $a0, $v1 +/* 0BF510 800BE910 1020FFFD */ beqz $at, .L800BE908 +/* 0BF514 800BE914 00000000 */ nop +.L800BE918: +/* 0BF518 800BE918 84EE0010 */ lh $t6, 0x10($a3) +/* 0BF51C 800BE91C 24860001 */ addiu $a2, $a0, 1 +/* 0BF520 800BE920 01CB1021 */ addu $v0, $t6, $t3 +/* 0BF524 800BE924 0043082A */ slt $at, $v0, $v1 +/* 0BF528 800BE928 14200005 */ bnez $at, .L800BE940 +/* 0BF52C 800BE92C 00000000 */ nop +.L800BE930: +/* 0BF530 800BE930 00431023 */ subu $v0, $v0, $v1 +/* 0BF534 800BE934 0043082A */ slt $at, $v0, $v1 +/* 0BF538 800BE938 1020FFFD */ beqz $at, .L800BE930 +/* 0BF53C 800BE93C 00000000 */ nop +.L800BE940: +/* 0BF540 800BE940 4614C032 */ c.eq.s $f24, $f20 +/* 0BF544 800BE944 00004825 */ move $t1, $zero +/* 0BF548 800BE948 4501000A */ bc1t .L800BE974 +/* 0BF54C 800BE94C 00C3082A */ slt $at, $a2, $v1 +/* 0BF550 800BE950 4618A101 */ sub.s $f4, $f20, $f24 +/* 0BF554 800BE954 00000000 */ nop +/* 0BF558 800BE958 46142183 */ div.s $f6, $f4, $f20 +/* 0BF55C 800BE95C 46163202 */ mul.s $f8, $f6, $f22 +/* 0BF560 800BE960 4608803C */ c.lt.s $f16, $f8 +/* 0BF564 800BE964 00000000 */ nop +/* 0BF568 800BE968 45000002 */ bc1f .L800BE974 +/* 0BF56C 800BE96C 00000000 */ nop +/* 0BF570 800BE970 24090001 */ li $t1, 1 +.L800BE974: +/* 0BF574 800BE974 11200025 */ beqz $t1, .L800BEA0C +/* 0BF578 800BE978 24450001 */ addiu $a1, $v0, 1 +/* 0BF57C 800BE97C 00430019 */ multu $v0, $v1 +/* 0BF580 800BE980 24450001 */ addiu $a1, $v0, 1 +/* 0BF584 800BE984 00A3082A */ slt $at, $a1, $v1 +/* 0BF588 800BE988 24990001 */ addiu $t9, $a0, 1 +/* 0BF58C 800BE98C 00003012 */ mflo $a2 +/* 0BF590 800BE990 00C43821 */ addu $a3, $a2, $a0 +/* 0BF594 800BE994 14200003 */ bnez $at, .L800BE9A4 +/* 0BF598 800BE998 AFA70080 */ sw $a3, 0x80($sp) +/* 0BF59C 800BE99C 10000005 */ b .L800BE9B4 +/* 0BF5A0 800BE9A0 AFA40084 */ sw $a0, 0x84($sp) +.L800BE9A4: +/* 0BF5A4 800BE9A4 00A30019 */ multu $a1, $v1 +/* 0BF5A8 800BE9A8 00007812 */ mflo $t7 +/* 0BF5AC 800BE9AC 01E4C021 */ addu $t8, $t7, $a0 +/* 0BF5B0 800BE9B0 AFB80084 */ sw $t8, 0x84($sp) +.L800BE9B4: +/* 0BF5B4 800BE9B4 0323082A */ slt $at, $t9, $v1 +/* 0BF5B8 800BE9B8 14200003 */ bnez $at, .L800BE9C8 +/* 0BF5BC 800BE9BC 24E20001 */ addiu $v0, $a3, 1 +/* 0BF5C0 800BE9C0 10000002 */ b .L800BE9CC +/* 0BF5C4 800BE9C4 AFA60088 */ sw $a2, 0x88($sp) +.L800BE9C8: +/* 0BF5C8 800BE9C8 AFA20088 */ sw $v0, 0x88($sp) +.L800BE9CC: +/* 0BF5CC 800BE9CC 016C0019 */ multu $t3, $t4 +/* 0BF5D0 800BE9D0 25790001 */ addiu $t9, $t3, 1 +/* 0BF5D4 800BE9D4 8FAE00B0 */ lw $t6, 0xb0($sp) +/* 0BF5D8 800BE9D8 8FAF00C4 */ lw $t7, 0xc4($sp) +/* 0BF5DC 800BE9DC E7AE00E4 */ swc1 $f14, 0xe4($sp) +/* 0BF5E0 800BE9E0 01CF1021 */ addu $v0, $t6, $t7 +/* 0BF5E4 800BE9E4 0000C012 */ mflo $t8 +/* 0BF5E8 800BE9E8 00581821 */ addu $v1, $v0, $t8 +/* 0BF5EC 800BE9EC 24780001 */ addiu $t8, $v1, 1 +/* 0BF5F0 800BE9F0 032C0019 */ multu $t9, $t4 +/* 0BF5F4 800BE9F4 AFA3005C */ sw $v1, 0x5c($sp) +/* 0BF5F8 800BE9F8 AFB80064 */ sw $t8, 0x64($sp) +/* 0BF5FC 800BE9FC 00007012 */ mflo $t6 +/* 0BF600 800BEA00 004E7821 */ addu $t7, $v0, $t6 +/* 0BF604 800BEA04 10000032 */ b .L800BEAD0 +/* 0BF608 800BEA08 AFAF0060 */ sw $t7, 0x60($sp) +.L800BEA0C: +/* 0BF60C 800BEA0C 14200006 */ bnez $at, .L800BEA28 +/* 0BF610 800BEA10 00000000 */ nop +/* 0BF614 800BEA14 00430019 */ multu $v0, $v1 +/* 0BF618 800BEA18 0000C812 */ mflo $t9 +/* 0BF61C 800BEA1C AFB90080 */ sw $t9, 0x80($sp) +/* 0BF620 800BEA20 10000007 */ b .L800BEA40 +/* 0BF624 800BEA24 00A3082A */ slt $at, $a1, $v1 +.L800BEA28: +/* 0BF628 800BEA28 00430019 */ multu $v0, $v1 +/* 0BF62C 800BEA2C 00007012 */ mflo $t6 +/* 0BF630 800BEA30 008E7821 */ addu $t7, $a0, $t6 +/* 0BF634 800BEA34 25F80001 */ addiu $t8, $t7, 1 +/* 0BF638 800BEA38 AFB80080 */ sw $t8, 0x80($sp) +/* 0BF63C 800BEA3C 00A3082A */ slt $at, $a1, $v1 +.L800BEA40: +/* 0BF640 800BEA40 14200003 */ bnez $at, .L800BEA50 +/* 0BF644 800BEA44 00C01025 */ move $v0, $a2 +/* 0BF648 800BEA48 10000005 */ b .L800BEA60 +/* 0BF64C 800BEA4C AFA40084 */ sw $a0, 0x84($sp) +.L800BEA50: +/* 0BF650 800BEA50 00A30019 */ multu $a1, $v1 +/* 0BF654 800BEA54 0000C812 */ mflo $t9 +/* 0BF658 800BEA58 03247021 */ addu $t6, $t9, $a0 +/* 0BF65C 800BEA5C AFAE0084 */ sw $t6, 0x84($sp) +.L800BEA60: +/* 0BF660 800BEA60 00C3082A */ slt $at, $a2, $v1 +/* 0BF664 800BEA64 14200003 */ bnez $at, .L800BEA74 +/* 0BF668 800BEA68 00000000 */ nop +/* 0BF66C 800BEA6C 10000001 */ b .L800BEA74 +/* 0BF670 800BEA70 00001025 */ move $v0, $zero +.L800BEA74: +/* 0BF674 800BEA74 00A3082A */ slt $at, $a1, $v1 +/* 0BF678 800BEA78 10200005 */ beqz $at, .L800BEA90 +/* 0BF67C 800BEA7C AFA20088 */ sw $v0, 0x88($sp) +/* 0BF680 800BEA80 00A30019 */ multu $a1, $v1 +/* 0BF684 800BEA84 00007812 */ mflo $t7 +/* 0BF688 800BEA88 004F1021 */ addu $v0, $v0, $t7 +/* 0BF68C 800BEA8C AFA20088 */ sw $v0, 0x88($sp) +.L800BEA90: +/* 0BF690 800BEA90 016C0019 */ multu $t3, $t4 +/* 0BF694 800BEA94 8FB800C4 */ lw $t8, 0xc4($sp) +/* 0BF698 800BEA98 8FB900B0 */ lw $t9, 0xb0($sp) +/* 0BF69C 800BEA9C E7B600E4 */ swc1 $f22, 0xe4($sp) +/* 0BF6A0 800BEAA0 03191021 */ addu $v0, $t8, $t9 +/* 0BF6A4 800BEAA4 25790001 */ addiu $t9, $t3, 1 +/* 0BF6A8 800BEAA8 00007012 */ mflo $t6 +/* 0BF6AC 800BEAAC 004E7821 */ addu $t7, $v0, $t6 +/* 0BF6B0 800BEAB0 25F80001 */ addiu $t8, $t7, 1 +/* 0BF6B4 800BEAB4 032C0019 */ multu $t9, $t4 +/* 0BF6B8 800BEAB8 AFB8005C */ sw $t8, 0x5c($sp) +/* 0BF6BC 800BEABC 00007012 */ mflo $t6 +/* 0BF6C0 800BEAC0 004E1821 */ addu $v1, $v0, $t6 +/* 0BF6C4 800BEAC4 246F0001 */ addiu $t7, $v1, 1 +/* 0BF6C8 800BEAC8 AFA30060 */ sw $v1, 0x60($sp) +/* 0BF6CC 800BEACC AFAF0064 */ sw $t7, 0x64($sp) +.L800BEAD0: +/* 0BF6D0 800BEAD0 3C0B800E */ lui $t3, %hi(D_800E3044) # $t3, 0x800e +/* 0BF6D4 800BEAD4 3C0C800E */ lui $t4, %hi(D_800E3178) # $t4, 0x800e +/* 0BF6D8 800BEAD8 AFA900AC */ sw $t1, 0xac($sp) +/* 0BF6DC 800BEADC 8D8C3178 */ lw $t4, %lo(D_800E3178)($t4) +/* 0BF6E0 800BEAE0 8D6B3044 */ lw $t3, %lo(D_800E3044)($t3) +/* 0BF6E4 800BEAE4 27A90068 */ addiu $t1, $sp, 0x68 +/* 0BF6E8 800BEAE8 00003825 */ move $a3, $zero +/* 0BF6EC 800BEAEC 00071080 */ sll $v0, $a3, 2 +.L800BEAF0: +/* 0BF6F0 800BEAF0 01A27021 */ addu $t6, $t5, $v0 +/* 0BF6F4 800BEAF4 8DCF0000 */ lw $t7, ($t6) +/* 0BF6F8 800BEAF8 0007C8C0 */ sll $t9, $a3, 3 +/* 0BF6FC 800BEAFC 000FC080 */ sll $t8, $t7, 2 +/* 0BF700 800BEB00 01782021 */ addu $a0, $t3, $t8 +/* 0BF704 800BEB04 01391821 */ addu $v1, $t1, $t9 +/* 0BF708 800BEB08 84990000 */ lh $t9, ($a0) +/* 0BF70C 800BEB0C 03E22821 */ addu $a1, $ra, $v0 +/* 0BF710 800BEB10 AC790000 */ sw $t9, ($v1) +/* 0BF714 800BEB14 848E0002 */ lh $t6, 2($a0) +/* 0BF718 800BEB18 E4AC0000 */ swc1 $f12, ($a1) +/* 0BF71C 800BEB1C 03A27821 */ addu $t7, $sp, $v0 +/* 0BF720 800BEB20 AC6E0004 */ sw $t6, 4($v1) +/* 0BF724 800BEB24 8DEF005C */ lw $t7, 0x5c($t7) +/* 0BF728 800BEB28 24E70001 */ addiu $a3, $a3, 1 +/* 0BF72C 800BEB2C 01ECC021 */ addu $t8, $t7, $t4 +/* 0BF730 800BEB30 93060000 */ lbu $a2, ($t8) +/* 0BF734 800BEB34 0007CC00 */ sll $t9, $a3, 0x10 +/* 0BF738 800BEB38 28C1007F */ slti $at, $a2, 0x7f +/* 0BF73C 800BEB3C 1020000A */ beqz $at, .L800BEB68 +/* 0BF740 800BEB40 00193C03 */ sra $a3, $t9, 0x10 +/* 0BF744 800BEB44 44862000 */ mtc1 $a2, $f4 +/* 0BF748 800BEB48 3C018013 */ lui $at, %hi(D_8012A00C) # $at, 0x8013 +/* 0BF74C 800BEB4C 468021A0 */ cvt.s.w $f6, $f4 +/* 0BF750 800BEB50 C42AA00C */ lwc1 $f10, %lo(D_8012A00C)($at) +/* 0BF754 800BEB54 46023202 */ mul.s $f8, $f6, $f2 +/* 0BF758 800BEB58 C4A60000 */ lwc1 $f6, ($a1) +/* 0BF75C 800BEB5C 46085100 */ add.s $f4, $f10, $f8 +/* 0BF760 800BEB60 46043282 */ mul.s $f10, $f6, $f4 +/* 0BF764 800BEB64 E4AA0000 */ swc1 $f10, ($a1) +.L800BEB68: +/* 0BF768 800BEB68 28E10003 */ slti $at, $a3, 3 +/* 0BF76C 800BEB6C 1420FFE0 */ bnez $at, .L800BEAF0 +/* 0BF770 800BEB70 00071080 */ sll $v0, $a3, 2 +/* 0BF774 800BEB74 3C0F8013 */ lui $t7, %hi(D_80129FF0) # $t7, 0x8013 +/* 0BF778 800BEB78 8DEF9FF0 */ lw $t7, %lo(D_80129FF0)($t7) +/* 0BF77C 800BEB7C 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 0BF780 800BEB80 11E00013 */ beqz $t7, .L800BEBD0 +/* 0BF784 800BEB84 3C188013 */ lui $t8, %hi(D_80129FE8) # $t8, 0x8013 +/* 0BF788 800BEB88 C7A80050 */ lwc1 $f8, 0x50($sp) +/* 0BF78C 800BEB8C 44810800 */ mtc1 $at, $f1 +/* 0BF790 800BEB90 44800000 */ mtc1 $zero, $f0 +/* 0BF794 800BEB94 460041A1 */ cvt.d.s $f6, $f8 +/* 0BF798 800BEB98 46203102 */ mul.d $f4, $f6, $f0 +/* 0BF79C 800BEB9C C7A80054 */ lwc1 $f8, 0x54($sp) +/* 0BF7A0 800BEBA0 00000000 */ nop +/* 0BF7A4 800BEBA4 460041A1 */ cvt.d.s $f6, $f8 +/* 0BF7A8 800BEBA8 C7A80058 */ lwc1 $f8, 0x58($sp) +/* 0BF7AC 800BEBAC 462022A0 */ cvt.s.d $f10, $f4 +/* 0BF7B0 800BEBB0 46203102 */ mul.d $f4, $f6, $f0 +/* 0BF7B4 800BEBB4 E7AA0050 */ swc1 $f10, 0x50($sp) +/* 0BF7B8 800BEBB8 460041A1 */ cvt.d.s $f6, $f8 +/* 0BF7BC 800BEBBC 462022A0 */ cvt.s.d $f10, $f4 +/* 0BF7C0 800BEBC0 46203102 */ mul.d $f4, $f6, $f0 +/* 0BF7C4 800BEBC4 E7AA0054 */ swc1 $f10, 0x54($sp) +/* 0BF7C8 800BEBC8 462022A0 */ cvt.s.d $f10, $f4 +/* 0BF7CC 800BEBCC E7AA0058 */ swc1 $f10, 0x58($sp) +.L800BEBD0: +/* 0BF7D0 800BEBD0 8F189FE8 */ lw $t8, %lo(D_80129FE8)($t8) +/* 0BF7D4 800BEBD4 00003825 */ move $a3, $zero +/* 0BF7D8 800BEBD8 0018C843 */ sra $t9, $t8, 1 +/* 0BF7DC 800BEBDC 1B2000AC */ blez $t9, .L800BEE90 +/* 0BF7E0 800BEBE0 8FBF002C */ lw $ra, 0x2c($sp) +/* 0BF7E4 800BEBE4 4616A482 */ mul.s $f18, $f20, $f22 +/* 0BF7E8 800BEBE8 E7B000EC */ swc1 $f16, 0xec($sp) +/* 0BF7EC 800BEBEC 46129202 */ mul.s $f8, $f18, $f18 +/* 0BF7F0 800BEBF0 E7A80040 */ swc1 $f8, 0x40($sp) +/* 0BF7F4 800BEBF4 8FAE0068 */ lw $t6, 0x68($sp) +.L800BEBF8: +/* 0BF7F8 800BEBF8 3C02800E */ lui $v0, %hi(D_800E3040) # $v0, 0x800e +/* 0BF7FC 800BEBFC 8C423040 */ lw $v0, %lo(D_800E3040)($v0) +/* 0BF800 800BEC00 8FB9006C */ lw $t9, 0x6c($sp) +/* 0BF804 800BEC04 000E7880 */ sll $t7, $t6, 2 +/* 0BF808 800BEC08 004FC021 */ addu $t8, $v0, $t7 +/* 0BF80C 800BEC0C 00197080 */ sll $t6, $t9, 2 +/* 0BF810 800BEC10 C7060000 */ lwc1 $f6, ($t8) +/* 0BF814 800BEC14 004E7821 */ addu $t7, $v0, $t6 +/* 0BF818 800BEC18 C5E40000 */ lwc1 $f4, ($t7) +/* 0BF81C 800BEC1C 8FB80070 */ lw $t8, 0x70($sp) +/* 0BF820 800BEC20 8FAF0074 */ lw $t7, 0x74($sp) +/* 0BF824 800BEC24 0018C880 */ sll $t9, $t8, 2 +/* 0BF828 800BEC28 46043280 */ add.s $f10, $f6, $f4 +/* 0BF82C 800BEC2C 00597021 */ addu $t6, $v0, $t9 +/* 0BF830 800BEC30 C7A80050 */ lwc1 $f8, 0x50($sp) +/* 0BF834 800BEC34 000FC080 */ sll $t8, $t7, 2 +/* 0BF838 800BEC38 C5C60000 */ lwc1 $f6, ($t6) +/* 0BF83C 800BEC3C 0058C821 */ addu $t9, $v0, $t8 +/* 0BF840 800BEC40 460A4402 */ mul.s $f16, $f8, $f10 +/* 0BF844 800BEC44 C7240000 */ lwc1 $f4, ($t9) +/* 0BF848 800BEC48 8FAE0078 */ lw $t6, 0x78($sp) +/* 0BF84C 800BEC4C 8FB9007C */ lw $t9, 0x7c($sp) +/* 0BF850 800BEC50 000E7880 */ sll $t7, $t6, 2 +/* 0BF854 800BEC54 C7AA0054 */ lwc1 $f10, 0x54($sp) +/* 0BF858 800BEC58 46043200 */ add.s $f8, $f6, $f4 +/* 0BF85C 800BEC5C 004FC021 */ addu $t8, $v0, $t7 +/* 0BF860 800BEC60 00197080 */ sll $t6, $t9, 2 +/* 0BF864 800BEC64 46085302 */ mul.s $f12, $f10, $f8 +/* 0BF868 800BEC68 004E7821 */ addu $t7, $v0, $t6 +/* 0BF86C 800BEC6C C5E40000 */ lwc1 $f4, ($t7) +/* 0BF870 800BEC70 C7060000 */ lwc1 $f6, ($t8) +/* 0BF874 800BEC74 C7A80058 */ lwc1 $f8, 0x58($sp) +/* 0BF878 800BEC78 46043280 */ add.s $f10, $f6, $f4 +/* 0BF87C 800BEC7C 8FB800AC */ lw $t8, 0xac($sp) +/* 0BF880 800BEC80 460A4002 */ mul.s $f0, $f8, $f10 +/* 0BF884 800BEC84 13000007 */ beqz $t8, .L800BECA4 +/* 0BF888 800BEC88 00000000 */ nop +/* 0BF88C 800BEC8C 46008181 */ sub.s $f6, $f16, $f0 +/* 0BF890 800BEC90 46143082 */ mul.s $f2, $f6, $f20 +/* 0BF894 800BEC94 460C8101 */ sub.s $f4, $f16, $f12 +/* 0BF898 800BEC98 46162382 */ mul.s $f14, $f4, $f22 +/* 0BF89C 800BEC9C 10000006 */ b .L800BECB8 +/* 0BF8A0 800BECA0 00000000 */ nop +.L800BECA4: +/* 0BF8A4 800BECA4 46006201 */ sub.s $f8, $f12, $f0 +/* 0BF8A8 800BECA8 46144082 */ mul.s $f2, $f8, $f20 +/* 0BF8AC 800BECAC 46008281 */ sub.s $f10, $f16, $f0 +/* 0BF8B0 800BECB0 46165382 */ mul.s $f14, $f10, $f22 +/* 0BF8B4 800BECB4 00000000 */ nop +.L800BECB8: +/* 0BF8B8 800BECB8 46021182 */ mul.s $f6, $f2, $f2 +/* 0BF8BC 800BECBC C7A40040 */ lwc1 $f4, 0x40($sp) +/* 0BF8C0 800BECC0 A7A700A2 */ sh $a3, 0xa2($sp) +/* 0BF8C4 800BECC4 A7A800A6 */ sh $t0, 0xa6($sp) +/* 0BF8C8 800BECC8 460E7282 */ mul.s $f10, $f14, $f14 +/* 0BF8CC 800BECCC 46043200 */ add.s $f8, $f6, $f4 +/* 0BF8D0 800BECD0 AFAA004C */ sw $t2, 0x4c($sp) +/* 0BF8D4 800BECD4 E7A2009C */ swc1 $f2, 0x9c($sp) +/* 0BF8D8 800BECD8 460A4300 */ add.s $f12, $f8, $f10 +/* 0BF8DC 800BECDC E7AE0094 */ swc1 $f14, 0x94($sp) +/* 0BF8E0 800BECE0 E7B000E0 */ swc1 $f16, 0xe0($sp) +/* 0BF8E4 800BECE4 0C0326B4 */ jal sqrtf +/* 0BF8E8 800BECE8 E7B20044 */ swc1 $f18, 0x44($sp) +/* 0BF8EC 800BECEC C7A2009C */ lwc1 $f2, 0x9c($sp) +/* 0BF8F0 800BECF0 C7AE0094 */ lwc1 $f14, 0x94($sp) +/* 0BF8F4 800BECF4 46001083 */ div.s $f2, $f2, $f0 +/* 0BF8F8 800BECF8 C7B20044 */ lwc1 $f18, 0x44($sp) +/* 0BF8FC 800BECFC C7A600EC */ lwc1 $f6, 0xec($sp) +/* 0BF900 800BED00 C7B000E0 */ lwc1 $f16, 0xe0($sp) +/* 0BF904 800BED04 3C014180 */ li $at, 0x41800000 # 16.000000 +/* 0BF908 800BED08 87A800A6 */ lh $t0, 0xa6($sp) +/* 0BF90C 800BED0C 87A700A2 */ lh $a3, 0xa2($sp) +/* 0BF910 800BED10 8FAA004C */ lw $t2, 0x4c($sp) +/* 0BF914 800BED14 27A90068 */ addiu $t1, $sp, 0x68 +/* 0BF918 800BED18 00001825 */ move $v1, $zero +/* 0BF91C 800BED1C 3C048013 */ lui $a0, %hi(D_80129FE8) # $a0, 0x8013 +/* 0BF920 800BED20 00087023 */ negu $t6, $t0 +/* 0BF924 800BED24 46007383 */ div.s $f14, $f14, $f0 +/* 0BF928 800BED28 46061102 */ mul.s $f4, $f2, $f6 +/* 0BF92C 800BED2C C7A600E4 */ lwc1 $f6, 0xe4($sp) +/* 0BF930 800BED30 46009303 */ div.s $f12, $f18, $f0 +/* 0BF934 800BED34 46187202 */ mul.s $f8, $f14, $f24 +/* 0BF938 800BED38 46082280 */ add.s $f10, $f4, $f8 +/* 0BF93C 800BED3C 46023102 */ mul.s $f4, $f6, $f2 +/* 0BF940 800BED40 00000000 */ nop +/* 0BF944 800BED44 460C8202 */ mul.s $f8, $f16, $f12 +/* 0BF948 800BED48 46082180 */ add.s $f6, $f4, $f8 +/* 0BF94C 800BED4C 44814000 */ mtc1 $at, $f8 +/* 0BF950 800BED50 46065101 */ sub.s $f4, $f10, $f6 +/* 0BF954 800BED54 46082282 */ mul.s $f10, $f4, $f8 +/* 0BF958 800BED58 00000000 */ nop +/* 0BF95C 800BED5C 460C5183 */ div.s $f6, $f10, $f12 +/* 0BF960 800BED60 4459F800 */ cfc1 $t9, $31 +/* 0BF964 800BED64 00000000 */ nop +/* 0BF968 800BED68 37210003 */ ori $at, $t9, 3 +/* 0BF96C 800BED6C 38210002 */ xori $at, $at, 2 +/* 0BF970 800BED70 44C1F800 */ ctc1 $at, $31 +/* 0BF974 800BED74 00000000 */ nop +/* 0BF978 800BED78 46003124 */ cvt.w.s $f4, $f6 +/* 0BF97C 800BED7C 44022000 */ mfc1 $v0, $f4 +/* 0BF980 800BED80 44D9F800 */ ctc1 $t9, $31 +/* 0BF984 800BED84 00021023 */ negu $v0, $v0 +/* 0BF988 800BED88 0048082A */ slt $at, $v0, $t0 +/* 0BF98C 800BED8C 10200004 */ beqz $at, .L800BEDA0 +/* 0BF990 800BED90 00403025 */ move $a2, $v0 +/* 0BF994 800BED94 004E082A */ slt $at, $v0, $t6 +/* 0BF998 800BED98 1020001D */ beqz $at, .L800BEE10 +/* 0BF99C 800BED9C 00000000 */ nop +.L800BEDA0: +/* 0BF9A0 800BEDA0 01084021 */ addu $t0, $t0, $t0 +/* 0BF9A4 800BEDA4 00087C00 */ sll $t7, $t0, 0x10 +/* 0BF9A8 800BEDA8 000FC403 */ sra $t8, $t7, 0x10 +/* 0BF9AC 800BEDAC 24630001 */ addiu $v1, $v1, 1 +/* 0BF9B0 800BEDB0 0003CC00 */ sll $t9, $v1, 0x10 +/* 0BF9B4 800BEDB4 00D8082A */ slt $at, $a2, $t8 +/* 0BF9B8 800BEDB8 03004025 */ move $t0, $t8 +/* 0BF9BC 800BEDBC 1020FFF8 */ beqz $at, .L800BEDA0 +/* 0BF9C0 800BEDC0 00191C03 */ sra $v1, $t9, 0x10 +/* 0BF9C4 800BEDC4 00187823 */ negu $t7, $t8 +/* 0BF9C8 800BEDC8 00CF082A */ slt $at, $a2, $t7 +/* 0BF9CC 800BEDCC 1420FFF4 */ bnez $at, .L800BEDA0 +/* 0BF9D0 800BEDD0 00000000 */ nop +/* 0BF9D4 800BEDD4 18E0000A */ blez $a3, .L800BEE00 +/* 0BF9D8 800BEDD8 00002825 */ move $a1, $zero +.L800BEDDC: +/* 0BF9DC 800BEDDC 01451021 */ addu $v0, $t2, $a1 +/* 0BF9E0 800BEDE0 24A50001 */ addiu $a1, $a1, 1 +/* 0BF9E4 800BEDE4 8058000E */ lb $t8, 0xe($v0) +/* 0BF9E8 800BEDE8 00057400 */ sll $t6, $a1, 0x10 +/* 0BF9EC 800BEDEC 000E2C03 */ sra $a1, $t6, 0x10 +/* 0BF9F0 800BEDF0 00A7082A */ slt $at, $a1, $a3 +/* 0BF9F4 800BEDF4 0078C807 */ srav $t9, $t8, $v1 +/* 0BF9F8 800BEDF8 1420FFF8 */ bnez $at, .L800BEDDC +/* 0BF9FC 800BEDFC A059000E */ sb $t9, 0xe($v0) +.L800BEE00: +/* 0BFA00 800BEE00 91580002 */ lbu $t8, 2($t2) +/* 0BFA04 800BEE04 00000000 */ nop +/* 0BFA08 800BEE08 0303C821 */ addu $t9, $t8, $v1 +/* 0BFA0C 800BEE0C A1590002 */ sb $t9, 2($t2) +.L800BEE10: +/* 0BFA10 800BEE10 914E0002 */ lbu $t6, 2($t2) +/* 0BFA14 800BEE14 0147C021 */ addu $t8, $t2, $a3 +/* 0BFA18 800BEE18 01C67807 */ srav $t7, $a2, $t6 +/* 0BFA1C 800BEE1C A30F000E */ sb $t7, 0xe($t8) +/* 0BFA20 800BEE20 8C849FE8 */ lw $a0, %lo(D_80129FE8)($a0) +/* 0BFA24 800BEE24 00002825 */ move $a1, $zero +/* 0BFA28 800BEE28 0005C880 */ sll $t9, $a1, 2 +.L800BEE2C: +/* 0BFA2C 800BEE2C 01391821 */ addu $v1, $t1, $t9 +/* 0BFA30 800BEE30 8C6E0000 */ lw $t6, ($v1) +/* 0BFA34 800BEE34 24A50001 */ addiu $a1, $a1, 1 +/* 0BFA38 800BEE38 25C20002 */ addiu $v0, $t6, 2 +/* 0BFA3C 800BEE3C 0044082A */ slt $at, $v0, $a0 +/* 0BFA40 800BEE40 14200006 */ bnez $at, .L800BEE5C +/* 0BFA44 800BEE44 AC620000 */ sw $v0, ($v1) +.L800BEE48: +/* 0BFA48 800BEE48 0044C023 */ subu $t8, $v0, $a0 +/* 0BFA4C 800BEE4C 0304082A */ slt $at, $t8, $a0 +/* 0BFA50 800BEE50 AC780000 */ sw $t8, ($v1) +/* 0BFA54 800BEE54 1020FFFC */ beqz $at, .L800BEE48 +/* 0BFA58 800BEE58 03001025 */ move $v0, $t8 +.L800BEE5C: +/* 0BFA5C 800BEE5C 0005CC00 */ sll $t9, $a1, 0x10 +/* 0BFA60 800BEE60 00192C03 */ sra $a1, $t9, 0x10 +/* 0BFA64 800BEE64 28A10006 */ slti $at, $a1, 6 +/* 0BFA68 800BEE68 1420FFF0 */ bnez $at, .L800BEE2C +/* 0BFA6C 800BEE6C 0005C880 */ sll $t9, $a1, 2 +/* 0BFA70 800BEE70 24E70001 */ addiu $a3, $a3, 1 +/* 0BFA74 800BEE74 00077C00 */ sll $t7, $a3, 0x10 +/* 0BFA78 800BEE78 000F3C03 */ sra $a3, $t7, 0x10 +/* 0BFA7C 800BEE7C 0004C843 */ sra $t9, $a0, 1 +/* 0BFA80 800BEE80 00F9082A */ slt $at, $a3, $t9 +/* 0BFA84 800BEE84 1420FF5C */ bnez $at, .L800BEBF8 +/* 0BFA88 800BEE88 8FAE0068 */ lw $t6, 0x68($sp) +.L800BEE8C: +/* 0BFA8C 800BEE8C 8FBF002C */ lw $ra, 0x2c($sp) +.L800BEE90: +/* 0BFA90 800BEE90 C7B50010 */ lwc1 $f21, 0x10($sp) +/* 0BFA94 800BEE94 C7B40014 */ lwc1 $f20, 0x14($sp) +/* 0BFA98 800BEE98 C7B70018 */ lwc1 $f23, 0x18($sp) +/* 0BFA9C 800BEE9C C7B6001C */ lwc1 $f22, 0x1c($sp) +/* 0BFAA0 800BEEA0 C7B90020 */ lwc1 $f25, 0x20($sp) +/* 0BFAA4 800BEEA4 C7B80024 */ lwc1 $f24, 0x24($sp) +/* 0BFAA8 800BEEA8 27BD00E8 */ addiu $sp, $sp, 0xe8 +/* 0BFAAC 800BEEAC 03E00008 */ jr $ra +/* 0BFAB0 800BEEB0 01401025 */ move $v0, $t2 + diff --git a/asm/non_matchings/unknown_0B8920/func_800BEEB4.s b/asm/non_matchings/unknown_0B8920/func_800BEEB4.s new file mode 100644 index 00000000..23038a8f --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800BEEB4.s @@ -0,0 +1,77 @@ +glabel func_800BEEB4 +/* 0BFAB4 800BEEB4 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0BFAB8 800BEEB8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0BFABC 800BEEBC 948E0004 */ lhu $t6, 4($a0) +/* 0BFAC0 800BEEC0 94830006 */ lhu $v1, 6($a0) +/* 0BFAC4 800BEEC4 01C57821 */ addu $t7, $t6, $a1 +/* 0BFAC8 800BEEC8 31E2FFFF */ andi $v0, $t7, 0xffff +/* 0BFACC 800BEECC 0043082A */ slt $at, $v0, $v1 +/* 0BFAD0 800BEED0 00803825 */ move $a3, $a0 +/* 0BFAD4 800BEED4 14200006 */ bnez $at, .L800BEEF0 +/* 0BFAD8 800BEED8 A48F0004 */ sh $t7, 4($a0) +.L800BEEDC: +/* 0BFADC 800BEEDC 0043C023 */ subu $t8, $v0, $v1 +/* 0BFAE0 800BEEE0 3302FFFF */ andi $v0, $t8, 0xffff +/* 0BFAE4 800BEEE4 0043082A */ slt $at, $v0, $v1 +/* 0BFAE8 800BEEE8 1020FFFC */ beqz $at, .L800BEEDC +/* 0BFAEC 800BEEEC A4F80004 */ sh $t8, 4($a3) +.L800BEEF0: +/* 0BFAF0 800BEEF0 0002C843 */ sra $t9, $v0, 1 +/* 0BFAF4 800BEEF4 00F92021 */ addu $a0, $a3, $t9 +/* 0BFAF8 800BEEF8 8088000E */ lb $t0, 0xe($a0) +/* 0BFAFC 800BEEFC 30490001 */ andi $t1, $v0, 1 +/* 0BFB00 800BEF00 11200012 */ beqz $t1, .L800BEF4C +/* 0BFB04 800BEF04 244A0001 */ addiu $t2, $v0, 1 +/* 0BFB08 800BEF08 0143082A */ slt $at, $t2, $v1 +/* 0BFB0C 800BEF0C 14200004 */ bnez $at, .L800BEF20 +/* 0BFB10 800BEF10 00000000 */ nop +/* 0BFB14 800BEF14 80EB000E */ lb $t3, 0xe($a3) +/* 0BFB18 800BEF18 10000004 */ b .L800BEF2C +/* 0BFB1C 800BEF1C 010B4021 */ addu $t0, $t0, $t3 +.L800BEF20: +/* 0BFB20 800BEF20 808C000F */ lb $t4, 0xf($a0) +/* 0BFB24 800BEF24 00000000 */ nop +/* 0BFB28 800BEF28 010C4021 */ addu $t0, $t0, $t4 +.L800BEF2C: +/* 0BFB2C 800BEF2C 90E20002 */ lbu $v0, 2($a3) +/* 0BFB30 800BEF30 00087043 */ sra $t6, $t0, 1 +/* 0BFB34 800BEF34 18400003 */ blez $v0, .L800BEF44 +/* 0BFB38 800BEF38 244D001F */ addiu $t5, $v0, 0x1f +/* 0BFB3C 800BEF3C 10000006 */ b .L800BEF58 +/* 0BFB40 800BEF40 01A84004 */ sllv $t0, $t0, $t5 +.L800BEF44: +/* 0BFB44 800BEF44 10000004 */ b .L800BEF58 +/* 0BFB48 800BEF48 01C04025 */ move $t0, $t6 +.L800BEF4C: +/* 0BFB4C 800BEF4C 90EF0002 */ lbu $t7, 2($a3) +/* 0BFB50 800BEF50 00000000 */ nop +/* 0BFB54 800BEF54 01E84004 */ sllv $t0, $t0, $t7 +.L800BEF58: +/* 0BFB58 800BEF58 44882000 */ mtc1 $t0, $f4 +/* 0BFB5C 800BEF5C 84F80000 */ lh $t8, ($a3) +/* 0BFB60 800BEF60 468021A0 */ cvt.s.w $f6, $f4 +/* 0BFB64 800BEF64 3C013FB0 */ li $at, 0x3FB00000 # 1.375000 +/* 0BFB68 800BEF68 44815800 */ mtc1 $at, $f11 +/* 0BFB6C 800BEF6C 44805000 */ mtc1 $zero, $f10 +/* 0BFB70 800BEF70 44989000 */ mtc1 $t8, $f18 +/* 0BFB74 800BEF74 46003221 */ cvt.d.s $f8, $f6 +/* 0BFB78 800BEF78 462A4402 */ mul.d $f16, $f8, $f10 +/* 0BFB7C 800BEF7C 46809120 */ cvt.s.w $f4, $f18 +/* 0BFB80 800BEF80 3C018013 */ lui $at, %hi(D_8012A008) # $at, 0x8013 +/* 0BFB84 800BEF84 C42AA008 */ lwc1 $f10, %lo(D_8012A008)($at) +/* 0BFB88 800BEF88 94E4000C */ lhu $a0, 0xc($a3) +/* 0BFB8C 800BEF8C 460021A1 */ cvt.d.s $f6, $f4 +/* 0BFB90 800BEF90 46268200 */ add.d $f8, $f16, $f6 +/* 0BFB94 800BEF94 94E50008 */ lhu $a1, 8($a3) +/* 0BFB98 800BEF98 462040A0 */ cvt.s.d $f2, $f8 +/* 0BFB9C 800BEF9C 94E6000A */ lhu $a2, 0xa($a3) +/* 0BFBA0 800BEFA0 460A1082 */ mul.s $f2, $f2, $f10 +/* 0BFBA4 800BEFA4 0C02FBF1 */ jal func_800BEFC4 +/* 0BFBA8 800BEFA8 E7A20018 */ swc1 $f2, 0x18($sp) +/* 0BFBAC 800BEFAC C7A20018 */ lwc1 $f2, 0x18($sp) +/* 0BFBB0 800BEFB0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0BFBB4 800BEFB4 46001080 */ add.s $f2, $f2, $f0 +/* 0BFBB8 800BEFB8 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0BFBBC 800BEFBC 03E00008 */ jr $ra +/* 0BFBC0 800BEFC0 46001006 */ mov.s $f0, $f2 + diff --git a/asm/non_matchings/unknown_0B8920/func_800BEFC4.s b/asm/non_matchings/unknown_0B8920/func_800BEFC4.s new file mode 100644 index 00000000..90066c61 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800BEFC4.s @@ -0,0 +1,277 @@ +glabel func_800BEFC4 +/* 0BFBC4 800BEFC4 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 0BFBC8 800BEFC8 3C0E800E */ lui $t6, %hi(D_800E3188) # $t6, 0x800e +/* 0BFBCC 800BEFCC 44801000 */ mtc1 $zero, $f2 +/* 0BFBD0 800BEFD0 8DCE3188 */ lw $t6, %lo(D_800E3188)($t6) +/* 0BFBD4 800BEFD4 AFB10048 */ sw $s1, 0x48($sp) +/* 0BFBD8 800BEFD8 AFB00044 */ sw $s0, 0x44($sp) +/* 0BFBDC 800BEFDC E7BD0030 */ swc1 $f29, 0x30($sp) +/* 0BFBE0 800BEFE0 E7BC0034 */ swc1 $f28, 0x34($sp) +/* 0BFBE4 800BEFE4 00A08025 */ move $s0, $a1 +/* 0BFBE8 800BEFE8 00C08825 */ move $s1, $a2 +/* 0BFBEC 800BEFEC AFBF005C */ sw $ra, 0x5c($sp) +/* 0BFBF0 800BEFF0 AFB50058 */ sw $s5, 0x58($sp) +/* 0BFBF4 800BEFF4 AFB40054 */ sw $s4, 0x54($sp) +/* 0BFBF8 800BEFF8 AFB30050 */ sw $s3, 0x50($sp) +/* 0BFBFC 800BEFFC AFB2004C */ sw $s2, 0x4c($sp) +/* 0BFC00 800BF000 E7BF0038 */ swc1 $f31, 0x38($sp) +/* 0BFC04 800BF004 E7BE003C */ swc1 $f30, 0x3c($sp) +/* 0BFC08 800BF008 E7BB0028 */ swc1 $f27, 0x28($sp) +/* 0BFC0C 800BF00C E7BA002C */ swc1 $f26, 0x2c($sp) +/* 0BFC10 800BF010 E7B90020 */ swc1 $f25, 0x20($sp) +/* 0BFC14 800BF014 E7B80024 */ swc1 $f24, 0x24($sp) +/* 0BFC18 800BF018 E7B70018 */ swc1 $f23, 0x18($sp) +/* 0BFC1C 800BF01C E7B6001C */ swc1 $f22, 0x1c($sp) +/* 0BFC20 800BF020 E7B50010 */ swc1 $f21, 0x10($sp) +/* 0BFC24 800BF024 E7B40014 */ swc1 $f20, 0x14($sp) +/* 0BFC28 800BF028 1DC00003 */ bgtz $t6, .L800BF038 +/* 0BFC2C 800BF02C 46001706 */ mov.s $f28, $f2 +/* 0BFC30 800BF030 100000D7 */ b .L800BF390 +/* 0BFC34 800BF034 46001006 */ mov.s $f0, $f2 +.L800BF038: +/* 0BFC38 800BF038 3C028013 */ lui $v0, %hi(D_80129FC8) # $v0, 0x8013 +/* 0BFC3C 800BF03C 3C018013 */ lui $at, %hi(D_8012A0B8) # $at, 0x8013 +/* 0BFC40 800BF040 24429FC8 */ addiu $v0, %lo(D_80129FC8) # addiu $v0, $v0, -0x6038 +/* 0BFC44 800BF044 C420A0B8 */ lwc1 $f0, %lo(D_8012A0B8)($at) +/* 0BFC48 800BF048 8C4F0028 */ lw $t7, 0x28($v0) +/* 0BFC4C 800BF04C 3C018013 */ lui $at, %hi(D_8012A0BC) # $at, 0x8013 +/* 0BFC50 800BF050 8C430000 */ lw $v1, ($v0) +/* 0BFC54 800BF054 C422A0BC */ lwc1 $f2, %lo(D_8012A0BC)($at) +/* 0BFC58 800BF058 11E00008 */ beqz $t7, .L800BF07C +/* 0BFC5C 800BF05C 3C19800E */ lui $t9, %hi(D_800E30D8) # $t9, 0x800e +/* 0BFC60 800BF060 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 0BFC64 800BF064 44816000 */ mtc1 $at, $f12 +/* 0BFC68 800BF068 0003C040 */ sll $t8, $v1, 1 +/* 0BFC6C 800BF06C 460C0002 */ mul.s $f0, $f0, $f12 +/* 0BFC70 800BF070 03001825 */ move $v1, $t8 +/* 0BFC74 800BF074 460C1082 */ mul.s $f2, $f2, $f12 +/* 0BFC78 800BF078 00000000 */ nop +.L800BF07C: +/* 0BFC7C 800BF07C 000440C0 */ sll $t0, $a0, 3 +/* 0BFC80 800BF080 8F3930D8 */ lw $t9, %lo(D_800E30D8)($t9) +/* 0BFC84 800BF084 01044023 */ subu $t0, $t0, $a0 +/* 0BFC88 800BF088 00084080 */ sll $t0, $t0, 2 +/* 0BFC8C 800BF08C 03283021 */ addu $a2, $t9, $t0 +/* 0BFC90 800BF090 90C9000A */ lbu $t1, 0xa($a2) +/* 0BFC94 800BF094 3C0C800E */ lui $t4, %hi(D_800E3184) # $t4, 0x800e +/* 0BFC98 800BF098 01230019 */ multu $t1, $v1 +/* 0BFC9C 800BF09C 8D8C3184 */ lw $t4, %lo(D_800E3184)($t4) +/* 0BFCA0 800BF0A0 241500FF */ li $s5, 255 +/* 0BFCA4 800BF0A4 00005012 */ mflo $t2 +/* 0BFCA8 800BF0A8 01502821 */ addu $a1, $t2, $s0 +/* 0BFCAC 800BF0AC 000558C0 */ sll $t3, $a1, 3 +/* 0BFCB0 800BF0B0 016C3821 */ addu $a3, $t3, $t4 +/* 0BFCB4 800BF0B4 90ED0000 */ lbu $t5, ($a3) +/* 0BFCB8 800BF0B8 00000000 */ nop +/* 0BFCBC 800BF0BC 12AD00B3 */ beq $s5, $t5, .L800BF38C +/* 0BFCC0 800BF0C0 00000000 */ nop +/* 0BFCC4 800BF0C4 90CE000B */ lbu $t6, 0xb($a2) +/* 0BFCC8 800BF0C8 44854000 */ mtc1 $a1, $f8 +/* 0BFCCC 800BF0CC 01C30019 */ multu $t6, $v1 +/* 0BFCD0 800BF0D0 3C188013 */ lui $t8, %hi(D_8012A0D0) # $t8, 0x8013 +/* 0BFCD4 800BF0D4 468042A0 */ cvt.s.w $f10, $f8 +/* 0BFCD8 800BF0D8 8F18A0D0 */ lw $t8, %lo(D_8012A0D0)($t8) +/* 0BFCDC 800BF0DC 3C198013 */ lui $t9, %hi(D_8012A0D4) # $t9, 0x8013 +/* 0BFCE0 800BF0E0 44982000 */ mtc1 $t8, $f4 +/* 0BFCE4 800BF0E4 46005402 */ mul.s $f16, $f10, $f0 +/* 0BFCE8 800BF0E8 8F39A0D4 */ lw $t9, %lo(D_8012A0D4)($t9) +/* 0BFCEC 800BF0EC 3C14800E */ lui $s4, %hi(D_800E3190) # $s4, 0x800e +/* 0BFCF0 800BF0F0 44999000 */ mtc1 $t9, $f18 +/* 0BFCF4 800BF0F4 468021A0 */ cvt.s.w $f6, $f4 +/* 0BFCF8 800BF0F8 4480D000 */ mtc1 $zero, $f26 +/* 0BFCFC 800BF0FC 00007812 */ mflo $t7 +/* 0BFD00 800BF100 01F12021 */ addu $a0, $t7, $s1 +/* 0BFD04 800BF104 44844000 */ mtc1 $a0, $f8 +/* 0BFD08 800BF108 46103780 */ add.s $f30, $f6, $f16 +/* 0BFD0C 800BF10C 00009825 */ move $s3, $zero +/* 0BFD10 800BF110 468042A0 */ cvt.s.w $f10, $f8 +/* 0BFD14 800BF114 26943190 */ addiu $s4, %lo(D_800E3190) # addiu $s4, $s4, 0x3190 +/* 0BFD18 800BF118 00E09025 */ move $s2, $a3 +/* 0BFD1C 800BF11C 46025182 */ mul.s $f6, $f10, $f2 +/* 0BFD20 800BF120 31A200FF */ andi $v0, $t5, 0xff +/* 0BFD24 800BF124 46809120 */ cvt.s.w $f4, $f18 +/* 0BFD28 800BF128 46062600 */ add.s $f24, $f4, $f6 +.L800BF12C: +/* 0BFD2C 800BF12C 8E890000 */ lw $t1, ($s4) +/* 0BFD30 800BF130 00024180 */ sll $t0, $v0, 6 +/* 0BFD34 800BF134 01098821 */ addu $s1, $t0, $t1 +/* 0BFD38 800BF138 C6300000 */ lwc1 $f16, ($s1) +/* 0BFD3C 800BF13C 00000000 */ nop +/* 0BFD40 800BF140 4618803E */ c.le.s $f16, $f24 +/* 0BFD44 800BF144 00000000 */ nop +/* 0BFD48 800BF148 45000088 */ bc1f .L800BF36C +/* 0BFD4C 800BF14C 00000000 */ nop +/* 0BFD50 800BF150 C6320004 */ lwc1 $f18, 4($s1) +/* 0BFD54 800BF154 00000000 */ nop +/* 0BFD58 800BF158 4612C03E */ c.le.s $f24, $f18 +/* 0BFD5C 800BF15C 00000000 */ nop +/* 0BFD60 800BF160 45000082 */ bc1f .L800BF36C +/* 0BFD64 800BF164 00000000 */ nop +/* 0BFD68 800BF168 C6280008 */ lwc1 $f8, 8($s1) +/* 0BFD6C 800BF16C C62A000C */ lwc1 $f10, 0xc($s1) +/* 0BFD70 800BF170 4608F501 */ sub.s $f20, $f30, $f8 +/* 0BFD74 800BF174 C6300014 */ lwc1 $f16, 0x14($s1) +/* 0BFD78 800BF178 4614A102 */ mul.s $f4, $f20, $f20 +/* 0BFD7C 800BF17C 460AC581 */ sub.s $f22, $f24, $f10 +/* 0BFD80 800BF180 4616B182 */ mul.s $f6, $f22, $f22 +/* 0BFD84 800BF184 46062300 */ add.s $f12, $f4, $f6 +/* 0BFD88 800BF188 4610603C */ c.lt.s $f12, $f16 +/* 0BFD8C 800BF18C 00000000 */ nop +/* 0BFD90 800BF190 45000076 */ bc1f .L800BF36C +/* 0BFD94 800BF194 00000000 */ nop +/* 0BFD98 800BF198 0C0326B4 */ jal sqrtf +/* 0BFD9C 800BF19C 00000000 */ nop +/* 0BFDA0 800BF1A0 922A0030 */ lbu $t2, 0x30($s1) +/* 0BFDA4 800BF1A4 9630001A */ lhu $s0, 0x1a($s1) +/* 0BFDA8 800BF1A8 11400021 */ beqz $t2, .L800BF230 +/* 0BFDAC 800BF1AC 46000086 */ mov.s $f2, $f0 +/* 0BFDB0 800BF1B0 461AA03C */ c.lt.s $f20, $f26 +/* 0BFDB4 800BF1B4 00000000 */ nop +/* 0BFDB8 800BF1B8 4500000F */ bc1f .L800BF1F8 +/* 0BFDBC 800BF1BC 00000000 */ nop +/* 0BFDC0 800BF1C0 C6320020 */ lwc1 $f18, 0x20($s1) +/* 0BFDC4 800BF1C4 00000000 */ nop +/* 0BFDC8 800BF1C8 4612A202 */ mul.s $f8, $f20, $f18 +/* 0BFDCC 800BF1CC 444BF800 */ cfc1 $t3, $31 +/* 0BFDD0 800BF1D0 00000000 */ nop +/* 0BFDD4 800BF1D4 35610003 */ ori $at, $t3, 3 +/* 0BFDD8 800BF1D8 38210002 */ xori $at, $at, 2 +/* 0BFDDC 800BF1DC 44C1F800 */ ctc1 $at, $31 +/* 0BFDE0 800BF1E0 00000000 */ nop +/* 0BFDE4 800BF1E4 460042A4 */ cvt.w.s $f10, $f8 +/* 0BFDE8 800BF1E8 440C5000 */ mfc1 $t4, $f10 +/* 0BFDEC 800BF1EC 44CBF800 */ ctc1 $t3, $31 +/* 0BFDF0 800BF1F0 10000041 */ b .L800BF2F8 +/* 0BFDF4 800BF1F4 020C8023 */ subu $s0, $s0, $t4 +.L800BF1F8: +/* 0BFDF8 800BF1F8 C6240020 */ lwc1 $f4, 0x20($s1) +/* 0BFDFC 800BF1FC 00000000 */ nop +/* 0BFE00 800BF200 4604A182 */ mul.s $f6, $f20, $f4 +/* 0BFE04 800BF204 444DF800 */ cfc1 $t5, $31 +/* 0BFE08 800BF208 00000000 */ nop +/* 0BFE0C 800BF20C 35A10003 */ ori $at, $t5, 3 +/* 0BFE10 800BF210 38210002 */ xori $at, $at, 2 +/* 0BFE14 800BF214 44C1F800 */ ctc1 $at, $31 +/* 0BFE18 800BF218 00000000 */ nop +/* 0BFE1C 800BF21C 46003424 */ cvt.w.s $f16, $f6 +/* 0BFE20 800BF220 440E8000 */ mfc1 $t6, $f16 +/* 0BFE24 800BF224 44CDF800 */ ctc1 $t5, $31 +/* 0BFE28 800BF228 10000033 */ b .L800BF2F8 +/* 0BFE2C 800BF22C 020E8021 */ addu $s0, $s0, $t6 +.L800BF230: +/* 0BFE30 800BF230 922F0031 */ lbu $t7, 0x31($s1) +/* 0BFE34 800BF234 00000000 */ nop +/* 0BFE38 800BF238 11E00021 */ beqz $t7, .L800BF2C0 +/* 0BFE3C 800BF23C 00000000 */ nop +/* 0BFE40 800BF240 461AA03C */ c.lt.s $f20, $f26 +/* 0BFE44 800BF244 00000000 */ nop +/* 0BFE48 800BF248 4500000F */ bc1f .L800BF288 +/* 0BFE4C 800BF24C 00000000 */ nop +/* 0BFE50 800BF250 C6320020 */ lwc1 $f18, 0x20($s1) +/* 0BFE54 800BF254 00000000 */ nop +/* 0BFE58 800BF258 4612B202 */ mul.s $f8, $f22, $f18 +/* 0BFE5C 800BF25C 4458F800 */ cfc1 $t8, $31 +/* 0BFE60 800BF260 00000000 */ nop +/* 0BFE64 800BF264 37010003 */ ori $at, $t8, 3 +/* 0BFE68 800BF268 38210002 */ xori $at, $at, 2 +/* 0BFE6C 800BF26C 44C1F800 */ ctc1 $at, $31 +/* 0BFE70 800BF270 00000000 */ nop +/* 0BFE74 800BF274 460042A4 */ cvt.w.s $f10, $f8 +/* 0BFE78 800BF278 44195000 */ mfc1 $t9, $f10 +/* 0BFE7C 800BF27C 44D8F800 */ ctc1 $t8, $31 +/* 0BFE80 800BF280 1000001D */ b .L800BF2F8 +/* 0BFE84 800BF284 02198023 */ subu $s0, $s0, $t9 +.L800BF288: +/* 0BFE88 800BF288 C6240020 */ lwc1 $f4, 0x20($s1) +/* 0BFE8C 800BF28C 00000000 */ nop +/* 0BFE90 800BF290 4604B182 */ mul.s $f6, $f22, $f4 +/* 0BFE94 800BF294 4448F800 */ cfc1 $t0, $31 +/* 0BFE98 800BF298 00000000 */ nop +/* 0BFE9C 800BF29C 35010003 */ ori $at, $t0, 3 +/* 0BFEA0 800BF2A0 38210002 */ xori $at, $at, 2 +/* 0BFEA4 800BF2A4 44C1F800 */ ctc1 $at, $31 +/* 0BFEA8 800BF2A8 00000000 */ nop +/* 0BFEAC 800BF2AC 46003424 */ cvt.w.s $f16, $f6 +/* 0BFEB0 800BF2B0 44098000 */ mfc1 $t1, $f16 +/* 0BFEB4 800BF2B4 44C8F800 */ ctc1 $t0, $31 +/* 0BFEB8 800BF2B8 1000000F */ b .L800BF2F8 +/* 0BFEBC 800BF2BC 02098021 */ addu $s0, $s0, $t1 +.L800BF2C0: +/* 0BFEC0 800BF2C0 C6320020 */ lwc1 $f18, 0x20($s1) +/* 0BFEC4 800BF2C4 00000000 */ nop +/* 0BFEC8 800BF2C8 46120202 */ mul.s $f8, $f0, $f18 +/* 0BFECC 800BF2CC 444AF800 */ cfc1 $t2, $31 +/* 0BFED0 800BF2D0 00000000 */ nop +/* 0BFED4 800BF2D4 35410003 */ ori $at, $t2, 3 +/* 0BFED8 800BF2D8 38210002 */ xori $at, $at, 2 +/* 0BFEDC 800BF2DC 44C1F800 */ ctc1 $at, $31 +/* 0BFEE0 800BF2E0 00000000 */ nop +/* 0BFEE4 800BF2E4 460042A4 */ cvt.w.s $f10, $f8 +/* 0BFEE8 800BF2E8 440B5000 */ mfc1 $t3, $f10 +/* 0BFEEC 800BF2EC 44CAF800 */ ctc1 $t2, $31 +/* 0BFEF0 800BF2F0 020B8021 */ addu $s0, $s0, $t3 +/* 0BFEF4 800BF2F4 00000000 */ nop +.L800BF2F8: +/* 0BFEF8 800BF2F8 3C014780 */ li $at, 0x47800000 # 65536.000000 +/* 0BFEFC 800BF2FC 44812000 */ mtc1 $at, $f4 +/* 0BFF00 800BF300 C6300010 */ lwc1 $f16, 0x10($s1) +/* 0BFF04 800BF304 46041182 */ mul.s $f6, $f2, $f4 +/* 0BFF08 800BF308 00000000 */ nop +/* 0BFF0C 800BF30C 46103483 */ div.s $f18, $f6, $f16 +/* 0BFF10 800BF310 444CF800 */ cfc1 $t4, $31 +/* 0BFF14 800BF314 00000000 */ nop +/* 0BFF18 800BF318 35810003 */ ori $at, $t4, 3 +/* 0BFF1C 800BF31C 38210002 */ xori $at, $at, 2 +/* 0BFF20 800BF320 44C1F800 */ ctc1 $at, $31 +/* 0BFF24 800BF324 00000000 */ nop +/* 0BFF28 800BF328 46009224 */ cvt.w.s $f8, $f18 +/* 0BFF2C 800BF32C 44044000 */ mfc1 $a0, $f8 +/* 0BFF30 800BF330 44CCF800 */ ctc1 $t4, $31 +/* 0BFF34 800BF334 00046C00 */ sll $t5, $a0, 0x10 +/* 0BFF38 800BF338 0C01C1FE */ jal func_800707F8 +/* 0BFF3C 800BF33C 000D2403 */ sra $a0, $t5, 0x10 +/* 0BFF40 800BF340 00102400 */ sll $a0, $s0, 0x10 +/* 0BFF44 800BF344 00047C03 */ sra $t7, $a0, 0x10 +/* 0BFF48 800BF348 46000506 */ mov.s $f20, $f0 +/* 0BFF4C 800BF34C 0C01C1F1 */ jal func_800707C4 +/* 0BFF50 800BF350 01E02025 */ move $a0, $t7 +/* 0BFF54 800BF354 C62A0024 */ lwc1 $f10, 0x24($s1) +/* 0BFF58 800BF358 00000000 */ nop +/* 0BFF5C 800BF35C 46005102 */ mul.s $f4, $f10, $f0 +/* 0BFF60 800BF360 00000000 */ nop +/* 0BFF64 800BF364 46142182 */ mul.s $f6, $f4, $f20 +/* 0BFF68 800BF368 4606E700 */ add.s $f28, $f28, $f6 +.L800BF36C: +/* 0BFF6C 800BF36C 26730001 */ addiu $s3, $s3, 1 +/* 0BFF70 800BF370 2A610008 */ slti $at, $s3, 8 +/* 0BFF74 800BF374 10200005 */ beqz $at, .L800BF38C +/* 0BFF78 800BF378 26520001 */ addiu $s2, $s2, 1 +/* 0BFF7C 800BF37C 92420000 */ lbu $v0, ($s2) +/* 0BFF80 800BF380 00000000 */ nop +/* 0BFF84 800BF384 16A2FF69 */ bne $s5, $v0, .L800BF12C +/* 0BFF88 800BF388 00000000 */ nop +.L800BF38C: +/* 0BFF8C 800BF38C 4600E006 */ mov.s $f0, $f28 +.L800BF390: +/* 0BFF90 800BF390 8FBF005C */ lw $ra, 0x5c($sp) +/* 0BFF94 800BF394 C7B50010 */ lwc1 $f21, 0x10($sp) +/* 0BFF98 800BF398 C7B40014 */ lwc1 $f20, 0x14($sp) +/* 0BFF9C 800BF39C C7B70018 */ lwc1 $f23, 0x18($sp) +/* 0BFFA0 800BF3A0 C7B6001C */ lwc1 $f22, 0x1c($sp) +/* 0BFFA4 800BF3A4 C7B90020 */ lwc1 $f25, 0x20($sp) +/* 0BFFA8 800BF3A8 C7B80024 */ lwc1 $f24, 0x24($sp) +/* 0BFFAC 800BF3AC C7BB0028 */ lwc1 $f27, 0x28($sp) +/* 0BFFB0 800BF3B0 C7BA002C */ lwc1 $f26, 0x2c($sp) +/* 0BFFB4 800BF3B4 C7BD0030 */ lwc1 $f29, 0x30($sp) +/* 0BFFB8 800BF3B8 C7BC0034 */ lwc1 $f28, 0x34($sp) +/* 0BFFBC 800BF3BC C7BF0038 */ lwc1 $f31, 0x38($sp) +/* 0BFFC0 800BF3C0 C7BE003C */ lwc1 $f30, 0x3c($sp) +/* 0BFFC4 800BF3C4 8FB00044 */ lw $s0, 0x44($sp) +/* 0BFFC8 800BF3C8 8FB10048 */ lw $s1, 0x48($sp) +/* 0BFFCC 800BF3CC 8FB2004C */ lw $s2, 0x4c($sp) +/* 0BFFD0 800BF3D0 8FB30050 */ lw $s3, 0x50($sp) +/* 0BFFD4 800BF3D4 8FB40054 */ lw $s4, 0x54($sp) +/* 0BFFD8 800BF3D8 8FB50058 */ lw $s5, 0x58($sp) +/* 0BFFDC 800BF3DC 03E00008 */ jr $ra +/* 0BFFE0 800BF3E0 27BD0060 */ addiu $sp, $sp, 0x60 + diff --git a/asm/non_matchings/unknown_0B8920/func_800BF3E4.s b/asm/non_matchings/unknown_0B8920/func_800BF3E4.s new file mode 100644 index 00000000..3070ec52 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800BF3E4.s @@ -0,0 +1,93 @@ +glabel func_800BF3E4 +/* 0BFFE4 800BF3E4 3C0E800E */ lui $t6, %hi(D_800E3190) # $t6, 0x800e +/* 0BFFE8 800BF3E8 8DCE3190 */ lw $t6, %lo(D_800E3190)($t6) +/* 0BFFEC 800BF3EC 00802825 */ move $a1, $a0 +/* 0BFFF0 800BF3F0 11C0004A */ beqz $t6, .L800BF51C +/* 0BFFF4 800BF3F4 3C08800E */ lui $t0, %hi(D_800E3188) # $t0, 0x800e +/* 0BFFF8 800BF3F8 25083188 */ addiu $t0, %lo(D_800E3188) # addiu $t0, $t0, 0x3188 +/* 0BFFFC 800BF3FC 8D040000 */ lw $a0, ($t0) +/* 0C0000 800BF400 00001025 */ move $v0, $zero +/* 0C0004 800BF404 1880000E */ blez $a0, .L800BF440 +/* 0C0008 800BF408 00001825 */ move $v1, $zero +/* 0C000C 800BF40C 3C0F800E */ lui $t7, %hi(D_800E3194) # $t7, 0x800e +/* 0C0010 800BF410 8DEF3194 */ lw $t7, %lo(D_800E3194)($t7) +/* 0C0014 800BF414 0000C080 */ sll $t8, $zero, 2 +/* 0C0018 800BF418 01F83021 */ addu $a2, $t7, $t8 +.L800BF41C: +/* 0C001C 800BF41C 8CD90000 */ lw $t9, ($a2) +/* 0C0020 800BF420 24420001 */ addiu $v0, $v0, 1 +/* 0C0024 800BF424 14B90002 */ bne $a1, $t9, .L800BF430 +/* 0C0028 800BF428 0044082A */ slt $at, $v0, $a0 +/* 0C002C 800BF42C 2403FFFF */ li $v1, -1 +.L800BF430: +/* 0C0030 800BF430 10200003 */ beqz $at, .L800BF440 +/* 0C0034 800BF434 24C60004 */ addiu $a2, $a2, 4 +/* 0C0038 800BF438 1060FFF8 */ beqz $v1, .L800BF41C +/* 0C003C 800BF43C 00000000 */ nop +.L800BF440: +/* 0C0040 800BF440 10600036 */ beqz $v1, .L800BF51C +/* 0C0044 800BF444 3C09800E */ lui $t1, %hi(D_800E318C) # $t1, 0x800e +/* 0C0048 800BF448 2529318C */ addiu $t1, %lo(D_800E318C) # addiu $t1, $t1, 0x318c +/* 0C004C 800BF44C 8D2D0000 */ lw $t5, ($t1) +/* 0C0050 800BF450 2442FFFF */ addiu $v0, $v0, -1 +/* 0C0054 800BF454 19A00028 */ blez $t5, .L800BF4F8 +/* 0C0058 800BF458 00001825 */ move $v1, $zero +/* 0C005C 800BF45C 3C0A800E */ lui $t2, %hi(D_800E3184) # $t2, 0x800e +/* 0C0060 800BF460 254A3184 */ addiu $t2, %lo(D_800E3184) # addiu $t2, $t2, 0x3184 +/* 0C0064 800BF464 240C00FF */ li $t4, 255 +/* 0C0068 800BF468 240B00FF */ li $t3, 255 +.L800BF46C: +/* 0C006C 800BF46C 8D4F0000 */ lw $t7, ($t2) +/* 0C0070 800BF470 000370C0 */ sll $t6, $v1, 3 +/* 0C0074 800BF474 01CF2821 */ addu $a1, $t6, $t7 +/* 0C0078 800BF478 90B80000 */ lbu $t8, ($a1) +/* 0C007C 800BF47C 00002025 */ move $a0, $zero +/* 0C0080 800BF480 11780018 */ beq $t3, $t8, .L800BF4E4 +/* 0C0084 800BF484 00000000 */ nop +/* 0C0088 800BF488 90A70000 */ lbu $a3, ($a1) +/* 0C008C 800BF48C 00A03021 */ addu $a2, $a1, $zero +.L800BF490: +/* 0C0090 800BF490 1447000C */ bne $v0, $a3, .L800BF4C4 +/* 0C0094 800BF494 28810007 */ slti $at, $a0, 7 +/* 0C0098 800BF498 10200007 */ beqz $at, .L800BF4B8 +/* 0C009C 800BF49C 00000000 */ nop +.L800BF4A0: +/* 0C00A0 800BF4A0 90D90001 */ lbu $t9, 1($a2) +/* 0C00A4 800BF4A4 24840001 */ addiu $a0, $a0, 1 +/* 0C00A8 800BF4A8 28810007 */ slti $at, $a0, 7 +/* 0C00AC 800BF4AC 24C60001 */ addiu $a2, $a2, 1 +/* 0C00B0 800BF4B0 1420FFFB */ bnez $at, .L800BF4A0 +/* 0C00B4 800BF4B4 A0D9FFFF */ sb $t9, -1($a2) +.L800BF4B8: +/* 0C00B8 800BF4B8 A0CC0000 */ sb $t4, ($a2) +/* 0C00BC 800BF4BC 24840001 */ addiu $a0, $a0, 1 +/* 0C00C0 800BF4C0 24C60001 */ addiu $a2, $a2, 1 +.L800BF4C4: +/* 0C00C4 800BF4C4 24840001 */ addiu $a0, $a0, 1 +/* 0C00C8 800BF4C8 28810008 */ slti $at, $a0, 8 +/* 0C00CC 800BF4CC 10200005 */ beqz $at, .L800BF4E4 +/* 0C00D0 800BF4D0 24C60001 */ addiu $a2, $a2, 1 +/* 0C00D4 800BF4D4 90C70000 */ lbu $a3, ($a2) +/* 0C00D8 800BF4D8 00000000 */ nop +/* 0C00DC 800BF4DC 1567FFEC */ bne $t3, $a3, .L800BF490 +/* 0C00E0 800BF4E0 00000000 */ nop +.L800BF4E4: +/* 0C00E4 800BF4E4 8D2D0000 */ lw $t5, ($t1) +/* 0C00E8 800BF4E8 24630001 */ addiu $v1, $v1, 1 +/* 0C00EC 800BF4EC 006D082A */ slt $at, $v1, $t5 +/* 0C00F0 800BF4F0 1420FFDE */ bnez $at, .L800BF46C +/* 0C00F4 800BF4F4 00000000 */ nop +.L800BF4F8: +/* 0C00F8 800BF4F8 3C0E800E */ lui $t6, %hi(D_800E3194) # $t6, 0x800e +/* 0C00FC 800BF4FC 8DCE3194 */ lw $t6, %lo(D_800E3194)($t6) +/* 0C0100 800BF500 00037880 */ sll $t7, $v1, 2 +/* 0C0104 800BF504 01CFC021 */ addu $t8, $t6, $t7 +/* 0C0108 800BF508 AF000000 */ sw $zero, ($t8) +/* 0C010C 800BF50C 8D190000 */ lw $t9, ($t0) +/* 0C0110 800BF510 00000000 */ nop +/* 0C0114 800BF514 272DFFFF */ addiu $t5, $t9, -1 +/* 0C0118 800BF518 AD0D0000 */ sw $t5, ($t0) +.L800BF51C: +/* 0C011C 800BF51C 03E00008 */ jr $ra +/* 0C0120 800BF520 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800BF524.s b/asm/non_matchings/unknown_0B8920/func_800BF524.s new file mode 100644 index 00000000..62af3e0d --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800BF524.s @@ -0,0 +1,76 @@ +glabel func_800BF524 +/* 0C0124 800BF524 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0C0128 800BF528 AFBF002C */ sw $ra, 0x2c($sp) +/* 0C012C 800BF52C 8C82003C */ lw $v0, 0x3c($a0) +/* 0C0130 800BF530 3C013FB0 */ li $at, 0x3FB00000 # 1.375000 +/* 0C0134 800BF534 904E0010 */ lbu $t6, 0x10($v0) +/* 0C0138 800BF538 44810800 */ mtc1 $at, $f1 +/* 0C013C 800BF53C 11C00002 */ beqz $t6, .L800BF548 +/* 0C0140 800BF540 00001825 */ move $v1, $zero +/* 0C0144 800BF544 24030001 */ li $v1, 1 +.L800BF548: +/* 0C0148 800BF548 904F0011 */ lbu $t7, 0x11($v0) +/* 0C014C 800BF54C 44800000 */ mtc1 $zero, $f0 +/* 0C0150 800BF550 11E00002 */ beqz $t7, .L800BF55C +/* 0C0154 800BF554 34780002 */ ori $t8, $v1, 2 +/* 0C0158 800BF558 03001825 */ move $v1, $t8 +.L800BF55C: +/* 0C015C 800BF55C 9459000A */ lhu $t9, 0xa($v0) +/* 0C0160 800BF560 8C85000C */ lw $a1, 0xc($a0) +/* 0C0164 800BF564 44992000 */ mtc1 $t9, $f4 +/* 0C0168 800BF568 8C860014 */ lw $a2, 0x14($a0) +/* 0C016C 800BF56C 07210005 */ bgez $t9, .L800BF584 +/* 0C0170 800BF570 46802120 */ cvt.s.w $f4, $f4 +/* 0C0174 800BF574 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0C0178 800BF578 44813000 */ mtc1 $at, $f6 +/* 0C017C 800BF57C 00000000 */ nop +/* 0C0180 800BF580 46062100 */ add.s $f4, $f4, $f6 +.L800BF584: +/* 0C0184 800BF584 90480009 */ lbu $t0, 9($v0) +/* 0C0188 800BF588 44072000 */ mfc1 $a3, $f4 +/* 0C018C 800BF58C 00084A00 */ sll $t1, $t0, 8 +/* 0C0190 800BF590 AFA90010 */ sw $t1, 0x10($sp) +/* 0C0194 800BF594 904A0008 */ lbu $t2, 8($v0) +/* 0C0198 800BF598 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0C019C 800BF59C 448A4000 */ mtc1 $t2, $f8 +/* 0C01A0 800BF5A0 05410004 */ bgez $t2, .L800BF5B4 +/* 0C01A4 800BF5A4 468042A0 */ cvt.s.w $f10, $f8 +/* 0C01A8 800BF5A8 44818000 */ mtc1 $at, $f16 +/* 0C01AC 800BF5AC 00000000 */ nop +/* 0C01B0 800BF5B0 46105280 */ add.s $f10, $f10, $f16 +.L800BF5B4: +/* 0C01B4 800BF5B4 460054A1 */ cvt.d.s $f18, $f10 +/* 0C01B8 800BF5B8 46209102 */ mul.d $f4, $f18, $f0 +/* 0C01BC 800BF5BC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0C01C0 800BF5C0 462021A0 */ cvt.s.d $f6, $f4 +/* 0C01C4 800BF5C4 E7A60014 */ swc1 $f6, 0x14($sp) +/* 0C01C8 800BF5C8 944B000E */ lhu $t3, 0xe($v0) +/* 0C01CC 800BF5CC 00000000 */ nop +/* 0C01D0 800BF5D0 448B4000 */ mtc1 $t3, $f8 +/* 0C01D4 800BF5D4 05610004 */ bgez $t3, .L800BF5E8 +/* 0C01D8 800BF5D8 46804420 */ cvt.s.w $f16, $f8 +/* 0C01DC 800BF5DC 44815000 */ mtc1 $at, $f10 +/* 0C01E0 800BF5E0 00000000 */ nop +/* 0C01E4 800BF5E4 460A8400 */ add.s $f16, $f16, $f10 +.L800BF5E8: +/* 0C01E8 800BF5E8 E7B00018 */ swc1 $f16, 0x18($sp) +/* 0C01EC 800BF5EC 944C000C */ lhu $t4, 0xc($v0) +/* 0C01F0 800BF5F0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0C01F4 800BF5F4 448C9000 */ mtc1 $t4, $f18 +/* 0C01F8 800BF5F8 05810004 */ bgez $t4, .L800BF60C +/* 0C01FC 800BF5FC 46809120 */ cvt.s.w $f4, $f18 +/* 0C0200 800BF600 44813000 */ mtc1 $at, $f6 +/* 0C0204 800BF604 00000000 */ nop +/* 0C0208 800BF608 46062100 */ add.s $f4, $f4, $f6 +.L800BF60C: +/* 0C020C 800BF60C 46002221 */ cvt.d.s $f8, $f4 +/* 0C0210 800BF610 46204282 */ mul.d $f10, $f8, $f0 +/* 0C0214 800BF614 AFA30020 */ sw $v1, 0x20($sp) +/* 0C0218 800BF618 46205420 */ cvt.s.d $f16, $f10 +/* 0C021C 800BF61C 0C02FD8D */ jal func_800BF634 +/* 0C0220 800BF620 E7B0001C */ swc1 $f16, 0x1c($sp) +/* 0C0224 800BF624 8FBF002C */ lw $ra, 0x2c($sp) +/* 0C0228 800BF628 27BD0030 */ addiu $sp, $sp, 0x30 +/* 0C022C 800BF62C 03E00008 */ jr $ra +/* 0C0230 800BF630 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800BF634.s b/asm/non_matchings/unknown_0B8920/func_800BF634.s new file mode 100644 index 00000000..bfeb988d --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800BF634.s @@ -0,0 +1,594 @@ +glabel func_800BF634 +/* 0C0234 800BF634 3C03800E */ lui $v1, %hi(D_800E3190) # $v1, 0x800e +/* 0C0238 800BF638 24633190 */ addiu $v1, %lo(D_800E3190) # addiu $v1, $v1, 0x3190 +/* 0C023C 800BF63C 8C6E0000 */ lw $t6, ($v1) +/* 0C0240 800BF640 44856000 */ mtc1 $a1, $f12 +/* 0C0244 800BF644 44877000 */ mtc1 $a3, $f14 +/* 0C0248 800BF648 00803825 */ move $a3, $a0 +/* 0C024C 800BF64C AFA40000 */ sw $a0, ($sp) +/* 0C0250 800BF650 AFA60008 */ sw $a2, 8($sp) +/* 0C0254 800BF654 11C000E5 */ beqz $t6, .L800BF9EC +/* 0C0258 800BF658 00002825 */ move $a1, $zero +/* 0C025C 800BF65C 3C0F800E */ lui $t7, %hi(D_800E3194) # $t7, 0x800e +/* 0C0260 800BF660 8DEF3194 */ lw $t7, %lo(D_800E3194)($t7) +/* 0C0264 800BF664 0000C080 */ sll $t8, $zero, 2 +/* 0C0268 800BF668 00001025 */ move $v0, $zero +/* 0C026C 800BF66C 00002025 */ move $a0, $zero +/* 0C0270 800BF670 01F83021 */ addu $a2, $t7, $t8 +.L800BF674: +/* 0C0274 800BF674 8CD90000 */ lw $t9, ($a2) +/* 0C0278 800BF678 24420001 */ addiu $v0, $v0, 1 +/* 0C027C 800BF67C 17200002 */ bnez $t9, .L800BF688 +/* 0C0280 800BF680 28410020 */ slti $at, $v0, 0x20 +/* 0C0284 800BF684 2404FFFF */ li $a0, -1 +.L800BF688: +/* 0C0288 800BF688 10200003 */ beqz $at, .L800BF698 +/* 0C028C 800BF68C 24C60004 */ addiu $a2, $a2, 4 +/* 0C0290 800BF690 1080FFF8 */ beqz $a0, .L800BF674 +/* 0C0294 800BF694 00000000 */ nop +.L800BF698: +/* 0C0298 800BF698 108000D4 */ beqz $a0, .L800BF9EC +/* 0C029C 800BF69C 2442FFFF */ addiu $v0, $v0, -1 +/* 0C02A0 800BF6A0 3C0B800E */ lui $t3, %hi(D_800E3194) # $t3, 0x800e +/* 0C02A4 800BF6A4 8D6B3194 */ lw $t3, %lo(D_800E3194)($t3) +/* 0C02A8 800BF6A8 00026080 */ sll $t4, $v0, 2 +/* 0C02AC 800BF6AC 3C04800E */ lui $a0, %hi(D_800E3188) # $a0, 0x800e +/* 0C02B0 800BF6B0 016C6821 */ addu $t5, $t3, $t4 +/* 0C02B4 800BF6B4 24843188 */ addiu $a0, %lo(D_800E3188) # addiu $a0, $a0, 0x3188 +/* 0C02B8 800BF6B8 ADA70000 */ sw $a3, ($t5) +/* 0C02BC 800BF6BC 8C8E0000 */ lw $t6, ($a0) +/* 0C02C0 800BF6C0 3C188013 */ lui $t8, %hi(D_80129FF0) # $t8, 0x8013 +/* 0C02C4 800BF6C4 25CF0001 */ addiu $t7, $t6, 1 +/* 0C02C8 800BF6C8 AC8F0000 */ sw $t7, ($a0) +/* 0C02CC 800BF6CC 8F189FF0 */ lw $t8, %lo(D_80129FF0)($t8) +/* 0C02D0 800BF6D0 3C018013 */ lui $at, %hi(D_8012A0B8) # $at, 0x8013 +/* 0C02D4 800BF6D4 C420A0B8 */ lwc1 $f0, %lo(D_8012A0B8)($at) +/* 0C02D8 800BF6D8 13000006 */ beqz $t8, .L800BF6F4 +/* 0C02DC 800BF6DC 3C198013 */ lui $t9, %hi(D_8012A0D0) # $t9, 0x8013 +/* 0C02E0 800BF6E0 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 0C02E4 800BF6E4 44812000 */ mtc1 $at, $f4 +/* 0C02E8 800BF6E8 00000000 */ nop +/* 0C02EC 800BF6EC 46040002 */ mul.s $f0, $f0, $f4 +/* 0C02F0 800BF6F0 00000000 */ nop +.L800BF6F4: +/* 0C02F4 800BF6F4 8F39A0D0 */ lw $t9, %lo(D_8012A0D0)($t9) +/* 0C02F8 800BF6F8 460E6201 */ sub.s $f8, $f12, $f14 +/* 0C02FC 800BF6FC 44993000 */ mtc1 $t9, $f6 +/* 0C0300 800BF700 3C05800E */ lui $a1, %hi(D_800E318C) # $a1, 0x800e +/* 0C0304 800BF704 468030A0 */ cvt.s.w $f2, $f6 +/* 0C0308 800BF708 8CA5318C */ lw $a1, %lo(D_800E318C)($a1) +/* 0C030C 800BF70C 46024281 */ sub.s $f10, $f8, $f2 +/* 0C0310 800BF710 00000000 */ nop +/* 0C0314 800BF714 46005403 */ div.s $f16, $f10, $f0 +/* 0C0318 800BF718 444BF800 */ cfc1 $t3, $31 +/* 0C031C 800BF71C 00000000 */ nop +/* 0C0320 800BF720 35610003 */ ori $at, $t3, 3 +/* 0C0324 800BF724 38210002 */ xori $at, $at, 2 +/* 0C0328 800BF728 44C1F800 */ ctc1 $at, $31 +/* 0C032C 800BF72C 00000000 */ nop +/* 0C0330 800BF730 460084A4 */ cvt.w.s $f18, $f16 +/* 0C0334 800BF734 44049000 */ mfc1 $a0, $f18 +/* 0C0338 800BF738 44CBF800 */ ctc1 $t3, $31 +/* 0C033C 800BF73C 0085082A */ slt $at, $a0, $a1 +/* 0C0340 800BF740 14200003 */ bnez $at, .L800BF750 +/* 0C0344 800BF744 00000000 */ nop +/* 0C0348 800BF748 03E00008 */ jr $ra +/* 0C034C 800BF74C 00001025 */ move $v0, $zero + +.L800BF750: +/* 0C0350 800BF750 460E6100 */ add.s $f4, $f12, $f14 +/* 0C0354 800BF754 46022181 */ sub.s $f6, $f4, $f2 +/* 0C0358 800BF758 00000000 */ nop +/* 0C035C 800BF75C 46003203 */ div.s $f8, $f6, $f0 +/* 0C0360 800BF760 444CF800 */ cfc1 $t4, $31 +/* 0C0364 800BF764 00000000 */ nop +/* 0C0368 800BF768 35810003 */ ori $at, $t4, 3 +/* 0C036C 800BF76C 38210002 */ xori $at, $at, 2 +/* 0C0370 800BF770 44C1F800 */ ctc1 $at, $31 +/* 0C0374 800BF774 00000000 */ nop +/* 0C0378 800BF778 460042A4 */ cvt.w.s $f10, $f8 +/* 0C037C 800BF77C 44065000 */ mfc1 $a2, $f10 +/* 0C0380 800BF780 44CCF800 */ ctc1 $t4, $31 +/* 0C0384 800BF784 04C10003 */ bgez $a2, .L800BF794 +/* 0C0388 800BF788 00C5082A */ slt $at, $a2, $a1 +/* 0C038C 800BF78C 03E00008 */ jr $ra +/* 0C0390 800BF790 00001025 */ move $v0, $zero + +.L800BF794: +/* 0C0394 800BF794 04810002 */ bgez $a0, .L800BF7A0 +/* 0C0398 800BF798 00026180 */ sll $t4, $v0, 6 +/* 0C039C 800BF79C 00002025 */ move $a0, $zero +.L800BF7A0: +/* 0C03A0 800BF7A0 14200002 */ bnez $at, .L800BF7AC +/* 0C03A4 800BF7A4 240A00FF */ li $t2, 255 +/* 0C03A8 800BF7A8 24A6FFFF */ addiu $a2, $a1, -1 +.L800BF7AC: +/* 0C03AC 800BF7AC 00C4082A */ slt $at, $a2, $a0 +/* 0C03B0 800BF7B0 14200017 */ bnez $at, .L800BF810 +/* 0C03B4 800BF7B4 00802825 */ move $a1, $a0 +/* 0C03B8 800BF7B8 3C09800E */ lui $t1, %hi(D_800E3184) # $t1, 0x800e +/* 0C03BC 800BF7BC 25293184 */ addiu $t1, %lo(D_800E3184) # addiu $t1, $t1, 0x3184 +/* 0C03C0 800BF7C0 24C80001 */ addiu $t0, $a2, 1 +.L800BF7C4: +/* 0C03C4 800BF7C4 8D2E0000 */ lw $t6, ($t1) +/* 0C03C8 800BF7C8 000568C0 */ sll $t5, $a1, 3 +/* 0C03CC 800BF7CC 01AE2021 */ addu $a0, $t5, $t6 +/* 0C03D0 800BF7D0 908F0007 */ lbu $t7, 7($a0) +/* 0C03D4 800BF7D4 24A50001 */ addiu $a1, $a1, 1 +/* 0C03D8 800BF7D8 154F000B */ bne $t2, $t7, .L800BF808 +/* 0C03DC 800BF7DC 00000000 */ nop +/* 0C03E0 800BF7E0 90980000 */ lbu $t8, ($a0) +/* 0C03E4 800BF7E4 00003025 */ move $a2, $zero +/* 0C03E8 800BF7E8 11580005 */ beq $t2, $t8, .L800BF800 +/* 0C03EC 800BF7EC 00803825 */ move $a3, $a0 +.L800BF7F0: +/* 0C03F0 800BF7F0 90F90001 */ lbu $t9, 1($a3) +/* 0C03F4 800BF7F4 24C60001 */ addiu $a2, $a2, 1 +/* 0C03F8 800BF7F8 1559FFFD */ bne $t2, $t9, .L800BF7F0 +/* 0C03FC 800BF7FC 24E70001 */ addiu $a3, $a3, 1 +.L800BF800: +/* 0C0400 800BF800 00865821 */ addu $t3, $a0, $a2 +/* 0C0404 800BF804 A1620000 */ sb $v0, ($t3) +.L800BF808: +/* 0C0408 800BF808 1505FFEE */ bne $t0, $a1, .L800BF7C4 +/* 0C040C 800BF80C 00000000 */ nop +.L800BF810: +/* 0C0410 800BF810 C7B00008 */ lwc1 $f16, 8($sp) +/* 0C0414 800BF814 8C6D0000 */ lw $t5, ($v1) +/* 0C0418 800BF818 460E8481 */ sub.s $f18, $f16, $f14 +/* 0C041C 800BF81C 018D2821 */ addu $a1, $t4, $t5 +/* 0C0420 800BF820 E4B20000 */ swc1 $f18, ($a1) +/* 0C0424 800BF824 C7A40008 */ lwc1 $f4, 8($sp) +/* 0C0428 800BF828 E4AC0008 */ swc1 $f12, 8($a1) +/* 0C042C 800BF82C 460E2180 */ add.s $f6, $f4, $f14 +/* 0C0430 800BF830 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 +/* 0C0434 800BF834 E4A60004 */ swc1 $f6, 4($a1) +/* 0C0438 800BF838 460E7282 */ mul.s $f10, $f14, $f14 +/* 0C043C 800BF83C C7A80008 */ lwc1 $f8, 8($sp) +/* 0C0440 800BF840 E4AE0010 */ swc1 $f14, 0x10($a1) +/* 0C0444 800BF844 A4A20018 */ sh $v0, 0x18($a1) +/* 0C0448 800BF848 E4AA0014 */ swc1 $f10, 0x14($a1) +/* 0C044C 800BF84C E4A8000C */ swc1 $f8, 0xc($a1) +/* 0C0450 800BF850 8FAE0010 */ lw $t6, 0x10($sp) +/* 0C0454 800BF854 3C01800F */ lui $at, 0x800f +/* 0C0458 800BF858 A4AE001A */ sh $t6, 0x1a($a1) +/* 0C045C 800BF85C 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) +/* 0C0460 800BF860 C7A00014 */ lwc1 $f0, 0x14($sp) +/* 0C0464 800BF864 15E0002B */ bnez $t7, .L800BF914 +/* 0C0468 800BF868 00000000 */ nop +/* 0C046C 800BF86C 3C01800F */ lui $at, %hi(D_800E92AC) # $at, 0x800f +/* 0C0470 800BF870 C7A00014 */ lwc1 $f0, 0x14($sp) +/* 0C0474 800BF874 C43392A8 */ lwc1 $f19, %lo(D_800E92A8)($at) +/* 0C0478 800BF878 C43292AC */ lwc1 $f18, %lo(D_800E92AC)($at) +/* 0C047C 800BF87C 46000421 */ cvt.d.s $f16, $f0 +/* 0C0480 800BF880 46328102 */ mul.d $f4, $f16, $f18 +/* 0C0484 800BF884 24190001 */ li $t9, 1 +/* 0C0488 800BF888 3C0141E0 */ li $at, 0x41E00000 # 28.000000 +/* 0C048C 800BF88C 4458F800 */ cfc1 $t8, $31 +/* 0C0490 800BF890 44D9F800 */ ctc1 $t9, $31 +/* 0C0494 800BF894 00000000 */ nop +/* 0C0498 800BF898 462021A4 */ cvt.w.d $f6, $f4 +/* 0C049C 800BF89C 4459F800 */ cfc1 $t9, $31 +/* 0C04A0 800BF8A0 00000000 */ nop +/* 0C04A4 800BF8A4 33390078 */ andi $t9, $t9, 0x78 +/* 0C04A8 800BF8A8 13200013 */ beqz $t9, .L800BF8F8 +/* 0C04AC 800BF8AC 00000000 */ nop +/* 0C04B0 800BF8B0 44813800 */ mtc1 $at, $f7 +/* 0C04B4 800BF8B4 44803000 */ mtc1 $zero, $f6 +/* 0C04B8 800BF8B8 24190001 */ li $t9, 1 +/* 0C04BC 800BF8BC 46262181 */ sub.d $f6, $f4, $f6 +/* 0C04C0 800BF8C0 3C018000 */ lui $at, %hi(D_7FFF92B4) # $at, 0x8000 +/* 0C04C4 800BF8C4 44D9F800 */ ctc1 $t9, $31 +/* 0C04C8 800BF8C8 00000000 */ nop +/* 0C04CC 800BF8CC 462031A4 */ cvt.w.d $f6, $f6 +/* 0C04D0 800BF8D0 4459F800 */ cfc1 $t9, $31 +/* 0C04D4 800BF8D4 00000000 */ nop +/* 0C04D8 800BF8D8 33390078 */ andi $t9, $t9, 0x78 +/* 0C04DC 800BF8DC 17200004 */ bnez $t9, .L800BF8F0 +/* 0C04E0 800BF8E0 00000000 */ nop +/* 0C04E4 800BF8E4 44193000 */ mfc1 $t9, $f6 +/* 0C04E8 800BF8E8 10000007 */ b .L800BF908 +/* 0C04EC 800BF8EC 0321C825 */ or $t9, $t9, $at +.L800BF8F0: +/* 0C04F0 800BF8F0 10000005 */ b .L800BF908 +/* 0C04F4 800BF8F4 2419FFFF */ li $t9, -1 +.L800BF8F8: +/* 0C04F8 800BF8F8 44193000 */ mfc1 $t9, $f6 +/* 0C04FC 800BF8FC 00000000 */ nop +/* 0C0500 800BF900 0720FFFB */ bltz $t9, .L800BF8F0 +/* 0C0504 800BF904 00000000 */ nop +.L800BF908: +/* 0C0508 800BF908 44D8F800 */ ctc1 $t8, $31 +/* 0C050C 800BF90C 10000029 */ b .L800BF9B4 +/* 0C0510 800BF910 ACB9001C */ sw $t9, 0x1c($a1) +.L800BF914: +/* 0C0514 800BF914 C42B92B0 */ lwc1 $f11, %lo(D_7FFF92B0)($at) +/* 0C0518 800BF918 C42A92B4 */ lwc1 $f10, %lo(D_7FFF92B4)($at) +/* 0C051C 800BF91C 46000221 */ cvt.d.s $f8, $f0 +/* 0C0520 800BF920 462A4402 */ mul.d $f16, $f8, $f10 +/* 0C0524 800BF924 240C0001 */ li $t4, 1 +/* 0C0528 800BF928 3C0141E0 */ li $at, 0x41E00000 # 28.000000 +/* 0C052C 800BF92C 444BF800 */ cfc1 $t3, $31 +/* 0C0530 800BF930 44CCF800 */ ctc1 $t4, $31 +/* 0C0534 800BF934 00000000 */ nop +/* 0C0538 800BF938 462084A4 */ cvt.w.d $f18, $f16 +/* 0C053C 800BF93C 444CF800 */ cfc1 $t4, $31 +/* 0C0540 800BF940 00000000 */ nop +/* 0C0544 800BF944 318C0078 */ andi $t4, $t4, 0x78 +/* 0C0548 800BF948 11800013 */ beqz $t4, .L800BF998 +/* 0C054C 800BF94C 00000000 */ nop +/* 0C0550 800BF950 44819800 */ mtc1 $at, $f19 +/* 0C0554 800BF954 44809000 */ mtc1 $zero, $f18 +/* 0C0558 800BF958 240C0001 */ li $t4, 1 +/* 0C055C 800BF95C 46328481 */ sub.d $f18, $f16, $f18 +/* 0C0560 800BF960 3C018000 */ lui $at, 0x8000 +/* 0C0564 800BF964 44CCF800 */ ctc1 $t4, $31 +/* 0C0568 800BF968 00000000 */ nop +/* 0C056C 800BF96C 462094A4 */ cvt.w.d $f18, $f18 +/* 0C0570 800BF970 444CF800 */ cfc1 $t4, $31 +/* 0C0574 800BF974 00000000 */ nop +/* 0C0578 800BF978 318C0078 */ andi $t4, $t4, 0x78 +/* 0C057C 800BF97C 15800004 */ bnez $t4, .L800BF990 +/* 0C0580 800BF980 00000000 */ nop +/* 0C0584 800BF984 440C9000 */ mfc1 $t4, $f18 +/* 0C0588 800BF988 10000007 */ b .L800BF9A8 +/* 0C058C 800BF98C 01816025 */ or $t4, $t4, $at +.L800BF990: +/* 0C0590 800BF990 10000005 */ b .L800BF9A8 +/* 0C0594 800BF994 240CFFFF */ li $t4, -1 +.L800BF998: +/* 0C0598 800BF998 440C9000 */ mfc1 $t4, $f18 +/* 0C059C 800BF99C 00000000 */ nop +/* 0C05A0 800BF9A0 0580FFFB */ bltz $t4, .L800BF990 +/* 0C05A4 800BF9A4 00000000 */ nop +.L800BF9A8: +/* 0C05A8 800BF9A8 44CBF800 */ ctc1 $t3, $31 +/* 0C05AC 800BF9AC ACAC001C */ sw $t4, 0x1c($a1) +/* 0C05B0 800BF9B0 00000000 */ nop +.L800BF9B4: +/* 0C05B4 800BF9B4 3C014780 */ li $at, 0x47800000 # 65536.000000 +/* 0C05B8 800BF9B8 C7A20018 */ lwc1 $f2, 0x18($sp) +/* 0C05BC 800BF9BC 44812000 */ mtc1 $at, $f4 +/* 0C05C0 800BF9C0 8FA20020 */ lw $v0, 0x20($sp) +/* 0C05C4 800BF9C4 46022183 */ div.s $f6, $f4, $f2 +/* 0C05C8 800BF9C8 304D0001 */ andi $t5, $v0, 1 +/* 0C05CC 800BF9CC 304E0002 */ andi $t6, $v0, 2 +/* 0C05D0 800BF9D0 E4A60020 */ swc1 $f6, 0x20($a1) +/* 0C05D4 800BF9D4 C7A8001C */ lwc1 $f8, 0x1c($sp) +/* 0C05D8 800BF9D8 E4A00028 */ swc1 $f0, 0x28($a1) +/* 0C05DC 800BF9DC A0AD0030 */ sb $t5, 0x30($a1) +/* 0C05E0 800BF9E0 A0AE0031 */ sb $t6, 0x31($a1) +/* 0C05E4 800BF9E4 E4A2002C */ swc1 $f2, 0x2c($a1) +/* 0C05E8 800BF9E8 E4A80024 */ swc1 $f8, 0x24($a1) +.L800BF9EC: +/* 0C05EC 800BF9EC 00A01025 */ move $v0, $a1 +/* 0C05F0 800BF9F0 03E00008 */ jr $ra +/* 0C05F4 800BF9F4 00000000 */ nop + +/* 0C05F8 800BF9F8 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0C05FC 800BF9FC E7B4000C */ swc1 $f20, 0xc($sp) +/* 0C0600 800BFA00 4486A000 */ mtc1 $a2, $f20 +/* 0C0604 800BFA04 AFB10014 */ sw $s1, 0x14($sp) +/* 0C0608 800BFA08 AFB00010 */ sw $s0, 0x10($sp) +/* 0C060C 800BFA0C E7B50008 */ swc1 $f21, 8($sp) +/* 0C0610 800BFA10 1080008A */ beqz $a0, .L800BFC3C +/* 0C0614 800BFA14 AFA50034 */ sw $a1, 0x34($sp) +/* 0C0618 800BFA18 3C0E8013 */ lui $t6, %hi(D_80129FF0) # $t6, 0x8013 +/* 0C061C 800BFA1C 8DCE9FF0 */ lw $t6, %lo(D_80129FF0)($t6) +/* 0C0620 800BFA20 3C018013 */ lui $at, %hi(D_8012A0B8) # $at, 0x8013 +/* 0C0624 800BFA24 C420A0B8 */ lwc1 $f0, %lo(D_8012A0B8)($at) +/* 0C0628 800BFA28 11C00006 */ beqz $t6, .L800BFA44 +/* 0C062C 800BFA2C 00001025 */ move $v0, $zero +/* 0C0630 800BFA30 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 0C0634 800BFA34 44812000 */ mtc1 $at, $f4 +/* 0C0638 800BFA38 00000000 */ nop +/* 0C063C 800BFA3C 46040002 */ mul.s $f0, $f0, $f4 +/* 0C0640 800BFA40 00000000 */ nop +.L800BFA44: +/* 0C0644 800BFA44 3C0D800E */ lui $t5, %hi(D_800E3184) # $t5, 0x800e +/* 0C0648 800BFA48 3C0C800E */ lui $t4, %hi(D_800E318C) # $t4, 0x800e +/* 0C064C 800BFA4C 3C0B8013 */ lui $t3, %hi(D_8012A0D0) # $t3, 0x8013 +/* 0C0650 800BFA50 94830018 */ lhu $v1, 0x18($a0) +/* 0C0654 800BFA54 8FA8001C */ lw $t0, 0x1c($sp) +/* 0C0658 800BFA58 256BA0D0 */ addiu $t3, %lo(D_8012A0D0) # addiu $t3, $t3, -0x5f30 +/* 0C065C 800BFA5C 258C318C */ addiu $t4, %lo(D_800E318C) # addiu $t4, $t4, 0x318c +/* 0C0660 800BFA60 25AD3184 */ addiu $t5, %lo(D_800E3184) # addiu $t5, $t5, 0x3184 +/* 0C0664 800BFA64 241100FF */ li $s1, 255 +/* 0C0668 800BFA68 241000FF */ li $s0, 255 +.L800BFA6C: +/* 0C066C 800BFA6C 8D6F0000 */ lw $t7, ($t3) +/* 0C0670 800BFA70 C4820008 */ lwc1 $f2, 8($a0) +/* 0C0674 800BFA74 448F3000 */ mtc1 $t7, $f6 +/* 0C0678 800BFA78 C48C0010 */ lwc1 $f12, 0x10($a0) +/* 0C067C 800BFA7C 468033A0 */ cvt.s.w $f14, $f6 +/* 0C0680 800BFA80 8D870000 */ lw $a3, ($t4) +/* 0C0684 800BFA84 24050001 */ li $a1, 1 +/* 0C0688 800BFA88 460C1201 */ sub.s $f8, $f2, $f12 +/* 0C068C 800BFA8C 460E4281 */ sub.s $f10, $f8, $f14 +/* 0C0690 800BFA90 00000000 */ nop +/* 0C0694 800BFA94 46005403 */ div.s $f16, $f10, $f0 +/* 0C0698 800BFA98 4458F800 */ cfc1 $t8, $31 +/* 0C069C 800BFA9C 00000000 */ nop +/* 0C06A0 800BFAA0 37010003 */ ori $at, $t8, 3 +/* 0C06A4 800BFAA4 38210002 */ xori $at, $at, 2 +/* 0C06A8 800BFAA8 44C1F800 */ ctc1 $at, $31 +/* 0C06AC 800BFAAC 00000000 */ nop +/* 0C06B0 800BFAB0 460084A4 */ cvt.w.s $f18, $f16 +/* 0C06B4 800BFAB4 44069000 */ mfc1 $a2, $f18 +/* 0C06B8 800BFAB8 44D8F800 */ ctc1 $t8, $31 +/* 0C06BC 800BFABC 00C7082A */ slt $at, $a2, $a3 +/* 0C06C0 800BFAC0 14200003 */ bnez $at, .L800BFAD0 +/* 0C06C4 800BFAC4 00000000 */ nop +/* 0C06C8 800BFAC8 10000004 */ b .L800BFADC +/* 0C06CC 800BFACC 00002825 */ move $a1, $zero +.L800BFAD0: +/* 0C06D0 800BFAD0 04C10002 */ bgez $a2, .L800BFADC +/* 0C06D4 800BFAD4 00000000 */ nop +/* 0C06D8 800BFAD8 00003025 */ move $a2, $zero +.L800BFADC: +/* 0C06DC 800BFADC 10A00015 */ beqz $a1, .L800BFB34 +/* 0C06E0 800BFAE0 00000000 */ nop +/* 0C06E4 800BFAE4 460C1100 */ add.s $f4, $f2, $f12 +/* 0C06E8 800BFAE8 460E2181 */ sub.s $f6, $f4, $f14 +/* 0C06EC 800BFAEC 00000000 */ nop +/* 0C06F0 800BFAF0 46003203 */ div.s $f8, $f6, $f0 +/* 0C06F4 800BFAF4 4459F800 */ cfc1 $t9, $31 +/* 0C06F8 800BFAF8 00000000 */ nop +/* 0C06FC 800BFAFC 37210003 */ ori $at, $t9, 3 +/* 0C0700 800BFB00 38210002 */ xori $at, $at, 2 +/* 0C0704 800BFB04 44C1F800 */ ctc1 $at, $31 +/* 0C0708 800BFB08 00000000 */ nop +/* 0C070C 800BFB0C 460042A4 */ cvt.w.s $f10, $f8 +/* 0C0710 800BFB10 44085000 */ mfc1 $t0, $f10 +/* 0C0714 800BFB14 44D9F800 */ ctc1 $t9, $31 +/* 0C0718 800BFB18 05010003 */ bgez $t0, .L800BFB28 +/* 0C071C 800BFB1C 0107082A */ slt $at, $t0, $a3 +/* 0C0720 800BFB20 10000004 */ b .L800BFB34 +/* 0C0724 800BFB24 00002825 */ move $a1, $zero +.L800BFB28: +/* 0C0728 800BFB28 14200002 */ bnez $at, .L800BFB34 +/* 0C072C 800BFB2C 00000000 */ nop +/* 0C0730 800BFB30 24E8FFFF */ addiu $t0, $a3, -1 +.L800BFB34: +/* 0C0734 800BFB34 10A0002E */ beqz $a1, .L800BFBF0 +/* 0C0738 800BFB38 0106082A */ slt $at, $t0, $a2 +/* 0C073C 800BFB3C 1420002C */ bnez $at, .L800BFBF0 +/* 0C0740 800BFB40 00C02825 */ move $a1, $a2 +/* 0C0744 800BFB44 250A0001 */ addiu $t2, $t0, 1 +.L800BFB48: +/* 0C0748 800BFB48 8DAF0000 */ lw $t7, ($t5) +/* 0C074C 800BFB4C 000570C0 */ sll $t6, $a1, 3 +/* 0C0750 800BFB50 00003825 */ move $a3, $zero +/* 0C0754 800BFB54 1040000F */ beqz $v0, .L800BFB94 +/* 0C0758 800BFB58 01CF3021 */ addu $a2, $t6, $t7 +/* 0C075C 800BFB5C 90D80007 */ lbu $t8, 7($a2) +/* 0C0760 800BFB60 00000000 */ nop +/* 0C0764 800BFB64 1618001F */ bne $s0, $t8, .L800BFBE4 +/* 0C0768 800BFB68 00000000 */ nop +/* 0C076C 800BFB6C 90D90000 */ lbu $t9, ($a2) +/* 0C0770 800BFB70 00000000 */ nop +/* 0C0774 800BFB74 12190005 */ beq $s0, $t9, .L800BFB8C +/* 0C0778 800BFB78 00000000 */ nop +.L800BFB7C: +/* 0C077C 800BFB7C 90CE0001 */ lbu $t6, 1($a2) +/* 0C0780 800BFB80 24C60001 */ addiu $a2, $a2, 1 +/* 0C0784 800BFB84 160EFFFD */ bne $s0, $t6, .L800BFB7C +/* 0C0788 800BFB88 00000000 */ nop +.L800BFB8C: +/* 0C078C 800BFB8C 10000015 */ b .L800BFBE4 +/* 0C0790 800BFB90 A0C30000 */ sb $v1, ($a2) +.L800BFB94: +/* 0C0794 800BFB94 00C74821 */ addu $t1, $a2, $a3 +.L800BFB98: +/* 0C0798 800BFB98 912F0000 */ lbu $t7, ($t1) +/* 0C079C 800BFB9C 28E10007 */ slti $at, $a3, 7 +/* 0C07A0 800BFBA0 146F000C */ bne $v1, $t7, .L800BFBD4 +/* 0C07A4 800BFBA4 00000000 */ nop +/* 0C07A8 800BFBA8 10200007 */ beqz $at, .L800BFBC8 +/* 0C07AC 800BFBAC 00000000 */ nop +.L800BFBB0: +/* 0C07B0 800BFBB0 91380001 */ lbu $t8, 1($t1) +/* 0C07B4 800BFBB4 24E70001 */ addiu $a3, $a3, 1 +/* 0C07B8 800BFBB8 28E10007 */ slti $at, $a3, 7 +/* 0C07BC 800BFBBC 25290001 */ addiu $t1, $t1, 1 +/* 0C07C0 800BFBC0 1420FFFB */ bnez $at, .L800BFBB0 +/* 0C07C4 800BFBC4 A138FFFF */ sb $t8, -1($t1) +.L800BFBC8: +/* 0C07C8 800BFBC8 A1310000 */ sb $s1, ($t1) +/* 0C07CC 800BFBCC 24E70001 */ addiu $a3, $a3, 1 +/* 0C07D0 800BFBD0 25290001 */ addiu $t1, $t1, 1 +.L800BFBD4: +/* 0C07D4 800BFBD4 24E70001 */ addiu $a3, $a3, 1 +/* 0C07D8 800BFBD8 28E10008 */ slti $at, $a3, 8 +/* 0C07DC 800BFBDC 1420FFEE */ bnez $at, .L800BFB98 +/* 0C07E0 800BFBE0 25290001 */ addiu $t1, $t1, 1 +.L800BFBE4: +/* 0C07E4 800BFBE4 24A50001 */ addiu $a1, $a1, 1 +/* 0C07E8 800BFBE8 1545FFD7 */ bne $t2, $a1, .L800BFB48 +/* 0C07EC 800BFBEC 00000000 */ nop +.L800BFBF0: +/* 0C07F0 800BFBF0 1440000E */ bnez $v0, .L800BFC2C +/* 0C07F4 800BFBF4 24010002 */ li $at, 2 +/* 0C07F8 800BFBF8 C4920008 */ lwc1 $f18, 8($a0) +/* 0C07FC 800BFBFC C7B00034 */ lwc1 $f16, 0x34($sp) +/* 0C0800 800BFC00 C48E000C */ lwc1 $f14, 0xc($a0) +/* 0C0804 800BFC04 46109400 */ add.s $f16, $f18, $f16 +/* 0C0808 800BFC08 C4920000 */ lwc1 $f18, ($a0) +/* 0C080C 800BFC0C C48C0004 */ lwc1 $f12, 4($a0) +/* 0C0810 800BFC10 46147380 */ add.s $f14, $f14, $f20 +/* 0C0814 800BFC14 E4900008 */ swc1 $f16, 8($a0) +/* 0C0818 800BFC18 46149480 */ add.s $f18, $f18, $f20 +/* 0C081C 800BFC1C E48E000C */ swc1 $f14, 0xc($a0) +/* 0C0820 800BFC20 46146300 */ add.s $f12, $f12, $f20 +/* 0C0824 800BFC24 E4920000 */ swc1 $f18, ($a0) +/* 0C0828 800BFC28 E48C0004 */ swc1 $f12, 4($a0) +.L800BFC2C: +/* 0C082C 800BFC2C 24420001 */ addiu $v0, $v0, 1 +/* 0C0830 800BFC30 1441FF8E */ bne $v0, $at, .L800BFA6C +/* 0C0834 800BFC34 00000000 */ nop +/* 0C0838 800BFC38 AFA8001C */ sw $t0, 0x1c($sp) +.L800BFC3C: +/* 0C083C 800BFC3C C7B50008 */ lwc1 $f21, 8($sp) +/* 0C0840 800BFC40 C7B4000C */ lwc1 $f20, 0xc($sp) +/* 0C0844 800BFC44 8FB00010 */ lw $s0, 0x10($sp) +/* 0C0848 800BFC48 8FB10014 */ lw $s1, 0x14($sp) +/* 0C084C 800BFC4C 03E00008 */ jr $ra +/* 0C0850 800BFC50 27BD0030 */ addiu $sp, $sp, 0x30 + +/* 0C0854 800BFC54 44856000 */ mtc1 $a1, $f12 +/* 0C0858 800BFC58 44867000 */ mtc1 $a2, $f14 +/* 0C085C 800BFC5C 1080008C */ beqz $a0, .L800BFE90 +/* 0C0860 800BFC60 AFA7000C */ sw $a3, 0xc($sp) +/* 0C0864 800BFC64 C4840010 */ lwc1 $f4, 0x10($a0) +/* 0C0868 800BFC68 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 0C086C 800BFC6C 460C2180 */ add.s $f6, $f4, $f12 +/* 0C0870 800BFC70 44818800 */ mtc1 $at, $f17 +/* 0C0874 800BFC74 E4860010 */ swc1 $f6, 0x10($a0) +/* 0C0878 800BFC78 C4800010 */ lwc1 $f0, 0x10($a0) +/* 0C087C 800BFC7C 44808000 */ mtc1 $zero, $f16 +/* 0C0880 800BFC80 46000221 */ cvt.d.s $f8, $f0 +/* 0C0884 800BFC84 4630403C */ c.lt.d $f8, $f16 +/* 0C0888 800BFC88 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0C088C 800BFC8C 45000006 */ bc1f .L800BFCA8 +/* 0C0890 800BFC90 00000000 */ nop +/* 0C0894 800BFC94 44815000 */ mtc1 $at, $f10 +/* 0C0898 800BFC98 00000000 */ nop +/* 0C089C 800BFC9C E48A0010 */ swc1 $f10, 0x10($a0) +/* 0C08A0 800BFCA0 C4800010 */ lwc1 $f0, 0x10($a0) +/* 0C08A4 800BFCA4 00000000 */ nop +.L800BFCA8: +/* 0C08A8 800BFCA8 C482000C */ lwc1 $f2, 0xc($a0) +/* 0C08AC 800BFCAC C4860028 */ lwc1 $f6, 0x28($a0) +/* 0C08B0 800BFCB0 46001481 */ sub.s $f18, $f2, $f0 +/* 0C08B4 800BFCB4 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 +/* 0C08B8 800BFCB8 46001100 */ add.s $f4, $f2, $f0 +/* 0C08BC 800BFCBC E4920000 */ swc1 $f18, ($a0) +/* 0C08C0 800BFCC0 460E3200 */ add.s $f8, $f6, $f14 +/* 0C08C4 800BFCC4 E4840004 */ swc1 $f4, 4($a0) +/* 0C08C8 800BFCC8 E4880028 */ swc1 $f8, 0x28($a0) +/* 0C08CC 800BFCCC 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) +/* 0C08D0 800BFCD0 3C01800F */ lui $at, 0x800f +/* 0C08D4 800BFCD4 15C0002B */ bnez $t6, .L800BFD84 +/* 0C08D8 800BFCD8 00000000 */ nop +/* 0C08DC 800BFCDC 3C01800F */ lui $at, %hi(D_800E92BC) # $at, 0x800f +/* 0C08E0 800BFCE0 C48A0028 */ lwc1 $f10, 0x28($a0) +/* 0C08E4 800BFCE4 C42592B8 */ lwc1 $f5, %lo(D_800E92B8)($at) +/* 0C08E8 800BFCE8 C42492BC */ lwc1 $f4, %lo(D_800E92BC)($at) +/* 0C08EC 800BFCEC 460054A1 */ cvt.d.s $f18, $f10 +/* 0C08F0 800BFCF0 46249182 */ mul.d $f6, $f18, $f4 +/* 0C08F4 800BFCF4 24180001 */ li $t8, 1 +/* 0C08F8 800BFCF8 3C0141E0 */ li $at, 0x41E00000 # 28.000000 +/* 0C08FC 800BFCFC 444FF800 */ cfc1 $t7, $31 +/* 0C0900 800BFD00 44D8F800 */ ctc1 $t8, $31 +/* 0C0904 800BFD04 00000000 */ nop +/* 0C0908 800BFD08 46203224 */ cvt.w.d $f8, $f6 +/* 0C090C 800BFD0C 4458F800 */ cfc1 $t8, $31 +/* 0C0910 800BFD10 00000000 */ nop +/* 0C0914 800BFD14 33180078 */ andi $t8, $t8, 0x78 +/* 0C0918 800BFD18 13000013 */ beqz $t8, .L800BFD68 +/* 0C091C 800BFD1C 00000000 */ nop +/* 0C0920 800BFD20 44814800 */ mtc1 $at, $f9 +/* 0C0924 800BFD24 44804000 */ mtc1 $zero, $f8 +/* 0C0928 800BFD28 24180001 */ li $t8, 1 +/* 0C092C 800BFD2C 46283201 */ sub.d $f8, $f6, $f8 +/* 0C0930 800BFD30 3C018000 */ lui $at, %hi(D_7FFF92C4) # $at, 0x8000 +/* 0C0934 800BFD34 44D8F800 */ ctc1 $t8, $31 +/* 0C0938 800BFD38 00000000 */ nop +/* 0C093C 800BFD3C 46204224 */ cvt.w.d $f8, $f8 +/* 0C0940 800BFD40 4458F800 */ cfc1 $t8, $31 +/* 0C0944 800BFD44 00000000 */ nop +/* 0C0948 800BFD48 33180078 */ andi $t8, $t8, 0x78 +/* 0C094C 800BFD4C 17000004 */ bnez $t8, .L800BFD60 +/* 0C0950 800BFD50 00000000 */ nop +/* 0C0954 800BFD54 44184000 */ mfc1 $t8, $f8 +/* 0C0958 800BFD58 10000007 */ b .L800BFD78 +/* 0C095C 800BFD5C 0301C025 */ or $t8, $t8, $at +.L800BFD60: +/* 0C0960 800BFD60 10000005 */ b .L800BFD78 +/* 0C0964 800BFD64 2418FFFF */ li $t8, -1 +.L800BFD68: +/* 0C0968 800BFD68 44184000 */ mfc1 $t8, $f8 +/* 0C096C 800BFD6C 00000000 */ nop +/* 0C0970 800BFD70 0700FFFB */ bltz $t8, .L800BFD60 +/* 0C0974 800BFD74 00000000 */ nop +.L800BFD78: +/* 0C0978 800BFD78 44CFF800 */ ctc1 $t7, $31 +/* 0C097C 800BFD7C 1000002A */ b .L800BFE28 +/* 0C0980 800BFD80 AC98001C */ sw $t8, 0x1c($a0) +.L800BFD84: +/* 0C0984 800BFD84 C48A0028 */ lwc1 $f10, 0x28($a0) +/* 0C0988 800BFD88 C42592C0 */ lwc1 $f5, %lo(D_7FFF92C0)($at) +/* 0C098C 800BFD8C C42492C4 */ lwc1 $f4, %lo(D_7FFF92C4)($at) +/* 0C0990 800BFD90 460054A1 */ cvt.d.s $f18, $f10 +/* 0C0994 800BFD94 46249182 */ mul.d $f6, $f18, $f4 +/* 0C0998 800BFD98 24080001 */ li $t0, 1 +/* 0C099C 800BFD9C 3C0141E0 */ li $at, 0x41E00000 # 28.000000 +/* 0C09A0 800BFDA0 4459F800 */ cfc1 $t9, $31 +/* 0C09A4 800BFDA4 44C8F800 */ ctc1 $t0, $31 +/* 0C09A8 800BFDA8 00000000 */ nop +/* 0C09AC 800BFDAC 46203224 */ cvt.w.d $f8, $f6 +/* 0C09B0 800BFDB0 4448F800 */ cfc1 $t0, $31 +/* 0C09B4 800BFDB4 00000000 */ nop +/* 0C09B8 800BFDB8 31080078 */ andi $t0, $t0, 0x78 +/* 0C09BC 800BFDBC 11000013 */ beqz $t0, .L800BFE0C +/* 0C09C0 800BFDC0 00000000 */ nop +/* 0C09C4 800BFDC4 44814800 */ mtc1 $at, $f9 +/* 0C09C8 800BFDC8 44804000 */ mtc1 $zero, $f8 +/* 0C09CC 800BFDCC 24080001 */ li $t0, 1 +/* 0C09D0 800BFDD0 46283201 */ sub.d $f8, $f6, $f8 +/* 0C09D4 800BFDD4 3C018000 */ lui $at, 0x8000 +/* 0C09D8 800BFDD8 44C8F800 */ ctc1 $t0, $31 +/* 0C09DC 800BFDDC 00000000 */ nop +/* 0C09E0 800BFDE0 46204224 */ cvt.w.d $f8, $f8 +/* 0C09E4 800BFDE4 4448F800 */ cfc1 $t0, $31 +/* 0C09E8 800BFDE8 00000000 */ nop +/* 0C09EC 800BFDEC 31080078 */ andi $t0, $t0, 0x78 +/* 0C09F0 800BFDF0 15000004 */ bnez $t0, .L800BFE04 +/* 0C09F4 800BFDF4 00000000 */ nop +/* 0C09F8 800BFDF8 44084000 */ mfc1 $t0, $f8 +/* 0C09FC 800BFDFC 10000007 */ b .L800BFE1C +/* 0C0A00 800BFE00 01014025 */ or $t0, $t0, $at +.L800BFE04: +/* 0C0A04 800BFE04 10000005 */ b .L800BFE1C +/* 0C0A08 800BFE08 2408FFFF */ li $t0, -1 +.L800BFE0C: +/* 0C0A0C 800BFE0C 44084000 */ mfc1 $t0, $f8 +/* 0C0A10 800BFE10 00000000 */ nop +/* 0C0A14 800BFE14 0500FFFB */ bltz $t0, .L800BFE04 +/* 0C0A18 800BFE18 00000000 */ nop +.L800BFE1C: +/* 0C0A1C 800BFE1C 44D9F800 */ ctc1 $t9, $31 +/* 0C0A20 800BFE20 AC88001C */ sw $t0, 0x1c($a0) +/* 0C0A24 800BFE24 00000000 */ nop +.L800BFE28: +/* 0C0A28 800BFE28 C48A002C */ lwc1 $f10, 0x2c($a0) +/* 0C0A2C 800BFE2C C7B2000C */ lwc1 $f18, 0xc($sp) +/* 0C0A30 800BFE30 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0C0A34 800BFE34 46125100 */ add.s $f4, $f10, $f18 +/* 0C0A38 800BFE38 E484002C */ swc1 $f4, 0x2c($a0) +/* 0C0A3C 800BFE3C C480002C */ lwc1 $f0, 0x2c($a0) +/* 0C0A40 800BFE40 00000000 */ nop +/* 0C0A44 800BFE44 460001A1 */ cvt.d.s $f6, $f0 +/* 0C0A48 800BFE48 4630303C */ c.lt.d $f6, $f16 +/* 0C0A4C 800BFE4C 00000000 */ nop +/* 0C0A50 800BFE50 45000006 */ bc1f .L800BFE6C +/* 0C0A54 800BFE54 00000000 */ nop +/* 0C0A58 800BFE58 44814000 */ mtc1 $at, $f8 +/* 0C0A5C 800BFE5C 00000000 */ nop +/* 0C0A60 800BFE60 E488002C */ swc1 $f8, 0x2c($a0) +/* 0C0A64 800BFE64 C480002C */ lwc1 $f0, 0x2c($a0) +/* 0C0A68 800BFE68 00000000 */ nop +.L800BFE6C: +/* 0C0A6C 800BFE6C 3C014780 */ li $at, 0x47800000 # 65536.000000 +/* 0C0A70 800BFE70 44815000 */ mtc1 $at, $f10 +/* 0C0A74 800BFE74 C4840024 */ lwc1 $f4, 0x24($a0) +/* 0C0A78 800BFE78 46005483 */ div.s $f18, $f10, $f0 +/* 0C0A7C 800BFE7C E4920020 */ swc1 $f18, 0x20($a0) +/* 0C0A80 800BFE80 C7A60010 */ lwc1 $f6, 0x10($sp) +/* 0C0A84 800BFE84 00000000 */ nop +/* 0C0A88 800BFE88 46062200 */ add.s $f8, $f4, $f6 +/* 0C0A8C 800BFE8C E4880024 */ swc1 $f8, 0x24($a0) +.L800BFE90: +/* 0C0A90 800BFE90 03E00008 */ jr $ra +/* 0C0A94 800BFE94 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800BFE98.s b/asm/non_matchings/unknown_0B8920/func_800BFE98.s new file mode 100644 index 00000000..c66aa29e --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800BFE98.s @@ -0,0 +1,88 @@ +glabel func_800BFE98 +/* 0C0A98 800BFE98 3C09800E */ lui $t1, %hi(D_800E3190) # $t1, 0x800e +/* 0C0A9C 800BFE9C 3C08800E */ lui $t0, %hi(D_800E3194) # $t0, 0x800e +/* 0C0AA0 800BFEA0 00803825 */ move $a3, $a0 +/* 0C0AA4 800BFEA4 25083194 */ addiu $t0, %lo(D_800E3194) # addiu $t0, $t0, 0x3194 +/* 0C0AA8 800BFEA8 25293190 */ addiu $t1, %lo(D_800E3190) # addiu $t1, $t1, 0x3190 +/* 0C0AAC 800BFEAC 00001025 */ move $v0, $zero +/* 0C0AB0 800BFEB0 00001825 */ move $v1, $zero +/* 0C0AB4 800BFEB4 240A0020 */ li $t2, 32 +.L800BFEB8: +/* 0C0AB8 800BFEB8 8D0E0000 */ lw $t6, ($t0) +/* 0C0ABC 800BFEBC 00000000 */ nop +/* 0C0AC0 800BFEC0 01C32021 */ addu $a0, $t6, $v1 +/* 0C0AC4 800BFEC4 8C8F0000 */ lw $t7, ($a0) +/* 0C0AC8 800BFEC8 00000000 */ nop +/* 0C0ACC 800BFECC 11E0000E */ beqz $t7, .L800BFF08 +/* 0C0AD0 800BFED0 00000000 */ nop +/* 0C0AD4 800BFED4 8D380000 */ lw $t8, ($t1) +/* 0C0AD8 800BFED8 0002C980 */ sll $t9, $v0, 6 +/* 0C0ADC 800BFEDC 03193021 */ addu $a2, $t8, $t9 +/* 0C0AE0 800BFEE0 8CCB001C */ lw $t3, 0x1c($a2) +/* 0C0AE4 800BFEE4 94CC001A */ lhu $t4, 0x1a($a2) +/* 0C0AE8 800BFEE8 01670019 */ multu $t3, $a3 +/* 0C0AEC 800BFEEC 00002812 */ mflo $a1 +/* 0C0AF0 800BFEF0 00056902 */ srl $t5, $a1, 4 +/* 0C0AF4 800BFEF4 018D7021 */ addu $t6, $t4, $t5 +/* 0C0AF8 800BFEF8 A4CE001A */ sh $t6, 0x1a($a2) +/* 0C0AFC 800BFEFC 8D0F0000 */ lw $t7, ($t0) +/* 0C0B00 800BFF00 00000000 */ nop +/* 0C0B04 800BFF04 01E32021 */ addu $a0, $t7, $v1 +.L800BFF08: +/* 0C0B08 800BFF08 8C980004 */ lw $t8, 4($a0) +/* 0C0B0C 800BFF0C 00000000 */ nop +/* 0C0B10 800BFF10 1300000E */ beqz $t8, .L800BFF4C +/* 0C0B14 800BFF14 00000000 */ nop +/* 0C0B18 800BFF18 8D390000 */ lw $t9, ($t1) +/* 0C0B1C 800BFF1C 00025980 */ sll $t3, $v0, 6 +/* 0C0B20 800BFF20 032B3021 */ addu $a2, $t9, $t3 +/* 0C0B24 800BFF24 8CCC005C */ lw $t4, 0x5c($a2) +/* 0C0B28 800BFF28 94CD005A */ lhu $t5, 0x5a($a2) +/* 0C0B2C 800BFF2C 01870019 */ multu $t4, $a3 +/* 0C0B30 800BFF30 00002812 */ mflo $a1 +/* 0C0B34 800BFF34 00057102 */ srl $t6, $a1, 4 +/* 0C0B38 800BFF38 01AE7821 */ addu $t7, $t5, $t6 +/* 0C0B3C 800BFF3C A4CF005A */ sh $t7, 0x5a($a2) +/* 0C0B40 800BFF40 8D180000 */ lw $t8, ($t0) +/* 0C0B44 800BFF44 00000000 */ nop +/* 0C0B48 800BFF48 03032021 */ addu $a0, $t8, $v1 +.L800BFF4C: +/* 0C0B4C 800BFF4C 8C990008 */ lw $t9, 8($a0) +/* 0C0B50 800BFF50 00000000 */ nop +/* 0C0B54 800BFF54 1320000E */ beqz $t9, .L800BFF90 +/* 0C0B58 800BFF58 00000000 */ nop +/* 0C0B5C 800BFF5C 8D2B0000 */ lw $t3, ($t1) +/* 0C0B60 800BFF60 00026180 */ sll $t4, $v0, 6 +/* 0C0B64 800BFF64 016C3021 */ addu $a2, $t3, $t4 +/* 0C0B68 800BFF68 8CCD009C */ lw $t5, 0x9c($a2) +/* 0C0B6C 800BFF6C 94CE009A */ lhu $t6, 0x9a($a2) +/* 0C0B70 800BFF70 01A70019 */ multu $t5, $a3 +/* 0C0B74 800BFF74 00002812 */ mflo $a1 +/* 0C0B78 800BFF78 00057902 */ srl $t7, $a1, 4 +/* 0C0B7C 800BFF7C 01CFC021 */ addu $t8, $t6, $t7 +/* 0C0B80 800BFF80 A4D8009A */ sh $t8, 0x9a($a2) +/* 0C0B84 800BFF84 8D190000 */ lw $t9, ($t0) +/* 0C0B88 800BFF88 00000000 */ nop +/* 0C0B8C 800BFF8C 03232021 */ addu $a0, $t9, $v1 +.L800BFF90: +/* 0C0B90 800BFF90 8C8B000C */ lw $t3, 0xc($a0) +/* 0C0B94 800BFF94 00000000 */ nop +/* 0C0B98 800BFF98 1160000B */ beqz $t3, .L800BFFC8 +/* 0C0B9C 800BFF9C 00000000 */ nop +/* 0C0BA0 800BFFA0 8D2C0000 */ lw $t4, ($t1) +/* 0C0BA4 800BFFA4 00026980 */ sll $t5, $v0, 6 +/* 0C0BA8 800BFFA8 018D3021 */ addu $a2, $t4, $t5 +/* 0C0BAC 800BFFAC 8CCE00DC */ lw $t6, 0xdc($a2) +/* 0C0BB0 800BFFB0 94CF00DA */ lhu $t7, 0xda($a2) +/* 0C0BB4 800BFFB4 01C70019 */ multu $t6, $a3 +/* 0C0BB8 800BFFB8 00002812 */ mflo $a1 +/* 0C0BBC 800BFFBC 0005C102 */ srl $t8, $a1, 4 +/* 0C0BC0 800BFFC0 01F8C821 */ addu $t9, $t7, $t8 +/* 0C0BC4 800BFFC4 A4D900DA */ sh $t9, 0xda($a2) +.L800BFFC8: +/* 0C0BC8 800BFFC8 24420004 */ addiu $v0, $v0, 4 +/* 0C0BCC 800BFFCC 144AFFBA */ bne $v0, $t2, .L800BFEB8 +/* 0C0BD0 800BFFD0 24630010 */ addiu $v1, $v1, 0x10 +/* 0C0BD4 800BFFD4 03E00008 */ jr $ra +/* 0C0BD8 800BFFD8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800BFFDC.s b/asm/non_matchings/unknown_0B8920/func_800BFFDC.s new file mode 100644 index 00000000..d132afbc --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800BFFDC.s @@ -0,0 +1,111 @@ +glabel func_800BFFDC +/* 0C0BDC 800BFFDC 3C0E800E */ lui $t6, %hi(D_800E3198) # $t6, 0x800e +/* 0C0BE0 800BFFE0 8DCE3198 */ lw $t6, %lo(D_800E3198)($t6) +/* 0C0BE4 800BFFE4 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 0C0BE8 800BFFE8 AFB00018 */ sw $s0, 0x18($sp) +/* 0C0BEC 800BFFEC 00808025 */ move $s0, $a0 +/* 0C0BF0 800BFFF0 108E005B */ beq $a0, $t6, .L800C0160 +/* 0C0BF4 800BFFF4 AFBF001C */ sw $ra, 0x1c($sp) +/* 0C0BF8 800BFFF8 0C006E9D */ jal func_8001BA74 +/* 0C0BFC 800BFFFC 27A40050 */ addiu $a0, $sp, 0x50 +/* 0C0C00 800C0000 8FA50050 */ lw $a1, 0x50($sp) +/* 0C0C04 800C0004 00000000 */ nop +/* 0C0C08 800C0008 18A00056 */ blez $a1, .L800C0164 +/* 0C0C0C 800C000C 8FBF001C */ lw $ra, 0x1c($sp) +/* 0C0C10 800C0010 18A00012 */ blez $a1, .L800C005C +/* 0C0C14 800C0014 00003025 */ move $a2, $zero +/* 0C0C18 800C0018 00057880 */ sll $t7, $a1, 2 +/* 0C0C1C 800C001C 0000C080 */ sll $t8, $zero, 2 +/* 0C0C20 800C0020 00581821 */ addu $v1, $v0, $t8 +/* 0C0C24 800C0024 01E23821 */ addu $a3, $t7, $v0 +.L800C0028: +/* 0C0C28 800C0028 8C650000 */ lw $a1, ($v1) +/* 0C0C2C 800C002C 24630004 */ addiu $v1, $v1, 4 +/* 0C0C30 800C0030 8CA40064 */ lw $a0, 0x64($a1) +/* 0C0C34 800C0034 0067082B */ sltu $at, $v1, $a3 +/* 0C0C38 800C0038 84990000 */ lh $t9, ($a0) +/* 0C0C3C 800C003C 00000000 */ nop +/* 0C0C40 800C0040 17200002 */ bnez $t9, .L800C004C +/* 0C0C44 800C0044 00000000 */ nop +/* 0C0C48 800C0048 00A03025 */ move $a2, $a1 +.L800C004C: +/* 0C0C4C 800C004C 10200003 */ beqz $at, .L800C005C +/* 0C0C50 800C0050 00000000 */ nop +/* 0C0C54 800C0054 10C0FFF4 */ beqz $a2, .L800C0028 +/* 0C0C58 800C0058 00000000 */ nop +.L800C005C: +/* 0C0C5C 800C005C 10C00041 */ beqz $a2, .L800C0164 +/* 0C0C60 800C0060 8FBF001C */ lw $ra, 0x1c($sp) +/* 0C0C64 800C0064 8E02003C */ lw $v0, 0x3c($s0) +/* 0C0C68 800C0068 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0C0C6C 800C006C 94480008 */ lhu $t0, 8($v0) +/* 0C0C70 800C0070 3C038013 */ lui $v1, %hi(D_8012A720) # $v1, 0x8013 +/* 0C0C74 800C0074 44882000 */ mtc1 $t0, $f4 +/* 0C0C78 800C0078 05010004 */ bgez $t0, .L800C008C +/* 0C0C7C 800C007C 46802020 */ cvt.s.w $f0, $f4 +/* 0C0C80 800C0080 44813000 */ mtc1 $at, $f6 +/* 0C0C84 800C0084 00000000 */ nop +/* 0C0C88 800C0088 46060000 */ add.s $f0, $f0, $f6 +.L800C008C: +/* 0C0C8C 800C008C C4C8000C */ lwc1 $f8, 0xc($a2) +/* 0C0C90 800C0090 C60A000C */ lwc1 $f10, 0xc($s0) +/* 0C0C94 800C0094 46000002 */ mul.s $f0, $f0, $f0 +/* 0C0C98 800C0098 460A4081 */ sub.s $f2, $f8, $f10 +/* 0C0C9C 800C009C C4D00010 */ lwc1 $f16, 0x10($a2) +/* 0C0CA0 800C00A0 C6120010 */ lwc1 $f18, 0x10($s0) +/* 0C0CA4 800C00A4 46021202 */ mul.s $f8, $f2, $f2 +/* 0C0CA8 800C00A8 46128301 */ sub.s $f12, $f16, $f18 +/* 0C0CAC 800C00AC C4C40014 */ lwc1 $f4, 0x14($a2) +/* 0C0CB0 800C00B0 C6060014 */ lwc1 $f6, 0x14($s0) +/* 0C0CB4 800C00B4 460C6282 */ mul.s $f10, $f12, $f12 +/* 0C0CB8 800C00B8 46062381 */ sub.s $f14, $f4, $f6 +/* 0C0CBC 800C00BC 460E7482 */ mul.s $f18, $f14, $f14 +/* 0C0CC0 800C00C0 460A4400 */ add.s $f16, $f8, $f10 +/* 0C0CC4 800C00C4 46128100 */ add.s $f4, $f16, $f18 +/* 0C0CC8 800C00C8 4600203C */ c.lt.s $f4, $f0 +/* 0C0CCC 800C00CC 00000000 */ nop +/* 0C0CD0 800C00D0 45000024 */ bc1f .L800C0164 +/* 0C0CD4 800C00D4 8FBF001C */ lw $ra, 0x1c($sp) +/* 0C0CD8 800C00D8 9449000A */ lhu $t1, 0xa($v0) +/* 0C0CDC 800C00DC 2463A720 */ addiu $v1, %lo(D_8012A720) # addiu $v1, $v1, -0x58e0 +/* 0C0CE0 800C00E0 44893000 */ mtc1 $t1, $f6 +/* 0C0CE4 800C00E4 05210005 */ bgez $t1, .L800C00FC +/* 0C0CE8 800C00E8 46803220 */ cvt.s.w $f8, $f6 +/* 0C0CEC 800C00EC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0C0CF0 800C00F0 44815000 */ mtc1 $at, $f10 +/* 0C0CF4 800C00F4 00000000 */ nop +/* 0C0CF8 800C00F8 460A4200 */ add.s $f8, $f8, $f10 +.L800C00FC: +/* 0C0CFC 800C00FC 3C013B80 */ li $at, 0x3B800000 # 0.003906 +/* 0C0D00 800C0100 44818000 */ mtc1 $at, $f16 +/* 0C0D04 800C0104 3C018013 */ lui $at, %hi(D_8012A008) # $at, 0x8013 +/* 0C0D08 800C0108 46104482 */ mul.s $f18, $f8, $f16 +/* 0C0D0C 800C010C E4720000 */ swc1 $f18, ($v1) +/* 0C0D10 800C0110 944A000C */ lhu $t2, 0xc($v0) +/* 0C0D14 800C0114 C426A008 */ lwc1 $f6, %lo(D_8012A008)($at) +/* 0C0D18 800C0118 C4640000 */ lwc1 $f4, ($v1) +/* 0C0D1C 800C011C 448A4000 */ mtc1 $t2, $f8 +/* 0C0D20 800C0120 46062281 */ sub.s $f10, $f4, $f6 +/* 0C0D24 800C0124 05410005 */ bgez $t2, .L800C013C +/* 0C0D28 800C0128 46804420 */ cvt.s.w $f16, $f8 +/* 0C0D2C 800C012C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0C0D30 800C0130 44819000 */ mtc1 $at, $f18 +/* 0C0D34 800C0134 00000000 */ nop +/* 0C0D38 800C0138 46128400 */ add.s $f16, $f16, $f18 +.L800C013C: +/* 0C0D3C 800C013C 00000000 */ nop +/* 0C0D40 800C0140 46105103 */ div.s $f4, $f10, $f16 +/* 0C0D44 800C0144 3C018013 */ lui $at, %hi(D_8012A724) # $at, 0x8013 +/* 0C0D48 800C0148 E424A724 */ swc1 $f4, %lo(D_8012A724)($at) +/* 0C0D4C 800C014C 944B000C */ lhu $t3, 0xc($v0) +/* 0C0D50 800C0150 3C018013 */ lui $at, %hi(D_8012A728) # $at, 0x8013 +/* 0C0D54 800C0154 AC2BA728 */ sw $t3, %lo(D_8012A728)($at) +/* 0C0D58 800C0158 3C01800E */ lui $at, %hi(D_800E3198) # $at, 0x800e +/* 0C0D5C 800C015C AC303198 */ sw $s0, %lo(D_800E3198)($at) +.L800C0160: +/* 0C0D60 800C0160 8FBF001C */ lw $ra, 0x1c($sp) +.L800C0164: +/* 0C0D64 800C0164 8FB00018 */ lw $s0, 0x18($sp) +/* 0C0D68 800C0168 03E00008 */ jr $ra +/* 0C0D6C 800C016C 27BD0058 */ addiu $sp, $sp, 0x58 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C0170.s b/asm/non_matchings/unknown_0B8920/func_800C0170.s new file mode 100644 index 00000000..27874465 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C0170.s @@ -0,0 +1,6 @@ +glabel func_800C0170 +/* 0C0D70 800C0170 240E0001 */ li $t6, 1 +/* 0C0D74 800C0174 3C01800E */ lui $at, 0x800e +/* 0C0D78 800C0178 03E00008 */ jr $ra +/* 0C0D7C 800C017C AC2E31A0 */ sw $t6, 0x31a0($at) + diff --git a/asm/non_matchings/unknown_0B8920/func_800C0180.s b/asm/non_matchings/unknown_0B8920/func_800C0180.s new file mode 100644 index 00000000..b3b48dad --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C0180.s @@ -0,0 +1,5 @@ +glabel func_800C0180 +/* 0C0D80 800C0180 3C01800E */ lui $at, 0x800e +/* 0C0D84 800C0184 03E00008 */ jr $ra +/* 0C0D88 800C0188 AC2031A0 */ sw $zero, 0x31a0($at) + diff --git a/asm/non_matchings/unknown_0B8920/func_800C018C.s b/asm/non_matchings/unknown_0B8920/func_800C018C.s new file mode 100644 index 00000000..785c21ea --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C018C.s @@ -0,0 +1,22 @@ +glabel func_800C018C +/* 0C0D8C 800C018C 3C02800E */ lui $v0, %hi(D_800E31B0) # $v0, 0x800e +/* 0C0D90 800C0190 944231B0 */ lhu $v0, %lo(D_800E31B0)($v0) +/* 0C0D94 800C0194 00000000 */ nop +/* 0C0D98 800C0198 0002702B */ sltu $t6, $zero, $v0 +/* 0C0D9C 800C019C 15C0000C */ bnez $t6, .L800C01D0 +/* 0C0DA0 800C01A0 01C01025 */ move $v0, $t6 +/* 0C0DA4 800C01A4 3C02800E */ lui $v0, %hi(D_800E31B4) # $v0, 0x800e +/* 0C0DA8 800C01A8 944231B4 */ lhu $v0, %lo(D_800E31B4)($v0) +/* 0C0DAC 800C01AC 00000000 */ nop +/* 0C0DB0 800C01B0 0002782B */ sltu $t7, $zero, $v0 +/* 0C0DB4 800C01B4 11E00006 */ beqz $t7, .L800C01D0 +/* 0C0DB8 800C01B8 01E01025 */ move $v0, $t7 +/* 0C0DBC 800C01BC 3C02800E */ lui $v0, %hi(D_800E31BC) # $v0, 0x800e +/* 0C0DC0 800C01C0 804231BC */ lb $v0, %lo(D_800E31BC)($v0) +/* 0C0DC4 800C01C4 00000000 */ nop +/* 0C0DC8 800C01C8 0002C02B */ sltu $t8, $zero, $v0 +/* 0C0DCC 800C01CC 03001025 */ move $v0, $t8 +.L800C01D0: +/* 0C0DD0 800C01D0 03E00008 */ jr $ra +/* 0C0DD4 800C01D4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C01D8.s b/asm/non_matchings/unknown_0B8920/func_800C01D8.s new file mode 100644 index 00000000..15ce5615 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C01D8.s @@ -0,0 +1,182 @@ +glabel func_800C01D8 +/* 0C0DD8 800C01D8 3C0E800E */ lui $t6, %hi(D_800E31A0) # $t6, 0x800e +/* 0C0DDC 800C01DC 8DCE31A0 */ lw $t6, %lo(D_800E31A0)($t6) +/* 0C0DE0 800C01E0 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0C0DE4 800C01E4 11C00003 */ beqz $t6, .L800C01F4 +/* 0C0DE8 800C01E8 AFBF002C */ sw $ra, 0x2c($sp) +/* 0C0DEC 800C01EC 100000A5 */ b .L800C0484 +/* 0C0DF0 800C01F0 00001025 */ move $v0, $zero +.L800C01F4: +/* 0C0DF4 800C01F4 0C0301C9 */ jal func_800C0724 +/* 0C0DF8 800C01F8 AFA40030 */ sw $a0, 0x30($sp) +/* 0C0DFC 800C01FC 8FA40030 */ lw $a0, 0x30($sp) +/* 0C0E00 800C0200 3C03800E */ lui $v1, %hi(D_800E31BC) # $v1, 0x800e +/* 0C0E04 800C0204 14800003 */ bnez $a0, .L800C0214 +/* 0C0E08 800C0208 246331BC */ addiu $v1, %lo(D_800E31BC) # addiu $v1, $v1, 0x31bc +/* 0C0E0C 800C020C 1000009D */ b .L800C0484 +/* 0C0E10 800C0210 00001025 */ move $v0, $zero +.L800C0214: +/* 0C0E14 800C0214 948F0004 */ lhu $t7, 4($a0) +/* 0C0E18 800C0218 3C06800E */ lui $a2, %hi(D_800E31B0) # $a2, 0x800e +/* 0C0E1C 800C021C 24C631B0 */ addiu $a2, %lo(D_800E31B0) # addiu $a2, $a2, 0x31b0 +/* 0C0E20 800C0220 A4CF0000 */ sh $t7, ($a2) +/* 0C0E24 800C0224 94980004 */ lhu $t8, 4($a0) +/* 0C0E28 800C0228 3C01800E */ lui $at, %hi(D_800E31B8) # $at, 0x800e +/* 0C0E2C 800C022C A43831B8 */ sh $t8, %lo(D_800E31B8)($at) +/* 0C0E30 800C0230 94990006 */ lhu $t9, 6($a0) +/* 0C0E34 800C0234 3C01800E */ lui $at, %hi(D_800E31B4) # $at, 0x800e +/* 0C0E38 800C0238 A43931B4 */ sh $t9, %lo(D_800E31B4)($at) +/* 0C0E3C 800C023C 90820000 */ lbu $v0, ($a0) +/* 0C0E40 800C0240 3C078013 */ lui $a3, %hi(D_8012A730) # $a3, 0x8013 +/* 0C0E44 800C0244 30480080 */ andi $t0, $v0, 0x80 +/* 0C0E48 800C0248 2D090001 */ sltiu $t1, $t0, 1 +/* 0C0E4C 800C024C A0690000 */ sb $t1, ($v1) +/* 0C0E50 800C0250 908A0000 */ lbu $t2, ($a0) +/* 0C0E54 800C0254 24E7A730 */ addiu $a3, %lo(D_8012A730) # addiu $a3, $a3, -0x58d0 +/* 0C0E58 800C0258 314B003F */ andi $t3, $t2, 0x3f +/* 0C0E5C 800C025C ACEB0000 */ sw $t3, ($a3) +/* 0C0E60 800C0260 908C0000 */ lbu $t4, ($a0) +/* 0C0E64 800C0264 3C01800E */ lui $at, %hi(D_800E31A8) # $at, 0x800e +/* 0C0E68 800C0268 318D0040 */ andi $t5, $t4, 0x40 +/* 0C0E6C 800C026C AC2D31A8 */ sw $t5, %lo(D_800E31A8)($at) +/* 0C0E70 800C0270 806E0000 */ lb $t6, ($v1) +/* 0C0E74 800C0274 3C05800E */ lui $a1, %hi(D_800E31A4) # $a1, 0x800e +/* 0C0E78 800C0278 24A531A4 */ addiu $a1, %lo(D_800E31A4) # addiu $a1, $a1, 0x31a4 +/* 0C0E7C 800C027C 15C00003 */ bnez $t6, .L800C028C +/* 0C0E80 800C0280 ACA00000 */ sw $zero, ($a1) +/* 0C0E84 800C0284 24180002 */ li $t8, 2 +/* 0C0E88 800C0288 ACB80000 */ sw $t8, ($a1) +.L800C028C: +/* 0C0E8C 800C028C 94D90000 */ lhu $t9, ($a2) +/* 0C0E90 800C0290 3C028013 */ lui $v0, %hi(D_8012A734) # $v0, 0x8013 +/* 0C0E94 800C0294 1B200078 */ blez $t9, .L800C0478 +/* 0C0E98 800C0298 2442A734 */ addiu $v0, %lo(D_8012A734) # addiu $v0, $v0, -0x58cc +/* 0C0E9C 800C029C 90480000 */ lbu $t0, ($v0) +/* 0C0EA0 800C02A0 3C038013 */ lui $v1, %hi(D_8012A735) # $v1, 0x8013 +/* 0C0EA4 800C02A4 3C018013 */ lui $at, %hi(D_8012A738) # $at, 0x8013 +/* 0C0EA8 800C02A8 2463A735 */ addiu $v1, %lo(D_8012A735) # addiu $v1, $v1, -0x58cb +/* 0C0EAC 800C02AC AC28A738 */ sw $t0, %lo(D_8012A738)($at) +/* 0C0EB0 800C02B0 90690000 */ lbu $t1, ($v1) +/* 0C0EB4 800C02B4 3C058013 */ lui $a1, %hi(D_8012A736) # $a1, 0x8013 +/* 0C0EB8 800C02B8 3C018013 */ lui $at, %hi(D_8012A73C) # $at, 0x8013 +/* 0C0EBC 800C02BC 24A5A736 */ addiu $a1, %lo(D_8012A736) # addiu $a1, $a1, -0x58ca +/* 0C0EC0 800C02C0 AC29A73C */ sw $t1, %lo(D_8012A73C)($at) +/* 0C0EC4 800C02C4 90AA0000 */ lbu $t2, ($a1) +/* 0C0EC8 800C02C8 3C018013 */ lui $at, %hi(D_8012A740) # $at, 0x8013 +/* 0C0ECC 800C02CC AC2AA740 */ sw $t2, %lo(D_8012A740)($at) +/* 0C0ED0 800C02D0 908B0001 */ lbu $t3, 1($a0) +/* 0C0ED4 800C02D4 8CEE0000 */ lw $t6, ($a3) +/* 0C0ED8 800C02D8 A04B0000 */ sb $t3, ($v0) +/* 0C0EDC 800C02DC 908C0002 */ lbu $t4, 2($a0) +/* 0C0EE0 800C02E0 2DC10007 */ sltiu $at, $t6, 7 +/* 0C0EE4 800C02E4 A06C0000 */ sb $t4, ($v1) +/* 0C0EE8 800C02E8 908D0003 */ lbu $t5, 3($a0) +/* 0C0EEC 800C02EC 10200062 */ beqz $at, .L800C0478 +/* 0C0EF0 800C02F0 A0AD0000 */ sb $t5, ($a1) +/* 0C0EF4 800C02F4 000E7080 */ sll $t6, $t6, 2 +/* 0C0EF8 800C02F8 3C01800F */ lui $at, 0x800f +/* 0C0EFC 800C02FC 002E0821 */ addu $at, $at, $t6 +/* 0C0F00 800C0300 8C2E92D0 */ lw $t6, -0x6d30($at) +/* 0C0F04 800C0304 00000000 */ nop +/* 0C0F08 800C0308 01C00008 */ jr $t6 +/* 0C0F0C 800C030C 00000000 */ nop +/* 0C0F10 800C0310 0C0301E0 */ jal func_800C0780 +/* 0C0F14 800C0314 00000000 */ nop +/* 0C0F18 800C0318 10000057 */ b .L800C0478 +/* 0C0F1C 800C031C 00000000 */ nop +/* 0C0F20 800C0320 3C02800E */ lui $v0, %hi(D_800E32D0) # $v0, 0x800e +/* 0C0F24 800C0324 3C0F800E */ lui $t7, %hi(D_800E32A0) # $t7, 0x800e +/* 0C0F28 800C0328 3C18800E */ lui $t8, %hi(D_800E32AC) # $t8, 0x800e +/* 0C0F2C 800C032C 3C19800E */ lui $t9, %hi(D_800E32B8) # $t9, 0x800e +/* 0C0F30 800C0330 244232D0 */ addiu $v0, %lo(D_800E32D0) # addiu $v0, $v0, 0x32d0 +/* 0C0F34 800C0334 273932B8 */ addiu $t9, %lo(D_800E32B8) # addiu $t9, $t9, 0x32b8 +/* 0C0F38 800C0338 271832AC */ addiu $t8, %lo(D_800E32AC) # addiu $t8, $t8, 0x32ac +/* 0C0F3C 800C033C 25EF32A0 */ addiu $t7, %lo(D_800E32A0) # addiu $t7, $t7, 0x32a0 +/* 0C0F40 800C0340 3C07800E */ lui $a3, %hi(D_800E3230) # $a3, 0x800e +/* 0C0F44 800C0344 24E73230 */ addiu $a3, %lo(D_800E3230) # addiu $a3, $a3, 0x3230 +/* 0C0F48 800C0348 AFAF0010 */ sw $t7, 0x10($sp) +/* 0C0F4C 800C034C AFB80014 */ sw $t8, 0x14($sp) +/* 0C0F50 800C0350 AFB90020 */ sw $t9, 0x20($sp) +/* 0C0F54 800C0354 AFA20018 */ sw $v0, 0x18($sp) +/* 0C0F58 800C0358 AFA2001C */ sw $v0, 0x1c($sp) +/* 0C0F5C 800C035C 2405000C */ li $a1, 12 +/* 0C0F60 800C0360 0C0302C0 */ jal func_800C0B00 +/* 0C0F64 800C0364 24060008 */ li $a2, 8 +/* 0C0F68 800C0368 10000043 */ b .L800C0478 +/* 0C0F6C 800C036C 00000000 */ nop +/* 0C0F70 800C0370 3C02800E */ lui $v0, %hi(D_800E32D0) # $v0, 0x800e +/* 0C0F74 800C0374 3C08800E */ lui $t0, %hi(D_800E32A0) # $t0, 0x800e +/* 0C0F78 800C0378 3C09800E */ lui $t1, %hi(D_800E32AC) # $t1, 0x800e +/* 0C0F7C 800C037C 3C0A800E */ lui $t2, %hi(D_800E32B8) # $t2, 0x800e +/* 0C0F80 800C0380 244232D0 */ addiu $v0, %lo(D_800E32D0) # addiu $v0, $v0, 0x32d0 +/* 0C0F84 800C0384 254A32B8 */ addiu $t2, %lo(D_800E32B8) # addiu $t2, $t2, 0x32b8 +/* 0C0F88 800C0388 252932AC */ addiu $t1, %lo(D_800E32AC) # addiu $t1, $t1, 0x32ac +/* 0C0F8C 800C038C 250832A0 */ addiu $t0, %lo(D_800E32A0) # addiu $t0, $t0, 0x32a0 +/* 0C0F90 800C0390 3C07800E */ lui $a3, %hi(D_800E3268) # $a3, 0x800e +/* 0C0F94 800C0394 24E73268 */ addiu $a3, %lo(D_800E3268) # addiu $a3, $a3, 0x3268 +/* 0C0F98 800C0398 AFA80010 */ sw $t0, 0x10($sp) +/* 0C0F9C 800C039C AFA90014 */ sw $t1, 0x14($sp) +/* 0C0FA0 800C03A0 AFAA0020 */ sw $t2, 0x20($sp) +/* 0C0FA4 800C03A4 AFA20018 */ sw $v0, 0x18($sp) +/* 0C0FA8 800C03A8 AFA2001C */ sw $v0, 0x1c($sp) +/* 0C0FAC 800C03AC 2405000C */ li $a1, 12 +/* 0C0FB0 800C03B0 0C0302C0 */ jal func_800C0B00 +/* 0C0FB4 800C03B4 24060008 */ li $a2, 8 +/* 0C0FB8 800C03B8 1000002F */ b .L800C0478 +/* 0C0FBC 800C03BC 00000000 */ nop +/* 0C0FC0 800C03C0 0C030575 */ jal func_800C15D4 +/* 0C0FC4 800C03C4 00000000 */ nop +/* 0C0FC8 800C03C8 1000002B */ b .L800C0478 +/* 0C0FCC 800C03CC 00000000 */ nop +/* 0C0FD0 800C03D0 3C02800E */ lui $v0, %hi(D_800E34F8) # $v0, 0x800e +/* 0C0FD4 800C03D4 3C0B800E */ lui $t3, %hi(D_800E349C) # $t3, 0x800e +/* 0C0FD8 800C03D8 3C0C800E */ lui $t4, %hi(D_800E3440) # $t4, 0x800e +/* 0C0FDC 800C03DC 3C0D800E */ lui $t5, %hi(D_800E3554) # $t5, 0x800e +/* 0C0FE0 800C03E0 244234F8 */ addiu $v0, %lo(D_800E34F8) # addiu $v0, $v0, 0x34f8 +/* 0C0FE4 800C03E4 25AD3554 */ addiu $t5, %lo(D_800E3554) # addiu $t5, $t5, 0x3554 +/* 0C0FE8 800C03E8 258C3440 */ addiu $t4, %lo(D_800E3440) # addiu $t4, $t4, 0x3440 +/* 0C0FEC 800C03EC 256B349C */ addiu $t3, %lo(D_800E349C) # addiu $t3, $t3, 0x349c +/* 0C0FF0 800C03F0 3C07800E */ lui $a3, %hi(D_800E3344) # $a3, 0x800e +/* 0C0FF4 800C03F4 24E73344 */ addiu $a3, %lo(D_800E3344) # addiu $a3, $a3, 0x3344 +/* 0C0FF8 800C03F8 AFAB0010 */ sw $t3, 0x10($sp) +/* 0C0FFC 800C03FC AFAC0014 */ sw $t4, 0x14($sp) +/* 0C1000 800C0400 AFAD0020 */ sw $t5, 0x20($sp) +/* 0C1004 800C0404 AFA20018 */ sw $v0, 0x18($sp) +/* 0C1008 800C0408 AFA2001C */ sw $v0, 0x1c($sp) +/* 0C100C 800C040C 2405005C */ li $a1, 92 +/* 0C1010 800C0410 0C0302C0 */ jal func_800C0B00 +/* 0C1014 800C0414 24060050 */ li $a2, 80 +/* 0C1018 800C0418 10000017 */ b .L800C0478 +/* 0C101C 800C041C 00000000 */ nop +/* 0C1020 800C0420 3C02800E */ lui $v0, %hi(D_800E3338) # $v0, 0x800e +/* 0C1024 800C0424 3C0E800E */ lui $t6, %hi(D_800E330C) # $t6, 0x800e +/* 0C1028 800C0428 3C0F800E */ lui $t7, %hi(D_800E3318) # $t7, 0x800e +/* 0C102C 800C042C 3C18800E */ lui $t8, %hi(D_800E3324) # $t8, 0x800e +/* 0C1030 800C0430 24423338 */ addiu $v0, %lo(D_800E3338) # addiu $v0, $v0, 0x3338 +/* 0C1034 800C0434 27183324 */ addiu $t8, %lo(D_800E3324) # addiu $t8, $t8, 0x3324 +/* 0C1038 800C0438 25EF3318 */ addiu $t7, %lo(D_800E3318) # addiu $t7, $t7, 0x3318 +/* 0C103C 800C043C 25CE330C */ addiu $t6, %lo(D_800E330C) # addiu $t6, $t6, 0x330c +/* 0C1040 800C0440 3C07800E */ lui $a3, %hi(D_800E32DC) # $a3, 0x800e +/* 0C1044 800C0444 24E732DC */ addiu $a3, %lo(D_800E32DC) # addiu $a3, $a3, 0x32dc +/* 0C1048 800C0448 AFAE0010 */ sw $t6, 0x10($sp) +/* 0C104C 800C044C AFAF0014 */ sw $t7, 0x14($sp) +/* 0C1050 800C0450 AFB80020 */ sw $t8, 0x20($sp) +/* 0C1054 800C0454 AFA20018 */ sw $v0, 0x18($sp) +/* 0C1058 800C0458 AFA2001C */ sw $v0, 0x1c($sp) +/* 0C105C 800C045C 2405000A */ li $a1, 10 +/* 0C1060 800C0460 0C0302C0 */ jal func_800C0B00 +/* 0C1064 800C0464 24060006 */ li $a2, 6 +/* 0C1068 800C0468 10000003 */ b .L800C0478 +/* 0C106C 800C046C 00000000 */ nop +/* 0C1070 800C0470 0C030990 */ jal func_800C2640 +/* 0C1074 800C0474 00000000 */ nop +.L800C0478: +/* 0C1078 800C0478 3C02800E */ lui $v0, %hi(D_800E31AC) # $v0, 0x800e +/* 0C107C 800C047C 8C4231AC */ lw $v0, %lo(D_800E31AC)($v0) +/* 0C1080 800C0480 00000000 */ nop +.L800C0484: +/* 0C1084 800C0484 8FBF002C */ lw $ra, 0x2c($sp) +/* 0C1088 800C0488 27BD0030 */ addiu $sp, $sp, 0x30 +/* 0C108C 800C048C 03E00008 */ jr $ra +/* 0C1090 800C0490 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C0494.s b/asm/non_matchings/unknown_0B8920/func_800C0494.s new file mode 100644 index 00000000..a5c8f083 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C0494.s @@ -0,0 +1,85 @@ +glabel func_800C0494 +/* 0C1094 800C0494 3C03800E */ lui $v1, %hi(D_800E31A4) # $v1, 0x800e +/* 0C1098 800C0498 246331A4 */ addiu $v1, %lo(D_800E31A4) # addiu $v1, $v1, 0x31a4 +/* 0C109C 800C049C 8C620000 */ lw $v0, ($v1) +/* 0C10A0 800C04A0 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C10A4 800C04A4 10400005 */ beqz $v0, .L800C04BC +/* 0C10A8 800C04A8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0C10AC 800C04AC 244EFFFF */ addiu $t6, $v0, -1 +/* 0C10B0 800C04B0 AC6E0000 */ sw $t6, ($v1) +/* 0C10B4 800C04B4 10000005 */ b .L800C04CC +/* 0C10B8 800C04B8 00002025 */ move $a0, $zero +.L800C04BC: +/* 0C10BC 800C04BC 28810006 */ slti $at, $a0, 6 +/* 0C10C0 800C04C0 14200002 */ bnez $at, .L800C04CC +/* 0C10C4 800C04C4 00000000 */ nop +/* 0C10C8 800C04C8 24040005 */ li $a0, 5 +.L800C04CC: +/* 0C10CC 800C04CC 3C03800E */ lui $v1, %hi(D_800E31AC) # $v1, 0x800e +/* 0C10D0 800C04D0 246331AC */ addiu $v1, %lo(D_800E31AC) # addiu $v1, $v1, 0x31ac +/* 0C10D4 800C04D4 8C6F0000 */ lw $t7, ($v1) +/* 0C10D8 800C04D8 00000000 */ nop +/* 0C10DC 800C04DC 11E00036 */ beqz $t7, .L800C05B8 +/* 0C10E0 800C04E0 3C02800E */ lui $v0, %hi(D_800E31B0) # $v0, 0x800e +/* 0C10E4 800C04E4 944231B0 */ lhu $v0, %lo(D_800E31B0)($v0) +/* 0C10E8 800C04E8 2418FFFF */ li $t8, -1 +/* 0C10EC 800C04EC 14400002 */ bnez $v0, .L800C04F8 +/* 0C10F0 800C04F0 3C19800E */ lui $t9, %hi(D_800E31B4) # $t9, 0x800e +/* 0C10F4 800C04F4 AC780000 */ sw $t8, ($v1) +.L800C04F8: +/* 0C10F8 800C04F8 1440000A */ bnez $v0, .L800C0524 +/* 0C10FC 800C04FC 3C0B8013 */ lui $t3, %hi(D_8012A730) # $t3, 0x8013 +/* 0C1100 800C0500 973931B4 */ lhu $t9, %lo(D_800E31B4)($t9) +/* 0C1104 800C0504 00000000 */ nop +/* 0C1108 800C0508 17200006 */ bnez $t9, .L800C0524 +/* 0C110C 800C050C 00000000 */ nop +/* 0C1110 800C0510 0C0301C9 */ jal func_800C0724 +/* 0C1114 800C0514 00000000 */ nop +/* 0C1118 800C0518 3C03800E */ lui $v1, %hi(D_800E31AC) # $v1, 0x800e +/* 0C111C 800C051C 10000026 */ b .L800C05B8 +/* 0C1120 800C0520 246331AC */ addiu $v1, %lo(D_800E31AC) # addiu $v1, $v1, 0x31ac +.L800C0524: +/* 0C1124 800C0524 18400006 */ blez $v0, .L800C0540 +/* 0C1128 800C0528 3C02800E */ lui $v0, %hi(D_800E31D0) # $v0, 0x800e +/* 0C112C 800C052C 244231D0 */ addiu $v0, %lo(D_800E31D0) # addiu $v0, $v0, 0x31d0 +/* 0C1130 800C0530 8C480000 */ lw $t0, ($v0) +/* 0C1134 800C0534 24090001 */ li $t1, 1 +/* 0C1138 800C0538 01285023 */ subu $t2, $t1, $t0 +/* 0C113C 800C053C AC4A0000 */ sw $t2, ($v0) +.L800C0540: +/* 0C1140 800C0540 8D6BA730 */ lw $t3, %lo(D_8012A730)($t3) +/* 0C1144 800C0544 00000000 */ nop +/* 0C1148 800C0548 2D610007 */ sltiu $at, $t3, 7 +/* 0C114C 800C054C 1020001A */ beqz $at, .L800C05B8 +/* 0C1150 800C0550 000B5880 */ sll $t3, $t3, 2 +/* 0C1154 800C0554 3C01800F */ lui $at, 0x800f +/* 0C1158 800C0558 002B0821 */ addu $at, $at, $t3 +/* 0C115C 800C055C 8C2B92EC */ lw $t3, -0x6d14($at) +/* 0C1160 800C0560 00000000 */ nop +/* 0C1164 800C0564 01600008 */ jr $t3 +/* 0C1168 800C0568 00000000 */ nop +/* 0C116C 800C056C 0C03020D */ jal func_800C0834 +/* 0C1170 800C0570 00000000 */ nop +/* 0C1174 800C0574 3C03800E */ lui $v1, %hi(D_800E31AC) # $v1, 0x800e +/* 0C1178 800C0578 1000000F */ b .L800C05B8 +/* 0C117C 800C057C 246331AC */ addiu $v1, %lo(D_800E31AC) # addiu $v1, $v1, 0x31ac +/* 0C1180 800C0580 0C03044C */ jal func_800C1130 +/* 0C1184 800C0584 00000000 */ nop +/* 0C1188 800C0588 3C03800E */ lui $v1, %hi(D_800E31AC) # $v1, 0x800e +/* 0C118C 800C058C 1000000A */ b .L800C05B8 +/* 0C1190 800C0590 246331AC */ addiu $v1, %lo(D_800E31AC) # addiu $v1, $v1, 0x31ac +/* 0C1194 800C0594 0C0307BA */ jal func_800C1EE8 +/* 0C1198 800C0598 00000000 */ nop +/* 0C119C 800C059C 3C03800E */ lui $v1, %hi(D_800E31AC) # $v1, 0x800e +/* 0C11A0 800C05A0 10000005 */ b .L800C05B8 +/* 0C11A4 800C05A4 246331AC */ addiu $v1, %lo(D_800E31AC) # addiu $v1, $v1, 0x31ac +/* 0C11A8 800C05A8 0C0309E8 */ jal func_800C27A0 +/* 0C11AC 800C05AC 00000000 */ nop +/* 0C11B0 800C05B0 3C03800E */ lui $v1, %hi(D_800E31AC) # $v1, 0x800e +/* 0C11B4 800C05B4 246331AC */ addiu $v1, %lo(D_800E31AC) # addiu $v1, $v1, 0x31ac +.L800C05B8: +/* 0C11B8 800C05B8 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C11BC 800C05BC 8C620000 */ lw $v0, ($v1) +/* 0C11C0 800C05C0 03E00008 */ jr $ra +/* 0C11C4 800C05C4 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C05C8.s b/asm/non_matchings/unknown_0B8920/func_800C05C8.s new file mode 100644 index 00000000..6f1242d1 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C05C8.s @@ -0,0 +1,94 @@ +glabel func_800C05C8 +/* 0C11C8 800C05C8 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0C11CC 800C05CC 3C0E800E */ lui $t6, %hi(D_800E31AC) # $t6, 0x800e +/* 0C11D0 800C05D0 8DCE31AC */ lw $t6, %lo(D_800E31AC)($t6) +/* 0C11D4 800C05D4 AFB10018 */ sw $s1, 0x18($sp) +/* 0C11D8 800C05D8 AFB00014 */ sw $s0, 0x14($sp) +/* 0C11DC 800C05DC 00808025 */ move $s0, $a0 +/* 0C11E0 800C05E0 00A08825 */ move $s1, $a1 +/* 0C11E4 800C05E4 11C0004A */ beqz $t6, .L800C0710 +/* 0C11E8 800C05E8 AFBF001C */ sw $ra, 0x1c($sp) +/* 0C11EC 800C05EC 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 +/* 0C11F0 800C05F0 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) +/* 0C11F4 800C05F4 3C01800F */ lui $at, 0x800f +/* 0C11F8 800C05F8 15E00008 */ bnez $t7, .L800C061C +/* 0C11FC 800C05FC 00000000 */ nop +/* 0C1200 800C0600 3C01800F */ lui $at, %hi(D_800E930C) # $at, 0x800f +/* 0C1204 800C0604 C42C9308 */ lwc1 $f12, %lo(D_800E9308)($at) +/* 0C1208 800C0608 0C019FC8 */ jal func_80067F20 +/* 0C120C 800C060C AFA60028 */ sw $a2, 0x28($sp) +/* 0C1210 800C0610 8FA60028 */ lw $a2, 0x28($sp) +/* 0C1214 800C0614 10000007 */ b .L800C0634 +/* 0C1218 800C0618 02002025 */ move $a0, $s0 +.L800C061C: +/* 0C121C 800C061C C42C930C */ lwc1 $f12, %lo(D_800E930C)($at) +/* 0C1220 800C0620 0C019FC8 */ jal func_80067F20 +/* 0C1224 800C0624 AFA60028 */ sw $a2, 0x28($sp) +/* 0C1228 800C0628 8FA60028 */ lw $a2, 0x28($sp) +/* 0C122C 800C062C 00000000 */ nop +/* 0C1230 800C0630 02002025 */ move $a0, $s0 +.L800C0634: +/* 0C1234 800C0634 02202825 */ move $a1, $s1 +/* 0C1238 800C0638 0C019FCB */ jal func_80067F2C +/* 0C123C 800C063C AFA60028 */ sw $a2, 0x28($sp) +/* 0C1240 800C0640 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0C1244 800C0644 44816000 */ mtc1 $at, $f12 +/* 0C1248 800C0648 0C019FC8 */ jal func_80067F20 +/* 0C124C 800C064C 00000000 */ nop +/* 0C1250 800C0650 3C188013 */ lui $t8, %hi(D_8012A730) # $t8, 0x8013 +/* 0C1254 800C0654 8F18A730 */ lw $t8, %lo(D_8012A730)($t8) +/* 0C1258 800C0658 8FA60028 */ lw $a2, 0x28($sp) +/* 0C125C 800C065C 2F010007 */ sltiu $at, $t8, 7 +/* 0C1260 800C0660 10200028 */ beqz $at, .L800C0704 +/* 0C1264 800C0664 0018C080 */ sll $t8, $t8, 2 +/* 0C1268 800C0668 3C01800F */ lui $at, 0x800f +/* 0C126C 800C066C 00380821 */ addu $at, $at, $t8 +/* 0C1270 800C0670 8C389310 */ lw $t8, -0x6cf0($at) +/* 0C1274 800C0674 00000000 */ nop +/* 0C1278 800C0678 03000008 */ jr $t8 +/* 0C127C 800C067C 00000000 */ nop +/* 0C1280 800C0680 02002025 */ move $a0, $s0 +/* 0C1284 800C0684 0C030282 */ jal func_800C0A08 +/* 0C1288 800C0688 02202825 */ move $a1, $s1 +/* 0C128C 800C068C 1000001E */ b .L800C0708 +/* 0C1290 800C0690 02002025 */ move $a0, $s0 +/* 0C1294 800C0694 02002025 */ move $a0, $s0 +/* 0C1298 800C0698 0C0304F9 */ jal func_800C13E4 +/* 0C129C 800C069C 02202825 */ move $a1, $s1 +/* 0C12A0 800C06A0 10000019 */ b .L800C0708 +/* 0C12A4 800C06A4 02002025 */ move $a0, $s0 +/* 0C12A8 800C06A8 02002025 */ move $a0, $s0 +/* 0C12AC 800C06AC 0C030537 */ jal func_800C14DC +/* 0C12B0 800C06B0 02202825 */ move $a1, $s1 +/* 0C12B4 800C06B4 10000014 */ b .L800C0708 +/* 0C12B8 800C06B8 02002025 */ move $a0, $s0 +/* 0C12BC 800C06BC 02002025 */ move $a0, $s0 +/* 0C12C0 800C06C0 0C03089D */ jal func_800C2274 +/* 0C12C4 800C06C4 02202825 */ move $a1, $s1 +/* 0C12C8 800C06C8 1000000F */ b .L800C0708 +/* 0C12CC 800C06CC 02002025 */ move $a0, $s0 +/* 0C12D0 800C06D0 02002025 */ move $a0, $s0 +/* 0C12D4 800C06D4 0C0308FE */ jal func_800C23F8 +/* 0C12D8 800C06D8 02202825 */ move $a1, $s1 +/* 0C12DC 800C06DC 1000000A */ b .L800C0708 +/* 0C12E0 800C06E0 02002025 */ move $a0, $s0 +/* 0C12E4 800C06E4 02002025 */ move $a0, $s0 +/* 0C12E8 800C06E8 0C030952 */ jal func_800C2548 +/* 0C12EC 800C06EC 02202825 */ move $a1, $s1 +/* 0C12F0 800C06F0 10000005 */ b .L800C0708 +/* 0C12F4 800C06F4 02002025 */ move $a0, $s0 +/* 0C12F8 800C06F8 02002025 */ move $a0, $s0 +/* 0C12FC 800C06FC 0C030A3A */ jal func_800C28E8 +/* 0C1300 800C0700 02202825 */ move $a1, $s1 +.L800C0704: +/* 0C1304 800C0704 02002025 */ move $a0, $s0 +.L800C0708: +/* 0C1308 800C0708 0C019B37 */ jal func_80066CDC +/* 0C130C 800C070C 02202825 */ move $a1, $s1 +.L800C0710: +/* 0C1310 800C0710 8FBF001C */ lw $ra, 0x1c($sp) +/* 0C1314 800C0714 8FB00014 */ lw $s0, 0x14($sp) +/* 0C1318 800C0718 8FB10018 */ lw $s1, 0x18($sp) +/* 0C131C 800C071C 03E00008 */ jr $ra +/* 0C1320 800C0720 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C0724.s b/asm/non_matchings/unknown_0B8920/func_800C0724.s new file mode 100644 index 00000000..6ce7286f --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C0724.s @@ -0,0 +1,26 @@ +glabel func_800C0724 +/* 0C1324 800C0724 3C02800E */ lui $v0, %hi(D_800E31C0) # $v0, 0x800e +/* 0C1328 800C0728 244231C0 */ addiu $v0, %lo(D_800E31C0) # addiu $v0, $v0, 0x31c0 +/* 0C132C 800C072C 8C440000 */ lw $a0, ($v0) +/* 0C1330 800C0730 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C1334 800C0734 1080000B */ beqz $a0, .L800C0764 +/* 0C1338 800C0738 AFBF0014 */ sw $ra, 0x14($sp) +/* 0C133C 800C073C 0C01C450 */ jal func_80071140 +/* 0C1340 800C0740 00000000 */ nop +/* 0C1344 800C0744 3C02800E */ lui $v0, %hi(D_800E31C0) # $v0, 0x800e +/* 0C1348 800C0748 3C03800E */ lui $v1, %hi(D_800E31C8) # $v1, 0x800e +/* 0C134C 800C074C 246331C8 */ addiu $v1, %lo(D_800E31C8) # addiu $v1, $v1, 0x31c8 +/* 0C1350 800C0750 244231C0 */ addiu $v0, %lo(D_800E31C0) # addiu $v0, $v0, 0x31c0 +/* 0C1354 800C0754 AC400000 */ sw $zero, ($v0) +/* 0C1358 800C0758 AC400004 */ sw $zero, 4($v0) +/* 0C135C 800C075C AC600000 */ sw $zero, ($v1) +/* 0C1360 800C0760 AC600004 */ sw $zero, 4($v1) +.L800C0764: +/* 0C1364 800C0764 3C01800E */ lui $at, %hi(D_800E31AC) # $at, 0x800e +/* 0C1368 800C0768 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C136C 800C076C AC2031AC */ sw $zero, %lo(D_800E31AC)($at) +/* 0C1370 800C0770 3C01800E */ lui $at, %hi(D_800E31D0) # $at, 0x800e +/* 0C1374 800C0774 AC2031D0 */ sw $zero, %lo(D_800E31D0)($at) +/* 0C1378 800C0778 03E00008 */ jr $ra +/* 0C137C 800C077C 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C0780.s b/asm/non_matchings/unknown_0B8920/func_800C0780.s new file mode 100644 index 00000000..d6d32175 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C0780.s @@ -0,0 +1,51 @@ +glabel func_800C0780 +/* 0C1380 800C0780 908E0000 */ lbu $t6, ($a0) +/* 0C1384 800C0784 3C018013 */ lui $at, 0x8013 +/* 0C1388 800C0788 31CF0080 */ andi $t7, $t6, 0x80 +/* 0C138C 800C078C 11E00015 */ beqz $t7, .L800C07E4 +/* 0C1390 800C0790 24080001 */ li $t0, 1 +/* 0C1394 800C0794 3C01437F */ li $at, 0x437F0000 # 255.000000 +/* 0C1398 800C0798 44812000 */ mtc1 $at, $f4 +/* 0C139C 800C079C 3C18800E */ lui $t8, %hi(D_800E31B0) # $t8, 0x800e +/* 0C13A0 800C07A0 971831B0 */ lhu $t8, %lo(D_800E31B0)($t8) +/* 0C13A4 800C07A4 3C018013 */ lui $at, %hi(D_8012A750) # $at, 0x8013 +/* 0C13A8 800C07A8 E424A750 */ swc1 $f4, %lo(D_8012A750)($at) +/* 0C13AC 800C07AC 44984000 */ mtc1 $t8, $f8 +/* 0C13B0 800C07B0 3C01C37F */ li $at, 0xC37F0000 # -255.000000 +/* 0C13B4 800C07B4 44813000 */ mtc1 $at, $f6 +/* 0C13B8 800C07B8 07010005 */ bgez $t8, .L800C07D0 +/* 0C13BC 800C07BC 468042A0 */ cvt.s.w $f10, $f8 +/* 0C13C0 800C07C0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0C13C4 800C07C4 44818000 */ mtc1 $at, $f16 +/* 0C13C8 800C07C8 00000000 */ nop +/* 0C13CC 800C07CC 46105280 */ add.s $f10, $f10, $f16 +.L800C07D0: +/* 0C13D0 800C07D0 00000000 */ nop +/* 0C13D4 800C07D4 460A3483 */ div.s $f18, $f6, $f10 +/* 0C13D8 800C07D8 3C018013 */ lui $at, %hi(D_8012A750) # $at, 0x8013 +/* 0C13DC 800C07DC 10000012 */ b .L800C0828 +/* 0C13E0 800C07E0 E432A754 */ swc1 $f18, %lo(D_8012A754)($at) +.L800C07E4: +/* 0C13E4 800C07E4 44802000 */ mtc1 $zero, $f4 +/* 0C13E8 800C07E8 3C19800E */ lui $t9, %hi(D_800E31B0) # $t9, 0x800e +/* 0C13EC 800C07EC 973931B0 */ lhu $t9, %lo(D_800E31B0)($t9) +/* 0C13F0 800C07F0 E424A750 */ swc1 $f4, %lo(D_8012A750)($at) +/* 0C13F4 800C07F4 44998000 */ mtc1 $t9, $f16 +/* 0C13F8 800C07F8 3C01437F */ li $at, 0x437F0000 # 255.000000 +/* 0C13FC 800C07FC 44814000 */ mtc1 $at, $f8 +/* 0C1400 800C0800 07210005 */ bgez $t9, .L800C0818 +/* 0C1404 800C0804 468081A0 */ cvt.s.w $f6, $f16 +/* 0C1408 800C0808 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0C140C 800C080C 44815000 */ mtc1 $at, $f10 +/* 0C1410 800C0810 00000000 */ nop +/* 0C1414 800C0814 460A3180 */ add.s $f6, $f6, $f10 +.L800C0818: +/* 0C1418 800C0818 00000000 */ nop +/* 0C141C 800C081C 46064483 */ div.s $f18, $f8, $f6 +/* 0C1420 800C0820 3C018013 */ lui $at, %hi(D_8012A754) # $at, 0x8013 +/* 0C1424 800C0824 E432A754 */ swc1 $f18, %lo(D_8012A754)($at) +.L800C0828: +/* 0C1428 800C0828 3C01800E */ lui $at, 0x800e +/* 0C142C 800C082C 03E00008 */ jr $ra +/* 0C1430 800C0830 AC2831AC */ sw $t0, 0x31ac($at) + diff --git a/asm/non_matchings/unknown_0B8920/func_800C0834.s b/asm/non_matchings/unknown_0B8920/func_800C0834.s new file mode 100644 index 00000000..a26917f6 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C0834.s @@ -0,0 +1,134 @@ +glabel func_800C0834 +/* 0C1434 800C0834 3C01437F */ li $at, 0x437F0000 # 255.000000 +/* 0C1438 800C0838 3C0C8013 */ lui $t4, %hi(D_8012A754) # $t4, 0x8013 +/* 0C143C 800C083C 3C0B800E */ lui $t3, %hi(D_800E31B8) # $t3, 0x800e +/* 0C1440 800C0840 3C0A800E */ lui $t2, %hi(D_800E31A8) # $t2, 0x800e +/* 0C1444 800C0844 3C09800E */ lui $t1, %hi(D_800E31B4) # $t1, 0x800e +/* 0C1448 800C0848 3C078013 */ lui $a3, %hi(D_8012A737) # $a3, 0x8013 +/* 0C144C 800C084C 3C068013 */ lui $a2, %hi(D_8012A750) # $a2, 0x8013 +/* 0C1450 800C0850 3C05800E */ lui $a1, %hi(D_800E31B0) # $a1, 0x800e +/* 0C1454 800C0854 44816000 */ mtc1 $at, $f12 +/* 0C1458 800C0858 44801000 */ mtc1 $zero, $f2 +/* 0C145C 800C085C 24A531B0 */ addiu $a1, %lo(D_800E31B0) # addiu $a1, $a1, 0x31b0 +/* 0C1460 800C0860 24C6A750 */ addiu $a2, %lo(D_8012A750) # addiu $a2, $a2, -0x58b0 +/* 0C1464 800C0864 24E7A737 */ addiu $a3, %lo(D_8012A737) # addiu $a3, $a3, -0x58c9 +/* 0C1468 800C0868 252931B4 */ addiu $t1, %lo(D_800E31B4) # addiu $t1, $t1, 0x31b4 +/* 0C146C 800C086C 254A31A8 */ addiu $t2, %lo(D_800E31A8) # addiu $t2, $t2, 0x31a8 +/* 0C1470 800C0870 256B31B8 */ addiu $t3, %lo(D_800E31B8) # addiu $t3, $t3, 0x31b8 +/* 0C1474 800C0874 258CA754 */ addiu $t4, %lo(D_8012A754) # addiu $t4, $t4, -0x58ac +/* 0C1478 800C0878 3408FFFF */ li $t0, 65535 +.L800C087C: +/* 0C147C 800C087C 94A30000 */ lhu $v1, ($a1) +/* 0C1480 800C0880 24020001 */ li $v0, 1 +/* 0C1484 800C0884 18600047 */ blez $v1, .L800C09A4 +/* 0C1488 800C0888 0083082A */ slt $at, $a0, $v1 +/* 0C148C 800C088C C5800000 */ lwc1 $f0, ($t4) +/* 0C1490 800C0890 1020000A */ beqz $at, .L800C08BC +/* 0C1494 800C0894 24180001 */ li $t8, 1 +/* 0C1498 800C0898 44843000 */ mtc1 $a0, $f6 +/* 0C149C 800C089C C4C40000 */ lwc1 $f4, ($a2) +/* 0C14A0 800C08A0 46803220 */ cvt.s.w $f8, $f6 +/* 0C14A4 800C08A4 00647023 */ subu $t6, $v1, $a0 +/* 0C14A8 800C08A8 A4AE0000 */ sh $t6, ($a1) +/* 0C14AC 800C08AC 46080282 */ mul.s $f10, $f0, $f8 +/* 0C14B0 800C08B0 460A2400 */ add.s $f16, $f4, $f10 +/* 0C14B4 800C08B4 10000009 */ b .L800C08DC +/* 0C14B8 800C08B8 E4D00000 */ swc1 $f16, ($a2) +.L800C08BC: +/* 0C14BC 800C08BC 4602003C */ c.lt.s $f0, $f2 +/* 0C14C0 800C08C0 00832023 */ subu $a0, $a0, $v1 +/* 0C14C4 800C08C4 45000003 */ bc1f .L800C08D4 +/* 0C14C8 800C08C8 00001025 */ move $v0, $zero +/* 0C14CC 800C08CC 10000002 */ b .L800C08D8 +/* 0C14D0 800C08D0 E4C20000 */ swc1 $f2, ($a2) +.L800C08D4: +/* 0C14D4 800C08D4 E4CC0000 */ swc1 $f12, ($a2) +.L800C08D8: +/* 0C14D8 800C08D8 A4A00000 */ sh $zero, ($a1) +.L800C08DC: +/* 0C14DC 800C08DC C4C00000 */ lwc1 $f0, ($a2) +/* 0C14E0 800C08E0 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 0C14E4 800C08E4 4602003C */ c.lt.s $f0, $f2 +/* 0C14E8 800C08E8 00000000 */ nop +/* 0C14EC 800C08EC 45000005 */ bc1f .L800C0904 +/* 0C14F0 800C08F0 00000000 */ nop +/* 0C14F4 800C08F4 E4C20000 */ swc1 $f2, ($a2) +/* 0C14F8 800C08F8 C4C00000 */ lwc1 $f0, ($a2) +/* 0C14FC 800C08FC 10000009 */ b .L800C0924 +/* 0C1500 800C0900 444FF800 */ cfc1 $t7, $31 +.L800C0904: +/* 0C1504 800C0904 4600603C */ c.lt.s $f12, $f0 +/* 0C1508 800C0908 00000000 */ nop +/* 0C150C 800C090C 45000004 */ bc1f .L800C0920 +/* 0C1510 800C0910 00000000 */ nop +/* 0C1514 800C0914 E4CC0000 */ swc1 $f12, ($a2) +/* 0C1518 800C0918 C4C00000 */ lwc1 $f0, ($a2) +/* 0C151C 800C091C 00000000 */ nop +.L800C0920: +/* 0C1520 800C0920 444FF800 */ cfc1 $t7, $31 +.L800C0924: +/* 0C1524 800C0924 44D8F800 */ ctc1 $t8, $31 +/* 0C1528 800C0928 00000000 */ nop +/* 0C152C 800C092C 460004A4 */ cvt.w.s $f18, $f0 +/* 0C1530 800C0930 4458F800 */ cfc1 $t8, $31 +/* 0C1534 800C0934 00000000 */ nop +/* 0C1538 800C0938 33180078 */ andi $t8, $t8, 0x78 +/* 0C153C 800C093C 13000012 */ beqz $t8, .L800C0988 +/* 0C1540 800C0940 00000000 */ nop +/* 0C1544 800C0944 44819000 */ mtc1 $at, $f18 +/* 0C1548 800C0948 24180001 */ li $t8, 1 +/* 0C154C 800C094C 46120481 */ sub.s $f18, $f0, $f18 +/* 0C1550 800C0950 3C018000 */ lui $at, 0x8000 +/* 0C1554 800C0954 44D8F800 */ ctc1 $t8, $31 +/* 0C1558 800C0958 00000000 */ nop +/* 0C155C 800C095C 460094A4 */ cvt.w.s $f18, $f18 +/* 0C1560 800C0960 4458F800 */ cfc1 $t8, $31 +/* 0C1564 800C0964 00000000 */ nop +/* 0C1568 800C0968 33180078 */ andi $t8, $t8, 0x78 +/* 0C156C 800C096C 17000004 */ bnez $t8, .L800C0980 +/* 0C1570 800C0970 00000000 */ nop +/* 0C1574 800C0974 44189000 */ mfc1 $t8, $f18 +/* 0C1578 800C0978 10000007 */ b .L800C0998 +/* 0C157C 800C097C 0301C025 */ or $t8, $t8, $at +.L800C0980: +/* 0C1580 800C0980 10000005 */ b .L800C0998 +/* 0C1584 800C0984 2418FFFF */ li $t8, -1 +.L800C0988: +/* 0C1588 800C0988 44189000 */ mfc1 $t8, $f18 +/* 0C158C 800C098C 00000000 */ nop +/* 0C1590 800C0990 0700FFFB */ bltz $t8, .L800C0980 +/* 0C1594 800C0994 00000000 */ nop +.L800C0998: +/* 0C1598 800C0998 44CFF800 */ ctc1 $t7, $31 +/* 0C159C 800C099C 10000014 */ b .L800C09F0 +/* 0C15A0 800C09A0 A0F80000 */ sb $t8, ($a3) +.L800C09A4: +/* 0C15A4 800C09A4 95230000 */ lhu $v1, ($t1) +/* 0C15A8 800C09A8 00000000 */ nop +/* 0C15AC 800C09AC 11030010 */ beq $t0, $v1, .L800C09F0 +/* 0C15B0 800C09B0 0083082A */ slt $at, $a0, $v1 +/* 0C15B4 800C09B4 10200003 */ beqz $at, .L800C09C4 +/* 0C15B8 800C09B8 0064C823 */ subu $t9, $v1, $a0 +/* 0C15BC 800C09BC 1000000C */ b .L800C09F0 +/* 0C15C0 800C09C0 A5390000 */ sh $t9, ($t1) +.L800C09C4: +/* 0C15C4 800C09C4 8D4D0000 */ lw $t5, ($t2) +/* 0C15C8 800C09C8 00832023 */ subu $a0, $a0, $v1 +/* 0C15CC 800C09CC 11A00008 */ beqz $t5, .L800C09F0 +/* 0C15D0 800C09D0 A5200000 */ sh $zero, ($t1) +/* 0C15D4 800C09D4 C5860000 */ lwc1 $f6, ($t4) +/* 0C15D8 800C09D8 956E0000 */ lhu $t6, ($t3) +/* 0C15DC 800C09DC 46003207 */ neg.s $f8, $f6 +/* 0C15E0 800C09E0 AD400000 */ sw $zero, ($t2) +/* 0C15E4 800C09E4 E5880000 */ swc1 $f8, ($t4) +/* 0C15E8 800C09E8 00001025 */ move $v0, $zero +/* 0C15EC 800C09EC A4AE0000 */ sh $t6, ($a1) +.L800C09F0: +/* 0C15F0 800C09F0 14400003 */ bnez $v0, .L800C0A00 +/* 0C15F4 800C09F4 00000000 */ nop +/* 0C15F8 800C09F8 1C80FFA0 */ bgtz $a0, .L800C087C +/* 0C15FC 800C09FC 00000000 */ nop +.L800C0A00: +/* 0C1600 800C0A00 03E00008 */ jr $ra +/* 0C1604 800C0A04 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C0A08.s b/asm/non_matchings/unknown_0B8920/func_800C0A08.s new file mode 100644 index 00000000..45db77f8 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C0A08.s @@ -0,0 +1,64 @@ +glabel func_800C0A08 +/* 0C1608 800C0A08 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C160C 800C0A0C AFBF0014 */ sw $ra, 0x14($sp) +/* 0C1610 800C0A10 AFA5001C */ sw $a1, 0x1c($sp) +/* 0C1614 800C0A14 AFA60020 */ sw $a2, 0x20($sp) +/* 0C1618 800C0A18 0C01E948 */ jal func_8007A520 +/* 0C161C 800C0A1C AFA40018 */ sw $a0, 0x18($sp) +/* 0C1620 800C0A20 8FA40018 */ lw $a0, 0x18($sp) +/* 0C1624 800C0A24 3C18800E */ lui $t8, %hi(D_800E31D8) # $t8, 0x800e +/* 0C1628 800C0A28 8C830000 */ lw $v1, ($a0) +/* 0C162C 800C0A2C 271831D8 */ addiu $t8, %lo(D_800E31D8) # addiu $t8, $t8, 0x31d8 +/* 0C1630 800C0A30 246E0008 */ addiu $t6, $v1, 8 +/* 0C1634 800C0A34 AC8E0000 */ sw $t6, ($a0) +/* 0C1638 800C0A38 3C0F0600 */ lui $t7, 0x600 +/* 0C163C 800C0A3C AC6F0000 */ sw $t7, ($v1) +/* 0C1640 800C0A40 AC780004 */ sw $t8, 4($v1) +/* 0C1644 800C0A44 8C830000 */ lw $v1, ($a0) +/* 0C1648 800C0A48 3C09FA00 */ lui $t1, 0xfa00 +/* 0C164C 800C0A4C 24790008 */ addiu $t9, $v1, 8 +/* 0C1650 800C0A50 AC990000 */ sw $t9, ($a0) +/* 0C1654 800C0A54 3C0D8013 */ lui $t5, %hi(D_8012A735) # $t5, 0x8013 +/* 0C1658 800C0A58 AC690000 */ sw $t1, ($v1) +/* 0C165C 800C0A5C 91AEA735 */ lbu $t6, %lo(D_8012A735)($t5) +/* 0C1660 800C0A60 3C0A8013 */ lui $t2, %hi(D_8012A734) # $t2, 0x8013 +/* 0C1664 800C0A64 914BA734 */ lbu $t3, %lo(D_8012A734)($t2) +/* 0C1668 800C0A68 3C198013 */ lui $t9, %hi(D_8012A736) # $t9, 0x8013 +/* 0C166C 800C0A6C 9329A736 */ lbu $t1, %lo(D_8012A736)($t9) +/* 0C1670 800C0A70 000E7C00 */ sll $t7, $t6, 0x10 +/* 0C1674 800C0A74 3C0D8013 */ lui $t5, %hi(D_8012A737) # $t5, 0x8013 +/* 0C1678 800C0A78 000B6600 */ sll $t4, $t3, 0x18 +/* 0C167C 800C0A7C 91AEA737 */ lbu $t6, %lo(D_8012A737)($t5) +/* 0C1680 800C0A80 018FC025 */ or $t8, $t4, $t7 +/* 0C1684 800C0A84 00095200 */ sll $t2, $t1, 8 +/* 0C1688 800C0A88 030A5825 */ or $t3, $t8, $t2 +/* 0C168C 800C0A8C 016E6025 */ or $t4, $t3, $t6 +/* 0C1690 800C0A90 AC6C0004 */ sw $t4, 4($v1) +/* 0C1694 800C0A94 8C830000 */ lw $v1, ($a0) +/* 0C1698 800C0A98 3C09FFFD */ lui $t1, (0xFFFDF6FB >> 16) # lui $t1, 0xfffd +/* 0C169C 800C0A9C 246F0008 */ addiu $t7, $v1, 8 +/* 0C16A0 800C0AA0 3C19FCFF */ lui $t9, (0xFCFFFFFF >> 16) # lui $t9, 0xfcff +/* 0C16A4 800C0AA4 AC8F0000 */ sw $t7, ($a0) +/* 0C16A8 800C0AA8 3739FFFF */ ori $t9, (0xFCFFFFFF & 0xFFFF) # ori $t9, $t9, 0xffff +/* 0C16AC 800C0AAC 3529F6FB */ ori $t1, (0xFFFDF6FB & 0xFFFF) # ori $t1, $t1, 0xf6fb +/* 0C16B0 800C0AB0 AC690004 */ sw $t1, 4($v1) +/* 0C16B4 800C0AB4 AC790000 */ sw $t9, ($v1) +/* 0C16B8 800C0AB8 8C830000 */ lw $v1, ($a0) +/* 0C16BC 800C0ABC 00027C03 */ sra $t7, $v0, 0x10 +/* 0C16C0 800C0AC0 304D03FF */ andi $t5, $v0, 0x3ff +/* 0C16C4 800C0AC4 000D5B80 */ sll $t3, $t5, 0xe +/* 0C16C8 800C0AC8 31F903FF */ andi $t9, $t7, 0x3ff +/* 0C16CC 800C0ACC 3C01F600 */ lui $at, 0xf600 +/* 0C16D0 800C0AD0 24780008 */ addiu $t8, $v1, 8 +/* 0C16D4 800C0AD4 01617025 */ or $t6, $t3, $at +/* 0C16D8 800C0AD8 00194880 */ sll $t1, $t9, 2 +/* 0C16DC 800C0ADC AC980000 */ sw $t8, ($a0) +/* 0C16E0 800C0AE0 01C9C025 */ or $t8, $t6, $t1 +/* 0C16E4 800C0AE4 AC780000 */ sw $t8, ($v1) +/* 0C16E8 800C0AE8 0C01ECF4 */ jal func_8007B3D0 +/* 0C16EC 800C0AEC AC600004 */ sw $zero, 4($v1) +/* 0C16F0 800C0AF0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C16F4 800C0AF4 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0C16F8 800C0AF8 03E00008 */ jr $ra +/* 0C16FC 800C0AFC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C0B00.s b/asm/non_matchings/unknown_0B8920/func_800C0B00.s new file mode 100644 index 00000000..a33980b0 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C0B00.s @@ -0,0 +1,414 @@ +glabel func_800C0B00 +/* 0C1700 800C0B00 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 0C1704 800C0B04 00051880 */ sll $v1, $a1, 2 +/* 0C1708 800C0B08 00054880 */ sll $t1, $a1, 2 +/* 0C170C 800C0B0C 01254823 */ subu $t1, $t1, $a1 +/* 0C1710 800C0B10 00651821 */ addu $v1, $v1, $a1 +/* 0C1714 800C0B14 AFB00018 */ sw $s0, 0x18($sp) +/* 0C1718 800C0B18 00031840 */ sll $v1, $v1, 1 +/* 0C171C 800C0B1C 00094880 */ sll $t1, $t1, 2 +/* 0C1720 800C0B20 00064100 */ sll $t0, $a2, 4 +/* 0C1724 800C0B24 00A08025 */ move $s0, $a1 +/* 0C1728 800C0B28 00687021 */ addu $t6, $v1, $t0 +/* 0C172C 800C0B2C 0009C080 */ sll $t8, $t1, 2 +/* 0C1730 800C0B30 AFBF0024 */ sw $ra, 0x24($sp) +/* 0C1734 800C0B34 AFB20020 */ sw $s2, 0x20($sp) +/* 0C1738 800C0B38 AFB1001C */ sw $s1, 0x1c($sp) +/* 0C173C 800C0B3C AFA40050 */ sw $a0, 0x50($sp) +/* 0C1740 800C0B40 0309C023 */ subu $t8, $t8, $t1 +/* 0C1744 800C0B44 000E7840 */ sll $t7, $t6, 1 +/* 0C1748 800C0B48 3C05FFFF */ lui $a1, (0xFFFF00FF >> 16) # lui $a1, 0xffff +/* 0C174C 800C0B4C 00C08825 */ move $s1, $a2 +/* 0C1750 800C0B50 00E09025 */ move $s2, $a3 +/* 0C1754 800C0B54 34A500FF */ ori $a1, (0xFFFF00FF & 0xFFFF) # ori $a1, $a1, 0xff +/* 0C1758 800C0B58 01F82021 */ addu $a0, $t7, $t8 +/* 0C175C 800C0B5C AFA8002C */ sw $t0, 0x2c($sp) +/* 0C1760 800C0B60 AFA90028 */ sw $t1, 0x28($sp) +/* 0C1764 800C0B64 0C01C327 */ jal func_80070C9C +/* 0C1768 800C0B68 AFA30030 */ sw $v1, 0x30($sp) +/* 0C176C 800C0B6C 8FA30030 */ lw $v1, 0x30($sp) +/* 0C1770 800C0B70 3C04800E */ lui $a0, %hi(D_800E31C0) # $a0, 0x800e +/* 0C1774 800C0B74 248431C0 */ addiu $a0, %lo(D_800E31C0) # addiu $a0, $a0, 0x31c0 +/* 0C1778 800C0B78 AC820000 */ sw $v0, ($a0) +/* 0C177C 800C0B7C 3C01800E */ lui $at, %hi(D_800E31C4) # $at, 0x800e +/* 0C1780 800C0B80 00436021 */ addu $t4, $v0, $v1 +/* 0C1784 800C0B84 AC2C31C4 */ sw $t4, %lo(D_800E31C4)($at) +/* 0C1788 800C0B88 8C8D0004 */ lw $t5, 4($a0) +/* 0C178C 800C0B8C 3C05800E */ lui $a1, %hi(D_800E31C8) # $a1, 0x800e +/* 0C1790 800C0B90 3C01800E */ lui $at, %hi(D_800E31CC) # $at, 0x800e +/* 0C1794 800C0B94 01A37021 */ addu $t6, $t5, $v1 +/* 0C1798 800C0B98 24A531C8 */ addiu $a1, %lo(D_800E31C8) # addiu $a1, $a1, 0x31c8 +/* 0C179C 800C0B9C AC2E31C8 */ sw $t6, %lo(D_800E31C8)($at) +/* 0C17A0 800C0BA0 8FA8002C */ lw $t0, 0x2c($sp) +/* 0C17A4 800C0BA4 8CAF0000 */ lw $t7, ($a1) +/* 0C17A8 800C0BA8 3C068013 */ lui $a2, %hi(D_8012A770) # $a2, 0x8013 +/* 0C17AC 800C0BAC 01E8C021 */ addu $t8, $t7, $t0 +/* 0C17B0 800C0BB0 AC3831CC */ sw $t8, %lo(D_800E31CC)($at) +/* 0C17B4 800C0BB4 8CB90004 */ lw $t9, 4($a1) +/* 0C17B8 800C0BB8 3C018013 */ lui $at, %hi(D_8012A770) # $at, 0x8013 +/* 0C17BC 800C0BBC 03286021 */ addu $t4, $t9, $t0 +/* 0C17C0 800C0BC0 24C6A770 */ addiu $a2, %lo(D_8012A770) # addiu $a2, $a2, -0x5890 +/* 0C17C4 800C0BC4 AC2CA770 */ sw $t4, %lo(D_8012A770)($at) +/* 0C17C8 800C0BC8 8FA90028 */ lw $t1, 0x28($sp) +/* 0C17CC 800C0BCC 8CCD0000 */ lw $t5, ($a2) +/* 0C17D0 800C0BD0 3C0B8013 */ lui $t3, %hi(D_8012A774) # $t3, 0x8013 +/* 0C17D4 800C0BD4 3C018013 */ lui $at, %hi(D_8012A774) # $at, 0x8013 +/* 0C17D8 800C0BD8 01A97021 */ addu $t6, $t5, $t1 +/* 0C17DC 800C0BDC 256BA774 */ addiu $t3, %lo(D_8012A774) # addiu $t3, $t3, -0x588c +/* 0C17E0 800C0BE0 AC2EA774 */ sw $t6, %lo(D_8012A774)($at) +/* 0C17E4 800C0BE4 8D6F0000 */ lw $t7, ($t3) +/* 0C17E8 800C0BE8 8FB90050 */ lw $t9, 0x50($sp) +/* 0C17EC 800C0BEC 3C018013 */ lui $at, %hi(D_8012A778) # $at, 0x8013 +/* 0C17F0 800C0BF0 01E9C021 */ addu $t8, $t7, $t1 +/* 0C17F4 800C0BF4 AC38A778 */ sw $t8, %lo(D_8012A778)($at) +/* 0C17F8 800C0BF8 932C0000 */ lbu $t4, ($t9) +/* 0C17FC 800C0BFC 8FA20060 */ lw $v0, 0x60($sp) +/* 0C1800 800C0C00 318D0080 */ andi $t5, $t4, 0x80 +/* 0C1804 800C0C04 11A00008 */ beqz $t5, .L800C0C28 +/* 0C1808 800C0C08 3C09800E */ lui $t1, %hi(D_800E31B0) # $t1, 0x800e +/* 0C180C 800C0C0C 8FAE0064 */ lw $t6, 0x64($sp) +/* 0C1810 800C0C10 AFA20064 */ sw $v0, 0x64($sp) +/* 0C1814 800C0C14 8FA20068 */ lw $v0, 0x68($sp) +/* 0C1818 800C0C18 8FAF006C */ lw $t7, 0x6c($sp) +/* 0C181C 800C0C1C AFAE0060 */ sw $t6, 0x60($sp) +/* 0C1820 800C0C20 AFA2006C */ sw $v0, 0x6c($sp) +/* 0C1824 800C0C24 AFAF0068 */ sw $t7, 0x68($sp) +.L800C0C28: +/* 0C1828 800C0C28 1A00008C */ blez $s0, .L800C0E5C +/* 0C182C 800C0C2C 00005025 */ move $t2, $zero +/* 0C1830 800C0C30 3C038013 */ lui $v1, %hi(D_8012A778) # $v1, 0x8013 +/* 0C1834 800C0C34 8FA40060 */ lw $a0, 0x60($sp) +/* 0C1838 800C0C38 8FA70068 */ lw $a3, 0x68($sp) +/* 0C183C 800C0C3C 8FA50064 */ lw $a1, 0x64($sp) +/* 0C1840 800C0C40 8FA8006C */ lw $t0, 0x6c($sp) +/* 0C1844 800C0C44 2463A778 */ addiu $v1, %lo(D_8012A778) # addiu $v1, $v1, -0x5888 +/* 0C1848 800C0C48 00001025 */ move $v0, $zero +/* 0C184C 800C0C4C 252931B0 */ addiu $t1, %lo(D_800E31B0) # addiu $t1, $t1, 0x31b0 +.L800C0C50: +/* 0C1850 800C0C50 90980000 */ lbu $t8, ($a0) +/* 0C1854 800C0C54 8CCE0000 */ lw $t6, ($a2) +/* 0C1858 800C0C58 0018C840 */ sll $t9, $t8, 1 +/* 0C185C 800C0C5C 02596021 */ addu $t4, $s2, $t9 +/* 0C1860 800C0C60 858D0000 */ lh $t5, ($t4) +/* 0C1864 800C0C64 01C27821 */ addu $t7, $t6, $v0 +/* 0C1868 800C0C68 448D2000 */ mtc1 $t5, $f4 +/* 0C186C 800C0C6C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0C1870 800C0C70 468021A0 */ cvt.s.w $f6, $f4 +/* 0C1874 800C0C74 E5E60000 */ swc1 $f6, ($t7) +/* 0C1878 800C0C78 90980000 */ lbu $t8, ($a0) +/* 0C187C 800C0C7C 8CCE0000 */ lw $t6, ($a2) +/* 0C1880 800C0C80 0018C840 */ sll $t9, $t8, 1 +/* 0C1884 800C0C84 02596021 */ addu $t4, $s2, $t9 +/* 0C1888 800C0C88 858D0002 */ lh $t5, 2($t4) +/* 0C188C 800C0C8C 01C27821 */ addu $t7, $t6, $v0 +/* 0C1890 800C0C90 448D4000 */ mtc1 $t5, $f8 +/* 0C1894 800C0C94 00000000 */ nop +/* 0C1898 800C0C98 468042A0 */ cvt.s.w $f10, $f8 +/* 0C189C 800C0C9C E5EA0004 */ swc1 $f10, 4($t7) +/* 0C18A0 800C0CA0 90F80000 */ lbu $t8, ($a3) +/* 0C18A4 800C0CA4 00000000 */ nop +/* 0C18A8 800C0CA8 44988000 */ mtc1 $t8, $f16 +/* 0C18AC 800C0CAC 07010004 */ bgez $t8, .L800C0CC0 +/* 0C18B0 800C0CB0 468084A0 */ cvt.s.w $f18, $f16 +/* 0C18B4 800C0CB4 44812000 */ mtc1 $at, $f4 +/* 0C18B8 800C0CB8 00000000 */ nop +/* 0C18BC 800C0CBC 46049480 */ add.s $f18, $f18, $f4 +.L800C0CC0: +/* 0C18C0 800C0CC0 8CD90000 */ lw $t9, ($a2) +/* 0C18C4 800C0CC4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0C18C8 800C0CC8 03226021 */ addu $t4, $t9, $v0 +/* 0C18CC 800C0CCC E5920008 */ swc1 $f18, 8($t4) +/* 0C18D0 800C0CD0 90AD0000 */ lbu $t5, ($a1) +/* 0C18D4 800C0CD4 8C790000 */ lw $t9, ($v1) +/* 0C18D8 800C0CD8 000D7040 */ sll $t6, $t5, 1 +/* 0C18DC 800C0CDC 024E7821 */ addu $t7, $s2, $t6 +/* 0C18E0 800C0CE0 85F80000 */ lh $t8, ($t7) +/* 0C18E4 800C0CE4 03226021 */ addu $t4, $t9, $v0 +/* 0C18E8 800C0CE8 44983000 */ mtc1 $t8, $f6 +/* 0C18EC 800C0CEC 00000000 */ nop +/* 0C18F0 800C0CF0 46803220 */ cvt.s.w $f8, $f6 +/* 0C18F4 800C0CF4 E5880000 */ swc1 $f8, ($t4) +/* 0C18F8 800C0CF8 90AD0000 */ lbu $t5, ($a1) +/* 0C18FC 800C0CFC 8C790000 */ lw $t9, ($v1) +/* 0C1900 800C0D00 000D7040 */ sll $t6, $t5, 1 +/* 0C1904 800C0D04 024E7821 */ addu $t7, $s2, $t6 +/* 0C1908 800C0D08 85F80002 */ lh $t8, 2($t7) +/* 0C190C 800C0D0C 03226021 */ addu $t4, $t9, $v0 +/* 0C1910 800C0D10 44985000 */ mtc1 $t8, $f10 +/* 0C1914 800C0D14 00000000 */ nop +/* 0C1918 800C0D18 46805420 */ cvt.s.w $f16, $f10 +/* 0C191C 800C0D1C E5900004 */ swc1 $f16, 4($t4) +/* 0C1920 800C0D20 910D0000 */ lbu $t5, ($t0) +/* 0C1924 800C0D24 00000000 */ nop +/* 0C1928 800C0D28 448D2000 */ mtc1 $t5, $f4 +/* 0C192C 800C0D2C 05A10004 */ bgez $t5, .L800C0D40 +/* 0C1930 800C0D30 468024A0 */ cvt.s.w $f18, $f4 +/* 0C1934 800C0D34 44813000 */ mtc1 $at, $f6 +/* 0C1938 800C0D38 00000000 */ nop +/* 0C193C 800C0D3C 46069480 */ add.s $f18, $f18, $f6 +.L800C0D40: +/* 0C1940 800C0D40 8C6E0000 */ lw $t6, ($v1) +/* 0C1944 800C0D44 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0C1948 800C0D48 01C27821 */ addu $t7, $t6, $v0 +/* 0C194C 800C0D4C E5F20008 */ swc1 $f18, 8($t7) +/* 0C1950 800C0D50 8CCC0000 */ lw $t4, ($a2) +/* 0C1954 800C0D54 8C780000 */ lw $t8, ($v1) +/* 0C1958 800C0D58 952E0000 */ lhu $t6, ($t1) +/* 0C195C 800C0D5C 01826821 */ addu $t5, $t4, $v0 +/* 0C1960 800C0D60 0302C821 */ addu $t9, $t8, $v0 +/* 0C1964 800C0D64 C7280000 */ lwc1 $f8, ($t9) +/* 0C1968 800C0D68 C5AA0000 */ lwc1 $f10, ($t5) +/* 0C196C 800C0D6C 448E2000 */ mtc1 $t6, $f4 +/* 0C1970 800C0D70 460A4401 */ sub.s $f16, $f8, $f10 +/* 0C1974 800C0D74 05C10004 */ bgez $t6, .L800C0D88 +/* 0C1978 800C0D78 468021A0 */ cvt.s.w $f6, $f4 +/* 0C197C 800C0D7C 44819000 */ mtc1 $at, $f18 +/* 0C1980 800C0D80 00000000 */ nop +/* 0C1984 800C0D84 46123180 */ add.s $f6, $f6, $f18 +.L800C0D88: +/* 0C1988 800C0D88 00000000 */ nop +/* 0C198C 800C0D8C 46068203 */ div.s $f8, $f16, $f6 +/* 0C1990 800C0D90 8D6F0000 */ lw $t7, ($t3) +/* 0C1994 800C0D94 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0C1998 800C0D98 01E2C021 */ addu $t8, $t7, $v0 +/* 0C199C 800C0D9C E7080000 */ swc1 $f8, ($t8) +/* 0C19A0 800C0DA0 8CCD0000 */ lw $t5, ($a2) +/* 0C19A4 800C0DA4 8C790000 */ lw $t9, ($v1) +/* 0C19A8 800C0DA8 952F0000 */ lhu $t7, ($t1) +/* 0C19AC 800C0DAC 01A27021 */ addu $t6, $t5, $v0 +/* 0C19B0 800C0DB0 03226021 */ addu $t4, $t9, $v0 +/* 0C19B4 800C0DB4 C58A0004 */ lwc1 $f10, 4($t4) +/* 0C19B8 800C0DB8 C5C40004 */ lwc1 $f4, 4($t6) +/* 0C19BC 800C0DBC 448F8000 */ mtc1 $t7, $f16 +/* 0C19C0 800C0DC0 46045481 */ sub.s $f18, $f10, $f4 +/* 0C19C4 800C0DC4 05E10004 */ bgez $t7, .L800C0DD8 +/* 0C19C8 800C0DC8 468081A0 */ cvt.s.w $f6, $f16 +/* 0C19CC 800C0DCC 44814000 */ mtc1 $at, $f8 +/* 0C19D0 800C0DD0 00000000 */ nop +/* 0C19D4 800C0DD4 46083180 */ add.s $f6, $f6, $f8 +.L800C0DD8: +/* 0C19D8 800C0DD8 00000000 */ nop +/* 0C19DC 800C0DDC 46069283 */ div.s $f10, $f18, $f6 +/* 0C19E0 800C0DE0 8D780000 */ lw $t8, ($t3) +/* 0C19E4 800C0DE4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0C19E8 800C0DE8 0302C821 */ addu $t9, $t8, $v0 +/* 0C19EC 800C0DEC E72A0004 */ swc1 $f10, 4($t9) +/* 0C19F0 800C0DF0 8CCE0000 */ lw $t6, ($a2) +/* 0C19F4 800C0DF4 8C6C0000 */ lw $t4, ($v1) +/* 0C19F8 800C0DF8 95380000 */ lhu $t8, ($t1) +/* 0C19FC 800C0DFC 01C27821 */ addu $t7, $t6, $v0 +/* 0C1A00 800C0E00 01826821 */ addu $t5, $t4, $v0 +/* 0C1A04 800C0E04 C5A40008 */ lwc1 $f4, 8($t5) +/* 0C1A08 800C0E08 C5F00008 */ lwc1 $f16, 8($t7) +/* 0C1A0C 800C0E0C 44989000 */ mtc1 $t8, $f18 +/* 0C1A10 800C0E10 46102201 */ sub.s $f8, $f4, $f16 +/* 0C1A14 800C0E14 07010004 */ bgez $t8, .L800C0E28 +/* 0C1A18 800C0E18 468091A0 */ cvt.s.w $f6, $f18 +/* 0C1A1C 800C0E1C 44815000 */ mtc1 $at, $f10 +/* 0C1A20 800C0E20 00000000 */ nop +/* 0C1A24 800C0E24 460A3180 */ add.s $f6, $f6, $f10 +.L800C0E28: +/* 0C1A28 800C0E28 00000000 */ nop +/* 0C1A2C 800C0E2C 46064103 */ div.s $f4, $f8, $f6 +/* 0C1A30 800C0E30 8D790000 */ lw $t9, ($t3) +/* 0C1A34 800C0E34 254A0001 */ addiu $t2, $t2, 1 +/* 0C1A38 800C0E38 03226021 */ addu $t4, $t9, $v0 +/* 0C1A3C 800C0E3C 2442000C */ addiu $v0, $v0, 0xc +/* 0C1A40 800C0E40 24840001 */ addiu $a0, $a0, 1 +/* 0C1A44 800C0E44 24E70001 */ addiu $a3, $a3, 1 +/* 0C1A48 800C0E48 24A50001 */ addiu $a1, $a1, 1 +/* 0C1A4C 800C0E4C 25080001 */ addiu $t0, $t0, 1 +/* 0C1A50 800C0E50 1550FF7F */ bne $t2, $s0, .L800C0C50 +/* 0C1A54 800C0E54 E5840008 */ swc1 $f4, 8($t4) +/* 0C1A58 800C0E58 00005025 */ move $t2, $zero +.L800C0E5C: +/* 0C1A5C 800C0E5C 3C088013 */ lui $t0, %hi(D_8012A736) # $t0, 0x8013 +/* 0C1A60 800C0E60 3C078013 */ lui $a3, %hi(D_8012A735) # $a3, 0x8013 +/* 0C1A64 800C0E64 3C068013 */ lui $a2, %hi(D_8012A734) # $a2, 0x8013 +/* 0C1A68 800C0E68 24C6A734 */ addiu $a2, %lo(D_8012A734) # addiu $a2, $a2, -0x58cc +/* 0C1A6C 800C0E6C 24E7A735 */ addiu $a3, %lo(D_8012A735) # addiu $a3, $a3, -0x58cb +/* 0C1A70 800C0E70 2508A736 */ addiu $t0, %lo(D_8012A736) # addiu $t0, $t0, -0x58ca +/* 0C1A74 800C0E74 2404FFF0 */ li $a0, -16 +.L800C0E78: +/* 0C1A78 800C0E78 1A000065 */ blez $s0, .L800C1010 +/* 0C1A7C 800C0E7C 00002825 */ move $a1, $zero +/* 0C1A80 800C0E80 3C0E800E */ lui $t6, %hi(D_800E31C0) # $t6, 0x800e +/* 0C1A84 800C0E84 25CE31C0 */ addiu $t6, %lo(D_800E31C0) # addiu $t6, $t6, 0x31c0 +/* 0C1A88 800C0E88 000A6880 */ sll $t5, $t2, 2 +/* 0C1A8C 800C0E8C 320B0003 */ andi $t3, $s0, 3 +/* 0C1A90 800C0E90 11600017 */ beqz $t3, .L800C0EF0 +/* 0C1A94 800C0E94 01AE1821 */ addu $v1, $t5, $t6 +/* 0C1A98 800C0E98 00001025 */ move $v0, $zero +/* 0C1A9C 800C0E9C 000210C0 */ sll $v0, $v0, 3 +/* 0C1AA0 800C0EA0 01604825 */ move $t1, $t3 +.L800C0EA4: +/* 0C1AA4 800C0EA4 8C6F0000 */ lw $t7, ($v1) +/* 0C1AA8 800C0EA8 24A50001 */ addiu $a1, $a1, 1 +/* 0C1AAC 800C0EAC 01E2C021 */ addu $t8, $t7, $v0 +/* 0C1AB0 800C0EB0 A7040004 */ sh $a0, 4($t8) +/* 0C1AB4 800C0EB4 8C6C0000 */ lw $t4, ($v1) +/* 0C1AB8 800C0EB8 90D90000 */ lbu $t9, ($a2) +/* 0C1ABC 800C0EBC 01826821 */ addu $t5, $t4, $v0 +/* 0C1AC0 800C0EC0 A1B90006 */ sb $t9, 6($t5) +/* 0C1AC4 800C0EC4 8C6F0000 */ lw $t7, ($v1) +/* 0C1AC8 800C0EC8 90EE0000 */ lbu $t6, ($a3) +/* 0C1ACC 800C0ECC 01E2C021 */ addu $t8, $t7, $v0 +/* 0C1AD0 800C0ED0 A30E0007 */ sb $t6, 7($t8) +/* 0C1AD4 800C0ED4 8C790000 */ lw $t9, ($v1) +/* 0C1AD8 800C0ED8 910C0000 */ lbu $t4, ($t0) +/* 0C1ADC 800C0EDC 03226821 */ addu $t5, $t9, $v0 +/* 0C1AE0 800C0EE0 2442000A */ addiu $v0, $v0, 0xa +/* 0C1AE4 800C0EE4 1525FFEF */ bne $t1, $a1, .L800C0EA4 +/* 0C1AE8 800C0EE8 A1AC0008 */ sb $t4, 8($t5) +/* 0C1AEC 800C0EEC 10B00048 */ beq $a1, $s0, .L800C1010 +.L800C0EF0: +/* 0C1AF0 800C0EF0 00051080 */ sll $v0, $a1, 2 +/* 0C1AF4 800C0EF4 00104880 */ sll $t1, $s0, 2 +/* 0C1AF8 800C0EF8 01304821 */ addu $t1, $t1, $s0 +/* 0C1AFC 800C0EFC 00451021 */ addu $v0, $v0, $a1 +/* 0C1B00 800C0F00 00021040 */ sll $v0, $v0, 1 +/* 0C1B04 800C0F04 00094840 */ sll $t1, $t1, 1 +.L800C0F08: +/* 0C1B08 800C0F08 8C6F0000 */ lw $t7, ($v1) +/* 0C1B0C 800C0F0C 00000000 */ nop +/* 0C1B10 800C0F10 01E27021 */ addu $t6, $t7, $v0 +/* 0C1B14 800C0F14 A5C40004 */ sh $a0, 4($t6) +/* 0C1B18 800C0F18 8C790000 */ lw $t9, ($v1) +/* 0C1B1C 800C0F1C 90D80000 */ lbu $t8, ($a2) +/* 0C1B20 800C0F20 03226021 */ addu $t4, $t9, $v0 +/* 0C1B24 800C0F24 A1980006 */ sb $t8, 6($t4) +/* 0C1B28 800C0F28 8C6F0000 */ lw $t7, ($v1) +/* 0C1B2C 800C0F2C 90ED0000 */ lbu $t5, ($a3) +/* 0C1B30 800C0F30 01E27021 */ addu $t6, $t7, $v0 +/* 0C1B34 800C0F34 A1CD0007 */ sb $t5, 7($t6) +/* 0C1B38 800C0F38 8C780000 */ lw $t8, ($v1) +/* 0C1B3C 800C0F3C 91190000 */ lbu $t9, ($t0) +/* 0C1B40 800C0F40 03026021 */ addu $t4, $t8, $v0 +/* 0C1B44 800C0F44 A1990008 */ sb $t9, 8($t4) +/* 0C1B48 800C0F48 8C6F0000 */ lw $t7, ($v1) +/* 0C1B4C 800C0F4C 00000000 */ nop +/* 0C1B50 800C0F50 01E26821 */ addu $t5, $t7, $v0 +/* 0C1B54 800C0F54 A5A4000E */ sh $a0, 0xe($t5) +/* 0C1B58 800C0F58 8C780000 */ lw $t8, ($v1) +/* 0C1B5C 800C0F5C 90CE0000 */ lbu $t6, ($a2) +/* 0C1B60 800C0F60 0302C821 */ addu $t9, $t8, $v0 +/* 0C1B64 800C0F64 A32E0010 */ sb $t6, 0x10($t9) +/* 0C1B68 800C0F68 8C6F0000 */ lw $t7, ($v1) +/* 0C1B6C 800C0F6C 90EC0000 */ lbu $t4, ($a3) +/* 0C1B70 800C0F70 01E26821 */ addu $t5, $t7, $v0 +/* 0C1B74 800C0F74 A1AC0011 */ sb $t4, 0x11($t5) +/* 0C1B78 800C0F78 8C6E0000 */ lw $t6, ($v1) +/* 0C1B7C 800C0F7C 91180000 */ lbu $t8, ($t0) +/* 0C1B80 800C0F80 01C2C821 */ addu $t9, $t6, $v0 +/* 0C1B84 800C0F84 A3380012 */ sb $t8, 0x12($t9) +/* 0C1B88 800C0F88 8C6F0000 */ lw $t7, ($v1) +/* 0C1B8C 800C0F8C 00000000 */ nop +/* 0C1B90 800C0F90 01E26021 */ addu $t4, $t7, $v0 +/* 0C1B94 800C0F94 A5840018 */ sh $a0, 0x18($t4) +/* 0C1B98 800C0F98 8C6E0000 */ lw $t6, ($v1) +/* 0C1B9C 800C0F9C 90CD0000 */ lbu $t5, ($a2) +/* 0C1BA0 800C0FA0 01C2C021 */ addu $t8, $t6, $v0 +/* 0C1BA4 800C0FA4 A30D001A */ sb $t5, 0x1a($t8) +/* 0C1BA8 800C0FA8 8C6F0000 */ lw $t7, ($v1) +/* 0C1BAC 800C0FAC 90F90000 */ lbu $t9, ($a3) +/* 0C1BB0 800C0FB0 01E26021 */ addu $t4, $t7, $v0 +/* 0C1BB4 800C0FB4 A199001B */ sb $t9, 0x1b($t4) +/* 0C1BB8 800C0FB8 8C6D0000 */ lw $t5, ($v1) +/* 0C1BBC 800C0FBC 910E0000 */ lbu $t6, ($t0) +/* 0C1BC0 800C0FC0 01A2C021 */ addu $t8, $t5, $v0 +/* 0C1BC4 800C0FC4 A30E001C */ sb $t6, 0x1c($t8) +/* 0C1BC8 800C0FC8 8C6F0000 */ lw $t7, ($v1) +/* 0C1BCC 800C0FCC 00000000 */ nop +/* 0C1BD0 800C0FD0 01E2C821 */ addu $t9, $t7, $v0 +/* 0C1BD4 800C0FD4 A7240022 */ sh $a0, 0x22($t9) +/* 0C1BD8 800C0FD8 8C6D0000 */ lw $t5, ($v1) +/* 0C1BDC 800C0FDC 90CC0000 */ lbu $t4, ($a2) +/* 0C1BE0 800C0FE0 01A27021 */ addu $t6, $t5, $v0 +/* 0C1BE4 800C0FE4 A1CC0024 */ sb $t4, 0x24($t6) +/* 0C1BE8 800C0FE8 8C6F0000 */ lw $t7, ($v1) +/* 0C1BEC 800C0FEC 90F80000 */ lbu $t8, ($a3) +/* 0C1BF0 800C0FF0 01E2C821 */ addu $t9, $t7, $v0 +/* 0C1BF4 800C0FF4 A3380025 */ sb $t8, 0x25($t9) +/* 0C1BF8 800C0FF8 8C6C0000 */ lw $t4, ($v1) +/* 0C1BFC 800C0FFC 910D0000 */ lbu $t5, ($t0) +/* 0C1C00 800C1000 01827021 */ addu $t6, $t4, $v0 +/* 0C1C04 800C1004 24420028 */ addiu $v0, $v0, 0x28 +/* 0C1C08 800C1008 1449FFBF */ bne $v0, $t1, .L800C0F08 +/* 0C1C0C 800C100C A1CD0026 */ sb $t5, 0x26($t6) +.L800C1010: +/* 0C1C10 800C1010 254A0001 */ addiu $t2, $t2, 1 +/* 0C1C14 800C1014 29410002 */ slti $at, $t2, 2 +/* 0C1C18 800C1018 1420FF97 */ bnez $at, .L800C0E78 +/* 0C1C1C 800C101C 00000000 */ nop +/* 0C1C20 800C1020 8FA70070 */ lw $a3, 0x70($sp) +/* 0C1C24 800C1024 00005025 */ move $t2, $zero +/* 0C1C28 800C1028 24080002 */ li $t0, 2 +/* 0C1C2C 800C102C 24060040 */ li $a2, 64 +.L800C1030: +/* 0C1C30 800C1030 1A200031 */ blez $s1, .L800C10F8 +/* 0C1C34 800C1034 00002825 */ move $a1, $zero +/* 0C1C38 800C1038 3C18800E */ lui $t8, %hi(D_800E31C8) # $t8, 0x800e +/* 0C1C3C 800C103C 271831C8 */ addiu $t8, %lo(D_800E31C8) # addiu $t8, $t8, 0x31c8 +/* 0C1C40 800C1040 000A7880 */ sll $t7, $t2, 2 +/* 0C1C44 800C1044 01F81821 */ addu $v1, $t7, $t8 +/* 0C1C48 800C1048 00001025 */ move $v0, $zero +/* 0C1C4C 800C104C 00E02025 */ move $a0, $a3 +.L800C1050: +/* 0C1C50 800C1050 8C790000 */ lw $t9, ($v1) +/* 0C1C54 800C1054 24A50001 */ addiu $a1, $a1, 1 +/* 0C1C58 800C1058 03226021 */ addu $t4, $t9, $v0 +/* 0C1C5C 800C105C A1860000 */ sb $a2, ($t4) +/* 0C1C60 800C1060 8C6E0000 */ lw $t6, ($v1) +/* 0C1C64 800C1064 908D0000 */ lbu $t5, ($a0) +/* 0C1C68 800C1068 01C27821 */ addu $t7, $t6, $v0 +/* 0C1C6C 800C106C A1ED0001 */ sb $t5, 1($t7) +/* 0C1C70 800C1070 8C780000 */ lw $t8, ($v1) +/* 0C1C74 800C1074 24840003 */ addiu $a0, $a0, 3 +/* 0C1C78 800C1078 0302C821 */ addu $t9, $t8, $v0 +/* 0C1C7C 800C107C A7200004 */ sh $zero, 4($t9) +/* 0C1C80 800C1080 8C6C0000 */ lw $t4, ($v1) +/* 0C1C84 800C1084 00000000 */ nop +/* 0C1C88 800C1088 01827021 */ addu $t6, $t4, $v0 +/* 0C1C8C 800C108C A5C00006 */ sh $zero, 6($t6) +/* 0C1C90 800C1090 8C6F0000 */ lw $t7, ($v1) +/* 0C1C94 800C1094 908DFFFE */ lbu $t5, -2($a0) +/* 0C1C98 800C1098 01E2C021 */ addu $t8, $t7, $v0 +/* 0C1C9C 800C109C A30D0002 */ sb $t5, 2($t8) +/* 0C1CA0 800C10A0 8C790000 */ lw $t9, ($v1) +/* 0C1CA4 800C10A4 00000000 */ nop +/* 0C1CA8 800C10A8 03226021 */ addu $t4, $t9, $v0 +/* 0C1CAC 800C10AC A5800008 */ sh $zero, 8($t4) +/* 0C1CB0 800C10B0 8C6E0000 */ lw $t6, ($v1) +/* 0C1CB4 800C10B4 00000000 */ nop +/* 0C1CB8 800C10B8 01C27821 */ addu $t7, $t6, $v0 +/* 0C1CBC 800C10BC A5E0000A */ sh $zero, 0xa($t7) +/* 0C1CC0 800C10C0 8C780000 */ lw $t8, ($v1) +/* 0C1CC4 800C10C4 908DFFFF */ lbu $t5, -1($a0) +/* 0C1CC8 800C10C8 0302C821 */ addu $t9, $t8, $v0 +/* 0C1CCC 800C10CC A32D0003 */ sb $t5, 3($t9) +/* 0C1CD0 800C10D0 8C6C0000 */ lw $t4, ($v1) +/* 0C1CD4 800C10D4 00000000 */ nop +/* 0C1CD8 800C10D8 01827021 */ addu $t6, $t4, $v0 +/* 0C1CDC 800C10DC A5C0000C */ sh $zero, 0xc($t6) +/* 0C1CE0 800C10E0 8C6F0000 */ lw $t7, ($v1) +/* 0C1CE4 800C10E4 00000000 */ nop +/* 0C1CE8 800C10E8 01E2C021 */ addu $t8, $t7, $v0 +/* 0C1CEC 800C10EC 24420010 */ addiu $v0, $v0, 0x10 +/* 0C1CF0 800C10F0 14B1FFD7 */ bne $a1, $s1, .L800C1050 +/* 0C1CF4 800C10F4 A700000E */ sh $zero, 0xe($t8) +.L800C10F8: +/* 0C1CF8 800C10F8 254A0001 */ addiu $t2, $t2, 1 +/* 0C1CFC 800C10FC 1548FFCC */ bne $t2, $t0, .L800C1030 +/* 0C1D00 800C1100 00000000 */ nop +/* 0C1D04 800C1104 240D0001 */ li $t5, 1 +/* 0C1D08 800C1108 3C01800E */ lui $at, %hi(D_800E31AC) # $at, 0x800e +/* 0C1D0C 800C110C AC2D31AC */ sw $t5, %lo(D_800E31AC)($at) +/* 0C1D10 800C1110 3C018013 */ lui $at, %hi(D_8012A77C) # $at, 0x8013 +/* 0C1D14 800C1114 8FBF0024 */ lw $ra, 0x24($sp) +/* 0C1D18 800C1118 AC30A77C */ sw $s0, %lo(D_8012A77C)($at) +/* 0C1D1C 800C111C 8FB00018 */ lw $s0, 0x18($sp) +/* 0C1D20 800C1120 8FB1001C */ lw $s1, 0x1c($sp) +/* 0C1D24 800C1124 8FB20020 */ lw $s2, 0x20($sp) +/* 0C1D28 800C1128 03E00008 */ jr $ra +/* 0C1D2C 800C112C 27BD0050 */ addiu $sp, $sp, 0x50 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C1130.s b/asm/non_matchings/unknown_0B8920/func_800C1130.s new file mode 100644 index 00000000..e7c777d0 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C1130.s @@ -0,0 +1,187 @@ +glabel func_800C1130 +/* 0C1D30 800C1130 3C07800E */ lui $a3, %hi(D_800E31B0) # $a3, 0x800e +/* 0C1D34 800C1134 24E731B0 */ addiu $a3, %lo(D_800E31B0) # addiu $a3, $a3, 0x31b0 +/* 0C1D38 800C1138 44842000 */ mtc1 $a0, $f4 +/* 0C1D3C 800C113C 94E20000 */ lhu $v0, ($a3) +/* 0C1D40 800C1140 3C03800E */ lui $v1, %hi(D_800E0001) # $v1, 0x800e +/* 0C1D44 800C1144 1840009B */ blez $v0, .L800C13B4 +/* 0C1D48 800C1148 46802020 */ cvt.s.w $f0, $f4 +/* 0C1D4C 800C114C 0082082A */ slt $at, $a0, $v0 +/* 0C1D50 800C1150 10200034 */ beqz $at, .L800C1224 +/* 0C1D54 800C1154 3C088013 */ lui $t0, %hi(D_8012A77C) # $t0, 0x8013 +/* 0C1D58 800C1158 2508A77C */ addiu $t0, %lo(D_8012A77C) # addiu $t0, $t0, -0x5884 +/* 0C1D5C 800C115C 8D050000 */ lw $a1, ($t0) +/* 0C1D60 800C1160 00001825 */ move $v1, $zero +/* 0C1D64 800C1164 18A0002A */ blez $a1, .L800C1210 +/* 0C1D68 800C1168 3C0A8013 */ lui $t2, %hi(D_8012A774) # $t2, 0x8013 +/* 0C1D6C 800C116C 3C098013 */ lui $t1, %hi(D_8012A770) # $t1, 0x8013 +/* 0C1D70 800C1170 2529A770 */ addiu $t1, %lo(D_8012A770) # addiu $t1, $t1, -0x5890 +/* 0C1D74 800C1174 00001025 */ move $v0, $zero +/* 0C1D78 800C1178 254AA774 */ addiu $t2, %lo(D_8012A774) # addiu $t2, $t2, -0x588c +.L800C117C: +/* 0C1D7C 800C117C 8D4F0000 */ lw $t7, ($t2) +/* 0C1D80 800C1180 8D2E0000 */ lw $t6, ($t1) +/* 0C1D84 800C1184 01E2C021 */ addu $t8, $t7, $v0 +/* 0C1D88 800C1188 C7080000 */ lwc1 $f8, ($t8) +/* 0C1D8C 800C118C 01C23021 */ addu $a2, $t6, $v0 +/* 0C1D90 800C1190 46080282 */ mul.s $f10, $f0, $f8 +/* 0C1D94 800C1194 C4C60000 */ lwc1 $f6, ($a2) +/* 0C1D98 800C1198 24630001 */ addiu $v1, %lo(D_800E0001) # addiu $v1, $v1, 1 +/* 0C1D9C 800C119C 460A3400 */ add.s $f16, $f6, $f10 +/* 0C1DA0 800C11A0 E4D00000 */ swc1 $f16, ($a2) +/* 0C1DA4 800C11A4 8D4B0000 */ lw $t3, ($t2) +/* 0C1DA8 800C11A8 8D390000 */ lw $t9, ($t1) +/* 0C1DAC 800C11AC 01626021 */ addu $t4, $t3, $v0 +/* 0C1DB0 800C11B0 C5840004 */ lwc1 $f4, 4($t4) +/* 0C1DB4 800C11B4 03223021 */ addu $a2, $t9, $v0 +/* 0C1DB8 800C11B8 46040202 */ mul.s $f8, $f0, $f4 +/* 0C1DBC 800C11BC C4D20004 */ lwc1 $f18, 4($a2) +/* 0C1DC0 800C11C0 00000000 */ nop +/* 0C1DC4 800C11C4 46089180 */ add.s $f6, $f18, $f8 +/* 0C1DC8 800C11C8 E4C60004 */ swc1 $f6, 4($a2) +/* 0C1DCC 800C11CC 8D4E0000 */ lw $t6, ($t2) +/* 0C1DD0 800C11D0 8D2D0000 */ lw $t5, ($t1) +/* 0C1DD4 800C11D4 01C27821 */ addu $t7, $t6, $v0 +/* 0C1DD8 800C11D8 C5F00008 */ lwc1 $f16, 8($t7) +/* 0C1DDC 800C11DC 01A23021 */ addu $a2, $t5, $v0 +/* 0C1DE0 800C11E0 46100102 */ mul.s $f4, $f0, $f16 +/* 0C1DE4 800C11E4 C4CA0008 */ lwc1 $f10, 8($a2) +/* 0C1DE8 800C11E8 2442000C */ addiu $v0, $v0, 0xc +/* 0C1DEC 800C11EC 46045480 */ add.s $f18, $f10, $f4 +/* 0C1DF0 800C11F0 E4D20008 */ swc1 $f18, 8($a2) +/* 0C1DF4 800C11F4 8D050000 */ lw $a1, ($t0) +/* 0C1DF8 800C11F8 00000000 */ nop +/* 0C1DFC 800C11FC 0065082A */ slt $at, $v1, $a1 +/* 0C1E00 800C1200 1420FFDE */ bnez $at, .L800C117C +/* 0C1E04 800C1204 00000000 */ nop +/* 0C1E08 800C1208 94E20000 */ lhu $v0, ($a3) +/* 0C1E0C 800C120C 00001825 */ move $v1, $zero +.L800C1210: +/* 0C1E10 800C1210 3C098013 */ lui $t1, %hi(D_8012A770) # $t1, 0x8013 +/* 0C1E14 800C1214 0044C023 */ subu $t8, $v0, $a0 +/* 0C1E18 800C1218 2529A770 */ addiu $t1, %lo(D_8012A770) # addiu $t1, $t1, -0x5890 +/* 0C1E1C 800C121C 10000026 */ b .L800C12B8 +/* 0C1E20 800C1220 A4F80000 */ sh $t8, ($a3) +.L800C1224: +/* 0C1E24 800C1224 3C088013 */ lui $t0, %hi(D_8012A77C) # $t0, 0x8013 +/* 0C1E28 800C1228 2508A77C */ addiu $t0, %lo(D_8012A77C) # addiu $t0, $t0, -0x5884 +/* 0C1E2C 800C122C 8D050000 */ lw $a1, ($t0) +/* 0C1E30 800C1230 00001825 */ move $v1, $zero +/* 0C1E34 800C1234 18A0001D */ blez $a1, .L800C12AC +/* 0C1E38 800C1238 3C098013 */ lui $t1, %hi(D_8012A770) # $t1, 0x8013 +/* 0C1E3C 800C123C 3C048013 */ lui $a0, %hi(D_8012A778) # $a0, 0x8013 +/* 0C1E40 800C1240 2484A778 */ addiu $a0, %lo(D_8012A778) # addiu $a0, $a0, -0x5888 +/* 0C1E44 800C1244 2529A770 */ addiu $t1, %lo(D_8012A770) # addiu $t1, $t1, -0x5890 +/* 0C1E48 800C1248 00001025 */ move $v0, $zero +.L800C124C: +/* 0C1E4C 800C124C 8C990000 */ lw $t9, ($a0) +/* 0C1E50 800C1250 8D2C0000 */ lw $t4, ($t1) +/* 0C1E54 800C1254 03225821 */ addu $t3, $t9, $v0 +/* 0C1E58 800C1258 C5680000 */ lwc1 $f8, ($t3) +/* 0C1E5C 800C125C 01826821 */ addu $t5, $t4, $v0 +/* 0C1E60 800C1260 E5A80000 */ swc1 $f8, ($t5) +/* 0C1E64 800C1264 8C8E0000 */ lw $t6, ($a0) +/* 0C1E68 800C1268 8D380000 */ lw $t8, ($t1) +/* 0C1E6C 800C126C 01C27821 */ addu $t7, $t6, $v0 +/* 0C1E70 800C1270 C5E60004 */ lwc1 $f6, 4($t7) +/* 0C1E74 800C1274 0302C821 */ addu $t9, $t8, $v0 +/* 0C1E78 800C1278 E7260004 */ swc1 $f6, 4($t9) +/* 0C1E7C 800C127C 8C8B0000 */ lw $t3, ($a0) +/* 0C1E80 800C1280 8D2D0000 */ lw $t5, ($t1) +/* 0C1E84 800C1284 01626021 */ addu $t4, $t3, $v0 +/* 0C1E88 800C1288 C5900008 */ lwc1 $f16, 8($t4) +/* 0C1E8C 800C128C 01A27021 */ addu $t6, $t5, $v0 +/* 0C1E90 800C1290 E5D00008 */ swc1 $f16, 8($t6) +/* 0C1E94 800C1294 8D050000 */ lw $a1, ($t0) +/* 0C1E98 800C1298 24630001 */ addiu $v1, $v1, 1 +/* 0C1E9C 800C129C 0065082A */ slt $at, $v1, $a1 +/* 0C1EA0 800C12A0 1420FFEA */ bnez $at, .L800C124C +/* 0C1EA4 800C12A4 2442000C */ addiu $v0, $v0, 0xc +/* 0C1EA8 800C12A8 00001825 */ move $v1, $zero +.L800C12AC: +/* 0C1EAC 800C12AC 3C098013 */ lui $t1, %hi(D_8012A770) # $t1, 0x8013 +/* 0C1EB0 800C12B0 2529A770 */ addiu $t1, %lo(D_8012A770) # addiu $t1, $t1, -0x5890 +/* 0C1EB4 800C12B4 A4E00000 */ sh $zero, ($a3) +.L800C12B8: +/* 0C1EB8 800C12B8 18A00048 */ blez $a1, .L800C13DC +/* 0C1EBC 800C12BC 00001025 */ move $v0, $zero +/* 0C1EC0 800C12C0 3C06800E */ lui $a2, %hi(D_800E31D0) # $a2, 0x800e +/* 0C1EC4 800C12C4 3C05800E */ lui $a1, %hi(D_800E31C0) # $a1, 0x800e +/* 0C1EC8 800C12C8 24A531C0 */ addiu $a1, %lo(D_800E31C0) # addiu $a1, $a1, 0x31c0 +/* 0C1ECC 800C12CC 24C631D0 */ addiu $a2, %lo(D_800E31D0) # addiu $a2, $a2, 0x31d0 +/* 0C1ED0 800C12D0 00002025 */ move $a0, $zero +.L800C12D4: +/* 0C1ED4 800C12D4 4459F800 */ cfc1 $t9, $31 +/* 0C1ED8 800C12D8 8D2F0000 */ lw $t7, ($t1) +/* 0C1EDC 800C12DC 37210003 */ ori $at, $t9, 3 +/* 0C1EE0 800C12E0 38210002 */ xori $at, $at, 2 +/* 0C1EE4 800C12E4 01E2C021 */ addu $t8, $t7, $v0 +/* 0C1EE8 800C12E8 C70A0000 */ lwc1 $f10, ($t8) +/* 0C1EEC 800C12EC 44C1F800 */ ctc1 $at, $31 +/* 0C1EF0 800C12F0 8CCC0000 */ lw $t4, ($a2) +/* 0C1EF4 800C12F4 46005124 */ cvt.w.s $f4, $f10 +/* 0C1EF8 800C12F8 000C6880 */ sll $t5, $t4, 2 +/* 0C1EFC 800C12FC 00AD7021 */ addu $t6, $a1, $t5 +/* 0C1F00 800C1300 44D9F800 */ ctc1 $t9, $31 +/* 0C1F04 800C1304 8DCF0000 */ lw $t7, ($t6) +/* 0C1F08 800C1308 440B2000 */ mfc1 $t3, $f4 +/* 0C1F0C 800C130C 01E4C021 */ addu $t8, $t7, $a0 +/* 0C1F10 800C1310 444DF800 */ cfc1 $t5, $31 +/* 0C1F14 800C1314 A70B0000 */ sh $t3, ($t8) +/* 0C1F18 800C1318 8D390000 */ lw $t9, ($t1) +/* 0C1F1C 800C131C 35A10003 */ ori $at, $t5, 3 +/* 0C1F20 800C1320 38210002 */ xori $at, $at, 2 +/* 0C1F24 800C1324 03226021 */ addu $t4, $t9, $v0 +/* 0C1F28 800C1328 C5920004 */ lwc1 $f18, 4($t4) +/* 0C1F2C 800C132C 44C1F800 */ ctc1 $at, $31 +/* 0C1F30 800C1330 8CCF0000 */ lw $t7, ($a2) +/* 0C1F34 800C1334 46009224 */ cvt.w.s $f8, $f18 +/* 0C1F38 800C1338 000F5880 */ sll $t3, $t7, 2 +/* 0C1F3C 800C133C 00ABC021 */ addu $t8, $a1, $t3 +/* 0C1F40 800C1340 44CDF800 */ ctc1 $t5, $31 +/* 0C1F44 800C1344 8F190000 */ lw $t9, ($t8) +/* 0C1F48 800C1348 440E4000 */ mfc1 $t6, $f8 +/* 0C1F4C 800C134C 03246021 */ addu $t4, $t9, $a0 +/* 0C1F50 800C1350 444BF800 */ cfc1 $t3, $31 +/* 0C1F54 800C1354 A58E0002 */ sh $t6, 2($t4) +/* 0C1F58 800C1358 8D2D0000 */ lw $t5, ($t1) +/* 0C1F5C 800C135C 35610003 */ ori $at, $t3, 3 +/* 0C1F60 800C1360 8CD90000 */ lw $t9, ($a2) +/* 0C1F64 800C1364 38210002 */ xori $at, $at, 2 +/* 0C1F68 800C1368 01A27821 */ addu $t7, $t5, $v0 +/* 0C1F6C 800C136C C5E60008 */ lwc1 $f6, 8($t7) +/* 0C1F70 800C1370 44C1F800 */ ctc1 $at, $31 +/* 0C1F74 800C1374 00197080 */ sll $t6, $t9, 2 +/* 0C1F78 800C1378 46003424 */ cvt.w.s $f16, $f6 +/* 0C1F7C 800C137C 00AE6021 */ addu $t4, $a1, $t6 +/* 0C1F80 800C1380 8D8D0000 */ lw $t5, ($t4) +/* 0C1F84 800C1384 44188000 */ mfc1 $t8, $f16 +/* 0C1F88 800C1388 01A47821 */ addu $t7, $t5, $a0 +/* 0C1F8C 800C138C 44CBF800 */ ctc1 $t3, $31 +/* 0C1F90 800C1390 A1F80009 */ sb $t8, 9($t7) +/* 0C1F94 800C1394 8D0B0000 */ lw $t3, ($t0) +/* 0C1F98 800C1398 24630001 */ addiu $v1, $v1, 1 +/* 0C1F9C 800C139C 006B082A */ slt $at, $v1, $t3 +/* 0C1FA0 800C13A0 2484000A */ addiu $a0, $a0, 0xa +/* 0C1FA4 800C13A4 1420FFCB */ bnez $at, .L800C12D4 +/* 0C1FA8 800C13A8 2442000C */ addiu $v0, $v0, 0xc +/* 0C1FAC 800C13AC 03E00008 */ jr $ra +/* 0C1FB0 800C13B0 00000000 */ nop + +.L800C13B4: +/* 0C1FB4 800C13B4 246331B4 */ addiu $v1, $v1, 0x31b4 +/* 0C1FB8 800C13B8 94620000 */ lhu $v0, ($v1) +/* 0C1FBC 800C13BC 3401FFFF */ li $at, 65535 +/* 0C1FC0 800C13C0 10410006 */ beq $v0, $at, .L800C13DC +/* 0C1FC4 800C13C4 0082082A */ slt $at, $a0, $v0 +/* 0C1FC8 800C13C8 10200003 */ beqz $at, .L800C13D8 +/* 0C1FCC 800C13CC 0044C823 */ subu $t9, $v0, $a0 +/* 0C1FD0 800C13D0 03E00008 */ jr $ra +/* 0C1FD4 800C13D4 A4790000 */ sh $t9, ($v1) + +.L800C13D8: +/* 0C1FD8 800C13D8 A4600000 */ sh $zero, ($v1) +.L800C13DC: +/* 0C1FDC 800C13DC 03E00008 */ jr $ra +/* 0C1FE0 800C13E0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C13E4.s b/asm/non_matchings/unknown_0B8920/func_800C13E4.s new file mode 100644 index 00000000..b2d037ef --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C13E4.s @@ -0,0 +1,64 @@ +glabel func_800C13E4 +/* 0C1FE4 800C13E4 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C1FE8 800C13E8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0C1FEC 800C13EC AFA5001C */ sw $a1, 0x1c($sp) +/* 0C1FF0 800C13F0 AFA60020 */ sw $a2, 0x20($sp) +/* 0C1FF4 800C13F4 0C01ECF4 */ jal func_8007B3D0 +/* 0C1FF8 800C13F8 AFA40018 */ sw $a0, 0x18($sp) +/* 0C1FFC 800C13FC 8FA40018 */ lw $a0, 0x18($sp) +/* 0C2000 800C1400 3C18800E */ lui $t8, %hi(D_800E3648) # $t8, 0x800e +/* 0C2004 800C1404 8C820000 */ lw $v0, ($a0) +/* 0C2008 800C1408 27183648 */ addiu $t8, %lo(D_800E3648) # addiu $t8, $t8, 0x3648 +/* 0C200C 800C140C 244E0008 */ addiu $t6, $v0, 8 +/* 0C2010 800C1410 AC8E0000 */ sw $t6, ($a0) +/* 0C2014 800C1414 3C0F0600 */ lui $t7, 0x600 +/* 0C2018 800C1418 AC4F0000 */ sw $t7, ($v0) +/* 0C201C 800C141C AC580004 */ sw $t8, 4($v0) +/* 0C2020 800C1420 8C820000 */ lw $v0, ($a0) +/* 0C2024 800C1424 3C07800E */ lui $a3, %hi(D_800E31D0) # $a3, 0x800e +/* 0C2028 800C1428 24590008 */ addiu $t9, $v0, 8 +/* 0C202C 800C142C 24E731D0 */ addiu $a3, %lo(D_800E31D0) # addiu $a3, $a3, 0x31d0 +/* 0C2030 800C1430 AC990000 */ sw $t9, ($a0) +/* 0C2034 800C1434 8CEA0000 */ lw $t2, ($a3) +/* 0C2038 800C1438 3C09800E */ lui $t1, %hi(D_800E31C0) # $t1, 0x800e +/* 0C203C 800C143C 252931C0 */ addiu $t1, %lo(D_800E31C0) # addiu $t1, $t1, 0x31c0 +/* 0C2040 800C1440 000A5880 */ sll $t3, $t2, 2 +/* 0C2044 800C1444 012B6021 */ addu $t4, $t1, $t3 +/* 0C2048 800C1448 8D8D0000 */ lw $t5, ($t4) +/* 0C204C 800C144C 3C088000 */ lui $t0, 0x8000 +/* 0C2050 800C1450 01A87021 */ addu $t6, $t5, $t0 +/* 0C2054 800C1454 31CF0006 */ andi $t7, $t6, 6 +/* 0C2058 800C1458 35F80058 */ ori $t8, $t7, 0x58 +/* 0C205C 800C145C 331900FF */ andi $t9, $t8, 0xff +/* 0C2060 800C1460 00195400 */ sll $t2, $t9, 0x10 +/* 0C2064 800C1464 3C010400 */ lui $at, 0x400 +/* 0C2068 800C1468 01415825 */ or $t3, $t2, $at +/* 0C206C 800C146C 356C00E0 */ ori $t4, $t3, 0xe0 +/* 0C2070 800C1470 AC4C0000 */ sw $t4, ($v0) +/* 0C2074 800C1474 8CED0000 */ lw $t5, ($a3) +/* 0C2078 800C1478 3C0B0570 */ lui $t3, (0x05700080 >> 16) # lui $t3, 0x570 +/* 0C207C 800C147C 000D7080 */ sll $t6, $t5, 2 +/* 0C2080 800C1480 012E7821 */ addu $t7, $t1, $t6 +/* 0C2084 800C1484 8DF80000 */ lw $t8, ($t7) +/* 0C2088 800C1488 356B0080 */ ori $t3, (0x05700080 & 0xFFFF) # ori $t3, $t3, 0x80 +/* 0C208C 800C148C 0308C821 */ addu $t9, $t8, $t0 +/* 0C2090 800C1490 AC590004 */ sw $t9, 4($v0) +/* 0C2094 800C1494 8C820000 */ lw $v0, ($a0) +/* 0C2098 800C1498 3C0E800E */ lui $t6, 0x800e +/* 0C209C 800C149C 244A0008 */ addiu $t2, $v0, 8 +/* 0C20A0 800C14A0 AC8A0000 */ sw $t2, ($a0) +/* 0C20A4 800C14A4 AC4B0000 */ sw $t3, ($v0) +/* 0C20A8 800C14A8 8CEC0000 */ lw $t4, ($a3) +/* 0C20AC 800C14AC 00000000 */ nop +/* 0C20B0 800C14B0 000C6880 */ sll $t5, $t4, 2 +/* 0C20B4 800C14B4 01CD7021 */ addu $t6, $t6, $t5 +/* 0C20B8 800C14B8 8DCE31C8 */ lw $t6, 0x31c8($t6) +/* 0C20BC 800C14BC 00000000 */ nop +/* 0C20C0 800C14C0 01C87821 */ addu $t7, $t6, $t0 +/* 0C20C4 800C14C4 0C01ECF4 */ jal func_8007B3D0 +/* 0C20C8 800C14C8 AC4F0004 */ sw $t7, 4($v0) +/* 0C20CC 800C14CC 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C20D0 800C14D0 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0C20D4 800C14D4 03E00008 */ jr $ra +/* 0C20D8 800C14D8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C14DC.s b/asm/non_matchings/unknown_0B8920/func_800C14DC.s new file mode 100644 index 00000000..230dd8b3 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C14DC.s @@ -0,0 +1,64 @@ +glabel func_800C14DC +/* 0C20DC 800C14DC 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C20E0 800C14E0 AFBF0014 */ sw $ra, 0x14($sp) +/* 0C20E4 800C14E4 AFA5001C */ sw $a1, 0x1c($sp) +/* 0C20E8 800C14E8 AFA60020 */ sw $a2, 0x20($sp) +/* 0C20EC 800C14EC 0C01ECF4 */ jal func_8007B3D0 +/* 0C20F0 800C14F0 AFA40018 */ sw $a0, 0x18($sp) +/* 0C20F4 800C14F4 8FA40018 */ lw $a0, 0x18($sp) +/* 0C20F8 800C14F8 3C18800E */ lui $t8, %hi(D_800E3648) # $t8, 0x800e +/* 0C20FC 800C14FC 8C820000 */ lw $v0, ($a0) +/* 0C2100 800C1500 27183648 */ addiu $t8, %lo(D_800E3648) # addiu $t8, $t8, 0x3648 +/* 0C2104 800C1504 244E0008 */ addiu $t6, $v0, 8 +/* 0C2108 800C1508 AC8E0000 */ sw $t6, ($a0) +/* 0C210C 800C150C 3C0F0600 */ lui $t7, 0x600 +/* 0C2110 800C1510 AC4F0000 */ sw $t7, ($v0) +/* 0C2114 800C1514 AC580004 */ sw $t8, 4($v0) +/* 0C2118 800C1518 8C820000 */ lw $v0, ($a0) +/* 0C211C 800C151C 3C07800E */ lui $a3, %hi(D_800E31D0) # $a3, 0x800e +/* 0C2120 800C1520 24590008 */ addiu $t9, $v0, 8 +/* 0C2124 800C1524 24E731D0 */ addiu $a3, %lo(D_800E31D0) # addiu $a3, $a3, 0x31d0 +/* 0C2128 800C1528 AC990000 */ sw $t9, ($a0) +/* 0C212C 800C152C 8CEA0000 */ lw $t2, ($a3) +/* 0C2130 800C1530 3C09800E */ lui $t1, %hi(D_800E31C0) # $t1, 0x800e +/* 0C2134 800C1534 252931C0 */ addiu $t1, %lo(D_800E31C0) # addiu $t1, $t1, 0x31c0 +/* 0C2138 800C1538 000A5880 */ sll $t3, $t2, 2 +/* 0C213C 800C153C 012B6021 */ addu $t4, $t1, $t3 +/* 0C2140 800C1540 8D8D0000 */ lw $t5, ($t4) +/* 0C2144 800C1544 3C088000 */ lui $t0, 0x8000 +/* 0C2148 800C1548 01A87021 */ addu $t6, $t5, $t0 +/* 0C214C 800C154C 31CF0006 */ andi $t7, $t6, 6 +/* 0C2150 800C1550 35F80058 */ ori $t8, $t7, 0x58 +/* 0C2154 800C1554 331900FF */ andi $t9, $t8, 0xff +/* 0C2158 800C1558 00195400 */ sll $t2, $t9, 0x10 +/* 0C215C 800C155C 3C010400 */ lui $at, 0x400 +/* 0C2160 800C1560 01415825 */ or $t3, $t2, $at +/* 0C2164 800C1564 356C00E0 */ ori $t4, $t3, 0xe0 +/* 0C2168 800C1568 AC4C0000 */ sw $t4, ($v0) +/* 0C216C 800C156C 8CED0000 */ lw $t5, ($a3) +/* 0C2170 800C1570 3C0B0570 */ lui $t3, (0x05700080 >> 16) # lui $t3, 0x570 +/* 0C2174 800C1574 000D7080 */ sll $t6, $t5, 2 +/* 0C2178 800C1578 012E7821 */ addu $t7, $t1, $t6 +/* 0C217C 800C157C 8DF80000 */ lw $t8, ($t7) +/* 0C2180 800C1580 356B0080 */ ori $t3, (0x05700080 & 0xFFFF) # ori $t3, $t3, 0x80 +/* 0C2184 800C1584 0308C821 */ addu $t9, $t8, $t0 +/* 0C2188 800C1588 AC590004 */ sw $t9, 4($v0) +/* 0C218C 800C158C 8C820000 */ lw $v0, ($a0) +/* 0C2190 800C1590 3C0E800E */ lui $t6, 0x800e +/* 0C2194 800C1594 244A0008 */ addiu $t2, $v0, 8 +/* 0C2198 800C1598 AC8A0000 */ sw $t2, ($a0) +/* 0C219C 800C159C AC4B0000 */ sw $t3, ($v0) +/* 0C21A0 800C15A0 8CEC0000 */ lw $t4, ($a3) +/* 0C21A4 800C15A4 00000000 */ nop +/* 0C21A8 800C15A8 000C6880 */ sll $t5, $t4, 2 +/* 0C21AC 800C15AC 01CD7021 */ addu $t6, $t6, $t5 +/* 0C21B0 800C15B0 8DCE31C8 */ lw $t6, 0x31c8($t6) +/* 0C21B4 800C15B4 00000000 */ nop +/* 0C21B8 800C15B8 01C87821 */ addu $t7, $t6, $t0 +/* 0C21BC 800C15BC 0C01ECF4 */ jal func_8007B3D0 +/* 0C21C0 800C15C0 AC4F0004 */ sw $t7, 4($v0) +/* 0C21C4 800C15C4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C21C8 800C15C8 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0C21CC 800C15CC 03E00008 */ jr $ra +/* 0C21D0 800C15D0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C15D4.s b/asm/non_matchings/unknown_0B8920/func_800C15D4.s new file mode 100644 index 00000000..6c84de4a --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C15D4.s @@ -0,0 +1,595 @@ +glabel func_800C15D4 +/* 0C21D4 800C15D4 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0C21D8 800C15D8 AFBF0034 */ sw $ra, 0x34($sp) +/* 0C21DC 800C15DC AFA40038 */ sw $a0, 0x38($sp) +/* 0C21E0 800C15E0 3C05FFFF */ lui $a1, (0xFFFF00FF >> 16) # lui $a1, 0xffff +/* 0C21E4 800C15E4 AFB50030 */ sw $s5, 0x30($sp) +/* 0C21E8 800C15E8 AFB4002C */ sw $s4, 0x2c($sp) +/* 0C21EC 800C15EC AFB30028 */ sw $s3, 0x28($sp) +/* 0C21F0 800C15F0 AFB20024 */ sw $s2, 0x24($sp) +/* 0C21F4 800C15F4 AFB10020 */ sw $s1, 0x20($sp) +/* 0C21F8 800C15F8 AFB0001C */ sw $s0, 0x1c($sp) +/* 0C21FC 800C15FC E7B50010 */ swc1 $f21, 0x10($sp) +/* 0C2200 800C1600 E7B40014 */ swc1 $f20, 0x14($sp) +/* 0C2204 800C1604 34A500FF */ ori $a1, (0xFFFF00FF & 0xFFFF) # ori $a1, $a1, 0xff +/* 0C2208 800C1608 0C01C327 */ jal func_80070C9C +/* 0C220C 800C160C 24040DA0 */ li $a0, 3488 +/* 0C2210 800C1610 3C04800E */ lui $a0, %hi(D_800E31C0) # $a0, 0x800e +/* 0C2214 800C1614 3C05800E */ lui $a1, %hi(D_800E31C8) # $a1, 0x800e +/* 0C2218 800C1618 244F02D0 */ addiu $t7, $v0, 0x2d0 +/* 0C221C 800C161C 24A531C8 */ addiu $a1, %lo(D_800E31C8) # addiu $a1, $a1, 0x31c8 +/* 0C2220 800C1620 248431C0 */ addiu $a0, %lo(D_800E31C0) # addiu $a0, $a0, 0x31c0 +/* 0C2224 800C1624 25F902D0 */ addiu $t9, $t7, 0x2d0 +/* 0C2228 800C1628 272D0400 */ addiu $t5, $t9, 0x400 +/* 0C222C 800C162C AC820000 */ sw $v0, ($a0) +/* 0C2230 800C1630 AC8F0004 */ sw $t7, 4($a0) +/* 0C2234 800C1634 ACB90000 */ sw $t9, ($a1) +/* 0C2238 800C1638 ACAD0004 */ sw $t5, 4($a1) +/* 0C223C 800C163C 3C058013 */ lui $a1, %hi(D_8012A735) # $a1, 0x8013 +/* 0C2240 800C1640 3C048013 */ lui $a0, %hi(D_8012A734) # $a0, 0x8013 +/* 0C2244 800C1644 3C03800E */ lui $v1, %hi(D_800E31C0) # $v1, 0x800e +/* 0C2248 800C1648 3C0A800E */ lui $t2, %hi(D_800E31C8) # $t2, 0x800e +/* 0C224C 800C164C 3C068013 */ lui $a2, %hi(D_8012A736) # $a2, 0x8013 +/* 0C2250 800C1650 24C6A736 */ addiu $a2, %lo(D_8012A736) # addiu $a2, $a2, -0x58ca +/* 0C2254 800C1654 254A31C8 */ addiu $t2, %lo(D_800E31C8) # addiu $t2, $t2, 0x31c8 +/* 0C2258 800C1658 246331C0 */ addiu $v1, %lo(D_800E31C0) # addiu $v1, $v1, 0x31c0 +/* 0C225C 800C165C 2484A734 */ addiu $a0, %lo(D_8012A734) # addiu $a0, $a0, -0x58cc +/* 0C2260 800C1660 24A5A735 */ addiu $a1, %lo(D_8012A735) # addiu $a1, $a1, -0x58cb +/* 0C2264 800C1664 240902D0 */ li $t1, 720 +/* 0C2268 800C1668 240800FF */ li $t0, 255 +/* 0C226C 800C166C 00001025 */ move $v0, $zero +.L800C1670: +/* 0C2270 800C1670 8C6F0000 */ lw $t7, ($v1) +/* 0C2274 800C1674 908E0000 */ lbu $t6, ($a0) +/* 0C2278 800C1678 01E2C021 */ addu $t8, $t7, $v0 +/* 0C227C 800C167C A30E0006 */ sb $t6, 6($t8) +/* 0C2280 800C1680 8C6C0000 */ lw $t4, ($v1) +/* 0C2284 800C1684 90B90000 */ lbu $t9, ($a1) +/* 0C2288 800C1688 01826821 */ addu $t5, $t4, $v0 +/* 0C228C 800C168C A1B90007 */ sb $t9, 7($t5) +/* 0C2290 800C1690 8C6E0000 */ lw $t6, ($v1) +/* 0C2294 800C1694 90CF0000 */ lbu $t7, ($a2) +/* 0C2298 800C1698 01C2C021 */ addu $t8, $t6, $v0 +/* 0C229C 800C169C A30F0008 */ sb $t7, 8($t8) +/* 0C22A0 800C16A0 8C6C0000 */ lw $t4, ($v1) +/* 0C22A4 800C16A4 00000000 */ nop +/* 0C22A8 800C16A8 0182C821 */ addu $t9, $t4, $v0 +/* 0C22AC 800C16AC A3280009 */ sb $t0, 9($t9) +/* 0C22B0 800C16B0 8C6E0000 */ lw $t6, ($v1) +/* 0C22B4 800C16B4 908D0000 */ lbu $t5, ($a0) +/* 0C22B8 800C16B8 01C27821 */ addu $t7, $t6, $v0 +/* 0C22BC 800C16BC A1ED0010 */ sb $t5, 0x10($t7) +/* 0C22C0 800C16C0 8C6C0000 */ lw $t4, ($v1) +/* 0C22C4 800C16C4 90B80000 */ lbu $t8, ($a1) +/* 0C22C8 800C16C8 0182C821 */ addu $t9, $t4, $v0 +/* 0C22CC 800C16CC A3380011 */ sb $t8, 0x11($t9) +/* 0C22D0 800C16D0 8C6D0000 */ lw $t5, ($v1) +/* 0C22D4 800C16D4 90CE0000 */ lbu $t6, ($a2) +/* 0C22D8 800C16D8 01A27821 */ addu $t7, $t5, $v0 +/* 0C22DC 800C16DC A1EE0012 */ sb $t6, 0x12($t7) +/* 0C22E0 800C16E0 8C6C0000 */ lw $t4, ($v1) +/* 0C22E4 800C16E4 00000000 */ nop +/* 0C22E8 800C16E8 0182C021 */ addu $t8, $t4, $v0 +/* 0C22EC 800C16EC A3080013 */ sb $t0, 0x13($t8) +/* 0C22F0 800C16F0 8C6D0000 */ lw $t5, ($v1) +/* 0C22F4 800C16F4 90990000 */ lbu $t9, ($a0) +/* 0C22F8 800C16F8 01A27021 */ addu $t6, $t5, $v0 +/* 0C22FC 800C16FC A1D9001A */ sb $t9, 0x1a($t6) +/* 0C2300 800C1700 8C6C0000 */ lw $t4, ($v1) +/* 0C2304 800C1704 90AF0000 */ lbu $t7, ($a1) +/* 0C2308 800C1708 0182C021 */ addu $t8, $t4, $v0 +/* 0C230C 800C170C A30F001B */ sb $t7, 0x1b($t8) +/* 0C2310 800C1710 8C790000 */ lw $t9, ($v1) +/* 0C2314 800C1714 90CD0000 */ lbu $t5, ($a2) +/* 0C2318 800C1718 03227021 */ addu $t6, $t9, $v0 +/* 0C231C 800C171C A1CD001C */ sb $t5, 0x1c($t6) +/* 0C2320 800C1720 8C6C0000 */ lw $t4, ($v1) +/* 0C2324 800C1724 00000000 */ nop +/* 0C2328 800C1728 01827821 */ addu $t7, $t4, $v0 +/* 0C232C 800C172C A1E8001D */ sb $t0, 0x1d($t7) +/* 0C2330 800C1730 8C790000 */ lw $t9, ($v1) +/* 0C2334 800C1734 90980000 */ lbu $t8, ($a0) +/* 0C2338 800C1738 03226821 */ addu $t5, $t9, $v0 +/* 0C233C 800C173C A1B80024 */ sb $t8, 0x24($t5) +/* 0C2340 800C1740 8C6C0000 */ lw $t4, ($v1) +/* 0C2344 800C1744 90AE0000 */ lbu $t6, ($a1) +/* 0C2348 800C1748 01827821 */ addu $t7, $t4, $v0 +/* 0C234C 800C174C A1EE0025 */ sb $t6, 0x25($t7) +/* 0C2350 800C1750 8C780000 */ lw $t8, ($v1) +/* 0C2354 800C1754 90D90000 */ lbu $t9, ($a2) +/* 0C2358 800C1758 03026821 */ addu $t5, $t8, $v0 +/* 0C235C 800C175C A1B90026 */ sb $t9, 0x26($t5) +/* 0C2360 800C1760 8C6C0000 */ lw $t4, ($v1) +/* 0C2364 800C1764 00000000 */ nop +/* 0C2368 800C1768 01827021 */ addu $t6, $t4, $v0 +/* 0C236C 800C176C 24420028 */ addiu $v0, $v0, 0x28 +/* 0C2370 800C1770 1449FFBF */ bne $v0, $t1, .L800C1670 +/* 0C2374 800C1774 A1C80027 */ sb $t0, 0x27($t6) +/* 0C2378 800C1778 24630004 */ addiu $v1, $v1, 4 +/* 0C237C 800C177C 006A082B */ sltu $at, $v1, $t2 +/* 0C2380 800C1780 1420FFBB */ bnez $at, .L800C1670 +/* 0C2384 800C1784 00001025 */ move $v0, $zero +/* 0C2388 800C1788 3C03800E */ lui $v1, %hi(D_800E31C0) # $v1, 0x800e +/* 0C238C 800C178C 3C0A800E */ lui $t2, %hi(D_800E31C8) # $t2, 0x800e +/* 0C2390 800C1790 254A31C8 */ addiu $t2, %lo(D_800E31C8) # addiu $t2, $t2, 0x31c8 +/* 0C2394 800C1794 246331C0 */ addiu $v1, %lo(D_800E31C0) # addiu $v1, $v1, 0x31c0 +/* 0C2398 800C1798 24090009 */ li $t1, 9 +/* 0C239C 800C179C 2408000A */ li $t0, 10 +.L800C17A0: +/* 0C23A0 800C17A0 8C6F0000 */ lw $t7, ($v1) +/* 0C23A4 800C17A4 24070001 */ li $a3, 1 +/* 0C23A8 800C17A8 A1E000C7 */ sb $zero, 0xc7($t7) +/* 0C23AC 800C17AC 8C780000 */ lw $t8, ($v1) +/* 0C23B0 800C17B0 00000000 */ nop +/* 0C23B4 800C17B4 A300022F */ sb $zero, 0x22f($t8) +.L800C17B8: +/* 0C23B8 800C17B8 0007C840 */ sll $t9, $a3, 1 +/* 0C23BC 800C17BC 03280019 */ multu $t9, $t0 +/* 0C23C0 800C17C0 24F80001 */ addiu $t8, $a3, 1 +/* 0C23C4 800C17C4 0018C840 */ sll $t9, $t8, 1 +/* 0C23C8 800C17C8 24F80002 */ addiu $t8, $a3, 2 +/* 0C23CC 800C17CC 8C6D0000 */ lw $t5, ($v1) +/* 0C23D0 800C17D0 00001012 */ mflo $v0 +/* 0C23D4 800C17D4 01A26021 */ addu $t4, $t5, $v0 +/* 0C23D8 800C17D8 A18000C7 */ sb $zero, 0xc7($t4) +/* 0C23DC 800C17DC 03280019 */ multu $t9, $t0 +/* 0C23E0 800C17E0 0018C840 */ sll $t9, $t8, 1 +/* 0C23E4 800C17E4 8C6E0000 */ lw $t6, ($v1) +/* 0C23E8 800C17E8 24F80003 */ addiu $t8, $a3, 3 +/* 0C23EC 800C17EC 01C27821 */ addu $t7, $t6, $v0 +/* 0C23F0 800C17F0 A1E0022F */ sb $zero, 0x22f($t7) +/* 0C23F4 800C17F4 8C6D0000 */ lw $t5, ($v1) +/* 0C23F8 800C17F8 24E70004 */ addiu $a3, $a3, 4 +/* 0C23FC 800C17FC 00002012 */ mflo $a0 +/* 0C2400 800C1800 01A46021 */ addu $t4, $t5, $a0 +/* 0C2404 800C1804 A18000C7 */ sb $zero, 0xc7($t4) +/* 0C2408 800C1808 03280019 */ multu $t9, $t0 +/* 0C240C 800C180C 8C6E0000 */ lw $t6, ($v1) +/* 0C2410 800C1810 0018C840 */ sll $t9, $t8, 1 +/* 0C2414 800C1814 01C47821 */ addu $t7, $t6, $a0 +/* 0C2418 800C1818 A1E0022F */ sb $zero, 0x22f($t7) +/* 0C241C 800C181C 8C6D0000 */ lw $t5, ($v1) +/* 0C2420 800C1820 00002812 */ mflo $a1 +/* 0C2424 800C1824 01A56021 */ addu $t4, $t5, $a1 +/* 0C2428 800C1828 A18000C7 */ sb $zero, 0xc7($t4) +/* 0C242C 800C182C 03280019 */ multu $t9, $t0 +/* 0C2430 800C1830 8C6E0000 */ lw $t6, ($v1) +/* 0C2434 800C1834 00000000 */ nop +/* 0C2438 800C1838 01C57821 */ addu $t7, $t6, $a1 +/* 0C243C 800C183C A1E0022F */ sb $zero, 0x22f($t7) +/* 0C2440 800C1840 8C6D0000 */ lw $t5, ($v1) +/* 0C2444 800C1844 00003012 */ mflo $a2 +/* 0C2448 800C1848 01A66021 */ addu $t4, $t5, $a2 +/* 0C244C 800C184C A18000C7 */ sb $zero, 0xc7($t4) +/* 0C2450 800C1850 8C6E0000 */ lw $t6, ($v1) +/* 0C2454 800C1854 00000000 */ nop +/* 0C2458 800C1858 01C67821 */ addu $t7, $t6, $a2 +/* 0C245C 800C185C 14E9FFD6 */ bne $a3, $t1, .L800C17B8 +/* 0C2460 800C1860 A1E0022F */ sb $zero, 0x22f($t7) +/* 0C2464 800C1864 24630004 */ addiu $v1, $v1, 4 +/* 0C2468 800C1868 006A082B */ sltu $at, $v1, $t2 +/* 0C246C 800C186C 1420FFCC */ bnez $at, .L800C17A0 +/* 0C2470 800C1870 00000000 */ nop +/* 0C2474 800C1874 3C014370 */ li $at, 0x43700000 # 240.000000 +/* 0C2478 800C1878 3C12800E */ lui $s2, %hi(D_800E31C8) # $s2, 0x800e +/* 0C247C 800C187C 4481A000 */ mtc1 $at, $f20 +/* 0C2480 800C1880 0000A825 */ move $s5, $zero +/* 0C2484 800C1884 265231C8 */ addiu $s2, %lo(D_800E31C8) # addiu $s2, $s2, 0x31c8 +/* 0C2488 800C1888 0000A025 */ move $s4, $zero +/* 0C248C 800C188C 2410FFF0 */ li $s0, -16 +.L800C1890: +/* 0C2490 800C1890 00159C00 */ sll $s3, $s5, 0x10 +/* 0C2494 800C1894 0013C403 */ sra $t8, $s3, 0x10 +/* 0C2498 800C1898 00182400 */ sll $a0, $t8, 0x10 +/* 0C249C 800C189C 0004CC03 */ sra $t9, $a0, 0x10 +/* 0C24A0 800C18A0 03202025 */ move $a0, $t9 +/* 0C24A4 800C18A4 0C01C1F1 */ jal func_800707C4 +/* 0C24A8 800C18A8 03009825 */ move $s3, $t8 +/* 0C24AC 800C18AC 46140102 */ mul.s $f4, $f0, $f20 +/* 0C24B0 800C18B0 00132400 */ sll $a0, $s3, 0x10 +/* 0C24B4 800C18B4 00047C03 */ sra $t7, $a0, 0x10 +/* 0C24B8 800C18B8 01E02025 */ move $a0, $t7 +/* 0C24BC 800C18BC 444DF800 */ cfc1 $t5, $31 +/* 0C24C0 800C18C0 00000000 */ nop +/* 0C24C4 800C18C4 35A10003 */ ori $at, $t5, 3 +/* 0C24C8 800C18C8 38210002 */ xori $at, $at, 2 +/* 0C24CC 800C18CC 44C1F800 */ ctc1 $at, $31 +/* 0C24D0 800C18D0 00000000 */ nop +/* 0C24D4 800C18D4 460021A4 */ cvt.w.s $f6, $f4 +/* 0C24D8 800C18D8 44113000 */ mfc1 $s1, $f6 +/* 0C24DC 800C18DC 44CDF800 */ ctc1 $t5, $31 +/* 0C24E0 800C18E0 00116400 */ sll $t4, $s1, 0x10 +/* 0C24E4 800C18E4 0C01C1FE */ jal func_800707F8 +/* 0C24E8 800C18E8 000C8C03 */ sra $s1, $t4, 0x10 +/* 0C24EC 800C18EC 3C014334 */ li $at, 0x43340000 # 180.000000 +/* 0C24F0 800C18F0 44814000 */ mtc1 $at, $f8 +/* 0C24F4 800C18F4 00141840 */ sll $v1, $s4, 1 +/* 0C24F8 800C18F8 46080282 */ mul.s $f10, $f0, $f8 +/* 0C24FC 800C18FC 0003C080 */ sll $t8, $v1, 2 +/* 0C2500 800C1900 0303C021 */ addu $t8, $t8, $v1 +/* 0C2504 800C1904 3C02800E */ lui $v0, %hi(D_800E31C0) # $v0, 0x800e +/* 0C2508 800C1908 4459F800 */ cfc1 $t9, $31 +/* 0C250C 800C190C 244231C0 */ addiu $v0, %lo(D_800E31C0) # addiu $v0, $v0, 0x31c0 +/* 0C2510 800C1910 37210003 */ ori $at, $t9, 3 +/* 0C2514 800C1914 38210002 */ xori $at, $at, 2 +/* 0C2518 800C1918 44C1F800 */ ctc1 $at, $31 +/* 0C251C 800C191C 00181840 */ sll $v1, $t8, 1 +/* 0C2520 800C1920 46005424 */ cvt.w.s $f16, $f10 +/* 0C2524 800C1924 00112823 */ negu $a1, $s1 +/* 0C2528 800C1928 44048000 */ mfc1 $a0, $f16 +/* 0C252C 800C192C 44D9F800 */ ctc1 $t9, $31 +/* 0C2530 800C1930 00046C00 */ sll $t5, $a0, 0x10 +/* 0C2534 800C1934 000D2403 */ sra $a0, $t5, 0x10 +.L800C1938: +/* 0C2538 800C1938 8C4E0000 */ lw $t6, ($v0) +/* 0C253C 800C193C 24420004 */ addiu $v0, $v0, 4 +/* 0C2540 800C1940 01C37821 */ addu $t7, $t6, $v1 +/* 0C2544 800C1944 A5F10000 */ sh $s1, ($t7) +/* 0C2548 800C1948 8C58FFFC */ lw $t8, -4($v0) +/* 0C254C 800C194C 00000000 */ nop +/* 0C2550 800C1950 0303C821 */ addu $t9, $t8, $v1 +/* 0C2554 800C1954 A7240002 */ sh $a0, 2($t9) +/* 0C2558 800C1958 8C4DFFFC */ lw $t5, -4($v0) +/* 0C255C 800C195C 00000000 */ nop +/* 0C2560 800C1960 01A36021 */ addu $t4, $t5, $v1 +/* 0C2564 800C1964 A5900004 */ sh $s0, 4($t4) +/* 0C2568 800C1968 8C4EFFFC */ lw $t6, -4($v0) +/* 0C256C 800C196C 00000000 */ nop +/* 0C2570 800C1970 01C37821 */ addu $t7, $t6, $v1 +/* 0C2574 800C1974 A5F0000E */ sh $s0, 0xe($t7) +/* 0C2578 800C1978 8C58FFFC */ lw $t8, -4($v0) +/* 0C257C 800C197C 00000000 */ nop +/* 0C2580 800C1980 0303C821 */ addu $t9, $t8, $v1 +/* 0C2584 800C1984 A73000B8 */ sh $s0, 0xb8($t9) +/* 0C2588 800C1988 8C4DFFFC */ lw $t5, -4($v0) +/* 0C258C 800C198C 00000000 */ nop +/* 0C2590 800C1990 01A36021 */ addu $t4, $t5, $v1 +/* 0C2594 800C1994 A59000C2 */ sh $s0, 0xc2($t4) +/* 0C2598 800C1998 8C4EFFFC */ lw $t6, -4($v0) +/* 0C259C 800C199C 00000000 */ nop +/* 0C25A0 800C19A0 01C37821 */ addu $t7, $t6, $v1 +/* 0C25A4 800C19A4 A5E50168 */ sh $a1, 0x168($t7) +/* 0C25A8 800C19A8 8C58FFFC */ lw $t8, -4($v0) +/* 0C25AC 800C19AC 00000000 */ nop +/* 0C25B0 800C19B0 0303C821 */ addu $t9, $t8, $v1 +/* 0C25B4 800C19B4 A724016A */ sh $a0, 0x16a($t9) +/* 0C25B8 800C19B8 8C4DFFFC */ lw $t5, -4($v0) +/* 0C25BC 800C19BC 00000000 */ nop +/* 0C25C0 800C19C0 01A36021 */ addu $t4, $t5, $v1 +/* 0C25C4 800C19C4 A590016C */ sh $s0, 0x16c($t4) +/* 0C25C8 800C19C8 8C4EFFFC */ lw $t6, -4($v0) +/* 0C25CC 800C19CC 00000000 */ nop +/* 0C25D0 800C19D0 01C37821 */ addu $t7, $t6, $v1 +/* 0C25D4 800C19D4 A5F00176 */ sh $s0, 0x176($t7) +/* 0C25D8 800C19D8 8C58FFFC */ lw $t8, -4($v0) +/* 0C25DC 800C19DC 00000000 */ nop +/* 0C25E0 800C19E0 0303C821 */ addu $t9, $t8, $v1 +/* 0C25E4 800C19E4 A7300220 */ sh $s0, 0x220($t9) +/* 0C25E8 800C19E8 8C4DFFFC */ lw $t5, -4($v0) +/* 0C25EC 800C19EC 00000000 */ nop +/* 0C25F0 800C19F0 01A36021 */ addu $t4, $t5, $v1 +/* 0C25F4 800C19F4 1452FFD0 */ bne $v0, $s2, .L800C1938 +/* 0C25F8 800C19F8 A590022A */ sh $s0, 0x22a($t4) +/* 0C25FC 800C19FC 26940001 */ addiu $s4, $s4, 1 +/* 0C2600 800C1A00 2A810009 */ slti $at, $s4, 9 +/* 0C2604 800C1A04 1420FFA2 */ bnez $at, .L800C1890 +/* 0C2608 800C1A08 26B51000 */ addiu $s5, $s5, 0x1000 +/* 0C260C 800C1A0C 8FAE0038 */ lw $t6, 0x38($sp) +/* 0C2610 800C1A10 3C03800E */ lui $v1, %hi(D_800E31C8) # $v1, 0x800e +/* 0C2614 800C1A14 91CF0000 */ lbu $t7, ($t6) +/* 0C2618 800C1A18 246331C8 */ addiu $v1, %lo(D_800E31C8) # addiu $v1, $v1, 0x31c8 +/* 0C261C 800C1A1C 31F80080 */ andi $t8, $t7, 0x80 +/* 0C2620 800C1A20 1300001D */ beqz $t8, .L800C1A98 +/* 0C2624 800C1A24 3C06800E */ lui $a2, %hi(D_800E31D0) # $a2, 0x800e +/* 0C2628 800C1A28 3C014334 */ li $at, 0x43340000 # 180.000000 +/* 0C262C 800C1A2C 3C19800E */ lui $t9, %hi(D_800E31B0) # $t9, 0x800e +/* 0C2630 800C1A30 44801000 */ mtc1 $zero, $f2 +/* 0C2634 800C1A34 973931B0 */ lhu $t9, %lo(D_800E31B0)($t9) +/* 0C2638 800C1A38 44816000 */ mtc1 $at, $f12 +/* 0C263C 800C1A3C 3C018013 */ lui $at, %hi(D_8012A758) # $at, 0x8013 +/* 0C2640 800C1A40 44999000 */ mtc1 $t9, $f18 +/* 0C2644 800C1A44 E422A758 */ swc1 $f2, %lo(D_8012A758)($at) +/* 0C2648 800C1A48 3C018013 */ lui $at, %hi(D_8012A75C) # $at, 0x8013 +/* 0C264C 800C1A4C E422A75C */ swc1 $f2, %lo(D_8012A75C)($at) +/* 0C2650 800C1A50 07210005 */ bgez $t9, .L800C1A68 +/* 0C2654 800C1A54 46809020 */ cvt.s.w $f0, $f18 +/* 0C2658 800C1A58 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0C265C 800C1A5C 44812000 */ mtc1 $at, $f4 +/* 0C2660 800C1A60 00000000 */ nop +/* 0C2664 800C1A64 46040000 */ add.s $f0, $f0, $f4 +.L800C1A68: +/* 0C2668 800C1A68 00000000 */ nop +/* 0C266C 800C1A6C 4600A183 */ div.s $f6, $f20, $f0 +/* 0C2670 800C1A70 3C018013 */ lui $at, %hi(D_8012A760) # $at, 0x8013 +/* 0C2674 800C1A74 46006203 */ div.s $f8, $f12, $f0 +/* 0C2678 800C1A78 E426A760 */ swc1 $f6, %lo(D_8012A760)($at) +/* 0C267C 800C1A7C 3C018013 */ lui $at, %hi(D_8012A764) # $at, 0x8013 +/* 0C2680 800C1A80 E428A764 */ swc1 $f8, %lo(D_8012A764)($at) +/* 0C2684 800C1A84 3C018013 */ lui $at, %hi(D_8012A768) # $at, 0x8013 +/* 0C2688 800C1A88 E434A768 */ swc1 $f20, %lo(D_8012A768)($at) +/* 0C268C 800C1A8C 3C018013 */ lui $at, %hi(D_8012A76C) # $at, 0x8013 +/* 0C2690 800C1A90 1000001E */ b .L800C1B0C +/* 0C2694 800C1A94 E42CA76C */ swc1 $f12, %lo(D_8012A76C)($at) +.L800C1A98: +/* 0C2698 800C1A98 3C014334 */ li $at, 0x43340000 # 180.000000 +/* 0C269C 800C1A9C 3C0D800E */ lui $t5, %hi(D_800E31B0) # $t5, 0x800e +/* 0C26A0 800C1AA0 44816000 */ mtc1 $at, $f12 +/* 0C26A4 800C1AA4 95AD31B0 */ lhu $t5, %lo(D_800E31B0)($t5) +/* 0C26A8 800C1AA8 3C018013 */ lui $at, %hi(D_8012A758) # $at, 0x8013 +/* 0C26AC 800C1AAC 448D5000 */ mtc1 $t5, $f10 +/* 0C26B0 800C1AB0 E434A758 */ swc1 $f20, %lo(D_8012A758)($at) +/* 0C26B4 800C1AB4 44801000 */ mtc1 $zero, $f2 +/* 0C26B8 800C1AB8 3C018013 */ lui $at, %hi(D_8012A75C) # $at, 0x8013 +/* 0C26BC 800C1ABC E42CA75C */ swc1 $f12, %lo(D_8012A75C)($at) +/* 0C26C0 800C1AC0 05A10005 */ bgez $t5, .L800C1AD8 +/* 0C26C4 800C1AC4 46805020 */ cvt.s.w $f0, $f10 +/* 0C26C8 800C1AC8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0C26CC 800C1ACC 44818000 */ mtc1 $at, $f16 +/* 0C26D0 800C1AD0 00000000 */ nop +/* 0C26D4 800C1AD4 46100000 */ add.s $f0, $f0, $f16 +.L800C1AD8: +/* 0C26D8 800C1AD8 4600A487 */ neg.s $f18, $f20 +/* 0C26DC 800C1ADC 00000000 */ nop +/* 0C26E0 800C1AE0 46009103 */ div.s $f4, $f18, $f0 +/* 0C26E4 800C1AE4 46006187 */ neg.s $f6, $f12 +/* 0C26E8 800C1AE8 3C018013 */ lui $at, %hi(D_8012A760) # $at, 0x8013 +/* 0C26EC 800C1AEC 46003203 */ div.s $f8, $f6, $f0 +/* 0C26F0 800C1AF0 E424A760 */ swc1 $f4, %lo(D_8012A760)($at) +/* 0C26F4 800C1AF4 3C018013 */ lui $at, %hi(D_8012A764) # $at, 0x8013 +/* 0C26F8 800C1AF8 E428A764 */ swc1 $f8, %lo(D_8012A764)($at) +/* 0C26FC 800C1AFC 3C018013 */ lui $at, %hi(D_8012A768) # $at, 0x8013 +/* 0C2700 800C1B00 E422A768 */ swc1 $f2, %lo(D_8012A768)($at) +/* 0C2704 800C1B04 3C018013 */ lui $at, %hi(D_8012A76C) # $at, 0x8013 +/* 0C2708 800C1B08 E422A76C */ swc1 $f2, %lo(D_8012A76C)($at) +.L800C1B0C: +/* 0C270C 800C1B0C 24C631D0 */ addiu $a2, %lo(D_800E31D0) # addiu $a2, $a2, 0x31d0 +/* 0C2710 800C1B10 24050400 */ li $a1, 1024 +/* 0C2714 800C1B14 24040040 */ li $a0, 64 +/* 0C2718 800C1B18 00001025 */ move $v0, $zero +.L800C1B1C: +/* 0C271C 800C1B1C 8C6C0000 */ lw $t4, ($v1) +/* 0C2720 800C1B20 00000000 */ nop +/* 0C2724 800C1B24 01827021 */ addu $t6, $t4, $v0 +/* 0C2728 800C1B28 A1C40000 */ sb $a0, ($t6) +/* 0C272C 800C1B2C 8C6F0000 */ lw $t7, ($v1) +/* 0C2730 800C1B30 00000000 */ nop +/* 0C2734 800C1B34 01E2C021 */ addu $t8, $t7, $v0 +/* 0C2738 800C1B38 A7000004 */ sh $zero, 4($t8) +/* 0C273C 800C1B3C 8C790000 */ lw $t9, ($v1) +/* 0C2740 800C1B40 00000000 */ nop +/* 0C2744 800C1B44 03226821 */ addu $t5, $t9, $v0 +/* 0C2748 800C1B48 A5A00006 */ sh $zero, 6($t5) +/* 0C274C 800C1B4C 8C6C0000 */ lw $t4, ($v1) +/* 0C2750 800C1B50 00000000 */ nop +/* 0C2754 800C1B54 01827021 */ addu $t6, $t4, $v0 +/* 0C2758 800C1B58 A5C00008 */ sh $zero, 8($t6) +/* 0C275C 800C1B5C 8C6F0000 */ lw $t7, ($v1) +/* 0C2760 800C1B60 00000000 */ nop +/* 0C2764 800C1B64 01E2C021 */ addu $t8, $t7, $v0 +/* 0C2768 800C1B68 A700000A */ sh $zero, 0xa($t8) +/* 0C276C 800C1B6C 8C790000 */ lw $t9, ($v1) +/* 0C2770 800C1B70 00000000 */ nop +/* 0C2774 800C1B74 03226821 */ addu $t5, $t9, $v0 +/* 0C2778 800C1B78 A5A0000C */ sh $zero, 0xc($t5) +/* 0C277C 800C1B7C 8C6C0000 */ lw $t4, ($v1) +/* 0C2780 800C1B80 00000000 */ nop +/* 0C2784 800C1B84 01827021 */ addu $t6, $t4, $v0 +/* 0C2788 800C1B88 A5C0000E */ sh $zero, 0xe($t6) +/* 0C278C 800C1B8C 8C6F0000 */ lw $t7, ($v1) +/* 0C2790 800C1B90 00000000 */ nop +/* 0C2794 800C1B94 01E2C021 */ addu $t8, $t7, $v0 +/* 0C2798 800C1B98 A3040010 */ sb $a0, 0x10($t8) +/* 0C279C 800C1B9C 8C790000 */ lw $t9, ($v1) +/* 0C27A0 800C1BA0 00000000 */ nop +/* 0C27A4 800C1BA4 03226821 */ addu $t5, $t9, $v0 +/* 0C27A8 800C1BA8 A5A00014 */ sh $zero, 0x14($t5) +/* 0C27AC 800C1BAC 8C6C0000 */ lw $t4, ($v1) +/* 0C27B0 800C1BB0 00000000 */ nop +/* 0C27B4 800C1BB4 01827021 */ addu $t6, $t4, $v0 +/* 0C27B8 800C1BB8 A5C00016 */ sh $zero, 0x16($t6) +/* 0C27BC 800C1BBC 8C6F0000 */ lw $t7, ($v1) +/* 0C27C0 800C1BC0 00000000 */ nop +/* 0C27C4 800C1BC4 01E2C021 */ addu $t8, $t7, $v0 +/* 0C27C8 800C1BC8 A7000018 */ sh $zero, 0x18($t8) +/* 0C27CC 800C1BCC 8C790000 */ lw $t9, ($v1) +/* 0C27D0 800C1BD0 00000000 */ nop +/* 0C27D4 800C1BD4 03226821 */ addu $t5, $t9, $v0 +/* 0C27D8 800C1BD8 A5A0001A */ sh $zero, 0x1a($t5) +/* 0C27DC 800C1BDC 8C6C0000 */ lw $t4, ($v1) +/* 0C27E0 800C1BE0 00000000 */ nop +/* 0C27E4 800C1BE4 01827021 */ addu $t6, $t4, $v0 +/* 0C27E8 800C1BE8 A5C0001C */ sh $zero, 0x1c($t6) +/* 0C27EC 800C1BEC 8C6F0000 */ lw $t7, ($v1) +/* 0C27F0 800C1BF0 00000000 */ nop +/* 0C27F4 800C1BF4 01E2C021 */ addu $t8, $t7, $v0 +/* 0C27F8 800C1BF8 A700001E */ sh $zero, 0x1e($t8) +/* 0C27FC 800C1BFC 8C790000 */ lw $t9, ($v1) +/* 0C2800 800C1C00 00000000 */ nop +/* 0C2804 800C1C04 03226821 */ addu $t5, $t9, $v0 +/* 0C2808 800C1C08 A1A40020 */ sb $a0, 0x20($t5) +/* 0C280C 800C1C0C 8C6C0000 */ lw $t4, ($v1) +/* 0C2810 800C1C10 00000000 */ nop +/* 0C2814 800C1C14 01827021 */ addu $t6, $t4, $v0 +/* 0C2818 800C1C18 A5C00024 */ sh $zero, 0x24($t6) +/* 0C281C 800C1C1C 8C6F0000 */ lw $t7, ($v1) +/* 0C2820 800C1C20 00000000 */ nop +/* 0C2824 800C1C24 01E2C021 */ addu $t8, $t7, $v0 +/* 0C2828 800C1C28 A7000026 */ sh $zero, 0x26($t8) +/* 0C282C 800C1C2C 8C790000 */ lw $t9, ($v1) +/* 0C2830 800C1C30 00000000 */ nop +/* 0C2834 800C1C34 03226821 */ addu $t5, $t9, $v0 +/* 0C2838 800C1C38 A5A00028 */ sh $zero, 0x28($t5) +/* 0C283C 800C1C3C 8C6C0000 */ lw $t4, ($v1) +/* 0C2840 800C1C40 00000000 */ nop +/* 0C2844 800C1C44 01827021 */ addu $t6, $t4, $v0 +/* 0C2848 800C1C48 A5C0002A */ sh $zero, 0x2a($t6) +/* 0C284C 800C1C4C 8C6F0000 */ lw $t7, ($v1) +/* 0C2850 800C1C50 00000000 */ nop +/* 0C2854 800C1C54 01E2C021 */ addu $t8, $t7, $v0 +/* 0C2858 800C1C58 A700002C */ sh $zero, 0x2c($t8) +/* 0C285C 800C1C5C 8C790000 */ lw $t9, ($v1) +/* 0C2860 800C1C60 00000000 */ nop +/* 0C2864 800C1C64 03226821 */ addu $t5, $t9, $v0 +/* 0C2868 800C1C68 A5A0002E */ sh $zero, 0x2e($t5) +/* 0C286C 800C1C6C 8C6C0000 */ lw $t4, ($v1) +/* 0C2870 800C1C70 00000000 */ nop +/* 0C2874 800C1C74 01827021 */ addu $t6, $t4, $v0 +/* 0C2878 800C1C78 A1C40030 */ sb $a0, 0x30($t6) +/* 0C287C 800C1C7C 8C6F0000 */ lw $t7, ($v1) +/* 0C2880 800C1C80 00000000 */ nop +/* 0C2884 800C1C84 01E2C021 */ addu $t8, $t7, $v0 +/* 0C2888 800C1C88 A7000034 */ sh $zero, 0x34($t8) +/* 0C288C 800C1C8C 8C790000 */ lw $t9, ($v1) +/* 0C2890 800C1C90 00000000 */ nop +/* 0C2894 800C1C94 03226821 */ addu $t5, $t9, $v0 +/* 0C2898 800C1C98 A5A00036 */ sh $zero, 0x36($t5) +/* 0C289C 800C1C9C 8C6C0000 */ lw $t4, ($v1) +/* 0C28A0 800C1CA0 00000000 */ nop +/* 0C28A4 800C1CA4 01827021 */ addu $t6, $t4, $v0 +/* 0C28A8 800C1CA8 A5C00038 */ sh $zero, 0x38($t6) +/* 0C28AC 800C1CAC 8C6F0000 */ lw $t7, ($v1) +/* 0C28B0 800C1CB0 00000000 */ nop +/* 0C28B4 800C1CB4 01E2C021 */ addu $t8, $t7, $v0 +/* 0C28B8 800C1CB8 A700003A */ sh $zero, 0x3a($t8) +/* 0C28BC 800C1CBC 8C790000 */ lw $t9, ($v1) +/* 0C28C0 800C1CC0 00000000 */ nop +/* 0C28C4 800C1CC4 03226821 */ addu $t5, $t9, $v0 +/* 0C28C8 800C1CC8 A5A0003C */ sh $zero, 0x3c($t5) +/* 0C28CC 800C1CCC 8C6C0000 */ lw $t4, ($v1) +/* 0C28D0 800C1CD0 00000000 */ nop +/* 0C28D4 800C1CD4 01827021 */ addu $t6, $t4, $v0 +/* 0C28D8 800C1CD8 24420040 */ addiu $v0, $v0, 0x40 +/* 0C28DC 800C1CDC 1445FF8F */ bne $v0, $a1, .L800C1B1C +/* 0C28E0 800C1CE0 A5C0003E */ sh $zero, 0x3e($t6) +/* 0C28E4 800C1CE4 24630004 */ addiu $v1, $v1, 4 +/* 0C28E8 800C1CE8 0066082B */ sltu $at, $v1, $a2 +/* 0C28EC 800C1CEC 1420FF8B */ bnez $at, .L800C1B1C +/* 0C28F0 800C1CF0 00001025 */ move $v0, $zero +/* 0C28F4 800C1CF4 3C0A800E */ lui $t2, %hi(D_800E31D0) # $t2, 0x800e +/* 0C28F8 800C1CF8 254A31D0 */ addiu $t2, %lo(D_800E31D0) # addiu $t2, $t2, 0x31d0 +/* 0C28FC 800C1CFC 0000A025 */ move $s4, $zero +/* 0C2900 800C1D00 240B0008 */ li $t3, 8 +/* 0C2904 800C1D04 00142040 */ sll $a0, $s4, 1 +.L800C1D08: +/* 0C2908 800C1D08 3C02800E */ lui $v0, %hi(D_800E31C8) # $v0, 0x800e +/* 0C290C 800C1D0C 244231C8 */ addiu $v0, %lo(D_800E31C8) # addiu $v0, $v0, 0x31c8 +/* 0C2910 800C1D10 00041900 */ sll $v1, $a0, 4 +/* 0C2914 800C1D14 24860001 */ addiu $a2, $a0, 1 +/* 0C2918 800C1D18 24850003 */ addiu $a1, $a0, 3 +/* 0C291C 800C1D1C 24880002 */ addiu $t0, $a0, 2 +.L800C1D20: +/* 0C2920 800C1D20 8C4F0000 */ lw $t7, ($v0) +/* 0C2924 800C1D24 24420004 */ addiu $v0, $v0, 4 +/* 0C2928 800C1D28 01E3C021 */ addu $t8, $t7, $v1 +/* 0C292C 800C1D2C A3040001 */ sb $a0, 1($t8) +/* 0C2930 800C1D30 8C59FFFC */ lw $t9, -4($v0) +/* 0C2934 800C1D34 00000000 */ nop +/* 0C2938 800C1D38 03236821 */ addu $t5, $t9, $v1 +/* 0C293C 800C1D3C A1A60002 */ sb $a2, 2($t5) +/* 0C2940 800C1D40 8C4CFFFC */ lw $t4, -4($v0) +/* 0C2944 800C1D44 00000000 */ nop +/* 0C2948 800C1D48 01837021 */ addu $t6, $t4, $v1 +/* 0C294C 800C1D4C A1C50003 */ sb $a1, 3($t6) +/* 0C2950 800C1D50 8C4FFFFC */ lw $t7, -4($v0) +/* 0C2954 800C1D54 00000000 */ nop +/* 0C2958 800C1D58 01E3C021 */ addu $t8, $t7, $v1 +/* 0C295C 800C1D5C A3040011 */ sb $a0, 0x11($t8) +/* 0C2960 800C1D60 8C59FFFC */ lw $t9, -4($v0) +/* 0C2964 800C1D64 00000000 */ nop +/* 0C2968 800C1D68 03236821 */ addu $t5, $t9, $v1 +/* 0C296C 800C1D6C A1A50012 */ sb $a1, 0x12($t5) +/* 0C2970 800C1D70 8C4CFFFC */ lw $t4, -4($v0) +/* 0C2974 800C1D74 00000000 */ nop +/* 0C2978 800C1D78 01837021 */ addu $t6, $t4, $v1 +/* 0C297C 800C1D7C A1C80013 */ sb $t0, 0x13($t6) +/* 0C2980 800C1D80 8C4FFFFC */ lw $t7, -4($v0) +/* 0C2984 800C1D84 00000000 */ nop +/* 0C2988 800C1D88 01E3C021 */ addu $t8, $t7, $v1 +/* 0C298C 800C1D8C A3040101 */ sb $a0, 0x101($t8) +/* 0C2990 800C1D90 8C59FFFC */ lw $t9, -4($v0) +/* 0C2994 800C1D94 00000000 */ nop +/* 0C2998 800C1D98 03236821 */ addu $t5, $t9, $v1 +/* 0C299C 800C1D9C A1A60102 */ sb $a2, 0x102($t5) +/* 0C29A0 800C1DA0 8C4CFFFC */ lw $t4, -4($v0) +/* 0C29A4 800C1DA4 00000000 */ nop +/* 0C29A8 800C1DA8 01837021 */ addu $t6, $t4, $v1 +/* 0C29AC 800C1DAC A1C50103 */ sb $a1, 0x103($t6) +/* 0C29B0 800C1DB0 8C4FFFFC */ lw $t7, -4($v0) +/* 0C29B4 800C1DB4 00000000 */ nop +/* 0C29B8 800C1DB8 01E3C021 */ addu $t8, $t7, $v1 +/* 0C29BC 800C1DBC A3040111 */ sb $a0, 0x111($t8) +/* 0C29C0 800C1DC0 8C59FFFC */ lw $t9, -4($v0) +/* 0C29C4 800C1DC4 00000000 */ nop +/* 0C29C8 800C1DC8 03236821 */ addu $t5, $t9, $v1 +/* 0C29CC 800C1DCC A1A50112 */ sb $a1, 0x112($t5) +/* 0C29D0 800C1DD0 8C4CFFFC */ lw $t4, -4($v0) +/* 0C29D4 800C1DD4 00000000 */ nop +/* 0C29D8 800C1DD8 01837021 */ addu $t6, $t4, $v1 +/* 0C29DC 800C1DDC A1C80113 */ sb $t0, 0x113($t6) +/* 0C29E0 800C1DE0 8C4FFFFC */ lw $t7, -4($v0) +/* 0C29E4 800C1DE4 00000000 */ nop +/* 0C29E8 800C1DE8 01E3C021 */ addu $t8, $t7, $v1 +/* 0C29EC 800C1DEC A3040201 */ sb $a0, 0x201($t8) +/* 0C29F0 800C1DF0 8C59FFFC */ lw $t9, -4($v0) +/* 0C29F4 800C1DF4 00000000 */ nop +/* 0C29F8 800C1DF8 03236821 */ addu $t5, $t9, $v1 +/* 0C29FC 800C1DFC A1A60202 */ sb $a2, 0x202($t5) +/* 0C2A00 800C1E00 8C4CFFFC */ lw $t4, -4($v0) +/* 0C2A04 800C1E04 00000000 */ nop +/* 0C2A08 800C1E08 01837021 */ addu $t6, $t4, $v1 +/* 0C2A0C 800C1E0C A1C50203 */ sb $a1, 0x203($t6) +/* 0C2A10 800C1E10 8C4FFFFC */ lw $t7, -4($v0) +/* 0C2A14 800C1E14 00000000 */ nop +/* 0C2A18 800C1E18 01E3C021 */ addu $t8, $t7, $v1 +/* 0C2A1C 800C1E1C A3040211 */ sb $a0, 0x211($t8) +/* 0C2A20 800C1E20 8C59FFFC */ lw $t9, -4($v0) +/* 0C2A24 800C1E24 00000000 */ nop +/* 0C2A28 800C1E28 03236821 */ addu $t5, $t9, $v1 +/* 0C2A2C 800C1E2C A1A50212 */ sb $a1, 0x212($t5) +/* 0C2A30 800C1E30 8C4CFFFC */ lw $t4, -4($v0) +/* 0C2A34 800C1E34 00000000 */ nop +/* 0C2A38 800C1E38 01837021 */ addu $t6, $t4, $v1 +/* 0C2A3C 800C1E3C A1C80213 */ sb $t0, 0x213($t6) +/* 0C2A40 800C1E40 8C4FFFFC */ lw $t7, -4($v0) +/* 0C2A44 800C1E44 00000000 */ nop +/* 0C2A48 800C1E48 01E3C021 */ addu $t8, $t7, $v1 +/* 0C2A4C 800C1E4C A3040301 */ sb $a0, 0x301($t8) +/* 0C2A50 800C1E50 8C59FFFC */ lw $t9, -4($v0) +/* 0C2A54 800C1E54 00000000 */ nop +/* 0C2A58 800C1E58 03236821 */ addu $t5, $t9, $v1 +/* 0C2A5C 800C1E5C A1A60302 */ sb $a2, 0x302($t5) +/* 0C2A60 800C1E60 8C4CFFFC */ lw $t4, -4($v0) +/* 0C2A64 800C1E64 00000000 */ nop +/* 0C2A68 800C1E68 01837021 */ addu $t6, $t4, $v1 +/* 0C2A6C 800C1E6C A1C50303 */ sb $a1, 0x303($t6) +/* 0C2A70 800C1E70 8C4FFFFC */ lw $t7, -4($v0) +/* 0C2A74 800C1E74 00000000 */ nop +/* 0C2A78 800C1E78 01E3C021 */ addu $t8, $t7, $v1 +/* 0C2A7C 800C1E7C A3040311 */ sb $a0, 0x311($t8) +/* 0C2A80 800C1E80 8C59FFFC */ lw $t9, -4($v0) +/* 0C2A84 800C1E84 00000000 */ nop +/* 0C2A88 800C1E88 03236821 */ addu $t5, $t9, $v1 +/* 0C2A8C 800C1E8C A1A50312 */ sb $a1, 0x312($t5) +/* 0C2A90 800C1E90 8C4CFFFC */ lw $t4, -4($v0) +/* 0C2A94 800C1E94 00000000 */ nop +/* 0C2A98 800C1E98 01837021 */ addu $t6, $t4, $v1 +/* 0C2A9C 800C1E9C 144AFFA0 */ bne $v0, $t2, .L800C1D20 +/* 0C2AA0 800C1EA0 A1C80313 */ sb $t0, 0x313($t6) +/* 0C2AA4 800C1EA4 26940001 */ addiu $s4, $s4, 1 +/* 0C2AA8 800C1EA8 168BFF97 */ bne $s4, $t3, .L800C1D08 +/* 0C2AAC 800C1EAC 00142040 */ sll $a0, $s4, 1 +/* 0C2AB0 800C1EB0 8FBF0034 */ lw $ra, 0x34($sp) +/* 0C2AB4 800C1EB4 240F0001 */ li $t7, 1 +/* 0C2AB8 800C1EB8 3C01800E */ lui $at, %hi(D_800E31AC) # $at, 0x800e +/* 0C2ABC 800C1EBC C7B50010 */ lwc1 $f21, 0x10($sp) +/* 0C2AC0 800C1EC0 C7B40014 */ lwc1 $f20, 0x14($sp) +/* 0C2AC4 800C1EC4 8FB0001C */ lw $s0, 0x1c($sp) +/* 0C2AC8 800C1EC8 8FB10020 */ lw $s1, 0x20($sp) +/* 0C2ACC 800C1ECC 8FB20024 */ lw $s2, 0x24($sp) +/* 0C2AD0 800C1ED0 8FB30028 */ lw $s3, 0x28($sp) +/* 0C2AD4 800C1ED4 8FB4002C */ lw $s4, 0x2c($sp) +/* 0C2AD8 800C1ED8 8FB50030 */ lw $s5, 0x30($sp) +/* 0C2ADC 800C1EDC AC2F31AC */ sw $t7, %lo(D_800E31AC)($at) +/* 0C2AE0 800C1EE0 03E00008 */ jr $ra +/* 0C2AE4 800C1EE4 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C1EE8.s b/asm/non_matchings/unknown_0B8920/func_800C1EE8.s new file mode 100644 index 00000000..7cfd2e95 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C1EE8.s @@ -0,0 +1,236 @@ +glabel func_800C1EE8 +/* 0C2AE8 800C1EE8 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 0C2AEC 800C1EEC 3C03800E */ lui $v1, %hi(D_800E31B0) # $v1, 0x800e +/* 0C2AF0 800C1EF0 246331B0 */ addiu $v1, %lo(D_800E31B0) # addiu $v1, $v1, 0x31b0 +/* 0C2AF4 800C1EF4 44842000 */ mtc1 $a0, $f4 +/* 0C2AF8 800C1EF8 94620000 */ lhu $v0, ($v1) +/* 0C2AFC 800C1EFC AFBF004C */ sw $ra, 0x4c($sp) +/* 0C2B00 800C1F00 AFBE0048 */ sw $fp, 0x48($sp) +/* 0C2B04 800C1F04 AFB70044 */ sw $s7, 0x44($sp) +/* 0C2B08 800C1F08 AFB60040 */ sw $s6, 0x40($sp) +/* 0C2B0C 800C1F0C AFB5003C */ sw $s5, 0x3c($sp) +/* 0C2B10 800C1F10 AFB40038 */ sw $s4, 0x38($sp) +/* 0C2B14 800C1F14 AFB30034 */ sw $s3, 0x34($sp) +/* 0C2B18 800C1F18 AFB20030 */ sw $s2, 0x30($sp) +/* 0C2B1C 800C1F1C AFB1002C */ sw $s1, 0x2c($sp) +/* 0C2B20 800C1F20 AFB00028 */ sw $s0, 0x28($sp) +/* 0C2B24 800C1F24 E7B70020 */ swc1 $f23, 0x20($sp) +/* 0C2B28 800C1F28 E7B60024 */ swc1 $f22, 0x24($sp) +/* 0C2B2C 800C1F2C E7B50018 */ swc1 $f21, 0x18($sp) +/* 0C2B30 800C1F30 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 0C2B34 800C1F34 184000B4 */ blez $v0, .L800C2208 +/* 0C2B38 800C1F38 46802020 */ cvt.s.w $f0, $f4 +/* 0C2B3C 800C1F3C 0082082A */ slt $at, $a0, $v0 +/* 0C2B40 800C1F40 10200014 */ beqz $at, .L800C1F94 +/* 0C2B44 800C1F44 00009825 */ move $s3, $zero +/* 0C2B48 800C1F48 3C018013 */ lui $at, %hi(D_8012A760) # $at, 0x8013 +/* 0C2B4C 800C1F4C C428A760 */ lwc1 $f8, %lo(D_8012A760)($at) +/* 0C2B50 800C1F50 3C178013 */ lui $s7, %hi(D_8012A758) # $s7, 0x8013 +/* 0C2B54 800C1F54 46080282 */ mul.s $f10, $f0, $f8 +/* 0C2B58 800C1F58 26F7A758 */ addiu $s7, %lo(D_8012A758) # addiu $s7, $s7, -0x58a8 +/* 0C2B5C 800C1F5C C6E60000 */ lwc1 $f6, ($s7) +/* 0C2B60 800C1F60 3C018013 */ lui $at, %hi(D_8012A764) # $at, 0x8013 +/* 0C2B64 800C1F64 460A3400 */ add.s $f16, $f6, $f10 +/* 0C2B68 800C1F68 3C1E8013 */ lui $fp, %hi(D_8012A75C) # $fp, 0x8013 +/* 0C2B6C 800C1F6C E6F00000 */ swc1 $f16, ($s7) +/* 0C2B70 800C1F70 C424A764 */ lwc1 $f4, %lo(D_8012A764)($at) +/* 0C2B74 800C1F74 27DEA75C */ addiu $fp, %lo(D_8012A75C) # addiu $fp, $fp, -0x58a4 +/* 0C2B78 800C1F78 46040202 */ mul.s $f8, $f0, $f4 +/* 0C2B7C 800C1F7C C7D20000 */ lwc1 $f18, ($fp) +/* 0C2B80 800C1F80 00447023 */ subu $t6, $v0, $a0 +/* 0C2B84 800C1F84 A46E0000 */ sh $t6, ($v1) +/* 0C2B88 800C1F88 46089180 */ add.s $f6, $f18, $f8 +/* 0C2B8C 800C1F8C 1000000C */ b .L800C1FC0 +/* 0C2B90 800C1F90 E7C60000 */ swc1 $f6, ($fp) +.L800C1F94: +/* 0C2B94 800C1F94 3C018013 */ lui $at, %hi(D_8012A768) # $at, 0x8013 +/* 0C2B98 800C1F98 C42AA768 */ lwc1 $f10, %lo(D_8012A768)($at) +/* 0C2B9C 800C1F9C 3C178013 */ lui $s7, %hi(D_8012A758) # $s7, 0x8013 +/* 0C2BA0 800C1FA0 26F7A758 */ addiu $s7, %lo(D_8012A758) # addiu $s7, $s7, -0x58a8 +/* 0C2BA4 800C1FA4 3C018013 */ lui $at, %hi(D_8012A76C) # $at, 0x8013 +/* 0C2BA8 800C1FA8 E6EA0000 */ swc1 $f10, ($s7) +/* 0C2BAC 800C1FAC C430A76C */ lwc1 $f16, %lo(D_8012A76C)($at) +/* 0C2BB0 800C1FB0 3C1E8013 */ lui $fp, %hi(D_8012A75C) # $fp, 0x8013 +/* 0C2BB4 800C1FB4 27DEA75C */ addiu $fp, %lo(D_8012A75C) # addiu $fp, $fp, -0x58a4 +/* 0C2BB8 800C1FB8 A4600000 */ sh $zero, ($v1) +/* 0C2BBC 800C1FBC E7D00000 */ swc1 $f16, ($fp) +.L800C1FC0: +/* 0C2BC0 800C1FC0 3C01800F */ lui $at, %hi(D_800E932C) # $at, 0x800f +/* 0C2BC4 800C1FC4 3C11800E */ lui $s1, %hi(D_800E31D0) # $s1, 0x800e +/* 0C2BC8 800C1FC8 3C10800E */ lui $s0, %hi(D_800E31C0) # $s0, 0x800e +/* 0C2BCC 800C1FCC C436932C */ lwc1 $f22, %lo(D_800E932C)($at) +/* 0C2BD0 800C1FD0 261031C0 */ addiu $s0, %lo(D_800E31C0) # addiu $s0, $s0, 0x31c0 +/* 0C2BD4 800C1FD4 263131D0 */ addiu $s1, %lo(D_800E31D0) # addiu $s1, $s1, 0x31d0 +/* 0C2BD8 800C1FD8 00009025 */ move $s2, $zero +/* 0C2BDC 800C1FDC 24160009 */ li $s6, 9 +/* 0C2BE0 800C1FE0 2415000A */ li $s5, 10 +.L800C1FE4: +/* 0C2BE4 800C1FE4 0013A400 */ sll $s4, $s3, 0x10 +/* 0C2BE8 800C1FE8 00147C03 */ sra $t7, $s4, 0x10 +/* 0C2BEC 800C1FEC 000F2400 */ sll $a0, $t7, 0x10 +/* 0C2BF0 800C1FF0 0004C403 */ sra $t8, $a0, 0x10 +/* 0C2BF4 800C1FF4 03002025 */ move $a0, $t8 +/* 0C2BF8 800C1FF8 0C01C1F1 */ jal func_800707C4 +/* 0C2BFC 800C1FFC 01E0A025 */ move $s4, $t7 +/* 0C2C00 800C2000 C6E40000 */ lwc1 $f4, ($s7) +/* 0C2C04 800C2004 00142400 */ sll $a0, $s4, 0x10 +/* 0C2C08 800C2008 0004CC03 */ sra $t9, $a0, 0x10 +/* 0C2C0C 800C200C 46040502 */ mul.s $f20, $f0, $f4 +/* 0C2C10 800C2010 0C01C1FE */ jal func_800707F8 +/* 0C2C14 800C2014 03202025 */ move $a0, $t9 +/* 0C2C18 800C2018 C7D20000 */ lwc1 $f18, ($fp) +/* 0C2C1C 800C201C 00124040 */ sll $t0, $s2, 1 +/* 0C2C20 800C2020 46120082 */ mul.s $f2, $f0, $f18 +/* 0C2C24 800C2024 8E2A0000 */ lw $t2, ($s1) +/* 0C2C28 800C2028 01150019 */ multu $t0, $s5 +/* 0C2C2C 800C202C 000A5880 */ sll $t3, $t2, 2 +/* 0C2C30 800C2030 4616A202 */ mul.s $f8, $f20, $f22 +/* 0C2C34 800C2034 020B6021 */ addu $t4, $s0, $t3 +/* 0C2C38 800C2038 8D8D0000 */ lw $t5, ($t4) +/* 0C2C3C 800C203C 26520001 */ addiu $s2, $s2, 1 +/* 0C2C40 800C2040 4449F800 */ cfc1 $t1, $31 +/* 0C2C44 800C2044 26731000 */ addiu $s3, $s3, 0x1000 +/* 0C2C48 800C2048 35210003 */ ori $at, $t1, 3 +/* 0C2C4C 800C204C 38210002 */ xori $at, $at, 2 +/* 0C2C50 800C2050 44C1F800 */ ctc1 $at, $31 +/* 0C2C54 800C2054 00000000 */ nop +/* 0C2C58 800C2058 460041A4 */ cvt.w.s $f6, $f8 +/* 0C2C5C 800C205C 00001012 */ mflo $v0 +/* 0C2C60 800C2060 44C9F800 */ ctc1 $t1, $31 +/* 0C2C64 800C2064 44043000 */ mfc1 $a0, $f6 +/* 0C2C68 800C2068 46161282 */ mul.s $f10, $f2, $f22 +/* 0C2C6C 800C206C 01A27021 */ addu $t6, $t5, $v0 +/* 0C2C70 800C2070 A5C4000A */ sh $a0, 0xa($t6) +/* 0C2C74 800C2074 8E380000 */ lw $t8, ($s1) +/* 0C2C78 800C2078 444FF800 */ cfc1 $t7, $31 +/* 0C2C7C 800C207C 0018C880 */ sll $t9, $t8, 2 +/* 0C2C80 800C2080 35E10003 */ ori $at, $t7, 3 +/* 0C2C84 800C2084 38210002 */ xori $at, $at, 2 +/* 0C2C88 800C2088 44C1F800 */ ctc1 $at, $31 +/* 0C2C8C 800C208C 02194021 */ addu $t0, $s0, $t9 +/* 0C2C90 800C2090 46005424 */ cvt.w.s $f16, $f10 +/* 0C2C94 800C2094 8D090000 */ lw $t1, ($t0) +/* 0C2C98 800C2098 44038000 */ mfc1 $v1, $f16 +/* 0C2C9C 800C209C 01225021 */ addu $t2, $t1, $v0 +/* 0C2CA0 800C20A0 A543000C */ sh $v1, 0xc($t2) +/* 0C2CA4 800C20A4 8E2C0000 */ lw $t4, ($s1) +/* 0C2CA8 800C20A8 44CFF800 */ ctc1 $t7, $31 +/* 0C2CAC 800C20AC 000C6880 */ sll $t5, $t4, 2 +/* 0C2CB0 800C20B0 020D7021 */ addu $t6, $s0, $t5 +/* 0C2CB4 800C20B4 8DCF0000 */ lw $t7, ($t6) +/* 0C2CB8 800C20B8 00043823 */ negu $a3, $a0 +/* 0C2CBC 800C20BC 01E2C021 */ addu $t8, $t7, $v0 +/* 0C2CC0 800C20C0 A7070172 */ sh $a3, 0x172($t8) +/* 0C2CC4 800C20C4 8E390000 */ lw $t9, ($s1) +/* 0C2CC8 800C20C8 00000000 */ nop +/* 0C2CCC 800C20CC 00194080 */ sll $t0, $t9, 2 +/* 0C2CD0 800C20D0 02084821 */ addu $t1, $s0, $t0 +/* 0C2CD4 800C20D4 8D2A0000 */ lw $t2, ($t1) +/* 0C2CD8 800C20D8 00000000 */ nop +/* 0C2CDC 800C20DC 01425821 */ addu $t3, $t2, $v0 +/* 0C2CE0 800C20E0 A5630174 */ sh $v1, 0x174($t3) +/* 0C2CE4 800C20E4 8E2C0000 */ lw $t4, ($s1) +/* 0C2CE8 800C20E8 00000000 */ nop +/* 0C2CEC 800C20EC 000C6880 */ sll $t5, $t4, 2 +/* 0C2CF0 800C20F0 020D7021 */ addu $t6, $s0, $t5 +/* 0C2CF4 800C20F4 8DCF0000 */ lw $t7, ($t6) +/* 0C2CF8 800C20F8 00000000 */ nop +/* 0C2CFC 800C20FC 01E2C021 */ addu $t8, $t7, $v0 +/* 0C2D00 800C2100 A70400B4 */ sh $a0, 0xb4($t8) +/* 0C2D04 800C2104 8E390000 */ lw $t9, ($s1) +/* 0C2D08 800C2108 00000000 */ nop +/* 0C2D0C 800C210C 00194080 */ sll $t0, $t9, 2 +/* 0C2D10 800C2110 02084821 */ addu $t1, $s0, $t0 +/* 0C2D14 800C2114 8D2A0000 */ lw $t2, ($t1) +/* 0C2D18 800C2118 00000000 */ nop +/* 0C2D1C 800C211C 01425821 */ addu $t3, $t2, $v0 +/* 0C2D20 800C2120 A56300B6 */ sh $v1, 0xb6($t3) +/* 0C2D24 800C2124 8E2C0000 */ lw $t4, ($s1) +/* 0C2D28 800C2128 00000000 */ nop +/* 0C2D2C 800C212C 000C6880 */ sll $t5, $t4, 2 +/* 0C2D30 800C2130 020D7021 */ addu $t6, $s0, $t5 +/* 0C2D34 800C2134 8DCF0000 */ lw $t7, ($t6) +/* 0C2D38 800C2138 444CF800 */ cfc1 $t4, $31 +/* 0C2D3C 800C213C 01E2C021 */ addu $t8, $t7, $v0 +/* 0C2D40 800C2140 A707021C */ sh $a3, 0x21c($t8) +/* 0C2D44 800C2144 8E390000 */ lw $t9, ($s1) +/* 0C2D48 800C2148 35810003 */ ori $at, $t4, 3 +/* 0C2D4C 800C214C 00194080 */ sll $t0, $t9, 2 +/* 0C2D50 800C2150 02084821 */ addu $t1, $s0, $t0 +/* 0C2D54 800C2154 8D2A0000 */ lw $t2, ($t1) +/* 0C2D58 800C2158 38210002 */ xori $at, $at, 2 +/* 0C2D5C 800C215C 44C1F800 */ ctc1 $at, $31 +/* 0C2D60 800C2160 01425821 */ addu $t3, $t2, $v0 +/* 0C2D64 800C2164 A563021E */ sh $v1, 0x21e($t3) +/* 0C2D68 800C2168 8E2D0000 */ lw $t5, ($s1) +/* 0C2D6C 800C216C 4600A124 */ cvt.w.s $f4, $f20 +/* 0C2D70 800C2170 000D7080 */ sll $t6, $t5, 2 +/* 0C2D74 800C2174 44CCF800 */ ctc1 $t4, $31 +/* 0C2D78 800C2178 020E7821 */ addu $t7, $s0, $t6 +/* 0C2D7C 800C217C 8DF80000 */ lw $t8, ($t7) +/* 0C2D80 800C2180 44052000 */ mfc1 $a1, $f4 +/* 0C2D84 800C2184 4448F800 */ cfc1 $t0, $31 +/* 0C2D88 800C2188 0302C821 */ addu $t9, $t8, $v0 +/* 0C2D8C 800C218C A72500BE */ sh $a1, 0xbe($t9) +/* 0C2D90 800C2190 35010003 */ ori $at, $t0, 3 +/* 0C2D94 800C2194 8E290000 */ lw $t1, ($s1) +/* 0C2D98 800C2198 38210002 */ xori $at, $at, 2 +/* 0C2D9C 800C219C 44C1F800 */ ctc1 $at, $31 +/* 0C2DA0 800C21A0 00095080 */ sll $t2, $t1, 2 +/* 0C2DA4 800C21A4 460014A4 */ cvt.w.s $f18, $f2 +/* 0C2DA8 800C21A8 020A5821 */ addu $t3, $s0, $t2 +/* 0C2DAC 800C21AC 8D6C0000 */ lw $t4, ($t3) +/* 0C2DB0 800C21B0 44069000 */ mfc1 $a2, $f18 +/* 0C2DB4 800C21B4 01826821 */ addu $t5, $t4, $v0 +/* 0C2DB8 800C21B8 A5A600C0 */ sh $a2, 0xc0($t5) +/* 0C2DBC 800C21BC 8E390000 */ lw $t9, ($s1) +/* 0C2DC0 800C21C0 44C8F800 */ ctc1 $t0, $31 +/* 0C2DC4 800C21C4 00194080 */ sll $t0, $t9, 2 +/* 0C2DC8 800C21C8 02084821 */ addu $t1, $s0, $t0 +/* 0C2DCC 800C21CC 8D2A0000 */ lw $t2, ($t1) +/* 0C2DD0 800C21D0 0005C023 */ negu $t8, $a1 +/* 0C2DD4 800C21D4 01425821 */ addu $t3, $t2, $v0 +/* 0C2DD8 800C21D8 A5780226 */ sh $t8, 0x226($t3) +/* 0C2DDC 800C21DC 8E2C0000 */ lw $t4, ($s1) +/* 0C2DE0 800C21E0 00000000 */ nop +/* 0C2DE4 800C21E4 000C6880 */ sll $t5, $t4, 2 +/* 0C2DE8 800C21E8 020D7021 */ addu $t6, $s0, $t5 +/* 0C2DEC 800C21EC 8DCF0000 */ lw $t7, ($t6) +/* 0C2DF0 800C21F0 00000000 */ nop +/* 0C2DF4 800C21F4 01E2C821 */ addu $t9, $t7, $v0 +/* 0C2DF8 800C21F8 1656FF7A */ bne $s2, $s6, .L800C1FE4 +/* 0C2DFC 800C21FC A7260228 */ sh $a2, 0x228($t9) +/* 0C2E00 800C2200 1000000D */ b .L800C2238 +/* 0C2E04 800C2204 8FBF004C */ lw $ra, 0x4c($sp) +.L800C2208: +/* 0C2E08 800C2208 3C03800E */ lui $v1, %hi(D_800E31B4) # $v1, 0x800e +/* 0C2E0C 800C220C 246331B4 */ addiu $v1, %lo(D_800E31B4) # addiu $v1, $v1, 0x31b4 +/* 0C2E10 800C2210 94620000 */ lhu $v0, ($v1) +/* 0C2E14 800C2214 3401FFFF */ li $at, 65535 +/* 0C2E18 800C2218 10410006 */ beq $v0, $at, .L800C2234 +/* 0C2E1C 800C221C 0082082A */ slt $at, $a0, $v0 +/* 0C2E20 800C2220 10200003 */ beqz $at, .L800C2230 +/* 0C2E24 800C2224 00444023 */ subu $t0, $v0, $a0 +/* 0C2E28 800C2228 10000002 */ b .L800C2234 +/* 0C2E2C 800C222C A4680000 */ sh $t0, ($v1) +.L800C2230: +/* 0C2E30 800C2230 A4600000 */ sh $zero, ($v1) +.L800C2234: +/* 0C2E34 800C2234 8FBF004C */ lw $ra, 0x4c($sp) +.L800C2238: +/* 0C2E38 800C2238 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 0C2E3C 800C223C C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 0C2E40 800C2240 C7B70020 */ lwc1 $f23, 0x20($sp) +/* 0C2E44 800C2244 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 0C2E48 800C2248 8FB00028 */ lw $s0, 0x28($sp) +/* 0C2E4C 800C224C 8FB1002C */ lw $s1, 0x2c($sp) +/* 0C2E50 800C2250 8FB20030 */ lw $s2, 0x30($sp) +/* 0C2E54 800C2254 8FB30034 */ lw $s3, 0x34($sp) +/* 0C2E58 800C2258 8FB40038 */ lw $s4, 0x38($sp) +/* 0C2E5C 800C225C 8FB5003C */ lw $s5, 0x3c($sp) +/* 0C2E60 800C2260 8FB60040 */ lw $s6, 0x40($sp) +/* 0C2E64 800C2264 8FB70044 */ lw $s7, 0x44($sp) +/* 0C2E68 800C2268 8FBE0048 */ lw $fp, 0x48($sp) +/* 0C2E6C 800C226C 03E00008 */ jr $ra +/* 0C2E70 800C2270 27BD0050 */ addiu $sp, $sp, 0x50 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C2274.s b/asm/non_matchings/unknown_0B8920/func_800C2274.s new file mode 100644 index 00000000..9f56d65c --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C2274.s @@ -0,0 +1,99 @@ +glabel func_800C2274 +/* 0C2E74 800C2274 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C2E78 800C2278 AFBF0014 */ sw $ra, 0x14($sp) +/* 0C2E7C 800C227C AFA40018 */ sw $a0, 0x18($sp) +/* 0C2E80 800C2280 AFA5001C */ sw $a1, 0x1c($sp) +/* 0C2E84 800C2284 0C01ECF4 */ jal func_8007B3D0 +/* 0C2E88 800C2288 AFA60020 */ sw $a2, 0x20($sp) +/* 0C2E8C 800C228C 3C03800E */ lui $v1, %hi(D_800E31D0) # $v1, 0x800e +/* 0C2E90 800C2290 8C6331D0 */ lw $v1, %lo(D_800E31D0)($v1) +/* 0C2E94 800C2294 8FAE0018 */ lw $t6, 0x18($sp) +/* 0C2E98 800C2298 3C07800E */ lui $a3, 0x800e +/* 0C2E9C 800C229C 00037880 */ sll $t7, $v1, 2 +/* 0C2EA0 800C22A0 8DC20000 */ lw $v0, ($t6) +/* 0C2EA4 800C22A4 00EF3821 */ addu $a3, $a3, $t7 +/* 0C2EA8 800C22A8 3C08800E */ lui $t0, 0x800e +/* 0C2EAC 800C22AC 8CE731C0 */ lw $a3, 0x31c0($a3) +/* 0C2EB0 800C22B0 010F4021 */ addu $t0, $t0, $t7 +/* 0C2EB4 800C22B4 8D0831C8 */ lw $t0, 0x31c8($t0) +/* 0C2EB8 800C22B8 3C19800E */ lui $t9, %hi(D_800E3648) # $t9, 0x800e +/* 0C2EBC 800C22BC 00402025 */ move $a0, $v0 +/* 0C2EC0 800C22C0 27393648 */ addiu $t9, %lo(D_800E3648) # addiu $t9, $t9, 0x3648 +/* 0C2EC4 800C22C4 3C180600 */ lui $t8, 0x600 +/* 0C2EC8 800C22C8 AC980000 */ sw $t8, ($a0) +/* 0C2ECC 800C22CC AC990004 */ sw $t9, 4($a0) +/* 0C2ED0 800C22D0 3C068000 */ lui $a2, 0x8000 +/* 0C2ED4 800C22D4 00E62021 */ addu $a0, $a3, $a2 +/* 0C2ED8 800C22D8 308B0006 */ andi $t3, $a0, 6 +/* 0C2EDC 800C22DC 356C0088 */ ori $t4, $t3, 0x88 +/* 0C2EE0 800C22E0 318D00FF */ andi $t5, $t4, 0xff +/* 0C2EE4 800C22E4 24430008 */ addiu $v1, $v0, 8 +/* 0C2EE8 800C22E8 3C090400 */ lui $t1, 0x400 +/* 0C2EEC 800C22EC AC640004 */ sw $a0, 4($v1) +/* 0C2EF0 800C22F0 000D7400 */ sll $t6, $t5, 0x10 +/* 0C2EF4 800C22F4 24E700B4 */ addiu $a3, $a3, 0xb4 +/* 0C2EF8 800C22F8 00E62021 */ addu $a0, $a3, $a2 +/* 0C2EFC 800C22FC 01C97825 */ or $t7, $t6, $t1 +/* 0C2F00 800C2300 308B0006 */ andi $t3, $a0, 6 +/* 0C2F04 800C2304 35F8014C */ ori $t8, $t7, 0x14c +/* 0C2F08 800C2308 24650008 */ addiu $a1, $v1, 8 +/* 0C2F0C 800C230C 356C0088 */ ori $t4, $t3, 0x88 +/* 0C2F10 800C2310 3C0A05F0 */ lui $t2, (0x05F00100 >> 16) # lui $t2, 0x5f0 +/* 0C2F14 800C2314 AC780000 */ sw $t8, ($v1) +/* 0C2F18 800C2318 354A0100 */ ori $t2, (0x05F00100 & 0xFFFF) # ori $t2, $t2, 0x100 +/* 0C2F1C 800C231C 318D00FF */ andi $t5, $t4, 0xff +/* 0C2F20 800C2320 0106C821 */ addu $t9, $t0, $a2 +/* 0C2F24 800C2324 000D7400 */ sll $t6, $t5, 0x10 +/* 0C2F28 800C2328 ACB90004 */ sw $t9, 4($a1) +/* 0C2F2C 800C232C ACAA0000 */ sw $t2, ($a1) +/* 0C2F30 800C2330 24A20008 */ addiu $v0, $a1, 8 +/* 0C2F34 800C2334 AC440004 */ sw $a0, 4($v0) +/* 0C2F38 800C2338 01C97825 */ or $t7, $t6, $t1 +/* 0C2F3C 800C233C 24E700B4 */ addiu $a3, $a3, 0xb4 +/* 0C2F40 800C2340 00E62021 */ addu $a0, $a3, $a2 +/* 0C2F44 800C2344 35F8014C */ ori $t8, $t7, 0x14c +/* 0C2F48 800C2348 24450008 */ addiu $a1, $v0, 8 +/* 0C2F4C 800C234C AC580000 */ sw $t8, ($v0) +/* 0C2F50 800C2350 308B0006 */ andi $t3, $a0, 6 +/* 0C2F54 800C2354 25080100 */ addiu $t0, $t0, 0x100 +/* 0C2F58 800C2358 0106C821 */ addu $t9, $t0, $a2 +/* 0C2F5C 800C235C 356C0088 */ ori $t4, $t3, 0x88 +/* 0C2F60 800C2360 318D00FF */ andi $t5, $t4, 0xff +/* 0C2F64 800C2364 ACB90004 */ sw $t9, 4($a1) +/* 0C2F68 800C2368 ACAA0000 */ sw $t2, ($a1) +/* 0C2F6C 800C236C 24A30008 */ addiu $v1, $a1, 8 +/* 0C2F70 800C2370 AC640004 */ sw $a0, 4($v1) +/* 0C2F74 800C2374 000D7400 */ sll $t6, $t5, 0x10 +/* 0C2F78 800C2378 24E700B4 */ addiu $a3, $a3, 0xb4 +/* 0C2F7C 800C237C 00E62021 */ addu $a0, $a3, $a2 +/* 0C2F80 800C2380 01C97825 */ or $t7, $t6, $t1 +/* 0C2F84 800C2384 35F8014C */ ori $t8, $t7, 0x14c +/* 0C2F88 800C2388 308B0006 */ andi $t3, $a0, 6 +/* 0C2F8C 800C238C 356C0088 */ ori $t4, $t3, 0x88 +/* 0C2F90 800C2390 AC780000 */ sw $t8, ($v1) +/* 0C2F94 800C2394 24620008 */ addiu $v0, $v1, 8 +/* 0C2F98 800C2398 25080100 */ addiu $t0, $t0, 0x100 +/* 0C2F9C 800C239C 0106C821 */ addu $t9, $t0, $a2 +/* 0C2FA0 800C23A0 318D00FF */ andi $t5, $t4, 0xff +/* 0C2FA4 800C23A4 000D7400 */ sll $t6, $t5, 0x10 +/* 0C2FA8 800C23A8 AC590004 */ sw $t9, 4($v0) +/* 0C2FAC 800C23AC 24430008 */ addiu $v1, $v0, 8 +/* 0C2FB0 800C23B0 01C97825 */ or $t7, $t6, $t1 +/* 0C2FB4 800C23B4 AC4A0000 */ sw $t2, ($v0) +/* 0C2FB8 800C23B8 35F8014C */ ori $t8, $t7, 0x14c +/* 0C2FBC 800C23BC AC780000 */ sw $t8, ($v1) +/* 0C2FC0 800C23C0 AC640004 */ sw $a0, 4($v1) +/* 0C2FC4 800C23C4 24650008 */ addiu $a1, $v1, 8 +/* 0C2FC8 800C23C8 25080100 */ addiu $t0, $t0, 0x100 +/* 0C2FCC 800C23CC 0106C821 */ addu $t9, $t0, $a2 +/* 0C2FD0 800C23D0 ACB90004 */ sw $t9, 4($a1) +/* 0C2FD4 800C23D4 ACAA0000 */ sw $t2, ($a1) +/* 0C2FD8 800C23D8 8FA40018 */ lw $a0, 0x18($sp) +/* 0C2FDC 800C23DC 24A20008 */ addiu $v0, $a1, 8 +/* 0C2FE0 800C23E0 0C01ECF4 */ jal func_8007B3D0 +/* 0C2FE4 800C23E4 AC820000 */ sw $v0, ($a0) +/* 0C2FE8 800C23E8 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C2FEC 800C23EC 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0C2FF0 800C23F0 03E00008 */ jr $ra +/* 0C2FF4 800C23F4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C23F8.s b/asm/non_matchings/unknown_0B8920/func_800C23F8.s new file mode 100644 index 00000000..4e3aae70 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C23F8.s @@ -0,0 +1,90 @@ +glabel func_800C23F8 +/* 0C2FF8 800C23F8 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0C2FFC 800C23FC AFBF001C */ sw $ra, 0x1c($sp) +/* 0C3000 800C2400 AFB00018 */ sw $s0, 0x18($sp) +/* 0C3004 800C2404 AFA40020 */ sw $a0, 0x20($sp) +/* 0C3008 800C2408 AFA50024 */ sw $a1, 0x24($sp) +/* 0C300C 800C240C 0C01ECF4 */ jal func_8007B3D0 +/* 0C3010 800C2410 AFA60028 */ sw $a2, 0x28($sp) +/* 0C3014 800C2414 3C03800E */ lui $v1, %hi(D_800E31D0) # $v1, 0x800e +/* 0C3018 800C2418 8FAE0020 */ lw $t6, 0x20($sp) +/* 0C301C 800C241C 8C6331D0 */ lw $v1, %lo(D_800E31D0)($v1) +/* 0C3020 800C2420 8DC20000 */ lw $v0, ($t6) +/* 0C3024 800C2424 00037880 */ sll $t7, $v1, 2 +/* 0C3028 800C2428 3C06800E */ lui $a2, 0x800e +/* 0C302C 800C242C 3C07800E */ lui $a3, 0x800e +/* 0C3030 800C2430 00CF3021 */ addu $a2, $a2, $t7 +/* 0C3034 800C2434 00EF3821 */ addu $a3, $a3, $t7 +/* 0C3038 800C2438 00402025 */ move $a0, $v0 +/* 0C303C 800C243C 8CC631C0 */ lw $a2, 0x31c0($a2) +/* 0C3040 800C2440 8CE731C8 */ lw $a3, 0x31c8($a3) +/* 0C3044 800C2444 3C19800E */ lui $t9, %hi(D_800E3648) # $t9, 0x800e +/* 0C3048 800C2448 27393648 */ addiu $t9, %lo(D_800E3648) # addiu $t9, $t9, 0x3648 +/* 0C304C 800C244C 3C180600 */ lui $t8, 0x600 +/* 0C3050 800C2450 3C1005D0 */ lui $s0, (0x05D000E0 >> 16) # lui $s0, 0x5d0 +/* 0C3054 800C2454 3C0D05B0 */ lui $t5, (0x05B000C0 >> 16) # lui $t5, 0x5b0 +/* 0C3058 800C2458 AC980000 */ sw $t8, ($a0) +/* 0C305C 800C245C AC990004 */ sw $t9, 4($a0) +/* 0C3060 800C2460 35AD00C0 */ ori $t5, (0x05B000C0 & 0xFFFF) # ori $t5, $t5, 0xc0 +/* 0C3064 800C2464 361000E0 */ ori $s0, (0x05D000E0 & 0xFFFF) # ori $s0, $s0, 0xe0 +/* 0C3068 800C2468 00004025 */ move $t0, $zero +/* 0C306C 800C246C 241F0006 */ li $ra, 6 +/* 0C3070 800C2470 240C0004 */ li $t4, 4 +/* 0C3074 800C2474 240B0001 */ li $t3, 1 +/* 0C3078 800C2478 3C0A0400 */ lui $t2, 0x400 +/* 0C307C 800C247C 3C098000 */ lui $t1, 0x8000 +/* 0C3080 800C2480 24420008 */ addiu $v0, $v0, 8 +.L800C2484: +/* 0C3084 800C2484 110B0003 */ beq $t0, $t3, .L800C2494 +/* 0C3088 800C2488 00401825 */ move $v1, $v0 +/* 0C308C 800C248C 150C0013 */ bne $t0, $t4, .L800C24DC +/* 0C3090 800C2490 00C92021 */ addu $a0, $a2, $t1 +.L800C2494: +/* 0C3094 800C2494 00C92021 */ addu $a0, $a2, $t1 +/* 0C3098 800C2498 308E0006 */ andi $t6, $a0, 6 +/* 0C309C 800C249C 35CF0068 */ ori $t7, $t6, 0x68 +/* 0C30A0 800C24A0 31F800FF */ andi $t8, $t7, 0xff +/* 0C30A4 800C24A4 0018CC00 */ sll $t9, $t8, 0x10 +/* 0C30A8 800C24A8 032A7025 */ or $t6, $t9, $t2 +/* 0C30AC 800C24AC 24420008 */ addiu $v0, $v0, 8 +/* 0C30B0 800C24B0 35CF0104 */ ori $t7, $t6, 0x104 +/* 0C30B4 800C24B4 00402825 */ move $a1, $v0 +/* 0C30B8 800C24B8 AC6F0000 */ sw $t7, ($v1) +/* 0C30BC 800C24BC AC640004 */ sw $a0, 4($v1) +/* 0C30C0 800C24C0 00E9C021 */ addu $t8, $a3, $t1 +/* 0C30C4 800C24C4 ACB80004 */ sw $t8, 4($a1) +/* 0C30C8 800C24C8 ACAD0000 */ sw $t5, ($a1) +/* 0C30CC 800C24CC 24420008 */ addiu $v0, $v0, 8 +/* 0C30D0 800C24D0 24C6008C */ addiu $a2, $a2, 0x8c +/* 0C30D4 800C24D4 10000012 */ b .L800C2520 +/* 0C30D8 800C24D8 24E700C0 */ addiu $a3, $a3, 0xc0 +.L800C24DC: +/* 0C30DC 800C24DC 30990006 */ andi $t9, $a0, 6 +/* 0C30E0 800C24E0 372E0078 */ ori $t6, $t9, 0x78 +/* 0C30E4 800C24E4 31CF00FF */ andi $t7, $t6, 0xff +/* 0C30E8 800C24E8 000FC400 */ sll $t8, $t7, 0x10 +/* 0C30EC 800C24EC 00401825 */ move $v1, $v0 +/* 0C30F0 800C24F0 24420008 */ addiu $v0, $v0, 8 +/* 0C30F4 800C24F4 030AC825 */ or $t9, $t8, $t2 +/* 0C30F8 800C24F8 372E0128 */ ori $t6, $t9, 0x128 +/* 0C30FC 800C24FC 00402825 */ move $a1, $v0 +/* 0C3100 800C2500 AC6E0000 */ sw $t6, ($v1) +/* 0C3104 800C2504 AC640004 */ sw $a0, 4($v1) +/* 0C3108 800C2508 00E97821 */ addu $t7, $a3, $t1 +/* 0C310C 800C250C ACAF0004 */ sw $t7, 4($a1) +/* 0C3110 800C2510 ACB00000 */ sw $s0, ($a1) +/* 0C3114 800C2514 24420008 */ addiu $v0, $v0, 8 +/* 0C3118 800C2518 24C600A0 */ addiu $a2, $a2, 0xa0 +/* 0C311C 800C251C 24E700E0 */ addiu $a3, $a3, 0xe0 +.L800C2520: +/* 0C3120 800C2520 25080001 */ addiu $t0, $t0, 1 +/* 0C3124 800C2524 151FFFD7 */ bne $t0, $ra, .L800C2484 +/* 0C3128 800C2528 00000000 */ nop +/* 0C312C 800C252C 8FA40020 */ lw $a0, 0x20($sp) +/* 0C3130 800C2530 0C01ECF4 */ jal func_8007B3D0 +/* 0C3134 800C2534 AC820000 */ sw $v0, ($a0) +/* 0C3138 800C2538 8FBF001C */ lw $ra, 0x1c($sp) +/* 0C313C 800C253C 8FB00018 */ lw $s0, 0x18($sp) +/* 0C3140 800C2540 03E00008 */ jr $ra +/* 0C3144 800C2544 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C2548.s b/asm/non_matchings/unknown_0B8920/func_800C2548.s new file mode 100644 index 00000000..01b20f40 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C2548.s @@ -0,0 +1,64 @@ +glabel func_800C2548 +/* 0C3148 800C2548 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C314C 800C254C AFBF0014 */ sw $ra, 0x14($sp) +/* 0C3150 800C2550 AFA5001C */ sw $a1, 0x1c($sp) +/* 0C3154 800C2554 AFA60020 */ sw $a2, 0x20($sp) +/* 0C3158 800C2558 0C01ECF4 */ jal func_8007B3D0 +/* 0C315C 800C255C AFA40018 */ sw $a0, 0x18($sp) +/* 0C3160 800C2560 8FA40018 */ lw $a0, 0x18($sp) +/* 0C3164 800C2564 3C18800E */ lui $t8, %hi(D_800E3648) # $t8, 0x800e +/* 0C3168 800C2568 8C820000 */ lw $v0, ($a0) +/* 0C316C 800C256C 27183648 */ addiu $t8, %lo(D_800E3648) # addiu $t8, $t8, 0x3648 +/* 0C3170 800C2570 244E0008 */ addiu $t6, $v0, 8 +/* 0C3174 800C2574 AC8E0000 */ sw $t6, ($a0) +/* 0C3178 800C2578 3C0F0600 */ lui $t7, 0x600 +/* 0C317C 800C257C AC4F0000 */ sw $t7, ($v0) +/* 0C3180 800C2580 AC580004 */ sw $t8, 4($v0) +/* 0C3184 800C2584 8C820000 */ lw $v0, ($a0) +/* 0C3188 800C2588 3C07800E */ lui $a3, %hi(D_800E31D0) # $a3, 0x800e +/* 0C318C 800C258C 24590008 */ addiu $t9, $v0, 8 +/* 0C3190 800C2590 24E731D0 */ addiu $a3, %lo(D_800E31D0) # addiu $a3, $a3, 0x31d0 +/* 0C3194 800C2594 AC990000 */ sw $t9, ($a0) +/* 0C3198 800C2598 8CEA0000 */ lw $t2, ($a3) +/* 0C319C 800C259C 3C09800E */ lui $t1, %hi(D_800E31C0) # $t1, 0x800e +/* 0C31A0 800C25A0 252931C0 */ addiu $t1, %lo(D_800E31C0) # addiu $t1, $t1, 0x31c0 +/* 0C31A4 800C25A4 000A5880 */ sll $t3, $t2, 2 +/* 0C31A8 800C25A8 012B6021 */ addu $t4, $t1, $t3 +/* 0C31AC 800C25AC 8D8D0000 */ lw $t5, ($t4) +/* 0C31B0 800C25B0 3C088000 */ lui $t0, 0x8000 +/* 0C31B4 800C25B4 01A87021 */ addu $t6, $t5, $t0 +/* 0C31B8 800C25B8 31CF0006 */ andi $t7, $t6, 6 +/* 0C31BC 800C25BC 35F80048 */ ori $t8, $t7, 0x48 +/* 0C31C0 800C25C0 331900FF */ andi $t9, $t8, 0xff +/* 0C31C4 800C25C4 00195400 */ sll $t2, $t9, 0x10 +/* 0C31C8 800C25C8 3C010400 */ lui $at, 0x400 +/* 0C31CC 800C25CC 01415825 */ or $t3, $t2, $at +/* 0C31D0 800C25D0 356C00BC */ ori $t4, $t3, 0xbc +/* 0C31D4 800C25D4 AC4C0000 */ sw $t4, ($v0) +/* 0C31D8 800C25D8 8CED0000 */ lw $t5, ($a3) +/* 0C31DC 800C25DC 3C0B0550 */ lui $t3, (0x05500060 >> 16) # lui $t3, 0x550 +/* 0C31E0 800C25E0 000D7080 */ sll $t6, $t5, 2 +/* 0C31E4 800C25E4 012E7821 */ addu $t7, $t1, $t6 +/* 0C31E8 800C25E8 8DF80000 */ lw $t8, ($t7) +/* 0C31EC 800C25EC 356B0060 */ ori $t3, (0x05500060 & 0xFFFF) # ori $t3, $t3, 0x60 +/* 0C31F0 800C25F0 0308C821 */ addu $t9, $t8, $t0 +/* 0C31F4 800C25F4 AC590004 */ sw $t9, 4($v0) +/* 0C31F8 800C25F8 8C820000 */ lw $v0, ($a0) +/* 0C31FC 800C25FC 3C0E800E */ lui $t6, 0x800e +/* 0C3200 800C2600 244A0008 */ addiu $t2, $v0, 8 +/* 0C3204 800C2604 AC8A0000 */ sw $t2, ($a0) +/* 0C3208 800C2608 AC4B0000 */ sw $t3, ($v0) +/* 0C320C 800C260C 8CEC0000 */ lw $t4, ($a3) +/* 0C3210 800C2610 00000000 */ nop +/* 0C3214 800C2614 000C6880 */ sll $t5, $t4, 2 +/* 0C3218 800C2618 01CD7021 */ addu $t6, $t6, $t5 +/* 0C321C 800C261C 8DCE31C8 */ lw $t6, 0x31c8($t6) +/* 0C3220 800C2620 00000000 */ nop +/* 0C3224 800C2624 01C87821 */ addu $t7, $t6, $t0 +/* 0C3228 800C2628 0C01ECF4 */ jal func_8007B3D0 +/* 0C322C 800C262C AC4F0004 */ sw $t7, 4($v0) +/* 0C3230 800C2630 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C3234 800C2634 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0C3238 800C2638 03E00008 */ jr $ra +/* 0C323C 800C263C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C2640.s b/asm/non_matchings/unknown_0B8920/func_800C2640.s new file mode 100644 index 00000000..8dbf6f0f --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C2640.s @@ -0,0 +1,96 @@ +glabel func_800C2640 +/* 0C3240 800C2640 AFA40000 */ sw $a0, ($sp) +/* 0C3244 800C2644 3C048013 */ lui $a0, %hi(D_8012A73C) # $a0, 0x8013 +/* 0C3248 800C2648 3C038013 */ lui $v1, %hi(D_8012A738) # $v1, 0x8013 +/* 0C324C 800C264C 3C058013 */ lui $a1, %hi(D_8012A740) # $a1, 0x8013 +/* 0C3250 800C2650 24A5A740 */ addiu $a1, %lo(D_8012A740) # addiu $a1, $a1, -0x58c0 +/* 0C3254 800C2654 2463A738 */ addiu $v1, %lo(D_8012A738) # addiu $v1, $v1, -0x58c8 +/* 0C3258 800C2658 2484A73C */ addiu $a0, %lo(D_8012A73C) # addiu $a0, $a0, -0x58c4 +/* 0C325C 800C265C 8C6E0000 */ lw $t6, ($v1) +/* 0C3260 800C2660 8C980000 */ lw $t8, ($a0) +/* 0C3264 800C2664 8CA80000 */ lw $t0, ($a1) +/* 0C3268 800C2668 000E7C00 */ sll $t7, $t6, 0x10 +/* 0C326C 800C266C 0018CC00 */ sll $t9, $t8, 0x10 +/* 0C3270 800C2670 00084C00 */ sll $t1, $t0, 0x10 +/* 0C3274 800C2674 AC6F0000 */ sw $t7, ($v1) +/* 0C3278 800C2678 AC990000 */ sw $t9, ($a0) +/* 0C327C 800C267C ACA90000 */ sw $t1, ($a1) +/* 0C3280 800C2680 240A00FF */ li $t2, 255 +/* 0C3284 800C2684 3C018013 */ lui $at, %hi(D_8012A737) # $at, 0x8013 +/* 0C3288 800C2688 A02AA737 */ sb $t2, %lo(D_8012A737)($at) +/* 0C328C 800C268C 3C01437F */ li $at, 0x437F0000 # 255.000000 +/* 0C3290 800C2690 44812000 */ mtc1 $at, $f4 +/* 0C3294 800C2694 3C018013 */ lui $at, %hi(D_8012A750) # $at, 0x8013 +/* 0C3298 800C2698 44803000 */ mtc1 $zero, $f6 +/* 0C329C 800C269C E424A750 */ swc1 $f4, %lo(D_8012A750)($at) +/* 0C32A0 800C26A0 3C018013 */ lui $at, %hi(D_8012A754) # $at, 0x8013 +/* 0C32A4 800C26A4 3C0B8013 */ lui $t3, %hi(D_8012A734) # $t3, 0x8013 +/* 0C32A8 800C26A8 916BA734 */ lbu $t3, %lo(D_8012A734)($t3) +/* 0C32AC 800C26AC E426A754 */ swc1 $f6, %lo(D_8012A754)($at) +/* 0C32B0 800C26B0 8C6D0000 */ lw $t5, ($v1) +/* 0C32B4 800C26B4 3C02800E */ lui $v0, %hi(D_800E31B0) # $v0, 0x800e +/* 0C32B8 800C26B8 944231B0 */ lhu $v0, %lo(D_800E31B0)($v0) +/* 0C32BC 800C26BC 000B6400 */ sll $t4, $t3, 0x10 +/* 0C32C0 800C26C0 018D7023 */ subu $t6, $t4, $t5 +/* 0C32C4 800C26C4 01C2001A */ div $zero, $t6, $v0 +/* 0C32C8 800C26C8 3C188013 */ lui $t8, %hi(D_8012A735) # $t8, 0x8013 +/* 0C32CC 800C26CC 14400002 */ bnez $v0, .L800C26D8 +/* 0C32D0 800C26D0 00000000 */ nop +/* 0C32D4 800C26D4 0007000D */ break 7 +.L800C26D8: +/* 0C32D8 800C26D8 2401FFFF */ li $at, -1 +/* 0C32DC 800C26DC 14410004 */ bne $v0, $at, .L800C26F0 +/* 0C32E0 800C26E0 3C018000 */ lui $at, 0x8000 +/* 0C32E4 800C26E4 15C10002 */ bne $t6, $at, .L800C26F0 +/* 0C32E8 800C26E8 00000000 */ nop +/* 0C32EC 800C26EC 0006000D */ break 6 +.L800C26F0: +/* 0C32F0 800C26F0 3C018013 */ lui $at, %hi(D_8012A744) # $at, 0x8013 +/* 0C32F4 800C26F4 9318A735 */ lbu $t8, %lo(D_8012A735)($t8) +/* 0C32F8 800C26F8 3C0B8013 */ lui $t3, %hi(D_8012A736) # $t3, 0x8013 +/* 0C32FC 800C26FC 0018CC00 */ sll $t9, $t8, 0x10 +/* 0C3300 800C2700 916BA736 */ lbu $t3, %lo(D_8012A736)($t3) +/* 0C3304 800C2704 24180001 */ li $t8, 1 +/* 0C3308 800C2708 000B6400 */ sll $t4, $t3, 0x10 +/* 0C330C 800C270C 00007812 */ mflo $t7 +/* 0C3310 800C2710 AC2FA744 */ sw $t7, %lo(D_8012A744)($at) +/* 0C3314 800C2714 8C880000 */ lw $t0, ($a0) +/* 0C3318 800C2718 00000000 */ nop +/* 0C331C 800C271C 03284823 */ subu $t1, $t9, $t0 +/* 0C3320 800C2720 0122001A */ div $zero, $t1, $v0 +/* 0C3324 800C2724 14400002 */ bnez $v0, .L800C2730 +/* 0C3328 800C2728 00000000 */ nop +/* 0C332C 800C272C 0007000D */ break 7 +.L800C2730: +/* 0C3330 800C2730 2401FFFF */ li $at, -1 +/* 0C3334 800C2734 14410004 */ bne $v0, $at, .L800C2748 +/* 0C3338 800C2738 3C018000 */ lui $at, 0x8000 +/* 0C333C 800C273C 15210002 */ bne $t1, $at, .L800C2748 +/* 0C3340 800C2740 00000000 */ nop +/* 0C3344 800C2744 0006000D */ break 6 +.L800C2748: +/* 0C3348 800C2748 3C018013 */ lui $at, %hi(D_8012A748) # $at, 0x8013 +/* 0C334C 800C274C 00005012 */ mflo $t2 +/* 0C3350 800C2750 AC2AA748 */ sw $t2, %lo(D_8012A748)($at) +/* 0C3354 800C2754 8CAD0000 */ lw $t5, ($a1) +/* 0C3358 800C2758 00000000 */ nop +/* 0C335C 800C275C 018D7023 */ subu $t6, $t4, $t5 +/* 0C3360 800C2760 01C2001A */ div $zero, $t6, $v0 +/* 0C3364 800C2764 14400002 */ bnez $v0, .L800C2770 +/* 0C3368 800C2768 00000000 */ nop +/* 0C336C 800C276C 0007000D */ break 7 +.L800C2770: +/* 0C3370 800C2770 2401FFFF */ li $at, -1 +/* 0C3374 800C2774 14410004 */ bne $v0, $at, .L800C2788 +/* 0C3378 800C2778 3C018000 */ lui $at, 0x8000 +/* 0C337C 800C277C 15C10002 */ bne $t6, $at, .L800C2788 +/* 0C3380 800C2780 00000000 */ nop +/* 0C3384 800C2784 0006000D */ break 6 +.L800C2788: +/* 0C3388 800C2788 3C018013 */ lui $at, %hi(D_8012A74C) # $at, 0x8013 +/* 0C338C 800C278C 00007812 */ mflo $t7 +/* 0C3390 800C2790 AC2FA74C */ sw $t7, %lo(D_8012A74C)($at) +/* 0C3394 800C2794 3C01800E */ lui $at, 0x800e +/* 0C3398 800C2798 03E00008 */ jr $ra +/* 0C339C 800C279C AC3831AC */ sw $t8, 0x31ac($at) + diff --git a/asm/non_matchings/unknown_0B8920/func_800C27A0.s b/asm/non_matchings/unknown_0B8920/func_800C27A0.s new file mode 100644 index 00000000..56b40ec3 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C27A0.s @@ -0,0 +1,88 @@ +glabel func_800C27A0 +/* 0C33A0 800C27A0 27BDFFF0 */ addiu $sp, $sp, -0x10 +/* 0C33A4 800C27A4 AFB2000C */ sw $s2, 0xc($sp) +/* 0C33A8 800C27A8 AFB00004 */ sw $s0, 4($sp) +/* 0C33AC 800C27AC AFB10008 */ sw $s1, 8($sp) +/* 0C33B0 800C27B0 3C108013 */ lui $s0, %hi(D_8012A736) # $s0, 0x8013 +/* 0C33B4 800C27B4 3C12800E */ lui $s2, %hi(D_800E31B4) # $s2, 0x800e +/* 0C33B8 800C27B8 3C0D8013 */ lui $t5, %hi(D_8012A735) # $t5, 0x8013 +/* 0C33BC 800C27BC 3C0C8013 */ lui $t4, %hi(D_8012A734) # $t4, 0x8013 +/* 0C33C0 800C27C0 3C0B8013 */ lui $t3, %hi(D_8012A74C) # $t3, 0x8013 +/* 0C33C4 800C27C4 3C0A8013 */ lui $t2, %hi(D_8012A740) # $t2, 0x8013 +/* 0C33C8 800C27C8 3C098013 */ lui $t1, %hi(D_8012A748) # $t1, 0x8013 +/* 0C33CC 800C27CC 3C088013 */ lui $t0, %hi(D_8012A73C) # $t0, 0x8013 +/* 0C33D0 800C27D0 3C078013 */ lui $a3, %hi(D_8012A744) # $a3, 0x8013 +/* 0C33D4 800C27D4 3C068013 */ lui $a2, %hi(D_8012A738) # $a2, 0x8013 +/* 0C33D8 800C27D8 3C05800E */ lui $a1, %hi(D_800E31B0) # $a1, 0x800e +/* 0C33DC 800C27DC 24A531B0 */ addiu $a1, %lo(D_800E31B0) # addiu $a1, $a1, 0x31b0 +/* 0C33E0 800C27E0 24C6A738 */ addiu $a2, %lo(D_8012A738) # addiu $a2, $a2, -0x58c8 +/* 0C33E4 800C27E4 24E7A744 */ addiu $a3, %lo(D_8012A744) # addiu $a3, $a3, -0x58bc +/* 0C33E8 800C27E8 2508A73C */ addiu $t0, %lo(D_8012A73C) # addiu $t0, $t0, -0x58c4 +/* 0C33EC 800C27EC 2529A748 */ addiu $t1, %lo(D_8012A748) # addiu $t1, $t1, -0x58b8 +/* 0C33F0 800C27F0 254AA740 */ addiu $t2, %lo(D_8012A740) # addiu $t2, $t2, -0x58c0 +/* 0C33F4 800C27F4 256BA74C */ addiu $t3, %lo(D_8012A74C) # addiu $t3, $t3, -0x58b4 +/* 0C33F8 800C27F8 258CA734 */ addiu $t4, %lo(D_8012A734) # addiu $t4, $t4, -0x58cc +/* 0C33FC 800C27FC 25ADA735 */ addiu $t5, %lo(D_8012A735) # addiu $t5, $t5, -0x58cb +/* 0C3400 800C2800 265231B4 */ addiu $s2, %lo(D_800E31B4) # addiu $s2, $s2, 0x31b4 +/* 0C3404 800C2804 2610A736 */ addiu $s0, %lo(D_8012A736) # addiu $s0, $s0, -0x58ca +/* 0C3408 800C2808 3411FFFF */ li $s1, 65535 +/* 0C340C 800C280C 24020001 */ li $v0, 1 +.L800C2810: +/* 0C3410 800C2810 94A30000 */ lhu $v1, ($a1) +/* 0C3414 800C2814 00000000 */ nop +/* 0C3418 800C2818 18600024 */ blez $v1, .L800C28AC +/* 0C341C 800C281C 00000000 */ nop +/* 0C3420 800C2820 8CEF0000 */ lw $t7, ($a3) +/* 0C3424 800C2824 8CCE0000 */ lw $t6, ($a2) +/* 0C3428 800C2828 01E40019 */ multu $t7, $a0 +/* 0C342C 800C282C 8D0F0000 */ lw $t7, ($t0) +/* 0C3430 800C2830 0083082A */ slt $at, $a0, $v1 +/* 0C3434 800C2834 0000C012 */ mflo $t8 +/* 0C3438 800C2838 01D8C821 */ addu $t9, $t6, $t8 +/* 0C343C 800C283C 8D2E0000 */ lw $t6, ($t1) +/* 0C3440 800C2840 ACD90000 */ sw $t9, ($a2) +/* 0C3444 800C2844 01C40019 */ multu $t6, $a0 +/* 0C3448 800C2848 8D4E0000 */ lw $t6, ($t2) +/* 0C344C 800C284C 0000C012 */ mflo $t8 +/* 0C3450 800C2850 01F8C821 */ addu $t9, $t7, $t8 +/* 0C3454 800C2854 8D6F0000 */ lw $t7, ($t3) +/* 0C3458 800C2858 AD190000 */ sw $t9, ($t0) +/* 0C345C 800C285C 01E40019 */ multu $t7, $a0 +/* 0C3460 800C2860 0000C012 */ mflo $t8 +/* 0C3464 800C2864 01D8C821 */ addu $t9, $t6, $t8 +/* 0C3468 800C2868 1420000D */ bnez $at, .L800C28A0 +/* 0C346C 800C286C AD590000 */ sw $t9, ($t2) +/* 0C3470 800C2870 918F0000 */ lbu $t7, ($t4) +/* 0C3474 800C2874 91B80000 */ lbu $t8, ($t5) +/* 0C3478 800C2878 000F7400 */ sll $t6, $t7, 0x10 +/* 0C347C 800C287C 920F0000 */ lbu $t7, ($s0) +/* 0C3480 800C2880 ACCE0000 */ sw $t6, ($a2) +/* 0C3484 800C2884 0018CC00 */ sll $t9, $t8, 0x10 +/* 0C3488 800C2888 000F7400 */ sll $t6, $t7, 0x10 +/* 0C348C 800C288C AD190000 */ sw $t9, ($t0) +/* 0C3490 800C2890 AD4E0000 */ sw $t6, ($t2) +/* 0C3494 800C2894 00832023 */ subu $a0, $a0, $v1 +/* 0C3498 800C2898 1000000C */ b .L800C28CC +/* 0C349C 800C289C A4A00000 */ sh $zero, ($a1) +.L800C28A0: +/* 0C34A0 800C28A0 0064C023 */ subu $t8, $v1, $a0 +/* 0C34A4 800C28A4 10000009 */ b .L800C28CC +/* 0C34A8 800C28A8 A4B80000 */ sh $t8, ($a1) +.L800C28AC: +/* 0C34AC 800C28AC 96430000 */ lhu $v1, ($s2) +/* 0C34B0 800C28B0 00000000 */ nop +/* 0C34B4 800C28B4 12230005 */ beq $s1, $v1, .L800C28CC +/* 0C34B8 800C28B8 0064C823 */ subu $t9, $v1, $a0 +/* 0C34BC 800C28BC 332FFFFF */ andi $t7, $t9, 0xffff +/* 0C34C0 800C28C0 1DE00002 */ bgtz $t7, .L800C28CC +/* 0C34C4 800C28C4 A6590000 */ sh $t9, ($s2) +/* 0C34C8 800C28C8 A6400000 */ sh $zero, ($s2) +.L800C28CC: +/* 0C34CC 800C28CC 1040FFD0 */ beqz $v0, .L800C2810 +/* 0C34D0 800C28D0 00000000 */ nop +/* 0C34D4 800C28D4 8FB00004 */ lw $s0, 4($sp) +/* 0C34D8 800C28D8 8FB10008 */ lw $s1, 8($sp) +/* 0C34DC 800C28DC 8FB2000C */ lw $s2, 0xc($sp) +/* 0C34E0 800C28E0 03E00008 */ jr $ra +/* 0C34E4 800C28E4 27BD0010 */ addiu $sp, $sp, 0x10 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C28E8.s b/asm/non_matchings/unknown_0B8920/func_800C28E8.s new file mode 100644 index 00000000..803a9bf5 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C28E8.s @@ -0,0 +1,68 @@ +glabel func_800C28E8 +/* 0C34E8 800C28E8 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C34EC 800C28EC AFBF0014 */ sw $ra, 0x14($sp) +/* 0C34F0 800C28F0 AFA5001C */ sw $a1, 0x1c($sp) +/* 0C34F4 800C28F4 AFA60020 */ sw $a2, 0x20($sp) +/* 0C34F8 800C28F8 0C01E948 */ jal func_8007A520 +/* 0C34FC 800C28FC AFA40018 */ sw $a0, 0x18($sp) +/* 0C3500 800C2900 8FA40018 */ lw $a0, 0x18($sp) +/* 0C3504 800C2904 3C18800E */ lui $t8, %hi(D_800E31D8) # $t8, 0x800e +/* 0C3508 800C2908 8C830000 */ lw $v1, ($a0) +/* 0C350C 800C290C 271831D8 */ addiu $t8, %lo(D_800E31D8) # addiu $t8, $t8, 0x31d8 +/* 0C3510 800C2910 246E0008 */ addiu $t6, $v1, 8 +/* 0C3514 800C2914 AC8E0000 */ sw $t6, ($a0) +/* 0C3518 800C2918 3C0F0600 */ lui $t7, 0x600 +/* 0C351C 800C291C AC6F0000 */ sw $t7, ($v1) +/* 0C3520 800C2920 AC780004 */ sw $t8, 4($v1) +/* 0C3524 800C2924 8C830000 */ lw $v1, ($a0) +/* 0C3528 800C2928 3C09FA00 */ lui $t1, 0xfa00 +/* 0C352C 800C292C 24790008 */ addiu $t9, $v1, 8 +/* 0C3530 800C2930 AC990000 */ sw $t9, ($a0) +/* 0C3534 800C2934 3C0A8013 */ lui $t2, %hi(D_8012A738) # $t2, 0x8013 +/* 0C3538 800C2938 AC690000 */ sw $t1, ($v1) +/* 0C353C 800C293C 8D4AA738 */ lw $t2, %lo(D_8012A738)($t2) +/* 0C3540 800C2940 3C0E8013 */ lui $t6, %hi(D_8012A73C) # $t6, 0x8013 +/* 0C3544 800C2944 000A6403 */ sra $t4, $t2, 0x10 +/* 0C3548 800C2948 8DCEA73C */ lw $t6, %lo(D_8012A73C)($t6) +/* 0C354C 800C294C 3C0A8013 */ lui $t2, %hi(D_8012A740) # $t2, 0x8013 +/* 0C3550 800C2950 8D4AA740 */ lw $t2, %lo(D_8012A740)($t2) +/* 0C3554 800C2954 000E7C03 */ sra $t7, $t6, 0x10 +/* 0C3558 800C2958 31F800FF */ andi $t8, $t7, 0xff +/* 0C355C 800C295C 000C6E00 */ sll $t5, $t4, 0x18 +/* 0C3560 800C2960 000A5C03 */ sra $t3, $t2, 0x10 +/* 0C3564 800C2964 316C00FF */ andi $t4, $t3, 0xff +/* 0C3568 800C2968 0018CC00 */ sll $t9, $t8, 0x10 +/* 0C356C 800C296C 01B94825 */ or $t1, $t5, $t9 +/* 0C3570 800C2970 000C7200 */ sll $t6, $t4, 8 +/* 0C3574 800C2974 012E7825 */ or $t7, $t1, $t6 +/* 0C3578 800C2978 35F800FF */ ori $t8, $t7, 0xff +/* 0C357C 800C297C AC780004 */ sw $t8, 4($v1) +/* 0C3580 800C2980 8C830000 */ lw $v1, ($a0) +/* 0C3584 800C2984 3C19FCFF */ lui $t9, (0xFCFFFFFF >> 16) # lui $t9, 0xfcff +/* 0C3588 800C2988 246D0008 */ addiu $t5, $v1, 8 +/* 0C358C 800C298C 3C0AFFFD */ lui $t2, (0xFFFDF6FB >> 16) # lui $t2, 0xfffd +/* 0C3590 800C2990 AC8D0000 */ sw $t5, ($a0) +/* 0C3594 800C2994 354AF6FB */ ori $t2, (0xFFFDF6FB & 0xFFFF) # ori $t2, $t2, 0xf6fb +/* 0C3598 800C2998 3739FFFF */ ori $t9, (0xFCFFFFFF & 0xFFFF) # ori $t9, $t9, 0xffff +/* 0C359C 800C299C AC790000 */ sw $t9, ($v1) +/* 0C35A0 800C29A0 AC6A0004 */ sw $t2, 4($v1) +/* 0C35A4 800C29A4 8C830000 */ lw $v1, ($a0) +/* 0C35A8 800C29A8 00026C03 */ sra $t5, $v0, 0x10 +/* 0C35AC 800C29AC 304903FF */ andi $t1, $v0, 0x3ff +/* 0C35B0 800C29B0 00097380 */ sll $t6, $t1, 0xe +/* 0C35B4 800C29B4 31B903FF */ andi $t9, $t5, 0x3ff +/* 0C35B8 800C29B8 3C01F600 */ lui $at, 0xf600 +/* 0C35BC 800C29BC 246B0008 */ addiu $t3, $v1, 8 +/* 0C35C0 800C29C0 01C17825 */ or $t7, $t6, $at +/* 0C35C4 800C29C4 00195080 */ sll $t2, $t9, 2 +/* 0C35C8 800C29C8 AC8B0000 */ sw $t3, ($a0) +/* 0C35CC 800C29CC 01EA5825 */ or $t3, $t7, $t2 +/* 0C35D0 800C29D0 AC6B0000 */ sw $t3, ($v1) +/* 0C35D4 800C29D4 0C01ECF4 */ jal func_8007B3D0 +/* 0C35D8 800C29D8 AC600004 */ sw $zero, 4($v1) +/* 0C35DC 800C29DC 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C35E0 800C29E0 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0C35E4 800C29E4 03E00008 */ jr $ra +/* 0C35E8 800C29E8 00000000 */ nop + +/* 0C35EC 800C29EC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0B8920/func_800C29F0.s b/asm/non_matchings/unknown_0B8920/func_800C29F0.s new file mode 100644 index 00000000..3ec7d2c8 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C29F0.s @@ -0,0 +1,53 @@ +glabel func_800C29F0 +/* 0C35F0 800C29F0 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C35F4 800C29F4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0C35F8 800C29F8 3C0500FF */ lui $a1, (0x00FF00FF >> 16) # lui $a1, 0xff +/* 0C35FC 800C29FC 34A500FF */ ori $a1, (0x00FF00FF & 0xFFFF) # ori $a1, $a1, 0xff +/* 0C3600 800C2A00 0C01C327 */ jal func_80070C9C +/* 0C3604 800C2A04 24040780 */ li $a0, 1920 +/* 0C3608 800C2A08 3C038013 */ lui $v1, %hi(D_8012A7C8) # $v1, 0x8013 +/* 0C360C 800C2A0C 2463A7C8 */ addiu $v1, %lo(D_8012A7C8) # addiu $v1, $v1, -0x5838 +/* 0C3610 800C2A10 244F03C0 */ addiu $t7, $v0, 0x3c0 +/* 0C3614 800C2A14 AC620000 */ sw $v0, ($v1) +/* 0C3618 800C2A18 AC6F0004 */ sw $t7, 4($v1) +/* 0C361C 800C2A1C 3C018013 */ lui $at, %hi(D_8012A7D4) # $at, 0x8013 +/* 0C3620 800C2A20 AC20A7D4 */ sw $zero, %lo(D_8012A7D4)($at) +/* 0C3624 800C2A24 3C018013 */ lui $at, %hi(D_8012A7B6) # $at, 0x8013 +/* 0C3628 800C2A28 A420A7B6 */ sh $zero, %lo(D_8012A7B6)($at) +/* 0C362C 800C2A2C 3C018013 */ lui $at, %hi(D_8012A7A8) # $at, 0x8013 +/* 0C3630 800C2A30 A420A7A8 */ sh $zero, %lo(D_8012A7A8)($at) +/* 0C3634 800C2A34 24040020 */ li $a0, 32 +/* 0C3638 800C2A38 3C018013 */ lui $at, %hi(D_8012A7AA) # $at, 0x8013 +/* 0C363C 800C2A3C A424A7AA */ sh $a0, %lo(D_8012A7AA)($at) +/* 0C3640 800C2A40 3C018013 */ lui $at, %hi(D_8012A7BA) # $at, 0x8013 +/* 0C3644 800C2A44 A420A7BA */ sh $zero, %lo(D_8012A7BA)($at) +/* 0C3648 800C2A48 3C018013 */ lui $at, %hi(D_8012A7AE) # $at, 0x8013 +/* 0C364C 800C2A4C 3C198000 */ lui $t9, %hi(D_80000300) # $t9, 0x8000 +/* 0C3650 800C2A50 8F390300 */ lw $t9, %lo(D_80000300)($t9) +/* 0C3654 800C2A54 A424A7AE */ sh $a0, %lo(D_8012A7AE)($at) +/* 0C3658 800C2A58 3C018013 */ lui $at, %hi(D_8012A7B2) # $at, 0x8013 +/* 0C365C 800C2A5C 24180120 */ li $t8, 288 +/* 0C3660 800C2A60 17200008 */ bnez $t9, .L800C2A84 +/* 0C3664 800C2A64 A438A7B2 */ sh $t8, %lo(D_8012A7B2)($at) +/* 0C3668 800C2A68 240800E0 */ li $t0, 224 +/* 0C366C 800C2A6C 3C018013 */ lui $at, %hi(D_8012A7B0) # $at, 0x8013 +/* 0C3670 800C2A70 A428A7B0 */ sh $t0, %lo(D_8012A7B0)($at) +/* 0C3674 800C2A74 3C018013 */ lui $at, %hi(D_8012A7B4) # $at, 0x8013 +/* 0C3678 800C2A78 240900F8 */ li $t1, 248 +/* 0C367C 800C2A7C 10000007 */ b .L800C2A9C +/* 0C3680 800C2A80 A429A7B4 */ sh $t1, %lo(D_8012A7B4)($at) +.L800C2A84: +/* 0C3684 800C2A84 240A00CA */ li $t2, 202 +/* 0C3688 800C2A88 3C018013 */ lui $at, %hi(D_8012A7B0) # $at, 0x8013 +/* 0C368C 800C2A8C A42AA7B0 */ sh $t2, %lo(D_8012A7B0)($at) +/* 0C3690 800C2A90 3C018013 */ lui $at, %hi(D_8012A7B4) # $at, 0x8013 +/* 0C3694 800C2A94 240B00DE */ li $t3, 222 +/* 0C3698 800C2A98 A42BA7B4 */ sh $t3, %lo(D_8012A7B4)($at) +.L800C2A9C: +/* 0C369C 800C2A9C 0C0315B4 */ jal func_800C56D0 +/* 0C36A0 800C2AA0 24040006 */ li $a0, 6 +/* 0C36A4 800C2AA4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C36A8 800C2AA8 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0C36AC 800C2AAC 03E00008 */ jr $ra +/* 0C36B0 800C2AB0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C2AB4.s b/asm/non_matchings/unknown_0B8920/func_800C2AB4.s new file mode 100644 index 00000000..df659d17 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C2AB4.s @@ -0,0 +1,18 @@ +glabel func_800C2AB4 +/* 0C36B4 800C2AB4 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C36B8 800C2AB8 3C048013 */ lui $a0, %hi(D_8012A7C8) # $a0, 0x8013 +/* 0C36BC 800C2ABC AFBF0014 */ sw $ra, 0x14($sp) +/* 0C36C0 800C2AC0 8C84A7C8 */ lw $a0, %lo(D_8012A7C8)($a0) +/* 0C36C4 800C2AC4 0C01C450 */ jal func_80071140 +/* 0C36C8 800C2AC8 00000000 */ nop +/* 0C36CC 800C2ACC 3C018013 */ lui $at, %hi(D_8012A7B6) # $at, 0x8013 +/* 0C36D0 800C2AD0 A420A7B6 */ sh $zero, %lo(D_8012A7B6)($at) +/* 0C36D4 800C2AD4 0C031588 */ jal func_800C5620 +/* 0C36D8 800C2AD8 24040006 */ li $a0, 6 +/* 0C36DC 800C2ADC 0C031525 */ jal func_800C5494 +/* 0C36E0 800C2AE0 24040006 */ li $a0, 6 +/* 0C36E4 800C2AE4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C36E8 800C2AE8 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0C36EC 800C2AEC 03E00008 */ jr $ra +/* 0C36F0 800C2AF0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C2AF4.s b/asm/non_matchings/unknown_0B8920/func_800C2AF4.s new file mode 100644 index 00000000..fd6ed2c1 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C2AF4.s @@ -0,0 +1,5 @@ +glabel func_800C2AF4 +/* 0C36F4 800C2AF4 3C01800E */ lui $at, 0x800e +/* 0C36F8 800C2AF8 03E00008 */ jr $ra +/* 0C36FC 800C2AFC AC243680 */ sw $a0, 0x3680($at) + diff --git a/asm/non_matchings/unknown_0B8920/func_800C2B00.s b/asm/non_matchings/unknown_0B8920/func_800C2B00.s new file mode 100644 index 00000000..18949b5f --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C2B00.s @@ -0,0 +1,161 @@ +glabel func_800C2B00 +/* 0C3700 800C2B00 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 0C3704 800C2B04 AFBF0044 */ sw $ra, 0x44($sp) +/* 0C3708 800C2B08 AFBE0040 */ sw $fp, 0x40($sp) +/* 0C370C 800C2B0C AFB7003C */ sw $s7, 0x3c($sp) +/* 0C3710 800C2B10 AFB60038 */ sw $s6, 0x38($sp) +/* 0C3714 800C2B14 AFB50034 */ sw $s5, 0x34($sp) +/* 0C3718 800C2B18 AFB40030 */ sw $s4, 0x30($sp) +/* 0C371C 800C2B1C AFB3002C */ sw $s3, 0x2c($sp) +/* 0C3720 800C2B20 AFB20028 */ sw $s2, 0x28($sp) +/* 0C3724 800C2B24 AFB10024 */ sw $s1, 0x24($sp) +/* 0C3728 800C2B28 AFB00020 */ sw $s0, 0x20($sp) +/* 0C372C 800C2B2C 0C031525 */ jal func_800C5494 +/* 0C3730 800C2B30 24040006 */ li $a0, 6 +/* 0C3734 800C2B34 3C118013 */ lui $s1, %hi(D_8012A7B4) # $s1, 0x8013 +/* 0C3738 800C2B38 2631A7B4 */ addiu $s1, %lo(D_8012A7B4) # addiu $s1, $s1, -0x584c +/* 0C373C 800C2B3C 3C108013 */ lui $s0, %hi(D_8012A7B0) # $s0, 0x8013 +/* 0C3740 800C2B40 3C158013 */ lui $s5, %hi(D_8012A7AE) # $s5, 0x8013 +/* 0C3744 800C2B44 3C168013 */ lui $s6, %hi(D_8012A7B2) # $s6, 0x8013 +/* 0C3748 800C2B48 862E0000 */ lh $t6, ($s1) +/* 0C374C 800C2B4C 26D6A7B2 */ addiu $s6, %lo(D_8012A7B2) # addiu $s6, $s6, -0x584e +/* 0C3750 800C2B50 26B5A7AE */ addiu $s5, %lo(D_8012A7AE) # addiu $s5, $s5, -0x5852 +/* 0C3754 800C2B54 2610A7B0 */ addiu $s0, %lo(D_8012A7B0) # addiu $s0, $s0, -0x5850 +/* 0C3758 800C2B58 86060000 */ lh $a2, ($s0) +/* 0C375C 800C2B5C 86A50000 */ lh $a1, ($s5) +/* 0C3760 800C2B60 86C70000 */ lh $a3, ($s6) +/* 0C3764 800C2B64 24040006 */ li $a0, 6 +/* 0C3768 800C2B68 0C0313B7 */ jal func_800C4EDC +/* 0C376C 800C2B6C AFAE0010 */ sw $t6, 0x10($sp) +/* 0C3770 800C2B70 3C178013 */ lui $s7, %hi(D_8012A7A8) # $s7, 0x8013 +/* 0C3774 800C2B74 26F7A7A8 */ addiu $s7, %lo(D_8012A7A8) # addiu $s7, $s7, -0x5858 +/* 0C3778 800C2B78 86EF0000 */ lh $t7, ($s7) +/* 0C377C 800C2B7C 24040006 */ li $a0, 6 +/* 0C3780 800C2B80 000FC080 */ sll $t8, $t7, 2 +/* 0C3784 800C2B84 030FC021 */ addu $t8, $t8, $t7 +/* 0C3788 800C2B88 0018C140 */ sll $t8, $t8, 5 +/* 0C378C 800C2B8C 0018CA03 */ sra $t9, $t8, 8 +/* 0C3790 800C2B90 AFB90010 */ sw $t9, 0x10($sp) +/* 0C3794 800C2B94 24050040 */ li $a1, 64 +/* 0C3798 800C2B98 24060060 */ li $a2, 96 +/* 0C379C 800C2B9C 0C0313EF */ jal func_800C4FBC +/* 0C37A0 800C2BA0 24070060 */ li $a3, 96 +/* 0C37A4 800C2BA4 24040006 */ li $a0, 6 +/* 0C37A8 800C2BA8 00002825 */ move $a1, $zero +/* 0C37AC 800C2BAC 00003025 */ move $a2, $zero +/* 0C37B0 800C2BB0 00003825 */ move $a3, $zero +/* 0C37B4 800C2BB4 0C031414 */ jal func_800C5050 +/* 0C37B8 800C2BB8 AFA00010 */ sw $zero, 0x10($sp) +/* 0C37BC 800C2BBC 3C1E8013 */ lui $fp, %hi(D_8012A7B8) # $fp, 0x8013 +/* 0C37C0 800C2BC0 27DEA7B8 */ addiu $fp, %lo(D_8012A7B8) # addiu $fp, $fp, -0x5848 +/* 0C37C4 800C2BC4 87C20000 */ lh $v0, ($fp) +/* 0C37C8 800C2BC8 86280000 */ lh $t0, ($s1) +/* 0C37CC 800C2BCC 86090000 */ lh $t1, ($s0) +/* 0C37D0 800C2BD0 00025880 */ sll $t3, $v0, 2 +/* 0C37D4 800C2BD4 01625823 */ subu $t3, $t3, $v0 +/* 0C37D8 800C2BD8 000B5880 */ sll $t3, $t3, 2 +/* 0C37DC 800C2BDC 01095023 */ subu $t2, $t0, $t1 +/* 0C37E0 800C2BE0 014B6023 */ subu $t4, $t2, $t3 +/* 0C37E4 800C2BE4 00026840 */ sll $t5, $v0, 1 +/* 0C37E8 800C2BE8 018D9823 */ subu $s3, $t4, $t5 +/* 0C37EC 800C2BEC 26730002 */ addiu $s3, $s3, 2 +/* 0C37F0 800C2BF0 00137043 */ sra $t6, $s3, 1 +/* 0C37F4 800C2BF4 01C09825 */ move $s3, $t6 +/* 0C37F8 800C2BF8 1840004E */ blez $v0, .L800C2D34 +/* 0C37FC 800C2BFC 0000A025 */ move $s4, $zero +/* 0C3800 800C2C00 3C128013 */ lui $s2, %hi(D_8012A7C0) # $s2, 0x8013 +/* 0C3804 800C2C04 2652A7C0 */ addiu $s2, %lo(D_8012A7C0) # addiu $s2, $s2, -0x5840 +.L800C2C08: +/* 0C3808 800C2C08 8E4F0000 */ lw $t7, ($s2) +/* 0C380C 800C2C0C 24040006 */ li $a0, 6 +/* 0C3810 800C2C10 91E50005 */ lbu $a1, 5($t7) +/* 0C3814 800C2C14 0C0313DF */ jal func_800C4F7C +/* 0C3818 800C2C18 00000000 */ nop +/* 0C381C 800C2C1C 8E420000 */ lw $v0, ($s2) +/* 0C3820 800C2C20 24010004 */ li $at, 4 +/* 0C3824 800C2C24 90500006 */ lbu $s0, 6($v0) +/* 0C3828 800C2C28 240B00FF */ li $t3, 255 +/* 0C382C 800C2C2C 16010009 */ bne $s0, $at, .L800C2C54 +/* 0C3830 800C2C30 24010001 */ li $at, 1 +/* 0C3834 800C2C34 86D80000 */ lh $t8, ($s6) +/* 0C3838 800C2C38 86B90000 */ lh $t9, ($s5) +/* 0C383C 800C2C3C 00000000 */ nop +/* 0C3840 800C2C40 03198823 */ subu $s1, $t8, $t9 +/* 0C3844 800C2C44 00114043 */ sra $t0, $s1, 1 +/* 0C3848 800C2C48 1000000A */ b .L800C2C74 +/* 0C384C 800C2C4C 01008825 */ move $s1, $t0 +/* 0C3850 800C2C50 24010001 */ li $at, 1 +.L800C2C54: +/* 0C3854 800C2C54 16010007 */ bne $s0, $at, .L800C2C74 +/* 0C3858 800C2C58 24110008 */ li $s1, 8 +/* 0C385C 800C2C5C 86C90000 */ lh $t1, ($s6) +/* 0C3860 800C2C60 86AA0000 */ lh $t2, ($s5) +/* 0C3864 800C2C64 00000000 */ nop +/* 0C3868 800C2C68 012A8823 */ subu $s1, $t1, $t2 +/* 0C386C 800C2C6C 10000001 */ b .L800C2C74 +/* 0C3870 800C2C70 2631FFF8 */ addiu $s1, $s1, -8 +.L800C2C74: +/* 0C3874 800C2C74 90450001 */ lbu $a1, 1($v0) +/* 0C3878 800C2C78 90460002 */ lbu $a2, 2($v0) +/* 0C387C 800C2C7C 90470003 */ lbu $a3, 3($v0) +/* 0C3880 800C2C80 AFAB0010 */ sw $t3, 0x10($sp) +/* 0C3884 800C2C84 904C0004 */ lbu $t4, 4($v0) +/* 0C3888 800C2C88 86ED0000 */ lh $t5, ($s7) +/* 0C388C 800C2C8C 24040006 */ li $a0, 6 +/* 0C3890 800C2C90 018D0019 */ multu $t4, $t5 +/* 0C3894 800C2C94 00007012 */ mflo $t6 +/* 0C3898 800C2C98 000E7A03 */ sra $t7, $t6, 8 +/* 0C389C 800C2C9C 0C031400 */ jal func_800C5000 +/* 0C38A0 800C2CA0 AFAF0014 */ sw $t7, 0x14($sp) +/* 0C38A4 800C2CA4 8E470000 */ lw $a3, ($s2) +/* 0C38A8 800C2CA8 24180001 */ li $t8, 1 +/* 0C38AC 800C2CAC AFB80010 */ sw $t8, 0x10($sp) +/* 0C38B0 800C2CB0 24040006 */ li $a0, 6 +/* 0C38B4 800C2CB4 02202825 */ move $a1, $s1 +/* 0C38B8 800C2CB8 02603025 */ move $a2, $s3 +/* 0C38BC 800C2CBC AFB00014 */ sw $s0, 0x14($sp) +/* 0C38C0 800C2CC0 0C03145A */ jal func_800C5168 +/* 0C38C4 800C2CC4 24E70008 */ addiu $a3, $a3, 8 +/* 0C38C8 800C2CC8 86E80000 */ lh $t0, ($s7) +/* 0C38CC 800C2CCC 241900FF */ li $t9, 255 +/* 0C38D0 800C2CD0 00084A00 */ sll $t1, $t0, 8 +/* 0C38D4 800C2CD4 01284823 */ subu $t1, $t1, $t0 +/* 0C38D8 800C2CD8 00095203 */ sra $t2, $t1, 8 +/* 0C38DC 800C2CDC AFAA0014 */ sw $t2, 0x14($sp) +/* 0C38E0 800C2CE0 AFB90010 */ sw $t9, 0x10($sp) +/* 0C38E4 800C2CE4 24040006 */ li $a0, 6 +/* 0C38E8 800C2CE8 00002825 */ move $a1, $zero +/* 0C38EC 800C2CEC 00003025 */ move $a2, $zero +/* 0C38F0 800C2CF0 0C031400 */ jal func_800C5000 +/* 0C38F4 800C2CF4 00003825 */ move $a3, $zero +/* 0C38F8 800C2CF8 8E470000 */ lw $a3, ($s2) +/* 0C38FC 800C2CFC 240B0001 */ li $t3, 1 +/* 0C3900 800C2D00 AFAB0010 */ sw $t3, 0x10($sp) +/* 0C3904 800C2D04 24040006 */ li $a0, 6 +/* 0C3908 800C2D08 26250001 */ addiu $a1, $s1, 1 +/* 0C390C 800C2D0C 26660001 */ addiu $a2, $s3, 1 +/* 0C3910 800C2D10 AFB00014 */ sw $s0, 0x14($sp) +/* 0C3914 800C2D14 0C03145A */ jal func_800C5168 +/* 0C3918 800C2D18 24E70008 */ addiu $a3, $a3, 8 +/* 0C391C 800C2D1C 87CC0000 */ lh $t4, ($fp) +/* 0C3920 800C2D20 26940001 */ addiu $s4, $s4, 1 +/* 0C3924 800C2D24 028C082A */ slt $at, $s4, $t4 +/* 0C3928 800C2D28 26520004 */ addiu $s2, $s2, 4 +/* 0C392C 800C2D2C 1420FFB6 */ bnez $at, .L800C2C08 +/* 0C3930 800C2D30 2673000E */ addiu $s3, $s3, 0xe +.L800C2D34: +/* 0C3934 800C2D34 0C03157D */ jal func_800C55F4 +/* 0C3938 800C2D38 24040006 */ li $a0, 6 +/* 0C393C 800C2D3C 8FBF0044 */ lw $ra, 0x44($sp) +/* 0C3940 800C2D40 8FB00020 */ lw $s0, 0x20($sp) +/* 0C3944 800C2D44 8FB10024 */ lw $s1, 0x24($sp) +/* 0C3948 800C2D48 8FB20028 */ lw $s2, 0x28($sp) +/* 0C394C 800C2D4C 8FB3002C */ lw $s3, 0x2c($sp) +/* 0C3950 800C2D50 8FB40030 */ lw $s4, 0x30($sp) +/* 0C3954 800C2D54 8FB50034 */ lw $s5, 0x34($sp) +/* 0C3958 800C2D58 8FB60038 */ lw $s6, 0x38($sp) +/* 0C395C 800C2D5C 8FB7003C */ lw $s7, 0x3c($sp) +/* 0C3960 800C2D60 8FBE0040 */ lw $fp, 0x40($sp) +/* 0C3964 800C2D64 03E00008 */ jr $ra +/* 0C3968 800C2D68 27BD0048 */ addiu $sp, $sp, 0x48 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C2D6C.s b/asm/non_matchings/unknown_0B8920/func_800C2D6C.s new file mode 100644 index 00000000..e0f8e9f6 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C2D6C.s @@ -0,0 +1,119 @@ +glabel func_800C2D6C +/* 0C396C 800C2D6C 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 0C3970 800C2D70 AFB1001C */ sw $s1, 0x1c($sp) +/* 0C3974 800C2D74 3C118013 */ lui $s1, %hi(D_8012A7D0) # $s1, 0x8013 +/* 0C3978 800C2D78 AFB40028 */ sw $s4, 0x28($sp) +/* 0C397C 800C2D7C AFB30024 */ sw $s3, 0x24($sp) +/* 0C3980 800C2D80 3C138013 */ lui $s3, %hi(D_8012A7B8) # $s3, 0x8013 +/* 0C3984 800C2D84 3C148013 */ lui $s4, %hi(D_8012A7AC) # $s4, 0x8013 +/* 0C3988 800C2D88 2631A7D0 */ addiu $s1, %lo(D_8012A7D0) # addiu $s1, $s1, -0x5830 +/* 0C398C 800C2D8C AFB00018 */ sw $s0, 0x18($sp) +/* 0C3990 800C2D90 8E300000 */ lw $s0, ($s1) +/* 0C3994 800C2D94 2694A7AC */ addiu $s4, %lo(D_8012A7AC) # addiu $s4, $s4, -0x5854 +/* 0C3998 800C2D98 2673A7B8 */ addiu $s3, %lo(D_8012A7B8) # addiu $s3, $s3, -0x5848 +/* 0C399C 800C2D9C AFBF003C */ sw $ra, 0x3c($sp) +/* 0C39A0 800C2DA0 AFBE0038 */ sw $fp, 0x38($sp) +/* 0C39A4 800C2DA4 AFB70034 */ sw $s7, 0x34($sp) +/* 0C39A8 800C2DA8 AFB60030 */ sw $s6, 0x30($sp) +/* 0C39AC 800C2DAC AFB5002C */ sw $s5, 0x2c($sp) +/* 0C39B0 800C2DB0 AFB20020 */ sw $s2, 0x20($sp) +/* 0C39B4 800C2DB4 A6600000 */ sh $zero, ($s3) +/* 0C39B8 800C2DB8 A6800000 */ sh $zero, ($s4) +/* 0C39BC 800C2DBC 92020000 */ lbu $v0, ($s0) +/* 0C39C0 800C2DC0 00009025 */ move $s2, $zero +/* 0C39C4 800C2DC4 10400044 */ beqz $v0, .L800C2ED8 +/* 0C39C8 800C2DC8 241E000A */ li $fp, 10 +/* 0C39CC 800C2DCC 3C168013 */ lui $s6, %hi(D_8012A7C0) # $s6, 0x8013 +/* 0C39D0 800C2DD0 3C158013 */ lui $s5, %hi(D_8012A7BA) # $s5, 0x8013 +/* 0C39D4 800C2DD4 86650000 */ lh $a1, ($s3) +/* 0C39D8 800C2DD8 26B5A7BA */ addiu $s5, %lo(D_8012A7BA) # addiu $s5, $s5, -0x5846 +/* 0C39DC 800C2DDC 26D6A7C0 */ addiu $s6, %lo(D_8012A7C0) # addiu $s6, $s6, -0x5840 +/* 0C39E0 800C2DE0 24170006 */ li $s7, 6 +/* 0C39E4 800C2DE4 00057880 */ sll $t7, $a1, 2 +.L800C2DE8: +/* 0C39E8 800C2DE8 244EFFFF */ addiu $t6, $v0, -1 +/* 0C39EC 800C2DEC 02CFC021 */ addu $t8, $s6, $t7 +/* 0C39F0 800C2DF0 A6AE0000 */ sh $t6, ($s5) +/* 0C39F4 800C2DF4 AF100000 */ sw $s0, ($t8) +/* 0C39F8 800C2DF8 92190007 */ lbu $t9, 7($s0) +/* 0C39FC 800C2DFC 00000000 */ nop +/* 0C3A00 800C2E00 03370019 */ multu $t9, $s7 +/* 0C3A04 800C2E04 00002012 */ mflo $a0 +/* 0C3A08 800C2E08 0C00322D */ jal func_8000C8B4 +/* 0C3A0C 800C2E0C 00000000 */ nop +/* 0C3A10 800C2E10 8E280000 */ lw $t0, ($s1) +/* 0C3A14 800C2E14 A6820000 */ sh $v0, ($s4) +/* 0C3A18 800C2E18 25100008 */ addiu $s0, $t0, 8 +/* 0C3A1C 800C2E1C AE300000 */ sw $s0, ($s1) +/* 0C3A20 800C2E20 92030000 */ lbu $v1, ($s0) +/* 0C3A24 800C2E24 00000000 */ nop +/* 0C3A28 800C2E28 306A0080 */ andi $t2, $v1, 0x80 +.L800C2E2C: +/* 0C3A2C 800C2E2C 11400004 */ beqz $t2, .L800C2E40 +/* 0C3A30 800C2E30 260C0001 */ addiu $t4, $s0, 1 +/* 0C3A34 800C2E34 260B0002 */ addiu $t3, $s0, 2 +/* 0C3A38 800C2E38 10000002 */ b .L800C2E44 +/* 0C3A3C 800C2E3C AE2B0000 */ sw $t3, ($s1) +.L800C2E40: +/* 0C3A40 800C2E40 AE2C0000 */ sw $t4, ($s1) +.L800C2E44: +/* 0C3A44 800C2E44 8E300000 */ lw $s0, ($s1) +/* 0C3A48 800C2E48 00000000 */ nop +/* 0C3A4C 800C2E4C 92030000 */ lbu $v1, ($s0) +/* 0C3A50 800C2E50 00000000 */ nop +/* 0C3A54 800C2E54 1460FFF5 */ bnez $v1, .L800C2E2C +/* 0C3A58 800C2E58 306A0080 */ andi $t2, $v1, 0x80 +/* 0C3A5C 800C2E5C 866D0000 */ lh $t5, ($s3) +/* 0C3A60 800C2E60 260F0001 */ addiu $t7, $s0, 1 +/* 0C3A64 800C2E64 25AE0001 */ addiu $t6, $t5, 1 +/* 0C3A68 800C2E68 A66E0000 */ sh $t6, ($s3) +/* 0C3A6C 800C2E6C 86650000 */ lh $a1, ($s3) +/* 0C3A70 800C2E70 00000000 */ nop +/* 0C3A74 800C2E74 28A10002 */ slti $at, $a1, 2 +/* 0C3A78 800C2E78 14200002 */ bnez $at, .L800C2E84 +/* 0C3A7C 800C2E7C 00000000 */ nop +/* 0C3A80 800C2E80 24120001 */ li $s2, 1 +.L800C2E84: +/* 0C3A84 800C2E84 AE2F0000 */ sw $t7, ($s1) +/* 0C3A88 800C2E88 91E20000 */ lbu $v0, ($t7) +/* 0C3A8C 800C2E8C 01E08025 */ move $s0, $t7 +/* 0C3A90 800C2E90 17C20006 */ bne $fp, $v0, .L800C2EAC +/* 0C3A94 800C2E94 00401825 */ move $v1, $v0 +/* 0C3A98 800C2E98 25F00001 */ addiu $s0, $t7, 1 +/* 0C3A9C 800C2E9C AE300000 */ sw $s0, ($s1) +/* 0C3AA0 800C2EA0 92020000 */ lbu $v0, ($s0) +/* 0C3AA4 800C2EA4 10000008 */ b .L800C2EC8 +/* 0C3AA8 800C2EA8 00000000 */ nop +.L800C2EAC: +/* 0C3AAC 800C2EAC 2401000C */ li $at, 12 +/* 0C3AB0 800C2EB0 14610005 */ bne $v1, $at, .L800C2EC8 +/* 0C3AB4 800C2EB4 26190001 */ addiu $t9, $s0, 1 +/* 0C3AB8 800C2EB8 AE390000 */ sw $t9, ($s1) +/* 0C3ABC 800C2EBC 93220000 */ lbu $v0, ($t9) +/* 0C3AC0 800C2EC0 24120001 */ li $s2, 1 +/* 0C3AC4 800C2EC4 03208025 */ move $s0, $t9 +.L800C2EC8: +/* 0C3AC8 800C2EC8 10400003 */ beqz $v0, .L800C2ED8 +/* 0C3ACC 800C2ECC 00000000 */ nop +/* 0C3AD0 800C2ED0 1240FFC5 */ beqz $s2, .L800C2DE8 +/* 0C3AD4 800C2ED4 00057880 */ sll $t7, $a1, 2 +.L800C2ED8: +/* 0C3AD8 800C2ED8 86680000 */ lh $t0, ($s3) +/* 0C3ADC 800C2EDC 24090001 */ li $t1, 1 +/* 0C3AE0 800C2EE0 19000002 */ blez $t0, .L800C2EEC +/* 0C3AE4 800C2EE4 3C018013 */ lui $at, %hi(D_8012A7B6) # $at, 0x8013 +/* 0C3AE8 800C2EE8 A429A7B6 */ sh $t1, %lo(D_8012A7B6)($at) +.L800C2EEC: +/* 0C3AEC 800C2EEC 8FBF003C */ lw $ra, 0x3c($sp) +/* 0C3AF0 800C2EF0 8FB00018 */ lw $s0, 0x18($sp) +/* 0C3AF4 800C2EF4 8FB1001C */ lw $s1, 0x1c($sp) +/* 0C3AF8 800C2EF8 8FB20020 */ lw $s2, 0x20($sp) +/* 0C3AFC 800C2EFC 8FB30024 */ lw $s3, 0x24($sp) +/* 0C3B00 800C2F00 8FB40028 */ lw $s4, 0x28($sp) +/* 0C3B04 800C2F04 8FB5002C */ lw $s5, 0x2c($sp) +/* 0C3B08 800C2F08 8FB60030 */ lw $s6, 0x30($sp) +/* 0C3B0C 800C2F0C 8FB70034 */ lw $s7, 0x34($sp) +/* 0C3B10 800C2F10 8FBE0038 */ lw $fp, 0x38($sp) +/* 0C3B14 800C2F14 03E00008 */ jr $ra +/* 0C3B18 800C2F18 27BD0040 */ addiu $sp, $sp, 0x40 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C2F1C.s b/asm/non_matchings/unknown_0B8920/func_800C2F1C.s new file mode 100644 index 00000000..49c0d5d3 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C2F1C.s @@ -0,0 +1,82 @@ +glabel func_800C2F1C +/* 0C3B1C 800C2F1C 3C0E800E */ lui $t6, %hi(D_800E3680) # $t6, 0x800e +/* 0C3B20 800C2F20 8DCE3680 */ lw $t6, %lo(D_800E3680)($t6) +/* 0C3B24 800C2F24 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C3B28 800C2F28 AFBF0014 */ sw $ra, 0x14($sp) +/* 0C3B2C 800C2F2C 15C00004 */ bnez $t6, .L800C2F40 +/* 0C3B30 800C2F30 00802825 */ move $a1, $a0 +/* 0C3B34 800C2F34 3C078013 */ lui $a3, %hi(D_8012A7B6) # $a3, 0x8013 +/* 0C3B38 800C2F38 24E7A7B6 */ addiu $a3, %lo(D_8012A7B6) # addiu $a3, $a3, -0x584a +/* 0C3B3C 800C2F3C A4E00000 */ sh $zero, ($a3) +.L800C2F40: +/* 0C3B40 800C2F40 3C078013 */ lui $a3, %hi(D_8012A7B6) # $a3, 0x8013 +/* 0C3B44 800C2F44 24E7A7B6 */ addiu $a3, %lo(D_8012A7B6) # addiu $a3, $a3, -0x584a +/* 0C3B48 800C2F48 84E40000 */ lh $a0, ($a3) +/* 0C3B4C 800C2F4C 3C068013 */ lui $a2, %hi(D_8012A7AC) # $a2, 0x8013 +/* 0C3B50 800C2F50 10800035 */ beqz $a0, .L800C3028 +/* 0C3B54 800C2F54 24C6A7AC */ addiu $a2, %lo(D_8012A7AC) # addiu $a2, $a2, -0x5854 +/* 0C3B58 800C2F58 84C30000 */ lh $v1, ($a2) +/* 0C3B5C 800C2F5C 3C0B8013 */ lui $t3, %hi(D_8012A7AA) # $t3, 0x8013 +/* 0C3B60 800C2F60 1C600018 */ bgtz $v1, .L800C2FC4 +/* 0C3B64 800C2F64 00657823 */ subu $t7, $v1, $a1 +/* 0C3B68 800C2F68 3C188013 */ lui $t8, %hi(D_8012A7AA) # $t8, 0x8013 +/* 0C3B6C 800C2F6C 8718A7AA */ lh $t8, %lo(D_8012A7AA)($t8) +/* 0C3B70 800C2F70 3C028013 */ lui $v0, %hi(D_8012A7A8) # $v0, 0x8013 +/* 0C3B74 800C2F74 00B80019 */ multu $a1, $t8 +/* 0C3B78 800C2F78 2442A7A8 */ addiu $v0, %lo(D_8012A7A8) # addiu $v0, $v0, -0x5858 +/* 0C3B7C 800C2F7C 844F0000 */ lh $t7, ($v0) +/* 0C3B80 800C2F80 0000C812 */ mflo $t9 +/* 0C3B84 800C2F84 01F94023 */ subu $t0, $t7, $t9 +/* 0C3B88 800C2F88 A4480000 */ sh $t0, ($v0) +/* 0C3B8C 800C2F8C 84490000 */ lh $t1, ($v0) +/* 0C3B90 800C2F90 00000000 */ nop +/* 0C3B94 800C2F94 05210024 */ bgez $t1, .L800C3028 +/* 0C3B98 800C2F98 00000000 */ nop +/* 0C3B9C 800C2F9C A4400000 */ sh $zero, ($v0) +/* 0C3BA0 800C2FA0 A4E00000 */ sh $zero, ($a3) +/* 0C3BA4 800C2FA4 0C031588 */ jal func_800C5620 +/* 0C3BA8 800C2FA8 24040006 */ li $a0, 6 +/* 0C3BAC 800C2FAC 0C031525 */ jal func_800C5494 +/* 0C3BB0 800C2FB0 24040006 */ li $a0, 6 +/* 0C3BB4 800C2FB4 3C048013 */ lui $a0, %hi(D_8012A7B6) # $a0, 0x8013 +/* 0C3BB8 800C2FB8 8484A7B6 */ lh $a0, %lo(D_8012A7B6)($a0) +/* 0C3BBC 800C2FBC 1000001A */ b .L800C3028 +/* 0C3BC0 800C2FC0 00000000 */ nop +.L800C2FC4: +/* 0C3BC4 800C2FC4 856BA7AA */ lh $t3, %lo(D_8012A7AA)($t3) +/* 0C3BC8 800C2FC8 3C028013 */ lui $v0, %hi(D_8012A7A8) # $v0, 0x8013 +/* 0C3BCC 800C2FCC 00AB0019 */ multu $a1, $t3 +/* 0C3BD0 800C2FD0 2442A7A8 */ addiu $v0, %lo(D_8012A7A8) # addiu $v0, $v0, -0x5858 +/* 0C3BD4 800C2FD4 844A0000 */ lh $t2, ($v0) +/* 0C3BD8 800C2FD8 24180100 */ li $t8, 256 +/* 0C3BDC 800C2FDC 00006012 */ mflo $t4 +/* 0C3BE0 800C2FE0 014C6821 */ addu $t5, $t2, $t4 +/* 0C3BE4 800C2FE4 A44D0000 */ sh $t5, ($v0) +/* 0C3BE8 800C2FE8 844E0000 */ lh $t6, ($v0) +/* 0C3BEC 800C2FEC 00000000 */ nop +/* 0C3BF0 800C2FF0 29C10101 */ slti $at, $t6, 0x101 +/* 0C3BF4 800C2FF4 14200002 */ bnez $at, .L800C3000 +/* 0C3BF8 800C2FF8 00000000 */ nop +/* 0C3BFC 800C2FFC A4580000 */ sh $t8, ($v0) +.L800C3000: +/* 0C3C00 800C3000 A4CF0000 */ sh $t7, ($a2) +/* 0C3C04 800C3004 84D90000 */ lh $t9, ($a2) +/* 0C3C08 800C3008 00000000 */ nop +/* 0C3C0C 800C300C 1F200006 */ bgtz $t9, .L800C3028 +/* 0C3C10 800C3010 00000000 */ nop +/* 0C3C14 800C3014 0C030B5B */ jal func_800C2D6C +/* 0C3C18 800C3018 00000000 */ nop +/* 0C3C1C 800C301C 3C048013 */ lui $a0, %hi(D_8012A7B6) # $a0, 0x8013 +/* 0C3C20 800C3020 8484A7B6 */ lh $a0, %lo(D_8012A7B6)($a0) +/* 0C3C24 800C3024 00000000 */ nop +.L800C3028: +/* 0C3C28 800C3028 10800004 */ beqz $a0, .L800C303C +/* 0C3C2C 800C302C 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C3C30 800C3030 0C030AC0 */ jal func_800C2B00 +/* 0C3C34 800C3034 00000000 */ nop +/* 0C3C38 800C3038 8FBF0014 */ lw $ra, 0x14($sp) +.L800C303C: +/* 0C3C3C 800C303C 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0C3C40 800C3040 03E00008 */ jr $ra +/* 0C3C44 800C3044 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C3048.s b/asm/non_matchings/unknown_0B8920/func_800C3048.s new file mode 100644 index 00000000..93c826e1 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C3048.s @@ -0,0 +1,35 @@ +glabel func_800C3048 +/* 0C3C48 800C3048 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C3C4C 800C304C AFBF0014 */ sw $ra, 0x14($sp) +/* 0C3C50 800C3050 240EFFFF */ li $t6, -1 +/* 0C3C54 800C3054 3C018013 */ lui $at, %hi(D_8012A78C) # $at, 0x8013 +/* 0C3C58 800C3058 3C0500FF */ lui $a1, (0x00FF00FF >> 16) # lui $a1, 0xff +/* 0C3C5C 800C305C A42EA78C */ sh $t6, %lo(D_8012A78C)($at) +/* 0C3C60 800C3060 34A500FF */ ori $a1, (0x00FF00FF & 0xFFFF) # ori $a1, $a1, 0xff +/* 0C3C64 800C3064 0C01C327 */ jal func_80070C9C +/* 0C3C68 800C3068 24040800 */ li $a0, 2048 +/* 0C3C6C 800C306C 3C038013 */ lui $v1, %hi(D_8012A798) # $v1, 0x8013 +/* 0C3C70 800C3070 2463A798 */ addiu $v1, %lo(D_8012A798) # addiu $v1, $v1, -0x5868 +/* 0C3C74 800C3074 3C048013 */ lui $a0, %hi(D_8012A780) # $a0, 0x8013 +/* 0C3C78 800C3078 24580080 */ addiu $t8, $v0, 0x80 +/* 0C3C7C 800C307C 2484A780 */ addiu $a0, %lo(D_8012A780) # addiu $a0, $a0, -0x5880 +/* 0C3C80 800C3080 270803C0 */ addiu $t0, $t8, 0x3c0 +/* 0C3C84 800C3084 AC820000 */ sw $v0, ($a0) +/* 0C3C88 800C3088 AC780000 */ sw $t8, ($v1) +/* 0C3C8C 800C308C AC680004 */ sw $t0, 4($v1) +/* 0C3C90 800C3090 3C018013 */ lui $at, %hi(D_8012A7A4) # $at, 0x8013 +/* 0C3C94 800C3094 0C030A7C */ jal func_800C29F0 +/* 0C3C98 800C3098 AC20A7A4 */ sw $zero, %lo(D_8012A7A4)($at) +/* 0C3C9C 800C309C 0C01DBCC */ jal func_80076F30 +/* 0C3CA0 800C30A0 24040007 */ li $a0, 7 +/* 0C3CA4 800C30A4 00024883 */ sra $t1, $v0, 2 +/* 0C3CA8 800C30A8 252AFFFE */ addiu $t2, $t1, -2 +/* 0C3CAC 800C30AC 3C018013 */ lui $at, %hi(D_8012A790) # $at, 0x8013 +/* 0C3CB0 800C30B0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C3CB4 800C30B4 A42AA790 */ sh $t2, %lo(D_8012A790)($at) +/* 0C3CB8 800C30B8 3C01800E */ lui $at, %hi(D_800E3670) # $at, 0x800e +/* 0C3CBC 800C30BC 240B0001 */ li $t3, 1 +/* 0C3CC0 800C30C0 A02B3670 */ sb $t3, %lo(D_800E3670)($at) +/* 0C3CC4 800C30C4 03E00008 */ jr $ra +/* 0C3CC8 800C30C8 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C30CC.s b/asm/non_matchings/unknown_0B8920/func_800C30CC.s new file mode 100644 index 00000000..5895a8c7 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C30CC.s @@ -0,0 +1,33 @@ +glabel func_800C30CC +/* 0C3CCC 800C30CC 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0C3CD0 800C30D0 AFB10018 */ sw $s1, 0x18($sp) +/* 0C3CD4 800C30D4 3C11800E */ lui $s1, %hi(D_800E3670) # $s1, 0x800e +/* 0C3CD8 800C30D8 26313670 */ addiu $s1, %lo(D_800E3670) # addiu $s1, $s1, 0x3670 +/* 0C3CDC 800C30DC 822E0000 */ lb $t6, ($s1) +/* 0C3CE0 800C30E0 AFBF001C */ sw $ra, 0x1c($sp) +/* 0C3CE4 800C30E4 11C00011 */ beqz $t6, .L800C312C +/* 0C3CE8 800C30E8 AFB00014 */ sw $s0, 0x14($sp) +/* 0C3CEC 800C30EC 3C048013 */ lui $a0, %hi(D_8012A780) # $a0, 0x8013 +/* 0C3CF0 800C30F0 8C84A780 */ lw $a0, %lo(D_8012A780)($a0) +/* 0C3CF4 800C30F4 0C01C450 */ jal func_80071140 +/* 0C3CF8 800C30F8 00000000 */ nop +/* 0C3CFC 800C30FC A2200000 */ sb $zero, ($s1) +/* 0C3D00 800C3100 3C018013 */ lui $at, %hi(D_8012A789) # $at, 0x8013 +/* 0C3D04 800C3104 A020A789 */ sb $zero, %lo(D_8012A789)($at) +/* 0C3D08 800C3108 2411000A */ li $s1, 10 +/* 0C3D0C 800C310C 00008025 */ move $s0, $zero +.L800C3110: +/* 0C3D10 800C3110 0C0273EC */ jal func_8009CFB0 +/* 0C3D14 800C3114 00000000 */ nop +/* 0C3D18 800C3118 26100001 */ addiu $s0, $s0, 1 +/* 0C3D1C 800C311C 1611FFFC */ bne $s0, $s1, .L800C3110 +/* 0C3D20 800C3120 00000000 */ nop +/* 0C3D24 800C3124 0C030AAD */ jal func_800C2AB4 +/* 0C3D28 800C3128 00000000 */ nop +.L800C312C: +/* 0C3D2C 800C312C 8FBF001C */ lw $ra, 0x1c($sp) +/* 0C3D30 800C3130 8FB00014 */ lw $s0, 0x14($sp) +/* 0C3D34 800C3134 8FB10018 */ lw $s1, 0x18($sp) +/* 0C3D38 800C3138 03E00008 */ jr $ra +/* 0C3D3C 800C313C 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C3140.s b/asm/non_matchings/unknown_0B8920/func_800C3140.s new file mode 100644 index 00000000..50f10bdb --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C3140.s @@ -0,0 +1,5 @@ +glabel func_800C3140 +/* 0C3D40 800C3140 3C01800E */ lui $at, 0x800e +/* 0C3D44 800C3144 03E00008 */ jr $ra +/* 0C3D48 800C3148 A4243674 */ sh $a0, 0x3674($at) + diff --git a/asm/non_matchings/unknown_0B8920/func_800C314C.s b/asm/non_matchings/unknown_0B8920/func_800C314C.s new file mode 100644 index 00000000..d721be7b --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C314C.s @@ -0,0 +1,5 @@ +glabel func_800C314C +/* 0C3D4C 800C314C 3C01800E */ lui $at, 0x800e +/* 0C3D50 800C3150 03E00008 */ jr $ra +/* 0C3D54 800C3154 AC203678 */ sw $zero, 0x3678($at) + diff --git a/asm/non_matchings/unknown_0B8920/func_800C3158.s b/asm/non_matchings/unknown_0B8920/func_800C3158.s new file mode 100644 index 00000000..13e9e64a --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C3158.s @@ -0,0 +1,41 @@ +glabel func_800C3158 +/* 0C3D58 800C3158 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 +/* 0C3D5C 800C315C 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) +/* 0C3D60 800C3160 44856000 */ mtc1 $a1, $f12 +/* 0C3D64 800C3164 15C00010 */ bnez $t6, .L800C31A8 +/* 0C3D68 800C3168 3C01404E */ lui $at, 0x404e +/* 0C3D6C 800C316C 3C014049 */ li $at, 0x40490000 # 3.140625 +/* 0C3D70 800C3170 44813800 */ mtc1 $at, $f7 +/* 0C3D74 800C3174 44803000 */ mtc1 $zero, $f6 +/* 0C3D78 800C3178 46006121 */ cvt.d.s $f4, $f12 +/* 0C3D7C 800C317C 46262202 */ mul.d $f8, $f4, $f6 +/* 0C3D80 800C3180 444FF800 */ cfc1 $t7, $31 +/* 0C3D84 800C3184 00000000 */ nop +/* 0C3D88 800C3188 35E10003 */ ori $at, $t7, 3 +/* 0C3D8C 800C318C 38210002 */ xori $at, $at, 2 +/* 0C3D90 800C3190 44C1F800 */ ctc1 $at, $31 +/* 0C3D94 800C3194 3C01800E */ li $at, 0x800E0000 # -0.000000 +/* 0C3D98 800C3198 462042A4 */ cvt.w.d $f10, $f8 +/* 0C3D9C 800C319C 44CFF800 */ ctc1 $t7, $31 +/* 0C3DA0 800C31A0 1000000F */ b .L800C31E0 +/* 0C3DA4 800C31A4 E42A3678 */ swc1 $f10, %lo(D_800E3678)($at) +.L800C31A8: +/* 0C3DA8 800C31A8 44819800 */ mtc1 $at, $f19 +/* 0C3DAC 800C31AC 44809000 */ mtc1 $zero, $f18 +/* 0C3DB0 800C31B0 46006421 */ cvt.d.s $f16, $f12 +/* 0C3DB4 800C31B4 46328102 */ mul.d $f4, $f16, $f18 +/* 0C3DB8 800C31B8 4458F800 */ cfc1 $t8, $31 +/* 0C3DBC 800C31BC 00000000 */ nop +/* 0C3DC0 800C31C0 37010003 */ ori $at, $t8, 3 +/* 0C3DC4 800C31C4 38210002 */ xori $at, $at, 2 +/* 0C3DC8 800C31C8 44C1F800 */ ctc1 $at, $31 +/* 0C3DCC 800C31CC 3C01800E */ lui $at, %hi(D_800E3678) # $at, 0x800e +/* 0C3DD0 800C31D0 462021A4 */ cvt.w.d $f6, $f4 +/* 0C3DD4 800C31D4 44D8F800 */ ctc1 $t8, $31 +/* 0C3DD8 800C31D8 E4263678 */ swc1 $f6, %lo(D_800E3678)($at) +/* 0C3DDC 800C31DC 00000000 */ nop +.L800C31E0: +/* 0C3DE0 800C31E0 3C01800E */ lui $at, 0x800e +/* 0C3DE4 800C31E4 03E00008 */ jr $ra +/* 0C3DE8 800C31E8 AC24367C */ sw $a0, 0x367c($at) + diff --git a/asm/non_matchings/unknown_0B8920/func_800C31EC.s b/asm/non_matchings/unknown_0B8920/func_800C31EC.s new file mode 100644 index 00000000..98744ae1 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C31EC.s @@ -0,0 +1,144 @@ +glabel func_800C31EC +/* 0C3DEC 800C31EC 3C0E800E */ lui $t6, %hi(D_800E3670) # $t6, 0x800e +/* 0C3DF0 800C31F0 81CE3670 */ lb $t6, %lo(D_800E3670)($t6) +/* 0C3DF4 800C31F4 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0C3DF8 800C31F8 AFB00018 */ sw $s0, 0x18($sp) +/* 0C3DFC 800C31FC 00808025 */ move $s0, $a0 +/* 0C3E00 800C3200 11C00078 */ beqz $t6, .L800C33E4 +/* 0C3E04 800C3204 AFBF001C */ sw $ra, 0x1c($sp) +/* 0C3E08 800C3208 04800076 */ bltz $a0, .L800C33E4 +/* 0C3E0C 800C320C 3C0F8013 */ lui $t7, %hi(D_8012A790) # $t7, 0x8013 +/* 0C3E10 800C3210 85EFA790 */ lh $t7, %lo(D_8012A790)($t7) +/* 0C3E14 800C3214 00000000 */ nop +/* 0C3E18 800C3218 008F082A */ slt $at, $a0, $t7 +/* 0C3E1C 800C321C 10200072 */ beqz $at, .L800C33E8 +/* 0C3E20 800C3220 24190001 */ li $t9, 1 +/* 0C3E24 800C3224 0C027AC8 */ jal func_8009EB20 +/* 0C3E28 800C3228 00000000 */ nop +/* 0C3E2C 800C322C 24010001 */ li $at, 1 +/* 0C3E30 800C3230 10410008 */ beq $v0, $at, .L800C3254 +/* 0C3E34 800C3234 24040007 */ li $a0, 7 +/* 0C3E38 800C3238 24010002 */ li $at, 2 +/* 0C3E3C 800C323C 10410007 */ beq $v0, $at, .L800C325C +/* 0C3E40 800C3240 24010003 */ li $at, 3 +/* 0C3E44 800C3244 10410007 */ beq $v0, $at, .L800C3264 +/* 0C3E48 800C3248 00000000 */ nop +/* 0C3E4C 800C324C 10000007 */ b .L800C326C +/* 0C3E50 800C3250 2401FFFE */ li $at, -2 +.L800C3254: +/* 0C3E54 800C3254 10000004 */ b .L800C3268 +/* 0C3E58 800C3258 26100055 */ addiu $s0, $s0, 0x55 +.L800C325C: +/* 0C3E5C 800C325C 10000002 */ b .L800C3268 +/* 0C3E60 800C3260 261000AA */ addiu $s0, $s0, 0xaa +.L800C3264: +/* 0C3E64 800C3264 261000FF */ addiu $s0, $s0, 0xff +.L800C3268: +/* 0C3E68 800C3268 2401FFFE */ li $at, -2 +.L800C326C: +/* 0C3E6C 800C326C 02013024 */ and $a2, $s0, $at +/* 0C3E70 800C3270 3C058013 */ lui $a1, %hi(D_8012A780) # $a1, 0x8013 +/* 0C3E74 800C3274 8CA5A780 */ lw $a1, %lo(D_8012A780)($a1) +/* 0C3E78 800C3278 0006C080 */ sll $t8, $a2, 2 +/* 0C3E7C 800C327C 03003025 */ move $a2, $t8 +/* 0C3E80 800C3280 0C01DB9A */ jal func_80076E68 +/* 0C3E84 800C3284 24070010 */ li $a3, 16 +/* 0C3E88 800C3288 3C048013 */ lui $a0, %hi(D_8012A780) # $a0, 0x8013 +/* 0C3E8C 800C328C 8C84A780 */ lw $a0, %lo(D_8012A780)($a0) +/* 0C3E90 800C3290 32190001 */ andi $t9, $s0, 1 +/* 0C3E94 800C3294 00195080 */ sll $t2, $t9, 2 +/* 0C3E98 800C3298 008A1821 */ addu $v1, $a0, $t2 +/* 0C3E9C 800C329C 8C680000 */ lw $t0, ($v1) +/* 0C3EA0 800C32A0 3C0500FF */ lui $a1, (0x00FFFFFF >> 16) # lui $a1, 0xff +/* 0C3EA4 800C32A4 8C6B0004 */ lw $t3, 4($v1) +/* 0C3EA8 800C32A8 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff +/* 0C3EAC 800C32AC 3C01FF00 */ lui $at, 0xff00 +/* 0C3EB0 800C32B0 01014824 */ and $t1, $t0, $at +/* 0C3EB4 800C32B4 01056824 */ and $t5, $t0, $a1 +/* 0C3EB8 800C32B8 01656024 */ and $t4, $t3, $a1 +/* 0C3EBC 800C32BC 11200019 */ beqz $t1, .L800C3324 +/* 0C3EC0 800C32C0 018D3823 */ subu $a3, $t4, $t5 +/* 0C3EC4 800C32C4 3C108013 */ lui $s0, %hi(D_8012A7D4) # $s0, 0x8013 +/* 0C3EC8 800C32C8 2610A7D4 */ addiu $s0, %lo(D_8012A7D4) # addiu $s0, $s0, -0x582c +/* 0C3ECC 800C32CC 8E0E0000 */ lw $t6, ($s0) +/* 0C3ED0 800C32D0 3C058013 */ lui $a1, 0x8013 +/* 0C3ED4 800C32D4 000E7880 */ sll $t7, $t6, 2 +/* 0C3ED8 800C32D8 00AF2821 */ addu $a1, $a1, $t7 +/* 0C3EDC 800C32DC 8CA5A7C8 */ lw $a1, -0x5838($a1) +/* 0C3EE0 800C32E0 24040006 */ li $a0, 6 +/* 0C3EE4 800C32E4 0C01DB9A */ jal func_80076E68 +/* 0C3EE8 800C32E8 01093026 */ xor $a2, $t0, $t1 +/* 0C3EEC 800C32EC 8E180000 */ lw $t8, ($s0) +/* 0C3EF0 800C32F0 3C0A8013 */ lui $t2, 0x8013 +/* 0C3EF4 800C32F4 0018C880 */ sll $t9, $t8, 2 +/* 0C3EF8 800C32F8 01595021 */ addu $t2, $t2, $t9 +/* 0C3EFC 800C32FC 8D4AA7C8 */ lw $t2, -0x5838($t2) +/* 0C3F00 800C3300 3C018013 */ lui $at, %hi(D_8012A7D0) # $at, 0x8013 +/* 0C3F04 800C3304 0C030B5B */ jal func_800C2D6C +/* 0C3F08 800C3308 AC2AA7D0 */ sw $t2, %lo(D_8012A7D0)($at) +/* 0C3F0C 800C330C 8E0B0000 */ lw $t3, ($s0) +/* 0C3F10 800C3310 00000000 */ nop +/* 0C3F14 800C3314 256C0001 */ addiu $t4, $t3, 1 +/* 0C3F18 800C3318 318D0001 */ andi $t5, $t4, 1 +/* 0C3F1C 800C331C 10000034 */ b .L800C33F0 +/* 0C3F20 800C3320 AE0D0000 */ sw $t5, ($s0) +.L800C3324: +/* 0C3F24 800C3324 3C108013 */ lui $s0, %hi(D_8012A7A4) # $s0, 0x8013 +/* 0C3F28 800C3328 2610A7A4 */ addiu $s0, %lo(D_8012A7A4) # addiu $s0, $s0, -0x585c +/* 0C3F2C 800C332C 8E0E0000 */ lw $t6, ($s0) +/* 0C3F30 800C3330 3C058013 */ lui $a1, 0x8013 +/* 0C3F34 800C3334 000E7880 */ sll $t7, $t6, 2 +/* 0C3F38 800C3338 00AF2821 */ addu $a1, $a1, $t7 +/* 0C3F3C 800C333C 8CA5A798 */ lw $a1, -0x5868($a1) +/* 0C3F40 800C3340 24040006 */ li $a0, 6 +/* 0C3F44 800C3344 01093026 */ xor $a2, $t0, $t1 +/* 0C3F48 800C3348 0C01DB9A */ jal func_80076E68 +/* 0C3F4C 800C334C AFA70024 */ sw $a3, 0x24($sp) +/* 0C3F50 800C3350 8E030000 */ lw $v1, ($s0) +/* 0C3F54 800C3354 3C198013 */ lui $t9, 0x8013 +/* 0C3F58 800C3358 0003C080 */ sll $t8, $v1, 2 +/* 0C3F5C 800C335C 0338C821 */ addu $t9, $t9, $t8 +/* 0C3F60 800C3360 8F39A798 */ lw $t9, -0x5868($t9) +/* 0C3F64 800C3364 3C048013 */ lui $a0, %hi(D_8012A7A0) # $a0, 0x8013 +/* 0C3F68 800C3368 246A0001 */ addiu $t2, $v1, 1 +/* 0C3F6C 800C336C 2484A7A0 */ addiu $a0, %lo(D_8012A7A0) # addiu $a0, $a0, -0x5860 +/* 0C3F70 800C3370 314B0001 */ andi $t3, $t2, 1 +/* 0C3F74 800C3374 AE0B0000 */ sw $t3, ($s0) +/* 0C3F78 800C3378 3C018013 */ lui $at, %hi(D_8012A788) # $at, 0x8013 +/* 0C3F7C 800C337C AC990000 */ sw $t9, ($a0) +/* 0C3F80 800C3380 A020A788 */ sb $zero, %lo(D_8012A788)($at) +/* 0C3F84 800C3384 3C018013 */ lui $at, %hi(D_8012A786) # $at, 0x8013 +/* 0C3F88 800C3388 A020A786 */ sb $zero, %lo(D_8012A786)($at) +/* 0C3F8C 800C338C 3C018013 */ lui $at, %hi(D_8012A784) # $at, 0x8013 +/* 0C3F90 800C3390 A020A784 */ sb $zero, %lo(D_8012A784)($at) +/* 0C3F94 800C3394 3C018013 */ lui $at, %hi(D_8012A787) # $at, 0x8013 +/* 0C3F98 800C3398 240C0001 */ li $t4, 1 +/* 0C3F9C 800C339C A02CA787 */ sb $t4, %lo(D_8012A787)($at) +/* 0C3FA0 800C33A0 8FA70024 */ lw $a3, 0x24($sp) +/* 0C3FA4 800C33A4 8C8E0000 */ lw $t6, ($a0) +/* 0C3FA8 800C33A8 3C058013 */ lui $a1, %hi(D_8012A789) # $a1, 0x8013 +/* 0C3FAC 800C33AC 240D0002 */ li $t5, 2 +/* 0C3FB0 800C33B0 01C77821 */ addu $t7, $t6, $a3 +/* 0C3FB4 800C33B4 24A5A789 */ addiu $a1, %lo(D_8012A789) # addiu $a1, $a1, -0x5877 +/* 0C3FB8 800C33B8 A1ED0000 */ sb $t5, ($t7) +/* 0C3FBC 800C33BC 90B80000 */ lbu $t8, ($a1) +/* 0C3FC0 800C33C0 00000000 */ nop +/* 0C3FC4 800C33C4 1700000A */ bnez $t8, .L800C33F0 +/* 0C3FC8 800C33C8 3C018013 */ lui $at, %hi(D_8012A78E) # $at, 0x8013 +/* 0C3FCC 800C33CC A420A78E */ sh $zero, %lo(D_8012A78E)($at) +/* 0C3FD0 800C33D0 24020001 */ li $v0, 1 +/* 0C3FD4 800C33D4 3C018013 */ lui $at, %hi(D_8012A78A) # $at, 0x8013 +/* 0C3FD8 800C33D8 A022A78A */ sb $v0, %lo(D_8012A78A)($at) +/* 0C3FDC 800C33DC 10000004 */ b .L800C33F0 +/* 0C3FE0 800C33E0 A0A20000 */ sb $v0, ($a1) +.L800C33E4: +/* 0C3FE4 800C33E4 24190001 */ li $t9, 1 +.L800C33E8: +/* 0C3FE8 800C33E8 3C018013 */ lui $at, %hi(D_8012A784) # $at, 0x8013 +/* 0C3FEC 800C33EC A039A784 */ sb $t9, %lo(D_8012A784)($at) +.L800C33F0: +/* 0C3FF0 800C33F0 8FBF001C */ lw $ra, 0x1c($sp) +/* 0C3FF4 800C33F4 8FB00018 */ lw $s0, 0x18($sp) +/* 0C3FF8 800C33F8 03E00008 */ jr $ra +/* 0C3FFC 800C33FC 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C3400.s b/asm/non_matchings/unknown_0B8920/func_800C3400.s new file mode 100644 index 00000000..7ba06977 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C3400.s @@ -0,0 +1,19 @@ +glabel func_800C3400 +/* 0C4000 800C3400 3C0E800E */ lui $t6, %hi(D_800E3670) # $t6, 0x800e +/* 0C4004 800C3404 81CE3670 */ lb $t6, %lo(D_800E3670)($t6) +/* 0C4008 800C3408 00001825 */ move $v1, $zero +/* 0C400C 800C340C 11C0000A */ beqz $t6, .L800C3438 +/* 0C4010 800C3410 3C0F8013 */ lui $t7, %hi(D_8012A789) # $t7, 0x8013 +/* 0C4014 800C3414 91EFA789 */ lbu $t7, %lo(D_8012A789)($t7) +/* 0C4018 800C3418 3C188013 */ lui $t8, %hi(D_8012A788) # $t8, 0x8013 +/* 0C401C 800C341C 11E00006 */ beqz $t7, .L800C3438 +/* 0C4020 800C3420 00000000 */ nop +/* 0C4024 800C3424 8318A788 */ lb $t8, %lo(D_8012A788)($t8) +/* 0C4028 800C3428 24030001 */ li $v1, 1 +/* 0C402C 800C342C 13000002 */ beqz $t8, .L800C3438 +/* 0C4030 800C3430 00000000 */ nop +/* 0C4034 800C3434 24030002 */ li $v1, 2 +.L800C3438: +/* 0C4038 800C3438 03E00008 */ jr $ra +/* 0C403C 800C343C 00601025 */ move $v0, $v1 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C3440.s b/asm/non_matchings/unknown_0B8920/func_800C3440.s new file mode 100644 index 00000000..41b42b22 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C3440.s @@ -0,0 +1,81 @@ +glabel func_800C3440 +/* 0C4040 800C3440 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0C4044 800C3444 3C0E800E */ lui $t6, %hi(D_800E3670) # $t6, 0x800e +/* 0C4048 800C3448 81CE3670 */ lb $t6, %lo(D_800E3670)($t6) +/* 0C404C 800C344C AFBF001C */ sw $ra, 0x1c($sp) +/* 0C4050 800C3450 AFB10018 */ sw $s1, 0x18($sp) +/* 0C4054 800C3454 AFB00014 */ sw $s0, 0x14($sp) +/* 0C4058 800C3458 11C0003D */ beqz $t6, .L800C3550 +/* 0C405C 800C345C AFA40020 */ sw $a0, 0x20($sp) +/* 0C4060 800C3460 0C01BAA8 */ jal func_8006EAA0 +/* 0C4064 800C3464 00000000 */ nop +/* 0C4068 800C3468 1440000D */ bnez $v0, .L800C34A0 +/* 0C406C 800C346C 3C10800E */ lui $s0, %hi(D_800E3678) # $s0, 0x800e +/* 0C4070 800C3470 26103678 */ addiu $s0, %lo(D_800E3678) # addiu $s0, $s0, 0x3678 +/* 0C4074 800C3474 8E020000 */ lw $v0, ($s0) +/* 0C4078 800C3478 8FAF0020 */ lw $t7, 0x20($sp) +/* 0C407C 800C347C 18400008 */ blez $v0, .L800C34A0 +/* 0C4080 800C3480 004FC023 */ subu $t8, $v0, $t7 +/* 0C4084 800C3484 1F000006 */ bgtz $t8, .L800C34A0 +/* 0C4088 800C3488 AE180000 */ sw $t8, ($s0) +/* 0C408C 800C348C 3C04800E */ lui $a0, %hi(D_800E367C) # $a0, 0x800e +/* 0C4090 800C3490 8C84367C */ lw $a0, %lo(D_800E367C)($a0) +/* 0C4094 800C3494 0C030C7B */ jal func_800C31EC +/* 0C4098 800C3498 00000000 */ nop +/* 0C409C 800C349C AE000000 */ sw $zero, ($s0) +.L800C34A0: +/* 0C40A0 800C34A0 8FA40020 */ lw $a0, 0x20($sp) +/* 0C40A4 800C34A4 0C030BC7 */ jal func_800C2F1C +/* 0C40A8 800C34A8 00000000 */ nop +/* 0C40AC 800C34AC 3C088013 */ lui $t0, %hi(D_8012A789) # $t0, 0x8013 +/* 0C40B0 800C34B0 9108A789 */ lbu $t0, %lo(D_8012A789)($t0) +/* 0C40B4 800C34B4 00000000 */ nop +/* 0C40B8 800C34B8 11000026 */ beqz $t0, .L800C3554 +/* 0C40BC 800C34BC 8FBF001C */ lw $ra, 0x1c($sp) +/* 0C40C0 800C34C0 0C0168EC */ jal func_8005A3B0 +/* 0C40C4 800C34C4 00000000 */ nop +/* 0C40C8 800C34C8 3C118013 */ lui $s1, %hi(D_8012A786) # $s1, 0x8013 +/* 0C40CC 800C34CC 2631A786 */ addiu $s1, %lo(D_8012A786) # addiu $s1, $s1, -0x587a +/* 0C40D0 800C34D0 82220000 */ lb $v0, ($s1) +/* 0C40D4 800C34D4 3C108013 */ lui $s0, %hi(D_8012A785) # $s0, 0x8013 +/* 0C40D8 800C34D8 1040001B */ beqz $v0, .L800C3548 +/* 0C40DC 800C34DC 2610A785 */ addiu $s0, %lo(D_8012A785) # addiu $s0, $s0, -0x587b +/* 0C40E0 800C34E0 82090000 */ lb $t1, ($s0) +/* 0C40E4 800C34E4 8FAA0020 */ lw $t2, 0x20($sp) +/* 0C40E8 800C34E8 00000000 */ nop +/* 0C40EC 800C34EC 012A5823 */ subu $t3, $t1, $t2 +/* 0C40F0 800C34F0 A20B0000 */ sb $t3, ($s0) +/* 0C40F4 800C34F4 820C0000 */ lb $t4, ($s0) +/* 0C40F8 800C34F8 00000000 */ nop +/* 0C40FC 800C34FC 0581000E */ bgez $t4, .L800C3538 +/* 0C4100 800C3500 00000000 */ nop +.L800C3504: +/* 0C4104 800C3504 0C00322D */ jal func_8000C8B4 +/* 0C4108 800C3508 2404003C */ li $a0, 60 +/* 0C410C 800C350C 820D0000 */ lb $t5, ($s0) +/* 0C4110 800C3510 822F0000 */ lb $t7, ($s1) +/* 0C4114 800C3514 01A27021 */ addu $t6, $t5, $v0 +/* 0C4118 800C3518 A20E0000 */ sb $t6, ($s0) +/* 0C411C 800C351C 82190000 */ lb $t9, ($s0) +/* 0C4120 800C3520 25F8FFFF */ addiu $t8, $t7, -1 +/* 0C4124 800C3524 0720FFF7 */ bltz $t9, .L800C3504 +/* 0C4128 800C3528 A2380000 */ sb $t8, ($s1) +/* 0C412C 800C352C 3C028013 */ lui $v0, %hi(D_8012A786) # $v0, 0x8013 +/* 0C4130 800C3530 8042A786 */ lb $v0, %lo(D_8012A786)($v0) +/* 0C4134 800C3534 00000000 */ nop +.L800C3538: +/* 0C4138 800C3538 1C400003 */ bgtz $v0, .L800C3548 +/* 0C413C 800C353C 24080001 */ li $t0, 1 +/* 0C4140 800C3540 3C018013 */ lui $at, %hi(D_8012A784) # $at, 0x8013 +/* 0C4144 800C3544 A028A784 */ sb $t0, %lo(D_8012A784)($at) +.L800C3548: +/* 0C4148 800C3548 0C0273FB */ jal func_8009CFEC +/* 0C414C 800C354C 24040003 */ li $a0, 3 +.L800C3550: +/* 0C4150 800C3550 8FBF001C */ lw $ra, 0x1c($sp) +.L800C3554: +/* 0C4154 800C3554 8FB00014 */ lw $s0, 0x14($sp) +/* 0C4158 800C3558 8FB10018 */ lw $s1, 0x18($sp) +/* 0C415C 800C355C 03E00008 */ jr $ra +/* 0C4160 800C3560 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C3564.s b/asm/non_matchings/unknown_0B8920/func_800C3564.s new file mode 100644 index 00000000..7e06b8be --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C3564.s @@ -0,0 +1,234 @@ +glabel func_800C3564 +/* 0C4164 800C3564 27BDFF78 */ addiu $sp, $sp, -0x88 +/* 0C4168 800C3568 AFBF002C */ sw $ra, 0x2c($sp) +/* 0C416C 800C356C 240E000A */ li $t6, 10 +/* 0C4170 800C3570 240F000F */ li $t7, 15 +/* 0C4174 800C3574 241800B4 */ li $t8, 180 +/* 0C4178 800C3578 2419007D */ li $t9, 125 +/* 0C417C 800C357C 24080004 */ li $t0, 4 +/* 0C4180 800C3580 24090005 */ li $t1, 5 +/* 0C4184 800C3584 240A000A */ li $t2, 10 +/* 0C4188 800C3588 240B000F */ li $t3, 15 +/* 0C418C 800C358C 240C007D */ li $t4, 125 +/* 0C4190 800C3590 AFB30028 */ sw $s3, 0x28($sp) +/* 0C4194 800C3594 AFB20024 */ sw $s2, 0x24($sp) +/* 0C4198 800C3598 AFB10020 */ sw $s1, 0x20($sp) +/* 0C419C 800C359C AFB0001C */ sw $s0, 0x1c($sp) +/* 0C41A0 800C35A0 AFA00040 */ sw $zero, 0x40($sp) +/* 0C41A4 800C35A4 AFB90050 */ sw $t9, 0x50($sp) +/* 0C41A8 800C35A8 AFB8004C */ sw $t8, 0x4c($sp) +/* 0C41AC 800C35AC AFAF0048 */ sw $t7, 0x48($sp) +/* 0C41B0 800C35B0 AFAE0044 */ sw $t6, 0x44($sp) +/* 0C41B4 800C35B4 AFA80064 */ sw $t0, 0x64($sp) +/* 0C41B8 800C35B8 AFA00054 */ sw $zero, 0x54($sp) +/* 0C41BC 800C35BC AFA00058 */ sw $zero, 0x58($sp) +/* 0C41C0 800C35C0 AFA0005C */ sw $zero, 0x5c($sp) +/* 0C41C4 800C35C4 AFA00060 */ sw $zero, 0x60($sp) +/* 0C41C8 800C35C8 AFAB0070 */ sw $t3, 0x70($sp) +/* 0C41CC 800C35CC AFAA006C */ sw $t2, 0x6c($sp) +/* 0C41D0 800C35D0 AFA90068 */ sw $t1, 0x68($sp) +/* 0C41D4 800C35D4 AFAC0010 */ sw $t4, 0x10($sp) +/* 0C41D8 800C35D8 24040001 */ li $a0, 1 +/* 0C41DC 800C35DC 2405000A */ li $a1, 10 +/* 0C41E0 800C35E0 2406000F */ li $a2, 15 +/* 0C41E4 800C35E4 0C0313B7 */ jal func_800C4EDC +/* 0C41E8 800C35E8 240700B4 */ li $a3, 180 +/* 0C41EC 800C35EC 8FA50040 */ lw $a1, 0x40($sp) +/* 0C41F0 800C35F0 0C0313DF */ jal func_800C4F7C +/* 0C41F4 800C35F4 24040001 */ li $a0, 1 +/* 0C41F8 800C35F8 240D0080 */ li $t5, 128 +/* 0C41FC 800C35FC AFAD0010 */ sw $t5, 0x10($sp) +/* 0C4200 800C3600 24040001 */ li $a0, 1 +/* 0C4204 800C3604 00002825 */ move $a1, $zero +/* 0C4208 800C3608 24060010 */ li $a2, 16 +/* 0C420C 800C360C 0C0313EF */ jal func_800C4FBC +/* 0C4210 800C3610 24070010 */ li $a3, 16 +/* 0C4214 800C3614 8FAE0060 */ lw $t6, 0x60($sp) +/* 0C4218 800C3618 8FA50054 */ lw $a1, 0x54($sp) +/* 0C421C 800C361C 8FA60058 */ lw $a2, 0x58($sp) +/* 0C4220 800C3620 8FA7005C */ lw $a3, 0x5c($sp) +/* 0C4224 800C3624 240F00FF */ li $t7, 255 +/* 0C4228 800C3628 AFAF0014 */ sw $t7, 0x14($sp) +/* 0C422C 800C362C 24040001 */ li $a0, 1 +/* 0C4230 800C3630 0C031400 */ jal func_800C5000 +/* 0C4234 800C3634 AFAE0010 */ sw $t6, 0x10($sp) +/* 0C4238 800C3638 3C048013 */ lui $a0, %hi(D_8012A78E) # $a0, 0x8013 +/* 0C423C 800C363C 8484A78E */ lh $a0, %lo(D_8012A78E)($a0) +/* 0C4240 800C3640 00008825 */ move $s1, $zero +/* 0C4244 800C3644 10800023 */ beqz $a0, .L800C36D4 +/* 0C4248 800C3648 00003025 */ move $a2, $zero +/* 0C424C 800C364C 3C028013 */ lui $v0, %hi(D_8012A7A0) # $v0, 0x8013 +/* 0C4250 800C3650 8C42A7A0 */ lw $v0, %lo(D_8012A7A0)($v0) +/* 0C4254 800C3654 24120002 */ li $s2, 2 +/* 0C4258 800C3658 90580000 */ lbu $t8, ($v0) +/* 0C425C 800C365C 00408021 */ addu $s0, $v0, $zero +/* 0C4260 800C3660 1258001C */ beq $s2, $t8, .L800C36D4 +/* 0C4264 800C3664 330300FF */ andi $v1, $t8, 0xff +/* 0C4268 800C3668 27B30040 */ addiu $s3, $sp, 0x40 +/* 0C426C 800C366C 28610003 */ slti $at, $v1, 3 +.L800C3670: +/* 0C4270 800C3670 1420000E */ bnez $at, .L800C36AC +/* 0C4274 800C3674 2861000D */ slti $at, $v1, 0xd +/* 0C4278 800C3678 1020000C */ beqz $at, .L800C36AC +/* 0C427C 800C367C 02602825 */ move $a1, $s3 +/* 0C4280 800C3680 02202025 */ move $a0, $s1 +/* 0C4284 800C3684 0C030E2D */ jal func_800C38B4 +/* 0C4288 800C3688 AFA6007C */ sw $a2, 0x7c($sp) +/* 0C428C 800C368C 3C198013 */ lui $t9, %hi(D_8012A7A0) # $t9, 0x8013 +/* 0C4290 800C3690 8F39A7A0 */ lw $t9, %lo(D_8012A7A0)($t9) +/* 0C4294 800C3694 3C048013 */ lui $a0, %hi(D_8012A78E) # $a0, 0x8013 +/* 0C4298 800C3698 03228021 */ addu $s0, $t9, $v0 +/* 0C429C 800C369C 92030000 */ lbu $v1, ($s0) +/* 0C42A0 800C36A0 8484A78E */ lh $a0, %lo(D_8012A78E)($a0) +/* 0C42A4 800C36A4 8FA6007C */ lw $a2, 0x7c($sp) +/* 0C42A8 800C36A8 00408825 */ move $s1, $v0 +.L800C36AC: +/* 0C42AC 800C36AC 24010001 */ li $at, 1 +/* 0C42B0 800C36B0 14610002 */ bne $v1, $at, .L800C36BC +/* 0C42B4 800C36B4 26310001 */ addiu $s1, $s1, 1 +/* 0C42B8 800C36B8 24C60001 */ addiu $a2, $a2, 1 +.L800C36BC: +/* 0C42BC 800C36BC 10C40005 */ beq $a2, $a0, .L800C36D4 +/* 0C42C0 800C36C0 26100001 */ addiu $s0, $s0, 1 +/* 0C42C4 800C36C4 92030000 */ lbu $v1, ($s0) +/* 0C42C8 800C36C8 00000000 */ nop +/* 0C42CC 800C36CC 1643FFE8 */ bne $s2, $v1, .L800C3670 +/* 0C42D0 800C36D0 28610003 */ slti $at, $v1, 3 +.L800C36D4: +/* 0C42D4 800C36D4 3C088013 */ lui $t0, %hi(D_8012A7A0) # $t0, 0x8013 +/* 0C42D8 800C36D8 8D08A7A0 */ lw $t0, %lo(D_8012A7A0)($t0) +/* 0C42DC 800C36DC 27B30040 */ addiu $s3, $sp, 0x40 +/* 0C42E0 800C36E0 01114821 */ addu $t1, $t0, $s1 +/* 0C42E4 800C36E4 91230000 */ lbu $v1, ($t1) +/* 0C42E8 800C36E8 00000000 */ nop +/* 0C42EC 800C36EC 28610003 */ slti $at, $v1, 3 +/* 0C42F0 800C36F0 14200006 */ bnez $at, .L800C370C +/* 0C42F4 800C36F4 2861000D */ slti $at, $v1, 0xd +/* 0C42F8 800C36F8 10200004 */ beqz $at, .L800C370C +/* 0C42FC 800C36FC 02202025 */ move $a0, $s1 +/* 0C4300 800C3700 0C030E2D */ jal func_800C38B4 +/* 0C4304 800C3704 02602825 */ move $a1, $s3 +/* 0C4308 800C3708 00408825 */ move $s1, $v0 +.L800C370C: +/* 0C430C 800C370C 24120001 */ li $s2, 1 +.L800C3710: +/* 0C4310 800C3710 3C0A8013 */ lui $t2, %hi(D_8012A7A0) # $t2, 0x8013 +/* 0C4314 800C3714 8D4AA7A0 */ lw $t2, %lo(D_8012A7A0)($t2) +/* 0C4318 800C3718 8FAB0064 */ lw $t3, 0x64($sp) +/* 0C431C 800C371C 24040001 */ li $a0, 1 +/* 0C4320 800C3720 15600004 */ bnez $t3, .L800C3734 +/* 0C4324 800C3724 01518021 */ addu $s0, $t2, $s1 +/* 0C4328 800C3728 8FA50068 */ lw $a1, 0x68($sp) +/* 0C432C 800C372C 10000007 */ b .L800C374C +/* 0C4330 800C3730 00000000 */ nop +.L800C3734: +/* 0C4334 800C3734 8FAC004C */ lw $t4, 0x4c($sp) +/* 0C4338 800C3738 8FAD0044 */ lw $t5, 0x44($sp) +/* 0C433C 800C373C 00000000 */ nop +/* 0C4340 800C3740 018D2823 */ subu $a1, $t4, $t5 +/* 0C4344 800C3744 00057043 */ sra $t6, $a1, 1 +/* 0C4348 800C3748 01C02825 */ move $a1, $t6 +.L800C374C: +/* 0C434C 800C374C 3C0F800E */ lui $t7, %hi(D_800E3674) # $t7, 0x800e +/* 0C4350 800C3750 85EF3674 */ lh $t7, %lo(D_800E3674)($t7) +/* 0C4354 800C3754 8FB80064 */ lw $t8, 0x64($sp) +/* 0C4358 800C3758 8FA6006C */ lw $a2, 0x6c($sp) +/* 0C435C 800C375C 02003825 */ move $a3, $s0 +/* 0C4360 800C3760 AFAF0010 */ sw $t7, 0x10($sp) +/* 0C4364 800C3764 0C03145A */ jal func_800C5168 +/* 0C4368 800C3768 AFB80014 */ sw $t8, 0x14($sp) +/* 0C436C 800C376C 8FB9006C */ lw $t9, 0x6c($sp) +/* 0C4370 800C3770 8FA80070 */ lw $t0, 0x70($sp) +/* 0C4374 800C3774 3C0A8013 */ lui $t2, %hi(D_8012A7A0) # $t2, 0x8013 +/* 0C4378 800C3778 8D4AA7A0 */ lw $t2, %lo(D_8012A7A0)($t2) +/* 0C437C 800C377C 03284821 */ addu $t1, $t9, $t0 +/* 0C4380 800C3780 AFA9006C */ sw $t1, 0x6c($sp) +/* 0C4384 800C3784 01518021 */ addu $s0, $t2, $s1 +/* 0C4388 800C3788 92030000 */ lbu $v1, ($s0) +/* 0C438C 800C378C 00000000 */ nop +/* 0C4390 800C3790 18600005 */ blez $v1, .L800C37A8 +/* 0C4394 800C3794 00000000 */ nop +.L800C3798: +/* 0C4398 800C3798 92030001 */ lbu $v1, 1($s0) +/* 0C439C 800C379C 26310001 */ addiu $s1, $s1, 1 +/* 0C43A0 800C37A0 1C60FFFD */ bgtz $v1, .L800C3798 +/* 0C43A4 800C37A4 26100001 */ addiu $s0, $s0, 1 +.L800C37A8: +/* 0C43A8 800C37A8 14600006 */ bnez $v1, .L800C37C4 +/* 0C43AC 800C37AC 28610003 */ slti $at, $v1, 3 +.L800C37B0: +/* 0C43B0 800C37B0 92030001 */ lbu $v1, 1($s0) +/* 0C43B4 800C37B4 26310001 */ addiu $s1, $s1, 1 +/* 0C43B8 800C37B8 1060FFFD */ beqz $v1, .L800C37B0 +/* 0C43BC 800C37BC 26100001 */ addiu $s0, $s0, 1 +/* 0C43C0 800C37C0 28610003 */ slti $at, $v1, 3 +.L800C37C4: +/* 0C43C4 800C37C4 10200003 */ beqz $at, .L800C37D4 +/* 0C43C8 800C37C8 28610003 */ slti $at, $v1, 3 +/* 0C43CC 800C37CC 00009025 */ move $s2, $zero +/* 0C43D0 800C37D0 28610003 */ slti $at, $v1, 3 +.L800C37D4: +/* 0C43D4 800C37D4 14200006 */ bnez $at, .L800C37F0 +/* 0C43D8 800C37D8 2861000D */ slti $at, $v1, 0xd +/* 0C43DC 800C37DC 10200004 */ beqz $at, .L800C37F0 +/* 0C43E0 800C37E0 02202025 */ move $a0, $s1 +/* 0C43E4 800C37E4 0C030E2D */ jal func_800C38B4 +/* 0C43E8 800C37E8 02602825 */ move $a1, $s3 +/* 0C43EC 800C37EC 00408825 */ move $s1, $v0 +.L800C37F0: +/* 0C43F0 800C37F0 1640FFC7 */ bnez $s2, .L800C3710 +/* 0C43F4 800C37F4 00000000 */ nop +/* 0C43F8 800C37F8 0C01A955 */ jal func_8006A554 +/* 0C43FC 800C37FC 00002025 */ move $a0, $zero +/* 0C4400 800C3800 3C0B8013 */ lui $t3, %hi(D_8012A787) # $t3, 0x8013 +/* 0C4404 800C3804 816BA787 */ lb $t3, %lo(D_8012A787)($t3) +/* 0C4408 800C3808 00401825 */ move $v1, $v0 +/* 0C440C 800C380C 15600002 */ bnez $t3, .L800C3818 +/* 0C4410 800C3810 3C108013 */ lui $s0, %hi(D_8012A78A) # $s0, 0x8013 +/* 0C4414 800C3814 00001825 */ move $v1, $zero +.L800C3818: +/* 0C4418 800C3818 2610A78A */ addiu $s0, %lo(D_8012A78A) # addiu $s0, $s0, -0x5876 +/* 0C441C 800C381C 920C0000 */ lbu $t4, ($s0) +/* 0C4420 800C3820 306D8000 */ andi $t5, $v1, 0x8000 +/* 0C4424 800C3824 1580001B */ bnez $t4, .L800C3894 +/* 0C4428 800C3828 8FBF002C */ lw $ra, 0x2c($sp) +/* 0C442C 800C382C 15A00004 */ bnez $t5, .L800C3840 +/* 0C4430 800C3830 3C0E8013 */ lui $t6, %hi(D_8012A784) # $t6, 0x8013 +/* 0C4434 800C3834 81CEA784 */ lb $t6, %lo(D_8012A784)($t6) +/* 0C4438 800C3838 00000000 */ nop +/* 0C443C 800C383C 11C00014 */ beqz $t6, .L800C3890 +.L800C3840: +/* 0C4440 800C3840 3C0F8013 */ lui $t7, %hi(D_8012A7A0) # $t7, 0x8013 +/* 0C4444 800C3844 8DEFA7A0 */ lw $t7, %lo(D_8012A7A0)($t7) +/* 0C4448 800C3848 24010001 */ li $at, 1 +/* 0C444C 800C384C 01F1C021 */ addu $t8, $t7, $s1 +/* 0C4450 800C3850 93190000 */ lbu $t9, ($t8) +/* 0C4454 800C3854 3C088013 */ lui $t0, %hi(D_8012A78E) # $t0, 0x8013 +/* 0C4458 800C3858 17210006 */ bne $t9, $at, .L800C3874 +/* 0C445C 800C385C 24040003 */ li $a0, 3 +/* 0C4460 800C3860 8508A78E */ lh $t0, %lo(D_8012A78E)($t0) +/* 0C4464 800C3864 3C018013 */ lui $at, %hi(D_8012A78E) # $at, 0x8013 +/* 0C4468 800C3868 25090001 */ addiu $t1, $t0, 1 +/* 0C446C 800C386C 10000004 */ b .L800C3880 +/* 0C4470 800C3870 A429A78E */ sh $t1, %lo(D_8012A78E)($at) +.L800C3874: +/* 0C4474 800C3874 3C018013 */ lui $at, %hi(D_8012A789) # $at, 0x8013 +/* 0C4478 800C3878 0C0273DA */ jal func_8009CF68 +/* 0C447C 800C387C A020A789 */ sb $zero, %lo(D_8012A789)($at) +.L800C3880: +/* 0C4480 800C3880 3C018013 */ lui $at, %hi(D_8012A784) # $at, 0x8013 +/* 0C4484 800C3884 A020A784 */ sb $zero, %lo(D_8012A784)($at) +/* 0C4488 800C3888 3C018013 */ lui $at, %hi(D_8012A786) # $at, 0x8013 +/* 0C448C 800C388C A020A786 */ sb $zero, %lo(D_8012A786)($at) +.L800C3890: +/* 0C4490 800C3890 8FBF002C */ lw $ra, 0x2c($sp) +.L800C3894: +/* 0C4494 800C3894 A2000000 */ sb $zero, ($s0) +/* 0C4498 800C3898 8FB0001C */ lw $s0, 0x1c($sp) +/* 0C449C 800C389C 8FB10020 */ lw $s1, 0x20($sp) +/* 0C44A0 800C38A0 8FB20024 */ lw $s2, 0x24($sp) +/* 0C44A4 800C38A4 8FB30028 */ lw $s3, 0x28($sp) +/* 0C44A8 800C38A8 27BD0088 */ addiu $sp, $sp, 0x88 +/* 0C44AC 800C38AC 03E00008 */ jr $ra +/* 0C44B0 800C38B0 24020001 */ li $v0, 1 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C38B4.s b/asm/non_matchings/unknown_0B8920/func_800C38B4.s new file mode 100644 index 00000000..04f2e518 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C38B4.s @@ -0,0 +1,222 @@ +glabel func_800C38B4 +/* 0C44B4 800C38B4 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 0C44B8 800C38B8 AFB3002C */ sw $s3, 0x2c($sp) +/* 0C44BC 800C38BC 3C138013 */ lui $s3, %hi(D_8012A7A0) # $s3, 0x8013 +/* 0C44C0 800C38C0 2673A7A0 */ addiu $s3, %lo(D_8012A7A0) # addiu $s3, $s3, -0x5860 +/* 0C44C4 800C38C4 8E6E0000 */ lw $t6, ($s3) +/* 0C44C8 800C38C8 AFB00020 */ sw $s0, 0x20($sp) +/* 0C44CC 800C38CC AFBF0044 */ sw $ra, 0x44($sp) +/* 0C44D0 800C38D0 AFBE0040 */ sw $fp, 0x40($sp) +/* 0C44D4 800C38D4 AFB7003C */ sw $s7, 0x3c($sp) +/* 0C44D8 800C38D8 AFB60038 */ sw $s6, 0x38($sp) +/* 0C44DC 800C38DC AFB50034 */ sw $s5, 0x34($sp) +/* 0C44E0 800C38E0 AFB40030 */ sw $s4, 0x30($sp) +/* 0C44E4 800C38E4 AFB20028 */ sw $s2, 0x28($sp) +/* 0C44E8 800C38E8 AFB10024 */ sw $s1, 0x24($sp) +/* 0C44EC 800C38EC 01C48021 */ addu $s0, $t6, $a0 +/* 0C44F0 800C38F0 92020000 */ lbu $v0, ($s0) +/* 0C44F4 800C38F4 00808825 */ move $s1, $a0 +/* 0C44F8 800C38F8 28410003 */ slti $at, $v0, 3 +/* 0C44FC 800C38FC 142000B2 */ bnez $at, .L800C3BC8 +/* 0C4500 800C3900 00A09025 */ move $s2, $a1 +/* 0C4504 800C3904 2841000D */ slti $at, $v0, 0xd +/* 0C4508 800C3908 102000AF */ beqz $at, .L800C3BC8 +/* 0C450C 800C390C 241E0004 */ li $fp, 4 +/* 0C4510 800C3910 3C178013 */ lui $s7, %hi(D_8012A785) # $s7, 0x8013 +/* 0C4514 800C3914 3C168013 */ lui $s6, %hi(D_8012A787) # $s6, 0x8013 +/* 0C4518 800C3918 3C158013 */ lui $s5, %hi(D_8012A788) # $s5, 0x8013 +/* 0C451C 800C391C 3C148013 */ lui $s4, %hi(D_8012A786) # $s4, 0x8013 +/* 0C4520 800C3920 2694A786 */ addiu $s4, %lo(D_8012A786) # addiu $s4, $s4, -0x587a +/* 0C4524 800C3924 26B5A788 */ addiu $s5, %lo(D_8012A788) # addiu $s5, $s5, -0x5878 +/* 0C4528 800C3928 26D6A787 */ addiu $s6, %lo(D_8012A787) # addiu $s6, $s6, -0x5879 +/* 0C452C 800C392C 26F7A785 */ addiu $s7, %lo(D_8012A785) # addiu $s7, $s7, -0x587b +/* 0C4530 800C3930 244FFFFD */ addiu $t7, $v0, -3 +.L800C3934: +/* 0C4534 800C3934 2DE1000A */ sltiu $at, $t7, 0xa +/* 0C4538 800C3938 1020009E */ beqz $at, .L800C3BB4 +/* 0C453C 800C393C 000F7880 */ sll $t7, $t7, 2 +/* 0C4540 800C3940 3C01800F */ lui $at, 0x800f +/* 0C4544 800C3944 002F0821 */ addu $at, $at, $t7 +/* 0C4548 800C3948 8C2F9330 */ lw $t7, -0x6cd0($at) +/* 0C454C 800C394C 00000000 */ nop +/* 0C4550 800C3950 01E00008 */ jr $t7 +/* 0C4554 800C3954 00000000 */ nop +/* 0C4558 800C3958 92050001 */ lbu $a1, 1($s0) +/* 0C455C 800C395C 26310002 */ addiu $s1, $s1, 2 +/* 0C4560 800C3960 24040001 */ li $a0, 1 +/* 0C4564 800C3964 0C0313DF */ jal func_800C4F7C +/* 0C4568 800C3968 AE450000 */ sw $a1, ($s2) +/* 0C456C 800C396C 8E790000 */ lw $t9, ($s3) +/* 0C4570 800C3970 00000000 */ nop +/* 0C4574 800C3974 03318021 */ addu $s0, $t9, $s1 +/* 0C4578 800C3978 92020000 */ lbu $v0, ($s0) +/* 0C457C 800C397C 1000008E */ b .L800C3BB8 +/* 0C4580 800C3980 28410003 */ slti $at, $v0, 3 +/* 0C4584 800C3984 92090001 */ lbu $t1, 1($s0) +/* 0C4588 800C3988 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 +/* 0C458C 800C398C AE490004 */ sw $t1, 4($s2) +/* 0C4590 800C3990 8E6A0000 */ lw $t2, ($s3) +/* 0C4594 800C3994 240100F0 */ li $at, 240 +/* 0C4598 800C3998 022A5821 */ addu $t3, $s1, $t2 +/* 0C459C 800C399C 916D0002 */ lbu $t5, 2($t3) +/* 0C45A0 800C39A0 00000000 */ nop +/* 0C45A4 800C39A4 AE4D0008 */ sw $t5, 8($s2) +/* 0C45A8 800C39A8 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) +/* 0C45AC 800C39AC 000D7940 */ sll $t7, $t5, 5 +/* 0C45B0 800C39B0 15C00007 */ bnez $t6, .L800C39D0 +/* 0C45B4 800C39B4 01ED7821 */ addu $t7, $t7, $t5 +/* 0C45B8 800C39B8 000F78C0 */ sll $t7, $t7, 3 +/* 0C45BC 800C39BC 01E1001A */ div $zero, $t7, $at +/* 0C45C0 800C39C0 00003012 */ mflo $a2 +/* 0C45C4 800C39C4 AE460008 */ sw $a2, 8($s2) +/* 0C45C8 800C39C8 10000003 */ b .L800C39D8 +/* 0C45CC 800C39CC 00CD1023 */ subu $v0, $a2, $t5 +.L800C39D0: +/* 0C45D0 800C39D0 8E460008 */ lw $a2, 8($s2) +/* 0C45D4 800C39D4 00001025 */ move $v0, $zero +.L800C39D8: +/* 0C45D8 800C39D8 8E790000 */ lw $t9, ($s3) +/* 0C45DC 800C39DC 8E450004 */ lw $a1, 4($s2) +/* 0C45E0 800C39E0 02394021 */ addu $t0, $s1, $t9 +/* 0C45E4 800C39E4 910A0003 */ lbu $t2, 3($t0) +/* 0C45E8 800C39E8 24040001 */ li $a0, 1 +/* 0C45EC 800C39EC 25470041 */ addiu $a3, $t2, 0x41 +/* 0C45F0 800C39F0 AE47000C */ sw $a3, 0xc($s2) +/* 0C45F4 800C39F4 8E6C0000 */ lw $t4, ($s3) +/* 0C45F8 800C39F8 00000000 */ nop +/* 0C45FC 800C39FC 022C6821 */ addu $t5, $s1, $t4 +/* 0C4600 800C3A00 91AF0004 */ lbu $t7, 4($t5) +/* 0C4604 800C3A04 26310005 */ addiu $s1, $s1, 5 +/* 0C4608 800C3A08 01E2C021 */ addu $t8, $t7, $v0 +/* 0C460C 800C3A0C AE580010 */ sw $t8, 0x10($s2) +/* 0C4610 800C3A10 0C0313B7 */ jal func_800C4EDC +/* 0C4614 800C3A14 AFB80010 */ sw $t8, 0x10($sp) +/* 0C4618 800C3A18 8E680000 */ lw $t0, ($s3) +/* 0C461C 800C3A1C 00000000 */ nop +/* 0C4620 800C3A20 01118021 */ addu $s0, $t0, $s1 +/* 0C4624 800C3A24 92020000 */ lbu $v0, ($s0) +/* 0C4628 800C3A28 10000063 */ b .L800C3BB8 +/* 0C462C 800C3A2C 28410003 */ slti $at, $v0, 3 +/* 0C4630 800C3A30 92050001 */ lbu $a1, 1($s0) +/* 0C4634 800C3A34 24040001 */ li $a0, 1 +/* 0C4638 800C3A38 AE450014 */ sw $a1, 0x14($s2) +/* 0C463C 800C3A3C 8E6A0000 */ lw $t2, ($s3) +/* 0C4640 800C3A40 00000000 */ nop +/* 0C4644 800C3A44 022A5821 */ addu $t3, $s1, $t2 +/* 0C4648 800C3A48 91660002 */ lbu $a2, 2($t3) +/* 0C464C 800C3A4C 240A00FF */ li $t2, 255 +/* 0C4650 800C3A50 AE460018 */ sw $a2, 0x18($s2) +/* 0C4654 800C3A54 8E6D0000 */ lw $t5, ($s3) +/* 0C4658 800C3A58 00000000 */ nop +/* 0C465C 800C3A5C 022D7021 */ addu $t6, $s1, $t5 +/* 0C4660 800C3A60 91C70003 */ lbu $a3, 3($t6) +/* 0C4664 800C3A64 00000000 */ nop +/* 0C4668 800C3A68 AE47001C */ sw $a3, 0x1c($s2) +/* 0C466C 800C3A6C 8E780000 */ lw $t8, ($s3) +/* 0C4670 800C3A70 00000000 */ nop +/* 0C4674 800C3A74 0238C821 */ addu $t9, $s1, $t8 +/* 0C4678 800C3A78 93280004 */ lbu $t0, 4($t9) +/* 0C467C 800C3A7C 26310005 */ addiu $s1, $s1, 5 +/* 0C4680 800C3A80 AE480020 */ sw $t0, 0x20($s2) +/* 0C4684 800C3A84 AFAA0014 */ sw $t2, 0x14($sp) +/* 0C4688 800C3A88 0C031400 */ jal func_800C5000 +/* 0C468C 800C3A8C AFA80010 */ sw $t0, 0x10($sp) +/* 0C4690 800C3A90 8E6B0000 */ lw $t3, ($s3) +/* 0C4694 800C3A94 00000000 */ nop +/* 0C4698 800C3A98 01718021 */ addu $s0, $t3, $s1 +/* 0C469C 800C3A9C 92020000 */ lbu $v0, ($s0) +/* 0C46A0 800C3AA0 10000045 */ b .L800C3BB8 +/* 0C46A4 800C3AA4 28410003 */ slti $at, $v0, 3 +/* 0C46A8 800C3AA8 920C0001 */ lbu $t4, 1($s0) +/* 0C46AC 800C3AAC 00000000 */ nop +/* 0C46B0 800C3AB0 15800003 */ bnez $t4, .L800C3AC0 +/* 0C46B4 800C3AB4 00000000 */ nop +/* 0C46B8 800C3AB8 10000002 */ b .L800C3AC4 +/* 0C46BC 800C3ABC AE5E0024 */ sw $fp, 0x24($s2) +.L800C3AC0: +/* 0C46C0 800C3AC0 AE400024 */ sw $zero, 0x24($s2) +.L800C3AC4: +/* 0C46C4 800C3AC4 8E6D0000 */ lw $t5, ($s3) +/* 0C46C8 800C3AC8 26310002 */ addiu $s1, $s1, 2 +/* 0C46CC 800C3ACC 01B18021 */ addu $s0, $t5, $s1 +/* 0C46D0 800C3AD0 92020000 */ lbu $v0, ($s0) +/* 0C46D4 800C3AD4 10000038 */ b .L800C3BB8 +/* 0C46D8 800C3AD8 28410003 */ slti $at, $v0, 3 +/* 0C46DC 800C3ADC 920E0001 */ lbu $t6, 1($s0) +/* 0C46E0 800C3AE0 26310002 */ addiu $s1, $s1, 2 +/* 0C46E4 800C3AE4 AE4E0028 */ sw $t6, 0x28($s2) +/* 0C46E8 800C3AE8 8E6F0000 */ lw $t7, ($s3) +/* 0C46EC 800C3AEC 00000000 */ nop +/* 0C46F0 800C3AF0 01F18021 */ addu $s0, $t7, $s1 +/* 0C46F4 800C3AF4 92020000 */ lbu $v0, ($s0) +/* 0C46F8 800C3AF8 1000002F */ b .L800C3BB8 +/* 0C46FC 800C3AFC 28410003 */ slti $at, $v0, 3 +/* 0C4700 800C3B00 8E58002C */ lw $t8, 0x2c($s2) +/* 0C4704 800C3B04 92190001 */ lbu $t9, 1($s0) +/* 0C4708 800C3B08 26310002 */ addiu $s1, $s1, 2 +/* 0C470C 800C3B0C 03194021 */ addu $t0, $t8, $t9 +/* 0C4710 800C3B10 AE48002C */ sw $t0, 0x2c($s2) +/* 0C4714 800C3B14 8E690000 */ lw $t1, ($s3) +/* 0C4718 800C3B18 00000000 */ nop +/* 0C471C 800C3B1C 01318021 */ addu $s0, $t1, $s1 +/* 0C4720 800C3B20 92020000 */ lbu $v0, ($s0) +/* 0C4724 800C3B24 10000024 */ b .L800C3BB8 +/* 0C4728 800C3B28 28410003 */ slti $at, $v0, 3 +/* 0C472C 800C3B2C 920A0001 */ lbu $t2, 1($s0) +/* 0C4730 800C3B30 26310002 */ addiu $s1, $s1, 2 +/* 0C4734 800C3B34 AE4A0030 */ sw $t2, 0x30($s2) +/* 0C4738 800C3B38 8E6B0000 */ lw $t3, ($s3) +/* 0C473C 800C3B3C 00000000 */ nop +/* 0C4740 800C3B40 01718021 */ addu $s0, $t3, $s1 +/* 0C4744 800C3B44 92020000 */ lbu $v0, ($s0) +/* 0C4748 800C3B48 1000001B */ b .L800C3BB8 +/* 0C474C 800C3B4C 28410003 */ slti $at, $v0, 3 +/* 0C4750 800C3B50 828C0000 */ lb $t4, ($s4) +/* 0C4754 800C3B54 2404003C */ li $a0, 60 +/* 0C4758 800C3B58 15800007 */ bnez $t4, .L800C3B78 +/* 0C475C 800C3B5C 00000000 */ nop +/* 0C4760 800C3B60 920E0001 */ lbu $t6, 1($s0) +/* 0C4764 800C3B64 0C00322D */ jal func_8000C8B4 +/* 0C4768 800C3B68 A28E0000 */ sb $t6, ($s4) +/* 0C476C 800C3B6C 8E6F0000 */ lw $t7, ($s3) +/* 0C4770 800C3B70 A2E20000 */ sb $v0, ($s7) +/* 0C4774 800C3B74 01F18021 */ addu $s0, $t7, $s1 +.L800C3B78: +/* 0C4778 800C3B78 92020002 */ lbu $v0, 2($s0) +/* 0C477C 800C3B7C 26310002 */ addiu $s1, $s1, 2 +/* 0C4780 800C3B80 1000000C */ b .L800C3BB4 +/* 0C4784 800C3B84 26100002 */ addiu $s0, $s0, 2 +/* 0C4788 800C3B88 92180001 */ lbu $t8, 1($s0) +/* 0C478C 800C3B8C 26310002 */ addiu $s1, $s1, 2 +/* 0C4790 800C3B90 A2D80000 */ sb $t8, ($s6) +/* 0C4794 800C3B94 92020002 */ lbu $v0, 2($s0) +/* 0C4798 800C3B98 10000006 */ b .L800C3BB4 +/* 0C479C 800C3B9C 26100002 */ addiu $s0, $s0, 2 +/* 0C47A0 800C3BA0 92190001 */ lbu $t9, 1($s0) +/* 0C47A4 800C3BA4 26310002 */ addiu $s1, $s1, 2 +/* 0C47A8 800C3BA8 A2B90000 */ sb $t9, ($s5) +/* 0C47AC 800C3BAC 92020002 */ lbu $v0, 2($s0) +/* 0C47B0 800C3BB0 26100002 */ addiu $s0, $s0, 2 +.L800C3BB4: +/* 0C47B4 800C3BB4 28410003 */ slti $at, $v0, 3 +.L800C3BB8: +/* 0C47B8 800C3BB8 14200003 */ bnez $at, .L800C3BC8 +/* 0C47BC 800C3BBC 2841000D */ slti $at, $v0, 0xd +/* 0C47C0 800C3BC0 1420FF5C */ bnez $at, .L800C3934 +/* 0C47C4 800C3BC4 244FFFFD */ addiu $t7, $v0, -3 +.L800C3BC8: +/* 0C47C8 800C3BC8 8FBF0044 */ lw $ra, 0x44($sp) +/* 0C47CC 800C3BCC 02201025 */ move $v0, $s1 +/* 0C47D0 800C3BD0 8FB10024 */ lw $s1, 0x24($sp) +/* 0C47D4 800C3BD4 8FB00020 */ lw $s0, 0x20($sp) +/* 0C47D8 800C3BD8 8FB20028 */ lw $s2, 0x28($sp) +/* 0C47DC 800C3BDC 8FB3002C */ lw $s3, 0x2c($sp) +/* 0C47E0 800C3BE0 8FB40030 */ lw $s4, 0x30($sp) +/* 0C47E4 800C3BE4 8FB50034 */ lw $s5, 0x34($sp) +/* 0C47E8 800C3BE8 8FB60038 */ lw $s6, 0x38($sp) +/* 0C47EC 800C3BEC 8FB7003C */ lw $s7, 0x3c($sp) +/* 0C47F0 800C3BF0 8FBE0040 */ lw $fp, 0x40($sp) +/* 0C47F4 800C3BF4 03E00008 */ jr $ra +/* 0C47F8 800C3BF8 27BD0048 */ addiu $sp, $sp, 0x48 + +/* 0C47FC 800C3BFC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0B8920/func_800C3C00.s b/asm/non_matchings/unknown_0B8920/func_800C3C00.s new file mode 100644 index 00000000..038c5dfc --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C3C00.s @@ -0,0 +1,353 @@ +glabel func_800C3C00 +/* 0C4800 800C3C00 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C4804 800C3C04 AFBF0014 */ sw $ra, 0x14($sp) +/* 0C4808 800C3C08 0C01DB16 */ jal func_80076C58 +/* 0C480C 800C3C0C 2404002C */ li $a0, 44 +/* 0C4810 800C3C10 3C038013 */ lui $v1, %hi(D_8012A7E4) # $v1, 0x8013 +/* 0C4814 800C3C14 2463A7E4 */ addiu $v1, %lo(D_8012A7E4) # addiu $v1, $v1, -0x581c +/* 0C4818 800C3C18 AC620000 */ sw $v0, ($v1) +/* 0C481C 800C3C1C 8C4E0000 */ lw $t6, ($v0) +/* 0C4820 800C3C20 3C048013 */ lui $a0, %hi(D_8012A7E0) # $a0, 0x8013 +/* 0C4824 800C3C24 2484A7E0 */ addiu $a0, %lo(D_8012A7E0) # addiu $a0, $a0, -0x5820 +/* 0C4828 800C3C28 244F0004 */ addiu $t7, $v0, 4 +/* 0C482C 800C3C2C AC6F0000 */ sw $t7, ($v1) +/* 0C4830 800C3C30 00002825 */ move $a1, $zero +/* 0C4834 800C3C34 19C0000B */ blez $t6, .L800C3C64 +/* 0C4838 800C3C38 AC8E0000 */ sw $t6, ($a0) +/* 0C483C 800C3C3C 00001025 */ move $v0, $zero +.L800C3C40: +/* 0C4840 800C3C40 8C790000 */ lw $t9, ($v1) +/* 0C4844 800C3C44 24A50001 */ addiu $a1, $a1, 1 +/* 0C4848 800C3C48 03225821 */ addu $t3, $t9, $v0 +/* 0C484C 800C3C4C A1600028 */ sb $zero, 0x28($t3) +/* 0C4850 800C3C50 8C8C0000 */ lw $t4, ($a0) +/* 0C4854 800C3C54 24420400 */ addiu $v0, $v0, 0x400 +/* 0C4858 800C3C58 00AC082A */ slt $at, $a1, $t4 +/* 0C485C 800C3C5C 1420FFF8 */ bnez $at, .L800C3C40 +/* 0C4860 800C3C60 00000000 */ nop +.L800C3C64: +/* 0C4864 800C3C64 3C05FFFF */ lui $a1, %hi(D_FFFF0028) # $a1, 0xffff +/* 0C4868 800C3C68 34A500FF */ ori $a1, (0xFFFF00FF & 0xFFFF) # ori $a1, $a1, 0xff +/* 0C486C 800C3C6C 0C01C327 */ jal func_80070C9C +/* 0C4870 800C3C70 24040940 */ li $a0, 2368 +/* 0C4874 800C3C74 3C068013 */ lui $a2, %hi(D_8012A7E8) # $a2, 0x8013 +/* 0C4878 800C3C78 24C6A7E8 */ addiu $a2, %lo(D_8012A7E8) # addiu $a2, $a2, -0x5818 +/* 0C487C 800C3C7C 3C038013 */ lui $v1, %hi(D_8012A7EC) # $v1, 0x8013 +/* 0C4880 800C3C80 244E0140 */ addiu $t6, $v0, 0x140 +/* 0C4884 800C3C84 2463A7EC */ addiu $v1, %lo(D_8012A7EC) # addiu $v1, $v1, -0x5814 +/* 0C4888 800C3C88 ACC20000 */ sw $v0, ($a2) +/* 0C488C 800C3C8C AC6E0000 */ sw $t6, ($v1) +/* 0C4890 800C3C90 2402013F */ li $v0, 319 +/* 0C4894 800C3C94 00002825 */ move $a1, $zero +/* 0C4898 800C3C98 240A4000 */ li $t2, 16384 +/* 0C489C 800C3C9C 240900F0 */ li $t1, 240 +/* 0C48A0 800C3CA0 24080140 */ li $t0, 320 +/* 0C48A4 800C3CA4 240700EF */ li $a3, 239 +/* 0C48A8 800C3CA8 240400FF */ li $a0, 255 +.L800C3CAC: +/* 0C48AC 800C3CAC 8CCF0000 */ lw $t7, ($a2) +/* 0C48B0 800C3CB0 00000000 */ nop +/* 0C48B4 800C3CB4 01E5C021 */ addu $t8, $t7, $a1 +/* 0C48B8 800C3CB8 A7000000 */ sh $zero, ($t8) +/* 0C48BC 800C3CBC 8CD90000 */ lw $t9, ($a2) +/* 0C48C0 800C3CC0 00000000 */ nop +/* 0C48C4 800C3CC4 03255821 */ addu $t3, $t9, $a1 +/* 0C48C8 800C3CC8 A5600002 */ sh $zero, 2($t3) +/* 0C48CC 800C3CCC 8CCC0000 */ lw $t4, ($a2) +/* 0C48D0 800C3CD0 00000000 */ nop +/* 0C48D4 800C3CD4 01856821 */ addu $t5, $t4, $a1 +/* 0C48D8 800C3CD8 A5A00004 */ sh $zero, 4($t5) +/* 0C48DC 800C3CDC 8CCE0000 */ lw $t6, ($a2) +/* 0C48E0 800C3CE0 00000000 */ nop +/* 0C48E4 800C3CE4 01C57821 */ addu $t7, $t6, $a1 +/* 0C48E8 800C3CE8 A5E00006 */ sh $zero, 6($t7) +/* 0C48EC 800C3CEC 8CD80000 */ lw $t8, ($a2) +/* 0C48F0 800C3CF0 00000000 */ nop +/* 0C48F4 800C3CF4 0305C821 */ addu $t9, $t8, $a1 +/* 0C48F8 800C3CF8 A7220008 */ sh $v0, 8($t9) +/* 0C48FC 800C3CFC 8CCB0000 */ lw $t3, ($a2) +/* 0C4900 800C3D00 00000000 */ nop +/* 0C4904 800C3D04 01656021 */ addu $t4, $t3, $a1 +/* 0C4908 800C3D08 A587000A */ sh $a3, 0xa($t4) +/* 0C490C 800C3D0C 8CCD0000 */ lw $t5, ($a2) +/* 0C4910 800C3D10 00000000 */ nop +/* 0C4914 800C3D14 01A57021 */ addu $t6, $t5, $a1 +/* 0C4918 800C3D18 A5C8000C */ sh $t0, 0xc($t6) +/* 0C491C 800C3D1C 8CCF0000 */ lw $t7, ($a2) +/* 0C4920 800C3D20 00000000 */ nop +/* 0C4924 800C3D24 01E5C021 */ addu $t8, $t7, $a1 +/* 0C4928 800C3D28 A709000E */ sh $t1, 0xe($t8) +/* 0C492C 800C3D2C 8CD90000 */ lw $t9, ($a2) +/* 0C4930 800C3D30 00000000 */ nop +/* 0C4934 800C3D34 03255821 */ addu $t3, $t9, $a1 +/* 0C4938 800C3D38 A1640010 */ sb $a0, 0x10($t3) +/* 0C493C 800C3D3C 8CCC0000 */ lw $t4, ($a2) +/* 0C4940 800C3D40 00000000 */ nop +/* 0C4944 800C3D44 01856821 */ addu $t5, $t4, $a1 +/* 0C4948 800C3D48 A1A40011 */ sb $a0, 0x11($t5) +/* 0C494C 800C3D4C 8CCE0000 */ lw $t6, ($a2) +/* 0C4950 800C3D50 00000000 */ nop +/* 0C4954 800C3D54 01C57821 */ addu $t7, $t6, $a1 +/* 0C4958 800C3D58 A1E40012 */ sb $a0, 0x12($t7) +/* 0C495C 800C3D5C 8CD80000 */ lw $t8, ($a2) +/* 0C4960 800C3D60 00000000 */ nop +/* 0C4964 800C3D64 0305C821 */ addu $t9, $t8, $a1 +/* 0C4968 800C3D68 A3200013 */ sb $zero, 0x13($t9) +/* 0C496C 800C3D6C 8CCB0000 */ lw $t3, ($a2) +/* 0C4970 800C3D70 00000000 */ nop +/* 0C4974 800C3D74 01656021 */ addu $t4, $t3, $a1 +/* 0C4978 800C3D78 A1840014 */ sb $a0, 0x14($t4) +/* 0C497C 800C3D7C 8CCD0000 */ lw $t5, ($a2) +/* 0C4980 800C3D80 00000000 */ nop +/* 0C4984 800C3D84 01A57021 */ addu $t6, $t5, $a1 +/* 0C4988 800C3D88 A1C40015 */ sb $a0, 0x15($t6) +/* 0C498C 800C3D8C 8CCF0000 */ lw $t7, ($a2) +/* 0C4990 800C3D90 00000000 */ nop +/* 0C4994 800C3D94 01E5C021 */ addu $t8, $t7, $a1 +/* 0C4998 800C3D98 A3040016 */ sb $a0, 0x16($t8) +/* 0C499C 800C3D9C 8CD90000 */ lw $t9, ($a2) +/* 0C49A0 800C3DA0 00000000 */ nop +/* 0C49A4 800C3DA4 03255821 */ addu $t3, $t9, $a1 +/* 0C49A8 800C3DA8 A1600017 */ sb $zero, 0x17($t3) +/* 0C49AC 800C3DAC 8CCC0000 */ lw $t4, ($a2) +/* 0C49B0 800C3DB0 00000000 */ nop +/* 0C49B4 800C3DB4 01856821 */ addu $t5, $t4, $a1 +/* 0C49B8 800C3DB8 A1A40018 */ sb $a0, 0x18($t5) +/* 0C49BC 800C3DBC 8CCE0000 */ lw $t6, ($a2) +/* 0C49C0 800C3DC0 00000000 */ nop +/* 0C49C4 800C3DC4 01C57821 */ addu $t7, $t6, $a1 +/* 0C49C8 800C3DC8 A1E40019 */ sb $a0, 0x19($t7) +/* 0C49CC 800C3DCC 8CD80000 */ lw $t8, ($a2) +/* 0C49D0 800C3DD0 00000000 */ nop +/* 0C49D4 800C3DD4 0305C821 */ addu $t9, $t8, $a1 +/* 0C49D8 800C3DD8 A324001A */ sb $a0, 0x1a($t9) +/* 0C49DC 800C3DDC 8CCB0000 */ lw $t3, ($a2) +/* 0C49E0 800C3DE0 00000000 */ nop +/* 0C49E4 800C3DE4 01656021 */ addu $t4, $t3, $a1 +/* 0C49E8 800C3DE8 A180001B */ sb $zero, 0x1b($t4) +/* 0C49EC 800C3DEC 8CCD0000 */ lw $t5, ($a2) +/* 0C49F0 800C3DF0 00000000 */ nop +/* 0C49F4 800C3DF4 01A57021 */ addu $t6, $t5, $a1 +/* 0C49F8 800C3DF8 A1C4001C */ sb $a0, 0x1c($t6) +/* 0C49FC 800C3DFC 8CCF0000 */ lw $t7, ($a2) +/* 0C4A00 800C3E00 00000000 */ nop +/* 0C4A04 800C3E04 01E5C021 */ addu $t8, $t7, $a1 +/* 0C4A08 800C3E08 10A00006 */ beqz $a1, .L800C3E24 +/* 0C4A0C 800C3E0C A304001D */ sb $a0, 0x1d($t8) +/* 0C4A10 800C3E10 8CD90000 */ lw $t9, ($a2) +/* 0C4A14 800C3E14 00000000 */ nop +/* 0C4A18 800C3E18 03255821 */ addu $t3, $t9, $a1 +/* 0C4A1C 800C3E1C 10000005 */ b .L800C3E34 +/* 0C4A20 800C3E20 A56A001E */ sh $t2, 0x1e($t3) +.L800C3E24: +/* 0C4A24 800C3E24 8CCC0000 */ lw $t4, ($a2) +/* 0C4A28 800C3E28 00000000 */ nop +/* 0C4A2C 800C3E2C 01856821 */ addu $t5, $t4, $a1 +/* 0C4A30 800C3E30 A5A0001E */ sh $zero, 0x1e($t5) +.L800C3E34: +/* 0C4A34 800C3E34 8CCE0000 */ lw $t6, ($a2) +/* 0C4A38 800C3E38 00000000 */ nop +/* 0C4A3C 800C3E3C 01C57821 */ addu $t7, $t6, $a1 +/* 0C4A40 800C3E40 A5E00020 */ sh $zero, 0x20($t7) +/* 0C4A44 800C3E44 8CD80000 */ lw $t8, ($a2) +/* 0C4A48 800C3E48 00000000 */ nop +/* 0C4A4C 800C3E4C 0305C821 */ addu $t9, $t8, $a1 +/* 0C4A50 800C3E50 A7200022 */ sh $zero, 0x22($t9) +/* 0C4A54 800C3E54 8CCB0000 */ lw $t3, ($a2) +/* 0C4A58 800C3E58 00000000 */ nop +/* 0C4A5C 800C3E5C 01656021 */ addu $t4, $t3, $a1 +/* 0C4A60 800C3E60 24A50028 */ addiu $a1, %lo(D_FFFF0028) # addiu $a1, $a1, 0x28 +/* 0C4A64 800C3E64 28A10140 */ slti $at, $a1, 0x140 +/* 0C4A68 800C3E68 1420FF90 */ bnez $at, .L800C3CAC +/* 0C4A6C 800C3E6C AD800024 */ sw $zero, 0x24($t4) +/* 0C4A70 800C3E70 00001025 */ move $v0, $zero +/* 0C4A74 800C3E74 24050800 */ li $a1, 2048 +.L800C3E78: +/* 0C4A78 800C3E78 8C6D0000 */ lw $t5, ($v1) +/* 0C4A7C 800C3E7C 00000000 */ nop +/* 0C4A80 800C3E80 01A27021 */ addu $t6, $t5, $v0 +/* 0C4A84 800C3E84 A1C40001 */ sb $a0, 1($t6) +/* 0C4A88 800C3E88 8C6F0000 */ lw $t7, ($v1) +/* 0C4A8C 800C3E8C 00000000 */ nop +/* 0C4A90 800C3E90 01E2C021 */ addu $t8, $t7, $v0 +/* 0C4A94 800C3E94 AF000004 */ sw $zero, 4($t8) +/* 0C4A98 800C3E98 8C790000 */ lw $t9, ($v1) +/* 0C4A9C 800C3E9C 00000000 */ nop +/* 0C4AA0 800C3EA0 03225821 */ addu $t3, $t9, $v0 +/* 0C4AA4 800C3EA4 A1640010 */ sb $a0, 0x10($t3) +/* 0C4AA8 800C3EA8 8C6C0000 */ lw $t4, ($v1) +/* 0C4AAC 800C3EAC 00000000 */ nop +/* 0C4AB0 800C3EB0 01826821 */ addu $t5, $t4, $v0 +/* 0C4AB4 800C3EB4 A1A40011 */ sb $a0, 0x11($t5) +/* 0C4AB8 800C3EB8 8C6E0000 */ lw $t6, ($v1) +/* 0C4ABC 800C3EBC 00000000 */ nop +/* 0C4AC0 800C3EC0 01C27821 */ addu $t7, $t6, $v0 +/* 0C4AC4 800C3EC4 A1E40012 */ sb $a0, 0x12($t7) +/* 0C4AC8 800C3EC8 8C780000 */ lw $t8, ($v1) +/* 0C4ACC 800C3ECC 00000000 */ nop +/* 0C4AD0 800C3ED0 0302C821 */ addu $t9, $t8, $v0 +/* 0C4AD4 800C3ED4 A3200013 */ sb $zero, 0x13($t9) +/* 0C4AD8 800C3ED8 8C6B0000 */ lw $t3, ($v1) +/* 0C4ADC 800C3EDC 00000000 */ nop +/* 0C4AE0 800C3EE0 01626021 */ addu $t4, $t3, $v0 +/* 0C4AE4 800C3EE4 A1840014 */ sb $a0, 0x14($t4) +/* 0C4AE8 800C3EE8 8C6D0000 */ lw $t5, ($v1) +/* 0C4AEC 800C3EEC 00000000 */ nop +/* 0C4AF0 800C3EF0 01A27021 */ addu $t6, $t5, $v0 +/* 0C4AF4 800C3EF4 A1C40015 */ sb $a0, 0x15($t6) +/* 0C4AF8 800C3EF8 8C6F0000 */ lw $t7, ($v1) +/* 0C4AFC 800C3EFC 00000000 */ nop +/* 0C4B00 800C3F00 01E2C021 */ addu $t8, $t7, $v0 +/* 0C4B04 800C3F04 A3040016 */ sb $a0, 0x16($t8) +/* 0C4B08 800C3F08 8C790000 */ lw $t9, ($v1) +/* 0C4B0C 800C3F0C 00000000 */ nop +/* 0C4B10 800C3F10 03225821 */ addu $t3, $t9, $v0 +/* 0C4B14 800C3F14 A1600017 */ sb $zero, 0x17($t3) +/* 0C4B18 800C3F18 8C6C0000 */ lw $t4, ($v1) +/* 0C4B1C 800C3F1C 00000000 */ nop +/* 0C4B20 800C3F20 01826821 */ addu $t5, $t4, $v0 +/* 0C4B24 800C3F24 ADA0001C */ sw $zero, 0x1c($t5) +/* 0C4B28 800C3F28 8C6E0000 */ lw $t6, ($v1) +/* 0C4B2C 800C3F2C 00000000 */ nop +/* 0C4B30 800C3F30 01C27821 */ addu $t7, $t6, $v0 +/* 0C4B34 800C3F34 A1E40021 */ sb $a0, 0x21($t7) +/* 0C4B38 800C3F38 8C780000 */ lw $t8, ($v1) +/* 0C4B3C 800C3F3C 00000000 */ nop +/* 0C4B40 800C3F40 0302C821 */ addu $t9, $t8, $v0 +/* 0C4B44 800C3F44 AF200024 */ sw $zero, 0x24($t9) +/* 0C4B48 800C3F48 8C6B0000 */ lw $t3, ($v1) +/* 0C4B4C 800C3F4C 00000000 */ nop +/* 0C4B50 800C3F50 01626021 */ addu $t4, $t3, $v0 +/* 0C4B54 800C3F54 A1840030 */ sb $a0, 0x30($t4) +/* 0C4B58 800C3F58 8C6D0000 */ lw $t5, ($v1) +/* 0C4B5C 800C3F5C 00000000 */ nop +/* 0C4B60 800C3F60 01A27021 */ addu $t6, $t5, $v0 +/* 0C4B64 800C3F64 A1C40031 */ sb $a0, 0x31($t6) +/* 0C4B68 800C3F68 8C6F0000 */ lw $t7, ($v1) +/* 0C4B6C 800C3F6C 00000000 */ nop +/* 0C4B70 800C3F70 01E2C021 */ addu $t8, $t7, $v0 +/* 0C4B74 800C3F74 A3040032 */ sb $a0, 0x32($t8) +/* 0C4B78 800C3F78 8C790000 */ lw $t9, ($v1) +/* 0C4B7C 800C3F7C 00000000 */ nop +/* 0C4B80 800C3F80 03225821 */ addu $t3, $t9, $v0 +/* 0C4B84 800C3F84 A1600033 */ sb $zero, 0x33($t3) +/* 0C4B88 800C3F88 8C6C0000 */ lw $t4, ($v1) +/* 0C4B8C 800C3F8C 00000000 */ nop +/* 0C4B90 800C3F90 01826821 */ addu $t5, $t4, $v0 +/* 0C4B94 800C3F94 A1A40034 */ sb $a0, 0x34($t5) +/* 0C4B98 800C3F98 8C6E0000 */ lw $t6, ($v1) +/* 0C4B9C 800C3F9C 00000000 */ nop +/* 0C4BA0 800C3FA0 01C27821 */ addu $t7, $t6, $v0 +/* 0C4BA4 800C3FA4 A1E40035 */ sb $a0, 0x35($t7) +/* 0C4BA8 800C3FA8 8C780000 */ lw $t8, ($v1) +/* 0C4BAC 800C3FAC 00000000 */ nop +/* 0C4BB0 800C3FB0 0302C821 */ addu $t9, $t8, $v0 +/* 0C4BB4 800C3FB4 A3240036 */ sb $a0, 0x36($t9) +/* 0C4BB8 800C3FB8 8C6B0000 */ lw $t3, ($v1) +/* 0C4BBC 800C3FBC 00000000 */ nop +/* 0C4BC0 800C3FC0 01626021 */ addu $t4, $t3, $v0 +/* 0C4BC4 800C3FC4 A1800037 */ sb $zero, 0x37($t4) +/* 0C4BC8 800C3FC8 8C6D0000 */ lw $t5, ($v1) +/* 0C4BCC 800C3FCC 00000000 */ nop +/* 0C4BD0 800C3FD0 01A27021 */ addu $t6, $t5, $v0 +/* 0C4BD4 800C3FD4 ADC0003C */ sw $zero, 0x3c($t6) +/* 0C4BD8 800C3FD8 8C6F0000 */ lw $t7, ($v1) +/* 0C4BDC 800C3FDC 00000000 */ nop +/* 0C4BE0 800C3FE0 01E2C021 */ addu $t8, $t7, $v0 +/* 0C4BE4 800C3FE4 A3040041 */ sb $a0, 0x41($t8) +/* 0C4BE8 800C3FE8 8C790000 */ lw $t9, ($v1) +/* 0C4BEC 800C3FEC 00000000 */ nop +/* 0C4BF0 800C3FF0 03225821 */ addu $t3, $t9, $v0 +/* 0C4BF4 800C3FF4 AD600044 */ sw $zero, 0x44($t3) +/* 0C4BF8 800C3FF8 8C6C0000 */ lw $t4, ($v1) +/* 0C4BFC 800C3FFC 00000000 */ nop +/* 0C4C00 800C4000 01826821 */ addu $t5, $t4, $v0 +/* 0C4C04 800C4004 A1A40050 */ sb $a0, 0x50($t5) +/* 0C4C08 800C4008 8C6E0000 */ lw $t6, ($v1) +/* 0C4C0C 800C400C 00000000 */ nop +/* 0C4C10 800C4010 01C27821 */ addu $t7, $t6, $v0 +/* 0C4C14 800C4014 A1E40051 */ sb $a0, 0x51($t7) +/* 0C4C18 800C4018 8C780000 */ lw $t8, ($v1) +/* 0C4C1C 800C401C 00000000 */ nop +/* 0C4C20 800C4020 0302C821 */ addu $t9, $t8, $v0 +/* 0C4C24 800C4024 A3240052 */ sb $a0, 0x52($t9) +/* 0C4C28 800C4028 8C6B0000 */ lw $t3, ($v1) +/* 0C4C2C 800C402C 00000000 */ nop +/* 0C4C30 800C4030 01626021 */ addu $t4, $t3, $v0 +/* 0C4C34 800C4034 A1800053 */ sb $zero, 0x53($t4) +/* 0C4C38 800C4038 8C6D0000 */ lw $t5, ($v1) +/* 0C4C3C 800C403C 00000000 */ nop +/* 0C4C40 800C4040 01A27021 */ addu $t6, $t5, $v0 +/* 0C4C44 800C4044 A1C40054 */ sb $a0, 0x54($t6) +/* 0C4C48 800C4048 8C6F0000 */ lw $t7, ($v1) +/* 0C4C4C 800C404C 00000000 */ nop +/* 0C4C50 800C4050 01E2C021 */ addu $t8, $t7, $v0 +/* 0C4C54 800C4054 A3040055 */ sb $a0, 0x55($t8) +/* 0C4C58 800C4058 8C790000 */ lw $t9, ($v1) +/* 0C4C5C 800C405C 00000000 */ nop +/* 0C4C60 800C4060 03225821 */ addu $t3, $t9, $v0 +/* 0C4C64 800C4064 A1640056 */ sb $a0, 0x56($t3) +/* 0C4C68 800C4068 8C6C0000 */ lw $t4, ($v1) +/* 0C4C6C 800C406C 00000000 */ nop +/* 0C4C70 800C4070 01826821 */ addu $t5, $t4, $v0 +/* 0C4C74 800C4074 A1A00057 */ sb $zero, 0x57($t5) +/* 0C4C78 800C4078 8C6E0000 */ lw $t6, ($v1) +/* 0C4C7C 800C407C 00000000 */ nop +/* 0C4C80 800C4080 01C27821 */ addu $t7, $t6, $v0 +/* 0C4C84 800C4084 ADE0005C */ sw $zero, 0x5c($t7) +/* 0C4C88 800C4088 8C780000 */ lw $t8, ($v1) +/* 0C4C8C 800C408C 00000000 */ nop +/* 0C4C90 800C4090 0302C821 */ addu $t9, $t8, $v0 +/* 0C4C94 800C4094 A3240061 */ sb $a0, 0x61($t9) +/* 0C4C98 800C4098 8C6B0000 */ lw $t3, ($v1) +/* 0C4C9C 800C409C 00000000 */ nop +/* 0C4CA0 800C40A0 01626021 */ addu $t4, $t3, $v0 +/* 0C4CA4 800C40A4 AD800064 */ sw $zero, 0x64($t4) +/* 0C4CA8 800C40A8 8C6D0000 */ lw $t5, ($v1) +/* 0C4CAC 800C40AC 00000000 */ nop +/* 0C4CB0 800C40B0 01A27021 */ addu $t6, $t5, $v0 +/* 0C4CB4 800C40B4 A1C40070 */ sb $a0, 0x70($t6) +/* 0C4CB8 800C40B8 8C6F0000 */ lw $t7, ($v1) +/* 0C4CBC 800C40BC 00000000 */ nop +/* 0C4CC0 800C40C0 01E2C021 */ addu $t8, $t7, $v0 +/* 0C4CC4 800C40C4 A3040071 */ sb $a0, 0x71($t8) +/* 0C4CC8 800C40C8 8C790000 */ lw $t9, ($v1) +/* 0C4CCC 800C40CC 00000000 */ nop +/* 0C4CD0 800C40D0 03225821 */ addu $t3, $t9, $v0 +/* 0C4CD4 800C40D4 A1640072 */ sb $a0, 0x72($t3) +/* 0C4CD8 800C40D8 8C6C0000 */ lw $t4, ($v1) +/* 0C4CDC 800C40DC 00000000 */ nop +/* 0C4CE0 800C40E0 01826821 */ addu $t5, $t4, $v0 +/* 0C4CE4 800C40E4 A1A00073 */ sb $zero, 0x73($t5) +/* 0C4CE8 800C40E8 8C6E0000 */ lw $t6, ($v1) +/* 0C4CEC 800C40EC 00000000 */ nop +/* 0C4CF0 800C40F0 01C27821 */ addu $t7, $t6, $v0 +/* 0C4CF4 800C40F4 A1E40074 */ sb $a0, 0x74($t7) +/* 0C4CF8 800C40F8 8C780000 */ lw $t8, ($v1) +/* 0C4CFC 800C40FC 00000000 */ nop +/* 0C4D00 800C4100 0302C821 */ addu $t9, $t8, $v0 +/* 0C4D04 800C4104 A3240075 */ sb $a0, 0x75($t9) +/* 0C4D08 800C4108 8C6B0000 */ lw $t3, ($v1) +/* 0C4D0C 800C410C 00000000 */ nop +/* 0C4D10 800C4110 01626021 */ addu $t4, $t3, $v0 +/* 0C4D14 800C4114 A1840076 */ sb $a0, 0x76($t4) +/* 0C4D18 800C4118 8C6D0000 */ lw $t5, ($v1) +/* 0C4D1C 800C411C 00000000 */ nop +/* 0C4D20 800C4120 01A27021 */ addu $t6, $t5, $v0 +/* 0C4D24 800C4124 A1C00077 */ sb $zero, 0x77($t6) +/* 0C4D28 800C4128 8C6F0000 */ lw $t7, ($v1) +/* 0C4D2C 800C412C 00000000 */ nop +/* 0C4D30 800C4130 01E2C021 */ addu $t8, $t7, $v0 +/* 0C4D34 800C4134 24420080 */ addiu $v0, $v0, 0x80 +/* 0C4D38 800C4138 1445FF4F */ bne $v0, $a1, .L800C3E78 +/* 0C4D3C 800C413C AF00007C */ sw $zero, 0x7c($t8) +/* 0C4D40 800C4140 0C03105C */ jal func_800C4170 +/* 0C4D44 800C4144 00002025 */ move $a0, $zero +/* 0C4D48 800C4148 0C03105C */ jal func_800C4170 +/* 0C4D4C 800C414C 24040001 */ li $a0, 1 +/* 0C4D50 800C4150 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C4D54 800C4154 3C018013 */ lui $at, %hi(D_8012A7F0) # $at, 0x8013 +/* 0C4D58 800C4158 AC20A7F0 */ sw $zero, %lo(D_8012A7F0)($at) +/* 0C4D5C 800C415C 03E00008 */ jr $ra +/* 0C4D60 800C4160 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C4164.s b/asm/non_matchings/unknown_0B8920/func_800C4164.s new file mode 100644 index 00000000..aaa43610 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C4164.s @@ -0,0 +1,5 @@ +glabel func_800C4164 +/* 0C4D64 800C4164 3C018013 */ lui $at, 0x8013 +/* 0C4D68 800C4168 03E00008 */ jr $ra +/* 0C4D6C 800C416C AC24A7F0 */ sw $a0, -0x5810($at) + diff --git a/asm/non_matchings/unknown_0B8920/func_800C4170.s b/asm/non_matchings/unknown_0B8920/func_800C4170.s new file mode 100644 index 00000000..97010dfd --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C4170.s @@ -0,0 +1,51 @@ +glabel func_800C4170 +/* 0C4D70 800C4170 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0C4D74 800C4174 3C0E8013 */ lui $t6, %hi(D_8012A7E0) # $t6, 0x8013 +/* 0C4D78 800C4178 8DCEA7E0 */ lw $t6, %lo(D_8012A7E0)($t6) +/* 0C4D7C 800C417C AFBF0024 */ sw $ra, 0x24($sp) +/* 0C4D80 800C4180 008E082A */ slt $at, $a0, $t6 +/* 0C4D84 800C4184 AFB30020 */ sw $s3, 0x20($sp) +/* 0C4D88 800C4188 AFB2001C */ sw $s2, 0x1c($sp) +/* 0C4D8C 800C418C AFB10018 */ sw $s1, 0x18($sp) +/* 0C4D90 800C4190 1020001F */ beqz $at, .L800C4210 +/* 0C4D94 800C4194 AFB00014 */ sw $s0, 0x14($sp) +/* 0C4D98 800C4198 3C188013 */ lui $t8, %hi(D_8012A7E4) # $t8, 0x8013 +/* 0C4D9C 800C419C 8F18A7E4 */ lw $t8, %lo(D_8012A7E4)($t8) +/* 0C4DA0 800C41A0 00047A80 */ sll $t7, $a0, 0xa +/* 0C4DA4 800C41A4 01F81021 */ addu $v0, $t7, $t8 +/* 0C4DA8 800C41A8 90590028 */ lbu $t9, 0x28($v0) +/* 0C4DAC 800C41AC 24010001 */ li $at, 1 +/* 0C4DB0 800C41B0 27280001 */ addiu $t0, $t9, 1 +/* 0C4DB4 800C41B4 310900FF */ andi $t1, $t0, 0xff +/* 0C4DB8 800C41B8 15210015 */ bne $t1, $at, .L800C4210 +/* 0C4DBC 800C41BC A0480028 */ sb $t0, 0x28($v0) +/* 0C4DC0 800C41C0 844A0040 */ lh $t2, 0x40($v0) +/* 0C4DC4 800C41C4 2413FFFF */ li $s3, -1 +/* 0C4DC8 800C41C8 126A0011 */ beq $s3, $t2, .L800C4210 +/* 0C4DCC 800C41CC 00008040 */ sll $s0, $zero, 1 +/* 0C4DD0 800C41D0 00508821 */ addu $s1, $v0, $s0 +/* 0C4DD4 800C41D4 00005880 */ sll $t3, $zero, 2 +/* 0C4DD8 800C41D8 86240040 */ lh $a0, 0x40($s1) +/* 0C4DDC 800C41DC 004B9021 */ addu $s2, $v0, $t3 +.L800C41E0: +/* 0C4DE0 800C41E0 0C01EB9D */ jal func_8007AE74 +/* 0C4DE4 800C41E4 00000000 */ nop +/* 0C4DE8 800C41E8 26100002 */ addiu $s0, $s0, 2 +/* 0C4DEC 800C41EC 2A010040 */ slti $at, $s0, 0x40 +/* 0C4DF0 800C41F0 AE420080 */ sw $v0, 0x80($s2) +/* 0C4DF4 800C41F4 26310002 */ addiu $s1, $s1, 2 +/* 0C4DF8 800C41F8 10200005 */ beqz $at, .L800C4210 +/* 0C4DFC 800C41FC 26520004 */ addiu $s2, $s2, 4 +/* 0C4E00 800C4200 86240040 */ lh $a0, 0x40($s1) +/* 0C4E04 800C4204 00000000 */ nop +/* 0C4E08 800C4208 1664FFF5 */ bne $s3, $a0, .L800C41E0 +/* 0C4E0C 800C420C 00000000 */ nop +.L800C4210: +/* 0C4E10 800C4210 8FBF0024 */ lw $ra, 0x24($sp) +/* 0C4E14 800C4214 8FB00014 */ lw $s0, 0x14($sp) +/* 0C4E18 800C4218 8FB10018 */ lw $s1, 0x18($sp) +/* 0C4E1C 800C421C 8FB2001C */ lw $s2, 0x1c($sp) +/* 0C4E20 800C4220 8FB30020 */ lw $s3, 0x20($sp) +/* 0C4E24 800C4224 03E00008 */ jr $ra +/* 0C4E28 800C4228 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C422C.s b/asm/non_matchings/unknown_0B8920/func_800C422C.s new file mode 100644 index 00000000..f6d78f75 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C422C.s @@ -0,0 +1,52 @@ +glabel func_800C422C +/* 0C4E2C 800C422C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0C4E30 800C4230 3C0E8013 */ lui $t6, %hi(D_8012A7E0) # $t6, 0x8013 +/* 0C4E34 800C4234 8DCEA7E0 */ lw $t6, %lo(D_8012A7E0)($t6) +/* 0C4E38 800C4238 AFBF0024 */ sw $ra, 0x24($sp) +/* 0C4E3C 800C423C 008E082A */ slt $at, $a0, $t6 +/* 0C4E40 800C4240 AFB30020 */ sw $s3, 0x20($sp) +/* 0C4E44 800C4244 AFB2001C */ sw $s2, 0x1c($sp) +/* 0C4E48 800C4248 AFB10018 */ sw $s1, 0x18($sp) +/* 0C4E4C 800C424C 10200020 */ beqz $at, .L800C42D0 +/* 0C4E50 800C4250 AFB00014 */ sw $s0, 0x14($sp) +/* 0C4E54 800C4254 3C188013 */ lui $t8, %hi(D_8012A7E4) # $t8, 0x8013 +/* 0C4E58 800C4258 8F18A7E4 */ lw $t8, %lo(D_8012A7E4)($t8) +/* 0C4E5C 800C425C 00047A80 */ sll $t7, $a0, 0xa +/* 0C4E60 800C4260 01F89021 */ addu $s2, $t7, $t8 +/* 0C4E64 800C4264 92420028 */ lbu $v0, 0x28($s2) +/* 0C4E68 800C4268 00000000 */ nop +/* 0C4E6C 800C426C 18400018 */ blez $v0, .L800C42D0 +/* 0C4E70 800C4270 2459FFFF */ addiu $t9, $v0, -1 +/* 0C4E74 800C4274 332800FF */ andi $t0, $t9, 0xff +/* 0C4E78 800C4278 15000015 */ bnez $t0, .L800C42D0 +/* 0C4E7C 800C427C A2590028 */ sb $t9, 0x28($s2) +/* 0C4E80 800C4280 86490040 */ lh $t1, 0x40($s2) +/* 0C4E84 800C4284 2413FFFF */ li $s3, -1 +/* 0C4E88 800C4288 12690011 */ beq $s3, $t1, .L800C42D0 +/* 0C4E8C 800C428C 00008825 */ move $s1, $zero +/* 0C4E90 800C4290 00005080 */ sll $t2, $zero, 2 +/* 0C4E94 800C4294 024A8021 */ addu $s0, $s2, $t2 +.L800C4298: +/* 0C4E98 800C4298 8E040080 */ lw $a0, 0x80($s0) +/* 0C4E9C 800C429C 0C01ECAF */ jal func_8007B2BC +/* 0C4EA0 800C42A0 00000000 */ nop +/* 0C4EA4 800C42A4 26310001 */ addiu $s1, $s1, 1 +/* 0C4EA8 800C42A8 2A210020 */ slti $at, $s1, 0x20 +/* 0C4EAC 800C42AC AE000080 */ sw $zero, 0x80($s0) +/* 0C4EB0 800C42B0 10200007 */ beqz $at, .L800C42D0 +/* 0C4EB4 800C42B4 26100004 */ addiu $s0, $s0, 4 +/* 0C4EB8 800C42B8 00115840 */ sll $t3, $s1, 1 +/* 0C4EBC 800C42BC 024B6021 */ addu $t4, $s2, $t3 +/* 0C4EC0 800C42C0 858D0040 */ lh $t5, 0x40($t4) +/* 0C4EC4 800C42C4 00000000 */ nop +/* 0C4EC8 800C42C8 166DFFF3 */ bne $s3, $t5, .L800C4298 +/* 0C4ECC 800C42CC 00000000 */ nop +.L800C42D0: +/* 0C4ED0 800C42D0 8FBF0024 */ lw $ra, 0x24($sp) +/* 0C4ED4 800C42D4 8FB00014 */ lw $s0, 0x14($sp) +/* 0C4ED8 800C42D8 8FB10018 */ lw $s1, 0x18($sp) +/* 0C4EDC 800C42DC 8FB2001C */ lw $s2, 0x1c($sp) +/* 0C4EE0 800C42E0 8FB30020 */ lw $s3, 0x20($sp) +/* 0C4EE4 800C42E4 03E00008 */ jr $ra +/* 0C4EE8 800C42E8 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C42EC.s b/asm/non_matchings/unknown_0B8920/func_800C42EC.s new file mode 100644 index 00000000..4c151632 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C42EC.s @@ -0,0 +1,44 @@ +glabel func_800C42EC +/* 0C4EEC 800C42EC 3C0E8013 */ lui $t6, %hi(D_8012A7E0) # $t6, 0x8013 +/* 0C4EF0 800C42F0 8DCEA7E0 */ lw $t6, %lo(D_8012A7E0)($t6) +/* 0C4EF4 800C42F4 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 +/* 0C4EF8 800C42F8 008E082A */ slt $at, $a0, $t6 +/* 0C4EFC 800C42FC 10200004 */ beqz $at, .L800C4310 +/* 0C4F00 800C4300 00000000 */ nop +/* 0C4F04 800C4304 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) +/* 0C4F08 800C4308 00000000 */ nop +/* 0C4F0C 800C430C A1E4001D */ sb $a0, 0x1d($t7) +.L800C4310: +/* 0C4F10 800C4310 03E00008 */ jr $ra +/* 0C4F14 800C4314 00000000 */ nop + +/* 0C4F18 800C4318 3C0F8013 */ lui $t7, %hi(D_8012A7E0) # $t7, 0x8013 +/* 0C4F1C 800C431C 8DEFA7E0 */ lw $t7, %lo(D_8012A7E0)($t7) +/* 0C4F20 800C4320 AFA50004 */ sw $a1, 4($sp) +/* 0C4F24 800C4324 008F082A */ slt $at, $a0, $t7 +/* 0C4F28 800C4328 10200014 */ beqz $at, .L800C437C +/* 0C4F2C 800C432C 30AE00FF */ andi $t6, $a1, 0xff +/* 0C4F30 800C4330 3C198013 */ lui $t9, %hi(D_8012A7E4) # $t9, 0x8013 +/* 0C4F34 800C4334 8F39A7E4 */ lw $t9, %lo(D_8012A7E4)($t9) +/* 0C4F38 800C4338 0004C280 */ sll $t8, $a0, 0xa +/* 0C4F3C 800C433C 03191821 */ addu $v1, $t8, $t9 +/* 0C4F40 800C4340 90680028 */ lbu $t0, 0x28($v1) +/* 0C4F44 800C4344 25C5FFE0 */ addiu $a1, $t6, -0x20 +/* 0C4F48 800C4348 1100000C */ beqz $t0, .L800C437C +/* 0C4F4C 800C434C 30A900FF */ andi $t1, $a1, 0xff +/* 0C4F50 800C4350 000950C0 */ sll $t2, $t1, 3 +/* 0C4F54 800C4354 006A5821 */ addu $t3, $v1, $t2 +/* 0C4F58 800C4358 91640100 */ lbu $a0, 0x100($t3) +/* 0C4F5C 800C435C 240100FF */ li $at, 255 +/* 0C4F60 800C4360 10810006 */ beq $a0, $at, .L800C437C +/* 0C4F64 800C4364 00001025 */ move $v0, $zero +/* 0C4F68 800C4368 00046080 */ sll $t4, $a0, 2 +/* 0C4F6C 800C436C 006C6821 */ addu $t5, $v1, $t4 +/* 0C4F70 800C4370 8DA20080 */ lw $v0, 0x80($t5) +/* 0C4F74 800C4374 03E00008 */ jr $ra +/* 0C4F78 800C4378 00000000 */ nop + +.L800C437C: +/* 0C4F7C 800C437C 03E00008 */ jr $ra +/* 0C4F80 800C4380 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C4384.s b/asm/non_matchings/unknown_0B8920/func_800C4384.s new file mode 100644 index 00000000..eb373a72 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C4384.s @@ -0,0 +1,20 @@ +glabel func_800C4384 +/* 0C4F84 800C4384 3C028013 */ lui $v0, %hi(D_8012A7E8) # $v0, 0x8013 +/* 0C4F88 800C4388 2442A7E8 */ addiu $v0, %lo(D_8012A7E8) # addiu $v0, $v0, -0x5818 +/* 0C4F8C 800C438C 8C4E0000 */ lw $t6, ($v0) +/* 0C4F90 800C4390 00000000 */ nop +/* 0C4F94 800C4394 A1C40014 */ sb $a0, 0x14($t6) +/* 0C4F98 800C4398 8C4F0000 */ lw $t7, ($v0) +/* 0C4F9C 800C439C 00000000 */ nop +/* 0C4FA0 800C43A0 A1E50015 */ sb $a1, 0x15($t7) +/* 0C4FA4 800C43A4 8C580000 */ lw $t8, ($v0) +/* 0C4FA8 800C43A8 00000000 */ nop +/* 0C4FAC 800C43AC A3060016 */ sb $a2, 0x16($t8) +/* 0C4FB0 800C43B0 8C590000 */ lw $t9, ($v0) +/* 0C4FB4 800C43B4 00000000 */ nop +/* 0C4FB8 800C43B8 A3270017 */ sb $a3, 0x17($t9) +/* 0C4FBC 800C43BC 8C490000 */ lw $t1, ($v0) +/* 0C4FC0 800C43C0 8FA80010 */ lw $t0, 0x10($sp) +/* 0C4FC4 800C43C4 03E00008 */ jr $ra +/* 0C4FC8 800C43C8 A128001C */ sb $t0, 0x1c($t1) + diff --git a/asm/non_matchings/unknown_0B8920/func_800C43CC.s b/asm/non_matchings/unknown_0B8920/func_800C43CC.s new file mode 100644 index 00000000..b170e3f9 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C43CC.s @@ -0,0 +1,32 @@ +glabel func_800C43CC +/* 0C4FCC 800C43CC 3C028013 */ lui $v0, %hi(D_8012A7E8) # $v0, 0x8013 +/* 0C4FD0 800C43D0 2442A7E8 */ addiu $v0, %lo(D_8012A7E8) # addiu $v0, $v0, -0x5818 +/* 0C4FD4 800C43D4 8C4E0000 */ lw $t6, ($v0) +/* 0C4FD8 800C43D8 00000000 */ nop +/* 0C4FDC 800C43DC A1C40018 */ sb $a0, 0x18($t6) +/* 0C4FE0 800C43E0 8C4F0000 */ lw $t7, ($v0) +/* 0C4FE4 800C43E4 00000000 */ nop +/* 0C4FE8 800C43E8 A1E50019 */ sb $a1, 0x19($t7) +/* 0C4FEC 800C43EC 8C580000 */ lw $t8, ($v0) +/* 0C4FF0 800C43F0 00000000 */ nop +/* 0C4FF4 800C43F4 A306001A */ sb $a2, 0x1a($t8) +/* 0C4FF8 800C43F8 8C590000 */ lw $t9, ($v0) +/* 0C4FFC 800C43FC 03E00008 */ jr $ra +/* 0C5000 800C4400 A327001B */ sb $a3, 0x1b($t9) + +/* 0C5004 800C4404 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0C5008 800C4408 00C03825 */ move $a3, $a2 +/* 0C500C 800C440C 00A03025 */ move $a2, $a1 +/* 0C5010 800C4410 AFA50024 */ sw $a1, 0x24($sp) +/* 0C5014 800C4414 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0C5018 800C4418 44812000 */ mtc1 $at, $f4 +/* 0C501C 800C441C 3C058013 */ lui $a1, %hi(D_8012A7E8) # $a1, 0x8013 +/* 0C5020 800C4420 AFBF001C */ sw $ra, 0x1c($sp) +/* 0C5024 800C4424 8CA5A7E8 */ lw $a1, %lo(D_8012A7E8)($a1) +/* 0C5028 800C4428 0C031169 */ jal func_800C45A4 +/* 0C502C 800C442C E7A40010 */ swc1 $f4, 0x10($sp) +/* 0C5030 800C4430 8FBF001C */ lw $ra, 0x1c($sp) +/* 0C5034 800C4434 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0C5038 800C4438 03E00008 */ jr $ra +/* 0C503C 800C443C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C4440.s b/asm/non_matchings/unknown_0B8920/func_800C4440.s new file mode 100644 index 00000000..2e9a2a4e --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C4440.s @@ -0,0 +1,103 @@ +glabel func_800C4440 +/* 0C5040 800C4440 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0C5044 800C4444 AFB00020 */ sw $s0, 0x20($sp) +/* 0C5048 800C4448 3C108013 */ lui $s0, %hi(D_8012A7E8) # $s0, 0x8013 +/* 0C504C 800C444C 24028000 */ li $v0, -32768 +/* 0C5050 800C4450 8E10A7E8 */ lw $s0, %lo(D_8012A7E8)($s0) +/* 0C5054 800C4454 AFBF0024 */ sw $ra, 0x24($sp) +/* 0C5058 800C4458 14A20006 */ bne $a1, $v0, .L800C4474 +/* 0C505C 800C445C AFA70034 */ sw $a3, 0x34($sp) +/* 0C5060 800C4460 860E000C */ lh $t6, 0xc($s0) +/* 0C5064 800C4464 00000000 */ nop +/* 0C5068 800C4468 000E7843 */ sra $t7, $t6, 1 +/* 0C506C 800C446C 10000002 */ b .L800C4478 +/* 0C5070 800C4470 A60F0000 */ sh $t7, ($s0) +.L800C4474: +/* 0C5074 800C4474 A6050000 */ sh $a1, ($s0) +.L800C4478: +/* 0C5078 800C4478 14C20006 */ bne $a2, $v0, .L800C4494 +/* 0C507C 800C447C 02002825 */ move $a1, $s0 +/* 0C5080 800C4480 8618000E */ lh $t8, 0xe($s0) +/* 0C5084 800C4484 00000000 */ nop +/* 0C5088 800C4488 0018C843 */ sra $t9, $t8, 1 +/* 0C508C 800C448C 10000002 */ b .L800C4498 +/* 0C5090 800C4490 A6190002 */ sh $t9, 2($s0) +.L800C4494: +/* 0C5094 800C4494 A6060002 */ sh $a2, 2($s0) +.L800C4498: +/* 0C5098 800C4498 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0C509C 800C449C 44812000 */ mtc1 $at, $f4 +/* 0C50A0 800C44A0 8FA60034 */ lw $a2, 0x34($sp) +/* 0C50A4 800C44A4 8FA70038 */ lw $a3, 0x38($sp) +/* 0C50A8 800C44A8 0C031169 */ jal func_800C45A4 +/* 0C50AC 800C44AC E7A40010 */ swc1 $f4, 0x10($sp) +/* 0C50B0 800C44B0 8FBF0024 */ lw $ra, 0x24($sp) +/* 0C50B4 800C44B4 8FB00020 */ lw $s0, 0x20($sp) +/* 0C50B8 800C44B8 03E00008 */ jr $ra +/* 0C50BC 800C44BC 27BD0028 */ addiu $sp, $sp, 0x28 + +/* 0C50C0 800C44C0 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0C50C4 800C44C4 AFBF001C */ sw $ra, 0x1c($sp) +/* 0C50C8 800C44C8 04A0000D */ bltz $a1, .L800C4500 +/* 0C50CC 800C44CC AFA50024 */ sw $a1, 0x24($sp) +/* 0C50D0 800C44D0 28A10008 */ slti $at, $a1, 8 +/* 0C50D4 800C44D4 1020000A */ beqz $at, .L800C4500 +/* 0C50D8 800C44D8 00057880 */ sll $t7, $a1, 2 +/* 0C50DC 800C44DC 3C188013 */ lui $t8, %hi(D_8012A7E8) # $t8, 0x8013 +/* 0C50E0 800C44E0 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0C50E4 800C44E4 8F18A7E8 */ lw $t8, %lo(D_8012A7E8)($t8) +/* 0C50E8 800C44E8 44812000 */ mtc1 $at, $f4 +/* 0C50EC 800C44EC 01E57821 */ addu $t7, $t7, $a1 +/* 0C50F0 800C44F0 000F78C0 */ sll $t7, $t7, 3 +/* 0C50F4 800C44F4 01F82821 */ addu $a1, $t7, $t8 +/* 0C50F8 800C44F8 0C031169 */ jal func_800C45A4 +/* 0C50FC 800C44FC E7A40010 */ swc1 $f4, 0x10($sp) +.L800C4500: +/* 0C5100 800C4500 8FBF001C */ lw $ra, 0x1c($sp) +/* 0C5104 800C4504 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0C5108 800C4508 03E00008 */ jr $ra +/* 0C510C 800C450C 00000000 */ nop + +/* 0C5110 800C4510 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0C5114 800C4514 AFBF001C */ sw $ra, 0x1c($sp) +/* 0C5118 800C4518 04A0001E */ bltz $a1, .L800C4594 +/* 0C511C 800C451C AFA50024 */ sw $a1, 0x24($sp) +/* 0C5120 800C4520 28A10008 */ slti $at, $a1, 8 +/* 0C5124 800C4524 1020001B */ beqz $at, .L800C4594 +/* 0C5128 800C4528 24028000 */ li $v0, -32768 +/* 0C512C 800C452C 00057880 */ sll $t7, $a1, 2 +/* 0C5130 800C4530 3C188013 */ lui $t8, %hi(D_8012A7E8) # $t8, 0x8013 +/* 0C5134 800C4534 8F18A7E8 */ lw $t8, %lo(D_8012A7E8)($t8) +/* 0C5138 800C4538 01E57821 */ addu $t7, $t7, $a1 +/* 0C513C 800C453C 000F78C0 */ sll $t7, $t7, 3 +/* 0C5140 800C4540 14C20006 */ bne $a2, $v0, .L800C455C +/* 0C5144 800C4544 01F82821 */ addu $a1, $t7, $t8 +/* 0C5148 800C4548 84B9000C */ lh $t9, 0xc($a1) +/* 0C514C 800C454C 00000000 */ nop +/* 0C5150 800C4550 00194043 */ sra $t0, $t9, 1 +/* 0C5154 800C4554 10000002 */ b .L800C4560 +/* 0C5158 800C4558 A4A80000 */ sh $t0, ($a1) +.L800C455C: +/* 0C515C 800C455C A4A60000 */ sh $a2, ($a1) +.L800C4560: +/* 0C5160 800C4560 14E20006 */ bne $a3, $v0, .L800C457C +/* 0C5164 800C4564 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0C5168 800C4568 84A9000E */ lh $t1, 0xe($a1) +/* 0C516C 800C456C 00000000 */ nop +/* 0C5170 800C4570 00095043 */ sra $t2, $t1, 1 +/* 0C5174 800C4574 10000002 */ b .L800C4580 +/* 0C5178 800C4578 A4AA0002 */ sh $t2, 2($a1) +.L800C457C: +/* 0C517C 800C457C A4A70002 */ sh $a3, 2($a1) +.L800C4580: +/* 0C5180 800C4580 44812000 */ mtc1 $at, $f4 +/* 0C5184 800C4584 8FA60030 */ lw $a2, 0x30($sp) +/* 0C5188 800C4588 8FA70034 */ lw $a3, 0x34($sp) +/* 0C518C 800C458C 0C031169 */ jal func_800C45A4 +/* 0C5190 800C4590 E7A40010 */ swc1 $f4, 0x10($sp) +.L800C4594: +/* 0C5194 800C4594 8FBF001C */ lw $ra, 0x1c($sp) +/* 0C5198 800C4598 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0C519C 800C459C 03E00008 */ jr $ra +/* 0C51A0 800C45A0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C45A4.s b/asm/non_matchings/unknown_0B8920/func_800C45A4.s new file mode 100644 index 00000000..8503ae88 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C45A4.s @@ -0,0 +1,535 @@ +glabel func_800C45A4 +/* 0C51A4 800C45A4 27BDFF78 */ addiu $sp, $sp, -0x88 +/* 0C51A8 800C45A8 AFB50028 */ sw $s5, 0x28($sp) +/* 0C51AC 800C45AC AFB40024 */ sw $s4, 0x24($sp) +/* 0C51B0 800C45B0 AFB30020 */ sw $s3, 0x20($sp) +/* 0C51B4 800C45B4 AFB2001C */ sw $s2, 0x1c($sp) +/* 0C51B8 800C45B8 AFB10018 */ sw $s1, 0x18($sp) +/* 0C51BC 800C45BC 00808825 */ move $s1, $a0 +/* 0C51C0 800C45C0 00A09025 */ move $s2, $a1 +/* 0C51C4 800C45C4 00E09825 */ move $s3, $a3 +/* 0C51C8 800C45C8 AFBF002C */ sw $ra, 0x2c($sp) +/* 0C51CC 800C45CC AFB00014 */ sw $s0, 0x14($sp) +/* 0C51D0 800C45D0 AFA60090 */ sw $a2, 0x90($sp) +/* 0C51D4 800C45D4 2415FFFF */ li $s5, -1 +/* 0C51D8 800C45D8 10C001E8 */ beqz $a2, .L800C4D7C +/* 0C51DC 800C45DC 2414FFFF */ li $s4, -1 +/* 0C51E0 800C45E0 90AF001D */ lbu $t7, 0x1d($a1) +/* 0C51E4 800C45E4 3C198013 */ lui $t9, %hi(D_8012A7E4) # $t9, 0x8013 +/* 0C51E8 800C45E8 8F39A7E4 */ lw $t9, %lo(D_8012A7E4)($t9) +/* 0C51EC 800C45EC 8C830000 */ lw $v1, ($a0) +/* 0C51F0 800C45F0 000FC280 */ sll $t8, $t7, 0xa +/* 0C51F4 800C45F4 84B00000 */ lh $s0, ($a1) +/* 0C51F8 800C45F8 84BF0002 */ lh $ra, 2($a1) +/* 0C51FC 800C45FC 03195821 */ addu $t3, $t8, $t9 +/* 0C5200 800C4600 246E0008 */ addiu $t6, $v1, 8 +/* 0C5204 800C4604 AC8E0000 */ sw $t6, ($a0) +/* 0C5208 800C4608 3C18800E */ lui $t8, %hi(D_800E3690) # $t8, 0x800e +/* 0C520C 800C460C 27183690 */ addiu $t8, %lo(D_800E3690) # addiu $t8, $t8, 0x3690 +/* 0C5210 800C4610 3C0F0600 */ lui $t7, 0x600 +/* 0C5214 800C4614 3C198013 */ lui $t9, %hi(D_8012A7E8) # $t9, 0x8013 +/* 0C5218 800C4618 AC6F0000 */ sw $t7, ($v1) +/* 0C521C 800C461C AC780004 */ sw $t8, 4($v1) +/* 0C5220 800C4620 8F39A7E8 */ lw $t9, %lo(D_8012A7E8)($t9) +/* 0C5224 800C4624 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 0C5228 800C4628 10B9005B */ beq $a1, $t9, .L800C4798 +/* 0C522C 800C462C 326E0005 */ andi $t6, $s3, 5 +/* 0C5230 800C4630 84A4000A */ lh $a0, 0xa($a1) +/* 0C5234 800C4634 84A50006 */ lh $a1, 6($a1) +/* 0C5238 800C4638 44810000 */ mtc1 $at, $f0 +/* 0C523C 800C463C 00857023 */ subu $t6, $a0, $a1 +/* 0C5240 800C4640 25CF0001 */ addiu $t7, $t6, 1 +/* 0C5244 800C4644 448F2000 */ mtc1 $t7, $f4 +/* 0C5248 800C4648 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 0C524C 800C464C 468021A0 */ cvt.s.w $f6, $f4 +/* 0C5250 800C4650 44814000 */ mtc1 $at, $f8 +/* 0C5254 800C4654 C7B00098 */ lwc1 $f16, 0x98($sp) +/* 0C5258 800C4658 46083283 */ div.s $f10, $f6, $f8 +/* 0C525C 800C465C 8E270000 */ lw $a3, ($s1) +/* 0C5260 800C4660 00A43021 */ addu $a2, $a1, $a0 +/* 0C5264 800C4664 24EE0008 */ addiu $t6, $a3, 8 +/* 0C5268 800C4668 AE2E0000 */ sw $t6, ($s1) +/* 0C526C 800C466C 864F0004 */ lh $t7, 4($s2) +/* 0C5270 800C4670 0006C843 */ sra $t9, $a2, 1 +/* 0C5274 800C4674 448F3000 */ mtc1 $t7, $f6 +/* 0C5278 800C4678 03203025 */ move $a2, $t9 +/* 0C527C 800C467C 46105482 */ mul.s $f18, $f10, $f16 +/* 0C5280 800C4680 4458F800 */ cfc1 $t8, $31 +/* 0C5284 800C4684 00000000 */ nop +/* 0C5288 800C4688 37010003 */ ori $at, $t8, 3 +/* 0C528C 800C468C 38210002 */ xori $at, $at, 2 +/* 0C5290 800C4690 44C1F800 */ ctc1 $at, $31 +/* 0C5294 800C4694 37010003 */ ori $at, $t8, 3 +/* 0C5298 800C4698 46009124 */ cvt.w.s $f4, $f18 +/* 0C529C 800C469C 38210002 */ xori $at, $at, 2 +/* 0C52A0 800C46A0 44D8F800 */ ctc1 $t8, $31 +/* 0C52A4 800C46A4 44022000 */ mfc1 $v0, $f4 +/* 0C52A8 800C46A8 46803220 */ cvt.s.w $f8, $f6 +/* 0C52AC 800C46AC 46004282 */ mul.s $f10, $f8, $f0 +/* 0C52B0 800C46B0 44C1F800 */ ctc1 $at, $31 +/* 0C52B4 800C46B4 3C01ED00 */ lui $at, 0xed00 +/* 0C52B8 800C46B8 46005424 */ cvt.w.s $f16, $f10 +/* 0C52BC 800C46BC 44198000 */ mfc1 $t9, $f16 +/* 0C52C0 800C46C0 44D8F800 */ ctc1 $t8, $31 +/* 0C52C4 800C46C4 332E0FFF */ andi $t6, $t9, 0xfff +/* 0C52C8 800C46C8 00C2C823 */ subu $t9, $a2, $v0 +/* 0C52CC 800C46CC 44999000 */ mtc1 $t9, $f18 +/* 0C52D0 800C46D0 000E7B00 */ sll $t7, $t6, 0xc +/* 0C52D4 800C46D4 46809120 */ cvt.s.w $f4, $f18 +/* 0C52D8 800C46D8 01E1C025 */ or $t8, $t7, $at +/* 0C52DC 800C46DC 46002182 */ mul.s $f6, $f4, $f0 +/* 0C52E0 800C46E0 444EF800 */ cfc1 $t6, $31 +/* 0C52E4 800C46E4 00000000 */ nop +/* 0C52E8 800C46E8 35C10003 */ ori $at, $t6, 3 +/* 0C52EC 800C46EC 38210002 */ xori $at, $at, 2 +/* 0C52F0 800C46F0 44C1F800 */ ctc1 $at, $31 +/* 0C52F4 800C46F4 00000000 */ nop +/* 0C52F8 800C46F8 46003224 */ cvt.w.s $f8, $f6 +/* 0C52FC 800C46FC 440F4000 */ mfc1 $t7, $f8 +/* 0C5300 800C4700 44CEF800 */ ctc1 $t6, $31 +/* 0C5304 800C4704 31F90FFF */ andi $t9, $t7, 0xfff +/* 0C5308 800C4708 03197025 */ or $t6, $t8, $t9 +/* 0C530C 800C470C ACEE0000 */ sw $t6, ($a3) +/* 0C5310 800C4710 864F0008 */ lh $t7, 8($s2) +/* 0C5314 800C4714 00000000 */ nop +/* 0C5318 800C4718 448F5000 */ mtc1 $t7, $f10 +/* 0C531C 800C471C 00000000 */ nop +/* 0C5320 800C4720 46805420 */ cvt.s.w $f16, $f10 +/* 0C5324 800C4724 46008482 */ mul.s $f18, $f16, $f0 +/* 0C5328 800C4728 4458F800 */ cfc1 $t8, $31 +/* 0C532C 800C472C 00000000 */ nop +/* 0C5330 800C4730 37010003 */ ori $at, $t8, 3 +/* 0C5334 800C4734 38210002 */ xori $at, $at, 2 +/* 0C5338 800C4738 44C1F800 */ ctc1 $at, $31 +/* 0C533C 800C473C 00000000 */ nop +/* 0C5340 800C4740 46009124 */ cvt.w.s $f4, $f18 +/* 0C5344 800C4744 44D8F800 */ ctc1 $t8, $31 +/* 0C5348 800C4748 00C2C021 */ addu $t8, $a2, $v0 +/* 0C534C 800C474C 44983000 */ mtc1 $t8, $f6 +/* 0C5350 800C4750 44192000 */ mfc1 $t9, $f4 +/* 0C5354 800C4754 46803220 */ cvt.s.w $f8, $f6 +/* 0C5358 800C4758 332E0FFF */ andi $t6, $t9, 0xfff +/* 0C535C 800C475C 000E7B00 */ sll $t7, $t6, 0xc +/* 0C5360 800C4760 46004282 */ mul.s $f10, $f8, $f0 +/* 0C5364 800C4764 4459F800 */ cfc1 $t9, $31 +/* 0C5368 800C4768 00000000 */ nop +/* 0C536C 800C476C 37210003 */ ori $at, $t9, 3 +/* 0C5370 800C4770 38210002 */ xori $at, $at, 2 +/* 0C5374 800C4774 44C1F800 */ ctc1 $at, $31 +/* 0C5378 800C4778 00000000 */ nop +/* 0C537C 800C477C 46005424 */ cvt.w.s $f16, $f10 +/* 0C5380 800C4780 440E8000 */ mfc1 $t6, $f16 +/* 0C5384 800C4784 44D9F800 */ ctc1 $t9, $31 +/* 0C5388 800C4788 31D80FFF */ andi $t8, $t6, 0xfff +/* 0C538C 800C478C 01F8C825 */ or $t9, $t7, $t8 +/* 0C5390 800C4790 ACF90004 */ sw $t9, 4($a3) +/* 0C5394 800C4794 326E0005 */ andi $t6, $s3, 5 +.L800C4798: +/* 0C5398 800C4798 11C00010 */ beqz $t6, .L800C47DC +/* 0C539C 800C479C 02002825 */ move $a1, $s0 +/* 0C53A0 800C47A0 9246001D */ lbu $a2, 0x1d($s2) +/* 0C53A4 800C47A4 AFBF007C */ sw $ra, 0x7c($sp) +/* 0C53A8 800C47A8 8FA40090 */ lw $a0, 0x90($sp) +/* 0C53AC 800C47AC 0C031368 */ jal func_800C4DA0 +/* 0C53B0 800C47B0 AFAB0034 */ sw $t3, 0x34($sp) +/* 0C53B4 800C47B4 8FAB0034 */ lw $t3, 0x34($sp) +/* 0C53B8 800C47B8 8FBF007C */ lw $ra, 0x7c($sp) +/* 0C53BC 800C47BC 326F0001 */ andi $t7, $s3, 1 +/* 0C53C0 800C47C0 11E00004 */ beqz $t7, .L800C47D4 +/* 0C53C4 800C47C4 0040A825 */ move $s5, $v0 +/* 0C53C8 800C47C8 02028023 */ subu $s0, $s0, $v0 +/* 0C53CC 800C47CC 10000003 */ b .L800C47DC +/* 0C53D0 800C47D0 26100001 */ addiu $s0, $s0, 1 +.L800C47D4: +/* 0C53D4 800C47D4 0002C043 */ sra $t8, $v0, 1 +/* 0C53D8 800C47D8 02188023 */ subu $s0, $s0, $t8 +.L800C47DC: +/* 0C53DC 800C47DC 32790002 */ andi $t9, $s3, 2 +/* 0C53E0 800C47E0 13200005 */ beqz $t9, .L800C47F8 +/* 0C53E4 800C47E4 326F0008 */ andi $t7, $s3, 8 +/* 0C53E8 800C47E8 956E0022 */ lhu $t6, 0x22($t3) +/* 0C53EC 800C47EC 00000000 */ nop +/* 0C53F0 800C47F0 03EEF823 */ subu $ra, $ra, $t6 +/* 0C53F4 800C47F4 27FF0001 */ addiu $ra, $ra, 1 +.L800C47F8: +/* 0C53F8 800C47F8 11E00005 */ beqz $t7, .L800C4810 +/* 0C53FC 800C47FC 00000000 */ nop +/* 0C5400 800C4800 95780022 */ lhu $t8, 0x22($t3) +/* 0C5404 800C4804 00000000 */ nop +/* 0C5408 800C4808 0018C843 */ sra $t9, $t8, 1 +/* 0C540C 800C480C 03F9F823 */ subu $ra, $ra, $t9 +.L800C4810: +/* 0C5410 800C4810 924E001B */ lbu $t6, 0x1b($s2) +/* 0C5414 800C4814 00000000 */ nop +/* 0C5418 800C4818 11C0004A */ beqz $t6, .L800C4944 +/* 0C541C 800C481C 00000000 */ nop +/* 0C5420 800C4820 8E230000 */ lw $v1, ($s1) +/* 0C5424 800C4824 3C18FB00 */ lui $t8, 0xfb00 +/* 0C5428 800C4828 246F0008 */ addiu $t7, $v1, 8 +/* 0C542C 800C482C AE2F0000 */ sw $t7, ($s1) +/* 0C5430 800C4830 AC780000 */ sw $t8, ($v1) +/* 0C5434 800C4834 924E0018 */ lbu $t6, 0x18($s2) +/* 0C5438 800C4838 92590019 */ lbu $t9, 0x19($s2) +/* 0C543C 800C483C 000E7E00 */ sll $t7, $t6, 0x18 +/* 0C5440 800C4840 00197400 */ sll $t6, $t9, 0x10 +/* 0C5444 800C4844 01EEC025 */ or $t8, $t7, $t6 +/* 0C5448 800C4848 924F001A */ lbu $t7, 0x1a($s2) +/* 0C544C 800C484C 2401FFFF */ li $at, -1 +/* 0C5450 800C4850 000F7200 */ sll $t6, $t7, 8 +/* 0C5454 800C4854 030EC825 */ or $t9, $t8, $t6 +/* 0C5458 800C4858 9258001B */ lbu $t8, 0x1b($s2) +/* 0C545C 800C485C 02002825 */ move $a1, $s0 +/* 0C5460 800C4860 03387025 */ or $t6, $t9, $t8 +/* 0C5464 800C4864 16A10009 */ bne $s5, $at, .L800C488C +/* 0C5468 800C4868 AC6E0004 */ sw $t6, 4($v1) +/* 0C546C 800C486C 9246001D */ lbu $a2, 0x1d($s2) +/* 0C5470 800C4870 AFBF007C */ sw $ra, 0x7c($sp) +/* 0C5474 800C4874 8FA40090 */ lw $a0, 0x90($sp) +/* 0C5478 800C4878 0C031368 */ jal func_800C4DA0 +/* 0C547C 800C487C AFAB0034 */ sw $t3, 0x34($sp) +/* 0C5480 800C4880 8FAB0034 */ lw $t3, 0x34($sp) +/* 0C5484 800C4884 8FBF007C */ lw $ra, 0x7c($sp) +/* 0C5488 800C4888 0040A825 */ move $s5, $v0 +.L800C488C: +/* 0C548C 800C488C 8E230000 */ lw $v1, ($s1) +/* 0C5490 800C4890 956F0022 */ lhu $t7, 0x22($t3) +/* 0C5494 800C4894 24790008 */ addiu $t9, $v1, 8 +/* 0C5498 800C4898 AE390000 */ sw $t9, ($s1) +/* 0C549C 800C489C 3C180702 */ lui $t8, (0x07020010 >> 16) # lui $t8, 0x702 +/* 0C54A0 800C48A0 3C0E000E */ lui $t6, %hi(D_000E36D8) # $t6, 0xe +/* 0C54A4 800C48A4 25CE36D8 */ addiu $t6, %lo(D_000E36D8) # addiu $t6, $t6, 0x36d8 +/* 0C54A8 800C48A8 37180010 */ ori $t8, (0x07020010 & 0xFFFF) # ori $t8, $t8, 0x10 +/* 0C54AC 800C48AC AC780000 */ sw $t8, ($v1) +/* 0C54B0 800C48B0 AC6E0004 */ sw $t6, 4($v1) +/* 0C54B4 800C48B4 8E230000 */ lw $v1, ($s1) +/* 0C54B8 800C48B8 01FF4821 */ addu $t1, $t7, $ra +/* 0C54BC 800C48BC 246F0008 */ addiu $t7, $v1, 8 +/* 0C54C0 800C48C0 AE2F0000 */ sw $t7, ($s1) +/* 0C54C4 800C48C4 86590004 */ lh $t9, 4($s2) +/* 0C54C8 800C48C8 0215C021 */ addu $t8, $s0, $s5 +/* 0C54CC 800C48CC 03387021 */ addu $t6, $t9, $t8 +/* 0C54D0 800C48D0 25CFFFFF */ addiu $t7, $t6, -1 +/* 0C54D4 800C48D4 31F903FF */ andi $t9, $t7, 0x3ff +/* 0C54D8 800C48D8 864F0006 */ lh $t7, 6($s2) +/* 0C54DC 800C48DC 0019C380 */ sll $t8, $t9, 0xe +/* 0C54E0 800C48E0 2529FFFF */ addiu $t1, $t1, -1 +/* 0C54E4 800C48E4 3C01F600 */ lui $at, 0xf600 +/* 0C54E8 800C48E8 03017025 */ or $t6, $t8, $at +/* 0C54EC 800C48EC 012FC821 */ addu $t9, $t1, $t7 +/* 0C54F0 800C48F0 333803FF */ andi $t8, $t9, 0x3ff +/* 0C54F4 800C48F4 00187880 */ sll $t7, $t8, 2 +/* 0C54F8 800C48F8 01CFC825 */ or $t9, $t6, $t7 +/* 0C54FC 800C48FC AC790000 */ sw $t9, ($v1) +/* 0C5500 800C4900 86580004 */ lh $t8, 4($s2) +/* 0C5504 800C4904 00000000 */ nop +/* 0C5508 800C4908 03107021 */ addu $t6, $t8, $s0 +/* 0C550C 800C490C 86580006 */ lh $t8, 6($s2) +/* 0C5510 800C4910 31CF03FF */ andi $t7, $t6, 0x3ff +/* 0C5514 800C4914 000FCB80 */ sll $t9, $t7, 0xe +/* 0C5518 800C4918 03F87021 */ addu $t6, $ra, $t8 +/* 0C551C 800C491C 31CF03FF */ andi $t7, $t6, 0x3ff +/* 0C5520 800C4920 000FC080 */ sll $t8, $t7, 2 +/* 0C5524 800C4924 03387025 */ or $t6, $t9, $t8 +/* 0C5528 800C4928 AC6E0004 */ sw $t6, 4($v1) +/* 0C552C 800C492C 8E230000 */ lw $v1, ($s1) +/* 0C5530 800C4930 3C19E700 */ lui $t9, 0xe700 +/* 0C5534 800C4934 246F0008 */ addiu $t7, $v1, 8 +/* 0C5538 800C4938 AE2F0000 */ sw $t7, ($s1) +/* 0C553C 800C493C AC600004 */ sw $zero, 4($v1) +/* 0C5540 800C4940 AC790000 */ sw $t9, ($v1) +.L800C4944: +/* 0C5544 800C4944 8E230000 */ lw $v1, ($s1) +/* 0C5548 800C4948 3C0EFA00 */ lui $t6, 0xfa00 +/* 0C554C 800C494C 24780008 */ addiu $t8, $v1, 8 +/* 0C5550 800C4950 AE380000 */ sw $t8, ($s1) +/* 0C5554 800C4954 AC6E0000 */ sw $t6, ($v1) +/* 0C5558 800C4958 9259001C */ lbu $t9, 0x1c($s2) +/* 0C555C 800C495C 2401FF00 */ li $at, -256 +/* 0C5560 800C4960 0321C025 */ or $t8, $t9, $at +/* 0C5564 800C4964 AC780004 */ sw $t8, 4($v1) +/* 0C5568 800C4968 8E230000 */ lw $v1, ($s1) +/* 0C556C 800C496C 3C0FFB00 */ lui $t7, 0xfb00 +/* 0C5570 800C4970 246E0008 */ addiu $t6, $v1, 8 +/* 0C5574 800C4974 AE2E0000 */ sw $t6, ($s1) +/* 0C5578 800C4978 AC6F0000 */ sw $t7, ($v1) +/* 0C557C 800C497C 92580014 */ lbu $t8, 0x14($s2) +/* 0C5580 800C4980 92590015 */ lbu $t9, 0x15($s2) +/* 0C5584 800C4984 00187600 */ sll $t6, $t8, 0x18 +/* 0C5588 800C4988 0019C400 */ sll $t8, $t9, 0x10 +/* 0C558C 800C498C 01D87825 */ or $t7, $t6, $t8 +/* 0C5590 800C4990 924E0016 */ lbu $t6, 0x16($s2) +/* 0C5594 800C4994 00000000 */ nop +/* 0C5598 800C4998 000EC200 */ sll $t8, $t6, 8 +/* 0C559C 800C499C 01F8C825 */ or $t9, $t7, $t8 +/* 0C55A0 800C49A0 924F0017 */ lbu $t7, 0x17($s2) +/* 0C55A4 800C49A4 00000000 */ nop +/* 0C55A8 800C49A8 032FC025 */ or $t8, $t9, $t7 +/* 0C55AC 800C49AC AC780004 */ sw $t8, 4($v1) +/* 0C55B0 800C49B0 8E230000 */ lw $v1, ($s1) +/* 0C55B4 800C49B4 3C0F000E */ lui $t7, %hi(D_000E36C8) # $t7, 0xe +/* 0C55B8 800C49B8 246E0008 */ addiu $t6, $v1, 8 +/* 0C55BC 800C49BC AE2E0000 */ sw $t6, ($s1) +/* 0C55C0 800C49C0 3C190702 */ lui $t9, (0x07020010 >> 16) # lui $t9, 0x702 +/* 0C55C4 800C49C4 37390010 */ ori $t9, (0x07020010 & 0xFFFF) # ori $t9, $t9, 0x10 +/* 0C55C8 800C49C8 25EF36C8 */ addiu $t7, %lo(D_000E36C8) # addiu $t7, $t7, 0x36c8 +/* 0C55CC 800C49CC AC6F0004 */ sw $t7, 4($v1) +/* 0C55D0 800C49D0 AC790000 */ sw $t9, ($v1) +/* 0C55D4 800C49D4 8E230000 */ lw $v1, ($s1) +/* 0C55D8 800C49D8 3C0EE700 */ lui $t6, 0xe700 +/* 0C55DC 800C49DC 24780008 */ addiu $t8, $v1, 8 +/* 0C55E0 800C49E0 AE380000 */ sw $t8, ($s1) +/* 0C55E4 800C49E4 AC600004 */ sw $zero, 4($v1) +/* 0C55E8 800C49E8 AC6E0000 */ sw $t6, ($v1) +/* 0C55EC 800C49EC 8FB80090 */ lw $t8, 0x90($sp) +/* 0C55F0 800C49F0 86590020 */ lh $t9, 0x20($s2) +/* 0C55F4 800C49F4 864F0022 */ lh $t7, 0x22($s2) +/* 0C55F8 800C49F8 930E0000 */ lbu $t6, ($t8) +/* 0C55FC 800C49FC 02198021 */ addu $s0, $s0, $t9 +/* 0C5600 800C4A00 11C000C3 */ beqz $t6, .L800C4D10 +/* 0C5604 800C4A04 03EFF821 */ addu $ra, $ra, $t7 +/* 0C5608 800C4A08 8659000A */ lh $t9, 0xa($s2) +/* 0C560C 800C4A0C 8FAD0064 */ lw $t5, 0x64($sp) +/* 0C5610 800C4A10 033F082A */ slt $at, $t9, $ra +/* 0C5614 800C4A14 142000BE */ bnez $at, .L800C4D10 +/* 0C5618 800C4A18 03009821 */ addu $s3, $t8, $zero +/* 0C561C 800C4A1C 8FAC0068 */ lw $t4, 0x68($sp) +/* 0C5620 800C4A20 31C200FF */ andi $v0, $t6, 0xff +/* 0C5624 800C4A24 304400FF */ andi $a0, $v0, 0xff +.L800C4A28: +/* 0C5628 800C4A28 28810021 */ slti $at, $a0, 0x21 +/* 0C562C 800C4A2C 00002825 */ move $a1, $zero +/* 0C5630 800C4A30 00004025 */ move $t0, $zero +/* 0C5634 800C4A34 14200003 */ bnez $at, .L800C4A44 +/* 0C5638 800C4A38 00801825 */ move $v1, $a0 +/* 0C563C 800C4A3C 28610080 */ slti $at, $v1, 0x80 +/* 0C5640 800C4A40 1420002C */ bnez $at, .L800C4AF4 +.L800C4A44: +/* 0C5644 800C4A44 246FFFF7 */ addiu $t7, $v1, -9 +/* 0C5648 800C4A48 2DE10018 */ sltiu $at, $t7, 0x18 +/* 0C564C 800C4A4C 10200026 */ beqz $at, .L800C4AE8 +/* 0C5650 800C4A50 000F7880 */ sll $t7, $t7, 2 +/* 0C5654 800C4A54 3C01800F */ lui $at, 0x800f +/* 0C5658 800C4A58 002F0821 */ addu $at, $at, $t7 +/* 0C565C 800C4A5C 8C2F9360 */ lw $t7, -0x6ca0($at) +/* 0C5660 800C4A60 00000000 */ nop +/* 0C5664 800C4A64 01E00008 */ jr $t7 +/* 0C5668 800C4A68 00000000 */ nop +/* 0C566C 800C4A6C 956E0024 */ lhu $t6, 0x24($t3) +/* 0C5670 800C4A70 10000050 */ b .L800C4BB4 +/* 0C5674 800C4A74 020E8021 */ addu $s0, $s0, $t6 +/* 0C5678 800C4A78 95790022 */ lhu $t9, 0x22($t3) +/* 0C567C 800C4A7C 86500020 */ lh $s0, 0x20($s2) +/* 0C5680 800C4A80 1000004C */ b .L800C4BB4 +/* 0C5684 800C4A84 03F9F821 */ addu $ra, $ra, $t9 +/* 0C5688 800C4A88 864F0020 */ lh $t7, 0x20($s2) +/* 0C568C 800C4A8C 95620026 */ lhu $v0, 0x26($t3) +/* 0C5690 800C4A90 020F7023 */ subu $t6, $s0, $t7 +/* 0C5694 800C4A94 01C2001A */ div $zero, $t6, $v0 +/* 0C5698 800C4A98 0202C021 */ addu $t8, $s0, $v0 +/* 0C569C 800C4A9C 14400002 */ bnez $v0, .L800C4AA8 +/* 0C56A0 800C4AA0 00000000 */ nop +/* 0C56A4 800C4AA4 0007000D */ break 7 +.L800C4AA8: +/* 0C56A8 800C4AA8 2401FFFF */ li $at, -1 +/* 0C56AC 800C4AAC 14410004 */ bne $v0, $at, .L800C4AC0 +/* 0C56B0 800C4AB0 3C018000 */ lui $at, 0x8000 +/* 0C56B4 800C4AB4 15C10002 */ bne $t6, $at, .L800C4AC0 +/* 0C56B8 800C4AB8 00000000 */ nop +/* 0C56BC 800C4ABC 0006000D */ break 6 +.L800C4AC0: +/* 0C56C0 800C4AC0 0000C810 */ mfhi $t9 +/* 0C56C4 800C4AC4 03198023 */ subu $s0, $t8, $t9 +/* 0C56C8 800C4AC8 1000003A */ b .L800C4BB4 +/* 0C56CC 800C4ACC 00000000 */ nop +/* 0C56D0 800C4AD0 956F0022 */ lhu $t7, 0x22($t3) +/* 0C56D4 800C4AD4 10000037 */ b .L800C4BB4 +/* 0C56D8 800C4AD8 03EFF821 */ addu $ra, $ra, $t7 +/* 0C56DC 800C4ADC 86500020 */ lh $s0, 0x20($s2) +/* 0C56E0 800C4AE0 10000034 */ b .L800C4BB4 +/* 0C56E4 800C4AE4 00000000 */ nop +.L800C4AE8: +/* 0C56E8 800C4AE8 956E0024 */ lhu $t6, 0x24($t3) +/* 0C56EC 800C4AEC 10000031 */ b .L800C4BB4 +/* 0C56F0 800C4AF0 020E8021 */ addu $s0, $s0, $t6 +.L800C4AF4: +/* 0C56F4 800C4AF4 2464FFE0 */ addiu $a0, $v1, -0x20 +/* 0C56F8 800C4AF8 309800FF */ andi $t8, $a0, 0xff +/* 0C56FC 800C4AFC 0018C8C0 */ sll $t9, $t8, 3 +/* 0C5700 800C4B00 01791021 */ addu $v0, $t3, $t9 +/* 0C5704 800C4B04 90470100 */ lbu $a3, 0x100($v0) +/* 0C5708 800C4B08 240100FF */ li $at, 255 +/* 0C570C 800C4B0C 10E10029 */ beq $a3, $at, .L800C4BB4 +/* 0C5710 800C4B10 00000000 */ nop +/* 0C5714 800C4B14 12870015 */ beq $s4, $a3, .L800C4B6C +/* 0C5718 800C4B18 24050001 */ li $a1, 1 +/* 0C571C 800C4B1C 00077880 */ sll $t7, $a3, 2 +/* 0C5720 800C4B20 8E230000 */ lw $v1, ($s1) +/* 0C5724 800C4B24 016F7021 */ addu $t6, $t3, $t7 +/* 0C5728 800C4B28 8DC40080 */ lw $a0, 0x80($t6) +/* 0C572C 800C4B2C 24780008 */ addiu $t8, $v1, 8 +/* 0C5730 800C4B30 AE380000 */ sw $t8, ($s1) +/* 0C5734 800C4B34 8486000A */ lh $a2, 0xa($a0) +/* 0C5738 800C4B38 3C010700 */ lui $at, 0x700 +/* 0C573C 800C4B3C 30D900FF */ andi $t9, $a2, 0xff +/* 0C5740 800C4B40 00197C00 */ sll $t7, $t9, 0x10 +/* 0C5744 800C4B44 0006C0C0 */ sll $t8, $a2, 3 +/* 0C5748 800C4B48 3319FFFF */ andi $t9, $t8, 0xffff +/* 0C574C 800C4B4C 01E17025 */ or $t6, $t7, $at +/* 0C5750 800C4B50 01D97825 */ or $t7, $t6, $t9 +/* 0C5754 800C4B54 AC6F0000 */ sw $t7, ($v1) +/* 0C5758 800C4B58 8C98000C */ lw $t8, 0xc($a0) +/* 0C575C 800C4B5C 3C018000 */ lui $at, 0x8000 +/* 0C5760 800C4B60 03017021 */ addu $t6, $t8, $at +/* 0C5764 800C4B64 00E0A025 */ move $s4, $a3 +/* 0C5768 800C4B68 AC6E0004 */ sw $t6, 4($v1) +.L800C4B6C: +/* 0C576C 800C4B6C 90590102 */ lbu $t9, 0x102($v0) +/* 0C5770 800C4B70 00000000 */ nop +/* 0C5774 800C4B74 AFB90058 */ sw $t9, 0x58($sp) +/* 0C5778 800C4B78 904F0103 */ lbu $t7, 0x103($v0) +/* 0C577C 800C4B7C 00000000 */ nop +/* 0C5780 800C4B80 AFAF0054 */ sw $t7, 0x54($sp) +/* 0C5784 800C4B84 90580107 */ lbu $t8, 0x107($v0) +/* 0C5788 800C4B88 904C0104 */ lbu $t4, 0x104($v0) +/* 0C578C 800C4B8C 904D0105 */ lbu $t5, 0x105($v0) +/* 0C5790 800C4B90 90550106 */ lbu $s5, 0x106($v0) +/* 0C5794 800C4B94 AFB8004C */ sw $t8, 0x4c($sp) +/* 0C5798 800C4B98 95630020 */ lhu $v1, 0x20($t3) +/* 0C579C 800C4B9C 00000000 */ nop +/* 0C57A0 800C4BA0 14600004 */ bnez $v1, .L800C4BB4 +/* 0C57A4 800C4BA4 00604025 */ move $t0, $v1 +/* 0C57A8 800C4BA8 90480101 */ lbu $t0, 0x101($v0) +/* 0C57AC 800C4BAC 10000001 */ b .L800C4BB4 +/* 0C57B0 800C4BB0 00000000 */ nop +.L800C4BB4: +/* 0C57B4 800C4BB4 10A00043 */ beqz $a1, .L800C4CC4 +/* 0C57B8 800C4BB8 3C01E400 */ lui $at, 0xe400 +/* 0C57BC 800C4BBC 864E0004 */ lh $t6, 4($s2) +/* 0C57C0 800C4BC0 8FAF0058 */ lw $t7, 0x58($sp) +/* 0C57C4 800C4BC4 01D0C821 */ addu $t9, $t6, $s0 +/* 0C57C8 800C4BC8 864E0006 */ lh $t6, 6($s2) +/* 0C57CC 800C4BCC 032F2821 */ addu $a1, $t9, $t7 +/* 0C57D0 800C4BD0 8FAF0054 */ lw $t7, 0x54($sp) +/* 0C57D4 800C4BD4 01DFC821 */ addu $t9, $t6, $ra +/* 0C57D8 800C4BD8 0005C080 */ sll $t8, $a1, 2 +/* 0C57DC 800C4BDC 032F3021 */ addu $a2, $t9, $t7 +/* 0C57E0 800C4BE0 8FB9004C */ lw $t9, 0x4c($sp) +/* 0C57E4 800C4BE4 03002825 */ move $a1, $t8 +/* 0C57E8 800C4BE8 0006C080 */ sll $t8, $a2, 2 +/* 0C57EC 800C4BEC 00157080 */ sll $t6, $s5, 2 +/* 0C57F0 800C4BF0 00197880 */ sll $t7, $t9, 2 +/* 0C57F4 800C4BF4 03003025 */ move $a2, $t8 +/* 0C57F8 800C4BF8 01C51021 */ addu $v0, $t6, $a1 +/* 0C57FC 800C4BFC 01F81821 */ addu $v1, $t7, $t8 +/* 0C5800 800C4C00 000CC140 */ sll $t8, $t4, 5 +/* 0C5804 800C4C04 000D7140 */ sll $t6, $t5, 5 +/* 0C5808 800C4C08 00405025 */ move $t2, $v0 +/* 0C580C 800C4C0C 00604825 */ move $t1, $v1 +/* 0C5810 800C4C10 03006025 */ move $t4, $t8 +/* 0C5814 800C4C14 04A10006 */ bgez $a1, .L800C4C30 +/* 0C5818 800C4C18 01C06825 */ move $t5, $t6 +/* 0C581C 800C4C1C 18400004 */ blez $v0, .L800C4C30 +/* 0C5820 800C4C20 0005C823 */ negu $t9, $a1 +/* 0C5824 800C4C24 001978C0 */ sll $t7, $t9, 3 +/* 0C5828 800C4C28 030F6021 */ addu $t4, $t8, $t7 +/* 0C582C 800C4C2C 00002825 */ move $a1, $zero +.L800C4C30: +/* 0C5830 800C4C30 04C10006 */ bgez $a2, .L800C4C4C +/* 0C5834 800C4C34 314F0FFF */ andi $t7, $t2, 0xfff +/* 0C5838 800C4C38 18600004 */ blez $v1, .L800C4C4C +/* 0C583C 800C4C3C 0006C023 */ negu $t8, $a2 +/* 0C5840 800C4C40 001870C0 */ sll $t6, $t8, 3 +/* 0C5844 800C4C44 01AE6821 */ addu $t5, $t5, $t6 +/* 0C5848 800C4C48 00003025 */ move $a2, $zero +.L800C4C4C: +/* 0C584C 800C4C4C 8E230000 */ lw $v1, ($s1) +/* 0C5850 800C4C50 000FC300 */ sll $t8, $t7, 0xc +/* 0C5854 800C4C54 24790008 */ addiu $t9, $v1, 8 +/* 0C5858 800C4C58 AE390000 */ sw $t9, ($s1) +/* 0C585C 800C4C5C 31390FFF */ andi $t9, $t1, 0xfff +/* 0C5860 800C4C60 03017025 */ or $t6, $t8, $at +/* 0C5864 800C4C64 01D97825 */ or $t7, $t6, $t9 +/* 0C5868 800C4C68 30B80FFF */ andi $t8, $a1, 0xfff +/* 0C586C 800C4C6C 00187300 */ sll $t6, $t8, 0xc +/* 0C5870 800C4C70 30D90FFF */ andi $t9, $a2, 0xfff +/* 0C5874 800C4C74 AC6F0000 */ sw $t7, ($v1) +/* 0C5878 800C4C78 01D97825 */ or $t7, $t6, $t9 +/* 0C587C 800C4C7C AC6F0004 */ sw $t7, 4($v1) +/* 0C5880 800C4C80 8E230000 */ lw $v1, ($s1) +/* 0C5884 800C4C84 3C0EB300 */ lui $t6, 0xb300 +/* 0C5888 800C4C88 24780008 */ addiu $t8, $v1, 8 +/* 0C588C 800C4C8C AE380000 */ sw $t8, ($s1) +/* 0C5890 800C4C90 31B8FFFF */ andi $t8, $t5, 0xffff +/* 0C5894 800C4C94 000C7C00 */ sll $t7, $t4, 0x10 +/* 0C5898 800C4C98 AC6E0000 */ sw $t6, ($v1) +/* 0C589C 800C4C9C 01F87025 */ or $t6, $t7, $t8 +/* 0C58A0 800C4CA0 AC6E0004 */ sw $t6, 4($v1) +/* 0C58A4 800C4CA4 8E270000 */ lw $a3, ($s1) +/* 0C58A8 800C4CA8 3C180400 */ lui $t8, (0x04000400 >> 16) # lui $t8, 0x400 +/* 0C58AC 800C4CAC 24F90008 */ addiu $t9, $a3, 8 +/* 0C58B0 800C4CB0 AE390000 */ sw $t9, ($s1) +/* 0C58B4 800C4CB4 37180400 */ ori $t8, (0x04000400 & 0xFFFF) # ori $t8, $t8, 0x400 +/* 0C58B8 800C4CB8 3C0FB200 */ lui $t7, 0xb200 +/* 0C58BC 800C4CBC ACEF0000 */ sw $t7, ($a3) +/* 0C58C0 800C4CC0 ACF80004 */ sw $t8, 4($a3) +.L800C4CC4: +/* 0C58C4 800C4CC4 3C0E8013 */ lui $t6, %hi(D_8012A7F0) # $t6, 0x8013 +/* 0C58C8 800C4CC8 8DCEA7F0 */ lw $t6, %lo(D_8012A7F0)($t6) +/* 0C58CC 800C4CCC 00000000 */ nop +/* 0C58D0 800C4CD0 11C00004 */ beqz $t6, .L800C4CE4 +/* 0C58D4 800C4CD4 00000000 */ nop +/* 0C58D8 800C4CD8 11000002 */ beqz $t0, .L800C4CE4 +/* 0C58DC 800C4CDC 00000000 */ nop +/* 0C58E0 800C4CE0 2508FFFF */ addiu $t0, $t0, -1 +.L800C4CE4: +/* 0C58E4 800C4CE4 92620001 */ lbu $v0, 1($s3) +/* 0C58E8 800C4CE8 02088021 */ addu $s0, $s0, $t0 +/* 0C58EC 800C4CEC 10400008 */ beqz $v0, .L800C4D10 +/* 0C58F0 800C4CF0 26730001 */ addiu $s3, $s3, 1 +/* 0C58F4 800C4CF4 8659000A */ lh $t9, 0xa($s2) +/* 0C58F8 800C4CF8 00000000 */ nop +/* 0C58FC 800C4CFC 033F082A */ slt $at, $t9, $ra +/* 0C5900 800C4D00 1020FF49 */ beqz $at, .L800C4A28 +/* 0C5904 800C4D04 304400FF */ andi $a0, $v0, 0xff +/* 0C5908 800C4D08 AFAD0064 */ sw $t5, 0x64($sp) +/* 0C590C 800C4D0C AFAC0068 */ sw $t4, 0x68($sp) +.L800C4D10: +/* 0C5910 800C4D10 864F0020 */ lh $t7, 0x20($s2) +/* 0C5914 800C4D14 864E0022 */ lh $t6, 0x22($s2) +/* 0C5918 800C4D18 020FC023 */ subu $t8, $s0, $t7 +/* 0C591C 800C4D1C 03EEC823 */ subu $t9, $ra, $t6 +/* 0C5920 800C4D20 A6580000 */ sh $t8, ($s2) +/* 0C5924 800C4D24 A6590002 */ sh $t9, 2($s2) +/* 0C5928 800C4D28 8E230000 */ lw $v1, ($s1) +/* 0C592C 800C4D2C 3C18E700 */ lui $t8, 0xe700 +/* 0C5930 800C4D30 246F0008 */ addiu $t7, $v1, 8 +/* 0C5934 800C4D34 AE2F0000 */ sw $t7, ($s1) +/* 0C5938 800C4D38 3C0E8013 */ lui $t6, %hi(D_8012A7E8) # $t6, 0x8013 +/* 0C593C 800C4D3C AC600004 */ sw $zero, 4($v1) +/* 0C5940 800C4D40 AC780000 */ sw $t8, ($v1) +/* 0C5944 800C4D44 8DCEA7E8 */ lw $t6, %lo(D_8012A7E8)($t6) +/* 0C5948 800C4D48 00000000 */ nop +/* 0C594C 800C4D4C 124E0003 */ beq $s2, $t6, .L800C4D5C +/* 0C5950 800C4D50 00000000 */ nop +/* 0C5954 800C4D54 0C019E8F */ jal func_80067A3C +/* 0C5958 800C4D58 02202025 */ move $a0, $s1 +.L800C4D5C: +/* 0C595C 800C4D5C 0C01ECF4 */ jal func_8007B3D0 +/* 0C5960 800C4D60 02202025 */ move $a0, $s1 +/* 0C5964 800C4D64 8E230000 */ lw $v1, ($s1) +/* 0C5968 800C4D68 3C0FE700 */ lui $t7, 0xe700 +/* 0C596C 800C4D6C 24790008 */ addiu $t9, $v1, 8 +/* 0C5970 800C4D70 AE390000 */ sw $t9, ($s1) +/* 0C5974 800C4D74 AC600004 */ sw $zero, 4($v1) +/* 0C5978 800C4D78 AC6F0000 */ sw $t7, ($v1) +.L800C4D7C: +/* 0C597C 800C4D7C 8FBF002C */ lw $ra, 0x2c($sp) +/* 0C5980 800C4D80 8FB00014 */ lw $s0, 0x14($sp) +/* 0C5984 800C4D84 8FB10018 */ lw $s1, 0x18($sp) +/* 0C5988 800C4D88 8FB2001C */ lw $s2, 0x1c($sp) +/* 0C598C 800C4D8C 8FB30020 */ lw $s3, 0x20($sp) +/* 0C5990 800C4D90 8FB40024 */ lw $s4, 0x24($sp) +/* 0C5994 800C4D94 8FB50028 */ lw $s5, 0x28($sp) +/* 0C5998 800C4D98 03E00008 */ jr $ra +/* 0C599C 800C4D9C 27BD0088 */ addiu $sp, $sp, 0x88 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C4DA0.s b/asm/non_matchings/unknown_0B8920/func_800C4DA0.s new file mode 100644 index 00000000..ad82dd9c --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C4DA0.s @@ -0,0 +1,94 @@ +glabel func_800C4DA0 +/* 0C59A0 800C4DA0 14800003 */ bnez $a0, .L800C4DB0 +/* 0C59A4 800C4DA4 3C188013 */ lui $t8, 0x8013 +/* 0C59A8 800C4DA8 03E00008 */ jr $ra +/* 0C59AC 800C4DAC 00001025 */ move $v0, $zero + +.L800C4DB0: +/* 0C59B0 800C4DB0 04C10006 */ bgez $a2, .L800C4DCC +/* 0C59B4 800C4DB4 00A01825 */ move $v1, $a1 +/* 0C59B8 800C4DB8 3C0E8013 */ lui $t6, %hi(D_8012A7E8) # $t6, 0x8013 +/* 0C59BC 800C4DBC 8DCEA7E8 */ lw $t6, %lo(D_8012A7E8)($t6) +/* 0C59C0 800C4DC0 00000000 */ nop +/* 0C59C4 800C4DC4 91C6001D */ lbu $a2, 0x1d($t6) +/* 0C59C8 800C4DC8 00000000 */ nop +.L800C4DCC: +/* 0C59CC 800C4DCC 8F18A7E4 */ lw $t8, -0x581c($t8) +/* 0C59D0 800C4DD0 90990000 */ lbu $t9, ($a0) +/* 0C59D4 800C4DD4 00067A80 */ sll $t7, $a2, 0xa +/* 0C59D8 800C4DD8 1320003D */ beqz $t9, .L800C4ED0 +/* 0C59DC 800C4DDC 01F81021 */ addu $v0, $t7, $t8 +/* 0C59E0 800C4DE0 3C0A8013 */ lui $t2, %hi(D_8012A7F0) # $t2, 0x8013 +/* 0C59E4 800C4DE4 8D4AA7F0 */ lw $t2, %lo(D_8012A7F0)($t2) +/* 0C59E8 800C4DE8 90880000 */ lbu $t0, ($a0) +/* 0C59EC 800C4DEC 00803825 */ move $a3, $a0 +/* 0C59F0 800C4DF0 240C00FF */ li $t4, 255 +/* 0C59F4 800C4DF4 240B0009 */ li $t3, 9 +/* 0C59F8 800C4DF8 310600FF */ andi $a2, $t0, 0xff +.L800C4DFC: +/* 0C59FC 800C4DFC 28C10021 */ slti $at, $a2, 0x21 +/* 0C5A00 800C4E00 00602025 */ move $a0, $v1 +/* 0C5A04 800C4E04 14200004 */ bnez $at, .L800C4E18 +/* 0C5A08 800C4E08 00C04825 */ move $t1, $a2 +/* 0C5A0C 800C4E0C 28C10080 */ slti $at, $a2, 0x80 +/* 0C5A10 800C4E10 14200017 */ bnez $at, .L800C4E70 +/* 0C5A14 800C4E14 2526FFE0 */ addiu $a2, $t1, -0x20 +.L800C4E18: +/* 0C5A18 800C4E18 15690012 */ bne $t3, $t1, .L800C4E64 +/* 0C5A1C 800C4E1C 00000000 */ nop +/* 0C5A20 800C4E20 94460026 */ lhu $a2, 0x26($v0) +/* 0C5A24 800C4E24 00000000 */ nop +/* 0C5A28 800C4E28 0066001A */ div $zero, $v1, $a2 +/* 0C5A2C 800C4E2C 00666821 */ addu $t5, $v1, $a2 +/* 0C5A30 800C4E30 14C00002 */ bnez $a2, .L800C4E3C +/* 0C5A34 800C4E34 00000000 */ nop +/* 0C5A38 800C4E38 0007000D */ break 7 +.L800C4E3C: +/* 0C5A3C 800C4E3C 2401FFFF */ li $at, -1 +/* 0C5A40 800C4E40 14C10004 */ bne $a2, $at, .L800C4E54 +/* 0C5A44 800C4E44 3C018000 */ lui $at, 0x8000 +/* 0C5A48 800C4E48 14610002 */ bne $v1, $at, .L800C4E54 +/* 0C5A4C 800C4E4C 00000000 */ nop +/* 0C5A50 800C4E50 0006000D */ break 6 +.L800C4E54: +/* 0C5A54 800C4E54 00007010 */ mfhi $t6 +/* 0C5A58 800C4E58 01AE1823 */ subu $v1, $t5, $t6 +/* 0C5A5C 800C4E5C 10000013 */ b .L800C4EAC +/* 0C5A60 800C4E60 00000000 */ nop +.L800C4E64: +/* 0C5A64 800C4E64 944F0024 */ lhu $t7, 0x24($v0) +/* 0C5A68 800C4E68 10000010 */ b .L800C4EAC +/* 0C5A6C 800C4E6C 006F1821 */ addu $v1, $v1, $t7 +.L800C4E70: +/* 0C5A70 800C4E70 30D800FF */ andi $t8, $a2, 0xff +/* 0C5A74 800C4E74 0018C8C0 */ sll $t9, $t8, 3 +/* 0C5A78 800C4E78 00594021 */ addu $t0, $v0, $t9 +/* 0C5A7C 800C4E7C 910D0100 */ lbu $t5, 0x100($t0) +/* 0C5A80 800C4E80 00000000 */ nop +/* 0C5A84 800C4E84 118D0009 */ beq $t4, $t5, .L800C4EAC +/* 0C5A88 800C4E88 00000000 */ nop +/* 0C5A8C 800C4E8C 94460020 */ lhu $a2, 0x20($v0) +/* 0C5A90 800C4E90 00000000 */ nop +/* 0C5A94 800C4E94 14C00004 */ bnez $a2, .L800C4EA8 +/* 0C5A98 800C4E98 00000000 */ nop +/* 0C5A9C 800C4E9C 910E0101 */ lbu $t6, 0x101($t0) +/* 0C5AA0 800C4EA0 10000002 */ b .L800C4EAC +/* 0C5AA4 800C4EA4 006E1821 */ addu $v1, $v1, $t6 +.L800C4EA8: +/* 0C5AA8 800C4EA8 00661821 */ addu $v1, $v1, $a2 +.L800C4EAC: +/* 0C5AAC 800C4EAC 11400004 */ beqz $t2, .L800C4EC0 +/* 0C5AB0 800C4EB0 00000000 */ nop +/* 0C5AB4 800C4EB4 10640002 */ beq $v1, $a0, .L800C4EC0 +/* 0C5AB8 800C4EB8 00000000 */ nop +/* 0C5ABC 800C4EBC 2463FFFF */ addiu $v1, $v1, -1 +.L800C4EC0: +/* 0C5AC0 800C4EC0 90E80001 */ lbu $t0, 1($a3) +/* 0C5AC4 800C4EC4 24E70001 */ addiu $a3, $a3, 1 +/* 0C5AC8 800C4EC8 1500FFCC */ bnez $t0, .L800C4DFC +/* 0C5ACC 800C4ECC 310600FF */ andi $a2, $t0, 0xff +.L800C4ED0: +/* 0C5AD0 800C4ED0 00651023 */ subu $v0, $v1, $a1 +/* 0C5AD4 800C4ED4 03E00008 */ jr $ra +/* 0C5AD8 800C4ED8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C4EDC.s b/asm/non_matchings/unknown_0B8920/func_800C4EDC.s new file mode 100644 index 00000000..2b126b32 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C4EDC.s @@ -0,0 +1,47 @@ +glabel func_800C4EDC +/* 0C5ADC 800C4EDC 18800025 */ blez $a0, .L800C4F74 +/* 0C5AE0 800C4EE0 28810008 */ slti $at, $a0, 8 +/* 0C5AE4 800C4EE4 10200023 */ beqz $at, .L800C4F74 +/* 0C5AE8 800C4EE8 00047080 */ sll $t6, $a0, 2 +/* 0C5AEC 800C4EEC 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 +/* 0C5AF0 800C4EF0 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) +/* 0C5AF4 800C4EF4 01C47021 */ addu $t6, $t6, $a0 +/* 0C5AF8 800C4EF8 000E70C0 */ sll $t6, $t6, 3 +/* 0C5AFC 800C4EFC 00A7082A */ slt $at, $a1, $a3 +/* 0C5B00 800C4F00 01CF1021 */ addu $v0, $t6, $t7 +/* 0C5B04 800C4F04 A4400000 */ sh $zero, ($v0) +/* 0C5B08 800C4F08 10200004 */ beqz $at, .L800C4F1C +/* 0C5B0C 800C4F0C A4400002 */ sh $zero, 2($v0) +/* 0C5B10 800C4F10 A4450004 */ sh $a1, 4($v0) +/* 0C5B14 800C4F14 10000003 */ b .L800C4F24 +/* 0C5B18 800C4F18 A4470008 */ sh $a3, 8($v0) +.L800C4F1C: +/* 0C5B1C 800C4F1C A4450008 */ sh $a1, 8($v0) +/* 0C5B20 800C4F20 A4470004 */ sh $a3, 4($v0) +.L800C4F24: +/* 0C5B24 800C4F24 8FA30010 */ lw $v1, 0x10($sp) +/* 0C5B28 800C4F28 00000000 */ nop +/* 0C5B2C 800C4F2C 00C3082A */ slt $at, $a2, $v1 +/* 0C5B30 800C4F30 10200004 */ beqz $at, .L800C4F44 +/* 0C5B34 800C4F34 00000000 */ nop +/* 0C5B38 800C4F38 A4460006 */ sh $a2, 6($v0) +/* 0C5B3C 800C4F3C 10000003 */ b .L800C4F4C +/* 0C5B40 800C4F40 A443000A */ sh $v1, 0xa($v0) +.L800C4F44: +/* 0C5B44 800C4F44 A446000A */ sh $a2, 0xa($v0) +/* 0C5B48 800C4F48 A4430006 */ sh $v1, 6($v0) +.L800C4F4C: +/* 0C5B4C 800C4F4C 84580008 */ lh $t8, 8($v0) +/* 0C5B50 800C4F50 84590004 */ lh $t9, 4($v0) +/* 0C5B54 800C4F54 844A000A */ lh $t2, 0xa($v0) +/* 0C5B58 800C4F58 844B0006 */ lh $t3, 6($v0) +/* 0C5B5C 800C4F5C 03194023 */ subu $t0, $t8, $t9 +/* 0C5B60 800C4F60 014B6023 */ subu $t4, $t2, $t3 +/* 0C5B64 800C4F64 25090001 */ addiu $t1, $t0, 1 +/* 0C5B68 800C4F68 258D0001 */ addiu $t5, $t4, 1 +/* 0C5B6C 800C4F6C A449000C */ sh $t1, 0xc($v0) +/* 0C5B70 800C4F70 A44D000E */ sh $t5, 0xe($v0) +.L800C4F74: +/* 0C5B74 800C4F74 03E00008 */ jr $ra +/* 0C5B78 800C4F78 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C4F7C.s b/asm/non_matchings/unknown_0B8920/func_800C4F7C.s new file mode 100644 index 00000000..cf276b19 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C4F7C.s @@ -0,0 +1,19 @@ +glabel func_800C4F7C +/* 0C5B7C 800C4F7C 0480000D */ bltz $a0, .L800C4FB4 +/* 0C5B80 800C4F80 28810008 */ slti $at, $a0, 8 +/* 0C5B84 800C4F84 1020000B */ beqz $at, .L800C4FB4 +/* 0C5B88 800C4F88 00047080 */ sll $t6, $a0, 2 +/* 0C5B8C 800C4F8C 3C188013 */ lui $t8, %hi(D_8012A7E0) # $t8, 0x8013 +/* 0C5B90 800C4F90 8F18A7E0 */ lw $t8, %lo(D_8012A7E0)($t8) +/* 0C5B94 800C4F94 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 +/* 0C5B98 800C4F98 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) +/* 0C5B9C 800C4F9C 01C47021 */ addu $t6, $t6, $a0 +/* 0C5BA0 800C4FA0 000E70C0 */ sll $t6, $t6, 3 +/* 0C5BA4 800C4FA4 00B8082A */ slt $at, $a1, $t8 +/* 0C5BA8 800C4FA8 10200002 */ beqz $at, .L800C4FB4 +/* 0C5BAC 800C4FAC 01CF1021 */ addu $v0, $t6, $t7 +/* 0C5BB0 800C4FB0 A045001D */ sb $a1, 0x1d($v0) +.L800C4FB4: +/* 0C5BB4 800C4FB4 03E00008 */ jr $ra +/* 0C5BB8 800C4FB8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C4FBC.s b/asm/non_matchings/unknown_0B8920/func_800C4FBC.s new file mode 100644 index 00000000..1c60f1c5 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C4FBC.s @@ -0,0 +1,20 @@ +glabel func_800C4FBC +/* 0C5BBC 800C4FBC 1880000E */ blez $a0, .L800C4FF8 +/* 0C5BC0 800C4FC0 28810008 */ slti $at, $a0, 8 +/* 0C5BC4 800C4FC4 1020000C */ beqz $at, .L800C4FF8 +/* 0C5BC8 800C4FC8 00047080 */ sll $t6, $a0, 2 +/* 0C5BCC 800C4FCC 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 +/* 0C5BD0 800C4FD0 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) +/* 0C5BD4 800C4FD4 01C47021 */ addu $t6, $t6, $a0 +/* 0C5BD8 800C4FD8 000E70C0 */ sll $t6, $t6, 3 +/* 0C5BDC 800C4FDC 01CF1021 */ addu $v0, $t6, $t7 +/* 0C5BE0 800C4FE0 A0450010 */ sb $a1, 0x10($v0) +/* 0C5BE4 800C4FE4 A0460011 */ sb $a2, 0x11($v0) +/* 0C5BE8 800C4FE8 A0470012 */ sb $a3, 0x12($v0) +/* 0C5BEC 800C4FEC 8FB80010 */ lw $t8, 0x10($sp) +/* 0C5BF0 800C4FF0 00000000 */ nop +/* 0C5BF4 800C4FF4 A0580013 */ sb $t8, 0x13($v0) +.L800C4FF8: +/* 0C5BF8 800C4FF8 03E00008 */ jr $ra +/* 0C5BFC 800C4FFC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C5000.s b/asm/non_matchings/unknown_0B8920/func_800C5000.s new file mode 100644 index 00000000..745c4747 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C5000.s @@ -0,0 +1,23 @@ +glabel func_800C5000 +/* 0C5C00 800C5000 18800011 */ blez $a0, .L800C5048 +/* 0C5C04 800C5004 28810008 */ slti $at, $a0, 8 +/* 0C5C08 800C5008 1020000F */ beqz $at, .L800C5048 +/* 0C5C0C 800C500C 00047080 */ sll $t6, $a0, 2 +/* 0C5C10 800C5010 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 +/* 0C5C14 800C5014 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) +/* 0C5C18 800C5018 01C47021 */ addu $t6, $t6, $a0 +/* 0C5C1C 800C501C 000E70C0 */ sll $t6, $t6, 3 +/* 0C5C20 800C5020 01CF1021 */ addu $v0, $t6, $t7 +/* 0C5C24 800C5024 A0450014 */ sb $a1, 0x14($v0) +/* 0C5C28 800C5028 A0460015 */ sb $a2, 0x15($v0) +/* 0C5C2C 800C502C A0470016 */ sb $a3, 0x16($v0) +/* 0C5C30 800C5030 8FB80010 */ lw $t8, 0x10($sp) +/* 0C5C34 800C5034 00000000 */ nop +/* 0C5C38 800C5038 A0580017 */ sb $t8, 0x17($v0) +/* 0C5C3C 800C503C 8FB90014 */ lw $t9, 0x14($sp) +/* 0C5C40 800C5040 00000000 */ nop +/* 0C5C44 800C5044 A059001C */ sb $t9, 0x1c($v0) +.L800C5048: +/* 0C5C48 800C5048 03E00008 */ jr $ra +/* 0C5C4C 800C504C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C5050.s b/asm/non_matchings/unknown_0B8920/func_800C5050.s new file mode 100644 index 00000000..b9e76c53 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C5050.s @@ -0,0 +1,78 @@ +glabel func_800C5050 +/* 0C5C50 800C5050 1880000E */ blez $a0, .L800C508C +/* 0C5C54 800C5054 28810008 */ slti $at, $a0, 8 +/* 0C5C58 800C5058 1020000C */ beqz $at, .L800C508C +/* 0C5C5C 800C505C 00047080 */ sll $t6, $a0, 2 +/* 0C5C60 800C5060 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 +/* 0C5C64 800C5064 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) +/* 0C5C68 800C5068 01C47021 */ addu $t6, $t6, $a0 +/* 0C5C6C 800C506C 000E70C0 */ sll $t6, $t6, 3 +/* 0C5C70 800C5070 01CF1021 */ addu $v0, $t6, $t7 +/* 0C5C74 800C5074 A0450018 */ sb $a1, 0x18($v0) +/* 0C5C78 800C5078 A0460019 */ sb $a2, 0x19($v0) +/* 0C5C7C 800C507C A047001A */ sb $a3, 0x1a($v0) +/* 0C5C80 800C5080 8FB80010 */ lw $t8, 0x10($sp) +/* 0C5C84 800C5084 00000000 */ nop +/* 0C5C88 800C5088 A058001B */ sb $t8, 0x1b($v0) +.L800C508C: +/* 0C5C8C 800C508C 03E00008 */ jr $ra +/* 0C5C90 800C5090 00000000 */ nop + +/* 0C5C94 800C5094 1880000E */ blez $a0, .L800C50D0 +/* 0C5C98 800C5098 28810008 */ slti $at, $a0, 8 +/* 0C5C9C 800C509C 1020000C */ beqz $at, .L800C50D0 +/* 0C5CA0 800C50A0 00047080 */ sll $t6, $a0, 2 +/* 0C5CA4 800C50A4 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 +/* 0C5CA8 800C50A8 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) +/* 0C5CAC 800C50AC 01C47021 */ addu $t6, $t6, $a0 +/* 0C5CB0 800C50B0 000E70C0 */ sll $t6, $t6, 3 +/* 0C5CB4 800C50B4 01CF1021 */ addu $v0, $t6, $t7 +/* 0C5CB8 800C50B8 84580020 */ lh $t8, 0x20($v0) +/* 0C5CBC 800C50BC 84480022 */ lh $t0, 0x22($v0) +/* 0C5CC0 800C50C0 0305C821 */ addu $t9, $t8, $a1 +/* 0C5CC4 800C50C4 01064821 */ addu $t1, $t0, $a2 +/* 0C5CC8 800C50C8 A4590020 */ sh $t9, 0x20($v0) +/* 0C5CCC 800C50CC A4490022 */ sh $t1, 0x22($v0) +.L800C50D0: +/* 0C5CD0 800C50D0 03E00008 */ jr $ra +/* 0C5CD4 800C50D4 00000000 */ nop + +/* 0C5CD8 800C50D8 1880000A */ blez $a0, .L800C5104 +/* 0C5CDC 800C50DC 28810008 */ slti $at, $a0, 8 +/* 0C5CE0 800C50E0 10200008 */ beqz $at, .L800C5104 +/* 0C5CE4 800C50E4 00047080 */ sll $t6, $a0, 2 +/* 0C5CE8 800C50E8 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 +/* 0C5CEC 800C50EC 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) +/* 0C5CF0 800C50F0 01C47021 */ addu $t6, $t6, $a0 +/* 0C5CF4 800C50F4 000E70C0 */ sll $t6, $t6, 3 +/* 0C5CF8 800C50F8 01CF1021 */ addu $v0, $t6, $t7 +/* 0C5CFC 800C50FC A4400020 */ sh $zero, 0x20($v0) +/* 0C5D00 800C5100 A4400022 */ sh $zero, 0x22($v0) +.L800C5104: +/* 0C5D04 800C5104 03E00008 */ jr $ra +/* 0C5D08 800C5108 00000000 */ nop + +/* 0C5D0C 800C510C 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0C5D10 800C5110 3C0E8013 */ lui $t6, %hi(D_8012A7E8) # $t6, 0x8013 +/* 0C5D14 800C5114 00047880 */ sll $t7, $a0, 2 +/* 0C5D18 800C5118 8DCEA7E8 */ lw $t6, %lo(D_8012A7E8)($t6) +/* 0C5D1C 800C511C AFA7002C */ sw $a3, 0x2c($sp) +/* 0C5D20 800C5120 01E47821 */ addu $t7, $t7, $a0 +/* 0C5D24 800C5124 AFA60028 */ sw $a2, 0x28($sp) +/* 0C5D28 800C5128 000F78C0 */ sll $t7, $t7, 3 +/* 0C5D2C 800C512C AFBF001C */ sw $ra, 0x1c($sp) +/* 0C5D30 800C5130 AFA50024 */ sw $a1, 0x24($sp) +/* 0C5D34 800C5134 01CF1021 */ addu $v0, $t6, $t7 +/* 0C5D38 800C5138 00A03825 */ move $a3, $a1 +/* 0C5D3C 800C513C 8FB80028 */ lw $t8, 0x28($sp) +/* 0C5D40 800C5140 8FB9002C */ lw $t9, 0x2c($sp) +/* 0C5D44 800C5144 84450000 */ lh $a1, ($v0) +/* 0C5D48 800C5148 84460002 */ lh $a2, 2($v0) +/* 0C5D4C 800C514C AFB80010 */ sw $t8, 0x10($sp) +/* 0C5D50 800C5150 0C03145A */ jal func_800C5168 +/* 0C5D54 800C5154 AFB90014 */ sw $t9, 0x14($sp) +/* 0C5D58 800C5158 8FBF001C */ lw $ra, 0x1c($sp) +/* 0C5D5C 800C515C 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0C5D60 800C5160 03E00008 */ jr $ra +/* 0C5D64 800C5164 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C5168.s b/asm/non_matchings/unknown_0B8920/func_800C5168.s new file mode 100644 index 00000000..6e031ab7 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C5168.s @@ -0,0 +1,225 @@ +glabel func_800C5168 +/* 0C5D68 800C5168 27BDFEB8 */ addiu $sp, $sp, -0x148 +/* 0C5D6C 800C516C AFB00018 */ sw $s0, 0x18($sp) +/* 0C5D70 800C5170 00808025 */ move $s0, $a0 +/* 0C5D74 800C5174 AFBF001C */ sw $ra, 0x1c($sp) +/* 0C5D78 800C5178 AFA5014C */ sw $a1, 0x14c($sp) +/* 0C5D7C 800C517C AFA60150 */ sw $a2, 0x150($sp) +/* 0C5D80 800C5180 14E00003 */ bnez $a3, .L800C5190 +/* 0C5D84 800C5184 AFA70154 */ sw $a3, 0x154($sp) +/* 0C5D88 800C5188 100000A3 */ b .L800C5418 +/* 0C5D8C 800C518C 00001025 */ move $v0, $zero +.L800C5190: +/* 0C5D90 800C5190 3C048013 */ lui $a0, %hi(D_8012A7EC) # $a0, 0x8013 +/* 0C5D94 800C5194 8C84A7EC */ lw $a0, %lo(D_8012A7EC)($a0) +/* 0C5D98 800C5198 00007940 */ sll $t7, $zero, 5 +/* 0C5D9C 800C519C 00001825 */ move $v1, $zero +/* 0C5DA0 800C51A0 00003825 */ move $a3, $zero +/* 0C5DA4 800C51A4 240500FF */ li $a1, 255 +/* 0C5DA8 800C51A8 008F1021 */ addu $v0, $a0, $t7 +.L800C51AC: +/* 0C5DAC 800C51AC 90580001 */ lbu $t8, 1($v0) +/* 0C5DB0 800C51B0 0003C940 */ sll $t9, $v1, 5 +/* 0C5DB4 800C51B4 14B80002 */ bne $a1, $t8, .L800C51C0 +/* 0C5DB8 800C51B8 00000000 */ nop +/* 0C5DBC 800C51BC 03243821 */ addu $a3, $t9, $a0 +.L800C51C0: +/* 0C5DC0 800C51C0 24630001 */ addiu $v1, $v1, 1 +/* 0C5DC4 800C51C4 28610040 */ slti $at, $v1, 0x40 +/* 0C5DC8 800C51C8 10200003 */ beqz $at, .L800C51D8 +/* 0C5DCC 800C51CC 24420020 */ addiu $v0, $v0, 0x20 +/* 0C5DD0 800C51D0 10E0FFF6 */ beqz $a3, .L800C51AC +/* 0C5DD4 800C51D4 00000000 */ nop +.L800C51D8: +/* 0C5DD8 800C51D8 10E0008E */ beqz $a3, .L800C5414 +/* 0C5DDC 800C51DC 240500FF */ li $a1, 255 +/* 0C5DE0 800C51E0 00105080 */ sll $t2, $s0, 2 +/* 0C5DE4 800C51E4 3C0B8013 */ lui $t3, %hi(D_8012A7E8) # $t3, 0x8013 +/* 0C5DE8 800C51E8 8D6BA7E8 */ lw $t3, %lo(D_8012A7E8)($t3) +/* 0C5DEC 800C51EC 8FAC014C */ lw $t4, 0x14c($sp) +/* 0C5DF0 800C51F0 01505021 */ addu $t2, $t2, $s0 +/* 0C5DF4 800C51F4 24028000 */ li $v0, -32768 +/* 0C5DF8 800C51F8 000A50C0 */ sll $t2, $t2, 3 +/* 0C5DFC 800C51FC 15820005 */ bne $t4, $v0, .L800C5214 +/* 0C5E00 800C5200 014B4021 */ addu $t0, $t2, $t3 +/* 0C5E04 800C5204 850D000C */ lh $t5, 0xc($t0) +/* 0C5E08 800C5208 00000000 */ nop +/* 0C5E0C 800C520C 000D7043 */ sra $t6, $t5, 1 +/* 0C5E10 800C5210 AFAE014C */ sw $t6, 0x14c($sp) +.L800C5214: +/* 0C5E14 800C5214 8FAF0150 */ lw $t7, 0x150($sp) +/* 0C5E18 800C5218 3C0B8013 */ lui $t3, %hi(D_8012A7E4) # $t3, 0x8013 +/* 0C5E1C 800C521C 15E20005 */ bne $t7, $v0, .L800C5234 +/* 0C5E20 800C5220 00000000 */ nop +/* 0C5E24 800C5224 8518000E */ lh $t8, 0xe($t0) +/* 0C5E28 800C5228 00000000 */ nop +/* 0C5E2C 800C522C 0018C843 */ sra $t9, $t8, 1 +/* 0C5E30 800C5230 AFB90150 */ sw $t9, 0x150($sp) +.L800C5234: +/* 0C5E34 800C5234 9102001D */ lbu $v0, 0x1d($t0) +/* 0C5E38 800C5238 8FA3015C */ lw $v1, 0x15c($sp) +/* 0C5E3C 800C523C 10A2002F */ beq $a1, $v0, .L800C52FC +/* 0C5E40 800C5240 00025280 */ sll $t2, $v0, 0xa +/* 0C5E44 800C5244 8D6BA7E4 */ lw $t3, %lo(D_8012A7E4)($t3) +/* 0C5E48 800C5248 306C0005 */ andi $t4, $v1, 5 +/* 0C5E4C 800C524C 1180001B */ beqz $t4, .L800C52BC +/* 0C5E50 800C5250 014B4821 */ addu $t1, $t2, $t3 +/* 0C5E54 800C5254 8FA60158 */ lw $a2, 0x158($sp) +/* 0C5E58 800C5258 8FA40154 */ lw $a0, 0x154($sp) +/* 0C5E5C 800C525C 27A50040 */ addiu $a1, $sp, 0x40 +/* 0C5E60 800C5260 AFA7003C */ sw $a3, 0x3c($sp) +/* 0C5E64 800C5264 AFA80030 */ sw $t0, 0x30($sp) +/* 0C5E68 800C5268 0C0317D8 */ jal func_800C5F60 +/* 0C5E6C 800C526C AFA9002C */ sw $t1, 0x2c($sp) +/* 0C5E70 800C5270 8FA80030 */ lw $t0, 0x30($sp) +/* 0C5E74 800C5274 8FA5014C */ lw $a1, 0x14c($sp) +/* 0C5E78 800C5278 9106001D */ lbu $a2, 0x1d($t0) +/* 0C5E7C 800C527C 0C031368 */ jal func_800C4DA0 +/* 0C5E80 800C5280 27A40040 */ addiu $a0, $sp, 0x40 +/* 0C5E84 800C5284 8FA3015C */ lw $v1, 0x15c($sp) +/* 0C5E88 800C5288 8FA4014C */ lw $a0, 0x14c($sp) +/* 0C5E8C 800C528C 8FA7003C */ lw $a3, 0x3c($sp) +/* 0C5E90 800C5290 8FA80030 */ lw $t0, 0x30($sp) +/* 0C5E94 800C5294 8FA9002C */ lw $t1, 0x2c($sp) +/* 0C5E98 800C5298 306D0001 */ andi $t5, $v1, 1 +/* 0C5E9C 800C529C 11A00005 */ beqz $t5, .L800C52B4 +/* 0C5EA0 800C52A0 00027043 */ sra $t6, $v0, 1 +/* 0C5EA4 800C52A4 00822023 */ subu $a0, $a0, $v0 +/* 0C5EA8 800C52A8 24840001 */ addiu $a0, $a0, 1 +/* 0C5EAC 800C52AC 10000003 */ b .L800C52BC +/* 0C5EB0 800C52B0 AFA4014C */ sw $a0, 0x14c($sp) +.L800C52B4: +/* 0C5EB4 800C52B4 008E2023 */ subu $a0, $a0, $t6 +/* 0C5EB8 800C52B8 AFA4014C */ sw $a0, 0x14c($sp) +.L800C52BC: +/* 0C5EBC 800C52BC 306F0002 */ andi $t7, $v1, 2 +/* 0C5EC0 800C52C0 11E00007 */ beqz $t7, .L800C52E0 +/* 0C5EC4 800C52C4 306C0008 */ andi $t4, $v1, 8 +/* 0C5EC8 800C52C8 8FB80150 */ lw $t8, 0x150($sp) +/* 0C5ECC 800C52CC 95390022 */ lhu $t9, 0x22($t1) +/* 0C5ED0 800C52D0 00000000 */ nop +/* 0C5ED4 800C52D4 03195023 */ subu $t2, $t8, $t9 +/* 0C5ED8 800C52D8 254B0001 */ addiu $t3, $t2, 1 +/* 0C5EDC 800C52DC AFAB0150 */ sw $t3, 0x150($sp) +.L800C52E0: +/* 0C5EE0 800C52E0 11800006 */ beqz $t4, .L800C52FC +/* 0C5EE4 800C52E4 00000000 */ nop +/* 0C5EE8 800C52E8 952E0022 */ lhu $t6, 0x22($t1) +/* 0C5EEC 800C52EC 8FAD0150 */ lw $t5, 0x150($sp) +/* 0C5EF0 800C52F0 000E7843 */ sra $t7, $t6, 1 +/* 0C5EF4 800C52F4 01AFC023 */ subu $t8, $t5, $t7 +/* 0C5EF8 800C52F8 AFB80150 */ sw $t8, 0x150($sp) +.L800C52FC: +/* 0C5EFC 800C52FC 8D040024 */ lw $a0, 0x24($t0) +/* 0C5F00 800C5300 8FB00158 */ lw $s0, 0x158($sp) +/* 0C5F04 800C5304 14800004 */ bnez $a0, .L800C5318 +/* 0C5F08 800C5308 25030024 */ addiu $v1, $t0, 0x24 +/* 0C5F0C 800C530C AD070024 */ sw $a3, 0x24($t0) +/* 0C5F10 800C5310 10000014 */ b .L800C5364 +/* 0C5F14 800C5314 ACE0001C */ sw $zero, 0x1c($a3) +.L800C5318: +/* 0C5F18 800C5318 10800010 */ beqz $a0, .L800C535C +/* 0C5F1C 800C531C 00801025 */ move $v0, $a0 +/* 0C5F20 800C5320 90990001 */ lbu $t9, 1($a0) +/* 0C5F24 800C5324 00000000 */ nop +/* 0C5F28 800C5328 0219082A */ slt $at, $s0, $t9 +/* 0C5F2C 800C532C 1020000B */ beqz $at, .L800C535C +/* 0C5F30 800C5330 00000000 */ nop +.L800C5334: +/* 0C5F34 800C5334 2443001C */ addiu $v1, $v0, 0x1c +/* 0C5F38 800C5338 8C42001C */ lw $v0, 0x1c($v0) +/* 0C5F3C 800C533C 00000000 */ nop +/* 0C5F40 800C5340 10400006 */ beqz $v0, .L800C535C +/* 0C5F44 800C5344 00000000 */ nop +/* 0C5F48 800C5348 904A0001 */ lbu $t2, 1($v0) +/* 0C5F4C 800C534C 00000000 */ nop +/* 0C5F50 800C5350 020A082A */ slt $at, $s0, $t2 +/* 0C5F54 800C5354 1420FFF7 */ bnez $at, .L800C5334 +/* 0C5F58 800C5358 00000000 */ nop +.L800C535C: +/* 0C5F5C 800C535C AC670000 */ sw $a3, ($v1) +/* 0C5F60 800C5360 ACE2001C */ sw $v0, 0x1c($a3) +.L800C5364: +/* 0C5F64 800C5364 A0F00001 */ sb $s0, 1($a3) +/* 0C5F68 800C5368 8FAB0154 */ lw $t3, 0x154($sp) +/* 0C5F6C 800C536C 00000000 */ nop +/* 0C5F70 800C5370 ACEB0004 */ sw $t3, 4($a3) +/* 0C5F74 800C5374 8FAC014C */ lw $t4, 0x14c($sp) +/* 0C5F78 800C5378 00000000 */ nop +/* 0C5F7C 800C537C A4EC0008 */ sh $t4, 8($a3) +/* 0C5F80 800C5380 8FAE0150 */ lw $t6, 0x150($sp) +/* 0C5F84 800C5384 A4E0000C */ sh $zero, 0xc($a3) +/* 0C5F88 800C5388 A4E0000E */ sh $zero, 0xe($a3) +/* 0C5F8C 800C538C A4EE000A */ sh $t6, 0xa($a3) +/* 0C5F90 800C5390 910D0014 */ lbu $t5, 0x14($t0) +/* 0C5F94 800C5394 00000000 */ nop +/* 0C5F98 800C5398 A0ED0010 */ sb $t5, 0x10($a3) +/* 0C5F9C 800C539C 910F0015 */ lbu $t7, 0x15($t0) +/* 0C5FA0 800C53A0 00000000 */ nop +/* 0C5FA4 800C53A4 A0EF0011 */ sb $t7, 0x11($a3) +/* 0C5FA8 800C53A8 91180016 */ lbu $t8, 0x16($t0) +/* 0C5FAC 800C53AC 00000000 */ nop +/* 0C5FB0 800C53B0 A0F80012 */ sb $t8, 0x12($a3) +/* 0C5FB4 800C53B4 91190017 */ lbu $t9, 0x17($t0) +/* 0C5FB8 800C53B8 00000000 */ nop +/* 0C5FBC 800C53BC A0F90013 */ sb $t9, 0x13($a3) +/* 0C5FC0 800C53C0 910A0018 */ lbu $t2, 0x18($t0) +/* 0C5FC4 800C53C4 00000000 */ nop +/* 0C5FC8 800C53C8 A0EA0014 */ sb $t2, 0x14($a3) +/* 0C5FCC 800C53CC 910B0019 */ lbu $t3, 0x19($t0) +/* 0C5FD0 800C53D0 00000000 */ nop +/* 0C5FD4 800C53D4 A0EB0015 */ sb $t3, 0x15($a3) +/* 0C5FD8 800C53D8 910C001A */ lbu $t4, 0x1a($t0) +/* 0C5FDC 800C53DC 00000000 */ nop +/* 0C5FE0 800C53E0 A0EC0016 */ sb $t4, 0x16($a3) +/* 0C5FE4 800C53E4 910E001B */ lbu $t6, 0x1b($t0) +/* 0C5FE8 800C53E8 00000000 */ nop +/* 0C5FEC 800C53EC A0EE0017 */ sb $t6, 0x17($a3) +/* 0C5FF0 800C53F0 910D001C */ lbu $t5, 0x1c($t0) +/* 0C5FF4 800C53F4 00000000 */ nop +/* 0C5FF8 800C53F8 A0ED0018 */ sb $t5, 0x18($a3) +/* 0C5FFC 800C53FC 910F001D */ lbu $t7, 0x1d($t0) +/* 0C6000 800C5400 00000000 */ nop +/* 0C6004 800C5404 A0EF0019 */ sb $t7, 0x19($a3) +/* 0C6008 800C5408 9518001E */ lhu $t8, 0x1e($t0) +/* 0C600C 800C540C 00000000 */ nop +/* 0C6010 800C5410 A4F8001A */ sh $t8, 0x1a($a3) +.L800C5414: +/* 0C6014 800C5414 00E01025 */ move $v0, $a3 +.L800C5418: +/* 0C6018 800C5418 8FBF001C */ lw $ra, 0x1c($sp) +/* 0C601C 800C541C 8FB00018 */ lw $s0, 0x18($sp) +/* 0C6020 800C5420 03E00008 */ jr $ra +/* 0C6024 800C5424 27BD0148 */ addiu $sp, $sp, 0x148 + +/* 0C6028 800C5428 00047080 */ sll $t6, $a0, 2 +/* 0C602C 800C542C 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 +/* 0C6030 800C5430 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) +/* 0C6034 800C5434 01C47021 */ addu $t6, $t6, $a0 +/* 0C6038 800C5438 000E70C0 */ sll $t6, $t6, 3 +/* 0C603C 800C543C 01CF1021 */ addu $v0, $t6, $t7 +/* 0C6040 800C5440 8C460024 */ lw $a2, 0x24($v0) +/* 0C6044 800C5444 24430024 */ addiu $v1, $v0, 0x24 +/* 0C6048 800C5448 10C0000A */ beqz $a2, .L800C5474 +/* 0C604C 800C544C 00000000 */ nop +/* 0C6050 800C5450 10C50008 */ beq $a2, $a1, .L800C5474 +/* 0C6054 800C5454 00000000 */ nop +.L800C5458: +/* 0C6058 800C5458 24C3001C */ addiu $v1, $a2, 0x1c +/* 0C605C 800C545C 8CC6001C */ lw $a2, 0x1c($a2) +/* 0C6060 800C5460 00000000 */ nop +/* 0C6064 800C5464 10C00003 */ beqz $a2, .L800C5474 +/* 0C6068 800C5468 00000000 */ nop +/* 0C606C 800C546C 14C5FFFA */ bne $a2, $a1, .L800C5458 +/* 0C6070 800C5470 00000000 */ nop +.L800C5474: +/* 0C6074 800C5474 10C00005 */ beqz $a2, .L800C548C +/* 0C6078 800C5478 00000000 */ nop +/* 0C607C 800C547C 8CD8001C */ lw $t8, 0x1c($a2) +/* 0C6080 800C5480 241900FF */ li $t9, 255 +/* 0C6084 800C5484 AC780000 */ sw $t8, ($v1) +/* 0C6088 800C5488 A0B90001 */ sb $t9, 1($a1) +.L800C548C: +/* 0C608C 800C548C 03E00008 */ jr $ra +/* 0C6090 800C5490 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C5494.s b/asm/non_matchings/unknown_0B8920/func_800C5494.s new file mode 100644 index 00000000..9b7613a9 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C5494.s @@ -0,0 +1,102 @@ +glabel func_800C5494 +/* 0C6094 800C5494 00047080 */ sll $t6, $a0, 2 +/* 0C6098 800C5498 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 +/* 0C609C 800C549C 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) +/* 0C60A0 800C54A0 01C47021 */ addu $t6, $t6, $a0 +/* 0C60A4 800C54A4 000E70C0 */ sll $t6, $t6, 3 +/* 0C60A8 800C54A8 01CF1021 */ addu $v0, $t6, $t7 +/* 0C60AC 800C54AC 8C430024 */ lw $v1, 0x24($v0) +/* 0C60B0 800C54B0 00000000 */ nop +/* 0C60B4 800C54B4 1060000A */ beqz $v1, .L800C54E0 +/* 0C60B8 800C54B8 00000000 */ nop +/* 0C60BC 800C54BC 10600007 */ beqz $v1, .L800C54DC +/* 0C60C0 800C54C0 00602025 */ move $a0, $v1 +/* 0C60C4 800C54C4 240300FF */ li $v1, 255 +.L800C54C8: +/* 0C60C8 800C54C8 A0830001 */ sb $v1, 1($a0) +/* 0C60CC 800C54CC 8C84001C */ lw $a0, 0x1c($a0) +/* 0C60D0 800C54D0 00000000 */ nop +/* 0C60D4 800C54D4 1480FFFC */ bnez $a0, .L800C54C8 +/* 0C60D8 800C54D8 00000000 */ nop +.L800C54DC: +/* 0C60DC 800C54DC AC400024 */ sw $zero, 0x24($v0) +.L800C54E0: +/* 0C60E0 800C54E0 03E00008 */ jr $ra +/* 0C60E4 800C54E4 00000000 */ nop + +/* 0C60E8 800C54E8 00047080 */ sll $t6, $a0, 2 +/* 0C60EC 800C54EC 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 +/* 0C60F0 800C54F0 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) +/* 0C60F4 800C54F4 01C47021 */ addu $t6, $t6, $a0 +/* 0C60F8 800C54F8 000E70C0 */ sll $t6, $t6, 3 +/* 0C60FC 800C54FC AFA60008 */ sw $a2, 8($sp) +/* 0C6100 800C5500 10A0003A */ beqz $a1, .L800C55EC +/* 0C6104 800C5504 01CF1021 */ addu $v0, $t6, $t7 +/* 0C6108 800C5508 90A30019 */ lbu $v1, 0x19($a1) +/* 0C610C 800C550C 240100FF */ li $at, 255 +/* 0C6110 800C5510 10610036 */ beq $v1, $at, .L800C55EC +/* 0C6114 800C5514 0003C280 */ sll $t8, $v1, 0xa +/* 0C6118 800C5518 3C198013 */ lui $t9, %hi(D_8012A7E4) # $t9, 0x8013 +/* 0C611C 800C551C 8FA60010 */ lw $a2, 0x10($sp) +/* 0C6120 800C5520 8F39A7E4 */ lw $t9, %lo(D_8012A7E4)($t9) +/* 0C6124 800C5524 24010004 */ li $at, 4 +/* 0C6128 800C5528 10C1002E */ beq $a2, $at, .L800C55E4 +/* 0C612C 800C552C 03192021 */ addu $a0, $t8, $t9 +/* 0C6130 800C5530 24010001 */ li $at, 1 +/* 0C6134 800C5534 10C10005 */ beq $a2, $at, .L800C554C +/* 0C6138 800C5538 24010002 */ li $at, 2 +/* 0C613C 800C553C 10C10009 */ beq $a2, $at, .L800C5564 +/* 0C6140 800C5540 00000000 */ nop +/* 0C6144 800C5544 10000020 */ b .L800C55C8 +/* 0C6148 800C5548 84AC000C */ lh $t4, 0xc($a1) +.L800C554C: +/* 0C614C 800C554C 94880022 */ lhu $t0, 0x22($a0) +/* 0C6150 800C5550 00000000 */ nop +/* 0C6154 800C5554 00E80019 */ multu $a3, $t0 +/* 0C6158 800C5558 00003812 */ mflo $a3 +/* 0C615C 800C555C 1000001A */ b .L800C55C8 +/* 0C6160 800C5560 84AC000C */ lh $t4, 0xc($a1) +.L800C5564: +/* 0C6164 800C5564 94830022 */ lhu $v1, 0x22($a0) +/* 0C6168 800C5568 8449000E */ lh $t1, 0xe($v0) +/* 0C616C 800C556C 00000000 */ nop +/* 0C6170 800C5570 0123001A */ div $zero, $t1, $v1 +/* 0C6174 800C5574 14600002 */ bnez $v1, .L800C5580 +/* 0C6178 800C5578 00000000 */ nop +/* 0C617C 800C557C 0007000D */ break 7 +.L800C5580: +/* 0C6180 800C5580 2401FFFF */ li $at, -1 +/* 0C6184 800C5584 14610004 */ bne $v1, $at, .L800C5598 +/* 0C6188 800C5588 3C018000 */ lui $at, 0x8000 +/* 0C618C 800C558C 15210002 */ bne $t1, $at, .L800C5598 +/* 0C6190 800C5590 00000000 */ nop +/* 0C6194 800C5594 0006000D */ break 6 +.L800C5598: +/* 0C6198 800C5598 00005012 */ mflo $t2 +/* 0C619C 800C559C 00000000 */ nop +/* 0C61A0 800C55A0 00000000 */ nop +/* 0C61A4 800C55A4 00EA0019 */ multu $a3, $t2 +/* 0C61A8 800C55A8 00005812 */ mflo $t3 +/* 0C61AC 800C55AC 00000000 */ nop +/* 0C61B0 800C55B0 00000000 */ nop +/* 0C61B4 800C55B4 01630019 */ multu $t3, $v1 +/* 0C61B8 800C55B8 00003812 */ mflo $a3 +/* 0C61BC 800C55BC 00000000 */ nop +/* 0C61C0 800C55C0 00000000 */ nop +/* 0C61C4 800C55C4 84AC000C */ lh $t4, 0xc($a1) +.L800C55C8: +/* 0C61C8 800C55C8 8FAD0008 */ lw $t5, 8($sp) +/* 0C61CC 800C55CC 84AF000E */ lh $t7, 0xe($a1) +/* 0C61D0 800C55D0 018D7021 */ addu $t6, $t4, $t5 +/* 0C61D4 800C55D4 01E7C021 */ addu $t8, $t7, $a3 +/* 0C61D8 800C55D8 A4AE000C */ sh $t6, 0xc($a1) +/* 0C61DC 800C55DC 03E00008 */ jr $ra +/* 0C61E0 800C55E0 A4B8000E */ sh $t8, 0xe($a1) + +.L800C55E4: +/* 0C61E4 800C55E4 A4A0000C */ sh $zero, 0xc($a1) +/* 0C61E8 800C55E8 A4A0000E */ sh $zero, 0xe($a1) +.L800C55EC: +/* 0C61EC 800C55EC 03E00008 */ jr $ra +/* 0C61F0 800C55F0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C55F4.s b/asm/non_matchings/unknown_0B8920/func_800C55F4.s new file mode 100644 index 00000000..d53b7230 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C55F4.s @@ -0,0 +1,13 @@ +glabel func_800C55F4 +/* 0C61F4 800C55F4 3C0E8013 */ lui $t6, %hi(D_8012A7E8) # $t6, 0x8013 +/* 0C61F8 800C55F8 00047880 */ sll $t7, $a0, 2 +/* 0C61FC 800C55FC 8DCEA7E8 */ lw $t6, %lo(D_8012A7E8)($t6) +/* 0C6200 800C5600 01E47821 */ addu $t7, $t7, $a0 +/* 0C6204 800C5604 000F78C0 */ sll $t7, $t7, 3 +/* 0C6208 800C5608 01CF1021 */ addu $v0, $t6, $t7 +/* 0C620C 800C560C 9458001E */ lhu $t8, 0x1e($v0) +/* 0C6210 800C5610 00000000 */ nop +/* 0C6214 800C5614 37198000 */ ori $t9, $t8, 0x8000 +/* 0C6218 800C5618 03E00008 */ jr $ra +/* 0C621C 800C561C A459001E */ sh $t9, 0x1e($v0) + diff --git a/asm/non_matchings/unknown_0B8920/func_800C5620.s b/asm/non_matchings/unknown_0B8920/func_800C5620.s new file mode 100644 index 00000000..6e7fe1e5 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C5620.s @@ -0,0 +1,49 @@ +glabel func_800C5620 +/* 0C6220 800C5620 3C0E8013 */ lui $t6, %hi(D_8012A7E8) # $t6, 0x8013 +/* 0C6224 800C5624 00047880 */ sll $t7, $a0, 2 +/* 0C6228 800C5628 8DCEA7E8 */ lw $t6, %lo(D_8012A7E8)($t6) +/* 0C622C 800C562C 01E47821 */ addu $t7, $t7, $a0 +/* 0C6230 800C5630 000F78C0 */ sll $t7, $t7, 3 +/* 0C6234 800C5634 01CF1021 */ addu $v0, $t6, $t7 +/* 0C6238 800C5638 9458001E */ lhu $t8, 0x1e($v0) +/* 0C623C 800C563C 00000000 */ nop +/* 0C6240 800C5640 33197FFF */ andi $t9, $t8, 0x7fff +/* 0C6244 800C5644 03E00008 */ jr $ra +/* 0C6248 800C5648 A459001E */ sh $t9, 0x1e($v0) + +/* 0C624C 800C564C 3C0E8013 */ lui $t6, %hi(D_8012A7E8) # $t6, 0x8013 +/* 0C6250 800C5650 00047880 */ sll $t7, $a0, 2 +/* 0C6254 800C5654 8DCEA7E8 */ lw $t6, %lo(D_8012A7E8)($t6) +/* 0C6258 800C5658 01E47821 */ addu $t7, $t7, $a0 +/* 0C625C 800C565C 000F78C0 */ sll $t7, $t7, 3 +/* 0C6260 800C5660 01CF1021 */ addu $v0, $t6, $t7 +/* 0C6264 800C5664 9458001E */ lhu $t8, 0x1e($v0) +/* 0C6268 800C5668 00000000 */ nop +/* 0C626C 800C566C 37190001 */ ori $t9, $t8, 1 +/* 0C6270 800C5670 03E00008 */ jr $ra +/* 0C6274 800C5674 A459001E */ sh $t9, 0x1e($v0) + +/* 0C6278 800C5678 3C0E8013 */ lui $t6, %hi(D_8012A7E8) # $t6, 0x8013 +/* 0C627C 800C567C 00047880 */ sll $t7, $a0, 2 +/* 0C6280 800C5680 8DCEA7E8 */ lw $t6, %lo(D_8012A7E8)($t6) +/* 0C6284 800C5684 01E47821 */ addu $t7, $t7, $a0 +/* 0C6288 800C5688 000F78C0 */ sll $t7, $t7, 3 +/* 0C628C 800C568C 01CF1021 */ addu $v0, $t6, $t7 +/* 0C6290 800C5690 9458001E */ lhu $t8, 0x1e($v0) +/* 0C6294 800C5694 00000000 */ nop +/* 0C6298 800C5698 3319FFFE */ andi $t9, $t8, 0xfffe +/* 0C629C 800C569C 03E00008 */ jr $ra +/* 0C62A0 800C56A0 A459001E */ sh $t9, 0x1e($v0) + +/* 0C62A4 800C56A4 3C0E8013 */ lui $t6, %hi(D_8012A7E8) # $t6, 0x8013 +/* 0C62A8 800C56A8 00047880 */ sll $t7, $a0, 2 +/* 0C62AC 800C56AC 8DCEA7E8 */ lw $t6, %lo(D_8012A7E8)($t6) +/* 0C62B0 800C56B0 01E47821 */ addu $t7, $t7, $a0 +/* 0C62B4 800C56B4 000F78C0 */ sll $t7, $t7, 3 +/* 0C62B8 800C56B8 01CF1021 */ addu $v0, $t6, $t7 +/* 0C62BC 800C56BC 9458001E */ lhu $t8, 0x1e($v0) +/* 0C62C0 800C56C0 00000000 */ nop +/* 0C62C4 800C56C4 37194000 */ ori $t9, $t8, 0x4000 +/* 0C62C8 800C56C8 03E00008 */ jr $ra +/* 0C62CC 800C56CC A459001E */ sh $t9, 0x1e($v0) + diff --git a/asm/non_matchings/unknown_0B8920/func_800C56D0.s b/asm/non_matchings/unknown_0B8920/func_800C56D0.s new file mode 100644 index 00000000..8a228db4 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C56D0.s @@ -0,0 +1,13 @@ +glabel func_800C56D0 +/* 0C62D0 800C56D0 3C0E8013 */ lui $t6, %hi(D_8012A7E8) # $t6, 0x8013 +/* 0C62D4 800C56D4 00047880 */ sll $t7, $a0, 2 +/* 0C62D8 800C56D8 8DCEA7E8 */ lw $t6, %lo(D_8012A7E8)($t6) +/* 0C62DC 800C56DC 01E47821 */ addu $t7, $t7, $a0 +/* 0C62E0 800C56E0 000F78C0 */ sll $t7, $t7, 3 +/* 0C62E4 800C56E4 01CF1021 */ addu $v0, $t6, $t7 +/* 0C62E8 800C56E8 9458001E */ lhu $t8, 0x1e($v0) +/* 0C62EC 800C56EC 00000000 */ nop +/* 0C62F0 800C56F0 3319BFFF */ andi $t9, $t8, 0xbfff +/* 0C62F4 800C56F4 03E00008 */ jr $ra +/* 0C62F8 800C56F8 A459001E */ sh $t9, 0x1e($v0) + diff --git a/asm/non_matchings/unknown_0B8920/func_800C56FC.s b/asm/non_matchings/unknown_0B8920/func_800C56FC.s new file mode 100644 index 00000000..6c8ab16c --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C56FC.s @@ -0,0 +1,75 @@ +glabel func_800C56FC +/* 0C62FC 800C56FC 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0C6300 800C5700 AFB00018 */ sw $s0, 0x18($sp) +/* 0C6304 800C5704 3C10800E */ lui $s0, %hi(D_800E36E8) # $s0, 0x800e +/* 0C6308 800C5708 261036E8 */ addiu $s0, %lo(D_800E36E8) # addiu $s0, $s0, 0x36e8 +/* 0C630C 800C570C 820E0000 */ lb $t6, ($s0) +/* 0C6310 800C5710 AFB60030 */ sw $s6, 0x30($sp) +/* 0C6314 800C5714 AFB5002C */ sw $s5, 0x2c($sp) +/* 0C6318 800C5718 AFB20020 */ sw $s2, 0x20($sp) +/* 0C631C 800C571C 00809025 */ move $s2, $a0 +/* 0C6320 800C5720 00A0A825 */ move $s5, $a1 +/* 0C6324 800C5724 00C0B025 */ move $s6, $a2 +/* 0C6328 800C5728 AFBF0034 */ sw $ra, 0x34($sp) +/* 0C632C 800C572C AFB40028 */ sw $s4, 0x28($sp) +/* 0C6330 800C5730 AFB30024 */ sw $s3, 0x24($sp) +/* 0C6334 800C5734 11C0000E */ beqz $t6, .L800C5770 +/* 0C6338 800C5738 AFB1001C */ sw $s1, 0x1c($sp) +/* 0C633C 800C573C 3C028013 */ lui $v0, %hi(D_8012A7F4) # $v0, 0x8013 +/* 0C6340 800C5740 2442A7F4 */ addiu $v0, %lo(D_8012A7F4) # addiu $v0, $v0, -0x580c +/* 0C6344 800C5744 804F0000 */ lb $t7, ($v0) +/* 0C6348 800C5748 00000000 */ nop +/* 0C634C 800C574C 25F8FFFF */ addiu $t8, $t7, -1 +/* 0C6350 800C5750 A0580000 */ sb $t8, ($v0) +/* 0C6354 800C5754 80590000 */ lb $t9, ($v0) +/* 0C6358 800C5758 00000000 */ nop +/* 0C635C 800C575C 17200004 */ bnez $t9, .L800C5770 +/* 0C6360 800C5760 00000000 */ nop +/* 0C6364 800C5764 0C027A6A */ jal func_8009E9A8 +/* 0C6368 800C5768 00000000 */ nop +/* 0C636C 800C576C A2000000 */ sb $zero, ($s0) +.L800C5770: +/* 0C6370 800C5770 3C138013 */ lui $s3, %hi(D_8012A7E8) # $s3, 0x8013 +/* 0C6374 800C5774 2673A7E8 */ addiu $s3, %lo(D_8012A7E8) # addiu $s3, $s3, -0x5818 +/* 0C6378 800C5778 24100001 */ li $s0, 1 +/* 0C637C 800C577C 24110028 */ li $s1, 40 +/* 0C6380 800C5780 24140008 */ li $s4, 8 +.L800C5784: +/* 0C6384 800C5784 8E680000 */ lw $t0, ($s3) +/* 0C6388 800C5788 00000000 */ nop +/* 0C638C 800C578C 01114821 */ addu $t1, $t0, $s1 +/* 0C6390 800C5790 9522001E */ lhu $v0, 0x1e($t1) +/* 0C6394 800C5794 00000000 */ nop +/* 0C6398 800C5798 304A8000 */ andi $t2, $v0, 0x8000 +/* 0C639C 800C579C 1140000E */ beqz $t2, .L800C57D8 +/* 0C63A0 800C57A0 304B4000 */ andi $t3, $v0, 0x4000 +/* 0C63A4 800C57A4 11600008 */ beqz $t3, .L800C57C8 +/* 0C63A8 800C57A8 02402025 */ move $a0, $s2 +/* 0C63AC 800C57AC 02402025 */ move $a0, $s2 +/* 0C63B0 800C57B0 02A02825 */ move $a1, $s5 +/* 0C63B4 800C57B4 02C03025 */ move $a2, $s6 +/* 0C63B8 800C57B8 0C0316D6 */ jal func_800C5B58 +/* 0C63BC 800C57BC 02003825 */ move $a3, $s0 +/* 0C63C0 800C57C0 10000006 */ b .L800C57DC +/* 0C63C4 800C57C4 26100001 */ addiu $s0, $s0, 1 +.L800C57C8: +/* 0C63C8 800C57C8 00002825 */ move $a1, $zero +/* 0C63CC 800C57CC 00003025 */ move $a2, $zero +/* 0C63D0 800C57D0 0C0316D6 */ jal func_800C5B58 +/* 0C63D4 800C57D4 02003825 */ move $a3, $s0 +.L800C57D8: +/* 0C63D8 800C57D8 26100001 */ addiu $s0, $s0, 1 +.L800C57DC: +/* 0C63DC 800C57DC 1614FFE9 */ bne $s0, $s4, .L800C5784 +/* 0C63E0 800C57E0 26310028 */ addiu $s1, $s1, 0x28 +/* 0C63E4 800C57E4 8FBF0034 */ lw $ra, 0x34($sp) +/* 0C63E8 800C57E8 8FB00018 */ lw $s0, 0x18($sp) +/* 0C63EC 800C57EC 8FB1001C */ lw $s1, 0x1c($sp) +/* 0C63F0 800C57F0 8FB20020 */ lw $s2, 0x20($sp) +/* 0C63F4 800C57F4 8FB30024 */ lw $s3, 0x24($sp) +/* 0C63F8 800C57F8 8FB40028 */ lw $s4, 0x28($sp) +/* 0C63FC 800C57FC 8FB5002C */ lw $s5, 0x2c($sp) +/* 0C6400 800C5800 8FB60030 */ lw $s6, 0x30($sp) +/* 0C6404 800C5804 03E00008 */ jr $ra +/* 0C6408 800C5808 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C580C.s b/asm/non_matchings/unknown_0B8920/func_800C580C.s new file mode 100644 index 00000000..fe4d0ea4 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C580C.s @@ -0,0 +1,189 @@ +glabel func_800C580C +/* 0C640C 800C580C 8C820000 */ lw $v0, ($a0) +/* 0C6410 800C5810 04A10005 */ bgez $a1, .L800C5828 +/* 0C6414 800C5814 00001825 */ move $v1, $zero +/* 0C6418 800C5818 240E002D */ li $t6, 45 +/* 0C641C 800C581C A04E0000 */ sb $t6, ($v0) +/* 0C6420 800C5820 24420001 */ addiu $v0, $v0, 1 +/* 0C6424 800C5824 00052823 */ negu $a1, $a1 +.L800C5828: +/* 0C6428 800C5828 3C07800E */ lui $a3, %hi(D_800E36EC) # $a3, 0x800e +/* 0C642C 800C582C 8CE736EC */ lw $a3, %lo(D_800E36EC)($a3) +/* 0C6430 800C5830 24060001 */ li $a2, 1 +/* 0C6434 800C5834 00A7082A */ slt $at, $a1, $a3 +/* 0C6438 800C5838 14200015 */ bnez $at, .L800C5890 +/* 0C643C 800C583C 24090030 */ li $t1, 48 +/* 0C6440 800C5840 00A7001A */ div $zero, $a1, $a3 +/* 0C6444 800C5844 24030001 */ li $v1, 1 +/* 0C6448 800C5848 14E00002 */ bnez $a3, .L800C5854 +/* 0C644C 800C584C 00000000 */ nop +/* 0C6450 800C5850 0007000D */ break 7 +.L800C5854: +/* 0C6454 800C5854 2401FFFF */ li $at, -1 +/* 0C6458 800C5858 14E10004 */ bne $a3, $at, .L800C586C +/* 0C645C 800C585C 3C018000 */ lui $at, 0x8000 +/* 0C6460 800C5860 14A10002 */ bne $a1, $at, .L800C586C +/* 0C6464 800C5864 00000000 */ nop +/* 0C6468 800C5868 0006000D */ break 6 +.L800C586C: +/* 0C646C 800C586C 00005812 */ mflo $t3 +/* 0C6470 800C5870 25690030 */ addiu $t1, $t3, 0x30 +/* 0C6474 800C5874 313800FF */ andi $t8, $t1, 0xff +/* 0C6478 800C5878 01670019 */ multu $t3, $a3 +/* 0C647C 800C587C 03004825 */ move $t1, $t8 +/* 0C6480 800C5880 01605025 */ move $t2, $t3 +/* 0C6484 800C5884 00007812 */ mflo $t7 +/* 0C6488 800C5888 00AF2823 */ subu $a1, $a1, $t7 +/* 0C648C 800C588C 00000000 */ nop +.L800C5890: +/* 0C6490 800C5890 10600003 */ beqz $v1, .L800C58A0 +/* 0C6494 800C5894 0006C880 */ sll $t9, $a2, 2 +/* 0C6498 800C5898 A0490000 */ sb $t1, ($v0) +/* 0C649C 800C589C 24420001 */ addiu $v0, $v0, 1 +.L800C58A0: +/* 0C64A0 800C58A0 3C0D800E */ lui $t5, %hi(D_800E36EC) # $t5, 0x800e +/* 0C64A4 800C58A4 25AD36EC */ addiu $t5, %lo(D_800E36EC) # addiu $t5, $t5, 0x36ec +/* 0C64A8 800C58A8 3C0C800E */ lui $t4, %hi(D_800E3710) # $t4, 0x800e +/* 0C64AC 800C58AC 258C3710 */ addiu $t4, %lo(D_800E3710) # addiu $t4, $t4, 0x3710 +/* 0C64B0 800C58B0 032D4021 */ addu $t0, $t9, $t5 +.L800C58B4: +/* 0C64B4 800C58B4 8D060000 */ lw $a2, ($t0) +/* 0C64B8 800C58B8 24090030 */ li $t1, 48 +/* 0C64BC 800C58BC 00A6082A */ slt $at, $a1, $a2 +/* 0C64C0 800C58C0 14200015 */ bnez $at, .L800C5918 +/* 0C64C4 800C58C4 00C03825 */ move $a3, $a2 +/* 0C64C8 800C58C8 00A6001A */ div $zero, $a1, $a2 +/* 0C64CC 800C58CC 24030001 */ li $v1, 1 +/* 0C64D0 800C58D0 14C00002 */ bnez $a2, .L800C58DC +/* 0C64D4 800C58D4 00000000 */ nop +/* 0C64D8 800C58D8 0007000D */ break 7 +.L800C58DC: +/* 0C64DC 800C58DC 2401FFFF */ li $at, -1 +/* 0C64E0 800C58E0 14C10004 */ bne $a2, $at, .L800C58F4 +/* 0C64E4 800C58E4 3C018000 */ lui $at, 0x8000 +/* 0C64E8 800C58E8 14A10002 */ bne $a1, $at, .L800C58F4 +/* 0C64EC 800C58EC 00000000 */ nop +/* 0C64F0 800C58F0 0006000D */ break 6 +.L800C58F4: +/* 0C64F4 800C58F4 00003812 */ mflo $a3 +/* 0C64F8 800C58F8 24E90030 */ addiu $t1, $a3, 0x30 +/* 0C64FC 800C58FC 312F00FF */ andi $t7, $t1, 0xff +/* 0C6500 800C5900 00E60019 */ multu $a3, $a2 +/* 0C6504 800C5904 00E05025 */ move $t2, $a3 +/* 0C6508 800C5908 01E04825 */ move $t1, $t7 +/* 0C650C 800C590C 00007012 */ mflo $t6 +/* 0C6510 800C5910 00AE2823 */ subu $a1, $a1, $t6 +/* 0C6514 800C5914 00000000 */ nop +.L800C5918: +/* 0C6518 800C5918 10600003 */ beqz $v1, .L800C5928 +/* 0C651C 800C591C 00000000 */ nop +/* 0C6520 800C5920 A0490000 */ sb $t1, ($v0) +/* 0C6524 800C5924 24420001 */ addiu $v0, $v0, 1 +.L800C5928: +/* 0C6528 800C5928 8D070004 */ lw $a3, 4($t0) +/* 0C652C 800C592C 24090030 */ li $t1, 48 +/* 0C6530 800C5930 00A7082A */ slt $at, $a1, $a3 +/* 0C6534 800C5934 14200015 */ bnez $at, .L800C598C +/* 0C6538 800C5938 00000000 */ nop +/* 0C653C 800C593C 00A7001A */ div $zero, $a1, $a3 +/* 0C6540 800C5940 24030001 */ li $v1, 1 +/* 0C6544 800C5944 14E00002 */ bnez $a3, .L800C5950 +/* 0C6548 800C5948 00000000 */ nop +/* 0C654C 800C594C 0007000D */ break 7 +.L800C5950: +/* 0C6550 800C5950 2401FFFF */ li $at, -1 +/* 0C6554 800C5954 14E10004 */ bne $a3, $at, .L800C5968 +/* 0C6558 800C5958 3C018000 */ lui $at, 0x8000 +/* 0C655C 800C595C 14A10002 */ bne $a1, $at, .L800C5968 +/* 0C6560 800C5960 00000000 */ nop +/* 0C6564 800C5964 0006000D */ break 6 +.L800C5968: +/* 0C6568 800C5968 00005812 */ mflo $t3 +/* 0C656C 800C596C 25690030 */ addiu $t1, $t3, 0x30 +/* 0C6570 800C5970 313900FF */ andi $t9, $t1, 0xff +/* 0C6574 800C5974 01670019 */ multu $t3, $a3 +/* 0C6578 800C5978 03204825 */ move $t1, $t9 +/* 0C657C 800C597C 01605025 */ move $t2, $t3 +/* 0C6580 800C5980 0000C012 */ mflo $t8 +/* 0C6584 800C5984 00B82823 */ subu $a1, $a1, $t8 +/* 0C6588 800C5988 00000000 */ nop +.L800C598C: +/* 0C658C 800C598C 10600003 */ beqz $v1, .L800C599C +/* 0C6590 800C5990 00000000 */ nop +/* 0C6594 800C5994 A0490000 */ sb $t1, ($v0) +/* 0C6598 800C5998 24420001 */ addiu $v0, $v0, 1 +.L800C599C: +/* 0C659C 800C599C 8D070008 */ lw $a3, 8($t0) +/* 0C65A0 800C59A0 24090030 */ li $t1, 48 +/* 0C65A4 800C59A4 00A7082A */ slt $at, $a1, $a3 +/* 0C65A8 800C59A8 14200015 */ bnez $at, .L800C5A00 +/* 0C65AC 800C59AC 00000000 */ nop +/* 0C65B0 800C59B0 00A7001A */ div $zero, $a1, $a3 +/* 0C65B4 800C59B4 24030001 */ li $v1, 1 +/* 0C65B8 800C59B8 14E00002 */ bnez $a3, .L800C59C4 +/* 0C65BC 800C59BC 00000000 */ nop +/* 0C65C0 800C59C0 0007000D */ break 7 +.L800C59C4: +/* 0C65C4 800C59C4 2401FFFF */ li $at, -1 +/* 0C65C8 800C59C8 14E10004 */ bne $a3, $at, .L800C59DC +/* 0C65CC 800C59CC 3C018000 */ lui $at, 0x8000 +/* 0C65D0 800C59D0 14A10002 */ bne $a1, $at, .L800C59DC +/* 0C65D4 800C59D4 00000000 */ nop +/* 0C65D8 800C59D8 0006000D */ break 6 +.L800C59DC: +/* 0C65DC 800C59DC 00005812 */ mflo $t3 +/* 0C65E0 800C59E0 25690030 */ addiu $t1, $t3, 0x30 +/* 0C65E4 800C59E4 312E00FF */ andi $t6, $t1, 0xff +/* 0C65E8 800C59E8 01670019 */ multu $t3, $a3 +/* 0C65EC 800C59EC 01C04825 */ move $t1, $t6 +/* 0C65F0 800C59F0 01605025 */ move $t2, $t3 +/* 0C65F4 800C59F4 00006812 */ mflo $t5 +/* 0C65F8 800C59F8 00AD2823 */ subu $a1, $a1, $t5 +/* 0C65FC 800C59FC 00000000 */ nop +.L800C5A00: +/* 0C6600 800C5A00 10600003 */ beqz $v1, .L800C5A10 +/* 0C6604 800C5A04 00000000 */ nop +/* 0C6608 800C5A08 A0490000 */ sb $t1, ($v0) +/* 0C660C 800C5A0C 24420001 */ addiu $v0, $v0, 1 +.L800C5A10: +/* 0C6610 800C5A10 8D07000C */ lw $a3, 0xc($t0) +/* 0C6614 800C5A14 25080010 */ addiu $t0, $t0, 0x10 +/* 0C6618 800C5A18 00A7082A */ slt $at, $a1, $a3 +/* 0C661C 800C5A1C 14200015 */ bnez $at, .L800C5A74 +/* 0C6620 800C5A20 24090030 */ li $t1, 48 +/* 0C6624 800C5A24 00A7001A */ div $zero, $a1, $a3 +/* 0C6628 800C5A28 24030001 */ li $v1, 1 +/* 0C662C 800C5A2C 14E00002 */ bnez $a3, .L800C5A38 +/* 0C6630 800C5A30 00000000 */ nop +/* 0C6634 800C5A34 0007000D */ break 7 +.L800C5A38: +/* 0C6638 800C5A38 2401FFFF */ li $at, -1 +/* 0C663C 800C5A3C 14E10004 */ bne $a3, $at, .L800C5A50 +/* 0C6640 800C5A40 3C018000 */ lui $at, 0x8000 +/* 0C6644 800C5A44 14A10002 */ bne $a1, $at, .L800C5A50 +/* 0C6648 800C5A48 00000000 */ nop +/* 0C664C 800C5A4C 0006000D */ break 6 +.L800C5A50: +/* 0C6650 800C5A50 00005812 */ mflo $t3 +/* 0C6654 800C5A54 25690030 */ addiu $t1, $t3, 0x30 +/* 0C6658 800C5A58 313800FF */ andi $t8, $t1, 0xff +/* 0C665C 800C5A5C 01670019 */ multu $t3, $a3 +/* 0C6660 800C5A60 03004825 */ move $t1, $t8 +/* 0C6664 800C5A64 01605025 */ move $t2, $t3 +/* 0C6668 800C5A68 00007812 */ mflo $t7 +/* 0C666C 800C5A6C 00AF2823 */ subu $a1, $a1, $t7 +/* 0C6670 800C5A70 00000000 */ nop +.L800C5A74: +/* 0C6674 800C5A74 10600003 */ beqz $v1, .L800C5A84 +/* 0C6678 800C5A78 00000000 */ nop +/* 0C667C 800C5A7C A0490000 */ sb $t1, ($v0) +/* 0C6680 800C5A80 24420001 */ addiu $v0, $v0, 1 +.L800C5A84: +/* 0C6684 800C5A84 150CFF8B */ bne $t0, $t4, .L800C58B4 +/* 0C6688 800C5A88 00000000 */ nop +/* 0C668C 800C5A8C 24B90030 */ addiu $t9, $a1, 0x30 +/* 0C6690 800C5A90 A0590000 */ sb $t9, ($v0) +/* 0C6694 800C5A94 24420001 */ addiu $v0, $v0, 1 +/* 0C6698 800C5A98 03E00008 */ jr $ra +/* 0C669C 800C5A9C AC820000 */ sw $v0, ($a0) + diff --git a/asm/non_matchings/unknown_0B8920/func_800C5AA0.s b/asm/non_matchings/unknown_0B8920/func_800C5AA0.s new file mode 100644 index 00000000..b36dd42d --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C5AA0.s @@ -0,0 +1,52 @@ +glabel func_800C5AA0 +/* 0C66A0 800C5AA0 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C66A4 800C5AA4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0C66A8 800C5AA8 AFA40018 */ sw $a0, 0x18($sp) +/* 0C66AC 800C5AAC AFA70024 */ sw $a3, 0x24($sp) +/* 0C66B0 800C5AB0 AFA5001C */ sw $a1, 0x1c($sp) +/* 0C66B4 800C5AB4 0C01E948 */ jal func_8007A520 +/* 0C66B8 800C5AB8 AFA60020 */ sw $a2, 0x20($sp) +/* 0C66BC 800C5ABC 8FA70024 */ lw $a3, 0x24($sp) +/* 0C66C0 800C5AC0 8FA5001C */ lw $a1, 0x1c($sp) +/* 0C66C4 800C5AC4 8FA60020 */ lw $a2, 0x20($sp) +/* 0C66C8 800C5AC8 8FA80018 */ lw $t0, 0x18($sp) +/* 0C66CC 800C5ACC 04E0001E */ bltz $a3, .L800C5B48 +/* 0C66D0 800C5AD0 304EFFFF */ andi $t6, $v0, 0xffff +/* 0C66D4 800C5AD4 00AE082B */ sltu $at, $a1, $t6 +/* 0C66D8 800C5AD8 1020001C */ beqz $at, .L800C5B4C +/* 0C66DC 800C5ADC 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C66E0 800C5AE0 8FA40028 */ lw $a0, 0x28($sp) +/* 0C66E4 800C5AE4 00027C02 */ srl $t7, $v0, 0x10 +/* 0C66E8 800C5AE8 04800017 */ bltz $a0, .L800C5B48 +/* 0C66EC 800C5AEC 00CF082B */ sltu $at, $a2, $t7 +/* 0C66F0 800C5AF0 10200015 */ beqz $at, .L800C5B48 +/* 0C66F4 800C5AF4 30F903FF */ andi $t9, $a3, 0x3ff +/* 0C66F8 800C5AF8 04A10002 */ bgez $a1, .L800C5B04 +/* 0C66FC 800C5AFC 00194B80 */ sll $t1, $t9, 0xe +/* 0C6700 800C5B00 00002825 */ move $a1, $zero +.L800C5B04: +/* 0C6704 800C5B04 04C10002 */ bgez $a2, .L800C5B10 +/* 0C6708 800C5B08 3C01F600 */ lui $at, 0xf600 +/* 0C670C 800C5B0C 00003025 */ move $a2, $zero +.L800C5B10: +/* 0C6710 800C5B10 8D030000 */ lw $v1, ($t0) +/* 0C6714 800C5B14 01215025 */ or $t2, $t1, $at +/* 0C6718 800C5B18 24780008 */ addiu $t8, $v1, 8 +/* 0C671C 800C5B1C AD180000 */ sw $t8, ($t0) +/* 0C6720 800C5B20 30D803FF */ andi $t8, $a2, 0x3ff +/* 0C6724 800C5B24 308B03FF */ andi $t3, $a0, 0x3ff +/* 0C6728 800C5B28 30AE03FF */ andi $t6, $a1, 0x3ff +/* 0C672C 800C5B2C 000E7B80 */ sll $t7, $t6, 0xe +/* 0C6730 800C5B30 000B6080 */ sll $t4, $t3, 2 +/* 0C6734 800C5B34 0018C880 */ sll $t9, $t8, 2 +/* 0C6738 800C5B38 01F94825 */ or $t1, $t7, $t9 +/* 0C673C 800C5B3C 014C6825 */ or $t5, $t2, $t4 +/* 0C6740 800C5B40 AC6D0000 */ sw $t5, ($v1) +/* 0C6744 800C5B44 AC690004 */ sw $t1, 4($v1) +.L800C5B48: +/* 0C6748 800C5B48 8FBF0014 */ lw $ra, 0x14($sp) +.L800C5B4C: +/* 0C674C 800C5B4C 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0C6750 800C5B50 03E00008 */ jr $ra +/* 0C6754 800C5B54 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C5B58.s b/asm/non_matchings/unknown_0B8920/func_800C5B58.s new file mode 100644 index 00000000..6d342178 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C5B58.s @@ -0,0 +1,274 @@ +glabel func_800C5B58 +/* 0C6758 800C5B58 27BDFE80 */ addiu $sp, $sp, -0x180 +/* 0C675C 800C5B5C 00077080 */ sll $t6, $a3, 2 +/* 0C6760 800C5B60 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 +/* 0C6764 800C5B64 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) +/* 0C6768 800C5B68 01C77021 */ addu $t6, $t6, $a3 +/* 0C676C 800C5B6C AFB10028 */ sw $s1, 0x28($sp) +/* 0C6770 800C5B70 000E70C0 */ sll $t6, $t6, 3 +/* 0C6774 800C5B74 AFBF0034 */ sw $ra, 0x34($sp) +/* 0C6778 800C5B78 AFB30030 */ sw $s3, 0x30($sp) +/* 0C677C 800C5B7C AFB2002C */ sw $s2, 0x2c($sp) +/* 0C6780 800C5B80 AFB00024 */ sw $s0, 0x24($sp) +/* 0C6784 800C5B84 E7B50018 */ swc1 $f21, 0x18($sp) +/* 0C6788 800C5B88 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 0C678C 800C5B8C AFA60188 */ sw $a2, 0x188($sp) +/* 0C6790 800C5B90 01CF8821 */ addu $s1, $t6, $t7 +/* 0C6794 800C5B94 92380013 */ lbu $t8, 0x13($s1) +/* 0C6798 800C5B98 00A09025 */ move $s2, $a1 +/* 0C679C 800C5B9C 13000095 */ beqz $t8, .L800C5DF4 +/* 0C67A0 800C5BA0 00809825 */ move $s3, $a0 +/* 0C67A4 800C5BA4 8C820000 */ lw $v0, ($a0) +/* 0C67A8 800C5BA8 3C0B800E */ lui $t3, %hi(D_800E3690) # $t3, 0x800e +/* 0C67AC 800C5BAC 24590008 */ addiu $t9, $v0, 8 +/* 0C67B0 800C5BB0 AC990000 */ sw $t9, ($a0) +/* 0C67B4 800C5BB4 256B3690 */ addiu $t3, %lo(D_800E3690) # addiu $t3, $t3, 0x3690 +/* 0C67B8 800C5BB8 3C0A0600 */ lui $t2, 0x600 +/* 0C67BC 800C5BBC AC4A0000 */ sw $t2, ($v0) +/* 0C67C0 800C5BC0 AC4B0004 */ sw $t3, 4($v0) +/* 0C67C4 800C5BC4 8C820000 */ lw $v0, ($a0) +/* 0C67C8 800C5BC8 3C0D0702 */ lui $t5, (0x07020010 >> 16) # lui $t5, 0x702 +/* 0C67CC 800C5BCC 244C0008 */ addiu $t4, $v0, 8 +/* 0C67D0 800C5BD0 AE6C0000 */ sw $t4, ($s3) +/* 0C67D4 800C5BD4 3C0E000E */ lui $t6, %hi(D_000E36D8) # $t6, 0xe +/* 0C67D8 800C5BD8 25CE36D8 */ addiu $t6, %lo(D_000E36D8) # addiu $t6, $t6, 0x36d8 +/* 0C67DC 800C5BDC 35AD0010 */ ori $t5, (0x07020010 & 0xFFFF) # ori $t5, $t5, 0x10 +/* 0C67E0 800C5BE0 AC4D0000 */ sw $t5, ($v0) +/* 0C67E4 800C5BE4 AC4E0004 */ sw $t6, 4($v0) +/* 0C67E8 800C5BE8 8E620000 */ lw $v0, ($s3) +/* 0C67EC 800C5BEC 3C18FB00 */ lui $t8, 0xfb00 +/* 0C67F0 800C5BF0 244F0008 */ addiu $t7, $v0, 8 +/* 0C67F4 800C5BF4 AE6F0000 */ sw $t7, ($s3) +/* 0C67F8 800C5BF8 AC400004 */ sw $zero, 4($v0) +/* 0C67FC 800C5BFC AC580000 */ sw $t8, ($v0) +/* 0C6800 800C5C00 86290004 */ lh $t1, 4($s1) +/* 0C6804 800C5C04 86280008 */ lh $t0, 8($s1) +/* 0C6808 800C5C08 02602025 */ move $a0, $s3 +/* 0C680C 800C5C0C 0109C823 */ subu $t9, $t0, $t1 +/* 0C6810 800C5C10 2B21000A */ slti $at, $t9, 0xa +/* 0C6814 800C5C14 14200008 */ bnez $at, .L800C5C38 +/* 0C6818 800C5C18 2525FFFE */ addiu $a1, $t1, -2 +/* 0C681C 800C5C1C 8622000A */ lh $v0, 0xa($s1) +/* 0C6820 800C5C20 86300006 */ lh $s0, 6($s1) +/* 0C6824 800C5C24 25270002 */ addiu $a3, $t1, 2 +/* 0C6828 800C5C28 00505023 */ subu $t2, $v0, $s0 +/* 0C682C 800C5C2C 2941000A */ slti $at, $t2, 0xa +/* 0C6830 800C5C30 1020000A */ beqz $at, .L800C5C5C +/* 0C6834 800C5C34 26060002 */ addiu $a2, $s0, 2 +.L800C5C38: +/* 0C6838 800C5C38 862B000A */ lh $t3, 0xa($s1) +/* 0C683C 800C5C3C 86260006 */ lh $a2, 6($s1) +/* 0C6840 800C5C40 256C0002 */ addiu $t4, $t3, 2 +/* 0C6844 800C5C44 AFAC0010 */ sw $t4, 0x10($sp) +/* 0C6848 800C5C48 25070002 */ addiu $a3, $t0, 2 +/* 0C684C 800C5C4C 0C0316A8 */ jal func_800C5AA0 +/* 0C6850 800C5C50 24C6FFFE */ addiu $a2, $a2, -2 +/* 0C6854 800C5C54 10000025 */ b .L800C5CEC +/* 0C6858 800C5C58 8E620000 */ lw $v0, ($s3) +.L800C5C5C: +/* 0C685C 800C5C5C 244DFFFE */ addiu $t5, $v0, -2 +/* 0C6860 800C5C60 AFAD0010 */ sw $t5, 0x10($sp) +/* 0C6864 800C5C64 02602025 */ move $a0, $s3 +/* 0C6868 800C5C68 0C0316A8 */ jal func_800C5AA0 +/* 0C686C 800C5C6C 2525FFFE */ addiu $a1, $t1, -2 +/* 0C6870 800C5C70 86300006 */ lh $s0, 6($s1) +/* 0C6874 800C5C74 86250004 */ lh $a1, 4($s1) +/* 0C6878 800C5C78 86270008 */ lh $a3, 8($s1) +/* 0C687C 800C5C7C 260E0002 */ addiu $t6, $s0, 2 +/* 0C6880 800C5C80 AFAE0010 */ sw $t6, 0x10($sp) +/* 0C6884 800C5C84 02602025 */ move $a0, $s3 +/* 0C6888 800C5C88 2606FFFE */ addiu $a2, $s0, -2 +/* 0C688C 800C5C8C 24A5FFFE */ addiu $a1, $a1, -2 +/* 0C6890 800C5C90 0C0316A8 */ jal func_800C5AA0 +/* 0C6894 800C5C94 24E70002 */ addiu $a3, $a3, 2 +/* 0C6898 800C5C98 86280008 */ lh $t0, 8($s1) +/* 0C689C 800C5C9C 862F000A */ lh $t7, 0xa($s1) +/* 0C68A0 800C5CA0 86260006 */ lh $a2, 6($s1) +/* 0C68A4 800C5CA4 25F8FFFE */ addiu $t8, $t7, -2 +/* 0C68A8 800C5CA8 AFB80010 */ sw $t8, 0x10($sp) +/* 0C68AC 800C5CAC 02602025 */ move $a0, $s3 +/* 0C68B0 800C5CB0 2505FFFE */ addiu $a1, $t0, -2 +/* 0C68B4 800C5CB4 25070002 */ addiu $a3, $t0, 2 +/* 0C68B8 800C5CB8 0C0316A8 */ jal func_800C5AA0 +/* 0C68BC 800C5CBC 24C60002 */ addiu $a2, $a2, 2 +/* 0C68C0 800C5CC0 8622000A */ lh $v0, 0xa($s1) +/* 0C68C4 800C5CC4 86250004 */ lh $a1, 4($s1) +/* 0C68C8 800C5CC8 86270008 */ lh $a3, 8($s1) +/* 0C68CC 800C5CCC 24590002 */ addiu $t9, $v0, 2 +/* 0C68D0 800C5CD0 AFB90010 */ sw $t9, 0x10($sp) +/* 0C68D4 800C5CD4 02602025 */ move $a0, $s3 +/* 0C68D8 800C5CD8 2446FFFE */ addiu $a2, $v0, -2 +/* 0C68DC 800C5CDC 24A5FFFE */ addiu $a1, $a1, -2 +/* 0C68E0 800C5CE0 0C0316A8 */ jal func_800C5AA0 +/* 0C68E4 800C5CE4 24E70002 */ addiu $a3, $a3, 2 +/* 0C68E8 800C5CE8 8E620000 */ lw $v0, ($s3) +.L800C5CEC: +/* 0C68EC 800C5CEC 3C0BE700 */ lui $t3, 0xe700 +/* 0C68F0 800C5CF0 244A0008 */ addiu $t2, $v0, 8 +/* 0C68F4 800C5CF4 AE6A0000 */ sw $t2, ($s3) +/* 0C68F8 800C5CF8 AC400004 */ sw $zero, 4($v0) +/* 0C68FC 800C5CFC AC4B0000 */ sw $t3, ($v0) +/* 0C6900 800C5D00 8E620000 */ lw $v0, ($s3) +/* 0C6904 800C5D04 3C0DFB00 */ lui $t5, 0xfb00 +/* 0C6908 800C5D08 244C0008 */ addiu $t4, $v0, 8 +/* 0C690C 800C5D0C AE6C0000 */ sw $t4, ($s3) +/* 0C6910 800C5D10 AC4D0000 */ sw $t5, ($v0) +/* 0C6914 800C5D14 922F0010 */ lbu $t7, 0x10($s1) +/* 0C6918 800C5D18 922A0011 */ lbu $t2, 0x11($s1) +/* 0C691C 800C5D1C 000FC600 */ sll $t8, $t7, 0x18 +/* 0C6920 800C5D20 922E0012 */ lbu $t6, 0x12($s1) +/* 0C6924 800C5D24 000A5C00 */ sll $t3, $t2, 0x10 +/* 0C6928 800C5D28 030B6025 */ or $t4, $t8, $t3 +/* 0C692C 800C5D2C 92380013 */ lbu $t8, 0x13($s1) +/* 0C6930 800C5D30 000E7A00 */ sll $t7, $t6, 8 +/* 0C6934 800C5D34 018FC825 */ or $t9, $t4, $t7 +/* 0C6938 800C5D38 03385825 */ or $t3, $t9, $t8 +/* 0C693C 800C5D3C 3C0D800E */ lui $t5, %hi(D_800E3710) # $t5, 0x800e +/* 0C6940 800C5D40 AC4B0004 */ sw $t3, 4($v0) +/* 0C6944 800C5D44 81AD3710 */ lb $t5, %lo(D_800E3710)($t5) +/* 0C6948 800C5D48 3C0E800E */ lui $t6, 0x800e +/* 0C694C 800C5D4C 05A00023 */ bltz $t5, .L800C5DDC +/* 0C6950 800C5D50 25D03710 */ addiu $s0, $t6, 0x3710 +/* 0C6954 800C5D54 82020000 */ lb $v0, ($s0) +/* 0C6958 800C5D58 00000000 */ nop +.L800C5D5C: +/* 0C695C 800C5D5C 862C0004 */ lh $t4, 4($s1) +/* 0C6960 800C5D60 820F0001 */ lb $t7, 1($s0) +/* 0C6964 800C5D64 02602025 */ move $a0, $s3 +/* 0C6968 800C5D68 11E00005 */ beqz $t7, .L800C5D80 +/* 0C696C 800C5D6C 004C2821 */ addu $a1, $v0, $t4 +/* 0C6970 800C5D70 820A0002 */ lb $t2, 2($s0) +/* 0C6974 800C5D74 8639000A */ lh $t9, 0xa($s1) +/* 0C6978 800C5D78 10000005 */ b .L800C5D90 +/* 0C697C 800C5D7C 01593021 */ addu $a2, $t2, $t9 +.L800C5D80: +/* 0C6980 800C5D80 82180002 */ lb $t8, 2($s0) +/* 0C6984 800C5D84 862B0006 */ lh $t3, 6($s1) +/* 0C6988 800C5D88 00000000 */ nop +/* 0C698C 800C5D8C 030B3021 */ addu $a2, $t8, $t3 +.L800C5D90: +/* 0C6990 800C5D90 862D0008 */ lh $t5, 8($s1) +/* 0C6994 800C5D94 820E0003 */ lb $t6, 3($s0) +/* 0C6998 800C5D98 01A23823 */ subu $a3, $t5, $v0 +/* 0C699C 800C5D9C 11C00005 */ beqz $t6, .L800C5DB4 +/* 0C69A0 800C5DA0 00000000 */ nop +/* 0C69A4 800C5DA4 820C0004 */ lb $t4, 4($s0) +/* 0C69A8 800C5DA8 862F000A */ lh $t7, 0xa($s1) +/* 0C69AC 800C5DAC 10000005 */ b .L800C5DC4 +/* 0C69B0 800C5DB0 018F1021 */ addu $v0, $t4, $t7 +.L800C5DB4: +/* 0C69B4 800C5DB4 820A0004 */ lb $t2, 4($s0) +/* 0C69B8 800C5DB8 86390006 */ lh $t9, 6($s1) +/* 0C69BC 800C5DBC 00000000 */ nop +/* 0C69C0 800C5DC0 01591021 */ addu $v0, $t2, $t9 +.L800C5DC4: +/* 0C69C4 800C5DC4 0C0316A8 */ jal func_800C5AA0 +/* 0C69C8 800C5DC8 AFA20010 */ sw $v0, 0x10($sp) +/* 0C69CC 800C5DCC 82020005 */ lb $v0, 5($s0) +/* 0C69D0 800C5DD0 26100005 */ addiu $s0, $s0, 5 +/* 0C69D4 800C5DD4 0441FFE1 */ bgez $v0, .L800C5D5C +/* 0C69D8 800C5DD8 00000000 */ nop +.L800C5DDC: +/* 0C69DC 800C5DDC 8E620000 */ lw $v0, ($s3) +/* 0C69E0 800C5DE0 3C0BE700 */ lui $t3, 0xe700 +/* 0C69E4 800C5DE4 24580008 */ addiu $t8, $v0, 8 +/* 0C69E8 800C5DE8 AE780000 */ sw $t8, ($s3) +/* 0C69EC 800C5DEC AC400004 */ sw $zero, 4($v0) +/* 0C69F0 800C5DF0 AC4B0000 */ sw $t3, ($v0) +.L800C5DF4: +/* 0C69F4 800C5DF4 12400015 */ beqz $s2, .L800C5E4C +/* 0C69F8 800C5DF8 00000000 */ nop +/* 0C69FC 800C5DFC 8FAD0188 */ lw $t5, 0x188($sp) +/* 0C6A00 800C5E00 3C10800E */ lui $s0, %hi(D_800E36E8) # $s0, 0x800e +/* 0C6A04 800C5E04 11A00011 */ beqz $t5, .L800C5E4C +/* 0C6A08 800C5E08 261036E8 */ addiu $s0, %lo(D_800E36E8) # addiu $s0, $s0, 0x36e8 +/* 0C6A0C 800C5E0C 820E0000 */ lb $t6, ($s0) +/* 0C6A10 800C5E10 00000000 */ nop +/* 0C6A14 800C5E14 15C00006 */ bnez $t6, .L800C5E30 +/* 0C6A18 800C5E18 240F0002 */ li $t7, 2 +/* 0C6A1C 800C5E1C 0C027A68 */ jal func_8009E9A0 +/* 0C6A20 800C5E20 00000000 */ nop +/* 0C6A24 800C5E24 240C0001 */ li $t4, 1 +/* 0C6A28 800C5E28 A20C0000 */ sb $t4, ($s0) +/* 0C6A2C 800C5E2C 240F0002 */ li $t7, 2 +.L800C5E30: +/* 0C6A30 800C5E30 3C018013 */ lui $at, %hi(D_8012A7F4) # $at, 0x8013 +/* 0C6A34 800C5E34 8FA70188 */ lw $a3, 0x188($sp) +/* 0C6A38 800C5E38 A02FA7F4 */ sb $t7, %lo(D_8012A7F4)($at) +/* 0C6A3C 800C5E3C 02202025 */ move $a0, $s1 +/* 0C6A40 800C5E40 02602825 */ move $a1, $s3 +/* 0C6A44 800C5E44 0C027A6C */ jal func_8009E9B0 +/* 0C6A48 800C5E48 02403025 */ move $a2, $s2 +.L800C5E4C: +/* 0C6A4C 800C5E4C 8E300024 */ lw $s0, 0x24($s1) +/* 0C6A50 800C5E50 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0C6A54 800C5E54 1200003A */ beqz $s0, .L800C5F40 +/* 0C6A58 800C5E58 8FBF0034 */ lw $ra, 0x34($sp) +/* 0C6A5C 800C5E5C 4481A000 */ mtc1 $at, $f20 +/* 0C6A60 800C5E60 27B2006C */ addiu $s2, $sp, 0x6c +.L800C5E64: +/* 0C6A64 800C5E64 860A0008 */ lh $t2, 8($s0) +/* 0C6A68 800C5E68 8619000C */ lh $t9, 0xc($s0) +/* 0C6A6C 800C5E6C 02402825 */ move $a1, $s2 +/* 0C6A70 800C5E70 0159C021 */ addu $t8, $t2, $t9 +/* 0C6A74 800C5E74 A6380000 */ sh $t8, ($s1) +/* 0C6A78 800C5E78 860D000E */ lh $t5, 0xe($s0) +/* 0C6A7C 800C5E7C 860B000A */ lh $t3, 0xa($s0) +/* 0C6A80 800C5E80 00000000 */ nop +/* 0C6A84 800C5E84 016D7021 */ addu $t6, $t3, $t5 +/* 0C6A88 800C5E88 A62E0002 */ sh $t6, 2($s1) +/* 0C6A8C 800C5E8C 920C0010 */ lbu $t4, 0x10($s0) +/* 0C6A90 800C5E90 00000000 */ nop +/* 0C6A94 800C5E94 A22C0014 */ sb $t4, 0x14($s1) +/* 0C6A98 800C5E98 920F0011 */ lbu $t7, 0x11($s0) +/* 0C6A9C 800C5E9C 00000000 */ nop +/* 0C6AA0 800C5EA0 A22F0015 */ sb $t7, 0x15($s1) +/* 0C6AA4 800C5EA4 920A0012 */ lbu $t2, 0x12($s0) +/* 0C6AA8 800C5EA8 00000000 */ nop +/* 0C6AAC 800C5EAC A22A0016 */ sb $t2, 0x16($s1) +/* 0C6AB0 800C5EB0 92190013 */ lbu $t9, 0x13($s0) +/* 0C6AB4 800C5EB4 00000000 */ nop +/* 0C6AB8 800C5EB8 A2390017 */ sb $t9, 0x17($s1) +/* 0C6ABC 800C5EBC 92180014 */ lbu $t8, 0x14($s0) +/* 0C6AC0 800C5EC0 00000000 */ nop +/* 0C6AC4 800C5EC4 A2380018 */ sb $t8, 0x18($s1) +/* 0C6AC8 800C5EC8 920B0015 */ lbu $t3, 0x15($s0) +/* 0C6ACC 800C5ECC 00000000 */ nop +/* 0C6AD0 800C5ED0 A22B0019 */ sb $t3, 0x19($s1) +/* 0C6AD4 800C5ED4 920D0016 */ lbu $t5, 0x16($s0) +/* 0C6AD8 800C5ED8 00000000 */ nop +/* 0C6ADC 800C5EDC A22D001A */ sb $t5, 0x1a($s1) +/* 0C6AE0 800C5EE0 920E0017 */ lbu $t6, 0x17($s0) +/* 0C6AE4 800C5EE4 00000000 */ nop +/* 0C6AE8 800C5EE8 A22E001B */ sb $t6, 0x1b($s1) +/* 0C6AEC 800C5EEC 920C0018 */ lbu $t4, 0x18($s0) +/* 0C6AF0 800C5EF0 00000000 */ nop +/* 0C6AF4 800C5EF4 A22C001C */ sb $t4, 0x1c($s1) +/* 0C6AF8 800C5EF8 920F0019 */ lbu $t7, 0x19($s0) +/* 0C6AFC 800C5EFC 00000000 */ nop +/* 0C6B00 800C5F00 A22F001D */ sb $t7, 0x1d($s1) +/* 0C6B04 800C5F04 92060001 */ lbu $a2, 1($s0) +/* 0C6B08 800C5F08 8E040004 */ lw $a0, 4($s0) +/* 0C6B0C 800C5F0C 0C0317D8 */ jal func_800C5F60 +/* 0C6B10 800C5F10 00000000 */ nop +/* 0C6B14 800C5F14 02602025 */ move $a0, $s3 +/* 0C6B18 800C5F18 02202825 */ move $a1, $s1 +/* 0C6B1C 800C5F1C 02403025 */ move $a2, $s2 +/* 0C6B20 800C5F20 00003825 */ move $a3, $zero +/* 0C6B24 800C5F24 0C031169 */ jal func_800C45A4 +/* 0C6B28 800C5F28 E7B40010 */ swc1 $f20, 0x10($sp) +/* 0C6B2C 800C5F2C 8E10001C */ lw $s0, 0x1c($s0) +/* 0C6B30 800C5F30 00000000 */ nop +/* 0C6B34 800C5F34 1600FFCB */ bnez $s0, .L800C5E64 +/* 0C6B38 800C5F38 00000000 */ nop +/* 0C6B3C 800C5F3C 8FBF0034 */ lw $ra, 0x34($sp) +.L800C5F40: +/* 0C6B40 800C5F40 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 0C6B44 800C5F44 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 0C6B48 800C5F48 8FB00024 */ lw $s0, 0x24($sp) +/* 0C6B4C 800C5F4C 8FB10028 */ lw $s1, 0x28($sp) +/* 0C6B50 800C5F50 8FB2002C */ lw $s2, 0x2c($sp) +/* 0C6B54 800C5F54 8FB30030 */ lw $s3, 0x30($sp) +/* 0C6B58 800C5F58 03E00008 */ jr $ra +/* 0C6B5C 800C5F5C 27BD0180 */ addiu $sp, $sp, 0x180 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C5F60.s b/asm/non_matchings/unknown_0B8920/func_800C5F60.s new file mode 100644 index 00000000..84286eef --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C5F60.s @@ -0,0 +1,46 @@ +glabel func_800C5F60 +/* 0C6B60 800C5F60 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0C6B64 800C5F64 AFBF0024 */ sw $ra, 0x24($sp) +/* 0C6B68 800C5F68 AFB30020 */ sw $s3, 0x20($sp) +/* 0C6B6C 800C5F6C AFB2001C */ sw $s2, 0x1c($sp) +/* 0C6B70 800C5F70 AFB10018 */ sw $s1, 0x18($sp) +/* 0C6B74 800C5F74 AFB00014 */ sw $s0, 0x14($sp) +/* 0C6B78 800C5F78 AFA5002C */ sw $a1, 0x2c($sp) +/* 0C6B7C 800C5F7C 90820000 */ lbu $v0, ($a0) +/* 0C6B80 800C5F80 00808025 */ move $s0, $a0 +/* 0C6B84 800C5F84 10400014 */ beqz $v0, .L800C5FD8 +/* 0C6B88 800C5F88 00C09825 */ move $s3, $a2 +/* 0C6B8C 800C5F8C 27B2002C */ addiu $s2, $sp, 0x2c +/* 0C6B90 800C5F90 2411007E */ li $s1, 126 +.L800C5F94: +/* 0C6B94 800C5F94 16220005 */ bne $s1, $v0, .L800C5FAC +/* 0C6B98 800C5F98 02402025 */ move $a0, $s2 +/* 0C6B9C 800C5F9C 0C031603 */ jal func_800C580C +/* 0C6BA0 800C5FA0 02602825 */ move $a1, $s3 +/* 0C6BA4 800C5FA4 10000008 */ b .L800C5FC8 +/* 0C6BA8 800C5FA8 26100001 */ addiu $s0, $s0, 1 +.L800C5FAC: +/* 0C6BAC 800C5FAC 8FAE002C */ lw $t6, 0x2c($sp) +/* 0C6BB0 800C5FB0 26100001 */ addiu $s0, $s0, 1 +/* 0C6BB4 800C5FB4 A1C20000 */ sb $v0, ($t6) +/* 0C6BB8 800C5FB8 8FAF002C */ lw $t7, 0x2c($sp) +/* 0C6BBC 800C5FBC 00000000 */ nop +/* 0C6BC0 800C5FC0 25F80001 */ addiu $t8, $t7, 1 +/* 0C6BC4 800C5FC4 AFB8002C */ sw $t8, 0x2c($sp) +.L800C5FC8: +/* 0C6BC8 800C5FC8 92020000 */ lbu $v0, ($s0) +/* 0C6BCC 800C5FCC 00000000 */ nop +/* 0C6BD0 800C5FD0 1440FFF0 */ bnez $v0, .L800C5F94 +/* 0C6BD4 800C5FD4 00000000 */ nop +.L800C5FD8: +/* 0C6BD8 800C5FD8 8FB9002C */ lw $t9, 0x2c($sp) +/* 0C6BDC 800C5FDC 00000000 */ nop +/* 0C6BE0 800C5FE0 A3200000 */ sb $zero, ($t9) +/* 0C6BE4 800C5FE4 8FBF0024 */ lw $ra, 0x24($sp) +/* 0C6BE8 800C5FE8 8FB30020 */ lw $s3, 0x20($sp) +/* 0C6BEC 800C5FEC 8FB2001C */ lw $s2, 0x1c($sp) +/* 0C6BF0 800C5FF0 8FB10018 */ lw $s1, 0x18($sp) +/* 0C6BF4 800C5FF4 8FB00014 */ lw $s0, 0x14($sp) +/* 0C6BF8 800C5FF8 03E00008 */ jr $ra +/* 0C6BFC 800C5FFC 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C6000.s b/asm/non_matchings/unknown_0B8920/func_800C6000.s new file mode 100644 index 00000000..4f15b99c --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C6000.s @@ -0,0 +1,97 @@ +glabel func_800C6000 +/* 0C6C00 800C6000 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0C6C04 800C6004 AFB00020 */ sw $s0, 0x20($sp) +/* 0C6C08 800C6008 3C10800E */ lui $s0, %hi(D_800E3740) # $s0, 0x800e +/* 0C6C0C 800C600C 26103740 */ addiu $s0, %lo(D_800E3740) # addiu $s0, $s0, 0x3740 +/* 0C6C10 800C6010 8E0E0000 */ lw $t6, ($s0) +/* 0C6C14 800C6014 AFBF0024 */ sw $ra, 0x24($sp) +/* 0C6C18 800C6018 AFA40030 */ sw $a0, 0x30($sp) +/* 0C6C1C 800C601C AFA50034 */ sw $a1, 0x34($sp) +/* 0C6C20 800C6020 15C0004F */ bnez $t6, .L800C6160 +/* 0C6C24 800C6024 AFA60038 */ sw $a2, 0x38($sp) +/* 0C6C28 800C6028 00A02025 */ move $a0, $a1 +/* 0C6C2C 800C602C 00C02825 */ move $a1, $a2 +/* 0C6C30 800C6030 0C032208 */ jal osCreateMesgQueue +/* 0C6C34 800C6034 00E03025 */ move $a2, $a3 +/* 0C6C38 800C6038 3C048013 */ lui $a0, %hi(D_8012AAB0) # $a0, 0x8013 +/* 0C6C3C 800C603C 3C058013 */ lui $a1, %hi(D_8012AAC8) # $a1, 0x8013 +/* 0C6C40 800C6040 24A5AAC8 */ addiu $a1, %lo(D_8012AAC8) # addiu $a1, $a1, -0x5538 +/* 0C6C44 800C6044 2484AAB0 */ addiu $a0, %lo(D_8012AAB0) # addiu $a0, $a0, -0x5550 +/* 0C6C48 800C6048 0C032208 */ jal osCreateMesgQueue +/* 0C6C4C 800C604C 24060001 */ li $a2, 1 +/* 0C6C50 800C6050 3C0F800E */ lui $t7, %hi(D_800E4800) # $t7, 0x800e +/* 0C6C54 800C6054 8DEF4800 */ lw $t7, %lo(D_800E4800)($t7) +/* 0C6C58 800C6058 00000000 */ nop +/* 0C6C5C 800C605C 15E00003 */ bnez $t7, .L800C606C +/* 0C6C60 800C6060 00000000 */ nop +/* 0C6C64 800C6064 0C034920 */ jal func_800D2480 +/* 0C6C68 800C6068 00000000 */ nop +.L800C606C: +/* 0C6C6C 800C606C 3C058013 */ lui $a1, %hi(D_8012AAB0) # $a1, 0x8013 +/* 0C6C70 800C6070 3C062222 */ lui $a2, (0x22222222 >> 16) # lui $a2, 0x2222 +/* 0C6C74 800C6074 34C62222 */ ori $a2, (0x22222222 & 0xFFFF) # ori $a2, $a2, 0x2222 +/* 0C6C78 800C6078 24A5AAB0 */ addiu $a1, %lo(D_8012AAB0) # addiu $a1, $a1, -0x5550 +/* 0C6C7C 800C607C 0C0332EC */ jal osSetEventMsg +/* 0C6C80 800C6080 24040008 */ li $a0, 8 +/* 0C6C84 800C6084 2418FFFF */ li $t8, -1 +/* 0C6C88 800C6088 AFB80028 */ sw $t8, 0x28($sp) +/* 0C6C8C 800C608C 0C034950 */ jal func_800D2540 +/* 0C6C90 800C6090 00002025 */ move $a0, $zero +/* 0C6C94 800C6094 8FB90030 */ lw $t9, 0x30($sp) +/* 0C6C98 800C6098 00002025 */ move $a0, $zero +/* 0C6C9C 800C609C 0059082A */ slt $at, $v0, $t9 +/* 0C6CA0 800C60A0 10200003 */ beqz $at, .L800C60B0 +/* 0C6CA4 800C60A4 03202825 */ move $a1, $t9 +/* 0C6CA8 800C60A8 0C033210 */ jal func_800CC840 +/* 0C6CAC 800C60AC AFA20028 */ sw $v0, 0x28($sp) +.L800C60B0: +/* 0C6CB0 800C60B0 0C034958 */ jal __osDisableInt +/* 0C6CB4 800C60B4 00000000 */ nop +/* 0C6CB8 800C60B8 8FA90034 */ lw $t1, 0x34($sp) +/* 0C6CBC 800C60BC 8FAF0030 */ lw $t7, 0x30($sp) +/* 0C6CC0 800C60C0 3C048013 */ lui $a0, %hi(D_8012A800) # $a0, 0x8013 +/* 0C6CC4 800C60C4 3C0A8013 */ lui $t2, %hi(D_8012AAB0) # $t2, 0x8013 +/* 0C6CC8 800C60C8 3C0B8013 */ lui $t3, %hi(D_8012D1E8) # $t3, 0x8013 +/* 0C6CCC 800C60CC 3C0C800D */ lui $t4, %hi(D_800D25A0) # $t4, 0x800d +/* 0C6CD0 800C60D0 3C0D800D */ lui $t5, %hi(D_800D2680) # $t5, 0x800d +/* 0C6CD4 800C60D4 3C0E8013 */ lui $t6, %hi(D_8012AAB0) # $t6, 0x8013 +/* 0C6CD8 800C60D8 2484A800 */ addiu $a0, %lo(D_8012A800) # addiu $a0, $a0, -0x5800 +/* 0C6CDC 800C60DC 24080001 */ li $t0, 1 +/* 0C6CE0 800C60E0 254AAAB0 */ addiu $t2, %lo(D_8012AAB0) # addiu $t2, $t2, -0x5550 +/* 0C6CE4 800C60E4 256BD1E8 */ addiu $t3, %lo(D_8012D1E8) # addiu $t3, $t3, -0x2e18 +/* 0C6CE8 800C60E8 258C25A0 */ addiu $t4, %lo(D_800D25A0) # addiu $t4, $t4, 0x25a0 +/* 0C6CEC 800C60EC 25AD2680 */ addiu $t5, %lo(D_800D2680) # addiu $t5, $t5, 0x2680 +/* 0C6CF0 800C60F0 25CEAAB0 */ addiu $t6, %lo(D_8012AAB0) # addiu $t6, $t6, -0x5550 +/* 0C6CF4 800C60F4 3C06800D */ lui $a2, %hi(D_800D2760) # $a2, 0x800d +/* 0C6CF8 800C60F8 AFA2002C */ sw $v0, 0x2c($sp) +/* 0C6CFC 800C60FC AE080000 */ sw $t0, ($s0) +/* 0C6D00 800C6100 AE040004 */ sw $a0, 4($s0) +/* 0C6D04 800C6104 AE0A000C */ sw $t2, 0xc($s0) +/* 0C6D08 800C6108 AE0B0010 */ sw $t3, 0x10($s0) +/* 0C6D0C 800C610C AE0C0014 */ sw $t4, 0x14($s0) +/* 0C6D10 800C6110 AE0D0018 */ sw $t5, 0x18($s0) +/* 0C6D14 800C6114 24C62760 */ addiu $a2, %lo(D_800D2760) # addiu $a2, $a2, 0x2760 +/* 0C6D18 800C6118 AFAE0010 */ sw $t6, 0x10($sp) +/* 0C6D1C 800C611C 00002825 */ move $a1, $zero +/* 0C6D20 800C6120 02003825 */ move $a3, $s0 +/* 0C6D24 800C6124 AE090008 */ sw $t1, 8($s0) +/* 0C6D28 800C6128 0C032214 */ jal osCreateThread +/* 0C6D2C 800C612C AFAF0014 */ sw $t7, 0x14($sp) +/* 0C6D30 800C6130 3C048013 */ lui $a0, %hi(D_8012A800) # $a0, 0x8013 +/* 0C6D34 800C6134 0C032268 */ jal osStartThread +/* 0C6D38 800C6138 2484A800 */ addiu $a0, %lo(D_8012A800) # addiu $a0, $a0, -0x5800 +/* 0C6D3C 800C613C 8FA4002C */ lw $a0, 0x2c($sp) +/* 0C6D40 800C6140 0C034960 */ jal __osRestoreInt +/* 0C6D44 800C6144 00000000 */ nop +/* 0C6D48 800C6148 8FB80028 */ lw $t8, 0x28($sp) +/* 0C6D4C 800C614C 2401FFFF */ li $at, -1 +/* 0C6D50 800C6150 13010003 */ beq $t8, $at, .L800C6160 +/* 0C6D54 800C6154 00002025 */ move $a0, $zero +/* 0C6D58 800C6158 0C033210 */ jal func_800CC840 +/* 0C6D5C 800C615C 03002825 */ move $a1, $t8 +.L800C6160: +/* 0C6D60 800C6160 8FBF0024 */ lw $ra, 0x24($sp) +/* 0C6D64 800C6164 8FB00020 */ lw $s0, 0x20($sp) +/* 0C6D68 800C6168 03E00008 */ jr $ra +/* 0C6D6C 800C616C 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C6170.s b/asm/non_matchings/unknown_0B8920/func_800C6170.s new file mode 100644 index 00000000..51d25dc7 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C6170.s @@ -0,0 +1,17 @@ +glabel func_800C6170 +/* 0C6D70 800C6170 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C6D74 800C6174 AFBF0014 */ sw $ra, 0x14($sp) +/* 0C6D78 800C6178 24042800 */ li $a0, 10240 +/* 0C6D7C 800C617C 0C01C327 */ jal func_80070C9C +/* 0C6D80 800C6180 240500FF */ li $a1, 255 +/* 0C6D84 800C6184 3C01800E */ lui $at, %hi(D_800E3760) # $at, 0x800e +/* 0C6D88 800C6188 AC223760 */ sw $v0, %lo(D_800E3760)($at) +/* 0C6D8C 800C618C 24040010 */ li $a0, 16 +/* 0C6D90 800C6190 0C01C327 */ jal func_80070C9C +/* 0C6D94 800C6194 240500FF */ li $a1, 255 +/* 0C6D98 800C6198 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C6D9C 800C619C 3C01800E */ lui $at, %hi(D_800E3764) # $at, 0x800e +/* 0C6DA0 800C61A0 AC223764 */ sw $v0, %lo(D_800E3764)($at) +/* 0C6DA4 800C61A4 03E00008 */ jr $ra +/* 0C6DA8 800C61A8 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C61AC.s b/asm/non_matchings/unknown_0B8920/func_800C61AC.s new file mode 100644 index 00000000..ba5d4076 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C61AC.s @@ -0,0 +1,14 @@ +glabel func_800C61AC +/* 0C6DAC 800C61AC 908E0001 */ lbu $t6, 1($a0) +/* 0C6DB0 800C61B0 90830000 */ lbu $v1, ($a0) +/* 0C6DB4 800C61B4 90980002 */ lbu $t8, 2($a0) +/* 0C6DB8 800C61B8 90880003 */ lbu $t0, 3($a0) +/* 0C6DBC 800C61BC 000E7A00 */ sll $t7, $t6, 8 +/* 0C6DC0 800C61C0 006F1825 */ or $v1, $v1, $t7 +/* 0C6DC4 800C61C4 0018CC00 */ sll $t9, $t8, 0x10 +/* 0C6DC8 800C61C8 00791825 */ or $v1, $v1, $t9 +/* 0C6DCC 800C61CC 00084E00 */ sll $t1, $t0, 0x18 +/* 0C6DD0 800C61D0 24840003 */ addiu $a0, $a0, 3 +/* 0C6DD4 800C61D4 03E00008 */ jr $ra +/* 0C6DD8 800C61D8 00691025 */ or $v0, $v1, $t1 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C61DC.s b/asm/non_matchings/unknown_0B8920/func_800C61DC.s new file mode 100644 index 00000000..e8c6cd6f --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C61DC.s @@ -0,0 +1,17 @@ +glabel func_800C61DC +/* 0C6DDC 800C61DC 00A03025 */ move $a2, $a1 +/* 0C6DE0 800C61E0 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C6DE4 800C61E4 3C05800E */ lui $a1, %hi(D_800E3764) # $a1, 0x800e +/* 0C6DE8 800C61E8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0C6DEC 800C61EC 8CA53764 */ lw $a1, %lo(D_800E3764)($a1) +/* 0C6DF0 800C61F0 0C01DB9A */ jal func_80076E68 +/* 0C6DF4 800C61F4 24070008 */ li $a3, 8 +/* 0C6DF8 800C61F8 3C04800E */ lui $a0, %hi(D_800E3764) # $a0, 0x800e +/* 0C6DFC 800C61FC 8C843764 */ lw $a0, %lo(D_800E3764)($a0) +/* 0C6E00 800C6200 0C03186B */ jal func_800C61AC +/* 0C6E04 800C6204 00000000 */ nop +/* 0C6E08 800C6208 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C6E0C 800C620C 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0C6E10 800C6210 03E00008 */ jr $ra +/* 0C6E14 800C6214 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C6218.s b/asm/non_matchings/unknown_0B8920/func_800C6218.s new file mode 100644 index 00000000..b27c1ee6 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C6218.s @@ -0,0 +1,27 @@ +glabel func_800C6218 +/* 0C6E18 800C6218 248E0005 */ addiu $t6, $a0, 5 +/* 0C6E1C 800C621C 3C01800E */ lui $at, %hi(D_800E3768) # $at, 0x800e +/* 0C6E20 800C6220 AC2E3768 */ sw $t6, %lo(D_800E3768)($at) +/* 0C6E24 800C6224 3C01800E */ lui $at, %hi(D_800E376C) # $at, 0x800e +/* 0C6E28 800C6228 AC25376C */ sw $a1, %lo(D_800E376C)($at) +/* 0C6E2C 800C622C 3C018013 */ lui $at, %hi(D_8012AAD4) # $at, 0x8013 +/* 0C6E30 800C6230 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C6E34 800C6234 AC20AAD4 */ sw $zero, %lo(D_8012AAD4)($at) +/* 0C6E38 800C6238 AFBF0014 */ sw $ra, 0x14($sp) +/* 0C6E3C 800C623C 3C018013 */ lui $at, %hi(D_8012AAD0) # $at, 0x8013 +/* 0C6E40 800C6240 AFA5001C */ sw $a1, 0x1c($sp) +/* 0C6E44 800C6244 0C031A30 */ jal func_800C68C0 +/* 0C6E48 800C6248 AC20AAD0 */ sw $zero, %lo(D_8012AAD0)($at) +/* 0C6E4C 800C624C 10400006 */ beqz $v0, .L800C6268 +/* 0C6E50 800C6250 8FBF0014 */ lw $ra, 0x14($sp) +.L800C6254: +/* 0C6E54 800C6254 0C031A30 */ jal func_800C68C0 +/* 0C6E58 800C6258 00000000 */ nop +/* 0C6E5C 800C625C 1440FFFD */ bnez $v0, .L800C6254 +/* 0C6E60 800C6260 00000000 */ nop +/* 0C6E64 800C6264 8FBF0014 */ lw $ra, 0x14($sp) +.L800C6268: +/* 0C6E68 800C6268 8FA2001C */ lw $v0, 0x1c($sp) +/* 0C6E6C 800C626C 03E00008 */ jr $ra +/* 0C6E70 800C6270 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C6274.s b/asm/non_matchings/unknown_0B8920/func_800C6274.s new file mode 100644 index 00000000..a3b1ed23 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C6274.s @@ -0,0 +1,444 @@ +glabel func_800C6274 +/* 0C6E74 800C6274 27BDFA08 */ addiu $sp, $sp, -0x5f8 +/* 0C6E78 800C6278 AFB20020 */ sw $s2, 0x20($sp) +/* 0C6E7C 800C627C AFB1001C */ sw $s1, 0x1c($sp) +/* 0C6E80 800C6280 27B105B0 */ addiu $s1, $sp, 0x5b0 +/* 0C6E84 800C6284 00809025 */ move $s2, $a0 +/* 0C6E88 800C6288 AFBF003C */ sw $ra, 0x3c($sp) +/* 0C6E8C 800C628C AFA505FC */ sw $a1, 0x5fc($sp) +/* 0C6E90 800C6290 AFBE0038 */ sw $fp, 0x38($sp) +/* 0C6E94 800C6294 AFB70034 */ sw $s7, 0x34($sp) +/* 0C6E98 800C6298 AFB60030 */ sw $s6, 0x30($sp) +/* 0C6E9C 800C629C AFB5002C */ sw $s5, 0x2c($sp) +/* 0C6EA0 800C62A0 AFB40028 */ sw $s4, 0x28($sp) +/* 0C6EA4 800C62A4 AFB30024 */ sw $s3, 0x24($sp) +/* 0C6EA8 800C62A8 AFB00018 */ sw $s0, 0x18($sp) +/* 0C6EAC 800C62AC AFA60600 */ sw $a2, 0x600($sp) +/* 0C6EB0 800C62B0 AFA70604 */ sw $a3, 0x604($sp) +/* 0C6EB4 800C62B4 24050044 */ li $a1, 68 +/* 0C6EB8 800C62B8 0C034138 */ jal func_800D04E0 +/* 0C6EBC 800C62BC 02202025 */ move $a0, $s1 +/* 0C6EC0 800C62C0 8FAE05FC */ lw $t6, 0x5fc($sp) +/* 0C6EC4 800C62C4 0240F025 */ move $fp, $s2 +/* 0C6EC8 800C62C8 31C20003 */ andi $v0, $t6, 3 +/* 0C6ECC 800C62CC 00021023 */ negu $v0, $v0 +/* 0C6ED0 800C62D0 1040000D */ beqz $v0, .L800C6308 +/* 0C6ED4 800C62D4 01C0F825 */ move $ra, $t6 +/* 0C6ED8 800C62D8 004E1821 */ addu $v1, $v0, $t6 +.L800C62DC: +/* 0C6EDC 800C62DC 8FCF0000 */ lw $t7, ($fp) +/* 0C6EE0 800C62E0 27FFFFFF */ addiu $ra, $ra, -1 +/* 0C6EE4 800C62E4 000FC080 */ sll $t8, $t7, 2 +/* 0C6EE8 800C62E8 02381021 */ addu $v0, $s1, $t8 +/* 0C6EEC 800C62EC 8C590000 */ lw $t9, ($v0) +/* 0C6EF0 800C62F0 27DE0004 */ addiu $fp, $fp, 4 +/* 0C6EF4 800C62F4 272E0001 */ addiu $t6, $t9, 1 +/* 0C6EF8 800C62F8 147FFFF8 */ bne $v1, $ra, .L800C62DC +/* 0C6EFC 800C62FC AC4E0000 */ sw $t6, ($v0) +/* 0C6F00 800C6300 13E00023 */ beqz $ra, .L800C6390 +/* 0C6F04 800C6304 8FAF05FC */ lw $t7, 0x5fc($sp) +.L800C6308: +/* 0C6F08 800C6308 8FCF0000 */ lw $t7, ($fp) +/* 0C6F0C 800C630C 27FFFFFC */ addiu $ra, $ra, -4 +/* 0C6F10 800C6310 000FC080 */ sll $t8, $t7, 2 +/* 0C6F14 800C6314 02381021 */ addu $v0, $s1, $t8 +/* 0C6F18 800C6318 8C590000 */ lw $t9, ($v0) +/* 0C6F1C 800C631C 27DE0010 */ addiu $fp, $fp, 0x10 +/* 0C6F20 800C6320 272E0001 */ addiu $t6, $t9, 1 +/* 0C6F24 800C6324 AC4E0000 */ sw $t6, ($v0) +/* 0C6F28 800C6328 8FCFFFF4 */ lw $t7, -0xc($fp) +/* 0C6F2C 800C632C 00000000 */ nop +/* 0C6F30 800C6330 000FC080 */ sll $t8, $t7, 2 +/* 0C6F34 800C6334 02381021 */ addu $v0, $s1, $t8 +/* 0C6F38 800C6338 8C590000 */ lw $t9, ($v0) +/* 0C6F3C 800C633C 00000000 */ nop +/* 0C6F40 800C6340 272E0001 */ addiu $t6, $t9, 1 +/* 0C6F44 800C6344 AC4E0000 */ sw $t6, ($v0) +/* 0C6F48 800C6348 8FCFFFF8 */ lw $t7, -8($fp) +/* 0C6F4C 800C634C 00000000 */ nop +/* 0C6F50 800C6350 000FC080 */ sll $t8, $t7, 2 +/* 0C6F54 800C6354 02381021 */ addu $v0, $s1, $t8 +/* 0C6F58 800C6358 8C590000 */ lw $t9, ($v0) +/* 0C6F5C 800C635C 00000000 */ nop +/* 0C6F60 800C6360 272E0001 */ addiu $t6, $t9, 1 +/* 0C6F64 800C6364 AC4E0000 */ sw $t6, ($v0) +/* 0C6F68 800C6368 8FCFFFFC */ lw $t7, -4($fp) +/* 0C6F6C 800C636C 00000000 */ nop +/* 0C6F70 800C6370 000FC080 */ sll $t8, $t7, 2 +/* 0C6F74 800C6374 02381021 */ addu $v0, $s1, $t8 +/* 0C6F78 800C6378 8C590000 */ lw $t9, ($v0) +/* 0C6F7C 800C637C 00000000 */ nop +/* 0C6F80 800C6380 272E0001 */ addiu $t6, $t9, 1 +/* 0C6F84 800C6384 17E0FFE0 */ bnez $ra, .L800C6308 +/* 0C6F88 800C6388 AC4E0000 */ sw $t6, ($v0) +/* 0C6F8C 800C638C 8FAF05FC */ lw $t7, 0x5fc($sp) +.L800C6390: +/* 0C6F90 800C6390 8FB805B0 */ lw $t8, 0x5b0($sp) +/* 0C6F94 800C6394 8FA50610 */ lw $a1, 0x610($sp) +/* 0C6F98 800C6398 15F80007 */ bne $t7, $t8, .L800C63B8 +/* 0C6F9C 800C639C 24070001 */ li $a3, 1 +/* 0C6FA0 800C63A0 8FA50610 */ lw $a1, 0x610($sp) +/* 0C6FA4 800C63A4 8FB5060C */ lw $s5, 0x60c($sp) +/* 0C6FA8 800C63A8 00000000 */ nop +/* 0C6FAC 800C63AC AEA00000 */ sw $zero, ($s5) +/* 0C6FB0 800C63B0 10000136 */ b .L800C688C +/* 0C6FB4 800C63B4 ACA00000 */ sw $zero, ($a1) +.L800C63B8: +/* 0C6FB8 800C63B8 8CB00000 */ lw $s0, ($a1) +/* 0C6FBC 800C63BC 27A405B4 */ addiu $a0, $sp, 0x5b4 +/* 0C6FC0 800C63C0 24020011 */ li $v0, 17 +.L800C63C4: +/* 0C6FC4 800C63C4 8C990000 */ lw $t9, ($a0) +/* 0C6FC8 800C63C8 00000000 */ nop +/* 0C6FCC 800C63CC 17200005 */ bnez $t9, .L800C63E4 +/* 0C6FD0 800C63D0 0207082B */ sltu $at, $s0, $a3 +/* 0C6FD4 800C63D4 24E70001 */ addiu $a3, $a3, 1 +/* 0C6FD8 800C63D8 14E2FFFA */ bne $a3, $v0, .L800C63C4 +/* 0C6FDC 800C63DC 24840004 */ addiu $a0, $a0, 4 +/* 0C6FE0 800C63E0 0207082B */ sltu $at, $s0, $a3 +.L800C63E4: +/* 0C6FE4 800C63E4 10200002 */ beqz $at, .L800C63F0 +/* 0C6FE8 800C63E8 00E0A025 */ move $s4, $a3 +/* 0C6FEC 800C63EC 00E08025 */ move $s0, $a3 +.L800C63F0: +/* 0C6FF0 800C63F0 241F0010 */ li $ra, 16 +/* 0C6FF4 800C63F4 27A305F0 */ addiu $v1, $sp, 0x5f0 +.L800C63F8: +/* 0C6FF8 800C63F8 8C6E0000 */ lw $t6, ($v1) +/* 0C6FFC 800C63FC 00000000 */ nop +/* 0C7000 800C6400 15C00005 */ bnez $t6, .L800C6418 +/* 0C7004 800C6404 03F0082B */ sltu $at, $ra, $s0 +/* 0C7008 800C6408 27FFFFFF */ addiu $ra, $ra, -1 +/* 0C700C 800C640C 17E0FFFA */ bnez $ra, .L800C63F8 +/* 0C7010 800C6410 2463FFFC */ addiu $v1, $v1, -4 +/* 0C7014 800C6414 03F0082B */ sltu $at, $ra, $s0 +.L800C6418: +/* 0C7018 800C6418 10200002 */ beqz $at, .L800C6424 +/* 0C701C 800C641C AFBF05A8 */ sw $ra, 0x5a8($sp) +/* 0C7020 800C6420 03E08025 */ move $s0, $ra +.L800C6424: +/* 0C7024 800C6424 240F0001 */ li $t7, 1 +/* 0C7028 800C6428 00FF082B */ sltu $at, $a3, $ra +/* 0C702C 800C642C ACB00000 */ sw $s0, ($a1) +/* 0C7030 800C6430 1020000B */ beqz $at, .L800C6460 +/* 0C7034 800C6434 00EF1004 */ sllv $v0, $t7, $a3 +/* 0C7038 800C6438 001FC080 */ sll $t8, $ra, 2 +/* 0C703C 800C643C 27B905B0 */ addiu $t9, $sp, 0x5b0 +/* 0C7040 800C6440 03192821 */ addu $a1, $t8, $t9 +.L800C6444: +/* 0C7044 800C6444 8C8E0000 */ lw $t6, ($a0) +/* 0C7048 800C6448 24840004 */ addiu $a0, $a0, 4 +/* 0C704C 800C644C 004E1023 */ subu $v0, $v0, $t6 +/* 0C7050 800C6450 00027840 */ sll $t7, $v0, 1 +/* 0C7054 800C6454 0085082B */ sltu $at, $a0, $a1 +/* 0C7058 800C6458 1420FFFA */ bnez $at, .L800C6444 +/* 0C705C 800C645C 01E01025 */ move $v0, $t7 +.L800C6460: +/* 0C7060 800C6460 8C640000 */ lw $a0, ($v1) +/* 0C7064 800C6464 27FFFFFF */ addiu $ra, $ra, -1 +/* 0C7068 800C6468 00441023 */ subu $v0, $v0, $a0 +/* 0C706C 800C646C 0082C021 */ addu $t8, $a0, $v0 +/* 0C7070 800C6470 AC780000 */ sw $t8, ($v1) +/* 0C7074 800C6474 AFA00080 */ sw $zero, 0x80($sp) +/* 0C7078 800C6478 00003825 */ move $a3, $zero +/* 0C707C 800C647C 27BE05B4 */ addiu $fp, $sp, 0x5b4 +/* 0C7080 800C6480 27A60084 */ addiu $a2, $sp, 0x84 +/* 0C7084 800C6484 13E00023 */ beqz $ra, .L800C6514 +/* 0C7088 800C6488 2463FFFC */ addiu $v1, $v1, -4 +/* 0C708C 800C648C 33E50003 */ andi $a1, $ra, 3 +/* 0C7090 800C6490 00052823 */ negu $a1, $a1 +/* 0C7094 800C6494 10A0000D */ beqz $a1, .L800C64CC +/* 0C7098 800C6498 00BF1021 */ addu $v0, $a1, $ra +/* 0C709C 800C649C 0002C880 */ sll $t9, $v0, 2 +/* 0C70A0 800C64A0 27AE05B0 */ addiu $t6, $sp, 0x5b0 +/* 0C70A4 800C64A4 032E2021 */ addu $a0, $t9, $t6 +.L800C64A8: +/* 0C70A8 800C64A8 8FCF0000 */ lw $t7, ($fp) +/* 0C70AC 800C64AC 2463FFFC */ addiu $v1, $v1, -4 +/* 0C70B0 800C64B0 00EF3821 */ addu $a3, $a3, $t7 +/* 0C70B4 800C64B4 ACC70000 */ sw $a3, ($a2) +/* 0C70B8 800C64B8 24C60004 */ addiu $a2, $a2, 4 +/* 0C70BC 800C64BC 1483FFFA */ bne $a0, $v1, .L800C64A8 +/* 0C70C0 800C64C0 27DE0004 */ addiu $fp, $fp, 4 +/* 0C70C4 800C64C4 27B805B0 */ addiu $t8, $sp, 0x5b0 +/* 0C70C8 800C64C8 10780012 */ beq $v1, $t8, .L800C6514 +.L800C64CC: +/* 0C70CC 800C64CC 27A205B0 */ addiu $v0, $sp, 0x5b0 +.L800C64D0: +/* 0C70D0 800C64D0 8FD90000 */ lw $t9, ($fp) +/* 0C70D4 800C64D4 2463FFF0 */ addiu $v1, $v1, -0x10 +/* 0C70D8 800C64D8 00F93821 */ addu $a3, $a3, $t9 +/* 0C70DC 800C64DC ACC70000 */ sw $a3, ($a2) +/* 0C70E0 800C64E0 8FCE0004 */ lw $t6, 4($fp) +/* 0C70E4 800C64E4 24C60010 */ addiu $a2, $a2, 0x10 +/* 0C70E8 800C64E8 00EE3821 */ addu $a3, $a3, $t6 +/* 0C70EC 800C64EC ACC7FFF4 */ sw $a3, -0xc($a2) +/* 0C70F0 800C64F0 8FCF0008 */ lw $t7, 8($fp) +/* 0C70F4 800C64F4 27DE0010 */ addiu $fp, $fp, 0x10 +/* 0C70F8 800C64F8 00EF3821 */ addu $a3, $a3, $t7 +/* 0C70FC 800C64FC ACC7FFF8 */ sw $a3, -8($a2) +/* 0C7100 800C6500 8FD8FFFC */ lw $t8, -4($fp) +/* 0C7104 800C6504 00000000 */ nop +/* 0C7108 800C6508 00F83821 */ addu $a3, $a3, $t8 +/* 0C710C 800C650C 1462FFF0 */ bne $v1, $v0, .L800C64D0 +/* 0C7110 800C6510 ACC7FFFC */ sw $a3, -4($a2) +.L800C6514: +/* 0C7114 800C6514 0240F025 */ move $fp, $s2 +/* 0C7118 800C6518 0000F825 */ move $ra, $zero +/* 0C711C 800C651C 27A5007C */ addiu $a1, $sp, 0x7c +/* 0C7120 800C6520 27A400C4 */ addiu $a0, $sp, 0xc4 +.L800C6524: +/* 0C7124 800C6524 8FC70000 */ lw $a3, ($fp) +/* 0C7128 800C6528 27DE0004 */ addiu $fp, $fp, 4 +/* 0C712C 800C652C 10E00009 */ beqz $a3, .L800C6554 +/* 0C7130 800C6530 0007C880 */ sll $t9, $a3, 2 +/* 0C7134 800C6534 00B91021 */ addu $v0, $a1, $t9 +/* 0C7138 800C6538 8C430000 */ lw $v1, ($v0) +/* 0C713C 800C653C 00000000 */ nop +/* 0C7140 800C6540 00037080 */ sll $t6, $v1, 2 +/* 0C7144 800C6544 008E7821 */ addu $t7, $a0, $t6 +/* 0C7148 800C6548 ADFF0000 */ sw $ra, ($t7) +/* 0C714C 800C654C 24780001 */ addiu $t8, $v1, 1 +/* 0C7150 800C6550 AC580000 */ sw $t8, ($v0) +.L800C6554: +/* 0C7154 800C6554 8FB905FC */ lw $t9, 0x5fc($sp) +/* 0C7158 800C6558 27FF0001 */ addiu $ra, $ra, 1 +/* 0C715C 800C655C 03F9082B */ sltu $at, $ra, $t9 +/* 0C7160 800C6560 1420FFF0 */ bnez $at, .L800C6524 +/* 0C7164 800C6564 00000000 */ nop +/* 0C7168 800C6568 8FAE05A8 */ lw $t6, 0x5a8($sp) +/* 0C716C 800C656C 0000F825 */ move $ra, $zero +/* 0C7170 800C6570 01D4082A */ slt $at, $t6, $s4 +/* 0C7174 800C6574 AFA0007C */ sw $zero, 0x7c($sp) +/* 0C7178 800C6578 0080F025 */ move $fp, $a0 +/* 0C717C 800C657C 240CFFFF */ li $t4, -1 +/* 0C7180 800C6580 00105023 */ negu $t2, $s0 +/* 0C7184 800C6584 AFA00544 */ sw $zero, 0x544($sp) +/* 0C7188 800C6588 00003025 */ move $a2, $zero +/* 0C718C 800C658C 142000BF */ bnez $at, .L800C688C +/* 0C7190 800C6590 00004025 */ move $t0, $zero +/* 0C7194 800C6594 00147880 */ sll $t7, $s4, 2 +/* 0C7198 800C6598 27B805B0 */ addiu $t8, $sp, 0x5b0 +/* 0C719C 800C659C 3C17800E */ lui $s7, %hi(D_800E3760) # $s7, 0x800e +/* 0C71A0 800C65A0 3C128013 */ lui $s2, %hi(D_8012AAD8) # $s2, 0x8013 +/* 0C71A4 800C65A4 8FB5060C */ lw $s5, 0x60c($sp) +/* 0C71A8 800C65A8 2652AAD8 */ addiu $s2, %lo(D_8012AAD8) # addiu $s2, $s2, -0x5528 +/* 0C71AC 800C65AC 26F73760 */ addiu $s7, %lo(D_800E3760) # addiu $s7, $s7, 0x3760 +/* 0C71B0 800C65B0 01F81021 */ addu $v0, $t7, $t8 +/* 0C71B4 800C65B4 27B30584 */ addiu $s3, $sp, 0x584 +.L800C65B8: +/* 0C71B8 800C65B8 8C560000 */ lw $s6, ($v0) +/* 0C71BC 800C65BC 000C6880 */ sll $t5, $t4, 2 +/* 0C71C0 800C65C0 02C02825 */ move $a1, $s6 +/* 0C71C4 800C65C4 12C000AB */ beqz $s6, .L800C6874 +/* 0C71C8 800C65C8 26D6FFFF */ addiu $s6, $s6, -1 +/* 0C71CC 800C65CC 8FAE05FC */ lw $t6, 0x5fc($sp) +/* 0C71D0 800C65D0 27B9007C */ addiu $t9, $sp, 0x7c +/* 0C71D4 800C65D4 000E7880 */ sll $t7, $t6, 2 +/* 0C71D8 800C65D8 01B95821 */ addu $t3, $t5, $t9 +/* 0C71DC 800C65DC 27B800C4 */ addiu $t8, $sp, 0xc4 +/* 0C71E0 800C65E0 01F8C821 */ addu $t9, $t7, $t8 +/* 0C71E4 800C65E4 240F0001 */ li $t7, 1 +/* 0C71E8 800C65E8 268E001F */ addiu $t6, $s4, 0x1f +/* 0C71EC 800C65EC 01CFC004 */ sllv $t8, $t7, $t6 +/* 0C71F0 800C65F0 AFB80040 */ sw $t8, 0x40($sp) +/* 0C71F4 800C65F4 AFB90044 */ sw $t9, 0x44($sp) +/* 0C71F8 800C65F8 AFA2005C */ sw $v0, 0x5c($sp) +.L800C65FC: +/* 0C71FC 800C65FC 01501821 */ addu $v1, $t2, $s0 +/* 0C7200 800C6600 0074082A */ slt $at, $v1, $s4 +/* 0C7204 800C6604 10200047 */ beqz $at, .L800C6724 +/* 0C7208 800C6608 26D10001 */ addiu $s1, $s6, 1 +/* 0C720C 800C660C 27B90544 */ addiu $t9, $sp, 0x544 +/* 0C7210 800C6610 01B94821 */ addu $t1, $t5, $t9 +/* 0C7214 800C6614 8FAF05A8 */ lw $t7, 0x5a8($sp) +.L800C6618: +/* 0C7218 800C6618 258C0001 */ addiu $t4, $t4, 1 +/* 0C721C 800C661C 01E34023 */ subu $t0, $t7, $v1 +/* 0C7220 800C6620 0208082B */ sltu $at, $s0, $t0 +/* 0C7224 800C6624 25AD0004 */ addiu $t5, $t5, 4 +/* 0C7228 800C6628 25290004 */ addiu $t1, $t1, 4 +/* 0C722C 800C662C 256B0004 */ addiu $t3, $t3, 4 +/* 0C7230 800C6630 10200002 */ beqz $at, .L800C663C +/* 0C7234 800C6634 00605025 */ move $t2, $v1 +/* 0C7238 800C6638 02004025 */ move $t0, $s0 +.L800C663C: +/* 0C723C 800C663C 028A1023 */ subu $v0, $s4, $t2 +/* 0C7240 800C6640 240E0001 */ li $t6, 1 +/* 0C7244 800C6644 004E2004 */ sllv $a0, $t6, $v0 +/* 0C7248 800C6648 0224082B */ sltu $at, $s1, $a0 +/* 0C724C 800C664C 10200012 */ beqz $at, .L800C6698 +/* 0C7250 800C6650 00403825 */ move $a3, $v0 +/* 0C7254 800C6654 24470001 */ addiu $a3, $v0, 1 +/* 0C7258 800C6658 00961823 */ subu $v1, $a0, $s6 +/* 0C725C 800C665C 0014C080 */ sll $t8, $s4, 2 +/* 0C7260 800C6660 27B905B0 */ addiu $t9, $sp, 0x5b0 +/* 0C7264 800C6664 00E8082B */ sltu $at, $a3, $t0 +/* 0C7268 800C6668 2463FFFF */ addiu $v1, $v1, -1 +/* 0C726C 800C666C 1020000A */ beqz $at, .L800C6698 +/* 0C7270 800C6670 03193021 */ addu $a2, $t8, $t9 +.L800C6674: +/* 0C7274 800C6674 8CC40004 */ lw $a0, 4($a2) +/* 0C7278 800C6678 00031040 */ sll $v0, $v1, 1 +/* 0C727C 800C667C 0082082B */ sltu $at, $a0, $v0 +/* 0C7280 800C6680 10200005 */ beqz $at, .L800C6698 +/* 0C7284 800C6684 24C60004 */ addiu $a2, $a2, 4 +/* 0C7288 800C6688 24E70001 */ addiu $a3, $a3, 1 +/* 0C728C 800C668C 00E8082B */ sltu $at, $a3, $t0 +/* 0C7290 800C6690 1420FFF8 */ bnez $at, .L800C6674 +/* 0C7294 800C6694 00441823 */ subu $v1, $v0, $a0 +.L800C6698: +/* 0C7298 800C6698 8E430000 */ lw $v1, ($s2) +/* 0C729C 800C669C 240F0001 */ li $t7, 1 +/* 0C72A0 800C66A0 8EF80000 */ lw $t8, ($s7) +/* 0C72A4 800C66A4 00EF4004 */ sllv $t0, $t7, $a3 +/* 0C72A8 800C66A8 000370C0 */ sll $t6, $v1, 3 +/* 0C72AC 800C66AC 0068C821 */ addu $t9, $v1, $t0 +/* 0C72B0 800C66B0 272F0001 */ addiu $t7, $t9, 1 +/* 0C72B4 800C66B4 01D83021 */ addu $a2, $t6, $t8 +/* 0C72B8 800C66B8 AE4F0000 */ sw $t7, ($s2) +/* 0C72BC 800C66BC 24C40008 */ addiu $a0, $a2, 8 +/* 0C72C0 800C66C0 AEA40000 */ sw $a0, ($s5) +/* 0C72C4 800C66C4 ACC00004 */ sw $zero, 4($a2) +/* 0C72C8 800C66C8 24D50004 */ addiu $s5, $a2, 4 +/* 0C72CC 800C66CC 00803025 */ move $a2, $a0 +/* 0C72D0 800C66D0 11800010 */ beqz $t4, .L800C6714 +/* 0C72D4 800C66D4 AD240000 */ sw $a0, ($t1) +/* 0C72D8 800C66D8 AD7F0000 */ sw $ra, ($t3) +/* 0C72DC 800C66DC 24EE0010 */ addiu $t6, $a3, 0x10 +/* 0C72E0 800C66E0 A3AE0584 */ sb $t6, 0x584($sp) +/* 0C72E4 800C66E4 A3B00585 */ sb $s0, 0x585($sp) +/* 0C72E8 800C66E8 AFA40588 */ sw $a0, 0x588($sp) +/* 0C72EC 800C66EC 0150C823 */ subu $t9, $t2, $s0 +/* 0C72F0 800C66F0 8D38FFFC */ lw $t8, -4($t1) +/* 0C72F4 800C66F4 033F7806 */ srlv $t7, $ra, $t9 +/* 0C72F8 800C66F8 8E610000 */ lw $at, ($s3) +/* 0C72FC 800C66FC 000F70C0 */ sll $t6, $t7, 3 +/* 0C7300 800C6700 030EC821 */ addu $t9, $t8, $t6 +/* 0C7304 800C6704 AF210000 */ sw $at, ($t9) +/* 0C7308 800C6708 8E6E0004 */ lw $t6, 4($s3) +/* 0C730C 800C670C 00000000 */ nop +/* 0C7310 800C6710 AF2E0004 */ sw $t6, 4($t9) +.L800C6714: +/* 0C7314 800C6714 01501821 */ addu $v1, $t2, $s0 +/* 0C7318 800C6718 0074082A */ slt $at, $v1, $s4 +/* 0C731C 800C671C 1420FFBE */ bnez $at, .L800C6618 +/* 0C7320 800C6720 8FAF05A8 */ lw $t7, 0x5a8($sp) +.L800C6724: +/* 0C7324 800C6724 8FAF0044 */ lw $t7, 0x44($sp) +/* 0C7328 800C6728 24180001 */ li $t8, 1 +/* 0C732C 800C672C 028A1823 */ subu $v1, $s4, $t2 +/* 0C7330 800C6730 01582804 */ sllv $a1, $t8, $t2 +/* 0C7334 800C6734 03CF082B */ sltu $at, $fp, $t7 +/* 0C7338 800C6738 A3A30585 */ sb $v1, 0x585($sp) +/* 0C733C 800C673C 14200004 */ bnez $at, .L800C6750 +/* 0C7340 800C6740 24A5FFFF */ addiu $a1, $a1, -1 +/* 0C7344 800C6744 24190063 */ li $t9, 99 +/* 0C7348 800C6748 10000021 */ b .L800C67D0 +/* 0C734C 800C674C A3B90584 */ sb $t9, 0x584($sp) +.L800C6750: +/* 0C7350 800C6750 8FC20000 */ lw $v0, ($fp) +/* 0C7354 800C6754 8FAE0600 */ lw $t6, 0x600($sp) +/* 0C7358 800C6758 8FA40600 */ lw $a0, 0x600($sp) +/* 0C735C 800C675C 004E082B */ sltu $at, $v0, $t6 +/* 0C7360 800C6760 1020000B */ beqz $at, .L800C6790 +/* 0C7364 800C6764 2C410100 */ sltiu $at, $v0, 0x100 +/* 0C7368 800C6768 10200004 */ beqz $at, .L800C677C +/* 0C736C 800C676C 240F000F */ li $t7, 15 +/* 0C7370 800C6770 24180010 */ li $t8, 16 +/* 0C7374 800C6774 10000002 */ b .L800C6780 +/* 0C7378 800C6778 A3B80584 */ sb $t8, 0x584($sp) +.L800C677C: +/* 0C737C 800C677C A3AF0584 */ sb $t7, 0x584($sp) +.L800C6780: +/* 0C7380 800C6780 8FD90000 */ lw $t9, ($fp) +/* 0C7384 800C6784 27DE0004 */ addiu $fp, $fp, 4 +/* 0C7388 800C6788 10000011 */ b .L800C67D0 +/* 0C738C 800C678C A7B90588 */ sh $t9, 0x588($sp) +.L800C6790: +/* 0C7390 800C6790 8FB80608 */ lw $t8, 0x608($sp) +/* 0C7394 800C6794 00447023 */ subu $t6, $v0, $a0 +/* 0C7398 800C6798 01D87821 */ addu $t7, $t6, $t8 +/* 0C739C 800C679C 91F90000 */ lbu $t9, ($t7) +/* 0C73A0 800C67A0 8FAE0604 */ lw $t6, 0x604($sp) +/* 0C73A4 800C67A4 A3B90584 */ sb $t9, 0x584($sp) +/* 0C73A8 800C67A8 8FD80000 */ lw $t8, ($fp) +/* 0C73AC 800C67AC 27DE0004 */ addiu $fp, $fp, 4 +/* 0C73B0 800C67B0 00187840 */ sll $t7, $t8, 1 +/* 0C73B4 800C67B4 0004C040 */ sll $t8, $a0, 1 +/* 0C73B8 800C67B8 01CFC821 */ addu $t9, $t6, $t7 +/* 0C73BC 800C67BC 00187023 */ negu $t6, $t8 +/* 0C73C0 800C67C0 032E7821 */ addu $t7, $t9, $t6 +/* 0C73C4 800C67C4 95F80000 */ lhu $t8, ($t7) +/* 0C73C8 800C67C8 00000000 */ nop +/* 0C73CC 800C67CC A7B80588 */ sh $t8, 0x588($sp) +.L800C67D0: +/* 0C73D0 800C67D0 015F3806 */ srlv $a3, $ra, $t2 +/* 0C73D4 800C67D4 00E8082B */ sltu $at, $a3, $t0 +/* 0C73D8 800C67D8 1020000B */ beqz $at, .L800C6808 +/* 0C73DC 800C67DC 24190001 */ li $t9, 1 +/* 0C73E0 800C67E0 00791004 */ sllv $v0, $t9, $v1 +.L800C67E4: +/* 0C73E4 800C67E4 8E610000 */ lw $at, ($s3) +/* 0C73E8 800C67E8 000770C0 */ sll $t6, $a3, 3 +/* 0C73EC 800C67EC 00CE7821 */ addu $t7, $a2, $t6 +/* 0C73F0 800C67F0 ADE10000 */ sw $at, ($t7) +/* 0C73F4 800C67F4 8E790004 */ lw $t9, 4($s3) +/* 0C73F8 800C67F8 00E23821 */ addu $a3, $a3, $v0 +/* 0C73FC 800C67FC 00E8082B */ sltu $at, $a3, $t0 +/* 0C7400 800C6800 1420FFF8 */ bnez $at, .L800C67E4 +/* 0C7404 800C6804 ADF90004 */ sw $t9, 4($t7) +.L800C6808: +/* 0C7408 800C6808 8FA70040 */ lw $a3, 0x40($sp) +/* 0C740C 800C680C 8D620000 */ lw $v0, ($t3) +/* 0C7410 800C6810 03E77024 */ and $t6, $ra, $a3 +/* 0C7414 800C6814 11C00005 */ beqz $t6, .L800C682C +.L800C6818: +/* 0C7418 800C6818 0007C042 */ srl $t8, $a3, 1 +/* 0C741C 800C681C 03E7F826 */ xor $ra, $ra, $a3 +/* 0C7420 800C6820 03F87824 */ and $t7, $ra, $t8 +/* 0C7424 800C6824 15E0FFFC */ bnez $t7, .L800C6818 +/* 0C7428 800C6828 03003825 */ move $a3, $t8 +.L800C682C: +/* 0C742C 800C682C 03E7F826 */ xor $ra, $ra, $a3 +/* 0C7430 800C6830 03E5C824 */ and $t9, $ra, $a1 +/* 0C7434 800C6834 1322000B */ beq $t9, $v0, .L800C6864 +/* 0C7438 800C6838 02C02825 */ move $a1, $s6 +.L800C683C: +/* 0C743C 800C683C 01505023 */ subu $t2, $t2, $s0 +/* 0C7440 800C6840 240E0001 */ li $t6, 1 +/* 0C7444 800C6844 014EC004 */ sllv $t8, $t6, $t2 +/* 0C7448 800C6848 8D6EFFFC */ lw $t6, -4($t3) +/* 0C744C 800C684C 270FFFFF */ addiu $t7, $t8, -1 +/* 0C7450 800C6850 03EFC824 */ and $t9, $ra, $t7 +/* 0C7454 800C6854 258CFFFF */ addiu $t4, $t4, -1 +/* 0C7458 800C6858 25ADFFFC */ addiu $t5, $t5, -4 +/* 0C745C 800C685C 172EFFF7 */ bne $t9, $t6, .L800C683C +/* 0C7460 800C6860 256BFFFC */ addiu $t3, $t3, -4 +.L800C6864: +/* 0C7464 800C6864 16C0FF65 */ bnez $s6, .L800C65FC +/* 0C7468 800C6868 26D6FFFF */ addiu $s6, $s6, -1 +/* 0C746C 800C686C 8FA2005C */ lw $v0, 0x5c($sp) +/* 0C7470 800C6870 00000000 */ nop +.L800C6874: +/* 0C7474 800C6874 8FB805A8 */ lw $t8, 0x5a8($sp) +/* 0C7478 800C6878 26940001 */ addiu $s4, $s4, 1 +/* 0C747C 800C687C 0314082A */ slt $at, $t8, $s4 +/* 0C7480 800C6880 1020FF4D */ beqz $at, .L800C65B8 +/* 0C7484 800C6884 24420004 */ addiu $v0, $v0, 4 +/* 0C7488 800C6888 AFB5060C */ sw $s5, 0x60c($sp) +.L800C688C: +/* 0C748C 800C688C 8FBF003C */ lw $ra, 0x3c($sp) +/* 0C7490 800C6890 8FB00018 */ lw $s0, 0x18($sp) +/* 0C7494 800C6894 8FB1001C */ lw $s1, 0x1c($sp) +/* 0C7498 800C6898 8FB20020 */ lw $s2, 0x20($sp) +/* 0C749C 800C689C 8FB30024 */ lw $s3, 0x24($sp) +/* 0C74A0 800C68A0 8FB40028 */ lw $s4, 0x28($sp) +/* 0C74A4 800C68A4 8FB5002C */ lw $s5, 0x2c($sp) +/* 0C74A8 800C68A8 8FB60030 */ lw $s6, 0x30($sp) +/* 0C74AC 800C68AC 8FB70034 */ lw $s7, 0x34($sp) +/* 0C74B0 800C68B0 8FBE0038 */ lw $fp, 0x38($sp) +/* 0C74B4 800C68B4 03E00008 */ jr $ra +/* 0C74B8 800C68B8 27BD05F8 */ addiu $sp, $sp, 0x5f8 + +/* 0C74BC 800C68BC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0B8920/func_800C68C0.s b/asm/non_matchings/unknown_0B8920/func_800C68C0.s new file mode 100644 index 00000000..4699b8e8 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C68C0.s @@ -0,0 +1,68 @@ +glabel func_800C68C0 +/* 0C74C0 800C68C0 3C0B8013 */ lui $t3, %hi(D_8012AAD4) # $t3, 0x8013 +/* 0C74C4 800C68C4 8D6BAAD4 */ lw $t3, %lo(D_8012AAD4)($t3) +/* 0C74C8 800C68C8 3C018013 */ lui $at, %hi(D_8012AAD8) # $at, 0x8013 +/* 0C74CC 800C68CC AC20AAD8 */ sw $zero, %lo(D_8012AAD8)($at) +/* 0C74D0 800C68D0 24080001 */ li $t0, 1 +/* 0C74D4 800C68D4 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0C74D8 800C68D8 3C0C800E */ lui $t4, %hi(D_800E3768) # $t4, 0x800e +/* 0C74DC 800C68DC 3C0A8013 */ lui $t2, %hi(D_8012AAD0) # $t2, 0x8013 +/* 0C74E0 800C68E0 0168082B */ sltu $at, $t3, $t0 +/* 0C74E4 800C68E4 AFBF001C */ sw $ra, 0x1c($sp) +/* 0C74E8 800C68E8 AFB00018 */ sw $s0, 0x18($sp) +/* 0C74EC 800C68EC 8D8C3768 */ lw $t4, %lo(D_800E3768)($t4) +/* 0C74F0 800C68F0 10200008 */ beqz $at, .L800C6914 +/* 0C74F4 800C68F4 8D4AAAD0 */ lw $t2, %lo(D_8012AAD0)($t2) +.L800C68F8: +/* 0C74F8 800C68F8 91820000 */ lbu $v0, ($t4) +/* 0C74FC 800C68FC 258C0001 */ addiu $t4, $t4, 1 +/* 0C7500 800C6900 01621004 */ sllv $v0, $v0, $t3 +/* 0C7504 800C6904 256B0008 */ addiu $t3, $t3, 8 +/* 0C7508 800C6908 0168082A */ slt $at, $t3, $t0 +/* 0C750C 800C690C 1420FFFA */ bnez $at, .L800C68F8 +/* 0C7510 800C6910 01425025 */ or $t2, $t2, $v0 +.L800C6914: +/* 0C7514 800C6914 31500001 */ andi $s0, $t2, 1 +/* 0C7518 800C6918 010A5006 */ srlv $t2, $t2, $t0 +/* 0C751C 800C691C 01685822 */ sub $t3, $t3, $t0 +/* 0C7520 800C6920 24080002 */ li $t0, 2 +/* 0C7524 800C6924 0168082B */ sltu $at, $t3, $t0 +/* 0C7528 800C6928 10200008 */ beqz $at, .L800C694C +/* 0C752C 800C692C 00000000 */ nop +.L800C6930: +/* 0C7530 800C6930 91820000 */ lbu $v0, ($t4) +/* 0C7534 800C6934 258C0001 */ addiu $t4, $t4, 1 +/* 0C7538 800C6938 01621004 */ sllv $v0, $v0, $t3 +/* 0C753C 800C693C 256B0008 */ addiu $t3, $t3, 8 +/* 0C7540 800C6940 0168082A */ slt $at, $t3, $t0 +/* 0C7544 800C6944 1420FFFA */ bnez $at, .L800C6930 +/* 0C7548 800C6948 01425025 */ or $t2, $t2, $v0 +.L800C694C: +/* 0C754C 800C694C 3C01800E */ lui $at, %hi(D_800E3768) # $at, 0x800e +/* 0C7550 800C6950 31490003 */ andi $t1, $t2, 3 +/* 0C7554 800C6954 AC2C3768 */ sw $t4, %lo(D_800E3768)($at) +/* 0C7558 800C6958 010A5006 */ srlv $t2, $t2, $t0 +/* 0C755C 800C695C 3C018013 */ lui $at, %hi(D_8012AAD0) # $at, 0x8013 +/* 0C7560 800C6960 AC2AAAD0 */ sw $t2, %lo(D_8012AAD0)($at) +/* 0C7564 800C6964 01685822 */ sub $t3, $t3, $t0 +/* 0C7568 800C6968 3C018013 */ lui $at, %hi(D_8012AAD4) # $at, 0x8013 +/* 0C756C 800C696C AC2BAAD4 */ sw $t3, %lo(D_8012AAD4)($at) +/* 0C7570 800C6970 24010002 */ li $at, 2 +/* 0C7574 800C6974 1121000B */ beq $t1, $at, .L800C69A4 +/* 0C7578 800C6978 24010001 */ li $at, 1 +/* 0C757C 800C697C 11210005 */ beq $t1, $at, .L800C6994 +/* 0C7580 800C6980 00000000 */ nop +/* 0C7584 800C6984 0C031BCD */ jal func_800C6F34 +/* 0C7588 800C6988 00000000 */ nop +/* 0C758C 800C698C 08031A6B */ j func_800C69AC +/* 0C7590 800C6990 00000000 */ nop + +.L800C6994: +/* 0C7594 800C6994 0C031B77 */ jal func_800C6DDC +/* 0C7598 800C6998 00000000 */ nop +/* 0C759C 800C699C 08031A6B */ j func_800C69AC +/* 0C75A0 800C69A0 00000000 */ nop + +.L800C69A4: +/* 0C75A4 800C69A4 0C031A71 */ jal func_800C69C4 +/* 0C75A8 800C69A8 00000000 */ nop diff --git a/asm/non_matchings/unknown_0B8920/func_800C69AC.s b/asm/non_matchings/unknown_0B8920/func_800C69AC.s new file mode 100644 index 00000000..ffe5e936 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C69AC.s @@ -0,0 +1,8 @@ +glabel func_800C69AC +/* 0C75AC 800C69AC 8FBF001C */ lw $ra, 0x1c($sp) +/* 0C75B0 800C69B0 24020001 */ li $v0, 1 +/* 0C75B4 800C69B4 00501022 */ sub $v0, $v0, $s0 +/* 0C75B8 800C69B8 8FB00018 */ lw $s0, 0x18($sp) +/* 0C75BC 800C69BC 03E00008 */ jr $ra +/* 0C75C0 800C69C0 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C69C4.s b/asm/non_matchings/unknown_0B8920/func_800C69C4.s new file mode 100644 index 00000000..c4afb620 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C69C4.s @@ -0,0 +1,127 @@ +glabel func_800C69C4 +/* 0C75C4 800C69C4 27BDFAC0 */ addiu $sp, $sp, -0x540 +/* 0C75C8 800C69C8 AFB30028 */ sw $s3, 0x28($sp) +/* 0C75CC 800C69CC 3C138013 */ lui $s3, %hi(D_8012AAD4) # $s3, 0x8013 +/* 0C75D0 800C69D0 8E73AAD4 */ lw $s3, %lo(D_8012AAD4)($s3) +/* 0C75D4 800C69D4 AFB4002C */ sw $s4, 0x2c($sp) +/* 0C75D8 800C69D8 AFB20024 */ sw $s2, 0x24($sp) +/* 0C75DC 800C69DC 24080005 */ li $t0, 5 +/* 0C75E0 800C69E0 3C14800E */ lui $s4, %hi(D_800E3768) # $s4, 0x800e +/* 0C75E4 800C69E4 3C128013 */ lui $s2, %hi(D_8012AAD0) # $s2, 0x8013 +/* 0C75E8 800C69E8 0268082B */ sltu $at, $s3, $t0 +/* 0C75EC 800C69EC AFBF0030 */ sw $ra, 0x30($sp) +/* 0C75F0 800C69F0 AFB10020 */ sw $s1, 0x20($sp) +/* 0C75F4 800C69F4 AFB0001C */ sw $s0, 0x1c($sp) +/* 0C75F8 800C69F8 8E943768 */ lw $s4, %lo(D_800E3768)($s4) +/* 0C75FC 800C69FC 10200008 */ beqz $at, .L800C6A20 +/* 0C7600 800C6A00 8E52AAD0 */ lw $s2, %lo(D_8012AAD0)($s2) +.L800C6A04: +/* 0C7604 800C6A04 92820000 */ lbu $v0, ($s4) +/* 0C7608 800C6A08 26940001 */ addiu $s4, $s4, 1 +/* 0C760C 800C6A0C 02621004 */ sllv $v0, $v0, $s3 +/* 0C7610 800C6A10 26730008 */ addiu $s3, $s3, 8 +/* 0C7614 800C6A14 0268082A */ slt $at, $s3, $t0 +/* 0C7618 800C6A18 1420FFFA */ bnez $at, .L800C6A04 +/* 0C761C 800C6A1C 02429025 */ or $s2, $s2, $v0 +.L800C6A20: +/* 0C7620 800C6A20 02689822 */ sub $s3, $s3, $t0 +/* 0C7624 800C6A24 3251001F */ andi $s1, $s2, 0x1f +/* 0C7628 800C6A28 0268082B */ sltu $at, $s3, $t0 +/* 0C762C 800C6A2C 26310101 */ addiu $s1, $s1, 0x101 +/* 0C7630 800C6A30 10200008 */ beqz $at, .L800C6A54 +/* 0C7634 800C6A34 01129006 */ srlv $s2, $s2, $t0 +.L800C6A38: +/* 0C7638 800C6A38 92820000 */ lbu $v0, ($s4) +/* 0C763C 800C6A3C 26940001 */ addiu $s4, $s4, 1 +/* 0C7640 800C6A40 02621004 */ sllv $v0, $v0, $s3 +/* 0C7644 800C6A44 26730008 */ addiu $s3, $s3, 8 +/* 0C7648 800C6A48 0268082A */ slt $at, $s3, $t0 +/* 0C764C 800C6A4C 1420FFFA */ bnez $at, .L800C6A38 +/* 0C7650 800C6A50 02429025 */ or $s2, $s2, $v0 +.L800C6A54: +/* 0C7654 800C6A54 3250001F */ andi $s0, $s2, 0x1f +/* 0C7658 800C6A58 01129006 */ srlv $s2, $s2, $t0 +/* 0C765C 800C6A5C 02689822 */ sub $s3, $s3, $t0 +/* 0C7660 800C6A60 24080004 */ li $t0, 4 +/* 0C7664 800C6A64 0268082B */ sltu $at, $s3, $t0 +/* 0C7668 800C6A68 10200008 */ beqz $at, .L800C6A8C +/* 0C766C 800C6A6C 26100001 */ addiu $s0, $s0, 1 +.L800C6A70: +/* 0C7670 800C6A70 92820000 */ lbu $v0, ($s4) +/* 0C7674 800C6A74 26940001 */ addiu $s4, $s4, 1 +/* 0C7678 800C6A78 02621004 */ sllv $v0, $v0, $s3 +/* 0C767C 800C6A7C 26730008 */ addiu $s3, $s3, 8 +/* 0C7680 800C6A80 0268082A */ slt $at, $s3, $t0 +/* 0C7684 800C6A84 1420FFFA */ bnez $at, .L800C6A70 +/* 0C7688 800C6A88 02429025 */ or $s2, $s2, $v0 +.L800C6A8C: +/* 0C768C 800C6A8C 324A000F */ andi $t2, $s2, 0xf +/* 0C7690 800C6A90 254A0004 */ addiu $t2, $t2, 4 +/* 0C7694 800C6A94 3C19800F */ lui $t9, %hi(D_800E93C0) # $t9, 0x800f +/* 0C7698 800C6A98 01129006 */ srlv $s2, $s2, $t0 +/* 0C769C 800C6A9C 02689822 */ sub $s3, $s3, $t0 +/* 0C76A0 800C6AA0 000A4825 */ or $t1, $zero, $t2 +/* 0C76A4 800C6AA4 273993C0 */ addiu $t9, %lo(D_800E93C0) # addiu $t9, $t9, -0x6c40 +/* 0C76A8 800C6AA8 11400019 */ beqz $t2, .L800C6B10 +/* 0C76AC 800C6AAC 23AF0044 */ addi $t7, $sp, 0x44 +.L800C6AB0: +/* 0C76B0 800C6AB0 24080003 */ li $t0, 3 +/* 0C76B4 800C6AB4 0268082B */ sltu $at, $s3, $t0 +/* 0C76B8 800C6AB8 50200009 */ beql $at, $zero, .L800C6AE0 +/* 0C76BC 800C6ABC 93230000 */ lbu $v1, ($t9) +.L800C6AC0: +/* 0C76C0 800C6AC0 92820000 */ lbu $v0, ($s4) +/* 0C76C4 800C6AC4 26940001 */ addiu $s4, $s4, 1 +/* 0C76C8 800C6AC8 02621004 */ sllv $v0, $v0, $s3 +/* 0C76CC 800C6ACC 26730008 */ addiu $s3, $s3, 8 +/* 0C76D0 800C6AD0 0268082A */ slt $at, $s3, $t0 +/* 0C76D4 800C6AD4 1420FFFA */ bnez $at, .L800C6AC0 +/* 0C76D8 800C6AD8 02429025 */ or $s2, $s2, $v0 +/* 0C76DC 800C6ADC 93230000 */ lbu $v1, ($t9) +.L800C6AE0: +/* 0C76E0 800C6AE0 32420007 */ andi $v0, $s2, 7 +/* 0C76E4 800C6AE4 254AFFFF */ addiu $t2, $t2, -1 +/* 0C76E8 800C6AE8 00031880 */ sll $v1, $v1, 2 +/* 0C76EC 800C6AEC 006F1821 */ addu $v1, $v1, $t7 +/* 0C76F0 800C6AF0 AC620000 */ sw $v0, ($v1) +/* 0C76F4 800C6AF4 01129006 */ srlv $s2, $s2, $t0 +/* 0C76F8 800C6AF8 02689822 */ sub $s3, $s3, $t0 +/* 0C76FC 800C6AFC 1540FFEC */ bnez $t2, .L800C6AB0 +/* 0C7700 800C6B00 27390001 */ addiu $t9, $t9, 1 +/* 0C7704 800C6B04 2D210013 */ sltiu $at, $t1, 0x13 +/* 0C7708 800C6B08 5020000A */ beql $at, $zero, .L800C6B34 +/* 0C770C 800C6B0C 240D0007 */ li $t5, 7 +.L800C6B10: +/* 0C7710 800C6B10 93230000 */ lbu $v1, ($t9) +/* 0C7714 800C6B14 25290001 */ addiu $t1, $t1, 1 +/* 0C7718 800C6B18 29210013 */ slti $at, $t1, 0x13 +/* 0C771C 800C6B1C 00031880 */ sll $v1, $v1, 2 +/* 0C7720 800C6B20 006F1821 */ addu $v1, $v1, $t7 +/* 0C7724 800C6B24 AC600000 */ sw $zero, ($v1) +/* 0C7728 800C6B28 1420FFF9 */ bnez $at, .L800C6B10 +/* 0C772C 800C6B2C 27390001 */ addiu $t9, $t9, 1 +/* 0C7730 800C6B30 240D0007 */ li $t5, 7 +.L800C6B34: +/* 0C7734 800C6B34 23A80034 */ addi $t0, $sp, 0x34 +/* 0C7738 800C6B38 23A90038 */ addi $t1, $sp, 0x38 +/* 0C773C 800C6B3C AFAD0038 */ sw $t5, 0x38($sp) +/* 0C7740 800C6B40 23A40044 */ addi $a0, $sp, 0x44 +/* 0C7744 800C6B44 24050013 */ li $a1, 19 +/* 0C7748 800C6B48 24060013 */ li $a2, 19 +/* 0C774C 800C6B4C 24070000 */ li $a3, 0 +/* 0C7750 800C6B50 AFA00010 */ sw $zero, 0x10($sp) +/* 0C7754 800C6B54 AFA80014 */ sw $t0, 0x14($sp) +/* 0C7758 800C6B58 0C03189D */ jal func_800C6274 +/* 0C775C 800C6B5C AFA90018 */ sw $t1, 0x18($sp) +/* 0C7760 800C6B60 23A90038 */ addi $t1, $sp, 0x38 +/* 0C7764 800C6B64 8D2D0000 */ lw $t5, ($t1) +/* 0C7768 800C6B68 3C02800F */ lui $v0, %hi(D_800E948C) # $v0, 0x800f +/* 0C776C 800C6B6C 2442948C */ addiu $v0, %lo(D_800E948C) # addiu $v0, $v0, -0x6b74 +/* 0C7770 800C6B70 000D1840 */ sll $v1, $t5, 1 +/* 0C7774 800C6B74 23A80034 */ addi $t0, $sp, 0x34 +/* 0C7778 800C6B78 00431020 */ add $v0, $v0, $v1 +/* 0C777C 800C6B7C 8D0E0000 */ lw $t6, ($t0) +/* 0C7780 800C6B80 0230C820 */ add $t9, $s1, $s0 +/* 0C7784 800C6B84 84580000 */ lh $t8, ($v0) +/* 0C7788 800C6B88 23AF0044 */ addi $t7, $sp, 0x44 +/* 0C778C 800C6B8C 240A0000 */ li $t2, 0 diff --git a/asm/non_matchings/unknown_0B8920/func_800C6B90.s b/asm/non_matchings/unknown_0B8920/func_800C6B90.s new file mode 100644 index 00000000..0464740a --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C6B90.s @@ -0,0 +1,168 @@ +glabel func_800C6B90 +/* 0C7790 800C6B90 1320005F */ beqz $t9, .L800C6D10 +/* 0C7794 800C6B94 026D082B */ sltu $at, $s3, $t5 +/* 0C7798 800C6B98 50200009 */ beql $at, $zero, .L800C6BC0 +/* 0C779C 800C6B9C 02581024 */ and $v0, $s2, $t8 +.L800C6BA0: +/* 0C77A0 800C6BA0 92820000 */ lbu $v0, ($s4) +/* 0C77A4 800C6BA4 26940001 */ addiu $s4, $s4, 1 +/* 0C77A8 800C6BA8 02621004 */ sllv $v0, $v0, $s3 +/* 0C77AC 800C6BAC 26730008 */ addiu $s3, $s3, 8 +/* 0C77B0 800C6BB0 026D082A */ slt $at, $s3, $t5 +/* 0C77B4 800C6BB4 1420FFFA */ bnez $at, .L800C6BA0 +/* 0C77B8 800C6BB8 02429025 */ or $s2, $s2, $v0 +/* 0C77BC 800C6BBC 02581024 */ and $v0, $s2, $t8 +.L800C6BC0: +/* 0C77C0 800C6BC0 000210C0 */ sll $v0, $v0, 3 +/* 0C77C4 800C6BC4 01C24821 */ addu $t1, $t6, $v0 +/* 0C77C8 800C6BC8 95280004 */ lhu $t0, 4($t1) +/* 0C77CC 800C6BCC 91220001 */ lbu $v0, 1($t1) +/* 0C77D0 800C6BD0 29010010 */ slti $at, $t0, 0x10 +/* 0C77D4 800C6BD4 00529006 */ srlv $s2, $s2, $v0 +/* 0C77D8 800C6BD8 1420001C */ bnez $at, .L800C6C4C +/* 0C77DC 800C6BDC 02629822 */ sub $s3, $s3, $v0 +/* 0C77E0 800C6BE0 24010010 */ li $at, 16 +/* 0C77E4 800C6BE4 1101001E */ beq $t0, $at, .L800C6C60 +/* 0C77E8 800C6BE8 24010011 */ li $at, 17 +/* 0C77EC 800C6BEC 51010033 */ beql $t0, $at, .L800C6CBC +/* 0C77F0 800C6BF0 24080003 */ li $t0, 3 +/* 0C77F4 800C6BF4 24080007 */ li $t0, 7 +/* 0C77F8 800C6BF8 0268082B */ sltu $at, $s3, $t0 +/* 0C77FC 800C6BFC 50200009 */ beql $at, $zero, .L800C6C24 +/* 0C7800 800C6C00 3249007F */ andi $t1, $s2, 0x7f +.L800C6C04: +/* 0C7804 800C6C04 92820000 */ lbu $v0, ($s4) +/* 0C7808 800C6C08 26940001 */ addiu $s4, $s4, 1 +/* 0C780C 800C6C0C 02621004 */ sllv $v0, $v0, $s3 +/* 0C7810 800C6C10 26730008 */ addiu $s3, $s3, 8 +/* 0C7814 800C6C14 0268082A */ slt $at, $s3, $t0 +/* 0C7818 800C6C18 1420FFFA */ bnez $at, .L800C6C04 +/* 0C781C 800C6C1C 02429025 */ or $s2, $s2, $v0 +/* 0C7820 800C6C20 3249007F */ andi $t1, $s2, 0x7f +.L800C6C24: +/* 0C7824 800C6C24 2529000B */ addiu $t1, $t1, 0xb +/* 0C7828 800C6C28 01129006 */ srlv $s2, $s2, $t0 +/* 0C782C 800C6C2C 02689822 */ sub $s3, $s3, $t0 +/* 0C7830 800C6C30 0329C823 */ subu $t9, $t9, $t1 +.L800C6C34: +/* 0C7834 800C6C34 2529FFFF */ addiu $t1, $t1, -1 +/* 0C7838 800C6C38 ADE00000 */ sw $zero, ($t7) +/* 0C783C 800C6C3C 1520FFFD */ bnez $t1, .L800C6C34 +/* 0C7840 800C6C40 25EF0004 */ addiu $t7, $t7, 4 +/* 0C7844 800C6C44 08031AE4 */ j func_800C6B90 +/* 0C7848 800C6C48 240A0000 */ li $t2, 0 + +.L800C6C4C: +/* 0C784C 800C6C4C ADE80000 */ sw $t0, ($t7) +/* 0C7850 800C6C50 25EF0004 */ addiu $t7, $t7, 4 +/* 0C7854 800C6C54 2739FFFF */ addiu $t9, $t9, -1 +/* 0C7858 800C6C58 08031AE4 */ j func_800C6B90 +/* 0C785C 800C6C5C 00085025 */ or $t2, $zero, $t0 + +.L800C6C60: +/* 0C7860 800C6C60 24080002 */ li $t0, 2 +/* 0C7864 800C6C64 0268082B */ sltu $at, $s3, $t0 +/* 0C7868 800C6C68 50200009 */ beql $at, $zero, .L800C6C90 +/* 0C786C 800C6C6C 32490003 */ andi $t1, $s2, 3 +.L800C6C70: +/* 0C7870 800C6C70 92820000 */ lbu $v0, ($s4) +/* 0C7874 800C6C74 26940001 */ addiu $s4, $s4, 1 +/* 0C7878 800C6C78 02621004 */ sllv $v0, $v0, $s3 +/* 0C787C 800C6C7C 26730008 */ addiu $s3, $s3, 8 +/* 0C7880 800C6C80 0268082A */ slt $at, $s3, $t0 +/* 0C7884 800C6C84 1420FFFA */ bnez $at, .L800C6C70 +/* 0C7888 800C6C88 02429025 */ or $s2, $s2, $v0 +/* 0C788C 800C6C8C 32490003 */ andi $t1, $s2, 3 +.L800C6C90: +/* 0C7890 800C6C90 21290003 */ addi $t1, $t1, 3 +/* 0C7894 800C6C94 01129006 */ srlv $s2, $s2, $t0 +/* 0C7898 800C6C98 02689822 */ sub $s3, $s3, $t0 +/* 0C789C 800C6C9C 0329C823 */ subu $t9, $t9, $t1 +.L800C6CA0: +/* 0C78A0 800C6CA0 2529FFFF */ addiu $t1, $t1, -1 +/* 0C78A4 800C6CA4 ADEA0000 */ sw $t2, ($t7) +/* 0C78A8 800C6CA8 1520FFFD */ bnez $t1, .L800C6CA0 +/* 0C78AC 800C6CAC 25EF0004 */ addiu $t7, $t7, 4 +/* 0C78B0 800C6CB0 08031AE4 */ j func_800C6B90 +/* 0C78B4 800C6CB4 00000000 */ nop + +/* 0C78B8 800C6CB8 24080003 */ li $t0, 3 +.L800C6CBC: +/* 0C78BC 800C6CBC 0268082B */ sltu $at, $s3, $t0 +/* 0C78C0 800C6CC0 50200009 */ beql $at, $zero, .L800C6CE8 +/* 0C78C4 800C6CC4 32490007 */ andi $t1, $s2, 7 +.L800C6CC8: +/* 0C78C8 800C6CC8 92820000 */ lbu $v0, ($s4) +/* 0C78CC 800C6CCC 26940001 */ addiu $s4, $s4, 1 +/* 0C78D0 800C6CD0 02621004 */ sllv $v0, $v0, $s3 +/* 0C78D4 800C6CD4 26730008 */ addiu $s3, $s3, 8 +/* 0C78D8 800C6CD8 0268082A */ slt $at, $s3, $t0 +/* 0C78DC 800C6CDC 1420FFFA */ bnez $at, .L800C6CC8 +/* 0C78E0 800C6CE0 02429025 */ or $s2, $s2, $v0 +/* 0C78E4 800C6CE4 32490007 */ andi $t1, $s2, 7 +.L800C6CE8: +/* 0C78E8 800C6CE8 21290003 */ addi $t1, $t1, 3 +/* 0C78EC 800C6CEC 01129006 */ srlv $s2, $s2, $t0 +/* 0C78F0 800C6CF0 02689822 */ sub $s3, $s3, $t0 +/* 0C78F4 800C6CF4 0329C823 */ subu $t9, $t9, $t1 +.L800C6CF8: +/* 0C78F8 800C6CF8 2529FFFF */ addiu $t1, $t1, -1 +/* 0C78FC 800C6CFC ADE00000 */ sw $zero, ($t7) +/* 0C7900 800C6D00 1520FFFD */ bnez $t1, .L800C6CF8 +/* 0C7904 800C6D04 25EF0004 */ addiu $t7, $t7, 4 +/* 0C7908 800C6D08 08031AE4 */ j func_800C6B90 +/* 0C790C 800C6D0C 240A0000 */ li $t2, 0 + +.L800C6D10: +/* 0C7910 800C6D10 3C01800E */ lui $at, %hi(D_800E3768) # $at, 0x800e +/* 0C7914 800C6D14 AC343768 */ sw $s4, %lo(D_800E3768)($at) +/* 0C7918 800C6D18 3C018013 */ lui $at, %hi(D_8012AAD0) # $at, 0x8013 +/* 0C791C 800C6D1C 24080009 */ li $t0, 9 +/* 0C7920 800C6D20 AC32AAD0 */ sw $s2, %lo(D_8012AAD0)($at) +/* 0C7924 800C6D24 AFA80038 */ sw $t0, 0x38($sp) +/* 0C7928 800C6D28 3C02800F */ lui $v0, %hi(D_800E9412) # $v0, 0x800f +/* 0C792C 800C6D2C 3C018013 */ lui $at, %hi(D_8012AAD4) # $at, 0x8013 +/* 0C7930 800C6D30 3C07800F */ lui $a3, %hi(D_800E93D4) # $a3, 0x800f +/* 0C7934 800C6D34 24429412 */ addiu $v0, %lo(D_800E9412) # addiu $v0, $v0, -0x6bee +/* 0C7938 800C6D38 23A30034 */ addi $v1, $sp, 0x34 +/* 0C793C 800C6D3C 23A80038 */ addi $t0, $sp, 0x38 +/* 0C7940 800C6D40 AC33AAD4 */ sw $s3, %lo(D_8012AAD4)($at) +/* 0C7944 800C6D44 23A40044 */ addi $a0, $sp, 0x44 +/* 0C7948 800C6D48 00112825 */ or $a1, $zero, $s1 +/* 0C794C 800C6D4C 24060101 */ li $a2, 257 +/* 0C7950 800C6D50 24E793D4 */ addiu $a3, %lo(D_800E93D4) # addiu $a3, $a3, -0x6c2c +/* 0C7954 800C6D54 AFA20010 */ sw $v0, 0x10($sp) +/* 0C7958 800C6D58 AFA30014 */ sw $v1, 0x14($sp) +/* 0C795C 800C6D5C 0C03189D */ jal func_800C6274 +/* 0C7960 800C6D60 AFA80018 */ sw $t0, 0x18($sp) +/* 0C7964 800C6D64 23A40044 */ addi $a0, $sp, 0x44 +/* 0C7968 800C6D68 00111080 */ sll $v0, $s1, 2 +/* 0C796C 800C6D6C 24080006 */ li $t0, 6 +/* 0C7970 800C6D70 00822021 */ addu $a0, $a0, $v0 +/* 0C7974 800C6D74 AFA80040 */ sw $t0, 0x40($sp) +/* 0C7978 800C6D78 3C02800F */ lui $v0, %hi(D_800E946E) # $v0, 0x800f +/* 0C797C 800C6D7C 3C07800F */ lui $a3, %hi(D_800E9432) # $a3, 0x800f +/* 0C7980 800C6D80 2442946E */ addiu $v0, %lo(D_800E946E) # addiu $v0, $v0, -0x6b92 +/* 0C7984 800C6D84 23A3003C */ addi $v1, $sp, 0x3c +/* 0C7988 800C6D88 23A80040 */ addi $t0, $sp, 0x40 +/* 0C798C 800C6D8C 00102825 */ or $a1, $zero, $s0 +/* 0C7990 800C6D90 24060000 */ li $a2, 0 +/* 0C7994 800C6D94 24E79432 */ addiu $a3, %lo(D_800E9432) # addiu $a3, $a3, -0x6bce +/* 0C7998 800C6D98 AFA20010 */ sw $v0, 0x10($sp) +/* 0C799C 800C6D9C AFA30014 */ sw $v1, 0x14($sp) +/* 0C79A0 800C6DA0 0C03189D */ jal func_800C6274 +/* 0C79A4 800C6DA4 AFA80018 */ sw $t0, 0x18($sp) +/* 0C79A8 800C6DA8 8FA40034 */ lw $a0, 0x34($sp) +/* 0C79AC 800C6DAC 8FA5003C */ lw $a1, 0x3c($sp) +/* 0C79B0 800C6DB0 8FA60038 */ lw $a2, 0x38($sp) +/* 0C79B4 800C6DB4 0C031C10 */ jal func_800C7040 +/* 0C79B8 800C6DB8 8FA70040 */ lw $a3, 0x40($sp) +/* 0C79BC 800C6DBC 8FBF0030 */ lw $ra, 0x30($sp) +/* 0C79C0 800C6DC0 8FB4002C */ lw $s4, 0x2c($sp) +/* 0C79C4 800C6DC4 8FB30028 */ lw $s3, 0x28($sp) +/* 0C79C8 800C6DC8 8FB20024 */ lw $s2, 0x24($sp) +/* 0C79CC 800C6DCC 8FB10020 */ lw $s1, 0x20($sp) +/* 0C79D0 800C6DD0 8FB0001C */ lw $s0, 0x1c($sp) +/* 0C79D4 800C6DD4 03E00008 */ jr $ra +/* 0C79D8 800C6DD8 27BD0540 */ addiu $sp, $sp, 0x540 + diff --git a/asm/non_matchings/unknown_0B8920/func_800C6DDC.s b/asm/non_matchings/unknown_0B8920/func_800C6DDC.s new file mode 100644 index 00000000..87da3a46 --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C6DDC.s @@ -0,0 +1,92 @@ +glabel func_800C6DDC +/* 0C79DC 800C6DDC 27BDFAD0 */ addiu $sp, $sp, -0x530 +/* 0C79E0 800C6DE0 AFBF001C */ sw $ra, 0x1c($sp) +/* 0C79E4 800C6DE4 23AB0044 */ addi $t3, $sp, 0x44 +/* 0C79E8 800C6DE8 24080024 */ li $t0, 36 +/* 0C79EC 800C6DEC 24090008 */ li $t1, 8 +.L800C6DF0: +/* 0C79F0 800C6DF0 2508FFFF */ addiu $t0, $t0, -1 +/* 0C79F4 800C6DF4 AD690000 */ sw $t1, ($t3) +/* 0C79F8 800C6DF8 AD690004 */ sw $t1, 4($t3) +/* 0C79FC 800C6DFC AD690008 */ sw $t1, 8($t3) +/* 0C7A00 800C6E00 AD69000C */ sw $t1, 0xc($t3) +/* 0C7A04 800C6E04 1500FFFA */ bnez $t0, .L800C6DF0 +/* 0C7A08 800C6E08 256B0010 */ addiu $t3, $t3, 0x10 +/* 0C7A0C 800C6E0C 2408001C */ li $t0, 28 +/* 0C7A10 800C6E10 24090009 */ li $t1, 9 +.L800C6E14: +/* 0C7A14 800C6E14 2508FFFF */ addiu $t0, $t0, -1 +/* 0C7A18 800C6E18 AD690000 */ sw $t1, ($t3) +/* 0C7A1C 800C6E1C AD690004 */ sw $t1, 4($t3) +/* 0C7A20 800C6E20 AD690008 */ sw $t1, 8($t3) +/* 0C7A24 800C6E24 AD69000C */ sw $t1, 0xc($t3) +/* 0C7A28 800C6E28 1500FFFA */ bnez $t0, .L800C6E14 +/* 0C7A2C 800C6E2C 256B0010 */ addiu $t3, $t3, 0x10 +/* 0C7A30 800C6E30 24080006 */ li $t0, 6 +/* 0C7A34 800C6E34 24090007 */ li $t1, 7 +.L800C6E38: +/* 0C7A38 800C6E38 2508FFFF */ addiu $t0, $t0, -1 +/* 0C7A3C 800C6E3C AD690000 */ sw $t1, ($t3) +/* 0C7A40 800C6E40 AD690004 */ sw $t1, 4($t3) +/* 0C7A44 800C6E44 AD690008 */ sw $t1, 8($t3) +/* 0C7A48 800C6E48 AD69000C */ sw $t1, 0xc($t3) +/* 0C7A4C 800C6E4C 1500FFFA */ bnez $t0, .L800C6E38 +/* 0C7A50 800C6E50 256B0010 */ addiu $t3, $t3, 0x10 +/* 0C7A54 800C6E54 24090008 */ li $t1, 8 +/* 0C7A58 800C6E58 AD690000 */ sw $t1, ($t3) +/* 0C7A5C 800C6E5C AD690004 */ sw $t1, 4($t3) +/* 0C7A60 800C6E60 AD690008 */ sw $t1, 8($t3) +/* 0C7A64 800C6E64 AD69000C */ sw $t1, 0xc($t3) +/* 0C7A68 800C6E68 AD690010 */ sw $t1, 0x10($t3) +/* 0C7A6C 800C6E6C AD690014 */ sw $t1, 0x14($t3) +/* 0C7A70 800C6E70 AD690018 */ sw $t1, 0x18($t3) +/* 0C7A74 800C6E74 AD69001C */ sw $t1, 0x1c($t3) +/* 0C7A78 800C6E78 24080007 */ li $t0, 7 +/* 0C7A7C 800C6E7C AFA80038 */ sw $t0, 0x38($sp) +/* 0C7A80 800C6E80 3C02800F */ lui $v0, %hi(D_800E9412) # $v0, 0x800f +/* 0C7A84 800C6E84 3C07800F */ lui $a3, %hi(D_800E93D4) # $a3, 0x800f +/* 0C7A88 800C6E88 24429412 */ addiu $v0, %lo(D_800E9412) # addiu $v0, $v0, -0x6bee +/* 0C7A8C 800C6E8C 23A30020 */ addi $v1, $sp, 0x20 +/* 0C7A90 800C6E90 23A80024 */ addi $t0, $sp, 0x24 +/* 0C7A94 800C6E94 23A40044 */ addi $a0, $sp, 0x44 +/* 0C7A98 800C6E98 24050120 */ li $a1, 288 +/* 0C7A9C 800C6E9C 24060101 */ li $a2, 257 +/* 0C7AA0 800C6EA0 24E793D4 */ addiu $a3, %lo(D_800E93D4) # addiu $a3, $a3, -0x6c2c +/* 0C7AA4 800C6EA4 AFA20010 */ sw $v0, 0x10($sp) +/* 0C7AA8 800C6EA8 AFA30014 */ sw $v1, 0x14($sp) +/* 0C7AAC 800C6EAC 0C03189D */ jal func_800C6274 +/* 0C7AB0 800C6EB0 AFA80018 */ sw $t0, 0x18($sp) +/* 0C7AB4 800C6EB4 23AB0044 */ addi $t3, $sp, 0x44 +/* 0C7AB8 800C6EB8 2408000A */ li $t0, 10 +/* 0C7ABC 800C6EBC 24090005 */ li $t1, 5 +.L800C6EC0: +/* 0C7AC0 800C6EC0 2508FFFF */ addiu $t0, $t0, -1 +/* 0C7AC4 800C6EC4 AD690000 */ sw $t1, ($t3) +/* 0C7AC8 800C6EC8 AD690004 */ sw $t1, 4($t3) +/* 0C7ACC 800C6ECC AD690008 */ sw $t1, 8($t3) +/* 0C7AD0 800C6ED0 1500FFFB */ bnez $t0, .L800C6EC0 +/* 0C7AD4 800C6ED4 256B000C */ addiu $t3, $t3, 0xc +/* 0C7AD8 800C6ED8 3C02800F */ lui $v0, %hi(D_800E946E) # $v0, 0x800f +/* 0C7ADC 800C6EDC 3C07800F */ lui $a3, %hi(D_800E9432) # $a3, 0x800f +/* 0C7AE0 800C6EE0 2442946E */ addiu $v0, %lo(D_800E946E) # addiu $v0, $v0, -0x6b92 +/* 0C7AE4 800C6EE4 23A30028 */ addi $v1, $sp, 0x28 +/* 0C7AE8 800C6EE8 23A8002C */ addi $t0, $sp, 0x2c +/* 0C7AEC 800C6EEC AFA90040 */ sw $t1, 0x40($sp) +/* 0C7AF0 800C6EF0 23A40044 */ addi $a0, $sp, 0x44 +/* 0C7AF4 800C6EF4 2405001E */ li $a1, 30 +/* 0C7AF8 800C6EF8 24060000 */ li $a2, 0 +/* 0C7AFC 800C6EFC 24E79432 */ addiu $a3, %lo(D_800E9432) # addiu $a3, $a3, -0x6bce +/* 0C7B00 800C6F00 AFA20010 */ sw $v0, 0x10($sp) +/* 0C7B04 800C6F04 AFA30014 */ sw $v1, 0x14($sp) +/* 0C7B08 800C6F08 0C03189D */ jal func_800C6274 +/* 0C7B0C 800C6F0C AFA80018 */ sw $t0, 0x18($sp) +/* 0C7B10 800C6F10 8FA40020 */ lw $a0, 0x20($sp) +/* 0C7B14 800C6F14 8FA50028 */ lw $a1, 0x28($sp) +/* 0C7B18 800C6F18 8FA60024 */ lw $a2, 0x24($sp) +/* 0C7B1C 800C6F1C 0C031C10 */ jal func_800C7040 +/* 0C7B20 800C6F20 8FA7002C */ lw $a3, 0x2c($sp) +/* 0C7B24 800C6F24 8FBF001C */ lw $ra, 0x1c($sp) +/* 0C7B28 800C6F28 27BD0530 */ addiu $sp, $sp, 0x530 +/* 0C7B2C 800C6F2C 03E00008 */ jr $ra +/* 0C7B30 800C6F30 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0B8920/func_800C6F34.s b/asm/non_matchings/unknown_0B8920/func_800C6F34.s new file mode 100644 index 00000000..d5c81bbb --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C6F34.s @@ -0,0 +1,76 @@ +glabel func_800C6F34 +/* 0C7B34 800C6F34 3C0D8013 */ lui $t5, %hi(D_8012AAD4) # $t5, 0x8013 +/* 0C7B38 800C6F38 8DADAAD4 */ lw $t5, %lo(D_8012AAD4)($t5) +/* 0C7B3C 800C6F3C 3C0C8013 */ lui $t4, %hi(D_8012AAD0) # $t4, 0x8013 +/* 0C7B40 800C6F40 8D8CAAD0 */ lw $t4, %lo(D_8012AAD0)($t4) +/* 0C7B44 800C6F44 31A80007 */ andi $t0, $t5, 7 +/* 0C7B48 800C6F48 01A86822 */ sub $t5, $t5, $t0 +/* 0C7B4C 800C6F4C 010C6006 */ srlv $t4, $t4, $t0 +/* 0C7B50 800C6F50 24080010 */ li $t0, 16 +/* 0C7B54 800C6F54 3C0F800E */ lui $t7, %hi(D_800E3768) # $t7, 0x800e +/* 0C7B58 800C6F58 3C0E800E */ lui $t6, %hi(D_800E376C) # $t6, 0x800e +/* 0C7B5C 800C6F5C 01A8082B */ sltu $at, $t5, $t0 +/* 0C7B60 800C6F60 8DEF3768 */ lw $t7, %lo(D_800E3768)($t7) +/* 0C7B64 800C6F64 10200008 */ beqz $at, .L800C6F88 +/* 0C7B68 800C6F68 8DCE376C */ lw $t6, %lo(D_800E376C)($t6) +.L800C6F6C: +/* 0C7B6C 800C6F6C 91E20000 */ lbu $v0, ($t7) +/* 0C7B70 800C6F70 25EF0001 */ addiu $t7, $t7, 1 +/* 0C7B74 800C6F74 01A21004 */ sllv $v0, $v0, $t5 +/* 0C7B78 800C6F78 25AD0008 */ addiu $t5, $t5, 8 +/* 0C7B7C 800C6F7C 01A8082A */ slt $at, $t5, $t0 +/* 0C7B80 800C6F80 1420FFFA */ bnez $at, .L800C6F6C +/* 0C7B84 800C6F84 01826025 */ or $t4, $t4, $v0 +.L800C6F88: +/* 0C7B88 800C6F88 01A86822 */ sub $t5, $t5, $t0 +/* 0C7B8C 800C6F8C 3189FFFF */ andi $t1, $t4, 0xffff +/* 0C7B90 800C6F90 01A8082B */ sltu $at, $t5, $t0 +/* 0C7B94 800C6F94 10200008 */ beqz $at, .L800C6FB8 +/* 0C7B98 800C6F98 010C6006 */ srlv $t4, $t4, $t0 +.L800C6F9C: +/* 0C7B9C 800C6F9C 91E20000 */ lbu $v0, ($t7) +/* 0C7BA0 800C6FA0 25EF0001 */ addiu $t7, $t7, 1 +/* 0C7BA4 800C6FA4 01A21004 */ sllv $v0, $v0, $t5 +/* 0C7BA8 800C6FA8 25AD0008 */ addiu $t5, $t5, 8 +/* 0C7BAC 800C6FAC 01A8082A */ slt $at, $t5, $t0 +/* 0C7BB0 800C6FB0 1420FFFA */ bnez $at, .L800C6F9C +/* 0C7BB4 800C6FB4 01826025 */ or $t4, $t4, $v0 +.L800C6FB8: +/* 0C7BB8 800C6FB8 31220003 */ andi $v0, $t1, 3 +/* 0C7BBC 800C6FBC 010C6006 */ srlv $t4, $t4, $t0 +/* 0C7BC0 800C6FC0 1040000A */ beqz $v0, .L800C6FEC +/* 0C7BC4 800C6FC4 01A86822 */ sub $t5, $t5, $t0 +/* 0C7BC8 800C6FC8 01224822 */ sub $t1, $t1, $v0 +.L800C6FCC: +/* 0C7BCC 800C6FCC 91EA0000 */ lbu $t2, ($t7) +/* 0C7BD0 800C6FD0 2042FFFF */ addi $v0, $v0, -1 +/* 0C7BD4 800C6FD4 21EF0001 */ addi $t7, $t7, 1 +/* 0C7BD8 800C6FD8 21CE0001 */ addi $t6, $t6, 1 +/* 0C7BDC 800C6FDC 1440FFFB */ bnez $v0, .L800C6FCC +/* 0C7BE0 800C6FE0 A1CAFFFF */ sb $t2, -1($t6) +/* 0C7BE4 800C6FE4 1120000D */ beqz $t1, .L800C701C +/* 0C7BE8 800C6FE8 00000000 */ nop +.L800C6FEC: +/* 0C7BEC 800C6FEC 91E20000 */ lbu $v0, ($t7) +/* 0C7BF0 800C6FF0 2529FFFC */ addiu $t1, $t1, -4 +/* 0C7BF4 800C6FF4 25EF0004 */ addiu $t7, $t7, 4 +/* 0C7BF8 800C6FF8 A1C20000 */ sb $v0, ($t6) +/* 0C7BFC 800C6FFC 91E3FFFD */ lbu $v1, -3($t7) +/* 0C7C00 800C7000 25CE0004 */ addiu $t6, $t6, 4 +/* 0C7C04 800C7004 A1C3FFFD */ sb $v1, -3($t6) +/* 0C7C08 800C7008 91EAFFFE */ lbu $t2, -2($t7) +/* 0C7C0C 800C700C A1CAFFFE */ sb $t2, -2($t6) +/* 0C7C10 800C7010 91EBFFFF */ lbu $t3, -1($t7) +/* 0C7C14 800C7014 1520FFF5 */ bnez $t1, .L800C6FEC +/* 0C7C18 800C7018 A1CBFFFF */ sb $t3, -1($t6) +.L800C701C: +/* 0C7C1C 800C701C 3C01800E */ lui $at, %hi(D_800E3768) # $at, 0x800e +/* 0C7C20 800C7020 AC2F3768 */ sw $t7, %lo(D_800E3768)($at) +/* 0C7C24 800C7024 3C01800E */ lui $at, %hi(D_800E376C) # $at, 0x800e +/* 0C7C28 800C7028 AC2E376C */ sw $t6, %lo(D_800E376C)($at) +/* 0C7C2C 800C702C 3C018013 */ lui $at, %hi(D_8012AAD0) # $at, 0x8013 +/* 0C7C30 800C7030 AC2CAAD0 */ sw $t4, %lo(D_8012AAD0)($at) +/* 0C7C34 800C7034 3C018013 */ lui $at, 0x8013 +/* 0C7C38 800C7038 03E00008 */ jr $ra +/* 0C7C3C 800C703C AC2DAAD4 */ sw $t5, -0x552c($at) + diff --git a/asm/non_matchings/unknown_0B8920/func_800C7040.s b/asm/non_matchings/unknown_0B8920/func_800C7040.s new file mode 100644 index 00000000..d83db8fb --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C7040.s @@ -0,0 +1,21 @@ +glabel func_800C7040 +/* 0C7C40 800C7040 27BDFFF0 */ addiu $sp, $sp, -0x10 +/* 0C7C44 800C7044 3C0B800F */ lui $t3, %hi(D_800E948C) # $t3, 0x800f +/* 0C7C48 800C7048 AFB20008 */ sw $s2, 8($sp) +/* 0C7C4C 800C704C AFB10004 */ sw $s1, 4($sp) +/* 0C7C50 800C7050 AFB00000 */ sw $s0, ($sp) +/* 0C7C54 800C7054 256B948C */ addiu $t3, %lo(D_800E948C) # addiu $t3, $t3, -0x6b74 +/* 0C7C58 800C7058 00061040 */ sll $v0, $a2, 1 +/* 0C7C5C 800C705C 00074040 */ sll $t0, $a3, 1 +/* 0C7C60 800C7060 3C12800E */ lui $s2, %hi(D_800E3768) # $s2, 0x800e +/* 0C7C64 800C7064 3C11800E */ lui $s1, %hi(D_800E376C) # $s1, 0x800e +/* 0C7C68 800C7068 3C198013 */ lui $t9, %hi(D_8012AAD0) # $t9, 0x8013 +/* 0C7C6C 800C706C 3C108013 */ lui $s0, %hi(D_8012AAD4) # $s0, 0x8013 +/* 0C7C70 800C7070 01621821 */ addu $v1, $t3, $v0 +/* 0C7C74 800C7074 01684821 */ addu $t1, $t3, $t0 +/* 0C7C78 800C7078 8E523768 */ lw $s2, %lo(D_800E3768)($s2) +/* 0C7C7C 800C707C 8E31376C */ lw $s1, %lo(D_800E376C)($s1) +/* 0C7C80 800C7080 8F39AAD0 */ lw $t9, %lo(D_8012AAD0)($t9) +/* 0C7C84 800C7084 8E10AAD4 */ lw $s0, %lo(D_8012AAD4)($s0) +/* 0C7C88 800C7088 946D0000 */ lhu $t5, ($v1) +/* 0C7C8C 800C708C 952C0000 */ lhu $t4, ($t1) diff --git a/asm/non_matchings/unknown_0B8920/func_800C7090.s b/asm/non_matchings/unknown_0B8920/func_800C7090.s new file mode 100644 index 00000000..08bf86ea --- /dev/null +++ b/asm/non_matchings/unknown_0B8920/func_800C7090.s @@ -0,0 +1,198 @@ +glabel func_800C7090 +/* 0C7C90 800C7090 0206082B */ sltu $at, $s0, $a2 +.L800C7094: +/* 0C7C94 800C7094 50200009 */ beql $at, $zero, .L800C70BC +/* 0C7C98 800C7098 032D1024 */ and $v0, $t9, $t5 +.L800C709C: +/* 0C7C9C 800C709C 92420000 */ lbu $v0, ($s2) +/* 0C7CA0 800C70A0 26520001 */ addiu $s2, $s2, 1 +/* 0C7CA4 800C70A4 02021004 */ sllv $v0, $v0, $s0 +/* 0C7CA8 800C70A8 26100008 */ addiu $s0, $s0, 8 +/* 0C7CAC 800C70AC 0206082A */ slt $at, $s0, $a2 +/* 0C7CB0 800C70B0 1420FFFA */ bnez $at, .L800C709C +/* 0C7CB4 800C70B4 0322C825 */ or $t9, $t9, $v0 +/* 0C7CB8 800C70B8 032D1024 */ and $v0, $t9, $t5 +.L800C70BC: +/* 0C7CBC 800C70BC 000210C0 */ sll $v0, $v0, 3 +/* 0C7CC0 800C70C0 00827821 */ addu $t7, $a0, $v0 +/* 0C7CC4 800C70C4 91F80000 */ lbu $t8, ($t7) +/* 0C7CC8 800C70C8 2B010011 */ slti $at, $t8, 0x11 +/* 0C7CCC 800C70CC 5420001A */ bnezl $at, .L800C7138 +/* 0C7CD0 800C70D0 91E20001 */ lbu $v0, 1($t7) +/* 0C7CD4 800C70D4 81E30001 */ lb $v1, 1($t7) +.L800C70D8: +/* 0C7CD8 800C70D8 2318FFF0 */ addi $t8, $t8, -0x10 +/* 0C7CDC 800C70DC 02038022 */ sub $s0, $s0, $v1 +/* 0C7CE0 800C70E0 0218082B */ sltu $at, $s0, $t8 +/* 0C7CE4 800C70E4 10200008 */ beqz $at, .L800C7108 +/* 0C7CE8 800C70E8 0079C806 */ srlv $t9, $t9, $v1 +.L800C70EC: +/* 0C7CEC 800C70EC 92420000 */ lbu $v0, ($s2) +/* 0C7CF0 800C70F0 26520001 */ addiu $s2, $s2, 1 +/* 0C7CF4 800C70F4 02021004 */ sllv $v0, $v0, $s0 +/* 0C7CF8 800C70F8 26100008 */ addiu $s0, $s0, 8 +/* 0C7CFC 800C70FC 0218082A */ slt $at, $s0, $t8 +/* 0C7D00 800C7100 1420FFFA */ bnez $at, .L800C70EC +/* 0C7D04 800C7104 0322C825 */ or $t9, $t9, $v0 +.L800C7108: +/* 0C7D08 800C7108 00181040 */ sll $v0, $t8, 1 +/* 0C7D0C 800C710C 004B1021 */ addu $v0, $v0, $t3 +/* 0C7D10 800C7110 94490000 */ lhu $t1, ($v0) +/* 0C7D14 800C7114 8DE80004 */ lw $t0, 4($t7) +/* 0C7D18 800C7118 01394824 */ and $t1, $t1, $t9 +/* 0C7D1C 800C711C 000948C0 */ sll $t1, $t1, 3 +/* 0C7D20 800C7120 01097820 */ add $t7, $t0, $t1 +/* 0C7D24 800C7124 91F80000 */ lbu $t8, ($t7) +/* 0C7D28 800C7128 2F010011 */ sltiu $at, $t8, 0x11 +/* 0C7D2C 800C712C 5020FFEA */ beql $at, $zero, .L800C70D8 +/* 0C7D30 800C7130 81E30001 */ lb $v1, 1($t7) +/* 0C7D34 800C7134 91E20001 */ lbu $v0, 1($t7) +.L800C7138: +/* 0C7D38 800C7138 24010010 */ li $at, 16 +/* 0C7D3C 800C713C 0059C806 */ srlv $t9, $t9, $v0 +/* 0C7D40 800C7140 17010005 */ bne $t8, $at, .L800C7158 +/* 0C7D44 800C7144 02028022 */ sub $s0, $s0, $v0 +/* 0C7D48 800C7148 95E20004 */ lhu $v0, 4($t7) +/* 0C7D4C 800C714C 26310001 */ addiu $s1, $s1, 1 +/* 0C7D50 800C7150 08031C24 */ j func_800C7090 +/* 0C7D54 800C7154 A222FFFF */ sb $v0, -1($s1) + +.L800C7158: +/* 0C7D58 800C7158 2401000F */ li $at, 15 +/* 0C7D5C 800C715C 13010068 */ beq $t8, $at, .L800C7300 +/* 0C7D60 800C7160 0218082B */ sltu $at, $s0, $t8 +/* 0C7D64 800C7164 50200009 */ beql $at, $zero, .L800C718C +/* 0C7D68 800C7168 00181040 */ sll $v0, $t8, 1 +.L800C716C: +/* 0C7D6C 800C716C 92420000 */ lbu $v0, ($s2) +/* 0C7D70 800C7170 26520001 */ addiu $s2, $s2, 1 +/* 0C7D74 800C7174 02021004 */ sllv $v0, $v0, $s0 +/* 0C7D78 800C7178 26100008 */ addiu $s0, $s0, 8 +/* 0C7D7C 800C717C 0218082A */ slt $at, $s0, $t8 +/* 0C7D80 800C7180 1420FFFA */ bnez $at, .L800C716C +/* 0C7D84 800C7184 0322C825 */ or $t9, $t9, $v0 +/* 0C7D88 800C7188 00181040 */ sll $v0, $t8, 1 +.L800C718C: +/* 0C7D8C 800C718C 004B1021 */ addu $v0, $v0, $t3 +/* 0C7D90 800C7190 94490000 */ lhu $t1, ($v0) +/* 0C7D94 800C7194 95E80004 */ lhu $t0, 4($t7) +/* 0C7D98 800C7198 02188022 */ sub $s0, $s0, $t8 +/* 0C7D9C 800C719C 0207082B */ sltu $at, $s0, $a3 +/* 0C7DA0 800C71A0 01394824 */ and $t1, $t1, $t9 +/* 0C7DA4 800C71A4 0319C806 */ srlv $t9, $t9, $t8 +/* 0C7DA8 800C71A8 10200008 */ beqz $at, .L800C71CC +/* 0C7DAC 800C71AC 01097021 */ addu $t6, $t0, $t1 +.L800C71B0: +/* 0C7DB0 800C71B0 92420000 */ lbu $v0, ($s2) +/* 0C7DB4 800C71B4 26520001 */ addiu $s2, $s2, 1 +/* 0C7DB8 800C71B8 02021004 */ sllv $v0, $v0, $s0 +/* 0C7DBC 800C71BC 26100008 */ addiu $s0, $s0, 8 +/* 0C7DC0 800C71C0 0207082A */ slt $at, $s0, $a3 +/* 0C7DC4 800C71C4 1420FFFA */ bnez $at, .L800C71B0 +/* 0C7DC8 800C71C8 0322C825 */ or $t9, $t9, $v0 +.L800C71CC: +/* 0C7DCC 800C71CC 01991024 */ and $v0, $t4, $t9 +/* 0C7DD0 800C71D0 000210C0 */ sll $v0, $v0, 3 +/* 0C7DD4 800C71D4 00A27821 */ addu $t7, $a1, $v0 +/* 0C7DD8 800C71D8 91F80000 */ lbu $t8, ($t7) +/* 0C7DDC 800C71DC 2B010011 */ slti $at, $t8, 0x11 +/* 0C7DE0 800C71E0 5420001A */ bnezl $at, .L800C724C +/* 0C7DE4 800C71E4 91E20001 */ lbu $v0, 1($t7) +/* 0C7DE8 800C71E8 91E80001 */ lbu $t0, 1($t7) +.L800C71EC: +/* 0C7DEC 800C71EC 2318FFF0 */ addi $t8, $t8, -0x10 +/* 0C7DF0 800C71F0 02088022 */ sub $s0, $s0, $t0 +/* 0C7DF4 800C71F4 0218082B */ sltu $at, $s0, $t8 +/* 0C7DF8 800C71F8 10200008 */ beqz $at, .L800C721C +/* 0C7DFC 800C71FC 0119C806 */ srlv $t9, $t9, $t0 +.L800C7200: +/* 0C7E00 800C7200 92420000 */ lbu $v0, ($s2) +/* 0C7E04 800C7204 26520001 */ addiu $s2, $s2, 1 +/* 0C7E08 800C7208 02021004 */ sllv $v0, $v0, $s0 +/* 0C7E0C 800C720C 26100008 */ addiu $s0, $s0, 8 +/* 0C7E10 800C7210 0218082A */ slt $at, $s0, $t8 +/* 0C7E14 800C7214 1420FFFA */ bnez $at, .L800C7200 +/* 0C7E18 800C7218 0322C825 */ or $t9, $t9, $v0 +.L800C721C: +/* 0C7E1C 800C721C 00181040 */ sll $v0, $t8, 1 +/* 0C7E20 800C7220 004B1021 */ addu $v0, $v0, $t3 +/* 0C7E24 800C7224 94490000 */ lhu $t1, ($v0) +/* 0C7E28 800C7228 8DE80004 */ lw $t0, 4($t7) +/* 0C7E2C 800C722C 01394824 */ and $t1, $t1, $t9 +/* 0C7E30 800C7230 000948C0 */ sll $t1, $t1, 3 +/* 0C7E34 800C7234 01097821 */ addu $t7, $t0, $t1 +/* 0C7E38 800C7238 91F80000 */ lbu $t8, ($t7) +/* 0C7E3C 800C723C 2F010011 */ sltiu $at, $t8, 0x11 +/* 0C7E40 800C7240 5020FFEA */ beql $at, $zero, .L800C71EC +/* 0C7E44 800C7244 91E80001 */ lbu $t0, 1($t7) +/* 0C7E48 800C7248 91E20001 */ lbu $v0, 1($t7) +.L800C724C: +/* 0C7E4C 800C724C 02028022 */ sub $s0, $s0, $v0 +/* 0C7E50 800C7250 0218082B */ sltu $at, $s0, $t8 +/* 0C7E54 800C7254 10200008 */ beqz $at, .L800C7278 +/* 0C7E58 800C7258 0059C806 */ srlv $t9, $t9, $v0 +.L800C725C: +/* 0C7E5C 800C725C 92420000 */ lbu $v0, ($s2) +/* 0C7E60 800C7260 26520001 */ addiu $s2, $s2, 1 +/* 0C7E64 800C7264 02021004 */ sllv $v0, $v0, $s0 +/* 0C7E68 800C7268 26100008 */ addiu $s0, $s0, 8 +/* 0C7E6C 800C726C 0218082A */ slt $at, $s0, $t8 +/* 0C7E70 800C7270 1420FFFA */ bnez $at, .L800C725C +/* 0C7E74 800C7274 0322C825 */ or $t9, $t9, $v0 +.L800C7278: +/* 0C7E78 800C7278 00181040 */ sll $v0, $t8, 1 +/* 0C7E7C 800C727C 004B1021 */ addu $v0, $v0, $t3 +/* 0C7E80 800C7280 94490000 */ lhu $t1, ($v0) +/* 0C7E84 800C7284 95E30004 */ lhu $v1, 4($t7) +/* 0C7E88 800C7288 31C20003 */ andi $v0, $t6, 3 +/* 0C7E8C 800C728C 01394824 */ and $t1, $t1, $t9 +/* 0C7E90 800C7290 02234022 */ sub $t0, $s1, $v1 +/* 0C7E94 800C7294 01094022 */ sub $t0, $t0, $t1 +/* 0C7E98 800C7298 0319C806 */ srlv $t9, $t9, $t8 +/* 0C7E9C 800C729C 1040000A */ beqz $v0, .L800C72C8 +/* 0C7EA0 800C72A0 02188022 */ sub $s0, $s0, $t8 +/* 0C7EA4 800C72A4 01C27022 */ sub $t6, $t6, $v0 +.L800C72A8: +/* 0C7EA8 800C72A8 910A0000 */ lbu $t2, ($t0) +/* 0C7EAC 800C72AC 2042FFFF */ addi $v0, $v0, -1 +/* 0C7EB0 800C72B0 21080001 */ addi $t0, $t0, 1 +/* 0C7EB4 800C72B4 22310001 */ addi $s1, $s1, 1 +/* 0C7EB8 800C72B8 1440FFFB */ bnez $v0, .L800C72A8 +/* 0C7EBC 800C72BC A22AFFFF */ sb $t2, -1($s1) +/* 0C7EC0 800C72C0 51C0FF74 */ beql $t6, $zero, .L800C7094 +/* 0C7EC4 800C72C4 0206082B */ sltu $at, $s0, $a2 +.L800C72C8: +/* 0C7EC8 800C72C8 91020000 */ lbu $v0, ($t0) +/* 0C7ECC 800C72CC 25CEFFFC */ addiu $t6, $t6, -4 +/* 0C7ED0 800C72D0 25080004 */ addiu $t0, $t0, 4 +/* 0C7ED4 800C72D4 A2220000 */ sb $v0, ($s1) +/* 0C7ED8 800C72D8 9103FFFD */ lbu $v1, -3($t0) +/* 0C7EDC 800C72DC 26310004 */ addiu $s1, $s1, 4 +/* 0C7EE0 800C72E0 A223FFFD */ sb $v1, -3($s1) +/* 0C7EE4 800C72E4 9109FFFE */ lbu $t1, -2($t0) +/* 0C7EE8 800C72E8 A229FFFE */ sb $t1, -2($s1) +/* 0C7EEC 800C72EC 910AFFFF */ lbu $t2, -1($t0) +/* 0C7EF0 800C72F0 15C0FFF5 */ bnez $t6, .L800C72C8 +/* 0C7EF4 800C72F4 A22AFFFF */ sb $t2, -1($s1) +/* 0C7EF8 800C72F8 08031C24 */ j func_800C7090 +/* 0C7EFC 800C72FC 00000000 */ nop + +.L800C7300: +/* 0C7F00 800C7300 3C01800E */ lui $at, %hi(D_800E3768) # $at, 0x800e +/* 0C7F04 800C7304 AC323768 */ sw $s2, %lo(D_800E3768)($at) +/* 0C7F08 800C7308 3C01800E */ lui $at, %hi(D_800E376C) # $at, 0x800e +/* 0C7F0C 800C730C AC31376C */ sw $s1, %lo(D_800E376C)($at) +/* 0C7F10 800C7310 3C018013 */ lui $at, %hi(D_8012AAD0) # $at, 0x8013 +/* 0C7F14 800C7314 AC39AAD0 */ sw $t9, %lo(D_8012AAD0)($at) +/* 0C7F18 800C7318 3C018013 */ lui $at, %hi(D_8012AAD4) # $at, 0x8013 +/* 0C7F1C 800C731C AC30AAD4 */ sw $s0, %lo(D_8012AAD4)($at) +/* 0C7F20 800C7320 8FB20008 */ lw $s2, 8($sp) +/* 0C7F24 800C7324 8FB10004 */ lw $s1, 4($sp) +/* 0C7F28 800C7328 8FB00000 */ lw $s0, ($sp) +/* 0C7F2C 800C732C 03E00008 */ jr $ra +/* 0C7F30 800C7330 27BD0010 */ addiu $sp, $sp, 0x10 + +/* 0C7F34 800C7334 00000000 */ nop +/* 0C7F38 800C7338 00000000 */ nop +/* 0C7F3C 800C733C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C7F40/D_800C7340.s b/asm/non_matchings/unknown_0C7F40/D_800C7340.s new file mode 100644 index 00000000..a87dbca7 --- /dev/null +++ b/asm/non_matchings/unknown_0C7F40/D_800C7340.s @@ -0,0 +1,7 @@ +glabel D_800C7340 +/* 0C7F40 800C7340 03E00008 */ jr $ra +/* 0C7F44 800C7344 00001025 */ move $v0, $zero + +/* 0C7F48 800C7348 00000000 */ nop +/* 0C7F4C 800C734C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C7F50/D_800C74A0.s b/asm/non_matchings/unknown_0C7F50/D_800C74A0.s new file mode 100644 index 00000000..6b5b86fd --- /dev/null +++ b/asm/non_matchings/unknown_0C7F50/D_800C74A0.s @@ -0,0 +1,53 @@ +glabel D_800C74A0 +/* 0C80A0 800C74A0 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0C80A4 800C74A4 AFB50028 */ sw $s5, 0x28($sp) +/* 0C80A8 800C74A8 AFB40024 */ sw $s4, 0x24($sp) +/* 0C80AC 800C74AC AFB30020 */ sw $s3, 0x20($sp) +/* 0C80B0 800C74B0 AFB00014 */ sw $s0, 0x14($sp) +/* 0C80B4 800C74B4 AFB2001C */ sw $s2, 0x1c($sp) +/* 0C80B8 800C74B8 AFB10018 */ sw $s1, 0x18($sp) +/* 0C80BC 800C74BC 3C108013 */ lui $s0, %hi(D_8012ACA0) # $s0, 0x8013 +/* 0C80C0 800C74C0 3C13800E */ lui $s3, %hi(D_800E3774) # $s3, 0x800e +/* 0C80C4 800C74C4 3C14800E */ lui $s4, %hi(D_800E3778) # $s4, 0x800e +/* 0C80C8 800C74C8 3C15800E */ lui $s5, %hi(D_800E3770) # $s5, 0x800e +/* 0C80CC 800C74CC AFBF002C */ sw $ra, 0x2c($sp) +/* 0C80D0 800C74D0 AFA40038 */ sw $a0, 0x38($sp) +/* 0C80D4 800C74D4 AFA00034 */ sw $zero, 0x34($sp) +/* 0C80D8 800C74D8 26B53770 */ addiu $s5, %lo(D_800E3770) # addiu $s5, $s5, 0x3770 +/* 0C80DC 800C74DC 26943778 */ addiu $s4, %lo(D_800E3778) # addiu $s4, $s4, 0x3778 +/* 0C80E0 800C74E0 26733774 */ addiu $s3, %lo(D_800E3774) # addiu $s3, $s3, 0x3774 +/* 0C80E4 800C74E4 2610ACA0 */ addiu $s0, %lo(D_8012ACA0) # addiu $s0, $s0, -0x5360 +/* 0C80E8 800C74E8 27B10034 */ addiu $s1, $sp, 0x34 +/* 0C80EC 800C74EC 2412000A */ li $s2, 10 +.L800C74F0: +/* 0C80F0 800C74F0 02002025 */ move $a0, $s0 +.L800C74F4: +/* 0C80F4 800C74F4 02202825 */ move $a1, $s1 +/* 0C80F8 800C74F8 0C0322EC */ jal osRecvMesg +/* 0C80FC 800C74FC 24060001 */ li $a2, 1 +/* 0C8100 800C7500 8FAE0034 */ lw $t6, 0x34($sp) +/* 0C8104 800C7504 00000000 */ nop +/* 0C8108 800C7508 15D2FFFA */ bne $t6, $s2, .L800C74F4 +/* 0C810C 800C750C 02002025 */ move $a0, $s0 +/* 0C8110 800C7510 8E640000 */ lw $a0, ($s3) +/* 0C8114 800C7514 8E860000 */ lw $a2, ($s4) +/* 0C8118 800C7518 0C01B8BA */ jal func_8006E2E8 +/* 0C811C 800C751C 2405FFFF */ li $a1, -1 +/* 0C8120 800C7520 1000FFF3 */ b .L800C74F0 +/* 0C8124 800C7524 AEA00000 */ sw $zero, ($s5) +/* 0C8128 800C7528 00000000 */ nop +/* 0C812C 800C752C 00000000 */ nop +/* 0C8130 800C7530 8FBF002C */ lw $ra, 0x2c($sp) +/* 0C8134 800C7534 8FB00014 */ lw $s0, 0x14($sp) +/* 0C8138 800C7538 8FB10018 */ lw $s1, 0x18($sp) +/* 0C813C 800C753C 8FB2001C */ lw $s2, 0x1c($sp) +/* 0C8140 800C7540 8FB30020 */ lw $s3, 0x20($sp) +/* 0C8144 800C7544 8FB40024 */ lw $s4, 0x24($sp) +/* 0C8148 800C7548 8FB50028 */ lw $s5, 0x28($sp) +/* 0C814C 800C754C 03E00008 */ jr $ra +/* 0C8150 800C7550 27BD0038 */ addiu $sp, $sp, 0x38 + +/* 0C8154 800C7554 00000000 */ nop +/* 0C8158 800C7558 00000000 */ nop +/* 0C815C 800C755C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C7F50/func_800C7350.s b/asm/non_matchings/unknown_0C7F50/func_800C7350.s new file mode 100644 index 00000000..0827d90b --- /dev/null +++ b/asm/non_matchings/unknown_0C7F50/func_800C7350.s @@ -0,0 +1,29 @@ +glabel func_800C7350 +/* 0C7F50 800C7350 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0C7F54 800C7354 AFBF001C */ sw $ra, 0x1c($sp) +/* 0C7F58 800C7358 3C048013 */ lui $a0, %hi(D_8012ACA0) # $a0, 0x8013 +/* 0C7F5C 800C735C 3C058013 */ lui $a1, %hi(D_8012ACB8) # $a1, 0x8013 +/* 0C7F60 800C7360 24A5ACB8 */ addiu $a1, %lo(D_8012ACB8) # addiu $a1, $a1, -0x5348 +/* 0C7F64 800C7364 2484ACA0 */ addiu $a0, %lo(D_8012ACA0) # addiu $a0, $a0, -0x5360 +/* 0C7F68 800C7368 0C032208 */ jal osCreateMesgQueue +/* 0C7F6C 800C736C 24060002 */ li $a2, 2 +/* 0C7F70 800C7370 3C0E8013 */ lui $t6, %hi(D_8012CCC0) # $t6, 0x8013 +/* 0C7F74 800C7374 25CECCC0 */ addiu $t6, %lo(D_8012CCC0) # addiu $t6, $t6, -0x3340 +/* 0C7F78 800C7378 3C048013 */ lui $a0, %hi(D_8012AAF0) # $a0, 0x8013 +/* 0C7F7C 800C737C 3C06800C */ lui $a2, %hi(D_800C74A0) # $a2, 0x800c +/* 0C7F80 800C7380 240F0008 */ li $t7, 8 +/* 0C7F84 800C7384 AFAF0014 */ sw $t7, 0x14($sp) +/* 0C7F88 800C7388 24C674A0 */ addiu $a2, %lo(D_800C74A0) # addiu $a2, $a2, 0x74a0 +/* 0C7F8C 800C738C 2484AAF0 */ addiu $a0, %lo(D_8012AAF0) # addiu $a0, $a0, -0x5510 +/* 0C7F90 800C7390 AFAE0010 */ sw $t6, 0x10($sp) +/* 0C7F94 800C7394 2405001E */ li $a1, 30 +/* 0C7F98 800C7398 0C032214 */ jal osCreateThread +/* 0C7F9C 800C739C 00003825 */ move $a3, $zero +/* 0C7FA0 800C73A0 3C048013 */ lui $a0, %hi(D_8012AAF0) # $a0, 0x8013 +/* 0C7FA4 800C73A4 0C032268 */ jal osStartThread +/* 0C7FA8 800C73A8 2484AAF0 */ addiu $a0, %lo(D_8012AAF0) # addiu $a0, $a0, -0x5510 +/* 0C7FAC 800C73AC 8FBF001C */ lw $ra, 0x1c($sp) +/* 0C7FB0 800C73B0 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0C7FB4 800C73B4 03E00008 */ jr $ra +/* 0C7FB8 800C73B8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C7F50/func_800C73BC.s b/asm/non_matchings/unknown_0C7F50/func_800C73BC.s new file mode 100644 index 00000000..e44d2ae3 --- /dev/null +++ b/asm/non_matchings/unknown_0C7F50/func_800C73BC.s @@ -0,0 +1,11 @@ +glabel func_800C73BC +/* 0C7FBC 800C73BC 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C7FC0 800C73C0 AFBF0014 */ sw $ra, 0x14($sp) +/* 0C7FC4 800C73C4 3C048013 */ lui $a0, %hi(D_8012AAF0) # $a0, 0x8013 +/* 0C7FC8 800C73C8 0C0322BC */ jal func_800C8AF0 +/* 0C7FCC 800C73CC 2484AAF0 */ addiu $a0, %lo(D_8012AAF0) # addiu $a0, $a0, -0x5510 +/* 0C7FD0 800C73D0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C7FD4 800C73D4 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0C7FD8 800C73D8 03E00008 */ jr $ra +/* 0C7FDC 800C73DC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C7F50/func_800C73E0.s b/asm/non_matchings/unknown_0C7F50/func_800C73E0.s new file mode 100644 index 00000000..a6f0af3a --- /dev/null +++ b/asm/non_matchings/unknown_0C7F50/func_800C73E0.s @@ -0,0 +1,6 @@ +glabel func_800C73E0 +/* 0C7FE0 800C73E0 3C02800E */ lui $v0, %hi(D_800E3770) # $v0, 0x800e +/* 0C7FE4 800C73E4 8C423770 */ lw $v0, %lo(D_800E3770)($v0) +/* 0C7FE8 800C73E8 03E00008 */ jr $ra +/* 0C7FEC 800C73EC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C7F50/func_800C73F0.s b/asm/non_matchings/unknown_0C7F50/func_800C73F0.s new file mode 100644 index 00000000..2ad7f9ed --- /dev/null +++ b/asm/non_matchings/unknown_0C7F50/func_800C73F0.s @@ -0,0 +1,30 @@ +glabel func_800C73F0 +/* 0C7FF0 800C73F0 3C0E800E */ lui $t6, %hi(D_800E3770) # $t6, 0x800e +/* 0C7FF4 800C73F4 8DCE3770 */ lw $t6, %lo(D_800E3770)($t6) +/* 0C7FF8 800C73F8 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C7FFC 800C73FC 11C0000E */ beqz $t6, .L800C7438 +/* 0C8000 800C7400 AFBF0014 */ sw $ra, 0x14($sp) +/* 0C8004 800C7404 3C03800E */ lui $v1, %hi(D_800E377C) # $v1, 0x800e +/* 0C8008 800C7408 2463377C */ addiu $v1, %lo(D_800E377C) # addiu $v1, $v1, 0x377c +/* 0C800C 800C740C 8C620000 */ lw $v0, ($v1) +/* 0C8010 800C7410 00000000 */ nop +/* 0C8014 800C7414 18400008 */ blez $v0, .L800C7438 +/* 0C8018 800C7418 244FFFFF */ addiu $t7, $v0, -1 +/* 0C801C 800C741C 15E00006 */ bnez $t7, .L800C7438 +/* 0C8020 800C7420 AC6F0000 */ sw $t7, ($v1) +/* 0C8024 800C7424 3C048013 */ lui $a0, %hi(D_8012ACA0) # $a0, 0x8013 +/* 0C8028 800C7428 2484ACA0 */ addiu $a0, %lo(D_8012ACA0) # addiu $a0, $a0, -0x5360 +/* 0C802C 800C742C 2405000A */ li $a1, 10 +/* 0C8030 800C7430 0C03238C */ jal func_800C8E30 +/* 0C8034 800C7434 00003025 */ move $a2, $zero +.L800C7438: +/* 0C8038 800C7438 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C803C 800C743C 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0C8040 800C7440 03E00008 */ jr $ra +/* 0C8044 800C7444 00000000 */ nop + +/* 0C8048 800C7448 3C02800E */ lui $v0, %hi(D_800E377C) # $v0, 0x800e +/* 0C804C 800C744C 8C42377C */ lw $v0, %lo(D_800E377C)($v0) +/* 0C8050 800C7450 03E00008 */ jr $ra +/* 0C8054 800C7454 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C7F50/func_800C7458.s b/asm/non_matchings/unknown_0C7F50/func_800C7458.s new file mode 100644 index 00000000..4119d5e2 --- /dev/null +++ b/asm/non_matchings/unknown_0C7F50/func_800C7458.s @@ -0,0 +1,22 @@ +glabel func_800C7458 +/* 0C8058 800C7458 3C03800E */ lui $v1, %hi(D_800E3770) # $v1, 0x800e +/* 0C805C 800C745C 24633770 */ addiu $v1, %lo(D_800E3770) # addiu $v1, $v1, 0x3770 +/* 0C8060 800C7460 8C6E0000 */ lw $t6, ($v1) +/* 0C8064 800C7464 240F0004 */ li $t7, 4 +/* 0C8068 800C7468 15C0000A */ bnez $t6, .L800C7494 +/* 0C806C 800C746C 3C01800E */ lui $at, %hi(D_800E377C) # $at, 0x800e +/* 0C8070 800C7470 AC2F377C */ sw $t7, %lo(D_800E377C)($at) +/* 0C8074 800C7474 3C01800E */ lui $at, %hi(D_800E3774) # $at, 0x800e +/* 0C8078 800C7478 AC243774 */ sw $a0, %lo(D_800E3774)($at) +/* 0C807C 800C747C 3C01800E */ lui $at, %hi(D_800E3778) # $at, 0x800e +/* 0C8080 800C7480 AC253778 */ sw $a1, %lo(D_800E3778)($at) +/* 0C8084 800C7484 24180001 */ li $t8, 1 +/* 0C8088 800C7488 AC780000 */ sw $t8, ($v1) +/* 0C808C 800C748C 03E00008 */ jr $ra +/* 0C8090 800C7490 24020001 */ li $v0, 1 + +.L800C7494: +/* 0C8094 800C7494 00001025 */ move $v0, $zero +/* 0C8098 800C7498 03E00008 */ jr $ra +/* 0C809C 800C749C 00000000 */ nop + diff --git a/asm/unknown_0C8160.s b/asm/non_matchings/unknown_0C8160/func_800C7560.s old mode 100755 new mode 100644 similarity index 80% rename from asm/unknown_0C8160.s rename to asm/non_matchings/unknown_0C8160/func_800C7560.s index a21c869f..0ec5b151 --- a/asm/unknown_0C8160.s +++ b/asm/non_matchings/unknown_0C8160/func_800C7560.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C7560 /* 0C8160 800C7560 24030010 */ li $v1, 16 /* 0C8164 800C7564 30AE000F */ andi $t6, $a1, 0xf @@ -26,3 +18,4 @@ glabel func_800C7560 /* 0C8194 800C7594 00000000 */ nop /* 0C8198 800C7598 00000000 */ nop /* 0C819C 800C759C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C81A0/func_800C75B0.s b/asm/non_matchings/unknown_0C81A0/func_800C75B0.s new file mode 100644 index 00000000..f7fd1ee6 --- /dev/null +++ b/asm/non_matchings/unknown_0C81A0/func_800C75B0.s @@ -0,0 +1,69 @@ +glabel func_800C75B0 +/* 0C81B0 800C75B0 908E0003 */ lbu $t6, 3($a0) +/* 0C81B4 800C75B4 15C00037 */ bnez $t6, .L800C7694 +/* 0C81B8 800C75B8 00000000 */ nop +/* 0C81BC 800C75BC 848F000E */ lh $t7, 0xe($a0) +/* 0C81C0 800C75C0 24090001 */ li $t1, 1 +/* 0C81C4 800C75C4 A0890003 */ sb $t1, 3($a0) +/* 0C81C8 800C75C8 19E00032 */ blez $t7, .L800C7694 +/* 0C81CC 800C75CC 00001025 */ move $v0, $zero +/* 0C81D0 800C75D0 00801825 */ move $v1, $a0 +/* 0C81D4 800C75D4 240A0001 */ li $t2, 1 +/* 0C81D8 800C75D8 8C780010 */ lw $t8, 0x10($v1) +.L800C75DC: +/* 0C81DC 800C75DC 0305C821 */ addu $t9, $t8, $a1 +/* 0C81E0 800C75E0 AC790010 */ sw $t9, 0x10($v1) +/* 0C81E4 800C75E4 932E000E */ lbu $t6, 0xe($t9) +/* 0C81E8 800C75E8 03203025 */ move $a2, $t9 +/* 0C81EC 800C75EC 55C00024 */ bnezl $t6, .L800C7680 +/* 0C81F0 800C75F0 8498000E */ lh $t8, 0xe($a0) +/* 0C81F4 800C75F4 8F2F0000 */ lw $t7, ($t9) +/* 0C81F8 800C75F8 A329000E */ sb $t1, 0xe($t9) +/* 0C81FC 800C75FC 01E5C021 */ addu $t8, $t7, $a1 +/* 0C8200 800C7600 AF380000 */ sw $t8, ($t9) +/* 0C8204 800C7604 8F390004 */ lw $t9, 4($t9) +/* 0C8208 800C7608 8CCF0008 */ lw $t7, 8($a2) +/* 0C820C 800C760C 03257021 */ addu $t6, $t9, $a1 +/* 0C8210 800C7610 01E5C021 */ addu $t8, $t7, $a1 +/* 0C8214 800C7614 ACCE0004 */ sw $t6, 4($a2) +/* 0C8218 800C7618 ACD80008 */ sw $t8, 8($a2) +/* 0C821C 800C761C 93190009 */ lbu $t9, 9($t8) +/* 0C8220 800C7620 03004025 */ move $t0, $t8 +/* 0C8224 800C7624 57200016 */ bnezl $t9, .L800C7680 +/* 0C8228 800C7628 8498000E */ lh $t8, 0xe($a0) +/* 0C822C 800C762C 8F0E0000 */ lw $t6, ($t8) +/* 0C8230 800C7630 93060008 */ lbu $a2, 8($t8) +/* 0C8234 800C7634 A3090009 */ sb $t1, 9($t8) +/* 0C8238 800C7638 01C77821 */ addu $t7, $t6, $a3 +/* 0C823C 800C763C 14C00009 */ bnez $a2, .L800C7664 +/* 0C8240 800C7640 AF0F0000 */ sw $t7, ($t8) +/* 0C8244 800C7644 8F180010 */ lw $t8, 0x10($t8) +/* 0C8248 800C7648 8D06000C */ lw $a2, 0xc($t0) +/* 0C824C 800C764C 0305C821 */ addu $t9, $t8, $a1 +/* 0C8250 800C7650 10C0000A */ beqz $a2, .L800C767C +/* 0C8254 800C7654 AD190010 */ sw $t9, 0x10($t0) +/* 0C8258 800C7658 00C57021 */ addu $t6, $a2, $a1 +/* 0C825C 800C765C 10000007 */ b .L800C767C +/* 0C8260 800C7660 AD0E000C */ sw $t6, 0xc($t0) +.L800C7664: +/* 0C8264 800C7664 55460006 */ bnel $t2, $a2, .L800C7680 +/* 0C8268 800C7668 8498000E */ lh $t8, 0xe($a0) +/* 0C826C 800C766C 8D06000C */ lw $a2, 0xc($t0) +/* 0C8270 800C7670 10C00002 */ beqz $a2, .L800C767C +/* 0C8274 800C7674 00C57821 */ addu $t7, $a2, $a1 +/* 0C8278 800C7678 AD0F000C */ sw $t7, 0xc($t0) +.L800C767C: +/* 0C827C 800C767C 8498000E */ lh $t8, 0xe($a0) +.L800C7680: +/* 0C8280 800C7680 24420001 */ addiu $v0, $v0, 1 +/* 0C8284 800C7684 24630004 */ addiu $v1, $v1, 4 +/* 0C8288 800C7688 0058082A */ slt $at, $v0, $t8 +/* 0C828C 800C768C 5420FFD3 */ bnezl $at, .L800C75DC +/* 0C8290 800C7690 8C780010 */ lw $t8, 0x10($v1) +.L800C7694: +/* 0C8294 800C7694 03E00008 */ jr $ra +/* 0C8298 800C7698 00000000 */ nop + +/* 0C829C 800C769C 03E00008 */ jr $ra +/* 0C82A0 800C76A0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C81A0/func_800C76A4.s b/asm/non_matchings/unknown_0C81A0/func_800C76A4.s new file mode 100644 index 00000000..10490029 --- /dev/null +++ b/asm/non_matchings/unknown_0C81A0/func_800C76A4.s @@ -0,0 +1,74 @@ +glabel func_800C76A4 +/* 0C82A4 800C76A4 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0C82A8 800C76A8 AFBF002C */ sw $ra, 0x2c($sp) +/* 0C82AC 800C76AC AFB40028 */ sw $s4, 0x28($sp) +/* 0C82B0 800C76B0 AFB30024 */ sw $s3, 0x24($sp) +/* 0C82B4 800C76B4 AFB20020 */ sw $s2, 0x20($sp) +/* 0C82B8 800C76B8 AFB1001C */ sw $s1, 0x1c($sp) +/* 0C82BC 800C76BC AFB00018 */ sw $s0, 0x18($sp) +/* 0C82C0 800C76C0 848E0000 */ lh $t6, ($a0) +/* 0C82C4 800C76C4 24014231 */ li $at, 16945 +/* 0C82C8 800C76C8 00808025 */ move $s0, $a0 +/* 0C82CC 800C76CC 15C1002E */ bne $t6, $at, .L800C7788 +/* 0C82D0 800C76D0 00A08825 */ move $s1, $a1 +/* 0C82D4 800C76D4 848F0002 */ lh $t7, 2($a0) +/* 0C82D8 800C76D8 00009825 */ move $s3, $zero +/* 0C82DC 800C76DC 00809025 */ move $s2, $a0 +/* 0C82E0 800C76E0 19E00029 */ blez $t7, .L800C7788 +/* 0C82E4 800C76E4 24140001 */ li $s4, 1 +/* 0C82E8 800C76E8 8E580004 */ lw $t8, 4($s2) +.L800C76EC: +/* 0C82EC 800C76EC 0310C821 */ addu $t9, $t8, $s0 +/* 0C82F0 800C76F0 1320001F */ beqz $t9, .L800C7770 +/* 0C82F4 800C76F4 AE590004 */ sw $t9, 4($s2) +/* 0C82F8 800C76F8 932E0002 */ lbu $t6, 2($t9) +/* 0C82FC 800C76FC 03206825 */ move $t5, $t9 +/* 0C8300 800C7700 55C0001C */ bnezl $t6, .L800C7774 +/* 0C8304 800C7704 86180002 */ lh $t8, 2($s0) +/* 0C8308 800C7708 8F220008 */ lw $v0, 8($t9) +/* 0C830C 800C770C A3340002 */ sb $s4, 2($t9) +/* 0C8310 800C7710 00006025 */ move $t4, $zero +/* 0C8314 800C7714 10400005 */ beqz $v0, .L800C772C +/* 0C8318 800C7718 00502021 */ addu $a0, $v0, $s0 +/* 0C831C 800C771C AF240008 */ sw $a0, 8($t9) +/* 0C8320 800C7720 02002825 */ move $a1, $s0 +/* 0C8324 800C7724 0C031D6C */ jal func_800C75B0 +/* 0C8328 800C7728 02203825 */ move $a3, $s1 +.L800C772C: +/* 0C832C 800C772C 85B80000 */ lh $t8, ($t5) +/* 0C8330 800C7730 01A05825 */ move $t3, $t5 +/* 0C8334 800C7734 5B00000F */ blezl $t8, .L800C7774 +/* 0C8338 800C7738 86180002 */ lh $t8, 2($s0) +/* 0C833C 800C773C 8D79000C */ lw $t9, 0xc($t3) +.L800C7740: +/* 0C8340 800C7740 02002825 */ move $a1, $s0 +/* 0C8344 800C7744 03302021 */ addu $a0, $t9, $s0 +/* 0C8348 800C7748 10800003 */ beqz $a0, .L800C7758 +/* 0C834C 800C774C AD64000C */ sw $a0, 0xc($t3) +/* 0C8350 800C7750 0C031D6C */ jal func_800C75B0 +/* 0C8354 800C7754 02203825 */ move $a3, $s1 +.L800C7758: +/* 0C8358 800C7758 85AF0000 */ lh $t7, ($t5) +/* 0C835C 800C775C 258C0001 */ addiu $t4, $t4, 1 +/* 0C8360 800C7760 256B0004 */ addiu $t3, $t3, 4 +/* 0C8364 800C7764 018F082A */ slt $at, $t4, $t7 +/* 0C8368 800C7768 5420FFF5 */ bnezl $at, .L800C7740 +/* 0C836C 800C776C 8D79000C */ lw $t9, 0xc($t3) +.L800C7770: +/* 0C8370 800C7770 86180002 */ lh $t8, 2($s0) +.L800C7774: +/* 0C8374 800C7774 26730001 */ addiu $s3, $s3, 1 +/* 0C8378 800C7778 26520004 */ addiu $s2, $s2, 4 +/* 0C837C 800C777C 0278082A */ slt $at, $s3, $t8 +/* 0C8380 800C7780 5420FFDA */ bnezl $at, .L800C76EC +/* 0C8384 800C7784 8E580004 */ lw $t8, 4($s2) +.L800C7788: +/* 0C8388 800C7788 8FBF002C */ lw $ra, 0x2c($sp) +/* 0C838C 800C778C 8FB00018 */ lw $s0, 0x18($sp) +/* 0C8390 800C7790 8FB1001C */ lw $s1, 0x1c($sp) +/* 0C8394 800C7794 8FB20020 */ lw $s2, 0x20($sp) +/* 0C8398 800C7798 8FB30024 */ lw $s3, 0x24($sp) +/* 0C839C 800C779C 8FB40028 */ lw $s4, 0x28($sp) +/* 0C83A0 800C77A0 03E00008 */ jr $ra +/* 0C83A4 800C77A4 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_0C81A0/func_800C77A8.s b/asm/non_matchings/unknown_0C81A0/func_800C77A8.s new file mode 100644 index 00000000..d09696c5 --- /dev/null +++ b/asm/non_matchings/unknown_0C81A0/func_800C77A8.s @@ -0,0 +1,23 @@ +glabel func_800C77A8 +/* 0C83A8 800C77A8 848E0002 */ lh $t6, 2($a0) +/* 0C83AC 800C77AC 00001025 */ move $v0, $zero +/* 0C83B0 800C77B0 00801825 */ move $v1, $a0 +/* 0C83B4 800C77B4 19C0000A */ blez $t6, .L800C77E0 +/* 0C83B8 800C77B8 00000000 */ nop +/* 0C83BC 800C77BC 8C6F0004 */ lw $t7, 4($v1) +.L800C77C0: +/* 0C83C0 800C77C0 24420001 */ addiu $v0, $v0, 1 +/* 0C83C4 800C77C4 24630008 */ addiu $v1, $v1, 8 +/* 0C83C8 800C77C8 01E5C021 */ addu $t8, $t7, $a1 +/* 0C83CC 800C77CC AC78FFFC */ sw $t8, -4($v1) +/* 0C83D0 800C77D0 84990002 */ lh $t9, 2($a0) +/* 0C83D4 800C77D4 0059082A */ slt $at, $v0, $t9 +/* 0C83D8 800C77D8 5420FFF9 */ bnezl $at, .L800C77C0 +/* 0C83DC 800C77DC 8C6F0004 */ lw $t7, 4($v1) +.L800C77E0: +/* 0C83E0 800C77E0 03E00008 */ jr $ra +/* 0C83E4 800C77E4 00000000 */ nop + +/* 0C83E8 800C77E8 00000000 */ nop +/* 0C83EC 800C77EC 00000000 */ nop + diff --git a/asm/unknown_0C83F0.s b/asm/non_matchings/unknown_0C83F0/func_800C77F0.s old mode 100755 new mode 100644 similarity index 85% rename from asm/unknown_0C83F0.s rename to asm/non_matchings/unknown_0C83F0/func_800C77F0.s index 3e3e2693..9d98beef --- a/asm/unknown_0C83F0.s +++ b/asm/non_matchings/unknown_0C83F0/func_800C77F0.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C77F0 /* 0C83F0 800C77F0 8FAE0010 */ lw $t6, 0x10($sp) /* 0C83F4 800C77F4 AFA40000 */ sw $a0, ($sp) @@ -33,3 +25,4 @@ glabel func_800C77F0 /* 0C8444 800C7844 00000000 */ nop /* 0C8448 800C7848 00000000 */ nop /* 0C844C 800C784C 00000000 */ nop + diff --git a/asm/unknown_0C8450.s b/asm/non_matchings/unknown_0C8450/func_800C7850.s old mode 100755 new mode 100644 similarity index 79% rename from asm/unknown_0C8450.s rename to asm/non_matchings/unknown_0C8450/func_800C7850.s index 74eeb6b0..b3a5fc02 --- a/asm/unknown_0C8450.s +++ b/asm/non_matchings/unknown_0C8450/func_800C7850.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C7850 /* 0C8450 800C7850 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0C8454 800C7854 AFBF0014 */ sw $ra, 0x14($sp) @@ -24,3 +16,4 @@ glabel func_800C7850 /* 0C8488 800C7888 00000000 */ nop /* 0C848C 800C788C 00000000 */ nop + diff --git a/asm/unknown_0C8490.s b/asm/non_matchings/unknown_0C8490/func_800C7890.s old mode 100755 new mode 100644 similarity index 66% rename from asm/unknown_0C8490.s rename to asm/non_matchings/unknown_0C8490/func_800C7890.s index dc1a8ede..49fb346a --- a/asm/unknown_0C8490.s +++ b/asm/non_matchings/unknown_0C8490/func_800C7890.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C7890 /* 0C8490 800C7890 8C830018 */ lw $v1, 0x18($a0) /* 0C8494 800C7894 54600004 */ bnezl $v1, .L800C78A8 @@ -26,9 +18,3 @@ glabel func_800C7890 /* 0C84C8 800C78C8 03E00008 */ jr $ra /* 0C84CC 800C78CC 00000000 */ nop -glabel func_800C78D0 -/* 0C84D0 800C78D0 40024800 */ mfc0 $v0, $9 -/* 0C84D4 800C78D4 03E00008 */ jr $ra -/* 0C84D8 800C78D8 00000000 */ nop - -/* 0C84DC 800C78DC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0C8490/func_800C78D0.s b/asm/non_matchings/unknown_0C8490/func_800C78D0.s new file mode 100644 index 00000000..2b8b7f22 --- /dev/null +++ b/asm/non_matchings/unknown_0C8490/func_800C78D0.s @@ -0,0 +1,7 @@ +glabel func_800C78D0 +/* 0C84D0 800C78D0 40024800 */ mfc0 $v0, $9 +/* 0C84D4 800C78D4 03E00008 */ jr $ra +/* 0C84D8 800C78D8 00000000 */ nop + +/* 0C84DC 800C78DC 00000000 */ nop + diff --git a/asm/unknown_0C84E0.s b/asm/non_matchings/unknown_0C84E0/func_800C78E0.s old mode 100755 new mode 100644 similarity index 85% rename from asm/unknown_0C84E0.s rename to asm/non_matchings/unknown_0C84E0/func_800C78E0.s index 4ff032c3..44b087a2 --- a/asm/unknown_0C84E0.s +++ b/asm/non_matchings/unknown_0C84E0/func_800C78E0.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C78E0 /* 0C84E0 800C78E0 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0C84E4 800C78E4 00A03825 */ move $a3, $a1 @@ -32,3 +24,4 @@ glabel func_800C78E0 /* 0C8538 800C7938 00000000 */ nop /* 0C853C 800C793C 00000000 */ nop + diff --git a/asm/unknown_0C8540.s b/asm/non_matchings/unknown_0C8540/func_800C7940.s old mode 100755 new mode 100644 similarity index 85% rename from asm/unknown_0C8540.s rename to asm/non_matchings/unknown_0C8540/func_800C7940.s index 25942d14..4d5853ef --- a/asm/unknown_0C8540.s +++ b/asm/non_matchings/unknown_0C8540/func_800C7940.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C7940 /* 0C8540 800C7940 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0C8544 800C7944 00A03825 */ move $a3, $a1 @@ -32,3 +24,4 @@ glabel func_800C7940 /* 0C8598 800C7998 00000000 */ nop /* 0C859C 800C799C 00000000 */ nop + diff --git a/asm/unknown_0C85A0.s b/asm/non_matchings/unknown_0C85A0/func_800C79A0.s old mode 100755 new mode 100644 similarity index 66% rename from asm/unknown_0C85A0.s rename to asm/non_matchings/unknown_0C85A0/func_800C79A0.s index b2580e2c..91e4b6ab --- a/asm/unknown_0C85A0.s +++ b/asm/non_matchings/unknown_0C85A0/func_800C79A0.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C79A0 /* 0C85A0 800C79A0 AFA50004 */ sw $a1, 4($sp) /* 0C85A4 800C79A4 8C8F0060 */ lw $t7, 0x60($a0) @@ -16,3 +8,4 @@ glabel func_800C79A0 /* 0C85B8 800C79B8 93220009 */ lbu $v0, 9($t9) /* 0C85BC 800C79BC 00000000 */ nop + diff --git a/asm/unknown_0C85C0.s b/asm/non_matchings/unknown_0C85C0/func_800C79C0.s old mode 100755 new mode 100644 similarity index 66% rename from asm/unknown_0C85C0.s rename to asm/non_matchings/unknown_0C85C0/func_800C79C0.s index 4d10ff69..e3fbf4e9 --- a/asm/unknown_0C85C0.s +++ b/asm/non_matchings/unknown_0C85C0/func_800C79C0.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C79C0 /* 0C85C0 800C79C0 AFA50004 */ sw $a1, 4($sp) /* 0C85C4 800C79C4 8C8F0060 */ lw $t7, 0x60($a0) @@ -16,3 +8,4 @@ glabel func_800C79C0 /* 0C85D8 800C79D8 9322000A */ lbu $v0, 0xa($t9) /* 0C85DC 800C79DC 00000000 */ nop + diff --git a/asm/unknown_0C85E0.s b/asm/non_matchings/unknown_0C85E0/func_800C79E0.s old mode 100755 new mode 100644 similarity index 87% rename from asm/unknown_0C85E0.s rename to asm/non_matchings/unknown_0C85E0/func_800C79E0.s index ccf4b307..9a425cfd --- a/asm/unknown_0C85E0.s +++ b/asm/non_matchings/unknown_0C85E0/func_800C79E0.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C79E0 /* 0C85E0 800C79E0 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0C85E4 800C79E4 3C0100FF */ lui $at, 0xff @@ -36,3 +28,4 @@ glabel func_800C79E0 /* 0C8644 800C7A44 00000000 */ nop /* 0C8648 800C7A48 00000000 */ nop /* 0C864C 800C7A4C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C8650/func_800C7A50.s b/asm/non_matchings/unknown_0C8650/func_800C7A50.s new file mode 100644 index 00000000..00100093 --- /dev/null +++ b/asm/non_matchings/unknown_0C8650/func_800C7A50.s @@ -0,0 +1,7 @@ +glabel func_800C7A50 +/* 0C8650 800C7A50 03E00008 */ jr $ra +/* 0C8654 800C7A54 8C82002C */ lw $v0, 0x2c($a0) + +/* 0C8658 800C7A58 00000000 */ nop +/* 0C865C 800C7A5C 00000000 */ nop + diff --git a/asm/unknown_0C8660.s b/asm/non_matchings/unknown_0C8660/func_800C7A60.s old mode 100755 new mode 100644 similarity index 79% rename from asm/unknown_0C8660.s rename to asm/non_matchings/unknown_0C8660/func_800C7A60.s index 9433aafe..6e9713c8 --- a/asm/unknown_0C8660.s +++ b/asm/non_matchings/unknown_0C8660/func_800C7A60.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C7A60 /* 0C8660 800C7A60 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0C8664 800C7A64 AFBF0014 */ sw $ra, 0x14($sp) @@ -24,3 +16,4 @@ glabel func_800C7A60 /* 0C8694 800C7A94 00000000 */ nop /* 0C8698 800C7A98 00000000 */ nop /* 0C869C 800C7A9C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C86A0/func_800C7AA0.s b/asm/non_matchings/unknown_0C86A0/func_800C7AA0.s new file mode 100644 index 00000000..605dd5a6 --- /dev/null +++ b/asm/non_matchings/unknown_0C86A0/func_800C7AA0.s @@ -0,0 +1,42 @@ +glabel func_800C7AA0 +/* 0C86A0 800C7AA0 8C8E0004 */ lw $t6, 4($a0) +/* 0C86A4 800C7AA4 00803025 */ move $a2, $a0 +/* 0C86A8 800C7AA8 00804025 */ move $t0, $a0 +/* 0C86AC 800C7AAC ACAE0000 */ sw $t6, ($a1) +/* 0C86B0 800C7AB0 8C8F000C */ lw $t7, 0xc($a0) +/* 0C86B4 800C7AB4 00001025 */ move $v0, $zero +/* 0C86B8 800C7AB8 00A01825 */ move $v1, $a1 +/* 0C86BC 800C7ABC ACAF0004 */ sw $t7, 4($a1) +/* 0C86C0 800C7AC0 8C980010 */ lw $t8, 0x10($a0) +/* 0C86C4 800C7AC4 24040010 */ li $a0, 16 +/* 0C86C8 800C7AC8 00A03825 */ move $a3, $a1 +/* 0C86CC 800C7ACC ACB80008 */ sw $t8, 8($a1) +.L800C7AD0: +/* 0C86D0 800C7AD0 8CD90018 */ lw $t9, 0x18($a2) +/* 0C86D4 800C7AD4 24420002 */ addiu $v0, $v0, 2 +/* 0C86D8 800C7AD8 24630008 */ addiu $v1, $v1, 8 +/* 0C86DC 800C7ADC AC790004 */ sw $t9, 4($v1) +/* 0C86E0 800C7AE0 8CC90058 */ lw $t1, 0x58($a2) +/* 0C86E4 800C7AE4 24C60008 */ addiu $a2, $a2, 8 +/* 0C86E8 800C7AE8 24E70002 */ addiu $a3, $a3, 2 +/* 0C86EC 800C7AEC AC690044 */ sw $t1, 0x44($v1) +/* 0C86F0 800C7AF0 910A0098 */ lbu $t2, 0x98($t0) +/* 0C86F4 800C7AF4 25080002 */ addiu $t0, $t0, 2 +/* 0C86F8 800C7AF8 A0EA008A */ sb $t2, 0x8a($a3) +/* 0C86FC 800C7AFC 910B00A6 */ lbu $t3, 0xa6($t0) +/* 0C8700 800C7B00 A0EB009A */ sb $t3, 0x9a($a3) +/* 0C8704 800C7B04 8CCC00B0 */ lw $t4, 0xb0($a2) +/* 0C8708 800C7B08 AC6C00A4 */ sw $t4, 0xa4($v1) +/* 0C870C 800C7B0C 8CCD0014 */ lw $t5, 0x14($a2) +/* 0C8710 800C7B10 AC6D0008 */ sw $t5, 8($v1) +/* 0C8714 800C7B14 8CCE0054 */ lw $t6, 0x54($a2) +/* 0C8718 800C7B18 AC6E0048 */ sw $t6, 0x48($v1) +/* 0C871C 800C7B1C 910F0097 */ lbu $t7, 0x97($t0) +/* 0C8720 800C7B20 A0EF008B */ sb $t7, 0x8b($a3) +/* 0C8724 800C7B24 911800A7 */ lbu $t8, 0xa7($t0) +/* 0C8728 800C7B28 A0F8009B */ sb $t8, 0x9b($a3) +/* 0C872C 800C7B2C 8CD900B4 */ lw $t9, 0xb4($a2) +/* 0C8730 800C7B30 1444FFE7 */ bne $v0, $a0, .L800C7AD0 +/* 0C8734 800C7B34 AC7900A8 */ sw $t9, 0xa8($v1) +/* 0C8738 800C7B38 03E00008 */ jr $ra +/* 0C873C 800C7B3C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0C86A0/func_800C7B40.s b/asm/non_matchings/unknown_0C86A0/func_800C7B40.s new file mode 100644 index 00000000..c893642f --- /dev/null +++ b/asm/non_matchings/unknown_0C86A0/func_800C7B40.s @@ -0,0 +1,42 @@ +glabel func_800C7B40 +/* 0C8740 800C7B40 8CAE0000 */ lw $t6, ($a1) +/* 0C8744 800C7B44 00801825 */ move $v1, $a0 +/* 0C8748 800C7B48 00803825 */ move $a3, $a0 +/* 0C874C 800C7B4C AC8E0004 */ sw $t6, 4($a0) +/* 0C8750 800C7B50 8CAF0004 */ lw $t7, 4($a1) +/* 0C8754 800C7B54 00001025 */ move $v0, $zero +/* 0C8758 800C7B58 00A03025 */ move $a2, $a1 +/* 0C875C 800C7B5C AC8F000C */ sw $t7, 0xc($a0) +/* 0C8760 800C7B60 8CB80008 */ lw $t8, 8($a1) +/* 0C8764 800C7B64 00A04025 */ move $t0, $a1 +/* 0C8768 800C7B68 AC980010 */ sw $t8, 0x10($a0) +/* 0C876C 800C7B6C 24040010 */ li $a0, 16 +.L800C7B70: +/* 0C8770 800C7B70 8CD9000C */ lw $t9, 0xc($a2) +/* 0C8774 800C7B74 24420002 */ addiu $v0, $v0, 2 +/* 0C8778 800C7B78 24630008 */ addiu $v1, $v1, 8 +/* 0C877C 800C7B7C AC790010 */ sw $t9, 0x10($v1) +/* 0C8780 800C7B80 8CC9004C */ lw $t1, 0x4c($a2) +/* 0C8784 800C7B84 24C60008 */ addiu $a2, $a2, 8 +/* 0C8788 800C7B88 24E70002 */ addiu $a3, $a3, 2 +/* 0C878C 800C7B8C AC690050 */ sw $t1, 0x50($v1) +/* 0C8790 800C7B90 910A008C */ lbu $t2, 0x8c($t0) +/* 0C8794 800C7B94 25080002 */ addiu $t0, $t0, 2 +/* 0C8798 800C7B98 A0EA0096 */ sb $t2, 0x96($a3) +/* 0C879C 800C7B9C 910B009A */ lbu $t3, 0x9a($t0) +/* 0C87A0 800C7BA0 A0EB00A6 */ sb $t3, 0xa6($a3) +/* 0C87A4 800C7BA4 8CCC00A4 */ lw $t4, 0xa4($a2) +/* 0C87A8 800C7BA8 AC6C00B0 */ sw $t4, 0xb0($v1) +/* 0C87AC 800C7BAC 8CCD0008 */ lw $t5, 8($a2) +/* 0C87B0 800C7BB0 AC6D0014 */ sw $t5, 0x14($v1) +/* 0C87B4 800C7BB4 8CCE0048 */ lw $t6, 0x48($a2) +/* 0C87B8 800C7BB8 AC6E0054 */ sw $t6, 0x54($v1) +/* 0C87BC 800C7BBC 910F008B */ lbu $t7, 0x8b($t0) +/* 0C87C0 800C7BC0 A0EF0097 */ sb $t7, 0x97($a3) +/* 0C87C4 800C7BC4 9118009B */ lbu $t8, 0x9b($t0) +/* 0C87C8 800C7BC8 A0F800A7 */ sb $t8, 0xa7($a3) +/* 0C87CC 800C7BCC 8CD900A8 */ lw $t9, 0xa8($a2) +/* 0C87D0 800C7BD0 1444FFE7 */ bne $v0, $a0, .L800C7B70 +/* 0C87D4 800C7BD4 AC7900B4 */ sw $t9, 0xb4($v1) +/* 0C87D8 800C7BD8 03E00008 */ jr $ra +/* 0C87DC 800C7BDC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0C86A0/func_800C7BE0.s b/asm/non_matchings/unknown_0C86A0/func_800C7BE0.s new file mode 100644 index 00000000..d7b2a9f4 --- /dev/null +++ b/asm/non_matchings/unknown_0C86A0/func_800C7BE0.s @@ -0,0 +1,54 @@ +glabel func_800C7BE0 +/* 0C87E0 800C7BE0 00851021 */ addu $v0, $a0, $a1 +/* 0C87E4 800C7BE4 904E0098 */ lbu $t6, 0x98($v0) +/* 0C87E8 800C7BE8 00057880 */ sll $t7, $a1, 2 +/* 0C87EC 800C7BEC 008F3021 */ addu $a2, $a0, $t7 +/* 0C87F0 800C7BF0 51C0000D */ beql $t6, $zero, .L800C7C28 +/* 0C87F4 800C7BF4 8CC70018 */ lw $a3, 0x18($a2) +/* 0C87F8 800C7BF8 00057880 */ sll $t7, $a1, 2 +/* 0C87FC 800C7BFC 008F3021 */ addu $a2, $a0, $t7 +/* 0C8800 800C7C00 8CC70058 */ lw $a3, 0x58($a2) +/* 0C8804 800C7C04 90E30000 */ lbu $v1, ($a3) +/* 0C8808 800C7C08 24F80001 */ addiu $t8, $a3, 1 +/* 0C880C 800C7C0C ACD80058 */ sw $t8, 0x58($a2) +/* 0C8810 800C7C10 90590098 */ lbu $t9, 0x98($v0) +/* 0C8814 800C7C14 272EFFFF */ addiu $t6, $t9, -1 +/* 0C8818 800C7C18 A04E0098 */ sb $t6, 0x98($v0) +/* 0C881C 800C7C1C 03E00008 */ jr $ra +/* 0C8820 800C7C20 00601025 */ move $v0, $v1 + +/* 0C8824 800C7C24 8CC70018 */ lw $a3, 0x18($a2) +.L800C7C28: +/* 0C8828 800C7C28 240800FE */ li $t0, 254 +/* 0C882C 800C7C2C 90E30000 */ lbu $v1, ($a3) +/* 0C8830 800C7C30 24F80001 */ addiu $t8, $a3, 1 +/* 0C8834 800C7C34 ACD80018 */ sw $t8, 0x18($a2) +/* 0C8838 800C7C38 15030018 */ bne $t0, $v1, .L800C7C9C +/* 0C883C 800C7C3C 00000000 */ nop +/* 0C8840 800C7C40 93040000 */ lbu $a0, ($t8) +/* 0C8844 800C7C44 27190001 */ addiu $t9, $t8, 1 +/* 0C8848 800C7C48 ACD90018 */ sw $t9, 0x18($a2) +/* 0C884C 800C7C4C 11040013 */ beq $t0, $a0, .L800C7C9C +/* 0C8850 800C7C50 272E0001 */ addiu $t6, $t9, 1 +/* 0C8854 800C7C54 93230000 */ lbu $v1, ($t9) +/* 0C8858 800C7C58 ACCE0018 */ sw $t6, 0x18($a2) +/* 0C885C 800C7C5C 91C50000 */ lbu $a1, ($t6) +/* 0C8860 800C7C60 25CF0001 */ addiu $t7, $t6, 1 +/* 0C8864 800C7C64 0004CA00 */ sll $t9, $a0, 8 +/* 0C8868 800C7C68 ACCF0018 */ sw $t7, 0x18($a2) +/* 0C886C 800C7C6C 03237021 */ addu $t6, $t9, $v1 +/* 0C8870 800C7C70 01EE7823 */ subu $t7, $t7, $t6 +/* 0C8874 800C7C74 25F9FFFC */ addiu $t9, $t7, -4 +/* 0C8878 800C7C78 ACD90058 */ sw $t9, 0x58($a2) +/* 0C887C 800C7C7C A0450098 */ sb $a1, 0x98($v0) +/* 0C8880 800C7C80 8CC70058 */ lw $a3, 0x58($a2) +/* 0C8884 800C7C84 90E30000 */ lbu $v1, ($a3) +/* 0C8888 800C7C88 24F80001 */ addiu $t8, $a3, 1 +/* 0C888C 800C7C8C ACD80058 */ sw $t8, 0x58($a2) +/* 0C8890 800C7C90 904E0098 */ lbu $t6, 0x98($v0) +/* 0C8894 800C7C94 25CFFFFF */ addiu $t7, $t6, -1 +/* 0C8898 800C7C98 A04F0098 */ sb $t7, 0x98($v0) +.L800C7C9C: +/* 0C889C 800C7C9C 03E00008 */ jr $ra +/* 0C88A0 800C7CA0 00601025 */ move $v0, $v1 + diff --git a/asm/non_matchings/unknown_0C86A0/func_800C7CA4.s b/asm/non_matchings/unknown_0C86A0/func_800C7CA4.s new file mode 100644 index 00000000..fb684df6 --- /dev/null +++ b/asm/non_matchings/unknown_0C86A0/func_800C7CA4.s @@ -0,0 +1,29 @@ +glabel func_800C7CA4 +/* 0C88A4 800C7CA4 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C88A8 800C7CA8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0C88AC 800C7CAC 01402025 */ move $a0, $t2 +/* 0C88B0 800C7CB0 0C031EF8 */ jal func_800C7BE0 +/* 0C88B4 800C7CB4 01602825 */ move $a1, $t3 +/* 0C88B8 800C7CB8 304E0080 */ andi $t6, $v0, 0x80 +/* 0C88BC 800C7CBC 11C0000A */ beqz $t6, .L800C7CE8 +/* 0C88C0 800C7CC0 00404825 */ move $t1, $v0 +/* 0C88C4 800C7CC4 3049007F */ andi $t1, $v0, 0x7f +.L800C7CC8: +/* 0C88C8 800C7CC8 01402025 */ move $a0, $t2 +/* 0C88CC 800C7CCC 0C031EF8 */ jal func_800C7BE0 +/* 0C88D0 800C7CD0 01602825 */ move $a1, $t3 +/* 0C88D4 800C7CD4 000979C0 */ sll $t7, $t1, 7 +/* 0C88D8 800C7CD8 3058007F */ andi $t8, $v0, 0x7f +/* 0C88DC 800C7CDC 30590080 */ andi $t9, $v0, 0x80 +/* 0C88E0 800C7CE0 1720FFF9 */ bnez $t9, .L800C7CC8 +/* 0C88E4 800C7CE4 01F84821 */ addu $t1, $t7, $t8 +.L800C7CE8: +/* 0C88E8 800C7CE8 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C88EC 800C7CEC 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0C88F0 800C7CF0 01201025 */ move $v0, $t1 +/* 0C88F4 800C7CF4 03E00008 */ jr $ra +/* 0C88F8 800C7CF8 00000000 */ nop + +/* 0C88FC 800C7CFC 03E00008 */ jr $ra +/* 0C8900 800C7D00 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C86A0/func_800C7D04.s b/asm/non_matchings/unknown_0C86A0/func_800C7D04.s new file mode 100644 index 00000000..d01e737d --- /dev/null +++ b/asm/non_matchings/unknown_0C86A0/func_800C7D04.s @@ -0,0 +1,208 @@ +glabel func_800C7D04 +/* 0C8904 800C7D04 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0C8908 800C7D08 AFB00018 */ sw $s0, 0x18($sp) +/* 0C890C 800C7D0C 00A08025 */ move $s0, $a1 +/* 0C8910 800C7D10 AFBF001C */ sw $ra, 0x1c($sp) +/* 0C8914 800C7D14 00806025 */ move $t4, $a0 +/* 0C8918 800C7D18 2409FFFF */ li $t1, -1 +/* 0C891C 800C7D1C 8C860010 */ lw $a2, 0x10($a0) +/* 0C8920 800C7D20 24050010 */ li $a1, 16 +/* 0C8924 800C7D24 8FAB0024 */ lw $t3, 0x24($sp) +/* 0C8928 800C7D28 00001025 */ move $v0, $zero +/* 0C892C 800C7D2C 8D8E0004 */ lw $t6, 4($t4) +.L800C7D30: +/* 0C8930 800C7D30 004E7806 */ srlv $t7, $t6, $v0 +/* 0C8934 800C7D34 31F80001 */ andi $t8, $t7, 1 +/* 0C8938 800C7D38 53000010 */ beql $t8, $zero, .L800C7D7C +/* 0C893C 800C7D3C 24420001 */ addiu $v0, $v0, 1 +/* 0C8940 800C7D40 8D8E0014 */ lw $t6, 0x14($t4) +/* 0C8944 800C7D44 0002C880 */ sll $t9, $v0, 2 +/* 0C8948 800C7D48 01991821 */ addu $v1, $t4, $t9 +/* 0C894C 800C7D4C 51C00005 */ beql $t6, $zero, .L800C7D64 +/* 0C8950 800C7D50 8C6400B8 */ lw $a0, 0xb8($v1) +/* 0C8954 800C7D54 8C6F00B8 */ lw $t7, 0xb8($v1) +/* 0C8958 800C7D58 01E6C023 */ subu $t8, $t7, $a2 +/* 0C895C 800C7D5C AC7800B8 */ sw $t8, 0xb8($v1) +/* 0C8960 800C7D60 8C6400B8 */ lw $a0, 0xb8($v1) +.L800C7D64: +/* 0C8964 800C7D64 0089082B */ sltu $at, $a0, $t1 +/* 0C8968 800C7D68 50200004 */ beql $at, $zero, .L800C7D7C +/* 0C896C 800C7D6C 24420001 */ addiu $v0, $v0, 1 +/* 0C8970 800C7D70 00804825 */ move $t1, $a0 +/* 0C8974 800C7D74 00405825 */ move $t3, $v0 +/* 0C8978 800C7D78 24420001 */ addiu $v0, $v0, 1 +.L800C7D7C: +/* 0C897C 800C7D7C 5445FFEC */ bnel $v0, $a1, .L800C7D30 +/* 0C8980 800C7D80 8D8E0004 */ lw $t6, 4($t4) +/* 0C8984 800C7D84 01802025 */ move $a0, $t4 +/* 0C8988 800C7D88 0C031EF8 */ jal func_800C7BE0 +/* 0C898C 800C7D8C 01602825 */ move $a1, $t3 +/* 0C8990 800C7D90 240100FF */ li $at, 255 +/* 0C8994 800C7D94 304A00FF */ andi $t2, $v0, 0xff +/* 0C8998 800C7D98 1441005A */ bne $v0, $at, .L800C7F04 +/* 0C899C 800C7D9C 00401825 */ move $v1, $v0 +/* 0C89A0 800C7DA0 01802025 */ move $a0, $t4 +/* 0C89A4 800C7DA4 0C031EF8 */ jal func_800C7BE0 +/* 0C89A8 800C7DA8 01602825 */ move $a1, $t3 +/* 0C89AC 800C7DAC 24010051 */ li $at, 81 +/* 0C89B0 800C7DB0 304600FF */ andi $a2, $v0, 0xff +/* 0C89B4 800C7DB4 14410014 */ bne $v0, $at, .L800C7E08 +/* 0C89B8 800C7DB8 00401825 */ move $v1, $v0 +/* 0C89BC 800C7DBC 24190003 */ li $t9, 3 +/* 0C89C0 800C7DC0 A6190000 */ sh $t9, ($s0) +/* 0C89C4 800C7DC4 A20A0008 */ sb $t2, 8($s0) +/* 0C89C8 800C7DC8 A2060009 */ sb $a2, 9($s0) +/* 0C89CC 800C7DCC 01802025 */ move $a0, $t4 +/* 0C89D0 800C7DD0 0C031EF8 */ jal func_800C7BE0 +/* 0C89D4 800C7DD4 01602825 */ move $a1, $t3 +/* 0C89D8 800C7DD8 A202000B */ sb $v0, 0xb($s0) +/* 0C89DC 800C7DDC 01802025 */ move $a0, $t4 +/* 0C89E0 800C7DE0 0C031EF8 */ jal func_800C7BE0 +/* 0C89E4 800C7DE4 01602825 */ move $a1, $t3 +/* 0C89E8 800C7DE8 A202000C */ sb $v0, 0xc($s0) +/* 0C89EC 800C7DEC 01802025 */ move $a0, $t4 +/* 0C89F0 800C7DF0 0C031EF8 */ jal func_800C7BE0 +/* 0C89F4 800C7DF4 01602825 */ move $a1, $t3 +/* 0C89F8 800C7DF8 A202000D */ sb $v0, 0xd($s0) +/* 0C89FC 800C7DFC 018B7021 */ addu $t6, $t4, $t3 +/* 0C8A00 800C7E00 10000067 */ b .L800C7FA0 +/* 0C8A04 800C7E04 A1C000A8 */ sb $zero, 0xa8($t6) +.L800C7E08: +/* 0C8A08 800C7E08 2401002F */ li $at, 47 +/* 0C8A0C 800C7E0C 5461000E */ bnel $v1, $at, .L800C7E48 +/* 0C8A10 800C7E10 2401002E */ li $at, 46 +/* 0C8A14 800C7E14 8D8F0004 */ lw $t7, 4($t4) +/* 0C8A18 800C7E18 24180001 */ li $t8, 1 +/* 0C8A1C 800C7E1C 0178C804 */ sllv $t9, $t8, $t3 +/* 0C8A20 800C7E20 01F97026 */ xor $t6, $t7, $t9 +/* 0C8A24 800C7E24 11C00004 */ beqz $t6, .L800C7E38 +/* 0C8A28 800C7E28 AD8E0004 */ sw $t6, 4($t4) +/* 0C8A2C 800C7E2C 240F0012 */ li $t7, 18 +/* 0C8A30 800C7E30 1000005B */ b .L800C7FA0 +/* 0C8A34 800C7E34 A60F0000 */ sh $t7, ($s0) +.L800C7E38: +/* 0C8A38 800C7E38 24190004 */ li $t9, 4 +/* 0C8A3C 800C7E3C 10000058 */ b .L800C7FA0 +/* 0C8A40 800C7E40 A6190000 */ sh $t9, ($s0) +/* 0C8A44 800C7E44 2401002E */ li $at, 46 +.L800C7E48: +/* 0C8A48 800C7E48 1461000B */ bne $v1, $at, .L800C7E78 +/* 0C8A4C 800C7E4C 01802025 */ move $a0, $t4 +/* 0C8A50 800C7E50 0C031EF8 */ jal func_800C7BE0 +/* 0C8A54 800C7E54 01602825 */ move $a1, $t3 +/* 0C8A58 800C7E58 01802025 */ move $a0, $t4 +/* 0C8A5C 800C7E5C 0C031EF8 */ jal func_800C7BE0 +/* 0C8A60 800C7E60 01602825 */ move $a1, $t3 +/* 0C8A64 800C7E64 018B7021 */ addu $t6, $t4, $t3 +/* 0C8A68 800C7E68 A1C000A8 */ sb $zero, 0xa8($t6) +/* 0C8A6C 800C7E6C 24180013 */ li $t8, 19 +/* 0C8A70 800C7E70 1000004B */ b .L800C7FA0 +/* 0C8A74 800C7E74 A6180000 */ sh $t8, ($s0) +.L800C7E78: +/* 0C8A78 800C7E78 2401002D */ li $at, 45 +/* 0C8A7C 800C7E7C 14610048 */ bne $v1, $at, .L800C7FA0 +/* 0C8A80 800C7E80 000B7880 */ sll $t7, $t3, 2 +/* 0C8A84 800C7E84 018F6821 */ addu $t5, $t4, $t7 +/* 0C8A88 800C7E88 8DA20018 */ lw $v0, 0x18($t5) +/* 0C8A8C 800C7E8C 240100FF */ li $at, 255 +/* 0C8A90 800C7E90 90440001 */ lbu $a0, 1($v0) +/* 0C8A94 800C7E94 24420001 */ addiu $v0, $v0, 1 +/* 0C8A98 800C7E98 24590005 */ addiu $t9, $v0, 5 +/* 0C8A9C 800C7E9C 14800004 */ bnez $a0, .L800C7EB0 +/* 0C8AA0 800C7EA0 9045FFFF */ lbu $a1, -1($v0) +/* 0C8AA4 800C7EA4 A0450000 */ sb $a1, ($v0) +/* 0C8AA8 800C7EA8 10000011 */ b .L800C7EF0 +/* 0C8AAC 800C7EAC ADB90018 */ sw $t9, 0x18($t5) +.L800C7EB0: +/* 0C8AB0 800C7EB0 10810002 */ beq $a0, $at, .L800C7EBC +/* 0C8AB4 800C7EB4 248EFFFF */ addiu $t6, $a0, -1 +/* 0C8AB8 800C7EB8 A04E0000 */ sb $t6, ($v0) +.L800C7EBC: +/* 0C8ABC 800C7EBC 904F0002 */ lbu $t7, 2($v0) +/* 0C8AC0 800C7EC0 90430001 */ lbu $v1, 1($v0) +/* 0C8AC4 800C7EC4 904E0003 */ lbu $t6, 3($v0) +/* 0C8AC8 800C7EC8 000FCC00 */ sll $t9, $t7, 0x10 +/* 0C8ACC 800C7ECC 0003C600 */ sll $t8, $v1, 0x18 +/* 0C8AD0 800C7ED0 904F0004 */ lbu $t7, 4($v0) +/* 0C8AD4 800C7ED4 03191821 */ addu $v1, $t8, $t9 +/* 0C8AD8 800C7ED8 000EC200 */ sll $t8, $t6, 8 +/* 0C8ADC 800C7EDC 00781821 */ addu $v1, $v1, $t8 +/* 0C8AE0 800C7EE0 24420005 */ addiu $v0, $v0, 5 +/* 0C8AE4 800C7EE4 006F1821 */ addu $v1, $v1, $t7 +/* 0C8AE8 800C7EE8 0043C823 */ subu $t9, $v0, $v1 +/* 0C8AEC 800C7EEC ADB90018 */ sw $t9, 0x18($t5) +.L800C7EF0: +/* 0C8AF0 800C7EF0 018B7021 */ addu $t6, $t4, $t3 +/* 0C8AF4 800C7EF4 A1C000A8 */ sb $zero, 0xa8($t6) +/* 0C8AF8 800C7EF8 24180014 */ li $t8, 20 +/* 0C8AFC 800C7EFC 10000028 */ b .L800C7FA0 +/* 0C8B00 800C7F00 A6180000 */ sh $t8, ($s0) +.L800C7F04: +/* 0C8B04 800C7F04 240F0001 */ li $t7, 1 +/* 0C8B08 800C7F08 30790080 */ andi $t9, $v1, 0x80 +/* 0C8B0C 800C7F0C 13200009 */ beqz $t9, .L800C7F34 +/* 0C8B10 800C7F10 A60F0000 */ sh $t7, ($s0) +/* 0C8B14 800C7F14 A20A0008 */ sb $t2, 8($s0) +/* 0C8B18 800C7F18 01802025 */ move $a0, $t4 +/* 0C8B1C 800C7F1C 0C031EF8 */ jal func_800C7BE0 +/* 0C8B20 800C7F20 01602825 */ move $a1, $t3 +/* 0C8B24 800C7F24 A2020009 */ sb $v0, 9($s0) +/* 0C8B28 800C7F28 018B7021 */ addu $t6, $t4, $t3 +/* 0C8B2C 800C7F2C 10000005 */ b .L800C7F44 +/* 0C8B30 800C7F30 A1CA00A8 */ sb $t2, 0xa8($t6) +.L800C7F34: +/* 0C8B34 800C7F34 018BC021 */ addu $t8, $t4, $t3 +/* 0C8B38 800C7F38 930F00A8 */ lbu $t7, 0xa8($t8) +/* 0C8B3C 800C7F3C A2020009 */ sb $v0, 9($s0) +/* 0C8B40 800C7F40 A20F0008 */ sb $t7, 8($s0) +.L800C7F44: +/* 0C8B44 800C7F44 92020008 */ lbu $v0, 8($s0) +/* 0C8B48 800C7F48 240100C0 */ li $at, 192 +/* 0C8B4C 800C7F4C 305900F0 */ andi $t9, $v0, 0xf0 +/* 0C8B50 800C7F50 13210012 */ beq $t9, $at, .L800C7F9C +/* 0C8B54 800C7F54 240100D0 */ li $at, 208 +/* 0C8B58 800C7F58 13210010 */ beq $t9, $at, .L800C7F9C +/* 0C8B5C 800C7F5C 01802025 */ move $a0, $t4 +/* 0C8B60 800C7F60 0C031EF8 */ jal func_800C7BE0 +/* 0C8B64 800C7F64 01602825 */ move $a1, $t3 +/* 0C8B68 800C7F68 920E0008 */ lbu $t6, 8($s0) +/* 0C8B6C 800C7F6C 24010090 */ li $at, 144 +/* 0C8B70 800C7F70 A202000A */ sb $v0, 0xa($s0) +/* 0C8B74 800C7F74 31D800F0 */ andi $t8, $t6, 0xf0 +/* 0C8B78 800C7F78 17010009 */ bne $t8, $at, .L800C7FA0 +/* 0C8B7C 800C7F7C 01805025 */ move $t2, $t4 +/* 0C8B80 800C7F80 AFA90028 */ sw $t1, 0x28($sp) +/* 0C8B84 800C7F84 0C031F29 */ jal func_800C7CA4 +/* 0C8B88 800C7F88 AFAB0024 */ sw $t3, 0x24($sp) +/* 0C8B8C 800C7F8C 8FA90028 */ lw $t1, 0x28($sp) +/* 0C8B90 800C7F90 8FAB0024 */ lw $t3, 0x24($sp) +/* 0C8B94 800C7F94 10000002 */ b .L800C7FA0 +/* 0C8B98 800C7F98 AE02000C */ sw $v0, 0xc($s0) +.L800C7F9C: +/* 0C8B9C 800C7F9C A200000A */ sb $zero, 0xa($s0) +.L800C7FA0: +/* 0C8BA0 800C7FA0 AE090004 */ sw $t1, 4($s0) +/* 0C8BA4 800C7FA4 8D8F000C */ lw $t7, 0xc($t4) +/* 0C8BA8 800C7FA8 AD890010 */ sw $t1, 0x10($t4) +/* 0C8BAC 800C7FAC 24010012 */ li $at, 18 +/* 0C8BB0 800C7FB0 01E9C821 */ addu $t9, $t7, $t1 +/* 0C8BB4 800C7FB4 AD99000C */ sw $t9, 0xc($t4) +/* 0C8BB8 800C7FB8 860E0000 */ lh $t6, ($s0) +/* 0C8BBC 800C7FBC 01805025 */ move $t2, $t4 +/* 0C8BC0 800C7FC0 000BC080 */ sll $t8, $t3, 2 +/* 0C8BC4 800C7FC4 51C10007 */ beql $t6, $at, .L800C7FE4 +/* 0C8BC8 800C7FC8 240E0001 */ li $t6, 1 +/* 0C8BCC 800C7FCC 0C031F29 */ jal func_800C7CA4 +/* 0C8BD0 800C7FD0 01986821 */ addu $t5, $t4, $t8 +/* 0C8BD4 800C7FD4 8DAF00B8 */ lw $t7, 0xb8($t5) +/* 0C8BD8 800C7FD8 01E2C821 */ addu $t9, $t7, $v0 +/* 0C8BDC 800C7FDC ADB900B8 */ sw $t9, 0xb8($t5) +/* 0C8BE0 800C7FE0 240E0001 */ li $t6, 1 +.L800C7FE4: +/* 0C8BE4 800C7FE4 AD8E0014 */ sw $t6, 0x14($t4) +/* 0C8BE8 800C7FE8 8FBF001C */ lw $ra, 0x1c($sp) +/* 0C8BEC 800C7FEC 8FB00018 */ lw $s0, 0x18($sp) +/* 0C8BF0 800C7FF0 27BD0030 */ addiu $sp, $sp, 0x30 +/* 0C8BF4 800C7FF4 03E00008 */ jr $ra +/* 0C8BF8 800C7FF8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C86A0/func_800C7FFC.s b/asm/non_matchings/unknown_0C86A0/func_800C7FFC.s new file mode 100644 index 00000000..d27084bc --- /dev/null +++ b/asm/non_matchings/unknown_0C86A0/func_800C7FFC.s @@ -0,0 +1,273 @@ +glabel func_800C7FFC +/* 0C8BFC 800C7FFC 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0C8C00 800C8000 AFB40028 */ sw $s4, 0x28($sp) +/* 0C8C04 800C8004 AFB30024 */ sw $s3, 0x24($sp) +/* 0C8C08 800C8008 AFB20020 */ sw $s2, 0x20($sp) +/* 0C8C0C 800C800C AFB1001C */ sw $s1, 0x1c($sp) +/* 0C8C10 800C8010 AFB00018 */ sw $s0, 0x18($sp) +/* 0C8C14 800C8014 AFBF002C */ sw $ra, 0x2c($sp) +/* 0C8C18 800C8018 240E0001 */ li $t6, 1 +/* 0C8C1C 800C801C 00808025 */ move $s0, $a0 +/* 0C8C20 800C8020 00A0A025 */ move $s4, $a1 +/* 0C8C24 800C8024 AC850000 */ sw $a1, ($a0) +/* 0C8C28 800C8028 AC800004 */ sw $zero, 4($a0) +/* 0C8C2C 800C802C AC800010 */ sw $zero, 0x10($a0) +/* 0C8C30 800C8030 AC80000C */ sw $zero, 0xc($a0) +/* 0C8C34 800C8034 AC8E0014 */ sw $t6, 0x14($a0) +/* 0C8C38 800C8038 00808825 */ move $s1, $a0 +/* 0C8C3C 800C803C 00009025 */ move $s2, $zero +/* 0C8C40 800C8040 24130010 */ li $s3, 16 +/* 0C8C44 800C8044 00006825 */ move $t5, $zero +/* 0C8C48 800C8048 00806025 */ move $t4, $a0 +.L800C804C: +/* 0C8C4C 800C804C A22000A8 */ sb $zero, 0xa8($s1) +/* 0C8C50 800C8050 AD800058 */ sw $zero, 0x58($t4) +/* 0C8C54 800C8054 A2200098 */ sb $zero, 0x98($s1) +/* 0C8C58 800C8058 8E0F0000 */ lw $t7, ($s0) +/* 0C8C5C 800C805C 240E0001 */ li $t6, 1 +/* 0C8C60 800C8060 01F2C021 */ addu $t8, $t7, $s2 +/* 0C8C64 800C8064 8F020000 */ lw $v0, ($t8) +/* 0C8C68 800C8068 01AE7804 */ sllv $t7, $t6, $t5 +/* 0C8C6C 800C806C 1040000A */ beqz $v0, .L800C8098 +/* 0C8C70 800C8070 02827021 */ addu $t6, $s4, $v0 +/* 0C8C74 800C8074 8E190004 */ lw $t9, 4($s0) +/* 0C8C78 800C8078 02005025 */ move $t2, $s0 +/* 0C8C7C 800C807C 01A05825 */ move $t3, $t5 +/* 0C8C80 800C8080 032FC025 */ or $t8, $t9, $t7 +/* 0C8C84 800C8084 AE180004 */ sw $t8, 4($s0) +/* 0C8C88 800C8088 0C031F29 */ jal func_800C7CA4 +/* 0C8C8C 800C808C AD8E0018 */ sw $t6, 0x18($t4) +/* 0C8C90 800C8090 10000002 */ b .L800C809C +/* 0C8C94 800C8094 AD8200B8 */ sw $v0, 0xb8($t4) +.L800C8098: +/* 0C8C98 800C8098 AD800018 */ sw $zero, 0x18($t4) +.L800C809C: +/* 0C8C9C 800C809C 25AD0001 */ addiu $t5, $t5, 1 +/* 0C8CA0 800C80A0 26310001 */ addiu $s1, $s1, 1 +/* 0C8CA4 800C80A4 26520004 */ addiu $s2, $s2, 4 +/* 0C8CA8 800C80A8 15B3FFE8 */ bne $t5, $s3, .L800C804C +/* 0C8CAC 800C80AC 258C0004 */ addiu $t4, $t4, 4 +/* 0C8CB0 800C80B0 8E190000 */ lw $t9, ($s0) +/* 0C8CB4 800C80B4 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 0C8CB8 800C80B8 44812800 */ mtc1 $at, $f5 +/* 0C8CBC 800C80BC 8F2F0040 */ lw $t7, 0x40($t9) +/* 0C8CC0 800C80C0 44802000 */ mtc1 $zero, $f4 +/* 0C8CC4 800C80C4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0C8CC8 800C80C8 448F3000 */ mtc1 $t7, $f6 +/* 0C8CCC 800C80CC 05E10004 */ bgez $t7, .L800C80E0 +/* 0C8CD0 800C80D0 46803220 */ cvt.s.w $f8, $f6 +/* 0C8CD4 800C80D4 44815000 */ mtc1 $at, $f10 +/* 0C8CD8 800C80D8 00000000 */ nop +/* 0C8CDC 800C80DC 460A4200 */ add.s $f8, $f8, $f10 +.L800C80E0: +/* 0C8CE0 800C80E0 460041A1 */ cvt.d.s $f6, $f8 +/* 0C8CE4 800C80E4 46262283 */ div.d $f10, $f4, $f6 +/* 0C8CE8 800C80E8 46205220 */ cvt.s.d $f8, $f10 +/* 0C8CEC 800C80EC E6080008 */ swc1 $f8, 8($s0) +/* 0C8CF0 800C80F0 8FBF002C */ lw $ra, 0x2c($sp) +/* 0C8CF4 800C80F4 8FB40028 */ lw $s4, 0x28($sp) +/* 0C8CF8 800C80F8 8FB30024 */ lw $s3, 0x24($sp) +/* 0C8CFC 800C80FC 8FB20020 */ lw $s2, 0x20($sp) +/* 0C8D00 800C8100 8FB1001C */ lw $s1, 0x1c($sp) +/* 0C8D04 800C8104 8FB00018 */ lw $s0, 0x18($sp) +/* 0C8D08 800C8108 03E00008 */ jr $ra +/* 0C8D0C 800C810C 27BD0030 */ addiu $sp, $sp, 0x30 + +/* 0C8D10 800C8110 27BDFEB0 */ addiu $sp, $sp, -0x150 +/* 0C8D14 800C8114 AFB30020 */ sw $s3, 0x20($sp) +/* 0C8D18 800C8118 AFB10018 */ sw $s1, 0x18($sp) +/* 0C8D1C 800C811C 00A08825 */ move $s1, $a1 +/* 0C8D20 800C8120 27B30048 */ addiu $s3, $sp, 0x48 +/* 0C8D24 800C8124 AFBF002C */ sw $ra, 0x2c($sp) +/* 0C8D28 800C8128 AFB50028 */ sw $s5, 0x28($sp) +/* 0C8D2C 800C812C AFB40024 */ sw $s4, 0x24($sp) +/* 0C8D30 800C8130 AFB2001C */ sw $s2, 0x1c($sp) +/* 0C8D34 800C8134 AFB00014 */ sw $s0, 0x14($sp) +/* 0C8D38 800C8138 00803825 */ move $a3, $a0 +/* 0C8D3C 800C813C 00C09025 */ move $s2, $a2 +/* 0C8D40 800C8140 8CE50000 */ lw $a1, ($a3) +/* 0C8D44 800C8144 0C031FFF */ jal func_800C7FFC +/* 0C8D48 800C8148 02602025 */ move $a0, $s3 +/* 0C8D4C 800C814C 24150004 */ li $s5, 4 +/* 0C8D50 800C8150 27B40140 */ addiu $s4, $sp, 0x140 +/* 0C8D54 800C8154 27B00058 */ addiu $s0, $sp, 0x58 +/* 0C8D58 800C8158 8FAE004C */ lw $t6, 0x4c($sp) +.L800C815C: +/* 0C8D5C 800C815C 27A40048 */ addiu $a0, $sp, 0x48 +/* 0C8D60 800C8160 00801825 */ move $v1, $a0 +/* 0C8D64 800C8164 AE2E0000 */ sw $t6, ($s1) +/* 0C8D68 800C8168 8FAF0054 */ lw $t7, 0x54($sp) +/* 0C8D6C 800C816C 02201025 */ move $v0, $s1 +/* 0C8D70 800C8170 02202825 */ move $a1, $s1 +/* 0C8D74 800C8174 AE2F0004 */ sw $t7, 4($s1) +/* 0C8D78 800C8178 8FB80058 */ lw $t8, 0x58($sp) +/* 0C8D7C 800C817C AE380008 */ sw $t8, 8($s1) +.L800C8180: +/* 0C8D80 800C8180 8C680018 */ lw $t0, 0x18($v1) +/* 0C8D84 800C8184 24840004 */ addiu $a0, $a0, 4 +/* 0C8D88 800C8188 24420010 */ addiu $v0, $v0, 0x10 +/* 0C8D8C 800C818C AC48FFFC */ sw $t0, -4($v0) +/* 0C8D90 800C8190 8C690058 */ lw $t1, 0x58($v1) +/* 0C8D94 800C8194 24630010 */ addiu $v1, $v1, 0x10 +/* 0C8D98 800C8198 24A50004 */ addiu $a1, $a1, 4 +/* 0C8D9C 800C819C AC49003C */ sw $t1, 0x3c($v0) +/* 0C8DA0 800C81A0 908A0094 */ lbu $t2, 0x94($a0) +/* 0C8DA4 800C81A4 A0AA0088 */ sb $t2, 0x88($a1) +/* 0C8DA8 800C81A8 908B00A4 */ lbu $t3, 0xa4($a0) +/* 0C8DAC 800C81AC A0AB0098 */ sb $t3, 0x98($a1) +/* 0C8DB0 800C81B0 8C6C00A8 */ lw $t4, 0xa8($v1) +/* 0C8DB4 800C81B4 AC4C009C */ sw $t4, 0x9c($v0) +/* 0C8DB8 800C81B8 8C6D000C */ lw $t5, 0xc($v1) +/* 0C8DBC 800C81BC AC4D0000 */ sw $t5, ($v0) +/* 0C8DC0 800C81C0 8C6E004C */ lw $t6, 0x4c($v1) +/* 0C8DC4 800C81C4 AC4E0040 */ sw $t6, 0x40($v0) +/* 0C8DC8 800C81C8 908F0095 */ lbu $t7, 0x95($a0) +/* 0C8DCC 800C81CC A0AF0089 */ sb $t7, 0x89($a1) +/* 0C8DD0 800C81D0 909800A5 */ lbu $t8, 0xa5($a0) +/* 0C8DD4 800C81D4 A0B80099 */ sb $t8, 0x99($a1) +/* 0C8DD8 800C81D8 8C7900AC */ lw $t9, 0xac($v1) +/* 0C8DDC 800C81DC AC5900A0 */ sw $t9, 0xa0($v0) +/* 0C8DE0 800C81E0 8C680010 */ lw $t0, 0x10($v1) +/* 0C8DE4 800C81E4 AC480004 */ sw $t0, 4($v0) +/* 0C8DE8 800C81E8 8C690050 */ lw $t1, 0x50($v1) +/* 0C8DEC 800C81EC AC490044 */ sw $t1, 0x44($v0) +/* 0C8DF0 800C81F0 908A0096 */ lbu $t2, 0x96($a0) +/* 0C8DF4 800C81F4 A0AA008A */ sb $t2, 0x8a($a1) +/* 0C8DF8 800C81F8 908B00A6 */ lbu $t3, 0xa6($a0) +/* 0C8DFC 800C81FC A0AB009A */ sb $t3, 0x9a($a1) +/* 0C8E00 800C8200 8C6C00B0 */ lw $t4, 0xb0($v1) +/* 0C8E04 800C8204 AC4C00A4 */ sw $t4, 0xa4($v0) +/* 0C8E08 800C8208 8C6D0014 */ lw $t5, 0x14($v1) +/* 0C8E0C 800C820C AC4D0008 */ sw $t5, 8($v0) +/* 0C8E10 800C8210 8C6E0054 */ lw $t6, 0x54($v1) +/* 0C8E14 800C8214 AC4E0048 */ sw $t6, 0x48($v0) +/* 0C8E18 800C8218 908F0097 */ lbu $t7, 0x97($a0) +/* 0C8E1C 800C821C A0AF008B */ sb $t7, 0x8b($a1) +/* 0C8E20 800C8220 909800A7 */ lbu $t8, 0xa7($a0) +/* 0C8E24 800C8224 A0B8009B */ sb $t8, 0x9b($a1) +/* 0C8E28 800C8228 8C7900B4 */ lw $t9, 0xb4($v1) +/* 0C8E2C 800C822C 1490FFD4 */ bne $a0, $s0, .L800C8180 +/* 0C8E30 800C8230 AC5900A8 */ sw $t9, 0xa8($v0) +/* 0C8E34 800C8234 02602025 */ move $a0, $s3 +/* 0C8E38 800C8238 0C031F41 */ jal func_800C7D04 +/* 0C8E3C 800C823C 02802825 */ move $a1, $s4 +/* 0C8E40 800C8240 87A80140 */ lh $t0, 0x140($sp) +/* 0C8E44 800C8244 8FA90054 */ lw $t1, 0x54($sp) +/* 0C8E48 800C8248 11150003 */ beq $t0, $s5, .L800C8258 +/* 0C8E4C 800C824C 0132082B */ sltu $at, $t1, $s2 +/* 0C8E50 800C8250 5420FFC2 */ bnezl $at, .L800C815C +/* 0C8E54 800C8254 8FAE004C */ lw $t6, 0x4c($sp) +.L800C8258: +/* 0C8E58 800C8258 8FBF002C */ lw $ra, 0x2c($sp) +/* 0C8E5C 800C825C 8FB00014 */ lw $s0, 0x14($sp) +/* 0C8E60 800C8260 8FB10018 */ lw $s1, 0x18($sp) +/* 0C8E64 800C8264 8FB2001C */ lw $s2, 0x1c($sp) +/* 0C8E68 800C8268 8FB30020 */ lw $s3, 0x20($sp) +/* 0C8E6C 800C826C 8FB40024 */ lw $s4, 0x24($sp) +/* 0C8E70 800C8270 8FB50028 */ lw $s5, 0x28($sp) +/* 0C8E74 800C8274 03E00008 */ jr $ra +/* 0C8E78 800C8278 27BD0150 */ addiu $sp, $sp, 0x150 + +/* 0C8E7C 800C827C 03E00008 */ jr $ra +/* 0C8E80 800C8280 8C82000C */ lw $v0, 0xc($a0) + +/* 0C8E84 800C8284 8C8E0000 */ lw $t6, ($a0) +/* 0C8E88 800C8288 44856000 */ mtc1 $a1, $f12 +/* 0C8E8C 800C828C 3C01800F */ lui $at, 0x800f +/* 0C8E90 800C8290 8DCF0040 */ lw $t7, 0x40($t6) +/* 0C8E94 800C8294 D42694B0 */ ldc1 $f6, -0x6b50($at) +/* 0C8E98 800C8298 46006121 */ cvt.d.s $f4, $f12 +/* 0C8E9C 800C829C 448F5000 */ mtc1 $t7, $f10 +/* 0C8EA0 800C82A0 46262202 */ mul.d $f8, $f4, $f6 +/* 0C8EA4 800C82A4 3C0141F0 */ li $at, 0x41F00000 # 30.000000 +/* 0C8EA8 800C82A8 05E10005 */ bgez $t7, .L800C82C0 +/* 0C8EAC 800C82AC 46805421 */ cvt.d.w $f16, $f10 +/* 0C8EB0 800C82B0 44819800 */ mtc1 $at, $f19 +/* 0C8EB4 800C82B4 44809000 */ mtc1 $zero, $f18 +/* 0C8EB8 800C82B8 00000000 */ nop +/* 0C8EBC 800C82BC 46328400 */ add.d $f16, $f16, $f18 +.L800C82C0: +/* 0C8EC0 800C82C0 44863000 */ mtc1 $a2, $f6 +/* 0C8EC4 800C82C4 46304102 */ mul.d $f4, $f8, $f16 +/* 0C8EC8 800C82C8 3C0141F0 */ li $at, 0x41F00000 # 30.000000 +/* 0C8ECC 800C82CC 04C10005 */ bgez $a2, .L800C82E4 +/* 0C8ED0 800C82D0 468032A1 */ cvt.d.w $f10, $f6 +/* 0C8ED4 800C82D4 44819800 */ mtc1 $at, $f19 +/* 0C8ED8 800C82D8 44809000 */ mtc1 $zero, $f18 +/* 0C8EDC 800C82DC 00000000 */ nop +/* 0C8EE0 800C82E0 46325280 */ add.d $f10, $f10, $f18 +.L800C82E4: +/* 0C8EE4 800C82E4 462A2203 */ div.d $f8, $f4, $f10 +/* 0C8EE8 800C82E8 24020001 */ li $v0, 1 +/* 0C8EEC 800C82EC 3C0141E0 */ li $at, 0x41E00000 # 28.000000 +/* 0C8EF0 800C82F0 4458F800 */ cfc1 $t8, $31 +/* 0C8EF4 800C82F4 44C2F800 */ ctc1 $v0, $31 +/* 0C8EF8 800C82F8 00000000 */ nop +/* 0C8EFC 800C82FC 46204424 */ cvt.w.d $f16, $f8 +/* 0C8F00 800C8300 4442F800 */ cfc1 $v0, $31 +/* 0C8F04 800C8304 00000000 */ nop +/* 0C8F08 800C8308 30420078 */ andi $v0, $v0, 0x78 +/* 0C8F0C 800C830C 50400016 */ beql $v0, $zero, .L800C8368 +/* 0C8F10 800C8310 44028000 */ mfc1 $v0, $f16 +/* 0C8F14 800C8314 44818800 */ mtc1 $at, $f17 +/* 0C8F18 800C8318 44808000 */ mtc1 $zero, $f16 +/* 0C8F1C 800C831C 24020001 */ li $v0, 1 +/* 0C8F20 800C8320 3C018000 */ lui $at, 0x8000 +/* 0C8F24 800C8324 46304401 */ sub.d $f16, $f8, $f16 +/* 0C8F28 800C8328 44C2F800 */ ctc1 $v0, $31 +/* 0C8F2C 800C832C 00000000 */ nop +/* 0C8F30 800C8330 46208424 */ cvt.w.d $f16, $f16 +/* 0C8F34 800C8334 4442F800 */ cfc1 $v0, $31 +/* 0C8F38 800C8338 00000000 */ nop +/* 0C8F3C 800C833C 30420078 */ andi $v0, $v0, 0x78 +/* 0C8F40 800C8340 54400006 */ bnezl $v0, .L800C835C +/* 0C8F44 800C8344 44D8F800 */ ctc1 $t8, $31 +/* 0C8F48 800C8348 44028000 */ mfc1 $v0, $f16 +/* 0C8F4C 800C834C 44D8F800 */ ctc1 $t8, $31 +/* 0C8F50 800C8350 03E00008 */ jr $ra +/* 0C8F54 800C8354 00411025 */ or $v0, $v0, $at + +/* 0C8F58 800C8358 44D8F800 */ ctc1 $t8, $31 +.L800C835C: +/* 0C8F5C 800C835C 03E00008 */ jr $ra +/* 0C8F60 800C8360 2402FFFF */ li $v0, -1 + +/* 0C8F64 800C8364 44028000 */ mfc1 $v0, $f16 +.L800C8368: +/* 0C8F68 800C8368 00000000 */ nop +/* 0C8F6C 800C836C 0442FFFB */ bltzl $v0, .L800C835C +/* 0C8F70 800C8370 44D8F800 */ ctc1 $t8, $31 +/* 0C8F74 800C8374 44D8F800 */ ctc1 $t8, $31 +/* 0C8F78 800C8378 03E00008 */ jr $ra +/* 0C8F7C 800C837C 00000000 */ nop + +/* 0C8F80 800C8380 44852000 */ mtc1 $a1, $f4 +/* 0C8F84 800C8384 44864000 */ mtc1 $a2, $f8 +/* 0C8F88 800C8388 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0C8F8C 800C838C 468021A0 */ cvt.s.w $f6, $f4 +/* 0C8F90 800C8390 04C10004 */ bgez $a2, .L800C83A4 +/* 0C8F94 800C8394 468042A0 */ cvt.s.w $f10, $f8 +/* 0C8F98 800C8398 44818000 */ mtc1 $at, $f16 +/* 0C8F9C 800C839C 00000000 */ nop +/* 0C8FA0 800C83A0 46105280 */ add.s $f10, $f10, $f16 +.L800C83A4: +/* 0C8FA4 800C83A4 8C8E0000 */ lw $t6, ($a0) +/* 0C8FA8 800C83A8 460A3482 */ mul.s $f18, $f6, $f10 +/* 0C8FAC 800C83AC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0C8FB0 800C83B0 8DCF0040 */ lw $t7, 0x40($t6) +/* 0C8FB4 800C83B4 448F4000 */ mtc1 $t7, $f8 +/* 0C8FB8 800C83B8 46009121 */ cvt.d.s $f4, $f18 +/* 0C8FBC 800C83BC 05E10004 */ bgez $t7, .L800C83D0 +/* 0C8FC0 800C83C0 46804420 */ cvt.s.w $f16, $f8 +/* 0C8FC4 800C83C4 44813000 */ mtc1 $at, $f6 +/* 0C8FC8 800C83C8 00000000 */ nop +/* 0C8FCC 800C83CC 46068400 */ add.s $f16, $f16, $f6 +.L800C83D0: +/* 0C8FD0 800C83D0 3C01800F */ lui $at, 0x800f +/* 0C8FD4 800C83D4 D43294B8 */ ldc1 $f18, -0x6b48($at) +/* 0C8FD8 800C83D8 460082A1 */ cvt.d.s $f10, $f16 +/* 0C8FDC 800C83DC 46325202 */ mul.d $f8, $f10, $f18 +/* 0C8FE0 800C83E0 46282183 */ div.d $f6, $f4, $f8 +/* 0C8FE4 800C83E4 03E00008 */ jr $ra +/* 0C8FE8 800C83E8 46203020 */ cvt.s.d $f0, $f6 + diff --git a/asm/non_matchings/unknown_0C86A0/func_800C83EC.s b/asm/non_matchings/unknown_0C86A0/func_800C83EC.s new file mode 100644 index 00000000..a8c10ee2 --- /dev/null +++ b/asm/non_matchings/unknown_0C86A0/func_800C83EC.s @@ -0,0 +1,109 @@ +glabel func_800C83EC +/* 0C8FEC 800C83EC 8C8E0004 */ lw $t6, 4($a0) +/* 0C8FF0 800C83F0 00A04825 */ move $t1, $a1 +/* 0C8FF4 800C83F4 2403FFFF */ li $v1, -1 +/* 0C8FF8 800C83F8 15C00003 */ bnez $t6, .L800C8408 +/* 0C8FFC 800C83FC 8C820010 */ lw $v0, 0x10($a0) +/* 0C9000 800C8400 03E00008 */ jr $ra +/* 0C9004 800C8404 00001025 */ move $v0, $zero + +.L800C8408: +/* 0C9008 800C8408 00003025 */ move $a2, $zero +/* 0C900C 800C840C 240A0010 */ li $t2, 16 +/* 0C9010 800C8410 8C850004 */ lw $a1, 4($a0) +.L800C8414: +/* 0C9014 800C8414 24CE0001 */ addiu $t6, $a2, 1 +/* 0C9018 800C8418 00C57806 */ srlv $t7, $a1, $a2 +/* 0C901C 800C841C 31F80001 */ andi $t8, $t7, 1 +/* 0C9020 800C8420 53000010 */ beql $t8, $zero, .L800C8464 +/* 0C9024 800C8424 01C57806 */ srlv $t7, $a1, $t6 +/* 0C9028 800C8428 8C8B0014 */ lw $t3, 0x14($a0) +/* 0C902C 800C842C 0006C880 */ sll $t9, $a2, 2 +/* 0C9030 800C8430 00993821 */ addu $a3, $a0, $t9 +/* 0C9034 800C8434 51600006 */ beql $t3, $zero, .L800C8450 +/* 0C9038 800C8438 8CE800B8 */ lw $t0, 0xb8($a3) +/* 0C903C 800C843C 8CEC00B8 */ lw $t4, 0xb8($a3) +/* 0C9040 800C8440 01826823 */ subu $t5, $t4, $v0 +/* 0C9044 800C8444 ACED00B8 */ sw $t5, 0xb8($a3) +/* 0C9048 800C8448 8C850004 */ lw $a1, 4($a0) +/* 0C904C 800C844C 8CE800B8 */ lw $t0, 0xb8($a3) +.L800C8450: +/* 0C9050 800C8450 0103082B */ sltu $at, $t0, $v1 +/* 0C9054 800C8454 50200003 */ beql $at, $zero, .L800C8464 +/* 0C9058 800C8458 01C57806 */ srlv $t7, $a1, $t6 +/* 0C905C 800C845C 01001825 */ move $v1, $t0 +/* 0C9060 800C8460 01C57806 */ srlv $t7, $a1, $t6 +.L800C8464: +/* 0C9064 800C8464 31F80001 */ andi $t8, $t7, 1 +/* 0C9068 800C8468 1300000F */ beqz $t8, .L800C84A8 +/* 0C906C 800C846C 24CE0002 */ addiu $t6, $a2, 2 +/* 0C9070 800C8470 8C8B0014 */ lw $t3, 0x14($a0) +/* 0C9074 800C8474 0006C880 */ sll $t9, $a2, 2 +/* 0C9078 800C8478 00993821 */ addu $a3, $a0, $t9 +/* 0C907C 800C847C 51600006 */ beql $t3, $zero, .L800C8498 +/* 0C9080 800C8480 8CE800BC */ lw $t0, 0xbc($a3) +/* 0C9084 800C8484 8CEC00BC */ lw $t4, 0xbc($a3) +/* 0C9088 800C8488 01826823 */ subu $t5, $t4, $v0 +/* 0C908C 800C848C ACED00BC */ sw $t5, 0xbc($a3) +/* 0C9090 800C8490 8C850004 */ lw $a1, 4($a0) +/* 0C9094 800C8494 8CE800BC */ lw $t0, 0xbc($a3) +.L800C8498: +/* 0C9098 800C8498 0103082B */ sltu $at, $t0, $v1 +/* 0C909C 800C849C 50200003 */ beql $at, $zero, .L800C84AC +/* 0C90A0 800C84A0 01C57806 */ srlv $t7, $a1, $t6 +/* 0C90A4 800C84A4 01001825 */ move $v1, $t0 +.L800C84A8: +/* 0C90A8 800C84A8 01C57806 */ srlv $t7, $a1, $t6 +.L800C84AC: +/* 0C90AC 800C84AC 31F80001 */ andi $t8, $t7, 1 +/* 0C90B0 800C84B0 1300000F */ beqz $t8, .L800C84F0 +/* 0C90B4 800C84B4 24CE0003 */ addiu $t6, $a2, 3 +/* 0C90B8 800C84B8 8C8B0014 */ lw $t3, 0x14($a0) +/* 0C90BC 800C84BC 0006C880 */ sll $t9, $a2, 2 +/* 0C90C0 800C84C0 00993821 */ addu $a3, $a0, $t9 +/* 0C90C4 800C84C4 51600006 */ beql $t3, $zero, .L800C84E0 +/* 0C90C8 800C84C8 8CE800C0 */ lw $t0, 0xc0($a3) +/* 0C90CC 800C84CC 8CEC00C0 */ lw $t4, 0xc0($a3) +/* 0C90D0 800C84D0 01826823 */ subu $t5, $t4, $v0 +/* 0C90D4 800C84D4 ACED00C0 */ sw $t5, 0xc0($a3) +/* 0C90D8 800C84D8 8C850004 */ lw $a1, 4($a0) +/* 0C90DC 800C84DC 8CE800C0 */ lw $t0, 0xc0($a3) +.L800C84E0: +/* 0C90E0 800C84E0 0103082B */ sltu $at, $t0, $v1 +/* 0C90E4 800C84E4 50200003 */ beql $at, $zero, .L800C84F4 +/* 0C90E8 800C84E8 01C57806 */ srlv $t7, $a1, $t6 +/* 0C90EC 800C84EC 01001825 */ move $v1, $t0 +.L800C84F0: +/* 0C90F0 800C84F0 01C57806 */ srlv $t7, $a1, $t6 +.L800C84F4: +/* 0C90F4 800C84F4 31F80001 */ andi $t8, $t7, 1 +/* 0C90F8 800C84F8 5300000F */ beql $t8, $zero, .L800C8538 +/* 0C90FC 800C84FC 24C60004 */ addiu $a2, $a2, 4 +/* 0C9100 800C8500 8C8B0014 */ lw $t3, 0x14($a0) +/* 0C9104 800C8504 0006C880 */ sll $t9, $a2, 2 +/* 0C9108 800C8508 00993821 */ addu $a3, $a0, $t9 +/* 0C910C 800C850C 51600005 */ beql $t3, $zero, .L800C8524 +/* 0C9110 800C8510 8CE500C4 */ lw $a1, 0xc4($a3) +/* 0C9114 800C8514 8CEC00C4 */ lw $t4, 0xc4($a3) +/* 0C9118 800C8518 01826823 */ subu $t5, $t4, $v0 +/* 0C911C 800C851C ACED00C4 */ sw $t5, 0xc4($a3) +/* 0C9120 800C8520 8CE500C4 */ lw $a1, 0xc4($a3) +.L800C8524: +/* 0C9124 800C8524 00A3082B */ sltu $at, $a1, $v1 +/* 0C9128 800C8528 50200003 */ beql $at, $zero, .L800C8538 +/* 0C912C 800C852C 24C60004 */ addiu $a2, $a2, 4 +/* 0C9130 800C8530 00A01825 */ move $v1, $a1 +/* 0C9134 800C8534 24C60004 */ addiu $a2, $a2, 4 +.L800C8538: +/* 0C9138 800C8538 54CAFFB6 */ bnel $a2, $t2, .L800C8414 +/* 0C913C 800C853C 8C850004 */ lw $a1, 4($a0) +/* 0C9140 800C8540 AC800014 */ sw $zero, 0x14($a0) +/* 0C9144 800C8544 AD230000 */ sw $v1, ($t1) +/* 0C9148 800C8548 24020001 */ li $v0, 1 +/* 0C914C 800C854C 03E00008 */ jr $ra +/* 0C9150 800C8550 00000000 */ nop + +/* 0C9154 800C8554 00000000 */ nop +/* 0C9158 800C8558 00000000 */ nop +/* 0C915C 800C855C 00000000 */ nop + diff --git a/asm/unknown_0C9160.s b/asm/non_matchings/unknown_0C9160/func_800C8560.s old mode 100755 new mode 100644 similarity index 79% rename from asm/unknown_0C9160.s rename to asm/non_matchings/unknown_0C9160/func_800C8560.s index 2707a15b..33ab7b0f --- a/asm/unknown_0C9160.s +++ b/asm/non_matchings/unknown_0C9160/func_800C8560.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C8560 /* 0C9160 800C8560 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0C9164 800C8564 AFBF0014 */ sw $ra, 0x14($sp) @@ -24,3 +16,4 @@ glabel func_800C8560 /* 0C9194 800C8594 00000000 */ nop /* 0C9198 800C8598 00000000 */ nop /* 0C919C 800C859C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C91A0/func_800C85A0.s b/asm/non_matchings/unknown_0C91A0/func_800C85A0.s new file mode 100644 index 00000000..cd65968b --- /dev/null +++ b/asm/non_matchings/unknown_0C91A0/func_800C85A0.s @@ -0,0 +1,14 @@ +glabel func_800C85A0 +/* 0C91A0 800C85A0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0C91A4 800C85A4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0C91A8 800C85A8 240E000F */ li $t6, 15 +/* 0C91AC 800C85AC A7AE0018 */ sh $t6, 0x18($sp) +/* 0C91B0 800C85B0 27A50018 */ addiu $a1, $sp, 0x18 +/* 0C91B4 800C85B4 24840048 */ addiu $a0, $a0, 0x48 +/* 0C91B8 800C85B8 0C03246B */ jal func_800C91AC +/* 0C91BC 800C85BC 00003025 */ move $a2, $zero +/* 0C91C0 800C85C0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C91C4 800C85C4 27BD0028 */ addiu $sp, $sp, 0x28 +/* 0C91C8 800C85C8 03E00008 */ jr $ra +/* 0C91CC 800C85CC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C91A0/func_800C85D0.s b/asm/non_matchings/unknown_0C91A0/func_800C85D0.s new file mode 100644 index 00000000..226c1d12 --- /dev/null +++ b/asm/non_matchings/unknown_0C91A0/func_800C85D0.s @@ -0,0 +1,14 @@ +glabel func_800C85D0 +/* 0C91D0 800C85D0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0C91D4 800C85D4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0C91D8 800C85D8 240E0011 */ li $t6, 17 +/* 0C91DC 800C85DC A7AE0018 */ sh $t6, 0x18($sp) +/* 0C91E0 800C85E0 27A50018 */ addiu $a1, $sp, 0x18 +/* 0C91E4 800C85E4 24840048 */ addiu $a0, $a0, 0x48 +/* 0C91E8 800C85E8 0C03246B */ jal func_800C91AC +/* 0C91EC 800C85EC 00003025 */ move $a2, $zero +/* 0C91F0 800C85F0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C91F4 800C85F4 27BD0028 */ addiu $sp, $sp, 0x28 +/* 0C91F8 800C85F8 03E00008 */ jr $ra +/* 0C91FC 800C85FC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C91A0/func_800C8600.s b/asm/non_matchings/unknown_0C91A0/func_800C8600.s new file mode 100644 index 00000000..0f24a487 --- /dev/null +++ b/asm/non_matchings/unknown_0C91A0/func_800C8600.s @@ -0,0 +1,98 @@ +glabel func_800C8600 +/* 0C9200 800C8600 3C0E800E */ lui $t6, %hi(D_800E4878) # $t6, 0x800e +/* 0C9204 800C8604 8DCE4878 */ lw $t6, %lo(D_800E4878)($t6) +/* 0C9208 800C8608 44844000 */ mtc1 $a0, $f8 +/* 0C920C 800C860C 27BDFFF0 */ addiu $sp, $sp, -0x10 +/* 0C9210 800C8610 448E2000 */ mtc1 $t6, $f4 +/* 0C9214 800C8614 468042A0 */ cvt.s.w $f10, $f8 +/* 0C9218 800C8618 04810005 */ bgez $a0, .L800C8630 +/* 0C921C 800C861C 468021A0 */ cvt.s.w $f6, $f4 +/* 0C9220 800C8620 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0C9224 800C8624 44818000 */ mtc1 $at, $f16 +/* 0C9228 800C8628 00000000 */ nop +/* 0C922C 800C862C 46105280 */ add.s $f10, $f10, $f16 +.L800C8630: +/* 0C9230 800C8630 460A3483 */ div.s $f18, $f6, $f10 +/* 0C9234 800C8634 3C013F00 */ li $at, 0x3F000000 # 0.500000 +/* 0C9238 800C8638 44812000 */ mtc1 $at, $f4 +/* 0C923C 800C863C 24050001 */ li $a1, 1 +/* 0C9240 800C8640 46049300 */ add.s $f12, $f18, $f4 +/* 0C9244 800C8644 444FF800 */ cfc1 $t7, $31 +/* 0C9248 800C8648 44C5F800 */ ctc1 $a1, $31 +/* 0C924C 800C864C 00000000 */ nop +/* 0C9250 800C8650 46006224 */ cvt.w.s $f8, $f12 +/* 0C9254 800C8654 4445F800 */ cfc1 $a1, $31 +/* 0C9258 800C8658 00000000 */ nop +/* 0C925C 800C865C 30A10004 */ andi $at, $a1, 4 +/* 0C9260 800C8660 30A50078 */ andi $a1, $a1, 0x78 +/* 0C9264 800C8664 10A00013 */ beqz $a1, .L800C86B4 +/* 0C9268 800C8668 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 0C926C 800C866C 44814000 */ mtc1 $at, $f8 +/* 0C9270 800C8670 24050001 */ li $a1, 1 +/* 0C9274 800C8674 46086201 */ sub.s $f8, $f12, $f8 +/* 0C9278 800C8678 44C5F800 */ ctc1 $a1, $31 +/* 0C927C 800C867C 00000000 */ nop +/* 0C9280 800C8680 46004224 */ cvt.w.s $f8, $f8 +/* 0C9284 800C8684 4445F800 */ cfc1 $a1, $31 +/* 0C9288 800C8688 00000000 */ nop +/* 0C928C 800C868C 30A10004 */ andi $at, $a1, 4 +/* 0C9290 800C8690 30A50078 */ andi $a1, $a1, 0x78 +/* 0C9294 800C8694 14A00005 */ bnez $a1, .L800C86AC +/* 0C9298 800C8698 00000000 */ nop +/* 0C929C 800C869C 44054000 */ mfc1 $a1, $f8 +/* 0C92A0 800C86A0 3C018000 */ lui $at, 0x8000 +/* 0C92A4 800C86A4 10000007 */ b .L800C86C4 +/* 0C92A8 800C86A8 00A12825 */ or $a1, $a1, $at +.L800C86AC: +/* 0C92AC 800C86AC 10000005 */ b .L800C86C4 +/* 0C92B0 800C86B0 2405FFFF */ li $a1, -1 +.L800C86B4: +/* 0C92B4 800C86B4 44054000 */ mfc1 $a1, $f8 +/* 0C92B8 800C86B8 00000000 */ nop +/* 0C92BC 800C86BC 04A0FFFB */ bltz $a1, .L800C86AC +/* 0C92C0 800C86C0 00000000 */ nop +.L800C86C4: +/* 0C92C4 800C86C4 44CFF800 */ ctc1 $t7, $31 +/* 0C92C8 800C86C8 2CA10084 */ sltiu $at, $a1, 0x84 +/* 0C92CC 800C86CC 10200003 */ beqz $at, .L800C86DC +/* 0C92D0 800C86D0 00000000 */ nop +/* 0C92D4 800C86D4 10000020 */ b .L800C8758 +/* 0C92D8 800C86D8 2402FFFF */ li $v0, -1 +.L800C86DC: +/* 0C92DC 800C86DC 24010042 */ li $at, 66 +/* 0C92E0 800C86E0 00A1001B */ divu $zero, $a1, $at +/* 0C92E4 800C86E4 00003012 */ mflo $a2 +/* 0C92E8 800C86E8 30D800FF */ andi $t8, $a2, 0xff +/* 0C92EC 800C86EC 03003025 */ move $a2, $t8 +/* 0C92F0 800C86F0 28C10011 */ slti $at, $a2, 0x11 +/* 0C92F4 800C86F4 14200002 */ bnez $at, .L800C8700 +/* 0C92F8 800C86F8 00000000 */ nop +/* 0C92FC 800C86FC 24060010 */ li $a2, 16 +.L800C8700: +/* 0C9300 800C8700 24B9FFFF */ addiu $t9, $a1, -1 +/* 0C9304 800C8704 3C08A450 */ lui $t0, %hi(D_A4500010) # $t0, 0xa450 +/* 0C9308 800C8708 AD190010 */ sw $t9, %lo(D_A4500010)($t0) +/* 0C930C 800C870C 24C9FFFF */ addiu $t1, $a2, -1 +/* 0C9310 800C8710 3C0AA450 */ lui $t2, %hi(D_A4500014) # $t2, 0xa450 +/* 0C9314 800C8714 AD490014 */ sw $t1, %lo(D_A4500014)($t2) +/* 0C9318 800C8718 240B0001 */ li $t3, 1 +/* 0C931C 800C871C 3C0CA450 */ lui $t4, %hi(D_A4500008) # $t4, 0xa450 +/* 0C9320 800C8720 AD8B0008 */ sw $t3, %lo(D_A4500008)($t4) +/* 0C9324 800C8724 3C0D800E */ lui $t5, %hi(D_800E4878) # $t5, 0x800e +/* 0C9328 800C8728 8DAD4878 */ lw $t5, %lo(D_800E4878)($t5) +/* 0C932C 800C872C 01A5001A */ div $zero, $t5, $a1 +/* 0C9330 800C8730 00001012 */ mflo $v0 +/* 0C9334 800C8734 14A00002 */ bnez $a1, .L800C8740 +/* 0C9338 800C8738 00000000 */ nop +/* 0C933C 800C873C 0007000D */ break 7 +.L800C8740: +/* 0C9340 800C8740 2401FFFF */ li $at, -1 +/* 0C9344 800C8744 14A10004 */ bne $a1, $at, .L800C8758 +/* 0C9348 800C8748 3C018000 */ lui $at, 0x8000 +/* 0C934C 800C874C 15A10002 */ bne $t5, $at, .L800C8758 +/* 0C9350 800C8750 00000000 */ nop +/* 0C9354 800C8754 0006000D */ break 6 +.L800C8758: +/* 0C9358 800C8758 03E00008 */ jr $ra +/* 0C935C 800C875C 27BD0010 */ addiu $sp, $sp, 0x10 + diff --git a/asm/non_matchings/unknown_0C91A0/func_800C8760.s b/asm/non_matchings/unknown_0C91A0/func_800C8760.s new file mode 100644 index 00000000..9e819acf --- /dev/null +++ b/asm/non_matchings/unknown_0C91A0/func_800C8760.s @@ -0,0 +1,16 @@ +glabel func_800C8760 +/* 0C9360 800C8760 8C820000 */ lw $v0, ($a0) +/* 0C9364 800C8764 50400004 */ beql $v0, $zero, .L800C8778 +/* 0C9368 800C8768 8C820004 */ lw $v0, 4($a0) +/* 0C936C 800C876C 8C8E0004 */ lw $t6, 4($a0) +/* 0C9370 800C8770 AC4E0004 */ sw $t6, 4($v0) +/* 0C9374 800C8774 8C820004 */ lw $v0, 4($a0) +.L800C8778: +/* 0C9378 800C8778 10400003 */ beqz $v0, .L800C8788 +/* 0C937C 800C877C 00000000 */ nop +/* 0C9380 800C8780 8C8F0000 */ lw $t7, ($a0) +/* 0C9384 800C8784 AC4F0000 */ sw $t7, ($v0) +.L800C8788: +/* 0C9388 800C8788 03E00008 */ jr $ra +/* 0C938C 800C878C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C91A0/func_800C8790.s b/asm/non_matchings/unknown_0C91A0/func_800C8790.s new file mode 100644 index 00000000..1ad3c495 --- /dev/null +++ b/asm/non_matchings/unknown_0C91A0/func_800C8790.s @@ -0,0 +1,12 @@ +glabel func_800C8790 +/* 0C9390 800C8790 8CAE0000 */ lw $t6, ($a1) +/* 0C9394 800C8794 AC850004 */ sw $a1, 4($a0) +/* 0C9398 800C8798 AC8E0000 */ sw $t6, ($a0) +/* 0C939C 800C879C 8CA20000 */ lw $v0, ($a1) +/* 0C93A0 800C87A0 10400002 */ beqz $v0, .L800C87AC +/* 0C93A4 800C87A4 00000000 */ nop +/* 0C93A8 800C87A8 AC440004 */ sw $a0, 4($v0) +.L800C87AC: +/* 0C93AC 800C87AC 03E00008 */ jr $ra +/* 0C93B0 800C87B0 ACA40000 */ sw $a0, ($a1) + diff --git a/asm/non_matchings/unknown_0C91A0/func_800C87B4.s b/asm/non_matchings/unknown_0C91A0/func_800C87B4.s new file mode 100644 index 00000000..5055484f --- /dev/null +++ b/asm/non_matchings/unknown_0C91A0/func_800C87B4.s @@ -0,0 +1,17 @@ +glabel func_800C87B4 +/* 0C93B4 800C87B4 3C0E800E */ lui $t6, %hi(D_800E3780) # $t6, 0x800e +/* 0C93B8 800C87B8 8DCE3780 */ lw $t6, %lo(D_800E3780)($t6) +/* 0C93BC 800C87BC 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C93C0 800C87C0 AFBF0014 */ sw $ra, 0x14($sp) +/* 0C93C4 800C87C4 51C00006 */ beql $t6, $zero, .L800C87E0 +/* 0C93C8 800C87C8 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C93CC 800C87CC 0C034B18 */ jal func_800D2C60 +/* 0C93D0 800C87D0 00000000 */ nop +/* 0C93D4 800C87D4 3C01800E */ lui $at, %hi(D_800E3780) # $at, 0x800e +/* 0C93D8 800C87D8 AC203780 */ sw $zero, %lo(D_800E3780)($at) +/* 0C93DC 800C87DC 8FBF0014 */ lw $ra, 0x14($sp) +.L800C87E0: +/* 0C93E0 800C87E0 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0C93E4 800C87E4 03E00008 */ jr $ra +/* 0C93E8 800C87E8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C91A0/func_800C87EC.s b/asm/non_matchings/unknown_0C91A0/func_800C87EC.s new file mode 100644 index 00000000..22d3a930 --- /dev/null +++ b/asm/non_matchings/unknown_0C91A0/func_800C87EC.s @@ -0,0 +1,16 @@ +glabel func_800C87EC +/* 0C93EC 800C87EC 3C02800E */ lui $v0, %hi(D_800E3780) # $v0, 0x800e +/* 0C93F0 800C87F0 24423780 */ addiu $v0, %lo(D_800E3780) # addiu $v0, $v0, 0x3780 +/* 0C93F4 800C87F4 8C4E0000 */ lw $t6, ($v0) +/* 0C93F8 800C87F8 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C93FC 800C87FC AFBF0014 */ sw $ra, 0x14($sp) +/* 0C9400 800C8800 55C00004 */ bnezl $t6, .L800C8814 +/* 0C9404 800C8804 8FBF0014 */ lw $ra, 0x14($sp) +/* 0C9408 800C8808 0C01944C */ jal func_80065130 +/* 0C940C 800C880C AC440000 */ sw $a0, ($v0) +/* 0C9410 800C8810 8FBF0014 */ lw $ra, 0x14($sp) +.L800C8814: +/* 0C9414 800C8814 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0C9418 800C8818 03E00008 */ jr $ra +/* 0C941C 800C881C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C91A0/osCreateMesgQueue.s b/asm/non_matchings/unknown_0C91A0/osCreateMesgQueue.s new file mode 100644 index 00000000..224b900c --- /dev/null +++ b/asm/non_matchings/unknown_0C91A0/osCreateMesgQueue.s @@ -0,0 +1,15 @@ +glabel osCreateMesgQueue +/* 0C9420 800C8820 3C0E800E */ lui $t6, %hi(D_800E4880) # $t6, 0x800e +/* 0C9424 800C8824 3C0F800E */ lui $t7, %hi(D_800E4880) # $t7, 0x800e +/* 0C9428 800C8828 25CE4880 */ addiu $t6, %lo(D_800E4880) # addiu $t6, $t6, 0x4880 +/* 0C942C 800C882C 25EF4880 */ addiu $t7, %lo(D_800E4880) # addiu $t7, $t7, 0x4880 +/* 0C9430 800C8830 AC8E0000 */ sw $t6, ($a0) +/* 0C9434 800C8834 AC8F0004 */ sw $t7, 4($a0) +/* 0C9438 800C8838 AC800008 */ sw $zero, 8($a0) +/* 0C943C 800C883C AC80000C */ sw $zero, 0xc($a0) +/* 0C9440 800C8840 AC860010 */ sw $a2, 0x10($a0) +/* 0C9444 800C8844 03E00008 */ jr $ra +/* 0C9448 800C8848 AC850014 */ sw $a1, 0x14($a0) + +/* 0C944C 800C884C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C96F0/func_800C8AF0.s b/asm/non_matchings/unknown_0C96F0/func_800C8AF0.s new file mode 100644 index 00000000..d445da0e --- /dev/null +++ b/asm/non_matchings/unknown_0C96F0/func_800C8AF0.s @@ -0,0 +1,55 @@ +glabel func_800C8AF0 +/* 0C96F0 800C8AF0 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0C96F4 800C8AF4 AFBF0024 */ sw $ra, 0x24($sp) +/* 0C96F8 800C8AF8 AFA40038 */ sw $a0, 0x38($sp) +/* 0C96FC 800C8AFC AFB20020 */ sw $s2, 0x20($sp) +/* 0C9700 800C8B00 AFB1001C */ sw $s1, 0x1c($sp) +/* 0C9704 800C8B04 0C034958 */ jal __osDisableInt +/* 0C9708 800C8B08 AFB00018 */ sw $s0, 0x18($sp) +/* 0C970C 800C8B0C 8FAE0038 */ lw $t6, 0x38($sp) +/* 0C9710 800C8B10 00408025 */ move $s0, $v0 +/* 0C9714 800C8B14 15C00003 */ bnez $t6, .L800C8B24 +/* 0C9718 800C8B18 00000000 */ nop +/* 0C971C 800C8B1C 10000003 */ b .L800C8B2C +/* 0C9720 800C8B20 24110004 */ li $s1, 4 +.L800C8B24: +/* 0C9724 800C8B24 8FAF0038 */ lw $t7, 0x38($sp) +/* 0C9728 800C8B28 95F10010 */ lhu $s1, 0x10($t7) +.L800C8B2C: +/* 0C972C 800C8B2C 02209025 */ move $s2, $s1 +/* 0C9730 800C8B30 24010002 */ li $at, 2 +/* 0C9734 800C8B34 1241000F */ beq $s2, $at, .L800C8B74 +/* 0C9738 800C8B38 24010004 */ li $at, 4 +/* 0C973C 800C8B3C 12410005 */ beq $s2, $at, .L800C8B54 +/* 0C9740 800C8B40 24010008 */ li $at, 8 +/* 0C9744 800C8B44 1241000B */ beq $s2, $at, .L800C8B74 +/* 0C9748 800C8B48 00000000 */ nop +/* 0C974C 800C8B4C 10000010 */ b .L800C8B90 +/* 0C9750 800C8B50 00000000 */ nop +.L800C8B54: +/* 0C9754 800C8B54 3C19800E */ lui $t9, %hi(D_800E4890) # $t9, 0x800e +/* 0C9758 800C8B58 8F394890 */ lw $t9, %lo(D_800E4890)($t9) +/* 0C975C 800C8B5C 24180001 */ li $t8, 1 +/* 0C9760 800C8B60 00002025 */ move $a0, $zero +/* 0C9764 800C8B64 0C034CB3 */ jal __osEnqueueAndYield +/* 0C9768 800C8B68 A7380010 */ sh $t8, 0x10($t9) +/* 0C976C 800C8B6C 10000008 */ b .L800C8B90 +/* 0C9770 800C8B70 00000000 */ nop +.L800C8B74: +/* 0C9774 800C8B74 8FA90038 */ lw $t1, 0x38($sp) +/* 0C9778 800C8B78 24080001 */ li $t0, 1 +/* 0C977C 800C8B7C A5280010 */ sh $t0, 0x10($t1) +/* 0C9780 800C8B80 8FAA0038 */ lw $t2, 0x38($sp) +/* 0C9784 800C8B84 8D440008 */ lw $a0, 8($t2) +/* 0C9788 800C8B88 0C034B1C */ jal func_800D2C70 +/* 0C978C 800C8B8C 01402825 */ move $a1, $t2 +.L800C8B90: +/* 0C9790 800C8B90 0C034960 */ jal __osRestoreInt +/* 0C9794 800C8B94 02002025 */ move $a0, $s0 +/* 0C9798 800C8B98 8FBF0024 */ lw $ra, 0x24($sp) +/* 0C979C 800C8B9C 8FB00018 */ lw $s0, 0x18($sp) +/* 0C97A0 800C8BA0 8FB1001C */ lw $s1, 0x1c($sp) +/* 0C97A4 800C8BA4 8FB20020 */ lw $s2, 0x20($sp) +/* 0C97A8 800C8BA8 03E00008 */ jr $ra +/* 0C97AC 800C8BAC 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/unknown_0C96F0.s b/asm/non_matchings/unknown_0C96F0/osRecvMesg.s old mode 100755 new mode 100644 similarity index 60% rename from asm/unknown_0C96F0.s rename to asm/non_matchings/unknown_0C96F0/osRecvMesg.s index 51baf184..a908c24c --- a/asm/unknown_0C96F0.s +++ b/asm/non_matchings/unknown_0C96F0/osRecvMesg.s @@ -1,66 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_800C8AF0 -/* 0C96F0 800C8AF0 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0C96F4 800C8AF4 AFBF0024 */ sw $ra, 0x24($sp) -/* 0C96F8 800C8AF8 AFA40038 */ sw $a0, 0x38($sp) -/* 0C96FC 800C8AFC AFB20020 */ sw $s2, 0x20($sp) -/* 0C9700 800C8B00 AFB1001C */ sw $s1, 0x1c($sp) -/* 0C9704 800C8B04 0C034958 */ jal __osDisableInt -/* 0C9708 800C8B08 AFB00018 */ sw $s0, 0x18($sp) -/* 0C970C 800C8B0C 8FAE0038 */ lw $t6, 0x38($sp) -/* 0C9710 800C8B10 00408025 */ move $s0, $v0 -/* 0C9714 800C8B14 15C00003 */ bnez $t6, .L800C8B24 -/* 0C9718 800C8B18 00000000 */ nop -/* 0C971C 800C8B1C 10000003 */ b .L800C8B2C -/* 0C9720 800C8B20 24110004 */ li $s1, 4 -.L800C8B24: -/* 0C9724 800C8B24 8FAF0038 */ lw $t7, 0x38($sp) -/* 0C9728 800C8B28 95F10010 */ lhu $s1, 0x10($t7) -.L800C8B2C: -/* 0C972C 800C8B2C 02209025 */ move $s2, $s1 -/* 0C9730 800C8B30 24010002 */ li $at, 2 -/* 0C9734 800C8B34 1241000F */ beq $s2, $at, .L800C8B74 -/* 0C9738 800C8B38 24010004 */ li $at, 4 -/* 0C973C 800C8B3C 12410005 */ beq $s2, $at, .L800C8B54 -/* 0C9740 800C8B40 24010008 */ li $at, 8 -/* 0C9744 800C8B44 1241000B */ beq $s2, $at, .L800C8B74 -/* 0C9748 800C8B48 00000000 */ nop -/* 0C974C 800C8B4C 10000010 */ b .L800C8B90 -/* 0C9750 800C8B50 00000000 */ nop -.L800C8B54: -/* 0C9754 800C8B54 3C19800E */ lui $t9, %hi(D_800E4890) # $t9, 0x800e -/* 0C9758 800C8B58 8F394890 */ lw $t9, %lo(D_800E4890)($t9) -/* 0C975C 800C8B5C 24180001 */ li $t8, 1 -/* 0C9760 800C8B60 00002025 */ move $a0, $zero -/* 0C9764 800C8B64 0C034CB3 */ jal __osEnqueueAndYield -/* 0C9768 800C8B68 A7380010 */ sh $t8, 0x10($t9) -/* 0C976C 800C8B6C 10000008 */ b .L800C8B90 -/* 0C9770 800C8B70 00000000 */ nop -.L800C8B74: -/* 0C9774 800C8B74 8FA90038 */ lw $t1, 0x38($sp) -/* 0C9778 800C8B78 24080001 */ li $t0, 1 -/* 0C977C 800C8B7C A5280010 */ sh $t0, 0x10($t1) -/* 0C9780 800C8B80 8FAA0038 */ lw $t2, 0x38($sp) -/* 0C9784 800C8B84 8D440008 */ lw $a0, 8($t2) -/* 0C9788 800C8B88 0C034B1C */ jal func_800D2C70 -/* 0C978C 800C8B8C 01402825 */ move $a1, $t2 -.L800C8B90: -/* 0C9790 800C8B90 0C034960 */ jal __osRestoreInt -/* 0C9794 800C8B94 02002025 */ move $a0, $s0 -/* 0C9798 800C8B98 8FBF0024 */ lw $ra, 0x24($sp) -/* 0C979C 800C8B9C 8FB00018 */ lw $s0, 0x18($sp) -/* 0C97A0 800C8BA0 8FB1001C */ lw $s1, 0x1c($sp) -/* 0C97A4 800C8BA4 8FB20020 */ lw $s2, 0x20($sp) -/* 0C97A8 800C8BA8 03E00008 */ jr $ra -/* 0C97AC 800C8BAC 27BD0038 */ addiu $sp, $sp, 0x38 - glabel osRecvMesg /* 0C97B0 800C8BB0 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0C97B4 800C8BB4 AFBF001C */ sw $ra, 0x1c($sp) @@ -151,3 +88,4 @@ glabel osRecvMesg /* 0C98E8 800C8CE8 00000000 */ nop /* 0C98EC 800C8CEC 00000000 */ nop + diff --git a/asm/unknown_0C98F0.s b/asm/non_matchings/unknown_0C98F0/func_800C8CF0.s old mode 100755 new mode 100644 similarity index 89% rename from asm/unknown_0C98F0.s rename to asm/non_matchings/unknown_0C98F0/func_800C8CF0.s index fe746ca5..5645aa28 --- a/asm/unknown_0C98F0.s +++ b/asm/non_matchings/unknown_0C98F0/func_800C8CF0.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C8CF0 /* 0C98F0 800C8CF0 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 0C98F4 800C8CF4 AFA40018 */ sw $a0, 0x18($sp) @@ -43,3 +35,4 @@ glabel func_800C8CF0 /* 0C9968 800C8D68 00000000 */ nop /* 0C996C 800C8D6C 00000000 */ nop + diff --git a/asm/unknown_0C9970.s b/asm/non_matchings/unknown_0C9970/func_800C8D70.s old mode 100755 new mode 100644 similarity index 92% rename from asm/unknown_0C9970.s rename to asm/non_matchings/unknown_0C9970/func_800C8D70.s index b405e61f..552080b6 --- a/asm/unknown_0C9970.s +++ b/asm/non_matchings/unknown_0C9970/func_800C8D70.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C8D70 /* 0C9970 800C8D70 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 0C9974 800C8D74 3C0F800E */ lui $t7, %hi(D_800E3790) # $t7, 0x800e @@ -57,3 +49,4 @@ glabel func_800C8D70 /* 0C9A18 800C8E18 00000000 */ nop /* 0C9A1C 800C8E1C 00000000 */ nop + diff --git a/asm/unknown_0C9A20.s b/asm/non_matchings/unknown_0C9A20/func_800C8E20.s old mode 100755 new mode 100644 similarity index 50% rename from asm/unknown_0C9A20.s rename to asm/non_matchings/unknown_0C9A20/func_800C8E20.s index b755fee8..56289001 --- a/asm/unknown_0C9A20.s +++ b/asm/non_matchings/unknown_0C9A20/func_800C8E20.s @@ -1,14 +1,7 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C8E20 /* 0C9A20 800C8E20 3C0EA450 */ lui $t6, 0xa450 /* 0C9A24 800C8E24 03E00008 */ jr $ra /* 0C9A28 800C8E28 8DC20004 */ lw $v0, 4($t6) /* 0C9A2C 800C8E2C 00000000 */ nop + diff --git a/asm/unknown_0C9A30.s b/asm/non_matchings/unknown_0C9A30/func_800C8E30.s old mode 100755 new mode 100644 similarity index 95% rename from asm/unknown_0C9A30.s rename to asm/non_matchings/unknown_0C9A30/func_800C8E30.s index c802611c..1059ecde --- a/asm/unknown_0C9A30.s +++ b/asm/non_matchings/unknown_0C9A30/func_800C8E30.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C8E30 /* 0C9A30 800C8E30 27BDFFC8 */ addiu $sp, $sp, -0x38 /* 0C9A34 800C8E34 AFBF0024 */ sw $ra, 0x24($sp) @@ -100,3 +92,4 @@ glabel func_800C8E30 /* 0C9B78 800C8F78 27BD0038 */ addiu $sp, $sp, 0x38 /* 0C9B7C 800C8F7C 00000000 */ nop + diff --git a/asm/unknown_0C9B80.s b/asm/non_matchings/unknown_0C9B80/func_800C8F80.s old mode 100755 new mode 100644 similarity index 94% rename from asm/unknown_0C9B80.s rename to asm/non_matchings/unknown_0C9B80/func_800C8F80.s index 115811b4..39134373 --- a/asm/unknown_0C9B80.s +++ b/asm/non_matchings/unknown_0C9B80/func_800C8F80.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C8F80 /* 0C9B80 800C8F80 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0C9B84 800C8F84 3C0E800E */ lui $t6, %hi(D_800E3740) # $t6, 0x800e @@ -82,3 +74,4 @@ glabel func_800C8F80 /* 0C9C88 800C9088 27BD0028 */ addiu $sp, $sp, 0x28 /* 0C9C8C 800C908C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C9C90/func_800C9090.s b/asm/non_matchings/unknown_0C9C90/func_800C9090.s new file mode 100644 index 00000000..f8491b2e --- /dev/null +++ b/asm/non_matchings/unknown_0C9C90/func_800C9090.s @@ -0,0 +1,80 @@ +glabel func_800C9090 +/* 0C9C90 800C9090 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 0C9C94 800C9094 AFB30020 */ sw $s3, 0x20($sp) +/* 0C9C98 800C9098 00059C00 */ sll $s3, $a1, 0x10 +/* 0C9C9C 800C909C AFB2001C */ sw $s2, 0x1c($sp) +/* 0C9CA0 800C90A0 00809025 */ move $s2, $a0 +/* 0C9CA4 800C90A4 00137403 */ sra $t6, $s3, 0x10 +/* 0C9CA8 800C90A8 AFBF0024 */ sw $ra, 0x24($sp) +/* 0C9CAC 800C90AC 01C09825 */ move $s3, $t6 +/* 0C9CB0 800C90B0 AFB10018 */ sw $s1, 0x18($sp) +/* 0C9CB4 800C90B4 AFB00014 */ sw $s0, 0x14($sp) +/* 0C9CB8 800C90B8 AFA50044 */ sw $a1, 0x44($sp) +/* 0C9CBC 800C90BC 0C03268C */ jal func_800C9A30 +/* 0C9CC0 800C90C0 24040001 */ li $a0, 1 +/* 0C9CC4 800C90C4 AFA2002C */ sw $v0, 0x2c($sp) +/* 0C9CC8 800C90C8 8E500008 */ lw $s0, 8($s2) +/* 0C9CCC 800C90CC 12000012 */ beqz $s0, .L800C9118 +/* 0C9CD0 800C90D0 00000000 */ nop +.L800C90D4: +/* 0C9CD4 800C90D4 860F000C */ lh $t7, 0xc($s0) +/* 0C9CD8 800C90D8 8E110000 */ lw $s1, ($s0) +/* 0C9CDC 800C90DC 166F000C */ bne $s3, $t7, .L800C9110 +/* 0C9CE0 800C90E0 00000000 */ nop +/* 0C9CE4 800C90E4 12200005 */ beqz $s1, .L800C90FC +/* 0C9CE8 800C90E8 00000000 */ nop +/* 0C9CEC 800C90EC 8E380008 */ lw $t8, 8($s1) +/* 0C9CF0 800C90F0 8E190008 */ lw $t9, 8($s0) +/* 0C9CF4 800C90F4 03194021 */ addu $t0, $t8, $t9 +/* 0C9CF8 800C90F8 AE280008 */ sw $t0, 8($s1) +.L800C90FC: +/* 0C9CFC 800C90FC 0C0321D8 */ jal func_800C8760 +/* 0C9D00 800C9100 02002025 */ move $a0, $s0 +/* 0C9D04 800C9104 02002025 */ move $a0, $s0 +/* 0C9D08 800C9108 0C0321E4 */ jal func_800C8790 +/* 0C9D0C 800C910C 02402825 */ move $a1, $s2 +.L800C9110: +/* 0C9D10 800C9110 1620FFF0 */ bnez $s1, .L800C90D4 +/* 0C9D14 800C9114 02208025 */ move $s0, $s1 +.L800C9118: +/* 0C9D18 800C9118 0C03268C */ jal func_800C9A30 +/* 0C9D1C 800C911C 8FA4002C */ lw $a0, 0x2c($sp) +/* 0C9D20 800C9120 8FBF0024 */ lw $ra, 0x24($sp) +/* 0C9D24 800C9124 8FB00014 */ lw $s0, 0x14($sp) +/* 0C9D28 800C9128 8FB10018 */ lw $s1, 0x18($sp) +/* 0C9D2C 800C912C 8FB2001C */ lw $s2, 0x1c($sp) +/* 0C9D30 800C9130 8FB30020 */ lw $s3, 0x20($sp) +/* 0C9D34 800C9134 03E00008 */ jr $ra +/* 0C9D38 800C9138 27BD0040 */ addiu $sp, $sp, 0x40 + +/* 0C9D3C 800C913C 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0C9D40 800C9140 AFB20020 */ sw $s2, 0x20($sp) +/* 0C9D44 800C9144 00809025 */ move $s2, $a0 +/* 0C9D48 800C9148 AFBF0024 */ sw $ra, 0x24($sp) +/* 0C9D4C 800C914C AFB1001C */ sw $s1, 0x1c($sp) +/* 0C9D50 800C9150 AFB00018 */ sw $s0, 0x18($sp) +/* 0C9D54 800C9154 0C03268C */ jal func_800C9A30 +/* 0C9D58 800C9158 24040001 */ li $a0, 1 +/* 0C9D5C 800C915C AFA2002C */ sw $v0, 0x2c($sp) +/* 0C9D60 800C9160 8E500008 */ lw $s0, 8($s2) +/* 0C9D64 800C9164 12000009 */ beqz $s0, .L800C918C +/* 0C9D68 800C9168 00000000 */ nop +.L800C916C: +/* 0C9D6C 800C916C 8E110000 */ lw $s1, ($s0) +/* 0C9D70 800C9170 0C0321D8 */ jal func_800C8760 +/* 0C9D74 800C9174 02002025 */ move $a0, $s0 +/* 0C9D78 800C9178 02002025 */ move $a0, $s0 +/* 0C9D7C 800C917C 0C0321E4 */ jal func_800C8790 +/* 0C9D80 800C9180 02402825 */ move $a1, $s2 +/* 0C9D84 800C9184 1620FFF9 */ bnez $s1, .L800C916C +/* 0C9D88 800C9188 02208025 */ move $s0, $s1 +.L800C918C: +/* 0C9D8C 800C918C 0C03268C */ jal func_800C9A30 +/* 0C9D90 800C9190 8FA4002C */ lw $a0, 0x2c($sp) +/* 0C9D94 800C9194 8FBF0024 */ lw $ra, 0x24($sp) +/* 0C9D98 800C9198 8FB00018 */ lw $s0, 0x18($sp) +/* 0C9D9C 800C919C 8FB1001C */ lw $s1, 0x1c($sp) +/* 0C9DA0 800C91A0 8FB20020 */ lw $s2, 0x20($sp) +/* 0C9DA4 800C91A4 03E00008 */ jr $ra +/* 0C9DA8 800C91A8 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_0C9C90/func_800C91AC.s b/asm/non_matchings/unknown_0C9C90/func_800C91AC.s new file mode 100644 index 00000000..63b3daee --- /dev/null +++ b/asm/non_matchings/unknown_0C9C90/func_800C91AC.s @@ -0,0 +1,83 @@ +glabel func_800C91AC +/* 0C9DAC 800C91AC 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0C9DB0 800C91B0 AFBF0014 */ sw $ra, 0x14($sp) +/* 0C9DB4 800C91B4 AFA40030 */ sw $a0, 0x30($sp) +/* 0C9DB8 800C91B8 AFA50034 */ sw $a1, 0x34($sp) +/* 0C9DBC 800C91BC AFA00020 */ sw $zero, 0x20($sp) +/* 0C9DC0 800C91C0 24040001 */ li $a0, 1 +/* 0C9DC4 800C91C4 0C03268C */ jal func_800C9A30 +/* 0C9DC8 800C91C8 AFA60038 */ sw $a2, 0x38($sp) +/* 0C9DCC 800C91CC 8FAE0030 */ lw $t6, 0x30($sp) +/* 0C9DD0 800C91D0 8FA70038 */ lw $a3, 0x38($sp) +/* 0C9DD4 800C91D4 00402825 */ move $a1, $v0 +/* 0C9DD8 800C91D8 8DC80000 */ lw $t0, ($t6) +/* 0C9DDC 800C91DC 15000005 */ bnez $t0, .L800C91F4 +/* 0C9DE0 800C91E0 01002025 */ move $a0, $t0 +/* 0C9DE4 800C91E4 0C03268C */ jal func_800C9A30 +/* 0C9DE8 800C91E8 00402025 */ move $a0, $v0 +/* 0C9DEC 800C91EC 10000035 */ b .L800C92C4 +/* 0C9DF0 800C91F0 8FBF0014 */ lw $ra, 0x14($sp) +.L800C91F4: +/* 0C9DF4 800C91F4 AFA5001C */ sw $a1, 0x1c($sp) +/* 0C9DF8 800C91F8 AFA70038 */ sw $a3, 0x38($sp) +/* 0C9DFC 800C91FC 0C0321D8 */ jal func_800C8760 +/* 0C9E00 800C9200 AFA8002C */ sw $t0, 0x2c($sp) +/* 0C9E04 800C9204 8FA8002C */ lw $t0, 0x2c($sp) +/* 0C9E08 800C9208 8FA40034 */ lw $a0, 0x34($sp) +/* 0C9E0C 800C920C 24060010 */ li $a2, 16 +/* 0C9E10 800C9210 0C034E08 */ jal func_800D3820 +/* 0C9E14 800C9214 2505000C */ addiu $a1, $t0, 0xc +/* 0C9E18 800C9218 8FA70038 */ lw $a3, 0x38($sp) +/* 0C9E1C 800C921C 3C017FFF */ lui $at, (0x7FFFFFFF >> 16) # lui $at, 0x7fff +/* 0C9E20 800C9220 3421FFFF */ ori $at, (0x7FFFFFFF & 0xFFFF) # ori $at, $at, 0xffff +/* 0C9E24 800C9224 14E10003 */ bne $a3, $at, .L800C9234 +/* 0C9E28 800C9228 8FA8002C */ lw $t0, 0x2c($sp) +/* 0C9E2C 800C922C 240FFFFF */ li $t7, -1 +/* 0C9E30 800C9230 AFAF0020 */ sw $t7, 0x20($sp) +.L800C9234: +/* 0C9E34 800C9234 8FA20030 */ lw $v0, 0x30($sp) +/* 0C9E38 800C9238 2401FFF8 */ li $at, -8 +/* 0C9E3C 800C923C 8FB80020 */ lw $t8, 0x20($sp) +/* 0C9E40 800C9240 1041001D */ beq $v0, $at, .L800C92B8 +/* 0C9E44 800C9244 24450008 */ addiu $a1, $v0, 8 +.L800C9248: +/* 0C9E48 800C9248 8CA20000 */ lw $v0, ($a1) +/* 0C9E4C 800C924C 5440000B */ bnezl $v0, .L800C927C +/* 0C9E50 800C9250 8C430008 */ lw $v1, 8($v0) +/* 0C9E54 800C9254 53000004 */ beql $t8, $zero, .L800C9268 +/* 0C9E58 800C9258 AD070008 */ sw $a3, 8($t0) +/* 0C9E5C 800C925C 10000002 */ b .L800C9268 +/* 0C9E60 800C9260 AD000008 */ sw $zero, 8($t0) +/* 0C9E64 800C9264 AD070008 */ sw $a3, 8($t0) +.L800C9268: +/* 0C9E68 800C9268 0C0321E4 */ jal func_800C8790 +/* 0C9E6C 800C926C 01002025 */ move $a0, $t0 +/* 0C9E70 800C9270 10000011 */ b .L800C92B8 +/* 0C9E74 800C9274 00000000 */ nop +/* 0C9E78 800C9278 8C430008 */ lw $v1, 8($v0) +.L800C927C: +/* 0C9E7C 800C927C 00403025 */ move $a2, $v0 +/* 0C9E80 800C9280 00E3082A */ slt $at, $a3, $v1 +/* 0C9E84 800C9284 5020000A */ beql $at, $zero, .L800C92B0 +/* 0C9E88 800C9288 00402825 */ move $a1, $v0 +/* 0C9E8C 800C928C AD070008 */ sw $a3, 8($t0) +/* 0C9E90 800C9290 8CD90008 */ lw $t9, 8($a2) +/* 0C9E94 800C9294 01002025 */ move $a0, $t0 +/* 0C9E98 800C9298 03274823 */ subu $t1, $t9, $a3 +/* 0C9E9C 800C929C 0C0321E4 */ jal func_800C8790 +/* 0C9EA0 800C92A0 ACC90008 */ sw $t1, 8($a2) +/* 0C9EA4 800C92A4 10000004 */ b .L800C92B8 +/* 0C9EA8 800C92A8 00000000 */ nop +/* 0C9EAC 800C92AC 00402825 */ move $a1, $v0 +.L800C92B0: +/* 0C9EB0 800C92B0 1440FFE5 */ bnez $v0, .L800C9248 +/* 0C9EB4 800C92B4 00E33823 */ subu $a3, $a3, $v1 +.L800C92B8: +/* 0C9EB8 800C92B8 0C03268C */ jal func_800C9A30 +/* 0C9EBC 800C92BC 8FA4001C */ lw $a0, 0x1c($sp) +/* 0C9EC0 800C92C0 8FBF0014 */ lw $ra, 0x14($sp) +.L800C92C4: +/* 0C9EC4 800C92C4 27BD0030 */ addiu $sp, $sp, 0x30 +/* 0C9EC8 800C92C8 03E00008 */ jr $ra +/* 0C9ECC 800C92CC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C9C90/func_800C92D0.s b/asm/non_matchings/unknown_0C9C90/func_800C92D0.s new file mode 100644 index 00000000..a01017b8 --- /dev/null +++ b/asm/non_matchings/unknown_0C9C90/func_800C92D0.s @@ -0,0 +1,39 @@ +glabel func_800C92D0 +/* 0C9ED0 800C92D0 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0C9ED4 800C92D4 AFBF001C */ sw $ra, 0x1c($sp) +/* 0C9ED8 800C92D8 AFA40030 */ sw $a0, 0x30($sp) +/* 0C9EDC 800C92DC AFB00018 */ sw $s0, 0x18($sp) +/* 0C9EE0 800C92E0 AFA50034 */ sw $a1, 0x34($sp) +/* 0C9EE4 800C92E4 0C03268C */ jal func_800C9A30 +/* 0C9EE8 800C92E8 24040001 */ li $a0, 1 +/* 0C9EEC 800C92EC 8FAE0030 */ lw $t6, 0x30($sp) +/* 0C9EF0 800C92F0 AFA20024 */ sw $v0, 0x24($sp) +/* 0C9EF4 800C92F4 8FB80034 */ lw $t8, 0x34($sp) +/* 0C9EF8 800C92F8 8DD00008 */ lw $s0, 8($t6) +/* 0C9EFC 800C92FC 00001825 */ move $v1, $zero +/* 0C9F00 800C9300 5200000D */ beql $s0, $zero, .L800C9338 +/* 0C9F04 800C9304 240FFFFF */ li $t7, -1 +/* 0C9F08 800C9308 0C0321D8 */ jal func_800C8760 +/* 0C9F0C 800C930C 02002025 */ move $a0, $s0 +/* 0C9F10 800C9310 2604000C */ addiu $a0, $s0, 0xc +/* 0C9F14 800C9314 8FA50034 */ lw $a1, 0x34($sp) +/* 0C9F18 800C9318 0C034E08 */ jal func_800D3820 +/* 0C9F1C 800C931C 24060010 */ li $a2, 16 +/* 0C9F20 800C9320 02002025 */ move $a0, $s0 +/* 0C9F24 800C9324 0C0321E4 */ jal func_800C8790 +/* 0C9F28 800C9328 8FA50030 */ lw $a1, 0x30($sp) +/* 0C9F2C 800C932C 10000003 */ b .L800C933C +/* 0C9F30 800C9330 8E030008 */ lw $v1, 8($s0) +/* 0C9F34 800C9334 240FFFFF */ li $t7, -1 +.L800C9338: +/* 0C9F38 800C9338 A70F0000 */ sh $t7, ($t8) +.L800C933C: +/* 0C9F3C 800C933C 8FA40024 */ lw $a0, 0x24($sp) +/* 0C9F40 800C9340 0C03268C */ jal func_800C9A30 +/* 0C9F44 800C9344 AFA30028 */ sw $v1, 0x28($sp) +/* 0C9F48 800C9348 8FBF001C */ lw $ra, 0x1c($sp) +/* 0C9F4C 800C934C 8FA20028 */ lw $v0, 0x28($sp) +/* 0C9F50 800C9350 8FB00018 */ lw $s0, 0x18($sp) +/* 0C9F54 800C9354 03E00008 */ jr $ra +/* 0C9F58 800C9358 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_0C9C90/func_800C935C.s b/asm/non_matchings/unknown_0C9C90/func_800C935C.s new file mode 100644 index 00000000..32e8695e --- /dev/null +++ b/asm/non_matchings/unknown_0C9C90/func_800C935C.s @@ -0,0 +1,33 @@ +glabel func_800C935C +/* 0C9F5C 800C935C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0C9F60 800C9360 AFB30020 */ sw $s3, 0x20($sp) +/* 0C9F64 800C9364 AFB2001C */ sw $s2, 0x1c($sp) +/* 0C9F68 800C9368 AFB00014 */ sw $s0, 0x14($sp) +/* 0C9F6C 800C936C AFBF0024 */ sw $ra, 0x24($sp) +/* 0C9F70 800C9370 AFB10018 */ sw $s1, 0x18($sp) +/* 0C9F74 800C9374 00809025 */ move $s2, $a0 +/* 0C9F78 800C9378 00C09825 */ move $s3, $a2 +/* 0C9F7C 800C937C AC800010 */ sw $zero, 0x10($a0) +/* 0C9F80 800C9380 AC800008 */ sw $zero, 8($a0) +/* 0C9F84 800C9384 AC80000C */ sw $zero, 0xc($a0) +/* 0C9F88 800C9388 AC800000 */ sw $zero, ($a0) +/* 0C9F8C 800C938C AC800004 */ sw $zero, 4($a0) +/* 0C9F90 800C9390 18C00008 */ blez $a2, .L800C93B4 +/* 0C9F94 800C9394 00008025 */ move $s0, $zero +/* 0C9F98 800C9398 00A08825 */ move $s1, $a1 +.L800C939C: +/* 0C9F9C 800C939C 02202025 */ move $a0, $s1 +/* 0C9FA0 800C93A0 0C0321E4 */ jal func_800C8790 +/* 0C9FA4 800C93A4 02402825 */ move $a1, $s2 +/* 0C9FA8 800C93A8 26100001 */ addiu $s0, $s0, 1 +/* 0C9FAC 800C93AC 1613FFFB */ bne $s0, $s3, .L800C939C +/* 0C9FB0 800C93B0 2631001C */ addiu $s1, $s1, 0x1c +.L800C93B4: +/* 0C9FB4 800C93B4 8FBF0024 */ lw $ra, 0x24($sp) +/* 0C9FB8 800C93B8 8FB00014 */ lw $s0, 0x14($sp) +/* 0C9FBC 800C93BC 8FB10018 */ lw $s1, 0x18($sp) +/* 0C9FC0 800C93C0 8FB2001C */ lw $s2, 0x1c($sp) +/* 0C9FC4 800C93C4 8FB30020 */ lw $s3, 0x20($sp) +/* 0C9FC8 800C93C8 03E00008 */ jr $ra +/* 0C9FCC 800C93CC 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_0C9C90/func_800C93D0.s b/asm/non_matchings/unknown_0C9C90/func_800C93D0.s new file mode 100644 index 00000000..d2a96d41 --- /dev/null +++ b/asm/non_matchings/unknown_0C9C90/func_800C93D0.s @@ -0,0 +1,22 @@ +glabel func_800C93D0 +/* 0C9FD0 800C93D0 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0C9FD4 800C93D4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0C9FD8 800C93D8 00803025 */ move $a2, $a0 +/* 0C9FDC 800C93DC AFA60018 */ sw $a2, 0x18($sp) +/* 0C9FE0 800C93E0 24040001 */ li $a0, 1 +/* 0C9FE4 800C93E4 0C03268C */ jal func_800C9A30 +/* 0C9FE8 800C93E8 AFA5001C */ sw $a1, 0x1c($sp) +/* 0C9FEC 800C93EC 8FA60018 */ lw $a2, 0x18($sp) +/* 0C9FF0 800C93F0 8FA5001C */ lw $a1, 0x1c($sp) +/* 0C9FF4 800C93F4 00402025 */ move $a0, $v0 +/* 0C9FF8 800C93F8 8CCE0020 */ lw $t6, 0x20($a2) +/* 0C9FFC 800C93FC ACAE0010 */ sw $t6, 0x10($a1) +/* 0CA000 800C9400 8CCF0000 */ lw $t7, ($a2) +/* 0CA004 800C9404 ACAF0000 */ sw $t7, ($a1) +/* 0CA008 800C9408 0C03268C */ jal func_800C9A30 +/* 0CA00C 800C940C ACC50000 */ sw $a1, ($a2) +/* 0CA010 800C9410 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CA014 800C9414 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0CA018 800C9418 03E00008 */ jr $ra +/* 0CA01C 800C941C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C9C90/func_800C9420.s b/asm/non_matchings/unknown_0C9C90/func_800C9420.s new file mode 100644 index 00000000..eaa916c5 --- /dev/null +++ b/asm/non_matchings/unknown_0C9C90/func_800C9420.s @@ -0,0 +1,66 @@ +glabel func_800C9420 +/* 0CA020 800C9420 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0CA024 800C9424 AFBF0014 */ sw $ra, 0x14($sp) +/* 0CA028 800C9428 AFA60030 */ sw $a2, 0x30($sp) +/* 0CA02C 800C942C 8C870014 */ lw $a3, 0x14($a0) +/* 0CA030 800C9430 00067400 */ sll $t6, $a2, 0x10 +/* 0CA034 800C9434 000E3403 */ sra $a2, $t6, 0x10 +/* 0CA038 800C9438 00804025 */ move $t0, $a0 +/* 0CA03C 800C943C 10E0000D */ beqz $a3, .L800C9474 +/* 0CA040 800C9440 00001825 */ move $v1, $zero +/* 0CA044 800C9444 ACA70000 */ sw $a3, ($a1) +/* 0CA048 800C9448 AFA80028 */ sw $t0, 0x28($sp) +/* 0CA04C 800C944C AFA70024 */ sw $a3, 0x24($sp) +/* 0CA050 800C9450 AFA0001C */ sw $zero, 0x1c($sp) +/* 0CA054 800C9454 0C0321D8 */ jal func_800C8760 +/* 0CA058 800C9458 00E02025 */ move $a0, $a3 +/* 0CA05C 800C945C 8FA80028 */ lw $t0, 0x28($sp) +/* 0CA060 800C9460 8FA40024 */ lw $a0, 0x24($sp) +/* 0CA064 800C9464 0C0321E4 */ jal func_800C8790 +/* 0CA068 800C9468 2505000C */ addiu $a1, $t0, 0xc +/* 0CA06C 800C946C 10000021 */ b .L800C94F4 +/* 0CA070 800C9470 8FA3001C */ lw $v1, 0x1c($sp) +.L800C9474: +/* 0CA074 800C9474 8D070004 */ lw $a3, 4($t0) +/* 0CA078 800C9478 10E0000C */ beqz $a3, .L800C94AC +/* 0CA07C 800C947C 00E02025 */ move $a0, $a3 +/* 0CA080 800C9480 ACA70000 */ sw $a3, ($a1) +/* 0CA084 800C9484 AFA80028 */ sw $t0, 0x28($sp) +/* 0CA088 800C9488 AFA70024 */ sw $a3, 0x24($sp) +/* 0CA08C 800C948C 0C0321D8 */ jal func_800C8760 +/* 0CA090 800C9490 AFA3001C */ sw $v1, 0x1c($sp) +/* 0CA094 800C9494 8FA80028 */ lw $t0, 0x28($sp) +/* 0CA098 800C9498 8FA40024 */ lw $a0, 0x24($sp) +/* 0CA09C 800C949C 0C0321E4 */ jal func_800C8790 +/* 0CA0A0 800C94A0 2505000C */ addiu $a1, $t0, 0xc +/* 0CA0A4 800C94A4 10000013 */ b .L800C94F4 +/* 0CA0A8 800C94A8 8FA3001C */ lw $v1, 0x1c($sp) +.L800C94AC: +/* 0CA0AC 800C94AC 8D07000C */ lw $a3, 0xc($t0) +/* 0CA0B0 800C94B0 50E00011 */ beql $a3, $zero, .L800C94F8 +/* 0CA0B4 800C94B4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CA0B8 800C94B8 8CF80008 */ lw $t8, 8($a3) +.L800C94BC: +/* 0CA0BC 800C94BC 87190016 */ lh $t9, 0x16($t8) +/* 0CA0C0 800C94C0 00D9082A */ slt $at, $a2, $t9 +/* 0CA0C4 800C94C4 54200009 */ bnezl $at, .L800C94EC +/* 0CA0C8 800C94C8 8CE70000 */ lw $a3, ($a3) +/* 0CA0CC 800C94CC 8CE900D8 */ lw $t1, 0xd8($a3) +/* 0CA0D0 800C94D0 55200006 */ bnezl $t1, .L800C94EC +/* 0CA0D4 800C94D4 8CE70000 */ lw $a3, ($a3) +/* 0CA0D8 800C94D8 ACA70000 */ sw $a3, ($a1) +/* 0CA0DC 800C94DC 8CEA0008 */ lw $t2, 8($a3) +/* 0CA0E0 800C94E0 24030001 */ li $v1, 1 +/* 0CA0E4 800C94E4 85460016 */ lh $a2, 0x16($t2) +/* 0CA0E8 800C94E8 8CE70000 */ lw $a3, ($a3) +.L800C94EC: +/* 0CA0EC 800C94EC 54E0FFF3 */ bnezl $a3, .L800C94BC +/* 0CA0F0 800C94F0 8CF80008 */ lw $t8, 8($a3) +.L800C94F4: +/* 0CA0F4 800C94F4 8FBF0014 */ lw $ra, 0x14($sp) +.L800C94F8: +/* 0CA0F8 800C94F8 27BD0028 */ addiu $sp, $sp, 0x28 +/* 0CA0FC 800C94FC 00601025 */ move $v0, $v1 +/* 0CA100 800C9500 03E00008 */ jr $ra +/* 0CA104 800C9504 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0C9C90/func_800C9508.s b/asm/non_matchings/unknown_0C9C90/func_800C9508.s new file mode 100644 index 00000000..6bc646d9 --- /dev/null +++ b/asm/non_matchings/unknown_0C9C90/func_800C9508.s @@ -0,0 +1,89 @@ +glabel func_800C9508 +/* 0CA108 800C9508 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0CA10C 800C950C AFBF001C */ sw $ra, 0x1c($sp) +/* 0CA110 800C9510 AFB00018 */ sw $s0, 0x18($sp) +/* 0CA114 800C9514 AFA40030 */ sw $a0, 0x30($sp) +/* 0CA118 800C9518 AFA0002C */ sw $zero, 0x2c($sp) +/* 0CA11C 800C951C 84CE0000 */ lh $t6, ($a2) +/* 0CA120 800C9520 00A08025 */ move $s0, $a1 +/* 0CA124 800C9524 A4AE0016 */ sh $t6, 0x16($a1) +/* 0CA128 800C9528 90CF0004 */ lbu $t7, 4($a2) +/* 0CA12C 800C952C ACA0000C */ sw $zero, 0xc($a1) +/* 0CA130 800C9530 A4AF001A */ sh $t7, 0x1a($a1) +/* 0CA134 800C9534 84D80002 */ lh $t8, 2($a2) +/* 0CA138 800C9538 A4A00014 */ sh $zero, 0x14($a1) +/* 0CA13C 800C953C ACA00008 */ sw $zero, 8($a1) +/* 0CA140 800C9540 A4B80018 */ sh $t8, 0x18($a1) +/* 0CA144 800C9544 84C60000 */ lh $a2, ($a2) +/* 0CA148 800C9548 8FA40030 */ lw $a0, 0x30($sp) +/* 0CA14C 800C954C 0C032508 */ jal func_800C9420 +/* 0CA150 800C9550 27A5002C */ addiu $a1, $sp, 0x2c +/* 0CA154 800C9554 8FB9002C */ lw $t9, 0x2c($sp) +/* 0CA158 800C9558 53200035 */ beql $t9, $zero, .L800C9630 +/* 0CA15C 800C955C 8FA2002C */ lw $v0, 0x2c($sp) +/* 0CA160 800C9560 1040002C */ beqz $v0, .L800C9614 +/* 0CA164 800C9564 8F24000C */ lw $a0, 0xc($t9) +/* 0CA168 800C9568 24080200 */ li $t0, 512 +/* 0CA16C 800C956C AF2800D8 */ sw $t0, 0xd8($t9) +/* 0CA170 800C9570 8FA9002C */ lw $t1, 0x2c($sp) +/* 0CA174 800C9574 8D2A0008 */ lw $t2, 8($t1) +/* 0CA178 800C9578 AD400008 */ sw $zero, 8($t2) +/* 0CA17C 800C957C 0C01959A */ jal func_80065668 +/* 0CA180 800C9580 AFA40028 */ sw $a0, 0x28($sp) +/* 0CA184 800C9584 8FAB0030 */ lw $t3, 0x30($sp) +/* 0CA188 800C9588 8FA40028 */ lw $a0, 0x28($sp) +/* 0CA18C 800C958C 240D000B */ li $t5, 11 +/* 0CA190 800C9590 8D6C001C */ lw $t4, 0x1c($t3) +/* 0CA194 800C9594 A44D0008 */ sh $t5, 8($v0) +/* 0CA198 800C9598 AC40000C */ sw $zero, 0xc($v0) +/* 0CA19C 800C959C AC4C0004 */ sw $t4, 4($v0) +/* 0CA1A0 800C95A0 8FAE002C */ lw $t6, 0x2c($sp) +/* 0CA1A4 800C95A4 24050003 */ li $a1, 3 +/* 0CA1A8 800C95A8 00403025 */ move $a2, $v0 +/* 0CA1AC 800C95AC 8DCF00D8 */ lw $t7, 0xd8($t6) +/* 0CA1B0 800C95B0 25F8FFC0 */ addiu $t8, $t7, -0x40 +/* 0CA1B4 800C95B4 AC580010 */ sw $t8, 0x10($v0) +/* 0CA1B8 800C95B8 8C990008 */ lw $t9, 8($a0) +/* 0CA1BC 800C95BC 0320F809 */ jalr $t9 +/* 0CA1C0 800C95C0 00000000 */ nop +/* 0CA1C4 800C95C4 0C01959A */ jal func_80065668 +/* 0CA1C8 800C95C8 00000000 */ nop +/* 0CA1CC 800C95CC 8FA40028 */ lw $a0, 0x28($sp) +/* 0CA1D0 800C95D0 10400012 */ beqz $v0, .L800C961C +/* 0CA1D4 800C95D4 00403025 */ move $a2, $v0 +/* 0CA1D8 800C95D8 8FA80030 */ lw $t0, 0x30($sp) +/* 0CA1DC 800C95DC 8FAA002C */ lw $t2, 0x2c($sp) +/* 0CA1E0 800C95E0 240D000F */ li $t5, 15 +/* 0CA1E4 800C95E4 8D09001C */ lw $t1, 0x1c($t0) +/* 0CA1E8 800C95E8 8D4B00D8 */ lw $t3, 0xd8($t2) +/* 0CA1EC 800C95EC A44D0008 */ sh $t5, 8($v0) +/* 0CA1F0 800C95F0 AC400000 */ sw $zero, ($v0) +/* 0CA1F4 800C95F4 012B6021 */ addu $t4, $t1, $t3 +/* 0CA1F8 800C95F8 AC4C0004 */ sw $t4, 4($v0) +/* 0CA1FC 800C95FC 8C990008 */ lw $t9, 8($a0) +/* 0CA200 800C9600 24050003 */ li $a1, 3 +/* 0CA204 800C9604 0320F809 */ jalr $t9 +/* 0CA208 800C9608 00000000 */ nop +/* 0CA20C 800C960C 10000004 */ b .L800C9620 +/* 0CA210 800C9610 8FAF002C */ lw $t7, 0x2c($sp) +.L800C9614: +/* 0CA214 800C9614 8FAE002C */ lw $t6, 0x2c($sp) +/* 0CA218 800C9618 ADC000D8 */ sw $zero, 0xd8($t6) +.L800C961C: +/* 0CA21C 800C961C 8FAF002C */ lw $t7, 0x2c($sp) +.L800C9620: +/* 0CA220 800C9620 ADF00008 */ sw $s0, 8($t7) +/* 0CA224 800C9624 8FB8002C */ lw $t8, 0x2c($sp) +/* 0CA228 800C9628 AE180008 */ sw $t8, 8($s0) +/* 0CA22C 800C962C 8FA2002C */ lw $v0, 0x2c($sp) +.L800C9630: +/* 0CA230 800C9630 8FBF001C */ lw $ra, 0x1c($sp) +/* 0CA234 800C9634 8FB00018 */ lw $s0, 0x18($sp) +/* 0CA238 800C9638 0002402B */ sltu $t0, $zero, $v0 +/* 0CA23C 800C963C 01001025 */ move $v0, $t0 +/* 0CA240 800C9640 03E00008 */ jr $ra +/* 0CA244 800C9644 27BD0030 */ addiu $sp, $sp, 0x30 + +/* 0CA248 800C9648 00000000 */ nop +/* 0CA24C 800C964C 00000000 */ nop + diff --git a/asm/unknown_0CA250.s b/asm/non_matchings/unknown_0CA250/func_800C9650.s old mode 100755 new mode 100644 similarity index 91% rename from asm/unknown_0CA250.s rename to asm/non_matchings/unknown_0CA250/func_800C9650.s index 6017b8cc..7fb052bb --- a/asm/unknown_0CA250.s +++ b/asm/non_matchings/unknown_0CA250/func_800C9650.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C9650 /* 0CA250 800C9650 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 0CA254 800C9654 AFBF0014 */ sw $ra, 0x14($sp) @@ -50,3 +42,4 @@ glabel func_800C9650 /* 0CA2E8 800C96E8 00000000 */ nop /* 0CA2EC 800C96EC 00000000 */ nop + diff --git a/asm/unknown_0CA2F0.s b/asm/non_matchings/unknown_0CA2F0/func_800C96F0.s old mode 100755 new mode 100644 similarity index 90% rename from asm/unknown_0CA2F0.s rename to asm/non_matchings/unknown_0CA2F0/func_800C96F0.s index 1417bfac..24a64656 --- a/asm/unknown_0CA2F0.s +++ b/asm/non_matchings/unknown_0CA2F0/func_800C96F0.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C96F0 /* 0CA2F0 800C96F0 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 0CA2F4 800C96F4 AFBF0014 */ sw $ra, 0x14($sp) @@ -46,3 +38,4 @@ glabel func_800C96F0 /* 0CA378 800C9778 00000000 */ nop /* 0CA37C 800C977C 00000000 */ nop + diff --git a/asm/unknown_0CA380.s b/asm/non_matchings/unknown_0CA380/func_800C9780.s old mode 100755 new mode 100644 similarity index 89% rename from asm/unknown_0CA380.s rename to asm/non_matchings/unknown_0CA380/func_800C9780.s index f9af66fd..465ce432 --- a/asm/unknown_0CA380.s +++ b/asm/non_matchings/unknown_0CA380/func_800C9780.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C9780 /* 0CA380 800C9780 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 0CA384 800C9784 AFBF0014 */ sw $ra, 0x14($sp) @@ -46,3 +38,4 @@ glabel func_800C9780 /* 0CA404 800C9804 00000000 */ nop /* 0CA408 800C9808 00000000 */ nop /* 0CA40C 800C980C 00000000 */ nop + diff --git a/asm/unknown_0CA410.s b/asm/non_matchings/unknown_0CA410/func_800C9810.s old mode 100755 new mode 100644 similarity index 90% rename from asm/unknown_0CA410.s rename to asm/non_matchings/unknown_0CA410/func_800C9810.s index 3b305e95..d195056a --- a/asm/unknown_0CA410.s +++ b/asm/non_matchings/unknown_0CA410/func_800C9810.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C9810 /* 0CA410 800C9810 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 0CA414 800C9814 AFBF0014 */ sw $ra, 0x14($sp) @@ -52,3 +44,4 @@ glabel func_800C9810 /* 0CA4A4 800C98A4 00000000 */ nop /* 0CA4A8 800C98A8 00000000 */ nop /* 0CA4AC 800C98AC 00000000 */ nop + diff --git a/asm/unknown_0CA4B0.s b/asm/non_matchings/unknown_0CA4B0/func_800C98B0.s old mode 100755 new mode 100644 similarity index 88% rename from asm/unknown_0CA4B0.s rename to asm/non_matchings/unknown_0CA4B0/func_800C98B0.s index dff81d4a..9b899fd7 --- a/asm/unknown_0CA4B0.s +++ b/asm/non_matchings/unknown_0CA4B0/func_800C98B0.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C98B0 /* 0CA4B0 800C98B0 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 0CA4B4 800C98B4 AFBF0014 */ sw $ra, 0x14($sp) @@ -42,3 +34,4 @@ glabel func_800C98B0 /* 0CA528 800C9928 00000000 */ nop /* 0CA52C 800C992C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CA530/func_800C9930.s b/asm/non_matchings/unknown_0CA530/func_800C9930.s new file mode 100644 index 00000000..ea651ecc --- /dev/null +++ b/asm/non_matchings/unknown_0CA530/func_800C9930.s @@ -0,0 +1,50 @@ +glabel func_800C9930 +/* 0CA530 800C9930 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0CA534 800C9934 AFBF0014 */ sw $ra, 0x14($sp) +/* 0CA538 800C9938 8CA60008 */ lw $a2, 8($a1) +/* 0CA53C 800C993C 00804025 */ move $t0, $a0 +/* 0CA540 800C9940 00A03825 */ move $a3, $a1 +/* 0CA544 800C9944 50C00023 */ beql $a2, $zero, .L800C99D4 +/* 0CA548 800C9948 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CA54C 800C994C 8CCE00D8 */ lw $t6, 0xd8($a2) +/* 0CA550 800C9950 51C0001A */ beql $t6, $zero, .L800C99BC +/* 0CA554 800C9954 01002025 */ move $a0, $t0 +/* 0CA558 800C9958 AFA5001C */ sw $a1, 0x1c($sp) +/* 0CA55C 800C995C 0C01959A */ jal func_80065668 +/* 0CA560 800C9960 AFA40018 */ sw $a0, 0x18($sp) +/* 0CA564 800C9964 8FA7001C */ lw $a3, 0x1c($sp) +/* 0CA568 800C9968 8FA80018 */ lw $t0, 0x18($sp) +/* 0CA56C 800C996C 10400018 */ beqz $v0, .L800C99D0 +/* 0CA570 800C9970 00403025 */ move $a2, $v0 +/* 0CA574 800C9974 8CF80008 */ lw $t8, 8($a3) +/* 0CA578 800C9978 8D0F001C */ lw $t7, 0x1c($t0) +/* 0CA57C 800C997C 24050003 */ li $a1, 3 +/* 0CA580 800C9980 8F1900D8 */ lw $t9, 0xd8($t8) +/* 0CA584 800C9984 A4400008 */ sh $zero, 8($v0) +/* 0CA588 800C9988 01F94821 */ addu $t1, $t7, $t9 +/* 0CA58C 800C998C AC490004 */ sw $t1, 4($v0) +/* 0CA590 800C9990 8CEA0008 */ lw $t2, 8($a3) +/* 0CA594 800C9994 AC4A000C */ sw $t2, 0xc($v0) +/* 0CA598 800C9998 8CEB0008 */ lw $t3, 8($a3) +/* 0CA59C 800C999C 8D64000C */ lw $a0, 0xc($t3) +/* 0CA5A0 800C99A0 AFA7001C */ sw $a3, 0x1c($sp) +/* 0CA5A4 800C99A4 8C990008 */ lw $t9, 8($a0) +/* 0CA5A8 800C99A8 0320F809 */ jalr $t9 +/* 0CA5AC 800C99AC 00000000 */ nop +/* 0CA5B0 800C99B0 10000006 */ b .L800C99CC +/* 0CA5B4 800C99B4 8FA7001C */ lw $a3, 0x1c($sp) +/* 0CA5B8 800C99B8 01002025 */ move $a0, $t0 +.L800C99BC: +/* 0CA5BC 800C99BC 00C02825 */ move $a1, $a2 +/* 0CA5C0 800C99C0 0C0195C7 */ jal func_8006571C +/* 0CA5C4 800C99C4 AFA7001C */ sw $a3, 0x1c($sp) +/* 0CA5C8 800C99C8 8FA7001C */ lw $a3, 0x1c($sp) +.L800C99CC: +/* 0CA5CC 800C99CC ACE00008 */ sw $zero, 8($a3) +.L800C99D0: +/* 0CA5D0 800C99D0 8FBF0014 */ lw $ra, 0x14($sp) +.L800C99D4: +/* 0CA5D4 800C99D4 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0CA5D8 800C99D8 03E00008 */ jr $ra +/* 0CA5DC 800C99DC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CA530/func_800C99E0.s b/asm/non_matchings/unknown_0CA530/func_800C99E0.s new file mode 100644 index 00000000..a89a04ed --- /dev/null +++ b/asm/non_matchings/unknown_0CA530/func_800C99E0.s @@ -0,0 +1,27 @@ +glabel func_800C99E0 +/* 0CA5E0 800C99E0 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0CA5E4 800C99E4 44811000 */ mtc1 $at, $f2 +/* 0CA5E8 800C99E8 04800004 */ bltz $a0, .L800C99FC +/* 0CA5EC 800C99EC 3C01800F */ lui $at, 0x800f +/* 0CA5F0 800C99F0 3C01800F */ lui $at, %hi(D_800E94C4) # $at, 0x800f +/* 0CA5F4 800C99F4 10000003 */ b .L800C9A04 +/* 0CA5F8 800C99F8 C42094C0 */ lwc1 $f0, %lo(D_800E94C0)($at) +.L800C99FC: +/* 0CA5FC 800C99FC C42094C4 */ lwc1 $f0, %lo(D_800E94C4)($at) +/* 0CA600 800C9A00 00042023 */ negu $a0, $a0 +.L800C9A04: +/* 0CA604 800C9A04 10800008 */ beqz $a0, .L800C9A28 +.L800C9A08: +/* 0CA608 800C9A08 308E0001 */ andi $t6, $a0, 1 +/* 0CA60C 800C9A0C 11C00003 */ beqz $t6, .L800C9A1C +/* 0CA610 800C9A10 00047843 */ sra $t7, $a0, 1 +/* 0CA614 800C9A14 46001082 */ mul.s $f2, $f2, $f0 +/* 0CA618 800C9A18 00000000 */ nop +.L800C9A1C: +/* 0CA61C 800C9A1C 46000002 */ mul.s $f0, $f0, $f0 +/* 0CA620 800C9A20 15E0FFF9 */ bnez $t7, .L800C9A08 +/* 0CA624 800C9A24 01E02025 */ move $a0, $t7 +.L800C9A28: +/* 0CA628 800C9A28 03E00008 */ jr $ra +/* 0CA62C 800C9A2C 46001006 */ mov.s $f0, $f2 + diff --git a/asm/non_matchings/unknown_0CA530/func_800C9A30.s b/asm/non_matchings/unknown_0CA530/func_800C9A30.s new file mode 100644 index 00000000..2b19a0fa --- /dev/null +++ b/asm/non_matchings/unknown_0CA530/func_800C9A30.s @@ -0,0 +1,43 @@ +glabel func_800C9A30 +/* 0CA630 800C9A30 400C6000 */ mfc0 $t4, $12 +/* 0CA634 800C9A34 3182FF01 */ andi $v0, $t4, 0xff01 +/* 0CA638 800C9A38 3C08800E */ lui $t0, %hi(D_800E38AC) # $t0, 0x800e +/* 0CA63C 800C9A3C 250838AC */ addiu $t0, %lo(D_800E38AC) # addiu $t0, $t0, 0x38ac +/* 0CA640 800C9A40 8D0B0000 */ lw $t3, ($t0) +/* 0CA644 800C9A44 2401FFFF */ li $at, -1 +/* 0CA648 800C9A48 01614026 */ xor $t0, $t3, $at +/* 0CA64C 800C9A4C 3108FF00 */ andi $t0, $t0, 0xff00 +/* 0CA650 800C9A50 00481025 */ or $v0, $v0, $t0 +/* 0CA654 800C9A54 3C0AA430 */ lui $t2, %hi(D_A430000C) # $t2, 0xa430 +/* 0CA658 800C9A58 8D4A000C */ lw $t2, %lo(D_A430000C)($t2) +/* 0CA65C 800C9A5C 11400005 */ beqz $t2, .L800C9A74 +/* 0CA660 800C9A60 000B4C02 */ srl $t1, $t3, 0x10 +/* 0CA664 800C9A64 2401FFFF */ li $at, -1 +/* 0CA668 800C9A68 01214826 */ xor $t1, $t1, $at +/* 0CA66C 800C9A6C 3129003F */ andi $t1, $t1, 0x3f +/* 0CA670 800C9A70 01495025 */ or $t2, $t2, $t1 +.L800C9A74: +/* 0CA674 800C9A74 000A5400 */ sll $t2, $t2, 0x10 +/* 0CA678 800C9A78 004A1025 */ or $v0, $v0, $t2 +/* 0CA67C 800C9A7C 3C01003F */ lui $at, 0x3f +/* 0CA680 800C9A80 00814024 */ and $t0, $a0, $at +/* 0CA684 800C9A84 010B4024 */ and $t0, $t0, $t3 +/* 0CA688 800C9A88 000843C2 */ srl $t0, $t0, 0xf +/* 0CA68C 800C9A8C 3C0A800F */ lui $t2, 0x800f +/* 0CA690 800C9A90 01485021 */ addu $t2, $t2, $t0 +/* 0CA694 800C9A94 954A94D0 */ lhu $t2, -0x6b30($t2) +/* 0CA698 800C9A98 3C01A430 */ lui $at, %hi(D_A430000C) # $at, 0xa430 +/* 0CA69C 800C9A9C AC2A000C */ sw $t2, %lo(D_A430000C)($at) +/* 0CA6A0 800C9AA0 3088FF01 */ andi $t0, $a0, 0xff01 +/* 0CA6A4 800C9AA4 3169FF00 */ andi $t1, $t3, 0xff00 +/* 0CA6A8 800C9AA8 01094024 */ and $t0, $t0, $t1 +/* 0CA6AC 800C9AAC 3C01FFFF */ lui $at, (0xFFFF00FF >> 16) # lui $at, 0xffff +/* 0CA6B0 800C9AB0 342100FF */ ori $at, (0xFFFF00FF & 0xFFFF) # ori $at, $at, 0xff +/* 0CA6B4 800C9AB4 01816024 */ and $t4, $t4, $at +/* 0CA6B8 800C9AB8 01886025 */ or $t4, $t4, $t0 +/* 0CA6BC 800C9ABC 408C6000 */ mtc0 $t4, $12 +/* 0CA6C0 800C9AC0 00000000 */ nop +/* 0CA6C4 800C9AC4 00000000 */ nop +/* 0CA6C8 800C9AC8 03E00008 */ jr $ra +/* 0CA6CC 800C9ACC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CA530/sqrtf.s b/asm/non_matchings/unknown_0CA530/sqrtf.s new file mode 100644 index 00000000..80960e72 --- /dev/null +++ b/asm/non_matchings/unknown_0CA530/sqrtf.s @@ -0,0 +1,7 @@ +glabel sqrtf +/* 0CA6D0 800C9AD0 03E00008 */ jr $ra +/* 0CA6D4 800C9AD4 46006004 */ sqrt.s $f0, $f12 + +/* 0CA6D8 800C9AD8 00000000 */ nop +/* 0CA6DC 800C9ADC 00000000 */ nop + diff --git a/asm/unknown_0CA6E0.s b/asm/non_matchings/unknown_0CA6E0/func_800C9AE0.s old mode 100755 new mode 100644 similarity index 80% rename from asm/unknown_0CA6E0.s rename to asm/non_matchings/unknown_0CA6E0/func_800C9AE0.s index d71b429e..a29735ad --- a/asm/unknown_0CA6E0.s +++ b/asm/non_matchings/unknown_0CA6E0/func_800C9AE0.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800C9AE0 /* 0CA6E0 800C9AE0 AFA40000 */ sw $a0, ($sp) /* 0CA6E4 800C9AE4 AFA60008 */ sw $a2, 8($sp) @@ -28,3 +20,4 @@ glabel func_800C9AE0 /* 0CA724 800C9B24 00000000 */ nop /* 0CA728 800C9B28 00000000 */ nop /* 0CA72C 800C9B2C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CA730/func_800C9B30.s b/asm/non_matchings/unknown_0CA730/func_800C9B30.s new file mode 100644 index 00000000..38996882 --- /dev/null +++ b/asm/non_matchings/unknown_0CA730/func_800C9B30.s @@ -0,0 +1,8 @@ +glabel func_800C9B30 +/* 0CA730 800C9B30 46206109 */ trunc.l.d $f4, $f12 +/* 0CA734 800C9B34 44222000 */ dmfc1 $v0, $f4 +/* 0CA738 800C9B38 00000000 */ nop +/* 0CA73C 800C9B3C 0002183C */ dsll32 $v1, $v0, 0 +/* 0CA740 800C9B40 0003183F */ dsra32 $v1, $v1, 0 +/* 0CA744 800C9B44 03E00008 */ jr $ra +/* 0CA748 800C9B48 0002103F */ dsra32 $v0, $v0, 0 diff --git a/asm/unknown_0CA730.s b/asm/non_matchings/unknown_0CA730/func_800C9B4C.s old mode 100755 new mode 100644 similarity index 67% rename from asm/unknown_0CA730.s rename to asm/non_matchings/unknown_0CA730/func_800C9B4C.s index b9063bda..cf79488a --- a/asm/unknown_0CA730.s +++ b/asm/non_matchings/unknown_0CA730/func_800C9B4C.s @@ -1,19 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -/* 0CA730 800C9B30 46206109 */ trunc.l.d $f4, $f12 -/* 0CA734 800C9B34 44222000 */ dmfc1 $v0, $f4 -/* 0CA738 800C9B38 00000000 */ nop -/* 0CA73C 800C9B3C 0002183C */ dsll32 $v1, $v0, 0 -/* 0CA740 800C9B40 0003183F */ dsra32 $v1, $v1, 0 -/* 0CA744 800C9B44 03E00008 */ jr $ra -/* 0CA748 800C9B48 0002103F */ dsra32 $v0, $v0, 0 - glabel func_800C9B4C /* 0CA74C 800C9B4C 46006109 */ trunc.l.s $f4, $f12 /* 0CA750 800C9B50 44222000 */ dmfc1 $v0, $f4 @@ -117,42 +101,3 @@ glabel func_800C9B4C /* 0CA8B4 800C9CB4 03E00008 */ jr $ra /* 0CA8B8 800C9CB8 46A02021 */ cvt.d.l $f0, $f4 -glabel func_800C9CBC -/* 0CA8BC 800C9CBC AFA40000 */ sw $a0, ($sp) -/* 0CA8C0 800C9CC0 AFA50004 */ sw $a1, 4($sp) -/* 0CA8C4 800C9CC4 DFAE0000 */ ld $t6, ($sp) -/* 0CA8C8 800C9CC8 44AE2000 */ dmtc1 $t6, $f4 -/* 0CA8CC 800C9CCC 03E00008 */ jr $ra -/* 0CA8D0 800C9CD0 46A02020 */ cvt.s.l $f0, $f4 - -/* 0CA8D4 800C9CD4 AFA40000 */ sw $a0, ($sp) -/* 0CA8D8 800C9CD8 AFA50004 */ sw $a1, 4($sp) -/* 0CA8DC 800C9CDC DFAE0000 */ ld $t6, ($sp) -/* 0CA8E0 800C9CE0 44AE2000 */ dmtc1 $t6, $f4 -/* 0CA8E4 800C9CE4 05C10006 */ bgez $t6, .L800C9D00 -/* 0CA8E8 800C9CE8 46A02021 */ cvt.d.l $f0, $f4 -/* 0CA8EC 800C9CEC 3C0141F0 */ li $at, 0x41F00000 # 30.000000 -/* 0CA8F0 800C9CF0 44813800 */ mtc1 $at, $f7 -/* 0CA8F4 800C9CF4 44803000 */ mtc1 $zero, $f6 -/* 0CA8F8 800C9CF8 00000000 */ nop -/* 0CA8FC 800C9CFC 46260000 */ add.d $f0, $f0, $f6 -.L800C9D00: -/* 0CA900 800C9D00 03E00008 */ jr $ra -/* 0CA904 800C9D04 00000000 */ nop - -/* 0CA908 800C9D08 AFA40000 */ sw $a0, ($sp) -/* 0CA90C 800C9D0C AFA50004 */ sw $a1, 4($sp) -/* 0CA910 800C9D10 DFAE0000 */ ld $t6, ($sp) -/* 0CA914 800C9D14 44AE2000 */ dmtc1 $t6, $f4 -/* 0CA918 800C9D18 05C10005 */ bgez $t6, .L800C9D30 -/* 0CA91C 800C9D1C 46A02020 */ cvt.s.l $f0, $f4 -/* 0CA920 800C9D20 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0CA924 800C9D24 44813000 */ mtc1 $at, $f6 -/* 0CA928 800C9D28 00000000 */ nop -/* 0CA92C 800C9D2C 46060000 */ add.s $f0, $f0, $f6 -.L800C9D30: -/* 0CA930 800C9D30 03E00008 */ jr $ra -/* 0CA934 800C9D34 00000000 */ nop - -/* 0CA938 800C9D38 00000000 */ nop -/* 0CA93C 800C9D3C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0CA730/func_800C9CBC.s b/asm/non_matchings/unknown_0CA730/func_800C9CBC.s new file mode 100644 index 00000000..4ae0a995 --- /dev/null +++ b/asm/non_matchings/unknown_0CA730/func_800C9CBC.s @@ -0,0 +1,40 @@ +glabel func_800C9CBC +/* 0CA8BC 800C9CBC AFA40000 */ sw $a0, ($sp) +/* 0CA8C0 800C9CC0 AFA50004 */ sw $a1, 4($sp) +/* 0CA8C4 800C9CC4 DFAE0000 */ ld $t6, ($sp) +/* 0CA8C8 800C9CC8 44AE2000 */ dmtc1 $t6, $f4 +/* 0CA8CC 800C9CCC 03E00008 */ jr $ra +/* 0CA8D0 800C9CD0 46A02020 */ cvt.s.l $f0, $f4 + +/* 0CA8D4 800C9CD4 AFA40000 */ sw $a0, ($sp) +/* 0CA8D8 800C9CD8 AFA50004 */ sw $a1, 4($sp) +/* 0CA8DC 800C9CDC DFAE0000 */ ld $t6, ($sp) +/* 0CA8E0 800C9CE0 44AE2000 */ dmtc1 $t6, $f4 +/* 0CA8E4 800C9CE4 05C10006 */ bgez $t6, .L800C9D00 +/* 0CA8E8 800C9CE8 46A02021 */ cvt.d.l $f0, $f4 +/* 0CA8EC 800C9CEC 3C0141F0 */ li $at, 0x41F00000 # 30.000000 +/* 0CA8F0 800C9CF0 44813800 */ mtc1 $at, $f7 +/* 0CA8F4 800C9CF4 44803000 */ mtc1 $zero, $f6 +/* 0CA8F8 800C9CF8 00000000 */ nop +/* 0CA8FC 800C9CFC 46260000 */ add.d $f0, $f0, $f6 +.L800C9D00: +/* 0CA900 800C9D00 03E00008 */ jr $ra +/* 0CA904 800C9D04 00000000 */ nop + +/* 0CA908 800C9D08 AFA40000 */ sw $a0, ($sp) +/* 0CA90C 800C9D0C AFA50004 */ sw $a1, 4($sp) +/* 0CA910 800C9D10 DFAE0000 */ ld $t6, ($sp) +/* 0CA914 800C9D14 44AE2000 */ dmtc1 $t6, $f4 +/* 0CA918 800C9D18 05C10005 */ bgez $t6, .L800C9D30 +/* 0CA91C 800C9D1C 46A02020 */ cvt.s.l $f0, $f4 +/* 0CA920 800C9D20 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0CA924 800C9D24 44813000 */ mtc1 $at, $f6 +/* 0CA928 800C9D28 00000000 */ nop +/* 0CA92C 800C9D2C 46060000 */ add.s $f0, $f0, $f6 +.L800C9D30: +/* 0CA930 800C9D30 03E00008 */ jr $ra +/* 0CA934 800C9D34 00000000 */ nop + +/* 0CA938 800C9D38 00000000 */ nop +/* 0CA93C 800C9D3C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CA940/D_800C9D40.s b/asm/non_matchings/unknown_0CA940/D_800C9D40.s new file mode 100644 index 00000000..e19996a4 --- /dev/null +++ b/asm/non_matchings/unknown_0CA940/D_800C9D40.s @@ -0,0 +1,7 @@ +glabel D_800C9D40 +/* 0CA940 800C9D40 AFA40000 */ sw $a0, ($sp) +/* 0CA944 800C9D44 AFA50004 */ sw $a1, 4($sp) +/* 0CA948 800C9D48 AFA60008 */ sw $a2, 8($sp) +/* 0CA94C 800C9D4C 03E00008 */ jr $ra +/* 0CA950 800C9D50 24020001 */ li $v0, 1 + diff --git a/asm/unknown_0CA940.s b/asm/non_matchings/unknown_0CA940/func_800C9D54.s old mode 100755 new mode 100644 similarity index 68% rename from asm/unknown_0CA940.s rename to asm/non_matchings/unknown_0CA940/func_800C9D54.s index e22cd0b7..93c17c16 --- a/asm/unknown_0CA940.s +++ b/asm/non_matchings/unknown_0CA940/func_800C9D54.s @@ -1,18 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel D_800C9D40 -/* 0CA940 800C9D40 AFA40000 */ sw $a0, ($sp) -/* 0CA944 800C9D44 AFA50004 */ sw $a1, 4($sp) -/* 0CA948 800C9D48 AFA60008 */ sw $a2, 8($sp) -/* 0CA94C 800C9D4C 03E00008 */ jr $ra -/* 0CA950 800C9D50 24020001 */ li $v0, 1 - glabel func_800C9D54 /* 0CA954 800C9D54 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 0CA958 800C9D58 AFA40020 */ sw $a0, 0x20($sp) @@ -34,3 +19,4 @@ glabel func_800C9D54 /* 0CA994 800C9D94 00000000 */ nop /* 0CA998 800C9D98 00000000 */ nop /* 0CA99C 800C9D9C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CA9A0/D_800CA0D0.s b/asm/non_matchings/unknown_0CA9A0/D_800CA0D0.s new file mode 100644 index 00000000..bb0e956c --- /dev/null +++ b/asm/non_matchings/unknown_0CA9A0/D_800CA0D0.s @@ -0,0 +1,648 @@ +glabel D_800CA0D0 +/* 0CACD0 800CA0D0 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 0CACD4 800CA0D4 AFBF001C */ sw $ra, 0x1c($sp) +/* 0CACD8 800CA0D8 AFA40060 */ sw $a0, 0x60($sp) +/* 0CACDC 800CA0DC AFA50064 */ sw $a1, 0x64($sp) +/* 0CACE0 800CA0E0 AFA60068 */ sw $a2, 0x68($sp) +/* 0CACE4 800CA0E4 AFA7006C */ sw $a3, 0x6c($sp) +/* 0CACE8 800CA0E8 8FAE0070 */ lw $t6, 0x70($sp) +/* 0CACEC 800CA0EC 00000000 */ nop +/* 0CACF0 800CA0F0 AFAE005C */ sw $t6, 0x5c($sp) +/* 0CACF4 800CA0F4 8FAF0060 */ lw $t7, 0x60($sp) +/* 0CACF8 800CA0F8 00000000 */ nop +/* 0CACFC 800CA0FC AFAF0058 */ sw $t7, 0x58($sp) +/* 0CAD00 800CA100 8FB8006C */ lw $t8, 0x6c($sp) +/* 0CAD04 800CA104 00000000 */ nop +/* 0CAD08 800CA108 AFB8004C */ sw $t8, 0x4c($sp) +/* 0CAD0C 800CA10C A7A00046 */ sh $zero, 0x46($sp) +/* 0CAD10 800CA110 A7A00056 */ sh $zero, 0x56($sp) +/* 0CAD14 800CA114 8FB90058 */ lw $t9, 0x58($sp) +/* 0CAD18 800CA118 00000000 */ nop +/* 0CAD1C 800CA11C 8F28003C */ lw $t0, 0x3c($t9) +/* 0CAD20 800CA120 00000000 */ nop +/* 0CAD24 800CA124 11000229 */ beqz $t0, .L800CA9CC +/* 0CAD28 800CA128 00000000 */ nop +.L800CA12C: +/* 0CAD2C 800CA12C 8FA9004C */ lw $t1, 0x4c($sp) +/* 0CAD30 800CA130 00000000 */ nop +/* 0CAD34 800CA134 AFA90050 */ sw $t1, 0x50($sp) +/* 0CAD38 800CA138 8FAA0058 */ lw $t2, 0x58($sp) +/* 0CAD3C 800CA13C 00000000 */ nop +/* 0CAD40 800CA140 8D4B003C */ lw $t3, 0x3c($t2) +/* 0CAD44 800CA144 00000000 */ nop +/* 0CAD48 800CA148 8D6C0004 */ lw $t4, 4($t3) +/* 0CAD4C 800CA14C 00000000 */ nop +/* 0CAD50 800CA150 AFAC004C */ sw $t4, 0x4c($sp) +/* 0CAD54 800CA154 8FAD004C */ lw $t5, 0x4c($sp) +/* 0CAD58 800CA158 8FAE0050 */ lw $t6, 0x50($sp) +/* 0CAD5C 800CA15C 00000000 */ nop +/* 0CAD60 800CA160 01AE7823 */ subu $t7, $t5, $t6 +/* 0CAD64 800CA164 AFAF0048 */ sw $t7, 0x48($sp) +/* 0CAD68 800CA168 8FB80048 */ lw $t8, 0x48($sp) +/* 0CAD6C 800CA16C 8FB90068 */ lw $t9, 0x68($sp) +/* 0CAD70 800CA170 00000000 */ nop +/* 0CAD74 800CA174 0338082A */ slt $at, $t9, $t8 +/* 0CAD78 800CA178 10200003 */ beqz $at, .L800CA188 +/* 0CAD7C 800CA17C 00000000 */ nop +/* 0CAD80 800CA180 10000212 */ b .L800CA9CC +/* 0CAD84 800CA184 00000000 */ nop +.L800CA188: +/* 0CAD88 800CA188 8FA80048 */ lw $t0, 0x48($sp) +/* 0CAD8C 800CA18C 00000000 */ nop +/* 0CAD90 800CA190 05000003 */ bltz $t0, .L800CA1A0 +/* 0CAD94 800CA194 00000000 */ nop +/* 0CAD98 800CA198 10000007 */ b .L800CA1B8 +/* 0CAD9C 800CA19C 00000000 */ nop +.L800CA1A0: +/* 0CADA0 800CA1A0 3C04800F */ lui $a0, %hi(D_800E9560) # $a0, 0x800f +/* 0CADA4 800CA1A4 3C05800F */ lui $a1, %hi(D_800E9570) # $a1, 0x800f +/* 0CADA8 800CA1A8 24A59570 */ addiu $a1, %lo(D_800E9570) # addiu $a1, $a1, -0x6a90 +/* 0CADAC 800CA1AC 24849560 */ addiu $a0, %lo(D_800E9560) # addiu $a0, $a0, -0x6aa0 +/* 0CADB0 800CA1B0 0C02DBD0 */ jal func_800B6F40 +/* 0CADB4 800CA1B4 24060068 */ li $a2, 104 +.L800CA1B8: +/* 0CADB8 800CA1B8 8FA90048 */ lw $t1, 0x48($sp) +/* 0CADBC 800CA1BC 00000000 */ nop +/* 0CADC0 800CA1C0 292100A1 */ slti $at, $t1, 0xa1 +/* 0CADC4 800CA1C4 10200003 */ beqz $at, .L800CA1D4 +/* 0CADC8 800CA1C8 00000000 */ nop +/* 0CADCC 800CA1CC 10000007 */ b .L800CA1EC +/* 0CADD0 800CA1D0 00000000 */ nop +.L800CA1D4: +/* 0CADD4 800CA1D4 3C04800F */ lui $a0, %hi(D_800E9578) # $a0, 0x800f +/* 0CADD8 800CA1D8 3C05800F */ lui $a1, %hi(D_800E9598) # $a1, 0x800f +/* 0CADDC 800CA1DC 24A59598 */ addiu $a1, %lo(D_800E9598) # addiu $a1, $a1, -0x6a68 +/* 0CADE0 800CA1E0 24849578 */ addiu $a0, %lo(D_800E9578) # addiu $a0, $a0, -0x6a88 +/* 0CADE4 800CA1E4 0C02DBD0 */ jal func_800B6F40 +/* 0CADE8 800CA1E8 24060069 */ li $a2, 105 +.L800CA1EC: +/* 0CADEC 800CA1EC 8FAA0058 */ lw $t2, 0x58($sp) +/* 0CADF0 800CA1F0 00000000 */ nop +/* 0CADF4 800CA1F4 8D4B003C */ lw $t3, 0x3c($t2) +/* 0CADF8 800CA1F8 00000000 */ nop +/* 0CADFC 800CA1FC 956C0008 */ lhu $t4, 8($t3) +/* 0CAE00 800CA200 00000000 */ nop +/* 0CAE04 800CA204 2D810011 */ sltiu $at, $t4, 0x11 +/* 0CAE08 800CA208 102001AE */ beqz $at, .L800CA8C4 +/* 0CAE0C 800CA20C 00000000 */ nop +/* 0CAE10 800CA210 000C6080 */ sll $t4, $t4, 2 +/* 0CAE14 800CA214 3C01800F */ lui $at, 0x800f +/* 0CAE18 800CA218 002C0821 */ addu $at, $at, $t4 +/* 0CAE1C 800CA21C 8C2C95B0 */ lw $t4, -0x6a50($at) +/* 0CAE20 800CA220 00000000 */ nop +/* 0CAE24 800CA224 01800008 */ jr $t4 +/* 0CAE28 800CA228 00000000 */ nop +/* 0CAE2C 800CA22C 8FAD0058 */ lw $t5, 0x58($sp) +/* 0CAE30 800CA230 00000000 */ nop +/* 0CAE34 800CA234 8DAE003C */ lw $t6, 0x3c($t5) +/* 0CAE38 800CA238 00000000 */ nop +/* 0CAE3C 800CA23C AFAE0038 */ sw $t6, 0x38($sp) +/* 0CAE40 800CA240 8FAF0058 */ lw $t7, 0x58($sp) +/* 0CAE44 800CA244 00000000 */ nop +/* 0CAE48 800CA248 AFAF0034 */ sw $t7, 0x34($sp) +/* 0CAE4C 800CA24C 8FB80038 */ lw $t8, 0x38($sp) +/* 0CAE50 800CA250 00000000 */ nop +/* 0CAE54 800CA254 8719000A */ lh $t9, 0xa($t8) +/* 0CAE58 800CA258 00000000 */ nop +/* 0CAE5C 800CA25C 13200007 */ beqz $t9, .L800CA27C +/* 0CAE60 800CA260 00000000 */ nop +/* 0CAE64 800CA264 8FA80058 */ lw $t0, 0x58($sp) +/* 0CAE68 800CA268 24050008 */ li $a1, 8 +/* 0CAE6C 800CA26C 8D190008 */ lw $t9, 8($t0) +/* 0CAE70 800CA270 00003025 */ move $a2, $zero +/* 0CAE74 800CA274 0320F809 */ jalr $t9 +/* 0CAE78 800CA278 01002025 */ move $a0, $t0 +.L800CA27C: +/* 0CAE7C 800CA27C 8FA90058 */ lw $t1, 0x58($sp) +/* 0CAE80 800CA280 8FAA0038 */ lw $t2, 0x38($sp) +/* 0CAE84 800CA284 8D390008 */ lw $t9, 8($t1) +/* 0CAE88 800CA288 8D460018 */ lw $a2, 0x18($t2) +/* 0CAE8C 800CA28C 24050005 */ li $a1, 5 +/* 0CAE90 800CA290 0320F809 */ jalr $t9 +/* 0CAE94 800CA294 01202025 */ move $a0, $t1 +/* 0CAE98 800CA298 8FAB0058 */ lw $t3, 0x58($sp) +/* 0CAE9C 800CA29C 24050009 */ li $a1, 9 +/* 0CAEA0 800CA2A0 8D790008 */ lw $t9, 8($t3) +/* 0CAEA4 800CA2A4 00003025 */ move $a2, $zero +/* 0CAEA8 800CA2A8 0320F809 */ jalr $t9 +/* 0CAEAC 800CA2AC 01602025 */ move $a0, $t3 +/* 0CAEB0 800CA2B0 8FAD0058 */ lw $t5, 0x58($sp) +/* 0CAEB4 800CA2B4 240C0001 */ li $t4, 1 +/* 0CAEB8 800CA2B8 ADAC0038 */ sw $t4, 0x38($t5) +/* 0CAEBC 800CA2BC 8FAE0058 */ lw $t6, 0x58($sp) +/* 0CAEC0 800CA2C0 00000000 */ nop +/* 0CAEC4 800CA2C4 ADC00030 */ sw $zero, 0x30($t6) +/* 0CAEC8 800CA2C8 8FAF0038 */ lw $t7, 0x38($sp) +/* 0CAECC 800CA2CC 8FA80058 */ lw $t0, 0x58($sp) +/* 0CAED0 800CA2D0 8DF80014 */ lw $t8, 0x14($t7) +/* 0CAED4 800CA2D4 00000000 */ nop +/* 0CAED8 800CA2D8 AD180034 */ sw $t8, 0x34($t0) +/* 0CAEDC 800CA2DC 8FAA0038 */ lw $t2, 0x38($sp) +/* 0CAEE0 800CA2E0 00000000 */ nop +/* 0CAEE4 800CA2E4 85490010 */ lh $t1, 0x10($t2) +/* 0CAEE8 800CA2E8 00000000 */ nop +/* 0CAEEC 800CA2EC 01295821 */ addu $t3, $t1, $t1 +/* 0CAEF0 800CA2F0 05610003 */ bgez $t3, .L800CA300 +/* 0CAEF4 800CA2F4 000BC843 */ sra $t9, $t3, 1 +/* 0CAEF8 800CA2F8 25610001 */ addiu $at, $t3, 1 +/* 0CAEFC 800CA2FC 0001C843 */ sra $t9, $at, 1 +.L800CA300: +/* 0CAF00 800CA300 AFB90030 */ sw $t9, 0x30($sp) +/* 0CAF04 800CA304 8FAC0030 */ lw $t4, 0x30($sp) +/* 0CAF08 800CA308 8FAD0058 */ lw $t5, 0x58($sp) +/* 0CAF0C 800CA30C 00000000 */ nop +/* 0CAF10 800CA310 A5AC001A */ sh $t4, 0x1a($t5) +/* 0CAF14 800CA314 8FAE0038 */ lw $t6, 0x38($sp) +/* 0CAF18 800CA318 8FB80058 */ lw $t8, 0x58($sp) +/* 0CAF1C 800CA31C 91CF0012 */ lbu $t7, 0x12($t6) +/* 0CAF20 800CA320 00000000 */ nop +/* 0CAF24 800CA324 A70F0018 */ sh $t7, 0x18($t8) +/* 0CAF28 800CA328 8FA80038 */ lw $t0, 0x38($sp) +/* 0CAF2C 800CA32C 3C0B800E */ lui $t3, 0x800e +/* 0CAF30 800CA330 910A0013 */ lbu $t2, 0x13($t0) +/* 0CAF34 800CA334 8FB90058 */ lw $t9, 0x58($sp) +/* 0CAF38 800CA338 000A4840 */ sll $t1, $t2, 1 +/* 0CAF3C 800CA33C 01695821 */ addu $t3, $t3, $t1 +/* 0CAF40 800CA340 856B37A0 */ lh $t3, 0x37a0($t3) +/* 0CAF44 800CA344 00000000 */ nop +/* 0CAF48 800CA348 A72B0020 */ sh $t3, 0x20($t9) +/* 0CAF4C 800CA34C 8FAC0038 */ lw $t4, 0x38($sp) +/* 0CAF50 800CA350 3C18800E */ lui $t8, 0x800e +/* 0CAF54 800CA354 918D0013 */ lbu $t5, 0x13($t4) +/* 0CAF58 800CA358 8FA80058 */ lw $t0, 0x58($sp) +/* 0CAF5C 800CA35C 000D7023 */ negu $t6, $t5 +/* 0CAF60 800CA360 000E7840 */ sll $t7, $t6, 1 +/* 0CAF64 800CA364 030FC021 */ addu $t8, $t8, $t7 +/* 0CAF68 800CA368 8718389E */ lh $t8, 0x389e($t8) +/* 0CAF6C 800CA36C 00000000 */ nop +/* 0CAF70 800CA370 A5180022 */ sh $t8, 0x22($t0) +/* 0CAF74 800CA374 8FAA0038 */ lw $t2, 0x38($sp) +/* 0CAF78 800CA378 00000000 */ nop +/* 0CAF7C 800CA37C 8D490014 */ lw $t1, 0x14($t2) +/* 0CAF80 800CA380 00000000 */ nop +/* 0CAF84 800CA384 11200008 */ beqz $t1, .L800CA3A8 +/* 0CAF88 800CA388 00000000 */ nop +/* 0CAF8C 800CA38C 8FB90058 */ lw $t9, 0x58($sp) +/* 0CAF90 800CA390 240B0001 */ li $t3, 1 +/* 0CAF94 800CA394 A72B001C */ sh $t3, 0x1c($t9) +/* 0CAF98 800CA398 8FAD0058 */ lw $t5, 0x58($sp) +/* 0CAF9C 800CA39C 240C0001 */ li $t4, 1 +/* 0CAFA0 800CA3A0 1000001A */ b .L800CA40C +/* 0CAFA4 800CA3A4 A5AC001E */ sh $t4, 0x1e($t5) +.L800CA3A8: +/* 0CAFA8 800CA3A8 8FAE0058 */ lw $t6, 0x58($sp) +/* 0CAFAC 800CA3AC 3C08800E */ lui $t0, 0x800e +/* 0CAFB0 800CA3B0 85CF0018 */ lh $t7, 0x18($t6) +/* 0CAFB4 800CA3B4 85CA001A */ lh $t2, 0x1a($t6) +/* 0CAFB8 800CA3B8 000FC040 */ sll $t8, $t7, 1 +/* 0CAFBC 800CA3BC 01184021 */ addu $t0, $t0, $t8 +/* 0CAFC0 800CA3C0 850837A0 */ lh $t0, 0x37a0($t0) +/* 0CAFC4 800CA3C4 00000000 */ nop +/* 0CAFC8 800CA3C8 010A0019 */ multu $t0, $t2 +/* 0CAFCC 800CA3CC 00004812 */ mflo $t1 +/* 0CAFD0 800CA3D0 00095BC3 */ sra $t3, $t1, 0xf +/* 0CAFD4 800CA3D4 A5CB001C */ sh $t3, 0x1c($t6) +/* 0CAFD8 800CA3D8 8FB90058 */ lw $t9, 0x58($sp) +/* 0CAFDC 800CA3DC 3C18800E */ lui $t8, 0x800e +/* 0CAFE0 800CA3E0 872C0018 */ lh $t4, 0x18($t9) +/* 0CAFE4 800CA3E4 8728001A */ lh $t0, 0x1a($t9) +/* 0CAFE8 800CA3E8 000C6823 */ negu $t5, $t4 +/* 0CAFEC 800CA3EC 000D7840 */ sll $t7, $t5, 1 +/* 0CAFF0 800CA3F0 030FC021 */ addu $t8, $t8, $t7 +/* 0CAFF4 800CA3F4 8718389E */ lh $t8, 0x389e($t8) +/* 0CAFF8 800CA3F8 00000000 */ nop +/* 0CAFFC 800CA3FC 03080019 */ multu $t8, $t0 +/* 0CB000 800CA400 00005012 */ mflo $t2 +/* 0CB004 800CA404 000A4BC3 */ sra $t1, $t2, 0xf +/* 0CB008 800CA408 A729001E */ sh $t1, 0x1e($t9) +.L800CA40C: +/* 0CB00C 800CA40C 8FAB0034 */ lw $t3, 0x34($sp) +/* 0CB010 800CA410 00000000 */ nop +/* 0CB014 800CA414 8D6E0000 */ lw $t6, ($t3) +/* 0CB018 800CA418 00000000 */ nop +/* 0CB01C 800CA41C 11C0000E */ beqz $t6, .L800CA458 +/* 0CB020 800CA420 00000000 */ nop +/* 0CB024 800CA424 8FAC0038 */ lw $t4, 0x38($sp) +/* 0CB028 800CA428 00000000 */ nop +/* 0CB02C 800CA42C C584000C */ lwc1 $f4, 0xc($t4) +/* 0CB030 800CA430 00000000 */ nop +/* 0CB034 800CA434 E7A4002C */ swc1 $f4, 0x2c($sp) +/* 0CB038 800CA438 8FAD0034 */ lw $t5, 0x34($sp) +/* 0CB03C 800CA43C 8FA6002C */ lw $a2, 0x2c($sp) +/* 0CB040 800CA440 8DAF0000 */ lw $t7, ($t5) +/* 0CB044 800CA444 24050007 */ li $a1, 7 +/* 0CB048 800CA448 8DF90008 */ lw $t9, 8($t7) +/* 0CB04C 800CA44C 01E02025 */ move $a0, $t7 +/* 0CB050 800CA450 0320F809 */ jalr $t9 +/* 0CB054 800CA454 00000000 */ nop +.L800CA458: +/* 0CB058 800CA458 10000134 */ b .L800CA92C +/* 0CB05C 800CA45C 00000000 */ nop +/* 0CB060 800CA460 8FB8006C */ lw $t8, 0x6c($sp) +/* 0CB064 800CA464 8FA8005C */ lw $t0, 0x5c($sp) +/* 0CB068 800CA468 8FA40058 */ lw $a0, 0x58($sp) +/* 0CB06C 800CA46C 8FA70048 */ lw $a3, 0x48($sp) +/* 0CB070 800CA470 27A50056 */ addiu $a1, $sp, 0x56 +/* 0CB074 800CA474 27A60046 */ addiu $a2, $sp, 0x46 +/* 0CB078 800CA478 AFB80010 */ sw $t8, 0x10($sp) +/* 0CB07C 800CA47C 0C032B17 */ jal func_800CAC5C +/* 0CB080 800CA480 AFA80014 */ sw $t0, 0x14($sp) +/* 0CB084 800CA484 AFA2005C */ sw $v0, 0x5c($sp) +/* 0CB088 800CA488 8FAA0058 */ lw $t2, 0x58($sp) +/* 0CB08C 800CA48C 8FAB0048 */ lw $t3, 0x48($sp) +/* 0CB090 800CA490 8D490030 */ lw $t1, 0x30($t2) +/* 0CB094 800CA494 00000000 */ nop +/* 0CB098 800CA498 012B7021 */ addu $t6, $t1, $t3 +/* 0CB09C 800CA49C AD4E0030 */ sw $t6, 0x30($t2) +/* 0CB0A0 800CA4A0 8FAC0058 */ lw $t4, 0x58($sp) +/* 0CB0A4 800CA4A4 00000000 */ nop +/* 0CB0A8 800CA4A8 8D8D0030 */ lw $t5, 0x30($t4) +/* 0CB0AC 800CA4AC 8D8F0034 */ lw $t7, 0x34($t4) +/* 0CB0B0 800CA4B0 00000000 */ nop +/* 0CB0B4 800CA4B4 01AF082A */ slt $at, $t5, $t7 +/* 0CB0B8 800CA4B8 14200029 */ bnez $at, .L800CA560 +/* 0CB0BC 800CA4BC 00000000 */ nop +/* 0CB0C0 800CA4C0 8FB90058 */ lw $t9, 0x58($sp) +/* 0CB0C4 800CA4C4 3C09800E */ lui $t1, 0x800e +/* 0CB0C8 800CA4C8 87380018 */ lh $t8, 0x18($t9) +/* 0CB0CC 800CA4CC 872B001A */ lh $t3, 0x1a($t9) +/* 0CB0D0 800CA4D0 00184040 */ sll $t0, $t8, 1 +/* 0CB0D4 800CA4D4 01284821 */ addu $t1, $t1, $t0 +/* 0CB0D8 800CA4D8 852937A0 */ lh $t1, 0x37a0($t1) +/* 0CB0DC 800CA4DC 00000000 */ nop +/* 0CB0E0 800CA4E0 012B0019 */ multu $t1, $t3 +/* 0CB0E4 800CA4E4 00007012 */ mflo $t6 +/* 0CB0E8 800CA4E8 000E53C3 */ sra $t2, $t6, 0xf +/* 0CB0EC 800CA4EC A72A0028 */ sh $t2, 0x28($t9) +/* 0CB0F0 800CA4F0 8FAC0058 */ lw $t4, 0x58($sp) +/* 0CB0F4 800CA4F4 3C08800E */ lui $t0, 0x800e +/* 0CB0F8 800CA4F8 858D0018 */ lh $t5, 0x18($t4) +/* 0CB0FC 800CA4FC 8589001A */ lh $t1, 0x1a($t4) +/* 0CB100 800CA500 000D7823 */ negu $t7, $t5 +/* 0CB104 800CA504 000FC040 */ sll $t8, $t7, 1 +/* 0CB108 800CA508 01184021 */ addu $t0, $t0, $t8 +/* 0CB10C 800CA50C 8508389E */ lh $t0, 0x389e($t0) +/* 0CB110 800CA510 00000000 */ nop +/* 0CB114 800CA514 01090019 */ multu $t0, $t1 +/* 0CB118 800CA518 00005812 */ mflo $t3 +/* 0CB11C 800CA51C 000B73C3 */ sra $t6, $t3, 0xf +/* 0CB120 800CA520 A58E002E */ sh $t6, 0x2e($t4) +/* 0CB124 800CA524 8FAA0058 */ lw $t2, 0x58($sp) +/* 0CB128 800CA528 00000000 */ nop +/* 0CB12C 800CA52C 8D590034 */ lw $t9, 0x34($t2) +/* 0CB130 800CA530 00000000 */ nop +/* 0CB134 800CA534 AD590030 */ sw $t9, 0x30($t2) +/* 0CB138 800CA538 8FAD0058 */ lw $t5, 0x58($sp) +/* 0CB13C 800CA53C 00000000 */ nop +/* 0CB140 800CA540 85AF0028 */ lh $t7, 0x28($t5) +/* 0CB144 800CA544 00000000 */ nop +/* 0CB148 800CA548 A5AF001C */ sh $t7, 0x1c($t5) +/* 0CB14C 800CA54C 8FB80058 */ lw $t8, 0x58($sp) +/* 0CB150 800CA550 00000000 */ nop +/* 0CB154 800CA554 8708002E */ lh $t0, 0x2e($t8) +/* 0CB158 800CA558 10000029 */ b .L800CA600 +/* 0CB15C 800CA55C A708001E */ sh $t0, 0x1e($t8) +.L800CA560: +/* 0CB160 800CA560 8FA90058 */ lw $t1, 0x58($sp) +/* 0CB164 800CA564 00000000 */ nop +/* 0CB168 800CA568 852B001C */ lh $t3, 0x1c($t1) +/* 0CB16C 800CA56C 8D250030 */ lw $a1, 0x30($t1) +/* 0CB170 800CA570 448B3000 */ mtc1 $t3, $f6 +/* 0CB174 800CA574 85260026 */ lh $a2, 0x26($t1) +/* 0CB178 800CA578 95270024 */ lhu $a3, 0x24($t1) +/* 0CB17C 800CA57C 0C032D26 */ jal func_800CB498 +/* 0CB180 800CA580 46803320 */ cvt.s.w $f12, $f6 +/* 0CB184 800CA584 444EF800 */ cfc1 $t6, $31 +/* 0CB188 800CA588 8FB90058 */ lw $t9, 0x58($sp) +/* 0CB18C 800CA58C 35C10003 */ ori $at, $t6, 3 +/* 0CB190 800CA590 38210002 */ xori $at, $at, 2 +/* 0CB194 800CA594 44C1F800 */ ctc1 $at, $31 +/* 0CB198 800CA598 00000000 */ nop +/* 0CB19C 800CA59C 46000224 */ cvt.w.s $f8, $f0 +/* 0CB1A0 800CA5A0 440C4000 */ mfc1 $t4, $f8 +/* 0CB1A4 800CA5A4 44CEF800 */ ctc1 $t6, $31 +/* 0CB1A8 800CA5A8 A72C001C */ sh $t4, 0x1c($t9) +/* 0CB1AC 800CA5AC 00000000 */ nop +/* 0CB1B0 800CA5B0 8FAA0058 */ lw $t2, 0x58($sp) +/* 0CB1B4 800CA5B4 00000000 */ nop +/* 0CB1B8 800CA5B8 854F001E */ lh $t7, 0x1e($t2) +/* 0CB1BC 800CA5BC 8D450030 */ lw $a1, 0x30($t2) +/* 0CB1C0 800CA5C0 448F5000 */ mtc1 $t7, $f10 +/* 0CB1C4 800CA5C4 8546002C */ lh $a2, 0x2c($t2) +/* 0CB1C8 800CA5C8 9547002A */ lhu $a3, 0x2a($t2) +/* 0CB1CC 800CA5CC 0C032D26 */ jal func_800CB498 +/* 0CB1D0 800CA5D0 46805320 */ cvt.s.w $f12, $f10 +/* 0CB1D4 800CA5D4 444DF800 */ cfc1 $t5, $31 +/* 0CB1D8 800CA5D8 8FB80058 */ lw $t8, 0x58($sp) +/* 0CB1DC 800CA5DC 35A10003 */ ori $at, $t5, 3 +/* 0CB1E0 800CA5E0 38210002 */ xori $at, $at, 2 +/* 0CB1E4 800CA5E4 44C1F800 */ ctc1 $at, $31 +/* 0CB1E8 800CA5E8 00000000 */ nop +/* 0CB1EC 800CA5EC 46000424 */ cvt.w.s $f16, $f0 +/* 0CB1F0 800CA5F0 44088000 */ mfc1 $t0, $f16 +/* 0CB1F4 800CA5F4 44CDF800 */ ctc1 $t5, $31 +/* 0CB1F8 800CA5F8 A708001E */ sh $t0, 0x1e($t8) +/* 0CB1FC 800CA5FC 00000000 */ nop +.L800CA600: +/* 0CB200 800CA600 8FAB0058 */ lw $t3, 0x58($sp) +/* 0CB204 800CA604 00000000 */ nop +/* 0CB208 800CA608 8569001C */ lh $t1, 0x1c($t3) +/* 0CB20C 800CA60C 00000000 */ nop +/* 0CB210 800CA610 15200004 */ bnez $t1, .L800CA624 +/* 0CB214 800CA614 00000000 */ nop +/* 0CB218 800CA618 8FAC0058 */ lw $t4, 0x58($sp) +/* 0CB21C 800CA61C 240E0001 */ li $t6, 1 +/* 0CB220 800CA620 A58E001C */ sh $t6, 0x1c($t4) +.L800CA624: +/* 0CB224 800CA624 8FB90058 */ lw $t9, 0x58($sp) +/* 0CB228 800CA628 00000000 */ nop +/* 0CB22C 800CA62C 872F001E */ lh $t7, 0x1e($t9) +/* 0CB230 800CA630 00000000 */ nop +/* 0CB234 800CA634 15E00004 */ bnez $t7, .L800CA648 +/* 0CB238 800CA638 00000000 */ nop +/* 0CB23C 800CA63C 8FAD0058 */ lw $t5, 0x58($sp) +/* 0CB240 800CA640 240A0001 */ li $t2, 1 +/* 0CB244 800CA644 A5AA001E */ sh $t2, 0x1e($t5) +.L800CA648: +/* 0CB248 800CA648 8FA80058 */ lw $t0, 0x58($sp) +/* 0CB24C 800CA64C 2401000C */ li $at, 12 +/* 0CB250 800CA650 8D18003C */ lw $t8, 0x3c($t0) +/* 0CB254 800CA654 00000000 */ nop +/* 0CB258 800CA658 870B0008 */ lh $t3, 8($t8) +/* 0CB25C 800CA65C 00000000 */ nop +/* 0CB260 800CA660 15610008 */ bne $t3, $at, .L800CA684 +/* 0CB264 800CA664 00000000 */ nop +/* 0CB268 800CA668 8FA90058 */ lw $t1, 0x58($sp) +/* 0CB26C 800CA66C 00000000 */ nop +/* 0CB270 800CA670 8D2E003C */ lw $t6, 0x3c($t1) +/* 0CB274 800CA674 00000000 */ nop +/* 0CB278 800CA678 8DCC000C */ lw $t4, 0xc($t6) +/* 0CB27C 800CA67C 00000000 */ nop +/* 0CB280 800CA680 A52C0018 */ sh $t4, 0x18($t1) +.L800CA684: +/* 0CB284 800CA684 8FB90058 */ lw $t9, 0x58($sp) +/* 0CB288 800CA688 2401000B */ li $at, 11 +/* 0CB28C 800CA68C 8F2F003C */ lw $t7, 0x3c($t9) +/* 0CB290 800CA690 00000000 */ nop +/* 0CB294 800CA694 85EA0008 */ lh $t2, 8($t7) +/* 0CB298 800CA698 00000000 */ nop +/* 0CB29C 800CA69C 1541001E */ bne $t2, $at, .L800CA718 +/* 0CB2A0 800CA6A0 00000000 */ nop +/* 0CB2A4 800CA6A4 8FAD0058 */ lw $t5, 0x58($sp) +/* 0CB2A8 800CA6A8 00000000 */ nop +/* 0CB2AC 800CA6AC ADA00030 */ sw $zero, 0x30($t5) +/* 0CB2B0 800CA6B0 8FA80058 */ lw $t0, 0x58($sp) +/* 0CB2B4 800CA6B4 00000000 */ nop +/* 0CB2B8 800CA6B8 8D18003C */ lw $t8, 0x3c($t0) +/* 0CB2BC 800CA6BC 00000000 */ nop +/* 0CB2C0 800CA6C0 8F0B000C */ lw $t3, 0xc($t8) +/* 0CB2C4 800CA6C4 00000000 */ nop +/* 0CB2C8 800CA6C8 AFAB0040 */ sw $t3, 0x40($sp) +/* 0CB2CC 800CA6CC 8FAE0040 */ lw $t6, 0x40($sp) +/* 0CB2D0 800CA6D0 00000000 */ nop +/* 0CB2D4 800CA6D4 01CE6021 */ addu $t4, $t6, $t6 +/* 0CB2D8 800CA6D8 05810003 */ bgez $t4, .L800CA6E8 +/* 0CB2DC 800CA6DC 000C4843 */ sra $t1, $t4, 1 +/* 0CB2E0 800CA6E0 25810001 */ addiu $at, $t4, 1 +/* 0CB2E4 800CA6E4 00014843 */ sra $t1, $at, 1 +.L800CA6E8: +/* 0CB2E8 800CA6E8 AFA90040 */ sw $t1, 0x40($sp) +/* 0CB2EC 800CA6EC 8FB90040 */ lw $t9, 0x40($sp) +/* 0CB2F0 800CA6F0 8FAF0058 */ lw $t7, 0x58($sp) +/* 0CB2F4 800CA6F4 00000000 */ nop +/* 0CB2F8 800CA6F8 A5F9001A */ sh $t9, 0x1a($t7) +/* 0CB2FC 800CA6FC 8FAA0058 */ lw $t2, 0x58($sp) +/* 0CB300 800CA700 00000000 */ nop +/* 0CB304 800CA704 8D4D003C */ lw $t5, 0x3c($t2) +/* 0CB308 800CA708 00000000 */ nop +/* 0CB30C 800CA70C 8DA80010 */ lw $t0, 0x10($t5) +/* 0CB310 800CA710 00000000 */ nop +/* 0CB314 800CA714 AD480034 */ sw $t0, 0x34($t2) +.L800CA718: +/* 0CB318 800CA718 8FB80058 */ lw $t8, 0x58($sp) +/* 0CB31C 800CA71C 24010010 */ li $at, 16 +/* 0CB320 800CA720 8F0B003C */ lw $t3, 0x3c($t8) +/* 0CB324 800CA724 00000000 */ nop +/* 0CB328 800CA728 856E0008 */ lh $t6, 8($t3) +/* 0CB32C 800CA72C 00000000 */ nop +/* 0CB330 800CA730 15C10018 */ bne $t6, $at, .L800CA794 +/* 0CB334 800CA734 00000000 */ nop +/* 0CB338 800CA738 8FAC0058 */ lw $t4, 0x58($sp) +/* 0CB33C 800CA73C 3C0D800E */ lui $t5, 0x800e +/* 0CB340 800CA740 8D89003C */ lw $t1, 0x3c($t4) +/* 0CB344 800CA744 00000000 */ nop +/* 0CB348 800CA748 8D39000C */ lw $t9, 0xc($t1) +/* 0CB34C 800CA74C 00000000 */ nop +/* 0CB350 800CA750 00197840 */ sll $t7, $t9, 1 +/* 0CB354 800CA754 01AF6821 */ addu $t5, $t5, $t7 +/* 0CB358 800CA758 85AD37A0 */ lh $t5, 0x37a0($t5) +/* 0CB35C 800CA75C 00000000 */ nop +/* 0CB360 800CA760 A58D0020 */ sh $t5, 0x20($t4) +/* 0CB364 800CA764 8FA80058 */ lw $t0, 0x58($sp) +/* 0CB368 800CA768 3C09800E */ lui $t1, 0x800e +/* 0CB36C 800CA76C 8D0A003C */ lw $t2, 0x3c($t0) +/* 0CB370 800CA770 00000000 */ nop +/* 0CB374 800CA774 8D58000C */ lw $t8, 0xc($t2) +/* 0CB378 800CA778 00000000 */ nop +/* 0CB37C 800CA77C 00185823 */ negu $t3, $t8 +/* 0CB380 800CA780 000B7040 */ sll $t6, $t3, 1 +/* 0CB384 800CA784 012E4821 */ addu $t1, $t1, $t6 +/* 0CB388 800CA788 8529389E */ lh $t1, 0x389e($t1) +/* 0CB38C 800CA78C 00000000 */ nop +/* 0CB390 800CA790 A5090022 */ sh $t1, 0x22($t0) +.L800CA794: +/* 0CB394 800CA794 8FAF0058 */ lw $t7, 0x58($sp) +/* 0CB398 800CA798 24190001 */ li $t9, 1 +/* 0CB39C 800CA79C ADF90038 */ sw $t9, 0x38($t7) +/* 0CB3A0 800CA7A0 10000062 */ b .L800CA92C +/* 0CB3A4 800CA7A4 00000000 */ nop +/* 0CB3A8 800CA7A8 8FAD0058 */ lw $t5, 0x58($sp) +/* 0CB3AC 800CA7AC 00000000 */ nop +/* 0CB3B0 800CA7B0 8DAC003C */ lw $t4, 0x3c($t5) +/* 0CB3B4 800CA7B4 00000000 */ nop +/* 0CB3B8 800CA7B8 AFAC0028 */ sw $t4, 0x28($sp) +/* 0CB3BC 800CA7BC 8FAA0028 */ lw $t2, 0x28($sp) +/* 0CB3C0 800CA7C0 00000000 */ nop +/* 0CB3C4 800CA7C4 8558000A */ lh $t8, 0xa($t2) +/* 0CB3C8 800CA7C8 00000000 */ nop +/* 0CB3CC 800CA7CC 13000007 */ beqz $t8, .L800CA7EC +/* 0CB3D0 800CA7D0 00000000 */ nop +/* 0CB3D4 800CA7D4 8FAB0058 */ lw $t3, 0x58($sp) +/* 0CB3D8 800CA7D8 24050008 */ li $a1, 8 +/* 0CB3DC 800CA7DC 8D790008 */ lw $t9, 8($t3) +/* 0CB3E0 800CA7E0 00003025 */ move $a2, $zero +/* 0CB3E4 800CA7E4 0320F809 */ jalr $t9 +/* 0CB3E8 800CA7E8 01602025 */ move $a0, $t3 +.L800CA7EC: +/* 0CB3EC 800CA7EC 8FAE0058 */ lw $t6, 0x58($sp) +/* 0CB3F0 800CA7F0 8FA90028 */ lw $t1, 0x28($sp) +/* 0CB3F4 800CA7F4 8DD90008 */ lw $t9, 8($t6) +/* 0CB3F8 800CA7F8 8D26000C */ lw $a2, 0xc($t1) +/* 0CB3FC 800CA7FC 24050005 */ li $a1, 5 +/* 0CB400 800CA800 0320F809 */ jalr $t9 +/* 0CB404 800CA804 01C02025 */ move $a0, $t6 +/* 0CB408 800CA808 8FA80058 */ lw $t0, 0x58($sp) +/* 0CB40C 800CA80C 24050009 */ li $a1, 9 +/* 0CB410 800CA810 8D190008 */ lw $t9, 8($t0) +/* 0CB414 800CA814 00003025 */ move $a2, $zero +/* 0CB418 800CA818 0320F809 */ jalr $t9 +/* 0CB41C 800CA81C 01002025 */ move $a0, $t0 +/* 0CB420 800CA820 10000042 */ b .L800CA92C +/* 0CB424 800CA824 00000000 */ nop +/* 0CB428 800CA828 8FAF006C */ lw $t7, 0x6c($sp) +/* 0CB42C 800CA82C 8FAD005C */ lw $t5, 0x5c($sp) +/* 0CB430 800CA830 8FA40058 */ lw $a0, 0x58($sp) +/* 0CB434 800CA834 8FA70048 */ lw $a3, 0x48($sp) +/* 0CB438 800CA838 27A50056 */ addiu $a1, $sp, 0x56 +/* 0CB43C 800CA83C 27A60046 */ addiu $a2, $sp, 0x46 +/* 0CB440 800CA840 AFAF0010 */ sw $t7, 0x10($sp) +/* 0CB444 800CA844 0C032B17 */ jal func_800CAC5C +/* 0CB448 800CA848 AFAD0014 */ sw $t5, 0x14($sp) +/* 0CB44C 800CA84C AFA2005C */ sw $v0, 0x5c($sp) +/* 0CB450 800CA850 8FAC0058 */ lw $t4, 0x58($sp) +/* 0CB454 800CA854 24050004 */ li $a1, 4 +/* 0CB458 800CA858 8D990008 */ lw $t9, 8($t4) +/* 0CB45C 800CA85C 00003025 */ move $a2, $zero +/* 0CB460 800CA860 0320F809 */ jalr $t9 +/* 0CB464 800CA864 01802025 */ move $a0, $t4 +/* 0CB468 800CA868 10000030 */ b .L800CA92C +/* 0CB46C 800CA86C 00000000 */ nop +/* 0CB470 800CA870 3C0A800E */ lui $t2, %hi(D_800E3780) # $t2, 0x800e +/* 0CB474 800CA874 8D4A3780 */ lw $t2, %lo(D_800E3780)($t2) +/* 0CB478 800CA878 00000000 */ nop +/* 0CB47C 800CA87C AFAA0024 */ sw $t2, 0x24($sp) +/* 0CB480 800CA880 8FB80058 */ lw $t8, 0x58($sp) +/* 0CB484 800CA884 00000000 */ nop +/* 0CB488 800CA888 8F0B003C */ lw $t3, 0x3c($t8) +/* 0CB48C 800CA88C 00000000 */ nop +/* 0CB490 800CA890 AFAB0020 */ sw $t3, 0x20($sp) +/* 0CB494 800CA894 8FA90020 */ lw $t1, 0x20($sp) +/* 0CB498 800CA898 00000000 */ nop +/* 0CB49C 800CA89C 8D2E000C */ lw $t6, 0xc($t1) +/* 0CB4A0 800CA8A0 00000000 */ nop +/* 0CB4A4 800CA8A4 ADC000D8 */ sw $zero, 0xd8($t6) +/* 0CB4A8 800CA8A8 8FA80020 */ lw $t0, 0x20($sp) +/* 0CB4AC 800CA8AC 8FA40024 */ lw $a0, 0x24($sp) +/* 0CB4B0 800CA8B0 8D05000C */ lw $a1, 0xc($t0) +/* 0CB4B4 800CA8B4 0C0195C7 */ jal func_8006571C +/* 0CB4B8 800CA8B8 00000000 */ nop +/* 0CB4BC 800CA8BC 1000001B */ b .L800CA92C +/* 0CB4C0 800CA8C0 00000000 */ nop +.L800CA8C4: +/* 0CB4C4 800CA8C4 8FAF006C */ lw $t7, 0x6c($sp) +/* 0CB4C8 800CA8C8 8FAD005C */ lw $t5, 0x5c($sp) +/* 0CB4CC 800CA8CC 8FA40058 */ lw $a0, 0x58($sp) +/* 0CB4D0 800CA8D0 8FA70048 */ lw $a3, 0x48($sp) +/* 0CB4D4 800CA8D4 27A50056 */ addiu $a1, $sp, 0x56 +/* 0CB4D8 800CA8D8 27A60046 */ addiu $a2, $sp, 0x46 +/* 0CB4DC 800CA8DC AFAF0010 */ sw $t7, 0x10($sp) +/* 0CB4E0 800CA8E0 0C032B17 */ jal func_800CAC5C +/* 0CB4E4 800CA8E4 AFAD0014 */ sw $t5, 0x14($sp) +/* 0CB4E8 800CA8E8 AFA2005C */ sw $v0, 0x5c($sp) +/* 0CB4EC 800CA8EC 8FAC0058 */ lw $t4, 0x58($sp) +/* 0CB4F0 800CA8F0 8FAA0048 */ lw $t2, 0x48($sp) +/* 0CB4F4 800CA8F4 8D990030 */ lw $t9, 0x30($t4) +/* 0CB4F8 800CA8F8 00000000 */ nop +/* 0CB4FC 800CA8FC 032AC021 */ addu $t8, $t9, $t2 +/* 0CB500 800CA900 AD980030 */ sw $t8, 0x30($t4) +/* 0CB504 800CA904 8FAB0058 */ lw $t3, 0x58($sp) +/* 0CB508 800CA908 00000000 */ nop +/* 0CB50C 800CA90C 8D69003C */ lw $t1, 0x3c($t3) +/* 0CB510 800CA910 8D790008 */ lw $t9, 8($t3) +/* 0CB514 800CA914 85250008 */ lh $a1, 8($t1) +/* 0CB518 800CA918 8D26000C */ lw $a2, 0xc($t1) +/* 0CB51C 800CA91C 0320F809 */ jalr $t9 +/* 0CB520 800CA920 01602025 */ move $a0, $t3 +/* 0CB524 800CA924 10000001 */ b .L800CA92C +/* 0CB528 800CA928 00000000 */ nop +.L800CA92C: +/* 0CB52C 800CA92C 8FA80048 */ lw $t0, 0x48($sp) +/* 0CB530 800CA930 87AE0046 */ lh $t6, 0x46($sp) +/* 0CB534 800CA934 00087840 */ sll $t7, $t0, 1 +/* 0CB538 800CA938 01CF6821 */ addu $t5, $t6, $t7 +/* 0CB53C 800CA93C A7AD0046 */ sh $t5, 0x46($sp) +/* 0CB540 800CA940 8FAA0068 */ lw $t2, 0x68($sp) +/* 0CB544 800CA944 8FB80048 */ lw $t8, 0x48($sp) +/* 0CB548 800CA948 00000000 */ nop +/* 0CB54C 800CA94C 01586023 */ subu $t4, $t2, $t8 +/* 0CB550 800CA950 AFAC0068 */ sw $t4, 0x68($sp) +/* 0CB554 800CA954 8FA90058 */ lw $t1, 0x58($sp) +/* 0CB558 800CA958 00000000 */ nop +/* 0CB55C 800CA95C 8D2B003C */ lw $t3, 0x3c($t1) +/* 0CB560 800CA960 00000000 */ nop +/* 0CB564 800CA964 AFAB003C */ sw $t3, 0x3c($sp) +/* 0CB568 800CA968 8FB90058 */ lw $t9, 0x58($sp) +/* 0CB56C 800CA96C 00000000 */ nop +/* 0CB570 800CA970 8F28003C */ lw $t0, 0x3c($t9) +/* 0CB574 800CA974 00000000 */ nop +/* 0CB578 800CA978 8D0E0000 */ lw $t6, ($t0) +/* 0CB57C 800CA97C 00000000 */ nop +/* 0CB580 800CA980 AF2E003C */ sw $t6, 0x3c($t9) +/* 0CB584 800CA984 8FAF0058 */ lw $t7, 0x58($sp) +/* 0CB588 800CA988 00000000 */ nop +/* 0CB58C 800CA98C 8DED003C */ lw $t5, 0x3c($t7) +/* 0CB590 800CA990 00000000 */ nop +/* 0CB594 800CA994 15A00004 */ bnez $t5, .L800CA9A8 +/* 0CB598 800CA998 00000000 */ nop +/* 0CB59C 800CA99C 8FAA0058 */ lw $t2, 0x58($sp) +/* 0CB5A0 800CA9A0 00000000 */ nop +/* 0CB5A4 800CA9A4 AD400040 */ sw $zero, 0x40($t2) +.L800CA9A8: +/* 0CB5A8 800CA9A8 8FA4003C */ lw $a0, 0x3c($sp) +/* 0CB5AC 800CA9AC 0C0195A7 */ jal func_8006569C +/* 0CB5B0 800CA9B0 00000000 */ nop +/* 0CB5B4 800CA9B4 8FB80058 */ lw $t8, 0x58($sp) +/* 0CB5B8 800CA9B8 00000000 */ nop +/* 0CB5BC 800CA9BC 8F0C003C */ lw $t4, 0x3c($t8) +/* 0CB5C0 800CA9C0 00000000 */ nop +/* 0CB5C4 800CA9C4 1580FDD9 */ bnez $t4, .L800CA12C +/* 0CB5C8 800CA9C8 00000000 */ nop +.L800CA9CC: +/* 0CB5CC 800CA9CC 8FA90058 */ lw $t1, 0x58($sp) +/* 0CB5D0 800CA9D0 24010001 */ li $at, 1 +/* 0CB5D4 800CA9D4 8D2B0048 */ lw $t3, 0x48($t1) +/* 0CB5D8 800CA9D8 00000000 */ nop +/* 0CB5DC 800CA9DC 15610011 */ bne $t3, $at, .L800CAA24 +/* 0CB5E0 800CA9E0 00000000 */ nop +/* 0CB5E4 800CA9E4 8FA8006C */ lw $t0, 0x6c($sp) +/* 0CB5E8 800CA9E8 8FAE005C */ lw $t6, 0x5c($sp) +/* 0CB5EC 800CA9EC 8FA40058 */ lw $a0, 0x58($sp) +/* 0CB5F0 800CA9F0 8FA70068 */ lw $a3, 0x68($sp) +/* 0CB5F4 800CA9F4 27A50056 */ addiu $a1, $sp, 0x56 +/* 0CB5F8 800CA9F8 27A60046 */ addiu $a2, $sp, 0x46 +/* 0CB5FC 800CA9FC AFA80010 */ sw $t0, 0x10($sp) +/* 0CB600 800CAA00 0C032B17 */ jal func_800CAC5C +/* 0CB604 800CAA04 AFAE0014 */ sw $t6, 0x14($sp) +/* 0CB608 800CAA08 AFA2005C */ sw $v0, 0x5c($sp) +/* 0CB60C 800CAA0C 8FB90058 */ lw $t9, 0x58($sp) +/* 0CB610 800CAA10 8FAD0068 */ lw $t5, 0x68($sp) +/* 0CB614 800CAA14 8F2F0030 */ lw $t7, 0x30($t9) +/* 0CB618 800CAA18 00000000 */ nop +/* 0CB61C 800CAA1C 01ED5021 */ addu $t2, $t7, $t5 +/* 0CB620 800CAA20 AF2A0030 */ sw $t2, 0x30($t9) +.L800CAA24: +/* 0CB624 800CAA24 8FB80058 */ lw $t8, 0x58($sp) +/* 0CB628 800CAA28 00000000 */ nop +/* 0CB62C 800CAA2C 8F0C0030 */ lw $t4, 0x30($t8) +/* 0CB630 800CAA30 8F090034 */ lw $t1, 0x34($t8) +/* 0CB634 800CAA34 00000000 */ nop +/* 0CB638 800CAA38 012C082A */ slt $at, $t1, $t4 +/* 0CB63C 800CAA3C 10200006 */ beqz $at, .L800CAA58 +/* 0CB640 800CAA40 00000000 */ nop +/* 0CB644 800CAA44 8FAB0058 */ lw $t3, 0x58($sp) +/* 0CB648 800CAA48 00000000 */ nop +/* 0CB64C 800CAA4C 8D680034 */ lw $t0, 0x34($t3) +/* 0CB650 800CAA50 00000000 */ nop +/* 0CB654 800CAA54 AD680030 */ sw $t0, 0x30($t3) +.L800CAA58: +/* 0CB658 800CAA58 8FA2005C */ lw $v0, 0x5c($sp) +/* 0CB65C 800CAA5C 10000003 */ b .L800CAA6C +/* 0CB660 800CAA60 00000000 */ nop +/* 0CB664 800CAA64 10000001 */ b .L800CAA6C +/* 0CB668 800CAA68 00000000 */ nop +.L800CAA6C: +/* 0CB66C 800CAA6C 8FBF001C */ lw $ra, 0x1c($sp) +/* 0CB670 800CAA70 27BD0060 */ addiu $sp, $sp, 0x60 +/* 0CB674 800CAA74 03E00008 */ jr $ra +/* 0CB678 800CAA78 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CA9A0/D_800CAA7C.s b/asm/non_matchings/unknown_0CA9A0/D_800CAA7C.s new file mode 100644 index 00000000..c587571e --- /dev/null +++ b/asm/non_matchings/unknown_0CA9A0/D_800CAA7C.s @@ -0,0 +1,133 @@ +glabel D_800CAA7C +/* 0CB67C 800CAA7C 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0CB680 800CAA80 AFBF001C */ sw $ra, 0x1c($sp) +/* 0CB684 800CAA84 AFA40030 */ sw $a0, 0x30($sp) +/* 0CB688 800CAA88 AFA50034 */ sw $a1, 0x34($sp) +/* 0CB68C 800CAA8C AFA60038 */ sw $a2, 0x38($sp) +/* 0CB690 800CAA90 AFB00018 */ sw $s0, 0x18($sp) +/* 0CB694 800CAA94 8FAE0030 */ lw $t6, 0x30($sp) +/* 0CB698 800CAA98 00000000 */ nop +/* 0CB69C 800CAA9C AFAE002C */ sw $t6, 0x2c($sp) +/* 0CB6A0 800CAAA0 8FAF0030 */ lw $t7, 0x30($sp) +/* 0CB6A4 800CAAA4 00000000 */ nop +/* 0CB6A8 800CAAA8 AFAF0028 */ sw $t7, 0x28($sp) +/* 0CB6AC 800CAAAC 8FB00034 */ lw $s0, 0x34($sp) +/* 0CB6B0 800CAAB0 24010001 */ li $at, 1 +/* 0CB6B4 800CAAB4 1201004D */ beq $s0, $at, .L800CABEC +/* 0CB6B8 800CAAB8 00000000 */ nop +/* 0CB6BC 800CAABC 24010003 */ li $at, 3 +/* 0CB6C0 800CAAC0 12010009 */ beq $s0, $at, .L800CAAE8 +/* 0CB6C4 800CAAC4 00000000 */ nop +/* 0CB6C8 800CAAC8 24010004 */ li $at, 4 +/* 0CB6CC 800CAACC 1201001B */ beq $s0, $at, .L800CAB3C +/* 0CB6D0 800CAAD0 00000000 */ nop +/* 0CB6D4 800CAAD4 24010009 */ li $at, 9 +/* 0CB6D8 800CAAD8 12010031 */ beq $s0, $at, .L800CABA0 +/* 0CB6DC 800CAADC 00000000 */ nop +/* 0CB6E0 800CAAE0 10000048 */ b .L800CAC04 +/* 0CB6E4 800CAAE4 00000000 */ nop +.L800CAAE8: +/* 0CB6E8 800CAAE8 8FB80028 */ lw $t8, 0x28($sp) +/* 0CB6EC 800CAAEC 00000000 */ nop +/* 0CB6F0 800CAAF0 8F190040 */ lw $t9, 0x40($t8) +/* 0CB6F4 800CAAF4 00000000 */ nop +/* 0CB6F8 800CAAF8 13200006 */ beqz $t9, .L800CAB14 +/* 0CB6FC 800CAAFC 00000000 */ nop +/* 0CB700 800CAB00 8FA90028 */ lw $t1, 0x28($sp) +/* 0CB704 800CAB04 8FA80038 */ lw $t0, 0x38($sp) +/* 0CB708 800CAB08 8D2A0040 */ lw $t2, 0x40($t1) +/* 0CB70C 800CAB0C 10000005 */ b .L800CAB24 +/* 0CB710 800CAB10 AD480000 */ sw $t0, ($t2) +.L800CAB14: +/* 0CB714 800CAB14 8FAB0038 */ lw $t3, 0x38($sp) +/* 0CB718 800CAB18 8FAC0028 */ lw $t4, 0x28($sp) +/* 0CB71C 800CAB1C 00000000 */ nop +/* 0CB720 800CAB20 AD8B003C */ sw $t3, 0x3c($t4) +.L800CAB24: +/* 0CB724 800CAB24 8FAD0038 */ lw $t5, 0x38($sp) +/* 0CB728 800CAB28 8FAE0028 */ lw $t6, 0x28($sp) +/* 0CB72C 800CAB2C 00000000 */ nop +/* 0CB730 800CAB30 ADCD0040 */ sw $t5, 0x40($t6) +/* 0CB734 800CAB34 10000041 */ b .L800CAC3C +/* 0CB738 800CAB38 00000000 */ nop +.L800CAB3C: +/* 0CB73C 800CAB3C 8FB80028 */ lw $t8, 0x28($sp) +/* 0CB740 800CAB40 240F0001 */ li $t7, 1 +/* 0CB744 800CAB44 AF0F0038 */ sw $t7, 0x38($t8) +/* 0CB748 800CAB48 8FB90028 */ lw $t9, 0x28($sp) +/* 0CB74C 800CAB4C 00000000 */ nop +/* 0CB750 800CAB50 AF200048 */ sw $zero, 0x48($t9) +/* 0CB754 800CAB54 8FA80028 */ lw $t0, 0x28($sp) +/* 0CB758 800CAB58 24090001 */ li $t1, 1 +/* 0CB75C 800CAB5C A509001A */ sh $t1, 0x1a($t0) +/* 0CB760 800CAB60 8FAA002C */ lw $t2, 0x2c($sp) +/* 0CB764 800CAB64 00000000 */ nop +/* 0CB768 800CAB68 8D4B0000 */ lw $t3, ($t2) +/* 0CB76C 800CAB6C 00000000 */ nop +/* 0CB770 800CAB70 11600009 */ beqz $t3, .L800CAB98 +/* 0CB774 800CAB74 00000000 */ nop +/* 0CB778 800CAB78 8FAC002C */ lw $t4, 0x2c($sp) +/* 0CB77C 800CAB7C 8FA60038 */ lw $a2, 0x38($sp) +/* 0CB780 800CAB80 8D8D0000 */ lw $t5, ($t4) +/* 0CB784 800CAB84 24050004 */ li $a1, 4 +/* 0CB788 800CAB88 8DB90008 */ lw $t9, 8($t5) +/* 0CB78C 800CAB8C 01A02025 */ move $a0, $t5 +/* 0CB790 800CAB90 0320F809 */ jalr $t9 +/* 0CB794 800CAB94 00000000 */ nop +.L800CAB98: +/* 0CB798 800CAB98 10000028 */ b .L800CAC3C +/* 0CB79C 800CAB9C 00000000 */ nop +.L800CABA0: +/* 0CB7A0 800CABA0 8FAF0028 */ lw $t7, 0x28($sp) +/* 0CB7A4 800CABA4 240E0001 */ li $t6, 1 +/* 0CB7A8 800CABA8 ADEE0048 */ sw $t6, 0x48($t7) +/* 0CB7AC 800CABAC 8FB8002C */ lw $t8, 0x2c($sp) +/* 0CB7B0 800CABB0 00000000 */ nop +/* 0CB7B4 800CABB4 8F090000 */ lw $t1, ($t8) +/* 0CB7B8 800CABB8 00000000 */ nop +/* 0CB7BC 800CABBC 11200009 */ beqz $t1, .L800CABE4 +/* 0CB7C0 800CABC0 00000000 */ nop +/* 0CB7C4 800CABC4 8FA8002C */ lw $t0, 0x2c($sp) +/* 0CB7C8 800CABC8 8FA60038 */ lw $a2, 0x38($sp) +/* 0CB7CC 800CABCC 8D0A0000 */ lw $t2, ($t0) +/* 0CB7D0 800CABD0 24050009 */ li $a1, 9 +/* 0CB7D4 800CABD4 8D590008 */ lw $t9, 8($t2) +/* 0CB7D8 800CABD8 01402025 */ move $a0, $t2 +/* 0CB7DC 800CABDC 0320F809 */ jalr $t9 +/* 0CB7E0 800CABE0 00000000 */ nop +.L800CABE4: +/* 0CB7E4 800CABE4 10000015 */ b .L800CAC3C +/* 0CB7E8 800CABE8 00000000 */ nop +.L800CABEC: +/* 0CB7EC 800CABEC 8FAB0038 */ lw $t3, 0x38($sp) +/* 0CB7F0 800CABF0 8FAC002C */ lw $t4, 0x2c($sp) +/* 0CB7F4 800CABF4 00000000 */ nop +/* 0CB7F8 800CABF8 AD8B0000 */ sw $t3, ($t4) +/* 0CB7FC 800CABFC 1000000F */ b .L800CAC3C +/* 0CB800 800CAC00 00000000 */ nop +.L800CAC04: +/* 0CB804 800CAC04 8FAD002C */ lw $t5, 0x2c($sp) +/* 0CB808 800CAC08 00000000 */ nop +/* 0CB80C 800CAC0C 8DAE0000 */ lw $t6, ($t5) +/* 0CB810 800CAC10 00000000 */ nop +/* 0CB814 800CAC14 11C00009 */ beqz $t6, .L800CAC3C +/* 0CB818 800CAC18 00000000 */ nop +/* 0CB81C 800CAC1C 8FAF002C */ lw $t7, 0x2c($sp) +/* 0CB820 800CAC20 8FA50034 */ lw $a1, 0x34($sp) +/* 0CB824 800CAC24 8DF80000 */ lw $t8, ($t7) +/* 0CB828 800CAC28 8FA60038 */ lw $a2, 0x38($sp) +/* 0CB82C 800CAC2C 8F190008 */ lw $t9, 8($t8) +/* 0CB830 800CAC30 03002025 */ move $a0, $t8 +/* 0CB834 800CAC34 0320F809 */ jalr $t9 +/* 0CB838 800CAC38 00000000 */ nop +.L800CAC3C: +/* 0CB83C 800CAC3C 10000003 */ b .L800CAC4C +/* 0CB840 800CAC40 00001025 */ move $v0, $zero +/* 0CB844 800CAC44 10000001 */ b .L800CAC4C +/* 0CB848 800CAC48 00000000 */ nop +.L800CAC4C: +/* 0CB84C 800CAC4C 8FBF001C */ lw $ra, 0x1c($sp) +/* 0CB850 800CAC50 8FB00018 */ lw $s0, 0x18($sp) +/* 0CB854 800CAC54 03E00008 */ jr $ra +/* 0CB858 800CAC58 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_0CA9A0/D_800CB540.s b/asm/non_matchings/unknown_0CA9A0/D_800CB540.s new file mode 100644 index 00000000..6f131496 --- /dev/null +++ b/asm/non_matchings/unknown_0CA9A0/D_800CB540.s @@ -0,0 +1,129 @@ +glabel D_800CB540 +/* 0CC140 800CB540 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0CC144 800CB544 24010004 */ li $at, 4 +/* 0CC148 800CB548 AFBF0014 */ sw $ra, 0x14($sp) +/* 0CC14C 800CB54C 10A10055 */ beq $a1, $at, .L800CB6A4 +/* 0CC150 800CB550 00803825 */ move $a3, $a0 +/* 0CC154 800CB554 24010005 */ li $at, 5 +/* 0CC158 800CB558 54A1006B */ bnel $a1, $at, .L800CB708 +/* 0CC15C 800CB55C 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CC160 800CB560 AC860028 */ sw $a2, 0x28($a0) +/* 0CC164 800CB564 8CCE0000 */ lw $t6, ($a2) +/* 0CC168 800CB568 AC800038 */ sw $zero, 0x38($a0) +/* 0CC16C 800CB56C 3C0F800D */ lui $t7, %hi(D_800CBBEC) # $t7, 0x800d +/* 0CC170 800CB570 AC8E0044 */ sw $t6, 0x44($a0) +/* 0CC174 800CB574 90C20008 */ lbu $v0, 8($a2) +/* 0CC178 800CB578 50400007 */ beql $v0, $zero, .L800CB598 +/* 0CC17C 800CB57C 8CE20028 */ lw $v0, 0x28($a3) +/* 0CC180 800CB580 24040001 */ li $a0, 1 +/* 0CC184 800CB584 10440034 */ beq $v0, $a0, .L800CB658 +/* 0CC188 800CB588 3C08800D */ lui $t0, %hi(D_800CB714) # $t0, 0x800d +/* 0CC18C 800CB58C 1000005E */ b .L800CB708 +/* 0CC190 800CB590 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CC194 800CB594 8CE20028 */ lw $v0, 0x28($a3) +.L800CB598: +/* 0CC198 800CB598 25EFBBEC */ addiu $t7, %lo(D_800CBBEC) # addiu $t7, $t7, -0x4414 +/* 0CC19C 800CB59C ACEF0004 */ sw $t7, 4($a3) +/* 0CC1A0 800CB5A0 8C580004 */ lw $t8, 4($v0) +/* 0CC1A4 800CB5A4 24050009 */ li $a1, 9 +/* 0CC1A8 800CB5A8 0305001A */ div $zero, $t8, $a1 +/* 0CC1AC 800CB5AC 0000C812 */ mflo $t9 +/* 0CC1B0 800CB5B0 14A00002 */ bnez $a1, .L800CB5BC +/* 0CC1B4 800CB5B4 00000000 */ nop +/* 0CC1B8 800CB5B8 0007000D */ break 7 +.L800CB5BC: +/* 0CC1BC 800CB5BC 2401FFFF */ li $at, -1 +/* 0CC1C0 800CB5C0 14A10004 */ bne $a1, $at, .L800CB5D4 +/* 0CC1C4 800CB5C4 3C018000 */ lui $at, 0x8000 +/* 0CC1C8 800CB5C8 17010002 */ bne $t8, $at, .L800CB5D4 +/* 0CC1CC 800CB5CC 00000000 */ nop +/* 0CC1D0 800CB5D0 0006000D */ break 6 +.L800CB5D4: +/* 0CC1D4 800CB5D4 03250019 */ multu $t9, $a1 +/* 0CC1D8 800CB5D8 00004012 */ mflo $t0 +/* 0CC1DC 800CB5DC AC480004 */ sw $t0, 4($v0) +/* 0CC1E0 800CB5E0 8CE20028 */ lw $v0, 0x28($a3) +/* 0CC1E4 800CB5E4 8C440010 */ lw $a0, 0x10($v0) +/* 0CC1E8 800CB5E8 8C890000 */ lw $t1, ($a0) +/* 0CC1EC 800CB5EC 8C8B0004 */ lw $t3, 4($a0) +/* 0CC1F0 800CB5F0 00095100 */ sll $t2, $t1, 4 +/* 0CC1F4 800CB5F4 014B0019 */ multu $t2, $t3 +/* 0CC1F8 800CB5F8 00006012 */ mflo $t4 +/* 0CC1FC 800CB5FC ACEC002C */ sw $t4, 0x2c($a3) +/* 0CC200 800CB600 8C43000C */ lw $v1, 0xc($v0) +/* 0CC204 800CB604 50600011 */ beql $v1, $zero, .L800CB64C +/* 0CC208 800CB608 ACE00024 */ sw $zero, 0x24($a3) +/* 0CC20C 800CB60C 8C6D0000 */ lw $t5, ($v1) +/* 0CC210 800CB610 8CE50018 */ lw $a1, 0x18($a3) +/* 0CC214 800CB614 24060020 */ li $a2, 32 +/* 0CC218 800CB618 ACED001C */ sw $t5, 0x1c($a3) +/* 0CC21C 800CB61C 8C4E000C */ lw $t6, 0xc($v0) +/* 0CC220 800CB620 8DCF0004 */ lw $t7, 4($t6) +/* 0CC224 800CB624 ACEF0020 */ sw $t7, 0x20($a3) +/* 0CC228 800CB628 8C58000C */ lw $t8, 0xc($v0) +/* 0CC22C 800CB62C 8F190008 */ lw $t9, 8($t8) +/* 0CC230 800CB630 ACF90024 */ sw $t9, 0x24($a3) +/* 0CC234 800CB634 8C44000C */ lw $a0, 0xc($v0) +/* 0CC238 800CB638 0C034E08 */ jal func_800D3820 +/* 0CC23C 800CB63C 2484000C */ addiu $a0, $a0, 0xc +/* 0CC240 800CB640 10000031 */ b .L800CB708 +/* 0CC244 800CB644 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CC248 800CB648 ACE00024 */ sw $zero, 0x24($a3) +.L800CB64C: +/* 0CC24C 800CB64C ACE00020 */ sw $zero, 0x20($a3) +/* 0CC250 800CB650 1000002C */ b .L800CB704 +/* 0CC254 800CB654 ACE0001C */ sw $zero, 0x1c($a3) +.L800CB658: +/* 0CC258 800CB658 8CE20028 */ lw $v0, 0x28($a3) +/* 0CC25C 800CB65C 2508B714 */ addiu $t0, %lo(D_800CB714) # addiu $t0, $t0, -0x48ec +/* 0CC260 800CB660 ACE80004 */ sw $t0, 4($a3) +/* 0CC264 800CB664 8C43000C */ lw $v1, 0xc($v0) +/* 0CC268 800CB668 5060000B */ beql $v1, $zero, .L800CB698 +/* 0CC26C 800CB66C ACE00024 */ sw $zero, 0x24($a3) +/* 0CC270 800CB670 8C690000 */ lw $t1, ($v1) +/* 0CC274 800CB674 ACE9001C */ sw $t1, 0x1c($a3) +/* 0CC278 800CB678 8C4A000C */ lw $t2, 0xc($v0) +/* 0CC27C 800CB67C 8D4B0004 */ lw $t3, 4($t2) +/* 0CC280 800CB680 ACEB0020 */ sw $t3, 0x20($a3) +/* 0CC284 800CB684 8C4C000C */ lw $t4, 0xc($v0) +/* 0CC288 800CB688 8D8D0008 */ lw $t5, 8($t4) +/* 0CC28C 800CB68C 1000001D */ b .L800CB704 +/* 0CC290 800CB690 ACED0024 */ sw $t5, 0x24($a3) +/* 0CC294 800CB694 ACE00024 */ sw $zero, 0x24($a3) +.L800CB698: +/* 0CC298 800CB698 ACE00020 */ sw $zero, 0x20($a3) +/* 0CC29C 800CB69C 10000019 */ b .L800CB704 +/* 0CC2A0 800CB6A0 ACE0001C */ sw $zero, 0x1c($a3) +.L800CB6A4: +/* 0CC2A4 800CB6A4 8CE20028 */ lw $v0, 0x28($a3) +/* 0CC2A8 800CB6A8 24040001 */ li $a0, 1 +/* 0CC2AC 800CB6AC ACE0003C */ sw $zero, 0x3c($a3) +/* 0CC2B0 800CB6B0 ACE40040 */ sw $a0, 0x40($a3) +/* 0CC2B4 800CB6B4 10400013 */ beqz $v0, .L800CB704 +/* 0CC2B8 800CB6B8 ACE00038 */ sw $zero, 0x38($a3) +/* 0CC2BC 800CB6BC 8C4E0000 */ lw $t6, ($v0) +/* 0CC2C0 800CB6C0 ACEE0044 */ sw $t6, 0x44($a3) +/* 0CC2C4 800CB6C4 90430008 */ lbu $v1, 8($v0) +/* 0CC2C8 800CB6C8 14600007 */ bnez $v1, .L800CB6E8 +/* 0CC2CC 800CB6CC 00000000 */ nop +/* 0CC2D0 800CB6D0 8C43000C */ lw $v1, 0xc($v0) +/* 0CC2D4 800CB6D4 5060000C */ beql $v1, $zero, .L800CB708 +/* 0CC2D8 800CB6D8 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CC2DC 800CB6DC 8C6F0008 */ lw $t7, 8($v1) +/* 0CC2E0 800CB6E0 10000008 */ b .L800CB704 +/* 0CC2E4 800CB6E4 ACEF0024 */ sw $t7, 0x24($a3) +.L800CB6E8: +/* 0CC2E8 800CB6E8 54830007 */ bnel $a0, $v1, .L800CB708 +/* 0CC2EC 800CB6EC 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CC2F0 800CB6F0 8C43000C */ lw $v1, 0xc($v0) +/* 0CC2F4 800CB6F4 50600004 */ beql $v1, $zero, .L800CB708 +/* 0CC2F8 800CB6F8 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CC2FC 800CB6FC 8C780008 */ lw $t8, 8($v1) +/* 0CC300 800CB700 ACF80024 */ sw $t8, 0x24($a3) +.L800CB704: +/* 0CC304 800CB704 8FBF0014 */ lw $ra, 0x14($sp) +.L800CB708: +/* 0CC308 800CB708 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0CC30C 800CB70C 03E00008 */ jr $ra +/* 0CC310 800CB710 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CA9A0/D_800CB714.s b/asm/non_matchings/unknown_0CA9A0/D_800CB714.s new file mode 100644 index 00000000..ef04c510 --- /dev/null +++ b/asm/non_matchings/unknown_0CA9A0/D_800CB714.s @@ -0,0 +1,256 @@ +glabel D_800CB714 +/* 0CC314 800CB714 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 0CC318 800CB718 8FA80060 */ lw $t0, 0x60($sp) +/* 0CC31C 800CB71C AFB30020 */ sw $s3, 0x20($sp) +/* 0CC320 800CB720 AFB00014 */ sw $s0, 0x14($sp) +/* 0CC324 800CB724 00808025 */ move $s0, $a0 +/* 0CC328 800CB728 00C09825 */ move $s3, $a2 +/* 0CC32C 800CB72C AFBF0024 */ sw $ra, 0x24($sp) +/* 0CC330 800CB730 AFB2001C */ sw $s2, 0x1c($sp) +/* 0CC334 800CB734 AFB10018 */ sw $s1, 0x18($sp) +/* 0CC338 800CB738 AFA7005C */ sw $a3, 0x5c($sp) +/* 0CC33C 800CB73C 00A05025 */ move $t2, $a1 +/* 0CC340 800CB740 14C00003 */ bnez $a2, .L800CB750 +/* 0CC344 800CB744 01004825 */ move $t1, $t0 +/* 0CC348 800CB748 100000D6 */ b .L800CBAA4 +/* 0CC34C 800CB74C 01001025 */ move $v0, $t0 +.L800CB750: +/* 0CC350 800CB750 8E020038 */ lw $v0, 0x38($s0) +/* 0CC354 800CB754 8E030020 */ lw $v1, 0x20($s0) +/* 0CC358 800CB758 00537021 */ addu $t6, $v0, $s3 +/* 0CC35C 800CB75C 006E082B */ sltu $at, $v1, $t6 +/* 0CC360 800CB760 50200084 */ beql $at, $zero, .L800CB974 +/* 0CC364 800CB764 8E020028 */ lw $v0, 0x28($s0) +/* 0CC368 800CB768 8E0F0024 */ lw $t7, 0x24($s0) +/* 0CC36C 800CB76C 00629023 */ subu $s2, $v1, $v0 +/* 0CC370 800CB770 51E00080 */ beql $t7, $zero, .L800CB974 +/* 0CC374 800CB774 8E020028 */ lw $v0, 0x28($s0) +/* 0CC378 800CB778 1A40001E */ blez $s2, .L800CB7F4 +/* 0CC37C 800CB77C 00128840 */ sll $s1, $s2, 1 +/* 0CC380 800CB780 8E040044 */ lw $a0, 0x44($s0) +/* 0CC384 800CB784 8E060034 */ lw $a2, 0x34($s0) +/* 0CC388 800CB788 AFAA0054 */ sw $t2, 0x54($sp) +/* 0CC38C 800CB78C 8E190030 */ lw $t9, 0x30($s0) +/* 0CC390 800CB790 02202825 */ move $a1, $s1 +/* 0CC394 800CB794 0320F809 */ jalr $t9 +/* 0CC398 800CB798 00000000 */ nop +/* 0CC39C 800CB79C 8FAA0054 */ lw $t2, 0x54($sp) +/* 0CC3A0 800CB7A0 30460007 */ andi $a2, $v0, 7 +/* 0CC3A4 800CB7A4 8FA80060 */ lw $t0, 0x60($sp) +/* 0CC3A8 800CB7A8 85580000 */ lh $t8, ($t2) +/* 0CC3AC 800CB7AC 02263821 */ addu $a3, $s1, $a2 +/* 0CC3B0 800CB7B0 30ED0007 */ andi $t5, $a3, 7 +/* 0CC3B4 800CB7B4 00ED7023 */ subu $t6, $a3, $t5 +/* 0CC3B8 800CB7B8 3C010800 */ lui $at, 0x800 +/* 0CC3BC 800CB7BC 330BFFFF */ andi $t3, $t8, 0xffff +/* 0CC3C0 800CB7C0 01616025 */ or $t4, $t3, $at +/* 0CC3C4 800CB7C4 25CF0008 */ addiu $t7, $t6, 8 +/* 0CC3C8 800CB7C8 25090008 */ addiu $t1, $t0, 8 +/* 0CC3CC 800CB7CC 31F9FFFF */ andi $t9, $t7, 0xffff +/* 0CC3D0 800CB7D0 01202025 */ move $a0, $t1 +/* 0CC3D4 800CB7D4 00465823 */ subu $t3, $v0, $a2 +/* 0CC3D8 800CB7D8 3C180400 */ lui $t8, 0x400 +/* 0CC3DC 800CB7DC AD190004 */ sw $t9, 4($t0) +/* 0CC3E0 800CB7E0 AD0C0000 */ sw $t4, ($t0) +/* 0CC3E4 800CB7E4 AC8B0004 */ sw $t3, 4($a0) +/* 0CC3E8 800CB7E8 AC980000 */ sw $t8, ($a0) +/* 0CC3EC 800CB7EC 10000002 */ b .L800CB7F8 +/* 0CC3F0 800CB7F0 25290008 */ addiu $t1, $t1, 8 +.L800CB7F4: +/* 0CC3F4 800CB7F4 00003025 */ move $a2, $zero +.L800CB7F8: +/* 0CC3F8 800CB7F8 854C0000 */ lh $t4, ($t2) +/* 0CC3FC 800CB7FC 0253082A */ slt $at, $s2, $s3 +/* 0CC400 800CB800 01866821 */ addu $t5, $t4, $a2 +/* 0CC404 800CB804 A54D0000 */ sh $t5, ($t2) +/* 0CC408 800CB808 8E0E0028 */ lw $t6, 0x28($s0) +/* 0CC40C 800CB80C 8E02001C */ lw $v0, 0x1c($s0) +/* 0CC410 800CB810 8DCF0000 */ lw $t7, ($t6) +/* 0CC414 800CB814 0002C840 */ sll $t9, $v0, 1 +/* 0CC418 800CB818 AE020038 */ sw $v0, 0x38($s0) +/* 0CC41C 800CB81C 01F9C021 */ addu $t8, $t7, $t9 +/* 0CC420 800CB820 AE180044 */ sw $t8, 0x44($s0) +/* 0CC424 800CB824 10200049 */ beqz $at, .L800CB94C +/* 0CC428 800CB828 85480000 */ lh $t0, ($t2) +/* 0CC42C 800CB82C 8E020024 */ lw $v0, 0x24($s0) +.L800CB830: +/* 0CC430 800CB830 2401FFFF */ li $at, -1 +/* 0CC434 800CB834 01114021 */ addu $t0, $t0, $s1 +/* 0CC438 800CB838 10410004 */ beq $v0, $at, .L800CB84C +/* 0CC43C 800CB83C 02729823 */ subu $s3, $s3, $s2 +/* 0CC440 800CB840 10400002 */ beqz $v0, .L800CB84C +/* 0CC444 800CB844 244BFFFF */ addiu $t3, $v0, -1 +/* 0CC448 800CB848 AE0B0024 */ sw $t3, 0x24($s0) +.L800CB84C: +/* 0CC44C 800CB84C 8E0C0020 */ lw $t4, 0x20($s0) +/* 0CC450 800CB850 8E0D001C */ lw $t5, 0x1c($s0) +/* 0CC454 800CB854 018D1023 */ subu $v0, $t4, $t5 +/* 0CC458 800CB858 0262082B */ sltu $at, $s3, $v0 +/* 0CC45C 800CB85C 10200003 */ beqz $at, .L800CB86C +/* 0CC460 800CB860 00409025 */ move $s2, $v0 +/* 0CC464 800CB864 10000001 */ b .L800CB86C +/* 0CC468 800CB868 02609025 */ move $s2, $s3 +.L800CB86C: +/* 0CC46C 800CB86C 8E040044 */ lw $a0, 0x44($s0) +/* 0CC470 800CB870 8E060034 */ lw $a2, 0x34($s0) +/* 0CC474 800CB874 AFA9004C */ sw $t1, 0x4c($sp) +/* 0CC478 800CB878 AFA8002C */ sw $t0, 0x2c($sp) +/* 0CC47C 800CB87C 8E190030 */ lw $t9, 0x30($s0) +/* 0CC480 800CB880 00128840 */ sll $s1, $s2, 1 +/* 0CC484 800CB884 02202825 */ move $a1, $s1 +/* 0CC488 800CB888 0320F809 */ jalr $t9 +/* 0CC48C 800CB88C 00000000 */ nop +/* 0CC490 800CB890 8FA8002C */ lw $t0, 0x2c($sp) +/* 0CC494 800CB894 30450007 */ andi $a1, $v0, 7 +/* 0CC498 800CB898 8FA9004C */ lw $t1, 0x4c($sp) +/* 0CC49C 800CB89C 31030007 */ andi $v1, $t0, 7 +/* 0CC4A0 800CB8A0 10600004 */ beqz $v1, .L800CB8B4 +/* 0CC4A4 800CB8A4 02253821 */ addu $a3, $s1, $a1 +/* 0CC4A8 800CB8A8 240E0008 */ li $t6, 8 +/* 0CC4AC 800CB8AC 10000002 */ b .L800CB8B8 +/* 0CC4B0 800CB8B0 01C33023 */ subu $a2, $t6, $v1 +.L800CB8B4: +/* 0CC4B4 800CB8B4 00003025 */ move $a2, $zero +.L800CB8B8: +/* 0CC4B8 800CB8B8 01067821 */ addu $t7, $t0, $a2 +/* 0CC4BC 800CB8BC 30EC0007 */ andi $t4, $a3, 7 +/* 0CC4C0 800CB8C0 00EC6823 */ subu $t5, $a3, $t4 +/* 0CC4C4 800CB8C4 31F8FFFF */ andi $t8, $t7, 0xffff +/* 0CC4C8 800CB8C8 01201825 */ move $v1, $t1 +/* 0CC4CC 800CB8CC 3C010800 */ lui $at, 0x800 +/* 0CC4D0 800CB8D0 03015825 */ or $t3, $t8, $at +/* 0CC4D4 800CB8D4 25290008 */ addiu $t1, $t1, 8 +/* 0CC4D8 800CB8D8 25B90008 */ addiu $t9, $t5, 8 +/* 0CC4DC 800CB8DC 332EFFFF */ andi $t6, $t9, 0xffff +/* 0CC4E0 800CB8E0 01202025 */ move $a0, $t1 +/* 0CC4E4 800CB8E4 AC6E0004 */ sw $t6, 4($v1) +/* 0CC4E8 800CB8E8 AC6B0000 */ sw $t3, ($v1) +/* 0CC4EC 800CB8EC 0045C023 */ subu $t8, $v0, $a1 +/* 0CC4F0 800CB8F0 3C0F0400 */ lui $t7, 0x400 +/* 0CC4F4 800CB8F4 AC8F0000 */ sw $t7, ($a0) +/* 0CC4F8 800CB8F8 AC980004 */ sw $t8, 4($a0) +/* 0CC4FC 800CB8FC 14A00002 */ bnez $a1, .L800CB908 +/* 0CC500 800CB900 25290008 */ addiu $t1, $t1, 8 +/* 0CC504 800CB904 10C0000E */ beqz $a2, .L800CB940 +.L800CB908: +/* 0CC508 800CB908 01055821 */ addu $t3, $t0, $a1 +/* 0CC50C 800CB90C 3C0100FF */ lui $at, (0x00FFFFFF >> 16) # lui $at, 0xff +/* 0CC510 800CB910 3421FFFF */ ori $at, (0x00FFFFFF & 0xFFFF) # ori $at, $at, 0xffff +/* 0CC514 800CB914 01666021 */ addu $t4, $t3, $a2 +/* 0CC518 800CB918 01816824 */ and $t5, $t4, $at +/* 0CC51C 800CB91C 01201025 */ move $v0, $t1 +/* 0CC520 800CB920 3C010A00 */ lui $at, 0xa00 +/* 0CC524 800CB924 00087C00 */ sll $t7, $t0, 0x10 +/* 0CC528 800CB928 3238FFFF */ andi $t8, $s1, 0xffff +/* 0CC52C 800CB92C 01F85825 */ or $t3, $t7, $t8 +/* 0CC530 800CB930 01A1C825 */ or $t9, $t5, $at +/* 0CC534 800CB934 AC590000 */ sw $t9, ($v0) +/* 0CC538 800CB938 AC4B0004 */ sw $t3, 4($v0) +/* 0CC53C 800CB93C 25290008 */ addiu $t1, $t1, 8 +.L800CB940: +/* 0CC540 800CB940 0253082A */ slt $at, $s2, $s3 +/* 0CC544 800CB944 5420FFBA */ bnezl $at, .L800CB830 +/* 0CC548 800CB948 8E020024 */ lw $v0, 0x24($s0) +.L800CB94C: +/* 0CC54C 800CB94C 8E0C0038 */ lw $t4, 0x38($s0) +/* 0CC550 800CB950 8E190044 */ lw $t9, 0x44($s0) +/* 0CC554 800CB954 00137040 */ sll $t6, $s3, 1 +/* 0CC558 800CB958 01936821 */ addu $t5, $t4, $s3 +/* 0CC55C 800CB95C 032E7821 */ addu $t7, $t9, $t6 +/* 0CC560 800CB960 AE0D0038 */ sw $t5, 0x38($s0) +/* 0CC564 800CB964 AE0F0044 */ sw $t7, 0x44($s0) +/* 0CC568 800CB968 1000004E */ b .L800CBAA4 +/* 0CC56C 800CB96C 01201025 */ move $v0, $t1 +/* 0CC570 800CB970 8E020028 */ lw $v0, 0x28($s0) +.L800CB974: +/* 0CC574 800CB974 8E040044 */ lw $a0, 0x44($s0) +/* 0CC578 800CB978 00138840 */ sll $s1, $s3, 1 +/* 0CC57C 800CB97C 8C580000 */ lw $t8, ($v0) +/* 0CC580 800CB980 8C4C0004 */ lw $t4, 4($v0) +/* 0CC584 800CB984 00911821 */ addu $v1, $a0, $s1 +/* 0CC588 800CB988 00785823 */ subu $t3, $v1, $t8 +/* 0CC58C 800CB98C 016C9023 */ subu $s2, $t3, $t4 +/* 0CC590 800CB990 06430003 */ bgezl $s2, .L800CB9A0 +/* 0CC594 800CB994 0232082A */ slt $at, $s1, $s2 +/* 0CC598 800CB998 00009025 */ move $s2, $zero +/* 0CC59C 800CB99C 0232082A */ slt $at, $s1, $s2 +.L800CB9A0: +/* 0CC5A0 800CB9A0 50200003 */ beql $at, $zero, .L800CB9B0 +/* 0CC5A4 800CB9A4 0251082A */ slt $at, $s2, $s1 +/* 0CC5A8 800CB9A8 02209025 */ move $s2, $s1 +/* 0CC5AC 800CB9AC 0251082A */ slt $at, $s2, $s1 +.L800CB9B0: +/* 0CC5B0 800CB9B0 5020002C */ beql $at, $zero, .L800CBA64 +/* 0CC5B4 800CB9B4 AE030044 */ sw $v1, 0x44($s0) +/* 0CC5B8 800CB9B8 1A60001F */ blez $s3, .L800CBA38 +/* 0CC5BC 800CB9BC 00003025 */ move $a2, $zero +/* 0CC5C0 800CB9C0 8E060034 */ lw $a2, 0x34($s0) +/* 0CC5C4 800CB9C4 02322823 */ subu $a1, $s1, $s2 +/* 0CC5C8 800CB9C8 AFA50048 */ sw $a1, 0x48($sp) +/* 0CC5CC 800CB9CC AFAA0054 */ sw $t2, 0x54($sp) +/* 0CC5D0 800CB9D0 8E190030 */ lw $t9, 0x30($s0) +/* 0CC5D4 800CB9D4 0320F809 */ jalr $t9 +/* 0CC5D8 800CB9D8 00000000 */ nop +/* 0CC5DC 800CB9DC 8FAA0054 */ lw $t2, 0x54($sp) +/* 0CC5E0 800CB9E0 8FA70048 */ lw $a3, 0x48($sp) +/* 0CC5E4 800CB9E4 30460007 */ andi $a2, $v0, 7 +/* 0CC5E8 800CB9E8 854D0000 */ lh $t5, ($t2) +/* 0CC5EC 800CB9EC 8FA80060 */ lw $t0, 0x60($sp) +/* 0CC5F0 800CB9F0 00E63821 */ addu $a3, $a3, $a2 +/* 0CC5F4 800CB9F4 30F80007 */ andi $t8, $a3, 7 +/* 0CC5F8 800CB9F8 00F85823 */ subu $t3, $a3, $t8 +/* 0CC5FC 800CB9FC 3C010800 */ lui $at, 0x800 +/* 0CC600 800CBA00 31AEFFFF */ andi $t6, $t5, 0xffff +/* 0CC604 800CBA04 01C17825 */ or $t7, $t6, $at +/* 0CC608 800CBA08 256C0008 */ addiu $t4, $t3, 8 +/* 0CC60C 800CBA0C 25090008 */ addiu $t1, $t0, 8 +/* 0CC610 800CBA10 3199FFFF */ andi $t9, $t4, 0xffff +/* 0CC614 800CBA14 01202025 */ move $a0, $t1 +/* 0CC618 800CBA18 00467023 */ subu $t6, $v0, $a2 +/* 0CC61C 800CBA1C 3C0D0400 */ lui $t5, 0x400 +/* 0CC620 800CBA20 AD190004 */ sw $t9, 4($t0) +/* 0CC624 800CBA24 AD0F0000 */ sw $t7, ($t0) +/* 0CC628 800CBA28 AC8E0004 */ sw $t6, 4($a0) +/* 0CC62C 800CBA2C AC8D0000 */ sw $t5, ($a0) +/* 0CC630 800CBA30 10000001 */ b .L800CBA38 +/* 0CC634 800CBA34 25290008 */ addiu $t1, $t1, 8 +.L800CBA38: +/* 0CC638 800CBA38 854F0000 */ lh $t7, ($t2) +/* 0CC63C 800CBA3C 01E6C021 */ addu $t8, $t7, $a2 +/* 0CC640 800CBA40 A5580000 */ sh $t8, ($t2) +/* 0CC644 800CBA44 8E0B0038 */ lw $t3, 0x38($s0) +/* 0CC648 800CBA48 8E190044 */ lw $t9, 0x44($s0) +/* 0CC64C 800CBA4C 01736021 */ addu $t4, $t3, $s3 +/* 0CC650 800CBA50 03316821 */ addu $t5, $t9, $s1 +/* 0CC654 800CBA54 AE0C0038 */ sw $t4, 0x38($s0) +/* 0CC658 800CBA58 10000002 */ b .L800CBA64 +/* 0CC65C 800CBA5C AE0D0044 */ sw $t5, 0x44($s0) +/* 0CC660 800CBA60 AE030044 */ sw $v1, 0x44($s0) +.L800CBA64: +/* 0CC664 800CBA64 1240000E */ beqz $s2, .L800CBAA0 +/* 0CC668 800CBA68 02321823 */ subu $v1, $s1, $s2 +/* 0CC66C 800CBA6C 04610002 */ bgez $v1, .L800CBA78 +/* 0CC670 800CBA70 01201025 */ move $v0, $t1 +/* 0CC674 800CBA74 00001825 */ move $v1, $zero +.L800CBA78: +/* 0CC678 800CBA78 854E0000 */ lh $t6, ($t2) +/* 0CC67C 800CBA7C 3C0100FF */ lui $at, (0x00FFFFFF >> 16) # lui $at, 0xff +/* 0CC680 800CBA80 3421FFFF */ ori $at, (0x00FFFFFF & 0xFFFF) # ori $at, $at, 0xffff +/* 0CC684 800CBA84 01C37821 */ addu $t7, $t6, $v1 +/* 0CC688 800CBA88 01E1C024 */ and $t8, $t7, $at +/* 0CC68C 800CBA8C 3C010200 */ lui $at, 0x200 +/* 0CC690 800CBA90 03015825 */ or $t3, $t8, $at +/* 0CC694 800CBA94 AC4B0000 */ sw $t3, ($v0) +/* 0CC698 800CBA98 AC520004 */ sw $s2, 4($v0) +/* 0CC69C 800CBA9C 25290008 */ addiu $t1, $t1, 8 +.L800CBAA0: +/* 0CC6A0 800CBAA0 01201025 */ move $v0, $t1 +.L800CBAA4: +/* 0CC6A4 800CBAA4 8FBF0024 */ lw $ra, 0x24($sp) +/* 0CC6A8 800CBAA8 8FB00014 */ lw $s0, 0x14($sp) +/* 0CC6AC 800CBAAC 8FB10018 */ lw $s1, 0x18($sp) +/* 0CC6B0 800CBAB0 8FB2001C */ lw $s2, 0x1c($sp) +/* 0CC6B4 800CBAB4 8FB30020 */ lw $s3, 0x20($sp) +/* 0CC6B8 800CBAB8 03E00008 */ jr $ra +/* 0CC6BC 800CBABC 27BD0050 */ addiu $sp, $sp, 0x50 + diff --git a/asm/non_matchings/unknown_0CA9A0/D_800CBBEC.s b/asm/non_matchings/unknown_0CA9A0/D_800CBBEC.s new file mode 100644 index 00000000..2d4be883 --- /dev/null +++ b/asm/non_matchings/unknown_0CA9A0/D_800CBBEC.s @@ -0,0 +1,323 @@ +glabel D_800CBBEC +/* 0CC7EC 800CBBEC 27BDFF50 */ addiu $sp, $sp, -0xb0 +/* 0CC7F0 800CBBF0 AFB70044 */ sw $s7, 0x44($sp) +/* 0CC7F4 800CBBF4 AFA700BC */ sw $a3, 0xbc($sp) +/* 0CC7F8 800CBBF8 00A03825 */ move $a3, $a1 +/* 0CC7FC 800CBBFC 0080B825 */ move $s7, $a0 +/* 0CC800 800CBC00 AFBF004C */ sw $ra, 0x4c($sp) +/* 0CC804 800CBC04 AFBE0048 */ sw $fp, 0x48($sp) +/* 0CC808 800CBC08 AFB60040 */ sw $s6, 0x40($sp) +/* 0CC80C 800CBC0C AFB5003C */ sw $s5, 0x3c($sp) +/* 0CC810 800CBC10 AFB40038 */ sw $s4, 0x38($sp) +/* 0CC814 800CBC14 AFB30034 */ sw $s3, 0x34($sp) +/* 0CC818 800CBC18 AFB20030 */ sw $s2, 0x30($sp) +/* 0CC81C 800CBC1C AFB1002C */ sw $s1, 0x2c($sp) +/* 0CC820 800CBC20 AFB00028 */ sw $s0, 0x28($sp) +/* 0CC824 800CBC24 AFA500B4 */ sw $a1, 0xb4($sp) +/* 0CC828 800CBC28 00C04025 */ move $t0, $a2 +/* 0CC82C 800CBC2C 14C00003 */ bnez $a2, .L800CBC3C +/* 0CC830 800CBC30 00006825 */ move $t5, $zero +/* 0CC834 800CBC34 10000109 */ b .L800CC05C +/* 0CC838 800CBC38 8FA200C0 */ lw $v0, 0xc0($sp) +.L800CBC3C: +/* 0CC83C 800CBC3C 8EEE002C */ lw $t6, 0x2c($s7) +/* 0CC840 800CBC40 3C0100FF */ lui $at, (0x00FFFFFF >> 16) # lui $at, 0xff +/* 0CC844 800CBC44 3421FFFF */ ori $at, (0x00FFFFFF & 0xFFFF) # ori $at, $at, 0xffff +/* 0CC848 800CBC48 8FA500C0 */ lw $a1, 0xc0($sp) +/* 0CC84C 800CBC4C 01C17824 */ and $t7, $t6, $at +/* 0CC850 800CBC50 3C010B00 */ lui $at, 0xb00 +/* 0CC854 800CBC54 01E1C025 */ or $t8, $t7, $at +/* 0CC858 800CBC58 ACB80000 */ sw $t8, ($a1) +/* 0CC85C 800CBC5C 8EF90028 */ lw $t9, 0x28($s7) +/* 0CC860 800CBC60 3C011FFF */ lui $at, (0x1FFFFFFF >> 16) # lui $at, 0x1fff +/* 0CC864 800CBC64 3421FFFF */ ori $at, (0x1FFFFFFF & 0xFFFF) # ori $at, $at, 0xffff +/* 0CC868 800CBC68 8F2E0010 */ lw $t6, 0x10($t9) +/* 0CC86C 800CBC6C 24AA0008 */ addiu $t2, $a1, 8 +/* 0CC870 800CBC70 00003025 */ move $a2, $zero +/* 0CC874 800CBC74 25CF0008 */ addiu $t7, $t6, 8 +/* 0CC878 800CBC78 01E1C024 */ and $t8, $t7, $at +/* 0CC87C 800CBC7C ACB80004 */ sw $t8, 4($a1) +/* 0CC880 800CBC80 8EE30038 */ lw $v1, 0x38($s7) +/* 0CC884 800CBC84 8EE40020 */ lw $a0, 0x20($s7) +/* 0CC888 800CBC88 01002825 */ move $a1, $t0 +/* 0CC88C 800CBC8C 0068C821 */ addu $t9, $v1, $t0 +/* 0CC890 800CBC90 0099482B */ sltu $t1, $a0, $t9 +/* 0CC894 800CBC94 11200004 */ beqz $t1, .L800CBCA8 +/* 0CC898 800CBC98 240F0010 */ li $t7, 16 +/* 0CC89C 800CBC9C 8EE90024 */ lw $t1, 0x24($s7) +/* 0CC8A0 800CBCA0 0009702B */ sltu $t6, $zero, $t1 +/* 0CC8A4 800CBCA4 01C04825 */ move $t1, $t6 +.L800CBCA8: +/* 0CC8A8 800CBCA8 11200003 */ beqz $t1, .L800CBCB8 +/* 0CC8AC 800CBCAC 24010009 */ li $at, 9 +/* 0CC8B0 800CBCB0 10000001 */ b .L800CBCB8 +/* 0CC8B4 800CBCB4 00832823 */ subu $a1, $a0, $v1 +.L800CBCB8: +/* 0CC8B8 800CBCB8 8EE3003C */ lw $v1, 0x3c($s7) +/* 0CC8BC 800CBCBC 01408025 */ move $s0, $t2 +/* 0CC8C0 800CBCC0 02E09025 */ move $s2, $s7 +/* 0CC8C4 800CBCC4 10600003 */ beqz $v1, .L800CBCD4 +/* 0CC8C8 800CBCC8 00009825 */ move $s3, $zero +/* 0CC8CC 800CBCCC 10000001 */ b .L800CBCD4 +/* 0CC8D0 800CBCD0 01E33023 */ subu $a2, $t7, $v1 +.L800CBCD4: +/* 0CC8D4 800CBCD4 00A62023 */ subu $a0, $a1, $a2 +/* 0CC8D8 800CBCD8 04810002 */ bgez $a0, .L800CBCE4 +/* 0CC8DC 800CBCDC 00000000 */ nop +/* 0CC8E0 800CBCE0 00002025 */ move $a0, $zero +.L800CBCE4: +/* 0CC8E4 800CBCE4 11200081 */ beqz $t1, .L800CBEEC +/* 0CC8E8 800CBCE8 249E000F */ addiu $fp, $a0, 0xf +/* 0CC8EC 800CBCEC 249E000F */ addiu $fp, $a0, 0xf +/* 0CC8F0 800CBCF0 001EC103 */ sra $t8, $fp, 4 +/* 0CC8F4 800CBCF4 84F50000 */ lh $s5, ($a3) +/* 0CC8F8 800CBCF8 8EF40040 */ lw $s4, 0x40($s7) +/* 0CC8FC 800CBCFC 001848C0 */ sll $t1, $t8, 3 +/* 0CC900 800CBD00 01384821 */ addu $t1, $t1, $t8 +/* 0CC904 800CBD04 01208825 */ move $s1, $t1 +/* 0CC908 800CBD08 AFA9005C */ sw $t1, 0x5c($sp) +/* 0CC90C 800CBD0C AFA800B8 */ sw $t0, 0xb8($sp) +/* 0CC910 800CBD10 AFA700B4 */ sw $a3, 0xb4($sp) +/* 0CC914 800CBD14 AFA5008C */ sw $a1, 0x8c($sp) +/* 0CC918 800CBD18 0300F025 */ move $fp, $t8 +/* 0CC91C 800CBD1C 0C032EB0 */ jal func_800CBAC0 +/* 0CC920 800CBD20 0080B025 */ move $s6, $a0 +/* 0CC924 800CBD24 8EE3003C */ lw $v1, 0x3c($s7) +/* 0CC928 800CBD28 8FA5008C */ lw $a1, 0x8c($sp) +/* 0CC92C 800CBD2C 8FA700B4 */ lw $a3, 0xb4($sp) +/* 0CC930 800CBD30 8FA800B8 */ lw $t0, 0xb8($sp) +/* 0CC934 800CBD34 8FA9005C */ lw $t1, 0x5c($sp) +/* 0CC938 800CBD38 10600006 */ beqz $v1, .L800CBD54 +/* 0CC93C 800CBD3C 00405025 */ move $t2, $v0 +/* 0CC940 800CBD40 84F90000 */ lh $t9, ($a3) +/* 0CC944 800CBD44 00037040 */ sll $t6, $v1, 1 +/* 0CC948 800CBD48 032E7821 */ addu $t7, $t9, $t6 +/* 0CC94C 800CBD4C 10000004 */ b .L800CBD60 +/* 0CC950 800CBD50 A4EF0000 */ sh $t7, ($a3) +.L800CBD54: +/* 0CC954 800CBD54 84F80000 */ lh $t8, ($a3) +/* 0CC958 800CBD58 27190020 */ addiu $t9, $t8, 0x20 +/* 0CC95C 800CBD5C A4F90000 */ sh $t9, ($a3) +.L800CBD60: +/* 0CC960 800CBD60 8EE2001C */ lw $v0, 0x1c($s7) +/* 0CC964 800CBD64 8EEF0028 */ lw $t7, 0x28($s7) +/* 0CC968 800CBD68 00A8082A */ slt $at, $a1, $t0 +/* 0CC96C 800CBD6C 304E000F */ andi $t6, $v0, 0xf +/* 0CC970 800CBD70 AEEE003C */ sw $t6, 0x3c($s7) +/* 0CC974 800CBD74 8DF80000 */ lw $t8, ($t7) +/* 0CC978 800CBD78 0002C902 */ srl $t9, $v0, 4 +/* 0CC97C 800CBD7C 001970C0 */ sll $t6, $t9, 3 +/* 0CC980 800CBD80 01D97021 */ addu $t6, $t6, $t9 +/* 0CC984 800CBD84 030E7821 */ addu $t7, $t8, $t6 +/* 0CC988 800CBD88 25F90009 */ addiu $t9, $t7, 9 +/* 0CC98C 800CBD8C AEF90044 */ sw $t9, 0x44($s7) +/* 0CC990 800CBD90 AEE20038 */ sw $v0, 0x38($s7) +/* 0CC994 800CBD94 10200049 */ beqz $at, .L800CBEBC +/* 0CC998 800CBD98 84E60000 */ lh $a2, ($a3) +/* 0CC99C 800CBD9C 00051840 */ sll $v1, $a1, 1 +.L800CBDA0: +/* 0CC9A0 800CBDA0 27D80001 */ addiu $t8, $fp, 1 +/* 0CC9A4 800CBDA4 00187140 */ sll $t6, $t8, 5 +/* 0CC9A8 800CBDA8 8EE20024 */ lw $v0, 0x24($s7) +/* 0CC9AC 800CBDAC 01C63821 */ addu $a3, $t6, $a2 +/* 0CC9B0 800CBDB0 2401FFE0 */ li $at, -32 +/* 0CC9B4 800CBDB4 00E17824 */ and $t7, $a3, $at +/* 0CC9B8 800CBDB8 2401FFFF */ li $at, -1 +/* 0CC9BC 800CBDBC 01054023 */ subu $t0, $t0, $a1 +/* 0CC9C0 800CBDC0 01E03825 */ move $a3, $t7 +/* 0CC9C4 800CBDC4 10410004 */ beq $v0, $at, .L800CBDD8 +/* 0CC9C8 800CBDC8 00C33021 */ addu $a2, $a2, $v1 +/* 0CC9CC 800CBDCC 10400002 */ beqz $v0, .L800CBDD8 +/* 0CC9D0 800CBDD0 2459FFFF */ addiu $t9, $v0, -1 +/* 0CC9D4 800CBDD4 AEF90024 */ sw $t9, 0x24($s7) +.L800CBDD8: +/* 0CC9D8 800CBDD8 8EF80020 */ lw $t8, 0x20($s7) +/* 0CC9DC 800CBDDC 8EEE001C */ lw $t6, 0x1c($s7) +/* 0CC9E0 800CBDE0 01408025 */ move $s0, $t2 +/* 0CC9E4 800CBDE4 02E09025 */ move $s2, $s7 +/* 0CC9E8 800CBDE8 030E1023 */ subu $v0, $t8, $t6 +/* 0CC9EC 800CBDEC 0102082B */ sltu $at, $t0, $v0 +/* 0CC9F0 800CBDF0 10200003 */ beqz $at, .L800CBE00 +/* 0CC9F4 800CBDF4 0007AC00 */ sll $s5, $a3, 0x10 +/* 0CC9F8 800CBDF8 10000002 */ b .L800CBE04 +/* 0CC9FC 800CBDFC 01002825 */ move $a1, $t0 +.L800CBE00: +/* 0CCA00 800CBE00 00402825 */ move $a1, $v0 +.L800CBE04: +/* 0CCA04 800CBE04 8EEF003C */ lw $t7, 0x3c($s7) +/* 0CCA08 800CBE08 0015C403 */ sra $t8, $s5, 0x10 +/* 0CCA0C 800CBE0C 0300A825 */ move $s5, $t8 +/* 0CCA10 800CBE10 00AF2021 */ addu $a0, $a1, $t7 +/* 0CCA14 800CBE14 2484FFF0 */ addiu $a0, $a0, -0x10 +/* 0CCA18 800CBE18 04810002 */ bgez $a0, .L800CBE24 +/* 0CCA1C 800CBE1C 00009825 */ move $s3, $zero +/* 0CCA20 800CBE20 00002025 */ move $a0, $zero +.L800CBE24: +/* 0CCA24 800CBE24 8EF40040 */ lw $s4, 0x40($s7) +/* 0CCA28 800CBE28 249E000F */ addiu $fp, $a0, 0xf +/* 0CCA2C 800CBE2C 001EC903 */ sra $t9, $fp, 4 +/* 0CCA30 800CBE30 001948C0 */ sll $t1, $t9, 3 +/* 0CCA34 800CBE34 01394821 */ addu $t1, $t1, $t9 +/* 0CCA38 800CBE38 368E0002 */ ori $t6, $s4, 2 +/* 0CCA3C 800CBE3C 01C0A025 */ move $s4, $t6 +/* 0CCA40 800CBE40 01208825 */ move $s1, $t1 +/* 0CCA44 800CBE44 AFA9005C */ sw $t1, 0x5c($sp) +/* 0CCA48 800CBE48 0320F025 */ move $fp, $t9 +/* 0CCA4C 800CBE4C AFA800B8 */ sw $t0, 0xb8($sp) +/* 0CCA50 800CBE50 AFA70088 */ sw $a3, 0x88($sp) +/* 0CCA54 800CBE54 AFA60080 */ sw $a2, 0x80($sp) +/* 0CCA58 800CBE58 AFA5008C */ sw $a1, 0x8c($sp) +/* 0CCA5C 800CBE5C 0C032EB0 */ jal func_800CBAC0 +/* 0CCA60 800CBE60 0080B025 */ move $s6, $a0 +/* 0CCA64 800CBE64 8EEF003C */ lw $t7, 0x3c($s7) +/* 0CCA68 800CBE68 8FA70088 */ lw $a3, 0x88($sp) +/* 0CCA6C 800CBE6C 3C0100FF */ lui $at, (0x00FFFFFF >> 16) # lui $at, 0xff +/* 0CCA70 800CBE70 000FC840 */ sll $t9, $t7, 1 +/* 0CCA74 800CBE74 3421FFFF */ ori $at, (0x00FFFFFF & 0xFFFF) # ori $at, $at, 0xffff +/* 0CCA78 800CBE78 0327C021 */ addu $t8, $t9, $a3 +/* 0CCA7C 800CBE7C 03017024 */ and $t6, $t8, $at +/* 0CCA80 800CBE80 8FA5008C */ lw $a1, 0x8c($sp) +/* 0CCA84 800CBE84 3C010A00 */ lui $at, 0xa00 +/* 0CCA88 800CBE88 8FA60080 */ lw $a2, 0x80($sp) +/* 0CCA8C 800CBE8C 01C17825 */ or $t7, $t6, $at +/* 0CCA90 800CBE90 8FA800B8 */ lw $t0, 0xb8($sp) +/* 0CCA94 800CBE94 8FA9005C */ lw $t1, 0x5c($sp) +/* 0CCA98 800CBE98 00051840 */ sll $v1, $a1, 1 +/* 0CCA9C 800CBE9C 306EFFFF */ andi $t6, $v1, 0xffff +/* 0CCAA0 800CBEA0 AC4F0000 */ sw $t7, ($v0) +/* 0CCAA4 800CBEA4 0006C400 */ sll $t8, $a2, 0x10 +/* 0CCAA8 800CBEA8 030E7825 */ or $t7, $t8, $t6 +/* 0CCAAC 800CBEAC 00A8082A */ slt $at, $a1, $t0 +/* 0CCAB0 800CBEB0 AC4F0004 */ sw $t7, 4($v0) +/* 0CCAB4 800CBEB4 1420FFBA */ bnez $at, .L800CBDA0 +/* 0CCAB8 800CBEB8 244A0008 */ addiu $t2, $v0, 8 +.L800CBEBC: +/* 0CCABC 800CBEBC 8EF9003C */ lw $t9, 0x3c($s7) +/* 0CCAC0 800CBEC0 8EEF0038 */ lw $t7, 0x38($s7) +/* 0CCAC4 800CBEC4 01401025 */ move $v0, $t2 +/* 0CCAC8 800CBEC8 0328C021 */ addu $t8, $t9, $t0 +/* 0CCACC 800CBECC 330E000F */ andi $t6, $t8, 0xf +/* 0CCAD0 800CBED0 8EF80044 */ lw $t8, 0x44($s7) +/* 0CCAD4 800CBED4 AEEE003C */ sw $t6, 0x3c($s7) +/* 0CCAD8 800CBED8 01E8C821 */ addu $t9, $t7, $t0 +/* 0CCADC 800CBEDC 03097021 */ addu $t6, $t8, $t1 +/* 0CCAE0 800CBEE0 AEF90038 */ sw $t9, 0x38($s7) +/* 0CCAE4 800CBEE4 1000005D */ b .L800CC05C +/* 0CCAE8 800CBEE8 AEEE0044 */ sw $t6, 0x44($s7) +.L800CBEEC: +/* 0CCAEC 800CBEEC 8EE20028 */ lw $v0, 0x28($s7) +/* 0CCAF0 800CBEF0 001E7903 */ sra $t7, $fp, 4 +/* 0CCAF4 800CBEF4 8EF90044 */ lw $t9, 0x44($s7) +/* 0CCAF8 800CBEF8 000F48C0 */ sll $t1, $t7, 3 +/* 0CCAFC 800CBEFC 8C580000 */ lw $t8, ($v0) +/* 0CCB00 800CBF00 012F4821 */ addu $t1, $t1, $t7 +/* 0CCB04 800CBF04 01E0F025 */ move $fp, $t7 +/* 0CCB08 800CBF08 8C4F0004 */ lw $t7, 4($v0) +/* 0CCB0C 800CBF0C 03295821 */ addu $t3, $t9, $t1 +/* 0CCB10 800CBF10 01787023 */ subu $t6, $t3, $t8 +/* 0CCB14 800CBF14 01CF1823 */ subu $v1, $t6, $t7 +/* 0CCB18 800CBF18 04610002 */ bgez $v1, .L800CBF24 +/* 0CCB1C 800CBF1C 001E2900 */ sll $a1, $fp, 4 +/* 0CCB20 800CBF20 00001825 */ move $v1, $zero +.L800CBF24: +/* 0CCB24 800CBF24 0061001A */ div $zero, $v1, $at +/* 0CCB28 800CBF28 00001012 */ mflo $v0 +/* 0CCB2C 800CBF2C 00022100 */ sll $a0, $v0, 4 +/* 0CCB30 800CBF30 00A66021 */ addu $t4, $a1, $a2 +/* 0CCB34 800CBF34 0184082A */ slt $at, $t4, $a0 +/* 0CCB38 800CBF38 10200002 */ beqz $at, .L800CBF44 +/* 0CCB3C 800CBF3C 01408025 */ move $s0, $t2 +/* 0CCB40 800CBF40 01802025 */ move $a0, $t4 +.L800CBF44: +/* 0CCB44 800CBF44 3098000F */ andi $t8, $a0, 0xf +/* 0CCB48 800CBF48 00987023 */ subu $t6, $a0, $t8 +/* 0CCB4C 800CBF4C 01C8082A */ slt $at, $t6, $t0 +/* 0CCB50 800CBF50 1020002B */ beqz $at, .L800CC000 +/* 0CCB54 800CBF54 01233023 */ subu $a2, $t1, $v1 +/* 0CCB58 800CBF58 84F50000 */ lh $s5, ($a3) +/* 0CCB5C 800CBF5C 8EF40040 */ lw $s4, 0x40($s7) +/* 0CCB60 800CBF60 240D0001 */ li $t5, 1 +/* 0CCB64 800CBF64 AFAD007C */ sw $t5, 0x7c($sp) +/* 0CCB68 800CBF68 AFAC0050 */ sw $t4, 0x50($sp) +/* 0CCB6C 800CBF6C AFA9005C */ sw $t1, 0x5c($sp) +/* 0CCB70 800CBF70 AFA800B8 */ sw $t0, 0xb8($sp) +/* 0CCB74 800CBF74 AFA700B4 */ sw $a3, 0xb4($sp) +/* 0CCB78 800CBF78 AFA40090 */ sw $a0, 0x90($sp) +/* 0CCB7C 800CBF7C 02E09025 */ move $s2, $s7 +/* 0CCB80 800CBF80 00A4B023 */ subu $s6, $a1, $a0 +/* 0CCB84 800CBF84 00C08825 */ move $s1, $a2 +/* 0CCB88 800CBF88 0C032EB0 */ jal func_800CBAC0 +/* 0CCB8C 800CBF8C 00009825 */ move $s3, $zero +/* 0CCB90 800CBF90 8EE3003C */ lw $v1, 0x3c($s7) +/* 0CCB94 800CBF94 8FA40090 */ lw $a0, 0x90($sp) +/* 0CCB98 800CBF98 8FA700B4 */ lw $a3, 0xb4($sp) +/* 0CCB9C 800CBF9C 8FA800B8 */ lw $t0, 0xb8($sp) +/* 0CCBA0 800CBFA0 8FA9005C */ lw $t1, 0x5c($sp) +/* 0CCBA4 800CBFA4 8FAC0050 */ lw $t4, 0x50($sp) +/* 0CCBA8 800CBFA8 8FAD007C */ lw $t5, 0x7c($sp) +/* 0CCBAC 800CBFAC 10600006 */ beqz $v1, .L800CBFC8 +/* 0CCBB0 800CBFB0 00405025 */ move $t2, $v0 +/* 0CCBB4 800CBFB4 84EF0000 */ lh $t7, ($a3) +/* 0CCBB8 800CBFB8 0003C840 */ sll $t9, $v1, 1 +/* 0CCBBC 800CBFBC 01F9C021 */ addu $t8, $t7, $t9 +/* 0CCBC0 800CBFC0 10000004 */ b .L800CBFD4 +/* 0CCBC4 800CBFC4 A4F80000 */ sh $t8, ($a3) +.L800CBFC8: +/* 0CCBC8 800CBFC8 84EE0000 */ lh $t6, ($a3) +/* 0CCBCC 800CBFCC 25CF0020 */ addiu $t7, $t6, 0x20 +/* 0CCBD0 800CBFD0 A4EF0000 */ sh $t7, ($a3) +.L800CBFD4: +/* 0CCBD4 800CBFD4 8EF9003C */ lw $t9, 0x3c($s7) +/* 0CCBD8 800CBFD8 8EEF0038 */ lw $t7, 0x38($s7) +/* 0CCBDC 800CBFDC 0328C021 */ addu $t8, $t9, $t0 +/* 0CCBE0 800CBFE0 330E000F */ andi $t6, $t8, 0xf +/* 0CCBE4 800CBFE4 8EF80044 */ lw $t8, 0x44($s7) +/* 0CCBE8 800CBFE8 AEEE003C */ sw $t6, 0x3c($s7) +/* 0CCBEC 800CBFEC 01E8C821 */ addu $t9, $t7, $t0 +/* 0CCBF0 800CBFF0 03097021 */ addu $t6, $t8, $t1 +/* 0CCBF4 800CBFF4 AEF90038 */ sw $t9, 0x38($s7) +/* 0CCBF8 800CBFF8 10000003 */ b .L800CC008 +/* 0CCBFC 800CBFFC AEEE0044 */ sw $t6, 0x44($s7) +.L800CC000: +/* 0CCC00 800CC000 AEE0003C */ sw $zero, 0x3c($s7) +/* 0CCC04 800CC004 AEEB0044 */ sw $t3, 0x44($s7) +.L800CC008: +/* 0CCC08 800CC008 10800013 */ beqz $a0, .L800CC058 +/* 0CCC0C 800CC00C 01401025 */ move $v0, $t2 +/* 0CCC10 800CC010 11A00005 */ beqz $t5, .L800CC028 +/* 0CCC14 800CC014 AEE0003C */ sw $zero, 0x3c($s7) +/* 0CCC18 800CC018 01841823 */ subu $v1, $t4, $a0 +/* 0CCC1C 800CC01C 00037840 */ sll $t7, $v1, 1 +/* 0CCC20 800CC020 10000002 */ b .L800CC02C +/* 0CCC24 800CC024 01E01825 */ move $v1, $t7 +.L800CC028: +/* 0CCC28 800CC028 00001825 */ move $v1, $zero +.L800CC02C: +/* 0CCC2C 800CC02C 84F90000 */ lh $t9, ($a3) +/* 0CCC30 800CC030 3C0100FF */ lui $at, (0x00FFFFFF >> 16) # lui $at, 0xff +/* 0CCC34 800CC034 3421FFFF */ ori $at, (0x00FFFFFF & 0xFFFF) # ori $at, $at, 0xffff +/* 0CCC38 800CC038 0323C021 */ addu $t8, $t9, $v1 +/* 0CCC3C 800CC03C 03017024 */ and $t6, $t8, $at +/* 0CCC40 800CC040 3C010200 */ lui $at, 0x200 +/* 0CCC44 800CC044 01C17825 */ or $t7, $t6, $at +/* 0CCC48 800CC048 0004C840 */ sll $t9, $a0, 1 +/* 0CCC4C 800CC04C AC590004 */ sw $t9, 4($v0) +/* 0CCC50 800CC050 AC4F0000 */ sw $t7, ($v0) +/* 0CCC54 800CC054 254A0008 */ addiu $t2, $t2, 8 +.L800CC058: +/* 0CCC58 800CC058 01401025 */ move $v0, $t2 +.L800CC05C: +/* 0CCC5C 800CC05C 8FBF004C */ lw $ra, 0x4c($sp) +/* 0CCC60 800CC060 8FB00028 */ lw $s0, 0x28($sp) +/* 0CCC64 800CC064 8FB1002C */ lw $s1, 0x2c($sp) +/* 0CCC68 800CC068 8FB20030 */ lw $s2, 0x30($sp) +/* 0CCC6C 800CC06C 8FB30034 */ lw $s3, 0x34($sp) +/* 0CCC70 800CC070 8FB40038 */ lw $s4, 0x38($sp) +/* 0CCC74 800CC074 8FB5003C */ lw $s5, 0x3c($sp) +/* 0CCC78 800CC078 8FB60040 */ lw $s6, 0x40($sp) +/* 0CCC7C 800CC07C 8FB70044 */ lw $s7, 0x44($sp) +/* 0CCC80 800CC080 8FBE0048 */ lw $fp, 0x48($sp) +/* 0CCC84 800CC084 03E00008 */ jr $ra +/* 0CCC88 800CC088 27BD00B0 */ addiu $sp, $sp, 0xb0 + +/* 0CCC8C 800CC08C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0CA9A0/D_800CC090.s b/asm/non_matchings/unknown_0CA9A0/D_800CC090.s new file mode 100644 index 00000000..f18d2b88 --- /dev/null +++ b/asm/non_matchings/unknown_0CA9A0/D_800CC090.s @@ -0,0 +1,64 @@ +glabel D_800CC090 +/* 0CCC90 800CC090 24AEFFFF */ addiu $t6, $a1, -1 +/* 0CCC94 800CC094 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0CCC98 800CC098 2DC10009 */ sltiu $at, $t6, 9 +/* 0CCC9C 800CC09C AFBF0014 */ sw $ra, 0x14($sp) +/* 0CCCA0 800CC0A0 1020002B */ beqz $at, .L800CC150 +/* 0CCCA4 800CC0A4 00803825 */ move $a3, $a0 +/* 0CCCA8 800CC0A8 000E7080 */ sll $t6, $t6, 2 +/* 0CCCAC 800CC0AC 3C01800F */ lui $at, 0x800f +/* 0CCCB0 800CC0B0 002E0821 */ addu $at, $at, $t6 +/* 0CCCB4 800CC0B4 8C2E9600 */ lw $t6, -0x6a00($at) +/* 0CCCB8 800CC0B8 01C00008 */ jr $t6 +/* 0CCCBC 800CC0BC 00000000 */ nop +/* 0CCCC0 800CC0C0 10000029 */ b .L800CC168 +/* 0CCCC4 800CC0C4 ACE60000 */ sw $a2, ($a3) +/* 0CCCC8 800CC0C8 8CE40000 */ lw $a0, ($a3) +/* 0CCCCC 800CC0CC 44802000 */ mtc1 $zero, $f4 +/* 0CCCD0 800CC0D0 240F0001 */ li $t7, 1 +/* 0CCCD4 800CC0D4 ACEF0024 */ sw $t7, 0x24($a3) +/* 0CCCD8 800CC0D8 ACE00030 */ sw $zero, 0x30($a3) +/* 0CCCDC 800CC0DC ACE0001C */ sw $zero, 0x1c($a3) +/* 0CCCE0 800CC0E0 10800021 */ beqz $a0, .L800CC168 +/* 0CCCE4 800CC0E4 E4E40020 */ swc1 $f4, 0x20($a3) +/* 0CCCE8 800CC0E8 8C990008 */ lw $t9, 8($a0) +/* 0CCCEC 800CC0EC 24050004 */ li $a1, 4 +/* 0CCCF0 800CC0F0 00003025 */ move $a2, $zero +/* 0CCCF4 800CC0F4 0320F809 */ jalr $t9 +/* 0CCCF8 800CC0F8 00000000 */ nop +/* 0CCCFC 800CC0FC 1000001B */ b .L800CC16C +/* 0CCD00 800CC100 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CCD04 800CC104 8CE40000 */ lw $a0, ($a3) +/* 0CCD08 800CC108 24180001 */ li $t8, 1 +/* 0CCD0C 800CC10C ACF80030 */ sw $t8, 0x30($a3) +/* 0CCD10 800CC110 50800016 */ beql $a0, $zero, .L800CC16C +/* 0CCD14 800CC114 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CCD18 800CC118 8C990008 */ lw $t9, 8($a0) +/* 0CCD1C 800CC11C 24050009 */ li $a1, 9 +/* 0CCD20 800CC120 00003025 */ move $a2, $zero +/* 0CCD24 800CC124 0320F809 */ jalr $t9 +/* 0CCD28 800CC128 00000000 */ nop +/* 0CCD2C 800CC12C 1000000F */ b .L800CC16C +/* 0CCD30 800CC130 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CCD34 800CC134 AFA6001C */ sw $a2, 0x1c($sp) +/* 0CCD38 800CC138 C7A6001C */ lwc1 $f6, 0x1c($sp) +/* 0CCD3C 800CC13C 1000000A */ b .L800CC168 +/* 0CCD40 800CC140 E4E60018 */ swc1 $f6, 0x18($a3) +/* 0CCD44 800CC144 24080001 */ li $t0, 1 +/* 0CCD48 800CC148 10000007 */ b .L800CC168 +/* 0CCD4C 800CC14C ACE8001C */ sw $t0, 0x1c($a3) +.L800CC150: +/* 0CCD50 800CC150 8CE40000 */ lw $a0, ($a3) +/* 0CCD54 800CC154 50800005 */ beql $a0, $zero, .L800CC16C +/* 0CCD58 800CC158 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CCD5C 800CC15C 8C990008 */ lw $t9, 8($a0) +/* 0CCD60 800CC160 0320F809 */ jalr $t9 +/* 0CCD64 800CC164 00000000 */ nop +.L800CC168: +/* 0CCD68 800CC168 8FBF0014 */ lw $ra, 0x14($sp) +.L800CC16C: +/* 0CCD6C 800CC16C 27BD0028 */ addiu $sp, $sp, 0x28 +/* 0CCD70 800CC170 00001025 */ move $v0, $zero +/* 0CCD74 800CC174 03E00008 */ jr $ra +/* 0CCD78 800CC178 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CA9A0/D_800CC17C.s b/asm/non_matchings/unknown_0CA9A0/D_800CC17C.s new file mode 100644 index 00000000..ac0645a6 --- /dev/null +++ b/asm/non_matchings/unknown_0CA9A0/D_800CC17C.s @@ -0,0 +1,141 @@ +glabel D_800CC17C +/* 0CCD7C 800CC17C 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 0CCD80 800CC180 AFBF001C */ sw $ra, 0x1c($sp) +/* 0CCD84 800CC184 AFA50054 */ sw $a1, 0x54($sp) +/* 0CCD88 800CC188 8C890000 */ lw $t1, ($a0) +/* 0CCD8C 800CC18C 240E0140 */ li $t6, 320 +/* 0CCD90 800CC190 00804025 */ move $t0, $a0 +/* 0CCD94 800CC194 00C05025 */ move $t2, $a2 +/* 0CCD98 800CC198 14C00003 */ bnez $a2, .L800CC1A8 +/* 0CCD9C 800CC19C A7AE0046 */ sh $t6, 0x46($sp) +/* 0CCDA0 800CC1A0 10000074 */ b .L800CC374 +/* 0CCDA4 800CC1A4 8FA20060 */ lw $v0, 0x60($sp) +.L800CC1A8: +/* 0CCDA8 800CC1A8 8D0F001C */ lw $t7, 0x1c($t0) +/* 0CCDAC 800CC1AC 8FB80060 */ lw $t8, 0x60($sp) +/* 0CCDB0 800CC1B0 51E0001A */ beql $t7, $zero, .L800CC21C +/* 0CCDB4 800CC1B4 C5020018 */ lwc1 $f2, 0x18($t0) +/* 0CCDB8 800CC1B8 AFB80010 */ sw $t8, 0x10($sp) +/* 0CCDBC 800CC1BC AFAA0058 */ sw $t2, 0x58($sp) +/* 0CCDC0 800CC1C0 8D390004 */ lw $t9, 4($t1) +/* 0CCDC4 800CC1C4 01202025 */ move $a0, $t1 +/* 0CCDC8 800CC1C8 27A50046 */ addiu $a1, $sp, 0x46 +/* 0CCDCC 800CC1CC 0320F809 */ jalr $t9 +/* 0CCDD0 800CC1D0 01403025 */ move $a2, $t2 +/* 0CCDD4 800CC1D4 87AB0046 */ lh $t3, 0x46($sp) +/* 0CCDD8 800CC1D8 3C0100FF */ lui $at, (0x00FFFFFF >> 16) # lui $at, 0xff +/* 0CCDDC 800CC1DC 3421FFFF */ ori $at, (0x00FFFFFF & 0xFFFF) # ori $at, $at, 0xffff +/* 0CCDE0 800CC1E0 01616024 */ and $t4, $t3, $at +/* 0CCDE4 800CC1E4 3C010A00 */ lui $at, 0xa00 +/* 0CCDE8 800CC1E8 8FAA0058 */ lw $t2, 0x58($sp) +/* 0CCDEC 800CC1EC 01816825 */ or $t5, $t4, $at +/* 0CCDF0 800CC1F0 AC4D0000 */ sw $t5, ($v0) +/* 0CCDF4 800CC1F4 8FAE0054 */ lw $t6, 0x54($sp) +/* 0CCDF8 800CC1F8 000A5840 */ sll $t3, $t2, 1 +/* 0CCDFC 800CC1FC 316CFFFF */ andi $t4, $t3, 0xffff +/* 0CCE00 800CC200 85D80000 */ lh $t8, ($t6) +/* 0CCE04 800CC204 24450008 */ addiu $a1, $v0, 8 +/* 0CCE08 800CC208 0018CC00 */ sll $t9, $t8, 0x10 +/* 0CCE0C 800CC20C 032C6825 */ or $t5, $t9, $t4 +/* 0CCE10 800CC210 10000057 */ b .L800CC370 +/* 0CCE14 800CC214 AC4D0004 */ sw $t5, 4($v0) +/* 0CCE18 800CC218 C5020018 */ lwc1 $f2, 0x18($t0) +.L800CC21C: +/* 0CCE1C 800CC21C 3C01800F */ lui $at, 0x800f +/* 0CCE20 800CC220 D4249628 */ ldc1 $f4, -0x69d8($at) +/* 0CCE24 800CC224 460011A1 */ cvt.d.s $f6, $f2 +/* 0CCE28 800CC228 3C01800F */ lui $at, 0x800f +/* 0CCE2C 800CC22C 4626203C */ c.lt.d $f4, $f6 +/* 0CCE30 800CC230 00000000 */ nop +/* 0CCE34 800CC234 45020005 */ bc1fl .L800CC24C +/* 0CCE38 800CC238 3C014700 */ lui $at, %hi(D_46FF9630) # $at, 0x4700 +/* 0CCE3C 800CC23C C4289630 */ lwc1 $f8, %lo(D_46FF9630)($at) +/* 0CCE40 800CC240 E5080018 */ swc1 $f8, 0x18($t0) +/* 0CCE44 800CC244 C5020018 */ lwc1 $f2, 0x18($t0) +/* 0CCE48 800CC248 3C014700 */ li $at, 0x47000000 # 32768.000000 +.L800CC24C: +/* 0CCE4C 800CC24C 44816000 */ mtc1 $at, $f12 +/* 0CCE50 800CC250 01202025 */ move $a0, $t1 +/* 0CCE54 800CC254 27A50046 */ addiu $a1, $sp, 0x46 +/* 0CCE58 800CC258 460C1282 */ mul.s $f10, $f2, $f12 +/* 0CCE5C 800CC25C 4600540D */ trunc.w.s $f16, $f10 +/* 0CCE60 800CC260 440F8000 */ mfc1 $t7, $f16 +/* 0CCE64 800CC264 448A8000 */ mtc1 $t2, $f16 +/* 0CCE68 800CC268 448F9000 */ mtc1 $t7, $f18 +/* 0CCE6C 800CC26C 00000000 */ nop +/* 0CCE70 800CC270 46809120 */ cvt.s.w $f4, $f18 +/* 0CCE74 800CC274 468084A0 */ cvt.s.w $f18, $f16 +/* 0CCE78 800CC278 E5040018 */ swc1 $f4, 0x18($t0) +/* 0CCE7C 800CC27C C5060018 */ lwc1 $f6, 0x18($t0) +/* 0CCE80 800CC280 460C3203 */ div.s $f8, $f6, $f12 +/* 0CCE84 800CC284 C5060020 */ lwc1 $f6, 0x20($t0) +/* 0CCE88 800CC288 E5080018 */ swc1 $f8, 0x18($t0) +/* 0CCE8C 800CC28C C50A0018 */ lwc1 $f10, 0x18($t0) +/* 0CCE90 800CC290 46125102 */ mul.s $f4, $f10, $f18 +/* 0CCE94 800CC294 46043000 */ add.s $f0, $f6, $f4 +/* 0CCE98 800CC298 4600020D */ trunc.w.s $f8, $f0 +/* 0CCE9C 800CC29C 44064000 */ mfc1 $a2, $f8 +/* 0CCEA0 800CC2A0 00000000 */ nop +/* 0CCEA4 800CC2A4 44868000 */ mtc1 $a2, $f16 +/* 0CCEA8 800CC2A8 00000000 */ nop +/* 0CCEAC 800CC2AC 468082A0 */ cvt.s.w $f10, $f16 +/* 0CCEB0 800CC2B0 460A0481 */ sub.s $f18, $f0, $f10 +/* 0CCEB4 800CC2B4 E5120020 */ swc1 $f18, 0x20($t0) +/* 0CCEB8 800CC2B8 8FAB0060 */ lw $t3, 0x60($sp) +/* 0CCEBC 800CC2BC AFAA0058 */ sw $t2, 0x58($sp) +/* 0CCEC0 800CC2C0 AFA80050 */ sw $t0, 0x50($sp) +/* 0CCEC4 800CC2C4 AFAB0010 */ sw $t3, 0x10($sp) +/* 0CCEC8 800CC2C8 8D390004 */ lw $t9, 4($t1) +/* 0CCECC 800CC2CC 0320F809 */ jalr $t9 +/* 0CCED0 800CC2D0 00000000 */ nop +/* 0CCED4 800CC2D4 8FA80050 */ lw $t0, 0x50($sp) +/* 0CCED8 800CC2D8 87AD0046 */ lh $t5, 0x46($sp) +/* 0CCEDC 800CC2DC 3C014700 */ li $at, 0x47000000 # 32768.000000 +/* 0CCEE0 800CC2E0 44812000 */ mtc1 $at, $f4 +/* 0CCEE4 800CC2E4 C5060018 */ lwc1 $f6, 0x18($t0) +/* 0CCEE8 800CC2E8 3C010800 */ lui $at, 0x800 +/* 0CCEEC 800CC2EC 31AEFFFF */ andi $t6, $t5, 0xffff +/* 0CCEF0 800CC2F0 8FAA0058 */ lw $t2, 0x58($sp) +/* 0CCEF4 800CC2F4 01C17825 */ or $t7, $t6, $at +/* 0CCEF8 800CC2F8 AC4F0000 */ sw $t7, ($v0) +/* 0CCEFC 800CC2FC 8FB80054 */ lw $t8, 0x54($sp) +/* 0CCF00 800CC300 46043202 */ mul.s $f8, $f6, $f4 +/* 0CCF04 800CC304 000A6840 */ sll $t5, $t2, 1 +/* 0CCF08 800CC308 87190000 */ lh $t9, ($t8) +/* 0CCF0C 800CC30C 31AEFFFF */ andi $t6, $t5, 0xffff +/* 0CCF10 800CC310 24580008 */ addiu $t8, $v0, 8 +/* 0CCF14 800CC314 00196400 */ sll $t4, $t9, 0x10 +/* 0CCF18 800CC318 018E7825 */ or $t7, $t4, $t6 +/* 0CCF1C 800CC31C 4600440D */ trunc.w.s $f16, $f8 +/* 0CCF20 800CC320 AC4F0004 */ sw $t7, 4($v0) +/* 0CCF24 800CC324 AFB80028 */ sw $t8, 0x28($sp) +/* 0CCF28 800CC328 8D0B0024 */ lw $t3, 0x24($t0) +/* 0CCF2C 800CC32C 44038000 */ mfc1 $v1, $f16 +/* 0CCF30 800CC330 3C010500 */ lui $at, 0x500 +/* 0CCF34 800CC334 317900FF */ andi $t9, $t3, 0xff +/* 0CCF38 800CC338 00196C00 */ sll $t5, $t9, 0x10 +/* 0CCF3C 800CC33C 01A16025 */ or $t4, $t5, $at +/* 0CCF40 800CC340 306EFFFF */ andi $t6, $v1, 0xffff +/* 0CCF44 800CC344 018E7825 */ or $t7, $t4, $t6 +/* 0CCF48 800CC348 AC4F0008 */ sw $t7, 8($v0) +/* 0CCF4C 800CC34C 24450010 */ addiu $a1, $v0, 0x10 +/* 0CCF50 800CC350 8D040014 */ lw $a0, 0x14($t0) +/* 0CCF54 800CC354 0C03233C */ jal func_800C8CF0 +/* 0CCF58 800CC358 AFA50048 */ sw $a1, 0x48($sp) +/* 0CCF5C 800CC35C 8FB80028 */ lw $t8, 0x28($sp) +/* 0CCF60 800CC360 8FA80050 */ lw $t0, 0x50($sp) +/* 0CCF64 800CC364 8FA50048 */ lw $a1, 0x48($sp) +/* 0CCF68 800CC368 AF020004 */ sw $v0, 4($t8) +/* 0CCF6C 800CC36C AD000024 */ sw $zero, 0x24($t0) +.L800CC370: +/* 0CCF70 800CC370 00A01025 */ move $v0, $a1 +.L800CC374: +/* 0CCF74 800CC374 8FBF001C */ lw $ra, 0x1c($sp) +/* 0CCF78 800CC378 27BD0050 */ addiu $sp, $sp, 0x50 +/* 0CCF7C 800CC37C 03E00008 */ jr $ra +/* 0CCF80 800CC380 00000000 */ nop + +/* 0CCF84 800CC384 00000000 */ nop +/* 0CCF88 800CC388 00000000 */ nop +/* 0CCF8C 800CC38C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CA9A0/bcopy.s b/asm/non_matchings/unknown_0CA9A0/bcopy.s new file mode 100644 index 00000000..200f57d3 --- /dev/null +++ b/asm/non_matchings/unknown_0CA9A0/bcopy.s @@ -0,0 +1,222 @@ +glabel bcopy +/* 0CA9A0 800C9DA0 10C0001A */ beqz $a2, .L800C9E0C +/* 0CA9A4 800C9DA4 00A03825 */ move $a3, $a1 +/* 0CA9A8 800C9DA8 10850018 */ beq $a0, $a1, .L800C9E0C +/* 0CA9AC 800C9DAC 00A4082A */ slt $at, $a1, $a0 +/* 0CA9B0 800C9DB0 54200008 */ bnezl $at, .L800C9DD4 +/* 0CA9B4 800C9DB4 28C10010 */ slti $at, $a2, 0x10 +/* 0CA9B8 800C9DB8 00861020 */ add $v0, $a0, $a2 +/* 0CA9BC 800C9DBC 00A2082A */ slt $at, $a1, $v0 +/* 0CA9C0 800C9DC0 50200004 */ beql $at, $zero, .L800C9DD4 +/* 0CA9C4 800C9DC4 28C10010 */ slti $at, $a2, 0x10 +/* 0CA9C8 800C9DC8 1000005B */ b .L800C9F38 +/* 0CA9CC 800C9DCC 28C10010 */ slti $at, $a2, 0x10 +/* 0CA9D0 800C9DD0 28C10010 */ slti $at, $a2, 0x10 +.L800C9DD4: +/* 0CA9D4 800C9DD4 14200005 */ bnez $at, .L800C9DEC +/* 0CA9D8 800C9DD8 00000000 */ nop +/* 0CA9DC 800C9DDC 30820003 */ andi $v0, $a0, 3 +/* 0CA9E0 800C9DE0 30A30003 */ andi $v1, $a1, 3 +/* 0CA9E4 800C9DE4 1043000B */ beq $v0, $v1, .L800C9E14 +/* 0CA9E8 800C9DE8 00000000 */ nop +.L800C9DEC: +/* 0CA9EC 800C9DEC 10C00007 */ beqz $a2, .L800C9E0C +/* 0CA9F0 800C9DF0 00000000 */ nop +/* 0CA9F4 800C9DF4 00861821 */ addu $v1, $a0, $a2 +.L800C9DF8: +/* 0CA9F8 800C9DF8 80820000 */ lb $v0, ($a0) +/* 0CA9FC 800C9DFC 24840001 */ addiu $a0, $a0, 1 +/* 0CAA00 800C9E00 24A50001 */ addiu $a1, $a1, 1 +/* 0CAA04 800C9E04 1483FFFC */ bne $a0, $v1, .L800C9DF8 +/* 0CAA08 800C9E08 A0A2FFFF */ sb $v0, -1($a1) +.L800C9E0C: +/* 0CAA0C 800C9E0C 03E00008 */ jr $ra +/* 0CAA10 800C9E10 00E01025 */ move $v0, $a3 + +.L800C9E14: +/* 0CAA14 800C9E14 10400018 */ beqz $v0, .L800C9E78 +/* 0CAA18 800C9E18 24010001 */ li $at, 1 +/* 0CAA1C 800C9E1C 1041000F */ beq $v0, $at, .L800C9E5C +/* 0CAA20 800C9E20 24010002 */ li $at, 2 +/* 0CAA24 800C9E24 50410008 */ beql $v0, $at, .L800C9E48 +/* 0CAA28 800C9E28 84820000 */ lh $v0, ($a0) +/* 0CAA2C 800C9E2C 80820000 */ lb $v0, ($a0) +/* 0CAA30 800C9E30 24840001 */ addiu $a0, $a0, 1 +/* 0CAA34 800C9E34 24A50001 */ addiu $a1, $a1, 1 +/* 0CAA38 800C9E38 24C6FFFF */ addiu $a2, $a2, -1 +/* 0CAA3C 800C9E3C 1000000E */ b .L800C9E78 +/* 0CAA40 800C9E40 A0A2FFFF */ sb $v0, -1($a1) +/* 0CAA44 800C9E44 84820000 */ lh $v0, ($a0) +.L800C9E48: +/* 0CAA48 800C9E48 24840002 */ addiu $a0, $a0, 2 +/* 0CAA4C 800C9E4C 24A50002 */ addiu $a1, $a1, 2 +/* 0CAA50 800C9E50 24C6FFFE */ addiu $a2, $a2, -2 +/* 0CAA54 800C9E54 10000008 */ b .L800C9E78 +/* 0CAA58 800C9E58 A4A2FFFE */ sh $v0, -2($a1) +.L800C9E5C: +/* 0CAA5C 800C9E5C 80820000 */ lb $v0, ($a0) +/* 0CAA60 800C9E60 84830001 */ lh $v1, 1($a0) +/* 0CAA64 800C9E64 24840003 */ addiu $a0, $a0, 3 +/* 0CAA68 800C9E68 24A50003 */ addiu $a1, $a1, 3 +/* 0CAA6C 800C9E6C 24C6FFFD */ addiu $a2, $a2, -3 +/* 0CAA70 800C9E70 A0A2FFFD */ sb $v0, -3($a1) +/* 0CAA74 800C9E74 A4A3FFFE */ sh $v1, -2($a1) +.L800C9E78: +/* 0CAA78 800C9E78 28C10020 */ slti $at, $a2, 0x20 +/* 0CAA7C 800C9E7C 54200016 */ bnezl $at, .L800C9ED8 +/* 0CAA80 800C9E80 28C10010 */ slti $at, $a2, 0x10 +/* 0CAA84 800C9E84 8C820000 */ lw $v0, ($a0) +/* 0CAA88 800C9E88 8C830004 */ lw $v1, 4($a0) +/* 0CAA8C 800C9E8C 8C880008 */ lw $t0, 8($a0) +/* 0CAA90 800C9E90 8C89000C */ lw $t1, 0xc($a0) +/* 0CAA94 800C9E94 8C8A0010 */ lw $t2, 0x10($a0) +/* 0CAA98 800C9E98 8C8B0014 */ lw $t3, 0x14($a0) +/* 0CAA9C 800C9E9C 8C8C0018 */ lw $t4, 0x18($a0) +/* 0CAAA0 800C9EA0 8C8D001C */ lw $t5, 0x1c($a0) +/* 0CAAA4 800C9EA4 24840020 */ addiu $a0, $a0, 0x20 +/* 0CAAA8 800C9EA8 24A50020 */ addiu $a1, $a1, 0x20 +/* 0CAAAC 800C9EAC 24C6FFE0 */ addiu $a2, $a2, -0x20 +/* 0CAAB0 800C9EB0 ACA2FFE0 */ sw $v0, -0x20($a1) +/* 0CAAB4 800C9EB4 ACA3FFE4 */ sw $v1, -0x1c($a1) +/* 0CAAB8 800C9EB8 ACA8FFE8 */ sw $t0, -0x18($a1) +/* 0CAABC 800C9EBC ACA9FFEC */ sw $t1, -0x14($a1) +/* 0CAAC0 800C9EC0 ACAAFFF0 */ sw $t2, -0x10($a1) +/* 0CAAC4 800C9EC4 ACABFFF4 */ sw $t3, -0xc($a1) +/* 0CAAC8 800C9EC8 ACACFFF8 */ sw $t4, -8($a1) +/* 0CAACC 800C9ECC 1000FFEA */ b .L800C9E78 +/* 0CAAD0 800C9ED0 ACADFFFC */ sw $t5, -4($a1) +.L800C9ED4: +/* 0CAAD4 800C9ED4 28C10010 */ slti $at, $a2, 0x10 +.L800C9ED8: +/* 0CAAD8 800C9ED8 5420000E */ bnezl $at, .L800C9F14 +/* 0CAADC 800C9EDC 28C10004 */ slti $at, $a2, 4 +/* 0CAAE0 800C9EE0 8C820000 */ lw $v0, ($a0) +/* 0CAAE4 800C9EE4 8C830004 */ lw $v1, 4($a0) +/* 0CAAE8 800C9EE8 8C880008 */ lw $t0, 8($a0) +/* 0CAAEC 800C9EEC 8C89000C */ lw $t1, 0xc($a0) +/* 0CAAF0 800C9EF0 24840010 */ addiu $a0, $a0, 0x10 +/* 0CAAF4 800C9EF4 24A50010 */ addiu $a1, $a1, 0x10 +/* 0CAAF8 800C9EF8 24C6FFF0 */ addiu $a2, $a2, -0x10 +/* 0CAAFC 800C9EFC ACA2FFF0 */ sw $v0, -0x10($a1) +/* 0CAB00 800C9F00 ACA3FFF4 */ sw $v1, -0xc($a1) +/* 0CAB04 800C9F04 ACA8FFF8 */ sw $t0, -8($a1) +/* 0CAB08 800C9F08 1000FFF2 */ b .L800C9ED4 +/* 0CAB0C 800C9F0C ACA9FFFC */ sw $t1, -4($a1) +.L800C9F10: +/* 0CAB10 800C9F10 28C10004 */ slti $at, $a2, 4 +.L800C9F14: +/* 0CAB14 800C9F14 1420FFB5 */ bnez $at, .L800C9DEC +/* 0CAB18 800C9F18 00000000 */ nop +/* 0CAB1C 800C9F1C 8C820000 */ lw $v0, ($a0) +/* 0CAB20 800C9F20 24840004 */ addiu $a0, $a0, 4 +/* 0CAB24 800C9F24 24A50004 */ addiu $a1, $a1, 4 +/* 0CAB28 800C9F28 24C6FFFC */ addiu $a2, $a2, -4 +/* 0CAB2C 800C9F2C 1000FFF8 */ b .L800C9F10 +/* 0CAB30 800C9F30 ACA2FFFC */ sw $v0, -4($a1) +/* 0CAB34 800C9F34 28C10010 */ slti $at, $a2, 0x10 +.L800C9F38: +/* 0CAB38 800C9F38 00862020 */ add $a0, $a0, $a2 +/* 0CAB3C 800C9F3C 14200005 */ bnez $at, .L800C9F54 +/* 0CAB40 800C9F40 00A62820 */ add $a1, $a1, $a2 +/* 0CAB44 800C9F44 30820003 */ andi $v0, $a0, 3 +/* 0CAB48 800C9F48 30A30003 */ andi $v1, $a1, 3 +/* 0CAB4C 800C9F4C 1043000D */ beq $v0, $v1, .L800C9F84 +/* 0CAB50 800C9F50 00000000 */ nop +.L800C9F54: +/* 0CAB54 800C9F54 10C0FFAD */ beqz $a2, .L800C9E0C +/* 0CAB58 800C9F58 00000000 */ nop +/* 0CAB5C 800C9F5C 2484FFFF */ addiu $a0, $a0, -1 +/* 0CAB60 800C9F60 24A5FFFF */ addiu $a1, $a1, -1 +/* 0CAB64 800C9F64 00861823 */ subu $v1, $a0, $a2 +.L800C9F68: +/* 0CAB68 800C9F68 80820000 */ lb $v0, ($a0) +/* 0CAB6C 800C9F6C 2484FFFF */ addiu $a0, $a0, -1 +/* 0CAB70 800C9F70 24A5FFFF */ addiu $a1, $a1, -1 +/* 0CAB74 800C9F74 1483FFFC */ bne $a0, $v1, .L800C9F68 +/* 0CAB78 800C9F78 A0A20001 */ sb $v0, 1($a1) +/* 0CAB7C 800C9F7C 03E00008 */ jr $ra +/* 0CAB80 800C9F80 00E01025 */ move $v0, $a3 + +.L800C9F84: +/* 0CAB84 800C9F84 10400018 */ beqz $v0, .L800C9FE8 +/* 0CAB88 800C9F88 24010003 */ li $at, 3 +/* 0CAB8C 800C9F8C 1041000F */ beq $v0, $at, .L800C9FCC +/* 0CAB90 800C9F90 24010002 */ li $at, 2 +/* 0CAB94 800C9F94 50410008 */ beql $v0, $at, .L800C9FB8 +/* 0CAB98 800C9F98 8482FFFE */ lh $v0, -2($a0) +/* 0CAB9C 800C9F9C 8082FFFF */ lb $v0, -1($a0) +/* 0CABA0 800C9FA0 2484FFFF */ addiu $a0, $a0, -1 +/* 0CABA4 800C9FA4 24A5FFFF */ addiu $a1, $a1, -1 +/* 0CABA8 800C9FA8 24C6FFFF */ addiu $a2, $a2, -1 +/* 0CABAC 800C9FAC 1000000E */ b .L800C9FE8 +/* 0CABB0 800C9FB0 A0A20000 */ sb $v0, ($a1) +/* 0CABB4 800C9FB4 8482FFFE */ lh $v0, -2($a0) +.L800C9FB8: +/* 0CABB8 800C9FB8 2484FFFE */ addiu $a0, $a0, -2 +/* 0CABBC 800C9FBC 24A5FFFE */ addiu $a1, $a1, -2 +/* 0CABC0 800C9FC0 24C6FFFE */ addiu $a2, $a2, -2 +/* 0CABC4 800C9FC4 10000008 */ b .L800C9FE8 +/* 0CABC8 800C9FC8 A4A20000 */ sh $v0, ($a1) +.L800C9FCC: +/* 0CABCC 800C9FCC 8082FFFF */ lb $v0, -1($a0) +/* 0CABD0 800C9FD0 8483FFFD */ lh $v1, -3($a0) +/* 0CABD4 800C9FD4 2484FFFD */ addiu $a0, $a0, -3 +/* 0CABD8 800C9FD8 24A5FFFD */ addiu $a1, $a1, -3 +/* 0CABDC 800C9FDC 24C6FFFD */ addiu $a2, $a2, -3 +/* 0CABE0 800C9FE0 A0A20002 */ sb $v0, 2($a1) +/* 0CABE4 800C9FE4 A4A30000 */ sh $v1, ($a1) +.L800C9FE8: +/* 0CABE8 800C9FE8 28C10020 */ slti $at, $a2, 0x20 +/* 0CABEC 800C9FEC 54200016 */ bnezl $at, .L800CA048 +/* 0CABF0 800C9FF0 28C10010 */ slti $at, $a2, 0x10 +/* 0CABF4 800C9FF4 8C82FFFC */ lw $v0, -4($a0) +/* 0CABF8 800C9FF8 8C83FFF8 */ lw $v1, -8($a0) +/* 0CABFC 800C9FFC 8C88FFF4 */ lw $t0, -0xc($a0) +/* 0CAC00 800CA000 8C89FFF0 */ lw $t1, -0x10($a0) +/* 0CAC04 800CA004 8C8AFFEC */ lw $t2, -0x14($a0) +/* 0CAC08 800CA008 8C8BFFE8 */ lw $t3, -0x18($a0) +/* 0CAC0C 800CA00C 8C8CFFE4 */ lw $t4, -0x1c($a0) +/* 0CAC10 800CA010 8C8DFFE0 */ lw $t5, -0x20($a0) +/* 0CAC14 800CA014 2484FFE0 */ addiu $a0, $a0, -0x20 +/* 0CAC18 800CA018 24A5FFE0 */ addiu $a1, $a1, -0x20 +/* 0CAC1C 800CA01C 24C6FFE0 */ addiu $a2, $a2, -0x20 +/* 0CAC20 800CA020 ACA2001C */ sw $v0, 0x1c($a1) +/* 0CAC24 800CA024 ACA30018 */ sw $v1, 0x18($a1) +/* 0CAC28 800CA028 ACA80014 */ sw $t0, 0x14($a1) +/* 0CAC2C 800CA02C ACA90010 */ sw $t1, 0x10($a1) +/* 0CAC30 800CA030 ACAA000C */ sw $t2, 0xc($a1) +/* 0CAC34 800CA034 ACAB0008 */ sw $t3, 8($a1) +/* 0CAC38 800CA038 ACAC0004 */ sw $t4, 4($a1) +/* 0CAC3C 800CA03C 1000FFEA */ b .L800C9FE8 +/* 0CAC40 800CA040 ACAD0000 */ sw $t5, ($a1) +.L800CA044: +/* 0CAC44 800CA044 28C10010 */ slti $at, $a2, 0x10 +.L800CA048: +/* 0CAC48 800CA048 5420000E */ bnezl $at, .L800CA084 +/* 0CAC4C 800CA04C 28C10004 */ slti $at, $a2, 4 +/* 0CAC50 800CA050 8C82FFFC */ lw $v0, -4($a0) +/* 0CAC54 800CA054 8C83FFF8 */ lw $v1, -8($a0) +/* 0CAC58 800CA058 8C88FFF4 */ lw $t0, -0xc($a0) +/* 0CAC5C 800CA05C 8C89FFF0 */ lw $t1, -0x10($a0) +/* 0CAC60 800CA060 2484FFF0 */ addiu $a0, $a0, -0x10 +/* 0CAC64 800CA064 24A5FFF0 */ addiu $a1, $a1, -0x10 +/* 0CAC68 800CA068 24C6FFF0 */ addiu $a2, $a2, -0x10 +/* 0CAC6C 800CA06C ACA2000C */ sw $v0, 0xc($a1) +/* 0CAC70 800CA070 ACA30008 */ sw $v1, 8($a1) +/* 0CAC74 800CA074 ACA80004 */ sw $t0, 4($a1) +/* 0CAC78 800CA078 1000FFF2 */ b .L800CA044 +/* 0CAC7C 800CA07C ACA90000 */ sw $t1, ($a1) +.L800CA080: +/* 0CAC80 800CA080 28C10004 */ slti $at, $a2, 4 +.L800CA084: +/* 0CAC84 800CA084 1420FFB3 */ bnez $at, .L800C9F54 +/* 0CAC88 800CA088 00000000 */ nop +/* 0CAC8C 800CA08C 8C82FFFC */ lw $v0, -4($a0) +/* 0CAC90 800CA090 2484FFFC */ addiu $a0, $a0, -4 +/* 0CAC94 800CA094 24A5FFFC */ addiu $a1, $a1, -4 +/* 0CAC98 800CA098 24C6FFFC */ addiu $a2, $a2, -4 +/* 0CAC9C 800CA09C 1000FFF8 */ b .L800CA080 +/* 0CACA0 800CA0A0 ACA20000 */ sw $v0, ($a1) +/* 0CACA4 800CA0A4 00000000 */ nop +/* 0CACA8 800CA0A8 00000000 */ nop +/* 0CACAC 800CA0AC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0CA9A0/func_800CA0B0.s b/asm/non_matchings/unknown_0CA9A0/func_800CA0B0.s new file mode 100644 index 00000000..90f712ba --- /dev/null +++ b/asm/non_matchings/unknown_0CA9A0/func_800CA0B0.s @@ -0,0 +1,10 @@ +glabel func_800CA0B0 +/* 0CACB0 800CA0B0 AC800000 */ sw $zero, ($a0) +/* 0CACB4 800CA0B4 AC850004 */ sw $a1, 4($a0) +/* 0CACB8 800CA0B8 AC860008 */ sw $a2, 8($a0) +/* 0CACBC 800CA0BC A480000C */ sh $zero, 0xc($a0) +/* 0CACC0 800CA0C0 A480000E */ sh $zero, 0xe($a0) +/* 0CACC4 800CA0C4 03E00008 */ jr $ra +/* 0CACC8 800CA0C8 AC870010 */ sw $a3, 0x10($a0) + +/* 0CACCC 800CA0CC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0CA9A0/func_800CAC5C.s b/asm/non_matchings/unknown_0CA9A0/func_800CAC5C.s new file mode 100644 index 00000000..9236f7cd --- /dev/null +++ b/asm/non_matchings/unknown_0CA9A0/func_800CAC5C.s @@ -0,0 +1,436 @@ +glabel func_800CAC5C +/* 0CB85C 800CAC5C 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 0CB860 800CAC60 AFBF001C */ sw $ra, 0x1c($sp) +/* 0CB864 800CAC64 AFA40050 */ sw $a0, 0x50($sp) +/* 0CB868 800CAC68 AFA50054 */ sw $a1, 0x54($sp) +/* 0CB86C 800CAC6C AFA60058 */ sw $a2, 0x58($sp) +/* 0CB870 800CAC70 AFA7005C */ sw $a3, 0x5c($sp) +/* 0CB874 800CAC74 8FAE0064 */ lw $t6, 0x64($sp) +/* 0CB878 800CAC78 00000000 */ nop +/* 0CB87C 800CAC7C AFAE004C */ sw $t6, 0x4c($sp) +/* 0CB880 800CAC80 8FAF0050 */ lw $t7, 0x50($sp) +/* 0CB884 800CAC84 00000000 */ nop +/* 0CB888 800CAC88 AFAF0048 */ sw $t7, 0x48($sp) +/* 0CB88C 800CAC8C 8FB80048 */ lw $t8, 0x48($sp) +/* 0CB890 800CAC90 00000000 */ nop +/* 0CB894 800CAC94 8F190000 */ lw $t9, ($t8) +/* 0CB898 800CAC98 00000000 */ nop +/* 0CB89C 800CAC9C AFB90044 */ sw $t9, 0x44($sp) +/* 0CB8A0 800CACA0 8FA8005C */ lw $t0, 0x5c($sp) +/* 0CB8A4 800CACA4 00000000 */ nop +/* 0CB8A8 800CACA8 15000004 */ bnez $t0, .L800CACBC +/* 0CB8AC 800CACAC 00000000 */ nop +/* 0CB8B0 800CACB0 8FA2004C */ lw $v0, 0x4c($sp) +/* 0CB8B4 800CACB4 1000010F */ b .L800CB0F4 +/* 0CB8B8 800CACB8 00000000 */ nop +.L800CACBC: +/* 0CB8BC 800CACBC 8FA90044 */ lw $t1, 0x44($sp) +/* 0CB8C0 800CACC0 00000000 */ nop +/* 0CB8C4 800CACC4 11200003 */ beqz $t1, .L800CACD4 +/* 0CB8C8 800CACC8 00000000 */ nop +/* 0CB8CC 800CACCC 10000007 */ b .L800CACEC +/* 0CB8D0 800CACD0 00000000 */ nop +.L800CACD4: +/* 0CB8D4 800CACD4 3C04800F */ lui $a0, %hi(D_800E95A0) # $a0, 0x800f +/* 0CB8D8 800CACD8 3C05800F */ lui $a1, %hi(D_800E95A8) # $a1, 0x800f +/* 0CB8DC 800CACDC 24A595A8 */ addiu $a1, %lo(D_800E95A8) # addiu $a1, $a1, -0x6a58 +/* 0CB8E0 800CACE0 248495A0 */ addiu $a0, %lo(D_800E95A0) # addiu $a0, $a0, -0x6a60 +/* 0CB8E4 800CACE4 0C02DBD0 */ jal func_800B6F40 +/* 0CB8E8 800CACE8 24060175 */ li $a2, 373 +.L800CACEC: +/* 0CB8EC 800CACEC 8FAB0064 */ lw $t3, 0x64($sp) +/* 0CB8F0 800CACF0 8FAA0044 */ lw $t2, 0x44($sp) +/* 0CB8F4 800CACF4 AFAB0010 */ sw $t3, 0x10($sp) +/* 0CB8F8 800CACF8 8D590004 */ lw $t9, 4($t2) +/* 0CB8FC 800CACFC 8FA50054 */ lw $a1, 0x54($sp) +/* 0CB900 800CAD00 8FA6005C */ lw $a2, 0x5c($sp) +/* 0CB904 800CAD04 8FA70060 */ lw $a3, 0x60($sp) +/* 0CB908 800CAD08 0320F809 */ jalr $t9 +/* 0CB90C 800CAD0C 01402025 */ move $a0, $t2 +/* 0CB910 800CAD10 AFA2004C */ sw $v0, 0x4c($sp) +/* 0CB914 800CAD14 8FAC004C */ lw $t4, 0x4c($sp) +/* 0CB918 800CAD18 00000000 */ nop +/* 0CB91C 800CAD1C 258D0008 */ addiu $t5, $t4, 8 +/* 0CB920 800CAD20 AFAD004C */ sw $t5, 0x4c($sp) +/* 0CB924 800CAD24 AFAC0040 */ sw $t4, 0x40($sp) +/* 0CB928 800CAD28 8FAE0054 */ lw $t6, 0x54($sp) +/* 0CB92C 800CAD2C 8FA90040 */ lw $t1, 0x40($sp) +/* 0CB930 800CAD30 85CF0000 */ lh $t7, ($t6) +/* 0CB934 800CAD34 3C010800 */ lui $at, 0x800 +/* 0CB938 800CAD38 31F8FFFF */ andi $t8, $t7, 0xffff +/* 0CB93C 800CAD3C 03014025 */ or $t0, $t8, $at +/* 0CB940 800CAD40 AD280000 */ sw $t0, ($t1) +/* 0CB944 800CAD44 8FAB0058 */ lw $t3, 0x58($sp) +/* 0CB948 800CAD48 8FAE005C */ lw $t6, 0x5c($sp) +/* 0CB94C 800CAD4C 856A0000 */ lh $t2, ($t3) +/* 0CB950 800CAD50 000E7840 */ sll $t7, $t6, 1 +/* 0CB954 800CAD54 25590440 */ addiu $t9, $t2, 0x440 +/* 0CB958 800CAD58 332CFFFF */ andi $t4, $t9, 0xffff +/* 0CB95C 800CAD5C 8FA90040 */ lw $t1, 0x40($sp) +/* 0CB960 800CAD60 000C6C00 */ sll $t5, $t4, 0x10 +/* 0CB964 800CAD64 31F8FFFF */ andi $t8, $t7, 0xffff +/* 0CB968 800CAD68 01B84025 */ or $t0, $t5, $t8 +/* 0CB96C 800CAD6C AD280004 */ sw $t0, 4($t1) +/* 0CB970 800CAD70 8FAB004C */ lw $t3, 0x4c($sp) +/* 0CB974 800CAD74 00000000 */ nop +/* 0CB978 800CAD78 256A0008 */ addiu $t2, $t3, 8 +/* 0CB97C 800CAD7C AFAA004C */ sw $t2, 0x4c($sp) +/* 0CB980 800CAD80 AFAB003C */ sw $t3, 0x3c($sp) +/* 0CB984 800CAD84 8FB90058 */ lw $t9, 0x58($sp) +/* 0CB988 800CAD88 8FB8003C */ lw $t8, 0x3c($sp) +/* 0CB98C 800CAD8C 872C0000 */ lh $t4, ($t9) +/* 0CB990 800CAD90 3C010808 */ lui $at, 0x808 +/* 0CB994 800CAD94 258E0580 */ addiu $t6, $t4, 0x580 +/* 0CB998 800CAD98 31CFFFFF */ andi $t7, $t6, 0xffff +/* 0CB99C 800CAD9C 01E16825 */ or $t5, $t7, $at +/* 0CB9A0 800CADA0 AF0D0000 */ sw $t5, ($t8) +/* 0CB9A4 800CADA4 8FA80058 */ lw $t0, 0x58($sp) +/* 0CB9A8 800CADA8 8FAD003C */ lw $t5, 0x3c($sp) +/* 0CB9AC 800CADAC 85090000 */ lh $t1, ($t0) +/* 0CB9B0 800CADB0 00000000 */ nop +/* 0CB9B4 800CADB4 253906C0 */ addiu $t9, $t1, 0x6c0 +/* 0CB9B8 800CADB8 332CFFFF */ andi $t4, $t9, 0xffff +/* 0CB9BC 800CADBC 252B0800 */ addiu $t3, $t1, 0x800 +/* 0CB9C0 800CADC0 316AFFFF */ andi $t2, $t3, 0xffff +/* 0CB9C4 800CADC4 000C7400 */ sll $t6, $t4, 0x10 +/* 0CB9C8 800CADC8 014E7825 */ or $t7, $t2, $t6 +/* 0CB9CC 800CADCC ADAF0004 */ sw $t7, 4($t5) +/* 0CB9D0 800CADD0 8FB80048 */ lw $t8, 0x48($sp) +/* 0CB9D4 800CADD4 00000000 */ nop +/* 0CB9D8 800CADD8 8F080038 */ lw $t0, 0x38($t8) +/* 0CB9DC 800CADDC 00000000 */ nop +/* 0CB9E0 800CADE0 110000A9 */ beqz $t0, .L800CB088 +/* 0CB9E4 800CADE4 00000000 */ nop +/* 0CB9E8 800CADE8 8FAB0048 */ lw $t3, 0x48($sp) +/* 0CB9EC 800CADEC 00000000 */ nop +/* 0CB9F0 800CADF0 AD600038 */ sw $zero, 0x38($t3) +/* 0CB9F4 800CADF4 8FA90048 */ lw $t1, 0x48($sp) +/* 0CB9F8 800CADF8 3C0A800E */ lui $t2, 0x800e +/* 0CB9FC 800CADFC 85390018 */ lh $t9, 0x18($t1) +/* 0CBA00 800CAE00 852E001A */ lh $t6, 0x1a($t1) +/* 0CBA04 800CAE04 00196040 */ sll $t4, $t9, 1 +/* 0CBA08 800CAE08 014C5021 */ addu $t2, $t2, $t4 +/* 0CBA0C 800CAE0C 854A37A0 */ lh $t2, 0x37a0($t2) +/* 0CBA10 800CAE10 00000000 */ nop +/* 0CBA14 800CAE14 014E0019 */ multu $t2, $t6 +/* 0CBA18 800CAE18 00007812 */ mflo $t7 +/* 0CBA1C 800CAE1C 000F6BC3 */ sra $t5, $t7, 0xf +/* 0CBA20 800CAE20 A52D0028 */ sh $t5, 0x28($t1) +/* 0CBA24 800CAE24 8FB80048 */ lw $t8, 0x48($sp) +/* 0CBA28 800CAE28 00000000 */ nop +/* 0CBA2C 800CAE2C 8708001C */ lh $t0, 0x1c($t8) +/* 0CBA30 800CAE30 870B0028 */ lh $t3, 0x28($t8) +/* 0CBA34 800CAE34 8F190034 */ lw $t9, 0x34($t8) +/* 0CBA38 800CAE38 44882000 */ mtc1 $t0, $f4 +/* 0CBA3C 800CAE3C 448B3000 */ mtc1 $t3, $f6 +/* 0CBA40 800CAE40 270C0024 */ addiu $t4, $t8, 0x24 +/* 0CBA44 800CAE44 AFAC0014 */ sw $t4, 0x14($sp) +/* 0CBA48 800CAE48 AFB90010 */ sw $t9, 0x10($sp) +/* 0CBA4C 800CAE4C 46802321 */ cvt.d.w $f12, $f4 +/* 0CBA50 800CAE50 0C032CB5 */ jal func_800CB2D4 +/* 0CBA54 800CAE54 468033A1 */ cvt.d.w $f14, $f6 +/* 0CBA58 800CAE58 8FAA0048 */ lw $t2, 0x48($sp) +/* 0CBA5C 800CAE5C 00000000 */ nop +/* 0CBA60 800CAE60 A5420026 */ sh $v0, 0x26($t2) +/* 0CBA64 800CAE64 8FAE0048 */ lw $t6, 0x48($sp) +/* 0CBA68 800CAE68 3C08800E */ lui $t0, 0x800e +/* 0CBA6C 800CAE6C 85CF0018 */ lh $t7, 0x18($t6) +/* 0CBA70 800CAE70 85CB001A */ lh $t3, 0x1a($t6) +/* 0CBA74 800CAE74 000F6823 */ negu $t5, $t7 +/* 0CBA78 800CAE78 000D4840 */ sll $t1, $t5, 1 +/* 0CBA7C 800CAE7C 01094021 */ addu $t0, $t0, $t1 +/* 0CBA80 800CAE80 8508389E */ lh $t0, 0x389e($t0) +/* 0CBA84 800CAE84 00000000 */ nop +/* 0CBA88 800CAE88 010B0019 */ multu $t0, $t3 +/* 0CBA8C 800CAE8C 0000C812 */ mflo $t9 +/* 0CBA90 800CAE90 0019C3C3 */ sra $t8, $t9, 0xf +/* 0CBA94 800CAE94 A5D8002E */ sh $t8, 0x2e($t6) +/* 0CBA98 800CAE98 8FAC0048 */ lw $t4, 0x48($sp) +/* 0CBA9C 800CAE9C 00000000 */ nop +/* 0CBAA0 800CAEA0 858A001E */ lh $t2, 0x1e($t4) +/* 0CBAA4 800CAEA4 858F002E */ lh $t7, 0x2e($t4) +/* 0CBAA8 800CAEA8 8D8D0034 */ lw $t5, 0x34($t4) +/* 0CBAAC 800CAEAC 448A4000 */ mtc1 $t2, $f8 +/* 0CBAB0 800CAEB0 448F5000 */ mtc1 $t7, $f10 +/* 0CBAB4 800CAEB4 2589002A */ addiu $t1, $t4, 0x2a +/* 0CBAB8 800CAEB8 AFA90014 */ sw $t1, 0x14($sp) +/* 0CBABC 800CAEBC AFAD0010 */ sw $t5, 0x10($sp) +/* 0CBAC0 800CAEC0 46804321 */ cvt.d.w $f12, $f8 +/* 0CBAC4 800CAEC4 0C032CB5 */ jal func_800CB2D4 +/* 0CBAC8 800CAEC8 468053A1 */ cvt.d.w $f14, $f10 +/* 0CBACC 800CAECC 8FA80048 */ lw $t0, 0x48($sp) +/* 0CBAD0 800CAED0 00000000 */ nop +/* 0CBAD4 800CAED4 A502002C */ sh $v0, 0x2c($t0) +/* 0CBAD8 800CAED8 8FAB004C */ lw $t3, 0x4c($sp) +/* 0CBADC 800CAEDC 00000000 */ nop +/* 0CBAE0 800CAEE0 25790008 */ addiu $t9, $t3, 8 +/* 0CBAE4 800CAEE4 AFB9004C */ sw $t9, 0x4c($sp) +/* 0CBAE8 800CAEE8 AFAB0038 */ sw $t3, 0x38($sp) +/* 0CBAEC 800CAEEC 8FB80048 */ lw $t8, 0x48($sp) +/* 0CBAF0 800CAEF0 8FAD0038 */ lw $t5, 0x38($sp) +/* 0CBAF4 800CAEF4 870E001C */ lh $t6, 0x1c($t8) +/* 0CBAF8 800CAEF8 3C010906 */ lui $at, 0x906 +/* 0CBAFC 800CAEFC 31CAFFFF */ andi $t2, $t6, 0xffff +/* 0CBB00 800CAF00 01417825 */ or $t7, $t2, $at +/* 0CBB04 800CAF04 ADAF0000 */ sw $t7, ($t5) +/* 0CBB08 800CAF08 8FAC0038 */ lw $t4, 0x38($sp) +/* 0CBB0C 800CAF0C 00000000 */ nop +/* 0CBB10 800CAF10 AD800004 */ sw $zero, 4($t4) +/* 0CBB14 800CAF14 8FA9004C */ lw $t1, 0x4c($sp) +/* 0CBB18 800CAF18 00000000 */ nop +/* 0CBB1C 800CAF1C 25280008 */ addiu $t0, $t1, 8 +/* 0CBB20 800CAF20 AFA8004C */ sw $t0, 0x4c($sp) +/* 0CBB24 800CAF24 AFA90034 */ sw $t1, 0x34($sp) +/* 0CBB28 800CAF28 8FAB0048 */ lw $t3, 0x48($sp) +/* 0CBB2C 800CAF2C 8FAA0034 */ lw $t2, 0x34($sp) +/* 0CBB30 800CAF30 8579001E */ lh $t9, 0x1e($t3) +/* 0CBB34 800CAF34 3C010904 */ lui $at, 0x904 +/* 0CBB38 800CAF38 3338FFFF */ andi $t8, $t9, 0xffff +/* 0CBB3C 800CAF3C 03017025 */ or $t6, $t8, $at +/* 0CBB40 800CAF40 AD4E0000 */ sw $t6, ($t2) +/* 0CBB44 800CAF44 8FAF0034 */ lw $t7, 0x34($sp) +/* 0CBB48 800CAF48 00000000 */ nop +/* 0CBB4C 800CAF4C ADE00004 */ sw $zero, 4($t7) +/* 0CBB50 800CAF50 8FAD004C */ lw $t5, 0x4c($sp) +/* 0CBB54 800CAF54 00000000 */ nop +/* 0CBB58 800CAF58 25AC0008 */ addiu $t4, $t5, 8 +/* 0CBB5C 800CAF5C AFAC004C */ sw $t4, 0x4c($sp) +/* 0CBB60 800CAF60 AFAD0030 */ sw $t5, 0x30($sp) +/* 0CBB64 800CAF64 8FA90048 */ lw $t1, 0x48($sp) +/* 0CBB68 800CAF68 8FB80030 */ lw $t8, 0x30($sp) +/* 0CBB6C 800CAF6C 85280028 */ lh $t0, 0x28($t1) +/* 0CBB70 800CAF70 3C010902 */ lui $at, 0x902 +/* 0CBB74 800CAF74 310BFFFF */ andi $t3, $t0, 0xffff +/* 0CBB78 800CAF78 0161C825 */ or $t9, $t3, $at +/* 0CBB7C 800CAF7C AF190000 */ sw $t9, ($t8) +/* 0CBB80 800CAF80 8FAE0048 */ lw $t6, 0x48($sp) +/* 0CBB84 800CAF84 8FAB0030 */ lw $t3, 0x30($sp) +/* 0CBB88 800CAF88 85CA0026 */ lh $t2, 0x26($t6) +/* 0CBB8C 800CAF8C 95CC0024 */ lhu $t4, 0x24($t6) +/* 0CBB90 800CAF90 314FFFFF */ andi $t7, $t2, 0xffff +/* 0CBB94 800CAF94 000F6C00 */ sll $t5, $t7, 0x10 +/* 0CBB98 800CAF98 3189FFFF */ andi $t1, $t4, 0xffff +/* 0CBB9C 800CAF9C 01A94025 */ or $t0, $t5, $t1 +/* 0CBBA0 800CAFA0 AD680004 */ sw $t0, 4($t3) +/* 0CBBA4 800CAFA4 8FB9004C */ lw $t9, 0x4c($sp) +/* 0CBBA8 800CAFA8 00000000 */ nop +/* 0CBBAC 800CAFAC 27380008 */ addiu $t8, $t9, 8 +/* 0CBBB0 800CAFB0 AFB8004C */ sw $t8, 0x4c($sp) +/* 0CBBB4 800CAFB4 AFB9002C */ sw $t9, 0x2c($sp) +/* 0CBBB8 800CAFB8 8FAA0048 */ lw $t2, 0x48($sp) +/* 0CBBBC 800CAFBC 8FAD002C */ lw $t5, 0x2c($sp) +/* 0CBBC0 800CAFC0 854F002E */ lh $t7, 0x2e($t2) +/* 0CBBC4 800CAFC4 3C010900 */ lui $at, 0x900 +/* 0CBBC8 800CAFC8 31EEFFFF */ andi $t6, $t7, 0xffff +/* 0CBBCC 800CAFCC 01C16025 */ or $t4, $t6, $at +/* 0CBBD0 800CAFD0 ADAC0000 */ sw $t4, ($t5) +/* 0CBBD4 800CAFD4 8FA90048 */ lw $t1, 0x48($sp) +/* 0CBBD8 800CAFD8 8FAE002C */ lw $t6, 0x2c($sp) +/* 0CBBDC 800CAFDC 8528002C */ lh $t0, 0x2c($t1) +/* 0CBBE0 800CAFE0 9538002A */ lhu $t8, 0x2a($t1) +/* 0CBBE4 800CAFE4 310BFFFF */ andi $t3, $t0, 0xffff +/* 0CBBE8 800CAFE8 000BCC00 */ sll $t9, $t3, 0x10 +/* 0CBBEC 800CAFEC 330AFFFF */ andi $t2, $t8, 0xffff +/* 0CBBF0 800CAFF0 032A7825 */ or $t7, $t9, $t2 +/* 0CBBF4 800CAFF4 ADCF0004 */ sw $t7, 4($t6) +/* 0CBBF8 800CAFF8 8FAC004C */ lw $t4, 0x4c($sp) +/* 0CBBFC 800CAFFC 00000000 */ nop +/* 0CBC00 800CB000 258D0008 */ addiu $t5, $t4, 8 +/* 0CBC04 800CB004 AFAD004C */ sw $t5, 0x4c($sp) +/* 0CBC08 800CB008 AFAC0028 */ sw $t4, 0x28($sp) +/* 0CBC0C 800CB00C 8FA80048 */ lw $t0, 0x48($sp) +/* 0CBC10 800CB010 8FB90028 */ lw $t9, 0x28($sp) +/* 0CBC14 800CB014 850B0020 */ lh $t3, 0x20($t0) +/* 0CBC18 800CB018 3C010908 */ lui $at, 0x908 +/* 0CBC1C 800CB01C 3169FFFF */ andi $t1, $t3, 0xffff +/* 0CBC20 800CB020 0121C025 */ or $t8, $t1, $at +/* 0CBC24 800CB024 AF380000 */ sw $t8, ($t9) +/* 0CBC28 800CB028 8FAA0048 */ lw $t2, 0x48($sp) +/* 0CBC2C 800CB02C 8FAC0028 */ lw $t4, 0x28($sp) +/* 0CBC30 800CB030 854F0022 */ lh $t7, 0x22($t2) +/* 0CBC34 800CB034 00000000 */ nop +/* 0CBC38 800CB038 31EEFFFF */ andi $t6, $t7, 0xffff +/* 0CBC3C 800CB03C AD8E0004 */ sw $t6, 4($t4) +/* 0CBC40 800CB040 8FAD004C */ lw $t5, 0x4c($sp) +/* 0CBC44 800CB044 00000000 */ nop +/* 0CBC48 800CB048 25A80008 */ addiu $t0, $t5, 8 +/* 0CBC4C 800CB04C AFA8004C */ sw $t0, 0x4c($sp) +/* 0CBC50 800CB050 AFAD0024 */ sw $t5, 0x24($sp) +/* 0CBC54 800CB054 8FA90024 */ lw $t1, 0x24($sp) +/* 0CBC58 800CB058 3C0B0309 */ lui $t3, 0x309 +/* 0CBC5C 800CB05C AD2B0000 */ sw $t3, ($t1) +/* 0CBC60 800CB060 8FB80048 */ lw $t8, 0x48($sp) +/* 0CBC64 800CB064 00000000 */ nop +/* 0CBC68 800CB068 8F040014 */ lw $a0, 0x14($t8) +/* 0CBC6C 800CB06C 0C03233C */ jal func_800C8CF0 +/* 0CBC70 800CB070 00000000 */ nop +/* 0CBC74 800CB074 8FB90024 */ lw $t9, 0x24($sp) +/* 0CBC78 800CB078 00000000 */ nop +/* 0CBC7C 800CB07C AF220004 */ sw $v0, 4($t9) +/* 0CBC80 800CB080 10000011 */ b .L800CB0C8 +/* 0CBC84 800CB084 00000000 */ nop +.L800CB088: +/* 0CBC88 800CB088 8FAA004C */ lw $t2, 0x4c($sp) +/* 0CBC8C 800CB08C 00000000 */ nop +/* 0CBC90 800CB090 254F0008 */ addiu $t7, $t2, 8 +/* 0CBC94 800CB094 AFAF004C */ sw $t7, 0x4c($sp) +/* 0CBC98 800CB098 AFAA0020 */ sw $t2, 0x20($sp) +/* 0CBC9C 800CB09C 8FAC0020 */ lw $t4, 0x20($sp) +/* 0CBCA0 800CB0A0 3C0E0308 */ lui $t6, 0x308 +/* 0CBCA4 800CB0A4 AD8E0000 */ sw $t6, ($t4) +/* 0CBCA8 800CB0A8 8FAD0048 */ lw $t5, 0x48($sp) +/* 0CBCAC 800CB0AC 00000000 */ nop +/* 0CBCB0 800CB0B0 8DA40014 */ lw $a0, 0x14($t5) +/* 0CBCB4 800CB0B4 0C03233C */ jal func_800C8CF0 +/* 0CBCB8 800CB0B8 00000000 */ nop +/* 0CBCBC 800CB0BC 8FA80020 */ lw $t0, 0x20($sp) +/* 0CBCC0 800CB0C0 00000000 */ nop +/* 0CBCC4 800CB0C4 AD020004 */ sw $v0, 4($t0) +.L800CB0C8: +/* 0CBCC8 800CB0C8 8FAB0054 */ lw $t3, 0x54($sp) +/* 0CBCCC 800CB0CC 8FB8005C */ lw $t8, 0x5c($sp) +/* 0CBCD0 800CB0D0 85690000 */ lh $t1, ($t3) +/* 0CBCD4 800CB0D4 0018C840 */ sll $t9, $t8, 1 +/* 0CBCD8 800CB0D8 01395021 */ addu $t2, $t1, $t9 +/* 0CBCDC 800CB0DC A56A0000 */ sh $t2, ($t3) +/* 0CBCE0 800CB0E0 8FA2004C */ lw $v0, 0x4c($sp) +/* 0CBCE4 800CB0E4 10000003 */ b .L800CB0F4 +/* 0CBCE8 800CB0E8 00000000 */ nop +/* 0CBCEC 800CB0EC 10000001 */ b .L800CB0F4 +/* 0CBCF0 800CB0F0 00000000 */ nop +.L800CB0F4: +/* 0CBCF4 800CB0F4 8FBF001C */ lw $ra, 0x1c($sp) +/* 0CBCF8 800CB0F8 27BD0050 */ addiu $sp, $sp, 0x50 +/* 0CBCFC 800CB0FC 03E00008 */ jr $ra +/* 0CBD00 800CB100 00000000 */ nop + +/* 0CBD04 800CB104 27BDFFF0 */ addiu $sp, $sp, -0x10 +/* 0CBD08 800CB108 ACC00000 */ sw $zero, ($a2) +/* 0CBD0C 800CB10C 44802800 */ mtc1 $zero, $f5 +/* 0CBD10 800CB110 44802000 */ mtc1 $zero, $f4 +/* 0CBD14 800CB114 00000000 */ nop +/* 0CBD18 800CB118 46246032 */ c.eq.d $f12, $f4 +/* 0CBD1C 800CB11C 00000000 */ nop +/* 0CBD20 800CB120 45000003 */ bc1f .L800CB130 +/* 0CBD24 800CB124 00000000 */ nop +/* 0CBD28 800CB128 10000055 */ b .L800CB280 +/* 0CBD2C 800CB12C 46206006 */ mov.d $f0, $f12 +.L800CB130: +/* 0CBD30 800CB130 44803800 */ mtc1 $zero, $f7 +/* 0CBD34 800CB134 44803000 */ mtc1 $zero, $f6 +/* 0CBD38 800CB138 00000000 */ nop +/* 0CBD3C 800CB13C 462C303C */ c.lt.d $f6, $f12 +/* 0CBD40 800CB140 00000000 */ nop +/* 0CBD44 800CB144 45000004 */ bc1f .L800CB158 +/* 0CBD48 800CB148 00000000 */ nop +/* 0CBD4C 800CB14C E7AD0008 */ swc1 $f13, 8($sp) +/* 0CBD50 800CB150 10000004 */ b .L800CB164 +/* 0CBD54 800CB154 E7AC000C */ swc1 $f12, 0xc($sp) +.L800CB158: +/* 0CBD58 800CB158 46206207 */ neg.d $f8, $f12 +/* 0CBD5C 800CB15C E7A8000C */ swc1 $f8, 0xc($sp) +/* 0CBD60 800CB160 E7A90008 */ swc1 $f9, 8($sp) +.L800CB164: +/* 0CBD64 800CB164 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 0CBD68 800CB168 44818800 */ mtc1 $at, $f17 +/* 0CBD6C 800CB16C C7AB0008 */ lwc1 $f11, 8($sp) +/* 0CBD70 800CB170 C7AA000C */ lwc1 $f10, 0xc($sp) +/* 0CBD74 800CB174 44808000 */ mtc1 $zero, $f16 +/* 0CBD78 800CB178 00000000 */ nop +/* 0CBD7C 800CB17C 462A803E */ c.le.d $f16, $f10 +/* 0CBD80 800CB180 00000000 */ nop +/* 0CBD84 800CB184 45000013 */ bc1f .L800CB1D4 +/* 0CBD88 800CB188 00000000 */ nop +.L800CB18C: +/* 0CBD8C 800CB18C 8CCE0000 */ lw $t6, ($a2) +/* 0CBD90 800CB190 00000000 */ nop +/* 0CBD94 800CB194 25CF0001 */ addiu $t7, $t6, 1 +/* 0CBD98 800CB198 ACCF0000 */ sw $t7, ($a2) +/* 0CBD9C 800CB19C 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 0CBDA0 800CB1A0 44812800 */ mtc1 $at, $f5 +/* 0CBDA4 800CB1A4 C7B30008 */ lwc1 $f19, 8($sp) +/* 0CBDA8 800CB1A8 C7B2000C */ lwc1 $f18, 0xc($sp) +/* 0CBDAC 800CB1AC 44802000 */ mtc1 $zero, $f4 +/* 0CBDB0 800CB1B0 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 0CBDB4 800CB1B4 46249182 */ mul.d $f6, $f18, $f4 +/* 0CBDB8 800CB1B8 44814800 */ mtc1 $at, $f9 +/* 0CBDBC 800CB1BC 44804000 */ mtc1 $zero, $f8 +/* 0CBDC0 800CB1C0 00000000 */ nop +/* 0CBDC4 800CB1C4 4626403E */ c.le.d $f8, $f6 +/* 0CBDC8 800CB1C8 E7A6000C */ swc1 $f6, 0xc($sp) +/* 0CBDCC 800CB1CC 4501FFEF */ bc1t .L800CB18C +/* 0CBDD0 800CB1D0 E7A70008 */ swc1 $f7, 8($sp) +.L800CB1D4: +/* 0CBDD4 800CB1D4 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 0CBDD8 800CB1D8 44818800 */ mtc1 $at, $f17 +/* 0CBDDC 800CB1DC C7AB0008 */ lwc1 $f11, 8($sp) +/* 0CBDE0 800CB1E0 C7AA000C */ lwc1 $f10, 0xc($sp) +/* 0CBDE4 800CB1E4 44808000 */ mtc1 $zero, $f16 +/* 0CBDE8 800CB1E8 00000000 */ nop +/* 0CBDEC 800CB1EC 4630503C */ c.lt.d $f10, $f16 +/* 0CBDF0 800CB1F0 00000000 */ nop +/* 0CBDF4 800CB1F4 4500000F */ bc1f .L800CB234 +/* 0CBDF8 800CB1F8 00000000 */ nop +.L800CB1FC: +/* 0CBDFC 800CB1FC 8CD80000 */ lw $t8, ($a2) +/* 0CBE00 800CB200 00000000 */ nop +/* 0CBE04 800CB204 2719FFFF */ addiu $t9, $t8, -1 +/* 0CBE08 800CB208 ACD90000 */ sw $t9, ($a2) +/* 0CBE0C 800CB20C C7B30008 */ lwc1 $f19, 8($sp) +/* 0CBE10 800CB210 C7B2000C */ lwc1 $f18, 0xc($sp) +/* 0CBE14 800CB214 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 0CBE18 800CB218 44813800 */ mtc1 $at, $f7 +/* 0CBE1C 800CB21C 44803000 */ mtc1 $zero, $f6 +/* 0CBE20 800CB220 46329100 */ add.d $f4, $f18, $f18 +/* 0CBE24 800CB224 4626203C */ c.lt.d $f4, $f6 +/* 0CBE28 800CB228 E7A4000C */ swc1 $f4, 0xc($sp) +/* 0CBE2C 800CB22C 4501FFF3 */ bc1t .L800CB1FC +/* 0CBE30 800CB230 E7A50008 */ swc1 $f5, 8($sp) +.L800CB234: +/* 0CBE34 800CB234 44804800 */ mtc1 $zero, $f9 +/* 0CBE38 800CB238 44804000 */ mtc1 $zero, $f8 +/* 0CBE3C 800CB23C 00000000 */ nop +/* 0CBE40 800CB240 462C403C */ c.lt.d $f8, $f12 +/* 0CBE44 800CB244 00000000 */ nop +/* 0CBE48 800CB248 45000005 */ bc1f .L800CB260 +/* 0CBE4C 800CB24C 00000000 */ nop +/* 0CBE50 800CB250 C7AF0008 */ lwc1 $f15, 8($sp) +/* 0CBE54 800CB254 C7AE000C */ lwc1 $f14, 0xc($sp) +/* 0CBE58 800CB258 10000005 */ b .L800CB270 +/* 0CBE5C 800CB25C 00000000 */ nop +.L800CB260: +/* 0CBE60 800CB260 C7AF0008 */ lwc1 $f15, 8($sp) +/* 0CBE64 800CB264 C7AE000C */ lwc1 $f14, 0xc($sp) +/* 0CBE68 800CB268 00000000 */ nop +/* 0CBE6C 800CB26C 46207387 */ neg.d $f14, $f14 +.L800CB270: +/* 0CBE70 800CB270 10000003 */ b .L800CB280 +/* 0CBE74 800CB274 46207006 */ mov.d $f0, $f14 +/* 0CBE78 800CB278 10000001 */ b .L800CB280 +/* 0CBE7C 800CB27C 00000000 */ nop +.L800CB280: +/* 0CBE80 800CB280 03E00008 */ jr $ra +/* 0CBE84 800CB284 27BD0010 */ addiu $sp, $sp, 0x10 + +/* 0CBE88 800CB288 27BDFFF8 */ addiu $sp, $sp, -8 +/* 0CBE8C 800CB28C 10C0000B */ beqz $a2, .L800CB2BC +/* 0CBE90 800CB290 00000000 */ nop +/* 0CBE94 800CB294 240E0001 */ li $t6, 1 +/* 0CBE98 800CB298 00CE7804 */ sllv $t7, $t6, $a2 +/* 0CBE9C 800CB29C AFAF0004 */ sw $t7, 4($sp) +/* 0CBEA0 800CB2A0 8FB80004 */ lw $t8, 4($sp) +/* 0CBEA4 800CB2A4 00000000 */ nop +/* 0CBEA8 800CB2A8 44982000 */ mtc1 $t8, $f4 +/* 0CBEAC 800CB2AC 00000000 */ nop +/* 0CBEB0 800CB2B0 468021A1 */ cvt.d.w $f6, $f4 +/* 0CBEB4 800CB2B4 46266302 */ mul.d $f12, $f12, $f6 +/* 0CBEB8 800CB2B8 00000000 */ nop +.L800CB2BC: +/* 0CBEBC 800CB2BC 10000003 */ b .L800CB2CC +/* 0CBEC0 800CB2C0 46206006 */ mov.d $f0, $f12 +/* 0CBEC4 800CB2C4 10000001 */ b .L800CB2CC +/* 0CBEC8 800CB2C8 00000000 */ nop +.L800CB2CC: +/* 0CBECC 800CB2CC 03E00008 */ jr $ra +/* 0CBED0 800CB2D0 27BD0008 */ addiu $sp, $sp, 8 + diff --git a/asm/non_matchings/unknown_0CA9A0/func_800CB2D4.s b/asm/non_matchings/unknown_0CA9A0/func_800CB2D4.s new file mode 100644 index 00000000..1d6e1baa --- /dev/null +++ b/asm/non_matchings/unknown_0CA9A0/func_800CB2D4.s @@ -0,0 +1,119 @@ +glabel func_800CB2D4 +/* 0CBED4 800CB2D4 27BDFFF0 */ addiu $sp, $sp, -0x10 +/* 0CBED8 800CB2D8 8FAE0020 */ lw $t6, 0x20($sp) +/* 0CBEDC 800CB2DC 00000000 */ nop +/* 0CBEE0 800CB2E0 15C00011 */ bnez $t6, .L800CB328 +/* 0CBEE4 800CB2E4 00000000 */ nop +/* 0CBEE8 800CB2E8 462E603E */ c.le.d $f12, $f14 +/* 0CBEEC 800CB2EC 00000000 */ nop +/* 0CBEF0 800CB2F0 45000008 */ bc1f .L800CB314 +/* 0CBEF4 800CB2F4 00000000 */ nop +/* 0CBEF8 800CB2F8 8FB80024 */ lw $t8, 0x24($sp) +/* 0CBEFC 800CB2FC 340FFFFF */ li $t7, 65535 +/* 0CBF00 800CB300 A70F0000 */ sh $t7, ($t8) +/* 0CBF04 800CB304 10000062 */ b .L800CB490 +/* 0CBF08 800CB308 24027FFF */ li $v0, 32767 +/* 0CBF0C 800CB30C 10000006 */ b .L800CB328 +/* 0CBF10 800CB310 00000000 */ nop +.L800CB314: +/* 0CBF14 800CB314 8FB90024 */ lw $t9, 0x24($sp) +/* 0CBF18 800CB318 00000000 */ nop +/* 0CBF1C 800CB31C A7200000 */ sh $zero, ($t9) +/* 0CBF20 800CB320 1000005B */ b .L800CB490 +/* 0CBF24 800CB324 24028000 */ li $v0, -32768 +.L800CB328: +/* 0CBF28 800CB328 8FA80020 */ lw $t0, 0x20($sp) +/* 0CBF2C 800CB32C 462C7101 */ sub.d $f4, $f14, $f12 +/* 0CBF30 800CB330 44883000 */ mtc1 $t0, $f6 +/* 0CBF34 800CB334 00000000 */ nop +/* 0CBF38 800CB338 46803220 */ cvt.s.w $f8, $f6 +/* 0CBF3C 800CB33C 460042A1 */ cvt.d.s $f10, $f8 +/* 0CBF40 800CB340 00000000 */ nop +/* 0CBF44 800CB344 462A2403 */ div.d $f16, $f4, $f10 +/* 0CBF48 800CB348 E7B00004 */ swc1 $f16, 4($sp) +/* 0CBF4C 800CB34C E7B10000 */ swc1 $f17, ($sp) +/* 0CBF50 800CB350 3C014020 */ li $at, 0x40200000 # 2.500000 +/* 0CBF54 800CB354 44813800 */ mtc1 $at, $f7 +/* 0CBF58 800CB358 C7B30000 */ lwc1 $f19, ($sp) +/* 0CBF5C 800CB35C C7B20004 */ lwc1 $f18, 4($sp) +/* 0CBF60 800CB360 44803000 */ mtc1 $zero, $f6 +/* 0CBF64 800CB364 00000000 */ nop +/* 0CBF68 800CB368 46269202 */ mul.d $f8, $f18, $f6 +/* 0CBF6C 800CB36C E7A80004 */ swc1 $f8, 4($sp) +/* 0CBF70 800CB370 E7A90000 */ swc1 $f9, ($sp) +/* 0CBF74 800CB374 C7A50000 */ lwc1 $f5, ($sp) +/* 0CBF78 800CB378 C7A40004 */ lwc1 $f4, 4($sp) +/* 0CBF7C 800CB37C 44805800 */ mtc1 $zero, $f11 +/* 0CBF80 800CB380 44805000 */ mtc1 $zero, $f10 +/* 0CBF84 800CB384 00000000 */ nop +/* 0CBF88 800CB388 462A203C */ c.lt.d $f4, $f10 +/* 0CBF8C 800CB38C 00000000 */ nop +/* 0CBF90 800CB390 4500000A */ bc1f .L800CB3BC +/* 0CBF94 800CB394 00000000 */ nop +/* 0CBF98 800CB398 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 0CBF9C 800CB39C 44819800 */ mtc1 $at, $f19 +/* 0CBFA0 800CB3A0 C7B10000 */ lwc1 $f17, ($sp) +/* 0CBFA4 800CB3A4 C7B00004 */ lwc1 $f16, 4($sp) +/* 0CBFA8 800CB3A8 44809000 */ mtc1 $zero, $f18 +/* 0CBFAC 800CB3AC 00000000 */ nop +/* 0CBFB0 800CB3B0 46328181 */ sub.d $f6, $f16, $f18 +/* 0CBFB4 800CB3B4 E7A60004 */ swc1 $f6, 4($sp) +/* 0CBFB8 800CB3B8 E7A70000 */ swc1 $f7, ($sp) +.L800CB3BC: +/* 0CBFBC 800CB3BC 4449F800 */ cfc1 $t1, $31 +/* 0CBFC0 800CB3C0 C7A90000 */ lwc1 $f9, ($sp) +/* 0CBFC4 800CB3C4 35210003 */ ori $at, $t1, 3 +/* 0CBFC8 800CB3C8 38210002 */ xori $at, $at, 2 +/* 0CBFCC 800CB3CC 44C1F800 */ ctc1 $at, $31 +/* 0CBFD0 800CB3D0 C7A80004 */ lwc1 $f8, 4($sp) +/* 0CBFD4 800CB3D4 00000000 */ nop +/* 0CBFD8 800CB3D8 46204124 */ cvt.w.d $f4, $f8 +/* 0CBFDC 800CB3DC 440A2000 */ mfc1 $t2, $f4 +/* 0CBFE0 800CB3E0 44C9F800 */ ctc1 $t1, $31 +/* 0CBFE4 800CB3E4 A7AA000E */ sh $t2, 0xe($sp) +/* 0CBFE8 800CB3E8 00000000 */ nop +/* 0CBFEC 800CB3EC 87AB000E */ lh $t3, 0xe($sp) +/* 0CBFF0 800CB3F0 C7AB0000 */ lwc1 $f11, ($sp) +/* 0CBFF4 800CB3F4 448B8000 */ mtc1 $t3, $f16 +/* 0CBFF8 800CB3F8 C7AA0004 */ lwc1 $f10, 4($sp) +/* 0CBFFC 800CB3FC 468084A0 */ cvt.s.w $f18, $f16 +/* 0CC000 800CB400 3C01800F */ lui $at, %hi(D_800E95FC) # $at, 0x800f +/* 0CC004 800CB404 C42595F8 */ lwc1 $f5, %lo(D_800E95F8)($at) +/* 0CC008 800CB408 460091A1 */ cvt.d.s $f6, $f18 +/* 0CC00C 800CB40C C42495FC */ lwc1 $f4, %lo(D_800E95FC)($at) +/* 0CC010 800CB410 46265201 */ sub.d $f8, $f10, $f6 +/* 0CC014 800CB414 8FB80024 */ lw $t8, 0x24($sp) +/* 0CC018 800CB418 46244402 */ mul.d $f16, $f8, $f4 +/* 0CC01C 800CB41C 444CF800 */ cfc1 $t4, $31 +/* 0CC020 800CB420 00000000 */ nop +/* 0CC024 800CB424 35810003 */ ori $at, $t4, 3 +/* 0CC028 800CB428 38210002 */ xori $at, $at, 2 +/* 0CC02C 800CB42C 44C1F800 */ ctc1 $at, $31 +/* 0CC030 800CB430 00000000 */ nop +/* 0CC034 800CB434 462084A4 */ cvt.w.d $f18, $f16 +/* 0CC038 800CB438 440D9000 */ mfc1 $t5, $f18 +/* 0CC03C 800CB43C 44CCF800 */ ctc1 $t4, $31 +/* 0CC040 800CB440 000D7400 */ sll $t6, $t5, 0x10 +/* 0CC044 800CB444 000E7C03 */ sra $t7, $t6, 0x10 +/* 0CC048 800CB448 A70F0000 */ sh $t7, ($t8) +/* 0CC04C 800CB44C 4459F800 */ cfc1 $t9, $31 +/* 0CC050 800CB450 C7AB0000 */ lwc1 $f11, ($sp) +/* 0CC054 800CB454 37210003 */ ori $at, $t9, 3 +/* 0CC058 800CB458 38210002 */ xori $at, $at, 2 +/* 0CC05C 800CB45C 44C1F800 */ ctc1 $at, $31 +/* 0CC060 800CB460 C7AA0004 */ lwc1 $f10, 4($sp) +/* 0CC064 800CB464 00000000 */ nop +/* 0CC068 800CB468 462051A4 */ cvt.w.d $f6, $f10 +/* 0CC06C 800CB46C 44023000 */ mfc1 $v0, $f6 +/* 0CC070 800CB470 44D9F800 */ ctc1 $t9, $31 +/* 0CC074 800CB474 00024400 */ sll $t0, $v0, 0x10 +/* 0CC078 800CB478 01001025 */ move $v0, $t0 +/* 0CC07C 800CB47C 00024C03 */ sra $t1, $v0, 0x10 +/* 0CC080 800CB480 10000003 */ b .L800CB490 +/* 0CC084 800CB484 01201025 */ move $v0, $t1 +/* 0CC088 800CB488 10000001 */ b .L800CB490 +/* 0CC08C 800CB48C 00000000 */ nop +.L800CB490: +/* 0CC090 800CB490 03E00008 */ jr $ra +/* 0CC094 800CB494 27BD0010 */ addiu $sp, $sp, 0x10 + diff --git a/asm/non_matchings/unknown_0CA9A0/func_800CB498.s b/asm/non_matchings/unknown_0CA9A0/func_800CB498.s new file mode 100644 index 00000000..87b52079 --- /dev/null +++ b/asm/non_matchings/unknown_0CA9A0/func_800CB498.s @@ -0,0 +1,46 @@ +glabel func_800CB498 +/* 0CC098 800CB498 00063400 */ sll $a2, $a2, 0x10 +/* 0CC09C 800CB49C 00063403 */ sra $a2, $a2, 0x10 +/* 0CC0A0 800CB4A0 27BDFFF8 */ addiu $sp, $sp, -8 +/* 0CC0A4 800CB4A4 30E7FFFF */ andi $a3, $a3, 0xffff +/* 0CC0A8 800CB4A8 00067400 */ sll $t6, $a2, 0x10 +/* 0CC0AC 800CB4AC 448E2000 */ mtc1 $t6, $f4 +/* 0CC0B0 800CB4B0 44874000 */ mtc1 $a3, $f8 +/* 0CC0B4 800CB4B4 468021A0 */ cvt.s.w $f6, $f4 +/* 0CC0B8 800CB4B8 04E10005 */ bgez $a3, .L800CB4D0 +/* 0CC0BC 800CB4BC 468042A0 */ cvt.s.w $f10, $f8 +/* 0CC0C0 800CB4C0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0CC0C4 800CB4C4 44818000 */ mtc1 $at, $f16 +/* 0CC0C8 800CB4C8 00000000 */ nop +/* 0CC0CC 800CB4CC 46105280 */ add.s $f10, $f10, $f16 +.L800CB4D0: +/* 0CC0D0 800CB4D0 460A3480 */ add.s $f18, $f6, $f10 +/* 0CC0D4 800CB4D4 3C0140F0 */ li $at, 0x40F00000 # 7.500000 +/* 0CC0D8 800CB4D8 44814800 */ mtc1 $at, $f9 +/* 0CC0DC 800CB4DC 44804000 */ mtc1 $zero, $f8 +/* 0CC0E0 800CB4E0 46009121 */ cvt.d.s $f4, $f18 +/* 0CC0E4 800CB4E4 00000000 */ nop +/* 0CC0E8 800CB4E8 46282403 */ div.d $f16, $f4, $f8 +/* 0CC0EC 800CB4EC 462081A0 */ cvt.s.d $f6, $f16 +/* 0CC0F0 800CB4F0 E7A60004 */ swc1 $f6, 4($sp) +/* 0CC0F4 800CB4F4 44859000 */ mtc1 $a1, $f18 +/* 0CC0F8 800CB4F8 C7AA0004 */ lwc1 $f10, 4($sp) +/* 0CC0FC 800CB4FC 46809120 */ cvt.s.w $f4, $f18 +/* 0CC100 800CB500 3C014020 */ li $at, 0x40200000 # 2.500000 +/* 0CC104 800CB504 44813800 */ mtc1 $at, $f7 +/* 0CC108 800CB508 46045202 */ mul.s $f8, $f10, $f4 +/* 0CC10C 800CB50C 44803000 */ mtc1 $zero, $f6 +/* 0CC110 800CB510 460062A1 */ cvt.d.s $f10, $f12 +/* 0CC114 800CB514 46004421 */ cvt.d.s $f16, $f8 +/* 0CC118 800CB518 00000000 */ nop +/* 0CC11C 800CB51C 46268483 */ div.d $f18, $f16, $f6 +/* 0CC120 800CB520 46325100 */ add.d $f4, $f10, $f18 +/* 0CC124 800CB524 46202320 */ cvt.s.d $f12, $f4 +/* 0CC128 800CB528 10000003 */ b .L800CB538 +/* 0CC12C 800CB52C 46006006 */ mov.s $f0, $f12 +/* 0CC130 800CB530 10000001 */ b .L800CB538 +/* 0CC134 800CB534 00000000 */ nop +.L800CB538: +/* 0CC138 800CB538 03E00008 */ jr $ra +/* 0CC13C 800CB53C 27BD0008 */ addiu $sp, $sp, 8 + diff --git a/asm/non_matchings/unknown_0CA9A0/func_800CBAC0.s b/asm/non_matchings/unknown_0CA9A0/func_800CBAC0.s new file mode 100644 index 00000000..f032c953 --- /dev/null +++ b/asm/non_matchings/unknown_0CA9A0/func_800CBAC0.s @@ -0,0 +1,80 @@ +glabel func_800CBAC0 +/* 0CC6C0 800CBAC0 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0CC6C4 800CBAC4 AFB3002C */ sw $s3, 0x2c($sp) +/* 0CC6C8 800CBAC8 AFB50028 */ sw $s5, 0x28($sp) +/* 0CC6CC 800CBACC 00137400 */ sll $t6, $s3, 0x10 +/* 0CC6D0 800CBAD0 0015C400 */ sll $t8, $s5, 0x10 +/* 0CC6D4 800CBAD4 0018AC03 */ sra $s5, $t8, 0x10 +/* 0CC6D8 800CBAD8 000E9C03 */ sra $s3, $t6, 0x10 +/* 0CC6DC 800CBADC 1A20001A */ blez $s1, .L800CBB48 +/* 0CC6E0 800CBAE0 AFBF0014 */ sw $ra, 0x14($sp) +/* 0CC6E4 800CBAE4 8E590030 */ lw $t9, 0x30($s2) +/* 0CC6E8 800CBAE8 8E440044 */ lw $a0, 0x44($s2) +/* 0CC6EC 800CBAEC 02202825 */ move $a1, $s1 +/* 0CC6F0 800CBAF0 0320F809 */ jalr $t9 +/* 0CC6F4 800CBAF4 8E460034 */ lw $a2, 0x34($s2) +/* 0CC6F8 800CBAF8 30460007 */ andi $a2, $v0, 7 +/* 0CC6FC 800CBAFC 02268821 */ addu $s1, $s1, $a2 +/* 0CC700 800CBB00 326EFFFF */ andi $t6, $s3, 0xffff +/* 0CC704 800CBB04 3C010800 */ lui $at, 0x800 +/* 0CC708 800CBB08 01C17825 */ or $t7, $t6, $at +/* 0CC70C 800CBB0C 32380007 */ andi $t8, $s1, 7 +/* 0CC710 800CBB10 02002025 */ move $a0, $s0 +/* 0CC714 800CBB14 0238C823 */ subu $t9, $s1, $t8 +/* 0CC718 800CBB18 272E0008 */ addiu $t6, $t9, 8 +/* 0CC71C 800CBB1C AC8F0000 */ sw $t7, ($a0) +/* 0CC720 800CBB20 26100008 */ addiu $s0, $s0, 8 +/* 0CC724 800CBB24 31CFFFFF */ andi $t7, $t6, 0xffff +/* 0CC728 800CBB28 02002825 */ move $a1, $s0 +/* 0CC72C 800CBB2C AC8F0004 */ sw $t7, 4($a0) +/* 0CC730 800CBB30 0046C823 */ subu $t9, $v0, $a2 +/* 0CC734 800CBB34 3C180400 */ lui $t8, 0x400 +/* 0CC738 800CBB38 ACB80000 */ sw $t8, ($a1) +/* 0CC73C 800CBB3C ACB90004 */ sw $t9, 4($a1) +/* 0CC740 800CBB40 10000002 */ b .L800CBB4C +/* 0CC744 800CBB44 26100008 */ addiu $s0, $s0, 8 +.L800CBB48: +/* 0CC748 800CBB48 00003025 */ move $a2, $zero +.L800CBB4C: +/* 0CC74C 800CBB4C 328E0002 */ andi $t6, $s4, 2 +/* 0CC750 800CBB50 11C00009 */ beqz $t6, .L800CBB78 +/* 0CC754 800CBB54 02001025 */ move $v0, $s0 +/* 0CC758 800CBB58 3C0F0F00 */ lui $t7, 0xf00 +/* 0CC75C 800CBB5C AC4F0000 */ sw $t7, ($v0) +/* 0CC760 800CBB60 8E580018 */ lw $t8, 0x18($s2) +/* 0CC764 800CBB64 3C011FFF */ lui $at, (0x1FFFFFFF >> 16) # lui $at, 0x1fff +/* 0CC768 800CBB68 3421FFFF */ ori $at, (0x1FFFFFFF & 0xFFFF) # ori $at, $at, 0xffff +/* 0CC76C 800CBB6C 0301C824 */ and $t9, $t8, $at +/* 0CC770 800CBB70 AC590004 */ sw $t9, 4($v0) +/* 0CC774 800CBB74 26100008 */ addiu $s0, $s0, 8 +.L800CBB78: +/* 0CC778 800CBB78 02667021 */ addu $t6, $s3, $a2 +/* 0CC77C 800CBB7C 31CFFFFF */ andi $t7, $t6, 0xffff +/* 0CC780 800CBB80 3C010800 */ lui $at, 0x800 +/* 0CC784 800CBB84 01E1C025 */ or $t8, $t7, $at +/* 0CC788 800CBB88 02001825 */ move $v1, $s0 +/* 0CC78C 800CBB8C AC780000 */ sw $t8, ($v1) +/* 0CC790 800CBB90 00167840 */ sll $t7, $s6, 1 +/* 0CC794 800CBB94 31F8FFFF */ andi $t8, $t7, 0xffff +/* 0CC798 800CBB98 00157400 */ sll $t6, $s5, 0x10 +/* 0CC79C 800CBB9C 01D8C825 */ or $t9, $t6, $t8 +/* 0CC7A0 800CBBA0 328F00FF */ andi $t7, $s4, 0xff +/* 0CC7A4 800CBBA4 26100008 */ addiu $s0, $s0, 8 +/* 0CC7A8 800CBBA8 000F7400 */ sll $t6, $t7, 0x10 +/* 0CC7AC 800CBBAC 3C010100 */ lui $at, 0x100 +/* 0CC7B0 800CBBB0 AC790004 */ sw $t9, 4($v1) +/* 0CC7B4 800CBBB4 01C1C025 */ or $t8, $t6, $at +/* 0CC7B8 800CBBB8 02002025 */ move $a0, $s0 +/* 0CC7BC 800CBBBC AC980000 */ sw $t8, ($a0) +/* 0CC7C0 800CBBC0 8E590014 */ lw $t9, 0x14($s2) +/* 0CC7C4 800CBBC4 3C011FFF */ lui $at, (0x1FFFFFFF >> 16) # lui $at, 0x1fff +/* 0CC7C8 800CBBC8 3421FFFF */ ori $at, (0x1FFFFFFF & 0xFFFF) # ori $at, $at, 0xffff +/* 0CC7CC 800CBBCC 03217824 */ and $t7, $t9, $at +/* 0CC7D0 800CBBD0 AC8F0004 */ sw $t7, 4($a0) +/* 0CC7D4 800CBBD4 AE400040 */ sw $zero, 0x40($s2) +/* 0CC7D8 800CBBD8 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CC7DC 800CBBDC 26100008 */ addiu $s0, $s0, 8 +/* 0CC7E0 800CBBE0 02001025 */ move $v0, $s0 +/* 0CC7E4 800CBBE4 03E00008 */ jr $ra +/* 0CC7E8 800CBBE8 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_0CCF90/D_800CC390.s b/asm/non_matchings/unknown_0CCF90/D_800CC390.s new file mode 100644 index 00000000..c59eedd0 --- /dev/null +++ b/asm/non_matchings/unknown_0CCF90/D_800CC390.s @@ -0,0 +1,15 @@ +glabel D_800CC390 +/* 0CCF90 800CC390 24010002 */ li $at, 2 +/* 0CCF94 800CC394 14A10008 */ bne $a1, $at, .L800CC3B8 +/* 0CCF98 800CC398 8C82001C */ lw $v0, 0x1c($a0) +/* 0CCF9C 800CC39C 8C8E0014 */ lw $t6, 0x14($a0) +/* 0CCFA0 800CC3A0 000E7880 */ sll $t7, $t6, 2 +/* 0CCFA4 800CC3A4 004FC021 */ addu $t8, $v0, $t7 +/* 0CCFA8 800CC3A8 AF060000 */ sw $a2, ($t8) +/* 0CCFAC 800CC3AC 8C990014 */ lw $t9, 0x14($a0) +/* 0CCFB0 800CC3B0 27280001 */ addiu $t0, $t9, 1 +/* 0CCFB4 800CC3B4 AC880014 */ sw $t0, 0x14($a0) +.L800CC3B8: +/* 0CCFB8 800CC3B8 03E00008 */ jr $ra +/* 0CCFBC 800CC3BC 00001025 */ move $v0, $zero + diff --git a/asm/non_matchings/unknown_0CCF90/D_800CC3C0.s b/asm/non_matchings/unknown_0CCF90/D_800CC3C0.s new file mode 100644 index 00000000..016018b3 --- /dev/null +++ b/asm/non_matchings/unknown_0CCF90/D_800CC3C0.s @@ -0,0 +1,76 @@ +glabel D_800CC3C0 +/* 0CCFC0 800CC3C0 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 0CCFC4 800CC3C4 8FA80058 */ lw $t0, 0x58($sp) +/* 0CCFC8 800CC3C8 AFBF0044 */ sw $ra, 0x44($sp) +/* 0CCFCC 800CC3CC AFBE0040 */ sw $fp, 0x40($sp) +/* 0CCFD0 800CC3D0 AFB7003C */ sw $s7, 0x3c($sp) +/* 0CCFD4 800CC3D4 AFB60038 */ sw $s6, 0x38($sp) +/* 0CCFD8 800CC3D8 AFB50034 */ sw $s5, 0x34($sp) +/* 0CCFDC 800CC3DC AFB40030 */ sw $s4, 0x30($sp) +/* 0CCFE0 800CC3E0 AFB3002C */ sw $s3, 0x2c($sp) +/* 0CCFE4 800CC3E4 AFB20028 */ sw $s2, 0x28($sp) +/* 0CCFE8 800CC3E8 AFB10024 */ sw $s1, 0x24($sp) +/* 0CCFEC 800CC3EC AFB00020 */ sw $s0, 0x20($sp) +/* 0CCFF0 800CC3F0 8C83001C */ lw $v1, 0x1c($a0) +/* 0CCFF4 800CC3F4 3C0E0200 */ lui $t6, (0x02000440 >> 16) # lui $t6, 0x200 +/* 0CCFF8 800CC3F8 00061040 */ sll $v0, $a2, 1 +/* 0CCFFC 800CC3FC 3C0F0200 */ lui $t7, (0x02000580 >> 16) # lui $t7, 0x200 +/* 0CD000 800CC400 35CE0440 */ ori $t6, (0x02000440 & 0xFFFF) # ori $t6, $t6, 0x440 +/* 0CD004 800CC404 35EF0580 */ ori $t7, (0x02000580 & 0xFFFF) # ori $t7, $t7, 0x580 +/* 0CD008 800CC408 AD0E0000 */ sw $t6, ($t0) +/* 0CD00C 800CC40C AD020004 */ sw $v0, 4($t0) +/* 0CD010 800CC410 AD0F0008 */ sw $t7, 8($t0) +/* 0CD014 800CC414 AD02000C */ sw $v0, 0xc($t0) +/* 0CD018 800CC418 8C980014 */ lw $t8, 0x14($a0) +/* 0CD01C 800CC41C 00C0A825 */ move $s5, $a2 +/* 0CD020 800CC420 00A0B825 */ move $s7, $a1 +/* 0CD024 800CC424 00E0F025 */ move $fp, $a3 +/* 0CD028 800CC428 0080A025 */ move $s4, $a0 +/* 0CD02C 800CC42C 00008025 */ move $s0, $zero +/* 0CD030 800CC430 1B00001E */ blez $t8, .L800CC4AC +/* 0CD034 800CC434 25130010 */ addiu $s3, $t0, 0x10 +/* 0CD038 800CC438 3C120C00 */ lui $s2, (0x0C007FFF >> 16) # lui $s2, 0xc00 +/* 0CD03C 800CC43C 36527FFF */ ori $s2, (0x0C007FFF & 0xFFFF) # ori $s2, $s2, 0x7fff +/* 0CD040 800CC440 00608825 */ move $s1, $v1 +/* 0CD044 800CC444 3056FFFF */ andi $s6, $v0, 0xffff +.L800CC448: +/* 0CD048 800CC448 8E240000 */ lw $a0, ($s1) +/* 0CD04C 800CC44C AFB30010 */ sw $s3, 0x10($sp) +/* 0CD050 800CC450 02E02825 */ move $a1, $s7 +/* 0CD054 800CC454 8C990004 */ lw $t9, 4($a0) +/* 0CD058 800CC458 02A03025 */ move $a2, $s5 +/* 0CD05C 800CC45C 03C03825 */ move $a3, $fp +/* 0CD060 800CC460 0320F809 */ jalr $t9 +/* 0CD064 800CC464 00000000 */ nop +/* 0CD068 800CC468 3C0A06C0 */ lui $t2, (0x06C00440 >> 16) # lui $t2, 0x6c0 +/* 0CD06C 800CC46C 3C0B0800 */ lui $t3, (0x08000580 >> 16) # lui $t3, 0x800 +/* 0CD070 800CC470 3C090800 */ lui $t1, 0x800 +/* 0CD074 800CC474 354A0440 */ ori $t2, (0x06C00440 & 0xFFFF) # ori $t2, $t2, 0x440 +/* 0CD078 800CC478 356B0580 */ ori $t3, (0x08000580 & 0xFFFF) # ori $t3, $t3, 0x580 +/* 0CD07C 800CC47C AC490000 */ sw $t1, ($v0) +/* 0CD080 800CC480 AC560004 */ sw $s6, 4($v0) +/* 0CD084 800CC484 AC4A000C */ sw $t2, 0xc($v0) +/* 0CD088 800CC488 AC520008 */ sw $s2, 8($v0) +/* 0CD08C 800CC48C AC4B0014 */ sw $t3, 0x14($v0) +/* 0CD090 800CC490 AC520010 */ sw $s2, 0x10($v0) +/* 0CD094 800CC494 8E8C0014 */ lw $t4, 0x14($s4) +/* 0CD098 800CC498 26100001 */ addiu $s0, $s0, 1 +/* 0CD09C 800CC49C 26310004 */ addiu $s1, $s1, 4 +/* 0CD0A0 800CC4A0 020C082A */ slt $at, $s0, $t4 +/* 0CD0A4 800CC4A4 1420FFE8 */ bnez $at, .L800CC448 +/* 0CD0A8 800CC4A8 24530018 */ addiu $s3, $v0, 0x18 +.L800CC4AC: +/* 0CD0AC 800CC4AC 8FBF0044 */ lw $ra, 0x44($sp) +/* 0CD0B0 800CC4B0 02601025 */ move $v0, $s3 +/* 0CD0B4 800CC4B4 8FB3002C */ lw $s3, 0x2c($sp) +/* 0CD0B8 800CC4B8 8FB00020 */ lw $s0, 0x20($sp) +/* 0CD0BC 800CC4BC 8FB10024 */ lw $s1, 0x24($sp) +/* 0CD0C0 800CC4C0 8FB20028 */ lw $s2, 0x28($sp) +/* 0CD0C4 800CC4C4 8FB40030 */ lw $s4, 0x30($sp) +/* 0CD0C8 800CC4C8 8FB50034 */ lw $s5, 0x34($sp) +/* 0CD0CC 800CC4CC 8FB60038 */ lw $s6, 0x38($sp) +/* 0CD0D0 800CC4D0 8FB7003C */ lw $s7, 0x3c($sp) +/* 0CD0D4 800CC4D4 8FBE0040 */ lw $fp, 0x40($sp) +/* 0CD0D8 800CC4D8 03E00008 */ jr $ra +/* 0CD0DC 800CC4DC 27BD0048 */ addiu $sp, $sp, 0x48 + diff --git a/asm/non_matchings/unknown_0CCF90/D_800CC4E0.s b/asm/non_matchings/unknown_0CCF90/D_800CC4E0.s new file mode 100644 index 00000000..231bafe1 --- /dev/null +++ b/asm/non_matchings/unknown_0CCF90/D_800CC4E0.s @@ -0,0 +1,19 @@ +glabel D_800CC4E0 +/* 0CD0E0 800CC4E0 24010001 */ li $at, 1 +/* 0CD0E4 800CC4E4 10A10006 */ beq $a1, $at, .L800CC500 +/* 0CD0E8 800CC4E8 00001025 */ move $v0, $zero +/* 0CD0EC 800CC4EC 24010006 */ li $at, 6 +/* 0CD0F0 800CC4F0 50A10006 */ beql $a1, $at, .L800CC50C +/* 0CD0F4 800CC4F4 AC860014 */ sw $a2, 0x14($a0) +/* 0CD0F8 800CC4F8 03E00008 */ jr $ra +/* 0CD0FC 800CC4FC 00001025 */ move $v0, $zero + +.L800CC500: +/* 0CD100 800CC500 03E00008 */ jr $ra +/* 0CD104 800CC504 AC860000 */ sw $a2, ($a0) + +/* 0CD108 800CC508 AC860014 */ sw $a2, 0x14($a0) +.L800CC50C: +/* 0CD10C 800CC50C 03E00008 */ jr $ra +/* 0CD110 800CC510 00001025 */ move $v0, $zero + diff --git a/asm/non_matchings/unknown_0CCF90/D_800CC514.s b/asm/non_matchings/unknown_0CCF90/D_800CC514.s new file mode 100644 index 00000000..402a26ff --- /dev/null +++ b/asm/non_matchings/unknown_0CCF90/D_800CC514.s @@ -0,0 +1,37 @@ +glabel D_800CC514 +/* 0CD114 800CC514 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0CD118 800CC518 AFBF001C */ sw $ra, 0x1c($sp) +/* 0CD11C 800CC51C AFA40020 */ sw $a0, 0x20($sp) +/* 0CD120 800CC520 8C840000 */ lw $a0, ($a0) +/* 0CD124 800CC524 8FAF0030 */ lw $t7, 0x30($sp) +/* 0CD128 800CC528 AFA60028 */ sw $a2, 0x28($sp) +/* 0CD12C 800CC52C AFAF0010 */ sw $t7, 0x10($sp) +/* 0CD130 800CC530 8C990004 */ lw $t9, 4($a0) +/* 0CD134 800CC534 0320F809 */ jalr $t9 +/* 0CD138 800CC538 00000000 */ nop +/* 0CD13C 800CC53C 8FA60028 */ lw $a2, 0x28($sp) +/* 0CD140 800CC540 3C030800 */ lui $v1, 0x800 +/* 0CD144 800CC544 3C0A0440 */ lui $t2, (0x04400580 >> 16) # lui $t2, 0x440 +/* 0CD148 800CC548 0006C040 */ sll $t8, $a2, 1 +/* 0CD14C 800CC54C 00065880 */ sll $t3, $a2, 2 +/* 0CD150 800CC550 3308FFFF */ andi $t0, $t8, 0xffff +/* 0CD154 800CC554 354A0580 */ ori $t2, (0x04400580 & 0xFFFF) # ori $t2, $t2, 0x580 +/* 0CD158 800CC558 3C090D00 */ lui $t1, 0xd00 +/* 0CD15C 800CC55C 316CFFFF */ andi $t4, $t3, 0xffff +/* 0CD160 800CC560 3C0D0600 */ lui $t5, 0x600 +/* 0CD164 800CC564 AC480004 */ sw $t0, 4($v0) +/* 0CD168 800CC568 AC430000 */ sw $v1, ($v0) +/* 0CD16C 800CC56C AC490008 */ sw $t1, 8($v0) +/* 0CD170 800CC570 AC4A000C */ sw $t2, 0xc($v0) +/* 0CD174 800CC574 AC4C0014 */ sw $t4, 0x14($v0) +/* 0CD178 800CC578 AC430010 */ sw $v1, 0x10($v0) +/* 0CD17C 800CC57C AC4D0018 */ sw $t5, 0x18($v0) +/* 0CD180 800CC580 8FAE0020 */ lw $t6, 0x20($sp) +/* 0CD184 800CC584 24420020 */ addiu $v0, $v0, 0x20 +/* 0CD188 800CC588 8DCF0014 */ lw $t7, 0x14($t6) +/* 0CD18C 800CC58C AC4FFFFC */ sw $t7, -4($v0) +/* 0CD190 800CC590 8FBF001C */ lw $ra, 0x1c($sp) +/* 0CD194 800CC594 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0CD198 800CC598 03E00008 */ jr $ra +/* 0CD19C 800CC59C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CCF90/func_800CC5A0.s b/asm/non_matchings/unknown_0CCF90/func_800CC5A0.s new file mode 100644 index 00000000..fe8cdad4 --- /dev/null +++ b/asm/non_matchings/unknown_0CCF90/func_800CC5A0.s @@ -0,0 +1,180 @@ +glabel func_800CC5A0 +/* 0CD1A0 800CC5A0 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 0CD1A4 800CC5A4 AFBF001C */ sw $ra, 0x1c($sp) +/* 0CD1A8 800CC5A8 240E0001 */ li $t6, 1 +/* 0CD1AC 800CC5AC 3C018013 */ lui $at, %hi(D_8012CCC0) # $at, 0x8013 +/* 0CD1B0 800CC5B0 AFB00018 */ sw $s0, 0x18($sp) +/* 0CD1B4 800CC5B4 AFA00038 */ sw $zero, 0x38($sp) +/* 0CD1B8 800CC5B8 0C03515C */ jal func_800D4570 +/* 0CD1BC 800CC5BC AC2ECCC0 */ sw $t6, %lo(D_8012CCC0)($at) +/* 0CD1C0 800CC5C0 00408025 */ move $s0, $v0 +/* 0CD1C4 800CC5C4 3C012000 */ lui $at, 0x2000 +/* 0CD1C8 800CC5C8 0C035158 */ jal func_800D4560 +/* 0CD1CC 800CC5CC 02012025 */ or $a0, $s0, $at +/* 0CD1D0 800CC5D0 3C040100 */ lui $a0, (0x01000800 >> 16) # lui $a0, 0x100 +/* 0CD1D4 800CC5D4 0C035160 */ jal func_800D4580 +/* 0CD1D8 800CC5D8 34840800 */ ori $a0, (0x01000800 & 0xFFFF) # ori $a0, $a0, 0x800 +/* 0CD1DC 800CC5DC 3C041FC0 */ lui $a0, (0x1FC007FC >> 16) # lui $a0, 0x1fc0 +/* 0CD1E0 800CC5E0 348407FC */ ori $a0, (0x1FC007FC & 0xFFFF) # ori $a0, $a0, 0x7fc +/* 0CD1E4 800CC5E4 0C035164 */ jal func_800D4590 +/* 0CD1E8 800CC5E8 27A5003C */ addiu $a1, $sp, 0x3c +/* 0CD1EC 800CC5EC 10400007 */ beqz $v0, .L800CC60C +/* 0CD1F0 800CC5F0 00000000 */ nop +.L800CC5F4: +/* 0CD1F4 800CC5F4 3C041FC0 */ lui $a0, (0x1FC007FC >> 16) # lui $a0, 0x1fc0 +/* 0CD1F8 800CC5F8 348407FC */ ori $a0, (0x1FC007FC & 0xFFFF) # ori $a0, $a0, 0x7fc +/* 0CD1FC 800CC5FC 0C035164 */ jal func_800D4590 +/* 0CD200 800CC600 27A5003C */ addiu $a1, $sp, 0x3c +/* 0CD204 800CC604 1440FFFB */ bnez $v0, .L800CC5F4 +/* 0CD208 800CC608 00000000 */ nop +.L800CC60C: +/* 0CD20C 800CC60C 8FA5003C */ lw $a1, 0x3c($sp) +/* 0CD210 800CC610 3C041FC0 */ lui $a0, (0x1FC007FC >> 16) # lui $a0, 0x1fc0 +/* 0CD214 800CC614 348407FC */ ori $a0, (0x1FC007FC & 0xFFFF) # ori $a0, $a0, 0x7fc +/* 0CD218 800CC618 34AF0008 */ ori $t7, $a1, 8 +/* 0CD21C 800CC61C 0C035178 */ jal func_800D45E0 +/* 0CD220 800CC620 01E02825 */ move $a1, $t7 +/* 0CD224 800CC624 10400009 */ beqz $v0, .L800CC64C +/* 0CD228 800CC628 00000000 */ nop +.L800CC62C: +/* 0CD22C 800CC62C 8FA5003C */ lw $a1, 0x3c($sp) +/* 0CD230 800CC630 3C041FC0 */ lui $a0, (0x1FC007FC >> 16) # lui $a0, 0x1fc0 +/* 0CD234 800CC634 348407FC */ ori $a0, (0x1FC007FC & 0xFFFF) # ori $a0, $a0, 0x7fc +/* 0CD238 800CC638 34B80008 */ ori $t8, $a1, 8 +/* 0CD23C 800CC63C 0C035178 */ jal func_800D45E0 +/* 0CD240 800CC640 03002825 */ move $a1, $t8 +/* 0CD244 800CC644 1440FFF9 */ bnez $v0, .L800CC62C +/* 0CD248 800CC648 00000000 */ nop +.L800CC64C: +/* 0CD24C 800CC64C 3C08800D */ lui $t0, %hi(D_800D2CB0) # $t0, 0x800d +/* 0CD250 800CC650 25082CB0 */ addiu $t0, %lo(D_800D2CB0) # addiu $t0, $t0, 0x2cb0 +/* 0CD254 800CC654 8D010000 */ lw $at, ($t0) +/* 0CD258 800CC658 3C198000 */ lui $t9, %hi(D_8000000C) # $t9, 0x8000 +/* 0CD25C 800CC65C 3C0D800D */ lui $t5, %hi(D_800D2CB0) # $t5, 0x800d +/* 0CD260 800CC660 AF210000 */ sw $at, ($t9) +/* 0CD264 800CC664 8D0B0004 */ lw $t3, 4($t0) +/* 0CD268 800CC668 25AD2CB0 */ addiu $t5, %lo(D_800D2CB0) # addiu $t5, $t5, 0x2cb0 +/* 0CD26C 800CC66C 3C0C8000 */ lui $t4, %hi(D_8000000C) # $t4, 0x8000 +/* 0CD270 800CC670 AF2B0004 */ sw $t3, %lo(D_80000004)($t9) +/* 0CD274 800CC674 8D010008 */ lw $at, 8($t0) +/* 0CD278 800CC678 358C0080 */ ori $t4, (0x80000080 & 0xFFFF) # ori $t4, $t4, 0x80 +/* 0CD27C 800CC67C 3C09800D */ lui $t1, %hi(D_800D2CB0) # $t1, 0x800d +/* 0CD280 800CC680 AF210008 */ sw $at, %lo(D_80000008)($t9) +/* 0CD284 800CC684 8D0B000C */ lw $t3, 0xc($t0) +/* 0CD288 800CC688 25292CB0 */ addiu $t1, %lo(D_800D2CB0) # addiu $t1, $t1, 0x2cb0 +/* 0CD28C 800CC68C 3C0A8000 */ lui $t2, %hi(D_8000000C) # $t2, 0x8000 +/* 0CD290 800CC690 AF2B000C */ sw $t3, %lo(D_8000000C)($t9) +/* 0CD294 800CC694 8DA10000 */ lw $at, ($t5) +/* 0CD298 800CC698 354A0100 */ ori $t2, (0x80000100 & 0xFFFF) # ori $t2, $t2, 0x100 +/* 0CD29C 800CC69C 3C0E800D */ lui $t6, %hi(D_800D2CB0) # $t6, 0x800d +/* 0CD2A0 800CC6A0 AD810000 */ sw $at, ($t4) +/* 0CD2A4 800CC6A4 8DB80004 */ lw $t8, 4($t5) +/* 0CD2A8 800CC6A8 25CE2CB0 */ addiu $t6, %lo(D_800D2CB0) # addiu $t6, $t6, 0x2cb0 +/* 0CD2AC 800CC6AC 3C0F8000 */ lui $t7, %hi(D_8000000C) # $t7, 0x8000 +/* 0CD2B0 800CC6B0 AD980004 */ sw $t8, %lo(D_80000004)($t4) +/* 0CD2B4 800CC6B4 8DA10008 */ lw $at, 8($t5) +/* 0CD2B8 800CC6B8 35EF0180 */ ori $t7, (0x80000180 & 0xFFFF) # ori $t7, $t7, 0x180 +/* 0CD2BC 800CC6BC 3C048000 */ lui $a0, 0x8000 +/* 0CD2C0 800CC6C0 AD810008 */ sw $at, %lo(D_80000008)($t4) +/* 0CD2C4 800CC6C4 8DB8000C */ lw $t8, 0xc($t5) +/* 0CD2C8 800CC6C8 24050190 */ li $a1, 400 +/* 0CD2CC 800CC6CC AD98000C */ sw $t8, %lo(D_8000000C)($t4) +/* 0CD2D0 800CC6D0 8D210000 */ lw $at, ($t1) +/* 0CD2D4 800CC6D4 AD410000 */ sw $at, ($t2) +/* 0CD2D8 800CC6D8 8D2B0004 */ lw $t3, 4($t1) +/* 0CD2DC 800CC6DC AD4B0004 */ sw $t3, %lo(D_80000004)($t2) +/* 0CD2E0 800CC6E0 8D210008 */ lw $at, 8($t1) +/* 0CD2E4 800CC6E4 AD410008 */ sw $at, %lo(D_80000008)($t2) +/* 0CD2E8 800CC6E8 8D2B000C */ lw $t3, 0xc($t1) +/* 0CD2EC 800CC6EC AD4B000C */ sw $t3, %lo(D_8000000C)($t2) +/* 0CD2F0 800CC6F0 8DC10000 */ lw $at, ($t6) +/* 0CD2F4 800CC6F4 ADE10000 */ sw $at, ($t7) +/* 0CD2F8 800CC6F8 8DD80004 */ lw $t8, 4($t6) +/* 0CD2FC 800CC6FC ADF80004 */ sw $t8, %lo(D_80000004)($t7) +/* 0CD300 800CC700 8DC10008 */ lw $at, 8($t6) +/* 0CD304 800CC704 ADE10008 */ sw $at, %lo(D_80000008)($t7) +/* 0CD308 800CC708 8DD8000C */ lw $t8, 0xc($t6) +/* 0CD30C 800CC70C 0C03518C */ jal func_800D4630 +/* 0CD310 800CC710 ADF8000C */ sw $t8, %lo(D_8000000C)($t7) +/* 0CD314 800CC714 3C048000 */ lui $a0, 0x8000 +/* 0CD318 800CC718 0C0351AC */ jal func_800D46B0 +/* 0CD31C 800CC71C 24050190 */ li $a1, 400 +/* 0CD320 800CC720 0C0351CC */ jal func_800D4730 +/* 0CD324 800CC724 00000000 */ nop +/* 0CD328 800CC728 24040004 */ li $a0, 4 +/* 0CD32C 800CC72C 0C0351E4 */ jal func_800D4790 +/* 0CD330 800CC730 27A50038 */ addiu $a1, $sp, 0x38 +/* 0CD334 800CC734 8FA80038 */ lw $t0, 0x38($sp) +/* 0CD338 800CC738 2401FFF0 */ li $at, -16 +/* 0CD33C 800CC73C 0101C824 */ and $t9, $t0, $at +/* 0CD340 800CC740 13200006 */ beqz $t9, .L800CC75C +/* 0CD344 800CC744 AFB90038 */ sw $t9, 0x38($sp) +/* 0CD348 800CC748 3C01800E */ lui $at, %hi(D_800E38A4) # $at, 0x800e +/* 0CD34C 800CC74C 03205825 */ move $t3, $t9 +/* 0CD350 800CC750 240A0000 */ li $t2, 0 +/* 0CD354 800CC754 AC2A38A0 */ sw $t2, %lo(D_800E38A0)($at) +/* 0CD358 800CC758 AC2B38A4 */ sw $t3, %lo(D_800E38A4)($at) +.L800CC75C: +/* 0CD35C 800CC75C 3C04800E */ lui $a0, %hi(D_800E38A0) # $a0, 0x800e +/* 0CD360 800CC760 3C05800E */ lui $a1, %hi(D_800E38A4) # $a1, 0x800e +/* 0CD364 800CC764 8CA538A4 */ lw $a1, %lo(D_800E38A4)($a1) +/* 0CD368 800CC768 8C8438A0 */ lw $a0, %lo(D_800E38A0)($a0) +/* 0CD36C 800CC76C 24060000 */ li $a2, 0 +/* 0CD370 800CC770 0C033AF2 */ jal __ll_mul +/* 0CD374 800CC774 24070003 */ li $a3, 3 +/* 0CD378 800CC778 AFA20020 */ sw $v0, 0x20($sp) +/* 0CD37C 800CC77C AFA30024 */ sw $v1, 0x24($sp) +/* 0CD380 800CC780 8FA50024 */ lw $a1, 0x24($sp) +/* 0CD384 800CC784 8FA40020 */ lw $a0, 0x20($sp) +/* 0CD388 800CC788 24060000 */ li $a2, 0 +/* 0CD38C 800CC78C 0C033AB2 */ jal __ull_div +/* 0CD390 800CC790 24070004 */ li $a3, 4 +/* 0CD394 800CC794 3C098000 */ lui $t1, %hi(D_8000030C) # $t1, 0x8000 +/* 0CD398 800CC798 8D29030C */ lw $t1, %lo(D_8000030C)($t1) +/* 0CD39C 800CC79C 3C01800E */ lui $at, %hi(D_800E38A4) # $at, 0x800e +/* 0CD3A0 800CC7A0 AC2238A0 */ sw $v0, %lo(D_800E38A0)($at) +/* 0CD3A4 800CC7A4 15200005 */ bnez $t1, .L800CC7BC +/* 0CD3A8 800CC7A8 AC2338A4 */ sw $v1, %lo(D_800E38A4)($at) +/* 0CD3AC 800CC7AC 3C048000 */ lui $a0, %hi(D_8000031C) # $a0, 0x8000 +/* 0CD3B0 800CC7B0 2484031C */ addiu $a0, %lo(D_8000031C) # addiu $a0, $a0, 0x31c +/* 0CD3B4 800CC7B4 0C034138 */ jal func_800D04E0 +/* 0CD3B8 800CC7B8 24050040 */ li $a1, 64 +.L800CC7BC: +/* 0CD3BC 800CC7BC 3C0DA460 */ lui $t5, %hi(D_A4600010) # $t5, 0xa460 +/* 0CD3C0 800CC7C0 8DAC0010 */ lw $t4, %lo(D_A4600010)($t5) +/* 0CD3C4 800CC7C4 318F0003 */ andi $t7, $t4, 3 +/* 0CD3C8 800CC7C8 11E00008 */ beqz $t7, .L800CC7EC +/* 0CD3CC 800CC7CC AFAC0030 */ sw $t4, 0x30($sp) +.L800CC7D0: +/* 0CD3D0 800CC7D0 3C0EA460 */ lui $t6, %hi(D_A4600010) # $t6, 0xa460 +/* 0CD3D4 800CC7D4 8DD80010 */ lw $t8, %lo(D_A4600010)($t6) +/* 0CD3D8 800CC7D8 AFB80030 */ sw $t8, 0x30($sp) +/* 0CD3DC 800CC7DC 8FA80030 */ lw $t0, 0x30($sp) +/* 0CD3E0 800CC7E0 31190003 */ andi $t9, $t0, 3 +/* 0CD3E4 800CC7E4 1720FFFA */ bnez $t9, .L800CC7D0 +/* 0CD3E8 800CC7E8 00000000 */ nop +.L800CC7EC: +/* 0CD3EC 800CC7EC 3C0AA500 */ lui $t2, %hi(D_A5000508) # $t2, 0xa500 +/* 0CD3F0 800CC7F0 8D4B0508 */ lw $t3, %lo(D_A5000508)($t2) +/* 0CD3F4 800CC7F4 3169FFFF */ andi $t1, $t3, 0xffff +/* 0CD3F8 800CC7F8 1520000A */ bnez $t1, .L800CC824 +/* 0CD3FC 800CC7FC AFAB0034 */ sw $t3, 0x34($sp) +/* 0CD400 800CC800 240D0001 */ li $t5, 1 +/* 0CD404 800CC804 3C01800E */ lui $at, %hi(D_800E38B0) # $at, 0x800e +/* 0CD408 800CC808 3C05800C */ lui $a1, %hi(D_800C7340) # $a1, 0x800c +/* 0CD40C 800CC80C AC2D38B0 */ sw $t5, %lo(D_800E38B0)($at) +/* 0CD410 800CC810 24A57340 */ addiu $a1, %lo(D_800C7340) # addiu $a1, $a1, 0x7340 +/* 0CD414 800CC814 0C0351FC */ jal func_800D47F0 +/* 0CD418 800CC818 24040001 */ li $a0, 1 +/* 0CD41C 800CC81C 10000003 */ b .L800CC82C +/* 0CD420 800CC820 00000000 */ nop +.L800CC824: +/* 0CD424 800CC824 3C01800E */ lui $at, %hi(D_800E38B0) # $at, 0x800e +/* 0CD428 800CC828 AC2038B0 */ sw $zero, %lo(D_800E38B0)($at) +.L800CC82C: +/* 0CD42C 800CC82C 8FBF001C */ lw $ra, 0x1c($sp) +/* 0CD430 800CC830 8FB00018 */ lw $s0, 0x18($sp) +/* 0CD434 800CC834 27BD0040 */ addiu $sp, $sp, 0x40 +/* 0CD438 800CC838 03E00008 */ jr $ra +/* 0CD43C 800CC83C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CCF90/func_800CC840.s b/asm/non_matchings/unknown_0CCF90/func_800CC840.s new file mode 100644 index 00000000..5384c114 --- /dev/null +++ b/asm/non_matchings/unknown_0CCF90/func_800CC840.s @@ -0,0 +1,61 @@ +glabel func_800CC840 +/* 0CD440 800CC840 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0CD444 800CC844 AFBF001C */ sw $ra, 0x1c($sp) +/* 0CD448 800CC848 AFA40028 */ sw $a0, 0x28($sp) +/* 0CD44C 800CC84C AFA5002C */ sw $a1, 0x2c($sp) +/* 0CD450 800CC850 0C034958 */ jal __osDisableInt +/* 0CD454 800CC854 AFB00018 */ sw $s0, 0x18($sp) +/* 0CD458 800CC858 8FAE0028 */ lw $t6, 0x28($sp) +/* 0CD45C 800CC85C 00408025 */ move $s0, $v0 +/* 0CD460 800CC860 15C00004 */ bnez $t6, .L800CC874 +/* 0CD464 800CC864 00000000 */ nop +/* 0CD468 800CC868 3C0F800E */ lui $t7, %hi(D_800E4890) # $t7, 0x800e +/* 0CD46C 800CC86C 8DEF4890 */ lw $t7, %lo(D_800E4890)($t7) +/* 0CD470 800CC870 AFAF0028 */ sw $t7, 0x28($sp) +.L800CC874: +/* 0CD474 800CC874 8FB80028 */ lw $t8, 0x28($sp) +/* 0CD478 800CC878 8FA8002C */ lw $t0, 0x2c($sp) +/* 0CD47C 800CC87C 8F190004 */ lw $t9, 4($t8) +/* 0CD480 800CC880 13280020 */ beq $t9, $t0, .L800CC904 +/* 0CD484 800CC884 00000000 */ nop +/* 0CD488 800CC888 AF080004 */ sw $t0, 4($t8) +/* 0CD48C 800CC88C 3C0A800E */ lui $t2, %hi(D_800E4890) # $t2, 0x800e +/* 0CD490 800CC890 8D4A4890 */ lw $t2, %lo(D_800E4890)($t2) +/* 0CD494 800CC894 8FA90028 */ lw $t1, 0x28($sp) +/* 0CD498 800CC898 112A000C */ beq $t1, $t2, .L800CC8CC +/* 0CD49C 800CC89C 00000000 */ nop +/* 0CD4A0 800CC8A0 952B0010 */ lhu $t3, 0x10($t1) +/* 0CD4A4 800CC8A4 24010001 */ li $at, 1 +/* 0CD4A8 800CC8A8 11610008 */ beq $t3, $at, .L800CC8CC +/* 0CD4AC 800CC8AC 00000000 */ nop +/* 0CD4B0 800CC8B0 8D240008 */ lw $a0, 8($t1) +/* 0CD4B4 800CC8B4 0C034B1C */ jal func_800D2C70 +/* 0CD4B8 800CC8B8 01202825 */ move $a1, $t1 +/* 0CD4BC 800CC8BC 8FAC0028 */ lw $t4, 0x28($sp) +/* 0CD4C0 800CC8C0 8D840008 */ lw $a0, 8($t4) +/* 0CD4C4 800CC8C4 0C034CF3 */ jal func_800D33CC +/* 0CD4C8 800CC8C8 01802825 */ move $a1, $t4 +.L800CC8CC: +/* 0CD4CC 800CC8CC 3C0D800E */ lui $t5, %hi(D_800E4890) # $t5, 0x800e +/* 0CD4D0 800CC8D0 3C0F800E */ lui $t7, %hi(D_800E4888) # $t7, 0x800e +/* 0CD4D4 800CC8D4 8DEF4888 */ lw $t7, %lo(D_800E4888)($t7) +/* 0CD4D8 800CC8D8 8DAD4890 */ lw $t5, %lo(D_800E4890)($t5) +/* 0CD4DC 800CC8DC 8DF90004 */ lw $t9, 4($t7) +/* 0CD4E0 800CC8E0 8DAE0004 */ lw $t6, 4($t5) +/* 0CD4E4 800CC8E4 01D9082A */ slt $at, $t6, $t9 +/* 0CD4E8 800CC8E8 10200006 */ beqz $at, .L800CC904 +/* 0CD4EC 800CC8EC 00000000 */ nop +/* 0CD4F0 800CC8F0 24080002 */ li $t0, 2 +/* 0CD4F4 800CC8F4 3C04800E */ lui $a0, %hi(D_800E4888) # $a0, 0x800e +/* 0CD4F8 800CC8F8 A5A80010 */ sh $t0, 0x10($t5) +/* 0CD4FC 800CC8FC 0C034CB3 */ jal __osEnqueueAndYield +/* 0CD500 800CC900 24844888 */ addiu $a0, %lo(D_800E4888) # addiu $a0, $a0, 0x4888 +.L800CC904: +/* 0CD504 800CC904 0C034960 */ jal __osRestoreInt +/* 0CD508 800CC908 02002025 */ move $a0, $s0 +/* 0CD50C 800CC90C 8FBF001C */ lw $ra, 0x1c($sp) +/* 0CD510 800CC910 8FB00018 */ lw $s0, 0x18($sp) +/* 0CD514 800CC914 27BD0028 */ addiu $sp, $sp, 0x28 +/* 0CD518 800CC918 03E00008 */ jr $ra +/* 0CD51C 800CC91C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CCF90/func_800CC920.s b/asm/non_matchings/unknown_0CCF90/func_800CC920.s new file mode 100644 index 00000000..b0e0876b --- /dev/null +++ b/asm/non_matchings/unknown_0CCF90/func_800CC920.s @@ -0,0 +1,175 @@ +glabel func_800CC920 +/* 0CD520 800CC920 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0CD524 800CC924 44867000 */ mtc1 $a2, $f14 +/* 0CD528 800CC928 AFBF0014 */ sw $ra, 0x14($sp) +/* 0CD52C 800CC92C AFA7003C */ sw $a3, 0x3c($sp) +/* 0CD530 800CC930 AFA40030 */ sw $a0, 0x30($sp) +/* 0CD534 800CC934 AFA50034 */ sw $a1, 0x34($sp) +/* 0CD538 800CC938 0C035250 */ jal func_800D4940 +/* 0CD53C 800CC93C E7AE0038 */ swc1 $f14, 0x38($sp) +/* 0CD540 800CC940 C7AE0038 */ lwc1 $f14, 0x38($sp) +/* 0CD544 800CC944 3C01800F */ li $at, 0x800F0000 # -0.000000 +/* 0CD548 800CC948 D4269640 */ ldc1 $f6, -0x69c0($at) +/* 0CD54C 800CC94C 46007121 */ cvt.d.s $f4, $f14 +/* 0CD550 800CC950 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 0CD554 800CC954 46262202 */ mul.d $f8, $f4, $f6 +/* 0CD558 800CC958 44815000 */ mtc1 $at, $f10 +/* 0CD55C 800CC95C 462043A0 */ cvt.s.d $f14, $f8 +/* 0CD560 800CC960 460A7303 */ div.s $f12, $f14, $f10 +/* 0CD564 800CC964 0C0352AC */ jal cosf +/* 0CD568 800CC968 E7AC001C */ swc1 $f12, 0x1c($sp) +/* 0CD56C 800CC96C C7AC001C */ lwc1 $f12, 0x1c($sp) +/* 0CD570 800CC970 0C035308 */ jal sinf +/* 0CD574 800CC974 E7A00020 */ swc1 $f0, 0x20($sp) +/* 0CD578 800CC978 C7A40020 */ lwc1 $f4, 0x20($sp) +/* 0CD57C 800CC97C C7A6003C */ lwc1 $f6, 0x3c($sp) +/* 0CD580 800CC980 C7AE0040 */ lwc1 $f14, 0x40($sp) +/* 0CD584 800CC984 46002083 */ div.s $f2, $f4, $f0 +/* 0CD588 800CC988 C7B00044 */ lwc1 $f16, 0x44($sp) +/* 0CD58C 800CC98C 3C01BF80 */ li $at, 0xBF800000 # -1.000000 +/* 0CD590 800CC990 44812000 */ mtc1 $at, $f4 +/* 0CD594 800CC994 46107480 */ add.s $f18, $f14, $f16 +/* 0CD598 800CC998 8FA20030 */ lw $v0, 0x30($sp) +/* 0CD59C 800CC99C 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 0CD5A0 800CC9A0 46107301 */ sub.s $f12, $f14, $f16 +/* 0CD5A4 800CC9A4 8FA50034 */ lw $a1, 0x34($sp) +/* 0CD5A8 800CC9A8 E444002C */ swc1 $f4, 0x2c($v0) +/* 0CD5AC 800CC9AC 00001825 */ move $v1, $zero +/* 0CD5B0 800CC9B0 24040004 */ li $a0, 4 +/* 0CD5B4 800CC9B4 460C9283 */ div.s $f10, $f18, $f12 +/* 0CD5B8 800CC9B8 E4420014 */ swc1 $f2, 0x14($v0) +/* 0CD5BC 800CC9BC 46061203 */ div.s $f8, $f2, $f6 +/* 0CD5C0 800CC9C0 44813000 */ mtc1 $at, $f6 +/* 0CD5C4 800CC9C4 E44A0028 */ swc1 $f10, 0x28($v0) +/* 0CD5C8 800CC9C8 E4480000 */ swc1 $f8, ($v0) +/* 0CD5CC 800CC9CC 460E3202 */ mul.s $f8, $f6, $f14 +/* 0CD5D0 800CC9D0 44803000 */ mtc1 $zero, $f6 +/* 0CD5D4 800CC9D4 00000000 */ nop +/* 0CD5D8 800CC9D8 E446003C */ swc1 $f6, 0x3c($v0) +/* 0CD5DC 800CC9DC 46104282 */ mul.s $f10, $f8, $f16 +/* 0CD5E0 800CC9E0 460C5103 */ div.s $f4, $f10, $f12 +/* 0CD5E4 800CC9E4 E4440038 */ swc1 $f4, 0x38($v0) +/* 0CD5E8 800CC9E8 C7A00048 */ lwc1 $f0, 0x48($sp) +/* 0CD5EC 800CC9EC C4460000 */ lwc1 $f6, ($v0) +/* 0CD5F0 800CC9F0 24630001 */ addiu $v1, $v1, 1 +/* 0CD5F4 800CC9F4 C4500004 */ lwc1 $f16, 4($v0) +/* 0CD5F8 800CC9F8 46003282 */ mul.s $f10, $f6, $f0 +/* 0CD5FC 800CC9FC C44C0008 */ lwc1 $f12, 8($v0) +/* 0CD600 800CCA00 10640010 */ beq $v1, $a0, .L800CCA44 +/* 0CD604 800CCA04 C44E000C */ lwc1 $f14, 0xc($v0) +.L800CCA08: +/* 0CD608 800CCA08 46008202 */ mul.s $f8, $f16, $f0 +/* 0CD60C 800CCA0C C4460010 */ lwc1 $f6, 0x10($v0) +/* 0CD610 800CCA10 C4500014 */ lwc1 $f16, 0x14($v0) +/* 0CD614 800CCA14 46006102 */ mul.s $f4, $f12, $f0 +/* 0CD618 800CCA18 C44C0018 */ lwc1 $f12, 0x18($v0) +/* 0CD61C 800CCA1C 24630001 */ addiu $v1, $v1, 1 +/* 0CD620 800CCA20 46007082 */ mul.s $f2, $f14, $f0 +/* 0CD624 800CCA24 C44E001C */ lwc1 $f14, 0x1c($v0) +/* 0CD628 800CCA28 E44A0000 */ swc1 $f10, ($v0) +/* 0CD62C 800CCA2C 46003282 */ mul.s $f10, $f6, $f0 +/* 0CD630 800CCA30 E4480004 */ swc1 $f8, 4($v0) +/* 0CD634 800CCA34 E4440008 */ swc1 $f4, 8($v0) +/* 0CD638 800CCA38 24420010 */ addiu $v0, $v0, 0x10 +/* 0CD63C 800CCA3C 1464FFF2 */ bne $v1, $a0, .L800CCA08 +/* 0CD640 800CCA40 E442FFFC */ swc1 $f2, -4($v0) +.L800CCA44: +/* 0CD644 800CCA44 46008202 */ mul.s $f8, $f16, $f0 +/* 0CD648 800CCA48 24420010 */ addiu $v0, $v0, 0x10 +/* 0CD64C 800CCA4C E44AFFF0 */ swc1 $f10, -0x10($v0) +/* 0CD650 800CCA50 46006102 */ mul.s $f4, $f12, $f0 +/* 0CD654 800CCA54 00000000 */ nop +/* 0CD658 800CCA58 46007082 */ mul.s $f2, $f14, $f0 +/* 0CD65C 800CCA5C E448FFF4 */ swc1 $f8, -0xc($v0) +/* 0CD660 800CCA60 E444FFF8 */ swc1 $f4, -8($v0) +/* 0CD664 800CCA64 E442FFFC */ swc1 $f2, -4($v0) +/* 0CD668 800CCA68 10A00035 */ beqz $a1, .L800CCB40 +/* 0CD66C 800CCA6C 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 0CD670 800CCA70 44814800 */ mtc1 $at, $f9 +/* 0CD674 800CCA74 44804000 */ mtc1 $zero, $f8 +/* 0CD678 800CCA78 46009021 */ cvt.d.s $f0, $f18 +/* 0CD67C 800CCA7C 340EFFFF */ li $t6, 65535 +/* 0CD680 800CCA80 4628003E */ c.le.d $f0, $f8 +/* 0CD684 800CCA84 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 0CD688 800CCA88 45020004 */ bc1fl .L800CCA9C +/* 0CD68C 800CCA8C 44815800 */ mtc1 $at, $f11 +/* 0CD690 800CCA90 1000002B */ b .L800CCB40 +/* 0CD694 800CCA94 A4AE0000 */ sh $t6, ($a1) +/* 0CD698 800CCA98 44815800 */ mtc1 $at, $f11 +.L800CCA9C: +/* 0CD69C 800CCA9C 44805000 */ mtc1 $zero, $f10 +/* 0CD6A0 800CCAA0 24180001 */ li $t8, 1 +/* 0CD6A4 800CCAA4 3C0141E0 */ li $at, 0x41E00000 # 28.000000 +/* 0CD6A8 800CCAA8 46205103 */ div.d $f4, $f10, $f0 +/* 0CD6AC 800CCAAC 24080001 */ li $t0, 1 +/* 0CD6B0 800CCAB0 444FF800 */ cfc1 $t7, $31 +/* 0CD6B4 800CCAB4 44D8F800 */ ctc1 $t8, $31 +/* 0CD6B8 800CCAB8 00000000 */ nop +/* 0CD6BC 800CCABC 462021A4 */ cvt.w.d $f6, $f4 +/* 0CD6C0 800CCAC0 4458F800 */ cfc1 $t8, $31 +/* 0CD6C4 800CCAC4 00000000 */ nop +/* 0CD6C8 800CCAC8 33180078 */ andi $t8, $t8, 0x78 +/* 0CD6CC 800CCACC 53000014 */ beql $t8, $zero, .L800CCB20 +/* 0CD6D0 800CCAD0 44183000 */ mfc1 $t8, $f6 +/* 0CD6D4 800CCAD4 44813800 */ mtc1 $at, $f7 +/* 0CD6D8 800CCAD8 44803000 */ mtc1 $zero, $f6 +/* 0CD6DC 800CCADC 24180001 */ li $t8, 1 +/* 0CD6E0 800CCAE0 46262181 */ sub.d $f6, $f4, $f6 +/* 0CD6E4 800CCAE4 44D8F800 */ ctc1 $t8, $31 +/* 0CD6E8 800CCAE8 00000000 */ nop +/* 0CD6EC 800CCAEC 462031A4 */ cvt.w.d $f6, $f6 +/* 0CD6F0 800CCAF0 4458F800 */ cfc1 $t8, $31 +/* 0CD6F4 800CCAF4 00000000 */ nop +/* 0CD6F8 800CCAF8 33180078 */ andi $t8, $t8, 0x78 +/* 0CD6FC 800CCAFC 17000005 */ bnez $t8, .L800CCB14 +/* 0CD700 800CCB00 00000000 */ nop +/* 0CD704 800CCB04 44183000 */ mfc1 $t8, $f6 +/* 0CD708 800CCB08 3C018000 */ lui $at, 0x8000 +/* 0CD70C 800CCB0C 10000007 */ b .L800CCB2C +/* 0CD710 800CCB10 0301C025 */ or $t8, $t8, $at +.L800CCB14: +/* 0CD714 800CCB14 10000005 */ b .L800CCB2C +/* 0CD718 800CCB18 2418FFFF */ li $t8, -1 +/* 0CD71C 800CCB1C 44183000 */ mfc1 $t8, $f6 +.L800CCB20: +/* 0CD720 800CCB20 00000000 */ nop +/* 0CD724 800CCB24 0700FFFB */ bltz $t8, .L800CCB14 +/* 0CD728 800CCB28 00000000 */ nop +.L800CCB2C: +/* 0CD72C 800CCB2C 44CFF800 */ ctc1 $t7, $31 +/* 0CD730 800CCB30 3319FFFF */ andi $t9, $t8, 0xffff +/* 0CD734 800CCB34 1F200002 */ bgtz $t9, .L800CCB40 +/* 0CD738 800CCB38 A4B80000 */ sh $t8, ($a1) +/* 0CD73C 800CCB3C A4A80000 */ sh $t0, ($a1) +.L800CCB40: +/* 0CD740 800CCB40 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CD744 800CCB44 27BD0030 */ addiu $sp, $sp, 0x30 +/* 0CD748 800CCB48 03E00008 */ jr $ra +/* 0CD74C 800CCB4C 00000000 */ nop + +/* 0CD750 800CCB50 27BDFF98 */ addiu $sp, $sp, -0x68 +/* 0CD754 800CCB54 44866000 */ mtc1 $a2, $f12 +/* 0CD758 800CCB58 44877000 */ mtc1 $a3, $f14 +/* 0CD75C 800CCB5C C7A40078 */ lwc1 $f4, 0x78($sp) +/* 0CD760 800CCB60 C7A6007C */ lwc1 $f6, 0x7c($sp) +/* 0CD764 800CCB64 C7A80080 */ lwc1 $f8, 0x80($sp) +/* 0CD768 800CCB68 AFBF0024 */ sw $ra, 0x24($sp) +/* 0CD76C 800CCB6C AFA40068 */ sw $a0, 0x68($sp) +/* 0CD770 800CCB70 44066000 */ mfc1 $a2, $f12 +/* 0CD774 800CCB74 44077000 */ mfc1 $a3, $f14 +/* 0CD778 800CCB78 27A40028 */ addiu $a0, $sp, 0x28 +/* 0CD77C 800CCB7C E7A40010 */ swc1 $f4, 0x10($sp) +/* 0CD780 800CCB80 E7A60014 */ swc1 $f6, 0x14($sp) +/* 0CD784 800CCB84 0C033248 */ jal func_800CC920 +/* 0CD788 800CCB88 E7A80018 */ swc1 $f8, 0x18($sp) +/* 0CD78C 800CCB8C 27A40028 */ addiu $a0, $sp, 0x28 +/* 0CD790 800CCB90 0C035210 */ jal func_800D4840 +/* 0CD794 800CCB94 8FA50068 */ lw $a1, 0x68($sp) +/* 0CD798 800CCB98 8FBF0024 */ lw $ra, 0x24($sp) +/* 0CD79C 800CCB9C 27BD0068 */ addiu $sp, $sp, 0x68 +/* 0CD7A0 800CCBA0 03E00008 */ jr $ra +/* 0CD7A4 800CCBA4 00000000 */ nop + +/* 0CD7A8 800CCBA8 00000000 */ nop +/* 0CD7AC 800CCBAC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CD820/func_800CCC20.s b/asm/non_matchings/unknown_0CD820/func_800CCC20.s new file mode 100644 index 00000000..6f1dccda --- /dev/null +++ b/asm/non_matchings/unknown_0CD820/func_800CCC20.s @@ -0,0 +1,132 @@ +glabel func_800CCC20 +/* 0CD820 800CCC20 27BDFF80 */ addiu $sp, $sp, -0x80 +/* 0CD824 800CCC24 3C0E800E */ lui $t6, %hi(D_800E38C0) # $t6, 0x800e +/* 0CD828 800CCC28 8DCE38C0 */ lw $t6, %lo(D_800E38C0)($t6) +/* 0CD82C 800CCC2C AFBF0024 */ sw $ra, 0x24($sp) +/* 0CD830 800CCC30 AFA40080 */ sw $a0, 0x80($sp) +/* 0CD834 800CCC34 AFA50084 */ sw $a1, 0x84($sp) +/* 0CD838 800CCC38 AFA60088 */ sw $a2, 0x88($sp) +/* 0CD83C 800CCC3C 11C00003 */ beqz $t6, .L800CCC4C +/* 0CD840 800CCC40 AFA00078 */ sw $zero, 0x78($sp) +/* 0CD844 800CCC44 10000070 */ b .L800CCE08 +/* 0CD848 800CCC48 00001025 */ move $v0, $zero +.L800CCC4C: +/* 0CD84C 800CCC4C 240F0001 */ li $t7, 1 +/* 0CD850 800CCC50 3C01800E */ lui $at, %hi(D_800E38C0) # $at, 0x800e +/* 0CD854 800CCC54 0C03486C */ jal func_800D21B0 +/* 0CD858 800CCC58 AC2F38C0 */ sw $t7, %lo(D_800E38C0)($at) +/* 0CD85C 800CCC5C 3C050007 */ lui $a1, (0x0007A120 >> 16) # lui $a1, 7 +/* 0CD860 800CCC60 3C06800E */ lui $a2, %hi(D_800E38A0) # $a2, 0x800e +/* 0CD864 800CCC64 3C07800E */ lui $a3, %hi(D_800E38A4) # $a3, 0x800e +/* 0CD868 800CCC68 AFA20070 */ sw $v0, 0x70($sp) +/* 0CD86C 800CCC6C AFA30074 */ sw $v1, 0x74($sp) +/* 0CD870 800CCC70 8CE738A4 */ lw $a3, %lo(D_800E38A4)($a3) +/* 0CD874 800CCC74 8CC638A0 */ lw $a2, %lo(D_800E38A0)($a2) +/* 0CD878 800CCC78 34A5A120 */ ori $a1, (0x0007A120 & 0xFFFF) # ori $a1, $a1, 0xa120 +/* 0CD87C 800CCC7C 0C033AF2 */ jal __ll_mul +/* 0CD880 800CCC80 24040000 */ li $a0, 0 +/* 0CD884 800CCC84 AFA20030 */ sw $v0, 0x30($sp) +/* 0CD888 800CCC88 AFA30034 */ sw $v1, 0x34($sp) +/* 0CD88C 800CCC8C 3C07000F */ lui $a3, (0x000F4240 >> 16) # lui $a3, 0xf +/* 0CD890 800CCC90 34E74240 */ ori $a3, (0x000F4240 & 0xFFFF) # ori $a3, $a3, 0x4240 +/* 0CD894 800CCC94 8FA50034 */ lw $a1, 0x34($sp) +/* 0CD898 800CCC98 8FA40030 */ lw $a0, 0x30($sp) +/* 0CD89C 800CCC9C 0C033AB2 */ jal __ull_div +/* 0CD8A0 800CCCA0 24060000 */ li $a2, 0 +/* 0CD8A4 800CCCA4 8FB80070 */ lw $t8, 0x70($sp) +/* 0CD8A8 800CCCA8 8FB90074 */ lw $t9, 0x74($sp) +/* 0CD8AC 800CCCAC 0058082B */ sltu $at, $v0, $t8 +/* 0CD8B0 800CCCB0 14200031 */ bnez $at, .L800CCD78 +/* 0CD8B4 800CCCB4 0302082B */ sltu $at, $t8, $v0 +/* 0CD8B8 800CCCB8 14200003 */ bnez $at, .L800CCCC8 +/* 0CD8BC 800CCCBC 0323082B */ sltu $at, $t9, $v1 +/* 0CD8C0 800CCCC0 1020002D */ beqz $at, .L800CCD78 +/* 0CD8C4 800CCCC4 00000000 */ nop +.L800CCCC8: +/* 0CD8C8 800CCCC8 27A40038 */ addiu $a0, $sp, 0x38 +/* 0CD8CC 800CCCCC 27A5007C */ addiu $a1, $sp, 0x7c +/* 0CD8D0 800CCCD0 0C032208 */ jal osCreateMesgQueue +/* 0CD8D4 800CCCD4 24060001 */ li $a2, 1 +/* 0CD8D8 800CCCD8 3C050007 */ lui $a1, (0x0007A120 >> 16) # lui $a1, 7 +/* 0CD8DC 800CCCDC 3C06800E */ lui $a2, %hi(D_800E38A0) # $a2, 0x800e +/* 0CD8E0 800CCCE0 3C07800E */ lui $a3, %hi(D_800E38A4) # $a3, 0x800e +/* 0CD8E4 800CCCE4 8CE738A4 */ lw $a3, %lo(D_800E38A4)($a3) +/* 0CD8E8 800CCCE8 8CC638A0 */ lw $a2, %lo(D_800E38A0)($a2) +/* 0CD8EC 800CCCEC 34A5A120 */ ori $a1, (0x0007A120 & 0xFFFF) # ori $a1, $a1, 0xa120 +/* 0CD8F0 800CCCF0 0C033AF2 */ jal __ll_mul +/* 0CD8F4 800CCCF4 24040000 */ li $a0, 0 +/* 0CD8F8 800CCCF8 AFA20028 */ sw $v0, 0x28($sp) +/* 0CD8FC 800CCCFC AFA3002C */ sw $v1, 0x2c($sp) +/* 0CD900 800CCD00 3C07000F */ lui $a3, (0x000F4240 >> 16) # lui $a3, 0xf +/* 0CD904 800CCD04 34E74240 */ ori $a3, (0x000F4240 & 0xFFFF) # ori $a3, $a3, 0x4240 +/* 0CD908 800CCD08 8FA5002C */ lw $a1, 0x2c($sp) +/* 0CD90C 800CCD0C 8FA40028 */ lw $a0, 0x28($sp) +/* 0CD910 800CCD10 0C033AB2 */ jal __ull_div +/* 0CD914 800CCD14 24060000 */ li $a2, 0 +/* 0CD918 800CCD18 AFA20030 */ sw $v0, 0x30($sp) +/* 0CD91C 800CCD1C AFA30034 */ sw $v1, 0x34($sp) +/* 0CD920 800CCD20 8FA90034 */ lw $t1, 0x34($sp) +/* 0CD924 800CCD24 8FA80030 */ lw $t0, 0x30($sp) +/* 0CD928 800CCD28 8FAA0070 */ lw $t2, 0x70($sp) +/* 0CD92C 800CCD2C 8FAB0074 */ lw $t3, 0x74($sp) +/* 0CD930 800CCD30 240C0000 */ li $t4, 0 +/* 0CD934 800CCD34 240D0000 */ li $t5, 0 +/* 0CD938 800CCD38 27AE0038 */ addiu $t6, $sp, 0x38 +/* 0CD93C 800CCD3C 27AF007C */ addiu $t7, $sp, 0x7c +/* 0CD940 800CCD40 010A3023 */ subu $a2, $t0, $t2 +/* 0CD944 800CCD44 012B082B */ sltu $at, $t1, $t3 +/* 0CD948 800CCD48 00C13023 */ subu $a2, $a2, $at +/* 0CD94C 800CCD4C AFAF001C */ sw $t7, 0x1c($sp) +/* 0CD950 800CCD50 AFAE0018 */ sw $t6, 0x18($sp) +/* 0CD954 800CCD54 AFAD0014 */ sw $t5, 0x14($sp) +/* 0CD958 800CCD58 AFAC0010 */ sw $t4, 0x10($sp) +/* 0CD95C 800CCD5C 27A40050 */ addiu $a0, $sp, 0x50 +/* 0CD960 800CCD60 0C035378 */ jal func_800D4DE0 +/* 0CD964 800CCD64 012B3823 */ subu $a3, $t1, $t3 +/* 0CD968 800CCD68 27A40038 */ addiu $a0, $sp, 0x38 +/* 0CD96C 800CCD6C 27A5007C */ addiu $a1, $sp, 0x7c +/* 0CD970 800CCD70 0C0322EC */ jal osRecvMesg +/* 0CD974 800CCD74 24060001 */ li $a2, 1 +.L800CCD78: +/* 0CD978 800CCD78 24180004 */ li $t8, 4 +/* 0CD97C 800CCD7C 3C018013 */ lui $at, %hi(D_8012CD91) # $at, 0x8013 +/* 0CD980 800CCD80 A038CD91 */ sb $t8, %lo(D_8012CD91)($at) +/* 0CD984 800CCD84 0C0333BA */ jal func_800CCEE8 +/* 0CD988 800CCD88 00002025 */ move $a0, $zero +/* 0CD98C 800CCD8C 3C058013 */ lui $a1, %hi(D_8012CD50) # $a1, 0x8013 +/* 0CD990 800CCD90 24A5CD50 */ addiu $a1, %lo(D_8012CD50) # addiu $a1, $a1, -0x32b0 +/* 0CD994 800CCD94 0C0335B0 */ jal func_800CD6C0 +/* 0CD998 800CCD98 24040001 */ li $a0, 1 +/* 0CD99C 800CCD9C AFA20078 */ sw $v0, 0x78($sp) +/* 0CD9A0 800CCDA0 8FA40080 */ lw $a0, 0x80($sp) +/* 0CD9A4 800CCDA4 27A5007C */ addiu $a1, $sp, 0x7c +/* 0CD9A8 800CCDA8 0C0322EC */ jal osRecvMesg +/* 0CD9AC 800CCDAC 24060001 */ li $a2, 1 +/* 0CD9B0 800CCDB0 3C058013 */ lui $a1, %hi(D_8012CD50) # $a1, 0x8013 +/* 0CD9B4 800CCDB4 24A5CD50 */ addiu $a1, %lo(D_8012CD50) # addiu $a1, $a1, -0x32b0 +/* 0CD9B8 800CCDB8 0C0335B0 */ jal func_800CD6C0 +/* 0CD9BC 800CCDBC 00002025 */ move $a0, $zero +/* 0CD9C0 800CCDC0 AFA20078 */ sw $v0, 0x78($sp) +/* 0CD9C4 800CCDC4 8FA40080 */ lw $a0, 0x80($sp) +/* 0CD9C8 800CCDC8 27A5007C */ addiu $a1, $sp, 0x7c +/* 0CD9CC 800CCDCC 0C0322EC */ jal osRecvMesg +/* 0CD9D0 800CCDD0 24060001 */ li $a2, 1 +/* 0CD9D4 800CCDD4 8FA40084 */ lw $a0, 0x84($sp) +/* 0CD9D8 800CCDD8 0C033386 */ jal func_800CCE18 +/* 0CD9DC 800CCDDC 8FA50088 */ lw $a1, 0x88($sp) +/* 0CD9E0 800CCDE0 3C018013 */ lui $at, %hi(D_8012CD90) # $at, 0x8013 +/* 0CD9E4 800CCDE4 0C033580 */ jal func_800CD600 +/* 0CD9E8 800CCDE8 A020CD90 */ sb $zero, %lo(D_8012CD90)($at) +/* 0CD9EC 800CCDEC 3C048013 */ lui $a0, %hi(D_8012CDB8) # $a0, 0x8013 +/* 0CD9F0 800CCDF0 3C058013 */ lui $a1, %hi(D_8012CDD0) # $a1, 0x8013 +/* 0CD9F4 800CCDF4 24A5CDD0 */ addiu $a1, %lo(D_8012CDD0) # addiu $a1, $a1, -0x3230 +/* 0CD9F8 800CCDF8 2484CDB8 */ addiu $a0, %lo(D_8012CDB8) # addiu $a0, $a0, -0x3248 +/* 0CD9FC 800CCDFC 0C032208 */ jal osCreateMesgQueue +/* 0CDA00 800CCE00 24060001 */ li $a2, 1 +/* 0CDA04 800CCE04 8FA20078 */ lw $v0, 0x78($sp) +.L800CCE08: +/* 0CDA08 800CCE08 8FBF0024 */ lw $ra, 0x24($sp) +/* 0CDA0C 800CCE0C 27BD0080 */ addiu $sp, $sp, 0x80 +/* 0CDA10 800CCE10 03E00008 */ jr $ra +/* 0CDA14 800CCE14 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CD820/func_800CCE18.s b/asm/non_matchings/unknown_0CD820/func_800CCE18.s new file mode 100644 index 00000000..6d3fce6f --- /dev/null +++ b/asm/non_matchings/unknown_0CD820/func_800CCE18.s @@ -0,0 +1,57 @@ +glabel func_800CCE18 +/* 0CDA18 800CCE18 3C0F8013 */ lui $t7, %hi(D_8012CD91) # $t7, 0x8013 +/* 0CDA1C 800CCE1C 91EFCD91 */ lbu $t7, %lo(D_8012CD91)($t7) +/* 0CDA20 800CCE20 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0CDA24 800CCE24 3C0E8013 */ lui $t6, %hi(D_8012CD50) # $t6, 0x8013 +/* 0CDA28 800CCE28 25CECD50 */ addiu $t6, %lo(D_8012CD50) # addiu $t6, $t6, -0x32b0 +/* 0CDA2C 800CCE2C A3A00007 */ sb $zero, 7($sp) +/* 0CDA30 800CCE30 AFAE0014 */ sw $t6, 0x14($sp) +/* 0CDA34 800CCE34 19E00028 */ blez $t7, .L800CCED8 +/* 0CDA38 800CCE38 AFA00008 */ sw $zero, 8($sp) +.L800CCE3C: +/* 0CDA3C 800CCE3C 8FB90014 */ lw $t9, 0x14($sp) +/* 0CDA40 800CCE40 27B8000C */ addiu $t8, $sp, 0xc +/* 0CDA44 800CCE44 8B210000 */ lwl $at, ($t9) +/* 0CDA48 800CCE48 9B210003 */ lwr $at, 3($t9) +/* 0CDA4C 800CCE4C AF010000 */ sw $at, ($t8) +/* 0CDA50 800CCE50 8B290004 */ lwl $t1, 4($t9) +/* 0CDA54 800CCE54 9B290007 */ lwr $t1, 7($t9) +/* 0CDA58 800CCE58 AF090004 */ sw $t1, 4($t8) +/* 0CDA5C 800CCE5C 93AA000E */ lbu $t2, 0xe($sp) +/* 0CDA60 800CCE60 314B00C0 */ andi $t3, $t2, 0xc0 +/* 0CDA64 800CCE64 000B6103 */ sra $t4, $t3, 4 +/* 0CDA68 800CCE68 A0AC0003 */ sb $t4, 3($a1) +/* 0CDA6C 800CCE6C 90AD0003 */ lbu $t5, 3($a1) +/* 0CDA70 800CCE70 15A0000E */ bnez $t5, .L800CCEAC +/* 0CDA74 800CCE74 00000000 */ nop +/* 0CDA78 800CCE78 93AE0011 */ lbu $t6, 0x11($sp) +/* 0CDA7C 800CCE7C 93A80010 */ lbu $t0, 0x10($sp) +/* 0CDA80 800CCE80 240B0001 */ li $t3, 1 +/* 0CDA84 800CCE84 000E7A00 */ sll $t7, $t6, 8 +/* 0CDA88 800CCE88 01E8C025 */ or $t8, $t7, $t0 +/* 0CDA8C 800CCE8C A4B80000 */ sh $t8, ($a1) +/* 0CDA90 800CCE90 93B90012 */ lbu $t9, 0x12($sp) +/* 0CDA94 800CCE94 A0B90002 */ sb $t9, 2($a1) +/* 0CDA98 800CCE98 8FAA0008 */ lw $t2, 8($sp) +/* 0CDA9C 800CCE9C 93A90007 */ lbu $t1, 7($sp) +/* 0CDAA0 800CCEA0 014B6004 */ sllv $t4, $t3, $t2 +/* 0CDAA4 800CCEA4 012C6825 */ or $t5, $t1, $t4 +/* 0CDAA8 800CCEA8 A3AD0007 */ sb $t5, 7($sp) +.L800CCEAC: +/* 0CDAAC 800CCEAC 8FAE0008 */ lw $t6, 8($sp) +/* 0CDAB0 800CCEB0 3C198013 */ lui $t9, %hi(D_8012CD91) # $t9, 0x8013 +/* 0CDAB4 800CCEB4 9339CD91 */ lbu $t9, %lo(D_8012CD91)($t9) +/* 0CDAB8 800CCEB8 8FA80014 */ lw $t0, 0x14($sp) +/* 0CDABC 800CCEBC 25CF0001 */ addiu $t7, $t6, 1 +/* 0CDAC0 800CCEC0 01F9082A */ slt $at, $t7, $t9 +/* 0CDAC4 800CCEC4 25180008 */ addiu $t8, $t0, 8 +/* 0CDAC8 800CCEC8 AFB80014 */ sw $t8, 0x14($sp) +/* 0CDACC 800CCECC AFAF0008 */ sw $t7, 8($sp) +/* 0CDAD0 800CCED0 1420FFDA */ bnez $at, .L800CCE3C +/* 0CDAD4 800CCED4 24A50004 */ addiu $a1, $a1, 4 +.L800CCED8: +/* 0CDAD8 800CCED8 93AB0007 */ lbu $t3, 7($sp) +/* 0CDADC 800CCEDC 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0CDAE0 800CCEE0 03E00008 */ jr $ra +/* 0CDAE4 800CCEE4 A08B0000 */ sb $t3, ($a0) + diff --git a/asm/non_matchings/unknown_0CD820/func_800CCEE8.s b/asm/non_matchings/unknown_0CD820/func_800CCEE8.s new file mode 100644 index 00000000..6c54f8ce --- /dev/null +++ b/asm/non_matchings/unknown_0CD820/func_800CCEE8.s @@ -0,0 +1,67 @@ +glabel func_800CCEE8 +/* 0CDAE8 800CCEE8 27BDFFF0 */ addiu $sp, $sp, -0x10 +/* 0CDAEC 800CCEEC 308400FF */ andi $a0, $a0, 0xff +/* 0CDAF0 800CCEF0 AFA00000 */ sw $zero, ($sp) +.L800CCEF4: +/* 0CDAF4 800CCEF4 8FAE0000 */ lw $t6, ($sp) +/* 0CDAF8 800CCEF8 8FB80000 */ lw $t8, ($sp) +/* 0CDAFC 800CCEFC 3C018013 */ lui $at, 0x8013 +/* 0CDB00 800CCF00 000E7880 */ sll $t7, $t6, 2 +/* 0CDB04 800CCF04 002F0821 */ addu $at, $at, $t7 +/* 0CDB08 800CCF08 AC20CD50 */ sw $zero, -0x32b0($at) +/* 0CDB0C 800CCF0C 27190001 */ addiu $t9, $t8, 1 +/* 0CDB10 800CCF10 2B210010 */ slti $at, $t9, 0x10 +/* 0CDB14 800CCF14 1420FFF7 */ bnez $at, .L800CCEF4 +/* 0CDB18 800CCF18 AFB90000 */ sw $t9, ($sp) +/* 0CDB1C 800CCF1C 3C198013 */ lui $t9, %hi(D_8012CD91) # $t9, 0x8013 +/* 0CDB20 800CCF20 9339CD91 */ lbu $t9, %lo(D_8012CD91)($t9) +/* 0CDB24 800CCF24 3C098013 */ lui $t1, %hi(D_8012CD50) # $t1, 0x8013 +/* 0CDB28 800CCF28 24080001 */ li $t0, 1 +/* 0CDB2C 800CCF2C 3C018013 */ lui $at, %hi(D_8012CD8C) # $at, 0x8013 +/* 0CDB30 800CCF30 2529CD50 */ addiu $t1, %lo(D_8012CD50) # addiu $t1, $t1, -0x32b0 +/* 0CDB34 800CCF34 240A00FF */ li $t2, 255 +/* 0CDB38 800CCF38 240B0001 */ li $t3, 1 +/* 0CDB3C 800CCF3C 240C0003 */ li $t4, 3 +/* 0CDB40 800CCF40 240D00FF */ li $t5, 255 +/* 0CDB44 800CCF44 240E00FF */ li $t6, 255 +/* 0CDB48 800CCF48 240F00FF */ li $t7, 255 +/* 0CDB4C 800CCF4C 241800FF */ li $t8, 255 +/* 0CDB50 800CCF50 AC28CD8C */ sw $t0, %lo(D_8012CD8C)($at) +/* 0CDB54 800CCF54 AFA9000C */ sw $t1, 0xc($sp) +/* 0CDB58 800CCF58 A3AA0004 */ sb $t2, 4($sp) +/* 0CDB5C 800CCF5C A3AB0005 */ sb $t3, 5($sp) +/* 0CDB60 800CCF60 A3AC0006 */ sb $t4, 6($sp) +/* 0CDB64 800CCF64 A3A40007 */ sb $a0, 7($sp) +/* 0CDB68 800CCF68 A3AD0008 */ sb $t5, 8($sp) +/* 0CDB6C 800CCF6C A3AE0009 */ sb $t6, 9($sp) +/* 0CDB70 800CCF70 A3AF000A */ sb $t7, 0xa($sp) +/* 0CDB74 800CCF74 A3B8000B */ sb $t8, 0xb($sp) +/* 0CDB78 800CCF78 1B200013 */ blez $t9, .L800CCFC8 +/* 0CDB7C 800CCF7C AFA00000 */ sw $zero, ($sp) +.L800CCF80: +/* 0CDB80 800CCF80 27A90004 */ addiu $t1, $sp, 4 +/* 0CDB84 800CCF84 8D210000 */ lw $at, ($t1) +/* 0CDB88 800CCF88 8FA8000C */ lw $t0, 0xc($sp) +/* 0CDB8C 800CCF8C 3C188013 */ lui $t8, %hi(D_8012CD91) # $t8, 0x8013 +/* 0CDB90 800CCF90 A9010000 */ swl $at, ($t0) +/* 0CDB94 800CCF94 B9010003 */ swr $at, 3($t0) +/* 0CDB98 800CCF98 8D2B0004 */ lw $t3, 4($t1) +/* 0CDB9C 800CCF9C A90B0004 */ swl $t3, 4($t0) +/* 0CDBA0 800CCFA0 B90B0007 */ swr $t3, 7($t0) +/* 0CDBA4 800CCFA4 8FAE0000 */ lw $t6, ($sp) +/* 0CDBA8 800CCFA8 9318CD91 */ lbu $t8, %lo(D_8012CD91)($t8) +/* 0CDBAC 800CCFAC 8FAC000C */ lw $t4, 0xc($sp) +/* 0CDBB0 800CCFB0 25CF0001 */ addiu $t7, $t6, 1 +/* 0CDBB4 800CCFB4 01F8082A */ slt $at, $t7, $t8 +/* 0CDBB8 800CCFB8 258D0008 */ addiu $t5, $t4, 8 +/* 0CDBBC 800CCFBC AFAF0000 */ sw $t7, ($sp) +/* 0CDBC0 800CCFC0 1420FFEF */ bnez $at, .L800CCF80 +/* 0CDBC4 800CCFC4 AFAD000C */ sw $t5, 0xc($sp) +.L800CCFC8: +/* 0CDBC8 800CCFC8 8FAA000C */ lw $t2, 0xc($sp) +/* 0CDBCC 800CCFCC 241900FE */ li $t9, 254 +/* 0CDBD0 800CCFD0 27BD0010 */ addiu $sp, $sp, 0x10 +/* 0CDBD4 800CCFD4 03E00008 */ jr $ra +/* 0CDBD8 800CCFD8 A1590000 */ sb $t9, ($t2) + +/* 0CDBDC 800CCFDC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0CD820/func_800CCFE0.s b/asm/non_matchings/unknown_0CD820/func_800CCFE0.s new file mode 100644 index 00000000..0e95d526 --- /dev/null +++ b/asm/non_matchings/unknown_0CD820/func_800CCFE0.s @@ -0,0 +1,53 @@ +glabel func_800CCFE0 +/* 0CDBE0 800CCFE0 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0CDBE4 800CCFE4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0CDBE8 800CCFE8 AFA40020 */ sw $a0, 0x20($sp) +/* 0CDBEC 800CCFEC 0C033594 */ jal func_800CD650 +/* 0CDBF0 800CCFF0 AFA0001C */ sw $zero, 0x1c($sp) +/* 0CDBF4 800CCFF4 3C0E8013 */ lui $t6, %hi(D_8012CD90) # $t6, 0x8013 +/* 0CDBF8 800CCFF8 91CECD90 */ lbu $t6, %lo(D_8012CD90)($t6) +/* 0CDBFC 800CCFFC 24010001 */ li $at, 1 +/* 0CDC00 800CD000 11C1000C */ beq $t6, $at, .L800CD034 +/* 0CDC04 800CD004 00000000 */ nop +/* 0CDC08 800CD008 0C033453 */ jal func_800CD14C +/* 0CDC0C 800CD00C 00000000 */ nop +/* 0CDC10 800CD010 3C058013 */ lui $a1, %hi(D_8012CD50) # $a1, 0x8013 +/* 0CDC14 800CD014 24A5CD50 */ addiu $a1, %lo(D_8012CD50) # addiu $a1, $a1, -0x32b0 +/* 0CDC18 800CD018 0C0335B0 */ jal func_800CD6C0 +/* 0CDC1C 800CD01C 24040001 */ li $a0, 1 +/* 0CDC20 800CD020 AFA2001C */ sw $v0, 0x1c($sp) +/* 0CDC24 800CD024 8FA40020 */ lw $a0, 0x20($sp) +/* 0CDC28 800CD028 00002825 */ move $a1, $zero +/* 0CDC2C 800CD02C 0C0322EC */ jal osRecvMesg +/* 0CDC30 800CD030 24060001 */ li $a2, 1 +.L800CD034: +/* 0CDC34 800CD034 AFA00018 */ sw $zero, 0x18($sp) +.L800CD038: +/* 0CDC38 800CD038 8FB80018 */ lw $t8, 0x18($sp) +/* 0CDC3C 800CD03C 8FA80018 */ lw $t0, 0x18($sp) +/* 0CDC40 800CD040 3C018013 */ lui $at, 0x8013 +/* 0CDC44 800CD044 0018C880 */ sll $t9, $t8, 2 +/* 0CDC48 800CD048 00390821 */ addu $at, $at, $t9 +/* 0CDC4C 800CD04C 240F00FF */ li $t7, 255 +/* 0CDC50 800CD050 AC2FCD50 */ sw $t7, -0x32b0($at) +/* 0CDC54 800CD054 25090001 */ addiu $t1, $t0, 1 +/* 0CDC58 800CD058 29210010 */ slti $at, $t1, 0x10 +/* 0CDC5C 800CD05C 1420FFF6 */ bnez $at, .L800CD038 +/* 0CDC60 800CD060 AFA90018 */ sw $t1, 0x18($sp) +/* 0CDC64 800CD064 3C018013 */ lui $at, %hi(D_8012CD8C) # $at, 0x8013 +/* 0CDC68 800CD068 3C058013 */ lui $a1, %hi(D_8012CD50) # $a1, 0x8013 +/* 0CDC6C 800CD06C AC20CD8C */ sw $zero, %lo(D_8012CD8C)($at) +/* 0CDC70 800CD070 24A5CD50 */ addiu $a1, %lo(D_8012CD50) # addiu $a1, $a1, -0x32b0 +/* 0CDC74 800CD074 0C0335B0 */ jal func_800CD6C0 +/* 0CDC78 800CD078 00002025 */ move $a0, $zero +/* 0CDC7C 800CD07C 240A0001 */ li $t2, 1 +/* 0CDC80 800CD080 3C018013 */ lui $at, %hi(D_8012CD90) # $at, 0x8013 +/* 0CDC84 800CD084 AFA2001C */ sw $v0, 0x1c($sp) +/* 0CDC88 800CD088 0C0335A5 */ jal func_800CD694 +/* 0CDC8C 800CD08C A02ACD90 */ sb $t2, %lo(D_8012CD90)($at) +/* 0CDC90 800CD090 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CDC94 800CD094 8FA2001C */ lw $v0, 0x1c($sp) +/* 0CDC98 800CD098 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0CDC9C 800CD09C 03E00008 */ jr $ra +/* 0CDCA0 800CD0A0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CD820/func_800CD0A4.s b/asm/non_matchings/unknown_0CD820/func_800CD0A4.s new file mode 100644 index 00000000..dda2b9e3 --- /dev/null +++ b/asm/non_matchings/unknown_0CD820/func_800CD0A4.s @@ -0,0 +1,47 @@ +glabel func_800CD0A4 +/* 0CDCA4 800CD0A4 3C0F8013 */ lui $t7, %hi(D_8012CD91) # $t7, 0x8013 +/* 0CDCA8 800CD0A8 91EFCD91 */ lbu $t7, %lo(D_8012CD91)($t7) +/* 0CDCAC 800CD0AC 3C0E8013 */ lui $t6, %hi(D_8012CD50) # $t6, 0x8013 +/* 0CDCB0 800CD0B0 27BDFFF0 */ addiu $sp, $sp, -0x10 +/* 0CDCB4 800CD0B4 25CECD50 */ addiu $t6, %lo(D_8012CD50) # addiu $t6, $t6, -0x32b0 +/* 0CDCB8 800CD0B8 AFAE000C */ sw $t6, 0xc($sp) +/* 0CDCBC 800CD0BC 19E00021 */ blez $t7, .L800CD144 +/* 0CDCC0 800CD0C0 AFA00000 */ sw $zero, ($sp) +.L800CD0C4: +/* 0CDCC4 800CD0C4 8FB9000C */ lw $t9, 0xc($sp) +/* 0CDCC8 800CD0C8 27B80004 */ addiu $t8, $sp, 4 +/* 0CDCCC 800CD0CC 8B210000 */ lwl $at, ($t9) +/* 0CDCD0 800CD0D0 9B210003 */ lwr $at, 3($t9) +/* 0CDCD4 800CD0D4 AF010000 */ sw $at, ($t8) +/* 0CDCD8 800CD0D8 8B290004 */ lwl $t1, 4($t9) +/* 0CDCDC 800CD0DC 9B290007 */ lwr $t1, 7($t9) +/* 0CDCE0 800CD0E0 AF090004 */ sw $t1, 4($t8) +/* 0CDCE4 800CD0E4 93AA0006 */ lbu $t2, 6($sp) +/* 0CDCE8 800CD0E8 314B00C0 */ andi $t3, $t2, 0xc0 +/* 0CDCEC 800CD0EC 000B6103 */ sra $t4, $t3, 4 +/* 0CDCF0 800CD0F0 A08C0004 */ sb $t4, 4($a0) +/* 0CDCF4 800CD0F4 908D0004 */ lbu $t5, 4($a0) +/* 0CDCF8 800CD0F8 15A00007 */ bnez $t5, .L800CD118 +/* 0CDCFC 800CD0FC 00000000 */ nop +/* 0CDD00 800CD100 97AE0008 */ lhu $t6, 8($sp) +/* 0CDD04 800CD104 A48E0000 */ sh $t6, ($a0) +/* 0CDD08 800CD108 83AF000A */ lb $t7, 0xa($sp) +/* 0CDD0C 800CD10C A08F0002 */ sb $t7, 2($a0) +/* 0CDD10 800CD110 83A8000B */ lb $t0, 0xb($sp) +/* 0CDD14 800CD114 A0880003 */ sb $t0, 3($a0) +.L800CD118: +/* 0CDD18 800CD118 8FB80000 */ lw $t8, ($sp) +/* 0CDD1C 800CD11C 3C0B8013 */ lui $t3, %hi(D_8012CD91) # $t3, 0x8013 +/* 0CDD20 800CD120 916BCD91 */ lbu $t3, %lo(D_8012CD91)($t3) +/* 0CDD24 800CD124 8FA9000C */ lw $t1, 0xc($sp) +/* 0CDD28 800CD128 27190001 */ addiu $t9, $t8, 1 +/* 0CDD2C 800CD12C 032B082A */ slt $at, $t9, $t3 +/* 0CDD30 800CD130 252A0008 */ addiu $t2, $t1, 8 +/* 0CDD34 800CD134 AFAA000C */ sw $t2, 0xc($sp) +/* 0CDD38 800CD138 AFB90000 */ sw $t9, ($sp) +/* 0CDD3C 800CD13C 1420FFE1 */ bnez $at, .L800CD0C4 +/* 0CDD40 800CD140 24840006 */ addiu $a0, $a0, 6 +.L800CD144: +/* 0CDD44 800CD144 03E00008 */ jr $ra +/* 0CDD48 800CD148 27BD0010 */ addiu $sp, $sp, 0x10 + diff --git a/asm/non_matchings/unknown_0CD820/func_800CD14C.s b/asm/non_matchings/unknown_0CD820/func_800CD14C.s new file mode 100644 index 00000000..49303dcb --- /dev/null +++ b/asm/non_matchings/unknown_0CD820/func_800CD14C.s @@ -0,0 +1,67 @@ +glabel func_800CD14C +/* 0CDD4C 800CD14C 27BDFFF0 */ addiu $sp, $sp, -0x10 +/* 0CDD50 800CD150 3C0E8013 */ lui $t6, %hi(D_8012CD50) # $t6, 0x8013 +/* 0CDD54 800CD154 25CECD50 */ addiu $t6, %lo(D_8012CD50) # addiu $t6, $t6, -0x32b0 +/* 0CDD58 800CD158 AFAE000C */ sw $t6, 0xc($sp) +/* 0CDD5C 800CD15C AFA00000 */ sw $zero, ($sp) +.L800CD160: +/* 0CDD60 800CD160 8FAF0000 */ lw $t7, ($sp) +/* 0CDD64 800CD164 8FB90000 */ lw $t9, ($sp) +/* 0CDD68 800CD168 3C018013 */ lui $at, 0x8013 +/* 0CDD6C 800CD16C 000FC080 */ sll $t8, $t7, 2 +/* 0CDD70 800CD170 00380821 */ addu $at, $at, $t8 +/* 0CDD74 800CD174 AC20CD50 */ sw $zero, -0x32b0($at) +/* 0CDD78 800CD178 27280001 */ addiu $t0, $t9, 1 +/* 0CDD7C 800CD17C 29010010 */ slti $at, $t0, 0x10 +/* 0CDD80 800CD180 1420FFF7 */ bnez $at, .L800CD160 +/* 0CDD84 800CD184 AFA80000 */ sw $t0, ($sp) +/* 0CDD88 800CD188 3C198013 */ lui $t9, %hi(D_8012CD91) # $t9, 0x8013 +/* 0CDD8C 800CD18C 9339CD91 */ lbu $t9, %lo(D_8012CD91)($t9) +/* 0CDD90 800CD190 24090001 */ li $t1, 1 +/* 0CDD94 800CD194 3C018013 */ lui $at, %hi(D_8012CD8C) # $at, 0x8013 +/* 0CDD98 800CD198 240A00FF */ li $t2, 255 +/* 0CDD9C 800CD19C 240B0001 */ li $t3, 1 +/* 0CDDA0 800CD1A0 240C0004 */ li $t4, 4 +/* 0CDDA4 800CD1A4 240D0001 */ li $t5, 1 +/* 0CDDA8 800CD1A8 340EFFFF */ li $t6, 65535 +/* 0CDDAC 800CD1AC 240FFFFF */ li $t7, -1 +/* 0CDDB0 800CD1B0 2418FFFF */ li $t8, -1 +/* 0CDDB4 800CD1B4 AC29CD8C */ sw $t1, %lo(D_8012CD8C)($at) +/* 0CDDB8 800CD1B8 A3AA0004 */ sb $t2, 4($sp) +/* 0CDDBC 800CD1BC A3AB0005 */ sb $t3, 5($sp) +/* 0CDDC0 800CD1C0 A3AC0006 */ sb $t4, 6($sp) +/* 0CDDC4 800CD1C4 A3AD0007 */ sb $t5, 7($sp) +/* 0CDDC8 800CD1C8 A7AE0008 */ sh $t6, 8($sp) +/* 0CDDCC 800CD1CC A3AF000A */ sb $t7, 0xa($sp) +/* 0CDDD0 800CD1D0 A3B8000B */ sb $t8, 0xb($sp) +/* 0CDDD4 800CD1D4 1B200013 */ blez $t9, .L800CD224 +/* 0CDDD8 800CD1D8 AFA00000 */ sw $zero, ($sp) +.L800CD1DC: +/* 0CDDDC 800CD1DC 27A90004 */ addiu $t1, $sp, 4 +/* 0CDDE0 800CD1E0 8D210000 */ lw $at, ($t1) +/* 0CDDE4 800CD1E4 8FA8000C */ lw $t0, 0xc($sp) +/* 0CDDE8 800CD1E8 3C188013 */ lui $t8, %hi(D_8012CD91) # $t8, 0x8013 +/* 0CDDEC 800CD1EC A9010000 */ swl $at, ($t0) +/* 0CDDF0 800CD1F0 B9010003 */ swr $at, 3($t0) +/* 0CDDF4 800CD1F4 8D2B0004 */ lw $t3, 4($t1) +/* 0CDDF8 800CD1F8 A90B0004 */ swl $t3, 4($t0) +/* 0CDDFC 800CD1FC B90B0007 */ swr $t3, 7($t0) +/* 0CDE00 800CD200 8FAE0000 */ lw $t6, ($sp) +/* 0CDE04 800CD204 9318CD91 */ lbu $t8, %lo(D_8012CD91)($t8) +/* 0CDE08 800CD208 8FAC000C */ lw $t4, 0xc($sp) +/* 0CDE0C 800CD20C 25CF0001 */ addiu $t7, $t6, 1 +/* 0CDE10 800CD210 01F8082A */ slt $at, $t7, $t8 +/* 0CDE14 800CD214 258D0008 */ addiu $t5, $t4, 8 +/* 0CDE18 800CD218 AFAF0000 */ sw $t7, ($sp) +/* 0CDE1C 800CD21C 1420FFEF */ bnez $at, .L800CD1DC +/* 0CDE20 800CD220 AFAD000C */ sw $t5, 0xc($sp) +.L800CD224: +/* 0CDE24 800CD224 8FAA000C */ lw $t2, 0xc($sp) +/* 0CDE28 800CD228 241900FE */ li $t9, 254 +/* 0CDE2C 800CD22C 27BD0010 */ addiu $sp, $sp, 0x10 +/* 0CDE30 800CD230 03E00008 */ jr $ra +/* 0CDE34 800CD234 A1590000 */ sb $t9, ($t2) + +/* 0CDE38 800CD238 00000000 */ nop +/* 0CDE3C 800CD23C 00000000 */ nop + diff --git a/asm/unknown_0CDE40.s b/asm/non_matchings/unknown_0CDE40/func_800CD240.s old mode 100755 new mode 100644 similarity index 50% rename from asm/unknown_0CDE40.s rename to asm/non_matchings/unknown_0CDE40/func_800CD240.s index 8a710561..e5b3f8df --- a/asm/unknown_0CDE40.s +++ b/asm/non_matchings/unknown_0CDE40/func_800CD240.s @@ -1,14 +1,7 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800CD240 /* 0CDE40 800CD240 3C0EA404 */ lui $t6, 0xa404 /* 0CDE44 800CD244 03E00008 */ jr $ra /* 0CDE48 800CD248 ADC40010 */ sw $a0, 0x10($t6) /* 0CDE4C 800CD24C 00000000 */ nop + diff --git a/asm/unknown_0CDE50.s b/asm/non_matchings/unknown_0CDE50/func_800CD250.s old mode 100755 new mode 100644 similarity index 50% rename from asm/unknown_0CDE50.s rename to asm/non_matchings/unknown_0CDE50/func_800CD250.s index c7abedea..d287663a --- a/asm/unknown_0CDE50.s +++ b/asm/non_matchings/unknown_0CDE50/func_800CD250.s @@ -1,14 +1,7 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800CD250 /* 0CDE50 800CD250 3C0EA410 */ lui $t6, 0xa410 /* 0CDE54 800CD254 03E00008 */ jr $ra /* 0CDE58 800CD258 ADC4000C */ sw $a0, 0xc($t6) /* 0CDE5C 800CD25C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CDE90/func_800CD290.s b/asm/non_matchings/unknown_0CDE90/func_800CD290.s new file mode 100644 index 00000000..d353557f --- /dev/null +++ b/asm/non_matchings/unknown_0CDE90/func_800CD290.s @@ -0,0 +1,114 @@ +glabel func_800CD290 +/* 0CDE90 800CD290 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 0CDE94 800CD294 AFBF0014 */ sw $ra, 0x14($sp) +/* 0CDE98 800CD298 240E0003 */ li $t6, 3 +/* 0CDE9C 800CD29C AFA40040 */ sw $a0, 0x40($sp) +/* 0CDEA0 800CD2A0 AFA50044 */ sw $a1, 0x44($sp) +/* 0CDEA4 800CD2A4 AFA0003C */ sw $zero, 0x3c($sp) +/* 0CDEA8 800CD2A8 A3A0001F */ sb $zero, 0x1f($sp) +/* 0CDEAC 800CD2AC 0C033594 */ jal func_800CD650 +/* 0CDEB0 800CD2B0 AFAE0018 */ sw $t6, 0x18($sp) +.L800CD2B4: +/* 0CDEB4 800CD2B4 0C03350C */ jal func_800CD430 +/* 0CDEB8 800CD2B8 00002025 */ move $a0, $zero +/* 0CDEBC 800CD2BC 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013 +/* 0CDEC0 800CD2C0 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220 +/* 0CDEC4 800CD2C4 0C0335B0 */ jal func_800CD6C0 +/* 0CDEC8 800CD2C8 24040001 */ li $a0, 1 +/* 0CDECC 800CD2CC AFA2003C */ sw $v0, 0x3c($sp) +/* 0CDED0 800CD2D0 8FA40040 */ lw $a0, 0x40($sp) +/* 0CDED4 800CD2D4 27A50038 */ addiu $a1, $sp, 0x38 +/* 0CDED8 800CD2D8 0C0322EC */ jal osRecvMesg +/* 0CDEDC 800CD2DC 24060001 */ li $a2, 1 +/* 0CDEE0 800CD2E0 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013 +/* 0CDEE4 800CD2E4 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220 +/* 0CDEE8 800CD2E8 0C0335B0 */ jal func_800CD6C0 +/* 0CDEEC 800CD2EC 00002025 */ move $a0, $zero +/* 0CDEF0 800CD2F0 AFA2003C */ sw $v0, 0x3c($sp) +/* 0CDEF4 800CD2F4 8FA40040 */ lw $a0, 0x40($sp) +/* 0CDEF8 800CD2F8 27A50038 */ addiu $a1, $sp, 0x38 +/* 0CDEFC 800CD2FC 0C0322EC */ jal osRecvMesg +/* 0CDF00 800CD300 24060001 */ li $a2, 1 +/* 0CDF04 800CD304 27A40037 */ addiu $a0, $sp, 0x37 +/* 0CDF08 800CD308 0C03354B */ jal func_800CD52C +/* 0CDF0C 800CD30C 27A50024 */ addiu $a1, $sp, 0x24 +/* 0CDF10 800CD310 3C0F8013 */ lui $t7, %hi(D_8012CD91) # $t7, 0x8013 +/* 0CDF14 800CD314 91EFCD91 */ lbu $t7, %lo(D_8012CD91)($t7) +/* 0CDF18 800CD318 AFA00020 */ sw $zero, 0x20($sp) +/* 0CDF1C 800CD31C 19E00014 */ blez $t7, .L800CD370 +/* 0CDF20 800CD320 00000000 */ nop +.L800CD324: +/* 0CDF24 800CD324 8FB80020 */ lw $t8, 0x20($sp) +/* 0CDF28 800CD328 0018C880 */ sll $t9, $t8, 2 +/* 0CDF2C 800CD32C 03B94021 */ addu $t0, $sp, $t9 +/* 0CDF30 800CD330 91080026 */ lbu $t0, 0x26($t0) +/* 0CDF34 800CD334 31090004 */ andi $t1, $t0, 4 +/* 0CDF38 800CD338 15200005 */ bnez $t1, .L800CD350 +/* 0CDF3C 800CD33C 00000000 */ nop +/* 0CDF40 800CD340 8FAA0018 */ lw $t2, 0x18($sp) +/* 0CDF44 800CD344 254BFFFF */ addiu $t3, $t2, -1 +/* 0CDF48 800CD348 10000009 */ b .L800CD370 +/* 0CDF4C 800CD34C AFAB0018 */ sw $t3, 0x18($sp) +.L800CD350: +/* 0CDF50 800CD350 8FAC0020 */ lw $t4, 0x20($sp) +/* 0CDF54 800CD354 3C0E8013 */ lui $t6, %hi(D_8012CD91) # $t6, 0x8013 +/* 0CDF58 800CD358 91CECD91 */ lbu $t6, %lo(D_8012CD91)($t6) +/* 0CDF5C 800CD35C 258D0001 */ addiu $t5, $t4, 1 +/* 0CDF60 800CD360 AFAD0020 */ sw $t5, 0x20($sp) +/* 0CDF64 800CD364 01AE082A */ slt $at, $t5, $t6 +/* 0CDF68 800CD368 1420FFEE */ bnez $at, .L800CD324 +/* 0CDF6C 800CD36C 00000000 */ nop +.L800CD370: +/* 0CDF70 800CD370 3C0F8013 */ lui $t7, %hi(D_8012CD91) # $t7, 0x8013 +/* 0CDF74 800CD374 91EFCD91 */ lbu $t7, %lo(D_8012CD91)($t7) +/* 0CDF78 800CD378 8FB80020 */ lw $t8, 0x20($sp) +/* 0CDF7C 800CD37C 15F80002 */ bne $t7, $t8, .L800CD388 +/* 0CDF80 800CD380 00000000 */ nop +/* 0CDF84 800CD384 AFA00018 */ sw $zero, 0x18($sp) +.L800CD388: +/* 0CDF88 800CD388 8FB90018 */ lw $t9, 0x18($sp) +/* 0CDF8C 800CD38C 1F20FFC9 */ bgtz $t9, .L800CD2B4 +/* 0CDF90 800CD390 00000000 */ nop +/* 0CDF94 800CD394 3C088013 */ lui $t0, %hi(D_8012CD91) # $t0, 0x8013 +/* 0CDF98 800CD398 9108CD91 */ lbu $t0, %lo(D_8012CD91)($t0) +/* 0CDF9C 800CD39C AFA00020 */ sw $zero, 0x20($sp) +/* 0CDFA0 800CD3A0 19000019 */ blez $t0, .L800CD408 +/* 0CDFA4 800CD3A4 00000000 */ nop +.L800CD3A8: +/* 0CDFA8 800CD3A8 8FA90020 */ lw $t1, 0x20($sp) +/* 0CDFAC 800CD3AC 27AB0024 */ addiu $t3, $sp, 0x24 +/* 0CDFB0 800CD3B0 00095080 */ sll $t2, $t1, 2 +/* 0CDFB4 800CD3B4 014B6021 */ addu $t4, $t2, $t3 +/* 0CDFB8 800CD3B8 918D0003 */ lbu $t5, 3($t4) +/* 0CDFBC 800CD3BC 15A0000A */ bnez $t5, .L800CD3E8 +/* 0CDFC0 800CD3C0 00000000 */ nop +/* 0CDFC4 800CD3C4 918E0002 */ lbu $t6, 2($t4) +/* 0CDFC8 800CD3C8 31CF0001 */ andi $t7, $t6, 1 +/* 0CDFCC 800CD3CC 11E00006 */ beqz $t7, .L800CD3E8 +/* 0CDFD0 800CD3D0 00000000 */ nop +/* 0CDFD4 800CD3D4 93B8001F */ lbu $t8, 0x1f($sp) +/* 0CDFD8 800CD3D8 24190001 */ li $t9, 1 +/* 0CDFDC 800CD3DC 01394004 */ sllv $t0, $t9, $t1 +/* 0CDFE0 800CD3E0 03085025 */ or $t2, $t8, $t0 +/* 0CDFE4 800CD3E4 A3AA001F */ sb $t2, 0x1f($sp) +.L800CD3E8: +/* 0CDFE8 800CD3E8 8FAB0020 */ lw $t3, 0x20($sp) +/* 0CDFEC 800CD3EC 3C0C8013 */ lui $t4, %hi(D_8012CD91) # $t4, 0x8013 +/* 0CDFF0 800CD3F0 918CCD91 */ lbu $t4, %lo(D_8012CD91)($t4) +/* 0CDFF4 800CD3F4 256D0001 */ addiu $t5, $t3, 1 +/* 0CDFF8 800CD3F8 AFAD0020 */ sw $t5, 0x20($sp) +/* 0CDFFC 800CD3FC 01AC082A */ slt $at, $t5, $t4 +/* 0CE000 800CD400 1420FFE9 */ bnez $at, .L800CD3A8 +/* 0CE004 800CD404 00000000 */ nop +.L800CD408: +/* 0CE008 800CD408 0C0335A5 */ jal func_800CD694 +/* 0CE00C 800CD40C 00000000 */ nop +/* 0CE010 800CD410 93AE001F */ lbu $t6, 0x1f($sp) +/* 0CE014 800CD414 8FAF0044 */ lw $t7, 0x44($sp) +/* 0CE018 800CD418 A1EE0000 */ sb $t6, ($t7) +/* 0CE01C 800CD41C 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CE020 800CD420 8FA2003C */ lw $v0, 0x3c($sp) +/* 0CE024 800CD424 27BD0040 */ addiu $sp, $sp, 0x40 +/* 0CE028 800CD428 03E00008 */ jr $ra +/* 0CE02C 800CD42C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CDE90/func_800CD430.s b/asm/non_matchings/unknown_0CDE90/func_800CD430.s new file mode 100644 index 00000000..426fad89 --- /dev/null +++ b/asm/non_matchings/unknown_0CDE90/func_800CD430.s @@ -0,0 +1,68 @@ +glabel func_800CD430 +/* 0CE030 800CD430 27BDFFF0 */ addiu $sp, $sp, -0x10 +/* 0CE034 800CD434 308400FF */ andi $a0, $a0, 0xff +/* 0CE038 800CD438 3C018013 */ lui $at, %hi(D_8012CD90) # $at, 0x8013 +/* 0CE03C 800CD43C A024CD90 */ sb $a0, %lo(D_8012CD90)($at) +/* 0CE040 800CD440 AFA00000 */ sw $zero, ($sp) +.L800CD444: +/* 0CE044 800CD444 8FAE0000 */ lw $t6, ($sp) +/* 0CE048 800CD448 8FB80000 */ lw $t8, ($sp) +/* 0CE04C 800CD44C 3C018013 */ lui $at, 0x8013 +/* 0CE050 800CD450 000E7880 */ sll $t7, $t6, 2 +/* 0CE054 800CD454 002F0821 */ addu $at, $at, $t7 +/* 0CE058 800CD458 AC20CDE0 */ sw $zero, -0x3220($at) +/* 0CE05C 800CD45C 27190001 */ addiu $t9, $t8, 1 +/* 0CE060 800CD460 2B210010 */ slti $at, $t9, 0x10 +/* 0CE064 800CD464 1420FFF7 */ bnez $at, .L800CD444 +/* 0CE068 800CD468 AFB90000 */ sw $t9, ($sp) +/* 0CE06C 800CD46C 3C198013 */ lui $t9, %hi(D_8012CD91) # $t9, 0x8013 +/* 0CE070 800CD470 9339CD91 */ lbu $t9, %lo(D_8012CD91)($t9) +/* 0CE074 800CD474 3C098013 */ lui $t1, %hi(D_8012CDE0) # $t1, 0x8013 +/* 0CE078 800CD478 24080001 */ li $t0, 1 +/* 0CE07C 800CD47C 3C018013 */ lui $at, %hi(D_8012CE1C) # $at, 0x8013 +/* 0CE080 800CD480 2529CDE0 */ addiu $t1, %lo(D_8012CDE0) # addiu $t1, $t1, -0x3220 +/* 0CE084 800CD484 240A00FF */ li $t2, 255 +/* 0CE088 800CD488 240B0001 */ li $t3, 1 +/* 0CE08C 800CD48C 240C0003 */ li $t4, 3 +/* 0CE090 800CD490 240D00FF */ li $t5, 255 +/* 0CE094 800CD494 240E00FF */ li $t6, 255 +/* 0CE098 800CD498 240F00FF */ li $t7, 255 +/* 0CE09C 800CD49C 241800FF */ li $t8, 255 +/* 0CE0A0 800CD4A0 AC28CE1C */ sw $t0, %lo(D_8012CE1C)($at) +/* 0CE0A4 800CD4A4 AFA9000C */ sw $t1, 0xc($sp) +/* 0CE0A8 800CD4A8 A3AA0004 */ sb $t2, 4($sp) +/* 0CE0AC 800CD4AC A3AB0005 */ sb $t3, 5($sp) +/* 0CE0B0 800CD4B0 A3AC0006 */ sb $t4, 6($sp) +/* 0CE0B4 800CD4B4 A3A40007 */ sb $a0, 7($sp) +/* 0CE0B8 800CD4B8 A3AD0008 */ sb $t5, 8($sp) +/* 0CE0BC 800CD4BC A3AE0009 */ sb $t6, 9($sp) +/* 0CE0C0 800CD4C0 A3AF000A */ sb $t7, 0xa($sp) +/* 0CE0C4 800CD4C4 A3B8000B */ sb $t8, 0xb($sp) +/* 0CE0C8 800CD4C8 1B200013 */ blez $t9, .L800CD518 +/* 0CE0CC 800CD4CC AFA00000 */ sw $zero, ($sp) +.L800CD4D0: +/* 0CE0D0 800CD4D0 27A90004 */ addiu $t1, $sp, 4 +/* 0CE0D4 800CD4D4 8D210000 */ lw $at, ($t1) +/* 0CE0D8 800CD4D8 8FA8000C */ lw $t0, 0xc($sp) +/* 0CE0DC 800CD4DC 3C188013 */ lui $t8, %hi(D_8012CD91) # $t8, 0x8013 +/* 0CE0E0 800CD4E0 A9010000 */ swl $at, ($t0) +/* 0CE0E4 800CD4E4 B9010003 */ swr $at, 3($t0) +/* 0CE0E8 800CD4E8 8D2B0004 */ lw $t3, 4($t1) +/* 0CE0EC 800CD4EC A90B0004 */ swl $t3, 4($t0) +/* 0CE0F0 800CD4F0 B90B0007 */ swr $t3, 7($t0) +/* 0CE0F4 800CD4F4 8FAE0000 */ lw $t6, ($sp) +/* 0CE0F8 800CD4F8 9318CD91 */ lbu $t8, %lo(D_8012CD91)($t8) +/* 0CE0FC 800CD4FC 8FAC000C */ lw $t4, 0xc($sp) +/* 0CE100 800CD500 25CF0001 */ addiu $t7, $t6, 1 +/* 0CE104 800CD504 01F8082A */ slt $at, $t7, $t8 +/* 0CE108 800CD508 258D0008 */ addiu $t5, $t4, 8 +/* 0CE10C 800CD50C AFAF0000 */ sw $t7, ($sp) +/* 0CE110 800CD510 1420FFEF */ bnez $at, .L800CD4D0 +/* 0CE114 800CD514 AFAD000C */ sw $t5, 0xc($sp) +.L800CD518: +/* 0CE118 800CD518 8FAA000C */ lw $t2, 0xc($sp) +/* 0CE11C 800CD51C 241900FE */ li $t9, 254 +/* 0CE120 800CD520 27BD0010 */ addiu $sp, $sp, 0x10 +/* 0CE124 800CD524 03E00008 */ jr $ra +/* 0CE128 800CD528 A1590000 */ sb $t9, ($t2) + diff --git a/asm/non_matchings/unknown_0CDE90/func_800CD52C.s b/asm/non_matchings/unknown_0CDE90/func_800CD52C.s new file mode 100644 index 00000000..2fe8d38c --- /dev/null +++ b/asm/non_matchings/unknown_0CDE90/func_800CD52C.s @@ -0,0 +1,59 @@ +glabel func_800CD52C +/* 0CE12C 800CD52C 3C0F8013 */ lui $t7, %hi(D_8012CD91) # $t7, 0x8013 +/* 0CE130 800CD530 91EFCD91 */ lbu $t7, %lo(D_8012CD91)($t7) +/* 0CE134 800CD534 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0CE138 800CD538 3C0E8013 */ lui $t6, %hi(D_8012CDE0) # $t6, 0x8013 +/* 0CE13C 800CD53C 25CECDE0 */ addiu $t6, %lo(D_8012CDE0) # addiu $t6, $t6, -0x3220 +/* 0CE140 800CD540 A3A00007 */ sb $zero, 7($sp) +/* 0CE144 800CD544 AFAE0014 */ sw $t6, 0x14($sp) +/* 0CE148 800CD548 19E00028 */ blez $t7, .L800CD5EC +/* 0CE14C 800CD54C AFA00008 */ sw $zero, 8($sp) +.L800CD550: +/* 0CE150 800CD550 8FB90014 */ lw $t9, 0x14($sp) +/* 0CE154 800CD554 27B8000C */ addiu $t8, $sp, 0xc +/* 0CE158 800CD558 8B210000 */ lwl $at, ($t9) +/* 0CE15C 800CD55C 9B210003 */ lwr $at, 3($t9) +/* 0CE160 800CD560 AF010000 */ sw $at, ($t8) +/* 0CE164 800CD564 8B290004 */ lwl $t1, 4($t9) +/* 0CE168 800CD568 9B290007 */ lwr $t1, 7($t9) +/* 0CE16C 800CD56C AF090004 */ sw $t1, 4($t8) +/* 0CE170 800CD570 93AA000E */ lbu $t2, 0xe($sp) +/* 0CE174 800CD574 314B00C0 */ andi $t3, $t2, 0xc0 +/* 0CE178 800CD578 000B6103 */ sra $t4, $t3, 4 +/* 0CE17C 800CD57C A0AC0003 */ sb $t4, 3($a1) +/* 0CE180 800CD580 90AD0003 */ lbu $t5, 3($a1) +/* 0CE184 800CD584 15A0000E */ bnez $t5, .L800CD5C0 +/* 0CE188 800CD588 00000000 */ nop +/* 0CE18C 800CD58C 93AE0011 */ lbu $t6, 0x11($sp) +/* 0CE190 800CD590 93A80010 */ lbu $t0, 0x10($sp) +/* 0CE194 800CD594 240B0001 */ li $t3, 1 +/* 0CE198 800CD598 000E7A00 */ sll $t7, $t6, 8 +/* 0CE19C 800CD59C 01E8C025 */ or $t8, $t7, $t0 +/* 0CE1A0 800CD5A0 A4B80000 */ sh $t8, ($a1) +/* 0CE1A4 800CD5A4 93B90012 */ lbu $t9, 0x12($sp) +/* 0CE1A8 800CD5A8 A0B90002 */ sb $t9, 2($a1) +/* 0CE1AC 800CD5AC 8FAA0008 */ lw $t2, 8($sp) +/* 0CE1B0 800CD5B0 93A90007 */ lbu $t1, 7($sp) +/* 0CE1B4 800CD5B4 014B6004 */ sllv $t4, $t3, $t2 +/* 0CE1B8 800CD5B8 012C6825 */ or $t5, $t1, $t4 +/* 0CE1BC 800CD5BC A3AD0007 */ sb $t5, 7($sp) +.L800CD5C0: +/* 0CE1C0 800CD5C0 8FAE0008 */ lw $t6, 8($sp) +/* 0CE1C4 800CD5C4 3C198013 */ lui $t9, %hi(D_8012CD91) # $t9, 0x8013 +/* 0CE1C8 800CD5C8 9339CD91 */ lbu $t9, %lo(D_8012CD91)($t9) +/* 0CE1CC 800CD5CC 8FA80014 */ lw $t0, 0x14($sp) +/* 0CE1D0 800CD5D0 25CF0001 */ addiu $t7, $t6, 1 +/* 0CE1D4 800CD5D4 01F9082A */ slt $at, $t7, $t9 +/* 0CE1D8 800CD5D8 25180008 */ addiu $t8, $t0, 8 +/* 0CE1DC 800CD5DC AFB80014 */ sw $t8, 0x14($sp) +/* 0CE1E0 800CD5E0 AFAF0008 */ sw $t7, 8($sp) +/* 0CE1E4 800CD5E4 1420FFDA */ bnez $at, .L800CD550 +/* 0CE1E8 800CD5E8 24A50004 */ addiu $a1, $a1, 4 +.L800CD5EC: +/* 0CE1EC 800CD5EC 93AB0007 */ lbu $t3, 7($sp) +/* 0CE1F0 800CD5F0 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0CE1F4 800CD5F4 03E00008 */ jr $ra +/* 0CE1F8 800CD5F8 A08B0000 */ sb $t3, ($a0) + +/* 0CE1FC 800CD5FC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CE200/func_800CD600.s b/asm/non_matchings/unknown_0CE200/func_800CD600.s new file mode 100644 index 00000000..5dc2c1f6 --- /dev/null +++ b/asm/non_matchings/unknown_0CE200/func_800CD600.s @@ -0,0 +1,22 @@ +glabel func_800CD600 +/* 0CE200 800CD600 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0CE204 800CD604 AFBF0014 */ sw $ra, 0x14($sp) +/* 0CE208 800CD608 240E0001 */ li $t6, 1 +/* 0CE20C 800CD60C 3C01800E */ lui $at, %hi(D_800E38D0) # $at, 0x800e +/* 0CE210 800CD610 3C048013 */ lui $a0, %hi(D_8012CE28) # $a0, 0x8013 +/* 0CE214 800CD614 3C058013 */ lui $a1, %hi(D_8012CE20) # $a1, 0x8013 +/* 0CE218 800CD618 AC2E38D0 */ sw $t6, %lo(D_800E38D0)($at) +/* 0CE21C 800CD61C 24A5CE20 */ addiu $a1, %lo(D_8012CE20) # addiu $a1, $a1, -0x31e0 +/* 0CE220 800CD620 2484CE28 */ addiu $a0, %lo(D_8012CE28) # addiu $a0, $a0, -0x31d8 +/* 0CE224 800CD624 0C032208 */ jal osCreateMesgQueue +/* 0CE228 800CD628 24060001 */ li $a2, 1 +/* 0CE22C 800CD62C 3C048013 */ lui $a0, %hi(D_8012CE28) # $a0, 0x8013 +/* 0CE230 800CD630 2484CE28 */ addiu $a0, %lo(D_8012CE28) # addiu $a0, $a0, -0x31d8 +/* 0CE234 800CD634 00002825 */ move $a1, $zero +/* 0CE238 800CD638 0C03238C */ jal func_800C8E30 +/* 0CE23C 800CD63C 00003025 */ move $a2, $zero +/* 0CE240 800CD640 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CE244 800CD644 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0CE248 800CD648 03E00008 */ jr $ra +/* 0CE24C 800CD64C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CE200/func_800CD650.s b/asm/non_matchings/unknown_0CE200/func_800CD650.s new file mode 100644 index 00000000..c7c2a021 --- /dev/null +++ b/asm/non_matchings/unknown_0CE200/func_800CD650.s @@ -0,0 +1,20 @@ +glabel func_800CD650 +/* 0CE250 800CD650 3C0E800E */ lui $t6, %hi(D_800E38D0) # $t6, 0x800e +/* 0CE254 800CD654 8DCE38D0 */ lw $t6, %lo(D_800E38D0)($t6) +/* 0CE258 800CD658 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0CE25C 800CD65C AFBF0014 */ sw $ra, 0x14($sp) +/* 0CE260 800CD660 15C00003 */ bnez $t6, .L800CD670 +/* 0CE264 800CD664 00000000 */ nop +/* 0CE268 800CD668 0C033580 */ jal func_800CD600 +/* 0CE26C 800CD66C 00000000 */ nop +.L800CD670: +/* 0CE270 800CD670 3C048013 */ lui $a0, %hi(D_8012CE28) # $a0, 0x8013 +/* 0CE274 800CD674 2484CE28 */ addiu $a0, %lo(D_8012CE28) # addiu $a0, $a0, -0x31d8 +/* 0CE278 800CD678 27A5001C */ addiu $a1, $sp, 0x1c +/* 0CE27C 800CD67C 0C0322EC */ jal osRecvMesg +/* 0CE280 800CD680 24060001 */ li $a2, 1 +/* 0CE284 800CD684 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CE288 800CD688 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0CE28C 800CD68C 03E00008 */ jr $ra +/* 0CE290 800CD690 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CE200/func_800CD694.s b/asm/non_matchings/unknown_0CE200/func_800CD694.s new file mode 100644 index 00000000..4661db6d --- /dev/null +++ b/asm/non_matchings/unknown_0CE200/func_800CD694.s @@ -0,0 +1,13 @@ +glabel func_800CD694 +/* 0CE294 800CD694 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0CE298 800CD698 AFBF0014 */ sw $ra, 0x14($sp) +/* 0CE29C 800CD69C 3C048013 */ lui $a0, %hi(D_8012CE28) # $a0, 0x8013 +/* 0CE2A0 800CD6A0 2484CE28 */ addiu $a0, %lo(D_8012CE28) # addiu $a0, $a0, -0x31d8 +/* 0CE2A4 800CD6A4 00002825 */ move $a1, $zero +/* 0CE2A8 800CD6A8 0C03238C */ jal func_800C8E30 +/* 0CE2AC 800CD6AC 00003025 */ move $a2, $zero +/* 0CE2B0 800CD6B0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CE2B4 800CD6B4 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0CE2B8 800CD6B8 03E00008 */ jr $ra +/* 0CE2BC 800CD6BC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CE200/func_800CD6C0.s b/asm/non_matchings/unknown_0CE200/func_800CD6C0.s new file mode 100644 index 00000000..2ef5a794 --- /dev/null +++ b/asm/non_matchings/unknown_0CE200/func_800CD6C0.s @@ -0,0 +1,53 @@ +glabel func_800CD6C0 +/* 0CE2C0 800CD6C0 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0CE2C4 800CD6C4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0CE2C8 800CD6C8 AFA40018 */ sw $a0, 0x18($sp) +/* 0CE2CC 800CD6CC 0C0354B0 */ jal func_800D52C0 +/* 0CE2D0 800CD6D0 AFA5001C */ sw $a1, 0x1c($sp) +/* 0CE2D4 800CD6D4 10400003 */ beqz $v0, .L800CD6E4 +/* 0CE2D8 800CD6D8 00000000 */ nop +/* 0CE2DC 800CD6DC 1000001F */ b .L800CD75C +/* 0CE2E0 800CD6E0 2402FFFF */ li $v0, -1 +.L800CD6E4: +/* 0CE2E4 800CD6E4 8FAE0018 */ lw $t6, 0x18($sp) +/* 0CE2E8 800CD6E8 24010001 */ li $at, 1 +/* 0CE2EC 800CD6EC 15C10004 */ bne $t6, $at, .L800CD700 +/* 0CE2F0 800CD6F0 00000000 */ nop +/* 0CE2F4 800CD6F4 8FA4001C */ lw $a0, 0x1c($sp) +/* 0CE2F8 800CD6F8 0C03518C */ jal func_800D4630 +/* 0CE2FC 800CD6FC 24050040 */ li $a1, 64 +.L800CD700: +/* 0CE300 800CD700 0C03233C */ jal func_800C8CF0 +/* 0CE304 800CD704 8FA4001C */ lw $a0, 0x1c($sp) +/* 0CE308 800CD708 3C0FA480 */ lui $t7, 0xa480 +/* 0CE30C 800CD70C ADE20000 */ sw $v0, ($t7) +/* 0CE310 800CD710 8FB80018 */ lw $t8, 0x18($sp) +/* 0CE314 800CD714 17000006 */ bnez $t8, .L800CD730 +/* 0CE318 800CD718 00000000 */ nop +/* 0CE31C 800CD71C 3C191FC0 */ lui $t9, (0x1FC007C0 >> 16) # lui $t9, 0x1fc0 +/* 0CE320 800CD720 373907C0 */ ori $t9, (0x1FC007C0 & 0xFFFF) # ori $t9, $t9, 0x7c0 +/* 0CE324 800CD724 3C08A480 */ lui $t0, %hi(D_A4800004) # $t0, 0xa480 +/* 0CE328 800CD728 10000005 */ b .L800CD740 +/* 0CE32C 800CD72C AD190004 */ sw $t9, %lo(D_A4800004)($t0) +.L800CD730: +/* 0CE330 800CD730 3C091FC0 */ lui $t1, (0x1FC007C0 >> 16) # lui $t1, 0x1fc0 +/* 0CE334 800CD734 352907C0 */ ori $t1, (0x1FC007C0 & 0xFFFF) # ori $t1, $t1, 0x7c0 +/* 0CE338 800CD738 3C0AA480 */ lui $t2, %hi(D_A4800010) # $t2, 0xa480 +/* 0CE33C 800CD73C AD490010 */ sw $t1, %lo(D_A4800010)($t2) +.L800CD740: +/* 0CE340 800CD740 8FAB0018 */ lw $t3, 0x18($sp) +/* 0CE344 800CD744 15600004 */ bnez $t3, .L800CD758 +/* 0CE348 800CD748 00000000 */ nop +/* 0CE34C 800CD74C 8FA4001C */ lw $a0, 0x1c($sp) +/* 0CE350 800CD750 0C0345FC */ jal func_800D17F0 +/* 0CE354 800CD754 24050040 */ li $a1, 64 +.L800CD758: +/* 0CE358 800CD758 00001025 */ move $v0, $zero +.L800CD75C: +/* 0CE35C 800CD75C 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CE360 800CD760 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0CE364 800CD764 03E00008 */ jr $ra +/* 0CE368 800CD768 00000000 */ nop + +/* 0CE36C 800CD76C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CE370/func_800CD770.s b/asm/non_matchings/unknown_0CE370/func_800CD770.s new file mode 100644 index 00000000..722fe678 --- /dev/null +++ b/asm/non_matchings/unknown_0CE370/func_800CD770.s @@ -0,0 +1,51 @@ +glabel func_800CD770 +/* 0CE370 800CD770 27BDFFF0 */ addiu $sp, $sp, -0x10 +/* 0CE374 800CD774 3084FFFF */ andi $a0, $a0, 0xffff +/* 0CE378 800CD778 A3A0000F */ sb $zero, 0xf($sp) +/* 0CE37C 800CD77C AFA00008 */ sw $zero, 8($sp) +.L800CD780: +/* 0CE380 800CD780 93AE000F */ lbu $t6, 0xf($sp) +/* 0CE384 800CD784 31CF0010 */ andi $t7, $t6, 0x10 +/* 0CE388 800CD788 11E00004 */ beqz $t7, .L800CD79C +/* 0CE38C 800CD78C 00000000 */ nop +/* 0CE390 800CD790 24180015 */ li $t8, 21 +/* 0CE394 800CD794 10000002 */ b .L800CD7A0 +/* 0CE398 800CD798 A3B8000E */ sb $t8, 0xe($sp) +.L800CD79C: +/* 0CE39C 800CD79C A3A0000E */ sb $zero, 0xe($sp) +.L800CD7A0: +/* 0CE3A0 800CD7A0 93B9000F */ lbu $t9, 0xf($sp) +/* 0CE3A4 800CD7A4 30890400 */ andi $t1, $a0, 0x400 +/* 0CE3A8 800CD7A8 00194040 */ sll $t0, $t9, 1 +/* 0CE3AC 800CD7AC 11200003 */ beqz $t1, .L800CD7BC +/* 0CE3B0 800CD7B0 A3A8000F */ sb $t0, 0xf($sp) +/* 0CE3B4 800CD7B4 10000002 */ b .L800CD7C0 +/* 0CE3B8 800CD7B8 24050001 */ li $a1, 1 +.L800CD7BC: +/* 0CE3BC 800CD7BC 00002825 */ move $a1, $zero +.L800CD7C0: +/* 0CE3C0 800CD7C0 93AA000F */ lbu $t2, 0xf($sp) +/* 0CE3C4 800CD7C4 8FA80008 */ lw $t0, 8($sp) +/* 0CE3C8 800CD7C8 93AF000E */ lbu $t7, 0xe($sp) +/* 0CE3CC 800CD7CC 30AB00FF */ andi $t3, $a1, 0xff +/* 0CE3D0 800CD7D0 00046840 */ sll $t5, $a0, 1 +/* 0CE3D4 800CD7D4 014B6025 */ or $t4, $t2, $t3 +/* 0CE3D8 800CD7D8 01A02025 */ move $a0, $t5 +/* 0CE3DC 800CD7DC 319800FF */ andi $t8, $t4, 0xff +/* 0CE3E0 800CD7E0 25090001 */ addiu $t1, $t0, 1 +/* 0CE3E4 800CD7E4 29210010 */ slti $at, $t1, 0x10 +/* 0CE3E8 800CD7E8 A3AC000F */ sb $t4, 0xf($sp) +/* 0CE3EC 800CD7EC 308EFFFF */ andi $t6, $a0, 0xffff +/* 0CE3F0 800CD7F0 030FC826 */ xor $t9, $t8, $t7 +/* 0CE3F4 800CD7F4 AFA90008 */ sw $t1, 8($sp) +/* 0CE3F8 800CD7F8 01C02025 */ move $a0, $t6 +/* 0CE3FC 800CD7FC 1420FFE0 */ bnez $at, .L800CD780 +/* 0CE400 800CD800 A3B9000F */ sb $t9, 0xf($sp) +/* 0CE404 800CD804 93A2000F */ lbu $v0, 0xf($sp) +/* 0CE408 800CD808 27BD0010 */ addiu $sp, $sp, 0x10 +/* 0CE40C 800CD80C 304A001F */ andi $t2, $v0, 0x1f +/* 0CE410 800CD810 01401025 */ move $v0, $t2 +/* 0CE414 800CD814 304B00FF */ andi $t3, $v0, 0xff +/* 0CE418 800CD818 03E00008 */ jr $ra +/* 0CE41C 800CD81C 01601025 */ move $v0, $t3 + diff --git a/asm/non_matchings/unknown_0CE370/func_800CD820.s b/asm/non_matchings/unknown_0CE370/func_800CD820.s new file mode 100644 index 00000000..fa1cd8b2 --- /dev/null +++ b/asm/non_matchings/unknown_0CE370/func_800CD820.s @@ -0,0 +1,62 @@ +glabel func_800CD820 +/* 0CE420 800CD820 27BDFFF0 */ addiu $sp, $sp, -0x10 +/* 0CE424 800CD824 A3A0000F */ sb $zero, 0xf($sp) +/* 0CE428 800CD828 AFA00008 */ sw $zero, 8($sp) +.L800CD82C: +/* 0CE42C 800CD82C 240E0007 */ li $t6, 7 +/* 0CE430 800CD830 AFAE0004 */ sw $t6, 4($sp) +.L800CD834: +/* 0CE434 800CD834 93AF000F */ lbu $t7, 0xf($sp) +/* 0CE438 800CD838 31F80080 */ andi $t8, $t7, 0x80 +/* 0CE43C 800CD83C 13000004 */ beqz $t8, .L800CD850 +/* 0CE440 800CD840 00000000 */ nop +/* 0CE444 800CD844 24190085 */ li $t9, 133 +/* 0CE448 800CD848 10000002 */ b .L800CD854 +/* 0CE44C 800CD84C A3B9000E */ sb $t9, 0xe($sp) +.L800CD850: +/* 0CE450 800CD850 A3A0000E */ sb $zero, 0xe($sp) +.L800CD854: +/* 0CE454 800CD854 93A8000F */ lbu $t0, 0xf($sp) +/* 0CE458 800CD858 8FAA0008 */ lw $t2, 8($sp) +/* 0CE45C 800CD85C 24010020 */ li $at, 32 +/* 0CE460 800CD860 00084840 */ sll $t1, $t0, 1 +/* 0CE464 800CD864 15410004 */ bne $t2, $at, .L800CD878 +/* 0CE468 800CD868 A3A9000F */ sb $t1, 0xf($sp) +/* 0CE46C 800CD86C 312B00FF */ andi $t3, $t1, 0xff +/* 0CE470 800CD870 1000000E */ b .L800CD8AC +/* 0CE474 800CD874 A3AB000F */ sb $t3, 0xf($sp) +.L800CD878: +/* 0CE478 800CD878 8FAD0004 */ lw $t5, 4($sp) +/* 0CE47C 800CD87C 908C0000 */ lbu $t4, ($a0) +/* 0CE480 800CD880 240E0001 */ li $t6, 1 +/* 0CE484 800CD884 01AE7804 */ sllv $t7, $t6, $t5 +/* 0CE488 800CD888 018FC024 */ and $t8, $t4, $t7 +/* 0CE48C 800CD88C 13000003 */ beqz $t8, .L800CD89C +/* 0CE490 800CD890 00000000 */ nop +/* 0CE494 800CD894 10000002 */ b .L800CD8A0 +/* 0CE498 800CD898 24050001 */ li $a1, 1 +.L800CD89C: +/* 0CE49C 800CD89C 00002825 */ move $a1, $zero +.L800CD8A0: +/* 0CE4A0 800CD8A0 93B9000F */ lbu $t9, 0xf($sp) +/* 0CE4A4 800CD8A4 03254025 */ or $t0, $t9, $a1 +/* 0CE4A8 800CD8A8 A3A8000F */ sb $t0, 0xf($sp) +.L800CD8AC: +/* 0CE4AC 800CD8AC 8FAE0004 */ lw $t6, 4($sp) +/* 0CE4B0 800CD8B0 93AA000F */ lbu $t2, 0xf($sp) +/* 0CE4B4 800CD8B4 93A9000E */ lbu $t1, 0xe($sp) +/* 0CE4B8 800CD8B8 25CDFFFF */ addiu $t5, $t6, -1 +/* 0CE4BC 800CD8BC AFAD0004 */ sw $t5, 4($sp) +/* 0CE4C0 800CD8C0 01495826 */ xor $t3, $t2, $t1 +/* 0CE4C4 800CD8C4 05A1FFDB */ bgez $t5, .L800CD834 +/* 0CE4C8 800CD8C8 A3AB000F */ sb $t3, 0xf($sp) +/* 0CE4CC 800CD8CC 8FAC0008 */ lw $t4, 8($sp) +/* 0CE4D0 800CD8D0 24840001 */ addiu $a0, $a0, 1 +/* 0CE4D4 800CD8D4 258F0001 */ addiu $t7, $t4, 1 +/* 0CE4D8 800CD8D8 29E10021 */ slti $at, $t7, 0x21 +/* 0CE4DC 800CD8DC 1420FFD3 */ bnez $at, .L800CD82C +/* 0CE4E0 800CD8E0 AFAF0008 */ sw $t7, 8($sp) +/* 0CE4E4 800CD8E4 93A2000F */ lbu $v0, 0xf($sp) +/* 0CE4E8 800CD8E8 03E00008 */ jr $ra +/* 0CE4EC 800CD8EC 27BD0010 */ addiu $sp, $sp, 0x10 + diff --git a/asm/non_matchings/unknown_0CE370/func_800CD8F0.s b/asm/non_matchings/unknown_0CE370/func_800CD8F0.s new file mode 100644 index 00000000..2705ce49 --- /dev/null +++ b/asm/non_matchings/unknown_0CE370/func_800CD8F0.s @@ -0,0 +1,152 @@ +glabel func_800CD8F0 +/* 0CE4F0 800CD8F0 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 0CE4F4 800CD8F4 8FB80070 */ lw $t8, 0x70($sp) +/* 0CE4F8 800CD8F8 3C0E8013 */ lui $t6, %hi(D_8012CDE0) # $t6, 0x8013 +/* 0CE4FC 800CD8FC 25CECDE0 */ addiu $t6, %lo(D_8012CDE0) # addiu $t6, $t6, -0x3220 +/* 0CE500 800CD900 240F0002 */ li $t7, 2 +/* 0CE504 800CD904 24010001 */ li $at, 1 +/* 0CE508 800CD908 AFBF001C */ sw $ra, 0x1c($sp) +/* 0CE50C 800CD90C AFA40060 */ sw $a0, 0x60($sp) +/* 0CE510 800CD910 AFA50064 */ sw $a1, 0x64($sp) +/* 0CE514 800CD914 AFA60068 */ sw $a2, 0x68($sp) +/* 0CE518 800CD918 AFA7006C */ sw $a3, 0x6c($sp) +/* 0CE51C 800CD91C AFB00018 */ sw $s0, 0x18($sp) +/* 0CE520 800CD920 AFA0005C */ sw $zero, 0x5c($sp) +/* 0CE524 800CD924 AFAE0054 */ sw $t6, 0x54($sp) +/* 0CE528 800CD928 13010009 */ beq $t8, $at, .L800CD950 +/* 0CE52C 800CD92C AFAF0028 */ sw $t7, 0x28($sp) +/* 0CE530 800CD930 97B9006A */ lhu $t9, 0x6a($sp) +/* 0CE534 800CD934 2B210007 */ slti $at, $t9, 7 +/* 0CE538 800CD938 10200005 */ beqz $at, .L800CD950 +/* 0CE53C 800CD93C 00000000 */ nop +/* 0CE540 800CD940 13200003 */ beqz $t9, .L800CD950 +/* 0CE544 800CD944 00000000 */ nop +/* 0CE548 800CD948 10000070 */ b .L800CDB0C +/* 0CE54C 800CD94C 00001025 */ move $v0, $zero +.L800CD950: +/* 0CE550 800CD950 0C033594 */ jal func_800CD650 +/* 0CE554 800CD954 00000000 */ nop +/* 0CE558 800CD958 24080003 */ li $t0, 3 +/* 0CE55C 800CD95C 3C018013 */ lui $at, %hi(D_8012CD90) # $at, 0x8013 +/* 0CE560 800CD960 A028CD90 */ sb $t0, %lo(D_8012CD90)($at) +/* 0CE564 800CD964 8FA40064 */ lw $a0, 0x64($sp) +/* 0CE568 800CD968 97A5006A */ lhu $a1, 0x6a($sp) +/* 0CE56C 800CD96C 0C0336C8 */ jal func_800CDB20 +/* 0CE570 800CD970 8FA6006C */ lw $a2, 0x6c($sp) +/* 0CE574 800CD974 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013 +/* 0CE578 800CD978 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220 +/* 0CE57C 800CD97C 0C0335B0 */ jal func_800CD6C0 +/* 0CE580 800CD980 24040001 */ li $a0, 1 +/* 0CE584 800CD984 AFA2005C */ sw $v0, 0x5c($sp) +/* 0CE588 800CD988 8FA40060 */ lw $a0, 0x60($sp) +/* 0CE58C 800CD98C 00002825 */ move $a1, $zero +/* 0CE590 800CD990 0C0322EC */ jal osRecvMesg +/* 0CE594 800CD994 24060001 */ li $a2, 1 +.L800CD998: +/* 0CE598 800CD998 AFA00058 */ sw $zero, 0x58($sp) +.L800CD99C: +/* 0CE59C 800CD99C 8FAA0058 */ lw $t2, 0x58($sp) +/* 0CE5A0 800CD9A0 8FAC0058 */ lw $t4, 0x58($sp) +/* 0CE5A4 800CD9A4 3C018013 */ lui $at, 0x8013 +/* 0CE5A8 800CD9A8 000A5880 */ sll $t3, $t2, 2 +/* 0CE5AC 800CD9AC 002B0821 */ addu $at, $at, $t3 +/* 0CE5B0 800CD9B0 240900FF */ li $t1, 255 +/* 0CE5B4 800CD9B4 AC29CDE0 */ sw $t1, -0x3220($at) +/* 0CE5B8 800CD9B8 258D0001 */ addiu $t5, $t4, 1 +/* 0CE5BC 800CD9BC 29A10010 */ slti $at, $t5, 0x10 +/* 0CE5C0 800CD9C0 1420FFF6 */ bnez $at, .L800CD99C +/* 0CE5C4 800CD9C4 AFAD0058 */ sw $t5, 0x58($sp) +/* 0CE5C8 800CD9C8 3C018013 */ lui $at, %hi(D_8012CE1C) # $at, 0x8013 +/* 0CE5CC 800CD9CC 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013 +/* 0CE5D0 800CD9D0 AC20CE1C */ sw $zero, %lo(D_8012CE1C)($at) +/* 0CE5D4 800CD9D4 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220 +/* 0CE5D8 800CD9D8 0C0335B0 */ jal func_800CD6C0 +/* 0CE5DC 800CD9DC 00002025 */ move $a0, $zero +/* 0CE5E0 800CD9E0 AFA2005C */ sw $v0, 0x5c($sp) +/* 0CE5E4 800CD9E4 8FA40060 */ lw $a0, 0x60($sp) +/* 0CE5E8 800CD9E8 00002825 */ move $a1, $zero +/* 0CE5EC 800CD9EC 0C0322EC */ jal osRecvMesg +/* 0CE5F0 800CD9F0 24060001 */ li $a2, 1 +/* 0CE5F4 800CD9F4 8FAF0064 */ lw $t7, 0x64($sp) +/* 0CE5F8 800CD9F8 3C0E8013 */ lui $t6, %hi(D_8012CDE0) # $t6, 0x8013 +/* 0CE5FC 800CD9FC 25CECDE0 */ addiu $t6, %lo(D_8012CDE0) # addiu $t6, $t6, -0x3220 +/* 0CE600 800CDA00 11E0000C */ beqz $t7, .L800CDA34 +/* 0CE604 800CDA04 AFAE0054 */ sw $t6, 0x54($sp) +/* 0CE608 800CDA08 19E0000A */ blez $t7, .L800CDA34 +/* 0CE60C 800CDA0C AFA00058 */ sw $zero, 0x58($sp) +.L800CDA10: +/* 0CE610 800CDA10 8FA80058 */ lw $t0, 0x58($sp) +/* 0CE614 800CDA14 8FA90064 */ lw $t1, 0x64($sp) +/* 0CE618 800CDA18 8FB80054 */ lw $t8, 0x54($sp) +/* 0CE61C 800CDA1C 250A0001 */ addiu $t2, $t0, 1 +/* 0CE620 800CDA20 0149082A */ slt $at, $t2, $t1 +/* 0CE624 800CDA24 27190001 */ addiu $t9, $t8, 1 +/* 0CE628 800CDA28 AFAA0058 */ sw $t2, 0x58($sp) +/* 0CE62C 800CDA2C 1420FFF8 */ bnez $at, .L800CDA10 +/* 0CE630 800CDA30 AFB90054 */ sw $t9, 0x54($sp) +.L800CDA34: +/* 0CE634 800CDA34 8FAC0054 */ lw $t4, 0x54($sp) +/* 0CE638 800CDA38 27AB002C */ addiu $t3, $sp, 0x2c +/* 0CE63C 800CDA3C 258E0024 */ addiu $t6, $t4, 0x24 +.L800CDA40: +/* 0CE640 800CDA40 89810000 */ lwl $at, ($t4) +/* 0CE644 800CDA44 99810003 */ lwr $at, 3($t4) +/* 0CE648 800CDA48 258C000C */ addiu $t4, $t4, 0xc +/* 0CE64C 800CDA4C 256B000C */ addiu $t3, $t3, 0xc +/* 0CE650 800CDA50 AD61FFF4 */ sw $at, -0xc($t3) +/* 0CE654 800CDA54 8981FFF8 */ lwl $at, -8($t4) +/* 0CE658 800CDA58 9981FFFB */ lwr $at, -5($t4) +/* 0CE65C 800CDA5C AD61FFF8 */ sw $at, -8($t3) +/* 0CE660 800CDA60 8981FFFC */ lwl $at, -4($t4) +/* 0CE664 800CDA64 9981FFFF */ lwr $at, -1($t4) +/* 0CE668 800CDA68 158EFFF5 */ bne $t4, $t6, .L800CDA40 +/* 0CE66C 800CDA6C AD61FFFC */ sw $at, -4($t3) +/* 0CE670 800CDA70 89810000 */ lwl $at, ($t4) +/* 0CE674 800CDA74 99810003 */ lwr $at, 3($t4) +/* 0CE678 800CDA78 AD610000 */ sw $at, ($t3) +/* 0CE67C 800CDA7C 93AF002E */ lbu $t7, 0x2e($sp) +/* 0CE680 800CDA80 31F800C0 */ andi $t8, $t7, 0xc0 +/* 0CE684 800CDA84 0018C903 */ sra $t9, $t8, 4 +/* 0CE688 800CDA88 17200013 */ bnez $t9, .L800CDAD8 +/* 0CE68C 800CDA8C AFB9005C */ sw $t9, 0x5c($sp) +/* 0CE690 800CDA90 0C033608 */ jal func_800CD820 +/* 0CE694 800CDA94 8FA4006C */ lw $a0, 0x6c($sp) +/* 0CE698 800CDA98 93A80052 */ lbu $t0, 0x52($sp) +/* 0CE69C 800CDA9C 1048000E */ beq $v0, $t0, .L800CDAD8 +/* 0CE6A0 800CDAA0 00000000 */ nop +/* 0CE6A4 800CDAA4 8FA40060 */ lw $a0, 0x60($sp) +/* 0CE6A8 800CDAA8 0C033B75 */ jal func_800CEDD4 +/* 0CE6AC 800CDAAC 8FA50064 */ lw $a1, 0x64($sp) +/* 0CE6B0 800CDAB0 AFA2005C */ sw $v0, 0x5c($sp) +/* 0CE6B4 800CDAB4 8FAA005C */ lw $t2, 0x5c($sp) +/* 0CE6B8 800CDAB8 11400005 */ beqz $t2, .L800CDAD0 +/* 0CE6BC 800CDABC 00000000 */ nop +/* 0CE6C0 800CDAC0 0C0335A5 */ jal func_800CD694 +/* 0CE6C4 800CDAC4 00000000 */ nop +/* 0CE6C8 800CDAC8 10000010 */ b .L800CDB0C +/* 0CE6CC 800CDACC 8FA2005C */ lw $v0, 0x5c($sp) +.L800CDAD0: +/* 0CE6D0 800CDAD0 24090004 */ li $t1, 4 +/* 0CE6D4 800CDAD4 AFA9005C */ sw $t1, 0x5c($sp) +.L800CDAD8: +/* 0CE6D8 800CDAD8 8FAD005C */ lw $t5, 0x5c($sp) +/* 0CE6DC 800CDADC 24010004 */ li $at, 4 +/* 0CE6E0 800CDAE0 15A10007 */ bne $t5, $at, .L800CDB00 +/* 0CE6E4 800CDAE4 00000000 */ nop +/* 0CE6E8 800CDAE8 8FAE0028 */ lw $t6, 0x28($sp) +/* 0CE6EC 800CDAEC 29D00000 */ slti $s0, $t6, 0 +/* 0CE6F0 800CDAF0 3A100001 */ xori $s0, $s0, 1 +/* 0CE6F4 800CDAF4 25CCFFFF */ addiu $t4, $t6, -1 +/* 0CE6F8 800CDAF8 1600FFA7 */ bnez $s0, .L800CD998 +/* 0CE6FC 800CDAFC AFAC0028 */ sw $t4, 0x28($sp) +.L800CDB00: +/* 0CE700 800CDB00 0C0335A5 */ jal func_800CD694 +/* 0CE704 800CDB04 00000000 */ nop +/* 0CE708 800CDB08 8FA2005C */ lw $v0, 0x5c($sp) +.L800CDB0C: +/* 0CE70C 800CDB0C 8FBF001C */ lw $ra, 0x1c($sp) +/* 0CE710 800CDB10 8FB00018 */ lw $s0, 0x18($sp) +/* 0CE714 800CDB14 27BD0060 */ addiu $sp, $sp, 0x60 +/* 0CE718 800CDB18 03E00008 */ jr $ra +/* 0CE71C 800CDB1C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CE370/func_800CDB20.s b/asm/non_matchings/unknown_0CE370/func_800CDB20.s new file mode 100644 index 00000000..c5e57746 --- /dev/null +++ b/asm/non_matchings/unknown_0CE370/func_800CDB20.s @@ -0,0 +1,104 @@ +glabel func_800CDB20 +/* 0CE720 800CDB20 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 0CE724 800CDB24 3C0E8013 */ lui $t6, %hi(D_8012CDE0) # $t6, 0x8013 +/* 0CE728 800CDB28 25CECDE0 */ addiu $t6, %lo(D_8012CDE0) # addiu $t6, $t6, -0x3220 +/* 0CE72C 800CDB2C AFBF0014 */ sw $ra, 0x14($sp) +/* 0CE730 800CDB30 AFA40048 */ sw $a0, 0x48($sp) +/* 0CE734 800CDB34 AFA5004C */ sw $a1, 0x4c($sp) +/* 0CE738 800CDB38 AFA60050 */ sw $a2, 0x50($sp) +/* 0CE73C 800CDB3C AFAE0044 */ sw $t6, 0x44($sp) +/* 0CE740 800CDB40 AFA00018 */ sw $zero, 0x18($sp) +.L800CDB44: +/* 0CE744 800CDB44 8FAF0018 */ lw $t7, 0x18($sp) +/* 0CE748 800CDB48 8FB90018 */ lw $t9, 0x18($sp) +/* 0CE74C 800CDB4C 3C018013 */ lui $at, 0x8013 +/* 0CE750 800CDB50 000FC080 */ sll $t8, $t7, 2 +/* 0CE754 800CDB54 00380821 */ addu $at, $at, $t8 +/* 0CE758 800CDB58 AC20CDE0 */ sw $zero, -0x3220($at) +/* 0CE75C 800CDB5C 27280001 */ addiu $t0, $t9, 1 +/* 0CE760 800CDB60 29010010 */ slti $at, $t0, 0x10 +/* 0CE764 800CDB64 1420FFF7 */ bnez $at, .L800CDB44 +/* 0CE768 800CDB68 AFA80018 */ sw $t0, 0x18($sp) +/* 0CE76C 800CDB6C 24090001 */ li $t1, 1 +/* 0CE770 800CDB70 3C018013 */ lui $at, %hi(D_8012CE1C) # $at, 0x8013 +/* 0CE774 800CDB74 240A00FF */ li $t2, 255 +/* 0CE778 800CDB78 240B0023 */ li $t3, 35 +/* 0CE77C 800CDB7C 240C0001 */ li $t4, 1 +/* 0CE780 800CDB80 240D0003 */ li $t5, 3 +/* 0CE784 800CDB84 AC29CE1C */ sw $t1, %lo(D_8012CE1C)($at) +/* 0CE788 800CDB88 A3AA001C */ sb $t2, 0x1c($sp) +/* 0CE78C 800CDB8C A3AB001D */ sb $t3, 0x1d($sp) +/* 0CE790 800CDB90 A3AC001E */ sb $t4, 0x1e($sp) +/* 0CE794 800CDB94 A3AD001F */ sb $t5, 0x1f($sp) +/* 0CE798 800CDB98 0C0335DC */ jal func_800CD770 +/* 0CE79C 800CDB9C 97A4004E */ lhu $a0, 0x4e($sp) +/* 0CE7A0 800CDBA0 97AE004E */ lhu $t6, 0x4e($sp) +/* 0CE7A4 800CDBA4 241900FF */ li $t9, 255 +/* 0CE7A8 800CDBA8 A3B90042 */ sb $t9, 0x42($sp) +/* 0CE7AC 800CDBAC 000E7940 */ sll $t7, $t6, 5 +/* 0CE7B0 800CDBB0 004FC025 */ or $t8, $v0, $t7 +/* 0CE7B4 800CDBB4 A7B80020 */ sh $t8, 0x20($sp) +/* 0CE7B8 800CDBB8 AFA00018 */ sw $zero, 0x18($sp) +.L800CDBBC: +/* 0CE7BC 800CDBBC 8FA80050 */ lw $t0, 0x50($sp) +/* 0CE7C0 800CDBC0 8FAA0018 */ lw $t2, 0x18($sp) +/* 0CE7C4 800CDBC4 91090000 */ lbu $t1, ($t0) +/* 0CE7C8 800CDBC8 03AA5821 */ addu $t3, $sp, $t2 +/* 0CE7CC 800CDBCC A1690022 */ sb $t1, 0x22($t3) +/* 0CE7D0 800CDBD0 8FAE0018 */ lw $t6, 0x18($sp) +/* 0CE7D4 800CDBD4 8FAC0050 */ lw $t4, 0x50($sp) +/* 0CE7D8 800CDBD8 25CF0001 */ addiu $t7, $t6, 1 +/* 0CE7DC 800CDBDC 29E10020 */ slti $at, $t7, 0x20 +/* 0CE7E0 800CDBE0 258D0001 */ addiu $t5, $t4, 1 +/* 0CE7E4 800CDBE4 AFAF0018 */ sw $t7, 0x18($sp) +/* 0CE7E8 800CDBE8 1420FFF4 */ bnez $at, .L800CDBBC +/* 0CE7EC 800CDBEC AFAD0050 */ sw $t5, 0x50($sp) +/* 0CE7F0 800CDBF0 8FB80048 */ lw $t8, 0x48($sp) +/* 0CE7F4 800CDBF4 1300000E */ beqz $t8, .L800CDC30 +/* 0CE7F8 800CDBF8 00000000 */ nop +/* 0CE7FC 800CDBFC 1B00000C */ blez $t8, .L800CDC30 +/* 0CE800 800CDC00 AFA00018 */ sw $zero, 0x18($sp) +.L800CDC04: +/* 0CE804 800CDC04 8FB90044 */ lw $t9, 0x44($sp) +/* 0CE808 800CDC08 A3200000 */ sb $zero, ($t9) +/* 0CE80C 800CDC0C 8FAA0018 */ lw $t2, 0x18($sp) +/* 0CE810 800CDC10 8FAC0048 */ lw $t4, 0x48($sp) +/* 0CE814 800CDC14 8FA80044 */ lw $t0, 0x44($sp) +/* 0CE818 800CDC18 254B0001 */ addiu $t3, $t2, 1 +/* 0CE81C 800CDC1C 016C082A */ slt $at, $t3, $t4 +/* 0CE820 800CDC20 25090001 */ addiu $t1, $t0, 1 +/* 0CE824 800CDC24 AFAB0018 */ sw $t3, 0x18($sp) +/* 0CE828 800CDC28 1420FFF6 */ bnez $at, .L800CDC04 +/* 0CE82C 800CDC2C AFA90044 */ sw $t1, 0x44($sp) +.L800CDC30: +/* 0CE830 800CDC30 27AE001C */ addiu $t6, $sp, 0x1c +/* 0CE834 800CDC34 25D80024 */ addiu $t8, $t6, 0x24 +/* 0CE838 800CDC38 8FAD0044 */ lw $t5, 0x44($sp) +.L800CDC3C: +/* 0CE83C 800CDC3C 8DC10000 */ lw $at, ($t6) +/* 0CE840 800CDC40 25CE000C */ addiu $t6, $t6, 0xc +/* 0CE844 800CDC44 25AD000C */ addiu $t5, $t5, 0xc +/* 0CE848 800CDC48 A9A1FFF4 */ swl $at, -0xc($t5) +/* 0CE84C 800CDC4C B9A1FFF7 */ swr $at, -9($t5) +/* 0CE850 800CDC50 8DC1FFF8 */ lw $at, -8($t6) +/* 0CE854 800CDC54 A9A1FFF8 */ swl $at, -8($t5) +/* 0CE858 800CDC58 B9A1FFFB */ swr $at, -5($t5) +/* 0CE85C 800CDC5C 8DC1FFFC */ lw $at, -4($t6) +/* 0CE860 800CDC60 A9A1FFFC */ swl $at, -4($t5) +/* 0CE864 800CDC64 15D8FFF5 */ bne $t6, $t8, .L800CDC3C +/* 0CE868 800CDC68 B9A1FFFF */ swr $at, -1($t5) +/* 0CE86C 800CDC6C 8DC10000 */ lw $at, ($t6) +/* 0CE870 800CDC70 240900FE */ li $t1, 254 +/* 0CE874 800CDC74 A9A10000 */ swl $at, ($t5) +/* 0CE878 800CDC78 B9A10003 */ swr $at, 3($t5) +/* 0CE87C 800CDC7C 8FB90044 */ lw $t9, 0x44($sp) +/* 0CE880 800CDC80 27280028 */ addiu $t0, $t9, 0x28 +/* 0CE884 800CDC84 AFA80044 */ sw $t0, 0x44($sp) +/* 0CE888 800CDC88 A1090000 */ sb $t1, ($t0) +/* 0CE88C 800CDC8C 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CE890 800CDC90 27BD0048 */ addiu $sp, $sp, 0x48 +/* 0CE894 800CDC94 03E00008 */ jr $ra +/* 0CE898 800CDC98 00000000 */ nop + +/* 0CE89C 800CDC9C 00000000 */ nop + diff --git a/asm/unknown_0CE8A0.s b/asm/non_matchings/unknown_0CE8A0/func_800CDCA0.s old mode 100755 new mode 100644 similarity index 61% rename from asm/unknown_0CE8A0.s rename to asm/non_matchings/unknown_0CE8A0/func_800CDCA0.s index e7814568..60518371 --- a/asm/unknown_0CE8A0.s +++ b/asm/non_matchings/unknown_0CE8A0/func_800CDCA0.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800CDCA0 /* 0CE8A0 800CDCA0 27BDFFA0 */ addiu $sp, $sp, -0x60 /* 0CE8A4 800CDCA4 3C0E8013 */ lui $t6, %hi(D_8012CDE0) # $t6, 0x8013 @@ -164,101 +156,3 @@ glabel func_800CDCA0 /* 0CEADC 800CDEDC 03E00008 */ jr $ra /* 0CEAE0 800CDEE0 00000000 */ nop -glabel func_800CDEE4 -/* 0CEAE4 800CDEE4 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 0CEAE8 800CDEE8 3C0E8013 */ lui $t6, %hi(D_8012CDE0) # $t6, 0x8013 -/* 0CEAEC 800CDEEC 25CECDE0 */ addiu $t6, %lo(D_8012CDE0) # addiu $t6, $t6, -0x3220 -/* 0CEAF0 800CDEF0 AFBF0014 */ sw $ra, 0x14($sp) -/* 0CEAF4 800CDEF4 AFA40048 */ sw $a0, 0x48($sp) -/* 0CEAF8 800CDEF8 AFA5004C */ sw $a1, 0x4c($sp) -/* 0CEAFC 800CDEFC AFAE0044 */ sw $t6, 0x44($sp) -/* 0CEB00 800CDF00 AFA00018 */ sw $zero, 0x18($sp) -.L800CDF04: -/* 0CEB04 800CDF04 8FAF0018 */ lw $t7, 0x18($sp) -/* 0CEB08 800CDF08 8FB90018 */ lw $t9, 0x18($sp) -/* 0CEB0C 800CDF0C 3C018013 */ lui $at, 0x8013 -/* 0CEB10 800CDF10 000FC080 */ sll $t8, $t7, 2 -/* 0CEB14 800CDF14 00380821 */ addu $at, $at, $t8 -/* 0CEB18 800CDF18 AC20CDE0 */ sw $zero, -0x3220($at) -/* 0CEB1C 800CDF1C 27280001 */ addiu $t0, $t9, 1 -/* 0CEB20 800CDF20 29010010 */ slti $at, $t0, 0x10 -/* 0CEB24 800CDF24 1420FFF7 */ bnez $at, .L800CDF04 -/* 0CEB28 800CDF28 AFA80018 */ sw $t0, 0x18($sp) -/* 0CEB2C 800CDF2C 24090001 */ li $t1, 1 -/* 0CEB30 800CDF30 3C018013 */ lui $at, %hi(D_8012CE1C) # $at, 0x8013 -/* 0CEB34 800CDF34 240A00FF */ li $t2, 255 -/* 0CEB38 800CDF38 240B0003 */ li $t3, 3 -/* 0CEB3C 800CDF3C 240C0021 */ li $t4, 33 -/* 0CEB40 800CDF40 240D0002 */ li $t5, 2 -/* 0CEB44 800CDF44 AC29CE1C */ sw $t1, %lo(D_8012CE1C)($at) -/* 0CEB48 800CDF48 A3AA001C */ sb $t2, 0x1c($sp) -/* 0CEB4C 800CDF4C A3AB001D */ sb $t3, 0x1d($sp) -/* 0CEB50 800CDF50 A3AC001E */ sb $t4, 0x1e($sp) -/* 0CEB54 800CDF54 A3AD001F */ sb $t5, 0x1f($sp) -/* 0CEB58 800CDF58 0C0335DC */ jal func_800CD770 -/* 0CEB5C 800CDF5C 97A4004E */ lhu $a0, 0x4e($sp) -/* 0CEB60 800CDF60 97AE004E */ lhu $t6, 0x4e($sp) -/* 0CEB64 800CDF64 241900FF */ li $t9, 255 -/* 0CEB68 800CDF68 A3B90042 */ sb $t9, 0x42($sp) -/* 0CEB6C 800CDF6C 000E7940 */ sll $t7, $t6, 5 -/* 0CEB70 800CDF70 004FC025 */ or $t8, $v0, $t7 -/* 0CEB74 800CDF74 A7B80020 */ sh $t8, 0x20($sp) -/* 0CEB78 800CDF78 AFA00018 */ sw $zero, 0x18($sp) -.L800CDF7C: -/* 0CEB7C 800CDF7C 8FA90018 */ lw $t1, 0x18($sp) -/* 0CEB80 800CDF80 240800FF */ li $t0, 255 -/* 0CEB84 800CDF84 03A95021 */ addu $t2, $sp, $t1 -/* 0CEB88 800CDF88 A1480022 */ sb $t0, 0x22($t2) -/* 0CEB8C 800CDF8C 8FAB0018 */ lw $t3, 0x18($sp) -/* 0CEB90 800CDF90 256C0001 */ addiu $t4, $t3, 1 -/* 0CEB94 800CDF94 29810020 */ slti $at, $t4, 0x20 -/* 0CEB98 800CDF98 1420FFF8 */ bnez $at, .L800CDF7C -/* 0CEB9C 800CDF9C AFAC0018 */ sw $t4, 0x18($sp) -/* 0CEBA0 800CDFA0 8FAD0048 */ lw $t5, 0x48($sp) -/* 0CEBA4 800CDFA4 11A0000E */ beqz $t5, .L800CDFE0 -/* 0CEBA8 800CDFA8 00000000 */ nop -/* 0CEBAC 800CDFAC 19A0000C */ blez $t5, .L800CDFE0 -/* 0CEBB0 800CDFB0 AFA00018 */ sw $zero, 0x18($sp) -.L800CDFB4: -/* 0CEBB4 800CDFB4 8FAE0044 */ lw $t6, 0x44($sp) -/* 0CEBB8 800CDFB8 A1C00000 */ sb $zero, ($t6) -/* 0CEBBC 800CDFBC 8FB90018 */ lw $t9, 0x18($sp) -/* 0CEBC0 800CDFC0 8FA90048 */ lw $t1, 0x48($sp) -/* 0CEBC4 800CDFC4 8FAF0044 */ lw $t7, 0x44($sp) -/* 0CEBC8 800CDFC8 27280001 */ addiu $t0, $t9, 1 -/* 0CEBCC 800CDFCC 0109082A */ slt $at, $t0, $t1 -/* 0CEBD0 800CDFD0 25F80001 */ addiu $t8, $t7, 1 -/* 0CEBD4 800CDFD4 AFA80018 */ sw $t0, 0x18($sp) -/* 0CEBD8 800CDFD8 1420FFF6 */ bnez $at, .L800CDFB4 -/* 0CEBDC 800CDFDC AFB80044 */ sw $t8, 0x44($sp) -.L800CDFE0: -/* 0CEBE0 800CDFE0 27AB001C */ addiu $t3, $sp, 0x1c -/* 0CEBE4 800CDFE4 256D0024 */ addiu $t5, $t3, 0x24 -/* 0CEBE8 800CDFE8 8FAA0044 */ lw $t2, 0x44($sp) -.L800CDFEC: -/* 0CEBEC 800CDFEC 8D610000 */ lw $at, ($t3) -/* 0CEBF0 800CDFF0 256B000C */ addiu $t3, $t3, 0xc -/* 0CEBF4 800CDFF4 254A000C */ addiu $t2, $t2, 0xc -/* 0CEBF8 800CDFF8 A941FFF4 */ swl $at, -0xc($t2) -/* 0CEBFC 800CDFFC B941FFF7 */ swr $at, -9($t2) -/* 0CEC00 800CE000 8D61FFF8 */ lw $at, -8($t3) -/* 0CEC04 800CE004 A941FFF8 */ swl $at, -8($t2) -/* 0CEC08 800CE008 B941FFFB */ swr $at, -5($t2) -/* 0CEC0C 800CE00C 8D61FFFC */ lw $at, -4($t3) -/* 0CEC10 800CE010 A941FFFC */ swl $at, -4($t2) -/* 0CEC14 800CE014 156DFFF5 */ bne $t3, $t5, .L800CDFEC -/* 0CEC18 800CE018 B941FFFF */ swr $at, -1($t2) -/* 0CEC1C 800CE01C 8D610000 */ lw $at, ($t3) -/* 0CEC20 800CE020 241800FE */ li $t8, 254 -/* 0CEC24 800CE024 A9410000 */ swl $at, ($t2) -/* 0CEC28 800CE028 B9410003 */ swr $at, 3($t2) -/* 0CEC2C 800CE02C 8FAE0044 */ lw $t6, 0x44($sp) -/* 0CEC30 800CE030 25CF0028 */ addiu $t7, $t6, 0x28 -/* 0CEC34 800CE034 AFAF0044 */ sw $t7, 0x44($sp) -/* 0CEC38 800CE038 A1F80000 */ sb $t8, ($t7) -/* 0CEC3C 800CE03C 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CEC40 800CE040 27BD0048 */ addiu $sp, $sp, 0x48 -/* 0CEC44 800CE044 03E00008 */ jr $ra -/* 0CEC48 800CE048 00000000 */ nop - -/* 0CEC4C 800CE04C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0CE8A0/func_800CDEE4.s b/asm/non_matchings/unknown_0CE8A0/func_800CDEE4.s new file mode 100644 index 00000000..bad18fa4 --- /dev/null +++ b/asm/non_matchings/unknown_0CE8A0/func_800CDEE4.s @@ -0,0 +1,99 @@ +glabel func_800CDEE4 +/* 0CEAE4 800CDEE4 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 0CEAE8 800CDEE8 3C0E8013 */ lui $t6, %hi(D_8012CDE0) # $t6, 0x8013 +/* 0CEAEC 800CDEEC 25CECDE0 */ addiu $t6, %lo(D_8012CDE0) # addiu $t6, $t6, -0x3220 +/* 0CEAF0 800CDEF0 AFBF0014 */ sw $ra, 0x14($sp) +/* 0CEAF4 800CDEF4 AFA40048 */ sw $a0, 0x48($sp) +/* 0CEAF8 800CDEF8 AFA5004C */ sw $a1, 0x4c($sp) +/* 0CEAFC 800CDEFC AFAE0044 */ sw $t6, 0x44($sp) +/* 0CEB00 800CDF00 AFA00018 */ sw $zero, 0x18($sp) +.L800CDF04: +/* 0CEB04 800CDF04 8FAF0018 */ lw $t7, 0x18($sp) +/* 0CEB08 800CDF08 8FB90018 */ lw $t9, 0x18($sp) +/* 0CEB0C 800CDF0C 3C018013 */ lui $at, 0x8013 +/* 0CEB10 800CDF10 000FC080 */ sll $t8, $t7, 2 +/* 0CEB14 800CDF14 00380821 */ addu $at, $at, $t8 +/* 0CEB18 800CDF18 AC20CDE0 */ sw $zero, -0x3220($at) +/* 0CEB1C 800CDF1C 27280001 */ addiu $t0, $t9, 1 +/* 0CEB20 800CDF20 29010010 */ slti $at, $t0, 0x10 +/* 0CEB24 800CDF24 1420FFF7 */ bnez $at, .L800CDF04 +/* 0CEB28 800CDF28 AFA80018 */ sw $t0, 0x18($sp) +/* 0CEB2C 800CDF2C 24090001 */ li $t1, 1 +/* 0CEB30 800CDF30 3C018013 */ lui $at, %hi(D_8012CE1C) # $at, 0x8013 +/* 0CEB34 800CDF34 240A00FF */ li $t2, 255 +/* 0CEB38 800CDF38 240B0003 */ li $t3, 3 +/* 0CEB3C 800CDF3C 240C0021 */ li $t4, 33 +/* 0CEB40 800CDF40 240D0002 */ li $t5, 2 +/* 0CEB44 800CDF44 AC29CE1C */ sw $t1, %lo(D_8012CE1C)($at) +/* 0CEB48 800CDF48 A3AA001C */ sb $t2, 0x1c($sp) +/* 0CEB4C 800CDF4C A3AB001D */ sb $t3, 0x1d($sp) +/* 0CEB50 800CDF50 A3AC001E */ sb $t4, 0x1e($sp) +/* 0CEB54 800CDF54 A3AD001F */ sb $t5, 0x1f($sp) +/* 0CEB58 800CDF58 0C0335DC */ jal func_800CD770 +/* 0CEB5C 800CDF5C 97A4004E */ lhu $a0, 0x4e($sp) +/* 0CEB60 800CDF60 97AE004E */ lhu $t6, 0x4e($sp) +/* 0CEB64 800CDF64 241900FF */ li $t9, 255 +/* 0CEB68 800CDF68 A3B90042 */ sb $t9, 0x42($sp) +/* 0CEB6C 800CDF6C 000E7940 */ sll $t7, $t6, 5 +/* 0CEB70 800CDF70 004FC025 */ or $t8, $v0, $t7 +/* 0CEB74 800CDF74 A7B80020 */ sh $t8, 0x20($sp) +/* 0CEB78 800CDF78 AFA00018 */ sw $zero, 0x18($sp) +.L800CDF7C: +/* 0CEB7C 800CDF7C 8FA90018 */ lw $t1, 0x18($sp) +/* 0CEB80 800CDF80 240800FF */ li $t0, 255 +/* 0CEB84 800CDF84 03A95021 */ addu $t2, $sp, $t1 +/* 0CEB88 800CDF88 A1480022 */ sb $t0, 0x22($t2) +/* 0CEB8C 800CDF8C 8FAB0018 */ lw $t3, 0x18($sp) +/* 0CEB90 800CDF90 256C0001 */ addiu $t4, $t3, 1 +/* 0CEB94 800CDF94 29810020 */ slti $at, $t4, 0x20 +/* 0CEB98 800CDF98 1420FFF8 */ bnez $at, .L800CDF7C +/* 0CEB9C 800CDF9C AFAC0018 */ sw $t4, 0x18($sp) +/* 0CEBA0 800CDFA0 8FAD0048 */ lw $t5, 0x48($sp) +/* 0CEBA4 800CDFA4 11A0000E */ beqz $t5, .L800CDFE0 +/* 0CEBA8 800CDFA8 00000000 */ nop +/* 0CEBAC 800CDFAC 19A0000C */ blez $t5, .L800CDFE0 +/* 0CEBB0 800CDFB0 AFA00018 */ sw $zero, 0x18($sp) +.L800CDFB4: +/* 0CEBB4 800CDFB4 8FAE0044 */ lw $t6, 0x44($sp) +/* 0CEBB8 800CDFB8 A1C00000 */ sb $zero, ($t6) +/* 0CEBBC 800CDFBC 8FB90018 */ lw $t9, 0x18($sp) +/* 0CEBC0 800CDFC0 8FA90048 */ lw $t1, 0x48($sp) +/* 0CEBC4 800CDFC4 8FAF0044 */ lw $t7, 0x44($sp) +/* 0CEBC8 800CDFC8 27280001 */ addiu $t0, $t9, 1 +/* 0CEBCC 800CDFCC 0109082A */ slt $at, $t0, $t1 +/* 0CEBD0 800CDFD0 25F80001 */ addiu $t8, $t7, 1 +/* 0CEBD4 800CDFD4 AFA80018 */ sw $t0, 0x18($sp) +/* 0CEBD8 800CDFD8 1420FFF6 */ bnez $at, .L800CDFB4 +/* 0CEBDC 800CDFDC AFB80044 */ sw $t8, 0x44($sp) +.L800CDFE0: +/* 0CEBE0 800CDFE0 27AB001C */ addiu $t3, $sp, 0x1c +/* 0CEBE4 800CDFE4 256D0024 */ addiu $t5, $t3, 0x24 +/* 0CEBE8 800CDFE8 8FAA0044 */ lw $t2, 0x44($sp) +.L800CDFEC: +/* 0CEBEC 800CDFEC 8D610000 */ lw $at, ($t3) +/* 0CEBF0 800CDFF0 256B000C */ addiu $t3, $t3, 0xc +/* 0CEBF4 800CDFF4 254A000C */ addiu $t2, $t2, 0xc +/* 0CEBF8 800CDFF8 A941FFF4 */ swl $at, -0xc($t2) +/* 0CEBFC 800CDFFC B941FFF7 */ swr $at, -9($t2) +/* 0CEC00 800CE000 8D61FFF8 */ lw $at, -8($t3) +/* 0CEC04 800CE004 A941FFF8 */ swl $at, -8($t2) +/* 0CEC08 800CE008 B941FFFB */ swr $at, -5($t2) +/* 0CEC0C 800CE00C 8D61FFFC */ lw $at, -4($t3) +/* 0CEC10 800CE010 A941FFFC */ swl $at, -4($t2) +/* 0CEC14 800CE014 156DFFF5 */ bne $t3, $t5, .L800CDFEC +/* 0CEC18 800CE018 B941FFFF */ swr $at, -1($t2) +/* 0CEC1C 800CE01C 8D610000 */ lw $at, ($t3) +/* 0CEC20 800CE020 241800FE */ li $t8, 254 +/* 0CEC24 800CE024 A9410000 */ swl $at, ($t2) +/* 0CEC28 800CE028 B9410003 */ swr $at, 3($t2) +/* 0CEC2C 800CE02C 8FAE0044 */ lw $t6, 0x44($sp) +/* 0CEC30 800CE030 25CF0028 */ addiu $t7, $t6, 0x28 +/* 0CEC34 800CE034 AFAF0044 */ sw $t7, 0x44($sp) +/* 0CEC38 800CE038 A1F80000 */ sb $t8, ($t7) +/* 0CEC3C 800CE03C 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CEC40 800CE040 27BD0048 */ addiu $sp, $sp, 0x48 +/* 0CEC44 800CE044 03E00008 */ jr $ra +/* 0CEC48 800CE048 00000000 */ nop + +/* 0CEC4C 800CE04C 00000000 */ nop + diff --git a/asm/unknown_0CEC50.s b/asm/non_matchings/unknown_0CEC50/func_800CE050.s old mode 100755 new mode 100644 similarity index 94% rename from asm/unknown_0CEC50.s rename to asm/non_matchings/unknown_0CEC50/func_800CE050.s index 4e681bc7..c1067da1 --- a/asm/unknown_0CEC50.s +++ b/asm/non_matchings/unknown_0CEC50/func_800CE050.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800CE050 /* 0CEC50 800CE050 28C10010 */ slti $at, $a2, 0x10 /* 0CEC54 800CE054 14200037 */ bnez $at, .L800CE134 @@ -91,3 +83,4 @@ glabel func_800CE050 /* 0CED68 800CE168 24020001 */ li $v0, 1 /* 0CED6C 800CE16C 00000000 */ nop + diff --git a/asm/unknown_0CEE10.s b/asm/non_matchings/unknown_0CEE10/func_800CE210.s old mode 100755 new mode 100644 similarity index 87% rename from asm/unknown_0CEE10.s rename to asm/non_matchings/unknown_0CEE10/func_800CE210.s index fe216662..8930f16f --- a/asm/unknown_0CEE10.s +++ b/asm/non_matchings/unknown_0CEE10/func_800CE210.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800CE210 /* 0CEE10 800CE210 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 0CEE14 800CE214 AFBF0014 */ sw $ra, 0x14($sp) @@ -38,3 +30,4 @@ glabel func_800CE210 /* 0CEE78 800CE278 00000000 */ nop /* 0CEE7C 800CE27C 00000000 */ nop + diff --git a/asm/unknown_0CF070.s b/asm/non_matchings/unknown_0CF070/func_800CE470.s old mode 100755 new mode 100644 similarity index 94% rename from asm/unknown_0CF070.s rename to asm/non_matchings/unknown_0CF070/func_800CE470.s index 4214ac03..6f3c6e37 --- a/asm/unknown_0CF070.s +++ b/asm/non_matchings/unknown_0CF070/func_800CE470.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800CE470 /* 0CF070 800CE470 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 0CF074 800CE474 3C0E8013 */ lui $t6, %hi(D_8012CE40) # $t6, 0x8013 @@ -79,3 +71,4 @@ glabel func_800CE470 /* 0CF174 800CE574 00000000 */ nop /* 0CF178 800CE578 00000000 */ nop /* 0CF17C 800CE57C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CF330/__ll_div.s b/asm/non_matchings/unknown_0CF330/__ll_div.s new file mode 100644 index 00000000..4adac6f2 --- /dev/null +++ b/asm/non_matchings/unknown_0CF330/__ll_div.s @@ -0,0 +1,27 @@ +glabel __ll_div +/* 0CF76C 800CEB6C AFA40000 */ sw $a0, ($sp) +/* 0CF770 800CEB70 AFA50004 */ sw $a1, 4($sp) +/* 0CF774 800CEB74 AFA60008 */ sw $a2, 8($sp) +/* 0CF778 800CEB78 AFA7000C */ sw $a3, 0xc($sp) +/* 0CF77C 800CEB7C DFAF0008 */ ld $t7, 8($sp) +/* 0CF780 800CEB80 DFAE0000 */ ld $t6, ($sp) +/* 0CF784 800CEB84 01CF001E */ ddiv $zero, $t6, $t7 +/* 0CF788 800CEB88 00000000 */ nop +/* 0CF78C 800CEB8C 15E00002 */ bnez $t7, .L800CEB98 +/* 0CF790 800CEB90 00000000 */ nop +/* 0CF794 800CEB94 0007000D */ break 7 +.L800CEB98: +/* 0CF798 800CEB98 6401FFFF */ daddiu $at, $zero, -1 +/* 0CF79C 800CEB9C 15E10005 */ bne $t7, $at, .L800CEBB4 +/* 0CF7A0 800CEBA0 64010001 */ daddiu $at, $zero, 1 +/* 0CF7A4 800CEBA4 00010FFC */ dsll32 $at, $at, 0x1f +/* 0CF7A8 800CEBA8 15C10002 */ bne $t6, $at, .L800CEBB4 +/* 0CF7AC 800CEBAC 00000000 */ nop +/* 0CF7B0 800CEBB0 0006000D */ break 6 +.L800CEBB4: +/* 0CF7B4 800CEBB4 00001012 */ mflo $v0 +/* 0CF7B8 800CEBB8 0002183C */ dsll32 $v1, $v0, 0 +/* 0CF7BC 800CEBBC 0003183F */ dsra32 $v1, $v1, 0 +/* 0CF7C0 800CEBC0 03E00008 */ jr $ra +/* 0CF7C4 800CEBC4 0002103F */ dsra32 $v0, $v0, 0 + diff --git a/asm/non_matchings/unknown_0CF330/__ll_lshift.s b/asm/non_matchings/unknown_0CF330/__ll_lshift.s new file mode 100644 index 00000000..7b6e759f --- /dev/null +++ b/asm/non_matchings/unknown_0CF330/__ll_lshift.s @@ -0,0 +1,30 @@ +glabel __ll_lshift +/* 0CF704 800CEB04 AFA40000 */ sw $a0, ($sp) +/* 0CF708 800CEB08 AFA50004 */ sw $a1, 4($sp) +/* 0CF70C 800CEB0C AFA60008 */ sw $a2, 8($sp) +/* 0CF710 800CEB10 AFA7000C */ sw $a3, 0xc($sp) +/* 0CF714 800CEB14 DFAF0008 */ ld $t7, 8($sp) +/* 0CF718 800CEB18 DFAE0000 */ ld $t6, ($sp) +/* 0CF71C 800CEB1C 01EE1014 */ dsllv $v0, $t6, $t7 +/* 0CF720 800CEB20 0002183C */ dsll32 $v1, $v0, 0 +/* 0CF724 800CEB24 0003183F */ dsra32 $v1, $v1, 0 +/* 0CF728 800CEB28 03E00008 */ jr $ra +/* 0CF72C 800CEB2C 0002103F */ dsra32 $v0, $v0, 0 + +/* 0CF730 800CEB30 AFA40000 */ sw $a0, ($sp) +/* 0CF734 800CEB34 AFA50004 */ sw $a1, 4($sp) +/* 0CF738 800CEB38 AFA60008 */ sw $a2, 8($sp) +/* 0CF73C 800CEB3C AFA7000C */ sw $a3, 0xc($sp) +/* 0CF740 800CEB40 DFAF0008 */ ld $t7, 8($sp) +/* 0CF744 800CEB44 DFAE0000 */ ld $t6, ($sp) +/* 0CF748 800CEB48 01CF001F */ ddivu $zero, $t6, $t7 +/* 0CF74C 800CEB4C 15E00002 */ bnez $t7, .L800CEB58 +/* 0CF750 800CEB50 00000000 */ nop +/* 0CF754 800CEB54 0007000D */ break 7 +.L800CEB58: +/* 0CF758 800CEB58 00001010 */ mfhi $v0 +/* 0CF75C 800CEB5C 0002183C */ dsll32 $v1, $v0, 0 +/* 0CF760 800CEB60 0003183F */ dsra32 $v1, $v1, 0 +/* 0CF764 800CEB64 03E00008 */ jr $ra +/* 0CF768 800CEB68 0002103F */ dsra32 $v0, $v0, 0 + diff --git a/asm/non_matchings/unknown_0CF330/__ll_mul.s b/asm/non_matchings/unknown_0CF330/__ll_mul.s new file mode 100644 index 00000000..c625c89b --- /dev/null +++ b/asm/non_matchings/unknown_0CF330/__ll_mul.s @@ -0,0 +1,14 @@ +glabel __ll_mul +/* 0CF7C8 800CEBC8 AFA40000 */ sw $a0, ($sp) +/* 0CF7CC 800CEBCC AFA50004 */ sw $a1, 4($sp) +/* 0CF7D0 800CEBD0 AFA60008 */ sw $a2, 8($sp) +/* 0CF7D4 800CEBD4 AFA7000C */ sw $a3, 0xc($sp) +/* 0CF7D8 800CEBD8 DFAF0008 */ ld $t7, 8($sp) +/* 0CF7DC 800CEBDC DFAE0000 */ ld $t6, ($sp) +/* 0CF7E0 800CEBE0 01CF001D */ dmultu $t6, $t7 +/* 0CF7E4 800CEBE4 00001012 */ mflo $v0 +/* 0CF7E8 800CEBE8 0002183C */ dsll32 $v1, $v0, 0 +/* 0CF7EC 800CEBEC 0003183F */ dsra32 $v1, $v1, 0 +/* 0CF7F0 800CEBF0 03E00008 */ jr $ra +/* 0CF7F4 800CEBF4 0002103F */ dsra32 $v0, $v0, 0 + diff --git a/asm/non_matchings/unknown_0CF330/__ull_div.s b/asm/non_matchings/unknown_0CF330/__ull_div.s new file mode 100644 index 00000000..a5f5bd33 --- /dev/null +++ b/asm/non_matchings/unknown_0CF330/__ull_div.s @@ -0,0 +1,18 @@ +glabel __ull_div +/* 0CF6C8 800CEAC8 AFA40000 */ sw $a0, ($sp) +/* 0CF6CC 800CEACC AFA50004 */ sw $a1, 4($sp) +/* 0CF6D0 800CEAD0 AFA60008 */ sw $a2, 8($sp) +/* 0CF6D4 800CEAD4 AFA7000C */ sw $a3, 0xc($sp) +/* 0CF6D8 800CEAD8 DFAF0008 */ ld $t7, 8($sp) +/* 0CF6DC 800CEADC DFAE0000 */ ld $t6, ($sp) +/* 0CF6E0 800CEAE0 01CF001F */ ddivu $zero, $t6, $t7 +/* 0CF6E4 800CEAE4 15E00002 */ bnez $t7, .L800CEAF0 +/* 0CF6E8 800CEAE8 00000000 */ nop +/* 0CF6EC 800CEAEC 0007000D */ break 7 +.L800CEAF0: +/* 0CF6F0 800CEAF0 00001012 */ mflo $v0 +/* 0CF6F4 800CEAF4 0002183C */ dsll32 $v1, $v0, 0 +/* 0CF6F8 800CEAF8 0003183F */ dsra32 $v1, $v1, 0 +/* 0CF6FC 800CEAFC 03E00008 */ jr $ra +/* 0CF700 800CEB00 0002103F */ dsra32 $v0, $v0, 0 + diff --git a/asm/non_matchings/unknown_0CF330/__ull_divremi.s b/asm/non_matchings/unknown_0CF330/__ull_divremi.s new file mode 100644 index 00000000..7dc095a6 --- /dev/null +++ b/asm/non_matchings/unknown_0CF330/__ull_divremi.s @@ -0,0 +1,85 @@ +glabel __ull_divremi +/* 0CF7F8 800CEBF8 87AF0012 */ lh $t7, 0x12($sp) +/* 0CF7FC 800CEBFC AFA60008 */ sw $a2, 8($sp) +/* 0CF800 800CEC00 AFA7000C */ sw $a3, 0xc($sp) +/* 0CF804 800CEC04 DFAE0008 */ ld $t6, 8($sp) +/* 0CF808 800CEC08 01E0C025 */ move $t8, $t7 +/* 0CF80C 800CEC0C 0300C825 */ move $t9, $t8 +/* 0CF810 800CEC10 01D9001F */ ddivu $zero, $t6, $t9 +/* 0CF814 800CEC14 17200002 */ bnez $t9, .L800CEC20 +/* 0CF818 800CEC18 00000000 */ nop +/* 0CF81C 800CEC1C 0007000D */ break 7 +.L800CEC20: +/* 0CF820 800CEC20 00004012 */ mflo $t0 +/* 0CF824 800CEC24 FC880000 */ sd $t0, ($a0) +/* 0CF828 800CEC28 87AA0012 */ lh $t2, 0x12($sp) +/* 0CF82C 800CEC2C DFA90008 */ ld $t1, 8($sp) +/* 0CF830 800CEC30 01405825 */ move $t3, $t2 +/* 0CF834 800CEC34 01606025 */ move $t4, $t3 +/* 0CF838 800CEC38 012C001F */ ddivu $zero, $t1, $t4 +/* 0CF83C 800CEC3C 15800002 */ bnez $t4, .L800CEC48 +/* 0CF840 800CEC40 00000000 */ nop +/* 0CF844 800CEC44 0007000D */ break 7 +.L800CEC48: +/* 0CF848 800CEC48 00006810 */ mfhi $t5 +/* 0CF84C 800CEC4C FCAD0000 */ sd $t5, ($a1) +/* 0CF850 800CEC50 03E00008 */ jr $ra +/* 0CF854 800CEC54 00000000 */ nop + +/* 0CF858 800CEC58 27BDFFF8 */ addiu $sp, $sp, -8 +/* 0CF85C 800CEC5C AFA40008 */ sw $a0, 8($sp) +/* 0CF860 800CEC60 AFA5000C */ sw $a1, 0xc($sp) +/* 0CF864 800CEC64 AFA60010 */ sw $a2, 0x10($sp) +/* 0CF868 800CEC68 AFA70014 */ sw $a3, 0x14($sp) +/* 0CF86C 800CEC6C DFAF0010 */ ld $t7, 0x10($sp) +/* 0CF870 800CEC70 DFAE0008 */ ld $t6, 8($sp) +/* 0CF874 800CEC74 01CF001E */ ddiv $zero, $t6, $t7 +/* 0CF878 800CEC78 00000000 */ nop +/* 0CF87C 800CEC7C 15E00002 */ bnez $t7, .L800CEC88 +/* 0CF880 800CEC80 00000000 */ nop +/* 0CF884 800CEC84 0007000D */ break 7 +.L800CEC88: +/* 0CF888 800CEC88 6401FFFF */ daddiu $at, $zero, -1 +/* 0CF88C 800CEC8C 15E10005 */ bne $t7, $at, .L800CECA4 +/* 0CF890 800CEC90 64010001 */ daddiu $at, $zero, 1 +/* 0CF894 800CEC94 00010FFC */ dsll32 $at, $at, 0x1f +/* 0CF898 800CEC98 15C10002 */ bne $t6, $at, .L800CECA4 +/* 0CF89C 800CEC9C 00000000 */ nop +/* 0CF8A0 800CECA0 0006000D */ break 6 +.L800CECA4: +/* 0CF8A4 800CECA4 0000C010 */ mfhi $t8 +/* 0CF8A8 800CECA8 FFB80000 */ sd $t8, ($sp) +/* 0CF8AC 800CECAC 07010003 */ bgez $t8, .L800CECBC +/* 0CF8B0 800CECB0 00000000 */ nop +/* 0CF8B4 800CECB4 1DE00007 */ bgtz $t7, .L800CECD4 +/* 0CF8B8 800CECB8 00000000 */ nop +.L800CECBC: +/* 0CF8BC 800CECBC DFB90000 */ ld $t9, ($sp) +/* 0CF8C0 800CECC0 1B200008 */ blez $t9, .L800CECE4 +/* 0CF8C4 800CECC4 00000000 */ nop +/* 0CF8C8 800CECC8 DFA80010 */ ld $t0, 0x10($sp) +/* 0CF8CC 800CECCC 05010005 */ bgez $t0, .L800CECE4 +/* 0CF8D0 800CECD0 00000000 */ nop +.L800CECD4: +/* 0CF8D4 800CECD4 DFA90000 */ ld $t1, ($sp) +/* 0CF8D8 800CECD8 DFAA0010 */ ld $t2, 0x10($sp) +/* 0CF8DC 800CECDC 012A582D */ daddu $t3, $t1, $t2 +/* 0CF8E0 800CECE0 FFAB0000 */ sd $t3, ($sp) +.L800CECE4: +/* 0CF8E4 800CECE4 8FA20000 */ lw $v0, ($sp) +/* 0CF8E8 800CECE8 8FA30004 */ lw $v1, 4($sp) +/* 0CF8EC 800CECEC 03E00008 */ jr $ra +/* 0CF8F0 800CECF0 27BD0008 */ addiu $sp, $sp, 8 + +/* 0CF8F4 800CECF4 AFA40000 */ sw $a0, ($sp) +/* 0CF8F8 800CECF8 AFA50004 */ sw $a1, 4($sp) +/* 0CF8FC 800CECFC AFA60008 */ sw $a2, 8($sp) +/* 0CF900 800CED00 AFA7000C */ sw $a3, 0xc($sp) +/* 0CF904 800CED04 DFAF0008 */ ld $t7, 8($sp) +/* 0CF908 800CED08 DFAE0000 */ ld $t6, ($sp) +/* 0CF90C 800CED0C 01EE1017 */ dsrav $v0, $t6, $t7 +/* 0CF910 800CED10 0002183C */ dsll32 $v1, $v0, 0 +/* 0CF914 800CED14 0003183F */ dsra32 $v1, $v1, 0 +/* 0CF918 800CED18 03E00008 */ jr $ra +/* 0CF91C 800CED1C 0002103F */ dsra32 $v0, $v0, 0 + diff --git a/asm/non_matchings/unknown_0CF330/__ull_rem.s b/asm/non_matchings/unknown_0CF330/__ull_rem.s new file mode 100644 index 00000000..32473a98 --- /dev/null +++ b/asm/non_matchings/unknown_0CF330/__ull_rem.s @@ -0,0 +1,18 @@ +glabel __ull_rem +/* 0CF68C 800CEA8C AFA40000 */ sw $a0, ($sp) +/* 0CF690 800CEA90 AFA50004 */ sw $a1, 4($sp) +/* 0CF694 800CEA94 AFA60008 */ sw $a2, 8($sp) +/* 0CF698 800CEA98 AFA7000C */ sw $a3, 0xc($sp) +/* 0CF69C 800CEA9C DFAF0008 */ ld $t7, 8($sp) +/* 0CF6A0 800CEAA0 DFAE0000 */ ld $t6, ($sp) +/* 0CF6A4 800CEAA4 01CF001F */ ddivu $zero, $t6, $t7 +/* 0CF6A8 800CEAA8 15E00002 */ bnez $t7, .L800CEAB4 +/* 0CF6AC 800CEAAC 00000000 */ nop +/* 0CF6B0 800CEAB0 0007000D */ break 7 +.L800CEAB4: +/* 0CF6B4 800CEAB4 00001010 */ mfhi $v0 +/* 0CF6B8 800CEAB8 0002183C */ dsll32 $v1, $v0, 0 +/* 0CF6BC 800CEABC 0003183F */ dsra32 $v1, $v1, 0 +/* 0CF6C0 800CEAC0 03E00008 */ jr $ra +/* 0CF6C4 800CEAC4 0002103F */ dsra32 $v0, $v0, 0 + diff --git a/asm/non_matchings/unknown_0CF330/__ull_rshift.s b/asm/non_matchings/unknown_0CF330/__ull_rshift.s new file mode 100644 index 00000000..e80fbb34 --- /dev/null +++ b/asm/non_matchings/unknown_0CF330/__ull_rshift.s @@ -0,0 +1,13 @@ +glabel __ull_rshift +/* 0CF660 800CEA60 AFA40000 */ sw $a0, ($sp) +/* 0CF664 800CEA64 AFA50004 */ sw $a1, 4($sp) +/* 0CF668 800CEA68 AFA60008 */ sw $a2, 8($sp) +/* 0CF66C 800CEA6C AFA7000C */ sw $a3, 0xc($sp) +/* 0CF670 800CEA70 DFAF0008 */ ld $t7, 8($sp) +/* 0CF674 800CEA74 DFAE0000 */ ld $t6, ($sp) +/* 0CF678 800CEA78 01EE1016 */ dsrlv $v0, $t6, $t7 +/* 0CF67C 800CEA7C 0002183C */ dsll32 $v1, $v0, 0 +/* 0CF680 800CEA80 0003183F */ dsra32 $v1, $v1, 0 +/* 0CF684 800CEA84 03E00008 */ jr $ra +/* 0CF688 800CEA88 0002103F */ dsra32 $v0, $v0, 0 + diff --git a/asm/non_matchings/unknown_0CF330/func_800CE730.s b/asm/non_matchings/unknown_0CF330/func_800CE730.s new file mode 100644 index 00000000..7d4c1db8 --- /dev/null +++ b/asm/non_matchings/unknown_0CF330/func_800CE730.s @@ -0,0 +1,72 @@ +glabel func_800CE730 +/* 0CF330 800CE730 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0CF334 800CE734 3C0E8013 */ lui $t6, %hi(D_8012CE40) # $t6, 0x8013 +/* 0CF338 800CE738 25CECE40 */ addiu $t6, %lo(D_8012CE40) # addiu $t6, $t6, -0x31c0 +/* 0CF33C 800CE73C 308400FF */ andi $a0, $a0, 0xff +/* 0CF340 800CE740 AFAE0014 */ sw $t6, 0x14($sp) +/* 0CF344 800CE744 AFA00004 */ sw $zero, 4($sp) +.L800CE748: +/* 0CF348 800CE748 8FB80004 */ lw $t8, 4($sp) +/* 0CF34C 800CE74C 8FA80004 */ lw $t0, 4($sp) +/* 0CF350 800CE750 3C018013 */ lui $at, 0x8013 +/* 0CF354 800CE754 0018C880 */ sll $t9, $t8, 2 +/* 0CF358 800CE758 00390821 */ addu $at, $at, $t9 +/* 0CF35C 800CE75C 240F00FF */ li $t7, 255 +/* 0CF360 800CE760 AC2FCE40 */ sw $t7, -0x31c0($at) +/* 0CF364 800CE764 25090001 */ addiu $t1, $t0, 1 +/* 0CF368 800CE768 29210010 */ slti $at, $t1, 0x10 +/* 0CF36C 800CE76C 1420FFF6 */ bnez $at, .L800CE748 +/* 0CF370 800CE770 AFA90004 */ sw $t1, 4($sp) +/* 0CF374 800CE774 240A0001 */ li $t2, 1 +/* 0CF378 800CE778 3C018013 */ lui $at, %hi(D_8012CE7C) # $at, 0x8013 +/* 0CF37C 800CE77C 240B000A */ li $t3, 10 +/* 0CF380 800CE780 240C0001 */ li $t4, 1 +/* 0CF384 800CE784 240D0005 */ li $t5, 5 +/* 0CF388 800CE788 AC2ACE7C */ sw $t2, %lo(D_8012CE7C)($at) +/* 0CF38C 800CE78C A3AB0008 */ sb $t3, 8($sp) +/* 0CF390 800CE790 A3AC0009 */ sb $t4, 9($sp) +/* 0CF394 800CE794 A3AD000A */ sb $t5, 0xa($sp) +/* 0CF398 800CE798 A3A4000B */ sb $a0, 0xb($sp) +/* 0CF39C 800CE79C AFA00004 */ sw $zero, 4($sp) +.L800CE7A0: +/* 0CF3A0 800CE7A0 8FB80004 */ lw $t8, 4($sp) +/* 0CF3A4 800CE7A4 90AE0000 */ lbu $t6, ($a1) +/* 0CF3A8 800CE7A8 24A50001 */ addiu $a1, $a1, 1 +/* 0CF3AC 800CE7AC 03B87821 */ addu $t7, $sp, $t8 +/* 0CF3B0 800CE7B0 A1EE000C */ sb $t6, 0xc($t7) +/* 0CF3B4 800CE7B4 8FB90004 */ lw $t9, 4($sp) +/* 0CF3B8 800CE7B8 27280001 */ addiu $t0, $t9, 1 +/* 0CF3BC 800CE7BC 29010008 */ slti $at, $t0, 8 +/* 0CF3C0 800CE7C0 1420FFF7 */ bnez $at, .L800CE7A0 +/* 0CF3C4 800CE7C4 AFA80004 */ sw $t0, 4($sp) +/* 0CF3C8 800CE7C8 AFA00004 */ sw $zero, 4($sp) +.L800CE7CC: +/* 0CF3CC 800CE7CC 8FA90014 */ lw $t1, 0x14($sp) +/* 0CF3D0 800CE7D0 A1200000 */ sb $zero, ($t1) +/* 0CF3D4 800CE7D4 8FAC0004 */ lw $t4, 4($sp) +/* 0CF3D8 800CE7D8 8FAA0014 */ lw $t2, 0x14($sp) +/* 0CF3DC 800CE7DC 258D0001 */ addiu $t5, $t4, 1 +/* 0CF3E0 800CE7E0 29A10004 */ slti $at, $t5, 4 +/* 0CF3E4 800CE7E4 254B0001 */ addiu $t3, $t2, 1 +/* 0CF3E8 800CE7E8 AFAD0004 */ sw $t5, 4($sp) +/* 0CF3EC 800CE7EC 1420FFF7 */ bnez $at, .L800CE7CC +/* 0CF3F0 800CE7F0 AFAB0014 */ sw $t3, 0x14($sp) +/* 0CF3F4 800CE7F4 27B80008 */ addiu $t8, $sp, 8 +/* 0CF3F8 800CE7F8 8F010000 */ lw $at, ($t8) +/* 0CF3FC 800CE7FC 8FAE0014 */ lw $t6, 0x14($sp) +/* 0CF400 800CE800 240A00FE */ li $t2, 254 +/* 0CF404 800CE804 A9C10000 */ swl $at, ($t6) +/* 0CF408 800CE808 B9C10003 */ swr $at, 3($t6) +/* 0CF40C 800CE80C 8F190004 */ lw $t9, 4($t8) +/* 0CF410 800CE810 A9D90004 */ swl $t9, 4($t6) +/* 0CF414 800CE814 B9D90007 */ swr $t9, 7($t6) +/* 0CF418 800CE818 8F010008 */ lw $at, 8($t8) +/* 0CF41C 800CE81C A9C10008 */ swl $at, 8($t6) +/* 0CF420 800CE820 B9C1000B */ swr $at, 0xb($t6) +/* 0CF424 800CE824 8FA80014 */ lw $t0, 0x14($sp) +/* 0CF428 800CE828 2509000C */ addiu $t1, $t0, 0xc +/* 0CF42C 800CE82C AFA90014 */ sw $t1, 0x14($sp) +/* 0CF430 800CE830 A12A0000 */ sb $t2, ($t1) +/* 0CF434 800CE834 03E00008 */ jr $ra +/* 0CF438 800CE838 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_0CF330/func_800CE83C.s b/asm/non_matchings/unknown_0CF330/func_800CE83C.s new file mode 100644 index 00000000..27949ee9 --- /dev/null +++ b/asm/non_matchings/unknown_0CF330/func_800CE83C.s @@ -0,0 +1,145 @@ +glabel func_800CE83C +/* 0CF43C 800CE83C 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0CF440 800CE840 3C0E8013 */ lui $t6, %hi(D_8012CE40) # $t6, 0x8013 +/* 0CF444 800CE844 25CECE40 */ addiu $t6, %lo(D_8012CE40) # addiu $t6, $t6, -0x31c0 +/* 0CF448 800CE848 AFBF0014 */ sw $ra, 0x14($sp) +/* 0CF44C 800CE84C AFA40030 */ sw $a0, 0x30($sp) +/* 0CF450 800CE850 AFA50034 */ sw $a1, 0x34($sp) +/* 0CF454 800CE854 AFA0002C */ sw $zero, 0x2c($sp) +/* 0CF458 800CE858 AFAE0024 */ sw $t6, 0x24($sp) +/* 0CF45C 800CE85C AFA00028 */ sw $zero, 0x28($sp) +.L800CE860: +/* 0CF460 800CE860 8FAF0028 */ lw $t7, 0x28($sp) +/* 0CF464 800CE864 8FB90028 */ lw $t9, 0x28($sp) +/* 0CF468 800CE868 3C018013 */ lui $at, 0x8013 +/* 0CF46C 800CE86C 000FC080 */ sll $t8, $t7, 2 +/* 0CF470 800CE870 00380821 */ addu $at, $at, $t8 +/* 0CF474 800CE874 AC20CE40 */ sw $zero, -0x31c0($at) +/* 0CF478 800CE878 27280001 */ addiu $t0, $t9, 1 +/* 0CF47C 800CE87C 29010010 */ slti $at, $t0, 0x10 +/* 0CF480 800CE880 1420FFF7 */ bnez $at, .L800CE860 +/* 0CF484 800CE884 AFA80028 */ sw $t0, 0x28($sp) +/* 0CF488 800CE888 3C0A8013 */ lui $t2, %hi(D_8012CE40) # $t2, 0x8013 +/* 0CF48C 800CE88C 24090001 */ li $t1, 1 +/* 0CF490 800CE890 3C018013 */ lui $at, %hi(D_8012CE7C) # $at, 0x8013 +/* 0CF494 800CE894 254ACE40 */ addiu $t2, %lo(D_8012CE40) # addiu $t2, $t2, -0x31c0 +/* 0CF498 800CE898 AC29CE7C */ sw $t1, %lo(D_8012CE7C)($at) +/* 0CF49C 800CE89C AFAA0024 */ sw $t2, 0x24($sp) +/* 0CF4A0 800CE8A0 AFA00028 */ sw $zero, 0x28($sp) +.L800CE8A4: +/* 0CF4A4 800CE8A4 8FAB0024 */ lw $t3, 0x24($sp) +/* 0CF4A8 800CE8A8 A1600000 */ sb $zero, ($t3) +/* 0CF4AC 800CE8AC 8FAE0028 */ lw $t6, 0x28($sp) +/* 0CF4B0 800CE8B0 8FAC0024 */ lw $t4, 0x24($sp) +/* 0CF4B4 800CE8B4 25CF0001 */ addiu $t7, $t6, 1 +/* 0CF4B8 800CE8B8 29E10004 */ slti $at, $t7, 4 +/* 0CF4BC 800CE8BC 258D0001 */ addiu $t5, $t4, 1 +/* 0CF4C0 800CE8C0 AFAF0028 */ sw $t7, 0x28($sp) +/* 0CF4C4 800CE8C4 1420FFF7 */ bnez $at, .L800CE8A4 +/* 0CF4C8 800CE8C8 AFAD0024 */ sw $t5, 0x24($sp) +/* 0CF4CC 800CE8CC 241800FF */ li $t8, 255 +/* 0CF4D0 800CE8D0 24190001 */ li $t9, 1 +/* 0CF4D4 800CE8D4 24080003 */ li $t0, 3 +/* 0CF4D8 800CE8D8 240900FF */ li $t1, 255 +/* 0CF4DC 800CE8DC 240A00FF */ li $t2, 255 +/* 0CF4E0 800CE8E0 240B00FF */ li $t3, 255 +/* 0CF4E4 800CE8E4 240C00FF */ li $t4, 255 +/* 0CF4E8 800CE8E8 A3B8001C */ sb $t8, 0x1c($sp) +/* 0CF4EC 800CE8EC A3B9001D */ sb $t9, 0x1d($sp) +/* 0CF4F0 800CE8F0 A3A8001E */ sb $t0, 0x1e($sp) +/* 0CF4F4 800CE8F4 A3A0001F */ sb $zero, 0x1f($sp) +/* 0CF4F8 800CE8F8 A3A90020 */ sb $t1, 0x20($sp) +/* 0CF4FC 800CE8FC A3AA0021 */ sb $t2, 0x21($sp) +/* 0CF500 800CE900 A3AB0022 */ sb $t3, 0x22($sp) +/* 0CF504 800CE904 A3AC0023 */ sb $t4, 0x23($sp) +/* 0CF508 800CE908 27AE001C */ addiu $t6, $sp, 0x1c +/* 0CF50C 800CE90C 8DC10000 */ lw $at, ($t6) +/* 0CF510 800CE910 8FAD0024 */ lw $t5, 0x24($sp) +/* 0CF514 800CE914 240A00FE */ li $t2, 254 +/* 0CF518 800CE918 3C058013 */ lui $a1, %hi(D_8012CE40) # $a1, 0x8013 +/* 0CF51C 800CE91C A9A10000 */ swl $at, ($t5) +/* 0CF520 800CE920 B9A10003 */ swr $at, 3($t5) +/* 0CF524 800CE924 8DD90004 */ lw $t9, 4($t6) +/* 0CF528 800CE928 24A5CE40 */ addiu $a1, %lo(D_8012CE40) # addiu $a1, $a1, -0x31c0 +/* 0CF52C 800CE92C 24040001 */ li $a0, 1 +/* 0CF530 800CE930 A9B90004 */ swl $t9, 4($t5) +/* 0CF534 800CE934 B9B90007 */ swr $t9, 7($t5) +/* 0CF538 800CE938 8FA80024 */ lw $t0, 0x24($sp) +/* 0CF53C 800CE93C 25090008 */ addiu $t1, $t0, 8 +/* 0CF540 800CE940 AFA90024 */ sw $t1, 0x24($sp) +/* 0CF544 800CE944 0C0335B0 */ jal func_800CD6C0 +/* 0CF548 800CE948 A12A0000 */ sb $t2, ($t1) +/* 0CF54C 800CE94C AFA2002C */ sw $v0, 0x2c($sp) +/* 0CF550 800CE950 8FA40030 */ lw $a0, 0x30($sp) +/* 0CF554 800CE954 00002825 */ move $a1, $zero +/* 0CF558 800CE958 0C0322EC */ jal osRecvMesg +/* 0CF55C 800CE95C 24060001 */ li $a2, 1 +/* 0CF560 800CE960 240B0005 */ li $t3, 5 +/* 0CF564 800CE964 3C018013 */ lui $at, %hi(D_8012CD90) # $at, 0x8013 +/* 0CF568 800CE968 3C058013 */ lui $a1, %hi(D_8012CE40) # $a1, 0x8013 +/* 0CF56C 800CE96C A02BCD90 */ sb $t3, %lo(D_8012CD90)($at) +/* 0CF570 800CE970 24A5CE40 */ addiu $a1, %lo(D_8012CE40) # addiu $a1, $a1, -0x31c0 +/* 0CF574 800CE974 0C0335B0 */ jal func_800CD6C0 +/* 0CF578 800CE978 00002025 */ move $a0, $zero +/* 0CF57C 800CE97C AFA2002C */ sw $v0, 0x2c($sp) +/* 0CF580 800CE980 8FA40030 */ lw $a0, 0x30($sp) +/* 0CF584 800CE984 00002825 */ move $a1, $zero +/* 0CF588 800CE988 0C0322EC */ jal osRecvMesg +/* 0CF58C 800CE98C 24060001 */ li $a2, 1 +/* 0CF590 800CE990 8FAC002C */ lw $t4, 0x2c($sp) +/* 0CF594 800CE994 11800003 */ beqz $t4, .L800CE9A4 +/* 0CF598 800CE998 00000000 */ nop +/* 0CF59C 800CE99C 1000002C */ b .L800CEA50 +/* 0CF5A0 800CE9A0 01801025 */ move $v0, $t4 +.L800CE9A4: +/* 0CF5A4 800CE9A4 3C188013 */ lui $t8, %hi(D_8012CE40) # $t8, 0x8013 +/* 0CF5A8 800CE9A8 2718CE40 */ addiu $t8, %lo(D_8012CE40) # addiu $t8, $t8, -0x31c0 +/* 0CF5AC 800CE9AC AFB80024 */ sw $t8, 0x24($sp) +/* 0CF5B0 800CE9B0 AFA00028 */ sw $zero, 0x28($sp) +.L800CE9B4: +/* 0CF5B4 800CE9B4 8FAF0024 */ lw $t7, 0x24($sp) +/* 0CF5B8 800CE9B8 A1E00000 */ sb $zero, ($t7) +/* 0CF5BC 800CE9BC 8FB90028 */ lw $t9, 0x28($sp) +/* 0CF5C0 800CE9C0 8FAD0024 */ lw $t5, 0x24($sp) +/* 0CF5C4 800CE9C4 27280001 */ addiu $t0, $t9, 1 +/* 0CF5C8 800CE9C8 29010004 */ slti $at, $t0, 4 +/* 0CF5CC 800CE9CC 25AE0001 */ addiu $t6, $t5, 1 +/* 0CF5D0 800CE9D0 AFA80028 */ sw $t0, 0x28($sp) +/* 0CF5D4 800CE9D4 1420FFF7 */ bnez $at, .L800CE9B4 +/* 0CF5D8 800CE9D8 AFAE0024 */ sw $t6, 0x24($sp) +/* 0CF5DC 800CE9DC 8FA90024 */ lw $t1, 0x24($sp) +/* 0CF5E0 800CE9E0 27AA001C */ addiu $t2, $sp, 0x1c +/* 0CF5E4 800CE9E4 89210000 */ lwl $at, ($t1) +/* 0CF5E8 800CE9E8 99210003 */ lwr $at, 3($t1) +/* 0CF5EC 800CE9EC AD410000 */ sw $at, ($t2) +/* 0CF5F0 800CE9F0 892C0004 */ lwl $t4, 4($t1) +/* 0CF5F4 800CE9F4 992C0007 */ lwr $t4, 7($t1) +/* 0CF5F8 800CE9F8 AD4C0004 */ sw $t4, 4($t2) +/* 0CF5FC 800CE9FC 93B8001E */ lbu $t8, 0x1e($sp) +/* 0CF600 800CEA00 8FAE0034 */ lw $t6, 0x34($sp) +/* 0CF604 800CEA04 330F00C0 */ andi $t7, $t8, 0xc0 +/* 0CF608 800CEA08 000F6903 */ sra $t5, $t7, 4 +/* 0CF60C 800CEA0C A1CD0003 */ sb $t5, 3($t6) +/* 0CF610 800CEA10 93B90021 */ lbu $t9, 0x21($sp) +/* 0CF614 800CEA14 93AB0020 */ lbu $t3, 0x20($sp) +/* 0CF618 800CEA18 8FA90034 */ lw $t1, 0x34($sp) +/* 0CF61C 800CEA1C 00194200 */ sll $t0, $t9, 8 +/* 0CF620 800CEA20 010B5025 */ or $t2, $t0, $t3 +/* 0CF624 800CEA24 A52A0000 */ sh $t2, ($t1) +/* 0CF628 800CEA28 8FB80034 */ lw $t8, 0x34($sp) +/* 0CF62C 800CEA2C 93AC0022 */ lbu $t4, 0x22($sp) +/* 0CF630 800CEA30 A30C0002 */ sb $t4, 2($t8) +/* 0CF634 800CEA34 8FAF0034 */ lw $t7, 0x34($sp) +/* 0CF638 800CEA38 91ED0003 */ lbu $t5, 3($t7) +/* 0CF63C 800CEA3C 11A00003 */ beqz $t5, .L800CEA4C +/* 0CF640 800CEA40 00000000 */ nop +/* 0CF644 800CEA44 10000002 */ b .L800CEA50 +/* 0CF648 800CEA48 01A01025 */ move $v0, $t5 +.L800CEA4C: +/* 0CF64C 800CEA4C 00001025 */ move $v0, $zero +.L800CEA50: +/* 0CF650 800CEA50 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CF654 800CEA54 27BD0030 */ addiu $sp, $sp, 0x30 +/* 0CF658 800CEA58 03E00008 */ jr $ra +/* 0CF65C 800CEA5C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CF330/func_800CED20.s b/asm/non_matchings/unknown_0CF330/func_800CED20.s new file mode 100644 index 00000000..c5382256 --- /dev/null +++ b/asm/non_matchings/unknown_0CF330/func_800CED20.s @@ -0,0 +1,50 @@ +glabel func_800CED20 +/* 0CF920 800CED20 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0CF924 800CED24 AFBF0014 */ sw $ra, 0x14($sp) +/* 0CF928 800CED28 AFA40020 */ sw $a0, 0x20($sp) +/* 0CF92C 800CED2C AFA50024 */ sw $a1, 0x24($sp) +/* 0CF930 800CED30 AFA60028 */ sw $a2, 0x28($sp) +/* 0CF934 800CED34 0C033594 */ jal func_800CD650 +/* 0CF938 800CED38 AFA0001C */ sw $zero, 0x1c($sp) +/* 0CF93C 800CED3C 8FA40020 */ lw $a0, 0x20($sp) +/* 0CF940 800CED40 0C033B75 */ jal func_800CEDD4 +/* 0CF944 800CED44 8FA50028 */ lw $a1, 0x28($sp) +/* 0CF948 800CED48 0C0335A5 */ jal func_800CD694 +/* 0CF94C 800CED4C AFA2001C */ sw $v0, 0x1c($sp) +/* 0CF950 800CED50 8FAE001C */ lw $t6, 0x1c($sp) +/* 0CF954 800CED54 11C00003 */ beqz $t6, .L800CED64 +/* 0CF958 800CED58 00000000 */ nop +/* 0CF95C 800CED5C 10000019 */ b .L800CEDC4 +/* 0CF960 800CED60 01C01025 */ move $v0, $t6 +.L800CED64: +/* 0CF964 800CED64 8FAF0020 */ lw $t7, 0x20($sp) +/* 0CF968 800CED68 8FB80024 */ lw $t8, 0x24($sp) +/* 0CF96C 800CED6C AF0F0004 */ sw $t7, 4($t8) +/* 0CF970 800CED70 8FA80024 */ lw $t0, 0x24($sp) +/* 0CF974 800CED74 8FB90028 */ lw $t9, 0x28($sp) +/* 0CF978 800CED78 AD190008 */ sw $t9, 8($t0) +/* 0CF97C 800CED7C 8FA90024 */ lw $t1, 0x24($sp) +/* 0CF980 800CED80 AD200000 */ sw $zero, ($t1) +/* 0CF984 800CED84 0C035659 */ jal func_800D5964 +/* 0CF988 800CED88 8FA40024 */ lw $a0, 0x24($sp) +/* 0CF98C 800CED8C AFA2001C */ sw $v0, 0x1c($sp) +/* 0CF990 800CED90 8FAA001C */ lw $t2, 0x1c($sp) +/* 0CF994 800CED94 11400003 */ beqz $t2, .L800CEDA4 +/* 0CF998 800CED98 00000000 */ nop +/* 0CF99C 800CED9C 10000009 */ b .L800CEDC4 +/* 0CF9A0 800CEDA0 01401025 */ move $v0, $t2 +.L800CEDA4: +/* 0CF9A4 800CEDA4 0C033D4C */ jal func_800CF530 +/* 0CF9A8 800CEDA8 8FA40024 */ lw $a0, 0x24($sp) +/* 0CF9AC 800CEDAC 8FAB0024 */ lw $t3, 0x24($sp) +/* 0CF9B0 800CEDB0 AFA2001C */ sw $v0, 0x1c($sp) +/* 0CF9B4 800CEDB4 8D6C0000 */ lw $t4, ($t3) +/* 0CF9B8 800CEDB8 358D0001 */ ori $t5, $t4, 1 +/* 0CF9BC 800CEDBC AD6D0000 */ sw $t5, ($t3) +/* 0CF9C0 800CEDC0 8FA2001C */ lw $v0, 0x1c($sp) +.L800CEDC4: +/* 0CF9C4 800CEDC4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CF9C8 800CEDC8 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0CF9CC 800CEDCC 03E00008 */ jr $ra +/* 0CF9D0 800CEDD0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CF330/func_800CEDD4.s b/asm/non_matchings/unknown_0CF330/func_800CEDD4.s new file mode 100644 index 00000000..fce6ecdb --- /dev/null +++ b/asm/non_matchings/unknown_0CF330/func_800CEDD4.s @@ -0,0 +1,74 @@ +glabel func_800CEDD4 +/* 0CF9D4 800CEDD4 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0CF9D8 800CEDD8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0CF9DC 800CEDDC AFA40038 */ sw $a0, 0x38($sp) +/* 0CF9E0 800CEDE0 AFA5003C */ sw $a1, 0x3c($sp) +/* 0CF9E4 800CEDE4 AFA00034 */ sw $zero, 0x34($sp) +/* 0CF9E8 800CEDE8 0C03350C */ jal func_800CD430 +/* 0CF9EC 800CEDEC 00002025 */ move $a0, $zero +/* 0CF9F0 800CEDF0 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013 +/* 0CF9F4 800CEDF4 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220 +/* 0CF9F8 800CEDF8 0C0335B0 */ jal func_800CD6C0 +/* 0CF9FC 800CEDFC 24040001 */ li $a0, 1 +/* 0CFA00 800CEE00 AFA20034 */ sw $v0, 0x34($sp) +/* 0CFA04 800CEE04 8FA40038 */ lw $a0, 0x38($sp) +/* 0CFA08 800CEE08 27A50030 */ addiu $a1, $sp, 0x30 +/* 0CFA0C 800CEE0C 0C0322EC */ jal osRecvMesg +/* 0CFA10 800CEE10 24060001 */ li $a2, 1 +/* 0CFA14 800CEE14 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013 +/* 0CFA18 800CEE18 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220 +/* 0CFA1C 800CEE1C 0C0335B0 */ jal func_800CD6C0 +/* 0CFA20 800CEE20 00002025 */ move $a0, $zero +/* 0CFA24 800CEE24 AFA20034 */ sw $v0, 0x34($sp) +/* 0CFA28 800CEE28 8FA40038 */ lw $a0, 0x38($sp) +/* 0CFA2C 800CEE2C 27A50030 */ addiu $a1, $sp, 0x30 +/* 0CFA30 800CEE30 0C0322EC */ jal osRecvMesg +/* 0CFA34 800CEE34 24060001 */ li $a2, 1 +/* 0CFA38 800CEE38 27A4002F */ addiu $a0, $sp, 0x2f +/* 0CFA3C 800CEE3C 0C03354B */ jal func_800CD52C +/* 0CFA40 800CEE40 27A5001C */ addiu $a1, $sp, 0x1c +/* 0CFA44 800CEE44 8FAE003C */ lw $t6, 0x3c($sp) +/* 0CFA48 800CEE48 000E7880 */ sll $t7, $t6, 2 +/* 0CFA4C 800CEE4C 03AFC021 */ addu $t8, $sp, $t7 +/* 0CFA50 800CEE50 9318001E */ lbu $t8, 0x1e($t8) +/* 0CFA54 800CEE54 33190001 */ andi $t9, $t8, 1 +/* 0CFA58 800CEE58 13200006 */ beqz $t9, .L800CEE74 +/* 0CFA5C 800CEE5C 00000000 */ nop +/* 0CFA60 800CEE60 33080002 */ andi $t0, $t8, 2 +/* 0CFA64 800CEE64 11000003 */ beqz $t0, .L800CEE74 +/* 0CFA68 800CEE68 00000000 */ nop +/* 0CFA6C 800CEE6C 10000018 */ b .L800CEED0 +/* 0CFA70 800CEE70 24020002 */ li $v0, 2 +.L800CEE74: +/* 0CFA74 800CEE74 8FA9003C */ lw $t1, 0x3c($sp) +/* 0CFA78 800CEE78 27AB001C */ addiu $t3, $sp, 0x1c +/* 0CFA7C 800CEE7C 00095080 */ sll $t2, $t1, 2 +/* 0CFA80 800CEE80 014B6021 */ addu $t4, $t2, $t3 +/* 0CFA84 800CEE84 918D0003 */ lbu $t5, 3($t4) +/* 0CFA88 800CEE88 15A00005 */ bnez $t5, .L800CEEA0 +/* 0CFA8C 800CEE8C 00000000 */ nop +/* 0CFA90 800CEE90 918E0002 */ lbu $t6, 2($t4) +/* 0CFA94 800CEE94 31CF0001 */ andi $t7, $t6, 1 +/* 0CFA98 800CEE98 15E00003 */ bnez $t7, .L800CEEA8 +/* 0CFA9C 800CEE9C 00000000 */ nop +.L800CEEA0: +/* 0CFAA0 800CEEA0 1000000B */ b .L800CEED0 +/* 0CFAA4 800CEEA4 24020001 */ li $v0, 1 +.L800CEEA8: +/* 0CFAA8 800CEEA8 8FB9003C */ lw $t9, 0x3c($sp) +/* 0CFAAC 800CEEAC 0019C080 */ sll $t8, $t9, 2 +/* 0CFAB0 800CEEB0 03B84021 */ addu $t0, $sp, $t8 +/* 0CFAB4 800CEEB4 9108001E */ lbu $t0, 0x1e($t0) +/* 0CFAB8 800CEEB8 31090004 */ andi $t1, $t0, 4 +/* 0CFABC 800CEEBC 11200003 */ beqz $t1, .L800CEECC +/* 0CFAC0 800CEEC0 00000000 */ nop +/* 0CFAC4 800CEEC4 10000002 */ b .L800CEED0 +/* 0CFAC8 800CEEC8 24020004 */ li $v0, 4 +.L800CEECC: +/* 0CFACC 800CEECC 8FA20034 */ lw $v0, 0x34($sp) +.L800CEED0: +/* 0CFAD0 800CEED0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CFAD4 800CEED4 27BD0038 */ addiu $sp, $sp, 0x38 +/* 0CFAD8 800CEED8 03E00008 */ jr $ra +/* 0CFADC 800CEEDC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CF330/func_800CEEE0.s b/asm/non_matchings/unknown_0CF330/func_800CEEE0.s new file mode 100644 index 00000000..e8125e1d --- /dev/null +++ b/asm/non_matchings/unknown_0CF330/func_800CEEE0.s @@ -0,0 +1,70 @@ +glabel func_800CEEE0 +/* 0CFAE0 800CEEE0 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0CFAE4 800CEEE4 AFA50024 */ sw $a1, 0x24($sp) +/* 0CFAE8 800CEEE8 AFA7002C */ sw $a3, 0x2c($sp) +/* 0CFAEC 800CEEEC 8FB8002C */ lw $t8, 0x2c($sp) +/* 0CFAF0 800CEEF0 8FAE0024 */ lw $t6, 0x24($sp) +/* 0CFAF4 800CEEF4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0CFAF8 800CEEF8 AFA40020 */ sw $a0, 0x20($sp) +/* 0CFAFC 800CEEFC AFA60028 */ sw $a2, 0x28($sp) +/* 0CFB00 800CEF00 93190000 */ lbu $t9, ($t8) +/* 0CFB04 800CEF04 91CF0000 */ lbu $t7, ($t6) +/* 0CFB08 800CEF08 11F9000E */ beq $t7, $t9, .L800CEF44 +/* 0CFB0C 800CEF0C 00000000 */ nop +/* 0CFB10 800CEF10 A1D90000 */ sb $t9, ($t6) +/* 0CFB14 800CEF14 8FA80024 */ lw $t0, 0x24($sp) +/* 0CFB18 800CEF18 8FA50028 */ lw $a1, 0x28($sp) +/* 0CFB1C 800CEF1C 8FA40020 */ lw $a0, 0x20($sp) +/* 0CFB20 800CEF20 00003025 */ move $a2, $zero +/* 0CFB24 800CEF24 0C03572F */ jal func_800D5CBC +/* 0CFB28 800CEF28 91070000 */ lbu $a3, ($t0) +/* 0CFB2C 800CEF2C AFA2001C */ sw $v0, 0x1c($sp) +/* 0CFB30 800CEF30 8FA9001C */ lw $t1, 0x1c($sp) +/* 0CFB34 800CEF34 11200003 */ beqz $t1, .L800CEF44 +/* 0CFB38 800CEF38 00000000 */ nop +/* 0CFB3C 800CEF3C 10000023 */ b .L800CEFCC +/* 0CFB40 800CEF40 01201025 */ move $v0, $t1 +.L800CEF44: +/* 0CFB44 800CEF44 8FAA002C */ lw $t2, 0x2c($sp) +/* 0CFB48 800CEF48 8FAB0028 */ lw $t3, 0x28($sp) +/* 0CFB4C 800CEF4C 914C0001 */ lbu $t4, 1($t2) +/* 0CFB50 800CEF50 000C6840 */ sll $t5, $t4, 1 +/* 0CFB54 800CEF54 016DC021 */ addu $t8, $t3, $t5 +/* 0CFB58 800CEF58 97010000 */ lhu $at, ($t8) +/* 0CFB5C 800CEF5C A5410000 */ sh $at, ($t2) +/* 0CFB60 800CEF60 8FA90020 */ lw $t1, 0x20($sp) +/* 0CFB64 800CEF64 8FAE002C */ lw $t6, 0x2c($sp) +/* 0CFB68 800CEF68 8D2C0060 */ lw $t4, 0x60($t1) +/* 0CFB6C 800CEF6C 95C80000 */ lhu $t0, ($t6) +/* 0CFB70 800CEF70 010C082A */ slt $at, $t0, $t4 +/* 0CFB74 800CEF74 1420000B */ bnez $at, .L800CEFA4 +/* 0CFB78 800CEF78 00000000 */ nop +/* 0CFB7C 800CEF7C 91CB0000 */ lbu $t3, ($t6) +/* 0CFB80 800CEF80 912D0064 */ lbu $t5, 0x64($t1) +/* 0CFB84 800CEF84 016D082A */ slt $at, $t3, $t5 +/* 0CFB88 800CEF88 10200006 */ beqz $at, .L800CEFA4 +/* 0CFB8C 800CEF8C 00000000 */ nop +/* 0CFB90 800CEF90 91CF0001 */ lbu $t7, 1($t6) +/* 0CFB94 800CEF94 19E00003 */ blez $t7, .L800CEFA4 +/* 0CFB98 800CEF98 29E10080 */ slti $at, $t7, 0x80 +/* 0CFB9C 800CEF9C 1420000A */ bnez $at, .L800CEFC8 +/* 0CFBA0 800CEFA0 00000000 */ nop +.L800CEFA4: +/* 0CFBA4 800CEFA4 8FAA002C */ lw $t2, 0x2c($sp) +/* 0CFBA8 800CEFA8 24010001 */ li $at, 1 +/* 0CFBAC 800CEFAC 95580000 */ lhu $t8, ($t2) +/* 0CFBB0 800CEFB0 17010003 */ bne $t8, $at, .L800CEFC0 +/* 0CFBB4 800CEFB4 00000000 */ nop +/* 0CFBB8 800CEFB8 10000004 */ b .L800CEFCC +/* 0CFBBC 800CEFBC 24020005 */ li $v0, 5 +.L800CEFC0: +/* 0CFBC0 800CEFC0 10000002 */ b .L800CEFCC +/* 0CFBC4 800CEFC4 24020003 */ li $v0, 3 +.L800CEFC8: +/* 0CFBC8 800CEFC8 00001025 */ move $v0, $zero +.L800CEFCC: +/* 0CFBCC 800CEFCC 8FBF0014 */ lw $ra, 0x14($sp) +/* 0CFBD0 800CEFD0 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0CFBD4 800CEFD4 03E00008 */ jr $ra +/* 0CFBD8 800CEFD8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0CF330/func_800CEFDC.s b/asm/non_matchings/unknown_0CF330/func_800CEFDC.s new file mode 100644 index 00000000..90481f66 --- /dev/null +++ b/asm/non_matchings/unknown_0CF330/func_800CEFDC.s @@ -0,0 +1,290 @@ +glabel func_800CEFDC +/* 0CFBDC 800CEFDC 27BDFEA8 */ addiu $sp, $sp, -0x158 +/* 0CFBE0 800CEFE0 AFA40158 */ sw $a0, 0x158($sp) +/* 0CFBE4 800CEFE4 8FAF0158 */ lw $t7, 0x158($sp) +/* 0CFBE8 800CEFE8 AFA5015C */ sw $a1, 0x15c($sp) +/* 0CFBEC 800CEFEC AFBF001C */ sw $ra, 0x1c($sp) +/* 0CFBF0 800CEFF0 AFA60160 */ sw $a2, 0x160($sp) +/* 0CFBF4 800CEFF4 AFA70164 */ sw $a3, 0x164($sp) +/* 0CFBF8 800CEFF8 8FAE015C */ lw $t6, 0x15c($sp) +/* 0CFBFC 800CEFFC 8DF80050 */ lw $t8, 0x50($t7) +/* 0CFC00 800CF000 01D8082A */ slt $at, $t6, $t8 +/* 0CFC04 800CF004 10200003 */ beqz $at, .L800CF014 +/* 0CFC08 800CF008 00000000 */ nop +/* 0CFC0C 800CF00C 05C10003 */ bgez $t6, .L800CF01C +/* 0CFC10 800CF010 00000000 */ nop +.L800CF014: +/* 0CFC14 800CF014 100000ED */ b .L800CF3CC +/* 0CFC18 800CF018 24020005 */ li $v0, 5 +.L800CF01C: +/* 0CFC1C 800CF01C 8FB90168 */ lw $t9, 0x168($sp) +/* 0CFC20 800CF020 1B200004 */ blez $t9, .L800CF034 +/* 0CFC24 800CF024 00000000 */ nop +/* 0CFC28 800CF028 3328001F */ andi $t0, $t9, 0x1f +/* 0CFC2C 800CF02C 11000003 */ beqz $t0, .L800CF03C +/* 0CFC30 800CF030 00000000 */ nop +.L800CF034: +/* 0CFC34 800CF034 100000E5 */ b .L800CF3CC +/* 0CFC38 800CF038 24020005 */ li $v0, 5 +.L800CF03C: +/* 0CFC3C 800CF03C 8FA90164 */ lw $t1, 0x164($sp) +/* 0CFC40 800CF040 05200004 */ bltz $t1, .L800CF054 +/* 0CFC44 800CF044 00000000 */ nop +/* 0CFC48 800CF048 312A001F */ andi $t2, $t1, 0x1f +/* 0CFC4C 800CF04C 11400003 */ beqz $t2, .L800CF05C +/* 0CFC50 800CF050 00000000 */ nop +.L800CF054: +/* 0CFC54 800CF054 100000DD */ b .L800CF3CC +/* 0CFC58 800CF058 24020005 */ li $v0, 5 +.L800CF05C: +/* 0CFC5C 800CF05C 8FAB0158 */ lw $t3, 0x158($sp) +/* 0CFC60 800CF060 8D6C0000 */ lw $t4, ($t3) +/* 0CFC64 800CF064 318D0001 */ andi $t5, $t4, 1 +/* 0CFC68 800CF068 15A00003 */ bnez $t5, .L800CF078 +/* 0CFC6C 800CF06C 00000000 */ nop +/* 0CFC70 800CF070 100000D6 */ b .L800CF3CC +/* 0CFC74 800CF074 24020005 */ li $v0, 5 +.L800CF078: +/* 0CFC78 800CF078 0C0356F0 */ jal func_800D5BC0 +/* 0CFC7C 800CF07C 8FA40158 */ lw $a0, 0x158($sp) +/* 0CFC80 800CF080 24010002 */ li $at, 2 +/* 0CFC84 800CF084 14410003 */ bne $v0, $at, .L800CF094 +/* 0CFC88 800CF088 00000000 */ nop +/* 0CFC8C 800CF08C 100000CF */ b .L800CF3CC +/* 0CFC90 800CF090 24020002 */ li $v0, 2 +.L800CF094: +/* 0CFC94 800CF094 8FAF0158 */ lw $t7, 0x158($sp) +/* 0CFC98 800CF098 91F80065 */ lbu $t8, 0x65($t7) +/* 0CFC9C 800CF09C 1300000A */ beqz $t8, .L800CF0C8 +/* 0CFCA0 800CF0A0 00000000 */ nop +/* 0CFCA4 800CF0A4 A1E00065 */ sb $zero, 0x65($t7) +/* 0CFCA8 800CF0A8 0C0357F7 */ jal func_800D5FDC +/* 0CFCAC 800CF0AC 8FA40158 */ lw $a0, 0x158($sp) +/* 0CFCB0 800CF0B0 AFA20154 */ sw $v0, 0x154($sp) +/* 0CFCB4 800CF0B4 8FAE0154 */ lw $t6, 0x154($sp) +/* 0CFCB8 800CF0B8 11C00003 */ beqz $t6, .L800CF0C8 +/* 0CFCBC 800CF0BC 00000000 */ nop +/* 0CFCC0 800CF0C0 100000C2 */ b .L800CF3CC +/* 0CFCC4 800CF0C4 01C01025 */ move $v0, $t6 +.L800CF0C8: +/* 0CFCC8 800CF0C8 8FB90158 */ lw $t9, 0x158($sp) +/* 0CFCCC 800CF0CC 8FA9015C */ lw $t1, 0x15c($sp) +/* 0CFCD0 800CF0D0 27A70134 */ addiu $a3, $sp, 0x134 +/* 0CFCD4 800CF0D4 8F28005C */ lw $t0, 0x5c($t9) +/* 0CFCD8 800CF0D8 8F240004 */ lw $a0, 4($t9) +/* 0CFCDC 800CF0DC 8F250008 */ lw $a1, 8($t9) +/* 0CFCE0 800CF0E0 0C033728 */ jal func_800CDCA0 +/* 0CFCE4 800CF0E4 01093021 */ addu $a2, $t0, $t1 +/* 0CFCE8 800CF0E8 AFA20154 */ sw $v0, 0x154($sp) +/* 0CFCEC 800CF0EC 8FAA0154 */ lw $t2, 0x154($sp) +/* 0CFCF0 800CF0F0 11400003 */ beqz $t2, .L800CF100 +/* 0CFCF4 800CF0F4 00000000 */ nop +/* 0CFCF8 800CF0F8 100000B4 */ b .L800CF3CC +/* 0CFCFC 800CF0FC 01401025 */ move $v0, $t2 +.L800CF100: +/* 0CFD00 800CF100 8FAC0158 */ lw $t4, 0x158($sp) +/* 0CFD04 800CF104 97AB013A */ lhu $t3, 0x13a($sp) +/* 0CFD08 800CF108 8D8D0060 */ lw $t5, 0x60($t4) +/* 0CFD0C 800CF10C 016D082A */ slt $at, $t3, $t5 +/* 0CFD10 800CF110 1420000B */ bnez $at, .L800CF140 +/* 0CFD14 800CF114 00000000 */ nop +/* 0CFD18 800CF118 93B8013A */ lbu $t8, 0x13a($sp) +/* 0CFD1C 800CF11C 918F0064 */ lbu $t7, 0x64($t4) +/* 0CFD20 800CF120 030F082A */ slt $at, $t8, $t7 +/* 0CFD24 800CF124 10200006 */ beqz $at, .L800CF140 +/* 0CFD28 800CF128 00000000 */ nop +/* 0CFD2C 800CF12C 93AE013B */ lbu $t6, 0x13b($sp) +/* 0CFD30 800CF130 19C00003 */ blez $t6, .L800CF140 +/* 0CFD34 800CF134 29C10080 */ slti $at, $t6, 0x80 +/* 0CFD38 800CF138 14200009 */ bnez $at, .L800CF160 +/* 0CFD3C 800CF13C 00000000 */ nop +.L800CF140: +/* 0CFD40 800CF140 97B9013A */ lhu $t9, 0x13a($sp) +/* 0CFD44 800CF144 24010001 */ li $at, 1 +/* 0CFD48 800CF148 17210003 */ bne $t9, $at, .L800CF158 +/* 0CFD4C 800CF14C 00000000 */ nop +/* 0CFD50 800CF150 1000009E */ b .L800CF3CC +/* 0CFD54 800CF154 24020005 */ li $v0, 5 +.L800CF158: +/* 0CFD58 800CF158 1000009C */ b .L800CF3CC +/* 0CFD5C 800CF15C 24020003 */ li $v0, 3 +.L800CF160: +/* 0CFD60 800CF160 93A80163 */ lbu $t0, 0x163($sp) +/* 0CFD64 800CF164 15000007 */ bnez $t0, .L800CF184 +/* 0CFD68 800CF168 00000000 */ nop +/* 0CFD6C 800CF16C 93A9013C */ lbu $t1, 0x13c($sp) +/* 0CFD70 800CF170 312A0002 */ andi $t2, $t1, 2 +/* 0CFD74 800CF174 15400003 */ bnez $t2, .L800CF184 +/* 0CFD78 800CF178 00000000 */ nop +/* 0CFD7C 800CF17C 10000093 */ b .L800CF3CC +/* 0CFD80 800CF180 24020006 */ li $v0, 6 +.L800CF184: +/* 0CFD84 800CF184 8FAD0164 */ lw $t5, 0x164($sp) +/* 0CFD88 800CF188 97B8013A */ lhu $t8, 0x13a($sp) +/* 0CFD8C 800CF18C 240B00FF */ li $t3, 255 +/* 0CFD90 800CF190 A3AB0023 */ sb $t3, 0x23($sp) +/* 0CFD94 800CF194 05A10003 */ bgez $t5, .L800CF1A4 +/* 0CFD98 800CF198 000D6143 */ sra $t4, $t5, 5 +/* 0CFD9C 800CF19C 25A1001F */ addiu $at, $t5, 0x1f +/* 0CFDA0 800CF1A0 00016143 */ sra $t4, $at, 5 +.L800CF1A4: +/* 0CFDA4 800CF1A4 AFAC002C */ sw $t4, 0x2c($sp) +/* 0CFDA8 800CF1A8 8FAF002C */ lw $t7, 0x2c($sp) +/* 0CFDAC 800CF1AC A7B80030 */ sh $t8, 0x30($sp) +/* 0CFDB0 800CF1B0 29E10008 */ slti $at, $t7, 8 +/* 0CFDB4 800CF1B4 14200013 */ bnez $at, .L800CF204 +/* 0CFDB8 800CF1B8 00000000 */ nop +.L800CF1BC: +/* 0CFDBC 800CF1BC 8FA40158 */ lw $a0, 0x158($sp) +/* 0CFDC0 800CF1C0 27A50023 */ addiu $a1, $sp, 0x23 +/* 0CFDC4 800CF1C4 27A60034 */ addiu $a2, $sp, 0x34 +/* 0CFDC8 800CF1C8 0C033BB8 */ jal func_800CEEE0 +/* 0CFDCC 800CF1CC 27A70030 */ addiu $a3, $sp, 0x30 +/* 0CFDD0 800CF1D0 AFA20154 */ sw $v0, 0x154($sp) +/* 0CFDD4 800CF1D4 8FAE0154 */ lw $t6, 0x154($sp) +/* 0CFDD8 800CF1D8 11C00003 */ beqz $t6, .L800CF1E8 +/* 0CFDDC 800CF1DC 00000000 */ nop +/* 0CFDE0 800CF1E0 1000007A */ b .L800CF3CC +/* 0CFDE4 800CF1E4 01C01025 */ move $v0, $t6 +.L800CF1E8: +/* 0CFDE8 800CF1E8 8FB9002C */ lw $t9, 0x2c($sp) +/* 0CFDEC 800CF1EC 2728FFF8 */ addiu $t0, $t9, -8 +/* 0CFDF0 800CF1F0 AFA8002C */ sw $t0, 0x2c($sp) +/* 0CFDF4 800CF1F4 8FA9002C */ lw $t1, 0x2c($sp) +/* 0CFDF8 800CF1F8 29210008 */ slti $at, $t1, 8 +/* 0CFDFC 800CF1FC 1020FFEF */ beqz $at, .L800CF1BC +/* 0CFE00 800CF200 00000000 */ nop +.L800CF204: +/* 0CFE04 800CF204 8FAA0168 */ lw $t2, 0x168($sp) +/* 0CFE08 800CF208 8FAD016C */ lw $t5, 0x16c($sp) +/* 0CFE0C 800CF20C 05410003 */ bgez $t2, .L800CF21C +/* 0CFE10 800CF210 000A5943 */ sra $t3, $t2, 5 +/* 0CFE14 800CF214 2541001F */ addiu $at, $t2, 0x1f +/* 0CFE18 800CF218 00015943 */ sra $t3, $at, 5 +.L800CF21C: +/* 0CFE1C 800CF21C AFAB0028 */ sw $t3, 0x28($sp) +/* 0CFE20 800CF220 19600046 */ blez $t3, .L800CF33C +/* 0CFE24 800CF224 AFAD0024 */ sw $t5, 0x24($sp) +.L800CF228: +/* 0CFE28 800CF228 8FAC002C */ lw $t4, 0x2c($sp) +/* 0CFE2C 800CF22C 24010008 */ li $at, 8 +/* 0CFE30 800CF230 1581000D */ bne $t4, $at, .L800CF268 +/* 0CFE34 800CF234 00000000 */ nop +/* 0CFE38 800CF238 8FA40158 */ lw $a0, 0x158($sp) +/* 0CFE3C 800CF23C 27A50023 */ addiu $a1, $sp, 0x23 +/* 0CFE40 800CF240 27A60034 */ addiu $a2, $sp, 0x34 +/* 0CFE44 800CF244 0C033BB8 */ jal func_800CEEE0 +/* 0CFE48 800CF248 27A70030 */ addiu $a3, $sp, 0x30 +/* 0CFE4C 800CF24C AFA20154 */ sw $v0, 0x154($sp) +/* 0CFE50 800CF250 8FB80154 */ lw $t8, 0x154($sp) +/* 0CFE54 800CF254 13000003 */ beqz $t8, .L800CF264 +/* 0CFE58 800CF258 00000000 */ nop +/* 0CFE5C 800CF25C 1000005B */ b .L800CF3CC +/* 0CFE60 800CF260 03001025 */ move $v0, $t8 +.L800CF264: +/* 0CFE64 800CF264 AFA0002C */ sw $zero, 0x2c($sp) +.L800CF268: +/* 0CFE68 800CF268 8FAF0158 */ lw $t7, 0x158($sp) +/* 0CFE6C 800CF26C 93B90030 */ lbu $t9, 0x30($sp) +/* 0CFE70 800CF270 91EE0065 */ lbu $t6, 0x65($t7) +/* 0CFE74 800CF274 11D9000A */ beq $t6, $t9, .L800CF2A0 +/* 0CFE78 800CF278 00000000 */ nop +/* 0CFE7C 800CF27C A1F90065 */ sb $t9, 0x65($t7) +/* 0CFE80 800CF280 0C0357F7 */ jal func_800D5FDC +/* 0CFE84 800CF284 8FA40158 */ lw $a0, 0x158($sp) +/* 0CFE88 800CF288 AFA20154 */ sw $v0, 0x154($sp) +/* 0CFE8C 800CF28C 8FA80154 */ lw $t0, 0x154($sp) +/* 0CFE90 800CF290 11000003 */ beqz $t0, .L800CF2A0 +/* 0CFE94 800CF294 00000000 */ nop +/* 0CFE98 800CF298 1000004C */ b .L800CF3CC +/* 0CFE9C 800CF29C 01001025 */ move $v0, $t0 +.L800CF2A0: +/* 0CFEA0 800CF2A0 93A90031 */ lbu $t1, 0x31($sp) +/* 0CFEA4 800CF2A4 8FAD002C */ lw $t5, 0x2c($sp) +/* 0CFEA8 800CF2A8 93AC0163 */ lbu $t4, 0x163($sp) +/* 0CFEAC 800CF2AC 000950C0 */ sll $t2, $t1, 3 +/* 0CFEB0 800CF2B0 014D5821 */ addu $t3, $t2, $t5 +/* 0CFEB4 800CF2B4 15800009 */ bnez $t4, .L800CF2DC +/* 0CFEB8 800CF2B8 A7AB0020 */ sh $t3, 0x20($sp) +/* 0CFEBC 800CF2BC 8FB80158 */ lw $t8, 0x158($sp) +/* 0CFEC0 800CF2C0 3166FFFF */ andi $a2, $t3, 0xffff +/* 0CFEC4 800CF2C4 8FA70024 */ lw $a3, 0x24($sp) +/* 0CFEC8 800CF2C8 8F040004 */ lw $a0, 4($t8) +/* 0CFECC 800CF2CC 0C033728 */ jal func_800CDCA0 +/* 0CFED0 800CF2D0 8F050008 */ lw $a1, 8($t8) +/* 0CFED4 800CF2D4 10000009 */ b .L800CF2FC +/* 0CFED8 800CF2D8 AFA20154 */ sw $v0, 0x154($sp) +.L800CF2DC: +/* 0CFEDC 800CF2DC 8FAE0158 */ lw $t6, 0x158($sp) +/* 0CFEE0 800CF2E0 97A60020 */ lhu $a2, 0x20($sp) +/* 0CFEE4 800CF2E4 8FA70024 */ lw $a3, 0x24($sp) +/* 0CFEE8 800CF2E8 8DC40004 */ lw $a0, 4($t6) +/* 0CFEEC 800CF2EC 8DC50008 */ lw $a1, 8($t6) +/* 0CFEF0 800CF2F0 0C03363C */ jal func_800CD8F0 +/* 0CFEF4 800CF2F4 AFA00010 */ sw $zero, 0x10($sp) +/* 0CFEF8 800CF2F8 AFA20154 */ sw $v0, 0x154($sp) +.L800CF2FC: +/* 0CFEFC 800CF2FC 8FB90154 */ lw $t9, 0x154($sp) +/* 0CFF00 800CF300 13200003 */ beqz $t9, .L800CF310 +/* 0CFF04 800CF304 00000000 */ nop +/* 0CFF08 800CF308 10000030 */ b .L800CF3CC +/* 0CFF0C 800CF30C 03201025 */ move $v0, $t9 +.L800CF310: +/* 0CFF10 800CF310 8FAD0028 */ lw $t5, 0x28($sp) +/* 0CFF14 800CF314 8FAF0024 */ lw $t7, 0x24($sp) +/* 0CFF18 800CF318 8FA9002C */ lw $t1, 0x2c($sp) +/* 0CFF1C 800CF31C 25ACFFFF */ addiu $t4, $t5, -1 +/* 0CFF20 800CF320 AFAC0028 */ sw $t4, 0x28($sp) +/* 0CFF24 800CF324 8FB80028 */ lw $t8, 0x28($sp) +/* 0CFF28 800CF328 25E80020 */ addiu $t0, $t7, 0x20 +/* 0CFF2C 800CF32C 252A0001 */ addiu $t2, $t1, 1 +/* 0CFF30 800CF330 AFA80024 */ sw $t0, 0x24($sp) +/* 0CFF34 800CF334 1F00FFBC */ bgtz $t8, .L800CF228 +/* 0CFF38 800CF338 AFAA002C */ sw $t2, 0x2c($sp) +.L800CF33C: +/* 0CFF3C 800CF33C 93AB0163 */ lbu $t3, 0x163($sp) +/* 0CFF40 800CF340 24010001 */ li $at, 1 +/* 0CFF44 800CF344 15610020 */ bne $t3, $at, .L800CF3C8 +/* 0CFF48 800CF348 00000000 */ nop +/* 0CFF4C 800CF34C 93AE013C */ lbu $t6, 0x13c($sp) +/* 0CFF50 800CF350 31D90002 */ andi $t9, $t6, 2 +/* 0CFF54 800CF354 1720001C */ bnez $t9, .L800CF3C8 +/* 0CFF58 800CF358 00000000 */ nop +/* 0CFF5C 800CF35C 8FA80158 */ lw $t0, 0x158($sp) +/* 0CFF60 800CF360 35CF0002 */ ori $t7, $t6, 2 +/* 0CFF64 800CF364 A3AF013C */ sb $t7, 0x13c($sp) +/* 0CFF68 800CF368 A1000065 */ sb $zero, 0x65($t0) +/* 0CFF6C 800CF36C 0C0357F7 */ jal func_800D5FDC +/* 0CFF70 800CF370 8FA40158 */ lw $a0, 0x158($sp) +/* 0CFF74 800CF374 AFA20154 */ sw $v0, 0x154($sp) +/* 0CFF78 800CF378 8FA90154 */ lw $t1, 0x154($sp) +/* 0CFF7C 800CF37C 11200003 */ beqz $t1, .L800CF38C +/* 0CFF80 800CF380 00000000 */ nop +/* 0CFF84 800CF384 10000011 */ b .L800CF3CC +/* 0CFF88 800CF388 01201025 */ move $v0, $t1 +.L800CF38C: +/* 0CFF8C 800CF38C 8FAA0158 */ lw $t2, 0x158($sp) +/* 0CFF90 800CF390 8FAC015C */ lw $t4, 0x15c($sp) +/* 0CFF94 800CF394 27A70134 */ addiu $a3, $sp, 0x134 +/* 0CFF98 800CF398 8D4D005C */ lw $t5, 0x5c($t2) +/* 0CFF9C 800CF39C 8D440004 */ lw $a0, 4($t2) +/* 0CFFA0 800CF3A0 8D450008 */ lw $a1, 8($t2) +/* 0CFFA4 800CF3A4 AFA00010 */ sw $zero, 0x10($sp) +/* 0CFFA8 800CF3A8 0C03363C */ jal func_800CD8F0 +/* 0CFFAC 800CF3AC 01AC3021 */ addu $a2, $t5, $t4 +/* 0CFFB0 800CF3B0 AFA20154 */ sw $v0, 0x154($sp) +/* 0CFFB4 800CF3B4 8FB80154 */ lw $t8, 0x154($sp) +/* 0CFFB8 800CF3B8 13000003 */ beqz $t8, .L800CF3C8 +/* 0CFFBC 800CF3BC 00000000 */ nop +/* 0CFFC0 800CF3C0 10000002 */ b .L800CF3CC +/* 0CFFC4 800CF3C4 03001025 */ move $v0, $t8 +.L800CF3C8: +/* 0CFFC8 800CF3C8 00001025 */ move $v0, $zero +.L800CF3CC: +/* 0CFFCC 800CF3CC 8FBF001C */ lw $ra, 0x1c($sp) +/* 0CFFD0 800CF3D0 27BD0158 */ addiu $sp, $sp, 0x158 +/* 0CFFD4 800CF3D4 03E00008 */ jr $ra +/* 0CFFD8 800CF3D8 00000000 */ nop + +/* 0CFFDC 800CF3DC 00000000 */ nop + diff --git a/asm/unknown_0CFFE0.s b/asm/non_matchings/unknown_0CFFE0/func_800CF3E0.s old mode 100755 new mode 100644 similarity index 95% rename from asm/unknown_0CFFE0.s rename to asm/non_matchings/unknown_0CFFE0/func_800CF3E0.s index f98519f5..edf8f8dc --- a/asm/unknown_0CFFE0.s +++ b/asm/non_matchings/unknown_0CFFE0/func_800CF3E0.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800CF3E0 /* 0CFFE0 800CF3E0 27BDFED0 */ addiu $sp, $sp, -0x130 /* 0CFFE4 800CF3E4 AFA40130 */ sw $a0, 0x130($sp) @@ -103,3 +95,4 @@ glabel func_800CF3E0 /* 0D0128 800CF528 00000000 */ nop /* 0D012C 800CF52C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D0130/func_800CF530.s b/asm/non_matchings/unknown_0D0130/func_800CF530.s new file mode 100644 index 00000000..91268fa3 --- /dev/null +++ b/asm/non_matchings/unknown_0D0130/func_800CF530.s @@ -0,0 +1,474 @@ +glabel func_800CF530 +/* 0D0130 800CF530 27BDFB78 */ addiu $sp, $sp, -0x488 +/* 0D0134 800CF534 AFBF001C */ sw $ra, 0x1c($sp) +/* 0D0138 800CF538 AFA40488 */ sw $a0, 0x488($sp) +/* 0D013C 800CF53C AFA00034 */ sw $zero, 0x34($sp) +/* 0D0140 800CF540 0C0356F0 */ jal func_800D5BC0 +/* 0D0144 800CF544 8FA40488 */ lw $a0, 0x488($sp) +/* 0D0148 800CF548 AFA20480 */ sw $v0, 0x480($sp) +/* 0D014C 800CF54C 8FAE0480 */ lw $t6, 0x480($sp) +/* 0D0150 800CF550 24010002 */ li $at, 2 +/* 0D0154 800CF554 15C10004 */ bne $t6, $at, .L800CF568 +/* 0D0158 800CF558 00000000 */ nop +/* 0D015C 800CF55C 0C035659 */ jal func_800D5964 +/* 0D0160 800CF560 8FA40488 */ lw $a0, 0x488($sp) +/* 0D0164 800CF564 AFA20480 */ sw $v0, 0x480($sp) +.L800CF568: +/* 0D0168 800CF568 8FAF0480 */ lw $t7, 0x480($sp) +/* 0D016C 800CF56C 11E00003 */ beqz $t7, .L800CF57C +/* 0D0170 800CF570 00000000 */ nop +/* 0D0174 800CF574 1000019B */ b .L800CFBE4 +/* 0D0178 800CF578 01E01025 */ move $v0, $t7 +.L800CF57C: +/* 0D017C 800CF57C 8FA40488 */ lw $a0, 0x488($sp) +/* 0D0180 800CF580 0C033EFD */ jal func_800CFBF4 +/* 0D0184 800CF584 27A50038 */ addiu $a1, $sp, 0x38 +/* 0D0188 800CF588 AFA20480 */ sw $v0, 0x480($sp) +/* 0D018C 800CF58C 8FB80480 */ lw $t8, 0x480($sp) +/* 0D0190 800CF590 13000003 */ beqz $t8, .L800CF5A0 +/* 0D0194 800CF594 00000000 */ nop +/* 0D0198 800CF598 10000192 */ b .L800CFBE4 +/* 0D019C 800CF59C 03001025 */ move $v0, $t8 +.L800CF5A0: +/* 0D01A0 800CF5A0 8FB90488 */ lw $t9, 0x488($sp) +/* 0D01A4 800CF5A4 AFA00484 */ sw $zero, 0x484($sp) +/* 0D01A8 800CF5A8 8F280050 */ lw $t0, 0x50($t9) +/* 0D01AC 800CF5AC 190000C0 */ blez $t0, .L800CF8B0 +/* 0D01B0 800CF5B0 00000000 */ nop +.L800CF5B4: +/* 0D01B4 800CF5B4 8FA90488 */ lw $t1, 0x488($sp) +/* 0D01B8 800CF5B8 8FAB0484 */ lw $t3, 0x484($sp) +/* 0D01BC 800CF5BC 27A7025C */ addiu $a3, $sp, 0x25c +/* 0D01C0 800CF5C0 8D2A005C */ lw $t2, 0x5c($t1) +/* 0D01C4 800CF5C4 8D240004 */ lw $a0, 4($t1) +/* 0D01C8 800CF5C8 8D250008 */ lw $a1, 8($t1) +/* 0D01CC 800CF5CC 0C033728 */ jal func_800CDCA0 +/* 0D01D0 800CF5D0 014B3021 */ addu $a2, $t2, $t3 +/* 0D01D4 800CF5D4 AFA20480 */ sw $v0, 0x480($sp) +/* 0D01D8 800CF5D8 8FAC0480 */ lw $t4, 0x480($sp) +/* 0D01DC 800CF5DC 11800003 */ beqz $t4, .L800CF5EC +/* 0D01E0 800CF5E0 00000000 */ nop +/* 0D01E4 800CF5E4 1000017F */ b .L800CFBE4 +/* 0D01E8 800CF5E8 01801025 */ move $v0, $t4 +.L800CF5EC: +/* 0D01EC 800CF5EC 97AD0260 */ lhu $t5, 0x260($sp) +/* 0D01F0 800CF5F0 11A0007D */ beqz $t5, .L800CF7E8 +/* 0D01F4 800CF5F4 00000000 */ nop +/* 0D01F8 800CF5F8 8FAE025C */ lw $t6, 0x25c($sp) +/* 0D01FC 800CF5FC 11C0007A */ beqz $t6, .L800CF7E8 +/* 0D0200 800CF600 00000000 */ nop +/* 0D0204 800CF604 97AF0262 */ lhu $t7, 0x262($sp) +/* 0D0208 800CF608 8FA80488 */ lw $t0, 0x488($sp) +/* 0D020C 800CF60C 241800FF */ li $t8, 255 +/* 0D0210 800CF610 A7AF047C */ sh $t7, 0x47c($sp) +/* 0D0214 800CF614 AFA0002C */ sw $zero, 0x2c($sp) +/* 0D0218 800CF618 AFA00028 */ sw $zero, 0x28($sp) +/* 0D021C 800CF61C A3B80033 */ sb $t8, 0x33($sp) +/* 0D0220 800CF620 97B9047C */ lhu $t9, 0x47c($sp) +/* 0D0224 800CF624 8D090060 */ lw $t1, 0x60($t0) +/* 0D0228 800CF628 0329082A */ slt $at, $t9, $t1 +/* 0D022C 800CF62C 14200042 */ bnez $at, .L800CF738 +/* 0D0230 800CF630 00000000 */ nop +/* 0D0234 800CF634 93AA047C */ lbu $t2, 0x47c($sp) +/* 0D0238 800CF638 910B0064 */ lbu $t3, 0x64($t0) +/* 0D023C 800CF63C 014B082A */ slt $at, $t2, $t3 +/* 0D0240 800CF640 1020003D */ beqz $at, .L800CF738 +/* 0D0244 800CF644 00000000 */ nop +/* 0D0248 800CF648 93AC047D */ lbu $t4, 0x47d($sp) +/* 0D024C 800CF64C 1980003A */ blez $t4, .L800CF738 +/* 0D0250 800CF650 29810080 */ slti $at, $t4, 0x80 +/* 0D0254 800CF654 10200038 */ beqz $at, .L800CF738 +/* 0D0258 800CF658 00000000 */ nop +.L800CF65C: +/* 0D025C 800CF65C 93AD0033 */ lbu $t5, 0x33($sp) +/* 0D0260 800CF660 93AE047C */ lbu $t6, 0x47c($sp) +/* 0D0264 800CF664 11AE000F */ beq $t5, $t6, .L800CF6A4 +/* 0D0268 800CF668 00000000 */ nop +/* 0D026C 800CF66C A3AE0033 */ sb $t6, 0x33($sp) +/* 0D0270 800CF670 8FA40488 */ lw $a0, 0x488($sp) +/* 0D0274 800CF674 27A5027C */ addiu $a1, $sp, 0x27c +/* 0D0278 800CF678 00003025 */ move $a2, $zero +/* 0D027C 800CF67C 0C03572F */ jal func_800D5CBC +/* 0D0280 800CF680 01C03825 */ move $a3, $t6 +/* 0D0284 800CF684 AFA20480 */ sw $v0, 0x480($sp) +/* 0D0288 800CF688 8FAF0480 */ lw $t7, 0x480($sp) +/* 0D028C 800CF68C 11E00005 */ beqz $t7, .L800CF6A4 +/* 0D0290 800CF690 24010003 */ li $at, 3 +/* 0D0294 800CF694 11E10003 */ beq $t7, $at, .L800CF6A4 +/* 0D0298 800CF698 00000000 */ nop +/* 0D029C 800CF69C 10000151 */ b .L800CFBE4 +/* 0D02A0 800CF6A0 01E01025 */ move $v0, $t7 +.L800CF6A4: +/* 0D02A4 800CF6A4 97B8047C */ lhu $t8, 0x47c($sp) +/* 0D02A8 800CF6A8 8FA40488 */ lw $a0, 0x488($sp) +/* 0D02AC 800CF6AC 27A60038 */ addiu $a2, $sp, 0x38 +/* 0D02B0 800CF6B0 A7B80004 */ sh $t8, 4($sp) +/* 0D02B4 800CF6B4 0C033F6A */ jal func_800CFDA8 +/* 0D02B8 800CF6B8 8FA50004 */ lw $a1, 4($sp) +/* 0D02BC 800CF6BC 8FB90028 */ lw $t9, 0x28($sp) +/* 0D02C0 800CF6C0 00594823 */ subu $t1, $v0, $t9 +/* 0D02C4 800CF6C4 AFA9002C */ sw $t1, 0x2c($sp) +/* 0D02C8 800CF6C8 8FA8002C */ lw $t0, 0x2c($sp) +/* 0D02CC 800CF6CC 1500001A */ bnez $t0, .L800CF738 +/* 0D02D0 800CF6D0 00000000 */ nop +/* 0D02D4 800CF6D4 93AC047D */ lbu $t4, 0x47d($sp) +/* 0D02D8 800CF6D8 240A0001 */ li $t2, 1 +/* 0D02DC 800CF6DC 27AE027C */ addiu $t6, $sp, 0x27c +/* 0D02E0 800CF6E0 000C6840 */ sll $t5, $t4, 1 +/* 0D02E4 800CF6E4 AFAA0028 */ sw $t2, 0x28($sp) +/* 0D02E8 800CF6E8 01AE7821 */ addu $t7, $t5, $t6 +/* 0D02EC 800CF6EC 95E10000 */ lhu $at, ($t7) +/* 0D02F0 800CF6F0 27AB047C */ addiu $t3, $sp, 0x47c +/* 0D02F4 800CF6F4 A5610000 */ sh $at, ($t3) +/* 0D02F8 800CF6F8 8FAA0488 */ lw $t2, 0x488($sp) +/* 0D02FC 800CF6FC 97A8047C */ lhu $t0, 0x47c($sp) +/* 0D0300 800CF700 8D4C0060 */ lw $t4, 0x60($t2) +/* 0D0304 800CF704 010C082A */ slt $at, $t0, $t4 +/* 0D0308 800CF708 1420000B */ bnez $at, .L800CF738 +/* 0D030C 800CF70C 00000000 */ nop +/* 0D0310 800CF710 93AD047C */ lbu $t5, 0x47c($sp) +/* 0D0314 800CF714 914E0064 */ lbu $t6, 0x64($t2) +/* 0D0318 800CF718 01AE082A */ slt $at, $t5, $t6 +/* 0D031C 800CF71C 10200006 */ beqz $at, .L800CF738 +/* 0D0320 800CF720 00000000 */ nop +/* 0D0324 800CF724 93B9047D */ lbu $t9, 0x47d($sp) +/* 0D0328 800CF728 1B200003 */ blez $t9, .L800CF738 +/* 0D032C 800CF72C 2B210080 */ slti $at, $t9, 0x80 +/* 0D0330 800CF730 1420FFCA */ bnez $at, .L800CF65C +/* 0D0334 800CF734 00000000 */ nop +.L800CF738: +/* 0D0338 800CF738 8FB8002C */ lw $t8, 0x2c($sp) +/* 0D033C 800CF73C 17000005 */ bnez $t8, .L800CF754 +/* 0D0340 800CF740 00000000 */ nop +/* 0D0344 800CF744 97AB047C */ lhu $t3, 0x47c($sp) +/* 0D0348 800CF748 24010001 */ li $at, 1 +/* 0D034C 800CF74C 11610050 */ beq $t3, $at, .L800CF890 +/* 0D0350 800CF750 00000000 */ nop +.L800CF754: +/* 0D0354 800CF754 8FAF0488 */ lw $t7, 0x488($sp) +/* 0D0358 800CF758 A7A00260 */ sh $zero, 0x260($sp) +/* 0D035C 800CF75C AFA0025C */ sw $zero, 0x25c($sp) +/* 0D0360 800CF760 A7A00262 */ sh $zero, 0x262($sp) +/* 0D0364 800CF764 A3A00264 */ sb $zero, 0x264($sp) +/* 0D0368 800CF768 A7A00266 */ sh $zero, 0x266($sp) +/* 0D036C 800CF76C 91E90065 */ lbu $t1, 0x65($t7) +/* 0D0370 800CF770 1120000A */ beqz $t1, .L800CF79C +/* 0D0374 800CF774 00000000 */ nop +/* 0D0378 800CF778 A1E00065 */ sb $zero, 0x65($t7) +/* 0D037C 800CF77C 0C0357F7 */ jal func_800D5FDC +/* 0D0380 800CF780 8FA40488 */ lw $a0, 0x488($sp) +/* 0D0384 800CF784 AFA20480 */ sw $v0, 0x480($sp) +/* 0D0388 800CF788 8FA80480 */ lw $t0, 0x480($sp) +/* 0D038C 800CF78C 11000003 */ beqz $t0, .L800CF79C +/* 0D0390 800CF790 00000000 */ nop +/* 0D0394 800CF794 10000113 */ b .L800CFBE4 +/* 0D0398 800CF798 01001025 */ move $v0, $t0 +.L800CF79C: +/* 0D039C 800CF79C 8FAC0488 */ lw $t4, 0x488($sp) +/* 0D03A0 800CF7A0 8FAD0484 */ lw $t5, 0x484($sp) +/* 0D03A4 800CF7A4 27A7025C */ addiu $a3, $sp, 0x25c +/* 0D03A8 800CF7A8 8D8A005C */ lw $t2, 0x5c($t4) +/* 0D03AC 800CF7AC 8D840004 */ lw $a0, 4($t4) +/* 0D03B0 800CF7B0 8D850008 */ lw $a1, 8($t4) +/* 0D03B4 800CF7B4 AFA00010 */ sw $zero, 0x10($sp) +/* 0D03B8 800CF7B8 0C03363C */ jal func_800CD8F0 +/* 0D03BC 800CF7BC 014D3021 */ addu $a2, $t2, $t5 +/* 0D03C0 800CF7C0 AFA20480 */ sw $v0, 0x480($sp) +/* 0D03C4 800CF7C4 8FAE0480 */ lw $t6, 0x480($sp) +/* 0D03C8 800CF7C8 11C00003 */ beqz $t6, .L800CF7D8 +/* 0D03CC 800CF7CC 00000000 */ nop +/* 0D03D0 800CF7D0 10000104 */ b .L800CFBE4 +/* 0D03D4 800CF7D4 01C01025 */ move $v0, $t6 +.L800CF7D8: +/* 0D03D8 800CF7D8 8FB90034 */ lw $t9, 0x34($sp) +/* 0D03DC 800CF7DC 27380001 */ addiu $t8, $t9, 1 +/* 0D03E0 800CF7E0 1000002B */ b .L800CF890 +/* 0D03E4 800CF7E4 AFB80034 */ sw $t8, 0x34($sp) +.L800CF7E8: +/* 0D03E8 800CF7E8 97AB0260 */ lhu $t3, 0x260($sp) +/* 0D03EC 800CF7EC 15600004 */ bnez $t3, .L800CF800 +/* 0D03F0 800CF7F0 00000000 */ nop +/* 0D03F4 800CF7F4 8FA9025C */ lw $t1, 0x25c($sp) +/* 0D03F8 800CF7F8 11200025 */ beqz $t1, .L800CF890 +/* 0D03FC 800CF7FC 00000000 */ nop +.L800CF800: +/* 0D0400 800CF800 8FAF0488 */ lw $t7, 0x488($sp) +/* 0D0404 800CF804 A7A00260 */ sh $zero, 0x260($sp) +/* 0D0408 800CF808 AFA0025C */ sw $zero, 0x25c($sp) +/* 0D040C 800CF80C A7A00262 */ sh $zero, 0x262($sp) +/* 0D0410 800CF810 A3A00264 */ sb $zero, 0x264($sp) +/* 0D0414 800CF814 A7A00266 */ sh $zero, 0x266($sp) +/* 0D0418 800CF818 91E80065 */ lbu $t0, 0x65($t7) +/* 0D041C 800CF81C 1100000A */ beqz $t0, .L800CF848 +/* 0D0420 800CF820 00000000 */ nop +/* 0D0424 800CF824 A1E00065 */ sb $zero, 0x65($t7) +/* 0D0428 800CF828 0C0357F7 */ jal func_800D5FDC +/* 0D042C 800CF82C 8FA40488 */ lw $a0, 0x488($sp) +/* 0D0430 800CF830 AFA20480 */ sw $v0, 0x480($sp) +/* 0D0434 800CF834 8FAC0480 */ lw $t4, 0x480($sp) +/* 0D0438 800CF838 11800003 */ beqz $t4, .L800CF848 +/* 0D043C 800CF83C 00000000 */ nop +/* 0D0440 800CF840 100000E8 */ b .L800CFBE4 +/* 0D0444 800CF844 01801025 */ move $v0, $t4 +.L800CF848: +/* 0D0448 800CF848 8FAA0488 */ lw $t2, 0x488($sp) +/* 0D044C 800CF84C 8FAE0484 */ lw $t6, 0x484($sp) +/* 0D0450 800CF850 27A7025C */ addiu $a3, $sp, 0x25c +/* 0D0454 800CF854 8D4D005C */ lw $t5, 0x5c($t2) +/* 0D0458 800CF858 8D440004 */ lw $a0, 4($t2) +/* 0D045C 800CF85C 8D450008 */ lw $a1, 8($t2) +/* 0D0460 800CF860 AFA00010 */ sw $zero, 0x10($sp) +/* 0D0464 800CF864 0C03363C */ jal func_800CD8F0 +/* 0D0468 800CF868 01AE3021 */ addu $a2, $t5, $t6 +/* 0D046C 800CF86C AFA20480 */ sw $v0, 0x480($sp) +/* 0D0470 800CF870 8FB90480 */ lw $t9, 0x480($sp) +/* 0D0474 800CF874 13200003 */ beqz $t9, .L800CF884 +/* 0D0478 800CF878 00000000 */ nop +/* 0D047C 800CF87C 100000D9 */ b .L800CFBE4 +/* 0D0480 800CF880 03201025 */ move $v0, $t9 +.L800CF884: +/* 0D0484 800CF884 8FB80034 */ lw $t8, 0x34($sp) +/* 0D0488 800CF888 270B0001 */ addiu $t3, $t8, 1 +/* 0D048C 800CF88C AFAB0034 */ sw $t3, 0x34($sp) +.L800CF890: +/* 0D0490 800CF890 8FA90484 */ lw $t1, 0x484($sp) +/* 0D0494 800CF894 8FAF0488 */ lw $t7, 0x488($sp) +/* 0D0498 800CF898 25280001 */ addiu $t0, $t1, 1 +/* 0D049C 800CF89C AFA80484 */ sw $t0, 0x484($sp) +/* 0D04A0 800CF8A0 8DEC0050 */ lw $t4, 0x50($t7) +/* 0D04A4 800CF8A4 010C082A */ slt $at, $t0, $t4 +/* 0D04A8 800CF8A8 1420FF42 */ bnez $at, .L800CF5B4 +/* 0D04AC 800CF8AC 00000000 */ nop +.L800CF8B0: +/* 0D04B0 800CF8B0 8FAA0488 */ lw $t2, 0x488($sp) +/* 0D04B4 800CF8B4 AFA00484 */ sw $zero, 0x484($sp) +/* 0D04B8 800CF8B8 8D4D0050 */ lw $t5, 0x50($t2) +/* 0D04BC 800CF8BC 19A0002C */ blez $t5, .L800CF970 +/* 0D04C0 800CF8C0 00000000 */ nop +.L800CF8C4: +/* 0D04C4 800CF8C4 8FAE0488 */ lw $t6, 0x488($sp) +/* 0D04C8 800CF8C8 8FB80484 */ lw $t8, 0x484($sp) +/* 0D04CC 800CF8CC 27A7025C */ addiu $a3, $sp, 0x25c +/* 0D04D0 800CF8D0 8DD9005C */ lw $t9, 0x5c($t6) +/* 0D04D4 800CF8D4 8DC40004 */ lw $a0, 4($t6) +/* 0D04D8 800CF8D8 8DC50008 */ lw $a1, 8($t6) +/* 0D04DC 800CF8DC 0C033728 */ jal func_800CDCA0 +/* 0D04E0 800CF8E0 03383021 */ addu $a2, $t9, $t8 +/* 0D04E4 800CF8E4 AFA20480 */ sw $v0, 0x480($sp) +/* 0D04E8 800CF8E8 8FAB0480 */ lw $t3, 0x480($sp) +/* 0D04EC 800CF8EC 11600003 */ beqz $t3, .L800CF8FC +/* 0D04F0 800CF8F0 00000000 */ nop +/* 0D04F4 800CF8F4 100000BB */ b .L800CFBE4 +/* 0D04F8 800CF8F8 01601025 */ move $v0, $t3 +.L800CF8FC: +/* 0D04FC 800CF8FC 97A90260 */ lhu $t1, 0x260($sp) +/* 0D0500 800CF900 1120000F */ beqz $t1, .L800CF940 +/* 0D0504 800CF904 00000000 */ nop +/* 0D0508 800CF908 8FAF025C */ lw $t7, 0x25c($sp) +/* 0D050C 800CF90C 11E0000C */ beqz $t7, .L800CF940 +/* 0D0510 800CF910 00000000 */ nop +/* 0D0514 800CF914 8FAC0488 */ lw $t4, 0x488($sp) +/* 0D0518 800CF918 97A80262 */ lhu $t0, 0x262($sp) +/* 0D051C 800CF91C 958A0062 */ lhu $t2, 0x62($t4) +/* 0D0520 800CF920 010A082A */ slt $at, $t0, $t2 +/* 0D0524 800CF924 14200006 */ bnez $at, .L800CF940 +/* 0D0528 800CF928 00000000 */ nop +/* 0D052C 800CF92C 8FAD0484 */ lw $t5, 0x484($sp) +/* 0D0530 800CF930 000D7040 */ sll $t6, $t5, 1 +/* 0D0534 800CF934 03AEC821 */ addu $t9, $sp, $t6 +/* 0D0538 800CF938 10000005 */ b .L800CF950 +/* 0D053C 800CF93C A728023C */ sh $t0, 0x23c($t9) +.L800CF940: +/* 0D0540 800CF940 8FB80484 */ lw $t8, 0x484($sp) +/* 0D0544 800CF944 00185840 */ sll $t3, $t8, 1 +/* 0D0548 800CF948 03AB4821 */ addu $t1, $sp, $t3 +/* 0D054C 800CF94C A520023C */ sh $zero, 0x23c($t1) +.L800CF950: +/* 0D0550 800CF950 8FAF0484 */ lw $t7, 0x484($sp) +/* 0D0554 800CF954 8FAA0488 */ lw $t2, 0x488($sp) +/* 0D0558 800CF958 25EC0001 */ addiu $t4, $t7, 1 +/* 0D055C 800CF95C AFAC0484 */ sw $t4, 0x484($sp) +/* 0D0560 800CF960 8D4D0050 */ lw $t5, 0x50($t2) +/* 0D0564 800CF964 018D082A */ slt $at, $t4, $t5 +/* 0D0568 800CF968 1420FFD6 */ bnez $at, .L800CF8C4 +/* 0D056C 800CF96C 00000000 */ nop +.L800CF970: +/* 0D0570 800CF970 8FA80488 */ lw $t0, 0x488($sp) +/* 0D0574 800CF974 A3A00033 */ sb $zero, 0x33($sp) +/* 0D0578 800CF978 910E0064 */ lbu $t6, 0x64($t0) +/* 0D057C 800CF97C 19C0008B */ blez $t6, .L800CFBAC +/* 0D0580 800CF980 00000000 */ nop +.L800CF984: +/* 0D0584 800CF984 8FA40488 */ lw $a0, 0x488($sp) +/* 0D0588 800CF988 27A5027C */ addiu $a1, $sp, 0x27c +/* 0D058C 800CF98C 00003025 */ move $a2, $zero +/* 0D0590 800CF990 0C03572F */ jal func_800D5CBC +/* 0D0594 800CF994 93A70033 */ lbu $a3, 0x33($sp) +/* 0D0598 800CF998 AFA20480 */ sw $v0, 0x480($sp) +/* 0D059C 800CF99C 8FB90480 */ lw $t9, 0x480($sp) +/* 0D05A0 800CF9A0 13200005 */ beqz $t9, .L800CF9B8 +/* 0D05A4 800CF9A4 24010003 */ li $at, 3 +/* 0D05A8 800CF9A8 13210003 */ beq $t9, $at, .L800CF9B8 +/* 0D05AC 800CF9AC 00000000 */ nop +/* 0D05B0 800CF9B0 1000008C */ b .L800CFBE4 +/* 0D05B4 800CF9B4 03201025 */ move $v0, $t9 +.L800CF9B8: +/* 0D05B8 800CF9B8 93B80033 */ lbu $t8, 0x33($sp) +/* 0D05BC 800CF9BC 1B000004 */ blez $t8, .L800CF9D0 +/* 0D05C0 800CF9C0 00000000 */ nop +/* 0D05C4 800CF9C4 240B0001 */ li $t3, 1 +/* 0D05C8 800CF9C8 10000004 */ b .L800CF9DC +/* 0D05CC 800CF9CC AFAB0024 */ sw $t3, 0x24($sp) +.L800CF9D0: +/* 0D05D0 800CF9D0 8FA90488 */ lw $t1, 0x488($sp) +/* 0D05D4 800CF9D4 8D2F0060 */ lw $t7, 0x60($t1) +/* 0D05D8 800CF9D8 AFAF0024 */ sw $t7, 0x24($sp) +.L800CF9DC: +/* 0D05DC 800CF9DC 8FAA0024 */ lw $t2, 0x24($sp) +/* 0D05E0 800CF9E0 AFA00484 */ sw $zero, 0x484($sp) +/* 0D05E4 800CF9E4 1940000D */ blez $t2, .L800CFA1C +/* 0D05E8 800CF9E8 00000000 */ nop +.L800CF9EC: +/* 0D05EC 800CF9EC 8FAC0484 */ lw $t4, 0x484($sp) +/* 0D05F0 800CF9F0 000C6840 */ sll $t5, $t4, 1 +/* 0D05F4 800CF9F4 03AD4021 */ addu $t0, $sp, $t5 +/* 0D05F8 800CF9F8 9508027C */ lhu $t0, 0x27c($t0) +/* 0D05FC 800CF9FC 03AD7021 */ addu $t6, $sp, $t5 +/* 0D0600 800CFA00 A5C8037C */ sh $t0, 0x37c($t6) +/* 0D0604 800CFA04 8FB90484 */ lw $t9, 0x484($sp) +/* 0D0608 800CFA08 8FAB0024 */ lw $t3, 0x24($sp) +/* 0D060C 800CFA0C 27380001 */ addiu $t8, $t9, 1 +/* 0D0610 800CFA10 030B082A */ slt $at, $t8, $t3 +/* 0D0614 800CFA14 1420FFF5 */ bnez $at, .L800CF9EC +/* 0D0618 800CFA18 AFB80484 */ sw $t8, 0x484($sp) +.L800CFA1C: +/* 0D061C 800CFA1C 8FA90484 */ lw $t1, 0x484($sp) +/* 0D0620 800CFA20 29210080 */ slti $at, $t1, 0x80 +/* 0D0624 800CFA24 1020000B */ beqz $at, .L800CFA54 +/* 0D0628 800CFA28 00000000 */ nop +.L800CFA2C: +/* 0D062C 800CFA2C 8FAA0484 */ lw $t2, 0x484($sp) +/* 0D0630 800CFA30 240F0003 */ li $t7, 3 +/* 0D0634 800CFA34 000A6040 */ sll $t4, $t2, 1 +/* 0D0638 800CFA38 03AC4021 */ addu $t0, $sp, $t4 +/* 0D063C 800CFA3C A50F037C */ sh $t7, 0x37c($t0) +/* 0D0640 800CFA40 8FAD0484 */ lw $t5, 0x484($sp) +/* 0D0644 800CFA44 25AE0001 */ addiu $t6, $t5, 1 +/* 0D0648 800CFA48 29C10080 */ slti $at, $t6, 0x80 +/* 0D064C 800CFA4C 1420FFF7 */ bnez $at, .L800CFA2C +/* 0D0650 800CFA50 AFAE0484 */ sw $t6, 0x484($sp) +.L800CFA54: +/* 0D0654 800CFA54 8FB90488 */ lw $t9, 0x488($sp) +/* 0D0658 800CFA58 AFA00484 */ sw $zero, 0x484($sp) +/* 0D065C 800CFA5C 8F380050 */ lw $t8, 0x50($t9) +/* 0D0660 800CFA60 1B00003E */ blez $t8, .L800CFB5C +/* 0D0664 800CFA64 00000000 */ nop +.L800CFA68: +/* 0D0668 800CFA68 8FAB0484 */ lw $t3, 0x484($sp) +/* 0D066C 800CFA6C 27AA023C */ addiu $t2, $sp, 0x23c +/* 0D0670 800CFA70 93A80033 */ lbu $t0, 0x33($sp) +/* 0D0674 800CFA74 000B4840 */ sll $t1, $t3, 1 +/* 0D0678 800CFA78 012A7821 */ addu $t7, $t1, $t2 +/* 0D067C 800CFA7C 91EC0000 */ lbu $t4, ($t7) +/* 0D0680 800CFA80 1588002E */ bne $t4, $t0, .L800CFB3C +/* 0D0684 800CFA84 00000000 */ nop +/* 0D0688 800CFA88 8FAE0488 */ lw $t6, 0x488($sp) +/* 0D068C 800CFA8C 95ED0000 */ lhu $t5, ($t7) +/* 0D0690 800CFA90 95D90062 */ lhu $t9, 0x62($t6) +/* 0D0694 800CFA94 01B9082A */ slt $at, $t5, $t9 +/* 0D0698 800CFA98 14200028 */ bnez $at, .L800CFB3C +/* 0D069C 800CFA9C 00000000 */ nop +.L800CFAA0: +/* 0D06A0 800CFAA0 8FB80484 */ lw $t8, 0x484($sp) +/* 0D06A4 800CFAA4 27A8027C */ addiu $t0, $sp, 0x27c +/* 0D06A8 800CFAA8 27AA0020 */ addiu $t2, $sp, 0x20 +/* 0D06AC 800CFAAC 00185840 */ sll $t3, $t8, 1 +/* 0D06B0 800CFAB0 03AB4821 */ addu $t1, $sp, $t3 +/* 0D06B4 800CFAB4 9129023D */ lbu $t1, 0x23d($t1) +/* 0D06B8 800CFAB8 00096040 */ sll $t4, $t1, 1 +/* 0D06BC 800CFABC 01887821 */ addu $t7, $t4, $t0 +/* 0D06C0 800CFAC0 A3A90023 */ sb $t1, 0x23($sp) +/* 0D06C4 800CFAC4 95E10000 */ lhu $at, ($t7) +/* 0D06C8 800CFAC8 27A80020 */ addiu $t0, $sp, 0x20 +/* 0D06CC 800CFACC 27A9037C */ addiu $t1, $sp, 0x37c +/* 0D06D0 800CFAD0 A5410000 */ sh $at, ($t2) +/* 0D06D4 800CFAD4 93B80023 */ lbu $t8, 0x23($sp) +/* 0D06D8 800CFAD8 95010000 */ lhu $at, ($t0) +/* 0D06DC 800CFADC 00185840 */ sll $t3, $t8, 1 +/* 0D06E0 800CFAE0 01696021 */ addu $t4, $t3, $t1 +/* 0D06E4 800CFAE4 A5810000 */ sh $at, ($t4) +/* 0D06E8 800CFAE8 8FAF0484 */ lw $t7, 0x484($sp) +/* 0D06EC 800CFAEC 27A90020 */ addiu $t1, $sp, 0x20 +/* 0D06F0 800CFAF0 95210000 */ lhu $at, ($t1) +/* 0D06F4 800CFAF4 27B8023C */ addiu $t8, $sp, 0x23c +/* 0D06F8 800CFAF8 000FC840 */ sll $t9, $t7, 1 +/* 0D06FC 800CFAFC 03385821 */ addu $t3, $t9, $t8 +/* 0D0700 800CFB00 A5610000 */ sh $at, ($t3) +/* 0D0704 800CFB04 8FA80484 */ lw $t0, 0x484($sp) +/* 0D0708 800CFB08 27AF023C */ addiu $t7, $sp, 0x23c +/* 0D070C 800CFB0C 93AD0033 */ lbu $t5, 0x33($sp) +/* 0D0710 800CFB10 00085040 */ sll $t2, $t0, 1 +/* 0D0714 800CFB14 014FC821 */ addu $t9, $t2, $t7 +/* 0D0718 800CFB18 93380000 */ lbu $t8, ($t9) +/* 0D071C 800CFB1C 170D0007 */ bne $t8, $t5, .L800CFB3C +/* 0D0720 800CFB20 00000000 */ nop +/* 0D0724 800CFB24 8FAB0488 */ lw $t3, 0x488($sp) +/* 0D0728 800CFB28 972E0000 */ lhu $t6, ($t9) +/* 0D072C 800CFB2C 95690062 */ lhu $t1, 0x62($t3) +/* 0D0730 800CFB30 01C9082A */ slt $at, $t6, $t1 +/* 0D0734 800CFB34 1020FFDA */ beqz $at, .L800CFAA0 +/* 0D0738 800CFB38 00000000 */ nop +.L800CFB3C: +/* 0D073C 800CFB3C 8FAC0484 */ lw $t4, 0x484($sp) +/* 0D0740 800CFB40 8FAA0488 */ lw $t2, 0x488($sp) +/* 0D0744 800CFB44 25880001 */ addiu $t0, $t4, 1 +/* 0D0748 800CFB48 AFA80484 */ sw $t0, 0x484($sp) +/* 0D074C 800CFB4C 8D4F0050 */ lw $t7, 0x50($t2) +/* 0D0750 800CFB50 010F082A */ slt $at, $t0, $t7 +/* 0D0754 800CFB54 1420FFC4 */ bnez $at, .L800CFA68 +/* 0D0758 800CFB58 00000000 */ nop +.L800CFB5C: +/* 0D075C 800CFB5C 8FA40488 */ lw $a0, 0x488($sp) +/* 0D0760 800CFB60 27A5037C */ addiu $a1, $sp, 0x37c +/* 0D0764 800CFB64 24060001 */ li $a2, 1 +/* 0D0768 800CFB68 0C03572F */ jal func_800D5CBC +/* 0D076C 800CFB6C 93A70033 */ lbu $a3, 0x33($sp) +/* 0D0770 800CFB70 AFA20480 */ sw $v0, 0x480($sp) +/* 0D0774 800CFB74 8FB80480 */ lw $t8, 0x480($sp) +/* 0D0778 800CFB78 13000003 */ beqz $t8, .L800CFB88 +/* 0D077C 800CFB7C 00000000 */ nop +/* 0D0780 800CFB80 10000018 */ b .L800CFBE4 +/* 0D0784 800CFB84 03001025 */ move $v0, $t8 +.L800CFB88: +/* 0D0788 800CFB88 93AD0033 */ lbu $t5, 0x33($sp) +/* 0D078C 800CFB8C 8FAE0488 */ lw $t6, 0x488($sp) +/* 0D0790 800CFB90 25B90001 */ addiu $t9, $t5, 1 +/* 0D0794 800CFB94 A3B90033 */ sb $t9, 0x33($sp) +/* 0D0798 800CFB98 91C90064 */ lbu $t1, 0x64($t6) +/* 0D079C 800CFB9C 332B00FF */ andi $t3, $t9, 0xff +/* 0D07A0 800CFBA0 0169082A */ slt $at, $t3, $t1 +/* 0D07A4 800CFBA4 1420FF77 */ bnez $at, .L800CF984 +/* 0D07A8 800CFBA8 00000000 */ nop +.L800CFBAC: +/* 0D07AC 800CFBAC 8FAC0034 */ lw $t4, 0x34($sp) +/* 0D07B0 800CFBB0 11800006 */ beqz $t4, .L800CFBCC +/* 0D07B4 800CFBB4 00000000 */ nop +/* 0D07B8 800CFBB8 8FAA0488 */ lw $t2, 0x488($sp) +/* 0D07BC 800CFBBC 8D480000 */ lw $t0, ($t2) +/* 0D07C0 800CFBC0 350F0002 */ ori $t7, $t0, 2 +/* 0D07C4 800CFBC4 10000006 */ b .L800CFBE0 +/* 0D07C8 800CFBC8 AD4F0000 */ sw $t7, ($t2) +.L800CFBCC: +/* 0D07CC 800CFBCC 8FB80488 */ lw $t8, 0x488($sp) +/* 0D07D0 800CFBD0 2401FFFD */ li $at, -3 +/* 0D07D4 800CFBD4 8F0D0000 */ lw $t5, ($t8) +/* 0D07D8 800CFBD8 01A1C824 */ and $t9, $t5, $at +/* 0D07DC 800CFBDC AF190000 */ sw $t9, ($t8) +.L800CFBE0: +/* 0D07E0 800CFBE0 00001025 */ move $v0, $zero +.L800CFBE4: +/* 0D07E4 800CFBE4 8FBF001C */ lw $ra, 0x1c($sp) +/* 0D07E8 800CFBE8 27BD0488 */ addiu $sp, $sp, 0x488 +/* 0D07EC 800CFBEC 03E00008 */ jr $ra +/* 0D07F0 800CFBF0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D0130/func_800CFBF4.s b/asm/non_matchings/unknown_0D0130/func_800CFBF4.s new file mode 100644 index 00000000..65e6b1c5 --- /dev/null +++ b/asm/non_matchings/unknown_0D0130/func_800CFBF4.s @@ -0,0 +1,124 @@ +glabel func_800CFBF4 +/* 0D07F4 800CFBF4 27BDFED0 */ addiu $sp, $sp, -0x130 +/* 0D07F8 800CFBF8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D07FC 800CFBFC AFA40130 */ sw $a0, 0x130($sp) +/* 0D0800 800CFC00 AFA50134 */ sw $a1, 0x134($sp) +/* 0D0804 800CFC04 AFA0012C */ sw $zero, 0x12c($sp) +.L800CFC08: +/* 0D0808 800CFC08 8FAE0134 */ lw $t6, 0x134($sp) +/* 0D080C 800CFC0C 8FAF012C */ lw $t7, 0x12c($sp) +/* 0D0810 800CFC10 01CFC021 */ addu $t8, $t6, $t7 +/* 0D0814 800CFC14 A3000101 */ sb $zero, 0x101($t8) +/* 0D0818 800CFC18 8FB9012C */ lw $t9, 0x12c($sp) +/* 0D081C 800CFC1C 27280001 */ addiu $t0, $t9, 1 +/* 0D0820 800CFC20 29010100 */ slti $at, $t0, 0x100 +/* 0D0824 800CFC24 1420FFF8 */ bnez $at, .L800CFC08 +/* 0D0828 800CFC28 AFA8012C */ sw $t0, 0x12c($sp) +/* 0D082C 800CFC2C 8FAA0134 */ lw $t2, 0x134($sp) +/* 0D0830 800CFC30 240900FF */ li $t1, 255 +/* 0D0834 800CFC34 A1490100 */ sb $t1, 0x100($t2) +/* 0D0838 800CFC38 8FAB0130 */ lw $t3, 0x130($sp) +/* 0D083C 800CFC3C A3A00123 */ sb $zero, 0x123($sp) +/* 0D0840 800CFC40 916C0064 */ lbu $t4, 0x64($t3) +/* 0D0844 800CFC44 19800053 */ blez $t4, .L800CFD94 +/* 0D0848 800CFC48 00000000 */ nop +.L800CFC4C: +/* 0D084C 800CFC4C 93AD0123 */ lbu $t5, 0x123($sp) +/* 0D0850 800CFC50 19A00004 */ blez $t5, .L800CFC64 +/* 0D0854 800CFC54 00000000 */ nop +/* 0D0858 800CFC58 240E0001 */ li $t6, 1 +/* 0D085C 800CFC5C 10000004 */ b .L800CFC70 +/* 0D0860 800CFC60 AFAE0124 */ sw $t6, 0x124($sp) +.L800CFC64: +/* 0D0864 800CFC64 8FAF0130 */ lw $t7, 0x130($sp) +/* 0D0868 800CFC68 8DF80060 */ lw $t8, 0x60($t7) +/* 0D086C 800CFC6C AFB80124 */ sw $t8, 0x124($sp) +.L800CFC70: +/* 0D0870 800CFC70 8FA40130 */ lw $a0, 0x130($sp) +/* 0D0874 800CFC74 27A50020 */ addiu $a1, $sp, 0x20 +/* 0D0878 800CFC78 00003025 */ move $a2, $zero +/* 0D087C 800CFC7C 0C03572F */ jal func_800D5CBC +/* 0D0880 800CFC80 93A70123 */ lbu $a3, 0x123($sp) +/* 0D0884 800CFC84 AFA2001C */ sw $v0, 0x1c($sp) +/* 0D0888 800CFC88 8FB9001C */ lw $t9, 0x1c($sp) +/* 0D088C 800CFC8C 13200005 */ beqz $t9, .L800CFCA4 +/* 0D0890 800CFC90 24010003 */ li $at, 3 +/* 0D0894 800CFC94 13210003 */ beq $t9, $at, .L800CFCA4 +/* 0D0898 800CFC98 00000000 */ nop +/* 0D089C 800CFC9C 1000003E */ b .L800CFD98 +/* 0D08A0 800CFCA0 03201025 */ move $v0, $t9 +.L800CFCA4: +/* 0D08A4 800CFCA4 8FA80124 */ lw $t0, 0x124($sp) +/* 0D08A8 800CFCA8 29010080 */ slti $at, $t0, 0x80 +/* 0D08AC 800CFCAC 10200030 */ beqz $at, .L800CFD70 +/* 0D08B0 800CFCB0 AFA8012C */ sw $t0, 0x12c($sp) +.L800CFCB4: +/* 0D08B4 800CFCB4 8FAA012C */ lw $t2, 0x12c($sp) +/* 0D08B8 800CFCB8 27AC0020 */ addiu $t4, $sp, 0x20 +/* 0D08BC 800CFCBC 27A90120 */ addiu $t1, $sp, 0x120 +/* 0D08C0 800CFCC0 000A5840 */ sll $t3, $t2, 1 +/* 0D08C4 800CFCC4 016C6821 */ addu $t5, $t3, $t4 +/* 0D08C8 800CFCC8 95A10000 */ lhu $at, ($t5) +/* 0D08CC 800CFCCC A5210000 */ sh $at, ($t1) +/* 0D08D0 800CFCD0 8FB90130 */ lw $t9, 0x130($sp) +/* 0D08D4 800CFCD4 97B80120 */ lhu $t8, 0x120($sp) +/* 0D08D8 800CFCD8 8F280060 */ lw $t0, 0x60($t9) +/* 0D08DC 800CFCDC 0308082A */ slt $at, $t8, $t0 +/* 0D08E0 800CFCE0 1420001E */ bnez $at, .L800CFD5C +/* 0D08E4 800CFCE4 00000000 */ nop +/* 0D08E8 800CFCE8 93AA0120 */ lbu $t2, 0x120($sp) +/* 0D08EC 800CFCEC 93AB0123 */ lbu $t3, 0x123($sp) +/* 0D08F0 800CFCF0 114B001A */ beq $t2, $t3, .L800CFD5C +/* 0D08F4 800CFCF4 00000000 */ nop +/* 0D08F8 800CFCF8 93AC0121 */ lbu $t4, 0x121($sp) +/* 0D08FC 800CFCFC 8FB90134 */ lw $t9, 0x134($sp) +/* 0D0900 800CFD00 05810003 */ bgez $t4, .L800CFD10 +/* 0D0904 800CFD04 000C7083 */ sra $t6, $t4, 2 +/* 0D0908 800CFD08 25810003 */ addiu $at, $t4, 3 +/* 0D090C 800CFD0C 00017083 */ sra $t6, $at, 2 +.L800CFD10: +/* 0D0910 800CFD10 05410004 */ bgez $t2, .L800CFD24 +/* 0D0914 800CFD14 31490007 */ andi $t1, $t2, 7 +/* 0D0918 800CFD18 11200002 */ beqz $t1, .L800CFD24 +/* 0D091C 800CFD1C 00000000 */ nop +/* 0D0920 800CFD20 2529FFF8 */ addiu $t1, $t1, -8 +.L800CFD24: +/* 0D0924 800CFD24 00096940 */ sll $t5, $t1, 5 +/* 0D0928 800CFD28 01CD7821 */ addu $t7, $t6, $t5 +/* 0D092C 800CFD2C AFAF0128 */ sw $t7, 0x128($sp) +/* 0D0930 800CFD30 032FC021 */ addu $t8, $t9, $t7 +/* 0D0934 800CFD34 93080101 */ lbu $t0, 0x101($t8) +/* 0D0938 800CFD38 05610004 */ bgez $t3, .L800CFD4C +/* 0D093C 800CFD3C 316C0007 */ andi $t4, $t3, 7 +/* 0D0940 800CFD40 11800002 */ beqz $t4, .L800CFD4C +/* 0D0944 800CFD44 00000000 */ nop +/* 0D0948 800CFD48 258CFFF8 */ addiu $t4, $t4, -8 +.L800CFD4C: +/* 0D094C 800CFD4C 240A0001 */ li $t2, 1 +/* 0D0950 800CFD50 018A4804 */ sllv $t1, $t2, $t4 +/* 0D0954 800CFD54 01097025 */ or $t6, $t0, $t1 +/* 0D0958 800CFD58 A30E0101 */ sb $t6, 0x101($t8) +.L800CFD5C: +/* 0D095C 800CFD5C 8FAD012C */ lw $t5, 0x12c($sp) +/* 0D0960 800CFD60 25B90001 */ addiu $t9, $t5, 1 +/* 0D0964 800CFD64 2B210080 */ slti $at, $t9, 0x80 +/* 0D0968 800CFD68 1420FFD2 */ bnez $at, .L800CFCB4 +/* 0D096C 800CFD6C AFB9012C */ sw $t9, 0x12c($sp) +.L800CFD70: +/* 0D0970 800CFD70 93AF0123 */ lbu $t7, 0x123($sp) +/* 0D0974 800CFD74 8FAC0130 */ lw $t4, 0x130($sp) +/* 0D0978 800CFD78 25EB0001 */ addiu $t3, $t7, 1 +/* 0D097C 800CFD7C A3AB0123 */ sb $t3, 0x123($sp) +/* 0D0980 800CFD80 91880064 */ lbu $t0, 0x64($t4) +/* 0D0984 800CFD84 316A00FF */ andi $t2, $t3, 0xff +/* 0D0988 800CFD88 0148082A */ slt $at, $t2, $t0 +/* 0D098C 800CFD8C 1420FFAF */ bnez $at, .L800CFC4C +/* 0D0990 800CFD90 00000000 */ nop +.L800CFD94: +/* 0D0994 800CFD94 00001025 */ move $v0, $zero +.L800CFD98: +/* 0D0998 800CFD98 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D099C 800CFD9C 27BD0130 */ addiu $sp, $sp, 0x130 +/* 0D09A0 800CFDA0 03E00008 */ jr $ra +/* 0D09A4 800CFDA4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D0130/func_800CFDA8.s b/asm/non_matchings/unknown_0D0130/func_800CFDA8.s new file mode 100644 index 00000000..ce21b092 --- /dev/null +++ b/asm/non_matchings/unknown_0D0130/func_800CFDA8.s @@ -0,0 +1,139 @@ +glabel func_800CFDA8 +/* 0D09A8 800CFDA8 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0D09AC 800CFDAC AFA50034 */ sw $a1, 0x34($sp) +/* 0D09B0 800CFDB0 93B80034 */ lbu $t8, 0x34($sp) +/* 0D09B4 800CFDB4 93AE0035 */ lbu $t6, 0x35($sp) +/* 0D09B8 800CFDB8 AFA40030 */ sw $a0, 0x30($sp) +/* 0D09BC 800CFDBC 8FAA0030 */ lw $t2, 0x30($sp) +/* 0D09C0 800CFDC0 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D09C4 800CFDC4 AFA60038 */ sw $a2, 0x38($sp) +/* 0D09C8 800CFDC8 AFA00024 */ sw $zero, 0x24($sp) +/* 0D09CC 800CFDCC AFA00018 */ sw $zero, 0x18($sp) +/* 0D09D0 800CFDD0 05C10003 */ bgez $t6, .L800CFDE0 +/* 0D09D4 800CFDD4 000E7883 */ sra $t7, $t6, 2 +/* 0D09D8 800CFDD8 25C10003 */ addiu $at, $t6, 3 +/* 0D09DC 800CFDDC 00017883 */ sra $t7, $at, 2 +.L800CFDE0: +/* 0D09E0 800CFDE0 07010004 */ bgez $t8, .L800CFDF4 +/* 0D09E4 800CFDE4 33190007 */ andi $t9, $t8, 7 +/* 0D09E8 800CFDE8 13200002 */ beqz $t9, .L800CFDF4 +/* 0D09EC 800CFDEC 00000000 */ nop +/* 0D09F0 800CFDF0 2739FFF8 */ addiu $t9, $t9, -8 +.L800CFDF4: +/* 0D09F4 800CFDF4 00194140 */ sll $t0, $t9, 5 +/* 0D09F8 800CFDF8 01E84821 */ addu $t1, $t7, $t0 +/* 0D09FC 800CFDFC AFA90028 */ sw $t1, 0x28($sp) +/* 0D0A00 800CFE00 A3A00023 */ sb $zero, 0x23($sp) +/* 0D0A04 800CFE04 914B0064 */ lbu $t3, 0x64($t2) +/* 0D0A08 800CFE08 1960005C */ blez $t3, .L800CFF7C +/* 0D0A0C 800CFE0C 00000000 */ nop +.L800CFE10: +/* 0D0A10 800CFE10 93AC0023 */ lbu $t4, 0x23($sp) +/* 0D0A14 800CFE14 19800004 */ blez $t4, .L800CFE28 +/* 0D0A18 800CFE18 00000000 */ nop +/* 0D0A1C 800CFE1C 240D0001 */ li $t5, 1 +/* 0D0A20 800CFE20 10000004 */ b .L800CFE34 +/* 0D0A24 800CFE24 AFAD001C */ sw $t5, 0x1c($sp) +.L800CFE28: +/* 0D0A28 800CFE28 8FAE0030 */ lw $t6, 0x30($sp) +/* 0D0A2C 800CFE2C 8DD80060 */ lw $t8, 0x60($t6) +/* 0D0A30 800CFE30 AFB8001C */ sw $t8, 0x1c($sp) +.L800CFE34: +/* 0D0A34 800CFE34 93B90023 */ lbu $t9, 0x23($sp) +/* 0D0A38 800CFE38 93AF0034 */ lbu $t7, 0x34($sp) +/* 0D0A3C 800CFE3C 132F000F */ beq $t9, $t7, .L800CFE7C +/* 0D0A40 800CFE40 00000000 */ nop +/* 0D0A44 800CFE44 8FA80038 */ lw $t0, 0x38($sp) +/* 0D0A48 800CFE48 8FA90028 */ lw $t1, 0x28($sp) +/* 0D0A4C 800CFE4C 240D0001 */ li $t5, 1 +/* 0D0A50 800CFE50 01095021 */ addu $t2, $t0, $t1 +/* 0D0A54 800CFE54 914B0101 */ lbu $t3, 0x101($t2) +/* 0D0A58 800CFE58 07210004 */ bgez $t9, .L800CFE6C +/* 0D0A5C 800CFE5C 332C0007 */ andi $t4, $t9, 7 +/* 0D0A60 800CFE60 11800002 */ beqz $t4, .L800CFE6C +/* 0D0A64 800CFE64 00000000 */ nop +/* 0D0A68 800CFE68 258CFFF8 */ addiu $t4, $t4, -8 +.L800CFE6C: +/* 0D0A6C 800CFE6C 018D7004 */ sllv $t6, $t5, $t4 +/* 0D0A70 800CFE70 016EC024 */ and $t8, $t3, $t6 +/* 0D0A74 800CFE74 13000038 */ beqz $t8, .L800CFF58 +/* 0D0A78 800CFE78 00000000 */ nop +.L800CFE7C: +/* 0D0A7C 800CFE7C 8FA80038 */ lw $t0, 0x38($sp) +/* 0D0A80 800CFE80 93AF0023 */ lbu $t7, 0x23($sp) +/* 0D0A84 800CFE84 91090100 */ lbu $t1, 0x100($t0) +/* 0D0A88 800CFE88 11E90011 */ beq $t7, $t1, .L800CFED0 +/* 0D0A8C 800CFE8C 00000000 */ nop +/* 0D0A90 800CFE90 8FA40030 */ lw $a0, 0x30($sp) +/* 0D0A94 800CFE94 01002825 */ move $a1, $t0 +/* 0D0A98 800CFE98 00003025 */ move $a2, $zero +/* 0D0A9C 800CFE9C 0C03572F */ jal func_800D5CBC +/* 0D0AA0 800CFEA0 01E03825 */ move $a3, $t7 +/* 0D0AA4 800CFEA4 AFA20018 */ sw $v0, 0x18($sp) +/* 0D0AA8 800CFEA8 8FAA0018 */ lw $t2, 0x18($sp) +/* 0D0AAC 800CFEAC 11400005 */ beqz $t2, .L800CFEC4 +/* 0D0AB0 800CFEB0 24010003 */ li $at, 3 +/* 0D0AB4 800CFEB4 11410003 */ beq $t2, $at, .L800CFEC4 +/* 0D0AB8 800CFEB8 00000000 */ nop +/* 0D0ABC 800CFEBC 10000030 */ b .L800CFF80 +/* 0D0AC0 800CFEC0 01401025 */ move $v0, $t2 +.L800CFEC4: +/* 0D0AC4 800CFEC4 93B90023 */ lbu $t9, 0x23($sp) +/* 0D0AC8 800CFEC8 8FAD0038 */ lw $t5, 0x38($sp) +/* 0D0ACC 800CFECC A1B90100 */ sb $t9, 0x100($t5) +.L800CFED0: +/* 0D0AD0 800CFED0 8FAB0024 */ lw $t3, 0x24($sp) +/* 0D0AD4 800CFED4 8FAC001C */ lw $t4, 0x1c($sp) +/* 0D0AD8 800CFED8 29610002 */ slti $at, $t3, 2 +/* 0D0ADC 800CFEDC 10200018 */ beqz $at, .L800CFF40 +/* 0D0AE0 800CFEE0 AFAC002C */ sw $t4, 0x2c($sp) +/* 0D0AE4 800CFEE4 29810080 */ slti $at, $t4, 0x80 +/* 0D0AE8 800CFEE8 10200015 */ beqz $at, .L800CFF40 +/* 0D0AEC 800CFEEC 00000000 */ nop +.L800CFEF0: +/* 0D0AF0 800CFEF0 8FB8002C */ lw $t8, 0x2c($sp) +/* 0D0AF4 800CFEF4 8FAE0038 */ lw $t6, 0x38($sp) +/* 0D0AF8 800CFEF8 97AA0034 */ lhu $t2, 0x34($sp) +/* 0D0AFC 800CFEFC 00184840 */ sll $t1, $t8, 1 +/* 0D0B00 800CFF00 01C94021 */ addu $t0, $t6, $t1 +/* 0D0B04 800CFF04 950F0000 */ lhu $t7, ($t0) +/* 0D0B08 800CFF08 15EA0004 */ bne $t7, $t2, .L800CFF1C +/* 0D0B0C 800CFF0C 00000000 */ nop +/* 0D0B10 800CFF10 8FB90024 */ lw $t9, 0x24($sp) +/* 0D0B14 800CFF14 272D0001 */ addiu $t5, $t9, 1 +/* 0D0B18 800CFF18 AFAD0024 */ sw $t5, 0x24($sp) +.L800CFF1C: +/* 0D0B1C 800CFF1C 8FAB002C */ lw $t3, 0x2c($sp) +/* 0D0B20 800CFF20 8FB80024 */ lw $t8, 0x24($sp) +/* 0D0B24 800CFF24 256C0001 */ addiu $t4, $t3, 1 +/* 0D0B28 800CFF28 2B010002 */ slti $at, $t8, 2 +/* 0D0B2C 800CFF2C 10200004 */ beqz $at, .L800CFF40 +/* 0D0B30 800CFF30 AFAC002C */ sw $t4, 0x2c($sp) +/* 0D0B34 800CFF34 29810080 */ slti $at, $t4, 0x80 +/* 0D0B38 800CFF38 1420FFED */ bnez $at, .L800CFEF0 +/* 0D0B3C 800CFF3C 00000000 */ nop +.L800CFF40: +/* 0D0B40 800CFF40 8FAE0024 */ lw $t6, 0x24($sp) +/* 0D0B44 800CFF44 29C10002 */ slti $at, $t6, 2 +/* 0D0B48 800CFF48 14200003 */ bnez $at, .L800CFF58 +/* 0D0B4C 800CFF4C 00000000 */ nop +/* 0D0B50 800CFF50 1000000B */ b .L800CFF80 +/* 0D0B54 800CFF54 24020002 */ li $v0, 2 +.L800CFF58: +/* 0D0B58 800CFF58 93A90023 */ lbu $t1, 0x23($sp) +/* 0D0B5C 800CFF5C 8FAA0030 */ lw $t2, 0x30($sp) +/* 0D0B60 800CFF60 25280001 */ addiu $t0, $t1, 1 +/* 0D0B64 800CFF64 A3A80023 */ sb $t0, 0x23($sp) +/* 0D0B68 800CFF68 91590064 */ lbu $t9, 0x64($t2) +/* 0D0B6C 800CFF6C 310F00FF */ andi $t7, $t0, 0xff +/* 0D0B70 800CFF70 01F9082A */ slt $at, $t7, $t9 +/* 0D0B74 800CFF74 1420FFA6 */ bnez $at, .L800CFE10 +/* 0D0B78 800CFF78 00000000 */ nop +.L800CFF7C: +/* 0D0B7C 800CFF7C 8FA20024 */ lw $v0, 0x24($sp) +.L800CFF80: +/* 0D0B80 800CFF80 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D0B84 800CFF84 27BD0030 */ addiu $sp, $sp, 0x30 +/* 0D0B88 800CFF88 03E00008 */ jr $ra +/* 0D0B8C 800CFF8C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D0130/func_800CFF90.s b/asm/non_matchings/unknown_0D0130/func_800CFF90.s new file mode 100644 index 00000000..0a25e1d8 --- /dev/null +++ b/asm/non_matchings/unknown_0D0130/func_800CFF90.s @@ -0,0 +1,279 @@ +glabel func_800CFF90 +/* 0D0B90 800CFF90 27BDFEB0 */ addiu $sp, $sp, -0x150 +/* 0D0B94 800CFF94 AFBF001C */ sw $ra, 0x1c($sp) +/* 0D0B98 800CFF98 AFA40150 */ sw $a0, 0x150($sp) +/* 0D0B9C 800CFF9C AFA50154 */ sw $a1, 0x154($sp) +/* 0D0BA0 800CFFA0 0C033594 */ jal func_800CD650 +/* 0D0BA4 800CFFA4 AFA60158 */ sw $a2, 0x158($sp) +/* 0D0BA8 800CFFA8 8FA40154 */ lw $a0, 0x154($sp) +/* 0D0BAC 800CFFAC 0C033B75 */ jal func_800CEDD4 +/* 0D0BB0 800CFFB0 8FA50158 */ lw $a1, 0x158($sp) +/* 0D0BB4 800CFFB4 AFA20020 */ sw $v0, 0x20($sp) +/* 0D0BB8 800CFFB8 8FAE0020 */ lw $t6, 0x20($sp) +/* 0D0BBC 800CFFBC 11C00003 */ beqz $t6, .L800CFFCC +/* 0D0BC0 800CFFC0 00000000 */ nop +/* 0D0BC4 800CFFC4 100000EE */ b .L800D0380 +/* 0D0BC8 800CFFC8 01C01025 */ move $v0, $t6 +.L800CFFCC: +/* 0D0BCC 800CFFCC 8FAF0150 */ lw $t7, 0x150($sp) +/* 0D0BD0 800CFFD0 8DF80000 */ lw $t8, ($t7) +/* 0D0BD4 800CFFD4 3B190001 */ xori $t9, $t8, 1 +/* 0D0BD8 800CFFD8 ADF90000 */ sw $t9, ($t7) +/* 0D0BDC 800CFFDC 8FA90150 */ lw $t1, 0x150($sp) +/* 0D0BE0 800CFFE0 8FA80154 */ lw $t0, 0x154($sp) +/* 0D0BE4 800CFFE4 AD280004 */ sw $t0, 4($t1) +/* 0D0BE8 800CFFE8 8FAB0150 */ lw $t3, 0x150($sp) +/* 0D0BEC 800CFFEC 8FAA0158 */ lw $t2, 0x158($sp) +/* 0D0BF0 800CFFF0 0C0335A5 */ jal func_800CD694 +/* 0D0BF4 800CFFF4 AD6A0008 */ sw $t2, 8($t3) +/* 0D0BF8 800CFFF8 0C035659 */ jal func_800D5964 +/* 0D0BFC 800CFFFC 8FA40150 */ lw $a0, 0x150($sp) +/* 0D0C00 800D0000 AFA20020 */ sw $v0, 0x20($sp) +/* 0D0C04 800D0004 8FAC0020 */ lw $t4, 0x20($sp) +/* 0D0C08 800D0008 11800003 */ beqz $t4, .L800D0018 +/* 0D0C0C 800D000C 00000000 */ nop +/* 0D0C10 800D0010 100000DB */ b .L800D0380 +/* 0D0C14 800D0014 01801025 */ move $v0, $t4 +.L800D0018: +/* 0D0C18 800D0018 8FAD0150 */ lw $t5, 0x150($sp) +/* 0D0C1C 800D001C 91AE0065 */ lbu $t6, 0x65($t5) +/* 0D0C20 800D0020 11C0000A */ beqz $t6, .L800D004C +/* 0D0C24 800D0024 00000000 */ nop +/* 0D0C28 800D0028 A1A00065 */ sb $zero, 0x65($t5) +/* 0D0C2C 800D002C 0C0357F7 */ jal func_800D5FDC +/* 0D0C30 800D0030 8FA40150 */ lw $a0, 0x150($sp) +/* 0D0C34 800D0034 AFA20020 */ sw $v0, 0x20($sp) +/* 0D0C38 800D0038 8FB80020 */ lw $t8, 0x20($sp) +/* 0D0C3C 800D003C 13000003 */ beqz $t8, .L800D004C +/* 0D0C40 800D0040 00000000 */ nop +/* 0D0C44 800D0044 100000CE */ b .L800D0380 +/* 0D0C48 800D0048 03001025 */ move $v0, $t8 +.L800D004C: +/* 0D0C4C 800D004C AFA0014C */ sw $zero, 0x14c($sp) +.L800D0050: +/* 0D0C50 800D0050 8FB9014C */ lw $t9, 0x14c($sp) +/* 0D0C54 800D0054 03B97821 */ addu $t7, $sp, $t9 +/* 0D0C58 800D0058 A1E00028 */ sb $zero, 0x28($t7) +/* 0D0C5C 800D005C 8FA8014C */ lw $t0, 0x14c($sp) +/* 0D0C60 800D0060 25090001 */ addiu $t1, $t0, 1 +/* 0D0C64 800D0064 29210020 */ slti $at, $t1, 0x20 +/* 0D0C68 800D0068 1420FFF9 */ bnez $at, .L800D0050 +/* 0D0C6C 800D006C AFA9014C */ sw $t1, 0x14c($sp) +/* 0D0C70 800D0070 8FAA0150 */ lw $t2, 0x150($sp) +/* 0D0C74 800D0074 AFA0014C */ sw $zero, 0x14c($sp) +/* 0D0C78 800D0078 8D4B0050 */ lw $t3, 0x50($t2) +/* 0D0C7C 800D007C 19600018 */ blez $t3, .L800D00E0 +/* 0D0C80 800D0080 00000000 */ nop +.L800D0084: +/* 0D0C84 800D0084 8FAC0150 */ lw $t4, 0x150($sp) +/* 0D0C88 800D0088 8FAD014C */ lw $t5, 0x14c($sp) +/* 0D0C8C 800D008C 8FA40154 */ lw $a0, 0x154($sp) +/* 0D0C90 800D0090 8D8E005C */ lw $t6, 0x5c($t4) +/* 0D0C94 800D0094 AFA00010 */ sw $zero, 0x10($sp) +/* 0D0C98 800D0098 8FA50158 */ lw $a1, 0x158($sp) +/* 0D0C9C 800D009C 27A70028 */ addiu $a3, $sp, 0x28 +/* 0D0CA0 800D00A0 0C03363C */ jal func_800CD8F0 +/* 0D0CA4 800D00A4 01CD3021 */ addu $a2, $t6, $t5 +/* 0D0CA8 800D00A8 AFA20020 */ sw $v0, 0x20($sp) +/* 0D0CAC 800D00AC 8FB80020 */ lw $t8, 0x20($sp) +/* 0D0CB0 800D00B0 13000003 */ beqz $t8, .L800D00C0 +/* 0D0CB4 800D00B4 00000000 */ nop +/* 0D0CB8 800D00B8 100000B1 */ b .L800D0380 +/* 0D0CBC 800D00BC 03001025 */ move $v0, $t8 +.L800D00C0: +/* 0D0CC0 800D00C0 8FB9014C */ lw $t9, 0x14c($sp) +/* 0D0CC4 800D00C4 8FA80150 */ lw $t0, 0x150($sp) +/* 0D0CC8 800D00C8 272F0001 */ addiu $t7, $t9, 1 +/* 0D0CCC 800D00CC AFAF014C */ sw $t7, 0x14c($sp) +/* 0D0CD0 800D00D0 8D090050 */ lw $t1, 0x50($t0) +/* 0D0CD4 800D00D4 01E9082A */ slt $at, $t7, $t1 +/* 0D0CD8 800D00D8 1420FFEA */ bnez $at, .L800D0084 +/* 0D0CDC 800D00DC 00000000 */ nop +.L800D00E0: +/* 0D0CE0 800D00E0 8FAA0150 */ lw $t2, 0x150($sp) +/* 0D0CE4 800D00E4 AFA0014C */ sw $zero, 0x14c($sp) +/* 0D0CE8 800D00E8 8D4B0060 */ lw $t3, 0x60($t2) +/* 0D0CEC 800D00EC 1960000D */ blez $t3, .L800D0124 +/* 0D0CF0 800D00F0 00000000 */ nop +.L800D00F4: +/* 0D0CF4 800D00F4 8FAC014C */ lw $t4, 0x14c($sp) +/* 0D0CF8 800D00F8 000C7040 */ sll $t6, $t4, 1 +/* 0D0CFC 800D00FC 03AE6821 */ addu $t5, $sp, $t6 +/* 0D0D00 800D0100 A5A00048 */ sh $zero, 0x48($t5) +/* 0D0D04 800D0104 8FB8014C */ lw $t8, 0x14c($sp) +/* 0D0D08 800D0108 8FA80150 */ lw $t0, 0x150($sp) +/* 0D0D0C 800D010C 27190001 */ addiu $t9, $t8, 1 +/* 0D0D10 800D0110 AFB9014C */ sw $t9, 0x14c($sp) +/* 0D0D14 800D0114 8D0F0060 */ lw $t7, 0x60($t0) +/* 0D0D18 800D0118 032F082A */ slt $at, $t9, $t7 +/* 0D0D1C 800D011C 1420FFF5 */ bnez $at, .L800D00F4 +/* 0D0D20 800D0120 00000000 */ nop +.L800D0124: +/* 0D0D24 800D0124 8FA90150 */ lw $t1, 0x150($sp) +/* 0D0D28 800D0128 8D2A0060 */ lw $t2, 0x60($t1) +/* 0D0D2C 800D012C 29410080 */ slti $at, $t2, 0x80 +/* 0D0D30 800D0130 1020000B */ beqz $at, .L800D0160 +/* 0D0D34 800D0134 AFAA014C */ sw $t2, 0x14c($sp) +.L800D0138: +/* 0D0D38 800D0138 8FAC014C */ lw $t4, 0x14c($sp) +/* 0D0D3C 800D013C 240B0003 */ li $t3, 3 +/* 0D0D40 800D0140 000C7040 */ sll $t6, $t4, 1 +/* 0D0D44 800D0144 03AE6821 */ addu $t5, $sp, $t6 +/* 0D0D48 800D0148 A5AB0048 */ sh $t3, 0x48($t5) +/* 0D0D4C 800D014C 8FB8014C */ lw $t8, 0x14c($sp) +/* 0D0D50 800D0150 27080001 */ addiu $t0, $t8, 1 +/* 0D0D54 800D0154 29010080 */ slti $at, $t0, 0x80 +/* 0D0D58 800D0158 1420FFF7 */ bnez $at, .L800D0138 +/* 0D0D5C 800D015C AFA8014C */ sw $t0, 0x14c($sp) +.L800D0160: +/* 0D0D60 800D0160 8FB90150 */ lw $t9, 0x150($sp) +/* 0D0D64 800D0164 27AA0048 */ addiu $t2, $sp, 0x48 +/* 0D0D68 800D0168 8F2F0060 */ lw $t7, 0x60($t9) +/* 0D0D6C 800D016C 000F2823 */ negu $a1, $t7 +/* 0D0D70 800D0170 00056040 */ sll $t4, $a1, 1 +/* 0D0D74 800D0174 01802825 */ move $a1, $t4 +/* 0D0D78 800D0178 000F4840 */ sll $t1, $t7, 1 +/* 0D0D7C 800D017C 012A2021 */ addu $a0, $t1, $t2 +/* 0D0D80 800D0180 0C0354BC */ jal func_800D52F0 +/* 0D0D84 800D0184 24A50100 */ addiu $a1, $a1, 0x100 +/* 0D0D88 800D0188 27AB0048 */ addiu $t3, $sp, 0x48 +/* 0D0D8C 800D018C A5620000 */ sh $v0, ($t3) +/* 0D0D90 800D0190 27AE0048 */ addiu $t6, $sp, 0x48 +/* 0D0D94 800D0194 AFAE0024 */ sw $t6, 0x24($sp) +/* 0D0D98 800D0198 AFA0014C */ sw $zero, 0x14c($sp) +.L800D019C: +/* 0D0D9C 800D019C 8FAD0150 */ lw $t5, 0x150($sp) +/* 0D0DA0 800D01A0 8FA8014C */ lw $t0, 0x14c($sp) +/* 0D0DA4 800D01A4 8FA90024 */ lw $t1, 0x24($sp) +/* 0D0DA8 800D01A8 8DB80054 */ lw $t8, 0x54($t5) +/* 0D0DAC 800D01AC 0008C940 */ sll $t9, $t0, 5 +/* 0D0DB0 800D01B0 AFA00010 */ sw $zero, 0x10($sp) +/* 0D0DB4 800D01B4 8FA40154 */ lw $a0, 0x154($sp) +/* 0D0DB8 800D01B8 8FA50158 */ lw $a1, 0x158($sp) +/* 0D0DBC 800D01BC 03293821 */ addu $a3, $t9, $t1 +/* 0D0DC0 800D01C0 0C03363C */ jal func_800CD8F0 +/* 0D0DC4 800D01C4 03083021 */ addu $a2, $t8, $t0 +/* 0D0DC8 800D01C8 AFA20020 */ sw $v0, 0x20($sp) +/* 0D0DCC 800D01CC 8FAA0020 */ lw $t2, 0x20($sp) +/* 0D0DD0 800D01D0 11400003 */ beqz $t2, .L800D01E0 +/* 0D0DD4 800D01D4 00000000 */ nop +/* 0D0DD8 800D01D8 10000069 */ b .L800D0380 +/* 0D0DDC 800D01DC 01401025 */ move $v0, $t2 +.L800D01E0: +/* 0D0DE0 800D01E0 8FAF0150 */ lw $t7, 0x150($sp) +/* 0D0DE4 800D01E4 8FAB014C */ lw $t3, 0x14c($sp) +/* 0D0DE8 800D01E8 8FAD0024 */ lw $t5, 0x24($sp) +/* 0D0DEC 800D01EC 8DEC0058 */ lw $t4, 0x58($t7) +/* 0D0DF0 800D01F0 000B7140 */ sll $t6, $t3, 5 +/* 0D0DF4 800D01F4 AFA00010 */ sw $zero, 0x10($sp) +/* 0D0DF8 800D01F8 8FA40154 */ lw $a0, 0x154($sp) +/* 0D0DFC 800D01FC 8FA50158 */ lw $a1, 0x158($sp) +/* 0D0E00 800D0200 01CD3821 */ addu $a3, $t6, $t5 +/* 0D0E04 800D0204 0C03363C */ jal func_800CD8F0 +/* 0D0E08 800D0208 018B3021 */ addu $a2, $t4, $t3 +/* 0D0E0C 800D020C AFA20020 */ sw $v0, 0x20($sp) +/* 0D0E10 800D0210 8FB80020 */ lw $t8, 0x20($sp) +/* 0D0E14 800D0214 13000003 */ beqz $t8, .L800D0224 +/* 0D0E18 800D0218 00000000 */ nop +/* 0D0E1C 800D021C 10000058 */ b .L800D0380 +/* 0D0E20 800D0220 03001025 */ move $v0, $t8 +.L800D0224: +/* 0D0E24 800D0224 8FA8014C */ lw $t0, 0x14c($sp) +/* 0D0E28 800D0228 25190001 */ addiu $t9, $t0, 1 +/* 0D0E2C 800D022C 2B210008 */ slti $at, $t9, 8 +/* 0D0E30 800D0230 1420FFDA */ bnez $at, .L800D019C +/* 0D0E34 800D0234 AFB9014C */ sw $t9, 0x14c($sp) +/* 0D0E38 800D0238 8FAA0150 */ lw $t2, 0x150($sp) +/* 0D0E3C 800D023C 24090001 */ li $t1, 1 +/* 0D0E40 800D0240 AFA90148 */ sw $t1, 0x148($sp) +/* 0D0E44 800D0244 914F0064 */ lbu $t7, 0x64($t2) +/* 0D0E48 800D0248 29E10002 */ slti $at, $t7, 2 +/* 0D0E4C 800D024C 1420004B */ bnez $at, .L800D037C +/* 0D0E50 800D0250 00000000 */ nop +.L800D0254: +/* 0D0E54 800D0254 240C0001 */ li $t4, 1 +/* 0D0E58 800D0258 AFAC014C */ sw $t4, 0x14c($sp) +.L800D025C: +/* 0D0E5C 800D025C 8FAE014C */ lw $t6, 0x14c($sp) +/* 0D0E60 800D0260 240B0003 */ li $t3, 3 +/* 0D0E64 800D0264 000E6840 */ sll $t5, $t6, 1 +/* 0D0E68 800D0268 03ADC021 */ addu $t8, $sp, $t5 +/* 0D0E6C 800D026C A70B0048 */ sh $t3, 0x48($t8) +/* 0D0E70 800D0270 8FA8014C */ lw $t0, 0x14c($sp) +/* 0D0E74 800D0274 25190001 */ addiu $t9, $t0, 1 +/* 0D0E78 800D0278 2B210080 */ slti $at, $t9, 0x80 +/* 0D0E7C 800D027C 1420FFF7 */ bnez $at, .L800D025C +/* 0D0E80 800D0280 AFB9014C */ sw $t9, 0x14c($sp) +/* 0D0E84 800D0284 27A40048 */ addiu $a0, $sp, 0x48 +/* 0D0E88 800D0288 24840002 */ addiu $a0, $a0, 2 +/* 0D0E8C 800D028C 0C0354BC */ jal func_800D52F0 +/* 0D0E90 800D0290 240500FE */ li $a1, 254 +/* 0D0E94 800D0294 27A90048 */ addiu $t1, $sp, 0x48 +/* 0D0E98 800D0298 A5220000 */ sh $v0, ($t1) +/* 0D0E9C 800D029C 27AA0048 */ addiu $t2, $sp, 0x48 +/* 0D0EA0 800D02A0 AFAA0024 */ sw $t2, 0x24($sp) +/* 0D0EA4 800D02A4 AFA0014C */ sw $zero, 0x14c($sp) +.L800D02A8: +/* 0D0EA8 800D02A8 8FAF0150 */ lw $t7, 0x150($sp) +/* 0D0EAC 800D02AC 8FAE0148 */ lw $t6, 0x148($sp) +/* 0D0EB0 800D02B0 8FB8014C */ lw $t8, 0x14c($sp) +/* 0D0EB4 800D02B4 8DEC0054 */ lw $t4, 0x54($t7) +/* 0D0EB8 800D02B8 8FB90024 */ lw $t9, 0x24($sp) +/* 0D0EBC 800D02BC 000E58C0 */ sll $t3, $t6, 3 +/* 0D0EC0 800D02C0 00184140 */ sll $t0, $t8, 5 +/* 0D0EC4 800D02C4 018B6821 */ addu $t5, $t4, $t3 +/* 0D0EC8 800D02C8 AFA00010 */ sw $zero, 0x10($sp) +/* 0D0ECC 800D02CC 8FA40154 */ lw $a0, 0x154($sp) +/* 0D0ED0 800D02D0 8FA50158 */ lw $a1, 0x158($sp) +/* 0D0ED4 800D02D4 01B83021 */ addu $a2, $t5, $t8 +/* 0D0ED8 800D02D8 0C03363C */ jal func_800CD8F0 +/* 0D0EDC 800D02DC 01193821 */ addu $a3, $t0, $t9 +/* 0D0EE0 800D02E0 AFA20020 */ sw $v0, 0x20($sp) +/* 0D0EE4 800D02E4 8FA90020 */ lw $t1, 0x20($sp) +/* 0D0EE8 800D02E8 11200003 */ beqz $t1, .L800D02F8 +/* 0D0EEC 800D02EC 00000000 */ nop +/* 0D0EF0 800D02F0 10000023 */ b .L800D0380 +/* 0D0EF4 800D02F4 01201025 */ move $v0, $t1 +.L800D02F8: +/* 0D0EF8 800D02F8 8FAA0150 */ lw $t2, 0x150($sp) +/* 0D0EFC 800D02FC 8FAE0148 */ lw $t6, 0x148($sp) +/* 0D0F00 800D0300 8FAD014C */ lw $t5, 0x14c($sp) +/* 0D0F04 800D0304 8D4F0058 */ lw $t7, 0x58($t2) +/* 0D0F08 800D0308 8FA80024 */ lw $t0, 0x24($sp) +/* 0D0F0C 800D030C 000E60C0 */ sll $t4, $t6, 3 +/* 0D0F10 800D0310 000DC140 */ sll $t8, $t5, 5 +/* 0D0F14 800D0314 01EC5821 */ addu $t3, $t7, $t4 +/* 0D0F18 800D0318 AFA00010 */ sw $zero, 0x10($sp) +/* 0D0F1C 800D031C 8FA40154 */ lw $a0, 0x154($sp) +/* 0D0F20 800D0320 8FA50158 */ lw $a1, 0x158($sp) +/* 0D0F24 800D0324 016D3021 */ addu $a2, $t3, $t5 +/* 0D0F28 800D0328 0C03363C */ jal func_800CD8F0 +/* 0D0F2C 800D032C 03083821 */ addu $a3, $t8, $t0 +/* 0D0F30 800D0330 AFA20020 */ sw $v0, 0x20($sp) +/* 0D0F34 800D0334 8FB90020 */ lw $t9, 0x20($sp) +/* 0D0F38 800D0338 13200003 */ beqz $t9, .L800D0348 +/* 0D0F3C 800D033C 00000000 */ nop +/* 0D0F40 800D0340 1000000F */ b .L800D0380 +/* 0D0F44 800D0344 03201025 */ move $v0, $t9 +.L800D0348: +/* 0D0F48 800D0348 8FA9014C */ lw $t1, 0x14c($sp) +/* 0D0F4C 800D034C 252A0001 */ addiu $t2, $t1, 1 +/* 0D0F50 800D0350 29410008 */ slti $at, $t2, 8 +/* 0D0F54 800D0354 1420FFD4 */ bnez $at, .L800D02A8 +/* 0D0F58 800D0358 AFAA014C */ sw $t2, 0x14c($sp) +/* 0D0F5C 800D035C 8FAE0148 */ lw $t6, 0x148($sp) +/* 0D0F60 800D0360 8FAC0150 */ lw $t4, 0x150($sp) +/* 0D0F64 800D0364 25CF0001 */ addiu $t7, $t6, 1 +/* 0D0F68 800D0368 AFAF0148 */ sw $t7, 0x148($sp) +/* 0D0F6C 800D036C 918B0064 */ lbu $t3, 0x64($t4) +/* 0D0F70 800D0370 01EB082A */ slt $at, $t7, $t3 +/* 0D0F74 800D0374 1420FFB7 */ bnez $at, .L800D0254 +/* 0D0F78 800D0378 00000000 */ nop +.L800D037C: +/* 0D0F7C 800D037C 00001025 */ move $v0, $zero +.L800D0380: +/* 0D0F80 800D0380 8FBF001C */ lw $ra, 0x1c($sp) +/* 0D0F84 800D0384 27BD0150 */ addiu $sp, $sp, 0x150 +/* 0D0F88 800D0388 03E00008 */ jr $ra +/* 0D0F8C 800D038C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D0130/func_800D0390.s b/asm/non_matchings/unknown_0D0130/func_800D0390.s new file mode 100644 index 00000000..39f58345 --- /dev/null +++ b/asm/non_matchings/unknown_0D0130/func_800D0390.s @@ -0,0 +1,95 @@ +glabel func_800D0390 +/* 0D0F90 800D0390 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 0D0F94 800D0394 AFA40048 */ sw $a0, 0x48($sp) +/* 0D0F98 800D0398 8FAE0048 */ lw $t6, 0x48($sp) +/* 0D0F9C 800D039C AFBF0014 */ sw $ra, 0x14($sp) +/* 0D0FA0 800D03A0 AFA5004C */ sw $a1, 0x4c($sp) +/* 0D0FA4 800D03A4 AFA60050 */ sw $a2, 0x50($sp) +/* 0D0FA8 800D03A8 AFA0001C */ sw $zero, 0x1c($sp) +/* 0D0FAC 800D03AC 8DCF0000 */ lw $t7, ($t6) +/* 0D0FB0 800D03B0 31F80001 */ andi $t8, $t7, 1 +/* 0D0FB4 800D03B4 17000003 */ bnez $t8, .L800D03C4 +/* 0D0FB8 800D03B8 00000000 */ nop +/* 0D0FBC 800D03BC 10000041 */ b .L800D04C4 +/* 0D0FC0 800D03C0 24020005 */ li $v0, 5 +.L800D03C4: +/* 0D0FC4 800D03C4 0C0356F0 */ jal func_800D5BC0 +/* 0D0FC8 800D03C8 8FA40048 */ lw $a0, 0x48($sp) +/* 0D0FCC 800D03CC 24010002 */ li $at, 2 +/* 0D0FD0 800D03D0 14410003 */ bne $v0, $at, .L800D03E0 +/* 0D0FD4 800D03D4 00000000 */ nop +/* 0D0FD8 800D03D8 1000003A */ b .L800D04C4 +/* 0D0FDC 800D03DC 24020002 */ li $v0, 2 +.L800D03E0: +/* 0D0FE0 800D03E0 8FB90048 */ lw $t9, 0x48($sp) +/* 0D0FE4 800D03E4 93280065 */ lbu $t0, 0x65($t9) +/* 0D0FE8 800D03E8 1100000A */ beqz $t0, .L800D0414 +/* 0D0FEC 800D03EC 00000000 */ nop +/* 0D0FF0 800D03F0 A3200065 */ sb $zero, 0x65($t9) +/* 0D0FF4 800D03F4 0C0357F7 */ jal func_800D5FDC +/* 0D0FF8 800D03F8 8FA40048 */ lw $a0, 0x48($sp) +/* 0D0FFC 800D03FC AFA20040 */ sw $v0, 0x40($sp) +/* 0D1000 800D0400 8FA90040 */ lw $t1, 0x40($sp) +/* 0D1004 800D0404 11200003 */ beqz $t1, .L800D0414 +/* 0D1008 800D0408 00000000 */ nop +/* 0D100C 800D040C 1000002D */ b .L800D04C4 +/* 0D1010 800D0410 01201025 */ move $v0, $t1 +.L800D0414: +/* 0D1014 800D0414 8FAA0048 */ lw $t2, 0x48($sp) +/* 0D1018 800D0418 AFA00044 */ sw $zero, 0x44($sp) +/* 0D101C 800D041C 8D4B0050 */ lw $t3, 0x50($t2) +/* 0D1020 800D0420 19600020 */ blez $t3, .L800D04A4 +/* 0D1024 800D0424 00000000 */ nop +.L800D0428: +/* 0D1028 800D0428 8FAC0048 */ lw $t4, 0x48($sp) +/* 0D102C 800D042C 8FAE0044 */ lw $t6, 0x44($sp) +/* 0D1030 800D0430 27A70020 */ addiu $a3, $sp, 0x20 +/* 0D1034 800D0434 8D8D005C */ lw $t5, 0x5c($t4) +/* 0D1038 800D0438 8D840004 */ lw $a0, 4($t4) +/* 0D103C 800D043C 8D850008 */ lw $a1, 8($t4) +/* 0D1040 800D0440 0C033728 */ jal func_800CDCA0 +/* 0D1044 800D0444 01AE3021 */ addu $a2, $t5, $t6 +/* 0D1048 800D0448 AFA20040 */ sw $v0, 0x40($sp) +/* 0D104C 800D044C 8FAF0040 */ lw $t7, 0x40($sp) +/* 0D1050 800D0450 11E00003 */ beqz $t7, .L800D0460 +/* 0D1054 800D0454 00000000 */ nop +/* 0D1058 800D0458 1000001A */ b .L800D04C4 +/* 0D105C 800D045C 01E01025 */ move $v0, $t7 +.L800D0460: +/* 0D1060 800D0460 97B80024 */ lhu $t8, 0x24($sp) +/* 0D1064 800D0464 13000007 */ beqz $t8, .L800D0484 +/* 0D1068 800D0468 00000000 */ nop +/* 0D106C 800D046C 8FA80020 */ lw $t0, 0x20($sp) +/* 0D1070 800D0470 11000004 */ beqz $t0, .L800D0484 +/* 0D1074 800D0474 00000000 */ nop +/* 0D1078 800D0478 8FB9001C */ lw $t9, 0x1c($sp) +/* 0D107C 800D047C 27290001 */ addiu $t1, $t9, 1 +/* 0D1080 800D0480 AFA9001C */ sw $t1, 0x1c($sp) +.L800D0484: +/* 0D1084 800D0484 8FAA0044 */ lw $t2, 0x44($sp) +/* 0D1088 800D0488 8FAC0048 */ lw $t4, 0x48($sp) +/* 0D108C 800D048C 254B0001 */ addiu $t3, $t2, 1 +/* 0D1090 800D0490 AFAB0044 */ sw $t3, 0x44($sp) +/* 0D1094 800D0494 8D8D0050 */ lw $t5, 0x50($t4) +/* 0D1098 800D0498 016D082A */ slt $at, $t3, $t5 +/* 0D109C 800D049C 1420FFE2 */ bnez $at, .L800D0428 +/* 0D10A0 800D04A0 00000000 */ nop +.L800D04A4: +/* 0D10A4 800D04A4 8FAE001C */ lw $t6, 0x1c($sp) +/* 0D10A8 800D04A8 8FAF0050 */ lw $t7, 0x50($sp) +/* 0D10AC 800D04AC 00001025 */ move $v0, $zero +/* 0D10B0 800D04B0 ADEE0000 */ sw $t6, ($t7) +/* 0D10B4 800D04B4 8FB80048 */ lw $t8, 0x48($sp) +/* 0D10B8 800D04B8 8FB9004C */ lw $t9, 0x4c($sp) +/* 0D10BC 800D04BC 8F080050 */ lw $t0, 0x50($t8) +/* 0D10C0 800D04C0 AF280000 */ sw $t0, ($t9) +.L800D04C4: +/* 0D10C4 800D04C4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D10C8 800D04C8 27BD0048 */ addiu $sp, $sp, 0x48 +/* 0D10CC 800D04CC 03E00008 */ jr $ra +/* 0D10D0 800D04D0 00000000 */ nop + +/* 0D10D4 800D04D4 00000000 */ nop +/* 0D10D8 800D04D8 00000000 */ nop +/* 0D10DC 800D04DC 00000000 */ nop + diff --git a/asm/unknown_0D10E0.s b/asm/non_matchings/unknown_0D10E0/func_800D04E0.s old mode 100755 new mode 100644 similarity index 91% rename from asm/unknown_0D10E0.s rename to asm/non_matchings/unknown_0D10E0/func_800D04E0.s index 5488beed..b42b0b59 --- a/asm/unknown_0D10E0.s +++ b/asm/non_matchings/unknown_0D10E0/func_800D04E0.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800D04E0 /* 0D10E0 800D04E0 28A1000C */ slti $at, $a1, 0xc /* 0D10E4 800D04E4 1420001D */ bnez $at, .L800D055C @@ -55,3 +47,4 @@ glabel func_800D04E0 /* 0D1178 800D0578 00000000 */ nop /* 0D117C 800D057C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D1180/func_800D0580.s b/asm/non_matchings/unknown_0D1180/func_800D0580.s new file mode 100644 index 00000000..70eb25e2 --- /dev/null +++ b/asm/non_matchings/unknown_0D1180/func_800D0580.s @@ -0,0 +1,209 @@ +glabel func_800D0580 +/* 0D1180 800D0580 27BDFEB0 */ addiu $sp, $sp, -0x150 +/* 0D1184 800D0584 AFA40150 */ sw $a0, 0x150($sp) +/* 0D1188 800D0588 8FAF0150 */ lw $t7, 0x150($sp) +/* 0D118C 800D058C AFA50154 */ sw $a1, 0x154($sp) +/* 0D1190 800D0590 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D1194 800D0594 AFA60158 */ sw $a2, 0x158($sp) +/* 0D1198 800D0598 8FAE0154 */ lw $t6, 0x154($sp) +/* 0D119C 800D059C 8DF80050 */ lw $t8, 0x50($t7) +/* 0D11A0 800D05A0 01D8082A */ slt $at, $t6, $t8 +/* 0D11A4 800D05A4 10200003 */ beqz $at, .L800D05B4 +/* 0D11A8 800D05A8 00000000 */ nop +/* 0D11AC 800D05AC 05C10003 */ bgez $t6, .L800D05BC +/* 0D11B0 800D05B0 00000000 */ nop +.L800D05B4: +/* 0D11B4 800D05B4 100000AA */ b .L800D0860 +/* 0D11B8 800D05B8 24020005 */ li $v0, 5 +.L800D05BC: +/* 0D11BC 800D05BC 8FB90150 */ lw $t9, 0x150($sp) +/* 0D11C0 800D05C0 8F280000 */ lw $t0, ($t9) +/* 0D11C4 800D05C4 31090001 */ andi $t1, $t0, 1 +/* 0D11C8 800D05C8 15200003 */ bnez $t1, .L800D05D8 +/* 0D11CC 800D05CC 00000000 */ nop +/* 0D11D0 800D05D0 100000A3 */ b .L800D0860 +/* 0D11D4 800D05D4 24020005 */ li $v0, 5 +.L800D05D8: +/* 0D11D8 800D05D8 0C0356F0 */ jal func_800D5BC0 +/* 0D11DC 800D05DC 8FA40150 */ lw $a0, 0x150($sp) +/* 0D11E0 800D05E0 24010002 */ li $at, 2 +/* 0D11E4 800D05E4 14410003 */ bne $v0, $at, .L800D05F4 +/* 0D11E8 800D05E8 00000000 */ nop +/* 0D11EC 800D05EC 1000009C */ b .L800D0860 +/* 0D11F0 800D05F0 24020002 */ li $v0, 2 +.L800D05F4: +/* 0D11F4 800D05F4 8FAA0150 */ lw $t2, 0x150($sp) +/* 0D11F8 800D05F8 914B0065 */ lbu $t3, 0x65($t2) +/* 0D11FC 800D05FC 1160000A */ beqz $t3, .L800D0628 +/* 0D1200 800D0600 00000000 */ nop +/* 0D1204 800D0604 A1400065 */ sb $zero, 0x65($t2) +/* 0D1208 800D0608 0C0357F7 */ jal func_800D5FDC +/* 0D120C 800D060C 8FA40150 */ lw $a0, 0x150($sp) +/* 0D1210 800D0610 AFA2014C */ sw $v0, 0x14c($sp) +/* 0D1214 800D0614 8FAC014C */ lw $t4, 0x14c($sp) +/* 0D1218 800D0618 11800003 */ beqz $t4, .L800D0628 +/* 0D121C 800D061C 00000000 */ nop +/* 0D1220 800D0620 1000008F */ b .L800D0860 +/* 0D1224 800D0624 01801025 */ move $v0, $t4 +.L800D0628: +/* 0D1228 800D0628 8FAD0150 */ lw $t5, 0x150($sp) +/* 0D122C 800D062C 8FB80154 */ lw $t8, 0x154($sp) +/* 0D1230 800D0630 27A70028 */ addiu $a3, $sp, 0x28 +/* 0D1234 800D0634 8DAF005C */ lw $t7, 0x5c($t5) +/* 0D1238 800D0638 8DA40004 */ lw $a0, 4($t5) +/* 0D123C 800D063C 8DA50008 */ lw $a1, 8($t5) +/* 0D1240 800D0640 0C033728 */ jal func_800CDCA0 +/* 0D1244 800D0644 01F83021 */ addu $a2, $t7, $t8 +/* 0D1248 800D0648 AFA2014C */ sw $v0, 0x14c($sp) +/* 0D124C 800D064C 8FAE014C */ lw $t6, 0x14c($sp) +/* 0D1250 800D0650 11C00003 */ beqz $t6, .L800D0660 +/* 0D1254 800D0654 00000000 */ nop +/* 0D1258 800D0658 10000081 */ b .L800D0860 +/* 0D125C 800D065C 01C01025 */ move $v0, $t6 +.L800D0660: +/* 0D1260 800D0660 97B9002C */ lhu $t9, 0x2c($sp) +/* 0D1264 800D0664 13200004 */ beqz $t9, .L800D0678 +/* 0D1268 800D0668 00000000 */ nop +/* 0D126C 800D066C 8FA80028 */ lw $t0, 0x28($sp) +/* 0D1270 800D0670 15000003 */ bnez $t0, .L800D0680 +/* 0D1274 800D0674 00000000 */ nop +.L800D0678: +/* 0D1278 800D0678 10000079 */ b .L800D0860 +/* 0D127C 800D067C 24020005 */ li $v0, 5 +.L800D0680: +/* 0D1280 800D0680 8FAB0150 */ lw $t3, 0x150($sp) +/* 0D1284 800D0684 97A9002E */ lhu $t1, 0x2e($sp) +/* 0D1288 800D0688 8D6A0060 */ lw $t2, 0x60($t3) +/* 0D128C 800D068C 012A082A */ slt $at, $t1, $t2 +/* 0D1290 800D0690 10200003 */ beqz $at, .L800D06A0 +/* 0D1294 800D0694 00000000 */ nop +/* 0D1298 800D0698 10000071 */ b .L800D0860 +/* 0D129C 800D069C 24020003 */ li $v0, 3 +.L800D06A0: +/* 0D12A0 800D06A0 93AC002F */ lbu $t4, 0x2f($sp) +/* 0D12A4 800D06A4 93AD002E */ lbu $t5, 0x2e($sp) +/* 0D12A8 800D06A8 8FAF0150 */ lw $t7, 0x150($sp) +/* 0D12AC 800D06AC AFA00148 */ sw $zero, 0x148($sp) +/* 0D12B0 800D06B0 A3AC001E */ sb $t4, 0x1e($sp) +/* 0D12B4 800D06B4 A3AD001F */ sb $t5, 0x1f($sp) +/* 0D12B8 800D06B8 91F80064 */ lbu $t8, 0x64($t7) +/* 0D12BC 800D06BC 01B8082A */ slt $at, $t5, $t8 +/* 0D12C0 800D06C0 1020003E */ beqz $at, .L800D07BC +/* 0D12C4 800D06C4 00000000 */ nop +.L800D06C8: +/* 0D12C8 800D06C8 8FA40150 */ lw $a0, 0x150($sp) +/* 0D12CC 800D06CC 27A50048 */ addiu $a1, $sp, 0x48 +/* 0D12D0 800D06D0 00003025 */ move $a2, $zero +/* 0D12D4 800D06D4 0C03572F */ jal func_800D5CBC +/* 0D12D8 800D06D8 93A7001F */ lbu $a3, 0x1f($sp) +/* 0D12DC 800D06DC AFA2014C */ sw $v0, 0x14c($sp) +/* 0D12E0 800D06E0 8FAE014C */ lw $t6, 0x14c($sp) +/* 0D12E4 800D06E4 11C00003 */ beqz $t6, .L800D06F4 +/* 0D12E8 800D06E8 00000000 */ nop +/* 0D12EC 800D06EC 1000005C */ b .L800D0860 +/* 0D12F0 800D06F0 01C01025 */ move $v0, $t6 +.L800D06F4: +/* 0D12F4 800D06F4 93A8001E */ lbu $t0, 0x1e($sp) +/* 0D12F8 800D06F8 27A90048 */ addiu $t1, $sp, 0x48 +/* 0D12FC 800D06FC 27B90024 */ addiu $t9, $sp, 0x24 +/* 0D1300 800D0700 00085840 */ sll $t3, $t0, 1 +/* 0D1304 800D0704 01695021 */ addu $t2, $t3, $t1 +/* 0D1308 800D0708 95410000 */ lhu $at, ($t2) +/* 0D130C 800D070C A7210000 */ sh $at, ($t9) +/* 0D1310 800D0710 8FAD0148 */ lw $t5, 0x148($sp) +/* 0D1314 800D0714 8FA80150 */ lw $t0, 0x150($sp) +/* 0D1318 800D0718 97AE0024 */ lhu $t6, 0x24($sp) +/* 0D131C 800D071C 25B80001 */ addiu $t8, $t5, 1 +/* 0D1320 800D0720 AFB80148 */ sw $t8, 0x148($sp) +/* 0D1324 800D0724 8D0B0060 */ lw $t3, 0x60($t0) +/* 0D1328 800D0728 01CB082A */ slt $at, $t6, $t3 +/* 0D132C 800D072C 14200019 */ bnez $at, .L800D0794 +/* 0D1330 800D0730 00000000 */ nop +.L800D0734: +/* 0D1334 800D0734 8FA90148 */ lw $t1, 0x148($sp) +/* 0D1338 800D0738 93AA0025 */ lbu $t2, 0x25($sp) +/* 0D133C 800D073C 27AD0048 */ addiu $t5, $sp, 0x48 +/* 0D1340 800D0740 252C0001 */ addiu $t4, $t1, 1 +/* 0D1344 800D0744 000A7840 */ sll $t7, $t2, 1 +/* 0D1348 800D0748 AFAC0148 */ sw $t4, 0x148($sp) +/* 0D134C 800D074C 01EDC021 */ addu $t8, $t7, $t5 +/* 0D1350 800D0750 97010000 */ lhu $at, ($t8) +/* 0D1354 800D0754 27B90024 */ addiu $t9, $sp, 0x24 +/* 0D1358 800D0758 A7210000 */ sh $at, ($t9) +/* 0D135C 800D075C 93AC001F */ lbu $t4, 0x1f($sp) +/* 0D1360 800D0760 93A90024 */ lbu $t1, 0x24($sp) +/* 0D1364 800D0764 112C0005 */ beq $t1, $t4, .L800D077C +/* 0D1368 800D0768 00000000 */ nop +/* 0D136C 800D076C 93AA0025 */ lbu $t2, 0x25($sp) +/* 0D1370 800D0770 A3A9001F */ sb $t1, 0x1f($sp) +/* 0D1374 800D0774 10000007 */ b .L800D0794 +/* 0D1378 800D0778 A3AA001E */ sb $t2, 0x1e($sp) +.L800D077C: +/* 0D137C 800D077C 8FAD0150 */ lw $t5, 0x150($sp) +/* 0D1380 800D0780 97AF0024 */ lhu $t7, 0x24($sp) +/* 0D1384 800D0784 8DAE0060 */ lw $t6, 0x60($t5) +/* 0D1388 800D0788 01EE082A */ slt $at, $t7, $t6 +/* 0D138C 800D078C 1020FFE9 */ beqz $at, .L800D0734 +/* 0D1390 800D0790 00000000 */ nop +.L800D0794: +/* 0D1394 800D0794 97A80024 */ lhu $t0, 0x24($sp) +/* 0D1398 800D0798 24010001 */ li $at, 1 +/* 0D139C 800D079C 11010007 */ beq $t0, $at, .L800D07BC +/* 0D13A0 800D07A0 00000000 */ nop +/* 0D13A4 800D07A4 8FB80150 */ lw $t8, 0x150($sp) +/* 0D13A8 800D07A8 93B9001F */ lbu $t9, 0x1f($sp) +/* 0D13AC 800D07AC 930B0064 */ lbu $t3, 0x64($t8) +/* 0D13B0 800D07B0 032B082A */ slt $at, $t9, $t3 +/* 0D13B4 800D07B4 1420FFC4 */ bnez $at, .L800D06C8 +/* 0D13B8 800D07B8 00000000 */ nop +.L800D07BC: +/* 0D13BC 800D07BC 97AC0024 */ lhu $t4, 0x24($sp) +/* 0D13C0 800D07C0 24010001 */ li $at, 1 +/* 0D13C4 800D07C4 11810003 */ beq $t4, $at, .L800D07D4 +/* 0D13C8 800D07C8 00000000 */ nop +/* 0D13CC 800D07CC 10000024 */ b .L800D0860 +/* 0D13D0 800D07D0 24020003 */ li $v0, 3 +.L800D07D4: +/* 0D13D4 800D07D4 8FA90148 */ lw $t1, 0x148($sp) +/* 0D13D8 800D07D8 8FAD0158 */ lw $t5, 0x158($sp) +/* 0D13DC 800D07DC 00095200 */ sll $t2, $t1, 8 +/* 0D13E0 800D07E0 ADAA0000 */ sw $t2, ($t5) +/* 0D13E4 800D07E4 8FAE0158 */ lw $t6, 0x158($sp) +/* 0D13E8 800D07E8 97AF002C */ lhu $t7, 0x2c($sp) +/* 0D13EC 800D07EC A5CF0008 */ sh $t7, 8($t6) +/* 0D13F0 800D07F0 8FB80158 */ lw $t8, 0x158($sp) +/* 0D13F4 800D07F4 8FA80028 */ lw $t0, 0x28($sp) +/* 0D13F8 800D07F8 AF080004 */ sw $t0, 4($t8) +/* 0D13FC 800D07FC AFA00020 */ sw $zero, 0x20($sp) +.L800D0800: +/* 0D1400 800D0800 8FB90020 */ lw $t9, 0x20($sp) +/* 0D1404 800D0804 8FAC0158 */ lw $t4, 0x158($sp) +/* 0D1408 800D0808 03B95821 */ addu $t3, $sp, $t9 +/* 0D140C 800D080C 916B0038 */ lbu $t3, 0x38($t3) +/* 0D1410 800D0810 01994821 */ addu $t1, $t4, $t9 +/* 0D1414 800D0814 A12B000E */ sb $t3, 0xe($t1) +/* 0D1418 800D0818 8FAA0020 */ lw $t2, 0x20($sp) +/* 0D141C 800D081C 254D0001 */ addiu $t5, $t2, 1 +/* 0D1420 800D0820 29A10010 */ slti $at, $t5, 0x10 +/* 0D1424 800D0824 1420FFF6 */ bnez $at, .L800D0800 +/* 0D1428 800D0828 AFAD0020 */ sw $t5, 0x20($sp) +/* 0D142C 800D082C AFA00020 */ sw $zero, 0x20($sp) +.L800D0830: +/* 0D1430 800D0830 8FAF0020 */ lw $t7, 0x20($sp) +/* 0D1434 800D0834 8FA80158 */ lw $t0, 0x158($sp) +/* 0D1438 800D0838 03AF7021 */ addu $t6, $sp, $t7 +/* 0D143C 800D083C 91CE0034 */ lbu $t6, 0x34($t6) +/* 0D1440 800D0840 010FC021 */ addu $t8, $t0, $t7 +/* 0D1444 800D0844 A30E000A */ sb $t6, 0xa($t8) +/* 0D1448 800D0848 8FAC0020 */ lw $t4, 0x20($sp) +/* 0D144C 800D084C 25990001 */ addiu $t9, $t4, 1 +/* 0D1450 800D0850 2B210004 */ slti $at, $t9, 4 +/* 0D1454 800D0854 1420FFF6 */ bnez $at, .L800D0830 +/* 0D1458 800D0858 AFB90020 */ sw $t9, 0x20($sp) +/* 0D145C 800D085C 00001025 */ move $v0, $zero +.L800D0860: +/* 0D1460 800D0860 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D1464 800D0864 27BD0150 */ addiu $sp, $sp, 0x150 +/* 0D1468 800D0868 03E00008 */ jr $ra +/* 0D146C 800D086C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D1180/func_800D0870.s b/asm/non_matchings/unknown_0D1180/func_800D0870.s new file mode 100644 index 00000000..4e2ca732 --- /dev/null +++ b/asm/non_matchings/unknown_0D1180/func_800D0870.s @@ -0,0 +1,203 @@ +glabel func_800D0870 +/* 0D1470 800D0870 27BDFEA0 */ addiu $sp, $sp, -0x160 +/* 0D1474 800D0874 AFA50164 */ sw $a1, 0x164($sp) +/* 0D1478 800D0878 97AE0166 */ lhu $t6, 0x166($sp) +/* 0D147C 800D087C AFBF0024 */ sw $ra, 0x24($sp) +/* 0D1480 800D0880 AFA40160 */ sw $a0, 0x160($sp) +/* 0D1484 800D0884 AFA60168 */ sw $a2, 0x168($sp) +/* 0D1488 800D0888 AFA7016C */ sw $a3, 0x16c($sp) +/* 0D148C 800D088C 11C00004 */ beqz $t6, .L800D08A0 +/* 0D1490 800D0890 A7A00032 */ sh $zero, 0x32($sp) +/* 0D1494 800D0894 8FAF0168 */ lw $t7, 0x168($sp) +/* 0D1498 800D0898 15E00003 */ bnez $t7, .L800D08A8 +/* 0D149C 800D089C 00000000 */ nop +.L800D08A0: +/* 0D14A0 800D08A0 100000A7 */ b .L800D0B40 +/* 0D14A4 800D08A4 24020005 */ li $v0, 5 +.L800D08A8: +/* 0D14A8 800D08A8 8FB80160 */ lw $t8, 0x160($sp) +/* 0D14AC 800D08AC 8F190000 */ lw $t9, ($t8) +/* 0D14B0 800D08B0 33280001 */ andi $t0, $t9, 1 +/* 0D14B4 800D08B4 15000003 */ bnez $t0, .L800D08C4 +/* 0D14B8 800D08B8 00000000 */ nop +/* 0D14BC 800D08BC 100000A0 */ b .L800D0B40 +/* 0D14C0 800D08C0 24020005 */ li $v0, 5 +.L800D08C4: +/* 0D14C4 800D08C4 0C0356F0 */ jal func_800D5BC0 +/* 0D14C8 800D08C8 8FA40160 */ lw $a0, 0x160($sp) +/* 0D14CC 800D08CC 24010002 */ li $at, 2 +/* 0D14D0 800D08D0 14410003 */ bne $v0, $at, .L800D08E0 +/* 0D14D4 800D08D4 00000000 */ nop +/* 0D14D8 800D08D8 10000099 */ b .L800D0B40 +/* 0D14DC 800D08DC 24020002 */ li $v0, 2 +.L800D08E0: +/* 0D14E0 800D08E0 8FA90160 */ lw $t1, 0x160($sp) +/* 0D14E4 800D08E4 912A0065 */ lbu $t2, 0x65($t1) +/* 0D14E8 800D08E8 1140000A */ beqz $t2, .L800D0914 +/* 0D14EC 800D08EC 00000000 */ nop +/* 0D14F0 800D08F0 A1200065 */ sb $zero, 0x65($t1) +/* 0D14F4 800D08F4 0C0357F7 */ jal func_800D5FDC +/* 0D14F8 800D08F8 8FA40160 */ lw $a0, 0x160($sp) +/* 0D14FC 800D08FC AFA20154 */ sw $v0, 0x154($sp) +/* 0D1500 800D0900 8FAB0154 */ lw $t3, 0x154($sp) +/* 0D1504 800D0904 11600003 */ beqz $t3, .L800D0914 +/* 0D1508 800D0908 00000000 */ nop +/* 0D150C 800D090C 1000008C */ b .L800D0B40 +/* 0D1510 800D0910 01601025 */ move $v0, $t3 +.L800D0914: +/* 0D1514 800D0914 8FAC0170 */ lw $t4, 0x170($sp) +/* 0D1518 800D0918 27AD015C */ addiu $t5, $sp, 0x15c +/* 0D151C 800D091C AFAD0014 */ sw $t5, 0x14($sp) +/* 0D1520 800D0920 8FA40160 */ lw $a0, 0x160($sp) +/* 0D1524 800D0924 97A50166 */ lhu $a1, 0x166($sp) +/* 0D1528 800D0928 8FA60168 */ lw $a2, 0x168($sp) +/* 0D152C 800D092C 8FA7016C */ lw $a3, 0x16c($sp) +/* 0D1530 800D0930 0C0343A0 */ jal func_800D0E80 +/* 0D1534 800D0934 AFAC0010 */ sw $t4, 0x10($sp) +/* 0D1538 800D0938 AFA20154 */ sw $v0, 0x154($sp) +/* 0D153C 800D093C 8FAE0154 */ lw $t6, 0x154($sp) +/* 0D1540 800D0940 11C00003 */ beqz $t6, .L800D0950 +/* 0D1544 800D0944 00000000 */ nop +/* 0D1548 800D0948 1000007D */ b .L800D0B40 +/* 0D154C 800D094C 01C01025 */ move $v0, $t6 +.L800D0950: +/* 0D1550 800D0950 8FAF015C */ lw $t7, 0x15c($sp) +/* 0D1554 800D0954 2401FFFF */ li $at, -1 +/* 0D1558 800D0958 15E10003 */ bne $t7, $at, .L800D0968 +/* 0D155C 800D095C 00000000 */ nop +/* 0D1560 800D0960 10000077 */ b .L800D0B40 +/* 0D1564 800D0964 24020005 */ li $v0, 5 +.L800D0968: +/* 0D1568 800D0968 8FB80160 */ lw $t8, 0x160($sp) +/* 0D156C 800D096C 8FA8015C */ lw $t0, 0x15c($sp) +/* 0D1570 800D0970 27A70034 */ addiu $a3, $sp, 0x34 +/* 0D1574 800D0974 8F19005C */ lw $t9, 0x5c($t8) +/* 0D1578 800D0978 8F040004 */ lw $a0, 4($t8) +/* 0D157C 800D097C 8F050008 */ lw $a1, 8($t8) +/* 0D1580 800D0980 0C033728 */ jal func_800CDCA0 +/* 0D1584 800D0984 03283021 */ addu $a2, $t9, $t0 +/* 0D1588 800D0988 AFA20154 */ sw $v0, 0x154($sp) +/* 0D158C 800D098C 8FAA0154 */ lw $t2, 0x154($sp) +/* 0D1590 800D0990 11400003 */ beqz $t2, .L800D09A0 +/* 0D1594 800D0994 00000000 */ nop +/* 0D1598 800D0998 10000069 */ b .L800D0B40 +/* 0D159C 800D099C 01401025 */ move $v0, $t2 +.L800D09A0: +/* 0D15A0 800D09A0 93A9003B */ lbu $t1, 0x3b($sp) +/* 0D15A4 800D09A4 93AB003A */ lbu $t3, 0x3a($sp) +/* 0D15A8 800D09A8 8FAC0160 */ lw $t4, 0x160($sp) +/* 0D15AC 800D09AC A3A9002F */ sb $t1, 0x2f($sp) +/* 0D15B0 800D09B0 A3AB002E */ sb $t3, 0x2e($sp) +/* 0D15B4 800D09B4 918D0064 */ lbu $t5, 0x64($t4) +/* 0D15B8 800D09B8 016D082A */ slt $at, $t3, $t5 +/* 0D15BC 800D09BC 10200036 */ beqz $at, .L800D0A98 +/* 0D15C0 800D09C0 00000000 */ nop +.L800D09C4: +/* 0D15C4 800D09C4 8FA40160 */ lw $a0, 0x160($sp) +/* 0D15C8 800D09C8 27A50054 */ addiu $a1, $sp, 0x54 +/* 0D15CC 800D09CC 00003025 */ move $a2, $zero +/* 0D15D0 800D09D0 0C03572F */ jal func_800D5CBC +/* 0D15D4 800D09D4 93A7002E */ lbu $a3, 0x2e($sp) +/* 0D15D8 800D09D8 AFA20154 */ sw $v0, 0x154($sp) +/* 0D15DC 800D09DC 8FAE0154 */ lw $t6, 0x154($sp) +/* 0D15E0 800D09E0 11C00003 */ beqz $t6, .L800D09F0 +/* 0D15E4 800D09E4 00000000 */ nop +/* 0D15E8 800D09E8 10000055 */ b .L800D0B40 +/* 0D15EC 800D09EC 01C01025 */ move $v0, $t6 +.L800D09F0: +/* 0D15F0 800D09F0 93AF002E */ lbu $t7, 0x2e($sp) +/* 0D15F4 800D09F4 27B80030 */ addiu $t8, $sp, 0x30 +/* 0D15F8 800D09F8 24190001 */ li $t9, 1 +/* 0D15FC 800D09FC AFB90018 */ sw $t9, 0x18($sp) +/* 0D1600 800D0A00 AFB80014 */ sw $t8, 0x14($sp) +/* 0D1604 800D0A04 8FA40160 */ lw $a0, 0x160($sp) +/* 0D1608 800D0A08 27A50054 */ addiu $a1, $sp, 0x54 +/* 0D160C 800D0A0C 93A6002F */ lbu $a2, 0x2f($sp) +/* 0D1610 800D0A10 27A70032 */ addiu $a3, $sp, 0x32 +/* 0D1614 800D0A14 0C0342D4 */ jal func_800D0B50 +/* 0D1618 800D0A18 AFAF0010 */ sw $t7, 0x10($sp) +/* 0D161C 800D0A1C AFA20154 */ sw $v0, 0x154($sp) +/* 0D1620 800D0A20 8FA80154 */ lw $t0, 0x154($sp) +/* 0D1624 800D0A24 11000003 */ beqz $t0, .L800D0A34 +/* 0D1628 800D0A28 00000000 */ nop +/* 0D162C 800D0A2C 10000044 */ b .L800D0B40 +/* 0D1630 800D0A30 01001025 */ move $v0, $t0 +.L800D0A34: +/* 0D1634 800D0A34 8FA40160 */ lw $a0, 0x160($sp) +/* 0D1638 800D0A38 27A50054 */ addiu $a1, $sp, 0x54 +/* 0D163C 800D0A3C 24060001 */ li $a2, 1 +/* 0D1640 800D0A40 0C03572F */ jal func_800D5CBC +/* 0D1644 800D0A44 93A7002E */ lbu $a3, 0x2e($sp) +/* 0D1648 800D0A48 AFA20154 */ sw $v0, 0x154($sp) +/* 0D164C 800D0A4C 8FAA0154 */ lw $t2, 0x154($sp) +/* 0D1650 800D0A50 11400003 */ beqz $t2, .L800D0A60 +/* 0D1654 800D0A54 00000000 */ nop +/* 0D1658 800D0A58 10000039 */ b .L800D0B40 +/* 0D165C 800D0A5C 01401025 */ move $v0, $t2 +.L800D0A60: +/* 0D1660 800D0A60 97A90030 */ lhu $t1, 0x30($sp) +/* 0D1664 800D0A64 24010001 */ li $at, 1 +/* 0D1668 800D0A68 1121000B */ beq $t1, $at, .L800D0A98 +/* 0D166C 800D0A6C 00000000 */ nop +/* 0D1670 800D0A70 93AC0030 */ lbu $t4, 0x30($sp) +/* 0D1674 800D0A74 93AB0031 */ lbu $t3, 0x31($sp) +/* 0D1678 800D0A78 8FAE0160 */ lw $t6, 0x160($sp) +/* 0D167C 800D0A7C A3AC002E */ sb $t4, 0x2e($sp) +/* 0D1680 800D0A80 A3AB002F */ sb $t3, 0x2f($sp) +/* 0D1684 800D0A84 93AD002E */ lbu $t5, 0x2e($sp) +/* 0D1688 800D0A88 91CF0064 */ lbu $t7, 0x64($t6) +/* 0D168C 800D0A8C 01AF082A */ slt $at, $t5, $t7 +/* 0D1690 800D0A90 1420FFCC */ bnez $at, .L800D09C4 +/* 0D1694 800D0A94 00000000 */ nop +.L800D0A98: +/* 0D1698 800D0A98 8FB90160 */ lw $t9, 0x160($sp) +/* 0D169C 800D0A9C 93B8002E */ lbu $t8, 0x2e($sp) +/* 0D16A0 800D0AA0 93280064 */ lbu $t0, 0x64($t9) +/* 0D16A4 800D0AA4 0308082A */ slt $at, $t8, $t0 +/* 0D16A8 800D0AA8 14200003 */ bnez $at, .L800D0AB8 +/* 0D16AC 800D0AAC 00000000 */ nop +/* 0D16B0 800D0AB0 10000023 */ b .L800D0B40 +/* 0D16B4 800D0AB4 24020003 */ li $v0, 3 +.L800D0AB8: +/* 0D16B8 800D0AB8 AFA00034 */ sw $zero, 0x34($sp) +/* 0D16BC 800D0ABC A7A00038 */ sh $zero, 0x38($sp) +/* 0D16C0 800D0AC0 A7A0003A */ sh $zero, 0x3a($sp) +/* 0D16C4 800D0AC4 A7A0003E */ sh $zero, 0x3e($sp) +/* 0D16C8 800D0AC8 AFA00158 */ sw $zero, 0x158($sp) +.L800D0ACC: +/* 0D16CC 800D0ACC 8FAA0158 */ lw $t2, 0x158($sp) +/* 0D16D0 800D0AD0 03AA4821 */ addu $t1, $sp, $t2 +/* 0D16D4 800D0AD4 A1200044 */ sb $zero, 0x44($t1) +/* 0D16D8 800D0AD8 8FAC0158 */ lw $t4, 0x158($sp) +/* 0D16DC 800D0ADC 258B0001 */ addiu $t3, $t4, 1 +/* 0D16E0 800D0AE0 29610010 */ slti $at, $t3, 0x10 +/* 0D16E4 800D0AE4 1420FFF9 */ bnez $at, .L800D0ACC +/* 0D16E8 800D0AE8 AFAB0158 */ sw $t3, 0x158($sp) +/* 0D16EC 800D0AEC AFA00158 */ sw $zero, 0x158($sp) +.L800D0AF0: +/* 0D16F0 800D0AF0 8FAE0158 */ lw $t6, 0x158($sp) +/* 0D16F4 800D0AF4 03AE6821 */ addu $t5, $sp, $t6 +/* 0D16F8 800D0AF8 A1A00040 */ sb $zero, 0x40($t5) +/* 0D16FC 800D0AFC 8FAF0158 */ lw $t7, 0x158($sp) +/* 0D1700 800D0B00 25F90001 */ addiu $t9, $t7, 1 +/* 0D1704 800D0B04 2B210004 */ slti $at, $t9, 4 +/* 0D1708 800D0B08 1420FFF9 */ bnez $at, .L800D0AF0 +/* 0D170C 800D0B0C AFB90158 */ sw $t9, 0x158($sp) +/* 0D1710 800D0B10 8FB80160 */ lw $t8, 0x160($sp) +/* 0D1714 800D0B14 A3A0003C */ sb $zero, 0x3c($sp) +/* 0D1718 800D0B18 8FAA015C */ lw $t2, 0x15c($sp) +/* 0D171C 800D0B1C 8F08005C */ lw $t0, 0x5c($t8) +/* 0D1720 800D0B20 8F050008 */ lw $a1, 8($t8) +/* 0D1724 800D0B24 8F040004 */ lw $a0, 4($t8) +/* 0D1728 800D0B28 AFA00010 */ sw $zero, 0x10($sp) +/* 0D172C 800D0B2C 27A70034 */ addiu $a3, $sp, 0x34 +/* 0D1730 800D0B30 0C03363C */ jal func_800CD8F0 +/* 0D1734 800D0B34 010A3021 */ addu $a2, $t0, $t2 +/* 0D1738 800D0B38 AFA20154 */ sw $v0, 0x154($sp) +/* 0D173C 800D0B3C 8FA20154 */ lw $v0, 0x154($sp) +.L800D0B40: +/* 0D1740 800D0B40 8FBF0024 */ lw $ra, 0x24($sp) +/* 0D1744 800D0B44 27BD0160 */ addiu $sp, $sp, 0x160 +/* 0D1748 800D0B48 03E00008 */ jr $ra +/* 0D174C 800D0B4C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D1180/func_800D0B50.s b/asm/non_matchings/unknown_0D1180/func_800D0B50.s new file mode 100644 index 00000000..0104fa68 --- /dev/null +++ b/asm/non_matchings/unknown_0D1180/func_800D0B50.s @@ -0,0 +1,157 @@ +glabel func_800D0B50 +/* 0D1750 800D0B50 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0D1754 800D0B54 AFA60030 */ sw $a2, 0x30($sp) +/* 0D1758 800D0B58 93B80033 */ lbu $t8, 0x33($sp) +/* 0D175C 800D0B5C AFA5002C */ sw $a1, 0x2c($sp) +/* 0D1760 800D0B60 8FAF002C */ lw $t7, 0x2c($sp) +/* 0D1764 800D0B64 0018C840 */ sll $t9, $t8, 1 +/* 0D1768 800D0B68 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D176C 800D0B6C AFA40028 */ sw $a0, 0x28($sp) +/* 0D1770 800D0B70 AFA70034 */ sw $a3, 0x34($sp) +/* 0D1774 800D0B74 AFA0001C */ sw $zero, 0x1c($sp) +/* 0D1778 800D0B78 01F94021 */ addu $t0, $t7, $t9 +/* 0D177C 800D0B7C 95010000 */ lhu $at, ($t0) +/* 0D1780 800D0B80 27AE0024 */ addiu $t6, $sp, 0x24 +/* 0D1784 800D0B84 A5C10000 */ sh $at, ($t6) +/* 0D1788 800D0B88 97AC0024 */ lhu $t4, 0x24($sp) +/* 0D178C 800D0B8C 24010001 */ li $at, 1 +/* 0D1790 800D0B90 1181000B */ beq $t4, $at, .L800D0BC0 +/* 0D1794 800D0B94 00000000 */ nop +/* 0D1798 800D0B98 93AD0024 */ lbu $t5, 0x24($sp) +/* 0D179C 800D0B9C 19A00004 */ blez $t5, .L800D0BB0 +/* 0D17A0 800D0BA0 00000000 */ nop +/* 0D17A4 800D0BA4 24180001 */ li $t8, 1 +/* 0D17A8 800D0BA8 1000000E */ b .L800D0BE4 +/* 0D17AC 800D0BAC AFB80018 */ sw $t8, 0x18($sp) +.L800D0BB0: +/* 0D17B0 800D0BB0 8FAF0028 */ lw $t7, 0x28($sp) +/* 0D17B4 800D0BB4 8DF90060 */ lw $t9, 0x60($t7) +/* 0D17B8 800D0BB8 1000000A */ b .L800D0BE4 +/* 0D17BC 800D0BBC AFB90018 */ sw $t9, 0x18($sp) +.L800D0BC0: +/* 0D17C0 800D0BC0 93AA003B */ lbu $t2, 0x3b($sp) +/* 0D17C4 800D0BC4 19400004 */ blez $t2, .L800D0BD8 +/* 0D17C8 800D0BC8 00000000 */ nop +/* 0D17CC 800D0BCC 24090001 */ li $t1, 1 +/* 0D17D0 800D0BD0 10000004 */ b .L800D0BE4 +/* 0D17D4 800D0BD4 AFA90018 */ sw $t1, 0x18($sp) +.L800D0BD8: +/* 0D17D8 800D0BD8 8FAE0028 */ lw $t6, 0x28($sp) +/* 0D17DC 800D0BDC 8DC80060 */ lw $t0, 0x60($t6) +/* 0D17E0 800D0BE0 AFA80018 */ sw $t0, 0x18($sp) +.L800D0BE4: +/* 0D17E4 800D0BE4 93AB0025 */ lbu $t3, 0x25($sp) +/* 0D17E8 800D0BE8 8FAC0018 */ lw $t4, 0x18($sp) +/* 0D17EC 800D0BEC 016C082A */ slt $at, $t3, $t4 +/* 0D17F0 800D0BF0 10200007 */ beqz $at, .L800D0C10 +/* 0D17F4 800D0BF4 00000000 */ nop +/* 0D17F8 800D0BF8 97AD0024 */ lhu $t5, 0x24($sp) +/* 0D17FC 800D0BFC 24010001 */ li $at, 1 +/* 0D1800 800D0C00 11A10003 */ beq $t5, $at, .L800D0C10 +/* 0D1804 800D0C04 00000000 */ nop +/* 0D1808 800D0C08 1000005B */ b .L800D0D78 +/* 0D180C 800D0C0C 24020003 */ li $v0, 3 +.L800D0C10: +/* 0D1810 800D0C10 27AF0024 */ addiu $t7, $sp, 0x24 +/* 0D1814 800D0C14 95E10000 */ lhu $at, ($t7) +/* 0D1818 800D0C18 8FB8003C */ lw $t8, 0x3c($sp) +/* 0D181C 800D0C1C A7010000 */ sh $at, ($t8) +/* 0D1820 800D0C20 8FA90040 */ lw $t1, 0x40($sp) +/* 0D1824 800D0C24 24010001 */ li $at, 1 +/* 0D1828 800D0C28 15210007 */ bne $t1, $at, .L800D0C48 +/* 0D182C 800D0C2C 00000000 */ nop +/* 0D1830 800D0C30 93AB0033 */ lbu $t3, 0x33($sp) +/* 0D1834 800D0C34 8FA8002C */ lw $t0, 0x2c($sp) +/* 0D1838 800D0C38 240E0003 */ li $t6, 3 +/* 0D183C 800D0C3C 000B6040 */ sll $t4, $t3, 1 +/* 0D1840 800D0C40 010C6821 */ addu $t5, $t0, $t4 +/* 0D1844 800D0C44 A5AE0000 */ sh $t6, ($t5) +.L800D0C48: +/* 0D1848 800D0C48 8FA40028 */ lw $a0, 0x28($sp) +/* 0D184C 800D0C4C 93A50033 */ lbu $a1, 0x33($sp) +/* 0D1850 800D0C50 8FA60034 */ lw $a2, 0x34($sp) +/* 0D1854 800D0C54 0C034362 */ jal func_800D0D88 +/* 0D1858 800D0C58 93A7003B */ lbu $a3, 0x3b($sp) +/* 0D185C 800D0C5C AFA2001C */ sw $v0, 0x1c($sp) +/* 0D1860 800D0C60 8FB9001C */ lw $t9, 0x1c($sp) +/* 0D1864 800D0C64 13200003 */ beqz $t9, .L800D0C74 +/* 0D1868 800D0C68 00000000 */ nop +/* 0D186C 800D0C6C 10000042 */ b .L800D0D78 +/* 0D1870 800D0C70 03201025 */ move $v0, $t9 +.L800D0C74: +/* 0D1874 800D0C74 97B80024 */ lhu $t8, 0x24($sp) +/* 0D1878 800D0C78 24010001 */ li $at, 1 +/* 0D187C 800D0C7C 17010003 */ bne $t8, $at, .L800D0C8C +/* 0D1880 800D0C80 00000000 */ nop +/* 0D1884 800D0C84 1000003C */ b .L800D0D78 +/* 0D1888 800D0C88 00001025 */ move $v0, $zero +.L800D0C8C: +/* 0D188C 800D0C8C 8FAA0028 */ lw $t2, 0x28($sp) +/* 0D1890 800D0C90 97AF0024 */ lhu $t7, 0x24($sp) +/* 0D1894 800D0C94 8D490060 */ lw $t1, 0x60($t2) +/* 0D1898 800D0C98 01E9082A */ slt $at, $t7, $t1 +/* 0D189C 800D0C9C 14200025 */ bnez $at, .L800D0D34 +/* 0D18A0 800D0CA0 00000000 */ nop +.L800D0CA4: +/* 0D18A4 800D0CA4 93AE0025 */ lbu $t6, 0x25($sp) +/* 0D18A8 800D0CA8 97AB0024 */ lhu $t3, 0x24($sp) +/* 0D18AC 800D0CAC 8FAC002C */ lw $t4, 0x2c($sp) +/* 0D18B0 800D0CB0 000E6840 */ sll $t5, $t6, 1 +/* 0D18B4 800D0CB4 A7AB0020 */ sh $t3, 0x20($sp) +/* 0D18B8 800D0CB8 018DC821 */ addu $t9, $t4, $t5 +/* 0D18BC 800D0CBC 97210000 */ lhu $at, ($t9) +/* 0D18C0 800D0CC0 27A80024 */ addiu $t0, $sp, 0x24 +/* 0D18C4 800D0CC4 240F0003 */ li $t7, 3 +/* 0D18C8 800D0CC8 A5010000 */ sh $at, ($t0) +/* 0D18CC 800D0CCC 93AB0021 */ lbu $t3, 0x21($sp) +/* 0D18D0 800D0CD0 8FA9002C */ lw $t1, 0x2c($sp) +/* 0D18D4 800D0CD4 000B7040 */ sll $t6, $t3, 1 +/* 0D18D8 800D0CD8 012E6021 */ addu $t4, $t1, $t6 +/* 0D18DC 800D0CDC A58F0000 */ sh $t7, ($t4) +/* 0D18E0 800D0CE0 93A7003B */ lbu $a3, 0x3b($sp) +/* 0D18E4 800D0CE4 8FA60034 */ lw $a2, 0x34($sp) +/* 0D18E8 800D0CE8 93A50021 */ lbu $a1, 0x21($sp) +/* 0D18EC 800D0CEC 0C034362 */ jal func_800D0D88 +/* 0D18F0 800D0CF0 8FA40028 */ lw $a0, 0x28($sp) +/* 0D18F4 800D0CF4 AFA2001C */ sw $v0, 0x1c($sp) +/* 0D18F8 800D0CF8 8FAD001C */ lw $t5, 0x1c($sp) +/* 0D18FC 800D0CFC 11A00003 */ beqz $t5, .L800D0D0C +/* 0D1900 800D0D00 00000000 */ nop +/* 0D1904 800D0D04 1000001C */ b .L800D0D78 +/* 0D1908 800D0D08 01A01025 */ move $v0, $t5 +.L800D0D0C: +/* 0D190C 800D0D0C 93B80024 */ lbu $t8, 0x24($sp) +/* 0D1910 800D0D10 93A8003B */ lbu $t0, 0x3b($sp) +/* 0D1914 800D0D14 17080007 */ bne $t8, $t0, .L800D0D34 +/* 0D1918 800D0D18 00000000 */ nop +/* 0D191C 800D0D1C 8FAA0028 */ lw $t2, 0x28($sp) +/* 0D1920 800D0D20 97B90024 */ lhu $t9, 0x24($sp) +/* 0D1924 800D0D24 8D4B0060 */ lw $t3, 0x60($t2) +/* 0D1928 800D0D28 032B082A */ slt $at, $t9, $t3 +/* 0D192C 800D0D2C 1020FFDD */ beqz $at, .L800D0CA4 +/* 0D1930 800D0D30 00000000 */ nop +.L800D0D34: +/* 0D1934 800D0D34 8FAE0028 */ lw $t6, 0x28($sp) +/* 0D1938 800D0D38 97A90024 */ lhu $t1, 0x24($sp) +/* 0D193C 800D0D3C 8DCF0060 */ lw $t7, 0x60($t6) +/* 0D1940 800D0D40 012F082A */ slt $at, $t1, $t7 +/* 0D1944 800D0D44 14200007 */ bnez $at, .L800D0D64 +/* 0D1948 800D0D48 00000000 */ nop +/* 0D194C 800D0D4C 93B80025 */ lbu $t8, 0x25($sp) +/* 0D1950 800D0D50 8FAD002C */ lw $t5, 0x2c($sp) +/* 0D1954 800D0D54 240C0003 */ li $t4, 3 +/* 0D1958 800D0D58 00184040 */ sll $t0, $t8, 1 +/* 0D195C 800D0D5C 01A85021 */ addu $t2, $t5, $t0 +/* 0D1960 800D0D60 A54C0000 */ sh $t4, ($t2) +.L800D0D64: +/* 0D1964 800D0D64 27AB0024 */ addiu $t3, $sp, 0x24 +/* 0D1968 800D0D68 95610000 */ lhu $at, ($t3) +/* 0D196C 800D0D6C 8FB9003C */ lw $t9, 0x3c($sp) +/* 0D1970 800D0D70 00001025 */ move $v0, $zero +/* 0D1974 800D0D74 A7210000 */ sh $at, ($t9) +.L800D0D78: +/* 0D1978 800D0D78 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D197C 800D0D7C 27BD0028 */ addiu $sp, $sp, 0x28 +/* 0D1980 800D0D80 03E00008 */ jr $ra +/* 0D1984 800D0D84 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D1180/func_800D0D88.s b/asm/non_matchings/unknown_0D1180/func_800D0D88.s new file mode 100644 index 00000000..f0cb83a2 --- /dev/null +++ b/asm/non_matchings/unknown_0D1180/func_800D0D88.s @@ -0,0 +1,69 @@ +glabel func_800D0D88 +/* 0D1988 800D0D88 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 0D198C 800D0D8C AFA40040 */ sw $a0, 0x40($sp) +/* 0D1990 800D0D90 AFA7004C */ sw $a3, 0x4c($sp) +/* 0D1994 800D0D94 93AE004F */ lbu $t6, 0x4f($sp) +/* 0D1998 800D0D98 8FAF0040 */ lw $t7, 0x40($sp) +/* 0D199C 800D0D9C AFBF0014 */ sw $ra, 0x14($sp) +/* 0D19A0 800D0DA0 AFA50044 */ sw $a1, 0x44($sp) +/* 0D19A4 800D0DA4 AFA60048 */ sw $a2, 0x48($sp) +/* 0D19A8 800D0DA8 AFA00038 */ sw $zero, 0x38($sp) +/* 0D19AC 800D0DAC A1EE0065 */ sb $t6, 0x65($t7) +/* 0D19B0 800D0DB0 0C0357F7 */ jal func_800D5FDC +/* 0D19B4 800D0DB4 8FA40040 */ lw $a0, 0x40($sp) +/* 0D19B8 800D0DB8 AFA20038 */ sw $v0, 0x38($sp) +/* 0D19BC 800D0DBC 8FB80038 */ lw $t8, 0x38($sp) +/* 0D19C0 800D0DC0 13000003 */ beqz $t8, .L800D0DD0 +/* 0D19C4 800D0DC4 00000000 */ nop +/* 0D19C8 800D0DC8 10000027 */ b .L800D0E68 +/* 0D19CC 800D0DCC 03001025 */ move $v0, $t8 +.L800D0DD0: +/* 0D19D0 800D0DD0 AFA0003C */ sw $zero, 0x3c($sp) +.L800D0DD4: +/* 0D19D4 800D0DD4 93A80047 */ lbu $t0, 0x47($sp) +/* 0D19D8 800D0DD8 8FB90040 */ lw $t9, 0x40($sp) +/* 0D19DC 800D0DDC 8FAA003C */ lw $t2, 0x3c($sp) +/* 0D19E0 800D0DE0 000848C0 */ sll $t1, $t0, 3 +/* 0D19E4 800D0DE4 27A70018 */ addiu $a3, $sp, 0x18 +/* 0D19E8 800D0DE8 8F240004 */ lw $a0, 4($t9) +/* 0D19EC 800D0DEC 8F250008 */ lw $a1, 8($t9) +/* 0D19F0 800D0DF0 0C033728 */ jal func_800CDCA0 +/* 0D19F4 800D0DF4 012A3021 */ addu $a2, $t1, $t2 +/* 0D19F8 800D0DF8 AFA20038 */ sw $v0, 0x38($sp) +/* 0D19FC 800D0DFC 8FAB0038 */ lw $t3, 0x38($sp) +/* 0D1A00 800D0E00 11600007 */ beqz $t3, .L800D0E20 +/* 0D1A04 800D0E04 00000000 */ nop +/* 0D1A08 800D0E08 8FAC0040 */ lw $t4, 0x40($sp) +/* 0D1A0C 800D0E0C A1800065 */ sb $zero, 0x65($t4) +/* 0D1A10 800D0E10 0C0357F7 */ jal func_800D5FDC +/* 0D1A14 800D0E14 8FA40040 */ lw $a0, 0x40($sp) +/* 0D1A18 800D0E18 10000013 */ b .L800D0E68 +/* 0D1A1C 800D0E1C 8FA20038 */ lw $v0, 0x38($sp) +.L800D0E20: +/* 0D1A20 800D0E20 27A40018 */ addiu $a0, $sp, 0x18 +/* 0D1A24 800D0E24 0C0354BC */ jal func_800D52F0 +/* 0D1A28 800D0E28 24050020 */ li $a1, 32 +/* 0D1A2C 800D0E2C 8FAD0048 */ lw $t5, 0x48($sp) +/* 0D1A30 800D0E30 95AE0000 */ lhu $t6, ($t5) +/* 0D1A34 800D0E34 004E7821 */ addu $t7, $v0, $t6 +/* 0D1A38 800D0E38 A5AF0000 */ sh $t7, ($t5) +/* 0D1A3C 800D0E3C 8FB8003C */ lw $t8, 0x3c($sp) +/* 0D1A40 800D0E40 27190001 */ addiu $t9, $t8, 1 +/* 0D1A44 800D0E44 2B210008 */ slti $at, $t9, 8 +/* 0D1A48 800D0E48 1420FFE2 */ bnez $at, .L800D0DD4 +/* 0D1A4C 800D0E4C AFB9003C */ sw $t9, 0x3c($sp) +/* 0D1A50 800D0E50 8FA80040 */ lw $t0, 0x40($sp) +/* 0D1A54 800D0E54 A1000065 */ sb $zero, 0x65($t0) +/* 0D1A58 800D0E58 0C0357F7 */ jal func_800D5FDC +/* 0D1A5C 800D0E5C 8FA40040 */ lw $a0, 0x40($sp) +/* 0D1A60 800D0E60 AFA20038 */ sw $v0, 0x38($sp) +/* 0D1A64 800D0E64 8FA20038 */ lw $v0, 0x38($sp) +.L800D0E68: +/* 0D1A68 800D0E68 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D1A6C 800D0E6C 27BD0040 */ addiu $sp, $sp, 0x40 +/* 0D1A70 800D0E70 03E00008 */ jr $ra +/* 0D1A74 800D0E74 00000000 */ nop + +/* 0D1A78 800D0E78 00000000 */ nop +/* 0D1A7C 800D0E7C 00000000 */ nop + diff --git a/asm/unknown_0D1A80.s b/asm/non_matchings/unknown_0D1A80/func_800D0E80.s old mode 100755 new mode 100644 similarity index 96% rename from asm/unknown_0D1A80.s rename to asm/non_matchings/unknown_0D1A80/func_800D0E80.s index 76a3d090..71404338 --- a/asm/unknown_0D1A80.s +++ b/asm/non_matchings/unknown_0D1A80/func_800D0E80.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800D0E80 /* 0D1A80 800D0E80 27BDFFB8 */ addiu $sp, $sp, -0x48 /* 0D1A84 800D0E84 AFBF0014 */ sw $ra, 0x14($sp) @@ -132,3 +124,4 @@ glabel func_800D0E80 /* 0D1C34 800D1034 00000000 */ nop /* 0D1C38 800D1038 00000000 */ nop /* 0D1C3C 800D103C 00000000 */ nop + diff --git a/asm/unknown_0D1C40.s b/asm/non_matchings/unknown_0D1C40/func_800D1040.s old mode 100755 new mode 100644 similarity index 58% rename from asm/unknown_0D1C40.s rename to asm/non_matchings/unknown_0D1C40/func_800D1040.s index dfd72df7..c974c855 --- a/asm/unknown_0D1C40.s +++ b/asm/non_matchings/unknown_0D1C40/func_800D1040.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800D1040 /* 0D1C40 800D1040 27BDFD88 */ addiu $sp, $sp, -0x278 /* 0D1C44 800D1044 AFA5027C */ sw $a1, 0x27c($sp) @@ -324,226 +316,3 @@ glabel func_800D1040 /* 0D20BC 800D14BC 03E00008 */ jr $ra /* 0D20C0 800D14C0 00000000 */ nop -glabel func_800D14C4 -/* 0D20C4 800D14C4 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 0D20C8 800D14C8 93AE0063 */ lbu $t6, 0x63($sp) -/* 0D20CC 800D14CC AFBF0014 */ sw $ra, 0x14($sp) -/* 0D20D0 800D14D0 AFA40050 */ sw $a0, 0x50($sp) -/* 0D20D4 800D14D4 AFA50054 */ sw $a1, 0x54($sp) -/* 0D20D8 800D14D8 AFA60058 */ sw $a2, 0x58($sp) -/* 0D20DC 800D14DC AFA7005C */ sw $a3, 0x5c($sp) -/* 0D20E0 800D14E0 19C00004 */ blez $t6, .L800D14F4 -/* 0D20E4 800D14E4 AFA0001C */ sw $zero, 0x1c($sp) -/* 0D20E8 800D14E8 240F0001 */ li $t7, 1 -/* 0D20EC 800D14EC 10000004 */ b .L800D1500 -/* 0D20F0 800D14F0 AFAF0018 */ sw $t7, 0x18($sp) -.L800D14F4: -/* 0D20F4 800D14F4 8FB80050 */ lw $t8, 0x50($sp) -/* 0D20F8 800D14F8 8F190060 */ lw $t9, 0x60($t8) -/* 0D20FC 800D14FC AFB90018 */ sw $t9, 0x18($sp) -.L800D1500: -/* 0D2100 800D1500 8FA80018 */ lw $t0, 0x18($sp) -/* 0D2104 800D1504 29010080 */ slti $at, $t0, 0x80 -/* 0D2108 800D1508 1020000E */ beqz $at, .L800D1544 -/* 0D210C 800D150C AFA8004C */ sw $t0, 0x4c($sp) -.L800D1510: -/* 0D2110 800D1510 8FAA004C */ lw $t2, 0x4c($sp) -/* 0D2114 800D1514 8FA90054 */ lw $t1, 0x54($sp) -/* 0D2118 800D1518 24010003 */ li $at, 3 -/* 0D211C 800D151C 000A5840 */ sll $t3, $t2, 1 -/* 0D2120 800D1520 012B6021 */ addu $t4, $t1, $t3 -/* 0D2124 800D1524 958D0000 */ lhu $t5, ($t4) -/* 0D2128 800D1528 11A10006 */ beq $t5, $at, .L800D1544 -/* 0D212C 800D152C 00000000 */ nop -/* 0D2130 800D1530 8FAE004C */ lw $t6, 0x4c($sp) -/* 0D2134 800D1534 25CF0001 */ addiu $t7, $t6, 1 -/* 0D2138 800D1538 29E10080 */ slti $at, $t7, 0x80 -/* 0D213C 800D153C 1420FFF4 */ bnez $at, .L800D1510 -/* 0D2140 800D1540 AFAF004C */ sw $t7, 0x4c($sp) -.L800D1544: -/* 0D2144 800D1544 8FB8004C */ lw $t8, 0x4c($sp) -/* 0D2148 800D1548 24010080 */ li $at, 128 -/* 0D214C 800D154C 17010006 */ bne $t8, $at, .L800D1568 -/* 0D2150 800D1550 00000000 */ nop -/* 0D2154 800D1554 8FA8005C */ lw $t0, 0x5c($sp) -/* 0D2158 800D1558 2419FFFF */ li $t9, -1 -/* 0D215C 800D155C AD190000 */ sw $t9, ($t0) -/* 0D2160 800D1560 1000006D */ b .L800D1718 -/* 0D2164 800D1564 8FA2001C */ lw $v0, 0x1c($sp) -.L800D1568: -/* 0D2168 800D1568 AFA00020 */ sw $zero, 0x20($sp) -.L800D156C: -/* 0D216C 800D156C 8FAA0020 */ lw $t2, 0x20($sp) -/* 0D2170 800D1570 03AA4821 */ addu $t1, $sp, $t2 -/* 0D2174 800D1574 A1200024 */ sb $zero, 0x24($t1) -/* 0D2178 800D1578 8FAB0020 */ lw $t3, 0x20($sp) -/* 0D217C 800D157C 256C0001 */ addiu $t4, $t3, 1 -/* 0D2180 800D1580 29810020 */ slti $at, $t4, 0x20 -/* 0D2184 800D1584 1420FFF9 */ bnez $at, .L800D156C -/* 0D2188 800D1588 AFAC0020 */ sw $t4, 0x20($sp) -/* 0D218C 800D158C 8FAD004C */ lw $t5, 0x4c($sp) -/* 0D2190 800D1590 8FAF0064 */ lw $t7, 0x64($sp) -/* 0D2194 800D1594 240E0001 */ li $t6, 1 -/* 0D2198 800D1598 AFAD0048 */ sw $t5, 0x48($sp) -/* 0D219C 800D159C ADEE0000 */ sw $t6, ($t7) -/* 0D21A0 800D15A0 8FB8004C */ lw $t8, 0x4c($sp) -/* 0D21A4 800D15A4 8FAA0064 */ lw $t2, 0x64($sp) -/* 0D21A8 800D15A8 8FA80058 */ lw $t0, 0x58($sp) -/* 0D21AC 800D15AC 27190001 */ addiu $t9, $t8, 1 -/* 0D21B0 800D15B0 AFB9004C */ sw $t9, 0x4c($sp) -/* 0D21B4 800D15B4 AFB80044 */ sw $t8, 0x44($sp) -/* 0D21B8 800D15B8 8D490000 */ lw $t1, ($t2) -/* 0D21BC 800D15BC 0128082A */ slt $at, $t1, $t0 -/* 0D21C0 800D15C0 10200034 */ beqz $at, .L800D1694 -/* 0D21C4 800D15C4 2B210080 */ slti $at, $t9, 0x80 -/* 0D21C8 800D15C8 10200032 */ beqz $at, .L800D1694 -/* 0D21CC 800D15CC 00000000 */ nop -.L800D15D0: -/* 0D21D0 800D15D0 8FAC004C */ lw $t4, 0x4c($sp) -/* 0D21D4 800D15D4 8FAB0054 */ lw $t3, 0x54($sp) -/* 0D21D8 800D15D8 24010003 */ li $at, 3 -/* 0D21DC 800D15DC 000C6840 */ sll $t5, $t4, 1 -/* 0D21E0 800D15E0 016D7021 */ addu $t6, $t3, $t5 -/* 0D21E4 800D15E4 95CF0000 */ lhu $t7, ($t6) -/* 0D21E8 800D15E8 15E1001D */ bne $t7, $at, .L800D1660 -/* 0D21EC 800D15EC 00000000 */ nop -/* 0D21F0 800D15F0 8FAA0044 */ lw $t2, 0x44($sp) -/* 0D21F4 800D15F4 93B80063 */ lbu $t8, 0x63($sp) -/* 0D21F8 800D15F8 27A60024 */ addiu $a2, $sp, 0x24 -/* 0D21FC 800D15FC 000A4040 */ sll $t0, $t2, 1 -/* 0D2200 800D1600 01684821 */ addu $t1, $t3, $t0 -/* 0D2204 800D1604 A1380000 */ sb $t8, ($t1) -/* 0D2208 800D1608 8FAD0044 */ lw $t5, 0x44($sp) -/* 0D220C 800D160C 8FAC0054 */ lw $t4, 0x54($sp) -/* 0D2210 800D1610 8FB9004C */ lw $t9, 0x4c($sp) -/* 0D2214 800D1614 000D7040 */ sll $t6, $t5, 1 -/* 0D2218 800D1618 018E7821 */ addu $t7, $t4, $t6 -/* 0D221C 800D161C A1F90001 */ sb $t9, 1($t7) -/* 0D2220 800D1620 93A70063 */ lbu $a3, 0x63($sp) -/* 0D2224 800D1624 8FA50044 */ lw $a1, 0x44($sp) -/* 0D2228 800D1628 0C0345CA */ jal func_800D1728 -/* 0D222C 800D162C 8FA40050 */ lw $a0, 0x50($sp) -/* 0D2230 800D1630 AFA2001C */ sw $v0, 0x1c($sp) -/* 0D2234 800D1634 8FAA001C */ lw $t2, 0x1c($sp) -/* 0D2238 800D1638 11400003 */ beqz $t2, .L800D1648 -/* 0D223C 800D163C 00000000 */ nop -/* 0D2240 800D1640 10000035 */ b .L800D1718 -/* 0D2244 800D1644 01401025 */ move $v0, $t2 -.L800D1648: -/* 0D2248 800D1648 8FAB004C */ lw $t3, 0x4c($sp) -/* 0D224C 800D164C 8FA80064 */ lw $t0, 0x64($sp) -/* 0D2250 800D1650 AFAB0044 */ sw $t3, 0x44($sp) -/* 0D2254 800D1654 8D180000 */ lw $t8, ($t0) -/* 0D2258 800D1658 27090001 */ addiu $t1, $t8, 1 -/* 0D225C 800D165C AD090000 */ sw $t1, ($t0) -.L800D1660: -/* 0D2260 800D1660 8FAD004C */ lw $t5, 0x4c($sp) -/* 0D2264 800D1664 8FB90064 */ lw $t9, 0x64($sp) -/* 0D2268 800D1668 8FAE0058 */ lw $t6, 0x58($sp) -/* 0D226C 800D166C 25AC0001 */ addiu $t4, $t5, 1 -/* 0D2270 800D1670 AFAC004C */ sw $t4, 0x4c($sp) -/* 0D2274 800D1674 8F2F0000 */ lw $t7, ($t9) -/* 0D2278 800D1678 01EE082A */ slt $at, $t7, $t6 -/* 0D227C 800D167C 10200005 */ beqz $at, .L800D1694 -/* 0D2280 800D1680 00000000 */ nop -/* 0D2284 800D1684 8FAA004C */ lw $t2, 0x4c($sp) -/* 0D2288 800D1688 29410080 */ slti $at, $t2, 0x80 -/* 0D228C 800D168C 1420FFD0 */ bnez $at, .L800D15D0 -/* 0D2290 800D1690 00000000 */ nop -.L800D1694: -/* 0D2294 800D1694 8FAB0048 */ lw $t3, 0x48($sp) -/* 0D2298 800D1698 8FB8005C */ lw $t8, 0x5c($sp) -/* 0D229C 800D169C 24010080 */ li $at, 128 -/* 0D22A0 800D16A0 AF0B0000 */ sw $t3, ($t8) -/* 0D22A4 800D16A4 8FA9004C */ lw $t1, 0x4c($sp) -/* 0D22A8 800D16A8 1521000C */ bne $t1, $at, .L800D16DC -/* 0D22AC 800D16AC 00000000 */ nop -/* 0D22B0 800D16B0 8FAD0064 */ lw $t5, 0x64($sp) -/* 0D22B4 800D16B4 8FA80058 */ lw $t0, 0x58($sp) -/* 0D22B8 800D16B8 8DAC0000 */ lw $t4, ($t5) -/* 0D22BC 800D16BC 0188082A */ slt $at, $t4, $t0 -/* 0D22C0 800D16C0 10200006 */ beqz $at, .L800D16DC -/* 0D22C4 800D16C4 00000000 */ nop -/* 0D22C8 800D16C8 8FB90044 */ lw $t9, 0x44($sp) -/* 0D22CC 800D16CC 8FAE0068 */ lw $t6, 0x68($sp) -/* 0D22D0 800D16D0 ADD90000 */ sw $t9, ($t6) -/* 0D22D4 800D16D4 10000010 */ b .L800D1718 -/* 0D22D8 800D16D8 8FA2001C */ lw $v0, 0x1c($sp) -.L800D16DC: -/* 0D22DC 800D16DC 8FAB0044 */ lw $t3, 0x44($sp) -/* 0D22E0 800D16E0 8FAA0054 */ lw $t2, 0x54($sp) -/* 0D22E4 800D16E4 240F0001 */ li $t7, 1 -/* 0D22E8 800D16E8 000BC040 */ sll $t8, $t3, 1 -/* 0D22EC 800D16EC 01584821 */ addu $t1, $t2, $t8 -/* 0D22F0 800D16F0 A52F0000 */ sh $t7, ($t1) -/* 0D22F4 800D16F4 93A70063 */ lbu $a3, 0x63($sp) -/* 0D22F8 800D16F8 8FA50044 */ lw $a1, 0x44($sp) -/* 0D22FC 800D16FC 8FA40050 */ lw $a0, 0x50($sp) -/* 0D2300 800D1700 0C0345CA */ jal func_800D1728 -/* 0D2304 800D1704 27A60024 */ addiu $a2, $sp, 0x24 -/* 0D2308 800D1708 8FAD0068 */ lw $t5, 0x68($sp) -/* 0D230C 800D170C AFA2001C */ sw $v0, 0x1c($sp) -/* 0D2310 800D1710 ADA00000 */ sw $zero, ($t5) -/* 0D2314 800D1714 8FA2001C */ lw $v0, 0x1c($sp) -.L800D1718: -/* 0D2318 800D1718 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D231C 800D171C 27BD0050 */ addiu $sp, $sp, 0x50 -/* 0D2320 800D1720 03E00008 */ jr $ra -/* 0D2324 800D1724 00000000 */ nop - -glabel func_800D1728 -/* 0D2328 800D1728 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0D232C 800D172C AFA40028 */ sw $a0, 0x28($sp) -/* 0D2330 800D1730 AFA70034 */ sw $a3, 0x34($sp) -/* 0D2334 800D1734 93AE0037 */ lbu $t6, 0x37($sp) -/* 0D2338 800D1738 8FAF0028 */ lw $t7, 0x28($sp) -/* 0D233C 800D173C AFBF001C */ sw $ra, 0x1c($sp) -/* 0D2340 800D1740 AFA5002C */ sw $a1, 0x2c($sp) -/* 0D2344 800D1744 AFA60030 */ sw $a2, 0x30($sp) -/* 0D2348 800D1748 AFA00020 */ sw $zero, 0x20($sp) -/* 0D234C 800D174C A1EE0065 */ sb $t6, 0x65($t7) -/* 0D2350 800D1750 0C0357F7 */ jal func_800D5FDC -/* 0D2354 800D1754 8FA40028 */ lw $a0, 0x28($sp) -/* 0D2358 800D1758 AFA20020 */ sw $v0, 0x20($sp) -/* 0D235C 800D175C 8FB80020 */ lw $t8, 0x20($sp) -/* 0D2360 800D1760 13000003 */ beqz $t8, .L800D1770 -/* 0D2364 800D1764 00000000 */ nop -/* 0D2368 800D1768 1000001B */ b .L800D17D8 -/* 0D236C 800D176C 03001025 */ move $v0, $t8 -.L800D1770: -/* 0D2370 800D1770 AFA00024 */ sw $zero, 0x24($sp) -.L800D1774: -/* 0D2374 800D1774 8FB90028 */ lw $t9, 0x28($sp) -/* 0D2378 800D1778 8FA8002C */ lw $t0, 0x2c($sp) -/* 0D237C 800D177C 8FAA0024 */ lw $t2, 0x24($sp) -/* 0D2380 800D1780 8F240004 */ lw $a0, 4($t9) -/* 0D2384 800D1784 8F250008 */ lw $a1, 8($t9) -/* 0D2388 800D1788 000848C0 */ sll $t1, $t0, 3 -/* 0D238C 800D178C AFA00010 */ sw $zero, 0x10($sp) -/* 0D2390 800D1790 8FA70030 */ lw $a3, 0x30($sp) -/* 0D2394 800D1794 0C03363C */ jal func_800CD8F0 -/* 0D2398 800D1798 012A3021 */ addu $a2, $t1, $t2 -/* 0D239C 800D179C AFA20020 */ sw $v0, 0x20($sp) -/* 0D23A0 800D17A0 8FAB0020 */ lw $t3, 0x20($sp) -/* 0D23A4 800D17A4 15600006 */ bnez $t3, .L800D17C0 -/* 0D23A8 800D17A8 00000000 */ nop -/* 0D23AC 800D17AC 8FAC0024 */ lw $t4, 0x24($sp) -/* 0D23B0 800D17B0 258D0001 */ addiu $t5, $t4, 1 -/* 0D23B4 800D17B4 29A10008 */ slti $at, $t5, 8 -/* 0D23B8 800D17B8 1420FFEE */ bnez $at, .L800D1774 -/* 0D23BC 800D17BC AFAD0024 */ sw $t5, 0x24($sp) -.L800D17C0: -/* 0D23C0 800D17C0 8FAE0028 */ lw $t6, 0x28($sp) -/* 0D23C4 800D17C4 A1C00065 */ sb $zero, 0x65($t6) -/* 0D23C8 800D17C8 0C0357F7 */ jal func_800D5FDC -/* 0D23CC 800D17CC 8FA40028 */ lw $a0, 0x28($sp) -/* 0D23D0 800D17D0 AFA20020 */ sw $v0, 0x20($sp) -/* 0D23D4 800D17D4 8FA20020 */ lw $v0, 0x20($sp) -.L800D17D8: -/* 0D23D8 800D17D8 8FBF001C */ lw $ra, 0x1c($sp) -/* 0D23DC 800D17DC 27BD0028 */ addiu $sp, $sp, 0x28 -/* 0D23E0 800D17E0 03E00008 */ jr $ra -/* 0D23E4 800D17E4 00000000 */ nop - -/* 0D23E8 800D17E8 00000000 */ nop -/* 0D23EC 800D17EC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D1C40/func_800D14C4.s b/asm/non_matchings/unknown_0D1C40/func_800D14C4.s new file mode 100644 index 00000000..0c7c49ff --- /dev/null +++ b/asm/non_matchings/unknown_0D1C40/func_800D14C4.s @@ -0,0 +1,167 @@ +glabel func_800D14C4 +/* 0D20C4 800D14C4 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 0D20C8 800D14C8 93AE0063 */ lbu $t6, 0x63($sp) +/* 0D20CC 800D14CC AFBF0014 */ sw $ra, 0x14($sp) +/* 0D20D0 800D14D0 AFA40050 */ sw $a0, 0x50($sp) +/* 0D20D4 800D14D4 AFA50054 */ sw $a1, 0x54($sp) +/* 0D20D8 800D14D8 AFA60058 */ sw $a2, 0x58($sp) +/* 0D20DC 800D14DC AFA7005C */ sw $a3, 0x5c($sp) +/* 0D20E0 800D14E0 19C00004 */ blez $t6, .L800D14F4 +/* 0D20E4 800D14E4 AFA0001C */ sw $zero, 0x1c($sp) +/* 0D20E8 800D14E8 240F0001 */ li $t7, 1 +/* 0D20EC 800D14EC 10000004 */ b .L800D1500 +/* 0D20F0 800D14F0 AFAF0018 */ sw $t7, 0x18($sp) +.L800D14F4: +/* 0D20F4 800D14F4 8FB80050 */ lw $t8, 0x50($sp) +/* 0D20F8 800D14F8 8F190060 */ lw $t9, 0x60($t8) +/* 0D20FC 800D14FC AFB90018 */ sw $t9, 0x18($sp) +.L800D1500: +/* 0D2100 800D1500 8FA80018 */ lw $t0, 0x18($sp) +/* 0D2104 800D1504 29010080 */ slti $at, $t0, 0x80 +/* 0D2108 800D1508 1020000E */ beqz $at, .L800D1544 +/* 0D210C 800D150C AFA8004C */ sw $t0, 0x4c($sp) +.L800D1510: +/* 0D2110 800D1510 8FAA004C */ lw $t2, 0x4c($sp) +/* 0D2114 800D1514 8FA90054 */ lw $t1, 0x54($sp) +/* 0D2118 800D1518 24010003 */ li $at, 3 +/* 0D211C 800D151C 000A5840 */ sll $t3, $t2, 1 +/* 0D2120 800D1520 012B6021 */ addu $t4, $t1, $t3 +/* 0D2124 800D1524 958D0000 */ lhu $t5, ($t4) +/* 0D2128 800D1528 11A10006 */ beq $t5, $at, .L800D1544 +/* 0D212C 800D152C 00000000 */ nop +/* 0D2130 800D1530 8FAE004C */ lw $t6, 0x4c($sp) +/* 0D2134 800D1534 25CF0001 */ addiu $t7, $t6, 1 +/* 0D2138 800D1538 29E10080 */ slti $at, $t7, 0x80 +/* 0D213C 800D153C 1420FFF4 */ bnez $at, .L800D1510 +/* 0D2140 800D1540 AFAF004C */ sw $t7, 0x4c($sp) +.L800D1544: +/* 0D2144 800D1544 8FB8004C */ lw $t8, 0x4c($sp) +/* 0D2148 800D1548 24010080 */ li $at, 128 +/* 0D214C 800D154C 17010006 */ bne $t8, $at, .L800D1568 +/* 0D2150 800D1550 00000000 */ nop +/* 0D2154 800D1554 8FA8005C */ lw $t0, 0x5c($sp) +/* 0D2158 800D1558 2419FFFF */ li $t9, -1 +/* 0D215C 800D155C AD190000 */ sw $t9, ($t0) +/* 0D2160 800D1560 1000006D */ b .L800D1718 +/* 0D2164 800D1564 8FA2001C */ lw $v0, 0x1c($sp) +.L800D1568: +/* 0D2168 800D1568 AFA00020 */ sw $zero, 0x20($sp) +.L800D156C: +/* 0D216C 800D156C 8FAA0020 */ lw $t2, 0x20($sp) +/* 0D2170 800D1570 03AA4821 */ addu $t1, $sp, $t2 +/* 0D2174 800D1574 A1200024 */ sb $zero, 0x24($t1) +/* 0D2178 800D1578 8FAB0020 */ lw $t3, 0x20($sp) +/* 0D217C 800D157C 256C0001 */ addiu $t4, $t3, 1 +/* 0D2180 800D1580 29810020 */ slti $at, $t4, 0x20 +/* 0D2184 800D1584 1420FFF9 */ bnez $at, .L800D156C +/* 0D2188 800D1588 AFAC0020 */ sw $t4, 0x20($sp) +/* 0D218C 800D158C 8FAD004C */ lw $t5, 0x4c($sp) +/* 0D2190 800D1590 8FAF0064 */ lw $t7, 0x64($sp) +/* 0D2194 800D1594 240E0001 */ li $t6, 1 +/* 0D2198 800D1598 AFAD0048 */ sw $t5, 0x48($sp) +/* 0D219C 800D159C ADEE0000 */ sw $t6, ($t7) +/* 0D21A0 800D15A0 8FB8004C */ lw $t8, 0x4c($sp) +/* 0D21A4 800D15A4 8FAA0064 */ lw $t2, 0x64($sp) +/* 0D21A8 800D15A8 8FA80058 */ lw $t0, 0x58($sp) +/* 0D21AC 800D15AC 27190001 */ addiu $t9, $t8, 1 +/* 0D21B0 800D15B0 AFB9004C */ sw $t9, 0x4c($sp) +/* 0D21B4 800D15B4 AFB80044 */ sw $t8, 0x44($sp) +/* 0D21B8 800D15B8 8D490000 */ lw $t1, ($t2) +/* 0D21BC 800D15BC 0128082A */ slt $at, $t1, $t0 +/* 0D21C0 800D15C0 10200034 */ beqz $at, .L800D1694 +/* 0D21C4 800D15C4 2B210080 */ slti $at, $t9, 0x80 +/* 0D21C8 800D15C8 10200032 */ beqz $at, .L800D1694 +/* 0D21CC 800D15CC 00000000 */ nop +.L800D15D0: +/* 0D21D0 800D15D0 8FAC004C */ lw $t4, 0x4c($sp) +/* 0D21D4 800D15D4 8FAB0054 */ lw $t3, 0x54($sp) +/* 0D21D8 800D15D8 24010003 */ li $at, 3 +/* 0D21DC 800D15DC 000C6840 */ sll $t5, $t4, 1 +/* 0D21E0 800D15E0 016D7021 */ addu $t6, $t3, $t5 +/* 0D21E4 800D15E4 95CF0000 */ lhu $t7, ($t6) +/* 0D21E8 800D15E8 15E1001D */ bne $t7, $at, .L800D1660 +/* 0D21EC 800D15EC 00000000 */ nop +/* 0D21F0 800D15F0 8FAA0044 */ lw $t2, 0x44($sp) +/* 0D21F4 800D15F4 93B80063 */ lbu $t8, 0x63($sp) +/* 0D21F8 800D15F8 27A60024 */ addiu $a2, $sp, 0x24 +/* 0D21FC 800D15FC 000A4040 */ sll $t0, $t2, 1 +/* 0D2200 800D1600 01684821 */ addu $t1, $t3, $t0 +/* 0D2204 800D1604 A1380000 */ sb $t8, ($t1) +/* 0D2208 800D1608 8FAD0044 */ lw $t5, 0x44($sp) +/* 0D220C 800D160C 8FAC0054 */ lw $t4, 0x54($sp) +/* 0D2210 800D1610 8FB9004C */ lw $t9, 0x4c($sp) +/* 0D2214 800D1614 000D7040 */ sll $t6, $t5, 1 +/* 0D2218 800D1618 018E7821 */ addu $t7, $t4, $t6 +/* 0D221C 800D161C A1F90001 */ sb $t9, 1($t7) +/* 0D2220 800D1620 93A70063 */ lbu $a3, 0x63($sp) +/* 0D2224 800D1624 8FA50044 */ lw $a1, 0x44($sp) +/* 0D2228 800D1628 0C0345CA */ jal func_800D1728 +/* 0D222C 800D162C 8FA40050 */ lw $a0, 0x50($sp) +/* 0D2230 800D1630 AFA2001C */ sw $v0, 0x1c($sp) +/* 0D2234 800D1634 8FAA001C */ lw $t2, 0x1c($sp) +/* 0D2238 800D1638 11400003 */ beqz $t2, .L800D1648 +/* 0D223C 800D163C 00000000 */ nop +/* 0D2240 800D1640 10000035 */ b .L800D1718 +/* 0D2244 800D1644 01401025 */ move $v0, $t2 +.L800D1648: +/* 0D2248 800D1648 8FAB004C */ lw $t3, 0x4c($sp) +/* 0D224C 800D164C 8FA80064 */ lw $t0, 0x64($sp) +/* 0D2250 800D1650 AFAB0044 */ sw $t3, 0x44($sp) +/* 0D2254 800D1654 8D180000 */ lw $t8, ($t0) +/* 0D2258 800D1658 27090001 */ addiu $t1, $t8, 1 +/* 0D225C 800D165C AD090000 */ sw $t1, ($t0) +.L800D1660: +/* 0D2260 800D1660 8FAD004C */ lw $t5, 0x4c($sp) +/* 0D2264 800D1664 8FB90064 */ lw $t9, 0x64($sp) +/* 0D2268 800D1668 8FAE0058 */ lw $t6, 0x58($sp) +/* 0D226C 800D166C 25AC0001 */ addiu $t4, $t5, 1 +/* 0D2270 800D1670 AFAC004C */ sw $t4, 0x4c($sp) +/* 0D2274 800D1674 8F2F0000 */ lw $t7, ($t9) +/* 0D2278 800D1678 01EE082A */ slt $at, $t7, $t6 +/* 0D227C 800D167C 10200005 */ beqz $at, .L800D1694 +/* 0D2280 800D1680 00000000 */ nop +/* 0D2284 800D1684 8FAA004C */ lw $t2, 0x4c($sp) +/* 0D2288 800D1688 29410080 */ slti $at, $t2, 0x80 +/* 0D228C 800D168C 1420FFD0 */ bnez $at, .L800D15D0 +/* 0D2290 800D1690 00000000 */ nop +.L800D1694: +/* 0D2294 800D1694 8FAB0048 */ lw $t3, 0x48($sp) +/* 0D2298 800D1698 8FB8005C */ lw $t8, 0x5c($sp) +/* 0D229C 800D169C 24010080 */ li $at, 128 +/* 0D22A0 800D16A0 AF0B0000 */ sw $t3, ($t8) +/* 0D22A4 800D16A4 8FA9004C */ lw $t1, 0x4c($sp) +/* 0D22A8 800D16A8 1521000C */ bne $t1, $at, .L800D16DC +/* 0D22AC 800D16AC 00000000 */ nop +/* 0D22B0 800D16B0 8FAD0064 */ lw $t5, 0x64($sp) +/* 0D22B4 800D16B4 8FA80058 */ lw $t0, 0x58($sp) +/* 0D22B8 800D16B8 8DAC0000 */ lw $t4, ($t5) +/* 0D22BC 800D16BC 0188082A */ slt $at, $t4, $t0 +/* 0D22C0 800D16C0 10200006 */ beqz $at, .L800D16DC +/* 0D22C4 800D16C4 00000000 */ nop +/* 0D22C8 800D16C8 8FB90044 */ lw $t9, 0x44($sp) +/* 0D22CC 800D16CC 8FAE0068 */ lw $t6, 0x68($sp) +/* 0D22D0 800D16D0 ADD90000 */ sw $t9, ($t6) +/* 0D22D4 800D16D4 10000010 */ b .L800D1718 +/* 0D22D8 800D16D8 8FA2001C */ lw $v0, 0x1c($sp) +.L800D16DC: +/* 0D22DC 800D16DC 8FAB0044 */ lw $t3, 0x44($sp) +/* 0D22E0 800D16E0 8FAA0054 */ lw $t2, 0x54($sp) +/* 0D22E4 800D16E4 240F0001 */ li $t7, 1 +/* 0D22E8 800D16E8 000BC040 */ sll $t8, $t3, 1 +/* 0D22EC 800D16EC 01584821 */ addu $t1, $t2, $t8 +/* 0D22F0 800D16F0 A52F0000 */ sh $t7, ($t1) +/* 0D22F4 800D16F4 93A70063 */ lbu $a3, 0x63($sp) +/* 0D22F8 800D16F8 8FA50044 */ lw $a1, 0x44($sp) +/* 0D22FC 800D16FC 8FA40050 */ lw $a0, 0x50($sp) +/* 0D2300 800D1700 0C0345CA */ jal func_800D1728 +/* 0D2304 800D1704 27A60024 */ addiu $a2, $sp, 0x24 +/* 0D2308 800D1708 8FAD0068 */ lw $t5, 0x68($sp) +/* 0D230C 800D170C AFA2001C */ sw $v0, 0x1c($sp) +/* 0D2310 800D1710 ADA00000 */ sw $zero, ($t5) +/* 0D2314 800D1714 8FA2001C */ lw $v0, 0x1c($sp) +.L800D1718: +/* 0D2318 800D1718 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D231C 800D171C 27BD0050 */ addiu $sp, $sp, 0x50 +/* 0D2320 800D1720 03E00008 */ jr $ra +/* 0D2324 800D1724 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D1C40/func_800D1728.s b/asm/non_matchings/unknown_0D1C40/func_800D1728.s new file mode 100644 index 00000000..ea4523a0 --- /dev/null +++ b/asm/non_matchings/unknown_0D1C40/func_800D1728.s @@ -0,0 +1,57 @@ +glabel func_800D1728 +/* 0D2328 800D1728 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0D232C 800D172C AFA40028 */ sw $a0, 0x28($sp) +/* 0D2330 800D1730 AFA70034 */ sw $a3, 0x34($sp) +/* 0D2334 800D1734 93AE0037 */ lbu $t6, 0x37($sp) +/* 0D2338 800D1738 8FAF0028 */ lw $t7, 0x28($sp) +/* 0D233C 800D173C AFBF001C */ sw $ra, 0x1c($sp) +/* 0D2340 800D1740 AFA5002C */ sw $a1, 0x2c($sp) +/* 0D2344 800D1744 AFA60030 */ sw $a2, 0x30($sp) +/* 0D2348 800D1748 AFA00020 */ sw $zero, 0x20($sp) +/* 0D234C 800D174C A1EE0065 */ sb $t6, 0x65($t7) +/* 0D2350 800D1750 0C0357F7 */ jal func_800D5FDC +/* 0D2354 800D1754 8FA40028 */ lw $a0, 0x28($sp) +/* 0D2358 800D1758 AFA20020 */ sw $v0, 0x20($sp) +/* 0D235C 800D175C 8FB80020 */ lw $t8, 0x20($sp) +/* 0D2360 800D1760 13000003 */ beqz $t8, .L800D1770 +/* 0D2364 800D1764 00000000 */ nop +/* 0D2368 800D1768 1000001B */ b .L800D17D8 +/* 0D236C 800D176C 03001025 */ move $v0, $t8 +.L800D1770: +/* 0D2370 800D1770 AFA00024 */ sw $zero, 0x24($sp) +.L800D1774: +/* 0D2374 800D1774 8FB90028 */ lw $t9, 0x28($sp) +/* 0D2378 800D1778 8FA8002C */ lw $t0, 0x2c($sp) +/* 0D237C 800D177C 8FAA0024 */ lw $t2, 0x24($sp) +/* 0D2380 800D1780 8F240004 */ lw $a0, 4($t9) +/* 0D2384 800D1784 8F250008 */ lw $a1, 8($t9) +/* 0D2388 800D1788 000848C0 */ sll $t1, $t0, 3 +/* 0D238C 800D178C AFA00010 */ sw $zero, 0x10($sp) +/* 0D2390 800D1790 8FA70030 */ lw $a3, 0x30($sp) +/* 0D2394 800D1794 0C03363C */ jal func_800CD8F0 +/* 0D2398 800D1798 012A3021 */ addu $a2, $t1, $t2 +/* 0D239C 800D179C AFA20020 */ sw $v0, 0x20($sp) +/* 0D23A0 800D17A0 8FAB0020 */ lw $t3, 0x20($sp) +/* 0D23A4 800D17A4 15600006 */ bnez $t3, .L800D17C0 +/* 0D23A8 800D17A8 00000000 */ nop +/* 0D23AC 800D17AC 8FAC0024 */ lw $t4, 0x24($sp) +/* 0D23B0 800D17B0 258D0001 */ addiu $t5, $t4, 1 +/* 0D23B4 800D17B4 29A10008 */ slti $at, $t5, 8 +/* 0D23B8 800D17B8 1420FFEE */ bnez $at, .L800D1774 +/* 0D23BC 800D17BC AFAD0024 */ sw $t5, 0x24($sp) +.L800D17C0: +/* 0D23C0 800D17C0 8FAE0028 */ lw $t6, 0x28($sp) +/* 0D23C4 800D17C4 A1C00065 */ sb $zero, 0x65($t6) +/* 0D23C8 800D17C8 0C0357F7 */ jal func_800D5FDC +/* 0D23CC 800D17CC 8FA40028 */ lw $a0, 0x28($sp) +/* 0D23D0 800D17D0 AFA20020 */ sw $v0, 0x20($sp) +/* 0D23D4 800D17D4 8FA20020 */ lw $v0, 0x20($sp) +.L800D17D8: +/* 0D23D8 800D17D8 8FBF001C */ lw $ra, 0x1c($sp) +/* 0D23DC 800D17DC 27BD0028 */ addiu $sp, $sp, 0x28 +/* 0D23E0 800D17E0 03E00008 */ jr $ra +/* 0D23E4 800D17E4 00000000 */ nop + +/* 0D23E8 800D17E8 00000000 */ nop +/* 0D23EC 800D17EC 00000000 */ nop + diff --git a/asm/unknown_0D23F0.s b/asm/non_matchings/unknown_0D23F0/func_800D17F0.s old mode 100755 new mode 100644 similarity index 91% rename from asm/unknown_0D23F0.s rename to asm/non_matchings/unknown_0D23F0/func_800D17F0.s index 34be55e2..cfb225c7 --- a/asm/unknown_0D23F0.s +++ b/asm/non_matchings/unknown_0D23F0/func_800D17F0.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800D17F0 /* 0D23F0 800D17F0 18A0001F */ blez $a1, .L800D1870 /* 0D23F4 800D17F4 00000000 */ nop @@ -58,3 +50,4 @@ glabel func_800D17F0 /* 0D2498 800D1898 00000000 */ nop /* 0D249C 800D189C 00000000 */ nop + diff --git a/asm/unknown_0D24A0.s b/asm/non_matchings/unknown_0D24A0/func_800D18A0.s old mode 100755 new mode 100644 similarity index 76% rename from asm/unknown_0D24A0.s rename to asm/non_matchings/unknown_0D24A0/func_800D18A0.s index 2300a16b..717fe4da --- a/asm/unknown_0D24A0.s +++ b/asm/non_matchings/unknown_0D24A0/func_800D18A0.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800D18A0 /* 0D24A0 800D18A0 3C088000 */ lui $t0, %hi(D_80000010) # $t0, 0x8000 /* 0D24A4 800D18A4 240A2000 */ li $t2, 8192 @@ -21,3 +13,4 @@ glabel func_800D18A0 /* 0D24C8 800D18C8 00000000 */ nop /* 0D24CC 800D18CC 00000000 */ nop + diff --git a/asm/unknown_0D24D0.s b/asm/non_matchings/unknown_0D24D0/func_800D18D0.s old mode 100755 new mode 100644 similarity index 50% rename from asm/unknown_0D24D0.s rename to asm/non_matchings/unknown_0D24D0/func_800D18D0.s index 0e367adb..c27be119 --- a/asm/unknown_0D24D0.s +++ b/asm/non_matchings/unknown_0D24D0/func_800D18D0.s @@ -1,14 +1,7 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800D18D0 /* 0D24D0 800D18D0 3C0EA410 */ lui $t6, 0xa410 /* 0D24D4 800D18D4 03E00008 */ jr $ra /* 0D24D8 800D18D8 8DC2000C */ lw $v0, 0xc($t6) /* 0D24DC 800D18DC 00000000 */ nop + diff --git a/asm/unknown_0D24E0.s b/asm/non_matchings/unknown_0D24E0/func_800D18E0.s old mode 100755 new mode 100644 similarity index 91% rename from asm/unknown_0D24E0.s rename to asm/non_matchings/unknown_0D24E0/func_800D18E0.s index 6b6bb016..89d45eaf --- a/asm/unknown_0D24E0.s +++ b/asm/non_matchings/unknown_0D24E0/func_800D18E0.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800D18E0 /* 0D24E0 800D18E0 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0D24E4 800D18E4 AFBF001C */ sw $ra, 0x1c($sp) @@ -55,3 +47,4 @@ glabel func_800D18E0 /* 0D2588 800D1988 00000000 */ nop /* 0D258C 800D198C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D2590/D_800D1B08.s b/asm/non_matchings/unknown_0D2590/D_800D1B08.s new file mode 100644 index 00000000..f8d7560c --- /dev/null +++ b/asm/non_matchings/unknown_0D2590/D_800D1B08.s @@ -0,0 +1,112 @@ +glabel D_800D1B08 +/* 0D2708 800D1B08 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 0D270C 800D1B0C AFBF0034 */ sw $ra, 0x34($sp) +/* 0D2710 800D1B10 AFB70030 */ sw $s7, 0x30($sp) +/* 0D2714 800D1B14 0080B825 */ move $s7, $a0 +/* 0D2718 800D1B18 AFB6002C */ sw $s6, 0x2c($sp) +/* 0D271C 800D1B1C AFB50028 */ sw $s5, 0x28($sp) +/* 0D2720 800D1B20 AFB40024 */ sw $s4, 0x24($sp) +/* 0D2724 800D1B24 AFB30020 */ sw $s3, 0x20($sp) +/* 0D2728 800D1B28 AFB2001C */ sw $s2, 0x1c($sp) +/* 0D272C 800D1B2C AFB10018 */ sw $s1, 0x18($sp) +/* 0D2730 800D1B30 AFB00014 */ sw $s0, 0x14($sp) +/* 0D2734 800D1B34 0C035820 */ jal func_800D6080 +/* 0D2738 800D1B38 AFA00044 */ sw $zero, 0x44($sp) +/* 0D273C 800D1B3C 94430002 */ lhu $v1, 2($v0) +/* 0D2740 800D1B40 3C018013 */ lui $at, %hi(D_8012D190) # $at, 0x8013 +/* 0D2744 800D1B44 2416000E */ li $s6, 14 +/* 0D2748 800D1B48 14600004 */ bnez $v1, .L800D1B5C +/* 0D274C 800D1B4C A423D190 */ sh $v1, %lo(D_8012D190)($at) +/* 0D2750 800D1B50 24030001 */ li $v1, 1 +/* 0D2754 800D1B54 3C018013 */ lui $at, %hi(D_8012D190) # $at, 0x8013 +/* 0D2758 800D1B58 A423D190 */ sh $v1, %lo(D_8012D190)($at) +.L800D1B5C: +/* 0D275C 800D1B5C 3C138013 */ lui $s3, %hi(D_8012D22C) # $s3, 0x8013 +/* 0D2760 800D1B60 3C128013 */ lui $s2, %hi(D_8012D228) # $s2, 0x8013 +/* 0D2764 800D1B64 3C118013 */ lui $s1, %hi(D_8012D220) # $s1, 0x8013 +/* 0D2768 800D1B68 2631D220 */ addiu $s1, %lo(D_8012D220) # addiu $s1, $s1, -0x2de0 +/* 0D276C 800D1B6C 2652D228 */ addiu $s2, %lo(D_8012D228) # addiu $s2, $s2, -0x2dd8 +/* 0D2770 800D1B70 2673D22C */ addiu $s3, %lo(D_8012D22C) # addiu $s3, $s3, -0x2dd4 +/* 0D2774 800D1B74 2415000D */ li $s5, 13 +/* 0D2778 800D1B78 27B40044 */ addiu $s4, $sp, 0x44 +.L800D1B7C: +/* 0D277C 800D1B7C 8EE4000C */ lw $a0, 0xc($s7) +.L800D1B80: +/* 0D2780 800D1B80 02802825 */ move $a1, $s4 +/* 0D2784 800D1B84 0C0322EC */ jal osRecvMesg +/* 0D2788 800D1B88 24060001 */ li $a2, 1 +/* 0D278C 800D1B8C 8FAE0044 */ lw $t6, 0x44($sp) +/* 0D2790 800D1B90 95C30000 */ lhu $v1, ($t6) +/* 0D2794 800D1B94 10750005 */ beq $v1, $s5, .L800D1BAC +/* 0D2798 800D1B98 00000000 */ nop +/* 0D279C 800D1B9C 1076002A */ beq $v1, $s6, .L800D1C48 +/* 0D27A0 800D1BA0 00000000 */ nop +/* 0D27A4 800D1BA4 1000FFF6 */ b .L800D1B80 +/* 0D27A8 800D1BA8 8EE4000C */ lw $a0, 0xc($s7) +.L800D1BAC: +/* 0D27AC 800D1BAC 0C035824 */ jal func_800D6090 +/* 0D27B0 800D1BB0 00000000 */ nop +/* 0D27B4 800D1BB4 3C038013 */ lui $v1, %hi(D_8012FFFF) # $v1, 0x8013 +/* 0D27B8 800D1BB8 9463D190 */ lhu $v1, %lo(D_8012D190)($v1) +/* 0D27BC 800D1BBC 3C018013 */ lui $at, %hi(D_8012D190) # $at, 0x8013 +/* 0D27C0 800D1BC0 2463FFFF */ addiu $v1, %lo(D_8012FFFF) # addiu $v1, $v1, -1 +/* 0D27C4 800D1BC4 306FFFFF */ andi $t7, $v1, 0xffff +/* 0D27C8 800D1BC8 15E0000E */ bnez $t7, .L800D1C04 +/* 0D27CC 800D1BCC A42FD190 */ sh $t7, %lo(D_8012D190)($at) +/* 0D27D0 800D1BD0 0C035820 */ jal func_800D6080 +/* 0D27D4 800D1BD4 00000000 */ nop +/* 0D27D8 800D1BD8 8C580010 */ lw $t8, 0x10($v0) +/* 0D27DC 800D1BDC 00408025 */ move $s0, $v0 +/* 0D27E0 800D1BE0 00003025 */ move $a2, $zero +/* 0D27E4 800D1BE4 53000005 */ beql $t8, $zero, .L800D1BFC +/* 0D27E8 800D1BE8 96030002 */ lhu $v1, 2($s0) +/* 0D27EC 800D1BEC 8C440010 */ lw $a0, 0x10($v0) +/* 0D27F0 800D1BF0 0C03238C */ jal func_800C8E30 +/* 0D27F4 800D1BF4 8C450014 */ lw $a1, 0x14($v0) +/* 0D27F8 800D1BF8 96030002 */ lhu $v1, 2($s0) +.L800D1BFC: +/* 0D27FC 800D1BFC 3C018013 */ lui $at, %hi(D_8012D190) # $at, 0x8013 +/* 0D2800 800D1C00 A423D190 */ sh $v1, %lo(D_8012D190)($at) +.L800D1C04: +/* 0D2804 800D1C04 8E790000 */ lw $t9, ($s3) +/* 0D2808 800D1C08 8E500000 */ lw $s0, ($s2) +/* 0D280C 800D1C0C 27280001 */ addiu $t0, $t9, 1 +/* 0D2810 800D1C10 0C031E34 */ jal func_800C78D0 +/* 0D2814 800D1C14 AE680000 */ sw $t0, ($s3) +/* 0D2818 800D1C18 8E2D0004 */ lw $t5, 4($s1) +/* 0D281C 800D1C1C 00508023 */ subu $s0, $v0, $s0 +/* 0D2820 800D1C20 8E2C0000 */ lw $t4, ($s1) +/* 0D2824 800D1C24 020D7821 */ addu $t7, $s0, $t5 +/* 0D2828 800D1C28 240A0000 */ li $t2, 0 +/* 0D282C 800D1C2C 01ED082B */ sltu $at, $t7, $t5 +/* 0D2830 800D1C30 002A7021 */ addu $t6, $at, $t2 +/* 0D2834 800D1C34 01CC7021 */ addu $t6, $t6, $t4 +/* 0D2838 800D1C38 AE420000 */ sw $v0, ($s2) +/* 0D283C 800D1C3C AE2E0000 */ sw $t6, ($s1) +/* 0D2840 800D1C40 1000FFCE */ b .L800D1B7C +/* 0D2844 800D1C44 AE2F0004 */ sw $t7, 4($s1) +.L800D1C48: +/* 0D2848 800D1C48 0C0353D3 */ jal func_800D4F4C +/* 0D284C 800D1C4C 00000000 */ nop +/* 0D2850 800D1C50 1000FFCB */ b .L800D1B80 +/* 0D2854 800D1C54 8EE4000C */ lw $a0, 0xc($s7) +/* 0D2858 800D1C58 00000000 */ nop +/* 0D285C 800D1C5C 00000000 */ nop +/* 0D2860 800D1C60 00000000 */ nop +/* 0D2864 800D1C64 00000000 */ nop +/* 0D2868 800D1C68 00000000 */ nop +/* 0D286C 800D1C6C 00000000 */ nop +/* 0D2870 800D1C70 8FBF0034 */ lw $ra, 0x34($sp) +/* 0D2874 800D1C74 8FB00014 */ lw $s0, 0x14($sp) +/* 0D2878 800D1C78 8FB10018 */ lw $s1, 0x18($sp) +/* 0D287C 800D1C7C 8FB2001C */ lw $s2, 0x1c($sp) +/* 0D2880 800D1C80 8FB30020 */ lw $s3, 0x20($sp) +/* 0D2884 800D1C84 8FB40024 */ lw $s4, 0x24($sp) +/* 0D2888 800D1C88 8FB50028 */ lw $s5, 0x28($sp) +/* 0D288C 800D1C8C 8FB6002C */ lw $s6, 0x2c($sp) +/* 0D2890 800D1C90 8FB70030 */ lw $s7, 0x30($sp) +/* 0D2894 800D1C94 03E00008 */ jr $ra +/* 0D2898 800D1C98 27BD0050 */ addiu $sp, $sp, 0x50 + +/* 0D289C 800D1C9C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D2590/func_800D1990.s b/asm/non_matchings/unknown_0D2590/func_800D1990.s new file mode 100644 index 00000000..f410cd5d --- /dev/null +++ b/asm/non_matchings/unknown_0D2590/func_800D1990.s @@ -0,0 +1,98 @@ +glabel func_800D1990 +/* 0D2590 800D1990 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0D2594 800D1994 AFB00020 */ sw $s0, 0x20($sp) +/* 0D2598 800D1998 3C10800E */ lui $s0, %hi(D_800E38E0) # $s0, 0x800e +/* 0D259C 800D199C 261038E0 */ addiu $s0, %lo(D_800E38E0) # addiu $s0, $s0, 0x38e0 +/* 0D25A0 800D19A0 8E0E0000 */ lw $t6, ($s0) +/* 0D25A4 800D19A4 AFBF0024 */ sw $ra, 0x24($sp) +/* 0D25A8 800D19A8 AFA40030 */ sw $a0, 0x30($sp) +/* 0D25AC 800D19AC 55C00052 */ bnezl $t6, .L800D1AF8 +/* 0D25B0 800D19B0 8FBF0024 */ lw $ra, 0x24($sp) +/* 0D25B4 800D19B4 0C0353B0 */ jal func_800D4EC0 +/* 0D25B8 800D19B8 00000000 */ nop +/* 0D25BC 800D19BC 3C048013 */ lui $a0, %hi(D_8012D130) # $a0, 0x8013 +/* 0D25C0 800D19C0 3C058013 */ lui $a1, %hi(D_8012D148) # $a1, 0x8013 +/* 0D25C4 800D19C4 24A5D148 */ addiu $a1, %lo(D_8012D148) # addiu $a1, $a1, -0x2eb8 +/* 0D25C8 800D19C8 2484D130 */ addiu $a0, %lo(D_8012D130) # addiu $a0, $a0, -0x2ed0 +/* 0D25CC 800D19CC 0C032208 */ jal osCreateMesgQueue +/* 0D25D0 800D19D0 24060005 */ li $a2, 5 +/* 0D25D4 800D19D4 3C068013 */ lui $a2, %hi(D_8012D160) # $a2, 0x8013 +/* 0D25D8 800D19D8 3C078013 */ lui $a3, %hi(D_8012D178) # $a3, 0x8013 +/* 0D25DC 800D19DC 24E7D178 */ addiu $a3, %lo(D_8012D178) # addiu $a3, $a3, -0x2e88 +/* 0D25E0 800D19E0 24C6D160 */ addiu $a2, %lo(D_8012D160) # addiu $a2, $a2, -0x2ea0 +/* 0D25E4 800D19E4 240F000D */ li $t7, 13 +/* 0D25E8 800D19E8 2418000E */ li $t8, 14 +/* 0D25EC 800D19EC 3C058013 */ lui $a1, %hi(D_8012D130) # $a1, 0x8013 +/* 0D25F0 800D19F0 A4CF0000 */ sh $t7, ($a2) +/* 0D25F4 800D19F4 A0C00002 */ sb $zero, 2($a2) +/* 0D25F8 800D19F8 ACC00004 */ sw $zero, 4($a2) +/* 0D25FC 800D19FC A4F80000 */ sh $t8, ($a3) +/* 0D2600 800D1A00 A0E00002 */ sb $zero, 2($a3) +/* 0D2604 800D1A04 ACE00004 */ sw $zero, 4($a3) +/* 0D2608 800D1A08 24A5D130 */ addiu $a1, %lo(D_8012D130) # addiu $a1, $a1, -0x2ed0 +/* 0D260C 800D1A0C 0C0332EC */ jal osSetEventMsg +/* 0D2610 800D1A10 24040007 */ li $a0, 7 +/* 0D2614 800D1A14 3C078013 */ lui $a3, 0x8013 +/* 0D2618 800D1A18 3C058013 */ lui $a1, %hi(D_8012D130) # $a1, 0x8013 +/* 0D261C 800D1A1C 24E6D178 */ addiu $a2, $a3, -0x2e88 +/* 0D2620 800D1A20 24A5D130 */ addiu $a1, %lo(D_8012D130) # addiu $a1, $a1, -0x2ed0 +/* 0D2624 800D1A24 0C0332EC */ jal osSetEventMsg +/* 0D2628 800D1A28 24040003 */ li $a0, 3 +/* 0D262C 800D1A2C 2419FFFF */ li $t9, -1 +/* 0D2630 800D1A30 AFB90028 */ sw $t9, 0x28($sp) +/* 0D2634 800D1A34 0C034950 */ jal func_800D2540 +/* 0D2638 800D1A38 00002025 */ move $a0, $zero +/* 0D263C 800D1A3C 8FA80030 */ lw $t0, 0x30($sp) +/* 0D2640 800D1A40 00002025 */ move $a0, $zero +/* 0D2644 800D1A44 0048082A */ slt $at, $v0, $t0 +/* 0D2648 800D1A48 10200003 */ beqz $at, .L800D1A58 +/* 0D264C 800D1A4C 01002825 */ move $a1, $t0 +/* 0D2650 800D1A50 0C033210 */ jal func_800CC840 +/* 0D2654 800D1A54 AFA20028 */ sw $v0, 0x28($sp) +.L800D1A58: +/* 0D2658 800D1A58 0C034958 */ jal __osDisableInt +/* 0D265C 800D1A5C 00000000 */ nop +/* 0D2660 800D1A60 8FAB0030 */ lw $t3, 0x30($sp) +/* 0D2664 800D1A64 3C038013 */ lui $v1, %hi(D_8012D130) # $v1, 0x8013 +/* 0D2668 800D1A68 3C048013 */ lui $a0, %hi(D_8012CE80) # $a0, 0x8013 +/* 0D266C 800D1A6C 3C0A8013 */ lui $t2, %hi(D_8012D130) # $t2, 0x8013 +/* 0D2670 800D1A70 2484CE80 */ addiu $a0, %lo(D_8012CE80) # addiu $a0, $a0, -0x3180 +/* 0D2674 800D1A74 2463D130 */ addiu $v1, %lo(D_8012D130) # addiu $v1, $v1, -0x2ed0 +/* 0D2678 800D1A78 24090001 */ li $t1, 1 +/* 0D267C 800D1A7C 254AD130 */ addiu $t2, %lo(D_8012D130) # addiu $t2, $t2, -0x2ed0 +/* 0D2680 800D1A80 3C06800D */ lui $a2, %hi(D_800D1B08) # $a2, 0x800d +/* 0D2684 800D1A84 AFA2002C */ sw $v0, 0x2c($sp) +/* 0D2688 800D1A88 AE090000 */ sw $t1, ($s0) +/* 0D268C 800D1A8C AE040004 */ sw $a0, 4($s0) +/* 0D2690 800D1A90 AE030008 */ sw $v1, 8($s0) +/* 0D2694 800D1A94 AE03000C */ sw $v1, 0xc($s0) +/* 0D2698 800D1A98 AE000010 */ sw $zero, 0x10($s0) +/* 0D269C 800D1A9C AE000014 */ sw $zero, 0x14($s0) +/* 0D26A0 800D1AA0 AE000018 */ sw $zero, 0x18($s0) +/* 0D26A4 800D1AA4 24C61B08 */ addiu $a2, %lo(D_800D1B08) # addiu $a2, $a2, 0x1b08 +/* 0D26A8 800D1AA8 AFAA0010 */ sw $t2, 0x10($sp) +/* 0D26AC 800D1AAC 00002825 */ move $a1, $zero +/* 0D26B0 800D1AB0 02003825 */ move $a3, $s0 +/* 0D26B4 800D1AB4 0C032214 */ jal osCreateThread +/* 0D26B8 800D1AB8 AFAB0014 */ sw $t3, 0x14($sp) +/* 0D26BC 800D1ABC 0C034AC4 */ jal func_800D2B10 +/* 0D26C0 800D1AC0 00000000 */ nop +/* 0D26C4 800D1AC4 3C048013 */ lui $a0, %hi(D_8012CE80) # $a0, 0x8013 +/* 0D26C8 800D1AC8 0C032268 */ jal osStartThread +/* 0D26CC 800D1ACC 2484CE80 */ addiu $a0, %lo(D_8012CE80) # addiu $a0, $a0, -0x3180 +/* 0D26D0 800D1AD0 0C034960 */ jal __osRestoreInt +/* 0D26D4 800D1AD4 8FA4002C */ lw $a0, 0x2c($sp) +/* 0D26D8 800D1AD8 8FAC0028 */ lw $t4, 0x28($sp) +/* 0D26DC 800D1ADC 2401FFFF */ li $at, -1 +/* 0D26E0 800D1AE0 00002025 */ move $a0, $zero +/* 0D26E4 800D1AE4 51810004 */ beql $t4, $at, .L800D1AF8 +/* 0D26E8 800D1AE8 8FBF0024 */ lw $ra, 0x24($sp) +/* 0D26EC 800D1AEC 0C033210 */ jal func_800CC840 +/* 0D26F0 800D1AF0 01802825 */ move $a1, $t4 +/* 0D26F4 800D1AF4 8FBF0024 */ lw $ra, 0x24($sp) +.L800D1AF8: +/* 0D26F8 800D1AF8 8FB00020 */ lw $s0, 0x20($sp) +/* 0D26FC 800D1AFC 27BD0030 */ addiu $sp, $sp, 0x30 +/* 0D2700 800D1B00 03E00008 */ jr $ra +/* 0D2704 800D1B04 00000000 */ nop + diff --git a/asm/unknown_0D28A0.s b/asm/non_matchings/unknown_0D28A0/func_800D1CA0.s old mode 100755 new mode 100644 similarity index 88% rename from asm/unknown_0D28A0.s rename to asm/non_matchings/unknown_0D28A0/func_800D1CA0.s index 0f5fc74e..b0c9e81f --- a/asm/unknown_0D28A0.s +++ b/asm/non_matchings/unknown_0D28A0/func_800D1CA0.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800D1CA0 /* 0D28A0 800D1CA0 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0D28A4 800D1CA4 AFBF001C */ sw $ra, 0x1c($sp) @@ -36,3 +28,4 @@ glabel func_800D1CA0 /* 0D2908 800D1D08 00000000 */ nop /* 0D290C 800D1D0C 00000000 */ nop + diff --git a/asm/unknown_0D2910.s b/asm/non_matchings/unknown_0D2910/func_800D1D10.s old mode 100755 new mode 100644 similarity index 88% rename from asm/unknown_0D2910.s rename to asm/non_matchings/unknown_0D2910/func_800D1D10.s index 286fa16f..5502ac11 --- a/asm/unknown_0D2910.s +++ b/asm/non_matchings/unknown_0D2910/func_800D1D10.s @@ -1,11 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - glabel func_800D1D10 /* 0D2910 800D1D10 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0D2914 800D1D14 AFBF001C */ sw $ra, 0x1c($sp) @@ -37,3 +29,4 @@ glabel func_800D1D10 /* 0D2974 800D1D74 27BD0028 */ addiu $sp, $sp, 0x28 /* 0D2978 800D1D78 03E00008 */ jr $ra /* 0D297C 800D1D7C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D29F0/func_800D1DF0.s b/asm/non_matchings/unknown_0D29F0/func_800D1DF0.s new file mode 100644 index 00000000..ee61f215 --- /dev/null +++ b/asm/non_matchings/unknown_0D29F0/func_800D1DF0.s @@ -0,0 +1,37 @@ +glabel func_800D1DF0 +/* 0D29F0 800D1DF0 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0D29F4 800D1DF4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D29F8 800D1DF8 0C0358FC */ jal func_800D63F0 +/* 0D29FC 800D1DFC AFA40020 */ sw $a0, 0x20($sp) +/* 0D2A00 800D1E00 AFA2001C */ sw $v0, 0x1c($sp) +/* 0D2A04 800D1E04 8FAE001C */ lw $t6, 0x1c($sp) +/* 0D2A08 800D1E08 31CF0100 */ andi $t7, $t6, 0x100 +/* 0D2A0C 800D1E0C 11E00004 */ beqz $t7, .L800D1E20 +/* 0D2A10 800D1E10 00000000 */ nop +/* 0D2A14 800D1E14 24180001 */ li $t8, 1 +/* 0D2A18 800D1E18 10000002 */ b .L800D1E24 +/* 0D2A1C 800D1E1C AFB80018 */ sw $t8, 0x18($sp) +.L800D1E20: +/* 0D2A20 800D1E20 AFA00018 */ sw $zero, 0x18($sp) +.L800D1E24: +/* 0D2A24 800D1E24 8FB9001C */ lw $t9, 0x1c($sp) +/* 0D2A28 800D1E28 33280080 */ andi $t0, $t9, 0x80 +/* 0D2A2C 800D1E2C 1100000B */ beqz $t0, .L800D1E5C +/* 0D2A30 800D1E30 00000000 */ nop +/* 0D2A34 800D1E34 8FA90020 */ lw $t1, 0x20($sp) +/* 0D2A38 800D1E38 8FAB0018 */ lw $t3, 0x18($sp) +/* 0D2A3C 800D1E3C 2401FFFD */ li $at, -3 +/* 0D2A40 800D1E40 8D2A0004 */ lw $t2, 4($t1) +/* 0D2A44 800D1E44 014B6025 */ or $t4, $t2, $t3 +/* 0D2A48 800D1E48 AD2C0004 */ sw $t4, 4($t1) +/* 0D2A4C 800D1E4C 8FAD0020 */ lw $t5, 0x20($sp) +/* 0D2A50 800D1E50 8DAE0004 */ lw $t6, 4($t5) +/* 0D2A54 800D1E54 01C17824 */ and $t7, $t6, $at +/* 0D2A58 800D1E58 ADAF0004 */ sw $t7, 4($t5) +.L800D1E5C: +/* 0D2A5C 800D1E5C 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D2A60 800D1E60 8FA20018 */ lw $v0, 0x18($sp) +/* 0D2A64 800D1E64 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0D2A68 800D1E68 03E00008 */ jr $ra +/* 0D2A6C 800D1E6C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D29F0/func_800D1E70.s b/asm/non_matchings/unknown_0D29F0/func_800D1E70.s new file mode 100644 index 00000000..d8d9dfbf --- /dev/null +++ b/asm/non_matchings/unknown_0D29F0/func_800D1E70.s @@ -0,0 +1,18 @@ +glabel func_800D1E70 +/* 0D2A70 800D1E70 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0D2A74 800D1E74 AFBF001C */ sw $ra, 0x1c($sp) +/* 0D2A78 800D1E78 0C034958 */ jal __osDisableInt +/* 0D2A7C 800D1E7C AFB00018 */ sw $s0, 0x18($sp) +/* 0D2A80 800D1E80 3C0E800E */ lui $t6, %hi(D_800E4870) # $t6, 0x800e +/* 0D2A84 800D1E84 8DCE4870 */ lw $t6, %lo(D_800E4870)($t6) +/* 0D2A88 800D1E88 00408025 */ move $s0, $v0 +/* 0D2A8C 800D1E8C 02002025 */ move $a0, $s0 +/* 0D2A90 800D1E90 8DCF0004 */ lw $t7, 4($t6) +/* 0D2A94 800D1E94 0C034960 */ jal __osRestoreInt +/* 0D2A98 800D1E98 AFAF0020 */ sw $t7, 0x20($sp) +/* 0D2A9C 800D1E9C 8FBF001C */ lw $ra, 0x1c($sp) +/* 0D2AA0 800D1EA0 8FA20020 */ lw $v0, 0x20($sp) +/* 0D2AA4 800D1EA4 8FB00018 */ lw $s0, 0x18($sp) +/* 0D2AA8 800D1EA8 03E00008 */ jr $ra +/* 0D2AAC 800D1EAC 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_0D29F0/func_800D1EB0.s b/asm/non_matchings/unknown_0D29F0/func_800D1EB0.s new file mode 100644 index 00000000..9cc7a953 --- /dev/null +++ b/asm/non_matchings/unknown_0D29F0/func_800D1EB0.s @@ -0,0 +1,18 @@ +glabel func_800D1EB0 +/* 0D2AB0 800D1EB0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0D2AB4 800D1EB4 AFBF001C */ sw $ra, 0x1c($sp) +/* 0D2AB8 800D1EB8 0C034958 */ jal __osDisableInt +/* 0D2ABC 800D1EBC AFB00018 */ sw $s0, 0x18($sp) +/* 0D2AC0 800D1EC0 3C0E800E */ lui $t6, %hi(D_800E4874) # $t6, 0x800e +/* 0D2AC4 800D1EC4 8DCE4874 */ lw $t6, %lo(D_800E4874)($t6) +/* 0D2AC8 800D1EC8 00408025 */ move $s0, $v0 +/* 0D2ACC 800D1ECC 02002025 */ move $a0, $s0 +/* 0D2AD0 800D1ED0 8DCF0004 */ lw $t7, 4($t6) +/* 0D2AD4 800D1ED4 0C034960 */ jal __osRestoreInt +/* 0D2AD8 800D1ED8 AFAF0020 */ sw $t7, 0x20($sp) +/* 0D2ADC 800D1EDC 8FBF001C */ lw $ra, 0x1c($sp) +/* 0D2AE0 800D1EE0 8FA20020 */ lw $v0, 0x20($sp) +/* 0D2AE4 800D1EE4 8FB00018 */ lw $s0, 0x18($sp) +/* 0D2AE8 800D1EE8 03E00008 */ jr $ra +/* 0D2AEC 800D1EEC 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_0D29F0/func_800D1EF0.s b/asm/non_matchings/unknown_0D29F0/func_800D1EF0.s new file mode 100644 index 00000000..62f40338 --- /dev/null +++ b/asm/non_matchings/unknown_0D29F0/func_800D1EF0.s @@ -0,0 +1,80 @@ +glabel func_800D1EF0 +/* 0D2AF0 800D1EF0 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0D2AF4 800D1EF4 3C0E8013 */ lui $t6, %hi(D_8012D1A0) # $t6, 0x8013 +/* 0D2AF8 800D1EF8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D2AFC 800D1EFC AFA40020 */ sw $a0, 0x20($sp) +/* 0D2B00 800D1F00 25CED1A0 */ addiu $t6, %lo(D_8012D1A0) # addiu $t6, $t6, -0x2e60 +/* 0D2B04 800D1F04 AFAE001C */ sw $t6, 0x1c($sp) +/* 0D2B08 800D1F08 01C02825 */ move $a1, $t6 +/* 0D2B0C 800D1F0C 8FA40020 */ lw $a0, 0x20($sp) +/* 0D2B10 800D1F10 0C032768 */ jal bcopy +/* 0D2B14 800D1F14 24060040 */ li $a2, 64 +/* 0D2B18 800D1F18 8FAF001C */ lw $t7, 0x1c($sp) +/* 0D2B1C 800D1F1C 8DF80010 */ lw $t8, 0x10($t7) +/* 0D2B20 800D1F20 13000005 */ beqz $t8, .L800D1F38 +/* 0D2B24 800D1F24 00000000 */ nop +/* 0D2B28 800D1F28 0C03233C */ jal func_800C8CF0 +/* 0D2B2C 800D1F2C 03002025 */ move $a0, $t8 +/* 0D2B30 800D1F30 8FB9001C */ lw $t9, 0x1c($sp) +/* 0D2B34 800D1F34 AF220010 */ sw $v0, 0x10($t9) +.L800D1F38: +/* 0D2B38 800D1F38 8FA8001C */ lw $t0, 0x1c($sp) +/* 0D2B3C 800D1F3C 8D090018 */ lw $t1, 0x18($t0) +/* 0D2B40 800D1F40 11200005 */ beqz $t1, .L800D1F58 +/* 0D2B44 800D1F44 00000000 */ nop +/* 0D2B48 800D1F48 0C03233C */ jal func_800C8CF0 +/* 0D2B4C 800D1F4C 01202025 */ move $a0, $t1 +/* 0D2B50 800D1F50 8FAA001C */ lw $t2, 0x1c($sp) +/* 0D2B54 800D1F54 AD420018 */ sw $v0, 0x18($t2) +.L800D1F58: +/* 0D2B58 800D1F58 8FAB001C */ lw $t3, 0x1c($sp) +/* 0D2B5C 800D1F5C 8D6C0020 */ lw $t4, 0x20($t3) +/* 0D2B60 800D1F60 11800005 */ beqz $t4, .L800D1F78 +/* 0D2B64 800D1F64 00000000 */ nop +/* 0D2B68 800D1F68 0C03233C */ jal func_800C8CF0 +/* 0D2B6C 800D1F6C 01802025 */ move $a0, $t4 +/* 0D2B70 800D1F70 8FAD001C */ lw $t5, 0x1c($sp) +/* 0D2B74 800D1F74 ADA20020 */ sw $v0, 0x20($t5) +.L800D1F78: +/* 0D2B78 800D1F78 8FAE001C */ lw $t6, 0x1c($sp) +/* 0D2B7C 800D1F7C 8DCF0028 */ lw $t7, 0x28($t6) +/* 0D2B80 800D1F80 11E00005 */ beqz $t7, .L800D1F98 +/* 0D2B84 800D1F84 00000000 */ nop +/* 0D2B88 800D1F88 0C03233C */ jal func_800C8CF0 +/* 0D2B8C 800D1F8C 01E02025 */ move $a0, $t7 +/* 0D2B90 800D1F90 8FB8001C */ lw $t8, 0x1c($sp) +/* 0D2B94 800D1F94 AF020028 */ sw $v0, 0x28($t8) +.L800D1F98: +/* 0D2B98 800D1F98 8FB9001C */ lw $t9, 0x1c($sp) +/* 0D2B9C 800D1F9C 8F28002C */ lw $t0, 0x2c($t9) +/* 0D2BA0 800D1FA0 11000005 */ beqz $t0, .L800D1FB8 +/* 0D2BA4 800D1FA4 00000000 */ nop +/* 0D2BA8 800D1FA8 0C03233C */ jal func_800C8CF0 +/* 0D2BAC 800D1FAC 01002025 */ move $a0, $t0 +/* 0D2BB0 800D1FB0 8FA9001C */ lw $t1, 0x1c($sp) +/* 0D2BB4 800D1FB4 AD22002C */ sw $v0, 0x2c($t1) +.L800D1FB8: +/* 0D2BB8 800D1FB8 8FAA001C */ lw $t2, 0x1c($sp) +/* 0D2BBC 800D1FBC 8D4B0030 */ lw $t3, 0x30($t2) +/* 0D2BC0 800D1FC0 11600005 */ beqz $t3, .L800D1FD8 +/* 0D2BC4 800D1FC4 00000000 */ nop +/* 0D2BC8 800D1FC8 0C03233C */ jal func_800C8CF0 +/* 0D2BCC 800D1FCC 01602025 */ move $a0, $t3 +/* 0D2BD0 800D1FD0 8FAC001C */ lw $t4, 0x1c($sp) +/* 0D2BD4 800D1FD4 AD820030 */ sw $v0, 0x30($t4) +.L800D1FD8: +/* 0D2BD8 800D1FD8 8FAD001C */ lw $t5, 0x1c($sp) +/* 0D2BDC 800D1FDC 8DAE0038 */ lw $t6, 0x38($t5) +/* 0D2BE0 800D1FE0 11C00005 */ beqz $t6, .L800D1FF8 +/* 0D2BE4 800D1FE4 00000000 */ nop +/* 0D2BE8 800D1FE8 0C03233C */ jal func_800C8CF0 +/* 0D2BEC 800D1FEC 01C02025 */ move $a0, $t6 +/* 0D2BF0 800D1FF0 8FAF001C */ lw $t7, 0x1c($sp) +/* 0D2BF4 800D1FF4 ADE20038 */ sw $v0, 0x38($t7) +.L800D1FF8: +/* 0D2BF8 800D1FF8 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D2BFC 800D1FFC 8FA2001C */ lw $v0, 0x1c($sp) +/* 0D2C00 800D2000 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0D2C04 800D2004 03E00008 */ jr $ra +/* 0D2C08 800D2008 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D29F0/func_800D200C.s b/asm/non_matchings/unknown_0D29F0/func_800D200C.s new file mode 100644 index 00000000..160ad97e --- /dev/null +++ b/asm/non_matchings/unknown_0D29F0/func_800D200C.s @@ -0,0 +1,99 @@ +glabel func_800D200C +/* 0D2C0C 800D200C 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0D2C10 800D2010 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D2C14 800D2014 AFA40020 */ sw $a0, 0x20($sp) +/* 0D2C18 800D2018 0C0347BC */ jal func_800D1EF0 +/* 0D2C1C 800D201C 8FA40020 */ lw $a0, 0x20($sp) +/* 0D2C20 800D2020 AFA2001C */ sw $v0, 0x1c($sp) +/* 0D2C24 800D2024 8FAE001C */ lw $t6, 0x1c($sp) +/* 0D2C28 800D2028 8DCF0004 */ lw $t7, 4($t6) +/* 0D2C2C 800D202C 31F80001 */ andi $t8, $t7, 1 +/* 0D2C30 800D2030 1300000B */ beqz $t8, .L800D2060 +/* 0D2C34 800D2034 00000000 */ nop +/* 0D2C38 800D2038 8DD90038 */ lw $t9, 0x38($t6) +/* 0D2C3C 800D203C 2401FFFE */ li $at, -2 +/* 0D2C40 800D2040 ADD90018 */ sw $t9, 0x18($t6) +/* 0D2C44 800D2044 8FA8001C */ lw $t0, 0x1c($sp) +/* 0D2C48 800D2048 8D09003C */ lw $t1, 0x3c($t0) +/* 0D2C4C 800D204C AD09001C */ sw $t1, 0x1c($t0) +/* 0D2C50 800D2050 8FAA0020 */ lw $t2, 0x20($sp) +/* 0D2C54 800D2054 8D4B0004 */ lw $t3, 4($t2) +/* 0D2C58 800D2058 01616024 */ and $t4, $t3, $at +/* 0D2C5C 800D205C AD4C0004 */ sw $t4, 4($t2) +.L800D2060: +/* 0D2C60 800D2060 8FA4001C */ lw $a0, 0x1c($sp) +/* 0D2C64 800D2064 0C03518C */ jal func_800D4630 +/* 0D2C68 800D2068 24050040 */ li $a1, 64 +/* 0D2C6C 800D206C 0C033490 */ jal func_800CD240 +/* 0D2C70 800D2070 24042B00 */ li $a0, 11008 +/* 0D2C74 800D2074 3C040400 */ lui $a0, (0x04001000 >> 16) # lui $a0, 0x400 +/* 0D2C78 800D2078 0C035900 */ jal func_800D6400 +/* 0D2C7C 800D207C 34841000 */ ori $a0, (0x04001000 & 0xFFFF) # ori $a0, $a0, 0x1000 +/* 0D2C80 800D2080 2401FFFF */ li $at, -1 +/* 0D2C84 800D2084 14410007 */ bne $v0, $at, .L800D20A4 +/* 0D2C88 800D2088 00000000 */ nop +.L800D208C: +/* 0D2C8C 800D208C 3C040400 */ lui $a0, (0x04001000 >> 16) # lui $a0, 0x400 +/* 0D2C90 800D2090 0C035900 */ jal func_800D6400 +/* 0D2C94 800D2094 34841000 */ ori $a0, (0x04001000 & 0xFFFF) # ori $a0, $a0, 0x1000 +/* 0D2C98 800D2098 2401FFFF */ li $at, -1 +/* 0D2C9C 800D209C 1041FFFB */ beq $v0, $at, .L800D208C +/* 0D2CA0 800D20A0 00000000 */ nop +.L800D20A4: +/* 0D2CA4 800D20A4 3C050400 */ lui $a1, (0x04000FC0 >> 16) # lui $a1, 0x400 +/* 0D2CA8 800D20A8 34A50FC0 */ ori $a1, (0x04000FC0 & 0xFFFF) # ori $a1, $a1, 0xfc0 +/* 0D2CAC 800D20AC 24040001 */ li $a0, 1 +/* 0D2CB0 800D20B0 8FA6001C */ lw $a2, 0x1c($sp) +/* 0D2CB4 800D20B4 0C035910 */ jal func_800D6440 +/* 0D2CB8 800D20B8 24070040 */ li $a3, 64 +/* 0D2CBC 800D20BC 2401FFFF */ li $at, -1 +/* 0D2CC0 800D20C0 1441000A */ bne $v0, $at, .L800D20EC +/* 0D2CC4 800D20C4 00000000 */ nop +.L800D20C8: +/* 0D2CC8 800D20C8 3C050400 */ lui $a1, (0x04000FC0 >> 16) # lui $a1, 0x400 +/* 0D2CCC 800D20CC 34A50FC0 */ ori $a1, (0x04000FC0 & 0xFFFF) # ori $a1, $a1, 0xfc0 +/* 0D2CD0 800D20D0 24040001 */ li $a0, 1 +/* 0D2CD4 800D20D4 8FA6001C */ lw $a2, 0x1c($sp) +/* 0D2CD8 800D20D8 0C035910 */ jal func_800D6440 +/* 0D2CDC 800D20DC 24070040 */ li $a3, 64 +/* 0D2CE0 800D20E0 2401FFFF */ li $at, -1 +/* 0D2CE4 800D20E4 1041FFF8 */ beq $v0, $at, .L800D20C8 +/* 0D2CE8 800D20E8 00000000 */ nop +.L800D20EC: +/* 0D2CEC 800D20EC 0C035934 */ jal func_800D64D0 +/* 0D2CF0 800D20F0 00000000 */ nop +/* 0D2CF4 800D20F4 10400005 */ beqz $v0, .L800D210C +/* 0D2CF8 800D20F8 00000000 */ nop +.L800D20FC: +/* 0D2CFC 800D20FC 0C035934 */ jal func_800D64D0 +/* 0D2D00 800D2100 00000000 */ nop +/* 0D2D04 800D2104 1440FFFD */ bnez $v0, .L800D20FC +/* 0D2D08 800D2108 00000000 */ nop +.L800D210C: +/* 0D2D0C 800D210C 8FAD001C */ lw $t5, 0x1c($sp) +/* 0D2D10 800D2110 3C050400 */ lui $a1, (0x04001000 >> 16) # lui $a1, 0x400 +/* 0D2D14 800D2114 34A51000 */ ori $a1, (0x04001000 & 0xFFFF) # ori $a1, $a1, 0x1000 +/* 0D2D18 800D2118 24040001 */ li $a0, 1 +/* 0D2D1C 800D211C 8DA60008 */ lw $a2, 8($t5) +/* 0D2D20 800D2120 0C035910 */ jal func_800D6440 +/* 0D2D24 800D2124 8DA7000C */ lw $a3, 0xc($t5) +/* 0D2D28 800D2128 2401FFFF */ li $at, -1 +/* 0D2D2C 800D212C 1441000B */ bne $v0, $at, .L800D215C +/* 0D2D30 800D2130 00000000 */ nop +.L800D2134: +/* 0D2D34 800D2134 8FAF001C */ lw $t7, 0x1c($sp) +/* 0D2D38 800D2138 3C050400 */ lui $a1, (0x04001000 >> 16) # lui $a1, 0x400 +/* 0D2D3C 800D213C 34A51000 */ ori $a1, (0x04001000 & 0xFFFF) # ori $a1, $a1, 0x1000 +/* 0D2D40 800D2140 24040001 */ li $a0, 1 +/* 0D2D44 800D2144 8DE60008 */ lw $a2, 8($t7) +/* 0D2D48 800D2148 0C035910 */ jal func_800D6440 +/* 0D2D4C 800D214C 8DE7000C */ lw $a3, 0xc($t7) +/* 0D2D50 800D2150 2401FFFF */ li $at, -1 +/* 0D2D54 800D2154 1041FFF7 */ beq $v0, $at, .L800D2134 +/* 0D2D58 800D2158 00000000 */ nop +.L800D215C: +/* 0D2D5C 800D215C 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D2D60 800D2160 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0D2D64 800D2164 03E00008 */ jr $ra +/* 0D2D68 800D2168 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D29F0/func_800D216C.s b/asm/non_matchings/unknown_0D29F0/func_800D216C.s new file mode 100644 index 00000000..fa5b76d7 --- /dev/null +++ b/asm/non_matchings/unknown_0D29F0/func_800D216C.s @@ -0,0 +1,21 @@ +glabel func_800D216C +/* 0D2D6C 800D216C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0D2D70 800D2170 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D2D74 800D2174 0C035934 */ jal func_800D64D0 +/* 0D2D78 800D2178 AFA40018 */ sw $a0, 0x18($sp) +/* 0D2D7C 800D217C 10400005 */ beqz $v0, .L800D2194 +/* 0D2D80 800D2180 00000000 */ nop +.L800D2184: +/* 0D2D84 800D2184 0C035934 */ jal func_800D64D0 +/* 0D2D88 800D2188 00000000 */ nop +/* 0D2D8C 800D218C 1440FFFD */ bnez $v0, .L800D2184 +/* 0D2D90 800D2190 00000000 */ nop +.L800D2194: +/* 0D2D94 800D2194 0C033490 */ jal func_800CD240 +/* 0D2D98 800D2198 24040125 */ li $a0, 293 +/* 0D2D9C 800D219C 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D2DA0 800D21A0 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0D2DA4 800D21A4 03E00008 */ jr $ra +/* 0D2DA8 800D21A8 00000000 */ nop + +/* 0D2DAC 800D21AC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D29F0/func_800D21B0.s b/asm/non_matchings/unknown_0D29F0/func_800D21B0.s new file mode 100644 index 00000000..9422b36d --- /dev/null +++ b/asm/non_matchings/unknown_0D29F0/func_800D21B0.s @@ -0,0 +1,39 @@ +glabel func_800D21B0 +/* 0D2DB0 800D21B0 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0D2DB4 800D21B4 AFBF001C */ sw $ra, 0x1c($sp) +/* 0D2DB8 800D21B8 0C034958 */ jal __osDisableInt +/* 0D2DBC 800D21BC AFB00018 */ sw $s0, 0x18($sp) +/* 0D2DC0 800D21C0 0C031E34 */ jal func_800C78D0 +/* 0D2DC4 800D21C4 00408025 */ move $s0, $v0 +/* 0D2DC8 800D21C8 AFA20034 */ sw $v0, 0x34($sp) +/* 0D2DCC 800D21CC 3C0F8013 */ lui $t7, %hi(D_8012D228) # $t7, 0x8013 +/* 0D2DD0 800D21D0 8DEFD228 */ lw $t7, %lo(D_8012D228)($t7) +/* 0D2DD4 800D21D4 8FAE0034 */ lw $t6, 0x34($sp) +/* 0D2DD8 800D21D8 3C088013 */ lui $t0, %hi(D_8012D220) # $t0, 0x8013 +/* 0D2DDC 800D21DC 3C098013 */ lui $t1, %hi(D_8012D224) # $t1, 0x8013 +/* 0D2DE0 800D21E0 8D29D224 */ lw $t1, %lo(D_8012D224)($t1) +/* 0D2DE4 800D21E4 8D08D220 */ lw $t0, %lo(D_8012D220)($t0) +/* 0D2DE8 800D21E8 01CFC023 */ subu $t8, $t6, $t7 +/* 0D2DEC 800D21EC AFB80030 */ sw $t8, 0x30($sp) +/* 0D2DF0 800D21F0 02002025 */ move $a0, $s0 +/* 0D2DF4 800D21F4 AFA9002C */ sw $t1, 0x2c($sp) +/* 0D2DF8 800D21F8 0C034960 */ jal __osRestoreInt +/* 0D2DFC 800D21FC AFA80028 */ sw $t0, 0x28($sp) +/* 0D2E00 800D2200 8FB90030 */ lw $t9, 0x30($sp) +/* 0D2E04 800D2204 8FAD002C */ lw $t5, 0x2c($sp) +/* 0D2E08 800D2208 8FBF001C */ lw $ra, 0x1c($sp) +/* 0D2E0C 800D220C 03205825 */ move $t3, $t9 +/* 0D2E10 800D2210 016D1821 */ addu $v1, $t3, $t5 +/* 0D2E14 800D2214 8FAC0028 */ lw $t4, 0x28($sp) +/* 0D2E18 800D2218 240A0000 */ li $t2, 0 +/* 0D2E1C 800D221C 006D082B */ sltu $at, $v1, $t5 +/* 0D2E20 800D2220 002A1021 */ addu $v0, $at, $t2 +/* 0D2E24 800D2224 8FB00018 */ lw $s0, 0x18($sp) +/* 0D2E28 800D2228 27BD0038 */ addiu $sp, $sp, 0x38 +/* 0D2E2C 800D222C 03E00008 */ jr $ra +/* 0D2E30 800D2230 004C1021 */ addu $v0, $v0, $t4 + +/* 0D2E34 800D2234 00000000 */ nop +/* 0D2E38 800D2238 00000000 */ nop +/* 0D2E3C 800D223C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D2E40/func_800D2240.s b/asm/non_matchings/unknown_0D2E40/func_800D2240.s new file mode 100644 index 00000000..dbc9db66 --- /dev/null +++ b/asm/non_matchings/unknown_0D2E40/func_800D2240.s @@ -0,0 +1,10 @@ +glabel func_800D2240 +/* 0D2E40 800D2240 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0D2E44 800D2244 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D2E48 800D2248 0C033490 */ jal func_800CD240 +/* 0D2E4C 800D224C 24040400 */ li $a0, 1024 +/* 0D2E50 800D2250 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D2E54 800D2254 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0D2E58 800D2258 03E00008 */ jr $ra +/* 0D2E5C 800D225C 00000000 */ nop + diff --git a/asm/unknown_0D2E40.s b/asm/non_matchings/unknown_0D2E40/func_800D2260.s old mode 100755 new mode 100644 similarity index 90% rename from asm/unknown_0D2E40.s rename to asm/non_matchings/unknown_0D2E40/func_800D2260.s index bc767f9a..9164b7ac --- a/asm/unknown_0D2E40.s +++ b/asm/non_matchings/unknown_0D2E40/func_800D2260.s @@ -1,21 +1,3 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_800D2240 -/* 0D2E40 800D2240 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0D2E44 800D2244 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D2E48 800D2248 0C033490 */ jal func_800CD240 -/* 0D2E4C 800D224C 24040400 */ li $a0, 1024 -/* 0D2E50 800D2250 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D2E54 800D2254 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0D2E58 800D2258 03E00008 */ jr $ra -/* 0D2E5C 800D225C 00000000 */ nop - glabel func_800D2260 /* 0D2E60 800D2260 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0D2E64 800D2264 AFBF001C */ sw $ra, 0x1c($sp) @@ -138,3 +120,4 @@ glabel func_800D2260 /* 0D3018 800D2418 00000000 */ nop /* 0D301C 800D241C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/D_800D25A0.s b/asm/non_matchings/unknown_0D3020/D_800D25A0.s new file mode 100644 index 00000000..e5e195de --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/D_800D25A0.s @@ -0,0 +1,65 @@ +glabel D_800D25A0 +/* 0D31A0 800D25A0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0D31A4 800D25A4 AFBF001C */ sw $ra, 0x1c($sp) +/* 0D31A8 800D25A8 AFA40028 */ sw $a0, 0x28($sp) +/* 0D31AC 800D25AC AFA5002C */ sw $a1, 0x2c($sp) +/* 0D31B0 800D25B0 AFA60030 */ sw $a2, 0x30($sp) +/* 0D31B4 800D25B4 AFA70034 */ sw $a3, 0x34($sp) +/* 0D31B8 800D25B8 AFB10018 */ sw $s1, 0x18($sp) +/* 0D31BC 800D25BC AFB00014 */ sw $s0, 0x14($sp) +/* 0D31C0 800D25C0 3C0EA460 */ lui $t6, %hi(D_A4600010) # $t6, 0xa460 +/* 0D31C4 800D25C4 8DD00010 */ lw $s0, %lo(D_A4600010)($t6) +/* 0D31C8 800D25C8 320F0003 */ andi $t7, $s0, 3 +/* 0D31CC 800D25CC 11E00006 */ beqz $t7, .L800D25E8 +/* 0D31D0 800D25D0 00000000 */ nop +.L800D25D4: +/* 0D31D4 800D25D4 3C18A460 */ lui $t8, %hi(D_A4600010) # $t8, 0xa460 +/* 0D31D8 800D25D8 8F100010 */ lw $s0, %lo(D_A4600010)($t8) +/* 0D31DC 800D25DC 32190003 */ andi $t9, $s0, 3 +/* 0D31E0 800D25E0 1720FFFC */ bnez $t9, .L800D25D4 +/* 0D31E4 800D25E4 00000000 */ nop +.L800D25E8: +/* 0D31E8 800D25E8 0C03233C */ jal func_800C8CF0 +/* 0D31EC 800D25EC 8FA40030 */ lw $a0, 0x30($sp) +/* 0D31F0 800D25F0 3C08A460 */ lui $t0, 0xa460 +/* 0D31F4 800D25F4 AD020000 */ sw $v0, ($t0) +/* 0D31F8 800D25F8 3C098000 */ lui $t1, %hi(D_80000308) # $t1, 0x8000 +/* 0D31FC 800D25FC 8D290308 */ lw $t1, %lo(D_80000308)($t1) +/* 0D3200 800D2600 8FAA002C */ lw $t2, 0x2c($sp) +/* 0D3204 800D2604 3C011FFF */ lui $at, (0x1FFFFFFF >> 16) # lui $at, 0x1fff +/* 0D3208 800D2608 3421FFFF */ ori $at, (0x1FFFFFFF & 0xFFFF) # ori $at, $at, 0xffff +/* 0D320C 800D260C 012A5825 */ or $t3, $t1, $t2 +/* 0D3210 800D2610 01616024 */ and $t4, $t3, $at +/* 0D3214 800D2614 3C0DA460 */ lui $t5, %hi(D_A4600004) # $t5, 0xa460 +/* 0D3218 800D2618 ADAC0004 */ sw $t4, %lo(D_A4600004)($t5) +/* 0D321C 800D261C 8FB10028 */ lw $s1, 0x28($sp) +/* 0D3220 800D2620 12200005 */ beqz $s1, .L800D2638 +/* 0D3224 800D2624 24010001 */ li $at, 1 +/* 0D3228 800D2628 12210008 */ beq $s1, $at, .L800D264C +/* 0D322C 800D262C 00000000 */ nop +/* 0D3230 800D2630 1000000B */ b .L800D2660 +/* 0D3234 800D2634 00000000 */ nop +.L800D2638: +/* 0D3238 800D2638 8FAE0034 */ lw $t6, 0x34($sp) +/* 0D323C 800D263C 3C18A460 */ lui $t8, %hi(D_A460000C) # $t8, 0xa460 +/* 0D3240 800D2640 25CFFFFF */ addiu $t7, $t6, -1 +/* 0D3244 800D2644 10000008 */ b .L800D2668 +/* 0D3248 800D2648 AF0F000C */ sw $t7, %lo(D_A460000C)($t8) +.L800D264C: +/* 0D324C 800D264C 8FB90034 */ lw $t9, 0x34($sp) +/* 0D3250 800D2650 3C09A460 */ lui $t1, %hi(D_A4600008) # $t1, 0xa460 +/* 0D3254 800D2654 2728FFFF */ addiu $t0, $t9, -1 +/* 0D3258 800D2658 10000003 */ b .L800D2668 +/* 0D325C 800D265C AD280008 */ sw $t0, %lo(D_A4600008)($t1) +.L800D2660: +/* 0D3260 800D2660 10000002 */ b .L800D266C +/* 0D3264 800D2664 2402FFFF */ li $v0, -1 +.L800D2668: +/* 0D3268 800D2668 00001025 */ move $v0, $zero +.L800D266C: +/* 0D326C 800D266C 8FBF001C */ lw $ra, 0x1c($sp) +/* 0D3270 800D2670 8FB00014 */ lw $s0, 0x14($sp) +/* 0D3274 800D2674 8FB10018 */ lw $s1, 0x18($sp) +/* 0D3278 800D2678 03E00008 */ jr $ra +/* 0D327C 800D267C 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_0D3020/D_800D2680.s b/asm/non_matchings/unknown_0D3020/D_800D2680.s new file mode 100644 index 00000000..19148984 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/D_800D2680.s @@ -0,0 +1,65 @@ +glabel D_800D2680 +/* 0D3280 800D2680 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0D3284 800D2684 AFBF001C */ sw $ra, 0x1c($sp) +/* 0D3288 800D2688 AFA40028 */ sw $a0, 0x28($sp) +/* 0D328C 800D268C AFA5002C */ sw $a1, 0x2c($sp) +/* 0D3290 800D2690 AFA60030 */ sw $a2, 0x30($sp) +/* 0D3294 800D2694 AFA70034 */ sw $a3, 0x34($sp) +/* 0D3298 800D2698 AFB10018 */ sw $s1, 0x18($sp) +/* 0D329C 800D269C AFB00014 */ sw $s0, 0x14($sp) +/* 0D32A0 800D26A0 3C0EA460 */ lui $t6, %hi(D_A4600010) # $t6, 0xa460 +/* 0D32A4 800D26A4 8DD00010 */ lw $s0, %lo(D_A4600010)($t6) +/* 0D32A8 800D26A8 320F0003 */ andi $t7, $s0, 3 +/* 0D32AC 800D26AC 11E00006 */ beqz $t7, .L800D26C8 +/* 0D32B0 800D26B0 00000000 */ nop +.L800D26B4: +/* 0D32B4 800D26B4 3C18A460 */ lui $t8, %hi(D_A4600010) # $t8, 0xa460 +/* 0D32B8 800D26B8 8F100010 */ lw $s0, %lo(D_A4600010)($t8) +/* 0D32BC 800D26BC 32190003 */ andi $t9, $s0, 3 +/* 0D32C0 800D26C0 1720FFFC */ bnez $t9, .L800D26B4 +/* 0D32C4 800D26C4 00000000 */ nop +.L800D26C8: +/* 0D32C8 800D26C8 0C03233C */ jal func_800C8CF0 +/* 0D32CC 800D26CC 8FA40034 */ lw $a0, 0x34($sp) +/* 0D32D0 800D26D0 3C08A460 */ lui $t0, 0xa460 +/* 0D32D4 800D26D4 AD020000 */ sw $v0, ($t0) +/* 0D32D8 800D26D8 8FA90028 */ lw $t1, 0x28($sp) +/* 0D32DC 800D26DC 8FAB0030 */ lw $t3, 0x30($sp) +/* 0D32E0 800D26E0 3C011FFF */ lui $at, (0x1FFFFFFF >> 16) # lui $at, 0x1fff +/* 0D32E4 800D26E4 8D2A000C */ lw $t2, 0xc($t1) +/* 0D32E8 800D26E8 3421FFFF */ ori $at, (0x1FFFFFFF & 0xFFFF) # ori $at, $at, 0xffff +/* 0D32EC 800D26EC 3C0EA460 */ lui $t6, %hi(D_A4600004) # $t6, 0xa460 +/* 0D32F0 800D26F0 014B6025 */ or $t4, $t2, $t3 +/* 0D32F4 800D26F4 01816824 */ and $t5, $t4, $at +/* 0D32F8 800D26F8 ADCD0004 */ sw $t5, %lo(D_A4600004)($t6) +/* 0D32FC 800D26FC 8FB1002C */ lw $s1, 0x2c($sp) +/* 0D3300 800D2700 12200005 */ beqz $s1, .L800D2718 +/* 0D3304 800D2704 24010001 */ li $at, 1 +/* 0D3308 800D2708 12210008 */ beq $s1, $at, .L800D272C +/* 0D330C 800D270C 00000000 */ nop +/* 0D3310 800D2710 1000000B */ b .L800D2740 +/* 0D3314 800D2714 00000000 */ nop +.L800D2718: +/* 0D3318 800D2718 8FAF0038 */ lw $t7, 0x38($sp) +/* 0D331C 800D271C 3C19A460 */ lui $t9, %hi(D_A460000C) # $t9, 0xa460 +/* 0D3320 800D2720 25F8FFFF */ addiu $t8, $t7, -1 +/* 0D3324 800D2724 10000008 */ b .L800D2748 +/* 0D3328 800D2728 AF38000C */ sw $t8, %lo(D_A460000C)($t9) +.L800D272C: +/* 0D332C 800D272C 8FA80038 */ lw $t0, 0x38($sp) +/* 0D3330 800D2730 3C0AA460 */ lui $t2, %hi(D_A4600008) # $t2, 0xa460 +/* 0D3334 800D2734 2509FFFF */ addiu $t1, $t0, -1 +/* 0D3338 800D2738 10000003 */ b .L800D2748 +/* 0D333C 800D273C AD490008 */ sw $t1, %lo(D_A4600008)($t2) +.L800D2740: +/* 0D3340 800D2740 10000002 */ b .L800D274C +/* 0D3344 800D2744 2402FFFF */ li $v0, -1 +.L800D2748: +/* 0D3348 800D2748 00001025 */ move $v0, $zero +.L800D274C: +/* 0D334C 800D274C 8FBF001C */ lw $ra, 0x1c($sp) +/* 0D3350 800D2750 8FB00014 */ lw $s0, 0x14($sp) +/* 0D3354 800D2754 8FB10018 */ lw $s1, 0x18($sp) +/* 0D3358 800D2758 03E00008 */ jr $ra +/* 0D335C 800D275C 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_0D3020/D_800D2760.s b/asm/non_matchings/unknown_0D3020/D_800D2760.s new file mode 100644 index 00000000..05d51b89 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/D_800D2760.s @@ -0,0 +1,248 @@ +glabel D_800D2760 +/* 0D3360 800D2760 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 0D3364 800D2764 AFA40040 */ sw $a0, 0x40($sp) +/* 0D3368 800D2768 8FAE0040 */ lw $t6, 0x40($sp) +/* 0D336C 800D276C AFBF001C */ sw $ra, 0x1c($sp) +/* 0D3370 800D2770 AFA00028 */ sw $zero, 0x28($sp) +/* 0D3374 800D2774 AFA0003C */ sw $zero, 0x3c($sp) +/* 0D3378 800D2778 AFA00030 */ sw $zero, 0x30($sp) +/* 0D337C 800D277C AFAE002C */ sw $t6, 0x2c($sp) +.L800D2780: +/* 0D3380 800D2780 8FAF002C */ lw $t7, 0x2c($sp) +/* 0D3384 800D2784 27A5003C */ addiu $a1, $sp, 0x3c +/* 0D3388 800D2788 24060001 */ li $a2, 1 +/* 0D338C 800D278C 0C0322EC */ jal osRecvMesg +/* 0D3390 800D2790 8DE40008 */ lw $a0, 8($t7) +/* 0D3394 800D2794 8FB8003C */ lw $t8, 0x3c($sp) +/* 0D3398 800D2798 8F190014 */ lw $t9, 0x14($t8) +/* 0D339C 800D279C 13200065 */ beqz $t9, .L800D2934 +/* 0D33A0 800D27A0 00000000 */ nop +/* 0D33A4 800D27A4 93280004 */ lbu $t0, 4($t9) +/* 0D33A8 800D27A8 24010002 */ li $at, 2 +/* 0D33AC 800D27AC 15010061 */ bne $t0, $at, .L800D2934 +/* 0D33B0 800D27B0 00000000 */ nop +/* 0D33B4 800D27B4 8F290014 */ lw $t1, 0x14($t9) +/* 0D33B8 800D27B8 11200003 */ beqz $t1, .L800D27C8 +/* 0D33BC 800D27BC 24010001 */ li $at, 1 +/* 0D33C0 800D27C0 1521005C */ bne $t1, $at, .L800D2934 +/* 0D33C4 800D27C4 00000000 */ nop +.L800D27C8: +/* 0D33C8 800D27C8 8FAA003C */ lw $t2, 0x3c($sp) +/* 0D33CC 800D27CC 2408FFFF */ li $t0, -1 +/* 0D33D0 800D27D0 24010003 */ li $at, 3 +/* 0D33D4 800D27D4 8D4B0014 */ lw $t3, 0x14($t2) +/* 0D33D8 800D27D8 256C0014 */ addiu $t4, $t3, 0x14 +/* 0D33DC 800D27DC AFAC0020 */ sw $t4, 0x20($sp) +/* 0D33E0 800D27E0 958D0006 */ lhu $t5, 6($t4) +/* 0D33E4 800D27E4 000D70C0 */ sll $t6, $t5, 3 +/* 0D33E8 800D27E8 01CD7021 */ addu $t6, $t6, $t5 +/* 0D33EC 800D27EC 000E7080 */ sll $t6, $t6, 2 +/* 0D33F0 800D27F0 018E7821 */ addu $t7, $t4, $t6 +/* 0D33F4 800D27F4 25F80018 */ addiu $t8, $t7, 0x18 +/* 0D33F8 800D27F8 AFB80024 */ sw $t8, 0x24($sp) +/* 0D33FC 800D27FC AD880008 */ sw $t0, 8($t4) +/* 0D3400 800D2800 8FB90020 */ lw $t9, 0x20($sp) +/* 0D3404 800D2804 97290004 */ lhu $t1, 4($t9) +/* 0D3408 800D2808 11210006 */ beq $t1, $at, .L800D2824 +/* 0D340C 800D280C 00000000 */ nop +/* 0D3410 800D2810 8FAA0024 */ lw $t2, 0x24($sp) +/* 0D3414 800D2814 8D4B0004 */ lw $t3, 4($t2) +/* 0D3418 800D2818 8D4D000C */ lw $t5, 0xc($t2) +/* 0D341C 800D281C 016D7023 */ subu $t6, $t3, $t5 +/* 0D3420 800D2820 AD4E0004 */ sw $t6, 4($t2) +.L800D2824: +/* 0D3424 800D2824 8FAF0020 */ lw $t7, 0x20($sp) +/* 0D3428 800D2828 24010002 */ li $at, 2 +/* 0D342C 800D282C 95F80004 */ lhu $t8, 4($t7) +/* 0D3430 800D2830 17010009 */ bne $t8, $at, .L800D2858 +/* 0D3434 800D2834 00000000 */ nop +/* 0D3438 800D2838 8FA8003C */ lw $t0, 0x3c($sp) +/* 0D343C 800D283C 8D0C0014 */ lw $t4, 0x14($t0) +/* 0D3440 800D2840 8D990014 */ lw $t9, 0x14($t4) +/* 0D3444 800D2844 17200004 */ bnez $t9, .L800D2858 +/* 0D3448 800D2848 00000000 */ nop +/* 0D344C 800D284C 24090001 */ li $t1, 1 +/* 0D3450 800D2850 10000002 */ b .L800D285C +/* 0D3454 800D2854 AFA90028 */ sw $t1, 0x28($sp) +.L800D2858: +/* 0D3458 800D2858 AFA00028 */ sw $zero, 0x28($sp) +.L800D285C: +/* 0D345C 800D285C 8FAB002C */ lw $t3, 0x2c($sp) +/* 0D3460 800D2860 27A50034 */ addiu $a1, $sp, 0x34 +/* 0D3464 800D2864 24060001 */ li $a2, 1 +/* 0D3468 800D2868 0C0322EC */ jal osRecvMesg +/* 0D346C 800D286C 8D640010 */ lw $a0, 0x10($t3) +/* 0D3470 800D2870 3C040010 */ lui $a0, (0x00100401 >> 16) # lui $a0, 0x10 +/* 0D3474 800D2874 0C035940 */ jal func_800D6500 +/* 0D3478 800D2878 34840401 */ ori $a0, (0x00100401 & 0xFFFF) # ori $a0, $a0, 0x401 +/* 0D347C 800D287C 8FAE0020 */ lw $t6, 0x20($sp) +/* 0D3480 800D2880 8FAD003C */ lw $t5, 0x3c($sp) +/* 0D3484 800D2884 3C018000 */ lui $at, 0x8000 +/* 0D3488 800D2888 8DC60010 */ lw $a2, 0x10($t6) +/* 0D348C 800D288C 3C050500 */ lui $a1, (0x05000510 >> 16) # lui $a1, 0x500 +/* 0D3490 800D2890 34A50510 */ ori $a1, (0x05000510 & 0xFFFF) # ori $a1, $a1, 0x510 +/* 0D3494 800D2894 00C15025 */ or $t2, $a2, $at +/* 0D3498 800D2898 01403025 */ move $a2, $t2 +/* 0D349C 800D289C 0C035958 */ jal func_800D6560 +/* 0D34A0 800D28A0 8DA40014 */ lw $a0, 0x14($t5) +.L800D28A4: +/* 0D34A4 800D28A4 8FAF002C */ lw $t7, 0x2c($sp) +/* 0D34A8 800D28A8 27A50038 */ addiu $a1, $sp, 0x38 +/* 0D34AC 800D28AC 24060001 */ li $a2, 1 +/* 0D34B0 800D28B0 0C0322EC */ jal osRecvMesg +/* 0D34B4 800D28B4 8DE4000C */ lw $a0, 0xc($t7) +/* 0D34B8 800D28B8 8FB8003C */ lw $t8, 0x3c($sp) +/* 0D34BC 800D28BC 00003025 */ move $a2, $zero +/* 0D34C0 800D28C0 8F040004 */ lw $a0, 4($t8) +/* 0D34C4 800D28C4 0C03238C */ jal func_800C8E30 +/* 0D34C8 800D28C8 03002825 */ move $a1, $t8 +/* 0D34CC 800D28CC 8FA80028 */ lw $t0, 0x28($sp) +/* 0D34D0 800D28D0 24010001 */ li $at, 1 +/* 0D34D4 800D28D4 15010008 */ bne $t0, $at, .L800D28F8 +/* 0D34D8 800D28D8 00000000 */ nop +/* 0D34DC 800D28DC 8FAC003C */ lw $t4, 0x3c($sp) +/* 0D34E0 800D28E0 8D990014 */ lw $t9, 0x14($t4) +/* 0D34E4 800D28E4 8F29002C */ lw $t1, 0x2c($t9) +/* 0D34E8 800D28E8 15200003 */ bnez $t1, .L800D28F8 +/* 0D34EC 800D28EC 00000000 */ nop +/* 0D34F0 800D28F0 1000FFEC */ b .L800D28A4 +/* 0D34F4 800D28F4 AFA00028 */ sw $zero, 0x28($sp) +.L800D28F8: +/* 0D34F8 800D28F8 8FAB002C */ lw $t3, 0x2c($sp) +/* 0D34FC 800D28FC 00002825 */ move $a1, $zero +/* 0D3500 800D2900 00003025 */ move $a2, $zero +/* 0D3504 800D2904 0C03238C */ jal func_800C8E30 +/* 0D3508 800D2908 8D640010 */ lw $a0, 0x10($t3) +/* 0D350C 800D290C 8FAD003C */ lw $t5, 0x3c($sp) +/* 0D3510 800D2910 24010001 */ li $at, 1 +/* 0D3514 800D2914 8DAE0014 */ lw $t6, 0x14($t5) +/* 0D3518 800D2918 95CA001A */ lhu $t2, 0x1a($t6) +/* 0D351C 800D291C 1541FF98 */ bne $t2, $at, .L800D2780 +/* 0D3520 800D2920 00000000 */ nop +/* 0D3524 800D2924 0C03596C */ jal func_800D65B0 +/* 0D3528 800D2928 00000000 */ nop +/* 0D352C 800D292C 1000FF94 */ b .L800D2780 +/* 0D3530 800D2930 00000000 */ nop +.L800D2934: +/* 0D3534 800D2934 8FAF003C */ lw $t7, 0x3c($sp) +/* 0D3538 800D2938 95F80000 */ lhu $t8, ($t7) +/* 0D353C 800D293C 2708FFF6 */ addiu $t0, $t8, -0xa +/* 0D3540 800D2940 2D010007 */ sltiu $at, $t0, 7 +/* 0D3544 800D2944 10200052 */ beqz $at, .L800D2A90 +/* 0D3548 800D2948 00000000 */ nop +/* 0D354C 800D294C 00084080 */ sll $t0, $t0, 2 +/* 0D3550 800D2950 3C01800F */ lui $at, 0x800f +/* 0D3554 800D2954 00280821 */ addu $at, $at, $t0 +/* 0D3558 800D2958 8C289650 */ lw $t0, -0x69b0($at) +/* 0D355C 800D295C 01000008 */ jr $t0 +/* 0D3560 800D2960 00000000 */ nop +/* 0D3564 800D2964 8FAC002C */ lw $t4, 0x2c($sp) +/* 0D3568 800D2968 27A50034 */ addiu $a1, $sp, 0x34 +/* 0D356C 800D296C 24060001 */ li $a2, 1 +/* 0D3570 800D2970 0C0322EC */ jal osRecvMesg +/* 0D3574 800D2974 8D840010 */ lw $a0, 0x10($t4) +/* 0D3578 800D2978 8FB9003C */ lw $t9, 0x3c($sp) +/* 0D357C 800D297C 8FA9002C */ lw $t1, 0x2c($sp) +/* 0D3580 800D2980 00002025 */ move $a0, $zero +/* 0D3584 800D2984 8F25000C */ lw $a1, 0xc($t9) +/* 0D3588 800D2988 8F260008 */ lw $a2, 8($t9) +/* 0D358C 800D298C 8F270010 */ lw $a3, 0x10($t9) +/* 0D3590 800D2990 8D390014 */ lw $t9, 0x14($t1) +/* 0D3594 800D2994 0320F809 */ jalr $t9 +/* 0D3598 800D2998 00000000 */ nop +/* 0D359C 800D299C 1000003E */ b .L800D2A98 +/* 0D35A0 800D29A0 AFA20030 */ sw $v0, 0x30($sp) +/* 0D35A4 800D29A4 8FAB002C */ lw $t3, 0x2c($sp) +/* 0D35A8 800D29A8 27A50034 */ addiu $a1, $sp, 0x34 +/* 0D35AC 800D29AC 24060001 */ li $a2, 1 +/* 0D35B0 800D29B0 0C0322EC */ jal osRecvMesg +/* 0D35B4 800D29B4 8D640010 */ lw $a0, 0x10($t3) +/* 0D35B8 800D29B8 8FAE002C */ lw $t6, 0x2c($sp) +/* 0D35BC 800D29BC 8FAD003C */ lw $t5, 0x3c($sp) +/* 0D35C0 800D29C0 24040001 */ li $a0, 1 +/* 0D35C4 800D29C4 8DD90014 */ lw $t9, 0x14($t6) +/* 0D35C8 800D29C8 8DA5000C */ lw $a1, 0xc($t5) +/* 0D35CC 800D29CC 8DA60008 */ lw $a2, 8($t5) +/* 0D35D0 800D29D0 0320F809 */ jalr $t9 +/* 0D35D4 800D29D4 8DA70010 */ lw $a3, 0x10($t5) +/* 0D35D8 800D29D8 1000002F */ b .L800D2A98 +/* 0D35DC 800D29DC AFA20030 */ sw $v0, 0x30($sp) +/* 0D35E0 800D29E0 8FAA002C */ lw $t2, 0x2c($sp) +/* 0D35E4 800D29E4 27A50034 */ addiu $a1, $sp, 0x34 +/* 0D35E8 800D29E8 24060001 */ li $a2, 1 +/* 0D35EC 800D29EC 0C0322EC */ jal osRecvMesg +/* 0D35F0 800D29F0 8D440010 */ lw $a0, 0x10($t2) +/* 0D35F4 800D29F4 8FAF003C */ lw $t7, 0x3c($sp) +/* 0D35F8 800D29F8 8FA8002C */ lw $t0, 0x2c($sp) +/* 0D35FC 800D29FC 00002825 */ move $a1, $zero +/* 0D3600 800D2A00 8DF80010 */ lw $t8, 0x10($t7) +/* 0D3604 800D2A04 8DE40014 */ lw $a0, 0x14($t7) +/* 0D3608 800D2A08 8DE6000C */ lw $a2, 0xc($t7) +/* 0D360C 800D2A0C 8DE70008 */ lw $a3, 8($t7) +/* 0D3610 800D2A10 AFB80010 */ sw $t8, 0x10($sp) +/* 0D3614 800D2A14 8D190018 */ lw $t9, 0x18($t0) +/* 0D3618 800D2A18 0320F809 */ jalr $t9 +/* 0D361C 800D2A1C 00000000 */ nop +/* 0D3620 800D2A20 1000001D */ b .L800D2A98 +/* 0D3624 800D2A24 AFA20030 */ sw $v0, 0x30($sp) +/* 0D3628 800D2A28 8FAC002C */ lw $t4, 0x2c($sp) +/* 0D362C 800D2A2C 27A50034 */ addiu $a1, $sp, 0x34 +/* 0D3630 800D2A30 24060001 */ li $a2, 1 +/* 0D3634 800D2A34 0C0322EC */ jal osRecvMesg +/* 0D3638 800D2A38 8D840010 */ lw $a0, 0x10($t4) +/* 0D363C 800D2A3C 8FA9003C */ lw $t1, 0x3c($sp) +/* 0D3640 800D2A40 8FAD002C */ lw $t5, 0x2c($sp) +/* 0D3644 800D2A44 24050001 */ li $a1, 1 +/* 0D3648 800D2A48 8D2B0010 */ lw $t3, 0x10($t1) +/* 0D364C 800D2A4C 8D240014 */ lw $a0, 0x14($t1) +/* 0D3650 800D2A50 8D26000C */ lw $a2, 0xc($t1) +/* 0D3654 800D2A54 8D270008 */ lw $a3, 8($t1) +/* 0D3658 800D2A58 AFAB0010 */ sw $t3, 0x10($sp) +/* 0D365C 800D2A5C 8DB90018 */ lw $t9, 0x18($t5) +/* 0D3660 800D2A60 0320F809 */ jalr $t9 +/* 0D3664 800D2A64 00000000 */ nop +/* 0D3668 800D2A68 1000000B */ b .L800D2A98 +/* 0D366C 800D2A6C AFA20030 */ sw $v0, 0x30($sp) +/* 0D3670 800D2A70 8FAE003C */ lw $t6, 0x3c($sp) +/* 0D3674 800D2A74 00003025 */ move $a2, $zero +/* 0D3678 800D2A78 8DC40004 */ lw $a0, 4($t6) +/* 0D367C 800D2A7C 0C03238C */ jal func_800C8E30 +/* 0D3680 800D2A80 01C02825 */ move $a1, $t6 +/* 0D3684 800D2A84 240AFFFF */ li $t2, -1 +/* 0D3688 800D2A88 10000003 */ b .L800D2A98 +/* 0D368C 800D2A8C AFAA0030 */ sw $t2, 0x30($sp) +.L800D2A90: +/* 0D3690 800D2A90 240FFFFF */ li $t7, -1 +/* 0D3694 800D2A94 AFAF0030 */ sw $t7, 0x30($sp) +.L800D2A98: +/* 0D3698 800D2A98 8FB80030 */ lw $t8, 0x30($sp) +/* 0D369C 800D2A9C 1700FF38 */ bnez $t8, .L800D2780 +/* 0D36A0 800D2AA0 00000000 */ nop +/* 0D36A4 800D2AA4 8FA8002C */ lw $t0, 0x2c($sp) +/* 0D36A8 800D2AA8 27A50038 */ addiu $a1, $sp, 0x38 +/* 0D36AC 800D2AAC 24060001 */ li $a2, 1 +/* 0D36B0 800D2AB0 0C0322EC */ jal osRecvMesg +/* 0D36B4 800D2AB4 8D04000C */ lw $a0, 0xc($t0) +/* 0D36B8 800D2AB8 8FAC003C */ lw $t4, 0x3c($sp) +/* 0D36BC 800D2ABC 00003025 */ move $a2, $zero +/* 0D36C0 800D2AC0 8D840004 */ lw $a0, 4($t4) +/* 0D36C4 800D2AC4 0C03238C */ jal func_800C8E30 +/* 0D36C8 800D2AC8 01802825 */ move $a1, $t4 +/* 0D36CC 800D2ACC 8FA9002C */ lw $t1, 0x2c($sp) +/* 0D36D0 800D2AD0 00002825 */ move $a1, $zero +/* 0D36D4 800D2AD4 00003025 */ move $a2, $zero +/* 0D36D8 800D2AD8 0C03238C */ jal func_800C8E30 +/* 0D36DC 800D2ADC 8D240010 */ lw $a0, 0x10($t1) +/* 0D36E0 800D2AE0 1000FF27 */ b .L800D2780 +/* 0D36E4 800D2AE4 00000000 */ nop +/* 0D36E8 800D2AE8 00000000 */ nop +/* 0D36EC 800D2AEC 00000000 */ nop +/* 0D36F0 800D2AF0 00000000 */ nop +/* 0D36F4 800D2AF4 00000000 */ nop +/* 0D36F8 800D2AF8 00000000 */ nop +/* 0D36FC 800D2AFC 00000000 */ nop +/* 0D3700 800D2B00 8FBF001C */ lw $ra, 0x1c($sp) +/* 0D3704 800D2B04 27BD0040 */ addiu $sp, $sp, 0x40 +/* 0D3708 800D2B08 03E00008 */ jr $ra +/* 0D370C 800D2B0C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/D_800D2CB0.s b/asm/non_matchings/unknown_0D3020/D_800D2CB0.s new file mode 100644 index 00000000..cc529de1 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/D_800D2CB0.s @@ -0,0 +1,5 @@ +glabel D_800D2CB0 +/* 0D38B0 800D2CB0 3C1A800D */ lui $k0, %hi(D_800D2CC0) # $k0, 0x800d +/* 0D38B4 800D2CB4 275A2CC0 */ addiu $k0, %lo(D_800D2CC0) # addiu $k0, $k0, 0x2cc0 +/* 0D38B8 800D2CB8 03400008 */ jr $k0 +/* 0D38BC 800D2CBC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/D_800D2CC0.s b/asm/non_matchings/unknown_0D3020/D_800D2CC0.s new file mode 100644 index 00000000..74688ddf --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/D_800D2CC0.s @@ -0,0 +1,351 @@ +glabel D_800D2CC0 +/* 0D38C0 800D2CC0 3C1A8013 */ lui $k0, %hi(D_8012D240) # $k0, 0x8013 +/* 0D38C4 800D2CC4 275AD240 */ addiu $k0, %lo(D_8012D240) # addiu $k0, $k0, -0x2dc0 +/* 0D38C8 800D2CC8 FF410020 */ sd $at, 0x20($k0) +/* 0D38CC 800D2CCC 401B6000 */ mfc0 $k1, $12 +/* 0D38D0 800D2CD0 AF5B0118 */ sw $k1, 0x118($k0) +/* 0D38D4 800D2CD4 2401FFFC */ li $at, -4 +/* 0D38D8 800D2CD8 0361D824 */ and $k1, $k1, $at +/* 0D38DC 800D2CDC 409B6000 */ mtc0 $k1, $12 +/* 0D38E0 800D2CE0 FF480058 */ sd $t0, 0x58($k0) +/* 0D38E4 800D2CE4 FF490060 */ sd $t1, 0x60($k0) +/* 0D38E8 800D2CE8 FF4A0068 */ sd $t2, 0x68($k0) +/* 0D38EC 800D2CEC AF400018 */ sw $zero, 0x18($k0) +/* 0D38F0 800D2CF0 40086800 */ mfc0 $t0, $13 +/* 0D38F4 800D2CF4 03404025 */ move $t0, $k0 +/* 0D38F8 800D2CF8 3C1A800E */ lui $k0, %hi(D_800E4890) # $k0, 0x800e +/* 0D38FC 800D2CFC 8F5A4890 */ lw $k0, %lo(D_800E4890)($k0) +/* 0D3900 800D2D00 DD090020 */ ld $t1, 0x20($t0) +/* 0D3904 800D2D04 FF490020 */ sd $t1, 0x20($k0) +/* 0D3908 800D2D08 DD090118 */ ld $t1, 0x118($t0) +/* 0D390C 800D2D0C FF490118 */ sd $t1, 0x118($k0) +/* 0D3910 800D2D10 DD090058 */ ld $t1, 0x58($t0) +/* 0D3914 800D2D14 FF490058 */ sd $t1, 0x58($k0) +/* 0D3918 800D2D18 DD090060 */ ld $t1, 0x60($t0) +/* 0D391C 800D2D1C FF490060 */ sd $t1, 0x60($k0) +/* 0D3920 800D2D20 DD090068 */ ld $t1, 0x68($t0) +/* 0D3924 800D2D24 FF490068 */ sd $t1, 0x68($k0) +/* 0D3928 800D2D28 8F5B0118 */ lw $k1, 0x118($k0) +/* 0D392C 800D2D2C 00004012 */ mflo $t0 +/* 0D3930 800D2D30 FF480108 */ sd $t0, 0x108($k0) +/* 0D3934 800D2D34 00004010 */ mfhi $t0 +/* 0D3938 800D2D38 3369FF00 */ andi $t1, $k1, 0xff00 +/* 0D393C 800D2D3C FF420028 */ sd $v0, 0x28($k0) +/* 0D3940 800D2D40 FF430030 */ sd $v1, 0x30($k0) +/* 0D3944 800D2D44 FF440038 */ sd $a0, 0x38($k0) +/* 0D3948 800D2D48 FF450040 */ sd $a1, 0x40($k0) +/* 0D394C 800D2D4C FF460048 */ sd $a2, 0x48($k0) +/* 0D3950 800D2D50 FF470050 */ sd $a3, 0x50($k0) +/* 0D3954 800D2D54 FF4B0070 */ sd $t3, 0x70($k0) +/* 0D3958 800D2D58 FF4C0078 */ sd $t4, 0x78($k0) +/* 0D395C 800D2D5C FF4D0080 */ sd $t5, 0x80($k0) +/* 0D3960 800D2D60 FF4E0088 */ sd $t6, 0x88($k0) +/* 0D3964 800D2D64 FF4F0090 */ sd $t7, 0x90($k0) +/* 0D3968 800D2D68 FF500098 */ sd $s0, 0x98($k0) +/* 0D396C 800D2D6C FF5100A0 */ sd $s1, 0xa0($k0) +/* 0D3970 800D2D70 FF5200A8 */ sd $s2, 0xa8($k0) +/* 0D3974 800D2D74 FF5300B0 */ sd $s3, 0xb0($k0) +/* 0D3978 800D2D78 FF5400B8 */ sd $s4, 0xb8($k0) +/* 0D397C 800D2D7C FF5500C0 */ sd $s5, 0xc0($k0) +/* 0D3980 800D2D80 FF5600C8 */ sd $s6, 0xc8($k0) +/* 0D3984 800D2D84 FF5700D0 */ sd $s7, 0xd0($k0) +/* 0D3988 800D2D88 FF5800D8 */ sd $t8, 0xd8($k0) +/* 0D398C 800D2D8C FF5900E0 */ sd $t9, 0xe0($k0) +/* 0D3990 800D2D90 FF5C00E8 */ sd $gp, 0xe8($k0) +/* 0D3994 800D2D94 FF5D00F0 */ sd $sp, 0xf0($k0) +/* 0D3998 800D2D98 FF5E00F8 */ sd $fp, 0xf8($k0) +/* 0D399C 800D2D9C FF5F0100 */ sd $ra, 0x100($k0) +/* 0D39A0 800D2DA0 1120000D */ beqz $t1, .L800D2DD8 +/* 0D39A4 800D2DA4 FF480110 */ sd $t0, 0x110($k0) +/* 0D39A8 800D2DA8 3C08800E */ lui $t0, %hi(D_800E38AC) # $t0, 0x800e +/* 0D39AC 800D2DAC 250838AC */ addiu $t0, %lo(D_800E38AC) # addiu $t0, $t0, 0x38ac +/* 0D39B0 800D2DB0 8D080000 */ lw $t0, ($t0) +/* 0D39B4 800D2DB4 2401FFFF */ li $at, -1 +/* 0D39B8 800D2DB8 01014026 */ xor $t0, $t0, $at +/* 0D39BC 800D2DBC 3C01FFFF */ lui $at, (0xFFFF00FF >> 16) # lui $at, 0xffff +/* 0D39C0 800D2DC0 3108FF00 */ andi $t0, $t0, 0xff00 +/* 0D39C4 800D2DC4 342100FF */ ori $at, (0xFFFF00FF & 0xFFFF) # ori $at, $at, 0xff +/* 0D39C8 800D2DC8 01284825 */ or $t1, $t1, $t0 +/* 0D39CC 800D2DCC 0361D824 */ and $k1, $k1, $at +/* 0D39D0 800D2DD0 0369D825 */ or $k1, $k1, $t1 +/* 0D39D4 800D2DD4 AF5B0118 */ sw $k1, 0x118($k0) +.L800D2DD8: +/* 0D39D8 800D2DD8 3C09A430 */ lui $t1, %hi(D_A430000C) # $t1, 0xa430 +/* 0D39DC 800D2DDC 8D29000C */ lw $t1, %lo(D_A430000C)($t1) +/* 0D39E0 800D2DE0 1120000B */ beqz $t1, .L800D2E10 +/* 0D39E4 800D2DE4 00000000 */ nop +/* 0D39E8 800D2DE8 3C08800E */ lui $t0, %hi(D_800E38AC) # $t0, 0x800e +/* 0D39EC 800D2DEC 250838AC */ addiu $t0, %lo(D_800E38AC) # addiu $t0, $t0, 0x38ac +/* 0D39F0 800D2DF0 8D080000 */ lw $t0, ($t0) +/* 0D39F4 800D2DF4 8F4C0128 */ lw $t4, 0x128($k0) +/* 0D39F8 800D2DF8 2401FFFF */ li $at, -1 +/* 0D39FC 800D2DFC 00084402 */ srl $t0, $t0, 0x10 +/* 0D3A00 800D2E00 01014026 */ xor $t0, $t0, $at +/* 0D3A04 800D2E04 3108003F */ andi $t0, $t0, 0x3f +/* 0D3A08 800D2E08 010C4024 */ and $t0, $t0, $t4 +/* 0D3A0C 800D2E0C 01284825 */ or $t1, $t1, $t0 +.L800D2E10: +/* 0D3A10 800D2E10 AF490128 */ sw $t1, 0x128($k0) +/* 0D3A14 800D2E14 40087000 */ mfc0 $t0, $14 +/* 0D3A18 800D2E18 AF48011C */ sw $t0, 0x11c($k0) +/* 0D3A1C 800D2E1C 8F480018 */ lw $t0, 0x18($k0) +/* 0D3A20 800D2E20 11000014 */ beqz $t0, .L800D2E74 +/* 0D3A24 800D2E24 00000000 */ nop +/* 0D3A28 800D2E28 4448F800 */ cfc1 $t0, $31 +/* 0D3A2C 800D2E2C 00000000 */ nop +/* 0D3A30 800D2E30 AF48012C */ sw $t0, 0x12c($k0) +/* 0D3A34 800D2E34 F7400130 */ sdc1 $f0, 0x130($k0) +/* 0D3A38 800D2E38 F7420138 */ sdc1 $f2, 0x138($k0) +/* 0D3A3C 800D2E3C F7440140 */ sdc1 $f4, 0x140($k0) +/* 0D3A40 800D2E40 F7460148 */ sdc1 $f6, 0x148($k0) +/* 0D3A44 800D2E44 F7480150 */ sdc1 $f8, 0x150($k0) +/* 0D3A48 800D2E48 F74A0158 */ sdc1 $f10, 0x158($k0) +/* 0D3A4C 800D2E4C F74C0160 */ sdc1 $f12, 0x160($k0) +/* 0D3A50 800D2E50 F74E0168 */ sdc1 $f14, 0x168($k0) +/* 0D3A54 800D2E54 F7500170 */ sdc1 $f16, 0x170($k0) +/* 0D3A58 800D2E58 F7520178 */ sdc1 $f18, 0x178($k0) +/* 0D3A5C 800D2E5C F7540180 */ sdc1 $f20, 0x180($k0) +/* 0D3A60 800D2E60 F7560188 */ sdc1 $f22, 0x188($k0) +/* 0D3A64 800D2E64 F7580190 */ sdc1 $f24, 0x190($k0) +/* 0D3A68 800D2E68 F75A0198 */ sdc1 $f26, 0x198($k0) +/* 0D3A6C 800D2E6C F75C01A0 */ sdc1 $f28, 0x1a0($k0) +/* 0D3A70 800D2E70 F75E01A8 */ sdc1 $f30, 0x1a8($k0) +.L800D2E74: +/* 0D3A74 800D2E74 40086800 */ mfc0 $t0, $13 +/* 0D3A78 800D2E78 AF480120 */ sw $t0, 0x120($k0) +/* 0D3A7C 800D2E7C 24090002 */ li $t1, 2 +/* 0D3A80 800D2E80 A7490010 */ sh $t1, 0x10($k0) +/* 0D3A84 800D2E84 3109007C */ andi $t1, $t0, 0x7c +/* 0D3A88 800D2E88 240A0024 */ li $t2, 36 +/* 0D3A8C 800D2E8C 112A00B0 */ beq $t1, $t2, .L800D3150 +/* 0D3A90 800D2E90 00000000 */ nop +/* 0D3A94 800D2E94 240A002C */ li $t2, 44 +/* 0D3A98 800D2E98 112A00FF */ beq $t1, $t2, .L800D3298 +/* 0D3A9C 800D2E9C 00000000 */ nop +/* 0D3AA0 800D2EA0 240A0000 */ li $t2, 0 +/* 0D3AA4 800D2EA4 152A00C3 */ bne $t1, $t2, .L800D31B4 +/* 0D3AA8 800D2EA8 00000000 */ nop +/* 0D3AAC 800D2EAC 03688024 */ and $s0, $k1, $t0 +.L800D2EB0: +/* 0D3AB0 800D2EB0 3209FF00 */ andi $t1, $s0, 0xff00 +/* 0D3AB4 800D2EB4 00095302 */ srl $t2, $t1, 0xc +/* 0D3AB8 800D2EB8 15400003 */ bnez $t2, .L800D2EC8 +/* 0D3ABC 800D2EBC 00000000 */ nop +/* 0D3AC0 800D2EC0 00095202 */ srl $t2, $t1, 8 +/* 0D3AC4 800D2EC4 214A0010 */ addi $t2, $t2, 0x10 +.L800D2EC8: +/* 0D3AC8 800D2EC8 3C01800F */ lui $at, 0x800f +/* 0D3ACC 800D2ECC 002A0821 */ addu $at, $at, $t2 +/* 0D3AD0 800D2ED0 902A9670 */ lbu $t2, -0x6990($at) +/* 0D3AD4 800D2ED4 3C01800F */ lui $at, 0x800f +/* 0D3AD8 800D2ED8 002A0821 */ addu $at, $at, $t2 +/* 0D3ADC 800D2EDC 8C2A9690 */ lw $t2, -0x6970($at) +/* 0D3AE0 800D2EE0 01400008 */ jr $t2 +/* 0D3AE4 800D2EE4 00000000 */ nop +/* 0D3AE8 800D2EE8 2401DFFF */ li $at, -8193 +/* 0D3AEC 800D2EEC 1000FFF0 */ b .L800D2EB0 +/* 0D3AF0 800D2EF0 02018024 */ and $s0, $s0, $at +/* 0D3AF4 800D2EF4 2401BFFF */ li $at, -16385 +/* 0D3AF8 800D2EF8 1000FFED */ b .L800D2EB0 +/* 0D3AFC 800D2EFC 02018024 */ and $s0, $s0, $at +/* 0D3B00 800D2F00 40095800 */ mfc0 $t1, $11 +/* 0D3B04 800D2F04 40895800 */ mtc0 $t1, $11 +/* 0D3B08 800D2F08 0C034C79 */ jal func_800D31E4 +/* 0D3B0C 800D2F0C 24040018 */ li $a0, 24 +/* 0D3B10 800D2F10 3C01FFFF */ lui $at, (0xFFFF7FFF >> 16) # lui $at, 0xffff +/* 0D3B14 800D2F14 34217FFF */ ori $at, (0xFFFF7FFF & 0xFFFF) # ori $at, $at, 0x7fff +/* 0D3B18 800D2F18 1000FFE5 */ b .L800D2EB0 +/* 0D3B1C 800D2F1C 02018024 */ and $s0, $s0, $at +/* 0D3B20 800D2F20 2401F7FF */ li $at, -2049 +/* 0D3B24 800D2F24 02018024 */ and $s0, $s0, $at +/* 0D3B28 800D2F28 240A0004 */ li $t2, 4 +/* 0D3B2C 800D2F2C 3C01800E */ lui $at, 0x800e +/* 0D3B30 800D2F30 002A0821 */ addu $at, $at, $t2 +/* 0D3B34 800D2F34 8C2A48A0 */ lw $t2, 0x48a0($at) +/* 0D3B38 800D2F38 3C1D8013 */ lui $sp, %hi(D_8012AAE0) # $sp, 0x8013 +/* 0D3B3C 800D2F3C 27BDAAE0 */ addiu $sp, %lo(D_8012AAE0) # addiu $sp, $sp, -0x5520 +/* 0D3B40 800D2F40 24040010 */ li $a0, 16 +/* 0D3B44 800D2F44 11400007 */ beqz $t2, .L800D2F64 +/* 0D3B48 800D2F48 27BD0FF0 */ addiu $sp, $sp, 0xff0 +/* 0D3B4C 800D2F4C 0140F809 */ jalr $t2 +/* 0D3B50 800D2F50 00000000 */ nop +/* 0D3B54 800D2F54 10400003 */ beqz $v0, .L800D2F64 +/* 0D3B58 800D2F58 00000000 */ nop +/* 0D3B5C 800D2F5C 10000082 */ b .L800D3168 +/* 0D3B60 800D2F60 00000000 */ nop +.L800D2F64: +/* 0D3B64 800D2F64 0C034C79 */ jal func_800D31E4 +/* 0D3B68 800D2F68 00000000 */ nop +/* 0D3B6C 800D2F6C 1000FFD0 */ b .L800D2EB0 +/* 0D3B70 800D2F70 00000000 */ nop +/* 0D3B74 800D2F74 3C08800E */ lui $t0, %hi(D_800E38AC) # $t0, 0x800e +/* 0D3B78 800D2F78 250838AC */ addiu $t0, %lo(D_800E38AC) # addiu $t0, $t0, 0x38ac +/* 0D3B7C 800D2F7C 8D080000 */ lw $t0, ($t0) +/* 0D3B80 800D2F80 3C11A430 */ lui $s1, %hi(D_A4300008) # $s1, 0xa430 +/* 0D3B84 800D2F84 8E310008 */ lw $s1, %lo(D_A4300008)($s1) +/* 0D3B88 800D2F88 00084402 */ srl $t0, $t0, 0x10 +/* 0D3B8C 800D2F8C 02288824 */ and $s1, $s1, $t0 +/* 0D3B90 800D2F90 32290001 */ andi $t1, $s1, 1 +/* 0D3B94 800D2F94 11200013 */ beqz $t1, .L800D2FE4 +/* 0D3B98 800D2F98 00000000 */ nop +/* 0D3B9C 800D2F9C 3C0CA404 */ lui $t4, %hi(D_A4040010) # $t4, 0xa404 +/* 0D3BA0 800D2FA0 8D8C0010 */ lw $t4, %lo(D_A4040010)($t4) +/* 0D3BA4 800D2FA4 24090008 */ li $t1, 8 +/* 0D3BA8 800D2FA8 3C01A404 */ lui $at, %hi(D_A4040010) # $at, 0xa404 +/* 0D3BAC 800D2FAC 318C0300 */ andi $t4, $t4, 0x300 +/* 0D3BB0 800D2FB0 3231003E */ andi $s1, $s1, 0x3e +/* 0D3BB4 800D2FB4 11800007 */ beqz $t4, .L800D2FD4 +/* 0D3BB8 800D2FB8 AC290010 */ sw $t1, %lo(D_A4040010)($at) +/* 0D3BBC 800D2FBC 0C034C79 */ jal func_800D31E4 +/* 0D3BC0 800D2FC0 24040020 */ li $a0, 32 +/* 0D3BC4 800D2FC4 12200038 */ beqz $s1, .L800D30A8 +/* 0D3BC8 800D2FC8 00000000 */ nop +/* 0D3BCC 800D2FCC 10000005 */ b .L800D2FE4 +/* 0D3BD0 800D2FD0 00000000 */ nop +.L800D2FD4: +/* 0D3BD4 800D2FD4 0C034C79 */ jal func_800D31E4 +/* 0D3BD8 800D2FD8 24040058 */ li $a0, 88 +/* 0D3BDC 800D2FDC 12200032 */ beqz $s1, .L800D30A8 +/* 0D3BE0 800D2FE0 00000000 */ nop +.L800D2FE4: +/* 0D3BE4 800D2FE4 32290008 */ andi $t1, $s1, 8 +/* 0D3BE8 800D2FE8 11200007 */ beqz $t1, .L800D3008 +/* 0D3BEC 800D2FEC 3C01A440 */ lui $at, %hi(D_A4400010) # $at, 0xa440 +/* 0D3BF0 800D2FF0 32310037 */ andi $s1, $s1, 0x37 +/* 0D3BF4 800D2FF4 AC200010 */ sw $zero, %lo(D_A4400010)($at) +/* 0D3BF8 800D2FF8 0C034C79 */ jal func_800D31E4 +/* 0D3BFC 800D2FFC 24040038 */ li $a0, 56 +/* 0D3C00 800D3000 12200029 */ beqz $s1, .L800D30A8 +/* 0D3C04 800D3004 00000000 */ nop +.L800D3008: +/* 0D3C08 800D3008 32290004 */ andi $t1, $s1, 4 +/* 0D3C0C 800D300C 11200009 */ beqz $t1, .L800D3034 +/* 0D3C10 800D3010 00000000 */ nop +/* 0D3C14 800D3014 24090001 */ li $t1, 1 +/* 0D3C18 800D3018 3C01A450 */ lui $at, %hi(D_A450000C) # $at, 0xa450 +/* 0D3C1C 800D301C 3231003B */ andi $s1, $s1, 0x3b +/* 0D3C20 800D3020 AC29000C */ sw $t1, %lo(D_A450000C)($at) +/* 0D3C24 800D3024 0C034C79 */ jal func_800D31E4 +/* 0D3C28 800D3028 24040030 */ li $a0, 48 +/* 0D3C2C 800D302C 1220001E */ beqz $s1, .L800D30A8 +/* 0D3C30 800D3030 00000000 */ nop +.L800D3034: +/* 0D3C34 800D3034 32290002 */ andi $t1, $s1, 2 +/* 0D3C38 800D3038 11200007 */ beqz $t1, .L800D3058 +/* 0D3C3C 800D303C 3C01A480 */ lui $at, %hi(D_A4800018) # $at, 0xa480 +/* 0D3C40 800D3040 3231003D */ andi $s1, $s1, 0x3d +/* 0D3C44 800D3044 AC200018 */ sw $zero, %lo(D_A4800018)($at) +/* 0D3C48 800D3048 0C034C79 */ jal func_800D31E4 +/* 0D3C4C 800D304C 24040028 */ li $a0, 40 +/* 0D3C50 800D3050 12200015 */ beqz $s1, .L800D30A8 +/* 0D3C54 800D3054 00000000 */ nop +.L800D3058: +/* 0D3C58 800D3058 32290010 */ andi $t1, $s1, 0x10 +/* 0D3C5C 800D305C 11200009 */ beqz $t1, .L800D3084 +/* 0D3C60 800D3060 00000000 */ nop +/* 0D3C64 800D3064 24090002 */ li $t1, 2 +/* 0D3C68 800D3068 3C01A460 */ lui $at, %hi(D_A4600010) # $at, 0xa460 +/* 0D3C6C 800D306C 3231002F */ andi $s1, $s1, 0x2f +/* 0D3C70 800D3070 AC290010 */ sw $t1, %lo(D_A4600010)($at) +/* 0D3C74 800D3074 0C034C79 */ jal func_800D31E4 +/* 0D3C78 800D3078 24040040 */ li $a0, 64 +/* 0D3C7C 800D307C 1220000A */ beqz $s1, .L800D30A8 +/* 0D3C80 800D3080 00000000 */ nop +.L800D3084: +/* 0D3C84 800D3084 32290020 */ andi $t1, $s1, 0x20 +/* 0D3C88 800D3088 11200007 */ beqz $t1, .L800D30A8 +/* 0D3C8C 800D308C 00000000 */ nop +/* 0D3C90 800D3090 24090800 */ li $t1, 2048 +/* 0D3C94 800D3094 3C01A430 */ lui $at, 0xa430 +/* 0D3C98 800D3098 3231001F */ andi $s1, $s1, 0x1f +/* 0D3C9C 800D309C AC290000 */ sw $t1, ($at) +/* 0D3CA0 800D30A0 0C034C79 */ jal func_800D31E4 +/* 0D3CA4 800D30A4 24040048 */ li $a0, 72 +.L800D30A8: +/* 0D3CA8 800D30A8 2401FBFF */ li $at, -1025 +/* 0D3CAC 800D30AC 1000FF80 */ b .L800D2EB0 +/* 0D3CB0 800D30B0 02018024 */ and $s0, $s0, $at +/* 0D3CB4 800D30B4 8F5B0118 */ lw $k1, 0x118($k0) +/* 0D3CB8 800D30B8 2401EFFF */ li $at, -4097 +/* 0D3CBC 800D30BC 3C09800E */ lui $t1, %hi(D_800E38A8) # $t1, 0x800e +/* 0D3CC0 800D30C0 0361D824 */ and $k1, $k1, $at +/* 0D3CC4 800D30C4 AF5B0118 */ sw $k1, 0x118($k0) +/* 0D3CC8 800D30C8 252938A8 */ addiu $t1, %lo(D_800E38A8) # addiu $t1, $t1, 0x38a8 +/* 0D3CCC 800D30CC 8D2A0000 */ lw $t2, ($t1) +/* 0D3CD0 800D30D0 11400003 */ beqz $t2, .L800D30E0 +/* 0D3CD4 800D30D4 2401EFFF */ li $at, -4097 +/* 0D3CD8 800D30D8 10000023 */ b .L800D3168 +/* 0D3CDC 800D30DC 02018024 */ and $s0, $s0, $at +.L800D30E0: +/* 0D3CE0 800D30E0 240A0001 */ li $t2, 1 +/* 0D3CE4 800D30E4 AD2A0000 */ sw $t2, ($t1) +/* 0D3CE8 800D30E8 0C034C79 */ jal func_800D31E4 +/* 0D3CEC 800D30EC 24040070 */ li $a0, 112 +/* 0D3CF0 800D30F0 3C0A800E */ lui $t2, %hi(D_800E4888) # $t2, 0x800e +/* 0D3CF4 800D30F4 8D4A4888 */ lw $t2, %lo(D_800E4888)($t2) +/* 0D3CF8 800D30F8 2401EFFF */ li $at, -4097 +/* 0D3CFC 800D30FC 02018024 */ and $s0, $s0, $at +/* 0D3D00 800D3100 8D5B0118 */ lw $k1, 0x118($t2) +/* 0D3D04 800D3104 0361D824 */ and $k1, $k1, $at +/* 0D3D08 800D3108 10000017 */ b .L800D3168 +/* 0D3D0C 800D310C AD5B0118 */ sw $k1, 0x118($t2) +/* 0D3D10 800D3110 2401FDFF */ li $at, -513 +/* 0D3D14 800D3114 01014024 */ and $t0, $t0, $at +/* 0D3D18 800D3118 40886800 */ mtc0 $t0, $13 +/* 0D3D1C 800D311C 0C034C79 */ jal func_800D31E4 +/* 0D3D20 800D3120 24040008 */ li $a0, 8 +/* 0D3D24 800D3124 2401FDFF */ li $at, -513 +/* 0D3D28 800D3128 1000FF61 */ b .L800D2EB0 +/* 0D3D2C 800D312C 02018024 */ and $s0, $s0, $at +/* 0D3D30 800D3130 2401FEFF */ li $at, -257 +/* 0D3D34 800D3134 01014024 */ and $t0, $t0, $at +/* 0D3D38 800D3138 40886800 */ mtc0 $t0, $13 +/* 0D3D3C 800D313C 0C034C79 */ jal func_800D31E4 +/* 0D3D40 800D3140 24040000 */ li $a0, 0 +/* 0D3D44 800D3144 2401FEFF */ li $at, -257 +/* 0D3D48 800D3148 1000FF59 */ b .L800D2EB0 +/* 0D3D4C 800D314C 02018024 */ and $s0, $s0, $at +.L800D3150: +/* 0D3D50 800D3150 24090001 */ li $t1, 1 +/* 0D3D54 800D3154 A7490012 */ sh $t1, 0x12($k0) +/* 0D3D58 800D3158 0C034C79 */ jal func_800D31E4 +/* 0D3D5C 800D315C 24040050 */ li $a0, 80 +/* 0D3D60 800D3160 10000001 */ b .L800D3168 +/* 0D3D64 800D3164 00000000 */ nop +.L800D3168: +/* 0D3D68 800D3168 3C0A800E */ lui $t2, %hi(D_800E4888) # $t2, 0x800e +/* 0D3D6C 800D316C 8D4A4888 */ lw $t2, %lo(D_800E4888)($t2) +/* 0D3D70 800D3170 8F490004 */ lw $t1, 4($k0) +/* 0D3D74 800D3174 8D4B0004 */ lw $t3, 4($t2) +/* 0D3D78 800D3178 012B082A */ slt $at, $t1, $t3 +/* 0D3D7C 800D317C 10200007 */ beqz $at, .L800D319C +/* 0D3D80 800D3180 00000000 */ nop +/* 0D3D84 800D3184 3C04800E */ lui $a0, %hi(D_800E4888) # $a0, 0x800e +/* 0D3D88 800D3188 03402825 */ move $a1, $k0 +/* 0D3D8C 800D318C 0C034CF3 */ jal func_800D33CC +/* 0D3D90 800D3190 24844888 */ addiu $a0, %lo(D_800E4888) # addiu $a0, $a0, 0x4888 +/* 0D3D94 800D3194 08034D09 */ j func_800D3424 +/* 0D3D98 800D3198 00000000 */ nop + +.L800D319C: +/* 0D3D9C 800D319C 3C09800E */ lui $t1, %hi(D_800E4888) # $t1, 0x800e +/* 0D3DA0 800D31A0 25294888 */ addiu $t1, %lo(D_800E4888) # addiu $t1, $t1, 0x4888 +/* 0D3DA4 800D31A4 8D2A0000 */ lw $t2, ($t1) +/* 0D3DA8 800D31A8 AF4A0000 */ sw $t2, ($k0) +/* 0D3DAC 800D31AC 08034D09 */ j func_800D3424 +/* 0D3DB0 800D31B0 AD3A0000 */ sw $k0, ($t1) + +.L800D31B4: +/* 0D3DB4 800D31B4 3C01800E */ lui $at, %hi(D_800E4894) # $at, 0x800e +/* 0D3DB8 800D31B8 AC3A4894 */ sw $k0, %lo(D_800E4894)($at) +/* 0D3DBC 800D31BC 24090001 */ li $t1, 1 +/* 0D3DC0 800D31C0 A7490010 */ sh $t1, 0x10($k0) +/* 0D3DC4 800D31C4 24090002 */ li $t1, 2 +/* 0D3DC8 800D31C8 A7490012 */ sh $t1, 0x12($k0) +/* 0D3DCC 800D31CC 400A4000 */ mfc0 $t2, $8 +/* 0D3DD0 800D31D0 AF4A0124 */ sw $t2, 0x124($k0) +/* 0D3DD4 800D31D4 0C034C79 */ jal func_800D31E4 +/* 0D3DD8 800D31D8 24040060 */ li $a0, 96 +/* 0D3DDC 800D31DC 08034D09 */ j func_800D3424 +/* 0D3DE0 800D31E0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/D_800D35A0.s b/asm/non_matchings/unknown_0D3020/D_800D35A0.s new file mode 100644 index 00000000..c22a49fe --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/D_800D35A0.s @@ -0,0 +1,5 @@ +glabel D_800D35A0 +/* 0D41A0 800D35A0 0C035980 */ jal func_800D6600 +/* 0D41A4 800D35A4 00002025 */ move $a0, $zero +/* 0D41A8 800D35A8 00000000 */ nop +/* 0D41AC 800D35AC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/__osDisableInt.s b/asm/non_matchings/unknown_0D3020/__osDisableInt.s new file mode 100644 index 00000000..ab2e207f --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/__osDisableInt.s @@ -0,0 +1,10 @@ +glabel __osDisableInt +/* 0D3160 800D2560 40086000 */ mfc0 $t0, $12 +/* 0D3164 800D2564 2401FFFE */ li $at, -2 +/* 0D3168 800D2568 01014824 */ and $t1, $t0, $at +/* 0D316C 800D256C 40896000 */ mtc0 $t1, $12 +/* 0D3170 800D2570 31020001 */ andi $v0, $t0, 1 +/* 0D3174 800D2574 00000000 */ nop +/* 0D3178 800D2578 03E00008 */ jr $ra +/* 0D317C 800D257C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/__osEnqueueAndYield.s b/asm/non_matchings/unknown_0D3020/__osEnqueueAndYield.s new file mode 100644 index 00000000..56e610fe --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/__osEnqueueAndYield.s @@ -0,0 +1,70 @@ +glabel __osEnqueueAndYield +/* 0D3ECC 800D32CC 3C05800E */ lui $a1, %hi(D_800E4890) # $a1, 0x800e +/* 0D3ED0 800D32D0 8CA54890 */ lw $a1, %lo(D_800E4890)($a1) +/* 0D3ED4 800D32D4 40086000 */ mfc0 $t0, $12 +/* 0D3ED8 800D32D8 8CBB0018 */ lw $k1, 0x18($a1) +/* 0D3EDC 800D32DC 35080002 */ ori $t0, $t0, 2 +/* 0D3EE0 800D32E0 ACA80118 */ sw $t0, 0x118($a1) +/* 0D3EE4 800D32E4 FCB00098 */ sd $s0, 0x98($a1) +/* 0D3EE8 800D32E8 FCB100A0 */ sd $s1, 0xa0($a1) +/* 0D3EEC 800D32EC FCB200A8 */ sd $s2, 0xa8($a1) +/* 0D3EF0 800D32F0 FCB300B0 */ sd $s3, 0xb0($a1) +/* 0D3EF4 800D32F4 FCB400B8 */ sd $s4, 0xb8($a1) +/* 0D3EF8 800D32F8 FCB500C0 */ sd $s5, 0xc0($a1) +/* 0D3EFC 800D32FC FCB600C8 */ sd $s6, 0xc8($a1) +/* 0D3F00 800D3300 FCB700D0 */ sd $s7, 0xd0($a1) +/* 0D3F04 800D3304 FCBC00E8 */ sd $gp, 0xe8($a1) +/* 0D3F08 800D3308 FCBD00F0 */ sd $sp, 0xf0($a1) +/* 0D3F0C 800D330C FCBE00F8 */ sd $fp, 0xf8($a1) +/* 0D3F10 800D3310 FCBF0100 */ sd $ra, 0x100($a1) +/* 0D3F14 800D3314 13600009 */ beqz $k1, .L800D333C +/* 0D3F18 800D3318 ACBF011C */ sw $ra, 0x11c($a1) +/* 0D3F1C 800D331C 445BF800 */ cfc1 $k1, $31 +/* 0D3F20 800D3320 F4B40180 */ sdc1 $f20, 0x180($a1) +/* 0D3F24 800D3324 F4B60188 */ sdc1 $f22, 0x188($a1) +/* 0D3F28 800D3328 F4B80190 */ sdc1 $f24, 0x190($a1) +/* 0D3F2C 800D332C F4BA0198 */ sdc1 $f26, 0x198($a1) +/* 0D3F30 800D3330 F4BC01A0 */ sdc1 $f28, 0x1a0($a1) +/* 0D3F34 800D3334 F4BE01A8 */ sdc1 $f30, 0x1a8($a1) +/* 0D3F38 800D3338 ACBB012C */ sw $k1, 0x12c($a1) +.L800D333C: +/* 0D3F3C 800D333C 8CBB0118 */ lw $k1, 0x118($a1) +/* 0D3F40 800D3340 3369FF00 */ andi $t1, $k1, 0xff00 +/* 0D3F44 800D3344 1120000D */ beqz $t1, .L800D337C +/* 0D3F48 800D3348 00000000 */ nop +/* 0D3F4C 800D334C 3C08800E */ lui $t0, %hi(D_800E38AC) # $t0, 0x800e +/* 0D3F50 800D3350 250838AC */ addiu $t0, %lo(D_800E38AC) # addiu $t0, $t0, 0x38ac +/* 0D3F54 800D3354 8D080000 */ lw $t0, ($t0) +/* 0D3F58 800D3358 2401FFFF */ li $at, -1 +/* 0D3F5C 800D335C 01014026 */ xor $t0, $t0, $at +/* 0D3F60 800D3360 3C01FFFF */ lui $at, (0xFFFF00FF >> 16) # lui $at, 0xffff +/* 0D3F64 800D3364 3108FF00 */ andi $t0, $t0, 0xff00 +/* 0D3F68 800D3368 342100FF */ ori $at, (0xFFFF00FF & 0xFFFF) # ori $at, $at, 0xff +/* 0D3F6C 800D336C 01284825 */ or $t1, $t1, $t0 +/* 0D3F70 800D3370 0361D824 */ and $k1, $k1, $at +/* 0D3F74 800D3374 0369D825 */ or $k1, $k1, $t1 +/* 0D3F78 800D3378 ACBB0118 */ sw $k1, 0x118($a1) +.L800D337C: +/* 0D3F7C 800D337C 3C1BA430 */ lui $k1, %hi(D_A430000C) # $k1, 0xa430 +/* 0D3F80 800D3380 8F7B000C */ lw $k1, %lo(D_A430000C)($k1) +/* 0D3F84 800D3384 1360000B */ beqz $k1, .L800D33B4 +/* 0D3F88 800D3388 00000000 */ nop +/* 0D3F8C 800D338C 3C1A800E */ lui $k0, %hi(D_800E38AC) # $k0, 0x800e +/* 0D3F90 800D3390 275A38AC */ addiu $k0, %lo(D_800E38AC) # addiu $k0, $k0, 0x38ac +/* 0D3F94 800D3394 8F5A0000 */ lw $k0, ($k0) +/* 0D3F98 800D3398 8CA80128 */ lw $t0, 0x128($a1) +/* 0D3F9C 800D339C 2401FFFF */ li $at, -1 +/* 0D3FA0 800D33A0 001AD402 */ srl $k0, $k0, 0x10 +/* 0D3FA4 800D33A4 0341D026 */ xor $k0, $k0, $at +/* 0D3FA8 800D33A8 335A003F */ andi $k0, $k0, 0x3f +/* 0D3FAC 800D33AC 0348D024 */ and $k0, $k0, $t0 +/* 0D3FB0 800D33B0 037AD825 */ or $k1, $k1, $k0 +.L800D33B4: +/* 0D3FB4 800D33B4 10800003 */ beqz $a0, .L800D33C4 +/* 0D3FB8 800D33B8 ACBB0128 */ sw $k1, 0x128($a1) +/* 0D3FBC 800D33BC 0C034CF3 */ jal func_800D33CC +/* 0D3FC0 800D33C0 00000000 */ nop +.L800D33C4: +/* 0D3FC4 800D33C4 08034D09 */ j func_800D3424 +/* 0D3FC8 800D33C8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/__osPopThread.s b/asm/non_matchings/unknown_0D3020/__osPopThread.s new file mode 100644 index 00000000..868b19df --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/__osPopThread.s @@ -0,0 +1,6 @@ +glabel __osPopThread +/* 0D4014 800D3414 8C820000 */ lw $v0, ($a0) +/* 0D4018 800D3418 8C590000 */ lw $t9, ($v0) +/* 0D401C 800D341C 03E00008 */ jr $ra +/* 0D4020 800D3420 AC990000 */ sw $t9, ($a0) + diff --git a/asm/non_matchings/unknown_0D3020/__osRestoreInt.s b/asm/non_matchings/unknown_0D3020/__osRestoreInt.s new file mode 100644 index 00000000..e771b73d --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/__osRestoreInt.s @@ -0,0 +1,10 @@ +glabel __osRestoreInt +/* 0D3180 800D2580 40086000 */ mfc0 $t0, $12 +/* 0D3184 800D2584 01044025 */ or $t0, $t0, $a0 +/* 0D3188 800D2588 40886000 */ mtc0 $t0, $12 +/* 0D318C 800D258C 00000000 */ nop +/* 0D3190 800D2590 00000000 */ nop +/* 0D3194 800D2594 03E00008 */ jr $ra +/* 0D3198 800D2598 00000000 */ nop + +/* 0D319C 800D259C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/cosf.s b/asm/non_matchings/unknown_0D3020/cosf.s new file mode 100644 index 00000000..964b2c59 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/cosf.s @@ -0,0 +1,103 @@ +glabel cosf +/* 0D56B0 800D4AB0 E7AC0000 */ swc1 $f12, ($sp) +/* 0D56B4 800D4AB4 8FA20000 */ lw $v0, ($sp) +/* 0D56B8 800D4AB8 C7A60000 */ lwc1 $f6, ($sp) +/* 0D56BC 800D4ABC C7AA0000 */ lwc1 $f10, ($sp) +/* 0D56C0 800D4AC0 00027583 */ sra $t6, $v0, 0x16 +/* 0D56C4 800D4AC4 31CF01FF */ andi $t7, $t6, 0x1ff +/* 0D56C8 800D4AC8 29E10136 */ slti $at, $t7, 0x136 +/* 0D56CC 800D4ACC 50200049 */ beql $at, $zero, .L800D4BF4 +/* 0D56D0 800D4AD0 460A5032 */ c.eq.s $f10, $f10 +/* 0D56D4 800D4AD4 44802000 */ mtc1 $zero, $f4 +/* 0D56D8 800D4AD8 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 0D56DC 800D4ADC 44819800 */ mtc1 $at, $f19 +/* 0D56E0 800D4AE0 4606203C */ c.lt.s $f4, $f6 +/* 0D56E4 800D4AE4 C7A00000 */ lwc1 $f0, ($sp) +/* 0D56E8 800D4AE8 3C01800F */ lui $at, 0x800f +/* 0D56EC 800D4AEC 45020004 */ bc1fl .L800D4B00 +/* 0D56F0 800D4AF0 46000007 */ neg.s $f0, $f0 +/* 0D56F4 800D4AF4 10000002 */ b .L800D4B00 +/* 0D56F8 800D4AF8 46003006 */ mov.s $f0, $f6 +/* 0D56FC 800D4AFC 46000007 */ neg.s $f0, $f0 +.L800D4B00: +/* 0D5700 800D4B00 D42897E8 */ ldc1 $f8, -0x6818($at) +/* 0D5704 800D4B04 46000321 */ cvt.d.s $f12, $f0 +/* 0D5708 800D4B08 44809000 */ mtc1 $zero, $f18 +/* 0D570C 800D4B0C 46286282 */ mul.d $f10, $f12, $f8 +/* 0D5710 800D4B10 44802800 */ mtc1 $zero, $f5 +/* 0D5714 800D4B14 44802000 */ mtc1 $zero, $f4 +/* 0D5718 800D4B18 46325380 */ add.d $f14, $f10, $f18 +/* 0D571C 800D4B1C 462E203E */ c.le.d $f4, $f14 +/* 0D5720 800D4B20 00000000 */ nop +/* 0D5724 800D4B24 45020007 */ bc1fl .L800D4B44 +/* 0D5728 800D4B28 46327281 */ sub.d $f10, $f14, $f18 +/* 0D572C 800D4B2C 46327180 */ add.d $f6, $f14, $f18 +/* 0D5730 800D4B30 4620320D */ trunc.w.d $f8, $f6 +/* 0D5734 800D4B34 44024000 */ mfc1 $v0, $f8 +/* 0D5738 800D4B38 10000006 */ b .L800D4B54 +/* 0D573C 800D4B3C 44823000 */ mtc1 $v0, $f6 +/* 0D5740 800D4B40 46327281 */ sub.d $f10, $f14, $f18 +.L800D4B44: +/* 0D5744 800D4B44 4620510D */ trunc.w.d $f4, $f10 +/* 0D5748 800D4B48 44022000 */ mfc1 $v0, $f4 +/* 0D574C 800D4B4C 00000000 */ nop +/* 0D5750 800D4B50 44823000 */ mtc1 $v0, $f6 +.L800D4B54: +/* 0D5754 800D4B54 3C01800F */ lui $at, 0x800f +/* 0D5758 800D4B58 D42A97F0 */ ldc1 $f10, -0x6810($at) +/* 0D575C 800D4B5C 46803221 */ cvt.d.w $f8, $f6 +/* 0D5760 800D4B60 3C01800F */ lui $at, 0x800f +/* 0D5764 800D4B64 D42697F8 */ ldc1 $f6, -0x6808($at) +/* 0D5768 800D4B68 3C03800F */ lui $v1, %hi(D_800E97C0) # $v1, 0x800f +/* 0D576C 800D4B6C 246397C0 */ addiu $v1, %lo(D_800E97C0) # addiu $v1, $v1, -0x6840 +/* 0D5770 800D4B70 46324001 */ sub.d $f0, $f8, $f18 +/* 0D5774 800D4B74 30480001 */ andi $t0, $v0, 1 +/* 0D5778 800D4B78 462A0102 */ mul.d $f4, $f0, $f10 +/* 0D577C 800D4B7C D46A0020 */ ldc1 $f10, 0x20($v1) +/* 0D5780 800D4B80 46260202 */ mul.d $f8, $f0, $f6 +/* 0D5784 800D4B84 D4660018 */ ldc1 $f6, 0x18($v1) +/* 0D5788 800D4B88 46246081 */ sub.d $f2, $f12, $f4 +/* 0D578C 800D4B8C 46281081 */ sub.d $f2, $f2, $f8 +/* 0D5790 800D4B90 46221382 */ mul.d $f14, $f2, $f2 +/* 0D5794 800D4B94 00000000 */ nop +/* 0D5798 800D4B98 462E5102 */ mul.d $f4, $f10, $f14 +/* 0D579C 800D4B9C 46262200 */ add.d $f8, $f4, $f6 +/* 0D57A0 800D4BA0 D4640010 */ ldc1 $f4, 0x10($v1) +/* 0D57A4 800D4BA4 462E4282 */ mul.d $f10, $f8, $f14 +/* 0D57A8 800D4BA8 46245180 */ add.d $f6, $f10, $f4 +/* 0D57AC 800D4BAC D46A0008 */ ldc1 $f10, 8($v1) +/* 0D57B0 800D4BB0 462E3202 */ mul.d $f8, $f6, $f14 +/* 0D57B4 800D4BB4 15000007 */ bnez $t0, .L800D4BD4 +/* 0D57B8 800D4BB8 46285400 */ add.d $f16, $f10, $f8 +/* 0D57BC 800D4BBC 462E1102 */ mul.d $f4, $f2, $f14 +/* 0D57C0 800D4BC0 00000000 */ nop +/* 0D57C4 800D4BC4 46302182 */ mul.d $f6, $f4, $f16 +/* 0D57C8 800D4BC8 46223280 */ add.d $f10, $f6, $f2 +/* 0D57CC 800D4BCC 03E00008 */ jr $ra +/* 0D57D0 800D4BD0 46205020 */ cvt.s.d $f0, $f10 + +.L800D4BD4: +/* 0D57D4 800D4BD4 462E1202 */ mul.d $f8, $f2, $f14 +/* 0D57D8 800D4BD8 00000000 */ nop +/* 0D57DC 800D4BDC 46304102 */ mul.d $f4, $f8, $f16 +/* 0D57E0 800D4BE0 46222180 */ add.d $f6, $f4, $f2 +/* 0D57E4 800D4BE4 46203020 */ cvt.s.d $f0, $f6 +/* 0D57E8 800D4BE8 03E00008 */ jr $ra +/* 0D57EC 800D4BEC 46000007 */ neg.s $f0, $f0 + +/* 0D57F0 800D4BF0 460A5032 */ c.eq.s $f10, $f10 +.L800D4BF4: +/* 0D57F4 800D4BF4 3C01800F */ lui $at, 0x800f +/* 0D57F8 800D4BF8 45010004 */ bc1t .L800D4C0C +/* 0D57FC 800D4BFC 00000000 */ nop +/* 0D5800 800D4C00 3C01800F */ lui $at, 0x800f +/* 0D5804 800D4C04 03E00008 */ jr $ra +/* 0D5808 800D4C08 C42098C0 */ lwc1 $f0, -0x6740($at) + +.L800D4C0C: +/* 0D580C 800D4C0C C4209800 */ lwc1 $f0, -0x6800($at) +/* 0D5810 800D4C10 03E00008 */ jr $ra +/* 0D5814 800D4C14 00000000 */ nop + +/* 0D5818 800D4C18 00000000 */ nop +/* 0D581C 800D4C1C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D2420.s b/asm/non_matchings/unknown_0D3020/func_800D2420.s new file mode 100644 index 00000000..28de7bf4 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D2420.s @@ -0,0 +1,22 @@ +glabel func_800D2420 +/* 0D3020 800D2420 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0D3024 800D2424 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D3028 800D2428 0C034958 */ jal __osDisableInt +/* 0D302C 800D242C AFA40020 */ sw $a0, 0x20($sp) +/* 0D3030 800D2430 3C0F800E */ lui $t7, %hi(D_800E4874) # $t7, 0x800e +/* 0D3034 800D2434 8DEF4874 */ lw $t7, %lo(D_800E4874)($t7) +/* 0D3038 800D2438 8FAE0020 */ lw $t6, 0x20($sp) +/* 0D303C 800D243C AFA2001C */ sw $v0, 0x1c($sp) +/* 0D3040 800D2440 3C18800E */ lui $t8, %hi(D_800E4874) # $t8, 0x800e +/* 0D3044 800D2444 ADEE0004 */ sw $t6, 4($t7) +/* 0D3048 800D2448 8F184874 */ lw $t8, %lo(D_800E4874)($t8) +/* 0D304C 800D244C 97190000 */ lhu $t9, ($t8) +/* 0D3050 800D2450 37280010 */ ori $t0, $t9, 0x10 +/* 0D3054 800D2454 A7080000 */ sh $t0, ($t8) +/* 0D3058 800D2458 0C034960 */ jal __osRestoreInt +/* 0D305C 800D245C 8FA4001C */ lw $a0, 0x1c($sp) +/* 0D3060 800D2460 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D3064 800D2464 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0D3068 800D2468 03E00008 */ jr $ra +/* 0D306C 800D246C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/func_800D2470.s b/asm/non_matchings/unknown_0D3020/func_800D2470.s new file mode 100644 index 00000000..470ded43 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D2470.s @@ -0,0 +1,6 @@ +glabel func_800D2470 +/* 0D3070 800D2470 3C02800E */ lui $v0, 0x800e +/* 0D3074 800D2474 03E00008 */ jr $ra +/* 0D3078 800D2478 8C42488C */ lw $v0, 0x488c($v0) + +/* 0D307C 800D247C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D2480.s b/asm/non_matchings/unknown_0D3020/func_800D2480.s new file mode 100644 index 00000000..7f255f06 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D2480.s @@ -0,0 +1,53 @@ +glabel func_800D2480 +/* 0D3080 800D2480 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0D3084 800D2484 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D3088 800D2488 240E0001 */ li $t6, 1 +/* 0D308C 800D248C 3C01800E */ lui $at, %hi(D_800E4800) # $at, 0x800e +/* 0D3090 800D2490 3C048013 */ lui $a0, %hi(D_8012D1E8) # $a0, 0x8013 +/* 0D3094 800D2494 3C058013 */ lui $a1, %hi(D_8012D1E0) # $a1, 0x8013 +/* 0D3098 800D2498 AC2E4800 */ sw $t6, %lo(D_800E4800)($at) +/* 0D309C 800D249C 24A5D1E0 */ addiu $a1, %lo(D_8012D1E0) # addiu $a1, $a1, -0x2e20 +/* 0D30A0 800D24A0 2484D1E8 */ addiu $a0, %lo(D_8012D1E8) # addiu $a0, $a0, -0x2e18 +/* 0D30A4 800D24A4 0C032208 */ jal osCreateMesgQueue +/* 0D30A8 800D24A8 24060001 */ li $a2, 1 +/* 0D30AC 800D24AC 3C048013 */ lui $a0, %hi(D_8012D1E8) # $a0, 0x8013 +/* 0D30B0 800D24B0 2484D1E8 */ addiu $a0, %lo(D_8012D1E8) # addiu $a0, $a0, -0x2e18 +/* 0D30B4 800D24B4 00002825 */ move $a1, $zero +/* 0D30B8 800D24B8 0C03238C */ jal func_800C8E30 +/* 0D30BC 800D24BC 00003025 */ move $a2, $zero +/* 0D30C0 800D24C0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D30C4 800D24C4 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0D30C8 800D24C8 03E00008 */ jr $ra +/* 0D30CC 800D24CC 00000000 */ nop + +/* 0D30D0 800D24D0 3C0E800E */ lui $t6, %hi(D_800E4800) # $t6, 0x800e +/* 0D30D4 800D24D4 8DCE4800 */ lw $t6, %lo(D_800E4800)($t6) +/* 0D30D8 800D24D8 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0D30DC 800D24DC AFBF0014 */ sw $ra, 0x14($sp) +/* 0D30E0 800D24E0 15C00003 */ bnez $t6, .L800D24F0 +/* 0D30E4 800D24E4 00000000 */ nop +/* 0D30E8 800D24E8 0C034920 */ jal func_800D2480 +/* 0D30EC 800D24EC 00000000 */ nop +.L800D24F0: +/* 0D30F0 800D24F0 3C048013 */ lui $a0, %hi(D_8012D1E8) # $a0, 0x8013 +/* 0D30F4 800D24F4 2484D1E8 */ addiu $a0, %lo(D_8012D1E8) # addiu $a0, $a0, -0x2e18 +/* 0D30F8 800D24F8 27A5001C */ addiu $a1, $sp, 0x1c +/* 0D30FC 800D24FC 0C0322EC */ jal osRecvMesg +/* 0D3100 800D2500 24060001 */ li $a2, 1 +/* 0D3104 800D2504 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D3108 800D2508 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0D310C 800D250C 03E00008 */ jr $ra +/* 0D3110 800D2510 00000000 */ nop + +/* 0D3114 800D2514 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0D3118 800D2518 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D311C 800D251C 3C048013 */ lui $a0, %hi(D_8012D1E8) # $a0, 0x8013 +/* 0D3120 800D2520 2484D1E8 */ addiu $a0, %lo(D_8012D1E8) # addiu $a0, $a0, -0x2e18 +/* 0D3124 800D2524 00002825 */ move $a1, $zero +/* 0D3128 800D2528 0C03238C */ jal func_800C8E30 +/* 0D312C 800D252C 00003025 */ move $a2, $zero +/* 0D3130 800D2530 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D3134 800D2534 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0D3138 800D2538 03E00008 */ jr $ra +/* 0D313C 800D253C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/func_800D2540.s b/asm/non_matchings/unknown_0D3020/func_800D2540.s new file mode 100644 index 00000000..0cd8dc80 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D2540.s @@ -0,0 +1,11 @@ +glabel func_800D2540 +/* 0D3140 800D2540 14800003 */ bnez $a0, .L800D2550 +/* 0D3144 800D2544 00000000 */ nop +/* 0D3148 800D2548 3C04800E */ lui $a0, %hi(D_800E4890) # $a0, 0x800e +/* 0D314C 800D254C 8C844890 */ lw $a0, %lo(D_800E4890)($a0) +.L800D2550: +/* 0D3150 800D2550 03E00008 */ jr $ra +/* 0D3154 800D2554 8C820004 */ lw $v0, 4($a0) + +/* 0D3158 800D2558 00000000 */ nop +/* 0D315C 800D255C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D2B10.s b/asm/non_matchings/unknown_0D3020/func_800D2B10.s new file mode 100644 index 00000000..0e1c962f --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D2B10.s @@ -0,0 +1,91 @@ +glabel func_800D2B10 +/* 0D3710 800D2B10 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0D3714 800D2B14 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D3718 800D2B18 3C04800E */ lui $a0, %hi(D_800E4810) # $a0, 0x800e +/* 0D371C 800D2B1C 24844810 */ addiu $a0, %lo(D_800E4810) # addiu $a0, $a0, 0x4810 +/* 0D3720 800D2B20 0C034138 */ jal func_800D04E0 +/* 0D3724 800D2B24 24050060 */ li $a1, 96 +/* 0D3728 800D2B28 3C0E800E */ lui $t6, %hi(D_800E4810) # $t6, 0x800e +/* 0D372C 800D2B2C 25CE4810 */ addiu $t6, %lo(D_800E4810) # addiu $t6, $t6, 0x4810 +/* 0D3730 800D2B30 3C01800E */ lui $at, %hi(D_800E4870) # $at, 0x800e +/* 0D3734 800D2B34 AC2E4870 */ sw $t6, %lo(D_800E4870)($at) +/* 0D3738 800D2B38 3C01800E */ lui $at, %hi(D_800E4874) # $at, 0x800e +/* 0D373C 800D2B3C 25CF0030 */ addiu $t7, $t6, 0x30 +/* 0D3740 800D2B40 AC2F4874 */ sw $t7, %lo(D_800E4874)($at) +/* 0D3744 800D2B44 24180001 */ li $t8, 1 +/* 0D3748 800D2B48 A5D80032 */ sh $t8, 0x32($t6) +/* 0D374C 800D2B4C 3C08800E */ lui $t0, %hi(D_800E4870) # $t0, 0x800e +/* 0D3750 800D2B50 8D084870 */ lw $t0, %lo(D_800E4870)($t0) +/* 0D3754 800D2B54 24190001 */ li $t9, 1 +/* 0D3758 800D2B58 3C098000 */ lui $t1, %hi(D_80000300) # $t1, 0x8000 +/* 0D375C 800D2B5C A5190002 */ sh $t9, 2($t0) +/* 0D3760 800D2B60 8D290300 */ lw $t1, %lo(D_80000300)($t1) +/* 0D3764 800D2B64 1520000B */ bnez $t1, .L800D2B94 +/* 0D3768 800D2B68 00000000 */ nop +/* 0D376C 800D2B6C 3C0B800E */ lui $t3, %hi(D_800E4874) # $t3, 0x800e +/* 0D3770 800D2B70 8D6B4874 */ lw $t3, %lo(D_800E4874)($t3) +/* 0D3774 800D2B74 3C0A800E */ lui $t2, %hi(D_800E4760) # $t2, 0x800e +/* 0D3778 800D2B78 254A4760 */ addiu $t2, %lo(D_800E4760) # addiu $t2, $t2, 0x4760 +/* 0D377C 800D2B7C 3C0C02F5 */ lui $t4, (0x02F5B2D2 >> 16) # lui $t4, 0x2f5 +/* 0D3780 800D2B80 358CB2D2 */ ori $t4, (0x02F5B2D2 & 0xFFFF) # ori $t4, $t4, 0xb2d2 +/* 0D3784 800D2B84 3C01800E */ lui $at, %hi(D_800E4878) # $at, 0x800e +/* 0D3788 800D2B88 AD6A0008 */ sw $t2, 8($t3) +/* 0D378C 800D2B8C 10000019 */ b .L800D2BF4 +/* 0D3790 800D2B90 AC2C4878 */ sw $t4, %lo(D_800E4878)($at) +.L800D2B94: +/* 0D3794 800D2B94 3C0D8000 */ lui $t5, %hi(D_80000300) # $t5, 0x8000 +/* 0D3798 800D2B98 8DAD0300 */ lw $t5, %lo(D_80000300)($t5) +/* 0D379C 800D2B9C 24010002 */ li $at, 2 +/* 0D37A0 800D2BA0 15A1000B */ bne $t5, $at, .L800D2BD0 +/* 0D37A4 800D2BA4 00000000 */ nop +/* 0D37A8 800D2BA8 3C18800E */ lui $t8, %hi(D_800E4874) # $t8, 0x800e +/* 0D37AC 800D2BAC 8F184874 */ lw $t8, %lo(D_800E4874)($t8) +/* 0D37B0 800D2BB0 3C0F800E */ lui $t7, %hi(D_800E47B0) # $t7, 0x800e +/* 0D37B4 800D2BB4 25EF47B0 */ addiu $t7, %lo(D_800E47B0) # addiu $t7, $t7, 0x47b0 +/* 0D37B8 800D2BB8 3C0E02E6 */ lui $t6, (0x02E6025C >> 16) # lui $t6, 0x2e6 +/* 0D37BC 800D2BBC 35CE025C */ ori $t6, (0x02E6025C & 0xFFFF) # ori $t6, $t6, 0x25c +/* 0D37C0 800D2BC0 3C01800E */ lui $at, %hi(D_800E4878) # $at, 0x800e +/* 0D37C4 800D2BC4 AF0F0008 */ sw $t7, 8($t8) +/* 0D37C8 800D2BC8 1000000A */ b .L800D2BF4 +/* 0D37CC 800D2BCC AC2E4878 */ sw $t6, %lo(D_800E4878)($at) +.L800D2BD0: +/* 0D37D0 800D2BD0 3C08800E */ lui $t0, %hi(D_800E4874) # $t0, 0x800e +/* 0D37D4 800D2BD4 8D084874 */ lw $t0, %lo(D_800E4874)($t0) +/* 0D37D8 800D2BD8 3C19800E */ lui $t9, %hi(D_800E4710) # $t9, 0x800e +/* 0D37DC 800D2BDC 27394710 */ addiu $t9, %lo(D_800E4710) # addiu $t9, $t9, 0x4710 +/* 0D37E0 800D2BE0 3C0902E6 */ lui $t1, (0x02E6D354 >> 16) # lui $t1, 0x2e6 +/* 0D37E4 800D2BE4 3529D354 */ ori $t1, (0x02E6D354 & 0xFFFF) # ori $t1, $t1, 0xd354 +/* 0D37E8 800D2BE8 3C01800E */ lui $at, %hi(D_800E4878) # $at, 0x800e +/* 0D37EC 800D2BEC AD190008 */ sw $t9, 8($t0) +/* 0D37F0 800D2BF0 AC294878 */ sw $t1, %lo(D_800E4878)($at) +.L800D2BF4: +/* 0D37F4 800D2BF4 3C0B800E */ lui $t3, %hi(D_800E4874) # $t3, 0x800e +/* 0D37F8 800D2BF8 8D6B4874 */ lw $t3, %lo(D_800E4874)($t3) +/* 0D37FC 800D2BFC 240A0020 */ li $t2, 32 +/* 0D3800 800D2C00 3C0C800E */ lui $t4, %hi(D_800E4874) # $t4, 0x800e +/* 0D3804 800D2C04 A56A0000 */ sh $t2, ($t3) +/* 0D3808 800D2C08 8D8C4874 */ lw $t4, %lo(D_800E4874)($t4) +/* 0D380C 800D2C0C 3C18A440 */ lui $t8, %hi(D_A4400010) # $t8, 0xa440 +/* 0D3810 800D2C10 8D8D0008 */ lw $t5, 8($t4) +/* 0D3814 800D2C14 8DAF0004 */ lw $t7, 4($t5) +/* 0D3818 800D2C18 AD8F000C */ sw $t7, 0xc($t4) +/* 0D381C 800D2C1C 8F0E0010 */ lw $t6, %lo(D_A4400010)($t8) +/* 0D3820 800D2C20 2DC1000B */ sltiu $at, $t6, 0xb +/* 0D3824 800D2C24 14200006 */ bnez $at, .L800D2C40 +/* 0D3828 800D2C28 00000000 */ nop +.L800D2C2C: +/* 0D382C 800D2C2C 3C19A440 */ lui $t9, %hi(D_A4400010) # $t9, 0xa440 +/* 0D3830 800D2C30 8F280010 */ lw $t0, %lo(D_A4400010)($t9) +/* 0D3834 800D2C34 2D01000B */ sltiu $at, $t0, 0xb +/* 0D3838 800D2C38 1020FFFC */ beqz $at, .L800D2C2C +/* 0D383C 800D2C3C 00000000 */ nop +.L800D2C40: +/* 0D3840 800D2C40 3C09A440 */ lui $t1, 0xa440 +/* 0D3844 800D2C44 0C035824 */ jal func_800D6090 +/* 0D3848 800D2C48 AD200000 */ sw $zero, ($t1) +/* 0D384C 800D2C4C 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D3850 800D2C50 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0D3854 800D2C54 03E00008 */ jr $ra +/* 0D3858 800D2C58 00000000 */ nop + +/* 0D385C 800D2C5C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D2C60.s b/asm/non_matchings/unknown_0D3020/func_800D2C60.s new file mode 100644 index 00000000..a0e21b27 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D2C60.s @@ -0,0 +1,6 @@ +glabel func_800D2C60 +/* 0D3860 800D2C60 03E00008 */ jr $ra +/* 0D3864 800D2C64 AC800000 */ sw $zero, ($a0) + +/* 0D3868 800D2C68 00000000 */ nop +/* 0D386C 800D2C6C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D2C70.s b/asm/non_matchings/unknown_0D3020/func_800D2C70.s new file mode 100644 index 00000000..f9b5ade6 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D2C70.s @@ -0,0 +1,21 @@ +glabel func_800D2C70 +/* 0D3870 800D2C70 00803025 */ move $a2, $a0 +/* 0D3874 800D2C74 8CC70000 */ lw $a3, ($a2) +/* 0D3878 800D2C78 27BDFFF8 */ addiu $sp, $sp, -8 +/* 0D387C 800D2C7C 10E0000A */ beqz $a3, .L800D2CA8 +/* 0D3880 800D2C80 00000000 */ nop +.L800D2C84: +/* 0D3884 800D2C84 14E50004 */ bne $a3, $a1, .L800D2C98 +/* 0D3888 800D2C88 00000000 */ nop +/* 0D388C 800D2C8C 8CAE0000 */ lw $t6, ($a1) +/* 0D3890 800D2C90 10000005 */ b .L800D2CA8 +/* 0D3894 800D2C94 ACCE0000 */ sw $t6, ($a2) +.L800D2C98: +/* 0D3898 800D2C98 00E03025 */ move $a2, $a3 +/* 0D389C 800D2C9C 8CC70000 */ lw $a3, ($a2) +/* 0D38A0 800D2CA0 14E0FFF8 */ bnez $a3, .L800D2C84 +/* 0D38A4 800D2CA4 00000000 */ nop +.L800D2CA8: +/* 0D38A8 800D2CA8 03E00008 */ jr $ra +/* 0D38AC 800D2CAC 27BD0008 */ addiu $sp, $sp, 8 + diff --git a/asm/non_matchings/unknown_0D3020/func_800D31E4.s b/asm/non_matchings/unknown_0D3020/func_800D31E4.s new file mode 100644 index 00000000..618c38be --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D31E4.s @@ -0,0 +1,63 @@ +glabel func_800D31E4 +/* 0D3DE4 800D31E4 3C0A8013 */ lui $t2, %hi(D_8012CCD0) # $t2, 0x8013 +/* 0D3DE8 800D31E8 254ACCD0 */ addiu $t2, %lo(D_8012CCD0) # addiu $t2, $t2, -0x3330 +/* 0D3DEC 800D31EC 01445021 */ addu $t2, $t2, $a0 +/* 0D3DF0 800D31F0 8D490000 */ lw $t1, ($t2) +/* 0D3DF4 800D31F4 03E09025 */ move $s2, $ra +/* 0D3DF8 800D31F8 11200025 */ beqz $t1, .L800D3290 +/* 0D3DFC 800D31FC 00000000 */ nop +/* 0D3E00 800D3200 8D2B0008 */ lw $t3, 8($t1) +/* 0D3E04 800D3204 8D2C0010 */ lw $t4, 0x10($t1) +/* 0D3E08 800D3208 016C082A */ slt $at, $t3, $t4 +/* 0D3E0C 800D320C 10200020 */ beqz $at, .L800D3290 +/* 0D3E10 800D3210 00000000 */ nop +/* 0D3E14 800D3214 8D2D000C */ lw $t5, 0xc($t1) +/* 0D3E18 800D3218 01AB6821 */ addu $t5, $t5, $t3 +/* 0D3E1C 800D321C 01AC001A */ div $zero, $t5, $t4 +/* 0D3E20 800D3220 15800002 */ bnez $t4, .L800D322C +/* 0D3E24 800D3224 00000000 */ nop +/* 0D3E28 800D3228 0007000D */ break 7 +.L800D322C: +/* 0D3E2C 800D322C 2401FFFF */ li $at, -1 +/* 0D3E30 800D3230 15810004 */ bne $t4, $at, .L800D3244 +/* 0D3E34 800D3234 3C018000 */ lui $at, 0x8000 +/* 0D3E38 800D3238 15A10002 */ bne $t5, $at, .L800D3244 +/* 0D3E3C 800D323C 00000000 */ nop +/* 0D3E40 800D3240 0006000D */ break 6 +.L800D3244: +/* 0D3E44 800D3244 8D2C0014 */ lw $t4, 0x14($t1) +/* 0D3E48 800D3248 00006810 */ mfhi $t5 +/* 0D3E4C 800D324C 000D6880 */ sll $t5, $t5, 2 +/* 0D3E50 800D3250 018D6021 */ addu $t4, $t4, $t5 +/* 0D3E54 800D3254 8D4D0004 */ lw $t5, 4($t2) +/* 0D3E58 800D3258 256A0001 */ addiu $t2, $t3, 1 +/* 0D3E5C 800D325C AD8D0000 */ sw $t5, ($t4) +/* 0D3E60 800D3260 AD2A0008 */ sw $t2, 8($t1) +/* 0D3E64 800D3264 8D2A0000 */ lw $t2, ($t1) +/* 0D3E68 800D3268 8D4B0000 */ lw $t3, ($t2) +/* 0D3E6C 800D326C 11600008 */ beqz $t3, .L800D3290 +/* 0D3E70 800D3270 00000000 */ nop +/* 0D3E74 800D3274 0C034D05 */ jal __osPopThread +/* 0D3E78 800D3278 01202025 */ move $a0, $t1 +/* 0D3E7C 800D327C 00405025 */ move $t2, $v0 +/* 0D3E80 800D3280 3C04800E */ lui $a0, %hi(D_800E4888) # $a0, 0x800e +/* 0D3E84 800D3284 01402825 */ move $a1, $t2 +/* 0D3E88 800D3288 0C034CF3 */ jal func_800D33CC +/* 0D3E8C 800D328C 24844888 */ addiu $a0, %lo(D_800E4888) # addiu $a0, $a0, 0x4888 +.L800D3290: +/* 0D3E90 800D3290 02400008 */ jr $s2 +/* 0D3E94 800D3294 00000000 */ nop +.L800D3298: +/* 0D3E98 800D3298 3C013000 */ lui $at, 0x3000 +/* 0D3E9C 800D329C 01014824 */ and $t1, $t0, $at +/* 0D3EA0 800D32A0 00094F02 */ srl $t1, $t1, 0x1c +/* 0D3EA4 800D32A4 240A0001 */ li $t2, 1 +/* 0D3EA8 800D32A8 152AFFC2 */ bne $t1, $t2, .L800D31B4 +/* 0D3EAC 800D32AC 00000000 */ nop +/* 0D3EB0 800D32B0 8F5B0118 */ lw $k1, 0x118($k0) +/* 0D3EB4 800D32B4 3C012000 */ lui $at, 0x2000 +/* 0D3EB8 800D32B8 24090001 */ li $t1, 1 +/* 0D3EBC 800D32BC 0361D825 */ or $k1, $k1, $at +/* 0D3EC0 800D32C0 AF490018 */ sw $t1, 0x18($k0) +/* 0D3EC4 800D32C4 1000FFB5 */ b .L800D319C +/* 0D3EC8 800D32C8 AF5B0118 */ sw $k1, 0x118($k0) diff --git a/asm/non_matchings/unknown_0D3020/func_800D33CC.s b/asm/non_matchings/unknown_0D3020/func_800D33CC.s new file mode 100644 index 00000000..a4aa770e --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D33CC.s @@ -0,0 +1,22 @@ +glabel func_800D33CC +/* 0D3FCC 800D33CC 8C980000 */ lw $t8, ($a0) +/* 0D3FD0 800D33D0 8CAF0004 */ lw $t7, 4($a1) +/* 0D3FD4 800D33D4 0080C825 */ move $t9, $a0 +/* 0D3FD8 800D33D8 8F0E0004 */ lw $t6, 4($t8) +/* 0D3FDC 800D33DC 01CF082A */ slt $at, $t6, $t7 +/* 0D3FE0 800D33E0 14200007 */ bnez $at, .L800D3400 +/* 0D3FE4 800D33E4 00000000 */ nop +.L800D33E8: +/* 0D3FE8 800D33E8 0300C825 */ move $t9, $t8 +/* 0D3FEC 800D33EC 8F180000 */ lw $t8, ($t8) +/* 0D3FF0 800D33F0 8F0E0004 */ lw $t6, 4($t8) +/* 0D3FF4 800D33F4 01CF082A */ slt $at, $t6, $t7 +/* 0D3FF8 800D33F8 1020FFFB */ beqz $at, .L800D33E8 +/* 0D3FFC 800D33FC 00000000 */ nop +.L800D3400: +/* 0D4000 800D3400 8F380000 */ lw $t8, ($t9) +/* 0D4004 800D3404 ACB80000 */ sw $t8, ($a1) +/* 0D4008 800D3408 AF250000 */ sw $a1, ($t9) +/* 0D400C 800D340C 03E00008 */ jr $ra +/* 0D4010 800D3410 ACA40008 */ sw $a0, 8($a1) + diff --git a/asm/non_matchings/unknown_0D3020/func_800D3424.s b/asm/non_matchings/unknown_0D3020/func_800D3424.s new file mode 100644 index 00000000..f1d4380d --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D3424.s @@ -0,0 +1,97 @@ +glabel func_800D3424 +/* 0D4024 800D3424 3C04800E */ lui $a0, %hi(D_800E4888) # $a0, 0x800e +/* 0D4028 800D3428 0C034D05 */ jal __osPopThread +/* 0D402C 800D342C 24844888 */ addiu $a0, %lo(D_800E4888) # addiu $a0, $a0, 0x4888 +/* 0D4030 800D3430 3C01800E */ lui $at, %hi(D_800E4890) # $at, 0x800e +/* 0D4034 800D3434 AC224890 */ sw $v0, %lo(D_800E4890)($at) +/* 0D4038 800D3438 24080004 */ li $t0, 4 +/* 0D403C 800D343C A4480010 */ sh $t0, 0x10($v0) +/* 0D4040 800D3440 0040D025 */ move $k0, $v0 +/* 0D4044 800D3444 3C08800E */ lui $t0, %hi(D_800E38AC) # $t0, 0x800e +/* 0D4048 800D3448 8F5B0118 */ lw $k1, 0x118($k0) +/* 0D404C 800D344C 250838AC */ addiu $t0, %lo(D_800E38AC) # addiu $t0, $t0, 0x38ac +/* 0D4050 800D3450 8D080000 */ lw $t0, ($t0) +/* 0D4054 800D3454 3C01FFFF */ lui $at, (0xFFFF00FF >> 16) # lui $at, 0xffff +/* 0D4058 800D3458 3369FF00 */ andi $t1, $k1, 0xff00 +/* 0D405C 800D345C 342100FF */ ori $at, (0xFFFF00FF & 0xFFFF) # ori $at, $at, 0xff +/* 0D4060 800D3460 3108FF00 */ andi $t0, $t0, 0xff00 +/* 0D4064 800D3464 01284824 */ and $t1, $t1, $t0 +/* 0D4068 800D3468 0361D824 */ and $k1, $k1, $at +/* 0D406C 800D346C 0369D825 */ or $k1, $k1, $t1 +/* 0D4070 800D3470 409B6000 */ mtc0 $k1, $12 +/* 0D4074 800D3474 DF5B0108 */ ld $k1, 0x108($k0) +/* 0D4078 800D3478 DF410020 */ ld $at, 0x20($k0) +/* 0D407C 800D347C DF420028 */ ld $v0, 0x28($k0) +/* 0D4080 800D3480 03600013 */ mtlo $k1 +/* 0D4084 800D3484 DF5B0110 */ ld $k1, 0x110($k0) +/* 0D4088 800D3488 DF430030 */ ld $v1, 0x30($k0) +/* 0D408C 800D348C DF440038 */ ld $a0, 0x38($k0) +/* 0D4090 800D3490 DF450040 */ ld $a1, 0x40($k0) +/* 0D4094 800D3494 DF460048 */ ld $a2, 0x48($k0) +/* 0D4098 800D3498 DF470050 */ ld $a3, 0x50($k0) +/* 0D409C 800D349C DF480058 */ ld $t0, 0x58($k0) +/* 0D40A0 800D34A0 DF490060 */ ld $t1, 0x60($k0) +/* 0D40A4 800D34A4 DF4A0068 */ ld $t2, 0x68($k0) +/* 0D40A8 800D34A8 DF4B0070 */ ld $t3, 0x70($k0) +/* 0D40AC 800D34AC DF4C0078 */ ld $t4, 0x78($k0) +/* 0D40B0 800D34B0 DF4D0080 */ ld $t5, 0x80($k0) +/* 0D40B4 800D34B4 DF4E0088 */ ld $t6, 0x88($k0) +/* 0D40B8 800D34B8 DF4F0090 */ ld $t7, 0x90($k0) +/* 0D40BC 800D34BC DF500098 */ ld $s0, 0x98($k0) +/* 0D40C0 800D34C0 DF5100A0 */ ld $s1, 0xa0($k0) +/* 0D40C4 800D34C4 DF5200A8 */ ld $s2, 0xa8($k0) +/* 0D40C8 800D34C8 DF5300B0 */ ld $s3, 0xb0($k0) +/* 0D40CC 800D34CC DF5400B8 */ ld $s4, 0xb8($k0) +/* 0D40D0 800D34D0 DF5500C0 */ ld $s5, 0xc0($k0) +/* 0D40D4 800D34D4 DF5600C8 */ ld $s6, 0xc8($k0) +/* 0D40D8 800D34D8 DF5700D0 */ ld $s7, 0xd0($k0) +/* 0D40DC 800D34DC DF5800D8 */ ld $t8, 0xd8($k0) +/* 0D40E0 800D34E0 DF5900E0 */ ld $t9, 0xe0($k0) +/* 0D40E4 800D34E4 DF5C00E8 */ ld $gp, 0xe8($k0) +/* 0D40E8 800D34E8 03600011 */ mthi $k1 +/* 0D40EC 800D34EC DF5D00F0 */ ld $sp, 0xf0($k0) +/* 0D40F0 800D34F0 DF5E00F8 */ ld $fp, 0xf8($k0) +/* 0D40F4 800D34F4 DF5F0100 */ ld $ra, 0x100($k0) +/* 0D40F8 800D34F8 8F5B011C */ lw $k1, 0x11c($k0) +/* 0D40FC 800D34FC 409B7000 */ mtc0 $k1, $14 +/* 0D4100 800D3500 8F5B0018 */ lw $k1, 0x18($k0) +/* 0D4104 800D3504 13600013 */ beqz $k1, .L800D3554 +/* 0D4108 800D3508 00000000 */ nop +/* 0D410C 800D350C 8F5B012C */ lw $k1, 0x12c($k0) +/* 0D4110 800D3510 44DBF800 */ ctc1 $k1, $31 +/* 0D4114 800D3514 D7400130 */ ldc1 $f0, 0x130($k0) +/* 0D4118 800D3518 D7420138 */ ldc1 $f2, 0x138($k0) +/* 0D411C 800D351C D7440140 */ ldc1 $f4, 0x140($k0) +/* 0D4120 800D3520 D7460148 */ ldc1 $f6, 0x148($k0) +/* 0D4124 800D3524 D7480150 */ ldc1 $f8, 0x150($k0) +/* 0D4128 800D3528 D74A0158 */ ldc1 $f10, 0x158($k0) +/* 0D412C 800D352C D74C0160 */ ldc1 $f12, 0x160($k0) +/* 0D4130 800D3530 D74E0168 */ ldc1 $f14, 0x168($k0) +/* 0D4134 800D3534 D7500170 */ ldc1 $f16, 0x170($k0) +/* 0D4138 800D3538 D7520178 */ ldc1 $f18, 0x178($k0) +/* 0D413C 800D353C D7540180 */ ldc1 $f20, 0x180($k0) +/* 0D4140 800D3540 D7560188 */ ldc1 $f22, 0x188($k0) +/* 0D4144 800D3544 D7580190 */ ldc1 $f24, 0x190($k0) +/* 0D4148 800D3548 D75A0198 */ ldc1 $f26, 0x198($k0) +/* 0D414C 800D354C D75C01A0 */ ldc1 $f28, 0x1a0($k0) +/* 0D4150 800D3550 D75E01A8 */ ldc1 $f30, 0x1a8($k0) +.L800D3554: +/* 0D4154 800D3554 8F5B0128 */ lw $k1, 0x128($k0) +/* 0D4158 800D3558 3C1A800E */ lui $k0, %hi(D_800E38AC) # $k0, 0x800e +/* 0D415C 800D355C 275A38AC */ addiu $k0, %lo(D_800E38AC) # addiu $k0, $k0, 0x38ac +/* 0D4160 800D3560 8F5A0000 */ lw $k0, ($k0) +/* 0D4164 800D3564 001AD402 */ srl $k0, $k0, 0x10 +/* 0D4168 800D3568 037AD824 */ and $k1, $k1, $k0 +/* 0D416C 800D356C 001BD840 */ sll $k1, $k1, 1 +/* 0D4170 800D3570 3C1A800F */ lui $k0, %hi(D_800E94D0) # $k0, 0x800f +/* 0D4174 800D3574 275A94D0 */ addiu $k0, %lo(D_800E94D0) # addiu $k0, $k0, -0x6b30 +/* 0D4178 800D3578 037AD821 */ addu $k1, $k1, $k0 +/* 0D417C 800D357C 977B0000 */ lhu $k1, ($k1) +/* 0D4180 800D3580 3C1AA430 */ lui $k0, %hi(D_A430000C) # $k0, 0xa430 +/* 0D4184 800D3584 275A000C */ addiu $k0, %lo(D_A430000C) # addiu $k0, $k0, 0xc +/* 0D4188 800D3588 AF5B0000 */ sw $k1, ($k0) +/* 0D418C 800D358C 00000000 */ nop +/* 0D4190 800D3590 00000000 */ nop +/* 0D4194 800D3594 00000000 */ nop +/* 0D4198 800D3598 00000000 */ nop +/* 0D419C 800D359C 42000018 */ eret diff --git a/asm/non_matchings/unknown_0D3020/func_800D35B0.s b/asm/non_matchings/unknown_0D3020/func_800D35B0.s new file mode 100644 index 00000000..b5c8f3bf --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D35B0.s @@ -0,0 +1,54 @@ +glabel func_800D35B0 +/* 0D41B0 800D35B0 40085000 */ mfc0 $t0, $10 +/* 0D41B4 800D35B4 310900FF */ andi $t1, $t0, 0xff +/* 0D41B8 800D35B8 2401E000 */ li $at, -8192 +/* 0D41BC 800D35BC 00815024 */ and $t2, $a0, $at +/* 0D41C0 800D35C0 012A4825 */ or $t1, $t1, $t2 +/* 0D41C4 800D35C4 40895000 */ mtc0 $t1, $10 +/* 0D41C8 800D35C8 00000000 */ nop +/* 0D41CC 800D35CC 00000000 */ nop +/* 0D41D0 800D35D0 00000000 */ nop +/* 0D41D4 800D35D4 42000008 */ tlbp +/* 0D41D8 800D35D8 00000000 */ nop +/* 0D41DC 800D35DC 00000000 */ nop +/* 0D41E0 800D35E0 400B0000 */ mfc0 $t3, $0 +/* 0D41E4 800D35E4 3C018000 */ lui $at, 0x8000 +/* 0D41E8 800D35E8 01615824 */ and $t3, $t3, $at +/* 0D41EC 800D35EC 1560001A */ bnez $t3, .L800D3658 +/* 0D41F0 800D35F0 00000000 */ nop +/* 0D41F4 800D35F4 42000001 */ tlbr +/* 0D41F8 800D35F8 00000000 */ nop +/* 0D41FC 800D35FC 00000000 */ nop +/* 0D4200 800D3600 00000000 */ nop +/* 0D4204 800D3604 400B2800 */ mfc0 $t3, $5 +/* 0D4208 800D3608 216B2000 */ addi $t3, $t3, 0x2000 +/* 0D420C 800D360C 000B5842 */ srl $t3, $t3, 1 +/* 0D4210 800D3610 01646024 */ and $t4, $t3, $a0 +/* 0D4214 800D3614 15800004 */ bnez $t4, .L800D3628 +/* 0D4218 800D3618 216BFFFF */ addi $t3, $t3, -1 +/* 0D421C 800D361C 40021000 */ mfc0 $v0, $2 +/* 0D4220 800D3620 10000002 */ b .L800D362C +/* 0D4224 800D3624 00000000 */ nop +.L800D3628: +/* 0D4228 800D3628 40021800 */ mfc0 $v0, $3 +.L800D362C: +/* 0D422C 800D362C 304D0002 */ andi $t5, $v0, 2 +/* 0D4230 800D3630 11A00009 */ beqz $t5, .L800D3658 +/* 0D4234 800D3634 00000000 */ nop +/* 0D4238 800D3638 3C013FFF */ lui $at, (0x3FFFFFC0 >> 16) # lui $at, 0x3fff +/* 0D423C 800D363C 3421FFC0 */ ori $at, (0x3FFFFFC0 & 0xFFFF) # ori $at, $at, 0xffc0 +/* 0D4240 800D3640 00411024 */ and $v0, $v0, $at +/* 0D4244 800D3644 00021180 */ sll $v0, $v0, 6 +/* 0D4248 800D3648 008B6824 */ and $t5, $a0, $t3 +/* 0D424C 800D364C 004D1020 */ add $v0, $v0, $t5 +/* 0D4250 800D3650 10000002 */ b .L800D365C +/* 0D4254 800D3654 00000000 */ nop +.L800D3658: +/* 0D4258 800D3658 2402FFFF */ li $v0, -1 +.L800D365C: +/* 0D425C 800D365C 40885000 */ mtc0 $t0, $10 +/* 0D4260 800D3660 03E00008 */ jr $ra +/* 0D4264 800D3664 00000000 */ nop + +/* 0D4268 800D3668 00000000 */ nop +/* 0D426C 800D366C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D3670.s b/asm/non_matchings/unknown_0D3020/func_800D3670.s new file mode 100644 index 00000000..98ddd31d --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D3670.s @@ -0,0 +1,16 @@ +glabel func_800D3670 +/* 0D4270 800D3670 3C0EA450 */ lui $t6, %hi(D_A450000C) # $t6, 0xa450 +/* 0D4274 800D3674 8DC4000C */ lw $a0, %lo(D_A450000C)($t6) +/* 0D4278 800D3678 3C018000 */ lui $at, 0x8000 +/* 0D427C 800D367C 27BDFFF8 */ addiu $sp, $sp, -8 +/* 0D4280 800D3680 00817824 */ and $t7, $a0, $at +/* 0D4284 800D3684 11E00003 */ beqz $t7, .L800D3694 +/* 0D4288 800D3688 00000000 */ nop +/* 0D428C 800D368C 10000002 */ b .L800D3698 +/* 0D4290 800D3690 24020001 */ li $v0, 1 +.L800D3694: +/* 0D4294 800D3694 00001025 */ move $v0, $zero +.L800D3698: +/* 0D4298 800D3698 03E00008 */ jr $ra +/* 0D429C 800D369C 27BD0008 */ addiu $sp, $sp, 8 + diff --git a/asm/non_matchings/unknown_0D3020/func_800D36A0.s b/asm/non_matchings/unknown_0D3020/func_800D36A0.s new file mode 100644 index 00000000..9e0a8198 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D36A0.s @@ -0,0 +1,94 @@ +glabel func_800D36A0 +/* 0D42A0 800D36A0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0D42A4 800D36A4 AFBF001C */ sw $ra, 0x1c($sp) +/* 0D42A8 800D36A8 AFA40028 */ sw $a0, 0x28($sp) +/* 0D42AC 800D36AC AFA5002C */ sw $a1, 0x2c($sp) +/* 0D42B0 800D36B0 AFA60030 */ sw $a2, 0x30($sp) +/* 0D42B4 800D36B4 AFB10018 */ sw $s1, 0x18($sp) +/* 0D42B8 800D36B8 0C034958 */ jal __osDisableInt +/* 0D42BC 800D36BC AFB00014 */ sw $s0, 0x14($sp) +/* 0D42C0 800D36C0 8FAE0028 */ lw $t6, 0x28($sp) +/* 0D42C4 800D36C4 00408025 */ move $s0, $v0 +/* 0D42C8 800D36C8 8DCF0008 */ lw $t7, 8($t6) +/* 0D42CC 800D36CC 8DD80010 */ lw $t8, 0x10($t6) +/* 0D42D0 800D36D0 01F8082A */ slt $at, $t7, $t8 +/* 0D42D4 800D36D4 14200018 */ bnez $at, .L800D3738 +/* 0D42D8 800D36D8 00000000 */ nop +.L800D36DC: +/* 0D42DC 800D36DC 8FB90030 */ lw $t9, 0x30($sp) +/* 0D42E0 800D36E0 24010001 */ li $at, 1 +/* 0D42E4 800D36E4 1721000A */ bne $t9, $at, .L800D3710 +/* 0D42E8 800D36E8 00000000 */ nop +/* 0D42EC 800D36EC 3C09800E */ lui $t1, %hi(D_800E4890) # $t1, 0x800e +/* 0D42F0 800D36F0 8D294890 */ lw $t1, %lo(D_800E4890)($t1) +/* 0D42F4 800D36F4 24080008 */ li $t0, 8 +/* 0D42F8 800D36F8 A5280010 */ sh $t0, 0x10($t1) +/* 0D42FC 800D36FC 8FA40028 */ lw $a0, 0x28($sp) +/* 0D4300 800D3700 0C034CB3 */ jal __osEnqueueAndYield +/* 0D4304 800D3704 24840004 */ addiu $a0, $a0, 4 +/* 0D4308 800D3708 10000005 */ b .L800D3720 +/* 0D430C 800D370C 00000000 */ nop +.L800D3710: +/* 0D4310 800D3710 0C034960 */ jal __osRestoreInt +/* 0D4314 800D3714 02002025 */ move $a0, $s0 +/* 0D4318 800D3718 10000030 */ b .L800D37DC +/* 0D431C 800D371C 2402FFFF */ li $v0, -1 +.L800D3720: +/* 0D4320 800D3720 8FAA0028 */ lw $t2, 0x28($sp) +/* 0D4324 800D3724 8D4B0008 */ lw $t3, 8($t2) +/* 0D4328 800D3728 8D4C0010 */ lw $t4, 0x10($t2) +/* 0D432C 800D372C 016C082A */ slt $at, $t3, $t4 +/* 0D4330 800D3730 1020FFEA */ beqz $at, .L800D36DC +/* 0D4334 800D3734 00000000 */ nop +.L800D3738: +/* 0D4338 800D3738 8FAD0028 */ lw $t5, 0x28($sp) +/* 0D433C 800D373C 8DAE000C */ lw $t6, 0xc($t5) +/* 0D4340 800D3740 8DAF0010 */ lw $t7, 0x10($t5) +/* 0D4344 800D3744 01CFC021 */ addu $t8, $t6, $t7 +/* 0D4348 800D3748 2719FFFF */ addiu $t9, $t8, -1 +/* 0D434C 800D374C 032F001A */ div $zero, $t9, $t7 +/* 0D4350 800D3750 00004010 */ mfhi $t0 +/* 0D4354 800D3754 ADA8000C */ sw $t0, 0xc($t5) +/* 0D4358 800D3758 8FAA0028 */ lw $t2, 0x28($sp) +/* 0D435C 800D375C 8FA9002C */ lw $t1, 0x2c($sp) +/* 0D4360 800D3760 15E00002 */ bnez $t7, .L800D376C +/* 0D4364 800D3764 00000000 */ nop +/* 0D4368 800D3768 0007000D */ break 7 +.L800D376C: +/* 0D436C 800D376C 2401FFFF */ li $at, -1 +/* 0D4370 800D3770 15E10004 */ bne $t7, $at, .L800D3784 +/* 0D4374 800D3774 3C018000 */ lui $at, 0x8000 +/* 0D4378 800D3778 17210002 */ bne $t9, $at, .L800D3784 +/* 0D437C 800D377C 00000000 */ nop +/* 0D4380 800D3780 0006000D */ break 6 +.L800D3784: +/* 0D4384 800D3784 8D4C000C */ lw $t4, 0xc($t2) +/* 0D4388 800D3788 8D4B0014 */ lw $t3, 0x14($t2) +/* 0D438C 800D378C 000C7080 */ sll $t6, $t4, 2 +/* 0D4390 800D3790 016EC021 */ addu $t8, $t3, $t6 +/* 0D4394 800D3794 AF090000 */ sw $t1, ($t8) +/* 0D4398 800D3798 8FB90028 */ lw $t9, 0x28($sp) +/* 0D439C 800D379C 8F2F0008 */ lw $t7, 8($t9) +/* 0D43A0 800D37A0 25E80001 */ addiu $t0, $t7, 1 +/* 0D43A4 800D37A4 AF280008 */ sw $t0, 8($t9) +/* 0D43A8 800D37A8 8FAD0028 */ lw $t5, 0x28($sp) +/* 0D43AC 800D37AC 8DAA0000 */ lw $t2, ($t5) +/* 0D43B0 800D37B0 8D4C0000 */ lw $t4, ($t2) +/* 0D43B4 800D37B4 11800006 */ beqz $t4, .L800D37D0 +/* 0D43B8 800D37B8 00000000 */ nop +/* 0D43BC 800D37BC 0C034D05 */ jal __osPopThread +/* 0D43C0 800D37C0 01A02025 */ move $a0, $t5 +/* 0D43C4 800D37C4 00408825 */ move $s1, $v0 +/* 0D43C8 800D37C8 0C032268 */ jal osStartThread +/* 0D43CC 800D37CC 02202025 */ move $a0, $s1 +.L800D37D0: +/* 0D43D0 800D37D0 0C034960 */ jal __osRestoreInt +/* 0D43D4 800D37D4 02002025 */ move $a0, $s0 +/* 0D43D8 800D37D8 00001025 */ move $v0, $zero +.L800D37DC: +/* 0D43DC 800D37DC 8FBF001C */ lw $ra, 0x1c($sp) +/* 0D43E0 800D37E0 8FB00014 */ lw $s0, 0x14($sp) +/* 0D43E4 800D37E4 8FB10018 */ lw $s1, 0x18($sp) +/* 0D43E8 800D37E8 03E00008 */ jr $ra +/* 0D43EC 800D37EC 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_0D3020/func_800D37F0.s b/asm/non_matchings/unknown_0D3020/func_800D37F0.s new file mode 100644 index 00000000..58cd297d --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D37F0.s @@ -0,0 +1,16 @@ +glabel func_800D37F0 +/* 0D43F0 800D37F0 3C0E800E */ lui $t6, %hi(D_800E3740) # $t6, 0x800e +/* 0D43F4 800D37F4 8DCE3740 */ lw $t6, %lo(D_800E3740)($t6) +/* 0D43F8 800D37F8 15C00003 */ bnez $t6, .L800D3808 +/* 0D43FC 800D37FC 00000000 */ nop +/* 0D4400 800D3800 03E00008 */ jr $ra +/* 0D4404 800D3804 00001025 */ move $v0, $zero + +.L800D3808: +/* 0D4408 800D3808 3C02800E */ lui $v0, %hi(D_800E3748) # $v0, 0x800e +/* 0D440C 800D380C 8C423748 */ lw $v0, %lo(D_800E3748)($v0) +/* 0D4410 800D3810 03E00008 */ jr $ra +/* 0D4414 800D3814 00000000 */ nop + +/* 0D4418 800D3818 00000000 */ nop +/* 0D441C 800D381C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D3820.s b/asm/non_matchings/unknown_0D3020/func_800D3820.s new file mode 100644 index 00000000..542f81ef --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D3820.s @@ -0,0 +1,37 @@ +glabel func_800D3820 +/* 0D4420 800D3820 00801025 */ move $v0, $a0 +/* 0D4424 800D3824 00A01825 */ move $v1, $a1 +/* 0D4428 800D3828 18C00018 */ blez $a2, .L800D388C +/* 0D442C 800D382C 00003825 */ move $a3, $zero +/* 0D4430 800D3830 30C50003 */ andi $a1, $a2, 3 +/* 0D4434 800D3834 10A00009 */ beqz $a1, .L800D385C +/* 0D4438 800D3838 00A02025 */ move $a0, $a1 +.L800D383C: +/* 0D443C 800D383C 904E0000 */ lbu $t6, ($v0) +/* 0D4440 800D3840 24E70001 */ addiu $a3, $a3, 1 +/* 0D4444 800D3844 24630001 */ addiu $v1, $v1, 1 +/* 0D4448 800D3848 24420001 */ addiu $v0, $v0, 1 +/* 0D444C 800D384C 1487FFFB */ bne $a0, $a3, .L800D383C +/* 0D4450 800D3850 A06EFFFF */ sb $t6, -1($v1) +/* 0D4454 800D3854 10E6000D */ beq $a3, $a2, .L800D388C +/* 0D4458 800D3858 00000000 */ nop +.L800D385C: +/* 0D445C 800D385C 904F0000 */ lbu $t7, ($v0) +/* 0D4460 800D3860 24E70004 */ addiu $a3, $a3, 4 +/* 0D4464 800D3864 24630004 */ addiu $v1, $v1, 4 +/* 0D4468 800D3868 A06FFFFC */ sb $t7, -4($v1) +/* 0D446C 800D386C 90580001 */ lbu $t8, 1($v0) +/* 0D4470 800D3870 24420004 */ addiu $v0, $v0, 4 +/* 0D4474 800D3874 A078FFFD */ sb $t8, -3($v1) +/* 0D4478 800D3878 9059FFFE */ lbu $t9, -2($v0) +/* 0D447C 800D387C A079FFFE */ sb $t9, -2($v1) +/* 0D4480 800D3880 9048FFFF */ lbu $t0, -1($v0) +/* 0D4484 800D3884 14E6FFF5 */ bne $a3, $a2, .L800D385C +/* 0D4488 800D3888 A068FFFF */ sb $t0, -1($v1) +.L800D388C: +/* 0D448C 800D388C 03E00008 */ jr $ra +/* 0D4490 800D3890 00000000 */ nop + +/* 0D4494 800D3894 00000000 */ nop +/* 0D4498 800D3898 00000000 */ nop +/* 0D449C 800D389C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D38A0.s b/asm/non_matchings/unknown_0D3020/func_800D38A0.s new file mode 100644 index 00000000..ba8d8855 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D38A0.s @@ -0,0 +1,454 @@ +glabel func_800D38A0 +/* 0D44A0 800D38A0 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0D44A4 800D38A4 AFA50020 */ sw $a1, 0x20($sp) +/* 0D44A8 800D38A8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D44AC 800D38AC 30AE00FF */ andi $t6, $a1, 0xff +/* 0D44B0 800D38B0 29C10026 */ slti $at, $t6, 0x26 +/* 0D44B4 800D38B4 01C02825 */ move $a1, $t6 +/* 0D44B8 800D38B8 AE00000C */ sw $zero, 0xc($s0) +/* 0D44BC 800D38BC AE000010 */ sw $zero, 0x10($s0) +/* 0D44C0 800D38C0 AE000014 */ sw $zero, 0x14($s0) +/* 0D44C4 800D38C4 AE000018 */ sw $zero, 0x18($s0) +/* 0D44C8 800D38C8 AE00001C */ sw $zero, 0x1c($s0) +/* 0D44CC 800D38CC AE000020 */ sw $zero, 0x20($s0) +/* 0D44D0 800D38D0 1420000A */ bnez $at, .L800D38FC +/* 0D44D4 800D38D4 01C01825 */ move $v1, $t6 +/* 0D44D8 800D38D8 25CFFFBB */ addiu $t7, $t6, -0x45 +/* 0D44DC 800D38DC 2DE10034 */ sltiu $at, $t7, 0x34 +/* 0D44E0 800D38E0 10200181 */ beqz $at, .L800D3EE8 +/* 0D44E4 800D38E4 000F7880 */ sll $t7, $t7, 2 +/* 0D44E8 800D38E8 3C01800F */ lui $at, 0x800f +/* 0D44EC 800D38EC 002F0821 */ addu $at, $at, $t7 +/* 0D44F0 800D38F0 8C2F96E4 */ lw $t7, -0x691c($at) +/* 0D44F4 800D38F4 01E00008 */ jr $t7 +/* 0D44F8 800D38F8 00000000 */ nop +.L800D38FC: +/* 0D44FC 800D38FC 24010025 */ li $at, 37 +/* 0D4500 800D3900 50610172 */ beql $v1, $at, .L800D3ECC +/* 0D4504 800D3904 8E18000C */ lw $t8, 0xc($s0) +/* 0D4508 800D3908 10000178 */ b .L800D3EEC +/* 0D450C 800D390C 8E0E000C */ lw $t6, 0xc($s0) +/* 0D4510 800D3910 8CD80000 */ lw $t8, ($a2) +/* 0D4514 800D3914 2401FFFC */ li $at, -4 +/* 0D4518 800D3918 27190003 */ addiu $t9, $t8, 3 +/* 0D451C 800D391C 03217024 */ and $t6, $t9, $at +/* 0D4520 800D3920 25CF0004 */ addiu $t7, $t6, 4 +/* 0D4524 800D3924 ACCF0000 */ sw $t7, ($a2) +/* 0D4528 800D3928 8E0E000C */ lw $t6, 0xc($s0) +/* 0D452C 800D392C 8DF9FFFC */ lw $t9, -4($t7) +/* 0D4530 800D3930 00EE7821 */ addu $t7, $a3, $t6 +/* 0D4534 800D3934 A1F90000 */ sb $t9, ($t7) +/* 0D4538 800D3938 8E18000C */ lw $t8, 0xc($s0) +/* 0D453C 800D393C 270E0001 */ addiu $t6, $t8, 1 +/* 0D4540 800D3940 1000016F */ b .L800D3F00 +/* 0D4544 800D3944 AE0E000C */ sw $t6, 0xc($s0) +/* 0D4548 800D3948 92020034 */ lbu $v0, 0x34($s0) +/* 0D454C 800D394C 2401006C */ li $at, 108 +/* 0D4550 800D3950 5441000D */ bnel $v0, $at, .L800D3988 +/* 0D4554 800D3954 2401004C */ li $at, 76 +/* 0D4558 800D3958 8CD90000 */ lw $t9, ($a2) +/* 0D455C 800D395C 2401FFFC */ li $at, -4 +/* 0D4560 800D3960 272F0003 */ addiu $t7, $t9, 3 +/* 0D4564 800D3964 01E1C024 */ and $t8, $t7, $at +/* 0D4568 800D3968 270E0004 */ addiu $t6, $t8, 4 +/* 0D456C 800D396C ACCE0000 */ sw $t6, ($a2) +/* 0D4570 800D3970 8DCFFFFC */ lw $t7, -4($t6) +/* 0D4574 800D3974 000FC7C3 */ sra $t8, $t7, 0x1f +/* 0D4578 800D3978 AE180000 */ sw $t8, ($s0) +/* 0D457C 800D397C 10000019 */ b .L800D39E4 +/* 0D4580 800D3980 AE0F0004 */ sw $t7, 4($s0) +/* 0D4584 800D3984 2401004C */ li $at, 76 +.L800D3988: +/* 0D4588 800D3988 5441000D */ bnel $v0, $at, .L800D39C0 +/* 0D458C 800D398C 8CCF0000 */ lw $t7, ($a2) +/* 0D4590 800D3990 8CCE0000 */ lw $t6, ($a2) +/* 0D4594 800D3994 2401FFF8 */ li $at, -8 +/* 0D4598 800D3998 25CF0007 */ addiu $t7, $t6, 7 +/* 0D459C 800D399C 01E1C024 */ and $t8, $t7, $at +/* 0D45A0 800D39A0 27190008 */ addiu $t9, $t8, 8 +/* 0D45A4 800D39A4 ACD90000 */ sw $t9, ($a2) +/* 0D45A8 800D39A8 8F38FFF8 */ lw $t8, -8($t9) +/* 0D45AC 800D39AC 8F39FFFC */ lw $t9, -4($t9) +/* 0D45B0 800D39B0 AE180000 */ sw $t8, ($s0) +/* 0D45B4 800D39B4 1000000B */ b .L800D39E4 +/* 0D45B8 800D39B8 AE190004 */ sw $t9, 4($s0) +/* 0D45BC 800D39BC 8CCF0000 */ lw $t7, ($a2) +.L800D39C0: +/* 0D45C0 800D39C0 2401FFFC */ li $at, -4 +/* 0D45C4 800D39C4 25EE0003 */ addiu $t6, $t7, 3 +/* 0D45C8 800D39C8 01C1C024 */ and $t8, $t6, $at +/* 0D45CC 800D39CC 27190004 */ addiu $t9, $t8, 4 +/* 0D45D0 800D39D0 ACD90000 */ sw $t9, ($a2) +/* 0D45D4 800D39D4 8F2EFFFC */ lw $t6, -4($t9) +/* 0D45D8 800D39D8 000EC7C3 */ sra $t8, $t6, 0x1f +/* 0D45DC 800D39DC AE180000 */ sw $t8, ($s0) +/* 0D45E0 800D39E0 AE0E0004 */ sw $t6, 4($s0) +.L800D39E4: +/* 0D45E4 800D39E4 920F0034 */ lbu $t7, 0x34($s0) +/* 0D45E8 800D39E8 24010068 */ li $at, 104 +/* 0D45EC 800D39EC 55E10008 */ bnel $t7, $at, .L800D3A10 +/* 0D45F0 800D39F0 8E0E0000 */ lw $t6, ($s0) +/* 0D45F4 800D39F4 8E0F0004 */ lw $t7, 4($s0) +/* 0D45F8 800D39F8 000FCC00 */ sll $t9, $t7, 0x10 +/* 0D45FC 800D39FC 00197403 */ sra $t6, $t9, 0x10 +/* 0D4600 800D3A00 000EC7C3 */ sra $t8, $t6, 0x1f +/* 0D4604 800D3A04 AE180000 */ sw $t8, ($s0) +/* 0D4608 800D3A08 AE0E0004 */ sw $t6, 4($s0) +/* 0D460C 800D3A0C 8E0E0000 */ lw $t6, ($s0) +.L800D3A10: +/* 0D4610 800D3A10 5DC0000E */ bgtzl $t6, .L800D3A4C +/* 0D4614 800D3A14 8E020030 */ lw $v0, 0x30($s0) +/* 0D4618 800D3A18 05C20004 */ bltzl $t6, .L800D3A2C +/* 0D461C 800D3A1C 8E19000C */ lw $t9, 0xc($s0) +/* 0D4620 800D3A20 1000000A */ b .L800D3A4C +/* 0D4624 800D3A24 8E020030 */ lw $v0, 0x30($s0) +/* 0D4628 800D3A28 8E19000C */ lw $t9, 0xc($s0) +.L800D3A2C: +/* 0D462C 800D3A2C 2418002D */ li $t8, 45 +/* 0D4630 800D3A30 00F97021 */ addu $t6, $a3, $t9 +/* 0D4634 800D3A34 A1D80000 */ sb $t8, ($t6) +/* 0D4638 800D3A38 8E0F000C */ lw $t7, 0xc($s0) +/* 0D463C 800D3A3C 25F90001 */ addiu $t9, $t7, 1 +/* 0D4640 800D3A40 10000016 */ b .L800D3A9C +/* 0D4644 800D3A44 AE19000C */ sw $t9, 0xc($s0) +/* 0D4648 800D3A48 8E020030 */ lw $v0, 0x30($s0) +.L800D3A4C: +/* 0D464C 800D3A4C 30580002 */ andi $t8, $v0, 2 +/* 0D4650 800D3A50 13000009 */ beqz $t8, .L800D3A78 +/* 0D4654 800D3A54 304E0001 */ andi $t6, $v0, 1 +/* 0D4658 800D3A58 8E0F000C */ lw $t7, 0xc($s0) +/* 0D465C 800D3A5C 240E002B */ li $t6, 43 +/* 0D4660 800D3A60 00EFC821 */ addu $t9, $a3, $t7 +/* 0D4664 800D3A64 A32E0000 */ sb $t6, ($t9) +/* 0D4668 800D3A68 8E18000C */ lw $t8, 0xc($s0) +/* 0D466C 800D3A6C 270F0001 */ addiu $t7, $t8, 1 +/* 0D4670 800D3A70 1000000A */ b .L800D3A9C +/* 0D4674 800D3A74 AE0F000C */ sw $t7, 0xc($s0) +.L800D3A78: +/* 0D4678 800D3A78 51C00009 */ beql $t6, $zero, .L800D3AA0 +/* 0D467C 800D3A7C 8E19000C */ lw $t9, 0xc($s0) +/* 0D4680 800D3A80 8E18000C */ lw $t8, 0xc($s0) +/* 0D4684 800D3A84 24190020 */ li $t9, 32 +/* 0D4688 800D3A88 00F87821 */ addu $t7, $a3, $t8 +/* 0D468C 800D3A8C A1F90000 */ sb $t9, ($t7) +/* 0D4690 800D3A90 8E0E000C */ lw $t6, 0xc($s0) +/* 0D4694 800D3A94 25D80001 */ addiu $t8, $t6, 1 +/* 0D4698 800D3A98 AE18000C */ sw $t8, 0xc($s0) +.L800D3A9C: +/* 0D469C 800D3A9C 8E19000C */ lw $t9, 0xc($s0) +.L800D3AA0: +/* 0D46A0 800D3AA0 02002025 */ move $a0, $s0 +/* 0D46A4 800D3AA4 03277821 */ addu $t7, $t9, $a3 +/* 0D46A8 800D3AA8 0C0359C0 */ jal func_800D6700 +/* 0D46AC 800D3AAC AE0F0008 */ sw $t7, 8($s0) +/* 0D46B0 800D3AB0 10000114 */ b .L800D3F04 +/* 0D46B4 800D3AB4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D46B8 800D3AB8 92020034 */ lbu $v0, 0x34($s0) +/* 0D46BC 800D3ABC 2401006C */ li $at, 108 +/* 0D46C0 800D3AC0 5441000D */ bnel $v0, $at, .L800D3AF8 +/* 0D46C4 800D3AC4 2401004C */ li $at, 76 +/* 0D46C8 800D3AC8 8CCE0000 */ lw $t6, ($a2) +/* 0D46CC 800D3ACC 2401FFFC */ li $at, -4 +/* 0D46D0 800D3AD0 25D80003 */ addiu $t8, $t6, 3 +/* 0D46D4 800D3AD4 0301C824 */ and $t9, $t8, $at +/* 0D46D8 800D3AD8 272F0004 */ addiu $t7, $t9, 4 +/* 0D46DC 800D3ADC ACCF0000 */ sw $t7, ($a2) +/* 0D46E0 800D3AE0 8DF8FFFC */ lw $t8, -4($t7) +/* 0D46E4 800D3AE4 001877C3 */ sra $t6, $t8, 0x1f +/* 0D46E8 800D3AE8 AE0E0000 */ sw $t6, ($s0) +/* 0D46EC 800D3AEC 10000019 */ b .L800D3B54 +/* 0D46F0 800D3AF0 AE180004 */ sw $t8, 4($s0) +/* 0D46F4 800D3AF4 2401004C */ li $at, 76 +.L800D3AF8: +/* 0D46F8 800D3AF8 5441000D */ bnel $v0, $at, .L800D3B30 +/* 0D46FC 800D3AFC 8CCE0000 */ lw $t6, ($a2) +/* 0D4700 800D3B00 8CD90000 */ lw $t9, ($a2) +/* 0D4704 800D3B04 2401FFF8 */ li $at, -8 +/* 0D4708 800D3B08 27380007 */ addiu $t8, $t9, 7 +/* 0D470C 800D3B0C 03017024 */ and $t6, $t8, $at +/* 0D4710 800D3B10 25CF0008 */ addiu $t7, $t6, 8 +/* 0D4714 800D3B14 ACCF0000 */ sw $t7, ($a2) +/* 0D4718 800D3B18 8DF9FFFC */ lw $t9, -4($t7) +/* 0D471C 800D3B1C 8DF8FFF8 */ lw $t8, -8($t7) +/* 0D4720 800D3B20 AE190004 */ sw $t9, 4($s0) +/* 0D4724 800D3B24 1000000B */ b .L800D3B54 +/* 0D4728 800D3B28 AE180000 */ sw $t8, ($s0) +/* 0D472C 800D3B2C 8CCE0000 */ lw $t6, ($a2) +.L800D3B30: +/* 0D4730 800D3B30 2401FFFC */ li $at, -4 +/* 0D4734 800D3B34 25CF0003 */ addiu $t7, $t6, 3 +/* 0D4738 800D3B38 01E1C024 */ and $t8, $t7, $at +/* 0D473C 800D3B3C 27190004 */ addiu $t9, $t8, 4 +/* 0D4740 800D3B40 ACD90000 */ sw $t9, ($a2) +/* 0D4744 800D3B44 8F2FFFFC */ lw $t7, -4($t9) +/* 0D4748 800D3B48 000FC7C3 */ sra $t8, $t7, 0x1f +/* 0D474C 800D3B4C AE180000 */ sw $t8, ($s0) +/* 0D4750 800D3B50 AE0F0004 */ sw $t7, 4($s0) +.L800D3B54: +/* 0D4754 800D3B54 92020034 */ lbu $v0, 0x34($s0) +/* 0D4758 800D3B58 24010068 */ li $at, 104 +/* 0D475C 800D3B5C 14410007 */ bne $v0, $at, .L800D3B7C +/* 0D4760 800D3B60 00000000 */ nop +/* 0D4764 800D3B64 8E0F0004 */ lw $t7, 4($s0) +/* 0D4768 800D3B68 240E0000 */ li $t6, 0 +/* 0D476C 800D3B6C AE0E0000 */ sw $t6, ($s0) +/* 0D4770 800D3B70 31F9FFFF */ andi $t9, $t7, 0xffff +/* 0D4774 800D3B74 10000007 */ b .L800D3B94 +/* 0D4778 800D3B78 AE190004 */ sw $t9, 4($s0) +.L800D3B7C: +/* 0D477C 800D3B7C 54400006 */ bnezl $v0, .L800D3B98 +/* 0D4780 800D3B80 8E0F0030 */ lw $t7, 0x30($s0) +/* 0D4784 800D3B84 8E190004 */ lw $t9, 4($s0) +/* 0D4788 800D3B88 24180000 */ li $t8, 0 +/* 0D478C 800D3B8C AE180000 */ sw $t8, ($s0) +/* 0D4790 800D3B90 AE190004 */ sw $t9, 4($s0) +.L800D3B94: +/* 0D4794 800D3B94 8E0F0030 */ lw $t7, 0x30($s0) +.L800D3B98: +/* 0D4798 800D3B98 31EE0008 */ andi $t6, $t7, 8 +/* 0D479C 800D3B9C 51C00014 */ beql $t6, $zero, .L800D3BF0 +/* 0D47A0 800D3BA0 8E18000C */ lw $t8, 0xc($s0) +/* 0D47A4 800D3BA4 8E19000C */ lw $t9, 0xc($s0) +/* 0D47A8 800D3BA8 24180030 */ li $t8, 48 +/* 0D47AC 800D3BAC 24010078 */ li $at, 120 +/* 0D47B0 800D3BB0 00F97821 */ addu $t7, $a3, $t9 +/* 0D47B4 800D3BB4 A1F80000 */ sb $t8, ($t7) +/* 0D47B8 800D3BB8 8E0E000C */ lw $t6, 0xc($s0) +/* 0D47BC 800D3BBC 25D90001 */ addiu $t9, $t6, 1 +/* 0D47C0 800D3BC0 10610004 */ beq $v1, $at, .L800D3BD4 +/* 0D47C4 800D3BC4 AE19000C */ sw $t9, 0xc($s0) +/* 0D47C8 800D3BC8 24010058 */ li $at, 88 +/* 0D47CC 800D3BCC 54610008 */ bnel $v1, $at, .L800D3BF0 +/* 0D47D0 800D3BD0 8E18000C */ lw $t8, 0xc($s0) +.L800D3BD4: +/* 0D47D4 800D3BD4 8E18000C */ lw $t8, 0xc($s0) +/* 0D47D8 800D3BD8 00F87821 */ addu $t7, $a3, $t8 +/* 0D47DC 800D3BDC A1E50000 */ sb $a1, ($t7) +/* 0D47E0 800D3BE0 8E0E000C */ lw $t6, 0xc($s0) +/* 0D47E4 800D3BE4 25D90001 */ addiu $t9, $t6, 1 +/* 0D47E8 800D3BE8 AE19000C */ sw $t9, 0xc($s0) +/* 0D47EC 800D3BEC 8E18000C */ lw $t8, 0xc($s0) +.L800D3BF0: +/* 0D47F0 800D3BF0 02002025 */ move $a0, $s0 +/* 0D47F4 800D3BF4 03077821 */ addu $t7, $t8, $a3 +/* 0D47F8 800D3BF8 0C0359C0 */ jal func_800D6700 +/* 0D47FC 800D3BFC AE0F0008 */ sw $t7, 8($s0) +/* 0D4800 800D3C00 100000C0 */ b .L800D3F04 +/* 0D4804 800D3C04 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D4808 800D3C08 920E0034 */ lbu $t6, 0x34($s0) +/* 0D480C 800D3C0C 2401004C */ li $at, 76 +/* 0D4810 800D3C10 55C10019 */ bnel $t6, $at, .L800D3C78 +/* 0D4814 800D3C14 8CC20000 */ lw $v0, ($a2) +/* 0D4818 800D3C18 8CC20000 */ lw $v0, ($a2) +/* 0D481C 800D3C1C 30590001 */ andi $t9, $v0, 1 +/* 0D4820 800D3C20 13200005 */ beqz $t9, .L800D3C38 +/* 0D4824 800D3C24 00401825 */ move $v1, $v0 +/* 0D4828 800D3C28 24780007 */ addiu $t8, $v1, 7 +/* 0D482C 800D3C2C ACD80000 */ sw $t8, ($a2) +/* 0D4830 800D3C30 1000000D */ b .L800D3C68 +/* 0D4834 800D3C34 2702FFEA */ addiu $v0, $t8, -0x16 +.L800D3C38: +/* 0D4838 800D3C38 306F0002 */ andi $t7, $v1, 2 +/* 0D483C 800D3C3C 11E00005 */ beqz $t7, .L800D3C54 +/* 0D4840 800D3C40 24590007 */ addiu $t9, $v0, 7 +/* 0D4844 800D3C44 246E000A */ addiu $t6, $v1, 0xa +/* 0D4848 800D3C48 ACCE0000 */ sw $t6, ($a2) +/* 0D484C 800D3C4C 10000005 */ b .L800D3C64 +/* 0D4850 800D3C50 25C4FFD8 */ addiu $a0, $t6, -0x28 +.L800D3C54: +/* 0D4854 800D3C54 2401FFF8 */ li $at, -8 +/* 0D4858 800D3C58 0321C024 */ and $t8, $t9, $at +/* 0D485C 800D3C5C 27040008 */ addiu $a0, $t8, 8 +/* 0D4860 800D3C60 ACC40000 */ sw $a0, ($a2) +.L800D3C64: +/* 0D4864 800D3C64 00801025 */ move $v0, $a0 +.L800D3C68: +/* 0D4868 800D3C68 D444FFF8 */ ldc1 $f4, -8($v0) +/* 0D486C 800D3C6C 10000017 */ b .L800D3CCC +/* 0D4870 800D3C70 F6040000 */ sdc1 $f4, ($s0) +/* 0D4874 800D3C74 8CC20000 */ lw $v0, ($a2) +.L800D3C78: +/* 0D4878 800D3C78 304E0001 */ andi $t6, $v0, 1 +/* 0D487C 800D3C7C 11C00005 */ beqz $t6, .L800D3C94 +/* 0D4880 800D3C80 00401825 */ move $v1, $v0 +/* 0D4884 800D3C84 24790007 */ addiu $t9, $v1, 7 +/* 0D4888 800D3C88 ACD90000 */ sw $t9, ($a2) +/* 0D488C 800D3C8C 1000000D */ b .L800D3CC4 +/* 0D4890 800D3C90 2722FFEA */ addiu $v0, $t9, -0x16 +.L800D3C94: +/* 0D4894 800D3C94 30780002 */ andi $t8, $v1, 2 +/* 0D4898 800D3C98 13000005 */ beqz $t8, .L800D3CB0 +/* 0D489C 800D3C9C 244E0007 */ addiu $t6, $v0, 7 +/* 0D48A0 800D3CA0 246F000A */ addiu $t7, $v1, 0xa +/* 0D48A4 800D3CA4 ACCF0000 */ sw $t7, ($a2) +/* 0D48A8 800D3CA8 10000005 */ b .L800D3CC0 +/* 0D48AC 800D3CAC 25E4FFD8 */ addiu $a0, $t7, -0x28 +.L800D3CB0: +/* 0D48B0 800D3CB0 2401FFF8 */ li $at, -8 +/* 0D48B4 800D3CB4 01C1C824 */ and $t9, $t6, $at +/* 0D48B8 800D3CB8 27240008 */ addiu $a0, $t9, 8 +/* 0D48BC 800D3CBC ACC40000 */ sw $a0, ($a2) +.L800D3CC0: +/* 0D48C0 800D3CC0 00801025 */ move $v0, $a0 +.L800D3CC4: +/* 0D48C4 800D3CC4 D446FFF8 */ ldc1 $f6, -8($v0) +/* 0D48C8 800D3CC8 F6060000 */ sdc1 $f6, ($s0) +.L800D3CCC: +/* 0D48CC 800D3CCC 960F0000 */ lhu $t7, ($s0) +/* 0D48D0 800D3CD0 31EE8000 */ andi $t6, $t7, 0x8000 +/* 0D48D4 800D3CD4 51C0000A */ beql $t6, $zero, .L800D3D00 +/* 0D48D8 800D3CD8 8E020030 */ lw $v0, 0x30($s0) +/* 0D48DC 800D3CDC 8E18000C */ lw $t8, 0xc($s0) +/* 0D48E0 800D3CE0 2419002D */ li $t9, 45 +/* 0D48E4 800D3CE4 00F87821 */ addu $t7, $a3, $t8 +/* 0D48E8 800D3CE8 A1F90000 */ sb $t9, ($t7) +/* 0D48EC 800D3CEC 8E0E000C */ lw $t6, 0xc($s0) +/* 0D48F0 800D3CF0 25D80001 */ addiu $t8, $t6, 1 +/* 0D48F4 800D3CF4 10000016 */ b .L800D3D50 +/* 0D48F8 800D3CF8 AE18000C */ sw $t8, 0xc($s0) +/* 0D48FC 800D3CFC 8E020030 */ lw $v0, 0x30($s0) +.L800D3D00: +/* 0D4900 800D3D00 30590002 */ andi $t9, $v0, 2 +/* 0D4904 800D3D04 13200009 */ beqz $t9, .L800D3D2C +/* 0D4908 800D3D08 304F0001 */ andi $t7, $v0, 1 +/* 0D490C 800D3D0C 8E0E000C */ lw $t6, 0xc($s0) +/* 0D4910 800D3D10 240F002B */ li $t7, 43 +/* 0D4914 800D3D14 00EEC021 */ addu $t8, $a3, $t6 +/* 0D4918 800D3D18 A30F0000 */ sb $t7, ($t8) +/* 0D491C 800D3D1C 8E19000C */ lw $t9, 0xc($s0) +/* 0D4920 800D3D20 272E0001 */ addiu $t6, $t9, 1 +/* 0D4924 800D3D24 1000000A */ b .L800D3D50 +/* 0D4928 800D3D28 AE0E000C */ sw $t6, 0xc($s0) +.L800D3D2C: +/* 0D492C 800D3D2C 51E00009 */ beql $t7, $zero, .L800D3D54 +/* 0D4930 800D3D30 8E18000C */ lw $t8, 0xc($s0) +/* 0D4934 800D3D34 8E19000C */ lw $t9, 0xc($s0) +/* 0D4938 800D3D38 24180020 */ li $t8, 32 +/* 0D493C 800D3D3C 00F97021 */ addu $t6, $a3, $t9 +/* 0D4940 800D3D40 A1D80000 */ sb $t8, ($t6) +/* 0D4944 800D3D44 8E0F000C */ lw $t7, 0xc($s0) +/* 0D4948 800D3D48 25F90001 */ addiu $t9, $t7, 1 +/* 0D494C 800D3D4C AE19000C */ sw $t9, 0xc($s0) +.L800D3D50: +/* 0D4950 800D3D50 8E18000C */ lw $t8, 0xc($s0) +.L800D3D54: +/* 0D4954 800D3D54 02002025 */ move $a0, $s0 +/* 0D4958 800D3D58 03077021 */ addu $t6, $t8, $a3 +/* 0D495C 800D3D5C 0C035BC4 */ jal func_800D6F10 +/* 0D4960 800D3D60 AE0E0008 */ sw $t6, 8($s0) +/* 0D4964 800D3D64 10000067 */ b .L800D3F04 +/* 0D4968 800D3D68 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D496C 800D3D6C 92020034 */ lbu $v0, 0x34($s0) +/* 0D4970 800D3D70 24010068 */ li $at, 104 +/* 0D4974 800D3D74 5441000C */ bnel $v0, $at, .L800D3DA8 +/* 0D4978 800D3D78 2401006C */ li $at, 108 +/* 0D497C 800D3D7C 8CCF0000 */ lw $t7, ($a2) +/* 0D4980 800D3D80 2401FFFC */ li $at, -4 +/* 0D4984 800D3D84 25F90003 */ addiu $t9, $t7, 3 +/* 0D4988 800D3D88 0321C024 */ and $t8, $t9, $at +/* 0D498C 800D3D8C 270E0004 */ addiu $t6, $t8, 4 +/* 0D4990 800D3D90 ACCE0000 */ sw $t6, ($a2) +/* 0D4994 800D3D94 8DD9FFFC */ lw $t9, -4($t6) +/* 0D4998 800D3D98 8E0F002C */ lw $t7, 0x2c($s0) +/* 0D499C 800D3D9C 10000058 */ b .L800D3F00 +/* 0D49A0 800D3DA0 A72F0000 */ sh $t7, ($t9) +/* 0D49A4 800D3DA4 2401006C */ li $at, 108 +.L800D3DA8: +/* 0D49A8 800D3DA8 5441000C */ bnel $v0, $at, .L800D3DDC +/* 0D49AC 800D3DAC 2401004C */ li $at, 76 +/* 0D49B0 800D3DB0 8CD80000 */ lw $t8, ($a2) +/* 0D49B4 800D3DB4 2401FFFC */ li $at, -4 +/* 0D49B8 800D3DB8 270E0003 */ addiu $t6, $t8, 3 +/* 0D49BC 800D3DBC 01C17824 */ and $t7, $t6, $at +/* 0D49C0 800D3DC0 25F90004 */ addiu $t9, $t7, 4 +/* 0D49C4 800D3DC4 ACD90000 */ sw $t9, ($a2) +/* 0D49C8 800D3DC8 8F2EFFFC */ lw $t6, -4($t9) +/* 0D49CC 800D3DCC 8E18002C */ lw $t8, 0x2c($s0) +/* 0D49D0 800D3DD0 1000004B */ b .L800D3F00 +/* 0D49D4 800D3DD4 ADD80000 */ sw $t8, ($t6) +/* 0D49D8 800D3DD8 2401004C */ li $at, 76 +.L800D3DDC: +/* 0D49DC 800D3DDC 5441000E */ bnel $v0, $at, .L800D3E18 +/* 0D49E0 800D3DE0 8CCF0000 */ lw $t7, ($a2) +/* 0D49E4 800D3DE4 8CCF0000 */ lw $t7, ($a2) +/* 0D49E8 800D3DE8 2401FFFC */ li $at, -4 +/* 0D49EC 800D3DEC 25F90003 */ addiu $t9, $t7, 3 +/* 0D49F0 800D3DF0 0321C024 */ and $t8, $t9, $at +/* 0D49F4 800D3DF4 270E0004 */ addiu $t6, $t8, 4 +/* 0D49F8 800D3DF8 ACCE0000 */ sw $t6, ($a2) +/* 0D49FC 800D3DFC 8DCEFFFC */ lw $t6, -4($t6) +/* 0D4A00 800D3E00 8E0F002C */ lw $t7, 0x2c($s0) +/* 0D4A04 800D3E04 24180000 */ li $t8, 0 +/* 0D4A08 800D3E08 ADD80000 */ sw $t8, ($t6) +/* 0D4A0C 800D3E0C 1000003C */ b .L800D3F00 +/* 0D4A10 800D3E10 ADCF0004 */ sw $t7, 4($t6) +/* 0D4A14 800D3E14 8CCF0000 */ lw $t7, ($a2) +.L800D3E18: +/* 0D4A18 800D3E18 2401FFFC */ li $at, -4 +/* 0D4A1C 800D3E1C 25F80003 */ addiu $t8, $t7, 3 +/* 0D4A20 800D3E20 0301C824 */ and $t9, $t8, $at +/* 0D4A24 800D3E24 272E0004 */ addiu $t6, $t9, 4 +/* 0D4A28 800D3E28 ACCE0000 */ sw $t6, ($a2) +/* 0D4A2C 800D3E2C 8DD8FFFC */ lw $t8, -4($t6) +/* 0D4A30 800D3E30 8E0F002C */ lw $t7, 0x2c($s0) +/* 0D4A34 800D3E34 10000032 */ b .L800D3F00 +/* 0D4A38 800D3E38 AF0F0000 */ sw $t7, ($t8) +/* 0D4A3C 800D3E3C 8CD90000 */ lw $t9, ($a2) +/* 0D4A40 800D3E40 2401FFFC */ li $at, -4 +/* 0D4A44 800D3E44 02002025 */ move $a0, $s0 +/* 0D4A48 800D3E48 272E0003 */ addiu $t6, $t9, 3 +/* 0D4A4C 800D3E4C 01C17824 */ and $t7, $t6, $at +/* 0D4A50 800D3E50 25F80004 */ addiu $t8, $t7, 4 +/* 0D4A54 800D3E54 ACD80000 */ sw $t8, ($a2) +/* 0D4A58 800D3E58 8F0EFFFC */ lw $t6, -4($t8) +/* 0D4A5C 800D3E5C 8E0F000C */ lw $t7, 0xc($s0) +/* 0D4A60 800D3E60 24050078 */ li $a1, 120 +/* 0D4A64 800D3E64 000EC7C3 */ sra $t8, $t6, 0x1f +/* 0D4A68 800D3E68 AE0E0004 */ sw $t6, 4($s0) +/* 0D4A6C 800D3E6C 01E77021 */ addu $t6, $t7, $a3 +/* 0D4A70 800D3E70 AE180000 */ sw $t8, ($s0) +/* 0D4A74 800D3E74 0C0359C0 */ jal func_800D6700 +/* 0D4A78 800D3E78 AE0E0008 */ sw $t6, 8($s0) +/* 0D4A7C 800D3E7C 10000021 */ b .L800D3F04 +/* 0D4A80 800D3E80 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D4A84 800D3E84 8CD80000 */ lw $t8, ($a2) +/* 0D4A88 800D3E88 2401FFFC */ li $at, -4 +/* 0D4A8C 800D3E8C 27190003 */ addiu $t9, $t8, 3 +/* 0D4A90 800D3E90 03217824 */ and $t7, $t9, $at +/* 0D4A94 800D3E94 25EE0004 */ addiu $t6, $t7, 4 +/* 0D4A98 800D3E98 ACCE0000 */ sw $t6, ($a2) +/* 0D4A9C 800D3E9C 8DC4FFFC */ lw $a0, -4($t6) +/* 0D4AA0 800D3EA0 0C033867 */ jal strlen +/* 0D4AA4 800D3EA4 AE040008 */ sw $a0, 8($s0) +/* 0D4AA8 800D3EA8 8E030024 */ lw $v1, 0x24($s0) +/* 0D4AAC 800D3EAC AE020014 */ sw $v0, 0x14($s0) +/* 0D4AB0 800D3EB0 04600013 */ bltz $v1, .L800D3F00 +/* 0D4AB4 800D3EB4 0062082A */ slt $at, $v1, $v0 +/* 0D4AB8 800D3EB8 50200012 */ beql $at, $zero, .L800D3F04 +/* 0D4ABC 800D3EBC 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D4AC0 800D3EC0 1000000F */ b .L800D3F00 +/* 0D4AC4 800D3EC4 AE030014 */ sw $v1, 0x14($s0) +/* 0D4AC8 800D3EC8 8E18000C */ lw $t8, 0xc($s0) +.L800D3ECC: +/* 0D4ACC 800D3ECC 240E0025 */ li $t6, 37 +/* 0D4AD0 800D3ED0 00F8C821 */ addu $t9, $a3, $t8 +/* 0D4AD4 800D3ED4 A32E0000 */ sb $t6, ($t9) +/* 0D4AD8 800D3ED8 8E0F000C */ lw $t7, 0xc($s0) +/* 0D4ADC 800D3EDC 25F80001 */ addiu $t8, $t7, 1 +/* 0D4AE0 800D3EE0 10000007 */ b .L800D3F00 +/* 0D4AE4 800D3EE4 AE18000C */ sw $t8, 0xc($s0) +.L800D3EE8: +/* 0D4AE8 800D3EE8 8E0E000C */ lw $t6, 0xc($s0) +.L800D3EEC: +/* 0D4AEC 800D3EEC 00EEC821 */ addu $t9, $a3, $t6 +/* 0D4AF0 800D3EF0 A3250000 */ sb $a1, ($t9) +/* 0D4AF4 800D3EF4 8E0F000C */ lw $t7, 0xc($s0) +/* 0D4AF8 800D3EF8 25F80001 */ addiu $t8, $t7, 1 +/* 0D4AFC 800D3EFC AE18000C */ sw $t8, 0xc($s0) +.L800D3F00: +/* 0D4B00 800D3F00 8FBF0014 */ lw $ra, 0x14($sp) +.L800D3F04: +/* 0D4B04 800D3F04 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0D4B08 800D3F08 03E00008 */ jr $ra +/* 0D4B0C 800D3F0C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/func_800D3F10.s b/asm/non_matchings/unknown_0D3020/func_800D3F10.s new file mode 100644 index 00000000..4f154002 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D3F10.s @@ -0,0 +1,467 @@ +glabel func_800D3F10 +/* 0D4B10 800D3F10 27BDFF20 */ addiu $sp, $sp, -0xe0 +/* 0D4B14 800D3F14 AFB70034 */ sw $s7, 0x34($sp) +/* 0D4B18 800D3F18 AFB60030 */ sw $s6, 0x30($sp) +/* 0D4B1C 800D3F1C AFB5002C */ sw $s5, 0x2c($sp) +/* 0D4B20 800D3F20 AFBE0038 */ sw $fp, 0x38($sp) +/* 0D4B24 800D3F24 AFB40028 */ sw $s4, 0x28($sp) +/* 0D4B28 800D3F28 AFB30024 */ sw $s3, 0x24($sp) +/* 0D4B2C 800D3F2C AFA700EC */ sw $a3, 0xec($sp) +/* 0D4B30 800D3F30 3C15800E */ lui $s5, %hi(D_800E48E4) # $s5, 0x800e +/* 0D4B34 800D3F34 3C16800F */ lui $s6, %hi(D_800E96C4) # $s6, 0x800f +/* 0D4B38 800D3F38 3C17800E */ lui $s7, %hi(D_800E48C0) # $s7, 0x800e +/* 0D4B3C 800D3F3C 00C03825 */ move $a3, $a2 +/* 0D4B40 800D3F40 00A09825 */ move $s3, $a1 +/* 0D4B44 800D3F44 0080A025 */ move $s4, $a0 +/* 0D4B48 800D3F48 AFBF003C */ sw $ra, 0x3c($sp) +/* 0D4B4C 800D3F4C AFB20020 */ sw $s2, 0x20($sp) +/* 0D4B50 800D3F50 AFB1001C */ sw $s1, 0x1c($sp) +/* 0D4B54 800D3F54 AFB00018 */ sw $s0, 0x18($sp) +/* 0D4B58 800D3F58 AFA600E8 */ sw $a2, 0xe8($sp) +/* 0D4B5C 800D3F5C AFA000D4 */ sw $zero, 0xd4($sp) +/* 0D4B60 800D3F60 26F748C0 */ addiu $s7, %lo(D_800E48C0) # addiu $s7, $s7, 0x48c0 +/* 0D4B64 800D3F64 26D696C4 */ addiu $s6, %lo(D_800E96C4) # addiu $s6, $s6, -0x693c +/* 0D4B68 800D3F68 26B548E4 */ addiu $s5, %lo(D_800E48E4) # addiu $s5, $s5, 0x48e4 +/* 0D4B6C 800D3F6C 241E000A */ li $fp, 10 +.L800D3F70: +/* 0D4B70 800D3F70 90F00000 */ lbu $s0, ($a3) +/* 0D4B74 800D3F74 24F20001 */ addiu $s2, $a3, 1 +/* 0D4B78 800D3F78 24030025 */ li $v1, 37 +/* 0D4B7C 800D3F7C 1A000009 */ blez $s0, .L800D3FA4 +/* 0D4B80 800D3F80 02602025 */ move $a0, $s3 +.L800D3F84: +/* 0D4B84 800D3F84 54700004 */ bnel $v1, $s0, .L800D3F98 +/* 0D4B88 800D3F88 92500000 */ lbu $s0, ($s2) +/* 0D4B8C 800D3F8C 10000005 */ b .L800D3FA4 +/* 0D4B90 800D3F90 2652FFFF */ addiu $s2, $s2, -1 +/* 0D4B94 800D3F94 92500000 */ lbu $s0, ($s2) +.L800D3F98: +/* 0D4B98 800D3F98 26520001 */ addiu $s2, $s2, 1 +/* 0D4B9C 800D3F9C 1E00FFF9 */ bgtz $s0, .L800D3F84 +/* 0D4BA0 800D3FA0 00000000 */ nop +.L800D3FA4: +/* 0D4BA4 800D3FA4 02471023 */ subu $v0, $s2, $a3 +/* 0D4BA8 800D3FA8 1840000C */ blez $v0, .L800D3FDC +/* 0D4BAC 800D3FAC 00E02825 */ move $a1, $a3 +/* 0D4BB0 800D3FB0 00408825 */ move $s1, $v0 +/* 0D4BB4 800D3FB4 0280F809 */ jalr $s4 +/* 0D4BB8 800D3FB8 00403025 */ move $a2, $v0 +/* 0D4BBC 800D3FBC 10400005 */ beqz $v0, .L800D3FD4 +/* 0D4BC0 800D3FC0 00409825 */ move $s3, $v0 +/* 0D4BC4 800D3FC4 8FAE00D4 */ lw $t6, 0xd4($sp) +/* 0D4BC8 800D3FC8 01D17821 */ addu $t7, $t6, $s1 +/* 0D4BCC 800D3FCC 10000003 */ b .L800D3FDC +/* 0D4BD0 800D3FD0 AFAF00D4 */ sw $t7, 0xd4($sp) +.L800D3FD4: +/* 0D4BD4 800D3FD4 10000153 */ b .L800D4524 +/* 0D4BD8 800D3FD8 8FA200D4 */ lw $v0, 0xd4($sp) +.L800D3FDC: +/* 0D4BDC 800D3FDC 16000003 */ bnez $s0, .L800D3FEC +/* 0D4BE0 800D3FE0 26520001 */ addiu $s2, $s2, 1 +/* 0D4BE4 800D3FE4 1000014F */ b .L800D4524 +/* 0D4BE8 800D3FE8 8FA200D4 */ lw $v0, 0xd4($sp) +.L800D3FEC: +/* 0D4BEC 800D3FEC AFA000D8 */ sw $zero, 0xd8($sp) +/* 0D4BF0 800D3FF0 92450000 */ lbu $a1, ($s2) +/* 0D4BF4 800D3FF4 0C033871 */ jal strchr +/* 0D4BF8 800D3FF8 02C02025 */ move $a0, $s6 +/* 0D4BFC 800D3FFC 1040000F */ beqz $v0, .L800D403C +/* 0D4C00 800D4000 00408025 */ move $s0, $v0 +.L800D4004: +/* 0D4C04 800D4004 0216C823 */ subu $t9, $s0, $s6 +/* 0D4C08 800D4008 00197080 */ sll $t6, $t9, 2 +/* 0D4C0C 800D400C 3C0F800F */ lui $t7, 0x800f +/* 0D4C10 800D4010 01EE7821 */ addu $t7, $t7, $t6 +/* 0D4C14 800D4014 8DEF96CC */ lw $t7, -0x6934($t7) +/* 0D4C18 800D4018 8FB800D8 */ lw $t8, 0xd8($sp) +/* 0D4C1C 800D401C 26520001 */ addiu $s2, $s2, 1 +/* 0D4C20 800D4020 02C02025 */ move $a0, $s6 +/* 0D4C24 800D4024 030FC825 */ or $t9, $t8, $t7 +/* 0D4C28 800D4028 AFB900D8 */ sw $t9, 0xd8($sp) +/* 0D4C2C 800D402C 0C033871 */ jal strchr +/* 0D4C30 800D4030 92450000 */ lbu $a1, ($s2) +/* 0D4C34 800D4034 1440FFF3 */ bnez $v0, .L800D4004 +/* 0D4C38 800D4038 00408025 */ move $s0, $v0 +.L800D403C: +/* 0D4C3C 800D403C 924E0000 */ lbu $t6, ($s2) +/* 0D4C40 800D4040 2402002A */ li $v0, 42 +/* 0D4C44 800D4044 8FB800EC */ lw $t8, 0xec($sp) +/* 0D4C48 800D4048 144E0011 */ bne $v0, $t6, .L800D4090 +/* 0D4C4C 800D404C 3C04800F */ lui $a0, %hi(D_800E96C0) # $a0, 0x800f +/* 0D4C50 800D4050 270F0003 */ addiu $t7, $t8, 3 +/* 0D4C54 800D4054 2401FFFC */ li $at, -4 +/* 0D4C58 800D4058 01E1C824 */ and $t9, $t7, $at +/* 0D4C5C 800D405C 272E0004 */ addiu $t6, $t9, 4 +/* 0D4C60 800D4060 AFAE00EC */ sw $t6, 0xec($sp) +/* 0D4C64 800D4064 8F380000 */ lw $t8, ($t9) +/* 0D4C68 800D4068 26520001 */ addiu $s2, $s2, 1 +/* 0D4C6C 800D406C 07010006 */ bgez $t8, .L800D4088 +/* 0D4C70 800D4070 AFB800D0 */ sw $t8, 0xd0($sp) +/* 0D4C74 800D4074 8FAE00D8 */ lw $t6, 0xd8($sp) +/* 0D4C78 800D4078 00187823 */ negu $t7, $t8 +/* 0D4C7C 800D407C AFAF00D0 */ sw $t7, 0xd0($sp) +/* 0D4C80 800D4080 35D90004 */ ori $t9, $t6, 4 +/* 0D4C84 800D4084 AFB900D8 */ sw $t9, 0xd8($sp) +.L800D4088: +/* 0D4C88 800D4088 10000018 */ b .L800D40EC +/* 0D4C8C 800D408C 92450000 */ lbu $a1, ($s2) +.L800D4090: +/* 0D4C90 800D4090 AFA000D0 */ sw $zero, 0xd0($sp) +/* 0D4C94 800D4094 92450000 */ lbu $a1, ($s2) +/* 0D4C98 800D4098 28A10030 */ slti $at, $a1, 0x30 +/* 0D4C9C 800D409C 14200013 */ bnez $at, .L800D40EC +/* 0D4CA0 800D40A0 28A1003A */ slti $at, $a1, 0x3a +/* 0D4CA4 800D40A4 50200012 */ beql $at, $zero, .L800D40F0 +/* 0D4CA8 800D40A8 2401002E */ li $at, 46 +/* 0D4CAC 800D40AC 8FB800D0 */ lw $t8, 0xd0($sp) +.L800D40B0: +/* 0D4CB0 800D40B0 2B0103E7 */ slti $at, $t8, 0x3e7 +/* 0D4CB4 800D40B4 50200007 */ beql $at, $zero, .L800D40D4 +/* 0D4CB8 800D40B8 92450001 */ lbu $a1, 1($s2) +/* 0D4CBC 800D40BC 031E0019 */ multu $t8, $fp +/* 0D4CC0 800D40C0 00007812 */ mflo $t7 +/* 0D4CC4 800D40C4 00AF7021 */ addu $t6, $a1, $t7 +/* 0D4CC8 800D40C8 25D9FFD0 */ addiu $t9, $t6, -0x30 +/* 0D4CCC 800D40CC AFB900D0 */ sw $t9, 0xd0($sp) +/* 0D4CD0 800D40D0 92450001 */ lbu $a1, 1($s2) +.L800D40D4: +/* 0D4CD4 800D40D4 26520001 */ addiu $s2, $s2, 1 +/* 0D4CD8 800D40D8 28A10030 */ slti $at, $a1, 0x30 +/* 0D4CDC 800D40DC 14200003 */ bnez $at, .L800D40EC +/* 0D4CE0 800D40E0 28A1003A */ slti $at, $a1, 0x3a +/* 0D4CE4 800D40E4 5420FFF2 */ bnezl $at, .L800D40B0 +/* 0D4CE8 800D40E8 8FB800D0 */ lw $t8, 0xd0($sp) +.L800D40EC: +/* 0D4CEC 800D40EC 2401002E */ li $at, 46 +.L800D40F0: +/* 0D4CF0 800D40F0 10A10004 */ beq $a1, $at, .L800D4104 +/* 0D4CF4 800D40F4 2418FFFF */ li $t8, -1 +/* 0D4CF8 800D40F8 AFB800CC */ sw $t8, 0xcc($sp) +/* 0D4CFC 800D40FC 10000026 */ b .L800D4198 +/* 0D4D00 800D4100 92450000 */ lbu $a1, ($s2) +.L800D4104: +/* 0D4D04 800D4104 924F0001 */ lbu $t7, 1($s2) +/* 0D4D08 800D4108 8FAE00EC */ lw $t6, 0xec($sp) +/* 0D4D0C 800D410C 26520001 */ addiu $s2, $s2, 1 +/* 0D4D10 800D4110 144F000A */ bne $v0, $t7, .L800D413C +/* 0D4D14 800D4114 25D90003 */ addiu $t9, $t6, 3 +/* 0D4D18 800D4118 2401FFFC */ li $at, -4 +/* 0D4D1C 800D411C 0321C024 */ and $t8, $t9, $at +/* 0D4D20 800D4120 270F0004 */ addiu $t7, $t8, 4 +/* 0D4D24 800D4124 AFAF00EC */ sw $t7, 0xec($sp) +/* 0D4D28 800D4128 8F0E0000 */ lw $t6, ($t8) +/* 0D4D2C 800D412C 26520001 */ addiu $s2, $s2, 1 +/* 0D4D30 800D4130 AFAE00CC */ sw $t6, 0xcc($sp) +/* 0D4D34 800D4134 10000018 */ b .L800D4198 +/* 0D4D38 800D4138 92450000 */ lbu $a1, ($s2) +.L800D413C: +/* 0D4D3C 800D413C AFA000CC */ sw $zero, 0xcc($sp) +/* 0D4D40 800D4140 92450000 */ lbu $a1, ($s2) +/* 0D4D44 800D4144 28A10030 */ slti $at, $a1, 0x30 +/* 0D4D48 800D4148 14200013 */ bnez $at, .L800D4198 +/* 0D4D4C 800D414C 28A1003A */ slti $at, $a1, 0x3a +/* 0D4D50 800D4150 10200011 */ beqz $at, .L800D4198 +/* 0D4D54 800D4154 00000000 */ nop +/* 0D4D58 800D4158 8FB900CC */ lw $t9, 0xcc($sp) +.L800D415C: +/* 0D4D5C 800D415C 2B2103E7 */ slti $at, $t9, 0x3e7 +/* 0D4D60 800D4160 50200007 */ beql $at, $zero, .L800D4180 +/* 0D4D64 800D4164 92450001 */ lbu $a1, 1($s2) +/* 0D4D68 800D4168 033E0019 */ multu $t9, $fp +/* 0D4D6C 800D416C 00007812 */ mflo $t7 +/* 0D4D70 800D4170 00AFC021 */ addu $t8, $a1, $t7 +/* 0D4D74 800D4174 270EFFD0 */ addiu $t6, $t8, -0x30 +/* 0D4D78 800D4178 AFAE00CC */ sw $t6, 0xcc($sp) +/* 0D4D7C 800D417C 92450001 */ lbu $a1, 1($s2) +.L800D4180: +/* 0D4D80 800D4180 26520001 */ addiu $s2, $s2, 1 +/* 0D4D84 800D4184 28A10030 */ slti $at, $a1, 0x30 +/* 0D4D88 800D4188 14200003 */ bnez $at, .L800D4198 +/* 0D4D8C 800D418C 28A1003A */ slti $at, $a1, 0x3a +/* 0D4D90 800D4190 5420FFF2 */ bnezl $at, .L800D415C +/* 0D4D94 800D4194 8FB900CC */ lw $t9, 0xcc($sp) +.L800D4198: +/* 0D4D98 800D4198 0C033871 */ jal strchr +/* 0D4D9C 800D419C 248496C0 */ addiu $a0, %lo(D_800E96C0) # addiu $a0, $a0, -0x6940 +/* 0D4DA0 800D41A0 10400005 */ beqz $v0, .L800D41B8 +/* 0D4DA4 800D41A4 27B000A8 */ addiu $s0, $sp, 0xa8 +/* 0D4DA8 800D41A8 92590000 */ lbu $t9, ($s2) +/* 0D4DAC 800D41AC 26520001 */ addiu $s2, $s2, 1 +/* 0D4DB0 800D41B0 10000002 */ b .L800D41BC +/* 0D4DB4 800D41B4 A3B900DC */ sb $t9, 0xdc($sp) +.L800D41B8: +/* 0D4DB8 800D41B8 A3A000DC */ sb $zero, 0xdc($sp) +.L800D41BC: +/* 0D4DBC 800D41BC 93AF00DC */ lbu $t7, 0xdc($sp) +/* 0D4DC0 800D41C0 2402006C */ li $v0, 108 +/* 0D4DC4 800D41C4 27A600EC */ addiu $a2, $sp, 0xec +/* 0D4DC8 800D41C8 144F0007 */ bne $v0, $t7, .L800D41E8 +/* 0D4DCC 800D41CC 27A7007C */ addiu $a3, $sp, 0x7c +/* 0D4DD0 800D41D0 92580000 */ lbu $t8, ($s2) +/* 0D4DD4 800D41D4 240E004C */ li $t6, 76 +/* 0D4DD8 800D41D8 14580003 */ bne $v0, $t8, .L800D41E8 +/* 0D4DDC 800D41DC 00000000 */ nop +/* 0D4DE0 800D41E0 A3AE00DC */ sb $t6, 0xdc($sp) +/* 0D4DE4 800D41E4 26520001 */ addiu $s2, $s2, 1 +.L800D41E8: +/* 0D4DE8 800D41E8 0C034E28 */ jal func_800D38A0 +/* 0D4DEC 800D41EC 92450000 */ lbu $a1, ($s2) +/* 0D4DF0 800D41F0 8FB900D0 */ lw $t9, 0xd0($sp) +/* 0D4DF4 800D41F4 8FAF00B4 */ lw $t7, 0xb4($sp) +/* 0D4DF8 800D41F8 8FAE00B8 */ lw $t6, 0xb8($sp) +/* 0D4DFC 800D41FC 032FC023 */ subu $t8, $t9, $t7 +/* 0D4E00 800D4200 8FAF00BC */ lw $t7, 0xbc($sp) +/* 0D4E04 800D4204 030EC823 */ subu $t9, $t8, $t6 +/* 0D4E08 800D4208 8FAE00C0 */ lw $t6, 0xc0($sp) +/* 0D4E0C 800D420C 032FC023 */ subu $t8, $t9, $t7 +/* 0D4E10 800D4210 8FAF00C4 */ lw $t7, 0xc4($sp) +/* 0D4E14 800D4214 030EC823 */ subu $t9, $t8, $t6 +/* 0D4E18 800D4218 8FAE00C8 */ lw $t6, 0xc8($sp) +/* 0D4E1C 800D421C 032FC023 */ subu $t8, $t9, $t7 +/* 0D4E20 800D4220 8FAF00D8 */ lw $t7, 0xd8($sp) +/* 0D4E24 800D4224 030EC823 */ subu $t9, $t8, $t6 +/* 0D4E28 800D4228 AFB900D0 */ sw $t9, 0xd0($sp) +/* 0D4E2C 800D422C 31F80004 */ andi $t8, $t7, 4 +/* 0D4E30 800D4230 1700001A */ bnez $t8, .L800D429C +/* 0D4E34 800D4234 0019702A */ slt $t6, $zero, $t9 +/* 0D4E38 800D4238 51C00019 */ beql $t6, $zero, .L800D42A0 +/* 0D4E3C 800D423C 8FB900B4 */ lw $t9, 0xb4($sp) +/* 0D4E40 800D4240 11C00016 */ beqz $t6, .L800D429C +/* 0D4E44 800D4244 03208825 */ move $s1, $t9 +/* 0D4E48 800D4248 2E210021 */ sltiu $at, $s1, 0x21 +.L800D424C: +/* 0D4E4C 800D424C 14200003 */ bnez $at, .L800D425C +/* 0D4E50 800D4250 02208025 */ move $s0, $s1 +/* 0D4E54 800D4254 10000001 */ b .L800D425C +/* 0D4E58 800D4258 24100020 */ li $s0, 32 +.L800D425C: +/* 0D4E5C 800D425C 1A00000C */ blez $s0, .L800D4290 +/* 0D4E60 800D4260 02602025 */ move $a0, $s3 +/* 0D4E64 800D4264 02E02825 */ move $a1, $s7 +/* 0D4E68 800D4268 0280F809 */ jalr $s4 +/* 0D4E6C 800D426C 02003025 */ move $a2, $s0 +/* 0D4E70 800D4270 10400005 */ beqz $v0, .L800D4288 +/* 0D4E74 800D4274 00409825 */ move $s3, $v0 +/* 0D4E78 800D4278 8FAF00D4 */ lw $t7, 0xd4($sp) +/* 0D4E7C 800D427C 01F0C021 */ addu $t8, $t7, $s0 +/* 0D4E80 800D4280 10000003 */ b .L800D4290 +/* 0D4E84 800D4284 AFB800D4 */ sw $t8, 0xd4($sp) +.L800D4288: +/* 0D4E88 800D4288 100000A6 */ b .L800D4524 +/* 0D4E8C 800D428C 8FA200D4 */ lw $v0, 0xd4($sp) +.L800D4290: +/* 0D4E90 800D4290 02308823 */ subu $s1, $s1, $s0 +/* 0D4E94 800D4294 5E20FFED */ bgtzl $s1, .L800D424C +/* 0D4E98 800D4298 2E210021 */ sltiu $at, $s1, 0x21 +.L800D429C: +/* 0D4E9C 800D429C 8FB900B4 */ lw $t9, 0xb4($sp) +.L800D42A0: +/* 0D4EA0 800D42A0 02602025 */ move $a0, $s3 +/* 0D4EA4 800D42A4 27A5007C */ addiu $a1, $sp, 0x7c +/* 0D4EA8 800D42A8 5B20000D */ blezl $t9, .L800D42E0 +/* 0D4EAC 800D42AC 8FB900B8 */ lw $t9, 0xb8($sp) +/* 0D4EB0 800D42B0 0280F809 */ jalr $s4 +/* 0D4EB4 800D42B4 03203025 */ move $a2, $t9 +/* 0D4EB8 800D42B8 10400006 */ beqz $v0, .L800D42D4 +/* 0D4EBC 800D42BC 00409825 */ move $s3, $v0 +/* 0D4EC0 800D42C0 8FAE00D4 */ lw $t6, 0xd4($sp) +/* 0D4EC4 800D42C4 8FAF00B4 */ lw $t7, 0xb4($sp) +/* 0D4EC8 800D42C8 01CFC021 */ addu $t8, $t6, $t7 +/* 0D4ECC 800D42CC 10000003 */ b .L800D42DC +/* 0D4ED0 800D42D0 AFB800D4 */ sw $t8, 0xd4($sp) +.L800D42D4: +/* 0D4ED4 800D42D4 10000093 */ b .L800D4524 +/* 0D4ED8 800D42D8 8FA200D4 */ lw $v0, 0xd4($sp) +.L800D42DC: +/* 0D4EDC 800D42DC 8FB900B8 */ lw $t9, 0xb8($sp) +.L800D42E0: +/* 0D4EE0 800D42E0 0019702A */ slt $t6, $zero, $t9 +/* 0D4EE4 800D42E4 51C00019 */ beql $t6, $zero, .L800D434C +/* 0D4EE8 800D42E8 8FB900BC */ lw $t9, 0xbc($sp) +/* 0D4EEC 800D42EC 11C00016 */ beqz $t6, .L800D4348 +/* 0D4EF0 800D42F0 03208825 */ move $s1, $t9 +/* 0D4EF4 800D42F4 2E210021 */ sltiu $at, $s1, 0x21 +.L800D42F8: +/* 0D4EF8 800D42F8 14200003 */ bnez $at, .L800D4308 +/* 0D4EFC 800D42FC 02208025 */ move $s0, $s1 +/* 0D4F00 800D4300 10000001 */ b .L800D4308 +/* 0D4F04 800D4304 24100020 */ li $s0, 32 +.L800D4308: +/* 0D4F08 800D4308 1A00000C */ blez $s0, .L800D433C +/* 0D4F0C 800D430C 02602025 */ move $a0, $s3 +/* 0D4F10 800D4310 02A02825 */ move $a1, $s5 +/* 0D4F14 800D4314 0280F809 */ jalr $s4 +/* 0D4F18 800D4318 02003025 */ move $a2, $s0 +/* 0D4F1C 800D431C 10400005 */ beqz $v0, .L800D4334 +/* 0D4F20 800D4320 00409825 */ move $s3, $v0 +/* 0D4F24 800D4324 8FAF00D4 */ lw $t7, 0xd4($sp) +/* 0D4F28 800D4328 01F0C021 */ addu $t8, $t7, $s0 +/* 0D4F2C 800D432C 10000003 */ b .L800D433C +/* 0D4F30 800D4330 AFB800D4 */ sw $t8, 0xd4($sp) +.L800D4334: +/* 0D4F34 800D4334 1000007B */ b .L800D4524 +/* 0D4F38 800D4338 8FA200D4 */ lw $v0, 0xd4($sp) +.L800D433C: +/* 0D4F3C 800D433C 02308823 */ subu $s1, $s1, $s0 +/* 0D4F40 800D4340 5E20FFED */ bgtzl $s1, .L800D42F8 +/* 0D4F44 800D4344 2E210021 */ sltiu $at, $s1, 0x21 +.L800D4348: +/* 0D4F48 800D4348 8FB900BC */ lw $t9, 0xbc($sp) +.L800D434C: +/* 0D4F4C 800D434C 02602025 */ move $a0, $s3 +/* 0D4F50 800D4350 8FA500B0 */ lw $a1, 0xb0($sp) +/* 0D4F54 800D4354 5B20000D */ blezl $t9, .L800D438C +/* 0D4F58 800D4358 8FB900C0 */ lw $t9, 0xc0($sp) +/* 0D4F5C 800D435C 0280F809 */ jalr $s4 +/* 0D4F60 800D4360 03203025 */ move $a2, $t9 +/* 0D4F64 800D4364 10400006 */ beqz $v0, .L800D4380 +/* 0D4F68 800D4368 00409825 */ move $s3, $v0 +/* 0D4F6C 800D436C 8FAE00D4 */ lw $t6, 0xd4($sp) +/* 0D4F70 800D4370 8FAF00BC */ lw $t7, 0xbc($sp) +/* 0D4F74 800D4374 01CFC021 */ addu $t8, $t6, $t7 +/* 0D4F78 800D4378 10000003 */ b .L800D4388 +/* 0D4F7C 800D437C AFB800D4 */ sw $t8, 0xd4($sp) +.L800D4380: +/* 0D4F80 800D4380 10000068 */ b .L800D4524 +/* 0D4F84 800D4384 8FA200D4 */ lw $v0, 0xd4($sp) +.L800D4388: +/* 0D4F88 800D4388 8FB900C0 */ lw $t9, 0xc0($sp) +.L800D438C: +/* 0D4F8C 800D438C 0019702A */ slt $t6, $zero, $t9 +/* 0D4F90 800D4390 51C00019 */ beql $t6, $zero, .L800D43F8 +/* 0D4F94 800D4394 8FB900C4 */ lw $t9, 0xc4($sp) +/* 0D4F98 800D4398 11C00016 */ beqz $t6, .L800D43F4 +/* 0D4F9C 800D439C 03208825 */ move $s1, $t9 +/* 0D4FA0 800D43A0 2E210021 */ sltiu $at, $s1, 0x21 +.L800D43A4: +/* 0D4FA4 800D43A4 14200003 */ bnez $at, .L800D43B4 +/* 0D4FA8 800D43A8 02208025 */ move $s0, $s1 +/* 0D4FAC 800D43AC 10000001 */ b .L800D43B4 +/* 0D4FB0 800D43B0 24100020 */ li $s0, 32 +.L800D43B4: +/* 0D4FB4 800D43B4 1A00000C */ blez $s0, .L800D43E8 +/* 0D4FB8 800D43B8 02602025 */ move $a0, $s3 +/* 0D4FBC 800D43BC 02A02825 */ move $a1, $s5 +/* 0D4FC0 800D43C0 0280F809 */ jalr $s4 +/* 0D4FC4 800D43C4 02003025 */ move $a2, $s0 +/* 0D4FC8 800D43C8 10400005 */ beqz $v0, .L800D43E0 +/* 0D4FCC 800D43CC 00409825 */ move $s3, $v0 +/* 0D4FD0 800D43D0 8FAF00D4 */ lw $t7, 0xd4($sp) +/* 0D4FD4 800D43D4 01F0C021 */ addu $t8, $t7, $s0 +/* 0D4FD8 800D43D8 10000003 */ b .L800D43E8 +/* 0D4FDC 800D43DC AFB800D4 */ sw $t8, 0xd4($sp) +.L800D43E0: +/* 0D4FE0 800D43E0 10000050 */ b .L800D4524 +/* 0D4FE4 800D43E4 8FA200D4 */ lw $v0, 0xd4($sp) +.L800D43E8: +/* 0D4FE8 800D43E8 02308823 */ subu $s1, $s1, $s0 +/* 0D4FEC 800D43EC 5E20FFED */ bgtzl $s1, .L800D43A4 +/* 0D4FF0 800D43F0 2E210021 */ sltiu $at, $s1, 0x21 +.L800D43F4: +/* 0D4FF4 800D43F4 8FB900C4 */ lw $t9, 0xc4($sp) +.L800D43F8: +/* 0D4FF8 800D43F8 02602025 */ move $a0, $s3 +/* 0D4FFC 800D43FC 8FAE00B0 */ lw $t6, 0xb0($sp) +/* 0D5000 800D4400 1B20000D */ blez $t9, .L800D4438 +/* 0D5004 800D4404 8FAF00BC */ lw $t7, 0xbc($sp) +/* 0D5008 800D4408 01CF2821 */ addu $a1, $t6, $t7 +/* 0D500C 800D440C 0280F809 */ jalr $s4 +/* 0D5010 800D4410 03203025 */ move $a2, $t9 +/* 0D5014 800D4414 10400006 */ beqz $v0, .L800D4430 +/* 0D5018 800D4418 00409825 */ move $s3, $v0 +/* 0D501C 800D441C 8FB800D4 */ lw $t8, 0xd4($sp) +/* 0D5020 800D4420 8FAE00C4 */ lw $t6, 0xc4($sp) +/* 0D5024 800D4424 030E7821 */ addu $t7, $t8, $t6 +/* 0D5028 800D4428 10000003 */ b .L800D4438 +/* 0D502C 800D442C AFAF00D4 */ sw $t7, 0xd4($sp) +.L800D4430: +/* 0D5030 800D4430 1000003C */ b .L800D4524 +/* 0D5034 800D4434 8FA200D4 */ lw $v0, 0xd4($sp) +.L800D4438: +/* 0D5038 800D4438 8FB900C8 */ lw $t9, 0xc8($sp) +/* 0D503C 800D443C 0019C02A */ slt $t8, $zero, $t9 +/* 0D5040 800D4440 53000019 */ beql $t8, $zero, .L800D44A8 +/* 0D5044 800D4444 8FB900D8 */ lw $t9, 0xd8($sp) +/* 0D5048 800D4448 13000016 */ beqz $t8, .L800D44A4 +/* 0D504C 800D444C 03208825 */ move $s1, $t9 +/* 0D5050 800D4450 2E210021 */ sltiu $at, $s1, 0x21 +.L800D4454: +/* 0D5054 800D4454 14200003 */ bnez $at, .L800D4464 +/* 0D5058 800D4458 02208025 */ move $s0, $s1 +/* 0D505C 800D445C 10000001 */ b .L800D4464 +/* 0D5060 800D4460 24100020 */ li $s0, 32 +.L800D4464: +/* 0D5064 800D4464 1A00000C */ blez $s0, .L800D4498 +/* 0D5068 800D4468 02602025 */ move $a0, $s3 +/* 0D506C 800D446C 02A02825 */ move $a1, $s5 +/* 0D5070 800D4470 0280F809 */ jalr $s4 +/* 0D5074 800D4474 02003025 */ move $a2, $s0 +/* 0D5078 800D4478 10400005 */ beqz $v0, .L800D4490 +/* 0D507C 800D447C 00409825 */ move $s3, $v0 +/* 0D5080 800D4480 8FAE00D4 */ lw $t6, 0xd4($sp) +/* 0D5084 800D4484 01D07821 */ addu $t7, $t6, $s0 +/* 0D5088 800D4488 10000003 */ b .L800D4498 +/* 0D508C 800D448C AFAF00D4 */ sw $t7, 0xd4($sp) +.L800D4490: +/* 0D5090 800D4490 10000024 */ b .L800D4524 +/* 0D5094 800D4494 8FA200D4 */ lw $v0, 0xd4($sp) +.L800D4498: +/* 0D5098 800D4498 02308823 */ subu $s1, $s1, $s0 +/* 0D509C 800D449C 5E20FFED */ bgtzl $s1, .L800D4454 +/* 0D50A0 800D44A0 2E210021 */ sltiu $at, $s1, 0x21 +.L800D44A4: +/* 0D50A4 800D44A4 8FB900D8 */ lw $t9, 0xd8($sp) +.L800D44A8: +/* 0D50A8 800D44A8 8FAE00D0 */ lw $t6, 0xd0($sp) +/* 0D50AC 800D44AC 33380004 */ andi $t8, $t9, 4 +/* 0D50B0 800D44B0 1300001A */ beqz $t8, .L800D451C +/* 0D50B4 800D44B4 000E782A */ slt $t7, $zero, $t6 +/* 0D50B8 800D44B8 11E00018 */ beqz $t7, .L800D451C +/* 0D50BC 800D44BC 00000000 */ nop +/* 0D50C0 800D44C0 11E00016 */ beqz $t7, .L800D451C +/* 0D50C4 800D44C4 01C08825 */ move $s1, $t6 +/* 0D50C8 800D44C8 2E210021 */ sltiu $at, $s1, 0x21 +.L800D44CC: +/* 0D50CC 800D44CC 14200003 */ bnez $at, .L800D44DC +/* 0D50D0 800D44D0 02208025 */ move $s0, $s1 +/* 0D50D4 800D44D4 10000001 */ b .L800D44DC +/* 0D50D8 800D44D8 24100020 */ li $s0, 32 +.L800D44DC: +/* 0D50DC 800D44DC 1A00000C */ blez $s0, .L800D4510 +/* 0D50E0 800D44E0 02602025 */ move $a0, $s3 +/* 0D50E4 800D44E4 02E02825 */ move $a1, $s7 +/* 0D50E8 800D44E8 0280F809 */ jalr $s4 +/* 0D50EC 800D44EC 02003025 */ move $a2, $s0 +/* 0D50F0 800D44F0 10400005 */ beqz $v0, .L800D4508 +/* 0D50F4 800D44F4 00409825 */ move $s3, $v0 +/* 0D50F8 800D44F8 8FB900D4 */ lw $t9, 0xd4($sp) +/* 0D50FC 800D44FC 0330C021 */ addu $t8, $t9, $s0 +/* 0D5100 800D4500 10000003 */ b .L800D4510 +/* 0D5104 800D4504 AFB800D4 */ sw $t8, 0xd4($sp) +.L800D4508: +/* 0D5108 800D4508 10000006 */ b .L800D4524 +/* 0D510C 800D450C 8FA200D4 */ lw $v0, 0xd4($sp) +.L800D4510: +/* 0D5110 800D4510 02308823 */ subu $s1, $s1, $s0 +/* 0D5114 800D4514 5E20FFED */ bgtzl $s1, .L800D44CC +/* 0D5118 800D4518 2E210021 */ sltiu $at, $s1, 0x21 +.L800D451C: +/* 0D511C 800D451C 1000FE94 */ b .L800D3F70 +/* 0D5120 800D4520 26470001 */ addiu $a3, $s2, 1 +.L800D4524: +/* 0D5124 800D4524 8FBF003C */ lw $ra, 0x3c($sp) +/* 0D5128 800D4528 8FB00018 */ lw $s0, 0x18($sp) +/* 0D512C 800D452C 8FB1001C */ lw $s1, 0x1c($sp) +/* 0D5130 800D4530 8FB20020 */ lw $s2, 0x20($sp) +/* 0D5134 800D4534 8FB30024 */ lw $s3, 0x24($sp) +/* 0D5138 800D4538 8FB40028 */ lw $s4, 0x28($sp) +/* 0D513C 800D453C 8FB5002C */ lw $s5, 0x2c($sp) +/* 0D5140 800D4540 8FB60030 */ lw $s6, 0x30($sp) +/* 0D5144 800D4544 8FB70034 */ lw $s7, 0x34($sp) +/* 0D5148 800D4548 8FBE0038 */ lw $fp, 0x38($sp) +/* 0D514C 800D454C 03E00008 */ jr $ra +/* 0D5150 800D4550 27BD00E0 */ addiu $sp, $sp, 0xe0 + +/* 0D5154 800D4554 00000000 */ nop +/* 0D5158 800D4558 00000000 */ nop +/* 0D515C 800D455C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D4560.s b/asm/non_matchings/unknown_0D3020/func_800D4560.s new file mode 100644 index 00000000..001aeaa2 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D4560.s @@ -0,0 +1,6 @@ +glabel func_800D4560 +/* 0D5160 800D4560 40846000 */ mtc0 $a0, $12 +/* 0D5164 800D4564 00000000 */ nop +/* 0D5168 800D4568 03E00008 */ jr $ra +/* 0D516C 800D456C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/func_800D4570.s b/asm/non_matchings/unknown_0D3020/func_800D4570.s new file mode 100644 index 00000000..aeb4a29c --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D4570.s @@ -0,0 +1,6 @@ +glabel func_800D4570 +/* 0D5170 800D4570 40026000 */ mfc0 $v0, $12 +/* 0D5174 800D4574 03E00008 */ jr $ra +/* 0D5178 800D4578 00000000 */ nop + +/* 0D517C 800D457C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D4580.s b/asm/non_matchings/unknown_0D3020/func_800D4580.s new file mode 100644 index 00000000..d16e797f --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D4580.s @@ -0,0 +1,6 @@ +glabel func_800D4580 +/* 0D5180 800D4580 4442F800 */ cfc1 $v0, $31 +/* 0D5184 800D4584 44C4F800 */ ctc1 $a0, $31 +/* 0D5188 800D4588 03E00008 */ jr $ra +/* 0D518C 800D458C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/func_800D4590.s b/asm/non_matchings/unknown_0D3020/func_800D4590.s new file mode 100644 index 00000000..e07ee336 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D4590.s @@ -0,0 +1,24 @@ +glabel func_800D4590 +/* 0D5190 800D4590 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0D5194 800D4594 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D5198 800D4598 AFA40018 */ sw $a0, 0x18($sp) +/* 0D519C 800D459C 0C0354B0 */ jal func_800D52C0 +/* 0D51A0 800D45A0 AFA5001C */ sw $a1, 0x1c($sp) +/* 0D51A4 800D45A4 10400003 */ beqz $v0, .L800D45B4 +/* 0D51A8 800D45A8 00000000 */ nop +/* 0D51AC 800D45AC 10000008 */ b .L800D45D0 +/* 0D51B0 800D45B0 2402FFFF */ li $v0, -1 +.L800D45B4: +/* 0D51B4 800D45B4 8FAE0018 */ lw $t6, 0x18($sp) +/* 0D51B8 800D45B8 3C01A000 */ lui $at, 0xa000 +/* 0D51BC 800D45BC 8FB9001C */ lw $t9, 0x1c($sp) +/* 0D51C0 800D45C0 01C17825 */ or $t7, $t6, $at +/* 0D51C4 800D45C4 8DF80000 */ lw $t8, ($t7) +/* 0D51C8 800D45C8 00001025 */ move $v0, $zero +/* 0D51CC 800D45CC AF380000 */ sw $t8, ($t9) +.L800D45D0: +/* 0D51D0 800D45D0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D51D4 800D45D4 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0D51D8 800D45D8 03E00008 */ jr $ra +/* 0D51DC 800D45DC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/func_800D45E0.s b/asm/non_matchings/unknown_0D3020/func_800D45E0.s new file mode 100644 index 00000000..90f6cc33 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D45E0.s @@ -0,0 +1,24 @@ +glabel func_800D45E0 +/* 0D51E0 800D45E0 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0D51E4 800D45E4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D51E8 800D45E8 AFA40018 */ sw $a0, 0x18($sp) +/* 0D51EC 800D45EC 0C0354B0 */ jal func_800D52C0 +/* 0D51F0 800D45F0 AFA5001C */ sw $a1, 0x1c($sp) +/* 0D51F4 800D45F4 10400003 */ beqz $v0, .L800D4604 +/* 0D51F8 800D45F8 00000000 */ nop +/* 0D51FC 800D45FC 10000007 */ b .L800D461C +/* 0D5200 800D4600 2402FFFF */ li $v0, -1 +.L800D4604: +/* 0D5204 800D4604 8FAF0018 */ lw $t7, 0x18($sp) +/* 0D5208 800D4608 8FAE001C */ lw $t6, 0x1c($sp) +/* 0D520C 800D460C 3C01A000 */ lui $at, 0xa000 +/* 0D5210 800D4610 01E1C025 */ or $t8, $t7, $at +/* 0D5214 800D4614 00001025 */ move $v0, $zero +/* 0D5218 800D4618 AF0E0000 */ sw $t6, ($t8) +.L800D461C: +/* 0D521C 800D461C 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D5220 800D4620 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0D5224 800D4624 03E00008 */ jr $ra +/* 0D5228 800D4628 00000000 */ nop + +/* 0D522C 800D462C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D4630.s b/asm/non_matchings/unknown_0D3020/func_800D4630.s new file mode 100644 index 00000000..6b4c264c --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D4630.s @@ -0,0 +1,39 @@ +glabel func_800D4630 +/* 0D5230 800D4630 18A00011 */ blez $a1, .L800D4678 +/* 0D5234 800D4634 00000000 */ nop +/* 0D5238 800D4638 240B2000 */ li $t3, 8192 +/* 0D523C 800D463C 00AB082B */ sltu $at, $a1, $t3 +/* 0D5240 800D4640 1020000F */ beqz $at, .L800D4680 +/* 0D5244 800D4644 00000000 */ nop +/* 0D5248 800D4648 00804025 */ move $t0, $a0 +/* 0D524C 800D464C 00854821 */ addu $t1, $a0, $a1 +/* 0D5250 800D4650 0109082B */ sltu $at, $t0, $t1 +/* 0D5254 800D4654 10200008 */ beqz $at, .L800D4678 +/* 0D5258 800D4658 00000000 */ nop +/* 0D525C 800D465C 310A000F */ andi $t2, $t0, 0xf +/* 0D5260 800D4660 2529FFF0 */ addiu $t1, $t1, -0x10 +/* 0D5264 800D4664 010A4023 */ subu $t0, $t0, $t2 +.L800D4668: +/* 0D5268 800D4668 BD190000 */ cache 0x19, ($t0) +/* 0D526C 800D466C 0109082B */ sltu $at, $t0, $t1 +/* 0D5270 800D4670 1420FFFD */ bnez $at, .L800D4668 +/* 0D5274 800D4674 25080010 */ addiu $t0, $t0, 0x10 +.L800D4678: +/* 0D5278 800D4678 03E00008 */ jr $ra +/* 0D527C 800D467C 00000000 */ nop + +.L800D4680: +/* 0D5280 800D4680 3C088000 */ lui $t0, %hi(D_80000010) # $t0, 0x8000 +/* 0D5284 800D4684 010B4821 */ addu $t1, $t0, $t3 +/* 0D5288 800D4688 2529FFF0 */ addiu $t1, $t1, -0x10 +.L800D468C: +/* 0D528C 800D468C BD010000 */ cache 1, ($t0) +/* 0D5290 800D4690 0109082B */ sltu $at, $t0, $t1 +/* 0D5294 800D4694 1420FFFD */ bnez $at, .L800D468C +/* 0D5298 800D4698 25080010 */ addiu $t0, %lo(D_80000010) # addiu $t0, $t0, 0x10 +/* 0D529C 800D469C 03E00008 */ jr $ra +/* 0D52A0 800D46A0 00000000 */ nop + +/* 0D52A4 800D46A4 00000000 */ nop +/* 0D52A8 800D46A8 00000000 */ nop +/* 0D52AC 800D46AC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D46B0.s b/asm/non_matchings/unknown_0D3020/func_800D46B0.s new file mode 100644 index 00000000..77295b14 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D46B0.s @@ -0,0 +1,39 @@ +glabel func_800D46B0 +/* 0D52B0 800D46B0 18A00011 */ blez $a1, .L800D46F8 +/* 0D52B4 800D46B4 00000000 */ nop +/* 0D52B8 800D46B8 240B4000 */ li $t3, 16384 +/* 0D52BC 800D46BC 00AB082B */ sltu $at, $a1, $t3 +/* 0D52C0 800D46C0 1020000F */ beqz $at, .L800D4700 +/* 0D52C4 800D46C4 00000000 */ nop +/* 0D52C8 800D46C8 00804025 */ move $t0, $a0 +/* 0D52CC 800D46CC 00854821 */ addu $t1, $a0, $a1 +/* 0D52D0 800D46D0 0109082B */ sltu $at, $t0, $t1 +/* 0D52D4 800D46D4 10200008 */ beqz $at, .L800D46F8 +/* 0D52D8 800D46D8 00000000 */ nop +/* 0D52DC 800D46DC 310A001F */ andi $t2, $t0, 0x1f +/* 0D52E0 800D46E0 2529FFE0 */ addiu $t1, $t1, -0x20 +/* 0D52E4 800D46E4 010A4023 */ subu $t0, $t0, $t2 +.L800D46E8: +/* 0D52E8 800D46E8 BD100000 */ cache 0x10, ($t0) +/* 0D52EC 800D46EC 0109082B */ sltu $at, $t0, $t1 +/* 0D52F0 800D46F0 1420FFFD */ bnez $at, .L800D46E8 +/* 0D52F4 800D46F4 25080020 */ addiu $t0, $t0, 0x20 +.L800D46F8: +/* 0D52F8 800D46F8 03E00008 */ jr $ra +/* 0D52FC 800D46FC 00000000 */ nop + +.L800D4700: +/* 0D5300 800D4700 3C088000 */ lui $t0, %hi(D_80000020) # $t0, 0x8000 +/* 0D5304 800D4704 010B4821 */ addu $t1, $t0, $t3 +/* 0D5308 800D4708 2529FFE0 */ addiu $t1, $t1, -0x20 +.L800D470C: +/* 0D530C 800D470C BD000000 */ cache 0, ($t0) +/* 0D5310 800D4710 0109082B */ sltu $at, $t0, $t1 +/* 0D5314 800D4714 1420FFFD */ bnez $at, .L800D470C +/* 0D5318 800D4718 25080020 */ addiu $t0, %lo(D_80000020) # addiu $t0, $t0, 0x20 +/* 0D531C 800D471C 03E00008 */ jr $ra +/* 0D5320 800D4720 00000000 */ nop + +/* 0D5324 800D4724 00000000 */ nop +/* 0D5328 800D4728 00000000 */ nop +/* 0D532C 800D472C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D4730.s b/asm/non_matchings/unknown_0D3020/func_800D4730.s new file mode 100644 index 00000000..30542c35 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D4730.s @@ -0,0 +1,26 @@ +glabel func_800D4730 +/* 0D5330 800D4730 40085000 */ mfc0 $t0, $10 +/* 0D5334 800D4734 2409001F */ li $t1, 31 +/* 0D5338 800D4738 40890000 */ mtc0 $t1, $0 +/* 0D533C 800D473C 40802800 */ mtc0 $zero, $5 +/* 0D5340 800D4740 240A0017 */ li $t2, 23 +/* 0D5344 800D4744 3C09C000 */ lui $t1, 0xc000 +/* 0D5348 800D4748 40895000 */ mtc0 $t1, $10 +/* 0D534C 800D474C 3C098000 */ lui $t1, 0x8000 +/* 0D5350 800D4750 00095982 */ srl $t3, $t1, 6 +/* 0D5354 800D4754 016A5825 */ or $t3, $t3, $t2 +/* 0D5358 800D4758 408B1000 */ mtc0 $t3, $2 +/* 0D535C 800D475C 24090001 */ li $t1, 1 +/* 0D5360 800D4760 40891800 */ mtc0 $t1, $3 +/* 0D5364 800D4764 00000000 */ nop +/* 0D5368 800D4768 42000002 */ tlbwi +/* 0D536C 800D476C 00000000 */ nop +/* 0D5370 800D4770 00000000 */ nop +/* 0D5374 800D4774 00000000 */ nop +/* 0D5378 800D4778 00000000 */ nop +/* 0D537C 800D477C 40885000 */ mtc0 $t0, $10 +/* 0D5380 800D4780 03E00008 */ jr $ra +/* 0D5384 800D4784 00000000 */ nop + +/* 0D5388 800D4788 00000000 */ nop +/* 0D538C 800D478C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D4790.s b/asm/non_matchings/unknown_0D3020/func_800D4790.s new file mode 100644 index 00000000..4658f8b4 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D4790.s @@ -0,0 +1,28 @@ +glabel func_800D4790 +/* 0D5390 800D4790 3C0EA460 */ lui $t6, %hi(D_A4600010) # $t6, 0xa460 +/* 0D5394 800D4794 8DC60010 */ lw $a2, %lo(D_A4600010)($t6) +/* 0D5398 800D4798 27BDFFF8 */ addiu $sp, $sp, -8 +/* 0D539C 800D479C 30CF0003 */ andi $t7, $a2, 3 +/* 0D53A0 800D47A0 11E00006 */ beqz $t7, .L800D47BC +/* 0D53A4 800D47A4 00000000 */ nop +.L800D47A8: +/* 0D53A8 800D47A8 3C18A460 */ lui $t8, %hi(D_A4600010) # $t8, 0xa460 +/* 0D53AC 800D47AC 8F060010 */ lw $a2, %lo(D_A4600010)($t8) +/* 0D53B0 800D47B0 30D90003 */ andi $t9, $a2, 3 +/* 0D53B4 800D47B4 1720FFFC */ bnez $t9, .L800D47A8 +/* 0D53B8 800D47B8 00000000 */ nop +.L800D47BC: +/* 0D53BC 800D47BC 3C088000 */ lui $t0, %hi(D_80000308) # $t0, 0x8000 +/* 0D53C0 800D47C0 8D080308 */ lw $t0, %lo(D_80000308)($t0) +/* 0D53C4 800D47C4 3C01A000 */ lui $at, 0xa000 +/* 0D53C8 800D47C8 00001025 */ move $v0, $zero +/* 0D53CC 800D47CC 01044825 */ or $t1, $t0, $a0 +/* 0D53D0 800D47D0 01215025 */ or $t2, $t1, $at +/* 0D53D4 800D47D4 8D4B0000 */ lw $t3, ($t2) +/* 0D53D8 800D47D8 27BD0008 */ addiu $sp, $sp, 8 +/* 0D53DC 800D47DC 03E00008 */ jr $ra +/* 0D53E0 800D47E0 ACAB0000 */ sw $t3, ($a1) + +/* 0D53E4 800D47E4 00000000 */ nop +/* 0D53E8 800D47E8 00000000 */ nop +/* 0D53EC 800D47EC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D47F0.s b/asm/non_matchings/unknown_0D3020/func_800D47F0.s new file mode 100644 index 00000000..d145f233 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D47F0.s @@ -0,0 +1,22 @@ +glabel func_800D47F0 +/* 0D53F0 800D47F0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0D53F4 800D47F4 AFBF001C */ sw $ra, 0x1c($sp) +/* 0D53F8 800D47F8 AFA40028 */ sw $a0, 0x28($sp) +/* 0D53FC 800D47FC AFA5002C */ sw $a1, 0x2c($sp) +/* 0D5400 800D4800 0C034958 */ jal __osDisableInt +/* 0D5404 800D4804 AFB00018 */ sw $s0, 0x18($sp) +/* 0D5408 800D4808 8FAF0028 */ lw $t7, 0x28($sp) +/* 0D540C 800D480C 8FAE002C */ lw $t6, 0x2c($sp) +/* 0D5410 800D4810 3C01800E */ lui $at, 0x800e +/* 0D5414 800D4814 000FC080 */ sll $t8, $t7, 2 +/* 0D5418 800D4818 00408025 */ move $s0, $v0 +/* 0D541C 800D481C 00380821 */ addu $at, $at, $t8 +/* 0D5420 800D4820 02002025 */ move $a0, $s0 +/* 0D5424 800D4824 0C034960 */ jal __osRestoreInt +/* 0D5428 800D4828 AC2E48A0 */ sw $t6, 0x48a0($at) +/* 0D542C 800D482C 8FBF001C */ lw $ra, 0x1c($sp) +/* 0D5430 800D4830 8FB00018 */ lw $s0, 0x18($sp) +/* 0D5434 800D4834 27BD0028 */ addiu $sp, $sp, 0x28 +/* 0D5438 800D4838 03E00008 */ jr $ra +/* 0D543C 800D483C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/func_800D4840.s b/asm/non_matchings/unknown_0D3020/func_800D4840.s new file mode 100644 index 00000000..1bd3f467 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D4840.s @@ -0,0 +1,69 @@ +glabel func_800D4840 +/* 0D5440 800D4840 3C014780 */ li $at, 0x47800000 # 65536.000000 +/* 0D5444 800D4844 44810000 */ mtc1 $at, $f0 +/* 0D5448 800D4848 00A01025 */ move $v0, $a1 +/* 0D544C 800D484C 24A30020 */ addiu $v1, $a1, 0x20 +/* 0D5450 800D4850 00003025 */ move $a2, $zero +/* 0D5454 800D4854 00803825 */ move $a3, $a0 +/* 0D5458 800D4858 240C0004 */ li $t4, 4 +/* 0D545C 800D485C 240B0002 */ li $t3, 2 +/* 0D5460 800D4860 3C0AFFFF */ lui $t2, 0xffff +.L800D4864: +/* 0D5464 800D4864 00002025 */ move $a0, $zero +/* 0D5468 800D4868 00E04025 */ move $t0, $a3 +/* 0D546C 800D486C C50E0004 */ lwc1 $f14, 4($t0) +/* 0D5470 800D4870 24840001 */ addiu $a0, $a0, 1 +/* 0D5474 800D4874 C5120000 */ lwc1 $f18, ($t0) +/* 0D5478 800D4878 46007402 */ mul.s $f16, $f14, $f0 +/* 0D547C 800D487C 108B0019 */ beq $a0, $t3, .L800D48E4 +/* 0D5480 800D4880 00000000 */ nop +.L800D4884: +/* 0D5484 800D4884 46009382 */ mul.s $f14, $f18, $f0 +/* 0D5488 800D4888 24840001 */ addiu $a0, $a0, 1 +/* 0D548C 800D488C 24420004 */ addiu $v0, $v0, 4 +/* 0D5490 800D4890 24630004 */ addiu $v1, $v1, 4 +/* 0D5494 800D4894 25080008 */ addiu $t0, $t0, 8 +/* 0D5498 800D4898 4600830D */ trunc.w.s $f12, $f16 +/* 0D549C 800D489C 4600738D */ trunc.w.s $f14, $f14 +/* 0D54A0 800D48A0 44096000 */ mfc1 $t1, $f12 +/* 0D54A4 800D48A4 44057000 */ mfc1 $a1, $f14 +/* 0D54A8 800D48A8 0009CC03 */ sra $t9, $t1, 0x10 +/* 0D54AC 800D48AC 332DFFFF */ andi $t5, $t9, 0xffff +/* 0D54B0 800D48B0 00AAC024 */ and $t8, $a1, $t2 +/* 0D54B4 800D48B4 030D7025 */ or $t6, $t8, $t5 +/* 0D54B8 800D48B8 00057C00 */ sll $t7, $a1, 0x10 +/* 0D54BC 800D48BC 01EAC824 */ and $t9, $t7, $t2 +/* 0D54C0 800D48C0 AC4EFFFC */ sw $t6, -4($v0) +/* 0D54C4 800D48C4 3138FFFF */ andi $t8, $t1, 0xffff +/* 0D54C8 800D48C8 03386825 */ or $t5, $t9, $t8 +/* 0D54CC 800D48CC AC6DFFFC */ sw $t5, -4($v1) +/* 0D54D0 800D48D0 C50E0004 */ lwc1 $f14, 4($t0) +/* 0D54D4 800D48D4 C5120000 */ lwc1 $f18, ($t0) +/* 0D54D8 800D48D8 46007402 */ mul.s $f16, $f14, $f0 +/* 0D54DC 800D48DC 148BFFE9 */ bne $a0, $t3, .L800D4884 +/* 0D54E0 800D48E0 00000000 */ nop +.L800D48E4: +/* 0D54E4 800D48E4 46009382 */ mul.s $f14, $f18, $f0 +/* 0D54E8 800D48E8 25080008 */ addiu $t0, $t0, 8 +/* 0D54EC 800D48EC 24420004 */ addiu $v0, $v0, 4 +/* 0D54F0 800D48F0 24630004 */ addiu $v1, $v1, 4 +/* 0D54F4 800D48F4 4600830D */ trunc.w.s $f12, $f16 +/* 0D54F8 800D48F8 4600738D */ trunc.w.s $f14, $f14 +/* 0D54FC 800D48FC 44096000 */ mfc1 $t1, $f12 +/* 0D5500 800D4900 44057000 */ mfc1 $a1, $f14 +/* 0D5504 800D4904 0009CC03 */ sra $t9, $t1, 0x10 +/* 0D5508 800D4908 332DFFFF */ andi $t5, $t9, 0xffff +/* 0D550C 800D490C 00AAC024 */ and $t8, $a1, $t2 +/* 0D5510 800D4910 030D7025 */ or $t6, $t8, $t5 +/* 0D5514 800D4914 00057C00 */ sll $t7, $a1, 0x10 +/* 0D5518 800D4918 01EAC824 */ and $t9, $t7, $t2 +/* 0D551C 800D491C 3138FFFF */ andi $t8, $t1, 0xffff +/* 0D5520 800D4920 AC4EFFFC */ sw $t6, -4($v0) +/* 0D5524 800D4924 03386825 */ or $t5, $t9, $t8 +/* 0D5528 800D4928 AC6DFFFC */ sw $t5, -4($v1) +/* 0D552C 800D492C 24C60001 */ addiu $a2, $a2, 1 +/* 0D5530 800D4930 14CCFFCC */ bne $a2, $t4, .L800D4864 +/* 0D5534 800D4934 24E70010 */ addiu $a3, $a3, 0x10 +/* 0D5538 800D4938 03E00008 */ jr $ra +/* 0D553C 800D493C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/func_800D4940.s b/asm/non_matchings/unknown_0D3020/func_800D4940.s new file mode 100644 index 00000000..b7fad289 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D4940.s @@ -0,0 +1,103 @@ +glabel func_800D4940 +/* 0D5540 800D4940 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0D5544 800D4944 00801825 */ move $v1, $a0 +/* 0D5548 800D4948 44810000 */ mtc1 $at, $f0 +/* 0D554C 800D494C 44801000 */ mtc1 $zero, $f2 +/* 0D5550 800D4950 24040001 */ li $a0, 1 +/* 0D5554 800D4954 00001025 */ move $v0, $zero +/* 0D5558 800D4958 24070004 */ li $a3, 4 +/* 0D555C 800D495C 24060003 */ li $a2, 3 +/* 0D5560 800D4960 24050002 */ li $a1, 2 +.L800D4964: +/* 0D5564 800D4964 54400004 */ bnezl $v0, .L800D4978 +/* 0D5568 800D4968 E4620000 */ swc1 $f2, ($v1) +/* 0D556C 800D496C 10000002 */ b .L800D4978 +/* 0D5570 800D4970 E4600000 */ swc1 $f0, ($v1) +/* 0D5574 800D4974 E4620000 */ swc1 $f2, ($v1) +.L800D4978: +/* 0D5578 800D4978 54440004 */ bnel $v0, $a0, .L800D498C +/* 0D557C 800D497C E4620004 */ swc1 $f2, 4($v1) +/* 0D5580 800D4980 10000002 */ b .L800D498C +/* 0D5584 800D4984 E4600004 */ swc1 $f0, 4($v1) +/* 0D5588 800D4988 E4620004 */ swc1 $f2, 4($v1) +.L800D498C: +/* 0D558C 800D498C 54450004 */ bnel $v0, $a1, .L800D49A0 +/* 0D5590 800D4990 E4620008 */ swc1 $f2, 8($v1) +/* 0D5594 800D4994 10000002 */ b .L800D49A0 +/* 0D5598 800D4998 E4600008 */ swc1 $f0, 8($v1) +/* 0D559C 800D499C E4620008 */ swc1 $f2, 8($v1) +.L800D49A0: +/* 0D55A0 800D49A0 54460004 */ bnel $v0, $a2, .L800D49B4 +/* 0D55A4 800D49A4 E462000C */ swc1 $f2, 0xc($v1) +/* 0D55A8 800D49A8 10000002 */ b .L800D49B4 +/* 0D55AC 800D49AC E460000C */ swc1 $f0, 0xc($v1) +/* 0D55B0 800D49B0 E462000C */ swc1 $f2, 0xc($v1) +.L800D49B4: +/* 0D55B4 800D49B4 24420001 */ addiu $v0, $v0, 1 +/* 0D55B8 800D49B8 1447FFEA */ bne $v0, $a3, .L800D4964 +/* 0D55BC 800D49BC 24630010 */ addiu $v1, $v1, 0x10 +/* 0D55C0 800D49C0 03E00008 */ jr $ra +/* 0D55C4 800D49C4 00000000 */ nop + +/* 0D55C8 800D49C8 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 0D55CC 800D49CC AFBF0014 */ sw $ra, 0x14($sp) +/* 0D55D0 800D49D0 AFA40058 */ sw $a0, 0x58($sp) +/* 0D55D4 800D49D4 0C035250 */ jal func_800D4940 +/* 0D55D8 800D49D8 27A40018 */ addiu $a0, $sp, 0x18 +/* 0D55DC 800D49DC 27A40018 */ addiu $a0, $sp, 0x18 +/* 0D55E0 800D49E0 0C035210 */ jal func_800D4840 +/* 0D55E4 800D49E4 8FA50058 */ lw $a1, 0x58($sp) +/* 0D55E8 800D49E8 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D55EC 800D49EC 27BD0058 */ addiu $sp, $sp, 0x58 +/* 0D55F0 800D49F0 03E00008 */ jr $ra +/* 0D55F4 800D49F4 00000000 */ nop + +/* 0D55F8 800D49F8 3C014780 */ li $at, 0x47800000 # 65536.000000 +/* 0D55FC 800D49FC 44810000 */ mtc1 $at, $f0 +/* 0D5600 800D4A00 27BDFFF0 */ addiu $sp, $sp, -0x10 +/* 0D5604 800D4A04 00A01025 */ move $v0, $a1 +/* 0D5608 800D4A08 24A30020 */ addiu $v1, $a1, 0x20 +/* 0D560C 800D4A0C 00003025 */ move $a2, $zero +/* 0D5610 800D4A10 00804025 */ move $t0, $a0 +/* 0D5614 800D4A14 240C0004 */ li $t4, 4 +/* 0D5618 800D4A18 240B0002 */ li $t3, 2 +/* 0D561C 800D4A1C 3C0AFFFF */ lui $t2, 0xffff +.L800D4A20: +/* 0D5620 800D4A20 00002025 */ move $a0, $zero +/* 0D5624 800D4A24 01004825 */ move $t1, $t0 +.L800D4A28: +/* 0D5628 800D4A28 8C6E0000 */ lw $t6, ($v1) +/* 0D562C 800D4A2C 8C590000 */ lw $t9, ($v0) +/* 0D5630 800D4A30 24840001 */ addiu $a0, $a0, 1 +/* 0D5634 800D4A34 000E7C02 */ srl $t7, $t6, 0x10 +/* 0D5638 800D4A38 31F8FFFF */ andi $t8, $t7, 0xffff +/* 0D563C 800D4A3C 032A6824 */ and $t5, $t9, $t2 +/* 0D5640 800D4A40 030D7025 */ or $t6, $t8, $t5 +/* 0D5644 800D4A44 AFAE0004 */ sw $t6, 4($sp) +/* 0D5648 800D4A48 8C6F0000 */ lw $t7, ($v1) +/* 0D564C 800D4A4C 8C580000 */ lw $t8, ($v0) +/* 0D5650 800D4A50 8FA50004 */ lw $a1, 4($sp) +/* 0D5654 800D4A54 31F9FFFF */ andi $t9, $t7, 0xffff +/* 0D5658 800D4A58 00186C00 */ sll $t5, $t8, 0x10 +/* 0D565C 800D4A5C 44859000 */ mtc1 $a1, $f18 +/* 0D5660 800D4A60 01AA7024 */ and $t6, $t5, $t2 +/* 0D5664 800D4A64 032E3825 */ or $a3, $t9, $t6 +/* 0D5668 800D4A68 468094A0 */ cvt.s.w $f18, $f18 +/* 0D566C 800D4A6C 44878000 */ mtc1 $a3, $f16 +/* 0D5670 800D4A70 AFA70000 */ sw $a3, ($sp) +/* 0D5674 800D4A74 24420004 */ addiu $v0, $v0, 4 +/* 0D5678 800D4A78 24630004 */ addiu $v1, $v1, 4 +/* 0D567C 800D4A7C 46808420 */ cvt.s.w $f16, $f16 +/* 0D5680 800D4A80 25290008 */ addiu $t1, $t1, 8 +/* 0D5684 800D4A84 46009483 */ div.s $f18, $f18, $f0 +/* 0D5688 800D4A88 46008403 */ div.s $f16, $f16, $f0 +/* 0D568C 800D4A8C E532FFF8 */ swc1 $f18, -8($t1) +/* 0D5690 800D4A90 148BFFE5 */ bne $a0, $t3, .L800D4A28 +/* 0D5694 800D4A94 E530FFFC */ swc1 $f16, -4($t1) +/* 0D5698 800D4A98 24C60001 */ addiu $a2, $a2, 1 +/* 0D569C 800D4A9C 14CCFFE0 */ bne $a2, $t4, .L800D4A20 +/* 0D56A0 800D4AA0 25080010 */ addiu $t0, $t0, 0x10 +/* 0D56A4 800D4AA4 03E00008 */ jr $ra +/* 0D56A8 800D4AA8 27BD0010 */ addiu $sp, $sp, 0x10 + +/* 0D56AC 800D4AAC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D4DE0.s b/asm/non_matchings/unknown_0D3020/func_800D4DE0.s new file mode 100644 index 00000000..6aff59cb --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D4DE0.s @@ -0,0 +1,62 @@ +glabel func_800D4DE0 +/* 0D59E0 800D4DE0 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 0D59E4 800D4DE4 AFA40020 */ sw $a0, 0x20($sp) +/* 0D59E8 800D4DE8 8FAE0020 */ lw $t6, 0x20($sp) +/* 0D59EC 800D4DEC AFBF0014 */ sw $ra, 0x14($sp) +/* 0D59F0 800D4DF0 AFA60028 */ sw $a2, 0x28($sp) +/* 0D59F4 800D4DF4 AFA7002C */ sw $a3, 0x2c($sp) +/* 0D59F8 800D4DF8 ADC00000 */ sw $zero, ($t6) +/* 0D59FC 800D4DFC 8FAF0020 */ lw $t7, 0x20($sp) +/* 0D5A00 800D4E00 ADE00004 */ sw $zero, 4($t7) +/* 0D5A04 800D4E04 8FA80020 */ lw $t0, 0x20($sp) +/* 0D5A08 800D4E08 8FB90034 */ lw $t9, 0x34($sp) +/* 0D5A0C 800D4E0C 8FB80030 */ lw $t8, 0x30($sp) +/* 0D5A10 800D4E10 AD19000C */ sw $t9, 0xc($t0) +/* 0D5A14 800D4E14 AD180008 */ sw $t8, 8($t0) +/* 0D5A18 800D4E18 8FAA0028 */ lw $t2, 0x28($sp) +/* 0D5A1C 800D4E1C 8FAB002C */ lw $t3, 0x2c($sp) +/* 0D5A20 800D4E20 15400003 */ bnez $t2, .L800D4E30 +/* 0D5A24 800D4E24 00000000 */ nop +/* 0D5A28 800D4E28 11600005 */ beqz $t3, .L800D4E40 +/* 0D5A2C 800D4E2C 00000000 */ nop +.L800D4E30: +/* 0D5A30 800D4E30 8FA90020 */ lw $t1, 0x20($sp) +/* 0D5A34 800D4E34 AD2A0010 */ sw $t2, 0x10($t1) +/* 0D5A38 800D4E38 10000006 */ b .L800D4E54 +/* 0D5A3C 800D4E3C AD2B0014 */ sw $t3, 0x14($t1) +.L800D4E40: +/* 0D5A40 800D4E40 8FAE0020 */ lw $t6, 0x20($sp) +/* 0D5A44 800D4E44 8FAC0030 */ lw $t4, 0x30($sp) +/* 0D5A48 800D4E48 8FAD0034 */ lw $t5, 0x34($sp) +/* 0D5A4C 800D4E4C ADCC0010 */ sw $t4, 0x10($t6) +/* 0D5A50 800D4E50 ADCD0014 */ sw $t5, 0x14($t6) +.L800D4E54: +/* 0D5A54 800D4E54 8FAF0038 */ lw $t7, 0x38($sp) +/* 0D5A58 800D4E58 8FB80020 */ lw $t8, 0x20($sp) +/* 0D5A5C 800D4E5C AF0F0018 */ sw $t7, 0x18($t8) +/* 0D5A60 800D4E60 8FA80020 */ lw $t0, 0x20($sp) +/* 0D5A64 800D4E64 8FB9003C */ lw $t9, 0x3c($sp) +/* 0D5A68 800D4E68 AD19001C */ sw $t9, 0x1c($t0) +/* 0D5A6C 800D4E6C 0C03544E */ jal func_800D5138 +/* 0D5A70 800D4E70 8FA40020 */ lw $a0, 0x20($sp) +/* 0D5A74 800D4E74 3C0A800E */ lui $t2, %hi(D_800E4910) # $t2, 0x800e +/* 0D5A78 800D4E78 8D4A4910 */ lw $t2, %lo(D_800E4910)($t2) +/* 0D5A7C 800D4E7C AFA20018 */ sw $v0, 0x18($sp) +/* 0D5A80 800D4E80 AFA3001C */ sw $v1, 0x1c($sp) +/* 0D5A84 800D4E84 8FA90020 */ lw $t1, 0x20($sp) +/* 0D5A88 800D4E88 8D4B0000 */ lw $t3, ($t2) +/* 0D5A8C 800D4E8C 15690004 */ bne $t3, $t1, .L800D4EA0 +/* 0D5A90 800D4E90 00000000 */ nop +/* 0D5A94 800D4E94 8FA40018 */ lw $a0, 0x18($sp) +/* 0D5A98 800D4E98 0C035431 */ jal func_800D50C4 +/* 0D5A9C 800D4E9C 8FA5001C */ lw $a1, 0x1c($sp) +.L800D4EA0: +/* 0D5AA0 800D4EA0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D5AA4 800D4EA4 27BD0020 */ addiu $sp, $sp, 0x20 +/* 0D5AA8 800D4EA8 00001025 */ move $v0, $zero +/* 0D5AAC 800D4EAC 03E00008 */ jr $ra +/* 0D5AB0 800D4EB0 00000000 */ nop + +/* 0D5AB4 800D4EB4 00000000 */ nop +/* 0D5AB8 800D4EB8 00000000 */ nop +/* 0D5ABC 800D4EBC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D4EC0.s b/asm/non_matchings/unknown_0D3020/func_800D4EC0.s new file mode 100644 index 00000000..b2bbc752 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D4EC0.s @@ -0,0 +1,37 @@ +glabel func_800D4EC0 +/* 0D5AC0 800D4EC0 3C018013 */ lui $at, %hi(D_8012D220) # $at, 0x8013 +/* 0D5AC4 800D4EC4 240E0000 */ li $t6, 0 +/* 0D5AC8 800D4EC8 240F0000 */ li $t7, 0 +/* 0D5ACC 800D4ECC AC2FD224 */ sw $t7, %lo(D_8012D224)($at) +/* 0D5AD0 800D4ED0 AC2ED220 */ sw $t6, %lo(D_8012D220)($at) +/* 0D5AD4 800D4ED4 3C018013 */ lui $at, %hi(D_8012D228) # $at, 0x8013 +/* 0D5AD8 800D4ED8 3C18800E */ lui $t8, %hi(D_800E4910) # $t8, 0x800e +/* 0D5ADC 800D4EDC 8F184910 */ lw $t8, %lo(D_800E4910)($t8) +/* 0D5AE0 800D4EE0 AC20D228 */ sw $zero, %lo(D_8012D228)($at) +/* 0D5AE4 800D4EE4 3C018013 */ lui $at, %hi(D_8012D22C) # $at, 0x8013 +/* 0D5AE8 800D4EE8 AC20D22C */ sw $zero, %lo(D_8012D22C)($at) +/* 0D5AEC 800D4EEC 3C19800E */ lui $t9, %hi(D_800E4910) # $t9, 0x800e +/* 0D5AF0 800D4EF0 AF180004 */ sw $t8, 4($t8) +/* 0D5AF4 800D4EF4 8F394910 */ lw $t9, %lo(D_800E4910)($t9) +/* 0D5AF8 800D4EF8 3C09800E */ lui $t1, %hi(D_800E4910) # $t1, 0x800e +/* 0D5AFC 800D4EFC 240A0000 */ li $t2, 0 +/* 0D5B00 800D4F00 8F280004 */ lw $t0, 4($t9) +/* 0D5B04 800D4F04 240B0000 */ li $t3, 0 +/* 0D5B08 800D4F08 3C0C800E */ lui $t4, %hi(D_800E4910) # $t4, 0x800e +/* 0D5B0C 800D4F0C AF280000 */ sw $t0, ($t9) +/* 0D5B10 800D4F10 8D294910 */ lw $t1, %lo(D_800E4910)($t1) +/* 0D5B14 800D4F14 3C0D800E */ lui $t5, %hi(D_800E4910) # $t5, 0x800e +/* 0D5B18 800D4F18 3C18800E */ lui $t8, %hi(D_800E4910) # $t8, 0x800e +/* 0D5B1C 800D4F1C AD2A0010 */ sw $t2, 0x10($t1) +/* 0D5B20 800D4F20 AD2B0014 */ sw $t3, 0x14($t1) +/* 0D5B24 800D4F24 8D8C4910 */ lw $t4, %lo(D_800E4910)($t4) +/* 0D5B28 800D4F28 8D8E0010 */ lw $t6, 0x10($t4) +/* 0D5B2C 800D4F2C 8D8F0014 */ lw $t7, 0x14($t4) +/* 0D5B30 800D4F30 AD8E0008 */ sw $t6, 8($t4) +/* 0D5B34 800D4F34 AD8F000C */ sw $t7, 0xc($t4) +/* 0D5B38 800D4F38 8DAD4910 */ lw $t5, %lo(D_800E4910)($t5) +/* 0D5B3C 800D4F3C ADA00018 */ sw $zero, 0x18($t5) +/* 0D5B40 800D4F40 8F184910 */ lw $t8, %lo(D_800E4910)($t8) +/* 0D5B44 800D4F44 03E00008 */ jr $ra +/* 0D5B48 800D4F48 AF00001C */ sw $zero, 0x1c($t8) + diff --git a/asm/non_matchings/unknown_0D3020/func_800D4F4C.s b/asm/non_matchings/unknown_0D3020/func_800D4F4C.s new file mode 100644 index 00000000..7f55a925 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D4F4C.s @@ -0,0 +1,103 @@ +glabel func_800D4F4C +/* 0D5B4C 800D4F4C 3C0E800E */ lui $t6, %hi(D_800E4910) # $t6, 0x800e +/* 0D5B50 800D4F50 8DCE4910 */ lw $t6, %lo(D_800E4910)($t6) +/* 0D5B54 800D4F54 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0D5B58 800D4F58 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D5B5C 800D4F5C 8DCF0000 */ lw $t7, ($t6) +/* 0D5B60 800D4F60 11EE0054 */ beq $t7, $t6, .L800D50B4 +/* 0D5B64 800D4F64 00000000 */ nop +.L800D4F68: +/* 0D5B68 800D4F68 3C18800E */ lui $t8, %hi(D_800E4910) # $t8, 0x800e +/* 0D5B6C 800D4F6C 8F184910 */ lw $t8, %lo(D_800E4910)($t8) +/* 0D5B70 800D4F70 8F190000 */ lw $t9, ($t8) +/* 0D5B74 800D4F74 17380006 */ bne $t9, $t8, .L800D4F90 +/* 0D5B78 800D4F78 AFB90024 */ sw $t9, 0x24($sp) +/* 0D5B7C 800D4F7C 0C035D18 */ jal func_800D7460 +/* 0D5B80 800D4F80 00002025 */ move $a0, $zero +/* 0D5B84 800D4F84 3C018013 */ lui $at, %hi(D_8012D230) # $at, 0x8013 +/* 0D5B88 800D4F88 1000004A */ b .L800D50B4 +/* 0D5B8C 800D4F8C AC20D230 */ sw $zero, %lo(D_8012D230)($at) +.L800D4F90: +/* 0D5B90 800D4F90 0C031E34 */ jal func_800C78D0 +/* 0D5B94 800D4F94 00000000 */ nop +/* 0D5B98 800D4F98 AFA20020 */ sw $v0, 0x20($sp) +/* 0D5B9C 800D4F9C 3C098013 */ lui $t1, %hi(D_8012D230) # $t1, 0x8013 +/* 0D5BA0 800D4FA0 8D29D230 */ lw $t1, %lo(D_8012D230)($t1) +/* 0D5BA4 800D4FA4 8FA80020 */ lw $t0, 0x20($sp) +/* 0D5BA8 800D4FA8 8FAF0024 */ lw $t7, 0x24($sp) +/* 0D5BAC 800D4FAC 3C018013 */ lui $at, %hi(D_8012D230) # $at, 0x8013 +/* 0D5BB0 800D4FB0 01095023 */ subu $t2, $t0, $t1 +/* 0D5BB4 800D4FB4 AFAA001C */ sw $t2, 0x1c($sp) +/* 0D5BB8 800D4FB8 AC28D230 */ sw $t0, %lo(D_8012D230)($at) +/* 0D5BBC 800D4FBC 8DEE0010 */ lw $t6, 0x10($t7) +/* 0D5BC0 800D4FC0 8FAB001C */ lw $t3, 0x1c($sp) +/* 0D5BC4 800D4FC4 240C0000 */ li $t4, 0 +/* 0D5BC8 800D4FC8 01E0C825 */ move $t9, $t7 +/* 0D5BCC 800D4FCC 01CC082B */ sltu $at, $t6, $t4 +/* 0D5BD0 800D4FD0 8DEF0014 */ lw $t7, 0x14($t7) +/* 0D5BD4 800D4FD4 14200016 */ bnez $at, .L800D5030 +/* 0D5BD8 800D4FD8 01606825 */ move $t5, $t3 +/* 0D5BDC 800D4FDC 018E082B */ sltu $at, $t4, $t6 +/* 0D5BE0 800D4FE0 14200003 */ bnez $at, .L800D4FF0 +/* 0D5BE4 800D4FE4 01AF082B */ sltu $at, $t5, $t7 +/* 0D5BE8 800D4FE8 10200011 */ beqz $at, .L800D5030 +/* 0D5BEC 800D4FEC 00000000 */ nop +.L800D4FF0: +/* 0D5BF0 800D4FF0 27380010 */ addiu $t8, $t9, 0x10 +/* 0D5BF4 800D4FF4 AFB80018 */ sw $t8, 0x18($sp) +/* 0D5BF8 800D4FF8 8F2B0014 */ lw $t3, 0x14($t9) +/* 0D5BFC 800D4FFC 8F2A0010 */ lw $t2, 0x10($t9) +/* 0D5C00 800D5000 016D082B */ sltu $at, $t3, $t5 +/* 0D5C04 800D5004 014C4023 */ subu $t0, $t2, $t4 +/* 0D5C08 800D5008 01014023 */ subu $t0, $t0, $at +/* 0D5C0C 800D500C 016D4823 */ subu $t1, $t3, $t5 +/* 0D5C10 800D5010 AF290014 */ sw $t1, 0x14($t9) +/* 0D5C14 800D5014 AF280010 */ sw $t0, 0x10($t9) +/* 0D5C18 800D5018 8FAE0024 */ lw $t6, 0x24($sp) +/* 0D5C1C 800D501C 8DC40010 */ lw $a0, 0x10($t6) +/* 0D5C20 800D5020 0C035431 */ jal func_800D50C4 +/* 0D5C24 800D5024 8DC50014 */ lw $a1, 0x14($t6) +/* 0D5C28 800D5028 10000022 */ b .L800D50B4 +/* 0D5C2C 800D502C 00000000 */ nop +.L800D5030: +/* 0D5C30 800D5030 8FAF0024 */ lw $t7, 0x24($sp) +/* 0D5C34 800D5034 8DF80000 */ lw $t8, ($t7) +/* 0D5C38 800D5038 8DEA0004 */ lw $t2, 4($t7) +/* 0D5C3C 800D503C AD580000 */ sw $t8, ($t2) +/* 0D5C40 800D5040 8FAB0024 */ lw $t3, 0x24($sp) +/* 0D5C44 800D5044 8D6C0004 */ lw $t4, 4($t3) +/* 0D5C48 800D5048 8D6D0000 */ lw $t5, ($t3) +/* 0D5C4C 800D504C ADAC0004 */ sw $t4, 4($t5) +/* 0D5C50 800D5050 8FA80024 */ lw $t0, 0x24($sp) +/* 0D5C54 800D5054 AD000000 */ sw $zero, ($t0) +/* 0D5C58 800D5058 8FA90024 */ lw $t1, 0x24($sp) +/* 0D5C5C 800D505C AD200004 */ sw $zero, 4($t1) +/* 0D5C60 800D5060 8FB90024 */ lw $t9, 0x24($sp) +/* 0D5C64 800D5064 8F2E0018 */ lw $t6, 0x18($t9) +/* 0D5C68 800D5068 11C00005 */ beqz $t6, .L800D5080 +/* 0D5C6C 800D506C 00000000 */ nop +/* 0D5C70 800D5070 01C02025 */ move $a0, $t6 +/* 0D5C74 800D5074 8F25001C */ lw $a1, 0x1c($t9) +/* 0D5C78 800D5078 0C03238C */ jal func_800C8E30 +/* 0D5C7C 800D507C 00003025 */ move $a2, $zero +.L800D5080: +/* 0D5C80 800D5080 8FAF0024 */ lw $t7, 0x24($sp) +/* 0D5C84 800D5084 8DF80008 */ lw $t8, 8($t7) +/* 0D5C88 800D5088 8DF9000C */ lw $t9, 0xc($t7) +/* 0D5C8C 800D508C 17000003 */ bnez $t8, .L800D509C +/* 0D5C90 800D5090 00000000 */ nop +/* 0D5C94 800D5094 1320FFB4 */ beqz $t9, .L800D4F68 +/* 0D5C98 800D5098 00000000 */ nop +.L800D509C: +/* 0D5C9C 800D509C ADF80010 */ sw $t8, 0x10($t7) +/* 0D5CA0 800D50A0 ADF90014 */ sw $t9, 0x14($t7) +/* 0D5CA4 800D50A4 0C03544E */ jal func_800D5138 +/* 0D5CA8 800D50A8 8FA40024 */ lw $a0, 0x24($sp) +/* 0D5CAC 800D50AC 1000FFAE */ b .L800D4F68 +/* 0D5CB0 800D50B0 00000000 */ nop +.L800D50B4: +/* 0D5CB4 800D50B4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D5CB8 800D50B8 27BD0028 */ addiu $sp, $sp, 0x28 +/* 0D5CBC 800D50BC 03E00008 */ jr $ra +/* 0D5CC0 800D50C0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/func_800D50C4.s b/asm/non_matchings/unknown_0D3020/func_800D50C4.s new file mode 100644 index 00000000..23583961 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D50C4.s @@ -0,0 +1,31 @@ +glabel func_800D50C4 +/* 0D5CC4 800D50C4 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0D5CC8 800D50C8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D5CCC 800D50CC AFA40028 */ sw $a0, 0x28($sp) +/* 0D5CD0 800D50D0 0C034958 */ jal __osDisableInt +/* 0D5CD4 800D50D4 AFA5002C */ sw $a1, 0x2c($sp) +/* 0D5CD8 800D50D8 0C031E34 */ jal func_800C78D0 +/* 0D5CDC 800D50DC AFA2001C */ sw $v0, 0x1c($sp) +/* 0D5CE0 800D50E0 3C018013 */ lui $at, %hi(D_8012D230) # $at, 0x8013 +/* 0D5CE4 800D50E4 AC22D230 */ sw $v0, %lo(D_8012D230)($at) +/* 0D5CE8 800D50E8 3C0E8013 */ lui $t6, %hi(D_8012D230) # $t6, 0x8013 +/* 0D5CEC 800D50EC 8DCED230 */ lw $t6, %lo(D_8012D230)($t6) +/* 0D5CF0 800D50F0 8FA9002C */ lw $t1, 0x2c($sp) +/* 0D5CF4 800D50F4 8FA80028 */ lw $t0, 0x28($sp) +/* 0D5CF8 800D50F8 01C0C825 */ move $t9, $t6 +/* 0D5CFC 800D50FC 03295821 */ addu $t3, $t9, $t1 +/* 0D5D00 800D5100 24180000 */ li $t8, 0 +/* 0D5D04 800D5104 0169082B */ sltu $at, $t3, $t1 +/* 0D5D08 800D5108 00385021 */ addu $t2, $at, $t8 +/* 0D5D0C 800D510C 01485021 */ addu $t2, $t2, $t0 +/* 0D5D10 800D5110 AFAA0020 */ sw $t2, 0x20($sp) +/* 0D5D14 800D5114 AFAB0024 */ sw $t3, 0x24($sp) +/* 0D5D18 800D5118 0C035D18 */ jal func_800D7460 +/* 0D5D1C 800D511C 01602025 */ move $a0, $t3 +/* 0D5D20 800D5120 0C034960 */ jal __osRestoreInt +/* 0D5D24 800D5124 8FA4001C */ lw $a0, 0x1c($sp) +/* 0D5D28 800D5128 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D5D2C 800D512C 27BD0028 */ addiu $sp, $sp, 0x28 +/* 0D5D30 800D5130 03E00008 */ jr $ra +/* 0D5D34 800D5134 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/func_800D5138.s b/asm/non_matchings/unknown_0D3020/func_800D5138.s new file mode 100644 index 00000000..ffa867f4 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D5138.s @@ -0,0 +1,103 @@ +glabel func_800D5138 +/* 0D5D38 800D5138 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0D5D3C 800D513C AFBF0014 */ sw $ra, 0x14($sp) +/* 0D5D40 800D5140 0C034958 */ jal __osDisableInt +/* 0D5D44 800D5144 AFA40038 */ sw $a0, 0x38($sp) +/* 0D5D48 800D5148 3C0E800E */ lui $t6, %hi(D_800E4910) # $t6, 0x800e +/* 0D5D4C 800D514C 8DCE4910 */ lw $t6, %lo(D_800E4910)($t6) +/* 0D5D50 800D5150 AFA20024 */ sw $v0, 0x24($sp) +/* 0D5D54 800D5154 8FB80038 */ lw $t8, 0x38($sp) +/* 0D5D58 800D5158 8DCF0000 */ lw $t7, ($t6) +/* 0D5D5C 800D515C AFAF0034 */ sw $t7, 0x34($sp) +/* 0D5D60 800D5160 8F090014 */ lw $t1, 0x14($t8) +/* 0D5D64 800D5164 8F080010 */ lw $t0, 0x10($t8) +/* 0D5D68 800D5168 AFA9002C */ sw $t1, 0x2c($sp) +/* 0D5D6C 800D516C 11EE0029 */ beq $t7, $t6, .L800D5214 +/* 0D5D70 800D5170 AFA80028 */ sw $t0, 0x28($sp) +/* 0D5D74 800D5174 8DEA0010 */ lw $t2, 0x10($t7) +/* 0D5D78 800D5178 8DEB0014 */ lw $t3, 0x14($t7) +/* 0D5D7C 800D517C 010A082B */ sltu $at, $t0, $t2 +/* 0D5D80 800D5180 14200024 */ bnez $at, .L800D5214 +/* 0D5D84 800D5184 0148082B */ sltu $at, $t2, $t0 +/* 0D5D88 800D5188 14200003 */ bnez $at, .L800D5198 +/* 0D5D8C 800D518C 0169082B */ sltu $at, $t3, $t1 +/* 0D5D90 800D5190 10200020 */ beqz $at, .L800D5214 +/* 0D5D94 800D5194 00000000 */ nop +.L800D5198: +/* 0D5D98 800D5198 27B90028 */ addiu $t9, $sp, 0x28 +/* 0D5D9C 800D519C 8FB80034 */ lw $t8, 0x34($sp) +/* 0D5DA0 800D51A0 AFB90020 */ sw $t9, 0x20($sp) +/* 0D5DA4 800D51A4 8F2D0004 */ lw $t5, 4($t9) +/* 0D5DA8 800D51A8 8F2C0000 */ lw $t4, ($t9) +/* 0D5DAC 800D51AC 8F0F0014 */ lw $t7, 0x14($t8) +/* 0D5DB0 800D51B0 8F0E0010 */ lw $t6, 0x10($t8) +/* 0D5DB4 800D51B4 3C18800E */ lui $t8, %hi(D_800E4910) # $t8, 0x800e +/* 0D5DB8 800D51B8 01AF082B */ sltu $at, $t5, $t7 +/* 0D5DBC 800D51BC 018E4023 */ subu $t0, $t4, $t6 +/* 0D5DC0 800D51C0 01014023 */ subu $t0, $t0, $at +/* 0D5DC4 800D51C4 01AF4823 */ subu $t1, $t5, $t7 +/* 0D5DC8 800D51C8 AF290004 */ sw $t1, 4($t9) +/* 0D5DCC 800D51CC AF280000 */ sw $t0, ($t9) +/* 0D5DD0 800D51D0 8FAA0034 */ lw $t2, 0x34($sp) +/* 0D5DD4 800D51D4 8F184910 */ lw $t8, %lo(D_800E4910)($t8) +/* 0D5DD8 800D51D8 8D4B0000 */ lw $t3, ($t2) +/* 0D5DDC 800D51DC 1178000D */ beq $t3, $t8, .L800D5214 +/* 0D5DE0 800D51E0 AFAB0034 */ sw $t3, 0x34($sp) +/* 0D5DE4 800D51E4 8FAC0028 */ lw $t4, 0x28($sp) +/* 0D5DE8 800D51E8 8D6E0010 */ lw $t6, 0x10($t3) +/* 0D5DEC 800D51EC 8FAD002C */ lw $t5, 0x2c($sp) +/* 0D5DF0 800D51F0 8D6F0014 */ lw $t7, 0x14($t3) +/* 0D5DF4 800D51F4 01CC082B */ sltu $at, $t6, $t4 +/* 0D5DF8 800D51F8 1420FFE7 */ bnez $at, .L800D5198 +/* 0D5DFC 800D51FC 00000000 */ nop +/* 0D5E00 800D5200 018E082B */ sltu $at, $t4, $t6 +/* 0D5E04 800D5204 14200003 */ bnez $at, .L800D5214 +/* 0D5E08 800D5208 01ED082B */ sltu $at, $t7, $t5 +/* 0D5E0C 800D520C 1420FFE2 */ bnez $at, .L800D5198 +/* 0D5E10 800D5210 00000000 */ nop +.L800D5214: +/* 0D5E14 800D5214 8FB90038 */ lw $t9, 0x38($sp) +/* 0D5E18 800D5218 8FA80028 */ lw $t0, 0x28($sp) +/* 0D5E1C 800D521C 8FA9002C */ lw $t1, 0x2c($sp) +/* 0D5E20 800D5220 3C18800E */ lui $t8, %hi(D_800E4910) # $t8, 0x800e +/* 0D5E24 800D5224 AF280010 */ sw $t0, 0x10($t9) +/* 0D5E28 800D5228 AF290014 */ sw $t1, 0x14($t9) +/* 0D5E2C 800D522C 8F184910 */ lw $t8, %lo(D_800E4910)($t8) +/* 0D5E30 800D5230 8FAA0034 */ lw $t2, 0x34($sp) +/* 0D5E34 800D5234 1158000D */ beq $t2, $t8, .L800D526C +/* 0D5E38 800D5238 00000000 */ nop +/* 0D5E3C 800D523C 254B0010 */ addiu $t3, $t2, 0x10 +/* 0D5E40 800D5240 AFAB001C */ sw $t3, 0x1c($sp) +/* 0D5E44 800D5244 8D4D0014 */ lw $t5, 0x14($t2) +/* 0D5E48 800D5248 8D4C0010 */ lw $t4, 0x10($t2) +/* 0D5E4C 800D524C 8FAE0028 */ lw $t6, 0x28($sp) +/* 0D5E50 800D5250 8FAF002C */ lw $t7, 0x2c($sp) +/* 0D5E54 800D5254 018E4023 */ subu $t0, $t4, $t6 +/* 0D5E58 800D5258 01AF082B */ sltu $at, $t5, $t7 +/* 0D5E5C 800D525C 01014023 */ subu $t0, $t0, $at +/* 0D5E60 800D5260 01AF4823 */ subu $t1, $t5, $t7 +/* 0D5E64 800D5264 AD490014 */ sw $t1, 0x14($t2) +/* 0D5E68 800D5268 AD480010 */ sw $t0, 0x10($t2) +.L800D526C: +/* 0D5E6C 800D526C 8FB90034 */ lw $t9, 0x34($sp) +/* 0D5E70 800D5270 8FB80038 */ lw $t8, 0x38($sp) +/* 0D5E74 800D5274 AF190000 */ sw $t9, ($t8) +/* 0D5E78 800D5278 8FAB0034 */ lw $t3, 0x34($sp) +/* 0D5E7C 800D527C 8FAD0038 */ lw $t5, 0x38($sp) +/* 0D5E80 800D5280 8D6C0004 */ lw $t4, 4($t3) +/* 0D5E84 800D5284 ADAC0004 */ sw $t4, 4($t5) +/* 0D5E88 800D5288 8FAF0034 */ lw $t7, 0x34($sp) +/* 0D5E8C 800D528C 8FAE0038 */ lw $t6, 0x38($sp) +/* 0D5E90 800D5290 8DE80004 */ lw $t0, 4($t7) +/* 0D5E94 800D5294 AD0E0000 */ sw $t6, ($t0) +/* 0D5E98 800D5298 8FAA0034 */ lw $t2, 0x34($sp) +/* 0D5E9C 800D529C 8FA90038 */ lw $t1, 0x38($sp) +/* 0D5EA0 800D52A0 AD490004 */ sw $t1, 4($t2) +/* 0D5EA4 800D52A4 0C034960 */ jal __osRestoreInt +/* 0D5EA8 800D52A8 8FA40024 */ lw $a0, 0x24($sp) +/* 0D5EAC 800D52AC 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D5EB0 800D52B0 8FA20028 */ lw $v0, 0x28($sp) +/* 0D5EB4 800D52B4 8FA3002C */ lw $v1, 0x2c($sp) +/* 0D5EB8 800D52B8 03E00008 */ jr $ra +/* 0D5EBC 800D52BC 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_0D3020/func_800D52C0.s b/asm/non_matchings/unknown_0D3020/func_800D52C0.s new file mode 100644 index 00000000..7f5379bf --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D52C0.s @@ -0,0 +1,16 @@ +glabel func_800D52C0 +/* 0D5EC0 800D52C0 3C0EA480 */ lui $t6, %hi(D_A4800018) # $t6, 0xa480 +/* 0D5EC4 800D52C4 8DC40018 */ lw $a0, %lo(D_A4800018)($t6) +/* 0D5EC8 800D52C8 27BDFFF8 */ addiu $sp, $sp, -8 +/* 0D5ECC 800D52CC 308F0003 */ andi $t7, $a0, 3 +/* 0D5ED0 800D52D0 11E00003 */ beqz $t7, .L800D52E0 +/* 0D5ED4 800D52D4 00000000 */ nop +/* 0D5ED8 800D52D8 10000002 */ b .L800D52E4 +/* 0D5EDC 800D52DC 24020001 */ li $v0, 1 +.L800D52E0: +/* 0D5EE0 800D52E0 00001025 */ move $v0, $zero +.L800D52E4: +/* 0D5EE4 800D52E4 03E00008 */ jr $ra +/* 0D5EE8 800D52E8 27BD0008 */ addiu $sp, $sp, 8 + +/* 0D5EEC 800D52EC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D52F0.s b/asm/non_matchings/unknown_0D3020/func_800D52F0.s new file mode 100644 index 00000000..80845c0e --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D52F0.s @@ -0,0 +1,27 @@ +glabel func_800D52F0 +/* 0D5EF0 800D52F0 27BDFFF0 */ addiu $sp, $sp, -0x10 +/* 0D5EF4 800D52F4 AFA00008 */ sw $zero, 8($sp) +/* 0D5EF8 800D52F8 AFA40004 */ sw $a0, 4($sp) +/* 0D5EFC 800D52FC 18A00010 */ blez $a1, .L800D5340 +/* 0D5F00 800D5300 AFA0000C */ sw $zero, 0xc($sp) +.L800D5304: +/* 0D5F04 800D5304 8FAF0004 */ lw $t7, 4($sp) +/* 0D5F08 800D5308 8FAE0008 */ lw $t6, 8($sp) +/* 0D5F0C 800D530C 8FAB000C */ lw $t3, 0xc($sp) +/* 0D5F10 800D5310 91F80000 */ lbu $t8, ($t7) +/* 0D5F14 800D5314 25E80001 */ addiu $t0, $t7, 1 +/* 0D5F18 800D5318 256C0001 */ addiu $t4, $t3, 1 +/* 0D5F1C 800D531C 01D8C821 */ addu $t9, $t6, $t8 +/* 0D5F20 800D5320 AFB90008 */ sw $t9, 8($sp) +/* 0D5F24 800D5324 8FA90008 */ lw $t1, 8($sp) +/* 0D5F28 800D5328 0185082A */ slt $at, $t4, $a1 +/* 0D5F2C 800D532C AFAC000C */ sw $t4, 0xc($sp) +/* 0D5F30 800D5330 312AFFFF */ andi $t2, $t1, 0xffff +/* 0D5F34 800D5334 AFA80004 */ sw $t0, 4($sp) +/* 0D5F38 800D5338 1420FFF2 */ bnez $at, .L800D5304 +/* 0D5F3C 800D533C AFAA0008 */ sw $t2, 8($sp) +.L800D5340: +/* 0D5F40 800D5340 97A2000A */ lhu $v0, 0xa($sp) +/* 0D5F44 800D5344 03E00008 */ jr $ra +/* 0D5F48 800D5348 27BD0010 */ addiu $sp, $sp, 0x10 + diff --git a/asm/non_matchings/unknown_0D3020/func_800D534C.s b/asm/non_matchings/unknown_0D3020/func_800D534C.s new file mode 100644 index 00000000..56ac6be4 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D534C.s @@ -0,0 +1,29 @@ +glabel func_800D534C +/* 0D5F4C 800D534C 27BDFFF8 */ addiu $sp, $sp, -8 +/* 0D5F50 800D5350 A7A00006 */ sh $zero, 6($sp) +/* 0D5F54 800D5354 A4C00000 */ sh $zero, ($a2) +/* 0D5F58 800D5358 94CE0000 */ lhu $t6, ($a2) +/* 0D5F5C 800D535C A4AE0000 */ sh $t6, ($a1) +/* 0D5F60 800D5360 AFA00000 */ sw $zero, ($sp) +.L800D5364: +/* 0D5F64 800D5364 8FAF0000 */ lw $t7, ($sp) +/* 0D5F68 800D5368 008FC021 */ addu $t8, $a0, $t7 +/* 0D5F6C 800D536C 97190000 */ lhu $t9, ($t8) +/* 0D5F70 800D5370 A7B90006 */ sh $t9, 6($sp) +/* 0D5F74 800D5374 94A80000 */ lhu $t0, ($a1) +/* 0D5F78 800D5378 01194821 */ addu $t1, $t0, $t9 +/* 0D5F7C 800D537C A4A90000 */ sh $t1, ($a1) +/* 0D5F80 800D5380 97AB0006 */ lhu $t3, 6($sp) +/* 0D5F84 800D5384 94CA0000 */ lhu $t2, ($a2) +/* 0D5F88 800D5388 01606027 */ not $t4, $t3 +/* 0D5F8C 800D538C 014C6821 */ addu $t5, $t2, $t4 +/* 0D5F90 800D5390 A4CD0000 */ sh $t5, ($a2) +/* 0D5F94 800D5394 8FAE0000 */ lw $t6, ($sp) +/* 0D5F98 800D5398 25CF0002 */ addiu $t7, $t6, 2 +/* 0D5F9C 800D539C 2DE1001C */ sltiu $at, $t7, 0x1c +/* 0D5FA0 800D53A0 1420FFF0 */ bnez $at, .L800D5364 +/* 0D5FA4 800D53A4 AFAF0000 */ sw $t7, ($sp) +/* 0D5FA8 800D53A8 00001025 */ move $v0, $zero +/* 0D5FAC 800D53AC 03E00008 */ jr $ra +/* 0D5FB0 800D53B0 27BD0008 */ addiu $sp, $sp, 8 + diff --git a/asm/non_matchings/unknown_0D3020/func_800D53B4.s b/asm/non_matchings/unknown_0D3020/func_800D53B4.s new file mode 100644 index 00000000..46673e8f --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D53B4.s @@ -0,0 +1,286 @@ +glabel func_800D53B4 +/* 0D5FB4 800D53B4 27BDFF88 */ addiu $sp, $sp, -0x78 +/* 0D5FB8 800D53B8 AFA40078 */ sw $a0, 0x78($sp) +/* 0D5FBC 800D53BC 8FAE0078 */ lw $t6, 0x78($sp) +/* 0D5FC0 800D53C0 AFBF001C */ sw $ra, 0x1c($sp) +/* 0D5FC4 800D53C4 AFA5007C */ sw $a1, 0x7c($sp) +/* 0D5FC8 800D53C8 AFA60080 */ sw $a2, 0x80($sp) +/* 0D5FCC 800D53CC AFA00074 */ sw $zero, 0x74($sp) +/* 0D5FD0 800D53D0 A3A00033 */ sb $zero, 0x33($sp) +/* 0D5FD4 800D53D4 91CF0065 */ lbu $t7, 0x65($t6) +/* 0D5FD8 800D53D8 11E0000A */ beqz $t7, .L800D5404 +/* 0D5FDC 800D53DC 00000000 */ nop +/* 0D5FE0 800D53E0 A1C00065 */ sb $zero, 0x65($t6) +/* 0D5FE4 800D53E4 0C0357F7 */ jal func_800D5FDC +/* 0D5FE8 800D53E8 8FA40078 */ lw $a0, 0x78($sp) +/* 0D5FEC 800D53EC AFA20074 */ sw $v0, 0x74($sp) +/* 0D5FF0 800D53F0 8FB80074 */ lw $t8, 0x74($sp) +/* 0D5FF4 800D53F4 13000003 */ beqz $t8, .L800D5404 +/* 0D5FF8 800D53F8 00000000 */ nop +/* 0D5FFC 800D53FC 100000EF */ b .L800D57BC +/* 0D6000 800D5400 03001025 */ move $v0, $t8 +.L800D5404: +/* 0D6004 800D5404 8FA80080 */ lw $t0, 0x80($sp) +/* 0D6008 800D5408 2419FFFF */ li $t9, -1 +/* 0D600C 800D540C 0C031E34 */ jal func_800C78D0 +/* 0D6010 800D5410 AD190000 */ sw $t9, ($t0) +/* 0D6014 800D5414 8FA90080 */ lw $t1, 0x80($sp) +/* 0D6018 800D5418 AD220004 */ sw $v0, 4($t1) +/* 0D601C 800D541C 8FAA007C */ lw $t2, 0x7c($sp) +/* 0D6020 800D5420 8FAB0080 */ lw $t3, 0x80($sp) +/* 0D6024 800D5424 8D4C0008 */ lw $t4, 8($t2) +/* 0D6028 800D5428 8D4D000C */ lw $t5, 0xc($t2) +/* 0D602C 800D542C AD6C0008 */ sw $t4, 8($t3) +/* 0D6030 800D5430 AD6D000C */ sw $t5, 0xc($t3) +/* 0D6034 800D5434 8FAF007C */ lw $t7, 0x7c($sp) +/* 0D6038 800D5438 8FB80080 */ lw $t8, 0x80($sp) +/* 0D603C 800D543C 8DEE0010 */ lw $t6, 0x10($t7) +/* 0D6040 800D5440 8DEF0014 */ lw $t7, 0x14($t7) +/* 0D6044 800D5444 AF0E0010 */ sw $t6, 0x10($t8) +/* 0D6048 800D5448 AF0F0014 */ sw $t7, 0x14($t8) +/* 0D604C 800D544C AFA00028 */ sw $zero, 0x28($sp) +.L800D5450: +/* 0D6050 800D5450 8FB90028 */ lw $t9, 0x28($sp) +/* 0D6054 800D5454 8FA80078 */ lw $t0, 0x78($sp) +/* 0D6058 800D5458 A1190065 */ sb $t9, 0x65($t0) +/* 0D605C 800D545C 0C0357F7 */ jal func_800D5FDC +/* 0D6060 800D5460 8FA40078 */ lw $a0, 0x78($sp) +/* 0D6064 800D5464 AFA20074 */ sw $v0, 0x74($sp) +/* 0D6068 800D5468 8FA90074 */ lw $t1, 0x74($sp) +/* 0D606C 800D546C 11200003 */ beqz $t1, .L800D547C +/* 0D6070 800D5470 00000000 */ nop +/* 0D6074 800D5474 100000D1 */ b .L800D57BC +/* 0D6078 800D5478 01201025 */ move $v0, $t1 +.L800D547C: +/* 0D607C 800D547C 8FAA0078 */ lw $t2, 0x78($sp) +/* 0D6080 800D5480 00003025 */ move $a2, $zero +/* 0D6084 800D5484 27A70054 */ addiu $a3, $sp, 0x54 +/* 0D6088 800D5488 8D440004 */ lw $a0, 4($t2) +/* 0D608C 800D548C 0C033728 */ jal func_800CDCA0 +/* 0D6090 800D5490 8D450008 */ lw $a1, 8($t2) +/* 0D6094 800D5494 AFA20074 */ sw $v0, 0x74($sp) +/* 0D6098 800D5498 8FAC0074 */ lw $t4, 0x74($sp) +/* 0D609C 800D549C 11800003 */ beqz $t4, .L800D54AC +/* 0D60A0 800D54A0 00000000 */ nop +/* 0D60A4 800D54A4 100000C5 */ b .L800D57BC +/* 0D60A8 800D54A8 01801025 */ move $v0, $t4 +.L800D54AC: +/* 0D60AC 800D54AC 8FAD0028 */ lw $t5, 0x28($sp) +/* 0D60B0 800D54B0 27AE0054 */ addiu $t6, $sp, 0x54 +/* 0D60B4 800D54B4 240F0001 */ li $t7, 1 +/* 0D60B8 800D54B8 35AB0080 */ ori $t3, $t5, 0x80 +/* 0D60BC 800D54BC A1CB0000 */ sb $t3, ($t6) +/* 0D60C0 800D54C0 AFAF002C */ sw $t7, 0x2c($sp) +.L800D54C4: +/* 0D60C4 800D54C4 8FB8002C */ lw $t8, 0x2c($sp) +/* 0D60C8 800D54C8 27B90054 */ addiu $t9, $sp, 0x54 +/* 0D60CC 800D54CC 03194021 */ addu $t0, $t8, $t9 +/* 0D60D0 800D54D0 91090000 */ lbu $t1, ($t0) +/* 0D60D4 800D54D4 01205027 */ not $t2, $t1 +/* 0D60D8 800D54D8 A10A0000 */ sb $t2, ($t0) +/* 0D60DC 800D54DC 8FAC002C */ lw $t4, 0x2c($sp) +/* 0D60E0 800D54E0 258D0001 */ addiu $t5, $t4, 1 +/* 0D60E4 800D54E4 29A10020 */ slti $at, $t5, 0x20 +/* 0D60E8 800D54E8 1420FFF6 */ bnez $at, .L800D54C4 +/* 0D60EC 800D54EC AFAD002C */ sw $t5, 0x2c($sp) +/* 0D60F0 800D54F0 8FAB0078 */ lw $t3, 0x78($sp) +/* 0D60F4 800D54F4 00003025 */ move $a2, $zero +/* 0D60F8 800D54F8 27A70054 */ addiu $a3, $sp, 0x54 +/* 0D60FC 800D54FC 8D640004 */ lw $a0, 4($t3) +/* 0D6100 800D5500 8D650008 */ lw $a1, 8($t3) +/* 0D6104 800D5504 0C03363C */ jal func_800CD8F0 +/* 0D6108 800D5508 AFA00010 */ sw $zero, 0x10($sp) +/* 0D610C 800D550C AFA20074 */ sw $v0, 0x74($sp) +/* 0D6110 800D5510 8FAE0074 */ lw $t6, 0x74($sp) +/* 0D6114 800D5514 11C00003 */ beqz $t6, .L800D5524 +/* 0D6118 800D5518 00000000 */ nop +/* 0D611C 800D551C 100000A7 */ b .L800D57BC +/* 0D6120 800D5520 01C01025 */ move $v0, $t6 +.L800D5524: +/* 0D6124 800D5524 8FAF0078 */ lw $t7, 0x78($sp) +/* 0D6128 800D5528 00003025 */ move $a2, $zero +/* 0D612C 800D552C 27A70034 */ addiu $a3, $sp, 0x34 +/* 0D6130 800D5530 8DE40004 */ lw $a0, 4($t7) +/* 0D6134 800D5534 0C033728 */ jal func_800CDCA0 +/* 0D6138 800D5538 8DE50008 */ lw $a1, 8($t7) +/* 0D613C 800D553C AFA20074 */ sw $v0, 0x74($sp) +/* 0D6140 800D5540 8FB80074 */ lw $t8, 0x74($sp) +/* 0D6144 800D5544 13000003 */ beqz $t8, .L800D5554 +/* 0D6148 800D5548 00000000 */ nop +/* 0D614C 800D554C 1000009B */ b .L800D57BC +/* 0D6150 800D5550 03001025 */ move $v0, $t8 +.L800D5554: +/* 0D6154 800D5554 AFA0002C */ sw $zero, 0x2c($sp) +.L800D5558: +/* 0D6158 800D5558 8FB9002C */ lw $t9, 0x2c($sp) +/* 0D615C 800D555C 03B94821 */ addu $t1, $sp, $t9 +/* 0D6160 800D5560 03B95021 */ addu $t2, $sp, $t9 +/* 0D6164 800D5564 914A0034 */ lbu $t2, 0x34($t2) +/* 0D6168 800D5568 91290054 */ lbu $t1, 0x54($t1) +/* 0D616C 800D556C 152A0006 */ bne $t1, $t2, .L800D5588 +/* 0D6170 800D5570 00000000 */ nop +/* 0D6174 800D5574 8FA8002C */ lw $t0, 0x2c($sp) +/* 0D6178 800D5578 250C0001 */ addiu $t4, $t0, 1 +/* 0D617C 800D557C 29810020 */ slti $at, $t4, 0x20 +/* 0D6180 800D5580 1420FFF5 */ bnez $at, .L800D5558 +/* 0D6184 800D5584 AFAC002C */ sw $t4, 0x2c($sp) +.L800D5588: +/* 0D6188 800D5588 8FAD002C */ lw $t5, 0x2c($sp) +/* 0D618C 800D558C 24010020 */ li $at, 32 +/* 0D6190 800D5590 15A10026 */ bne $t5, $at, .L800D562C +/* 0D6194 800D5594 00000000 */ nop +/* 0D6198 800D5598 8FAB0028 */ lw $t3, 0x28($sp) +/* 0D619C 800D559C 1960001C */ blez $t3, .L800D5610 +/* 0D61A0 800D55A0 00000000 */ nop +/* 0D61A4 800D55A4 8FAE0078 */ lw $t6, 0x78($sp) +/* 0D61A8 800D55A8 A1C00065 */ sb $zero, 0x65($t6) +/* 0D61AC 800D55AC 0C0357F7 */ jal func_800D5FDC +/* 0D61B0 800D55B0 8FA40078 */ lw $a0, 0x78($sp) +/* 0D61B4 800D55B4 AFA20074 */ sw $v0, 0x74($sp) +/* 0D61B8 800D55B8 8FAF0074 */ lw $t7, 0x74($sp) +/* 0D61BC 800D55BC 11E00003 */ beqz $t7, .L800D55CC +/* 0D61C0 800D55C0 00000000 */ nop +/* 0D61C4 800D55C4 1000007D */ b .L800D57BC +/* 0D61C8 800D55C8 01E01025 */ move $v0, $t7 +.L800D55CC: +/* 0D61CC 800D55CC 8FB80078 */ lw $t8, 0x78($sp) +/* 0D61D0 800D55D0 00003025 */ move $a2, $zero +/* 0D61D4 800D55D4 27A70054 */ addiu $a3, $sp, 0x54 +/* 0D61D8 800D55D8 8F040004 */ lw $a0, 4($t8) +/* 0D61DC 800D55DC 0C033728 */ jal func_800CDCA0 +/* 0D61E0 800D55E0 8F050008 */ lw $a1, 8($t8) +/* 0D61E4 800D55E4 AFA20074 */ sw $v0, 0x74($sp) +/* 0D61E8 800D55E8 8FB90074 */ lw $t9, 0x74($sp) +/* 0D61EC 800D55EC 13200003 */ beqz $t9, .L800D55FC +/* 0D61F0 800D55F0 00000000 */ nop +/* 0D61F4 800D55F4 10000071 */ b .L800D57BC +/* 0D61F8 800D55F8 03201025 */ move $v0, $t9 +.L800D55FC: +/* 0D61FC 800D55FC 27A90054 */ addiu $t1, $sp, 0x54 +/* 0D6200 800D5600 912A0000 */ lbu $t2, ($t1) +/* 0D6204 800D5604 24010080 */ li $at, 128 +/* 0D6208 800D5608 15410008 */ bne $t2, $at, .L800D562C +/* 0D620C 800D560C 00000000 */ nop +.L800D5610: +/* 0D6210 800D5610 8FA80028 */ lw $t0, 0x28($sp) +/* 0D6214 800D5614 250C0001 */ addiu $t4, $t0, 1 +/* 0D6218 800D5618 AFAC0028 */ sw $t4, 0x28($sp) +/* 0D621C 800D561C 8FAD0028 */ lw $t5, 0x28($sp) +/* 0D6220 800D5620 29A1003E */ slti $at, $t5, 0x3e +/* 0D6224 800D5624 1420FF8A */ bnez $at, .L800D5450 +/* 0D6228 800D5628 00000000 */ nop +.L800D562C: +/* 0D622C 800D562C 8FAB0078 */ lw $t3, 0x78($sp) +/* 0D6230 800D5630 A1600065 */ sb $zero, 0x65($t3) +/* 0D6234 800D5634 0C0357F7 */ jal func_800D5FDC +/* 0D6238 800D5638 8FA40078 */ lw $a0, 0x78($sp) +/* 0D623C 800D563C AFA20074 */ sw $v0, 0x74($sp) +/* 0D6240 800D5640 8FAE0074 */ lw $t6, 0x74($sp) +/* 0D6244 800D5644 11C00003 */ beqz $t6, .L800D5654 +/* 0D6248 800D5648 00000000 */ nop +/* 0D624C 800D564C 1000005B */ b .L800D57BC +/* 0D6250 800D5650 01C01025 */ move $v0, $t6 +.L800D5654: +/* 0D6254 800D5654 8FAF0028 */ lw $t7, 0x28($sp) +/* 0D6258 800D5658 19E00004 */ blez $t7, .L800D566C +/* 0D625C 800D565C 00000000 */ nop +/* 0D6260 800D5660 24180001 */ li $t8, 1 +/* 0D6264 800D5664 10000002 */ b .L800D5670 +/* 0D6268 800D5668 A3B80033 */ sb $t8, 0x33($sp) +.L800D566C: +/* 0D626C 800D566C A3A00033 */ sb $zero, 0x33($sp) +.L800D5670: +/* 0D6270 800D5670 8FB9007C */ lw $t9, 0x7c($sp) +/* 0D6274 800D5674 93A80033 */ lbu $t0, 0x33($sp) +/* 0D6278 800D5678 8FAD0080 */ lw $t5, 0x80($sp) +/* 0D627C 800D567C 97290018 */ lhu $t1, 0x18($t9) +/* 0D6280 800D5680 312AFFFE */ andi $t2, $t1, 0xfffe +/* 0D6284 800D5684 01486025 */ or $t4, $t2, $t0 +/* 0D6288 800D5688 A5AC0018 */ sh $t4, 0x18($t5) +/* 0D628C 800D568C 8FAE0080 */ lw $t6, 0x80($sp) +/* 0D6290 800D5690 8FAB0028 */ lw $t3, 0x28($sp) +/* 0D6294 800D5694 A1CB001A */ sb $t3, 0x1a($t6) +/* 0D6298 800D5698 8FAF007C */ lw $t7, 0x7c($sp) +/* 0D629C 800D569C 8FB90080 */ lw $t9, 0x80($sp) +/* 0D62A0 800D56A0 91F8001B */ lbu $t8, 0x1b($t7) +/* 0D62A4 800D56A4 A338001B */ sb $t8, 0x1b($t9) +/* 0D62A8 800D56A8 8FA90080 */ lw $t1, 0x80($sp) +/* 0D62AC 800D56AC 01202025 */ move $a0, $t1 +/* 0D62B0 800D56B0 2525001C */ addiu $a1, $t1, 0x1c +/* 0D62B4 800D56B4 0C0354D3 */ jal func_800D534C +/* 0D62B8 800D56B8 2526001E */ addiu $a2, $t1, 0x1e +/* 0D62BC 800D56BC 240A0001 */ li $t2, 1 +/* 0D62C0 800D56C0 27A80020 */ addiu $t0, $sp, 0x20 +/* 0D62C4 800D56C4 A50A0000 */ sh $t2, ($t0) +/* 0D62C8 800D56C8 240C0003 */ li $t4, 3 +/* 0D62CC 800D56CC 27AD0020 */ addiu $t5, $sp, 0x20 +/* 0D62D0 800D56D0 A5AC0002 */ sh $t4, 2($t5) +/* 0D62D4 800D56D4 240B0004 */ li $t3, 4 +/* 0D62D8 800D56D8 27AE0020 */ addiu $t6, $sp, 0x20 +/* 0D62DC 800D56DC A5CB0004 */ sh $t3, 4($t6) +/* 0D62E0 800D56E0 240F0006 */ li $t7, 6 +/* 0D62E4 800D56E4 27B80020 */ addiu $t8, $sp, 0x20 +/* 0D62E8 800D56E8 A70F0006 */ sh $t7, 6($t8) +/* 0D62EC 800D56EC AFA0002C */ sw $zero, 0x2c($sp) +.L800D56F0: +/* 0D62F0 800D56F0 8FA9002C */ lw $t1, 0x2c($sp) +/* 0D62F4 800D56F4 8FB90078 */ lw $t9, 0x78($sp) +/* 0D62F8 800D56F8 24080001 */ li $t0, 1 +/* 0D62FC 800D56FC 00095040 */ sll $t2, $t1, 1 +/* 0D6300 800D5700 03AA3021 */ addu $a2, $sp, $t2 +/* 0D6304 800D5704 94C60020 */ lhu $a2, 0x20($a2) +/* 0D6308 800D5708 8F240004 */ lw $a0, 4($t9) +/* 0D630C 800D570C 8F250008 */ lw $a1, 8($t9) +/* 0D6310 800D5710 AFA80010 */ sw $t0, 0x10($sp) +/* 0D6314 800D5714 0C03363C */ jal func_800CD8F0 +/* 0D6318 800D5718 8FA70080 */ lw $a3, 0x80($sp) +/* 0D631C 800D571C AFA20074 */ sw $v0, 0x74($sp) +/* 0D6320 800D5720 8FAC0074 */ lw $t4, 0x74($sp) +/* 0D6324 800D5724 11800003 */ beqz $t4, .L800D5734 +/* 0D6328 800D5728 00000000 */ nop +/* 0D632C 800D572C 10000023 */ b .L800D57BC +/* 0D6330 800D5730 01801025 */ move $v0, $t4 +.L800D5734: +/* 0D6334 800D5734 8FAD002C */ lw $t5, 0x2c($sp) +/* 0D6338 800D5738 25AB0001 */ addiu $t3, $t5, 1 +/* 0D633C 800D573C 29610004 */ slti $at, $t3, 4 +/* 0D6340 800D5740 1420FFEB */ bnez $at, .L800D56F0 +/* 0D6344 800D5744 AFAB002C */ sw $t3, 0x2c($sp) +/* 0D6348 800D5748 8FAE0078 */ lw $t6, 0x78($sp) +/* 0D634C 800D574C 24060001 */ li $a2, 1 +/* 0D6350 800D5750 27A70054 */ addiu $a3, $sp, 0x54 +/* 0D6354 800D5754 8DC40004 */ lw $a0, 4($t6) +/* 0D6358 800D5758 0C033728 */ jal func_800CDCA0 +/* 0D635C 800D575C 8DC50008 */ lw $a1, 8($t6) +/* 0D6360 800D5760 AFA20074 */ sw $v0, 0x74($sp) +/* 0D6364 800D5764 8FAF0074 */ lw $t7, 0x74($sp) +/* 0D6368 800D5768 11E00003 */ beqz $t7, .L800D5778 +/* 0D636C 800D576C 00000000 */ nop +/* 0D6370 800D5770 10000012 */ b .L800D57BC +/* 0D6374 800D5774 01E01025 */ move $v0, $t7 +.L800D5778: +/* 0D6378 800D5778 AFA0002C */ sw $zero, 0x2c($sp) +.L800D577C: +/* 0D637C 800D577C 8FB9002C */ lw $t9, 0x2c($sp) +/* 0D6380 800D5780 8FB80080 */ lw $t8, 0x80($sp) +/* 0D6384 800D5784 03B94021 */ addu $t0, $sp, $t9 +/* 0D6388 800D5788 03194821 */ addu $t1, $t8, $t9 +/* 0D638C 800D578C 912A0000 */ lbu $t2, ($t1) +/* 0D6390 800D5790 91080054 */ lbu $t0, 0x54($t0) +/* 0D6394 800D5794 11480003 */ beq $t2, $t0, .L800D57A4 +/* 0D6398 800D5798 00000000 */ nop +/* 0D639C 800D579C 10000007 */ b .L800D57BC +/* 0D63A0 800D57A0 2402000A */ li $v0, 10 +.L800D57A4: +/* 0D63A4 800D57A4 8FAC002C */ lw $t4, 0x2c($sp) +/* 0D63A8 800D57A8 258D0001 */ addiu $t5, $t4, 1 +/* 0D63AC 800D57AC 29A10020 */ slti $at, $t5, 0x20 +/* 0D63B0 800D57B0 1420FFF2 */ bnez $at, .L800D577C +/* 0D63B4 800D57B4 AFAD002C */ sw $t5, 0x2c($sp) +/* 0D63B8 800D57B8 00001025 */ move $v0, $zero +.L800D57BC: +/* 0D63BC 800D57BC 8FBF001C */ lw $ra, 0x1c($sp) +/* 0D63C0 800D57C0 27BD0078 */ addiu $sp, $sp, 0x78 +/* 0D63C4 800D57C4 03E00008 */ jr $ra +/* 0D63C8 800D57C8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/func_800D57CC.s b/asm/non_matchings/unknown_0D3020/func_800D57CC.s new file mode 100644 index 00000000..3e9c35ac --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D57CC.s @@ -0,0 +1,113 @@ +glabel func_800D57CC +/* 0D63CC 800D57CC 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0D63D0 800D57D0 AFA40038 */ sw $a0, 0x38($sp) +/* 0D63D4 800D57D4 8FAE0038 */ lw $t6, 0x38($sp) +/* 0D63D8 800D57D8 AFBF001C */ sw $ra, 0x1c($sp) +/* 0D63DC 800D57DC AFA5003C */ sw $a1, 0x3c($sp) +/* 0D63E0 800D57E0 AFA0002C */ sw $zero, 0x2c($sp) +/* 0D63E4 800D57E4 91CF0065 */ lbu $t7, 0x65($t6) +/* 0D63E8 800D57E8 11E0000A */ beqz $t7, .L800D5814 +/* 0D63EC 800D57EC 00000000 */ nop +/* 0D63F0 800D57F0 A1C00065 */ sb $zero, 0x65($t6) +/* 0D63F4 800D57F4 0C0357F7 */ jal func_800D5FDC +/* 0D63F8 800D57F8 8FA40038 */ lw $a0, 0x38($sp) +/* 0D63FC 800D57FC AFA2002C */ sw $v0, 0x2c($sp) +/* 0D6400 800D5800 8FB8002C */ lw $t8, 0x2c($sp) +/* 0D6404 800D5804 13000003 */ beqz $t8, .L800D5814 +/* 0D6408 800D5808 00000000 */ nop +/* 0D640C 800D580C 10000051 */ b .L800D5954 +/* 0D6410 800D5810 03001025 */ move $v0, $t8 +.L800D5814: +/* 0D6414 800D5814 24190001 */ li $t9, 1 +/* 0D6418 800D5818 27A80030 */ addiu $t0, $sp, 0x30 +/* 0D641C 800D581C A5190000 */ sh $t9, ($t0) +/* 0D6420 800D5820 24090003 */ li $t1, 3 +/* 0D6424 800D5824 27AA0030 */ addiu $t2, $sp, 0x30 +/* 0D6428 800D5828 A5490002 */ sh $t1, 2($t2) +/* 0D642C 800D582C 240B0004 */ li $t3, 4 +/* 0D6430 800D5830 27AC0030 */ addiu $t4, $sp, 0x30 +/* 0D6434 800D5834 A58B0004 */ sh $t3, 4($t4) +/* 0D6438 800D5838 240D0006 */ li $t5, 6 +/* 0D643C 800D583C 27AF0030 */ addiu $t7, $sp, 0x30 +/* 0D6440 800D5840 A5ED0006 */ sh $t5, 6($t7) +/* 0D6444 800D5844 240E0001 */ li $t6, 1 +/* 0D6448 800D5848 AFAE0024 */ sw $t6, 0x24($sp) +.L800D584C: +/* 0D644C 800D584C 8FB90024 */ lw $t9, 0x24($sp) +/* 0D6450 800D5850 8FB80038 */ lw $t8, 0x38($sp) +/* 0D6454 800D5854 8FA7003C */ lw $a3, 0x3c($sp) +/* 0D6458 800D5858 00194040 */ sll $t0, $t9, 1 +/* 0D645C 800D585C 03A83021 */ addu $a2, $sp, $t0 +/* 0D6460 800D5860 94C60030 */ lhu $a2, 0x30($a2) +/* 0D6464 800D5864 8F040004 */ lw $a0, 4($t8) +/* 0D6468 800D5868 0C033728 */ jal func_800CDCA0 +/* 0D646C 800D586C 8F050008 */ lw $a1, 8($t8) +/* 0D6470 800D5870 AFA2002C */ sw $v0, 0x2c($sp) +/* 0D6474 800D5874 8FA9002C */ lw $t1, 0x2c($sp) +/* 0D6478 800D5878 11200003 */ beqz $t1, .L800D5888 +/* 0D647C 800D587C 00000000 */ nop +/* 0D6480 800D5880 10000034 */ b .L800D5954 +/* 0D6484 800D5884 01201025 */ move $v0, $t1 +.L800D5888: +/* 0D6488 800D5888 8FA4003C */ lw $a0, 0x3c($sp) +/* 0D648C 800D588C 27A5002A */ addiu $a1, $sp, 0x2a +/* 0D6490 800D5890 0C0354D3 */ jal func_800D534C +/* 0D6494 800D5894 27A60028 */ addiu $a2, $sp, 0x28 +/* 0D6498 800D5898 8FAA003C */ lw $t2, 0x3c($sp) +/* 0D649C 800D589C 97AC002A */ lhu $t4, 0x2a($sp) +/* 0D64A0 800D58A0 954B001C */ lhu $t3, 0x1c($t2) +/* 0D64A4 800D58A4 156C0005 */ bne $t3, $t4, .L800D58BC +/* 0D64A8 800D58A8 00000000 */ nop +/* 0D64AC 800D58AC 954D001E */ lhu $t5, 0x1e($t2) +/* 0D64B0 800D58B0 97AF0028 */ lhu $t7, 0x28($sp) +/* 0D64B4 800D58B4 11AF0006 */ beq $t5, $t7, .L800D58D0 +/* 0D64B8 800D58B8 00000000 */ nop +.L800D58BC: +/* 0D64BC 800D58BC 8FAE0024 */ lw $t6, 0x24($sp) +/* 0D64C0 800D58C0 25D80001 */ addiu $t8, $t6, 1 +/* 0D64C4 800D58C4 2B010004 */ slti $at, $t8, 4 +/* 0D64C8 800D58C8 1420FFE0 */ bnez $at, .L800D584C +/* 0D64CC 800D58CC AFB80024 */ sw $t8, 0x24($sp) +.L800D58D0: +/* 0D64D0 800D58D0 8FB90024 */ lw $t9, 0x24($sp) +/* 0D64D4 800D58D4 24010004 */ li $at, 4 +/* 0D64D8 800D58D8 17210003 */ bne $t9, $at, .L800D58E8 +/* 0D64DC 800D58DC 00000000 */ nop +/* 0D64E0 800D58E0 1000001C */ b .L800D5954 +/* 0D64E4 800D58E4 2402000A */ li $v0, 10 +.L800D58E8: +/* 0D64E8 800D58E8 AFA00020 */ sw $zero, 0x20($sp) +.L800D58EC: +/* 0D64EC 800D58EC 8FA80020 */ lw $t0, 0x20($sp) +/* 0D64F0 800D58F0 8FA90024 */ lw $t1, 0x24($sp) +/* 0D64F4 800D58F4 11090011 */ beq $t0, $t1, .L800D593C +/* 0D64F8 800D58F8 00000000 */ nop +/* 0D64FC 800D58FC 8FAB0038 */ lw $t3, 0x38($sp) +/* 0D6500 800D5900 00086040 */ sll $t4, $t0, 1 +/* 0D6504 800D5904 03AC3021 */ addu $a2, $sp, $t4 +/* 0D6508 800D5908 94C60030 */ lhu $a2, 0x30($a2) +/* 0D650C 800D590C 240A0001 */ li $t2, 1 +/* 0D6510 800D5910 8D640004 */ lw $a0, 4($t3) +/* 0D6514 800D5914 8D650008 */ lw $a1, 8($t3) +/* 0D6518 800D5918 AFAA0010 */ sw $t2, 0x10($sp) +/* 0D651C 800D591C 0C03363C */ jal func_800CD8F0 +/* 0D6520 800D5920 8FA7003C */ lw $a3, 0x3c($sp) +/* 0D6524 800D5924 AFA2002C */ sw $v0, 0x2c($sp) +/* 0D6528 800D5928 8FAD002C */ lw $t5, 0x2c($sp) +/* 0D652C 800D592C 11A00003 */ beqz $t5, .L800D593C +/* 0D6530 800D5930 00000000 */ nop +/* 0D6534 800D5934 10000007 */ b .L800D5954 +/* 0D6538 800D5938 01A01025 */ move $v0, $t5 +.L800D593C: +/* 0D653C 800D593C 8FAF0020 */ lw $t7, 0x20($sp) +/* 0D6540 800D5940 25EE0001 */ addiu $t6, $t7, 1 +/* 0D6544 800D5944 29C10004 */ slti $at, $t6, 4 +/* 0D6548 800D5948 1420FFE8 */ bnez $at, .L800D58EC +/* 0D654C 800D594C AFAE0020 */ sw $t6, 0x20($sp) +/* 0D6550 800D5950 00001025 */ move $v0, $zero +.L800D5954: +/* 0D6554 800D5954 8FBF001C */ lw $ra, 0x1c($sp) +/* 0D6558 800D5958 27BD0038 */ addiu $sp, $sp, 0x38 +/* 0D655C 800D595C 03E00008 */ jr $ra +/* 0D6560 800D5960 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/func_800D5964.s b/asm/non_matchings/unknown_0D3020/func_800D5964.s new file mode 100644 index 00000000..80fe2072 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D5964.s @@ -0,0 +1,164 @@ +glabel func_800D5964 +/* 0D6564 800D5964 27BDFF98 */ addiu $sp, $sp, -0x68 +/* 0D6568 800D5968 AFA40068 */ sw $a0, 0x68($sp) +/* 0D656C 800D596C 8FAE0068 */ lw $t6, 0x68($sp) +/* 0D6570 800D5970 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D6574 800D5974 91CF0065 */ lbu $t7, 0x65($t6) +/* 0D6578 800D5978 11E0000A */ beqz $t7, .L800D59A4 +/* 0D657C 800D597C 00000000 */ nop +/* 0D6580 800D5980 A1C00065 */ sb $zero, 0x65($t6) +/* 0D6584 800D5984 0C0357F7 */ jal func_800D5FDC +/* 0D6588 800D5988 8FA40068 */ lw $a0, 0x68($sp) +/* 0D658C 800D598C AFA2001C */ sw $v0, 0x1c($sp) +/* 0D6590 800D5990 8FB8001C */ lw $t8, 0x1c($sp) +/* 0D6594 800D5994 13000003 */ beqz $t8, .L800D59A4 +/* 0D6598 800D5998 00000000 */ nop +/* 0D659C 800D599C 10000084 */ b .L800D5BB0 +/* 0D65A0 800D59A0 03001025 */ move $v0, $t8 +.L800D59A4: +/* 0D65A4 800D59A4 8FB90068 */ lw $t9, 0x68($sp) +/* 0D65A8 800D59A8 24060001 */ li $a2, 1 +/* 0D65AC 800D59AC 27A70040 */ addiu $a3, $sp, 0x40 +/* 0D65B0 800D59B0 8F240004 */ lw $a0, 4($t9) +/* 0D65B4 800D59B4 0C033728 */ jal func_800CDCA0 +/* 0D65B8 800D59B8 8F250008 */ lw $a1, 8($t9) +/* 0D65BC 800D59BC AFA2001C */ sw $v0, 0x1c($sp) +/* 0D65C0 800D59C0 8FA8001C */ lw $t0, 0x1c($sp) +/* 0D65C4 800D59C4 11000003 */ beqz $t0, .L800D59D4 +/* 0D65C8 800D59C8 00000000 */ nop +/* 0D65CC 800D59CC 10000078 */ b .L800D5BB0 +/* 0D65D0 800D59D0 01001025 */ move $v0, $t0 +.L800D59D4: +/* 0D65D4 800D59D4 27A40040 */ addiu $a0, $sp, 0x40 +/* 0D65D8 800D59D8 27A50062 */ addiu $a1, $sp, 0x62 +/* 0D65DC 800D59DC 0C0354D3 */ jal func_800D534C +/* 0D65E0 800D59E0 27A60060 */ addiu $a2, $sp, 0x60 +/* 0D65E4 800D59E4 27A90040 */ addiu $t1, $sp, 0x40 +/* 0D65E8 800D59E8 AFA90018 */ sw $t1, 0x18($sp) +/* 0D65EC 800D59EC 952A001C */ lhu $t2, 0x1c($t1) +/* 0D65F0 800D59F0 97AB0062 */ lhu $t3, 0x62($sp) +/* 0D65F4 800D59F4 154B0005 */ bne $t2, $t3, .L800D5A0C +/* 0D65F8 800D59F8 00000000 */ nop +/* 0D65FC 800D59FC 952C001E */ lhu $t4, 0x1e($t1) +/* 0D6600 800D5A00 97AD0060 */ lhu $t5, 0x60($sp) +/* 0D6604 800D5A04 118D001B */ beq $t4, $t5, .L800D5A74 +/* 0D6608 800D5A08 00000000 */ nop +.L800D5A0C: +/* 0D660C 800D5A0C 8FA40068 */ lw $a0, 0x68($sp) +/* 0D6610 800D5A10 0C0355F3 */ jal func_800D57CC +/* 0D6614 800D5A14 8FA50018 */ lw $a1, 0x18($sp) +/* 0D6618 800D5A18 AFA2001C */ sw $v0, 0x1c($sp) +/* 0D661C 800D5A1C 8FAF001C */ lw $t7, 0x1c($sp) +/* 0D6620 800D5A20 2401000A */ li $at, 10 +/* 0D6624 800D5A24 15E1000E */ bne $t7, $at, .L800D5A60 +/* 0D6628 800D5A28 00000000 */ nop +/* 0D662C 800D5A2C 8FA40068 */ lw $a0, 0x68($sp) +/* 0D6630 800D5A30 8FA50018 */ lw $a1, 0x18($sp) +/* 0D6634 800D5A34 0C0354ED */ jal func_800D53B4 +/* 0D6638 800D5A38 27A60020 */ addiu $a2, $sp, 0x20 +/* 0D663C 800D5A3C AFA2001C */ sw $v0, 0x1c($sp) +/* 0D6640 800D5A40 8FAE001C */ lw $t6, 0x1c($sp) +/* 0D6644 800D5A44 11C00003 */ beqz $t6, .L800D5A54 +/* 0D6648 800D5A48 00000000 */ nop +/* 0D664C 800D5A4C 10000058 */ b .L800D5BB0 +/* 0D6650 800D5A50 01C01025 */ move $v0, $t6 +.L800D5A54: +/* 0D6654 800D5A54 27B80020 */ addiu $t8, $sp, 0x20 +/* 0D6658 800D5A58 10000006 */ b .L800D5A74 +/* 0D665C 800D5A5C AFB80018 */ sw $t8, 0x18($sp) +.L800D5A60: +/* 0D6660 800D5A60 8FB9001C */ lw $t9, 0x1c($sp) +/* 0D6664 800D5A64 13200003 */ beqz $t9, .L800D5A74 +/* 0D6668 800D5A68 00000000 */ nop +/* 0D666C 800D5A6C 10000050 */ b .L800D5BB0 +/* 0D6670 800D5A70 03201025 */ move $v0, $t9 +.L800D5A74: +/* 0D6674 800D5A74 8FA80018 */ lw $t0, 0x18($sp) +/* 0D6678 800D5A78 950A0018 */ lhu $t2, 0x18($t0) +/* 0D667C 800D5A7C 314B0001 */ andi $t3, $t2, 1 +/* 0D6680 800D5A80 15600013 */ bnez $t3, .L800D5AD0 +/* 0D6684 800D5A84 00000000 */ nop +/* 0D6688 800D5A88 8FA40068 */ lw $a0, 0x68($sp) +/* 0D668C 800D5A8C 01002825 */ move $a1, $t0 +/* 0D6690 800D5A90 0C0354ED */ jal func_800D53B4 +/* 0D6694 800D5A94 27A60020 */ addiu $a2, $sp, 0x20 +/* 0D6698 800D5A98 AFA2001C */ sw $v0, 0x1c($sp) +/* 0D669C 800D5A9C 8FA9001C */ lw $t1, 0x1c($sp) +/* 0D66A0 800D5AA0 11200003 */ beqz $t1, .L800D5AB0 +/* 0D66A4 800D5AA4 00000000 */ nop +/* 0D66A8 800D5AA8 10000041 */ b .L800D5BB0 +/* 0D66AC 800D5AAC 01201025 */ move $v0, $t1 +.L800D5AB0: +/* 0D66B0 800D5AB0 27AC0020 */ addiu $t4, $sp, 0x20 +/* 0D66B4 800D5AB4 AFAC0018 */ sw $t4, 0x18($sp) +/* 0D66B8 800D5AB8 958D0018 */ lhu $t5, 0x18($t4) +/* 0D66BC 800D5ABC 31AF0001 */ andi $t7, $t5, 1 +/* 0D66C0 800D5AC0 15E00003 */ bnez $t7, .L800D5AD0 +/* 0D66C4 800D5AC4 00000000 */ nop +/* 0D66C8 800D5AC8 10000039 */ b .L800D5BB0 +/* 0D66CC 800D5ACC 2402000B */ li $v0, 11 +.L800D5AD0: +/* 0D66D0 800D5AD0 AFA00064 */ sw $zero, 0x64($sp) +.L800D5AD4: +/* 0D66D4 800D5AD4 8FAE0018 */ lw $t6, 0x18($sp) +/* 0D66D8 800D5AD8 8FB80064 */ lw $t8, 0x64($sp) +/* 0D66DC 800D5ADC 8FAB0068 */ lw $t3, 0x68($sp) +/* 0D66E0 800D5AE0 01D8C821 */ addu $t9, $t6, $t8 +/* 0D66E4 800D5AE4 932A0000 */ lbu $t2, ($t9) +/* 0D66E8 800D5AE8 01784021 */ addu $t0, $t3, $t8 +/* 0D66EC 800D5AEC A10A000C */ sb $t2, 0xc($t0) +/* 0D66F0 800D5AF0 8FA90064 */ lw $t1, 0x64($sp) +/* 0D66F4 800D5AF4 252C0001 */ addiu $t4, $t1, 1 +/* 0D66F8 800D5AF8 29810020 */ slti $at, $t4, 0x20 +/* 0D66FC 800D5AFC 1420FFF5 */ bnez $at, .L800D5AD4 +/* 0D6700 800D5B00 AFAC0064 */ sw $t4, 0x64($sp) +/* 0D6704 800D5B04 8FAD0018 */ lw $t5, 0x18($sp) +/* 0D6708 800D5B08 8FAE0068 */ lw $t6, 0x68($sp) +/* 0D670C 800D5B0C 24060007 */ li $a2, 7 +/* 0D6710 800D5B10 91AF001B */ lbu $t7, 0x1b($t5) +/* 0D6714 800D5B14 240D0010 */ li $t5, 16 +/* 0D6718 800D5B18 ADCF004C */ sw $t7, 0x4c($t6) +/* 0D671C 800D5B1C 8FB90018 */ lw $t9, 0x18($sp) +/* 0D6720 800D5B20 8FB80068 */ lw $t8, 0x68($sp) +/* 0D6724 800D5B24 240E0008 */ li $t6, 8 +/* 0D6728 800D5B28 932B001A */ lbu $t3, 0x1a($t9) +/* 0D672C 800D5B2C A30B0064 */ sb $t3, 0x64($t8) +/* 0D6730 800D5B30 8FAA0068 */ lw $t2, 0x68($sp) +/* 0D6734 800D5B34 91480064 */ lbu $t0, 0x64($t2) +/* 0D6738 800D5B38 00084840 */ sll $t1, $t0, 1 +/* 0D673C 800D5B3C 252C0003 */ addiu $t4, $t1, 3 +/* 0D6740 800D5B40 AD4C0060 */ sw $t4, 0x60($t2) +/* 0D6744 800D5B44 8FAF0068 */ lw $t7, 0x68($sp) +/* 0D6748 800D5B48 ADED0050 */ sw $t5, 0x50($t7) +/* 0D674C 800D5B4C 8FB90068 */ lw $t9, 0x68($sp) +/* 0D6750 800D5B50 AF2E0054 */ sw $t6, 0x54($t9) +/* 0D6754 800D5B54 8FAB0068 */ lw $t3, 0x68($sp) +/* 0D6758 800D5B58 91780064 */ lbu $t8, 0x64($t3) +/* 0D675C 800D5B5C 001840C0 */ sll $t0, $t8, 3 +/* 0D6760 800D5B60 25090008 */ addiu $t1, $t0, 8 +/* 0D6764 800D5B64 AD690058 */ sw $t1, 0x58($t3) +/* 0D6768 800D5B68 8FAC0068 */ lw $t4, 0x68($sp) +/* 0D676C 800D5B6C 918D0064 */ lbu $t5, 0x64($t4) +/* 0D6770 800D5B70 8D8A0058 */ lw $t2, 0x58($t4) +/* 0D6774 800D5B74 000D78C0 */ sll $t7, $t5, 3 +/* 0D6778 800D5B78 014F7021 */ addu $t6, $t2, $t7 +/* 0D677C 800D5B7C AD8E005C */ sw $t6, 0x5c($t4) +/* 0D6780 800D5B80 8FB90068 */ lw $t9, 0x68($sp) +/* 0D6784 800D5B84 8F240004 */ lw $a0, 4($t9) +/* 0D6788 800D5B88 8F250008 */ lw $a1, 8($t9) +/* 0D678C 800D5B8C 0C033728 */ jal func_800CDCA0 +/* 0D6790 800D5B90 2727002C */ addiu $a3, $t9, 0x2c +/* 0D6794 800D5B94 AFA2001C */ sw $v0, 0x1c($sp) +/* 0D6798 800D5B98 8FB8001C */ lw $t8, 0x1c($sp) +/* 0D679C 800D5B9C 13000003 */ beqz $t8, .L800D5BAC +/* 0D67A0 800D5BA0 00000000 */ nop +/* 0D67A4 800D5BA4 10000002 */ b .L800D5BB0 +/* 0D67A8 800D5BA8 03001025 */ move $v0, $t8 +.L800D5BAC: +/* 0D67AC 800D5BAC 00001025 */ move $v0, $zero +.L800D5BB0: +/* 0D67B0 800D5BB0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D67B4 800D5BB4 27BD0068 */ addiu $sp, $sp, 0x68 +/* 0D67B8 800D5BB8 03E00008 */ jr $ra +/* 0D67BC 800D5BBC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/func_800D5BC0.s b/asm/non_matchings/unknown_0D3020/func_800D5BC0.s new file mode 100644 index 00000000..2c3ed3bd --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D5BC0.s @@ -0,0 +1,71 @@ +glabel func_800D5BC0 +/* 0D67C0 800D5BC0 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 0D67C4 800D5BC4 AFA40040 */ sw $a0, 0x40($sp) +/* 0D67C8 800D5BC8 8FAE0040 */ lw $t6, 0x40($sp) +/* 0D67CC 800D5BCC AFBF0014 */ sw $ra, 0x14($sp) +/* 0D67D0 800D5BD0 91CF0065 */ lbu $t7, 0x65($t6) +/* 0D67D4 800D5BD4 11E0000A */ beqz $t7, .L800D5C00 +/* 0D67D8 800D5BD8 00000000 */ nop +/* 0D67DC 800D5BDC A1C00065 */ sb $zero, 0x65($t6) +/* 0D67E0 800D5BE0 0C0357F7 */ jal func_800D5FDC +/* 0D67E4 800D5BE4 8FA40040 */ lw $a0, 0x40($sp) +/* 0D67E8 800D5BE8 AFA20018 */ sw $v0, 0x18($sp) +/* 0D67EC 800D5BEC 8FB80018 */ lw $t8, 0x18($sp) +/* 0D67F0 800D5BF0 13000003 */ beqz $t8, .L800D5C00 +/* 0D67F4 800D5BF4 00000000 */ nop +/* 0D67F8 800D5BF8 1000002C */ b .L800D5CAC +/* 0D67FC 800D5BFC 03001025 */ move $v0, $t8 +.L800D5C00: +/* 0D6800 800D5C00 8FB90040 */ lw $t9, 0x40($sp) +/* 0D6804 800D5C04 24060001 */ li $a2, 1 +/* 0D6808 800D5C08 27A7001C */ addiu $a3, $sp, 0x1c +/* 0D680C 800D5C0C 8F240004 */ lw $a0, 4($t9) +/* 0D6810 800D5C10 0C033728 */ jal func_800CDCA0 +/* 0D6814 800D5C14 8F250008 */ lw $a1, 8($t9) +/* 0D6818 800D5C18 AFA20018 */ sw $v0, 0x18($sp) +/* 0D681C 800D5C1C 8FA80018 */ lw $t0, 0x18($sp) +/* 0D6820 800D5C20 11000011 */ beqz $t0, .L800D5C68 +/* 0D6824 800D5C24 24010002 */ li $at, 2 +/* 0D6828 800D5C28 11010003 */ beq $t0, $at, .L800D5C38 +/* 0D682C 800D5C2C 00000000 */ nop +/* 0D6830 800D5C30 1000001E */ b .L800D5CAC +/* 0D6834 800D5C34 01001025 */ move $v0, $t0 +.L800D5C38: +/* 0D6838 800D5C38 8FA90040 */ lw $t1, 0x40($sp) +/* 0D683C 800D5C3C 24060001 */ li $a2, 1 +/* 0D6840 800D5C40 27A7001C */ addiu $a3, $sp, 0x1c +/* 0D6844 800D5C44 8D240004 */ lw $a0, 4($t1) +/* 0D6848 800D5C48 0C033728 */ jal func_800CDCA0 +/* 0D684C 800D5C4C 8D250008 */ lw $a1, 8($t1) +/* 0D6850 800D5C50 AFA20018 */ sw $v0, 0x18($sp) +/* 0D6854 800D5C54 8FAA0018 */ lw $t2, 0x18($sp) +/* 0D6858 800D5C58 11400003 */ beqz $t2, .L800D5C68 +/* 0D685C 800D5C5C 00000000 */ nop +/* 0D6860 800D5C60 10000012 */ b .L800D5CAC +/* 0D6864 800D5C64 01401025 */ move $v0, $t2 +.L800D5C68: +/* 0D6868 800D5C68 AFA0003C */ sw $zero, 0x3c($sp) +.L800D5C6C: +/* 0D686C 800D5C6C 8FAB003C */ lw $t3, 0x3c($sp) +/* 0D6870 800D5C70 8FAD0040 */ lw $t5, 0x40($sp) +/* 0D6874 800D5C74 03AB6021 */ addu $t4, $sp, $t3 +/* 0D6878 800D5C78 01AB7821 */ addu $t7, $t5, $t3 +/* 0D687C 800D5C7C 91EE000C */ lbu $t6, 0xc($t7) +/* 0D6880 800D5C80 918C001C */ lbu $t4, 0x1c($t4) +/* 0D6884 800D5C84 118E0003 */ beq $t4, $t6, .L800D5C94 +/* 0D6888 800D5C88 00000000 */ nop +/* 0D688C 800D5C8C 10000007 */ b .L800D5CAC +/* 0D6890 800D5C90 24020002 */ li $v0, 2 +.L800D5C94: +/* 0D6894 800D5C94 8FB8003C */ lw $t8, 0x3c($sp) +/* 0D6898 800D5C98 27190001 */ addiu $t9, $t8, 1 +/* 0D689C 800D5C9C 2B210020 */ slti $at, $t9, 0x20 +/* 0D68A0 800D5CA0 1420FFF2 */ bnez $at, .L800D5C6C +/* 0D68A4 800D5CA4 AFB9003C */ sw $t9, 0x3c($sp) +/* 0D68A8 800D5CA8 00001025 */ move $v0, $zero +.L800D5CAC: +/* 0D68AC 800D5CAC 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D68B0 800D5CB0 27BD0040 */ addiu $sp, $sp, 0x40 +/* 0D68B4 800D5CB4 03E00008 */ jr $ra +/* 0D68B8 800D5CB8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/func_800D5CBC.s b/asm/non_matchings/unknown_0D3020/func_800D5CBC.s new file mode 100644 index 00000000..67e70ad1 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D5CBC.s @@ -0,0 +1,217 @@ +glabel func_800D5CBC +/* 0D68BC 800D5CBC 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0D68C0 800D5CC0 AFA40038 */ sw $a0, 0x38($sp) +/* 0D68C4 800D5CC4 8FAE0038 */ lw $t6, 0x38($sp) +/* 0D68C8 800D5CC8 AFBF001C */ sw $ra, 0x1c($sp) +/* 0D68CC 800D5CCC AFA5003C */ sw $a1, 0x3c($sp) +/* 0D68D0 800D5CD0 AFA60040 */ sw $a2, 0x40($sp) +/* 0D68D4 800D5CD4 AFA70044 */ sw $a3, 0x44($sp) +/* 0D68D8 800D5CD8 91CF0065 */ lbu $t7, 0x65($t6) +/* 0D68DC 800D5CDC 11E0000A */ beqz $t7, .L800D5D08 +/* 0D68E0 800D5CE0 00000000 */ nop +/* 0D68E4 800D5CE4 A1C00065 */ sb $zero, 0x65($t6) +/* 0D68E8 800D5CE8 0C0357F7 */ jal func_800D5FDC +/* 0D68EC 800D5CEC 8FA40038 */ lw $a0, 0x38($sp) +/* 0D68F0 800D5CF0 AFA2002C */ sw $v0, 0x2c($sp) +/* 0D68F4 800D5CF4 8FB8002C */ lw $t8, 0x2c($sp) +/* 0D68F8 800D5CF8 13000003 */ beqz $t8, .L800D5D08 +/* 0D68FC 800D5CFC 00000000 */ nop +/* 0D6900 800D5D00 100000B2 */ b .L800D5FCC +/* 0D6904 800D5D04 03001025 */ move $v0, $t8 +.L800D5D08: +/* 0D6908 800D5D08 93B90047 */ lbu $t9, 0x47($sp) +/* 0D690C 800D5D0C 1B200004 */ blez $t9, .L800D5D20 +/* 0D6910 800D5D10 00000000 */ nop +/* 0D6914 800D5D14 24080001 */ li $t0, 1 +/* 0D6918 800D5D18 10000004 */ b .L800D5D2C +/* 0D691C 800D5D1C AFA80028 */ sw $t0, 0x28($sp) +.L800D5D20: +/* 0D6920 800D5D20 8FA90038 */ lw $t1, 0x38($sp) +/* 0D6924 800D5D24 8D2A0060 */ lw $t2, 0x60($t1) +/* 0D6928 800D5D28 AFAA0028 */ sw $t2, 0x28($sp) +.L800D5D2C: +/* 0D692C 800D5D2C 93AB0043 */ lbu $t3, 0x43($sp) +/* 0D6930 800D5D30 24010001 */ li $at, 1 +/* 0D6934 800D5D34 1561000C */ bne $t3, $at, .L800D5D68 +/* 0D6938 800D5D38 00000000 */ nop +/* 0D693C 800D5D3C 8FAD0028 */ lw $t5, 0x28($sp) +/* 0D6940 800D5D40 8FAC003C */ lw $t4, 0x3c($sp) +/* 0D6944 800D5D44 000D2823 */ negu $a1, $t5 +/* 0D6948 800D5D48 00057040 */ sll $t6, $a1, 1 +/* 0D694C 800D5D4C 01C02825 */ move $a1, $t6 +/* 0D6950 800D5D50 000D7840 */ sll $t7, $t5, 1 +/* 0D6954 800D5D54 24A50100 */ addiu $a1, $a1, 0x100 +/* 0D6958 800D5D58 0C0354BC */ jal func_800D52F0 +/* 0D695C 800D5D5C 018F2021 */ addu $a0, $t4, $t7 +/* 0D6960 800D5D60 8FB8003C */ lw $t8, 0x3c($sp) +/* 0D6964 800D5D64 A3020001 */ sb $v0, 1($t8) +.L800D5D68: +/* 0D6968 800D5D68 AFA00030 */ sw $zero, 0x30($sp) +.L800D5D6C: +/* 0D696C 800D5D6C 8FA80030 */ lw $t0, 0x30($sp) +/* 0D6970 800D5D70 8FB9003C */ lw $t9, 0x3c($sp) +/* 0D6974 800D5D74 93AB0043 */ lbu $t3, 0x43($sp) +/* 0D6978 800D5D78 00084940 */ sll $t1, $t0, 5 +/* 0D697C 800D5D7C 24010001 */ li $at, 1 +/* 0D6980 800D5D80 03295021 */ addu $t2, $t9, $t1 +/* 0D6984 800D5D84 1561001B */ bne $t3, $at, .L800D5DF4 +/* 0D6988 800D5D88 AFAA0024 */ sw $t2, 0x24($sp) +/* 0D698C 800D5D8C 8FAC0038 */ lw $t4, 0x38($sp) +/* 0D6990 800D5D90 93AD0047 */ lbu $t5, 0x47($sp) +/* 0D6994 800D5D94 01403825 */ move $a3, $t2 +/* 0D6998 800D5D98 8D8F0054 */ lw $t7, 0x54($t4) +/* 0D699C 800D5D9C 000D70C0 */ sll $t6, $t5, 3 +/* 0D69A0 800D5DA0 8D840004 */ lw $a0, 4($t4) +/* 0D69A4 800D5DA4 8D850008 */ lw $a1, 8($t4) +/* 0D69A8 800D5DA8 01EEC021 */ addu $t8, $t7, $t6 +/* 0D69AC 800D5DAC 03083021 */ addu $a2, $t8, $t0 +/* 0D69B0 800D5DB0 0C03363C */ jal func_800CD8F0 +/* 0D69B4 800D5DB4 AFA00010 */ sw $zero, 0x10($sp) +/* 0D69B8 800D5DB8 8FB90038 */ lw $t9, 0x38($sp) +/* 0D69BC 800D5DBC 93AB0047 */ lbu $t3, 0x47($sp) +/* 0D69C0 800D5DC0 AFA2002C */ sw $v0, 0x2c($sp) +/* 0D69C4 800D5DC4 8F290058 */ lw $t1, 0x58($t9) +/* 0D69C8 800D5DC8 8FAF0030 */ lw $t7, 0x30($sp) +/* 0D69CC 800D5DCC 000B60C0 */ sll $t4, $t3, 3 +/* 0D69D0 800D5DD0 8F250008 */ lw $a1, 8($t9) +/* 0D69D4 800D5DD4 8F240004 */ lw $a0, 4($t9) +/* 0D69D8 800D5DD8 012C6821 */ addu $t5, $t1, $t4 +/* 0D69DC 800D5DDC AFA00010 */ sw $zero, 0x10($sp) +/* 0D69E0 800D5DE0 8FA70024 */ lw $a3, 0x24($sp) +/* 0D69E4 800D5DE4 0C03363C */ jal func_800CD8F0 +/* 0D69E8 800D5DE8 01AF3021 */ addu $a2, $t5, $t7 +/* 0D69EC 800D5DEC 1000000D */ b .L800D5E24 +/* 0D69F0 800D5DF0 AFA2002C */ sw $v0, 0x2c($sp) +.L800D5DF4: +/* 0D69F4 800D5DF4 8FAE0038 */ lw $t6, 0x38($sp) +/* 0D69F8 800D5DF8 93A80047 */ lbu $t0, 0x47($sp) +/* 0D69FC 800D5DFC 8FAB0030 */ lw $t3, 0x30($sp) +/* 0D6A00 800D5E00 8DD80054 */ lw $t8, 0x54($t6) +/* 0D6A04 800D5E04 000850C0 */ sll $t2, $t0, 3 +/* 0D6A08 800D5E08 8FA70024 */ lw $a3, 0x24($sp) +/* 0D6A0C 800D5E0C 030AC821 */ addu $t9, $t8, $t2 +/* 0D6A10 800D5E10 8DC40004 */ lw $a0, 4($t6) +/* 0D6A14 800D5E14 8DC50008 */ lw $a1, 8($t6) +/* 0D6A18 800D5E18 0C033728 */ jal func_800CDCA0 +/* 0D6A1C 800D5E1C 032B3021 */ addu $a2, $t9, $t3 +/* 0D6A20 800D5E20 AFA2002C */ sw $v0, 0x2c($sp) +.L800D5E24: +/* 0D6A24 800D5E24 8FA9002C */ lw $t1, 0x2c($sp) +/* 0D6A28 800D5E28 11200003 */ beqz $t1, .L800D5E38 +/* 0D6A2C 800D5E2C 00000000 */ nop +/* 0D6A30 800D5E30 10000066 */ b .L800D5FCC +/* 0D6A34 800D5E34 01201025 */ move $v0, $t1 +.L800D5E38: +/* 0D6A38 800D5E38 8FAC0030 */ lw $t4, 0x30($sp) +/* 0D6A3C 800D5E3C 258D0001 */ addiu $t5, $t4, 1 +/* 0D6A40 800D5E40 29A10008 */ slti $at, $t5, 8 +/* 0D6A44 800D5E44 1420FFC9 */ bnez $at, .L800D5D6C +/* 0D6A48 800D5E48 AFAD0030 */ sw $t5, 0x30($sp) +/* 0D6A4C 800D5E4C 93AF0043 */ lbu $t7, 0x43($sp) +/* 0D6A50 800D5E50 15E0005D */ bnez $t7, .L800D5FC8 +/* 0D6A54 800D5E54 00000000 */ nop +/* 0D6A58 800D5E58 8FA80028 */ lw $t0, 0x28($sp) +/* 0D6A5C 800D5E5C 8FAE003C */ lw $t6, 0x3c($sp) +/* 0D6A60 800D5E60 00082823 */ negu $a1, $t0 +/* 0D6A64 800D5E64 00055040 */ sll $t2, $a1, 1 +/* 0D6A68 800D5E68 01402825 */ move $a1, $t2 +/* 0D6A6C 800D5E6C 0008C040 */ sll $t8, $t0, 1 +/* 0D6A70 800D5E70 24A50100 */ addiu $a1, $a1, 0x100 +/* 0D6A74 800D5E74 0C0354BC */ jal func_800D52F0 +/* 0D6A78 800D5E78 01D82021 */ addu $a0, $t6, $t8 +/* 0D6A7C 800D5E7C 8FB9003C */ lw $t9, 0x3c($sp) +/* 0D6A80 800D5E80 A3A20037 */ sb $v0, 0x37($sp) +/* 0D6A84 800D5E84 93A90037 */ lbu $t1, 0x37($sp) +/* 0D6A88 800D5E88 932B0001 */ lbu $t3, 1($t9) +/* 0D6A8C 800D5E8C 11690037 */ beq $t3, $t1, .L800D5F6C +/* 0D6A90 800D5E90 00000000 */ nop +/* 0D6A94 800D5E94 AFA00030 */ sw $zero, 0x30($sp) +.L800D5E98: +/* 0D6A98 800D5E98 8FAD0030 */ lw $t5, 0x30($sp) +/* 0D6A9C 800D5E9C 8FAC003C */ lw $t4, 0x3c($sp) +/* 0D6AA0 800D5EA0 8FB80038 */ lw $t8, 0x38($sp) +/* 0D6AA4 800D5EA4 000D7940 */ sll $t7, $t5, 5 +/* 0D6AA8 800D5EA8 018F7021 */ addu $t6, $t4, $t7 +/* 0D6AAC 800D5EAC 93AA0047 */ lbu $t2, 0x47($sp) +/* 0D6AB0 800D5EB0 AFAE0024 */ sw $t6, 0x24($sp) +/* 0D6AB4 800D5EB4 8F080058 */ lw $t0, 0x58($t8) +/* 0D6AB8 800D5EB8 000AC8C0 */ sll $t9, $t2, 3 +/* 0D6ABC 800D5EBC 01C03825 */ move $a3, $t6 +/* 0D6AC0 800D5EC0 01195821 */ addu $t3, $t0, $t9 +/* 0D6AC4 800D5EC4 016D3021 */ addu $a2, $t3, $t5 +/* 0D6AC8 800D5EC8 8F050008 */ lw $a1, 8($t8) +/* 0D6ACC 800D5ECC 0C033728 */ jal func_800CDCA0 +/* 0D6AD0 800D5ED0 8F040004 */ lw $a0, 4($t8) +/* 0D6AD4 800D5ED4 8FA90030 */ lw $t1, 0x30($sp) +/* 0D6AD8 800D5ED8 AFA2002C */ sw $v0, 0x2c($sp) +/* 0D6ADC 800D5EDC 252C0001 */ addiu $t4, $t1, 1 +/* 0D6AE0 800D5EE0 29810008 */ slti $at, $t4, 8 +/* 0D6AE4 800D5EE4 1420FFEC */ bnez $at, .L800D5E98 +/* 0D6AE8 800D5EE8 AFAC0030 */ sw $t4, 0x30($sp) +/* 0D6AEC 800D5EEC 8FAF003C */ lw $t7, 0x3c($sp) +/* 0D6AF0 800D5EF0 93AA0037 */ lbu $t2, 0x37($sp) +/* 0D6AF4 800D5EF4 91F80001 */ lbu $t8, 1($t7) +/* 0D6AF8 800D5EF8 130A0003 */ beq $t8, $t2, .L800D5F08 +/* 0D6AFC 800D5EFC 00000000 */ nop +/* 0D6B00 800D5F00 10000032 */ b .L800D5FCC +/* 0D6B04 800D5F04 24020003 */ li $v0, 3 +.L800D5F08: +/* 0D6B08 800D5F08 AFA00030 */ sw $zero, 0x30($sp) +.L800D5F0C: +/* 0D6B0C 800D5F0C 8FB90030 */ lw $t9, 0x30($sp) +/* 0D6B10 800D5F10 8FA8003C */ lw $t0, 0x3c($sp) +/* 0D6B14 800D5F14 8FAE0038 */ lw $t6, 0x38($sp) +/* 0D6B18 800D5F18 00195940 */ sll $t3, $t9, 5 +/* 0D6B1C 800D5F1C 010B6821 */ addu $t5, $t0, $t3 +/* 0D6B20 800D5F20 93AC0047 */ lbu $t4, 0x47($sp) +/* 0D6B24 800D5F24 AFAD0024 */ sw $t5, 0x24($sp) +/* 0D6B28 800D5F28 8DC90054 */ lw $t1, 0x54($t6) +/* 0D6B2C 800D5F2C 000C78C0 */ sll $t7, $t4, 3 +/* 0D6B30 800D5F30 8DC50008 */ lw $a1, 8($t6) +/* 0D6B34 800D5F34 8DC40004 */ lw $a0, 4($t6) +/* 0D6B38 800D5F38 012FC021 */ addu $t8, $t1, $t7 +/* 0D6B3C 800D5F3C AFA00010 */ sw $zero, 0x10($sp) +/* 0D6B40 800D5F40 01A03825 */ move $a3, $t5 +/* 0D6B44 800D5F44 0C03363C */ jal func_800CD8F0 +/* 0D6B48 800D5F48 03193021 */ addu $a2, $t8, $t9 +/* 0D6B4C 800D5F4C 8FAA0030 */ lw $t2, 0x30($sp) +/* 0D6B50 800D5F50 AFA2002C */ sw $v0, 0x2c($sp) +/* 0D6B54 800D5F54 25480001 */ addiu $t0, $t2, 1 +/* 0D6B58 800D5F58 29010008 */ slti $at, $t0, 8 +/* 0D6B5C 800D5F5C 1420FFEB */ bnez $at, .L800D5F0C +/* 0D6B60 800D5F60 AFA80030 */ sw $t0, 0x30($sp) +/* 0D6B64 800D5F64 10000018 */ b .L800D5FC8 +/* 0D6B68 800D5F68 00000000 */ nop +.L800D5F6C: +/* 0D6B6C 800D5F6C AFA00030 */ sw $zero, 0x30($sp) +.L800D5F70: +/* 0D6B70 800D5F70 8FAE0030 */ lw $t6, 0x30($sp) +/* 0D6B74 800D5F74 8FAB003C */ lw $t3, 0x3c($sp) +/* 0D6B78 800D5F78 8FAF0038 */ lw $t7, 0x38($sp) +/* 0D6B7C 800D5F7C 000E6140 */ sll $t4, $t6, 5 +/* 0D6B80 800D5F80 016C4821 */ addu $t1, $t3, $t4 +/* 0D6B84 800D5F84 93B90047 */ lbu $t9, 0x47($sp) +/* 0D6B88 800D5F88 AFA90024 */ sw $t1, 0x24($sp) +/* 0D6B8C 800D5F8C 8DF80058 */ lw $t8, 0x58($t7) +/* 0D6B90 800D5F90 001968C0 */ sll $t5, $t9, 3 +/* 0D6B94 800D5F94 8DE50008 */ lw $a1, 8($t7) +/* 0D6B98 800D5F98 8DE40004 */ lw $a0, 4($t7) +/* 0D6B9C 800D5F9C 030D5021 */ addu $t2, $t8, $t5 +/* 0D6BA0 800D5FA0 AFA00010 */ sw $zero, 0x10($sp) +/* 0D6BA4 800D5FA4 01203825 */ move $a3, $t1 +/* 0D6BA8 800D5FA8 0C03363C */ jal func_800CD8F0 +/* 0D6BAC 800D5FAC 014E3021 */ addu $a2, $t2, $t6 +/* 0D6BB0 800D5FB0 8FA80030 */ lw $t0, 0x30($sp) +/* 0D6BB4 800D5FB4 AFA2002C */ sw $v0, 0x2c($sp) +/* 0D6BB8 800D5FB8 250B0001 */ addiu $t3, $t0, 1 +/* 0D6BBC 800D5FBC 29610008 */ slti $at, $t3, 8 +/* 0D6BC0 800D5FC0 1420FFEB */ bnez $at, .L800D5F70 +/* 0D6BC4 800D5FC4 AFAB0030 */ sw $t3, 0x30($sp) +.L800D5FC8: +/* 0D6BC8 800D5FC8 00001025 */ move $v0, $zero +.L800D5FCC: +/* 0D6BCC 800D5FCC 8FBF001C */ lw $ra, 0x1c($sp) +/* 0D6BD0 800D5FD0 27BD0038 */ addiu $sp, $sp, 0x38 +/* 0D6BD4 800D5FD4 03E00008 */ jr $ra +/* 0D6BD8 800D5FD8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/func_800D5FDC.s b/asm/non_matchings/unknown_0D3020/func_800D5FDC.s new file mode 100644 index 00000000..def70d85 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D5FDC.s @@ -0,0 +1,32 @@ +glabel func_800D5FDC +/* 0D6BDC 800D5FDC 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 0D6BE0 800D5FE0 AFBF001C */ sw $ra, 0x1c($sp) +/* 0D6BE4 800D5FE4 AFA40048 */ sw $a0, 0x48($sp) +/* 0D6BE8 800D5FE8 AFA00020 */ sw $zero, 0x20($sp) +/* 0D6BEC 800D5FEC AFA00024 */ sw $zero, 0x24($sp) +.L800D5FF0: +/* 0D6BF0 800D5FF0 8FAE0048 */ lw $t6, 0x48($sp) +/* 0D6BF4 800D5FF4 8FB80024 */ lw $t8, 0x24($sp) +/* 0D6BF8 800D5FF8 91CF0065 */ lbu $t7, 0x65($t6) +/* 0D6BFC 800D5FFC 03B8C821 */ addu $t9, $sp, $t8 +/* 0D6C00 800D6000 A32F0028 */ sb $t7, 0x28($t9) +/* 0D6C04 800D6004 8FA80024 */ lw $t0, 0x24($sp) +/* 0D6C08 800D6008 25090001 */ addiu $t1, $t0, 1 +/* 0D6C0C 800D600C 29210020 */ slti $at, $t1, 0x20 +/* 0D6C10 800D6010 1420FFF7 */ bnez $at, .L800D5FF0 +/* 0D6C14 800D6014 AFA90024 */ sw $t1, 0x24($sp) +/* 0D6C18 800D6018 8FAA0048 */ lw $t2, 0x48($sp) +/* 0D6C1C 800D601C 24060400 */ li $a2, 1024 +/* 0D6C20 800D6020 27A70028 */ addiu $a3, $sp, 0x28 +/* 0D6C24 800D6024 8D440004 */ lw $a0, 4($t2) +/* 0D6C28 800D6028 8D450008 */ lw $a1, 8($t2) +/* 0D6C2C 800D602C 0C03363C */ jal func_800CD8F0 +/* 0D6C30 800D6030 AFA00010 */ sw $zero, 0x10($sp) +/* 0D6C34 800D6034 8FBF001C */ lw $ra, 0x1c($sp) +/* 0D6C38 800D6038 AFA20020 */ sw $v0, 0x20($sp) +/* 0D6C3C 800D603C 8FA20020 */ lw $v0, 0x20($sp) +/* 0D6C40 800D6040 03E00008 */ jr $ra +/* 0D6C44 800D6044 27BD0048 */ addiu $sp, $sp, 0x48 + +/* 0D6C48 800D6048 00000000 */ nop +/* 0D6C4C 800D604C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D6050.s b/asm/non_matchings/unknown_0D3020/func_800D6050.s new file mode 100644 index 00000000..52d6a06d --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D6050.s @@ -0,0 +1,16 @@ +glabel func_800D6050 +/* 0D6C50 800D6050 3C0EA410 */ lui $t6, %hi(D_A410000C) # $t6, 0xa410 +/* 0D6C54 800D6054 8DC4000C */ lw $a0, %lo(D_A410000C)($t6) +/* 0D6C58 800D6058 27BDFFF8 */ addiu $sp, $sp, -8 +/* 0D6C5C 800D605C 308F0100 */ andi $t7, $a0, 0x100 +/* 0D6C60 800D6060 11E00003 */ beqz $t7, .L800D6070 +/* 0D6C64 800D6064 00000000 */ nop +/* 0D6C68 800D6068 10000002 */ b .L800D6074 +/* 0D6C6C 800D606C 24020001 */ li $v0, 1 +.L800D6070: +/* 0D6C70 800D6070 00001025 */ move $v0, $zero +.L800D6074: +/* 0D6C74 800D6074 03E00008 */ jr $ra +/* 0D6C78 800D6078 27BD0008 */ addiu $sp, $sp, 8 + +/* 0D6C7C 800D607C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D6080.s b/asm/non_matchings/unknown_0D3020/func_800D6080.s new file mode 100644 index 00000000..2a651733 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D6080.s @@ -0,0 +1,6 @@ +glabel func_800D6080 +/* 0D6C80 800D6080 3C02800E */ lui $v0, 0x800e +/* 0D6C84 800D6084 03E00008 */ jr $ra +/* 0D6C88 800D6088 8C424870 */ lw $v0, 0x4870($v0) + +/* 0D6C8C 800D608C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D6090.s b/asm/non_matchings/unknown_0D3020/func_800D6090.s new file mode 100644 index 00000000..c9fb9665 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D6090.s @@ -0,0 +1,230 @@ +glabel func_800D6090 +/* 0D6C90 800D6090 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 0D6C94 800D6094 AFB1001C */ sw $s1, 0x1c($sp) +/* 0D6C98 800D6098 AFBF0024 */ sw $ra, 0x24($sp) +/* 0D6C9C 800D609C AFB20020 */ sw $s2, 0x20($sp) +/* 0D6CA0 800D60A0 AFB00018 */ sw $s0, 0x18($sp) +/* 0D6CA4 800D60A4 AFA00030 */ sw $zero, 0x30($sp) +/* 0D6CA8 800D60A8 3C11800E */ lui $s1, %hi(D_800E4874) # $s1, 0x800e +/* 0D6CAC 800D60AC 3C0EA440 */ lui $t6, %hi(D_A4400010) # $t6, 0xa440 +/* 0D6CB0 800D60B0 8E314874 */ lw $s1, %lo(D_800E4874)($s1) +/* 0D6CB4 800D60B4 8DCF0010 */ lw $t7, %lo(D_A4400010)($t6) +/* 0D6CB8 800D60B8 8E300008 */ lw $s0, 8($s1) +/* 0D6CBC 800D60BC 31F80001 */ andi $t8, $t7, 1 +/* 0D6CC0 800D60C0 AFB80030 */ sw $t8, 0x30($sp) +/* 0D6CC4 800D60C4 0C03233C */ jal func_800C8CF0 +/* 0D6CC8 800D60C8 8E240004 */ lw $a0, 4($s1) +/* 0D6CCC 800D60CC 8FB90030 */ lw $t9, 0x30($sp) +/* 0D6CD0 800D60D0 00409025 */ move $s2, $v0 +/* 0D6CD4 800D60D4 00194080 */ sll $t0, $t9, 2 +/* 0D6CD8 800D60D8 01194021 */ addu $t0, $t0, $t9 +/* 0D6CDC 800D60DC 00084080 */ sll $t0, $t0, 2 +/* 0D6CE0 800D60E0 02084821 */ addu $t1, $s0, $t0 +/* 0D6CE4 800D60E4 8D2A0028 */ lw $t2, 0x28($t1) +/* 0D6CE8 800D60E8 01525821 */ addu $t3, $t2, $s2 +/* 0D6CEC 800D60EC AFAB003C */ sw $t3, 0x3c($sp) +/* 0D6CF0 800D60F0 962C0000 */ lhu $t4, ($s1) +/* 0D6CF4 800D60F4 318D0002 */ andi $t5, $t4, 2 +/* 0D6CF8 800D60F8 11A00008 */ beqz $t5, .L800D611C +/* 0D6CFC 800D60FC 00000000 */ nop +/* 0D6D00 800D6100 8E0F0020 */ lw $t7, 0x20($s0) +/* 0D6D04 800D6104 8E2E0020 */ lw $t6, 0x20($s1) +/* 0D6D08 800D6108 2401F000 */ li $at, -4096 +/* 0D6D0C 800D610C 01E1C024 */ and $t8, $t7, $at +/* 0D6D10 800D6110 01D8C825 */ or $t9, $t6, $t8 +/* 0D6D14 800D6114 10000003 */ b .L800D6124 +/* 0D6D18 800D6118 AE390020 */ sw $t9, 0x20($s1) +.L800D611C: +/* 0D6D1C 800D611C 8E080020 */ lw $t0, 0x20($s0) +/* 0D6D20 800D6120 AE280020 */ sw $t0, 0x20($s1) +.L800D6124: +/* 0D6D24 800D6124 96290000 */ lhu $t1, ($s1) +/* 0D6D28 800D6128 312A0004 */ andi $t2, $t1, 4 +/* 0D6D2C 800D612C 11400041 */ beqz $t2, .L800D6234 +/* 0D6D30 800D6130 00000000 */ nop +/* 0D6D34 800D6134 8FAB0030 */ lw $t3, 0x30($sp) +/* 0D6D38 800D6138 000B6080 */ sll $t4, $t3, 2 +/* 0D6D3C 800D613C 018B6021 */ addu $t4, $t4, $t3 +/* 0D6D40 800D6140 000C6080 */ sll $t4, $t4, 2 +/* 0D6D44 800D6144 020C6821 */ addu $t5, $s0, $t4 +/* 0D6D48 800D6148 8DAF002C */ lw $t7, 0x2c($t5) +/* 0D6D4C 800D614C 31EE0FFF */ andi $t6, $t7, 0xfff +/* 0D6D50 800D6150 448E3000 */ mtc1 $t6, $f6 +/* 0D6D54 800D6154 AFAE0034 */ sw $t6, 0x34($sp) +/* 0D6D58 800D6158 C6240024 */ lwc1 $f4, 0x24($s1) +/* 0D6D5C 800D615C 05C10005 */ bgez $t6, .L800D6174 +/* 0D6D60 800D6160 46803220 */ cvt.s.w $f8, $f6 +/* 0D6D64 800D6164 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0D6D68 800D6168 44815000 */ mtc1 $at, $f10 +/* 0D6D6C 800D616C 00000000 */ nop +/* 0D6D70 800D6170 460A4200 */ add.s $f8, $f8, $f10 +.L800D6174: +/* 0D6D74 800D6174 46082402 */ mul.s $f16, $f4, $f8 +/* 0D6D78 800D6178 24190001 */ li $t9, 1 +/* 0D6D7C 800D617C 4458F800 */ cfc1 $t8, $31 +/* 0D6D80 800D6180 44D9F800 */ ctc1 $t9, $31 +/* 0D6D84 800D6184 00000000 */ nop +/* 0D6D88 800D6188 460084A4 */ cvt.w.s $f18, $f16 +/* 0D6D8C 800D618C 4459F800 */ cfc1 $t9, $31 +/* 0D6D90 800D6190 00000000 */ nop +/* 0D6D94 800D6194 33210004 */ andi $at, $t9, 4 +/* 0D6D98 800D6198 33390078 */ andi $t9, $t9, 0x78 +/* 0D6D9C 800D619C 13200013 */ beqz $t9, .L800D61EC +/* 0D6DA0 800D61A0 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 0D6DA4 800D61A4 44819000 */ mtc1 $at, $f18 +/* 0D6DA8 800D61A8 24190001 */ li $t9, 1 +/* 0D6DAC 800D61AC 46128481 */ sub.s $f18, $f16, $f18 +/* 0D6DB0 800D61B0 44D9F800 */ ctc1 $t9, $31 +/* 0D6DB4 800D61B4 00000000 */ nop +/* 0D6DB8 800D61B8 460094A4 */ cvt.w.s $f18, $f18 +/* 0D6DBC 800D61BC 4459F800 */ cfc1 $t9, $31 +/* 0D6DC0 800D61C0 00000000 */ nop +/* 0D6DC4 800D61C4 33210004 */ andi $at, $t9, 4 +/* 0D6DC8 800D61C8 33390078 */ andi $t9, $t9, 0x78 +/* 0D6DCC 800D61CC 17200005 */ bnez $t9, .L800D61E4 +/* 0D6DD0 800D61D0 00000000 */ nop +/* 0D6DD4 800D61D4 44199000 */ mfc1 $t9, $f18 +/* 0D6DD8 800D61D8 3C018000 */ lui $at, 0x8000 +/* 0D6DDC 800D61DC 10000007 */ b .L800D61FC +/* 0D6DE0 800D61E0 0321C825 */ or $t9, $t9, $at +.L800D61E4: +/* 0D6DE4 800D61E4 10000005 */ b .L800D61FC +/* 0D6DE8 800D61E8 2419FFFF */ li $t9, -1 +.L800D61EC: +/* 0D6DEC 800D61EC 44199000 */ mfc1 $t9, $f18 +/* 0D6DF0 800D61F0 00000000 */ nop +/* 0D6DF4 800D61F4 0720FFFB */ bltz $t9, .L800D61E4 +/* 0D6DF8 800D61F8 00000000 */ nop +.L800D61FC: +/* 0D6DFC 800D61FC AE39002C */ sw $t9, 0x2c($s1) +/* 0D6E00 800D6200 8FA90030 */ lw $t1, 0x30($sp) +/* 0D6E04 800D6204 8E28002C */ lw $t0, 0x2c($s1) +/* 0D6E08 800D6208 2401F000 */ li $at, -4096 +/* 0D6E0C 800D620C 00095080 */ sll $t2, $t1, 2 +/* 0D6E10 800D6210 01495021 */ addu $t2, $t2, $t1 +/* 0D6E14 800D6214 000A5080 */ sll $t2, $t2, 2 +/* 0D6E18 800D6218 020A5821 */ addu $t3, $s0, $t2 +/* 0D6E1C 800D621C 8D6C002C */ lw $t4, 0x2c($t3) +/* 0D6E20 800D6220 44D8F800 */ ctc1 $t8, $31 +/* 0D6E24 800D6224 01816824 */ and $t5, $t4, $at +/* 0D6E28 800D6228 010D7825 */ or $t7, $t0, $t5 +/* 0D6E2C 800D622C 10000008 */ b .L800D6250 +/* 0D6E30 800D6230 AE2F002C */ sw $t7, 0x2c($s1) +.L800D6234: +/* 0D6E34 800D6234 8FAE0030 */ lw $t6, 0x30($sp) +/* 0D6E38 800D6238 000EC080 */ sll $t8, $t6, 2 +/* 0D6E3C 800D623C 030EC021 */ addu $t8, $t8, $t6 +/* 0D6E40 800D6240 0018C080 */ sll $t8, $t8, 2 +/* 0D6E44 800D6244 0218C821 */ addu $t9, $s0, $t8 +/* 0D6E48 800D6248 8F29002C */ lw $t1, 0x2c($t9) +/* 0D6E4C 800D624C AE29002C */ sw $t1, 0x2c($s1) +.L800D6250: +/* 0D6E50 800D6250 8E0A001C */ lw $t2, 0x1c($s0) +/* 0D6E54 800D6254 AFAA0038 */ sw $t2, 0x38($sp) +/* 0D6E58 800D6258 962B0000 */ lhu $t3, ($s1) +/* 0D6E5C 800D625C 316C0020 */ andi $t4, $t3, 0x20 +/* 0D6E60 800D6260 11800002 */ beqz $t4, .L800D626C +/* 0D6E64 800D6264 00000000 */ nop +/* 0D6E68 800D6268 AFA00038 */ sw $zero, 0x38($sp) +.L800D626C: +/* 0D6E6C 800D626C 96280000 */ lhu $t0, ($s1) +/* 0D6E70 800D6270 310D0040 */ andi $t5, $t0, 0x40 +/* 0D6E74 800D6274 11A00005 */ beqz $t5, .L800D628C +/* 0D6E78 800D6278 00000000 */ nop +/* 0D6E7C 800D627C AE20002C */ sw $zero, 0x2c($s1) +/* 0D6E80 800D6280 0C03233C */ jal func_800C8CF0 +/* 0D6E84 800D6284 8E240004 */ lw $a0, 4($s1) +/* 0D6E88 800D6288 AFA2003C */ sw $v0, 0x3c($sp) +.L800D628C: +/* 0D6E8C 800D628C 962F0000 */ lhu $t7, ($s1) +/* 0D6E90 800D6290 31EE0080 */ andi $t6, $t7, 0x80 +/* 0D6E94 800D6294 11C00009 */ beqz $t6, .L800D62BC +/* 0D6E98 800D6298 00000000 */ nop +/* 0D6E9C 800D629C 96380028 */ lhu $t8, 0x28($s1) +/* 0D6EA0 800D62A0 3C0103FF */ lui $at, 0x3ff +/* 0D6EA4 800D62A4 8E240004 */ lw $a0, 4($s1) +/* 0D6EA8 800D62A8 0018CC00 */ sll $t9, $t8, 0x10 +/* 0D6EAC 800D62AC 03214824 */ and $t1, $t9, $at +/* 0D6EB0 800D62B0 0C03233C */ jal func_800C8CF0 +/* 0D6EB4 800D62B4 AE29002C */ sw $t1, 0x2c($s1) +/* 0D6EB8 800D62B8 AFA2003C */ sw $v0, 0x3c($sp) +.L800D62BC: +/* 0D6EBC 800D62BC 8FAA003C */ lw $t2, 0x3c($sp) +/* 0D6EC0 800D62C0 3C0BA440 */ lui $t3, %hi(D_A4400020) # $t3, 0xa440 +/* 0D6EC4 800D62C4 3C08A440 */ lui $t0, %hi(D_A440002C) # $t0, 0xa440 +/* 0D6EC8 800D62C8 AD6A0004 */ sw $t2, %lo(D_A4400004)($t3) +/* 0D6ECC 800D62CC 8E0C0008 */ lw $t4, 8($s0) +/* 0D6ED0 800D62D0 3C0FA440 */ lui $t7, %hi(D_A4400014) # $t7, 0xa440 +/* 0D6ED4 800D62D4 3C18A440 */ lui $t8, %hi(D_A4400018) # $t8, 0xa440 +/* 0D6ED8 800D62D8 AD0C0008 */ sw $t4, %lo(D_A4400008)($t0) +/* 0D6EDC 800D62DC 8E0D000C */ lw $t5, 0xc($s0) +/* 0D6EE0 800D62E0 3C09A440 */ lui $t1, %hi(D_A440001C) # $t1, 0xa440 +/* 0D6EE4 800D62E4 3C01800E */ lui $at, %hi(D_800E4874) # $at, 0x800e +/* 0D6EE8 800D62E8 ADED0014 */ sw $t5, %lo(D_A4400014)($t7) +/* 0D6EEC 800D62EC 8E0E0010 */ lw $t6, 0x10($s0) +/* 0D6EF0 800D62F0 AF0E0018 */ sw $t6, %lo(D_A4400018)($t8) +/* 0D6EF4 800D62F4 8E190014 */ lw $t9, 0x14($s0) +/* 0D6EF8 800D62F8 AD39001C */ sw $t9, %lo(D_A440001C)($t1) +/* 0D6EFC 800D62FC 8E0A0018 */ lw $t2, 0x18($s0) +/* 0D6F00 800D6300 3C19A440 */ lui $t9, %hi(D_A440000C) # $t9, 0xa440 +/* 0D6F04 800D6304 AD6A0020 */ sw $t2, %lo(D_A4400020)($t3) +/* 0D6F08 800D6308 8FAC0038 */ lw $t4, 0x38($sp) +/* 0D6F0C 800D630C AD0C0024 */ sw $t4, %lo(D_A4400024)($t0) +/* 0D6F10 800D6310 8FAD0030 */ lw $t5, 0x30($sp) +/* 0D6F14 800D6314 000D7880 */ sll $t7, $t5, 2 +/* 0D6F18 800D6318 01ED7821 */ addu $t7, $t7, $t5 +/* 0D6F1C 800D631C 000F7880 */ sll $t7, $t7, 2 +/* 0D6F20 800D6320 020F7021 */ addu $t6, $s0, $t7 +/* 0D6F24 800D6324 8DD80030 */ lw $t8, 0x30($t6) +/* 0D6F28 800D6328 AF380028 */ sw $t8, %lo(D_A4400028)($t9) +/* 0D6F2C 800D632C 8FA90030 */ lw $t1, 0x30($sp) +/* 0D6F30 800D6330 00095080 */ sll $t2, $t1, 2 +/* 0D6F34 800D6334 01495021 */ addu $t2, $t2, $t1 +/* 0D6F38 800D6338 000A5080 */ sll $t2, $t2, 2 +/* 0D6F3C 800D633C 020A5821 */ addu $t3, $s0, $t2 +/* 0D6F40 800D6340 8D6C0034 */ lw $t4, 0x34($t3) +/* 0D6F44 800D6344 3C0AA440 */ lui $t2, %hi(D_A4400030) # $t2, 0xa440 +/* 0D6F48 800D6348 AD0C002C */ sw $t4, %lo(D_A440002C)($t0) +/* 0D6F4C 800D634C 8FAD0030 */ lw $t5, 0x30($sp) +/* 0D6F50 800D6350 3C0CA440 */ lui $t4, %hi(D_A4400034) # $t4, 0xa440 +/* 0D6F54 800D6354 000D7880 */ sll $t7, $t5, 2 +/* 0D6F58 800D6358 01ED7821 */ addu $t7, $t7, $t5 +/* 0D6F5C 800D635C 000F7880 */ sll $t7, $t7, 2 +/* 0D6F60 800D6360 020F7021 */ addu $t6, $s0, $t7 +/* 0D6F64 800D6364 8DD80038 */ lw $t8, 0x38($t6) +/* 0D6F68 800D6368 3C0DA440 */ lui $t5, 0xa440 +/* 0D6F6C 800D636C 3C0F800E */ lui $t7, %hi(D_800E4870) # $t7, 0x800e +/* 0D6F70 800D6370 AF38000C */ sw $t8, %lo(D_A440000C)($t9) +/* 0D6F74 800D6374 8E290020 */ lw $t1, 0x20($s1) +/* 0D6F78 800D6378 3C18800E */ lui $t8, %hi(D_800E4870) # $t8, 0x800e +/* 0D6F7C 800D637C 3C0E800E */ lui $t6, %hi(D_800E4874) # $t6, 0x800e +/* 0D6F80 800D6380 AD490030 */ sw $t1, %lo(D_A4400030)($t2) +/* 0D6F84 800D6384 8E2B002C */ lw $t3, 0x2c($s1) +/* 0D6F88 800D6388 AD8B0034 */ sw $t3, %lo(D_A4400034)($t4) +/* 0D6F8C 800D638C 8E28000C */ lw $t0, 0xc($s1) +/* 0D6F90 800D6390 ADA80000 */ sw $t0, ($t5) +/* 0D6F94 800D6394 8DEF4870 */ lw $t7, %lo(D_800E4870)($t7) +/* 0D6F98 800D6398 AC2F4874 */ sw $t7, %lo(D_800E4874)($at) +/* 0D6F9C 800D639C 3C01800E */ lui $at, %hi(D_800E4870) # $at, 0x800e +/* 0D6FA0 800D63A0 AC314870 */ sw $s1, %lo(D_800E4870)($at) +/* 0D6FA4 800D63A4 8F184870 */ lw $t8, %lo(D_800E4870)($t8) +/* 0D6FA8 800D63A8 8DCE4874 */ lw $t6, %lo(D_800E4874)($t6) +/* 0D6FAC 800D63AC 270A0030 */ addiu $t2, $t8, 0x30 +.L800D63B0: +/* 0D6FB0 800D63B0 8F010000 */ lw $at, ($t8) +/* 0D6FB4 800D63B4 2718000C */ addiu $t8, $t8, 0xc +/* 0D6FB8 800D63B8 25CE000C */ addiu $t6, $t6, 0xc +/* 0D6FBC 800D63BC ADC1FFF4 */ sw $at, -0xc($t6) +/* 0D6FC0 800D63C0 8F01FFF8 */ lw $at, -8($t8) +/* 0D6FC4 800D63C4 ADC1FFF8 */ sw $at, -8($t6) +/* 0D6FC8 800D63C8 8F01FFFC */ lw $at, -4($t8) +/* 0D6FCC 800D63CC 170AFFF8 */ bne $t8, $t2, .L800D63B0 +/* 0D6FD0 800D63D0 ADC1FFFC */ sw $at, -4($t6) +/* 0D6FD4 800D63D4 8FBF0024 */ lw $ra, 0x24($sp) +/* 0D6FD8 800D63D8 8FB00018 */ lw $s0, 0x18($sp) +/* 0D6FDC 800D63DC 8FB1001C */ lw $s1, 0x1c($sp) +/* 0D6FE0 800D63E0 8FB20020 */ lw $s2, 0x20($sp) +/* 0D6FE4 800D63E4 03E00008 */ jr $ra +/* 0D6FE8 800D63E8 27BD0048 */ addiu $sp, $sp, 0x48 + +/* 0D6FEC 800D63EC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D63F0.s b/asm/non_matchings/unknown_0D3020/func_800D63F0.s new file mode 100644 index 00000000..e49f79b6 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D63F0.s @@ -0,0 +1,6 @@ +glabel func_800D63F0 +/* 0D6FF0 800D63F0 3C0EA404 */ lui $t6, 0xa404 +/* 0D6FF4 800D63F4 03E00008 */ jr $ra +/* 0D6FF8 800D63F8 8DC20010 */ lw $v0, 0x10($t6) + +/* 0D6FFC 800D63FC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D6400.s b/asm/non_matchings/unknown_0D3020/func_800D6400.s new file mode 100644 index 00000000..7a4e6c9b --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D6400.s @@ -0,0 +1,20 @@ +glabel func_800D6400 +/* 0D7000 800D6400 3C0EA404 */ lui $t6, %hi(D_A4040010) # $t6, 0xa404 +/* 0D7004 800D6404 8DC50010 */ lw $a1, %lo(D_A4040010)($t6) +/* 0D7008 800D6408 27BDFFF8 */ addiu $sp, $sp, -8 +/* 0D700C 800D640C 30AF0001 */ andi $t7, $a1, 1 +/* 0D7010 800D6410 15E00003 */ bnez $t7, .L800D6420 +/* 0D7014 800D6414 00000000 */ nop +/* 0D7018 800D6418 10000004 */ b .L800D642C +/* 0D701C 800D641C 2402FFFF */ li $v0, -1 +.L800D6420: +/* 0D7020 800D6420 3C18A408 */ lui $t8, 0xa408 +/* 0D7024 800D6424 AF040000 */ sw $a0, ($t8) +/* 0D7028 800D6428 00001025 */ move $v0, $zero +.L800D642C: +/* 0D702C 800D642C 03E00008 */ jr $ra +/* 0D7030 800D6430 27BD0008 */ addiu $sp, $sp, 8 + +/* 0D7034 800D6434 00000000 */ nop +/* 0D7038 800D6438 00000000 */ nop +/* 0D703C 800D643C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D6440.s b/asm/non_matchings/unknown_0D3020/func_800D6440.s new file mode 100644 index 00000000..a5fc2d70 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D6440.s @@ -0,0 +1,42 @@ +glabel func_800D6440 +/* 0D7040 800D6440 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0D7044 800D6444 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D7048 800D6448 AFA40018 */ sw $a0, 0x18($sp) +/* 0D704C 800D644C AFA5001C */ sw $a1, 0x1c($sp) +/* 0D7050 800D6450 AFA60020 */ sw $a2, 0x20($sp) +/* 0D7054 800D6454 0C035934 */ jal func_800D64D0 +/* 0D7058 800D6458 AFA70024 */ sw $a3, 0x24($sp) +/* 0D705C 800D645C 10400003 */ beqz $v0, .L800D646C +/* 0D7060 800D6460 00000000 */ nop +/* 0D7064 800D6464 10000015 */ b .L800D64BC +/* 0D7068 800D6468 2402FFFF */ li $v0, -1 +.L800D646C: +/* 0D706C 800D646C 8FAE001C */ lw $t6, 0x1c($sp) +/* 0D7070 800D6470 3C0FA404 */ lui $t7, 0xa404 +/* 0D7074 800D6474 ADEE0000 */ sw $t6, ($t7) +/* 0D7078 800D6478 0C03233C */ jal func_800C8CF0 +/* 0D707C 800D647C 8FA40020 */ lw $a0, 0x20($sp) +/* 0D7080 800D6480 3C18A404 */ lui $t8, %hi(D_A4040004) # $t8, 0xa404 +/* 0D7084 800D6484 AF020004 */ sw $v0, %lo(D_A4040004)($t8) +/* 0D7088 800D6488 8FB90018 */ lw $t9, 0x18($sp) +/* 0D708C 800D648C 17200006 */ bnez $t9, .L800D64A8 +/* 0D7090 800D6490 00000000 */ nop +/* 0D7094 800D6494 8FA80024 */ lw $t0, 0x24($sp) +/* 0D7098 800D6498 3C0AA404 */ lui $t2, %hi(D_A404000C) # $t2, 0xa404 +/* 0D709C 800D649C 2509FFFF */ addiu $t1, $t0, -1 +/* 0D70A0 800D64A0 10000005 */ b .L800D64B8 +/* 0D70A4 800D64A4 AD49000C */ sw $t1, %lo(D_A404000C)($t2) +.L800D64A8: +/* 0D70A8 800D64A8 8FAB0024 */ lw $t3, 0x24($sp) +/* 0D70AC 800D64AC 3C0DA404 */ lui $t5, %hi(D_A4040008) # $t5, 0xa404 +/* 0D70B0 800D64B0 256CFFFF */ addiu $t4, $t3, -1 +/* 0D70B4 800D64B4 ADAC0008 */ sw $t4, %lo(D_A4040008)($t5) +.L800D64B8: +/* 0D70B8 800D64B8 00001025 */ move $v0, $zero +.L800D64BC: +/* 0D70BC 800D64BC 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D70C0 800D64C0 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0D70C4 800D64C4 03E00008 */ jr $ra +/* 0D70C8 800D64C8 00000000 */ nop + +/* 0D70CC 800D64CC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D64D0.s b/asm/non_matchings/unknown_0D3020/func_800D64D0.s new file mode 100644 index 00000000..6147026f --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D64D0.s @@ -0,0 +1,16 @@ +glabel func_800D64D0 +/* 0D70D0 800D64D0 3C0EA404 */ lui $t6, %hi(D_A4040010) # $t6, 0xa404 +/* 0D70D4 800D64D4 8DC40010 */ lw $a0, %lo(D_A4040010)($t6) +/* 0D70D8 800D64D8 27BDFFF8 */ addiu $sp, $sp, -8 +/* 0D70DC 800D64DC 308F001C */ andi $t7, $a0, 0x1c +/* 0D70E0 800D64E0 11E00003 */ beqz $t7, .L800D64F0 +/* 0D70E4 800D64E4 00000000 */ nop +/* 0D70E8 800D64E8 10000002 */ b .L800D64F4 +/* 0D70EC 800D64EC 24020001 */ li $v0, 1 +.L800D64F0: +/* 0D70F0 800D64F0 00001025 */ move $v0, $zero +.L800D64F4: +/* 0D70F4 800D64F4 03E00008 */ jr $ra +/* 0D70F8 800D64F8 27BD0008 */ addiu $sp, $sp, 8 + +/* 0D70FC 800D64FC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D6500.s b/asm/non_matchings/unknown_0D3020/func_800D6500.s new file mode 100644 index 00000000..52c878c2 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D6500.s @@ -0,0 +1,26 @@ +glabel func_800D6500 +/* 0D7100 800D6500 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0D7104 800D6504 AFBF001C */ sw $ra, 0x1c($sp) +/* 0D7108 800D6508 AFA40028 */ sw $a0, 0x28($sp) +/* 0D710C 800D650C 0C034958 */ jal __osDisableInt +/* 0D7110 800D6510 AFB00018 */ sw $s0, 0x18($sp) +/* 0D7114 800D6514 8FAF0028 */ lw $t7, 0x28($sp) +/* 0D7118 800D6518 3C0E800E */ lui $t6, %hi(D_800E38AC) # $t6, 0x800e +/* 0D711C 800D651C 8DCE38AC */ lw $t6, %lo(D_800E38AC)($t6) +/* 0D7120 800D6520 2401FBFE */ li $at, -1026 +/* 0D7124 800D6524 01E1C024 */ and $t8, $t7, $at +/* 0D7128 800D6528 0300C827 */ not $t9, $t8 +/* 0D712C 800D652C 00408025 */ move $s0, $v0 +/* 0D7130 800D6530 3C01800E */ lui $at, %hi(D_800E38AC) # $at, 0x800e +/* 0D7134 800D6534 01D94024 */ and $t0, $t6, $t9 +/* 0D7138 800D6538 AC2838AC */ sw $t0, %lo(D_800E38AC)($at) +/* 0D713C 800D653C 0C034960 */ jal __osRestoreInt +/* 0D7140 800D6540 02002025 */ move $a0, $s0 +/* 0D7144 800D6544 8FBF001C */ lw $ra, 0x1c($sp) +/* 0D7148 800D6548 8FB00018 */ lw $s0, 0x18($sp) +/* 0D714C 800D654C 27BD0028 */ addiu $sp, $sp, 0x28 +/* 0D7150 800D6550 03E00008 */ jr $ra +/* 0D7154 800D6554 00000000 */ nop + +/* 0D7158 800D6558 00000000 */ nop +/* 0D715C 800D655C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D6560.s b/asm/non_matchings/unknown_0D3020/func_800D6560.s new file mode 100644 index 00000000..9a96903b --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D6560.s @@ -0,0 +1,24 @@ +glabel func_800D6560 +/* 0D7160 800D6560 3C0EA460 */ lui $t6, %hi(D_A4600010) # $t6, 0xa460 +/* 0D7164 800D6564 8DC70010 */ lw $a3, %lo(D_A4600010)($t6) +/* 0D7168 800D6568 27BDFFF8 */ addiu $sp, $sp, -8 +/* 0D716C 800D656C 30EF0003 */ andi $t7, $a3, 3 +/* 0D7170 800D6570 11E00006 */ beqz $t7, .L800D658C +/* 0D7174 800D6574 00000000 */ nop +.L800D6578: +/* 0D7178 800D6578 3C18A460 */ lui $t8, %hi(D_A4600010) # $t8, 0xa460 +/* 0D717C 800D657C 8F070010 */ lw $a3, %lo(D_A4600010)($t8) +/* 0D7180 800D6580 30F90003 */ andi $t9, $a3, 3 +/* 0D7184 800D6584 1720FFFC */ bnez $t9, .L800D6578 +/* 0D7188 800D6588 00000000 */ nop +.L800D658C: +/* 0D718C 800D658C 8C88000C */ lw $t0, 0xc($a0) +/* 0D7190 800D6590 3C01A000 */ lui $at, 0xa000 +/* 0D7194 800D6594 27BD0008 */ addiu $sp, $sp, 8 +/* 0D7198 800D6598 01054825 */ or $t1, $t0, $a1 +/* 0D719C 800D659C 01215025 */ or $t2, $t1, $at +/* 0D71A0 800D65A0 AD460000 */ sw $a2, ($t2) +/* 0D71A4 800D65A4 03E00008 */ jr $ra +/* 0D71A8 800D65A8 00001025 */ move $v0, $zero + +/* 0D71AC 800D65AC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D65B0.s b/asm/non_matchings/unknown_0D3020/func_800D65B0.s new file mode 100644 index 00000000..a4f18f4e --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D65B0.s @@ -0,0 +1,22 @@ +glabel func_800D65B0 +/* 0D71B0 800D65B0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0D71B4 800D65B4 AFBF001C */ sw $ra, 0x1c($sp) +/* 0D71B8 800D65B8 0C034958 */ jal __osDisableInt +/* 0D71BC 800D65BC AFB00018 */ sw $s0, 0x18($sp) +/* 0D71C0 800D65C0 3C0F800E */ lui $t7, %hi(D_800E4890) # $t7, 0x800e +/* 0D71C4 800D65C4 8DEF4890 */ lw $t7, %lo(D_800E4890)($t7) +/* 0D71C8 800D65C8 240E0002 */ li $t6, 2 +/* 0D71CC 800D65CC 3C04800E */ lui $a0, %hi(D_800E4888) # $a0, 0x800e +/* 0D71D0 800D65D0 00408025 */ move $s0, $v0 +/* 0D71D4 800D65D4 24844888 */ addiu $a0, %lo(D_800E4888) # addiu $a0, $a0, 0x4888 +/* 0D71D8 800D65D8 0C034CB3 */ jal __osEnqueueAndYield +/* 0D71DC 800D65DC A5EE0010 */ sh $t6, 0x10($t7) +/* 0D71E0 800D65E0 0C034960 */ jal __osRestoreInt +/* 0D71E4 800D65E4 02002025 */ move $a0, $s0 +/* 0D71E8 800D65E8 8FBF001C */ lw $ra, 0x1c($sp) +/* 0D71EC 800D65EC 8FB00018 */ lw $s0, 0x18($sp) +/* 0D71F0 800D65F0 27BD0028 */ addiu $sp, $sp, 0x28 +/* 0D71F4 800D65F4 03E00008 */ jr $ra +/* 0D71F8 800D65F8 00000000 */ nop + +/* 0D71FC 800D65FC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D6600.s b/asm/non_matchings/unknown_0D3020/func_800D6600.s new file mode 100644 index 00000000..de50df65 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D6600.s @@ -0,0 +1,73 @@ +glabel func_800D6600 +/* 0D7200 800D6600 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0D7204 800D6604 AFBF0024 */ sw $ra, 0x24($sp) +/* 0D7208 800D6608 AFA40038 */ sw $a0, 0x38($sp) +/* 0D720C 800D660C AFB20020 */ sw $s2, 0x20($sp) +/* 0D7210 800D6610 AFB1001C */ sw $s1, 0x1c($sp) +/* 0D7214 800D6614 0C034958 */ jal __osDisableInt +/* 0D7218 800D6618 AFB00018 */ sw $s0, 0x18($sp) +/* 0D721C 800D661C 8FAE0038 */ lw $t6, 0x38($sp) +/* 0D7220 800D6620 00408025 */ move $s0, $v0 +/* 0D7224 800D6624 15C00005 */ bnez $t6, .L800D663C +/* 0D7228 800D6628 00000000 */ nop +/* 0D722C 800D662C 3C0F800E */ lui $t7, %hi(D_800E4890) # $t7, 0x800e +/* 0D7230 800D6630 8DEF4890 */ lw $t7, %lo(D_800E4890)($t7) +/* 0D7234 800D6634 10000009 */ b .L800D665C +/* 0D7238 800D6638 AFAF0038 */ sw $t7, 0x38($sp) +.L800D663C: +/* 0D723C 800D663C 8FB80038 */ lw $t8, 0x38($sp) +/* 0D7240 800D6640 24010001 */ li $at, 1 +/* 0D7244 800D6644 97190010 */ lhu $t9, 0x10($t8) +/* 0D7248 800D6648 13210004 */ beq $t9, $at, .L800D665C +/* 0D724C 800D664C 00000000 */ nop +/* 0D7250 800D6650 8F040008 */ lw $a0, 8($t8) +/* 0D7254 800D6654 0C034B1C */ jal func_800D2C70 +/* 0D7258 800D6658 03002825 */ move $a1, $t8 +.L800D665C: +/* 0D725C 800D665C 3C08800E */ lui $t0, %hi(D_800E488C) # $t0, 0x800e +/* 0D7260 800D6660 8D08488C */ lw $t0, %lo(D_800E488C)($t0) +/* 0D7264 800D6664 8FA90038 */ lw $t1, 0x38($sp) +/* 0D7268 800D6668 15090005 */ bne $t0, $t1, .L800D6680 +/* 0D726C 800D666C 00000000 */ nop +/* 0D7270 800D6670 8D0A000C */ lw $t2, 0xc($t0) +/* 0D7274 800D6674 3C01800E */ lui $at, %hi(D_800E488C) # $at, 0x800e +/* 0D7278 800D6678 10000010 */ b .L800D66BC +/* 0D727C 800D667C AC2A488C */ sw $t2, %lo(D_800E488C)($at) +.L800D6680: +/* 0D7280 800D6680 3C11800E */ lui $s1, %hi(D_800E488C) # $s1, 0x800e +/* 0D7284 800D6684 8E31488C */ lw $s1, %lo(D_800E488C)($s1) +/* 0D7288 800D6688 8E32000C */ lw $s2, 0xc($s1) +/* 0D728C 800D668C 1240000B */ beqz $s2, .L800D66BC +/* 0D7290 800D6690 00000000 */ nop +.L800D6694: +/* 0D7294 800D6694 8FAB0038 */ lw $t3, 0x38($sp) +/* 0D7298 800D6698 164B0004 */ bne $s2, $t3, .L800D66AC +/* 0D729C 800D669C 00000000 */ nop +/* 0D72A0 800D66A0 8D6C000C */ lw $t4, 0xc($t3) +/* 0D72A4 800D66A4 10000005 */ b .L800D66BC +/* 0D72A8 800D66A8 AE2C000C */ sw $t4, 0xc($s1) +.L800D66AC: +/* 0D72AC 800D66AC 02408825 */ move $s1, $s2 +/* 0D72B0 800D66B0 8E32000C */ lw $s2, 0xc($s1) +/* 0D72B4 800D66B4 1640FFF7 */ bnez $s2, .L800D6694 +/* 0D72B8 800D66B8 00000000 */ nop +.L800D66BC: +/* 0D72BC 800D66BC 3C0E800E */ lui $t6, %hi(D_800E4890) # $t6, 0x800e +/* 0D72C0 800D66C0 8DCE4890 */ lw $t6, %lo(D_800E4890)($t6) +/* 0D72C4 800D66C4 8FAD0038 */ lw $t5, 0x38($sp) +/* 0D72C8 800D66C8 15AE0003 */ bne $t5, $t6, .L800D66D8 +/* 0D72CC 800D66CC 00000000 */ nop +/* 0D72D0 800D66D0 0C034D09 */ jal func_800D3424 +/* 0D72D4 800D66D4 00000000 */ nop +.L800D66D8: +/* 0D72D8 800D66D8 0C034960 */ jal __osRestoreInt +/* 0D72DC 800D66DC 02002025 */ move $a0, $s0 +/* 0D72E0 800D66E0 8FBF0024 */ lw $ra, 0x24($sp) +/* 0D72E4 800D66E4 8FB00018 */ lw $s0, 0x18($sp) +/* 0D72E8 800D66E8 8FB1001C */ lw $s1, 0x1c($sp) +/* 0D72EC 800D66EC 8FB20020 */ lw $s2, 0x20($sp) +/* 0D72F0 800D66F0 03E00008 */ jr $ra +/* 0D72F4 800D66F4 27BD0038 */ addiu $sp, $sp, 0x38 + +/* 0D72F8 800D66F8 00000000 */ nop +/* 0D72FC 800D66FC 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D6700.s b/asm/non_matchings/unknown_0D3020/func_800D6700.s new file mode 100644 index 00000000..b09eafe1 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D6700.s @@ -0,0 +1,189 @@ +glabel func_800D6700 +/* 0D7300 800D6700 27BDFF70 */ addiu $sp, $sp, -0x90 +/* 0D7304 800D6704 AFB10020 */ sw $s1, 0x20($sp) +/* 0D7308 800D6708 30A200FF */ andi $v0, $a1, 0xff +/* 0D730C 800D670C 24030058 */ li $v1, 88 +/* 0D7310 800D6710 00808825 */ move $s1, $a0 +/* 0D7314 800D6714 AFBF002C */ sw $ra, 0x2c($sp) +/* 0D7318 800D6718 AFB30028 */ sw $s3, 0x28($sp) +/* 0D731C 800D671C AFB20024 */ sw $s2, 0x24($sp) +/* 0D7320 800D6720 AFB0001C */ sw $s0, 0x1c($sp) +/* 0D7324 800D6724 14620004 */ bne $v1, $v0, .L800D6738 +/* 0D7328 800D6728 AFA50094 */ sw $a1, 0x94($sp) +/* 0D732C 800D672C 3C13800E */ lui $s3, %hi(D_800E4934) # $s3, 0x800e +/* 0D7330 800D6730 10000003 */ b .L800D6740 +/* 0D7334 800D6734 26734934 */ addiu $s3, %lo(D_800E4934) # addiu $s3, $s3, 0x4934 +.L800D6738: +/* 0D7338 800D6738 3C13800E */ lui $s3, %hi(D_800E4920) # $s3, 0x800e +/* 0D733C 800D673C 26734920 */ addiu $s3, %lo(D_800E4920) # addiu $s3, $s3, 0x4920 +.L800D6740: +/* 0D7340 800D6740 2401006F */ li $at, 111 +/* 0D7344 800D6744 14410003 */ bne $v0, $at, .L800D6754 +/* 0D7348 800D6748 24100018 */ li $s0, 24 +/* 0D734C 800D674C 10000009 */ b .L800D6774 +/* 0D7350 800D6750 24090008 */ li $t1, 8 +.L800D6754: +/* 0D7354 800D6754 24010078 */ li $at, 120 +/* 0D7358 800D6758 10410005 */ beq $v0, $at, .L800D6770 +/* 0D735C 800D675C 24080010 */ li $t0, 16 +/* 0D7360 800D6760 10620003 */ beq $v1, $v0, .L800D6770 +/* 0D7364 800D6764 00000000 */ nop +/* 0D7368 800D6768 10000001 */ b .L800D6770 +/* 0D736C 800D676C 2408000A */ li $t0, 10 +.L800D6770: +/* 0D7370 800D6770 01004825 */ move $t1, $t0 +.L800D6774: +/* 0D7374 800D6774 8E380000 */ lw $t8, ($s1) +/* 0D7378 800D6778 8E390004 */ lw $t9, 4($s1) +/* 0D737C 800D677C 24010064 */ li $at, 100 +/* 0D7380 800D6780 AFB80060 */ sw $t8, 0x60($sp) +/* 0D7384 800D6784 AFB80040 */ sw $t8, 0x40($sp) +/* 0D7388 800D6788 AFB90044 */ sw $t9, 0x44($sp) +/* 0D738C 800D678C 10410004 */ beq $v0, $at, .L800D67A0 +/* 0D7390 800D6790 AFB90064 */ sw $t9, 0x64($sp) +/* 0D7394 800D6794 24010069 */ li $at, 105 +/* 0D7398 800D6798 54410010 */ bnel $v0, $at, .L800D67DC +/* 0D739C 800D679C 8FAA0060 */ lw $t2, 0x60($sp) +.L800D67A0: +/* 0D73A0 800D67A0 8FAC0040 */ lw $t4, 0x40($sp) +/* 0D73A4 800D67A4 5D80000D */ bgtzl $t4, .L800D67DC +/* 0D73A8 800D67A8 8FAA0060 */ lw $t2, 0x60($sp) +/* 0D73AC 800D67AC 05800003 */ bltz $t4, .L800D67BC +/* 0D73B0 800D67B0 8FAE0060 */ lw $t6, 0x60($sp) +/* 0D73B4 800D67B4 10000009 */ b .L800D67DC +/* 0D73B8 800D67B8 8FAA0060 */ lw $t2, 0x60($sp) +.L800D67BC: +/* 0D73BC 800D67BC 8FAF0064 */ lw $t7, 0x64($sp) +/* 0D73C0 800D67C0 01C0C027 */ not $t8, $t6 +/* 0D73C4 800D67C4 2DE10001 */ sltiu $at, $t7, 1 +/* 0D73C8 800D67C8 0301C021 */ addu $t8, $t8, $at +/* 0D73CC 800D67CC 000FC823 */ negu $t9, $t7 +/* 0D73D0 800D67D0 AFB90064 */ sw $t9, 0x64($sp) +/* 0D73D4 800D67D4 AFB80060 */ sw $t8, 0x60($sp) +/* 0D73D8 800D67D8 8FAA0060 */ lw $t2, 0x60($sp) +.L800D67DC: +/* 0D73DC 800D67DC 8FAB0064 */ lw $t3, 0x64($sp) +/* 0D73E0 800D67E0 24080017 */ li $t0, 23 +/* 0D73E4 800D67E4 15400006 */ bnez $t2, .L800D6800 +/* 0D73E8 800D67E8 8FA40060 */ lw $a0, 0x60($sp) +/* 0D73EC 800D67EC 55600005 */ bnezl $t3, .L800D6804 +/* 0D73F0 800D67F0 24100017 */ li $s0, 23 +/* 0D73F4 800D67F4 8E2C0024 */ lw $t4, 0x24($s1) +/* 0D73F8 800D67F8 51800010 */ beql $t4, $zero, .L800D683C +/* 0D73FC 800D67FC 27B20078 */ addiu $s2, $sp, 0x78 +.L800D6800: +/* 0D7400 800D6800 24100017 */ li $s0, 23 +.L800D6804: +/* 0D7404 800D6804 8FA50064 */ lw $a1, 0x64($sp) +/* 0D7408 800D6808 01203825 */ move $a3, $t1 +/* 0D740C 800D680C 000937C3 */ sra $a2, $t1, 0x1f +/* 0D7410 800D6810 AFA8004C */ sw $t0, 0x4c($sp) +/* 0D7414 800D6814 0C033AA3 */ jal __ull_rem +/* 0D7418 800D6818 AFA90070 */ sw $t1, 0x70($sp) +/* 0D741C 800D681C 8FA8004C */ lw $t0, 0x4c($sp) +/* 0D7420 800D6820 00737021 */ addu $t6, $v1, $s3 +/* 0D7424 800D6824 91CF0000 */ lbu $t7, ($t6) +/* 0D7428 800D6828 27B20078 */ addiu $s2, $sp, 0x78 +/* 0D742C 800D682C 8FA90070 */ lw $t1, 0x70($sp) +/* 0D7430 800D6830 0248C021 */ addu $t8, $s2, $t0 +/* 0D7434 800D6834 A30F0000 */ sb $t7, ($t8) +/* 0D7438 800D6838 27B20078 */ addiu $s2, $sp, 0x78 +.L800D683C: +/* 0D743C 800D683C 8FA40060 */ lw $a0, 0x60($sp) +/* 0D7440 800D6840 8FA50064 */ lw $a1, 0x64($sp) +/* 0D7444 800D6844 01203825 */ move $a3, $t1 +/* 0D7448 800D6848 000937C3 */ sra $a2, $t1, 0x1f +/* 0D744C 800D684C 0C033AB2 */ jal __ull_div +/* 0D7450 800D6850 AFA90070 */ sw $t1, 0x70($sp) +/* 0D7454 800D6854 8FA90070 */ lw $t1, 0x70($sp) +/* 0D7458 800D6858 AE230004 */ sw $v1, 4($s1) +/* 0D745C 800D685C 0440002B */ bltz $v0, .L800D690C +/* 0D7460 800D6860 AE220000 */ sw $v0, ($s1) +/* 0D7464 800D6864 1C400003 */ bgtz $v0, .L800D6874 +/* 0D7468 800D6868 00000000 */ nop +/* 0D746C 800D686C 50600028 */ beql $v1, $zero, .L800D6910 +/* 0D7470 800D6870 240C0018 */ li $t4, 24 +.L800D6874: +/* 0D7474 800D6874 1A000025 */ blez $s0, .L800D690C +/* 0D7478 800D6878 000967C3 */ sra $t4, $t1, 0x1f +/* 0D747C 800D687C 8E2A0000 */ lw $t2, ($s1) +/* 0D7480 800D6880 8E2B0004 */ lw $t3, 4($s1) +/* 0D7484 800D6884 AFA9003C */ sw $t1, 0x3c($sp) +/* 0D7488 800D6888 AFAC0038 */ sw $t4, 0x38($sp) +/* 0D748C 800D688C AFAA0040 */ sw $t2, 0x40($sp) +/* 0D7490 800D6890 AFAB0044 */ sw $t3, 0x44($sp) +/* 0D7494 800D6894 8FAE0038 */ lw $t6, 0x38($sp) +.L800D6898: +/* 0D7498 800D6898 8FAF003C */ lw $t7, 0x3c($sp) +/* 0D749C 800D689C 27A40050 */ addiu $a0, $sp, 0x50 +/* 0D74A0 800D68A0 8FA60040 */ lw $a2, 0x40($sp) +/* 0D74A4 800D68A4 8FA70044 */ lw $a3, 0x44($sp) +/* 0D74A8 800D68A8 AFAE0010 */ sw $t6, 0x10($sp) +/* 0D74AC 800D68AC 0C035D1C */ jal func_800D7470 +/* 0D74B0 800D68B0 AFAF0014 */ sw $t7, 0x14($sp) +/* 0D74B4 800D68B4 8FB80050 */ lw $t8, 0x50($sp) +/* 0D74B8 800D68B8 8FB90054 */ lw $t9, 0x54($sp) +/* 0D74BC 800D68BC 2604FFFF */ addiu $a0, $s0, -1 +/* 0D74C0 800D68C0 AE380000 */ sw $t8, ($s1) +/* 0D74C4 800D68C4 AE390004 */ sw $t9, 4($s1) +/* 0D74C8 800D68C8 8FAB005C */ lw $t3, 0x5c($sp) +/* 0D74CC 800D68CC 02447821 */ addu $t7, $s2, $a0 +/* 0D74D0 800D68D0 00808025 */ move $s0, $a0 +/* 0D74D4 800D68D4 01736821 */ addu $t5, $t3, $s3 +/* 0D74D8 800D68D8 91AE0000 */ lbu $t6, ($t5) +/* 0D74DC 800D68DC A1EE0000 */ sb $t6, ($t7) +/* 0D74E0 800D68E0 8E380000 */ lw $t8, ($s1) +/* 0D74E4 800D68E4 8E390004 */ lw $t9, 4($s1) +/* 0D74E8 800D68E8 AFB80040 */ sw $t8, 0x40($sp) +/* 0D74EC 800D68EC 07000007 */ bltz $t8, .L800D690C +/* 0D74F0 800D68F0 AFB90044 */ sw $t9, 0x44($sp) +/* 0D74F4 800D68F4 1F000003 */ bgtz $t8, .L800D6904 +/* 0D74F8 800D68F8 00000000 */ nop +/* 0D74FC 800D68FC 53200004 */ beql $t9, $zero, .L800D6910 +/* 0D7500 800D6900 240C0018 */ li $t4, 24 +.L800D6904: +/* 0D7504 800D6904 5E00FFE4 */ bgtzl $s0, .L800D6898 +/* 0D7508 800D6908 8FAE0038 */ lw $t6, 0x38($sp) +.L800D690C: +/* 0D750C 800D690C 240C0018 */ li $t4, 24 +.L800D6910: +/* 0D7510 800D6910 01903023 */ subu $a2, $t4, $s0 +/* 0D7514 800D6914 AE260014 */ sw $a2, 0x14($s1) +/* 0D7518 800D6918 8E240008 */ lw $a0, 8($s1) +/* 0D751C 800D691C 0C03385C */ jal memcpy +/* 0D7520 800D6920 02502821 */ addu $a1, $s2, $s0 +/* 0D7524 800D6924 8E250014 */ lw $a1, 0x14($s1) +/* 0D7528 800D6928 8E240024 */ lw $a0, 0x24($s1) +/* 0D752C 800D692C 00A4082A */ slt $at, $a1, $a0 +/* 0D7530 800D6930 10200002 */ beqz $at, .L800D693C +/* 0D7534 800D6934 00856823 */ subu $t5, $a0, $a1 +/* 0D7538 800D6938 AE2D0010 */ sw $t5, 0x10($s1) +.L800D693C: +/* 0D753C 800D693C 04830010 */ bgezl $a0, .L800D6980 +/* 0D7540 800D6940 8FBF002C */ lw $ra, 0x2c($sp) +/* 0D7544 800D6944 8E2E0030 */ lw $t6, 0x30($s1) +/* 0D7548 800D6948 24010010 */ li $at, 16 +/* 0D754C 800D694C 31CF0014 */ andi $t7, $t6, 0x14 +/* 0D7550 800D6950 55E1000B */ bnel $t7, $at, .L800D6980 +/* 0D7554 800D6954 8FBF002C */ lw $ra, 0x2c($sp) +/* 0D7558 800D6958 8E380028 */ lw $t8, 0x28($s1) +/* 0D755C 800D695C 8E39000C */ lw $t9, 0xc($s1) +/* 0D7560 800D6960 8E220010 */ lw $v0, 0x10($s1) +/* 0D7564 800D6964 03195023 */ subu $t2, $t8, $t9 +/* 0D7568 800D6968 01425823 */ subu $t3, $t2, $v0 +/* 0D756C 800D696C 01658023 */ subu $s0, $t3, $a1 +/* 0D7570 800D6970 1A000002 */ blez $s0, .L800D697C +/* 0D7574 800D6974 00506021 */ addu $t4, $v0, $s0 +/* 0D7578 800D6978 AE2C0010 */ sw $t4, 0x10($s1) +.L800D697C: +/* 0D757C 800D697C 8FBF002C */ lw $ra, 0x2c($sp) +.L800D6980: +/* 0D7580 800D6980 8FB0001C */ lw $s0, 0x1c($sp) +/* 0D7584 800D6984 8FB10020 */ lw $s1, 0x20($sp) +/* 0D7588 800D6988 8FB20024 */ lw $s2, 0x24($sp) +/* 0D758C 800D698C 8FB30028 */ lw $s3, 0x28($sp) +/* 0D7590 800D6990 03E00008 */ jr $ra +/* 0D7594 800D6994 27BD0090 */ addiu $sp, $sp, 0x90 + +/* 0D7598 800D6998 00000000 */ nop +/* 0D759C 800D699C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D69A0.s b/asm/non_matchings/unknown_0D3020/func_800D69A0.s new file mode 100644 index 00000000..6d0d6240 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D69A0.s @@ -0,0 +1,391 @@ +glabel func_800D69A0 +/* 0D75A0 800D69A0 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0D75A4 800D69A4 AFB20028 */ sw $s2, 0x28($sp) +/* 0D75A8 800D69A8 00127400 */ sll $t6, $s2, 0x10 +/* 0D75AC 800D69AC 000E9403 */ sra $s2, $t6, 0x10 +/* 0D75B0 800D69B0 AFB30024 */ sw $s3, 0x24($sp) +/* 0D75B4 800D69B4 0013C400 */ sll $t8, $s3, 0x10 +/* 0D75B8 800D69B8 00189C03 */ sra $s3, $t8, 0x10 +/* 0D75BC 800D69BC 328E00FF */ andi $t6, $s4, 0xff +/* 0D75C0 800D69C0 AFB4001C */ sw $s4, 0x1c($sp) +/* 0D75C4 800D69C4 01C0A025 */ move $s4, $t6 +/* 0D75C8 800D69C8 1E600004 */ bgtz $s3, .L800D69DC +/* 0D75CC 800D69CC AFBF0014 */ sw $ra, 0x14($sp) +/* 0D75D0 800D69D0 3C11800F */ lui $s1, %hi(D_800E98B0) # $s1, 0x800f +/* 0D75D4 800D69D4 263198B0 */ addiu $s1, %lo(D_800E98B0) # addiu $s1, $s1, -0x6750 +/* 0D75D8 800D69D8 24130001 */ li $s3, 1 +.L800D69DC: +/* 0D75DC 800D69DC 24020066 */ li $v0, 102 +/* 0D75E0 800D69E0 1054000C */ beq $v0, $s4, .L800D6A14 +/* 0D75E4 800D69E4 02801825 */ move $v1, $s4 +/* 0D75E8 800D69E8 24040067 */ li $a0, 103 +/* 0D75EC 800D69EC 10830002 */ beq $a0, $v1, .L800D69F8 +/* 0D75F0 800D69F0 24010047 */ li $at, 71 +/* 0D75F4 800D69F4 14610096 */ bne $v1, $at, .L800D6C50 +.L800D69F8: +/* 0D75F8 800D69F8 2A41FFFC */ slti $at, $s2, -4 +/* 0D75FC 800D69FC 14200094 */ bnez $at, .L800D6C50 +/* 0D7600 800D6A00 00000000 */ nop +/* 0D7604 800D6A04 8E0F0024 */ lw $t7, 0x24($s0) +/* 0D7608 800D6A08 024F082A */ slt $at, $s2, $t7 +/* 0D760C 800D6A0C 10200090 */ beqz $at, .L800D6C50 +/* 0D7610 800D6A10 00000000 */ nop +.L800D6A14: +/* 0D7614 800D6A14 26520001 */ addiu $s2, $s2, 1 +/* 0D7618 800D6A18 0012C400 */ sll $t8, $s2, 0x10 +/* 0D761C 800D6A1C 1043000E */ beq $v0, $v1, .L800D6A58 +/* 0D7620 800D6A20 00189403 */ sra $s2, $t8, 0x10 +/* 0D7624 800D6A24 8E0E0030 */ lw $t6, 0x30($s0) +/* 0D7628 800D6A28 8E020024 */ lw $v0, 0x24($s0) +/* 0D762C 800D6A2C 31CF0008 */ andi $t7, $t6, 8 +/* 0D7630 800D6A30 15E00005 */ bnez $t7, .L800D6A48 +/* 0D7634 800D6A34 0262082A */ slt $at, $s3, $v0 +/* 0D7638 800D6A38 50200004 */ beql $at, $zero, .L800D6A4C +/* 0D763C 800D6A3C 0052C023 */ subu $t8, $v0, $s2 +/* 0D7640 800D6A40 AE130024 */ sw $s3, 0x24($s0) +/* 0D7644 800D6A44 02601025 */ move $v0, $s3 +.L800D6A48: +/* 0D7648 800D6A48 0052C023 */ subu $t8, $v0, $s2 +.L800D6A4C: +/* 0D764C 800D6A4C 07010002 */ bgez $t8, .L800D6A58 +/* 0D7650 800D6A50 AE180024 */ sw $t8, 0x24($s0) +/* 0D7654 800D6A54 AE000024 */ sw $zero, 0x24($s0) +.L800D6A58: +/* 0D7658 800D6A58 1E400033 */ bgtz $s2, .L800D6B28 +/* 0D765C 800D6A5C 0272082A */ slt $at, $s3, $s2 +/* 0D7660 800D6A60 8E0F0008 */ lw $t7, 8($s0) +/* 0D7664 800D6A64 8E180014 */ lw $t8, 0x14($s0) +/* 0D7668 800D6A68 240E0030 */ li $t6, 48 +/* 0D766C 800D6A6C 00121823 */ negu $v1, $s2 +/* 0D7670 800D6A70 01F8C821 */ addu $t9, $t7, $t8 +/* 0D7674 800D6A74 A32E0000 */ sb $t6, ($t9) +/* 0D7678 800D6A78 8E0F0014 */ lw $t7, 0x14($s0) +/* 0D767C 800D6A7C 8E020024 */ lw $v0, 0x24($s0) +/* 0D7680 800D6A80 02202825 */ move $a1, $s1 +/* 0D7684 800D6A84 25F80001 */ addiu $t8, $t7, 1 +/* 0D7688 800D6A88 1C400005 */ bgtz $v0, .L800D6AA0 +/* 0D768C 800D6A8C AE180014 */ sw $t8, 0x14($s0) +/* 0D7690 800D6A90 8E0E0030 */ lw $t6, 0x30($s0) +/* 0D7694 800D6A94 31D90008 */ andi $t9, $t6, 8 +/* 0D7698 800D6A98 5320000B */ beql $t9, $zero, .L800D6AC8 +/* 0D769C 800D6A9C 0043082A */ slt $at, $v0, $v1 +.L800D6AA0: +/* 0D76A0 800D6AA0 8E180008 */ lw $t8, 8($s0) +/* 0D76A4 800D6AA4 8E0E0014 */ lw $t6, 0x14($s0) +/* 0D76A8 800D6AA8 240F002E */ li $t7, 46 +/* 0D76AC 800D6AAC 030EC821 */ addu $t9, $t8, $t6 +/* 0D76B0 800D6AB0 A32F0000 */ sb $t7, ($t9) +/* 0D76B4 800D6AB4 8E180014 */ lw $t8, 0x14($s0) +/* 0D76B8 800D6AB8 8E020024 */ lw $v0, 0x24($s0) +/* 0D76BC 800D6ABC 270E0001 */ addiu $t6, $t8, 1 +/* 0D76C0 800D6AC0 AE0E0014 */ sw $t6, 0x14($s0) +/* 0D76C4 800D6AC4 0043082A */ slt $at, $v0, $v1 +.L800D6AC8: +/* 0D76C8 800D6AC8 50200006 */ beql $at, $zero, .L800D6AE4 +/* 0D76CC 800D6ACC 0052C021 */ addu $t8, $v0, $s2 +/* 0D76D0 800D6AD0 00029023 */ negu $s2, $v0 +/* 0D76D4 800D6AD4 00127C00 */ sll $t7, $s2, 0x10 +/* 0D76D8 800D6AD8 000F9403 */ sra $s2, $t7, 0x10 +/* 0D76DC 800D6ADC 00121823 */ negu $v1, $s2 +/* 0D76E0 800D6AE0 0052C021 */ addu $t8, $v0, $s2 +.L800D6AE4: +/* 0D76E4 800D6AE4 0313082A */ slt $at, $t8, $s3 +/* 0D76E8 800D6AE8 AE030018 */ sw $v1, 0x18($s0) +/* 0D76EC 800D6AEC 10200004 */ beqz $at, .L800D6B00 +/* 0D76F0 800D6AF0 AE180024 */ sw $t8, 0x24($s0) +/* 0D76F4 800D6AF4 00189C00 */ sll $s3, $t8, 0x10 +/* 0D76F8 800D6AF8 00137403 */ sra $t6, $s3, 0x10 +/* 0D76FC 800D6AFC 01C09825 */ move $s3, $t6 +.L800D6B00: +/* 0D7700 800D6B00 8E0F0008 */ lw $t7, 8($s0) +/* 0D7704 800D6B04 8E190014 */ lw $t9, 0x14($s0) +/* 0D7708 800D6B08 AE13001C */ sw $s3, 0x1c($s0) +/* 0D770C 800D6B0C 02603025 */ move $a2, $s3 +/* 0D7710 800D6B10 0C03385C */ jal memcpy +/* 0D7714 800D6B14 01F92021 */ addu $a0, $t7, $t9 +/* 0D7718 800D6B18 8E180024 */ lw $t8, 0x24($s0) +/* 0D771C 800D6B1C 03137023 */ subu $t6, $t8, $s3 +/* 0D7720 800D6B20 100000E2 */ b .L800D6EAC +/* 0D7724 800D6B24 AE0E0020 */ sw $t6, 0x20($s0) +.L800D6B28: +/* 0D7728 800D6B28 1020001D */ beqz $at, .L800D6BA0 +/* 0D772C 800D6B2C 02202825 */ move $a1, $s1 +/* 0D7730 800D6B30 8E0F0008 */ lw $t7, 8($s0) +/* 0D7734 800D6B34 8E190014 */ lw $t9, 0x14($s0) +/* 0D7738 800D6B38 02202825 */ move $a1, $s1 +/* 0D773C 800D6B3C 02603025 */ move $a2, $s3 +/* 0D7740 800D6B40 0C03385C */ jal memcpy +/* 0D7744 800D6B44 01F92021 */ addu $a0, $t7, $t9 +/* 0D7748 800D6B48 8E180014 */ lw $t8, 0x14($s0) +/* 0D774C 800D6B4C 8E020024 */ lw $v0, 0x24($s0) +/* 0D7750 800D6B50 02537823 */ subu $t7, $s2, $s3 +/* 0D7754 800D6B54 03137021 */ addu $t6, $t8, $s3 +/* 0D7758 800D6B58 AE0E0014 */ sw $t6, 0x14($s0) +/* 0D775C 800D6B5C 1C400005 */ bgtz $v0, .L800D6B74 +/* 0D7760 800D6B60 AE0F0018 */ sw $t7, 0x18($s0) +/* 0D7764 800D6B64 8E190030 */ lw $t9, 0x30($s0) +/* 0D7768 800D6B68 33380008 */ andi $t8, $t9, 8 +/* 0D776C 800D6B6C 1300000A */ beqz $t8, .L800D6B98 +/* 0D7770 800D6B70 00000000 */ nop +.L800D6B74: +/* 0D7774 800D6B74 8E0F0008 */ lw $t7, 8($s0) +/* 0D7778 800D6B78 8E190014 */ lw $t9, 0x14($s0) +/* 0D777C 800D6B7C 240E002E */ li $t6, 46 +/* 0D7780 800D6B80 01F9C021 */ addu $t8, $t7, $t9 +/* 0D7784 800D6B84 A30E0000 */ sb $t6, ($t8) +/* 0D7788 800D6B88 8E0F001C */ lw $t7, 0x1c($s0) +/* 0D778C 800D6B8C 8E020024 */ lw $v0, 0x24($s0) +/* 0D7790 800D6B90 25F90001 */ addiu $t9, $t7, 1 +/* 0D7794 800D6B94 AE19001C */ sw $t9, 0x1c($s0) +.L800D6B98: +/* 0D7798 800D6B98 100000C4 */ b .L800D6EAC +/* 0D779C 800D6B9C AE020020 */ sw $v0, 0x20($s0) +.L800D6BA0: +/* 0D77A0 800D6BA0 8E0E0008 */ lw $t6, 8($s0) +/* 0D77A4 800D6BA4 8E180014 */ lw $t8, 0x14($s0) +/* 0D77A8 800D6BA8 02403025 */ move $a2, $s2 +/* 0D77AC 800D6BAC 0C03385C */ jal memcpy +/* 0D77B0 800D6BB0 01D82021 */ addu $a0, $t6, $t8 +/* 0D77B4 800D6BB4 8E0F0014 */ lw $t7, 0x14($s0) +/* 0D77B8 800D6BB8 8E020024 */ lw $v0, 0x24($s0) +/* 0D77BC 800D6BBC 02729823 */ subu $s3, $s3, $s2 +/* 0D77C0 800D6BC0 00137400 */ sll $t6, $s3, 0x10 +/* 0D77C4 800D6BC4 01F2C821 */ addu $t9, $t7, $s2 +/* 0D77C8 800D6BC8 AE190014 */ sw $t9, 0x14($s0) +/* 0D77CC 800D6BCC 1C400005 */ bgtz $v0, .L800D6BE4 +/* 0D77D0 800D6BD0 000E9C03 */ sra $s3, $t6, 0x10 +/* 0D77D4 800D6BD4 8E0F0030 */ lw $t7, 0x30($s0) +/* 0D77D8 800D6BD8 31F90008 */ andi $t9, $t7, 8 +/* 0D77DC 800D6BDC 5320000B */ beql $t9, $zero, .L800D6C0C +/* 0D77E0 800D6BE0 0053082A */ slt $at, $v0, $s3 +.L800D6BE4: +/* 0D77E4 800D6BE4 8E180008 */ lw $t8, 8($s0) +/* 0D77E8 800D6BE8 8E0F0014 */ lw $t7, 0x14($s0) +/* 0D77EC 800D6BEC 240E002E */ li $t6, 46 +/* 0D77F0 800D6BF0 030FC821 */ addu $t9, $t8, $t7 +/* 0D77F4 800D6BF4 A32E0000 */ sb $t6, ($t9) +/* 0D77F8 800D6BF8 8E180014 */ lw $t8, 0x14($s0) +/* 0D77FC 800D6BFC 8E020024 */ lw $v0, 0x24($s0) +/* 0D7800 800D6C00 270F0001 */ addiu $t7, $t8, 1 +/* 0D7804 800D6C04 AE0F0014 */ sw $t7, 0x14($s0) +/* 0D7808 800D6C08 0053082A */ slt $at, $v0, $s3 +.L800D6C0C: +/* 0D780C 800D6C0C 10200004 */ beqz $at, .L800D6C20 +/* 0D7810 800D6C10 02512821 */ addu $a1, $s2, $s1 +/* 0D7814 800D6C14 00029C00 */ sll $s3, $v0, 0x10 +/* 0D7818 800D6C18 00137403 */ sra $t6, $s3, 0x10 +/* 0D781C 800D6C1C 01C09825 */ move $s3, $t6 +.L800D6C20: +/* 0D7820 800D6C20 8E190008 */ lw $t9, 8($s0) +/* 0D7824 800D6C24 8E180014 */ lw $t8, 0x14($s0) +/* 0D7828 800D6C28 02603025 */ move $a2, $s3 +/* 0D782C 800D6C2C 0C03385C */ jal memcpy +/* 0D7830 800D6C30 03382021 */ addu $a0, $t9, $t8 +/* 0D7834 800D6C34 8E0F0014 */ lw $t7, 0x14($s0) +/* 0D7838 800D6C38 8E190024 */ lw $t9, 0x24($s0) +/* 0D783C 800D6C3C 01F37021 */ addu $t6, $t7, $s3 +/* 0D7840 800D6C40 0333C023 */ subu $t8, $t9, $s3 +/* 0D7844 800D6C44 AE0E0014 */ sw $t6, 0x14($s0) +/* 0D7848 800D6C48 10000098 */ b .L800D6EAC +/* 0D784C 800D6C4C AE180018 */ sw $t8, 0x18($s0) +.L800D6C50: +/* 0D7850 800D6C50 10830003 */ beq $a0, $v1, .L800D6C60 +/* 0D7854 800D6C54 24010047 */ li $at, 71 +/* 0D7858 800D6C58 54610011 */ bnel $v1, $at, .L800D6CA0 +/* 0D785C 800D6C5C 8E180008 */ lw $t8, 8($s0) +.L800D6C60: +/* 0D7860 800D6C60 8E020024 */ lw $v0, 0x24($s0) +/* 0D7864 800D6C64 24140045 */ li $s4, 69 +/* 0D7868 800D6C68 0262082A */ slt $at, $s3, $v0 +/* 0D786C 800D6C6C 50200004 */ beql $at, $zero, .L800D6C80 +/* 0D7870 800D6C70 244FFFFF */ addiu $t7, $v0, -1 +/* 0D7874 800D6C74 AE130024 */ sw $s3, 0x24($s0) +/* 0D7878 800D6C78 02601025 */ move $v0, $s3 +/* 0D787C 800D6C7C 244FFFFF */ addiu $t7, $v0, -1 +.L800D6C80: +/* 0D7880 800D6C80 05E10002 */ bgez $t7, .L800D6C8C +/* 0D7884 800D6C84 AE0F0024 */ sw $t7, 0x24($s0) +/* 0D7888 800D6C88 AE000024 */ sw $zero, 0x24($s0) +.L800D6C8C: +/* 0D788C 800D6C8C 14830003 */ bne $a0, $v1, .L800D6C9C +/* 0D7890 800D6C90 00000000 */ nop +/* 0D7894 800D6C94 10000001 */ b .L800D6C9C +/* 0D7898 800D6C98 24140065 */ li $s4, 101 +.L800D6C9C: +/* 0D789C 800D6C9C 8E180008 */ lw $t8, 8($s0) +.L800D6CA0: +/* 0D78A0 800D6CA0 8E0F0014 */ lw $t7, 0x14($s0) +/* 0D78A4 800D6CA4 92390000 */ lbu $t9, ($s1) +/* 0D78A8 800D6CA8 26310001 */ addiu $s1, $s1, 1 +/* 0D78AC 800D6CAC 030F7021 */ addu $t6, $t8, $t7 +/* 0D78B0 800D6CB0 A1D90000 */ sb $t9, ($t6) +/* 0D78B4 800D6CB4 8E180014 */ lw $t8, 0x14($s0) +/* 0D78B8 800D6CB8 8E020024 */ lw $v0, 0x24($s0) +/* 0D78BC 800D6CBC 270F0001 */ addiu $t7, $t8, 1 +/* 0D78C0 800D6CC0 1C400005 */ bgtz $v0, .L800D6CD8 +/* 0D78C4 800D6CC4 AE0F0014 */ sw $t7, 0x14($s0) +/* 0D78C8 800D6CC8 8E190030 */ lw $t9, 0x30($s0) +/* 0D78CC 800D6CCC 332E0008 */ andi $t6, $t9, 8 +/* 0D78D0 800D6CD0 11C0000A */ beqz $t6, .L800D6CFC +/* 0D78D4 800D6CD4 00000000 */ nop +.L800D6CD8: +/* 0D78D8 800D6CD8 8E0F0008 */ lw $t7, 8($s0) +/* 0D78DC 800D6CDC 8E190014 */ lw $t9, 0x14($s0) +/* 0D78E0 800D6CE0 2418002E */ li $t8, 46 +/* 0D78E4 800D6CE4 01F97021 */ addu $t6, $t7, $t9 +/* 0D78E8 800D6CE8 A1D80000 */ sb $t8, ($t6) +/* 0D78EC 800D6CEC 8E0F0014 */ lw $t7, 0x14($s0) +/* 0D78F0 800D6CF0 8E020024 */ lw $v0, 0x24($s0) +/* 0D78F4 800D6CF4 25F90001 */ addiu $t9, $t7, 1 +/* 0D78F8 800D6CF8 AE190014 */ sw $t9, 0x14($s0) +.L800D6CFC: +/* 0D78FC 800D6CFC 58400016 */ blezl $v0, .L800D6D58 +/* 0D7900 800D6D00 8E0E0008 */ lw $t6, 8($s0) +/* 0D7904 800D6D04 2673FFFF */ addiu $s3, $s3, -1 +/* 0D7908 800D6D08 0013C400 */ sll $t8, $s3, 0x10 +/* 0D790C 800D6D0C 00189C03 */ sra $s3, $t8, 0x10 +/* 0D7910 800D6D10 0053082A */ slt $at, $v0, $s3 +/* 0D7914 800D6D14 10200004 */ beqz $at, .L800D6D28 +/* 0D7918 800D6D18 02202825 */ move $a1, $s1 +/* 0D791C 800D6D1C 00029C00 */ sll $s3, $v0, 0x10 +/* 0D7920 800D6D20 00137C03 */ sra $t7, $s3, 0x10 +/* 0D7924 800D6D24 01E09825 */ move $s3, $t7 +.L800D6D28: +/* 0D7928 800D6D28 8E190008 */ lw $t9, 8($s0) +/* 0D792C 800D6D2C 8E180014 */ lw $t8, 0x14($s0) +/* 0D7930 800D6D30 02603025 */ move $a2, $s3 +/* 0D7934 800D6D34 0C03385C */ jal memcpy +/* 0D7938 800D6D38 03382021 */ addu $a0, $t9, $t8 +/* 0D793C 800D6D3C 8E0E0014 */ lw $t6, 0x14($s0) +/* 0D7940 800D6D40 8E190024 */ lw $t9, 0x24($s0) +/* 0D7944 800D6D44 01D37821 */ addu $t7, $t6, $s3 +/* 0D7948 800D6D48 0333C023 */ subu $t8, $t9, $s3 +/* 0D794C 800D6D4C AE0F0014 */ sw $t7, 0x14($s0) +/* 0D7950 800D6D50 AE180018 */ sw $t8, 0x18($s0) +/* 0D7954 800D6D54 8E0E0008 */ lw $t6, 8($s0) +.L800D6D58: +/* 0D7958 800D6D58 8E0F0014 */ lw $t7, 0x14($s0) +/* 0D795C 800D6D5C 01CF8821 */ addu $s1, $t6, $t7 +/* 0D7960 800D6D60 26310001 */ addiu $s1, $s1, 1 +/* 0D7964 800D6D64 06400005 */ bltz $s2, .L800D6D7C +/* 0D7968 800D6D68 A234FFFF */ sb $s4, -1($s1) +/* 0D796C 800D6D6C 2419002B */ li $t9, 43 +/* 0D7970 800D6D70 A2390000 */ sb $t9, ($s1) +/* 0D7974 800D6D74 10000008 */ b .L800D6D98 +/* 0D7978 800D6D78 26310001 */ addiu $s1, $s1, 1 +.L800D6D7C: +/* 0D797C 800D6D7C 00129023 */ negu $s2, $s2 +/* 0D7980 800D6D80 00127400 */ sll $t6, $s2, 0x10 +/* 0D7984 800D6D84 2418002D */ li $t8, 45 +/* 0D7988 800D6D88 000E7C03 */ sra $t7, $t6, 0x10 +/* 0D798C 800D6D8C A2380000 */ sb $t8, ($s1) +/* 0D7990 800D6D90 26310001 */ addiu $s1, $s1, 1 +/* 0D7994 800D6D94 01E09025 */ move $s2, $t7 +.L800D6D98: +/* 0D7998 800D6D98 2A410064 */ slti $at, $s2, 0x64 +/* 0D799C 800D6D9C 5420002A */ bnezl $at, .L800D6E48 +/* 0D79A0 800D6DA0 2402000A */ li $v0, 10 +/* 0D79A4 800D6DA4 2A4103E8 */ slti $at, $s2, 0x3e8 +/* 0D79A8 800D6DA8 14200013 */ bnez $at, .L800D6DF8 +/* 0D79AC 800D6DAC 240203E8 */ li $v0, 1000 +/* 0D79B0 800D6DB0 0242001A */ div $zero, $s2, $v0 +/* 0D79B4 800D6DB4 14400002 */ bnez $v0, .L800D6DC0 +/* 0D79B8 800D6DB8 00000000 */ nop +/* 0D79BC 800D6DBC 0007000D */ break 7 +.L800D6DC0: +/* 0D79C0 800D6DC0 2401FFFF */ li $at, -1 +/* 0D79C4 800D6DC4 14410004 */ bne $v0, $at, .L800D6DD8 +/* 0D79C8 800D6DC8 3C018000 */ lui $at, 0x8000 +/* 0D79CC 800D6DCC 16410002 */ bne $s2, $at, .L800D6DD8 +/* 0D79D0 800D6DD0 00000000 */ nop +/* 0D79D4 800D6DD4 0006000D */ break 6 +.L800D6DD8: +/* 0D79D8 800D6DD8 00009010 */ mfhi $s2 +/* 0D79DC 800D6DDC 00127400 */ sll $t6, $s2, 0x10 +/* 0D79E0 800D6DE0 0000C812 */ mflo $t9 +/* 0D79E4 800D6DE4 27380030 */ addiu $t8, $t9, 0x30 +/* 0D79E8 800D6DE8 000E7C03 */ sra $t7, $t6, 0x10 +/* 0D79EC 800D6DEC 01E09025 */ move $s2, $t7 +/* 0D79F0 800D6DF0 A2380000 */ sb $t8, ($s1) +/* 0D79F4 800D6DF4 26310001 */ addiu $s1, $s1, 1 +.L800D6DF8: +/* 0D79F8 800D6DF8 24020064 */ li $v0, 100 +/* 0D79FC 800D6DFC 0242001A */ div $zero, $s2, $v0 +/* 0D7A00 800D6E00 14400002 */ bnez $v0, .L800D6E0C +/* 0D7A04 800D6E04 00000000 */ nop +/* 0D7A08 800D6E08 0007000D */ break 7 +.L800D6E0C: +/* 0D7A0C 800D6E0C 2401FFFF */ li $at, -1 +/* 0D7A10 800D6E10 14410004 */ bne $v0, $at, .L800D6E24 +/* 0D7A14 800D6E14 3C018000 */ lui $at, 0x8000 +/* 0D7A18 800D6E18 16410002 */ bne $s2, $at, .L800D6E24 +/* 0D7A1C 800D6E1C 00000000 */ nop +/* 0D7A20 800D6E20 0006000D */ break 6 +.L800D6E24: +/* 0D7A24 800D6E24 00009010 */ mfhi $s2 +/* 0D7A28 800D6E28 00127400 */ sll $t6, $s2, 0x10 +/* 0D7A2C 800D6E2C 0000C812 */ mflo $t9 +/* 0D7A30 800D6E30 27380030 */ addiu $t8, $t9, 0x30 +/* 0D7A34 800D6E34 000E7C03 */ sra $t7, $t6, 0x10 +/* 0D7A38 800D6E38 01E09025 */ move $s2, $t7 +/* 0D7A3C 800D6E3C A2380000 */ sb $t8, ($s1) +/* 0D7A40 800D6E40 26310001 */ addiu $s1, $s1, 1 +/* 0D7A44 800D6E44 2402000A */ li $v0, 10 +.L800D6E48: +/* 0D7A48 800D6E48 0242001A */ div $zero, $s2, $v0 +/* 0D7A4C 800D6E4C 14400002 */ bnez $v0, .L800D6E58 +/* 0D7A50 800D6E50 00000000 */ nop +/* 0D7A54 800D6E54 0007000D */ break 7 +.L800D6E58: +/* 0D7A58 800D6E58 2401FFFF */ li $at, -1 +/* 0D7A5C 800D6E5C 14410004 */ bne $v0, $at, .L800D6E70 +/* 0D7A60 800D6E60 3C018000 */ lui $at, 0x8000 +/* 0D7A64 800D6E64 16410002 */ bne $s2, $at, .L800D6E70 +/* 0D7A68 800D6E68 00000000 */ nop +/* 0D7A6C 800D6E6C 0006000D */ break 6 +.L800D6E70: +/* 0D7A70 800D6E70 00009010 */ mfhi $s2 +/* 0D7A74 800D6E74 00127400 */ sll $t6, $s2, 0x10 +/* 0D7A78 800D6E78 0000C812 */ mflo $t9 +/* 0D7A7C 800D6E7C 27380030 */ addiu $t8, $t9, 0x30 +/* 0D7A80 800D6E80 000E7C03 */ sra $t7, $t6, 0x10 +/* 0D7A84 800D6E84 25F90030 */ addiu $t9, $t7, 0x30 +/* 0D7A88 800D6E88 A2380000 */ sb $t8, ($s1) +/* 0D7A8C 800D6E8C A2390001 */ sb $t9, 1($s1) +/* 0D7A90 800D6E90 8E180008 */ lw $t8, 8($s0) +/* 0D7A94 800D6E94 01E09025 */ move $s2, $t7 +/* 0D7A98 800D6E98 8E0F0014 */ lw $t7, 0x14($s0) +/* 0D7A9C 800D6E9C 26310002 */ addiu $s1, $s1, 2 +/* 0D7AA0 800D6EA0 02387023 */ subu $t6, $s1, $t8 +/* 0D7AA4 800D6EA4 01CFC823 */ subu $t9, $t6, $t7 +/* 0D7AA8 800D6EA8 AE19001C */ sw $t9, 0x1c($s0) +.L800D6EAC: +/* 0D7AAC 800D6EAC 8E180030 */ lw $t8, 0x30($s0) +/* 0D7AB0 800D6EB0 24010010 */ li $at, 16 +/* 0D7AB4 800D6EB4 330E0014 */ andi $t6, $t8, 0x14 +/* 0D7AB8 800D6EB8 55C10010 */ bnel $t6, $at, .L800D6EFC +/* 0D7ABC 800D6EBC 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D7AC0 800D6EC0 8E0F000C */ lw $t7, 0xc($s0) +/* 0D7AC4 800D6EC4 8E190014 */ lw $t9, 0x14($s0) +/* 0D7AC8 800D6EC8 8E0E0018 */ lw $t6, 0x18($s0) +/* 0D7ACC 800D6ECC 8E030028 */ lw $v1, 0x28($s0) +/* 0D7AD0 800D6ED0 01F9C021 */ addu $t8, $t7, $t9 +/* 0D7AD4 800D6ED4 8E19001C */ lw $t9, 0x1c($s0) +/* 0D7AD8 800D6ED8 030E7821 */ addu $t7, $t8, $t6 +/* 0D7ADC 800D6EDC 8E0E0020 */ lw $t6, 0x20($s0) +/* 0D7AE0 800D6EE0 01F9C021 */ addu $t8, $t7, $t9 +/* 0D7AE4 800D6EE4 030E1021 */ addu $v0, $t8, $t6 +/* 0D7AE8 800D6EE8 0043082A */ slt $at, $v0, $v1 +/* 0D7AEC 800D6EEC 10200002 */ beqz $at, .L800D6EF8 +/* 0D7AF0 800D6EF0 00627823 */ subu $t7, $v1, $v0 +/* 0D7AF4 800D6EF4 AE0F0010 */ sw $t7, 0x10($s0) +.L800D6EF8: +/* 0D7AF8 800D6EF8 8FBF0014 */ lw $ra, 0x14($sp) +.L800D6EFC: +/* 0D7AFC 800D6EFC 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0D7B00 800D6F00 03E00008 */ jr $ra +/* 0D7B04 800D6F04 00000000 */ nop + +/* 0D7B08 800D6F08 03E00008 */ jr $ra +/* 0D7B0C 800D6F0C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/func_800D6F10.s b/asm/non_matchings/unknown_0D3020/func_800D6F10.s new file mode 100644 index 00000000..8e528b8d --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D6F10.s @@ -0,0 +1,391 @@ +glabel func_800D6F10 +/* 0D7B10 800D6F10 27BDFF30 */ addiu $sp, $sp, -0xd0 +/* 0D7B14 800D6F14 AFBF003C */ sw $ra, 0x3c($sp) +/* 0D7B18 800D6F18 AFB50038 */ sw $s5, 0x38($sp) +/* 0D7B1C 800D6F1C AFB40034 */ sw $s4, 0x34($sp) +/* 0D7B20 800D6F20 AFB30030 */ sw $s3, 0x30($sp) +/* 0D7B24 800D6F24 AFB2002C */ sw $s2, 0x2c($sp) +/* 0D7B28 800D6F28 AFB10028 */ sw $s1, 0x28($sp) +/* 0D7B2C 800D6F2C AFB00024 */ sw $s0, 0x24($sp) +/* 0D7B30 800D6F30 F7B40018 */ sdc1 $f20, 0x18($sp) +/* 0D7B34 800D6F34 AFA400D0 */ sw $a0, 0xd0($sp) +/* 0D7B38 800D6F38 AFA500D4 */ sw $a1, 0xd4($sp) +/* 0D7B3C 800D6F3C 8C820024 */ lw $v0, 0x24($a0) +/* 0D7B40 800D6F40 27B500B0 */ addiu $s5, $sp, 0xb0 +/* 0D7B44 800D6F44 D4940000 */ ldc1 $f20, ($a0) +/* 0D7B48 800D6F48 04410003 */ bgez $v0, .L800D6F58 +/* 0D7B4C 800D6F4C 240F0006 */ li $t7, 6 +/* 0D7B50 800D6F50 1000000C */ b .L800D6F84 +/* 0D7B54 800D6F54 AC8F0024 */ sw $t7, 0x24($a0) +.L800D6F58: +/* 0D7B58 800D6F58 1440000A */ bnez $v0, .L800D6F84 +/* 0D7B5C 800D6F5C 93B800D7 */ lbu $t8, 0xd7($sp) +/* 0D7B60 800D6F60 24010067 */ li $at, 103 +/* 0D7B64 800D6F64 13010004 */ beq $t8, $at, .L800D6F78 +/* 0D7B68 800D6F68 AFB80048 */ sw $t8, 0x48($sp) +/* 0D7B6C 800D6F6C 24010047 */ li $at, 71 +/* 0D7B70 800D6F70 57010005 */ bnel $t8, $at, .L800D6F88 +/* 0D7B74 800D6F74 8FAE00D0 */ lw $t6, 0xd0($sp) +.L800D6F78: +/* 0D7B78 800D6F78 8FAF00D0 */ lw $t7, 0xd0($sp) +/* 0D7B7C 800D6F7C 24190001 */ li $t9, 1 +/* 0D7B80 800D6F80 ADF90024 */ sw $t9, 0x24($t7) +.L800D6F84: +/* 0D7B84 800D6F84 8FAE00D0 */ lw $t6, 0xd0($sp) +.L800D6F88: +/* 0D7B88 800D6F88 240107FF */ li $at, 2047 +/* 0D7B8C 800D6F8C 95C40000 */ lhu $a0, ($t6) +/* 0D7B90 800D6F90 30837FF0 */ andi $v1, $a0, 0x7ff0 +/* 0D7B94 800D6F94 0003C103 */ sra $t8, $v1, 4 +/* 0D7B98 800D6F98 0018CC00 */ sll $t9, $t8, 0x10 +/* 0D7B9C 800D6F9C 00191C03 */ sra $v1, $t9, 0x10 +/* 0D7BA0 800D6FA0 14610018 */ bne $v1, $at, .L800D7004 +/* 0D7BA4 800D6FA4 00000000 */ nop +/* 0D7BA8 800D6FA8 A7A0009A */ sh $zero, 0x9a($sp) +/* 0D7BAC 800D6FAC 95D80000 */ lhu $t8, ($t6) +/* 0D7BB0 800D6FB0 24030002 */ li $v1, 2 +/* 0D7BB4 800D6FB4 00031400 */ sll $v0, $v1, 0x10 +/* 0D7BB8 800D6FB8 3319000F */ andi $t9, $t8, 0xf +/* 0D7BBC 800D6FBC 5720000A */ bnezl $t9, .L800D6FE8 +/* 0D7BC0 800D6FC0 00027C03 */ sra $t7, $v0, 0x10 +/* 0D7BC4 800D6FC4 95CF0002 */ lhu $t7, 2($t6) +/* 0D7BC8 800D6FC8 55E00007 */ bnezl $t7, .L800D6FE8 +/* 0D7BCC 800D6FCC 00027C03 */ sra $t7, $v0, 0x10 +/* 0D7BD0 800D6FD0 95D80004 */ lhu $t8, 4($t6) +/* 0D7BD4 800D6FD4 57000004 */ bnezl $t8, .L800D6FE8 +/* 0D7BD8 800D6FD8 00027C03 */ sra $t7, $v0, 0x10 +/* 0D7BDC 800D6FDC 95D90006 */ lhu $t9, 6($t6) +/* 0D7BE0 800D6FE0 13200003 */ beqz $t9, .L800D6FF0 +/* 0D7BE4 800D6FE4 00027C03 */ sra $t7, $v0, 0x10 +.L800D6FE8: +/* 0D7BE8 800D6FE8 10000014 */ b .L800D703C +/* 0D7BEC 800D6FEC 01E01025 */ move $v0, $t7 +.L800D6FF0: +/* 0D7BF0 800D6FF0 24030001 */ li $v1, 1 +/* 0D7BF4 800D6FF4 00031400 */ sll $v0, $v1, 0x10 +/* 0D7BF8 800D6FF8 00027C03 */ sra $t7, $v0, 0x10 +/* 0D7BFC 800D6FFC 1000000F */ b .L800D703C +/* 0D7C00 800D7000 01E01025 */ move $v0, $t7 +.L800D7004: +/* 0D7C04 800D7004 18600008 */ blez $v1, .L800D7028 +/* 0D7C08 800D7008 3098800F */ andi $t8, $a0, 0x800f +/* 0D7C0C 800D700C 8FB900D0 */ lw $t9, 0xd0($sp) +/* 0D7C10 800D7010 370E3FF0 */ ori $t6, $t8, 0x3ff0 +/* 0D7C14 800D7014 246FFC02 */ addiu $t7, $v1, -0x3fe +/* 0D7C18 800D7018 A72E0000 */ sh $t6, ($t9) +/* 0D7C1C 800D701C A7AF009A */ sh $t7, 0x9a($sp) +/* 0D7C20 800D7020 10000006 */ b .L800D703C +/* 0D7C24 800D7024 2402FFFF */ li $v0, -1 +.L800D7028: +/* 0D7C28 800D7028 04610003 */ bgez $v1, .L800D7038 +/* 0D7C2C 800D702C 00001025 */ move $v0, $zero +/* 0D7C30 800D7030 10000002 */ b .L800D703C +/* 0D7C34 800D7034 24020002 */ li $v0, 2 +.L800D7038: +/* 0D7C38 800D7038 A7A0009A */ sh $zero, 0x9a($sp) +.L800D703C: +/* 0D7C3C 800D703C 18400012 */ blez $v0, .L800D7088 +/* 0D7C40 800D7040 0002C400 */ sll $t8, $v0, 0x10 +/* 0D7C44 800D7044 0002C400 */ sll $t8, $v0, 0x10 +/* 0D7C48 800D7048 00187403 */ sra $t6, $t8, 0x10 +/* 0D7C4C 800D704C 24010002 */ li $at, 2 +/* 0D7C50 800D7050 15C10004 */ bne $t6, $at, .L800D7064 +/* 0D7C54 800D7054 8FB900D0 */ lw $t9, 0xd0($sp) +/* 0D7C58 800D7058 3C05800F */ lui $a1, %hi(D_800E98A8) # $a1, 0x800f +/* 0D7C5C 800D705C 10000003 */ b .L800D706C +/* 0D7C60 800D7060 24A598A8 */ addiu $a1, %lo(D_800E98A8) # addiu $a1, $a1, -0x6758 +.L800D7064: +/* 0D7C64 800D7064 3C05800F */ lui $a1, %hi(D_800E98AC) # $a1, 0x800f +/* 0D7C68 800D7068 24A598AC */ addiu $a1, %lo(D_800E98AC) # addiu $a1, $a1, -0x6754 +.L800D706C: +/* 0D7C6C 800D706C 240F0003 */ li $t7, 3 +/* 0D7C70 800D7070 AF2F0014 */ sw $t7, 0x14($t9) +/* 0D7C74 800D7074 8F240008 */ lw $a0, 8($t9) +/* 0D7C78 800D7078 0C03385C */ jal memcpy +/* 0D7C7C 800D707C 24060003 */ li $a2, 3 +/* 0D7C80 800D7080 100000ED */ b .L800D7438 +/* 0D7C84 800D7084 8FBF003C */ lw $ra, 0x3c($sp) +.L800D7088: +/* 0D7C88 800D7088 00187403 */ sra $t6, $t8, 0x10 +/* 0D7C8C 800D708C 15C00003 */ bnez $t6, .L800D709C +/* 0D7C90 800D7090 00009825 */ move $s3, $zero +/* 0D7C94 800D7094 100000E2 */ b .L800D7420 +/* 0D7C98 800D7098 A7A0009A */ sh $zero, 0x9a($sp) +.L800D709C: +/* 0D7C9C 800D709C 44801800 */ mtc1 $zero, $f3 +/* 0D7CA0 800D70A0 44801000 */ mtc1 $zero, $f2 +/* 0D7CA4 800D70A4 93AF00D7 */ lbu $t7, 0xd7($sp) +/* 0D7CA8 800D70A8 87B9009A */ lh $t9, 0x9a($sp) +/* 0D7CAC 800D70AC 4622A03C */ c.lt.d $f20, $f2 +/* 0D7CB0 800D70B0 24017597 */ li $at, 30103 +/* 0D7CB4 800D70B4 00001825 */ move $v1, $zero +/* 0D7CB8 800D70B8 27B500B1 */ addiu $s5, $sp, 0xb1 +/* 0D7CBC 800D70BC 45000002 */ bc1f .L800D70C8 +/* 0D7CC0 800D70C0 AFAF0048 */ sw $t7, 0x48($sp) +/* 0D7CC4 800D70C4 4620A507 */ neg.d $f20, $f20 +.L800D70C8: +/* 0D7CC8 800D70C8 03210019 */ multu $t9, $at +/* 0D7CCC 800D70CC 3C010001 */ lui $at, (0x000186A0 >> 16) # lui $at, 1 +/* 0D7CD0 800D70D0 342186A0 */ ori $at, (0x000186A0 & 0xFFFF) # ori $at, $at, 0x86a0 +/* 0D7CD4 800D70D4 24050006 */ li $a1, 6 +/* 0D7CD8 800D70D8 0000C012 */ mflo $t8 +/* 0D7CDC 800D70DC 00000000 */ nop +/* 0D7CE0 800D70E0 00000000 */ nop +/* 0D7CE4 800D70E4 0301001A */ div $zero, $t8, $at +/* 0D7CE8 800D70E8 00007012 */ mflo $t6 +/* 0D7CEC 800D70EC 25CFFFFC */ addiu $t7, $t6, -4 +/* 0D7CF0 800D70F0 000FCC00 */ sll $t9, $t7, 0x10 +/* 0D7CF4 800D70F4 0019C403 */ sra $t8, $t9, 0x10 +/* 0D7CF8 800D70F8 07010019 */ bgez $t8, .L800D7160 +/* 0D7CFC 800D70FC A7AF009A */ sh $t7, 0x9a($sp) +/* 0D7D00 800D7100 000FCC00 */ sll $t9, $t7, 0x10 +/* 0D7D04 800D7104 0019C403 */ sra $t8, $t9, 0x10 +/* 0D7D08 800D7108 240E0003 */ li $t6, 3 +/* 0D7D0C 800D710C 01D82023 */ subu $a0, $t6, $t8 +/* 0D7D10 800D7110 2401FFFC */ li $at, -4 +/* 0D7D14 800D7114 00811024 */ and $v0, $a0, $at +/* 0D7D18 800D7118 0002C823 */ negu $t9, $v0 +/* 0D7D1C 800D711C 1840002C */ blez $v0, .L800D71D0 +/* 0D7D20 800D7120 A7B9009A */ sh $t9, 0x9a($sp) +/* 0D7D24 800D7124 3C04800F */ lui $a0, %hi(D_800E9860) # $a0, 0x800f +/* 0D7D28 800D7128 24849860 */ addiu $a0, %lo(D_800E9860) # addiu $a0, $a0, -0x67a0 +.L800D712C: +/* 0D7D2C 800D712C 304E0001 */ andi $t6, $v0, 1 +/* 0D7D30 800D7130 11C00006 */ beqz $t6, .L800D714C +/* 0D7D34 800D7134 0002C843 */ sra $t9, $v0, 1 +/* 0D7D38 800D7138 0003C0C0 */ sll $t8, $v1, 3 +/* 0D7D3C 800D713C 00987821 */ addu $t7, $a0, $t8 +/* 0D7D40 800D7140 D5E40000 */ ldc1 $f4, ($t7) +/* 0D7D44 800D7144 4624A502 */ mul.d $f20, $f20, $f4 +/* 0D7D48 800D7148 00000000 */ nop +.L800D714C: +/* 0D7D4C 800D714C 03201025 */ move $v0, $t9 +/* 0D7D50 800D7150 1F20FFF6 */ bgtz $t9, .L800D712C +/* 0D7D54 800D7154 24630001 */ addiu $v1, $v1, 1 +/* 0D7D58 800D7158 1000001E */ b .L800D71D4 +/* 0D7D5C 800D715C 8FAF0048 */ lw $t7, 0x48($sp) +.L800D7160: +/* 0D7D60 800D7160 87AE009A */ lh $t6, 0x9a($sp) +/* 0D7D64 800D7164 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 0D7D68 800D7168 00001825 */ move $v1, $zero +/* 0D7D6C 800D716C 19C00018 */ blez $t6, .L800D71D0 +/* 0D7D70 800D7170 31D8FFFC */ andi $t8, $t6, 0xfffc +/* 0D7D74 800D7174 00181400 */ sll $v0, $t8, 0x10 +/* 0D7D78 800D7178 0018CC00 */ sll $t9, $t8, 0x10 +/* 0D7D7C 800D717C 44810800 */ mtc1 $at, $f1 +/* 0D7D80 800D7180 44800000 */ mtc1 $zero, $f0 +/* 0D7D84 800D7184 00197403 */ sra $t6, $t9, 0x10 +/* 0D7D88 800D7188 00027C03 */ sra $t7, $v0, 0x10 +/* 0D7D8C 800D718C A7B8009A */ sh $t8, 0x9a($sp) +/* 0D7D90 800D7190 19C0000E */ blez $t6, .L800D71CC +/* 0D7D94 800D7194 01E01025 */ move $v0, $t7 +/* 0D7D98 800D7198 3C04800F */ lui $a0, %hi(D_800E9860) # $a0, 0x800f +/* 0D7D9C 800D719C 24849860 */ addiu $a0, %lo(D_800E9860) # addiu $a0, $a0, -0x67a0 +.L800D71A0: +/* 0D7DA0 800D71A0 304F0001 */ andi $t7, $v0, 1 +/* 0D7DA4 800D71A4 11E00006 */ beqz $t7, .L800D71C0 +/* 0D7DA8 800D71A8 00027043 */ sra $t6, $v0, 1 +/* 0D7DAC 800D71AC 0003C0C0 */ sll $t8, $v1, 3 +/* 0D7DB0 800D71B0 0098C821 */ addu $t9, $a0, $t8 +/* 0D7DB4 800D71B4 D7260000 */ ldc1 $f6, ($t9) +/* 0D7DB8 800D71B8 46260002 */ mul.d $f0, $f0, $f6 +/* 0D7DBC 800D71BC 00000000 */ nop +.L800D71C0: +/* 0D7DC0 800D71C0 01C01025 */ move $v0, $t6 +/* 0D7DC4 800D71C4 1DC0FFF6 */ bgtz $t6, .L800D71A0 +/* 0D7DC8 800D71C8 24630001 */ addiu $v1, $v1, 1 +.L800D71CC: +/* 0D7DCC 800D71CC 4620A503 */ div.d $f20, $f20, $f0 +.L800D71D0: +/* 0D7DD0 800D71D0 8FAF0048 */ lw $t7, 0x48($sp) +.L800D71D4: +/* 0D7DD4 800D71D4 24010066 */ li $at, 102 +/* 0D7DD8 800D71D8 8FB800D0 */ lw $t8, 0xd0($sp) +/* 0D7DDC 800D71DC 15E10004 */ bne $t7, $at, .L800D71F0 +/* 0D7DE0 800D71E0 240E0030 */ li $t6, 48 +/* 0D7DE4 800D71E4 87A5009A */ lh $a1, 0x9a($sp) +/* 0D7DE8 800D71E8 10000001 */ b .L800D71F0 +/* 0D7DEC 800D71EC 24A5000A */ addiu $a1, $a1, 0xa +.L800D71F0: +/* 0D7DF0 800D71F0 8F190024 */ lw $t9, 0x24($t8) +/* 0D7DF4 800D71F4 00B9A021 */ addu $s4, $a1, $t9 +/* 0D7DF8 800D71F8 2A810014 */ slti $at, $s4, 0x14 +/* 0D7DFC 800D71FC 14200002 */ bnez $at, .L800D7208 +/* 0D7E00 800D7200 00000000 */ nop +/* 0D7E04 800D7204 24140013 */ li $s4, 19 +.L800D7208: +/* 0D7E08 800D7208 1A800033 */ blez $s4, .L800D72D8 +/* 0D7E0C 800D720C A3AE00B0 */ sb $t6, 0xb0($sp) +/* 0D7E10 800D7210 4634103C */ c.lt.d $f2, $f20 +/* 0D7E14 800D7214 24130030 */ li $s3, 48 +/* 0D7E18 800D7218 27B20074 */ addiu $s2, $sp, 0x74 +/* 0D7E1C 800D721C 4502002F */ bc1fl .L800D72DC +/* 0D7E20 800D7220 87B8009A */ lh $t8, 0x9a($sp) +/* 0D7E24 800D7224 4620A20D */ trunc.w.d $f8, $f20 +.L800D7228: +/* 0D7E28 800D7228 2694FFF8 */ addiu $s4, $s4, -8 +/* 0D7E2C 800D722C 26B50008 */ addiu $s5, $s5, 8 +/* 0D7E30 800D7230 44114000 */ mfc1 $s1, $f8 +/* 0D7E34 800D7234 1A800008 */ blez $s4, .L800D7258 +/* 0D7E38 800D7238 00000000 */ nop +/* 0D7E3C 800D723C 44915000 */ mtc1 $s1, $f10 +/* 0D7E40 800D7240 3C01800F */ lui $at, 0x800f +/* 0D7E44 800D7244 D42898B8 */ ldc1 $f8, -0x6748($at) +/* 0D7E48 800D7248 46805121 */ cvt.d.w $f4, $f10 +/* 0D7E4C 800D724C 4624A181 */ sub.d $f6, $f20, $f4 +/* 0D7E50 800D7250 46283502 */ mul.d $f20, $f6, $f8 +/* 0D7E54 800D7254 00000000 */ nop +.L800D7258: +/* 0D7E58 800D7258 1A200011 */ blez $s1, .L800D72A0 +/* 0D7E5C 800D725C 24100008 */ li $s0, 8 +/* 0D7E60 800D7260 24100007 */ li $s0, 7 +/* 0D7E64 800D7264 0600000E */ bltz $s0, .L800D72A0 +/* 0D7E68 800D7268 02402025 */ move $a0, $s2 +.L800D726C: +/* 0D7E6C 800D726C 02202825 */ move $a1, $s1 +/* 0D7E70 800D7270 0C035D5C */ jal func_800D7570 +/* 0D7E74 800D7274 2406000A */ li $a2, 10 +/* 0D7E78 800D7278 8FB80078 */ lw $t8, 0x78($sp) +/* 0D7E7C 800D727C 26B5FFFF */ addiu $s5, $s5, -1 +/* 0D7E80 800D7280 27190030 */ addiu $t9, $t8, 0x30 +/* 0D7E84 800D7284 A2B90000 */ sb $t9, ($s5) +/* 0D7E88 800D7288 8FB10074 */ lw $s1, 0x74($sp) +/* 0D7E8C 800D728C 5A200005 */ blezl $s1, .L800D72A4 +/* 0D7E90 800D7290 44801800 */ mtc1 $zero, $f3 +/* 0D7E94 800D7294 2610FFFF */ addiu $s0, $s0, -1 +/* 0D7E98 800D7298 0603FFF4 */ bgezl $s0, .L800D726C +/* 0D7E9C 800D729C 02402025 */ move $a0, $s2 +.L800D72A0: +/* 0D7EA0 800D72A0 44801800 */ mtc1 $zero, $f3 +.L800D72A4: +/* 0D7EA4 800D72A4 44801000 */ mtc1 $zero, $f2 +/* 0D7EA8 800D72A8 2610FFFF */ addiu $s0, $s0, -1 +/* 0D7EAC 800D72AC 06000004 */ bltz $s0, .L800D72C0 +.L800D72B0: +/* 0D7EB0 800D72B0 2610FFFF */ addiu $s0, $s0, -1 +/* 0D7EB4 800D72B4 26B5FFFF */ addiu $s5, $s5, -1 +/* 0D7EB8 800D72B8 0601FFFD */ bgez $s0, .L800D72B0 +/* 0D7EBC 800D72BC A2B30000 */ sb $s3, ($s5) +.L800D72C0: +/* 0D7EC0 800D72C0 1A800005 */ blez $s4, .L800D72D8 +/* 0D7EC4 800D72C4 26B50008 */ addiu $s5, $s5, 8 +/* 0D7EC8 800D72C8 4634103C */ c.lt.d $f2, $f20 +/* 0D7ECC 800D72CC 00000000 */ nop +/* 0D7ED0 800D72D0 4503FFD5 */ bc1tl .L800D7228 +/* 0D7ED4 800D72D4 4620A20D */ trunc.w.d $f8, $f20 +.L800D72D8: +/* 0D7ED8 800D72D8 87B8009A */ lh $t8, 0x9a($sp) +.L800D72DC: +/* 0D7EDC 800D72DC 93AE00B1 */ lbu $t6, 0xb1($sp) +/* 0D7EE0 800D72E0 27AF00B0 */ addiu $t7, $sp, 0xb0 +/* 0D7EE4 800D72E4 24020030 */ li $v0, 48 +/* 0D7EE8 800D72E8 02AFA023 */ subu $s4, $s5, $t7 +/* 0D7EEC 800D72EC 27190007 */ addiu $t9, $t8, 7 +/* 0D7EF0 800D72F0 2694FFFF */ addiu $s4, $s4, -1 +/* 0D7EF4 800D72F4 A7B9009A */ sh $t9, 0x9a($sp) +/* 0D7EF8 800D72F8 144E0009 */ bne $v0, $t6, .L800D7320 +/* 0D7EFC 800D72FC 27B500B1 */ addiu $s5, $sp, 0xb1 +/* 0D7F00 800D7300 87AF009A */ lh $t7, 0x9a($sp) +.L800D7304: +/* 0D7F04 800D7304 26B50001 */ addiu $s5, $s5, 1 +/* 0D7F08 800D7308 2694FFFF */ addiu $s4, $s4, -1 +/* 0D7F0C 800D730C 25F8FFFF */ addiu $t8, $t7, -1 +/* 0D7F10 800D7310 A7B8009A */ sh $t8, 0x9a($sp) +/* 0D7F14 800D7314 92B90000 */ lbu $t9, ($s5) +/* 0D7F18 800D7318 5059FFFA */ beql $v0, $t9, .L800D7304 +/* 0D7F1C 800D731C 87AF009A */ lh $t7, 0x9a($sp) +.L800D7320: +/* 0D7F20 800D7320 8FAE0048 */ lw $t6, 0x48($sp) +/* 0D7F24 800D7324 24010066 */ li $at, 102 +/* 0D7F28 800D7328 8FB800D0 */ lw $t8, 0xd0($sp) +/* 0D7F2C 800D732C 15C10004 */ bne $t6, $at, .L800D7340 +/* 0D7F30 800D7330 8FAF0048 */ lw $t7, 0x48($sp) +/* 0D7F34 800D7334 87A5009A */ lh $a1, 0x9a($sp) +/* 0D7F38 800D7338 10000009 */ b .L800D7360 +/* 0D7F3C 800D733C 24A50001 */ addiu $a1, $a1, 1 +.L800D7340: +/* 0D7F40 800D7340 24010065 */ li $at, 101 +/* 0D7F44 800D7344 11E10003 */ beq $t7, $at, .L800D7354 +/* 0D7F48 800D7348 24010045 */ li $at, 69 +/* 0D7F4C 800D734C 15E10003 */ bne $t7, $at, .L800D735C +/* 0D7F50 800D7350 00001025 */ move $v0, $zero +.L800D7354: +/* 0D7F54 800D7354 10000001 */ b .L800D735C +/* 0D7F58 800D7358 24020001 */ li $v0, 1 +.L800D735C: +/* 0D7F5C 800D735C 00402825 */ move $a1, $v0 +.L800D7360: +/* 0D7F60 800D7360 8F190024 */ lw $t9, 0x24($t8) +/* 0D7F64 800D7364 00B99821 */ addu $s3, $a1, $t9 +/* 0D7F68 800D7368 00137400 */ sll $t6, $s3, 0x10 +/* 0D7F6C 800D736C 000E9C03 */ sra $s3, $t6, 0x10 +/* 0D7F70 800D7370 0293082A */ slt $at, $s4, $s3 +/* 0D7F74 800D7374 10200004 */ beqz $at, .L800D7388 +/* 0D7F78 800D7378 00000000 */ nop +/* 0D7F7C 800D737C 00149C00 */ sll $s3, $s4, 0x10 +/* 0D7F80 800D7380 0013C403 */ sra $t8, $s3, 0x10 +/* 0D7F84 800D7384 03009825 */ move $s3, $t8 +.L800D7388: +/* 0D7F88 800D7388 1A600025 */ blez $s3, .L800D7420 +/* 0D7F8C 800D738C 0274082A */ slt $at, $s3, $s4 +/* 0D7F90 800D7390 10200007 */ beqz $at, .L800D73B0 +/* 0D7F94 800D7394 02751021 */ addu $v0, $s3, $s5 +/* 0D7F98 800D7398 90590000 */ lbu $t9, ($v0) +/* 0D7F9C 800D739C 2B210035 */ slti $at, $t9, 0x35 +/* 0D7FA0 800D73A0 54200004 */ bnezl $at, .L800D73B4 +/* 0D7FA4 800D73A4 24050030 */ li $a1, 48 +/* 0D7FA8 800D73A8 10000003 */ b .L800D73B8 +/* 0D7FAC 800D73AC 24050039 */ li $a1, 57 +.L800D73B0: +/* 0D7FB0 800D73B0 24050030 */ li $a1, 48 +.L800D73B4: +/* 0D7FB4 800D73B4 02751021 */ addu $v0, $s3, $s5 +.L800D73B8: +/* 0D7FB8 800D73B8 904EFFFF */ lbu $t6, -1($v0) +/* 0D7FBC 800D73BC 2663FFFF */ addiu $v1, $s3, -1 +/* 0D7FC0 800D73C0 00A02025 */ move $a0, $a1 +/* 0D7FC4 800D73C4 14AE0009 */ bne $a1, $t6, .L800D73EC +/* 0D7FC8 800D73C8 24010039 */ li $at, 57 +/* 0D7FCC 800D73CC 00751021 */ addu $v0, $v1, $s5 +.L800D73D0: +/* 0D7FD0 800D73D0 9059FFFF */ lbu $t9, -1($v0) +/* 0D7FD4 800D73D4 2673FFFF */ addiu $s3, $s3, -1 +/* 0D7FD8 800D73D8 00137C00 */ sll $t7, $s3, 0x10 +/* 0D7FDC 800D73DC 2463FFFF */ addiu $v1, $v1, -1 +/* 0D7FE0 800D73E0 2442FFFF */ addiu $v0, $v0, -1 +/* 0D7FE4 800D73E4 1099FFFA */ beq $a0, $t9, .L800D73D0 +/* 0D7FE8 800D73E8 000F9C03 */ sra $s3, $t7, 0x10 +.L800D73EC: +/* 0D7FEC 800D73EC 14810004 */ bne $a0, $at, .L800D7400 +/* 0D7FF0 800D73F0 02A31021 */ addu $v0, $s5, $v1 +/* 0D7FF4 800D73F4 904E0000 */ lbu $t6, ($v0) +/* 0D7FF8 800D73F8 25CF0001 */ addiu $t7, $t6, 1 +/* 0D7FFC 800D73FC A04F0000 */ sb $t7, ($v0) +.L800D7400: +/* 0D8000 800D7400 04610007 */ bgez $v1, .L800D7420 +/* 0D8004 800D7404 87AE009A */ lh $t6, 0x9a($sp) +/* 0D8008 800D7408 26730001 */ addiu $s3, $s3, 1 +/* 0D800C 800D740C 0013C400 */ sll $t8, $s3, 0x10 +/* 0D8010 800D7410 25CF0001 */ addiu $t7, $t6, 1 +/* 0D8014 800D7414 A7AF009A */ sh $t7, 0x9a($sp) +/* 0D8018 800D7418 00189C03 */ sra $s3, $t8, 0x10 +/* 0D801C 800D741C 26B5FFFF */ addiu $s5, $s5, -1 +.L800D7420: +/* 0D8020 800D7420 8FB000D0 */ lw $s0, 0xd0($sp) +/* 0D8024 800D7424 93B400D7 */ lbu $s4, 0xd7($sp) +/* 0D8028 800D7428 02A08825 */ move $s1, $s5 +/* 0D802C 800D742C 0C035A68 */ jal func_800D69A0 +/* 0D8030 800D7430 87B2009A */ lh $s2, 0x9a($sp) +/* 0D8034 800D7434 8FBF003C */ lw $ra, 0x3c($sp) +.L800D7438: +/* 0D8038 800D7438 D7B40018 */ ldc1 $f20, 0x18($sp) +/* 0D803C 800D743C 8FB00024 */ lw $s0, 0x24($sp) +/* 0D8040 800D7440 8FB10028 */ lw $s1, 0x28($sp) +/* 0D8044 800D7444 8FB2002C */ lw $s2, 0x2c($sp) +/* 0D8048 800D7448 8FB30030 */ lw $s3, 0x30($sp) +/* 0D804C 800D744C 8FB40034 */ lw $s4, 0x34($sp) +/* 0D8050 800D7450 8FB50038 */ lw $s5, 0x38($sp) +/* 0D8054 800D7454 03E00008 */ jr $ra +/* 0D8058 800D7458 27BD00D0 */ addiu $sp, $sp, 0xd0 + +/* 0D805C 800D745C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D7460.s b/asm/non_matchings/unknown_0D3020/func_800D7460.s new file mode 100644 index 00000000..6d85daa9 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D7460.s @@ -0,0 +1,6 @@ +glabel func_800D7460 +/* 0D8060 800D7460 40845800 */ mtc0 $a0, $11 +/* 0D8064 800D7464 03E00008 */ jr $ra +/* 0D8068 800D7468 00000000 */ nop + +/* 0D806C 800D746C 00000000 */ nop diff --git a/asm/non_matchings/unknown_0D3020/func_800D7470.s b/asm/non_matchings/unknown_0D3020/func_800D7470.s new file mode 100644 index 00000000..02e93997 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D7470.s @@ -0,0 +1,70 @@ +glabel func_800D7470 +/* 0D8070 800D7470 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0D8074 800D7474 AFA40030 */ sw $a0, 0x30($sp) +/* 0D8078 800D7478 AFBF0014 */ sw $ra, 0x14($sp) +/* 0D807C 800D747C AFA60038 */ sw $a2, 0x38($sp) +/* 0D8080 800D7480 AFA7003C */ sw $a3, 0x3c($sp) +/* 0D8084 800D7484 00C02025 */ move $a0, $a2 +/* 0D8088 800D7488 00E02825 */ move $a1, $a3 +/* 0D808C 800D748C 8FA70044 */ lw $a3, 0x44($sp) +/* 0D8090 800D7490 0C033ADB */ jal __ll_div +/* 0D8094 800D7494 8FA60040 */ lw $a2, 0x40($sp) +/* 0D8098 800D7498 AFA20020 */ sw $v0, 0x20($sp) +/* 0D809C 800D749C AFA30024 */ sw $v1, 0x24($sp) +/* 0D80A0 800D74A0 8FA40040 */ lw $a0, 0x40($sp) +/* 0D80A4 800D74A4 8FA50044 */ lw $a1, 0x44($sp) +/* 0D80A8 800D74A8 00403025 */ move $a2, $v0 +/* 0D80AC 800D74AC 0C033AF2 */ jal __ll_mul +/* 0D80B0 800D74B0 00603825 */ move $a3, $v1 +/* 0D80B4 800D74B4 8FAE0038 */ lw $t6, 0x38($sp) +/* 0D80B8 800D74B8 8FAF003C */ lw $t7, 0x3c($sp) +/* 0D80BC 800D74BC 8FA80020 */ lw $t0, 0x20($sp) +/* 0D80C0 800D74C0 01C2C023 */ subu $t8, $t6, $v0 +/* 0D80C4 800D74C4 01E3082B */ sltu $at, $t7, $v1 +/* 0D80C8 800D74C8 0301C023 */ subu $t8, $t8, $at +/* 0D80CC 800D74CC 01E3C823 */ subu $t9, $t7, $v1 +/* 0D80D0 800D74D0 AFB9002C */ sw $t9, 0x2c($sp) +/* 0D80D4 800D74D4 AFB80028 */ sw $t8, 0x28($sp) +/* 0D80D8 800D74D8 1D000017 */ bgtz $t0, .L800D7538 +/* 0D80DC 800D74DC 8FA90024 */ lw $t1, 0x24($sp) +/* 0D80E0 800D74E0 05000003 */ bltz $t0, .L800D74F0 +/* 0D80E4 800D74E4 00000000 */ nop +/* 0D80E8 800D74E8 10000014 */ b .L800D753C +/* 0D80EC 800D74EC 27A80020 */ addiu $t0, $sp, 0x20 +.L800D74F0: +/* 0D80F0 800D74F0 07020012 */ bltzl $t8, .L800D753C +/* 0D80F4 800D74F4 27A80020 */ addiu $t0, $sp, 0x20 +/* 0D80F8 800D74F8 1F000003 */ bgtz $t8, .L800D7508 +/* 0D80FC 800D74FC 252B0001 */ addiu $t3, $t1, 1 +/* 0D8100 800D7500 5320000E */ beql $t9, $zero, .L800D753C +/* 0D8104 800D7504 27A80020 */ addiu $t0, $sp, 0x20 +.L800D7508: +/* 0D8108 800D7508 8FAC0040 */ lw $t4, 0x40($sp) +/* 0D810C 800D750C 8FAD0044 */ lw $t5, 0x44($sp) +/* 0D8110 800D7510 2D610001 */ sltiu $at, $t3, 1 +/* 0D8114 800D7514 01015021 */ addu $t2, $t0, $at +/* 0D8118 800D7518 030C7023 */ subu $t6, $t8, $t4 +/* 0D811C 800D751C 032D082B */ sltu $at, $t9, $t5 +/* 0D8120 800D7520 01C17023 */ subu $t6, $t6, $at +/* 0D8124 800D7524 032D7823 */ subu $t7, $t9, $t5 +/* 0D8128 800D7528 AFAA0020 */ sw $t2, 0x20($sp) +/* 0D812C 800D752C AFAB0024 */ sw $t3, 0x24($sp) +/* 0D8130 800D7530 AFAF002C */ sw $t7, 0x2c($sp) +/* 0D8134 800D7534 AFAE0028 */ sw $t6, 0x28($sp) +.L800D7538: +/* 0D8138 800D7538 27A80020 */ addiu $t0, $sp, 0x20 +.L800D753C: +/* 0D813C 800D753C 8FA20030 */ lw $v0, 0x30($sp) +/* 0D8140 800D7540 8D010000 */ lw $at, ($t0) +/* 0D8144 800D7544 AC410000 */ sw $at, ($v0) +/* 0D8148 800D7548 8D0B0004 */ lw $t3, 4($t0) +/* 0D814C 800D754C AC4B0004 */ sw $t3, 4($v0) +/* 0D8150 800D7550 8D010008 */ lw $at, 8($t0) +/* 0D8154 800D7554 AC410008 */ sw $at, 8($v0) +/* 0D8158 800D7558 8D0B000C */ lw $t3, 0xc($t0) +/* 0D815C 800D755C AC4B000C */ sw $t3, 0xc($v0) +/* 0D8160 800D7560 8FBF0014 */ lw $ra, 0x14($sp) +/* 0D8164 800D7564 27BD0030 */ addiu $sp, $sp, 0x30 +/* 0D8168 800D7568 03E00008 */ jr $ra +/* 0D816C 800D756C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/func_800D7570.s b/asm/non_matchings/unknown_0D3020/func_800D7570.s new file mode 100644 index 00000000..b31d8b73 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/func_800D7570.s @@ -0,0 +1,42 @@ +glabel func_800D7570 +/* 0D8170 800D7570 00A6001A */ div $zero, $a1, $a2 +/* 0D8174 800D7574 00001012 */ mflo $v0 +/* 0D8178 800D7578 27BDFFF8 */ addiu $sp, $sp, -8 +/* 0D817C 800D757C 14C00002 */ bnez $a2, .L800D7588 +/* 0D8180 800D7580 00000000 */ nop +/* 0D8184 800D7584 0007000D */ break 7 +.L800D7588: +/* 0D8188 800D7588 2401FFFF */ li $at, -1 +/* 0D818C 800D758C 14C10004 */ bne $a2, $at, .L800D75A0 +/* 0D8190 800D7590 3C018000 */ lui $at, 0x8000 +/* 0D8194 800D7594 14A10002 */ bne $a1, $at, .L800D75A0 +/* 0D8198 800D7598 00000000 */ nop +/* 0D819C 800D759C 0006000D */ break 6 +.L800D75A0: +/* 0D81A0 800D75A0 00C20019 */ multu $a2, $v0 +/* 0D81A4 800D75A4 AFA20000 */ sw $v0, ($sp) +/* 0D81A8 800D75A8 27AF0000 */ addiu $t7, $sp, 0 +/* 0D81AC 800D75AC 00007012 */ mflo $t6 +/* 0D81B0 800D75B0 00AE1823 */ subu $v1, $a1, $t6 +/* 0D81B4 800D75B4 04410008 */ bgez $v0, .L800D75D8 +/* 0D81B8 800D75B8 AFA30004 */ sw $v1, 4($sp) +/* 0D81BC 800D75BC AFA20000 */ sw $v0, ($sp) +/* 0D81C0 800D75C0 18600005 */ blez $v1, .L800D75D8 +/* 0D81C4 800D75C4 AFA30004 */ sw $v1, 4($sp) +/* 0D81C8 800D75C8 24420001 */ addiu $v0, $v0, 1 +/* 0D81CC 800D75CC 00661823 */ subu $v1, $v1, $a2 +/* 0D81D0 800D75D0 AFA30004 */ sw $v1, 4($sp) +/* 0D81D4 800D75D4 AFA20000 */ sw $v0, ($sp) +.L800D75D8: +/* 0D81D8 800D75D8 8DE10000 */ lw $at, ($t7) +/* 0D81DC 800D75DC 00801025 */ move $v0, $a0 +/* 0D81E0 800D75E0 AC810000 */ sw $at, ($a0) +/* 0D81E4 800D75E4 8DE80004 */ lw $t0, 4($t7) +/* 0D81E8 800D75E8 27BD0008 */ addiu $sp, $sp, 8 +/* 0D81EC 800D75EC 03E00008 */ jr $ra +/* 0D81F0 800D75F0 AC880004 */ sw $t0, 4($a0) + +/* 0D81F4 800D75F0 00000000 */ nop +/* 0D81F8 800D75F8 00000000 */ nop +/* 0D81FC 800D75FC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_0D3020/sinf.s b/asm/non_matchings/unknown_0D3020/sinf.s new file mode 100644 index 00000000..4a758449 --- /dev/null +++ b/asm/non_matchings/unknown_0D3020/sinf.s @@ -0,0 +1,126 @@ +glabel sinf +/* 0D5820 800D4C20 E7AC0000 */ swc1 $f12, ($sp) +/* 0D5824 800D4C24 8FA20000 */ lw $v0, ($sp) +/* 0D5828 800D4C28 C7A40000 */ lwc1 $f4, ($sp) +/* 0D582C 800D4C2C 00021D83 */ sra $v1, $v0, 0x16 +/* 0D5830 800D4C30 306E01FF */ andi $t6, $v1, 0x1ff +/* 0D5834 800D4C34 29C100FF */ slti $at, $t6, 0xff +/* 0D5838 800D4C38 10200019 */ beqz $at, .L800D4CA0 +/* 0D583C 800D4C3C 01C01825 */ move $v1, $t6 +/* 0D5840 800D4C40 29C100E6 */ slti $at, $t6, 0xe6 +/* 0D5844 800D4C44 14200014 */ bnez $at, .L800D4C98 +/* 0D5848 800D4C48 460020A1 */ cvt.d.s $f2, $f4 +/* 0D584C 800D4C4C 46221302 */ mul.d $f12, $f2, $f2 +/* 0D5850 800D4C50 3C03800F */ lui $v1, %hi(D_800E9810) # $v1, 0x800f +/* 0D5854 800D4C54 24639810 */ addiu $v1, %lo(D_800E9810) # addiu $v1, $v1, -0x67f0 +/* 0D5858 800D4C58 D4660020 */ ldc1 $f6, 0x20($v1) +/* 0D585C 800D4C5C D46A0018 */ ldc1 $f10, 0x18($v1) +/* 0D5860 800D4C60 D4640010 */ ldc1 $f4, 0x10($v1) +/* 0D5864 800D4C64 462C3202 */ mul.d $f8, $f6, $f12 +/* 0D5868 800D4C68 462A4400 */ add.d $f16, $f8, $f10 +/* 0D586C 800D4C6C D46A0008 */ ldc1 $f10, 8($v1) +/* 0D5870 800D4C70 462C8482 */ mul.d $f18, $f16, $f12 +/* 0D5874 800D4C74 46249180 */ add.d $f6, $f18, $f4 +/* 0D5878 800D4C78 462C3202 */ mul.d $f8, $f6, $f12 +/* 0D587C 800D4C7C 46285380 */ add.d $f14, $f10, $f8 +/* 0D5880 800D4C80 462C1402 */ mul.d $f16, $f2, $f12 +/* 0D5884 800D4C84 00000000 */ nop +/* 0D5888 800D4C88 462E8482 */ mul.d $f18, $f16, $f14 +/* 0D588C 800D4C8C 46229100 */ add.d $f4, $f18, $f2 +/* 0D5890 800D4C90 03E00008 */ jr $ra +/* 0D5894 800D4C94 46202020 */ cvt.s.d $f0, $f4 + +.L800D4C98: +/* 0D5898 800D4C98 03E00008 */ jr $ra +/* 0D589C 800D4C9C C7A00000 */ lwc1 $f0, ($sp) + +.L800D4CA0: +/* 0D58A0 800D4CA0 28610136 */ slti $at, $v1, 0x136 +/* 0D58A4 800D4CA4 10200044 */ beqz $at, .L800D4DB8 +/* 0D58A8 800D4CA8 C7A40000 */ lwc1 $f4, ($sp) +/* 0D58AC 800D4CAC C7A60000 */ lwc1 $f6, ($sp) +/* 0D58B0 800D4CB0 3C01800F */ li $at, 0x800F0000 # -0.000000 +/* 0D58B4 800D4CB4 D42A9838 */ ldc1 $f10, -0x67c8($at) +/* 0D58B8 800D4CB8 460030A1 */ cvt.d.s $f2, $f6 +/* 0D58BC 800D4CBC 44804800 */ mtc1 $zero, $f9 +/* 0D58C0 800D4CC0 462A1002 */ mul.d $f0, $f2, $f10 +/* 0D58C4 800D4CC4 44804000 */ mtc1 $zero, $f8 +/* 0D58C8 800D4CC8 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 0D58CC 800D4CCC 4620403E */ c.le.d $f8, $f0 +/* 0D58D0 800D4CD0 00000000 */ nop +/* 0D58D4 800D4CD4 4502000B */ bc1fl .L800D4D04 +/* 0D58D8 800D4CD8 44813800 */ mtc1 $at, $f7 +/* 0D58DC 800D4CDC 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 0D58E0 800D4CE0 44818800 */ mtc1 $at, $f17 +/* 0D58E4 800D4CE4 44808000 */ mtc1 $zero, $f16 +/* 0D58E8 800D4CE8 00000000 */ nop +/* 0D58EC 800D4CEC 46300480 */ add.d $f18, $f0, $f16 +/* 0D58F0 800D4CF0 4620910D */ trunc.w.d $f4, $f18 +/* 0D58F4 800D4CF4 44022000 */ mfc1 $v0, $f4 +/* 0D58F8 800D4CF8 10000009 */ b .L800D4D20 +/* 0D58FC 800D4CFC 44828000 */ mtc1 $v0, $f16 +/* 0D5900 800D4D00 44813800 */ mtc1 $at, $f7 +.L800D4D04: +/* 0D5904 800D4D04 44803000 */ mtc1 $zero, $f6 +/* 0D5908 800D4D08 00000000 */ nop +/* 0D590C 800D4D0C 46260281 */ sub.d $f10, $f0, $f6 +/* 0D5910 800D4D10 4620520D */ trunc.w.d $f8, $f10 +/* 0D5914 800D4D14 44024000 */ mfc1 $v0, $f8 +/* 0D5918 800D4D18 00000000 */ nop +/* 0D591C 800D4D1C 44828000 */ mtc1 $v0, $f16 +.L800D4D20: +/* 0D5920 800D4D20 3C01800F */ lui $at, 0x800f +/* 0D5924 800D4D24 D4329840 */ ldc1 $f18, -0x67c0($at) +/* 0D5928 800D4D28 46808021 */ cvt.d.w $f0, $f16 +/* 0D592C 800D4D2C 3C01800F */ lui $at, 0x800f +/* 0D5930 800D4D30 D4269848 */ ldc1 $f6, -0x67b8($at) +/* 0D5934 800D4D34 3C03800F */ lui $v1, %hi(D_800E9810) # $v1, 0x800f +/* 0D5938 800D4D38 24639810 */ addiu $v1, %lo(D_800E9810) # addiu $v1, $v1, -0x67f0 +/* 0D593C 800D4D3C 46320102 */ mul.d $f4, $f0, $f18 +/* 0D5940 800D4D40 D4680020 */ ldc1 $f8, 0x20($v1) +/* 0D5944 800D4D44 D4720018 */ ldc1 $f18, 0x18($v1) +/* 0D5948 800D4D48 30590001 */ andi $t9, $v0, 1 +/* 0D594C 800D4D4C 46260282 */ mul.d $f10, $f0, $f6 +/* 0D5950 800D4D50 46241081 */ sub.d $f2, $f2, $f4 +/* 0D5954 800D4D54 462A1081 */ sub.d $f2, $f2, $f10 +/* 0D5958 800D4D58 D46A0010 */ ldc1 $f10, 0x10($v1) +/* 0D595C 800D4D5C 46221302 */ mul.d $f12, $f2, $f2 +/* 0D5960 800D4D60 00000000 */ nop +/* 0D5964 800D4D64 462C4402 */ mul.d $f16, $f8, $f12 +/* 0D5968 800D4D68 46328100 */ add.d $f4, $f16, $f18 +/* 0D596C 800D4D6C D4720008 */ ldc1 $f18, 8($v1) +/* 0D5970 800D4D70 462C2182 */ mul.d $f6, $f4, $f12 +/* 0D5974 800D4D74 462A3200 */ add.d $f8, $f6, $f10 +/* 0D5978 800D4D78 462C4402 */ mul.d $f16, $f8, $f12 +/* 0D597C 800D4D7C 17200007 */ bnez $t9, .L800D4D9C +/* 0D5980 800D4D80 46309380 */ add.d $f14, $f18, $f16 +/* 0D5984 800D4D84 462C1102 */ mul.d $f4, $f2, $f12 +/* 0D5988 800D4D88 00000000 */ nop +/* 0D598C 800D4D8C 462E2182 */ mul.d $f6, $f4, $f14 +/* 0D5990 800D4D90 46223280 */ add.d $f10, $f6, $f2 +/* 0D5994 800D4D94 03E00008 */ jr $ra +/* 0D5998 800D4D98 46205020 */ cvt.s.d $f0, $f10 + +.L800D4D9C: +/* 0D599C 800D4D9C 462C1202 */ mul.d $f8, $f2, $f12 +/* 0D59A0 800D4DA0 00000000 */ nop +/* 0D59A4 800D4DA4 462E4482 */ mul.d $f18, $f8, $f14 +/* 0D59A8 800D4DA8 46229400 */ add.d $f16, $f18, $f2 +/* 0D59AC 800D4DAC 46208020 */ cvt.s.d $f0, $f16 +/* 0D59B0 800D4DB0 03E00008 */ jr $ra +/* 0D59B4 800D4DB4 46000007 */ neg.s $f0, $f0 + +.L800D4DB8: +/* 0D59B8 800D4DB8 46042032 */ c.eq.s $f4, $f4 +/* 0D59BC 800D4DBC 3C01800F */ lui $at, 0x800f +/* 0D59C0 800D4DC0 45010004 */ bc1t .L800D4DD4 +/* 0D59C4 800D4DC4 00000000 */ nop +/* 0D59C8 800D4DC8 3C01800F */ lui $at, 0x800f +/* 0D59CC 800D4DCC 03E00008 */ jr $ra +/* 0D59D0 800D4DD0 C42098C0 */ lwc1 $f0, -0x6740($at) + +.L800D4DD4: +/* 0D59D4 800D4DD4 C4209850 */ lwc1 $f0, -0x67b0($at) +/* 0D59D8 800D4DD8 03E00008 */ jr $ra +/* 0D59DC 800D4DDC 00000000 */ nop + diff --git a/asm/unknown_032760.s b/asm/unknown_032760.s deleted file mode 100755 index 4c73ad15..00000000 --- a/asm/unknown_032760.s +++ /dev/null @@ -1,18877 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_80031B60 -/* 032760 80031B60 3C04800E */ lui $a0, %hi(D_800DC950) # $a0, 0x800e -/* 032764 80031B64 8C84C950 */ lw $a0, %lo(D_800DC950)($a0) -/* 032768 80031B68 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 03276C 80031B6C 1080000B */ beqz $a0, .L80031B9C -/* 032770 80031B70 AFBF0014 */ sw $ra, 0x14($sp) -/* 032774 80031B74 0C01C450 */ jal func_80071140 -/* 032778 80031B78 00000000 */ nop -/* 03277C 80031B7C 3C01800E */ lui $at, %hi(D_800DC950) # $at, 0x800e -/* 032780 80031B80 AC20C950 */ sw $zero, %lo(D_800DC950)($at) -/* 032784 80031B84 3C01800E */ lui $at, %hi(D_800DC954) # $at, 0x800e -/* 032788 80031B88 AC20C954 */ sw $zero, %lo(D_800DC954)($at) -/* 03278C 80031B8C 3C01800E */ lui $at, %hi(D_800DC960) # $at, 0x800e -/* 032790 80031B90 AC20C960 */ sw $zero, %lo(D_800DC960)($at) -/* 032794 80031B94 3C01800E */ lui $at, %hi(D_800DC964) # $at, 0x800e -/* 032798 80031B98 AC20C964 */ sw $zero, %lo(D_800DC964)($at) -.L80031B9C: -/* 03279C 80031B9C 3C01800E */ lui $at, %hi(D_800DC95C) # $at, 0x800e -/* 0327A0 80031BA0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0327A4 80031BA4 AC20C95C */ sw $zero, %lo(D_800DC95C)($at) -/* 0327A8 80031BA8 3C01800E */ lui $at, %hi(D_800DC958) # $at, 0x800e -/* 0327AC 80031BAC AC20C958 */ sw $zero, %lo(D_800DC958)($at) -/* 0327B0 80031BB0 03E00008 */ jr $ra -/* 0327B4 80031BB4 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_80031BB8 -/* 0327B8 80031BB8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0327BC 80031BBC AFBF0014 */ sw $ra, 0x14($sp) -/* 0327C0 80031BC0 0C00C6D8 */ jal func_80031B60 -/* 0327C4 80031BC4 AFA40018 */ sw $a0, 0x18($sp) -/* 0327C8 80031BC8 8FAE0018 */ lw $t6, 0x18($sp) -/* 0327CC 80031BCC 3C06800E */ lui $a2, %hi(D_800DC958) # $a2, 0x800e -/* 0327D0 80031BD0 000E7880 */ sll $t7, $t6, 2 -/* 0327D4 80031BD4 01EE7823 */ subu $t7, $t7, $t6 -/* 0327D8 80031BD8 000F7880 */ sll $t7, $t7, 2 -/* 0327DC 80031BDC 01EE7823 */ subu $t7, $t7, $t6 -/* 0327E0 80031BE0 000F7880 */ sll $t7, $t7, 2 -/* 0327E4 80031BE4 24C6C958 */ addiu $a2, %lo(D_800DC958) # addiu $a2, $a2, -0x36a8 -/* 0327E8 80031BE8 3C05FF00 */ lui $a1, (0xFF00FFFF >> 16) # lui $a1, 0xff00 -/* 0327EC 80031BEC 01EE7823 */ subu $t7, $t7, $t6 -/* 0327F0 80031BF0 000F2080 */ sll $a0, $t7, 2 -/* 0327F4 80031BF4 34A5FFFF */ ori $a1, (0xFF00FFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 0327F8 80031BF8 0C01C327 */ jal func_80070C9C -/* 0327FC 80031BFC ACCE0000 */ sw $t6, ($a2) -/* 032800 80031C00 3C06800E */ lui $a2, %hi(D_800DC958) # $a2, 0x800e -/* 032804 80031C04 24C6C958 */ addiu $a2, %lo(D_800DC958) # addiu $a2, $a2, -0x36a8 -/* 032808 80031C08 8CC80000 */ lw $t0, ($a2) -/* 03280C 80031C0C 3C05800E */ lui $a1, %hi(D_800DC954) # $a1, 0x800e -/* 032810 80031C10 00085900 */ sll $t3, $t0, 4 -/* 032814 80031C14 0008C080 */ sll $t8, $t0, 2 -/* 032818 80031C18 01685821 */ addu $t3, $t3, $t0 -/* 03281C 80031C1C 0058C821 */ addu $t9, $v0, $t8 -/* 032820 80031C20 000B58C0 */ sll $t3, $t3, 3 -/* 032824 80031C24 00087080 */ sll $t6, $t0, 2 -/* 032828 80031C28 3C07800E */ lui $a3, %hi(D_800DC950) # $a3, 0x800e -/* 03282C 80031C2C 3C09800E */ lui $t1, %hi(D_800DC960) # $t1, 0x800e -/* 032830 80031C30 032B6021 */ addu $t4, $t9, $t3 -/* 032834 80031C34 01C87021 */ addu $t6, $t6, $t0 -/* 032838 80031C38 2529C960 */ addiu $t1, %lo(D_800DC960) # addiu $t1, $t1, -0x36a0 -/* 03283C 80031C3C 24E7C950 */ addiu $a3, %lo(D_800DC950) # addiu $a3, $a3, -0x36b0 -/* 032840 80031C40 24A5C954 */ addiu $a1, %lo(D_800DC954) # addiu $a1, $a1, -0x36ac -/* 032844 80031C44 000E7080 */ sll $t6, $t6, 2 -/* 032848 80031C48 ACE20000 */ sw $v0, ($a3) -/* 03284C 80031C4C ACB90000 */ sw $t9, ($a1) -/* 032850 80031C50 AD2C0000 */ sw $t4, ($t1) -/* 032854 80031C54 018E7821 */ addu $t7, $t4, $t6 -/* 032858 80031C58 3C01800E */ lui $at, %hi(D_800DC964) # $at, 0x800e -/* 03285C 80031C5C AC2FC964 */ sw $t7, %lo(D_800DC964)($at) -/* 032860 80031C60 1900000E */ blez $t0, .L80031C9C -/* 032864 80031C64 00001825 */ move $v1, $zero -/* 032868 80031C68 00001025 */ move $v0, $zero -/* 03286C 80031C6C 00002025 */ move $a0, $zero -.L80031C70: -/* 032870 80031C70 8CB80000 */ lw $t8, ($a1) -/* 032874 80031C74 8CEA0000 */ lw $t2, ($a3) -/* 032878 80031C78 0098C821 */ addu $t9, $a0, $t8 -/* 03287C 80031C7C 01425821 */ addu $t3, $t2, $v0 -/* 032880 80031C80 AD790000 */ sw $t9, ($t3) -/* 032884 80031C84 8CCC0000 */ lw $t4, ($a2) -/* 032888 80031C88 24630001 */ addiu $v1, $v1, 1 -/* 03288C 80031C8C 006C082A */ slt $at, $v1, $t4 -/* 032890 80031C90 24420004 */ addiu $v0, $v0, 4 -/* 032894 80031C94 1420FFF6 */ bnez $at, .L80031C70 -/* 032898 80031C98 24840088 */ addiu $a0, $a0, 0x88 -.L80031C9C: -/* 03289C 80031C9C 8FBF0014 */ lw $ra, 0x14($sp) -/* 0328A0 80031CA0 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0328A4 80031CA4 03E00008 */ jr $ra -/* 0328A8 80031CA8 00000000 */ nop - -glabel func_80031CAC -/* 0328AC 80031CAC 3C03800E */ lui $v1, %hi(D_800DC95C) # $v1, 0x800e -/* 0328B0 80031CB0 2463C95C */ addiu $v1, %lo(D_800DC95C) # addiu $v1, $v1, -0x36a4 -/* 0328B4 80031CB4 3C0E800E */ lui $t6, %hi(D_800DC958) # $t6, 0x800e -/* 0328B8 80031CB8 8DCEC958 */ lw $t6, %lo(D_800DC958)($t6) -/* 0328BC 80031CBC 8C620000 */ lw $v0, ($v1) -/* 0328C0 80031CC0 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0328C4 80031CC4 004E082A */ slt $at, $v0, $t6 -/* 0328C8 80031CC8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0328CC 80031CCC 102000AA */ beqz $at, .L80031F78 -/* 0328D0 80031CD0 00003025 */ move $a2, $zero -/* 0328D4 80031CD4 3C0F800E */ lui $t7, %hi(D_800DC950) # $t7, 0x800e -/* 0328D8 80031CD8 8DEFC950 */ lw $t7, %lo(D_800DC950)($t7) -/* 0328DC 80031CDC 0002C080 */ sll $t8, $v0, 2 -/* 0328E0 80031CE0 01F8C821 */ addu $t9, $t7, $t8 -/* 0328E4 80031CE4 8F260000 */ lw $a2, ($t9) -/* 0328E8 80031CE8 24490001 */ addiu $t1, $v0, 1 -/* 0328EC 80031CEC AC690000 */ sw $t1, ($v1) -/* 0328F0 80031CF0 90AA0008 */ lbu $t2, 8($a1) -/* 0328F4 80031CF4 00000000 */ nop -/* 0328F8 80031CF8 314B00F0 */ andi $t3, $t2, 0xf0 -/* 0328FC 80031CFC 000B6103 */ sra $t4, $t3, 4 -/* 032900 80031D00 A0CC0000 */ sb $t4, ($a2) -/* 032904 80031D04 90AD0008 */ lbu $t5, 8($a1) -/* 032908 80031D08 240B0001 */ li $t3, 1 -/* 03290C 80031D0C 31AE000F */ andi $t6, $t5, 0xf -/* 032910 80031D10 A0CE0003 */ sb $t6, 3($a2) -/* 032914 80031D14 90AF0009 */ lbu $t7, 9($a1) -/* 032918 80031D18 00000000 */ nop -/* 03291C 80031D1C 31F800E0 */ andi $t8, $t7, 0xe0 -/* 032920 80031D20 0018C943 */ sra $t9, $t8, 5 -/* 032924 80031D24 A0D90001 */ sb $t9, 1($a2) -/* 032928 80031D28 90A90009 */ lbu $t1, 9($a1) -/* 03292C 80031D2C A0CB0004 */ sb $t3, 4($a2) -/* 032930 80031D30 312A001F */ andi $t2, $t1, 0x1f -/* 032934 80031D34 A0CA0002 */ sb $t2, 2($a2) -/* 032938 80031D38 ACC0000C */ sw $zero, 0xc($a2) -/* 03293C 80031D3C A4C00006 */ sh $zero, 6($a2) -/* 032940 80031D40 A4C00008 */ sh $zero, 8($a2) -/* 032944 80031D44 1080000A */ beqz $a0, .L80031D70 -/* 032948 80031D48 A4C0000A */ sh $zero, 0xa($a2) -/* 03294C 80031D4C C484000C */ lwc1 $f4, 0xc($a0) -/* 032950 80031D50 00000000 */ nop -/* 032954 80031D54 E4C40010 */ swc1 $f4, 0x10($a2) -/* 032958 80031D58 C4860010 */ lwc1 $f6, 0x10($a0) -/* 03295C 80031D5C 00000000 */ nop -/* 032960 80031D60 E4C60014 */ swc1 $f6, 0x14($a2) -/* 032964 80031D64 C4880014 */ lwc1 $f8, 0x14($a0) -/* 032968 80031D68 10000013 */ b .L80031DB8 -/* 03296C 80031D6C E4C80018 */ swc1 $f8, 0x18($a2) -.L80031D70: -/* 032970 80031D70 84AC0002 */ lh $t4, 2($a1) -/* 032974 80031D74 00000000 */ nop -/* 032978 80031D78 448C5000 */ mtc1 $t4, $f10 -/* 03297C 80031D7C 00000000 */ nop -/* 032980 80031D80 46805420 */ cvt.s.w $f16, $f10 -/* 032984 80031D84 E4D00010 */ swc1 $f16, 0x10($a2) -/* 032988 80031D88 84AD0004 */ lh $t5, 4($a1) -/* 03298C 80031D8C 00000000 */ nop -/* 032990 80031D90 448D9000 */ mtc1 $t5, $f18 -/* 032994 80031D94 00000000 */ nop -/* 032998 80031D98 46809120 */ cvt.s.w $f4, $f18 -/* 03299C 80031D9C E4C40014 */ swc1 $f4, 0x14($a2) -/* 0329A0 80031DA0 84AE0006 */ lh $t6, 6($a1) -/* 0329A4 80031DA4 00000000 */ nop -/* 0329A8 80031DA8 448E3000 */ mtc1 $t6, $f6 -/* 0329AC 80031DAC 00000000 */ nop -/* 0329B0 80031DB0 46803220 */ cvt.s.w $f8, $f6 -/* 0329B4 80031DB4 E4C80018 */ swc1 $f8, 0x18($a2) -.L80031DB8: -/* 0329B8 80031DB8 90AF000A */ lbu $t7, 0xa($a1) -/* 0329BC 80031DBC ACC0002C */ sw $zero, 0x2c($a2) -/* 0329C0 80031DC0 000FC400 */ sll $t8, $t7, 0x10 -/* 0329C4 80031DC4 ACD8001C */ sw $t8, 0x1c($a2) -/* 0329C8 80031DC8 A4C0003C */ sh $zero, 0x3c($a2) -/* 0329CC 80031DCC 90B9000B */ lbu $t9, 0xb($a1) -/* 0329D0 80031DD0 ACC00030 */ sw $zero, 0x30($a2) -/* 0329D4 80031DD4 00194C00 */ sll $t1, $t9, 0x10 -/* 0329D8 80031DD8 ACC90020 */ sw $t1, 0x20($a2) -/* 0329DC 80031DDC A4C0003E */ sh $zero, 0x3e($a2) -/* 0329E0 80031DE0 90AA000C */ lbu $t2, 0xc($a1) -/* 0329E4 80031DE4 ACC00034 */ sw $zero, 0x34($a2) -/* 0329E8 80031DE8 000A5C00 */ sll $t3, $t2, 0x10 -/* 0329EC 80031DEC ACCB0024 */ sw $t3, 0x24($a2) -/* 0329F0 80031DF0 A4C00040 */ sh $zero, 0x40($a2) -/* 0329F4 80031DF4 90AC000D */ lbu $t4, 0xd($a1) -/* 0329F8 80031DF8 ACC00038 */ sw $zero, 0x38($a2) -/* 0329FC 80031DFC 000C6C00 */ sll $t5, $t4, 0x10 -/* 032A00 80031E00 ACCD0028 */ sw $t5, 0x28($a2) -/* 032A04 80031E04 A4C00042 */ sh $zero, 0x42($a2) -/* 032A08 80031E08 ACC00044 */ sw $zero, 0x44($a2) -/* 032A0C 80031E0C 90AE001C */ lbu $t6, 0x1c($a1) -/* 032A10 80031E10 00000000 */ nop -/* 032A14 80031E14 29C10007 */ slti $at, $t6, 7 -/* 032A18 80031E18 10200020 */ beqz $at, .L80031E9C -/* 032A1C 80031E1C 00000000 */ nop -/* 032A20 80031E20 AFA50024 */ sw $a1, 0x24($sp) -/* 032A24 80031E24 0C01AF6C */ jal func_8006BDB0 -/* 032A28 80031E28 AFA60018 */ sw $a2, 0x18($sp) -/* 032A2C 80031E2C 8FA50024 */ lw $a1, 0x24($sp) -/* 032A30 80031E30 8FA60018 */ lw $a2, 0x18($sp) -/* 032A34 80031E34 90AF001C */ lbu $t7, 0x1c($a1) -/* 032A38 80031E38 2401FFFF */ li $at, -1 -/* 032A3C 80031E3C 000FC080 */ sll $t8, $t7, 2 -/* 032A40 80031E40 0058C821 */ addu $t9, $v0, $t8 -/* 032A44 80031E44 8F280074 */ lw $t0, 0x74($t9) -/* 032A48 80031E48 00001825 */ move $v1, $zero -/* 032A4C 80031E4C 11010013 */ beq $t0, $at, .L80031E9C -/* 032A50 80031E50 250A0014 */ addiu $t2, $t0, 0x14 -/* 032A54 80031E54 ACC80044 */ sw $t0, 0x44($a2) -/* 032A58 80031E58 8D090000 */ lw $t1, ($t0) -/* 032A5C 80031E5C A4C0004A */ sh $zero, 0x4a($a2) -/* 032A60 80031E60 3124FFFF */ andi $a0, $t1, 0xffff -/* 032A64 80031E64 A4C0004C */ sh $zero, 0x4c($a2) -/* 032A68 80031E68 A4C0004E */ sh $zero, 0x4e($a2) -/* 032A6C 80031E6C ACCA0044 */ sw $t2, 0x44($a2) -/* 032A70 80031E70 1880000A */ blez $a0, .L80031E9C -/* 032A74 80031E74 A4C90048 */ sh $t1, 0x48($a2) -/* 032A78 80031E78 01401025 */ move $v0, $t2 -.L80031E7C: -/* 032A7C 80031E7C 94CB004E */ lhu $t3, 0x4e($a2) -/* 032A80 80031E80 8C4C0004 */ lw $t4, 4($v0) -/* 032A84 80031E84 24630001 */ addiu $v1, $v1, 1 -/* 032A88 80031E88 0064082A */ slt $at, $v1, $a0 -/* 032A8C 80031E8C 016C6821 */ addu $t5, $t3, $t4 -/* 032A90 80031E90 A4CD004E */ sh $t5, 0x4e($a2) -/* 032A94 80031E94 1420FFF9 */ bnez $at, .L80031E7C -/* 032A98 80031E98 24420008 */ addiu $v0, $v0, 8 -.L80031E9C: -/* 032A9C 80031E9C 84AE000E */ lh $t6, 0xe($a1) -/* 032AA0 80031EA0 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 032AA4 80031EA4 448E5000 */ mtc1 $t6, $f10 -/* 032AA8 80031EA8 340BFFFF */ li $t3, 65535 -/* 032AAC 80031EAC 46805420 */ cvt.s.w $f16, $f10 -/* 032AB0 80031EB0 00C02025 */ move $a0, $a2 -/* 032AB4 80031EB4 E4D0005C */ swc1 $f16, 0x5c($a2) -/* 032AB8 80031EB8 84AF0010 */ lh $t7, 0x10($a1) -/* 032ABC 80031EBC C4C0005C */ lwc1 $f0, 0x5c($a2) -/* 032AC0 80031EC0 448F9000 */ mtc1 $t7, $f18 -/* 032AC4 80031EC4 44818000 */ mtc1 $at, $f16 -/* 032AC8 80031EC8 46809120 */ cvt.s.w $f4, $f18 -/* 032ACC 80031ECC 340FFFFF */ li $t7, 65535 -/* 032AD0 80031ED0 46008483 */ div.s $f18, $f16, $f0 -/* 032AD4 80031ED4 E4C40060 */ swc1 $f4, 0x60($a2) -/* 032AD8 80031ED8 84B80012 */ lh $t8, 0x12($a1) -/* 032ADC 80031EDC 46000282 */ mul.s $f10, $f0, $f0 -/* 032AE0 80031EE0 44983000 */ mtc1 $t8, $f6 -/* 032AE4 80031EE4 24180001 */ li $t8, 1 -/* 032AE8 80031EE8 E4CA0068 */ swc1 $f10, 0x68($a2) -/* 032AEC 80031EEC 46803220 */ cvt.s.w $f8, $f6 -/* 032AF0 80031EF0 E4D2006C */ swc1 $f18, 0x6c($a2) -/* 032AF4 80031EF4 E4C80064 */ swc1 $f8, 0x64($a2) -/* 032AF8 80031EF8 84B90014 */ lh $t9, 0x14($a1) -/* 032AFC 80031EFC 00000000 */ nop -/* 032B00 80031F00 A4D90070 */ sh $t9, 0x70($a2) -/* 032B04 80031F04 84A90018 */ lh $t1, 0x18($a1) -/* 032B08 80031F08 00000000 */ nop -/* 032B0C 80031F0C A4C90074 */ sh $t1, 0x74($a2) -/* 032B10 80031F10 84AA0018 */ lh $t2, 0x18($a1) -/* 032B14 80031F14 00000000 */ nop -/* 032B18 80031F18 11400003 */ beqz $t2, .L80031F28 -/* 032B1C 80031F1C 00000000 */ nop -/* 032B20 80031F20 10000002 */ b .L80031F2C -/* 032B24 80031F24 A4CB0078 */ sh $t3, 0x78($a2) -.L80031F28: -/* 032B28 80031F28 A4C00078 */ sh $zero, 0x78($a2) -.L80031F2C: -/* 032B2C 80031F2C 84AC0016 */ lh $t4, 0x16($a1) -/* 032B30 80031F30 00000000 */ nop -/* 032B34 80031F34 A4CC0072 */ sh $t4, 0x72($a2) -/* 032B38 80031F38 84AD001A */ lh $t5, 0x1a($a1) -/* 032B3C 80031F3C 00000000 */ nop -/* 032B40 80031F40 A4CD0076 */ sh $t5, 0x76($a2) -/* 032B44 80031F44 84AE001A */ lh $t6, 0x1a($a1) -/* 032B48 80031F48 00002825 */ move $a1, $zero -/* 032B4C 80031F4C 11C00004 */ beqz $t6, .L80031F60 -/* 032B50 80031F50 00000000 */ nop -/* 032B54 80031F54 A4CF007A */ sh $t7, 0x7a($a2) -/* 032B58 80031F58 10000002 */ b .L80031F64 -/* 032B5C 80031F5C A4C0007A */ sh $zero, 0x7a($a2) -.L80031F60: -/* 032B60 80031F60 A4C0007A */ sh $zero, 0x7a($a2) -.L80031F64: -/* 032B64 80031F64 A0D80005 */ sb $t8, 5($a2) -/* 032B68 80031F68 0C00C909 */ jal func_80032424 -/* 032B6C 80031F6C AFA60018 */ sw $a2, 0x18($sp) -/* 032B70 80031F70 8FA60018 */ lw $a2, 0x18($sp) -/* 032B74 80031F74 00000000 */ nop -.L80031F78: -/* 032B78 80031F78 8FBF0014 */ lw $ra, 0x14($sp) -/* 032B7C 80031F7C 27BD0020 */ addiu $sp, $sp, 0x20 -/* 032B80 80031F80 03E00008 */ jr $ra -/* 032B84 80031F84 00C01025 */ move $v0, $a2 - -glabel func_80031F88 -/* 032B88 80031F88 3C03800E */ lui $v1, %hi(D_800DC95C) # $v1, 0x800e -/* 032B8C 80031F8C 2463C95C */ addiu $v1, %lo(D_800DC95C) # addiu $v1, $v1, -0x36a4 -/* 032B90 80031F90 3C0E800E */ lui $t6, %hi(D_800DC958) # $t6, 0x800e -/* 032B94 80031F94 8DCEC958 */ lw $t6, %lo(D_800DC958)($t6) -/* 032B98 80031F98 8C620000 */ lw $v0, ($v1) -/* 032B9C 80031F9C 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 032BA0 80031FA0 004E082A */ slt $at, $v0, $t6 -/* 032BA4 80031FA4 AFBF0014 */ sw $ra, 0x14($sp) -/* 032BA8 80031FA8 10200095 */ beqz $at, .L80032200 -/* 032BAC 80031FAC 00003025 */ move $a2, $zero -/* 032BB0 80031FB0 3C0F800E */ lui $t7, %hi(D_800DC950) # $t7, 0x800e -/* 032BB4 80031FB4 8DEFC950 */ lw $t7, %lo(D_800DC950)($t7) -/* 032BB8 80031FB8 0002C080 */ sll $t8, $v0, 2 -/* 032BBC 80031FBC 01F8C821 */ addu $t9, $t7, $t8 -/* 032BC0 80031FC0 8F260000 */ lw $a2, ($t9) -/* 032BC4 80031FC4 24480001 */ addiu $t0, $v0, 1 -/* 032BC8 80031FC8 AC680000 */ sw $t0, ($v1) -/* 032BCC 80031FCC 8CA90008 */ lw $t1, 8($a1) -/* 032BD0 80031FD0 3401FFFF */ li $at, 65535 -/* 032BD4 80031FD4 00095702 */ srl $t2, $t1, 0x1c -/* 032BD8 80031FD8 A0CA0000 */ sb $t2, ($a2) -/* 032BDC 80031FDC 90AB0009 */ lbu $t3, 9($a1) -/* 032BE0 80031FE0 00000000 */ nop -/* 032BE4 80031FE4 A0CB0001 */ sb $t3, 1($a2) -/* 032BE8 80031FE8 90AC000B */ lbu $t4, 0xb($a1) -/* 032BEC 80031FEC 00000000 */ nop -/* 032BF0 80031FF0 A0CC0002 */ sb $t4, 2($a2) -/* 032BF4 80031FF4 90AD000A */ lbu $t5, 0xa($a1) -/* 032BF8 80031FF8 00000000 */ nop -/* 032BFC 80031FFC A0CD0003 */ sb $t5, 3($a2) -/* 032C00 80032000 90AE0008 */ lbu $t6, 8($a1) -/* 032C04 80032004 ACC4000C */ sw $a0, 0xc($a2) -/* 032C08 80032008 31CF000F */ andi $t7, $t6, 0xf -/* 032C0C 8003200C A0CF0004 */ sb $t7, 4($a2) -/* 032C10 80032010 84B8000C */ lh $t8, 0xc($a1) -/* 032C14 80032014 00000000 */ nop -/* 032C18 80032018 A4D80006 */ sh $t8, 6($a2) -/* 032C1C 8003201C 84B9000E */ lh $t9, 0xe($a1) -/* 032C20 80032020 84C90006 */ lh $t1, 6($a2) -/* 032C24 80032024 A4D90008 */ sh $t9, 8($a2) -/* 032C28 80032028 84A80010 */ lh $t0, 0x10($a1) -/* 032C2C 8003202C 84CA0008 */ lh $t2, 8($a2) -/* 032C30 80032030 A4C8000A */ sh $t0, 0xa($a2) -/* 032C34 80032034 84CB000A */ lh $t3, 0xa($a2) -/* 032C38 80032038 44892000 */ mtc1 $t1, $f4 -/* 032C3C 8003203C 448A4000 */ mtc1 $t2, $f8 -/* 032C40 80032040 448B8000 */ mtc1 $t3, $f16 -/* 032C44 80032044 468021A0 */ cvt.s.w $f6, $f4 -/* 032C48 80032048 468042A0 */ cvt.s.w $f10, $f8 -/* 032C4C 8003204C E4C60010 */ swc1 $f6, 0x10($a2) -/* 032C50 80032050 468084A0 */ cvt.s.w $f18, $f16 -/* 032C54 80032054 E4CA0014 */ swc1 $f10, 0x14($a2) -/* 032C58 80032058 E4D20018 */ swc1 $f18, 0x18($a2) -/* 032C5C 8003205C 90AC0002 */ lbu $t4, 2($a1) -/* 032C60 80032060 ACC0002C */ sw $zero, 0x2c($a2) -/* 032C64 80032064 000C6C00 */ sll $t5, $t4, 0x10 -/* 032C68 80032068 ACCD001C */ sw $t5, 0x1c($a2) -/* 032C6C 8003206C A4C0003C */ sh $zero, 0x3c($a2) -/* 032C70 80032070 90AE0003 */ lbu $t6, 3($a1) -/* 032C74 80032074 ACC00030 */ sw $zero, 0x30($a2) -/* 032C78 80032078 000E7C00 */ sll $t7, $t6, 0x10 -/* 032C7C 8003207C ACCF0020 */ sw $t7, 0x20($a2) -/* 032C80 80032080 A4C0003E */ sh $zero, 0x3e($a2) -/* 032C84 80032084 90B80004 */ lbu $t8, 4($a1) -/* 032C88 80032088 ACC00034 */ sw $zero, 0x34($a2) -/* 032C8C 8003208C 0018CC00 */ sll $t9, $t8, 0x10 -/* 032C90 80032090 ACD90024 */ sw $t9, 0x24($a2) -/* 032C94 80032094 A4C00040 */ sh $zero, 0x40($a2) -/* 032C98 80032098 90A80005 */ lbu $t0, 5($a1) -/* 032C9C 8003209C ACC00038 */ sw $zero, 0x38($a2) -/* 032CA0 800320A0 00084C00 */ sll $t1, $t0, 0x10 -/* 032CA4 800320A4 ACC90028 */ sw $t1, 0x28($a2) -/* 032CA8 800320A8 A4C00042 */ sh $zero, 0x42($a2) -/* 032CAC 800320AC 94A40006 */ lhu $a0, 6($a1) -/* 032CB0 800320B0 00000000 */ nop -/* 032CB4 800320B4 1081001C */ beq $a0, $at, .L80032128 -/* 032CB8 800320B8 00000000 */ nop -/* 032CBC 800320BC AFA50024 */ sw $a1, 0x24($sp) -/* 032CC0 800320C0 0C0078A7 */ jal func_8001E29C -/* 032CC4 800320C4 AFA60018 */ sw $a2, 0x18($sp) -/* 032CC8 800320C8 8FA60018 */ lw $a2, 0x18($sp) -/* 032CCC 800320CC 8FA50024 */ lw $a1, 0x24($sp) -/* 032CD0 800320D0 ACC20044 */ sw $v0, 0x44($a2) -/* 032CD4 800320D4 8C4A0000 */ lw $t2, ($v0) -/* 032CD8 800320D8 244B0014 */ addiu $t3, $v0, 0x14 -/* 032CDC 800320DC 3144FFFF */ andi $a0, $t2, 0xffff -/* 032CE0 800320E0 00001825 */ move $v1, $zero -/* 032CE4 800320E4 A4C0004A */ sh $zero, 0x4a($a2) -/* 032CE8 800320E8 A4C0004C */ sh $zero, 0x4c($a2) -/* 032CEC 800320EC A4C0004E */ sh $zero, 0x4e($a2) -/* 032CF0 800320F0 ACCB0044 */ sw $t3, 0x44($a2) -/* 032CF4 800320F4 1880000D */ blez $a0, .L8003212C -/* 032CF8 800320F8 A4CA0048 */ sh $t2, 0x48($a2) -/* 032CFC 800320FC 01601025 */ move $v0, $t3 -.L80032100: -/* 032D00 80032100 94CC004E */ lhu $t4, 0x4e($a2) -/* 032D04 80032104 8C4D0004 */ lw $t5, 4($v0) -/* 032D08 80032108 24630001 */ addiu $v1, $v1, 1 -/* 032D0C 8003210C 0064082A */ slt $at, $v1, $a0 -/* 032D10 80032110 018D7021 */ addu $t6, $t4, $t5 -/* 032D14 80032114 A4CE004E */ sh $t6, 0x4e($a2) -/* 032D18 80032118 1420FFF9 */ bnez $at, .L80032100 -/* 032D1C 8003211C 24420008 */ addiu $v0, $v0, 8 -/* 032D20 80032120 10000003 */ b .L80032130 -/* 032D24 80032124 94AF0012 */ lhu $t7, 0x12($a1) -.L80032128: -/* 032D28 80032128 ACC00044 */ sw $zero, 0x44($a2) -.L8003212C: -/* 032D2C 8003212C 94AF0012 */ lhu $t7, 0x12($a1) -.L80032130: -/* 032D30 80032130 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 032D34 80032134 448F2000 */ mtc1 $t7, $f4 -/* 032D38 80032138 05E10004 */ bgez $t7, .L8003214C -/* 032D3C 8003213C 468021A0 */ cvt.s.w $f6, $f4 -/* 032D40 80032140 44814000 */ mtc1 $at, $f8 -/* 032D44 80032144 00000000 */ nop -/* 032D48 80032148 46083180 */ add.s $f6, $f6, $f8 -.L8003214C: -/* 032D4C 8003214C E4C6005C */ swc1 $f6, 0x5c($a2) -/* 032D50 80032150 94B80014 */ lhu $t8, 0x14($a1) -/* 032D54 80032154 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 032D58 80032158 44985000 */ mtc1 $t8, $f10 -/* 032D5C 8003215C 07010004 */ bgez $t8, .L80032170 -/* 032D60 80032160 46805420 */ cvt.s.w $f16, $f10 -/* 032D64 80032164 44819000 */ mtc1 $at, $f18 -/* 032D68 80032168 00000000 */ nop -/* 032D6C 8003216C 46128400 */ add.s $f16, $f16, $f18 -.L80032170: -/* 032D70 80032170 E4D00060 */ swc1 $f16, 0x60($a2) -/* 032D74 80032174 94B90016 */ lhu $t9, 0x16($a1) -/* 032D78 80032178 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 032D7C 8003217C 44992000 */ mtc1 $t9, $f4 -/* 032D80 80032180 07210004 */ bgez $t9, .L80032194 -/* 032D84 80032184 46802220 */ cvt.s.w $f8, $f4 -/* 032D88 80032188 44813000 */ mtc1 $at, $f6 -/* 032D8C 8003218C 00000000 */ nop -/* 032D90 80032190 46064200 */ add.s $f8, $f8, $f6 -.L80032194: -/* 032D94 80032194 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 032D98 80032198 C4C0005C */ lwc1 $f0, 0x5c($a2) -/* 032D9C 8003219C 44819000 */ mtc1 $at, $f18 -/* 032DA0 800321A0 46000282 */ mul.s $f10, $f0, $f0 -/* 032DA4 800321A4 00000000 */ nop -/* 032DA8 800321A8 46009403 */ div.s $f16, $f18, $f0 -/* 032DAC 800321AC E4C80064 */ swc1 $f8, 0x64($a2) -/* 032DB0 800321B0 240C0001 */ li $t4, 1 -/* 032DB4 800321B4 E4CA0068 */ swc1 $f10, 0x68($a2) -/* 032DB8 800321B8 00C02025 */ move $a0, $a2 -/* 032DBC 800321BC E4D0006C */ swc1 $f16, 0x6c($a2) -/* 032DC0 800321C0 90A80000 */ lbu $t0, ($a1) -/* 032DC4 800321C4 A4C00074 */ sh $zero, 0x74($a2) -/* 032DC8 800321C8 00084A00 */ sll $t1, $t0, 8 -/* 032DCC 800321CC A4C90070 */ sh $t1, 0x70($a2) -/* 032DD0 800321D0 A4C00078 */ sh $zero, 0x78($a2) -/* 032DD4 800321D4 90AA0001 */ lbu $t2, 1($a1) -/* 032DD8 800321D8 A4C00076 */ sh $zero, 0x76($a2) -/* 032DDC 800321DC 000A5A00 */ sll $t3, $t2, 8 -/* 032DE0 800321E0 A4CB0072 */ sh $t3, 0x72($a2) -/* 032DE4 800321E4 A4C0007A */ sh $zero, 0x7a($a2) -/* 032DE8 800321E8 A0CC0005 */ sb $t4, 5($a2) -/* 032DEC 800321EC AFA60018 */ sw $a2, 0x18($sp) -/* 032DF0 800321F0 0C00C909 */ jal func_80032424 -/* 032DF4 800321F4 00002825 */ move $a1, $zero -/* 032DF8 800321F8 8FA60018 */ lw $a2, 0x18($sp) -/* 032DFC 800321FC 00000000 */ nop -.L80032200: -/* 032E00 80032200 8FBF0014 */ lw $ra, 0x14($sp) -/* 032E04 80032204 27BD0020 */ addiu $sp, $sp, 0x20 -/* 032E08 80032208 03E00008 */ jr $ra -/* 032E0C 8003220C 00C01025 */ move $v0, $a2 - -/* 032E10 80032210 03E00008 */ jr $ra -/* 032E14 80032214 A0800004 */ sb $zero, 4($a0) - -/* 032E18 80032218 240E0001 */ li $t6, 1 -/* 032E1C 8003221C 03E00008 */ jr $ra -/* 032E20 80032220 A08E0004 */ sb $t6, 4($a0) - -/* 032E24 80032224 908E0004 */ lbu $t6, 4($a0) -/* 032E28 80032228 24010001 */ li $at, 1 -/* 032E2C 8003222C 15C10003 */ bne $t6, $at, .L8003223C -/* 032E30 80032230 240F0001 */ li $t7, 1 -/* 032E34 80032234 03E00008 */ jr $ra -/* 032E38 80032238 A0800004 */ sb $zero, 4($a0) - -.L8003223C: -/* 032E3C 8003223C A08F0004 */ sb $t7, 4($a0) -/* 032E40 80032240 03E00008 */ jr $ra -/* 032E44 80032244 00000000 */ nop - -/* 032E48 80032248 18C00012 */ blez $a2, .L80032294 -/* 032E4C 8003224C 00000000 */ nop -/* 032E50 80032250 8C8F001C */ lw $t7, 0x1c($a0) -/* 032E54 80032254 00057400 */ sll $t6, $a1, 0x10 -/* 032E58 80032258 01CFC023 */ subu $t8, $t6, $t7 -/* 032E5C 8003225C 0306001A */ div $zero, $t8, $a2 -/* 032E60 80032260 A486003C */ sh $a2, 0x3c($a0) -/* 032E64 80032264 14C00002 */ bnez $a2, .L80032270 -/* 032E68 80032268 00000000 */ nop -/* 032E6C 8003226C 0007000D */ break 7 -.L80032270: -/* 032E70 80032270 2401FFFF */ li $at, -1 -/* 032E74 80032274 14C10004 */ bne $a2, $at, .L80032288 -/* 032E78 80032278 3C018000 */ lui $at, 0x8000 -/* 032E7C 8003227C 17010002 */ bne $t8, $at, .L80032288 -/* 032E80 80032280 00000000 */ nop -/* 032E84 80032284 0006000D */ break 6 -.L80032288: -/* 032E88 80032288 0000C812 */ mflo $t9 -/* 032E8C 8003228C AC99002C */ sw $t9, 0x2c($a0) -/* 032E90 80032290 00000000 */ nop -.L80032294: -/* 032E94 80032294 8FA20010 */ lw $v0, 0x10($sp) -/* 032E98 80032298 00000000 */ nop -/* 032E9C 8003229C 18400012 */ blez $v0, .L800322E8 -/* 032EA0 800322A0 00000000 */ nop -/* 032EA4 800322A4 8C890020 */ lw $t1, 0x20($a0) -/* 032EA8 800322A8 00074400 */ sll $t0, $a3, 0x10 -/* 032EAC 800322AC 01095023 */ subu $t2, $t0, $t1 -/* 032EB0 800322B0 0142001A */ div $zero, $t2, $v0 -/* 032EB4 800322B4 A482003E */ sh $v0, 0x3e($a0) -/* 032EB8 800322B8 14400002 */ bnez $v0, .L800322C4 -/* 032EBC 800322BC 00000000 */ nop -/* 032EC0 800322C0 0007000D */ break 7 -.L800322C4: -/* 032EC4 800322C4 2401FFFF */ li $at, -1 -/* 032EC8 800322C8 14410004 */ bne $v0, $at, .L800322DC -/* 032ECC 800322CC 3C018000 */ lui $at, 0x8000 -/* 032ED0 800322D0 15410002 */ bne $t2, $at, .L800322DC -/* 032ED4 800322D4 00000000 */ nop -/* 032ED8 800322D8 0006000D */ break 6 -.L800322DC: -/* 032EDC 800322DC 00005812 */ mflo $t3 -/* 032EE0 800322E0 AC8B0030 */ sw $t3, 0x30($a0) -/* 032EE4 800322E4 00000000 */ nop -.L800322E8: -/* 032EE8 800322E8 8FA20018 */ lw $v0, 0x18($sp) -/* 032EEC 800322EC 8FAC0014 */ lw $t4, 0x14($sp) -/* 032EF0 800322F0 18400012 */ blez $v0, .L8003233C -/* 032EF4 800322F4 00000000 */ nop -/* 032EF8 800322F8 8C8E0024 */ lw $t6, 0x24($a0) -/* 032EFC 800322FC 000C6C00 */ sll $t5, $t4, 0x10 -/* 032F00 80032300 01AE7823 */ subu $t7, $t5, $t6 -/* 032F04 80032304 01E2001A */ div $zero, $t7, $v0 -/* 032F08 80032308 A4820040 */ sh $v0, 0x40($a0) -/* 032F0C 8003230C 14400002 */ bnez $v0, .L80032318 -/* 032F10 80032310 00000000 */ nop -/* 032F14 80032314 0007000D */ break 7 -.L80032318: -/* 032F18 80032318 2401FFFF */ li $at, -1 -/* 032F1C 8003231C 14410004 */ bne $v0, $at, .L80032330 -/* 032F20 80032320 3C018000 */ lui $at, 0x8000 -/* 032F24 80032324 15E10002 */ bne $t7, $at, .L80032330 -/* 032F28 80032328 00000000 */ nop -/* 032F2C 8003232C 0006000D */ break 6 -.L80032330: -/* 032F30 80032330 0000C012 */ mflo $t8 -/* 032F34 80032334 AC980034 */ sw $t8, 0x34($a0) -/* 032F38 80032338 00000000 */ nop -.L8003233C: -/* 032F3C 8003233C 03E00008 */ jr $ra -/* 032F40 80032340 00000000 */ nop - -/* 032F44 80032344 18C00012 */ blez $a2, .L80032390 -/* 032F48 80032348 00000000 */ nop -/* 032F4C 8003234C 8C8F0028 */ lw $t7, 0x28($a0) -/* 032F50 80032350 00057400 */ sll $t6, $a1, 0x10 -/* 032F54 80032354 01CFC023 */ subu $t8, $t6, $t7 -/* 032F58 80032358 0306001A */ div $zero, $t8, $a2 -/* 032F5C 8003235C A4860042 */ sh $a2, 0x42($a0) -/* 032F60 80032360 14C00002 */ bnez $a2, .L8003236C -/* 032F64 80032364 00000000 */ nop -/* 032F68 80032368 0007000D */ break 7 -.L8003236C: -/* 032F6C 8003236C 2401FFFF */ li $at, -1 -/* 032F70 80032370 14C10004 */ bne $a2, $at, .L80032384 -/* 032F74 80032374 3C018000 */ lui $at, 0x8000 -/* 032F78 80032378 17010002 */ bne $t8, $at, .L80032384 -/* 032F7C 8003237C 00000000 */ nop -/* 032F80 80032380 0006000D */ break 6 -.L80032384: -/* 032F84 80032384 0000C812 */ mflo $t9 -/* 032F88 80032388 AC990038 */ sw $t9, 0x38($a0) -/* 032F8C 8003238C 00000000 */ nop -.L80032390: -/* 032F90 80032390 03E00008 */ jr $ra -/* 032F94 80032394 00000000 */ nop - -glabel func_80032398 -/* 032F98 80032398 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 032F9C 8003239C AFB30024 */ sw $s3, 0x24($sp) -/* 032FA0 800323A0 3C13800E */ lui $s3, %hi(D_800DC95C) # $s3, 0x800e -/* 032FA4 800323A4 2673C95C */ addiu $s3, %lo(D_800DC95C) # addiu $s3, $s3, -0x36a4 -/* 032FA8 800323A8 8E6E0000 */ lw $t6, ($s3) -/* 032FAC 800323AC AFB20020 */ sw $s2, 0x20($sp) -/* 032FB0 800323B0 AFB00018 */ sw $s0, 0x18($sp) -/* 032FB4 800323B4 00809025 */ move $s2, $a0 -/* 032FB8 800323B8 AFBF002C */ sw $ra, 0x2c($sp) -/* 032FBC 800323BC AFB40028 */ sw $s4, 0x28($sp) -/* 032FC0 800323C0 AFB1001C */ sw $s1, 0x1c($sp) -/* 032FC4 800323C4 19C0000F */ blez $t6, .L80032404 -/* 032FC8 800323C8 00008025 */ move $s0, $zero -/* 032FCC 800323CC 3C14800E */ lui $s4, %hi(D_800DC950) # $s4, 0x800e -/* 032FD0 800323D0 2694C950 */ addiu $s4, %lo(D_800DC950) # addiu $s4, $s4, -0x36b0 -/* 032FD4 800323D4 00008825 */ move $s1, $zero -.L800323D8: -/* 032FD8 800323D8 8E8F0000 */ lw $t7, ($s4) -/* 032FDC 800323DC 02402825 */ move $a1, $s2 -/* 032FE0 800323E0 01F1C021 */ addu $t8, $t7, $s1 -/* 032FE4 800323E4 8F040000 */ lw $a0, ($t8) -/* 032FE8 800323E8 0C00C909 */ jal func_80032424 -/* 032FEC 800323EC 00000000 */ nop -/* 032FF0 800323F0 8E790000 */ lw $t9, ($s3) -/* 032FF4 800323F4 26100001 */ addiu $s0, $s0, 1 -/* 032FF8 800323F8 0219082A */ slt $at, $s0, $t9 -/* 032FFC 800323FC 1420FFF6 */ bnez $at, .L800323D8 -/* 033000 80032400 26310004 */ addiu $s1, $s1, 4 -.L80032404: -/* 033004 80032404 8FBF002C */ lw $ra, 0x2c($sp) -/* 033008 80032408 8FB00018 */ lw $s0, 0x18($sp) -/* 03300C 8003240C 8FB1001C */ lw $s1, 0x1c($sp) -/* 033010 80032410 8FB20020 */ lw $s2, 0x20($sp) -/* 033014 80032414 8FB30024 */ lw $s3, 0x24($sp) -/* 033018 80032418 8FB40028 */ lw $s4, 0x28($sp) -/* 03301C 8003241C 03E00008 */ jr $ra -/* 033020 80032420 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_80032424 -/* 033024 80032424 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 033028 80032428 AFBF001C */ sw $ra, 0x1c($sp) -/* 03302C 8003242C AFB00018 */ sw $s0, 0x18($sp) -/* 033030 80032430 8C87000C */ lw $a3, 0xc($a0) -/* 033034 80032434 00A08025 */ move $s0, $a1 -/* 033038 80032438 10E00022 */ beqz $a3, .L800324C4 -/* 03303C 8003243C 00803025 */ move $a2, $a0 -/* 033040 80032440 848E0006 */ lh $t6, 6($a0) -/* 033044 80032444 848F0008 */ lh $t7, 8($a0) -/* 033048 80032448 8498000A */ lh $t8, 0xa($a0) -/* 03304C 8003244C 448E2000 */ mtc1 $t6, $f4 -/* 033050 80032450 448F4000 */ mtc1 $t7, $f8 -/* 033054 80032454 44988000 */ mtc1 $t8, $f16 -/* 033058 80032458 468021A0 */ cvt.s.w $f6, $f4 -/* 03305C 8003245C 24C50010 */ addiu $a1, $a2, 0x10 -/* 033060 80032460 468042A0 */ cvt.s.w $f10, $f8 -/* 033064 80032464 E4860010 */ swc1 $f6, 0x10($a0) -/* 033068 80032468 468084A0 */ cvt.s.w $f18, $f16 -/* 03306C 8003246C E48A0014 */ swc1 $f10, 0x14($a0) -/* 033070 80032470 E4920018 */ swc1 $f18, 0x18($a0) -/* 033074 80032474 AFA60048 */ sw $a2, 0x48($sp) -/* 033078 80032478 0C01C0C8 */ jal func_80070320 -/* 03307C 8003247C 00E02025 */ move $a0, $a3 -/* 033080 80032480 8FA60048 */ lw $a2, 0x48($sp) -/* 033084 80032484 240B0001 */ li $t3, 1 -/* 033088 80032488 8CC7000C */ lw $a3, 0xc($a2) -/* 03308C 8003248C C4C40010 */ lwc1 $f4, 0x10($a2) -/* 033090 80032490 C4E6000C */ lwc1 $f6, 0xc($a3) -/* 033094 80032494 C4CA0014 */ lwc1 $f10, 0x14($a2) -/* 033098 80032498 46062200 */ add.s $f8, $f4, $f6 -/* 03309C 8003249C C4C40018 */ lwc1 $f4, 0x18($a2) -/* 0330A0 800324A0 E4C80010 */ swc1 $f8, 0x10($a2) -/* 0330A4 800324A4 C4F00010 */ lwc1 $f16, 0x10($a3) -/* 0330A8 800324A8 00000000 */ nop -/* 0330AC 800324AC 46105480 */ add.s $f18, $f10, $f16 -/* 0330B0 800324B0 E4D20014 */ swc1 $f18, 0x14($a2) -/* 0330B4 800324B4 C4E60014 */ lwc1 $f6, 0x14($a3) -/* 0330B8 800324B8 A0CB0005 */ sb $t3, 5($a2) -/* 0330BC 800324BC 46062200 */ add.s $f8, $f4, $f6 -/* 0330C0 800324C0 E4C80018 */ swc1 $f8, 0x18($a2) -.L800324C4: -/* 0330C4 800324C4 8CC50044 */ lw $a1, 0x44($a2) -/* 0330C8 800324C8 240B0001 */ li $t3, 1 -/* 0330CC 800324CC 10A0006E */ beqz $a1, .L80032688 -/* 0330D0 800324D0 00000000 */ nop -/* 0330D4 800324D4 94D9004C */ lhu $t9, 0x4c($a2) -/* 0330D8 800324D8 94C2004A */ lhu $v0, 0x4a($a2) -/* 0330DC 800324DC 03306021 */ addu $t4, $t9, $s0 -/* 0330E0 800324E0 000268C0 */ sll $t5, $v0, 3 -/* 0330E4 800324E4 A4CC004C */ sh $t4, 0x4c($a2) -/* 0330E8 800324E8 00AD7021 */ addu $t6, $a1, $t5 -/* 0330EC 800324EC 8DC30004 */ lw $v1, 4($t6) -/* 0330F0 800324F0 3184FFFF */ andi $a0, $t4, 0xffff -/* 0330F4 800324F4 0083082A */ slt $at, $a0, $v1 -/* 0330F8 800324F8 14200014 */ bnez $at, .L8003254C -/* 0330FC 800324FC 00000000 */ nop -.L80032500: -/* 033100 80032500 94D90048 */ lhu $t9, 0x48($a2) -/* 033104 80032504 24580001 */ addiu $t8, $v0, 1 -/* 033108 80032508 3302FFFF */ andi $v0, $t8, 0xffff -/* 03310C 8003250C 00837823 */ subu $t7, $a0, $v1 -/* 033110 80032510 0322082A */ slt $at, $t9, $v0 -/* 033114 80032514 A4CF004C */ sh $t7, 0x4c($a2) -/* 033118 80032518 10200004 */ beqz $at, .L8003252C -/* 03311C 8003251C A4D8004A */ sh $t8, 0x4a($a2) -/* 033120 80032520 8CC50044 */ lw $a1, 0x44($a2) -/* 033124 80032524 A4C0004A */ sh $zero, 0x4a($a2) -/* 033128 80032528 3002FFFF */ andi $v0, $zero, 0xffff -.L8003252C: -/* 03312C 8003252C 000260C0 */ sll $t4, $v0, 3 -/* 033130 80032530 00AC6821 */ addu $t5, $a1, $t4 -/* 033134 80032534 8DA30004 */ lw $v1, 4($t5) -/* 033138 80032538 94C4004C */ lhu $a0, 0x4c($a2) -/* 03313C 8003253C 00000000 */ nop -/* 033140 80032540 0083082A */ slt $at, $a0, $v1 -/* 033144 80032544 1020FFEE */ beqz $at, .L80032500 -/* 033148 80032548 00000000 */ nop -.L8003254C: -/* 03314C 8003254C 94CF0048 */ lhu $t7, 0x48($a2) -/* 033150 80032550 000270C0 */ sll $t6, $v0, 3 -/* 033154 80032554 25F8FFFF */ addiu $t8, $t7, -1 -/* 033158 80032558 0058082A */ slt $at, $v0, $t8 -/* 03315C 8003255C 00AE1821 */ addu $v1, $a1, $t6 -/* 033160 80032560 10200005 */ beqz $at, .L80032578 -/* 033164 80032564 00404025 */ move $t0, $v0 -/* 033168 80032568 25190001 */ addiu $t9, $t0, 1 -/* 03316C 8003256C 001960C0 */ sll $t4, $t9, 3 -/* 033170 80032570 10000002 */ b .L8003257C -/* 033174 80032574 00AC3821 */ addu $a3, $a1, $t4 -.L80032578: -/* 033178 80032578 00A03825 */ move $a3, $a1 -.L8003257C: -/* 03317C 8003257C 8C6D0004 */ lw $t5, 4($v1) -/* 033180 80032580 3C0E0001 */ lui $t6, 1 -/* 033184 80032584 01CD001A */ div $zero, $t6, $t5 -/* 033188 80032588 90650000 */ lbu $a1, ($v1) -/* 03318C 8003258C 90EF0000 */ lbu $t7, ($a3) -/* 033190 80032590 15A00002 */ bnez $t5, .L8003259C -/* 033194 80032594 00000000 */ nop -/* 033198 80032598 0007000D */ break 7 -.L8003259C: -/* 03319C 8003259C 2401FFFF */ li $at, -1 -/* 0331A0 800325A0 15A10004 */ bne $t5, $at, .L800325B4 -/* 0331A4 800325A4 3C018000 */ lui $at, 0x8000 -/* 0331A8 800325A8 15C10002 */ bne $t6, $at, .L800325B4 -/* 0331AC 800325AC 00000000 */ nop -/* 0331B0 800325B0 0006000D */ break 6 -.L800325B4: -/* 0331B4 800325B4 01E5C023 */ subu $t8, $t7, $a1 -/* 0331B8 800325B8 00057400 */ sll $t6, $a1, 0x10 -/* 0331BC 800325BC 00001012 */ mflo $v0 -/* 0331C0 800325C0 00000000 */ nop -/* 0331C4 800325C4 00000000 */ nop -/* 0331C8 800325C8 03040019 */ multu $t8, $a0 -/* 0331CC 800325CC 0000C812 */ mflo $t9 -/* 0331D0 800325D0 00000000 */ nop -/* 0331D4 800325D4 00000000 */ nop -/* 0331D8 800325D8 03220019 */ multu $t9, $v0 -/* 0331DC 800325DC 00006012 */ mflo $t4 -/* 0331E0 800325E0 018E6821 */ addu $t5, $t4, $t6 -/* 0331E4 800325E4 ACCD001C */ sw $t5, 0x1c($a2) -/* 0331E8 800325E8 90EF0001 */ lbu $t7, 1($a3) -/* 0331EC 800325EC 90680001 */ lbu $t0, 1($v1) -/* 0331F0 800325F0 00000000 */ nop -/* 0331F4 800325F4 01E8C023 */ subu $t8, $t7, $t0 -/* 0331F8 800325F8 03040019 */ multu $t8, $a0 -/* 0331FC 800325FC 00087400 */ sll $t6, $t0, 0x10 -/* 033200 80032600 0000C812 */ mflo $t9 -/* 033204 80032604 00000000 */ nop -/* 033208 80032608 00000000 */ nop -/* 03320C 8003260C 03220019 */ multu $t9, $v0 -/* 033210 80032610 00006012 */ mflo $t4 -/* 033214 80032614 018E6821 */ addu $t5, $t4, $t6 -/* 033218 80032618 ACCD0020 */ sw $t5, 0x20($a2) -/* 03321C 8003261C 90EF0002 */ lbu $t7, 2($a3) -/* 033220 80032620 90690002 */ lbu $t1, 2($v1) -/* 033224 80032624 00000000 */ nop -/* 033228 80032628 01E9C023 */ subu $t8, $t7, $t1 -/* 03322C 8003262C 03040019 */ multu $t8, $a0 -/* 033230 80032630 00097400 */ sll $t6, $t1, 0x10 -/* 033234 80032634 0000C812 */ mflo $t9 -/* 033238 80032638 00000000 */ nop -/* 03323C 8003263C 00000000 */ nop -/* 033240 80032640 03220019 */ multu $t9, $v0 -/* 033244 80032644 00006012 */ mflo $t4 -/* 033248 80032648 018E6821 */ addu $t5, $t4, $t6 -/* 03324C 8003264C ACCD0024 */ sw $t5, 0x24($a2) -/* 033250 80032650 90EF0003 */ lbu $t7, 3($a3) -/* 033254 80032654 906A0003 */ lbu $t2, 3($v1) -/* 033258 80032658 00000000 */ nop -/* 03325C 8003265C 01EAC023 */ subu $t8, $t7, $t2 -/* 033260 80032660 03040019 */ multu $t8, $a0 -/* 033264 80032664 000A7400 */ sll $t6, $t2, 0x10 -/* 033268 80032668 0000C812 */ mflo $t9 -/* 03326C 8003266C 00000000 */ nop -/* 033270 80032670 00000000 */ nop -/* 033274 80032674 03220019 */ multu $t9, $v0 -/* 033278 80032678 00006012 */ mflo $t4 -/* 03327C 8003267C 018E6821 */ addu $t5, $t4, $t6 -/* 033280 80032680 10000059 */ b .L800327E8 -/* 033284 80032684 ACCD0028 */ sw $t5, 0x28($a2) -.L80032688: -/* 033288 80032688 94C3003C */ lhu $v1, 0x3c($a2) -/* 03328C 8003268C 00000000 */ nop -/* 033290 80032690 10600013 */ beqz $v1, .L800326E0 -/* 033294 80032694 0203082A */ slt $at, $s0, $v1 -/* 033298 80032698 1020000A */ beqz $at, .L800326C4 -/* 03329C 8003269C 00601025 */ move $v0, $v1 -/* 0332A0 800326A0 8CD8002C */ lw $t8, 0x2c($a2) -/* 0332A4 800326A4 8CCF001C */ lw $t7, 0x1c($a2) -/* 0332A8 800326A8 03100019 */ multu $t8, $s0 -/* 0332AC 800326AC 00707023 */ subu $t6, $v1, $s0 -/* 0332B0 800326B0 A4CE003C */ sh $t6, 0x3c($a2) -/* 0332B4 800326B4 0000C812 */ mflo $t9 -/* 0332B8 800326B8 01F96021 */ addu $t4, $t7, $t9 -/* 0332BC 800326BC 10000008 */ b .L800326E0 -/* 0332C0 800326C0 ACCC001C */ sw $t4, 0x1c($a2) -.L800326C4: -/* 0332C4 800326C4 8CD8002C */ lw $t8, 0x2c($a2) -/* 0332C8 800326C8 8CCD001C */ lw $t5, 0x1c($a2) -/* 0332CC 800326CC 03020019 */ multu $t8, $v0 -/* 0332D0 800326D0 A4C0003C */ sh $zero, 0x3c($a2) -/* 0332D4 800326D4 00007812 */ mflo $t7 -/* 0332D8 800326D8 01AFC821 */ addu $t9, $t5, $t7 -/* 0332DC 800326DC ACD9001C */ sw $t9, 0x1c($a2) -.L800326E0: -/* 0332E0 800326E0 94C3003E */ lhu $v1, 0x3e($a2) -/* 0332E4 800326E4 00000000 */ nop -/* 0332E8 800326E8 10600013 */ beqz $v1, .L80032738 -/* 0332EC 800326EC 0203082A */ slt $at, $s0, $v1 -/* 0332F0 800326F0 1020000A */ beqz $at, .L8003271C -/* 0332F4 800326F4 00601025 */ move $v0, $v1 -/* 0332F8 800326F8 8CCE0030 */ lw $t6, 0x30($a2) -/* 0332FC 800326FC 8CCC0020 */ lw $t4, 0x20($a2) -/* 033300 80032700 01D00019 */ multu $t6, $s0 -/* 033304 80032704 00707823 */ subu $t7, $v1, $s0 -/* 033308 80032708 A4CF003E */ sh $t7, 0x3e($a2) -/* 03330C 8003270C 0000C012 */ mflo $t8 -/* 033310 80032710 01986821 */ addu $t5, $t4, $t8 -/* 033314 80032714 10000008 */ b .L80032738 -/* 033318 80032718 ACCD0020 */ sw $t5, 0x20($a2) -.L8003271C: -/* 03331C 8003271C 8CCE0030 */ lw $t6, 0x30($a2) -/* 033320 80032720 8CD90020 */ lw $t9, 0x20($a2) -/* 033324 80032724 01C20019 */ multu $t6, $v0 -/* 033328 80032728 A4C0003E */ sh $zero, 0x3e($a2) -/* 03332C 8003272C 00006012 */ mflo $t4 -/* 033330 80032730 032CC021 */ addu $t8, $t9, $t4 -/* 033334 80032734 ACD80020 */ sw $t8, 0x20($a2) -.L80032738: -/* 033338 80032738 94C30040 */ lhu $v1, 0x40($a2) -/* 03333C 8003273C 00000000 */ nop -/* 033340 80032740 10600013 */ beqz $v1, .L80032790 -/* 033344 80032744 0203082A */ slt $at, $s0, $v1 -/* 033348 80032748 1020000A */ beqz $at, .L80032774 -/* 03334C 8003274C 00601025 */ move $v0, $v1 -/* 033350 80032750 8CCF0034 */ lw $t7, 0x34($a2) -/* 033354 80032754 8CCD0024 */ lw $t5, 0x24($a2) -/* 033358 80032758 01F00019 */ multu $t7, $s0 -/* 03335C 8003275C 00706023 */ subu $t4, $v1, $s0 -/* 033360 80032760 A4CC0040 */ sh $t4, 0x40($a2) -/* 033364 80032764 00007012 */ mflo $t6 -/* 033368 80032768 01AEC821 */ addu $t9, $t5, $t6 -/* 03336C 8003276C 10000008 */ b .L80032790 -/* 033370 80032770 ACD90024 */ sw $t9, 0x24($a2) -.L80032774: -/* 033374 80032774 8CCF0034 */ lw $t7, 0x34($a2) -/* 033378 80032778 8CD80024 */ lw $t8, 0x24($a2) -/* 03337C 8003277C 01E20019 */ multu $t7, $v0 -/* 033380 80032780 A4C00040 */ sh $zero, 0x40($a2) -/* 033384 80032784 00006812 */ mflo $t5 -/* 033388 80032788 030D7021 */ addu $t6, $t8, $t5 -/* 03338C 8003278C ACCE0024 */ sw $t6, 0x24($a2) -.L80032790: -/* 033390 80032790 94C30042 */ lhu $v1, 0x42($a2) -/* 033394 80032794 00000000 */ nop -/* 033398 80032798 10600013 */ beqz $v1, .L800327E8 -/* 03339C 8003279C 0203082A */ slt $at, $s0, $v1 -/* 0333A0 800327A0 1020000A */ beqz $at, .L800327CC -/* 0333A4 800327A4 00601025 */ move $v0, $v1 -/* 0333A8 800327A8 8CCC0038 */ lw $t4, 0x38($a2) -/* 0333AC 800327AC 8CD90028 */ lw $t9, 0x28($a2) -/* 0333B0 800327B0 01900019 */ multu $t4, $s0 -/* 0333B4 800327B4 00706823 */ subu $t5, $v1, $s0 -/* 0333B8 800327B8 A4CD0042 */ sh $t5, 0x42($a2) -/* 0333BC 800327BC 00007812 */ mflo $t7 -/* 0333C0 800327C0 032FC021 */ addu $t8, $t9, $t7 -/* 0333C4 800327C4 10000008 */ b .L800327E8 -/* 0333C8 800327C8 ACD80028 */ sw $t8, 0x28($a2) -.L800327CC: -/* 0333CC 800327CC 8CCC0038 */ lw $t4, 0x38($a2) -/* 0333D0 800327D0 8CCE0028 */ lw $t6, 0x28($a2) -/* 0333D4 800327D4 01820019 */ multu $t4, $v0 -/* 0333D8 800327D8 A4C00042 */ sh $zero, 0x42($a2) -/* 0333DC 800327DC 0000C812 */ mflo $t9 -/* 0333E0 800327E0 01D97821 */ addu $t7, $t6, $t9 -/* 0333E4 800327E4 ACCF0028 */ sw $t7, 0x28($a2) -.L800327E8: -/* 0333E8 800327E8 94C30078 */ lhu $v1, 0x78($a2) -/* 0333EC 800327EC 3401FFFF */ li $at, 65535 -/* 0333F0 800327F0 1060001E */ beqz $v1, .L8003286C -/* 0333F4 800327F4 00000000 */ nop -/* 0333F8 800327F8 14610008 */ bne $v1, $at, .L8003281C -/* 0333FC 800327FC 00601025 */ move $v0, $v1 -/* 033400 80032800 84CD0074 */ lh $t5, 0x74($a2) -/* 033404 80032804 84D80070 */ lh $t8, 0x70($a2) -/* 033408 80032808 01B00019 */ multu $t5, $s0 -/* 03340C 8003280C 00006012 */ mflo $t4 -/* 033410 80032810 030C7021 */ addu $t6, $t8, $t4 -/* 033414 80032814 10000014 */ b .L80032868 -/* 033418 80032818 A4CE0070 */ sh $t6, 0x70($a2) -.L8003281C: -/* 03341C 8003281C 0202082A */ slt $at, $s0, $v0 -/* 033420 80032820 1020000A */ beqz $at, .L8003284C -/* 033424 80032824 00000000 */ nop -/* 033428 80032828 84CF0074 */ lh $t7, 0x74($a2) -/* 03342C 8003282C 84D90070 */ lh $t9, 0x70($a2) -/* 033430 80032830 01F00019 */ multu $t7, $s0 -/* 033434 80032834 00506023 */ subu $t4, $v0, $s0 -/* 033438 80032838 A4CC0078 */ sh $t4, 0x78($a2) -/* 03343C 8003283C 00006812 */ mflo $t5 -/* 033440 80032840 032DC021 */ addu $t8, $t9, $t5 -/* 033444 80032844 10000008 */ b .L80032868 -/* 033448 80032848 A4D80070 */ sh $t8, 0x70($a2) -.L8003284C: -/* 03344C 8003284C 84CF0074 */ lh $t7, 0x74($a2) -/* 033450 80032850 84CE0070 */ lh $t6, 0x70($a2) -/* 033454 80032854 01E20019 */ multu $t7, $v0 -/* 033458 80032858 A4C00078 */ sh $zero, 0x78($a2) -/* 03345C 8003285C 0000C812 */ mflo $t9 -/* 033460 80032860 01D96821 */ addu $t5, $t6, $t9 -/* 033464 80032864 A4CD0070 */ sh $t5, 0x70($a2) -.L80032868: -/* 033468 80032868 A0CB0005 */ sb $t3, 5($a2) -.L8003286C: -/* 03346C 8003286C 94C3007A */ lhu $v1, 0x7a($a2) -/* 033470 80032870 3401FFFF */ li $at, 65535 -/* 033474 80032874 1060001E */ beqz $v1, .L800328F0 -/* 033478 80032878 00000000 */ nop -/* 03347C 8003287C 14610008 */ bne $v1, $at, .L800328A0 -/* 033480 80032880 00601025 */ move $v0, $v1 -/* 033484 80032884 84CC0076 */ lh $t4, 0x76($a2) -/* 033488 80032888 84D80072 */ lh $t8, 0x72($a2) -/* 03348C 8003288C 01900019 */ multu $t4, $s0 -/* 033490 80032890 00007812 */ mflo $t7 -/* 033494 80032894 030F7021 */ addu $t6, $t8, $t7 -/* 033498 80032898 10000014 */ b .L800328EC -/* 03349C 8003289C A4CE0072 */ sh $t6, 0x72($a2) -.L800328A0: -/* 0334A0 800328A0 0202082A */ slt $at, $s0, $v0 -/* 0334A4 800328A4 1020000A */ beqz $at, .L800328D0 -/* 0334A8 800328A8 00000000 */ nop -/* 0334AC 800328AC 84CD0076 */ lh $t5, 0x76($a2) -/* 0334B0 800328B0 84D90072 */ lh $t9, 0x72($a2) -/* 0334B4 800328B4 01B00019 */ multu $t5, $s0 -/* 0334B8 800328B8 00507823 */ subu $t7, $v0, $s0 -/* 0334BC 800328BC A4CF007A */ sh $t7, 0x7a($a2) -/* 0334C0 800328C0 00006012 */ mflo $t4 -/* 0334C4 800328C4 032CC021 */ addu $t8, $t9, $t4 -/* 0334C8 800328C8 10000008 */ b .L800328EC -/* 0334CC 800328CC A4D80072 */ sh $t8, 0x72($a2) -.L800328D0: -/* 0334D0 800328D0 84CD0076 */ lh $t5, 0x76($a2) -/* 0334D4 800328D4 84CE0072 */ lh $t6, 0x72($a2) -/* 0334D8 800328D8 01A20019 */ multu $t5, $v0 -/* 0334DC 800328DC A4C0007A */ sh $zero, 0x7a($a2) -/* 0334E0 800328E0 0000C812 */ mflo $t9 -/* 0334E4 800328E4 01D96021 */ addu $t4, $t6, $t9 -/* 0334E8 800328E8 A4CC0072 */ sh $t4, 0x72($a2) -.L800328EC: -/* 0334EC 800328EC A0CB0005 */ sb $t3, 5($a2) -.L800328F0: -/* 0334F0 800328F0 90D80005 */ lbu $t8, 5($a2) -/* 0334F4 800328F4 00000000 */ nop -/* 0334F8 800328F8 130000A9 */ beqz $t8, .L80032BA0 -/* 0334FC 800328FC 8FBF001C */ lw $ra, 0x1c($sp) -/* 033500 80032900 C4C20010 */ lwc1 $f2, 0x10($a2) -/* 033504 80032904 C4C0005C */ lwc1 $f0, 0x5c($a2) -/* 033508 80032908 90CC0000 */ lbu $t4, ($a2) -/* 03350C 8003290C 46001281 */ sub.s $f10, $f2, $f0 -/* 033510 80032910 24D0007C */ addiu $s0, $a2, 0x7c -/* 033514 80032914 444FF800 */ cfc1 $t7, $31 -/* 033518 80032918 02002825 */ move $a1, $s0 -/* 03351C 8003291C 35E10003 */ ori $at, $t7, 3 -/* 033520 80032920 38210002 */ xori $at, $at, 2 -/* 033524 80032924 44C1F800 */ ctc1 $at, $31 -/* 033528 80032928 27A40040 */ addiu $a0, $sp, 0x40 -/* 03352C 8003292C 46005424 */ cvt.w.s $f16, $f10 -/* 033530 80032930 44CFF800 */ ctc1 $t7, $31 -/* 033534 80032934 440D8000 */ mfc1 $t5, $f16 -/* 033538 80032938 46001480 */ add.s $f18, $f2, $f0 -/* 03353C 8003293C A4CD0050 */ sh $t5, 0x50($a2) -/* 033540 80032940 444EF800 */ cfc1 $t6, $31 -/* 033544 80032944 00000000 */ nop -/* 033548 80032948 35C10003 */ ori $at, $t6, 3 -/* 03354C 8003294C 38210002 */ xori $at, $at, 2 -/* 033550 80032950 44C1F800 */ ctc1 $at, $31 -/* 033554 80032954 24010001 */ li $at, 1 -/* 033558 80032958 46009124 */ cvt.w.s $f4, $f18 -/* 03355C 8003295C 44192000 */ mfc1 $t9, $f4 -/* 033560 80032960 44CEF800 */ ctc1 $t6, $31 -/* 033564 80032964 1581001A */ bne $t4, $at, .L800329D0 -/* 033568 80032968 A4D90056 */ sh $t9, 0x56($a2) -/* 03356C 8003296C C4C20014 */ lwc1 $f2, 0x14($a2) -/* 033570 80032970 00000000 */ nop -/* 033574 80032974 46001181 */ sub.s $f6, $f2, $f0 -/* 033578 80032978 4458F800 */ cfc1 $t8, $31 -/* 03357C 8003297C 00000000 */ nop -/* 033580 80032980 37010003 */ ori $at, $t8, 3 -/* 033584 80032984 38210002 */ xori $at, $at, 2 -/* 033588 80032988 44C1F800 */ ctc1 $at, $31 -/* 03358C 8003298C 00000000 */ nop -/* 033590 80032990 46003224 */ cvt.w.s $f8, $f6 -/* 033594 80032994 44D8F800 */ ctc1 $t8, $31 -/* 033598 80032998 440F4000 */ mfc1 $t7, $f8 -/* 03359C 8003299C 46001280 */ add.s $f10, $f2, $f0 -/* 0335A0 800329A0 A4CF0052 */ sh $t7, 0x52($a2) -/* 0335A4 800329A4 444DF800 */ cfc1 $t5, $31 -/* 0335A8 800329A8 00000000 */ nop -/* 0335AC 800329AC 35A10003 */ ori $at, $t5, 3 -/* 0335B0 800329B0 38210002 */ xori $at, $at, 2 -/* 0335B4 800329B4 44C1F800 */ ctc1 $at, $31 -/* 0335B8 800329B8 00000000 */ nop -/* 0335BC 800329BC 46005424 */ cvt.w.s $f16, $f10 -/* 0335C0 800329C0 440E8000 */ mfc1 $t6, $f16 -/* 0335C4 800329C4 44CDF800 */ ctc1 $t5, $31 -/* 0335C8 800329C8 1000001B */ b .L80032A38 -/* 0335CC 800329CC A4CE0058 */ sh $t6, 0x58($a2) -.L800329D0: -/* 0335D0 800329D0 C4C20014 */ lwc1 $f2, 0x14($a2) -/* 0335D4 800329D4 C4C00060 */ lwc1 $f0, 0x60($a2) -/* 0335D8 800329D8 00000000 */ nop -/* 0335DC 800329DC 46001481 */ sub.s $f18, $f2, $f0 -/* 0335E0 800329E0 4459F800 */ cfc1 $t9, $31 -/* 0335E4 800329E4 00000000 */ nop -/* 0335E8 800329E8 37210003 */ ori $at, $t9, 3 -/* 0335EC 800329EC 38210002 */ xori $at, $at, 2 -/* 0335F0 800329F0 44C1F800 */ ctc1 $at, $31 -/* 0335F4 800329F4 00000000 */ nop -/* 0335F8 800329F8 46009124 */ cvt.w.s $f4, $f18 -/* 0335FC 800329FC 44D9F800 */ ctc1 $t9, $31 -/* 033600 80032A00 440C2000 */ mfc1 $t4, $f4 -/* 033604 80032A04 46001180 */ add.s $f6, $f2, $f0 -/* 033608 80032A08 A4CC0052 */ sh $t4, 0x52($a2) -/* 03360C 80032A0C 4458F800 */ cfc1 $t8, $31 -/* 033610 80032A10 00000000 */ nop -/* 033614 80032A14 37010003 */ ori $at, $t8, 3 -/* 033618 80032A18 38210002 */ xori $at, $at, 2 -/* 03361C 80032A1C 44C1F800 */ ctc1 $at, $31 -/* 033620 80032A20 00000000 */ nop -/* 033624 80032A24 46003224 */ cvt.w.s $f8, $f6 -/* 033628 80032A28 440F4000 */ mfc1 $t7, $f8 -/* 03362C 80032A2C 44D8F800 */ ctc1 $t8, $31 -/* 033630 80032A30 A4CF0058 */ sh $t7, 0x58($a2) -/* 033634 80032A34 00000000 */ nop -.L80032A38: -/* 033638 80032A38 90CD0000 */ lbu $t5, ($a2) -/* 03363C 80032A3C 00000000 */ nop -/* 033640 80032A40 15A0001B */ bnez $t5, .L80032AB0 -/* 033644 80032A44 00000000 */ nop -/* 033648 80032A48 C4C20018 */ lwc1 $f2, 0x18($a2) -/* 03364C 80032A4C C4C00064 */ lwc1 $f0, 0x64($a2) -/* 033650 80032A50 00000000 */ nop -/* 033654 80032A54 46001281 */ sub.s $f10, $f2, $f0 -/* 033658 80032A58 444EF800 */ cfc1 $t6, $31 -/* 03365C 80032A5C 00000000 */ nop -/* 033660 80032A60 35C10003 */ ori $at, $t6, 3 -/* 033664 80032A64 38210002 */ xori $at, $at, 2 -/* 033668 80032A68 44C1F800 */ ctc1 $at, $31 -/* 03366C 80032A6C 00000000 */ nop -/* 033670 80032A70 46005424 */ cvt.w.s $f16, $f10 -/* 033674 80032A74 44CEF800 */ ctc1 $t6, $31 -/* 033678 80032A78 44198000 */ mfc1 $t9, $f16 -/* 03367C 80032A7C 46001480 */ add.s $f18, $f2, $f0 -/* 033680 80032A80 A4D90054 */ sh $t9, 0x54($a2) -/* 033684 80032A84 444CF800 */ cfc1 $t4, $31 -/* 033688 80032A88 00000000 */ nop -/* 03368C 80032A8C 35810003 */ ori $at, $t4, 3 -/* 033690 80032A90 38210002 */ xori $at, $at, 2 -/* 033694 80032A94 44C1F800 */ ctc1 $at, $31 -/* 033698 80032A98 00000000 */ nop -/* 03369C 80032A9C 46009124 */ cvt.w.s $f4, $f18 -/* 0336A0 80032AA0 44182000 */ mfc1 $t8, $f4 -/* 0336A4 80032AA4 44CCF800 */ ctc1 $t4, $31 -/* 0336A8 80032AA8 1000001B */ b .L80032B18 -/* 0336AC 80032AAC A4D8005A */ sh $t8, 0x5a($a2) -.L80032AB0: -/* 0336B0 80032AB0 C4C20018 */ lwc1 $f2, 0x18($a2) -/* 0336B4 80032AB4 C4C0005C */ lwc1 $f0, 0x5c($a2) -/* 0336B8 80032AB8 00000000 */ nop -/* 0336BC 80032ABC 46001181 */ sub.s $f6, $f2, $f0 -/* 0336C0 80032AC0 444FF800 */ cfc1 $t7, $31 -/* 0336C4 80032AC4 00000000 */ nop -/* 0336C8 80032AC8 35E10003 */ ori $at, $t7, 3 -/* 0336CC 80032ACC 38210002 */ xori $at, $at, 2 -/* 0336D0 80032AD0 44C1F800 */ ctc1 $at, $31 -/* 0336D4 80032AD4 00000000 */ nop -/* 0336D8 80032AD8 46003224 */ cvt.w.s $f8, $f6 -/* 0336DC 80032ADC 44CFF800 */ ctc1 $t7, $31 -/* 0336E0 80032AE0 440D4000 */ mfc1 $t5, $f8 -/* 0336E4 80032AE4 46001280 */ add.s $f10, $f2, $f0 -/* 0336E8 80032AE8 A4CD0054 */ sh $t5, 0x54($a2) -/* 0336EC 80032AEC 444EF800 */ cfc1 $t6, $31 -/* 0336F0 80032AF0 00000000 */ nop -/* 0336F4 80032AF4 35C10003 */ ori $at, $t6, 3 -/* 0336F8 80032AF8 38210002 */ xori $at, $at, 2 -/* 0336FC 80032AFC 44C1F800 */ ctc1 $at, $31 -/* 033700 80032B00 00000000 */ nop -/* 033704 80032B04 46005424 */ cvt.w.s $f16, $f10 -/* 033708 80032B08 44198000 */ mfc1 $t9, $f16 -/* 03370C 80032B0C 44CEF800 */ ctc1 $t6, $31 -/* 033710 80032B10 A4D9005A */ sh $t9, 0x5a($a2) -/* 033714 80032B14 00000000 */ nop -.L80032B18: -/* 033718 80032B18 90CC0001 */ lbu $t4, 1($a2) -/* 03371C 80032B1C 24010002 */ li $at, 2 -/* 033720 80032B20 1581001D */ bne $t4, $at, .L80032B98 -/* 033724 80032B24 3C01BF80 */ li $at, 0xBF800000 # -1.000000 -/* 033728 80032B28 44819000 */ mtc1 $at, $f18 -/* 03372C 80032B2C 84D80070 */ lh $t8, 0x70($a2) -/* 033730 80032B30 E4D20084 */ swc1 $f18, 0x84($a2) -/* 033734 80032B34 A7B80040 */ sh $t8, 0x40($sp) -/* 033738 80032B38 84CF0072 */ lh $t7, 0x72($a2) -/* 03373C 80032B3C A7A00044 */ sh $zero, 0x44($sp) -/* 033740 80032B40 AFA60048 */ sw $a2, 0x48($sp) -/* 033744 80032B44 0C01C124 */ jal func_80070490 -/* 033748 80032B48 A7AF0042 */ sh $t7, 0x42($sp) -/* 03374C 80032B4C 8FA60048 */ lw $a2, 0x48($sp) -/* 033750 80032B50 02002825 */ move $a1, $s0 -/* 033754 80032B54 8CC7000C */ lw $a3, 0xc($a2) -/* 033758 80032B58 00000000 */ nop -/* 03375C 80032B5C 10E00005 */ beqz $a3, .L80032B74 -/* 033760 80032B60 00E02025 */ move $a0, $a3 -/* 033764 80032B64 0C01C0C8 */ jal func_80070320 -/* 033768 80032B68 AFA60048 */ sw $a2, 0x48($sp) -/* 03376C 80032B6C 8FA60048 */ lw $a2, 0x48($sp) -/* 033770 80032B70 00000000 */ nop -.L80032B74: -/* 033774 80032B74 C4C4007C */ lwc1 $f4, 0x7c($a2) -/* 033778 80032B78 C4C80080 */ lwc1 $f8, 0x80($a2) -/* 03377C 80032B7C C4D00084 */ lwc1 $f16, 0x84($a2) -/* 033780 80032B80 46002187 */ neg.s $f6, $f4 -/* 033784 80032B84 46004287 */ neg.s $f10, $f8 -/* 033788 80032B88 46008487 */ neg.s $f18, $f16 -/* 03378C 80032B8C E4C6007C */ swc1 $f6, 0x7c($a2) -/* 033790 80032B90 E4CA0080 */ swc1 $f10, 0x80($a2) -/* 033794 80032B94 E4D20084 */ swc1 $f18, 0x84($a2) -.L80032B98: -/* 033798 80032B98 A0C00005 */ sb $zero, 5($a2) -/* 03379C 80032B9C 8FBF001C */ lw $ra, 0x1c($sp) -.L80032BA0: -/* 0337A0 80032BA0 8FB00018 */ lw $s0, 0x18($sp) -/* 0337A4 80032BA4 03E00008 */ jr $ra -/* 0337A8 80032BA8 27BD0048 */ addiu $sp, $sp, 0x48 - -glabel func_80032BAC -/* 0337AC 80032BAC 3C08800E */ lui $t0, %hi(D_800DC95C) # $t0, 0x800e -/* 0337B0 80032BB0 2508C95C */ addiu $t0, %lo(D_800DC95C) # addiu $t0, $t0, -0x36a4 -/* 0337B4 80032BB4 8D050000 */ lw $a1, ($t0) -/* 0337B8 80032BB8 00001025 */ move $v0, $zero -/* 0337BC 80032BBC 18A0000E */ blez $a1, .L80032BF8 -/* 0337C0 80032BC0 00001825 */ move $v1, $zero -/* 0337C4 80032BC4 3C0E800E */ lui $t6, %hi(D_800DC950) # $t6, 0x800e -/* 0337C8 80032BC8 8DCEC950 */ lw $t6, %lo(D_800DC950)($t6) -/* 0337CC 80032BCC 00007880 */ sll $t7, $zero, 2 -/* 0337D0 80032BD0 01CF3021 */ addu $a2, $t6, $t7 -.L80032BD4: -/* 0337D4 80032BD4 8CC70000 */ lw $a3, ($a2) -/* 0337D8 80032BD8 24630001 */ addiu $v1, $v1, 1 -/* 0337DC 80032BDC 14870002 */ bne $a0, $a3, .L80032BE8 -/* 0337E0 80032BE0 0065082A */ slt $at, $v1, $a1 -/* 0337E4 80032BE4 00E01025 */ move $v0, $a3 -.L80032BE8: -/* 0337E8 80032BE8 10200003 */ beqz $at, .L80032BF8 -/* 0337EC 80032BEC 24C60004 */ addiu $a2, $a2, 4 -/* 0337F0 80032BF0 1040FFF8 */ beqz $v0, .L80032BD4 -/* 0337F4 80032BF4 00000000 */ nop -.L80032BF8: -/* 0337F8 80032BF8 1040001A */ beqz $v0, .L80032C64 -/* 0337FC 80032BFC 24B8FFFF */ addiu $t8, $a1, -1 -/* 033800 80032C00 2463FFFF */ addiu $v1, $v1, -1 -/* 033804 80032C04 0078082A */ slt $at, $v1, $t8 -/* 033808 80032C08 AD180000 */ sw $t8, ($t0) -/* 03380C 80032C0C 1020000F */ beqz $at, .L80032C4C -/* 033810 80032C10 03002825 */ move $a1, $t8 -/* 033814 80032C14 3C07800E */ lui $a3, %hi(D_800DC950) # $a3, 0x800e -/* 033818 80032C18 24E7C950 */ addiu $a3, %lo(D_800DC950) # addiu $a3, $a3, -0x36b0 -/* 03381C 80032C1C 00032080 */ sll $a0, $v1, 2 -.L80032C20: -/* 033820 80032C20 8CF90000 */ lw $t9, ($a3) -/* 033824 80032C24 24630001 */ addiu $v1, $v1, 1 -/* 033828 80032C28 03243021 */ addu $a2, $t9, $a0 -/* 03382C 80032C2C 8CC90004 */ lw $t1, 4($a2) -/* 033830 80032C30 24840004 */ addiu $a0, $a0, 4 -/* 033834 80032C34 ACC90000 */ sw $t1, ($a2) -/* 033838 80032C38 8D050000 */ lw $a1, ($t0) -/* 03383C 80032C3C 00000000 */ nop -/* 033840 80032C40 0065082A */ slt $at, $v1, $a1 -/* 033844 80032C44 1420FFF6 */ bnez $at, .L80032C20 -/* 033848 80032C48 00000000 */ nop -.L80032C4C: -/* 03384C 80032C4C 3C07800E */ lui $a3, %hi(D_800DC950) # $a3, 0x800e -/* 033850 80032C50 24E7C950 */ addiu $a3, %lo(D_800DC950) # addiu $a3, $a3, -0x36b0 -/* 033854 80032C54 8CEA0000 */ lw $t2, ($a3) -/* 033858 80032C58 00055880 */ sll $t3, $a1, 2 -/* 03385C 80032C5C 014B6021 */ addu $t4, $t2, $t3 -/* 033860 80032C60 AD820000 */ sw $v0, ($t4) -.L80032C64: -/* 033864 80032C64 03E00008 */ jr $ra -/* 033868 80032C68 00000000 */ nop - -glabel func_80032C6C -/* 03386C 80032C6C 3C02800E */ lui $v0, %hi(D_800DC95C) # $v0, 0x800e -/* 033870 80032C70 8C42C95C */ lw $v0, %lo(D_800DC95C)($v0) -/* 033874 80032C74 03E00008 */ jr $ra -/* 033878 80032C78 00000000 */ nop - -glabel func_80032C7C -/* 03387C 80032C7C 27BDFF70 */ addiu $sp, $sp, -0x90 -/* 033880 80032C80 AFBF005C */ sw $ra, 0x5c($sp) -/* 033884 80032C84 AFBE0058 */ sw $fp, 0x58($sp) -/* 033888 80032C88 AFB70054 */ sw $s7, 0x54($sp) -/* 03388C 80032C8C AFB60050 */ sw $s6, 0x50($sp) -/* 033890 80032C90 AFB5004C */ sw $s5, 0x4c($sp) -/* 033894 80032C94 AFB40048 */ sw $s4, 0x48($sp) -/* 033898 80032C98 AFB30044 */ sw $s3, 0x44($sp) -/* 03389C 80032C9C AFB20040 */ sw $s2, 0x40($sp) -/* 0338A0 80032CA0 AFB1003C */ sw $s1, 0x3c($sp) -/* 0338A4 80032CA4 AFB00038 */ sw $s0, 0x38($sp) -/* 0338A8 80032CA8 E7BB0030 */ swc1 $f27, 0x30($sp) -/* 0338AC 80032CAC E7BA0034 */ swc1 $f26, 0x34($sp) -/* 0338B0 80032CB0 E7B90028 */ swc1 $f25, 0x28($sp) -/* 0338B4 80032CB4 E7B8002C */ swc1 $f24, 0x2c($sp) -/* 0338B8 80032CB8 E7B70020 */ swc1 $f23, 0x20($sp) -/* 0338BC 80032CBC E7B60024 */ swc1 $f22, 0x24($sp) -/* 0338C0 80032CC0 E7B50018 */ swc1 $f21, 0x18($sp) -/* 0338C4 80032CC4 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 0338C8 80032CC8 8C830040 */ lw $v1, 0x40($a0) -/* 0338CC 80032CCC 0080F025 */ move $fp, $a0 -/* 0338D0 80032CD0 906E003D */ lbu $t6, 0x3d($v1) -/* 0338D4 80032CD4 00000000 */ nop -/* 0338D8 80032CD8 15C002AF */ bnez $t6, .L80033798 -/* 0338DC 80032CDC 8FBF005C */ lw $ra, 0x5c($sp) -/* 0338E0 80032CE0 80620053 */ lb $v0, 0x53($v1) -/* 0338E4 80032CE4 24010001 */ li $at, 1 -/* 0338E8 80032CE8 10400009 */ beqz $v0, .L80032D10 -/* 0338EC 80032CEC 3C178012 */ lui $s7, %hi(D_8011D4CC) # $s7, 0x8012 -/* 0338F0 80032CF0 10410009 */ beq $v0, $at, .L80032D18 -/* 0338F4 80032CF4 24010002 */ li $at, 2 -/* 0338F8 80032CF8 10410009 */ beq $v0, $at, .L80032D20 -/* 0338FC 80032CFC 24010003 */ li $at, 3 -/* 033900 80032D00 10410009 */ beq $v0, $at, .L80032D28 -/* 033904 80032D04 24030004 */ li $v1, 4 -/* 033908 80032D08 10000007 */ b .L80032D28 -/* 03390C 80032D0C 00001825 */ move $v1, $zero -.L80032D10: -/* 033910 80032D10 10000005 */ b .L80032D28 -/* 033914 80032D14 24030002 */ li $v1, 2 -.L80032D18: -/* 033918 80032D18 10000003 */ b .L80032D28 -/* 03391C 80032D1C 24030004 */ li $v1, 4 -.L80032D20: -/* 033920 80032D20 10000001 */ b .L80032D28 -/* 033924 80032D24 24030004 */ li $v1, 4 -.L80032D28: -/* 033928 80032D28 444FF800 */ cfc1 $t7, $31 -/* 03392C 80032D2C C7C4000C */ lwc1 $f4, 0xc($fp) -/* 033930 80032D30 35E10003 */ ori $at, $t7, 3 -/* 033934 80032D34 38210002 */ xori $at, $at, 2 -/* 033938 80032D38 44C1F800 */ ctc1 $at, $31 -/* 03393C 80032D3C 3C11800E */ lui $s1, %hi(D_800DC968) # $s1, 0x800e -/* 033940 80032D40 460021A4 */ cvt.w.s $f6, $f4 -/* 033944 80032D44 2631C968 */ addiu $s1, %lo(D_800DC968) # addiu $s1, $s1, -0x3698 -/* 033948 80032D48 44CFF800 */ ctc1 $t7, $31 -/* 03394C 80032D4C 44183000 */ mfc1 $t8, $f6 -/* 033950 80032D50 3C0D800E */ lui $t5, %hi(D_800DC95C) # $t5, 0x800e -/* 033954 80032D54 4459F800 */ cfc1 $t9, $31 -/* 033958 80032D58 A7B80082 */ sh $t8, 0x82($sp) -/* 03395C 80032D5C 37210003 */ ori $at, $t9, 3 -/* 033960 80032D60 38210002 */ xori $at, $at, 2 -/* 033964 80032D64 44C1F800 */ ctc1 $at, $31 -/* 033968 80032D68 C7C80010 */ lwc1 $f8, 0x10($fp) -/* 03396C 80032D6C 0000A825 */ move $s5, $zero -/* 033970 80032D70 460042A4 */ cvt.w.s $f10, $f8 -/* 033974 80032D74 00001025 */ move $v0, $zero -/* 033978 80032D78 44D9F800 */ ctc1 $t9, $31 -/* 03397C 80032D7C 440A5000 */ mfc1 $t2, $f10 -/* 033980 80032D80 26F7D4CC */ addiu $s7, %lo(D_8011D4CC) # addiu $s7, $s7, -0x2b34 -/* 033984 80032D84 444BF800 */ cfc1 $t3, $31 -/* 033988 80032D88 A7AA0080 */ sh $t2, 0x80($sp) -/* 03398C 80032D8C 35610003 */ ori $at, $t3, 3 -/* 033990 80032D90 38210002 */ xori $at, $at, 2 -/* 033994 80032D94 44C1F800 */ ctc1 $at, $31 -/* 033998 80032D98 C7D00014 */ lwc1 $f16, 0x14($fp) -/* 03399C 80032D9C AE200000 */ sw $zero, ($s1) -/* 0339A0 80032DA0 460084A4 */ cvt.w.s $f18, $f16 -/* 0339A4 80032DA4 8DADC95C */ lw $t5, %lo(D_800DC95C)($t5) -/* 0339A8 80032DA8 440C9000 */ mfc1 $t4, $f18 -/* 0339AC 80032DAC 44CBF800 */ ctc1 $t3, $31 -/* 0339B0 80032DB0 19A00137 */ blez $t5, .L80033290 -/* 0339B4 80032DB4 A7AC007E */ sh $t4, 0x7e($sp) -/* 0339B8 80032DB8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0339BC 80032DBC 3C168012 */ lui $s6, %hi(D_8011D4C4) # $s6, 0x8012 -/* 0339C0 80032DC0 3C148012 */ lui $s4, %hi(D_8011D4C8) # $s4, 0x8012 -/* 0339C4 80032DC4 3C13800E */ lui $s3, %hi(D_800DC960) # $s3, 0x800e -/* 0339C8 80032DC8 4481C000 */ mtc1 $at, $f24 -/* 0339CC 80032DCC 4480D000 */ mtc1 $zero, $f26 -/* 0339D0 80032DD0 4480B000 */ mtc1 $zero, $f22 -/* 0339D4 80032DD4 2673C960 */ addiu $s3, %lo(D_800DC960) # addiu $s3, $s3, -0x36a0 -/* 0339D8 80032DD8 2694D4C8 */ addiu $s4, %lo(D_8011D4C8) # addiu $s4, $s4, -0x2b38 -/* 0339DC 80032DDC 26D6D4C4 */ addiu $s6, %lo(D_8011D4C4) # addiu $s6, $s6, -0x2b3c -/* 0339E0 80032DE0 AFA30064 */ sw $v1, 0x64($sp) -/* 0339E4 80032DE4 24120014 */ li $s2, 20 -.L80032DE8: -/* 0339E8 80032DE8 3C0E800E */ lui $t6, %hi(D_800DC950) # $t6, 0x800e -/* 0339EC 80032DEC 8DCEC950 */ lw $t6, %lo(D_800DC950)($t6) -/* 0339F0 80032DF0 8FB90064 */ lw $t9, 0x64($sp) -/* 0339F4 80032DF4 01C27821 */ addu $t7, $t6, $v0 -/* 0339F8 80032DF8 8DF00000 */ lw $s0, ($t7) -/* 0339FC 80032DFC 00000000 */ nop -/* 033A00 80032E00 92180002 */ lbu $t8, 2($s0) -/* 033A04 80032E04 00000000 */ nop -/* 033A08 80032E08 03195024 */ and $t2, $t8, $t9 -/* 033A0C 80032E0C 1140011A */ beqz $t2, .L80033278 -/* 033A10 80032E10 00000000 */ nop -/* 033A14 80032E14 920B0004 */ lbu $t3, 4($s0) -/* 033A18 80032E18 24010001 */ li $at, 1 -/* 033A1C 80032E1C 15610116 */ bne $t3, $at, .L80033278 -/* 033A20 80032E20 00000000 */ nop -/* 033A24 80032E24 87AC0082 */ lh $t4, 0x82($sp) -/* 033A28 80032E28 860D0050 */ lh $t5, 0x50($s0) -/* 033A2C 80032E2C 00000000 */ nop -/* 033A30 80032E30 018D082A */ slt $at, $t4, $t5 -/* 033A34 80032E34 14200110 */ bnez $at, .L80033278 -/* 033A38 80032E38 00000000 */ nop -/* 033A3C 80032E3C 860E0056 */ lh $t6, 0x56($s0) -/* 033A40 80032E40 87AF0080 */ lh $t7, 0x80($sp) -/* 033A44 80032E44 01CC082A */ slt $at, $t6, $t4 -/* 033A48 80032E48 1420010B */ bnez $at, .L80033278 -/* 033A4C 80032E4C 00000000 */ nop -/* 033A50 80032E50 86180052 */ lh $t8, 0x52($s0) -/* 033A54 80032E54 00000000 */ nop -/* 033A58 80032E58 01F8082A */ slt $at, $t7, $t8 -/* 033A5C 80032E5C 14200106 */ bnez $at, .L80033278 -/* 033A60 80032E60 00000000 */ nop -/* 033A64 80032E64 86190058 */ lh $t9, 0x58($s0) -/* 033A68 80032E68 87AA007E */ lh $t2, 0x7e($sp) -/* 033A6C 80032E6C 032F082A */ slt $at, $t9, $t7 -/* 033A70 80032E70 14200101 */ bnez $at, .L80033278 -/* 033A74 80032E74 00000000 */ nop -/* 033A78 80032E78 860B0054 */ lh $t3, 0x54($s0) -/* 033A7C 80032E7C 00000000 */ nop -/* 033A80 80032E80 014B082A */ slt $at, $t2, $t3 -/* 033A84 80032E84 142000FC */ bnez $at, .L80033278 -/* 033A88 80032E88 00000000 */ nop -/* 033A8C 80032E8C 860D005A */ lh $t5, 0x5a($s0) -/* 033A90 80032E90 00000000 */ nop -/* 033A94 80032E94 01AA082A */ slt $at, $t5, $t2 -/* 033A98 80032E98 142000F7 */ bnez $at, .L80033278 -/* 033A9C 80032E9C 00000000 */ nop -/* 033AA0 80032EA0 920E0000 */ lbu $t6, ($s0) -/* 033AA4 80032EA4 00000000 */ nop -/* 033AA8 80032EA8 15C00035 */ bnez $t6, .L80032F80 -/* 033AAC 80032EAC 00000000 */ nop -/* 033AB0 80032EB0 8E0C0028 */ lw $t4, 0x28($s0) -/* 033AB4 80032EB4 3C010001 */ lui $at, 1 -/* 033AB8 80032EB8 0181082A */ slt $at, $t4, $at -/* 033ABC 80032EBC 142000EE */ bnez $at, .L80033278 -/* 033AC0 80032EC0 00000000 */ nop -/* 033AC4 80032EC4 8E390000 */ lw $t9, ($s1) -/* 033AC8 80032EC8 8E780000 */ lw $t8, ($s3) -/* 033ACC 80032ECC 03320019 */ multu $t9, $s2 -/* 033AD0 80032ED0 00007812 */ mflo $t7 -/* 033AD4 80032ED4 030F5821 */ addu $t3, $t8, $t7 -/* 033AD8 80032ED8 AD700000 */ sw $s0, ($t3) -/* 033ADC 80032EDC 8E2C0000 */ lw $t4, ($s1) -/* 033AE0 80032EE0 8E6E0000 */ lw $t6, ($s3) -/* 033AE4 80032EE4 01920019 */ multu $t4, $s2 -/* 033AE8 80032EE8 8E0D001C */ lw $t5, 0x1c($s0) -/* 033AEC 80032EEC 00000000 */ nop -/* 033AF0 80032EF0 000D5403 */ sra $t2, $t5, 0x10 -/* 033AF4 80032EF4 0000C812 */ mflo $t9 -/* 033AF8 80032EF8 01D9C021 */ addu $t8, $t6, $t9 -/* 033AFC 80032EFC AF0A0004 */ sw $t2, 4($t8) -/* 033B00 80032F00 8E2C0000 */ lw $t4, ($s1) -/* 033B04 80032F04 8E6D0000 */ lw $t5, ($s3) -/* 033B08 80032F08 01920019 */ multu $t4, $s2 -/* 033B0C 80032F0C 8E0F0020 */ lw $t7, 0x20($s0) -/* 033B10 80032F10 00000000 */ nop -/* 033B14 80032F14 000F5C03 */ sra $t3, $t7, 0x10 -/* 033B18 80032F18 00007012 */ mflo $t6 -/* 033B1C 80032F1C 01AEC821 */ addu $t9, $t5, $t6 -/* 033B20 80032F20 AF2B0008 */ sw $t3, 8($t9) -/* 033B24 80032F24 8E2C0000 */ lw $t4, ($s1) -/* 033B28 80032F28 8E6F0000 */ lw $t7, ($s3) -/* 033B2C 80032F2C 01920019 */ multu $t4, $s2 -/* 033B30 80032F30 8E0A0024 */ lw $t2, 0x24($s0) -/* 033B34 80032F34 00000000 */ nop -/* 033B38 80032F38 000AC403 */ sra $t8, $t2, 0x10 -/* 033B3C 80032F3C 00006812 */ mflo $t5 -/* 033B40 80032F40 01ED7021 */ addu $t6, $t7, $t5 -/* 033B44 80032F44 ADD8000C */ sw $t8, 0xc($t6) -/* 033B48 80032F48 8E2C0000 */ lw $t4, ($s1) -/* 033B4C 80032F4C 8E6A0000 */ lw $t2, ($s3) -/* 033B50 80032F50 01920019 */ multu $t4, $s2 -/* 033B54 80032F54 8E0B0028 */ lw $t3, 0x28($s0) -/* 033B58 80032F58 00000000 */ nop -/* 033B5C 80032F5C 000BCC03 */ sra $t9, $t3, 0x10 -/* 033B60 80032F60 00007812 */ mflo $t7 -/* 033B64 80032F64 014F6821 */ addu $t5, $t2, $t7 -/* 033B68 80032F68 ADB90010 */ sw $t9, 0x10($t5) -/* 033B6C 80032F6C 8E380000 */ lw $t8, ($s1) -/* 033B70 80032F70 00000000 */ nop -/* 033B74 80032F74 270E0001 */ addiu $t6, $t8, 1 -/* 033B78 80032F78 100000BF */ b .L80033278 -/* 033B7C 80032F7C AE2E0000 */ sw $t6, ($s1) -.L80032F80: -/* 033B80 80032F80 C6040010 */ lwc1 $f4, 0x10($s0) -/* 033B84 80032F84 C7C6000C */ lwc1 $f6, 0xc($fp) -/* 033B88 80032F88 24010002 */ li $at, 2 -/* 033B8C 80032F8C 46062201 */ sub.s $f8, $f4, $f6 -/* 033B90 80032F90 E6C80000 */ swc1 $f8, ($s6) -/* 033B94 80032F94 C7D00010 */ lwc1 $f16, 0x10($fp) -/* 033B98 80032F98 C60A0014 */ lwc1 $f10, 0x14($s0) -/* 033B9C 80032F9C 00000000 */ nop -/* 033BA0 80032FA0 46105481 */ sub.s $f18, $f10, $f16 -/* 033BA4 80032FA4 E6920000 */ swc1 $f18, ($s4) -/* 033BA8 80032FA8 C7C60014 */ lwc1 $f6, 0x14($fp) -/* 033BAC 80032FAC C6040018 */ lwc1 $f4, 0x18($s0) -/* 033BB0 80032FB0 00000000 */ nop -/* 033BB4 80032FB4 46062201 */ sub.s $f8, $f4, $f6 -/* 033BB8 80032FB8 E6E80000 */ swc1 $f8, ($s7) -/* 033BBC 80032FBC 920B0000 */ lbu $t3, ($s0) -/* 033BC0 80032FC0 00000000 */ nop -/* 033BC4 80032FC4 15610002 */ bne $t3, $at, .L80032FD0 -/* 033BC8 80032FC8 00000000 */ nop -/* 033BCC 80032FCC E6960000 */ swc1 $f22, ($s4) -.L80032FD0: -/* 033BD0 80032FD0 C6C00000 */ lwc1 $f0, ($s6) -/* 033BD4 80032FD4 C6820000 */ lwc1 $f2, ($s4) -/* 033BD8 80032FD8 46000282 */ mul.s $f10, $f0, $f0 -/* 033BDC 80032FDC C6EC0000 */ lwc1 $f12, ($s7) -/* 033BE0 80032FE0 3C018012 */ lui $at, %hi(D_8011D4C0) # $at, 0x8012 -/* 033BE4 80032FE4 46021402 */ mul.s $f16, $f2, $f2 -/* 033BE8 80032FE8 00000000 */ nop -/* 033BEC 80032FEC 460C6102 */ mul.s $f4, $f12, $f12 -/* 033BF0 80032FF0 46105480 */ add.s $f18, $f10, $f16 -/* 033BF4 80032FF4 46049180 */ add.s $f6, $f18, $f4 -/* 033BF8 80032FF8 E426D4C0 */ swc1 $f6, %lo(D_8011D4C0)($at) -/* 033BFC 80032FFC C6080068 */ lwc1 $f8, 0x68($s0) -/* 033C00 80033000 00000000 */ nop -/* 033C04 80033004 4608303C */ c.lt.s $f6, $f8 -/* 033C08 80033008 00000000 */ nop -/* 033C0C 8003300C 4500009A */ bc1f .L80033278 -/* 033C10 80033010 00000000 */ nop -/* 033C14 80033014 920C0001 */ lbu $t4, 1($s0) -/* 033C18 80033018 24010002 */ li $at, 2 -/* 033C1C 8003301C 15810006 */ bne $t4, $at, .L80033038 -/* 033C20 80033020 02002025 */ move $a0, $s0 -/* 033C24 80033024 0C00CF02 */ jal func_80033C08 -/* 033C28 80033028 AFA20068 */ sw $v0, 0x68($sp) -/* 033C2C 8003302C 8FA20068 */ lw $v0, 0x68($sp) -/* 033C30 80033030 10000002 */ b .L8003303C -/* 033C34 80033034 46000506 */ mov.s $f20, $f0 -.L80033038: -/* 033C38 80033038 4600C506 */ mov.s $f20, $f24 -.L8003303C: -/* 033C3C 8003303C 4614B03C */ c.lt.s $f22, $f20 -/* 033C40 80033040 02002025 */ move $a0, $s0 -/* 033C44 80033044 4500008C */ bc1f .L80033278 -/* 033C48 80033048 00000000 */ nop -/* 033C4C 8003304C 0C00CE85 */ jal func_80033A14 -/* 033C50 80033050 AFA20068 */ sw $v0, 0x68($sp) -/* 033C54 80033054 4600A502 */ mul.s $f20, $f20, $f0 -/* 033C58 80033058 8FA20068 */ lw $v0, 0x68($sp) -/* 033C5C 8003305C 3C08800E */ lui $t0, %hi(D_800DC964) # $t0, 0x800e -/* 033C60 80033060 2508C964 */ addiu $t0, %lo(D_800DC964) # addiu $t0, $t0, -0x369c -/* 033C64 80033064 4614B03C */ c.lt.s $f22, $f20 -/* 033C68 80033068 2409000C */ li $t1, 12 -/* 033C6C 8003306C 45000082 */ bc1f .L80033278 -/* 033C70 80033070 00000000 */ nop -/* 033C74 80033074 8FCA0040 */ lw $t2, 0x40($fp) -/* 033C78 80033078 3C018012 */ lui $at, %hi(D_8011D4C0) # $at, 0x8012 -/* 033C7C 8003307C 914F0071 */ lbu $t7, 0x71($t2) -/* 033C80 80033080 00000000 */ nop -/* 033C84 80033084 11E00033 */ beqz $t7, .L80033154 -/* 033C88 80033088 00000000 */ nop -/* 033C8C 8003308C C42CD4C0 */ lwc1 $f12, %lo(D_8011D4C0)($at) -/* 033C90 80033090 3C01BF80 */ li $at, 0xBF800000 # -1.000000 -/* 033C94 80033094 460CB03C */ c.lt.s $f22, $f12 -/* 033C98 80033098 00000000 */ nop -/* 033C9C 8003309C 45000014 */ bc1f .L800330F0 -/* 033CA0 800330A0 00000000 */ nop -/* 033CA4 800330A4 0C0326B4 */ jal sqrtf -/* 033CA8 800330A8 AFA20068 */ sw $v0, 0x68($sp) -/* 033CAC 800330AC 00000000 */ nop -/* 033CB0 800330B0 4600C083 */ div.s $f2, $f24, $f0 -/* 033CB4 800330B4 C6CA0000 */ lwc1 $f10, ($s6) -/* 033CB8 800330B8 C6920000 */ lwc1 $f18, ($s4) -/* 033CBC 800330BC C6E60000 */ lwc1 $f6, ($s7) -/* 033CC0 800330C0 8FA20068 */ lw $v0, 0x68($sp) -/* 033CC4 800330C4 3C08800E */ lui $t0, %hi(D_800DC964) # $t0, 0x800e -/* 033CC8 800330C8 2508C964 */ addiu $t0, %lo(D_800DC964) # addiu $t0, $t0, -0x369c -/* 033CCC 800330CC 2409000C */ li $t1, 12 -/* 033CD0 800330D0 46025402 */ mul.s $f16, $f10, $f2 -/* 033CD4 800330D4 00000000 */ nop -/* 033CD8 800330D8 46029102 */ mul.s $f4, $f18, $f2 -/* 033CDC 800330DC E6D00000 */ swc1 $f16, ($s6) -/* 033CE0 800330E0 46023202 */ mul.s $f8, $f6, $f2 -/* 033CE4 800330E4 E6840000 */ swc1 $f4, ($s4) -/* 033CE8 800330E8 10000005 */ b .L80033100 -/* 033CEC 800330EC E6E80000 */ swc1 $f8, ($s7) -.L800330F0: -/* 033CF0 800330F0 44815000 */ mtc1 $at, $f10 -/* 033CF4 800330F4 E6DA0000 */ swc1 $f26, ($s6) -/* 033CF8 800330F8 E69A0000 */ swc1 $f26, ($s4) -/* 033CFC 800330FC E6EA0000 */ swc1 $f10, ($s7) -.L80033100: -/* 033D00 80033100 8E2D0000 */ lw $t5, ($s1) -/* 033D04 80033104 8D190000 */ lw $t9, ($t0) -/* 033D08 80033108 01A90019 */ multu $t5, $t1 -/* 033D0C 8003310C C6D00000 */ lwc1 $f16, ($s6) -/* 033D10 80033110 0000C012 */ mflo $t8 -/* 033D14 80033114 03387021 */ addu $t6, $t9, $t8 -/* 033D18 80033118 E5D00000 */ swc1 $f16, ($t6) -/* 033D1C 8003311C 8E2C0000 */ lw $t4, ($s1) -/* 033D20 80033120 8D0B0000 */ lw $t3, ($t0) -/* 033D24 80033124 01890019 */ multu $t4, $t1 -/* 033D28 80033128 C6920000 */ lwc1 $f18, ($s4) -/* 033D2C 8003312C 00005012 */ mflo $t2 -/* 033D30 80033130 016A7821 */ addu $t7, $t3, $t2 -/* 033D34 80033134 E5F20004 */ swc1 $f18, 4($t7) -/* 033D38 80033138 8E390000 */ lw $t9, ($s1) -/* 033D3C 8003313C 8D0D0000 */ lw $t5, ($t0) -/* 033D40 80033140 03290019 */ multu $t9, $t1 -/* 033D44 80033144 C6E40000 */ lwc1 $f4, ($s7) -/* 033D48 80033148 0000C012 */ mflo $t8 -/* 033D4C 8003314C 01B87021 */ addu $t6, $t5, $t8 -/* 033D50 80033150 E5C40008 */ swc1 $f4, 8($t6) -.L80033154: -/* 033D54 80033154 8E2B0000 */ lw $t3, ($s1) -/* 033D58 80033158 8E6C0000 */ lw $t4, ($s3) -/* 033D5C 8003315C 01720019 */ multu $t3, $s2 -/* 033D60 80033160 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 033D64 80033164 00005012 */ mflo $t2 -/* 033D68 80033168 018A7821 */ addu $t7, $t4, $t2 -/* 033D6C 8003316C ADF00000 */ sw $s0, ($t7) -/* 033D70 80033170 8E2E0000 */ lw $t6, ($s1) -/* 033D74 80033174 8E780000 */ lw $t8, ($s3) -/* 033D78 80033178 01D20019 */ multu $t6, $s2 -/* 033D7C 8003317C 8E19001C */ lw $t9, 0x1c($s0) -/* 033D80 80033180 00000000 */ nop -/* 033D84 80033184 00196C03 */ sra $t5, $t9, 0x10 -/* 033D88 80033188 00005812 */ mflo $t3 -/* 033D8C 8003318C 030B6021 */ addu $t4, $t8, $t3 -/* 033D90 80033190 AD8D0004 */ sw $t5, 4($t4) -/* 033D94 80033194 8E2E0000 */ lw $t6, ($s1) -/* 033D98 80033198 8E790000 */ lw $t9, ($s3) -/* 033D9C 8003319C 01D20019 */ multu $t6, $s2 -/* 033DA0 800331A0 8E0A0020 */ lw $t2, 0x20($s0) -/* 033DA4 800331A4 00000000 */ nop -/* 033DA8 800331A8 000A7C03 */ sra $t7, $t2, 0x10 -/* 033DAC 800331AC 0000C012 */ mflo $t8 -/* 033DB0 800331B0 03385821 */ addu $t3, $t9, $t8 -/* 033DB4 800331B4 AD6F0008 */ sw $t7, 8($t3) -/* 033DB8 800331B8 8E2E0000 */ lw $t6, ($s1) -/* 033DBC 800331BC 444FF800 */ cfc1 $t7, $31 -/* 033DC0 800331C0 01D20019 */ multu $t6, $s2 -/* 033DC4 800331C4 240B0001 */ li $t3, 1 -/* 033DC8 800331C8 44CBF800 */ ctc1 $t3, $31 -/* 033DCC 800331CC 8E6A0000 */ lw $t2, ($s3) -/* 033DD0 800331D0 4600A1A4 */ cvt.w.s $f6, $f20 -/* 033DD4 800331D4 8E0D0024 */ lw $t5, 0x24($s0) -/* 033DD8 800331D8 444BF800 */ cfc1 $t3, $31 -/* 033DDC 800331DC 000D6403 */ sra $t4, $t5, 0x10 -/* 033DE0 800331E0 316B0078 */ andi $t3, $t3, 0x78 -/* 033DE4 800331E4 0000C812 */ mflo $t9 -/* 033DE8 800331E8 0159C021 */ addu $t8, $t2, $t9 -/* 033DEC 800331EC 11600012 */ beqz $t3, .L80033238 -/* 033DF0 800331F0 AF0C000C */ sw $t4, 0xc($t8) -/* 033DF4 800331F4 44813000 */ mtc1 $at, $f6 -/* 033DF8 800331F8 240B0001 */ li $t3, 1 -/* 033DFC 800331FC 4606A181 */ sub.s $f6, $f20, $f6 -/* 033E00 80033200 3C018000 */ lui $at, 0x8000 -/* 033E04 80033204 44CBF800 */ ctc1 $t3, $31 -/* 033E08 80033208 00000000 */ nop -/* 033E0C 8003320C 460031A4 */ cvt.w.s $f6, $f6 -/* 033E10 80033210 444BF800 */ cfc1 $t3, $31 -/* 033E14 80033214 00000000 */ nop -/* 033E18 80033218 316B0078 */ andi $t3, $t3, 0x78 -/* 033E1C 8003321C 15600004 */ bnez $t3, .L80033230 -/* 033E20 80033220 00000000 */ nop -/* 033E24 80033224 440B3000 */ mfc1 $t3, $f6 -/* 033E28 80033228 10000007 */ b .L80033248 -/* 033E2C 8003322C 01615825 */ or $t3, $t3, $at -.L80033230: -/* 033E30 80033230 10000005 */ b .L80033248 -/* 033E34 80033234 240BFFFF */ li $t3, -1 -.L80033238: -/* 033E38 80033238 440B3000 */ mfc1 $t3, $f6 -/* 033E3C 8003323C 00000000 */ nop -/* 033E40 80033240 0560FFFB */ bltz $t3, .L80033230 -/* 033E44 80033244 00000000 */ nop -.L80033248: -/* 033E48 80033248 8E2A0000 */ lw $t2, ($s1) -/* 033E4C 8003324C 8E6E0000 */ lw $t6, ($s3) -/* 033E50 80033250 01520019 */ multu $t2, $s2 -/* 033E54 80033254 316D00FF */ andi $t5, $t3, 0xff -/* 033E58 80033258 44CFF800 */ ctc1 $t7, $31 -/* 033E5C 8003325C 0000C812 */ mflo $t9 -/* 033E60 80033260 01D96021 */ addu $t4, $t6, $t9 -/* 033E64 80033264 AD8D0010 */ sw $t5, 0x10($t4) -/* 033E68 80033268 8E380000 */ lw $t8, ($s1) -/* 033E6C 8003326C 00000000 */ nop -/* 033E70 80033270 270F0001 */ addiu $t7, $t8, 1 -/* 033E74 80033274 AE2F0000 */ sw $t7, ($s1) -.L80033278: -/* 033E78 80033278 3C0B800E */ lui $t3, %hi(D_800DC95C) # $t3, 0x800e -/* 033E7C 8003327C 8D6BC95C */ lw $t3, %lo(D_800DC95C)($t3) -/* 033E80 80033280 26B50001 */ addiu $s5, $s5, 1 -/* 033E84 80033284 02AB082A */ slt $at, $s5, $t3 -/* 033E88 80033288 1420FED7 */ bnez $at, .L80032DE8 -/* 033E8C 8003328C 24420004 */ addiu $v0, $v0, 4 -.L80033290: -/* 033E90 80033290 8FCA0040 */ lw $t2, 0x40($fp) -/* 033E94 80033294 3C08800E */ lui $t0, %hi(D_800DC964) # $t0, 0x800e -/* 033E98 80033298 914E0071 */ lbu $t6, 0x71($t2) -/* 033E9C 8003329C 3C13800E */ lui $s3, %hi(D_800DC960) # $s3, 0x800e -/* 033EA0 800332A0 2673C960 */ addiu $s3, %lo(D_800DC960) # addiu $s3, $s3, -0x36a0 -/* 033EA4 800332A4 2508C964 */ addiu $t0, %lo(D_800DC964) # addiu $t0, $t0, -0x369c -/* 033EA8 800332A8 2409000C */ li $t1, 12 -/* 033EAC 800332AC 11C00111 */ beqz $t6, .L800336F4 -/* 033EB0 800332B0 24120014 */ li $s2, 20 -/* 033EB4 800332B4 8E270000 */ lw $a3, ($s1) -/* 033EB8 800332B8 24010001 */ li $at, 1 -/* 033EBC 800332BC 14E00007 */ bnez $a3, .L800332DC -/* 033EC0 800332C0 00000000 */ nop -/* 033EC4 800332C4 8FD90054 */ lw $t9, 0x54($fp) -/* 033EC8 800332C8 00000000 */ nop -/* 033ECC 800332CC A3200007 */ sb $zero, 7($t9) -/* 033ED0 800332D0 8FCD0054 */ lw $t5, 0x54($fp) -/* 033ED4 800332D4 1000012F */ b .L80033794 -/* 033ED8 800332D8 A1A00011 */ sb $zero, 0x11($t5) -.L800332DC: -/* 033EDC 800332DC 14E10043 */ bne $a3, $at, .L800333EC -/* 033EE0 800332E0 00000000 */ nop -/* 033EE4 800332E4 8E6C0000 */ lw $t4, ($s3) -/* 033EE8 800332E8 8FCF0054 */ lw $t7, 0x54($fp) -/* 033EEC 800332EC 8D980004 */ lw $t8, 4($t4) -/* 033EF0 800332F0 3C014600 */ li $at, 0x46000000 # 8192.000000 -/* 033EF4 800332F4 A1F80004 */ sb $t8, 4($t7) -/* 033EF8 800332F8 8E6B0000 */ lw $t3, ($s3) -/* 033EFC 800332FC 8FCE0054 */ lw $t6, 0x54($fp) -/* 033F00 80033300 8D6A0008 */ lw $t2, 8($t3) -/* 033F04 80033304 44810000 */ mtc1 $at, $f0 -/* 033F08 80033308 A1CA0005 */ sb $t2, 5($t6) -/* 033F0C 8003330C 8E790000 */ lw $t9, ($s3) -/* 033F10 80033310 8FCC0054 */ lw $t4, 0x54($fp) -/* 033F14 80033314 8F2D000C */ lw $t5, 0xc($t9) -/* 033F18 80033318 00000000 */ nop -/* 033F1C 8003331C A18D0006 */ sb $t5, 6($t4) -/* 033F20 80033320 8E780000 */ lw $t8, ($s3) -/* 033F24 80033324 8FCB0054 */ lw $t3, 0x54($fp) -/* 033F28 80033328 8F0F0010 */ lw $t7, 0x10($t8) -/* 033F2C 8003332C 00000000 */ nop -/* 033F30 80033330 A16F0007 */ sb $t7, 7($t3) -/* 033F34 80033334 8FCA0054 */ lw $t2, 0x54($fp) -/* 033F38 80033338 00000000 */ nop -/* 033F3C 8003333C A1400011 */ sb $zero, 0x11($t2) -/* 033F40 80033340 8D0E0000 */ lw $t6, ($t0) -/* 033F44 80033344 8FCC0054 */ lw $t4, 0x54($fp) -/* 033F48 80033348 C5C80000 */ lwc1 $f8, ($t6) -/* 033F4C 8003334C 00000000 */ nop -/* 033F50 80033350 46004282 */ mul.s $f10, $f8, $f0 -/* 033F54 80033354 4459F800 */ cfc1 $t9, $31 -/* 033F58 80033358 00000000 */ nop -/* 033F5C 8003335C 37210003 */ ori $at, $t9, 3 -/* 033F60 80033360 38210002 */ xori $at, $at, 2 -/* 033F64 80033364 44C1F800 */ ctc1 $at, $31 -/* 033F68 80033368 00000000 */ nop -/* 033F6C 8003336C 46005424 */ cvt.w.s $f16, $f10 -/* 033F70 80033370 440D8000 */ mfc1 $t5, $f16 -/* 033F74 80033374 44D9F800 */ ctc1 $t9, $31 -/* 033F78 80033378 A58D0008 */ sh $t5, 8($t4) -/* 033F7C 8003337C 8D180000 */ lw $t8, ($t0) -/* 033F80 80033380 8FCA0054 */ lw $t2, 0x54($fp) -/* 033F84 80033384 C7120004 */ lwc1 $f18, 4($t8) -/* 033F88 80033388 00000000 */ nop -/* 033F8C 8003338C 46009102 */ mul.s $f4, $f18, $f0 -/* 033F90 80033390 444FF800 */ cfc1 $t7, $31 -/* 033F94 80033394 00000000 */ nop -/* 033F98 80033398 35E10003 */ ori $at, $t7, 3 -/* 033F9C 8003339C 38210002 */ xori $at, $at, 2 -/* 033FA0 800333A0 44C1F800 */ ctc1 $at, $31 -/* 033FA4 800333A4 37210003 */ ori $at, $t9, 3 -/* 033FA8 800333A8 460021A4 */ cvt.w.s $f6, $f4 -/* 033FAC 800333AC 38210002 */ xori $at, $at, 2 -/* 033FB0 800333B0 440B3000 */ mfc1 $t3, $f6 -/* 033FB4 800333B4 44CFF800 */ ctc1 $t7, $31 -/* 033FB8 800333B8 A54B000A */ sh $t3, 0xa($t2) -/* 033FBC 800333BC 8D0E0000 */ lw $t6, ($t0) -/* 033FC0 800333C0 8FCC0054 */ lw $t4, 0x54($fp) -/* 033FC4 800333C4 C5C80008 */ lwc1 $f8, 8($t6) -/* 033FC8 800333C8 00000000 */ nop -/* 033FCC 800333CC 46004282 */ mul.s $f10, $f8, $f0 -/* 033FD0 800333D0 44C1F800 */ ctc1 $at, $31 -/* 033FD4 800333D4 00000000 */ nop -/* 033FD8 800333D8 46005424 */ cvt.w.s $f16, $f10 -/* 033FDC 800333DC 440D8000 */ mfc1 $t5, $f16 -/* 033FE0 800333E0 44D9F800 */ ctc1 $t9, $31 -/* 033FE4 800333E4 100000EB */ b .L80033794 -/* 033FE8 800333E8 A58D000C */ sh $t5, 0xc($t4) -.L800333EC: -/* 033FEC 800333EC 8E660000 */ lw $a2, ($s3) -/* 033FF0 800333F0 24040001 */ li $a0, 1 -/* 033FF4 800333F4 8CD80024 */ lw $t8, 0x24($a2) -/* 033FF8 800333F8 8CCF0010 */ lw $t7, 0x10($a2) -/* 033FFC 800333FC 00002825 */ move $a1, $zero -/* 034000 80033400 030F082A */ slt $at, $t8, $t7 -/* 034004 80033404 10200004 */ beqz $at, .L80033418 -/* 034008 80033408 24C30028 */ addiu $v1, $a2, 0x28 -/* 03400C 8003340C 00002025 */ move $a0, $zero -/* 034010 80033410 10000001 */ b .L80033418 -/* 034014 80033414 24050001 */ li $a1, 1 -.L80033418: -/* 034018 80033418 28E10003 */ slti $at, $a3, 3 -/* 03401C 8003341C 14200020 */ bnez $at, .L800334A0 -/* 034020 80033420 24150002 */ li $s5, 2 -.L80033424: -/* 034024 80033424 00B20019 */ multu $a1, $s2 -/* 034028 80033428 8C620010 */ lw $v0, 0x10($v1) -/* 03402C 8003342C 00005812 */ mflo $t3 -/* 034030 80033430 00CB5021 */ addu $t2, $a2, $t3 -/* 034034 80033434 8D4E0010 */ lw $t6, 0x10($t2) -/* 034038 80033438 00000000 */ nop -/* 03403C 8003343C 01C2082A */ slt $at, $t6, $v0 -/* 034040 80033440 10200013 */ beqz $at, .L80033490 -/* 034044 80033444 00000000 */ nop -/* 034048 80033448 00920019 */ multu $a0, $s2 -/* 03404C 8003344C 00152C00 */ sll $a1, $s5, 0x10 -/* 034050 80033450 00055C03 */ sra $t3, $a1, 0x10 -/* 034054 80033454 01602825 */ move $a1, $t3 -/* 034058 80033458 0000C812 */ mflo $t9 -/* 03405C 8003345C 00D96821 */ addu $t5, $a2, $t9 -/* 034060 80033460 8DAC0010 */ lw $t4, 0x10($t5) -/* 034064 80033464 00000000 */ nop -/* 034068 80033468 0182082A */ slt $at, $t4, $v0 -/* 03406C 8003346C 10200008 */ beqz $at, .L80033490 -/* 034070 80033470 00000000 */ nop -/* 034074 80033474 00042C00 */ sll $a1, $a0, 0x10 -/* 034078 80033478 00152400 */ sll $a0, $s5, 0x10 -/* 03407C 8003347C 0005C403 */ sra $t8, $a1, 0x10 -/* 034080 80033480 00047C03 */ sra $t7, $a0, 0x10 -/* 034084 80033484 03002825 */ move $a1, $t8 -/* 034088 80033488 10000001 */ b .L80033490 -/* 03408C 8003348C 01E02025 */ move $a0, $t7 -.L80033490: -/* 034090 80033490 26B50001 */ addiu $s5, $s5, 1 -/* 034094 80033494 02A7082A */ slt $at, $s5, $a3 -/* 034098 80033498 1420FFE2 */ bnez $at, .L80033424 -/* 03409C 8003349C 24630014 */ addiu $v1, $v1, 0x14 -.L800334A0: -/* 0340A0 800334A0 00920019 */ multu $a0, $s2 -/* 0340A4 800334A4 8FD90054 */ lw $t9, 0x54($fp) -/* 0340A8 800334A8 3C014600 */ li $at, 0x46000000 # 8192.000000 -/* 0340AC 800334AC 44810000 */ mtc1 $at, $f0 -/* 0340B0 800334B0 00001012 */ mflo $v0 -/* 0340B4 800334B4 00C25021 */ addu $t2, $a2, $v0 -/* 0340B8 800334B8 8D4E0004 */ lw $t6, 4($t2) -/* 0340BC 800334BC 00890019 */ multu $a0, $t1 -/* 0340C0 800334C0 A32E0004 */ sb $t6, 4($t9) -/* 0340C4 800334C4 8E6D0000 */ lw $t5, ($s3) -/* 0340C8 800334C8 8FCF0054 */ lw $t7, 0x54($fp) -/* 0340CC 800334CC 01A26021 */ addu $t4, $t5, $v0 -/* 0340D0 800334D0 8D980008 */ lw $t8, 8($t4) -/* 0340D4 800334D4 00000000 */ nop -/* 0340D8 800334D8 A1F80005 */ sb $t8, 5($t7) -/* 0340DC 800334DC 8E6B0000 */ lw $t3, ($s3) -/* 0340E0 800334E0 8FD90054 */ lw $t9, 0x54($fp) -/* 0340E4 800334E4 01625021 */ addu $t2, $t3, $v0 -/* 0340E8 800334E8 8D4E000C */ lw $t6, 0xc($t2) -/* 0340EC 800334EC 00001812 */ mflo $v1 -/* 0340F0 800334F0 A32E0006 */ sb $t6, 6($t9) -/* 0340F4 800334F4 8E6D0000 */ lw $t5, ($s3) -/* 0340F8 800334F8 8FCF0054 */ lw $t7, 0x54($fp) -/* 0340FC 800334FC 01A26021 */ addu $t4, $t5, $v0 -/* 034100 80033500 8D980010 */ lw $t8, 0x10($t4) -/* 034104 80033504 00B20019 */ multu $a1, $s2 -/* 034108 80033508 A1F80007 */ sb $t8, 7($t7) -/* 03410C 8003350C 8D0B0000 */ lw $t3, ($t0) -/* 034110 80033510 8FCD0054 */ lw $t5, 0x54($fp) -/* 034114 80033514 01635021 */ addu $t2, $t3, $v1 -/* 034118 80033518 C5520000 */ lwc1 $f18, ($t2) -/* 03411C 8003351C 00000000 */ nop -/* 034120 80033520 46009102 */ mul.s $f4, $f18, $f0 -/* 034124 80033524 444EF800 */ cfc1 $t6, $31 -/* 034128 80033528 00003812 */ mflo $a3 -/* 03412C 8003352C 35C10003 */ ori $at, $t6, 3 -/* 034130 80033530 38210002 */ xori $at, $at, 2 -/* 034134 80033534 44C1F800 */ ctc1 $at, $31 -/* 034138 80033538 00A90019 */ multu $a1, $t1 -/* 03413C 8003353C 460021A4 */ cvt.w.s $f6, $f4 -/* 034140 80033540 44193000 */ mfc1 $t9, $f6 -/* 034144 80033544 44CEF800 */ ctc1 $t6, $31 -/* 034148 80033548 A5B90008 */ sh $t9, 8($t5) -/* 03414C 8003354C 8D0C0000 */ lw $t4, ($t0) -/* 034150 80033550 8FCA0054 */ lw $t2, 0x54($fp) -/* 034154 80033554 0183C021 */ addu $t8, $t4, $v1 -/* 034158 80033558 C7080004 */ lwc1 $f8, 4($t8) -/* 03415C 8003355C 00000000 */ nop -/* 034160 80033560 46004282 */ mul.s $f10, $f8, $f0 -/* 034164 80033564 00001012 */ mflo $v0 -/* 034168 80033568 444FF800 */ cfc1 $t7, $31 -/* 03416C 8003356C 00000000 */ nop -/* 034170 80033570 35E10003 */ ori $at, $t7, 3 -/* 034174 80033574 38210002 */ xori $at, $at, 2 -/* 034178 80033578 44C1F800 */ ctc1 $at, $31 -/* 03417C 8003357C 00000000 */ nop -/* 034180 80033580 46005424 */ cvt.w.s $f16, $f10 -/* 034184 80033584 440B8000 */ mfc1 $t3, $f16 -/* 034188 80033588 44CFF800 */ ctc1 $t7, $31 -/* 03418C 8003358C A54B000A */ sh $t3, 0xa($t2) -/* 034190 80033590 8D0E0000 */ lw $t6, ($t0) -/* 034194 80033594 8FD80054 */ lw $t8, 0x54($fp) -/* 034198 80033598 01C3C821 */ addu $t9, $t6, $v1 -/* 03419C 8003359C C7320008 */ lwc1 $f18, 8($t9) -/* 0341A0 800335A0 00000000 */ nop -/* 0341A4 800335A4 46009102 */ mul.s $f4, $f18, $f0 -/* 0341A8 800335A8 444DF800 */ cfc1 $t5, $31 -/* 0341AC 800335AC 00000000 */ nop -/* 0341B0 800335B0 35A10003 */ ori $at, $t5, 3 -/* 0341B4 800335B4 38210002 */ xori $at, $at, 2 -/* 0341B8 800335B8 44C1F800 */ ctc1 $at, $31 -/* 0341BC 800335BC 00000000 */ nop -/* 0341C0 800335C0 460021A4 */ cvt.w.s $f6, $f4 -/* 0341C4 800335C4 440C3000 */ mfc1 $t4, $f6 -/* 0341C8 800335C8 44CDF800 */ ctc1 $t5, $31 -/* 0341CC 800335CC A70C000C */ sh $t4, 0xc($t8) -/* 0341D0 800335D0 8E6F0000 */ lw $t7, ($s3) -/* 0341D4 800335D4 8FCE0054 */ lw $t6, 0x54($fp) -/* 0341D8 800335D8 01E75821 */ addu $t3, $t7, $a3 -/* 0341DC 800335DC 8D6A0004 */ lw $t2, 4($t3) -/* 0341E0 800335E0 00000000 */ nop -/* 0341E4 800335E4 A1CA000E */ sb $t2, 0xe($t6) -/* 0341E8 800335E8 8E790000 */ lw $t9, ($s3) -/* 0341EC 800335EC 8FD80054 */ lw $t8, 0x54($fp) -/* 0341F0 800335F0 03276821 */ addu $t5, $t9, $a3 -/* 0341F4 800335F4 8DAC0008 */ lw $t4, 8($t5) -/* 0341F8 800335F8 00000000 */ nop -/* 0341FC 800335FC A30C000F */ sb $t4, 0xf($t8) -/* 034200 80033600 8E6F0000 */ lw $t7, ($s3) -/* 034204 80033604 8FCE0054 */ lw $t6, 0x54($fp) -/* 034208 80033608 01E75821 */ addu $t3, $t7, $a3 -/* 03420C 8003360C 8D6A000C */ lw $t2, 0xc($t3) -/* 034210 80033610 00000000 */ nop -/* 034214 80033614 A1CA0010 */ sb $t2, 0x10($t6) -/* 034218 80033618 8E790000 */ lw $t9, ($s3) -/* 03421C 8003361C 8FD80054 */ lw $t8, 0x54($fp) -/* 034220 80033620 03276821 */ addu $t5, $t9, $a3 -/* 034224 80033624 8DAC0010 */ lw $t4, 0x10($t5) -/* 034228 80033628 00000000 */ nop -/* 03422C 8003362C A30C0011 */ sb $t4, 0x11($t8) -/* 034230 80033630 8D0F0000 */ lw $t7, ($t0) -/* 034234 80033634 8FD90054 */ lw $t9, 0x54($fp) -/* 034238 80033638 01E25821 */ addu $t3, $t7, $v0 -/* 03423C 8003363C C5680000 */ lwc1 $f8, ($t3) -/* 034240 80033640 00000000 */ nop -/* 034244 80033644 46004282 */ mul.s $f10, $f8, $f0 -/* 034248 80033648 444AF800 */ cfc1 $t2, $31 -/* 03424C 8003364C 00000000 */ nop -/* 034250 80033650 35410003 */ ori $at, $t2, 3 -/* 034254 80033654 38210002 */ xori $at, $at, 2 -/* 034258 80033658 44C1F800 */ ctc1 $at, $31 -/* 03425C 8003365C 00000000 */ nop -/* 034260 80033660 46005424 */ cvt.w.s $f16, $f10 -/* 034264 80033664 440E8000 */ mfc1 $t6, $f16 -/* 034268 80033668 44CAF800 */ ctc1 $t2, $31 -/* 03426C 8003366C A72E0012 */ sh $t6, 0x12($t9) -/* 034270 80033670 8D0D0000 */ lw $t5, ($t0) -/* 034274 80033674 8FCB0054 */ lw $t3, 0x54($fp) -/* 034278 80033678 01A26021 */ addu $t4, $t5, $v0 -/* 03427C 8003367C C5920004 */ lwc1 $f18, 4($t4) -/* 034280 80033680 00000000 */ nop -/* 034284 80033684 46009102 */ mul.s $f4, $f18, $f0 -/* 034288 80033688 4458F800 */ cfc1 $t8, $31 -/* 03428C 8003368C 00000000 */ nop -/* 034290 80033690 37010003 */ ori $at, $t8, 3 -/* 034294 80033694 38210002 */ xori $at, $at, 2 -/* 034298 80033698 44C1F800 */ ctc1 $at, $31 -/* 03429C 8003369C 00000000 */ nop -/* 0342A0 800336A0 460021A4 */ cvt.w.s $f6, $f4 -/* 0342A4 800336A4 440F3000 */ mfc1 $t7, $f6 -/* 0342A8 800336A8 44D8F800 */ ctc1 $t8, $31 -/* 0342AC 800336AC A56F0014 */ sh $t7, 0x14($t3) -/* 0342B0 800336B0 8D0A0000 */ lw $t2, ($t0) -/* 0342B4 800336B4 8FCC0054 */ lw $t4, 0x54($fp) -/* 0342B8 800336B8 01427021 */ addu $t6, $t2, $v0 -/* 0342BC 800336BC C5C80008 */ lwc1 $f8, 8($t6) -/* 0342C0 800336C0 00000000 */ nop -/* 0342C4 800336C4 46004282 */ mul.s $f10, $f8, $f0 -/* 0342C8 800336C8 4459F800 */ cfc1 $t9, $31 -/* 0342CC 800336CC 00000000 */ nop -/* 0342D0 800336D0 37210003 */ ori $at, $t9, 3 -/* 0342D4 800336D4 38210002 */ xori $at, $at, 2 -/* 0342D8 800336D8 44C1F800 */ ctc1 $at, $31 -/* 0342DC 800336DC 00000000 */ nop -/* 0342E0 800336E0 46005424 */ cvt.w.s $f16, $f10 -/* 0342E4 800336E4 440D8000 */ mfc1 $t5, $f16 -/* 0342E8 800336E8 44D9F800 */ ctc1 $t9, $31 -/* 0342EC 800336EC 10000029 */ b .L80033794 -/* 0342F0 800336F0 A58D0016 */ sh $t5, 0x16($t4) -.L800336F4: -/* 0342F4 800336F4 8E270000 */ lw $a3, ($s1) -/* 0342F8 800336F8 00000000 */ nop -/* 0342FC 800336FC 18E00019 */ blez $a3, .L80033764 -/* 034300 80033700 28E10002 */ slti $at, $a3, 2 -/* 034304 80033704 14200003 */ bnez $at, .L80033714 -/* 034308 80033708 00000000 */ nop -/* 03430C 8003370C 0C00CDF9 */ jal func_800337E4 -/* 034310 80033710 00000000 */ nop -.L80033714: -/* 034314 80033714 8E780000 */ lw $t8, ($s3) -/* 034318 80033718 8FCB0054 */ lw $t3, 0x54($fp) -/* 03431C 8003371C 8F0F0004 */ lw $t7, 4($t8) -/* 034320 80033720 00000000 */ nop -/* 034324 80033724 A16F0004 */ sb $t7, 4($t3) -/* 034328 80033728 8E6A0000 */ lw $t2, ($s3) -/* 03432C 8003372C 8FD90054 */ lw $t9, 0x54($fp) -/* 034330 80033730 8D4E0008 */ lw $t6, 8($t2) -/* 034334 80033734 00000000 */ nop -/* 034338 80033738 A32E0005 */ sb $t6, 5($t9) -/* 03433C 8003373C 8E6D0000 */ lw $t5, ($s3) -/* 034340 80033740 8FD80054 */ lw $t8, 0x54($fp) -/* 034344 80033744 8DAC000C */ lw $t4, 0xc($t5) -/* 034348 80033748 00000000 */ nop -/* 03434C 8003374C A30C0006 */ sb $t4, 6($t8) -/* 034350 80033750 8E6F0000 */ lw $t7, ($s3) -/* 034354 80033754 8FCA0054 */ lw $t2, 0x54($fp) -/* 034358 80033758 8DEB0010 */ lw $t3, 0x10($t7) -/* 03435C 8003375C 1000000D */ b .L80033794 -/* 034360 80033760 A14B0007 */ sb $t3, 7($t2) -.L80033764: -/* 034364 80033764 8FCE0054 */ lw $t6, 0x54($fp) -/* 034368 80033768 240200FF */ li $v0, 255 -/* 03436C 8003376C A1C20004 */ sb $v0, 4($t6) -/* 034370 80033770 8FD90054 */ lw $t9, 0x54($fp) -/* 034374 80033774 00000000 */ nop -/* 034378 80033778 A3220005 */ sb $v0, 5($t9) -/* 03437C 8003377C 8FCD0054 */ lw $t5, 0x54($fp) -/* 034380 80033780 00000000 */ nop -/* 034384 80033784 A1A20006 */ sb $v0, 6($t5) -/* 034388 80033788 8FCC0054 */ lw $t4, 0x54($fp) -/* 03438C 8003378C 00000000 */ nop -/* 034390 80033790 A1800007 */ sb $zero, 7($t4) -.L80033794: -/* 034394 80033794 8FBF005C */ lw $ra, 0x5c($sp) -.L80033798: -/* 034398 80033798 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 03439C 8003379C C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 0343A0 800337A0 C7B70020 */ lwc1 $f23, 0x20($sp) -/* 0343A4 800337A4 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 0343A8 800337A8 C7B90028 */ lwc1 $f25, 0x28($sp) -/* 0343AC 800337AC C7B8002C */ lwc1 $f24, 0x2c($sp) -/* 0343B0 800337B0 C7BB0030 */ lwc1 $f27, 0x30($sp) -/* 0343B4 800337B4 C7BA0034 */ lwc1 $f26, 0x34($sp) -/* 0343B8 800337B8 8FB00038 */ lw $s0, 0x38($sp) -/* 0343BC 800337BC 8FB1003C */ lw $s1, 0x3c($sp) -/* 0343C0 800337C0 8FB20040 */ lw $s2, 0x40($sp) -/* 0343C4 800337C4 8FB30044 */ lw $s3, 0x44($sp) -/* 0343C8 800337C8 8FB40048 */ lw $s4, 0x48($sp) -/* 0343CC 800337CC 8FB5004C */ lw $s5, 0x4c($sp) -/* 0343D0 800337D0 8FB60050 */ lw $s6, 0x50($sp) -/* 0343D4 800337D4 8FB70054 */ lw $s7, 0x54($sp) -/* 0343D8 800337D8 8FBE0058 */ lw $fp, 0x58($sp) -/* 0343DC 800337DC 03E00008 */ jr $ra -/* 0343E0 800337E0 27BD0090 */ addiu $sp, $sp, 0x90 - -glabel func_800337E4 -/* 0343E4 800337E4 3C0A800E */ lui $t2, %hi(D_800DC968) # $t2, 0x800e -/* 0343E8 800337E8 254AC968 */ addiu $t2, %lo(D_800DC968) # addiu $t2, $t2, -0x3698 -/* 0343EC 800337EC 8D4E0000 */ lw $t6, ($t2) -/* 0343F0 800337F0 24020001 */ li $v0, 1 -/* 0343F4 800337F4 29C10002 */ slti $at, $t6, 2 -/* 0343F8 800337F8 14200084 */ bnez $at, .L80033A0C -/* 0343FC 800337FC 24040014 */ li $a0, 20 -/* 034400 80033800 3C0B800E */ lui $t3, %hi(D_800DC960) # $t3, 0x800e -/* 034404 80033804 256BC960 */ addiu $t3, %lo(D_800DC960) # addiu $t3, $t3, -0x36a0 -/* 034408 80033808 240C00FF */ li $t4, 255 -.L8003380C: -/* 03440C 8003380C 8D630000 */ lw $v1, ($t3) -/* 034410 80033810 00000000 */ nop -/* 034414 80033814 00642821 */ addu $a1, $v1, $a0 -/* 034418 80033818 8CA60010 */ lw $a2, 0x10($a1) -/* 03441C 8003381C 00000000 */ nop -/* 034420 80033820 28C10002 */ slti $at, $a2, 2 -/* 034424 80033824 14200074 */ bnez $at, .L800339F8 -/* 034428 80033828 00000000 */ nop -/* 03442C 8003382C 8C670010 */ lw $a3, 0x10($v1) -/* 034430 80033830 8C690004 */ lw $t1, 4($v1) -/* 034434 80033834 00E6082A */ slt $at, $a3, $a2 -/* 034438 80033838 1420002A */ bnez $at, .L800338E4 -/* 03443C 8003383C 00077C00 */ sll $t7, $a3, 0x10 -/* 034440 80033840 00067C00 */ sll $t7, $a2, 0x10 -/* 034444 80033844 01E7001A */ div $zero, $t7, $a3 -/* 034448 80033848 8CB80004 */ lw $t8, 4($a1) -/* 03444C 8003384C 14E00002 */ bnez $a3, .L80033858 -/* 034450 80033850 00000000 */ nop -/* 034454 80033854 0007000D */ break 7 -.L80033858: -/* 034458 80033858 2401FFFF */ li $at, -1 -/* 03445C 8003385C 14E10004 */ bne $a3, $at, .L80033870 -/* 034460 80033860 3C018000 */ lui $at, 0x8000 -/* 034464 80033864 15E10002 */ bne $t7, $at, .L80033870 -/* 034468 80033868 00000000 */ nop -/* 03446C 8003386C 0006000D */ break 6 -.L80033870: -/* 034470 80033870 00004012 */ mflo $t0 -/* 034474 80033874 00000000 */ nop -/* 034478 80033878 00000000 */ nop -/* 03447C 8003387C 03080019 */ multu $t8, $t0 -/* 034480 80033880 0000C812 */ mflo $t9 -/* 034484 80033884 00196C03 */ sra $t5, $t9, 0x10 -/* 034488 80033888 012D7021 */ addu $t6, $t1, $t5 -/* 03448C 8003388C AC6E0004 */ sw $t6, 4($v1) -/* 034490 80033890 8D630000 */ lw $v1, ($t3) -/* 034494 80033894 00000000 */ nop -/* 034498 80033898 0064C021 */ addu $t8, $v1, $a0 -/* 03449C 8003389C 8F190008 */ lw $t9, 8($t8) -/* 0344A0 800338A0 8C6F0008 */ lw $t7, 8($v1) -/* 0344A4 800338A4 03280019 */ multu $t9, $t0 -/* 0344A8 800338A8 00006812 */ mflo $t5 -/* 0344AC 800338AC 000D7403 */ sra $t6, $t5, 0x10 -/* 0344B0 800338B0 01EEC021 */ addu $t8, $t7, $t6 -/* 0344B4 800338B4 AC780008 */ sw $t8, 8($v1) -/* 0344B8 800338B8 8D630000 */ lw $v1, ($t3) -/* 0344BC 800338BC 00000000 */ nop -/* 0344C0 800338C0 00646821 */ addu $t5, $v1, $a0 -/* 0344C4 800338C4 8DAF000C */ lw $t7, 0xc($t5) -/* 0344C8 800338C8 8C79000C */ lw $t9, 0xc($v1) -/* 0344CC 800338CC 01E80019 */ multu $t7, $t0 -/* 0344D0 800338D0 00007012 */ mflo $t6 -/* 0344D4 800338D4 000EC403 */ sra $t8, $t6, 0x10 -/* 0344D8 800338D8 03386821 */ addu $t5, $t9, $t8 -/* 0344DC 800338DC 1000002E */ b .L80033998 -/* 0344E0 800338E0 AC6D000C */ sw $t5, 0xc($v1) -.L800338E4: -/* 0344E4 800338E4 01E6001A */ div $zero, $t7, $a2 -/* 0344E8 800338E8 8CAE0004 */ lw $t6, 4($a1) -/* 0344EC 800338EC 14C00002 */ bnez $a2, .L800338F8 -/* 0344F0 800338F0 00000000 */ nop -/* 0344F4 800338F4 0007000D */ break 7 -.L800338F8: -/* 0344F8 800338F8 2401FFFF */ li $at, -1 -/* 0344FC 800338FC 14C10004 */ bne $a2, $at, .L80033910 -/* 034500 80033900 3C018000 */ lui $at, 0x8000 -/* 034504 80033904 15E10002 */ bne $t7, $at, .L80033910 -/* 034508 80033908 00000000 */ nop -/* 03450C 8003390C 0006000D */ break 6 -.L80033910: -/* 034510 80033910 00004012 */ mflo $t0 -/* 034514 80033914 00000000 */ nop -/* 034518 80033918 00000000 */ nop -/* 03451C 8003391C 01280019 */ multu $t1, $t0 -/* 034520 80033920 0000C812 */ mflo $t9 -/* 034524 80033924 0019C403 */ sra $t8, $t9, 0x10 -/* 034528 80033928 01D86821 */ addu $t5, $t6, $t8 -/* 03452C 8003392C AC6D0004 */ sw $t5, 4($v1) -/* 034530 80033930 8D630000 */ lw $v1, ($t3) -/* 034534 80033934 00000000 */ nop -/* 034538 80033938 8C6E0008 */ lw $t6, 8($v1) -/* 03453C 8003393C 00647821 */ addu $t7, $v1, $a0 -/* 034540 80033940 01C80019 */ multu $t6, $t0 -/* 034544 80033944 8DF90008 */ lw $t9, 8($t7) -/* 034548 80033948 0000C012 */ mflo $t8 -/* 03454C 8003394C 00186C03 */ sra $t5, $t8, 0x10 -/* 034550 80033950 032D7821 */ addu $t7, $t9, $t5 -/* 034554 80033954 AC6F0008 */ sw $t7, 8($v1) -/* 034558 80033958 8D630000 */ lw $v1, ($t3) -/* 03455C 8003395C 00000000 */ nop -/* 034560 80033960 8C79000C */ lw $t9, 0xc($v1) -/* 034564 80033964 00647021 */ addu $t6, $v1, $a0 -/* 034568 80033968 03280019 */ multu $t9, $t0 -/* 03456C 8003396C 8DD8000C */ lw $t8, 0xc($t6) -/* 034570 80033970 00006812 */ mflo $t5 -/* 034574 80033974 000D7C03 */ sra $t7, $t5, 0x10 -/* 034578 80033978 030F7021 */ addu $t6, $t8, $t7 -/* 03457C 8003397C AC6E000C */ sw $t6, 0xc($v1) -/* 034580 80033980 8D630000 */ lw $v1, ($t3) -/* 034584 80033984 00000000 */ nop -/* 034588 80033988 0064C821 */ addu $t9, $v1, $a0 -/* 03458C 8003398C 8F2D0010 */ lw $t5, 0x10($t9) -/* 034590 80033990 00000000 */ nop -/* 034594 80033994 AC6D0010 */ sw $t5, 0x10($v1) -.L80033998: -/* 034598 80033998 8D630000 */ lw $v1, ($t3) -/* 03459C 8003399C 00000000 */ nop -/* 0345A0 800339A0 8C780004 */ lw $t8, 4($v1) -/* 0345A4 800339A4 00000000 */ nop -/* 0345A8 800339A8 2B010100 */ slti $at, $t8, 0x100 -/* 0345AC 800339AC 14200004 */ bnez $at, .L800339C0 -/* 0345B0 800339B0 00000000 */ nop -/* 0345B4 800339B4 AC6C0004 */ sw $t4, 4($v1) -/* 0345B8 800339B8 8D630000 */ lw $v1, ($t3) -/* 0345BC 800339BC 00000000 */ nop -.L800339C0: -/* 0345C0 800339C0 8C6F0008 */ lw $t7, 8($v1) -/* 0345C4 800339C4 00000000 */ nop -/* 0345C8 800339C8 29E10100 */ slti $at, $t7, 0x100 -/* 0345CC 800339CC 14200004 */ bnez $at, .L800339E0 -/* 0345D0 800339D0 00000000 */ nop -/* 0345D4 800339D4 AC6C0008 */ sw $t4, 8($v1) -/* 0345D8 800339D8 8D630000 */ lw $v1, ($t3) -/* 0345DC 800339DC 00000000 */ nop -.L800339E0: -/* 0345E0 800339E0 8C6E000C */ lw $t6, 0xc($v1) -/* 0345E4 800339E4 00000000 */ nop -/* 0345E8 800339E8 29C10100 */ slti $at, $t6, 0x100 -/* 0345EC 800339EC 14200002 */ bnez $at, .L800339F8 -/* 0345F0 800339F0 00000000 */ nop -/* 0345F4 800339F4 AC6C000C */ sw $t4, 0xc($v1) -.L800339F8: -/* 0345F8 800339F8 8D590000 */ lw $t9, ($t2) -/* 0345FC 800339FC 24420001 */ addiu $v0, $v0, 1 -/* 034600 80033A00 0059082A */ slt $at, $v0, $t9 -/* 034604 80033A04 1420FF81 */ bnez $at, .L8003380C -/* 034608 80033A08 24840014 */ addiu $a0, $a0, 0x14 -.L80033A0C: -/* 03460C 80033A0C 03E00008 */ jr $ra -/* 034610 80033A10 00000000 */ nop - -glabel func_80033A14 -/* 034614 80033A14 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 034618 80033A18 AFBF0024 */ sw $ra, 0x24($sp) -/* 03461C 80033A1C AFB00020 */ sw $s0, 0x20($sp) -/* 034620 80033A20 E7B50018 */ swc1 $f21, 0x18($sp) -/* 034624 80033A24 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 034628 80033A28 8C8E0028 */ lw $t6, 0x28($a0) -/* 03462C 80033A2C 908F0003 */ lbu $t7, 3($a0) -/* 034630 80033A30 448E2000 */ mtc1 $t6, $f4 -/* 034634 80033A34 3C014780 */ li $at, 0x47800000 # 65536.000000 -/* 034638 80033A38 44814000 */ mtc1 $at, $f8 -/* 03463C 80033A3C 468021A0 */ cvt.s.w $f6, $f4 -/* 034640 80033A40 25F8FFFF */ addiu $t8, $t7, -1 -/* 034644 80033A44 2F010005 */ sltiu $at, $t8, 5 -/* 034648 80033A48 00808025 */ move $s0, $a0 -/* 03464C 80033A4C 10200067 */ beqz $at, .L80033BEC -/* 034650 80033A50 46083503 */ div.s $f20, $f6, $f8 -/* 034654 80033A54 0018C080 */ sll $t8, $t8, 2 -/* 034658 80033A58 3C01800E */ lui $at, 0x800e -/* 03465C 80033A5C 00380821 */ addu $at, $at, $t8 -/* 034660 80033A60 8C385F80 */ lw $t8, 0x5f80($at) -/* 034664 80033A64 00000000 */ nop -/* 034668 80033A68 03000008 */ jr $t8 -/* 03466C 80033A6C 00000000 */ nop -/* 034670 80033A70 3C018012 */ lui $at, %hi(D_8011D4C0) # $at, 0x8012 -/* 034674 80033A74 C42CD4C0 */ lwc1 $f12, %lo(D_8011D4C0)($at) -/* 034678 80033A78 0C0326B4 */ jal sqrtf -/* 03467C 80033A7C 00000000 */ nop -/* 034680 80033A80 C610006C */ lwc1 $f16, 0x6c($s0) -/* 034684 80033A84 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 034688 80033A88 46100482 */ mul.s $f18, $f0, $f16 -/* 03468C 80033A8C 44815000 */ mtc1 $at, $f10 -/* 034690 80033A90 00000000 */ nop -/* 034694 80033A94 46125081 */ sub.s $f2, $f10, $f18 -/* 034698 80033A98 4602A502 */ mul.s $f20, $f20, $f2 -/* 03469C 80033A9C 10000054 */ b .L80033BF0 -/* 0346A0 80033AA0 8FBF0024 */ lw $ra, 0x24($sp) -/* 0346A4 80033AA4 3C018012 */ lui $at, %hi(D_8011D4C0) # $at, 0x8012 -/* 0346A8 80033AA8 C42CD4C0 */ lwc1 $f12, %lo(D_8011D4C0)($at) -/* 0346AC 80033AAC 0C0326B4 */ jal sqrtf -/* 0346B0 80033AB0 00000000 */ nop -/* 0346B4 80033AB4 C604006C */ lwc1 $f4, 0x6c($s0) -/* 0346B8 80033AB8 00000000 */ nop -/* 0346BC 80033ABC 46040302 */ mul.s $f12, $f0, $f4 -/* 0346C0 80033AC0 0C0326B4 */ jal sqrtf -/* 0346C4 80033AC4 00000000 */ nop -/* 0346C8 80033AC8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0346CC 80033ACC 44813000 */ mtc1 $at, $f6 -/* 0346D0 80033AD0 00000000 */ nop -/* 0346D4 80033AD4 46003201 */ sub.s $f8, $f6, $f0 -/* 0346D8 80033AD8 4608A502 */ mul.s $f20, $f20, $f8 -/* 0346DC 80033ADC 10000044 */ b .L80033BF0 -/* 0346E0 80033AE0 8FBF0024 */ lw $ra, 0x24($sp) -/* 0346E4 80033AE4 3C018012 */ lui $at, %hi(D_8011D4C0) # $at, 0x8012 -/* 0346E8 80033AE8 C42CD4C0 */ lwc1 $f12, %lo(D_8011D4C0)($at) -/* 0346EC 80033AEC 0C0326B4 */ jal sqrtf -/* 0346F0 80033AF0 00000000 */ nop -/* 0346F4 80033AF4 C610006C */ lwc1 $f16, 0x6c($s0) -/* 0346F8 80033AF8 3C014680 */ li $at, 0x46800000 # 16384.000000 -/* 0346FC 80033AFC 46100282 */ mul.s $f10, $f0, $f16 -/* 034700 80033B00 44819000 */ mtc1 $at, $f18 -/* 034704 80033B04 00000000 */ nop -/* 034708 80033B08 46125102 */ mul.s $f4, $f10, $f18 -/* 03470C 80033B0C 4459F800 */ cfc1 $t9, $31 -/* 034710 80033B10 00000000 */ nop -/* 034714 80033B14 37210003 */ ori $at, $t9, 3 -/* 034718 80033B18 38210002 */ xori $at, $at, 2 -/* 03471C 80033B1C 44C1F800 */ ctc1 $at, $31 -/* 034720 80033B20 00000000 */ nop -/* 034724 80033B24 460021A4 */ cvt.w.s $f6, $f4 -/* 034728 80033B28 44043000 */ mfc1 $a0, $f6 -/* 03472C 80033B2C 44D9F800 */ ctc1 $t9, $31 -/* 034730 80033B30 00044400 */ sll $t0, $a0, 0x10 -/* 034734 80033B34 0C01C1FE */ jal func_800707F8 -/* 034738 80033B38 00082403 */ sra $a0, $t0, 0x10 -/* 03473C 80033B3C 4600A502 */ mul.s $f20, $f20, $f0 -/* 034740 80033B40 1000002B */ b .L80033BF0 -/* 034744 80033B44 8FBF0024 */ lw $ra, 0x24($sp) -/* 034748 80033B48 3C018012 */ lui $at, %hi(D_8011D4C0) # $at, 0x8012 -/* 03474C 80033B4C C42CD4C0 */ lwc1 $f12, %lo(D_8011D4C0)($at) -/* 034750 80033B50 0C0326B4 */ jal sqrtf -/* 034754 80033B54 00000000 */ nop -/* 034758 80033B58 C608006C */ lwc1 $f8, 0x6c($s0) -/* 03475C 80033B5C 3C014680 */ li $at, 0x46800000 # 16384.000000 -/* 034760 80033B60 46080402 */ mul.s $f16, $f0, $f8 -/* 034764 80033B64 44815000 */ mtc1 $at, $f10 -/* 034768 80033B68 00000000 */ nop -/* 03476C 80033B6C 460A8482 */ mul.s $f18, $f16, $f10 -/* 034770 80033B70 444AF800 */ cfc1 $t2, $31 -/* 034774 80033B74 00000000 */ nop -/* 034778 80033B78 35410003 */ ori $at, $t2, 3 -/* 03477C 80033B7C 38210002 */ xori $at, $at, 2 -/* 034780 80033B80 44C1F800 */ ctc1 $at, $31 -/* 034784 80033B84 00000000 */ nop -/* 034788 80033B88 46009124 */ cvt.w.s $f4, $f18 -/* 03478C 80033B8C 44042000 */ mfc1 $a0, $f4 -/* 034790 80033B90 44CAF800 */ ctc1 $t2, $31 -/* 034794 80033B94 00045C00 */ sll $t3, $a0, 0x10 -/* 034798 80033B98 0C01C1FE */ jal func_800707F8 -/* 03479C 80033B9C 000B2403 */ sra $a0, $t3, 0x10 -/* 0347A0 80033BA0 46000182 */ mul.s $f6, $f0, $f0 -/* 0347A4 80033BA4 00000000 */ nop -/* 0347A8 80033BA8 4606A502 */ mul.s $f20, $f20, $f6 -/* 0347AC 80033BAC 1000000F */ b .L80033BEC -/* 0347B0 80033BB0 00000000 */ nop -/* 0347B4 80033BB4 3C018012 */ lui $at, %hi(D_8011D4C0) # $at, 0x8012 -/* 0347B8 80033BB8 C42CD4C0 */ lwc1 $f12, %lo(D_8011D4C0)($at) -/* 0347BC 80033BBC 0C0326B4 */ jal sqrtf -/* 0347C0 80033BC0 00000000 */ nop -/* 0347C4 80033BC4 C610006C */ lwc1 $f16, 0x6c($s0) -/* 0347C8 80033BC8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0347CC 80033BCC 46100282 */ mul.s $f10, $f0, $f16 -/* 0347D0 80033BD0 44814000 */ mtc1 $at, $f8 -/* 0347D4 80033BD4 00000000 */ nop -/* 0347D8 80033BD8 460A4081 */ sub.s $f2, $f8, $f10 -/* 0347DC 80033BDC 46021082 */ mul.s $f2, $f2, $f2 -/* 0347E0 80033BE0 00000000 */ nop -/* 0347E4 80033BE4 4602A502 */ mul.s $f20, $f20, $f2 -/* 0347E8 80033BE8 00000000 */ nop -.L80033BEC: -/* 0347EC 80033BEC 8FBF0024 */ lw $ra, 0x24($sp) -.L80033BF0: -/* 0347F0 80033BF0 4600A006 */ mov.s $f0, $f20 -/* 0347F4 80033BF4 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 0347F8 80033BF8 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 0347FC 80033BFC 8FB00020 */ lw $s0, 0x20($sp) -/* 034800 80033C00 03E00008 */ jr $ra -/* 034804 80033C04 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_80033C08 -/* 034808 80033C08 3C018012 */ lui $at, %hi(D_8011D4C0) # $at, 0x8012 -/* 03480C 80033C0C 44807000 */ mtc1 $zero, $f14 -/* 034810 80033C10 C42CD4C0 */ lwc1 $f12, %lo(D_8011D4C0)($at) -/* 034814 80033C14 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 034818 80033C18 460C703C */ c.lt.s $f14, $f12 -/* 03481C 80033C1C AFBF0014 */ sw $ra, 0x14($sp) -/* 034820 80033C20 45000020 */ bc1f .L80033CA4 -/* 034824 80033C24 3C013F80 */ lui $at, 0x3f80 -/* 034828 80033C28 0C0326B4 */ jal sqrtf -/* 03482C 80033C2C AFA40018 */ sw $a0, 0x18($sp) -/* 034830 80033C30 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 034834 80033C34 44812000 */ mtc1 $at, $f4 -/* 034838 80033C38 3C018012 */ lui $at, %hi(D_8011D4C4) # $at, 0x8012 -/* 03483C 80033C3C 46002083 */ div.s $f2, $f4, $f0 -/* 034840 80033C40 C426D4C4 */ lwc1 $f6, %lo(D_8011D4C4)($at) -/* 034844 80033C44 8FA40018 */ lw $a0, 0x18($sp) -/* 034848 80033C48 3C018012 */ lui $at, %hi(D_8011D4C8) # $at, 0x8012 -/* 03484C 80033C4C C48A007C */ lwc1 $f10, 0x7c($a0) -/* 034850 80033C50 C432D4C8 */ lwc1 $f18, %lo(D_8011D4C8)($at) -/* 034854 80033C54 3C018012 */ li $at, 0x80120000 # -0.000000 -/* 034858 80033C58 44807000 */ mtc1 $zero, $f14 -/* 03485C 80033C5C 46023202 */ mul.s $f8, $f6, $f2 -/* 034860 80033C60 C4860080 */ lwc1 $f6, 0x80($a0) -/* 034864 80033C64 460A4402 */ mul.s $f16, $f8, $f10 -/* 034868 80033C68 00000000 */ nop -/* 03486C 80033C6C 46029102 */ mul.s $f4, $f18, $f2 -/* 034870 80033C70 C432D4CC */ lwc1 $f18, %lo(D_8011D4CC)($at) -/* 034874 80033C74 46062202 */ mul.s $f8, $f4, $f6 -/* 034878 80033C78 C4860084 */ lwc1 $f6, 0x84($a0) -/* 03487C 80033C7C 46029102 */ mul.s $f4, $f18, $f2 -/* 034880 80033C80 46088280 */ add.s $f10, $f16, $f8 -/* 034884 80033C84 46062402 */ mul.s $f16, $f4, $f6 -/* 034888 80033C88 46105300 */ add.s $f12, $f10, $f16 -/* 03488C 80033C8C 460E603C */ c.lt.s $f12, $f14 -/* 034890 80033C90 00000000 */ nop -/* 034894 80033C94 45000005 */ bc1f .L80033CAC -/* 034898 80033C98 00000000 */ nop -/* 03489C 80033C9C 10000003 */ b .L80033CAC -/* 0348A0 80033CA0 46007306 */ mov.s $f12, $f14 -.L80033CA4: -/* 0348A4 80033CA4 44816000 */ mtc1 $at, $f12 -/* 0348A8 80033CA8 00000000 */ nop -.L80033CAC: -/* 0348AC 80033CAC 8FBF0014 */ lw $ra, 0x14($sp) -/* 0348B0 80033CB0 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0348B4 80033CB4 03E00008 */ jr $ra -/* 0348B8 80033CB8 46006006 */ mov.s $f0, $f12 - -/* 0348BC 80033CBC 00000000 */ nop -glabel func_80033CC0 -/* 0348C0 80033CC0 848E0006 */ lh $t6, 6($a0) -/* 0348C4 80033CC4 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 0348C8 80033CC8 35CF0002 */ ori $t7, $t6, 2 -/* 0348CC 80033CCC A48F0006 */ sh $t7, 6($a0) -/* 0348D0 80033CD0 90B90009 */ lbu $t9, 9($a1) -/* 0348D4 80033CD4 44811000 */ mtc1 $at, $f2 -/* 0348D8 80033CD8 44992000 */ mtc1 $t9, $f4 -/* 0348DC 80033CDC 3C014280 */ li $at, 0x42800000 # 64.000000 -/* 0348E0 80033CE0 46802020 */ cvt.s.w $f0, $f4 -/* 0348E4 80033CE4 44813000 */ mtc1 $at, $f6 -/* 0348E8 80033CE8 4602003C */ c.lt.s $f0, $f2 -/* 0348EC 80033CEC 00000000 */ nop -/* 0348F0 80033CF0 45000003 */ bc1f .L80033D00 -/* 0348F4 80033CF4 00000000 */ nop -/* 0348F8 80033CF8 46001006 */ mov.s $f0, $f2 -/* 0348FC 80033CFC 00000000 */ nop -.L80033D00: -/* 034900 80033D00 46060003 */ div.s $f0, $f0, $f6 -/* 034904 80033D04 8C820040 */ lw $v0, 0x40($a0) -/* 034908 80033D08 8C880050 */ lw $t0, 0x50($a0) -/* 03490C 80033D0C C448000C */ lwc1 $f8, 0xc($v0) -/* 034910 80033D10 00000000 */ nop -/* 034914 80033D14 46004282 */ mul.s $f10, $f8, $f0 -/* 034918 80033D18 E48A0008 */ swc1 $f10, 8($a0) -/* 03491C 80033D1C C4500004 */ lwc1 $f16, 4($v0) -/* 034920 80033D20 00000000 */ nop -/* 034924 80033D24 46008482 */ mul.s $f18, $f16, $f0 -/* 034928 80033D28 E5120000 */ swc1 $f18, ($t0) -/* 03492C 80033D2C 90A90008 */ lbu $t1, 8($a1) -/* 034930 80033D30 00000000 */ nop -/* 034934 80033D34 A089003A */ sb $t1, 0x3a($a0) -/* 034938 80033D38 90AB000A */ lbu $t3, 0xa($a1) -/* 03493C 80033D3C 00000000 */ nop -/* 034940 80033D40 000B6280 */ sll $t4, $t3, 0xa -/* 034944 80033D44 A48C0000 */ sh $t4, ($a0) -/* 034948 80033D48 90AD000B */ lbu $t5, 0xb($a1) -/* 03494C 80033D4C 00000000 */ nop -/* 034950 80033D50 11A00014 */ beqz $t5, .L80033DA4 -/* 034954 80033D54 00000000 */ nop -/* 034958 80033D58 8C8F004C */ lw $t7, 0x4c($a0) -/* 03495C 80033D5C 240E0001 */ li $t6, 1 -/* 034960 80033D60 A5EE0014 */ sh $t6, 0x14($t7) -/* 034964 80033D64 8C99004C */ lw $t9, 0x4c($a0) -/* 034968 80033D68 24180001 */ li $t8, 1 -/* 03496C 80033D6C A3380011 */ sb $t8, 0x11($t9) -/* 034970 80033D70 8C89004C */ lw $t1, 0x4c($a0) -/* 034974 80033D74 24080014 */ li $t0, 20 -/* 034978 80033D78 A1280010 */ sb $t0, 0x10($t1) -/* 03497C 80033D7C 8C8A004C */ lw $t2, 0x4c($a0) -/* 034980 80033D80 240BFFFB */ li $t3, -5 -/* 034984 80033D84 A1400012 */ sb $zero, 0x12($t2) -/* 034988 80033D88 8C8C004C */ lw $t4, 0x4c($a0) -/* 03498C 80033D8C 00000000 */ nop -/* 034990 80033D90 A18B0016 */ sb $t3, 0x16($t4) -/* 034994 80033D94 8C8E004C */ lw $t6, 0x4c($a0) -/* 034998 80033D98 90AD000B */ lbu $t5, 0xb($a1) -/* 03499C 80033D9C 00000000 */ nop -/* 0349A0 80033DA0 A1CD0017 */ sb $t5, 0x17($t6) -.L80033DA4: -/* 0349A4 80033DA4 8C980040 */ lw $t8, 0x40($a0) -/* 0349A8 80033DA8 808F003A */ lb $t7, 0x3a($a0) -/* 0349AC 80033DAC 83190055 */ lb $t9, 0x55($t8) -/* 0349B0 80033DB0 00000000 */ nop -/* 0349B4 80033DB4 01F9082A */ slt $at, $t7, $t9 -/* 0349B8 80033DB8 14200002 */ bnez $at, .L80033DC4 -/* 0349BC 80033DBC 00000000 */ nop -/* 0349C0 80033DC0 A080003A */ sb $zero, 0x3a($a0) -.L80033DC4: -/* 0349C4 80033DC4 AC800078 */ sw $zero, 0x78($a0) -/* 0349C8 80033DC8 03E00008 */ jr $ra -/* 0349CC 80033DCC AC80007C */ sw $zero, 0x7c($a0) - -glabel func_80033DD0 -/* 0349D0 80033DD0 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0349D4 80033DD4 AFBF0024 */ sw $ra, 0x24($sp) -/* 0349D8 80033DD8 AFB00020 */ sw $s0, 0x20($sp) -/* 0349DC 80033DDC 8C82004C */ lw $v0, 0x4c($a0) -/* 0349E0 80033DE0 00808025 */ move $s0, $a0 -/* 0349E4 80033DE4 10400054 */ beqz $v0, .L80033F38 -/* 0349E8 80033DE8 8FBF0024 */ lw $ra, 0x24($sp) -/* 0349EC 80033DEC 848E007C */ lh $t6, 0x7c($a0) -/* 0349F0 80033DF0 24830078 */ addiu $v1, $a0, 0x78 -/* 0349F4 80033DF4 19C00007 */ blez $t6, .L80033E14 -/* 0349F8 80033DF8 00000000 */ nop -/* 0349FC 80033DFC 846F0004 */ lh $t7, 4($v1) -/* 034A00 80033E00 00000000 */ nop -/* 034A04 80033E04 01E5C023 */ subu $t8, $t7, $a1 -/* 034A08 80033E08 A4780004 */ sh $t8, 4($v1) -/* 034A0C 80033E0C 8C82004C */ lw $v0, 0x4c($a0) -/* 034A10 80033E10 00000000 */ nop -.L80033E14: -/* 034A14 80033E14 84590014 */ lh $t9, 0x14($v0) -/* 034A18 80033E18 26030078 */ addiu $v1, $s0, 0x78 -/* 034A1C 80033E1C 33280040 */ andi $t0, $t9, 0x40 -/* 034A20 80033E20 11000032 */ beqz $t0, .L80033EEC -/* 034A24 80033E24 00000000 */ nop -/* 034A28 80033E28 84690004 */ lh $t1, 4($v1) -/* 034A2C 80033E2C 2404013C */ li $a0, 316 -/* 034A30 80033E30 1D20002E */ bgtz $t1, .L80033EEC -/* 034A34 80033E34 240A0004 */ li $t2, 4 -/* 034A38 80033E38 8E05000C */ lw $a1, 0xc($s0) -/* 034A3C 80033E3C 8E060010 */ lw $a2, 0x10($s0) -/* 034A40 80033E40 8E070014 */ lw $a3, 0x14($s0) -/* 034A44 80033E44 AFA30028 */ sw $v1, 0x28($sp) -/* 034A48 80033E48 AFA00014 */ sw $zero, 0x14($sp) -/* 034A4C 80033E4C 0C002556 */ jal func_80009558 -/* 034A50 80033E50 AFAA0010 */ sw $t2, 0x10($sp) -/* 034A54 80033E54 8E0B004C */ lw $t3, 0x4c($s0) -/* 034A58 80033E58 8FA30028 */ lw $v1, 0x28($sp) -/* 034A5C 80033E5C 8D6C0000 */ lw $t4, ($t3) -/* 034A60 80033E60 240D071C */ li $t5, 1820 -/* 034A64 80033E64 240E000A */ li $t6, 10 -/* 034A68 80033E68 A46D0006 */ sh $t5, 6($v1) -/* 034A6C 80033E6C A46E0004 */ sh $t6, 4($v1) -/* 034A70 80033E70 0C0270F2 */ jal func_8009C3C8 -/* 034A74 80033E74 AC6C0000 */ sw $t4, ($v1) -/* 034A78 80033E78 8FA30028 */ lw $v1, 0x28($sp) -/* 034A7C 80033E7C 28410002 */ slti $at, $v0, 2 -/* 034A80 80033E80 1020001F */ beqz $at, .L80033F00 -/* 034A84 80033E84 00000000 */ nop -/* 034A88 80033E88 8E0F0040 */ lw $t7, 0x40($s0) -/* 034A8C 80033E8C 24010001 */ li $at, 1 -/* 034A90 80033E90 81E20057 */ lb $v0, 0x57($t7) -/* 034A94 80033E94 00000000 */ nop -/* 034A98 80033E98 18400019 */ blez $v0, .L80033F00 -/* 034A9C 80033E9C 00000000 */ nop -/* 034AA0 80033EA0 14410003 */ bne $v0, $at, .L80033EB0 -/* 034AA4 80033EA4 00002025 */ move $a0, $zero -/* 034AA8 80033EA8 10000006 */ b .L80033EC4 -/* 034AAC 80033EAC 00003025 */ move $a2, $zero -.L80033EB0: -/* 034AB0 80033EB0 2445FFFF */ addiu $a1, $v0, -1 -/* 034AB4 80033EB4 0C01BE53 */ jal func_8006F94C -/* 034AB8 80033EB8 AFA30028 */ sw $v1, 0x28($sp) -/* 034ABC 80033EBC 8FA30028 */ lw $v1, 0x28($sp) -/* 034AC0 80033EC0 00403025 */ move $a2, $v0 -.L80033EC4: -/* 034AC4 80033EC4 24180001 */ li $t8, 1 -/* 034AC8 80033EC8 00D8C804 */ sllv $t9, $t8, $a2 -/* 034ACC 80033ECC AE190074 */ sw $t9, 0x74($s0) -/* 034AD0 80033ED0 AFA30028 */ sw $v1, 0x28($sp) -/* 034AD4 80033ED4 02002025 */ move $a0, $s0 -/* 034AD8 80033ED8 0C02BF0F */ jal func_800AFC3C -/* 034ADC 80033EDC 24050002 */ li $a1, 2 -/* 034AE0 80033EE0 8FA30028 */ lw $v1, 0x28($sp) -/* 034AE4 80033EE4 10000007 */ b .L80033F04 -/* 034AE8 80033EE8 84690006 */ lh $t1, 6($v1) -.L80033EEC: -/* 034AEC 80033EEC 84680004 */ lh $t0, 4($v1) -/* 034AF0 80033EF0 00000000 */ nop -/* 034AF4 80033EF4 1D000002 */ bgtz $t0, .L80033F00 -/* 034AF8 80033EF8 00000000 */ nop -/* 034AFC 80033EFC AC600000 */ sw $zero, ($v1) -.L80033F00: -/* 034B00 80033F00 84690006 */ lh $t1, 6($v1) -.L80033F04: -/* 034B04 80033F04 00000000 */ nop -/* 034B08 80033F08 A6090004 */ sh $t1, 4($s0) -/* 034B0C 80033F0C 846A0006 */ lh $t2, 6($v1) -/* 034B10 80033F10 00000000 */ nop -/* 034B14 80033F14 000A0823 */ negu $at, $t2 -/* 034B18 80033F18 00015880 */ sll $t3, $at, 2 -/* 034B1C 80033F1C 01615823 */ subu $t3, $t3, $at -/* 034B20 80033F20 000B58C0 */ sll $t3, $t3, 3 -/* 034B24 80033F24 01615821 */ addu $t3, $t3, $at -/* 034B28 80033F28 000B58C0 */ sll $t3, $t3, 3 -/* 034B2C 80033F2C 000B6203 */ sra $t4, $t3, 8 -/* 034B30 80033F30 A46C0006 */ sh $t4, 6($v1) -/* 034B34 80033F34 8FBF0024 */ lw $ra, 0x24($sp) -.L80033F38: -/* 034B38 80033F38 8FB00020 */ lw $s0, 0x20($sp) -/* 034B3C 80033F3C 03E00008 */ jr $ra -/* 034B40 80033F40 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_80033F44 -/* 034B44 80033F44 AFA50004 */ sw $a1, 4($sp) -/* 034B48 80033F48 8C8F004C */ lw $t7, 0x4c($a0) -/* 034B4C 80033F4C 240E0002 */ li $t6, 2 -/* 034B50 80033F50 A5EE0014 */ sh $t6, 0x14($t7) -/* 034B54 80033F54 8C98004C */ lw $t8, 0x4c($a0) -/* 034B58 80033F58 03E00008 */ jr $ra -/* 034B5C 80033F5C A3000011 */ sb $zero, 0x11($t8) - -glabel func_80033F60 -/* 034B60 80033F60 27BDFF78 */ addiu $sp, $sp, -0x88 -/* 034B64 80033F64 44852000 */ mtc1 $a1, $f4 -/* 034B68 80033F68 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 -/* 034B6C 80033F6C 46802020 */ cvt.s.w $f0, $f4 -/* 034B70 80033F70 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) -/* 034B74 80033F74 AFBF002C */ sw $ra, 0x2c($sp) -/* 034B78 80033F78 AFB00028 */ sw $s0, 0x28($sp) -/* 034B7C 80033F7C AFA5008C */ sw $a1, 0x8c($sp) -/* 034B80 80033F80 8C830078 */ lw $v1, 0x78($a0) -/* 034B84 80033F84 00808025 */ move $s0, $a0 -/* 034B88 80033F88 15E00008 */ bnez $t7, .L80033FAC -/* 034B8C 80033F8C E7A0007C */ swc1 $f0, 0x7c($sp) -/* 034B90 80033F90 3C01800E */ lui $at, %hi(D_800E5FE4) # $at, 0x800e -/* 034B94 80033F94 C4295FE0 */ lwc1 $f9, %lo(D_800E5FE0)($at) -/* 034B98 80033F98 C4285FE4 */ lwc1 $f8, %lo(D_800E5FE4)($at) -/* 034B9C 80033F9C 460001A1 */ cvt.d.s $f6, $f0 -/* 034BA0 80033FA0 46283282 */ mul.d $f10, $f6, $f8 -/* 034BA4 80033FA4 46205120 */ cvt.s.d $f4, $f10 -/* 034BA8 80033FA8 E7A4007C */ swc1 $f4, 0x7c($sp) -.L80033FAC: -/* 034BAC 80033FAC 86180048 */ lh $t8, 0x48($s0) -/* 034BB0 80033FB0 24010074 */ li $at, 116 -/* 034BB4 80033FB4 17010015 */ bne $t8, $at, .L8003400C -/* 034BB8 80033FB8 00000000 */ nop -/* 034BBC 80033FBC 8E19007C */ lw $t9, 0x7c($s0) -/* 034BC0 80033FC0 00000000 */ nop -/* 034BC4 80033FC4 07210011 */ bgez $t9, .L8003400C -/* 034BC8 80033FC8 00000000 */ nop -/* 034BCC 80033FCC 44800000 */ mtc1 $zero, $f0 -/* 034BD0 80033FD0 00000000 */ nop -/* 034BD4 80033FD4 E600000C */ swc1 $f0, 0xc($s0) -/* 034BD8 80033FD8 E6000010 */ swc1 $f0, 0x10($s0) -/* 034BDC 80033FDC E6000014 */ swc1 $f0, 0x14($s0) -/* 034BE0 80033FE0 0C004558 */ jal func_80011560 -/* 034BE4 80033FE4 AFA30084 */ sw $v1, 0x84($sp) -/* 034BE8 80033FE8 8FA30084 */ lw $v1, 0x84($sp) -/* 034BEC 80033FEC 02002025 */ move $a0, $s0 -/* 034BF0 80033FF0 8C65000C */ lw $a1, 0xc($v1) -/* 034BF4 80033FF4 8C660010 */ lw $a2, 0x10($v1) -/* 034BF8 80033FF8 8C670014 */ lw $a3, 0x14($v1) -/* 034BFC 80033FFC 0C00455C */ jal func_80011570 -/* 034C00 80034000 00000000 */ nop -/* 034C04 80034004 100000AC */ b .L800342B8 -/* 034C08 80034008 8FAE008C */ lw $t6, 0x8c($sp) -.L8003400C: -/* 034C0C 8003400C C466000C */ lwc1 $f6, 0xc($v1) -/* 034C10 80034010 C608000C */ lwc1 $f8, 0xc($s0) -/* 034C14 80034014 3C01800E */ lui $at, %hi(D_800E5FEC) # $at, 0x800e -/* 034C18 80034018 46083281 */ sub.s $f10, $f6, $f8 -/* 034C1C 8003401C C4335FE8 */ lwc1 $f19, %lo(D_800E5FE8)($at) -/* 034C20 80034020 C4325FEC */ lwc1 $f18, %lo(D_800E5FEC)($at) -/* 034C24 80034024 46005121 */ cvt.d.s $f4, $f10 -/* 034C28 80034028 46322182 */ mul.d $f6, $f4, $f18 -/* 034C2C 8003402C 3C014024 */ li $at, 0x40240000 # 2.562500 -/* 034C30 80034030 44814800 */ mtc1 $at, $f9 -/* 034C34 80034034 44804000 */ mtc1 $zero, $f8 -/* 034C38 80034038 C7A4007C */ lwc1 $f4, 0x7c($sp) -/* 034C3C 8003403C 462030A0 */ cvt.s.d $f2, $f6 -/* 034C40 80034040 44805000 */ mtc1 $zero, $f10 -/* 034C44 80034044 46001021 */ cvt.d.s $f0, $f2 -/* 034C48 80034048 4620403C */ c.lt.d $f8, $f0 -/* 034C4C 8003404C 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 034C50 80034050 45000004 */ bc1f .L80034064 -/* 034C54 80034054 46002421 */ cvt.d.s $f16, $f4 -/* 034C58 80034058 44811000 */ mtc1 $at, $f2 -/* 034C5C 8003405C 00000000 */ nop -/* 034C60 80034060 46001021 */ cvt.d.s $f0, $f2 -.L80034064: -/* 034C64 80034064 3C01C024 */ li $at, 0xC0240000 # -2.562500 -/* 034C68 80034068 44815800 */ mtc1 $at, $f11 -/* 034C6C 8003406C 3C01C120 */ li $at, 0xC1200000 # -10.000000 -/* 034C70 80034070 462A003C */ c.lt.d $f0, $f10 -/* 034C74 80034074 44805000 */ mtc1 $zero, $f10 -/* 034C78 80034078 45000003 */ bc1f .L80034088 -/* 034C7C 8003407C 00000000 */ nop -/* 034C80 80034080 44811000 */ mtc1 $at, $f2 -/* 034C84 80034084 00000000 */ nop -.L80034088: -/* 034C88 80034088 C60E001C */ lwc1 $f14, 0x1c($s0) -/* 034C8C 8003408C 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 034C90 80034090 460E1181 */ sub.s $f6, $f2, $f14 -/* 034C94 80034094 44815800 */ mtc1 $at, $f11 -/* 034C98 80034098 46003221 */ cvt.d.s $f8, $f6 -/* 034C9C 8003409C 462A4102 */ mul.d $f4, $f8, $f10 -/* 034CA0 800340A0 46007221 */ cvt.d.s $f8, $f14 -/* 034CA4 800340A4 3C014024 */ li $at, 0x40240000 # 2.562500 -/* 034CA8 800340A8 46302182 */ mul.d $f6, $f4, $f16 -/* 034CAC 800340AC 46264280 */ add.d $f10, $f8, $f6 -/* 034CB0 800340B0 C6060010 */ lwc1 $f6, 0x10($s0) -/* 034CB4 800340B4 46205120 */ cvt.s.d $f4, $f10 -/* 034CB8 800340B8 44813800 */ mtc1 $at, $f7 -/* 034CBC 800340BC E604001C */ swc1 $f4, 0x1c($s0) -/* 034CC0 800340C0 C4680010 */ lwc1 $f8, 0x10($v1) -/* 034CC4 800340C4 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 034CC8 800340C8 46064281 */ sub.s $f10, $f8, $f6 -/* 034CCC 800340CC 44803000 */ mtc1 $zero, $f6 -/* 034CD0 800340D0 46005121 */ cvt.d.s $f4, $f10 -/* 034CD4 800340D4 46322202 */ mul.d $f8, $f4, $f18 -/* 034CD8 800340D8 44805000 */ mtc1 $zero, $f10 -/* 034CDC 800340DC 462040A0 */ cvt.s.d $f2, $f8 -/* 034CE0 800340E0 46001021 */ cvt.d.s $f0, $f2 -/* 034CE4 800340E4 4620303C */ c.lt.d $f6, $f0 -/* 034CE8 800340E8 44803000 */ mtc1 $zero, $f6 -/* 034CEC 800340EC 45000004 */ bc1f .L80034100 -/* 034CF0 800340F0 00000000 */ nop -/* 034CF4 800340F4 44811000 */ mtc1 $at, $f2 -/* 034CF8 800340F8 00000000 */ nop -/* 034CFC 800340FC 46001021 */ cvt.d.s $f0, $f2 -.L80034100: -/* 034D00 80034100 3C01C024 */ li $at, 0xC0240000 # -2.562500 -/* 034D04 80034104 44815800 */ mtc1 $at, $f11 -/* 034D08 80034108 3C01C120 */ li $at, 0xC1200000 # -10.000000 -/* 034D0C 8003410C 462A003C */ c.lt.d $f0, $f10 -/* 034D10 80034110 00000000 */ nop -/* 034D14 80034114 45000003 */ bc1f .L80034124 -/* 034D18 80034118 00000000 */ nop -/* 034D1C 8003411C 44811000 */ mtc1 $at, $f2 -/* 034D20 80034120 00000000 */ nop -.L80034124: -/* 034D24 80034124 C60C0020 */ lwc1 $f12, 0x20($s0) -/* 034D28 80034128 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 034D2C 8003412C 460C1101 */ sub.s $f4, $f2, $f12 -/* 034D30 80034130 44813800 */ mtc1 $at, $f7 -/* 034D34 80034134 46002221 */ cvt.d.s $f8, $f4 -/* 034D38 80034138 46264282 */ mul.d $f10, $f8, $f6 -/* 034D3C 8003413C 46006221 */ cvt.d.s $f8, $f12 -/* 034D40 80034140 3C014024 */ li $at, 0x40240000 # 2.562500 -/* 034D44 80034144 46305102 */ mul.d $f4, $f10, $f16 -/* 034D48 80034148 46244180 */ add.d $f6, $f8, $f4 -/* 034D4C 8003414C C6040014 */ lwc1 $f4, 0x14($s0) -/* 034D50 80034150 462032A0 */ cvt.s.d $f10, $f6 -/* 034D54 80034154 44812800 */ mtc1 $at, $f5 -/* 034D58 80034158 E60A0020 */ swc1 $f10, 0x20($s0) -/* 034D5C 8003415C C4680014 */ lwc1 $f8, 0x14($v1) -/* 034D60 80034160 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 034D64 80034164 46044181 */ sub.s $f6, $f8, $f4 -/* 034D68 80034168 44802000 */ mtc1 $zero, $f4 -/* 034D6C 8003416C 460032A1 */ cvt.d.s $f10, $f6 -/* 034D70 80034170 46325202 */ mul.d $f8, $f10, $f18 -/* 034D74 80034174 44803000 */ mtc1 $zero, $f6 -/* 034D78 80034178 462040A0 */ cvt.s.d $f2, $f8 -/* 034D7C 8003417C 46001021 */ cvt.d.s $f0, $f2 -/* 034D80 80034180 4620203C */ c.lt.d $f4, $f0 -/* 034D84 80034184 44802000 */ mtc1 $zero, $f4 -/* 034D88 80034188 45000004 */ bc1f .L8003419C -/* 034D8C 8003418C 00000000 */ nop -/* 034D90 80034190 44811000 */ mtc1 $at, $f2 -/* 034D94 80034194 00000000 */ nop -/* 034D98 80034198 46001021 */ cvt.d.s $f0, $f2 -.L8003419C: -/* 034D9C 8003419C 3C01C024 */ li $at, 0xC0240000 # -2.562500 -/* 034DA0 800341A0 44813800 */ mtc1 $at, $f7 -/* 034DA4 800341A4 3C01C120 */ li $at, 0xC1200000 # -10.000000 -/* 034DA8 800341A8 4626003C */ c.lt.d $f0, $f6 -/* 034DAC 800341AC 00000000 */ nop -/* 034DB0 800341B0 45000003 */ bc1f .L800341C0 -/* 034DB4 800341B4 00000000 */ nop -/* 034DB8 800341B8 44811000 */ mtc1 $at, $f2 -/* 034DBC 800341BC 00000000 */ nop -.L800341C0: -/* 034DC0 800341C0 C6000024 */ lwc1 $f0, 0x24($s0) -/* 034DC4 800341C4 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 034DC8 800341C8 46001281 */ sub.s $f10, $f2, $f0 -/* 034DCC 800341CC 44812800 */ mtc1 $at, $f5 -/* 034DD0 800341D0 46005221 */ cvt.d.s $f8, $f10 -/* 034DD4 800341D4 46244182 */ mul.d $f6, $f8, $f4 -/* 034DD8 800341D8 46000221 */ cvt.d.s $f8, $f0 -/* 034DDC 800341DC C60E001C */ lwc1 $f14, 0x1c($s0) -/* 034DE0 800341E0 46303282 */ mul.d $f10, $f6, $f16 -/* 034DE4 800341E4 462A4100 */ add.d $f4, $f8, $f10 -/* 034DE8 800341E8 462021A0 */ cvt.s.d $f6, $f4 -/* 034DEC 800341EC 460E7202 */ mul.s $f8, $f14, $f14 -/* 034DF0 800341F0 E6060024 */ swc1 $f6, 0x24($s0) -/* 034DF4 800341F4 C6000024 */ lwc1 $f0, 0x24($s0) -/* 034DF8 800341F8 00000000 */ nop -/* 034DFC 800341FC 46000282 */ mul.s $f10, $f0, $f0 -/* 034E00 80034200 0C0326B4 */ jal sqrtf -/* 034E04 80034204 460A4300 */ add.s $f12, $f8, $f10 -/* 034E08 80034208 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 034E0C 8003420C 44812800 */ mtc1 $at, $f5 -/* 034E10 80034210 44802000 */ mtc1 $zero, $f4 -/* 034E14 80034214 460001A1 */ cvt.d.s $f6, $f0 -/* 034E18 80034218 4626203C */ c.lt.d $f4, $f6 -/* 034E1C 8003421C C7A2007C */ lwc1 $f2, 0x7c($sp) -/* 034E20 80034220 4500000C */ bc1f .L80034254 -/* 034E24 80034224 00000000 */ nop -/* 034E28 80034228 C60C001C */ lwc1 $f12, 0x1c($s0) -/* 034E2C 8003422C C60E0024 */ lwc1 $f14, 0x24($s0) -/* 034E30 80034230 0C01C1D4 */ jal func_80070750 -/* 034E34 80034234 00000000 */ nop -/* 034E38 80034238 C7A2007C */ lwc1 $f2, 0x7c($sp) -/* 034E3C 8003423C A6020000 */ sh $v0, ($s0) -/* 034E40 80034240 8FA9008C */ lw $t1, 0x8c($sp) -/* 034E44 80034244 86080002 */ lh $t0, 2($s0) -/* 034E48 80034248 00095240 */ sll $t2, $t1, 9 -/* 034E4C 8003424C 010A5823 */ subu $t3, $t0, $t2 -/* 034E50 80034250 A60B0002 */ sh $t3, 2($s0) -.L80034254: -/* 034E54 80034254 C608001C */ lwc1 $f8, 0x1c($s0) -/* 034E58 80034258 C6040020 */ lwc1 $f4, 0x20($s0) -/* 034E5C 8003425C 46024282 */ mul.s $f10, $f8, $f2 -/* 034E60 80034260 C6080024 */ lwc1 $f8, 0x24($s0) -/* 034E64 80034264 02002025 */ move $a0, $s0 -/* 034E68 80034268 46022182 */ mul.s $f6, $f4, $f2 -/* 034E6C 8003426C 44055000 */ mfc1 $a1, $f10 -/* 034E70 80034270 46024282 */ mul.s $f10, $f8, $f2 -/* 034E74 80034274 44063000 */ mfc1 $a2, $f6 -/* 034E78 80034278 44075000 */ mfc1 $a3, $f10 -/* 034E7C 8003427C 0C00455C */ jal func_80011570 -/* 034E80 80034280 00000000 */ nop -/* 034E84 80034284 860C004A */ lh $t4, 0x4a($s0) -/* 034E88 80034288 2401012A */ li $at, 298 -/* 034E8C 8003428C 15810009 */ bne $t4, $at, .L800342B4 -/* 034E90 80034290 27A5004C */ addiu $a1, $sp, 0x4c -/* 034E94 80034294 C60C0010 */ lwc1 $f12, 0x10($s0) -/* 034E98 80034298 0C00AB42 */ jal func_8002AD08 -/* 034E9C 8003429C 00003025 */ move $a2, $zero -/* 034EA0 800342A0 10400005 */ beqz $v0, .L800342B8 -/* 034EA4 800342A4 8FAE008C */ lw $t6, 0x8c($sp) -/* 034EA8 800342A8 C7A4004C */ lwc1 $f4, 0x4c($sp) -/* 034EAC 800342AC 00000000 */ nop -/* 034EB0 800342B0 E6040010 */ swc1 $f4, 0x10($s0) -.L800342B4: -/* 034EB4 800342B4 8FAE008C */ lw $t6, 0x8c($sp) -.L800342B8: -/* 034EB8 800342B8 860D0018 */ lh $t5, 0x18($s0) -/* 034EBC 800342BC 000E7880 */ sll $t7, $t6, 2 -/* 034EC0 800342C0 01EE7821 */ addu $t7, $t7, $t6 -/* 034EC4 800342C4 000F7840 */ sll $t7, $t7, 1 -/* 034EC8 800342C8 8E190064 */ lw $t9, 0x64($s0) -/* 034ECC 800342CC 01AFC021 */ addu $t8, $t5, $t7 -/* 034ED0 800342D0 A6180018 */ sh $t8, 0x18($s0) -/* 034ED4 800342D4 AFB90074 */ sw $t9, 0x74($sp) -/* 034ED8 800342D8 8E02004C */ lw $v0, 0x4c($s0) -/* 034EDC 800342DC 00000000 */ nop -/* 034EE0 800342E0 8C440000 */ lw $a0, ($v0) -/* 034EE4 800342E4 00000000 */ nop -/* 034EE8 800342E8 10800032 */ beqz $a0, .L800343B4 -/* 034EEC 800342EC 00000000 */ nop -/* 034EF0 800342F0 90490013 */ lbu $t1, 0x13($v0) -/* 034EF4 800342F4 00000000 */ nop -/* 034EF8 800342F8 2921003C */ slti $at, $t1, 0x3c -/* 034EFC 800342FC 1020002D */ beqz $at, .L800343B4 -/* 034F00 80034300 00000000 */ nop -/* 034F04 80034304 8C880040 */ lw $t0, 0x40($a0) -/* 034F08 80034308 24050001 */ li $a1, 1 -/* 034F0C 8003430C 810A0054 */ lb $t2, 0x54($t0) -/* 034F10 80034310 00801825 */ move $v1, $a0 -/* 034F14 80034314 14AA0027 */ bne $a1, $t2, .L800343B4 -/* 034F18 80034318 00000000 */ nop -/* 034F1C 8003431C 8C820064 */ lw $v0, 0x64($a0) -/* 034F20 80034320 2401FFFF */ li $at, -1 -/* 034F24 80034324 844B0000 */ lh $t3, ($v0) -/* 034F28 80034328 00000000 */ nop -/* 034F2C 8003432C 11610021 */ beq $t3, $at, .L800343B4 -/* 034F30 80034330 00000000 */ nop -/* 034F34 80034334 860C0048 */ lh $t4, 0x48($s0) -/* 034F38 80034338 2401006C */ li $at, 108 -/* 034F3C 8003433C 15810012 */ bne $t4, $at, .L80034388 -/* 034F40 80034340 240E0014 */ li $t6, 20 -/* 034F44 80034344 A0450187 */ sb $a1, 0x187($v0) -/* 034F48 80034348 8E060014 */ lw $a2, 0x14($s0) -/* 034F4C 8003434C C60E0010 */ lwc1 $f14, 0x10($s0) -/* 034F50 80034350 C60C000C */ lwc1 $f12, 0xc($s0) -/* 034F54 80034354 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 034F58 80034358 44813000 */ mtc1 $at, $f6 -/* 034F5C 8003435C AE0E007C */ sw $t6, 0x7c($s0) -/* 034F60 80034360 240D0011 */ li $t5, 17 -/* 034F64 80034364 AFAD0010 */ sw $t5, 0x10($sp) -/* 034F68 80034368 AFA50018 */ sw $a1, 0x18($sp) -/* 034F6C 8003436C 2407002C */ li $a3, 44 -/* 034F70 80034370 0C00FF11 */ jal func_8003FC44 -/* 034F74 80034374 E7A60014 */ swc1 $f6, 0x14($sp) -/* 034F78 80034378 0C003FEE */ jal func_8000FFB8 -/* 034F7C 8003437C 02002025 */ move $a0, $s0 -/* 034F80 80034380 1000000D */ b .L800343B8 -/* 034F84 80034384 86090048 */ lh $t1, 0x48($s0) -.L80034388: -/* 034F88 80034388 8E0F007C */ lw $t7, 0x7c($s0) -/* 034F8C 8003438C 2418003C */ li $t8, 60 -/* 034F90 80034390 19E00008 */ blez $t7, .L800343B4 -/* 034F94 80034394 2419FFC4 */ li $t9, -60 -/* 034F98 80034398 A4580204 */ sh $t8, 0x204($v0) -/* 034F9C 8003439C AE19007C */ sw $t9, 0x7c($s0) -/* 034FA0 800343A0 AE030078 */ sw $v1, 0x78($s0) -/* 034FA4 800343A4 8FA50074 */ lw $a1, 0x74($sp) -/* 034FA8 800343A8 2404024A */ li $a0, 586 -/* 034FAC 800343AC 0C000741 */ jal func_80001D04 -/* 034FB0 800343B0 24A5001C */ addiu $a1, $a1, 0x1c -.L800343B4: -/* 034FB4 800343B4 86090048 */ lh $t1, 0x48($s0) -.L800343B8: -/* 034FB8 800343B8 2401006C */ li $at, 108 -/* 034FBC 800343BC 15210032 */ bne $t1, $at, .L80034488 -/* 034FC0 800343C0 24080001 */ li $t0, 1 -/* 034FC4 800343C4 AE080074 */ sw $t0, 0x74($s0) -/* 034FC8 800343C8 8FA5008C */ lw $a1, 0x8c($sp) -/* 034FCC 800343CC 0C02BF0F */ jal func_800AFC3C -/* 034FD0 800343D0 02002025 */ move $a0, $s0 -/* 034FD4 800343D4 8E0A007C */ lw $t2, 0x7c($s0) -/* 034FD8 800343D8 8FAB008C */ lw $t3, 0x8c($sp) -/* 034FDC 800343DC 00000000 */ nop -/* 034FE0 800343E0 014B6023 */ subu $t4, $t2, $t3 -/* 034FE4 800343E4 0581004E */ bgez $t4, .L80034520 -/* 034FE8 800343E8 AE0C007C */ sw $t4, 0x7c($s0) -/* 034FEC 800343EC 860D004A */ lh $t5, 0x4a($s0) -/* 034FF0 800343F0 2401012A */ li $at, 298 -/* 034FF4 800343F4 15A1000F */ bne $t5, $at, .L80034434 -/* 034FF8 800343F8 00000000 */ nop -/* 034FFC 800343FC 0C003FEE */ jal func_8000FFB8 -/* 035000 80034400 02002025 */ move $a0, $s0 -/* 035004 80034404 C60C000C */ lwc1 $f12, 0xc($s0) -/* 035008 80034408 C60E0010 */ lwc1 $f14, 0x10($s0) -/* 03500C 8003440C 8E060014 */ lw $a2, 0x14($s0) -/* 035010 80034410 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 035014 80034414 44814000 */ mtc1 $at, $f8 -/* 035018 80034418 240F0011 */ li $t7, 17 -/* 03501C 8003441C 24180001 */ li $t8, 1 -/* 035020 80034420 AFB80018 */ sw $t8, 0x18($sp) -/* 035024 80034424 AFAF0010 */ sw $t7, 0x10($sp) -/* 035028 80034428 2407002C */ li $a3, 44 -/* 03502C 8003442C 0C00FF11 */ jal func_8003FC44 -/* 035030 80034430 E7A80014 */ swc1 $f8, 0x14($sp) -.L80034434: -/* 035034 80034434 3C01800E */ lui $at, %hi(D_800E5FF4) # $at, 0x800e -/* 035038 80034438 C60A0008 */ lwc1 $f10, 8($s0) -/* 03503C 8003443C C4275FF0 */ lwc1 $f7, %lo(D_800E5FF0)($at) -/* 035040 80034440 C4265FF4 */ lwc1 $f6, %lo(D_800E5FF4)($at) -/* 035044 80034444 46005121 */ cvt.d.s $f4, $f10 -/* 035048 80034448 46262202 */ mul.d $f8, $f4, $f6 -/* 03504C 8003444C 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 035050 80034450 462042A0 */ cvt.s.d $f10, $f8 -/* 035054 80034454 44804000 */ mtc1 $zero, $f8 -/* 035058 80034458 E60A0008 */ swc1 $f10, 8($s0) -/* 03505C 8003445C C6040008 */ lwc1 $f4, 8($s0) -/* 035060 80034460 44814800 */ mtc1 $at, $f9 -/* 035064 80034464 460021A1 */ cvt.d.s $f6, $f4 -/* 035068 80034468 4628303C */ c.lt.d $f6, $f8 -/* 03506C 8003446C 00000000 */ nop -/* 035070 80034470 4500002C */ bc1f .L80034524 -/* 035074 80034474 8FBF002C */ lw $ra, 0x2c($sp) -/* 035078 80034478 0C003FEE */ jal func_8000FFB8 -/* 03507C 8003447C 02002025 */ move $a0, $s0 -/* 035080 80034480 10000028 */ b .L80034524 -/* 035084 80034484 8FBF002C */ lw $ra, 0x2c($sp) -.L80034488: -/* 035088 80034488 8E02007C */ lw $v0, 0x7c($s0) -/* 03508C 8003448C 8FA8008C */ lw $t0, 0x8c($sp) -/* 035090 80034490 0441000A */ bgez $v0, .L800344BC -/* 035094 80034494 00485023 */ subu $t2, $v0, $t0 -/* 035098 80034498 8FB9008C */ lw $t9, 0x8c($sp) -/* 03509C 8003449C 00000000 */ nop -/* 0350A0 800344A0 00594821 */ addu $t1, $v0, $t9 -/* 0350A4 800344A4 AE09007C */ sw $t1, 0x7c($s0) -/* 0350A8 800344A8 05200009 */ bltz $t1, .L800344D0 -/* 0350AC 800344AC 01201025 */ move $v0, $t1 -/* 0350B0 800344B0 AE00007C */ sw $zero, 0x7c($s0) -/* 0350B4 800344B4 10000006 */ b .L800344D0 -/* 0350B8 800344B8 00001025 */ move $v0, $zero -.L800344BC: -/* 0350BC 800344BC AE0A007C */ sw $t2, 0x7c($s0) -/* 0350C0 800344C0 1D400003 */ bgtz $t2, .L800344D0 -/* 0350C4 800344C4 01401025 */ move $v0, $t2 -/* 0350C8 800344C8 AE00007C */ sw $zero, 0x7c($s0) -/* 0350CC 800344CC 00001025 */ move $v0, $zero -.L800344D0: -/* 0350D0 800344D0 14400014 */ bnez $v0, .L80034524 -/* 0350D4 800344D4 8FBF002C */ lw $ra, 0x2c($sp) -/* 0350D8 800344D8 8FAB0074 */ lw $t3, 0x74($sp) -/* 0350DC 800344DC 00000000 */ nop -/* 0350E0 800344E0 8D64001C */ lw $a0, 0x1c($t3) -/* 0350E4 800344E4 00000000 */ nop -/* 0350E8 800344E8 10800003 */ beqz $a0, .L800344F8 -/* 0350EC 800344EC 00000000 */ nop -/* 0350F0 800344F0 0C001223 */ jal func_8000488C -/* 0350F4 800344F4 00000000 */ nop -.L800344F8: -/* 0350F8 800344F8 8E05000C */ lw $a1, 0xc($s0) -/* 0350FC 800344FC 8E060010 */ lw $a2, 0x10($s0) -/* 035100 80034500 8E070014 */ lw $a3, 0x14($s0) -/* 035104 80034504 240C0004 */ li $t4, 4 -/* 035108 80034508 AFAC0010 */ sw $t4, 0x10($sp) -/* 03510C 8003450C AFA00014 */ sw $zero, 0x14($sp) -/* 035110 80034510 0C002556 */ jal func_80009558 -/* 035114 80034514 24040155 */ li $a0, 341 -/* 035118 80034518 0C003FEE */ jal func_8000FFB8 -/* 03511C 8003451C 02002025 */ move $a0, $s0 -.L80034520: -/* 035120 80034520 8FBF002C */ lw $ra, 0x2c($sp) -.L80034524: -/* 035124 80034524 8FB00028 */ lw $s0, 0x28($sp) -/* 035128 80034528 03E00008 */ jr $ra -/* 03512C 8003452C 27BD0088 */ addiu $sp, $sp, 0x88 - -glabel func_80034530 -/* 035130 80034530 8C8F004C */ lw $t7, 0x4c($a0) -/* 035134 80034534 240E0022 */ li $t6, 34 -/* 035138 80034538 A5EE0014 */ sh $t6, 0x14($t7) -/* 03513C 8003453C 8C98004C */ lw $t8, 0x4c($a0) -/* 035140 80034540 00000000 */ nop -/* 035144 80034544 A3000011 */ sb $zero, 0x11($t8) -/* 035148 80034548 8C820064 */ lw $v0, 0x64($a0) -/* 03514C 8003454C 80B9000A */ lb $t9, 0xa($a1) -/* 035150 80034550 00000000 */ nop -/* 035154 80034554 A059000E */ sb $t9, 0xe($v0) -/* 035158 80034558 80A8000B */ lb $t0, 0xb($a1) -/* 03515C 8003455C 00000000 */ nop -/* 035160 80034560 A048000F */ sb $t0, 0xf($v0) -/* 035164 80034564 90A9000C */ lbu $t1, 0xc($a1) -/* 035168 80034568 804B000F */ lb $t3, 0xf($v0) -/* 03516C 8003456C A0490010 */ sb $t1, 0x10($v0) -/* 035170 80034570 90AA000D */ lbu $t2, 0xd($a1) -/* 035174 80034574 A44B000C */ sh $t3, 0xc($v0) -/* 035178 80034578 A04A0011 */ sb $t2, 0x11($v0) -/* 03517C 8003457C 90AD0008 */ lbu $t5, 8($a1) -/* 035180 80034580 00000000 */ nop -/* 035184 80034584 000D7200 */ sll $t6, $t5, 8 -/* 035188 80034588 A48E0000 */ sh $t6, ($a0) -/* 03518C 8003458C 90B80009 */ lbu $t8, 9($a1) -/* 035190 80034590 00000000 */ nop -/* 035194 80034594 0018CA00 */ sll $t9, $t8, 8 -/* 035198 80034598 03E00008 */ jr $ra -/* 03519C 8003459C A4990002 */ sh $t9, 2($a0) - -glabel func_800345A0 -/* 0351A0 800345A0 27BDFF38 */ addiu $sp, $sp, -0xc8 -/* 0351A4 800345A4 AFBF003C */ sw $ra, 0x3c($sp) -/* 0351A8 800345A8 AFB10038 */ sw $s1, 0x38($sp) -/* 0351AC 800345AC AFB00034 */ sw $s0, 0x34($sp) -/* 0351B0 800345B0 E7B70028 */ swc1 $f23, 0x28($sp) -/* 0351B4 800345B4 E7B6002C */ swc1 $f22, 0x2c($sp) -/* 0351B8 800345B8 E7B50020 */ swc1 $f21, 0x20($sp) -/* 0351BC 800345BC E7B40024 */ swc1 $f20, 0x24($sp) -/* 0351C0 800345C0 8C910064 */ lw $s1, 0x64($a0) -/* 0351C4 800345C4 00808025 */ move $s0, $a0 -/* 0351C8 800345C8 8622000C */ lh $v0, 0xc($s1) -/* 0351CC 800345CC 00000000 */ nop -/* 0351D0 800345D0 18400003 */ blez $v0, .L800345E0 -/* 0351D4 800345D4 00457023 */ subu $t6, $v0, $a1 -/* 0351D8 800345D8 10000091 */ b .L80034820 -/* 0351DC 800345DC A62E000C */ sh $t6, 0xc($s1) -.L800345E0: -/* 0351E0 800345E0 8E03004C */ lw $v1, 0x4c($s0) -/* 0351E4 800345E4 922F0011 */ lbu $t7, 0x11($s1) -/* 0351E8 800345E8 90780013 */ lbu $t8, 0x13($v1) -/* 0351EC 800345EC 00000000 */ nop -/* 0351F0 800345F0 01F8082A */ slt $at, $t7, $t8 -/* 0351F4 800345F4 1420008B */ bnez $at, .L80034824 -/* 0351F8 800345F8 8FBF003C */ lw $ra, 0x3c($sp) -/* 0351FC 800345FC 8239000E */ lb $t9, 0xe($s1) -/* 035200 80034600 00000000 */ nop -/* 035204 80034604 1320002D */ beqz $t9, .L800346BC -/* 035208 80034608 00000000 */ nop -/* 03520C 8003460C 8C620000 */ lw $v0, ($v1) -/* 035210 80034610 00000000 */ nop -/* 035214 80034614 10400029 */ beqz $v0, .L800346BC -/* 035218 80034618 00000000 */ nop -/* 03521C 8003461C 84480048 */ lh $t0, 0x48($v0) -/* 035220 80034620 24010001 */ li $at, 1 -/* 035224 80034624 15010025 */ bne $t0, $at, .L800346BC -/* 035228 80034628 00000000 */ nop -/* 03522C 8003462C C604000C */ lwc1 $f4, 0xc($s0) -/* 035230 80034630 C446000C */ lwc1 $f6, 0xc($v0) -/* 035234 80034634 C6080010 */ lwc1 $f8, 0x10($s0) -/* 035238 80034638 46062501 */ sub.s $f20, $f4, $f6 -/* 03523C 8003463C C44A0010 */ lwc1 $f10, 0x10($v0) -/* 035240 80034640 4614A102 */ mul.s $f4, $f20, $f20 -/* 035244 80034644 460A4581 */ sub.s $f22, $f8, $f10 -/* 035248 80034648 C6100014 */ lwc1 $f16, 0x14($s0) -/* 03524C 8003464C C4520014 */ lwc1 $f18, 0x14($v0) -/* 035250 80034650 4616B182 */ mul.s $f6, $f22, $f22 -/* 035254 80034654 46128381 */ sub.s $f14, $f16, $f18 -/* 035258 80034658 E7AE0058 */ swc1 $f14, 0x58($sp) -/* 03525C 8003465C 460E7282 */ mul.s $f10, $f14, $f14 -/* 035260 80034660 46062200 */ add.s $f8, $f4, $f6 -/* 035264 80034664 0C0326B4 */ jal sqrtf -/* 035268 80034668 460A4300 */ add.s $f12, $f8, $f10 -/* 03526C 8003466C 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 035270 80034670 44818000 */ mtc1 $at, $f16 -/* 035274 80034674 C7AE0058 */ lwc1 $f14, 0x58($sp) -/* 035278 80034678 4600803C */ c.lt.s $f16, $f0 -/* 03527C 8003467C 00000000 */ nop -/* 035280 80034680 4500000E */ bc1f .L800346BC -/* 035284 80034684 00000000 */ nop -/* 035288 80034688 4600A303 */ div.s $f12, $f20, $f0 -/* 03528C 8003468C 00000000 */ nop -/* 035290 80034690 4600B583 */ div.s $f22, $f22, $f0 -/* 035294 80034694 0C01C1D4 */ jal func_80070750 -/* 035298 80034698 46007383 */ div.s $f14, $f14, $f0 -/* 03529C 8003469C 24018000 */ li $at, -32768 -/* 0352A0 800346A0 00415021 */ addu $t2, $v0, $at -/* 0352A4 800346A4 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0352A8 800346A8 44817000 */ mtc1 $at, $f14 -/* 0352AC 800346AC A60A0000 */ sh $t2, ($s0) -/* 0352B0 800346B0 0C01C1D4 */ jal func_80070750 -/* 0352B4 800346B4 4600B306 */ mov.s $f12, $f22 -/* 0352B8 800346B8 A6020002 */ sh $v0, 2($s0) -.L800346BC: -/* 0352BC 800346BC 444DF800 */ cfc1 $t5, $31 -/* 0352C0 800346C0 822C000F */ lb $t4, 0xf($s1) -/* 0352C4 800346C4 35A10003 */ ori $at, $t5, 3 -/* 0352C8 800346C8 38210002 */ xori $at, $at, 2 -/* 0352CC 800346CC A62C000C */ sh $t4, 0xc($s1) -/* 0352D0 800346D0 C612000C */ lwc1 $f18, 0xc($s0) -/* 0352D4 800346D4 44C1F800 */ ctc1 $at, $31 -/* 0352D8 800346D8 24090008 */ li $t1, 8 -/* 0352DC 800346DC 46009124 */ cvt.w.s $f4, $f18 -/* 0352E0 800346E0 240A00C6 */ li $t2, 198 -/* 0352E4 800346E4 44CDF800 */ ctc1 $t5, $31 -/* 0352E8 800346E8 440E2000 */ mfc1 $t6, $f4 -/* 0352EC 800346EC 240B0004 */ li $t3, 4 -/* 0352F0 800346F0 444FF800 */ cfc1 $t7, $31 -/* 0352F4 800346F4 A7AE004A */ sh $t6, 0x4a($sp) -/* 0352F8 800346F8 35E10003 */ ori $at, $t7, 3 -/* 0352FC 800346FC 38210002 */ xori $at, $at, 2 -/* 035300 80034700 44C1F800 */ ctc1 $at, $31 -/* 035304 80034704 C6060010 */ lwc1 $f6, 0x10($s0) -/* 035308 80034708 24040133 */ li $a0, 307 -/* 03530C 8003470C 46003224 */ cvt.w.s $f8, $f6 -/* 035310 80034710 44CFF800 */ ctc1 $t7, $31 -/* 035314 80034714 44184000 */ mfc1 $t8, $f8 -/* 035318 80034718 00000000 */ nop -/* 03531C 8003471C 4459F800 */ cfc1 $t9, $31 -/* 035320 80034720 A7B8004C */ sh $t8, 0x4c($sp) -/* 035324 80034724 37210003 */ ori $at, $t9, 3 -/* 035328 80034728 38210002 */ xori $at, $at, 2 -/* 03532C 8003472C 44C1F800 */ ctc1 $at, $31 -/* 035330 80034730 C60A0014 */ lwc1 $f10, 0x14($s0) -/* 035334 80034734 A3A90049 */ sb $t1, 0x49($sp) -/* 035338 80034738 46005424 */ cvt.w.s $f16, $f10 -/* 03533C 8003473C A3AA0048 */ sb $t2, 0x48($sp) -/* 035340 80034740 44088000 */ mfc1 $t0, $f16 -/* 035344 80034744 44D9F800 */ ctc1 $t9, $31 -/* 035348 80034748 A7A8004E */ sh $t0, 0x4e($sp) -/* 03534C 8003474C 8E070014 */ lw $a3, 0x14($s0) -/* 035350 80034750 8E060010 */ lw $a2, 0x10($s0) -/* 035354 80034754 8E05000C */ lw $a1, 0xc($s0) -/* 035358 80034758 AFA00014 */ sw $zero, 0x14($sp) -/* 03535C 8003475C 0C002556 */ jal func_80009558 -/* 035360 80034760 AFAB0010 */ sw $t3, 0x10($sp) -/* 035364 80034764 27A40048 */ addiu $a0, $sp, 0x48 -/* 035368 80034768 0C003A95 */ jal func_8000EA54 -/* 03536C 8003476C 24050001 */ li $a1, 1 -/* 035370 80034770 1040002B */ beqz $v0, .L80034820 -/* 035374 80034774 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 035378 80034778 AC40003C */ sw $zero, 0x3c($v0) -/* 03537C 8003477C 860C0000 */ lh $t4, ($s0) -/* 035380 80034780 4480B000 */ mtc1 $zero, $f22 -/* 035384 80034784 A44C0000 */ sh $t4, ($v0) -/* 035388 80034788 860D0002 */ lh $t5, 2($s0) -/* 03538C 8003478C 44819000 */ mtc1 $at, $f18 -/* 035390 80034790 A44D0002 */ sh $t5, 2($v0) -/* 035394 80034794 922E0010 */ lbu $t6, 0x10($s1) -/* 035398 80034798 AC51007C */ sw $s1, 0x7c($v0) -/* 03539C 8003479C AC4E0078 */ sw $t6, 0x78($v0) -/* 0353A0 800347A0 E7B600B0 */ swc1 $f22, 0xb0($sp) -/* 0353A4 800347A4 E7B600B4 */ swc1 $f22, 0xb4($sp) -/* 0353A8 800347A8 E7B600B8 */ swc1 $f22, 0xb8($sp) -/* 0353AC 800347AC E7B200AC */ swc1 $f18, 0xac($sp) -/* 0353B0 800347B0 860F0000 */ lh $t7, ($s0) -/* 0353B4 800347B4 27A40064 */ addiu $a0, $sp, 0x64 -/* 0353B8 800347B8 A7AF00A4 */ sh $t7, 0xa4($sp) -/* 0353BC 800347BC 86180002 */ lh $t8, 2($s0) -/* 0353C0 800347C0 A7A000A8 */ sh $zero, 0xa8($sp) -/* 0353C4 800347C4 AFA200C0 */ sw $v0, 0xc0($sp) -/* 0353C8 800347C8 27A500A4 */ addiu $a1, $sp, 0xa4 -/* 0353CC 800347CC 0C01BF0C */ jal func_8006FC30 -/* 0353D0 800347D0 A7B800A6 */ sh $t8, 0xa6($sp) -/* 0353D4 800347D4 8239000E */ lb $t9, 0xe($s1) -/* 0353D8 800347D8 3C0141F0 */ li $at, 0x41F00000 # 30.000000 -/* 0353DC 800347DC 8FA300C0 */ lw $v1, 0xc0($sp) -/* 0353E0 800347E0 4481A000 */ mtc1 $at, $f20 -/* 0353E4 800347E4 17200004 */ bnez $t9, .L800347F8 -/* 0353E8 800347E8 27A40064 */ addiu $a0, $sp, 0x64 -/* 0353EC 800347EC 3C014234 */ li $at, 0x42340000 # 45.000000 -/* 0353F0 800347F0 4481A000 */ mtc1 $at, $f20 -/* 0353F4 800347F4 00000000 */ nop -.L800347F8: -/* 0353F8 800347F8 4405B000 */ mfc1 $a1, $f22 -/* 0353FC 800347FC 4406B000 */ mfc1 $a2, $f22 -/* 035400 80034800 4407A000 */ mfc1 $a3, $f20 -/* 035404 80034804 2468001C */ addiu $t0, $v1, 0x1c -/* 035408 80034808 24690020 */ addiu $t1, $v1, 0x20 -/* 03540C 8003480C 246A0024 */ addiu $t2, $v1, 0x24 -/* 035410 80034810 AFAA0018 */ sw $t2, 0x18($sp) -/* 035414 80034814 AFA90014 */ sw $t1, 0x14($sp) -/* 035418 80034818 0C01BD93 */ jal func_8006F64C -/* 03541C 8003481C AFA80010 */ sw $t0, 0x10($sp) -.L80034820: -/* 035420 80034820 8FBF003C */ lw $ra, 0x3c($sp) -.L80034824: -/* 035424 80034824 C7B50020 */ lwc1 $f21, 0x20($sp) -/* 035428 80034828 C7B40024 */ lwc1 $f20, 0x24($sp) -/* 03542C 8003482C C7B70028 */ lwc1 $f23, 0x28($sp) -/* 035430 80034830 C7B6002C */ lwc1 $f22, 0x2c($sp) -/* 035434 80034834 8FB00034 */ lw $s0, 0x34($sp) -/* 035438 80034838 8FB10038 */ lw $s1, 0x38($sp) -/* 03543C 8003483C 03E00008 */ jr $ra -/* 035440 80034840 27BD00C8 */ addiu $sp, $sp, 0xc8 - -glabel func_80034844 -/* 035444 80034844 AFA50004 */ sw $a1, 4($sp) -/* 035448 80034848 8C8F004C */ lw $t7, 0x4c($a0) -/* 03544C 8003484C 240E0002 */ li $t6, 2 -/* 035450 80034850 A5EE0014 */ sh $t6, 0x14($t7) -/* 035454 80034854 8C98004C */ lw $t8, 0x4c($a0) -/* 035458 80034858 03E00008 */ jr $ra -/* 03545C 8003485C A3000011 */ sb $zero, 0x11($t8) - -glabel func_80034860 -/* 035460 80034860 44852000 */ mtc1 $a1, $f4 -/* 035464 80034864 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 -/* 035468 80034868 468020A0 */ cvt.s.w $f2, $f4 -/* 03546C 8003486C 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) -/* 035470 80034870 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 035474 80034874 AFB00028 */ sw $s0, 0x28($sp) -/* 035478 80034878 00808025 */ move $s0, $a0 -/* 03547C 8003487C AFBF002C */ sw $ra, 0x2c($sp) -/* 035480 80034880 AFA50064 */ sw $a1, 0x64($sp) -/* 035484 80034884 00004025 */ move $t0, $zero -/* 035488 80034888 15E00007 */ bnez $t7, .L800348A8 -/* 03548C 8003488C 46001006 */ mov.s $f0, $f2 -/* 035490 80034890 3C01800E */ lui $at, %hi(D_800E5FFC) # $at, 0x800e -/* 035494 80034894 C4295FF8 */ lwc1 $f9, %lo(D_800E5FF8)($at) -/* 035498 80034898 C4285FFC */ lwc1 $f8, %lo(D_800E5FFC)($at) -/* 03549C 8003489C 460011A1 */ cvt.d.s $f6, $f2 -/* 0354A0 800348A0 46283282 */ mul.d $f10, $f6, $f8 -/* 0354A4 800348A4 46205020 */ cvt.s.d $f0, $f10 -.L800348A8: -/* 0354A8 800348A8 C612001C */ lwc1 $f18, 0x1c($s0) -/* 0354AC 800348AC C610000C */ lwc1 $f16, 0xc($s0) -/* 0354B0 800348B0 46009102 */ mul.s $f4, $f18, $f0 -/* 0354B4 800348B4 3C014110 */ li $at, 0x41100000 # 9.000000 -/* 0354B8 800348B8 2605000C */ addiu $a1, $s0, 0xc -/* 0354BC 800348BC 24040001 */ li $a0, 1 -/* 0354C0 800348C0 46048180 */ add.s $f6, $f16, $f4 -/* 0354C4 800348C4 27A60040 */ addiu $a2, $sp, 0x40 -/* 0354C8 800348C8 E7A60040 */ swc1 $f6, 0x40($sp) -/* 0354CC 800348CC C60A0020 */ lwc1 $f10, 0x20($s0) -/* 0354D0 800348D0 C6080010 */ lwc1 $f8, 0x10($s0) -/* 0354D4 800348D4 46005482 */ mul.s $f18, $f10, $f0 -/* 0354D8 800348D8 2407FFFF */ li $a3, -1 -/* 0354DC 800348DC 46124400 */ add.s $f16, $f8, $f18 -/* 0354E0 800348E0 44819000 */ mtc1 $at, $f18 -/* 0354E4 800348E4 E7B00044 */ swc1 $f16, 0x44($sp) -/* 0354E8 800348E8 C6060024 */ lwc1 $f6, 0x24($s0) -/* 0354EC 800348EC C6040014 */ lwc1 $f4, 0x14($s0) -/* 0354F0 800348F0 46003282 */ mul.s $f10, $f6, $f0 -/* 0354F4 800348F4 E7A0005C */ swc1 $f0, 0x5c($sp) -/* 0354F8 800348F8 A3A8004F */ sb $t0, 0x4f($sp) -/* 0354FC 800348FC AFA50034 */ sw $a1, 0x34($sp) -/* 035500 80034900 460A2200 */ add.s $f8, $f4, $f10 -/* 035504 80034904 E7B2003C */ swc1 $f18, 0x3c($sp) -/* 035508 80034908 0C00C44C */ jal func_80031130 -/* 03550C 8003490C E7A80048 */ swc1 $f8, 0x48($sp) -/* 035510 80034910 8FA40034 */ lw $a0, 0x34($sp) -/* 035514 80034914 24180001 */ li $t8, 1 -/* 035518 80034918 27B90038 */ addiu $t9, $sp, 0x38 -/* 03551C 8003491C AFA00038 */ sw $zero, 0x38($sp) -/* 035520 80034920 AFB90014 */ sw $t9, 0x14($sp) -/* 035524 80034924 AFB80010 */ sw $t8, 0x10($sp) -/* 035528 80034928 27A50040 */ addiu $a1, $sp, 0x40 -/* 03552C 8003492C 27A6003C */ addiu $a2, $sp, 0x3c -/* 035530 80034930 0C00C580 */ jal func_80031600 -/* 035534 80034934 27A7004E */ addiu $a3, $sp, 0x4e -/* 035538 80034938 8FA90038 */ lw $t1, 0x38($sp) -/* 03553C 8003493C 83A8004F */ lb $t0, 0x4f($sp) -/* 035540 80034940 C7A0005C */ lwc1 $f0, 0x5c($sp) -/* 035544 80034944 11200014 */ beqz $t1, .L80034998 -/* 035548 80034948 00000000 */ nop -/* 03554C 8003494C C7B00040 */ lwc1 $f16, 0x40($sp) -/* 035550 80034950 C606000C */ lwc1 $f6, 0xc($s0) -/* 035554 80034954 C6120010 */ lwc1 $f18, 0x10($s0) -/* 035558 80034958 46068101 */ sub.s $f4, $f16, $f6 -/* 03555C 8003495C 00000000 */ nop -/* 035560 80034960 46002283 */ div.s $f10, $f4, $f0 -/* 035564 80034964 E60A001C */ swc1 $f10, 0x1c($s0) -/* 035568 80034968 C7A80044 */ lwc1 $f8, 0x44($sp) -/* 03556C 8003496C C60A0014 */ lwc1 $f10, 0x14($s0) -/* 035570 80034970 46124401 */ sub.s $f16, $f8, $f18 -/* 035574 80034974 00000000 */ nop -/* 035578 80034978 46008183 */ div.s $f6, $f16, $f0 -/* 03557C 8003497C E6060020 */ swc1 $f6, 0x20($s0) -/* 035580 80034980 C7A40048 */ lwc1 $f4, 0x48($sp) -/* 035584 80034984 00000000 */ nop -/* 035588 80034988 460A2201 */ sub.s $f8, $f4, $f10 -/* 03558C 8003498C 00000000 */ nop -/* 035590 80034990 46004483 */ div.s $f18, $f8, $f0 -/* 035594 80034994 E6120024 */ swc1 $f18, 0x24($s0) -.L80034998: -/* 035598 80034998 C610001C */ lwc1 $f16, 0x1c($s0) -/* 03559C 8003499C C6040020 */ lwc1 $f4, 0x20($s0) -/* 0355A0 800349A0 46008182 */ mul.s $f6, $f16, $f0 -/* 0355A4 800349A4 C6080024 */ lwc1 $f8, 0x24($s0) -/* 0355A8 800349A8 A3A8004F */ sb $t0, 0x4f($sp) -/* 0355AC 800349AC 02002025 */ move $a0, $s0 -/* 0355B0 800349B0 46002282 */ mul.s $f10, $f4, $f0 -/* 0355B4 800349B4 44053000 */ mfc1 $a1, $f6 -/* 0355B8 800349B8 46004482 */ mul.s $f18, $f8, $f0 -/* 0355BC 800349BC 44065000 */ mfc1 $a2, $f10 -/* 0355C0 800349C0 44079000 */ mfc1 $a3, $f18 -/* 0355C4 800349C4 0C00455C */ jal func_80011570 -/* 0355C8 800349C8 00000000 */ nop -/* 0355CC 800349CC 8FAA0038 */ lw $t2, 0x38($sp) -/* 0355D0 800349D0 83A8004F */ lb $t0, 0x4f($sp) -/* 0355D4 800349D4 1140000E */ beqz $t2, .L80034A10 -/* 0355D8 800349D8 3C014210 */ li $at, 0x42100000 # 36.000000 -/* 0355DC 800349DC C6100010 */ lwc1 $f16, 0x10($s0) -/* 0355E0 800349E0 44813000 */ mtc1 $at, $f6 -/* 0355E4 800349E4 3C01800E */ lui $at, %hi(D_800E6000) # $at, 0x800e -/* 0355E8 800349E8 C60C000C */ lwc1 $f12, 0xc($s0) -/* 0355EC 800349EC 8E060014 */ lw $a2, 0x14($s0) -/* 0355F0 800349F0 C4246000 */ lwc1 $f4, %lo(D_800E6000)($at) -/* 0355F4 800349F4 AFA00018 */ sw $zero, 0x18($sp) -/* 0355F8 800349F8 AFA00010 */ sw $zero, 0x10($sp) -/* 0355FC 800349FC 2407002C */ li $a3, 44 -/* 035600 80034A00 46068381 */ sub.s $f14, $f16, $f6 -/* 035604 80034A04 0C00FF11 */ jal func_8003FC44 -/* 035608 80034A08 E7A40014 */ swc1 $f4, 0x14($sp) -/* 03560C 80034A0C 24080001 */ li $t0, 1 -.L80034A10: -/* 035610 80034A10 8E020078 */ lw $v0, 0x78($s0) -/* 035614 80034A14 8FAB0064 */ lw $t3, 0x64($sp) -/* 035618 80034A18 18400003 */ blez $v0, .L80034A28 -/* 03561C 80034A1C 004B6023 */ subu $t4, $v0, $t3 -/* 035620 80034A20 10000002 */ b .L80034A2C -/* 035624 80034A24 AE0C0078 */ sw $t4, 0x78($s0) -.L80034A28: -/* 035628 80034A28 24080001 */ li $t0, 1 -.L80034A2C: -/* 03562C 80034A2C 8E03004C */ lw $v1, 0x4c($s0) -/* 035630 80034A30 00000000 */ nop -/* 035634 80034A34 906D0013 */ lbu $t5, 0x13($v1) -/* 035638 80034A38 00000000 */ nop -/* 03563C 80034A3C 29A10050 */ slti $at, $t5, 0x50 -/* 035640 80034A40 10200023 */ beqz $at, .L80034AD0 -/* 035644 80034A44 00000000 */ nop -/* 035648 80034A48 8C620000 */ lw $v0, ($v1) -/* 03564C 80034A4C 00000000 */ nop -/* 035650 80034A50 1040001F */ beqz $v0, .L80034AD0 -/* 035654 80034A54 00000000 */ nop -/* 035658 80034A58 844E0048 */ lh $t6, 0x48($v0) -/* 03565C 80034A5C 24040001 */ li $a0, 1 -/* 035660 80034A60 148E001B */ bne $a0, $t6, .L80034AD0 -/* 035664 80034A64 2407002C */ li $a3, 44 -/* 035668 80034A68 8C430064 */ lw $v1, 0x64($v0) -/* 03566C 80034A6C 2401FFFF */ li $at, -1 -/* 035670 80034A70 846F0000 */ lh $t7, ($v1) -/* 035674 80034A74 24080001 */ li $t0, 1 -/* 035678 80034A78 11E10002 */ beq $t7, $at, .L80034A84 -/* 03567C 80034A7C 24190011 */ li $t9, 17 -/* 035680 80034A80 A0640187 */ sb $a0, 0x187($v1) -.L80034A84: -/* 035684 80034A84 8E02007C */ lw $v0, 0x7c($s0) -/* 035688 80034A88 241800B4 */ li $t8, 180 -/* 03568C 80034A8C 10400002 */ beqz $v0, .L80034A98 -/* 035690 80034A90 3C014210 */ li $at, 0x42100000 # 36.000000 -/* 035694 80034A94 A458000C */ sh $t8, 0xc($v0) -.L80034A98: -/* 035698 80034A98 C60A0010 */ lwc1 $f10, 0x10($s0) -/* 03569C 80034A9C 44814000 */ mtc1 $at, $f8 -/* 0356A0 80034AA0 C60C000C */ lwc1 $f12, 0xc($s0) -/* 0356A4 80034AA4 8E060014 */ lw $a2, 0x14($s0) -/* 0356A8 80034AA8 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 0356AC 80034AAC 44819000 */ mtc1 $at, $f18 -/* 0356B0 80034AB0 A3A8004F */ sb $t0, 0x4f($sp) -/* 0356B4 80034AB4 AFA00018 */ sw $zero, 0x18($sp) -/* 0356B8 80034AB8 AFB90010 */ sw $t9, 0x10($sp) -/* 0356BC 80034ABC 46085381 */ sub.s $f14, $f10, $f8 -/* 0356C0 80034AC0 0C00FF11 */ jal func_8003FC44 -/* 0356C4 80034AC4 E7B20014 */ swc1 $f18, 0x14($sp) -/* 0356C8 80034AC8 83A8004F */ lb $t0, 0x4f($sp) -/* 0356CC 80034ACC 00000000 */ nop -.L80034AD0: -/* 0356D0 80034AD0 11000004 */ beqz $t0, .L80034AE4 -/* 0356D4 80034AD4 8FBF002C */ lw $ra, 0x2c($sp) -/* 0356D8 80034AD8 0C003FEE */ jal func_8000FFB8 -/* 0356DC 80034ADC 02002025 */ move $a0, $s0 -/* 0356E0 80034AE0 8FBF002C */ lw $ra, 0x2c($sp) -.L80034AE4: -/* 0356E4 80034AE4 8FB00028 */ lw $s0, 0x28($sp) -/* 0356E8 80034AE8 03E00008 */ jr $ra -/* 0356EC 80034AEC 27BD0060 */ addiu $sp, $sp, 0x60 - -glabel func_80034AF0 -/* 0356F0 80034AF0 90AF0009 */ lbu $t7, 9($a1) -/* 0356F4 80034AF4 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 0356F8 80034AF8 448F2000 */ mtc1 $t7, $f4 -/* 0356FC 80034AFC 44811000 */ mtc1 $at, $f2 -/* 035700 80034B00 46802020 */ cvt.s.w $f0, $f4 -/* 035704 80034B04 3C014280 */ li $at, 0x42800000 # 64.000000 -/* 035708 80034B08 44813000 */ mtc1 $at, $f6 -/* 03570C 80034B0C 4602003C */ c.lt.s $f0, $f2 -/* 035710 80034B10 00000000 */ nop -/* 035714 80034B14 45000003 */ bc1f .L80034B24 -/* 035718 80034B18 00000000 */ nop -/* 03571C 80034B1C 46001006 */ mov.s $f0, $f2 -/* 035720 80034B20 00000000 */ nop -.L80034B24: -/* 035724 80034B24 46060003 */ div.s $f0, $f0, $f6 -/* 035728 80034B28 8C980040 */ lw $t8, 0x40($a0) -/* 03572C 80034B2C 00000000 */ nop -/* 035730 80034B30 C708000C */ lwc1 $f8, 0xc($t8) -/* 035734 80034B34 00000000 */ nop -/* 035738 80034B38 46004282 */ mul.s $f10, $f8, $f0 -/* 03573C 80034B3C E48A0008 */ swc1 $f10, 8($a0) -/* 035740 80034B40 90B90008 */ lbu $t9, 8($a1) -/* 035744 80034B44 03E00008 */ jr $ra -/* 035748 80034B48 AC990078 */ sw $t9, 0x78($a0) - -glabel func_80034B4C -/* 03574C 80034B4C 8C8F0078 */ lw $t7, 0x78($a0) -/* 035750 80034B50 848E0018 */ lh $t6, 0x18($a0) -/* 035754 80034B54 01E50019 */ multu $t7, $a1 -/* 035758 80034B58 0000C012 */ mflo $t8 -/* 03575C 80034B5C 01D8C821 */ addu $t9, $t6, $t8 -/* 035760 80034B60 03E00008 */ jr $ra -/* 035764 80034B64 A4990018 */ sh $t9, 0x18($a0) - -glabel func_80034B68 -/* 035768 80034B68 AFA40000 */ sw $a0, ($sp) -/* 03576C 80034B6C 03E00008 */ jr $ra -/* 035770 80034B70 AFA50004 */ sw $a1, 4($sp) - -glabel func_80034B74 -/* 035774 80034B74 27BDFF68 */ addiu $sp, $sp, -0x98 -/* 035778 80034B78 AFBF004C */ sw $ra, 0x4c($sp) -/* 03577C 80034B7C AFB00048 */ sw $s0, 0x48($sp) -/* 035780 80034B80 E7BF0040 */ swc1 $f31, 0x40($sp) -/* 035784 80034B84 E7BE0044 */ swc1 $f30, 0x44($sp) -/* 035788 80034B88 E7BD0038 */ swc1 $f29, 0x38($sp) -/* 03578C 80034B8C E7BC003C */ swc1 $f28, 0x3c($sp) -/* 035790 80034B90 E7BB0030 */ swc1 $f27, 0x30($sp) -/* 035794 80034B94 E7BA0034 */ swc1 $f26, 0x34($sp) -/* 035798 80034B98 E7B90028 */ swc1 $f25, 0x28($sp) -/* 03579C 80034B9C E7B8002C */ swc1 $f24, 0x2c($sp) -/* 0357A0 80034BA0 E7B70020 */ swc1 $f23, 0x20($sp) -/* 0357A4 80034BA4 E7B60024 */ swc1 $f22, 0x24($sp) -/* 0357A8 80034BA8 E7B50018 */ swc1 $f21, 0x18($sp) -/* 0357AC 80034BAC E7B4001C */ swc1 $f20, 0x1c($sp) -/* 0357B0 80034BB0 AFA5009C */ sw $a1, 0x9c($sp) -/* 0357B4 80034BB4 8C90003C */ lw $s0, 0x3c($a0) -/* 0357B8 80034BB8 00803025 */ move $a2, $a0 -/* 0357BC 80034BBC AFA60098 */ sw $a2, 0x98($sp) -/* 0357C0 80034BC0 0C006E9D */ jal func_8001BA74 -/* 0357C4 80034BC4 27A4008C */ addiu $a0, $sp, 0x8c -/* 0357C8 80034BC8 AFA20094 */ sw $v0, 0x94($sp) -/* 0357CC 80034BCC 9204000B */ lbu $a0, 0xb($s0) -/* 0357D0 80034BD0 00000000 */ nop -/* 0357D4 80034BD4 00047200 */ sll $t6, $a0, 8 -/* 0357D8 80034BD8 000E2023 */ negu $a0, $t6 -/* 0357DC 80034BDC 00047C00 */ sll $t7, $a0, 0x10 -/* 0357E0 80034BE0 0C01C1FE */ jal func_800707F8 -/* 0357E4 80034BE4 000F2403 */ sra $a0, $t7, 0x10 -/* 0357E8 80034BE8 9204000B */ lbu $a0, 0xb($s0) -/* 0357EC 80034BEC 46000506 */ mov.s $f20, $f0 -/* 0357F0 80034BF0 0004CA00 */ sll $t9, $a0, 8 -/* 0357F4 80034BF4 00192023 */ negu $a0, $t9 -/* 0357F8 80034BF8 00044400 */ sll $t0, $a0, 0x10 -/* 0357FC 80034BFC 0C01C1F1 */ jal func_800707C4 -/* 035800 80034C00 00082403 */ sra $a0, $t0, 0x10 -/* 035804 80034C04 920A0008 */ lbu $t2, 8($s0) -/* 035808 80034C08 24020003 */ li $v0, 3 -/* 03580C 80034C0C 01420019 */ multu $t2, $v0 -/* 035810 80034C10 920C0009 */ lbu $t4, 9($s0) -/* 035814 80034C14 920E000A */ lbu $t6, 0xa($s0) -/* 035818 80034C18 8FB8008C */ lw $t8, 0x8c($sp) -/* 03581C 80034C1C 8FA60098 */ lw $a2, 0x98($sp) -/* 035820 80034C20 8FA50094 */ lw $a1, 0x94($sp) -/* 035824 80034C24 00002025 */ move $a0, $zero -/* 035828 80034C28 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 03582C 80034C2C 24070001 */ li $a3, 1 -/* 035830 80034C30 00005812 */ mflo $t3 -/* 035834 80034C34 448B2000 */ mtc1 $t3, $f4 -/* 035838 80034C38 00000000 */ nop -/* 03583C 80034C3C 01820019 */ multu $t4, $v0 -/* 035840 80034C40 468025A0 */ cvt.s.w $f22, $f4 -/* 035844 80034C44 00006812 */ mflo $t5 -/* 035848 80034C48 448D3000 */ mtc1 $t5, $f6 -/* 03584C 80034C4C 00000000 */ nop -/* 035850 80034C50 01C20019 */ multu $t6, $v0 -/* 035854 80034C54 468034A0 */ cvt.s.w $f18, $f6 -/* 035858 80034C58 00007812 */ mflo $t7 -/* 03585C 80034C5C 448F4000 */ mtc1 $t7, $f8 -/* 035860 80034C60 1B000073 */ blez $t8, .L80034E30 -/* 035864 80034C64 46804620 */ cvt.s.w $f24, $f8 -/* 035868 80034C68 4481F000 */ mtc1 $at, $f30 -/* 03586C 80034C6C 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 035870 80034C70 4481D800 */ mtc1 $at, $f27 -/* 035874 80034C74 4480D000 */ mtc1 $zero, $f26 -/* 035878 80034C78 46009707 */ neg.s $f28, $f18 -.L80034C7C: -/* 03587C 80034C7C 8CA30000 */ lw $v1, ($a1) -/* 035880 80034C80 C4C4000C */ lwc1 $f4, 0xc($a2) -/* 035884 80034C84 C4C80010 */ lwc1 $f8, 0x10($a2) -/* 035888 80034C88 C46A000C */ lwc1 $f10, 0xc($v1) -/* 03588C 80034C8C C4660010 */ lwc1 $f6, 0x10($v1) -/* 035890 80034C90 46045381 */ sub.s $f14, $f10, $f4 -/* 035894 80034C94 C4C40014 */ lwc1 $f4, 0x14($a2) -/* 035898 80034C98 46083081 */ sub.s $f2, $f6, $f8 -/* 03589C 80034C9C C46A0014 */ lwc1 $f10, 0x14($v1) -/* 0358A0 80034CA0 4602E03C */ c.lt.s $f28, $f2 -/* 0358A4 80034CA4 46045301 */ sub.s $f12, $f10, $f4 -/* 0358A8 80034CA8 4500005E */ bc1f .L80034E24 -/* 0358AC 80034CAC 8FAD008C */ lw $t5, 0x8c($sp) -/* 0358B0 80034CB0 4612103C */ c.lt.s $f2, $f18 -/* 0358B4 80034CB4 00000000 */ nop -/* 0358B8 80034CB8 4500005A */ bc1f .L80034E24 -/* 0358BC 80034CBC 8FAD008C */ lw $t5, 0x8c($sp) -/* 0358C0 80034CC0 46147182 */ mul.s $f6, $f14, $f20 -/* 0358C4 80034CC4 4600B287 */ neg.s $f10, $f22 -/* 0358C8 80034CC8 46006202 */ mul.s $f8, $f12, $f0 -/* 0358CC 80034CCC 46083400 */ add.s $f16, $f6, $f8 -/* 0358D0 80034CD0 4610503C */ c.lt.s $f10, $f16 -/* 0358D4 80034CD4 00000000 */ nop -/* 0358D8 80034CD8 45000052 */ bc1f .L80034E24 -/* 0358DC 80034CDC 8FAD008C */ lw $t5, 0x8c($sp) -/* 0358E0 80034CE0 4616803C */ c.lt.s $f16, $f22 -/* 0358E4 80034CE4 00000000 */ nop -/* 0358E8 80034CE8 4500004E */ bc1f .L80034E24 -/* 0358EC 80034CEC 8FAD008C */ lw $t5, 0x8c($sp) -/* 0358F0 80034CF0 46007107 */ neg.s $f4, $f14 -/* 0358F4 80034CF4 46002182 */ mul.s $f6, $f4, $f0 -/* 0358F8 80034CF8 4600C287 */ neg.s $f10, $f24 -/* 0358FC 80034CFC 46146202 */ mul.s $f8, $f12, $f20 -/* 035900 80034D00 46083300 */ add.s $f12, $f6, $f8 -/* 035904 80034D04 460C503C */ c.lt.s $f10, $f12 -/* 035908 80034D08 00000000 */ nop -/* 03590C 80034D0C 45000045 */ bc1f .L80034E24 -/* 035910 80034D10 8FAD008C */ lw $t5, 0x8c($sp) -/* 035914 80034D14 4618603C */ c.lt.s $f12, $f24 -/* 035918 80034D18 00000000 */ nop -/* 03591C 80034D1C 45000040 */ bc1f .L80034E20 -/* 035920 80034D20 00000000 */ nop -/* 035924 80034D24 461E9303 */ div.s $f12, $f18, $f30 -/* 035928 80034D28 8C620064 */ lw $v0, 0x64($v1) -/* 03592C 80034D2C 9219000C */ lbu $t9, 0xc($s0) -/* 035930 80034D30 00000000 */ nop -/* 035934 80034D34 A05901FE */ sb $t9, 0x1fe($v0) -/* 035938 80034D38 9208000D */ lbu $t0, 0xd($s0) -/* 03593C 80034D3C 332900FF */ andi $t1, $t9, 0xff -/* 035940 80034D40 A04801FF */ sb $t0, 0x1ff($v0) -/* 035944 80034D44 4602603C */ c.lt.s $f12, $f2 -/* 035948 80034D48 00000000 */ nop -/* 03594C 80034D4C 45000035 */ bc1f .L80034E24 -/* 035950 80034D50 8FAD008C */ lw $t5, 0x8c($sp) -/* 035954 80034D54 14E90033 */ bne $a3, $t1, .L80034E24 -/* 035958 80034D58 8FAD008C */ lw $t5, 0x8c($sp) -/* 03595C 80034D5C 460C1101 */ sub.s $f4, $f2, $f12 -/* 035960 80034D60 310A00FF */ andi $t2, $t0, 0xff -/* 035964 80034D64 460C2183 */ div.s $f6, $f4, $f12 -/* 035968 80034D68 448A2000 */ mtc1 $t2, $f4 -/* 03596C 80034D6C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 035970 80034D70 46003221 */ cvt.d.s $f8, $f6 -/* 035974 80034D74 4628D281 */ sub.d $f10, $f26, $f8 -/* 035978 80034D78 462050A0 */ cvt.s.d $f2, $f10 -/* 03597C 80034D7C 05410004 */ bgez $t2, .L80034D90 -/* 035980 80034D80 468021A0 */ cvt.s.w $f6, $f4 -/* 035984 80034D84 44814000 */ mtc1 $at, $f8 -/* 035988 80034D88 00000000 */ nop -/* 03598C 80034D8C 46083180 */ add.s $f6, $f6, $f8 -.L80034D90: -/* 035990 80034D90 46023282 */ mul.s $f10, $f6, $f2 -/* 035994 80034D94 240C0001 */ li $t4, 1 -/* 035998 80034D98 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 03599C 80034D9C 444BF800 */ cfc1 $t3, $31 -/* 0359A0 80034DA0 44CCF800 */ ctc1 $t4, $31 -/* 0359A4 80034DA4 00000000 */ nop -/* 0359A8 80034DA8 46005124 */ cvt.w.s $f4, $f10 -/* 0359AC 80034DAC 444CF800 */ cfc1 $t4, $31 -/* 0359B0 80034DB0 00000000 */ nop -/* 0359B4 80034DB4 318C0078 */ andi $t4, $t4, 0x78 -/* 0359B8 80034DB8 11800012 */ beqz $t4, .L80034E04 -/* 0359BC 80034DBC 00000000 */ nop -/* 0359C0 80034DC0 44812000 */ mtc1 $at, $f4 -/* 0359C4 80034DC4 240C0001 */ li $t4, 1 -/* 0359C8 80034DC8 46045101 */ sub.s $f4, $f10, $f4 -/* 0359CC 80034DCC 3C018000 */ lui $at, 0x8000 -/* 0359D0 80034DD0 44CCF800 */ ctc1 $t4, $31 -/* 0359D4 80034DD4 00000000 */ nop -/* 0359D8 80034DD8 46002124 */ cvt.w.s $f4, $f4 -/* 0359DC 80034DDC 444CF800 */ cfc1 $t4, $31 -/* 0359E0 80034DE0 00000000 */ nop -/* 0359E4 80034DE4 318C0078 */ andi $t4, $t4, 0x78 -/* 0359E8 80034DE8 15800004 */ bnez $t4, .L80034DFC -/* 0359EC 80034DEC 00000000 */ nop -/* 0359F0 80034DF0 440C2000 */ mfc1 $t4, $f4 -/* 0359F4 80034DF4 10000007 */ b .L80034E14 -/* 0359F8 80034DF8 01816025 */ or $t4, $t4, $at -.L80034DFC: -/* 0359FC 80034DFC 10000005 */ b .L80034E14 -/* 035A00 80034E00 240CFFFF */ li $t4, -1 -.L80034E04: -/* 035A04 80034E04 440C2000 */ mfc1 $t4, $f4 -/* 035A08 80034E08 00000000 */ nop -/* 035A0C 80034E0C 0580FFFB */ bltz $t4, .L80034DFC -/* 035A10 80034E10 00000000 */ nop -.L80034E14: -/* 035A14 80034E14 44CBF800 */ ctc1 $t3, $31 -/* 035A18 80034E18 A04C01FF */ sb $t4, 0x1ff($v0) -/* 035A1C 80034E1C 00000000 */ nop -.L80034E20: -/* 035A20 80034E20 8FAD008C */ lw $t5, 0x8c($sp) -.L80034E24: -/* 035A24 80034E24 24840001 */ addiu $a0, $a0, 1 -/* 035A28 80034E28 148DFF94 */ bne $a0, $t5, .L80034C7C -/* 035A2C 80034E2C 24A50004 */ addiu $a1, $a1, 4 -.L80034E30: -/* 035A30 80034E30 8FBF004C */ lw $ra, 0x4c($sp) -/* 035A34 80034E34 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 035A38 80034E38 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 035A3C 80034E3C C7B70020 */ lwc1 $f23, 0x20($sp) -/* 035A40 80034E40 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 035A44 80034E44 C7B90028 */ lwc1 $f25, 0x28($sp) -/* 035A48 80034E48 C7B8002C */ lwc1 $f24, 0x2c($sp) -/* 035A4C 80034E4C C7BB0030 */ lwc1 $f27, 0x30($sp) -/* 035A50 80034E50 C7BA0034 */ lwc1 $f26, 0x34($sp) -/* 035A54 80034E54 C7BD0038 */ lwc1 $f29, 0x38($sp) -/* 035A58 80034E58 C7BC003C */ lwc1 $f28, 0x3c($sp) -/* 035A5C 80034E5C C7BF0040 */ lwc1 $f31, 0x40($sp) -/* 035A60 80034E60 C7BE0044 */ lwc1 $f30, 0x44($sp) -/* 035A64 80034E64 8FB00048 */ lw $s0, 0x48($sp) -/* 035A68 80034E68 03E00008 */ jr $ra -/* 035A6C 80034E6C 27BD0098 */ addiu $sp, $sp, 0x98 - -glabel func_80034E70 -/* 035A70 80034E70 8C8F004C */ lw $t7, 0x4c($a0) -/* 035A74 80034E74 240E0001 */ li $t6, 1 -/* 035A78 80034E78 A5EE0014 */ sh $t6, 0x14($t7) -/* 035A7C 80034E7C 8C99004C */ lw $t9, 0x4c($a0) -/* 035A80 80034E80 24180002 */ li $t8, 2 -/* 035A84 80034E84 A3380011 */ sb $t8, 0x11($t9) -/* 035A88 80034E88 90A90008 */ lbu $t1, 8($a1) -/* 035A8C 80034E8C 00000000 */ nop -/* 035A90 80034E90 00095280 */ sll $t2, $t1, 0xa -/* 035A94 80034E94 03E00008 */ jr $ra -/* 035A98 80034E98 A48A0000 */ sh $t2, ($a0) - -glabel func_80034E9C -/* 035A9C 80034E9C 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 035AA0 80034EA0 AFBF001C */ sw $ra, 0x1c($sp) -/* 035AA4 80034EA4 AFB00018 */ sw $s0, 0x18($sp) -/* 035AA8 80034EA8 00808025 */ move $s0, $a0 -/* 035AAC 80034EAC 0C01BAA4 */ jal func_8006EA90 -/* 035AB0 80034EB0 AFA5005C */ sw $a1, 0x5c($sp) -/* 035AB4 80034EB4 0C01AF6C */ jal func_8006BDB0 -/* 035AB8 80034EB8 AFA20054 */ sw $v0, 0x54($sp) -/* 035ABC 80034EBC 8E0E0064 */ lw $t6, 0x64($s0) -/* 035AC0 80034EC0 8FA30054 */ lw $v1, 0x54($sp) -/* 035AC4 80034EC4 AFAE0050 */ sw $t6, 0x50($sp) -/* 035AC8 80034EC8 8E0F007C */ lw $t7, 0x7c($s0) -/* 035ACC 80034ECC 00000000 */ nop -/* 035AD0 80034ED0 15E00029 */ bnez $t7, .L80034F78 -/* 035AD4 80034ED4 00000000 */ nop -/* 035AD8 80034ED8 8044004C */ lb $a0, 0x4c($v0) -/* 035ADC 80034EDC 24010007 */ li $at, 7 -/* 035AE0 80034EE0 10810025 */ beq $a0, $at, .L80034F78 -/* 035AE4 80034EE4 24010006 */ li $at, 6 -/* 035AE8 80034EE8 10810023 */ beq $a0, $at, .L80034F78 -/* 035AEC 80034EEC 24180001 */ li $t8, 1 -/* 035AF0 80034EF0 AE18007C */ sw $t8, 0x7c($s0) -/* 035AF4 80034EF4 90680048 */ lbu $t0, 0x48($v1) -/* 035AF8 80034EF8 9479000E */ lhu $t9, 0xe($v1) -/* 035AFC 80034EFC 2509FFFF */ addiu $t1, $t0, -1 -/* 035B00 80034F00 00095040 */ sll $t2, $t1, 1 -/* 035B04 80034F04 01595807 */ srav $t3, $t9, $t2 -/* 035B08 80034F08 316C0003 */ andi $t4, $t3, 3 -/* 035B0C 80034F0C 1180001A */ beqz $t4, .L80034F78 -/* 035B10 80034F10 240D0080 */ li $t5, 128 -/* 035B14 80034F14 A3AD0044 */ sb $t5, 0x44($sp) -/* 035B18 80034F18 8E0E003C */ lw $t6, 0x3c($s0) -/* 035B1C 80034F1C 240A0008 */ li $t2, 8 -/* 035B20 80034F20 85CF0002 */ lh $t7, 2($t6) -/* 035B24 80034F24 27A40044 */ addiu $a0, $sp, 0x44 -/* 035B28 80034F28 A7AF0046 */ sh $t7, 0x46($sp) -/* 035B2C 80034F2C 8E18003C */ lw $t8, 0x3c($s0) -/* 035B30 80034F30 24050001 */ li $a1, 1 -/* 035B34 80034F34 87080004 */ lh $t0, 4($t8) -/* 035B38 80034F38 00000000 */ nop -/* 035B3C 80034F3C A7A80048 */ sh $t0, 0x48($sp) -/* 035B40 80034F40 8E09003C */ lw $t1, 0x3c($s0) -/* 035B44 80034F44 00000000 */ nop -/* 035B48 80034F48 85390006 */ lh $t9, 6($t1) -/* 035B4C 80034F4C A3AA0045 */ sb $t2, 0x45($sp) -/* 035B50 80034F50 AFA30054 */ sw $v1, 0x54($sp) -/* 035B54 80034F54 0C003A95 */ jal func_8000EA54 -/* 035B58 80034F58 A7B9004A */ sh $t9, 0x4a($sp) -/* 035B5C 80034F5C 8FA30054 */ lw $v1, 0x54($sp) -/* 035B60 80034F60 10400005 */ beqz $v0, .L80034F78 -/* 035B64 80034F64 00000000 */ nop -/* 035B68 80034F68 AC40003C */ sw $zero, 0x3c($v0) -/* 035B6C 80034F6C 860B0000 */ lh $t3, ($s0) -/* 035B70 80034F70 00000000 */ nop -/* 035B74 80034F74 A44B0000 */ sh $t3, ($v0) -.L80034F78: -/* 035B78 80034F78 3C01800E */ lui $at, %hi(D_800E6004) # $at, 0x800e -/* 035B7C 80034F7C C4246004 */ lwc1 $f4, %lo(D_800E6004)($at) -/* 035B80 80034F80 8E0C0054 */ lw $t4, 0x54($s0) -/* 035B84 80034F84 44803000 */ mtc1 $zero, $f6 -/* 035B88 80034F88 E584002C */ swc1 $f4, 0x2c($t4) -/* 035B8C 80034F8C 8E0D0054 */ lw $t5, 0x54($s0) -/* 035B90 80034F90 00002025 */ move $a0, $zero -/* 035B94 80034F94 E5A60028 */ swc1 $f6, 0x28($t5) -/* 035B98 80034F98 0C006EB2 */ jal func_8001BAC8 -/* 035B9C 80034F9C AFA30054 */ sw $v1, 0x54($sp) -/* 035BA0 80034FA0 8FA30054 */ lw $v1, 0x54($sp) -/* 035BA4 80034FA4 1040009E */ beqz $v0, .L80035220 -/* 035BA8 80034FA8 8FBF001C */ lw $ra, 0x1c($sp) -/* 035BAC 80034FAC C608000C */ lwc1 $f8, 0xc($s0) -/* 035BB0 80034FB0 C44A000C */ lwc1 $f10, 0xc($v0) -/* 035BB4 80034FB4 C6100014 */ lwc1 $f16, 0x14($s0) -/* 035BB8 80034FB8 460A4001 */ sub.s $f0, $f8, $f10 -/* 035BBC 80034FBC C4520014 */ lwc1 $f18, 0x14($v0) -/* 035BC0 80034FC0 46000102 */ mul.s $f4, $f0, $f0 -/* 035BC4 80034FC4 46128081 */ sub.s $f2, $f16, $f18 -/* 035BC8 80034FC8 AFA30054 */ sw $v1, 0x54($sp) -/* 035BCC 80034FCC 46021182 */ mul.s $f6, $f2, $f2 -/* 035BD0 80034FD0 0C0326B4 */ jal sqrtf -/* 035BD4 80034FD4 46062300 */ add.s $f12, $f4, $f6 -/* 035BD8 80034FD8 8FA30054 */ lw $v1, 0x54($sp) -/* 035BDC 80034FDC 240C0001 */ li $t4, 1 -/* 035BE0 80034FE0 90640048 */ lbu $a0, 0x48($v1) -/* 035BE4 80034FE4 8C6F0000 */ lw $t7, ($v1) -/* 035BE8 80034FE8 0004C040 */ sll $t8, $a0, 1 -/* 035BEC 80034FEC 01F84021 */ addu $t0, $t7, $t8 -/* 035BF0 80034FF0 85090000 */ lh $t1, ($t0) -/* 035BF4 80034FF4 9462000C */ lhu $v0, 0xc($v1) -/* 035BF8 80034FF8 29390008 */ slti $t9, $t1, 8 -/* 035BFC 80034FFC 3B390001 */ xori $t9, $t9, 1 -/* 035C00 80035000 AFB90028 */ sw $t9, 0x28($sp) -/* 035C04 80035004 13200006 */ beqz $t9, .L80035020 -/* 035C08 80035008 344E0800 */ ori $t6, $v0, 0x800 -/* 035C0C 8003500C 248B0006 */ addiu $t3, $a0, 6 -/* 035C10 80035010 016C6804 */ sllv $t5, $t4, $t3 -/* 035C14 80035014 01AE7024 */ and $t6, $t5, $t6 -/* 035C18 80035018 000E782B */ sltu $t7, $zero, $t6 -/* 035C1C 8003501C AFAF0028 */ sw $t7, 0x28($sp) -.L80035020: -/* 035C20 80035020 8E180078 */ lw $t8, 0x78($s0) -/* 035C24 80035024 00000000 */ nop -/* 035C28 80035028 17000027 */ bnez $t8, .L800350C8 -/* 035C2C 8003502C 8FA30050 */ lw $v1, 0x50($sp) -/* 035C30 80035030 0C030D00 */ jal func_800C3400 -/* 035C34 80035034 00000000 */ nop -/* 035C38 80035038 14400023 */ bnez $v0, .L800350C8 -/* 035C3C 8003503C 8FA30050 */ lw $v1, 0x50($sp) -/* 035C40 80035040 8E08005C */ lw $t0, 0x5c($s0) -/* 035C44 80035044 8FA30050 */ lw $v1, 0x50($sp) -/* 035C48 80035048 8D090100 */ lw $t1, 0x100($t0) -/* 035C4C 8003504C 00000000 */ nop -/* 035C50 80035050 1120001C */ beqz $t1, .L800350C4 -/* 035C54 80035054 00000000 */ nop -/* 035C58 80035058 84790004 */ lh $t9, 4($v1) -/* 035C5C 8003505C 8FAA0028 */ lw $t2, 0x28($sp) -/* 035C60 80035060 17200019 */ bnez $t9, .L800350C8 -/* 035C64 80035064 8FA30050 */ lw $v1, 0x50($sp) -/* 035C68 80035068 11400009 */ beqz $t2, .L80035090 -/* 035C6C 8003506C 240C0001 */ li $t4, 1 -/* 035C70 80035070 AE0C0078 */ sw $t4, 0x78($s0) -/* 035C74 80035074 2404012F */ li $a0, 303 -/* 035C78 80035078 0C000741 */ jal func_80001D04 -/* 035C7C 8003507C 00002825 */ move $a1, $zero -/* 035C80 80035080 0C028E1C */ jal func_800A3870 -/* 035C84 80035084 00000000 */ nop -/* 035C88 80035088 1000000F */ b .L800350C8 -/* 035C8C 8003508C 8FA30050 */ lw $v1, 0x50($sp) -.L80035090: -/* 035C90 80035090 0C030C7B */ jal func_800C31EC -/* 035C94 80035094 24040004 */ li $a0, 4 -/* 035C98 80035098 8FAD0050 */ lw $t5, 0x50($sp) -/* 035C9C 8003509C 240B00B4 */ li $t3, 180 -/* 035CA0 800350A0 240E008C */ li $t6, 140 -/* 035CA4 800350A4 24040010 */ li $a0, 16 -/* 035CA8 800350A8 A5AB0004 */ sh $t3, 4($t5) -/* 035CAC 800350AC 0C00030E */ jal func_80000C38 -/* 035CB0 800350B0 ADAE0000 */ sw $t6, ($t5) -/* 035CB4 800350B4 0C000326 */ jal func_80000C98 -/* 035CB8 800350B8 2404FFF8 */ li $a0, -8 -/* 035CBC 800350BC 0C0006F0 */ jal func_80001BC0 -/* 035CC0 800350C0 24040011 */ li $a0, 17 -.L800350C4: -/* 035CC4 800350C4 8FA30050 */ lw $v1, 0x50($sp) -.L800350C8: -/* 035CC8 800350C8 00000000 */ nop -/* 035CCC 800350CC 8C6F0000 */ lw $t7, ($v1) -/* 035CD0 800350D0 00000000 */ nop -/* 035CD4 800350D4 11E00013 */ beqz $t7, .L80035124 -/* 035CD8 800350D8 00000000 */ nop -/* 035CDC 800350DC 0C000702 */ jal func_80001C08 -/* 035CE0 800350E0 00000000 */ nop -/* 035CE4 800350E4 1440000F */ bnez $v0, .L80035124 -/* 035CE8 800350E8 00000000 */ nop -/* 035CEC 800350EC 8FB80050 */ lw $t8, 0x50($sp) -/* 035CF0 800350F0 8FA8005C */ lw $t0, 0x5c($sp) -/* 035CF4 800350F4 8F020000 */ lw $v0, ($t8) -/* 035CF8 800350F8 8FB90050 */ lw $t9, 0x50($sp) -/* 035CFC 800350FC 0102082A */ slt $at, $t0, $v0 -/* 035D00 80035100 10200004 */ beqz $at, .L80035114 -/* 035D04 80035104 24040008 */ li $a0, 8 -/* 035D08 80035108 00484823 */ subu $t1, $v0, $t0 -/* 035D0C 8003510C 10000005 */ b .L80035124 -/* 035D10 80035110 AF090000 */ sw $t1, ($t8) -.L80035114: -/* 035D14 80035114 0C000326 */ jal func_80000C98 -/* 035D18 80035118 AF200000 */ sw $zero, ($t9) -/* 035D1C 8003511C 0C00030E */ jal func_80000C38 -/* 035D20 80035120 24040006 */ li $a0, 6 -.L80035124: -/* 035D24 80035124 8E0A005C */ lw $t2, 0x5c($s0) -/* 035D28 80035128 8FA30050 */ lw $v1, 0x50($sp) -/* 035D2C 8003512C 8D4C0100 */ lw $t4, 0x100($t2) -/* 035D30 80035130 00000000 */ nop -/* 035D34 80035134 15800008 */ bnez $t4, .L80035158 -/* 035D38 80035138 240B00B4 */ li $t3, 180 -/* 035D3C 8003513C 0C030D00 */ jal func_800C3400 -/* 035D40 80035140 00000000 */ nop -/* 035D44 80035144 10400006 */ beqz $v0, .L80035160 -/* 035D48 80035148 8FA30050 */ lw $v1, 0x50($sp) -/* 035D4C 8003514C 8FA30050 */ lw $v1, 0x50($sp) -/* 035D50 80035150 00000000 */ nop -/* 035D54 80035154 240B00B4 */ li $t3, 180 -.L80035158: -/* 035D58 80035158 A46B0004 */ sh $t3, 4($v1) -/* 035D5C 8003515C 8FA30050 */ lw $v1, 0x50($sp) -.L80035160: -/* 035D60 80035160 8FAE005C */ lw $t6, 0x5c($sp) -/* 035D64 80035164 84620004 */ lh $v0, 4($v1) -/* 035D68 80035168 00000000 */ nop -/* 035D6C 8003516C 18400003 */ blez $v0, .L8003517C -/* 035D70 80035170 004E6823 */ subu $t5, $v0, $t6 -/* 035D74 80035174 10000002 */ b .L80035180 -/* 035D78 80035178 A46D0004 */ sh $t5, 4($v1) -.L8003517C: -/* 035D7C 8003517C A4600004 */ sh $zero, 4($v1) -.L80035180: -/* 035D80 80035180 8E0F0078 */ lw $t7, 0x78($s0) -/* 035D84 80035184 24010001 */ li $at, 1 -/* 035D88 80035188 15E10019 */ bne $t7, $at, .L800351F0 -/* 035D8C 8003518C 00000000 */ nop -/* 035D90 80035190 0C02AC6B */ jal func_800AB1AC -/* 035D94 80035194 24040003 */ li $a0, 3 -/* 035D98 80035198 0C02AC75 */ jal func_800AB1D4 -/* 035D9C 8003519C 00002025 */ move $a0, $zero -/* 035DA0 800351A0 0C0273FB */ jal func_8009CFEC -/* 035DA4 800351A4 24040004 */ li $a0, 4 -/* 035DA8 800351A8 1040000F */ beqz $v0, .L800351E8 -/* 035DAC 800351AC 24040004 */ li $a0, 4 -/* 035DB0 800351B0 AE000078 */ sw $zero, 0x78($s0) -/* 035DB4 800351B4 0C0273DA */ jal func_8009CF68 -/* 035DB8 800351B8 AFA20034 */ sw $v0, 0x34($sp) -/* 035DBC 800351BC 8FA30034 */ lw $v1, 0x34($sp) -/* 035DC0 800351C0 24010001 */ li $at, 1 -/* 035DC4 800351C4 14610006 */ bne $v1, $at, .L800351E0 -/* 035DC8 800351C8 00000000 */ nop -/* 035DCC 800351CC 0C01BC95 */ jal func_8006F254 -/* 035DD0 800351D0 00000000 */ nop -/* 035DD4 800351D4 24080002 */ li $t0, 2 -/* 035DD8 800351D8 10000003 */ b .L800351E8 -/* 035DDC 800351DC AE080078 */ sw $t0, 0x78($s0) -.L800351E0: -/* 035DE0 800351E0 0C02AC75 */ jal func_800AB1D4 -/* 035DE4 800351E4 24040001 */ li $a0, 1 -.L800351E8: -/* 035DE8 800351E8 0C0168EC */ jal func_8005A3B0 -/* 035DEC 800351EC 00000000 */ nop -.L800351F0: -/* 035DF0 800351F0 8E09005C */ lw $t1, 0x5c($s0) -/* 035DF4 800351F4 3C01800E */ lui $at, %hi(D_800E6008) # $at, 0x800e -/* 035DF8 800351F8 AD200100 */ sw $zero, 0x100($t1) -/* 035DFC 800351FC 8FB80028 */ lw $t8, 0x28($sp) -/* 035E00 80035200 00000000 */ nop -/* 035E04 80035204 13000006 */ beqz $t8, .L80035220 -/* 035E08 80035208 8FBF001C */ lw $ra, 0x1c($sp) -/* 035E0C 8003520C C4286008 */ lwc1 $f8, %lo(D_800E6008)($at) -/* 035E10 80035210 8E190054 */ lw $t9, 0x54($s0) -/* 035E14 80035214 00000000 */ nop -/* 035E18 80035218 E7280028 */ swc1 $f8, 0x28($t9) -/* 035E1C 8003521C 8FBF001C */ lw $ra, 0x1c($sp) -.L80035220: -/* 035E20 80035220 8FB00018 */ lw $s0, 0x18($sp) -/* 035E24 80035224 03E00008 */ jr $ra -/* 035E28 80035228 27BD0058 */ addiu $sp, $sp, 0x58 - -glabel func_8003522C -/* 035E2C 8003522C AFA50004 */ sw $a1, 4($sp) -/* 035E30 80035230 8C8F004C */ lw $t7, 0x4c($a0) -/* 035E34 80035234 240E0002 */ li $t6, 2 -/* 035E38 80035238 A5EE0014 */ sh $t6, 0x14($t7) -/* 035E3C 8003523C 8C98004C */ lw $t8, 0x4c($a0) -/* 035E40 80035240 24190014 */ li $t9, 20 -/* 035E44 80035244 A3000011 */ sb $zero, 0x11($t8) -/* 035E48 80035248 8C88004C */ lw $t0, 0x4c($a0) -/* 035E4C 8003524C 00000000 */ nop -/* 035E50 80035250 A1190010 */ sb $t9, 0x10($t0) -/* 035E54 80035254 8C89004C */ lw $t1, 0x4c($a0) -/* 035E58 80035258 03E00008 */ jr $ra -/* 035E5C 8003525C A1200012 */ sb $zero, 0x12($t1) - -glabel func_80035260 -/* 035E60 80035260 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 035E64 80035264 44852000 */ mtc1 $a1, $f4 -/* 035E68 80035268 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 -/* 035E6C 8003526C 468020A0 */ cvt.s.w $f2, $f4 -/* 035E70 80035270 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) -/* 035E74 80035274 AFBF0024 */ sw $ra, 0x24($sp) -/* 035E78 80035278 AFB10020 */ sw $s1, 0x20($sp) -/* 035E7C 8003527C AFB0001C */ sw $s0, 0x1c($sp) -/* 035E80 80035280 8C910064 */ lw $s1, 0x64($a0) -/* 035E84 80035284 00808025 */ move $s0, $a0 -/* 035E88 80035288 15C00007 */ bnez $t6, .L800352A8 -/* 035E8C 8003528C 46001006 */ mov.s $f0, $f2 -/* 035E90 80035290 3C01800E */ lui $at, %hi(D_800E6014) # $at, 0x800e -/* 035E94 80035294 C4296010 */ lwc1 $f9, %lo(D_800E6010)($at) -/* 035E98 80035298 C4286014 */ lwc1 $f8, %lo(D_800E6014)($at) -/* 035E9C 8003529C 460011A1 */ cvt.d.s $f6, $f2 -/* 035EA0 800352A0 46283282 */ mul.d $f10, $f6, $f8 -/* 035EA4 800352A4 46205020 */ cvt.s.d $f0, $f10 -.L800352A8: -/* 035EA8 800352A8 8222000B */ lb $v0, 0xb($s1) -/* 035EAC 800352AC 24010002 */ li $at, 2 -/* 035EB0 800352B0 1040000A */ beqz $v0, .L800352DC -/* 035EB4 800352B4 02002025 */ move $a0, $s0 -/* 035EB8 800352B8 1041000C */ beq $v0, $at, .L800352EC -/* 035EBC 800352BC 24040001 */ li $a0, 1 -/* 035EC0 800352C0 24010003 */ li $at, 3 -/* 035EC4 800352C4 1041009D */ beq $v0, $at, .L8003553C -/* 035EC8 800352C8 24010004 */ li $at, 4 -/* 035ECC 800352CC 104100C9 */ beq $v0, $at, .L800355F4 -/* 035ED0 800352D0 00000000 */ nop -/* 035ED4 800352D4 100000D6 */ b .L80035630 -/* 035ED8 800352D8 8FBF0024 */ lw $ra, 0x24($sp) -.L800352DC: -/* 035EDC 800352DC 0C00D810 */ jal func_80036040 -/* 035EE0 800352E0 02202825 */ move $a1, $s1 -/* 035EE4 800352E4 100000D2 */ b .L80035630 -/* 035EE8 800352E8 8FBF0024 */ lw $ra, 0x24($sp) -.L800352EC: -/* 035EEC 800352EC C612001C */ lwc1 $f18, 0x1c($s0) -/* 035EF0 800352F0 860F0006 */ lh $t7, 6($s0) -/* 035EF4 800352F4 46009102 */ mul.s $f4, $f18, $f0 -/* 035EF8 800352F8 C610000C */ lwc1 $f16, 0xc($s0) -/* 035EFC 800352FC 31F8BFFF */ andi $t8, $t7, 0xbfff -/* 035F00 80035300 A6180006 */ sh $t8, 6($s0) -/* 035F04 80035304 46048180 */ add.s $f6, $f16, $f4 -/* 035F08 80035308 3C014110 */ li $at, 0x41100000 # 9.000000 -/* 035F0C 8003530C E7A60040 */ swc1 $f6, 0x40($sp) -/* 035F10 80035310 C60A0020 */ lwc1 $f10, 0x20($s0) -/* 035F14 80035314 C6080010 */ lwc1 $f8, 0x10($s0) -/* 035F18 80035318 46005482 */ mul.s $f18, $f10, $f0 -/* 035F1C 8003531C 2605000C */ addiu $a1, $s0, 0xc -/* 035F20 80035320 27A60040 */ addiu $a2, $sp, 0x40 -/* 035F24 80035324 2407FFFF */ li $a3, -1 -/* 035F28 80035328 46124400 */ add.s $f16, $f8, $f18 -/* 035F2C 8003532C 44819000 */ mtc1 $at, $f18 -/* 035F30 80035330 E7B00044 */ swc1 $f16, 0x44($sp) -/* 035F34 80035334 C6060024 */ lwc1 $f6, 0x24($s0) -/* 035F38 80035338 C6040014 */ lwc1 $f4, 0x14($s0) -/* 035F3C 8003533C 46003282 */ mul.s $f10, $f6, $f0 -/* 035F40 80035340 E7A00038 */ swc1 $f0, 0x38($sp) -/* 035F44 80035344 AFA50028 */ sw $a1, 0x28($sp) -/* 035F48 80035348 E7B2003C */ swc1 $f18, 0x3c($sp) -/* 035F4C 8003534C 460A2200 */ add.s $f8, $f4, $f10 -/* 035F50 80035350 0C00C44C */ jal func_80031130 -/* 035F54 80035354 E7A80048 */ swc1 $f8, 0x48($sp) -/* 035F58 80035358 8FA40028 */ lw $a0, 0x28($sp) -/* 035F5C 8003535C 24190001 */ li $t9, 1 -/* 035F60 80035360 27A80034 */ addiu $t0, $sp, 0x34 -/* 035F64 80035364 AFA00034 */ sw $zero, 0x34($sp) -/* 035F68 80035368 A3A00033 */ sb $zero, 0x33($sp) -/* 035F6C 8003536C AFA80014 */ sw $t0, 0x14($sp) -/* 035F70 80035370 AFB90010 */ sw $t9, 0x10($sp) -/* 035F74 80035374 27A50040 */ addiu $a1, $sp, 0x40 -/* 035F78 80035378 27A6003C */ addiu $a2, $sp, 0x3c -/* 035F7C 8003537C 0C00C580 */ jal func_80031600 -/* 035F80 80035380 27A70033 */ addiu $a3, $sp, 0x33 -/* 035F84 80035384 C7B00040 */ lwc1 $f16, 0x40($sp) -/* 035F88 80035388 C606000C */ lwc1 $f6, 0xc($s0) -/* 035F8C 8003538C C7A00038 */ lwc1 $f0, 0x38($sp) -/* 035F90 80035390 46068101 */ sub.s $f4, $f16, $f6 -/* 035F94 80035394 3C01800E */ lui $at, %hi(D_800E601C) # $at, 0x800e -/* 035F98 80035398 46002283 */ div.s $f10, $f4, $f0 -/* 035F9C 8003539C C4236018 */ lwc1 $f3, %lo(D_800E6018)($at) -/* 035FA0 800353A0 C422601C */ lwc1 $f2, %lo(D_800E601C)($at) -/* 035FA4 800353A4 C6120010 */ lwc1 $f18, 0x10($s0) -/* 035FA8 800353A8 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 035FAC 800353AC E60A001C */ swc1 $f10, 0x1c($s0) -/* 035FB0 800353B0 C7A80044 */ lwc1 $f8, 0x44($sp) -/* 035FB4 800353B4 C60A0014 */ lwc1 $f10, 0x14($s0) -/* 035FB8 800353B8 46124401 */ sub.s $f16, $f8, $f18 -/* 035FBC 800353BC 00000000 */ nop -/* 035FC0 800353C0 46008183 */ div.s $f6, $f16, $f0 -/* 035FC4 800353C4 E6060020 */ swc1 $f6, 0x20($s0) -/* 035FC8 800353C8 C7A40048 */ lwc1 $f4, 0x48($sp) -/* 035FCC 800353CC 00000000 */ nop -/* 035FD0 800353D0 460A2201 */ sub.s $f8, $f4, $f10 -/* 035FD4 800353D4 C60A0020 */ lwc1 $f10, 0x20($s0) -/* 035FD8 800353D8 46004483 */ div.s $f18, $f8, $f0 -/* 035FDC 800353DC 44819800 */ mtc1 $at, $f19 -/* 035FE0 800353E0 46005221 */ cvt.d.s $f8, $f10 -/* 035FE4 800353E4 3C01800E */ lui $at, %hi(D_800E6020) # $at, 0x800e -/* 035FE8 800353E8 E6120024 */ swc1 $f18, 0x24($s0) -/* 035FEC 800353EC C7B00040 */ lwc1 $f16, 0x40($sp) -/* 035FF0 800353F0 44809000 */ mtc1 $zero, $f18 -/* 035FF4 800353F4 E610000C */ swc1 $f16, 0xc($s0) -/* 035FF8 800353F8 C7A60044 */ lwc1 $f6, 0x44($sp) -/* 035FFC 800353FC 46324401 */ sub.d $f16, $f8, $f18 -/* 036000 80035400 E6060010 */ swc1 $f6, 0x10($s0) -/* 036004 80035404 C7A40048 */ lwc1 $f4, 0x48($sp) -/* 036008 80035408 462081A0 */ cvt.s.d $f6, $f16 -/* 03600C 8003540C E6040014 */ swc1 $f4, 0x14($s0) -/* 036010 80035410 C604001C */ lwc1 $f4, 0x1c($s0) -/* 036014 80035414 C6100024 */ lwc1 $f16, 0x24($s0) -/* 036018 80035418 460022A1 */ cvt.d.s $f10, $f4 -/* 03601C 8003541C 46225202 */ mul.d $f8, $f10, $f2 -/* 036020 80035420 E6060020 */ swc1 $f6, 0x20($s0) -/* 036024 80035424 460081A1 */ cvt.d.s $f6, $f16 -/* 036028 80035428 46223102 */ mul.d $f4, $f6, $f2 -/* 03602C 8003542C 462044A0 */ cvt.s.d $f18, $f8 -/* 036030 80035430 C6080020 */ lwc1 $f8, 0x20($s0) -/* 036034 80035434 E612001C */ swc1 $f18, 0x1c($s0) -/* 036038 80035438 462022A0 */ cvt.s.d $f10, $f4 -/* 03603C 8003543C E60A0024 */ swc1 $f10, 0x24($s0) -/* 036040 80035440 C4306024 */ lwc1 $f16, %lo(D_800E6024)($at) -/* 036044 80035444 C4316020 */ lwc1 $f17, %lo(D_800E6020)($at) -/* 036048 80035448 460044A1 */ cvt.d.s $f18, $f8 -/* 03604C 8003544C 46309182 */ mul.d $f6, $f18, $f16 -/* 036050 80035450 3C01C4FA */ li $at, 0xC4FA0000 # -2000.000000 -/* 036054 80035454 44814000 */ mtc1 $at, $f8 -/* 036058 80035458 C60A0010 */ lwc1 $f10, 0x10($s0) -/* 03605C 8003545C 00000000 */ nop -/* 036060 80035460 4608503C */ c.lt.s $f10, $f8 -/* 036064 80035464 46203120 */ cvt.s.d $f4, $f6 -/* 036068 80035468 45010009 */ bc1t .L80035490 -/* 03606C 8003546C E6040020 */ swc1 $f4, 0x20($s0) -/* 036070 80035470 8FA90034 */ lw $t1, 0x34($sp) -/* 036074 80035474 83AA0033 */ lb $t2, 0x33($sp) -/* 036078 80035478 1120000C */ beqz $t1, .L800354AC -/* 03607C 8003547C 29410005 */ slti $at, $t2, 5 -/* 036080 80035480 14200003 */ bnez $at, .L80035490 -/* 036084 80035484 2941000A */ slti $at, $t2, 0xa -/* 036088 80035488 14200009 */ bnez $at, .L800354B0 -/* 03608C 8003548C 8FAB0034 */ lw $t3, 0x34($sp) -.L80035490: -/* 036090 80035490 8E220004 */ lw $v0, 4($s1) -/* 036094 80035494 00000000 */ nop -/* 036098 80035498 10400002 */ beqz $v0, .L800354A4 -/* 03609C 8003549C 00000000 */ nop -/* 0360A0 800354A0 AC400078 */ sw $zero, 0x78($v0) -.L800354A4: -/* 0360A4 800354A4 0C003FEE */ jal func_8000FFB8 -/* 0360A8 800354A8 02002025 */ move $a0, $s0 -.L800354AC: -/* 0360AC 800354AC 8FAB0034 */ lw $t3, 0x34($sp) -.L800354B0: -/* 0360B0 800354B0 83AC0033 */ lb $t4, 0x33($sp) -/* 0360B4 800354B4 11600007 */ beqz $t3, .L800354D4 -/* 0360B8 800354B8 24010005 */ li $at, 5 -/* 0360BC 800354BC 15810006 */ bne $t4, $at, .L800354D8 -/* 0360C0 800354C0 8FAD0034 */ lw $t5, 0x34($sp) -/* 0360C4 800354C4 44800000 */ mtc1 $zero, $f0 -/* 0360C8 800354C8 A220000B */ sb $zero, 0xb($s1) -/* 0360CC 800354CC E600001C */ swc1 $f0, 0x1c($s0) -/* 0360D0 800354D0 E6000024 */ swc1 $f0, 0x24($s0) -.L800354D4: -/* 0360D4 800354D4 8FAD0034 */ lw $t5, 0x34($sp) -.L800354D8: -/* 0360D8 800354D8 83AE0033 */ lb $t6, 0x33($sp) -/* 0360DC 800354DC 11A00053 */ beqz $t5, .L8003562C -/* 0360E0 800354E0 29C10006 */ slti $at, $t6, 6 -/* 0360E4 800354E4 14200051 */ bnez $at, .L8003562C -/* 0360E8 800354E8 29C1000A */ slti $at, $t6, 0xa -/* 0360EC 800354EC 1020004F */ beqz $at, .L8003562C -/* 0360F0 800354F0 25CFFFFA */ addiu $t7, $t6, -6 -/* 0360F4 800354F4 A22F000A */ sb $t7, 0xa($s1) -/* 0360F8 800354F8 24180003 */ li $t8, 3 -/* 0360FC 800354FC 8224000A */ lb $a0, 0xa($s1) -/* 036100 80035500 0C006EB2 */ jal func_8001BAC8 -/* 036104 80035504 A238000B */ sb $t8, 0xb($s1) -/* 036108 80035508 44800000 */ mtc1 $zero, $f0 -/* 03610C 8003550C 10400007 */ beqz $v0, .L8003552C -/* 036110 80035510 24090258 */ li $t1, 600 -/* 036114 80035514 8C460064 */ lw $a2, 0x64($v0) -/* 036118 80035518 00000000 */ nop -/* 03611C 8003551C 80D901CF */ lb $t9, 0x1cf($a2) -/* 036120 80035520 00000000 */ nop -/* 036124 80035524 27280001 */ addiu $t0, $t9, 1 -/* 036128 80035528 A0C801CF */ sb $t0, 0x1cf($a2) -.L8003552C: -/* 03612C 8003552C A6290008 */ sh $t1, 8($s1) -/* 036130 80035530 E600001C */ swc1 $f0, 0x1c($s0) -/* 036134 80035534 1000003D */ b .L8003562C -/* 036138 80035538 E6000024 */ swc1 $f0, 0x24($s0) -.L8003553C: -/* 03613C 8003553C 862A0008 */ lh $t2, 8($s1) -/* 036140 80035540 8224000A */ lb $a0, 0xa($s1) -/* 036144 80035544 01455823 */ subu $t3, $t2, $a1 -/* 036148 80035548 0C006EB2 */ jal func_8001BAC8 -/* 03614C 8003554C A62B0008 */ sh $t3, 8($s1) -/* 036150 80035550 10400004 */ beqz $v0, .L80035564 -/* 036154 80035554 00403825 */ move $a3, $v0 -/* 036158 80035558 8C460064 */ lw $a2, 0x64($v0) -/* 03615C 8003555C 00000000 */ nop -/* 036160 80035560 AFA6004C */ sw $a2, 0x4c($sp) -.L80035564: -/* 036164 80035564 86230008 */ lh $v1, 8($s1) -/* 036168 80035568 8FA6004C */ lw $a2, 0x4c($sp) -/* 03616C 8003556C 1C60000C */ bgtz $v1, .L800355A0 -/* 036170 80035570 240E0004 */ li $t6, 4 -/* 036174 80035574 10400005 */ beqz $v0, .L8003558C -/* 036178 80035578 00000000 */ nop -/* 03617C 8003557C 80CC0193 */ lb $t4, 0x193($a2) -/* 036180 80035580 00000000 */ nop -/* 036184 80035584 258D0001 */ addiu $t5, $t4, 1 -/* 036188 80035588 A0CD0193 */ sb $t5, 0x193($a2) -.L8003558C: -/* 03618C 8003558C 8E2F0004 */ lw $t7, 4($s1) -/* 036190 80035590 A22E000B */ sb $t6, 0xb($s1) -/* 036194 80035594 ADE00078 */ sw $zero, 0x78($t7) -/* 036198 80035598 86230008 */ lh $v1, 8($s1) -/* 03619C 8003559C 00000000 */ nop -.L800355A0: -/* 0361A0 800355A0 2861021C */ slti $at, $v1, 0x21c -/* 0361A4 800355A4 10200008 */ beqz $at, .L800355C8 -/* 0361A8 800355A8 02002025 */ move $a0, $s0 -/* 0361AC 800355AC 02202825 */ move $a1, $s1 -/* 0361B0 800355B0 AFA6004C */ sw $a2, 0x4c($sp) -/* 0361B4 800355B4 0C00D810 */ jal func_80036040 -/* 0361B8 800355B8 AFA70050 */ sw $a3, 0x50($sp) -/* 0361BC 800355BC 8FA6004C */ lw $a2, 0x4c($sp) -/* 0361C0 800355C0 8FA70050 */ lw $a3, 0x50($sp) -/* 0361C4 800355C4 00000000 */ nop -.L800355C8: -/* 0361C8 800355C8 10E00019 */ beqz $a3, .L80035630 -/* 0361CC 800355CC 8FBF0024 */ lw $ra, 0x24($sp) -/* 0361D0 800355D0 8238000B */ lb $t8, 0xb($s1) -/* 0361D4 800355D4 24010003 */ li $at, 3 -/* 0361D8 800355D8 13010015 */ beq $t8, $at, .L80035630 -/* 0361DC 800355DC 8FBF0024 */ lw $ra, 0x24($sp) -/* 0361E0 800355E0 80D901CF */ lb $t9, 0x1cf($a2) -/* 0361E4 800355E4 00000000 */ nop -/* 0361E8 800355E8 2728FFFF */ addiu $t0, $t9, -1 -/* 0361EC 800355EC 1000000F */ b .L8003562C -/* 0361F0 800355F0 A0C801CF */ sb $t0, 0x1cf($a2) -.L800355F4: -/* 0361F4 800355F4 8224000A */ lb $a0, 0xa($s1) -/* 0361F8 800355F8 0C006EB2 */ jal func_8001BAC8 -/* 0361FC 800355FC 00000000 */ nop -/* 036200 80035600 10400009 */ beqz $v0, .L80035628 -/* 036204 80035604 240B0080 */ li $t3, 128 -/* 036208 80035608 8C460064 */ lw $a2, 0x64($v0) -/* 03620C 8003560C 240A0001 */ li $t2, 1 -/* 036210 80035610 80C90193 */ lb $t1, 0x193($a2) -/* 036214 80035614 00000000 */ nop -/* 036218 80035618 29210003 */ slti $at, $t1, 3 -/* 03621C 8003561C 14200002 */ bnez $at, .L80035628 -/* 036220 80035620 00000000 */ nop -/* 036224 80035624 A0CA01D8 */ sb $t2, 0x1d8($a2) -.L80035628: -/* 036228 80035628 A60B0018 */ sh $t3, 0x18($s0) -.L8003562C: -/* 03622C 8003562C 8FBF0024 */ lw $ra, 0x24($sp) -.L80035630: -/* 036230 80035630 8FB0001C */ lw $s0, 0x1c($sp) -/* 036234 80035634 8FB10020 */ lw $s1, 0x20($sp) -/* 036238 80035638 03E00008 */ jr $ra -/* 03623C 8003563C 27BD0058 */ addiu $sp, $sp, 0x58 - -glabel func_80035640 -/* 036240 80035640 AFA40000 */ sw $a0, ($sp) -/* 036244 80035644 03E00008 */ jr $ra -/* 036248 80035648 AFA50004 */ sw $a1, 4($sp) - -glabel func_8003564C -/* 03624C 8003564C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 036250 80035650 AFBF0014 */ sw $ra, 0x14($sp) -/* 036254 80035654 AFA5002C */ sw $a1, 0x2c($sp) -/* 036258 80035658 8C8E0078 */ lw $t6, 0x78($a0) -/* 03625C 8003565C 00803025 */ move $a2, $a0 -/* 036260 80035660 15C0002F */ bnez $t6, .L80035720 -/* 036264 80035664 8FBF0014 */ lw $ra, 0x14($sp) -/* 036268 80035668 444FF800 */ cfc1 $t7, $31 -/* 03626C 8003566C C484000C */ lwc1 $f4, 0xc($a0) -/* 036270 80035670 35E10003 */ ori $at, $t7, 3 -/* 036274 80035674 38210002 */ xori $at, $at, 2 -/* 036278 80035678 44C1F800 */ ctc1 $at, $31 -/* 03627C 8003567C 240B0008 */ li $t3, 8 -/* 036280 80035680 460021A4 */ cvt.w.s $f6, $f4 -/* 036284 80035684 240C0034 */ li $t4, 52 -/* 036288 80035688 44CFF800 */ ctc1 $t7, $31 -/* 03628C 8003568C 44183000 */ mfc1 $t8, $f6 -/* 036290 80035690 24050001 */ li $a1, 1 -/* 036294 80035694 4459F800 */ cfc1 $t9, $31 -/* 036298 80035698 A7B80022 */ sh $t8, 0x22($sp) -/* 03629C 8003569C 37210003 */ ori $at, $t9, 3 -/* 0362A0 800356A0 38210002 */ xori $at, $at, 2 -/* 0362A4 800356A4 44C1F800 */ ctc1 $at, $31 -/* 0362A8 800356A8 C4880010 */ lwc1 $f8, 0x10($a0) -/* 0362AC 800356AC 00000000 */ nop -/* 0362B0 800356B0 460042A4 */ cvt.w.s $f10, $f8 -/* 0362B4 800356B4 44D9F800 */ ctc1 $t9, $31 -/* 0362B8 800356B8 44085000 */ mfc1 $t0, $f10 -/* 0362BC 800356BC 00000000 */ nop -/* 0362C0 800356C0 4449F800 */ cfc1 $t1, $31 -/* 0362C4 800356C4 A7A80024 */ sh $t0, 0x24($sp) -/* 0362C8 800356C8 35210003 */ ori $at, $t1, 3 -/* 0362CC 800356CC 38210002 */ xori $at, $at, 2 -/* 0362D0 800356D0 44C1F800 */ ctc1 $at, $31 -/* 0362D4 800356D4 C4900014 */ lwc1 $f16, 0x14($a0) -/* 0362D8 800356D8 A3AB0021 */ sb $t3, 0x21($sp) -/* 0362DC 800356DC 460084A4 */ cvt.w.s $f18, $f16 -/* 0362E0 800356E0 A3AC0020 */ sb $t4, 0x20($sp) -/* 0362E4 800356E4 440A9000 */ mfc1 $t2, $f18 -/* 0362E8 800356E8 44C9F800 */ ctc1 $t1, $31 -/* 0362EC 800356EC AFA60028 */ sw $a2, 0x28($sp) -/* 0362F0 800356F0 27A40020 */ addiu $a0, $sp, 0x20 -/* 0362F4 800356F4 0C003A95 */ jal func_8000EA54 -/* 0362F8 800356F8 A7AA0026 */ sh $t2, 0x26($sp) -/* 0362FC 800356FC 8FA60028 */ lw $a2, 0x28($sp) -/* 036300 80035700 10400007 */ beqz $v0, .L80035720 -/* 036304 80035704 8FBF0014 */ lw $ra, 0x14($sp) -/* 036308 80035708 8C430064 */ lw $v1, 0x64($v0) -/* 03630C 8003570C 00000000 */ nop -/* 036310 80035710 AC660004 */ sw $a2, 4($v1) -/* 036314 80035714 ACC20078 */ sw $v0, 0x78($a2) -/* 036318 80035718 AC40003C */ sw $zero, 0x3c($v0) -/* 03631C 8003571C 8FBF0014 */ lw $ra, 0x14($sp) -.L80035720: -/* 036320 80035720 27BD0028 */ addiu $sp, $sp, 0x28 -/* 036324 80035724 03E00008 */ jr $ra -/* 036328 80035728 00000000 */ nop - -glabel func_8003572C -/* 03632C 8003572C 90AF0009 */ lbu $t7, 9($a1) -/* 036330 80035730 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 036334 80035734 448F2000 */ mtc1 $t7, $f4 -/* 036338 80035738 44811000 */ mtc1 $at, $f2 -/* 03633C 8003573C 46802020 */ cvt.s.w $f0, $f4 -/* 036340 80035740 3C014280 */ li $at, 0x42800000 # 64.000000 -/* 036344 80035744 44813000 */ mtc1 $at, $f6 -/* 036348 80035748 4602003C */ c.lt.s $f0, $f2 -/* 03634C 8003574C 00000000 */ nop -/* 036350 80035750 45000003 */ bc1f .L80035760 -/* 036354 80035754 00000000 */ nop -/* 036358 80035758 46001006 */ mov.s $f0, $f2 -/* 03635C 8003575C 00000000 */ nop -.L80035760: -/* 036360 80035760 46060003 */ div.s $f0, $f0, $f6 -/* 036364 80035764 8C820040 */ lw $v0, 0x40($a0) -/* 036368 80035768 8089003A */ lb $t1, 0x3a($a0) -/* 03636C 8003576C C448000C */ lwc1 $f8, 0xc($v0) -/* 036370 80035770 00000000 */ nop -/* 036374 80035774 46004282 */ mul.s $f10, $f8, $f0 -/* 036378 80035778 E48A0008 */ swc1 $f10, 8($a0) -/* 03637C 8003577C 90B9000A */ lbu $t9, 0xa($a1) -/* 036380 80035780 00000000 */ nop -/* 036384 80035784 00194280 */ sll $t0, $t9, 0xa -/* 036388 80035788 A4880000 */ sh $t0, ($a0) -/* 03638C 8003578C 804A0055 */ lb $t2, 0x55($v0) -/* 036390 80035790 00000000 */ nop -/* 036394 80035794 012A082A */ slt $at, $t1, $t2 -/* 036398 80035798 14200002 */ bnez $at, .L800357A4 -/* 03639C 8003579C 00000000 */ nop -/* 0363A0 800357A0 A080003A */ sb $zero, 0x3a($a0) -.L800357A4: -/* 0363A4 800357A4 8C8C004C */ lw $t4, 0x4c($a0) -/* 0363A8 800357A8 240B0001 */ li $t3, 1 -/* 0363AC 800357AC A58B0014 */ sh $t3, 0x14($t4) -/* 0363B0 800357B0 8C8E004C */ lw $t6, 0x4c($a0) -/* 0363B4 800357B4 240D0002 */ li $t5, 2 -/* 0363B8 800357B8 A1CD0011 */ sb $t5, 0x11($t6) -/* 0363BC 800357BC 8C98004C */ lw $t8, 0x4c($a0) -/* 0363C0 800357C0 240F0014 */ li $t7, 20 -/* 0363C4 800357C4 A30F0010 */ sb $t7, 0x10($t8) -/* 0363C8 800357C8 8C99004C */ lw $t9, 0x4c($a0) -/* 0363CC 800357CC 03E00008 */ jr $ra -/* 0363D0 800357D0 A3200012 */ sb $zero, 0x12($t9) - -glabel func_800357D4 -/* 0363D4 800357D4 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0363D8 800357D8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0363DC 800357DC AFA40020 */ sw $a0, 0x20($sp) -/* 0363E0 800357E0 AFA50024 */ sw $a1, 0x24($sp) -/* 0363E4 800357E4 0C006EB2 */ jal func_8001BAC8 -/* 0363E8 800357E8 00002025 */ move $a0, $zero -/* 0363EC 800357EC 1040001F */ beqz $v0, .L8003586C -/* 0363F0 800357F0 8FAC0020 */ lw $t4, 0x20($sp) -/* 0363F4 800357F4 8FAE0020 */ lw $t6, 0x20($sp) -/* 0363F8 800357F8 00000000 */ nop -/* 0363FC 800357FC 8DC3004C */ lw $v1, 0x4c($t6) -/* 036400 80035800 00000000 */ nop -/* 036404 80035804 906F0013 */ lbu $t7, 0x13($v1) -/* 036408 80035808 00000000 */ nop -/* 03640C 8003580C 29E100C8 */ slti $at, $t7, 0xc8 -/* 036410 80035810 10200016 */ beqz $at, .L8003586C -/* 036414 80035814 8FAC0020 */ lw $t4, 0x20($sp) -/* 036418 80035818 8C780000 */ lw $t8, ($v1) -/* 03641C 8003581C 00002025 */ move $a0, $zero -/* 036420 80035820 14580012 */ bne $v0, $t8, .L8003586C -/* 036424 80035824 8FAC0020 */ lw $t4, 0x20($sp) -/* 036428 80035828 0C01A955 */ jal func_8006A554 -/* 03642C 8003582C AFA2001C */ sw $v0, 0x1c($sp) -/* 036430 80035830 8FA5001C */ lw $a1, 0x1c($sp) -/* 036434 80035834 30592000 */ andi $t9, $v0, 0x2000 -/* 036438 80035838 17200009 */ bnez $t9, .L80035860 -/* 03643C 8003583C 00000000 */ nop -/* 036440 80035840 8FA80020 */ lw $t0, 0x20($sp) -/* 036444 80035844 00000000 */ nop -/* 036448 80035848 8D09005C */ lw $t1, 0x5c($t0) -/* 03644C 8003584C 00000000 */ nop -/* 036450 80035850 8D2A0100 */ lw $t2, 0x100($t1) -/* 036454 80035854 00000000 */ nop -/* 036458 80035858 14AA0004 */ bne $a1, $t2, .L8003586C -/* 03645C 8003585C 8FAC0020 */ lw $t4, 0x20($sp) -.L80035860: -/* 036460 80035860 0C01BCA7 */ jal func_8006F29C -/* 036464 80035864 00000000 */ nop -/* 036468 80035868 8FAC0020 */ lw $t4, 0x20($sp) -.L8003586C: -/* 03646C 8003586C 240B00FF */ li $t3, 255 -/* 036470 80035870 8D8D004C */ lw $t5, 0x4c($t4) -/* 036474 80035874 00000000 */ nop -/* 036478 80035878 A1AB0013 */ sb $t3, 0x13($t5) -/* 03647C 8003587C 8FBF0014 */ lw $ra, 0x14($sp) -/* 036480 80035880 27BD0020 */ addiu $sp, $sp, 0x20 -/* 036484 80035884 03E00008 */ jr $ra -/* 036488 80035888 00000000 */ nop - -glabel func_8003588C -/* 03648C 8003588C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 036490 80035890 AFBF0014 */ sw $ra, 0x14($sp) -/* 036494 80035894 90AF0009 */ lbu $t7, 9($a1) -/* 036498 80035898 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 03649C 8003589C 448F2000 */ mtc1 $t7, $f4 -/* 0364A0 800358A0 44811000 */ mtc1 $at, $f2 -/* 0364A4 800358A4 46802020 */ cvt.s.w $f0, $f4 -/* 0364A8 800358A8 3C014280 */ li $at, 0x42800000 # 64.000000 -/* 0364AC 800358AC 44813000 */ mtc1 $at, $f6 -/* 0364B0 800358B0 4602003C */ c.lt.s $f0, $f2 -/* 0364B4 800358B4 00000000 */ nop -/* 0364B8 800358B8 45000003 */ bc1f .L800358C8 -/* 0364BC 800358BC 00000000 */ nop -/* 0364C0 800358C0 46001006 */ mov.s $f0, $f2 -/* 0364C4 800358C4 00000000 */ nop -.L800358C8: -/* 0364C8 800358C8 46060003 */ div.s $f0, $f0, $f6 -/* 0364CC 800358CC 8C820040 */ lw $v0, 0x40($a0) -/* 0364D0 800358D0 8089003A */ lb $t1, 0x3a($a0) -/* 0364D4 800358D4 C448000C */ lwc1 $f8, 0xc($v0) -/* 0364D8 800358D8 00000000 */ nop -/* 0364DC 800358DC 46004282 */ mul.s $f10, $f8, $f0 -/* 0364E0 800358E0 E48A0008 */ swc1 $f10, 8($a0) -/* 0364E4 800358E4 90B9000A */ lbu $t9, 0xa($a1) -/* 0364E8 800358E8 00000000 */ nop -/* 0364EC 800358EC 00194280 */ sll $t0, $t9, 0xa -/* 0364F0 800358F0 A4880000 */ sh $t0, ($a0) -/* 0364F4 800358F4 804A0055 */ lb $t2, 0x55($v0) -/* 0364F8 800358F8 00000000 */ nop -/* 0364FC 800358FC 012A082A */ slt $at, $t1, $t2 -/* 036500 80035900 14200002 */ bnez $at, .L8003590C -/* 036504 80035904 00000000 */ nop -/* 036508 80035908 A080003A */ sb $zero, 0x3a($a0) -.L8003590C: -/* 03650C 8003590C 8C8C004C */ lw $t4, 0x4c($a0) -/* 036510 80035910 240B0002 */ li $t3, 2 -/* 036514 80035914 A58B0014 */ sh $t3, 0x14($t4) -/* 036518 80035918 8C8D004C */ lw $t5, 0x4c($a0) -/* 03651C 8003591C 240E0014 */ li $t6, 20 -/* 036520 80035920 A1A00011 */ sb $zero, 0x11($t5) -/* 036524 80035924 8C8F004C */ lw $t7, 0x4c($a0) -/* 036528 80035928 00000000 */ nop -/* 03652C 8003592C A1EE0010 */ sb $t6, 0x10($t7) -/* 036530 80035930 8C98004C */ lw $t8, 0x4c($a0) -/* 036534 80035934 00000000 */ nop -/* 036538 80035938 A3000012 */ sb $zero, 0x12($t8) -/* 03653C 8003593C 0C0270C3 */ jal func_8009C30C -/* 036540 80035940 AFA40018 */ sw $a0, 0x18($sp) -/* 036544 80035944 8FA40018 */ lw $a0, 0x18($sp) -/* 036548 80035948 0002CA80 */ sll $t9, $v0, 0xa -/* 03654C 8003594C 07210004 */ bgez $t9, .L80035960 -/* 036550 80035950 8FBF0014 */ lw $ra, 0x14($sp) -/* 036554 80035954 0C003FEE */ jal func_8000FFB8 -/* 036558 80035958 00000000 */ nop -/* 03655C 8003595C 8FBF0014 */ lw $ra, 0x14($sp) -.L80035960: -/* 036560 80035960 27BD0018 */ addiu $sp, $sp, 0x18 -/* 036564 80035964 03E00008 */ jr $ra -/* 036568 80035968 00000000 */ nop - -glabel func_8003596C -/* 03656C 8003596C 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 036570 80035970 AFBF002C */ sw $ra, 0x2c($sp) -/* 036574 80035974 AFB30024 */ sw $s3, 0x24($sp) -/* 036578 80035978 00809825 */ move $s3, $a0 -/* 03657C 8003597C AFB40028 */ sw $s4, 0x28($sp) -/* 036580 80035980 AFB20020 */ sw $s2, 0x20($sp) -/* 036584 80035984 AFB1001C */ sw $s1, 0x1c($sp) -/* 036588 80035988 AFB00018 */ sw $s0, 0x18($sp) -/* 03658C 8003598C 0C003873 */ jal func_8000E1CC -/* 036590 80035990 AFA5005C */ sw $a1, 0x5c($sp) -/* 036594 80035994 14400006 */ bnez $v0, .L800359B0 -/* 036598 80035998 00000000 */ nop -/* 03659C 8003599C 866E0006 */ lh $t6, 6($s3) -/* 0365A0 800359A0 00000000 */ nop -/* 0365A4 800359A4 35CF4000 */ ori $t7, $t6, 0x4000 -/* 0365A8 800359A8 10000005 */ b .L800359C0 -/* 0365AC 800359AC A66F0006 */ sh $t7, 6($s3) -.L800359B0: -/* 0365B0 800359B0 86780006 */ lh $t8, 6($s3) -/* 0365B4 800359B4 00000000 */ nop -/* 0365B8 800359B8 3319BFFF */ andi $t9, $t8, 0xbfff -/* 0365BC 800359BC A6790006 */ sh $t9, 6($s3) -.L800359C0: -/* 0365C0 800359C0 8E68004C */ lw $t0, 0x4c($s3) -/* 0365C4 800359C4 00000000 */ nop -/* 0365C8 800359C8 91090013 */ lbu $t1, 0x13($t0) -/* 0365CC 800359CC 00000000 */ nop -/* 0365D0 800359D0 29210064 */ slti $at, $t1, 0x64 -/* 0365D4 800359D4 1020003D */ beqz $at, .L80035ACC -/* 0365D8 800359D8 8FBF002C */ lw $ra, 0x2c($sp) -/* 0365DC 800359DC 866A0006 */ lh $t2, 6($s3) -/* 0365E0 800359E0 00000000 */ nop -/* 0365E4 800359E4 314B4000 */ andi $t3, $t2, 0x4000 -/* 0365E8 800359E8 15600038 */ bnez $t3, .L80035ACC -/* 0365EC 800359EC 8FBF002C */ lw $ra, 0x2c($sp) -/* 0365F0 800359F0 0C006E9D */ jal func_8001BA74 -/* 0365F4 800359F4 27A40040 */ addiu $a0, $sp, 0x40 -/* 0365F8 800359F8 8FAC0040 */ lw $t4, 0x40($sp) -/* 0365FC 800359FC 00008825 */ move $s1, $zero -/* 036600 80035A00 19800031 */ blez $t4, .L80035AC8 -/* 036604 80035A04 00409025 */ move $s2, $v0 -/* 036608 80035A08 24140001 */ li $s4, 1 -.L80035A0C: -/* 03660C 80035A0C 8E420000 */ lw $v0, ($s2) -/* 036610 80035A10 00000000 */ nop -/* 036614 80035A14 8C500064 */ lw $s0, 0x64($v0) -/* 036618 80035A18 00000000 */ nop -/* 03661C 80035A1C 920D01F5 */ lbu $t5, 0x1f5($s0) -/* 036620 80035A20 00000000 */ nop -/* 036624 80035A24 15A00024 */ bnez $t5, .L80035AB8 -/* 036628 80035A28 8FB90040 */ lw $t9, 0x40($sp) -/* 03662C 80035A2C 820E01D3 */ lb $t6, 0x1d3($s0) -/* 036630 80035A30 00000000 */ nop -/* 036634 80035A34 29C1000F */ slti $at, $t6, 0xf -/* 036638 80035A38 1020001F */ beqz $at, .L80035AB8 -/* 03663C 80035A3C 8FB90040 */ lw $t9, 0x40($sp) -/* 036640 80035A40 C444000C */ lwc1 $f4, 0xc($v0) -/* 036644 80035A44 C666000C */ lwc1 $f6, 0xc($s3) -/* 036648 80035A48 C4480010 */ lwc1 $f8, 0x10($v0) -/* 03664C 80035A4C 46062001 */ sub.s $f0, $f4, $f6 -/* 036650 80035A50 C66A0010 */ lwc1 $f10, 0x10($s3) -/* 036654 80035A54 46000102 */ mul.s $f4, $f0, $f0 -/* 036658 80035A58 460A4081 */ sub.s $f2, $f8, $f10 -/* 03665C 80035A5C C4500014 */ lwc1 $f16, 0x14($v0) -/* 036660 80035A60 C6720014 */ lwc1 $f18, 0x14($s3) -/* 036664 80035A64 46021182 */ mul.s $f6, $f2, $f2 -/* 036668 80035A68 46128381 */ sub.s $f14, $f16, $f18 -/* 03666C 80035A6C 460E7282 */ mul.s $f10, $f14, $f14 -/* 036670 80035A70 46062200 */ add.s $f8, $f4, $f6 -/* 036674 80035A74 0C0326B4 */ jal sqrtf -/* 036678 80035A78 460A4300 */ add.s $f12, $f8, $f10 -/* 03667C 80035A7C 444FF800 */ cfc1 $t7, $31 -/* 036680 80035A80 00000000 */ nop -/* 036684 80035A84 35E10003 */ ori $at, $t7, 3 -/* 036688 80035A88 38210002 */ xori $at, $at, 2 -/* 03668C 80035A8C 44C1F800 */ ctc1 $at, $31 -/* 036690 80035A90 00000000 */ nop -/* 036694 80035A94 46000424 */ cvt.w.s $f16, $f0 -/* 036698 80035A98 44188000 */ mfc1 $t8, $f16 -/* 03669C 80035A9C 44CFF800 */ ctc1 $t7, $31 -/* 0366A0 80035AA0 2B010064 */ slti $at, $t8, 0x64 -/* 0366A4 80035AA4 10200004 */ beqz $at, .L80035AB8 -/* 0366A8 80035AA8 8FB90040 */ lw $t9, 0x40($sp) -/* 0366AC 80035AAC A21401F5 */ sb $s4, 0x1f5($s0) -/* 0366B0 80035AB0 AE13014C */ sw $s3, 0x14c($s0) -/* 0366B4 80035AB4 8FB90040 */ lw $t9, 0x40($sp) -.L80035AB8: -/* 0366B8 80035AB8 26310001 */ addiu $s1, $s1, 1 -/* 0366BC 80035ABC 0239082A */ slt $at, $s1, $t9 -/* 0366C0 80035AC0 1420FFD2 */ bnez $at, .L80035A0C -/* 0366C4 80035AC4 26520004 */ addiu $s2, $s2, 4 -.L80035AC8: -/* 0366C8 80035AC8 8FBF002C */ lw $ra, 0x2c($sp) -.L80035ACC: -/* 0366CC 80035ACC 8FB00018 */ lw $s0, 0x18($sp) -/* 0366D0 80035AD0 8FB1001C */ lw $s1, 0x1c($sp) -/* 0366D4 80035AD4 8FB20020 */ lw $s2, 0x20($sp) -/* 0366D8 80035AD8 8FB30024 */ lw $s3, 0x24($sp) -/* 0366DC 80035ADC 8FB40028 */ lw $s4, 0x28($sp) -/* 0366E0 80035AE0 03E00008 */ jr $ra -/* 0366E4 80035AE4 27BD0058 */ addiu $sp, $sp, 0x58 - -glabel func_80035AE8 -/* 0366E8 80035AE8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0366EC 80035AEC AFBF0014 */ sw $ra, 0x14($sp) -/* 0366F0 80035AF0 90AF0009 */ lbu $t7, 9($a1) -/* 0366F4 80035AF4 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 0366F8 80035AF8 448F2000 */ mtc1 $t7, $f4 -/* 0366FC 80035AFC 44811000 */ mtc1 $at, $f2 -/* 036700 80035B00 46802020 */ cvt.s.w $f0, $f4 -/* 036704 80035B04 3C014280 */ li $at, 0x42800000 # 64.000000 -/* 036708 80035B08 44813000 */ mtc1 $at, $f6 -/* 03670C 80035B0C 4602003C */ c.lt.s $f0, $f2 -/* 036710 80035B10 240F00FF */ li $t7, 255 -/* 036714 80035B14 45000003 */ bc1f .L80035B24 -/* 036718 80035B18 00000000 */ nop -/* 03671C 80035B1C 46001006 */ mov.s $f0, $f2 -/* 036720 80035B20 00000000 */ nop -.L80035B24: -/* 036724 80035B24 46060003 */ div.s $f0, $f0, $f6 -/* 036728 80035B28 8C820040 */ lw $v0, 0x40($a0) -/* 03672C 80035B2C 8C980050 */ lw $t8, 0x50($a0) -/* 036730 80035B30 C448000C */ lwc1 $f8, 0xc($v0) -/* 036734 80035B34 00000000 */ nop -/* 036738 80035B38 46004282 */ mul.s $f10, $f8, $f0 -/* 03673C 80035B3C E48A0008 */ swc1 $f10, 8($a0) -/* 036740 80035B40 C4500004 */ lwc1 $f16, 4($v0) -/* 036744 80035B44 00000000 */ nop -/* 036748 80035B48 46008482 */ mul.s $f18, $f16, $f0 -/* 03674C 80035B4C E7120000 */ swc1 $f18, ($t8) -/* 036750 80035B50 90A8000A */ lbu $t0, 0xa($a1) -/* 036754 80035B54 8C8B0040 */ lw $t3, 0x40($a0) -/* 036758 80035B58 00084A80 */ sll $t1, $t0, 0xa -/* 03675C 80035B5C A4890000 */ sh $t1, ($a0) -/* 036760 80035B60 808A003A */ lb $t2, 0x3a($a0) -/* 036764 80035B64 816C0055 */ lb $t4, 0x55($t3) -/* 036768 80035B68 00000000 */ nop -/* 03676C 80035B6C 014C082A */ slt $at, $t2, $t4 -/* 036770 80035B70 14200003 */ bnez $at, .L80035B80 -/* 036774 80035B74 3C0141E0 */ lui $at, 0x41e0 -/* 036778 80035B78 A080003A */ sb $zero, 0x3a($a0) -/* 03677C 80035B7C 3C0141E0 */ li $at, 0x41E00000 # 28.000000 -.L80035B80: -/* 036780 80035B80 44812000 */ mtc1 $at, $f4 -/* 036784 80035B84 00000000 */ nop -/* 036788 80035B88 46002182 */ mul.s $f6, $f4, $f0 -/* 03678C 80035B8C 444DF800 */ cfc1 $t5, $31 -/* 036790 80035B90 00000000 */ nop -/* 036794 80035B94 35A10003 */ ori $at, $t5, 3 -/* 036798 80035B98 38210002 */ xori $at, $at, 2 -/* 03679C 80035B9C 44C1F800 */ ctc1 $at, $31 -/* 0367A0 80035BA0 00000000 */ nop -/* 0367A4 80035BA4 46003224 */ cvt.w.s $f8, $f6 -/* 0367A8 80035BA8 44024000 */ mfc1 $v0, $f8 -/* 0367AC 80035BAC 44CDF800 */ ctc1 $t5, $31 -/* 0367B0 80035BB0 2442000F */ addiu $v0, $v0, 0xf -/* 0367B4 80035BB4 04410002 */ bgez $v0, .L80035BC0 -/* 0367B8 80035BB8 AC820078 */ sw $v0, 0x78($a0) -/* 0367BC 80035BBC AC800078 */ sw $zero, 0x78($a0) -.L80035BC0: -/* 0367C0 80035BC0 8C8E0078 */ lw $t6, 0x78($a0) -/* 0367C4 80035BC4 00000000 */ nop -/* 0367C8 80035BC8 29C10100 */ slti $at, $t6, 0x100 -/* 0367CC 80035BCC 14200002 */ bnez $at, .L80035BD8 -/* 0367D0 80035BD0 00000000 */ nop -/* 0367D4 80035BD4 AC8F0078 */ sw $t7, 0x78($a0) -.L80035BD8: -/* 0367D8 80035BD8 8C99004C */ lw $t9, 0x4c($a0) -/* 0367DC 80035BDC 24180002 */ li $t8, 2 -/* 0367E0 80035BE0 A7380014 */ sh $t8, 0x14($t9) -/* 0367E4 80035BE4 8C88004C */ lw $t0, 0x4c($a0) -/* 0367E8 80035BE8 24090014 */ li $t1, 20 -/* 0367EC 80035BEC A1000011 */ sb $zero, 0x11($t0) -/* 0367F0 80035BF0 8C8B004C */ lw $t3, 0x4c($a0) -/* 0367F4 80035BF4 240CFF9C */ li $t4, -100 -/* 0367F8 80035BF8 A1690010 */ sb $t1, 0x10($t3) -/* 0367FC 80035BFC 8C8A004C */ lw $t2, 0x4c($a0) -/* 036800 80035C00 240E0064 */ li $t6, 100 -/* 036804 80035C04 A1400012 */ sb $zero, 0x12($t2) -/* 036808 80035C08 8C8D004C */ lw $t5, 0x4c($a0) -/* 03680C 80035C0C 00000000 */ nop -/* 036810 80035C10 A1AC0016 */ sb $t4, 0x16($t5) -/* 036814 80035C14 8C8F004C */ lw $t7, 0x4c($a0) -/* 036818 80035C18 00000000 */ nop -/* 03681C 80035C1C A1EE0017 */ sb $t6, 0x17($t7) -/* 036820 80035C20 0C0270C3 */ jal func_8009C30C -/* 036824 80035C24 AFA40018 */ sw $a0, 0x18($sp) -/* 036828 80035C28 8FA40018 */ lw $a0, 0x18($sp) -/* 03682C 80035C2C 0002C280 */ sll $t8, $v0, 0xa -/* 036830 80035C30 07010004 */ bgez $t8, .L80035C44 -/* 036834 80035C34 8FBF0014 */ lw $ra, 0x14($sp) -/* 036838 80035C38 0C003FEE */ jal func_8000FFB8 -/* 03683C 80035C3C 00000000 */ nop -/* 036840 80035C40 8FBF0014 */ lw $ra, 0x14($sp) -.L80035C44: -/* 036844 80035C44 27BD0018 */ addiu $sp, $sp, 0x18 -/* 036848 80035C48 03E00008 */ jr $ra -/* 03684C 80035C4C 00000000 */ nop - -glabel func_80035C50 -/* 036850 80035C50 27BDFF98 */ addiu $sp, $sp, -0x68 -/* 036854 80035C54 AFBF003C */ sw $ra, 0x3c($sp) -/* 036858 80035C58 AFB60038 */ sw $s6, 0x38($sp) -/* 03685C 80035C5C AFB50034 */ sw $s5, 0x34($sp) -/* 036860 80035C60 AFB40030 */ sw $s4, 0x30($sp) -/* 036864 80035C64 AFB3002C */ sw $s3, 0x2c($sp) -/* 036868 80035C68 AFB20028 */ sw $s2, 0x28($sp) -/* 03686C 80035C6C AFB10024 */ sw $s1, 0x24($sp) -/* 036870 80035C70 AFB00020 */ sw $s0, 0x20($sp) -/* 036874 80035C74 AFA5006C */ sw $a1, 0x6c($sp) -/* 036878 80035C78 848E0006 */ lh $t6, 6($a0) -/* 03687C 80035C7C 00809025 */ move $s2, $a0 -/* 036880 80035C80 31CFBFFF */ andi $t7, $t6, 0xbfff -/* 036884 80035C84 A48F0006 */ sh $t7, 6($a0) -/* 036888 80035C88 84980006 */ lh $t8, 6($a0) -/* 03688C 80035C8C 00000000 */ nop -/* 036890 80035C90 37191000 */ ori $t9, $t8, 0x1000 -/* 036894 80035C94 A4990006 */ sh $t9, 6($a0) -/* 036898 80035C98 0C006EB2 */ jal func_8001BAC8 -/* 03689C 80035C9C 00002025 */ move $a0, $zero -/* 0368A0 80035CA0 8E48004C */ lw $t0, 0x4c($s2) -/* 0368A4 80035CA4 8E4A0078 */ lw $t2, 0x78($s2) -/* 0368A8 80035CA8 91090013 */ lbu $t1, 0x13($t0) -/* 0368AC 80035CAC 00000000 */ nop -/* 0368B0 80035CB0 012A082A */ slt $at, $t1, $t2 -/* 0368B4 80035CB4 10200051 */ beqz $at, .L80035DFC -/* 0368B8 80035CB8 8FBF003C */ lw $ra, 0x3c($sp) -/* 0368BC 80035CBC 0C006E9D */ jal func_8001BA74 -/* 0368C0 80035CC0 27A40054 */ addiu $a0, $sp, 0x54 -/* 0368C4 80035CC4 8FAB0054 */ lw $t3, 0x54($sp) -/* 0368C8 80035CC8 00009825 */ move $s3, $zero -/* 0368CC 80035CCC 1960004A */ blez $t3, .L80035DF8 -/* 0368D0 80035CD0 0040A025 */ move $s4, $v0 -/* 0368D4 80035CD4 24160002 */ li $s6, 2 -/* 0368D8 80035CD8 2415FFFF */ li $s5, -1 -.L80035CDC: -/* 0368DC 80035CDC 8E910000 */ lw $s1, ($s4) -/* 0368E0 80035CE0 00000000 */ nop -/* 0368E4 80035CE4 8E300064 */ lw $s0, 0x64($s1) -/* 0368E8 80035CE8 00000000 */ nop -/* 0368EC 80035CEC 820C01D3 */ lb $t4, 0x1d3($s0) -/* 0368F0 80035CF0 00000000 */ nop -/* 0368F4 80035CF4 2981000F */ slti $at, $t4, 0xf -/* 0368F8 80035CF8 1020003B */ beqz $at, .L80035DE8 -/* 0368FC 80035CFC 8FAC0054 */ lw $t4, 0x54($sp) -/* 036900 80035D00 820D01E2 */ lb $t5, 0x1e2($s0) -/* 036904 80035D04 00000000 */ nop -/* 036908 80035D08 11A00037 */ beqz $t5, .L80035DE8 -/* 03690C 80035D0C 8FAC0054 */ lw $t4, 0x54($sp) -/* 036910 80035D10 C624000C */ lwc1 $f4, 0xc($s1) -/* 036914 80035D14 C646000C */ lwc1 $f6, 0xc($s2) -/* 036918 80035D18 C6280010 */ lwc1 $f8, 0x10($s1) -/* 03691C 80035D1C 46062001 */ sub.s $f0, $f4, $f6 -/* 036920 80035D20 C64A0010 */ lwc1 $f10, 0x10($s2) -/* 036924 80035D24 46000102 */ mul.s $f4, $f0, $f0 -/* 036928 80035D28 460A4081 */ sub.s $f2, $f8, $f10 -/* 03692C 80035D2C C6300014 */ lwc1 $f16, 0x14($s1) -/* 036930 80035D30 C6520014 */ lwc1 $f18, 0x14($s2) -/* 036934 80035D34 46021182 */ mul.s $f6, $f2, $f2 -/* 036938 80035D38 46128381 */ sub.s $f14, $f16, $f18 -/* 03693C 80035D3C 460E7282 */ mul.s $f10, $f14, $f14 -/* 036940 80035D40 46062200 */ add.s $f8, $f4, $f6 -/* 036944 80035D44 0C0326B4 */ jal sqrtf -/* 036948 80035D48 460A4300 */ add.s $f12, $f8, $f10 -/* 03694C 80035D4C 444EF800 */ cfc1 $t6, $31 -/* 036950 80035D50 8E580078 */ lw $t8, 0x78($s2) -/* 036954 80035D54 35C10003 */ ori $at, $t6, 3 -/* 036958 80035D58 38210002 */ xori $at, $at, 2 -/* 03695C 80035D5C 44C1F800 */ ctc1 $at, $31 -/* 036960 80035D60 00000000 */ nop -/* 036964 80035D64 46000424 */ cvt.w.s $f16, $f0 -/* 036968 80035D68 440F8000 */ mfc1 $t7, $f16 -/* 03696C 80035D6C 44CEF800 */ ctc1 $t6, $31 -/* 036970 80035D70 01F8082A */ slt $at, $t7, $t8 -/* 036974 80035D74 1020001C */ beqz $at, .L80035DE8 -/* 036978 80035D78 8FAC0054 */ lw $t4, 0x54($sp) -/* 03697C 80035D7C 86190000 */ lh $t9, ($s0) -/* 036980 80035D80 24040107 */ li $a0, 263 -/* 036984 80035D84 12B90006 */ beq $s5, $t9, .L80035DA0 -/* 036988 80035D88 00000000 */ nop -/* 03698C 80035D8C 8E25000C */ lw $a1, 0xc($s1) -/* 036990 80035D90 8E260010 */ lw $a2, 0x10($s1) -/* 036994 80035D94 8E270014 */ lw $a3, 0x14($s1) -/* 036998 80035D98 0C0007AA */ jal func_80001EA8 -/* 03699C 80035D9C AFA00010 */ sw $zero, 0x10($sp) -.L80035DA0: -/* 0369A0 80035DA0 0C00322D */ jal func_8000C8B4 -/* 0369A4 80035DA4 2404002D */ li $a0, 45 -/* 0369A8 80035DA8 9208020C */ lbu $t0, 0x20c($s0) -/* 0369AC 80035DAC A20201D3 */ sb $v0, 0x1d3($s0) -/* 0369B0 80035DB0 11000005 */ beqz $t0, .L80035DC8 -/* 0369B4 80035DB4 A2160203 */ sb $s6, 0x203($s0) -/* 0369B8 80035DB8 82090203 */ lb $t1, 0x203($s0) -/* 0369BC 80035DBC 00000000 */ nop -/* 0369C0 80035DC0 352A0004 */ ori $t2, $t1, 4 -/* 0369C4 80035DC4 A20A0203 */ sb $t2, 0x203($s0) -.L80035DC8: -/* 0369C8 80035DC8 820B01D8 */ lb $t3, 0x1d8($s0) -/* 0369CC 80035DCC 00000000 */ nop -/* 0369D0 80035DD0 15600005 */ bnez $t3, .L80035DE8 -/* 0369D4 80035DD4 8FAC0054 */ lw $t4, 0x54($sp) -/* 0369D8 80035DD8 86040000 */ lh $a0, ($s0) -/* 0369DC 80035DDC 0C01C8D2 */ jal func_80072348 -/* 0369E0 80035DE0 24050008 */ li $a1, 8 -/* 0369E4 80035DE4 8FAC0054 */ lw $t4, 0x54($sp) -.L80035DE8: -/* 0369E8 80035DE8 26730001 */ addiu $s3, $s3, 1 -/* 0369EC 80035DEC 026C082A */ slt $at, $s3, $t4 -/* 0369F0 80035DF0 1420FFBA */ bnez $at, .L80035CDC -/* 0369F4 80035DF4 26940004 */ addiu $s4, $s4, 4 -.L80035DF8: -/* 0369F8 80035DF8 8FBF003C */ lw $ra, 0x3c($sp) -.L80035DFC: -/* 0369FC 80035DFC 8FB00020 */ lw $s0, 0x20($sp) -/* 036A00 80035E00 8FB10024 */ lw $s1, 0x24($sp) -/* 036A04 80035E04 8FB20028 */ lw $s2, 0x28($sp) -/* 036A08 80035E08 8FB3002C */ lw $s3, 0x2c($sp) -/* 036A0C 80035E0C 8FB40030 */ lw $s4, 0x30($sp) -/* 036A10 80035E10 8FB50034 */ lw $s5, 0x34($sp) -/* 036A14 80035E14 8FB60038 */ lw $s6, 0x38($sp) -/* 036A18 80035E18 03E00008 */ jr $ra -/* 036A1C 80035E1C 27BD0068 */ addiu $sp, $sp, 0x68 - -glabel func_80035E20 -/* 036A20 80035E20 AFA50004 */ sw $a1, 4($sp) -/* 036A24 80035E24 8C8E0040 */ lw $t6, 0x40($a0) -/* 036A28 80035E28 AC800078 */ sw $zero, 0x78($a0) -/* 036A2C 80035E2C 03E00008 */ jr $ra -/* 036A30 80035E30 AC8E007C */ sw $t6, 0x7c($a0) - -glabel func_80035E34 -/* 036A34 80035E34 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 036A38 80035E38 AFBF001C */ sw $ra, 0x1c($sp) -/* 036A3C 80035E3C AFB00018 */ sw $s0, 0x18($sp) -/* 036A40 80035E40 AFA50024 */ sw $a1, 0x24($sp) -/* 036A44 80035E44 240E0028 */ li $t6, 40 -/* 036A48 80035E48 00808025 */ move $s0, $a0 -/* 036A4C 80035E4C A080003B */ sb $zero, 0x3b($a0) -/* 036A50 80035E50 0C0044E7 */ jal func_8001139C -/* 036A54 80035E54 A48E0018 */ sh $t6, 0x18($a0) -/* 036A58 80035E58 14400006 */ bnez $v0, .L80035E74 -/* 036A5C 80035E5C 00000000 */ nop -/* 036A60 80035E60 8E0F0078 */ lw $t7, 0x78($s0) -/* 036A64 80035E64 8FB80024 */ lw $t8, 0x24($sp) -/* 036A68 80035E68 00000000 */ nop -/* 036A6C 80035E6C 01F8C821 */ addu $t9, $t7, $t8 -/* 036A70 80035E70 AE190078 */ sw $t9, 0x78($s0) -.L80035E74: -/* 036A74 80035E74 0C016790 */ jal func_80059E40 -/* 036A78 80035E78 02002025 */ move $a0, $s0 -/* 036A7C 80035E7C 8FA50024 */ lw $a1, 0x24($sp) -/* 036A80 80035E80 0C02BF0F */ jal func_800AFC3C -/* 036A84 80035E84 02002025 */ move $a0, $s0 -/* 036A88 80035E88 0C006EB2 */ jal func_8001BAC8 -/* 036A8C 80035E8C 00002025 */ move $a0, $zero -/* 036A90 80035E90 8E030060 */ lw $v1, 0x60($s0) -/* 036A94 80035E94 24050001 */ li $a1, 1 -/* 036A98 80035E98 8C680000 */ lw $t0, ($v1) -/* 036A9C 80035E9C 8C440064 */ lw $a0, 0x64($v0) -/* 036AA0 80035EA0 14A80012 */ bne $a1, $t0, .L80035EEC -/* 036AA4 80035EA4 8FBF001C */ lw $ra, 0x1c($sp) -/* 036AA8 80035EA8 808201D6 */ lb $v0, 0x1d6($a0) -/* 036AAC 80035EAC 24010002 */ li $at, 2 -/* 036AB0 80035EB0 10450003 */ beq $v0, $a1, .L80035EC0 -/* 036AB4 80035EB4 00000000 */ nop -/* 036AB8 80035EB8 1441000C */ bne $v0, $at, .L80035EEC -/* 036ABC 80035EBC 8FBF001C */ lw $ra, 0x1c($sp) -.L80035EC0: -/* 036AC0 80035EC0 8C620004 */ lw $v0, 4($v1) -/* 036AC4 80035EC4 24094000 */ li $t1, 16384 -/* 036AC8 80035EC8 804A003A */ lb $t2, 0x3a($v0) -/* 036ACC 80035ECC A4490000 */ sh $t1, ($v0) -/* 036AD0 80035ED0 254B0001 */ addiu $t3, $t2, 1 -/* 036AD4 80035ED4 A04B003A */ sb $t3, 0x3a($v0) -/* 036AD8 80035ED8 804C003A */ lb $t4, 0x3a($v0) -/* 036ADC 80035EDC 00000000 */ nop -/* 036AE0 80035EE0 318D0001 */ andi $t5, $t4, 1 -/* 036AE4 80035EE4 A04D003A */ sb $t5, 0x3a($v0) -/* 036AE8 80035EE8 8FBF001C */ lw $ra, 0x1c($sp) -.L80035EEC: -/* 036AEC 80035EEC 8FB00018 */ lw $s0, 0x18($sp) -/* 036AF0 80035EF0 03E00008 */ jr $ra -/* 036AF4 80035EF4 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_80035EF8 -/* 036AF8 80035EF8 84AE000E */ lh $t6, 0xe($a1) -/* 036AFC 80035EFC 240FFFFF */ li $t7, -1 -/* 036B00 80035F00 AC8F007C */ sw $t7, 0x7c($a0) -/* 036B04 80035F04 AC8E0078 */ sw $t6, 0x78($a0) -/* 036B08 80035F08 84B9000C */ lh $t9, 0xc($a1) -/* 036B0C 80035F0C 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 036B10 80035F10 00194280 */ sll $t0, $t9, 0xa -/* 036B14 80035F14 A4880000 */ sh $t0, ($a0) -/* 036B18 80035F18 84A9000A */ lh $t1, 0xa($a1) -/* 036B1C 80035F1C 44811000 */ mtc1 $at, $f2 -/* 036B20 80035F20 312A00FF */ andi $t2, $t1, 0xff -/* 036B24 80035F24 448A2000 */ mtc1 $t2, $f4 -/* 036B28 80035F28 3C014280 */ li $at, 0x42800000 # 64.000000 -/* 036B2C 80035F2C 46802020 */ cvt.s.w $f0, $f4 -/* 036B30 80035F30 44813000 */ mtc1 $at, $f6 -/* 036B34 80035F34 4602003C */ c.lt.s $f0, $f2 -/* 036B38 80035F38 00000000 */ nop -/* 036B3C 80035F3C 45000003 */ bc1f .L80035F4C -/* 036B40 80035F40 00000000 */ nop -/* 036B44 80035F44 46001006 */ mov.s $f0, $f2 -/* 036B48 80035F48 00000000 */ nop -.L80035F4C: -/* 036B4C 80035F4C 46060003 */ div.s $f0, $f0, $f6 -/* 036B50 80035F50 8C8B0040 */ lw $t3, 0x40($a0) -/* 036B54 80035F54 00000000 */ nop -/* 036B58 80035F58 C568000C */ lwc1 $f8, 0xc($t3) -/* 036B5C 80035F5C 00000000 */ nop -/* 036B60 80035F60 46004282 */ mul.s $f10, $f8, $f0 -/* 036B64 80035F64 03E00008 */ jr $ra -/* 036B68 80035F68 E48A0008 */ swc1 $f10, 8($a0) - -glabel func_80035F6C -/* 036B6C 80035F6C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 036B70 80035F70 AFBF0014 */ sw $ra, 0x14($sp) -/* 036B74 80035F74 AFA5001C */ sw $a1, 0x1c($sp) -/* 036B78 80035F78 8C8E007C */ lw $t6, 0x7c($a0) -/* 036B7C 80035F7C 00803025 */ move $a2, $a0 -/* 036B80 80035F80 05C1002C */ bgez $t6, .L80036034 -/* 036B84 80035F84 8FBF0014 */ lw $ra, 0x14($sp) -/* 036B88 80035F88 8C840078 */ lw $a0, 0x78($a0) -/* 036B8C 80035F8C 0C006EB2 */ jal func_8001BAC8 -/* 036B90 80035F90 AFA60018 */ sw $a2, 0x18($sp) -/* 036B94 80035F94 8FA60018 */ lw $a2, 0x18($sp) -/* 036B98 80035F98 10400025 */ beqz $v0, .L80036030 -/* 036B9C 80035F9C 3C18800E */ lui $t8, %hi(D_800DC980) # $t8, 0x800e -/* 036BA0 80035FA0 8C440064 */ lw $a0, 0x64($v0) -/* 036BA4 80035FA4 8CC30064 */ lw $v1, 0x64($a2) -/* 036BA8 80035FA8 808F0003 */ lb $t7, 3($a0) -/* 036BAC 80035FAC 2718C980 */ addiu $t8, %lo(D_800DC980) # addiu $t8, $t8, -0x3680 -/* 036BB0 80035FB0 05E00004 */ bltz $t7, .L80035FC4 -/* 036BB4 80035FB4 ACCF007C */ sw $t7, 0x7c($a2) -/* 036BB8 80035FB8 29E1000A */ slti $at, $t7, 0xa -/* 036BBC 80035FBC 14200002 */ bnez $at, .L80035FC8 -/* 036BC0 80035FC0 00000000 */ nop -.L80035FC4: -/* 036BC4 80035FC4 ACC0007C */ sw $zero, 0x7c($a2) -.L80035FC8: -/* 036BC8 80035FC8 AC780020 */ sw $t8, 0x20($v1) -/* 036BCC 80035FCC 8CC8007C */ lw $t0, 0x7c($a2) -/* 036BD0 80035FD0 8CD90068 */ lw $t9, 0x68($a2) -/* 036BD4 80035FD4 00084880 */ sll $t1, $t0, 2 -/* 036BD8 80035FD8 03295021 */ addu $t2, $t9, $t1 -/* 036BDC 80035FDC 8D4B0000 */ lw $t3, ($t2) -/* 036BE0 80035FE0 3C0E4000 */ lui $t6, (0x40000103 >> 16) # lui $t6, 0x4000 -/* 036BE4 80035FE4 AC6B0024 */ sw $t3, 0x24($v1) -/* 036BE8 80035FE8 91620000 */ lbu $v0, ($t3) -/* 036BEC 80035FEC 91640001 */ lbu $a0, 1($t3) -/* 036BF0 80035FF0 2442FFFF */ addiu $v0, $v0, -1 -/* 036BF4 80035FF4 2484FFFF */ addiu $a0, $a0, -1 -/* 036BF8 80035FF8 00026540 */ sll $t4, $v0, 0x15 -/* 036BFC 80035FFC 00046940 */ sll $t5, $a0, 5 -/* 036C00 80036000 3C0F4001 */ lui $t7, (0x40010203 >> 16) # lui $t7, 0x4001 -/* 036C04 80036004 35CE0103 */ ori $t6, (0x40000103 & 0xFFFF) # ori $t6, $t6, 0x103 -/* 036C08 80036008 35EF0203 */ ori $t7, (0x40010203 & 0xFFFF) # ori $t7, $t7, 0x203 -/* 036C0C 8003600C 018DC025 */ or $t8, $t4, $t5 -/* 036C10 80036010 AC6E0000 */ sw $t6, ($v1) -/* 036C14 80036014 AC600004 */ sw $zero, 4($v1) -/* 036C18 80036018 AC6C0008 */ sw $t4, 8($v1) -/* 036C1C 8003601C AC6D000C */ sw $t5, 0xc($v1) -/* 036C20 80036020 AC6F0010 */ sw $t7, 0x10($v1) -/* 036C24 80036024 AC6C0014 */ sw $t4, 0x14($v1) -/* 036C28 80036028 AC780018 */ sw $t8, 0x18($v1) -/* 036C2C 8003602C AC6D001C */ sw $t5, 0x1c($v1) -.L80036030: -/* 036C30 80036030 8FBF0014 */ lw $ra, 0x14($sp) -.L80036034: -/* 036C34 80036034 27BD0018 */ addiu $sp, $sp, 0x18 -/* 036C38 80036038 03E00008 */ jr $ra -/* 036C3C 8003603C 00000000 */ nop - -glabel func_80036040 -/* 036C40 80036040 27BDFF68 */ addiu $sp, $sp, -0x98 -/* 036C44 80036044 AFBF002C */ sw $ra, 0x2c($sp) -/* 036C48 80036048 AFB00028 */ sw $s0, 0x28($sp) -/* 036C4C 8003604C 8C83004C */ lw $v1, 0x4c($a0) -/* 036C50 80036050 00808025 */ move $s0, $a0 -/* 036C54 80036054 906E0013 */ lbu $t6, 0x13($v1) -/* 036C58 80036058 00000000 */ nop -/* 036C5C 8003605C 29C10028 */ slti $at, $t6, 0x28 -/* 036C60 80036060 10200049 */ beqz $at, .L80036188 -/* 036C64 80036064 8FBF002C */ lw $ra, 0x2c($sp) -/* 036C68 80036068 8C620000 */ lw $v0, ($v1) -/* 036C6C 8003606C 24070001 */ li $a3, 1 -/* 036C70 80036070 8C4F0040 */ lw $t7, 0x40($v0) -/* 036C74 80036074 00000000 */ nop -/* 036C78 80036078 81F80054 */ lb $t8, 0x54($t7) -/* 036C7C 8003607C 00000000 */ nop -/* 036C80 80036080 14F80041 */ bne $a3, $t8, .L80036188 -/* 036C84 80036084 8FBF002C */ lw $ra, 0x2c($sp) -/* 036C88 80036088 8C430064 */ lw $v1, 0x64($v0) -/* 036C8C 8003608C 00000000 */ nop -/* 036C90 80036090 8C790144 */ lw $t9, 0x144($v1) -/* 036C94 80036094 00000000 */ nop -/* 036C98 80036098 1720003B */ bnez $t9, .L80036188 -/* 036C9C 8003609C 8FBF002C */ lw $ra, 0x2c($sp) -/* 036CA0 800360A0 A0A7000B */ sb $a3, 0xb($a1) -/* 036CA4 800360A4 84880006 */ lh $t0, 6($a0) -/* 036CA8 800360A8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 036CAC 800360AC 35094000 */ ori $t1, $t0, 0x4000 -/* 036CB0 800360B0 A4890006 */ sh $t1, 6($a0) -/* 036CB4 800360B4 AC640144 */ sw $a0, 0x144($v1) -/* 036CB8 800360B8 844A0000 */ lh $t2, ($v0) -/* 036CBC 800360BC 44812000 */ mtc1 $at, $f4 -/* 036CC0 800360C0 000A5823 */ negu $t3, $t2 -/* 036CC4 800360C4 A7AB0038 */ sh $t3, 0x38($sp) -/* 036CC8 800360C8 844C0002 */ lh $t4, 2($v0) -/* 036CCC 800360CC 27A40050 */ addiu $a0, $sp, 0x50 -/* 036CD0 800360D0 000C6823 */ negu $t5, $t4 -/* 036CD4 800360D4 A7AD003A */ sh $t5, 0x3a($sp) -/* 036CD8 800360D8 844E0004 */ lh $t6, 4($v0) -/* 036CDC 800360DC E7A40040 */ swc1 $f4, 0x40($sp) -/* 036CE0 800360E0 000E7823 */ negu $t7, $t6 -/* 036CE4 800360E4 A7AF003C */ sh $t7, 0x3c($sp) -/* 036CE8 800360E8 C446000C */ lwc1 $f6, 0xc($v0) -/* 036CEC 800360EC 27A50038 */ addiu $a1, $sp, 0x38 -/* 036CF0 800360F0 46003207 */ neg.s $f8, $f6 -/* 036CF4 800360F4 E7A80044 */ swc1 $f8, 0x44($sp) -/* 036CF8 800360F8 C44A0010 */ lwc1 $f10, 0x10($v0) -/* 036CFC 800360FC 00000000 */ nop -/* 036D00 80036100 46005407 */ neg.s $f16, $f10 -/* 036D04 80036104 E7B00048 */ swc1 $f16, 0x48($sp) -/* 036D08 80036108 C4520014 */ lwc1 $f18, 0x14($v0) -/* 036D0C 8003610C AFA20090 */ sw $v0, 0x90($sp) -/* 036D10 80036110 46009107 */ neg.s $f4, $f18 -/* 036D14 80036114 0C01BF9D */ jal func_8006FE74 -/* 036D18 80036118 E7A4004C */ swc1 $f4, 0x4c($sp) -/* 036D1C 8003611C 8E05000C */ lw $a1, 0xc($s0) -/* 036D20 80036120 8E060010 */ lw $a2, 0x10($s0) -/* 036D24 80036124 8E070014 */ lw $a3, 0x14($s0) -/* 036D28 80036128 2618000C */ addiu $t8, $s0, 0xc -/* 036D2C 8003612C 26190010 */ addiu $t9, $s0, 0x10 -/* 036D30 80036130 26080014 */ addiu $t0, $s0, 0x14 -/* 036D34 80036134 AFA80018 */ sw $t0, 0x18($sp) -/* 036D38 80036138 AFB90014 */ sw $t9, 0x14($sp) -/* 036D3C 8003613C AFB80010 */ sw $t8, 0x10($sp) -/* 036D40 80036140 0C01BD93 */ jal func_8006F64C -/* 036D44 80036144 27A40050 */ addiu $a0, $sp, 0x50 -/* 036D48 80036148 8FA20090 */ lw $v0, 0x90($sp) -/* 036D4C 8003614C C606000C */ lwc1 $f6, 0xc($s0) -/* 036D50 80036150 C4480008 */ lwc1 $f8, 8($v0) -/* 036D54 80036154 C6100010 */ lwc1 $f16, 0x10($s0) -/* 036D58 80036158 46083283 */ div.s $f10, $f6, $f8 -/* 036D5C 8003615C C6060014 */ lwc1 $f6, 0x14($s0) -/* 036D60 80036160 E60A000C */ swc1 $f10, 0xc($s0) -/* 036D64 80036164 C4520008 */ lwc1 $f18, 8($v0) -/* 036D68 80036168 00000000 */ nop -/* 036D6C 8003616C 46128103 */ div.s $f4, $f16, $f18 -/* 036D70 80036170 E6040010 */ swc1 $f4, 0x10($s0) -/* 036D74 80036174 C4480008 */ lwc1 $f8, 8($v0) -/* 036D78 80036178 00000000 */ nop -/* 036D7C 8003617C 46083283 */ div.s $f10, $f6, $f8 -/* 036D80 80036180 E60A0014 */ swc1 $f10, 0x14($s0) -/* 036D84 80036184 8FBF002C */ lw $ra, 0x2c($sp) -.L80036188: -/* 036D88 80036188 8FB00028 */ lw $s0, 0x28($sp) -/* 036D8C 8003618C 03E00008 */ jr $ra -/* 036D90 80036190 27BD0098 */ addiu $sp, $sp, 0x98 - -glabel func_80036194 -/* 036D94 80036194 AFA50004 */ sw $a1, 4($sp) -/* 036D98 80036198 8C8F004C */ lw $t7, 0x4c($a0) -/* 036D9C 8003619C 240E0001 */ li $t6, 1 -/* 036DA0 800361A0 A5EE0014 */ sh $t6, 0x14($t7) -/* 036DA4 800361A4 8C98004C */ lw $t8, 0x4c($a0) -/* 036DA8 800361A8 2419001E */ li $t9, 30 -/* 036DAC 800361AC A3000011 */ sb $zero, 0x11($t8) -/* 036DB0 800361B0 8C88004C */ lw $t0, 0x4c($a0) -/* 036DB4 800361B4 44802000 */ mtc1 $zero, $f4 -/* 036DB8 800361B8 A1190010 */ sb $t9, 0x10($t0) -/* 036DBC 800361BC 8C89004C */ lw $t1, 0x4c($a0) -/* 036DC0 800361C0 240A00FF */ li $t2, 255 -/* 036DC4 800361C4 A1200012 */ sb $zero, 0x12($t1) -/* 036DC8 800361C8 8C820064 */ lw $v0, 0x64($a0) -/* 036DCC 800361CC 3C018012 */ lui $at, 0x8012 -/* 036DD0 800361D0 A04A000D */ sb $t2, 0xd($v0) -/* 036DD4 800361D4 E4440000 */ swc1 $f4, ($v0) -/* 036DD8 800361D8 03E00008 */ jr $ra -/* 036DDC 800361DC AC20D4D8 */ sw $zero, -0x2b28($at) - -glabel func_800361E0 -/* 036DE0 800361E0 27BDFF80 */ addiu $sp, $sp, -0x80 -/* 036DE4 800361E4 44853000 */ mtc1 $a1, $f6 -/* 036DE8 800361E8 AFBF002C */ sw $ra, 0x2c($sp) -/* 036DEC 800361EC AFB10028 */ sw $s1, 0x28($sp) -/* 036DF0 800361F0 AFB00024 */ sw $s0, 0x24($sp) -/* 036DF4 800361F4 AFA50084 */ sw $a1, 0x84($sp) -/* 036DF8 800361F8 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 -/* 036DFC 800361FC 46803020 */ cvt.s.w $f0, $f6 -/* 036E00 80036200 C4840010 */ lwc1 $f4, 0x10($a0) -/* 036E04 80036204 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) -/* 036E08 80036208 00808025 */ move $s0, $a0 -/* 036E0C 8003620C 46000086 */ mov.s $f2, $f0 -/* 036E10 80036210 15E00007 */ bnez $t7, .L80036230 -/* 036E14 80036214 E7A4006C */ swc1 $f4, 0x6c($sp) -/* 036E18 80036218 3C01800E */ lui $at, %hi(D_800E602C) # $at, 0x800e -/* 036E1C 8003621C C42B6028 */ lwc1 $f11, %lo(D_800E6028)($at) -/* 036E20 80036220 C42A602C */ lwc1 $f10, %lo(D_800E602C)($at) -/* 036E24 80036224 46000221 */ cvt.d.s $f8, $f0 -/* 036E28 80036228 462A4482 */ mul.d $f18, $f8, $f10 -/* 036E2C 8003622C 462090A0 */ cvt.s.d $f2, $f18 -.L80036230: -/* 036E30 80036230 86180018 */ lh $t8, 0x18($s0) -/* 036E34 80036234 8E110064 */ lw $s1, 0x64($s0) -/* 036E38 80036238 1700000D */ bnez $t8, .L80036270 -/* 036E3C 8003623C 00000000 */ nop -/* 036E40 80036240 C6260004 */ lwc1 $f6, 4($s1) -/* 036E44 80036244 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 036E48 80036248 44812800 */ mtc1 $at, $f5 -/* 036E4C 8003624C 44802000 */ mtc1 $zero, $f4 -/* 036E50 80036250 46003221 */ cvt.d.s $f8, $f6 -/* 036E54 80036254 4628203C */ c.lt.d $f4, $f8 -/* 036E58 80036258 00000000 */ nop -/* 036E5C 8003625C 45000004 */ bc1f .L80036270 -/* 036E60 80036260 00000000 */ nop -/* 036E64 80036264 44805000 */ mtc1 $zero, $f10 -/* 036E68 80036268 00000000 */ nop -/* 036E6C 8003626C E62A0004 */ swc1 $f10, 4($s1) -.L80036270: -/* 036E70 80036270 0C01AF6C */ jal func_8006BDB0 -/* 036E74 80036274 E7A2007C */ swc1 $f2, 0x7c($sp) -/* 036E78 80036278 44800000 */ mtc1 $zero, $f0 -/* 036E7C 8003627C AFA2004C */ sw $v0, 0x4c($sp) -/* 036E80 80036280 E7A00070 */ swc1 $f0, 0x70($sp) -/* 036E84 80036284 00002025 */ move $a0, $zero -/* 036E88 80036288 E600001C */ swc1 $f0, 0x1c($s0) -/* 036E8C 8003628C 0C006EB2 */ jal func_8001BAC8 -/* 036E90 80036290 E6000024 */ swc1 $f0, 0x24($s0) -/* 036E94 80036294 00402825 */ move $a1, $v0 -/* 036E98 80036298 10400042 */ beqz $v0, .L800363A4 -/* 036E9C 8003629C AFA20064 */ sw $v0, 0x64($sp) -/* 036EA0 800362A0 8C420064 */ lw $v0, 0x64($v0) -/* 036EA4 800362A4 3C014248 */ li $at, 0x42480000 # 50.000000 -/* 036EA8 800362A8 44810000 */ mtc1 $at, $f0 -/* 036EAC 800362AC C4460038 */ lwc1 $f6, 0x38($v0) -/* 036EB0 800362B0 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 036EB4 800362B4 46003102 */ mul.s $f4, $f6, $f0 -/* 036EB8 800362B8 44811000 */ mtc1 $at, $f2 -/* 036EBC 800362BC C44A0050 */ lwc1 $f10, 0x50($v0) -/* 036EC0 800362C0 C4B2000C */ lwc1 $f18, 0xc($a1) -/* 036EC4 800362C4 46025182 */ mul.s $f6, $f10, $f2 -/* 036EC8 800362C8 46049201 */ sub.s $f8, $f18, $f4 -/* 036ECC 800362CC C604000C */ lwc1 $f4, 0xc($s0) -/* 036ED0 800362D0 C4AA0014 */ lwc1 $f10, 0x14($a1) -/* 036ED4 800362D4 46064481 */ sub.s $f18, $f8, $f6 -/* 036ED8 800362D8 C4480040 */ lwc1 $f8, 0x40($v0) -/* 036EDC 800362DC 46049381 */ sub.s $f14, $f18, $f4 -/* 036EE0 800362E0 C4440058 */ lwc1 $f4, 0x58($v0) -/* 036EE4 800362E4 46004182 */ mul.s $f6, $f8, $f0 -/* 036EE8 800362E8 00000000 */ nop -/* 036EEC 800362EC 46022202 */ mul.s $f8, $f4, $f2 -/* 036EF0 800362F0 46065481 */ sub.s $f18, $f10, $f6 -/* 036EF4 800362F4 C6060014 */ lwc1 $f6, 0x14($s0) -/* 036EF8 800362F8 E7AE0078 */ swc1 $f14, 0x78($sp) -/* 036EFC 800362FC 46089281 */ sub.s $f10, $f18, $f8 -/* 036F00 80036300 AFA50064 */ sw $a1, 0x64($sp) -/* 036F04 80036304 460E7102 */ mul.s $f4, $f14, $f14 -/* 036F08 80036308 46065401 */ sub.s $f16, $f10, $f6 -/* 036F0C 8003630C AFA20050 */ sw $v0, 0x50($sp) -/* 036F10 80036310 E7B00074 */ swc1 $f16, 0x74($sp) -/* 036F14 80036314 46108482 */ mul.s $f18, $f16, $f16 -/* 036F18 80036318 0C0326B4 */ jal sqrtf -/* 036F1C 8003631C 46122300 */ add.s $f12, $f4, $f18 -/* 036F20 80036320 E7A00070 */ swc1 $f0, 0x70($sp) -/* 036F24 80036324 8FA20064 */ lw $v0, 0x64($sp) -/* 036F28 80036328 C6040014 */ lwc1 $f4, 0x14($s0) -/* 036F2C 8003632C C60A000C */ lwc1 $f10, 0xc($s0) -/* 036F30 80036330 C448000C */ lwc1 $f8, 0xc($v0) -/* 036F34 80036334 C4460014 */ lwc1 $f6, 0x14($v0) -/* 036F38 80036338 460A4301 */ sub.s $f12, $f8, $f10 -/* 036F3C 8003633C 0C01C1D4 */ jal func_80070750 -/* 036F40 80036340 46043381 */ sub.s $f14, $f6, $f4 -/* 036F44 80036344 8FB90064 */ lw $t9, 0x64($sp) -/* 036F48 80036348 34018001 */ li $at, 32769 -/* 036F4C 8003634C 87280000 */ lh $t0, ($t9) -/* 036F50 80036350 240C0001 */ li $t4, 1 -/* 036F54 80036354 3109FFFF */ andi $t1, $t0, 0xffff -/* 036F58 80036358 00491823 */ subu $v1, $v0, $t1 -/* 036F5C 8003635C 0061082A */ slt $at, $v1, $at -/* 036F60 80036360 14200004 */ bnez $at, .L80036374 -/* 036F64 80036364 28618000 */ slti $at, $v1, -0x8000 -/* 036F68 80036368 3C03FFFF */ lui $v1, (0xFFFF0001 >> 16) # lui $v1, 0xffff -/* 036F6C 8003636C 34630001 */ ori $v1, (0xFFFF0001 & 0xFFFF) # ori $v1, $v1, 1 -/* 036F70 80036370 28618000 */ slti $at, $v1, -0x8000 -.L80036374: -/* 036F74 80036374 10200003 */ beqz $at, .L80036384 -/* 036F78 80036378 8FAA0050 */ lw $t2, 0x50($sp) -/* 036F7C 8003637C 3403FFFF */ li $v1, 65535 -/* 036F80 80036380 8FAA0050 */ lw $t2, 0x50($sp) -.L80036384: -/* 036F84 80036384 AFA3005C */ sw $v1, 0x5c($sp) -/* 036F88 80036388 8D4B0108 */ lw $t3, 0x108($t2) -/* 036F8C 8003638C 00000000 */ nop -/* 036F90 80036390 11600004 */ beqz $t3, .L800363A4 -/* 036F94 80036394 00000000 */ nop -/* 036F98 80036398 AE000078 */ sw $zero, 0x78($s0) -/* 036F9C 8003639C AE0C007C */ sw $t4, 0x7c($s0) -/* 036FA0 800363A0 AFA3005C */ sw $v1, 0x5c($sp) -.L800363A4: -/* 036FA4 800363A4 0C01A955 */ jal func_8006A554 -/* 036FA8 800363A8 00002025 */ move $a0, $zero -/* 036FAC 800363AC 8E0D0078 */ lw $t5, 0x78($s0) -/* 036FB0 800363B0 8FA3005C */ lw $v1, 0x5c($sp) -/* 036FB4 800363B4 15A00047 */ bnez $t5, .L800364D4 -/* 036FB8 800363B8 3C01800E */ lui $at, %hi(D_800E6034) # $at, 0x800e -/* 036FBC 800363BC C7B20070 */ lwc1 $f18, 0x70($sp) -/* 036FC0 800363C0 C42B6030 */ lwc1 $f11, %lo(D_800E6030)($at) -/* 036FC4 800363C4 C42A6034 */ lwc1 $f10, %lo(D_800E6034)($at) -/* 036FC8 800363C8 46009221 */ cvt.d.s $f8, $f18 -/* 036FCC 800363CC 462A403C */ c.lt.d $f8, $f10 -/* 036FD0 800363D0 00000000 */ nop -/* 036FD4 800363D4 4500003F */ bc1f .L800364D4 -/* 036FD8 800363D8 00000000 */ nop -/* 036FDC 800363DC 8E0E007C */ lw $t6, 0x7c($s0) -/* 036FE0 800363E0 2861E001 */ slti $at, $v1, -0x1fff -/* 036FE4 800363E4 15C0003B */ bnez $t6, .L800364D4 -/* 036FE8 800363E8 00000000 */ nop -/* 036FEC 800363EC 14200039 */ bnez $at, .L800364D4 -/* 036FF0 800363F0 28612000 */ slti $at, $v1, 0x2000 -/* 036FF4 800363F4 10200037 */ beqz $at, .L800364D4 -/* 036FF8 800363F8 00000000 */ nop -/* 036FFC 800363FC 8E03004C */ lw $v1, 0x4c($s0) -/* 037000 80036400 8FB90064 */ lw $t9, 0x64($sp) -/* 037004 80036404 846F0014 */ lh $t7, 0x14($v1) -/* 037008 80036408 30492000 */ andi $t1, $v0, 0x2000 -/* 03700C 8003640C 31F80008 */ andi $t8, $t7, 8 -/* 037010 80036410 13000005 */ beqz $t8, .L80036428 -/* 037014 80036414 00000000 */ nop -/* 037018 80036418 8C680000 */ lw $t0, ($v1) -/* 03701C 8003641C 00000000 */ nop -/* 037020 80036420 13280003 */ beq $t9, $t0, .L80036430 -/* 037024 80036424 304A2000 */ andi $t2, $v0, 0x2000 -.L80036428: -/* 037028 80036428 1120002A */ beqz $t1, .L800364D4 -/* 03702C 8003642C 304A2000 */ andi $t2, $v0, 0x2000 -.L80036430: -/* 037030 80036430 11400006 */ beqz $t2, .L8003644C -/* 037034 80036434 240B0001 */ li $t3, 1 -/* 037038 80036438 8FA40064 */ lw $a0, 0x64($sp) -/* 03703C 8003643C 8FA50050 */ lw $a1, 0x50($sp) -/* 037040 80036440 0C015A4C */ jal func_80056930 -/* 037044 80036444 00000000 */ nop -/* 037048 80036448 240B0001 */ li $t3, 1 -.L8003644C: -/* 03704C 8003644C AE0B0078 */ sw $t3, 0x78($s0) -/* 037050 80036450 262C0012 */ addiu $t4, $s1, 0x12 -/* 037054 80036454 262D0013 */ addiu $t5, $s1, 0x13 -/* 037058 80036458 AFAD0014 */ sw $t5, 0x14($sp) -/* 03705C 8003645C AFAC0010 */ sw $t4, 0x10($sp) -/* 037060 80036460 00002025 */ move $a0, $zero -/* 037064 80036464 26250020 */ addiu $a1, $s1, 0x20 -/* 037068 80036468 26260022 */ addiu $a2, $s1, 0x22 -/* 03706C 8003646C 0C00C1D4 */ jal func_80030750 -/* 037070 80036470 26270011 */ addiu $a3, $s1, 0x11 -/* 037074 80036474 240E0384 */ li $t6, 900 -/* 037078 80036478 240F03E6 */ li $t7, 998 -/* 03707C 8003647C 241800F0 */ li $t8, 240 -/* 037080 80036480 AFB80018 */ sw $t8, 0x18($sp) -/* 037084 80036484 AFAF0014 */ sw $t7, 0x14($sp) -/* 037088 80036488 AFAE0010 */ sw $t6, 0x10($sp) -/* 03708C 8003648C 00002025 */ move $a0, $zero -/* 037090 80036490 24050080 */ li $a1, 128 -/* 037094 80036494 24060080 */ li $a2, 128 -/* 037098 80036498 0C00C378 */ jal func_80030DE0 -/* 03709C 8003649C 240700FF */ li $a3, 255 -/* 0370A0 800364A0 0C0004BA */ jal func_800012E8 -/* 0370A4 800364A4 00000000 */ nop -/* 0370A8 800364A8 0C0002CD */ jal func_80000B34 -/* 0370AC 800364AC 24040024 */ li $a0, 36 -/* 0370B0 800364B0 8FB90064 */ lw $t9, 0x64($sp) -/* 0370B4 800364B4 00000000 */ nop -/* 0370B8 800364B8 13200006 */ beqz $t9, .L800364D4 -/* 0370BC 800364BC 00000000 */ nop -/* 0370C0 800364C0 0C001AB2 */ jal func_80006AC8 -/* 0370C4 800364C4 03202025 */ move $a0, $t9 -/* 0370C8 800364C8 8FA80050 */ lw $t0, 0x50($sp) -/* 0370CC 800364CC 00000000 */ nop -/* 0370D0 800364D0 AD000118 */ sw $zero, 0x118($t0) -.L800364D4: -/* 0370D4 800364D4 8E020078 */ lw $v0, 0x78($s0) -/* 0370D8 800364D8 00000000 */ nop -/* 0370DC 800364DC 10400008 */ beqz $v0, .L80036500 -/* 0370E0 800364E0 28410002 */ slti $at, $v0, 2 -/* 0370E4 800364E4 0C0168EC */ jal func_8005A3B0 -/* 0370E8 800364E8 00000000 */ nop -/* 0370EC 800364EC 0C02AC65 */ jal func_800AB194 -/* 0370F0 800364F0 24040003 */ li $a0, 3 -/* 0370F4 800364F4 8E020078 */ lw $v0, 0x78($s0) -/* 0370F8 800364F8 00000000 */ nop -/* 0370FC 800364FC 28410002 */ slti $at, $v0, 2 -.L80036500: -/* 037100 80036500 14200005 */ bnez $at, .L80036518 -/* 037104 80036504 00000000 */ nop -/* 037108 80036508 0C0273FB */ jal func_8009CFEC -/* 03710C 8003650C 24040002 */ li $a0, 2 -/* 037110 80036510 10000004 */ b .L80036524 -/* 037114 80036514 00401825 */ move $v1, $v0 -.L80036518: -/* 037118 80036518 0C0273DA */ jal func_8009CF68 -/* 03711C 8003651C 24040002 */ li $a0, 2 -/* 037120 80036520 00001825 */ move $v1, $zero -.L80036524: -/* 037124 80036524 8E020078 */ lw $v0, 0x78($s0) -/* 037128 80036528 24010001 */ li $at, 1 -/* 03712C 8003652C 1041000A */ beq $v0, $at, .L80036558 -/* 037130 80036530 240900FF */ li $t1, 255 -/* 037134 80036534 24010002 */ li $at, 2 -/* 037138 80036538 10410078 */ beq $v0, $at, .L8003671C -/* 03713C 8003653C 24010003 */ li $at, 3 -/* 037140 80036540 104100C4 */ beq $v0, $at, .L80036854 -/* 037144 80036544 24010004 */ li $at, 4 -/* 037148 80036548 10410118 */ beq $v0, $at, .L800369AC -/* 03714C 8003654C 00000000 */ nop -/* 037150 80036550 10000127 */ b .L800369F0 -/* 037154 80036554 02202025 */ move $a0, $s1 -.L80036558: -/* 037158 80036558 A200003B */ sb $zero, 0x3b($s0) -/* 03715C 8003655C A229000D */ sb $t1, 0xd($s1) -/* 037160 80036560 C7A60070 */ lwc1 $f6, 0x70($sp) -/* 037164 80036564 3C014059 */ li $at, 0x40590000 # 3.390625 -/* 037168 80036568 44812800 */ mtc1 $at, $f5 -/* 03716C 8003656C 44802000 */ mtc1 $zero, $f4 -/* 037170 80036570 46003021 */ cvt.d.s $f0, $f6 -/* 037174 80036574 4624003C */ c.lt.d $f0, $f4 -/* 037178 80036578 00000000 */ nop -/* 03717C 8003657C 45000008 */ bc1f .L800365A0 -/* 037180 80036580 3C014024 */ lui $at, 0x4024 -/* 037184 80036584 E7A10038 */ swc1 $f1, 0x38($sp) -/* 037188 80036588 0C0168F0 */ jal func_8005A3C0 -/* 03718C 8003658C E7A0003C */ swc1 $f0, 0x3c($sp) -/* 037190 80036590 C7A10038 */ lwc1 $f1, 0x38($sp) -/* 037194 80036594 C7A0003C */ lwc1 $f0, 0x3c($sp) -/* 037198 80036598 00000000 */ nop -/* 03719C 8003659C 3C014024 */ li $at, 0x40240000 # 2.562500 -.L800365A0: -/* 0371A0 800365A0 44819800 */ mtc1 $at, $f19 -/* 0371A4 800365A4 44809000 */ mtc1 $zero, $f18 -/* 0371A8 800365A8 C7A80078 */ lwc1 $f8, 0x78($sp) -/* 0371AC 800365AC 4620903C */ c.lt.d $f18, $f0 -/* 0371B0 800365B0 C7AA0070 */ lwc1 $f10, 0x70($sp) -/* 0371B4 800365B4 45000046 */ bc1f .L800366D0 -/* 0371B8 800365B8 240D0002 */ li $t5, 2 -/* 0371BC 800365BC C7A60074 */ lwc1 $f6, 0x74($sp) -/* 0371C0 800365C0 460A4303 */ div.s $f12, $f8, $f10 -/* 0371C4 800365C4 0C01C1D4 */ jal func_80070750 -/* 0371C8 800365C8 460A3383 */ div.s $f14, $f6, $f10 -/* 0371CC 800365CC 86040000 */ lh $a0, ($s0) -/* 0371D0 800365D0 34018000 */ li $at, 32768 -/* 0371D4 800365D4 308AFFFF */ andi $t2, $a0, 0xffff -/* 0371D8 800365D8 004A1823 */ subu $v1, $v0, $t2 -/* 0371DC 800365DC 00611821 */ addu $v1, $v1, $at -/* 0371E0 800365E0 34018001 */ li $at, 32769 -/* 0371E4 800365E4 0061082A */ slt $at, $v1, $at -/* 0371E8 800365E8 14200003 */ bnez $at, .L800365F8 -/* 0371EC 800365EC 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 0371F0 800365F0 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 0371F4 800365F4 00611821 */ addu $v1, $v1, $at -.L800365F8: -/* 0371F8 800365F8 28618000 */ slti $at, $v1, -0x8000 -/* 0371FC 800365FC 10200002 */ beqz $at, .L80036608 -/* 037200 80036600 3401FFFF */ li $at, 65535 -/* 037204 80036604 00611821 */ addu $v1, $v1, $at -.L80036608: -/* 037208 80036608 18600004 */ blez $v1, .L8003661C -/* 03720C 8003660C 28610010 */ slti $at, $v1, 0x10 -/* 037210 80036610 10200003 */ beqz $at, .L80036620 -/* 037214 80036614 3C01C000 */ lui $at, 0xc000 -/* 037218 80036618 24030010 */ li $v1, 16 -.L8003661C: -/* 03721C 8003661C 3C01C000 */ li $at, 0xC0000000 # -2.000000 -.L80036620: -/* 037220 80036620 00035903 */ sra $t3, $v1, 4 -/* 037224 80036624 44811000 */ mtc1 $at, $f2 -/* 037228 80036628 008B6021 */ addu $t4, $a0, $t3 -/* 03722C 8003662C 28610801 */ slti $at, $v1, 0x801 -/* 037230 80036630 10200003 */ beqz $at, .L80036640 -/* 037234 80036634 A60C0000 */ sh $t4, ($s0) -/* 037238 80036638 2861F800 */ slti $at, $v1, -0x800 -/* 03723C 8003663C 10200003 */ beqz $at, .L8003664C -.L80036640: -/* 037240 80036640 3C01BF00 */ li $at, 0xBF000000 # -0.500000 -/* 037244 80036644 44811000 */ mtc1 $at, $f2 -/* 037248 80036648 00000000 */ nop -.L8003664C: -/* 03724C 8003664C C6200014 */ lwc1 $f0, 0x14($s1) -/* 037250 80036650 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 037254 80036654 46001101 */ sub.s $f4, $f2, $f0 -/* 037258 80036658 44814800 */ mtc1 $at, $f9 -/* 03725C 8003665C 44804000 */ mtc1 $zero, $f8 -/* 037260 80036660 460024A1 */ cvt.d.s $f18, $f4 -/* 037264 80036664 46289182 */ mul.d $f6, $f18, $f8 -/* 037268 80036668 460002A1 */ cvt.d.s $f10, $f0 -/* 03726C 8003666C 46265100 */ add.d $f4, $f10, $f6 -/* 037270 80036670 462024A0 */ cvt.s.d $f18, $f4 -/* 037274 80036674 E6320014 */ swc1 $f18, 0x14($s1) -/* 037278 80036678 86040000 */ lh $a0, ($s0) -/* 03727C 8003667C 0C01C1F1 */ jal func_800707C4 -/* 037280 80036680 00000000 */ nop -/* 037284 80036684 C6280014 */ lwc1 $f8, 0x14($s1) -/* 037288 80036688 86040000 */ lh $a0, ($s0) -/* 03728C 8003668C 46080282 */ mul.s $f10, $f0, $f8 -/* 037290 80036690 0C01C1FE */ jal func_800707F8 -/* 037294 80036694 E60A001C */ swc1 $f10, 0x1c($s0) -/* 037298 80036698 C6260014 */ lwc1 $f6, 0x14($s1) -/* 03729C 8003669C C7A2007C */ lwc1 $f2, 0x7c($sp) -/* 0372A0 800366A0 46060102 */ mul.s $f4, $f0, $f6 -/* 0372A4 800366A4 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 0372A8 800366A8 44814000 */ mtc1 $at, $f8 -/* 0372AC 800366AC E6040024 */ swc1 $f4, 0x24($s0) -/* 0372B0 800366B0 C6320014 */ lwc1 $f18, 0x14($s1) -/* 0372B4 800366B4 C6240004 */ lwc1 $f4, 4($s1) -/* 0372B8 800366B8 46089282 */ mul.s $f10, $f18, $f8 -/* 0372BC 800366BC 00000000 */ nop -/* 0372C0 800366C0 46025182 */ mul.s $f6, $f10, $f2 -/* 0372C4 800366C4 46062481 */ sub.s $f18, $f4, $f6 -/* 0372C8 800366C8 10000004 */ b .L800366DC -/* 0372CC 800366CC E6320004 */ swc1 $f18, 4($s1) -.L800366D0: -/* 0372D0 800366D0 AE0D0078 */ sw $t5, 0x78($s0) -/* 0372D4 800366D4 C7A2007C */ lwc1 $f2, 0x7c($sp) -/* 0372D8 800366D8 00000000 */ nop -.L800366DC: -/* 0372DC 800366DC C608001C */ lwc1 $f8, 0x1c($s0) -/* 0372E0 800366E0 C6040020 */ lwc1 $f4, 0x20($s0) -/* 0372E4 800366E4 46024282 */ mul.s $f10, $f8, $f2 -/* 0372E8 800366E8 C6120024 */ lwc1 $f18, 0x24($s0) -/* 0372EC 800366EC 02002025 */ move $a0, $s0 -/* 0372F0 800366F0 46022182 */ mul.s $f6, $f4, $f2 -/* 0372F4 800366F4 44055000 */ mfc1 $a1, $f10 -/* 0372F8 800366F8 46029202 */ mul.s $f8, $f18, $f2 -/* 0372FC 800366FC 44063000 */ mfc1 $a2, $f6 -/* 037300 80036700 44074000 */ mfc1 $a3, $f8 -/* 037304 80036704 0C00455C */ jal func_80011570 -/* 037308 80036708 00000000 */ nop -/* 03730C 8003670C 0C01BCE2 */ jal func_8006F388 -/* 037310 80036710 24040001 */ li $a0, 1 -/* 037314 80036714 100000E7 */ b .L80036AB4 -/* 037318 80036718 C7AA006C */ lwc1 $f10, 0x6c($sp) -.L8003671C: -/* 03731C 8003671C 0C0168F0 */ jal func_8005A3C0 -/* 037320 80036720 00000000 */ nop -/* 037324 80036724 C7A2007C */ lwc1 $f2, 0x7c($sp) -/* 037328 80036728 3C014008 */ li $at, 0x40080000 # 2.125000 -/* 03732C 8003672C 44815800 */ mtc1 $at, $f11 -/* 037330 80036730 44805000 */ mtc1 $zero, $f10 -/* 037334 80036734 46001121 */ cvt.d.s $f4, $f2 -/* 037338 80036738 46245182 */ mul.d $f6, $f10, $f4 -/* 03733C 8003673C A200003B */ sb $zero, 0x3b($s0) -/* 037340 80036740 C6320004 */ lwc1 $f18, 4($s1) -/* 037344 80036744 34018000 */ li $at, 32768 -/* 037348 80036748 46009221 */ cvt.d.s $f8, $f18 -/* 03734C 8003674C 46264280 */ add.d $f10, $f8, $f6 -/* 037350 80036750 46205120 */ cvt.s.d $f4, $f10 -/* 037354 80036754 E6240004 */ swc1 $f4, 4($s1) -/* 037358 80036758 8FAE0064 */ lw $t6, 0x64($sp) -/* 03735C 8003675C 86040000 */ lh $a0, ($s0) -/* 037360 80036760 85CF0000 */ lh $t7, ($t6) -/* 037364 80036764 3098FFFF */ andi $t8, $a0, 0xffff -/* 037368 80036768 01F81823 */ subu $v1, $t7, $t8 -/* 03736C 8003676C 00611821 */ addu $v1, $v1, $at -/* 037370 80036770 34018001 */ li $at, 32769 -/* 037374 80036774 0061082A */ slt $at, $v1, $at -/* 037378 80036778 14200003 */ bnez $at, .L80036788 -/* 03737C 8003677C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 037380 80036780 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 037384 80036784 00611821 */ addu $v1, $v1, $at -.L80036788: -/* 037388 80036788 28618000 */ slti $at, $v1, -0x8000 -/* 03738C 8003678C 10200002 */ beqz $at, .L80036798 -/* 037390 80036790 3401FFFF */ li $at, 65535 -/* 037394 80036794 00611821 */ addu $v1, $v1, $at -.L80036798: -/* 037398 80036798 18600004 */ blez $v1, .L800367AC -/* 03739C 8003679C 28610010 */ slti $at, $v1, 0x10 -/* 0373A0 800367A0 10200002 */ beqz $at, .L800367AC -/* 0373A4 800367A4 00000000 */ nop -/* 0373A8 800367A8 24030010 */ li $v1, 16 -.L800367AC: -/* 0373AC 800367AC 3C01800E */ lui $at, %hi(D_800E603C) # $at, 0x800e -/* 0373B0 800367B0 0003C903 */ sra $t9, $v1, 4 -/* 0373B4 800367B4 C4216038 */ lwc1 $f1, %lo(D_800E6038)($at) -/* 0373B8 800367B8 C420603C */ lwc1 $f0, %lo(D_800E603C)($at) -/* 0373BC 800367BC 00994021 */ addu $t0, $a0, $t9 -/* 0373C0 800367C0 A6080000 */ sh $t0, ($s0) -/* 0373C4 800367C4 C7B20078 */ lwc1 $f18, 0x78($sp) -/* 0373C8 800367C8 28610500 */ slti $at, $v1, 0x500 -/* 0373CC 800367CC 46009221 */ cvt.d.s $f8, $f18 -/* 0373D0 800367D0 46204182 */ mul.d $f6, $f8, $f0 -/* 0373D4 800367D4 462032A0 */ cvt.s.d $f10, $f6 -/* 0373D8 800367D8 E60A001C */ swc1 $f10, 0x1c($s0) -/* 0373DC 800367DC C7A40074 */ lwc1 $f4, 0x74($sp) -/* 0373E0 800367E0 00000000 */ nop -/* 0373E4 800367E4 460024A1 */ cvt.d.s $f18, $f4 -/* 0373E8 800367E8 46209202 */ mul.d $f8, $f18, $f0 -/* 0373EC 800367EC 462041A0 */ cvt.s.d $f6, $f8 -/* 0373F0 800367F0 1020000A */ beqz $at, .L8003681C -/* 0373F4 800367F4 E6060024 */ swc1 $f6, 0x24($s0) -/* 0373F8 800367F8 2861FB01 */ slti $at, $v1, -0x4ff -/* 0373FC 800367FC 14200007 */ bnez $at, .L8003681C -/* 037400 80036800 24090003 */ li $t1, 3 -/* 037404 80036804 AE090078 */ sw $t1, 0x78($s0) -/* 037408 80036808 24040141 */ li $a0, 321 -/* 03740C 8003680C 0C00DAF3 */ jal func_80036BCC -/* 037410 80036810 24050001 */ li $a1, 1 -/* 037414 80036814 C7A2007C */ lwc1 $f2, 0x7c($sp) -/* 037418 80036818 00000000 */ nop -.L8003681C: -/* 03741C 8003681C C60A001C */ lwc1 $f10, 0x1c($s0) -/* 037420 80036820 C6120020 */ lwc1 $f18, 0x20($s0) -/* 037424 80036824 46025102 */ mul.s $f4, $f10, $f2 -/* 037428 80036828 C6060024 */ lwc1 $f6, 0x24($s0) -/* 03742C 8003682C 02002025 */ move $a0, $s0 -/* 037430 80036830 46029202 */ mul.s $f8, $f18, $f2 -/* 037434 80036834 44052000 */ mfc1 $a1, $f4 -/* 037438 80036838 46023282 */ mul.s $f10, $f6, $f2 -/* 03743C 8003683C 44064000 */ mfc1 $a2, $f8 -/* 037440 80036840 44075000 */ mfc1 $a3, $f10 -/* 037444 80036844 0C00455C */ jal func_80011570 -/* 037448 80036848 00000000 */ nop -/* 03744C 8003684C 10000099 */ b .L80036AB4 -/* 037450 80036850 C7AA006C */ lwc1 $f10, 0x6c($sp) -.L80036854: -/* 037454 80036854 3C01800E */ lui $at, %hi(D_800E6044) # $at, 0x800e -/* 037458 80036858 C7A40078 */ lwc1 $f4, 0x78($sp) -/* 03745C 8003685C C4216040 */ lwc1 $f1, %lo(D_800E6040)($at) -/* 037460 80036860 C4206044 */ lwc1 $f0, %lo(D_800E6044)($at) -/* 037464 80036864 460024A1 */ cvt.d.s $f18, $f4 -/* 037468 80036868 46209202 */ mul.d $f8, $f18, $f0 -/* 03746C 8003686C 240A0001 */ li $t2, 1 -/* 037470 80036870 462041A0 */ cvt.s.d $f6, $f8 -/* 037474 80036874 E606001C */ swc1 $f6, 0x1c($s0) -/* 037478 80036878 C7AA0074 */ lwc1 $f10, 0x74($sp) -/* 03747C 8003687C A20A003B */ sb $t2, 0x3b($s0) -/* 037480 80036880 46005121 */ cvt.d.s $f4, $f10 -/* 037484 80036884 46202482 */ mul.d $f18, $f4, $f0 -/* 037488 80036888 46209220 */ cvt.s.d $f8, $f18 -/* 03748C 8003688C E6080024 */ swc1 $f8, 0x24($s0) -/* 037490 80036890 C6260004 */ lwc1 $f6, 4($s1) -/* 037494 80036894 C7A4007C */ lwc1 $f4, 0x7c($sp) -/* 037498 80036898 460032A1 */ cvt.d.s $f10, $f6 -/* 03749C 8003689C 460024A1 */ cvt.d.s $f18, $f4 -/* 0374A0 800368A0 46325200 */ add.d $f8, $f10, $f18 -/* 0374A4 800368A4 462041A0 */ cvt.s.d $f6, $f8 -/* 0374A8 800368A8 E6260004 */ swc1 $f6, 4($s1) -/* 0374AC 800368AC 0C0168F0 */ jal func_8005A3C0 -/* 0374B0 800368B0 AFA30058 */ sw $v1, 0x58($sp) -/* 0374B4 800368B4 8FA30058 */ lw $v1, 0x58($sp) -/* 0374B8 800368B8 24010003 */ li $at, 3 -/* 0374BC 800368BC 1461002A */ bne $v1, $at, .L80036968 -/* 0374C0 800368C0 240B0004 */ li $t3, 4 -/* 0374C4 800368C4 0C003932 */ jal func_8000E4C8 -/* 0374C8 800368C8 AE0B0078 */ sw $t3, 0x78($s0) -/* 0374CC 800368CC 10400006 */ beqz $v0, .L800368E8 -/* 0374D0 800368D0 24040143 */ li $a0, 323 -/* 0374D4 800368D4 24040142 */ li $a0, 322 -/* 0374D8 800368D8 0C00DAF3 */ jal func_80036BCC -/* 0374DC 800368DC 24050001 */ li $a1, 1 -/* 0374E0 800368E0 10000004 */ b .L800368F4 -/* 0374E4 800368E4 862C0020 */ lh $t4, 0x20($s1) -.L800368E8: -/* 0374E8 800368E8 0C00DAF3 */ jal func_80036BCC -/* 0374EC 800368EC 24050001 */ li $a1, 1 -/* 0374F0 800368F0 862C0020 */ lh $t4, 0x20($s1) -.L800368F4: -/* 0374F4 800368F4 92250011 */ lbu $a1, 0x11($s1) -/* 0374F8 800368F8 92260012 */ lbu $a2, 0x12($s1) -/* 0374FC 800368FC 92270013 */ lbu $a3, 0x13($s1) -/* 037500 80036900 AFAC0010 */ sw $t4, 0x10($sp) -/* 037504 80036904 862D0022 */ lh $t5, 0x22($s1) -/* 037508 80036908 240E00B4 */ li $t6, 180 -/* 03750C 8003690C AFAE0018 */ sw $t6, 0x18($sp) -/* 037510 80036910 00002025 */ move $a0, $zero -/* 037514 80036914 0C00C378 */ jal func_80030DE0 -/* 037518 80036918 AFAD0014 */ sw $t5, 0x14($sp) -/* 03751C 8003691C 8FAF004C */ lw $t7, 0x4c($sp) -/* 037520 80036920 00000000 */ nop -/* 037524 80036924 91E40052 */ lbu $a0, 0x52($t7) -/* 037528 80036928 0C0002CD */ jal func_80000B34 -/* 03752C 8003692C 00000000 */ nop -/* 037530 80036930 8FB8004C */ lw $t8, 0x4c($sp) -/* 037534 80036934 00000000 */ nop -/* 037538 80036938 97040054 */ lhu $a0, 0x54($t8) -/* 03753C 8003693C 0C00041D */ jal func_80001074 -/* 037540 80036940 00000000 */ nop -/* 037544 80036944 8FB90050 */ lw $t9, 0x50($sp) -/* 037548 80036948 00000000 */ nop -/* 03754C 8003694C 83240003 */ lb $a0, 3($t9) -/* 037550 80036950 832501D6 */ lb $a1, 0x1d6($t9) -/* 037554 80036954 0C0012D0 */ jal func_80004B40 -/* 037558 80036958 00000000 */ nop -/* 03755C 8003695C 8FA80050 */ lw $t0, 0x50($sp) -/* 037560 80036960 00000000 */ nop -/* 037564 80036964 AD020118 */ sw $v0, 0x118($t0) -.L80036968: -/* 037568 80036968 C7A0007C */ lwc1 $f0, 0x7c($sp) -/* 03756C 8003696C C604001C */ lwc1 $f4, 0x1c($s0) -/* 037570 80036970 C6120020 */ lwc1 $f18, 0x20($s0) -/* 037574 80036974 46002282 */ mul.s $f10, $f4, $f0 -/* 037578 80036978 C6060024 */ lwc1 $f6, 0x24($s0) -/* 03757C 8003697C 240900B4 */ li $t1, 180 -/* 037580 80036980 AE09007C */ sw $t1, 0x7c($s0) -/* 037584 80036984 46009202 */ mul.s $f8, $f18, $f0 -/* 037588 80036988 44055000 */ mfc1 $a1, $f10 -/* 03758C 8003698C 02002025 */ move $a0, $s0 -/* 037590 80036990 46003102 */ mul.s $f4, $f6, $f0 -/* 037594 80036994 44064000 */ mfc1 $a2, $f8 -/* 037598 80036998 44072000 */ mfc1 $a3, $f4 -/* 03759C 8003699C 0C00455C */ jal func_80011570 -/* 0375A0 800369A0 00000000 */ nop -/* 0375A4 800369A4 10000043 */ b .L80036AB4 -/* 0375A8 800369A8 C7AA006C */ lwc1 $f10, 0x6c($sp) -.L800369AC: -/* 0375AC 800369AC C62A0004 */ lwc1 $f10, 4($s1) -/* 0375B0 800369B0 C7A8007C */ lwc1 $f8, 0x7c($sp) -/* 0375B4 800369B4 460054A1 */ cvt.d.s $f18, $f10 -/* 0375B8 800369B8 460041A1 */ cvt.d.s $f6, $f8 -/* 0375BC 800369BC 46269100 */ add.d $f4, $f18, $f6 -/* 0375C0 800369C0 462022A0 */ cvt.s.d $f10, $f4 -/* 0375C4 800369C4 0C0168F0 */ jal func_8005A3C0 -/* 0375C8 800369C8 E62A0004 */ swc1 $f10, 4($s1) -/* 0375CC 800369CC 8E02007C */ lw $v0, 0x7c($s0) -/* 0375D0 800369D0 00000000 */ nop -/* 0375D4 800369D4 2841008C */ slti $at, $v0, 0x8c -/* 0375D8 800369D8 10200035 */ beqz $at, .L80036AB0 -/* 0375DC 800369DC 244A003C */ addiu $t2, $v0, 0x3c -/* 0375E0 800369E0 AE0A007C */ sw $t2, 0x7c($s0) -/* 0375E4 800369E4 AE000078 */ sw $zero, 0x78($s0) -/* 0375E8 800369E8 10000031 */ b .L80036AB0 -/* 0375EC 800369EC A200003B */ sb $zero, 0x3b($s0) -.L800369F0: -/* 0375F0 800369F0 A200003B */ sb $zero, 0x3b($s0) -/* 0375F4 800369F4 44804000 */ mtc1 $zero, $f8 -/* 0375F8 800369F8 922B000D */ lbu $t3, 0xd($s1) -/* 0375FC 800369FC 240100FF */ li $at, 255 -/* 037600 80036A00 1561001B */ bne $t3, $at, .L80036A70 -/* 037604 80036A04 E6280014 */ swc1 $f8, 0x14($s1) -/* 037608 80036A08 C60C000C */ lwc1 $f12, 0xc($s0) -/* 03760C 80036A0C C60E0010 */ lwc1 $f14, 0x10($s0) -/* 037610 80036A10 8E060014 */ lw $a2, 0x14($s0) -/* 037614 80036A14 0C007149 */ jal func_8001C524 -/* 037618 80036A18 00003825 */ move $a3, $zero -/* 03761C 80036A1C 304400FF */ andi $a0, $v0, 0xff -/* 037620 80036A20 240100FF */ li $at, 255 -/* 037624 80036A24 10810022 */ beq $a0, $at, .L80036AB0 -/* 037628 80036A28 A222000D */ sb $v0, 0xd($s1) -/* 03762C 80036A2C 2405FFFF */ li $a1, -1 -/* 037630 80036A30 0C007312 */ jal func_8001CC48 -/* 037634 80036A34 00003025 */ move $a2, $zero -/* 037638 80036A38 9225000D */ lbu $a1, 0xd($s1) -/* 03763C 80036A3C A222000E */ sb $v0, 0xe($s1) -/* 037640 80036A40 304400FF */ andi $a0, $v0, 0xff -/* 037644 80036A44 0C007312 */ jal func_8001CC48 -/* 037648 80036A48 00003025 */ move $a2, $zero -/* 03764C 80036A4C 9225000E */ lbu $a1, 0xe($s1) -/* 037650 80036A50 A222000F */ sb $v0, 0xf($s1) -/* 037654 80036A54 304400FF */ andi $a0, $v0, 0xff -/* 037658 80036A58 0C007312 */ jal func_8001CC48 -/* 03765C 80036A5C 00003025 */ move $a2, $zero -/* 037660 80036A60 922C000D */ lbu $t4, 0xd($s1) -/* 037664 80036A64 A2220010 */ sb $v0, 0x10($s1) -/* 037668 80036A68 10000011 */ b .L80036AB0 -/* 03766C 80036A6C A22C000C */ sb $t4, 0xc($s1) -.L80036A70: -/* 037670 80036A70 8FA6007C */ lw $a2, 0x7c($sp) -/* 037674 80036A74 02002825 */ move $a1, $s0 -/* 037678 80036A78 3C073F80 */ lui $a3, 0x3f80 -/* 03767C 80036A7C 0C0071B1 */ jal func_8001C6C4 -/* 037680 80036A80 AFA00010 */ sw $zero, 0x10($sp) -/* 037684 80036A84 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 -/* 037688 80036A88 44813800 */ mtc1 $at, $f7 -/* 03768C 80036A8C 44803000 */ mtc1 $zero, $f6 -/* 037690 80036A90 460004A1 */ cvt.d.s $f18, $f0 -/* 037694 80036A94 46269102 */ mul.d $f4, $f18, $f6 -/* 037698 80036A98 C62A0004 */ lwc1 $f10, 4($s1) -/* 03769C 80036A9C 00000000 */ nop -/* 0376A0 80036AA0 46005221 */ cvt.d.s $f8, $f10 -/* 0376A4 80036AA4 46244480 */ add.d $f18, $f8, $f4 -/* 0376A8 80036AA8 462091A0 */ cvt.s.d $f6, $f18 -/* 0376AC 80036AAC E6260004 */ swc1 $f6, 4($s1) -.L80036AB0: -/* 0376B0 80036AB0 C7AA006C */ lwc1 $f10, 0x6c($sp) -.L80036AB4: -/* 0376B4 80036AB4 8604002E */ lh $a0, 0x2e($s0) -/* 0376B8 80036AB8 8E05000C */ lw $a1, 0xc($s0) -/* 0376BC 80036ABC 8E060014 */ lw $a2, 0x14($s0) -/* 0376C0 80036AC0 27A70048 */ addiu $a3, $sp, 0x48 -/* 0376C4 80036AC4 0C00AC3D */ jal func_8002B0F4 -/* 0376C8 80036AC8 E60A0010 */ swc1 $f10, 0x10($s0) -/* 0376CC 80036ACC 1040001E */ beqz $v0, .L80036B48 -/* 0376D0 80036AD0 2443FFFF */ addiu $v1, $v0, -1 -/* 0376D4 80036AD4 0460001C */ bltz $v1, .L80036B48 -/* 0376D8 80036AD8 00032080 */ sll $a0, $v1, 2 -/* 0376DC 80036ADC 44800800 */ mtc1 $zero, $f1 -/* 0376E0 80036AE0 44800000 */ mtc1 $zero, $f0 -/* 0376E4 80036AE4 2406000E */ li $a2, 14 -/* 0376E8 80036AE8 2405000B */ li $a1, 11 -/* 0376EC 80036AEC 8FAD0048 */ lw $t5, 0x48($sp) -.L80036AF0: -/* 0376F0 80036AF0 00000000 */ nop -/* 0376F4 80036AF4 01A47021 */ addu $t6, $t5, $a0 -/* 0376F8 80036AF8 8DC20000 */ lw $v0, ($t6) -/* 0376FC 80036AFC 2484FFFC */ addiu $a0, $a0, -4 -/* 037700 80036B00 80430010 */ lb $v1, 0x10($v0) -/* 037704 80036B04 00000000 */ nop -/* 037708 80036B08 10A3000D */ beq $a1, $v1, .L80036B40 -/* 03770C 80036B0C 00000000 */ nop -/* 037710 80036B10 10C3000B */ beq $a2, $v1, .L80036B40 -/* 037714 80036B14 00000000 */ nop -/* 037718 80036B18 C4480008 */ lwc1 $f8, 8($v0) -/* 03771C 80036B1C 00000000 */ nop -/* 037720 80036B20 46004121 */ cvt.d.s $f4, $f8 -/* 037724 80036B24 4624003C */ c.lt.d $f0, $f4 -/* 037728 80036B28 00000000 */ nop -/* 03772C 80036B2C 45000004 */ bc1f .L80036B40 -/* 037730 80036B30 00000000 */ nop -/* 037734 80036B34 C4520000 */ lwc1 $f18, ($v0) -/* 037738 80036B38 00000000 */ nop -/* 03773C 80036B3C E6120010 */ swc1 $f18, 0x10($s0) -.L80036B40: -/* 037740 80036B40 0481FFEB */ bgez $a0, .L80036AF0 -/* 037744 80036B44 8FAD0048 */ lw $t5, 0x48($sp) -.L80036B48: -/* 037748 80036B48 8E0F0078 */ lw $t7, 0x78($s0) -/* 03774C 80036B4C A6000002 */ sh $zero, 2($s0) -/* 037750 80036B50 11E00004 */ beqz $t7, .L80036B64 -/* 037754 80036B54 A6000004 */ sh $zero, 4($s0) -/* 037758 80036B58 C6060010 */ lwc1 $f6, 0x10($s0) -/* 03775C 80036B5C 3C018012 */ lui $at, %hi(D_8011D4D0) # $at, 0x8012 -/* 037760 80036B60 E426D4D0 */ swc1 $f6, %lo(D_8011D4D0)($at) -.L80036B64: -/* 037764 80036B64 C62A0004 */ lwc1 $f10, 4($s1) -/* 037768 80036B68 02002025 */ move $a0, $s0 -/* 03776C 80036B6C 46005221 */ cvt.d.s $f8, $f10 -/* 037770 80036B70 4458F800 */ cfc1 $t8, $31 -/* 037774 80036B74 00000000 */ nop -/* 037778 80036B78 37010003 */ ori $at, $t8, 3 -/* 03777C 80036B7C 38210002 */ xori $at, $at, 2 -/* 037780 80036B80 44C1F800 */ ctc1 $at, $31 -/* 037784 80036B84 00000000 */ nop -/* 037788 80036B88 46204124 */ cvt.w.d $f4, $f8 -/* 03778C 80036B8C 44192000 */ mfc1 $t9, $f4 -/* 037790 80036B90 44D8F800 */ ctc1 $t8, $31 -/* 037794 80036B94 0C018703 */ jal func_80061C0C -/* 037798 80036B98 A6190018 */ sh $t9, 0x18($s0) -/* 03779C 80036B9C 8E02007C */ lw $v0, 0x7c($s0) -/* 0377A0 80036BA0 8FA80084 */ lw $t0, 0x84($sp) -/* 0377A4 80036BA4 18400003 */ blez $v0, .L80036BB4 -/* 0377A8 80036BA8 00484823 */ subu $t1, $v0, $t0 -/* 0377AC 80036BAC 10000002 */ b .L80036BB8 -/* 0377B0 80036BB0 AE09007C */ sw $t1, 0x7c($s0) -.L80036BB4: -/* 0377B4 80036BB4 AE00007C */ sw $zero, 0x7c($s0) -.L80036BB8: -/* 0377B8 80036BB8 8FBF002C */ lw $ra, 0x2c($sp) -/* 0377BC 80036BBC 8FB00024 */ lw $s0, 0x24($sp) -/* 0377C0 80036BC0 8FB10028 */ lw $s1, 0x28($sp) -/* 0377C4 80036BC4 03E00008 */ jr $ra -/* 0377C8 80036BC8 27BD0080 */ addiu $sp, $sp, 0x80 - -glabel func_80036BCC -/* 0377CC 80036BCC 3C078012 */ lui $a3, %hi(D_8011D4D8) # $a3, 0x8012 -/* 0377D0 80036BD0 24E7D4D8 */ addiu $a3, %lo(D_8011D4D8) # addiu $a3, $a3, -0x2b28 -/* 0377D4 80036BD4 8CE60000 */ lw $a2, ($a3) -/* 0377D8 80036BD8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0377DC 80036BDC AFBF0014 */ sw $ra, 0x14($sp) -/* 0377E0 80036BE0 10C0000A */ beqz $a2, .L80036C0C -/* 0377E4 80036BE4 AFA40018 */ sw $a0, 0x18($sp) -/* 0377E8 80036BE8 30AE0001 */ andi $t6, $a1, 1 -/* 0377EC 80036BEC 11C00007 */ beqz $t6, .L80036C0C -/* 0377F0 80036BF0 00000000 */ nop -/* 0377F4 80036BF4 0C001223 */ jal func_8000488C -/* 0377F8 80036BF8 00C02025 */ move $a0, $a2 -/* 0377FC 80036BFC 3C078012 */ lui $a3, %hi(D_8011D4D8) # $a3, 0x8012 -/* 037800 80036C00 24E7D4D8 */ addiu $a3, %lo(D_8011D4D8) # addiu $a3, $a3, -0x2b28 -/* 037804 80036C04 ACE00000 */ sw $zero, ($a3) -/* 037808 80036C08 00003025 */ move $a2, $zero -.L80036C0C: -/* 03780C 80036C0C 14C00005 */ bnez $a2, .L80036C24 -/* 037810 80036C10 8FBF0014 */ lw $ra, 0x14($sp) -/* 037814 80036C14 97A4001A */ lhu $a0, 0x1a($sp) -/* 037818 80036C18 0C000741 */ jal func_80001D04 -/* 03781C 80036C1C 00E02825 */ move $a1, $a3 -/* 037820 80036C20 8FBF0014 */ lw $ra, 0x14($sp) -.L80036C24: -/* 037824 80036C24 27BD0018 */ addiu $sp, $sp, 0x18 -/* 037828 80036C28 03E00008 */ jr $ra -/* 03782C 80036C2C 00000000 */ nop - -glabel func_80036C30 -/* 037830 80036C30 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 037834 80036C34 AFBF0024 */ sw $ra, 0x24($sp) -/* 037838 80036C38 AFB20020 */ sw $s2, 0x20($sp) -/* 03783C 80036C3C AFB1001C */ sw $s1, 0x1c($sp) -/* 037840 80036C40 AFB00018 */ sw $s0, 0x18($sp) -/* 037844 80036C44 AFA60048 */ sw $a2, 0x48($sp) -/* 037848 80036C48 90AE000E */ lbu $t6, 0xe($a1) -/* 03784C 80036C4C 8C900064 */ lw $s0, 0x64($a0) -/* 037850 80036C50 000E7900 */ sll $t7, $t6, 4 -/* 037854 80036C54 A60F0100 */ sh $t7, 0x100($s0) -/* 037858 80036C58 90B8000F */ lbu $t8, 0xf($a1) -/* 03785C 80036C5C 00808825 */ move $s1, $a0 -/* 037860 80036C60 0018CA00 */ sll $t9, $t8, 8 -/* 037864 80036C64 A6190104 */ sh $t9, 0x104($s0) -/* 037868 80036C68 94A80008 */ lhu $t0, 8($a1) -/* 03786C 80036C6C 00A09025 */ move $s2, $a1 -/* 037870 80036C70 44882000 */ mtc1 $t0, $f4 -/* 037874 80036C74 05010005 */ bgez $t0, .L80036C8C -/* 037878 80036C78 468021A0 */ cvt.s.w $f6, $f4 -/* 03787C 80036C7C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 037880 80036C80 44814000 */ mtc1 $at, $f8 -/* 037884 80036C84 00000000 */ nop -/* 037888 80036C88 46083180 */ add.s $f6, $f6, $f8 -.L80036C8C: -/* 03788C 80036C8C E6060114 */ swc1 $f6, 0x114($s0) -/* 037890 80036C90 9249000A */ lbu $t1, 0xa($s2) -/* 037894 80036C94 00000000 */ nop -/* 037898 80036C98 44895000 */ mtc1 $t1, $f10 -/* 03789C 80036C9C 05210005 */ bgez $t1, .L80036CB4 -/* 0378A0 80036CA0 468054A0 */ cvt.s.w $f18, $f10 -/* 0378A4 80036CA4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0378A8 80036CA8 44812000 */ mtc1 $at, $f4 -/* 0378AC 80036CAC 00000000 */ nop -/* 0378B0 80036CB0 46049480 */ add.s $f18, $f18, $f4 -.L80036CB4: -/* 0378B4 80036CB4 E6120118 */ swc1 $f18, 0x118($s0) -/* 0378B8 80036CB8 864A0002 */ lh $t2, 2($s2) -/* 0378BC 80036CBC 00000000 */ nop -/* 0378C0 80036CC0 448A4000 */ mtc1 $t2, $f8 -/* 0378C4 80036CC4 00000000 */ nop -/* 0378C8 80036CC8 468041A0 */ cvt.s.w $f6, $f8 -/* 0378CC 80036CCC E6060108 */ swc1 $f6, 0x108($s0) -/* 0378D0 80036CD0 864B0004 */ lh $t3, 4($s2) -/* 0378D4 80036CD4 00000000 */ nop -/* 0378D8 80036CD8 448B5000 */ mtc1 $t3, $f10 -/* 0378DC 80036CDC 00000000 */ nop -/* 0378E0 80036CE0 46805120 */ cvt.s.w $f4, $f10 -/* 0378E4 80036CE4 E604010C */ swc1 $f4, 0x10c($s0) -/* 0378E8 80036CE8 864C0006 */ lh $t4, 6($s2) -/* 0378EC 80036CEC 00000000 */ nop -/* 0378F0 80036CF0 448C9000 */ mtc1 $t4, $f18 -/* 0378F4 80036CF4 00000000 */ nop -/* 0378F8 80036CF8 46809220 */ cvt.s.w $f8, $f18 -/* 0378FC 80036CFC E6080110 */ swc1 $f8, 0x110($s0) -/* 037900 80036D00 8FAD0048 */ lw $t5, 0x48($sp) -/* 037904 80036D04 00000000 */ nop -/* 037908 80036D08 15A0000E */ bnez $t5, .L80036D44 -/* 03790C 80036D0C 00002025 */ move $a0, $zero -/* 037910 80036D10 0C01BE53 */ jal func_8006F94C -/* 037914 80036D14 3C050001 */ lui $a1, 1 -/* 037918 80036D18 A60200FE */ sh $v0, 0xfe($s0) -/* 03791C 80036D1C 00002025 */ move $a0, $zero -/* 037920 80036D20 0C01BE53 */ jal func_8006F94C -/* 037924 80036D24 3C050001 */ lui $a1, 1 -/* 037928 80036D28 A6020102 */ sh $v0, 0x102($s0) -/* 03792C 80036D2C 00002025 */ move $a0, $zero -/* 037930 80036D30 0C01BE53 */ jal func_8006F94C -/* 037934 80036D34 3C050001 */ lui $a1, 1 -/* 037938 80036D38 A6020106 */ sh $v0, 0x106($s0) -/* 03793C 80036D3C 10000005 */ b .L80036D54 -/* 037940 80036D40 A20000FD */ sb $zero, 0xfd($s0) -.L80036D44: -/* 037944 80036D44 860F0104 */ lh $t7, 0x104($s0) -/* 037948 80036D48 240E4000 */ li $t6, 16384 -/* 03794C 80036D4C A60E00FE */ sh $t6, 0xfe($s0) -/* 037950 80036D50 A62F0000 */ sh $t7, ($s1) -.L80036D54: -/* 037954 80036D54 861800FE */ lh $t8, 0xfe($s0) -/* 037958 80036D58 00000000 */ nop -/* 03795C 80036D5C 0018CC40 */ sll $t9, $t8, 0x11 -/* 037960 80036D60 0C01C1F1 */ jal func_800707C4 -/* 037964 80036D64 00192403 */ sra $a0, $t9, 0x10 -/* 037968 80036D68 C6060114 */ lwc1 $f6, 0x114($s0) -/* 03796C 80036D6C 00000000 */ nop -/* 037970 80036D70 46060282 */ mul.s $f10, $f0, $f6 -/* 037974 80036D74 E7AA0030 */ swc1 $f10, 0x30($sp) -/* 037978 80036D78 860400FE */ lh $a0, 0xfe($s0) -/* 03797C 80036D7C 0C01C1FE */ jal func_800707F8 -/* 037980 80036D80 00000000 */ nop -/* 037984 80036D84 C6040114 */ lwc1 $f4, 0x114($s0) -/* 037988 80036D88 00000000 */ nop -/* 03798C 80036D8C 46040482 */ mul.s $f18, $f0, $f4 -/* 037990 80036D90 E7B2002C */ swc1 $f18, 0x2c($sp) -/* 037994 80036D94 86040104 */ lh $a0, 0x104($s0) -/* 037998 80036D98 0C01C1F1 */ jal func_800707C4 -/* 03799C 80036D9C 00000000 */ nop -/* 0379A0 80036DA0 86040104 */ lh $a0, 0x104($s0) -/* 0379A4 80036DA4 0C01C1FE */ jal func_800707F8 -/* 0379A8 80036DA8 E7A00028 */ swc1 $f0, 0x28($sp) -/* 0379AC 80036DAC C7A20030 */ lwc1 $f2, 0x30($sp) -/* 0379B0 80036DB0 C7AC0028 */ lwc1 $f12, 0x28($sp) -/* 0379B4 80036DB4 46001202 */ mul.s $f8, $f2, $f0 -/* 0379B8 80036DB8 C7B0002C */ lwc1 $f16, 0x2c($sp) -/* 0379BC 80036DBC C6120108 */ lwc1 $f18, 0x108($s0) -/* 0379C0 80036DC0 460C8182 */ mul.s $f6, $f16, $f12 -/* 0379C4 80036DC4 E632000C */ swc1 $f18, 0xc($s1) -/* 0379C8 80036DC8 46008282 */ mul.s $f10, $f16, $f0 -/* 0379CC 80036DCC 46064380 */ add.s $f14, $f8, $f6 -/* 0379D0 80036DD0 C6080110 */ lwc1 $f8, 0x110($s0) -/* 0379D4 80036DD4 460C1102 */ mul.s $f4, $f2, $f12 -/* 0379D8 80036DD8 E6280014 */ swc1 $f8, 0x14($s1) -/* 0379DC 80036DDC E7AE0030 */ swc1 $f14, 0x30($sp) -/* 0379E0 80036DE0 46045401 */ sub.s $f16, $f10, $f4 -/* 0379E4 80036DE4 0C004558 */ jal func_80011560 -/* 0379E8 80036DE8 E7B0002C */ swc1 $f16, 0x2c($sp) -/* 0379EC 80036DEC 8FA50030 */ lw $a1, 0x30($sp) -/* 0379F0 80036DF0 8FA7002C */ lw $a3, 0x2c($sp) -/* 0379F4 80036DF4 02202025 */ move $a0, $s1 -/* 0379F8 80036DF8 0C00455C */ jal func_80011570 -/* 0379FC 80036DFC 24060000 */ li $a2, 0 -/* 037A00 80036E00 8FA90048 */ lw $t1, 0x48($sp) -/* 037A04 80036E04 02001825 */ move $v1, $s0 -/* 037A08 80036E08 15200031 */ bnez $t1, .L80036ED0 -/* 037A0C 80036E0C 3C02800E */ lui $v0, %hi(D_800DC9D0) # $v0, 0x800e -/* 037A10 80036E10 3C04800E */ lui $a0, %hi(D_800DCA50) # $a0, 0x800e -/* 037A14 80036E14 2484CA50 */ addiu $a0, %lo(D_800DCA50) # addiu $a0, $a0, -0x35b0 -/* 037A18 80036E18 2442C9D0 */ addiu $v0, %lo(D_800DC9D0) # addiu $v0, $v0, -0x3630 -.L80036E1C: -/* 037A1C 80036E1C 904A0000 */ lbu $t2, ($v0) -/* 037A20 80036E20 24420010 */ addiu $v0, $v0, 0x10 -/* 037A24 80036E24 A06A0000 */ sb $t2, ($v1) -/* 037A28 80036E28 904BFFF1 */ lbu $t3, -0xf($v0) -/* 037A2C 80036E2C 0044082B */ sltu $at, $v0, $a0 -/* 037A30 80036E30 A06B0001 */ sb $t3, 1($v1) -/* 037A34 80036E34 904CFFF2 */ lbu $t4, -0xe($v0) -/* 037A38 80036E38 24630010 */ addiu $v1, $v1, 0x10 -/* 037A3C 80036E3C A06CFFF2 */ sb $t4, -0xe($v1) -/* 037A40 80036E40 904DFFF3 */ lbu $t5, -0xd($v0) -/* 037A44 80036E44 1420FFF5 */ bnez $at, .L80036E1C -/* 037A48 80036E48 A06DFFF3 */ sb $t5, -0xd($v1) -/* 037A4C 80036E4C 3C03800E */ lui $v1, %hi(D_800DC9A8) # $v1, 0x800e -/* 037A50 80036E50 2463C9A8 */ addiu $v1, %lo(D_800DC9A8) # addiu $v1, $v1, -0x3658 -/* 037A54 80036E54 00003025 */ move $a2, $zero -/* 037A58 80036E58 02001025 */ move $v0, $s0 -/* 037A5C 80036E5C 24050006 */ li $a1, 6 -/* 037A60 80036E60 240400FF */ li $a0, 255 -.L80036E64: -/* 037A64 80036E64 846E0000 */ lh $t6, ($v1) -/* 037A68 80036E68 24C60001 */ addiu $a2, $a2, 1 -/* 037A6C 80036E6C A44E0080 */ sh $t6, 0x80($v0) -/* 037A70 80036E70 846F0002 */ lh $t7, 2($v1) -/* 037A74 80036E74 2442000A */ addiu $v0, $v0, 0xa -/* 037A78 80036E78 A44F0078 */ sh $t7, 0x78($v0) -/* 037A7C 80036E7C 84780004 */ lh $t8, 4($v1) -/* 037A80 80036E80 A044007C */ sb $a0, 0x7c($v0) -/* 037A84 80036E84 A044007D */ sb $a0, 0x7d($v0) -/* 037A88 80036E88 A044007E */ sb $a0, 0x7e($v0) -/* 037A8C 80036E8C A044007F */ sb $a0, 0x7f($v0) -/* 037A90 80036E90 A458007A */ sh $t8, 0x7a($v0) -/* 037A94 80036E94 84790000 */ lh $t9, ($v1) -/* 037A98 80036E98 24630006 */ addiu $v1, $v1, 6 -/* 037A9C 80036E9C A45900B2 */ sh $t9, 0xb2($v0) -/* 037AA0 80036EA0 8468FFFC */ lh $t0, -4($v1) -/* 037AA4 80036EA4 00000000 */ nop -/* 037AA8 80036EA8 A44800B4 */ sh $t0, 0xb4($v0) -/* 037AAC 80036EAC 8469FFFE */ lh $t1, -2($v1) -/* 037AB0 80036EB0 A04400B8 */ sb $a0, 0xb8($v0) -/* 037AB4 80036EB4 A04400B9 */ sb $a0, 0xb9($v0) -/* 037AB8 80036EB8 A04400BA */ sb $a0, 0xba($v0) -/* 037ABC 80036EBC A04400BB */ sb $a0, 0xbb($v0) -/* 037AC0 80036EC0 14C5FFE8 */ bne $a2, $a1, .L80036E64 -/* 037AC4 80036EC4 A44900B6 */ sh $t1, 0xb6($v0) -/* 037AC8 80036EC8 240A0001 */ li $t2, 1 -/* 037ACC 80036ECC A20A00FC */ sb $t2, 0xfc($s0) -.L80036ED0: -/* 037AD0 80036ED0 924B000C */ lbu $t3, 0xc($s2) -/* 037AD4 80036ED4 02001825 */ move $v1, $s0 -/* 037AD8 80036ED8 448B3000 */ mtc1 $t3, $f6 -/* 037ADC 80036EDC 05610005 */ bgez $t3, .L80036EF4 -/* 037AE0 80036EE0 468032A0 */ cvt.s.w $f10, $f6 -/* 037AE4 80036EE4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 037AE8 80036EE8 44812000 */ mtc1 $at, $f4 -/* 037AEC 80036EEC 00000000 */ nop -/* 037AF0 80036EF0 46045280 */ add.s $f10, $f10, $f4 -.L80036EF4: -/* 037AF4 80036EF4 3C01800E */ lui $at, %hi(D_800E6048) # $at, 0x800e -/* 037AF8 80036EF8 C4326048 */ lwc1 $f18, %lo(D_800E6048)($at) -/* 037AFC 80036EFC 8E2C0040 */ lw $t4, 0x40($s1) -/* 037B00 80036F00 46125202 */ mul.s $f8, $f10, $f18 -/* 037B04 80036F04 3C06800E */ lui $a2, %hi(D_800DCA50) # $a2, 0x800e -/* 037B08 80036F08 00002025 */ move $a0, $zero -/* 037B0C 80036F0C 00002825 */ move $a1, $zero -/* 037B10 80036F10 E6280008 */ swc1 $f8, 8($s1) -/* 037B14 80036F14 9242000B */ lbu $v0, 0xb($s2) -/* 037B18 80036F18 818D0055 */ lb $t5, 0x55($t4) -/* 037B1C 80036F1C 24C6CA50 */ addiu $a2, %lo(D_800DCA50) # addiu $a2, $a2, -0x35b0 -/* 037B20 80036F20 004D082A */ slt $at, $v0, $t5 -/* 037B24 80036F24 10200007 */ beqz $at, .L80036F44 -/* 037B28 80036F28 00000000 */ nop -/* 037B2C 80036F2C 8E2E0068 */ lw $t6, 0x68($s1) -/* 037B30 80036F30 00027880 */ sll $t7, $v0, 2 -/* 037B34 80036F34 01CFC021 */ addu $t8, $t6, $t7 -/* 037B38 80036F38 8F190000 */ lw $t9, ($t8) -/* 037B3C 80036F3C 10000006 */ b .L80036F58 -/* 037B40 80036F40 AE1900F8 */ sw $t9, 0xf8($s0) -.L80036F44: -/* 037B44 80036F44 8E280068 */ lw $t0, 0x68($s1) -/* 037B48 80036F48 00000000 */ nop -/* 037B4C 80036F4C 8D090000 */ lw $t1, ($t0) -/* 037B50 80036F50 00000000 */ nop -/* 037B54 80036F54 AE0900F8 */ sw $t1, 0xf8($s0) -.L80036F58: -/* 037B58 80036F58 8E0200F8 */ lw $v0, 0xf8($s0) -/* 037B5C 80036F5C 00000000 */ nop -/* 037B60 80036F60 1040000A */ beqz $v0, .L80036F8C -/* 037B64 80036F64 00000000 */ nop -/* 037B68 80036F68 90440000 */ lbu $a0, ($v0) -/* 037B6C 80036F6C 90450001 */ lbu $a1, 1($v0) -/* 037B70 80036F70 2484FFFF */ addiu $a0, $a0, -1 -/* 037B74 80036F74 24A5FFFF */ addiu $a1, $a1, -1 -/* 037B78 80036F78 00045140 */ sll $t2, $a0, 5 -/* 037B7C 80036F7C 00055940 */ sll $t3, $a1, 5 -/* 037B80 80036F80 01402025 */ move $a0, $t2 -/* 037B84 80036F84 10000001 */ b .L80036F8C -/* 037B88 80036F88 01602825 */ move $a1, $t3 -.L80036F8C: -/* 037B8C 80036F8C 3C02800E */ lui $v0, %hi(D_800DC9D0) # $v0, 0x800e -/* 037B90 80036F90 2442C9D0 */ addiu $v0, %lo(D_800DC9D0) # addiu $v0, $v0, -0x3630 -.L80036F94: -/* 037B94 80036F94 844C0004 */ lh $t4, 4($v0) -/* 037B98 80036F98 24420020 */ addiu $v0, $v0, 0x20 -/* 037B9C 80036F9C 01840019 */ multu $t4, $a0 -/* 037BA0 80036FA0 24630020 */ addiu $v1, $v1, 0x20 -/* 037BA4 80036FA4 00006812 */ mflo $t5 -/* 037BA8 80036FA8 000D7083 */ sra $t6, $t5, 2 -/* 037BAC 80036FAC A46EFFE4 */ sh $t6, -0x1c($v1) -/* 037BB0 80036FB0 844FFFE6 */ lh $t7, -0x1a($v0) -/* 037BB4 80036FB4 00000000 */ nop -/* 037BB8 80036FB8 01E50019 */ multu $t7, $a1 -/* 037BBC 80036FBC 0000C012 */ mflo $t8 -/* 037BC0 80036FC0 0018C883 */ sra $t9, $t8, 2 -/* 037BC4 80036FC4 A479FFE6 */ sh $t9, -0x1a($v1) -/* 037BC8 80036FC8 8448FFE8 */ lh $t0, -0x18($v0) -/* 037BCC 80036FCC 00000000 */ nop -/* 037BD0 80036FD0 01040019 */ multu $t0, $a0 -/* 037BD4 80036FD4 00004812 */ mflo $t1 -/* 037BD8 80036FD8 00095083 */ sra $t2, $t1, 2 -/* 037BDC 80036FDC A46AFFE8 */ sh $t2, -0x18($v1) -/* 037BE0 80036FE0 844BFFEA */ lh $t3, -0x16($v0) -/* 037BE4 80036FE4 00000000 */ nop -/* 037BE8 80036FE8 01650019 */ multu $t3, $a1 -/* 037BEC 80036FEC 00006012 */ mflo $t4 -/* 037BF0 80036FF0 000C6883 */ sra $t5, $t4, 2 -/* 037BF4 80036FF4 A46DFFEA */ sh $t5, -0x16($v1) -/* 037BF8 80036FF8 844EFFEC */ lh $t6, -0x14($v0) -/* 037BFC 80036FFC 00000000 */ nop -/* 037C00 80037000 01C40019 */ multu $t6, $a0 -/* 037C04 80037004 00007812 */ mflo $t7 -/* 037C08 80037008 000FC083 */ sra $t8, $t7, 2 -/* 037C0C 8003700C A478FFEC */ sh $t8, -0x14($v1) -/* 037C10 80037010 8459FFEE */ lh $t9, -0x12($v0) -/* 037C14 80037014 00000000 */ nop -/* 037C18 80037018 03250019 */ multu $t9, $a1 -/* 037C1C 8003701C 00004012 */ mflo $t0 -/* 037C20 80037020 00084883 */ sra $t1, $t0, 2 -/* 037C24 80037024 A469FFEE */ sh $t1, -0x12($v1) -/* 037C28 80037028 844AFFF4 */ lh $t2, -0xc($v0) -/* 037C2C 8003702C 00000000 */ nop -/* 037C30 80037030 01440019 */ multu $t2, $a0 -/* 037C34 80037034 00005812 */ mflo $t3 -/* 037C38 80037038 000B6083 */ sra $t4, $t3, 2 -/* 037C3C 8003703C A46CFFF4 */ sh $t4, -0xc($v1) -/* 037C40 80037040 844DFFF6 */ lh $t5, -0xa($v0) -/* 037C44 80037044 00000000 */ nop -/* 037C48 80037048 01A50019 */ multu $t5, $a1 -/* 037C4C 8003704C 00007012 */ mflo $t6 -/* 037C50 80037050 000E7883 */ sra $t7, $t6, 2 -/* 037C54 80037054 A46FFFF6 */ sh $t7, -0xa($v1) -/* 037C58 80037058 8458FFF8 */ lh $t8, -8($v0) -/* 037C5C 8003705C 00000000 */ nop -/* 037C60 80037060 03040019 */ multu $t8, $a0 -/* 037C64 80037064 0000C812 */ mflo $t9 -/* 037C68 80037068 00194083 */ sra $t0, $t9, 2 -/* 037C6C 8003706C A468FFF8 */ sh $t0, -8($v1) -/* 037C70 80037070 8449FFFA */ lh $t1, -6($v0) -/* 037C74 80037074 00000000 */ nop -/* 037C78 80037078 01250019 */ multu $t1, $a1 -/* 037C7C 8003707C 00005012 */ mflo $t2 -/* 037C80 80037080 000A5883 */ sra $t3, $t2, 2 -/* 037C84 80037084 A46BFFFA */ sh $t3, -6($v1) -/* 037C88 80037088 844CFFFC */ lh $t4, -4($v0) -/* 037C8C 8003708C 00000000 */ nop -/* 037C90 80037090 01840019 */ multu $t4, $a0 -/* 037C94 80037094 00006812 */ mflo $t5 -/* 037C98 80037098 000D7083 */ sra $t6, $t5, 2 -/* 037C9C 8003709C A46EFFFC */ sh $t6, -4($v1) -/* 037CA0 800370A0 844FFFFE */ lh $t7, -2($v0) -/* 037CA4 800370A4 00000000 */ nop -/* 037CA8 800370A8 01E50019 */ multu $t7, $a1 -/* 037CAC 800370AC 0000C012 */ mflo $t8 -/* 037CB0 800370B0 0018C883 */ sra $t9, $t8, 2 -/* 037CB4 800370B4 1446FFB7 */ bne $v0, $a2, .L80036F94 -/* 037CB8 800370B8 A479FFFE */ sh $t9, -2($v1) -/* 037CBC 800370BC 8FBF0024 */ lw $ra, 0x24($sp) -/* 037CC0 800370C0 8FB00018 */ lw $s0, 0x18($sp) -/* 037CC4 800370C4 8FB1001C */ lw $s1, 0x1c($sp) -/* 037CC8 800370C8 8FB20020 */ lw $s2, 0x20($sp) -/* 037CCC 800370CC 03E00008 */ jr $ra -/* 037CD0 800370D0 27BD0040 */ addiu $sp, $sp, 0x40 - -glabel func_800370D4 -/* 037CD4 800370D4 27BDFF90 */ addiu $sp, $sp, -0x70 -/* 037CD8 800370D8 AFBF001C */ sw $ra, 0x1c($sp) -/* 037CDC 800370DC AFB10018 */ sw $s1, 0x18($sp) -/* 037CE0 800370E0 00808825 */ move $s1, $a0 -/* 037CE4 800370E4 AFB00014 */ sw $s0, 0x14($sp) -/* 037CE8 800370E8 0C019884 */ jal func_80066210 -/* 037CEC 800370EC AFA50074 */ sw $a1, 0x74($sp) -/* 037CF0 800370F0 18400005 */ blez $v0, .L80037108 -/* 037CF4 800370F4 00000000 */ nop -/* 037CF8 800370F8 0C003FEE */ jal func_8000FFB8 -/* 037CFC 800370FC 02202025 */ move $a0, $s1 -/* 037D00 80037100 10000119 */ b .L80037568 -/* 037D04 80037104 8FBF001C */ lw $ra, 0x1c($sp) -.L80037108: -/* 037D08 80037108 8E300064 */ lw $s0, 0x64($s1) -/* 037D0C 8003710C C6200010 */ lwc1 $f0, 0x10($s1) -/* 037D10 80037110 920300FD */ lbu $v1, 0xfd($s0) -/* 037D14 80037114 00000000 */ nop -/* 037D18 80037118 1060001B */ beqz $v1, .L80037188 -/* 037D1C 8003711C 00601025 */ move $v0, $v1 -/* 037D20 80037120 8FA50074 */ lw $a1, 0x74($sp) -/* 037D24 80037124 00000000 */ nop -/* 037D28 80037128 0065082A */ slt $at, $v1, $a1 -/* 037D2C 8003712C 14200009 */ bnez $at, .L80037154 -/* 037D30 80037130 00000000 */ nop -/* 037D34 80037134 44853000 */ mtc1 $a1, $f6 -/* 037D38 80037138 C6240020 */ lwc1 $f4, 0x20($s1) -/* 037D3C 8003713C 46803220 */ cvt.s.w $f8, $f6 -/* 037D40 80037140 00457023 */ subu $t6, $v0, $a1 -/* 037D44 80037144 A20E00FD */ sb $t6, 0xfd($s0) -/* 037D48 80037148 46082282 */ mul.s $f10, $f4, $f8 -/* 037D4C 8003714C 1000000C */ b .L80037180 -/* 037D50 80037150 460A0000 */ add.s $f0, $f0, $f10 -.L80037154: -/* 037D54 80037154 44832000 */ mtc1 $v1, $f4 -/* 037D58 80037158 C6260020 */ lwc1 $f6, 0x20($s1) -/* 037D5C 8003715C 04610005 */ bgez $v1, .L80037174 -/* 037D60 80037160 46802220 */ cvt.s.w $f8, $f4 -/* 037D64 80037164 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 037D68 80037168 44815000 */ mtc1 $at, $f10 -/* 037D6C 8003716C 00000000 */ nop -/* 037D70 80037170 460A4200 */ add.s $f8, $f8, $f10 -.L80037174: -/* 037D74 80037174 46083102 */ mul.s $f4, $f6, $f8 -/* 037D78 80037178 A20000FD */ sb $zero, 0xfd($s0) -/* 037D7C 8003717C 46040000 */ add.s $f0, $f0, $f4 -.L80037180: -/* 037D80 80037180 1000003D */ b .L80037278 -/* 037D84 80037184 E7A00068 */ swc1 $f0, 0x68($sp) -.L80037188: -/* 037D88 80037188 00002025 */ move $a0, $zero -/* 037D8C 8003718C 24050007 */ li $a1, 7 -/* 037D90 80037190 0C01BE53 */ jal func_8006F94C -/* 037D94 80037194 E7A00068 */ swc1 $f0, 0x68($sp) -/* 037D98 80037198 14400037 */ bnez $v0, .L80037278 -/* 037D9C 8003719C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 037DA0 800371A0 C60A0118 */ lwc1 $f10, 0x118($s0) -/* 037DA4 800371A4 44813000 */ mtc1 $at, $f6 -/* 037DA8 800371A8 240400A0 */ li $a0, 160 -/* 037DAC 800371AC 460A303E */ c.le.s $f6, $f10 -/* 037DB0 800371B0 00000000 */ nop -/* 037DB4 800371B4 45000031 */ bc1f .L8003727C -/* 037DB8 800371B8 8FA50074 */ lw $a1, 0x74($sp) -/* 037DBC 800371BC 0C01BE53 */ jal func_8006F94C -/* 037DC0 800371C0 240500FF */ li $a1, 255 -/* 037DC4 800371C4 444FF800 */ cfc1 $t7, $31 -/* 037DC8 800371C8 C6080118 */ lwc1 $f8, 0x118($s0) -/* 037DCC 800371CC 35E10003 */ ori $at, $t7, 3 -/* 037DD0 800371D0 38210002 */ xori $at, $at, 2 -/* 037DD4 800371D4 44C1F800 */ ctc1 $at, $31 -/* 037DD8 800371D8 A20200FD */ sb $v0, 0xfd($s0) -/* 037DDC 800371DC 46004124 */ cvt.w.s $f4, $f8 -/* 037DE0 800371E0 00002025 */ move $a0, $zero -/* 037DE4 800371E4 44052000 */ mfc1 $a1, $f4 -/* 037DE8 800371E8 44CFF800 */ ctc1 $t7, $31 -/* 037DEC 800371EC 0C01BE53 */ jal func_8006F94C -/* 037DF0 800371F0 00000000 */ nop -/* 037DF4 800371F4 C6200010 */ lwc1 $f0, 0x10($s1) -/* 037DF8 800371F8 C60A010C */ lwc1 $f10, 0x10c($s0) -/* 037DFC 800371FC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 037E00 80037200 46005181 */ sub.s $f6, $f10, $f0 -/* 037E04 80037204 E6260020 */ swc1 $f6, 0x20($s1) -/* 037E08 80037208 C608010C */ lwc1 $f8, 0x10c($s0) -/* 037E0C 8003720C 00000000 */ nop -/* 037E10 80037210 4608003C */ c.lt.s $f0, $f8 -/* 037E14 80037214 00000000 */ nop -/* 037E18 80037218 45000007 */ bc1f .L80037238 -/* 037E1C 8003721C 00000000 */ nop -/* 037E20 80037220 44825000 */ mtc1 $v0, $f10 -/* 037E24 80037224 C6240020 */ lwc1 $f4, 0x20($s1) -/* 037E28 80037228 468051A0 */ cvt.s.w $f6, $f10 -/* 037E2C 8003722C 46062200 */ add.s $f8, $f4, $f6 -/* 037E30 80037230 10000006 */ b .L8003724C -/* 037E34 80037234 E6280020 */ swc1 $f8, 0x20($s1) -.L80037238: -/* 037E38 80037238 44822000 */ mtc1 $v0, $f4 -/* 037E3C 8003723C C62A0020 */ lwc1 $f10, 0x20($s1) -/* 037E40 80037240 468021A0 */ cvt.s.w $f6, $f4 -/* 037E44 80037244 46065201 */ sub.s $f8, $f10, $f6 -/* 037E48 80037248 E6280020 */ swc1 $f8, 0x20($s1) -.L8003724C: -/* 037E4C 8003724C 921800FD */ lbu $t8, 0xfd($s0) -/* 037E50 80037250 C6240020 */ lwc1 $f4, 0x20($s1) -/* 037E54 80037254 44985000 */ mtc1 $t8, $f10 -/* 037E58 80037258 07010004 */ bgez $t8, .L8003726C -/* 037E5C 8003725C 468051A0 */ cvt.s.w $f6, $f10 -/* 037E60 80037260 44814000 */ mtc1 $at, $f8 -/* 037E64 80037264 00000000 */ nop -/* 037E68 80037268 46083180 */ add.s $f6, $f6, $f8 -.L8003726C: -/* 037E6C 8003726C 00000000 */ nop -/* 037E70 80037270 46062283 */ div.s $f10, $f4, $f6 -/* 037E74 80037274 E62A0020 */ swc1 $f10, 0x20($s1) -.L80037278: -/* 037E78 80037278 8FA50074 */ lw $a1, 0x74($sp) -.L8003727C: -/* 037E7C 8003727C 86080100 */ lh $t0, 0x100($s0) -/* 037E80 80037280 861900FE */ lh $t9, 0xfe($s0) -/* 037E84 80037284 00A80019 */ multu $a1, $t0 -/* 037E88 80037288 00004812 */ mflo $t1 -/* 037E8C 8003728C 03295021 */ addu $t2, $t9, $t1 -/* 037E90 80037290 A60A00FE */ sh $t2, 0xfe($s0) -/* 037E94 80037294 860B00FE */ lh $t3, 0xfe($s0) -/* 037E98 80037298 00000000 */ nop -/* 037E9C 8003729C 000B6440 */ sll $t4, $t3, 0x11 -/* 037EA0 800372A0 0C01C1F1 */ jal func_800707C4 -/* 037EA4 800372A4 000C2403 */ sra $a0, $t4, 0x10 -/* 037EA8 800372A8 C6080114 */ lwc1 $f8, 0x114($s0) -/* 037EAC 800372AC 860400FE */ lh $a0, 0xfe($s0) -/* 037EB0 800372B0 46080302 */ mul.s $f12, $f0, $f8 -/* 037EB4 800372B4 0C01C1FE */ jal func_800707F8 -/* 037EB8 800372B8 E7AC006C */ swc1 $f12, 0x6c($sp) -/* 037EBC 800372BC C6040114 */ lwc1 $f4, 0x114($s0) -/* 037EC0 800372C0 86040104 */ lh $a0, 0x104($s0) -/* 037EC4 800372C4 46040082 */ mul.s $f2, $f0, $f4 -/* 037EC8 800372C8 0C01C1F1 */ jal func_800707C4 -/* 037ECC 800372CC E7A20064 */ swc1 $f2, 0x64($sp) -/* 037ED0 800372D0 86040104 */ lh $a0, 0x104($s0) -/* 037ED4 800372D4 0C01C1FE */ jal func_800707F8 -/* 037ED8 800372D8 E7A0004C */ swc1 $f0, 0x4c($sp) -/* 037EDC 800372DC C7AE006C */ lwc1 $f14, 0x6c($sp) -/* 037EE0 800372E0 C7A20064 */ lwc1 $f2, 0x64($sp) -/* 037EE4 800372E4 46007182 */ mul.s $f6, $f14, $f0 -/* 037EE8 800372E8 C7B0004C */ lwc1 $f16, 0x4c($sp) -/* 037EEC 800372EC 44809000 */ mtc1 $zero, $f18 -/* 037EF0 800372F0 46101282 */ mul.s $f10, $f2, $f16 -/* 037EF4 800372F4 00000000 */ nop -/* 037EF8 800372F8 46001202 */ mul.s $f8, $f2, $f0 -/* 037EFC 800372FC 460A3300 */ add.s $f12, $f6, $f10 -/* 037F00 80037300 C6060108 */ lwc1 $f6, 0x108($s0) -/* 037F04 80037304 C60A0110 */ lwc1 $f10, 0x110($s0) -/* 037F08 80037308 46107102 */ mul.s $f4, $f14, $f16 -/* 037F0C 8003730C 46066300 */ add.s $f12, $f12, $f6 -/* 037F10 80037310 46044081 */ sub.s $f2, $f8, $f4 -/* 037F14 80037314 C628000C */ lwc1 $f8, 0xc($s1) -/* 037F18 80037318 460A1080 */ add.s $f2, $f2, $f10 -/* 037F1C 8003731C C7AA0068 */ lwc1 $f10, 0x68($sp) -/* 037F20 80037320 460C4101 */ sub.s $f4, $f8, $f12 -/* 037F24 80037324 E7A40060 */ swc1 $f4, 0x60($sp) -/* 037F28 80037328 C6260010 */ lwc1 $f6, 0x10($s1) -/* 037F2C 8003732C 00000000 */ nop -/* 037F30 80037330 460A3201 */ sub.s $f8, $f6, $f10 -/* 037F34 80037334 E7A8005C */ swc1 $f8, 0x5c($sp) -/* 037F38 80037338 C6240014 */ lwc1 $f4, 0x14($s1) -/* 037F3C 8003733C 00000000 */ nop -/* 037F40 80037340 46022181 */ sub.s $f6, $f4, $f2 -/* 037F44 80037344 E7A60058 */ swc1 $f6, 0x58($sp) -/* 037F48 80037348 E632000C */ swc1 $f18, 0xc($s1) -/* 037F4C 8003734C E6320010 */ swc1 $f18, 0x10($s1) -/* 037F50 80037350 E6320014 */ swc1 $f18, 0x14($s1) -/* 037F54 80037354 E7AC006C */ swc1 $f12, 0x6c($sp) -/* 037F58 80037358 0C004558 */ jal func_80011560 -/* 037F5C 8003735C E7A20064 */ swc1 $f2, 0x64($sp) -/* 037F60 80037360 C7A20064 */ lwc1 $f2, 0x64($sp) -/* 037F64 80037364 C7AC006C */ lwc1 $f12, 0x6c($sp) -/* 037F68 80037368 8FA60068 */ lw $a2, 0x68($sp) -/* 037F6C 8003736C 44071000 */ mfc1 $a3, $f2 -/* 037F70 80037370 44056000 */ mfc1 $a1, $f12 -/* 037F74 80037374 0C00455C */ jal func_80011570 -/* 037F78 80037378 02202025 */ move $a0, $s1 -/* 037F7C 8003737C C7A00060 */ lwc1 $f0, 0x60($sp) -/* 037F80 80037380 C7B00058 */ lwc1 $f16, 0x58($sp) -/* 037F84 80037384 46000282 */ mul.s $f10, $f0, $f0 -/* 037F88 80037388 C7A2005C */ lwc1 $f2, 0x5c($sp) -/* 037F8C 8003738C 46108202 */ mul.s $f8, $f16, $f16 -/* 037F90 80037390 46085380 */ add.s $f14, $f10, $f8 -/* 037F94 80037394 46021102 */ mul.s $f4, $f2, $f2 -/* 037F98 80037398 E7AE0020 */ swc1 $f14, 0x20($sp) -/* 037F9C 8003739C 0C0326B4 */ jal sqrtf -/* 037FA0 800373A0 460E2300 */ add.s $f12, $f4, $f14 -/* 037FA4 800373A4 C7AC0020 */ lwc1 $f12, 0x20($sp) -/* 037FA8 800373A8 0C0326B4 */ jal sqrtf -/* 037FAC 800373AC E7A00050 */ swc1 $f0, 0x50($sp) -/* 037FB0 800373B0 3C0144C0 */ li $at, 0x44C00000 # 1536.000000 -/* 037FB4 800373B4 44815000 */ mtc1 $at, $f10 -/* 037FB8 800373B8 C7A60050 */ lwc1 $f6, 0x50($sp) -/* 037FBC 800373BC E7A00054 */ swc1 $f0, 0x54($sp) -/* 037FC0 800373C0 460A3202 */ mul.s $f8, $f6, $f10 -/* 037FC4 800373C4 86180106 */ lh $t8, 0x106($s0) -/* 037FC8 800373C8 444EF800 */ cfc1 $t6, $31 -/* 037FCC 800373CC 00000000 */ nop -/* 037FD0 800373D0 35C10003 */ ori $at, $t6, 3 -/* 037FD4 800373D4 38210002 */ xori $at, $at, 2 -/* 037FD8 800373D8 44C1F800 */ ctc1 $at, $31 -/* 037FDC 800373DC 00000000 */ nop -/* 037FE0 800373E0 46004124 */ cvt.w.s $f4, $f8 -/* 037FE4 800373E4 440F2000 */ mfc1 $t7, $f4 -/* 037FE8 800373E8 44CEF800 */ ctc1 $t6, $31 -/* 037FEC 800373EC 030F4021 */ addu $t0, $t8, $t7 -/* 037FF0 800373F0 A6080106 */ sh $t0, 0x106($s0) -/* 037FF4 800373F4 C7AE0058 */ lwc1 $f14, 0x58($sp) -/* 037FF8 800373F8 C7AC0060 */ lwc1 $f12, 0x60($sp) -/* 037FFC 800373FC 0C01C1D4 */ jal func_80070750 -/* 038000 80037400 00000000 */ nop -/* 038004 80037404 A6220000 */ sh $v0, ($s1) -/* 038008 80037408 C7AC005C */ lwc1 $f12, 0x5c($sp) -/* 03800C 8003740C C7AE0054 */ lwc1 $f14, 0x54($sp) -/* 038010 80037410 0C01C1D4 */ jal func_80070750 -/* 038014 80037414 46006307 */ neg.s $f12, $f12 -/* 038018 80037418 86230002 */ lh $v1, 2($s1) -/* 03801C 8003741C 8FAE0074 */ lw $t6, 0x74($sp) -/* 038020 80037420 00432023 */ subu $a0, $v0, $v1 -/* 038024 80037424 00622823 */ subu $a1, $v1, $v0 -/* 038028 80037428 3099FFFF */ andi $t9, $a0, 0xffff -/* 03802C 8003742C 30A9FFFF */ andi $t1, $a1, 0xffff -/* 038030 80037430 0329082A */ slt $at, $t9, $t1 -/* 038034 80037434 10200009 */ beqz $at, .L8003745C -/* 038038 80037438 01202825 */ move $a1, $t1 -/* 03803C 8003743C 8FAA0074 */ lw $t2, 0x74($sp) -/* 038040 80037440 00000000 */ nop -/* 038044 80037444 032A0019 */ multu $t9, $t2 -/* 038048 80037448 00005812 */ mflo $t3 -/* 03804C 8003744C 000B60C3 */ sra $t4, $t3, 3 -/* 038050 80037450 006C6821 */ addu $t5, $v1, $t4 -/* 038054 80037454 10000006 */ b .L80037470 -/* 038058 80037458 A62D0002 */ sh $t5, 2($s1) -.L8003745C: -/* 03805C 8003745C 00AE0019 */ multu $a1, $t6 -/* 038060 80037460 0000C012 */ mflo $t8 -/* 038064 80037464 001878C3 */ sra $t7, $t8, 3 -/* 038068 80037468 006F4023 */ subu $t0, $v1, $t7 -/* 03806C 8003746C A6280002 */ sh $t0, 2($s1) -.L80037470: -/* 038070 80037470 921900FC */ lbu $t9, 0xfc($s0) -/* 038074 80037474 24090001 */ li $t1, 1 -/* 038078 80037478 01395023 */ subu $t2, $t1, $t9 -/* 03807C 8003747C 314B00FF */ andi $t3, $t2, 0xff -/* 038080 80037480 000B6080 */ sll $t4, $t3, 2 -/* 038084 80037484 018B6023 */ subu $t4, $t4, $t3 -/* 038088 80037488 000C6040 */ sll $t4, $t4, 1 -/* 03808C 8003748C 000C6880 */ sll $t5, $t4, 2 -/* 038090 80037490 01AC6821 */ addu $t5, $t5, $t4 -/* 038094 80037494 000D6840 */ sll $t5, $t5, 1 -/* 038098 80037498 020D1821 */ addu $v1, $s0, $t5 -/* 03809C 8003749C A20A00FC */ sb $t2, 0xfc($s0) -/* 0380A0 800374A0 24630080 */ addiu $v1, $v1, 0x80 -/* 0380A4 800374A4 86040106 */ lh $a0, 0x106($s0) -/* 0380A8 800374A8 0C01C20C */ jal func_80070830 -/* 0380AC 800374AC AFA30028 */ sw $v1, 0x28($sp) -/* 0380B0 800374B0 000288C3 */ sra $s1, $v0, 3 -/* 0380B4 800374B4 00112400 */ sll $a0, $s1, 0x10 -/* 0380B8 800374B8 00047403 */ sra $t6, $a0, 0x10 -/* 0380BC 800374BC 0C01C1FE */ jal func_800707F8 -/* 0380C0 800374C0 01C02025 */ move $a0, $t6 -/* 0380C4 800374C4 3C014200 */ li $at, 0x42000000 # 32.000000 -/* 0380C8 800374C8 44813000 */ mtc1 $at, $f6 -/* 0380CC 800374CC 00112400 */ sll $a0, $s1, 0x10 -/* 0380D0 800374D0 46060282 */ mul.s $f10, $f0, $f6 -/* 0380D4 800374D4 00047C03 */ sra $t7, $a0, 0x10 -/* 0380D8 800374D8 01E02025 */ move $a0, $t7 -/* 0380DC 800374DC 4458F800 */ cfc1 $t8, $31 -/* 0380E0 800374E0 00000000 */ nop -/* 0380E4 800374E4 37010003 */ ori $at, $t8, 3 -/* 0380E8 800374E8 38210002 */ xori $at, $at, 2 -/* 0380EC 800374EC 44C1F800 */ ctc1 $at, $31 -/* 0380F0 800374F0 00000000 */ nop -/* 0380F4 800374F4 46005224 */ cvt.w.s $f8, $f10 -/* 0380F8 800374F8 44104000 */ mfc1 $s0, $f8 -/* 0380FC 800374FC 44D8F800 */ ctc1 $t8, $31 -/* 038100 80037500 0C01C1F1 */ jal func_800707C4 -/* 038104 80037504 00000000 */ nop -/* 038108 80037508 3C014200 */ li $at, 0x42000000 # 32.000000 -/* 03810C 8003750C 44812000 */ mtc1 $at, $f4 -/* 038110 80037510 8FA30028 */ lw $v1, 0x28($sp) -/* 038114 80037514 46040182 */ mul.s $f6, $f0, $f4 -/* 038118 80037518 84690014 */ lh $t1, 0x14($v1) -/* 03811C 8003751C 846A0018 */ lh $t2, 0x18($v1) -/* 038120 80037520 846C001E */ lh $t4, 0x1e($v1) -/* 038124 80037524 4448F800 */ cfc1 $t0, $31 -/* 038128 80037528 846E0022 */ lh $t6, 0x22($v1) -/* 03812C 8003752C 35010003 */ ori $at, $t0, 3 -/* 038130 80037530 38210002 */ xori $at, $at, 2 -/* 038134 80037534 44C1F800 */ ctc1 $at, $31 -/* 038138 80037538 01505821 */ addu $t3, $t2, $s0 -/* 03813C 8003753C 460032A4 */ cvt.w.s $f10, $f6 -/* 038140 80037540 01D0C021 */ addu $t8, $t6, $s0 -/* 038144 80037544 44025000 */ mfc1 $v0, $f10 -/* 038148 80037548 44C8F800 */ ctc1 $t0, $31 -/* 03814C 8003754C 0122C821 */ addu $t9, $t1, $v0 -/* 038150 80037550 01826821 */ addu $t5, $t4, $v0 -/* 038154 80037554 A4790028 */ sh $t9, 0x28($v1) -/* 038158 80037558 A46B002C */ sh $t3, 0x2c($v1) -/* 03815C 8003755C A46D0032 */ sh $t5, 0x32($v1) -/* 038160 80037560 A4780036 */ sh $t8, 0x36($v1) -/* 038164 80037564 8FBF001C */ lw $ra, 0x1c($sp) -.L80037568: -/* 038168 80037568 8FB00014 */ lw $s0, 0x14($sp) -/* 03816C 8003756C 8FB10018 */ lw $s1, 0x18($sp) -/* 038170 80037570 03E00008 */ jr $ra -/* 038174 80037574 27BD0070 */ addiu $sp, $sp, 0x70 - -glabel func_80037578 -/* 038178 80037578 90AE0009 */ lbu $t6, 9($a1) -/* 03817C 8003757C 00000000 */ nop -/* 038180 80037580 000E7840 */ sll $t7, $t6, 1 -/* 038184 80037584 AC8F0078 */ sw $t7, 0x78($a0) -/* 038188 80037588 90B80008 */ lbu $t8, 8($a1) -/* 03818C 8003758C 03E00008 */ jr $ra -/* 038190 80037590 AC98007C */ sw $t8, 0x7c($a0) - -glabel func_80037594 -/* 038194 80037594 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 038198 80037598 AFBF0014 */ sw $ra, 0x14($sp) -/* 03819C 8003759C 8C820078 */ lw $v0, 0x78($a0) -/* 0381A0 800375A0 00803025 */ move $a2, $a0 -/* 0381A4 800375A4 18400007 */ blez $v0, .L800375C4 -/* 0381A8 800375A8 00055080 */ sll $t2, $a1, 2 -/* 0381AC 800375AC 848F0006 */ lh $t7, 6($a0) -/* 0381B0 800375B0 00457023 */ subu $t6, $v0, $a1 -/* 0381B4 800375B4 35F84000 */ ori $t8, $t7, 0x4000 -/* 0381B8 800375B8 AC8E0078 */ sw $t6, 0x78($a0) -/* 0381BC 800375BC 10000015 */ b .L80037614 -/* 0381C0 800375C0 A4980006 */ sh $t8, 6($a0) -.L800375C4: -/* 0381C4 800375C4 84C90018 */ lh $t1, 0x18($a2) -/* 0381C8 800375C8 84D90006 */ lh $t9, 6($a2) -/* 0381CC 800375CC 012A5821 */ addu $t3, $t1, $t2 -/* 0381D0 800375D0 A4CB0018 */ sh $t3, 0x18($a2) -/* 0381D4 800375D4 84CC0018 */ lh $t4, 0x18($a2) -/* 0381D8 800375D8 3328BFFF */ andi $t0, $t9, 0xbfff -/* 0381DC 800375DC 29810100 */ slti $at, $t4, 0x100 -/* 0381E0 800375E0 1420000C */ bnez $at, .L80037614 -/* 0381E4 800375E4 A4C80006 */ sh $t0, 6($a2) -/* 0381E8 800375E8 A4C00018 */ sh $zero, 0x18($a2) -/* 0381EC 800375EC AFA60018 */ sw $a2, 0x18($sp) -/* 0381F0 800375F0 00002025 */ move $a0, $zero -/* 0381F4 800375F4 0C01BE53 */ jal func_8006F94C -/* 0381F8 800375F8 2405001E */ li $a1, 30 -/* 0381FC 800375FC 8FA60018 */ lw $a2, 0x18($sp) -/* 038200 80037600 00000000 */ nop -/* 038204 80037604 8CCD007C */ lw $t5, 0x7c($a2) -/* 038208 80037608 00000000 */ nop -/* 03820C 8003760C 004D7021 */ addu $t6, $v0, $t5 -/* 038210 80037610 ACCE0078 */ sw $t6, 0x78($a2) -.L80037614: -/* 038214 80037614 8FBF0014 */ lw $ra, 0x14($sp) -/* 038218 80037618 27BD0018 */ addiu $sp, $sp, 0x18 -/* 03821C 8003761C 03E00008 */ jr $ra -/* 038220 80037620 00000000 */ nop - -glabel func_80037624 -/* 038224 80037624 AFA50004 */ sw $a1, 4($sp) -/* 038228 80037628 848E0006 */ lh $t6, 6($a0) -/* 03822C 8003762C 00000000 */ nop -/* 038230 80037630 35CF4000 */ ori $t7, $t6, 0x4000 -/* 038234 80037634 03E00008 */ jr $ra -/* 038238 80037638 A48F0006 */ sh $t7, 6($a0) - -glabel func_8003763C -/* 03823C 8003763C 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 038240 80037640 AFBF0014 */ sw $ra, 0x14($sp) -/* 038244 80037644 AFA40030 */ sw $a0, 0x30($sp) -/* 038248 80037648 AFA50034 */ sw $a1, 0x34($sp) -/* 03824C 8003764C 848E0006 */ lh $t6, 6($a0) -/* 038250 80037650 00802825 */ move $a1, $a0 -/* 038254 80037654 35CF4000 */ ori $t7, $t6, 0x4000 -/* 038258 80037658 A48F0006 */ sh $t7, 6($a0) -/* 03825C 8003765C AFA50030 */ sw $a1, 0x30($sp) -/* 038260 80037660 0C006EAB */ jal func_8001BAAC -/* 038264 80037664 27A40020 */ addiu $a0, $sp, 0x20 -/* 038268 80037668 8FA50030 */ lw $a1, 0x30($sp) -/* 03826C 8003766C 8FB80020 */ lw $t8, 0x20($sp) -/* 038270 80037670 8CA30078 */ lw $v1, 0x78($a1) -/* 038274 80037674 00000000 */ nop -/* 038278 80037678 0078082A */ slt $at, $v1, $t8 -/* 03827C 8003767C 10200014 */ beqz $at, .L800376D0 -/* 038280 80037680 0003C880 */ sll $t9, $v1, 2 -/* 038284 80037684 00594021 */ addu $t0, $v0, $t9 -/* 038288 80037688 8D040000 */ lw $a0, ($t0) -/* 03828C 8003768C 2401FFFF */ li $at, -1 -/* 038290 80037690 8C860064 */ lw $a2, 0x64($a0) -/* 038294 80037694 00000000 */ nop -/* 038298 80037698 84C90000 */ lh $t1, ($a2) -/* 03829C 8003769C 00000000 */ nop -/* 0382A0 800376A0 15210009 */ bne $t1, $at, .L800376C8 -/* 0382A4 800376A4 000361C0 */ sll $t4, $v1, 7 -/* 0382A8 800376A8 84AA0006 */ lh $t2, 6($a1) -/* 0382AC 800376AC 00000000 */ nop -/* 0382B0 800376B0 314BBFFF */ andi $t3, $t2, 0xbfff -/* 0382B4 800376B4 A4AB0006 */ sh $t3, 6($a1) -/* 0382B8 800376B8 ACC50150 */ sw $a1, 0x150($a2) -/* 0382BC 800376BC 8CA30078 */ lw $v1, 0x78($a1) -/* 0382C0 800376C0 00000000 */ nop -/* 0382C4 800376C4 000361C0 */ sll $t4, $v1, 7 -.L800376C8: -/* 0382C8 800376C8 01836023 */ subu $t4, $t4, $v1 -/* 0382CC 800376CC A4AC0018 */ sh $t4, 0x18($a1) -.L800376D0: -/* 0382D0 800376D0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0382D4 800376D4 27BD0030 */ addiu $sp, $sp, 0x30 -/* 0382D8 800376D8 03E00008 */ jr $ra -/* 0382DC 800376DC 00000000 */ nop - -glabel func_800376E0 -/* 0382E0 800376E0 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0382E4 800376E4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0382E8 800376E8 AFA60028 */ sw $a2, 0x28($sp) -/* 0382EC 800376EC 8C830064 */ lw $v1, 0x64($a0) -/* 0382F0 800376F0 AFA40020 */ sw $a0, 0x20($sp) -/* 0382F4 800376F4 AFA50024 */ sw $a1, 0x24($sp) -/* 0382F8 800376F8 0C00B1F1 */ jal func_8002C7C4 -/* 0382FC 800376FC AFA3001C */ sw $v1, 0x1c($sp) -/* 038300 80037700 8FA50024 */ lw $a1, 0x24($sp) -/* 038304 80037704 AFA20018 */ sw $v0, 0x18($sp) -/* 038308 80037708 8FA3001C */ lw $v1, 0x1c($sp) -/* 03830C 8003770C 80AE0008 */ lb $t6, 8($a1) -/* 038310 80037710 8FA70020 */ lw $a3, 0x20($sp) -/* 038314 80037714 A46E0002 */ sh $t6, 2($v1) -/* 038318 80037718 80AF0009 */ lb $t7, 9($a1) -/* 03831C 8003771C 00000000 */ nop -/* 038320 80037720 A46F0004 */ sh $t7, 4($v1) -/* 038324 80037724 80B8000A */ lb $t8, 0xa($a1) -/* 038328 80037728 00000000 */ nop -/* 03832C 8003772C A4780006 */ sh $t8, 6($v1) -/* 038330 80037730 8CE60014 */ lw $a2, 0x14($a3) -/* 038334 80037734 C4EE0010 */ lwc1 $f14, 0x10($a3) -/* 038338 80037738 C4EC000C */ lwc1 $f12, 0xc($a3) -/* 03833C 8003773C 0C00A7C6 */ jal func_80029F18 -/* 038340 80037740 00000000 */ nop -/* 038344 80037744 8FA3001C */ lw $v1, 0x1c($sp) -/* 038348 80037748 8FA70020 */ lw $a3, 0x20($sp) -/* 03834C 8003774C A4620000 */ sh $v0, ($v1) -/* 038350 80037750 8FB90028 */ lw $t9, 0x28($sp) -/* 038354 80037754 00000000 */ nop -/* 038358 80037758 17200003 */ bnez $t9, .L80037768 -/* 03835C 8003775C 00000000 */ nop -/* 038360 80037760 A4600008 */ sh $zero, 8($v1) -/* 038364 80037764 A460000A */ sh $zero, 0xa($v1) -.L80037768: -/* 038368 80037768 84620000 */ lh $v0, ($v1) -/* 03836C 8003776C 2401FFFF */ li $at, -1 -/* 038370 80037770 10410016 */ beq $v0, $at, .L800377CC -/* 038374 80037774 00E02025 */ move $a0, $a3 -/* 038378 80037778 84640002 */ lh $a0, 2($v1) -/* 03837C 8003777C 00000000 */ nop -/* 038380 80037780 04810006 */ bgez $a0, .L8003779C -/* 038384 80037784 8FA80018 */ lw $t0, 0x18($sp) -/* 038388 80037788 A4600002 */ sh $zero, 2($v1) -/* 03838C 8003778C 84640002 */ lh $a0, 2($v1) -/* 038390 80037790 84620000 */ lh $v0, ($v1) -/* 038394 80037794 00000000 */ nop -/* 038398 80037798 8FA80018 */ lw $t0, 0x18($sp) -.L8003779C: -/* 03839C 8003779C 00025100 */ sll $t2, $v0, 4 -/* 0383A0 800377A0 8D090004 */ lw $t1, 4($t0) -/* 0383A4 800377A4 01425021 */ addu $t2, $t2, $v0 -/* 0383A8 800377A8 000A5080 */ sll $t2, $t2, 2 -/* 0383AC 800377AC 012A5821 */ addu $t3, $t1, $t2 -/* 0383B0 800377B0 85650020 */ lh $a1, 0x20($t3) -/* 0383B4 800377B4 00000000 */ nop -/* 0383B8 800377B8 0085082A */ slt $at, $a0, $a1 -/* 0383BC 800377BC 14200002 */ bnez $at, .L800377C8 -/* 0383C0 800377C0 24ACFFFF */ addiu $t4, $a1, -1 -/* 0383C4 800377C4 A46C0002 */ sh $t4, 2($v1) -.L800377C8: -/* 0383C8 800377C8 00E02025 */ move $a0, $a3 -.L800377CC: -/* 0383CC 800377CC 0C00DDF9 */ jal func_800377E4 -/* 0383D0 800377D0 3C050002 */ lui $a1, 2 -/* 0383D4 800377D4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0383D8 800377D8 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0383DC 800377DC 03E00008 */ jr $ra -/* 0383E0 800377E0 00000000 */ nop - -glabel func_800377E4 -/* 0383E4 800377E4 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 0383E8 800377E8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0383EC 800377EC 8C830064 */ lw $v1, 0x64($a0) -/* 0383F0 800377F0 2401FFFF */ li $at, -1 -/* 0383F4 800377F4 84680004 */ lh $t0, 4($v1) -/* 0383F8 800377F8 84690006 */ lh $t1, 6($v1) -/* 0383FC 800377FC 01050019 */ multu $t0, $a1 -/* 038400 80037800 84780008 */ lh $t8, 8($v1) -/* 038404 80037804 00004012 */ mflo $t0 -/* 038408 80037808 00087100 */ sll $t6, $t0, 4 -/* 03840C 8003780C 030EC821 */ addu $t9, $t8, $t6 -/* 038410 80037810 01250019 */ multu $t1, $a1 -/* 038414 80037814 846E000A */ lh $t6, 0xa($v1) -/* 038418 80037818 A4790008 */ sh $t9, 8($v1) -/* 03841C 8003781C 84620008 */ lh $v0, 8($v1) -/* 038420 80037820 00000000 */ nop -/* 038424 80037824 3058000F */ andi $t8, $v0, 0xf -/* 038428 80037828 A4780008 */ sh $t8, 8($v1) -/* 03842C 8003782C 00024103 */ sra $t0, $v0, 4 -/* 038430 80037830 00004812 */ mflo $t1 -/* 038434 80037834 00097900 */ sll $t7, $t1, 4 -/* 038438 80037838 01CF7821 */ addu $t7, $t6, $t7 -/* 03843C 8003783C A46F000A */ sh $t7, 0xa($v1) -/* 038440 80037840 8466000A */ lh $a2, 0xa($v1) -/* 038444 80037844 846E0000 */ lh $t6, ($v1) -/* 038448 80037848 30D9000F */ andi $t9, $a2, 0xf -/* 03844C 8003784C A479000A */ sh $t9, 0xa($v1) -/* 038450 80037850 11C1006D */ beq $t6, $at, .L80037A08 -/* 038454 80037854 00064903 */ sra $t1, $a2, 4 -/* 038458 80037858 AFA3003C */ sw $v1, 0x3c($sp) -/* 03845C 8003785C AFA80020 */ sw $t0, 0x20($sp) -/* 038460 80037860 0C00B1F1 */ jal func_8002C7C4 -/* 038464 80037864 AFA9001C */ sw $t1, 0x1c($sp) -/* 038468 80037868 8FA3003C */ lw $v1, 0x3c($sp) -/* 03846C 8003786C 8C4F0004 */ lw $t7, 4($v0) -/* 038470 80037870 84780000 */ lh $t8, ($v1) -/* 038474 80037874 8FA80020 */ lw $t0, 0x20($sp) -/* 038478 80037878 0018C900 */ sll $t9, $t8, 4 -/* 03847C 8003787C 0338C821 */ addu $t9, $t9, $t8 -/* 038480 80037880 84780002 */ lh $t8, 2($v1) -/* 038484 80037884 0019C880 */ sll $t9, $t9, 2 -/* 038488 80037888 01F95021 */ addu $t2, $t7, $t9 -/* 03848C 8003788C 00187880 */ sll $t7, $t8, 2 -/* 038490 80037890 8D4E000C */ lw $t6, 0xc($t2) -/* 038494 80037894 01F87823 */ subu $t7, $t7, $t8 -/* 038498 80037898 000F7880 */ sll $t7, $t7, 2 -/* 03849C 8003789C 01CF2021 */ addu $a0, $t6, $t7 -/* 0384A0 800378A0 908D0000 */ lbu $t5, ($a0) -/* 0384A4 800378A4 8FA9001C */ lw $t1, 0x1c($sp) -/* 0384A8 800378A8 848C0004 */ lh $t4, 4($a0) -/* 0384AC 800378AC 848B0010 */ lh $t3, 0x10($a0) -/* 0384B0 800378B0 240100FF */ li $at, 255 -/* 0384B4 800378B4 11A10055 */ beq $t5, $at, .L80037A0C -/* 0384B8 800378B8 8FBF0014 */ lw $ra, 0x14($sp) -/* 0384BC 800378BC 8C590000 */ lw $t9, ($v0) -/* 0384C0 800378C0 000DC0C0 */ sll $t8, $t5, 3 -/* 0384C4 800378C4 03387021 */ addu $t6, $t9, $t8 -/* 0384C8 800378C8 8DC70000 */ lw $a3, ($t6) -/* 0384CC 800378CC 018B082A */ slt $at, $t4, $t3 -/* 0384D0 800378D0 90E30000 */ lbu $v1, ($a3) -/* 0384D4 800378D4 01803025 */ move $a2, $t4 -/* 0384D8 800378D8 000329C0 */ sll $a1, $v1, 7 -/* 0384DC 800378DC 1020004A */ beqz $at, .L80037A08 -/* 0384E0 800378E0 00A02025 */ move $a0, $a1 -.L800378E4: -/* 0384E4 800378E4 8D590004 */ lw $t9, 4($t2) -/* 0384E8 800378E8 0006C100 */ sll $t8, $a2, 4 -/* 0384EC 800378EC 03381021 */ addu $v0, $t9, $t8 -/* 0384F0 800378F0 904E0000 */ lbu $t6, ($v0) -/* 0384F4 800378F4 24C60001 */ addiu $a2, $a2, 1 -/* 0384F8 800378F8 31CF0080 */ andi $t7, $t6, 0x80 -/* 0384FC 800378FC 15E00040 */ bnez $t7, .L80037A00 -/* 038500 80037900 00000000 */ nop -/* 038504 80037904 84430006 */ lh $v1, 6($v0) -/* 038508 80037908 0005C840 */ sll $t9, $a1, 1 -/* 03850C 8003790C 0323082A */ slt $at, $t9, $v1 -/* 038510 80037910 1020000A */ beqz $at, .L8003793C -/* 038514 80037914 00043840 */ sll $a3, $a0, 1 -/* 038518 80037918 0065C023 */ subu $t8, $v1, $a1 -/* 03851C 8003791C 844E000A */ lh $t6, 0xa($v0) -/* 038520 80037920 8459000E */ lh $t9, 0xe($v0) -/* 038524 80037924 A4580006 */ sh $t8, 6($v0) -/* 038528 80037928 01C57823 */ subu $t7, $t6, $a1 -/* 03852C 8003792C 0325C023 */ subu $t8, $t9, $a1 -/* 038530 80037930 84430006 */ lh $v1, 6($v0) -/* 038534 80037934 A44F000A */ sh $t7, 0xa($v0) -/* 038538 80037938 A458000E */ sh $t8, 0xe($v0) -.L8003793C: -/* 03853C 8003793C 04610008 */ bgez $v1, .L80037960 -/* 038540 80037940 00657021 */ addu $t6, $v1, $a1 -/* 038544 80037944 844F000A */ lh $t7, 0xa($v0) -/* 038548 80037948 8458000E */ lh $t8, 0xe($v0) -/* 03854C 8003794C A44E0006 */ sh $t6, 6($v0) -/* 038550 80037950 01E5C821 */ addu $t9, $t7, $a1 -/* 038554 80037954 03057021 */ addu $t6, $t8, $a1 -/* 038558 80037958 A459000A */ sh $t9, 0xa($v0) -/* 03855C 8003795C A44E000E */ sh $t6, 0xe($v0) -.L80037960: -/* 038560 80037960 84430004 */ lh $v1, 4($v0) -/* 038564 80037964 00000000 */ nop -/* 038568 80037968 00E3082A */ slt $at, $a3, $v1 -/* 03856C 8003796C 10200009 */ beqz $at, .L80037994 -/* 038570 80037970 00647823 */ subu $t7, $v1, $a0 -/* 038574 80037974 84590008 */ lh $t9, 8($v0) -/* 038578 80037978 844E000C */ lh $t6, 0xc($v0) -/* 03857C 8003797C A44F0004 */ sh $t7, 4($v0) -/* 038580 80037980 0324C023 */ subu $t8, $t9, $a0 -/* 038584 80037984 01C47823 */ subu $t7, $t6, $a0 -/* 038588 80037988 84430004 */ lh $v1, 4($v0) -/* 03858C 8003798C A4580008 */ sh $t8, 8($v0) -/* 038590 80037990 A44F000C */ sh $t7, 0xc($v0) -.L80037994: -/* 038594 80037994 04610009 */ bgez $v1, .L800379BC -/* 038598 80037998 0064C821 */ addu $t9, $v1, $a0 -/* 03859C 8003799C 84580008 */ lh $t8, 8($v0) -/* 0385A0 800379A0 844F000C */ lh $t7, 0xc($v0) -/* 0385A4 800379A4 A4590004 */ sh $t9, 4($v0) -/* 0385A8 800379A8 03047021 */ addu $t6, $t8, $a0 -/* 0385AC 800379AC 01E4C821 */ addu $t9, $t7, $a0 -/* 0385B0 800379B0 84430004 */ lh $v1, 4($v0) -/* 0385B4 800379B4 A44E0008 */ sh $t6, 8($v0) -/* 0385B8 800379B8 A459000C */ sh $t9, 0xc($v0) -.L800379BC: -/* 0385BC 800379BC 84580006 */ lh $t8, 6($v0) -/* 0385C0 800379C0 844F000A */ lh $t7, 0xa($v0) -/* 0385C4 800379C4 03097021 */ addu $t6, $t8, $t1 -/* 0385C8 800379C8 8458000E */ lh $t8, 0xe($v0) -/* 0385CC 800379CC A44E0006 */ sh $t6, 6($v0) -/* 0385D0 800379D0 01E9C821 */ addu $t9, $t7, $t1 -/* 0385D4 800379D4 03097021 */ addu $t6, $t8, $t1 -/* 0385D8 800379D8 A459000A */ sh $t9, 0xa($v0) -/* 0385DC 800379DC A44E000E */ sh $t6, 0xe($v0) -/* 0385E0 800379E0 84590008 */ lh $t9, 8($v0) -/* 0385E4 800379E4 844E000C */ lh $t6, 0xc($v0) -/* 0385E8 800379E8 00687821 */ addu $t7, $v1, $t0 -/* 0385EC 800379EC A44F0004 */ sh $t7, 4($v0) -/* 0385F0 800379F0 0328C021 */ addu $t8, $t9, $t0 -/* 0385F4 800379F4 01C87821 */ addu $t7, $t6, $t0 -/* 0385F8 800379F8 A4580008 */ sh $t8, 8($v0) -/* 0385FC 800379FC A44F000C */ sh $t7, 0xc($v0) -.L80037A00: -/* 038600 80037A00 14CBFFB8 */ bne $a2, $t3, .L800378E4 -/* 038604 80037A04 00000000 */ nop -.L80037A08: -/* 038608 80037A08 8FBF0014 */ lw $ra, 0x14($sp) -.L80037A0C: -/* 03860C 80037A0C 27BD0048 */ addiu $sp, $sp, 0x48 -/* 038610 80037A10 03E00008 */ jr $ra -/* 038614 80037A14 00000000 */ nop - -glabel func_80037A18 -/* 038618 80037A18 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 03861C 80037A1C AFBF001C */ sw $ra, 0x1c($sp) -/* 038620 80037A20 AFB00018 */ sw $s0, 0x18($sp) -/* 038624 80037A24 AFA60030 */ sw $a2, 0x30($sp) -/* 038628 80037A28 90AF000B */ lbu $t7, 0xb($a1) -/* 03862C 80037A2C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 038630 80037A30 448F2000 */ mtc1 $t7, $f4 -/* 038634 80037A34 44811000 */ mtc1 $at, $f2 -/* 038638 80037A38 46802020 */ cvt.s.w $f0, $f4 -/* 03863C 80037A3C 3C014280 */ li $at, 0x42800000 # 64.000000 -/* 038640 80037A40 44813000 */ mtc1 $at, $f6 -/* 038644 80037A44 4602003C */ c.lt.s $f0, $f2 -/* 038648 80037A48 00808025 */ move $s0, $a0 -/* 03864C 80037A4C 45000002 */ bc1f .L80037A58 -/* 038650 80037A50 00A03825 */ move $a3, $a1 -/* 038654 80037A54 46001006 */ mov.s $f0, $f2 -.L80037A58: -/* 038658 80037A58 00000000 */ nop -/* 03865C 80037A5C 46060003 */ div.s $f0, $f0, $f6 -/* 038660 80037A60 8E180040 */ lw $t8, 0x40($s0) -/* 038664 80037A64 2401FFFE */ li $at, -2 -/* 038668 80037A68 C708000C */ lwc1 $f8, 0xc($t8) -/* 03866C 80037A6C 00000000 */ nop -/* 038670 80037A70 46004282 */ mul.s $f10, $f8, $f0 -/* 038674 80037A74 E60A0008 */ swc1 $f10, 8($s0) -/* 038678 80037A78 90F9000A */ lbu $t9, 0xa($a3) -/* 03867C 80037A7C 00000000 */ nop -/* 038680 80037A80 00194200 */ sll $t0, $t9, 8 -/* 038684 80037A84 A6080000 */ sh $t0, ($s0) -/* 038688 80037A88 90E90009 */ lbu $t1, 9($a3) -/* 03868C 80037A8C 00000000 */ nop -/* 038690 80037A90 00095200 */ sll $t2, $t1, 8 -/* 038694 80037A94 A60A0002 */ sh $t2, 2($s0) -/* 038698 80037A98 90EB0008 */ lbu $t3, 8($a3) -/* 03869C 80037A9C 00000000 */ nop -/* 0386A0 80037AA0 000B6200 */ sll $t4, $t3, 8 -/* 0386A4 80037AA4 A60C0004 */ sh $t4, 4($s0) -/* 0386A8 80037AA8 80E40010 */ lb $a0, 0x10($a3) -/* 0386AC 80037AAC 00000000 */ nop -/* 0386B0 80037AB0 14810006 */ bne $a0, $at, .L80037ACC -/* 0386B4 80037AB4 00000000 */ nop -/* 0386B8 80037AB8 0C007CEE */ jal func_8001F3B8 -/* 0386BC 80037ABC AFA7002C */ sw $a3, 0x2c($sp) -/* 0386C0 80037AC0 8FA7002C */ lw $a3, 0x2c($sp) -/* 0386C4 80037AC4 1000000C */ b .L80037AF8 -/* 0386C8 80037AC8 A0E20010 */ sb $v0, 0x10($a3) -.L80037ACC: -/* 0386CC 80037ACC 04810006 */ bgez $a0, .L80037AE8 -/* 0386D0 80037AD0 2881FFFE */ slti $at, $a0, -2 -/* 0386D4 80037AD4 14200004 */ bnez $at, .L80037AE8 -/* 0386D8 80037AD8 00000000 */ nop -/* 0386DC 80037ADC A0E00010 */ sb $zero, 0x10($a3) -/* 0386E0 80037AE0 80E40010 */ lb $a0, 0x10($a3) -/* 0386E4 80037AE4 00000000 */ nop -.L80037AE8: -/* 0386E8 80037AE8 0C007CF2 */ jal func_8001F3C8 -/* 0386EC 80037AEC AFA7002C */ sw $a3, 0x2c($sp) -/* 0386F0 80037AF0 8FA7002C */ lw $a3, 0x2c($sp) -/* 0386F4 80037AF4 00000000 */ nop -.L80037AF8: -/* 0386F8 80037AF8 80E30021 */ lb $v1, 0x21($a3) -/* 0386FC 80037AFC 2401FFFF */ li $at, -1 -/* 038700 80037B00 14610009 */ bne $v1, $at, .L80037B28 -/* 038704 80037B04 24010014 */ li $at, 20 -/* 038708 80037B08 0C007910 */ jal func_8001E440 -/* 03870C 80037B0C AFA7002C */ sw $a3, 0x2c($sp) -/* 038710 80037B10 8FA7002C */ lw $a3, 0x2c($sp) -/* 038714 80037B14 00000000 */ nop -/* 038718 80037B18 A0E20021 */ sb $v0, 0x21($a3) -/* 03871C 80037B1C 80E30021 */ lb $v1, 0x21($a3) -/* 038720 80037B20 00000000 */ nop -/* 038724 80037B24 24010014 */ li $at, 20 -.L80037B28: -/* 038728 80037B28 14610005 */ bne $v1, $at, .L80037B40 -/* 03872C 80037B2C 00000000 */ nop -/* 038730 80037B30 80ED0010 */ lb $t5, 0x10($a3) -/* 038734 80037B34 00000000 */ nop -/* 038738 80037B38 35AE0080 */ ori $t6, $t5, 0x80 -/* 03873C 80037B3C A0EE0010 */ sb $t6, 0x10($a3) -.L80037B40: -/* 038740 80037B40 80E40010 */ lb $a0, 0x10($a3) -/* 038744 80037B44 0C007CFB */ jal func_8001F3EC -/* 038748 80037B48 AFA7002C */ sw $a3, 0x2c($sp) -/* 03874C 80037B4C 8FA7002C */ lw $a3, 0x2c($sp) -/* 038750 80037B50 2401FFFE */ li $at, -2 -/* 038754 80037B54 80E30011 */ lb $v1, 0x11($a3) -/* 038758 80037B58 00000000 */ nop -/* 03875C 80037B5C 14610008 */ bne $v1, $at, .L80037B80 -/* 038760 80037B60 00000000 */ nop -/* 038764 80037B64 A0E20011 */ sb $v0, 0x11($a3) -/* 038768 80037B68 80EF0011 */ lb $t7, 0x11($a3) -/* 03876C 80037B6C 00000000 */ nop -/* 038770 80037B70 05E1000D */ bgez $t7, .L80037BA8 -/* 038774 80037B74 00000000 */ nop -/* 038778 80037B78 1000000B */ b .L80037BA8 -/* 03877C 80037B7C A0E00011 */ sb $zero, 0x11($a3) -.L80037B80: -/* 038780 80037B80 04400006 */ bltz $v0, .L80037B9C -/* 038784 80037B84 0062082A */ slt $at, $v1, $v0 -/* 038788 80037B88 14200004 */ bnez $at, .L80037B9C -/* 03878C 80037B8C 00000000 */ nop -/* 038790 80037B90 A0E20011 */ sb $v0, 0x11($a3) -/* 038794 80037B94 80E30011 */ lb $v1, 0x11($a3) -/* 038798 80037B98 00000000 */ nop -.L80037B9C: -/* 03879C 80037B9C 04610002 */ bgez $v1, .L80037BA8 -/* 0387A0 80037BA0 00000000 */ nop -/* 0387A4 80037BA4 A0E00011 */ sb $zero, 0x11($a3) -.L80037BA8: -/* 0387A8 80037BA8 0C0044E4 */ jal func_80011390 -/* 0387AC 80037BAC AFA7002C */ sw $a3, 0x2c($sp) -/* 0387B0 80037BB0 8FA7002C */ lw $a3, 0x2c($sp) -/* 0387B4 80037BB4 00002025 */ move $a0, $zero -/* 0387B8 80037BB8 80F80010 */ lb $t8, 0x10($a3) -/* 0387BC 80037BBC 00000000 */ nop -/* 0387C0 80037BC0 AE18007C */ sw $t8, 0x7c($s0) -/* 0387C4 80037BC4 8FB90030 */ lw $t9, 0x30($sp) -/* 0387C8 80037BC8 00000000 */ nop -/* 0387CC 80037BCC AE190078 */ sw $t9, 0x78($s0) -/* 0387D0 80037BD0 8FA80030 */ lw $t0, 0x30($sp) -/* 0387D4 80037BD4 00000000 */ nop -/* 0387D8 80037BD8 11000008 */ beqz $t0, .L80037BFC -/* 0387DC 80037BDC 00000000 */ nop -/* 0387E0 80037BE0 0C01A955 */ jal func_8006A554 -/* 0387E4 80037BE4 AFA7002C */ sw $a3, 0x2c($sp) -/* 0387E8 80037BE8 8FA7002C */ lw $a3, 0x2c($sp) -/* 0387EC 80037BEC 30490001 */ andi $t1, $v0, 1 -/* 0387F0 80037BF0 11200002 */ beqz $t1, .L80037BFC -/* 0387F4 80037BF4 240A0002 */ li $t2, 2 -/* 0387F8 80037BF8 AE0A0078 */ sw $t2, 0x78($s0) -.L80037BFC: -/* 0387FC 80037BFC 0C007910 */ jal func_8001E440 -/* 038800 80037C00 AFA7002C */ sw $a3, 0x2c($sp) -/* 038804 80037C04 8FA7002C */ lw $a3, 0x2c($sp) -/* 038808 80037C08 24010014 */ li $at, 20 -/* 03880C 80037C0C 80E30021 */ lb $v1, 0x21($a3) -/* 038810 80037C10 00000000 */ nop -/* 038814 80037C14 10430003 */ beq $v0, $v1, .L80037C24 -/* 038818 80037C18 00000000 */ nop -/* 03881C 80037C1C 14610012 */ bne $v1, $at, .L80037C68 -/* 038820 80037C20 00000000 */ nop -.L80037C24: -/* 038824 80037C24 8E0B0064 */ lw $t3, 0x64($s0) -/* 038828 80037C28 00000000 */ nop -/* 03882C 80037C2C 1560000E */ bnez $t3, .L80037C68 -/* 038830 80037C30 00000000 */ nop -/* 038834 80037C34 80EC0011 */ lb $t4, 0x11($a3) -/* 038838 80037C38 00000000 */ nop -/* 03883C 80037C3C 1580000A */ bnez $t4, .L80037C68 -/* 038840 80037C40 00000000 */ nop -/* 038844 80037C44 84ED000C */ lh $t5, 0xc($a3) -/* 038848 80037C48 2401FFFF */ li $at, -1 -/* 03884C 80037C4C 11A10006 */ beq $t5, $at, .L80037C68 -/* 038850 80037C50 02002025 */ move $a0, $s0 -/* 038854 80037C54 00E02825 */ move $a1, $a3 -/* 038858 80037C58 0C007C8F */ jal func_8001F23C -/* 03885C 80037C5C AFA7002C */ sw $a3, 0x2c($sp) -/* 038860 80037C60 8FA7002C */ lw $a3, 0x2c($sp) -/* 038864 80037C64 00000000 */ nop -.L80037C68: -/* 038868 80037C68 8E020064 */ lw $v0, 0x64($s0) -/* 03886C 80037C6C 02002025 */ move $a0, $s0 -/* 038870 80037C70 10400012 */ beqz $v0, .L80037CBC -/* 038874 80037C74 00402825 */ move $a1, $v0 -/* 038878 80037C78 AFA20024 */ sw $v0, 0x24($sp) -/* 03887C 80037C7C 0C007BE9 */ jal func_8001EFA4 -/* 038880 80037C80 AFA7002C */ sw $a3, 0x2c($sp) -/* 038884 80037C84 8FA7002C */ lw $a3, 0x2c($sp) -/* 038888 80037C88 8FA50024 */ lw $a1, 0x24($sp) -/* 03888C 80037C8C 80EE0011 */ lb $t6, 0x11($a3) -/* 038890 80037C90 00000000 */ nop -/* 038894 80037C94 15C00006 */ bnez $t6, .L80037CB0 -/* 038898 80037C98 00000000 */ nop -/* 03889C 80037C9C 84EF000C */ lh $t7, 0xc($a3) -/* 0388A0 80037CA0 84B8004A */ lh $t8, 0x4a($a1) -/* 0388A4 80037CA4 00000000 */ nop -/* 0388A8 80037CA8 11F80004 */ beq $t7, $t8, .L80037CBC -/* 0388AC 80037CAC 00000000 */ nop -.L80037CB0: -/* 0388B0 80037CB0 0C003FEE */ jal func_8000FFB8 -/* 0388B4 80037CB4 00A02025 */ move $a0, $a1 -/* 0388B8 80037CB8 AE000064 */ sw $zero, 0x64($s0) -.L80037CBC: -/* 0388BC 80037CBC 8E04007C */ lw $a0, 0x7c($s0) -/* 0388C0 80037CC0 0C008580 */ jal func_80021600 -/* 0388C4 80037CC4 00000000 */ nop -/* 0388C8 80037CC8 10400004 */ beqz $v0, .L80037CDC -/* 0388CC 80037CCC 8FBF001C */ lw $ra, 0x1c($sp) -/* 0388D0 80037CD0 0C007B9D */ jal func_8001EE74 -/* 0388D4 80037CD4 00000000 */ nop -/* 0388D8 80037CD8 8FBF001C */ lw $ra, 0x1c($sp) -.L80037CDC: -/* 0388DC 80037CDC 8FB00018 */ lw $s0, 0x18($sp) -/* 0388E0 80037CE0 03E00008 */ jr $ra -/* 0388E4 80037CE4 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_80037CE8 -/* 0388E8 80037CE8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0388EC 80037CEC AFBF0014 */ sw $ra, 0x14($sp) -/* 0388F0 80037CF0 0C007D18 */ jal func_8001F460 -/* 0388F4 80037CF4 00803025 */ move $a2, $a0 -/* 0388F8 80037CF8 8FBF0014 */ lw $ra, 0x14($sp) -/* 0388FC 80037CFC 27BD0018 */ addiu $sp, $sp, 0x18 -/* 038900 80037D00 03E00008 */ jr $ra -/* 038904 80037D04 00000000 */ nop - -glabel func_80037D08 -/* 038908 80037D08 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 03890C 80037D0C AFBF0014 */ sw $ra, 0x14($sp) -/* 038910 80037D10 8C8E0064 */ lw $t6, 0x64($a0) -/* 038914 80037D14 00803025 */ move $a2, $a0 -/* 038918 80037D18 0C007D18 */ jal func_8001F460 -/* 03891C 80037D1C AFAE0018 */ sw $t6, 0x18($sp) -/* 038920 80037D20 8FB80018 */ lw $t8, 0x18($sp) -/* 038924 80037D24 240F0001 */ li $t7, 1 -/* 038928 80037D28 8719002A */ lh $t9, 0x2a($t8) -/* 03892C 80037D2C 01E22023 */ subu $a0, $t7, $v0 -/* 038930 80037D30 1B200002 */ blez $t9, .L80037D3C -/* 038934 80037D34 00000000 */ nop -/* 038938 80037D38 00002025 */ move $a0, $zero -.L80037D3C: -/* 03893C 80037D3C 0C008D74 */ jal func_800235D0 -/* 038940 80037D40 00000000 */ nop -/* 038944 80037D44 8FBF0014 */ lw $ra, 0x14($sp) -/* 038948 80037D48 27BD0020 */ addiu $sp, $sp, 0x20 -/* 03894C 80037D4C 03E00008 */ jr $ra -/* 038950 80037D50 00000000 */ nop - -glabel func_80037D54 -/* 038954 80037D54 AFA40000 */ sw $a0, ($sp) -/* 038958 80037D58 03E00008 */ jr $ra -/* 03895C 80037D5C AFA50004 */ sw $a1, 4($sp) - -/* 038960 80037D60 AFA40000 */ sw $a0, ($sp) -/* 038964 80037D64 03E00008 */ jr $ra -/* 038968 80037D68 AFA50004 */ sw $a1, 4($sp) - -glabel func_80037D6C -/* 03896C 80037D6C AFA40000 */ sw $a0, ($sp) -/* 038970 80037D70 03E00008 */ jr $ra -/* 038974 80037D74 AFA50004 */ sw $a1, 4($sp) - -glabel func_80037D78 -/* 038978 80037D78 27BDFED8 */ addiu $sp, $sp, -0x128 -/* 03897C 80037D7C AFB00038 */ sw $s0, 0x38($sp) -/* 038980 80037D80 00808025 */ move $s0, $a0 -/* 038984 80037D84 AFBF005C */ sw $ra, 0x5c($sp) -/* 038988 80037D88 AFB1003C */ sw $s1, 0x3c($sp) -/* 03898C 80037D8C 00A08825 */ move $s1, $a1 -/* 038990 80037D90 AFBE0058 */ sw $fp, 0x58($sp) -/* 038994 80037D94 AFB70054 */ sw $s7, 0x54($sp) -/* 038998 80037D98 AFB60050 */ sw $s6, 0x50($sp) -/* 03899C 80037D9C AFB5004C */ sw $s5, 0x4c($sp) -/* 0389A0 80037DA0 AFB40048 */ sw $s4, 0x48($sp) -/* 0389A4 80037DA4 AFB30044 */ sw $s3, 0x44($sp) -/* 0389A8 80037DA8 AFB20040 */ sw $s2, 0x40($sp) -/* 0389AC 80037DAC E7B70030 */ swc1 $f23, 0x30($sp) -/* 0389B0 80037DB0 E7B60034 */ swc1 $f22, 0x34($sp) -/* 0389B4 80037DB4 E7B50028 */ swc1 $f21, 0x28($sp) -/* 0389B8 80037DB8 E7B4002C */ swc1 $f20, 0x2c($sp) -/* 0389BC 80037DBC 0C007D18 */ jal func_8001F460 -/* 0389C0 80037DC0 02003025 */ move $a2, $s0 -/* 0389C4 80037DC4 8E0E0068 */ lw $t6, 0x68($s0) -/* 0389C8 80037DC8 00000000 */ nop -/* 0389CC 80037DCC 8DC30000 */ lw $v1, ($t6) -/* 0389D0 80037DD0 00000000 */ nop -/* 0389D4 80037DD4 106000B9 */ beqz $v1, .L800380BC -/* 0389D8 80037DD8 8FBF005C */ lw $ra, 0x5c($sp) -/* 0389DC 80037DDC 8E02007C */ lw $v0, 0x7c($s0) -/* 0389E0 80037DE0 8C730000 */ lw $s3, ($v1) -/* 0389E4 80037DE4 18400003 */ blez $v0, .L80037DF4 -/* 0389E8 80037DE8 00517823 */ subu $t7, $v0, $s1 -/* 0389EC 80037DEC 10000002 */ b .L80037DF8 -/* 0389F0 80037DF0 AE0F007C */ sw $t7, 0x7c($s0) -.L80037DF4: -/* 0389F4 80037DF4 AE00007C */ sw $zero, 0x7c($s0) -.L80037DF8: -/* 0389F8 80037DF8 8E180060 */ lw $t8, 0x60($s0) -/* 0389FC 80037DFC 00000000 */ nop -/* 038A00 80037E00 130000AE */ beqz $t8, .L800380BC -/* 038A04 80037E04 8FBF005C */ lw $ra, 0x5c($sp) -/* 038A08 80037E08 8E19007C */ lw $t9, 0x7c($s0) -/* 038A0C 80037E0C 00000000 */ nop -/* 038A10 80037E10 172000AA */ bnez $t9, .L800380BC -/* 038A14 80037E14 8FBF005C */ lw $ra, 0x5c($sp) -/* 038A18 80037E18 8E090074 */ lw $t1, 0x74($s0) -/* 038A1C 80037E1C 240B0014 */ li $t3, 20 -/* 038A20 80037E20 312A0001 */ andi $t2, $t1, 1 -/* 038A24 80037E24 114000A4 */ beqz $t2, .L800380B8 -/* 038A28 80037E28 27A400CC */ addiu $a0, $sp, 0xcc -/* 038A2C 80037E2C AE0B007C */ sw $t3, 0x7c($s0) -/* 038A30 80037E30 0C01BF0C */ jal func_8006FC30 -/* 038A34 80037E34 02002825 */ move $a1, $s0 -/* 038A38 80037E38 4480A000 */ mtc1 $zero, $f20 -/* 038A3C 80037E3C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 038A40 80037E40 44812000 */ mtc1 $at, $f4 -/* 038A44 80037E44 E7B40078 */ swc1 $f20, 0x78($sp) -/* 038A48 80037E48 E7B4007C */ swc1 $f20, 0x7c($sp) -/* 038A4C 80037E4C E7B40080 */ swc1 $f20, 0x80($sp) -/* 038A50 80037E50 E7A40074 */ swc1 $f4, 0x74($sp) -/* 038A54 80037E54 860C0000 */ lh $t4, ($s0) -/* 038A58 80037E58 27B4008C */ addiu $s4, $sp, 0x8c -/* 038A5C 80037E5C A7AC006C */ sh $t4, 0x6c($sp) -/* 038A60 80037E60 860D0002 */ lh $t5, 2($s0) -/* 038A64 80037E64 A7A00070 */ sh $zero, 0x70($sp) -/* 038A68 80037E68 02802025 */ move $a0, $s4 -/* 038A6C 80037E6C 27A5006C */ addiu $a1, $sp, 0x6c -/* 038A70 80037E70 0C01BF0C */ jal func_8006FC30 -/* 038A74 80037E74 A7AD006E */ sh $t5, 0x6e($sp) -/* 038A78 80037E78 8E020060 */ lw $v0, 0x60($s0) -/* 038A7C 80037E7C 00008825 */ move $s1, $zero -/* 038A80 80037E80 8C4E0000 */ lw $t6, ($v0) -/* 038A84 80037E84 3C01C1F0 */ li $at, 0xC1F00000 # -30.000000 -/* 038A88 80037E88 19C0008B */ blez $t6, .L800380B8 -/* 038A8C 80037E8C 27BE0084 */ addiu $fp, $sp, 0x84 -/* 038A90 80037E90 4481B000 */ mtc1 $at, $f22 -/* 038A94 80037E94 27B70114 */ addiu $s7, $sp, 0x114 -/* 038A98 80037E98 27B60118 */ addiu $s6, $sp, 0x118 -/* 038A9C 80037E9C 27B5011C */ addiu $s5, $sp, 0x11c -/* 038AA0 80037EA0 2412000A */ li $s2, 10 -.L80037EA4: -/* 038AA4 80037EA4 8C4F002C */ lw $t7, 0x2c($v0) -/* 038AA8 80037EA8 00000000 */ nop -/* 038AAC 80037EAC 01F1C021 */ addu $t8, $t7, $s1 -/* 038AB0 80037EB0 83030000 */ lb $v1, ($t8) -/* 038AB4 80037EB4 00000000 */ nop -/* 038AB8 80037EB8 04600078 */ bltz $v1, .L8003809C -/* 038ABC 80037EBC 00000000 */ nop -/* 038AC0 80037EC0 86790018 */ lh $t9, 0x18($s3) -/* 038AC4 80037EC4 00000000 */ nop -/* 038AC8 80037EC8 0079082A */ slt $at, $v1, $t9 -/* 038ACC 80037ECC 10200073 */ beqz $at, .L8003809C -/* 038AD0 80037ED0 00000000 */ nop -/* 038AD4 80037ED4 8E080044 */ lw $t0, 0x44($s0) -/* 038AD8 80037ED8 00000000 */ nop -/* 038ADC 80037EDC 1100006F */ beqz $t0, .L8003809C -/* 038AE0 80037EE0 00000000 */ nop -/* 038AE4 80037EE4 8E690014 */ lw $t1, 0x14($s3) -/* 038AE8 80037EE8 00031040 */ sll $v0, $v1, 1 -/* 038AEC 80037EEC 01225021 */ addu $t2, $t1, $v0 -/* 038AF0 80037EF0 854B0000 */ lh $t3, ($t2) -/* 038AF4 80037EF4 27A400CC */ addiu $a0, $sp, 0xcc -/* 038AF8 80037EF8 01720019 */ multu $t3, $s2 -/* 038AFC 80037EFC 00006012 */ mflo $t4 -/* 038B00 80037F00 010C6821 */ addu $t5, $t0, $t4 -/* 038B04 80037F04 85AE0000 */ lh $t6, ($t5) -/* 038B08 80037F08 00000000 */ nop -/* 038B0C 80037F0C 448E3000 */ mtc1 $t6, $f6 -/* 038B10 80037F10 00000000 */ nop -/* 038B14 80037F14 46803220 */ cvt.s.w $f8, $f6 -/* 038B18 80037F18 E7A8011C */ swc1 $f8, 0x11c($sp) -/* 038B1C 80037F1C 8E780014 */ lw $t8, 0x14($s3) -/* 038B20 80037F20 8E0F0044 */ lw $t7, 0x44($s0) -/* 038B24 80037F24 0302C821 */ addu $t9, $t8, $v0 -/* 038B28 80037F28 87290000 */ lh $t1, ($t9) -/* 038B2C 80037F2C 8FA5011C */ lw $a1, 0x11c($sp) -/* 038B30 80037F30 01320019 */ multu $t1, $s2 -/* 038B34 80037F34 00005012 */ mflo $t2 -/* 038B38 80037F38 01EA5821 */ addu $t3, $t7, $t2 -/* 038B3C 80037F3C 856C0002 */ lh $t4, 2($t3) -/* 038B40 80037F40 00000000 */ nop -/* 038B44 80037F44 448C5000 */ mtc1 $t4, $f10 -/* 038B48 80037F48 00000000 */ nop -/* 038B4C 80037F4C 46805420 */ cvt.s.w $f16, $f10 -/* 038B50 80037F50 E7B00118 */ swc1 $f16, 0x118($sp) -/* 038B54 80037F54 8E6E0014 */ lw $t6, 0x14($s3) -/* 038B58 80037F58 8E0D0044 */ lw $t5, 0x44($s0) -/* 038B5C 80037F5C 01C2C021 */ addu $t8, $t6, $v0 -/* 038B60 80037F60 87190000 */ lh $t9, ($t8) -/* 038B64 80037F64 8FA60118 */ lw $a2, 0x118($sp) -/* 038B68 80037F68 03320019 */ multu $t9, $s2 -/* 038B6C 80037F6C 00004812 */ mflo $t1 -/* 038B70 80037F70 01A97821 */ addu $t7, $t5, $t1 -/* 038B74 80037F74 85EA0004 */ lh $t2, 4($t7) -/* 038B78 80037F78 AFB70018 */ sw $s7, 0x18($sp) -/* 038B7C 80037F7C 448A9000 */ mtc1 $t2, $f18 -/* 038B80 80037F80 AFB60014 */ sw $s6, 0x14($sp) -/* 038B84 80037F84 46809120 */ cvt.s.w $f4, $f18 -/* 038B88 80037F88 AFB50010 */ sw $s5, 0x10($sp) -/* 038B8C 80037F8C E7A40114 */ swc1 $f4, 0x114($sp) -/* 038B90 80037F90 8FA70114 */ lw $a3, 0x114($sp) -/* 038B94 80037F94 0C01BD93 */ jal func_8006F64C -/* 038B98 80037F98 00000000 */ nop -/* 038B9C 80037F9C 444BF800 */ cfc1 $t3, $31 -/* 038BA0 80037FA0 C7A6011C */ lwc1 $f6, 0x11c($sp) -/* 038BA4 80037FA4 35610003 */ ori $at, $t3, 3 -/* 038BA8 80037FA8 38210002 */ xori $at, $at, 2 -/* 038BAC 80037FAC 44C1F800 */ ctc1 $at, $31 -/* 038BB0 80037FB0 C7AA0118 */ lwc1 $f10, 0x118($sp) -/* 038BB4 80037FB4 46003224 */ cvt.w.s $f8, $f6 -/* 038BB8 80037FB8 C7B20114 */ lwc1 $f18, 0x114($sp) -/* 038BBC 80037FBC 44CBF800 */ ctc1 $t3, $31 -/* 038BC0 80037FC0 440C4000 */ mfc1 $t4, $f8 -/* 038BC4 80037FC4 24090008 */ li $t1, 8 -/* 038BC8 80037FC8 444EF800 */ cfc1 $t6, $31 -/* 038BCC 80037FCC 240F00C6 */ li $t7, 198 -/* 038BD0 80037FD0 35C10003 */ ori $at, $t6, 3 -/* 038BD4 80037FD4 38210002 */ xori $at, $at, 2 -/* 038BD8 80037FD8 44C1F800 */ ctc1 $at, $31 -/* 038BDC 80037FDC A3A90085 */ sb $t1, 0x85($sp) -/* 038BE0 80037FE0 46005424 */ cvt.w.s $f16, $f10 -/* 038BE4 80037FE4 A3AF0084 */ sb $t7, 0x84($sp) -/* 038BE8 80037FE8 44CEF800 */ ctc1 $t6, $31 -/* 038BEC 80037FEC 44188000 */ mfc1 $t8, $f16 -/* 038BF0 80037FF0 03C02025 */ move $a0, $fp -/* 038BF4 80037FF4 4459F800 */ cfc1 $t9, $31 -/* 038BF8 80037FF8 24050001 */ li $a1, 1 -/* 038BFC 80037FFC 37210003 */ ori $at, $t9, 3 -/* 038C00 80038000 38210002 */ xori $at, $at, 2 -/* 038C04 80038004 44C1F800 */ ctc1 $at, $31 -/* 038C08 80038008 A7AC0086 */ sh $t4, 0x86($sp) -/* 038C0C 8003800C 46009124 */ cvt.w.s $f4, $f18 -/* 038C10 80038010 A7B80088 */ sh $t8, 0x88($sp) -/* 038C14 80038014 440D2000 */ mfc1 $t5, $f4 -/* 038C18 80038018 44D9F800 */ ctc1 $t9, $31 -/* 038C1C 8003801C 0C003A95 */ jal func_8000EA54 -/* 038C20 80038020 A7AD008A */ sh $t5, 0x8a($sp) -/* 038C24 80038024 1040001D */ beqz $v0, .L8003809C -/* 038C28 80038028 34018000 */ li $at, 32768 -/* 038C2C 8003802C AC40003C */ sw $zero, 0x3c($v0) -/* 038C30 80038030 860A0000 */ lh $t2, ($s0) -/* 038C34 80038034 2418003C */ li $t8, 60 -/* 038C38 80038038 01415821 */ addu $t3, $t2, $at -/* 038C3C 8003803C A44B0000 */ sh $t3, ($v0) -/* 038C40 80038040 860C0002 */ lh $t4, 2($s0) -/* 038C44 80038044 AC580078 */ sw $t8, 0x78($v0) -/* 038C48 80038048 000C7023 */ negu $t6, $t4 -/* 038C4C 8003804C A44E0002 */ sh $t6, 2($v0) -/* 038C50 80038050 4405A000 */ mfc1 $a1, $f20 -/* 038C54 80038054 4406A000 */ mfc1 $a2, $f20 -/* 038C58 80038058 4407B000 */ mfc1 $a3, $f22 -/* 038C5C 8003805C 2459001C */ addiu $t9, $v0, 0x1c -/* 038C60 80038060 244D0020 */ addiu $t5, $v0, 0x20 -/* 038C64 80038064 24490024 */ addiu $t1, $v0, 0x24 -/* 038C68 80038068 AFA90018 */ sw $t1, 0x18($sp) -/* 038C6C 8003806C AFAD0014 */ sw $t5, 0x14($sp) -/* 038C70 80038070 AFB90010 */ sw $t9, 0x10($sp) -/* 038C74 80038074 0C01BD93 */ jal func_8006F64C -/* 038C78 80038078 02802025 */ move $a0, $s4 -/* 038C7C 8003807C 8E05000C */ lw $a1, 0xc($s0) -/* 038C80 80038080 8E060010 */ lw $a2, 0x10($s0) -/* 038C84 80038084 8E070014 */ lw $a3, 0x14($s0) -/* 038C88 80038088 240F0004 */ li $t7, 4 -/* 038C8C 8003808C AFAF0010 */ sw $t7, 0x10($sp) -/* 038C90 80038090 AFA00014 */ sw $zero, 0x14($sp) -/* 038C94 80038094 0C002556 */ jal func_80009558 -/* 038C98 80038098 24040133 */ li $a0, 307 -.L8003809C: -/* 038C9C 8003809C 8E020060 */ lw $v0, 0x60($s0) -/* 038CA0 800380A0 26310001 */ addiu $s1, $s1, 1 -/* 038CA4 800380A4 8C4A0000 */ lw $t2, ($v0) -/* 038CA8 800380A8 00000000 */ nop -/* 038CAC 800380AC 022A082A */ slt $at, $s1, $t2 -/* 038CB0 800380B0 1420FF7C */ bnez $at, .L80037EA4 -/* 038CB4 800380B4 00000000 */ nop -.L800380B8: -/* 038CB8 800380B8 8FBF005C */ lw $ra, 0x5c($sp) -.L800380BC: -/* 038CBC 800380BC C7B50028 */ lwc1 $f21, 0x28($sp) -/* 038CC0 800380C0 C7B4002C */ lwc1 $f20, 0x2c($sp) -/* 038CC4 800380C4 C7B70030 */ lwc1 $f23, 0x30($sp) -/* 038CC8 800380C8 C7B60034 */ lwc1 $f22, 0x34($sp) -/* 038CCC 800380CC 8FB00038 */ lw $s0, 0x38($sp) -/* 038CD0 800380D0 8FB1003C */ lw $s1, 0x3c($sp) -/* 038CD4 800380D4 8FB20040 */ lw $s2, 0x40($sp) -/* 038CD8 800380D8 8FB30044 */ lw $s3, 0x44($sp) -/* 038CDC 800380DC 8FB40048 */ lw $s4, 0x48($sp) -/* 038CE0 800380E0 8FB5004C */ lw $s5, 0x4c($sp) -/* 038CE4 800380E4 8FB60050 */ lw $s6, 0x50($sp) -/* 038CE8 800380E8 8FB70054 */ lw $s7, 0x54($sp) -/* 038CEC 800380EC 8FBE0058 */ lw $fp, 0x58($sp) -/* 038CF0 800380F0 03E00008 */ jr $ra -/* 038CF4 800380F4 27BD0128 */ addiu $sp, $sp, 0x128 - -glabel func_800380F8 -/* 038CF8 800380F8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 038CFC 800380FC AFBF0014 */ sw $ra, 0x14($sp) -/* 038D00 80038100 AFA40018 */ sw $a0, 0x18($sp) -/* 038D04 80038104 0C007D18 */ jal func_8001F460 -/* 038D08 80038108 00803025 */ move $a2, $a0 -/* 038D0C 8003810C 8FA40018 */ lw $a0, 0x18($sp) -/* 038D10 80038110 00000000 */ nop -/* 038D14 80038114 8C830060 */ lw $v1, 0x60($a0) -/* 038D18 80038118 00000000 */ nop -/* 038D1C 8003811C 10600018 */ beqz $v1, .L80038180 -/* 038D20 80038120 8FBF0014 */ lw $ra, 0x14($sp) -/* 038D24 80038124 8C620000 */ lw $v0, ($v1) -/* 038D28 80038128 24010003 */ li $at, 3 -/* 038D2C 8003812C 18400013 */ blez $v0, .L8003817C -/* 038D30 80038130 240E4000 */ li $t6, 16384 -/* 038D34 80038134 14410004 */ bne $v0, $at, .L80038148 -/* 038D38 80038138 00000000 */ nop -/* 038D3C 8003813C 8C62000C */ lw $v0, 0xc($v1) -/* 038D40 80038140 10000004 */ b .L80038154 -/* 038D44 80038144 804F003A */ lb $t7, 0x3a($v0) -.L80038148: -/* 038D48 80038148 8C620004 */ lw $v0, 4($v1) -/* 038D4C 8003814C 00000000 */ nop -/* 038D50 80038150 804F003A */ lb $t7, 0x3a($v0) -.L80038154: -/* 038D54 80038154 8C590040 */ lw $t9, 0x40($v0) -/* 038D58 80038158 25F80001 */ addiu $t8, $t7, 1 -/* 038D5C 8003815C A058003A */ sb $t8, 0x3a($v0) -/* 038D60 80038160 A44E0000 */ sh $t6, ($v0) -/* 038D64 80038164 8049003A */ lb $t1, 0x3a($v0) -/* 038D68 80038168 83280055 */ lb $t0, 0x55($t9) -/* 038D6C 8003816C 00000000 */ nop -/* 038D70 80038170 15090003 */ bne $t0, $t1, .L80038180 -/* 038D74 80038174 8FBF0014 */ lw $ra, 0x14($sp) -/* 038D78 80038178 A040003A */ sb $zero, 0x3a($v0) -.L8003817C: -/* 038D7C 8003817C 8FBF0014 */ lw $ra, 0x14($sp) -.L80038180: -/* 038D80 80038180 27BD0018 */ addiu $sp, $sp, 0x18 -/* 038D84 80038184 03E00008 */ jr $ra -/* 038D88 80038188 00000000 */ nop - -glabel func_8003818C -/* 038D8C 8003818C AFA50004 */ sw $a1, 4($sp) -/* 038D90 80038190 8C8F004C */ lw $t7, 0x4c($a0) -/* 038D94 80038194 240E0081 */ li $t6, 129 -/* 038D98 80038198 A5EE0014 */ sh $t6, 0x14($t7) -/* 038D9C 8003819C 8C99004C */ lw $t9, 0x4c($a0) -/* 038DA0 800381A0 24180002 */ li $t8, 2 -/* 038DA4 800381A4 A3380011 */ sb $t8, 0x11($t9) -/* 038DA8 800381A8 8C89004C */ lw $t1, 0x4c($a0) -/* 038DAC 800381AC 24080014 */ li $t0, 20 -/* 038DB0 800381B0 A1280010 */ sb $t0, 0x10($t1) -/* 038DB4 800381B4 8C8A004C */ lw $t2, 0x4c($a0) -/* 038DB8 800381B8 03E00008 */ jr $ra -/* 038DBC 800381BC A1400012 */ sb $zero, 0x12($t2) - -glabel func_800381C0 -/* 038DC0 800381C0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 038DC4 800381C4 AFBF0014 */ sw $ra, 0x14($sp) -/* 038DC8 800381C8 0C007D18 */ jal func_8001F460 -/* 038DCC 800381CC 00803025 */ move $a2, $a0 -/* 038DD0 800381D0 8FBF0014 */ lw $ra, 0x14($sp) -/* 038DD4 800381D4 27BD0018 */ addiu $sp, $sp, 0x18 -/* 038DD8 800381D8 03E00008 */ jr $ra -/* 038DDC 800381DC 00000000 */ nop - -glabel func_800381E0 -/* 038DE0 800381E0 AFA50004 */ sw $a1, 4($sp) -/* 038DE4 800381E4 8C8F004C */ lw $t7, 0x4c($a0) -/* 038DE8 800381E8 240E0001 */ li $t6, 1 -/* 038DEC 800381EC A5EE0014 */ sh $t6, 0x14($t7) -/* 038DF0 800381F0 8C99004C */ lw $t9, 0x4c($a0) -/* 038DF4 800381F4 24180002 */ li $t8, 2 -/* 038DF8 800381F8 A3380011 */ sb $t8, 0x11($t9) -/* 038DFC 800381FC 8C89004C */ lw $t1, 0x4c($a0) -/* 038E00 80038200 24080014 */ li $t0, 20 -/* 038E04 80038204 A1280010 */ sb $t0, 0x10($t1) -/* 038E08 80038208 8C8A004C */ lw $t2, 0x4c($a0) -/* 038E0C 8003820C 03E00008 */ jr $ra -/* 038E10 80038210 A1400012 */ sb $zero, 0x12($t2) - -glabel func_80038214 -/* 038E14 80038214 AFA50004 */ sw $a1, 4($sp) -/* 038E18 80038218 8C8F004C */ lw $t7, 0x4c($a0) -/* 038E1C 8003821C 240E0081 */ li $t6, 129 -/* 038E20 80038220 A5EE0014 */ sh $t6, 0x14($t7) -/* 038E24 80038224 8C99004C */ lw $t9, 0x4c($a0) -/* 038E28 80038228 24180002 */ li $t8, 2 -/* 038E2C 8003822C A3380011 */ sb $t8, 0x11($t9) -/* 038E30 80038230 8C89004C */ lw $t1, 0x4c($a0) -/* 038E34 80038234 24080014 */ li $t0, 20 -/* 038E38 80038238 A1280010 */ sb $t0, 0x10($t1) -/* 038E3C 8003823C 8C8A004C */ lw $t2, 0x4c($a0) -/* 038E40 80038240 03E00008 */ jr $ra -/* 038E44 80038244 A1400012 */ sb $zero, 0x12($t2) - -glabel func_80038248 -/* 038E48 80038248 AFA50004 */ sw $a1, 4($sp) -/* 038E4C 8003824C 8C8F004C */ lw $t7, 0x4c($a0) -/* 038E50 80038250 240E0001 */ li $t6, 1 -/* 038E54 80038254 A5EE0014 */ sh $t6, 0x14($t7) -/* 038E58 80038258 8C99004C */ lw $t9, 0x4c($a0) -/* 038E5C 8003825C 24180002 */ li $t8, 2 -/* 038E60 80038260 A3380011 */ sb $t8, 0x11($t9) -/* 038E64 80038264 8C89004C */ lw $t1, 0x4c($a0) -/* 038E68 80038268 24080014 */ li $t0, 20 -/* 038E6C 8003826C A1280010 */ sb $t0, 0x10($t1) -/* 038E70 80038270 8C8A004C */ lw $t2, 0x4c($a0) -/* 038E74 80038274 03E00008 */ jr $ra -/* 038E78 80038278 A1400012 */ sb $zero, 0x12($t2) - -glabel func_8003827C -/* 038E7C 8003827C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 038E80 80038280 AFBF0024 */ sw $ra, 0x24($sp) -/* 038E84 80038284 AFB00020 */ sw $s0, 0x20($sp) -/* 038E88 80038288 AFA5002C */ sw $a1, 0x2c($sp) -/* 038E8C 8003828C 8C820064 */ lw $v0, 0x64($a0) -/* 038E90 80038290 00808025 */ move $s0, $a0 -/* 038E94 80038294 84430024 */ lh $v1, 0x24($v0) -/* 038E98 80038298 00000000 */ nop -/* 038E9C 8003829C 14600008 */ bnez $v1, .L800382C0 -/* 038EA0 800382A0 00000000 */ nop -/* 038EA4 800382A4 80440038 */ lb $a0, 0x38($v0) -/* 038EA8 800382A8 00000000 */ nop -/* 038EAC 800382AC 10800004 */ beqz $a0, .L800382C0 -/* 038EB0 800382B0 308E00FF */ andi $t6, $a0, 0xff -/* 038EB4 800382B4 A44E0024 */ sh $t6, 0x24($v0) -/* 038EB8 800382B8 84430024 */ lh $v1, 0x24($v0) -/* 038EBC 800382BC 00000000 */ nop -.L800382C0: -/* 038EC0 800382C0 10600014 */ beqz $v1, .L80038314 -/* 038EC4 800382C4 8FA5002C */ lw $a1, 0x2c($sp) -/* 038EC8 800382C8 8C480020 */ lw $t0, 0x20($v0) -/* 038ECC 800382CC 3064FFFF */ andi $a0, $v1, 0xffff -/* 038ED0 800382D0 1500000A */ bnez $t0, .L800382FC -/* 038ED4 800382D4 240F0001 */ li $t7, 1 -/* 038ED8 800382D8 8E05000C */ lw $a1, 0xc($s0) -/* 038EDC 800382DC 8E060010 */ lw $a2, 0x10($s0) -/* 038EE0 800382E0 8E070014 */ lw $a3, 0x14($s0) -/* 038EE4 800382E4 24580020 */ addiu $t8, $v0, 0x20 -/* 038EE8 800382E8 AFB80014 */ sw $t8, 0x14($sp) -/* 038EEC 800382EC 0C002556 */ jal func_80009558 -/* 038EF0 800382F0 AFAF0010 */ sw $t7, 0x10($sp) -/* 038EF4 800382F4 10000007 */ b .L80038314 -/* 038EF8 800382F8 8FA5002C */ lw $a1, 0x2c($sp) -.L800382FC: -/* 038EFC 800382FC 8E05000C */ lw $a1, 0xc($s0) -/* 038F00 80038300 8E060010 */ lw $a2, 0x10($s0) -/* 038F04 80038304 8E070014 */ lw $a3, 0x14($s0) -/* 038F08 80038308 0C0025B6 */ jal func_800096D8 -/* 038F0C 8003830C 01002025 */ move $a0, $t0 -/* 038F10 80038310 8FA5002C */ lw $a1, 0x2c($sp) -.L80038314: -/* 038F14 80038314 02002025 */ move $a0, $s0 -/* 038F18 80038318 0C007D18 */ jal func_8001F460 -/* 038F1C 8003831C 02003025 */ move $a2, $s0 -/* 038F20 80038320 8FBF0024 */ lw $ra, 0x24($sp) -/* 038F24 80038324 8FB00020 */ lw $s0, 0x20($sp) -/* 038F28 80038328 03E00008 */ jr $ra -/* 038F2C 8003832C 27BD0028 */ addiu $sp, $sp, 0x28 - -/* 038F30 80038330 AFA40000 */ sw $a0, ($sp) -/* 038F34 80038334 03E00008 */ jr $ra -/* 038F38 80038338 AFA50004 */ sw $a1, 4($sp) - -glabel func_8003833C -/* 038F3C 8003833C 27BDFF88 */ addiu $sp, $sp, -0x78 -/* 038F40 80038340 AFBF0024 */ sw $ra, 0x24($sp) -/* 038F44 80038344 AFB2001C */ sw $s2, 0x1c($sp) -/* 038F48 80038348 AFB00014 */ sw $s0, 0x14($sp) -/* 038F4C 8003834C 00809025 */ move $s2, $a0 -/* 038F50 80038350 AFB30020 */ sw $s3, 0x20($sp) -/* 038F54 80038354 AFB10018 */ sw $s1, 0x18($sp) -/* 038F58 80038358 AFA5007C */ sw $a1, 0x7c($sp) -/* 038F5C 8003835C 00008025 */ move $s0, $zero -/* 038F60 80038360 0C007D18 */ jal func_8001F460 -/* 038F64 80038364 00003025 */ move $a2, $zero -/* 038F68 80038368 8E430064 */ lw $v1, 0x64($s2) -/* 038F6C 8003836C AE400074 */ sw $zero, 0x74($s2) -/* 038F70 80038370 106000E1 */ beqz $v1, .L800386F8 -/* 038F74 80038374 8FBF0024 */ lw $ra, 0x24($sp) -/* 038F78 80038378 824F003A */ lb $t7, 0x3a($s2) -/* 038F7C 8003837C 8E4E0068 */ lw $t6, 0x68($s2) -/* 038F80 80038380 000FC080 */ sll $t8, $t7, 2 -/* 038F84 80038384 01D8C821 */ addu $t9, $t6, $t8 -/* 038F88 80038388 8F220000 */ lw $v0, ($t9) -/* 038F8C 8003838C 00000000 */ nop -/* 038F90 80038390 104000D9 */ beqz $v0, .L800386F8 -/* 038F94 80038394 8FBF0024 */ lw $ra, 0x24($sp) -/* 038F98 80038398 8C530000 */ lw $s3, ($v0) -/* 038F9C 8003839C 0C027B34 */ jal is_drumstick_unlocked -/* 038FA0 800383A0 AFA30064 */ sw $v1, 0x64($sp) -/* 038FA4 800383A4 1040000C */ beqz $v0, .L800383D8 -/* 038FA8 800383A8 00000000 */ nop -/* 038FAC 800383AC 0C027B2E */ jal is_tt_unlocked -/* 038FB0 800383B0 00000000 */ nop -/* 038FB4 800383B4 10400005 */ beqz $v0, .L800383CC -/* 038FB8 800383B8 3C06800E */ lui $a2, 0x800e -/* 038FBC 800383BC 3C06800E */ lui $a2, %hi(D_800DCA70) # $a2, 0x800e -/* 038FC0 800383C0 24C6CA70 */ addiu $a2, %lo(D_800DCA70) # addiu $a2, $a2, -0x3590 -/* 038FC4 800383C4 1000000E */ b .L80038400 -/* 038FC8 800383C8 2404000A */ li $a0, 10 -.L800383CC: -/* 038FCC 800383CC 24C6CA58 */ addiu $a2, $a2, -0x35a8 -/* 038FD0 800383D0 1000000B */ b .L80038400 -/* 038FD4 800383D4 24040009 */ li $a0, 9 -.L800383D8: -/* 038FD8 800383D8 0C027B2E */ jal is_tt_unlocked -/* 038FDC 800383DC 00000000 */ nop -/* 038FE0 800383E0 10400005 */ beqz $v0, .L800383F8 -/* 038FE4 800383E4 3C06800E */ lui $a2, 0x800e -/* 038FE8 800383E8 3C06800E */ lui $a2, %hi(D_800DCA64) # $a2, 0x800e -/* 038FEC 800383EC 24C6CA64 */ addiu $a2, %lo(D_800DCA64) # addiu $a2, $a2, -0x359c -/* 038FF0 800383F0 10000003 */ b .L80038400 -/* 038FF4 800383F4 24040009 */ li $a0, 9 -.L800383F8: -/* 038FF8 800383F8 24C6CA50 */ addiu $a2, $a2, -0x35b0 -/* 038FFC 800383FC 24040008 */ li $a0, 8 -.L80038400: -/* 039000 80038400 1880000E */ blez $a0, .L8003843C -/* 039004 80038404 00002825 */ move $a1, $zero -/* 039008 80038408 8FA90064 */ lw $t1, 0x64($sp) -/* 03900C 8003840C 00C01021 */ addu $v0, $a2, $zero -/* 039010 80038410 85230028 */ lh $v1, 0x28($t1) -/* 039014 80038414 00000000 */ nop -.L80038418: -/* 039018 80038418 904A0000 */ lbu $t2, ($v0) -/* 03901C 8003841C 24A50001 */ addiu $a1, $a1, 1 -/* 039020 80038420 146A0002 */ bne $v1, $t2, .L8003842C -/* 039024 80038424 00A4082A */ slt $at, $a1, $a0 -/* 039028 80038428 24100001 */ li $s0, 1 -.L8003842C: -/* 03902C 8003842C 10200003 */ beqz $at, .L8003843C -/* 039030 80038430 24420001 */ addiu $v0, $v0, 1 -/* 039034 80038434 1200FFF8 */ beqz $s0, .L80038418 -/* 039038 80038438 00000000 */ nop -.L8003843C: -/* 03903C 8003843C 1200006E */ beqz $s0, .L800385F8 -/* 039040 80038440 24A5FFFF */ addiu $a1, $a1, -1 -/* 039044 80038444 240B0001 */ li $t3, 1 -/* 039048 80038448 A24B003B */ sb $t3, 0x3b($s2) -/* 03904C 8003844C 00008025 */ move $s0, $zero -/* 039050 80038450 00001825 */ move $v1, $zero -/* 039054 80038454 27B10050 */ addiu $s1, $sp, 0x50 -/* 039058 80038458 02002025 */ move $a0, $s0 -.L8003845C: -/* 03905C 8003845C A3A3004F */ sb $v1, 0x4f($sp) -/* 039060 80038460 0C0270A0 */ jal func_8009C280 -/* 039064 80038464 AFA50070 */ sw $a1, 0x70($sp) -/* 039068 80038468 8FA50070 */ lw $a1, 0x70($sp) -/* 03906C 8003846C 93A3004F */ lbu $v1, 0x4f($sp) -/* 039070 80038470 14450006 */ bne $v0, $a1, .L8003848C -/* 039074 80038474 24010004 */ li $at, 4 -/* 039078 80038478 02236021 */ addu $t4, $s1, $v1 -/* 03907C 8003847C 24630001 */ addiu $v1, $v1, 1 -/* 039080 80038480 306D00FF */ andi $t5, $v1, 0xff -/* 039084 80038484 01A01825 */ move $v1, $t5 -/* 039088 80038488 A1900000 */ sb $s0, ($t4) -.L8003848C: -/* 03908C 8003848C 26100001 */ addiu $s0, $s0, 1 -/* 039090 80038490 1601FFF2 */ bne $s0, $at, .L8003845C -/* 039094 80038494 02002025 */ move $a0, $s0 -/* 039098 80038498 3C0F800E */ lui $t7, %hi(D_800DCA7C) # $t7, 0x800e -/* 03909C 8003849C 25EFCA7C */ addiu $t7, %lo(D_800DCA7C) # addiu $t7, $t7, -0x3584 -/* 0390A0 800384A0 00AF1021 */ addu $v0, $a1, $t7 -/* 0390A4 800384A4 904E0000 */ lbu $t6, ($v0) -/* 0390A8 800384A8 8FB8007C */ lw $t8, 0x7c($sp) -/* 0390AC 800384AC 3C0D800E */ lui $t5, %hi(D_800DCA88) # $t5, 0x800e -/* 0390B0 800384B0 01D8C821 */ addu $t9, $t6, $t8 -/* 0390B4 800384B4 332400FF */ andi $a0, $t9, 0xff -/* 0390B8 800384B8 28810010 */ slti $at, $a0, 0x10 -/* 0390BC 800384BC 14200009 */ bnez $at, .L800384E4 -/* 0390C0 800384C0 A0590000 */ sb $t9, ($v0) -/* 0390C4 800384C4 3C0A800E */ lui $t2, %hi(D_800DCA88) # $t2, 0x800e -/* 0390C8 800384C8 254ACA88 */ addiu $t2, %lo(D_800DCA88) # addiu $t2, $t2, -0x3578 -/* 0390CC 800384CC 00AA4021 */ addu $t0, $a1, $t2 -/* 0390D0 800384D0 910B0000 */ lbu $t3, ($t0) -/* 0390D4 800384D4 3089000F */ andi $t1, $a0, 0xf -/* 0390D8 800384D8 256C0001 */ addiu $t4, $t3, 1 -/* 0390DC 800384DC A0490000 */ sb $t1, ($v0) -/* 0390E0 800384E0 A10C0000 */ sb $t4, ($t0) -.L800384E4: -/* 0390E4 800384E4 25ADCA88 */ addiu $t5, %lo(D_800DCA88) # addiu $t5, $t5, -0x3578 -/* 0390E8 800384E8 00AD4021 */ addu $t0, $a1, $t5 -/* 0390EC 800384EC 910F0000 */ lbu $t7, ($t0) -/* 0390F0 800384F0 00603825 */ move $a3, $v1 -/* 0390F4 800384F4 01E3082A */ slt $at, $t7, $v1 -/* 0390F8 800384F8 14200002 */ bnez $at, .L80038504 -/* 0390FC 800384FC 00000000 */ nop -/* 039100 80038500 A1000000 */ sb $zero, ($t0) -.L80038504: -/* 039104 80038504 18E0003C */ blez $a3, .L800385F8 -/* 039108 80038508 00000000 */ nop -/* 03910C 8003850C AFA70040 */ sw $a3, 0x40($sp) -/* 039110 80038510 0C02709D */ jal func_8009C274 -/* 039114 80038514 AFA80044 */ sw $t0, 0x44($sp) -/* 039118 80038518 8FA70040 */ lw $a3, 0x40($sp) -/* 03911C 8003851C 8FA80044 */ lw $t0, 0x44($sp) -/* 039120 80038520 00403025 */ move $a2, $v0 -/* 039124 80038524 18E0001B */ blez $a3, .L80038594 -/* 039128 80038528 00001825 */ move $v1, $zero -/* 03912C 8003852C 27A20050 */ addiu $v0, $sp, 0x50 -/* 039130 80038530 24100001 */ li $s0, 1 -.L80038534: -/* 039134 80038534 904E0000 */ lbu $t6, ($v0) -/* 039138 80038538 24010001 */ li $at, 1 -/* 03913C 8003853C 01C6C021 */ addu $t8, $t6, $a2 -/* 039140 80038540 83190000 */ lb $t9, ($t8) -/* 039144 80038544 02402025 */ move $a0, $s2 -/* 039148 80038548 1721000E */ bne $t9, $at, .L80038584 -/* 03914C 8003854C 24050002 */ li $a1, 2 -/* 039150 80038550 AE500074 */ sw $s0, 0x74($s2) -/* 039154 80038554 AFA80044 */ sw $t0, 0x44($sp) -/* 039158 80038558 AFA70040 */ sw $a3, 0x40($sp) -/* 03915C 8003855C AFA60058 */ sw $a2, 0x58($sp) -/* 039160 80038560 AFA30074 */ sw $v1, 0x74($sp) -/* 039164 80038564 0C02BF0F */ jal func_800AFC3C -/* 039168 80038568 AFA2003C */ sw $v0, 0x3c($sp) -/* 03916C 8003856C 8FA2003C */ lw $v0, 0x3c($sp) -/* 039170 80038570 8FA30074 */ lw $v1, 0x74($sp) -/* 039174 80038574 8FA60058 */ lw $a2, 0x58($sp) -/* 039178 80038578 8FA70040 */ lw $a3, 0x40($sp) -/* 03917C 8003857C 8FA80044 */ lw $t0, 0x44($sp) -/* 039180 80038580 00000000 */ nop -.L80038584: -/* 039184 80038584 24630001 */ addiu $v1, $v1, 1 -/* 039188 80038588 1467FFEA */ bne $v1, $a3, .L80038534 -/* 03918C 8003858C 24420001 */ addiu $v0, $v0, 1 -/* 039190 80038590 00001825 */ move $v1, $zero -.L80038594: -/* 039194 80038594 86660028 */ lh $a2, 0x28($s3) -/* 039198 80038598 00001025 */ move $v0, $zero -/* 03919C 8003859C 18C00015 */ blez $a2, .L800385F4 -/* 0391A0 800385A0 00000000 */ nop -.L800385A4: -/* 0391A4 800385A4 8E690038 */ lw $t1, 0x38($s3) -/* 0391A8 800385A8 24630001 */ addiu $v1, $v1, 1 -/* 0391AC 800385AC 01222021 */ addu $a0, $t1, $v0 -/* 0391B0 800385B0 90850000 */ lbu $a1, ($a0) -/* 0391B4 800385B4 00000000 */ nop -/* 0391B8 800385B8 04A0000B */ bltz $a1, .L800385E8 -/* 0391BC 800385BC 28A10004 */ slti $at, $a1, 4 -/* 0391C0 800385C0 1020000A */ beqz $at, .L800385EC -/* 0391C4 800385C4 0066082A */ slt $at, $v1, $a2 -/* 0391C8 800385C8 910A0000 */ lbu $t2, ($t0) -/* 0391CC 800385CC 00000000 */ nop -/* 0391D0 800385D0 022A5821 */ addu $t3, $s1, $t2 -/* 0391D4 800385D4 916C0000 */ lbu $t4, ($t3) -/* 0391D8 800385D8 00000000 */ nop -/* 0391DC 800385DC A08C0000 */ sb $t4, ($a0) -/* 0391E0 800385E0 86660028 */ lh $a2, 0x28($s3) -/* 0391E4 800385E4 00000000 */ nop -.L800385E8: -/* 0391E8 800385E8 0066082A */ slt $at, $v1, $a2 -.L800385EC: -/* 0391EC 800385EC 1420FFED */ bnez $at, .L800385A4 -/* 0391F0 800385F0 2442000C */ addiu $v0, $v0, 0xc -.L800385F4: -/* 0391F4 800385F4 A240003B */ sb $zero, 0x3b($s2) -.L800385F8: -/* 0391F8 800385F8 8242003B */ lb $v0, 0x3b($s2) -/* 0391FC 800385FC 00000000 */ nop -/* 039200 80038600 0440003D */ bltz $v0, .L800386F8 -/* 039204 80038604 8FBF0024 */ lw $ra, 0x24($sp) -/* 039208 80038608 866D0048 */ lh $t5, 0x48($s3) -/* 03920C 8003860C 8FA90064 */ lw $t1, 0x64($sp) -/* 039210 80038610 004D082A */ slt $at, $v0, $t5 -/* 039214 80038614 10200037 */ beqz $at, .L800386F4 -/* 039218 80038618 000270C0 */ sll $t6, $v0, 3 -/* 03921C 8003861C 8E6F0044 */ lw $t7, 0x44($s3) -/* 039220 80038620 912A002C */ lbu $t2, 0x2c($t1) -/* 039224 80038624 01EEC021 */ addu $t8, $t7, $t6 -/* 039228 80038628 8F050004 */ lw $a1, 4($t8) -/* 03922C 8003862C 24010001 */ li $at, 1 -/* 039230 80038630 24A5FFFF */ addiu $a1, $a1, -1 -/* 039234 80038634 1541002F */ bne $t2, $at, .L800386F4 -/* 039238 80038638 0005C900 */ sll $t9, $a1, 4 -/* 03923C 8003863C 0C00057E */ jal func_800015F8 -/* 039240 80038640 AFB90070 */ sw $t9, 0x70($sp) -/* 039244 80038644 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 039248 80038648 44819800 */ mtc1 $at, $f19 -/* 03924C 8003864C 44809000 */ mtc1 $zero, $f18 -/* 039250 80038650 460003A1 */ cvt.d.s $f14, $f0 -/* 039254 80038654 462E903C */ c.lt.d $f18, $f14 -/* 039258 80038658 8FA50070 */ lw $a1, 0x70($sp) -/* 03925C 8003865C 45000015 */ bc1f .L800386B4 -/* 039260 80038660 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 039264 80038664 46327101 */ sub.d $f4, $f14, $f18 -/* 039268 80038668 44854000 */ mtc1 $a1, $f8 -/* 03926C 8003866C 46202320 */ cvt.s.d $f12, $f4 -/* 039270 80038670 460060A1 */ cvt.d.s $f2, $f12 -/* 039274 80038674 46221180 */ add.d $f6, $f2, $f2 -/* 039278 80038678 46804420 */ cvt.s.w $f16, $f8 -/* 03927C 8003867C 46203320 */ cvt.s.d $f12, $f6 -/* 039280 80038680 46106282 */ mul.s $f10, $f12, $f16 -/* 039284 80038684 460A8101 */ sub.s $f4, $f16, $f10 -/* 039288 80038688 444BF800 */ cfc1 $t3, $31 -/* 03928C 8003868C 00000000 */ nop -/* 039290 80038690 35610003 */ ori $at, $t3, 3 -/* 039294 80038694 38210002 */ xori $at, $at, 2 -/* 039298 80038698 44C1F800 */ ctc1 $at, $31 -/* 03929C 8003869C 00000000 */ nop -/* 0392A0 800386A0 460021A4 */ cvt.w.s $f6, $f4 -/* 0392A4 800386A4 440C3000 */ mfc1 $t4, $f6 -/* 0392A8 800386A8 44CBF800 */ ctc1 $t3, $31 -/* 0392AC 800386AC 10000011 */ b .L800386F4 -/* 0392B0 800386B0 A64C0018 */ sh $t4, 0x18($s2) -.L800386B4: -/* 0392B4 800386B4 44814000 */ mtc1 $at, $f8 -/* 0392B8 800386B8 44855000 */ mtc1 $a1, $f10 -/* 0392BC 800386BC 46080302 */ mul.s $f12, $f0, $f8 -/* 0392C0 800386C0 46805120 */ cvt.s.w $f4, $f10 -/* 0392C4 800386C4 460C2182 */ mul.s $f6, $f4, $f12 -/* 0392C8 800386C8 444DF800 */ cfc1 $t5, $31 -/* 0392CC 800386CC 00000000 */ nop -/* 0392D0 800386D0 35A10003 */ ori $at, $t5, 3 -/* 0392D4 800386D4 38210002 */ xori $at, $at, 2 -/* 0392D8 800386D8 44C1F800 */ ctc1 $at, $31 -/* 0392DC 800386DC 00000000 */ nop -/* 0392E0 800386E0 46003224 */ cvt.w.s $f8, $f6 -/* 0392E4 800386E4 440F4000 */ mfc1 $t7, $f8 -/* 0392E8 800386E8 44CDF800 */ ctc1 $t5, $31 -/* 0392EC 800386EC A64F0018 */ sh $t7, 0x18($s2) -/* 0392F0 800386F0 00000000 */ nop -.L800386F4: -/* 0392F4 800386F4 8FBF0024 */ lw $ra, 0x24($sp) -.L800386F8: -/* 0392F8 800386F8 8FB00014 */ lw $s0, 0x14($sp) -/* 0392FC 800386FC 8FB10018 */ lw $s1, 0x18($sp) -/* 039300 80038700 8FB2001C */ lw $s2, 0x1c($sp) -/* 039304 80038704 8FB30020 */ lw $s3, 0x20($sp) -/* 039308 80038708 03E00008 */ jr $ra -/* 03930C 8003870C 27BD0078 */ addiu $sp, $sp, 0x78 - -glabel func_80038710 -/* 039310 80038710 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 039314 80038714 AFB00028 */ sw $s0, 0x28($sp) -/* 039318 80038718 00808025 */ move $s0, $a0 -/* 03931C 8003871C AFBF002C */ sw $ra, 0x2c($sp) -/* 039320 80038720 0C007D18 */ jal func_8001F460 -/* 039324 80038724 02003025 */ move $a2, $s0 -/* 039328 80038728 860E0006 */ lh $t6, 6($s0) -/* 03932C 8003872C 8E180064 */ lw $t8, 0x64($s0) -/* 039330 80038730 35CF4000 */ ori $t7, $t6, 0x4000 -/* 039334 80038734 A60F0006 */ sh $t7, 6($s0) -/* 039338 80038738 1440001D */ bnez $v0, .L800387B0 -/* 03933C 8003873C AFB80034 */ sw $t8, 0x34($sp) -/* 039340 80038740 0C019884 */ jal func_80066210 -/* 039344 80038744 00000000 */ nop -/* 039348 80038748 14400008 */ bnez $v0, .L8003876C -/* 03934C 8003874C 24030001 */ li $v1, 1 -/* 039350 80038750 8FB90034 */ lw $t9, 0x34($sp) -/* 039354 80038754 00000000 */ nop -/* 039358 80038758 83240044 */ lb $a0, 0x44($t9) -/* 03935C 8003875C 0C008433 */ jal func_800210CC -/* 039360 80038760 00000000 */ nop -/* 039364 80038764 10000001 */ b .L8003876C -/* 039368 80038768 00401825 */ move $v1, $v0 -.L8003876C: -/* 03936C 8003876C 10600010 */ beqz $v1, .L800387B0 -/* 039370 80038770 340A8000 */ li $t2, 32768 -/* 039374 80038774 8FA80034 */ lw $t0, 0x34($sp) -/* 039378 80038778 86090000 */ lh $t1, ($s0) -/* 03937C 8003877C 8E05000C */ lw $a1, 0xc($s0) -/* 039380 80038780 8E060010 */ lw $a2, 0x10($s0) -/* 039384 80038784 8E070014 */ lw $a3, 0x14($s0) -/* 039388 80038788 81040030 */ lb $a0, 0x30($t0) -/* 03938C 8003878C 01495823 */ subu $t3, $t2, $t1 -/* 039390 80038790 AFAB0010 */ sw $t3, 0x10($sp) -/* 039394 80038794 860C0002 */ lh $t4, 2($s0) -/* 039398 80038798 00000000 */ nop -/* 03939C 8003879C 000C6823 */ negu $t5, $t4 -/* 0393A0 800387A0 AFAD0014 */ sw $t5, 0x14($sp) -/* 0393A4 800387A4 860E0004 */ lh $t6, 4($s0) -/* 0393A8 800387A8 0C019922 */ jal func_80066488 -/* 0393AC 800387AC AFAE0018 */ sw $t6, 0x18($sp) -.L800387B0: -/* 0393B0 800387B0 8FBF002C */ lw $ra, 0x2c($sp) -/* 0393B4 800387B4 8FB00028 */ lw $s0, 0x28($sp) -/* 0393B8 800387B8 03E00008 */ jr $ra -/* 0393BC 800387BC 27BD0040 */ addiu $sp, $sp, 0x40 - -/* 0393C0 800387C0 AFA40000 */ sw $a0, ($sp) -/* 0393C4 800387C4 03E00008 */ jr $ra -/* 0393C8 800387C8 AFA50004 */ sw $a1, 4($sp) - -glabel func_800387CC -/* 0393CC 800387CC 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0393D0 800387D0 AFBF0014 */ sw $ra, 0x14($sp) -/* 0393D4 800387D4 AFA50024 */ sw $a1, 0x24($sp) -/* 0393D8 800387D8 8C820078 */ lw $v0, 0x78($a0) -/* 0393DC 800387DC 00803825 */ move $a3, $a0 -/* 0393E0 800387E0 10400006 */ beqz $v0, .L800387FC -/* 0393E4 800387E4 00001825 */ move $v1, $zero -/* 0393E8 800387E8 2444FFFF */ addiu $a0, $v0, -1 -/* 0393EC 800387EC 0C006EB2 */ jal func_8001BAC8 -/* 0393F0 800387F0 AFA70020 */ sw $a3, 0x20($sp) -/* 0393F4 800387F4 8FA70020 */ lw $a3, 0x20($sp) -/* 0393F8 800387F8 00401825 */ move $v1, $v0 -.L800387FC: -/* 0393FC 800387FC 8FA50024 */ lw $a1, 0x24($sp) -/* 039400 80038800 00E02025 */ move $a0, $a3 -/* 039404 80038804 00E03025 */ move $a2, $a3 -/* 039408 80038808 AFA3001C */ sw $v1, 0x1c($sp) -/* 03940C 8003880C 0C007D18 */ jal func_8001F460 -/* 039410 80038810 AFA70020 */ sw $a3, 0x20($sp) -/* 039414 80038814 8FA70020 */ lw $a3, 0x20($sp) -/* 039418 80038818 8FA3001C */ lw $v1, 0x1c($sp) -/* 03941C 8003881C 84EE0006 */ lh $t6, 6($a3) -/* 039420 80038820 ACE2007C */ sw $v0, 0x7c($a3) -/* 039424 80038824 35CF4000 */ ori $t7, $t6, 0x4000 -/* 039428 80038828 14400006 */ bnez $v0, .L80038844 -/* 03942C 8003882C A4EF0006 */ sh $t7, 6($a3) -/* 039430 80038830 10600005 */ beqz $v1, .L80038848 -/* 039434 80038834 8FBF0014 */ lw $ra, 0x14($sp) -/* 039438 80038838 8C620064 */ lw $v0, 0x64($v1) -/* 03943C 8003883C 00000000 */ nop -/* 039440 80038840 AC470148 */ sw $a3, 0x148($v0) -.L80038844: -/* 039444 80038844 8FBF0014 */ lw $ra, 0x14($sp) -.L80038848: -/* 039448 80038848 27BD0020 */ addiu $sp, $sp, 0x20 -/* 03944C 8003884C 03E00008 */ jr $ra -/* 039450 80038850 00000000 */ nop - -glabel func_80038854 -/* 039454 80038854 90AE0009 */ lbu $t6, 9($a1) -/* 039458 80038858 240F0021 */ li $t7, 33 -/* 03945C 8003885C 11C00004 */ beqz $t6, .L80038870 -/* 039460 80038860 00000000 */ nop -/* 039464 80038864 8C98004C */ lw $t8, 0x4c($a0) -/* 039468 80038868 10000004 */ b .L8003887C -/* 03946C 8003886C A70F0014 */ sh $t7, 0x14($t8) -.L80038870: -/* 039470 80038870 8C88004C */ lw $t0, 0x4c($a0) -/* 039474 80038874 24190022 */ li $t9, 34 -/* 039478 80038878 A5190014 */ sh $t9, 0x14($t0) -.L8003887C: -/* 03947C 8003887C 8C89004C */ lw $t1, 0x4c($a0) -/* 039480 80038880 240A000F */ li $t2, 15 -/* 039484 80038884 A1200011 */ sb $zero, 0x11($t1) -/* 039488 80038888 8C8B004C */ lw $t3, 0x4c($a0) -/* 03948C 8003888C 00000000 */ nop -/* 039490 80038890 A16A0010 */ sb $t2, 0x10($t3) -/* 039494 80038894 8C8C004C */ lw $t4, 0x4c($a0) -/* 039498 80038898 00000000 */ nop -/* 03949C 8003889C A1800012 */ sb $zero, 0x12($t4) -/* 0394A0 800388A0 90AE000A */ lbu $t6, 0xa($a1) -/* 0394A4 800388A4 90AD0008 */ lbu $t5, 8($a1) -/* 0394A8 800388A8 000E7C00 */ sll $t7, $t6, 0x10 -/* 0394AC 800388AC 01AFC025 */ or $t8, $t5, $t7 -/* 0394B0 800388B0 AC980078 */ sw $t8, 0x78($a0) -/* 0394B4 800388B4 90B90009 */ lbu $t9, 9($a1) -/* 0394B8 800388B8 00000000 */ nop -/* 0394BC 800388BC AC99007C */ sw $t9, 0x7c($a0) -/* 0394C0 800388C0 90A8000B */ lbu $t0, 0xb($a1) -/* 0394C4 800388C4 00000000 */ nop -/* 0394C8 800388C8 00084A80 */ sll $t1, $t0, 0xa -/* 0394CC 800388CC 03E00008 */ jr $ra -/* 0394D0 800388D0 A4890000 */ sh $t1, ($a0) - -glabel func_800388D4 -/* 0394D4 800388D4 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0394D8 800388D8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0394DC 800388DC AFA40018 */ sw $a0, 0x18($sp) -/* 0394E0 800388E0 AFA5001C */ sw $a1, 0x1c($sp) -/* 0394E4 800388E4 8C8E007C */ lw $t6, 0x7c($a0) -/* 0394E8 800388E8 00802825 */ move $a1, $a0 -/* 0394EC 800388EC 15C00006 */ bnez $t6, .L80038908 -/* 0394F0 800388F0 00000000 */ nop -/* 0394F4 800388F4 848F0006 */ lh $t7, 6($a0) -/* 0394F8 800388F8 00000000 */ nop -/* 0394FC 800388FC 35F84000 */ ori $t8, $t7, 0x4000 -/* 039500 80038900 10000005 */ b .L80038918 -/* 039504 80038904 A4980006 */ sh $t8, 6($a0) -.L80038908: -/* 039508 80038908 84B90006 */ lh $t9, 6($a1) -/* 03950C 8003890C 00000000 */ nop -/* 039510 80038910 3328BFFF */ andi $t0, $t9, 0xbfff -/* 039514 80038914 A4A80006 */ sh $t0, 6($a1) -.L80038918: -/* 039518 80038918 8CA2004C */ lw $v0, 0x4c($a1) -/* 03951C 8003891C 8CAA0078 */ lw $t2, 0x78($a1) -/* 039520 80038920 90490013 */ lbu $t1, 0x13($v0) -/* 039524 80038924 000A5C03 */ sra $t3, $t2, 0x10 -/* 039528 80038928 316C00FF */ andi $t4, $t3, 0xff -/* 03952C 8003892C 012C082A */ slt $at, $t1, $t4 -/* 039530 80038930 1020001B */ beqz $at, .L800389A0 -/* 039534 80038934 8FBF0014 */ lw $ra, 0x14($sp) -/* 039538 80038938 8C430000 */ lw $v1, ($v0) -/* 03953C 8003893C 24010001 */ li $at, 1 -/* 039540 80038940 8C6D0040 */ lw $t5, 0x40($v1) -/* 039544 80038944 00000000 */ nop -/* 039548 80038948 81AE0054 */ lb $t6, 0x54($t5) -/* 03954C 8003894C 00000000 */ nop -/* 039550 80038950 15C10013 */ bne $t6, $at, .L800389A0 -/* 039554 80038954 8FBF0014 */ lw $ra, 0x14($sp) -/* 039558 80038958 8C620064 */ lw $v0, 0x64($v1) -/* 03955C 8003895C 2401FFFF */ li $at, -1 -/* 039560 80038960 84440000 */ lh $a0, ($v0) -/* 039564 80038964 00000000 */ nop -/* 039568 80038968 1081000D */ beq $a0, $at, .L800389A0 -/* 03956C 8003896C 8FBF0014 */ lw $ra, 0x14($sp) -/* 039570 80038970 0C01A955 */ jal func_8006A554 -/* 039574 80038974 AFA50018 */ sw $a1, 0x18($sp) -/* 039578 80038978 8FA50018 */ lw $a1, 0x18($sp) -/* 03957C 8003897C 304F2000 */ andi $t7, $v0, 0x2000 -/* 039580 80038980 11E00007 */ beqz $t7, .L800389A0 -/* 039584 80038984 8FBF0014 */ lw $ra, 0x14($sp) -/* 039588 80038988 8CA40078 */ lw $a0, 0x78($a1) -/* 03958C 8003898C 00000000 */ nop -/* 039590 80038990 309800FF */ andi $t8, $a0, 0xff -/* 039594 80038994 0C030C7B */ jal func_800C31EC -/* 039598 80038998 03002025 */ move $a0, $t8 -/* 03959C 8003899C 8FBF0014 */ lw $ra, 0x14($sp) -.L800389A0: -/* 0395A0 800389A0 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0395A4 800389A4 03E00008 */ jr $ra -/* 0395A8 800389A8 00000000 */ nop - -glabel func_800389AC -/* 0395AC 800389AC AFA40000 */ sw $a0, ($sp) -/* 0395B0 800389B0 03E00008 */ jr $ra -/* 0395B4 800389B4 AFA50004 */ sw $a1, 4($sp) - -glabel func_800389B8 -/* 0395B8 800389B8 44852000 */ mtc1 $a1, $f4 -/* 0395BC 800389BC 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 -/* 0395C0 800389C0 468020A0 */ cvt.s.w $f2, $f4 -/* 0395C4 800389C4 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) -/* 0395C8 800389C8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0395CC 800389CC AFBF0014 */ sw $ra, 0x14($sp) -/* 0395D0 800389D0 15C00007 */ bnez $t6, .L800389F0 -/* 0395D4 800389D4 46001006 */ mov.s $f0, $f2 -/* 0395D8 800389D8 3C01800E */ lui $at, %hi(D_800E6054) # $at, 0x800e -/* 0395DC 800389DC C4296050 */ lwc1 $f9, %lo(D_800E6050)($at) -/* 0395E0 800389E0 C4286054 */ lwc1 $f8, %lo(D_800E6054)($at) -/* 0395E4 800389E4 460011A1 */ cvt.d.s $f6, $f2 -/* 0395E8 800389E8 46283282 */ mul.d $f10, $f6, $f8 -/* 0395EC 800389EC 46205020 */ cvt.s.d $f0, $f10 -.L800389F0: -/* 0395F0 800389F0 C492001C */ lwc1 $f18, 0x1c($a0) -/* 0395F4 800389F4 C490000C */ lwc1 $f16, 0xc($a0) -/* 0395F8 800389F8 46009102 */ mul.s $f4, $f18, $f0 -/* 0395FC 800389FC C48A0020 */ lwc1 $f10, 0x20($a0) -/* 039600 80038A00 848F0018 */ lh $t7, 0x18($a0) -/* 039604 80038A04 0005C100 */ sll $t8, $a1, 4 -/* 039608 80038A08 46048180 */ add.s $f6, $f16, $f4 -/* 03960C 80038A0C 01F8C821 */ addu $t9, $t7, $t8 -/* 039610 80038A10 46005482 */ mul.s $f18, $f10, $f0 -/* 039614 80038A14 E486000C */ swc1 $f6, 0xc($a0) -/* 039618 80038A18 C4860024 */ lwc1 $f6, 0x24($a0) -/* 03961C 80038A1C C4880010 */ lwc1 $f8, 0x10($a0) -/* 039620 80038A20 46003282 */ mul.s $f10, $f6, $f0 -/* 039624 80038A24 A4990018 */ sh $t9, 0x18($a0) -/* 039628 80038A28 C4840014 */ lwc1 $f4, 0x14($a0) -/* 03962C 80038A2C 84880018 */ lh $t0, 0x18($a0) -/* 039630 80038A30 46124400 */ add.s $f16, $f8, $f18 -/* 039634 80038A34 29010100 */ slti $at, $t0, 0x100 -/* 039638 80038A38 460A2200 */ add.s $f8, $f4, $f10 -/* 03963C 80038A3C E4900010 */ swc1 $f16, 0x10($a0) -/* 039640 80038A40 14200006 */ bnez $at, .L80038A5C -/* 039644 80038A44 E4880014 */ swc1 $f8, 0x14($a0) -/* 039648 80038A48 0C003FEE */ jal func_8000FFB8 -/* 03964C 80038A4C AFA40018 */ sw $a0, 0x18($sp) -/* 039650 80038A50 8FA40018 */ lw $a0, 0x18($sp) -/* 039654 80038A54 240900FF */ li $t1, 255 -/* 039658 80038A58 A4890018 */ sh $t1, 0x18($a0) -.L80038A5C: -/* 03965C 80038A5C 8FBF0014 */ lw $ra, 0x14($sp) -/* 039660 80038A60 27BD0018 */ addiu $sp, $sp, 0x18 -/* 039664 80038A64 03E00008 */ jr $ra -/* 039668 80038A68 00000000 */ nop - -glabel func_80038A6C -/* 03966C 80038A6C AFA40000 */ sw $a0, ($sp) -/* 039670 80038A70 03E00008 */ jr $ra -/* 039674 80038A74 AFA50004 */ sw $a1, 4($sp) - -glabel func_80038A78 -/* 039678 80038A78 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 03967C 80038A7C AFBF0014 */ sw $ra, 0x14($sp) -/* 039680 80038A80 848E0018 */ lh $t6, 0x18($a0) -/* 039684 80038A84 000578C0 */ sll $t7, $a1, 3 -/* 039688 80038A88 01CFC021 */ addu $t8, $t6, $t7 -/* 03968C 80038A8C A4980018 */ sh $t8, 0x18($a0) -/* 039690 80038A90 84990018 */ lh $t9, 0x18($a0) -/* 039694 80038A94 00000000 */ nop -/* 039698 80038A98 2B210100 */ slti $at, $t9, 0x100 -/* 03969C 80038A9C 14200007 */ bnez $at, .L80038ABC -/* 0396A0 80038AA0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0396A4 80038AA4 0C003FEE */ jal func_8000FFB8 -/* 0396A8 80038AA8 AFA40018 */ sw $a0, 0x18($sp) -/* 0396AC 80038AAC 8FA40018 */ lw $a0, 0x18($sp) -/* 0396B0 80038AB0 240800FF */ li $t0, 255 -/* 0396B4 80038AB4 A4880018 */ sh $t0, 0x18($a0) -/* 0396B8 80038AB8 8FBF0014 */ lw $ra, 0x14($sp) -.L80038ABC: -/* 0396BC 80038ABC 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0396C0 80038AC0 03E00008 */ jr $ra -/* 0396C4 80038AC4 00000000 */ nop - -glabel func_80038AC8 -/* 0396C8 80038AC8 AFA40000 */ sw $a0, ($sp) -/* 0396CC 80038ACC 03E00008 */ jr $ra -/* 0396D0 80038AD0 AFA50004 */ sw $a1, 4($sp) - -glabel func_80038AD4 -/* 0396D4 80038AD4 44852000 */ mtc1 $a1, $f4 -/* 0396D8 80038AD8 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 -/* 0396DC 80038ADC 468020A0 */ cvt.s.w $f2, $f4 -/* 0396E0 80038AE0 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) -/* 0396E4 80038AE4 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0396E8 80038AE8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0396EC 80038AEC 15C00007 */ bnez $t6, .L80038B0C -/* 0396F0 80038AF0 46001006 */ mov.s $f0, $f2 -/* 0396F4 80038AF4 3C01800E */ lui $at, %hi(D_800E605C) # $at, 0x800e -/* 0396F8 80038AF8 C4296058 */ lwc1 $f9, %lo(D_800E6058)($at) -/* 0396FC 80038AFC C428605C */ lwc1 $f8, %lo(D_800E605C)($at) -/* 039700 80038B00 460011A1 */ cvt.d.s $f6, $f2 -/* 039704 80038B04 46283282 */ mul.d $f10, $f6, $f8 -/* 039708 80038B08 46205020 */ cvt.s.d $f0, $f10 -.L80038B0C: -/* 03970C 80038B0C 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 039710 80038B10 44819800 */ mtc1 $at, $f19 -/* 039714 80038B14 44809000 */ mtc1 $zero, $f18 -/* 039718 80038B18 46000421 */ cvt.d.s $f16, $f0 -/* 03971C 80038B1C 46328102 */ mul.d $f4, $f16, $f18 -/* 039720 80038B20 848F0018 */ lh $t7, 0x18($a0) -/* 039724 80038B24 C4860010 */ lwc1 $f6, 0x10($a0) -/* 039728 80038B28 0005C080 */ sll $t8, $a1, 2 -/* 03972C 80038B2C 01F8C821 */ addu $t9, $t7, $t8 -/* 039730 80038B30 A4990018 */ sh $t9, 0x18($a0) -/* 039734 80038B34 46003221 */ cvt.d.s $f8, $f6 -/* 039738 80038B38 46244280 */ add.d $f10, $f8, $f4 -/* 03973C 80038B3C 84880018 */ lh $t0, 0x18($a0) -/* 039740 80038B40 46205420 */ cvt.s.d $f16, $f10 -/* 039744 80038B44 29010100 */ slti $at, $t0, 0x100 -/* 039748 80038B48 14200006 */ bnez $at, .L80038B64 -/* 03974C 80038B4C E4900010 */ swc1 $f16, 0x10($a0) -/* 039750 80038B50 0C003FEE */ jal func_8000FFB8 -/* 039754 80038B54 AFA40018 */ sw $a0, 0x18($sp) -/* 039758 80038B58 8FA40018 */ lw $a0, 0x18($sp) -/* 03975C 80038B5C 240900FF */ li $t1, 255 -/* 039760 80038B60 A4890018 */ sh $t1, 0x18($a0) -.L80038B64: -/* 039764 80038B64 8FBF0014 */ lw $ra, 0x14($sp) -/* 039768 80038B68 27BD0018 */ addiu $sp, $sp, 0x18 -/* 03976C 80038B6C 03E00008 */ jr $ra -/* 039770 80038B70 00000000 */ nop - -glabel func_80038B74 -/* 039774 80038B74 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 039778 80038B78 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 03977C 80038B7C 44812000 */ mtc1 $at, $f4 -/* 039780 80038B80 AFBF0014 */ sw $ra, 0x14($sp) -/* 039784 80038B84 AFA5001C */ sw $a1, 0x1c($sp) -/* 039788 80038B88 00803025 */ move $a2, $a0 -/* 03978C 80038B8C A4800018 */ sh $zero, 0x18($a0) -/* 039790 80038B90 E4840008 */ swc1 $f4, 8($a0) -/* 039794 80038B94 8CCE0040 */ lw $t6, 0x40($a2) -/* 039798 80038B98 00002025 */ move $a0, $zero -/* 03979C 80038B9C 81C50055 */ lb $a1, 0x55($t6) -/* 0397A0 80038BA0 AFA60018 */ sw $a2, 0x18($sp) -/* 0397A4 80038BA4 0C01BE53 */ jal func_8006F94C -/* 0397A8 80038BA8 24A5FFFF */ addiu $a1, $a1, -1 -/* 0397AC 80038BAC 8FA4001C */ lw $a0, 0x1c($sp) -/* 0397B0 80038BB0 8FA60018 */ lw $a2, 0x18($sp) -/* 0397B4 80038BB4 240F00FF */ li $t7, 255 -/* 0397B8 80038BB8 A0C2003A */ sb $v0, 0x3a($a2) -/* 0397BC 80038BBC ACC00078 */ sw $zero, 0x78($a2) -/* 0397C0 80038BC0 ACCF007C */ sw $t7, 0x7c($a2) -/* 0397C4 80038BC4 80830008 */ lb $v1, 8($a0) -/* 0397C8 80038BC8 240A0001 */ li $t2, 1 -/* 0397CC 80038BCC 10600004 */ beqz $v1, .L80038BE0 -/* 0397D0 80038BD0 0003CA00 */ sll $t9, $v1, 8 -/* 0397D4 80038BD4 3328FF00 */ andi $t0, $t9, 0xff00 -/* 0397D8 80038BD8 01E84825 */ or $t1, $t7, $t0 -/* 0397DC 80038BDC ACC9007C */ sw $t1, 0x7c($a2) -.L80038BE0: -/* 0397E0 80038BE0 ACCA0074 */ sw $t2, 0x74($a2) -/* 0397E4 80038BE4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0397E8 80038BE8 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0397EC 80038BEC 03E00008 */ jr $ra -/* 0397F0 80038BF0 00000000 */ nop - -glabel func_80038BF4 -/* 0397F4 80038BF4 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0397F8 80038BF8 AFBF002C */ sw $ra, 0x2c($sp) -/* 0397FC 80038BFC AFB00028 */ sw $s0, 0x28($sp) -/* 039800 80038C00 8C8E0078 */ lw $t6, 0x78($a0) -/* 039804 80038C04 8C88007C */ lw $t0, 0x7c($a0) -/* 039808 80038C08 01C51021 */ addu $v0, $t6, $a1 -/* 03980C 80038C0C 2841000B */ slti $at, $v0, 0xb -/* 039810 80038C10 00081A03 */ sra $v1, $t0, 8 -/* 039814 80038C14 00808025 */ move $s0, $a0 -/* 039818 80038C18 AC820078 */ sw $v0, 0x78($a0) -/* 03981C 80038C1C 14200012 */ bnez $at, .L80038C68 -/* 039820 80038C20 307800FF */ andi $t8, $v1, 0xff -/* 039824 80038C24 13000010 */ beqz $t8, .L80038C68 -/* 039828 80038C28 0018CA00 */ sll $t9, $t8, 8 -/* 03982C 80038C2C 01194826 */ xor $t1, $t0, $t9 -/* 039830 80038C30 C48C000C */ lwc1 $f12, 0xc($a0) -/* 039834 80038C34 C48E0010 */ lwc1 $f14, 0x10($a0) -/* 039838 80038C38 8C860014 */ lw $a2, 0x14($a0) -/* 03983C 80038C3C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 039840 80038C40 44812000 */ mtc1 $at, $f4 -/* 039844 80038C44 AC89007C */ sw $t1, 0x7c($a0) -/* 039848 80038C48 270AFFFF */ addiu $t2, $t8, -1 -/* 03984C 80038C4C AFAA0018 */ sw $t2, 0x18($sp) -/* 039850 80038C50 AFA00010 */ sw $zero, 0x10($sp) -/* 039854 80038C54 2407002C */ li $a3, 44 -/* 039858 80038C58 0C00FF11 */ jal func_8003FC44 -/* 03985C 80038C5C E7A40014 */ swc1 $f4, 0x14($sp) -/* 039860 80038C60 8E020078 */ lw $v0, 0x78($s0) -/* 039864 80038C64 00000000 */ nop -.L80038C68: -/* 039868 80038C68 28410014 */ slti $at, $v0, 0x14 -/* 03986C 80038C6C 10200013 */ beqz $at, .L80038CBC -/* 039870 80038C70 28410028 */ slti $at, $v0, 0x28 -/* 039874 80038C74 44823000 */ mtc1 $v0, $f6 -/* 039878 80038C78 3C0141A0 */ li $at, 0x41A00000 # 20.000000 -/* 03987C 80038C7C 46803220 */ cvt.s.w $f8, $f6 -/* 039880 80038C80 44815000 */ mtc1 $at, $f10 -/* 039884 80038C84 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 039888 80038C88 460A4403 */ div.s $f16, $f8, $f10 -/* 03988C 80038C8C 44819000 */ mtc1 $at, $f18 -/* 039890 80038C90 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 039894 80038C94 44813000 */ mtc1 $at, $f6 -/* 039898 80038C98 8E0B007C */ lw $t3, 0x7c($s0) -/* 03989C 80038C9C 00000000 */ nop -/* 0398A0 80038CA0 356C00FF */ ori $t4, $t3, 0xff -/* 0398A4 80038CA4 AE0C007C */ sw $t4, 0x7c($s0) -/* 0398A8 80038CA8 46128102 */ mul.s $f4, $f16, $f18 -/* 0398AC 80038CAC 46062200 */ add.s $f8, $f4, $f6 -/* 0398B0 80038CB0 10000019 */ b .L80038D18 -/* 0398B4 80038CB4 E6080008 */ swc1 $f8, 8($s0) -/* 0398B8 80038CB8 28410028 */ slti $at, $v0, 0x28 -.L80038CBC: -/* 0398BC 80038CBC 10200014 */ beqz $at, .L80038D10 -/* 0398C0 80038CC0 244DFFEC */ addiu $t5, $v0, -0x14 -/* 0398C4 80038CC4 448D5000 */ mtc1 $t5, $f10 -/* 0398C8 80038CC8 3C0141A0 */ li $at, 0x41A00000 # 20.000000 -/* 0398CC 80038CCC 46805420 */ cvt.s.w $f16, $f10 -/* 0398D0 80038CD0 44819000 */ mtc1 $at, $f18 -/* 0398D4 80038CD4 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 0398D8 80038CD8 46128103 */ div.s $f4, $f16, $f18 -/* 0398DC 80038CDC 44813000 */ mtc1 $at, $f6 -/* 0398E0 80038CE0 3C014128 */ li $at, 0x41280000 # 10.500000 -/* 0398E4 80038CE4 00027080 */ sll $t6, $v0, 2 -/* 0398E8 80038CE8 44815000 */ mtc1 $at, $f10 -/* 0398EC 80038CEC 01C27023 */ subu $t6, $t6, $v0 -/* 0398F0 80038CF0 000E7080 */ sll $t6, $t6, 2 -/* 0398F4 80038CF4 240F01EF */ li $t7, 495 -/* 0398F8 80038CF8 01EEC023 */ subu $t8, $t7, $t6 -/* 0398FC 80038CFC AE18007C */ sw $t8, 0x7c($s0) -/* 039900 80038D00 46062202 */ mul.s $f8, $f4, $f6 -/* 039904 80038D04 460A4400 */ add.s $f16, $f8, $f10 -/* 039908 80038D08 10000003 */ b .L80038D18 -/* 03990C 80038D0C E6100008 */ swc1 $f16, 8($s0) -.L80038D10: -/* 039910 80038D10 0C003FEE */ jal func_8000FFB8 -/* 039914 80038D14 02002025 */ move $a0, $s0 -.L80038D18: -/* 039918 80038D18 8E190074 */ lw $t9, 0x74($s0) -/* 03991C 80038D1C 00000000 */ nop -/* 039920 80038D20 1320000A */ beqz $t9, .L80038D4C -/* 039924 80038D24 8FBF002C */ lw $ra, 0x2c($sp) -/* 039928 80038D28 0C0270F2 */ jal func_8009C3C8 -/* 03992C 80038D2C 00000000 */ nop -/* 039930 80038D30 28410002 */ slti $at, $v0, 2 -/* 039934 80038D34 10200004 */ beqz $at, .L80038D48 -/* 039938 80038D38 02002025 */ move $a0, $s0 -/* 03993C 80038D3C 0C02BF0F */ jal func_800AFC3C -/* 039940 80038D40 24050002 */ li $a1, 2 -/* 039944 80038D44 AE000074 */ sw $zero, 0x74($s0) -.L80038D48: -/* 039948 80038D48 8FBF002C */ lw $ra, 0x2c($sp) -.L80038D4C: -/* 03994C 80038D4C 8FB00028 */ lw $s0, 0x28($sp) -/* 039950 80038D50 03E00008 */ jr $ra -/* 039954 80038D54 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_80038D58 -/* 039958 80038D58 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 03995C 80038D5C AFBF0014 */ sw $ra, 0x14($sp) -/* 039960 80038D60 AFA5001C */ sw $a1, 0x1c($sp) -/* 039964 80038D64 8C8F004C */ lw $t7, 0x4c($a0) -/* 039968 80038D68 240E0002 */ li $t6, 2 -/* 03996C 80038D6C A5EE0014 */ sh $t6, 0x14($t7) -/* 039970 80038D70 8C98004C */ lw $t8, 0x4c($a0) -/* 039974 80038D74 2419000F */ li $t9, 15 -/* 039978 80038D78 A3000011 */ sb $zero, 0x11($t8) -/* 03997C 80038D7C 8C88004C */ lw $t0, 0x4c($a0) -/* 039980 80038D80 00000000 */ nop -/* 039984 80038D84 A1190010 */ sb $t9, 0x10($t0) -/* 039988 80038D88 8C89004C */ lw $t1, 0x4c($a0) -/* 03998C 80038D8C 00000000 */ nop -/* 039990 80038D90 A1200012 */ sb $zero, 0x12($t1) -/* 039994 80038D94 0C01BAA4 */ jal func_8006EA90 -/* 039998 80038D98 AFA40018 */ sw $a0, 0x18($sp) -/* 03999C 80038D9C 8C4A0010 */ lw $t2, 0x10($v0) -/* 0399A0 80038DA0 8FA40018 */ lw $a0, 0x18($sp) -/* 0399A4 80038DA4 314B0001 */ andi $t3, $t2, 1 -/* 0399A8 80038DA8 11600002 */ beqz $t3, .L80038DB4 -/* 0399AC 80038DAC 240C0001 */ li $t4, 1 -/* 0399B0 80038DB0 AC8C0078 */ sw $t4, 0x78($a0) -.L80038DB4: -/* 0399B4 80038DB4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0399B8 80038DB8 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0399BC 80038DBC 03E00008 */ jr $ra -/* 0399C0 80038DC0 00000000 */ nop - -glabel func_80038DC4 -/* 0399C4 80038DC4 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0399C8 80038DC8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0399CC 80038DCC AFA5001C */ sw $a1, 0x1c($sp) -/* 0399D0 80038DD0 8C8E0078 */ lw $t6, 0x78($a0) -/* 0399D4 80038DD4 00803025 */ move $a2, $a0 -/* 0399D8 80038DD8 11C00015 */ beqz $t6, .L80038E30 -/* 0399DC 80038DDC 8FBF0014 */ lw $ra, 0x14($sp) -/* 0399E0 80038DE0 8C8F004C */ lw $t7, 0x4c($a0) -/* 0399E4 80038DE4 8C82003C */ lw $v0, 0x3c($a0) -/* 0399E8 80038DE8 91F80013 */ lbu $t8, 0x13($t7) -/* 0399EC 80038DEC 00000000 */ nop -/* 0399F0 80038DF0 2B010078 */ slti $at, $t8, 0x78 -/* 0399F4 80038DF4 1020000E */ beqz $at, .L80038E30 -/* 0399F8 80038DF8 8FBF0014 */ lw $ra, 0x14($sp) -/* 0399FC 80038DFC 80440008 */ lb $a0, 8($v0) -/* 039A00 80038E00 0C01BCCE */ jal func_8006F338 -/* 039A04 80038E04 AFA60018 */ sw $a2, 0x18($sp) -/* 039A08 80038E08 8FA60018 */ lw $a2, 0x18($sp) -/* 039A0C 80038E0C 24040030 */ li $a0, 48 -/* 039A10 80038E10 00002825 */ move $a1, $zero -/* 039A14 80038E14 0C000741 */ jal func_80001D04 -/* 039A18 80038E18 ACC00078 */ sw $zero, 0x78($a2) -/* 039A1C 80038E1C 2404012A */ li $a0, 298 -/* 039A20 80038E20 00002825 */ move $a1, $zero -/* 039A24 80038E24 0C0003F7 */ jal func_80000FDC -/* 039A28 80038E28 3C063F80 */ lui $a2, 0x3f80 -/* 039A2C 80038E2C 8FBF0014 */ lw $ra, 0x14($sp) -.L80038E30: -/* 039A30 80038E30 27BD0018 */ addiu $sp, $sp, 0x18 -/* 039A34 80038E34 03E00008 */ jr $ra -/* 039A38 80038E38 00000000 */ nop - -glabel func_80038E3C -/* 039A3C 80038E3C 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 039A40 80038E40 AFBF0014 */ sw $ra, 0x14($sp) -/* 039A44 80038E44 90AF0010 */ lbu $t7, 0x10($a1) -/* 039A48 80038E48 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 039A4C 80038E4C 448F2000 */ mtc1 $t7, $f4 -/* 039A50 80038E50 44811000 */ mtc1 $at, $f2 -/* 039A54 80038E54 46802020 */ cvt.s.w $f0, $f4 -/* 039A58 80038E58 3C014300 */ li $at, 0x43000000 # 128.000000 -/* 039A5C 80038E5C 44813000 */ mtc1 $at, $f6 -/* 039A60 80038E60 4602003C */ c.lt.s $f0, $f2 -/* 039A64 80038E64 00803025 */ move $a2, $a0 -/* 039A68 80038E68 45000003 */ bc1f .L80038E78 -/* 039A6C 80038E6C 00000000 */ nop -/* 039A70 80038E70 46001006 */ mov.s $f0, $f2 -/* 039A74 80038E74 00000000 */ nop -.L80038E78: -/* 039A78 80038E78 46060003 */ div.s $f0, $f0, $f6 -/* 039A7C 80038E7C 8CC20064 */ lw $v0, 0x64($a2) -/* 039A80 80038E80 E4C00008 */ swc1 $f0, 8($a2) -/* 039A84 80038E84 90B90011 */ lbu $t9, 0x11($a1) -/* 039A88 80038E88 00000000 */ nop -/* 039A8C 80038E8C 00194280 */ sll $t0, $t9, 0xa -/* 039A90 80038E90 A4C80000 */ sh $t0, ($a2) -/* 039A94 80038E94 84C40000 */ lh $a0, ($a2) -/* 039A98 80038E98 AFA60020 */ sw $a2, 0x20($sp) -/* 039A9C 80038E9C AFA50024 */ sw $a1, 0x24($sp) -/* 039AA0 80038EA0 0C01C1F1 */ jal func_800707C4 -/* 039AA4 80038EA4 AFA20018 */ sw $v0, 0x18($sp) -/* 039AA8 80038EA8 8FA20018 */ lw $v0, 0x18($sp) -/* 039AAC 80038EAC 8FA60020 */ lw $a2, 0x20($sp) -/* 039AB0 80038EB0 44804000 */ mtc1 $zero, $f8 -/* 039AB4 80038EB4 E4400000 */ swc1 $f0, ($v0) -/* 039AB8 80038EB8 E4480004 */ swc1 $f8, 4($v0) -/* 039ABC 80038EBC 84C40000 */ lh $a0, ($a2) -/* 039AC0 80038EC0 0C01C1FE */ jal func_800707F8 -/* 039AC4 80038EC4 00000000 */ nop -/* 039AC8 80038EC8 8FA20018 */ lw $v0, 0x18($sp) -/* 039ACC 80038ECC 8FA60020 */ lw $a2, 0x20($sp) -/* 039AD0 80038ED0 8FA50024 */ lw $a1, 0x24($sp) -/* 039AD4 80038ED4 E4400008 */ swc1 $f0, 8($v0) -/* 039AD8 80038ED8 C44A0000 */ lwc1 $f10, ($v0) -/* 039ADC 80038EDC C4D0000C */ lwc1 $f16, 0xc($a2) -/* 039AE0 80038EE0 C4C40014 */ lwc1 $f4, 0x14($a2) -/* 039AE4 80038EE4 46105482 */ mul.s $f18, $f10, $f16 -/* 039AE8 80038EE8 240B0002 */ li $t3, 2 -/* 039AEC 80038EEC 46040182 */ mul.s $f6, $f0, $f4 -/* 039AF0 80038EF0 46069200 */ add.s $f8, $f18, $f6 -/* 039AF4 80038EF4 46004287 */ neg.s $f10, $f8 -/* 039AF8 80038EF8 E44A000C */ swc1 $f10, 0xc($v0) -/* 039AFC 80038EFC 90A90010 */ lbu $t1, 0x10($a1) -/* 039B00 80038F00 00000000 */ nop -/* 039B04 80038F04 AC490010 */ sw $t1, 0x10($v0) -/* 039B08 80038F08 80AA0018 */ lb $t2, 0x18($a1) -/* 039B0C 80038F0C 00000000 */ nop -/* 039B10 80038F10 A04A0014 */ sb $t2, 0x14($v0) -/* 039B14 80038F14 8CCC004C */ lw $t4, 0x4c($a2) -/* 039B18 80038F18 00000000 */ nop -/* 039B1C 80038F1C A58B0014 */ sh $t3, 0x14($t4) -/* 039B20 80038F20 8CCD004C */ lw $t5, 0x4c($a2) -/* 039B24 80038F24 00000000 */ nop -/* 039B28 80038F28 A1A00011 */ sb $zero, 0x11($t5) -/* 039B2C 80038F2C 8CCF004C */ lw $t7, 0x4c($a2) -/* 039B30 80038F30 90AE0010 */ lbu $t6, 0x10($a1) -/* 039B34 80038F34 00000000 */ nop -/* 039B38 80038F38 A1EE0010 */ sb $t6, 0x10($t7) -/* 039B3C 80038F3C 8CD8004C */ lw $t8, 0x4c($a2) -/* 039B40 80038F40 00000000 */ nop -/* 039B44 80038F44 A3000012 */ sb $zero, 0x12($t8) -/* 039B48 80038F48 8FBF0014 */ lw $ra, 0x14($sp) -/* 039B4C 80038F4C 27BD0020 */ addiu $sp, $sp, 0x20 -/* 039B50 80038F50 03E00008 */ jr $ra -/* 039B54 80038F54 00000000 */ nop - -glabel func_80038F58 -/* 039B58 80038F58 27BDFF80 */ addiu $sp, $sp, -0x80 -/* 039B5C 80038F5C AFBF0044 */ sw $ra, 0x44($sp) -/* 039B60 80038F60 AFB70040 */ sw $s7, 0x40($sp) -/* 039B64 80038F64 AFB6003C */ sw $s6, 0x3c($sp) -/* 039B68 80038F68 AFB50038 */ sw $s5, 0x38($sp) -/* 039B6C 80038F6C AFB40034 */ sw $s4, 0x34($sp) -/* 039B70 80038F70 AFB30030 */ sw $s3, 0x30($sp) -/* 039B74 80038F74 AFB2002C */ sw $s2, 0x2c($sp) -/* 039B78 80038F78 AFB10028 */ sw $s1, 0x28($sp) -/* 039B7C 80038F7C AFB00024 */ sw $s0, 0x24($sp) -/* 039B80 80038F80 E7B70018 */ swc1 $f23, 0x18($sp) -/* 039B84 80038F84 E7B6001C */ swc1 $f22, 0x1c($sp) -/* 039B88 80038F88 E7B50010 */ swc1 $f21, 0x10($sp) -/* 039B8C 80038F8C E7B40014 */ swc1 $f20, 0x14($sp) -/* 039B90 80038F90 AFA50084 */ sw $a1, 0x84($sp) -/* 039B94 80038F94 8C950064 */ lw $s5, 0x64($a0) -/* 039B98 80038F98 0080A025 */ move $s4, $a0 -/* 039B9C 80038F9C 0C01BAA4 */ jal func_8006EA90 -/* 039BA0 80038FA0 24100001 */ li $s0, 1 -/* 039BA4 80038FA4 82A30014 */ lb $v1, 0x14($s5) -/* 039BA8 80038FA8 00000000 */ nop -/* 039BAC 80038FAC 1460000B */ bnez $v1, .L80038FDC -/* 039BB0 80038FB0 24010001 */ li $at, 1 -/* 039BB4 80038FB4 904F0048 */ lbu $t7, 0x48($v0) -/* 039BB8 80038FB8 8C4E0000 */ lw $t6, ($v0) -/* 039BBC 80038FBC 000FC040 */ sll $t8, $t7, 1 -/* 039BC0 80038FC0 01D8C821 */ addu $t9, $t6, $t8 -/* 039BC4 80038FC4 87280000 */ lh $t0, ($t9) -/* 039BC8 80038FC8 24010008 */ li $at, 8 -/* 039BCC 80038FCC 15010003 */ bne $t0, $at, .L80038FDC -/* 039BD0 80038FD0 24010001 */ li $at, 1 -/* 039BD4 80038FD4 00008025 */ move $s0, $zero -/* 039BD8 80038FD8 24010001 */ li $at, 1 -.L80038FDC: -/* 039BDC 80038FDC 1461000B */ bne $v1, $at, .L8003900C -/* 039BE0 80038FE0 00000000 */ nop -/* 039BE4 80038FE4 904A0048 */ lbu $t2, 0x48($v0) -/* 039BE8 80038FE8 8C490000 */ lw $t1, ($v0) -/* 039BEC 80038FEC 000A5840 */ sll $t3, $t2, 1 -/* 039BF0 80038FF0 012B6021 */ addu $t4, $t1, $t3 -/* 039BF4 80038FF4 858D0000 */ lh $t5, ($t4) -/* 039BF8 80038FF8 00000000 */ nop -/* 039BFC 80038FFC 29A10008 */ slti $at, $t5, 8 -/* 039C00 80039000 10200002 */ beqz $at, .L8003900C -/* 039C04 80039004 00000000 */ nop -/* 039C08 80039008 00008025 */ move $s0, $zero -.L8003900C: -/* 039C0C 8003900C 12000046 */ beqz $s0, .L80039128 -/* 039C10 80039010 8FBF0044 */ lw $ra, 0x44($sp) -/* 039C14 80039014 8E8F004C */ lw $t7, 0x4c($s4) -/* 039C18 80039018 8EA20010 */ lw $v0, 0x10($s5) -/* 039C1C 8003901C 91EE0013 */ lbu $t6, 0x13($t7) -/* 039C20 80039020 27A40074 */ addiu $a0, $sp, 0x74 -/* 039C24 80039024 01C2082A */ slt $at, $t6, $v0 -/* 039C28 80039028 1020003F */ beqz $at, .L80039128 -/* 039C2C 8003902C 8FBF0044 */ lw $ra, 0x44($sp) -/* 039C30 80039030 44822000 */ mtc1 $v0, $f4 -/* 039C34 80039034 0C006E9D */ jal func_8001BA74 -/* 039C38 80039038 468025A0 */ cvt.s.w $f22, $f4 -/* 039C3C 8003903C 8FB80074 */ lw $t8, 0x74($sp) -/* 039C40 80039040 00009025 */ move $s2, $zero -/* 039C44 80039044 1B000037 */ blez $t8, .L80039124 -/* 039C48 80039048 00409825 */ move $s3, $v0 -/* 039C4C 8003904C 4480A000 */ mtc1 $zero, $f20 -/* 039C50 80039050 2417FF88 */ li $s7, -120 -/* 039C54 80039054 2416FFFF */ li $s6, -1 -.L80039058: -/* 039C58 80039058 8E700000 */ lw $s0, ($s3) -/* 039C5C 8003905C 00000000 */ nop -/* 039C60 80039060 8E110064 */ lw $s1, 0x64($s0) -/* 039C64 80039064 00000000 */ nop -/* 039C68 80039068 86390000 */ lh $t9, ($s1) -/* 039C6C 8003906C 00000000 */ nop -/* 039C70 80039070 12D90028 */ beq $s6, $t9, .L80039114 -/* 039C74 80039074 8FAA0074 */ lw $t2, 0x74($sp) -/* 039C78 80039078 8E280108 */ lw $t0, 0x108($s1) -/* 039C7C 8003907C 00000000 */ nop -/* 039C80 80039080 15000024 */ bnez $t0, .L80039114 -/* 039C84 80039084 8FAA0074 */ lw $t2, 0x74($sp) -/* 039C88 80039088 C606000C */ lwc1 $f6, 0xc($s0) -/* 039C8C 8003908C C688000C */ lwc1 $f8, 0xc($s4) -/* 039C90 80039090 C60A0010 */ lwc1 $f10, 0x10($s0) -/* 039C94 80039094 46083001 */ sub.s $f0, $f6, $f8 -/* 039C98 80039098 C6900010 */ lwc1 $f16, 0x10($s4) -/* 039C9C 8003909C 46000182 */ mul.s $f6, $f0, $f0 -/* 039CA0 800390A0 46105081 */ sub.s $f2, $f10, $f16 -/* 039CA4 800390A4 C6120014 */ lwc1 $f18, 0x14($s0) -/* 039CA8 800390A8 C6840014 */ lwc1 $f4, 0x14($s4) -/* 039CAC 800390AC 46021202 */ mul.s $f8, $f2, $f2 -/* 039CB0 800390B0 46049381 */ sub.s $f14, $f18, $f4 -/* 039CB4 800390B4 460E7402 */ mul.s $f16, $f14, $f14 -/* 039CB8 800390B8 46083280 */ add.s $f10, $f6, $f8 -/* 039CBC 800390BC 0C0326B4 */ jal sqrtf -/* 039CC0 800390C0 46105300 */ add.s $f12, $f10, $f16 -/* 039CC4 800390C4 4616003C */ c.lt.s $f0, $f22 -/* 039CC8 800390C8 00000000 */ nop -/* 039CCC 800390CC 45000011 */ bc1f .L80039114 -/* 039CD0 800390D0 8FAA0074 */ lw $t2, 0x74($sp) -/* 039CD4 800390D4 C6B20000 */ lwc1 $f18, ($s5) -/* 039CD8 800390D8 C604000C */ lwc1 $f4, 0xc($s0) -/* 039CDC 800390DC C6A80008 */ lwc1 $f8, 8($s5) -/* 039CE0 800390E0 46049182 */ mul.s $f6, $f18, $f4 -/* 039CE4 800390E4 C60A0014 */ lwc1 $f10, 0x14($s0) -/* 039CE8 800390E8 C6A4000C */ lwc1 $f4, 0xc($s5) -/* 039CEC 800390EC 460A4402 */ mul.s $f16, $f8, $f10 -/* 039CF0 800390F0 46103480 */ add.s $f18, $f6, $f16 -/* 039CF4 800390F4 46049000 */ add.s $f0, $f18, $f4 -/* 039CF8 800390F8 4614003C */ c.lt.s $f0, $f20 -/* 039CFC 800390FC 00000000 */ nop -/* 039D00 80039100 45000004 */ bc1f .L80039114 -/* 039D04 80039104 8FAA0074 */ lw $t2, 0x74($sp) -/* 039D08 80039108 AE340108 */ sw $s4, 0x108($s1) -/* 039D0C 8003910C A2370200 */ sb $s7, 0x200($s1) -/* 039D10 80039110 8FAA0074 */ lw $t2, 0x74($sp) -.L80039114: -/* 039D14 80039114 26520001 */ addiu $s2, $s2, 1 -/* 039D18 80039118 024A082A */ slt $at, $s2, $t2 -/* 039D1C 8003911C 1420FFCE */ bnez $at, .L80039058 -/* 039D20 80039120 26730004 */ addiu $s3, $s3, 4 -.L80039124: -/* 039D24 80039124 8FBF0044 */ lw $ra, 0x44($sp) -.L80039128: -/* 039D28 80039128 C7B50010 */ lwc1 $f21, 0x10($sp) -/* 039D2C 8003912C C7B40014 */ lwc1 $f20, 0x14($sp) -/* 039D30 80039130 C7B70018 */ lwc1 $f23, 0x18($sp) -/* 039D34 80039134 C7B6001C */ lwc1 $f22, 0x1c($sp) -/* 039D38 80039138 8FB00024 */ lw $s0, 0x24($sp) -/* 039D3C 8003913C 8FB10028 */ lw $s1, 0x28($sp) -/* 039D40 80039140 8FB2002C */ lw $s2, 0x2c($sp) -/* 039D44 80039144 8FB30030 */ lw $s3, 0x30($sp) -/* 039D48 80039148 8FB40034 */ lw $s4, 0x34($sp) -/* 039D4C 8003914C 8FB50038 */ lw $s5, 0x38($sp) -/* 039D50 80039150 8FB6003C */ lw $s6, 0x3c($sp) -/* 039D54 80039154 8FB70040 */ lw $s7, 0x40($sp) -/* 039D58 80039158 03E00008 */ jr $ra -/* 039D5C 8003915C 27BD0080 */ addiu $sp, $sp, 0x80 - -glabel func_80039160 -/* 039D60 80039160 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 039D64 80039164 AFBF0014 */ sw $ra, 0x14($sp) -/* 039D68 80039168 80AE0008 */ lb $t6, 8($a1) -/* 039D6C 8003916C 0C0044E4 */ jal func_80011390 -/* 039D70 80039170 AC8E0078 */ sw $t6, 0x78($a0) -/* 039D74 80039174 8FBF0014 */ lw $ra, 0x14($sp) -/* 039D78 80039178 27BD0018 */ addiu $sp, $sp, 0x18 -/* 039D7C 8003917C 03E00008 */ jr $ra -/* 039D80 80039180 00000000 */ nop - -glabel func_80039184 -/* 039D84 80039184 AFA40000 */ sw $a0, ($sp) -/* 039D88 80039188 03E00008 */ jr $ra -/* 039D8C 8003918C AFA50004 */ sw $a1, 4($sp) - -glabel func_80039190 -/* 039D90 80039190 90AE0008 */ lbu $t6, 8($a1) -/* 039D94 80039194 00000000 */ nop -/* 039D98 80039198 AC8E0078 */ sw $t6, 0x78($a0) -/* 039D9C 8003919C 90AF0009 */ lbu $t7, 9($a1) -/* 039DA0 800391A0 00000000 */ nop -/* 039DA4 800391A4 AC8F007C */ sw $t7, 0x7c($a0) -/* 039DA8 800391A8 90B9000A */ lbu $t9, 0xa($a1) -/* 039DAC 800391AC 00000000 */ nop -/* 039DB0 800391B0 00194280 */ sll $t0, $t9, 0xa -/* 039DB4 800391B4 03E00008 */ jr $ra -/* 039DB8 800391B8 A4880000 */ sh $t0, ($a0) - -glabel func_800391BC -/* 039DBC 800391BC AFA40000 */ sw $a0, ($sp) -/* 039DC0 800391C0 03E00008 */ jr $ra -/* 039DC4 800391C4 AFA50004 */ sw $a1, 4($sp) - -glabel func_800391C8 -/* 039DC8 800391C8 AFA50004 */ sw $a1, 4($sp) -/* 039DCC 800391CC 8C8F004C */ lw $t7, 0x4c($a0) -/* 039DD0 800391D0 240E0001 */ li $t6, 1 -/* 039DD4 800391D4 A5EE0014 */ sh $t6, 0x14($t7) -/* 039DD8 800391D8 8C99004C */ lw $t9, 0x4c($a0) -/* 039DDC 800391DC 24180003 */ li $t8, 3 -/* 039DE0 800391E0 A3380011 */ sb $t8, 0x11($t9) -/* 039DE4 800391E4 8C89004C */ lw $t1, 0x4c($a0) -/* 039DE8 800391E8 24080014 */ li $t0, 20 -/* 039DEC 800391EC A1280010 */ sb $t0, 0x10($t1) -/* 039DF0 800391F0 8C8A004C */ lw $t2, 0x4c($a0) -/* 039DF4 800391F4 03E00008 */ jr $ra -/* 039DF8 800391F8 A1400012 */ sb $zero, 0x12($t2) - -glabel func_800391FC -/* 039DFC 800391FC 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 039E00 80039200 AFBF0024 */ sw $ra, 0x24($sp) -/* 039E04 80039204 AFB00020 */ sw $s0, 0x20($sp) -/* 039E08 80039208 8C820078 */ lw $v0, 0x78($a0) -/* 039E0C 8003920C 00808025 */ move $s0, $a0 -/* 039E10 80039210 18400006 */ blez $v0, .L8003922C -/* 039E14 80039214 02003025 */ move $a2, $s0 -/* 039E18 80039218 00457023 */ subu $t6, $v0, $a1 -/* 039E1C 8003921C 00057840 */ sll $t7, $a1, 1 -/* 039E20 80039220 AC8E0078 */ sw $t6, 0x78($a0) -/* 039E24 80039224 10000002 */ b .L80039230 -/* 039E28 80039228 01E02825 */ move $a1, $t7 -.L8003922C: -/* 039E2C 8003922C AE000078 */ sw $zero, 0x78($s0) -.L80039230: -/* 039E30 80039230 86180018 */ lh $t8, 0x18($s0) -/* 039E34 80039234 02002025 */ move $a0, $s0 -/* 039E38 80039238 0C007D18 */ jal func_8001F460 -/* 039E3C 8003923C AFB8002C */ sw $t8, 0x2c($sp) -/* 039E40 80039240 8FA6002C */ lw $a2, 0x2c($sp) -/* 039E44 80039244 241900AD */ li $t9, 173 -/* 039E48 80039248 AFB90010 */ sw $t9, 0x10($sp) -/* 039E4C 8003924C 02002025 */ move $a0, $s0 -/* 039E50 80039250 00002825 */ move $a1, $zero -/* 039E54 80039254 0C0044F3 */ jal func_800113CC -/* 039E58 80039258 240700AC */ li $a3, 172 -/* 039E5C 8003925C 8E08004C */ lw $t0, 0x4c($s0) -/* 039E60 80039260 00000000 */ nop -/* 039E64 80039264 91090013 */ lbu $t1, 0x13($t0) -/* 039E68 80039268 00000000 */ nop -/* 039E6C 8003926C 292100FF */ slti $at, $t1, 0xff -/* 039E70 80039270 1020000E */ beqz $at, .L800392AC -/* 039E74 80039274 8FBF0024 */ lw $ra, 0x24($sp) -/* 039E78 80039278 8E0A0078 */ lw $t2, 0x78($s0) -/* 039E7C 8003927C 240B003C */ li $t3, 60 -/* 039E80 80039280 15400009 */ bnez $t2, .L800392A8 -/* 039E84 80039284 2404023B */ li $a0, 571 -/* 039E88 80039288 8E05000C */ lw $a1, 0xc($s0) -/* 039E8C 8003928C 8E060010 */ lw $a2, 0x10($s0) -/* 039E90 80039290 8E070014 */ lw $a3, 0x14($s0) -/* 039E94 80039294 AE0B0078 */ sw $t3, 0x78($s0) -/* 039E98 80039298 240C0004 */ li $t4, 4 -/* 039E9C 8003929C AFAC0010 */ sw $t4, 0x10($sp) -/* 039EA0 800392A0 0C002556 */ jal func_80009558 -/* 039EA4 800392A4 AFA00014 */ sw $zero, 0x14($sp) -.L800392A8: -/* 039EA8 800392A8 8FBF0024 */ lw $ra, 0x24($sp) -.L800392AC: -/* 039EAC 800392AC 8FB00020 */ lw $s0, 0x20($sp) -/* 039EB0 800392B0 03E00008 */ jr $ra -/* 039EB4 800392B4 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_800392B8 -/* 039EB8 800392B8 AFA50004 */ sw $a1, 4($sp) -/* 039EBC 800392BC 8C8F004C */ lw $t7, 0x4c($a0) -/* 039EC0 800392C0 240E0001 */ li $t6, 1 -/* 039EC4 800392C4 A5EE0014 */ sh $t6, 0x14($t7) -/* 039EC8 800392C8 8C98004C */ lw $t8, 0x4c($a0) -/* 039ECC 800392CC 2419001E */ li $t9, 30 -/* 039ED0 800392D0 A3000011 */ sb $zero, 0x11($t8) -/* 039ED4 800392D4 8C88004C */ lw $t0, 0x4c($a0) -/* 039ED8 800392D8 44802000 */ mtc1 $zero, $f4 -/* 039EDC 800392DC A1190010 */ sb $t9, 0x10($t0) -/* 039EE0 800392E0 8C89004C */ lw $t1, 0x4c($a0) -/* 039EE4 800392E4 240A00FF */ li $t2, 255 -/* 039EE8 800392E8 A1200012 */ sb $zero, 0x12($t1) -/* 039EEC 800392EC 8C820064 */ lw $v0, 0x64($a0) -/* 039EF0 800392F0 3C018012 */ lui $at, %hi(D_8011D4D4) # $at, 0x8012 -/* 039EF4 800392F4 A04A000D */ sb $t2, 0xd($v0) -/* 039EF8 800392F8 E4440000 */ swc1 $f4, ($v0) -/* 039EFC 800392FC A4400028 */ sh $zero, 0x28($v0) -/* 039F00 80039300 AC40002C */ sw $zero, 0x2c($v0) -/* 039F04 80039304 A4400034 */ sh $zero, 0x34($v0) -/* 039F08 80039308 A0400036 */ sb $zero, 0x36($v0) -/* 039F0C 8003930C AC20D4D4 */ sw $zero, %lo(D_8011D4D4)($at) -/* 039F10 80039310 3C018012 */ lui $at, 0x8012 -/* 039F14 80039314 240B010F */ li $t3, 271 -/* 039F18 80039318 03E00008 */ jr $ra -/* 039F1C 8003931C A42BD4E2 */ sh $t3, -0x2b1e($at) - -glabel func_80039320 -/* 039F20 80039320 3C018012 */ lui $at, 0x8012 -/* 039F24 80039324 AFA40000 */ sw $a0, ($sp) -/* 039F28 80039328 03E00008 */ jr $ra -/* 039F2C 8003932C A424D4E2 */ sh $a0, -0x2b1e($at) - -glabel func_80039330 -/* 039F30 80039330 27BDFF50 */ addiu $sp, $sp, -0xb0 -/* 039F34 80039334 44853000 */ mtc1 $a1, $f6 -/* 039F38 80039338 AFBF002C */ sw $ra, 0x2c($sp) -/* 039F3C 8003933C AFB10028 */ sw $s1, 0x28($sp) -/* 039F40 80039340 AFB00024 */ sw $s0, 0x24($sp) -/* 039F44 80039344 AFA500B4 */ sw $a1, 0xb4($sp) -/* 039F48 80039348 A3A0006B */ sb $zero, 0x6b($sp) -/* 039F4C 8003934C 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 -/* 039F50 80039350 468030A0 */ cvt.s.w $f2, $f6 -/* 039F54 80039354 C4840010 */ lwc1 $f4, 0x10($a0) -/* 039F58 80039358 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) -/* 039F5C 8003935C 00808025 */ move $s0, $a0 -/* 039F60 80039360 46001006 */ mov.s $f0, $f2 -/* 039F64 80039364 15E00007 */ bnez $t7, .L80039384 -/* 039F68 80039368 E7A40098 */ swc1 $f4, 0x98($sp) -/* 039F6C 8003936C 3C01800E */ lui $at, %hi(D_800E6064) # $at, 0x800e -/* 039F70 80039370 C42B6060 */ lwc1 $f11, %lo(D_800E6060)($at) -/* 039F74 80039374 C42A6064 */ lwc1 $f10, %lo(D_800E6064)($at) -/* 039F78 80039378 46001221 */ cvt.d.s $f8, $f2 -/* 039F7C 8003937C 462A4402 */ mul.d $f16, $f8, $f10 -/* 039F80 80039380 46208020 */ cvt.s.d $f0, $f16 -.L80039384: -/* 039F84 80039384 8E110064 */ lw $s1, 0x64($s0) -/* 039F88 80039388 E7A20048 */ swc1 $f2, 0x48($sp) -/* 039F8C 8003938C 0C01AF6C */ jal func_8006BDB0 -/* 039F90 80039390 E7A000AC */ swc1 $f0, 0xac($sp) -/* 039F94 80039394 AFA20064 */ sw $v0, 0x64($sp) -/* 039F98 80039398 86180018 */ lh $t8, 0x18($s0) -/* 039F9C 8003939C AE000074 */ sw $zero, 0x74($s0) -/* 039FA0 800393A0 1700000D */ bnez $t8, .L800393D8 -/* 039FA4 800393A4 00000000 */ nop -/* 039FA8 800393A8 C6240004 */ lwc1 $f4, 4($s1) -/* 039FAC 800393AC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 039FB0 800393B0 44819800 */ mtc1 $at, $f19 -/* 039FB4 800393B4 44809000 */ mtc1 $zero, $f18 -/* 039FB8 800393B8 460021A1 */ cvt.d.s $f6, $f4 -/* 039FBC 800393BC 4626903C */ c.lt.d $f18, $f6 -/* 039FC0 800393C0 00000000 */ nop -/* 039FC4 800393C4 45000004 */ bc1f .L800393D8 -/* 039FC8 800393C8 00000000 */ nop -/* 039FCC 800393CC 44800000 */ mtc1 $zero, $f0 -/* 039FD0 800393D0 00000000 */ nop -/* 039FD4 800393D4 E6200004 */ swc1 $f0, 4($s1) -.L800393D8: -/* 039FD8 800393D8 44800000 */ mtc1 $zero, $f0 -/* 039FDC 800393DC 00002025 */ move $a0, $zero -/* 039FE0 800393E0 E7A0009C */ swc1 $f0, 0x9c($sp) -/* 039FE4 800393E4 E600001C */ swc1 $f0, 0x1c($s0) -/* 039FE8 800393E8 0C006EB2 */ jal func_8001BAC8 -/* 039FEC 800393EC E6000024 */ swc1 $f0, 0x24($s0) -/* 039FF0 800393F0 00401825 */ move $v1, $v0 -/* 039FF4 800393F4 10400019 */ beqz $v0, .L8003945C -/* 039FF8 800393F8 AFA20090 */ sw $v0, 0x90($sp) -/* 039FFC 800393FC 8C420064 */ lw $v0, 0x64($v0) -/* 03A000 80039400 3C014248 */ li $at, 0x42480000 # 50.000000 -/* 03A004 80039404 44817000 */ mtc1 $at, $f14 -/* 03A008 80039408 C44A0038 */ lwc1 $f10, 0x38($v0) -/* 03A00C 8003940C C468000C */ lwc1 $f8, 0xc($v1) -/* 03A010 80039410 460E5402 */ mul.s $f16, $f10, $f14 -/* 03A014 80039414 C44A0040 */ lwc1 $f10, 0x40($v0) -/* 03A018 80039418 C612000C */ lwc1 $f18, 0xc($s0) -/* 03A01C 8003941C C4660014 */ lwc1 $f6, 0x14($v1) -/* 03A020 80039420 46104101 */ sub.s $f4, $f8, $f16 -/* 03A024 80039424 460E5202 */ mul.s $f8, $f10, $f14 -/* 03A028 80039428 46122001 */ sub.s $f0, $f4, $f18 -/* 03A02C 8003942C C6040014 */ lwc1 $f4, 0x14($s0) -/* 03A030 80039430 E7A000A8 */ swc1 $f0, 0xa8($sp) -/* 03A034 80039434 46083401 */ sub.s $f16, $f6, $f8 -/* 03A038 80039438 AFA30090 */ sw $v1, 0x90($sp) -/* 03A03C 8003943C 46000482 */ mul.s $f18, $f0, $f0 -/* 03A040 80039440 46048081 */ sub.s $f2, $f16, $f4 -/* 03A044 80039444 AFA20070 */ sw $v0, 0x70($sp) -/* 03A048 80039448 E7A200A0 */ swc1 $f2, 0xa0($sp) -/* 03A04C 8003944C 46021282 */ mul.s $f10, $f2, $f2 -/* 03A050 80039450 0C0326B4 */ jal sqrtf -/* 03A054 80039454 460A9300 */ add.s $f12, $f18, $f10 -/* 03A058 80039458 E7A0009C */ swc1 $f0, 0x9c($sp) -.L8003945C: -/* 03A05C 8003945C 0C01A955 */ jal func_8006A554 -/* 03A060 80039460 00002025 */ move $a0, $zero -/* 03A064 80039464 8E190078 */ lw $t9, 0x78($s0) -/* 03A068 80039468 00003025 */ move $a2, $zero -/* 03A06C 8003946C 1720003C */ bnez $t9, .L80039560 -/* 03A070 80039470 3C01800E */ lui $at, %hi(D_800E606C) # $at, 0x800e -/* 03A074 80039474 C7A6009C */ lwc1 $f6, 0x9c($sp) -/* 03A078 80039478 C4316068 */ lwc1 $f17, %lo(D_800E6068)($at) -/* 03A07C 8003947C C430606C */ lwc1 $f16, %lo(D_800E606C)($at) -/* 03A080 80039480 46003221 */ cvt.d.s $f8, $f6 -/* 03A084 80039484 4630403C */ c.lt.d $f8, $f16 -/* 03A088 80039488 00000000 */ nop -/* 03A08C 8003948C 45000034 */ bc1f .L80039560 -/* 03A090 80039490 00000000 */ nop -/* 03A094 80039494 8E03004C */ lw $v1, 0x4c($s0) -/* 03A098 80039498 8FAA0090 */ lw $t2, 0x90($sp) -/* 03A09C 8003949C 84680014 */ lh $t0, 0x14($v1) -/* 03A0A0 800394A0 304C2000 */ andi $t4, $v0, 0x2000 -/* 03A0A4 800394A4 31090008 */ andi $t1, $t0, 8 -/* 03A0A8 800394A8 11200005 */ beqz $t1, .L800394C0 -/* 03A0AC 800394AC 00000000 */ nop -/* 03A0B0 800394B0 8C6B0000 */ lw $t3, ($v1) -/* 03A0B4 800394B4 00000000 */ nop -/* 03A0B8 800394B8 114B0003 */ beq $t2, $t3, .L800394C8 -/* 03A0BC 800394BC 304D2000 */ andi $t5, $v0, 0x2000 -.L800394C0: -/* 03A0C0 800394C0 11800027 */ beqz $t4, .L80039560 -/* 03A0C4 800394C4 304D2000 */ andi $t5, $v0, 0x2000 -.L800394C8: -/* 03A0C8 800394C8 11A00008 */ beqz $t5, .L800394EC -/* 03A0CC 800394CC 8FAE0090 */ lw $t6, 0x90($sp) -/* 03A0D0 800394D0 8FA40090 */ lw $a0, 0x90($sp) -/* 03A0D4 800394D4 8FA50070 */ lw $a1, 0x70($sp) -/* 03A0D8 800394D8 0C015A4C */ jal func_80056930 -/* 03A0DC 800394DC AFA60084 */ sw $a2, 0x84($sp) -/* 03A0E0 800394E0 8FA60084 */ lw $a2, 0x84($sp) -/* 03A0E4 800394E4 00000000 */ nop -/* 03A0E8 800394E8 8FAE0090 */ lw $t6, 0x90($sp) -.L800394EC: -/* 03A0EC 800394EC C612000C */ lwc1 $f18, 0xc($s0) -/* 03A0F0 800394F0 C6060014 */ lwc1 $f6, 0x14($s0) -/* 03A0F4 800394F4 C5C4000C */ lwc1 $f4, 0xc($t6) -/* 03A0F8 800394F8 C5CA0014 */ lwc1 $f10, 0x14($t6) -/* 03A0FC 800394FC AFA60084 */ sw $a2, 0x84($sp) -/* 03A100 80039500 46122301 */ sub.s $f12, $f4, $f18 -/* 03A104 80039504 0C01C1D4 */ jal func_80070750 -/* 03A108 80039508 46065381 */ sub.s $f14, $f10, $f6 -/* 03A10C 8003950C 8FAF0090 */ lw $t7, 0x90($sp) -/* 03A110 80039510 34018001 */ li $at, 32769 -/* 03A114 80039514 85F80000 */ lh $t8, ($t7) -/* 03A118 80039518 8FA60084 */ lw $a2, 0x84($sp) -/* 03A11C 8003951C 3319FFFF */ andi $t9, $t8, 0xffff -/* 03A120 80039520 00591823 */ subu $v1, $v0, $t9 -/* 03A124 80039524 0061082A */ slt $at, $v1, $at -/* 03A128 80039528 14200004 */ bnez $at, .L8003953C -/* 03A12C 8003952C 28618000 */ slti $at, $v1, -0x8000 -/* 03A130 80039530 3C03FFFF */ lui $v1, (0xFFFF0001 >> 16) # lui $v1, 0xffff -/* 03A134 80039534 34630001 */ ori $v1, (0xFFFF0001 & 0xFFFF) # ori $v1, $v1, 1 -/* 03A138 80039538 28618000 */ slti $at, $v1, -0x8000 -.L8003953C: -/* 03A13C 8003953C 10200003 */ beqz $at, .L8003954C -/* 03A140 80039540 2861E001 */ slti $at, $v1, -0x1fff -/* 03A144 80039544 3403FFFF */ li $v1, 65535 -/* 03A148 80039548 2861E001 */ slti $at, $v1, -0x1fff -.L8003954C: -/* 03A14C 8003954C 14200004 */ bnez $at, .L80039560 -/* 03A150 80039550 28612000 */ slti $at, $v1, 0x2000 -/* 03A154 80039554 10200002 */ beqz $at, .L80039560 -/* 03A158 80039558 00000000 */ nop -/* 03A15C 8003955C 24060001 */ li $a2, 1 -.L80039560: -/* 03A160 80039560 8E09004C */ lw $t1, 0x4c($s0) -/* 03A164 80039564 24080001 */ li $t0, 1 -/* 03A168 80039568 A5280014 */ sh $t0, 0x14($t1) -/* 03A16C 8003956C 0C014862 */ jal func_80052188 -/* 03A170 80039570 AFA60084 */ sw $a2, 0x84($sp) -/* 03A174 80039574 8FA60084 */ lw $a2, 0x84($sp) -/* 03A178 80039578 14400003 */ bnez $v0, .L80039588 -/* 03A17C 8003957C 00000000 */ nop -/* 03A180 80039580 10C00047 */ beqz $a2, .L800396A0 -/* 03A184 80039584 00000000 */ nop -.L80039588: -/* 03A188 80039588 8E020078 */ lw $v0, 0x78($s0) -/* 03A18C 8003958C 2401001F */ li $at, 31 -/* 03A190 80039590 10400003 */ beqz $v0, .L800395A0 -/* 03A194 80039594 00000000 */ nop -/* 03A198 80039598 14410041 */ bne $v0, $at, .L800396A0 -/* 03A19C 8003959C 00000000 */ nop -.L800395A0: -/* 03A1A0 800395A0 0C0004BA */ jal func_800012E8 -/* 03A1A4 800395A4 AFA60084 */ sw $a2, 0x84($sp) -/* 03A1A8 800395A8 0C0002F8 */ jal func_80000BE0 -/* 03A1AC 800395AC 24040018 */ li $a0, 24 -/* 03A1B0 800395B0 0C0002CD */ jal func_80000B34 -/* 03A1B4 800395B4 24040020 */ li $a0, 32 -/* 03A1B8 800395B8 8FAA0090 */ lw $t2, 0x90($sp) -/* 03A1BC 800395BC 8FA60084 */ lw $a2, 0x84($sp) -/* 03A1C0 800395C0 11400006 */ beqz $t2, .L800395DC -/* 03A1C4 800395C4 01402025 */ move $a0, $t2 -/* 03A1C8 800395C8 0C001AB2 */ jal func_80006AC8 -/* 03A1CC 800395CC AFA60084 */ sw $a2, 0x84($sp) -/* 03A1D0 800395D0 8FAB0070 */ lw $t3, 0x70($sp) -/* 03A1D4 800395D4 8FA60084 */ lw $a2, 0x84($sp) -/* 03A1D8 800395D8 AD600118 */ sw $zero, 0x118($t3) -.L800395DC: -/* 03A1DC 800395DC 0C002050 */ jal func_80008140 -/* 03A1E0 800395E0 AFA60084 */ sw $a2, 0x84($sp) -/* 03A1E4 800395E4 8FA20090 */ lw $v0, 0x90($sp) -/* 03A1E8 800395E8 C610000C */ lwc1 $f16, 0xc($s0) -/* 03A1EC 800395EC C6120014 */ lwc1 $f18, 0x14($s0) -/* 03A1F0 800395F0 C448000C */ lwc1 $f8, 0xc($v0) -/* 03A1F4 800395F4 C4440014 */ lwc1 $f4, 0x14($v0) -/* 03A1F8 800395F8 46104301 */ sub.s $f12, $f8, $f16 -/* 03A1FC 800395FC 0C01C1D4 */ jal func_80070750 -/* 03A200 80039600 46122381 */ sub.s $f14, $f4, $f18 -/* 03A204 80039604 8FAC0090 */ lw $t4, 0x90($sp) -/* 03A208 80039608 34018001 */ li $at, 32769 -/* 03A20C 8003960C 858D0000 */ lh $t5, ($t4) -/* 03A210 80039610 8FA60084 */ lw $a2, 0x84($sp) -/* 03A214 80039614 31AEFFFF */ andi $t6, $t5, 0xffff -/* 03A218 80039618 004E1823 */ subu $v1, $v0, $t6 -/* 03A21C 8003961C 0061082A */ slt $at, $v1, $at -/* 03A220 80039620 14200001 */ bnez $at, .L80039628 -/* 03A224 80039624 00002025 */ move $a0, $zero -.L80039628: -/* 03A228 80039628 10C00004 */ beqz $a2, .L8003963C -/* 03A22C 8003962C 26250020 */ addiu $a1, $s1, 0x20 -/* 03A230 80039630 240F0001 */ li $t7, 1 -/* 03A234 80039634 10000005 */ b .L8003964C -/* 03A238 80039638 AE0F0078 */ sw $t7, 0x78($s0) -.L8003963C: -/* 03A23C 8003963C 2418000A */ li $t8, 10 -/* 03A240 80039640 AE180078 */ sw $t8, 0x78($s0) -/* 03A244 80039644 24190001 */ li $t9, 1 -/* 03A248 80039648 A3B9006B */ sb $t9, 0x6b($sp) -.L8003964C: -/* 03A24C 8003964C 26280012 */ addiu $t0, $s1, 0x12 -/* 03A250 80039650 26290013 */ addiu $t1, $s1, 0x13 -/* 03A254 80039654 AFA90014 */ sw $t1, 0x14($sp) -/* 03A258 80039658 AFA80010 */ sw $t0, 0x10($sp) -/* 03A25C 8003965C 26260022 */ addiu $a2, $s1, 0x22 -/* 03A260 80039660 0C00C1D4 */ jal func_80030750 -/* 03A264 80039664 26270011 */ addiu $a3, $s1, 0x11 -/* 03A268 80039668 240A03C0 */ li $t2, 960 -/* 03A26C 8003966C 240B044C */ li $t3, 1100 -/* 03A270 80039670 240C00F0 */ li $t4, 240 -/* 03A274 80039674 AFAC0018 */ sw $t4, 0x18($sp) -/* 03A278 80039678 AFAB0014 */ sw $t3, 0x14($sp) -/* 03A27C 8003967C AFAA0010 */ sw $t2, 0x10($sp) -/* 03A280 80039680 00002025 */ move $a0, $zero -/* 03A284 80039684 240500FF */ li $a1, 255 -/* 03A288 80039688 00003025 */ move $a2, $zero -/* 03A28C 8003968C 0C00C378 */ jal func_80030DE0 -/* 03A290 80039690 24070078 */ li $a3, 120 -/* 03A294 80039694 44805000 */ mtc1 $zero, $f10 -/* 03A298 80039698 00000000 */ nop -/* 03A29C 8003969C E62A0004 */ swc1 $f10, 4($s1) -.L800396A0: -/* 03A2A0 800396A0 8E020078 */ lw $v0, 0x78($s0) -/* 03A2A4 800396A4 2401001E */ li $at, 30 -/* 03A2A8 800396A8 1040000E */ beqz $v0, .L800396E4 -/* 03A2AC 800396AC 24070003 */ li $a3, 3 -/* 03A2B0 800396B0 1041000B */ beq $v0, $at, .L800396E0 -/* 03A2B4 800396B4 24010014 */ li $at, 20 -/* 03A2B8 800396B8 10410009 */ beq $v0, $at, .L800396E0 -/* 03A2BC 800396BC 24010015 */ li $at, 21 -/* 03A2C0 800396C0 10410008 */ beq $v0, $at, .L800396E4 -/* 03A2C4 800396C4 24070003 */ li $a3, 3 -/* 03A2C8 800396C8 0C0168EC */ jal func_8005A3B0 -/* 03A2CC 800396CC 00000000 */ nop -/* 03A2D0 800396D0 0C02AC65 */ jal func_800AB194 -/* 03A2D4 800396D4 24040003 */ li $a0, 3 -/* 03A2D8 800396D8 8E020078 */ lw $v0, 0x78($s0) -/* 03A2DC 800396DC 00000000 */ nop -.L800396E0: -/* 03A2E0 800396E0 24070003 */ li $a3, 3 -.L800396E4: -/* 03A2E4 800396E4 10470007 */ beq $v0, $a3, .L80039704 -/* 03A2E8 800396E8 24010004 */ li $at, 4 -/* 03A2EC 800396EC 10410005 */ beq $v0, $at, .L80039704 -/* 03A2F0 800396F0 24010005 */ li $at, 5 -/* 03A2F4 800396F4 10410003 */ beq $v0, $at, .L80039704 -/* 03A2F8 800396F8 24010006 */ li $at, 6 -/* 03A2FC 800396FC 14410006 */ bne $v0, $at, .L80039718 -/* 03A300 80039700 00000000 */ nop -.L80039704: -/* 03A304 80039704 0C0273FB */ jal func_8009CFEC -/* 03A308 80039708 00002025 */ move $a0, $zero -/* 03A30C 8003970C 24070003 */ li $a3, 3 -/* 03A310 80039710 10000005 */ b .L80039728 -/* 03A314 80039714 AFA2007C */ sw $v0, 0x7c($sp) -.L80039718: -/* 03A318 80039718 0C0273DA */ jal func_8009CF68 -/* 03A31C 8003971C 00002025 */ move $a0, $zero -/* 03A320 80039720 24070003 */ li $a3, 3 -/* 03A324 80039724 AFA0007C */ sw $zero, 0x7c($sp) -.L80039728: -/* 03A328 80039728 8E020078 */ lw $v0, 0x78($s0) -/* 03A32C 8003972C 00000000 */ nop -/* 03A330 80039730 244DFFFF */ addiu $t5, $v0, -1 -/* 03A334 80039734 2DA10015 */ sltiu $at, $t5, 0x15 -/* 03A338 80039738 1020000B */ beqz $at, .L80039768 -/* 03A33C 8003973C 000D6880 */ sll $t5, $t5, 2 -/* 03A340 80039740 3C01800E */ lui $at, 0x800e -/* 03A344 80039744 002D0821 */ addu $at, $at, $t5 -/* 03A348 80039748 8C2D6070 */ lw $t5, 0x6070($at) -/* 03A34C 8003974C 00000000 */ nop -/* 03A350 80039750 01A00008 */ jr $t5 -/* 03A354 80039754 00000000 */ nop -/* 03A358 80039758 0C01BCE2 */ jal func_8006F388 -/* 03A35C 8003975C 24040001 */ li $a0, 1 -/* 03A360 80039760 8E020078 */ lw $v0, 0x78($s0) -/* 03A364 80039764 24070003 */ li $a3, 3 -.L80039768: -/* 03A368 80039768 1040000A */ beqz $v0, .L80039794 -/* 03A36C 8003976C 244FFFFF */ addiu $t7, $v0, -1 -/* 03A370 80039770 8FAE007C */ lw $t6, 0x7c($sp) -/* 03A374 80039774 28410004 */ slti $at, $v0, 4 -/* 03A378 80039778 11C00006 */ beqz $t6, .L80039794 -/* 03A37C 8003977C 244FFFFF */ addiu $t7, $v0, -1 -/* 03A380 80039780 10200004 */ beqz $at, .L80039794 -/* 03A384 80039784 244FFFFF */ addiu $t7, $v0, -1 -/* 03A388 80039788 24020004 */ li $v0, 4 -/* 03A38C 8003978C AE020078 */ sw $v0, 0x78($s0) -/* 03A390 80039790 244FFFFF */ addiu $t7, $v0, -1 -.L80039794: -/* 03A394 80039794 2DE1001E */ sltiu $at, $t7, 0x1e -/* 03A398 80039798 10200384 */ beqz $at, .L8003A5AC -/* 03A39C 8003979C 24030004 */ li $v1, 4 -/* 03A3A0 800397A0 000F7880 */ sll $t7, $t7, 2 -/* 03A3A4 800397A4 3C01800E */ lui $at, 0x800e -/* 03A3A8 800397A8 002F0821 */ addu $at, $at, $t7 -/* 03A3AC 800397AC 8C2F60C4 */ lw $t7, 0x60c4($at) -/* 03A3B0 800397B0 00000000 */ nop -/* 03A3B4 800397B4 01E00008 */ jr $t7 -/* 03A3B8 800397B8 00000000 */ nop -/* 03A3BC 800397BC C7A2009C */ lwc1 $f2, 0x9c($sp) -/* 03A3C0 800397C0 3C014059 */ li $at, 0x40590000 # 3.390625 -/* 03A3C4 800397C4 44813800 */ mtc1 $at, $f7 -/* 03A3C8 800397C8 44803000 */ mtc1 $zero, $f6 -/* 03A3CC 800397CC 46001021 */ cvt.d.s $f0, $f2 -/* 03A3D0 800397D0 4626003C */ c.lt.d $f0, $f6 -/* 03A3D4 800397D4 A200003B */ sb $zero, 0x3b($s0) -/* 03A3D8 800397D8 241800FF */ li $t8, 255 -/* 03A3DC 800397DC 45000008 */ bc1f .L80039800 -/* 03A3E0 800397E0 A238000D */ sb $t8, 0xd($s1) -/* 03A3E4 800397E4 E7A10040 */ swc1 $f1, 0x40($sp) -/* 03A3E8 800397E8 0C0168F0 */ jal func_8005A3C0 -/* 03A3EC 800397EC E7A00044 */ swc1 $f0, 0x44($sp) -/* 03A3F0 800397F0 C7A10040 */ lwc1 $f1, 0x40($sp) -/* 03A3F4 800397F4 C7A00044 */ lwc1 $f0, 0x44($sp) -/* 03A3F8 800397F8 C7A2009C */ lwc1 $f2, 0x9c($sp) -/* 03A3FC 800397FC 00000000 */ nop -.L80039800: -/* 03A400 80039800 3C014024 */ li $at, 0x40240000 # 2.562500 -/* 03A404 80039804 44814800 */ mtc1 $at, $f9 -/* 03A408 80039808 44804000 */ mtc1 $zero, $f8 -/* 03A40C 8003980C C7B000A8 */ lwc1 $f16, 0xa8($sp) -/* 03A410 80039810 4620403C */ c.lt.d $f8, $f0 -/* 03A414 80039814 C7A400A0 */ lwc1 $f4, 0xa0($sp) -/* 03A418 80039818 45000046 */ bc1f .L80039934 -/* 03A41C 8003981C 240A0002 */ li $t2, 2 -/* 03A420 80039820 00000000 */ nop -/* 03A424 80039824 46028303 */ div.s $f12, $f16, $f2 -/* 03A428 80039828 0C01C1D4 */ jal func_80070750 -/* 03A42C 8003982C 46022383 */ div.s $f14, $f4, $f2 -/* 03A430 80039830 86050000 */ lh $a1, ($s0) -/* 03A434 80039834 34018000 */ li $at, 32768 -/* 03A438 80039838 30B9FFFF */ andi $t9, $a1, 0xffff -/* 03A43C 8003983C 00591823 */ subu $v1, $v0, $t9 -/* 03A440 80039840 00611821 */ addu $v1, $v1, $at -/* 03A444 80039844 34018001 */ li $at, 32769 -/* 03A448 80039848 0061082A */ slt $at, $v1, $at -/* 03A44C 8003984C 14200003 */ bnez $at, .L8003985C -/* 03A450 80039850 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 03A454 80039854 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 03A458 80039858 00611821 */ addu $v1, $v1, $at -.L8003985C: -/* 03A45C 8003985C 28618000 */ slti $at, $v1, -0x8000 -/* 03A460 80039860 10200002 */ beqz $at, .L8003986C -/* 03A464 80039864 3401FFFF */ li $at, 65535 -/* 03A468 80039868 00611821 */ addu $v1, $v1, $at -.L8003986C: -/* 03A46C 8003986C 18600004 */ blez $v1, .L80039880 -/* 03A470 80039870 28610010 */ slti $at, $v1, 0x10 -/* 03A474 80039874 10200003 */ beqz $at, .L80039884 -/* 03A478 80039878 3C01C000 */ lui $at, 0xc000 -/* 03A47C 8003987C 24030010 */ li $v1, 16 -.L80039880: -/* 03A480 80039880 3C01C000 */ li $at, 0xC0000000 # -2.000000 -.L80039884: -/* 03A484 80039884 00034103 */ sra $t0, $v1, 4 -/* 03A488 80039888 44811000 */ mtc1 $at, $f2 -/* 03A48C 8003988C 00A84821 */ addu $t1, $a1, $t0 -/* 03A490 80039890 28610801 */ slti $at, $v1, 0x801 -/* 03A494 80039894 10200003 */ beqz $at, .L800398A4 -/* 03A498 80039898 A6090000 */ sh $t1, ($s0) -/* 03A49C 8003989C 2861F800 */ slti $at, $v1, -0x800 -/* 03A4A0 800398A0 10200003 */ beqz $at, .L800398B0 -.L800398A4: -/* 03A4A4 800398A4 3C01BF00 */ li $at, 0xBF000000 # -0.500000 -/* 03A4A8 800398A8 44811000 */ mtc1 $at, $f2 -/* 03A4AC 800398AC 00000000 */ nop -.L800398B0: -/* 03A4B0 800398B0 C6200014 */ lwc1 $f0, 0x14($s1) -/* 03A4B4 800398B4 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 03A4B8 800398B8 46001281 */ sub.s $f10, $f2, $f0 -/* 03A4BC 800398BC 44816800 */ mtc1 $at, $f13 -/* 03A4C0 800398C0 44806000 */ mtc1 $zero, $f12 -/* 03A4C4 800398C4 460051A1 */ cvt.d.s $f6, $f10 -/* 03A4C8 800398C8 462C3202 */ mul.d $f8, $f6, $f12 -/* 03A4CC 800398CC 460004A1 */ cvt.d.s $f18, $f0 -/* 03A4D0 800398D0 46289400 */ add.d $f16, $f18, $f8 -/* 03A4D4 800398D4 46208120 */ cvt.s.d $f4, $f16 -/* 03A4D8 800398D8 E6240014 */ swc1 $f4, 0x14($s1) -/* 03A4DC 800398DC 86040000 */ lh $a0, ($s0) -/* 03A4E0 800398E0 0C01C1F1 */ jal func_800707C4 -/* 03A4E4 800398E4 00000000 */ nop -/* 03A4E8 800398E8 C62A0014 */ lwc1 $f10, 0x14($s1) -/* 03A4EC 800398EC 86040000 */ lh $a0, ($s0) -/* 03A4F0 800398F0 460A0182 */ mul.s $f6, $f0, $f10 -/* 03A4F4 800398F4 0C01C1FE */ jal func_800707F8 -/* 03A4F8 800398F8 E606001C */ swc1 $f6, 0x1c($s0) -/* 03A4FC 800398FC C6320014 */ lwc1 $f18, 0x14($s1) -/* 03A500 80039900 C7A200AC */ lwc1 $f2, 0xac($sp) -/* 03A504 80039904 46120202 */ mul.s $f8, $f0, $f18 -/* 03A508 80039908 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 03A50C 8003990C 44812000 */ mtc1 $at, $f4 -/* 03A510 80039910 E6080024 */ swc1 $f8, 0x24($s0) -/* 03A514 80039914 C6300014 */ lwc1 $f16, 0x14($s1) -/* 03A518 80039918 C6320004 */ lwc1 $f18, 4($s1) -/* 03A51C 8003991C 46048282 */ mul.s $f10, $f16, $f4 -/* 03A520 80039920 00000000 */ nop -/* 03A524 80039924 46025182 */ mul.s $f6, $f10, $f2 -/* 03A528 80039928 46069201 */ sub.s $f8, $f18, $f6 -/* 03A52C 8003992C 10000004 */ b .L80039940 -/* 03A530 80039930 E6280004 */ swc1 $f8, 4($s1) -.L80039934: -/* 03A534 80039934 AE0A0078 */ sw $t2, 0x78($s0) -/* 03A538 80039938 C7A200AC */ lwc1 $f2, 0xac($sp) -/* 03A53C 8003993C 00000000 */ nop -.L80039940: -/* 03A540 80039940 C610001C */ lwc1 $f16, 0x1c($s0) -/* 03A544 80039944 C60A0020 */ lwc1 $f10, 0x20($s0) -/* 03A548 80039948 46028102 */ mul.s $f4, $f16, $f2 -/* 03A54C 8003994C C6060024 */ lwc1 $f6, 0x24($s0) -/* 03A550 80039950 02002025 */ move $a0, $s0 -/* 03A554 80039954 46025482 */ mul.s $f18, $f10, $f2 -/* 03A558 80039958 44052000 */ mfc1 $a1, $f4 -/* 03A55C 8003995C 46023202 */ mul.s $f8, $f6, $f2 -/* 03A560 80039960 44069000 */ mfc1 $a2, $f18 -/* 03A564 80039964 44074000 */ mfc1 $a3, $f8 -/* 03A568 80039968 0C00455C */ jal func_80011570 -/* 03A56C 8003996C 00000000 */ nop -/* 03A570 80039970 10000464 */ b .L8003AB04 -/* 03A574 80039974 C7B00098 */ lwc1 $f16, 0x98($sp) -/* 03A578 80039978 0C0168F0 */ jal func_8005A3C0 -/* 03A57C 8003997C 00000000 */ nop -/* 03A580 80039980 C7AE00AC */ lwc1 $f14, 0xac($sp) -/* 03A584 80039984 A200003B */ sb $zero, 0x3b($s0) -/* 03A588 80039988 C6300004 */ lwc1 $f16, 4($s1) -/* 03A58C 8003998C 46007021 */ cvt.d.s $f0, $f14 -/* 03A590 80039990 46200280 */ add.d $f10, $f0, $f0 -/* 03A594 80039994 34018000 */ li $at, 32768 -/* 03A598 80039998 46008121 */ cvt.d.s $f4, $f16 -/* 03A59C 8003999C 462A2480 */ add.d $f18, $f4, $f10 -/* 03A5A0 800399A0 24070003 */ li $a3, 3 -/* 03A5A4 800399A4 462091A0 */ cvt.s.d $f6, $f18 -/* 03A5A8 800399A8 E6260004 */ swc1 $f6, 4($s1) -/* 03A5AC 800399AC 8FAB0090 */ lw $t3, 0x90($sp) -/* 03A5B0 800399B0 86050000 */ lh $a1, ($s0) -/* 03A5B4 800399B4 856C0000 */ lh $t4, ($t3) -/* 03A5B8 800399B8 30ADFFFF */ andi $t5, $a1, 0xffff -/* 03A5BC 800399BC 018D1823 */ subu $v1, $t4, $t5 -/* 03A5C0 800399C0 00611821 */ addu $v1, $v1, $at -/* 03A5C4 800399C4 34018001 */ li $at, 32769 -/* 03A5C8 800399C8 0061082A */ slt $at, $v1, $at -/* 03A5CC 800399CC 14200003 */ bnez $at, .L800399DC -/* 03A5D0 800399D0 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 03A5D4 800399D4 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 03A5D8 800399D8 00611821 */ addu $v1, $v1, $at -.L800399DC: -/* 03A5DC 800399DC 28618000 */ slti $at, $v1, -0x8000 -/* 03A5E0 800399E0 10200002 */ beqz $at, .L800399EC -/* 03A5E4 800399E4 3401FFFF */ li $at, 65535 -/* 03A5E8 800399E8 00611821 */ addu $v1, $v1, $at -.L800399EC: -/* 03A5EC 800399EC 18600004 */ blez $v1, .L80039A00 -/* 03A5F0 800399F0 28610010 */ slti $at, $v1, 0x10 -/* 03A5F4 800399F4 10200003 */ beqz $at, .L80039A04 -/* 03A5F8 800399F8 000370C3 */ sra $t6, $v1, 3 -/* 03A5FC 800399FC 24030010 */ li $v1, 16 -.L80039A00: -/* 03A600 80039A00 000370C3 */ sra $t6, $v1, 3 -.L80039A04: -/* 03A604 80039A04 00AE7821 */ addu $t7, $a1, $t6 -/* 03A608 80039A08 28610400 */ slti $at, $v1, 0x400 -/* 03A60C 80039A0C 10200017 */ beqz $at, .L80039A6C -/* 03A610 80039A10 A60F0000 */ sh $t7, ($s0) -/* 03A614 80039A14 2861FC01 */ slti $at, $v1, -0x3ff -/* 03A618 80039A18 14200014 */ bnez $at, .L80039A6C -/* 03A61C 80039A1C 00000000 */ nop -/* 03A620 80039A20 C7A8009C */ lwc1 $f8, 0x9c($sp) -/* 03A624 80039A24 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 03A628 80039A28 44812800 */ mtc1 $at, $f5 -/* 03A62C 80039A2C 44802000 */ mtc1 $zero, $f4 -/* 03A630 80039A30 46004421 */ cvt.d.s $f16, $f8 -/* 03A634 80039A34 4624803C */ c.lt.d $f16, $f4 -/* 03A638 80039A38 3C048012 */ lui $a0, %hi(D_8011D4E2) # $a0, 0x8012 -/* 03A63C 80039A3C 4500000B */ bc1f .L80039A6C -/* 03A640 80039A40 00000000 */ nop -/* 03A644 80039A44 44805000 */ mtc1 $zero, $f10 -/* 03A648 80039A48 AE070078 */ sw $a3, 0x78($s0) -/* 03A64C 80039A4C E62A0004 */ swc1 $f10, 4($s1) -/* 03A650 80039A50 9484D4E2 */ lhu $a0, %lo(D_8011D4E2)($a0) -/* 03A654 80039A54 0C00EB0F */ jal func_8003AC3C -/* 03A658 80039A58 24050001 */ li $a1, 1 -/* 03A65C 80039A5C 2418010F */ li $t8, 271 -/* 03A660 80039A60 3C018012 */ lui $at, %hi(D_8011D4E2) # $at, 0x8012 -/* 03A664 80039A64 C7AE00AC */ lwc1 $f14, 0xac($sp) -/* 03A668 80039A68 A438D4E2 */ sh $t8, %lo(D_8011D4E2)($at) -.L80039A6C: -/* 03A66C 80039A6C C7B200A8 */ lwc1 $f18, 0xa8($sp) -/* 03A670 80039A70 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 03A674 80039A74 44816800 */ mtc1 $at, $f13 -/* 03A678 80039A78 44806000 */ mtc1 $zero, $f12 -/* 03A67C 80039A7C 460091A1 */ cvt.d.s $f6, $f18 -/* 03A680 80039A80 462C3202 */ mul.d $f8, $f6, $f12 -/* 03A684 80039A84 44808000 */ mtc1 $zero, $f16 -/* 03A688 80039A88 02002025 */ move $a0, $s0 -/* 03A68C 80039A8C E6100020 */ swc1 $f16, 0x20($s0) -/* 03A690 80039A90 46204020 */ cvt.s.d $f0, $f8 -/* 03A694 80039A94 44804000 */ mtc1 $zero, $f8 -/* 03A698 80039A98 E600001C */ swc1 $f0, 0x1c($s0) -/* 03A69C 80039A9C C7A400A0 */ lwc1 $f4, 0xa0($sp) -/* 03A6A0 80039AA0 00000000 */ nop -/* 03A6A4 80039AA4 460022A1 */ cvt.d.s $f10, $f4 -/* 03A6A8 80039AA8 462C5482 */ mul.d $f18, $f10, $f12 -/* 03A6AC 80039AAC 00000000 */ nop -/* 03A6B0 80039AB0 460E0182 */ mul.s $f6, $f0, $f14 -/* 03A6B4 80039AB4 462090A0 */ cvt.s.d $f2, $f18 -/* 03A6B8 80039AB8 E6020024 */ swc1 $f2, 0x24($s0) -/* 03A6BC 80039ABC 460E4402 */ mul.s $f16, $f8, $f14 -/* 03A6C0 80039AC0 44053000 */ mfc1 $a1, $f6 -/* 03A6C4 80039AC4 460E1102 */ mul.s $f4, $f2, $f14 -/* 03A6C8 80039AC8 44068000 */ mfc1 $a2, $f16 -/* 03A6CC 80039ACC 44072000 */ mfc1 $a3, $f4 -/* 03A6D0 80039AD0 0C00455C */ jal func_80011570 -/* 03A6D4 80039AD4 00000000 */ nop -/* 03A6D8 80039AD8 1000040A */ b .L8003AB04 -/* 03A6DC 80039ADC C7B00098 */ lwc1 $f16, 0x98($sp) -/* 03A6E0 80039AE0 24190001 */ li $t9, 1 -/* 03A6E4 80039AE4 44805000 */ mtc1 $zero, $f10 -/* 03A6E8 80039AE8 A219003B */ sb $t9, 0x3b($s0) -/* 03A6EC 80039AEC E62A0014 */ swc1 $f10, 0x14($s1) -/* 03A6F0 80039AF0 C7A800AC */ lwc1 $f8, 0xac($sp) -/* 03A6F4 80039AF4 C6320004 */ lwc1 $f18, 4($s1) -/* 03A6F8 80039AF8 46004421 */ cvt.d.s $f16, $f8 -/* 03A6FC 80039AFC 460091A1 */ cvt.d.s $f6, $f18 -/* 03A700 80039B00 46303100 */ add.d $f4, $f6, $f16 -/* 03A704 80039B04 3C01800E */ lui $at, %hi(D_800E6140) # $at, 0x800e -/* 03A708 80039B08 462022A0 */ cvt.s.d $f10, $f4 -/* 03A70C 80039B0C E62A0004 */ swc1 $f10, 4($s1) -/* 03A710 80039B10 C6280004 */ lwc1 $f8, 4($s1) -/* 03A714 80039B14 C4326144 */ lwc1 $f18, %lo(D_800E6144)($at) -/* 03A718 80039B18 C4336140 */ lwc1 $f19, %lo(D_800E6140)($at) -/* 03A71C 80039B1C 460041A1 */ cvt.d.s $f6, $f8 -/* 03A720 80039B20 4626903C */ c.lt.d $f18, $f6 -/* 03A724 80039B24 3C01429A */ li $at, 0x429A0000 # 77.000000 -/* 03A728 80039B28 45000008 */ bc1f .L80039B4C -/* 03A72C 80039B2C 8FA80090 */ lw $t0, 0x90($sp) -/* 03A730 80039B30 44818000 */ mtc1 $at, $f16 -/* 03A734 80039B34 3C01BF80 */ li $at, 0xBF800000 # -1.000000 -/* 03A738 80039B38 44812000 */ mtc1 $at, $f4 -/* 03A73C 80039B3C E6300004 */ swc1 $f16, 4($s1) -/* 03A740 80039B40 E6240018 */ swc1 $f4, 0x18($s1) -/* 03A744 80039B44 AE030078 */ sw $v1, 0x78($s0) -/* 03A748 80039B48 8FA80090 */ lw $t0, 0x90($sp) -.L80039B4C: -/* 03A74C 80039B4C 86050000 */ lh $a1, ($s0) -/* 03A750 80039B50 85090000 */ lh $t1, ($t0) -/* 03A754 80039B54 30AAFFFF */ andi $t2, $a1, 0xffff -/* 03A758 80039B58 34018000 */ li $at, 32768 -/* 03A75C 80039B5C 012A1823 */ subu $v1, $t1, $t2 -/* 03A760 80039B60 00611821 */ addu $v1, $v1, $at -/* 03A764 80039B64 34018001 */ li $at, 32769 -/* 03A768 80039B68 0061082A */ slt $at, $v1, $at -/* 03A76C 80039B6C 14200003 */ bnez $at, .L80039B7C -/* 03A770 80039B70 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 03A774 80039B74 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 03A778 80039B78 00611821 */ addu $v1, $v1, $at -.L80039B7C: -/* 03A77C 80039B7C 28618000 */ slti $at, $v1, -0x8000 -/* 03A780 80039B80 10200002 */ beqz $at, .L80039B8C -/* 03A784 80039B84 3401FFFF */ li $at, 65535 -/* 03A788 80039B88 00611821 */ addu $v1, $v1, $at -.L80039B8C: -/* 03A78C 80039B8C 18600004 */ blez $v1, .L80039BA0 -/* 03A790 80039B90 28610010 */ slti $at, $v1, 0x10 -/* 03A794 80039B94 10200003 */ beqz $at, .L80039BA4 -/* 03A798 80039B98 00035903 */ sra $t3, $v1, 4 -/* 03A79C 80039B9C 24030010 */ li $v1, 16 -.L80039BA0: -/* 03A7A0 80039BA0 00035903 */ sra $t3, $v1, 4 -.L80039BA4: -/* 03A7A4 80039BA4 00AB6021 */ addu $t4, $a1, $t3 -/* 03A7A8 80039BA8 0C0168F0 */ jal func_8005A3C0 -/* 03A7AC 80039BAC A60C0000 */ sh $t4, ($s0) -/* 03A7B0 80039BB0 100003D4 */ b .L8003AB04 -/* 03A7B4 80039BB4 C7B00098 */ lwc1 $f16, 0x98($sp) -/* 03A7B8 80039BB8 A203003B */ sb $v1, 0x3b($s0) -/* 03A7BC 80039BBC C62A0004 */ lwc1 $f10, 4($s1) -/* 03A7C0 80039BC0 C7B200AC */ lwc1 $f18, 0xac($sp) -/* 03A7C4 80039BC4 46005221 */ cvt.d.s $f8, $f10 -/* 03A7C8 80039BC8 460091A1 */ cvt.d.s $f6, $f18 -/* 03A7CC 80039BCC 46264400 */ add.d $f16, $f8, $f6 -/* 03A7D0 80039BD0 46208120 */ cvt.s.d $f4, $f16 -/* 03A7D4 80039BD4 0C0168F0 */ jal func_8005A3C0 -/* 03A7D8 80039BD8 E6240004 */ swc1 $f4, 4($s1) -/* 03A7DC 80039BDC 8FA6007C */ lw $a2, 0x7c($sp) -/* 03A7E0 80039BE0 24070003 */ li $a3, 3 -/* 03A7E4 80039BE4 10C70002 */ beq $a2, $a3, .L80039BF0 -/* 03A7E8 80039BE8 24010004 */ li $at, 4 -/* 03A7EC 80039BEC 14C1002E */ bne $a2, $at, .L80039CA8 -.L80039BF0: -/* 03A7F0 80039BF0 24010004 */ li $at, 4 -/* 03A7F4 80039BF4 14C10004 */ bne $a2, $at, .L80039C08 -/* 03A7F8 80039BF8 240F0002 */ li $t7, 2 -/* 03A7FC 80039BFC 240D0008 */ li $t5, 8 -/* 03A800 80039C00 10000003 */ b .L80039C10 -/* 03A804 80039C04 AE0D0078 */ sw $t5, 0x78($s0) -.L80039C08: -/* 03A808 80039C08 240E0007 */ li $t6, 7 -/* 03A80C 80039C0C AE0E0078 */ sw $t6, 0x78($s0) -.L80039C10: -/* 03A810 80039C10 3C01800E */ li $at, 0x800E0000 # -0.000000 -/* 03A814 80039C14 C42A6148 */ lwc1 $f10, %lo(D_800E6148)($at) -/* 03A818 80039C18 24040111 */ li $a0, 273 -/* 03A81C 80039C1C E62A0004 */ swc1 $f10, 4($s1) -/* 03A820 80039C20 A20F003B */ sb $t7, 0x3b($s0) -/* 03A824 80039C24 A620001C */ sh $zero, 0x1c($s1) -/* 03A828 80039C28 0C00EB0F */ jal func_8003AC3C -/* 03A82C 80039C2C 24050001 */ li $a1, 1 -/* 03A830 80039C30 86380020 */ lh $t8, 0x20($s1) -/* 03A834 80039C34 92250011 */ lbu $a1, 0x11($s1) -/* 03A838 80039C38 92260012 */ lbu $a2, 0x12($s1) -/* 03A83C 80039C3C 92270013 */ lbu $a3, 0x13($s1) -/* 03A840 80039C40 AFB80010 */ sw $t8, 0x10($sp) -/* 03A844 80039C44 86390022 */ lh $t9, 0x22($s1) -/* 03A848 80039C48 240800B4 */ li $t0, 180 -/* 03A84C 80039C4C AFA80018 */ sw $t0, 0x18($sp) -/* 03A850 80039C50 00002025 */ move $a0, $zero -/* 03A854 80039C54 0C00C378 */ jal func_80030DE0 -/* 03A858 80039C58 AFB90014 */ sw $t9, 0x14($sp) -/* 03A85C 80039C5C 8FA90064 */ lw $t1, 0x64($sp) -/* 03A860 80039C60 00000000 */ nop -/* 03A864 80039C64 912400B3 */ lbu $a0, 0xb3($t1) -/* 03A868 80039C68 0C0002F8 */ jal func_80000BE0 -/* 03A86C 80039C6C 00000000 */ nop -/* 03A870 80039C70 8FAA0064 */ lw $t2, 0x64($sp) -/* 03A874 80039C74 00000000 */ nop -/* 03A878 80039C78 91440052 */ lbu $a0, 0x52($t2) -/* 03A87C 80039C7C 0C0002CD */ jal func_80000B34 -/* 03A880 80039C80 00000000 */ nop -/* 03A884 80039C84 8FAB0064 */ lw $t3, 0x64($sp) -/* 03A888 80039C88 00000000 */ nop -/* 03A88C 80039C8C 95640054 */ lhu $a0, 0x54($t3) -/* 03A890 80039C90 0C00041D */ jal func_80001074 -/* 03A894 80039C94 00000000 */ nop -/* 03A898 80039C98 0C00205A */ jal func_80008168 -/* 03A89C 80039C9C 00000000 */ nop -/* 03A8A0 80039CA0 8FA6007C */ lw $a2, 0x7c($sp) -/* 03A8A4 80039CA4 00000000 */ nop -.L80039CA8: -/* 03A8A8 80039CA8 30CC0080 */ andi $t4, $a2, 0x80 -/* 03A8AC 80039CAC 1180001C */ beqz $t4, .L80039D20 -/* 03A8B0 80039CB0 3C038012 */ lui $v1, %hi(D_8011D4E0) # $v1, 0x8012 -/* 03A8B4 80039CB4 2463D4E0 */ addiu $v1, %lo(D_8011D4E0) # addiu $v1, $v1, -0x2b20 -/* 03A8B8 80039CB8 30CD007F */ andi $t5, $a2, 0x7f -/* 03A8BC 80039CBC 8FAE0070 */ lw $t6, 0x70($sp) -/* 03A8C0 80039CC0 A06D0000 */ sb $t5, ($v1) -/* 03A8C4 80039CC4 80780000 */ lb $t8, ($v1) -/* 03A8C8 80039CC8 81CF01D6 */ lb $t7, 0x1d6($t6) -/* 03A8CC 80039CCC 24190005 */ li $t9, 5 -/* 03A8D0 80039CD0 11F8000F */ beq $t7, $t8, .L80039D10 -/* 03A8D4 80039CD4 24040062 */ li $a0, 98 -/* 03A8D8 80039CD8 44809000 */ mtc1 $zero, $f18 -/* 03A8DC 80039CDC AE190078 */ sw $t9, 0x78($s0) -/* 03A8E0 80039CE0 E6320004 */ swc1 $f18, 4($s1) -/* 03A8E4 80039CE4 8FA80070 */ lw $t0, 0x70($sp) -/* 03A8E8 80039CE8 24050001 */ li $a1, 1 -/* 03A8EC 80039CEC 810401D6 */ lb $a0, 0x1d6($t0) -/* 03A8F0 80039CF0 00000000 */ nop -/* 03A8F4 80039CF4 24840235 */ addiu $a0, $a0, 0x235 -/* 03A8F8 80039CF8 3089FFFF */ andi $t1, $a0, 0xffff -/* 03A8FC 80039CFC 0C00EB0F */ jal func_8003AC3C -/* 03A900 80039D00 01202025 */ move $a0, $t1 -/* 03A904 80039D04 8FA6007C */ lw $a2, 0x7c($sp) -/* 03A908 80039D08 10000005 */ b .L80039D20 -/* 03A90C 80039D0C 00000000 */ nop -.L80039D10: -/* 03A910 80039D10 0C0274CF */ jal func_8009D33C -/* 03A914 80039D14 24050002 */ li $a1, 2 -/* 03A918 80039D18 8FA6007C */ lw $a2, 0x7c($sp) -/* 03A91C 80039D1C 00000000 */ nop -.L80039D20: -/* 03A920 80039D20 3C038012 */ lui $v1, %hi(D_8011D4E0) # $v1, 0x8012 -/* 03A924 80039D24 30CA0040 */ andi $t2, $a2, 0x40 -/* 03A928 80039D28 11400024 */ beqz $t2, .L80039DBC -/* 03A92C 80039D2C 2463D4E0 */ addiu $v1, %lo(D_8011D4E0) # addiu $v1, $v1, -0x2b20 -/* 03A930 80039D30 30CB000F */ andi $t3, $a2, 0xf -/* 03A934 80039D34 8FAC0070 */ lw $t4, 0x70($sp) -/* 03A938 80039D38 A06B0000 */ sb $t3, ($v1) -/* 03A93C 80039D3C 80620000 */ lb $v0, ($v1) -/* 03A940 80039D40 818D01D6 */ lb $t5, 0x1d6($t4) -/* 03A944 80039D44 2408000F */ li $t0, 15 -/* 03A948 80039D48 11A20011 */ beq $t5, $v0, .L80039D90 -/* 03A94C 80039D4C 3C04800E */ lui $a0, %hi(D_800E0235) # $a0, 0x800e -/* 03A950 80039D50 344E0080 */ ori $t6, $v0, 0x80 -/* 03A954 80039D54 44804000 */ mtc1 $zero, $f8 -/* 03A958 80039D58 A06E0000 */ sb $t6, ($v1) -/* 03A95C 80039D5C 240F0005 */ li $t7, 5 -/* 03A960 80039D60 AE0F0078 */ sw $t7, 0x78($s0) -/* 03A964 80039D64 E6280004 */ swc1 $f8, 4($s1) -/* 03A968 80039D68 8FB80070 */ lw $t8, 0x70($sp) -/* 03A96C 80039D6C 24050001 */ li $a1, 1 -/* 03A970 80039D70 830401D6 */ lb $a0, 0x1d6($t8) -/* 03A974 80039D74 00000000 */ nop -/* 03A978 80039D78 24840235 */ addiu $a0, %lo(D_800E0235) # addiu $a0, $a0, 0x235 -/* 03A97C 80039D7C 3099FFFF */ andi $t9, $a0, 0xffff -/* 03A980 80039D80 0C00EB0F */ jal func_8003AC3C -/* 03A984 80039D84 03202025 */ move $a0, $t9 -/* 03A988 80039D88 1000035E */ b .L8003AB04 -/* 03A98C 80039D8C C7B00098 */ lwc1 $f16, 0x98($sp) -.L80039D90: -/* 03A990 80039D90 AE080078 */ sw $t0, 0x78($s0) -/* 03A994 80039D94 24090001 */ li $t1, 1 -/* 03A998 80039D98 A3A9006B */ sb $t1, 0x6b($sp) -/* 03A99C 80039D9C 0C030076 */ jal func_800C01D8 -/* 03A9A0 80039DA0 2484C978 */ addiu $a0, $a0, -0x3688 -/* 03A9A4 80039DA4 24040110 */ li $a0, 272 -/* 03A9A8 80039DA8 0C00EB0F */ jal func_8003AC3C -/* 03A9AC 80039DAC 24050001 */ li $a1, 1 -/* 03A9B0 80039DB0 44803000 */ mtc1 $zero, $f6 -/* 03A9B4 80039DB4 00000000 */ nop -/* 03A9B8 80039DB8 E6260004 */ swc1 $f6, 4($s1) -.L80039DBC: -/* 03A9BC 80039DBC 10000351 */ b .L8003AB04 -/* 03A9C0 80039DC0 C7B00098 */ lwc1 $f16, 0x98($sp) -/* 03A9C4 80039DC4 240A0005 */ li $t2, 5 -/* 03A9C8 80039DC8 0C0168F0 */ jal func_8005A3C0 -/* 03A9CC 80039DCC A20A003B */ sb $t2, 0x3b($s0) -/* 03A9D0 80039DD0 C7B000AC */ lwc1 $f16, 0xac($sp) -/* 03A9D4 80039DD4 C6240004 */ lwc1 $f4, 4($s1) -/* 03A9D8 80039DD8 46008021 */ cvt.d.s $f0, $f16 -/* 03A9DC 80039DDC 46200480 */ add.d $f18, $f0, $f0 -/* 03A9E0 80039DE0 3C014039 */ li $at, 0x40390000 # 2.890625 -/* 03A9E4 80039DE4 460022A1 */ cvt.d.s $f10, $f4 -/* 03A9E8 80039DE8 46325200 */ add.d $f8, $f10, $f18 -/* 03A9EC 80039DEC 44802000 */ mtc1 $zero, $f4 -/* 03A9F0 80039DF0 462041A0 */ cvt.s.d $f6, $f8 -/* 03A9F4 80039DF4 44812800 */ mtc1 $at, $f5 -/* 03A9F8 80039DF8 E6260004 */ swc1 $f6, 4($s1) -/* 03A9FC 80039DFC C6300004 */ lwc1 $f16, 4($s1) -/* 03AA00 80039E00 3C014049 */ li $at, 0x40490000 # 3.140625 -/* 03AA04 80039E04 460080A1 */ cvt.d.s $f2, $f16 -/* 03AA08 80039E08 4622203C */ c.lt.d $f4, $f2 -/* 03AA0C 80039E0C 44819800 */ mtc1 $at, $f19 -/* 03AA10 80039E10 44809000 */ mtc1 $zero, $f18 -/* 03AA14 80039E14 45000006 */ bc1f .L80039E30 -/* 03AA18 80039E18 3C01404E */ li $at, 0x404E0000 # 3.218750 -/* 03AA1C 80039E1C 240B000B */ li $t3, 11 -/* 03AA20 80039E20 AE0B0074 */ sw $t3, 0x74($s0) -/* 03AA24 80039E24 C62A0004 */ lwc1 $f10, 4($s1) -/* 03AA28 80039E28 00000000 */ nop -/* 03AA2C 80039E2C 460050A1 */ cvt.d.s $f2, $f10 -.L80039E30: -/* 03AA30 80039E30 4622903C */ c.lt.d $f18, $f2 -/* 03AA34 80039E34 44813800 */ mtc1 $at, $f7 -/* 03AA38 80039E38 44803000 */ mtc1 $zero, $f6 -/* 03AA3C 80039E3C 45000005 */ bc1f .L80039E54 -/* 03AA40 80039E40 3C014270 */ li $at, 0x42700000 # 60.000000 -/* 03AA44 80039E44 AE000074 */ sw $zero, 0x74($s0) -/* 03AA48 80039E48 C6280004 */ lwc1 $f8, 4($s1) -/* 03AA4C 80039E4C 00000000 */ nop -/* 03AA50 80039E50 460040A1 */ cvt.d.s $f2, $f8 -.L80039E54: -/* 03AA54 80039E54 4622303C */ c.lt.d $f6, $f2 -/* 03AA58 80039E58 00000000 */ nop -/* 03AA5C 80039E5C 4500001C */ bc1f .L80039ED0 -/* 03AA60 80039E60 00000000 */ nop -/* 03AA64 80039E64 44818000 */ mtc1 $at, $f16 -/* 03AA68 80039E68 8FA60070 */ lw $a2, 0x70($sp) -/* 03AA6C 80039E6C E6300004 */ swc1 $f16, 4($s1) -/* 03AA70 80039E70 8FA300B4 */ lw $v1, 0xb4($sp) -/* 03AA74 80039E74 90C201F7 */ lbu $v0, 0x1f7($a2) -/* 03AA78 80039E78 00036100 */ sll $t4, $v1, 4 -/* 03AA7C 80039E7C 0182082A */ slt $at, $t4, $v0 -/* 03AA80 80039E80 10200004 */ beqz $at, .L80039E94 -/* 03AA84 80039E84 3C038012 */ lui $v1, %hi(D_8011D4E0) # $v1, 0x8012 -/* 03AA88 80039E88 004C6823 */ subu $t5, $v0, $t4 -/* 03AA8C 80039E8C 1000031C */ b .L8003AB00 -/* 03AA90 80039E90 A0CD01F7 */ sb $t5, 0x1f7($a2) -.L80039E94: -/* 03AA94 80039E94 2463D4E0 */ addiu $v1, %lo(D_8011D4E0) # addiu $v1, $v1, -0x2b20 -/* 03AA98 80039E98 A0C001F7 */ sb $zero, 0x1f7($a2) -/* 03AA9C 80039E9C 80650000 */ lb $a1, ($v1) -/* 03AAA0 80039EA0 8FA40090 */ lw $a0, 0x90($sp) -/* 03AAA4 80039EA4 30AE000F */ andi $t6, $a1, 0xf -/* 03AAA8 80039EA8 0C00387B */ jal func_8000E1EC -/* 03AAAC 80039EAC 01C02825 */ move $a1, $t6 -/* 03AAB0 80039EB0 240F0006 */ li $t7, 6 -/* 03AAB4 80039EB4 AE0F0078 */ sw $t7, 0x78($s0) -/* 03AAB8 80039EB8 24040113 */ li $a0, 275 -/* 03AABC 80039EBC 0C000741 */ jal func_80001D04 -/* 03AAC0 80039EC0 00002825 */ move $a1, $zero -/* 03AAC4 80039EC4 3C04800E */ lui $a0, %hi(D_800DC970) # $a0, 0x800e -/* 03AAC8 80039EC8 0C030076 */ jal func_800C01D8 -/* 03AACC 80039ECC 2484C970 */ addiu $a0, %lo(D_800DC970) # addiu $a0, $a0, -0x3690 -.L80039ED0: -/* 03AAD0 80039ED0 1000030C */ b .L8003AB04 -/* 03AAD4 80039ED4 C7B00098 */ lwc1 $f16, 0x98($sp) -/* 03AAD8 80039ED8 0C0168F0 */ jal func_8005A3C0 -/* 03AADC 80039EDC 00000000 */ nop -/* 03AAE0 80039EE0 8FB80090 */ lw $t8, 0x90($sp) -/* 03AAE4 80039EE4 240900FF */ li $t1, 255 -/* 03AAE8 80039EE8 1300003A */ beqz $t8, .L80039FD4 -/* 03AAEC 80039EEC 00000000 */ nop -/* 03AAF0 80039EF0 C62C0004 */ lwc1 $f12, 4($s1) -/* 03AAF4 80039EF4 44802000 */ mtc1 $zero, $f4 -/* 03AAF8 80039EF8 3C014020 */ li $at, 0x40200000 # 2.500000 -/* 03AAFC 80039EFC 460C2032 */ c.eq.s $f4, $f12 -/* 03AB00 80039F00 240C00FF */ li $t4, 255 -/* 03AB04 80039F04 45010008 */ bc1t .L80039F28 -/* 03AB08 80039F08 8FA600B4 */ lw $a2, 0xb4($sp) -/* 03AB0C 80039F0C 44819800 */ mtc1 $at, $f19 -/* 03AB10 80039F10 44809000 */ mtc1 $zero, $f18 -/* 03AB14 80039F14 460062A1 */ cvt.d.s $f10, $f12 -/* 03AB18 80039F18 46325200 */ add.d $f8, $f10, $f18 -/* 03AB1C 80039F1C 462041A0 */ cvt.s.d $f6, $f8 -/* 03AB20 80039F20 E6260004 */ swc1 $f6, 4($s1) -/* 03AB24 80039F24 8FA600B4 */ lw $a2, 0xb4($sp) -.L80039F28: -/* 03AB28 80039F28 8FA30070 */ lw $v1, 0x70($sp) -/* 03AB2C 80039F2C 28C10005 */ slti $at, $a2, 5 -/* 03AB30 80039F30 14200002 */ bnez $at, .L80039F3C -/* 03AB34 80039F34 00000000 */ nop -/* 03AB38 80039F38 24060004 */ li $a2, 4 -.L80039F3C: -/* 03AB3C 80039F3C 906201F7 */ lbu $v0, 0x1f7($v1) -/* 03AB40 80039F40 00064140 */ sll $t0, $a2, 5 -/* 03AB44 80039F44 01285023 */ subu $t2, $t1, $t0 -/* 03AB48 80039F48 004A082A */ slt $at, $v0, $t2 -/* 03AB4C 80039F4C 10200003 */ beqz $at, .L80039F5C -/* 03AB50 80039F50 00485821 */ addu $t3, $v0, $t0 -/* 03AB54 80039F54 100002EA */ b .L8003AB00 -/* 03AB58 80039F58 A06B01F7 */ sb $t3, 0x1f7($v1) -.L80039F5C: -/* 03AB5C 80039F5C A06C01F7 */ sb $t4, 0x1f7($v1) -/* 03AB60 80039F60 C6300004 */ lwc1 $f16, 4($s1) -/* 03AB64 80039F64 44800800 */ mtc1 $zero, $f1 -/* 03AB68 80039F68 44800000 */ mtc1 $zero, $f0 -/* 03AB6C 80039F6C 46008121 */ cvt.d.s $f4, $f16 -/* 03AB70 80039F70 46240032 */ c.eq.d $f0, $f4 -/* 03AB74 80039F74 3C038012 */ lui $v1, %hi(D_8011D4E0) # $v1, 0x8012 -/* 03AB78 80039F78 45000016 */ bc1f .L80039FD4 -/* 03AB7C 80039F7C 2463D4E0 */ addiu $v1, %lo(D_8011D4E0) # addiu $v1, $v1, -0x2b20 -/* 03AB80 80039F80 806D0000 */ lb $t5, ($v1) -/* 03AB84 80039F84 24190004 */ li $t9, 4 -/* 03AB88 80039F88 31AE0080 */ andi $t6, $t5, 0x80 -/* 03AB8C 80039F8C 11C0000E */ beqz $t6, .L80039FC8 -/* 03AB90 80039F90 24040062 */ li $a0, 98 -/* 03AB94 80039F94 3C04800E */ lui $a0, %hi(D_800DC978) # $a0, 0x800e -/* 03AB98 80039F98 240F0001 */ li $t7, 1 -/* 03AB9C 80039F9C A3AF006B */ sb $t7, 0x6b($sp) -/* 03ABA0 80039FA0 0C030076 */ jal func_800C01D8 -/* 03ABA4 80039FA4 2484C978 */ addiu $a0, %lo(D_800DC978) # addiu $a0, $a0, -0x3688 -/* 03ABA8 80039FA8 2418000F */ li $t8, 15 -/* 03ABAC 80039FAC AE180078 */ sw $t8, 0x78($s0) -/* 03ABB0 80039FB0 24040110 */ li $a0, 272 -/* 03ABB4 80039FB4 0C000741 */ jal func_80001D04 -/* 03ABB8 80039FB8 00002825 */ move $a1, $zero -/* 03ABBC 80039FBC 44805000 */ mtc1 $zero, $f10 -/* 03ABC0 80039FC0 100002CF */ b .L8003AB00 -/* 03ABC4 80039FC4 E62A0004 */ swc1 $f10, 4($s1) -.L80039FC8: -/* 03ABC8 80039FC8 AE190078 */ sw $t9, 0x78($s0) -/* 03ABCC 80039FCC 0C0274CF */ jal func_8009D33C -/* 03ABD0 80039FD0 24050002 */ li $a1, 2 -.L80039FD4: -/* 03ABD4 80039FD4 100002CB */ b .L8003AB04 -/* 03ABD8 80039FD8 C7B00098 */ lwc1 $f16, 0x98($sp) -/* 03ABDC 80039FDC C62C0004 */ lwc1 $f12, 4($s1) -/* 03ABE0 80039FE0 44800800 */ mtc1 $zero, $f1 -/* 03ABE4 80039FE4 44800000 */ mtc1 $zero, $f0 -/* 03ABE8 80039FE8 460060A1 */ cvt.d.s $f2, $f12 -/* 03ABEC 80039FEC 46220032 */ c.eq.d $f0, $f2 -/* 03ABF0 80039FF0 C7A800AC */ lwc1 $f8, 0xac($sp) -/* 03ABF4 80039FF4 4501000A */ bc1t .L8003A020 -/* 03ABF8 80039FF8 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 03ABFC 80039FFC 44819800 */ mtc1 $at, $f19 -/* 03AC00 8003A000 44809000 */ mtc1 $zero, $f18 -/* 03AC04 8003A004 460041A1 */ cvt.d.s $f6, $f8 -/* 03AC08 8003A008 46269402 */ mul.d $f16, $f18, $f6 -/* 03AC0C 8003A00C 46301100 */ add.d $f4, $f2, $f16 -/* 03AC10 8003A010 462022A0 */ cvt.s.d $f10, $f4 -/* 03AC14 8003A014 E62A0004 */ swc1 $f10, 4($s1) -/* 03AC18 8003A018 C62C0004 */ lwc1 $f12, 4($s1) -/* 03AC1C 8003A01C 00000000 */ nop -.L8003A020: -/* 03AC20 8003A020 44804000 */ mtc1 $zero, $f8 -/* 03AC24 8003A024 24080001 */ li $t0, 1 -/* 03AC28 8003A028 460C4032 */ c.eq.s $f8, $f12 -/* 03AC2C 8003A02C 00000000 */ nop -/* 03AC30 8003A030 450002B3 */ bc1f .L8003AB00 -/* 03AC34 8003A034 00000000 */ nop -/* 03AC38 8003A038 A3A8006B */ sb $t0, 0x6b($sp) -/* 03AC3C 8003A03C 8E090078 */ lw $t1, 0x78($s0) -/* 03AC40 8003A040 24010008 */ li $at, 8 -/* 03AC44 8003A044 15210014 */ bne $t1, $at, .L8003A098 -/* 03AC48 8003A048 240A0014 */ li $t2, 20 -/* 03AC4C 8003A04C 8FA20070 */ lw $v0, 0x70($sp) -/* 03AC50 8003A050 3C014248 */ li $at, 0x42480000 # 50.000000 -/* 03AC54 8003A054 44813000 */ mtc1 $at, $f6 -/* 03AC58 8003A058 C4520038 */ lwc1 $f18, 0x38($v0) -/* 03AC5C 8003A05C C4480040 */ lwc1 $f8, 0x40($v0) -/* 03AC60 8003A060 46069402 */ mul.s $f16, $f18, $f6 -/* 03AC64 8003A064 44819000 */ mtc1 $at, $f18 -/* 03AC68 8003A068 C604000C */ lwc1 $f4, 0xc($s0) -/* 03AC6C 8003A06C 8604002E */ lh $a0, 0x2e($s0) -/* 03AC70 8003A070 46124182 */ mul.s $f6, $f8, $f18 -/* 03AC74 8003A074 46102281 */ sub.s $f10, $f4, $f16 -/* 03AC78 8003A078 C6040014 */ lwc1 $f4, 0x14($s0) -/* 03AC7C 8003A07C 44055000 */ mfc1 $a1, $f10 -/* 03AC80 8003A080 46062401 */ sub.s $f16, $f4, $f6 -/* 03AC84 8003A084 8E060010 */ lw $a2, 0x10($s0) -/* 03AC88 8003A088 44078000 */ mfc1 $a3, $f16 -/* 03AC8C 8003A08C 0C008B3F */ jal func_80022CFC -/* 03AC90 8003A090 00000000 */ nop -/* 03AC94 8003A094 240A0014 */ li $t2, 20 -.L8003A098: -/* 03AC98 8003A098 AE0A0078 */ sw $t2, 0x78($s0) -/* 03AC9C 8003A09C 24040110 */ li $a0, 272 -/* 03ACA0 8003A0A0 0C000741 */ jal func_80001D04 -/* 03ACA4 8003A0A4 00002825 */ move $a1, $zero -/* 03ACA8 8003A0A8 8FA20070 */ lw $v0, 0x70($sp) -/* 03ACAC 8003A0AC 00000000 */ nop -/* 03ACB0 8003A0B0 80440003 */ lb $a0, 3($v0) -/* 03ACB4 8003A0B4 804501D6 */ lb $a1, 0x1d6($v0) -/* 03ACB8 8003A0B8 0C0012D0 */ jal func_80004B40 -/* 03ACBC 8003A0BC 00000000 */ nop -/* 03ACC0 8003A0C0 8FAB0070 */ lw $t3, 0x70($sp) -/* 03ACC4 8003A0C4 1000028E */ b .L8003AB00 -/* 03ACC8 8003A0C8 AD620118 */ sw $v0, 0x118($t3) -/* 03ACCC 8003A0CC 44805000 */ mtc1 $zero, $f10 -/* 03ACD0 8003A0D0 A207003B */ sb $a3, 0x3b($s0) -/* 03ACD4 8003A0D4 240C00FF */ li $t4, 255 -/* 03ACD8 8003A0D8 A22C000D */ sb $t4, 0xd($s1) -/* 03ACDC 8003A0DC E62A0014 */ swc1 $f10, 0x14($s1) -/* 03ACE0 8003A0E0 C7A800AC */ lwc1 $f8, 0xac($sp) -/* 03ACE4 8003A0E4 C6320004 */ lwc1 $f18, 4($s1) -/* 03ACE8 8003A0E8 46004021 */ cvt.d.s $f0, $f8 -/* 03ACEC 8003A0EC 46200180 */ add.d $f6, $f0, $f0 -/* 03ACF0 8003A0F0 3C01429E */ li $at, 0x429E0000 # 79.000000 -/* 03ACF4 8003A0F4 46009121 */ cvt.d.s $f4, $f18 -/* 03ACF8 8003A0F8 46262400 */ add.d $f16, $f4, $f6 -/* 03ACFC 8003A0FC 44811000 */ mtc1 $at, $f2 -/* 03AD00 8003A100 462082A0 */ cvt.s.d $f10, $f16 -/* 03AD04 8003A104 3C0141A0 */ li $at, 0x41A00000 # 20.000000 -/* 03AD08 8003A108 E62A0004 */ swc1 $f10, 4($s1) -/* 03AD0C 8003A10C C62C0004 */ lwc1 $f12, 4($s1) -/* 03AD10 8003A110 44814000 */ mtc1 $at, $f8 -/* 03AD14 8003A114 460C103C */ c.lt.s $f2, $f12 -/* 03AD18 8003A118 24040110 */ li $a0, 272 -/* 03AD1C 8003A11C 45000004 */ bc1f .L8003A130 -/* 03AD20 8003A120 00002825 */ move $a1, $zero -/* 03AD24 8003A124 E6220004 */ swc1 $f2, 4($s1) -/* 03AD28 8003A128 C62C0004 */ lwc1 $f12, 4($s1) -/* 03AD2C 8003A12C 00000000 */ nop -.L8003A130: -/* 03AD30 8003A130 8FA600B4 */ lw $a2, 0xb4($sp) -/* 03AD34 8003A134 4608603C */ c.lt.s $f12, $f8 -/* 03AD38 8003A138 000668C0 */ sll $t5, $a2, 3 -/* 03AD3C 8003A13C 45000002 */ bc1f .L8003A148 -/* 03AD40 8003A140 01A03025 */ move $a2, $t5 -/* 03AD44 8003A144 00003025 */ move $a2, $zero -.L8003A148: -/* 03AD48 8003A148 92020039 */ lbu $v0, 0x39($s0) -/* 03AD4C 8003A14C 240F0001 */ li $t7, 1 -/* 03AD50 8003A150 00C2082A */ slt $at, $a2, $v0 -/* 03AD54 8003A154 10200003 */ beqz $at, .L8003A164 -/* 03AD58 8003A158 00467023 */ subu $t6, $v0, $a2 -/* 03AD5C 8003A15C 10000268 */ b .L8003AB00 -/* 03AD60 8003A160 A20E0039 */ sb $t6, 0x39($s0) -.L8003A164: -/* 03AD64 8003A164 0C000741 */ jal func_80001D04 -/* 03AD68 8003A168 A3AF006B */ sb $t7, 0x6b($sp) -/* 03AD6C 8003A16C 8FA20070 */ lw $v0, 0x70($sp) -/* 03AD70 8003A170 8FA30090 */ lw $v1, 0x90($sp) -/* 03AD74 8003A174 2418000B */ li $t8, 11 -/* 03AD78 8003A178 3C014316 */ li $at, 0x43160000 # 150.000000 -/* 03AD7C 8003A17C A2000039 */ sb $zero, 0x39($s0) -/* 03AD80 8003A180 AE180078 */ sw $t8, 0x78($s0) -/* 03AD84 8003A184 44810000 */ mtc1 $at, $f0 -/* 03AD88 8003A188 C4440038 */ lwc1 $f4, 0x38($v0) -/* 03AD8C 8003A18C C472000C */ lwc1 $f18, 0xc($v1) -/* 03AD90 8003A190 46002182 */ mul.s $f6, $f4, $f0 -/* 03AD94 8003A194 C60E0010 */ lwc1 $f14, 0x10($s0) -/* 03AD98 8003A198 46069401 */ sub.s $f16, $f18, $f6 -/* 03AD9C 8003A19C E610000C */ swc1 $f16, 0xc($s0) -/* 03ADA0 8003A1A0 C4480040 */ lwc1 $f8, 0x40($v0) -/* 03ADA4 8003A1A4 C46A0014 */ lwc1 $f10, 0x14($v1) -/* 03ADA8 8003A1A8 46004102 */ mul.s $f4, $f8, $f0 -/* 03ADAC 8003A1AC C60C000C */ lwc1 $f12, 0xc($s0) -/* 03ADB0 8003A1B0 46045481 */ sub.s $f18, $f10, $f4 -/* 03ADB4 8003A1B4 E6120014 */ swc1 $f18, 0x14($s0) -/* 03ADB8 8003A1B8 8E060014 */ lw $a2, 0x14($s0) -/* 03ADBC 8003A1BC 0C00A7C6 */ jal func_80029F18 -/* 03ADC0 8003A1C0 00000000 */ nop -/* 03ADC4 8003A1C4 A602002E */ sh $v0, 0x2e($s0) -/* 03ADC8 8003A1C8 8FB90090 */ lw $t9, 0x90($sp) -/* 03ADCC 8003A1CC 34018000 */ li $at, 32768 -/* 03ADD0 8003A1D0 87280000 */ lh $t0, ($t9) -/* 03ADD4 8003A1D4 00000000 */ nop -/* 03ADD8 8003A1D8 01014821 */ addu $t1, $t0, $at -/* 03ADDC 8003A1DC A6090000 */ sh $t1, ($s0) -/* 03ADE0 8003A1E0 10000248 */ b .L8003AB04 -/* 03ADE4 8003A1E4 C7B00098 */ lwc1 $f16, 0x98($sp) -/* 03ADE8 8003A1E8 A207003B */ sb $a3, 0x3b($s0) -/* 03ADEC 8003A1EC C7A600AC */ lwc1 $f6, 0xac($sp) -/* 03ADF0 8003A1F0 C6300004 */ lwc1 $f16, 4($s1) -/* 03ADF4 8003A1F4 46003021 */ cvt.d.s $f0, $f6 -/* 03ADF8 8003A1F8 46200280 */ add.d $f10, $f0, $f0 -/* 03ADFC 8003A1FC 44801000 */ mtc1 $zero, $f2 -/* 03AE00 8003A200 46008221 */ cvt.d.s $f8, $f16 -/* 03AE04 8003A204 462A4101 */ sub.d $f4, $f8, $f10 -/* 03AE08 8003A208 240B00FF */ li $t3, 255 -/* 03AE0C 8003A20C 462024A0 */ cvt.s.d $f18, $f4 -/* 03AE10 8003A210 240E00FF */ li $t6, 255 -/* 03AE14 8003A214 E6320004 */ swc1 $f18, 4($s1) -/* 03AE18 8003A218 C6260004 */ lwc1 $f6, 4($s1) -/* 03AE1C 8003A21C 240F0001 */ li $t7, 1 -/* 03AE20 8003A220 4602303C */ c.lt.s $f6, $f2 -/* 03AE24 8003A224 00000000 */ nop -/* 03AE28 8003A228 45000003 */ bc1f .L8003A238 -/* 03AE2C 8003A22C 8FA300B4 */ lw $v1, 0xb4($sp) -/* 03AE30 8003A230 E6220004 */ swc1 $f2, 4($s1) -/* 03AE34 8003A234 8FA300B4 */ lw $v1, 0xb4($sp) -.L8003A238: -/* 03AE38 8003A238 92020039 */ lbu $v0, 0x39($s0) -/* 03AE3C 8003A23C 00035080 */ sll $t2, $v1, 2 -/* 03AE40 8003A240 016A6023 */ subu $t4, $t3, $t2 -/* 03AE44 8003A244 004C082A */ slt $at, $v0, $t4 -/* 03AE48 8003A248 10200003 */ beqz $at, .L8003A258 -/* 03AE4C 8003A24C 004A6821 */ addu $t5, $v0, $t2 -/* 03AE50 8003A250 1000022B */ b .L8003AB00 -/* 03AE54 8003A254 A20D0039 */ sb $t5, 0x39($s0) -.L8003A258: -/* 03AE58 8003A258 A20E0039 */ sb $t6, 0x39($s0) -/* 03AE5C 8003A25C AE0F0078 */ sw $t7, 0x78($s0) -/* 03AE60 8003A260 10000228 */ b .L8003AB04 -/* 03AE64 8003A264 C7B00098 */ lwc1 $f16, 0x98($sp) -/* 03AE68 8003A268 44808000 */ mtc1 $zero, $f16 -/* 03AE6C 8003A26C A207003B */ sb $a3, 0x3b($s0) -/* 03AE70 8003A270 241800FF */ li $t8, 255 -/* 03AE74 8003A274 A238000D */ sb $t8, 0xd($s1) -/* 03AE78 8003A278 E6300014 */ swc1 $f16, 0x14($s1) -/* 03AE7C 8003A27C C7A800AC */ lwc1 $f8, 0xac($sp) -/* 03AE80 8003A280 C62A0004 */ lwc1 $f10, 4($s1) -/* 03AE84 8003A284 46004021 */ cvt.d.s $f0, $f8 -/* 03AE88 8003A288 46200480 */ add.d $f18, $f0, $f0 -/* 03AE8C 8003A28C 3C01429E */ li $at, 0x429E0000 # 79.000000 -/* 03AE90 8003A290 46005121 */ cvt.d.s $f4, $f10 -/* 03AE94 8003A294 46322180 */ add.d $f6, $f4, $f18 -/* 03AE98 8003A298 44811000 */ mtc1 $at, $f2 -/* 03AE9C 8003A29C 46203420 */ cvt.s.d $f16, $f6 -/* 03AEA0 8003A2A0 3C0141A0 */ li $at, 0x41A00000 # 20.000000 -/* 03AEA4 8003A2A4 E6300004 */ swc1 $f16, 4($s1) -/* 03AEA8 8003A2A8 C62C0004 */ lwc1 $f12, 4($s1) -/* 03AEAC 8003A2AC 44814000 */ mtc1 $at, $f8 -/* 03AEB0 8003A2B0 460C103C */ c.lt.s $f2, $f12 -/* 03AEB4 8003A2B4 00000000 */ nop -/* 03AEB8 8003A2B8 45000005 */ bc1f .L8003A2D0 -/* 03AEBC 8003A2BC 8FA600B4 */ lw $a2, 0xb4($sp) -/* 03AEC0 8003A2C0 E6220004 */ swc1 $f2, 4($s1) -/* 03AEC4 8003A2C4 C62C0004 */ lwc1 $f12, 4($s1) -/* 03AEC8 8003A2C8 00000000 */ nop -/* 03AECC 8003A2CC 8FA600B4 */ lw $a2, 0xb4($sp) -.L8003A2D0: -/* 03AED0 8003A2D0 4608603C */ c.lt.s $f12, $f8 -/* 03AED4 8003A2D4 0006C8C0 */ sll $t9, $a2, 3 -/* 03AED8 8003A2D8 45000002 */ bc1f .L8003A2E4 -/* 03AEDC 8003A2DC 03203025 */ move $a2, $t9 -/* 03AEE0 8003A2E0 00003025 */ move $a2, $zero -.L8003A2E4: -/* 03AEE4 8003A2E4 92020039 */ lbu $v0, 0x39($s0) -/* 03AEE8 8003A2E8 00000000 */ nop -/* 03AEEC 8003A2EC 00C2082A */ slt $at, $a2, $v0 -/* 03AEF0 8003A2F0 10200003 */ beqz $at, .L8003A300 -/* 03AEF4 8003A2F4 00464023 */ subu $t0, $v0, $a2 -/* 03AEF8 8003A2F8 10000201 */ b .L8003AB00 -/* 03AEFC 8003A2FC A2080039 */ sb $t0, 0x39($s0) -.L8003A300: -/* 03AF00 8003A300 8FA20070 */ lw $v0, 0x70($sp) -/* 03AF04 8003A304 00000000 */ nop -/* 03AF08 8003A308 80440003 */ lb $a0, 3($v0) -/* 03AF0C 8003A30C 804501D6 */ lb $a1, 0x1d6($v0) -/* 03AF10 8003A310 0C0012D0 */ jal func_80004B40 -/* 03AF14 8003A314 00000000 */ nop -/* 03AF18 8003A318 8FA90070 */ lw $t1, 0x70($sp) -/* 03AF1C 8003A31C 240C00B4 */ li $t4, 180 -/* 03AF20 8003A320 AD220118 */ sw $v0, 0x118($t1) -/* 03AF24 8003A324 862A0020 */ lh $t2, 0x20($s1) -/* 03AF28 8003A328 92270013 */ lbu $a3, 0x13($s1) -/* 03AF2C 8003A32C 92260012 */ lbu $a2, 0x12($s1) -/* 03AF30 8003A330 92250011 */ lbu $a1, 0x11($s1) -/* 03AF34 8003A334 AFAA0010 */ sw $t2, 0x10($sp) -/* 03AF38 8003A338 862B0022 */ lh $t3, 0x22($s1) -/* 03AF3C 8003A33C AFAC0018 */ sw $t4, 0x18($sp) -/* 03AF40 8003A340 00002025 */ move $a0, $zero -/* 03AF44 8003A344 0C00C378 */ jal func_80030DE0 -/* 03AF48 8003A348 AFAB0014 */ sw $t3, 0x14($sp) -/* 03AF4C 8003A34C 8FAD0064 */ lw $t5, 0x64($sp) -/* 03AF50 8003A350 00000000 */ nop -/* 03AF54 8003A354 91A400B3 */ lbu $a0, 0xb3($t5) -/* 03AF58 8003A358 0C0002F8 */ jal func_80000BE0 -/* 03AF5C 8003A35C 00000000 */ nop -/* 03AF60 8003A360 8FAE0064 */ lw $t6, 0x64($sp) -/* 03AF64 8003A364 00000000 */ nop -/* 03AF68 8003A368 91C40052 */ lbu $a0, 0x52($t6) -/* 03AF6C 8003A36C 0C0002CD */ jal func_80000B34 -/* 03AF70 8003A370 00000000 */ nop -/* 03AF74 8003A374 8FAF0064 */ lw $t7, 0x64($sp) -/* 03AF78 8003A378 00000000 */ nop -/* 03AF7C 8003A37C 95E40054 */ lhu $a0, 0x54($t7) -/* 03AF80 8003A380 0C00041D */ jal func_80001074 -/* 03AF84 8003A384 00000000 */ nop -/* 03AF88 8003A388 8FB80070 */ lw $t8, 0x70($sp) -/* 03AF8C 8003A38C 00000000 */ nop -/* 03AF90 8003A390 830401D6 */ lb $a0, 0x1d6($t8) -/* 03AF94 8003A394 0C008A3B */ jal func_800228EC -/* 03AF98 8003A398 00000000 */ nop -/* 03AF9C 8003A39C C60C000C */ lwc1 $f12, 0xc($s0) -/* 03AFA0 8003A3A0 C60E0014 */ lwc1 $f14, 0x14($s0) -/* 03AFA4 8003A3A4 0C008D0B */ jal func_8002342C -/* 03AFA8 8003A3A8 00000000 */ nop -/* 03AFAC 8003A3AC 10400010 */ beqz $v0, .L8003A3F0 -/* 03AFB0 8003A3B0 240B001E */ li $t3, 30 -/* 03AFB4 8003A3B4 C44A000C */ lwc1 $f10, 0xc($v0) -/* 03AFB8 8003A3B8 34018000 */ li $at, 32768 -/* 03AFBC 8003A3BC E60A000C */ swc1 $f10, 0xc($s0) -/* 03AFC0 8003A3C0 C4440014 */ lwc1 $f4, 0x14($v0) -/* 03AFC4 8003A3C4 00000000 */ nop -/* 03AFC8 8003A3C8 E6040014 */ swc1 $f4, 0x14($s0) -/* 03AFCC 8003A3CC 8459002E */ lh $t9, 0x2e($v0) -/* 03AFD0 8003A3D0 00000000 */ nop -/* 03AFD4 8003A3D4 A619002E */ sh $t9, 0x2e($s0) -/* 03AFD8 8003A3D8 8FA80090 */ lw $t0, 0x90($sp) -/* 03AFDC 8003A3DC 00000000 */ nop -/* 03AFE0 8003A3E0 85090000 */ lh $t1, ($t0) -/* 03AFE4 8003A3E4 00000000 */ nop -/* 03AFE8 8003A3E8 01215021 */ addu $t2, $t1, $at -/* 03AFEC 8003A3EC A60A0000 */ sh $t2, ($s0) -.L8003A3F0: -/* 03AFF0 8003A3F0 AE0B0078 */ sw $t3, 0x78($s0) -/* 03AFF4 8003A3F4 100001C3 */ b .L8003AB04 -/* 03AFF8 8003A3F8 C7B00098 */ lwc1 $f16, 0x98($sp) -/* 03AFFC 8003A3FC 44809000 */ mtc1 $zero, $f18 -/* 03B000 8003A400 A207003B */ sb $a3, 0x3b($s0) -/* 03B004 8003A404 240C00FF */ li $t4, 255 -/* 03B008 8003A408 A22C000D */ sb $t4, 0xd($s1) -/* 03B00C 8003A40C E6320014 */ swc1 $f18, 0x14($s1) -/* 03B010 8003A410 C7A600AC */ lwc1 $f6, 0xac($sp) -/* 03B014 8003A414 C6300004 */ lwc1 $f16, 4($s1) -/* 03B018 8003A418 46003021 */ cvt.d.s $f0, $f6 -/* 03B01C 8003A41C 46200280 */ add.d $f10, $f0, $f0 -/* 03B020 8003A420 3C01429E */ li $at, 0x429E0000 # 79.000000 -/* 03B024 8003A424 46008221 */ cvt.d.s $f8, $f16 -/* 03B028 8003A428 462A4100 */ add.d $f4, $f8, $f10 -/* 03B02C 8003A42C 44811000 */ mtc1 $at, $f2 -/* 03B030 8003A430 462024A0 */ cvt.s.d $f18, $f4 -/* 03B034 8003A434 3C0141A0 */ li $at, 0x41A00000 # 20.000000 -/* 03B038 8003A438 E6320004 */ swc1 $f18, 4($s1) -/* 03B03C 8003A43C C62C0004 */ lwc1 $f12, 4($s1) -/* 03B040 8003A440 44813000 */ mtc1 $at, $f6 -/* 03B044 8003A444 460C103C */ c.lt.s $f2, $f12 -/* 03B048 8003A448 240F0015 */ li $t7, 21 -/* 03B04C 8003A44C 45000005 */ bc1f .L8003A464 -/* 03B050 8003A450 8FA600B4 */ lw $a2, 0xb4($sp) -/* 03B054 8003A454 E6220004 */ swc1 $f2, 4($s1) -/* 03B058 8003A458 C62C0004 */ lwc1 $f12, 4($s1) -/* 03B05C 8003A45C 00000000 */ nop -/* 03B060 8003A460 8FA600B4 */ lw $a2, 0xb4($sp) -.L8003A464: -/* 03B064 8003A464 4606603C */ c.lt.s $f12, $f6 -/* 03B068 8003A468 000668C0 */ sll $t5, $a2, 3 -/* 03B06C 8003A46C 45000002 */ bc1f .L8003A478 -/* 03B070 8003A470 01A03025 */ move $a2, $t5 -/* 03B074 8003A474 00003025 */ move $a2, $zero -.L8003A478: -/* 03B078 8003A478 92020039 */ lbu $v0, 0x39($s0) -/* 03B07C 8003A47C 00000000 */ nop -/* 03B080 8003A480 00C2082A */ slt $at, $a2, $v0 -/* 03B084 8003A484 10200003 */ beqz $at, .L8003A494 -/* 03B088 8003A488 00467023 */ subu $t6, $v0, $a2 -/* 03B08C 8003A48C 1000019C */ b .L8003AB00 -/* 03B090 8003A490 A20E0039 */ sb $t6, 0x39($s0) -.L8003A494: -/* 03B094 8003A494 C60C000C */ lwc1 $f12, 0xc($s0) -/* 03B098 8003A498 C60E0014 */ lwc1 $f14, 0x14($s0) -/* 03B09C 8003A49C A2000039 */ sb $zero, 0x39($s0) -/* 03B0A0 8003A4A0 0C008D0B */ jal func_8002342C -/* 03B0A4 8003A4A4 AE0F0078 */ sw $t7, 0x78($s0) -/* 03B0A8 8003A4A8 10400010 */ beqz $v0, .L8003A4EC -/* 03B0AC 8003A4AC 00000000 */ nop -/* 03B0B0 8003A4B0 C450000C */ lwc1 $f16, 0xc($v0) -/* 03B0B4 8003A4B4 34018000 */ li $at, 32768 -/* 03B0B8 8003A4B8 E610000C */ swc1 $f16, 0xc($s0) -/* 03B0BC 8003A4BC C4480014 */ lwc1 $f8, 0x14($v0) -/* 03B0C0 8003A4C0 00000000 */ nop -/* 03B0C4 8003A4C4 E6080014 */ swc1 $f8, 0x14($s0) -/* 03B0C8 8003A4C8 8458002E */ lh $t8, 0x2e($v0) -/* 03B0CC 8003A4CC 00000000 */ nop -/* 03B0D0 8003A4D0 A618002E */ sh $t8, 0x2e($s0) -/* 03B0D4 8003A4D4 8FB90090 */ lw $t9, 0x90($sp) -/* 03B0D8 8003A4D8 00000000 */ nop -/* 03B0DC 8003A4DC 87280000 */ lh $t0, ($t9) -/* 03B0E0 8003A4E0 00000000 */ nop -/* 03B0E4 8003A4E4 01014821 */ addu $t1, $t0, $at -/* 03B0E8 8003A4E8 A6090000 */ sh $t1, ($s0) -.L8003A4EC: -/* 03B0EC 8003A4EC 10000185 */ b .L8003AB04 -/* 03B0F0 8003A4F0 C7B00098 */ lwc1 $f16, 0x98($sp) -/* 03B0F4 8003A4F4 A207003B */ sb $a3, 0x3b($s0) -/* 03B0F8 8003A4F8 C7AA00AC */ lwc1 $f10, 0xac($sp) -/* 03B0FC 8003A4FC C6240004 */ lwc1 $f4, 4($s1) -/* 03B100 8003A500 46005021 */ cvt.d.s $f0, $f10 -/* 03B104 8003A504 46200180 */ add.d $f6, $f0, $f0 -/* 03B108 8003A508 44801000 */ mtc1 $zero, $f2 -/* 03B10C 8003A50C 460024A1 */ cvt.d.s $f18, $f4 -/* 03B110 8003A510 46269401 */ sub.d $f16, $f18, $f6 -/* 03B114 8003A514 240B00FF */ li $t3, 255 -/* 03B118 8003A518 46208220 */ cvt.s.d $f8, $f16 -/* 03B11C 8003A51C 240E00FF */ li $t6, 255 -/* 03B120 8003A520 E6280004 */ swc1 $f8, 4($s1) -/* 03B124 8003A524 C62A0004 */ lwc1 $f10, 4($s1) -/* 03B128 8003A528 00000000 */ nop -/* 03B12C 8003A52C 4602503C */ c.lt.s $f10, $f2 -/* 03B130 8003A530 00000000 */ nop -/* 03B134 8003A534 45000003 */ bc1f .L8003A544 -/* 03B138 8003A538 8FA300B4 */ lw $v1, 0xb4($sp) -/* 03B13C 8003A53C E6220004 */ swc1 $f2, 4($s1) -/* 03B140 8003A540 8FA300B4 */ lw $v1, 0xb4($sp) -.L8003A544: -/* 03B144 8003A544 92020039 */ lbu $v0, 0x39($s0) -/* 03B148 8003A548 00035080 */ sll $t2, $v1, 2 -/* 03B14C 8003A54C 016A6023 */ subu $t4, $t3, $t2 -/* 03B150 8003A550 004C082A */ slt $at, $v0, $t4 -/* 03B154 8003A554 10200003 */ beqz $at, .L8003A564 -/* 03B158 8003A558 004A6821 */ addu $t5, $v0, $t2 -/* 03B15C 8003A55C 10000168 */ b .L8003AB00 -/* 03B160 8003A560 A20D0039 */ sb $t5, 0x39($s0) -.L8003A564: -/* 03B164 8003A564 A20E0039 */ sb $t6, 0x39($s0) -/* 03B168 8003A568 AE000078 */ sw $zero, 0x78($s0) -/* 03B16C 8003A56C 10000165 */ b .L8003AB04 -/* 03B170 8003A570 C7B00098 */ lwc1 $f16, 0x98($sp) -/* 03B174 8003A574 8E0F004C */ lw $t7, 0x4c($s0) -/* 03B178 8003A578 24180006 */ li $t8, 6 -/* 03B17C 8003A57C A5E00014 */ sh $zero, 0x14($t7) -/* 03B180 8003A580 241900FF */ li $t9, 255 -/* 03B184 8003A584 A218003B */ sb $t8, 0x3b($s0) -/* 03B188 8003A588 A2190039 */ sb $t9, 0x39($s0) -/* 03B18C 8003A58C C6240004 */ lwc1 $f4, 4($s1) -/* 03B190 8003A590 C7A600AC */ lwc1 $f6, 0xac($sp) -/* 03B194 8003A594 460024A1 */ cvt.d.s $f18, $f4 -/* 03B198 8003A598 46003421 */ cvt.d.s $f16, $f6 -/* 03B19C 8003A59C 46309200 */ add.d $f8, $f18, $f16 -/* 03B1A0 8003A5A0 462042A0 */ cvt.s.d $f10, $f8 -/* 03B1A4 8003A5A4 10000156 */ b .L8003AB00 -/* 03B1A8 8003A5A8 E62A0004 */ swc1 $f10, 4($s1) -.L8003A5AC: -/* 03B1AC 8003A5AC A200003B */ sb $zero, 0x3b($s0) -/* 03B1B0 8003A5B0 44802000 */ mtc1 $zero, $f4 -/* 03B1B4 8003A5B4 9228000D */ lbu $t0, 0xd($s1) -/* 03B1B8 8003A5B8 240100FF */ li $at, 255 -/* 03B1BC 8003A5BC 1501001B */ bne $t0, $at, .L8003A62C -/* 03B1C0 8003A5C0 E6240014 */ swc1 $f4, 0x14($s1) -/* 03B1C4 8003A5C4 C60C000C */ lwc1 $f12, 0xc($s0) -/* 03B1C8 8003A5C8 C60E0010 */ lwc1 $f14, 0x10($s0) -/* 03B1CC 8003A5CC 8E060014 */ lw $a2, 0x14($s0) -/* 03B1D0 8003A5D0 0C007149 */ jal func_8001C524 -/* 03B1D4 8003A5D4 00003825 */ move $a3, $zero -/* 03B1D8 8003A5D8 304400FF */ andi $a0, $v0, 0xff -/* 03B1DC 8003A5DC 240100FF */ li $at, 255 -/* 03B1E0 8003A5E0 1081007F */ beq $a0, $at, .L8003A7E0 -/* 03B1E4 8003A5E4 A222000D */ sb $v0, 0xd($s1) -/* 03B1E8 8003A5E8 2405FFFF */ li $a1, -1 -/* 03B1EC 8003A5EC 0C007312 */ jal func_8001CC48 -/* 03B1F0 8003A5F0 00003025 */ move $a2, $zero -/* 03B1F4 8003A5F4 9225000D */ lbu $a1, 0xd($s1) -/* 03B1F8 8003A5F8 A222000E */ sb $v0, 0xe($s1) -/* 03B1FC 8003A5FC 304400FF */ andi $a0, $v0, 0xff -/* 03B200 8003A600 0C007312 */ jal func_8001CC48 -/* 03B204 8003A604 00003025 */ move $a2, $zero -/* 03B208 8003A608 9225000E */ lbu $a1, 0xe($s1) -/* 03B20C 8003A60C A222000F */ sb $v0, 0xf($s1) -/* 03B210 8003A610 304400FF */ andi $a0, $v0, 0xff -/* 03B214 8003A614 0C007312 */ jal func_8001CC48 -/* 03B218 8003A618 00003025 */ move $a2, $zero -/* 03B21C 8003A61C 9229000D */ lbu $t1, 0xd($s1) -/* 03B220 8003A620 A2220010 */ sb $v0, 0x10($s1) -/* 03B224 8003A624 1000006E */ b .L8003A7E0 -/* 03B228 8003A628 A229000C */ sb $t1, 0xc($s1) -.L8003A62C: -/* 03B22C 8003A62C 3C01425C */ li $at, 0x425C0000 # 55.000000 -/* 03B230 8003A630 44819000 */ mtc1 $at, $f18 -/* 03B234 8003A634 C7A6009C */ lwc1 $f6, 0x9c($sp) -/* 03B238 8003A638 00000000 */ nop -/* 03B23C 8003A63C 4612303C */ c.lt.s $f6, $f18 -/* 03B240 8003A640 00000000 */ nop -/* 03B244 8003A644 45000010 */ bc1f .L8003A688 -/* 03B248 8003A648 00000000 */ nop -/* 03B24C 8003A64C 862A001C */ lh $t2, 0x1c($s1) -/* 03B250 8003A650 8FAB0090 */ lw $t3, 0x90($sp) -/* 03B254 8003A654 1540000C */ bnez $t2, .L8003A688 -/* 03B258 8003A658 00000000 */ nop -/* 03B25C 8003A65C 1160000A */ beqz $t3, .L8003A688 -/* 03B260 8003A660 240C00F0 */ li $t4, 240 -/* 03B264 8003A664 A62C001C */ sh $t4, 0x1c($s1) -/* 03B268 8003A668 C7A8009C */ lwc1 $f8, 0x9c($sp) -/* 03B26C 8003A66C C7AA00A0 */ lwc1 $f10, 0xa0($sp) -/* 03B270 8003A670 C7B000A8 */ lwc1 $f16, 0xa8($sp) -/* 03B274 8003A674 46085383 */ div.s $f14, $f10, $f8 -/* 03B278 8003A678 0C01C1D4 */ jal func_80070750 -/* 03B27C 8003A67C 46088303 */ div.s $f12, $f16, $f8 -/* 03B280 8003A680 244D4000 */ addiu $t5, $v0, 0x4000 -/* 03B284 8003A684 A62D001E */ sh $t5, 0x1e($s1) -.L8003A688: -/* 03B288 8003A688 8622001C */ lh $v0, 0x1c($s1) -/* 03B28C 8003A68C 8FAE00B4 */ lw $t6, 0xb4($sp) -/* 03B290 8003A690 18400003 */ blez $v0, .L8003A6A0 -/* 03B294 8003A694 004E7823 */ subu $t7, $v0, $t6 -/* 03B298 8003A698 10000002 */ b .L8003A6A4 -/* 03B29C 8003A69C A62F001C */ sh $t7, 0x1c($s1) -.L8003A6A0: -/* 03B2A0 8003A6A0 A620001C */ sh $zero, 0x1c($s1) -.L8003A6A4: -/* 03B2A4 8003A6A4 8638001C */ lh $t8, 0x1c($s1) -/* 03B2A8 8003A6A8 8FA900B4 */ lw $t1, 0xb4($sp) -/* 03B2AC 8003A6AC 2B010078 */ slti $at, $t8, 0x78 -/* 03B2B0 8003A6B0 1020000B */ beqz $at, .L8003A6E0 -/* 03B2B4 8003A6B4 02202025 */ move $a0, $s1 -/* 03B2B8 8003A6B8 8FA600AC */ lw $a2, 0xac($sp) -/* 03B2BC 8003A6BC 02002825 */ move $a1, $s0 -/* 03B2C0 8003A6C0 3C073F80 */ lui $a3, 0x3f80 -/* 03B2C4 8003A6C4 0C0071B1 */ jal func_8001C6C4 -/* 03B2C8 8003A6C8 AFA00010 */ sw $zero, 0x10($sp) -/* 03B2CC 8003A6CC C6240004 */ lwc1 $f4, 4($s1) -/* 03B2D0 8003A6D0 00000000 */ nop -/* 03B2D4 8003A6D4 46002180 */ add.s $f6, $f4, $f0 -/* 03B2D8 8003A6D8 10000041 */ b .L8003A7E0 -/* 03B2DC 8003A6DC E6260004 */ swc1 $f6, 4($s1) -.L8003A6E0: -/* 03B2E0 8003A6E0 86050000 */ lh $a1, ($s0) -/* 03B2E4 8003A6E4 8639001E */ lh $t9, 0x1e($s1) -/* 03B2E8 8003A6E8 30A8FFFF */ andi $t0, $a1, 0xffff -/* 03B2EC 8003A6EC 34018001 */ li $at, 32769 -/* 03B2F0 8003A6F0 03283023 */ subu $a2, $t9, $t0 -/* 03B2F4 8003A6F4 00C1082A */ slt $at, $a2, $at -/* 03B2F8 8003A6F8 14200003 */ bnez $at, .L8003A708 -/* 03B2FC 8003A6FC 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 03B300 8003A700 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 03B304 8003A704 00C13021 */ addu $a2, $a2, $at -.L8003A708: -/* 03B308 8003A708 28C18000 */ slti $at, $a2, -0x8000 -/* 03B30C 8003A70C 10200002 */ beqz $at, .L8003A718 -/* 03B310 8003A710 3401FFFF */ li $at, 65535 -/* 03B314 8003A714 00C13021 */ addu $a2, $a2, $at -.L8003A718: -/* 03B318 8003A718 00C90019 */ multu $a2, $t1 -/* 03B31C 8003A71C 34018000 */ li $at, 32768 -/* 03B320 8003A720 00005012 */ mflo $t2 -/* 03B324 8003A724 000A5903 */ sra $t3, $t2, 4 -/* 03B328 8003A728 00AB6021 */ addu $t4, $a1, $t3 -/* 03B32C 8003A72C A60C0000 */ sh $t4, ($s0) -/* 03B330 8003A730 86040000 */ lh $a0, ($s0) -/* 03B334 8003A734 00000000 */ nop -/* 03B338 8003A738 00812021 */ addu $a0, $a0, $at -/* 03B33C 8003A73C 00046C00 */ sll $t5, $a0, 0x10 -/* 03B340 8003A740 0C01C1F1 */ jal func_800707C4 -/* 03B344 8003A744 000D2403 */ sra $a0, $t5, 0x10 -/* 03B348 8003A748 E7A000A8 */ swc1 $f0, 0xa8($sp) -/* 03B34C 8003A74C 86040000 */ lh $a0, ($s0) -/* 03B350 8003A750 34018000 */ li $at, 32768 -/* 03B354 8003A754 00812021 */ addu $a0, $a0, $at -/* 03B358 8003A758 00047C00 */ sll $t7, $a0, 0x10 -/* 03B35C 8003A75C 0C01C1FE */ jal func_800707F8 -/* 03B360 8003A760 000F2403 */ sra $a0, $t7, 0x10 -/* 03B364 8003A764 C7AC0048 */ lwc1 $f12, 0x48($sp) -/* 03B368 8003A768 C7B200A8 */ lwc1 $f18, 0xa8($sp) -/* 03B36C 8003A76C 3C01800E */ lui $at, %hi(D_800E6154) # $at, 0x800e -/* 03B370 8003A770 46126402 */ mul.s $f16, $f12, $f18 -/* 03B374 8003A774 C4236150 */ lwc1 $f3, %lo(D_800E6150)($at) -/* 03B378 8003A778 C4226154 */ lwc1 $f2, %lo(D_800E6154)($at) -/* 03B37C 8003A77C 02002025 */ move $a0, $s0 -/* 03B380 8003A780 460082A1 */ cvt.d.s $f10, $f16 -/* 03B384 8003A784 46225202 */ mul.d $f8, $f10, $f2 -/* 03B388 8003A788 24060000 */ li $a2, 0 -/* 03B38C 8003A78C 46006182 */ mul.s $f6, $f12, $f0 -/* 03B390 8003A790 46204120 */ cvt.s.d $f4, $f8 -/* 03B394 8003A794 44052000 */ mfc1 $a1, $f4 -/* 03B398 8003A798 460034A1 */ cvt.d.s $f18, $f6 -/* 03B39C 8003A79C 46229402 */ mul.d $f16, $f18, $f2 -/* 03B3A0 8003A7A0 462082A0 */ cvt.s.d $f10, $f16 -/* 03B3A4 8003A7A4 44075000 */ mfc1 $a3, $f10 -/* 03B3A8 8003A7A8 0C00455C */ jal func_80011570 -/* 03B3AC 8003A7AC 00000000 */ nop -/* 03B3B0 8003A7B0 8FB900B4 */ lw $t9, 0xb4($sp) -/* 03B3B4 8003A7B4 3C01800E */ lui $at, %hi(D_800E615C) # $at, 0x800e -/* 03B3B8 8003A7B8 44994000 */ mtc1 $t9, $f8 -/* 03B3BC 8003A7BC C4276158 */ lwc1 $f7, %lo(D_800E6158)($at) -/* 03B3C0 8003A7C0 46804121 */ cvt.d.w $f4, $f8 -/* 03B3C4 8003A7C4 C426615C */ lwc1 $f6, %lo(D_800E615C)($at) -/* 03B3C8 8003A7C8 C6300004 */ lwc1 $f16, 4($s1) -/* 03B3CC 8003A7CC 46262482 */ mul.d $f18, $f4, $f6 -/* 03B3D0 8003A7D0 460082A1 */ cvt.d.s $f10, $f16 -/* 03B3D4 8003A7D4 46325200 */ add.d $f8, $f10, $f18 -/* 03B3D8 8003A7D8 46204120 */ cvt.s.d $f4, $f8 -/* 03B3DC 8003A7DC E6240004 */ swc1 $f4, 4($s1) -.L8003A7E0: -/* 03B3E0 8003A7E0 0C006E9D */ jal func_8001BA74 -/* 03B3E4 8003A7E4 27A40078 */ addiu $a0, $sp, 0x78 -/* 03B3E8 8003A7E8 8C480000 */ lw $t0, ($v0) -/* 03B3EC 8003A7EC 00000000 */ nop -/* 03B3F0 8003A7F0 1100005E */ beqz $t0, .L8003A96C -/* 03B3F4 8003A7F4 00000000 */ nop -/* 03B3F8 8003A7F8 8C420000 */ lw $v0, ($v0) -/* 03B3FC 8003A7FC C610000C */ lwc1 $f16, 0xc($s0) -/* 03B400 8003A800 C446000C */ lwc1 $f6, 0xc($v0) -/* 03B404 8003A804 C6120010 */ lwc1 $f18, 0x10($s0) -/* 03B408 8003A808 46103081 */ sub.s $f2, $f6, $f16 -/* 03B40C 8003A80C C44A0010 */ lwc1 $f10, 0x10($v0) -/* 03B410 8003A810 46021182 */ mul.s $f6, $f2, $f2 -/* 03B414 8003A814 46125001 */ sub.s $f0, $f10, $f18 -/* 03B418 8003A818 C6040014 */ lwc1 $f4, 0x14($s0) -/* 03B41C 8003A81C C4480014 */ lwc1 $f8, 0x14($v0) -/* 03B420 8003A820 46000402 */ mul.s $f16, $f0, $f0 -/* 03B424 8003A824 46044381 */ sub.s $f14, $f8, $f4 -/* 03B428 8003A828 460E7482 */ mul.s $f18, $f14, $f14 -/* 03B42C 8003A82C 46103280 */ add.s $f10, $f6, $f16 -/* 03B430 8003A830 0C0326B4 */ jal sqrtf -/* 03B434 8003A834 46125300 */ add.s $f12, $f10, $f18 -/* 03B438 8003A838 3C01447A */ li $at, 0x447A0000 # 1000.000000 -/* 03B43C 8003A83C 44816000 */ mtc1 $at, $f12 -/* 03B440 8003A840 00000000 */ nop -/* 03B444 8003A844 460C003C */ c.lt.s $f0, $f12 -/* 03B448 8003A848 00000000 */ nop -/* 03B44C 8003A84C 45000041 */ bc1f .L8003A954 -/* 03B450 8003A850 00000000 */ nop -/* 03B454 8003A854 46006081 */ sub.s $f2, $f12, $f0 -/* 03B458 8003A858 0C01A75F */ jal func_80069D7C -/* 03B45C 8003A85C E7A2005C */ swc1 $f2, 0x5c($sp) -/* 03B460 8003A860 C608000C */ lwc1 $f8, 0xc($s0) -/* 03B464 8003A864 C444000C */ lwc1 $f4, 0xc($v0) -/* 03B468 8003A868 C6060014 */ lwc1 $f6, 0x14($s0) -/* 03B46C 8003A86C C4500014 */ lwc1 $f16, 0x14($v0) -/* 03B470 8003A870 84460000 */ lh $a2, ($v0) -/* 03B474 8003A874 46044301 */ sub.s $f12, $f8, $f4 -/* 03B478 8003A878 0C002430 */ jal func_800090C0 -/* 03B47C 8003A87C 46103381 */ sub.s $f14, $f6, $f16 -/* 03B480 8003A880 3C0142FE */ li $at, 0x42FE0000 # 127.000000 -/* 03B484 8003A884 C7A2005C */ lwc1 $f2, 0x5c($sp) -/* 03B488 8003A888 44815000 */ mtc1 $at, $f10 -/* 03B48C 8003A88C 3C01447A */ li $at, 0x447A0000 # 1000.000000 -/* 03B490 8003A890 46025482 */ mul.s $f18, $f10, $f2 -/* 03B494 8003A894 44814000 */ mtc1 $at, $f8 -/* 03B498 8003A898 AFA20054 */ sw $v0, 0x54($sp) -/* 03B49C 8003A89C 2404000A */ li $a0, 10 -/* 03B4A0 8003A8A0 46089103 */ div.s $f4, $f18, $f8 -/* 03B4A4 8003A8A4 4449F800 */ cfc1 $t1, $31 -/* 03B4A8 8003A8A8 00000000 */ nop -/* 03B4AC 8003A8AC 35210003 */ ori $at, $t1, 3 -/* 03B4B0 8003A8B0 38210002 */ xori $at, $at, 2 -/* 03B4B4 8003A8B4 44C1F800 */ ctc1 $at, $31 -/* 03B4B8 8003A8B8 00000000 */ nop -/* 03B4BC 8003A8BC 460021A4 */ cvt.w.s $f6, $f4 -/* 03B4C0 8003A8C0 44033000 */ mfc1 $v1, $f6 -/* 03B4C4 8003A8C4 44C9F800 */ ctc1 $t1, $31 -/* 03B4C8 8003A8C8 306500FF */ andi $a1, $v1, 0xff -/* 03B4CC 8003A8CC AFA5003C */ sw $a1, 0x3c($sp) -/* 03B4D0 8003A8D0 0C00049A */ jal func_80001268 -/* 03B4D4 8003A8D4 AFA30048 */ sw $v1, 0x48($sp) -/* 03B4D8 8003A8D8 93A5003F */ lbu $a1, 0x3f($sp) -/* 03B4DC 8003A8DC 0C00049A */ jal func_80001268 -/* 03B4E0 8003A8E0 2404000B */ li $a0, 11 -/* 03B4E4 8003A8E4 93A5003F */ lbu $a1, 0x3f($sp) -/* 03B4E8 8003A8E8 0C00049A */ jal func_80001268 -/* 03B4EC 8003A8EC 2404000F */ li $a0, 15 -/* 03B4F0 8003A8F0 93A50057 */ lbu $a1, 0x57($sp) -/* 03B4F4 8003A8F4 2404000A */ li $a0, 10 -/* 03B4F8 8003A8F8 0C00046A */ jal func_800011A8 -/* 03B4FC 8003A8FC AFA5003C */ sw $a1, 0x3c($sp) -/* 03B500 8003A900 93A5003F */ lbu $a1, 0x3f($sp) -/* 03B504 8003A904 0C00046A */ jal func_800011A8 -/* 03B508 8003A908 2404000B */ li $a0, 11 -/* 03B50C 8003A90C 93A5003F */ lbu $a1, 0x3f($sp) -/* 03B510 8003A910 0C00046A */ jal func_800011A8 -/* 03B514 8003A914 2404000F */ li $a0, 15 -/* 03B518 8003A918 0C00045C */ jal func_80001170 -/* 03B51C 8003A91C 2404000A */ li $a0, 10 -/* 03B520 8003A920 0C00045C */ jal func_80001170 -/* 03B524 8003A924 2404000B */ li $a0, 11 -/* 03B528 8003A928 0C00045C */ jal func_80001170 -/* 03B52C 8003A92C 2404000F */ li $a0, 15 -/* 03B530 8003A930 8FAA0048 */ lw $t2, 0x48($sp) -/* 03B534 8003A934 240B007F */ li $t3, 127 -/* 03B538 8003A938 016A2823 */ subu $a1, $t3, $t2 -/* 03B53C 8003A93C 30AC00FF */ andi $t4, $a1, 0xff -/* 03B540 8003A940 01802825 */ move $a1, $t4 -/* 03B544 8003A944 0C00049A */ jal func_80001268 -/* 03B548 8003A948 24040003 */ li $a0, 3 -/* 03B54C 8003A94C 10000008 */ b .L8003A970 -/* 03B550 8003A950 82230036 */ lb $v1, 0x36($s1) -.L8003A954: -/* 03B554 8003A954 0C000445 */ jal func_80001114 -/* 03B558 8003A958 2404000A */ li $a0, 10 -/* 03B55C 8003A95C 0C000445 */ jal func_80001114 -/* 03B560 8003A960 2404000B */ li $a0, 11 -/* 03B564 8003A964 0C000445 */ jal func_80001114 -/* 03B568 8003A968 2404000F */ li $a0, 15 -.L8003A96C: -/* 03B56C 8003A96C 82230036 */ lb $v1, 0x36($s1) -.L8003A970: -/* 03B570 8003A970 8FA200B4 */ lw $v0, 0xb4($sp) -/* 03B574 8003A974 10600005 */ beqz $v1, .L8003A98C -/* 03B578 8003A978 24010001 */ li $at, 1 -/* 03B57C 8003A97C 10610039 */ beq $v1, $at, .L8003AA64 -/* 03B580 8003A980 00000000 */ nop -/* 03B584 8003A984 1000005A */ b .L8003AAF0 -/* 03B588 8003A988 00000000 */ nop -.L8003A98C: -/* 03B58C 8003A98C 96230034 */ lhu $v1, 0x34($s1) -/* 03B590 8003A990 000269C0 */ sll $t5, $v0, 7 -/* 03B594 8003A994 01A3082A */ slt $at, $t5, $v1 -/* 03B598 8003A998 1020000D */ beqz $at, .L8003A9D0 -/* 03B59C 8003A99C 2404000E */ li $a0, 14 -/* 03B5A0 8003A9A0 006D7023 */ subu $t6, $v1, $t5 -/* 03B5A4 8003A9A4 A62E0034 */ sh $t6, 0x34($s1) -/* 03B5A8 8003A9A8 0C00045C */ jal func_80001170 -/* 03B5AC 8003A9AC 2404000E */ li $a0, 14 -/* 03B5B0 8003A9B0 96250034 */ lhu $a1, 0x34($s1) -/* 03B5B4 8003A9B4 2404000E */ li $a0, 14 -/* 03B5B8 8003A9B8 00057A03 */ sra $t7, $a1, 8 -/* 03B5BC 8003A9BC 0C00049A */ jal func_80001268 -/* 03B5C0 8003A9C0 31E500FF */ andi $a1, $t7, 0xff -/* 03B5C4 8003A9C4 AE200030 */ sw $zero, 0x30($s1) -/* 03B5C8 8003A9C8 1000000C */ b .L8003A9FC -/* 03B5CC 8003A9CC 00001825 */ move $v1, $zero -.L8003A9D0: -/* 03B5D0 8003A9D0 0C000445 */ jal func_80001114 -/* 03B5D4 8003A9D4 A6200034 */ sh $zero, 0x34($s1) -/* 03B5D8 8003A9D8 8E230030 */ lw $v1, 0x30($s1) -/* 03B5DC 8003A9DC 24040258 */ li $a0, 600 -/* 03B5E0 8003A9E0 14600006 */ bnez $v1, .L8003A9FC -/* 03B5E4 8003A9E4 00000000 */ nop -/* 03B5E8 8003A9E8 0C01BE53 */ jal func_8006F94C -/* 03B5EC 8003A9EC 24050384 */ li $a1, 900 -/* 03B5F0 8003A9F0 AE220030 */ sw $v0, 0x30($s1) -/* 03B5F4 8003A9F4 AE20002C */ sw $zero, 0x2c($s1) -/* 03B5F8 8003A9F8 00401825 */ move $v1, $v0 -.L8003A9FC: -/* 03B5FC 8003A9FC 10600016 */ beqz $v1, .L8003AA58 -/* 03B600 8003AA00 00000000 */ nop -/* 03B604 8003AA04 0C000417 */ jal func_8000105C -/* 03B608 8003AA08 00000000 */ nop -/* 03B60C 8003AA0C 2401BFFF */ li $at, -16385 -/* 03B610 8003AA10 0041C824 */ and $t9, $v0, $at -/* 03B614 8003AA14 2401000B */ li $at, 11 -/* 03B618 8003AA18 1721000F */ bne $t9, $at, .L8003AA58 -/* 03B61C 8003AA1C 00000000 */ nop -/* 03B620 8003AA20 8E28002C */ lw $t0, 0x2c($s1) -/* 03B624 8003AA24 8FA900B4 */ lw $t1, 0xb4($sp) -/* 03B628 8003AA28 8E2A0030 */ lw $t2, 0x30($s1) -/* 03B62C 8003AA2C 01095821 */ addu $t3, $t0, $t1 -/* 03B630 8003AA30 014B082A */ slt $at, $t2, $t3 -/* 03B634 8003AA34 1020002E */ beqz $at, .L8003AAF0 -/* 03B638 8003AA38 AE2B002C */ sw $t3, 0x2c($s1) -/* 03B63C 8003AA3C 240D0001 */ li $t5, 1 -/* 03B640 8003AA40 A22D0036 */ sb $t5, 0x36($s1) -/* 03B644 8003AA44 24040258 */ li $a0, 600 -/* 03B648 8003AA48 0C01BE53 */ jal func_8006F94C -/* 03B64C 8003AA4C 24050384 */ li $a1, 900 -/* 03B650 8003AA50 10000027 */ b .L8003AAF0 -/* 03B654 8003AA54 AE22002C */ sw $v0, 0x2c($s1) -.L8003AA58: -/* 03B658 8003AA58 AE20002C */ sw $zero, 0x2c($s1) -/* 03B65C 8003AA5C 10000024 */ b .L8003AAF0 -/* 03B660 8003AA60 AE200030 */ sw $zero, 0x30($s1) -.L8003AA64: -/* 03B664 8003AA64 0C000417 */ jal func_8000105C -/* 03B668 8003AA68 00000000 */ nop -/* 03B66C 8003AA6C 2401BFFF */ li $at, -16385 -/* 03B670 8003AA70 00417024 */ and $t6, $v0, $at -/* 03B674 8003AA74 2401000B */ li $at, 11 -/* 03B678 8003AA78 15C1001A */ bne $t6, $at, .L8003AAE4 -/* 03B67C 8003AA7C 00000000 */ nop -/* 03B680 8003AA80 8FA200B4 */ lw $v0, 0xb4($sp) -/* 03B684 8003AA84 962F0034 */ lhu $t7, 0x34($s1) -/* 03B688 8003AA88 0002C1C0 */ sll $t8, $v0, 7 -/* 03B68C 8003AA8C 01F8C821 */ addu $t9, $t7, $t8 -/* 03B690 8003AA90 3328FFFF */ andi $t0, $t9, 0xffff -/* 03B694 8003AA94 29017F01 */ slti $at, $t0, 0x7f01 -/* 03B698 8003AA98 14200003 */ bnez $at, .L8003AAA8 -/* 03B69C 8003AA9C A6390034 */ sh $t9, 0x34($s1) -/* 03B6A0 8003AAA0 24097F00 */ li $t1, 32512 -/* 03B6A4 8003AAA4 A6290034 */ sh $t1, 0x34($s1) -.L8003AAA8: -/* 03B6A8 8003AAA8 8E2B002C */ lw $t3, 0x2c($s1) -/* 03B6AC 8003AAAC 00000000 */ nop -/* 03B6B0 8003AAB0 01625023 */ subu $t2, $t3, $v0 -/* 03B6B4 8003AAB4 05410002 */ bgez $t2, .L8003AAC0 -/* 03B6B8 8003AAB8 AE2A002C */ sw $t2, 0x2c($s1) -/* 03B6BC 8003AABC A2200036 */ sb $zero, 0x36($s1) -.L8003AAC0: -/* 03B6C0 8003AAC0 0C00045C */ jal func_80001170 -/* 03B6C4 8003AAC4 2404000E */ li $a0, 14 -/* 03B6C8 8003AAC8 96250034 */ lhu $a1, 0x34($s1) -/* 03B6CC 8003AACC 2404000E */ li $a0, 14 -/* 03B6D0 8003AAD0 00056A03 */ sra $t5, $a1, 8 -/* 03B6D4 8003AAD4 0C00049A */ jal func_80001268 -/* 03B6D8 8003AAD8 31A500FF */ andi $a1, $t5, 0xff -/* 03B6DC 8003AADC 10000004 */ b .L8003AAF0 -/* 03B6E0 8003AAE0 00000000 */ nop -.L8003AAE4: -/* 03B6E4 8003AAE4 A2200036 */ sb $zero, 0x36($s1) -/* 03B6E8 8003AAE8 AE20002C */ sw $zero, 0x2c($s1) -/* 03B6EC 8003AAEC AE200030 */ sw $zero, 0x30($s1) -.L8003AAF0: -/* 03B6F0 8003AAF0 0C000417 */ jal func_8000105C -/* 03B6F4 8003AAF4 00000000 */ nop -/* 03B6F8 8003AAF8 304FBFFF */ andi $t7, $v0, 0xbfff -/* 03B6FC 8003AAFC A62F0028 */ sh $t7, 0x28($s1) -.L8003AB00: -/* 03B700 8003AB00 C7B00098 */ lwc1 $f16, 0x98($sp) -.L8003AB04: -/* 03B704 8003AB04 8604002E */ lh $a0, 0x2e($s0) -/* 03B708 8003AB08 8E05000C */ lw $a1, 0xc($s0) -/* 03B70C 8003AB0C 8E060014 */ lw $a2, 0x14($s0) -/* 03B710 8003AB10 27A70094 */ addiu $a3, $sp, 0x94 -/* 03B714 8003AB14 0C00AC3D */ jal func_8002B0F4 -/* 03B718 8003AB18 E6100010 */ swc1 $f16, 0x10($s0) -/* 03B71C 8003AB1C 44800800 */ mtc1 $zero, $f1 -/* 03B720 8003AB20 44800000 */ mtc1 $zero, $f0 -/* 03B724 8003AB24 1040001C */ beqz $v0, .L8003AB98 -/* 03B728 8003AB28 2446FFFF */ addiu $a2, $v0, -1 -/* 03B72C 8003AB2C 04C0001A */ bltz $a2, .L8003AB98 -/* 03B730 8003AB30 00062080 */ sll $a0, $a2, 2 -/* 03B734 8003AB34 2406000B */ li $a2, 11 -/* 03B738 8003AB38 2405000E */ li $a1, 14 -/* 03B73C 8003AB3C 8FB80094 */ lw $t8, 0x94($sp) -.L8003AB40: -/* 03B740 8003AB40 00000000 */ nop -/* 03B744 8003AB44 0304C821 */ addu $t9, $t8, $a0 -/* 03B748 8003AB48 8F220000 */ lw $v0, ($t9) -/* 03B74C 8003AB4C 2484FFFC */ addiu $a0, $a0, -4 -/* 03B750 8003AB50 80430010 */ lb $v1, 0x10($v0) -/* 03B754 8003AB54 00000000 */ nop -/* 03B758 8003AB58 10C3000D */ beq $a2, $v1, .L8003AB90 -/* 03B75C 8003AB5C 00000000 */ nop -/* 03B760 8003AB60 10A3000B */ beq $a1, $v1, .L8003AB90 -/* 03B764 8003AB64 00000000 */ nop -/* 03B768 8003AB68 C44A0008 */ lwc1 $f10, 8($v0) -/* 03B76C 8003AB6C 00000000 */ nop -/* 03B770 8003AB70 460054A1 */ cvt.d.s $f18, $f10 -/* 03B774 8003AB74 4632003C */ c.lt.d $f0, $f18 -/* 03B778 8003AB78 00000000 */ nop -/* 03B77C 8003AB7C 45000004 */ bc1f .L8003AB90 -/* 03B780 8003AB80 00000000 */ nop -/* 03B784 8003AB84 C4480000 */ lwc1 $f8, ($v0) -/* 03B788 8003AB88 00000000 */ nop -/* 03B78C 8003AB8C E6080010 */ swc1 $f8, 0x10($s0) -.L8003AB90: -/* 03B790 8003AB90 0481FFEB */ bgez $a0, .L8003AB40 -/* 03B794 8003AB94 8FB80094 */ lw $t8, 0x94($sp) -.L8003AB98: -/* 03B798 8003AB98 8E080078 */ lw $t0, 0x78($s0) -/* 03B79C 8003AB9C A6000002 */ sh $zero, 2($s0) -/* 03B7A0 8003ABA0 11000004 */ beqz $t0, .L8003ABB4 -/* 03B7A4 8003ABA4 A6000004 */ sh $zero, 4($s0) -/* 03B7A8 8003ABA8 C6040010 */ lwc1 $f4, 0x10($s0) -/* 03B7AC 8003ABAC 3C018012 */ lui $at, %hi(D_8011D4D0) # $at, 0x8012 -/* 03B7B0 8003ABB0 E424D4D0 */ swc1 $f4, %lo(D_8011D4D0)($at) -.L8003ABB4: -/* 03B7B4 8003ABB4 83A9006B */ lb $t1, 0x6b($sp) -/* 03B7B8 8003ABB8 2407000C */ li $a3, 12 -/* 03B7BC 8003ABBC 11200009 */ beqz $t1, .L8003ABE4 -/* 03B7C0 8003ABC0 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 03B7C4 8003ABC4 C60C000C */ lwc1 $f12, 0xc($s0) -/* 03B7C8 8003ABC8 C60E0010 */ lwc1 $f14, 0x10($s0) -/* 03B7CC 8003ABCC 8E060014 */ lw $a2, 0x14($s0) -/* 03B7D0 8003ABD0 44813000 */ mtc1 $at, $f6 -/* 03B7D4 8003ABD4 AFA00018 */ sw $zero, 0x18($sp) -/* 03B7D8 8003ABD8 AFA00010 */ sw $zero, 0x10($sp) -/* 03B7DC 8003ABDC 0C00FF11 */ jal func_8003FC44 -/* 03B7E0 8003ABE0 E7A60014 */ swc1 $f6, 0x14($sp) -.L8003ABE4: -/* 03B7E4 8003ABE4 C6300004 */ lwc1 $f16, 4($s1) -/* 03B7E8 8003ABE8 02002025 */ move $a0, $s0 -/* 03B7EC 8003ABEC 460082A1 */ cvt.d.s $f10, $f16 -/* 03B7F0 8003ABF0 444BF800 */ cfc1 $t3, $31 -/* 03B7F4 8003ABF4 00000000 */ nop -/* 03B7F8 8003ABF8 35610003 */ ori $at, $t3, 3 -/* 03B7FC 8003ABFC 38210002 */ xori $at, $at, 2 -/* 03B800 8003AC00 44C1F800 */ ctc1 $at, $31 -/* 03B804 8003AC04 00000000 */ nop -/* 03B808 8003AC08 462054A4 */ cvt.w.d $f18, $f10 -/* 03B80C 8003AC0C 440A9000 */ mfc1 $t2, $f18 -/* 03B810 8003AC10 44CBF800 */ ctc1 $t3, $31 -/* 03B814 8003AC14 0C018703 */ jal func_80061C0C -/* 03B818 8003AC18 A60A0018 */ sh $t2, 0x18($s0) -/* 03B81C 8003AC1C 8FA500B4 */ lw $a1, 0xb4($sp) -/* 03B820 8003AC20 0C02BF0F */ jal func_800AFC3C -/* 03B824 8003AC24 02002025 */ move $a0, $s0 -/* 03B828 8003AC28 8FBF002C */ lw $ra, 0x2c($sp) -/* 03B82C 8003AC2C 8FB00024 */ lw $s0, 0x24($sp) -/* 03B830 8003AC30 8FB10028 */ lw $s1, 0x28($sp) -/* 03B834 8003AC34 03E00008 */ jr $ra -/* 03B838 8003AC38 27BD00B0 */ addiu $sp, $sp, 0xb0 - -glabel func_8003AC3C -/* 03B83C 8003AC3C 3C078012 */ lui $a3, %hi(D_8011D4D4) # $a3, 0x8012 -/* 03B840 8003AC40 24E7D4D4 */ addiu $a3, %lo(D_8011D4D4) # addiu $a3, $a3, -0x2b2c -/* 03B844 8003AC44 8CE60000 */ lw $a2, ($a3) -/* 03B848 8003AC48 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 03B84C 8003AC4C AFBF0014 */ sw $ra, 0x14($sp) -/* 03B850 8003AC50 10C0000A */ beqz $a2, .L8003AC7C -/* 03B854 8003AC54 AFA40018 */ sw $a0, 0x18($sp) -/* 03B858 8003AC58 30AE0001 */ andi $t6, $a1, 1 -/* 03B85C 8003AC5C 11C00007 */ beqz $t6, .L8003AC7C -/* 03B860 8003AC60 00000000 */ nop -/* 03B864 8003AC64 0C001223 */ jal func_8000488C -/* 03B868 8003AC68 00C02025 */ move $a0, $a2 -/* 03B86C 8003AC6C 3C078012 */ lui $a3, %hi(D_8011D4D4) # $a3, 0x8012 -/* 03B870 8003AC70 24E7D4D4 */ addiu $a3, %lo(D_8011D4D4) # addiu $a3, $a3, -0x2b2c -/* 03B874 8003AC74 ACE00000 */ sw $zero, ($a3) -/* 03B878 8003AC78 00003025 */ move $a2, $zero -.L8003AC7C: -/* 03B87C 8003AC7C 14C00005 */ bnez $a2, .L8003AC94 -/* 03B880 8003AC80 8FBF0014 */ lw $ra, 0x14($sp) -/* 03B884 8003AC84 97A4001A */ lhu $a0, 0x1a($sp) -/* 03B888 8003AC88 0C000741 */ jal func_80001D04 -/* 03B88C 8003AC8C 00E02825 */ move $a1, $a3 -/* 03B890 8003AC90 8FBF0014 */ lw $ra, 0x14($sp) -.L8003AC94: -/* 03B894 8003AC94 27BD0018 */ addiu $sp, $sp, 0x18 -/* 03B898 8003AC98 03E00008 */ jr $ra -/* 03B89C 8003AC9C 00000000 */ nop - -glabel func_8003ACA0 -/* 03B8A0 8003ACA0 AFA40000 */ sw $a0, ($sp) -/* 03B8A4 8003ACA4 03E00008 */ jr $ra -/* 03B8A8 8003ACA8 AFA50004 */ sw $a1, 4($sp) - -glabel func_8003ACAC -/* 03B8AC 8003ACAC 3C018012 */ lui $at, %hi(D_8011D4D0) # $at, 0x8012 -/* 03B8B0 8003ACB0 C420D4D0 */ lwc1 $f0, %lo(D_8011D4D0)($at) -/* 03B8B4 8003ACB4 03E00008 */ jr $ra -/* 03B8B8 8003ACB8 00000000 */ nop - -glabel func_8003ACBC -/* 03B8BC 8003ACBC 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 03B8C0 8003ACC0 AFBF0014 */ sw $ra, 0x14($sp) -/* 03B8C4 8003ACC4 AFA60020 */ sw $a2, 0x20($sp) -/* 03B8C8 8003ACC8 90AF0008 */ lbu $t7, 8($a1) -/* 03B8CC 8003ACCC 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 03B8D0 8003ACD0 448F2000 */ mtc1 $t7, $f4 -/* 03B8D4 8003ACD4 44811000 */ mtc1 $at, $f2 -/* 03B8D8 8003ACD8 46802020 */ cvt.s.w $f0, $f4 -/* 03B8DC 8003ACDC 3C014280 */ li $at, 0x42800000 # 64.000000 -/* 03B8E0 8003ACE0 44813000 */ mtc1 $at, $f6 -/* 03B8E4 8003ACE4 4602003C */ c.lt.s $f0, $f2 -/* 03B8E8 8003ACE8 00000000 */ nop -/* 03B8EC 8003ACEC 45000003 */ bc1f .L8003ACFC -/* 03B8F0 8003ACF0 00000000 */ nop -/* 03B8F4 8003ACF4 46001006 */ mov.s $f0, $f2 -/* 03B8F8 8003ACF8 00000000 */ nop -.L8003ACFC: -/* 03B8FC 8003ACFC 46060003 */ div.s $f0, $f0, $f6 -/* 03B900 8003AD00 E4800008 */ swc1 $f0, 8($a0) -/* 03B904 8003AD04 90B9000A */ lbu $t9, 0xa($a1) -/* 03B908 8003AD08 00000000 */ nop -/* 03B90C 8003AD0C 00194280 */ sll $t0, $t9, 0xa -/* 03B910 8003AD10 0C0044E4 */ jal func_80011390 -/* 03B914 8003AD14 A4880000 */ sh $t0, ($a0) -/* 03B918 8003AD18 8FBF0014 */ lw $ra, 0x14($sp) -/* 03B91C 8003AD1C 27BD0018 */ addiu $sp, $sp, 0x18 -/* 03B920 8003AD20 03E00008 */ jr $ra -/* 03B924 8003AD24 00000000 */ nop - -glabel func_8003AD28 -/* 03B928 8003AD28 AFA40000 */ sw $a0, ($sp) -/* 03B92C 8003AD2C 03E00008 */ jr $ra -/* 03B930 8003AD30 AFA50004 */ sw $a1, 4($sp) - -glabel func_8003AD34 -/* 03B934 8003AD34 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 03B938 8003AD38 AFBF0014 */ sw $ra, 0x14($sp) -/* 03B93C 8003AD3C 90AF0008 */ lbu $t7, 8($a1) -/* 03B940 8003AD40 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 03B944 8003AD44 448F2000 */ mtc1 $t7, $f4 -/* 03B948 8003AD48 44811000 */ mtc1 $at, $f2 -/* 03B94C 8003AD4C 46802020 */ cvt.s.w $f0, $f4 -/* 03B950 8003AD50 3C014300 */ li $at, 0x43000000 # 128.000000 -/* 03B954 8003AD54 44813000 */ mtc1 $at, $f6 -/* 03B958 8003AD58 4602003C */ c.lt.s $f0, $f2 -/* 03B95C 8003AD5C 00803025 */ move $a2, $a0 -/* 03B960 8003AD60 45000003 */ bc1f .L8003AD70 -/* 03B964 8003AD64 00000000 */ nop -/* 03B968 8003AD68 46001006 */ mov.s $f0, $f2 -/* 03B96C 8003AD6C 00000000 */ nop -.L8003AD70: -/* 03B970 8003AD70 46060003 */ div.s $f0, $f0, $f6 -/* 03B974 8003AD74 8CC20064 */ lw $v0, 0x64($a2) -/* 03B978 8003AD78 E4C00008 */ swc1 $f0, 8($a2) -/* 03B97C 8003AD7C 90B90009 */ lbu $t9, 9($a1) -/* 03B980 8003AD80 00000000 */ nop -/* 03B984 8003AD84 00194280 */ sll $t0, $t9, 0xa -/* 03B988 8003AD88 A4C80000 */ sh $t0, ($a2) -/* 03B98C 8003AD8C 84C40000 */ lh $a0, ($a2) -/* 03B990 8003AD90 AFA60020 */ sw $a2, 0x20($sp) -/* 03B994 8003AD94 AFA50024 */ sw $a1, 0x24($sp) -/* 03B998 8003AD98 0C01C1F1 */ jal func_800707C4 -/* 03B99C 8003AD9C AFA20018 */ sw $v0, 0x18($sp) -/* 03B9A0 8003ADA0 8FA20018 */ lw $v0, 0x18($sp) -/* 03B9A4 8003ADA4 8FA60020 */ lw $a2, 0x20($sp) -/* 03B9A8 8003ADA8 44804000 */ mtc1 $zero, $f8 -/* 03B9AC 8003ADAC E4400000 */ swc1 $f0, ($v0) -/* 03B9B0 8003ADB0 E4480004 */ swc1 $f8, 4($v0) -/* 03B9B4 8003ADB4 84C40000 */ lh $a0, ($a2) -/* 03B9B8 8003ADB8 0C01C1FE */ jal func_800707F8 -/* 03B9BC 8003ADBC 00000000 */ nop -/* 03B9C0 8003ADC0 8FA20018 */ lw $v0, 0x18($sp) -/* 03B9C4 8003ADC4 8FA60020 */ lw $a2, 0x20($sp) -/* 03B9C8 8003ADC8 8FA50024 */ lw $a1, 0x24($sp) -/* 03B9CC 8003ADCC E4400008 */ swc1 $f0, 8($v0) -/* 03B9D0 8003ADD0 C44A0000 */ lwc1 $f10, ($v0) -/* 03B9D4 8003ADD4 C4D0000C */ lwc1 $f16, 0xc($a2) -/* 03B9D8 8003ADD8 C4C40014 */ lwc1 $f4, 0x14($a2) -/* 03B9DC 8003ADDC 46105482 */ mul.s $f18, $f10, $f16 -/* 03B9E0 8003ADE0 240B0002 */ li $t3, 2 -/* 03B9E4 8003ADE4 46040182 */ mul.s $f6, $f0, $f4 -/* 03B9E8 8003ADE8 46069200 */ add.s $f8, $f18, $f6 -/* 03B9EC 8003ADEC 46004287 */ neg.s $f10, $f8 -/* 03B9F0 8003ADF0 E44A000C */ swc1 $f10, 0xc($v0) -/* 03B9F4 8003ADF4 90A90008 */ lbu $t1, 8($a1) -/* 03B9F8 8003ADF8 00000000 */ nop -/* 03B9FC 8003ADFC AC490010 */ sw $t1, 0x10($v0) -/* 03BA00 8003AE00 90AA000A */ lbu $t2, 0xa($a1) -/* 03BA04 8003AE04 00000000 */ nop -/* 03BA08 8003AE08 A04A0014 */ sb $t2, 0x14($v0) -/* 03BA0C 8003AE0C 8CCC004C */ lw $t4, 0x4c($a2) -/* 03BA10 8003AE10 00000000 */ nop -/* 03BA14 8003AE14 A58B0014 */ sh $t3, 0x14($t4) -/* 03BA18 8003AE18 8CCD004C */ lw $t5, 0x4c($a2) -/* 03BA1C 8003AE1C 00000000 */ nop -/* 03BA20 8003AE20 A1A00011 */ sb $zero, 0x11($t5) -/* 03BA24 8003AE24 8CCF004C */ lw $t7, 0x4c($a2) -/* 03BA28 8003AE28 90AE0008 */ lbu $t6, 8($a1) -/* 03BA2C 8003AE2C 00000000 */ nop -/* 03BA30 8003AE30 A1EE0010 */ sb $t6, 0x10($t7) -/* 03BA34 8003AE34 8CD8004C */ lw $t8, 0x4c($a2) -/* 03BA38 8003AE38 00000000 */ nop -/* 03BA3C 8003AE3C A3000012 */ sb $zero, 0x12($t8) -/* 03BA40 8003AE40 8FBF0014 */ lw $ra, 0x14($sp) -/* 03BA44 8003AE44 27BD0020 */ addiu $sp, $sp, 0x20 -/* 03BA48 8003AE48 03E00008 */ jr $ra -/* 03BA4C 8003AE4C 00000000 */ nop - -glabel func_8003AE50 -/* 03BA50 8003AE50 27BDFF80 */ addiu $sp, $sp, -0x80 -/* 03BA54 8003AE54 AFBF0044 */ sw $ra, 0x44($sp) -/* 03BA58 8003AE58 AFB70040 */ sw $s7, 0x40($sp) -/* 03BA5C 8003AE5C AFB6003C */ sw $s6, 0x3c($sp) -/* 03BA60 8003AE60 AFB50038 */ sw $s5, 0x38($sp) -/* 03BA64 8003AE64 AFB40034 */ sw $s4, 0x34($sp) -/* 03BA68 8003AE68 AFB30030 */ sw $s3, 0x30($sp) -/* 03BA6C 8003AE6C AFB2002C */ sw $s2, 0x2c($sp) -/* 03BA70 8003AE70 AFB10028 */ sw $s1, 0x28($sp) -/* 03BA74 8003AE74 AFB00024 */ sw $s0, 0x24($sp) -/* 03BA78 8003AE78 E7B70018 */ swc1 $f23, 0x18($sp) -/* 03BA7C 8003AE7C E7B6001C */ swc1 $f22, 0x1c($sp) -/* 03BA80 8003AE80 E7B50010 */ swc1 $f21, 0x10($sp) -/* 03BA84 8003AE84 E7B40014 */ swc1 $f20, 0x14($sp) -/* 03BA88 8003AE88 AFA50084 */ sw $a1, 0x84($sp) -/* 03BA8C 8003AE8C 8C920064 */ lw $s2, 0x64($a0) -/* 03BA90 8003AE90 8C8E004C */ lw $t6, 0x4c($a0) -/* 03BA94 8003AE94 8E420010 */ lw $v0, 0x10($s2) -/* 03BA98 8003AE98 91CF0013 */ lbu $t7, 0x13($t6) -/* 03BA9C 8003AE9C 00809825 */ move $s3, $a0 -/* 03BAA0 8003AEA0 01E2082A */ slt $at, $t7, $v0 -/* 03BAA4 8003AEA4 1020005D */ beqz $at, .L8003B01C -/* 03BAA8 8003AEA8 27A40074 */ addiu $a0, $sp, 0x74 -/* 03BAAC 8003AEAC 44822000 */ mtc1 $v0, $f4 -/* 03BAB0 8003AEB0 0C006E9D */ jal func_8001BA74 -/* 03BAB4 8003AEB4 468025A0 */ cvt.s.w $f22, $f4 -/* 03BAB8 8003AEB8 8FB80074 */ lw $t8, 0x74($sp) -/* 03BABC 8003AEBC 0000A025 */ move $s4, $zero -/* 03BAC0 8003AEC0 1B000056 */ blez $t8, .L8003B01C -/* 03BAC4 8003AEC4 0040A825 */ move $s5, $v0 -/* 03BAC8 8003AEC8 4480A000 */ mtc1 $zero, $f20 -/* 03BACC 8003AECC 241700FF */ li $s7, 255 -/* 03BAD0 8003AED0 24160004 */ li $s6, 4 -.L8003AED4: -/* 03BAD4 8003AED4 8EB00000 */ lw $s0, ($s5) -/* 03BAD8 8003AED8 92590014 */ lbu $t9, 0x14($s2) -/* 03BADC 8003AEDC 8E110064 */ lw $s1, 0x64($s0) -/* 03BAE0 8003AEE0 00000000 */ nop -/* 03BAE4 8003AEE4 822801D6 */ lb $t0, 0x1d6($s1) -/* 03BAE8 8003AEE8 00000000 */ nop -/* 03BAEC 8003AEEC 13280047 */ beq $t9, $t0, .L8003B00C -/* 03BAF0 8003AEF0 8FAD0074 */ lw $t5, 0x74($sp) -/* 03BAF4 8003AEF4 C606000C */ lwc1 $f6, 0xc($s0) -/* 03BAF8 8003AEF8 C668000C */ lwc1 $f8, 0xc($s3) -/* 03BAFC 8003AEFC C60A0010 */ lwc1 $f10, 0x10($s0) -/* 03BB00 8003AF00 46083001 */ sub.s $f0, $f6, $f8 -/* 03BB04 8003AF04 C6700010 */ lwc1 $f16, 0x10($s3) -/* 03BB08 8003AF08 46000182 */ mul.s $f6, $f0, $f0 -/* 03BB0C 8003AF0C 46105081 */ sub.s $f2, $f10, $f16 -/* 03BB10 8003AF10 C6120014 */ lwc1 $f18, 0x14($s0) -/* 03BB14 8003AF14 C6640014 */ lwc1 $f4, 0x14($s3) -/* 03BB18 8003AF18 46021202 */ mul.s $f8, $f2, $f2 -/* 03BB1C 8003AF1C 46049381 */ sub.s $f14, $f18, $f4 -/* 03BB20 8003AF20 460E7402 */ mul.s $f16, $f14, $f14 -/* 03BB24 8003AF24 46083280 */ add.s $f10, $f6, $f8 -/* 03BB28 8003AF28 0C0326B4 */ jal sqrtf -/* 03BB2C 8003AF2C 46105300 */ add.s $f12, $f10, $f16 -/* 03BB30 8003AF30 4616003C */ c.lt.s $f0, $f22 -/* 03BB34 8003AF34 00000000 */ nop -/* 03BB38 8003AF38 45000034 */ bc1f .L8003B00C -/* 03BB3C 8003AF3C 8FAD0074 */ lw $t5, 0x74($sp) -/* 03BB40 8003AF40 C6520000 */ lwc1 $f18, ($s2) -/* 03BB44 8003AF44 C604000C */ lwc1 $f4, 0xc($s0) -/* 03BB48 8003AF48 C6480008 */ lwc1 $f8, 8($s2) -/* 03BB4C 8003AF4C 46049182 */ mul.s $f6, $f18, $f4 -/* 03BB50 8003AF50 C60A0014 */ lwc1 $f10, 0x14($s0) -/* 03BB54 8003AF54 C644000C */ lwc1 $f4, 0xc($s2) -/* 03BB58 8003AF58 460A4402 */ mul.s $f16, $f8, $f10 -/* 03BB5C 8003AF5C 46103480 */ add.s $f18, $f6, $f16 -/* 03BB60 8003AF60 46049000 */ add.s $f0, $f18, $f4 -/* 03BB64 8003AF64 4614003C */ c.lt.s $f0, $f20 -/* 03BB68 8003AF68 00000000 */ nop -/* 03BB6C 8003AF6C 45000027 */ bc1f .L8003B00C -/* 03BB70 8003AF70 8FAD0074 */ lw $t5, 0x74($sp) -/* 03BB74 8003AF74 A22001E0 */ sb $zero, 0x1e0($s1) -/* 03BB78 8003AF78 92420014 */ lbu $v0, 0x14($s2) -/* 03BB7C 8003AF7C 00000000 */ nop -/* 03BB80 8003AF80 14400004 */ bnez $v0, .L8003AF94 -/* 03BB84 8003AF84 00000000 */ nop -/* 03BB88 8003AF88 822901D7 */ lb $t1, 0x1d7($s1) -/* 03BB8C 8003AF8C 10000002 */ b .L8003AF98 -/* 03BB90 8003AF90 A22901D6 */ sb $t1, 0x1d6($s1) -.L8003AF94: -/* 03BB94 8003AF94 A22201D6 */ sb $v0, 0x1d6($s1) -.L8003AF98: -/* 03BB98 8003AF98 924A0014 */ lbu $t2, 0x14($s2) -/* 03BB9C 8003AF9C 00000000 */ nop -/* 03BBA0 8003AFA0 16CA0016 */ bne $s6, $t2, .L8003AFFC -/* 03BBA4 8003AFA4 00000000 */ nop -/* 03BBA8 8003AFA8 822B01D8 */ lb $t3, 0x1d8($s1) -/* 03BBAC 8003AFAC 00000000 */ nop -/* 03BBB0 8003AFB0 15600004 */ bnez $t3, .L8003AFC4 -/* 03BBB4 8003AFB4 00000000 */ nop -/* 03BBB8 8003AFB8 86240000 */ lh $a0, ($s1) -/* 03BBBC 8003AFBC 0C01C8D2 */ jal func_80072348 -/* 03BBC0 8003AFC0 24050008 */ li $a1, 8 -.L8003AFC4: -/* 03BBC4 8003AFC4 C60C000C */ lwc1 $f12, 0xc($s0) -/* 03BBC8 8003AFC8 C60E0010 */ lwc1 $f14, 0x10($s0) -/* 03BBCC 8003AFCC 8E060014 */ lw $a2, 0x14($s0) -/* 03BBD0 8003AFD0 0C007149 */ jal func_8001C524 -/* 03BBD4 8003AFD4 00003825 */ move $a3, $zero -/* 03BBD8 8003AFD8 10570005 */ beq $v0, $s7, .L8003AFF0 -/* 03BBDC 8003AFDC 00402025 */ move $a0, $v0 -/* 03BBE0 8003AFE0 0C007485 */ jal func_8001D214 -/* 03BBE4 8003AFE4 00000000 */ nop -/* 03BBE8 8003AFE8 10000002 */ b .L8003AFF4 -/* 03BBEC 8003AFEC AE220158 */ sw $v0, 0x158($s1) -.L8003AFF0: -/* 03BBF0 8003AFF0 AE200158 */ sw $zero, 0x158($s1) -.L8003AFF4: -/* 03BBF4 8003AFF4 AE20015C */ sw $zero, 0x15c($s1) -/* 03BBF8 8003AFF8 A620019A */ sh $zero, 0x19a($s1) -.L8003AFFC: -/* 03BBFC 8003AFFC 866C0000 */ lh $t4, ($s3) -/* 03BC00 8003B000 00000000 */ nop -/* 03BC04 8003B004 A62C0198 */ sh $t4, 0x198($s1) -/* 03BC08 8003B008 8FAD0074 */ lw $t5, 0x74($sp) -.L8003B00C: -/* 03BC0C 8003B00C 26940001 */ addiu $s4, $s4, 1 -/* 03BC10 8003B010 028D082A */ slt $at, $s4, $t5 -/* 03BC14 8003B014 1420FFAF */ bnez $at, .L8003AED4 -/* 03BC18 8003B018 26B50004 */ addiu $s5, $s5, 4 -.L8003B01C: -/* 03BC1C 8003B01C 8FBF0044 */ lw $ra, 0x44($sp) -/* 03BC20 8003B020 C7B50010 */ lwc1 $f21, 0x10($sp) -/* 03BC24 8003B024 C7B40014 */ lwc1 $f20, 0x14($sp) -/* 03BC28 8003B028 C7B70018 */ lwc1 $f23, 0x18($sp) -/* 03BC2C 8003B02C C7B6001C */ lwc1 $f22, 0x1c($sp) -/* 03BC30 8003B030 8FB00024 */ lw $s0, 0x24($sp) -/* 03BC34 8003B034 8FB10028 */ lw $s1, 0x28($sp) -/* 03BC38 8003B038 8FB2002C */ lw $s2, 0x2c($sp) -/* 03BC3C 8003B03C 8FB30030 */ lw $s3, 0x30($sp) -/* 03BC40 8003B040 8FB40034 */ lw $s4, 0x34($sp) -/* 03BC44 8003B044 8FB50038 */ lw $s5, 0x38($sp) -/* 03BC48 8003B048 8FB6003C */ lw $s6, 0x3c($sp) -/* 03BC4C 8003B04C 8FB70040 */ lw $s7, 0x40($sp) -/* 03BC50 8003B050 03E00008 */ jr $ra -/* 03BC54 8003B054 27BD0080 */ addiu $sp, $sp, 0x80 - -glabel func_8003B058 -/* 03BC58 8003B058 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 03BC5C 8003B05C AFBF0014 */ sw $ra, 0x14($sp) -/* 03BC60 8003B060 90AF0008 */ lbu $t7, 8($a1) -/* 03BC64 8003B064 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 03BC68 8003B068 448F2000 */ mtc1 $t7, $f4 -/* 03BC6C 8003B06C 44811000 */ mtc1 $at, $f2 -/* 03BC70 8003B070 46802020 */ cvt.s.w $f0, $f4 -/* 03BC74 8003B074 3C014300 */ li $at, 0x43000000 # 128.000000 -/* 03BC78 8003B078 44813000 */ mtc1 $at, $f6 -/* 03BC7C 8003B07C 4602003C */ c.lt.s $f0, $f2 -/* 03BC80 8003B080 00803025 */ move $a2, $a0 -/* 03BC84 8003B084 45000003 */ bc1f .L8003B094 -/* 03BC88 8003B088 00000000 */ nop -/* 03BC8C 8003B08C 46001006 */ mov.s $f0, $f2 -/* 03BC90 8003B090 00000000 */ nop -.L8003B094: -/* 03BC94 8003B094 46060003 */ div.s $f0, $f0, $f6 -/* 03BC98 8003B098 8CC20064 */ lw $v0, 0x64($a2) -/* 03BC9C 8003B09C E4C00008 */ swc1 $f0, 8($a2) -/* 03BCA0 8003B0A0 90B90009 */ lbu $t9, 9($a1) -/* 03BCA4 8003B0A4 00000000 */ nop -/* 03BCA8 8003B0A8 00194280 */ sll $t0, $t9, 0xa -/* 03BCAC 8003B0AC A4C80000 */ sh $t0, ($a2) -/* 03BCB0 8003B0B0 84C40000 */ lh $a0, ($a2) -/* 03BCB4 8003B0B4 AFA60020 */ sw $a2, 0x20($sp) -/* 03BCB8 8003B0B8 AFA50024 */ sw $a1, 0x24($sp) -/* 03BCBC 8003B0BC 0C01C1F1 */ jal func_800707C4 -/* 03BCC0 8003B0C0 AFA20018 */ sw $v0, 0x18($sp) -/* 03BCC4 8003B0C4 8FA20018 */ lw $v0, 0x18($sp) -/* 03BCC8 8003B0C8 8FA60020 */ lw $a2, 0x20($sp) -/* 03BCCC 8003B0CC 44804000 */ mtc1 $zero, $f8 -/* 03BCD0 8003B0D0 E4400000 */ swc1 $f0, ($v0) -/* 03BCD4 8003B0D4 E4480004 */ swc1 $f8, 4($v0) -/* 03BCD8 8003B0D8 84C40000 */ lh $a0, ($a2) -/* 03BCDC 8003B0DC 0C01C1FE */ jal func_800707F8 -/* 03BCE0 8003B0E0 00000000 */ nop -/* 03BCE4 8003B0E4 8FA20018 */ lw $v0, 0x18($sp) -/* 03BCE8 8003B0E8 8FA60020 */ lw $a2, 0x20($sp) -/* 03BCEC 8003B0EC 8FA50024 */ lw $a1, 0x24($sp) -/* 03BCF0 8003B0F0 E4400008 */ swc1 $f0, 8($v0) -/* 03BCF4 8003B0F4 C44A0000 */ lwc1 $f10, ($v0) -/* 03BCF8 8003B0F8 C4D0000C */ lwc1 $f16, 0xc($a2) -/* 03BCFC 8003B0FC C4C40014 */ lwc1 $f4, 0x14($a2) -/* 03BD00 8003B100 46105482 */ mul.s $f18, $f10, $f16 -/* 03BD04 8003B104 240B0002 */ li $t3, 2 -/* 03BD08 8003B108 46040182 */ mul.s $f6, $f0, $f4 -/* 03BD0C 8003B10C 46069200 */ add.s $f8, $f18, $f6 -/* 03BD10 8003B110 46004287 */ neg.s $f10, $f8 -/* 03BD14 8003B114 E44A000C */ swc1 $f10, 0xc($v0) -/* 03BD18 8003B118 90A90008 */ lbu $t1, 8($a1) -/* 03BD1C 8003B11C 00000000 */ nop -/* 03BD20 8003B120 AC490010 */ sw $t1, 0x10($v0) -/* 03BD24 8003B124 90AA000A */ lbu $t2, 0xa($a1) -/* 03BD28 8003B128 00000000 */ nop -/* 03BD2C 8003B12C A04A0014 */ sb $t2, 0x14($v0) -/* 03BD30 8003B130 8CCC004C */ lw $t4, 0x4c($a2) -/* 03BD34 8003B134 00000000 */ nop -/* 03BD38 8003B138 A58B0014 */ sh $t3, 0x14($t4) -/* 03BD3C 8003B13C 8CCD004C */ lw $t5, 0x4c($a2) -/* 03BD40 8003B140 00000000 */ nop -/* 03BD44 8003B144 A1A00011 */ sb $zero, 0x11($t5) -/* 03BD48 8003B148 8CCF004C */ lw $t7, 0x4c($a2) -/* 03BD4C 8003B14C 90AE0008 */ lbu $t6, 8($a1) -/* 03BD50 8003B150 00000000 */ nop -/* 03BD54 8003B154 A1EE0010 */ sb $t6, 0x10($t7) -/* 03BD58 8003B158 8CD8004C */ lw $t8, 0x4c($a2) -/* 03BD5C 8003B15C 00000000 */ nop -/* 03BD60 8003B160 A3000012 */ sb $zero, 0x12($t8) -/* 03BD64 8003B164 8FBF0014 */ lw $ra, 0x14($sp) -/* 03BD68 8003B168 27BD0020 */ addiu $sp, $sp, 0x20 -/* 03BD6C 8003B16C 03E00008 */ jr $ra -/* 03BD70 8003B170 00000000 */ nop - -glabel func_8003B174 -/* 03BD74 8003B174 27BDFF70 */ addiu $sp, $sp, -0x90 -/* 03BD78 8003B178 AFBF0054 */ sw $ra, 0x54($sp) -/* 03BD7C 8003B17C AFB60050 */ sw $s6, 0x50($sp) -/* 03BD80 8003B180 AFB5004C */ sw $s5, 0x4c($sp) -/* 03BD84 8003B184 AFB40048 */ sw $s4, 0x48($sp) -/* 03BD88 8003B188 AFB30044 */ sw $s3, 0x44($sp) -/* 03BD8C 8003B18C AFB20040 */ sw $s2, 0x40($sp) -/* 03BD90 8003B190 AFB1003C */ sw $s1, 0x3c($sp) -/* 03BD94 8003B194 AFB00038 */ sw $s0, 0x38($sp) -/* 03BD98 8003B198 E7B90030 */ swc1 $f25, 0x30($sp) -/* 03BD9C 8003B19C E7B80034 */ swc1 $f24, 0x34($sp) -/* 03BDA0 8003B1A0 E7B70028 */ swc1 $f23, 0x28($sp) -/* 03BDA4 8003B1A4 E7B6002C */ swc1 $f22, 0x2c($sp) -/* 03BDA8 8003B1A8 E7B50020 */ swc1 $f21, 0x20($sp) -/* 03BDAC 8003B1AC E7B40024 */ swc1 $f20, 0x24($sp) -/* 03BDB0 8003B1B0 AFA50094 */ sw $a1, 0x94($sp) -/* 03BDB4 8003B1B4 8C940064 */ lw $s4, 0x64($a0) -/* 03BDB8 8003B1B8 8C8E004C */ lw $t6, 0x4c($a0) -/* 03BDBC 8003B1BC 8E820010 */ lw $v0, 0x10($s4) -/* 03BDC0 8003B1C0 91CF0013 */ lbu $t7, 0x13($t6) -/* 03BDC4 8003B1C4 0080A825 */ move $s5, $a0 -/* 03BDC8 8003B1C8 01E2082A */ slt $at, $t7, $v0 -/* 03BDCC 8003B1CC 10200056 */ beqz $at, .L8003B328 -/* 03BDD0 8003B1D0 27A40084 */ addiu $a0, $sp, 0x84 -/* 03BDD4 8003B1D4 44822000 */ mtc1 $v0, $f4 -/* 03BDD8 8003B1D8 0C006E9D */ jal func_8001BA74 -/* 03BDDC 8003B1DC 468025A0 */ cvt.s.w $f22, $f4 -/* 03BDE0 8003B1E0 8FB80084 */ lw $t8, 0x84($sp) -/* 03BDE4 8003B1E4 00009025 */ move $s2, $zero -/* 03BDE8 8003B1E8 1B00004F */ blez $t8, .L8003B328 -/* 03BDEC 8003B1EC 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 03BDF0 8003B1F0 44814800 */ mtc1 $at, $f9 -/* 03BDF4 8003B1F4 44804000 */ mtc1 $zero, $f8 -/* 03BDF8 8003B1F8 4600B1A1 */ cvt.d.s $f6, $f22 -/* 03BDFC 8003B1FC 46283282 */ mul.d $f10, $f6, $f8 -/* 03BE00 8003B200 4480C000 */ mtc1 $zero, $f24 -/* 03BE04 8003B204 00409825 */ move $s3, $v0 -/* 03BE08 8003B208 2416000A */ li $s6, 10 -/* 03BE0C 8003B20C 46205520 */ cvt.s.d $f20, $f10 -.L8003B210: -/* 03BE10 8003B210 8E700000 */ lw $s0, ($s3) -/* 03BE14 8003B214 C6B20010 */ lwc1 $f18, 0x10($s5) -/* 03BE18 8003B218 C6100010 */ lwc1 $f16, 0x10($s0) -/* 03BE1C 8003B21C 8E110064 */ lw $s1, 0x64($s0) -/* 03BE20 8003B220 46128381 */ sub.s $f14, $f16, $f18 -/* 03BE24 8003B224 4614703C */ c.lt.s $f14, $f20 -/* 03BE28 8003B228 00000000 */ nop -/* 03BE2C 8003B22C 4500003A */ bc1f .L8003B318 -/* 03BE30 8003B230 8FAA0084 */ lw $t2, 0x84($sp) -/* 03BE34 8003B234 4600A107 */ neg.s $f4, $f20 -/* 03BE38 8003B238 460E203C */ c.lt.s $f4, $f14 -/* 03BE3C 8003B23C 00000000 */ nop -/* 03BE40 8003B240 45000035 */ bc1f .L8003B318 -/* 03BE44 8003B244 8FAA0084 */ lw $t2, 0x84($sp) -/* 03BE48 8003B248 C606000C */ lwc1 $f6, 0xc($s0) -/* 03BE4C 8003B24C C6A8000C */ lwc1 $f8, 0xc($s5) -/* 03BE50 8003B250 C60A0014 */ lwc1 $f10, 0x14($s0) -/* 03BE54 8003B254 46083001 */ sub.s $f0, $f6, $f8 -/* 03BE58 8003B258 C6B00014 */ lwc1 $f16, 0x14($s5) -/* 03BE5C 8003B25C 46000482 */ mul.s $f18, $f0, $f0 -/* 03BE60 8003B260 46105081 */ sub.s $f2, $f10, $f16 -/* 03BE64 8003B264 460E7102 */ mul.s $f4, $f14, $f14 -/* 03BE68 8003B268 00000000 */ nop -/* 03BE6C 8003B26C 46021202 */ mul.s $f8, $f2, $f2 -/* 03BE70 8003B270 46049180 */ add.s $f6, $f18, $f4 -/* 03BE74 8003B274 0C0326B4 */ jal sqrtf -/* 03BE78 8003B278 46083300 */ add.s $f12, $f6, $f8 -/* 03BE7C 8003B27C 4616003C */ c.lt.s $f0, $f22 -/* 03BE80 8003B280 00000000 */ nop -/* 03BE84 8003B284 45000024 */ bc1f .L8003B318 -/* 03BE88 8003B288 8FAA0084 */ lw $t2, 0x84($sp) -/* 03BE8C 8003B28C C68A0000 */ lwc1 $f10, ($s4) -/* 03BE90 8003B290 C610000C */ lwc1 $f16, 0xc($s0) -/* 03BE94 8003B294 C6840008 */ lwc1 $f4, 8($s4) -/* 03BE98 8003B298 46105482 */ mul.s $f18, $f10, $f16 -/* 03BE9C 8003B29C C6060014 */ lwc1 $f6, 0x14($s0) -/* 03BEA0 8003B2A0 C690000C */ lwc1 $f16, 0xc($s4) -/* 03BEA4 8003B2A4 46062202 */ mul.s $f8, $f4, $f6 -/* 03BEA8 8003B2A8 46089280 */ add.s $f10, $f18, $f8 -/* 03BEAC 8003B2AC 46105000 */ add.s $f0, $f10, $f16 -/* 03BEB0 8003B2B0 4618003C */ c.lt.s $f0, $f24 -/* 03BEB4 8003B2B4 00000000 */ nop -/* 03BEB8 8003B2B8 45000017 */ bc1f .L8003B318 -/* 03BEBC 8003B2BC 8FAA0084 */ lw $t2, 0x84($sp) -/* 03BEC0 8003B2C0 82390185 */ lb $t9, 0x185($s1) -/* 03BEC4 8003B2C4 24040022 */ li $a0, 34 -/* 03BEC8 8003B2C8 2B21000A */ slti $at, $t9, 0xa -/* 03BECC 8003B2CC 10200011 */ beqz $at, .L8003B314 -/* 03BED0 8003B2D0 24080004 */ li $t0, 4 -/* 03BED4 8003B2D4 A2360185 */ sb $s6, 0x185($s1) -/* 03BED8 8003B2D8 8E070014 */ lw $a3, 0x14($s0) -/* 03BEDC 8003B2DC 8E060010 */ lw $a2, 0x10($s0) -/* 03BEE0 8003B2E0 8E05000C */ lw $a1, 0xc($s0) -/* 03BEE4 8003B2E4 AFA00014 */ sw $zero, 0x14($sp) -/* 03BEE8 8003B2E8 0C002556 */ jal func_80009558 -/* 03BEEC 8003B2EC AFA80010 */ sw $t0, 0x10($sp) -/* 03BEF0 8003B2F0 82240003 */ lb $a0, 3($s1) -/* 03BEF4 8003B2F4 8E05000C */ lw $a1, 0xc($s0) -/* 03BEF8 8003B2F8 2484007B */ addiu $a0, $a0, 0x7b -/* 03BEFC 8003B2FC 3089FFFF */ andi $t1, $a0, 0xffff -/* 03BF00 8003B300 8E060010 */ lw $a2, 0x10($s0) -/* 03BF04 8003B304 8E070014 */ lw $a3, 0x14($s0) -/* 03BF08 8003B308 AFA00010 */ sw $zero, 0x10($sp) -/* 03BF0C 8003B30C 0C0007AA */ jal func_80001EA8 -/* 03BF10 8003B310 01202025 */ move $a0, $t1 -.L8003B314: -/* 03BF14 8003B314 8FAA0084 */ lw $t2, 0x84($sp) -.L8003B318: -/* 03BF18 8003B318 26520001 */ addiu $s2, $s2, 1 -/* 03BF1C 8003B31C 024A082A */ slt $at, $s2, $t2 -/* 03BF20 8003B320 1420FFBB */ bnez $at, .L8003B210 -/* 03BF24 8003B324 26730004 */ addiu $s3, $s3, 4 -.L8003B328: -/* 03BF28 8003B328 8FBF0054 */ lw $ra, 0x54($sp) -/* 03BF2C 8003B32C C7B50020 */ lwc1 $f21, 0x20($sp) -/* 03BF30 8003B330 C7B40024 */ lwc1 $f20, 0x24($sp) -/* 03BF34 8003B334 C7B70028 */ lwc1 $f23, 0x28($sp) -/* 03BF38 8003B338 C7B6002C */ lwc1 $f22, 0x2c($sp) -/* 03BF3C 8003B33C C7B90030 */ lwc1 $f25, 0x30($sp) -/* 03BF40 8003B340 C7B80034 */ lwc1 $f24, 0x34($sp) -/* 03BF44 8003B344 8FB00038 */ lw $s0, 0x38($sp) -/* 03BF48 8003B348 8FB1003C */ lw $s1, 0x3c($sp) -/* 03BF4C 8003B34C 8FB20040 */ lw $s2, 0x40($sp) -/* 03BF50 8003B350 8FB30044 */ lw $s3, 0x44($sp) -/* 03BF54 8003B354 8FB40048 */ lw $s4, 0x48($sp) -/* 03BF58 8003B358 8FB5004C */ lw $s5, 0x4c($sp) -/* 03BF5C 8003B35C 8FB60050 */ lw $s6, 0x50($sp) -/* 03BF60 8003B360 03E00008 */ jr $ra -/* 03BF64 8003B364 27BD0090 */ addiu $sp, $sp, 0x90 - -glabel func_8003B368 -/* 03BF68 8003B368 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 03BF6C 8003B36C AFBF001C */ sw $ra, 0x1c($sp) -/* 03BF70 8003B370 AFB00018 */ sw $s0, 0x18($sp) -/* 03BF74 8003B374 80A70008 */ lb $a3, 8($a1) -/* 03BF78 8003B378 2401FFFF */ li $at, -1 -/* 03BF7C 8003B37C 00808025 */ move $s0, $a0 -/* 03BF80 8003B380 14E10006 */ bne $a3, $at, .L8003B39C -/* 03BF84 8003B384 00A03025 */ move $a2, $a1 -/* 03BF88 8003B388 0C003308 */ jal func_8000CC20 -/* 03BF8C 8003B38C AFA50024 */ sw $a1, 0x24($sp) -/* 03BF90 8003B390 8FA60024 */ lw $a2, 0x24($sp) -/* 03BF94 8003B394 10000007 */ b .L8003B3B4 -/* 03BF98 8003B398 A0C20008 */ sb $v0, 8($a2) -.L8003B39C: -/* 03BF9C 8003B39C 02002025 */ move $a0, $s0 -/* 03BFA0 8003B3A0 00E02825 */ move $a1, $a3 -/* 03BFA4 8003B3A4 0C0032FC */ jal func_8000CBF0 -/* 03BFA8 8003B3A8 AFA60024 */ sw $a2, 0x24($sp) -/* 03BFAC 8003B3AC 8FA60024 */ lw $a2, 0x24($sp) -/* 03BFB0 8003B3B0 00000000 */ nop -.L8003B3B4: -/* 03BFB4 8003B3B4 80CE0008 */ lb $t6, 8($a2) -/* 03BFB8 8003B3B8 2401FFFF */ li $at, -1 -/* 03BFBC 8003B3BC 15C10006 */ bne $t6, $at, .L8003B3D8 -/* 03BFC0 8003B3C0 3C04800E */ lui $a0, %hi(D_800E5FA0) # $a0, 0x800e -/* 03BFC4 8003B3C4 24845FA0 */ addiu $a0, %lo(D_800E5FA0) # addiu $a0, $a0, 0x5fa0 -/* 03BFC8 8003B3C8 0C032755 */ jal func_800C9D54 -/* 03BFCC 8003B3CC AFA60024 */ sw $a2, 0x24($sp) -/* 03BFD0 8003B3D0 8FA60024 */ lw $a2, 0x24($sp) -/* 03BFD4 8003B3D4 00000000 */ nop -.L8003B3D8: -/* 03BFD8 8003B3D8 8E18004C */ lw $t8, 0x4c($s0) -/* 03BFDC 8003B3DC 240F0002 */ li $t7, 2 -/* 03BFE0 8003B3E0 A70F0014 */ sh $t7, 0x14($t8) -/* 03BFE4 8003B3E4 8E08004C */ lw $t0, 0x4c($s0) -/* 03BFE8 8003B3E8 24190004 */ li $t9, 4 -/* 03BFEC 8003B3EC A1190011 */ sb $t9, 0x11($t0) -/* 03BFF0 8003B3F0 8E0A004C */ lw $t2, 0x4c($s0) -/* 03BFF4 8003B3F4 24090014 */ li $t1, 20 -/* 03BFF8 8003B3F8 A1490010 */ sb $t1, 0x10($t2) -/* 03BFFC 8003B3FC 8E0B004C */ lw $t3, 0x4c($s0) -/* 03C000 8003B400 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 03C004 8003B404 A1600012 */ sb $zero, 0x12($t3) -/* 03C008 8003B408 90CD0009 */ lbu $t5, 9($a2) -/* 03C00C 8003B40C 44811000 */ mtc1 $at, $f2 -/* 03C010 8003B410 448D2000 */ mtc1 $t5, $f4 -/* 03C014 8003B414 3C014280 */ li $at, 0x42800000 # 64.000000 -/* 03C018 8003B418 46802020 */ cvt.s.w $f0, $f4 -/* 03C01C 8003B41C 44813000 */ mtc1 $at, $f6 -/* 03C020 8003B420 4602003C */ c.lt.s $f0, $f2 -/* 03C024 8003B424 00000000 */ nop -/* 03C028 8003B428 45000003 */ bc1f .L8003B438 -/* 03C02C 8003B42C 00000000 */ nop -/* 03C030 8003B430 46001006 */ mov.s $f0, $f2 -/* 03C034 8003B434 00000000 */ nop -.L8003B438: -/* 03C038 8003B438 46060003 */ div.s $f0, $f0, $f6 -/* 03C03C 8003B43C 8E0E0040 */ lw $t6, 0x40($s0) -/* 03C040 8003B440 8E020064 */ lw $v0, 0x64($s0) -/* 03C044 8003B444 C5C8000C */ lwc1 $f8, 0xc($t6) -/* 03C048 8003B448 44808000 */ mtc1 $zero, $f16 -/* 03C04C 8003B44C 240F00FF */ li $t7, 255 -/* 03C050 8003B450 46004282 */ mul.s $f10, $f8, $f0 -/* 03C054 8003B454 E60A0008 */ swc1 $f10, 8($s0) -/* 03C058 8003B458 A04F000D */ sb $t7, 0xd($v0) -/* 03C05C 8003B45C E4500000 */ swc1 $f16, ($v0) -/* 03C060 8003B460 AE000078 */ sw $zero, 0x78($s0) -/* 03C064 8003B464 80D8000A */ lb $t8, 0xa($a2) -/* 03C068 8003B468 00000000 */ nop -/* 03C06C 8003B46C 13000010 */ beqz $t8, .L8003B4B0 -/* 03C070 8003B470 8FBF001C */ lw $ra, 0x1c($sp) -/* 03C074 8003B474 0C01BAA4 */ jal func_8006EA90 -/* 03C078 8003B478 AFA60024 */ sw $a2, 0x24($sp) -/* 03C07C 8003B47C 8FA60024 */ lw $a2, 0x24($sp) -/* 03C080 8003B480 94590014 */ lhu $t9, 0x14($v0) -/* 03C084 8003B484 80C8000A */ lb $t0, 0xa($a2) -/* 03C088 8003B488 240A0001 */ li $t2, 1 -/* 03C08C 8003B48C 25090002 */ addiu $t1, $t0, 2 -/* 03C090 8003B490 012A5804 */ sllv $t3, $t2, $t1 -/* 03C094 8003B494 032B6024 */ and $t4, $t9, $t3 -/* 03C098 8003B498 11800003 */ beqz $t4, .L8003B4A8 -/* 03C09C 8003B49C 240D0001 */ li $t5, 1 -/* 03C0A0 8003B4A0 10000002 */ b .L8003B4AC -/* 03C0A4 8003B4A4 AE000078 */ sw $zero, 0x78($s0) -.L8003B4A8: -/* 03C0A8 8003B4A8 AE0D0078 */ sw $t5, 0x78($s0) -.L8003B4AC: -/* 03C0AC 8003B4AC 8FBF001C */ lw $ra, 0x1c($sp) -.L8003B4B0: -/* 03C0B0 8003B4B0 8FB00018 */ lw $s0, 0x18($sp) -/* 03C0B4 8003B4B4 03E00008 */ jr $ra -/* 03C0B8 8003B4B8 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_8003B4BC -/* 03C0BC 8003B4BC 44852000 */ mtc1 $a1, $f4 -/* 03C0C0 8003B4C0 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 03C0C4 8003B4C4 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 -/* 03C0C8 8003B4C8 46802020 */ cvt.s.w $f0, $f4 -/* 03C0CC 8003B4CC 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) -/* 03C0D0 8003B4D0 AFB10020 */ sw $s1, 0x20($sp) -/* 03C0D4 8003B4D4 00808825 */ move $s1, $a0 -/* 03C0D8 8003B4D8 AFBF0024 */ sw $ra, 0x24($sp) -/* 03C0DC 8003B4DC AFB0001C */ sw $s0, 0x1c($sp) -/* 03C0E0 8003B4E0 AFA50054 */ sw $a1, 0x54($sp) -/* 03C0E4 8003B4E4 15E00007 */ bnez $t7, .L8003B504 -/* 03C0E8 8003B4E8 46000086 */ mov.s $f2, $f0 -/* 03C0EC 8003B4EC 3C01800E */ lui $at, %hi(D_800E6164) # $at, 0x800e -/* 03C0F0 8003B4F0 C4296160 */ lwc1 $f9, %lo(D_800E6160)($at) -/* 03C0F4 8003B4F4 C4286164 */ lwc1 $f8, %lo(D_800E6164)($at) -/* 03C0F8 8003B4F8 460001A1 */ cvt.d.s $f6, $f0 -/* 03C0FC 8003B4FC 46283282 */ mul.d $f10, $f6, $f8 -/* 03C100 8003B500 462050A0 */ cvt.s.d $f2, $f10 -.L8003B504: -/* 03C104 8003B504 3C18A000 */ lui $t8, %hi(D_A0000284) # $t8, 0xa000 -/* 03C108 8003B508 8F190284 */ lw $t9, %lo(D_A0000284)($t8) -/* 03C10C 8003B50C 3C01240B */ lui $at, (0x240B17D7 >> 16) # lui $at, 0x240b -/* 03C110 8003B510 342117D7 */ ori $at, (0x240B17D7 & 0xFFFF) # ori $at, $at, 0x17d7 -/* 03C114 8003B514 13210002 */ beq $t9, $at, .L8003B520 -/* 03C118 8003B518 00008025 */ move $s0, $zero -/* 03C11C 8003B51C 24100001 */ li $s0, 1 -.L8003B520: -/* 03C120 8003B520 0C01BAA4 */ jal func_8006EA90 -/* 03C124 8003B524 E7A2002C */ swc1 $f2, 0x2c($sp) -/* 03C128 8003B528 904B0049 */ lbu $t3, 0x49($v0) -/* 03C12C 8003B52C 8E23003C */ lw $v1, 0x3c($s1) -/* 03C130 8003B530 8C4A0004 */ lw $t2, 4($v0) -/* 03C134 8003B534 000B6080 */ sll $t4, $t3, 2 -/* 03C138 8003B538 80680008 */ lb $t0, 8($v1) -/* 03C13C 8003B53C 014C6821 */ addu $t5, $t2, $t4 -/* 03C140 8003B540 8DAE0000 */ lw $t6, ($t5) -/* 03C144 8003B544 3C090001 */ lui $t1, 1 -/* 03C148 8003B548 01092804 */ sllv $a1, $t1, $t0 -/* 03C14C 8003B54C 01C57824 */ and $t7, $t6, $a1 -/* 03C150 8003B550 11E00013 */ beqz $t7, .L8003B5A0 -/* 03C154 8003B554 00000000 */ nop -/* 03C158 8003B558 8E38007C */ lw $t8, 0x7c($s1) -/* 03C15C 8003B55C 24190002 */ li $t9, 2 -/* 03C160 8003B560 1B00000B */ blez $t8, .L8003B590 -/* 03C164 8003B564 00000000 */ nop -/* 03C168 8003B568 AE390074 */ sw $t9, 0x74($s1) -/* 03C16C 8003B56C 8FA50054 */ lw $a1, 0x54($sp) -/* 03C170 8003B570 0C02BF0F */ jal func_800AFC3C -/* 03C174 8003B574 02202025 */ move $a0, $s1 -/* 03C178 8003B578 8E29007C */ lw $t1, 0x7c($s1) -/* 03C17C 8003B57C 8FA80054 */ lw $t0, 0x54($sp) -/* 03C180 8003B580 00000000 */ nop -/* 03C184 8003B584 01285823 */ subu $t3, $t1, $t0 -/* 03C188 8003B588 1000008B */ b .L8003B7B8 -/* 03C18C 8003B58C AE2B007C */ sw $t3, 0x7c($s1) -.L8003B590: -/* 03C190 8003B590 0C003FEE */ jal func_8000FFB8 -/* 03C194 8003B594 02202025 */ move $a0, $s1 -/* 03C198 8003B598 10000088 */ b .L8003B7BC -/* 03C19C 8003B59C 8FBF0024 */ lw $ra, 0x24($sp) -.L8003B5A0: -/* 03C1A0 8003B5A0 862A0006 */ lh $t2, 6($s1) -/* 03C1A4 8003B5A4 8E2D0078 */ lw $t5, 0x78($s1) -/* 03C1A8 8003B5A8 354C4000 */ ori $t4, $t2, 0x4000 -/* 03C1AC 8003B5AC 15A00082 */ bnez $t5, .L8003B7B8 -/* 03C1B0 8003B5B0 A62C0006 */ sh $t4, 6($s1) -/* 03C1B4 8003B5B4 862E0006 */ lh $t6, 6($s1) -/* 03C1B8 8003B5B8 92240039 */ lbu $a0, 0x39($s1) -/* 03C1BC 8003B5BC 31CFBFFF */ andi $t7, $t6, 0xbfff -/* 03C1C0 8003B5C0 A62F0006 */ sh $t7, 6($s1) -/* 03C1C4 8003B5C4 8FA30054 */ lw $v1, 0x54($sp) -/* 03C1C8 8003B5C8 241900FF */ li $t9, 255 -/* 03C1CC 8003B5CC 0003C040 */ sll $t8, $v1, 1 -/* 03C1D0 8003B5D0 03384823 */ subu $t1, $t9, $t8 -/* 03C1D4 8003B5D4 0089082A */ slt $at, $a0, $t1 -/* 03C1D8 8003B5D8 10200004 */ beqz $at, .L8003B5EC -/* 03C1DC 8003B5DC 240B00FF */ li $t3, 255 -/* 03C1E0 8003B5E0 00984021 */ addu $t0, $a0, $t8 -/* 03C1E4 8003B5E4 10000002 */ b .L8003B5F0 -/* 03C1E8 8003B5E8 A2280039 */ sb $t0, 0x39($s1) -.L8003B5EC: -/* 03C1EC 8003B5EC A22B0039 */ sb $t3, 0x39($s1) -.L8003B5F0: -/* 03C1F0 8003B5F0 8E24004C */ lw $a0, 0x4c($s1) -/* 03C1F4 8003B5F4 00000000 */ nop -/* 03C1F8 8003B5F8 908A0013 */ lbu $t2, 0x13($a0) -/* 03C1FC 8003B5FC 00000000 */ nop -/* 03C200 8003B600 2941002D */ slti $at, $t2, 0x2d -/* 03C204 8003B604 1020003C */ beqz $at, .L8003B6F8 -/* 03C208 8003B608 00000000 */ nop -/* 03C20C 8003B60C 1600003A */ bnez $s0, .L8003B6F8 -/* 03C210 8003B610 00000000 */ nop -/* 03C214 8003B614 8C830000 */ lw $v1, ($a0) -/* 03C218 8003B618 00000000 */ nop -/* 03C21C 8003B61C 10600036 */ beqz $v1, .L8003B6F8 -/* 03C220 8003B620 00000000 */ nop -/* 03C224 8003B624 8C6C0040 */ lw $t4, 0x40($v1) -/* 03C228 8003B628 24060001 */ li $a2, 1 -/* 03C22C 8003B62C 818D0054 */ lb $t5, 0x54($t4) -/* 03C230 8003B630 00000000 */ nop -/* 03C234 8003B634 14CD0030 */ bne $a2, $t5, .L8003B6F8 -/* 03C238 8003B638 00000000 */ nop -/* 03C23C 8003B63C 8C640064 */ lw $a0, 0x64($v1) -/* 03C240 8003B640 00000000 */ nop -/* 03C244 8003B644 848E0000 */ lh $t6, ($a0) -/* 03C248 8003B648 00000000 */ nop -/* 03C24C 8003B64C 15C0002A */ bnez $t6, .L8003B6F8 -/* 03C250 8003B650 00000000 */ nop -/* 03C254 8003B654 90580048 */ lbu $t8, 0x48($v0) -/* 03C258 8003B658 8C4F0000 */ lw $t7, ($v0) -/* 03C25C 8003B65C 0018C840 */ sll $t9, $t8, 1 -/* 03C260 8003B660 01F91821 */ addu $v1, $t7, $t9 -/* 03C264 8003B664 84690000 */ lh $t1, ($v1) -/* 03C268 8003B668 00000000 */ nop -/* 03C26C 8003B66C 25280001 */ addiu $t0, $t1, 1 -/* 03C270 8003B670 A4680000 */ sh $t0, ($v1) -/* 03C274 8003B674 904B0048 */ lbu $t3, 0x48($v0) -/* 03C278 8003B678 00000000 */ nop -/* 03C27C 8003B67C 11600007 */ beqz $t3, .L8003B69C -/* 03C280 8003B680 00000000 */ nop -/* 03C284 8003B684 8C430000 */ lw $v1, ($v0) -/* 03C288 8003B688 00000000 */ nop -/* 03C28C 8003B68C 846A0000 */ lh $t2, ($v1) -/* 03C290 8003B690 00000000 */ nop -/* 03C294 8003B694 254C0001 */ addiu $t4, $t2, 1 -/* 03C298 8003B698 A46C0000 */ sh $t4, ($v1) -.L8003B69C: -/* 03C29C 8003B69C 904E0049 */ lbu $t6, 0x49($v0) -/* 03C2A0 8003B6A0 8C4D0004 */ lw $t5, 4($v0) -/* 03C2A4 8003B6A4 000EC080 */ sll $t8, $t6, 2 -/* 03C2A8 8003B6A8 01B81821 */ addu $v1, $t5, $t8 -/* 03C2AC 8003B6AC 8C6F0000 */ lw $t7, ($v1) -/* 03C2B0 8003B6B0 2404023D */ li $a0, 573 -/* 03C2B4 8003B6B4 01E5C825 */ or $t9, $t7, $a1 -/* 03C2B8 8003B6B8 AC790000 */ sw $t9, ($v1) -/* 03C2BC 8003B6BC 8E270014 */ lw $a3, 0x14($s1) -/* 03C2C0 8003B6C0 8E260010 */ lw $a2, 0x10($s1) -/* 03C2C4 8003B6C4 8E25000C */ lw $a1, 0xc($s1) -/* 03C2C8 8003B6C8 0C0007AA */ jal func_80001EA8 -/* 03C2CC 8003B6CC AFA00010 */ sw $zero, 0x10($sp) -/* 03C2D0 8003B6D0 862B0006 */ lh $t3, 6($s1) -/* 03C2D4 8003B6D4 24090010 */ li $t1, 16 -/* 03C2D8 8003B6D8 24080002 */ li $t0, 2 -/* 03C2DC 8003B6DC 356A4000 */ ori $t2, $t3, 0x4000 -/* 03C2E0 8003B6E0 AE29007C */ sw $t1, 0x7c($s1) -/* 03C2E4 8003B6E4 AE280074 */ sw $t0, 0x74($s1) -/* 03C2E8 8003B6E8 A62A0006 */ sh $t2, 6($s1) -/* 03C2EC 8003B6EC 8FA50054 */ lw $a1, 0x54($sp) -/* 03C2F0 8003B6F0 0C02BF0F */ jal func_800AFC3C -/* 03C2F4 8003B6F4 02202025 */ move $a0, $s1 -.L8003B6F8: -/* 03C2F8 8003B6F8 44801000 */ mtc1 $zero, $f2 -/* 03C2FC 8003B6FC 8E300064 */ lw $s0, 0x64($s1) -/* 03C300 8003B700 A220003B */ sb $zero, 0x3b($s1) -/* 03C304 8003B704 E6020014 */ swc1 $f2, 0x14($s0) -/* 03C308 8003B708 922C0039 */ lbu $t4, 0x39($s1) -/* 03C30C 8003B70C 02202825 */ move $a1, $s1 -/* 03C310 8003B710 298100FF */ slti $at, $t4, 0xff -/* 03C314 8003B714 10200003 */ beqz $at, .L8003B724 -/* 03C318 8003B718 02002025 */ move $a0, $s0 -/* 03C31C 8003B71C 10000004 */ b .L8003B730 -/* 03C320 8003B720 46001006 */ mov.s $f0, $f2 -.L8003B724: -/* 03C324 8003B724 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 03C328 8003B728 44810000 */ mtc1 $at, $f0 -/* 03C32C 8003B72C 00000000 */ nop -.L8003B730: -/* 03C330 8003B730 920E000D */ lbu $t6, 0xd($s0) -/* 03C334 8003B734 240100FF */ li $at, 255 -/* 03C338 8003B738 15C1001C */ bne $t6, $at, .L8003B7AC -/* 03C33C 8003B73C 8FA6002C */ lw $a2, 0x2c($sp) -/* 03C340 8003B740 C62C000C */ lwc1 $f12, 0xc($s1) -/* 03C344 8003B744 C62E0010 */ lwc1 $f14, 0x10($s1) -/* 03C348 8003B748 8E260014 */ lw $a2, 0x14($s1) -/* 03C34C 8003B74C 0C007149 */ jal func_8001C524 -/* 03C350 8003B750 00003825 */ move $a3, $zero -/* 03C354 8003B754 304400FF */ andi $a0, $v0, 0xff -/* 03C358 8003B758 240100FF */ li $at, 255 -/* 03C35C 8003B75C 10810016 */ beq $a0, $at, .L8003B7B8 -/* 03C360 8003B760 A202000D */ sb $v0, 0xd($s0) -/* 03C364 8003B764 2405FFFF */ li $a1, -1 -/* 03C368 8003B768 0C007312 */ jal func_8001CC48 -/* 03C36C 8003B76C 00003025 */ move $a2, $zero -/* 03C370 8003B770 9205000D */ lbu $a1, 0xd($s0) -/* 03C374 8003B774 A202000E */ sb $v0, 0xe($s0) -/* 03C378 8003B778 304400FF */ andi $a0, $v0, 0xff -/* 03C37C 8003B77C 0C007312 */ jal func_8001CC48 -/* 03C380 8003B780 00003025 */ move $a2, $zero -/* 03C384 8003B784 9205000E */ lbu $a1, 0xe($s0) -/* 03C388 8003B788 A202000F */ sb $v0, 0xf($s0) -/* 03C38C 8003B78C 304400FF */ andi $a0, $v0, 0xff -/* 03C390 8003B790 0C007312 */ jal func_8001CC48 -/* 03C394 8003B794 00003025 */ move $a2, $zero -/* 03C398 8003B798 920D000D */ lbu $t5, 0xd($s0) -/* 03C39C 8003B79C A2020010 */ sb $v0, 0x10($s0) -/* 03C3A0 8003B7A0 10000005 */ b .L8003B7B8 -/* 03C3A4 8003B7A4 A20D000C */ sb $t5, 0xc($s0) -/* 03C3A8 8003B7A8 8FA6002C */ lw $a2, 0x2c($sp) -.L8003B7AC: -/* 03C3AC 8003B7AC 44070000 */ mfc1 $a3, $f0 -/* 03C3B0 8003B7B0 0C0071B1 */ jal func_8001C6C4 -/* 03C3B4 8003B7B4 AFA00010 */ sw $zero, 0x10($sp) -.L8003B7B8: -/* 03C3B8 8003B7B8 8FBF0024 */ lw $ra, 0x24($sp) -.L8003B7BC: -/* 03C3BC 8003B7BC 8FB0001C */ lw $s0, 0x1c($sp) -/* 03C3C0 8003B7C0 8FB10020 */ lw $s1, 0x20($sp) -/* 03C3C4 8003B7C4 03E00008 */ jr $ra -/* 03C3C8 8003B7C8 27BD0050 */ addiu $sp, $sp, 0x50 - -glabel func_8003B7CC -/* 03C3CC 8003B7CC 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 03C3D0 8003B7D0 AFBF001C */ sw $ra, 0x1c($sp) -/* 03C3D4 8003B7D4 AFB00018 */ sw $s0, 0x18($sp) -/* 03C3D8 8003B7D8 80A7000C */ lb $a3, 0xc($a1) -/* 03C3DC 8003B7DC 8C830064 */ lw $v1, 0x64($a0) -/* 03C3E0 8003B7E0 2401FFFF */ li $at, -1 -/* 03C3E4 8003B7E4 00808025 */ move $s0, $a0 -/* 03C3E8 8003B7E8 14E10008 */ bne $a3, $at, .L8003B80C -/* 03C3EC 8003B7EC 00A03025 */ move $a2, $a1 -/* 03C3F0 8003B7F0 AFA30024 */ sw $v1, 0x24($sp) -/* 03C3F4 8003B7F4 0C003308 */ jal func_8000CC20 -/* 03C3F8 8003B7F8 AFA5002C */ sw $a1, 0x2c($sp) -/* 03C3FC 8003B7FC 8FA6002C */ lw $a2, 0x2c($sp) -/* 03C400 8003B800 8FA30024 */ lw $v1, 0x24($sp) -/* 03C404 8003B804 10000009 */ b .L8003B82C -/* 03C408 8003B808 A0C2000C */ sb $v0, 0xc($a2) -.L8003B80C: -/* 03C40C 8003B80C 02002025 */ move $a0, $s0 -/* 03C410 8003B810 00E02825 */ move $a1, $a3 -/* 03C414 8003B814 AFA30024 */ sw $v1, 0x24($sp) -/* 03C418 8003B818 0C0032FC */ jal func_8000CBF0 -/* 03C41C 8003B81C AFA6002C */ sw $a2, 0x2c($sp) -/* 03C420 8003B820 8FA30024 */ lw $v1, 0x24($sp) -/* 03C424 8003B824 8FA6002C */ lw $a2, 0x2c($sp) -/* 03C428 8003B828 00000000 */ nop -.L8003B82C: -/* 03C42C 8003B82C 80CE000C */ lb $t6, 0xc($a2) -/* 03C430 8003B830 2401FFFF */ li $at, -1 -/* 03C434 8003B834 A06E000E */ sb $t6, 0xe($v1) -/* 03C438 8003B838 90CF000E */ lbu $t7, 0xe($a2) -/* 03C43C 8003B83C 8069000E */ lb $t1, 0xe($v1) -/* 03C440 8003B840 A06F000F */ sb $t7, 0xf($v1) -/* 03C444 8003B844 90D8000D */ lbu $t8, 0xd($a2) -/* 03C448 8003B848 3C04800E */ lui $a0, %hi(D_800E5FB4) # $a0, 0x800e -/* 03C44C 8003B84C A0780011 */ sb $t8, 0x11($v1) -/* 03C450 8003B850 90D9000D */ lbu $t9, 0xd($a2) -/* 03C454 8003B854 24845FB4 */ addiu $a0, %lo(D_800E5FB4) # addiu $a0, $a0, 0x5fb4 -/* 03C458 8003B858 A0790010 */ sb $t9, 0x10($v1) -/* 03C45C 8003B85C 90C8000B */ lbu $t0, 0xb($a2) -/* 03C460 8003B860 15210007 */ bne $t1, $at, .L8003B880 -/* 03C464 8003B864 A0680012 */ sb $t0, 0x12($v1) -/* 03C468 8003B868 AFA30024 */ sw $v1, 0x24($sp) -/* 03C46C 8003B86C 0C032755 */ jal func_800C9D54 -/* 03C470 8003B870 AFA6002C */ sw $a2, 0x2c($sp) -/* 03C474 8003B874 8FA30024 */ lw $v1, 0x24($sp) -/* 03C478 8003B878 8FA6002C */ lw $a2, 0x2c($sp) -/* 03C47C 8003B87C 00000000 */ nop -.L8003B880: -/* 03C480 8003B880 90CA000A */ lbu $t2, 0xa($a2) -/* 03C484 8003B884 C6040010 */ lwc1 $f4, 0x10($s0) -/* 03C488 8003B888 A20A003A */ sb $t2, 0x3a($s0) -/* 03C48C 8003B88C 90CC0008 */ lbu $t4, 8($a2) -/* 03C490 8003B890 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 03C494 8003B894 000C6A80 */ sll $t5, $t4, 0xa -/* 03C498 8003B898 A60D0000 */ sh $t5, ($s0) -/* 03C49C 8003B89C AC600008 */ sw $zero, 8($v1) -/* 03C4A0 8003B8A0 E4640000 */ swc1 $f4, ($v1) -/* 03C4A4 8003B8A4 860E0000 */ lh $t6, ($s0) -/* 03C4A8 8003B8A8 44811000 */ mtc1 $at, $f2 -/* 03C4AC 8003B8AC AE0E0078 */ sw $t6, 0x78($s0) -/* 03C4B0 8003B8B0 90CF0009 */ lbu $t7, 9($a2) -/* 03C4B4 8003B8B4 3C014280 */ li $at, 0x42800000 # 64.000000 -/* 03C4B8 8003B8B8 31F8003F */ andi $t8, $t7, 0x3f -/* 03C4BC 8003B8BC 0018CA80 */ sll $t9, $t8, 0xa -/* 03C4C0 8003B8C0 AE19007C */ sw $t9, 0x7c($s0) -/* 03C4C4 8003B8C4 90C90012 */ lbu $t1, 0x12($a2) -/* 03C4C8 8003B8C8 44814000 */ mtc1 $at, $f8 -/* 03C4CC 8003B8CC 44893000 */ mtc1 $t1, $f6 -/* 03C4D0 8003B8D0 00000000 */ nop -/* 03C4D4 8003B8D4 46803020 */ cvt.s.w $f0, $f6 -/* 03C4D8 8003B8D8 4602003C */ c.lt.s $f0, $f2 -/* 03C4DC 8003B8DC 00000000 */ nop -/* 03C4E0 8003B8E0 45000003 */ bc1f .L8003B8F0 -/* 03C4E4 8003B8E4 00000000 */ nop -/* 03C4E8 8003B8E8 46001006 */ mov.s $f0, $f2 -/* 03C4EC 8003B8EC 00000000 */ nop -.L8003B8F0: -/* 03C4F0 8003B8F0 46080003 */ div.s $f0, $f0, $f8 -/* 03C4F4 8003B8F4 8E0A0040 */ lw $t2, 0x40($s0) -/* 03C4F8 8003B8F8 240D0021 */ li $t5, 33 -/* 03C4FC 8003B8FC C54A000C */ lwc1 $f10, 0xc($t2) -/* 03C500 8003B900 240F0002 */ li $t7, 2 -/* 03C504 8003B904 24190014 */ li $t9, 20 -/* 03C508 8003B908 46005402 */ mul.s $f16, $f10, $f0 -/* 03C50C 8003B90C E6100008 */ swc1 $f16, 8($s0) -/* 03C510 8003B910 90CB000F */ lbu $t3, 0xf($a2) -/* 03C514 8003B914 00000000 */ nop -/* 03C518 8003B918 A06B0013 */ sb $t3, 0x13($v1) -/* 03C51C 8003B91C 80CC0011 */ lb $t4, 0x11($a2) -/* 03C520 8003B920 00000000 */ nop -/* 03C524 8003B924 A06C0014 */ sb $t4, 0x14($v1) -/* 03C528 8003B928 8E0E004C */ lw $t6, 0x4c($s0) -/* 03C52C 8003B92C 00000000 */ nop -/* 03C530 8003B930 A5CD0014 */ sh $t5, 0x14($t6) -/* 03C534 8003B934 8E18004C */ lw $t8, 0x4c($s0) -/* 03C538 8003B938 00000000 */ nop -/* 03C53C 8003B93C A30F0011 */ sb $t7, 0x11($t8) -/* 03C540 8003B940 8E08004C */ lw $t0, 0x4c($s0) -/* 03C544 8003B944 00000000 */ nop -/* 03C548 8003B948 A1190010 */ sb $t9, 0x10($t0) -/* 03C54C 8003B94C 8E09004C */ lw $t1, 0x4c($s0) -/* 03C550 8003B950 00000000 */ nop -/* 03C554 8003B954 A1200012 */ sb $zero, 0x12($t1) -/* 03C558 8003B958 8E0B0040 */ lw $t3, 0x40($s0) -/* 03C55C 8003B95C 820A003A */ lb $t2, 0x3a($s0) -/* 03C560 8003B960 816C0055 */ lb $t4, 0x55($t3) -/* 03C564 8003B964 00000000 */ nop -/* 03C568 8003B968 014C082A */ slt $at, $t2, $t4 -/* 03C56C 8003B96C 14200003 */ bnez $at, .L8003B97C -/* 03C570 8003B970 8FBF001C */ lw $ra, 0x1c($sp) -/* 03C574 8003B974 A200003A */ sb $zero, 0x3a($s0) -/* 03C578 8003B978 8FBF001C */ lw $ra, 0x1c($sp) -.L8003B97C: -/* 03C57C 8003B97C 8FB00018 */ lw $s0, 0x18($sp) -/* 03C580 8003B980 03E00008 */ jr $ra -/* 03C584 8003B984 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_8003B988 -/* 03C588 8003B988 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 03C58C 8003B98C 44852000 */ mtc1 $a1, $f4 -/* 03C590 8003B990 AFBF0024 */ sw $ra, 0x24($sp) -/* 03C594 8003B994 AFB00020 */ sw $s0, 0x20($sp) -/* 03C598 8003B998 AFA50064 */ sw $a1, 0x64($sp) -/* 03C59C 8003B99C 3C188000 */ lui $t8, %hi(D_80000300) # $t8, 0x8000 -/* 03C5A0 8003B9A0 46802020 */ cvt.s.w $f0, $f4 -/* 03C5A4 8003B9A4 8C8E003C */ lw $t6, 0x3c($a0) -/* 03C5A8 8003B9A8 8F180300 */ lw $t8, %lo(D_80000300)($t8) -/* 03C5AC 8003B9AC 00808025 */ move $s0, $a0 -/* 03C5B0 8003B9B0 46000086 */ mov.s $f2, $f0 -/* 03C5B4 8003B9B4 17000007 */ bnez $t8, .L8003B9D4 -/* 03C5B8 8003B9B8 AFAE0034 */ sw $t6, 0x34($sp) -/* 03C5BC 8003B9BC 3C01800E */ lui $at, %hi(D_800E616C) # $at, 0x800e -/* 03C5C0 8003B9C0 C4296168 */ lwc1 $f9, %lo(D_800E6168)($at) -/* 03C5C4 8003B9C4 C428616C */ lwc1 $f8, %lo(D_800E616C)($at) -/* 03C5C8 8003B9C8 460001A1 */ cvt.d.s $f6, $f0 -/* 03C5CC 8003B9CC 46283282 */ mul.d $f10, $f6, $f8 -/* 03C5D0 8003B9D0 462050A0 */ cvt.s.d $f2, $f10 -.L8003B9D4: -/* 03C5D4 8003B9D4 0C01BAA4 */ jal func_8006EA90 -/* 03C5D8 8003B9D8 E7A20030 */ swc1 $f2, 0x30($sp) -/* 03C5DC 8003B9DC 904B0049 */ lbu $t3, 0x49($v0) -/* 03C5E0 8003B9E0 8C590004 */ lw $t9, 4($v0) -/* 03C5E4 8003B9E4 8E080064 */ lw $t0, 0x64($s0) -/* 03C5E8 8003B9E8 000B6080 */ sll $t4, $t3, 2 -/* 03C5EC 8003B9EC 8103000E */ lb $v1, 0xe($t0) -/* 03C5F0 8003B9F0 032C6821 */ addu $t5, $t9, $t4 -/* 03C5F4 8003B9F4 8DA50000 */ lw $a1, ($t5) -/* 03C5F8 8003B9F8 046001E6 */ bltz $v1, .L8003C194 -/* 03C5FC 8003B9FC 00404825 */ move $t1, $v0 -/* 03C600 8003BA00 3C0E0001 */ lui $t6, 1 -/* 03C604 8003BA04 006E7804 */ sllv $t7, $t6, $v1 -/* 03C608 8003BA08 AFAF0054 */ sw $t7, 0x54($sp) -/* 03C60C 8003BA0C 8E02004C */ lw $v0, 0x4c($s0) -/* 03C610 8003BA10 00000000 */ nop -/* 03C614 8003BA14 90440013 */ lbu $a0, 0x13($v0) -/* 03C618 8003BA18 00000000 */ nop -/* 03C61C 8003BA1C AFA40050 */ sw $a0, 0x50($sp) -/* 03C620 8003BA20 9118000F */ lbu $t8, 0xf($t0) -/* 03C624 8003BA24 00000000 */ nop -/* 03C628 8003BA28 330B0001 */ andi $t3, $t8, 1 -/* 03C62C 8003BA2C 15600003 */ bnez $t3, .L8003BA3C -/* 03C630 8003BA30 8FB90054 */ lw $t9, 0x54($sp) -/* 03C634 8003BA34 AFA00050 */ sw $zero, 0x50($sp) -/* 03C638 8003BA38 8FB90054 */ lw $t9, 0x54($sp) -.L8003BA3C: -/* 03C63C 8003BA3C 00000000 */ nop -/* 03C640 8003BA40 00B96024 */ and $t4, $a1, $t9 -/* 03C644 8003BA44 15800050 */ bnez $t4, .L8003BB88 -/* 03C648 8003BA48 AFAC0028 */ sw $t4, 0x28($sp) -/* 03C64C 8003BA4C 910E0012 */ lbu $t6, 0x12($t0) -/* 03C650 8003BA50 00000000 */ nop -/* 03C654 8003BA54 008E082A */ slt $at, $a0, $t6 -/* 03C658 8003BA58 1020004B */ beqz $at, .L8003BB88 -/* 03C65C 8003BA5C 00000000 */ nop -/* 03C660 8003BA60 8C430000 */ lw $v1, ($v0) -/* 03C664 8003BA64 00000000 */ nop -/* 03C668 8003BA68 10600047 */ beqz $v1, .L8003BB88 -/* 03C66C 8003BA6C 00000000 */ nop -/* 03C670 8003BA70 8C6F0040 */ lw $t7, 0x40($v1) -/* 03C674 8003BA74 24060001 */ li $a2, 1 -/* 03C678 8003BA78 81F80054 */ lb $t8, 0x54($t7) -/* 03C67C 8003BA7C 00000000 */ nop -/* 03C680 8003BA80 14D80041 */ bne $a2, $t8, .L8003BB88 -/* 03C684 8003BA84 00000000 */ nop -/* 03C688 8003BA88 8C620064 */ lw $v0, 0x64($v1) -/* 03C68C 8003BA8C 2401FFFF */ li $at, -1 -/* 03C690 8003BA90 844B0000 */ lh $t3, ($v0) -/* 03C694 8003BA94 00000000 */ nop -/* 03C698 8003BA98 11610033 */ beq $t3, $at, .L8003BB68 -/* 03C69C 8003BA9C 00000000 */ nop -/* 03C6A0 8003BAA0 8E19005C */ lw $t9, 0x5c($s0) -/* 03C6A4 8003BAA4 00000000 */ nop -/* 03C6A8 8003BAA8 8F2C0100 */ lw $t4, 0x100($t9) -/* 03C6AC 8003BAAC 00000000 */ nop -/* 03C6B0 8003BAB0 146C002D */ bne $v1, $t4, .L8003BB68 -/* 03C6B4 8003BAB4 00000000 */ nop -/* 03C6B8 8003BAB8 810D0013 */ lb $t5, 0x13($t0) -/* 03C6BC 8003BABC 2401FFFF */ li $at, -1 -/* 03C6C0 8003BAC0 11A10028 */ beq $t5, $at, .L8003BB64 -/* 03C6C4 8003BAC4 240B012C */ li $t3, 300 -/* 03C6C8 8003BAC8 AFA80044 */ sw $t0, 0x44($sp) -/* 03C6CC 8003BACC 0C030D00 */ jal func_800C3400 -/* 03C6D0 8003BAD0 AFA90040 */ sw $t1, 0x40($sp) -/* 03C6D4 8003BAD4 8FA80044 */ lw $t0, 0x44($sp) -/* 03C6D8 8003BAD8 8FA90040 */ lw $t1, 0x40($sp) -/* 03C6DC 8003BADC 14400021 */ bnez $v0, .L8003BB64 -/* 03C6E0 8003BAE0 240B012C */ li $t3, 300 -/* 03C6E4 8003BAE4 850E000C */ lh $t6, 0xc($t0) -/* 03C6E8 8003BAE8 2404FFF8 */ li $a0, -8 -/* 03C6EC 8003BAEC 15C0001D */ bnez $t6, .L8003BB64 -/* 03C6F0 8003BAF0 240B012C */ li $t3, 300 -/* 03C6F4 8003BAF4 AFA80044 */ sw $t0, 0x44($sp) -/* 03C6F8 8003BAF8 0C000326 */ jal func_80000C98 -/* 03C6FC 8003BAFC AFA90040 */ sw $t1, 0x40($sp) -/* 03C700 8003BB00 8FA80044 */ lw $t0, 0x44($sp) -/* 03C704 8003BB04 240F008C */ li $t7, 140 -/* 03C708 8003BB08 24040010 */ li $a0, 16 -/* 03C70C 8003BB0C 0C00030E */ jal func_80000C38 -/* 03C710 8003BB10 AD0F0008 */ sw $t7, 8($t0) -/* 03C714 8003BB14 0C002050 */ jal func_80008140 -/* 03C718 8003BB18 00000000 */ nop -/* 03C71C 8003BB1C 0C0006F0 */ jal func_80001BC0 -/* 03C720 8003BB20 24040011 */ li $a0, 17 -/* 03C724 8003BB24 8FA80044 */ lw $t0, 0x44($sp) -/* 03C728 8003BB28 00000000 */ nop -/* 03C72C 8003BB2C 91040010 */ lbu $a0, 0x10($t0) -/* 03C730 8003BB30 0C030C50 */ jal func_800C3140 -/* 03C734 8003BB34 00000000 */ nop -/* 03C738 8003BB38 8FA80044 */ lw $t0, 0x44($sp) -/* 03C73C 8003BB3C 00000000 */ nop -/* 03C740 8003BB40 81040013 */ lb $a0, 0x13($t0) -/* 03C744 8003BB44 00000000 */ nop -/* 03C748 8003BB48 309800FF */ andi $t8, $a0, 0xff -/* 03C74C 8003BB4C 0C030C7B */ jal func_800C31EC -/* 03C750 8003BB50 03002025 */ move $a0, $t8 -/* 03C754 8003BB54 8FA80044 */ lw $t0, 0x44($sp) -/* 03C758 8003BB58 8FA90040 */ lw $t1, 0x40($sp) -/* 03C75C 8003BB5C 00000000 */ nop -/* 03C760 8003BB60 240B012C */ li $t3, 300 -.L8003BB64: -/* 03C764 8003BB64 A50B000C */ sh $t3, 0xc($t0) -.L8003BB68: -/* 03C768 8003BB68 AFA80044 */ sw $t0, 0x44($sp) -/* 03C76C 8003BB6C 0C030D00 */ jal func_800C3400 -/* 03C770 8003BB70 AFA90040 */ sw $t1, 0x40($sp) -/* 03C774 8003BB74 8FA80044 */ lw $t0, 0x44($sp) -/* 03C778 8003BB78 8FA90040 */ lw $t1, 0x40($sp) -/* 03C77C 8003BB7C 10400002 */ beqz $v0, .L8003BB88 -/* 03C780 8003BB80 2419012C */ li $t9, 300 -/* 03C784 8003BB84 A519000C */ sh $t9, 0xc($t0) -.L8003BB88: -/* 03C788 8003BB88 8D0C0008 */ lw $t4, 8($t0) -/* 03C78C 8003BB8C 00000000 */ nop -/* 03C790 8003BB90 1180001B */ beqz $t4, .L8003BC00 -/* 03C794 8003BB94 00000000 */ nop -/* 03C798 8003BB98 AFA80044 */ sw $t0, 0x44($sp) -/* 03C79C 8003BB9C 0C000702 */ jal func_80001C08 -/* 03C7A0 8003BBA0 AFA90040 */ sw $t1, 0x40($sp) -/* 03C7A4 8003BBA4 8FA80044 */ lw $t0, 0x44($sp) -/* 03C7A8 8003BBA8 8FA90040 */ lw $t1, 0x40($sp) -/* 03C7AC 8003BBAC 14400014 */ bnez $v0, .L8003BC00 -/* 03C7B0 8003BBB0 00000000 */ nop -/* 03C7B4 8003BBB4 8FA30064 */ lw $v1, 0x64($sp) -/* 03C7B8 8003BBB8 8D020008 */ lw $v0, 8($t0) -/* 03C7BC 8003BBBC 24040008 */ li $a0, 8 -/* 03C7C0 8003BBC0 0062082A */ slt $at, $v1, $v0 -/* 03C7C4 8003BBC4 10200003 */ beqz $at, .L8003BBD4 -/* 03C7C8 8003BBC8 00436823 */ subu $t5, $v0, $v1 -/* 03C7CC 8003BBCC 1000000C */ b .L8003BC00 -/* 03C7D0 8003BBD0 AD0D0008 */ sw $t5, 8($t0) -.L8003BBD4: -/* 03C7D4 8003BBD4 AD000008 */ sw $zero, 8($t0) -/* 03C7D8 8003BBD8 AFA90040 */ sw $t1, 0x40($sp) -/* 03C7DC 8003BBDC 0C000326 */ jal func_80000C98 -/* 03C7E0 8003BBE0 AFA80044 */ sw $t0, 0x44($sp) -/* 03C7E4 8003BBE4 0C00030E */ jal func_80000C38 -/* 03C7E8 8003BBE8 24040006 */ li $a0, 6 -/* 03C7EC 8003BBEC 0C00205A */ jal func_80008168 -/* 03C7F0 8003BBF0 00000000 */ nop -/* 03C7F4 8003BBF4 8FA80044 */ lw $t0, 0x44($sp) -/* 03C7F8 8003BBF8 8FA90040 */ lw $t1, 0x40($sp) -/* 03C7FC 8003BBFC 00000000 */ nop -.L8003BC00: -/* 03C800 8003BC00 8502000C */ lh $v0, 0xc($t0) -/* 03C804 8003BC04 8FA30064 */ lw $v1, 0x64($sp) -/* 03C808 8003BC08 18400004 */ blez $v0, .L8003BC1C -/* 03C80C 8003BC0C 24060001 */ li $a2, 1 -/* 03C810 8003BC10 00437023 */ subu $t6, $v0, $v1 -/* 03C814 8003BC14 10000002 */ b .L8003BC20 -/* 03C818 8003BC18 A50E000C */ sh $t6, 0xc($t0) -.L8003BC1C: -/* 03C81C 8003BC1C A500000C */ sh $zero, 0xc($t0) -.L8003BC20: -/* 03C820 8003BC20 8E02004C */ lw $v0, 0x4c($s0) -/* 03C824 8003BC24 91180012 */ lbu $t8, 0x12($t0) -/* 03C828 8003BC28 904F0013 */ lbu $t7, 0x13($v0) -/* 03C82C 8003BC2C 8FAA0034 */ lw $t2, 0x34($sp) -/* 03C830 8003BC30 01F8082A */ slt $at, $t7, $t8 -/* 03C834 8003BC34 10200018 */ beqz $at, .L8003BC98 -/* 03C838 8003BC38 00002025 */ move $a0, $zero -/* 03C83C 8003BC3C 8C430000 */ lw $v1, ($v0) -/* 03C840 8003BC40 00000000 */ nop -/* 03C844 8003BC44 10600014 */ beqz $v1, .L8003BC98 -/* 03C848 8003BC48 00000000 */ nop -/* 03C84C 8003BC4C 8C6B0040 */ lw $t3, 0x40($v1) -/* 03C850 8003BC50 00000000 */ nop -/* 03C854 8003BC54 81790054 */ lb $t9, 0x54($t3) -/* 03C858 8003BC58 00000000 */ nop -/* 03C85C 8003BC5C 14D9000E */ bne $a2, $t9, .L8003BC98 -/* 03C860 8003BC60 00000000 */ nop -/* 03C864 8003BC64 8C620064 */ lw $v0, 0x64($v1) -/* 03C868 8003BC68 24010002 */ li $at, 2 -/* 03C86C 8003BC6C 804401D6 */ lb $a0, 0x1d6($v0) -/* 03C870 8003BC70 00000000 */ nop -/* 03C874 8003BC74 10860005 */ beq $a0, $a2, .L8003BC8C -/* 03C878 8003BC78 00000000 */ nop -/* 03C87C 8003BC7C 10810006 */ beq $a0, $at, .L8003BC98 -/* 03C880 8003BC80 24040004 */ li $a0, 4 -/* 03C884 8003BC84 10000004 */ b .L8003BC98 -/* 03C888 8003BC88 00C02025 */ move $a0, $a2 -.L8003BC8C: -/* 03C88C 8003BC8C 10000002 */ b .L8003BC98 -/* 03C890 8003BC90 24040002 */ li $a0, 2 -/* 03C894 8003BC94 24040004 */ li $a0, 4 -.L8003BC98: -/* 03C898 8003BC98 914C0010 */ lbu $t4, 0x10($t2) -/* 03C89C 8003BC9C 91420000 */ lbu $v0, ($t2) -/* 03C8A0 8003BCA0 24010087 */ li $at, 135 -/* 03C8A4 8003BCA4 10410004 */ beq $v0, $at, .L8003BCB8 -/* 03C8A8 8003BCA8 008C2024 */ and $a0, $a0, $t4 -/* 03C8AC 8003BCAC 240100D7 */ li $at, 215 -/* 03C8B0 8003BCB0 1441000B */ bne $v0, $at, .L8003BCE0 -/* 03C8B4 8003BCB4 00000000 */ nop -.L8003BCB8: -/* 03C8B8 8003BCB8 AFA4004C */ sw $a0, 0x4c($sp) -/* 03C8BC 8003BCBC AFA80044 */ sw $t0, 0x44($sp) -/* 03C8C0 8003BCC0 0C008D70 */ jal func_800235C0 -/* 03C8C4 8003BCC4 AFA90040 */ sw $t1, 0x40($sp) -/* 03C8C8 8003BCC8 8FA4004C */ lw $a0, 0x4c($sp) -/* 03C8CC 8003BCCC 8FA80044 */ lw $t0, 0x44($sp) -/* 03C8D0 8003BCD0 8FA90040 */ lw $t1, 0x40($sp) -/* 03C8D4 8003BCD4 10400002 */ beqz $v0, .L8003BCE0 -/* 03C8D8 8003BCD8 00000000 */ nop -/* 03C8DC 8003BCDC AFA00050 */ sw $zero, 0x50($sp) -.L8003BCE0: -/* 03C8E0 8003BCE0 810D0015 */ lb $t5, 0x15($t0) -/* 03C8E4 8003BCE4 8FAA0034 */ lw $t2, 0x34($sp) -/* 03C8E8 8003BCE8 15A00012 */ bnez $t5, .L8003BD34 -/* 03C8EC 8003BCEC 24060001 */ li $a2, 1 -/* 03C8F0 8003BCF0 91020012 */ lbu $v0, 0x12($t0) -/* 03C8F4 8003BCF4 1480000A */ bnez $a0, .L8003BD20 -/* 03C8F8 8003BCF8 8FB80050 */ lw $t8, 0x50($sp) -/* 03C8FC 8003BCFC 8FAE0028 */ lw $t6, 0x28($sp) -/* 03C900 8003BD00 8FAF0050 */ lw $t7, 0x50($sp) -/* 03C904 8003BD04 11C00005 */ beqz $t6, .L8003BD1C -/* 03C908 8003BD08 01E2082A */ slt $at, $t7, $v0 -/* 03C90C 8003BD0C 10200004 */ beqz $at, .L8003BD20 -/* 03C910 8003BD10 8FB80050 */ lw $t8, 0x50($sp) -/* 03C914 8003BD14 10000007 */ b .L8003BD34 -/* 03C918 8003BD18 A1060015 */ sb $a2, 0x15($t0) -.L8003BD1C: -/* 03C91C 8003BD1C 8FB80050 */ lw $t8, 0x50($sp) -.L8003BD20: -/* 03C920 8003BD20 244B000A */ addiu $t3, $v0, 0xa -/* 03C924 8003BD24 0178082A */ slt $at, $t3, $t8 -/* 03C928 8003BD28 10200002 */ beqz $at, .L8003BD34 -/* 03C92C 8003BD2C 2419FFFF */ li $t9, -1 -/* 03C930 8003BD30 A1190015 */ sb $t9, 0x15($t0) -.L8003BD34: -/* 03C934 8003BD34 910C000F */ lbu $t4, 0xf($t0) -/* 03C938 8003BD38 8FAE0028 */ lw $t6, 0x28($sp) -/* 03C93C 8003BD3C 318D0002 */ andi $t5, $t4, 2 -/* 03C940 8003BD40 11A0005E */ beqz $t5, .L8003BEBC -/* 03C944 8003BD44 00002825 */ move $a1, $zero -/* 03C948 8003BD48 11C00033 */ beqz $t6, .L8003BE18 -/* 03C94C 8003BD4C 00000000 */ nop -/* 03C950 8003BD50 914F0000 */ lbu $t7, ($t2) -/* 03C954 8003BD54 24010019 */ li $at, 25 -/* 03C958 8003BD58 15E1002F */ bne $t7, $at, .L8003BE18 -/* 03C95C 8003BD5C 00000000 */ nop -/* 03C960 8003BD60 814B0014 */ lb $t3, 0x14($t2) -/* 03C964 8003BD64 8D380004 */ lw $t8, 4($t1) -/* 03C968 8003BD68 000BC880 */ sll $t9, $t3, 2 -/* 03C96C 8003BD6C 03196021 */ addu $t4, $t8, $t9 -/* 03C970 8003BD70 8D820000 */ lw $v0, ($t4) -/* 03C974 8003BD74 00000000 */ nop -/* 03C978 8003BD78 304D0002 */ andi $t5, $v0, 2 -/* 03C97C 8003BD7C 11A00023 */ beqz $t5, .L8003BE0C -/* 03C980 8003BD80 304E0004 */ andi $t6, $v0, 4 -/* 03C984 8003BD84 91220048 */ lbu $v0, 0x48($t1) -/* 03C988 8003BD88 24010005 */ li $at, 5 -/* 03C98C 8003BD8C 10410006 */ beq $v0, $at, .L8003BDA8 -/* 03C990 8003BD90 240F0001 */ li $t7, 1 -/* 03C994 8003BD94 952E000C */ lhu $t6, 0xc($t1) -/* 03C998 8003BD98 004F5804 */ sllv $t3, $t7, $v0 -/* 03C99C 8003BD9C 01CBC024 */ and $t8, $t6, $t3 -/* 03C9A0 8003BDA0 13000012 */ beqz $t8, .L8003BDEC -/* 03C9A4 8003BDA4 00000000 */ nop -.L8003BDA8: -/* 03C9A8 8003BDA8 91590015 */ lbu $t9, 0x15($t2) -/* 03C9AC 8003BDAC 240F0002 */ li $t7, 2 -/* 03C9B0 8003BDB0 332C00FF */ andi $t4, $t9, 0xff -/* 03C9B4 8003BDB4 2981000A */ slti $at, $t4, 0xa -/* 03C9B8 8003BDB8 14200004 */ bnez $at, .L8003BDCC -/* 03C9BC 8003BDBC A1190010 */ sb $t9, 0x10($t0) -/* 03C9C0 8003BDC0 240D0003 */ li $t5, 3 -/* 03C9C4 8003BDC4 10000002 */ b .L8003BDD0 -/* 03C9C8 8003BDC8 A20D003A */ sb $t5, 0x3a($s0) -.L8003BDCC: -/* 03C9CC 8003BDCC A20F003A */ sb $t7, 0x3a($s0) -.L8003BDD0: -/* 03C9D0 8003BDD0 814B0014 */ lb $t3, 0x14($t2) -/* 03C9D4 8003BDD4 8D2E0004 */ lw $t6, 4($t1) -/* 03C9D8 8003BDD8 000BC080 */ sll $t8, $t3, 2 -/* 03C9DC 8003BDDC 01D8C821 */ addu $t9, $t6, $t8 -/* 03C9E0 8003BDE0 8F220000 */ lw $v0, ($t9) -/* 03C9E4 8003BDE4 10000009 */ b .L8003BE0C -/* 03C9E8 8003BDE8 304E0004 */ andi $t6, $v0, 4 -.L8003BDEC: -/* 03C9EC 8003BDEC A200003A */ sb $zero, 0x3a($s0) -/* 03C9F0 8003BDF0 814D0014 */ lb $t5, 0x14($t2) -/* 03C9F4 8003BDF4 8D2C0004 */ lw $t4, 4($t1) -/* 03C9F8 8003BDF8 000D7880 */ sll $t7, $t5, 2 -/* 03C9FC 8003BDFC 018F5821 */ addu $t3, $t4, $t7 -/* 03CA00 8003BE00 8D620000 */ lw $v0, ($t3) -/* 03CA04 8003BE04 00000000 */ nop -/* 03CA08 8003BE08 304E0004 */ andi $t6, $v0, 4 -.L8003BE0C: -/* 03CA0C 8003BE0C 11C00002 */ beqz $t6, .L8003BE18 -/* 03CA10 8003BE10 00000000 */ nop -/* 03CA14 8003BE14 A206003A */ sb $a2, 0x3a($s0) -.L8003BE18: -/* 03CA18 8003BE18 81030015 */ lb $v1, 0x15($t0) -/* 03CA1C 8003BE1C 2401FFFF */ li $at, -1 -/* 03CA20 8003BE20 14C30015 */ bne $a2, $v1, .L8003BE78 -/* 03CA24 8003BE24 00000000 */ nop -/* 03CA28 8003BE28 3C01800E */ lui $at, %hi(D_800E6174) # $at, 0x800e -/* 03CA2C 8003BE2C C5120000 */ lwc1 $f18, ($t0) -/* 03CA30 8003BE30 C4276170 */ lwc1 $f7, %lo(D_800E6170)($at) -/* 03CA34 8003BE34 C4266174 */ lwc1 $f6, %lo(D_800E6174)($at) -/* 03CA38 8003BE38 C6100010 */ lwc1 $f16, 0x10($s0) -/* 03CA3C 8003BE3C 46009121 */ cvt.d.s $f4, $f18 -/* 03CA40 8003BE40 46262200 */ add.d $f8, $f4, $f6 -/* 03CA44 8003BE44 C7AA0030 */ lwc1 $f10, 0x30($sp) -/* 03CA48 8003BE48 460080A1 */ cvt.d.s $f2, $f16 -/* 03CA4C 8003BE4C 4628103C */ c.lt.d $f2, $f8 -/* 03CA50 8003BE50 00000000 */ nop -/* 03CA54 8003BE54 45000064 */ bc1f .L8003BFE8 -/* 03CA58 8003BE58 00000000 */ nop -/* 03CA5C 8003BE5C 46005021 */ cvt.d.s $f0, $f10 -/* 03CA60 8003BE60 46200400 */ add.d $f16, $f0, $f0 -/* 03CA64 8003BE64 24050001 */ li $a1, 1 -/* 03CA68 8003BE68 46301480 */ add.d $f18, $f2, $f16 -/* 03CA6C 8003BE6C 46209120 */ cvt.s.d $f4, $f18 -/* 03CA70 8003BE70 1000005D */ b .L8003BFE8 -/* 03CA74 8003BE74 E6040010 */ swc1 $f4, 0x10($s0) -.L8003BE78: -/* 03CA78 8003BE78 1461005B */ bne $v1, $at, .L8003BFE8 -/* 03CA7C 8003BE7C 00000000 */ nop -/* 03CA80 8003BE80 C6020010 */ lwc1 $f2, 0x10($s0) -/* 03CA84 8003BE84 C5060000 */ lwc1 $f6, ($t0) -/* 03CA88 8003BE88 C7A80030 */ lwc1 $f8, 0x30($sp) -/* 03CA8C 8003BE8C 4602303C */ c.lt.s $f6, $f2 -/* 03CA90 8003BE90 00000000 */ nop -/* 03CA94 8003BE94 45000054 */ bc1f .L8003BFE8 -/* 03CA98 8003BE98 00000000 */ nop -/* 03CA9C 8003BE9C 46004021 */ cvt.d.s $f0, $f8 -/* 03CAA0 8003BEA0 46200400 */ add.d $f16, $f0, $f0 -/* 03CAA4 8003BEA4 24050001 */ li $a1, 1 -/* 03CAA8 8003BEA8 460012A1 */ cvt.d.s $f10, $f2 -/* 03CAAC 8003BEAC 46305481 */ sub.d $f18, $f10, $f16 -/* 03CAB0 8003BEB0 46209120 */ cvt.s.d $f4, $f18 -/* 03CAB4 8003BEB4 1000004C */ b .L8003BFE8 -/* 03CAB8 8003BEB8 E6040010 */ swc1 $f4, 0x10($s0) -.L8003BEBC: -/* 03CABC 8003BEBC 91580000 */ lbu $t8, ($t2) -/* 03CAC0 8003BEC0 240100D7 */ li $at, 215 -/* 03CAC4 8003BEC4 17010025 */ bne $t8, $at, .L8003BF5C -/* 03CAC8 8003BEC8 24190001 */ li $t9, 1 -/* 03CACC 8003BECC A200003A */ sb $zero, 0x3a($s0) -/* 03CAD0 8003BED0 91240048 */ lbu $a0, 0x48($t1) -/* 03CAD4 8003BED4 9523000C */ lhu $v1, 0xc($t1) -/* 03CAD8 8003BED8 00996804 */ sllv $t5, $t9, $a0 -/* 03CADC 8003BEDC 006D6024 */ and $t4, $v1, $t5 -/* 03CAE0 8003BEE0 1180000C */ beqz $t4, .L8003BF14 -/* 03CAE4 8003BEE4 00801025 */ move $v0, $a0 -/* 03CAE8 8003BEE8 8D2F0000 */ lw $t7, ($t1) -/* 03CAEC 8003BEEC 00045840 */ sll $t3, $a0, 1 -/* 03CAF0 8003BEF0 01EB7021 */ addu $t6, $t7, $t3 -/* 03CAF4 8003BEF4 85D80000 */ lh $t8, ($t6) -/* 03CAF8 8003BEF8 24010008 */ li $at, 8 -/* 03CAFC 8003BEFC 17010006 */ bne $t8, $at, .L8003BF18 -/* 03CB00 8003BF00 24590006 */ addiu $t9, $v0, 6 -/* 03CB04 8003BF04 A206003A */ sb $a2, 0x3a($s0) -/* 03CB08 8003BF08 9523000C */ lhu $v1, 0xc($t1) -/* 03CB0C 8003BF0C 91220048 */ lbu $v0, 0x48($t1) -/* 03CB10 8003BF10 00000000 */ nop -.L8003BF14: -/* 03CB14 8003BF14 24590006 */ addiu $t9, $v0, 6 -.L8003BF18: -/* 03CB18 8003BF18 240D0001 */ li $t5, 1 -/* 03CB1C 8003BF1C 032D6004 */ sllv $t4, $t5, $t9 -/* 03CB20 8003BF20 006C7824 */ and $t7, $v1, $t4 -/* 03CB24 8003BF24 11E00005 */ beqz $t7, .L8003BF3C -/* 03CB28 8003BF28 24010005 */ li $at, 5 -/* 03CB2C 8003BF2C 240B0002 */ li $t3, 2 -/* 03CB30 8003BF30 A20B003A */ sb $t3, 0x3a($s0) -/* 03CB34 8003BF34 91220048 */ lbu $v0, 0x48($t1) -/* 03CB38 8003BF38 00000000 */ nop -.L8003BF3C: -/* 03CB3C 8003BF3C 14410007 */ bne $v0, $at, .L8003BF5C -/* 03CB40 8003BF40 00000000 */ nop -/* 03CB44 8003BF44 8202003A */ lb $v0, 0x3a($s0) -/* 03CB48 8003BF48 00000000 */ nop -/* 03CB4C 8003BF4C 28410002 */ slti $at, $v0, 2 -/* 03CB50 8003BF50 10200002 */ beqz $at, .L8003BF5C -/* 03CB54 8003BF54 244E0001 */ addiu $t6, $v0, 1 -/* 03CB58 8003BF58 A20E003A */ sb $t6, 0x3a($s0) -.L8003BF5C: -/* 03CB5C 8003BF5C 81030015 */ lb $v1, 0x15($t0) -/* 03CB60 8003BF60 00001025 */ move $v0, $zero -/* 03CB64 8003BF64 14C30008 */ bne $a2, $v1, .L8003BF88 -/* 03CB68 8003BF68 2401FFFF */ li $at, -1 -/* 03CB6C 8003BF6C 86180000 */ lh $t8, ($s0) -/* 03CB70 8003BF70 8E0D007C */ lw $t5, 0x7c($s0) -/* 03CB74 8003BF74 00000000 */ nop -/* 03CB78 8003BF78 030D1023 */ subu $v0, $t8, $t5 -/* 03CB7C 8003BF7C 0002CC00 */ sll $t9, $v0, 0x10 -/* 03CB80 8003BF80 10000009 */ b .L8003BFA8 -/* 03CB84 8003BF84 00191403 */ sra $v0, $t9, 0x10 -.L8003BF88: -/* 03CB88 8003BF88 14610008 */ bne $v1, $at, .L8003BFAC -/* 03CB8C 8003BF8C 000268C3 */ sra $t5, $v0, 3 -/* 03CB90 8003BF90 860F0000 */ lh $t7, ($s0) -/* 03CB94 8003BF94 8E0B0078 */ lw $t3, 0x78($s0) -/* 03CB98 8003BF98 00000000 */ nop -/* 03CB9C 8003BF9C 01EB1023 */ subu $v0, $t7, $t3 -/* 03CBA0 8003BFA0 00027400 */ sll $t6, $v0, 0x10 -/* 03CBA4 8003BFA4 000E1403 */ sra $v0, $t6, 0x10 -.L8003BFA8: -/* 03CBA8 8003BFA8 000268C3 */ sra $t5, $v0, 3 -.L8003BFAC: -/* 03CBAC 8003BFAC 000DCC00 */ sll $t9, $t5, 0x10 -/* 03CBB0 8003BFB0 00191403 */ sra $v0, $t9, 0x10 -/* 03CBB4 8003BFB4 28410201 */ slti $at, $v0, 0x201 -/* 03CBB8 8003BFB8 86030000 */ lh $v1, ($s0) -/* 03CBBC 8003BFBC 14200003 */ bnez $at, .L8003BFCC -/* 03CBC0 8003BFC0 2841FE00 */ slti $at, $v0, -0x200 -/* 03CBC4 8003BFC4 24020200 */ li $v0, 512 -/* 03CBC8 8003BFC8 2841FE00 */ slti $at, $v0, -0x200 -.L8003BFCC: -/* 03CBCC 8003BFCC 10200003 */ beqz $at, .L8003BFDC -/* 03CBD0 8003BFD0 00627823 */ subu $t7, $v1, $v0 -/* 03CBD4 8003BFD4 2402FE00 */ li $v0, -512 -/* 03CBD8 8003BFD8 00627823 */ subu $t7, $v1, $v0 -.L8003BFDC: -/* 03CBDC 8003BFDC 10400002 */ beqz $v0, .L8003BFE8 -/* 03CBE0 8003BFE0 A60F0000 */ sh $t7, ($s0) -/* 03CBE4 8003BFE4 24050001 */ li $a1, 1 -.L8003BFE8: -/* 03CBE8 8003BFE8 10A00013 */ beqz $a1, .L8003C038 -/* 03CBEC 8003BFEC 00000000 */ nop -/* 03CBF0 8003BFF0 8D0B0004 */ lw $t3, 4($t0) -/* 03CBF4 8003BFF4 24040222 */ li $a0, 546 -/* 03CBF8 8003BFF8 1560001B */ bnez $t3, .L8003C068 -/* 03CBFC 8003BFFC 240E0001 */ li $t6, 1 -/* 03CC00 8003C000 8E05000C */ lw $a1, 0xc($s0) -/* 03CC04 8003C004 8E060010 */ lw $a2, 0x10($s0) -/* 03CC08 8003C008 8E070014 */ lw $a3, 0x14($s0) -/* 03CC0C 8003C00C 25180004 */ addiu $t8, $t0, 4 -/* 03CC10 8003C010 AFB80014 */ sw $t8, 0x14($sp) -/* 03CC14 8003C014 AFA90040 */ sw $t1, 0x40($sp) -/* 03CC18 8003C018 AFA80044 */ sw $t0, 0x44($sp) -/* 03CC1C 8003C01C 0C002556 */ jal func_80009558 -/* 03CC20 8003C020 AFAE0010 */ sw $t6, 0x10($sp) -/* 03CC24 8003C024 8FA80044 */ lw $t0, 0x44($sp) -/* 03CC28 8003C028 8FA90040 */ lw $t1, 0x40($sp) -/* 03CC2C 8003C02C 8FAA0034 */ lw $t2, 0x34($sp) -/* 03CC30 8003C030 1000000E */ b .L8003C06C -/* 03CC34 8003C034 81020014 */ lb $v0, 0x14($t0) -.L8003C038: -/* 03CC38 8003C038 8D020004 */ lw $v0, 4($t0) -/* 03CC3C 8003C03C A1000015 */ sb $zero, 0x15($t0) -/* 03CC40 8003C040 10400009 */ beqz $v0, .L8003C068 -/* 03CC44 8003C044 00402025 */ move $a0, $v0 -/* 03CC48 8003C048 AFA80044 */ sw $t0, 0x44($sp) -/* 03CC4C 8003C04C 0C0025BE */ jal func_800096F8 -/* 03CC50 8003C050 AFA90040 */ sw $t1, 0x40($sp) -/* 03CC54 8003C054 8FA80044 */ lw $t0, 0x44($sp) -/* 03CC58 8003C058 8FA90040 */ lw $t1, 0x40($sp) -/* 03CC5C 8003C05C AD000004 */ sw $zero, 4($t0) -/* 03CC60 8003C060 8FAA0034 */ lw $t2, 0x34($sp) -/* 03CC64 8003C064 00000000 */ nop -.L8003C068: -/* 03CC68 8003C068 81020014 */ lb $v0, 0x14($t0) -.L8003C06C: -/* 03CC6C 8003C06C 240D0001 */ li $t5, 1 -/* 03CC70 8003C070 04400010 */ bltz $v0, .L8003C0B4 -/* 03CC74 8003C074 00000000 */ nop -/* 03CC78 8003C078 95390008 */ lhu $t9, 8($t1) -/* 03CC7C 8003C07C 004D2004 */ sllv $a0, $t5, $v0 -/* 03CC80 8003C080 03246024 */ and $t4, $t9, $a0 -/* 03CC84 8003C084 11800043 */ beqz $t4, .L8003C194 -/* 03CC88 8003C088 00000000 */ nop -/* 03CC8C 8003C08C 912B0049 */ lbu $t3, 0x49($t1) -/* 03CC90 8003C090 8D2F0004 */ lw $t7, 4($t1) -/* 03CC94 8003C094 000B7080 */ sll $t6, $t3, 2 -/* 03CC98 8003C098 01EE1021 */ addu $v0, $t7, $t6 -/* 03CC9C 8003C09C 8C580000 */ lw $t8, ($v0) -/* 03CCA0 8003C0A0 8FAD0054 */ lw $t5, 0x54($sp) -/* 03CCA4 8003C0A4 00000000 */ nop -/* 03CCA8 8003C0A8 030DC825 */ or $t9, $t8, $t5 -/* 03CCAC 8003C0AC 10000039 */ b .L8003C194 -/* 03CCB0 8003C0B0 AC590000 */ sw $t9, ($v0) -.L8003C0B4: -/* 03CCB4 8003C0B4 814C0013 */ lb $t4, 0x13($t2) -/* 03CCB8 8003C0B8 8D230004 */ lw $v1, 4($t1) -/* 03CCBC 8003C0BC 1580001A */ bnez $t4, .L8003C128 -/* 03CCC0 8003C0C0 00000000 */ nop -/* 03CCC4 8003C0C4 8D2B0000 */ lw $t3, ($t1) -/* 03CCC8 8003C0C8 910E0010 */ lbu $t6, 0x10($t0) -/* 03CCCC 8003C0CC 856F0000 */ lh $t7, ($t3) -/* 03CCD0 8003C0D0 00000000 */ nop -/* 03CCD4 8003C0D4 01EE082A */ slt $at, $t7, $t6 -/* 03CCD8 8003C0D8 1420000A */ bnez $at, .L8003C104 -/* 03CCDC 8003C0DC 00000000 */ nop -/* 03CCE0 8003C0E0 91380049 */ lbu $t8, 0x49($t1) -/* 03CCE4 8003C0E4 8FAC0054 */ lw $t4, 0x54($sp) -/* 03CCE8 8003C0E8 00186880 */ sll $t5, $t8, 2 -/* 03CCEC 8003C0EC 006D1021 */ addu $v0, $v1, $t5 -/* 03CCF0 8003C0F0 8C590000 */ lw $t9, ($v0) -/* 03CCF4 8003C0F4 00000000 */ nop -/* 03CCF8 8003C0F8 032C5825 */ or $t3, $t9, $t4 -/* 03CCFC 8003C0FC 10000025 */ b .L8003C194 -/* 03CD00 8003C100 AC4B0000 */ sw $t3, ($v0) -.L8003C104: -/* 03CD04 8003C104 912F0049 */ lbu $t7, 0x49($t1) -/* 03CD08 8003C108 8FAD0054 */ lw $t5, 0x54($sp) -/* 03CD0C 8003C10C 000F7080 */ sll $t6, $t7, 2 -/* 03CD10 8003C110 006E1021 */ addu $v0, $v1, $t6 -/* 03CD14 8003C114 8C580000 */ lw $t8, ($v0) -/* 03CD18 8003C118 01A0C827 */ not $t9, $t5 -/* 03CD1C 8003C11C 03196024 */ and $t4, $t8, $t9 -/* 03CD20 8003C120 1000001C */ b .L8003C194 -/* 03CD24 8003C124 AC4C0000 */ sw $t4, ($v0) -.L8003C128: -/* 03CD28 8003C128 912F0048 */ lbu $t7, 0x48($t1) -/* 03CD2C 8003C12C 8D2B0000 */ lw $t3, ($t1) -/* 03CD30 8003C130 000F7040 */ sll $t6, $t7, 1 -/* 03CD34 8003C134 016E6821 */ addu $t5, $t3, $t6 -/* 03CD38 8003C138 85B80000 */ lh $t8, ($t5) -/* 03CD3C 8003C13C 91190010 */ lbu $t9, 0x10($t0) -/* 03CD40 8003C140 00000000 */ nop -/* 03CD44 8003C144 0319082A */ slt $at, $t8, $t9 -/* 03CD48 8003C148 1420000A */ bnez $at, .L8003C174 -/* 03CD4C 8003C14C 00000000 */ nop -/* 03CD50 8003C150 912C0049 */ lbu $t4, 0x49($t1) -/* 03CD54 8003C154 8FAE0054 */ lw $t6, 0x54($sp) -/* 03CD58 8003C158 000C7880 */ sll $t7, $t4, 2 -/* 03CD5C 8003C15C 006F1021 */ addu $v0, $v1, $t7 -/* 03CD60 8003C160 8C4B0000 */ lw $t3, ($v0) -/* 03CD64 8003C164 00000000 */ nop -/* 03CD68 8003C168 016E6825 */ or $t5, $t3, $t6 -/* 03CD6C 8003C16C 10000009 */ b .L8003C194 -/* 03CD70 8003C170 AC4D0000 */ sw $t5, ($v0) -.L8003C174: -/* 03CD74 8003C174 91380049 */ lbu $t8, 0x49($t1) -/* 03CD78 8003C178 8FAF0054 */ lw $t7, 0x54($sp) -/* 03CD7C 8003C17C 0018C880 */ sll $t9, $t8, 2 -/* 03CD80 8003C180 00791021 */ addu $v0, $v1, $t9 -/* 03CD84 8003C184 8C4C0000 */ lw $t4, ($v0) -/* 03CD88 8003C188 01E05827 */ not $t3, $t7 -/* 03CD8C 8003C18C 018B7024 */ and $t6, $t4, $t3 -/* 03CD90 8003C190 AC4E0000 */ sw $t6, ($v0) -.L8003C194: -/* 03CD94 8003C194 8E18004C */ lw $t8, 0x4c($s0) -/* 03CD98 8003C198 240D00FF */ li $t5, 255 -/* 03CD9C 8003C19C A30D0013 */ sb $t5, 0x13($t8) -/* 03CDA0 8003C1A0 8E19004C */ lw $t9, 0x4c($s0) -/* 03CDA4 8003C1A4 00000000 */ nop -/* 03CDA8 8003C1A8 AF200000 */ sw $zero, ($t9) -/* 03CDAC 8003C1AC 8E02004C */ lw $v0, 0x4c($s0) -/* 03CDB0 8003C1B0 00000000 */ nop -/* 03CDB4 8003C1B4 844F0014 */ lh $t7, 0x14($v0) -/* 03CDB8 8003C1B8 00000000 */ nop -/* 03CDBC 8003C1BC 31ECFFF7 */ andi $t4, $t7, 0xfff7 -/* 03CDC0 8003C1C0 A44C0014 */ sh $t4, 0x14($v0) -/* 03CDC4 8003C1C4 8E0B005C */ lw $t3, 0x5c($s0) -/* 03CDC8 8003C1C8 00000000 */ nop -/* 03CDCC 8003C1CC AD600100 */ sw $zero, 0x100($t3) -/* 03CDD0 8003C1D0 8FBF0024 */ lw $ra, 0x24($sp) -/* 03CDD4 8003C1D4 8FB00020 */ lw $s0, 0x20($sp) -/* 03CDD8 8003C1D8 03E00008 */ jr $ra -/* 03CDDC 8003C1DC 27BD0060 */ addiu $sp, $sp, 0x60 - -glabel func_8003C1E0 -/* 03CDE0 8003C1E0 A080003A */ sb $zero, 0x3a($a0) -/* 03CDE4 8003C1E4 90AF0008 */ lbu $t7, 8($a1) -/* 03CDE8 8003C1E8 8C820064 */ lw $v0, 0x64($a0) -/* 03CDEC 8003C1EC 000FC280 */ sll $t8, $t7, 0xa -/* 03CDF0 8003C1F0 A4980000 */ sh $t8, ($a0) -/* 03CDF4 8003C1F4 80B9000E */ lb $t9, 0xe($a1) -/* 03CDF8 8003C1F8 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 03CDFC 8003C1FC A059000F */ sb $t9, 0xf($v0) -/* 03CE00 8003C200 90A8000B */ lbu $t0, 0xb($a1) -/* 03CE04 8003C204 44811000 */ mtc1 $at, $f2 -/* 03CE08 8003C208 A0480013 */ sb $t0, 0x13($v0) -/* 03CE0C 8003C20C C4840010 */ lwc1 $f4, 0x10($a0) -/* 03CE10 8003C210 AC400008 */ sw $zero, 8($v0) -/* 03CE14 8003C214 E4440000 */ swc1 $f4, ($v0) -/* 03CE18 8003C218 90A9000A */ lbu $t1, 0xa($a1) -/* 03CE1C 8003C21C 3C014280 */ li $at, 0x42800000 # 64.000000 -/* 03CE20 8003C220 A0490012 */ sb $t1, 0x12($v0) -/* 03CE24 8003C224 848A0000 */ lh $t2, ($a0) -/* 03CE28 8003C228 44814000 */ mtc1 $at, $f8 -/* 03CE2C 8003C22C AC8A0078 */ sw $t2, 0x78($a0) -/* 03CE30 8003C230 90AB0009 */ lbu $t3, 9($a1) -/* 03CE34 8003C234 00000000 */ nop -/* 03CE38 8003C238 316C003F */ andi $t4, $t3, 0x3f -/* 03CE3C 8003C23C 000C6A80 */ sll $t5, $t4, 0xa -/* 03CE40 8003C240 AC8D007C */ sw $t5, 0x7c($a0) -/* 03CE44 8003C244 90AF000C */ lbu $t7, 0xc($a1) -/* 03CE48 8003C248 00000000 */ nop -/* 03CE4C 8003C24C 448F3000 */ mtc1 $t7, $f6 -/* 03CE50 8003C250 00000000 */ nop -/* 03CE54 8003C254 46803020 */ cvt.s.w $f0, $f6 -/* 03CE58 8003C258 4602003C */ c.lt.s $f0, $f2 -/* 03CE5C 8003C25C 00000000 */ nop -/* 03CE60 8003C260 45000003 */ bc1f .L8003C270 -/* 03CE64 8003C264 00000000 */ nop -/* 03CE68 8003C268 46001006 */ mov.s $f0, $f2 -/* 03CE6C 8003C26C 00000000 */ nop -.L8003C270: -/* 03CE70 8003C270 46080003 */ div.s $f0, $f0, $f8 -/* 03CE74 8003C274 8C980040 */ lw $t8, 0x40($a0) -/* 03CE78 8003C278 8C88004C */ lw $t0, 0x4c($a0) -/* 03CE7C 8003C27C C70A000C */ lwc1 $f10, 0xc($t8) -/* 03CE80 8003C280 24190021 */ li $t9, 33 -/* 03CE84 8003C284 24090002 */ li $t1, 2 -/* 03CE88 8003C288 240B0014 */ li $t3, 20 -/* 03CE8C 8003C28C 46005402 */ mul.s $f16, $f10, $f0 -/* 03CE90 8003C290 E4900008 */ swc1 $f16, 8($a0) -/* 03CE94 8003C294 A5190014 */ sh $t9, 0x14($t0) -/* 03CE98 8003C298 8C8A004C */ lw $t2, 0x4c($a0) -/* 03CE9C 8003C29C 00000000 */ nop -/* 03CEA0 8003C2A0 A1490011 */ sb $t1, 0x11($t2) -/* 03CEA4 8003C2A4 8C8C004C */ lw $t4, 0x4c($a0) -/* 03CEA8 8003C2A8 00000000 */ nop -/* 03CEAC 8003C2AC A18B0010 */ sb $t3, 0x10($t4) -/* 03CEB0 8003C2B0 8C8D004C */ lw $t5, 0x4c($a0) -/* 03CEB4 8003C2B4 00000000 */ nop -/* 03CEB8 8003C2B8 A1A00012 */ sb $zero, 0x12($t5) -/* 03CEBC 8003C2BC 8C8F0040 */ lw $t7, 0x40($a0) -/* 03CEC0 8003C2C0 808E003A */ lb $t6, 0x3a($a0) -/* 03CEC4 8003C2C4 81F80055 */ lb $t8, 0x55($t7) -/* 03CEC8 8003C2C8 00000000 */ nop -/* 03CECC 8003C2CC 01D8082A */ slt $at, $t6, $t8 -/* 03CED0 8003C2D0 14200002 */ bnez $at, .L8003C2DC -/* 03CED4 8003C2D4 00000000 */ nop -/* 03CED8 8003C2D8 A080003A */ sb $zero, 0x3a($a0) -.L8003C2DC: -/* 03CEDC 8003C2DC 03E00008 */ jr $ra -/* 03CEE0 8003C2E0 00000000 */ nop - -glabel func_8003C2E4 -/* 03CEE4 8003C2E4 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 03CEE8 8003C2E8 AFBF0024 */ sw $ra, 0x24($sp) -/* 03CEEC 8003C2EC AFB10020 */ sw $s1, 0x20($sp) -/* 03CEF0 8003C2F0 AFB0001C */ sw $s0, 0x1c($sp) -/* 03CEF4 8003C2F4 AFA50034 */ sw $a1, 0x34($sp) -/* 03CEF8 8003C2F8 8C900064 */ lw $s0, 0x64($a0) -/* 03CEFC 8003C2FC 0C01BAA4 */ jal func_8006EA90 -/* 03CF00 8003C300 00808825 */ move $s1, $a0 -/* 03CF04 8003C304 AFA2002C */ sw $v0, 0x2c($sp) -/* 03CF08 8003C308 920E000F */ lbu $t6, 0xf($s0) -/* 03CF0C 8003C30C 00000000 */ nop -/* 03CF10 8003C310 15C00007 */ bnez $t6, .L8003C330 -/* 03CF14 8003C314 00000000 */ nop -/* 03CF18 8003C318 904F0016 */ lbu $t7, 0x16($v0) -/* 03CF1C 8003C31C 3C18800E */ lui $t8, 0x800e -/* 03CF20 8003C320 030FC021 */ addu $t8, $t8, $t7 -/* 03CF24 8003C324 8318CA94 */ lb $t8, -0x356c($t8) -/* 03CF28 8003C328 10000007 */ b .L8003C348 -/* 03CF2C 8003C32C A238003A */ sb $t8, 0x3a($s1) -.L8003C330: -/* 03CF30 8003C330 90590016 */ lbu $t9, 0x16($v0) -/* 03CF34 8003C334 3C08800E */ lui $t0, 0x800e -/* 03CF38 8003C338 01194021 */ addu $t0, $t0, $t9 -/* 03CF3C 8003C33C 8108CA9C */ lb $t0, -0x3564($t0) -/* 03CF40 8003C340 00000000 */ nop -/* 03CF44 8003C344 A228003A */ sb $t0, 0x3a($s1) -.L8003C348: -/* 03CF48 8003C348 8E23004C */ lw $v1, 0x4c($s1) -/* 03CF4C 8003C34C 920A0012 */ lbu $t2, 0x12($s0) -/* 03CF50 8003C350 90690013 */ lbu $t1, 0x13($v1) -/* 03CF54 8003C354 00000000 */ nop -/* 03CF58 8003C358 012A082A */ slt $at, $t1, $t2 -/* 03CF5C 8003C35C 10200043 */ beqz $at, .L8003C46C -/* 03CF60 8003C360 00000000 */ nop -/* 03CF64 8003C364 904B0016 */ lbu $t3, 0x16($v0) -/* 03CF68 8003C368 00000000 */ nop -/* 03CF6C 8003C36C 29610004 */ slti $at, $t3, 4 -/* 03CF70 8003C370 14200008 */ bnez $at, .L8003C394 -/* 03CF74 8003C374 00000000 */ nop -/* 03CF78 8003C378 8C4C0000 */ lw $t4, ($v0) -/* 03CF7C 8003C37C 00000000 */ nop -/* 03CF80 8003C380 858D0000 */ lh $t5, ($t4) -/* 03CF84 8003C384 00000000 */ nop -/* 03CF88 8003C388 29A1002F */ slti $at, $t5, 0x2f -/* 03CF8C 8003C38C 10200037 */ beqz $at, .L8003C46C -/* 03CF90 8003C390 00000000 */ nop -.L8003C394: -/* 03CF94 8003C394 8C620000 */ lw $v0, ($v1) -/* 03CF98 8003C398 00000000 */ nop -/* 03CF9C 8003C39C 10400033 */ beqz $v0, .L8003C46C -/* 03CFA0 8003C3A0 00000000 */ nop -/* 03CFA4 8003C3A4 8C4E0040 */ lw $t6, 0x40($v0) -/* 03CFA8 8003C3A8 24010001 */ li $at, 1 -/* 03CFAC 8003C3AC 81CF0054 */ lb $t7, 0x54($t6) -/* 03CFB0 8003C3B0 00000000 */ nop -/* 03CFB4 8003C3B4 15E1002D */ bne $t7, $at, .L8003C46C -/* 03CFB8 8003C3B8 00000000 */ nop -/* 03CFBC 8003C3BC 8C430064 */ lw $v1, 0x64($v0) -/* 03CFC0 8003C3C0 2404FFFF */ li $a0, -1 -/* 03CFC4 8003C3C4 84780000 */ lh $t8, ($v1) -/* 03CFC8 8003C3C8 00000000 */ nop -/* 03CFCC 8003C3CC 10980022 */ beq $a0, $t8, .L8003C458 -/* 03CFD0 8003C3D0 00000000 */ nop -/* 03CFD4 8003C3D4 8E39005C */ lw $t9, 0x5c($s1) -/* 03CFD8 8003C3D8 00000000 */ nop -/* 03CFDC 8003C3DC 8F280100 */ lw $t0, 0x100($t9) -/* 03CFE0 8003C3E0 00000000 */ nop -/* 03CFE4 8003C3E4 1448001C */ bne $v0, $t0, .L8003C458 -/* 03CFE8 8003C3E8 00000000 */ nop -/* 03CFEC 8003C3EC 82090013 */ lb $t1, 0x13($s0) -/* 03CFF0 8003C3F0 00000000 */ nop -/* 03CFF4 8003C3F4 10890017 */ beq $a0, $t1, .L8003C454 -/* 03CFF8 8003C3F8 240D012C */ li $t5, 300 -/* 03CFFC 8003C3FC 0C030D00 */ jal func_800C3400 -/* 03D000 8003C400 00000000 */ nop -/* 03D004 8003C404 14400013 */ bnez $v0, .L8003C454 -/* 03D008 8003C408 240D012C */ li $t5, 300 -/* 03D00C 8003C40C 860A000C */ lh $t2, 0xc($s0) -/* 03D010 8003C410 00000000 */ nop -/* 03D014 8003C414 1540000F */ bnez $t2, .L8003C454 -/* 03D018 8003C418 240D012C */ li $t5, 300 -/* 03D01C 8003C41C 0C000326 */ jal func_80000C98 -/* 03D020 8003C420 2404FFF8 */ li $a0, -8 -/* 03D024 8003C424 240B008C */ li $t3, 140 -/* 03D028 8003C428 AE0B0008 */ sw $t3, 8($s0) -/* 03D02C 8003C42C 0C00030E */ jal func_80000C38 -/* 03D030 8003C430 24040010 */ li $a0, 16 -/* 03D034 8003C434 0C0006F0 */ jal func_80001BC0 -/* 03D038 8003C438 24040011 */ li $a0, 17 -/* 03D03C 8003C43C 82040013 */ lb $a0, 0x13($s0) -/* 03D040 8003C440 00000000 */ nop -/* 03D044 8003C444 308C00FF */ andi $t4, $a0, 0xff -/* 03D048 8003C448 0C030C7B */ jal func_800C31EC -/* 03D04C 8003C44C 01802025 */ move $a0, $t4 -/* 03D050 8003C450 240D012C */ li $t5, 300 -.L8003C454: -/* 03D054 8003C454 A60D000C */ sh $t5, 0xc($s0) -.L8003C458: -/* 03D058 8003C458 0C030D00 */ jal func_800C3400 -/* 03D05C 8003C45C 00000000 */ nop -/* 03D060 8003C460 10400002 */ beqz $v0, .L8003C46C -/* 03D064 8003C464 240E012C */ li $t6, 300 -/* 03D068 8003C468 A60E000C */ sh $t6, 0xc($s0) -.L8003C46C: -/* 03D06C 8003C46C 8E0F0008 */ lw $t7, 8($s0) -/* 03D070 8003C470 00000000 */ nop -/* 03D074 8003C474 11E00011 */ beqz $t7, .L8003C4BC -/* 03D078 8003C478 00000000 */ nop -/* 03D07C 8003C47C 0C000702 */ jal func_80001C08 -/* 03D080 8003C480 00000000 */ nop -/* 03D084 8003C484 1440000D */ bnez $v0, .L8003C4BC -/* 03D088 8003C488 00000000 */ nop -/* 03D08C 8003C48C 8FA30034 */ lw $v1, 0x34($sp) -/* 03D090 8003C490 8E020008 */ lw $v0, 8($s0) -/* 03D094 8003C494 24040008 */ li $a0, 8 -/* 03D098 8003C498 0062082A */ slt $at, $v1, $v0 -/* 03D09C 8003C49C 10200003 */ beqz $at, .L8003C4AC -/* 03D0A0 8003C4A0 0043C023 */ subu $t8, $v0, $v1 -/* 03D0A4 8003C4A4 10000005 */ b .L8003C4BC -/* 03D0A8 8003C4A8 AE180008 */ sw $t8, 8($s0) -.L8003C4AC: -/* 03D0AC 8003C4AC 0C000326 */ jal func_80000C98 -/* 03D0B0 8003C4B0 AE000008 */ sw $zero, 8($s0) -/* 03D0B4 8003C4B4 0C00030E */ jal func_80000C38 -/* 03D0B8 8003C4B8 24040006 */ li $a0, 6 -.L8003C4BC: -/* 03D0BC 8003C4BC 8602000C */ lh $v0, 0xc($s0) -/* 03D0C0 8003C4C0 8FA30034 */ lw $v1, 0x34($sp) -/* 03D0C4 8003C4C4 18400003 */ blez $v0, .L8003C4D4 -/* 03D0C8 8003C4C8 0043C823 */ subu $t9, $v0, $v1 -/* 03D0CC 8003C4CC 10000002 */ b .L8003C4D8 -/* 03D0D0 8003C4D0 A619000C */ sh $t9, 0xc($s0) -.L8003C4D4: -/* 03D0D4 8003C4D4 A600000C */ sh $zero, 0xc($s0) -.L8003C4D8: -/* 03D0D8 8003C4D8 8FA8002C */ lw $t0, 0x2c($sp) -/* 03D0DC 8003C4DC 24040001 */ li $a0, 1 -/* 03D0E0 8003C4E0 91090016 */ lbu $t1, 0x16($t0) -/* 03D0E4 8003C4E4 00000000 */ nop -/* 03D0E8 8003C4E8 29210004 */ slti $at, $t1, 4 -/* 03D0EC 8003C4EC 14200016 */ bnez $at, .L8003C548 -/* 03D0F0 8003C4F0 00000000 */ nop -/* 03D0F4 8003C4F4 8E2A004C */ lw $t2, 0x4c($s1) -/* 03D0F8 8003C4F8 920C0012 */ lbu $t4, 0x12($s0) -/* 03D0FC 8003C4FC 914B0013 */ lbu $t3, 0x13($t2) -/* 03D100 8003C500 00000000 */ nop -/* 03D104 8003C504 016C082A */ slt $at, $t3, $t4 -/* 03D108 8003C508 1020000F */ beqz $at, .L8003C548 -/* 03D10C 8003C50C 00000000 */ nop -/* 03D110 8003C510 8D0D0000 */ lw $t5, ($t0) -/* 03D114 8003C514 00000000 */ nop -/* 03D118 8003C518 85AE0000 */ lh $t6, ($t5) -/* 03D11C 8003C51C 00000000 */ nop -/* 03D120 8003C520 29C1002F */ slti $at, $t6, 0x2f -/* 03D124 8003C524 14200008 */ bnez $at, .L8003C548 -/* 03D128 8003C528 00000000 */ nop -/* 03D12C 8003C52C 86230000 */ lh $v1, ($s1) -/* 03D130 8003C530 8E2F007C */ lw $t7, 0x7c($s1) -/* 03D134 8003C534 00000000 */ nop -/* 03D138 8003C538 006F1023 */ subu $v0, $v1, $t7 -/* 03D13C 8003C53C 0002C400 */ sll $t8, $v0, 0x10 -/* 03D140 8003C540 10000007 */ b .L8003C560 -/* 03D144 8003C544 00181403 */ sra $v0, $t8, 0x10 -.L8003C548: -/* 03D148 8003C548 86230000 */ lh $v1, ($s1) -/* 03D14C 8003C54C 8E290078 */ lw $t1, 0x78($s1) -/* 03D150 8003C550 00000000 */ nop -/* 03D154 8003C554 00691023 */ subu $v0, $v1, $t1 -/* 03D158 8003C558 00025400 */ sll $t2, $v0, 0x10 -/* 03D15C 8003C55C 000A1403 */ sra $v0, $t2, 0x10 -.L8003C560: -/* 03D160 8003C560 000260C3 */ sra $t4, $v0, 3 -/* 03D164 8003C564 000C4400 */ sll $t0, $t4, 0x10 -/* 03D168 8003C568 00081403 */ sra $v0, $t0, 0x10 -/* 03D16C 8003C56C 28410201 */ slti $at, $v0, 0x201 -/* 03D170 8003C570 14200003 */ bnez $at, .L8003C580 -/* 03D174 8003C574 2841FE00 */ slti $at, $v0, -0x200 -/* 03D178 8003C578 24020200 */ li $v0, 512 -/* 03D17C 8003C57C 2841FE00 */ slti $at, $v0, -0x200 -.L8003C580: -/* 03D180 8003C580 10200003 */ beqz $at, .L8003C590 -/* 03D184 8003C584 00627023 */ subu $t6, $v1, $v0 -/* 03D188 8003C588 2402FE00 */ li $v0, -512 -/* 03D18C 8003C58C 00627023 */ subu $t6, $v1, $v0 -.L8003C590: -/* 03D190 8003C590 14400002 */ bnez $v0, .L8003C59C -/* 03D194 8003C594 A62E0000 */ sh $t6, ($s1) -/* 03D198 8003C598 00002025 */ move $a0, $zero -.L8003C59C: -/* 03D19C 8003C59C 1080000E */ beqz $a0, .L8003C5D8 -/* 03D1A0 8003C5A0 00000000 */ nop -/* 03D1A4 8003C5A4 8E0F0004 */ lw $t7, 4($s0) -/* 03D1A8 8003C5A8 24040222 */ li $a0, 546 -/* 03D1AC 8003C5AC 15E00011 */ bnez $t7, .L8003C5F4 -/* 03D1B0 8003C5B0 24180001 */ li $t8, 1 -/* 03D1B4 8003C5B4 8E25000C */ lw $a1, 0xc($s1) -/* 03D1B8 8003C5B8 8E260010 */ lw $a2, 0x10($s1) -/* 03D1BC 8003C5BC 8E270014 */ lw $a3, 0x14($s1) -/* 03D1C0 8003C5C0 26190004 */ addiu $t9, $s0, 4 -/* 03D1C4 8003C5C4 AFB90014 */ sw $t9, 0x14($sp) -/* 03D1C8 8003C5C8 0C002556 */ jal func_80009558 -/* 03D1CC 8003C5CC AFB80010 */ sw $t8, 0x10($sp) -/* 03D1D0 8003C5D0 10000009 */ b .L8003C5F8 -/* 03D1D4 8003C5D4 8E2A004C */ lw $t2, 0x4c($s1) -.L8003C5D8: -/* 03D1D8 8003C5D8 8E020004 */ lw $v0, 4($s0) -/* 03D1DC 8003C5DC 00000000 */ nop -/* 03D1E0 8003C5E0 10400004 */ beqz $v0, .L8003C5F4 -/* 03D1E4 8003C5E4 00000000 */ nop -/* 03D1E8 8003C5E8 0C0025BE */ jal func_800096F8 -/* 03D1EC 8003C5EC 00402025 */ move $a0, $v0 -/* 03D1F0 8003C5F0 AE000004 */ sw $zero, 4($s0) -.L8003C5F4: -/* 03D1F4 8003C5F4 8E2A004C */ lw $t2, 0x4c($s1) -.L8003C5F8: -/* 03D1F8 8003C5F8 240900FF */ li $t1, 255 -/* 03D1FC 8003C5FC A1490013 */ sb $t1, 0x13($t2) -/* 03D200 8003C600 8E2B004C */ lw $t3, 0x4c($s1) -/* 03D204 8003C604 00000000 */ nop -/* 03D208 8003C608 AD600000 */ sw $zero, ($t3) -/* 03D20C 8003C60C 8E23004C */ lw $v1, 0x4c($s1) -/* 03D210 8003C610 00000000 */ nop -/* 03D214 8003C614 846C0014 */ lh $t4, 0x14($v1) -/* 03D218 8003C618 00000000 */ nop -/* 03D21C 8003C61C 3188FFF7 */ andi $t0, $t4, 0xfff7 -/* 03D220 8003C620 A4680014 */ sh $t0, 0x14($v1) -/* 03D224 8003C624 8E2D005C */ lw $t5, 0x5c($s1) -/* 03D228 8003C628 00000000 */ nop -/* 03D22C 8003C62C ADA00100 */ sw $zero, 0x100($t5) -/* 03D230 8003C630 8FBF0024 */ lw $ra, 0x24($sp) -/* 03D234 8003C634 8FB10020 */ lw $s1, 0x20($sp) -/* 03D238 8003C638 8FB0001C */ lw $s0, 0x1c($sp) -/* 03D23C 8003C63C 03E00008 */ jr $ra -/* 03D240 8003C640 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_8003C644 -/* 03D244 8003C644 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 03D248 8003C648 AFBF001C */ sw $ra, 0x1c($sp) -/* 03D24C 8003C64C AFB10018 */ sw $s1, 0x18($sp) -/* 03D250 8003C650 AFB00014 */ sw $s0, 0x14($sp) -/* 03D254 8003C654 80A60009 */ lb $a2, 9($a1) -/* 03D258 8003C658 2401FFFF */ li $at, -1 -/* 03D25C 8003C65C 00808025 */ move $s0, $a0 -/* 03D260 8003C660 14C10005 */ bne $a2, $at, .L8003C678 -/* 03D264 8003C664 00A08825 */ move $s1, $a1 -/* 03D268 8003C668 0C003308 */ jal func_8000CC20 -/* 03D26C 8003C66C 00000000 */ nop -/* 03D270 8003C670 10000004 */ b .L8003C684 -/* 03D274 8003C674 A2220009 */ sb $v0, 9($s1) -.L8003C678: -/* 03D278 8003C678 02002025 */ move $a0, $s0 -/* 03D27C 8003C67C 0C0032FC */ jal func_8000CBF0 -/* 03D280 8003C680 00C02825 */ move $a1, $a2 -.L8003C684: -/* 03D284 8003C684 822E0009 */ lb $t6, 9($s1) -/* 03D288 8003C688 2401FFFF */ li $at, -1 -/* 03D28C 8003C68C 15C10003 */ bne $t6, $at, .L8003C69C -/* 03D290 8003C690 3C04800E */ lui $a0, %hi(D_800E5FC8) # $a0, 0x800e -/* 03D294 8003C694 0C032755 */ jal func_800C9D54 -/* 03D298 8003C698 24845FC8 */ addiu $a0, %lo(D_800E5FC8) # addiu $a0, $a0, 0x5fc8 -.L8003C69C: -/* 03D29C 8003C69C 92380008 */ lbu $t8, 8($s1) -/* 03D2A0 8003C6A0 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 03D2A4 8003C6A4 44982000 */ mtc1 $t8, $f4 -/* 03D2A8 8003C6A8 44811000 */ mtc1 $at, $f2 -/* 03D2AC 8003C6AC 46802020 */ cvt.s.w $f0, $f4 -/* 03D2B0 8003C6B0 3C014300 */ li $at, 0x43000000 # 128.000000 -/* 03D2B4 8003C6B4 44813000 */ mtc1 $at, $f6 -/* 03D2B8 8003C6B8 4602003C */ c.lt.s $f0, $f2 -/* 03D2BC 8003C6BC 00000000 */ nop -/* 03D2C0 8003C6C0 45000003 */ bc1f .L8003C6D0 -/* 03D2C4 8003C6C4 00000000 */ nop -/* 03D2C8 8003C6C8 46001006 */ mov.s $f0, $f2 -/* 03D2CC 8003C6CC 00000000 */ nop -.L8003C6D0: -/* 03D2D0 8003C6D0 46060003 */ div.s $f0, $f0, $f6 -/* 03D2D4 8003C6D4 8E020064 */ lw $v0, 0x64($s0) -/* 03D2D8 8003C6D8 E6000008 */ swc1 $f0, 8($s0) -/* 03D2DC 8003C6DC 9228000A */ lbu $t0, 0xa($s1) -/* 03D2E0 8003C6E0 00000000 */ nop -/* 03D2E4 8003C6E4 00084A80 */ sll $t1, $t0, 0xa -/* 03D2E8 8003C6E8 A6090000 */ sh $t1, ($s0) -/* 03D2EC 8003C6EC 86040000 */ lh $a0, ($s0) -/* 03D2F0 8003C6F0 0C01C1F1 */ jal func_800707C4 -/* 03D2F4 8003C6F4 AFA20020 */ sw $v0, 0x20($sp) -/* 03D2F8 8003C6F8 8FA20020 */ lw $v0, 0x20($sp) -/* 03D2FC 8003C6FC 44804000 */ mtc1 $zero, $f8 -/* 03D300 8003C700 E4400000 */ swc1 $f0, ($v0) -/* 03D304 8003C704 E4480004 */ swc1 $f8, 4($v0) -/* 03D308 8003C708 86040000 */ lh $a0, ($s0) -/* 03D30C 8003C70C 0C01C1FE */ jal func_800707F8 -/* 03D310 8003C710 00000000 */ nop -/* 03D314 8003C714 8FA20020 */ lw $v0, 0x20($sp) -/* 03D318 8003C718 240C0002 */ li $t4, 2 -/* 03D31C 8003C71C E4400008 */ swc1 $f0, 8($v0) -/* 03D320 8003C720 C610000C */ lwc1 $f16, 0xc($s0) -/* 03D324 8003C724 C44A0000 */ lwc1 $f10, ($v0) -/* 03D328 8003C728 C6040014 */ lwc1 $f4, 0x14($s0) -/* 03D32C 8003C72C 46105482 */ mul.s $f18, $f10, $f16 -/* 03D330 8003C730 00000000 */ nop -/* 03D334 8003C734 46040182 */ mul.s $f6, $f0, $f4 -/* 03D338 8003C738 46069200 */ add.s $f8, $f18, $f6 -/* 03D33C 8003C73C 46004287 */ neg.s $f10, $f8 -/* 03D340 8003C740 E44A000C */ swc1 $f10, 0xc($v0) -/* 03D344 8003C744 922A0008 */ lbu $t2, 8($s1) -/* 03D348 8003C748 00000000 */ nop -/* 03D34C 8003C74C AC4A0010 */ sw $t2, 0x10($v0) -/* 03D350 8003C750 922B000D */ lbu $t3, 0xd($s1) -/* 03D354 8003C754 00000000 */ nop -/* 03D358 8003C758 A04B0014 */ sb $t3, 0x14($v0) -/* 03D35C 8003C75C 8E0D004C */ lw $t5, 0x4c($s0) -/* 03D360 8003C760 00000000 */ nop -/* 03D364 8003C764 A5AC0014 */ sh $t4, 0x14($t5) -/* 03D368 8003C768 8E0E004C */ lw $t6, 0x4c($s0) -/* 03D36C 8003C76C 00000000 */ nop -/* 03D370 8003C770 A1C00011 */ sb $zero, 0x11($t6) -/* 03D374 8003C774 8E18004C */ lw $t8, 0x4c($s0) -/* 03D378 8003C778 922F0008 */ lbu $t7, 8($s1) -/* 03D37C 8003C77C 00000000 */ nop -/* 03D380 8003C780 A30F0010 */ sb $t7, 0x10($t8) -/* 03D384 8003C784 8E19004C */ lw $t9, 0x4c($s0) -/* 03D388 8003C788 00000000 */ nop -/* 03D38C 8003C78C A3200012 */ sb $zero, 0x12($t9) -/* 03D390 8003C790 8FBF001C */ lw $ra, 0x1c($sp) -/* 03D394 8003C794 8FB10018 */ lw $s1, 0x18($sp) -/* 03D398 8003C798 8FB00014 */ lw $s0, 0x14($sp) -/* 03D39C 8003C79C 03E00008 */ jr $ra -/* 03D3A0 8003C7A0 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_8003C7A4 -/* 03D3A4 8003C7A4 27BDFF68 */ addiu $sp, $sp, -0x98 -/* 03D3A8 8003C7A8 AFBF004C */ sw $ra, 0x4c($sp) -/* 03D3AC 8003C7AC AFBE0048 */ sw $fp, 0x48($sp) -/* 03D3B0 8003C7B0 AFB70044 */ sw $s7, 0x44($sp) -/* 03D3B4 8003C7B4 AFB60040 */ sw $s6, 0x40($sp) -/* 03D3B8 8003C7B8 AFB5003C */ sw $s5, 0x3c($sp) -/* 03D3BC 8003C7BC AFB40038 */ sw $s4, 0x38($sp) -/* 03D3C0 8003C7C0 AFB30034 */ sw $s3, 0x34($sp) -/* 03D3C4 8003C7C4 AFB20030 */ sw $s2, 0x30($sp) -/* 03D3C8 8003C7C8 AFB1002C */ sw $s1, 0x2c($sp) -/* 03D3CC 8003C7CC AFB00028 */ sw $s0, 0x28($sp) -/* 03D3D0 8003C7D0 E7B70020 */ swc1 $f23, 0x20($sp) -/* 03D3D4 8003C7D4 E7B60024 */ swc1 $f22, 0x24($sp) -/* 03D3D8 8003C7D8 E7B50018 */ swc1 $f21, 0x18($sp) -/* 03D3DC 8003C7DC E7B4001C */ swc1 $f20, 0x1c($sp) -/* 03D3E0 8003C7E0 AFA5009C */ sw $a1, 0x9c($sp) -/* 03D3E4 8003C7E4 8C9E003C */ lw $fp, 0x3c($a0) -/* 03D3E8 8003C7E8 8C920064 */ lw $s2, 0x64($a0) -/* 03D3EC 8003C7EC 0C01BAA4 */ jal func_8006EA90 -/* 03D3F0 8003C7F0 0080A025 */ move $s4, $a0 -/* 03D3F4 8003C7F4 904F0049 */ lbu $t7, 0x49($v0) -/* 03D3F8 8003C7F8 8C4E0004 */ lw $t6, 4($v0) -/* 03D3FC 8003C7FC 000FC080 */ sll $t8, $t7, 2 -/* 03D400 8003C800 01D8C821 */ addu $t9, $t6, $t8 -/* 03D404 8003C804 8F300000 */ lw $s0, ($t9) -/* 03D408 8003C808 0C01AF66 */ jal func_8006BD98 -/* 03D40C 8003C80C 0040B825 */ move $s7, $v0 -/* 03D410 8003C810 83C30009 */ lb $v1, 9($fp) -/* 03D414 8003C814 00000000 */ nop -/* 03D418 8003C818 04600065 */ bltz $v1, .L8003C9B0 -/* 03D41C 8003C81C 8FBF004C */ lw $ra, 0x4c($sp) -/* 03D420 8003C820 8E89004C */ lw $t1, 0x4c($s4) -/* 03D424 8003C824 8E450010 */ lw $a1, 0x10($s2) -/* 03D428 8003C828 912A0013 */ lbu $t2, 0x13($t1) -/* 03D42C 8003C82C 3C080001 */ lui $t0, 1 -/* 03D430 8003C830 0145082A */ slt $at, $t2, $a1 -/* 03D434 8003C834 1020005D */ beqz $at, .L8003C9AC -/* 03D438 8003C838 00683004 */ sllv $a2, $t0, $v1 -/* 03D43C 8003C83C 304B00FF */ andi $t3, $v0, 0xff -/* 03D440 8003C840 24010005 */ li $at, 5 -/* 03D444 8003C844 15610003 */ bne $t3, $at, .L8003C854 -/* 03D448 8003C848 02066024 */ and $t4, $s0, $a2 -/* 03D44C 8003C84C 15800058 */ bnez $t4, .L8003C9B0 -/* 03D450 8003C850 8FBF004C */ lw $ra, 0x4c($sp) -.L8003C854: -/* 03D454 8003C854 44852000 */ mtc1 $a1, $f4 -/* 03D458 8003C858 27A4008C */ addiu $a0, $sp, 0x8c -/* 03D45C 8003C85C AFA60060 */ sw $a2, 0x60($sp) -/* 03D460 8003C860 0C006E9D */ jal func_8001BA74 -/* 03D464 8003C864 468025A0 */ cvt.s.w $f22, $f4 -/* 03D468 8003C868 8FAD008C */ lw $t5, 0x8c($sp) -/* 03D46C 8003C86C 00009825 */ move $s3, $zero -/* 03D470 8003C870 19A0004E */ blez $t5, .L8003C9AC -/* 03D474 8003C874 00408825 */ move $s1, $v0 -/* 03D478 8003C878 4480A000 */ mtc1 $zero, $f20 -/* 03D47C 8003C87C 241600FF */ li $s6, 255 -/* 03D480 8003C880 2415FFFF */ li $s5, -1 -.L8003C884: -/* 03D484 8003C884 8E300000 */ lw $s0, ($s1) -/* 03D488 8003C888 92430014 */ lbu $v1, 0x14($s2) -/* 03D48C 8003C88C 8E020064 */ lw $v0, 0x64($s0) -/* 03D490 8003C890 306F0001 */ andi $t7, $v1, 1 -/* 03D494 8003C894 15E00005 */ bnez $t7, .L8003C8AC -/* 03D498 8003C898 30780002 */ andi $t8, $v1, 2 -/* 03D49C 8003C89C 844E0000 */ lh $t6, ($v0) -/* 03D4A0 8003C8A0 00000000 */ nop -/* 03D4A4 8003C8A4 12AE0007 */ beq $s5, $t6, .L8003C8C4 -/* 03D4A8 8003C8A8 00000000 */ nop -.L8003C8AC: -/* 03D4AC 8003C8AC 1700003B */ bnez $t8, .L8003C99C -/* 03D4B0 8003C8B0 8FAF008C */ lw $t7, 0x8c($sp) -/* 03D4B4 8003C8B4 84590000 */ lh $t9, ($v0) -/* 03D4B8 8003C8B8 00000000 */ nop -/* 03D4BC 8003C8BC 12B90037 */ beq $s5, $t9, .L8003C99C -/* 03D4C0 8003C8C0 8FAF008C */ lw $t7, 0x8c($sp) -.L8003C8C4: -/* 03D4C4 8003C8C4 C606000C */ lwc1 $f6, 0xc($s0) -/* 03D4C8 8003C8C8 C688000C */ lwc1 $f8, 0xc($s4) -/* 03D4CC 8003C8CC C60A0010 */ lwc1 $f10, 0x10($s0) -/* 03D4D0 8003C8D0 46083001 */ sub.s $f0, $f6, $f8 -/* 03D4D4 8003C8D4 C6900010 */ lwc1 $f16, 0x10($s4) -/* 03D4D8 8003C8D8 46000182 */ mul.s $f6, $f0, $f0 -/* 03D4DC 8003C8DC 46105081 */ sub.s $f2, $f10, $f16 -/* 03D4E0 8003C8E0 C6120014 */ lwc1 $f18, 0x14($s0) -/* 03D4E4 8003C8E4 C6840014 */ lwc1 $f4, 0x14($s4) -/* 03D4E8 8003C8E8 46021202 */ mul.s $f8, $f2, $f2 -/* 03D4EC 8003C8EC 46049381 */ sub.s $f14, $f18, $f4 -/* 03D4F0 8003C8F0 460E7402 */ mul.s $f16, $f14, $f14 -/* 03D4F4 8003C8F4 46083280 */ add.s $f10, $f6, $f8 -/* 03D4F8 8003C8F8 0C0326B4 */ jal sqrtf -/* 03D4FC 8003C8FC 46105300 */ add.s $f12, $f10, $f16 -/* 03D500 8003C900 4616003C */ c.lt.s $f0, $f22 -/* 03D504 8003C904 00000000 */ nop -/* 03D508 8003C908 45000024 */ bc1f .L8003C99C -/* 03D50C 8003C90C 8FAF008C */ lw $t7, 0x8c($sp) -/* 03D510 8003C910 C6520000 */ lwc1 $f18, ($s2) -/* 03D514 8003C914 C604000C */ lwc1 $f4, 0xc($s0) -/* 03D518 8003C918 C6480008 */ lwc1 $f8, 8($s2) -/* 03D51C 8003C91C 46049182 */ mul.s $f6, $f18, $f4 -/* 03D520 8003C920 C60A0014 */ lwc1 $f10, 0x14($s0) -/* 03D524 8003C924 C644000C */ lwc1 $f4, 0xc($s2) -/* 03D528 8003C928 8FAC0060 */ lw $t4, 0x60($sp) -/* 03D52C 8003C92C 460A4402 */ mul.s $f16, $f8, $f10 -/* 03D530 8003C930 46103480 */ add.s $f18, $f6, $f16 -/* 03D534 8003C934 46049000 */ add.s $f0, $f18, $f4 -/* 03D538 8003C938 4614003C */ c.lt.s $f0, $f20 -/* 03D53C 8003C93C 00000000 */ nop -/* 03D540 8003C940 45000016 */ bc1f .L8003C99C -/* 03D544 8003C944 8FAF008C */ lw $t7, 0x8c($sp) -/* 03D548 8003C948 92E90049 */ lbu $t1, 0x49($s7) -/* 03D54C 8003C94C 8EE80004 */ lw $t0, 4($s7) -/* 03D550 8003C950 00095080 */ sll $t2, $t1, 2 -/* 03D554 8003C954 010A1021 */ addu $v0, $t0, $t2 -/* 03D558 8003C958 8C4B0000 */ lw $t3, ($v0) -/* 03D55C 8003C95C 00000000 */ nop -/* 03D560 8003C960 016C6825 */ or $t5, $t3, $t4 -/* 03D564 8003C964 AC4D0000 */ sw $t5, ($v0) -/* 03D568 8003C968 93C4000B */ lbu $a0, 0xb($fp) -/* 03D56C 8003C96C 00000000 */ nop -/* 03D570 8003C970 12C40003 */ beq $s6, $a0, .L8003C980 -/* 03D574 8003C974 00000000 */ nop -/* 03D578 8003C978 0C030C7B */ jal func_800C31EC -/* 03D57C 8003C97C 00000000 */ nop -.L8003C980: -/* 03D580 8003C980 93C2000C */ lbu $v0, 0xc($fp) -/* 03D584 8003C984 00000000 */ nop -/* 03D588 8003C988 12C20004 */ beq $s6, $v0, .L8003C99C -/* 03D58C 8003C98C 8FAF008C */ lw $t7, 0x8c($sp) -/* 03D590 8003C990 0C008500 */ jal func_80021400 -/* 03D594 8003C994 24440080 */ addiu $a0, $v0, 0x80 -/* 03D598 8003C998 8FAF008C */ lw $t7, 0x8c($sp) -.L8003C99C: -/* 03D59C 8003C99C 26730001 */ addiu $s3, $s3, 1 -/* 03D5A0 8003C9A0 026F082A */ slt $at, $s3, $t7 -/* 03D5A4 8003C9A4 1420FFB7 */ bnez $at, .L8003C884 -/* 03D5A8 8003C9A8 26310004 */ addiu $s1, $s1, 4 -.L8003C9AC: -/* 03D5AC 8003C9AC 8FBF004C */ lw $ra, 0x4c($sp) -.L8003C9B0: -/* 03D5B0 8003C9B0 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 03D5B4 8003C9B4 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 03D5B8 8003C9B8 C7B70020 */ lwc1 $f23, 0x20($sp) -/* 03D5BC 8003C9BC C7B60024 */ lwc1 $f22, 0x24($sp) -/* 03D5C0 8003C9C0 8FB00028 */ lw $s0, 0x28($sp) -/* 03D5C4 8003C9C4 8FB1002C */ lw $s1, 0x2c($sp) -/* 03D5C8 8003C9C8 8FB20030 */ lw $s2, 0x30($sp) -/* 03D5CC 8003C9CC 8FB30034 */ lw $s3, 0x34($sp) -/* 03D5D0 8003C9D0 8FB40038 */ lw $s4, 0x38($sp) -/* 03D5D4 8003C9D4 8FB5003C */ lw $s5, 0x3c($sp) -/* 03D5D8 8003C9D8 8FB60040 */ lw $s6, 0x40($sp) -/* 03D5DC 8003C9DC 8FB70044 */ lw $s7, 0x44($sp) -/* 03D5E0 8003C9E0 8FBE0048 */ lw $fp, 0x48($sp) -/* 03D5E4 8003C9E4 03E00008 */ jr $ra -/* 03D5E8 8003C9E8 27BD0098 */ addiu $sp, $sp, 0x98 - -glabel func_8003C9EC -/* 03D5EC 8003C9EC 90AE0008 */ lbu $t6, 8($a1) -/* 03D5F0 8003C9F0 8C820064 */ lw $v0, 0x64($a0) -/* 03D5F4 8003C9F4 A08E003A */ sb $t6, 0x3a($a0) -/* 03D5F8 8003C9F8 90B80009 */ lbu $t8, 9($a1) -/* 03D5FC 8003C9FC C4840010 */ lwc1 $f4, 0x10($a0) -/* 03D600 8003CA00 0018CA80 */ sll $t9, $t8, 0xa -/* 03D604 8003CA04 A4990000 */ sh $t9, ($a0) -/* 03D608 8003CA08 E4440000 */ swc1 $f4, ($v0) -/* 03D60C 8003CA0C 8C89004C */ lw $t1, 0x4c($a0) -/* 03D610 8003CA10 24080021 */ li $t0, 33 -/* 03D614 8003CA14 A5280014 */ sh $t0, 0x14($t1) -/* 03D618 8003CA18 8C8B004C */ lw $t3, 0x4c($a0) -/* 03D61C 8003CA1C 240A0002 */ li $t2, 2 -/* 03D620 8003CA20 A16A0011 */ sb $t2, 0x11($t3) -/* 03D624 8003CA24 8C8D004C */ lw $t5, 0x4c($a0) -/* 03D628 8003CA28 240C0014 */ li $t4, 20 -/* 03D62C 8003CA2C A1AC0010 */ sb $t4, 0x10($t5) -/* 03D630 8003CA30 8C8E004C */ lw $t6, 0x4c($a0) -/* 03D634 8003CA34 00000000 */ nop -/* 03D638 8003CA38 A1C00012 */ sb $zero, 0x12($t6) -/* 03D63C 8003CA3C AC400004 */ sw $zero, 4($v0) -/* 03D640 8003CA40 8C980040 */ lw $t8, 0x40($a0) -/* 03D644 8003CA44 808F003A */ lb $t7, 0x3a($a0) -/* 03D648 8003CA48 83190055 */ lb $t9, 0x55($t8) -/* 03D64C 8003CA4C 00000000 */ nop -/* 03D650 8003CA50 01F9082A */ slt $at, $t7, $t9 -/* 03D654 8003CA54 14200002 */ bnez $at, .L8003CA60 -/* 03D658 8003CA58 00000000 */ nop -/* 03D65C 8003CA5C A080003A */ sb $zero, 0x3a($a0) -.L8003CA60: -/* 03D660 8003CA60 03E00008 */ jr $ra -/* 03D664 8003CA64 00000000 */ nop - -glabel func_8003CA68 -/* 03D668 8003CA68 27BDFF90 */ addiu $sp, $sp, -0x70 -/* 03D66C 8003CA6C 44852000 */ mtc1 $a1, $f4 -/* 03D670 8003CA70 AFBF0024 */ sw $ra, 0x24($sp) -/* 03D674 8003CA74 AFB00020 */ sw $s0, 0x20($sp) -/* 03D678 8003CA78 AFA50074 */ sw $a1, 0x74($sp) -/* 03D67C 8003CA7C 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 -/* 03D680 8003CA80 46802020 */ cvt.s.w $f0, $f4 -/* 03D684 8003CA84 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) -/* 03D688 8003CA88 8C830064 */ lw $v1, 0x64($a0) -/* 03D68C 8003CA8C 8C88003C */ lw $t0, 0x3c($a0) -/* 03D690 8003CA90 00808025 */ move $s0, $a0 -/* 03D694 8003CA94 15E00007 */ bnez $t7, .L8003CAB4 -/* 03D698 8003CA98 46000306 */ mov.s $f12, $f0 -/* 03D69C 8003CA9C 3C01800E */ lui $at, %hi(D_800E617C) # $at, 0x800e -/* 03D6A0 8003CAA0 C4296178 */ lwc1 $f9, %lo(D_800E6178)($at) -/* 03D6A4 8003CAA4 C428617C */ lwc1 $f8, %lo(D_800E617C)($at) -/* 03D6A8 8003CAA8 460001A1 */ cvt.d.s $f6, $f0 -/* 03D6AC 8003CAAC 46283282 */ mul.d $f10, $f6, $f8 -/* 03D6B0 8003CAB0 46205320 */ cvt.s.d $f12, $f10 -.L8003CAB4: -/* 03D6B4 8003CAB4 9118000B */ lbu $t8, 0xb($t0) -/* 03D6B8 8003CAB8 24010003 */ li $at, 3 -/* 03D6BC 8003CABC 1301004B */ beq $t8, $at, .L8003CBEC -/* 03D6C0 8003CAC0 00000000 */ nop -/* 03D6C4 8003CAC4 8E190078 */ lw $t9, 0x78($s0) -/* 03D6C8 8003CAC8 00000000 */ nop -/* 03D6CC 8003CACC 13200029 */ beqz $t9, .L8003CB74 -/* 03D6D0 8003CAD0 00000000 */ nop -/* 03D6D4 8003CAD4 8109000E */ lb $t1, 0xe($t0) -/* 03D6D8 8003CAD8 44803000 */ mtc1 $zero, $f6 -/* 03D6DC 8003CADC 44898000 */ mtc1 $t1, $f16 -/* 03D6E0 8003CAE0 00000000 */ nop -/* 03D6E4 8003CAE4 468084A0 */ cvt.s.w $f18, $f16 -/* 03D6E8 8003CAE8 46009021 */ cvt.d.s $f0, $f18 -/* 03D6EC 8003CAEC 46200100 */ add.d $f4, $f0, $f0 -/* 03D6F0 8003CAF0 462020A0 */ cvt.s.d $f2, $f4 -/* 03D6F4 8003CAF4 4602303C */ c.lt.s $f6, $f2 -/* 03D6F8 8003CAF8 00000000 */ nop -/* 03D6FC 8003CAFC 4500000F */ bc1f .L8003CB3C -/* 03D700 8003CB00 00000000 */ nop -/* 03D704 8003CB04 C4680000 */ lwc1 $f8, ($v1) -/* 03D708 8003CB08 C6000010 */ lwc1 $f0, 0x10($s0) -/* 03D70C 8003CB0C 46024280 */ add.s $f10, $f8, $f2 -/* 03D710 8003CB10 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 03D714 8003CB14 460A003C */ c.lt.s $f0, $f10 -/* 03D718 8003CB18 00000000 */ nop -/* 03D71C 8003CB1C 45000080 */ bc1f .L8003CD20 -/* 03D720 8003CB20 00000000 */ nop -/* 03D724 8003CB24 44818000 */ mtc1 $at, $f16 -/* 03D728 8003CB28 00000000 */ nop -/* 03D72C 8003CB2C 46106482 */ mul.s $f18, $f12, $f16 -/* 03D730 8003CB30 46120100 */ add.s $f4, $f0, $f18 -/* 03D734 8003CB34 1000007A */ b .L8003CD20 -/* 03D738 8003CB38 E6040010 */ swc1 $f4, 0x10($s0) -.L8003CB3C: -/* 03D73C 8003CB3C C4660000 */ lwc1 $f6, ($v1) -/* 03D740 8003CB40 C6000010 */ lwc1 $f0, 0x10($s0) -/* 03D744 8003CB44 46023200 */ add.s $f8, $f6, $f2 -/* 03D748 8003CB48 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 03D74C 8003CB4C 4600403C */ c.lt.s $f8, $f0 -/* 03D750 8003CB50 00000000 */ nop -/* 03D754 8003CB54 45000072 */ bc1f .L8003CD20 -/* 03D758 8003CB58 00000000 */ nop -/* 03D75C 8003CB5C 44815000 */ mtc1 $at, $f10 -/* 03D760 8003CB60 00000000 */ nop -/* 03D764 8003CB64 460A6402 */ mul.s $f16, $f12, $f10 -/* 03D768 8003CB68 46100481 */ sub.s $f18, $f0, $f16 -/* 03D76C 8003CB6C 1000006C */ b .L8003CD20 -/* 03D770 8003CB70 E6120010 */ swc1 $f18, 0x10($s0) -.L8003CB74: -/* 03D774 8003CB74 910A000C */ lbu $t2, 0xc($t0) -/* 03D778 8003CB78 00000000 */ nop -/* 03D77C 8003CB7C 1940000E */ blez $t2, .L8003CBB8 -/* 03D780 8003CB80 00000000 */ nop -/* 03D784 8003CB84 C6000010 */ lwc1 $f0, 0x10($s0) -/* 03D788 8003CB88 C4640000 */ lwc1 $f4, ($v1) -/* 03D78C 8003CB8C 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 03D790 8003CB90 4600203C */ c.lt.s $f4, $f0 -/* 03D794 8003CB94 00000000 */ nop -/* 03D798 8003CB98 45000061 */ bc1f .L8003CD20 -/* 03D79C 8003CB9C 00000000 */ nop -/* 03D7A0 8003CBA0 44813000 */ mtc1 $at, $f6 -/* 03D7A4 8003CBA4 00000000 */ nop -/* 03D7A8 8003CBA8 46066202 */ mul.s $f8, $f12, $f6 -/* 03D7AC 8003CBAC 46080281 */ sub.s $f10, $f0, $f8 -/* 03D7B0 8003CBB0 1000005B */ b .L8003CD20 -/* 03D7B4 8003CBB4 E60A0010 */ swc1 $f10, 0x10($s0) -.L8003CBB8: -/* 03D7B8 8003CBB8 C6000010 */ lwc1 $f0, 0x10($s0) -/* 03D7BC 8003CBBC C4700000 */ lwc1 $f16, ($v1) -/* 03D7C0 8003CBC0 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 03D7C4 8003CBC4 4610003C */ c.lt.s $f0, $f16 -/* 03D7C8 8003CBC8 00000000 */ nop -/* 03D7CC 8003CBCC 45000054 */ bc1f .L8003CD20 -/* 03D7D0 8003CBD0 00000000 */ nop -/* 03D7D4 8003CBD4 44819000 */ mtc1 $at, $f18 -/* 03D7D8 8003CBD8 00000000 */ nop -/* 03D7DC 8003CBDC 46126102 */ mul.s $f4, $f12, $f18 -/* 03D7E0 8003CBE0 46040180 */ add.s $f6, $f0, $f4 -/* 03D7E4 8003CBE4 1000004E */ b .L8003CD20 -/* 03D7E8 8003CBE8 E6060010 */ swc1 $f6, 0x10($s0) -.L8003CBEC: -/* 03D7EC 8003CBEC 8E0B0078 */ lw $t3, 0x78($s0) -/* 03D7F0 8003CBF0 00000000 */ nop -/* 03D7F4 8003CBF4 11600023 */ beqz $t3, .L8003CC84 -/* 03D7F8 8003CBF8 00000000 */ nop -/* 03D7FC 8003CBFC 86020002 */ lh $v0, 2($s0) -/* 03D800 8003CC00 8FAC0074 */ lw $t4, 0x74($sp) -/* 03D804 8003CC04 2841ED01 */ slti $at, $v0, -0x12ff -/* 03D808 8003CC08 14200008 */ bnez $at, .L8003CC2C -/* 03D80C 8003CC0C 000C6880 */ sll $t5, $t4, 2 -/* 03D810 8003CC10 01AC6823 */ subu $t5, $t5, $t4 -/* 03D814 8003CC14 000D6880 */ sll $t5, $t5, 2 -/* 03D818 8003CC18 01AC6823 */ subu $t5, $t5, $t4 -/* 03D81C 8003CC1C 000D6880 */ sll $t5, $t5, 2 -/* 03D820 8003CC20 01AC6821 */ addu $t5, $t5, $t4 -/* 03D824 8003CC24 004D7023 */ subu $t6, $v0, $t5 -/* 03D828 8003CC28 A60E0002 */ sh $t6, 2($s0) -.L8003CC2C: -/* 03D82C 8003CC2C 8C6F0004 */ lw $t7, 4($v1) -/* 03D830 8003CC30 27A50050 */ addiu $a1, $sp, 0x50 -/* 03D834 8003CC34 15E0003A */ bnez $t7, .L8003CD20 -/* 03D838 8003CC38 27A6004C */ addiu $a2, $sp, 0x4c -/* 03D83C 8003CC3C 9104000A */ lbu $a0, 0xa($t0) -/* 03D840 8003CC40 AFA8005C */ sw $t0, 0x5c($sp) -/* 03D844 8003CC44 AFA30060 */ sw $v1, 0x60($sp) -/* 03D848 8003CC48 0C0078DB */ jal func_8001E36C -/* 03D84C 8003CC4C 27A70048 */ addiu $a3, $sp, 0x48 -/* 03D850 8003CC50 8FA30060 */ lw $v1, 0x60($sp) -/* 03D854 8003CC54 8FA50050 */ lw $a1, 0x50($sp) -/* 03D858 8003CC58 8FA6004C */ lw $a2, 0x4c($sp) -/* 03D85C 8003CC5C 8FA70048 */ lw $a3, 0x48($sp) -/* 03D860 8003CC60 24180001 */ li $t8, 1 -/* 03D864 8003CC64 24790004 */ addiu $t9, $v1, 4 -/* 03D868 8003CC68 AFB90014 */ sw $t9, 0x14($sp) -/* 03D86C 8003CC6C AFB80010 */ sw $t8, 0x10($sp) -/* 03D870 8003CC70 0C002556 */ jal func_80009558 -/* 03D874 8003CC74 24040249 */ li $a0, 585 -/* 03D878 8003CC78 8FA8005C */ lw $t0, 0x5c($sp) -/* 03D87C 8003CC7C 10000029 */ b .L8003CD24 -/* 03D880 8003CC80 9103000B */ lbu $v1, 0xb($t0) -.L8003CC84: -/* 03D884 8003CC84 86020002 */ lh $v0, 2($s0) -/* 03D888 8003CC88 8FA90074 */ lw $t1, 0x74($sp) -/* 03D88C 8003CC8C 0441001B */ bgez $v0, .L8003CCFC -/* 03D890 8003CC90 00095080 */ sll $t2, $t1, 2 -/* 03D894 8003CC94 01495021 */ addu $t2, $t2, $t1 -/* 03D898 8003CC98 000A50C0 */ sll $t2, $t2, 3 -/* 03D89C 8003CC9C 004A5821 */ addu $t3, $v0, $t2 -/* 03D8A0 8003CCA0 A60B0002 */ sh $t3, 2($s0) -/* 03D8A4 8003CCA4 8C6C0004 */ lw $t4, 4($v1) -/* 03D8A8 8003CCA8 27A50044 */ addiu $a1, $sp, 0x44 -/* 03D8AC 8003CCAC 1580001C */ bnez $t4, .L8003CD20 -/* 03D8B0 8003CCB0 27A60040 */ addiu $a2, $sp, 0x40 -/* 03D8B4 8003CCB4 9104000A */ lbu $a0, 0xa($t0) -/* 03D8B8 8003CCB8 AFA8005C */ sw $t0, 0x5c($sp) -/* 03D8BC 8003CCBC AFA30060 */ sw $v1, 0x60($sp) -/* 03D8C0 8003CCC0 0C0078DB */ jal func_8001E36C -/* 03D8C4 8003CCC4 27A7003C */ addiu $a3, $sp, 0x3c -/* 03D8C8 8003CCC8 8FA30060 */ lw $v1, 0x60($sp) -/* 03D8CC 8003CCCC 8FA50044 */ lw $a1, 0x44($sp) -/* 03D8D0 8003CCD0 8FA60040 */ lw $a2, 0x40($sp) -/* 03D8D4 8003CCD4 8FA7003C */ lw $a3, 0x3c($sp) -/* 03D8D8 8003CCD8 240D0001 */ li $t5, 1 -/* 03D8DC 8003CCDC 246E0004 */ addiu $t6, $v1, 4 -/* 03D8E0 8003CCE0 AFAE0014 */ sw $t6, 0x14($sp) -/* 03D8E4 8003CCE4 AFAD0010 */ sw $t5, 0x10($sp) -/* 03D8E8 8003CCE8 0C002556 */ jal func_80009558 -/* 03D8EC 8003CCEC 24040249 */ li $a0, 585 -/* 03D8F0 8003CCF0 8FA8005C */ lw $t0, 0x5c($sp) -/* 03D8F4 8003CCF4 1000000B */ b .L8003CD24 -/* 03D8F8 8003CCF8 9103000B */ lbu $v1, 0xb($t0) -.L8003CCFC: -/* 03D8FC 8003CCFC A6000002 */ sh $zero, 2($s0) -/* 03D900 8003CD00 8C640004 */ lw $a0, 4($v1) -/* 03D904 8003CD04 00000000 */ nop -/* 03D908 8003CD08 10800005 */ beqz $a0, .L8003CD20 -/* 03D90C 8003CD0C 00000000 */ nop -/* 03D910 8003CD10 0C0025BE */ jal func_800096F8 -/* 03D914 8003CD14 AFA8005C */ sw $t0, 0x5c($sp) -/* 03D918 8003CD18 8FA8005C */ lw $t0, 0x5c($sp) -/* 03D91C 8003CD1C 00000000 */ nop -.L8003CD20: -/* 03D920 8003CD20 9103000B */ lbu $v1, 0xb($t0) -.L8003CD24: -/* 03D924 8003CD24 24010002 */ li $at, 2 -/* 03D928 8003CD28 10600005 */ beqz $v1, .L8003CD40 -/* 03D92C 8003CD2C 00000000 */ nop -/* 03D930 8003CD30 1061000E */ beq $v1, $at, .L8003CD6C -/* 03D934 8003CD34 24090001 */ li $t1, 1 -/* 03D938 8003CD38 10000029 */ b .L8003CDE0 -/* 03D93C 8003CD3C 9104000A */ lbu $a0, 0xa($t0) -.L8003CD40: -/* 03D940 8003CD40 8E02004C */ lw $v0, 0x4c($s0) -/* 03D944 8003CD44 AE000078 */ sw $zero, 0x78($s0) -/* 03D948 8003CD48 9118000C */ lbu $t8, 0xc($t0) -/* 03D94C 8003CD4C 904F0013 */ lbu $t7, 0x13($v0) -/* 03D950 8003CD50 24190001 */ li $t9, 1 -/* 03D954 8003CD54 01F8082A */ slt $at, $t7, $t8 -/* 03D958 8003CD58 10200034 */ beqz $at, .L8003CE2C -/* 03D95C 8003CD5C 241800FF */ li $t8, 255 -/* 03D960 8003CD60 8E02004C */ lw $v0, 0x4c($s0) -/* 03D964 8003CD64 10000030 */ b .L8003CE28 -/* 03D968 8003CD68 AE190078 */ sw $t9, 0x78($s0) -.L8003CD6C: -/* 03D96C 8003CD6C AE090078 */ sw $t1, 0x78($s0) -/* 03D970 8003CD70 AFA8005C */ sw $t0, 0x5c($sp) -/* 03D974 8003CD74 0C006EB2 */ jal func_8001BAC8 -/* 03D978 8003CD78 00002025 */ move $a0, $zero -/* 03D97C 8003CD7C 8FA8005C */ lw $t0, 0x5c($sp) -/* 03D980 8003CD80 10400013 */ beqz $v0, .L8003CDD0 -/* 03D984 8003CD84 00000000 */ nop -/* 03D988 8003CD88 8C440064 */ lw $a0, 0x64($v0) -/* 03D98C 8003CD8C 24010001 */ li $at, 1 -/* 03D990 8003CD90 808301D6 */ lb $v1, 0x1d6($a0) -/* 03D994 8003CD94 00000000 */ nop -/* 03D998 8003CD98 10610005 */ beq $v1, $at, .L8003CDB0 -/* 03D99C 8003CD9C 24010002 */ li $at, 2 -/* 03D9A0 8003CDA0 10610005 */ beq $v1, $at, .L8003CDB8 -/* 03D9A4 8003CDA4 24020004 */ li $v0, 4 -/* 03D9A8 8003CDA8 10000003 */ b .L8003CDB8 -/* 03D9AC 8003CDAC 24020001 */ li $v0, 1 -.L8003CDB0: -/* 03D9B0 8003CDB0 10000001 */ b .L8003CDB8 -/* 03D9B4 8003CDB4 24020002 */ li $v0, 2 -.L8003CDB8: -/* 03D9B8 8003CDB8 910A000F */ lbu $t2, 0xf($t0) -/* 03D9BC 8003CDBC 00000000 */ nop -/* 03D9C0 8003CDC0 01425824 */ and $t3, $t2, $v0 -/* 03D9C4 8003CDC4 11600002 */ beqz $t3, .L8003CDD0 -/* 03D9C8 8003CDC8 00000000 */ nop -/* 03D9CC 8003CDCC AE000078 */ sw $zero, 0x78($s0) -.L8003CDD0: -/* 03D9D0 8003CDD0 8E02004C */ lw $v0, 0x4c($s0) -/* 03D9D4 8003CDD4 10000015 */ b .L8003CE2C -/* 03D9D8 8003CDD8 241800FF */ li $t8, 255 -/* 03D9DC 8003CDDC 9104000A */ lbu $a0, 0xa($t0) -.L8003CDE0: -/* 03D9E0 8003CDE0 0C0078BB */ jal func_8001E2EC -/* 03D9E4 8003CDE4 AFA8005C */ sw $t0, 0x5c($sp) -/* 03D9E8 8003CDE8 8FA8005C */ lw $t0, 0x5c($sp) -/* 03D9EC 8003CDEC 10400005 */ beqz $v0, .L8003CE04 -/* 03D9F0 8003CDF0 00000000 */ nop -/* 03D9F4 8003CDF4 910C000D */ lbu $t4, 0xd($t0) -/* 03D9F8 8003CDF8 00000000 */ nop -/* 03D9FC 8003CDFC 000C6840 */ sll $t5, $t4, 1 -/* 03DA00 8003CE00 AE0D0078 */ sw $t5, 0x78($s0) -.L8003CE04: -/* 03DA04 8003CE04 8E020078 */ lw $v0, 0x78($s0) -/* 03DA08 8003CE08 8FAE0074 */ lw $t6, 0x74($sp) -/* 03DA0C 8003CE0C 18400003 */ blez $v0, .L8003CE1C -/* 03DA10 8003CE10 004E7823 */ subu $t7, $v0, $t6 -/* 03DA14 8003CE14 10000002 */ b .L8003CE20 -/* 03DA18 8003CE18 AE0F0078 */ sw $t7, 0x78($s0) -.L8003CE1C: -/* 03DA1C 8003CE1C AE000078 */ sw $zero, 0x78($s0) -.L8003CE20: -/* 03DA20 8003CE20 8E02004C */ lw $v0, 0x4c($s0) -/* 03DA24 8003CE24 00000000 */ nop -.L8003CE28: -/* 03DA28 8003CE28 241800FF */ li $t8, 255 -.L8003CE2C: -/* 03DA2C 8003CE2C A0580013 */ sb $t8, 0x13($v0) -/* 03DA30 8003CE30 8E19004C */ lw $t9, 0x4c($s0) -/* 03DA34 8003CE34 00000000 */ nop -/* 03DA38 8003CE38 AF200000 */ sw $zero, ($t9) -/* 03DA3C 8003CE3C 8E02004C */ lw $v0, 0x4c($s0) -/* 03DA40 8003CE40 00000000 */ nop -/* 03DA44 8003CE44 84490014 */ lh $t1, 0x14($v0) -/* 03DA48 8003CE48 00000000 */ nop -/* 03DA4C 8003CE4C 312AFFF7 */ andi $t2, $t1, 0xfff7 -/* 03DA50 8003CE50 A44A0014 */ sh $t2, 0x14($v0) -/* 03DA54 8003CE54 8FBF0024 */ lw $ra, 0x24($sp) -/* 03DA58 8003CE58 8FB00020 */ lw $s0, 0x20($sp) -/* 03DA5C 8003CE5C 03E00008 */ jr $ra -/* 03DA60 8003CE60 27BD0070 */ addiu $sp, $sp, 0x70 - -glabel func_8003CE64 -/* 03DA64 8003CE64 8C8F004C */ lw $t7, 0x4c($a0) -/* 03DA68 8003CE68 240E0002 */ li $t6, 2 -/* 03DA6C 8003CE6C A5EE0014 */ sh $t6, 0x14($t7) -/* 03DA70 8003CE70 8C98004C */ lw $t8, 0x4c($a0) -/* 03DA74 8003CE74 24190014 */ li $t9, 20 -/* 03DA78 8003CE78 A3000011 */ sb $zero, 0x11($t8) -/* 03DA7C 8003CE7C 8C88004C */ lw $t0, 0x4c($a0) -/* 03DA80 8003CE80 00000000 */ nop -/* 03DA84 8003CE84 A1190010 */ sb $t9, 0x10($t0) -/* 03DA88 8003CE88 8C89004C */ lw $t1, 0x4c($a0) -/* 03DA8C 8003CE8C 00000000 */ nop -/* 03DA90 8003CE90 A1200012 */ sb $zero, 0x12($t1) -/* 03DA94 8003CE94 90AA0008 */ lbu $t2, 8($a1) -/* 03DA98 8003CE98 03E00008 */ jr $ra -/* 03DA9C 8003CE9C AC8A0078 */ sw $t2, 0x78($a0) - -glabel func_8003CEA0 -/* 03DAA0 8003CEA0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 03DAA4 8003CEA4 AFBF0014 */ sw $ra, 0x14($sp) -/* 03DAA8 8003CEA8 AFA40018 */ sw $a0, 0x18($sp) -/* 03DAAC 8003CEAC AFA5001C */ sw $a1, 0x1c($sp) -/* 03DAB0 8003CEB0 8C82004C */ lw $v0, 0x4c($a0) -/* 03DAB4 8003CEB4 00802825 */ move $a1, $a0 -/* 03DAB8 8003CEB8 904E0013 */ lbu $t6, 0x13($v0) -/* 03DABC 8003CEBC 00000000 */ nop -/* 03DAC0 8003CEC0 29C1002D */ slti $at, $t6, 0x2d -/* 03DAC4 8003CEC4 10200009 */ beqz $at, .L8003CEEC -/* 03DAC8 8003CEC8 240F00FF */ li $t7, 255 -/* 03DACC 8003CECC 8C840078 */ lw $a0, 0x78($a0) -/* 03DAD0 8003CED0 0C0078D1 */ jal func_8001E344 -/* 03DAD4 8003CED4 AFA50018 */ sw $a1, 0x18($sp) -/* 03DAD8 8003CED8 8FA50018 */ lw $a1, 0x18($sp) -/* 03DADC 8003CEDC 00000000 */ nop -/* 03DAE0 8003CEE0 8CA2004C */ lw $v0, 0x4c($a1) -/* 03DAE4 8003CEE4 00000000 */ nop -/* 03DAE8 8003CEE8 240F00FF */ li $t7, 255 -.L8003CEEC: -/* 03DAEC 8003CEEC A04F0013 */ sb $t7, 0x13($v0) -/* 03DAF0 8003CEF0 8FBF0014 */ lw $ra, 0x14($sp) -/* 03DAF4 8003CEF4 27BD0018 */ addiu $sp, $sp, 0x18 -/* 03DAF8 8003CEF8 03E00008 */ jr $ra -/* 03DAFC 8003CEFC 00000000 */ nop - -glabel func_8003CF00 -/* 03DB00 8003CF00 AFA40000 */ sw $a0, ($sp) -/* 03DB04 8003CF04 03E00008 */ jr $ra -/* 03DB08 8003CF08 AFA50004 */ sw $a1, 4($sp) - -glabel func_8003CF0C -/* 03DB0C 8003CF0C AFA40000 */ sw $a0, ($sp) -/* 03DB10 8003CF10 03E00008 */ jr $ra -/* 03DB14 8003CF14 AFA50004 */ sw $a1, 4($sp) - -glabel func_8003CF18 -/* 03DB18 8003CF18 90AE0008 */ lbu $t6, 8($a1) -/* 03DB1C 8003CF1C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 03DB20 8003CF20 448E2000 */ mtc1 $t6, $f4 -/* 03DB24 8003CF24 05C10004 */ bgez $t6, .L8003CF38 -/* 03DB28 8003CF28 468021A0 */ cvt.s.w $f6, $f4 -/* 03DB2C 8003CF2C 44814000 */ mtc1 $at, $f8 -/* 03DB30 8003CF30 00000000 */ nop -/* 03DB34 8003CF34 46083180 */ add.s $f6, $f6, $f8 -.L8003CF38: -/* 03DB38 8003CF38 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 03DB3C 8003CF3C 44815000 */ mtc1 $at, $f10 -/* 03DB40 8003CF40 00000000 */ nop -/* 03DB44 8003CF44 460A3002 */ mul.s $f0, $f6, $f10 -/* 03DB48 8003CF48 00000000 */ nop -/* 03DB4C 8003CF4C 46000002 */ mul.s $f0, $f0, $f0 -/* 03DB50 8003CF50 03E00008 */ jr $ra -/* 03DB54 8003CF54 E4800078 */ swc1 $f0, 0x78($a0) - -glabel func_8003CF58 -/* 03DB58 8003CF58 8C8F004C */ lw $t7, 0x4c($a0) -/* 03DB5C 8003CF5C 240E0002 */ li $t6, 2 -/* 03DB60 8003CF60 A5EE0014 */ sh $t6, 0x14($t7) -/* 03DB64 8003CF64 8C98004C */ lw $t8, 0x4c($a0) -/* 03DB68 8003CF68 00000000 */ nop -/* 03DB6C 8003CF6C A3000011 */ sb $zero, 0x11($t8) -/* 03DB70 8003CF70 90B90009 */ lbu $t9, 9($a1) -/* 03DB74 8003CF74 8C88004C */ lw $t0, 0x4c($a0) -/* 03DB78 8003CF78 00000000 */ nop -/* 03DB7C 8003CF7C A1190010 */ sb $t9, 0x10($t0) -/* 03DB80 8003CF80 90A90008 */ lbu $t1, 8($a1) -/* 03DB84 8003CF84 00000000 */ nop -/* 03DB88 8003CF88 AC890078 */ sw $t1, 0x78($a0) -/* 03DB8C 8003CF8C 90AA0009 */ lbu $t2, 9($a1) -/* 03DB90 8003CF90 03E00008 */ jr $ra -/* 03DB94 8003CF94 AC8A007C */ sw $t2, 0x7c($a0) - -glabel func_8003CF98 -/* 03DB98 8003CF98 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 03DB9C 8003CF9C AFBF0014 */ sw $ra, 0x14($sp) -/* 03DBA0 8003CFA0 AFA40018 */ sw $a0, 0x18($sp) -/* 03DBA4 8003CFA4 AFA5001C */ sw $a1, 0x1c($sp) -/* 03DBA8 8003CFA8 8C8E004C */ lw $t6, 0x4c($a0) -/* 03DBAC 8003CFAC 8C98007C */ lw $t8, 0x7c($a0) -/* 03DBB0 8003CFB0 91CF0013 */ lbu $t7, 0x13($t6) -/* 03DBB4 8003CFB4 00000000 */ nop -/* 03DBB8 8003CFB8 01F8082A */ slt $at, $t7, $t8 -/* 03DBBC 8003CFBC 10200005 */ beqz $at, .L8003CFD4 -/* 03DBC0 8003CFC0 8FBF0014 */ lw $ra, 0x14($sp) -/* 03DBC4 8003CFC4 8C840078 */ lw $a0, 0x78($a0) -/* 03DBC8 8003CFC8 0C00A011 */ jal func_80028044 -/* 03DBCC 8003CFCC 00000000 */ nop -/* 03DBD0 8003CFD0 8FBF0014 */ lw $ra, 0x14($sp) -.L8003CFD4: -/* 03DBD4 8003CFD4 27BD0018 */ addiu $sp, $sp, 0x18 -/* 03DBD8 8003CFD8 03E00008 */ jr $ra -/* 03DBDC 8003CFDC 00000000 */ nop - -glabel func_8003CFE0 -/* 03DBE0 8003CFE0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 03DBE4 8003CFE4 AFBF0014 */ sw $ra, 0x14($sp) -/* 03DBE8 8003CFE8 90A60009 */ lbu $a2, 9($a1) -/* 03DBEC 8003CFEC 240100FF */ li $at, 255 -/* 03DBF0 8003CFF0 14C10006 */ bne $a2, $at, .L8003D00C -/* 03DBF4 8003CFF4 00000000 */ nop -/* 03DBF8 8003CFF8 0C007123 */ jal func_8001C48C -/* 03DBFC 8003CFFC AFA5001C */ sw $a1, 0x1c($sp) -/* 03DC00 8003D000 8FA5001C */ lw $a1, 0x1c($sp) -/* 03DC04 8003D004 304600FF */ andi $a2, $v0, 0xff -/* 03DC08 8003D008 A0A20009 */ sb $v0, 9($a1) -.L8003D00C: -/* 03DC0C 8003D00C 0C00746F */ jal func_8001D1BC -/* 03DC10 8003D010 00C02025 */ move $a0, $a2 -/* 03DC14 8003D014 0C00746B */ jal func_8001D1AC -/* 03DC18 8003D018 00000000 */ nop -/* 03DC1C 8003D01C 8FBF0014 */ lw $ra, 0x14($sp) -/* 03DC20 8003D020 27BD0018 */ addiu $sp, $sp, 0x18 -/* 03DC24 8003D024 03E00008 */ jr $ra -/* 03DC28 8003D028 00000000 */ nop - -glabel func_8003D02C -/* 03DC2C 8003D02C AFA40000 */ sw $a0, ($sp) -/* 03DC30 8003D030 03E00008 */ jr $ra -/* 03DC34 8003D034 AFA50004 */ sw $a1, 4($sp) - -glabel func_8003D038 -/* 03DC38 8003D038 240E0078 */ li $t6, 120 -/* 03DC3C 8003D03C A48E0018 */ sh $t6, 0x18($a0) -/* 03DC40 8003D040 80AF0008 */ lb $t7, 8($a1) -/* 03DC44 8003D044 00000000 */ nop -/* 03DC48 8003D048 25F8FFFF */ addiu $t8, $t7, -1 -/* 03DC4C 8003D04C 33190003 */ andi $t9, $t8, 3 -/* 03DC50 8003D050 03E00008 */ jr $ra -/* 03DC54 8003D054 AC990078 */ sw $t9, 0x78($a0) - -glabel func_8003D058 -/* 03DC58 8003D058 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 03DC5C 8003D05C AFBF0014 */ sw $ra, 0x14($sp) -/* 03DC60 8003D060 AFA5004C */ sw $a1, 0x4c($sp) -/* 03DC64 8003D064 00803025 */ move $a2, $a0 -/* 03DC68 8003D068 8C840078 */ lw $a0, 0x78($a0) -/* 03DC6C 8003D06C 0C006EB2 */ jal func_8001BAC8 -/* 03DC70 8003D070 AFA60048 */ sw $a2, 0x48($sp) -/* 03DC74 8003D074 8FA60048 */ lw $a2, 0x48($sp) -/* 03DC78 8003D078 10400088 */ beqz $v0, .L8003D29C -/* 03DC7C 8003D07C 00401825 */ move $v1, $v0 -/* 03DC80 8003D080 8C470064 */ lw $a3, 0x64($v0) -/* 03DC84 8003D084 00002025 */ move $a0, $zero -/* 03DC88 8003D088 80EE0185 */ lb $t6, 0x185($a3) -/* 03DC8C 8003D08C 00000000 */ nop -/* 03DC90 8003D090 11C0001C */ beqz $t6, .L8003D104 -/* 03DC94 8003D094 00000000 */ nop -/* 03DC98 8003D098 8CCF007C */ lw $t7, 0x7c($a2) -/* 03DC9C 8003D09C 00000000 */ nop -/* 03DCA0 8003D0A0 15E00018 */ bnez $t7, .L8003D104 -/* 03DCA4 8003D0A4 00000000 */ nop -/* 03DCA8 8003D0A8 C4C4000C */ lwc1 $f4, 0xc($a2) -/* 03DCAC 8003D0AC C446000C */ lwc1 $f6, 0xc($v0) -/* 03DCB0 8003D0B0 C4C80010 */ lwc1 $f8, 0x10($a2) -/* 03DCB4 8003D0B4 46062001 */ sub.s $f0, $f4, $f6 -/* 03DCB8 8003D0B8 C44A0010 */ lwc1 $f10, 0x10($v0) -/* 03DCBC 8003D0BC 46000102 */ mul.s $f4, $f0, $f0 -/* 03DCC0 8003D0C0 460A4081 */ sub.s $f2, $f8, $f10 -/* 03DCC4 8003D0C4 C4D00014 */ lwc1 $f16, 0x14($a2) -/* 03DCC8 8003D0C8 C4520014 */ lwc1 $f18, 0x14($v0) -/* 03DCCC 8003D0CC 46021182 */ mul.s $f6, $f2, $f2 -/* 03DCD0 8003D0D0 46128301 */ sub.s $f12, $f16, $f18 -/* 03DCD4 8003D0D4 3C01800E */ lui $at, %hi(D_800E6180) # $at, 0x800e -/* 03DCD8 8003D0D8 C4306180 */ lwc1 $f16, %lo(D_800E6180)($at) -/* 03DCDC 8003D0DC 460C6282 */ mul.s $f10, $f12, $f12 -/* 03DCE0 8003D0E0 46062200 */ add.s $f8, $f4, $f6 -/* 03DCE4 8003D0E4 24180008 */ li $t8, 8 -/* 03DCE8 8003D0E8 460A4000 */ add.s $f0, $f8, $f10 -/* 03DCEC 8003D0EC 4610003C */ c.lt.s $f0, $f16 -/* 03DCF0 8003D0F0 00000000 */ nop -/* 03DCF4 8003D0F4 45000003 */ bc1f .L8003D104 -/* 03DCF8 8003D0F8 00000000 */ nop -/* 03DCFC 8003D0FC ACD8007C */ sw $t8, 0x7c($a2) -/* 03DD00 8003D100 24040001 */ li $a0, 1 -.L8003D104: -/* 03DD04 8003D104 8CC2007C */ lw $v0, 0x7c($a2) -/* 03DD08 8003D108 8FB9004C */ lw $t9, 0x4c($sp) -/* 03DD0C 8003D10C 18400010 */ blez $v0, .L8003D150 -/* 03DD10 8003D110 00594023 */ subu $t0, $v0, $t9 -/* 03DD14 8003D114 1D00000E */ bgtz $t0, .L8003D150 -/* 03DD18 8003D118 ACC8007C */ sw $t0, 0x7c($a2) -/* 03DD1C 8003D11C 80E20185 */ lb $v0, 0x185($a3) -/* 03DD20 8003D120 240C0008 */ li $t4, 8 -/* 03DD24 8003D124 18400009 */ blez $v0, .L8003D14C -/* 03DD28 8003D128 244AFFFF */ addiu $t2, $v0, -1 -/* 03DD2C 8003D12C A0EA0185 */ sb $t2, 0x185($a3) -/* 03DD30 8003D130 80EB0185 */ lb $t3, 0x185($a3) -/* 03DD34 8003D134 00000000 */ nop -/* 03DD38 8003D138 11600002 */ beqz $t3, .L8003D144 -/* 03DD3C 8003D13C 00000000 */ nop -/* 03DD40 8003D140 24040001 */ li $a0, 1 -.L8003D144: -/* 03DD44 8003D144 10000002 */ b .L8003D150 -/* 03DD48 8003D148 ACCC007C */ sw $t4, 0x7c($a2) -.L8003D14C: -/* 03DD4C 8003D14C ACC0007C */ sw $zero, 0x7c($a2) -.L8003D150: -/* 03DD50 8003D150 10800053 */ beqz $a0, .L8003D2A0 -/* 03DD54 8003D154 8FBF0014 */ lw $ra, 0x14($sp) -/* 03DD58 8003D158 444DF800 */ cfc1 $t5, $31 -/* 03DD5C 8003D15C C472000C */ lwc1 $f18, 0xc($v1) -/* 03DD60 8003D160 35A10003 */ ori $at, $t5, 3 -/* 03DD64 8003D164 38210002 */ xori $at, $at, 2 -/* 03DD68 8003D168 44C1F800 */ ctc1 $at, $31 -/* 03DD6C 8003D16C 240C0008 */ li $t4, 8 -/* 03DD70 8003D170 46009124 */ cvt.w.s $f4, $f18 -/* 03DD74 8003D174 27A40024 */ addiu $a0, $sp, 0x24 -/* 03DD78 8003D178 44CDF800 */ ctc1 $t5, $31 -/* 03DD7C 8003D17C 440E2000 */ mfc1 $t6, $f4 -/* 03DD80 8003D180 240D0061 */ li $t5, 97 -/* 03DD84 8003D184 444FF800 */ cfc1 $t7, $31 -/* 03DD88 8003D188 A7AE0026 */ sh $t6, 0x26($sp) -/* 03DD8C 8003D18C 35E10003 */ ori $at, $t7, 3 -/* 03DD90 8003D190 38210002 */ xori $at, $at, 2 -/* 03DD94 8003D194 44C1F800 */ ctc1 $at, $31 -/* 03DD98 8003D198 C4660010 */ lwc1 $f6, 0x10($v1) -/* 03DD9C 8003D19C 24050001 */ li $a1, 1 -/* 03DDA0 8003D1A0 46003224 */ cvt.w.s $f8, $f6 -/* 03DDA4 8003D1A4 44CFF800 */ ctc1 $t7, $31 -/* 03DDA8 8003D1A8 44084000 */ mfc1 $t0, $f8 -/* 03DDAC 8003D1AC 00000000 */ nop -/* 03DDB0 8003D1B0 444AF800 */ cfc1 $t2, $31 -/* 03DDB4 8003D1B4 2509000A */ addiu $t1, $t0, 0xa -/* 03DDB8 8003D1B8 A7A90028 */ sh $t1, 0x28($sp) -/* 03DDBC 8003D1BC 35410003 */ ori $at, $t2, 3 -/* 03DDC0 8003D1C0 C46A0014 */ lwc1 $f10, 0x14($v1) -/* 03DDC4 8003D1C4 38210002 */ xori $at, $at, 2 -/* 03DDC8 8003D1C8 44C1F800 */ ctc1 $at, $31 -/* 03DDCC 8003D1CC A3AC0025 */ sb $t4, 0x25($sp) -/* 03DDD0 8003D1D0 46005424 */ cvt.w.s $f16, $f10 -/* 03DDD4 8003D1D4 A3AD0024 */ sb $t5, 0x24($sp) -/* 03DDD8 8003D1D8 440B8000 */ mfc1 $t3, $f16 -/* 03DDDC 8003D1DC 44CAF800 */ ctc1 $t2, $31 -/* 03DDE0 8003D1E0 AFA7003C */ sw $a3, 0x3c($sp) -/* 03DDE4 8003D1E4 AFA60048 */ sw $a2, 0x48($sp) -/* 03DDE8 8003D1E8 AFA30044 */ sw $v1, 0x44($sp) -/* 03DDEC 8003D1EC 0C003A95 */ jal func_8000EA54 -/* 03DDF0 8003D1F0 A7AB002A */ sh $t3, 0x2a($sp) -/* 03DDF4 8003D1F4 8FA30044 */ lw $v1, 0x44($sp) -/* 03DDF8 8003D1F8 8FA60048 */ lw $a2, 0x48($sp) -/* 03DDFC 8003D1FC 8FA7003C */ lw $a3, 0x3c($sp) -/* 03DE00 8003D200 10400026 */ beqz $v0, .L8003D29C -/* 03DE04 8003D204 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 03DE08 8003D208 44811000 */ mtc1 $at, $f2 -/* 03DE0C 8003D20C 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 03DE10 8003D210 44819000 */ mtc1 $at, $f18 -/* 03DE14 8003D214 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 03DE18 8003D218 46121102 */ mul.s $f4, $f2, $f18 -/* 03DE1C 8003D21C 44814800 */ mtc1 $at, $f9 -/* 03DE20 8003D220 44804000 */ mtc1 $zero, $f8 -/* 03DE24 8003D224 AC40003C */ sw $zero, 0x3c($v0) -/* 03DE28 8003D228 460021A1 */ cvt.d.s $f6, $f4 -/* 03DE2C 8003D22C 00000000 */ nop -/* 03DE30 8003D230 46283283 */ div.d $f10, $f6, $f8 -/* 03DE34 8003D234 E4420020 */ swc1 $f2, 0x20($v0) -/* 03DE38 8003D238 C472000C */ lwc1 $f18, 0xc($v1) -/* 03DE3C 8003D23C C4D0000C */ lwc1 $f16, 0xc($a2) -/* 03DE40 8003D240 00000000 */ nop -/* 03DE44 8003D244 46128101 */ sub.s $f4, $f16, $f18 -/* 03DE48 8003D248 46205020 */ cvt.s.d $f0, $f10 -/* 03DE4C 8003D24C 00000000 */ nop -/* 03DE50 8003D250 46002183 */ div.s $f6, $f4, $f0 -/* 03DE54 8003D254 E446001C */ swc1 $f6, 0x1c($v0) -/* 03DE58 8003D258 C46A0014 */ lwc1 $f10, 0x14($v1) -/* 03DE5C 8003D25C C4C80014 */ lwc1 $f8, 0x14($a2) -/* 03DE60 8003D260 AC47007C */ sw $a3, 0x7c($v0) -/* 03DE64 8003D264 460A4401 */ sub.s $f16, $f8, $f10 -/* 03DE68 8003D268 00000000 */ nop -/* 03DE6C 8003D26C 46008483 */ div.s $f18, $f16, $f0 -/* 03DE70 8003D270 444EF800 */ cfc1 $t6, $31 -/* 03DE74 8003D274 E4520024 */ swc1 $f18, 0x24($v0) -/* 03DE78 8003D278 35C10003 */ ori $at, $t6, 3 -/* 03DE7C 8003D27C 38210002 */ xori $at, $at, 2 -/* 03DE80 8003D280 44C1F800 */ ctc1 $at, $31 -/* 03DE84 8003D284 00000000 */ nop -/* 03DE88 8003D288 46000124 */ cvt.w.s $f4, $f0 -/* 03DE8C 8003D28C 440F2000 */ mfc1 $t7, $f4 -/* 03DE90 8003D290 44CEF800 */ ctc1 $t6, $31 -/* 03DE94 8003D294 AC4F0078 */ sw $t7, 0x78($v0) -/* 03DE98 8003D298 00000000 */ nop -.L8003D29C: -/* 03DE9C 8003D29C 8FBF0014 */ lw $ra, 0x14($sp) -.L8003D2A0: -/* 03DEA0 8003D2A0 27BD0048 */ addiu $sp, $sp, 0x48 -/* 03DEA4 8003D2A4 03E00008 */ jr $ra -/* 03DEA8 8003D2A8 00000000 */ nop - -glabel func_8003D2AC -/* 03DEAC 8003D2AC AFA40000 */ sw $a0, ($sp) -/* 03DEB0 8003D2B0 03E00008 */ jr $ra -/* 03DEB4 8003D2B4 AFA50004 */ sw $a1, 4($sp) - -glabel func_8003D2B8 -/* 03DEB8 8003D2B8 44852000 */ mtc1 $a1, $f4 -/* 03DEBC 8003D2BC 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 -/* 03DEC0 8003D2C0 468020A0 */ cvt.s.w $f2, $f4 -/* 03DEC4 8003D2C4 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) -/* 03DEC8 8003D2C8 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 03DECC 8003D2CC AFB00018 */ sw $s0, 0x18($sp) -/* 03DED0 8003D2D0 00808025 */ move $s0, $a0 -/* 03DED4 8003D2D4 AFBF001C */ sw $ra, 0x1c($sp) -/* 03DED8 8003D2D8 AFA5002C */ sw $a1, 0x2c($sp) -/* 03DEDC 8003D2DC 15E00007 */ bnez $t7, .L8003D2FC -/* 03DEE0 8003D2E0 46001006 */ mov.s $f0, $f2 -/* 03DEE4 8003D2E4 3C01800E */ lui $at, %hi(D_800E618C) # $at, 0x800e -/* 03DEE8 8003D2E8 C4296188 */ lwc1 $f9, %lo(D_800E6188)($at) -/* 03DEEC 8003D2EC C428618C */ lwc1 $f8, %lo(D_800E618C)($at) -/* 03DEF0 8003D2F0 460011A1 */ cvt.d.s $f6, $f2 -/* 03DEF4 8003D2F4 46283282 */ mul.d $f10, $f6, $f8 -/* 03DEF8 8003D2F8 46205020 */ cvt.s.d $f0, $f10 -.L8003D2FC: -/* 03DEFC 8003D2FC 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 03DF00 8003D300 44818800 */ mtc1 $at, $f17 -/* 03DF04 8003D304 44808000 */ mtc1 $zero, $f16 -/* 03DF08 8003D308 460004A1 */ cvt.d.s $f18, $f0 -/* 03DF0C 8003D30C 46328102 */ mul.d $f4, $f16, $f18 -/* 03DF10 8003D310 C6060020 */ lwc1 $f6, 0x20($s0) -/* 03DF14 8003D314 C612001C */ lwc1 $f18, 0x1c($s0) -/* 03DF18 8003D318 46003221 */ cvt.d.s $f8, $f6 -/* 03DF1C 8003D31C 02002025 */ move $a0, $s0 -/* 03DF20 8003D320 46244281 */ sub.d $f10, $f8, $f4 -/* 03DF24 8003D324 46205420 */ cvt.s.d $f16, $f10 -/* 03DF28 8003D328 C60A0024 */ lwc1 $f10, 0x24($s0) -/* 03DF2C 8003D32C 46009182 */ mul.s $f6, $f18, $f0 -/* 03DF30 8003D330 E6100020 */ swc1 $f16, 0x20($s0) -/* 03DF34 8003D334 C6080020 */ lwc1 $f8, 0x20($s0) -/* 03DF38 8003D338 00000000 */ nop -/* 03DF3C 8003D33C 46004102 */ mul.s $f4, $f8, $f0 -/* 03DF40 8003D340 44053000 */ mfc1 $a1, $f6 -/* 03DF44 8003D344 46005402 */ mul.s $f16, $f10, $f0 -/* 03DF48 8003D348 44062000 */ mfc1 $a2, $f4 -/* 03DF4C 8003D34C 44078000 */ mfc1 $a3, $f16 -/* 03DF50 8003D350 0C00455C */ jal func_80011570 -/* 03DF54 8003D354 00000000 */ nop -/* 03DF58 8003D358 8E180078 */ lw $t8, 0x78($s0) -/* 03DF5C 8003D35C 8FB9002C */ lw $t9, 0x2c($sp) -/* 03DF60 8003D360 02002025 */ move $a0, $s0 -/* 03DF64 8003D364 03194023 */ subu $t0, $t8, $t9 -/* 03DF68 8003D368 1D000017 */ bgtz $t0, .L8003D3C8 -/* 03DF6C 8003D36C AE080078 */ sw $t0, 0x78($s0) -/* 03DF70 8003D370 8E02007C */ lw $v0, 0x7c($s0) -/* 03DF74 8003D374 240D0001 */ li $t5, 1 -/* 03DF78 8003D378 804A0193 */ lb $t2, 0x193($v0) -/* 03DF7C 8003D37C 00000000 */ nop -/* 03DF80 8003D380 254B0001 */ addiu $t3, $t2, 1 -/* 03DF84 8003D384 A04B0193 */ sb $t3, 0x193($v0) -/* 03DF88 8003D388 804C0193 */ lb $t4, 0x193($v0) -/* 03DF8C 8003D38C 00000000 */ nop -/* 03DF90 8003D390 2981000A */ slti $at, $t4, 0xa -/* 03DF94 8003D394 14200002 */ bnez $at, .L8003D3A0 -/* 03DF98 8003D398 00000000 */ nop -/* 03DF9C 8003D39C A04D01D8 */ sb $t5, 0x1d8($v0) -.L8003D3A0: -/* 03DFA0 8003D3A0 0C003FEE */ jal func_8000FFB8 -/* 03DFA4 8003D3A4 AFA20020 */ sw $v0, 0x20($sp) -/* 03DFA8 8003D3A8 8FA20020 */ lw $v0, 0x20($sp) -/* 03DFAC 8003D3AC 2401FFFF */ li $at, -1 -/* 03DFB0 8003D3B0 844E0000 */ lh $t6, ($v0) -/* 03DFB4 8003D3B4 24040022 */ li $a0, 34 -/* 03DFB8 8003D3B8 11C10004 */ beq $t6, $at, .L8003D3CC -/* 03DFBC 8003D3BC 8FB8002C */ lw $t8, 0x2c($sp) -/* 03DFC0 8003D3C0 0C000741 */ jal func_80001D04 -/* 03DFC4 8003D3C4 00002825 */ move $a1, $zero -.L8003D3C8: -/* 03DFC8 8003D3C8 8FB8002C */ lw $t8, 0x2c($sp) -.L8003D3CC: -/* 03DFCC 8003D3CC 860F0018 */ lh $t7, 0x18($s0) -/* 03DFD0 8003D3D0 0018C8C0 */ sll $t9, $t8, 3 -/* 03DFD4 8003D3D4 01F94021 */ addu $t0, $t7, $t9 -/* 03DFD8 8003D3D8 A6080018 */ sh $t0, 0x18($s0) -/* 03DFDC 8003D3DC 8FBF001C */ lw $ra, 0x1c($sp) -/* 03DFE0 8003D3E0 8FB00018 */ lw $s0, 0x18($sp) -/* 03DFE4 8003D3E4 03E00008 */ jr $ra -/* 03DFE8 8003D3E8 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_8003D3EC -/* 03DFEC 8003D3EC AFA50004 */ sw $a1, 4($sp) -/* 03DFF0 8003D3F0 240E0064 */ li $t6, 100 -/* 03DFF4 8003D3F4 03E00008 */ jr $ra -/* 03DFF8 8003D3F8 A48E0018 */ sh $t6, 0x18($a0) - -glabel func_8003D3FC -/* 03DFFC 8003D3FC 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 03E000 8003D400 AFBF002C */ sw $ra, 0x2c($sp) -/* 03E004 8003D404 AFB00028 */ sw $s0, 0x28($sp) -/* 03E008 8003D408 8C8E007C */ lw $t6, 0x7c($a0) -/* 03E00C 8003D40C 00808025 */ move $s0, $a0 -/* 03E010 8003D410 11C00005 */ beqz $t6, .L8003D428 -/* 03E014 8003D414 00000000 */ nop -/* 03E018 8003D418 8C8F0078 */ lw $t7, 0x78($a0) -/* 03E01C 8003D41C 00000000 */ nop -/* 03E020 8003D420 01E5C023 */ subu $t8, $t7, $a1 -/* 03E024 8003D424 AC980078 */ sw $t8, 0x78($a0) -.L8003D428: -/* 03E028 8003D428 8E190078 */ lw $t9, 0x78($s0) -/* 03E02C 8003D42C 00000000 */ nop -/* 03E030 8003D430 1F20003D */ bgtz $t9, .L8003D528 -/* 03E034 8003D434 8FBF002C */ lw $ra, 0x2c($sp) -/* 03E038 8003D438 4448F800 */ cfc1 $t0, $31 -/* 03E03C 8003D43C C604000C */ lwc1 $f4, 0xc($s0) -/* 03E040 8003D440 35010003 */ ori $at, $t0, 3 -/* 03E044 8003D444 38210002 */ xori $at, $at, 2 -/* 03E048 8003D448 44C1F800 */ ctc1 $at, $31 -/* 03E04C 8003D44C 24190008 */ li $t9, 8 -/* 03E050 8003D450 460021A4 */ cvt.w.s $f6, $f4 -/* 03E054 8003D454 27A40038 */ addiu $a0, $sp, 0x38 -/* 03E058 8003D458 44C8F800 */ ctc1 $t0, $31 -/* 03E05C 8003D45C 44093000 */ mfc1 $t1, $f6 -/* 03E060 8003D460 24080053 */ li $t0, 83 -/* 03E064 8003D464 444AF800 */ cfc1 $t2, $31 -/* 03E068 8003D468 A7A9003A */ sh $t1, 0x3a($sp) -/* 03E06C 8003D46C 35410003 */ ori $at, $t2, 3 -/* 03E070 8003D470 38210002 */ xori $at, $at, 2 -/* 03E074 8003D474 44C1F800 */ ctc1 $at, $31 -/* 03E078 8003D478 C6080010 */ lwc1 $f8, 0x10($s0) -/* 03E07C 8003D47C 24050001 */ li $a1, 1 -/* 03E080 8003D480 460042A4 */ cvt.w.s $f10, $f8 -/* 03E084 8003D484 44CAF800 */ ctc1 $t2, $31 -/* 03E088 8003D488 440D5000 */ mfc1 $t5, $f10 -/* 03E08C 8003D48C 00000000 */ nop -/* 03E090 8003D490 444FF800 */ cfc1 $t7, $31 -/* 03E094 8003D494 25AEFFFD */ addiu $t6, $t5, -3 -/* 03E098 8003D498 35E10003 */ ori $at, $t7, 3 -/* 03E09C 8003D49C A7AE003C */ sh $t6, 0x3c($sp) -/* 03E0A0 8003D4A0 38210002 */ xori $at, $at, 2 -/* 03E0A4 8003D4A4 44C1F800 */ ctc1 $at, $31 -/* 03E0A8 8003D4A8 C6100014 */ lwc1 $f16, 0x14($s0) -/* 03E0AC 8003D4AC A3B90039 */ sb $t9, 0x39($sp) -/* 03E0B0 8003D4B0 460084A4 */ cvt.w.s $f18, $f16 -/* 03E0B4 8003D4B4 A3A80038 */ sb $t0, 0x38($sp) -/* 03E0B8 8003D4B8 44189000 */ mfc1 $t8, $f18 -/* 03E0BC 8003D4BC 44CFF800 */ ctc1 $t7, $31 -/* 03E0C0 8003D4C0 0C003A95 */ jal func_8000EA54 -/* 03E0C4 8003D4C4 A7B8003E */ sh $t8, 0x3e($sp) -/* 03E0C8 8003D4C8 24090001 */ li $t1, 1 -/* 03E0CC 8003D4CC 10400013 */ beqz $v0, .L8003D51C -/* 03E0D0 8003D4D0 AE09007C */ sw $t1, 0x7c($s0) -/* 03E0D4 8003D4D4 AC40003C */ sw $zero, 0x3c($v0) -/* 03E0D8 8003D4D8 8C420064 */ lw $v0, 0x64($v0) -/* 03E0DC 8003D4DC 3C014160 */ li $at, 0x41600000 # 14.000000 -/* 03E0E0 8003D4E0 AC500004 */ sw $s0, 4($v0) -/* 03E0E4 8003D4E4 C6040010 */ lwc1 $f4, 0x10($s0) -/* 03E0E8 8003D4E8 44813000 */ mtc1 $at, $f6 -/* 03E0EC 8003D4EC 3C013E80 */ li $at, 0x3E800000 # 0.250000 -/* 03E0F0 8003D4F0 8E060014 */ lw $a2, 0x14($s0) -/* 03E0F4 8003D4F4 C60C000C */ lwc1 $f12, 0xc($s0) -/* 03E0F8 8003D4F8 44814000 */ mtc1 $at, $f8 -/* 03E0FC 8003D4FC 240A0022 */ li $t2, 34 -/* 03E100 8003D500 AFAA0010 */ sw $t2, 0x10($sp) -/* 03E104 8003D504 AFA00018 */ sw $zero, 0x18($sp) -/* 03E108 8003D508 2407002C */ li $a3, 44 -/* 03E10C 8003D50C 46062381 */ sub.s $f14, $f4, $f6 -/* 03E110 8003D510 0C00FF11 */ jal func_8003FC44 -/* 03E114 8003D514 E7A80014 */ swc1 $f8, 0x14($sp) -/* 03E118 8003D518 AE00007C */ sw $zero, 0x7c($s0) -.L8003D51C: -/* 03E11C 8003D51C 240B04B0 */ li $t3, 1200 -/* 03E120 8003D520 AE0B0078 */ sw $t3, 0x78($s0) -/* 03E124 8003D524 8FBF002C */ lw $ra, 0x2c($sp) -.L8003D528: -/* 03E128 8003D528 8FB00028 */ lw $s0, 0x28($sp) -/* 03E12C 8003D52C 03E00008 */ jr $ra -/* 03E130 8003D530 27BD0040 */ addiu $sp, $sp, 0x40 - -glabel func_8003D534 -/* 03E134 8003D534 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 03E138 8003D538 AFBF0014 */ sw $ra, 0x14($sp) -/* 03E13C 8003D53C AFA5001C */ sw $a1, 0x1c($sp) -/* 03E140 8003D540 8C8F004C */ lw $t7, 0x4c($a0) -/* 03E144 8003D544 240E0002 */ li $t6, 2 -/* 03E148 8003D548 A5EE0014 */ sh $t6, 0x14($t7) -/* 03E14C 8003D54C 8C98004C */ lw $t8, 0x4c($a0) -/* 03E150 8003D550 2419001E */ li $t9, 30 -/* 03E154 8003D554 A3000011 */ sb $zero, 0x11($t8) -/* 03E158 8003D558 8C88004C */ lw $t0, 0x4c($a0) -/* 03E15C 8003D55C 24090014 */ li $t1, 20 -/* 03E160 8003D560 A1190010 */ sb $t9, 0x10($t0) -/* 03E164 8003D564 240A0010 */ li $t2, 16 -/* 03E168 8003D568 A489007C */ sh $t1, 0x7c($a0) -/* 03E16C 8003D56C A48A007E */ sh $t2, 0x7e($a0) -/* 03E170 8003D570 0C0270C3 */ jal func_8009C30C -/* 03E174 8003D574 AFA40018 */ sw $a0, 0x18($sp) -/* 03E178 8003D578 8FA40018 */ lw $a0, 0x18($sp) -/* 03E17C 8003D57C 304B1000 */ andi $t3, $v0, 0x1000 -/* 03E180 8003D580 11600004 */ beqz $t3, .L8003D594 -/* 03E184 8003D584 8FBF0014 */ lw $ra, 0x14($sp) -/* 03E188 8003D588 0C003FEE */ jal func_8000FFB8 -/* 03E18C 8003D58C 00000000 */ nop -/* 03E190 8003D590 8FBF0014 */ lw $ra, 0x14($sp) -.L8003D594: -/* 03E194 8003D594 27BD0018 */ addiu $sp, $sp, 0x18 -/* 03E198 8003D598 03E00008 */ jr $ra -/* 03E19C 8003D59C 00000000 */ nop - -glabel func_8003D5A0 -/* 03E1A0 8003D5A0 44852000 */ mtc1 $a1, $f4 -/* 03E1A4 8003D5A4 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 -/* 03E1A8 8003D5A8 468020A0 */ cvt.s.w $f2, $f4 -/* 03E1AC 8003D5AC 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) -/* 03E1B0 8003D5B0 27BDFF90 */ addiu $sp, $sp, -0x70 -/* 03E1B4 8003D5B4 AFB00020 */ sw $s0, 0x20($sp) -/* 03E1B8 8003D5B8 00808025 */ move $s0, $a0 -/* 03E1BC 8003D5BC AFBF0024 */ sw $ra, 0x24($sp) -/* 03E1C0 8003D5C0 AFA50074 */ sw $a1, 0x74($sp) -/* 03E1C4 8003D5C4 15E00007 */ bnez $t7, .L8003D5E4 -/* 03E1C8 8003D5C8 46001006 */ mov.s $f0, $f2 -/* 03E1CC 8003D5CC 3C01800E */ lui $at, %hi(D_800E6194) # $at, 0x800e -/* 03E1D0 8003D5D0 C4296190 */ lwc1 $f9, %lo(D_800E6190)($at) -/* 03E1D4 8003D5D4 C4286194 */ lwc1 $f8, %lo(D_800E6194)($at) -/* 03E1D8 8003D5D8 460011A1 */ cvt.d.s $f6, $f2 -/* 03E1DC 8003D5DC 46283282 */ mul.d $f10, $f6, $f8 -/* 03E1E0 8003D5E0 46205020 */ cvt.s.d $f0, $f10 -.L8003D5E4: -/* 03E1E4 8003D5E4 8E180064 */ lw $t8, 0x64($s0) -/* 03E1E8 8003D5E8 8FAA0074 */ lw $t2, 0x74($sp) -/* 03E1EC 8003D5EC AFB8003C */ sw $t8, 0x3c($sp) -/* 03E1F0 8003D5F0 86190018 */ lh $t9, 0x18($s0) -/* 03E1F4 8003D5F4 8E0D0078 */ lw $t5, 0x78($s0) -/* 03E1F8 8003D5F8 000A58C0 */ sll $t3, $t2, 3 -/* 03E1FC 8003D5FC 2401FFFF */ li $at, -1 -/* 03E200 8003D600 032B6021 */ addu $t4, $t9, $t3 -/* 03E204 8003D604 15A10019 */ bne $t5, $at, .L8003D66C -/* 03E208 8003D608 A60C0018 */ sh $t4, 0x18($s0) -/* 03E20C 8003D60C 860E0006 */ lh $t6, 6($s0) -/* 03E210 8003D610 26090078 */ addiu $t1, $s0, 0x78 -/* 03E214 8003D614 35CF4000 */ ori $t7, $t6, 0x4000 -/* 03E218 8003D618 A60F0006 */ sh $t7, 6($s0) -/* 03E21C 8003D61C 8FAA0074 */ lw $t2, 0x74($sp) -/* 03E220 8003D620 85380006 */ lh $t8, 6($t1) -/* 03E224 8003D624 240B0001 */ li $t3, 1 -/* 03E228 8003D628 030AC823 */ subu $t9, $t8, $t2 -/* 03E22C 8003D62C A5390006 */ sh $t9, 6($t1) -/* 03E230 8003D630 AE0B0074 */ sw $t3, 0x74($s0) -/* 03E234 8003D634 8FA50074 */ lw $a1, 0x74($sp) -/* 03E238 8003D638 AFA90030 */ sw $t1, 0x30($sp) -/* 03E23C 8003D63C 0C02BF0F */ jal func_800AFC3C -/* 03E240 8003D640 02002025 */ move $a0, $s0 -/* 03E244 8003D644 8FA90030 */ lw $t1, 0x30($sp) -/* 03E248 8003D648 00000000 */ nop -/* 03E24C 8003D64C 852C0006 */ lh $t4, 6($t1) -/* 03E250 8003D650 00000000 */ nop -/* 03E254 8003D654 1D80014F */ bgtz $t4, .L8003DB94 -/* 03E258 8003D658 8FBF0024 */ lw $ra, 0x24($sp) -/* 03E25C 8003D65C 0C003FEE */ jal func_8000FFB8 -/* 03E260 8003D660 02002025 */ move $a0, $s0 -/* 03E264 8003D664 1000014B */ b .L8003DB94 -/* 03E268 8003D668 8FBF0024 */ lw $ra, 0x24($sp) -.L8003D66C: -/* 03E26C 8003D66C 8FAD003C */ lw $t5, 0x3c($sp) -/* 03E270 8003D670 8FAE0074 */ lw $t6, 0x74($sp) -/* 03E274 8003D674 81A20008 */ lb $v0, 8($t5) -/* 03E278 8003D678 8FB8003C */ lw $t8, 0x3c($sp) -/* 03E27C 8003D67C 18400004 */ blez $v0, .L8003D690 -/* 03E280 8003D680 26090078 */ addiu $t1, $s0, 0x78 -/* 03E284 8003D684 004E7823 */ subu $t7, $v0, $t6 -/* 03E288 8003D688 10000003 */ b .L8003D698 -/* 03E28C 8003D68C A1AF0008 */ sb $t7, 8($t5) -.L8003D690: -/* 03E290 8003D690 A3000008 */ sb $zero, 8($t8) -/* 03E294 8003D694 AF000000 */ sw $zero, ($t8) -.L8003D698: -/* 03E298 8003D698 8D2A0000 */ lw $t2, ($t1) -/* 03E29C 8003D69C 24010001 */ li $at, 1 -/* 03E2A0 8003D6A0 1541009B */ bne $t2, $at, .L8003D910 -/* 03E2A4 8003D6A4 8FAD003C */ lw $t5, 0x3c($sp) -/* 03E2A8 8003D6A8 C612001C */ lwc1 $f18, 0x1c($s0) -/* 03E2AC 8003D6AC C610000C */ lwc1 $f16, 0xc($s0) -/* 03E2B0 8003D6B0 46009102 */ mul.s $f4, $f18, $f0 -/* 03E2B4 8003D6B4 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 03E2B8 8003D6B8 2605000C */ addiu $a1, $s0, 0xc -/* 03E2BC 8003D6BC 24040001 */ li $a0, 1 -/* 03E2C0 8003D6C0 46048180 */ add.s $f6, $f16, $f4 -/* 03E2C4 8003D6C4 27A6005C */ addiu $a2, $sp, 0x5c -/* 03E2C8 8003D6C8 E7A6005C */ swc1 $f6, 0x5c($sp) -/* 03E2CC 8003D6CC C60A0020 */ lwc1 $f10, 0x20($s0) -/* 03E2D0 8003D6D0 C6080010 */ lwc1 $f8, 0x10($s0) -/* 03E2D4 8003D6D4 46005482 */ mul.s $f18, $f10, $f0 -/* 03E2D8 8003D6D8 2407FFFF */ li $a3, -1 -/* 03E2DC 8003D6DC 46124400 */ add.s $f16, $f8, $f18 -/* 03E2E0 8003D6E0 44819000 */ mtc1 $at, $f18 -/* 03E2E4 8003D6E4 E7B00060 */ swc1 $f16, 0x60($sp) -/* 03E2E8 8003D6E8 C6060024 */ lwc1 $f6, 0x24($s0) -/* 03E2EC 8003D6EC C6040014 */ lwc1 $f4, 0x14($s0) -/* 03E2F0 8003D6F0 46003282 */ mul.s $f10, $f6, $f0 -/* 03E2F4 8003D6F4 E7A00054 */ swc1 $f0, 0x54($sp) -/* 03E2F8 8003D6F8 AFA90030 */ sw $t1, 0x30($sp) -/* 03E2FC 8003D6FC AFA5002C */ sw $a1, 0x2c($sp) -/* 03E300 8003D700 460A2200 */ add.s $f8, $f4, $f10 -/* 03E304 8003D704 E7B20058 */ swc1 $f18, 0x58($sp) -/* 03E308 8003D708 0C00C44C */ jal func_80031130 -/* 03E30C 8003D70C E7A80064 */ swc1 $f8, 0x64($sp) -/* 03E310 8003D710 8FA4002C */ lw $a0, 0x2c($sp) -/* 03E314 8003D714 24190001 */ li $t9, 1 -/* 03E318 8003D718 27AB0048 */ addiu $t3, $sp, 0x48 -/* 03E31C 8003D71C AFA00048 */ sw $zero, 0x48($sp) -/* 03E320 8003D720 AFAB0014 */ sw $t3, 0x14($sp) -/* 03E324 8003D724 AFB90010 */ sw $t9, 0x10($sp) -/* 03E328 8003D728 27A5005C */ addiu $a1, $sp, 0x5c -/* 03E32C 8003D72C 27A60058 */ addiu $a2, $sp, 0x58 -/* 03E330 8003D730 0C00C580 */ jal func_80031600 -/* 03E334 8003D734 27A70043 */ addiu $a3, $sp, 0x43 -/* 03E338 8003D738 C7B0005C */ lwc1 $f16, 0x5c($sp) -/* 03E33C 8003D73C C606000C */ lwc1 $f6, 0xc($s0) -/* 03E340 8003D740 C7A00054 */ lwc1 $f0, 0x54($sp) -/* 03E344 8003D744 46068101 */ sub.s $f4, $f16, $f6 -/* 03E348 8003D748 8FA90030 */ lw $t1, 0x30($sp) -/* 03E34C 8003D74C 46002283 */ div.s $f10, $f4, $f0 -/* 03E350 8003D750 C6120010 */ lwc1 $f18, 0x10($s0) -/* 03E354 8003D754 24010002 */ li $at, 2 -/* 03E358 8003D758 44806800 */ mtc1 $zero, $f13 -/* 03E35C 8003D75C 02002025 */ move $a0, $s0 -/* 03E360 8003D760 27A50058 */ addiu $a1, $sp, 0x58 -/* 03E364 8003D764 00003025 */ move $a2, $zero -/* 03E368 8003D768 24070001 */ li $a3, 1 -/* 03E36C 8003D76C E60A001C */ swc1 $f10, 0x1c($s0) -/* 03E370 8003D770 C7A80060 */ lwc1 $f8, 0x60($sp) -/* 03E374 8003D774 C60A0014 */ lwc1 $f10, 0x14($s0) -/* 03E378 8003D778 46124401 */ sub.s $f16, $f8, $f18 -/* 03E37C 8003D77C 00000000 */ nop -/* 03E380 8003D780 46008183 */ div.s $f6, $f16, $f0 -/* 03E384 8003D784 E6060020 */ swc1 $f6, 0x20($s0) -/* 03E388 8003D788 C7A40064 */ lwc1 $f4, 0x64($sp) -/* 03E38C 8003D78C 00000000 */ nop -/* 03E390 8003D790 460A2201 */ sub.s $f8, $f4, $f10 -/* 03E394 8003D794 00000000 */ nop -/* 03E398 8003D798 46004483 */ div.s $f18, $f8, $f0 -/* 03E39C 8003D79C E6120024 */ swc1 $f18, 0x24($s0) -/* 03E3A0 8003D7A0 C7B0005C */ lwc1 $f16, 0x5c($sp) -/* 03E3A4 8003D7A4 00000000 */ nop -/* 03E3A8 8003D7A8 E610000C */ swc1 $f16, 0xc($s0) -/* 03E3AC 8003D7AC C7A60060 */ lwc1 $f6, 0x60($sp) -/* 03E3B0 8003D7B0 00000000 */ nop -/* 03E3B4 8003D7B4 E6060010 */ swc1 $f6, 0x10($s0) -/* 03E3B8 8003D7B8 C7A40064 */ lwc1 $f4, 0x64($sp) -/* 03E3BC 8003D7BC 00000000 */ nop -/* 03E3C0 8003D7C0 E6040014 */ swc1 $f4, 0x14($s0) -/* 03E3C4 8003D7C4 8FAC003C */ lw $t4, 0x3c($sp) -/* 03E3C8 8003D7C8 00000000 */ nop -/* 03E3CC 8003D7CC 818E0009 */ lb $t6, 9($t4) -/* 03E3D0 8003D7D0 00000000 */ nop -/* 03E3D4 8003D7D4 11C10016 */ beq $t6, $at, .L8003D830 -/* 03E3D8 8003D7D8 3C01800E */ lui $at, %hi(D_800E619C) # $at, 0x800e -/* 03E3DC 8003D7DC C4216198 */ lwc1 $f1, %lo(D_800E6198)($at) -/* 03E3E0 8003D7E0 C420619C */ lwc1 $f0, %lo(D_800E619C)($at) -/* 03E3E4 8003D7E4 C60A0020 */ lwc1 $f10, 0x20($s0) -/* 03E3E8 8003D7E8 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 03E3EC 8003D7EC 44819800 */ mtc1 $at, $f19 -/* 03E3F0 8003D7F0 44809000 */ mtc1 $zero, $f18 -/* 03E3F4 8003D7F4 46005221 */ cvt.d.s $f8, $f10 -/* 03E3F8 8003D7F8 46324401 */ sub.d $f16, $f8, $f18 -/* 03E3FC 8003D7FC C604001C */ lwc1 $f4, 0x1c($s0) -/* 03E400 8003D800 462081A0 */ cvt.s.d $f6, $f16 -/* 03E404 8003D804 C6100024 */ lwc1 $f16, 0x24($s0) -/* 03E408 8003D808 460022A1 */ cvt.d.s $f10, $f4 -/* 03E40C 8003D80C 46205202 */ mul.d $f8, $f10, $f0 -/* 03E410 8003D810 E6060020 */ swc1 $f6, 0x20($s0) -/* 03E414 8003D814 460081A1 */ cvt.d.s $f6, $f16 -/* 03E418 8003D818 46203102 */ mul.d $f4, $f6, $f0 -/* 03E41C 8003D81C 462044A0 */ cvt.s.d $f18, $f8 -/* 03E420 8003D820 E612001C */ swc1 $f18, 0x1c($s0) -/* 03E424 8003D824 462022A0 */ cvt.s.d $f10, $f4 -/* 03E428 8003D828 10000006 */ b .L8003D844 -/* 03E42C 8003D82C E60A0024 */ swc1 $f10, 0x24($s0) -.L8003D830: -/* 03E430 8003D830 44800000 */ mtc1 $zero, $f0 -/* 03E434 8003D834 00000000 */ nop -/* 03E438 8003D838 E600001C */ swc1 $f0, 0x1c($s0) -/* 03E43C 8003D83C E6000020 */ swc1 $f0, 0x20($s0) -/* 03E440 8003D840 E6000024 */ swc1 $f0, 0x24($s0) -.L8003D844: -/* 03E444 8003D844 C602001C */ lwc1 $f2, 0x1c($s0) -/* 03E448 8003D848 44806000 */ mtc1 $zero, $f12 -/* 03E44C 8003D84C 46001221 */ cvt.d.s $f8, $f2 -/* 03E450 8003D850 462C403C */ c.lt.d $f8, $f12 -/* 03E454 8003D854 8FAF0048 */ lw $t7, 0x48($sp) -/* 03E458 8003D858 45000002 */ bc1f .L8003D864 -/* 03E45C 8003D85C 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 03E460 8003D860 46001087 */ neg.s $f2, $f2 -.L8003D864: -/* 03E464 8003D864 C6000024 */ lwc1 $f0, 0x24($s0) -/* 03E468 8003D868 00000000 */ nop -/* 03E46C 8003D86C 460004A1 */ cvt.d.s $f18, $f0 -/* 03E470 8003D870 462C903C */ c.lt.d $f18, $f12 -/* 03E474 8003D874 00000000 */ nop -/* 03E478 8003D878 45000002 */ bc1f .L8003D884 -/* 03E47C 8003D87C 00000000 */ nop -/* 03E480 8003D880 46000007 */ neg.s $f0, $f0 -.L8003D884: -/* 03E484 8003D884 19E0000E */ blez $t7, .L8003D8C0 -/* 03E488 8003D888 00000000 */ nop -/* 03E48C 8003D88C 44816800 */ mtc1 $at, $f13 -/* 03E490 8003D890 44806000 */ mtc1 $zero, $f12 -/* 03E494 8003D894 46001421 */ cvt.d.s $f16, $f2 -/* 03E498 8003D898 462C803C */ c.lt.d $f16, $f12 -/* 03E49C 8003D89C 00000000 */ nop -/* 03E4A0 8003D8A0 45000007 */ bc1f .L8003D8C0 -/* 03E4A4 8003D8A4 00000000 */ nop -/* 03E4A8 8003D8A8 460001A1 */ cvt.d.s $f6, $f0 -/* 03E4AC 8003D8AC 462C303C */ c.lt.d $f6, $f12 -/* 03E4B0 8003D8B0 00000000 */ nop -/* 03E4B4 8003D8B4 45000002 */ bc1f .L8003D8C0 -/* 03E4B8 8003D8B8 00000000 */ nop -/* 03E4BC 8003D8BC AD200000 */ sw $zero, ($t1) -.L8003D8C0: -/* 03E4C0 8003D8C0 3C01800E */ lui $at, %hi(D_800E61A0) # $at, 0x800e -/* 03E4C4 8003D8C4 C42461A0 */ lwc1 $f4, %lo(D_800E61A0)($at) -/* 03E4C8 8003D8C8 AFA90030 */ sw $t1, 0x30($sp) -/* 03E4CC 8003D8CC 0C00AE6F */ jal func_8002B9BC -/* 03E4D0 8003D8D0 E7A40058 */ swc1 $f4, 0x58($sp) -/* 03E4D4 8003D8D4 8FA90030 */ lw $t1, 0x30($sp) -/* 03E4D8 8003D8D8 1040000D */ beqz $v0, .L8003D910 -/* 03E4DC 8003D8DC 8FAD003C */ lw $t5, 0x3c($sp) -/* 03E4E0 8003D8E0 C60A0010 */ lwc1 $f10, 0x10($s0) -/* 03E4E4 8003D8E4 C7A80058 */ lwc1 $f8, 0x58($sp) -/* 03E4E8 8003D8E8 00000000 */ nop -/* 03E4EC 8003D8EC 4608503C */ c.lt.s $f10, $f8 -/* 03E4F0 8003D8F0 00000000 */ nop -/* 03E4F4 8003D8F4 45000006 */ bc1f .L8003D910 -/* 03E4F8 8003D8F8 8FAD003C */ lw $t5, 0x3c($sp) -/* 03E4FC 8003D8FC AD200000 */ sw $zero, ($t1) -/* 03E500 8003D900 C7B20058 */ lwc1 $f18, 0x58($sp) -/* 03E504 8003D904 00000000 */ nop -/* 03E508 8003D908 E6120010 */ swc1 $f18, 0x10($s0) -/* 03E50C 8003D90C 8FAD003C */ lw $t5, 0x3c($sp) -.L8003D910: -/* 03E510 8003D910 24010002 */ li $at, 2 -/* 03E514 8003D914 81B80009 */ lb $t8, 9($t5) -/* 03E518 8003D918 8FAA0074 */ lw $t2, 0x74($sp) -/* 03E51C 8003D91C 13010002 */ beq $t8, $at, .L8003D928 -/* 03E520 8003D920 24040046 */ li $a0, 70 -/* 03E524 8003D924 24040037 */ li $a0, 55 -.L8003D928: -/* 03E528 8003D928 85220004 */ lh $v0, 4($t1) -/* 03E52C 8003D92C 00000000 */ nop -/* 03E530 8003D930 18400003 */ blez $v0, .L8003D940 -/* 03E534 8003D934 004AC823 */ subu $t9, $v0, $t2 -/* 03E538 8003D938 10000002 */ b .L8003D944 -/* 03E53C 8003D93C A5390004 */ sh $t9, 4($t1) -.L8003D940: -/* 03E540 8003D940 A5200004 */ sh $zero, 4($t1) -.L8003D944: -/* 03E544 8003D944 8E0B004C */ lw $t3, 0x4c($s0) -/* 03E548 8003D948 00000000 */ nop -/* 03E54C 8003D94C 916C0013 */ lbu $t4, 0x13($t3) -/* 03E550 8003D950 00000000 */ nop -/* 03E554 8003D954 29810078 */ slti $at, $t4, 0x78 -/* 03E558 8003D958 1020001C */ beqz $at, .L8003D9CC -/* 03E55C 8003D95C 00000000 */ nop -/* 03E560 8003D960 AFA40044 */ sw $a0, 0x44($sp) -/* 03E564 8003D964 0C01AF66 */ jal func_8006BD98 -/* 03E568 8003D968 AFA90030 */ sw $t1, 0x30($sp) -/* 03E56C 8003D96C 8FA40044 */ lw $a0, 0x44($sp) -/* 03E570 8003D970 8FA90030 */ lw $t1, 0x30($sp) -/* 03E574 8003D974 24010041 */ li $at, 65 -/* 03E578 8003D978 14410014 */ bne $v0, $at, .L8003D9CC -/* 03E57C 8003D97C 00000000 */ nop -/* 03E580 8003D980 8E0E004C */ lw $t6, 0x4c($s0) -/* 03E584 8003D984 00000000 */ nop -/* 03E588 8003D988 8DC30000 */ lw $v1, ($t6) -/* 03E58C 8003D98C 00000000 */ nop -/* 03E590 8003D990 1060000E */ beqz $v1, .L8003D9CC -/* 03E594 8003D994 00000000 */ nop -/* 03E598 8003D998 8C6F0040 */ lw $t7, 0x40($v1) -/* 03E59C 8003D99C 24010001 */ li $at, 1 -/* 03E5A0 8003D9A0 81ED0054 */ lb $t5, 0x54($t7) -/* 03E5A4 8003D9A4 00000000 */ nop -/* 03E5A8 8003D9A8 15A10008 */ bne $t5, $at, .L8003D9CC -/* 03E5AC 8003D9AC 00000000 */ nop -/* 03E5B0 8003D9B0 8C680064 */ lw $t0, 0x64($v1) -/* 03E5B4 8003D9B4 2401FFFF */ li $at, -1 -/* 03E5B8 8003D9B8 85180000 */ lh $t8, ($t0) -/* 03E5BC 8003D9BC 00000000 */ nop -/* 03E5C0 8003D9C0 17010002 */ bne $t8, $at, .L8003D9CC -/* 03E5C4 8003D9C4 00000000 */ nop -/* 03E5C8 8003D9C8 2484001E */ addiu $a0, $a0, 0x1e -.L8003D9CC: -/* 03E5CC 8003D9CC 8E02004C */ lw $v0, 0x4c($s0) -/* 03E5D0 8003D9D0 00000000 */ nop -/* 03E5D4 8003D9D4 904A0013 */ lbu $t2, 0x13($v0) -/* 03E5D8 8003D9D8 00000000 */ nop -/* 03E5DC 8003D9DC 0144082A */ slt $at, $t2, $a0 -/* 03E5E0 8003D9E0 1020006C */ beqz $at, .L8003DB94 -/* 03E5E4 8003D9E4 8FBF0024 */ lw $ra, 0x24($sp) -/* 03E5E8 8003D9E8 85390004 */ lh $t9, 4($t1) -/* 03E5EC 8003D9EC 00000000 */ nop -/* 03E5F0 8003D9F0 17200068 */ bnez $t9, .L8003DB94 -/* 03E5F4 8003D9F4 8FBF0024 */ lw $ra, 0x24($sp) -/* 03E5F8 8003D9F8 8C430000 */ lw $v1, ($v0) -/* 03E5FC 8003D9FC 00000000 */ nop -/* 03E600 8003DA00 10600064 */ beqz $v1, .L8003DB94 -/* 03E604 8003DA04 8FBF0024 */ lw $ra, 0x24($sp) -/* 03E608 8003DA08 8C6B0040 */ lw $t3, 0x40($v1) -/* 03E60C 8003DA0C 24010001 */ li $at, 1 -/* 03E610 8003DA10 816C0054 */ lb $t4, 0x54($t3) -/* 03E614 8003DA14 00000000 */ nop -/* 03E618 8003DA18 1581005E */ bne $t4, $at, .L8003DB94 -/* 03E61C 8003DA1C 8FBF0024 */ lw $ra, 0x24($sp) -/* 03E620 8003DA20 8C680064 */ lw $t0, 0x64($v1) -/* 03E624 8003DA24 AFA90030 */ sw $t1, 0x30($sp) -/* 03E628 8003DA28 AFA3006C */ sw $v1, 0x6c($sp) -/* 03E62C 8003DA2C 0C01AF66 */ jal func_8006BD98 -/* 03E630 8003DA30 AFA80068 */ sw $t0, 0x68($sp) -/* 03E634 8003DA34 8FA3006C */ lw $v1, 0x6c($sp) -/* 03E638 8003DA38 8FA80068 */ lw $t0, 0x68($sp) -/* 03E63C 8003DA3C 8FA90030 */ lw $t1, 0x30($sp) -/* 03E640 8003DA40 24010041 */ li $at, 65 -/* 03E644 8003DA44 14410006 */ bne $v0, $at, .L8003DA60 -/* 03E648 8003DA48 24040022 */ li $a0, 34 -/* 03E64C 8003DA4C 810E0185 */ lb $t6, 0x185($t0) -/* 03E650 8003DA50 00000000 */ nop -/* 03E654 8003DA54 29C10002 */ slti $at, $t6, 2 -/* 03E658 8003DA58 1020004E */ beqz $at, .L8003DB94 -/* 03E65C 8003DA5C 8FBF0024 */ lw $ra, 0x24($sp) -.L8003DA60: -/* 03E660 8003DA60 8D0F0180 */ lw $t7, 0x180($t0) -/* 03E664 8003DA64 240D0004 */ li $t5, 4 -/* 03E668 8003DA68 AFAF0034 */ sw $t7, 0x34($sp) -/* 03E66C 8003DA6C 8C670014 */ lw $a3, 0x14($v1) -/* 03E670 8003DA70 8C660010 */ lw $a2, 0x10($v1) -/* 03E674 8003DA74 8C65000C */ lw $a1, 0xc($v1) -/* 03E678 8003DA78 25180180 */ addiu $t8, $t0, 0x180 -/* 03E67C 8003DA7C AFB80014 */ sw $t8, 0x14($sp) -/* 03E680 8003DA80 AFA90030 */ sw $t1, 0x30($sp) -/* 03E684 8003DA84 AFA80068 */ sw $t0, 0x68($sp) -/* 03E688 8003DA88 AFA3006C */ sw $v1, 0x6c($sp) -/* 03E68C 8003DA8C 0C002556 */ jal func_80009558 -/* 03E690 8003DA90 AFAD0010 */ sw $t5, 0x10($sp) -/* 03E694 8003DA94 8FA40034 */ lw $a0, 0x34($sp) -/* 03E698 8003DA98 8FA3006C */ lw $v1, 0x6c($sp) -/* 03E69C 8003DA9C 8FA80068 */ lw $t0, 0x68($sp) -/* 03E6A0 8003DAA0 8FA90030 */ lw $t1, 0x30($sp) -/* 03E6A4 8003DAA4 10800009 */ beqz $a0, .L8003DACC -/* 03E6A8 8003DAA8 00000000 */ nop -/* 03E6AC 8003DAAC AFA3006C */ sw $v1, 0x6c($sp) -/* 03E6B0 8003DAB0 AFA80068 */ sw $t0, 0x68($sp) -/* 03E6B4 8003DAB4 0C0025BE */ jal func_800096F8 -/* 03E6B8 8003DAB8 AFA90030 */ sw $t1, 0x30($sp) -/* 03E6BC 8003DABC 8FA3006C */ lw $v1, 0x6c($sp) -/* 03E6C0 8003DAC0 8FA80068 */ lw $t0, 0x68($sp) -/* 03E6C4 8003DAC4 8FA90030 */ lw $t1, 0x30($sp) -/* 03E6C8 8003DAC8 00000000 */ nop -.L8003DACC: -/* 03E6CC 8003DACC 850A0000 */ lh $t2, ($t0) -/* 03E6D0 8003DAD0 2401FFFF */ li $at, -1 -/* 03E6D4 8003DAD4 11410013 */ beq $t2, $at, .L8003DB24 -/* 03E6D8 8003DAD8 00000000 */ nop -/* 03E6DC 8003DADC 81190185 */ lb $t9, 0x185($t0) -/* 03E6E0 8003DAE0 24010009 */ li $at, 9 -/* 03E6E4 8003DAE4 1721000F */ bne $t9, $at, .L8003DB24 -/* 03E6E8 8003DAE8 00000000 */ nop -/* 03E6EC 8003DAEC 81040003 */ lb $a0, 3($t0) -/* 03E6F0 8003DAF0 8C65000C */ lw $a1, 0xc($v1) -/* 03E6F4 8003DAF4 8C660010 */ lw $a2, 0x10($v1) -/* 03E6F8 8003DAF8 8C670014 */ lw $a3, 0x14($v1) -/* 03E6FC 8003DAFC 2484007B */ addiu $a0, $a0, 0x7b -/* 03E700 8003DB00 308BFFFF */ andi $t3, $a0, 0xffff -/* 03E704 8003DB04 01602025 */ move $a0, $t3 -/* 03E708 8003DB08 AFA90030 */ sw $t1, 0x30($sp) -/* 03E70C 8003DB0C AFA80068 */ sw $t0, 0x68($sp) -/* 03E710 8003DB10 0C0007AA */ jal func_80001EA8 -/* 03E714 8003DB14 AFA00010 */ sw $zero, 0x10($sp) -/* 03E718 8003DB18 8FA80068 */ lw $t0, 0x68($sp) -/* 03E71C 8003DB1C 8FA90030 */ lw $t1, 0x30($sp) -/* 03E720 8003DB20 00000000 */ nop -.L8003DB24: -/* 03E724 8003DB24 810C0185 */ lb $t4, 0x185($t0) -/* 03E728 8003DB28 240D0001 */ li $t5, 1 -/* 03E72C 8003DB2C 258E0001 */ addiu $t6, $t4, 1 -/* 03E730 8003DB30 A10E0185 */ sb $t6, 0x185($t0) -/* 03E734 8003DB34 8FAF003C */ lw $t7, 0x3c($sp) -/* 03E738 8003DB38 00000000 */ nop -/* 03E73C 8003DB3C 8DE20004 */ lw $v0, 4($t7) -/* 03E740 8003DB40 00000000 */ nop -/* 03E744 8003DB44 10400002 */ beqz $v0, .L8003DB50 -/* 03E748 8003DB48 00000000 */ nop -/* 03E74C 8003DB4C AC4D007C */ sw $t5, 0x7c($v0) -.L8003DB50: -/* 03E750 8003DB50 0C0270F2 */ jal func_8009C3C8 -/* 03E754 8003DB54 AFA90030 */ sw $t1, 0x30($sp) -/* 03E758 8003DB58 8FA90030 */ lw $t1, 0x30($sp) -/* 03E75C 8003DB5C 28410002 */ slti $at, $v0, 2 -/* 03E760 8003DB60 14200005 */ bnez $at, .L8003DB78 -/* 03E764 8003DB64 2418FFFF */ li $t8, -1 -/* 03E768 8003DB68 0C003FEE */ jal func_8000FFB8 -/* 03E76C 8003DB6C 02002025 */ move $a0, $s0 -/* 03E770 8003DB70 10000008 */ b .L8003DB94 -/* 03E774 8003DB74 8FBF0024 */ lw $ra, 0x24($sp) -.L8003DB78: -/* 03E778 8003DB78 AD380000 */ sw $t8, ($t1) -/* 03E77C 8003DB7C 240A0001 */ li $t2, 1 -/* 03E780 8003DB80 AE0A0074 */ sw $t2, 0x74($s0) -/* 03E784 8003DB84 8FA50074 */ lw $a1, 0x74($sp) -/* 03E788 8003DB88 0C02BF0F */ jal func_800AFC3C -/* 03E78C 8003DB8C 02002025 */ move $a0, $s0 -/* 03E790 8003DB90 8FBF0024 */ lw $ra, 0x24($sp) -.L8003DB94: -/* 03E794 8003DB94 8FB00020 */ lw $s0, 0x20($sp) -/* 03E798 8003DB98 03E00008 */ jr $ra -/* 03E79C 8003DB9C 27BD0070 */ addiu $sp, $sp, 0x70 - -glabel func_8003DBA0 -/* 03E7A0 8003DBA0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 03E7A4 8003DBA4 AFBF0014 */ sw $ra, 0x14($sp) -/* 03E7A8 8003DBA8 AFA5001C */ sw $a1, 0x1c($sp) -/* 03E7AC 8003DBAC 8C8F004C */ lw $t7, 0x4c($a0) -/* 03E7B0 8003DBB0 240E0002 */ li $t6, 2 -/* 03E7B4 8003DBB4 A5EE0014 */ sh $t6, 0x14($t7) -/* 03E7B8 8003DBB8 8C98004C */ lw $t8, 0x4c($a0) -/* 03E7BC 8003DBBC 2419001E */ li $t9, 30 -/* 03E7C0 8003DBC0 A3000011 */ sb $zero, 0x11($t8) -/* 03E7C4 8003DBC4 8C88004C */ lw $t0, 0x4c($a0) -/* 03E7C8 8003DBC8 24090003 */ li $t1, 3 -/* 03E7CC 8003DBCC A1190010 */ sb $t9, 0x10($t0) -/* 03E7D0 8003DBD0 240A0010 */ li $t2, 16 -/* 03E7D4 8003DBD4 AC890078 */ sw $t1, 0x78($a0) -/* 03E7D8 8003DBD8 AC8A007C */ sw $t2, 0x7c($a0) -/* 03E7DC 8003DBDC 0C0270B4 */ jal func_8009C2D0 -/* 03E7E0 8003DBE0 AFA40018 */ sw $a0, 0x18($sp) -/* 03E7E4 8003DBE4 8FA40018 */ lw $a0, 0x18($sp) -/* 03E7E8 8003DBE8 1440000F */ bnez $v0, .L8003DC28 -/* 03E7EC 8003DBEC 00000000 */ nop -/* 03E7F0 8003DBF0 0C003877 */ jal func_8000E1DC -/* 03E7F4 8003DBF4 AFA40018 */ sw $a0, 0x18($sp) -/* 03E7F8 8003DBF8 8FA40018 */ lw $a0, 0x18($sp) -/* 03E7FC 8003DBFC 10400009 */ beqz $v0, .L8003DC24 -/* 03E800 8003DC00 240B0003 */ li $t3, 3 -/* 03E804 8003DC04 0C027B1C */ jal func_8009EC70 -/* 03E808 8003DC08 AFA40018 */ sw $a0, 0x18($sp) -/* 03E80C 8003DC0C 8FA40018 */ lw $a0, 0x18($sp) -/* 03E810 8003DC10 10400004 */ beqz $v0, .L8003DC24 -/* 03E814 8003DC14 240B0003 */ li $t3, 3 -/* 03E818 8003DC18 10000003 */ b .L8003DC28 -/* 03E81C 8003DC1C AC800078 */ sw $zero, 0x78($a0) -/* 03E820 8003DC20 240B0003 */ li $t3, 3 -.L8003DC24: -/* 03E824 8003DC24 AC8B0078 */ sw $t3, 0x78($a0) -.L8003DC28: -/* 03E828 8003DC28 8C8C0078 */ lw $t4, 0x78($a0) -/* 03E82C 8003DC2C 24010003 */ li $at, 3 -/* 03E830 8003DC30 15810007 */ bne $t4, $at, .L8003DC50 -/* 03E834 8003DC34 8FBF0014 */ lw $ra, 0x14($sp) -/* 03E838 8003DC38 848D0006 */ lh $t5, 6($a0) -/* 03E83C 8003DC3C 00000000 */ nop -/* 03E840 8003DC40 35AE0600 */ ori $t6, $t5, 0x600 -/* 03E844 8003DC44 0C003FEE */ jal func_8000FFB8 -/* 03E848 8003DC48 A48E0006 */ sh $t6, 6($a0) -/* 03E84C 8003DC4C 8FBF0014 */ lw $ra, 0x14($sp) -.L8003DC50: -/* 03E850 8003DC50 27BD0018 */ addiu $sp, $sp, 0x18 -/* 03E854 8003DC54 03E00008 */ jr $ra -/* 03E858 8003DC58 00000000 */ nop - -glabel func_8003DC5C -/* 03E85C 8003DC5C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 03E860 8003DC60 AFBF0014 */ sw $ra, 0x14($sp) -/* 03E864 8003DC64 AFA5001C */ sw $a1, 0x1c($sp) -/* 03E868 8003DC68 8C8F004C */ lw $t7, 0x4c($a0) -/* 03E86C 8003DC6C 240E0002 */ li $t6, 2 -/* 03E870 8003DC70 A5EE0014 */ sh $t6, 0x14($t7) -/* 03E874 8003DC74 8C98004C */ lw $t8, 0x4c($a0) -/* 03E878 8003DC78 2419001E */ li $t9, 30 -/* 03E87C 8003DC7C A3000011 */ sb $zero, 0x11($t8) -/* 03E880 8003DC80 8C88004C */ lw $t0, 0x4c($a0) -/* 03E884 8003DC84 24090003 */ li $t1, 3 -/* 03E888 8003DC88 A1190010 */ sb $t9, 0x10($t0) -/* 03E88C 8003DC8C AC890078 */ sw $t1, 0x78($a0) -/* 03E890 8003DC90 AC80007C */ sw $zero, 0x7c($a0) -/* 03E894 8003DC94 0C0270B4 */ jal func_8009C2D0 -/* 03E898 8003DC98 AFA40018 */ sw $a0, 0x18($sp) -/* 03E89C 8003DC9C 8FA40018 */ lw $a0, 0x18($sp) -/* 03E8A0 8003DCA0 1440000F */ bnez $v0, .L8003DCE0 -/* 03E8A4 8003DCA4 00000000 */ nop -/* 03E8A8 8003DCA8 0C003877 */ jal func_8000E1DC -/* 03E8AC 8003DCAC AFA40018 */ sw $a0, 0x18($sp) -/* 03E8B0 8003DCB0 8FA40018 */ lw $a0, 0x18($sp) -/* 03E8B4 8003DCB4 10400009 */ beqz $v0, .L8003DCDC -/* 03E8B8 8003DCB8 240A0003 */ li $t2, 3 -/* 03E8BC 8003DCBC 0C027B1C */ jal func_8009EC70 -/* 03E8C0 8003DCC0 AFA40018 */ sw $a0, 0x18($sp) -/* 03E8C4 8003DCC4 8FA40018 */ lw $a0, 0x18($sp) -/* 03E8C8 8003DCC8 14400004 */ bnez $v0, .L8003DCDC -/* 03E8CC 8003DCCC 240A0003 */ li $t2, 3 -/* 03E8D0 8003DCD0 10000003 */ b .L8003DCE0 -/* 03E8D4 8003DCD4 AC800078 */ sw $zero, 0x78($a0) -/* 03E8D8 8003DCD8 240A0003 */ li $t2, 3 -.L8003DCDC: -/* 03E8DC 8003DCDC AC8A0078 */ sw $t2, 0x78($a0) -.L8003DCE0: -/* 03E8E0 8003DCE0 8C8B0078 */ lw $t3, 0x78($a0) -/* 03E8E4 8003DCE4 24010003 */ li $at, 3 -/* 03E8E8 8003DCE8 15610007 */ bne $t3, $at, .L8003DD08 -/* 03E8EC 8003DCEC 8FBF0014 */ lw $ra, 0x14($sp) -/* 03E8F0 8003DCF0 848C0006 */ lh $t4, 6($a0) -/* 03E8F4 8003DCF4 00000000 */ nop -/* 03E8F8 8003DCF8 358D0600 */ ori $t5, $t4, 0x600 -/* 03E8FC 8003DCFC 0C003FEE */ jal func_8000FFB8 -/* 03E900 8003DD00 A48D0006 */ sh $t5, 6($a0) -/* 03E904 8003DD04 8FBF0014 */ lw $ra, 0x14($sp) -.L8003DD08: -/* 03E908 8003DD08 27BD0018 */ addiu $sp, $sp, 0x18 -/* 03E90C 8003DD0C 03E00008 */ jr $ra -/* 03E910 8003DD10 00000000 */ nop - -glabel func_8003DD14 -/* 03E914 8003DD14 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 03E918 8003DD18 AFBF0014 */ sw $ra, 0x14($sp) -/* 03E91C 8003DD1C AFA50024 */ sw $a1, 0x24($sp) -/* 03E920 8003DD20 0C01B067 */ jal func_8006C19C -/* 03E924 8003DD24 AFA40020 */ sw $a0, 0x20($sp) -/* 03E928 8003DD28 8FA60020 */ lw $a2, 0x20($sp) -/* 03E92C 8003DD2C 8FA70024 */ lw $a3, 0x24($sp) -/* 03E930 8003DD30 10400005 */ beqz $v0, .L8003DD48 -/* 03E934 8003DD34 00000000 */ nop -/* 03E938 8003DD38 8CC50078 */ lw $a1, 0x78($a2) -/* 03E93C 8003DD3C 24010003 */ li $at, 3 -/* 03E940 8003DD40 14A10007 */ bne $a1, $at, .L8003DD60 -/* 03E944 8003DD44 00000000 */ nop -.L8003DD48: -/* 03E948 8003DD48 1440003D */ bnez $v0, .L8003DE40 -/* 03E94C 8003DD4C 00000000 */ nop -/* 03E950 8003DD50 8CC50078 */ lw $a1, 0x78($a2) -/* 03E954 8003DD54 00000000 */ nop -/* 03E958 8003DD58 14A00039 */ bnez $a1, .L8003DE40 -/* 03E95C 8003DD5C 00000000 */ nop -.L8003DD60: -/* 03E960 8003DD60 8CC2004C */ lw $v0, 0x4c($a2) -/* 03E964 8003DD64 00000000 */ nop -/* 03E968 8003DD68 904E0013 */ lbu $t6, 0x13($v0) -/* 03E96C 8003DD6C 00000000 */ nop -/* 03E970 8003DD70 29C10050 */ slti $at, $t6, 0x50 -/* 03E974 8003DD74 1020002E */ beqz $at, .L8003DE30 -/* 03E978 8003DD78 00000000 */ nop -/* 03E97C 8003DD7C 8C430000 */ lw $v1, ($v0) -/* 03E980 8003DD80 00000000 */ nop -/* 03E984 8003DD84 1060002A */ beqz $v1, .L8003DE30 -/* 03E988 8003DD88 00000000 */ nop -/* 03E98C 8003DD8C 8C6F0040 */ lw $t7, 0x40($v1) -/* 03E990 8003DD90 24010001 */ li $at, 1 -/* 03E994 8003DD94 81F80054 */ lb $t8, 0x54($t7) -/* 03E998 8003DD98 00000000 */ nop -/* 03E99C 8003DD9C 17010024 */ bne $t8, $at, .L8003DE30 -/* 03E9A0 8003DDA0 00000000 */ nop -/* 03E9A4 8003DDA4 8C620064 */ lw $v0, 0x64($v1) -/* 03E9A8 8003DDA8 2401FFFF */ li $at, -1 -/* 03E9AC 8003DDAC 84440000 */ lh $a0, ($v0) -/* 03E9B0 8003DDB0 00000000 */ nop -/* 03E9B4 8003DDB4 1081001E */ beq $a0, $at, .L8003DE30 -/* 03E9B8 8003DDB8 00000000 */ nop -/* 03E9BC 8003DDBC 805901D8 */ lb $t9, 0x1d8($v0) -/* 03E9C0 8003DDC0 24080001 */ li $t0, 1 -/* 03E9C4 8003DDC4 1720001A */ bnez $t9, .L8003DE30 -/* 03E9C8 8003DDC8 00881804 */ sllv $v1, $t0, $a0 -/* 03E9CC 8003DDCC 00A34824 */ and $t1, $a1, $v1 -/* 03E9D0 8003DDD0 15200017 */ bnez $t1, .L8003DE30 -/* 03E9D4 8003DDD4 00A35025 */ or $t2, $a1, $v1 -/* 03E9D8 8003DDD8 240B0010 */ li $t3, 16 -/* 03E9DC 8003DDDC ACCA0078 */ sw $t2, 0x78($a2) -/* 03E9E0 8003DDE0 ACCB007C */ sw $t3, 0x7c($a2) -/* 03E9E4 8003DDE4 844D0000 */ lh $t5, ($v0) -/* 03E9E8 8003DDE8 84CC0006 */ lh $t4, 6($a2) -/* 03E9EC 8003DDEC 240E0200 */ li $t6, 512 -/* 03E9F0 8003DDF0 01AE7804 */ sllv $t7, $t6, $t5 -/* 03E9F4 8003DDF4 018FC025 */ or $t8, $t4, $t7 -/* 03E9F8 8003DDF8 A4D80006 */ sh $t8, 6($a2) -/* 03E9FC 8003DDFC 80440202 */ lb $a0, 0x202($v0) -/* 03EA00 8003DE00 AFA60020 */ sw $a2, 0x20($sp) -/* 03EA04 8003DE04 2484002B */ addiu $a0, $a0, 0x2b -/* 03EA08 8003DE08 309900FF */ andi $t9, $a0, 0xff -/* 03EA0C 8003DE0C 03202025 */ move $a0, $t9 -/* 03EA10 8003DE10 0C0006F0 */ jal func_80001BC0 -/* 03EA14 8003DE14 AFA20018 */ sw $v0, 0x18($sp) -/* 03EA18 8003DE18 8FA20018 */ lw $v0, 0x18($sp) -/* 03EA1C 8003DE1C 8FA60020 */ lw $a2, 0x20($sp) -/* 03EA20 8003DE20 80480202 */ lb $t0, 0x202($v0) -/* 03EA24 8003DE24 8FA70024 */ lw $a3, 0x24($sp) -/* 03EA28 8003DE28 25090001 */ addiu $t1, $t0, 1 -/* 03EA2C 8003DE2C A0490202 */ sb $t1, 0x202($v0) -.L8003DE30: -/* 03EA30 8003DE30 84CA0018 */ lh $t2, 0x18($a2) -/* 03EA34 8003DE34 000758C0 */ sll $t3, $a3, 3 -/* 03EA38 8003DE38 014B7021 */ addu $t6, $t2, $t3 -/* 03EA3C 8003DE3C A4CE0018 */ sh $t6, 0x18($a2) -.L8003DE40: -/* 03EA40 8003DE40 8CC2007C */ lw $v0, 0x7c($a2) -/* 03EA44 8003DE44 240C0001 */ li $t4, 1 -/* 03EA48 8003DE48 18400006 */ blez $v0, .L8003DE64 -/* 03EA4C 8003DE4C 00476823 */ subu $t5, $v0, $a3 -/* 03EA50 8003DE50 ACCD007C */ sw $t5, 0x7c($a2) -/* 03EA54 8003DE54 ACCC0074 */ sw $t4, 0x74($a2) -/* 03EA58 8003DE58 00C02025 */ move $a0, $a2 -/* 03EA5C 8003DE5C 0C02BF0F */ jal func_800AFC3C -/* 03EA60 8003DE60 00E02825 */ move $a1, $a3 -.L8003DE64: -/* 03EA64 8003DE64 8FBF0014 */ lw $ra, 0x14($sp) -/* 03EA68 8003DE68 27BD0020 */ addiu $sp, $sp, 0x20 -/* 03EA6C 8003DE6C 03E00008 */ jr $ra -/* 03EA70 8003DE70 00000000 */ nop - -glabel func_8003DE74 -/* 03EA74 8003DE74 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 03EA78 8003DE78 AFBF0014 */ sw $ra, 0x14($sp) -/* 03EA7C 8003DE7C 8C8F004C */ lw $t7, 0x4c($a0) -/* 03EA80 8003DE80 240E0002 */ li $t6, 2 -/* 03EA84 8003DE84 A5EE0014 */ sh $t6, 0x14($t7) -/* 03EA88 8003DE88 8C98004C */ lw $t8, 0x4c($a0) -/* 03EA8C 8003DE8C 2419001E */ li $t9, 30 -/* 03EA90 8003DE90 A3000011 */ sb $zero, 0x11($t8) -/* 03EA94 8003DE94 8C88004C */ lw $t0, 0x4c($a0) -/* 03EA98 8003DE98 00000000 */ nop -/* 03EA9C 8003DE9C A1190010 */ sb $t9, 0x10($t0) -/* 03EAA0 8003DEA0 90A90008 */ lbu $t1, 8($a1) -/* 03EAA4 8003DEA4 00000000 */ nop -/* 03EAA8 8003DEA8 312A000F */ andi $t2, $t1, 0xf -/* 03EAAC 8003DEAC A0AA0008 */ sb $t2, 8($a1) -/* 03EAB0 8003DEB0 314B00FF */ andi $t3, $t2, 0xff -/* 03EAB4 8003DEB4 AC8B0078 */ sw $t3, 0x78($a0) -/* 03EAB8 8003DEB8 0C01BAA4 */ jal func_8006EA90 -/* 03EABC 8003DEBC AFA40020 */ sw $a0, 0x20($sp) -/* 03EAC0 8003DEC0 0C0270B4 */ jal func_8009C2D0 -/* 03EAC4 8003DEC4 AFA2001C */ sw $v0, 0x1c($sp) -/* 03EAC8 8003DEC8 8FA40020 */ lw $a0, 0x20($sp) -/* 03EACC 8003DECC 14400008 */ bnez $v0, .L8003DEF0 -/* 03EAD0 8003DED0 240F0001 */ li $t7, 1 -/* 03EAD4 8003DED4 8FAC001C */ lw $t4, 0x1c($sp) -/* 03EAD8 8003DED8 8C8E0078 */ lw $t6, 0x78($a0) -/* 03EADC 8003DEDC 958D0008 */ lhu $t5, 8($t4) -/* 03EAE0 8003DEE0 01CFC004 */ sllv $t8, $t7, $t6 -/* 03EAE4 8003DEE4 01B8C824 */ and $t9, $t5, $t8 -/* 03EAE8 8003DEE8 13200004 */ beqz $t9, .L8003DEFC -/* 03EAEC 8003DEEC 8FBF0014 */ lw $ra, 0x14($sp) -.L8003DEF0: -/* 03EAF0 8003DEF0 0C003FEE */ jal func_8000FFB8 -/* 03EAF4 8003DEF4 00000000 */ nop -/* 03EAF8 8003DEF8 8FBF0014 */ lw $ra, 0x14($sp) -.L8003DEFC: -/* 03EAFC 8003DEFC 27BD0020 */ addiu $sp, $sp, 0x20 -/* 03EB00 8003DF00 03E00008 */ jr $ra -/* 03EB04 8003DF04 00000000 */ nop - -glabel func_8003DF08 -/* 03EB08 8003DF08 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 03EB0C 8003DF0C AFBF0014 */ sw $ra, 0x14($sp) -/* 03EB10 8003DF10 AFA5001C */ sw $a1, 0x1c($sp) -/* 03EB14 8003DF14 8C83004C */ lw $v1, 0x4c($a0) -/* 03EB18 8003DF18 00803025 */ move $a2, $a0 -/* 03EB1C 8003DF1C 906E0013 */ lbu $t6, 0x13($v1) -/* 03EB20 8003DF20 00000000 */ nop -/* 03EB24 8003DF24 29C10032 */ slti $at, $t6, 0x32 -/* 03EB28 8003DF28 10200020 */ beqz $at, .L8003DFAC -/* 03EB2C 8003DF2C 8FAE001C */ lw $t6, 0x1c($sp) -/* 03EB30 8003DF30 8C620000 */ lw $v0, ($v1) -/* 03EB34 8003DF34 00000000 */ nop -/* 03EB38 8003DF38 1040001C */ beqz $v0, .L8003DFAC -/* 03EB3C 8003DF3C 8FAE001C */ lw $t6, 0x1c($sp) -/* 03EB40 8003DF40 8C4F0040 */ lw $t7, 0x40($v0) -/* 03EB44 8003DF44 24010001 */ li $at, 1 -/* 03EB48 8003DF48 81F80054 */ lb $t8, 0x54($t7) -/* 03EB4C 8003DF4C 00000000 */ nop -/* 03EB50 8003DF50 17010016 */ bne $t8, $at, .L8003DFAC -/* 03EB54 8003DF54 8FAE001C */ lw $t6, 0x1c($sp) -/* 03EB58 8003DF58 8C430064 */ lw $v1, 0x64($v0) -/* 03EB5C 8003DF5C 2401FFFF */ li $at, -1 -/* 03EB60 8003DF60 84790000 */ lh $t9, ($v1) -/* 03EB64 8003DF64 24040036 */ li $a0, 54 -/* 03EB68 8003DF68 13210010 */ beq $t9, $at, .L8003DFAC -/* 03EB6C 8003DF6C 8FAE001C */ lw $t6, 0x1c($sp) -/* 03EB70 8003DF70 0C0006F0 */ jal func_80001BC0 -/* 03EB74 8003DF74 AFA60018 */ sw $a2, 0x18($sp) -/* 03EB78 8003DF78 0C01BAA4 */ jal func_8006EA90 -/* 03EB7C 8003DF7C 00000000 */ nop -/* 03EB80 8003DF80 8FA40018 */ lw $a0, 0x18($sp) -/* 03EB84 8003DF84 94480008 */ lhu $t0, 8($v0) -/* 03EB88 8003DF88 8C890078 */ lw $t1, 0x78($a0) -/* 03EB8C 8003DF8C 240A0001 */ li $t2, 1 -/* 03EB90 8003DF90 012A5804 */ sllv $t3, $t2, $t1 -/* 03EB94 8003DF94 010B6025 */ or $t4, $t0, $t3 -/* 03EB98 8003DF98 0C003FEE */ jal func_8000FFB8 -/* 03EB9C 8003DF9C A44C0008 */ sh $t4, 8($v0) -/* 03EBA0 8003DFA0 8FA60018 */ lw $a2, 0x18($sp) -/* 03EBA4 8003DFA4 00000000 */ nop -/* 03EBA8 8003DFA8 8FAE001C */ lw $t6, 0x1c($sp) -.L8003DFAC: -/* 03EBAC 8003DFAC 84CD0000 */ lh $t5, ($a2) -/* 03EBB0 8003DFB0 000E7A00 */ sll $t7, $t6, 8 -/* 03EBB4 8003DFB4 01AFC021 */ addu $t8, $t5, $t7 -/* 03EBB8 8003DFB8 A4D80000 */ sh $t8, ($a2) -/* 03EBBC 8003DFBC 8FBF0014 */ lw $ra, 0x14($sp) -/* 03EBC0 8003DFC0 27BD0018 */ addiu $sp, $sp, 0x18 -/* 03EBC4 8003DFC4 03E00008 */ jr $ra -/* 03EBC8 8003DFC8 00000000 */ nop - -glabel func_8003DFCC -/* 03EBCC 8003DFCC 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 03EBD0 8003DFD0 AFBF0014 */ sw $ra, 0x14($sp) -/* 03EBD4 8003DFD4 8C8F004C */ lw $t7, 0x4c($a0) -/* 03EBD8 8003DFD8 240E0002 */ li $t6, 2 -/* 03EBDC 8003DFDC A5EE0014 */ sh $t6, 0x14($t7) -/* 03EBE0 8003DFE0 8C99004C */ lw $t9, 0x4c($a0) -/* 03EBE4 8003DFE4 24180004 */ li $t8, 4 -/* 03EBE8 8003DFE8 A3380011 */ sb $t8, 0x11($t9) -/* 03EBEC 8003DFEC 8C89004C */ lw $t1, 0x4c($a0) -/* 03EBF0 8003DFF0 24080014 */ li $t0, 20 -/* 03EBF4 8003DFF4 A1280010 */ sb $t0, 0x10($t1) -/* 03EBF8 8003DFF8 AFA5001C */ sw $a1, 0x1c($sp) -/* 03EBFC 8003DFFC 0C0270C3 */ jal func_8009C30C -/* 03EC00 8003E000 AFA40018 */ sw $a0, 0x18($sp) -/* 03EC04 8003E004 8FA40018 */ lw $a0, 0x18($sp) -/* 03EC08 8003E008 8FA5001C */ lw $a1, 0x1c($sp) -/* 03EC0C 8003E00C 00025380 */ sll $t2, $v0, 0xe -/* 03EC10 8003E010 05410003 */ bgez $t2, .L8003E020 -/* 03EC14 8003E014 304B8000 */ andi $t3, $v0, 0x8000 -/* 03EC18 8003E018 10000013 */ b .L8003E068 -/* 03EC1C 8003E01C A0A00009 */ sb $zero, 9($a1) -.L8003E020: -/* 03EC20 8003E020 11600004 */ beqz $t3, .L8003E034 -/* 03EC24 8003E024 00026BC0 */ sll $t5, $v0, 0xf -/* 03EC28 8003E028 240C0001 */ li $t4, 1 -/* 03EC2C 8003E02C 1000000E */ b .L8003E068 -/* 03EC30 8003E030 A0AC0009 */ sb $t4, 9($a1) -.L8003E034: -/* 03EC34 8003E034 05A10004 */ bgez $t5, .L8003E048 -/* 03EC38 8003E038 00027B40 */ sll $t7, $v0, 0xd -/* 03EC3C 8003E03C 240E0002 */ li $t6, 2 -/* 03EC40 8003E040 10000009 */ b .L8003E068 -/* 03EC44 8003E044 A0AE0009 */ sb $t6, 9($a1) -.L8003E048: -/* 03EC48 8003E048 05E10004 */ bgez $t7, .L8003E05C -/* 03EC4C 8003E04C 0002CB00 */ sll $t9, $v0, 0xc -/* 03EC50 8003E050 24180003 */ li $t8, 3 -/* 03EC54 8003E054 10000004 */ b .L8003E068 -/* 03EC58 8003E058 A0B80009 */ sb $t8, 9($a1) -.L8003E05C: -/* 03EC5C 8003E05C 07210002 */ bgez $t9, .L8003E068 -/* 03EC60 8003E060 24080004 */ li $t0, 4 -/* 03EC64 8003E064 A0A80009 */ sb $t0, 9($a1) -.L8003E068: -/* 03EC68 8003E068 90A90008 */ lbu $t1, 8($a1) -/* 03EC6C 8003E06C 00000000 */ nop -/* 03EC70 8003E070 29210006 */ slti $at, $t1, 6 -/* 03EC74 8003E074 14200002 */ bnez $at, .L8003E080 -/* 03EC78 8003E078 00000000 */ nop -/* 03EC7C 8003E07C A0A00008 */ sb $zero, 8($a1) -.L8003E080: -/* 03EC80 8003E080 8C8B0040 */ lw $t3, 0x40($a0) -/* 03EC84 8003E084 808A003A */ lb $t2, 0x3a($a0) -/* 03EC88 8003E088 816C0055 */ lb $t4, 0x55($t3) -/* 03EC8C 8003E08C 00000000 */ nop -/* 03EC90 8003E090 014C082A */ slt $at, $t2, $t4 -/* 03EC94 8003E094 14200002 */ bnez $at, .L8003E0A0 -/* 03EC98 8003E098 00000000 */ nop -/* 03EC9C 8003E09C A080003A */ sb $zero, 0x3a($a0) -.L8003E0A0: -/* 03ECA0 8003E0A0 90AD0009 */ lbu $t5, 9($a1) -/* 03ECA4 8003E0A4 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 03ECA8 8003E0A8 A08D003A */ sb $t5, 0x3a($a0) -/* 03ECAC 8003E0AC 808E003A */ lb $t6, 0x3a($a0) -/* 03ECB0 8003E0B0 44811000 */ mtc1 $at, $f2 -/* 03ECB4 8003E0B4 AC8E0078 */ sw $t6, 0x78($a0) -/* 03ECB8 8003E0B8 90B8000A */ lbu $t8, 0xa($a1) -/* 03ECBC 8003E0BC 3C014280 */ li $at, 0x42800000 # 64.000000 -/* 03ECC0 8003E0C0 44982000 */ mtc1 $t8, $f4 -/* 03ECC4 8003E0C4 44813000 */ mtc1 $at, $f6 -/* 03ECC8 8003E0C8 46802020 */ cvt.s.w $f0, $f4 -/* 03ECCC 8003E0CC 4602003C */ c.lt.s $f0, $f2 -/* 03ECD0 8003E0D0 00000000 */ nop -/* 03ECD4 8003E0D4 45000003 */ bc1f .L8003E0E4 -/* 03ECD8 8003E0D8 00000000 */ nop -/* 03ECDC 8003E0DC 46001006 */ mov.s $f0, $f2 -/* 03ECE0 8003E0E0 00000000 */ nop -.L8003E0E4: -/* 03ECE4 8003E0E4 46060003 */ div.s $f0, $f0, $f6 -/* 03ECE8 8003E0E8 8C990040 */ lw $t9, 0x40($a0) -/* 03ECEC 8003E0EC 8C820064 */ lw $v0, 0x64($a0) -/* 03ECF0 8003E0F0 C728000C */ lwc1 $f8, 0xc($t9) -/* 03ECF4 8003E0F4 00000000 */ nop -/* 03ECF8 8003E0F8 46004282 */ mul.s $f10, $f8, $f0 -/* 03ECFC 8003E0FC E48A0008 */ swc1 $f10, 8($a0) -/* 03ED00 8003E100 C4900008 */ lwc1 $f16, 8($a0) -/* 03ED04 8003E104 A4400004 */ sh $zero, 4($v0) -/* 03ED08 8003E108 E4500000 */ swc1 $f16, ($v0) -/* 03ED0C 8003E10C AC80007C */ sw $zero, 0x7c($a0) -/* 03ED10 8003E110 0C0270C3 */ jal func_8009C30C -/* 03ED14 8003E114 AFA40018 */ sw $a0, 0x18($sp) -/* 03ED18 8003E118 8FA40018 */ lw $a0, 0x18($sp) -/* 03ED1C 8003E11C 30480800 */ andi $t0, $v0, 0x800 -/* 03ED20 8003E120 11000004 */ beqz $t0, .L8003E134 -/* 03ED24 8003E124 8FBF0014 */ lw $ra, 0x14($sp) -/* 03ED28 8003E128 0C003FEE */ jal func_8000FFB8 -/* 03ED2C 8003E12C 00000000 */ nop -/* 03ED30 8003E130 8FBF0014 */ lw $ra, 0x14($sp) -.L8003E134: -/* 03ED34 8003E134 27BD0018 */ addiu $sp, $sp, 0x18 -/* 03ED38 8003E138 03E00008 */ jr $ra -/* 03ED3C 8003E13C 00000000 */ nop - -glabel func_8003E140 -/* 03ED40 8003E140 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 03ED44 8003E144 AFBF0024 */ sw $ra, 0x24($sp) -/* 03ED48 8003E148 AFB00020 */ sw $s0, 0x20($sp) -/* 03ED4C 8003E14C AFA50044 */ sw $a1, 0x44($sp) -/* 03ED50 8003E150 8C860064 */ lw $a2, 0x64($a0) -/* 03ED54 8003E154 3C0142B4 */ li $at, 0x42B40000 # 90.000000 -/* 03ED58 8003E158 84CE0004 */ lh $t6, 4($a2) -/* 03ED5C 8003E15C 44814000 */ mtc1 $at, $f8 -/* 03ED60 8003E160 448E2000 */ mtc1 $t6, $f4 -/* 03ED64 8003E164 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 03ED68 8003E168 468021A0 */ cvt.s.w $f6, $f4 -/* 03ED6C 8003E16C 44819800 */ mtc1 $at, $f19 -/* 03ED70 8003E170 44809000 */ mtc1 $zero, $f18 -/* 03ED74 8003E174 46083283 */ div.s $f10, $f6, $f8 -/* 03ED78 8003E178 C4C60000 */ lwc1 $f6, ($a2) -/* 03ED7C 8003E17C 3C01800E */ lui $at, %hi(D_800E61A8) # $at, 0x800e -/* 03ED80 8003E180 46003221 */ cvt.d.s $f8, $f6 -/* 03ED84 8003E184 00808025 */ move $s0, $a0 -/* 03ED88 8003E188 240A0001 */ li $t2, 1 -/* 03ED8C 8003E18C 46005421 */ cvt.d.s $f16, $f10 -/* 03ED90 8003E190 46309101 */ sub.d $f4, $f18, $f16 -/* 03ED94 8003E194 46244282 */ mul.d $f10, $f8, $f4 -/* 03ED98 8003E198 462054A0 */ cvt.s.d $f18, $f10 -/* 03ED9C 8003E19C E4920008 */ swc1 $f18, 8($a0) -/* 03EDA0 8003E1A0 C4900008 */ lwc1 $f16, 8($a0) -/* 03EDA4 8003E1A4 C42661AC */ lwc1 $f6, %lo(D_800E61AC)($at) -/* 03EDA8 8003E1A8 C42761A8 */ lwc1 $f7, %lo(D_800E61A8)($at) -/* 03EDAC 8003E1AC 46008021 */ cvt.d.s $f0, $f16 -/* 03EDB0 8003E1B0 4626003C */ c.lt.d $f0, $f6 -/* 03EDB4 8003E1B4 3C01800E */ lui $at, %hi(D_800E61B0) # $at, 0x800e -/* 03EDB8 8003E1B8 45000007 */ bc1f .L8003E1D8 -/* 03EDBC 8003E1BC 00000000 */ nop -/* 03EDC0 8003E1C0 C42861B0 */ lwc1 $f8, %lo(D_800E61B0)($at) -/* 03EDC4 8003E1C4 00000000 */ nop -/* 03EDC8 8003E1C8 E4880008 */ swc1 $f8, 8($a0) -/* 03EDCC 8003E1CC C4840008 */ lwc1 $f4, 8($a0) -/* 03EDD0 8003E1D0 00000000 */ nop -/* 03EDD4 8003E1D4 46002021 */ cvt.d.s $f0, $f4 -.L8003E1D8: -/* 03EDD8 8003E1D8 3C01800E */ lui $at, %hi(D_800E61BC) # $at, 0x800e -/* 03EDDC 8003E1DC C42B61B8 */ lwc1 $f11, %lo(D_800E61B8)($at) -/* 03EDE0 8003E1E0 C42A61BC */ lwc1 $f10, %lo(D_800E61BC)($at) -/* 03EDE4 8003E1E4 02002025 */ move $a0, $s0 -/* 03EDE8 8003E1E8 462A003C */ c.lt.d $f0, $f10 -/* 03EDEC 8003E1EC 00000000 */ nop -/* 03EDF0 8003E1F0 45000006 */ bc1f .L8003E20C -/* 03EDF4 8003E1F4 00000000 */ nop -/* 03EDF8 8003E1F8 860F0006 */ lh $t7, 6($s0) -/* 03EDFC 8003E1FC 00000000 */ nop -/* 03EE00 8003E200 35F84000 */ ori $t8, $t7, 0x4000 -/* 03EE04 8003E204 10000005 */ b .L8003E21C -/* 03EE08 8003E208 A6180006 */ sh $t8, 6($s0) -.L8003E20C: -/* 03EE0C 8003E20C 86190006 */ lh $t9, 6($s0) -/* 03EE10 8003E210 00000000 */ nop -/* 03EE14 8003E214 3328BFFF */ andi $t0, $t9, 0xbfff -/* 03EE18 8003E218 A6080006 */ sh $t0, 6($s0) -.L8003E21C: -/* 03EE1C 8003E21C 8E09007C */ lw $t1, 0x7c($s0) -/* 03EE20 8003E220 00000000 */ nop -/* 03EE24 8003E224 1920000C */ blez $t1, .L8003E258 -/* 03EE28 8003E228 00000000 */ nop -/* 03EE2C 8003E22C AE0A0074 */ sw $t2, 0x74($s0) -/* 03EE30 8003E230 8FA50044 */ lw $a1, 0x44($sp) -/* 03EE34 8003E234 0C02BF0F */ jal func_800AFC3C -/* 03EE38 8003E238 AFA60034 */ sw $a2, 0x34($sp) -/* 03EE3C 8003E23C 8E0B007C */ lw $t3, 0x7c($s0) -/* 03EE40 8003E240 8FAC0044 */ lw $t4, 0x44($sp) -/* 03EE44 8003E244 00000000 */ nop -/* 03EE48 8003E248 016C6823 */ subu $t5, $t3, $t4 -/* 03EE4C 8003E24C AE0D007C */ sw $t5, 0x7c($s0) -/* 03EE50 8003E250 8FA60034 */ lw $a2, 0x34($sp) -/* 03EE54 8003E254 00000000 */ nop -.L8003E258: -/* 03EE58 8003E258 84C20004 */ lh $v0, 4($a2) -/* 03EE5C 8003E25C 2401005A */ li $at, 90 -/* 03EE60 8003E260 10400015 */ beqz $v0, .L8003E2B8 -/* 03EE64 8003E264 00000000 */ nop -/* 03EE68 8003E268 14410009 */ bne $v0, $at, .L8003E290 -/* 03EE6C 8003E26C 8FB80044 */ lw $t8, 0x44($sp) -/* 03EE70 8003E270 8E0E004C */ lw $t6, 0x4c($s0) -/* 03EE74 8003E274 00000000 */ nop -/* 03EE78 8003E278 91CF0013 */ lbu $t7, 0x13($t6) -/* 03EE7C 8003E27C 00000000 */ nop -/* 03EE80 8003E280 29E1002D */ slti $at, $t7, 0x2d -/* 03EE84 8003E284 14200008 */ bnez $at, .L8003E2A8 -/* 03EE88 8003E288 00000000 */ nop -/* 03EE8C 8003E28C 8FB80044 */ lw $t8, 0x44($sp) -.L8003E290: -/* 03EE90 8003E290 00000000 */ nop -/* 03EE94 8003E294 0058C823 */ subu $t9, $v0, $t8 -/* 03EE98 8003E298 03384023 */ subu $t0, $t9, $t8 -/* 03EE9C 8003E29C A4C80004 */ sh $t0, 4($a2) -/* 03EEA0 8003E2A0 84C20004 */ lh $v0, 4($a2) -/* 03EEA4 8003E2A4 00000000 */ nop -.L8003E2A8: -/* 03EEA8 8003E2A8 044100BE */ bgez $v0, .L8003E5A4 -/* 03EEAC 8003E2AC 8FBF0024 */ lw $ra, 0x24($sp) -/* 03EEB0 8003E2B0 100000BB */ b .L8003E5A0 -/* 03EEB4 8003E2B4 A4C00004 */ sh $zero, 4($a2) -.L8003E2B8: -/* 03EEB8 8003E2B8 8E03004C */ lw $v1, 0x4c($s0) -/* 03EEBC 8003E2BC 00000000 */ nop -/* 03EEC0 8003E2C0 90690013 */ lbu $t1, 0x13($v1) -/* 03EEC4 8003E2C4 00000000 */ nop -/* 03EEC8 8003E2C8 2921002D */ slti $at, $t1, 0x2d -/* 03EECC 8003E2CC 102000B5 */ beqz $at, .L8003E5A4 -/* 03EED0 8003E2D0 8FBF0024 */ lw $ra, 0x24($sp) -/* 03EED4 8003E2D4 8C620000 */ lw $v0, ($v1) -/* 03EED8 8003E2D8 00000000 */ nop -/* 03EEDC 8003E2DC 104000B1 */ beqz $v0, .L8003E5A4 -/* 03EEE0 8003E2E0 8FBF0024 */ lw $ra, 0x24($sp) -/* 03EEE4 8003E2E4 8C4A0040 */ lw $t2, 0x40($v0) -/* 03EEE8 8003E2E8 24040001 */ li $a0, 1 -/* 03EEEC 8003E2EC 814B0054 */ lb $t3, 0x54($t2) -/* 03EEF0 8003E2F0 00000000 */ nop -/* 03EEF4 8003E2F4 148B00AB */ bne $a0, $t3, .L8003E5A4 -/* 03EEF8 8003E2F8 8FBF0024 */ lw $ra, 0x24($sp) -/* 03EEFC 8003E2FC 8C430064 */ lw $v1, 0x64($v0) -/* 03EF00 8003E300 00000000 */ nop -/* 03EF04 8003E304 806C01D6 */ lb $t4, 0x1d6($v1) -/* 03EF08 8003E308 00000000 */ nop -/* 03EF0C 8003E30C 29810005 */ slti $at, $t4, 5 -/* 03EF10 8003E310 14200005 */ bnez $at, .L8003E328 -/* 03EF14 8003E314 00000000 */ nop -/* 03EF18 8003E318 846D0000 */ lh $t5, ($v1) -/* 03EF1C 8003E31C 2401FFFF */ li $at, -1 -/* 03EF20 8003E320 11A100A0 */ beq $t5, $at, .L8003E5A4 -/* 03EF24 8003E324 8FBF0024 */ lw $ra, 0x24($sp) -.L8003E328: -/* 03EF28 8003E328 8E0E0078 */ lw $t6, 0x78($s0) -/* 03EF2C 8003E32C 80620172 */ lb $v0, 0x172($v1) -/* 03EF30 8003E330 A06E0172 */ sb $t6, 0x172($v1) -/* 03EF34 8003E334 806F0172 */ lb $t7, 0x172($v1) -/* 03EF38 8003E338 00000000 */ nop -/* 03EF3C 8003E33C 144F000A */ bne $v0, $t7, .L8003E368 -/* 03EF40 8003E340 00000000 */ nop -/* 03EF44 8003E344 80790173 */ lb $t9, 0x173($v1) -/* 03EF48 8003E348 00000000 */ nop -/* 03EF4C 8003E34C 13200006 */ beqz $t9, .L8003E368 -/* 03EF50 8003E350 00000000 */ nop -/* 03EF54 8003E354 80780174 */ lb $t8, 0x174($v1) -/* 03EF58 8003E358 00000000 */ nop -/* 03EF5C 8003E35C 27080001 */ addiu $t0, $t8, 1 -/* 03EF60 8003E360 10000002 */ b .L8003E36C -/* 03EF64 8003E364 A0680174 */ sb $t0, 0x174($v1) -.L8003E368: -/* 03EF68 8003E368 A0600174 */ sb $zero, 0x174($v1) -.L8003E36C: -/* 03EF6C 8003E36C AFA30038 */ sw $v1, 0x38($sp) -/* 03EF70 8003E370 0C01AF66 */ jal func_8006BD98 -/* 03EF74 8003E374 AFA60034 */ sw $a2, 0x34($sp) -/* 03EF78 8003E378 8FA30038 */ lw $v1, 0x38($sp) -/* 03EF7C 8003E37C 30490040 */ andi $t1, $v0, 0x40 -/* 03EF80 8003E380 1120000C */ beqz $t1, .L8003E3B4 -/* 03EF84 8003E384 24040001 */ li $a0, 1 -/* 03EF88 8003E388 806A0174 */ lb $t2, 0x174($v1) -/* 03EF8C 8003E38C 00000000 */ nop -/* 03EF90 8003E390 29410002 */ slti $at, $t2, 2 -/* 03EF94 8003E394 14200002 */ bnez $at, .L8003E3A0 -/* 03EF98 8003E398 00000000 */ nop -/* 03EF9C 8003E39C A0640174 */ sb $a0, 0x174($v1) -.L8003E3A0: -/* 03EFA0 8003E3A0 806B0172 */ lb $t3, 0x172($v1) -/* 03EFA4 8003E3A4 24010002 */ li $at, 2 -/* 03EFA8 8003E3A8 15610003 */ bne $t3, $at, .L8003E3B8 -/* 03EFAC 8003E3AC 240C0003 */ li $t4, 3 -/* 03EFB0 8003E3B0 A0640174 */ sb $a0, 0x174($v1) -.L8003E3B4: -/* 03EFB4 8003E3B4 240C0003 */ li $t4, 3 -.L8003E3B8: -/* 03EFB8 8003E3B8 A3AC002D */ sb $t4, 0x2d($sp) -/* 03EFBC 8003E3BC 0C0270C3 */ jal func_8009C30C -/* 03EFC0 8003E3C0 AFA30038 */ sw $v1, 0x38($sp) -/* 03EFC4 8003E3C4 8FA30038 */ lw $v1, 0x38($sp) -/* 03EFC8 8003E3C8 00026AC0 */ sll $t5, $v0, 0xb -/* 03EFCC 8003E3CC 05A10002 */ bgez $t5, .L8003E3D8 -/* 03EFD0 8003E3D0 24040002 */ li $a0, 2 -/* 03EFD4 8003E3D4 A0640174 */ sb $a0, 0x174($v1) -.L8003E3D8: -/* 03EFD8 8003E3D8 806E0174 */ lb $t6, 0x174($v1) -/* 03EFDC 8003E3DC 00000000 */ nop -/* 03EFE0 8003E3E0 29C10003 */ slti $at, $t6, 3 -/* 03EFE4 8003E3E4 14200003 */ bnez $at, .L8003E3F4 -/* 03EFE8 8003E3E8 00000000 */ nop -/* 03EFEC 8003E3EC A0640174 */ sb $a0, 0x174($v1) -/* 03EFF0 8003E3F0 A3A4002D */ sb $a0, 0x2d($sp) -.L8003E3F4: -/* 03EFF4 8003E3F4 2404000C */ li $a0, 12 -/* 03EFF8 8003E3F8 0C0078A7 */ jal func_8001E29C -/* 03EFFC 8003E3FC AFA30038 */ sw $v1, 0x38($sp) -/* 03F000 8003E400 8FA30038 */ lw $v1, 0x38($sp) -/* 03F004 8003E404 00000000 */ nop -/* 03F008 8003E408 806F0172 */ lb $t7, 0x172($v1) -/* 03F00C 8003E40C 80780174 */ lb $t8, 0x174($v1) -/* 03F010 8003E410 000FC880 */ sll $t9, $t7, 2 -/* 03F014 8003E414 032FC821 */ addu $t9, $t9, $t7 -/* 03F018 8003E418 0019C840 */ sll $t9, $t9, 1 -/* 03F01C 8003E41C 00184040 */ sll $t0, $t8, 1 -/* 03F020 8003E420 03284821 */ addu $t1, $t9, $t0 -/* 03F024 8003E424 906C0209 */ lbu $t4, 0x209($v1) -/* 03F028 8003E428 01225021 */ addu $t2, $t1, $v0 -/* 03F02C 8003E42C 814B0001 */ lb $t3, 1($t2) -/* 03F030 8003E430 80660173 */ lb $a2, 0x173($v1) -/* 03F034 8003E434 358D0001 */ ori $t5, $t4, 1 -/* 03F038 8003E438 A06D0209 */ sb $t5, 0x209($v1) -/* 03F03C 8003E43C A06B0173 */ sb $t3, 0x173($v1) -/* 03F040 8003E440 0C0270F2 */ jal func_8009C3C8 -/* 03F044 8003E444 A3A6002E */ sb $a2, 0x2e($sp) -/* 03F048 8003E448 8FA30038 */ lw $v1, 0x38($sp) -/* 03F04C 8003E44C 83A6002E */ lb $a2, 0x2e($sp) -/* 03F050 8003E450 28410002 */ slti $at, $v0, 2 -/* 03F054 8003E454 10200002 */ beqz $at, .L8003E460 -/* 03F058 8003E458 240E0010 */ li $t6, 16 -/* 03F05C 8003E45C AE0E007C */ sw $t6, 0x7c($s0) -.L8003E460: -/* 03F060 8003E460 84670000 */ lh $a3, ($v1) -/* 03F064 8003E464 2401FFFF */ li $at, -1 -/* 03F068 8003E468 14E1000A */ bne $a3, $at, .L8003E494 -/* 03F06C 8003E46C 2404000E */ li $a0, 14 -/* 03F070 8003E470 8E05000C */ lw $a1, 0xc($s0) -/* 03F074 8003E474 8E060010 */ lw $a2, 0x10($s0) -/* 03F078 8003E478 8E070014 */ lw $a3, 0x14($s0) -/* 03F07C 8003E47C 240F0004 */ li $t7, 4 -/* 03F080 8003E480 AFAF0010 */ sw $t7, 0x10($sp) -/* 03F084 8003E484 0C002556 */ jal func_80009558 -/* 03F088 8003E488 AFA00014 */ sw $zero, 0x14($sp) -/* 03F08C 8003E48C 1000003D */ b .L8003E584 -/* 03F090 8003E490 240D0001 */ li $t5, 1 -.L8003E494: -/* 03F094 8003E494 80620174 */ lb $v0, 0x174($v1) -/* 03F098 8003E498 83B8002D */ lb $t8, 0x2d($sp) -/* 03F09C 8003E49C 00000000 */ nop -/* 03F0A0 8003E4A0 17020024 */ bne $t8, $v0, .L8003E534 -/* 03F0A4 8003E4A4 00000000 */ nop -/* 03F0A8 8003E4A8 807901D8 */ lb $t9, 0x1d8($v1) -/* 03F0AC 8003E4AC 00000000 */ nop -/* 03F0B0 8003E4B0 17200034 */ bnez $t9, .L8003E584 -/* 03F0B4 8003E4B4 240D0001 */ li $t5, 1 -/* 03F0B8 8003E4B8 80680173 */ lb $t0, 0x173($v1) -/* 03F0BC 8003E4BC 2404000E */ li $a0, 14 -/* 03F0C0 8003E4C0 10C80014 */ beq $a2, $t0, .L8003E514 -/* 03F0C4 8003E4C4 240A0004 */ li $t2, 4 -/* 03F0C8 8003E4C8 2404013E */ li $a0, 318 -/* 03F0CC 8003E4CC 3C053F80 */ lui $a1, 0x3f80 -/* 03F0D0 8003E4D0 00E03025 */ move $a2, $a3 -/* 03F0D4 8003E4D4 0C029D21 */ jal func_800A7484 -/* 03F0D8 8003E4D8 AFA30038 */ sw $v1, 0x38($sp) -/* 03F0DC 8003E4DC 8FA30038 */ lw $v1, 0x38($sp) -/* 03F0E0 8003E4E0 00002825 */ move $a1, $zero -/* 03F0E4 8003E4E4 80660174 */ lb $a2, 0x174($v1) -/* 03F0E8 8003E4E8 00000000 */ nop -/* 03F0EC 8003E4EC 28C10003 */ slti $at, $a2, 3 -/* 03F0F0 8003E4F0 14200003 */ bnez $at, .L8003E500 -/* 03F0F4 8003E4F4 24C400A0 */ addiu $a0, $a2, 0xa0 -/* 03F0F8 8003E4F8 24060002 */ li $a2, 2 -/* 03F0FC 8003E4FC 24C400A0 */ addiu $a0, $a2, 0xa0 -.L8003E500: -/* 03F100 8003E500 3089FFFF */ andi $t1, $a0, 0xffff -/* 03F104 8003E504 0C000741 */ jal func_80001D04 -/* 03F108 8003E508 01202025 */ move $a0, $t1 -/* 03F10C 8003E50C 1000001D */ b .L8003E584 -/* 03F110 8003E510 240D0001 */ li $t5, 1 -.L8003E514: -/* 03F114 8003E514 8E05000C */ lw $a1, 0xc($s0) -/* 03F118 8003E518 8E060010 */ lw $a2, 0x10($s0) -/* 03F11C 8003E51C 8E070014 */ lw $a3, 0x14($s0) -/* 03F120 8003E520 AFA00014 */ sw $zero, 0x14($sp) -/* 03F124 8003E524 0C002556 */ jal func_80009558 -/* 03F128 8003E528 AFAA0010 */ sw $t2, 0x10($sp) -/* 03F12C 8003E52C 10000015 */ b .L8003E584 -/* 03F130 8003E530 240D0001 */ li $t5, 1 -.L8003E534: -/* 03F134 8003E534 806B01D8 */ lb $t3, 0x1d8($v1) -/* 03F138 8003E538 00000000 */ nop -/* 03F13C 8003E53C 15600011 */ bnez $t3, .L8003E584 -/* 03F140 8003E540 240D0001 */ li $t5, 1 -/* 03F144 8003E544 18400009 */ blez $v0, .L8003E56C -/* 03F148 8003E548 2404013E */ li $a0, 318 -/* 03F14C 8003E54C 3C053F80 */ lui $a1, 0x3f80 -/* 03F150 8003E550 00E03025 */ move $a2, $a3 -/* 03F154 8003E554 0C029D21 */ jal func_800A7484 -/* 03F158 8003E558 AFA30038 */ sw $v1, 0x38($sp) -/* 03F15C 8003E55C 8FA30038 */ lw $v1, 0x38($sp) -/* 03F160 8003E560 00000000 */ nop -/* 03F164 8003E564 80620174 */ lb $v0, 0x174($v1) -/* 03F168 8003E568 00000000 */ nop -.L8003E56C: -/* 03F16C 8003E56C 244400A0 */ addiu $a0, $v0, 0xa0 -/* 03F170 8003E570 308CFFFF */ andi $t4, $a0, 0xffff -/* 03F174 8003E574 01802025 */ move $a0, $t4 -/* 03F178 8003E578 0C000741 */ jal func_80001D04 -/* 03F17C 8003E57C 00002825 */ move $a1, $zero -/* 03F180 8003E580 240D0001 */ li $t5, 1 -.L8003E584: -/* 03F184 8003E584 AE0D0074 */ sw $t5, 0x74($s0) -/* 03F188 8003E588 8FA50044 */ lw $a1, 0x44($sp) -/* 03F18C 8003E58C 0C02BF0F */ jal func_800AFC3C -/* 03F190 8003E590 02002025 */ move $a0, $s0 -/* 03F194 8003E594 8FAF0034 */ lw $t7, 0x34($sp) -/* 03F198 8003E598 240E005A */ li $t6, 90 -/* 03F19C 8003E59C A5EE0004 */ sh $t6, 4($t7) -.L8003E5A0: -/* 03F1A0 8003E5A0 8FBF0024 */ lw $ra, 0x24($sp) -.L8003E5A4: -/* 03F1A4 8003E5A4 8FB00020 */ lw $s0, 0x20($sp) -/* 03F1A8 8003E5A8 03E00008 */ jr $ra -/* 03F1AC 8003E5AC 27BD0040 */ addiu $sp, $sp, 0x40 - -glabel func_8003E5B0 -/* 03F1B0 8003E5B0 AFA40000 */ sw $a0, ($sp) -/* 03F1B4 8003E5B4 03E00008 */ jr $ra -/* 03F1B8 8003E5B8 AFA50004 */ sw $a1, 4($sp) - -glabel func_8003E5BC -/* 03F1BC 8003E5BC AFA40000 */ sw $a0, ($sp) -/* 03F1C0 8003E5C0 03E00008 */ jr $ra -/* 03F1C4 8003E5C4 AFA50004 */ sw $a1, 4($sp) - -glabel func_8003E5C8 -/* 03F1C8 8003E5C8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 03F1CC 8003E5CC AFBF0014 */ sw $ra, 0x14($sp) -/* 03F1D0 8003E5D0 AFA40018 */ sw $a0, 0x18($sp) -/* 03F1D4 8003E5D4 AFA5001C */ sw $a1, 0x1c($sp) -/* 03F1D8 8003E5D8 8C8F004C */ lw $t7, 0x4c($a0) -/* 03F1DC 8003E5DC 240E0002 */ li $t6, 2 -/* 03F1E0 8003E5E0 A5EE0014 */ sh $t6, 0x14($t7) -/* 03F1E4 8003E5E4 8C98004C */ lw $t8, 0x4c($a0) -/* 03F1E8 8003E5E8 24190018 */ li $t9, 24 -/* 03F1EC 8003E5EC A3000011 */ sb $zero, 0x11($t8) -/* 03F1F0 8003E5F0 8C88004C */ lw $t0, 0x4c($a0) -/* 03F1F4 8003E5F4 00802825 */ move $a1, $a0 -/* 03F1F8 8003E5F8 A1190010 */ sb $t9, 0x10($t0) -/* 03F1FC 8003E5FC 8C89004C */ lw $t1, 0x4c($a0) -/* 03F200 8003E600 240401E0 */ li $a0, 480 -/* 03F204 8003E604 A1200012 */ sb $zero, 0x12($t1) -/* 03F208 8003E608 0C00322D */ jal func_8000C8B4 -/* 03F20C 8003E60C AFA50018 */ sw $a1, 0x18($sp) -/* 03F210 8003E610 8FA50018 */ lw $a1, 0x18($sp) -/* 03F214 8003E614 00000000 */ nop -/* 03F218 8003E618 ACA20078 */ sw $v0, 0x78($a1) -/* 03F21C 8003E61C ACA0007C */ sw $zero, 0x7c($a1) -/* 03F220 8003E620 8FBF0014 */ lw $ra, 0x14($sp) -/* 03F224 8003E624 27BD0018 */ addiu $sp, $sp, 0x18 -/* 03F228 8003E628 03E00008 */ jr $ra -/* 03F22C 8003E62C 00000000 */ nop - -glabel func_8003E630 -/* 03F230 8003E630 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 03F234 8003E634 AFBF0014 */ sw $ra, 0x14($sp) -/* 03F238 8003E638 8C820064 */ lw $v0, 0x64($a0) -/* 03F23C 8003E63C 00000000 */ nop -/* 03F240 8003E640 904E0018 */ lbu $t6, 0x18($v0) -/* 03F244 8003E644 00000000 */ nop -/* 03F248 8003E648 2DC1000C */ sltiu $at, $t6, 0xc -/* 03F24C 8003E64C 1020000D */ beqz $at, .L8003E684 -/* 03F250 8003E650 000E7080 */ sll $t6, $t6, 2 -/* 03F254 8003E654 3C01800E */ lui $at, 0x800e -/* 03F258 8003E658 002E0821 */ addu $at, $at, $t6 -/* 03F25C 8003E65C 8C2E61C0 */ lw $t6, 0x61c0($at) -/* 03F260 8003E660 00000000 */ nop -/* 03F264 8003E664 01C00008 */ jr $t6 -/* 03F268 8003E668 00000000 */ nop -/* 03F26C 8003E66C 0C00F9A5 */ jal func_8003E694 -/* 03F270 8003E670 00000000 */ nop -/* 03F274 8003E674 10000004 */ b .L8003E688 -/* 03F278 8003E678 8FBF0014 */ lw $ra, 0x14($sp) -/* 03F27C 8003E67C 0C00FCBA */ jal func_8003F2E8 -/* 03F280 8003E680 00000000 */ nop -.L8003E684: -/* 03F284 8003E684 8FBF0014 */ lw $ra, 0x14($sp) -.L8003E688: -/* 03F288 8003E688 27BD0018 */ addiu $sp, $sp, 0x18 -/* 03F28C 8003E68C 03E00008 */ jr $ra -/* 03F290 8003E690 00000000 */ nop - -glabel func_8003E694 -/* 03F294 8003E694 27BDFF18 */ addiu $sp, $sp, -0xe8 -/* 03F298 8003E698 AFBF002C */ sw $ra, 0x2c($sp) -/* 03F29C 8003E69C AFB10028 */ sw $s1, 0x28($sp) -/* 03F2A0 8003E6A0 AFB00024 */ sw $s0, 0x24($sp) -/* 03F2A4 8003E6A4 AFA500EC */ sw $a1, 0xec($sp) -/* 03F2A8 8003E6A8 8C83004C */ lw $v1, 0x4c($a0) -/* 03F2AC 8003E6AC 44800000 */ mtc1 $zero, $f0 -/* 03F2B0 8003E6B0 846E0014 */ lh $t6, 0x14($v1) -/* 03F2B4 8003E6B4 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 03F2B8 8003E6B8 35CF0100 */ ori $t7, $t6, 0x100 -/* 03F2BC 8003E6BC A46F0014 */ sh $t7, 0x14($v1) -/* 03F2C0 8003E6C0 C484000C */ lwc1 $f4, 0xc($a0) -/* 03F2C4 8003E6C4 8C910064 */ lw $s1, 0x64($a0) -/* 03F2C8 8003E6C8 E7A400BC */ swc1 $f4, 0xbc($sp) -/* 03F2CC 8003E6CC C4860010 */ lwc1 $f6, 0x10($a0) -/* 03F2D0 8003E6D0 44815000 */ mtc1 $at, $f10 -/* 03F2D4 8003E6D4 E7A600B8 */ swc1 $f6, 0xb8($sp) -/* 03F2D8 8003E6D8 C4880014 */ lwc1 $f8, 0x14($a0) -/* 03F2DC 8003E6DC 00808025 */ move $s0, $a0 -/* 03F2E0 8003E6E0 E7A800B4 */ swc1 $f8, 0xb4($sp) -/* 03F2E4 8003E6E4 84980000 */ lh $t8, ($a0) -/* 03F2E8 8003E6E8 27A5003C */ addiu $a1, $sp, 0x3c -/* 03F2EC 8003E6EC A7B8003C */ sh $t8, 0x3c($sp) -/* 03F2F0 8003E6F0 84990002 */ lh $t9, 2($a0) -/* 03F2F4 8003E6F4 A7A00040 */ sh $zero, 0x40($sp) -/* 03F2F8 8003E6F8 27A40054 */ addiu $a0, $sp, 0x54 -/* 03F2FC 8003E6FC E7A00048 */ swc1 $f0, 0x48($sp) -/* 03F300 8003E700 E7A0004C */ swc1 $f0, 0x4c($sp) -/* 03F304 8003E704 E7A00050 */ swc1 $f0, 0x50($sp) -/* 03F308 8003E708 E7AA0044 */ swc1 $f10, 0x44($sp) -/* 03F30C 8003E70C 0C01BF0C */ jal func_8006FC30 -/* 03F310 8003E710 A7B9003E */ sh $t9, 0x3e($sp) -/* 03F314 8003E714 44800000 */ mtc1 $zero, $f0 -/* 03F318 8003E718 8E270010 */ lw $a3, 0x10($s1) -/* 03F31C 8003E71C 2608001C */ addiu $t0, $s0, 0x1c -/* 03F320 8003E720 26090020 */ addiu $t1, $s0, 0x20 -/* 03F324 8003E724 260A0024 */ addiu $t2, $s0, 0x24 -/* 03F328 8003E728 44050000 */ mfc1 $a1, $f0 -/* 03F32C 8003E72C 44060000 */ mfc1 $a2, $f0 -/* 03F330 8003E730 AFAA0018 */ sw $t2, 0x18($sp) -/* 03F334 8003E734 AFA90014 */ sw $t1, 0x14($sp) -/* 03F338 8003E738 AFA80010 */ sw $t0, 0x10($sp) -/* 03F33C 8003E73C 0C01BD93 */ jal func_8006F64C -/* 03F340 8003E740 27A40054 */ addiu $a0, $sp, 0x54 -/* 03F344 8003E744 8FAB00EC */ lw $t3, 0xec($sp) -/* 03F348 8003E748 3C0C8000 */ lui $t4, %hi(D_80000300) # $t4, 0x8000 -/* 03F34C 8003E74C 448B8000 */ mtc1 $t3, $f16 -/* 03F350 8003E750 8D8C0300 */ lw $t4, %lo(D_80000300)($t4) -/* 03F354 8003E754 46808020 */ cvt.s.w $f0, $f16 -/* 03F358 8003E758 3C01800E */ lui $at, %hi(D_800E61F4) # $at, 0x800e -/* 03F35C 8003E75C 15800006 */ bnez $t4, .L8003E778 -/* 03F360 8003E760 46000086 */ mov.s $f2, $f0 -/* 03F364 8003E764 C42561F0 */ lwc1 $f5, %lo(D_800E61F0)($at) -/* 03F368 8003E768 C42461F4 */ lwc1 $f4, %lo(D_800E61F4)($at) -/* 03F36C 8003E76C 460004A1 */ cvt.d.s $f18, $f0 -/* 03F370 8003E770 46249182 */ mul.d $f6, $f18, $f4 -/* 03F374 8003E774 462030A0 */ cvt.s.d $f2, $f6 -.L8003E778: -/* 03F378 8003E778 C60A001C */ lwc1 $f10, 0x1c($s0) -/* 03F37C 8003E77C C608000C */ lwc1 $f8, 0xc($s0) -/* 03F380 8003E780 46025402 */ mul.s $f16, $f10, $f2 -/* 03F384 8003E784 24010006 */ li $at, 6 -/* 03F388 8003E788 24040001 */ li $a0, 1 -/* 03F38C 8003E78C 2605000C */ addiu $a1, $s0, 0xc -/* 03F390 8003E790 46104480 */ add.s $f18, $f8, $f16 -/* 03F394 8003E794 27A600C8 */ addiu $a2, $sp, 0xc8 -/* 03F398 8003E798 E7B200C8 */ swc1 $f18, 0xc8($sp) -/* 03F39C 8003E79C C6060020 */ lwc1 $f6, 0x20($s0) -/* 03F3A0 8003E7A0 C6040010 */ lwc1 $f4, 0x10($s0) -/* 03F3A4 8003E7A4 46023282 */ mul.s $f10, $f6, $f2 -/* 03F3A8 8003E7A8 2407FFFF */ li $a3, -1 -/* 03F3AC 8003E7AC 460A2200 */ add.s $f8, $f4, $f10 -/* 03F3B0 8003E7B0 E7A800CC */ swc1 $f8, 0xcc($sp) -/* 03F3B4 8003E7B4 C6120024 */ lwc1 $f18, 0x24($s0) -/* 03F3B8 8003E7B8 C6100014 */ lwc1 $f16, 0x14($s0) -/* 03F3BC 8003E7BC 46029182 */ mul.s $f6, $f18, $f2 -/* 03F3C0 8003E7C0 46068100 */ add.s $f4, $f16, $f6 -/* 03F3C4 8003E7C4 E7A400D0 */ swc1 $f4, 0xd0($sp) -/* 03F3C8 8003E7C8 922D0018 */ lbu $t5, 0x18($s1) -/* 03F3CC 8003E7CC 00000000 */ nop -/* 03F3D0 8003E7D0 11A1001E */ beq $t5, $at, .L8003E84C -/* 03F3D4 8003E7D4 3C014180 */ li $at, 0x41800000 # 16.000000 -/* 03F3D8 8003E7D8 44815000 */ mtc1 $at, $f10 -/* 03F3DC 8003E7DC AFA50038 */ sw $a1, 0x38($sp) -/* 03F3E0 8003E7E0 E7A200C0 */ swc1 $f2, 0xc0($sp) -/* 03F3E4 8003E7E4 0C00C44C */ jal func_80031130 -/* 03F3E8 8003E7E8 E7AA00C4 */ swc1 $f10, 0xc4($sp) -/* 03F3EC 8003E7EC 240EFFFF */ li $t6, -1 -/* 03F3F0 8003E7F0 8FA40038 */ lw $a0, 0x38($sp) -/* 03F3F4 8003E7F4 240F0001 */ li $t7, 1 -/* 03F3F8 8003E7F8 27B800A4 */ addiu $t8, $sp, 0xa4 -/* 03F3FC 8003E7FC AFA000A4 */ sw $zero, 0xa4($sp) -/* 03F400 8003E800 A3AE0097 */ sb $t6, 0x97($sp) -/* 03F404 8003E804 AFB80014 */ sw $t8, 0x14($sp) -/* 03F408 8003E808 AFAF0010 */ sw $t7, 0x10($sp) -/* 03F40C 8003E80C 27A500C8 */ addiu $a1, $sp, 0xc8 -/* 03F410 8003E810 27A600C4 */ addiu $a2, $sp, 0xc4 -/* 03F414 8003E814 0C00C580 */ jal func_80031600 -/* 03F418 8003E818 27A70097 */ addiu $a3, $sp, 0x97 -/* 03F41C 8003E81C 8FB900A4 */ lw $t9, 0xa4($sp) -/* 03F420 8003E820 C7A200C0 */ lwc1 $f2, 0xc0($sp) -/* 03F424 8003E824 1B200009 */ blez $t9, .L8003E84C -/* 03F428 8003E828 27A400B0 */ addiu $a0, $sp, 0xb0 -/* 03F42C 8003E82C 27A500AC */ addiu $a1, $sp, 0xac -/* 03F430 8003E830 27A600A8 */ addiu $a2, $sp, 0xa8 -/* 03F434 8003E834 0C00AB35 */ jal func_8002ACD4 -/* 03F438 8003E838 E7A200C0 */ swc1 $f2, 0xc0($sp) -/* 03F43C 8003E83C C7A200C0 */ lwc1 $f2, 0xc0($sp) -/* 03F440 8003E840 10400002 */ beqz $v0, .L8003E84C -/* 03F444 8003E844 00000000 */ nop -/* 03F448 8003E848 AE000078 */ sw $zero, 0x78($s0) -.L8003E84C: -/* 03F44C 8003E84C C7A800C8 */ lwc1 $f8, 0xc8($sp) -/* 03F450 8003E850 C7B200BC */ lwc1 $f18, 0xbc($sp) -/* 03F454 8003E854 C7B000CC */ lwc1 $f16, 0xcc($sp) -/* 03F458 8003E858 C7A600B8 */ lwc1 $f6, 0xb8($sp) -/* 03F45C 8003E85C C7A400D0 */ lwc1 $f4, 0xd0($sp) -/* 03F460 8003E860 C7AA00B4 */ lwc1 $f10, 0xb4($sp) -/* 03F464 8003E864 46124001 */ sub.s $f0, $f8, $f18 -/* 03F468 8003E868 02002025 */ move $a0, $s0 -/* 03F46C 8003E86C 46068301 */ sub.s $f12, $f16, $f6 -/* 03F470 8003E870 44050000 */ mfc1 $a1, $f0 -/* 03F474 8003E874 460A2381 */ sub.s $f14, $f4, $f10 -/* 03F478 8003E878 44066000 */ mfc1 $a2, $f12 -/* 03F47C 8003E87C 44077000 */ mfc1 $a3, $f14 -/* 03F480 8003E880 E7AE00A8 */ swc1 $f14, 0xa8($sp) -/* 03F484 8003E884 E7AC00AC */ swc1 $f12, 0xac($sp) -/* 03F488 8003E888 E7A000B0 */ swc1 $f0, 0xb0($sp) -/* 03F48C 8003E88C 0C00455C */ jal func_80011570 -/* 03F490 8003E890 E7A200C0 */ swc1 $f2, 0xc0($sp) -/* 03F494 8003E894 C7A200C0 */ lwc1 $f2, 0xc0($sp) -/* 03F498 8003E898 10400002 */ beqz $v0, .L8003E8A4 -/* 03F49C 8003E89C 00000000 */ nop -/* 03F4A0 8003E8A0 AE000078 */ sw $zero, 0x78($s0) -.L8003E8A4: -/* 03F4A4 8003E8A4 C7A800B0 */ lwc1 $f8, 0xb0($sp) -/* 03F4A8 8003E8A8 C7B000A8 */ lwc1 $f16, 0xa8($sp) -/* 03F4AC 8003E8AC 46084482 */ mul.s $f18, $f8, $f8 -/* 03F4B0 8003E8B0 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 03F4B4 8003E8B4 46108182 */ mul.s $f6, $f16, $f16 -/* 03F4B8 8003E8B8 44818000 */ mtc1 $at, $f16 -/* 03F4BC 8003E8BC 46069100 */ add.s $f4, $f18, $f6 -/* 03F4C0 8003E8C0 00000000 */ nop -/* 03F4C4 8003E8C4 46022283 */ div.s $f10, $f4, $f2 -/* 03F4C8 8003E8C8 E7AA00B0 */ swc1 $f10, 0xb0($sp) -/* 03F4CC 8003E8CC C6200010 */ lwc1 $f0, 0x10($s1) -/* 03F4D0 8003E8D0 C7A600B0 */ lwc1 $f6, 0xb0($sp) -/* 03F4D4 8003E8D4 46000202 */ mul.s $f8, $f0, $f0 -/* 03F4D8 8003E8D8 00000000 */ nop -/* 03F4DC 8003E8DC 46104483 */ div.s $f18, $f8, $f16 -/* 03F4E0 8003E8E0 4612303C */ c.lt.s $f6, $f18 -/* 03F4E4 8003E8E4 E7B200A8 */ swc1 $f18, 0xa8($sp) -/* 03F4E8 8003E8E8 45000002 */ bc1f .L8003E8F4 -/* 03F4EC 8003E8EC 00000000 */ nop -/* 03F4F0 8003E8F0 AE000078 */ sw $zero, 0x78($s0) -.L8003E8F4: -/* 03F4F4 8003E8F4 92220018 */ lbu $v0, 0x18($s1) -/* 03F4F8 8003E8F8 00000000 */ nop -/* 03F4FC 8003E8FC 14400023 */ bnez $v0, .L8003E98C -/* 03F500 8003E900 00000000 */ nop -/* 03F504 8003E904 0C006E99 */ jal func_8001BA64 -/* 03F508 8003E908 00000000 */ nop -/* 03F50C 8003E90C 1840001D */ blez $v0, .L8003E984 -/* 03F510 8003E910 240DFFFF */ li $t5, -1 -/* 03F514 8003E914 82240019 */ lb $a0, 0x19($s1) -/* 03F518 8003E918 C7A400B4 */ lwc1 $f4, 0xb4($sp) -/* 03F51C 8003E91C 8FA600BC */ lw $a2, 0xbc($sp) -/* 03F520 8003E920 8FA700B8 */ lw $a3, 0xb8($sp) -/* 03F524 8003E924 2628000C */ addiu $t0, $s1, 0xc -/* 03F528 8003E928 27A90097 */ addiu $t1, $sp, 0x97 -/* 03F52C 8003E92C AFA90018 */ sw $t1, 0x18($sp) -/* 03F530 8003E930 AFA80014 */ sw $t0, 0x14($sp) -/* 03F534 8003E934 AFA2009C */ sw $v0, 0x9c($sp) -/* 03F538 8003E938 02002825 */ move $a1, $s0 -/* 03F53C 8003E93C 0C006179 */ jal func_800185E4 -/* 03F540 8003E940 E7A40010 */ swc1 $f4, 0x10($sp) -/* 03F544 8003E944 8FA3009C */ lw $v1, 0x9c($sp) -/* 03F548 8003E948 1440000B */ bnez $v0, .L8003E978 -/* 03F54C 8003E94C 00000000 */ nop -/* 03F550 8003E950 822A0019 */ lb $t2, 0x19($s1) -/* 03F554 8003E954 00000000 */ nop -/* 03F558 8003E958 254B0001 */ addiu $t3, $t2, 1 -/* 03F55C 8003E95C A22B0019 */ sb $t3, 0x19($s1) -/* 03F560 8003E960 822C0019 */ lb $t4, 0x19($s1) -/* 03F564 8003E964 00000000 */ nop -/* 03F568 8003E968 0183082A */ slt $at, $t4, $v1 -/* 03F56C 8003E96C 14200002 */ bnez $at, .L8003E978 -/* 03F570 8003E970 00000000 */ nop -/* 03F574 8003E974 A2200019 */ sb $zero, 0x19($s1) -.L8003E978: -/* 03F578 8003E978 92220018 */ lbu $v0, 0x18($s1) -/* 03F57C 8003E97C 10000003 */ b .L8003E98C -/* 03F580 8003E980 00000000 */ nop -.L8003E984: -/* 03F584 8003E984 92220018 */ lbu $v0, 0x18($s1) -/* 03F588 8003E988 A22D0019 */ sb $t5, 0x19($s1) -.L8003E98C: -/* 03F58C 8003E98C 14400007 */ bnez $v0, .L8003E9AC -/* 03F590 8003E990 02002025 */ move $a0, $s0 -/* 03F594 8003E994 8FA500EC */ lw $a1, 0xec($sp) -/* 03F598 8003E998 02002025 */ move $a0, $s0 -/* 03F59C 8003E99C 0C00FB76 */ jal func_8003EDD8 -/* 03F5A0 8003E9A0 02203025 */ move $a2, $s1 -/* 03F5A4 8003E9A4 10000005 */ b .L8003E9BC -/* 03F5A8 8003E9A8 8E03004C */ lw $v1, 0x4c($s0) -.L8003E9AC: -/* 03F5AC 8003E9AC 8FA500EC */ lw $a1, 0xec($sp) -/* 03F5B0 8003E9B0 0C00FB05 */ jal func_8003EC14 -/* 03F5B4 8003E9B4 02203025 */ move $a2, $s1 -/* 03F5B8 8003E9B8 8E03004C */ lw $v1, 0x4c($s0) -.L8003E9BC: -/* 03F5BC 8003E9BC 00000000 */ nop -/* 03F5C0 8003E9C0 8C620000 */ lw $v0, ($v1) -/* 03F5C4 8003E9C4 00000000 */ nop -/* 03F5C8 8003E9C8 1040004E */ beqz $v0, .L8003EB04 -/* 03F5CC 8003E9CC 00000000 */ nop -/* 03F5D0 8003E9D0 8E2E0004 */ lw $t6, 4($s1) -/* 03F5D4 8003E9D4 00402825 */ move $a1, $v0 -/* 03F5D8 8003E9D8 144E000C */ bne $v0, $t6, .L8003EA0C -/* 03F5DC 8003E9DC 240401C2 */ li $a0, 450 -/* 03F5E0 8003E9E0 0C00322D */ jal func_8000C8B4 -/* 03F5E4 8003E9E4 AFA200E4 */ sw $v0, 0xe4($sp) -/* 03F5E8 8003E9E8 8E030078 */ lw $v1, 0x78($s0) -/* 03F5EC 8003E9EC 8FA500E4 */ lw $a1, 0xe4($sp) -/* 03F5F0 8003E9F0 0062082A */ slt $at, $v1, $v0 -/* 03F5F4 8003E9F4 10200043 */ beqz $at, .L8003EB04 -/* 03F5F8 8003E9F8 00000000 */ nop -/* 03F5FC 8003E9FC 10600041 */ beqz $v1, .L8003EB04 -/* 03F600 8003EA00 00000000 */ nop -/* 03F604 8003EA04 8E03004C */ lw $v1, 0x4c($s0) -/* 03F608 8003EA08 00000000 */ nop -.L8003EA0C: -/* 03F60C 8003EA0C 922F0018 */ lbu $t7, 0x18($s1) -/* 03F610 8003EA10 2402003C */ li $v0, 60 -/* 03F614 8003EA14 15E00009 */ bnez $t7, .L8003EA3C -/* 03F618 8003EA18 00000000 */ nop -/* 03F61C 8003EA1C 8E380000 */ lw $t8, ($s1) -/* 03F620 8003EA20 00000000 */ nop -/* 03F624 8003EA24 14B80003 */ bne $a1, $t8, .L8003EA34 -/* 03F628 8003EA28 00000000 */ nop -/* 03F62C 8003EA2C 10000003 */ b .L8003EA3C -/* 03F630 8003EA30 2402004B */ li $v0, 75 -.L8003EA34: -/* 03F634 8003EA34 10000001 */ b .L8003EA3C -/* 03F638 8003EA38 24020014 */ li $v0, 20 -.L8003EA3C: -/* 03F63C 8003EA3C 90790013 */ lbu $t9, 0x13($v1) -/* 03F640 8003EA40 00000000 */ nop -/* 03F644 8003EA44 0322082A */ slt $at, $t9, $v0 -/* 03F648 8003EA48 1020002E */ beqz $at, .L8003EB04 -/* 03F64C 8003EA4C 00000000 */ nop -/* 03F650 8003EA50 8CA80040 */ lw $t0, 0x40($a1) -/* 03F654 8003EA54 24040001 */ li $a0, 1 -/* 03F658 8003EA58 81090054 */ lb $t1, 0x54($t0) -/* 03F65C 8003EA5C 00000000 */ nop -/* 03F660 8003EA60 14890018 */ bne $a0, $t1, .L8003EAC4 -/* 03F664 8003EA64 00000000 */ nop -/* 03F668 8003EA68 8CA30064 */ lw $v1, 0x64($a1) -/* 03F66C 8003EA6C 2406FFFF */ li $a2, -1 -/* 03F670 8003EA70 A0640187 */ sb $a0, 0x187($v1) -/* 03F674 8003EA74 8E2A0004 */ lw $t2, 4($s1) -/* 03F678 8003EA78 846B0000 */ lh $t3, ($v1) -/* 03F67C 8003EA7C 8D420064 */ lw $v0, 0x64($t2) -/* 03F680 8003EA80 14CB0005 */ bne $a2, $t3, .L8003EA98 -/* 03F684 8003EA84 00000000 */ nop -/* 03F688 8003EA88 844C0000 */ lh $t4, ($v0) -/* 03F68C 8003EA8C 00000000 */ nop -/* 03F690 8003EA90 10CC0005 */ beq $a2, $t4, .L8003EAA8 -/* 03F694 8003EA94 00000000 */ nop -.L8003EA98: -/* 03F698 8003EA98 904D01EF */ lbu $t5, 0x1ef($v0) -/* 03F69C 8003EA9C 00000000 */ nop -/* 03F6A0 8003EAA0 35AE0002 */ ori $t6, $t5, 2 -/* 03F6A4 8003EAA4 A04E01EF */ sb $t6, 0x1ef($v0) -.L8003EAA8: -/* 03F6A8 8003EAA8 806F01D8 */ lb $t7, 0x1d8($v1) -/* 03F6AC 8003EAAC 00000000 */ nop -/* 03F6B0 8003EAB0 15E00004 */ bnez $t7, .L8003EAC4 -/* 03F6B4 8003EAB4 00000000 */ nop -/* 03F6B8 8003EAB8 84640000 */ lh $a0, ($v1) -/* 03F6BC 8003EABC 0C01C8D2 */ jal func_80072348 -/* 03F6C0 8003EAC0 24050009 */ li $a1, 9 -.L8003EAC4: -/* 03F6C4 8003EAC4 C60C000C */ lwc1 $f12, 0xc($s0) -/* 03F6C8 8003EAC8 C60E0010 */ lwc1 $f14, 0x10($s0) -/* 03F6CC 8003EACC 8E060014 */ lw $a2, 0x14($s0) -/* 03F6D0 8003EAD0 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 03F6D4 8003EAD4 44815000 */ mtc1 $at, $f10 -/* 03F6D8 8003EAD8 24180011 */ li $t8, 17 -/* 03F6DC 8003EADC 24190001 */ li $t9, 1 -/* 03F6E0 8003EAE0 AFB90018 */ sw $t9, 0x18($sp) -/* 03F6E4 8003EAE4 AFB80010 */ sw $t8, 0x10($sp) -/* 03F6E8 8003EAE8 2407002C */ li $a3, 44 -/* 03F6EC 8003EAEC 0C00FF11 */ jal func_8003FC44 -/* 03F6F0 8003EAF0 E7AA0014 */ swc1 $f10, 0x14($sp) -/* 03F6F4 8003EAF4 0C003FEE */ jal func_8000FFB8 -/* 03F6F8 8003EAF8 02002025 */ move $a0, $s0 -/* 03F6FC 8003EAFC 10000041 */ b .L8003EC04 -/* 03F700 8003EB00 8FBF002C */ lw $ra, 0x2c($sp) -.L8003EB04: -/* 03F704 8003EB04 8E08007C */ lw $t0, 0x7c($s0) -/* 03F708 8003EB08 8FA900EC */ lw $t1, 0xec($sp) -/* 03F70C 8003EB0C 8E030060 */ lw $v1, 0x60($s0) -/* 03F710 8003EB10 01095021 */ addu $t2, $t0, $t1 -/* 03F714 8003EB14 10600027 */ beqz $v1, .L8003EBB4 -/* 03F718 8003EB18 AE0A007C */ sw $t2, 0x7c($s0) -/* 03F71C 8003EB1C 8C710004 */ lw $s1, 4($v1) -/* 03F720 8003EB20 29410008 */ slti $at, $t2, 8 -/* 03F724 8003EB24 10200009 */ beqz $at, .L8003EB4C -/* 03F728 8003EB28 01401025 */ move $v0, $t2 -/* 03F72C 8003EB2C 44824000 */ mtc1 $v0, $f8 -/* 03F730 8003EB30 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 03F734 8003EB34 46804420 */ cvt.s.w $f16, $f8 -/* 03F738 8003EB38 44813000 */ mtc1 $at, $f6 -/* 03F73C 8003EB3C 00000000 */ nop -/* 03F740 8003EB40 46068482 */ mul.s $f18, $f16, $f6 -/* 03F744 8003EB44 1000001B */ b .L8003EBB4 -/* 03F748 8003EB48 E6320008 */ swc1 $f18, 8($s1) -.L8003EB4C: -/* 03F74C 8003EB4C 28410010 */ slti $at, $v0, 0x10 -/* 03F750 8003EB50 1020000D */ beqz $at, .L8003EB88 -/* 03F754 8003EB54 00402025 */ move $a0, $v0 -/* 03F758 8003EB58 244BFFF8 */ addiu $t3, $v0, -8 -/* 03F75C 8003EB5C 448B2000 */ mtc1 $t3, $f4 -/* 03F760 8003EB60 3C013E80 */ li $at, 0x3E800000 # 0.250000 -/* 03F764 8003EB64 468022A0 */ cvt.s.w $f10, $f4 -/* 03F768 8003EB68 44814000 */ mtc1 $at, $f8 -/* 03F76C 8003EB6C 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 03F770 8003EB70 46085402 */ mul.s $f16, $f10, $f8 -/* 03F774 8003EB74 44813000 */ mtc1 $at, $f6 -/* 03F778 8003EB78 00000000 */ nop -/* 03F77C 8003EB7C 46103481 */ sub.s $f18, $f6, $f16 -/* 03F780 8003EB80 1000000C */ b .L8003EBB4 -/* 03F784 8003EB84 E6320008 */ swc1 $f18, 8($s1) -.L8003EB88: -/* 03F788 8003EB88 00046700 */ sll $t4, $a0, 0x1c -/* 03F78C 8003EB8C 0C01C1F1 */ jal func_800707C4 -/* 03F790 8003EB90 000C2403 */ sra $a0, $t4, 0x10 -/* 03F794 8003EB94 3C013E80 */ li $at, 0x3E800000 # 0.250000 -/* 03F798 8003EB98 44812000 */ mtc1 $at, $f4 -/* 03F79C 8003EB9C 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 03F7A0 8003EBA0 46040282 */ mul.s $f10, $f0, $f4 -/* 03F7A4 8003EBA4 44814000 */ mtc1 $at, $f8 -/* 03F7A8 8003EBA8 00000000 */ nop -/* 03F7AC 8003EBAC 46085180 */ add.s $f6, $f10, $f8 -/* 03F7B0 8003EBB0 E6260008 */ swc1 $f6, 8($s1) -.L8003EBB4: -/* 03F7B4 8003EBB4 8E0E0078 */ lw $t6, 0x78($s0) -/* 03F7B8 8003EBB8 8FAF00EC */ lw $t7, 0xec($sp) -/* 03F7BC 8003EBBC 2407002C */ li $a3, 44 -/* 03F7C0 8003EBC0 01CFC023 */ subu $t8, $t6, $t7 -/* 03F7C4 8003EBC4 0701000E */ bgez $t8, .L8003EC00 -/* 03F7C8 8003EBC8 AE180078 */ sw $t8, 0x78($s0) -/* 03F7CC 8003EBCC C60C000C */ lwc1 $f12, 0xc($s0) -/* 03F7D0 8003EBD0 C60E0010 */ lwc1 $f14, 0x10($s0) -/* 03F7D4 8003EBD4 8E060014 */ lw $a2, 0x14($s0) -/* 03F7D8 8003EBD8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 03F7DC 8003EBDC 44818000 */ mtc1 $at, $f16 -/* 03F7E0 8003EBE0 24080011 */ li $t0, 17 -/* 03F7E4 8003EBE4 24090001 */ li $t1, 1 -/* 03F7E8 8003EBE8 AFA90018 */ sw $t1, 0x18($sp) -/* 03F7EC 8003EBEC AFA80010 */ sw $t0, 0x10($sp) -/* 03F7F0 8003EBF0 0C00FF11 */ jal func_8003FC44 -/* 03F7F4 8003EBF4 E7B00014 */ swc1 $f16, 0x14($sp) -/* 03F7F8 8003EBF8 0C003FEE */ jal func_8000FFB8 -/* 03F7FC 8003EBFC 02002025 */ move $a0, $s0 -.L8003EC00: -/* 03F800 8003EC00 8FBF002C */ lw $ra, 0x2c($sp) -.L8003EC04: -/* 03F804 8003EC04 8FB00024 */ lw $s0, 0x24($sp) -/* 03F808 8003EC08 8FB10028 */ lw $s1, 0x28($sp) -/* 03F80C 8003EC0C 03E00008 */ jr $ra -/* 03F810 8003EC10 27BD00E8 */ addiu $sp, $sp, 0xe8 - -glabel func_8003EC14 -/* 03F814 8003EC14 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 03F818 8003EC18 AFBF001C */ sw $ra, 0x1c($sp) -/* 03F81C 8003EC1C AFB00018 */ sw $s0, 0x18($sp) -/* 03F820 8003EC20 AFA5003C */ sw $a1, 0x3c($sp) -/* 03F824 8003EC24 8C82004C */ lw $v0, 0x4c($a0) -/* 03F828 8003EC28 00C08025 */ move $s0, $a2 -/* 03F82C 8003EC2C 904E0013 */ lbu $t6, 0x13($v0) -/* 03F830 8003EC30 00803825 */ move $a3, $a0 -/* 03F834 8003EC34 29C10050 */ slti $at, $t6, 0x50 -/* 03F838 8003EC38 14200005 */ bnez $at, .L8003EC50 -/* 03F83C 8003EC3C 00000000 */ nop -/* 03F840 8003EC40 8CCF0008 */ lw $t7, 8($a2) -/* 03F844 8003EC44 00000000 */ nop -/* 03F848 8003EC48 11E0000E */ beqz $t7, .L8003EC84 -/* 03F84C 8003EC4C 00000000 */ nop -.L8003EC50: -/* 03F850 8003EC50 8C450000 */ lw $a1, ($v0) -/* 03F854 8003EC54 00000000 */ nop -/* 03F858 8003EC58 10A0000A */ beqz $a1, .L8003EC84 -/* 03F85C 8003EC5C 00000000 */ nop -/* 03F860 8003EC60 8E180004 */ lw $t8, 4($s0) -/* 03F864 8003EC64 00000000 */ nop -/* 03F868 8003EC68 10B80006 */ beq $a1, $t8, .L8003EC84 -/* 03F86C 8003EC6C 00000000 */ nop -/* 03F870 8003EC70 84B90048 */ lh $t9, 0x48($a1) -/* 03F874 8003EC74 24010001 */ li $at, 1 -/* 03F878 8003EC78 17210002 */ bne $t9, $at, .L8003EC84 -/* 03F87C 8003EC7C 00000000 */ nop -/* 03F880 8003EC80 AE050008 */ sw $a1, 8($s0) -.L8003EC84: -/* 03F884 8003EC84 8E020008 */ lw $v0, 8($s0) -/* 03F888 8003EC88 00000000 */ nop -/* 03F88C 8003EC8C 1040004B */ beqz $v0, .L8003EDBC -/* 03F890 8003EC90 00E02025 */ move $a0, $a3 -/* 03F894 8003EC94 C444000C */ lwc1 $f4, 0xc($v0) -/* 03F898 8003EC98 C4E6000C */ lwc1 $f6, 0xc($a3) -/* 03F89C 8003EC9C C4480010 */ lwc1 $f8, 0x10($v0) -/* 03F8A0 8003ECA0 46062001 */ sub.s $f0, $f4, $f6 -/* 03F8A4 8003ECA4 C4EA0010 */ lwc1 $f10, 0x10($a3) -/* 03F8A8 8003ECA8 46000102 */ mul.s $f4, $f0, $f0 -/* 03F8AC 8003ECAC 460A4081 */ sub.s $f2, $f8, $f10 -/* 03F8B0 8003ECB0 C4500014 */ lwc1 $f16, 0x14($v0) -/* 03F8B4 8003ECB4 C4F20014 */ lwc1 $f18, 0x14($a3) -/* 03F8B8 8003ECB8 46021182 */ mul.s $f6, $f2, $f2 -/* 03F8BC 8003ECBC 46128381 */ sub.s $f14, $f16, $f18 -/* 03F8C0 8003ECC0 E7A20028 */ swc1 $f2, 0x28($sp) -/* 03F8C4 8003ECC4 E7AE0024 */ swc1 $f14, 0x24($sp) -/* 03F8C8 8003ECC8 460E7282 */ mul.s $f10, $f14, $f14 -/* 03F8CC 8003ECCC 46062200 */ add.s $f8, $f4, $f6 -/* 03F8D0 8003ECD0 E7A0002C */ swc1 $f0, 0x2c($sp) -/* 03F8D4 8003ECD4 AFA70038 */ sw $a3, 0x38($sp) -/* 03F8D8 8003ECD8 460A4300 */ add.s $f12, $f8, $f10 -/* 03F8DC 8003ECDC 0C0326B4 */ jal sqrtf -/* 03F8E0 8003ECE0 AFA20034 */ sw $v0, 0x34($sp) -/* 03F8E4 8003ECE4 44808000 */ mtc1 $zero, $f16 -/* 03F8E8 8003ECE8 8FA50034 */ lw $a1, 0x34($sp) -/* 03F8EC 8003ECEC 4600803C */ c.lt.s $f16, $f0 -/* 03F8F0 8003ECF0 8FA70038 */ lw $a3, 0x38($sp) -/* 03F8F4 8003ECF4 C7AE0024 */ lwc1 $f14, 0x24($sp) -/* 03F8F8 8003ECF8 4500002F */ bc1f .L8003EDB8 -/* 03F8FC 8003ECFC E7A00030 */ swc1 $f0, 0x30($sp) -/* 03F900 8003ED00 3C01C1C8 */ li $at, 0xC1C80000 # -25.000000 -/* 03F904 8003ED04 44819000 */ mtc1 $at, $f18 -/* 03F908 8003ED08 00000000 */ nop -/* 03F90C 8003ED0C E6120010 */ swc1 $f18, 0x10($s0) -/* 03F910 8003ED10 C7AC002C */ lwc1 $f12, 0x2c($sp) -/* 03F914 8003ED14 AFA70038 */ sw $a3, 0x38($sp) -/* 03F918 8003ED18 0C01C1D4 */ jal func_80070750 -/* 03F91C 8003ED1C AFA50034 */ sw $a1, 0x34($sp) -/* 03F920 8003ED20 8FA70038 */ lw $a3, 0x38($sp) -/* 03F924 8003ED24 24018000 */ li $at, -32768 -/* 03F928 8003ED28 84E90000 */ lh $t1, ($a3) -/* 03F92C 8003ED2C 00411821 */ addu $v1, $v0, $at -/* 03F930 8003ED30 3066FFFF */ andi $a2, $v1, 0xffff -/* 03F934 8003ED34 312AFFFF */ andi $t2, $t1, 0xffff -/* 03F938 8003ED38 00CA2023 */ subu $a0, $a2, $t2 -/* 03F93C 8003ED3C 34018001 */ li $at, 32769 -/* 03F940 8003ED40 8FA50034 */ lw $a1, 0x34($sp) -/* 03F944 8003ED44 0081082A */ slt $at, $a0, $at -/* 03F948 8003ED48 14200003 */ bnez $at, .L8003ED58 -/* 03F94C 8003ED4C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 03F950 8003ED50 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 03F954 8003ED54 00812021 */ addu $a0, $a0, $at -.L8003ED58: -/* 03F958 8003ED58 28818000 */ slti $at, $a0, -0x8000 -/* 03F95C 8003ED5C 10200002 */ beqz $at, .L8003ED68 -/* 03F960 8003ED60 3401FFFF */ li $at, 65535 -/* 03F964 8003ED64 00812021 */ addu $a0, $a0, $at -.L8003ED68: -/* 03F968 8003ED68 28816001 */ slti $at, $a0, 0x6001 -/* 03F96C 8003ED6C 10200003 */ beqz $at, .L8003ED7C -/* 03F970 8003ED70 2881A000 */ slti $at, $a0, -0x6000 -/* 03F974 8003ED74 10200007 */ beqz $at, .L8003ED94 -/* 03F978 8003ED78 00000000 */ nop -.L8003ED7C: -/* 03F97C 8003ED7C 8CEB004C */ lw $t3, 0x4c($a3) -/* 03F980 8003ED80 240C0001 */ li $t4, 1 -/* 03F984 8003ED84 AD650000 */ sw $a1, ($t3) -/* 03F988 8003ED88 8CED004C */ lw $t5, 0x4c($a3) -/* 03F98C 8003ED8C 00000000 */ nop -/* 03F990 8003ED90 A1AC0013 */ sb $t4, 0x13($t5) -.L8003ED94: -/* 03F994 8003ED94 C7AC0028 */ lwc1 $f12, 0x28($sp) -/* 03F998 8003ED98 C7AE0030 */ lwc1 $f14, 0x30($sp) -/* 03F99C 8003ED9C AFA60020 */ sw $a2, 0x20($sp) -/* 03F9A0 8003EDA0 0C01C1D4 */ jal func_80070750 -/* 03F9A4 8003EDA4 AFA70038 */ sw $a3, 0x38($sp) -/* 03F9A8 8003EDA8 8FA70038 */ lw $a3, 0x38($sp) -/* 03F9AC 8003EDAC 8FA60020 */ lw $a2, 0x20($sp) -/* 03F9B0 8003EDB0 A4E20002 */ sh $v0, 2($a3) -/* 03F9B4 8003EDB4 A4E60000 */ sh $a2, ($a3) -.L8003EDB8: -/* 03F9B8 8003EDB8 00E02025 */ move $a0, $a3 -.L8003EDBC: -/* 03F9BC 8003EDBC 02002825 */ move $a1, $s0 -/* 03F9C0 8003EDC0 0C00FC3E */ jal func_8003F0F8 -/* 03F9C4 8003EDC4 24060137 */ li $a2, 311 -/* 03F9C8 8003EDC8 8FBF001C */ lw $ra, 0x1c($sp) -/* 03F9CC 8003EDCC 8FB00018 */ lw $s0, 0x18($sp) -/* 03F9D0 8003EDD0 03E00008 */ jr $ra -/* 03F9D4 8003EDD4 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_8003EDD8 -/* 03F9D8 8003EDD8 27BDFF88 */ addiu $sp, $sp, -0x78 -/* 03F9DC 8003EDDC AFBF0034 */ sw $ra, 0x34($sp) -/* 03F9E0 8003EDE0 AFB10030 */ sw $s1, 0x30($sp) -/* 03F9E4 8003EDE4 AFB0002C */ sw $s0, 0x2c($sp) -/* 03F9E8 8003EDE8 AFA5007C */ sw $a1, 0x7c($sp) -/* 03F9EC 8003EDEC 8CC20000 */ lw $v0, ($a2) -/* 03F9F0 8003EDF0 00808025 */ move $s0, $a0 -/* 03F9F4 8003EDF4 104000A1 */ beqz $v0, .L8003F07C -/* 03F9F8 8003EDF8 00C08825 */ move $s1, $a2 -/* 03F9FC 8003EDFC 8C430064 */ lw $v1, 0x64($v0) -/* 03FA00 8003EE00 3C01800E */ lui $at, %hi(D_800E61FC) # $at, 0x800e -/* 03FA04 8003EE04 846E01BA */ lh $t6, 0x1ba($v1) -/* 03FA08 8003EE08 C42D61F8 */ lwc1 $f13, %lo(D_800E61F8)($at) -/* 03FA0C 8003EE0C C42C61FC */ lwc1 $f12, %lo(D_800E61FC)($at) -/* 03FA10 8003EE10 000E7843 */ sra $t7, $t6, 1 -/* 03FA14 8003EE14 A4CF0014 */ sh $t7, 0x14($a2) -/* 03FA18 8003EE18 847801BC */ lh $t8, 0x1bc($v1) -/* 03FA1C 8003EE1C 00404025 */ move $t0, $v0 -/* 03FA20 8003EE20 0018C843 */ sra $t9, $t8, 1 -/* 03FA24 8003EE24 A4D90016 */ sh $t9, 0x16($a2) -/* 03FA28 8003EE28 C486000C */ lwc1 $f6, 0xc($a0) -/* 03FA2C 8003EE2C C444000C */ lwc1 $f4, 0xc($v0) -/* 03FA30 8003EE30 00000000 */ nop -/* 03FA34 8003EE34 46062201 */ sub.s $f8, $f4, $f6 -/* 03FA38 8003EE38 E7A80068 */ swc1 $f8, 0x68($sp) -/* 03FA3C 8003EE3C C4920010 */ lwc1 $f18, 0x10($a0) -/* 03FA40 8003EE40 C44A0010 */ lwc1 $f10, 0x10($v0) -/* 03FA44 8003EE44 00000000 */ nop -/* 03FA48 8003EE48 46125101 */ sub.s $f4, $f10, $f18 -/* 03FA4C 8003EE4C C7B20068 */ lwc1 $f18, 0x68($sp) -/* 03FA50 8003EE50 E7A40064 */ swc1 $f4, 0x64($sp) -/* 03FA54 8003EE54 C4880014 */ lwc1 $f8, 0x14($a0) -/* 03FA58 8003EE58 C4460014 */ lwc1 $f6, 0x14($v0) -/* 03FA5C 8003EE5C 46129102 */ mul.s $f4, $f18, $f18 -/* 03FA60 8003EE60 46083281 */ sub.s $f10, $f6, $f8 -/* 03FA64 8003EE64 E7AA0060 */ swc1 $f10, 0x60($sp) -/* 03FA68 8003EE68 C7A60060 */ lwc1 $f6, 0x60($sp) -/* 03FA6C 8003EE6C C7AA0064 */ lwc1 $f10, 0x64($sp) -/* 03FA70 8003EE70 46063202 */ mul.s $f8, $f6, $f6 -/* 03FA74 8003EE74 46082400 */ add.s $f16, $f4, $f8 -/* 03FA78 8003EE78 460A5082 */ mul.s $f2, $f10, $f10 -/* 03FA7C 8003EE7C 460084A1 */ cvt.d.s $f18, $f16 -/* 03FA80 8003EE80 462C903C */ c.lt.d $f18, $f12 -/* 03FA84 8003EE84 00000000 */ nop -/* 03FA88 8003EE88 45000008 */ bc1f .L8003EEAC -/* 03FA8C 8003EE8C 46001386 */ mov.s $f14, $f2 -/* 03FA90 8003EE90 460011A1 */ cvt.d.s $f6, $f2 -/* 03FA94 8003EE94 4626603C */ c.lt.d $f12, $f6 -/* 03FA98 8003EE98 00000000 */ nop -/* 03FA9C 8003EE9C 45000003 */ bc1f .L8003EEAC -/* 03FAA0 8003EEA0 00000000 */ nop -/* 03FAA4 8003EEA4 10000085 */ b .L8003F0BC -/* 03FAA8 8003EEA8 ACC00000 */ sw $zero, ($a2) -.L8003EEAC: -/* 03FAAC 8003EEAC 460E8300 */ add.s $f12, $f16, $f14 -/* 03FAB0 8003EEB0 AFA30070 */ sw $v1, 0x70($sp) -/* 03FAB4 8003EEB4 0C0326B4 */ jal sqrtf -/* 03FAB8 8003EEB8 AFA80074 */ sw $t0, 0x74($sp) -/* 03FABC 8003EEBC 3C014396 */ li $at, 0x43960000 # 300.000000 -/* 03FAC0 8003EEC0 44812000 */ mtc1 $at, $f4 -/* 03FAC4 8003EEC4 8FA30070 */ lw $v1, 0x70($sp) -/* 03FAC8 8003EEC8 4600203C */ c.lt.s $f4, $f0 -/* 03FACC 8003EECC 8FA80074 */ lw $t0, 0x74($sp) -/* 03FAD0 8003EED0 45000021 */ bc1f .L8003EF58 -/* 03FAD4 8003EED4 E7A0006C */ swc1 $f0, 0x6c($sp) -/* 03FAD8 8003EED8 82250019 */ lb $a1, 0x19($s1) -/* 03FADC 8003EEDC 2401FFFF */ li $at, -1 -/* 03FAE0 8003EEE0 10A1001E */ beq $a1, $at, .L8003EF5C -/* 03FAE4 8003EEE4 3C01C1C8 */ lui $at, 0xc1c8 -/* 03FAE8 8003EEE8 8E2A0008 */ lw $t2, 8($s1) -/* 03FAEC 8003EEEC 02002025 */ move $a0, $s0 -/* 03FAF0 8003EEF0 15400019 */ bnez $t2, .L8003EF58 -/* 03FAF4 8003EEF4 27AC0068 */ addiu $t4, $sp, 0x68 -/* 03FAF8 8003EEF8 862B0016 */ lh $t3, 0x16($s1) -/* 03FAFC 8003EEFC 906601C8 */ lbu $a2, 0x1c8($v1) -/* 03FB00 8003EF00 86270014 */ lh $a3, 0x14($s1) -/* 03FB04 8003EF04 AFAB0010 */ sw $t3, 0x10($sp) -/* 03FB08 8003EF08 C628000C */ lwc1 $f8, 0xc($s1) -/* 03FB0C 8003EF0C 27AD0064 */ addiu $t5, $sp, 0x64 -/* 03FB10 8003EF10 27AE0060 */ addiu $t6, $sp, 0x60 -/* 03FB14 8003EF14 AFAE0020 */ sw $t6, 0x20($sp) -/* 03FB18 8003EF18 AFAD001C */ sw $t5, 0x1c($sp) -/* 03FB1C 8003EF1C AFA80074 */ sw $t0, 0x74($sp) -/* 03FB20 8003EF20 AFAC0018 */ sw $t4, 0x18($sp) -/* 03FB24 8003EF24 0C006557 */ jal func_8001955C -/* 03FB28 8003EF28 E7A80014 */ swc1 $f8, 0x14($sp) -/* 03FB2C 8003EF2C 3C0143FA */ li $at, 0x43FA0000 # 500.000000 -/* 03FB30 8003EF30 44817000 */ mtc1 $at, $f14 -/* 03FB34 8003EF34 C7AC0064 */ lwc1 $f12, 0x64($sp) -/* 03FB38 8003EF38 0C01C1D4 */ jal func_80070750 -/* 03FB3C 8003EF3C AFA20058 */ sw $v0, 0x58($sp) -/* 03FB40 8003EF40 8FA80074 */ lw $t0, 0x74($sp) -/* 03FB44 8003EF44 304FFFFF */ andi $t7, $v0, 0xffff -/* 03FB48 8003EF48 24180003 */ li $t8, 3 -/* 03FB4C 8003EF4C AFAF0050 */ sw $t7, 0x50($sp) -/* 03FB50 8003EF50 10000006 */ b .L8003EF6C -/* 03FB54 8003EF54 AFB80048 */ sw $t8, 0x48($sp) -.L8003EF58: -/* 03FB58 8003EF58 3C01C1C8 */ li $at, 0xC1C80000 # -25.000000 -.L8003EF5C: -/* 03FB5C 8003EF5C 44815000 */ mtc1 $at, $f10 -/* 03FB60 8003EF60 AE280008 */ sw $t0, 8($s1) -/* 03FB64 8003EF64 E62A0010 */ swc1 $f10, 0x10($s1) -/* 03FB68 8003EF68 AFA00058 */ sw $zero, 0x58($sp) -.L8003EF6C: -/* 03FB6C 8003EF6C C7AC0068 */ lwc1 $f12, 0x68($sp) -/* 03FB70 8003EF70 C7AE0060 */ lwc1 $f14, 0x60($sp) -/* 03FB74 8003EF74 0C01C1D4 */ jal func_80070750 -/* 03FB78 8003EF78 AFA80074 */ sw $t0, 0x74($sp) -/* 03FB7C 8003EF7C 86050000 */ lh $a1, ($s0) -/* 03FB80 8003EF80 24018000 */ li $at, -32768 -/* 03FB84 8003EF84 00412021 */ addu $a0, $v0, $at -/* 03FB88 8003EF88 3086FFFF */ andi $a2, $a0, 0xffff -/* 03FB8C 8003EF8C 30AAFFFF */ andi $t2, $a1, 0xffff -/* 03FB90 8003EF90 34078001 */ li $a3, 32769 -/* 03FB94 8003EF94 00CA1823 */ subu $v1, $a2, $t2 -/* 03FB98 8003EF98 8FA80074 */ lw $t0, 0x74($sp) -/* 03FB9C 8003EF9C 8FA90048 */ lw $t1, 0x48($sp) -/* 03FBA0 8003EFA0 0067082A */ slt $at, $v1, $a3 -/* 03FBA4 8003EFA4 8FAB0058 */ lw $t3, 0x58($sp) -/* 03FBA8 8003EFA8 14200003 */ bnez $at, .L8003EFB8 -/* 03FBAC 8003EFAC 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 03FBB0 8003EFB0 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 03FBB4 8003EFB4 00611821 */ addu $v1, $v1, $at -.L8003EFB8: -/* 03FBB8 8003EFB8 28618000 */ slti $at, $v1, -0x8000 -/* 03FBBC 8003EFBC 10200002 */ beqz $at, .L8003EFC8 -/* 03FBC0 8003EFC0 3401FFFF */ li $at, 65535 -/* 03FBC4 8003EFC4 00611821 */ addu $v1, $v1, $at -.L8003EFC8: -/* 03FBC8 8003EFC8 1160001B */ beqz $t3, .L8003F038 -/* 03FBCC 8003EFCC 28616001 */ slti $at, $v1, 0x6001 -/* 03FBD0 8003EFD0 8FA4007C */ lw $a0, 0x7c($sp) -/* 03FBD4 8003EFD4 86020002 */ lh $v0, 2($s0) -/* 03FBD8 8003EFD8 00640019 */ multu $v1, $a0 -/* 03FBDC 8003EFDC 3058FFFF */ andi $t8, $v0, 0xffff -/* 03FBE0 8003EFE0 00006012 */ mflo $t4 -/* 03FBE4 8003EFE4 012C6807 */ srav $t5, $t4, $t1 -/* 03FBE8 8003EFE8 00AD7021 */ addu $t6, $a1, $t5 -/* 03FBEC 8003EFEC A60E0000 */ sh $t6, ($s0) -/* 03FBF0 8003EFF0 8FAF0050 */ lw $t7, 0x50($sp) -/* 03FBF4 8003EFF4 00000000 */ nop -/* 03FBF8 8003EFF8 01F81823 */ subu $v1, $t7, $t8 -/* 03FBFC 8003EFFC 0067082A */ slt $at, $v1, $a3 -/* 03FC00 8003F000 14200003 */ bnez $at, .L8003F010 -/* 03FC04 8003F004 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 03FC08 8003F008 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 03FC0C 8003F00C 00611821 */ addu $v1, $v1, $at -.L8003F010: -/* 03FC10 8003F010 28618000 */ slti $at, $v1, -0x8000 -/* 03FC14 8003F014 10200002 */ beqz $at, .L8003F020 -/* 03FC18 8003F018 3401FFFF */ li $at, 65535 -/* 03FC1C 8003F01C 00611821 */ addu $v1, $v1, $at -.L8003F020: -/* 03FC20 8003F020 00640019 */ multu $v1, $a0 -/* 03FC24 8003F024 0000C812 */ mflo $t9 -/* 03FC28 8003F028 01395007 */ srav $t2, $t9, $t1 -/* 03FC2C 8003F02C 004A5821 */ addu $t3, $v0, $t2 -/* 03FC30 8003F030 10000012 */ b .L8003F07C -/* 03FC34 8003F034 A60B0002 */ sh $t3, 2($s0) -.L8003F038: -/* 03FC38 8003F038 10200003 */ beqz $at, .L8003F048 -/* 03FC3C 8003F03C 2861A000 */ slti $at, $v1, -0x6000 -/* 03FC40 8003F040 10200007 */ beqz $at, .L8003F060 -/* 03FC44 8003F044 00000000 */ nop -.L8003F048: -/* 03FC48 8003F048 8E0C004C */ lw $t4, 0x4c($s0) -/* 03FC4C 8003F04C 240D0001 */ li $t5, 1 -/* 03FC50 8003F050 AD880000 */ sw $t0, ($t4) -/* 03FC54 8003F054 8E0E004C */ lw $t6, 0x4c($s0) -/* 03FC58 8003F058 00000000 */ nop -/* 03FC5C 8003F05C A1CD0013 */ sb $t5, 0x13($t6) -.L8003F060: -/* 03FC60 8003F060 C7AC0064 */ lwc1 $f12, 0x64($sp) -/* 03FC64 8003F064 C7AE006C */ lwc1 $f14, 0x6c($sp) -/* 03FC68 8003F068 0C01C1D4 */ jal func_80070750 -/* 03FC6C 8003F06C AFA60054 */ sw $a2, 0x54($sp) -/* 03FC70 8003F070 8FA60054 */ lw $a2, 0x54($sp) -/* 03FC74 8003F074 A6020002 */ sh $v0, 2($s0) -/* 03FC78 8003F078 A6060000 */ sh $a2, ($s0) -.L8003F07C: -/* 03FC7C 8003F07C 02002025 */ move $a0, $s0 -/* 03FC80 8003F080 02202825 */ move $a1, $s1 -/* 03FC84 8003F084 0C00FC3E */ jal func_8003F0F8 -/* 03FC88 8003F088 24060136 */ li $a2, 310 -/* 03FC8C 8003F08C 0C0270F2 */ jal func_8009C3C8 -/* 03FC90 8003F090 00000000 */ nop -/* 03FC94 8003F094 28410003 */ slti $at, $v0, 3 -/* 03FC98 8003F098 10200009 */ beqz $at, .L8003F0C0 -/* 03FC9C 8003F09C 8FBF0034 */ lw $ra, 0x34($sp) -/* 03FCA0 8003F0A0 8E180074 */ lw $t8, 0x74($s0) -/* 03FCA4 8003F0A4 02002025 */ move $a0, $s0 -/* 03FCA8 8003F0A8 37190001 */ ori $t9, $t8, 1 -/* 03FCAC 8003F0AC AE190074 */ sw $t9, 0x74($s0) -/* 03FCB0 8003F0B0 8FA5007C */ lw $a1, 0x7c($sp) -/* 03FCB4 8003F0B4 0C02BF0F */ jal func_800AFC3C -/* 03FCB8 8003F0B8 00000000 */ nop -.L8003F0BC: -/* 03FCBC 8003F0BC 8FBF0034 */ lw $ra, 0x34($sp) -.L8003F0C0: -/* 03FCC0 8003F0C0 8FB0002C */ lw $s0, 0x2c($sp) -/* 03FCC4 8003F0C4 8FB10030 */ lw $s1, 0x30($sp) -/* 03FCC8 8003F0C8 03E00008 */ jr $ra -/* 03FCCC 8003F0CC 27BD0078 */ addiu $sp, $sp, 0x78 - -glabel func_8003F0D0 -/* 03FCD0 8003F0D0 3C018012 */ lui $at, 0x8012 -/* 03FCD4 8003F0D4 03E00008 */ jr $ra -/* 03FCD8 8003F0D8 AC20D4DC */ sw $zero, -0x2b24($at) - -glabel func_8003F0DC -/* 03FCDC 8003F0DC 3C028012 */ lui $v0, %hi(D_8011D4DC) # $v0, 0x8012 -/* 03FCE0 8003F0E0 2442D4DC */ addiu $v0, %lo(D_8011D4DC) # addiu $v0, $v0, -0x2b24 -/* 03FCE4 8003F0E4 8C4E0000 */ lw $t6, ($v0) -/* 03FCE8 8003F0E8 00000000 */ nop -/* 03FCEC 8003F0EC 25CFFFFF */ addiu $t7, $t6, -1 -/* 03FCF0 8003F0F0 03E00008 */ jr $ra -/* 03FCF4 8003F0F4 AC4F0000 */ sw $t7, ($v0) - -glabel func_8003F0F8 -/* 03FCF8 8003F0F8 27BDFF90 */ addiu $sp, $sp, -0x70 -/* 03FCFC 8003F0FC AFB20030 */ sw $s2, 0x30($sp) -/* 03FD00 8003F100 00809025 */ move $s2, $a0 -/* 03FD04 8003F104 AFBF0044 */ sw $ra, 0x44($sp) -/* 03FD08 8003F108 AFB60040 */ sw $s6, 0x40($sp) -/* 03FD0C 8003F10C AFB5003C */ sw $s5, 0x3c($sp) -/* 03FD10 8003F110 AFB40038 */ sw $s4, 0x38($sp) -/* 03FD14 8003F114 00A0A825 */ move $s5, $a1 -/* 03FD18 8003F118 30D6FFFF */ andi $s6, $a2, 0xffff -/* 03FD1C 8003F11C AFB30034 */ sw $s3, 0x34($sp) -/* 03FD20 8003F120 AFB1002C */ sw $s1, 0x2c($sp) -/* 03FD24 8003F124 AFB00028 */ sw $s0, 0x28($sp) -/* 03FD28 8003F128 E7B50020 */ swc1 $f21, 0x20($sp) -/* 03FD2C 8003F12C E7B40024 */ swc1 $f20, 0x24($sp) -/* 03FD30 8003F130 AFA60078 */ sw $a2, 0x78($sp) -/* 03FD34 8003F134 0000A025 */ move $s4, $zero -/* 03FD38 8003F138 0C006EA4 */ jal func_8001BA90 -/* 03FD3C 8003F13C 27A40060 */ addiu $a0, $sp, 0x60 -/* 03FD40 8003F140 8FAE0060 */ lw $t6, 0x60($sp) -/* 03FD44 8003F144 00008025 */ move $s0, $zero -/* 03FD48 8003F148 19C00030 */ blez $t6, .L8003F20C -/* 03FD4C 8003F14C 00408825 */ move $s1, $v0 -/* 03FD50 8003F150 2413FFFF */ li $s3, -1 -.L8003F154: -/* 03FD54 8003F154 8E220000 */ lw $v0, ($s1) -/* 03FD58 8003F158 8EAF0004 */ lw $t7, 4($s5) -/* 03FD5C 8003F15C 00000000 */ nop -/* 03FD60 8003F160 11E20026 */ beq $t7, $v0, .L8003F1FC -/* 03FD64 8003F164 8FA80060 */ lw $t0, 0x60($sp) -/* 03FD68 8003F168 8C580064 */ lw $t8, 0x64($v0) -/* 03FD6C 8003F16C 00000000 */ nop -/* 03FD70 8003F170 87190000 */ lh $t9, ($t8) -/* 03FD74 8003F174 00000000 */ nop -/* 03FD78 8003F178 12790020 */ beq $s3, $t9, .L8003F1FC -/* 03FD7C 8003F17C 8FA80060 */ lw $t0, 0x60($sp) -/* 03FD80 8003F180 C444000C */ lwc1 $f4, 0xc($v0) -/* 03FD84 8003F184 C646000C */ lwc1 $f6, 0xc($s2) -/* 03FD88 8003F188 C4480010 */ lwc1 $f8, 0x10($v0) -/* 03FD8C 8003F18C 46062001 */ sub.s $f0, $f4, $f6 -/* 03FD90 8003F190 C64A0010 */ lwc1 $f10, 0x10($s2) -/* 03FD94 8003F194 46000102 */ mul.s $f4, $f0, $f0 -/* 03FD98 8003F198 460A4081 */ sub.s $f2, $f8, $f10 -/* 03FD9C 8003F19C C4500014 */ lwc1 $f16, 0x14($v0) -/* 03FDA0 8003F1A0 C6520014 */ lwc1 $f18, 0x14($s2) -/* 03FDA4 8003F1A4 46021182 */ mul.s $f6, $f2, $f2 -/* 03FDA8 8003F1A8 46128381 */ sub.s $f14, $f16, $f18 -/* 03FDAC 8003F1AC 460E7282 */ mul.s $f10, $f14, $f14 -/* 03FDB0 8003F1B0 46062200 */ add.s $f8, $f4, $f6 -/* 03FDB4 8003F1B4 0C0326B4 */ jal sqrtf -/* 03FDB8 8003F1B8 460A4300 */ add.s $f12, $f8, $f10 -/* 03FDBC 8003F1BC 46000506 */ mov.s $f20, $f0 -/* 03FDC0 8003F1C0 0C00072E */ jal func_80001CB8 -/* 03FDC4 8003F1C4 32C4FFFF */ andi $a0, $s6, 0xffff -/* 03FDC8 8003F1C8 44828000 */ mtc1 $v0, $f16 -/* 03FDCC 8003F1CC 04410005 */ bgez $v0, .L8003F1E4 -/* 03FDD0 8003F1D0 468084A0 */ cvt.s.w $f18, $f16 -/* 03FDD4 8003F1D4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 03FDD8 8003F1D8 44812000 */ mtc1 $at, $f4 -/* 03FDDC 8003F1DC 00000000 */ nop -/* 03FDE0 8003F1E0 46049480 */ add.s $f18, $f18, $f4 -.L8003F1E4: -/* 03FDE4 8003F1E4 4612A03E */ c.le.s $f20, $f18 -/* 03FDE8 8003F1E8 00000000 */ nop -/* 03FDEC 8003F1EC 45000003 */ bc1f .L8003F1FC -/* 03FDF0 8003F1F0 8FA80060 */ lw $t0, 0x60($sp) -/* 03FDF4 8003F1F4 24140001 */ li $s4, 1 -/* 03FDF8 8003F1F8 8FA80060 */ lw $t0, 0x60($sp) -.L8003F1FC: -/* 03FDFC 8003F1FC 26100001 */ addiu $s0, $s0, 1 -/* 03FE00 8003F200 0208082A */ slt $at, $s0, $t0 -/* 03FE04 8003F204 1420FFD3 */ bnez $at, .L8003F154 -/* 03FE08 8003F208 26310004 */ addiu $s1, $s1, 4 -.L8003F20C: -/* 03FE0C 8003F20C 1280001D */ beqz $s4, .L8003F284 -/* 03FE10 8003F210 00000000 */ nop -/* 03FE14 8003F214 8EA4001C */ lw $a0, 0x1c($s5) -/* 03FE18 8003F218 3C108012 */ lui $s0, %hi(D_8011D4DC) # $s0, 0x8012 -/* 03FE1C 8003F21C 14800012 */ bnez $a0, .L8003F268 -/* 03FE20 8003F220 2610D4DC */ addiu $s0, %lo(D_8011D4DC) # addiu $s0, $s0, -0x2b24 -/* 03FE24 8003F224 8E090000 */ lw $t1, ($s0) -/* 03FE28 8003F228 32C4FFFF */ andi $a0, $s6, 0xffff -/* 03FE2C 8003F22C 29210008 */ slti $at, $t1, 8 -/* 03FE30 8003F230 10200021 */ beqz $at, .L8003F2B8 -/* 03FE34 8003F234 240A0001 */ li $t2, 1 -/* 03FE38 8003F238 8E45000C */ lw $a1, 0xc($s2) -/* 03FE3C 8003F23C 8E460010 */ lw $a2, 0x10($s2) -/* 03FE40 8003F240 8E470014 */ lw $a3, 0x14($s2) -/* 03FE44 8003F244 26AB001C */ addiu $t3, $s5, 0x1c -/* 03FE48 8003F248 AFAB0014 */ sw $t3, 0x14($sp) -/* 03FE4C 8003F24C 0C002556 */ jal func_80009558 -/* 03FE50 8003F250 AFAA0010 */ sw $t2, 0x10($sp) -/* 03FE54 8003F254 8E0C0000 */ lw $t4, ($s0) -/* 03FE58 8003F258 00000000 */ nop -/* 03FE5C 8003F25C 258D0001 */ addiu $t5, $t4, 1 -/* 03FE60 8003F260 10000015 */ b .L8003F2B8 -/* 03FE64 8003F264 AE0D0000 */ sw $t5, ($s0) -.L8003F268: -/* 03FE68 8003F268 8E45000C */ lw $a1, 0xc($s2) -/* 03FE6C 8003F26C 8E460010 */ lw $a2, 0x10($s2) -/* 03FE70 8003F270 8E470014 */ lw $a3, 0x14($s2) -/* 03FE74 8003F274 0C0025B6 */ jal func_800096D8 -/* 03FE78 8003F278 00000000 */ nop -/* 03FE7C 8003F27C 1000000F */ b .L8003F2BC -/* 03FE80 8003F280 8FBF0044 */ lw $ra, 0x44($sp) -.L8003F284: -/* 03FE84 8003F284 8EA4001C */ lw $a0, 0x1c($s5) -/* 03FE88 8003F288 00000000 */ nop -/* 03FE8C 8003F28C 1080000B */ beqz $a0, .L8003F2BC -/* 03FE90 8003F290 8FBF0044 */ lw $ra, 0x44($sp) -/* 03FE94 8003F294 0C0025BE */ jal func_800096F8 -/* 03FE98 8003F298 00000000 */ nop -/* 03FE9C 8003F29C 3C108012 */ lui $s0, %hi(D_8011D4DC) # $s0, 0x8012 -/* 03FEA0 8003F2A0 2610D4DC */ addiu $s0, %lo(D_8011D4DC) # addiu $s0, $s0, -0x2b24 -/* 03FEA4 8003F2A4 AEA0001C */ sw $zero, 0x1c($s5) -/* 03FEA8 8003F2A8 8E0E0000 */ lw $t6, ($s0) -/* 03FEAC 8003F2AC 00000000 */ nop -/* 03FEB0 8003F2B0 25CFFFFF */ addiu $t7, $t6, -1 -/* 03FEB4 8003F2B4 AE0F0000 */ sw $t7, ($s0) -.L8003F2B8: -/* 03FEB8 8003F2B8 8FBF0044 */ lw $ra, 0x44($sp) -.L8003F2BC: -/* 03FEBC 8003F2BC C7B50020 */ lwc1 $f21, 0x20($sp) -/* 03FEC0 8003F2C0 C7B40024 */ lwc1 $f20, 0x24($sp) -/* 03FEC4 8003F2C4 8FB00028 */ lw $s0, 0x28($sp) -/* 03FEC8 8003F2C8 8FB1002C */ lw $s1, 0x2c($sp) -/* 03FECC 8003F2CC 8FB20030 */ lw $s2, 0x30($sp) -/* 03FED0 8003F2D0 8FB30034 */ lw $s3, 0x34($sp) -/* 03FED4 8003F2D4 8FB40038 */ lw $s4, 0x38($sp) -/* 03FED8 8003F2D8 8FB5003C */ lw $s5, 0x3c($sp) -/* 03FEDC 8003F2DC 8FB60040 */ lw $s6, 0x40($sp) -/* 03FEE0 8003F2E0 03E00008 */ jr $ra -/* 03FEE4 8003F2E4 27BD0070 */ addiu $sp, $sp, 0x70 - -glabel func_8003F2E8 -/* 03FEE8 8003F2E8 27BDFF90 */ addiu $sp, $sp, -0x70 -/* 03FEEC 8003F2EC AFBF002C */ sw $ra, 0x2c($sp) -/* 03FEF0 8003F2F0 AFB00028 */ sw $s0, 0x28($sp) -/* 03FEF4 8003F2F4 AFA50074 */ sw $a1, 0x74($sp) -/* 03FEF8 8003F2F8 8C8E0064 */ lw $t6, 0x64($a0) -/* 03FEFC 8003F2FC 44852000 */ mtc1 $a1, $f4 -/* 03FF00 8003F300 AFAE0040 */ sw $t6, 0x40($sp) -/* 03FF04 8003F304 8DD80004 */ lw $t8, 4($t6) -/* 03FF08 8003F308 3C0B8000 */ lui $t3, %hi(D_80000300) # $t3, 0x8000 -/* 03FF0C 8003F30C 468020A0 */ cvt.s.w $f2, $f4 -/* 03FF10 8003F310 8D6B0300 */ lw $t3, %lo(D_80000300)($t3) -/* 03FF14 8003F314 8F190064 */ lw $t9, 0x64($t8) -/* 03FF18 8003F318 00808025 */ move $s0, $a0 -/* 03FF1C 8003F31C 46001006 */ mov.s $f0, $f2 -/* 03FF20 8003F320 15600007 */ bnez $t3, .L8003F340 -/* 03FF24 8003F324 AFB90064 */ sw $t9, 0x64($sp) -/* 03FF28 8003F328 3C01800E */ lui $at, %hi(D_800E6204) # $at, 0x800e -/* 03FF2C 8003F32C C4296200 */ lwc1 $f9, %lo(D_800E6200)($at) -/* 03FF30 8003F330 C4286204 */ lwc1 $f8, %lo(D_800E6204)($at) -/* 03FF34 8003F334 460011A1 */ cvt.d.s $f6, $f2 -/* 03FF38 8003F338 46283282 */ mul.d $f10, $f6, $f8 -/* 03FF3C 8003F33C 46205020 */ cvt.s.d $f0, $f10 -.L8003F340: -/* 03FF40 8003F340 26080078 */ addiu $t0, $s0, 0x78 -/* 03FF44 8003F344 910C0004 */ lbu $t4, 4($t0) -/* 03FF48 8003F348 00000000 */ nop -/* 03FF4C 8003F34C 15800081 */ bnez $t4, .L8003F554 -/* 03FF50 8003F350 8FAA0040 */ lw $t2, 0x40($sp) -/* 03FF54 8003F354 C612001C */ lwc1 $f18, 0x1c($s0) -/* 03FF58 8003F358 C610000C */ lwc1 $f16, 0xc($s0) -/* 03FF5C 8003F35C 46009102 */ mul.s $f4, $f18, $f0 -/* 03FF60 8003F360 3C014110 */ li $at, 0x41100000 # 9.000000 -/* 03FF64 8003F364 2605000C */ addiu $a1, $s0, 0xc -/* 03FF68 8003F368 24040001 */ li $a0, 1 -/* 03FF6C 8003F36C 46048180 */ add.s $f6, $f16, $f4 -/* 03FF70 8003F370 27A60058 */ addiu $a2, $sp, 0x58 -/* 03FF74 8003F374 E7A60058 */ swc1 $f6, 0x58($sp) -/* 03FF78 8003F378 C60A0020 */ lwc1 $f10, 0x20($s0) -/* 03FF7C 8003F37C C6080010 */ lwc1 $f8, 0x10($s0) -/* 03FF80 8003F380 46005482 */ mul.s $f18, $f10, $f0 -/* 03FF84 8003F384 2407FFFF */ li $a3, -1 -/* 03FF88 8003F388 46124400 */ add.s $f16, $f8, $f18 -/* 03FF8C 8003F38C 44819000 */ mtc1 $at, $f18 -/* 03FF90 8003F390 E7B0005C */ swc1 $f16, 0x5c($sp) -/* 03FF94 8003F394 C6060024 */ lwc1 $f6, 0x24($s0) -/* 03FF98 8003F398 C6040014 */ lwc1 $f4, 0x14($s0) -/* 03FF9C 8003F39C 46003282 */ mul.s $f10, $f6, $f0 -/* 03FFA0 8003F3A0 E7A00050 */ swc1 $f0, 0x50($sp) -/* 03FFA4 8003F3A4 AFA80038 */ sw $t0, 0x38($sp) -/* 03FFA8 8003F3A8 AFA50034 */ sw $a1, 0x34($sp) -/* 03FFAC 8003F3AC 460A2200 */ add.s $f8, $f4, $f10 -/* 03FFB0 8003F3B0 E7B20054 */ swc1 $f18, 0x54($sp) -/* 03FFB4 8003F3B4 0C00C44C */ jal func_80031130 -/* 03FFB8 8003F3B8 E7A80060 */ swc1 $f8, 0x60($sp) -/* 03FFBC 8003F3BC 240DFFFF */ li $t5, -1 -/* 03FFC0 8003F3C0 8FA40034 */ lw $a0, 0x34($sp) -/* 03FFC4 8003F3C4 240E0001 */ li $t6, 1 -/* 03FFC8 8003F3C8 27AF004C */ addiu $t7, $sp, 0x4c -/* 03FFCC 8003F3CC AFA0004C */ sw $zero, 0x4c($sp) -/* 03FFD0 8003F3D0 A3AD0047 */ sb $t5, 0x47($sp) -/* 03FFD4 8003F3D4 AFAF0014 */ sw $t7, 0x14($sp) -/* 03FFD8 8003F3D8 AFAE0010 */ sw $t6, 0x10($sp) -/* 03FFDC 8003F3DC 27A50058 */ addiu $a1, $sp, 0x58 -/* 03FFE0 8003F3E0 27A60054 */ addiu $a2, $sp, 0x54 -/* 03FFE4 8003F3E4 0C00C580 */ jal func_80031600 -/* 03FFE8 8003F3E8 27A70047 */ addiu $a3, $sp, 0x47 -/* 03FFEC 8003F3EC C7B00058 */ lwc1 $f16, 0x58($sp) -/* 03FFF0 8003F3F0 C606000C */ lwc1 $f6, 0xc($s0) -/* 03FFF4 8003F3F4 C7A00050 */ lwc1 $f0, 0x50($sp) -/* 03FFF8 8003F3F8 46068101 */ sub.s $f4, $f16, $f6 -/* 03FFFC 8003F3FC 8FA80038 */ lw $t0, 0x38($sp) -/* 040000 8003F400 46002283 */ div.s $f10, $f4, $f0 -/* 040004 8003F404 C6120010 */ lwc1 $f18, 0x10($s0) -/* 040008 8003F408 240B0001 */ li $t3, 1 -/* 04000C 8003F40C 02002025 */ move $a0, $s0 -/* 040010 8003F410 27A50054 */ addiu $a1, $sp, 0x54 -/* 040014 8003F414 00003025 */ move $a2, $zero -/* 040018 8003F418 24070001 */ li $a3, 1 -/* 04001C 8003F41C E60A001C */ swc1 $f10, 0x1c($s0) -/* 040020 8003F420 C7A8005C */ lwc1 $f8, 0x5c($sp) -/* 040024 8003F424 C60A0014 */ lwc1 $f10, 0x14($s0) -/* 040028 8003F428 46124401 */ sub.s $f16, $f8, $f18 -/* 04002C 8003F42C 00000000 */ nop -/* 040030 8003F430 46008183 */ div.s $f6, $f16, $f0 -/* 040034 8003F434 E6060020 */ swc1 $f6, 0x20($s0) -/* 040038 8003F438 C7A40060 */ lwc1 $f4, 0x60($sp) -/* 04003C 8003F43C 00000000 */ nop -/* 040040 8003F440 460A2201 */ sub.s $f8, $f4, $f10 -/* 040044 8003F444 00000000 */ nop -/* 040048 8003F448 46004483 */ div.s $f18, $f8, $f0 -/* 04004C 8003F44C E6120024 */ swc1 $f18, 0x24($s0) -/* 040050 8003F450 C7B00058 */ lwc1 $f16, 0x58($sp) -/* 040054 8003F454 00000000 */ nop -/* 040058 8003F458 E610000C */ swc1 $f16, 0xc($s0) -/* 04005C 8003F45C C7A6005C */ lwc1 $f6, 0x5c($sp) -/* 040060 8003F460 00000000 */ nop -/* 040064 8003F464 E6060010 */ swc1 $f6, 0x10($s0) -/* 040068 8003F468 C7A40060 */ lwc1 $f4, 0x60($sp) -/* 04006C 8003F46C 00000000 */ nop -/* 040070 8003F470 E6040014 */ swc1 $f4, 0x14($s0) -/* 040074 8003F474 8FB8004C */ lw $t8, 0x4c($sp) -/* 040078 8003F478 8FB90064 */ lw $t9, 0x64($sp) -/* 04007C 8003F47C 17000005 */ bnez $t8, .L8003F494 -/* 040080 8003F480 00000000 */ nop -/* 040084 8003F484 832A01D6 */ lb $t2, 0x1d6($t9) -/* 040088 8003F488 24010002 */ li $at, 2 -/* 04008C 8003F48C 15410013 */ bne $t2, $at, .L8003F4DC -/* 040090 8003F490 00000000 */ nop -.L8003F494: -/* 040094 8003F494 44805000 */ mtc1 $zero, $f10 -/* 040098 8003F498 44804000 */ mtc1 $zero, $f8 -/* 04009C 8003F49C E60A001C */ swc1 $f10, 0x1c($s0) -/* 0400A0 8003F4A0 E6080024 */ swc1 $f8, 0x24($s0) -/* 0400A4 8003F4A4 A10B0004 */ sb $t3, 4($t0) -/* 0400A8 8003F4A8 A1000005 */ sb $zero, 5($t0) -/* 0400AC 8003F4AC A5000006 */ sh $zero, 6($t0) -/* 0400B0 8003F4B0 8FAC0040 */ lw $t4, 0x40($sp) -/* 0400B4 8003F4B4 2401000A */ li $at, 10 -/* 0400B8 8003F4B8 918D0018 */ lbu $t5, 0x18($t4) -/* 0400BC 8003F4BC 00000000 */ nop -/* 0400C0 8003F4C0 15A10006 */ bne $t5, $at, .L8003F4DC -/* 0400C4 8003F4C4 3C014180 */ li $at, 0x41800000 # 16.000000 -/* 0400C8 8003F4C8 44818000 */ mtc1 $at, $f16 -/* 0400CC 8003F4CC C6120010 */ lwc1 $f18, 0x10($s0) -/* 0400D0 8003F4D0 00000000 */ nop -/* 0400D4 8003F4D4 46109180 */ add.s $f6, $f18, $f16 -/* 0400D8 8003F4D8 E6060010 */ swc1 $f6, 0x10($s0) -.L8003F4DC: -/* 0400DC 8003F4DC 3C01800E */ lui $at, %hi(D_800E6208) # $at, 0x800e -/* 0400E0 8003F4E0 C4246208 */ lwc1 $f4, %lo(D_800E6208)($at) -/* 0400E4 8003F4E4 AFA80038 */ sw $t0, 0x38($sp) -/* 0400E8 8003F4E8 0C00AE6F */ jal func_8002B9BC -/* 0400EC 8003F4EC E7A40054 */ swc1 $f4, 0x54($sp) -/* 0400F0 8003F4F0 8FA80038 */ lw $t0, 0x38($sp) -/* 0400F4 8003F4F4 10400017 */ beqz $v0, .L8003F554 -/* 0400F8 8003F4F8 8FAA0040 */ lw $t2, 0x40($sp) -/* 0400FC 8003F4FC C60A0010 */ lwc1 $f10, 0x10($s0) -/* 040100 8003F500 C7A80054 */ lwc1 $f8, 0x54($sp) -/* 040104 8003F504 240E0001 */ li $t6, 1 -/* 040108 8003F508 4608503C */ c.lt.s $f10, $f8 -/* 04010C 8003F50C 240F0001 */ li $t7, 1 -/* 040110 8003F510 45000010 */ bc1f .L8003F554 -/* 040114 8003F514 8FAA0040 */ lw $t2, 0x40($sp) -/* 040118 8003F518 A10E0004 */ sb $t6, 4($t0) -/* 04011C 8003F51C A10F0005 */ sb $t7, 5($t0) -/* 040120 8003F520 A5000006 */ sh $zero, 6($t0) -/* 040124 8003F524 8FB80040 */ lw $t8, 0x40($sp) -/* 040128 8003F528 2401000A */ li $at, 10 -/* 04012C 8003F52C 93190018 */ lbu $t9, 0x18($t8) -/* 040130 8003F530 00000000 */ nop -/* 040134 8003F534 17210006 */ bne $t9, $at, .L8003F550 -/* 040138 8003F538 3C014180 */ li $at, 0x41800000 # 16.000000 -/* 04013C 8003F53C 44818000 */ mtc1 $at, $f16 -/* 040140 8003F540 C6120010 */ lwc1 $f18, 0x10($s0) -/* 040144 8003F544 00000000 */ nop -/* 040148 8003F548 46109180 */ add.s $f6, $f18, $f16 -/* 04014C 8003F54C E6060010 */ swc1 $f6, 0x10($s0) -.L8003F550: -/* 040150 8003F550 8FAA0040 */ lw $t2, 0x40($sp) -.L8003F554: -/* 040154 8003F554 24010003 */ li $at, 3 -/* 040158 8003F558 914B0018 */ lbu $t3, 0x18($t2) -/* 04015C 8003F55C 00000000 */ nop -/* 040160 8003F560 1561003F */ bne $t3, $at, .L8003F660 -/* 040164 8003F564 8FAD0040 */ lw $t5, 0x40($sp) -/* 040168 8003F568 91020004 */ lbu $v0, 4($t0) -/* 04016C 8003F56C 24010001 */ li $at, 1 -/* 040170 8003F570 1040003B */ beqz $v0, .L8003F660 -/* 040174 8003F574 8FAD0040 */ lw $t5, 0x40($sp) -/* 040178 8003F578 1441000D */ bne $v0, $at, .L8003F5B0 -/* 04017C 8003F57C 00000000 */ nop -/* 040180 8003F580 850C0006 */ lh $t4, 6($t0) -/* 040184 8003F584 8FAD0074 */ lw $t5, 0x74($sp) -/* 040188 8003F588 2418000C */ li $t8, 12 -/* 04018C 8003F58C 018D7021 */ addu $t6, $t4, $t5 -/* 040190 8003F590 A50E0006 */ sh $t6, 6($t0) -/* 040194 8003F594 850F0006 */ lh $t7, 6($t0) -/* 040198 8003F598 00000000 */ nop -/* 04019C 8003F59C 29E1000D */ slti $at, $t7, 0xd -/* 0401A0 8003F5A0 14200012 */ bnez $at, .L8003F5EC -/* 0401A4 8003F5A4 8FAE0064 */ lw $t6, 0x64($sp) -/* 0401A8 8003F5A8 1000000F */ b .L8003F5E8 -/* 0401AC 8003F5AC A5180006 */ sh $t8, 6($t0) -.L8003F5B0: -/* 0401B0 8003F5B0 85190006 */ lh $t9, 6($t0) -/* 0401B4 8003F5B4 8FAA0074 */ lw $t2, 0x74($sp) -/* 0401B8 8003F5B8 240D0001 */ li $t5, 1 -/* 0401BC 8003F5BC 032A5823 */ subu $t3, $t9, $t2 -/* 0401C0 8003F5C0 A50B0006 */ sh $t3, 6($t0) -/* 0401C4 8003F5C4 850C0006 */ lh $t4, 6($t0) -/* 0401C8 8003F5C8 02002025 */ move $a0, $s0 -/* 0401CC 8003F5CC 1D800007 */ bgtz $t4, .L8003F5EC -/* 0401D0 8003F5D0 8FAE0064 */ lw $t6, 0x64($sp) -/* 0401D4 8003F5D4 A50D0006 */ sh $t5, 6($t0) -/* 0401D8 8003F5D8 0C003FEE */ jal func_8000FFB8 -/* 0401DC 8003F5DC AFA80038 */ sw $t0, 0x38($sp) -/* 0401E0 8003F5E0 8FA80038 */ lw $t0, 0x38($sp) -/* 0401E4 8003F5E4 00000000 */ nop -.L8003F5E8: -/* 0401E8 8003F5E8 8FAE0064 */ lw $t6, 0x64($sp) -.L8003F5EC: -/* 0401EC 8003F5EC 24010002 */ li $at, 2 -/* 0401F0 8003F5F0 81CF01D6 */ lb $t7, 0x1d6($t6) -/* 0401F4 8003F5F4 00000000 */ nop -/* 0401F8 8003F5F8 11E10019 */ beq $t7, $at, .L8003F660 -/* 0401FC 8003F5FC 8FAD0040 */ lw $t5, 0x40($sp) -/* 040200 8003F600 91180005 */ lbu $t8, 5($t0) -/* 040204 8003F604 85020006 */ lh $v0, 6($t0) -/* 040208 8003F608 13000009 */ beqz $t8, .L8003F630 -/* 04020C 8003F60C 00000000 */ nop -/* 040210 8003F610 44822000 */ mtc1 $v0, $f4 -/* 040214 8003F614 3C01800E */ lui $at, %hi(D_800E620C) # $at, 0x800e -/* 040218 8003F618 468022A0 */ cvt.s.w $f10, $f4 -/* 04021C 8003F61C C428620C */ lwc1 $f8, %lo(D_800E620C)($at) -/* 040220 8003F620 8E190058 */ lw $t9, 0x58($s0) -/* 040224 8003F624 46085482 */ mul.s $f18, $f10, $f8 -/* 040228 8003F628 10000008 */ b .L8003F64C -/* 04022C 8003F62C E7320000 */ swc1 $f18, ($t9) -.L8003F630: -/* 040230 8003F630 44828000 */ mtc1 $v0, $f16 -/* 040234 8003F634 3C01800E */ lui $at, %hi(D_800E6210) # $at, 0x800e -/* 040238 8003F638 468081A0 */ cvt.s.w $f6, $f16 -/* 04023C 8003F63C C4246210 */ lwc1 $f4, %lo(D_800E6210)($at) -/* 040240 8003F640 8E0A0050 */ lw $t2, 0x50($s0) -/* 040244 8003F644 46043282 */ mul.s $f10, $f6, $f4 -/* 040248 8003F648 E54A0000 */ swc1 $f10, ($t2) -.L8003F64C: -/* 04024C 8003F64C 860B0006 */ lh $t3, 6($s0) -/* 040250 8003F650 00000000 */ nop -/* 040254 8003F654 356C1000 */ ori $t4, $t3, 0x1000 -/* 040258 8003F658 A60C0006 */ sh $t4, 6($s0) -/* 04025C 8003F65C 8FAD0040 */ lw $t5, 0x40($sp) -.L8003F660: -/* 040260 8003F660 2401000A */ li $at, 10 -/* 040264 8003F664 91AE0018 */ lbu $t6, 0x18($t5) -/* 040268 8003F668 00000000 */ nop -/* 04026C 8003F66C 15C10076 */ bne $t6, $at, .L8003F848 -/* 040270 8003F670 00000000 */ nop -/* 040274 8003F674 8DAF0000 */ lw $t7, ($t5) -/* 040278 8003F678 00000000 */ nop -/* 04027C 8003F67C 11E00013 */ beqz $t7, .L8003F6CC -/* 040280 8003F680 00000000 */ nop -/* 040284 8003F684 44800000 */ mtc1 $zero, $f0 -/* 040288 8003F688 00000000 */ nop -/* 04028C 8003F68C E600000C */ swc1 $f0, 0xc($s0) -/* 040290 8003F690 E6000010 */ swc1 $f0, 0x10($s0) -/* 040294 8003F694 E6000014 */ swc1 $f0, 0x14($s0) -/* 040298 8003F698 0C004558 */ jal func_80011560 -/* 04029C 8003F69C AFA80038 */ sw $t0, 0x38($sp) -/* 0402A0 8003F6A0 8FB80040 */ lw $t8, 0x40($sp) -/* 0402A4 8003F6A4 02002025 */ move $a0, $s0 -/* 0402A8 8003F6A8 8F020000 */ lw $v0, ($t8) -/* 0402AC 8003F6AC 00000000 */ nop -/* 0402B0 8003F6B0 8C45000C */ lw $a1, 0xc($v0) -/* 0402B4 8003F6B4 8C460010 */ lw $a2, 0x10($v0) -/* 0402B8 8003F6B8 8C470014 */ lw $a3, 0x14($v0) -/* 0402BC 8003F6BC 0C00455C */ jal func_80011570 -/* 0402C0 8003F6C0 00000000 */ nop -/* 0402C4 8003F6C4 8FA80038 */ lw $t0, 0x38($sp) -/* 0402C8 8003F6C8 00000000 */ nop -.L8003F6CC: -/* 0402CC 8003F6CC 91020004 */ lbu $v0, 4($t0) -/* 0402D0 8003F6D0 24010001 */ li $at, 1 -/* 0402D4 8003F6D4 10410003 */ beq $v0, $at, .L8003F6E4 -/* 0402D8 8003F6D8 24010002 */ li $at, 2 -/* 0402DC 8003F6DC 1441000C */ bne $v0, $at, .L8003F710 -/* 0402E0 8003F6E0 00000000 */ nop -.L8003F6E4: -/* 0402E4 8003F6E4 85190006 */ lh $t9, 6($t0) -/* 0402E8 8003F6E8 8FAA0074 */ lw $t2, 0x74($sp) -/* 0402EC 8003F6EC 240E0014 */ li $t6, 20 -/* 0402F0 8003F6F0 032A5821 */ addu $t3, $t9, $t2 -/* 0402F4 8003F6F4 A50B0006 */ sh $t3, 6($t0) -/* 0402F8 8003F6F8 850C0006 */ lh $t4, 6($t0) -/* 0402FC 8003F6FC 00000000 */ nop -/* 040300 8003F700 29810015 */ slti $at, $t4, 0x15 -/* 040304 8003F704 14200002 */ bnez $at, .L8003F710 -/* 040308 8003F708 00000000 */ nop -/* 04030C 8003F70C A50E0006 */ sh $t6, 6($t0) -.L8003F710: -/* 040310 8003F710 910D0004 */ lbu $t5, 4($t0) -/* 040314 8003F714 24010002 */ li $at, 2 -/* 040318 8003F718 15A10020 */ bne $t5, $at, .L8003F79C -/* 04031C 8003F71C 00000000 */ nop -/* 040320 8003F720 910F0005 */ lbu $t7, 5($t0) -/* 040324 8003F724 8FB80074 */ lw $t8, 0x74($sp) -/* 040328 8003F728 240B0003 */ li $t3, 3 -/* 04032C 8003F72C 01F8C821 */ addu $t9, $t7, $t8 -/* 040330 8003F730 332A00FF */ andi $t2, $t9, 0xff -/* 040334 8003F734 29410079 */ slti $at, $t2, 0x79 -/* 040338 8003F738 14200018 */ bnez $at, .L8003F79C -/* 04033C 8003F73C A1190005 */ sb $t9, 5($t0) -/* 040340 8003F740 A10B0004 */ sb $t3, 4($t0) -/* 040344 8003F744 8FAC0040 */ lw $t4, 0x40($sp) -/* 040348 8003F748 00000000 */ nop -/* 04034C 8003F74C 8D84001C */ lw $a0, 0x1c($t4) -/* 040350 8003F750 00000000 */ nop -/* 040354 8003F754 10800006 */ beqz $a0, .L8003F770 -/* 040358 8003F758 00000000 */ nop -/* 04035C 8003F75C 0C0025BE */ jal func_800096F8 -/* 040360 8003F760 AFA80038 */ sw $t0, 0x38($sp) -/* 040364 8003F764 8FAE0040 */ lw $t6, 0x40($sp) -/* 040368 8003F768 8FA80038 */ lw $t0, 0x38($sp) -/* 04036C 8003F76C ADC0001C */ sw $zero, 0x1c($t6) -.L8003F770: -/* 040370 8003F770 8E05000C */ lw $a1, 0xc($s0) -/* 040374 8003F774 8E060010 */ lw $a2, 0x10($s0) -/* 040378 8003F778 8E070014 */ lw $a3, 0x14($s0) -/* 04037C 8003F77C 240D0004 */ li $t5, 4 -/* 040380 8003F780 AFAD0010 */ sw $t5, 0x10($sp) -/* 040384 8003F784 AFA80038 */ sw $t0, 0x38($sp) -/* 040388 8003F788 AFA00014 */ sw $zero, 0x14($sp) -/* 04038C 8003F78C 0C002556 */ jal func_80009558 -/* 040390 8003F790 24040155 */ li $a0, 341 -/* 040394 8003F794 8FA80038 */ lw $t0, 0x38($sp) -/* 040398 8003F798 00000000 */ nop -.L8003F79C: -/* 04039C 8003F79C 910F0004 */ lbu $t7, 4($t0) -/* 0403A0 8003F7A0 24010003 */ li $at, 3 -/* 0403A4 8003F7A4 15E10018 */ bne $t7, $at, .L8003F808 -/* 0403A8 8003F7A8 24180001 */ li $t8, 1 -/* 0403AC 8003F7AC AE180074 */ sw $t8, 0x74($s0) -/* 0403B0 8003F7B0 8FA50074 */ lw $a1, 0x74($sp) -/* 0403B4 8003F7B4 AFA80038 */ sw $t0, 0x38($sp) -/* 0403B8 8003F7B8 0C02BF0F */ jal func_800AFC3C -/* 0403BC 8003F7BC 02002025 */ move $a0, $s0 -/* 0403C0 8003F7C0 86190006 */ lh $t9, 6($s0) -/* 0403C4 8003F7C4 8FA80038 */ lw $t0, 0x38($sp) -/* 0403C8 8003F7C8 372A4000 */ ori $t2, $t9, 0x4000 -/* 0403CC 8003F7CC A60A0006 */ sh $t2, 6($s0) -/* 0403D0 8003F7D0 8FAC0074 */ lw $t4, 0x74($sp) -/* 0403D4 8003F7D4 850B0006 */ lh $t3, 6($t0) -/* 0403D8 8003F7D8 240F0001 */ li $t7, 1 -/* 0403DC 8003F7DC 016C7023 */ subu $t6, $t3, $t4 -/* 0403E0 8003F7E0 A50E0006 */ sh $t6, 6($t0) -/* 0403E4 8003F7E4 850D0006 */ lh $t5, 6($t0) -/* 0403E8 8003F7E8 02002025 */ move $a0, $s0 -/* 0403EC 8003F7EC 1DA00006 */ bgtz $t5, .L8003F808 -/* 0403F0 8003F7F0 00000000 */ nop -/* 0403F4 8003F7F4 A50F0006 */ sh $t7, 6($t0) -/* 0403F8 8003F7F8 0C003FEE */ jal func_8000FFB8 -/* 0403FC 8003F7FC AFA80038 */ sw $t0, 0x38($sp) -/* 040400 8003F800 8FA80038 */ lw $t0, 0x38($sp) -/* 040404 8003F804 00000000 */ nop -.L8003F808: -/* 040408 8003F808 91180004 */ lbu $t8, 4($t0) -/* 04040C 8003F80C 00000000 */ nop -/* 040410 8003F810 13000009 */ beqz $t8, .L8003F838 -/* 040414 8003F814 8FAB0074 */ lw $t3, 0x74($sp) -/* 040418 8003F818 85190006 */ lh $t9, 6($t0) -/* 04041C 8003F81C 3C01800E */ lui $at, %hi(D_800E6214) # $at, 0x800e -/* 040420 8003F820 44994000 */ mtc1 $t9, $f8 -/* 040424 8003F824 C4306214 */ lwc1 $f16, %lo(D_800E6214)($at) -/* 040428 8003F828 468044A0 */ cvt.s.w $f18, $f8 -/* 04042C 8003F82C 46109182 */ mul.s $f6, $f18, $f16 -/* 040430 8003F830 E6060008 */ swc1 $f6, 8($s0) -/* 040434 8003F834 8FAB0074 */ lw $t3, 0x74($sp) -.L8003F838: -/* 040438 8003F838 860A0018 */ lh $t2, 0x18($s0) -/* 04043C 8003F83C 000B6100 */ sll $t4, $t3, 4 -/* 040440 8003F840 014C7021 */ addu $t6, $t2, $t4 -/* 040444 8003F844 A60E0018 */ sh $t6, 0x18($s0) -.L8003F848: -/* 040448 8003F848 910D0004 */ lbu $t5, 4($t0) -/* 04044C 8003F84C 8FAF0064 */ lw $t7, 0x64($sp) -/* 040450 8003F850 29A10002 */ slti $at, $t5, 2 -/* 040454 8003F854 102000F8 */ beqz $at, .L8003FC38 -/* 040458 8003F858 8FBF002C */ lw $ra, 0x2c($sp) -/* 04045C 8003F85C 81F801D6 */ lb $t8, 0x1d6($t7) -/* 040460 8003F860 24010002 */ li $at, 2 -/* 040464 8003F864 13010015 */ beq $t8, $at, .L8003F8BC -/* 040468 8003F868 2405003C */ li $a1, 60 -/* 04046C 8003F86C 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 040470 8003F870 44816000 */ mtc1 $at, $f12 -/* 040474 8003F874 C6040020 */ lwc1 $f4, 0x20($s0) -/* 040478 8003F878 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 04047C 8003F87C 44814800 */ mtc1 $at, $f9 -/* 040480 8003F880 44804000 */ mtc1 $zero, $f8 -/* 040484 8003F884 C600001C */ lwc1 $f0, 0x1c($s0) -/* 040488 8003F888 C6020024 */ lwc1 $f2, 0x24($s0) -/* 04048C 8003F88C 460022A1 */ cvt.d.s $f10, $f4 -/* 040490 8003F890 46285481 */ sub.d $f18, $f10, $f8 -/* 040494 8003F894 24050022 */ li $a1, 34 -/* 040498 8003F898 460C0183 */ div.s $f6, $f0, $f12 -/* 04049C 8003F89C 46209420 */ cvt.s.d $f16, $f18 -/* 0404A0 8003F8A0 E6100020 */ swc1 $f16, 0x20($s0) -/* 0404A4 8003F8A4 460C1283 */ div.s $f10, $f2, $f12 -/* 0404A8 8003F8A8 46060101 */ sub.s $f4, $f0, $f6 -/* 0404AC 8003F8AC E604001C */ swc1 $f4, 0x1c($s0) -/* 0404B0 8003F8B0 460A1201 */ sub.s $f8, $f2, $f10 -/* 0404B4 8003F8B4 10000009 */ b .L8003F8DC -/* 0404B8 8003F8B8 E6080024 */ swc1 $f8, 0x24($s0) -.L8003F8BC: -/* 0404BC 8003F8BC 44809000 */ mtc1 $zero, $f18 -/* 0404C0 8003F8C0 86190018 */ lh $t9, 0x18($s0) -/* 0404C4 8003F8C4 E6120020 */ swc1 $f18, 0x20($s0) -/* 0404C8 8003F8C8 8FAB0074 */ lw $t3, 0x74($sp) -/* 0404CC 8003F8CC 00000000 */ nop -/* 0404D0 8003F8D0 000B50C0 */ sll $t2, $t3, 3 -/* 0404D4 8003F8D4 032A6021 */ addu $t4, $t9, $t2 -/* 0404D8 8003F8D8 A60C0018 */ sh $t4, 0x18($s0) -.L8003F8DC: -/* 0404DC 8003F8DC 8FAE0040 */ lw $t6, 0x40($sp) -/* 0404E0 8003F8E0 2401000A */ li $at, 10 -/* 0404E4 8003F8E4 91C20018 */ lbu $v0, 0x18($t6) -/* 0404E8 8003F8E8 8FAF0040 */ lw $t7, 0x40($sp) -/* 0404EC 8003F8EC 10410004 */ beq $v0, $at, .L8003F900 -/* 0404F0 8003F8F0 00056843 */ sra $t5, $a1, 1 -/* 0404F4 8003F8F4 24010003 */ li $at, 3 -/* 0404F8 8003F8F8 14410002 */ bne $v0, $at, .L8003F904 -/* 0404FC 8003F8FC 00000000 */ nop -.L8003F900: -/* 040500 8003F900 00AD2821 */ addu $a1, $a1, $t5 -.L8003F904: -/* 040504 8003F904 8E02004C */ lw $v0, 0x4c($s0) -/* 040508 8003F908 00000000 */ nop -/* 04050C 8003F90C 8C440000 */ lw $a0, ($v0) -/* 040510 8003F910 00000000 */ nop -/* 040514 8003F914 10800094 */ beqz $a0, .L8003FB68 -/* 040518 8003F918 00000000 */ nop -/* 04051C 8003F91C 8DF80004 */ lw $t8, 4($t7) -/* 040520 8003F920 00000000 */ nop -/* 040524 8003F924 1498000D */ bne $a0, $t8, .L8003F95C -/* 040528 8003F928 240401C2 */ li $a0, 450 -/* 04052C 8003F92C AFA50048 */ sw $a1, 0x48($sp) -/* 040530 8003F930 0C00322D */ jal func_8000C8B4 -/* 040534 8003F934 AFA80038 */ sw $t0, 0x38($sp) -/* 040538 8003F938 8FA80038 */ lw $t0, 0x38($sp) -/* 04053C 8003F93C 8FA50048 */ lw $a1, 0x48($sp) -/* 040540 8003F940 8D0B0000 */ lw $t3, ($t0) -/* 040544 8003F944 00000000 */ nop -/* 040548 8003F948 0162082A */ slt $at, $t3, $v0 -/* 04054C 8003F94C 10200086 */ beqz $at, .L8003FB68 -/* 040550 8003F950 00000000 */ nop -/* 040554 8003F954 8E02004C */ lw $v0, 0x4c($s0) -/* 040558 8003F958 00000000 */ nop -.L8003F95C: -/* 04055C 8003F95C 90590013 */ lbu $t9, 0x13($v0) -/* 040560 8003F960 00000000 */ nop -/* 040564 8003F964 0325082A */ slt $at, $t9, $a1 -/* 040568 8003F968 1020007F */ beqz $at, .L8003FB68 -/* 04056C 8003F96C 00000000 */ nop -/* 040570 8003F970 8C430000 */ lw $v1, ($v0) -/* 040574 8003F974 24010001 */ li $at, 1 -/* 040578 8003F978 8C6A0040 */ lw $t2, 0x40($v1) -/* 04057C 8003F97C 00000000 */ nop -/* 040580 8003F980 814C0054 */ lb $t4, 0x54($t2) -/* 040584 8003F984 00000000 */ nop -/* 040588 8003F988 15810077 */ bne $t4, $at, .L8003FB68 -/* 04058C 8003F98C 00000000 */ nop -/* 040590 8003F990 8C690064 */ lw $t1, 0x64($v1) -/* 040594 8003F994 240E0001 */ li $t6, 1 -/* 040598 8003F998 A12E0187 */ sb $t6, 0x187($t1) -/* 04059C 8003F99C 8FAD0040 */ lw $t5, 0x40($sp) -/* 0405A0 8003F9A0 24010002 */ li $at, 2 -/* 0405A4 8003F9A4 91A20018 */ lbu $v0, 0x18($t5) -/* 0405A8 8003F9A8 2407002C */ li $a3, 44 -/* 0405AC 8003F9AC 14410011 */ bne $v0, $at, .L8003F9F4 -/* 0405B0 8003F9B0 240F0011 */ li $t7, 17 -/* 0405B4 8003F9B4 C60C000C */ lwc1 $f12, 0xc($s0) -/* 0405B8 8003F9B8 C60E0010 */ lwc1 $f14, 0x10($s0) -/* 0405BC 8003F9BC 8E060014 */ lw $a2, 0x14($s0) -/* 0405C0 8003F9C0 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0405C4 8003F9C4 44818000 */ mtc1 $at, $f16 -/* 0405C8 8003F9C8 24180001 */ li $t8, 1 -/* 0405CC 8003F9CC AFB80018 */ sw $t8, 0x18($sp) -/* 0405D0 8003F9D0 AFA90068 */ sw $t1, 0x68($sp) -/* 0405D4 8003F9D4 AFA80038 */ sw $t0, 0x38($sp) -/* 0405D8 8003F9D8 AFAF0010 */ sw $t7, 0x10($sp) -/* 0405DC 8003F9DC 0C00FF11 */ jal func_8003FC44 -/* 0405E0 8003F9E0 E7B00014 */ swc1 $f16, 0x14($sp) -/* 0405E4 8003F9E4 8FA80038 */ lw $t0, 0x38($sp) -/* 0405E8 8003F9E8 8FA90068 */ lw $t1, 0x68($sp) -/* 0405EC 8003F9EC 10000035 */ b .L8003FAC4 -/* 0405F0 8003F9F0 812C01D8 */ lb $t4, 0x1d8($t1) -.L8003F9F4: -/* 0405F4 8003F9F4 2401000A */ li $at, 10 -/* 0405F8 8003F9F8 1441002C */ bne $v0, $at, .L8003FAAC -/* 0405FC 8003F9FC 24010003 */ li $at, 3 -/* 040600 8003FA00 852B018E */ lh $t3, 0x18e($t1) -/* 040604 8003FA04 8FAE0040 */ lw $t6, 0x40($sp) -/* 040608 8003FA08 19600014 */ blez $t3, .L8003FA5C -/* 04060C 8003FA0C 24040152 */ li $a0, 338 -/* 040610 8003FA10 81390189 */ lb $t9, 0x189($t1) -/* 040614 8003FA14 240A0003 */ li $t2, 3 -/* 040618 8003FA18 2B210003 */ slti $at, $t9, 3 -/* 04061C 8003FA1C 1420000F */ bnez $at, .L8003FA5C -/* 040620 8003FA20 240C0004 */ li $t4, 4 -/* 040624 8003FA24 A10A0004 */ sb $t2, 4($t0) -/* 040628 8003FA28 8E070014 */ lw $a3, 0x14($s0) -/* 04062C 8003FA2C 8E060010 */ lw $a2, 0x10($s0) -/* 040630 8003FA30 8E05000C */ lw $a1, 0xc($s0) -/* 040634 8003FA34 AFA90068 */ sw $t1, 0x68($sp) -/* 040638 8003FA38 AFA80038 */ sw $t0, 0x38($sp) -/* 04063C 8003FA3C AFA00014 */ sw $zero, 0x14($sp) -/* 040640 8003FA40 AFAC0010 */ sw $t4, 0x10($sp) -/* 040644 8003FA44 0C002556 */ jal func_80009558 -/* 040648 8003FA48 24040155 */ li $a0, 341 -/* 04064C 8003FA4C 8FA80038 */ lw $t0, 0x38($sp) -/* 040650 8003FA50 8FA90068 */ lw $t1, 0x68($sp) -/* 040654 8003FA54 1000001B */ b .L8003FAC4 -/* 040658 8003FA58 812C01D8 */ lb $t4, 0x1d8($t1) -.L8003FA5C: -/* 04065C 8003FA5C ADC30000 */ sw $v1, ($t6) -/* 040660 8003FA60 8C670014 */ lw $a3, 0x14($v1) -/* 040664 8003FA64 8C660010 */ lw $a2, 0x10($v1) -/* 040668 8003FA68 8C65000C */ lw $a1, 0xc($v1) -/* 04066C 8003FA6C 240D0004 */ li $t5, 4 -/* 040670 8003FA70 25CF001C */ addiu $t7, $t6, 0x1c -/* 040674 8003FA74 AFAF0014 */ sw $t7, 0x14($sp) -/* 040678 8003FA78 AFAD0010 */ sw $t5, 0x10($sp) -/* 04067C 8003FA7C AFA90068 */ sw $t1, 0x68($sp) -/* 040680 8003FA80 0C002556 */ jal func_80009558 -/* 040684 8003FA84 AFA80038 */ sw $t0, 0x38($sp) -/* 040688 8003FA88 8FA80038 */ lw $t0, 0x38($sp) -/* 04068C 8003FA8C 8FA90068 */ lw $t1, 0x68($sp) -/* 040690 8003FA90 24180006 */ li $t8, 6 -/* 040694 8003FA94 240B0002 */ li $t3, 2 -/* 040698 8003FA98 A1380187 */ sb $t8, 0x187($t1) -/* 04069C 8003FA9C A10B0004 */ sb $t3, 4($t0) -/* 0406A0 8003FAA0 10000007 */ b .L8003FAC0 -/* 0406A4 8003FAA4 A1000005 */ sb $zero, 5($t0) -/* 0406A8 8003FAA8 24010003 */ li $at, 3 -.L8003FAAC: -/* 0406AC 8003FAAC 14410004 */ bne $v0, $at, .L8003FAC0 -/* 0406B0 8003FAB0 24190002 */ li $t9, 2 -/* 0406B4 8003FAB4 A1390187 */ sb $t9, 0x187($t1) -/* 0406B8 8003FAB8 240A0002 */ li $t2, 2 -/* 0406BC 8003FABC A10A0004 */ sb $t2, 4($t0) -.L8003FAC0: -/* 0406C0 8003FAC0 812C01D8 */ lb $t4, 0x1d8($t1) -.L8003FAC4: -/* 0406C4 8003FAC4 2405000D */ li $a1, 13 -/* 0406C8 8003FAC8 15800009 */ bnez $t4, .L8003FAF0 -/* 0406CC 8003FACC 8FAD0040 */ lw $t5, 0x40($sp) -/* 0406D0 8003FAD0 85240000 */ lh $a0, ($t1) -/* 0406D4 8003FAD4 AFA90068 */ sw $t1, 0x68($sp) -/* 0406D8 8003FAD8 0C01C8D2 */ jal func_80072348 -/* 0406DC 8003FADC AFA80038 */ sw $t0, 0x38($sp) -/* 0406E0 8003FAE0 8FA80038 */ lw $t0, 0x38($sp) -/* 0406E4 8003FAE4 8FA90068 */ lw $t1, 0x68($sp) -/* 0406E8 8003FAE8 00000000 */ nop -/* 0406EC 8003FAEC 8FAD0040 */ lw $t5, 0x40($sp) -.L8003FAF0: -/* 0406F0 8003FAF0 2402FFFF */ li $v0, -1 -/* 0406F4 8003FAF4 8DAE0004 */ lw $t6, 4($t5) -/* 0406F8 8003FAF8 00000000 */ nop -/* 0406FC 8003FAFC 8DCF0064 */ lw $t7, 0x64($t6) -/* 040700 8003FB00 00000000 */ nop -/* 040704 8003FB04 AFAF0064 */ sw $t7, 0x64($sp) -/* 040708 8003FB08 85380000 */ lh $t8, ($t1) -/* 04070C 8003FB0C 8FB90064 */ lw $t9, 0x64($sp) -/* 040710 8003FB10 14580005 */ bne $v0, $t8, .L8003FB28 -/* 040714 8003FB14 00000000 */ nop -/* 040718 8003FB18 85EB0000 */ lh $t3, ($t7) -/* 04071C 8003FB1C 00000000 */ nop -/* 040720 8003FB20 104B0006 */ beq $v0, $t3, .L8003FB3C -/* 040724 8003FB24 8FAD0040 */ lw $t5, 0x40($sp) -.L8003FB28: -/* 040728 8003FB28 932A01EF */ lbu $t2, 0x1ef($t9) -/* 04072C 8003FB2C 00000000 */ nop -/* 040730 8003FB30 354C0002 */ ori $t4, $t2, 2 -/* 040734 8003FB34 A32C01EF */ sb $t4, 0x1ef($t9) -/* 040738 8003FB38 8FAD0040 */ lw $t5, 0x40($sp) -.L8003FB3C: -/* 04073C 8003FB3C 24010003 */ li $at, 3 -/* 040740 8003FB40 91A20018 */ lbu $v0, 0x18($t5) -/* 040744 8003FB44 00000000 */ nop -/* 040748 8003FB48 10410007 */ beq $v0, $at, .L8003FB68 -/* 04074C 8003FB4C 2401000A */ li $at, 10 -/* 040750 8003FB50 10410005 */ beq $v0, $at, .L8003FB68 -/* 040754 8003FB54 00000000 */ nop -/* 040758 8003FB58 0C003FEE */ jal func_8000FFB8 -/* 04075C 8003FB5C 02002025 */ move $a0, $s0 -/* 040760 8003FB60 10000035 */ b .L8003FC38 -/* 040764 8003FB64 8FBF002C */ lw $ra, 0x2c($sp) -.L8003FB68: -/* 040768 8003FB68 8D0E0000 */ lw $t6, ($t0) -/* 04076C 8003FB6C 8FB80074 */ lw $t8, 0x74($sp) -/* 040770 8003FB70 910B0004 */ lbu $t3, 4($t0) -/* 040774 8003FB74 01D87823 */ subu $t7, $t6, $t8 -/* 040778 8003FB78 29610002 */ slti $at, $t3, 2 -/* 04077C 8003FB7C 1020002D */ beqz $at, .L8003FC34 -/* 040780 8003FB80 AD0F0000 */ sw $t7, ($t0) -/* 040784 8003FB84 2404FAD8 */ li $a0, -1320 -/* 040788 8003FB88 0C00322D */ jal func_8000C8B4 -/* 04078C 8003FB8C AFA80038 */ sw $t0, 0x38($sp) -/* 040790 8003FB90 8FA80038 */ lw $t0, 0x38($sp) -/* 040794 8003FB94 8FAC0040 */ lw $t4, 0x40($sp) -/* 040798 8003FB98 8D0A0000 */ lw $t2, ($t0) -/* 04079C 8003FB9C 00000000 */ nop -/* 0407A0 8003FBA0 0142082A */ slt $at, $t2, $v0 -/* 0407A4 8003FBA4 10200024 */ beqz $at, .L8003FC38 -/* 0407A8 8003FBA8 8FBF002C */ lw $ra, 0x2c($sp) -/* 0407AC 8003FBAC 91820018 */ lbu $v0, 0x18($t4) -/* 0407B0 8003FBB0 24010003 */ li $at, 3 -/* 0407B4 8003FBB4 14410003 */ bne $v0, $at, .L8003FBC4 -/* 0407B8 8003FBB8 24190002 */ li $t9, 2 -/* 0407BC 8003FBBC 1000001D */ b .L8003FC34 -/* 0407C0 8003FBC0 A1190004 */ sb $t9, 4($t0) -.L8003FBC4: -/* 0407C4 8003FBC4 2401000A */ li $at, 10 -/* 0407C8 8003FBC8 1441000D */ bne $v0, $at, .L8003FC00 -/* 0407CC 8003FBCC 2407002C */ li $a3, 44 -/* 0407D0 8003FBD0 240D0003 */ li $t5, 3 -/* 0407D4 8003FBD4 A10D0004 */ sb $t5, 4($t0) -/* 0407D8 8003FBD8 8E070014 */ lw $a3, 0x14($s0) -/* 0407DC 8003FBDC 8E060010 */ lw $a2, 0x10($s0) -/* 0407E0 8003FBE0 8E05000C */ lw $a1, 0xc($s0) -/* 0407E4 8003FBE4 240E0004 */ li $t6, 4 -/* 0407E8 8003FBE8 AFAE0010 */ sw $t6, 0x10($sp) -/* 0407EC 8003FBEC AFA00014 */ sw $zero, 0x14($sp) -/* 0407F0 8003FBF0 0C002556 */ jal func_80009558 -/* 0407F4 8003FBF4 24040155 */ li $a0, 341 -/* 0407F8 8003FBF8 1000000F */ b .L8003FC38 -/* 0407FC 8003FBFC 8FBF002C */ lw $ra, 0x2c($sp) -.L8003FC00: -/* 040800 8003FC00 C60C000C */ lwc1 $f12, 0xc($s0) -/* 040804 8003FC04 C60E0010 */ lwc1 $f14, 0x10($s0) -/* 040808 8003FC08 8E060014 */ lw $a2, 0x14($s0) -/* 04080C 8003FC0C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 040810 8003FC10 44813000 */ mtc1 $at, $f6 -/* 040814 8003FC14 24180011 */ li $t8, 17 -/* 040818 8003FC18 240F0001 */ li $t7, 1 -/* 04081C 8003FC1C AFAF0018 */ sw $t7, 0x18($sp) -/* 040820 8003FC20 AFB80010 */ sw $t8, 0x10($sp) -/* 040824 8003FC24 0C00FF11 */ jal func_8003FC44 -/* 040828 8003FC28 E7A60014 */ swc1 $f6, 0x14($sp) -/* 04082C 8003FC2C 0C003FEE */ jal func_8000FFB8 -/* 040830 8003FC30 02002025 */ move $a0, $s0 -.L8003FC34: -/* 040834 8003FC34 8FBF002C */ lw $ra, 0x2c($sp) -.L8003FC38: -/* 040838 8003FC38 8FB00028 */ lw $s0, 0x28($sp) -/* 04083C 8003FC3C 03E00008 */ jr $ra -/* 040840 8003FC40 27BD0070 */ addiu $sp, $sp, 0x70 - -glabel func_8003FC44 -/* 040844 8003FC44 444EF800 */ cfc1 $t6, $31 -/* 040848 8003FC48 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 04084C 8003FC4C 35C10003 */ ori $at, $t6, 3 -/* 040850 8003FC50 E7AC0030 */ swc1 $f12, 0x30($sp) -/* 040854 8003FC54 38210002 */ xori $at, $at, 2 -/* 040858 8003FC58 44C1F800 */ ctc1 $at, $31 -/* 04085C 8003FC5C C7A40030 */ lwc1 $f4, 0x30($sp) -/* 040860 8003FC60 E7AE0034 */ swc1 $f14, 0x34($sp) -/* 040864 8003FC64 460021A4 */ cvt.w.s $f6, $f4 -/* 040868 8003FC68 C7A80034 */ lwc1 $f8, 0x34($sp) -/* 04086C 8003FC6C 44CEF800 */ ctc1 $t6, $31 -/* 040870 8003FC70 AFA60038 */ sw $a2, 0x38($sp) -/* 040874 8003FC74 C7B00038 */ lwc1 $f16, 0x38($sp) -/* 040878 8003FC78 4458F800 */ cfc1 $t8, $31 -/* 04087C 8003FC7C 440F3000 */ mfc1 $t7, $f6 -/* 040880 8003FC80 37010003 */ ori $at, $t8, 3 -/* 040884 8003FC84 38210002 */ xori $at, $at, 2 -/* 040888 8003FC88 44C1F800 */ ctc1 $at, $31 -/* 04088C 8003FC8C 8FAE0048 */ lw $t6, 0x48($sp) -/* 040890 8003FC90 460042A4 */ cvt.w.s $f10, $f8 -/* 040894 8003FC94 AFBF001C */ sw $ra, 0x1c($sp) -/* 040898 8003FC98 44D8F800 */ ctc1 $t8, $31 -/* 04089C 8003FC9C 44095000 */ mfc1 $t1, $f10 -/* 0408A0 8003FCA0 240D000A */ li $t5, 10 -/* 0408A4 8003FCA4 444BF800 */ cfc1 $t3, $31 -/* 0408A8 8003FCA8 252A0024 */ addiu $t2, $t1, 0x24 -/* 0408AC 8003FCAC 35610003 */ ori $at, $t3, 3 -/* 0408B0 8003FCB0 38210002 */ xori $at, $at, 2 -/* 0408B4 8003FCB4 44C1F800 */ ctc1 $at, $31 -/* 0408B8 8003FCB8 A7AA0028 */ sh $t2, 0x28($sp) -/* 0408BC 8003FCBC 460084A4 */ cvt.w.s $f18, $f16 -/* 0408C0 8003FCC0 A3AD0025 */ sb $t5, 0x25($sp) -/* 0408C4 8003FCC4 440C9000 */ mfc1 $t4, $f18 -/* 0408C8 8003FCC8 44CBF800 */ ctc1 $t3, $31 -/* 0408CC 8003FCCC A3A70024 */ sb $a3, 0x24($sp) -/* 0408D0 8003FCD0 27A40024 */ addiu $a0, $sp, 0x24 -/* 0408D4 8003FCD4 24050001 */ li $a1, 1 -/* 0408D8 8003FCD8 A7AF0026 */ sh $t7, 0x26($sp) -/* 0408DC 8003FCDC A3AE002C */ sb $t6, 0x2c($sp) -/* 0408E0 8003FCE0 0C003A95 */ jal func_8000EA54 -/* 0408E4 8003FCE4 A7AC002A */ sh $t4, 0x2a($sp) -/* 0408E8 8003FCE8 10400011 */ beqz $v0, .L8003FD30 -/* 0408EC 8003FCEC 3C01400C */ li $at, 0x400C0000 # 2.187500 -/* 0408F0 8003FCF0 44800000 */ mtc1 $zero, $f0 -/* 0408F4 8003FCF4 C4440008 */ lwc1 $f4, 8($v0) -/* 0408F8 8003FCF8 44814800 */ mtc1 $at, $f9 -/* 0408FC 8003FCFC 44804000 */ mtc1 $zero, $f8 -/* 040900 8003FD00 460021A1 */ cvt.d.s $f6, $f4 -/* 040904 8003FD04 46283282 */ mul.d $f10, $f6, $f8 -/* 040908 8003FD08 AC40003C */ sw $zero, 0x3c($v0) -/* 04090C 8003FD0C E440001C */ swc1 $f0, 0x1c($v0) -/* 040910 8003FD10 E4400020 */ swc1 $f0, 0x20($v0) -/* 040914 8003FD14 E4400024 */ swc1 $f0, 0x24($v0) -/* 040918 8003FD18 C7B00044 */ lwc1 $f16, 0x44($sp) -/* 04091C 8003FD1C 00000000 */ nop -/* 040920 8003FD20 460084A1 */ cvt.d.s $f18, $f16 -/* 040924 8003FD24 46325102 */ mul.d $f4, $f10, $f18 -/* 040928 8003FD28 462021A0 */ cvt.s.d $f6, $f4 -/* 04092C 8003FD2C E4460008 */ swc1 $f6, 8($v0) -.L8003FD30: -/* 040930 8003FD30 8FA20040 */ lw $v0, 0x40($sp) -/* 040934 8003FD34 8FA50030 */ lw $a1, 0x30($sp) -/* 040938 8003FD38 10400007 */ beqz $v0, .L8003FD58 -/* 04093C 8003FD3C 3044FFFF */ andi $a0, $v0, 0xffff -/* 040940 8003FD40 8FA60034 */ lw $a2, 0x34($sp) -/* 040944 8003FD44 8FA70038 */ lw $a3, 0x38($sp) -/* 040948 8003FD48 240F0004 */ li $t7, 4 -/* 04094C 8003FD4C AFAF0010 */ sw $t7, 0x10($sp) -/* 040950 8003FD50 0C002556 */ jal func_80009558 -/* 040954 8003FD54 AFA00014 */ sw $zero, 0x14($sp) -.L8003FD58: -/* 040958 8003FD58 8FBF001C */ lw $ra, 0x1c($sp) -/* 04095C 8003FD5C 27BD0030 */ addiu $sp, $sp, 0x30 -/* 040960 8003FD60 03E00008 */ jr $ra -/* 040964 8003FD64 00000000 */ nop - -glabel func_8003FD68 -/* 040968 8003FD68 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 04096C 8003FD6C AFBF003C */ sw $ra, 0x3c($sp) -/* 040970 8003FD70 AFB00038 */ sw $s0, 0x38($sp) -/* 040974 8003FD74 AFA40048 */ sw $a0, 0x48($sp) -/* 040978 8003FD78 8C830064 */ lw $v1, 0x64($a0) -/* 04097C 8003FD7C 94AF0008 */ lhu $t7, 8($a1) -/* 040980 8003FD80 00A08025 */ move $s0, $a1 -/* 040984 8003FD84 A46F0000 */ sh $t7, ($v1) -/* 040988 8003FD88 94B8000A */ lhu $t8, 0xa($a1) -/* 04098C 8003FD8C 31E4FFFF */ andi $a0, $t7, 0xffff -/* 040990 8003FD90 A4780002 */ sh $t8, 2($v1) -/* 040994 8003FD94 90B9000F */ lbu $t9, 0xf($a1) -/* 040998 8003FD98 00000000 */ nop -/* 04099C 8003FD9C A079000C */ sb $t9, 0xc($v1) -/* 0409A0 8003FDA0 90A8000E */ lbu $t0, 0xe($a1) -/* 0409A4 8003FDA4 00000000 */ nop -/* 0409A8 8003FDA8 A0680006 */ sb $t0, 6($v1) -/* 0409AC 8003FDAC 90A9000C */ lbu $t1, 0xc($a1) -/* 0409B0 8003FDB0 00000000 */ nop -/* 0409B4 8003FDB4 A0690004 */ sb $t1, 4($v1) -/* 0409B8 8003FDB8 90AA000D */ lbu $t2, 0xd($a1) -/* 0409BC 8003FDBC 00000000 */ nop -/* 0409C0 8003FDC0 A06A0005 */ sb $t2, 5($v1) -/* 0409C4 8003FDC4 90AB0010 */ lbu $t3, 0x10($a1) -/* 0409C8 8003FDC8 AC600008 */ sw $zero, 8($v1) -/* 0409CC 8003FDCC A06B000D */ sb $t3, 0xd($v1) -/* 0409D0 8003FDD0 0C00086C */ jal func_800021B0 -/* 0409D4 8003FDD4 AFA30044 */ sw $v1, 0x44($sp) -/* 0409D8 8003FDD8 8FA30044 */ lw $v1, 0x44($sp) -/* 0409DC 8003FDDC 10400021 */ beqz $v0, .L8003FE64 -/* 0409E0 8003FDE0 2418000A */ li $t8, 10 -/* 0409E4 8003FDE4 860C0002 */ lh $t4, 2($s0) -/* 0409E8 8003FDE8 860D0004 */ lh $t5, 4($s0) -/* 0409EC 8003FDEC 860E0006 */ lh $t6, 6($s0) -/* 0409F0 8003FDF0 94640000 */ lhu $a0, ($v1) -/* 0409F4 8003FDF4 240F0009 */ li $t7, 9 -/* 0409F8 8003FDF8 AFAF0010 */ sw $t7, 0x10($sp) -/* 0409FC 8003FDFC 90780005 */ lbu $t8, 5($v1) -/* 040A00 8003FE00 448C2000 */ mtc1 $t4, $f4 -/* 040A04 8003FE04 AFB80014 */ sw $t8, 0x14($sp) -/* 040A08 8003FE08 90790004 */ lbu $t9, 4($v1) -/* 040A0C 8003FE0C 448D3000 */ mtc1 $t5, $f6 -/* 040A10 8003FE10 AFB90018 */ sw $t9, 0x18($sp) -/* 040A14 8003FE14 94680002 */ lhu $t0, 2($v1) -/* 040A18 8003FE18 448E4000 */ mtc1 $t6, $f8 -/* 040A1C 8003FE1C AFA8001C */ sw $t0, 0x1c($sp) -/* 040A20 8003FE20 9069000C */ lbu $t1, 0xc($v1) -/* 040A24 8003FE24 46802120 */ cvt.s.w $f4, $f4 -/* 040A28 8003FE28 AFA90020 */ sw $t1, 0x20($sp) -/* 040A2C 8003FE2C 906A0006 */ lbu $t2, 6($v1) -/* 040A30 8003FE30 468031A0 */ cvt.s.w $f6, $f6 -/* 040A34 8003FE34 AFAA0024 */ sw $t2, 0x24($sp) -/* 040A38 8003FE38 906B000D */ lbu $t3, 0xd($v1) -/* 040A3C 8003FE3C 46804220 */ cvt.s.w $f8, $f8 -/* 040A40 8003FE40 44063000 */ mfc1 $a2, $f6 -/* 040A44 8003FE44 44052000 */ mfc1 $a1, $f4 -/* 040A48 8003FE48 44074000 */ mfc1 $a3, $f8 -/* 040A4C 8003FE4C 246C0008 */ addiu $t4, $v1, 8 -/* 040A50 8003FE50 AFAC002C */ sw $t4, 0x2c($sp) -/* 040A54 8003FE54 0C0025D3 */ jal func_8000974C -/* 040A58 8003FE58 AFAB0028 */ sw $t3, 0x28($sp) -/* 040A5C 8003FE5C 1000001F */ b .L8003FEDC -/* 040A60 8003FE60 8FA40048 */ lw $a0, 0x48($sp) -.L8003FE64: -/* 040A64 8003FE64 860D0002 */ lh $t5, 2($s0) -/* 040A68 8003FE68 860E0004 */ lh $t6, 4($s0) -/* 040A6C 8003FE6C 860F0006 */ lh $t7, 6($s0) -/* 040A70 8003FE70 94640000 */ lhu $a0, ($v1) -/* 040A74 8003FE74 AFB80010 */ sw $t8, 0x10($sp) -/* 040A78 8003FE78 90790005 */ lbu $t9, 5($v1) -/* 040A7C 8003FE7C 448D5000 */ mtc1 $t5, $f10 -/* 040A80 8003FE80 AFB90014 */ sw $t9, 0x14($sp) -/* 040A84 8003FE84 90680004 */ lbu $t0, 4($v1) -/* 040A88 8003FE88 448E8000 */ mtc1 $t6, $f16 -/* 040A8C 8003FE8C AFA80018 */ sw $t0, 0x18($sp) -/* 040A90 8003FE90 94690002 */ lhu $t1, 2($v1) -/* 040A94 8003FE94 448F9000 */ mtc1 $t7, $f18 -/* 040A98 8003FE98 AFA9001C */ sw $t1, 0x1c($sp) -/* 040A9C 8003FE9C 906A000C */ lbu $t2, 0xc($v1) -/* 040AA0 8003FEA0 468052A0 */ cvt.s.w $f10, $f10 -/* 040AA4 8003FEA4 AFAA0020 */ sw $t2, 0x20($sp) -/* 040AA8 8003FEA8 906B0006 */ lbu $t3, 6($v1) -/* 040AAC 8003FEAC 46808420 */ cvt.s.w $f16, $f16 -/* 040AB0 8003FEB0 AFAB0024 */ sw $t3, 0x24($sp) -/* 040AB4 8003FEB4 906C000D */ lbu $t4, 0xd($v1) -/* 040AB8 8003FEB8 468094A0 */ cvt.s.w $f18, $f18 -/* 040ABC 8003FEBC 44068000 */ mfc1 $a2, $f16 -/* 040AC0 8003FEC0 44055000 */ mfc1 $a1, $f10 -/* 040AC4 8003FEC4 44079000 */ mfc1 $a3, $f18 -/* 040AC8 8003FEC8 246D0008 */ addiu $t5, $v1, 8 -/* 040ACC 8003FECC AFAD002C */ sw $t5, 0x2c($sp) -/* 040AD0 8003FED0 0C0025D3 */ jal func_8000974C -/* 040AD4 8003FED4 AFAC0028 */ sw $t4, 0x28($sp) -/* 040AD8 8003FED8 8FA40048 */ lw $a0, 0x48($sp) -.L8003FEDC: -/* 040ADC 8003FEDC 0C003FEE */ jal func_8000FFB8 -/* 040AE0 8003FEE0 00000000 */ nop -/* 040AE4 8003FEE4 8FBF003C */ lw $ra, 0x3c($sp) -/* 040AE8 8003FEE8 8FB00038 */ lw $s0, 0x38($sp) -/* 040AEC 8003FEEC 03E00008 */ jr $ra -/* 040AF0 8003FEF0 27BD0048 */ addiu $sp, $sp, 0x48 - -glabel func_8003FEF4 -/* 040AF4 8003FEF4 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 040AF8 8003FEF8 AFBF0044 */ sw $ra, 0x44($sp) -/* 040AFC 8003FEFC AFB00040 */ sw $s0, 0x40($sp) -/* 040B00 8003FF00 AFA40048 */ sw $a0, 0x48($sp) -/* 040B04 8003FF04 8C820064 */ lw $v0, 0x64($a0) -/* 040B08 8003FF08 90AF0008 */ lbu $t7, 8($a1) -/* 040B0C 8003FF0C 00A08025 */ move $s0, $a1 -/* 040B10 8003FF10 A04F0000 */ sb $t7, ($v0) -/* 040B14 8003FF14 94B8000A */ lhu $t8, 0xa($a1) -/* 040B18 8003FF18 31E400FF */ andi $a0, $t7, 0xff -/* 040B1C 8003FF1C A4580002 */ sh $t8, 2($v0) -/* 040B20 8003FF20 90B9000C */ lbu $t9, 0xc($a1) -/* 040B24 8003FF24 00000000 */ nop -/* 040B28 8003FF28 A059000C */ sb $t9, 0xc($v0) -/* 040B2C 8003FF2C 90A8000D */ lbu $t0, 0xd($a1) -/* 040B30 8003FF30 AC400008 */ sw $zero, 8($v0) -/* 040B34 8003FF34 A048000D */ sb $t0, 0xd($v0) -/* 040B38 8003FF38 94A9000E */ lhu $t1, 0xe($a1) -/* 040B3C 8003FF3C 00000000 */ nop -/* 040B40 8003FF40 A4490004 */ sh $t1, 4($v0) -/* 040B44 8003FF44 90AA0012 */ lbu $t2, 0x12($a1) -/* 040B48 8003FF48 00000000 */ nop -/* 040B4C 8003FF4C A04A0011 */ sb $t2, 0x11($v0) -/* 040B50 8003FF50 90AB0011 */ lbu $t3, 0x11($a1) -/* 040B54 8003FF54 00000000 */ nop -/* 040B58 8003FF58 A04B0010 */ sb $t3, 0x10($v0) -/* 040B5C 8003FF5C 90AC0009 */ lbu $t4, 9($a1) -/* 040B60 8003FF60 00000000 */ nop -/* 040B64 8003FF64 A04C000E */ sb $t4, 0xe($v0) -/* 040B68 8003FF68 90AD0010 */ lbu $t5, 0x10($a1) -/* 040B6C 8003FF6C 00000000 */ nop -/* 040B70 8003FF70 A04D000F */ sb $t5, 0xf($v0) -/* 040B74 8003FF74 90AE0013 */ lbu $t6, 0x13($a1) -/* 040B78 8003FF78 3305FFFF */ andi $a1, $t8, 0xffff -/* 040B7C 8003FF7C A04E0012 */ sb $t6, 0x12($v0) -/* 040B80 8003FF80 86190006 */ lh $t9, 6($s0) -/* 040B84 8003FF84 86180004 */ lh $t8, 4($s0) -/* 040B88 8003FF88 44994000 */ mtc1 $t9, $f8 -/* 040B8C 8003FF8C 860F0002 */ lh $t7, 2($s0) -/* 040B90 8003FF90 468042A0 */ cvt.s.w $f10, $f8 -/* 040B94 8003FF94 44983000 */ mtc1 $t8, $f6 -/* 040B98 8003FF98 448F2000 */ mtc1 $t7, $f4 -/* 040B9C 8003FF9C E7AA0010 */ swc1 $f10, 0x10($sp) -/* 040BA0 8003FFA0 9048000F */ lbu $t0, 0xf($v0) -/* 040BA4 8003FFA4 468031A0 */ cvt.s.w $f6, $f6 -/* 040BA8 8003FFA8 AFA80014 */ sw $t0, 0x14($sp) -/* 040BAC 8003FFAC 9049000E */ lbu $t1, 0xe($v0) -/* 040BB0 8003FFB0 46802120 */ cvt.s.w $f4, $f4 -/* 040BB4 8003FFB4 AFA90018 */ sw $t1, 0x18($sp) -/* 040BB8 8003FFB8 904A0010 */ lbu $t2, 0x10($v0) -/* 040BBC 8003FFBC 44062000 */ mfc1 $a2, $f4 -/* 040BC0 8003FFC0 AFAA001C */ sw $t2, 0x1c($sp) -/* 040BC4 8003FFC4 904B0012 */ lbu $t3, 0x12($v0) -/* 040BC8 8003FFC8 44073000 */ mfc1 $a3, $f6 -/* 040BCC 8003FFCC AFAB0020 */ sw $t3, 0x20($sp) -/* 040BD0 8003FFD0 944C0004 */ lhu $t4, 4($v0) -/* 040BD4 8003FFD4 00000000 */ nop -/* 040BD8 8003FFD8 AFAC0024 */ sw $t4, 0x24($sp) -/* 040BDC 8003FFDC 904D0011 */ lbu $t5, 0x11($v0) -/* 040BE0 8003FFE0 00000000 */ nop -/* 040BE4 8003FFE4 AFAD0028 */ sw $t5, 0x28($sp) -/* 040BE8 8003FFE8 904E000C */ lbu $t6, 0xc($v0) -/* 040BEC 8003FFEC 00000000 */ nop -/* 040BF0 8003FFF0 AFAE002C */ sw $t6, 0x2c($sp) -/* 040BF4 8003FFF4 904F000D */ lbu $t7, 0xd($v0) -/* 040BF8 8003FFF8 0C002629 */ jal func_800098A4 -/* 040BFC 8003FFFC AFAF0030 */ sw $t7, 0x30($sp) -/* 040C00 80040000 8FA40048 */ lw $a0, 0x48($sp) -/* 040C04 80040004 0C003FEE */ jal func_8000FFB8 -/* 040C08 80040008 00000000 */ nop -/* 040C0C 8004000C 8FBF0044 */ lw $ra, 0x44($sp) -/* 040C10 80040010 8FB00040 */ lw $s0, 0x40($sp) -/* 040C14 80040014 03E00008 */ jr $ra -/* 040C18 80040018 27BD0048 */ addiu $sp, $sp, 0x48 - -glabel func_8004001C -/* 040C1C 8004001C 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 040C20 80040020 AFBF001C */ sw $ra, 0x1c($sp) -/* 040C24 80040024 AFA40020 */ sw $a0, 0x20($sp) -/* 040C28 80040028 8C820064 */ lw $v0, 0x64($a0) -/* 040C2C 8004002C 90AF0008 */ lbu $t7, 8($a1) -/* 040C30 80040030 00000000 */ nop -/* 040C34 80040034 A44F0002 */ sh $t7, 2($v0) -/* 040C38 80040038 90B80009 */ lbu $t8, 9($a1) -/* 040C3C 8004003C 90470003 */ lbu $a3, 3($v0) -/* 040C40 80040040 A0580004 */ sb $t8, 4($v0) -/* 040C44 80040044 90B9000A */ lbu $t9, 0xa($a1) -/* 040C48 80040048 330B00FF */ andi $t3, $t8, 0xff -/* 040C4C 8004004C A0590005 */ sb $t9, 5($v0) -/* 040C50 80040050 84AA0006 */ lh $t2, 6($a1) -/* 040C54 80040054 84A90004 */ lh $t1, 4($a1) -/* 040C58 80040058 448A4000 */ mtc1 $t2, $f8 -/* 040C5C 8004005C 84A80002 */ lh $t0, 2($a1) -/* 040C60 80040060 46804220 */ cvt.s.w $f8, $f8 -/* 040C64 80040064 AFAB0010 */ sw $t3, 0x10($sp) -/* 040C68 80040068 904C0005 */ lbu $t4, 5($v0) -/* 040C6C 8004006C 44893000 */ mtc1 $t1, $f6 -/* 040C70 80040070 44882000 */ mtc1 $t0, $f4 -/* 040C74 80040074 44064000 */ mfc1 $a2, $f8 -/* 040C78 80040078 AFAC0014 */ sw $t4, 0x14($sp) -/* 040C7C 8004007C 468033A0 */ cvt.s.w $f14, $f6 -/* 040C80 80040080 0C00265A */ jal func_80009968 -/* 040C84 80040084 46802320 */ cvt.s.w $f12, $f4 -/* 040C88 80040088 8FA40020 */ lw $a0, 0x20($sp) -/* 040C8C 8004008C 0C003FEE */ jal func_8000FFB8 -/* 040C90 80040090 00000000 */ nop -/* 040C94 80040094 8FBF001C */ lw $ra, 0x1c($sp) -/* 040C98 80040098 27BD0020 */ addiu $sp, $sp, 0x20 -/* 040C9C 8004009C 03E00008 */ jr $ra -/* 040CA0 800400A0 00000000 */ nop - -glabel func_800400A4 -/* 040CA4 800400A4 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 040CA8 800400A8 AFBF0014 */ sw $ra, 0x14($sp) -/* 040CAC 800400AC AFA60028 */ sw $a2, 0x28($sp) -/* 040CB0 800400B0 8C830064 */ lw $v1, 0x64($a0) -/* 040CB4 800400B4 AFA50024 */ sw $a1, 0x24($sp) -/* 040CB8 800400B8 0C00B1F1 */ jal func_8002C7C4 -/* 040CBC 800400BC AFA3001C */ sw $v1, 0x1c($sp) -/* 040CC0 800400C0 8FA70024 */ lw $a3, 0x24($sp) -/* 040CC4 800400C4 8FA3001C */ lw $v1, 0x1c($sp) -/* 040CC8 800400C8 84EE0008 */ lh $t6, 8($a3) -/* 040CCC 800400CC 00000000 */ nop -/* 040CD0 800400D0 A46E0000 */ sh $t6, ($v1) -/* 040CD4 800400D4 84640000 */ lh $a0, ($v1) -/* 040CD8 800400D8 00000000 */ nop -/* 040CDC 800400DC 04810004 */ bgez $a0, .L800400F0 -/* 040CE0 800400E0 00000000 */ nop -/* 040CE4 800400E4 A4600000 */ sh $zero, ($v1) -/* 040CE8 800400E8 84640000 */ lh $a0, ($v1) -/* 040CEC 800400EC 00000000 */ nop -.L800400F0: -/* 040CF0 800400F0 84450018 */ lh $a1, 0x18($v0) -/* 040CF4 800400F4 00000000 */ nop -/* 040CF8 800400F8 0085082A */ slt $at, $a0, $a1 -/* 040CFC 800400FC 14200002 */ bnez $at, .L80040108 -/* 040D00 80040100 24AFFFFF */ addiu $t7, $a1, -1 -/* 040D04 80040104 A46F0000 */ sh $t7, ($v1) -.L80040108: -/* 040D08 80040108 80F8000A */ lb $t8, 0xa($a3) -/* 040D0C 8004010C 00000000 */ nop -/* 040D10 80040110 A4780004 */ sh $t8, 4($v1) -/* 040D14 80040114 80F9000B */ lb $t9, 0xb($a3) -/* 040D18 80040118 00000000 */ nop -/* 040D1C 8004011C A4790006 */ sh $t9, 6($v1) -/* 040D20 80040120 8FA80028 */ lw $t0, 0x28($sp) -/* 040D24 80040124 00000000 */ nop -/* 040D28 80040128 15000004 */ bnez $t0, .L8004013C -/* 040D2C 8004012C 8FBF0014 */ lw $ra, 0x14($sp) -/* 040D30 80040130 A4600008 */ sh $zero, 8($v1) -/* 040D34 80040134 A460000A */ sh $zero, 0xa($v1) -/* 040D38 80040138 8FBF0014 */ lw $ra, 0x14($sp) -.L8004013C: -/* 040D3C 8004013C 27BD0020 */ addiu $sp, $sp, 0x20 -/* 040D40 80040140 03E00008 */ jr $ra -/* 040D44 80040144 00000000 */ nop - -glabel func_80040148 -/* 040D48 80040148 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 040D4C 8004014C AFBF001C */ sw $ra, 0x1c($sp) -/* 040D50 80040150 AFB00018 */ sw $s0, 0x18($sp) -/* 040D54 80040154 AFA5003C */ sw $a1, 0x3c($sp) -/* 040D58 80040158 8C8D0064 */ lw $t5, 0x64($a0) -/* 040D5C 8004015C 0C00B1F1 */ jal func_8002C7C4 -/* 040D60 80040160 AFAD0024 */ sw $t5, 0x24($sp) -/* 040D64 80040164 8FAD0024 */ lw $t5, 0x24($sp) -/* 040D68 80040168 8FAA003C */ lw $t2, 0x3c($sp) -/* 040D6C 8004016C 85A80004 */ lh $t0, 4($t5) -/* 040D70 80040170 85A90006 */ lh $t1, 6($t5) -/* 040D74 80040174 010A0019 */ multu $t0, $t2 -/* 040D78 80040178 85AF0000 */ lh $t7, ($t5) -/* 040D7C 8004017C 8C4E0000 */ lw $t6, ($v0) -/* 040D80 80040180 000FC0C0 */ sll $t8, $t7, 3 -/* 040D84 80040184 01D8C821 */ addu $t9, $t6, $t8 -/* 040D88 80040188 8F230000 */ lw $v1, ($t9) -/* 040D8C 8004018C 85B80008 */ lh $t8, 8($t5) -/* 040D90 80040190 90660000 */ lbu $a2, ($v1) -/* 040D94 80040194 90670001 */ lbu $a3, 1($v1) -/* 040D98 80040198 00067A00 */ sll $t7, $a2, 8 -/* 040D9C 8004019C 01E03025 */ move $a2, $t7 -/* 040DA0 800401A0 85AF000A */ lh $t7, 0xa($t5) -/* 040DA4 800401A4 00004012 */ mflo $t0 -/* 040DA8 800401A8 00077200 */ sll $t6, $a3, 8 -/* 040DAC 800401AC 01C03825 */ move $a3, $t6 -/* 040DB0 800401B0 012A0019 */ multu $t1, $t2 -/* 040DB4 800401B4 0308C821 */ addu $t9, $t8, $t0 -/* 040DB8 800401B8 A5B90008 */ sh $t9, 8($t5) -/* 040DBC 800401BC 85A40008 */ lh $a0, 8($t5) -/* 040DC0 800401C0 00408025 */ move $s0, $v0 -/* 040DC4 800401C4 30980003 */ andi $t8, $a0, 3 -/* 040DC8 800401C8 A5B80008 */ sh $t8, 8($t5) -/* 040DCC 800401CC 0000F825 */ move $ra, $zero -/* 040DD0 800401D0 00044083 */ sra $t0, $a0, 2 -/* 040DD4 800401D4 00004812 */ mflo $t1 -/* 040DD8 800401D8 01E97021 */ addu $t6, $t7, $t1 -/* 040DDC 800401DC A5AE000A */ sh $t6, 0xa($t5) -/* 040DE0 800401E0 85A5000A */ lh $a1, 0xa($t5) -/* 040DE4 800401E4 00000000 */ nop -/* 040DE8 800401E8 30B90003 */ andi $t9, $a1, 3 -/* 040DEC 800401EC A5B9000A */ sh $t9, 0xa($t5) -/* 040DF0 800401F0 844F001A */ lh $t7, 0x1a($v0) -/* 040DF4 800401F4 8C430004 */ lw $v1, 4($v0) -/* 040DF8 800401F8 19E00067 */ blez $t7, .L80040398 -/* 040DFC 800401FC 00054883 */ sra $t1, $a1, 2 -/* 040E00 80040200 00605825 */ move $t3, $v1 -.L80040204: -/* 040E04 80040204 85620020 */ lh $v0, 0x20($t3) -/* 040E08 80040208 8D63000C */ lw $v1, 0xc($t3) -/* 040E0C 8004020C 1840005D */ blez $v0, .L80040384 -/* 040E10 80040210 00006025 */ move $t4, $zero -/* 040E14 80040214 00605025 */ move $t2, $v1 -.L80040218: -/* 040E18 80040218 85AE0000 */ lh $t6, ($t5) -/* 040E1C 8004021C 91580000 */ lbu $t8, ($t2) -/* 040E20 80040220 258C0001 */ addiu $t4, $t4, 1 -/* 040E24 80040224 15D80055 */ bne $t6, $t8, .L8004037C -/* 040E28 80040228 0182082A */ slt $at, $t4, $v0 -/* 040E2C 8004022C 85450004 */ lh $a1, 4($t2) -/* 040E30 80040230 85440010 */ lh $a0, 0x10($t2) -/* 040E34 80040234 00000000 */ nop -/* 040E38 80040238 00A4082A */ slt $at, $a1, $a0 -/* 040E3C 8004023C 1020004F */ beqz $at, .L8004037C -/* 040E40 80040240 0182082A */ slt $at, $t4, $v0 -.L80040244: -/* 040E44 80040244 8D790004 */ lw $t9, 4($t3) -/* 040E48 80040248 00057900 */ sll $t7, $a1, 4 -/* 040E4C 8004024C 032F1021 */ addu $v0, $t9, $t7 -/* 040E50 80040250 904E0000 */ lbu $t6, ($v0) -/* 040E54 80040254 24A50001 */ addiu $a1, $a1, 1 -/* 040E58 80040258 31D80080 */ andi $t8, $t6, 0x80 -/* 040E5C 8004025C 17000042 */ bnez $t8, .L80040368 -/* 040E60 80040260 00A4082A */ slt $at, $a1, $a0 -/* 040E64 80040264 84430006 */ lh $v1, 6($v0) -/* 040E68 80040268 00000000 */ nop -/* 040E6C 8004026C 00E3082A */ slt $at, $a3, $v1 -/* 040E70 80040270 10200009 */ beqz $at, .L80040298 -/* 040E74 80040274 0067C823 */ subu $t9, $v1, $a3 -/* 040E78 80040278 844F000A */ lh $t7, 0xa($v0) -/* 040E7C 8004027C 8458000E */ lh $t8, 0xe($v0) -/* 040E80 80040280 A4590006 */ sh $t9, 6($v0) -/* 040E84 80040284 01E77023 */ subu $t6, $t7, $a3 -/* 040E88 80040288 0307C823 */ subu $t9, $t8, $a3 -/* 040E8C 8004028C 84430006 */ lh $v1, 6($v0) -/* 040E90 80040290 A44E000A */ sh $t6, 0xa($v0) -/* 040E94 80040294 A459000E */ sh $t9, 0xe($v0) -.L80040298: -/* 040E98 80040298 04610008 */ bgez $v1, .L800402BC -/* 040E9C 8004029C 00677821 */ addu $t7, $v1, $a3 -/* 040EA0 800402A0 844E000A */ lh $t6, 0xa($v0) -/* 040EA4 800402A4 8459000E */ lh $t9, 0xe($v0) -/* 040EA8 800402A8 A44F0006 */ sh $t7, 6($v0) -/* 040EAC 800402AC 01C7C021 */ addu $t8, $t6, $a3 -/* 040EB0 800402B0 03277821 */ addu $t7, $t9, $a3 -/* 040EB4 800402B4 A458000A */ sh $t8, 0xa($v0) -/* 040EB8 800402B8 A44F000E */ sh $t7, 0xe($v0) -.L800402BC: -/* 040EBC 800402BC 84430004 */ lh $v1, 4($v0) -/* 040EC0 800402C0 00000000 */ nop -/* 040EC4 800402C4 00C3082A */ slt $at, $a2, $v1 -/* 040EC8 800402C8 10200009 */ beqz $at, .L800402F0 -/* 040ECC 800402CC 00667023 */ subu $t6, $v1, $a2 -/* 040ED0 800402D0 84580008 */ lh $t8, 8($v0) -/* 040ED4 800402D4 844F000C */ lh $t7, 0xc($v0) -/* 040ED8 800402D8 A44E0004 */ sh $t6, 4($v0) -/* 040EDC 800402DC 0306C823 */ subu $t9, $t8, $a2 -/* 040EE0 800402E0 01E67023 */ subu $t6, $t7, $a2 -/* 040EE4 800402E4 84430004 */ lh $v1, 4($v0) -/* 040EE8 800402E8 A4590008 */ sh $t9, 8($v0) -/* 040EEC 800402EC A44E000C */ sh $t6, 0xc($v0) -.L800402F0: -/* 040EF0 800402F0 04610009 */ bgez $v1, .L80040318 -/* 040EF4 800402F4 0066C021 */ addu $t8, $v1, $a2 -/* 040EF8 800402F8 84590008 */ lh $t9, 8($v0) -/* 040EFC 800402FC 844E000C */ lh $t6, 0xc($v0) -/* 040F00 80040300 A4580004 */ sh $t8, 4($v0) -/* 040F04 80040304 03267821 */ addu $t7, $t9, $a2 -/* 040F08 80040308 01C6C021 */ addu $t8, $t6, $a2 -/* 040F0C 8004030C 84430004 */ lh $v1, 4($v0) -/* 040F10 80040310 A44F0008 */ sh $t7, 8($v0) -/* 040F14 80040314 A458000C */ sh $t8, 0xc($v0) -.L80040318: -/* 040F18 80040318 84590006 */ lh $t9, 6($v0) -/* 040F1C 8004031C 844E000A */ lh $t6, 0xa($v0) -/* 040F20 80040320 03297821 */ addu $t7, $t9, $t1 -/* 040F24 80040324 8459000E */ lh $t9, 0xe($v0) -/* 040F28 80040328 A44F0006 */ sh $t7, 6($v0) -/* 040F2C 8004032C 01C9C021 */ addu $t8, $t6, $t1 -/* 040F30 80040330 03297821 */ addu $t7, $t9, $t1 -/* 040F34 80040334 A458000A */ sh $t8, 0xa($v0) -/* 040F38 80040338 A44F000E */ sh $t7, 0xe($v0) -/* 040F3C 8004033C 84580008 */ lh $t8, 8($v0) -/* 040F40 80040340 844F000C */ lh $t7, 0xc($v0) -/* 040F44 80040344 00687021 */ addu $t6, $v1, $t0 -/* 040F48 80040348 A44E0004 */ sh $t6, 4($v0) -/* 040F4C 8004034C 0308C821 */ addu $t9, $t8, $t0 -/* 040F50 80040350 01E87021 */ addu $t6, $t7, $t0 -/* 040F54 80040354 A4590008 */ sh $t9, 8($v0) -/* 040F58 80040358 A44E000C */ sh $t6, 0xc($v0) -/* 040F5C 8004035C 85440010 */ lh $a0, 0x10($t2) -/* 040F60 80040360 00000000 */ nop -/* 040F64 80040364 00A4082A */ slt $at, $a1, $a0 -.L80040368: -/* 040F68 80040368 1420FFB6 */ bnez $at, .L80040244 -/* 040F6C 8004036C 00000000 */ nop -/* 040F70 80040370 85620020 */ lh $v0, 0x20($t3) -/* 040F74 80040374 00000000 */ nop -/* 040F78 80040378 0182082A */ slt $at, $t4, $v0 -.L8004037C: -/* 040F7C 8004037C 1420FFA6 */ bnez $at, .L80040218 -/* 040F80 80040380 254A000C */ addiu $t2, $t2, 0xc -.L80040384: -/* 040F84 80040384 8618001A */ lh $t8, 0x1a($s0) -/* 040F88 80040388 27FF0001 */ addiu $ra, $ra, 1 -/* 040F8C 8004038C 03F8082A */ slt $at, $ra, $t8 -/* 040F90 80040390 1420FF9C */ bnez $at, .L80040204 -/* 040F94 80040394 256B0044 */ addiu $t3, $t3, 0x44 -.L80040398: -/* 040F98 80040398 8FBF001C */ lw $ra, 0x1c($sp) -/* 040F9C 8004039C 8FB00018 */ lw $s0, 0x18($sp) -/* 040FA0 800403A0 03E00008 */ jr $ra -/* 040FA4 800403A4 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_800403A8 -/* 040FA8 800403A8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 040FAC 800403AC AFBF0014 */ sw $ra, 0x14($sp) -/* 040FB0 800403B0 AFA40018 */ sw $a0, 0x18($sp) -/* 040FB4 800403B4 0C00C72B */ jal func_80031CAC -/* 040FB8 800403B8 AFA60020 */ sw $a2, 0x20($sp) -/* 040FBC 800403BC 8FAE0018 */ lw $t6, 0x18($sp) -/* 040FC0 800403C0 00000000 */ nop -/* 040FC4 800403C4 ADC20064 */ sw $v0, 0x64($t6) -/* 040FC8 800403C8 8FBF0014 */ lw $ra, 0x14($sp) -/* 040FCC 800403CC 27BD0018 */ addiu $sp, $sp, 0x18 -/* 040FD0 800403D0 03E00008 */ jr $ra -/* 040FD4 800403D4 00000000 */ nop - -glabel func_800403D8 -/* 040FD8 800403D8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 040FDC 800403DC AFBF0014 */ sw $ra, 0x14($sp) -/* 040FE0 800403E0 AFA5001C */ sw $a1, 0x1c($sp) -/* 040FE4 800403E4 AFA60020 */ sw $a2, 0x20($sp) -/* 040FE8 800403E8 00803825 */ move $a3, $a0 -/* 040FEC 800403EC 8CE5000C */ lw $a1, 0xc($a3) -/* 040FF0 800403F0 8CE60014 */ lw $a2, 0x14($a3) -/* 040FF4 800403F4 8484002E */ lh $a0, 0x2e($a0) -/* 040FF8 800403F8 0C02F995 */ jal func_800BE654 -/* 040FFC 800403FC AFA70018 */ sw $a3, 0x18($sp) -/* 041000 80040400 8FA70018 */ lw $a3, 0x18($sp) -/* 041004 80040404 240E0001 */ li $t6, 1 -/* 041008 80040408 8CEF004C */ lw $t7, 0x4c($a3) -/* 04100C 8004040C ACE20064 */ sw $v0, 0x64($a3) -/* 041010 80040410 A5EE0014 */ sh $t6, 0x14($t7) -/* 041014 80040414 8CF8004C */ lw $t8, 0x4c($a3) -/* 041018 80040418 2419001E */ li $t9, 30 -/* 04101C 8004041C A3000011 */ sb $zero, 0x11($t8) -/* 041020 80040420 8CE8004C */ lw $t0, 0x4c($a3) -/* 041024 80040424 00000000 */ nop -/* 041028 80040428 A1190010 */ sb $t9, 0x10($t0) -/* 04102C 8004042C 8CE9004C */ lw $t1, 0x4c($a3) -/* 041030 80040430 00000000 */ nop -/* 041034 80040434 A1200012 */ sb $zero, 0x12($t1) -/* 041038 80040438 8FBF0014 */ lw $ra, 0x14($sp) -/* 04103C 8004043C 27BD0018 */ addiu $sp, $sp, 0x18 -/* 041040 80040440 03E00008 */ jr $ra -/* 041044 80040444 00000000 */ nop - -glabel func_80040448 -/* 041048 80040448 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 04104C 8004044C AFBF0014 */ sw $ra, 0x14($sp) -/* 041050 80040450 AFA5001C */ sw $a1, 0x1c($sp) -/* 041054 80040454 8C870064 */ lw $a3, 0x64($a0) -/* 041058 80040458 00803025 */ move $a2, $a0 -/* 04105C 8004045C 10E00006 */ beqz $a3, .L80040478 -/* 041060 80040460 00E02025 */ move $a0, $a3 -/* 041064 80040464 0C02FBAD */ jal func_800BEEB4 -/* 041068 80040468 AFA60018 */ sw $a2, 0x18($sp) -/* 04106C 8004046C 8FA60018 */ lw $a2, 0x18($sp) -/* 041070 80040470 00000000 */ nop -/* 041074 80040474 E4C00010 */ swc1 $f0, 0x10($a2) -.L80040478: -/* 041078 80040478 8FAF001C */ lw $t7, 0x1c($sp) -/* 04107C 8004047C 84CE0018 */ lh $t6, 0x18($a2) -/* 041080 80040480 000FC0C0 */ sll $t8, $t7, 3 -/* 041084 80040484 01D8C821 */ addu $t9, $t6, $t8 -/* 041088 80040488 A4D90018 */ sh $t9, 0x18($a2) -/* 04108C 8004048C 8FBF0014 */ lw $ra, 0x14($sp) -/* 041090 80040490 27BD0018 */ addiu $sp, $sp, 0x18 -/* 041094 80040494 03E00008 */ jr $ra -/* 041098 80040498 00000000 */ nop - -glabel func_8004049C -/* 04109C 8004049C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0410A0 800404A0 AFBF0014 */ sw $ra, 0x14($sp) -/* 0410A4 800404A4 AFA5001C */ sw $a1, 0x1c($sp) -/* 0410A8 800404A8 AFA60020 */ sw $a2, 0x20($sp) -/* 0410AC 800404AC 00803825 */ move $a3, $a0 -/* 0410B0 800404B0 8CE5000C */ lw $a1, 0xc($a3) -/* 0410B4 800404B4 8CE60014 */ lw $a2, 0x14($a3) -/* 0410B8 800404B8 8484002E */ lh $a0, 0x2e($a0) -/* 0410BC 800404BC 0C02F995 */ jal func_800BE654 -/* 0410C0 800404C0 AFA70018 */ sw $a3, 0x18($sp) -/* 0410C4 800404C4 8FA70018 */ lw $a3, 0x18($sp) -/* 0410C8 800404C8 8FA3001C */ lw $v1, 0x1c($sp) -/* 0410CC 800404CC 8CEF004C */ lw $t7, 0x4c($a3) -/* 0410D0 800404D0 240E0001 */ li $t6, 1 -/* 0410D4 800404D4 ACE20064 */ sw $v0, 0x64($a3) -/* 0410D8 800404D8 A5EE0014 */ sh $t6, 0x14($t7) -/* 0410DC 800404DC 8CF9004C */ lw $t9, 0x4c($a3) -/* 0410E0 800404E0 24180002 */ li $t8, 2 -/* 0410E4 800404E4 A3380011 */ sb $t8, 0x11($t9) -/* 0410E8 800404E8 8CE9004C */ lw $t1, 0x4c($a3) -/* 0410EC 800404EC 2408001E */ li $t0, 30 -/* 0410F0 800404F0 A1280010 */ sb $t0, 0x10($t1) -/* 0410F4 800404F4 906B0009 */ lbu $t3, 9($v1) -/* 0410F8 800404F8 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 0410FC 800404FC 448B2000 */ mtc1 $t3, $f4 -/* 041100 80040500 44811000 */ mtc1 $at, $f2 -/* 041104 80040504 46802020 */ cvt.s.w $f0, $f4 -/* 041108 80040508 3C014280 */ li $at, 0x42800000 # 64.000000 -/* 04110C 8004050C 44813000 */ mtc1 $at, $f6 -/* 041110 80040510 4602003C */ c.lt.s $f0, $f2 -/* 041114 80040514 00000000 */ nop -/* 041118 80040518 45000003 */ bc1f .L80040528 -/* 04111C 8004051C 00000000 */ nop -/* 041120 80040520 46001006 */ mov.s $f0, $f2 -/* 041124 80040524 00000000 */ nop -.L80040528: -/* 041128 80040528 46060003 */ div.s $f0, $f0, $f6 -/* 04112C 8004052C 8CEC0040 */ lw $t4, 0x40($a3) -/* 041130 80040530 00000000 */ nop -/* 041134 80040534 C588000C */ lwc1 $f8, 0xc($t4) -/* 041138 80040538 00000000 */ nop -/* 04113C 8004053C 46004282 */ mul.s $f10, $f8, $f0 -/* 041140 80040540 E4EA0008 */ swc1 $f10, 8($a3) -/* 041144 80040544 906D0008 */ lbu $t5, 8($v1) -/* 041148 80040548 00000000 */ nop -/* 04114C 8004054C A0ED003A */ sb $t5, 0x3a($a3) -/* 041150 80040550 906F000A */ lbu $t7, 0xa($v1) -/* 041154 80040554 00000000 */ nop -/* 041158 80040558 000FC280 */ sll $t8, $t7, 0xa -/* 04115C 8004055C A4F80000 */ sh $t8, ($a3) -/* 041160 80040560 8FBF0014 */ lw $ra, 0x14($sp) -/* 041164 80040564 27BD0018 */ addiu $sp, $sp, 0x18 -/* 041168 80040568 03E00008 */ jr $ra -/* 04116C 8004056C 00000000 */ nop - -glabel func_80040570 -/* 041170 80040570 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 041174 80040574 AFBF0014 */ sw $ra, 0x14($sp) -/* 041178 80040578 AFA5002C */ sw $a1, 0x2c($sp) -/* 04117C 8004057C 8C870064 */ lw $a3, 0x64($a0) -/* 041180 80040580 00803025 */ move $a2, $a0 -/* 041184 80040584 10E00006 */ beqz $a3, .L800405A0 -/* 041188 80040588 00E02025 */ move $a0, $a3 -/* 04118C 8004058C 0C02FBAD */ jal func_800BEEB4 -/* 041190 80040590 AFA60028 */ sw $a2, 0x28($sp) -/* 041194 80040594 8FA60028 */ lw $a2, 0x28($sp) -/* 041198 80040598 10000009 */ b .L800405C0 -/* 04119C 8004059C E4C00010 */ swc1 $f0, 0x10($a2) -.L800405A0: -/* 0411A0 800405A0 8CCE003C */ lw $t6, 0x3c($a2) -/* 0411A4 800405A4 00000000 */ nop -/* 0411A8 800405A8 85CF0004 */ lh $t7, 4($t6) -/* 0411AC 800405AC 00000000 */ nop -/* 0411B0 800405B0 448F2000 */ mtc1 $t7, $f4 -/* 0411B4 800405B4 00000000 */ nop -/* 0411B8 800405B8 468021A0 */ cvt.s.w $f6, $f4 -/* 0411BC 800405BC E4C60010 */ swc1 $f6, 0x10($a2) -.L800405C0: -/* 0411C0 800405C0 8CC2005C */ lw $v0, 0x5c($a2) -/* 0411C4 800405C4 00000000 */ nop -/* 0411C8 800405C8 8C580100 */ lw $t8, 0x100($v0) -/* 0411CC 800405CC 00000000 */ nop -/* 0411D0 800405D0 1300005D */ beqz $t8, .L80040748 -/* 0411D4 800405D4 00000000 */ nop -/* 0411D8 800405D8 8CD9007C */ lw $t9, 0x7c($a2) -/* 0411DC 800405DC 24010001 */ li $at, 1 -/* 0411E0 800405E0 27280001 */ addiu $t0, $t9, 1 -/* 0411E4 800405E4 ACC8007C */ sw $t0, 0x7c($a2) -/* 0411E8 800405E8 8C430100 */ lw $v1, 0x100($v0) -/* 0411EC 800405EC 00000000 */ nop -/* 0411F0 800405F0 84690048 */ lh $t1, 0x48($v1) -/* 0411F4 800405F4 00000000 */ nop -/* 0411F8 800405F8 15210016 */ bne $t1, $at, .L80040654 -/* 0411FC 800405FC 00000000 */ nop -/* 041200 80040600 8C620064 */ lw $v0, 0x64($v1) -/* 041204 80040604 3C01C010 */ li $at, 0xC0100000 # -2.250000 -/* 041208 80040608 C448002C */ lwc1 $f8, 0x2c($v0) -/* 04120C 8004060C 44818800 */ mtc1 $at, $f17 -/* 041210 80040610 44808000 */ mtc1 $zero, $f16 -/* 041214 80040614 460042A1 */ cvt.d.s $f10, $f8 -/* 041218 80040618 4630503C */ c.lt.d $f10, $f16 -/* 04121C 8004061C 00000000 */ nop -/* 041220 80040620 4500000C */ bc1f .L80040654 -/* 041224 80040624 00000000 */ nop -/* 041228 80040628 804A01D8 */ lb $t2, 0x1d8($v0) -/* 04122C 8004062C 24050012 */ li $a1, 18 -/* 041230 80040630 15400008 */ bnez $t2, .L80040654 -/* 041234 80040634 00000000 */ nop -/* 041238 80040638 84440000 */ lh $a0, ($v0) -/* 04123C 8004063C AFA60028 */ sw $a2, 0x28($sp) -/* 041240 80040640 0C01C8D2 */ jal func_80072348 -/* 041244 80040644 AFA30024 */ sw $v1, 0x24($sp) -/* 041248 80040648 8FA30024 */ lw $v1, 0x24($sp) -/* 04124C 8004064C 8FA60028 */ lw $a2, 0x28($sp) -/* 041250 80040650 00000000 */ nop -.L80040654: -/* 041254 80040654 84C40000 */ lh $a0, ($a2) -/* 041258 80040658 AFA60028 */ sw $a2, 0x28($sp) -/* 04125C 8004065C 00042023 */ negu $a0, $a0 -/* 041260 80040660 00045C00 */ sll $t3, $a0, 0x10 -/* 041264 80040664 000B2403 */ sra $a0, $t3, 0x10 -/* 041268 80040668 0C01C1F1 */ jal func_800707C4 -/* 04126C 8004066C AFA30024 */ sw $v1, 0x24($sp) -/* 041270 80040670 8FA60028 */ lw $a2, 0x28($sp) -/* 041274 80040674 00000000 */ nop -/* 041278 80040678 84C40000 */ lh $a0, ($a2) -/* 04127C 8004067C E7A00018 */ swc1 $f0, 0x18($sp) -/* 041280 80040680 00042023 */ negu $a0, $a0 -/* 041284 80040684 00046C00 */ sll $t5, $a0, 0x10 -/* 041288 80040688 0C01C1FE */ jal func_800707F8 -/* 04128C 8004068C 000D2403 */ sra $a0, $t5, 0x10 -/* 041290 80040690 8FA30024 */ lw $v1, 0x24($sp) -/* 041294 80040694 8FA60028 */ lw $a2, 0x28($sp) -/* 041298 80040698 C464000C */ lwc1 $f4, 0xc($v1) -/* 04129C 8004069C C4D2000C */ lwc1 $f18, 0xc($a2) -/* 0412A0 800406A0 C4680014 */ lwc1 $f8, 0x14($v1) -/* 0412A4 800406A4 46049081 */ sub.s $f2, $f18, $f4 -/* 0412A8 800406A8 C4C60014 */ lwc1 $f6, 0x14($a2) -/* 0412AC 800406AC 46001282 */ mul.s $f10, $f2, $f0 -/* 0412B0 800406B0 C7AE0018 */ lwc1 $f14, 0x18($sp) -/* 0412B4 800406B4 C472001C */ lwc1 $f18, 0x1c($v1) -/* 0412B8 800406B8 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 0412BC 800406BC 46083301 */ sub.s $f12, $f6, $f8 -/* 0412C0 800406C0 C4660024 */ lwc1 $f6, 0x24($v1) -/* 0412C4 800406C4 460E6402 */ mul.s $f16, $f12, $f14 -/* 0412C8 800406C8 8CCF0078 */ lw $t7, 0x78($a2) -/* 0412CC 800406CC 240AFE00 */ li $t2, -512 -/* 0412D0 800406D0 460E9102 */ mul.s $f4, $f18, $f14 -/* 0412D4 800406D4 46105080 */ add.s $f2, $f10, $f16 -/* 0412D8 800406D8 44815000 */ mtc1 $at, $f10 -/* 0412DC 800406DC 46003202 */ mul.s $f8, $f6, $f0 -/* 0412E0 800406E0 46082301 */ sub.s $f12, $f4, $f8 -/* 0412E4 800406E4 460C1082 */ mul.s $f2, $f2, $f12 -/* 0412E8 800406E8 00000000 */ nop -/* 0412EC 800406EC 460A1403 */ div.s $f16, $f2, $f10 -/* 0412F0 800406F0 4458F800 */ cfc1 $t8, $31 -/* 0412F4 800406F4 00000000 */ nop -/* 0412F8 800406F8 37010003 */ ori $at, $t8, 3 -/* 0412FC 800406FC 38210002 */ xori $at, $at, 2 -/* 041300 80040700 44C1F800 */ ctc1 $at, $31 -/* 041304 80040704 00000000 */ nop -/* 041308 80040708 460084A4 */ cvt.w.s $f18, $f16 -/* 04130C 8004070C 44199000 */ mfc1 $t9, $f18 -/* 041310 80040710 44D8F800 */ ctc1 $t8, $31 -/* 041314 80040714 01F91023 */ subu $v0, $t7, $t9 -/* 041318 80040718 28410201 */ slti $at, $v0, 0x201 -/* 04131C 8004071C 14200003 */ bnez $at, .L8004072C -/* 041320 80040720 ACC20078 */ sw $v0, 0x78($a2) -/* 041324 80040724 24020200 */ li $v0, 512 -/* 041328 80040728 ACC20078 */ sw $v0, 0x78($a2) -.L8004072C: -/* 04132C 8004072C 2841FE00 */ slti $at, $v0, -0x200 -/* 041330 80040730 10200002 */ beqz $at, .L8004073C -/* 041334 80040734 00000000 */ nop -/* 041338 80040738 ACCA0078 */ sw $t2, 0x78($a2) -.L8004073C: -/* 04133C 8004073C 8CC3007C */ lw $v1, 0x7c($a2) -/* 041340 80040740 10000008 */ b .L80040764 -/* 041344 80040744 44834000 */ mtc1 $v1, $f8 -.L80040748: -/* 041348 80040748 8CC3007C */ lw $v1, 0x7c($a2) -/* 04134C 8004074C 00000000 */ nop -/* 041350 80040750 18600003 */ blez $v1, .L80040760 -/* 041354 80040754 246BFFFF */ addiu $t3, $v1, -1 -/* 041358 80040758 ACCB007C */ sw $t3, 0x7c($a2) -/* 04135C 8004075C 01601825 */ move $v1, $t3 -.L80040760: -/* 041360 80040760 44834000 */ mtc1 $v1, $f8 -.L80040764: -/* 041364 80040764 C4C60010 */ lwc1 $f6, 0x10($a2) -/* 041368 80040768 468042A0 */ cvt.s.w $f10, $f8 -/* 04136C 8004076C 8CC20078 */ lw $v0, 0x78($a2) -/* 041370 80040770 46005421 */ cvt.d.s $f16, $f10 -/* 041374 80040774 46003121 */ cvt.d.s $f4, $f6 -/* 041378 80040778 46302481 */ sub.d $f18, $f4, $f16 -/* 04137C 8004077C 462091A0 */ cvt.s.d $f6, $f18 -/* 041380 80040780 18400009 */ blez $v0, .L800407A8 -/* 041384 80040784 E4C60010 */ swc1 $f6, 0x10($a2) -/* 041388 80040788 8FAC002C */ lw $t4, 0x2c($sp) -/* 04138C 8004078C 00000000 */ nop -/* 041390 80040790 004C6823 */ subu $t5, $v0, $t4 -/* 041394 80040794 ACCD0078 */ sw $t5, 0x78($a2) -/* 041398 80040798 05A10003 */ bgez $t5, .L800407A8 -/* 04139C 8004079C 01A01025 */ move $v0, $t5 -/* 0413A0 800407A0 ACC00078 */ sw $zero, 0x78($a2) -/* 0413A4 800407A4 00001025 */ move $v0, $zero -.L800407A8: -/* 0413A8 800407A8 0441000A */ bgez $v0, .L800407D4 -/* 0413AC 800407AC 8FB9002C */ lw $t9, 0x2c($sp) -/* 0413B0 800407B0 8FAE002C */ lw $t6, 0x2c($sp) -/* 0413B4 800407B4 00000000 */ nop -/* 0413B8 800407B8 004EC021 */ addu $t8, $v0, $t6 -/* 0413BC 800407BC ACD80078 */ sw $t8, 0x78($a2) -/* 0413C0 800407C0 1B000003 */ blez $t8, .L800407D0 -/* 0413C4 800407C4 03001025 */ move $v0, $t8 -/* 0413C8 800407C8 ACC00078 */ sw $zero, 0x78($a2) -/* 0413CC 800407CC 00001025 */ move $v0, $zero -.L800407D0: -/* 0413D0 800407D0 8FB9002C */ lw $t9, 0x2c($sp) -.L800407D4: -/* 0413D4 800407D4 84CF0000 */ lh $t7, ($a2) -/* 0413D8 800407D8 00590019 */ multu $v0, $t9 -/* 0413DC 800407DC 8CCA005C */ lw $t2, 0x5c($a2) -/* 0413E0 800407E0 00004012 */ mflo $t0 -/* 0413E4 800407E4 01E84821 */ addu $t1, $t7, $t0 -/* 0413E8 800407E8 A4C90000 */ sh $t1, ($a2) -/* 0413EC 800407EC AD400100 */ sw $zero, 0x100($t2) -/* 0413F0 800407F0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0413F4 800407F4 27BD0028 */ addiu $sp, $sp, 0x28 -/* 0413F8 800407F8 03E00008 */ jr $ra -/* 0413FC 800407FC 00000000 */ nop - -glabel func_80040800 -/* 041400 80040800 84AE0008 */ lh $t6, 8($a1) -/* 041404 80040804 00000000 */ nop -/* 041408 80040808 448E2000 */ mtc1 $t6, $f4 -/* 04140C 8004080C 00000000 */ nop -/* 041410 80040810 46802020 */ cvt.s.w $f0, $f4 -/* 041414 80040814 46000002 */ mul.s $f0, $f0, $f0 -/* 041418 80040818 03E00008 */ jr $ra -/* 04141C 8004081C E4800078 */ swc1 $f0, 0x78($a0) - -glabel func_80040820 -/* 041420 80040820 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 041424 80040824 AFBF001C */ sw $ra, 0x1c($sp) -/* 041428 80040828 AFA40058 */ sw $a0, 0x58($sp) -/* 04142C 8004082C 0C019888 */ jal func_80066220 -/* 041430 80040830 AFA5005C */ sw $a1, 0x5c($sp) -/* 041434 80040834 27A40050 */ addiu $a0, $sp, 0x50 -/* 041438 80040838 0C006E9D */ jal func_8001BA74 -/* 04143C 8004083C AFA20054 */ sw $v0, 0x54($sp) -/* 041440 80040840 8FA50050 */ lw $a1, 0x50($sp) -/* 041444 80040844 8FA60054 */ lw $a2, 0x54($sp) -/* 041448 80040848 8FA80058 */ lw $t0, 0x58($sp) -/* 04144C 8004084C 10A00033 */ beqz $a1, .L8004091C -/* 041450 80040850 24A4FFFF */ addiu $a0, $a1, -1 -/* 041454 80040854 00047080 */ sll $t6, $a0, 2 -/* 041458 80040858 01C23821 */ addu $a3, $t6, $v0 -/* 04145C 8004085C 2443FFFC */ addiu $v1, $v0, -4 -.L80040860: -/* 041460 80040860 8C640004 */ lw $a0, 4($v1) -/* 041464 80040864 24630004 */ addiu $v1, $v1, 4 -/* 041468 80040868 0067082B */ sltu $at, $v1, $a3 -/* 04146C 8004086C 8C850064 */ lw $a1, 0x64($a0) -/* 041470 80040870 10200005 */ beqz $at, .L80040888 -/* 041474 80040874 00000000 */ nop -/* 041478 80040878 84AF0000 */ lh $t7, ($a1) -/* 04147C 8004087C 00000000 */ nop -/* 041480 80040880 14CFFFF7 */ bne $a2, $t7, .L80040860 -/* 041484 80040884 00000000 */ nop -.L80040888: -/* 041488 80040888 C504000C */ lwc1 $f4, 0xc($t0) -/* 04148C 8004088C C486000C */ lwc1 $f6, 0xc($a0) -/* 041490 80040890 C5080014 */ lwc1 $f8, 0x14($t0) -/* 041494 80040894 46062001 */ sub.s $f0, $f4, $f6 -/* 041498 80040898 C48A0014 */ lwc1 $f10, 0x14($a0) -/* 04149C 8004089C 46000402 */ mul.s $f16, $f0, $f0 -/* 0414A0 800408A0 460A4081 */ sub.s $f2, $f8, $f10 -/* 0414A4 800408A4 C50C0078 */ lwc1 $f12, 0x78($t0) -/* 0414A8 800408A8 8D03003C */ lw $v1, 0x3c($t0) -/* 0414AC 800408AC 46021482 */ mul.s $f18, $f2, $f2 -/* 0414B0 800408B0 46128100 */ add.s $f4, $f16, $f18 -/* 0414B4 800408B4 460C203E */ c.le.s $f4, $f12 -/* 0414B8 800408B8 00000000 */ nop -/* 0414BC 800408BC 45000018 */ bc1f .L80040920 -/* 0414C0 800408C0 8FBF001C */ lw $ra, 0x1c($sp) -/* 0414C4 800408C4 906A0010 */ lbu $t2, 0x10($v1) -/* 0414C8 800408C8 24020101 */ li $v0, 257 -/* 0414CC 800408CC 01420019 */ multu $t2, $v0 -/* 0414D0 800408D0 906B0011 */ lbu $t3, 0x11($v1) -/* 0414D4 800408D4 8464000A */ lh $a0, 0xa($v1) -/* 0414D8 800408D8 8465000C */ lh $a1, 0xc($v1) -/* 0414DC 800408DC 8466000E */ lh $a2, 0xe($v1) -/* 0414E0 800408E0 0004C200 */ sll $t8, $a0, 8 -/* 0414E4 800408E4 0005CA00 */ sll $t9, $a1, 8 -/* 0414E8 800408E8 00064A00 */ sll $t1, $a2, 8 -/* 0414EC 800408EC 01203025 */ move $a2, $t1 -/* 0414F0 800408F0 03202825 */ move $a1, $t9 -/* 0414F4 800408F4 03002025 */ move $a0, $t8 -/* 0414F8 800408F8 00003812 */ mflo $a3 -/* 0414FC 800408FC 00000000 */ nop -/* 041500 80040900 00000000 */ nop -/* 041504 80040904 01620019 */ multu $t3, $v0 -/* 041508 80040908 00006012 */ mflo $t4 -/* 04150C 8004090C AFAC0010 */ sw $t4, 0x10($sp) -/* 041510 80040910 846D0012 */ lh $t5, 0x12($v1) -/* 041514 80040914 0C02AF17 */ jal func_800ABC5C -/* 041518 80040918 AFAD0014 */ sw $t5, 0x14($sp) -.L8004091C: -/* 04151C 8004091C 8FBF001C */ lw $ra, 0x1c($sp) -.L80040920: -/* 041520 80040920 27BD0058 */ addiu $sp, $sp, 0x58 -/* 041524 80040924 03E00008 */ jr $ra -/* 041528 80040928 00000000 */ nop - -glabel func_8004092C -/* 04152C 8004092C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 041530 80040930 AFBF0014 */ sw $ra, 0x14($sp) -/* 041534 80040934 0C02B22A */ jal func_800AC8A8 -/* 041538 80040938 AFA5001C */ sw $a1, 0x1c($sp) -/* 04153C 8004093C 8FBF0014 */ lw $ra, 0x14($sp) -/* 041540 80040940 27BD0018 */ addiu $sp, $sp, 0x18 -/* 041544 80040944 03E00008 */ jr $ra -/* 041548 80040948 00000000 */ nop - -glabel func_8004094C -/* 04154C 8004094C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 041550 80040950 AFBF0014 */ sw $ra, 0x14($sp) -/* 041554 80040954 AFA5001C */ sw $a1, 0x1c($sp) -/* 041558 80040958 AFA60020 */ sw $a2, 0x20($sp) -/* 04155C 8004095C 0C02B3D8 */ jal func_800ACF60 -/* 041560 80040960 AFA40018 */ sw $a0, 0x18($sp) -/* 041564 80040964 8FAE001C */ lw $t6, 0x1c($sp) -/* 041568 80040968 8FA40018 */ lw $a0, 0x18($sp) -/* 04156C 8004096C 85CF0008 */ lh $t7, 8($t6) -/* 041570 80040970 3C014220 */ li $at, 0x42200000 # 40.000000 -/* 041574 80040974 448F2000 */ mtc1 $t7, $f4 -/* 041578 80040978 44815000 */ mtc1 $at, $f10 -/* 04157C 8004097C 468021A0 */ cvt.s.w $f6, $f4 -/* 041580 80040980 E4860008 */ swc1 $f6, 8($a0) -/* 041584 80040984 C4880008 */ lwc1 $f8, 8($a0) -/* 041588 80040988 00000000 */ nop -/* 04158C 8004098C 460A4403 */ div.s $f16, $f8, $f10 -/* 041590 80040990 E4900008 */ swc1 $f16, 8($a0) -/* 041594 80040994 8FBF0014 */ lw $ra, 0x14($sp) -/* 041598 80040998 27BD0018 */ addiu $sp, $sp, 0x18 -/* 04159C 8004099C 03E00008 */ jr $ra -/* 0415A0 800409A0 00000000 */ nop - -glabel func_800409A4 -/* 0415A4 800409A4 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0415A8 800409A8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0415AC 800409AC AFA5001C */ sw $a1, 0x1c($sp) -/* 0415B0 800409B0 0C02FD49 */ jal func_800BF524 -/* 0415B4 800409B4 AFA60020 */ sw $a2, 0x20($sp) -/* 0415B8 800409B8 8FBF0014 */ lw $ra, 0x14($sp) -/* 0415BC 800409BC 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0415C0 800409C0 03E00008 */ jr $ra -/* 0415C4 800409C4 00000000 */ nop - -glabel func_800409C8 -/* 0415C8 800409C8 AFA50004 */ sw $a1, 4($sp) -/* 0415CC 800409CC 8C820064 */ lw $v0, 0x64($a0) -/* 0415D0 800409D0 14C0003B */ bnez $a2, .L80040AC0 -/* 0415D4 800409D4 240E0180 */ li $t6, 384 -/* 0415D8 800409D8 44800000 */ mtc1 $zero, $f0 -/* 0415DC 800409DC 3C06800E */ lui $a2, %hi(D_800DCAA8) # $a2, 0x800e -/* 0415E0 800409E0 E4800020 */ swc1 $f0, 0x20($a0) -/* 0415E4 800409E4 3C03800E */ lui $v1, %hi(D_800DCB28) # $v1, 0x800e -/* 0415E8 800409E8 A04000FE */ sb $zero, 0xfe($v0) -/* 0415EC 800409EC AC400100 */ sw $zero, 0x100($v0) -/* 0415F0 800409F0 A4400104 */ sh $zero, 0x104($v0) -/* 0415F4 800409F4 A04000FD */ sb $zero, 0xfd($v0) -/* 0415F8 800409F8 A44E0106 */ sh $t6, 0x106($v0) -/* 0415FC 800409FC 2463CB28 */ addiu $v1, %lo(D_800DCB28) # addiu $v1, $v1, -0x34d8 -/* 041600 80040A00 24C6CAA8 */ addiu $a2, %lo(D_800DCAA8) # addiu $a2, $a2, -0x3558 -/* 041604 80040A04 00402825 */ move $a1, $v0 -/* 041608 80040A08 E4400108 */ swc1 $f0, 0x108($v0) -.L80040A0C: -/* 04160C 80040A0C 90CF0000 */ lbu $t7, ($a2) -/* 041610 80040A10 24C60010 */ addiu $a2, $a2, 0x10 -/* 041614 80040A14 A0AF0000 */ sb $t7, ($a1) -/* 041618 80040A18 90D8FFF1 */ lbu $t8, -0xf($a2) -/* 04161C 80040A1C 00C3082B */ sltu $at, $a2, $v1 -/* 041620 80040A20 A0B80001 */ sb $t8, 1($a1) -/* 041624 80040A24 90D9FFF2 */ lbu $t9, -0xe($a2) -/* 041628 80040A28 24A50010 */ addiu $a1, $a1, 0x10 -/* 04162C 80040A2C A0B9FFF2 */ sb $t9, -0xe($a1) -/* 041630 80040A30 90C9FFF3 */ lbu $t1, -0xd($a2) -/* 041634 80040A34 1420FFF5 */ bnez $at, .L80040A0C -/* 041638 80040A38 A0A9FFF3 */ sb $t1, -0xd($a1) -/* 04163C 80040A3C 3C06800E */ lui $a2, %hi(D_800DCB28) # $a2, 0x800e -/* 041640 80040A40 24C6CB28 */ addiu $a2, %lo(D_800DCB28) # addiu $a2, $a2, -0x34d8 -/* 041644 80040A44 00001825 */ move $v1, $zero -/* 041648 80040A48 00402825 */ move $a1, $v0 -/* 04164C 80040A4C 24080006 */ li $t0, 6 -/* 041650 80040A50 240700FF */ li $a3, 255 -.L80040A54: -/* 041654 80040A54 84CA0000 */ lh $t2, ($a2) -/* 041658 80040A58 24630001 */ addiu $v1, $v1, 1 -/* 04165C 80040A5C A4AA0080 */ sh $t2, 0x80($a1) -/* 041660 80040A60 84CB0002 */ lh $t3, 2($a2) -/* 041664 80040A64 24A5000A */ addiu $a1, $a1, 0xa -/* 041668 80040A68 A4AB0078 */ sh $t3, 0x78($a1) -/* 04166C 80040A6C 84CC0004 */ lh $t4, 4($a2) -/* 041670 80040A70 A0A7007C */ sb $a3, 0x7c($a1) -/* 041674 80040A74 A0A7007D */ sb $a3, 0x7d($a1) -/* 041678 80040A78 A0A7007E */ sb $a3, 0x7e($a1) -/* 04167C 80040A7C A0A7007F */ sb $a3, 0x7f($a1) -/* 041680 80040A80 A4AC007A */ sh $t4, 0x7a($a1) -/* 041684 80040A84 84CD0000 */ lh $t5, ($a2) -/* 041688 80040A88 24C60006 */ addiu $a2, $a2, 6 -/* 04168C 80040A8C A4AD00B2 */ sh $t5, 0xb2($a1) -/* 041690 80040A90 84CEFFFC */ lh $t6, -4($a2) -/* 041694 80040A94 00000000 */ nop -/* 041698 80040A98 A4AE00B4 */ sh $t6, 0xb4($a1) -/* 04169C 80040A9C 84CFFFFE */ lh $t7, -2($a2) -/* 0416A0 80040AA0 A0A700B8 */ sb $a3, 0xb8($a1) -/* 0416A4 80040AA4 A0A700B9 */ sb $a3, 0xb9($a1) -/* 0416A8 80040AA8 A0A700BA */ sb $a3, 0xba($a1) -/* 0416AC 80040AAC A0A700BB */ sb $a3, 0xbb($a1) -/* 0416B0 80040AB0 1468FFE8 */ bne $v1, $t0, .L80040A54 -/* 0416B4 80040AB4 A4AF00B6 */ sh $t7, 0xb6($a1) -/* 0416B8 80040AB8 24180001 */ li $t8, 1 -/* 0416BC 80040ABC A05800FC */ sb $t8, 0xfc($v0) -.L80040AC0: -/* 0416C0 80040AC0 8FB90004 */ lw $t9, 4($sp) -/* 0416C4 80040AC4 00402825 */ move $a1, $v0 -/* 0416C8 80040AC8 9329000B */ lbu $t1, 0xb($t9) -/* 0416CC 80040ACC 3C06800E */ lui $a2, %hi(D_800DCAA8) # $a2, 0x800e -/* 0416D0 80040AD0 44892000 */ mtc1 $t1, $f4 -/* 0416D4 80040AD4 05210005 */ bgez $t1, .L80040AEC -/* 0416D8 80040AD8 468021A0 */ cvt.s.w $f6, $f4 -/* 0416DC 80040ADC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0416E0 80040AE0 44814000 */ mtc1 $at, $f8 -/* 0416E4 80040AE4 00000000 */ nop -/* 0416E8 80040AE8 46083180 */ add.s $f6, $f6, $f8 -.L80040AEC: -/* 0416EC 80040AEC 3C01800E */ lui $at, %hi(D_800E6218) # $at, 0x800e -/* 0416F0 80040AF0 C42A6218 */ lwc1 $f10, %lo(D_800E6218)($at) -/* 0416F4 80040AF4 8C8B0040 */ lw $t3, 0x40($a0) -/* 0416F8 80040AF8 460A3402 */ mul.s $f16, $f6, $f10 -/* 0416FC 80040AFC 00003825 */ move $a3, $zero -/* 041700 80040B00 24C6CAA8 */ addiu $a2, %lo(D_800DCAA8) # addiu $a2, $a2, -0x3558 -/* 041704 80040B04 E4900008 */ swc1 $f16, 8($a0) -/* 041708 80040B08 8FAA0004 */ lw $t2, 4($sp) -/* 04170C 80040B0C 816C0055 */ lb $t4, 0x55($t3) -/* 041710 80040B10 9143000A */ lbu $v1, 0xa($t2) -/* 041714 80040B14 00000000 */ nop -/* 041718 80040B18 006C082A */ slt $at, $v1, $t4 -/* 04171C 80040B1C 10200007 */ beqz $at, .L80040B3C -/* 041720 80040B20 00000000 */ nop -/* 041724 80040B24 8C8D0068 */ lw $t5, 0x68($a0) -/* 041728 80040B28 00037080 */ sll $t6, $v1, 2 -/* 04172C 80040B2C 01AE7821 */ addu $t7, $t5, $t6 -/* 041730 80040B30 8DF80000 */ lw $t8, ($t7) -/* 041734 80040B34 10000006 */ b .L80040B50 -/* 041738 80040B38 AC5800F8 */ sw $t8, 0xf8($v0) -.L80040B3C: -/* 04173C 80040B3C 8C990068 */ lw $t9, 0x68($a0) -/* 041740 80040B40 00000000 */ nop -/* 041744 80040B44 8F290000 */ lw $t1, ($t9) -/* 041748 80040B48 00000000 */ nop -/* 04174C 80040B4C AC4900F8 */ sw $t1, 0xf8($v0) -.L80040B50: -/* 041750 80040B50 8C4300F8 */ lw $v1, 0xf8($v0) -/* 041754 80040B54 3C02800E */ lui $v0, %hi(D_800DCB28) # $v0, 0x800e -/* 041758 80040B58 1060000A */ beqz $v1, .L80040B84 -/* 04175C 80040B5C 2442CB28 */ addiu $v0, %lo(D_800DCB28) # addiu $v0, $v0, -0x34d8 -/* 041760 80040B60 90670000 */ lbu $a3, ($v1) -/* 041764 80040B64 90640001 */ lbu $a0, 1($v1) -/* 041768 80040B68 24E7FFFF */ addiu $a3, $a3, -1 -/* 04176C 80040B6C 2484FFFF */ addiu $a0, $a0, -1 -/* 041770 80040B70 00075140 */ sll $t2, $a3, 5 -/* 041774 80040B74 00045940 */ sll $t3, $a0, 5 -/* 041778 80040B78 01403825 */ move $a3, $t2 -/* 04177C 80040B7C 10000002 */ b .L80040B88 -/* 041780 80040B80 01602025 */ move $a0, $t3 -.L80040B84: -/* 041784 80040B84 00002025 */ move $a0, $zero -.L80040B88: -/* 041788 80040B88 84CC0004 */ lh $t4, 4($a2) -/* 04178C 80040B8C 24C60020 */ addiu $a2, $a2, 0x20 -/* 041790 80040B90 01876824 */ and $t5, $t4, $a3 -/* 041794 80040B94 A4AD0004 */ sh $t5, 4($a1) -/* 041798 80040B98 84CEFFE6 */ lh $t6, -0x1a($a2) -/* 04179C 80040B9C 24A50020 */ addiu $a1, $a1, 0x20 -/* 0417A0 80040BA0 01C47824 */ and $t7, $t6, $a0 -/* 0417A4 80040BA4 A4AFFFE6 */ sh $t7, -0x1a($a1) -/* 0417A8 80040BA8 84D8FFE8 */ lh $t8, -0x18($a2) -/* 0417AC 80040BAC 00000000 */ nop -/* 0417B0 80040BB0 0307C824 */ and $t9, $t8, $a3 -/* 0417B4 80040BB4 A4B9FFE8 */ sh $t9, -0x18($a1) -/* 0417B8 80040BB8 84C9FFEA */ lh $t1, -0x16($a2) -/* 0417BC 80040BBC 00000000 */ nop -/* 0417C0 80040BC0 01245024 */ and $t2, $t1, $a0 -/* 0417C4 80040BC4 A4AAFFEA */ sh $t2, -0x16($a1) -/* 0417C8 80040BC8 84CBFFEC */ lh $t3, -0x14($a2) -/* 0417CC 80040BCC 00000000 */ nop -/* 0417D0 80040BD0 01676024 */ and $t4, $t3, $a3 -/* 0417D4 80040BD4 A4ACFFEC */ sh $t4, -0x14($a1) -/* 0417D8 80040BD8 84CDFFEE */ lh $t5, -0x12($a2) -/* 0417DC 80040BDC 00000000 */ nop -/* 0417E0 80040BE0 01A47024 */ and $t6, $t5, $a0 -/* 0417E4 80040BE4 A4AEFFEE */ sh $t6, -0x12($a1) -/* 0417E8 80040BE8 84CFFFF4 */ lh $t7, -0xc($a2) -/* 0417EC 80040BEC 00000000 */ nop -/* 0417F0 80040BF0 01E7C024 */ and $t8, $t7, $a3 -/* 0417F4 80040BF4 A4B8FFF4 */ sh $t8, -0xc($a1) -/* 0417F8 80040BF8 84D9FFF6 */ lh $t9, -0xa($a2) -/* 0417FC 80040BFC 00000000 */ nop -/* 041800 80040C00 03244824 */ and $t1, $t9, $a0 -/* 041804 80040C04 A4A9FFF6 */ sh $t1, -0xa($a1) -/* 041808 80040C08 84CAFFF8 */ lh $t2, -8($a2) -/* 04180C 80040C0C 00000000 */ nop -/* 041810 80040C10 01475824 */ and $t3, $t2, $a3 -/* 041814 80040C14 A4ABFFF8 */ sh $t3, -8($a1) -/* 041818 80040C18 84CCFFFA */ lh $t4, -6($a2) -/* 04181C 80040C1C 00000000 */ nop -/* 041820 80040C20 01846824 */ and $t5, $t4, $a0 -/* 041824 80040C24 A4ADFFFA */ sh $t5, -6($a1) -/* 041828 80040C28 84CEFFFC */ lh $t6, -4($a2) -/* 04182C 80040C2C 00000000 */ nop -/* 041830 80040C30 01C77824 */ and $t7, $t6, $a3 -/* 041834 80040C34 A4AFFFFC */ sh $t7, -4($a1) -/* 041838 80040C38 84D8FFFE */ lh $t8, -2($a2) -/* 04183C 80040C3C 00000000 */ nop -/* 041840 80040C40 0304C824 */ and $t9, $t8, $a0 -/* 041844 80040C44 14C2FFD0 */ bne $a2, $v0, .L80040B88 -/* 041848 80040C48 A4B9FFFE */ sh $t9, -2($a1) -/* 04184C 80040C4C 03E00008 */ jr $ra -/* 041850 80040C50 00000000 */ nop - -glabel func_80040C54 -/* 041854 80040C54 27BDFF68 */ addiu $sp, $sp, -0x98 -/* 041858 80040C58 AFBF0024 */ sw $ra, 0x24($sp) -/* 04185C 80040C5C AFB00020 */ sw $s0, 0x20($sp) -/* 041860 80040C60 AFA5009C */ sw $a1, 0x9c($sp) -/* 041864 80040C64 8C89003C */ lw $t1, 0x3c($a0) -/* 041868 80040C68 8C880064 */ lw $t0, 0x64($a0) -/* 04186C 80040C6C 912E000A */ lbu $t6, 0xa($t1) -/* 041870 80040C70 8FAC009C */ lw $t4, 0x9c($sp) -/* 041874 80040C74 39CF0002 */ xori $t7, $t6, 2 -/* 041878 80040C78 2DEF0001 */ sltiu $t7, $t7, 1 -/* 04187C 80040C7C AFAF0064 */ sw $t7, 0x64($sp) -/* 041880 80040C80 85030106 */ lh $v1, 0x106($t0) -/* 041884 80040C84 00808025 */ move $s0, $a0 -/* 041888 80040C88 00035400 */ sll $t2, $v1, 0x10 -/* 04188C 80040C8C 000AC403 */ sra $t8, $t2, 0x10 -/* 041890 80040C90 07010004 */ bgez $t8, .L80040CA4 -/* 041894 80040C94 03005025 */ move $t2, $t8 -/* 041898 80040C98 00185023 */ negu $t2, $t8 -/* 04189C 80040C9C 000ACC00 */ sll $t9, $t2, 0x10 -/* 0418A0 80040CA0 00195403 */ sra $t2, $t9, 0x10 -.L80040CA4: -/* 0418A4 80040CA4 014C0019 */ multu $t2, $t4 -/* 0418A8 80040CA8 3C01800E */ lui $at, %hi(D_800E621C) # $at, 0x800e -/* 0418AC 80040CAC C420621C */ lwc1 $f0, %lo(D_800E621C)($at) -/* 0418B0 80040CB0 8FAF0064 */ lw $t7, 0x64($sp) -/* 0418B4 80040CB4 3C01800E */ lui $at, %hi(D_800E6220) # $at, 0x800e -/* 0418B8 80040CB8 46000406 */ mov.s $f16, $f0 -/* 0418BC 80040CBC 00005012 */ mflo $t2 -/* 0418C0 80040CC0 000A6C00 */ sll $t5, $t2, 0x10 -/* 0418C4 80040CC4 11E00005 */ beqz $t7, .L80040CDC -/* 0418C8 80040CC8 000D5403 */ sra $t2, $t5, 0x10 -/* 0418CC 80040CCC C4246220 */ lwc1 $f4, %lo(D_800E6220)($at) -/* 0418D0 80040CD0 00000000 */ nop -/* 0418D4 80040CD4 46040402 */ mul.s $f16, $f0, $f4 -/* 0418D8 80040CD8 00000000 */ nop -.L80040CDC: -/* 0418DC 80040CDC 3C014040 */ li $at, 0x40400000 # 3.000000 -/* 0418E0 80040CE0 44810000 */ mtc1 $at, $f0 -/* 0418E4 80040CE4 8FB80064 */ lw $t8, 0x64($sp) -/* 0418E8 80040CE8 3C01800E */ lui $at, %hi(D_800E6224) # $at, 0x800e -/* 0418EC 80040CEC 13000005 */ beqz $t8, .L80040D04 -/* 0418F0 80040CF0 E7A00078 */ swc1 $f0, 0x78($sp) -/* 0418F4 80040CF4 C4266224 */ lwc1 $f6, %lo(D_800E6224)($at) -/* 0418F8 80040CF8 00000000 */ nop -/* 0418FC 80040CFC 46060202 */ mul.s $f8, $f0, $f6 -/* 041900 80040D00 E7A80078 */ swc1 $f8, 0x78($sp) -.L80040D04: -/* 041904 80040D04 910200FD */ lbu $v0, 0xfd($t0) -/* 041908 80040D08 00000000 */ nop -/* 04190C 80040D0C 2C410005 */ sltiu $at, $v0, 5 -/* 041910 80040D10 102002C9 */ beqz $at, .L80041838 -/* 041914 80040D14 0002C880 */ sll $t9, $v0, 2 -/* 041918 80040D18 3C01800E */ lui $at, 0x800e -/* 04191C 80040D1C 00390821 */ addu $at, $at, $t9 -/* 041920 80040D20 8C396228 */ lw $t9, 0x6228($at) -/* 041924 80040D24 00000000 */ nop -/* 041928 80040D28 03200008 */ jr $t9 -/* 04192C 80040D2C 00000000 */ nop -/* 041930 80040D30 44807000 */ mtc1 $zero, $f14 -/* 041934 80040D34 240E0001 */ li $t6, 1 -/* 041938 80040D38 E50E0108 */ swc1 $f14, 0x108($t0) -/* 04193C 80040D3C 952B0008 */ lhu $t3, 8($t1) -/* 041940 80040D40 27AF0044 */ addiu $t7, $sp, 0x44 -/* 041944 80040D44 448B5000 */ mtc1 $t3, $f10 -/* 041948 80040D48 05610005 */ bgez $t3, .L80040D60 -/* 04194C 80040D4C 46805020 */ cvt.s.w $f0, $f10 -/* 041950 80040D50 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 041954 80040D54 44819000 */ mtc1 $at, $f18 -/* 041958 80040D58 00000000 */ nop -/* 04195C 80040D5C 46120000 */ add.s $f0, $f0, $f18 -.L80040D60: -/* 041960 80040D60 852D0006 */ lh $t5, 6($t1) -/* 041964 80040D64 852C0002 */ lh $t4, 2($t1) -/* 041968 80040D68 448D3000 */ mtc1 $t5, $f6 -/* 04196C 80040D6C 448C2000 */ mtc1 $t4, $f4 -/* 041970 80040D70 468031A0 */ cvt.s.w $f6, $f6 -/* 041974 80040D74 44070000 */ mfc1 $a3, $f0 -/* 041978 80040D78 E7A00084 */ swc1 $f0, 0x84($sp) -/* 04197C 80040D7C 44063000 */ mfc1 $a2, $f6 -/* 041980 80040D80 AFA90038 */ sw $t1, 0x38($sp) -/* 041984 80040D84 AFA8003C */ sw $t0, 0x3c($sp) -/* 041988 80040D88 AFAF0014 */ sw $t7, 0x14($sp) -/* 04198C 80040D8C AFAE0010 */ sw $t6, 0x10($sp) -/* 041990 80040D90 0C005B7A */ jal func_80016DE8 -/* 041994 80040D94 46802320 */ cvt.s.w $f12, $f4 -/* 041998 80040D98 0002C400 */ sll $t8, $v0, 0x10 -/* 04199C 80040D9C 8FA8003C */ lw $t0, 0x3c($sp) -/* 0419A0 80040DA0 8FA90038 */ lw $t1, 0x38($sp) -/* 0419A4 80040DA4 C7A00084 */ lwc1 $f0, 0x84($sp) -/* 0419A8 80040DA8 0018CC03 */ sra $t9, $t8, 0x10 -/* 0419AC 80040DAC 1B200008 */ blez $t9, .L80040DD0 -/* 0419B0 80040DB0 24180001 */ li $t8, 1 -/* 0419B4 80040DB4 8FAB0044 */ lw $t3, 0x44($sp) -/* 0419B8 80040DB8 240C00F0 */ li $t4, 240 -/* 0419BC 80040DBC 240D0003 */ li $t5, 3 -/* 0419C0 80040DC0 A50C0104 */ sh $t4, 0x104($t0) -/* 0419C4 80040DC4 A10D00FD */ sb $t5, 0xfd($t0) -/* 0419C8 80040DC8 10000014 */ b .L80040E1C -/* 0419CC 80040DCC AD0B0100 */ sw $t3, 0x100($t0) -.L80040DD0: -/* 0419D0 80040DD0 852F0006 */ lh $t7, 6($t1) -/* 0419D4 80040DD4 852E0002 */ lh $t6, 2($t1) -/* 0419D8 80040DD8 448F5000 */ mtc1 $t7, $f10 -/* 0419DC 80040DDC 448E4000 */ mtc1 $t6, $f8 -/* 0419E0 80040DE0 468052A0 */ cvt.s.w $f10, $f10 -/* 0419E4 80040DE4 44807000 */ mtc1 $zero, $f14 -/* 0419E8 80040DE8 44070000 */ mfc1 $a3, $f0 -/* 0419EC 80040DEC 44065000 */ mfc1 $a2, $f10 -/* 0419F0 80040DF0 AFA8003C */ sw $t0, 0x3c($sp) -/* 0419F4 80040DF4 AFB80010 */ sw $t8, 0x10($sp) -/* 0419F8 80040DF8 0C005B1A */ jal func_80016C68 -/* 0419FC 80040DFC 46804320 */ cvt.s.w $f12, $f8 -/* 041A00 80040E00 8FA8003C */ lw $t0, 0x3c($sp) -/* 041A04 80040E04 10400005 */ beqz $v0, .L80040E1C -/* 041A08 80040E08 AD020100 */ sw $v0, 0x100($t0) -/* 041A0C 80040E0C 241900F0 */ li $t9, 240 -/* 041A10 80040E10 240B0003 */ li $t3, 3 -/* 041A14 80040E14 A5190104 */ sh $t9, 0x104($t0) -/* 041A18 80040E18 A10B00FD */ sb $t3, 0xfd($t0) -.L80040E1C: -/* 041A1C 80040E1C 860C0018 */ lh $t4, 0x18($s0) -/* 041A20 80040E20 8FAD009C */ lw $t5, 0x9c($sp) -/* 041A24 80040E24 24190078 */ li $t9, 120 -/* 041A28 80040E28 018D7021 */ addu $t6, $t4, $t5 -/* 041A2C 80040E2C 31CF00FF */ andi $t7, $t6, 0xff -/* 041A30 80040E30 A60F0018 */ sh $t7, 0x18($s0) -/* 041A34 80040E34 8FB80064 */ lw $t8, 0x64($sp) -/* 041A38 80040E38 00000000 */ nop -/* 041A3C 80040E3C 13000002 */ beqz $t8, .L80040E48 -/* 041A40 80040E40 00000000 */ nop -/* 041A44 80040E44 A6190018 */ sh $t9, 0x18($s0) -.L80040E48: -/* 041A48 80040E48 910200FD */ lbu $v0, 0xfd($t0) -/* 041A4C 80040E4C 1000027A */ b .L80041838 -/* 041A50 80040E50 00000000 */ nop -/* 041A54 80040E54 28610480 */ slti $at, $v1, 0x480 -/* 041A58 80040E58 1020000C */ beqz $at, .L80040E8C -/* 041A5C 80040E5C 00000000 */ nop -/* 041A60 80040E60 8FAB009C */ lw $t3, 0x9c($sp) -/* 041A64 80040E64 240F0480 */ li $t7, 1152 -/* 041A68 80040E68 000B6100 */ sll $t4, $t3, 4 -/* 041A6C 80040E6C 006C6821 */ addu $t5, $v1, $t4 -/* 041A70 80040E70 A50D0106 */ sh $t5, 0x106($t0) -/* 041A74 80040E74 850E0106 */ lh $t6, 0x106($t0) -/* 041A78 80040E78 00000000 */ nop -/* 041A7C 80040E7C 29C10481 */ slti $at, $t6, 0x481 -/* 041A80 80040E80 14200002 */ bnez $at, .L80040E8C -/* 041A84 80040E84 00000000 */ nop -/* 041A88 80040E88 A50F0106 */ sh $t7, 0x106($t0) -.L80040E8C: -/* 041A8C 80040E8C 85380002 */ lh $t8, 2($t1) -/* 041A90 80040E90 C612000C */ lwc1 $f18, 0xc($s0) -/* 041A94 80040E94 C6080014 */ lwc1 $f8, 0x14($s0) -/* 041A98 80040E98 85390006 */ lh $t9, 6($t1) -/* 041A9C 80040E9C 44982000 */ mtc1 $t8, $f4 -/* 041AA0 80040EA0 44995000 */ mtc1 $t9, $f10 -/* 041AA4 80040EA4 468021A0 */ cvt.s.w $f6, $f4 -/* 041AA8 80040EA8 8FAB009C */ lw $t3, 0x9c($sp) -/* 041AAC 80040EAC E7B0007C */ swc1 $f16, 0x7c($sp) -/* 041AB0 80040EB0 46805120 */ cvt.s.w $f4, $f10 -/* 041AB4 80040EB4 000B6100 */ sll $t4, $t3, 4 -/* 041AB8 80040EB8 AFAC002C */ sw $t4, 0x2c($sp) -/* 041ABC 80040EBC 46069301 */ sub.s $f12, $f18, $f6 -/* 041AC0 80040EC0 A7AA0072 */ sh $t2, 0x72($sp) -/* 041AC4 80040EC4 46044381 */ sub.s $f14, $f8, $f4 -/* 041AC8 80040EC8 E7AC0094 */ swc1 $f12, 0x94($sp) -/* 041ACC 80040ECC E7AE008C */ swc1 $f14, 0x8c($sp) -/* 041AD0 80040ED0 AFA90038 */ sw $t1, 0x38($sp) -/* 041AD4 80040ED4 0C01C1D4 */ jal func_80070750 -/* 041AD8 80040ED8 AFA8003C */ sw $t0, 0x3c($sp) -/* 041ADC 80040EDC 86040000 */ lh $a0, ($s0) -/* 041AE0 80040EE0 8FA8003C */ lw $t0, 0x3c($sp) -/* 041AE4 80040EE4 00441823 */ subu $v1, $v0, $a0 -/* 041AE8 80040EE8 00037C00 */ sll $t7, $v1, 0x10 -/* 041AEC 80040EEC 8FA90038 */ lw $t1, 0x38($sp) -/* 041AF0 80040EF0 87AA0072 */ lh $t2, 0x72($sp) -/* 041AF4 80040EF4 C7B0007C */ lwc1 $f16, 0x7c($sp) -/* 041AF8 80040EF8 000FC403 */ sra $t8, $t7, 0x10 -/* 041AFC 80040EFC 0701000A */ bgez $t8, .L80040F28 -/* 041B00 80040F00 03001825 */ move $v1, $t8 -/* 041B04 80040F04 000AC823 */ negu $t9, $t2 -/* 041B08 80040F08 0338082A */ slt $at, $t9, $t8 -/* 041B0C 80040F0C 10200004 */ beqz $at, .L80040F20 -/* 041B10 80040F10 008A6023 */ subu $t4, $a0, $t2 -/* 041B14 80040F14 00985821 */ addu $t3, $a0, $t8 -/* 041B18 80040F18 1000000B */ b .L80040F48 -/* 041B1C 80040F1C A60B0000 */ sh $t3, ($s0) -.L80040F20: -/* 041B20 80040F20 10000009 */ b .L80040F48 -/* 041B24 80040F24 A60C0000 */ sh $t4, ($s0) -.L80040F28: -/* 041B28 80040F28 18600007 */ blez $v1, .L80040F48 -/* 041B2C 80040F2C 006A082A */ slt $at, $v1, $t2 -/* 041B30 80040F30 10200004 */ beqz $at, .L80040F44 -/* 041B34 80040F34 008A7021 */ addu $t6, $a0, $t2 -/* 041B38 80040F38 00836821 */ addu $t5, $a0, $v1 -/* 041B3C 80040F3C 10000002 */ b .L80040F48 -/* 041B40 80040F40 A60D0000 */ sh $t5, ($s0) -.L80040F44: -/* 041B44 80040F44 A60E0000 */ sh $t6, ($s0) -.L80040F48: -/* 041B48 80040F48 852F0004 */ lh $t7, 4($t1) -/* 041B4C 80040F4C C60A0010 */ lwc1 $f10, 0x10($s0) -/* 041B50 80040F50 448F9000 */ mtc1 $t7, $f18 -/* 041B54 80040F54 44804000 */ mtc1 $zero, $f8 -/* 041B58 80040F58 468091A0 */ cvt.s.w $f6, $f18 -/* 041B5C 80040F5C 8FB8009C */ lw $t8, 0x9c($sp) -/* 041B60 80040F60 240F0001 */ li $t7, 1 -/* 041B64 80040F64 460A3001 */ sub.s $f0, $f6, $f10 -/* 041B68 80040F68 4608003C */ c.lt.s $f0, $f8 -/* 041B6C 80040F6C 00000000 */ nop -/* 041B70 80040F70 4500000F */ bc1f .L80040FB0 -/* 041B74 80040F74 00000000 */ nop -/* 041B78 80040F78 44989000 */ mtc1 $t8, $f18 -/* 041B7C 80040F7C C6040020 */ lwc1 $f4, 0x20($s0) -/* 041B80 80040F80 468091A0 */ cvt.s.w $f6, $f18 -/* 041B84 80040F84 46068282 */ mul.s $f10, $f16, $f6 -/* 041B88 80040F88 460A2201 */ sub.s $f8, $f4, $f10 -/* 041B8C 80040F8C E6080020 */ swc1 $f8, 0x20($s0) -/* 041B90 80040F90 C6120020 */ lwc1 $f18, 0x20($s0) -/* 041B94 80040F94 00000000 */ nop -/* 041B98 80040F98 4600903C */ c.lt.s $f18, $f0 -/* 041B9C 80040F9C 00000000 */ nop -/* 041BA0 80040FA0 4500001A */ bc1f .L8004100C -/* 041BA4 80040FA4 00000000 */ nop -/* 041BA8 80040FA8 10000018 */ b .L8004100C -/* 041BAC 80040FAC E6000020 */ swc1 $f0, 0x20($s0) -.L80040FB0: -/* 041BB0 80040FB0 44803000 */ mtc1 $zero, $f6 -/* 041BB4 80040FB4 8FB9009C */ lw $t9, 0x9c($sp) -/* 041BB8 80040FB8 4600303C */ c.lt.s $f6, $f0 -/* 041BBC 80040FBC 00000000 */ nop -/* 041BC0 80040FC0 4500000F */ bc1f .L80041000 -/* 041BC4 80040FC4 00000000 */ nop -/* 041BC8 80040FC8 44995000 */ mtc1 $t9, $f10 -/* 041BCC 80040FCC C6040020 */ lwc1 $f4, 0x20($s0) -/* 041BD0 80040FD0 46805220 */ cvt.s.w $f8, $f10 -/* 041BD4 80040FD4 46088482 */ mul.s $f18, $f16, $f8 -/* 041BD8 80040FD8 46122180 */ add.s $f6, $f4, $f18 -/* 041BDC 80040FDC E6060020 */ swc1 $f6, 0x20($s0) -/* 041BE0 80040FE0 C60A0020 */ lwc1 $f10, 0x20($s0) -/* 041BE4 80040FE4 00000000 */ nop -/* 041BE8 80040FE8 460A003C */ c.lt.s $f0, $f10 -/* 041BEC 80040FEC 00000000 */ nop -/* 041BF0 80040FF0 45000006 */ bc1f .L8004100C -/* 041BF4 80040FF4 00000000 */ nop -/* 041BF8 80040FF8 10000004 */ b .L8004100C -/* 041BFC 80040FFC E6000020 */ swc1 $f0, 0x20($s0) -.L80041000: -/* 041C00 80041000 44804000 */ mtc1 $zero, $f8 -/* 041C04 80041004 00000000 */ nop -/* 041C08 80041008 E6080020 */ swc1 $f8, 0x20($s0) -.L8004100C: -/* 041C0C 8004100C 910B00FD */ lbu $t3, 0xfd($t0) -/* 041C10 80041010 24010001 */ li $at, 1 -/* 041C14 80041014 1561003B */ bne $t3, $at, .L80041104 -/* 041C18 80041018 27B80044 */ addiu $t8, $sp, 0x44 -/* 041C1C 8004101C 952C0008 */ lhu $t4, 8($t1) -/* 041C20 80041020 44807000 */ mtc1 $zero, $f14 -/* 041C24 80041024 448C2000 */ mtc1 $t4, $f4 -/* 041C28 80041028 05810005 */ bgez $t4, .L80041040 -/* 041C2C 8004102C 46802020 */ cvt.s.w $f0, $f4 -/* 041C30 80041030 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 041C34 80041034 44819000 */ mtc1 $at, $f18 -/* 041C38 80041038 00000000 */ nop -/* 041C3C 8004103C 46120000 */ add.s $f0, $f0, $f18 -.L80041040: -/* 041C40 80041040 852E0006 */ lh $t6, 6($t1) -/* 041C44 80041044 852D0002 */ lh $t5, 2($t1) -/* 041C48 80041048 448E5000 */ mtc1 $t6, $f10 -/* 041C4C 8004104C 448D3000 */ mtc1 $t5, $f6 -/* 041C50 80041050 468052A0 */ cvt.s.w $f10, $f10 -/* 041C54 80041054 44070000 */ mfc1 $a3, $f0 -/* 041C58 80041058 E7A00084 */ swc1 $f0, 0x84($sp) -/* 041C5C 8004105C 44065000 */ mfc1 $a2, $f10 -/* 041C60 80041060 AFA90038 */ sw $t1, 0x38($sp) -/* 041C64 80041064 AFA8003C */ sw $t0, 0x3c($sp) -/* 041C68 80041068 AFB80014 */ sw $t8, 0x14($sp) -/* 041C6C 8004106C AFAF0010 */ sw $t7, 0x10($sp) -/* 041C70 80041070 0C005B7A */ jal func_80016DE8 -/* 041C74 80041074 46803320 */ cvt.s.w $f12, $f6 -/* 041C78 80041078 0002CC00 */ sll $t9, $v0, 0x10 -/* 041C7C 8004107C 8FA8003C */ lw $t0, 0x3c($sp) -/* 041C80 80041080 8FA90038 */ lw $t1, 0x38($sp) -/* 041C84 80041084 C7A00084 */ lwc1 $f0, 0x84($sp) -/* 041C88 80041088 00195C03 */ sra $t3, $t9, 0x10 -/* 041C8C 8004108C 19600008 */ blez $t3, .L800410B0 -/* 041C90 80041090 24190001 */ li $t9, 1 -/* 041C94 80041094 8FAC0044 */ lw $t4, 0x44($sp) -/* 041C98 80041098 240D0078 */ li $t5, 120 -/* 041C9C 8004109C 240E0003 */ li $t6, 3 -/* 041CA0 800410A0 A50D0104 */ sh $t5, 0x104($t0) -/* 041CA4 800410A4 A10E00FD */ sb $t6, 0xfd($t0) -/* 041CA8 800410A8 10000016 */ b .L80041104 -/* 041CAC 800410AC AD0C0100 */ sw $t4, 0x100($t0) -.L800410B0: -/* 041CB0 800410B0 85380006 */ lh $t8, 6($t1) -/* 041CB4 800410B4 852F0002 */ lh $t7, 2($t1) -/* 041CB8 800410B8 44982000 */ mtc1 $t8, $f4 -/* 041CBC 800410BC 448F4000 */ mtc1 $t7, $f8 -/* 041CC0 800410C0 46802120 */ cvt.s.w $f4, $f4 -/* 041CC4 800410C4 44807000 */ mtc1 $zero, $f14 -/* 041CC8 800410C8 44070000 */ mfc1 $a3, $f0 -/* 041CCC 800410CC 44062000 */ mfc1 $a2, $f4 -/* 041CD0 800410D0 AFA90038 */ sw $t1, 0x38($sp) -/* 041CD4 800410D4 AFA8003C */ sw $t0, 0x3c($sp) -/* 041CD8 800410D8 AFB90010 */ sw $t9, 0x10($sp) -/* 041CDC 800410DC 0C005B1A */ jal func_80016C68 -/* 041CE0 800410E0 46804320 */ cvt.s.w $f12, $f8 -/* 041CE4 800410E4 8FA8003C */ lw $t0, 0x3c($sp) -/* 041CE8 800410E8 8FA90038 */ lw $t1, 0x38($sp) -/* 041CEC 800410EC 10400005 */ beqz $v0, .L80041104 -/* 041CF0 800410F0 AD020100 */ sw $v0, 0x100($t0) -/* 041CF4 800410F4 240B00F0 */ li $t3, 240 -/* 041CF8 800410F8 240C0003 */ li $t4, 3 -/* 041CFC 800410FC A50B0104 */ sh $t3, 0x104($t0) -/* 041D00 80041100 A10C00FD */ sb $t4, 0xfd($t0) -.L80041104: -/* 041D04 80041104 910D00FD */ lbu $t5, 0xfd($t0) -/* 041D08 80041108 24010003 */ li $at, 3 -/* 041D0C 8004110C 11A1002C */ beq $t5, $at, .L800411C0 -/* 041D10 80041110 00000000 */ nop -/* 041D14 80041114 852E0004 */ lh $t6, 4($t1) -/* 041D18 80041118 C7A00094 */ lwc1 $f0, 0x94($sp) -/* 041D1C 8004111C 448E3000 */ mtc1 $t6, $f6 -/* 041D20 80041120 C6120010 */ lwc1 $f18, 0x10($s0) -/* 041D24 80041124 468032A0 */ cvt.s.w $f10, $f6 -/* 041D28 80041128 C7AE008C */ lwc1 $f14, 0x8c($sp) -/* 041D2C 8004112C AFA8003C */ sw $t0, 0x3c($sp) -/* 041D30 80041130 46000202 */ mul.s $f8, $f0, $f0 -/* 041D34 80041134 460A9081 */ sub.s $f2, $f18, $f10 -/* 041D38 80041138 E7A20090 */ swc1 $f2, 0x90($sp) -/* 041D3C 8004113C 46021102 */ mul.s $f4, $f2, $f2 -/* 041D40 80041140 00000000 */ nop -/* 041D44 80041144 460E7482 */ mul.s $f18, $f14, $f14 -/* 041D48 80041148 46044180 */ add.s $f6, $f8, $f4 -/* 041D4C 8004114C 0C0326B4 */ jal sqrtf -/* 041D50 80041150 46123300 */ add.s $f12, $f6, $f18 -/* 041D54 80041154 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 041D58 80041158 44815000 */ mtc1 $at, $f10 -/* 041D5C 8004115C 8FA8003C */ lw $t0, 0x3c($sp) -/* 041D60 80041160 460A003C */ c.lt.s $f0, $f10 -/* 041D64 80041164 C7A20090 */ lwc1 $f2, 0x90($sp) -/* 041D68 80041168 45000015 */ bc1f .L800411C0 -/* 041D6C 8004116C 00000000 */ nop -/* 041D70 80041170 AFA8003C */ sw $t0, 0x3c($sp) -/* 041D74 80041174 0C004558 */ jal func_80011560 -/* 041D78 80041178 E7A20090 */ swc1 $f2, 0x90($sp) -/* 041D7C 8004117C C7A20090 */ lwc1 $f2, 0x90($sp) -/* 041D80 80041180 C7A80094 */ lwc1 $f8, 0x94($sp) -/* 041D84 80041184 C7B2008C */ lwc1 $f18, 0x8c($sp) -/* 041D88 80041188 46001187 */ neg.s $f6, $f2 -/* 041D8C 8004118C 46004107 */ neg.s $f4, $f8 -/* 041D90 80041190 46009287 */ neg.s $f10, $f18 -/* 041D94 80041194 44075000 */ mfc1 $a3, $f10 -/* 041D98 80041198 44052000 */ mfc1 $a1, $f4 -/* 041D9C 8004119C 44063000 */ mfc1 $a2, $f6 -/* 041DA0 800411A0 0C00455C */ jal func_80011570 -/* 041DA4 800411A4 02002025 */ move $a0, $s0 -/* 041DA8 800411A8 8FA8003C */ lw $t0, 0x3c($sp) -/* 041DAC 800411AC 44804000 */ mtc1 $zero, $f8 -/* 041DB0 800411B0 44802000 */ mtc1 $zero, $f4 -/* 041DB4 800411B4 E6080020 */ swc1 $f8, 0x20($s0) -/* 041DB8 800411B8 A10000FD */ sb $zero, 0xfd($t0) -/* 041DBC 800411BC E5040108 */ swc1 $f4, 0x108($t0) -.L800411C0: -/* 041DC0 800411C0 860F0018 */ lh $t7, 0x18($s0) -/* 041DC4 800411C4 8FB8002C */ lw $t8, 0x2c($sp) -/* 041DC8 800411C8 00000000 */ nop -/* 041DCC 800411CC 01F8C821 */ addu $t9, $t7, $t8 -/* 041DD0 800411D0 332B00FF */ andi $t3, $t9, 0xff -/* 041DD4 800411D4 A60B0018 */ sh $t3, 0x18($s0) -/* 041DD8 800411D8 910200FD */ lbu $v0, 0xfd($t0) -/* 041DDC 800411DC 10000196 */ b .L80041838 -/* 041DE0 800411E0 00000000 */ nop -/* 041DE4 800411E4 28610480 */ slti $at, $v1, 0x480 -/* 041DE8 800411E8 1020000C */ beqz $at, .L8004121C -/* 041DEC 800411EC 00000000 */ nop -/* 041DF0 800411F0 8FAC009C */ lw $t4, 0x9c($sp) -/* 041DF4 800411F4 24180480 */ li $t8, 1152 -/* 041DF8 800411F8 000C6900 */ sll $t5, $t4, 4 -/* 041DFC 800411FC 006D7021 */ addu $t6, $v1, $t5 -/* 041E00 80041200 A50E0106 */ sh $t6, 0x106($t0) -/* 041E04 80041204 850F0106 */ lh $t7, 0x106($t0) -/* 041E08 80041208 00000000 */ nop -/* 041E0C 8004120C 29E10481 */ slti $at, $t7, 0x481 -/* 041E10 80041210 14200002 */ bnez $at, .L8004121C -/* 041E14 80041214 00000000 */ nop -/* 041E18 80041218 A5180106 */ sh $t8, 0x106($t0) -.L8004121C: -/* 041E1C 8004121C 85390002 */ lh $t9, 2($t1) -/* 041E20 80041220 8D020100 */ lw $v0, 0x100($t0) -/* 041E24 80041224 44999000 */ mtc1 $t9, $f18 -/* 041E28 80041228 952C0008 */ lhu $t4, 8($t1) -/* 041E2C 8004122C 468092A0 */ cvt.s.w $f10, $f18 -/* 041E30 80041230 C446000C */ lwc1 $f6, 0xc($v0) -/* 041E34 80041234 000C6840 */ sll $t5, $t4, 1 -/* 041E38 80041238 460A3081 */ sub.s $f2, $f6, $f10 -/* 041E3C 8004123C 448D3000 */ mtc1 $t5, $f6 -/* 041E40 80041240 852B0006 */ lh $t3, 6($t1) -/* 041E44 80041244 46803020 */ cvt.s.w $f0, $f6 -/* 041E48 80041248 448B2000 */ mtc1 $t3, $f4 -/* 041E4C 8004124C C4480014 */ lwc1 $f8, 0x14($v0) -/* 041E50 80041250 46000002 */ mul.s $f0, $f0, $f0 -/* 041E54 80041254 8FAE009C */ lw $t6, 0x9c($sp) -/* 041E58 80041258 27AD0044 */ addiu $t5, $sp, 0x44 -/* 041E5C 8004125C 000E7900 */ sll $t7, $t6, 4 -/* 041E60 80041260 468024A0 */ cvt.s.w $f18, $f4 -/* 041E64 80041264 AFAF002C */ sw $t7, 0x2c($sp) -/* 041E68 80041268 240C0001 */ li $t4, 1 -/* 041E6C 8004126C 46021282 */ mul.s $f10, $f2, $f2 -/* 041E70 80041270 46124301 */ sub.s $f12, $f8, $f18 -/* 041E74 80041274 460C6102 */ mul.s $f4, $f12, $f12 -/* 041E78 80041278 46045200 */ add.s $f8, $f10, $f4 -/* 041E7C 8004127C 4608003C */ c.lt.s $f0, $f8 -/* 041E80 80041280 00000000 */ nop -/* 041E84 80041284 4500003E */ bc1f .L80041380 -/* 041E88 80041288 00000000 */ nop -/* 041E8C 8004128C AD000100 */ sw $zero, 0x100($t0) -/* 041E90 80041290 95380008 */ lhu $t8, 8($t1) -/* 041E94 80041294 44807000 */ mtc1 $zero, $f14 -/* 041E98 80041298 44989000 */ mtc1 $t8, $f18 -/* 041E9C 8004129C 07010005 */ bgez $t8, .L800412B4 -/* 041EA0 800412A0 46809020 */ cvt.s.w $f0, $f18 -/* 041EA4 800412A4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 041EA8 800412A8 44813000 */ mtc1 $at, $f6 -/* 041EAC 800412AC 00000000 */ nop -/* 041EB0 800412B0 46060000 */ add.s $f0, $f0, $f6 -.L800412B4: -/* 041EB4 800412B4 85390002 */ lh $t9, 2($t1) -/* 041EB8 800412B8 852B0006 */ lh $t3, 6($t1) -/* 041EBC 800412BC 44995000 */ mtc1 $t9, $f10 -/* 041EC0 800412C0 448B2000 */ mtc1 $t3, $f4 -/* 041EC4 800412C4 44070000 */ mfc1 $a3, $f0 -/* 041EC8 800412C8 46802120 */ cvt.s.w $f4, $f4 -/* 041ECC 800412CC E7B0007C */ swc1 $f16, 0x7c($sp) -/* 041ED0 800412D0 E7A00084 */ swc1 $f0, 0x84($sp) -/* 041ED4 800412D4 44062000 */ mfc1 $a2, $f4 -/* 041ED8 800412D8 A7AA0072 */ sh $t2, 0x72($sp) -/* 041EDC 800412DC AFA90038 */ sw $t1, 0x38($sp) -/* 041EE0 800412E0 AFA8003C */ sw $t0, 0x3c($sp) -/* 041EE4 800412E4 AFAD0014 */ sw $t5, 0x14($sp) -/* 041EE8 800412E8 AFAC0010 */ sw $t4, 0x10($sp) -/* 041EEC 800412EC 0C005B7A */ jal func_80016DE8 -/* 041EF0 800412F0 46805320 */ cvt.s.w $f12, $f10 -/* 041EF4 800412F4 00027400 */ sll $t6, $v0, 0x10 -/* 041EF8 800412F8 8FA8003C */ lw $t0, 0x3c($sp) -/* 041EFC 800412FC 8FA90038 */ lw $t1, 0x38($sp) -/* 041F00 80041300 87AA0072 */ lh $t2, 0x72($sp) -/* 041F04 80041304 C7A00084 */ lwc1 $f0, 0x84($sp) -/* 041F08 80041308 C7B0007C */ lwc1 $f16, 0x7c($sp) -/* 041F0C 8004130C 000E7C03 */ sra $t7, $t6, 0x10 -/* 041F10 80041310 19E00006 */ blez $t7, .L8004132C -/* 041F14 80041314 240D0001 */ li $t5, 1 -/* 041F18 80041318 8FB80044 */ lw $t8, 0x44($sp) -/* 041F1C 8004131C 241900F0 */ li $t9, 240 -/* 041F20 80041320 A5190104 */ sh $t9, 0x104($t0) -/* 041F24 80041324 10000016 */ b .L80041380 -/* 041F28 80041328 AD180100 */ sw $t8, 0x100($t0) -.L8004132C: -/* 041F2C 8004132C 852C0006 */ lh $t4, 6($t1) -/* 041F30 80041330 852B0002 */ lh $t3, 2($t1) -/* 041F34 80041334 448C9000 */ mtc1 $t4, $f18 -/* 041F38 80041338 448B4000 */ mtc1 $t3, $f8 -/* 041F3C 8004133C 468094A0 */ cvt.s.w $f18, $f18 -/* 041F40 80041340 44807000 */ mtc1 $zero, $f14 -/* 041F44 80041344 44070000 */ mfc1 $a3, $f0 -/* 041F48 80041348 44069000 */ mfc1 $a2, $f18 -/* 041F4C 8004134C E7B0007C */ swc1 $f16, 0x7c($sp) -/* 041F50 80041350 A7AA0072 */ sh $t2, 0x72($sp) -/* 041F54 80041354 AFA8003C */ sw $t0, 0x3c($sp) -/* 041F58 80041358 AFAD0010 */ sw $t5, 0x10($sp) -/* 041F5C 8004135C 0C005B1A */ jal func_80016C68 -/* 041F60 80041360 46804320 */ cvt.s.w $f12, $f8 -/* 041F64 80041364 8FA8003C */ lw $t0, 0x3c($sp) -/* 041F68 80041368 87AA0072 */ lh $t2, 0x72($sp) -/* 041F6C 8004136C C7B0007C */ lwc1 $f16, 0x7c($sp) -/* 041F70 80041370 10400003 */ beqz $v0, .L80041380 -/* 041F74 80041374 AD020100 */ sw $v0, 0x100($t0) -/* 041F78 80041378 240E00F0 */ li $t6, 240 -/* 041F7C 8004137C A50E0104 */ sh $t6, 0x104($t0) -.L80041380: -/* 041F80 80041380 8D020100 */ lw $v0, 0x100($t0) -/* 041F84 80041384 240E0001 */ li $t6, 1 -/* 041F88 80041388 10400062 */ beqz $v0, .L80041514 -/* 041F8C 8004138C 00000000 */ nop -/* 041F90 80041390 C606000C */ lwc1 $f6, 0xc($s0) -/* 041F94 80041394 C44A000C */ lwc1 $f10, 0xc($v0) -/* 041F98 80041398 C6040014 */ lwc1 $f4, 0x14($s0) -/* 041F9C 8004139C C4480014 */ lwc1 $f8, 0x14($v0) -/* 041FA0 800413A0 460A3301 */ sub.s $f12, $f6, $f10 -/* 041FA4 800413A4 E7B0007C */ swc1 $f16, 0x7c($sp) -/* 041FA8 800413A8 46082381 */ sub.s $f14, $f4, $f8 -/* 041FAC 800413AC E7AC0094 */ swc1 $f12, 0x94($sp) -/* 041FB0 800413B0 E7AE008C */ swc1 $f14, 0x8c($sp) -/* 041FB4 800413B4 A7AA0072 */ sh $t2, 0x72($sp) -/* 041FB8 800413B8 0C01C1D4 */ jal func_80070750 -/* 041FBC 800413BC AFA8003C */ sw $t0, 0x3c($sp) -/* 041FC0 800413C0 86040000 */ lh $a0, ($s0) -/* 041FC4 800413C4 8FA8003C */ lw $t0, 0x3c($sp) -/* 041FC8 800413C8 00441823 */ subu $v1, $v0, $a0 -/* 041FCC 800413CC 0003CC00 */ sll $t9, $v1, 0x10 -/* 041FD0 800413D0 87AA0072 */ lh $t2, 0x72($sp) -/* 041FD4 800413D4 C7B0007C */ lwc1 $f16, 0x7c($sp) -/* 041FD8 800413D8 00195C03 */ sra $t3, $t9, 0x10 -/* 041FDC 800413DC 0561000A */ bgez $t3, .L80041408 -/* 041FE0 800413E0 01601825 */ move $v1, $t3 -/* 041FE4 800413E4 000A6023 */ negu $t4, $t2 -/* 041FE8 800413E8 018B082A */ slt $at, $t4, $t3 -/* 041FEC 800413EC 10200004 */ beqz $at, .L80041400 -/* 041FF0 800413F0 008A7023 */ subu $t6, $a0, $t2 -/* 041FF4 800413F4 008B6821 */ addu $t5, $a0, $t3 -/* 041FF8 800413F8 1000000B */ b .L80041428 -/* 041FFC 800413FC A60D0000 */ sh $t5, ($s0) -.L80041400: -/* 042000 80041400 10000009 */ b .L80041428 -/* 042004 80041404 A60E0000 */ sh $t6, ($s0) -.L80041408: -/* 042008 80041408 18600007 */ blez $v1, .L80041428 -/* 04200C 8004140C 006A082A */ slt $at, $v1, $t2 -/* 042010 80041410 10200004 */ beqz $at, .L80041424 -/* 042014 80041414 008AC021 */ addu $t8, $a0, $t2 -/* 042018 80041418 00837821 */ addu $t7, $a0, $v1 -/* 04201C 8004141C 10000002 */ b .L80041428 -/* 042020 80041420 A60F0000 */ sh $t7, ($s0) -.L80041424: -/* 042024 80041424 A6180000 */ sh $t8, ($s0) -.L80041428: -/* 042028 80041428 8D190100 */ lw $t9, 0x100($t0) -/* 04202C 8004142C 3C014180 */ li $at, 0x41800000 # 16.000000 -/* 042030 80041430 44813000 */ mtc1 $at, $f6 -/* 042034 80041434 C7320010 */ lwc1 $f18, 0x10($t9) -/* 042038 80041438 C6040010 */ lwc1 $f4, 0x10($s0) -/* 04203C 8004143C 46069280 */ add.s $f10, $f18, $f6 -/* 042040 80041440 44804000 */ mtc1 $zero, $f8 -/* 042044 80041444 46045001 */ sub.s $f0, $f10, $f4 -/* 042048 80041448 8FAB009C */ lw $t3, 0x9c($sp) -/* 04204C 8004144C 4608003C */ c.lt.s $f0, $f8 -/* 042050 80041450 240D0004 */ li $t5, 4 -/* 042054 80041454 4500000F */ bc1f .L80041494 -/* 042058 80041458 00000000 */ nop -/* 04205C 8004145C 448B3000 */ mtc1 $t3, $f6 -/* 042060 80041460 C6120020 */ lwc1 $f18, 0x20($s0) -/* 042064 80041464 468032A0 */ cvt.s.w $f10, $f6 -/* 042068 80041468 460A8102 */ mul.s $f4, $f16, $f10 -/* 04206C 8004146C 46049201 */ sub.s $f8, $f18, $f4 -/* 042070 80041470 E6080020 */ swc1 $f8, 0x20($s0) -/* 042074 80041474 C6060020 */ lwc1 $f6, 0x20($s0) -/* 042078 80041478 00000000 */ nop -/* 04207C 8004147C 4600303C */ c.lt.s $f6, $f0 -/* 042080 80041480 00000000 */ nop -/* 042084 80041484 45000016 */ bc1f .L800414E0 -/* 042088 80041488 00000000 */ nop -/* 04208C 8004148C 10000014 */ b .L800414E0 -/* 042090 80041490 E6000020 */ swc1 $f0, 0x20($s0) -.L80041494: -/* 042094 80041494 44805000 */ mtc1 $zero, $f10 -/* 042098 80041498 8FAC009C */ lw $t4, 0x9c($sp) -/* 04209C 8004149C 4600503C */ c.lt.s $f10, $f0 -/* 0420A0 800414A0 00000000 */ nop -/* 0420A4 800414A4 4500000E */ bc1f .L800414E0 -/* 0420A8 800414A8 00000000 */ nop -/* 0420AC 800414AC 448C2000 */ mtc1 $t4, $f4 -/* 0420B0 800414B0 C6120020 */ lwc1 $f18, 0x20($s0) -/* 0420B4 800414B4 46802220 */ cvt.s.w $f8, $f4 -/* 0420B8 800414B8 46088182 */ mul.s $f6, $f16, $f8 -/* 0420BC 800414BC 46069280 */ add.s $f10, $f18, $f6 -/* 0420C0 800414C0 E60A0020 */ swc1 $f10, 0x20($s0) -/* 0420C4 800414C4 C6040020 */ lwc1 $f4, 0x20($s0) -/* 0420C8 800414C8 00000000 */ nop -/* 0420CC 800414CC 4604003C */ c.lt.s $f0, $f4 -/* 0420D0 800414D0 00000000 */ nop -/* 0420D4 800414D4 45000002 */ bc1f .L800414E0 -/* 0420D8 800414D8 00000000 */ nop -/* 0420DC 800414DC E6000020 */ swc1 $f0, 0x20($s0) -.L800414E0: -/* 0420E0 800414E0 C7A00094 */ lwc1 $f0, 0x94($sp) -/* 0420E4 800414E4 C7A2008C */ lwc1 $f2, 0x8c($sp) -/* 0420E8 800414E8 46000202 */ mul.s $f8, $f0, $f0 -/* 0420EC 800414EC 3C014380 */ li $at, 0x43800000 # 256.000000 -/* 0420F0 800414F0 44815000 */ mtc1 $at, $f10 -/* 0420F4 800414F4 46021482 */ mul.s $f18, $f2, $f2 -/* 0420F8 800414F8 46124180 */ add.s $f6, $f8, $f18 -/* 0420FC 800414FC 460A303C */ c.lt.s $f6, $f10 -/* 042100 80041500 00000000 */ nop -/* 042104 80041504 45000004 */ bc1f .L80041518 -/* 042108 80041508 00000000 */ nop -/* 04210C 8004150C 10000002 */ b .L80041518 -/* 042110 80041510 A10D00FD */ sb $t5, 0xfd($t0) -.L80041514: -/* 042114 80041514 A10E00FD */ sb $t6, 0xfd($t0) -.L80041518: -/* 042118 80041518 860F0018 */ lh $t7, 0x18($s0) -/* 04211C 8004151C 8FB8002C */ lw $t8, 0x2c($sp) -/* 042120 80041520 00000000 */ nop -/* 042124 80041524 01F8C821 */ addu $t9, $t7, $t8 -/* 042128 80041528 332B00FF */ andi $t3, $t9, 0xff -/* 04212C 8004152C A60B0018 */ sh $t3, 0x18($s0) -/* 042130 80041530 910200FD */ lbu $v0, 0xfd($t0) -/* 042134 80041534 100000C0 */ b .L80041838 -/* 042138 80041538 00000000 */ nop -/* 04213C 8004153C 28610181 */ slti $at, $v1, 0x181 -/* 042140 80041540 1420000C */ bnez $at, .L80041574 -/* 042144 80041544 00000000 */ nop -/* 042148 80041548 8FAC009C */ lw $t4, 0x9c($sp) -/* 04214C 8004154C 24180180 */ li $t8, 384 -/* 042150 80041550 000C6900 */ sll $t5, $t4, 4 -/* 042154 80041554 006D7023 */ subu $t6, $v1, $t5 -/* 042158 80041558 A50E0106 */ sh $t6, 0x106($t0) -/* 04215C 8004155C 850F0106 */ lh $t7, 0x106($t0) -/* 042160 80041560 00000000 */ nop -/* 042164 80041564 29E10180 */ slti $at, $t7, 0x180 -/* 042168 80041568 10200002 */ beqz $at, .L80041574 -/* 04216C 8004156C 00000000 */ nop -/* 042170 80041570 A5180106 */ sh $t8, 0x106($t0) -.L80041574: -/* 042174 80041574 85390002 */ lh $t9, 2($t1) -/* 042178 80041578 C604000C */ lwc1 $f4, 0xc($s0) -/* 04217C 8004157C 44994000 */ mtc1 $t9, $f8 -/* 042180 80041580 952C0008 */ lhu $t4, 8($t1) -/* 042184 80041584 468044A0 */ cvt.s.w $f18, $f8 -/* 042188 80041588 000C6840 */ sll $t5, $t4, 1 -/* 04218C 8004158C 852B0006 */ lh $t3, 6($t1) -/* 042190 80041590 46122081 */ sub.s $f2, $f4, $f18 -/* 042194 80041594 448D2000 */ mtc1 $t5, $f4 -/* 042198 80041598 448B5000 */ mtc1 $t3, $f10 -/* 04219C 8004159C 46802020 */ cvt.s.w $f0, $f4 -/* 0421A0 800415A0 C6060014 */ lwc1 $f6, 0x14($s0) -/* 0421A4 800415A4 8FAE009C */ lw $t6, 0x9c($sp) -/* 0421A8 800415A8 46000002 */ mul.s $f0, $f0, $f0 -/* 0421AC 800415AC 8FB9009C */ lw $t9, 0x9c($sp) -/* 0421B0 800415B0 000E7900 */ sll $t7, $t6, 4 -/* 0421B4 800415B4 AFAF002C */ sw $t7, 0x2c($sp) -/* 0421B8 800415B8 46805220 */ cvt.s.w $f8, $f10 -/* 0421BC 800415BC 24180002 */ li $t8, 2 -/* 0421C0 800415C0 46021482 */ mul.s $f18, $f2, $f2 -/* 0421C4 800415C4 46083301 */ sub.s $f12, $f6, $f8 -/* 0421C8 800415C8 460C6282 */ mul.s $f10, $f12, $f12 -/* 0421CC 800415CC 460A9180 */ add.s $f6, $f18, $f10 -/* 0421D0 800415D0 4606003C */ c.lt.s $f0, $f6 -/* 0421D4 800415D4 00000000 */ nop -/* 0421D8 800415D8 45000003 */ bc1f .L800415E8 -/* 0421DC 800415DC 00000000 */ nop -/* 0421E0 800415E0 1000008D */ b .L80041818 -/* 0421E4 800415E4 A11800FD */ sb $t8, 0xfd($t0) -.L800415E8: -/* 0421E8 800415E8 95020104 */ lhu $v0, 0x104($t0) -/* 0421EC 800415EC 3C074316 */ lui $a3, 0x4316 -/* 0421F0 800415F0 0322082A */ slt $at, $t9, $v0 -/* 0421F4 800415F4 10200004 */ beqz $at, .L80041608 -/* 0421F8 800415F8 240C0001 */ li $t4, 1 -/* 0421FC 800415FC 00595823 */ subu $t3, $v0, $t9 -/* 042200 80041600 1000002C */ b .L800416B4 -/* 042204 80041604 A50B0104 */ sh $t3, 0x104($t0) -.L80041608: -/* 042208 80041608 A5000104 */ sh $zero, 0x104($t0) -/* 04220C 8004160C 8E060014 */ lw $a2, 0x14($s0) -/* 042210 80041610 C60C000C */ lwc1 $f12, 0xc($s0) -/* 042214 80041614 44807000 */ mtc1 $zero, $f14 -/* 042218 80041618 27AD0044 */ addiu $t5, $sp, 0x44 -/* 04221C 8004161C AFAD0014 */ sw $t5, 0x14($sp) -/* 042220 80041620 E7B0007C */ swc1 $f16, 0x7c($sp) -/* 042224 80041624 AFA8003C */ sw $t0, 0x3c($sp) -/* 042228 80041628 0C005B7A */ jal func_80016DE8 -/* 04222C 8004162C AFAC0010 */ sw $t4, 0x10($sp) -/* 042230 80041630 00022C00 */ sll $a1, $v0, 0x10 -/* 042234 80041634 00021C00 */ sll $v1, $v0, 0x10 -/* 042238 80041638 00057403 */ sra $t6, $a1, 0x10 -/* 04223C 8004163C 8FA8003C */ lw $t0, 0x3c($sp) -/* 042240 80041640 C7B0007C */ lwc1 $f16, 0x7c($sp) -/* 042244 80041644 00037C03 */ sra $t7, $v1, 0x10 -/* 042248 80041648 01C02825 */ move $a1, $t6 -/* 04224C 8004164C 15E00005 */ bnez $t7, .L80041664 -/* 042250 80041650 01E01825 */ move $v1, $t7 -/* 042254 80041654 24180001 */ li $t8, 1 -/* 042258 80041658 AD000100 */ sw $zero, 0x100($t0) -/* 04225C 8004165C 10000015 */ b .L800416B4 -/* 042260 80041660 A11800FD */ sb $t8, 0xfd($t0) -.L80041664: -/* 042264 80041664 28610002 */ slti $at, $v1, 2 -/* 042268 80041668 14200009 */ bnez $at, .L80041690 -/* 04226C 8004166C 24040001 */ li $a0, 1 -/* 042270 80041670 AFA8003C */ sw $t0, 0x3c($sp) -/* 042274 80041674 0C01BE53 */ jal func_8006F94C -/* 042278 80041678 E7B0007C */ swc1 $f16, 0x7c($sp) -/* 04227C 8004167C 00021C00 */ sll $v1, $v0, 0x10 -/* 042280 80041680 00035C03 */ sra $t3, $v1, 0x10 -/* 042284 80041684 8FA8003C */ lw $t0, 0x3c($sp) -/* 042288 80041688 C7B0007C */ lwc1 $f16, 0x7c($sp) -/* 04228C 8004168C 01601825 */ move $v1, $t3 -.L80041690: -/* 042290 80041690 2465FFFF */ addiu $a1, $v1, -1 -/* 042294 80041694 00056400 */ sll $t4, $a1, 0x10 -/* 042298 80041698 000C6C03 */ sra $t5, $t4, 0x10 -/* 04229C 8004169C 000D7080 */ sll $t6, $t5, 2 -/* 0422A0 800416A0 03AE7821 */ addu $t7, $sp, $t6 -/* 0422A4 800416A4 8DEF0044 */ lw $t7, 0x44($t7) -/* 0422A8 800416A8 241800F0 */ li $t8, 240 -/* 0422AC 800416AC A5180104 */ sh $t8, 0x104($t0) -/* 0422B0 800416B0 AD0F0100 */ sw $t7, 0x100($t0) -.L800416B4: -/* 0422B4 800416B4 911900FD */ lbu $t9, 0xfd($t0) -/* 0422B8 800416B8 24010004 */ li $at, 4 -/* 0422BC 800416BC 17210056 */ bne $t9, $at, .L80041818 -/* 0422C0 800416C0 00000000 */ nop -/* 0422C4 800416C4 8D020100 */ lw $v0, 0x100($t0) -/* 0422C8 800416C8 C608000C */ lwc1 $f8, 0xc($s0) -/* 0422CC 800416CC C444000C */ lwc1 $f4, 0xc($v0) -/* 0422D0 800416D0 C6120014 */ lwc1 $f18, 0x14($s0) -/* 0422D4 800416D4 46044001 */ sub.s $f0, $f8, $f4 -/* 0422D8 800416D8 C44A0014 */ lwc1 $f10, 0x14($v0) -/* 0422DC 800416DC 46000202 */ mul.s $f8, $f0, $f0 -/* 0422E0 800416E0 460A9081 */ sub.s $f2, $f18, $f10 -/* 0422E4 800416E4 3C01800E */ lui $at, %hi(D_800E623C) # $at, 0x800e -/* 0422E8 800416E8 C426623C */ lwc1 $f6, %lo(D_800E623C)($at) -/* 0422EC 800416EC 46021102 */ mul.s $f4, $f2, $f2 -/* 0422F0 800416F0 240B0003 */ li $t3, 3 -/* 0422F4 800416F4 00002025 */ move $a0, $zero -/* 0422F8 800416F8 24050064 */ li $a1, 100 -/* 0422FC 800416FC 46044480 */ add.s $f18, $f8, $f4 -/* 042300 80041700 4612303C */ c.lt.s $f6, $f18 -/* 042304 80041704 00000000 */ nop -/* 042308 80041708 45000003 */ bc1f .L80041718 -/* 04230C 8004170C 00000000 */ nop -/* 042310 80041710 10000041 */ b .L80041818 -/* 042314 80041714 A10B00FD */ sb $t3, 0xfd($t0) -.L80041718: -/* 042318 80041718 AFA8003C */ sw $t0, 0x3c($sp) -/* 04231C 8004171C 0C01BE53 */ jal func_8006F94C -/* 042320 80041720 E7B0007C */ swc1 $f16, 0x7c($sp) -/* 042324 80041724 8FA8003C */ lw $t0, 0x3c($sp) -/* 042328 80041728 C7B0007C */ lwc1 $f16, 0x7c($sp) -/* 04232C 8004172C 28410063 */ slti $at, $v0, 0x63 -/* 042330 80041730 14200006 */ bnez $at, .L8004174C -/* 042334 80041734 8FA2009C */ lw $v0, 0x9c($sp) -/* 042338 80041738 850C0106 */ lh $t4, 0x106($t0) -/* 04233C 8004173C 00000000 */ nop -/* 042340 80041740 000C6823 */ negu $t5, $t4 -/* 042344 80041744 A50D0106 */ sh $t5, 0x106($t0) -/* 042348 80041748 8FA2009C */ lw $v0, 0x9c($sp) -.L8004174C: -/* 04234C 8004174C 850F0106 */ lh $t7, 0x106($t0) -/* 042350 80041750 860E0000 */ lh $t6, ($s0) -/* 042354 80041754 004F0019 */ multu $v0, $t7 -/* 042358 80041758 3C014280 */ li $at, 0x42800000 # 64.000000 -/* 04235C 8004175C 44815000 */ mtc1 $at, $f10 -/* 042360 80041760 C6000010 */ lwc1 $f0, 0x10($s0) -/* 042364 80041764 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 042368 80041768 0000C012 */ mflo $t8 -/* 04236C 8004176C 01D8C821 */ addu $t9, $t6, $t8 -/* 042370 80041770 A6190000 */ sh $t9, ($s0) -/* 042374 80041774 8D0B0100 */ lw $t3, 0x100($t0) -/* 042378 80041778 00000000 */ nop -/* 04237C 8004177C C5620010 */ lwc1 $f2, 0x10($t3) -/* 042380 80041780 00000000 */ nop -/* 042384 80041784 460A1200 */ add.s $f8, $f2, $f10 -/* 042388 80041788 4600403C */ c.lt.s $f8, $f0 -/* 04238C 8004178C 00000000 */ nop -/* 042390 80041790 45000003 */ bc1f .L800417A0 -/* 042394 80041794 00000000 */ nop -/* 042398 80041798 10000009 */ b .L800417C0 -/* 04239C 8004179C A10000FE */ sb $zero, 0xfe($t0) -.L800417A0: -/* 0423A0 800417A0 44812000 */ mtc1 $at, $f4 -/* 0423A4 800417A4 240C0001 */ li $t4, 1 -/* 0423A8 800417A8 46041180 */ add.s $f6, $f2, $f4 -/* 0423AC 800417AC 4606003C */ c.lt.s $f0, $f6 -/* 0423B0 800417B0 00000000 */ nop -/* 0423B4 800417B4 45000002 */ bc1f .L800417C0 -/* 0423B8 800417B8 00000000 */ nop -/* 0423BC 800417BC A10C00FE */ sb $t4, 0xfe($t0) -.L800417C0: -/* 0423C0 800417C0 910D00FE */ lbu $t5, 0xfe($t0) -/* 0423C4 800417C4 00000000 */ nop -/* 0423C8 800417C8 11A00008 */ beqz $t5, .L800417EC -/* 0423CC 800417CC 00000000 */ nop -/* 0423D0 800417D0 44825000 */ mtc1 $v0, $f10 -/* 0423D4 800417D4 C6120020 */ lwc1 $f18, 0x20($s0) -/* 0423D8 800417D8 46805220 */ cvt.s.w $f8, $f10 -/* 0423DC 800417DC 46088102 */ mul.s $f4, $f16, $f8 -/* 0423E0 800417E0 46049180 */ add.s $f6, $f18, $f4 -/* 0423E4 800417E4 10000007 */ b .L80041804 -/* 0423E8 800417E8 E6060020 */ swc1 $f6, 0x20($s0) -.L800417EC: -/* 0423EC 800417EC 44824000 */ mtc1 $v0, $f8 -/* 0423F0 800417F0 C60A0020 */ lwc1 $f10, 0x20($s0) -/* 0423F4 800417F4 468044A0 */ cvt.s.w $f18, $f8 -/* 0423F8 800417F8 46128102 */ mul.s $f4, $f16, $f18 -/* 0423FC 800417FC 46045181 */ sub.s $f6, $f10, $f4 -/* 042400 80041800 E6060020 */ swc1 $f6, 0x20($s0) -.L80041804: -/* 042404 80041804 860F0000 */ lh $t7, ($s0) -/* 042408 80041808 850E0106 */ lh $t6, 0x106($t0) -/* 04240C 8004180C 00000000 */ nop -/* 042410 80041810 01EEC021 */ addu $t8, $t7, $t6 -/* 042414 80041814 A6180000 */ sh $t8, ($s0) -.L80041818: -/* 042418 80041818 86190018 */ lh $t9, 0x18($s0) -/* 04241C 8004181C 8FAB002C */ lw $t3, 0x2c($sp) -/* 042420 80041820 00000000 */ nop -/* 042424 80041824 032B6021 */ addu $t4, $t9, $t3 -/* 042428 80041828 318D00FF */ andi $t5, $t4, 0xff -/* 04242C 8004182C A60D0018 */ sh $t5, 0x18($s0) -/* 042430 80041830 910200FD */ lbu $v0, 0xfd($t0) -/* 042434 80041834 00000000 */ nop -.L80041838: -/* 042438 80041838 10400018 */ beqz $v0, .L8004189C -/* 04243C 8004183C 00000000 */ nop -/* 042440 80041840 C5000108 */ lwc1 $f0, 0x108($t0) -/* 042444 80041844 C7A80078 */ lwc1 $f8, 0x78($sp) -/* 042448 80041848 8FAF009C */ lw $t7, 0x9c($sp) -/* 04244C 8004184C 4608003C */ c.lt.s $f0, $f8 -/* 042450 80041850 00000000 */ nop -/* 042454 80041854 45000011 */ bc1f .L8004189C -/* 042458 80041858 00000000 */ nop -/* 04245C 8004185C 448F5000 */ mtc1 $t7, $f10 -/* 042460 80041860 3C013E80 */ li $at, 0x3E800000 # 0.250000 -/* 042464 80041864 46805120 */ cvt.s.w $f4, $f10 -/* 042468 80041868 44819000 */ mtc1 $at, $f18 -/* 04246C 8004186C 00000000 */ nop -/* 042470 80041870 46049182 */ mul.s $f6, $f18, $f4 -/* 042474 80041874 46060200 */ add.s $f8, $f0, $f6 -/* 042478 80041878 E5080108 */ swc1 $f8, 0x108($t0) -/* 04247C 8004187C C5120108 */ lwc1 $f18, 0x108($t0) -/* 042480 80041880 C7AA0078 */ lwc1 $f10, 0x78($sp) -/* 042484 80041884 00000000 */ nop -/* 042488 80041888 4612503C */ c.lt.s $f10, $f18 -/* 04248C 8004188C 00000000 */ nop -/* 042490 80041890 45000002 */ bc1f .L8004189C -/* 042494 80041894 00000000 */ nop -/* 042498 80041898 E50A0108 */ swc1 $f10, 0x108($t0) -.L8004189C: -/* 04249C 8004189C 44807000 */ mtc1 $zero, $f14 -/* 0424A0 800418A0 C5040108 */ lwc1 $f4, 0x108($t0) -/* 0424A4 800418A4 8FB80064 */ lw $t8, 0x64($sp) -/* 0424A8 800418A8 46047032 */ c.eq.s $f14, $f4 -/* 0424AC 800418AC 00000000 */ nop -/* 0424B0 800418B0 4501003D */ bc1t .L800419A8 -/* 0424B4 800418B4 00000000 */ nop -/* 0424B8 800418B8 910E00FD */ lbu $t6, 0xfd($t0) -/* 0424BC 800418BC 24010004 */ li $at, 4 -/* 0424C0 800418C0 11C10004 */ beq $t6, $at, .L800418D4 -/* 0424C4 800418C4 3C01800E */ lui $at, %hi(D_800E6240) # $at, 0x800e -/* 0424C8 800418C8 C4206240 */ lwc1 $f0, %lo(D_800E6240)($at) -/* 0424CC 800418CC 10000004 */ b .L800418E0 -/* 0424D0 800418D0 00000000 */ nop -.L800418D4: -/* 0424D4 800418D4 3C01800E */ lui $at, %hi(D_800E6244) # $at, 0x800e -/* 0424D8 800418D8 C4206244 */ lwc1 $f0, %lo(D_800E6244)($at) -/* 0424DC 800418DC 00000000 */ nop -.L800418E0: -/* 0424E0 800418E0 13000005 */ beqz $t8, .L800418F8 -/* 0424E4 800418E4 3C01800E */ lui $at, %hi(D_800E6248) # $at, 0x800e -/* 0424E8 800418E8 C4266248 */ lwc1 $f6, %lo(D_800E6248)($at) -/* 0424EC 800418EC 00000000 */ nop -/* 0424F0 800418F0 46060002 */ mul.s $f0, $f0, $f6 -/* 0424F4 800418F4 00000000 */ nop -.L800418F8: -/* 0424F8 800418F8 C6020020 */ lwc1 $f2, 0x20($s0) -/* 0424FC 800418FC 46000307 */ neg.s $f12, $f0 -/* 042500 80041900 460C103C */ c.lt.s $f2, $f12 -/* 042504 80041904 00000000 */ nop -/* 042508 80041908 45000004 */ bc1f .L8004191C -/* 04250C 8004190C 00000000 */ nop -/* 042510 80041910 E60C0020 */ swc1 $f12, 0x20($s0) -/* 042514 80041914 C6020020 */ lwc1 $f2, 0x20($s0) -/* 042518 80041918 00000000 */ nop -.L8004191C: -/* 04251C 8004191C 4602003C */ c.lt.s $f0, $f2 -/* 042520 80041920 00000000 */ nop -/* 042524 80041924 45000002 */ bc1f .L80041930 -/* 042528 80041928 00000000 */ nop -/* 04252C 8004192C E6000020 */ swc1 $f0, 0x20($s0) -.L80041930: -/* 042530 80041930 C5080108 */ lwc1 $f8, 0x108($t0) -/* 042534 80041934 00000000 */ nop -/* 042538 80041938 46087032 */ c.eq.s $f14, $f8 -/* 04253C 8004193C 00000000 */ nop -/* 042540 80041940 45010019 */ bc1t .L800419A8 -/* 042544 80041944 00000000 */ nop -/* 042548 80041948 86040000 */ lh $a0, ($s0) -/* 04254C 8004194C 0C01C1F1 */ jal func_800707C4 -/* 042550 80041950 AFA8003C */ sw $t0, 0x3c($sp) -/* 042554 80041954 8FA8003C */ lw $t0, 0x3c($sp) -/* 042558 80041958 86040000 */ lh $a0, ($s0) -/* 04255C 8004195C C5120108 */ lwc1 $f18, 0x108($t0) -/* 042560 80041960 00000000 */ nop -/* 042564 80041964 46009287 */ neg.s $f10, $f18 -/* 042568 80041968 460A0102 */ mul.s $f4, $f0, $f10 -/* 04256C 8004196C 0C01C1FE */ jal func_800707F8 -/* 042570 80041970 E604001C */ swc1 $f4, 0x1c($s0) -/* 042574 80041974 8FA8003C */ lw $t0, 0x3c($sp) -/* 042578 80041978 8E05001C */ lw $a1, 0x1c($s0) -/* 04257C 8004197C C5060108 */ lwc1 $f6, 0x108($t0) -/* 042580 80041980 8E060020 */ lw $a2, 0x20($s0) -/* 042584 80041984 46003207 */ neg.s $f8, $f6 -/* 042588 80041988 46080482 */ mul.s $f18, $f0, $f8 -/* 04258C 8004198C 02002025 */ move $a0, $s0 -/* 042590 80041990 E6120024 */ swc1 $f18, 0x24($s0) -/* 042594 80041994 8E070024 */ lw $a3, 0x24($s0) -/* 042598 80041998 0C00455C */ jal func_80011570 -/* 04259C 8004199C 00000000 */ nop -/* 0425A0 800419A0 8FA8003C */ lw $t0, 0x3c($sp) -/* 0425A4 800419A4 00000000 */ nop -.L800419A8: -/* 0425A8 800419A8 911900FC */ lbu $t9, 0xfc($t0) -/* 0425AC 800419AC 240B0001 */ li $t3, 1 -/* 0425B0 800419B0 01796023 */ subu $t4, $t3, $t9 -/* 0425B4 800419B4 318D00FF */ andi $t5, $t4, 0xff -/* 0425B8 800419B8 000D7880 */ sll $t7, $t5, 2 -/* 0425BC 800419BC 01ED7823 */ subu $t7, $t7, $t5 -/* 0425C0 800419C0 000F7840 */ sll $t7, $t7, 1 -/* 0425C4 800419C4 000F7080 */ sll $t6, $t7, 2 -/* 0425C8 800419C8 A10C00FC */ sb $t4, 0xfc($t0) -/* 0425CC 800419CC 01CF7021 */ addu $t6, $t6, $t7 -/* 0425D0 800419D0 8FB80064 */ lw $t8, 0x64($sp) -/* 0425D4 800419D4 000E7040 */ sll $t6, $t6, 1 -/* 0425D8 800419D8 010E3021 */ addu $a2, $t0, $t6 -/* 0425DC 800419DC 17000003 */ bnez $t8, .L800419EC -/* 0425E0 800419E0 24C60080 */ addiu $a2, $a2, 0x80 -/* 0425E4 800419E4 10000002 */ b .L800419F0 -/* 0425E8 800419E8 24050007 */ li $a1, 7 -.L800419EC: -/* 0425EC 800419EC 24050008 */ li $a1, 8 -.L800419F0: -/* 0425F0 800419F0 860B0018 */ lh $t3, 0x18($s0) -/* 0425F4 800419F4 AFA60040 */ sw $a2, 0x40($sp) -/* 0425F8 800419F8 00AB2004 */ sllv $a0, $t3, $a1 -/* 0425FC 800419FC 0004CC00 */ sll $t9, $a0, 0x10 -/* 042600 80041A00 00192403 */ sra $a0, $t9, 0x10 -/* 042604 80041A04 0C01C20C */ jal func_80070830 -/* 042608 80041A08 A7A50076 */ sh $a1, 0x76($sp) -/* 04260C 80041A0C 87A50076 */ lh $a1, 0x76($sp) -/* 042610 80041A10 860D0018 */ lh $t5, 0x18($s0) -/* 042614 80041A14 00021A83 */ sra $v1, $v0, 0xa -/* 042618 80041A18 00AD2004 */ sllv $a0, $t5, $a1 -/* 04261C 80041A1C 00047C00 */ sll $t7, $a0, 0x10 -/* 042620 80041A20 000F2403 */ sra $a0, $t7, 0x10 -/* 042624 80041A24 0C01C20B */ jal func_8007082C -/* 042628 80041A28 AFA3006C */ sw $v1, 0x6c($sp) -/* 04262C 80041A2C 8FA3006C */ lw $v1, 0x6c($sp) -/* 042630 80041A30 8FA60040 */ lw $a2, 0x40($sp) -/* 042634 80041A34 00022283 */ sra $a0, $v0, 0xa -/* 042638 80041A38 04610002 */ bgez $v1, .L80041A44 -/* 04263C 80041A3C 00802825 */ move $a1, $a0 -/* 042640 80041A40 00031823 */ negu $v1, $v1 -.L80041A44: -/* 042644 80041A44 8FB80064 */ lw $t8, 0x64($sp) -/* 042648 80041A48 00031023 */ negu $v0, $v1 -/* 04264C 80041A4C 17000004 */ bnez $t8, .L80041A60 -/* 042650 80041A50 00000000 */ nop -/* 042654 80041A54 04810002 */ bgez $a0, .L80041A60 -/* 042658 80041A58 00000000 */ nop -/* 04265C 80041A5C 00042823 */ negu $a1, $a0 -.L80041A60: -/* 042660 80041A60 A4C20000 */ sh $v0, ($a2) -/* 042664 80041A64 A4C50002 */ sh $a1, 2($a2) -/* 042668 80041A68 A4C2000A */ sh $v0, 0xa($a2) -/* 04266C 80041A6C A4C5000C */ sh $a1, 0xc($a2) -/* 042670 80041A70 A4C30028 */ sh $v1, 0x28($a2) -/* 042674 80041A74 A4C5002A */ sh $a1, 0x2a($a2) -/* 042678 80041A78 A4C30032 */ sh $v1, 0x32($a2) -/* 04267C 80041A7C A4C50034 */ sh $a1, 0x34($a2) -/* 042680 80041A80 8FBF0024 */ lw $ra, 0x24($sp) -/* 042684 80041A84 8FB00020 */ lw $s0, 0x20($sp) -/* 042688 80041A88 03E00008 */ jr $ra -/* 04268C 80041A8C 27BD0098 */ addiu $sp, $sp, 0x98 - -glabel func_80041A90 -/* 042690 80041A90 27BDFF00 */ addiu $sp, $sp, -0x100 -/* 042694 80041A94 AFBF003C */ sw $ra, 0x3c($sp) -/* 042698 80041A98 AFB00038 */ sw $s0, 0x38($sp) -/* 04269C 80041A9C E7B70030 */ swc1 $f23, 0x30($sp) -/* 0426A0 80041AA0 E7B60034 */ swc1 $f22, 0x34($sp) -/* 0426A4 80041AA4 E7B50028 */ swc1 $f21, 0x28($sp) -/* 0426A8 80041AA8 E7B4002C */ swc1 $f20, 0x2c($sp) -/* 0426AC 80041AAC 90AF0009 */ lbu $t7, 9($a1) -/* 0426B0 80041AB0 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0426B4 80041AB4 000FC280 */ sll $t8, $t7, 0xa -/* 0426B8 80041AB8 A4980000 */ sh $t8, ($a0) -/* 0426BC 80041ABC 90A90008 */ lbu $t1, 8($a1) -/* 0426C0 80041AC0 4481B000 */ mtc1 $at, $f22 -/* 0426C4 80041AC4 44892000 */ mtc1 $t1, $f4 -/* 0426C8 80041AC8 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 0426CC 80041ACC 46802020 */ cvt.s.w $f0, $f4 -/* 0426D0 80041AD0 8C880064 */ lw $t0, 0x64($a0) -/* 0426D4 80041AD4 44813000 */ mtc1 $at, $f6 -/* 0426D8 80041AD8 4616003C */ c.lt.s $f0, $f22 -/* 0426DC 80041ADC 00808025 */ move $s0, $a0 -/* 0426E0 80041AE0 45000002 */ bc1f .L80041AEC -/* 0426E4 80041AE4 00A03025 */ move $a2, $a1 -/* 0426E8 80041AE8 4600B006 */ mov.s $f0, $f22 -.L80041AEC: -/* 0426EC 80041AEC 00000000 */ nop -/* 0426F0 80041AF0 46060003 */ div.s $f0, $f0, $f6 -/* 0426F4 80041AF4 8E0A0040 */ lw $t2, 0x40($s0) -/* 0426F8 80041AF8 860B0000 */ lh $t3, ($s0) -/* 0426FC 80041AFC C548000C */ lwc1 $f8, 0xc($t2) -/* 042700 80041B00 4480A000 */ mtc1 $zero, $f20 -/* 042704 80041B04 27A4008C */ addiu $a0, $sp, 0x8c -/* 042708 80041B08 27A500E0 */ addiu $a1, $sp, 0xe0 -/* 04270C 80041B0C 46004282 */ mul.s $f10, $f8, $f0 -/* 042710 80041B10 E60A0008 */ swc1 $f10, 8($s0) -/* 042714 80041B14 A7AB00E0 */ sh $t3, 0xe0($sp) -/* 042718 80041B18 860C0002 */ lh $t4, 2($s0) -/* 04271C 80041B1C 00000000 */ nop -/* 042720 80041B20 A7AC00E2 */ sh $t4, 0xe2($sp) -/* 042724 80041B24 860D0004 */ lh $t5, 4($s0) -/* 042728 80041B28 E7B600E8 */ swc1 $f22, 0xe8($sp) -/* 04272C 80041B2C AFA800FC */ sw $t0, 0xfc($sp) -/* 042730 80041B30 AFA60104 */ sw $a2, 0x104($sp) -/* 042734 80041B34 E7B400EC */ swc1 $f20, 0xec($sp) -/* 042738 80041B38 E7B400F0 */ swc1 $f20, 0xf0($sp) -/* 04273C 80041B3C E7B400F4 */ swc1 $f20, 0xf4($sp) -/* 042740 80041B40 0C01BF0C */ jal func_8006FC30 -/* 042744 80041B44 A7AD00E4 */ sh $t5, 0xe4($sp) -/* 042748 80041B48 4405A000 */ mfc1 $a1, $f20 -/* 04274C 80041B4C 4406A000 */ mfc1 $a2, $f20 -/* 042750 80041B50 4407B000 */ mfc1 $a3, $f22 -/* 042754 80041B54 27AE00DC */ addiu $t6, $sp, 0xdc -/* 042758 80041B58 27AF00D8 */ addiu $t7, $sp, 0xd8 -/* 04275C 80041B5C 27B800D4 */ addiu $t8, $sp, 0xd4 -/* 042760 80041B60 AFB80018 */ sw $t8, 0x18($sp) -/* 042764 80041B64 AFAF0014 */ sw $t7, 0x14($sp) -/* 042768 80041B68 AFAE0010 */ sw $t6, 0x10($sp) -/* 04276C 80041B6C 0C01BD93 */ jal func_8006F64C -/* 042770 80041B70 27A4008C */ addiu $a0, $sp, 0x8c -/* 042774 80041B74 8FA800FC */ lw $t0, 0xfc($sp) -/* 042778 80041B78 C7A400DC */ lwc1 $f4, 0xdc($sp) -/* 04277C 80041B7C 8FA40104 */ lw $a0, 0x104($sp) -/* 042780 80041B80 E5040008 */ swc1 $f4, 8($t0) -/* 042784 80041B84 C7A600D8 */ lwc1 $f6, 0xd8($sp) -/* 042788 80041B88 00001025 */ move $v0, $zero -/* 04278C 80041B8C E506000C */ swc1 $f6, 0xc($t0) -/* 042790 80041B90 C7A800D4 */ lwc1 $f8, 0xd4($sp) -/* 042794 80041B94 01001825 */ move $v1, $t0 -/* 042798 80041B98 E5080010 */ swc1 $f8, 0x10($t0) -/* 04279C 80041B9C C7A400DC */ lwc1 $f4, 0xdc($sp) -/* 0427A0 80041BA0 C60A000C */ lwc1 $f10, 0xc($s0) -/* 0427A4 80041BA4 C6080010 */ lwc1 $f8, 0x10($s0) -/* 0427A8 80041BA8 46045182 */ mul.s $f6, $f10, $f4 -/* 0427AC 80041BAC C7AA00D8 */ lwc1 $f10, 0xd8($sp) -/* 0427B0 80041BB0 00000000 */ nop -/* 0427B4 80041BB4 460A4102 */ mul.s $f4, $f8, $f10 -/* 0427B8 80041BB8 C60A0014 */ lwc1 $f10, 0x14($s0) -/* 0427BC 80041BBC 46043200 */ add.s $f8, $f6, $f4 -/* 0427C0 80041BC0 C7A600D4 */ lwc1 $f6, 0xd4($sp) -/* 0427C4 80041BC4 00000000 */ nop -/* 0427C8 80041BC8 46065102 */ mul.s $f4, $f10, $f6 -/* 0427CC 80041BCC 46044280 */ add.s $f10, $f8, $f4 -/* 0427D0 80041BD0 46005187 */ neg.s $f6, $f10 -/* 0427D4 80041BD4 E5060014 */ swc1 $f6, 0x14($t0) -/* 0427D8 80041BD8 9099001A */ lbu $t9, 0x1a($a0) -/* 0427DC 80041BDC 00000000 */ nop -/* 0427E0 80041BE0 A1190002 */ sb $t9, 2($t0) -/* 0427E4 80041BE4 9089001B */ lbu $t1, 0x1b($a0) -/* 0427E8 80041BE8 00000000 */ nop -/* 0427EC 80041BEC A1090040 */ sb $t1, 0x40($t0) -.L80041BF0: -/* 0427F0 80041BF0 908A000A */ lbu $t2, 0xa($a0) -/* 0427F4 80041BF4 24420001 */ addiu $v0, $v0, 1 -/* 0427F8 80041BF8 2841000F */ slti $at, $v0, 0xf -/* 0427FC 80041BFC 24630001 */ addiu $v1, $v1, 1 -/* 042800 80041C00 24840001 */ addiu $a0, $a0, 1 -/* 042804 80041C04 1420FFFA */ bnez $at, .L80041BF0 -/* 042808 80041C08 A06A002F */ sb $t2, 0x2f($v1) -/* 04280C 80041C0C 8E0B0068 */ lw $t3, 0x68($s0) -/* 042810 80041C10 2402000A */ li $v0, 10 -/* 042814 80041C14 8D650000 */ lw $a1, ($t3) -/* 042818 80041C18 00000000 */ nop -/* 04281C 80041C1C 8CA40000 */ lw $a0, ($a1) -/* 042820 80041C20 00000000 */ nop -/* 042824 80041C24 8C860004 */ lw $a2, 4($a0) -/* 042828 80041C28 84870024 */ lh $a3, 0x24($a0) -/* 04282C 80041C2C 24C3000A */ addiu $v1, $a2, 0xa -/* 042830 80041C30 846C0000 */ lh $t4, ($v1) -/* 042834 80041C34 846D0002 */ lh $t5, 2($v1) -/* 042838 80041C38 846E0004 */ lh $t6, 4($v1) -/* 04283C 80041C3C 448C4000 */ mtc1 $t4, $f8 -/* 042840 80041C40 448D2000 */ mtc1 $t5, $f4 -/* 042844 80041C44 448E5000 */ mtc1 $t6, $f10 -/* 042848 80041C48 468040A0 */ cvt.s.w $f2, $f8 -/* 04284C 80041C4C 00072880 */ sll $a1, $a3, 2 -/* 042850 80041C50 00A72821 */ addu $a1, $a1, $a3 -/* 042854 80041C54 46802520 */ cvt.s.w $f20, $f4 -/* 042858 80041C58 28E10002 */ slti $at, $a3, 2 -/* 04285C 80041C5C 00052840 */ sll $a1, $a1, 1 -/* 042860 80041C60 46805320 */ cvt.s.w $f12, $f10 -/* 042864 80041C64 24C4000A */ addiu $a0, $a2, 0xa -/* 042868 80041C68 46001386 */ mov.s $f14, $f2 -/* 04286C 80041C6C 4600A586 */ mov.s $f22, $f20 -/* 042870 80041C70 14200031 */ bnez $at, .L80041D38 -/* 042874 80041C74 46006406 */ mov.s $f16, $f12 -.L80041C78: -/* 042878 80041C78 848F0000 */ lh $t7, ($a0) -/* 04287C 80041C7C 2442000A */ addiu $v0, $v0, 0xa -/* 042880 80041C80 448F3000 */ mtc1 $t7, $f6 -/* 042884 80041C84 0045082A */ slt $at, $v0, $a1 -/* 042888 80041C88 46803020 */ cvt.s.w $f0, $f6 -/* 04288C 80041C8C 00801825 */ move $v1, $a0 -/* 042890 80041C90 460E003C */ c.lt.s $f0, $f14 -/* 042894 80041C94 00000000 */ nop -/* 042898 80041C98 45000002 */ bc1f .L80041CA4 -/* 04289C 80041C9C 00000000 */ nop -/* 0428A0 80041CA0 46000386 */ mov.s $f14, $f0 -.L80041CA4: -/* 0428A4 80041CA4 4600103C */ c.lt.s $f2, $f0 -/* 0428A8 80041CA8 00000000 */ nop -/* 0428AC 80041CAC 45000002 */ bc1f .L80041CB8 -/* 0428B0 80041CB0 00000000 */ nop -/* 0428B4 80041CB4 46000086 */ mov.s $f2, $f0 -.L80041CB8: -/* 0428B8 80041CB8 84780002 */ lh $t8, 2($v1) -/* 0428BC 80041CBC 00000000 */ nop -/* 0428C0 80041CC0 44984000 */ mtc1 $t8, $f8 -/* 0428C4 80041CC4 00000000 */ nop -/* 0428C8 80041CC8 46804020 */ cvt.s.w $f0, $f8 -/* 0428CC 80041CCC 4616003C */ c.lt.s $f0, $f22 -/* 0428D0 80041CD0 00000000 */ nop -/* 0428D4 80041CD4 45000002 */ bc1f .L80041CE0 -/* 0428D8 80041CD8 00000000 */ nop -/* 0428DC 80041CDC 46000586 */ mov.s $f22, $f0 -.L80041CE0: -/* 0428E0 80041CE0 4600A03C */ c.lt.s $f20, $f0 -/* 0428E4 80041CE4 00000000 */ nop -/* 0428E8 80041CE8 45000002 */ bc1f .L80041CF4 -/* 0428EC 80041CEC 00000000 */ nop -/* 0428F0 80041CF0 46000506 */ mov.s $f20, $f0 -.L80041CF4: -/* 0428F4 80041CF4 84790004 */ lh $t9, 4($v1) -/* 0428F8 80041CF8 00000000 */ nop -/* 0428FC 80041CFC 44992000 */ mtc1 $t9, $f4 -/* 042900 80041D00 00000000 */ nop -/* 042904 80041D04 46802020 */ cvt.s.w $f0, $f4 -/* 042908 80041D08 4610003C */ c.lt.s $f0, $f16 -/* 04290C 80041D0C 00000000 */ nop -/* 042910 80041D10 45000002 */ bc1f .L80041D1C -/* 042914 80041D14 00000000 */ nop -/* 042918 80041D18 46000406 */ mov.s $f16, $f0 -.L80041D1C: -/* 04291C 80041D1C 4600603C */ c.lt.s $f12, $f0 -/* 042920 80041D20 00000000 */ nop -/* 042924 80041D24 45000002 */ bc1f .L80041D30 -/* 042928 80041D28 00000000 */ nop -/* 04292C 80041D2C 46000306 */ mov.s $f12, $f0 -.L80041D30: -/* 042930 80041D30 1420FFD1 */ bnez $at, .L80041C78 -/* 042934 80041D34 2484000A */ addiu $a0, $a0, 0xa -.L80041D38: -/* 042938 80041D38 86040000 */ lh $a0, ($s0) -/* 04293C 80041D3C E7B0007C */ swc1 $f16, 0x7c($sp) -/* 042940 80041D40 E7AE0080 */ swc1 $f14, 0x80($sp) -/* 042944 80041D44 E7AC006C */ swc1 $f12, 0x6c($sp) -/* 042948 80041D48 E7A20070 */ swc1 $f2, 0x70($sp) -/* 04294C 80041D4C 0C01C1FE */ jal func_800707F8 -/* 042950 80041D50 AFA800FC */ sw $t0, 0xfc($sp) -/* 042954 80041D54 E7A00068 */ swc1 $f0, 0x68($sp) -/* 042958 80041D58 86040000 */ lh $a0, ($s0) -/* 04295C 80041D5C 0C01C1F1 */ jal func_800707C4 -/* 042960 80041D60 00000000 */ nop -/* 042964 80041D64 C7AE0080 */ lwc1 $f14, 0x80($sp) -/* 042968 80041D68 C7AA0068 */ lwc1 $f10, 0x68($sp) -/* 04296C 80041D6C C7B0007C */ lwc1 $f16, 0x7c($sp) -/* 042970 80041D70 460A7182 */ mul.s $f6, $f14, $f10 -/* 042974 80041D74 46007486 */ mov.s $f18, $f14 -/* 042978 80041D78 C7A20070 */ lwc1 $f2, 0x70($sp) -/* 04297C 80041D7C C7AC006C */ lwc1 $f12, 0x6c($sp) -/* 042980 80041D80 46008202 */ mul.s $f8, $f16, $f0 -/* 042984 80041D84 8FA800FC */ lw $t0, 0xfc($sp) -/* 042988 80041D88 460A8102 */ mul.s $f4, $f16, $f10 -/* 04298C 80041D8C 46083380 */ add.s $f14, $f6, $f8 -/* 042990 80041D90 46009182 */ mul.s $f6, $f18, $f0 -/* 042994 80041D94 46001486 */ mov.s $f18, $f2 -/* 042998 80041D98 460A1202 */ mul.s $f8, $f2, $f10 -/* 04299C 80041D9C 46062401 */ sub.s $f16, $f4, $f6 -/* 0429A0 80041DA0 46006102 */ mul.s $f4, $f12, $f0 -/* 0429A4 80041DA4 46044080 */ add.s $f2, $f8, $f4 -/* 0429A8 80041DA8 460A6182 */ mul.s $f6, $f12, $f10 -/* 0429AC 80041DAC 460E103C */ c.lt.s $f2, $f14 -/* 0429B0 80041DB0 46009202 */ mul.s $f8, $f18, $f0 -/* 0429B4 80041DB4 45000004 */ bc1f .L80041DC8 -/* 0429B8 80041DB8 46083301 */ sub.s $f12, $f6, $f8 -/* 0429BC 80041DBC 46001006 */ mov.s $f0, $f2 -/* 0429C0 80041DC0 46007086 */ mov.s $f2, $f14 -/* 0429C4 80041DC4 46000386 */ mov.s $f14, $f0 -.L80041DC8: -/* 0429C8 80041DC8 4610603C */ c.lt.s $f12, $f16 -/* 0429CC 80041DCC 00000000 */ nop -/* 0429D0 80041DD0 45000004 */ bc1f .L80041DE4 -/* 0429D4 80041DD4 00000000 */ nop -/* 0429D8 80041DD8 46006006 */ mov.s $f0, $f12 -/* 0429DC 80041DDC 46008306 */ mov.s $f12, $f16 -/* 0429E0 80041DE0 46000406 */ mov.s $f16, $f0 -.L80041DE4: -/* 0429E4 80041DE4 C6040008 */ lwc1 $f4, 8($s0) -/* 0429E8 80041DE8 C606000C */ lwc1 $f6, 0xc($s0) -/* 0429EC 80041DEC 460E2282 */ mul.s $f10, $f4, $f14 -/* 0429F0 80041DF0 46065200 */ add.s $f8, $f10, $f6 -/* 0429F4 80041DF4 E5080018 */ swc1 $f8, 0x18($t0) -/* 0429F8 80041DF8 C6040008 */ lwc1 $f4, 8($s0) -/* 0429FC 80041DFC C6060010 */ lwc1 $f6, 0x10($s0) -/* 042A00 80041E00 46162282 */ mul.s $f10, $f4, $f22 -/* 042A04 80041E04 46065200 */ add.s $f8, $f10, $f6 -/* 042A08 80041E08 E508001C */ swc1 $f8, 0x1c($t0) -/* 042A0C 80041E0C C6040008 */ lwc1 $f4, 8($s0) -/* 042A10 80041E10 C6060014 */ lwc1 $f6, 0x14($s0) -/* 042A14 80041E14 46102282 */ mul.s $f10, $f4, $f16 -/* 042A18 80041E18 46065200 */ add.s $f8, $f10, $f6 -/* 042A1C 80041E1C E5080020 */ swc1 $f8, 0x20($t0) -/* 042A20 80041E20 C6040008 */ lwc1 $f4, 8($s0) -/* 042A24 80041E24 C606000C */ lwc1 $f6, 0xc($s0) -/* 042A28 80041E28 46022282 */ mul.s $f10, $f4, $f2 -/* 042A2C 80041E2C 46065200 */ add.s $f8, $f10, $f6 -/* 042A30 80041E30 E5080024 */ swc1 $f8, 0x24($t0) -/* 042A34 80041E34 C6040008 */ lwc1 $f4, 8($s0) -/* 042A38 80041E38 C6060010 */ lwc1 $f6, 0x10($s0) -/* 042A3C 80041E3C 46142282 */ mul.s $f10, $f4, $f20 -/* 042A40 80041E40 46065200 */ add.s $f8, $f10, $f6 -/* 042A44 80041E44 E5080028 */ swc1 $f8, 0x28($t0) -/* 042A48 80041E48 C6040008 */ lwc1 $f4, 8($s0) -/* 042A4C 80041E4C C6060014 */ lwc1 $f6, 0x14($s0) -/* 042A50 80041E50 460C2282 */ mul.s $f10, $f4, $f12 -/* 042A54 80041E54 A1000001 */ sb $zero, 1($t0) -/* 042A58 80041E58 46065200 */ add.s $f8, $f10, $f6 -/* 042A5C 80041E5C E508002C */ swc1 $f8, 0x2c($t0) -/* 042A60 80041E60 8FBF003C */ lw $ra, 0x3c($sp) -/* 042A64 80041E64 8FB00038 */ lw $s0, 0x38($sp) -/* 042A68 80041E68 C7B60034 */ lwc1 $f22, 0x34($sp) -/* 042A6C 80041E6C C7B70030 */ lwc1 $f23, 0x30($sp) -/* 042A70 80041E70 C7B4002C */ lwc1 $f20, 0x2c($sp) -/* 042A74 80041E74 C7B50028 */ lwc1 $f21, 0x28($sp) -/* 042A78 80041E78 03E00008 */ jr $ra -/* 042A7C 80041E7C 27BD0100 */ addiu $sp, $sp, 0x100 - -glabel func_80041E80 -/* 042A80 80041E80 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 042A84 80041E84 AFBF001C */ sw $ra, 0x1c($sp) -/* 042A88 80041E88 AFB10018 */ sw $s1, 0x18($sp) -/* 042A8C 80041E8C AFB00014 */ sw $s0, 0x14($sp) -/* 042A90 80041E90 8C860064 */ lw $a2, 0x64($a0) -/* 042A94 80041E94 94AE000A */ lhu $t6, 0xa($a1) -/* 042A98 80041E98 00A08025 */ move $s0, $a1 -/* 042A9C 80041E9C A4CE0002 */ sh $t6, 2($a2) -/* 042AA0 80041EA0 94AF0008 */ lhu $t7, 8($a1) -/* 042AA4 80041EA4 31D9FFFF */ andi $t9, $t6, 0xffff -/* 042AA8 80041EA8 A4CF0000 */ sh $t7, ($a2) -/* 042AAC 80041EAC 90B8001C */ lbu $t8, 0x1c($a1) -/* 042AB0 80041EB0 31E2FFFF */ andi $v0, $t7, 0xffff -/* 042AB4 80041EB4 0322082A */ slt $at, $t9, $v0 -/* 042AB8 80041EB8 00808825 */ move $s1, $a0 -/* 042ABC 80041EBC 10200003 */ beqz $at, .L80041ECC -/* 042AC0 80041EC0 A0D8001C */ sb $t8, 0x1c($a2) -/* 042AC4 80041EC4 2448000A */ addiu $t0, $v0, 0xa -/* 042AC8 80041EC8 A4C80002 */ sh $t0, 2($a2) -.L80041ECC: -/* 042ACC 80041ECC A6200004 */ sh $zero, 4($s1) -/* 042AD0 80041ED0 A6200002 */ sh $zero, 2($s1) -/* 042AD4 80041ED4 A6200000 */ sh $zero, ($s1) -/* 042AD8 80041ED8 9209000C */ lbu $t1, 0xc($s0) -/* 042ADC 80041EDC 24040003 */ li $a0, 3 -/* 042AE0 80041EE0 A0C9000C */ sb $t1, 0xc($a2) -/* 042AE4 80041EE4 920A000D */ lbu $t2, 0xd($s0) -/* 042AE8 80041EE8 24C20003 */ addiu $v0, $a2, 3 -/* 042AEC 80041EEC A0CA000D */ sb $t2, 0xd($a2) -/* 042AF0 80041EF0 920B000E */ lbu $t3, 0xe($s0) -/* 042AF4 80041EF4 26030003 */ addiu $v1, $s0, 3 -/* 042AF8 80041EF8 2405000F */ li $a1, 15 -/* 042AFC 80041EFC A0CB000E */ sb $t3, 0xe($a2) -.L80041F00: -/* 042B00 80041F00 906C000C */ lbu $t4, 0xc($v1) -/* 042B04 80041F04 24840004 */ addiu $a0, $a0, 4 -/* 042B08 80041F08 A04C000C */ sb $t4, 0xc($v0) -/* 042B0C 80041F0C 906D000D */ lbu $t5, 0xd($v1) -/* 042B10 80041F10 24420004 */ addiu $v0, $v0, 4 -/* 042B14 80041F14 A04D0009 */ sb $t5, 9($v0) -/* 042B18 80041F18 906E000E */ lbu $t6, 0xe($v1) -/* 042B1C 80041F1C 24630004 */ addiu $v1, $v1, 4 -/* 042B20 80041F20 A04E000A */ sb $t6, 0xa($v0) -/* 042B24 80041F24 906F000B */ lbu $t7, 0xb($v1) -/* 042B28 80041F28 1485FFF5 */ bne $a0, $a1, .L80041F00 -/* 042B2C 80041F2C A04F000B */ sb $t7, 0xb($v0) -/* 042B30 80041F30 8E380068 */ lw $t8, 0x68($s1) -/* 042B34 80041F34 00000000 */ nop -/* 042B38 80041F38 8F030000 */ lw $v1, ($t8) -/* 042B3C 80041F3C 00000000 */ nop -/* 042B40 80041F40 8C640000 */ lw $a0, ($v1) -/* 042B44 80041F44 00000000 */ nop -/* 042B48 80041F48 8C820004 */ lw $v0, 4($a0) -/* 042B4C 80041F4C 00000000 */ nop -/* 042B50 80041F50 8459000A */ lh $t9, 0xa($v0) -/* 042B54 80041F54 8448000C */ lh $t0, 0xc($v0) -/* 042B58 80041F58 44992000 */ mtc1 $t9, $f4 -/* 042B5C 80041F5C 44883000 */ mtc1 $t0, $f6 -/* 042B60 80041F60 46802020 */ cvt.s.w $f0, $f4 -/* 042B64 80041F64 8449000E */ lh $t1, 0xe($v0) -/* 042B68 80041F68 AFA60024 */ sw $a2, 0x24($sp) -/* 042B6C 80041F6C 46000282 */ mul.s $f10, $f0, $f0 -/* 042B70 80041F70 44894000 */ mtc1 $t1, $f8 -/* 042B74 80041F74 2442000A */ addiu $v0, $v0, 0xa -/* 042B78 80041F78 468030A0 */ cvt.s.w $f2, $f6 -/* 042B7C 80041F7C 46021402 */ mul.s $f16, $f2, $f2 -/* 042B80 80041F80 468043A0 */ cvt.s.w $f14, $f8 -/* 042B84 80041F84 460E7102 */ mul.s $f4, $f14, $f14 -/* 042B88 80041F88 46105480 */ add.s $f18, $f10, $f16 -/* 042B8C 80041F8C 0C0326B4 */ jal sqrtf -/* 042B90 80041F90 46049300 */ add.s $f12, $f18, $f4 -/* 042B94 80041F94 960A0008 */ lhu $t2, 8($s0) -/* 042B98 80041F98 8FA60024 */ lw $a2, 0x24($sp) -/* 042B9C 80041F9C 448A3000 */ mtc1 $t2, $f6 -/* 042BA0 80041FA0 05410005 */ bgez $t2, .L80041FB8 -/* 042BA4 80041FA4 46803220 */ cvt.s.w $f8, $f6 -/* 042BA8 80041FA8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 042BAC 80041FAC 44815000 */ mtc1 $at, $f10 -/* 042BB0 80041FB0 00000000 */ nop -/* 042BB4 80041FB4 460A4200 */ add.s $f8, $f8, $f10 -.L80041FB8: -/* 042BB8 80041FB8 00000000 */ nop -/* 042BBC 80041FBC 46004403 */ div.s $f16, $f8, $f0 -/* 042BC0 80041FC0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 042BC4 80041FC4 E4D00004 */ swc1 $f16, 4($a2) -/* 042BC8 80041FC8 960B000A */ lhu $t3, 0xa($s0) -/* 042BCC 80041FCC 00000000 */ nop -/* 042BD0 80041FD0 448B9000 */ mtc1 $t3, $f18 -/* 042BD4 80041FD4 05610004 */ bgez $t3, .L80041FE8 -/* 042BD8 80041FD8 46809120 */ cvt.s.w $f4, $f18 -/* 042BDC 80041FDC 44813000 */ mtc1 $at, $f6 -/* 042BE0 80041FE0 00000000 */ nop -/* 042BE4 80041FE4 46062100 */ add.s $f4, $f4, $f6 -.L80041FE8: -/* 042BE8 80041FE8 00000000 */ nop -/* 042BEC 80041FEC 46002283 */ div.s $f10, $f4, $f0 -/* 042BF0 80041FF0 E4CA0008 */ swc1 $f10, 8($a2) -/* 042BF4 80041FF4 C4C80008 */ lwc1 $f8, 8($a2) -/* 042BF8 80041FF8 00000000 */ nop -/* 042BFC 80041FFC E6280008 */ swc1 $f8, 8($s1) -/* 042C00 80042000 8FBF001C */ lw $ra, 0x1c($sp) -/* 042C04 80042004 8FB10018 */ lw $s1, 0x18($sp) -/* 042C08 80042008 8FB00014 */ lw $s0, 0x14($sp) -/* 042C0C 8004200C 03E00008 */ jr $ra -/* 042C10 80042010 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_80042014 -/* 042C14 80042014 8C820064 */ lw $v0, 0x64($a0) -/* 042C18 80042018 94AE0008 */ lhu $t6, 8($a1) -/* 042C1C 8004201C 00000000 */ nop -/* 042C20 80042020 A44E0000 */ sh $t6, ($v0) -/* 042C24 80042024 90AF000A */ lbu $t7, 0xa($a1) -/* 042C28 80042028 00000000 */ nop -/* 042C2C 8004202C A04F0002 */ sb $t7, 2($v0) -/* 042C30 80042030 90B8000B */ lbu $t8, 0xb($a1) -/* 042C34 80042034 03E00008 */ jr $ra -/* 042C38 80042038 A0580003 */ sb $t8, 3($v0) - -glabel func_8004203C -/* 042C3C 8004203C 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 042C40 80042040 AFBF001C */ sw $ra, 0x1c($sp) -/* 042C44 80042044 AFA40020 */ sw $a0, 0x20($sp) -/* 042C48 80042048 AFA50024 */ sw $a1, 0x24($sp) -/* 042C4C 8004204C 00A07825 */ move $t7, $a1 -/* 042C50 80042050 91E60008 */ lbu $a2, 8($t7) -/* 042C54 80042054 90A50009 */ lbu $a1, 9($a1) -/* 042C58 80042058 8C84006C */ lw $a0, 0x6c($a0) -/* 042C5C 8004205C AFA00014 */ sw $zero, 0x14($sp) -/* 042C60 80042060 AFA00010 */ sw $zero, 0x10($sp) -/* 042C64 80042064 0C02BC4D */ jal func_800AF134 -/* 042C68 80042068 00003825 */ move $a3, $zero -/* 042C6C 8004206C 8FB80024 */ lw $t8, 0x24($sp) -/* 042C70 80042070 8FA80020 */ lw $t0, 0x20($sp) -/* 042C74 80042074 9719000A */ lhu $t9, 0xa($t8) -/* 042C78 80042078 00000000 */ nop -/* 042C7C 8004207C AD190078 */ sw $t9, 0x78($t0) -/* 042C80 80042080 8FBF001C */ lw $ra, 0x1c($sp) -/* 042C84 80042084 27BD0020 */ addiu $sp, $sp, 0x20 -/* 042C88 80042088 03E00008 */ jr $ra -/* 042C8C 8004208C 00000000 */ nop - -glabel func_80042090 -/* 042C90 80042090 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 042C94 80042094 AFBF0014 */ sw $ra, 0x14($sp) -/* 042C98 80042098 AFA5001C */ sw $a1, 0x1c($sp) -/* 042C9C 8004209C 00803025 */ move $a2, $a0 -/* 042CA0 800420A0 AFA60018 */ sw $a2, 0x18($sp) -/* 042CA4 800420A4 00002025 */ move $a0, $zero -/* 042CA8 800420A8 0C01BE53 */ jal func_8006F94C -/* 042CAC 800420AC 24050400 */ li $a1, 1024 -/* 042CB0 800420B0 8FA60018 */ lw $a2, 0x18($sp) -/* 042CB4 800420B4 240F0001 */ li $t7, 1 -/* 042CB8 800420B8 8CCE0078 */ lw $t6, 0x78($a2) -/* 042CBC 800420BC 00000000 */ nop -/* 042CC0 800420C0 01C2082A */ slt $at, $t6, $v0 -/* 042CC4 800420C4 14200003 */ bnez $at, .L800420D4 -/* 042CC8 800420C8 00000000 */ nop -/* 042CCC 800420CC 10000002 */ b .L800420D8 -/* 042CD0 800420D0 ACCF0074 */ sw $t7, 0x74($a2) -.L800420D4: -/* 042CD4 800420D4 ACC00074 */ sw $zero, 0x74($a2) -.L800420D8: -/* 042CD8 800420D8 0C0270F2 */ jal func_8009C3C8 -/* 042CDC 800420DC AFA60018 */ sw $a2, 0x18($sp) -/* 042CE0 800420E0 8FA60018 */ lw $a2, 0x18($sp) -/* 042CE4 800420E4 28410002 */ slti $at, $v0, 2 -/* 042CE8 800420E8 10200005 */ beqz $at, .L80042100 -/* 042CEC 800420EC 8FBF0014 */ lw $ra, 0x14($sp) -/* 042CF0 800420F0 8FA5001C */ lw $a1, 0x1c($sp) -/* 042CF4 800420F4 0C02BF0F */ jal func_800AFC3C -/* 042CF8 800420F8 00C02025 */ move $a0, $a2 -/* 042CFC 800420FC 8FBF0014 */ lw $ra, 0x14($sp) -.L80042100: -/* 042D00 80042100 27BD0018 */ addiu $sp, $sp, 0x18 -/* 042D04 80042104 03E00008 */ jr $ra -/* 042D08 80042108 00000000 */ nop - -glabel func_8004210C -/* 042D0C 8004210C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 042D10 80042110 AFBF0014 */ sw $ra, 0x14($sp) -/* 042D14 80042114 AFA40018 */ sw $a0, 0x18($sp) -/* 042D18 80042118 AFA5001C */ sw $a1, 0x1c($sp) -/* 042D1C 8004211C 0C0078A7 */ jal func_8001E29C -/* 042D20 80042120 24040014 */ li $a0, 20 -/* 042D24 80042124 8FAE001C */ lw $t6, 0x1c($sp) -/* 042D28 80042128 8FA30018 */ lw $v1, 0x18($sp) -/* 042D2C 8004212C 81CF0008 */ lb $t7, 8($t6) -/* 042D30 80042130 AC60003C */ sw $zero, 0x3c($v1) -/* 042D34 80042134 000FC1C0 */ sll $t8, $t7, 7 -/* 042D38 80042138 0302C821 */ addu $t9, $t8, $v0 -/* 042D3C 8004213C AC790064 */ sw $t9, 0x64($v1) -/* 042D40 80042140 8FBF0014 */ lw $ra, 0x14($sp) -/* 042D44 80042144 27BD0018 */ addiu $sp, $sp, 0x18 -/* 042D48 80042148 03E00008 */ jr $ra -/* 042D4C 8004214C 00000000 */ nop - -glabel func_80042150 -/* 042D50 80042150 AFA40000 */ sw $a0, ($sp) -/* 042D54 80042154 AFA50004 */ sw $a1, 4($sp) -/* 042D58 80042158 03E00008 */ jr $ra -/* 042D5C 8004215C AFA60008 */ sw $a2, 8($sp) - -glabel func_80042160 -/* 042D60 80042160 AFA40000 */ sw $a0, ($sp) -/* 042D64 80042164 03E00008 */ jr $ra -/* 042D68 80042168 AFA50004 */ sw $a1, 4($sp) - -glabel func_8004216C -/* 042D6C 8004216C AFA40000 */ sw $a0, ($sp) -/* 042D70 80042170 03E00008 */ jr $ra -/* 042D74 80042174 AFA50004 */ sw $a1, 4($sp) - -glabel func_80042178 -/* 042D78 80042178 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 042D7C 8004217C AFBF001C */ sw $ra, 0x1c($sp) -/* 042D80 80042180 AFA5004C */ sw $a1, 0x4c($sp) -/* 042D84 80042184 8C83003C */ lw $v1, 0x3c($a0) -/* 042D88 80042188 8C860014 */ lw $a2, 0x14($a0) -/* 042D8C 8004218C 946E0008 */ lhu $t6, 8($v1) -/* 042D90 80042190 C48C000C */ lwc1 $f12, 0xc($a0) -/* 042D94 80042194 448E2000 */ mtc1 $t6, $f4 -/* 042D98 80042198 44807000 */ mtc1 $zero, $f14 -/* 042D9C 8004219C 05C10005 */ bgez $t6, .L800421B4 -/* 042DA0 800421A0 46802120 */ cvt.s.w $f4, $f4 -/* 042DA4 800421A4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 042DA8 800421A8 44813000 */ mtc1 $at, $f6 -/* 042DAC 800421AC 00000000 */ nop -/* 042DB0 800421B0 46062100 */ add.s $f4, $f4, $f6 -.L800421B4: -/* 042DB4 800421B4 44072000 */ mfc1 $a3, $f4 -/* 042DB8 800421B8 240F0001 */ li $t7, 1 -/* 042DBC 800421BC 27B80020 */ addiu $t8, $sp, 0x20 -/* 042DC0 800421C0 AFB80014 */ sw $t8, 0x14($sp) -/* 042DC4 800421C4 AFAF0010 */ sw $t7, 0x10($sp) -/* 042DC8 800421C8 AFA30040 */ sw $v1, 0x40($sp) -/* 042DCC 800421CC 0C005B7A */ jal func_80016DE8 -/* 042DD0 800421D0 AFA40048 */ sw $a0, 0x48($sp) -/* 042DD4 800421D4 8FA30040 */ lw $v1, 0x40($sp) -/* 042DD8 800421D8 8FA40048 */ lw $a0, 0x48($sp) -/* 042DDC 800421DC 18400004 */ blez $v0, .L800421F0 -/* 042DE0 800421E0 00000000 */ nop -/* 042DE4 800421E4 9479000A */ lhu $t9, 0xa($v1) -/* 042DE8 800421E8 10000002 */ b .L800421F4 -/* 042DEC 800421EC AC990074 */ sw $t9, 0x74($a0) -.L800421F0: -/* 042DF0 800421F0 AC800074 */ sw $zero, 0x74($a0) -.L800421F4: -/* 042DF4 800421F4 8FA5004C */ lw $a1, 0x4c($sp) -/* 042DF8 800421F8 0C02BF0F */ jal func_800AFC3C -/* 042DFC 800421FC 00000000 */ nop -/* 042E00 80042200 8FBF001C */ lw $ra, 0x1c($sp) -/* 042E04 80042204 27BD0048 */ addiu $sp, $sp, 0x48 -/* 042E08 80042208 03E00008 */ jr $ra -/* 042E0C 8004220C 00000000 */ nop - -glabel func_80042210 -/* 042E10 80042210 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 042E14 80042214 AFBF0014 */ sw $ra, 0x14($sp) -/* 042E18 80042218 8C820064 */ lw $v0, 0x64($a0) -/* 042E1C 8004221C 90AE000A */ lbu $t6, 0xa($a1) -/* 042E20 80042220 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 042E24 80042224 A04E0015 */ sb $t6, 0x15($v0) -/* 042E28 80042228 C484000C */ lwc1 $f4, 0xc($a0) -/* 042E2C 8004222C 31D800FF */ andi $t8, $t6, 0xff -/* 042E30 80042230 E4440000 */ swc1 $f4, ($v0) -/* 042E34 80042234 C4860010 */ lwc1 $f6, 0x10($a0) -/* 042E38 80042238 24190001 */ li $t9, 1 -/* 042E3C 8004223C E4460004 */ swc1 $f6, 4($v0) -/* 042E40 80042240 C4880014 */ lwc1 $f8, 0x14($a0) -/* 042E44 80042244 00000000 */ nop -/* 042E48 80042248 E4480008 */ swc1 $f8, 8($v0) -/* 042E4C 8004224C 84AF0008 */ lh $t7, 8($a1) -/* 042E50 80042250 A0400014 */ sb $zero, 0x14($v0) -/* 042E54 80042254 448F5000 */ mtc1 $t7, $f10 -/* 042E58 80042258 44814000 */ mtc1 $at, $f8 -/* 042E5C 8004225C 46805420 */ cvt.s.w $f16, $f10 -/* 042E60 80042260 E450000C */ swc1 $f16, 0xc($v0) -/* 042E64 80042264 C440000C */ lwc1 $f0, 0xc($v0) -/* 042E68 80042268 00000000 */ nop -/* 042E6C 8004226C 46000482 */ mul.s $f18, $f0, $f0 -/* 042E70 80042270 E4520010 */ swc1 $f18, 0x10($v0) -/* 042E74 80042274 C484000C */ lwc1 $f4, 0xc($a0) -/* 042E78 80042278 00000000 */ nop -/* 042E7C 8004227C E4440020 */ swc1 $f4, 0x20($v0) -/* 042E80 80042280 C4860014 */ lwc1 $f6, 0x14($a0) -/* 042E84 80042284 A0400019 */ sb $zero, 0x19($v0) -/* 042E88 80042288 E4480030 */ swc1 $f8, 0x30($v0) -/* 042E8C 8004228C 13000013 */ beqz $t8, .L800422DC -/* 042E90 80042290 E4460024 */ swc1 $f6, 0x24($v0) -/* 042E94 80042294 A099003A */ sb $t9, 0x3a($a0) -/* 042E98 80042298 0C027B34 */ jal is_drumstick_unlocked -/* 042E9C 8004229C AFA40018 */ sw $a0, 0x18($sp) -/* 042EA0 800422A0 8FA40018 */ lw $a0, 0x18($sp) -/* 042EA4 800422A4 14400009 */ bnez $v0, .L800422CC -/* 042EA8 800422A8 00000000 */ nop -/* 042EAC 800422AC 0C01BAA4 */ jal func_8006EA90 -/* 042EB0 800422B0 AFA40018 */ sw $a0, 0x18($sp) -/* 042EB4 800422B4 9448000E */ lhu $t0, 0xe($v0) -/* 042EB8 800422B8 8FA40018 */ lw $a0, 0x18($sp) -/* 042EBC 800422BC 240100FF */ li $at, 255 -/* 042EC0 800422C0 310900FF */ andi $t1, $t0, 0xff -/* 042EC4 800422C4 11210007 */ beq $t1, $at, .L800422E4 -/* 042EC8 800422C8 8FBF0014 */ lw $ra, 0x14($sp) -.L800422CC: -/* 042ECC 800422CC 0C003FEE */ jal func_8000FFB8 -/* 042ED0 800422D0 00000000 */ nop -/* 042ED4 800422D4 10000003 */ b .L800422E4 -/* 042ED8 800422D8 8FBF0014 */ lw $ra, 0x14($sp) -.L800422DC: -/* 042EDC 800422DC A080003A */ sb $zero, 0x3a($a0) -/* 042EE0 800422E0 8FBF0014 */ lw $ra, 0x14($sp) -.L800422E4: -/* 042EE4 800422E4 27BD0018 */ addiu $sp, $sp, 0x18 -/* 042EE8 800422E8 03E00008 */ jr $ra -/* 042EEC 800422EC 00000000 */ nop - -glabel func_800422F0 -/* 042EF0 800422F0 27BDFEF0 */ addiu $sp, $sp, -0x110 -/* 042EF4 800422F4 44852000 */ mtc1 $a1, $f4 -/* 042EF8 800422F8 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 -/* 042EFC 800422FC 46802020 */ cvt.s.w $f0, $f4 -/* 042F00 80042300 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) -/* 042F04 80042304 AFB10030 */ sw $s1, 0x30($sp) -/* 042F08 80042308 00808825 */ move $s1, $a0 -/* 042F0C 8004230C AFBF0034 */ sw $ra, 0x34($sp) -/* 042F10 80042310 AFB0002C */ sw $s0, 0x2c($sp) -/* 042F14 80042314 E7B70020 */ swc1 $f23, 0x20($sp) -/* 042F18 80042318 E7B60024 */ swc1 $f22, 0x24($sp) -/* 042F1C 8004231C E7B50018 */ swc1 $f21, 0x18($sp) -/* 042F20 80042320 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 042F24 80042324 15C00007 */ bnez $t6, .L80042344 -/* 042F28 80042328 46000086 */ mov.s $f2, $f0 -/* 042F2C 8004232C 3C01800E */ lui $at, %hi(D_800E6254) # $at, 0x800e -/* 042F30 80042330 C4296250 */ lwc1 $f9, %lo(D_800E6250)($at) -/* 042F34 80042334 C4286254 */ lwc1 $f8, %lo(D_800E6254)($at) -/* 042F38 80042338 460001A1 */ cvt.d.s $f6, $f0 -/* 042F3C 8004233C 46283282 */ mul.d $f10, $f6, $f8 -/* 042F40 80042340 462050A0 */ cvt.s.d $f2, $f10 -.L80042344: -/* 042F44 80042344 8E300064 */ lw $s0, 0x64($s1) -/* 042F48 80042348 00000000 */ nop -/* 042F4C 8004234C 920F0014 */ lbu $t7, 0x14($s0) -/* 042F50 80042350 00000000 */ nop -/* 042F54 80042354 2DE10005 */ sltiu $at, $t7, 5 -/* 042F58 80042358 10200186 */ beqz $at, .L80042974 -/* 042F5C 8004235C 000F7880 */ sll $t7, $t7, 2 -/* 042F60 80042360 3C01800E */ lui $at, 0x800e -/* 042F64 80042364 002F0821 */ addu $at, $at, $t7 -/* 042F68 80042368 8C2F6258 */ lw $t7, 0x6258($at) -/* 042F6C 8004236C 00000000 */ nop -/* 042F70 80042370 01E00008 */ jr $t7 -/* 042F74 80042374 00000000 */ nop -/* 042F78 80042378 AFA00104 */ sw $zero, 0x104($sp) -/* 042F7C 8004237C 82020019 */ lb $v0, 0x19($s0) -/* 042F80 80042380 3C0742C0 */ lui $a3, 0x42c0 -/* 042F84 80042384 18400003 */ blez $v0, .L80042394 -/* 042F88 80042388 24190001 */ li $t9, 1 -/* 042F8C 8004238C 0045C023 */ subu $t8, $v0, $a1 -/* 042F90 80042390 A2180019 */ sb $t8, 0x19($s0) -.L80042394: -/* 042F94 80042394 C62C000C */ lwc1 $f12, 0xc($s1) -/* 042F98 80042398 C62E0010 */ lwc1 $f14, 0x10($s1) -/* 042F9C 8004239C 8E260014 */ lw $a2, 0x14($s1) -/* 042FA0 800423A0 27A80044 */ addiu $t0, $sp, 0x44 -/* 042FA4 800423A4 AFA80014 */ sw $t0, 0x14($sp) -/* 042FA8 800423A8 AFA50114 */ sw $a1, 0x114($sp) -/* 042FAC 800423AC 0C005B7A */ jal func_80016DE8 -/* 042FB0 800423B0 AFB90010 */ sw $t9, 0x10($sp) -/* 042FB4 800423B4 8FA50114 */ lw $a1, 0x114($sp) -/* 042FB8 800423B8 1840004E */ blez $v0, .L800424F4 -/* 042FBC 800423BC 00000000 */ nop -/* 042FC0 800423C0 8FA90044 */ lw $t1, 0x44($sp) -/* 042FC4 800423C4 C620000C */ lwc1 $f0, 0xc($s1) -/* 042FC8 800423C8 C62C0010 */ lwc1 $f12, 0x10($s1) -/* 042FCC 800423CC C6220014 */ lwc1 $f2, 0x14($s1) -/* 042FD0 800423D0 820A0019 */ lb $t2, 0x19($s0) -/* 042FD4 800423D4 C530000C */ lwc1 $f16, 0xc($t1) -/* 042FD8 800423D8 C5320010 */ lwc1 $f18, 0x10($t1) -/* 042FDC 800423DC C5240014 */ lwc1 $f4, 0x14($t1) -/* 042FE0 800423E0 46100501 */ sub.s $f20, $f0, $f16 -/* 042FE4 800423E4 46126381 */ sub.s $f14, $f12, $f18 -/* 042FE8 800423E8 1D40002E */ bgtz $t2, .L800424A4 -/* 042FEC 800423EC 46041581 */ sub.s $f22, $f2, $f4 -/* 042FF0 800423F0 4614A182 */ mul.s $f6, $f20, $f20 -/* 042FF4 800423F4 3C0144C8 */ li $at, 0x44C80000 # 1600.000000 -/* 042FF8 800423F8 44812000 */ mtc1 $at, $f4 -/* 042FFC 800423FC 460E7202 */ mul.s $f8, $f14, $f14 -/* 043000 80042400 00000000 */ nop -/* 043004 80042404 4616B402 */ mul.s $f16, $f22, $f22 -/* 043008 80042408 46083280 */ add.s $f10, $f6, $f8 -/* 04300C 8004240C 46105480 */ add.s $f18, $f10, $f16 -/* 043010 80042410 4604903C */ c.lt.s $f18, $f4 -/* 043014 80042414 00000000 */ nop -/* 043018 80042418 45000022 */ bc1f .L800424A4 -/* 04301C 8004241C 00000000 */ nop -/* 043020 80042420 920B0015 */ lbu $t3, 0x15($s0) -/* 043024 80042424 240D0002 */ li $t5, 2 -/* 043028 80042428 11600014 */ beqz $t3, .L8004247C -/* 04302C 8004242C 2404013F */ li $a0, 319 -/* 043030 80042430 44050000 */ mfc1 $a1, $f0 -/* 043034 80042434 44066000 */ mfc1 $a2, $f12 -/* 043038 80042438 44071000 */ mfc1 $a3, $f2 -/* 04303C 8004243C 240C0004 */ li $t4, 4 -/* 043040 80042440 AFAC0010 */ sw $t4, 0x10($sp) -/* 043044 80042444 24040174 */ li $a0, 372 -/* 043048 80042448 0C002556 */ jal func_80009558 -/* 04304C 8004244C AFA00014 */ sw $zero, 0x14($sp) -/* 043050 80042450 24040000 */ li $a0, 0 -/* 043054 80042454 0C027A9E */ jal func_8009EA78 -/* 043058 80042458 24050002 */ li $a1, 2 -/* 04305C 8004245C 0C0270B8 */ jal func_8009C2E0 -/* 043060 80042460 24040002 */ li $a0, 2 -/* 043064 80042464 0C01B629 */ jal func_8006D8A4 -/* 043068 80042468 00000000 */ nop -/* 04306C 8004246C 0C003FEE */ jal func_8000FFB8 -/* 043070 80042470 02202025 */ move $a0, $s1 -/* 043074 80042474 10000140 */ b .L80042978 -/* 043078 80042478 8FBF0034 */ lw $ra, 0x34($sp) -.L8004247C: -/* 04307C 8004247C A20D0014 */ sb $t5, 0x14($s0) -/* 043080 80042480 8E270014 */ lw $a3, 0x14($s1) -/* 043084 80042484 8E260010 */ lw $a2, 0x10($s1) -/* 043088 80042488 8E25000C */ lw $a1, 0xc($s1) -/* 04308C 8004248C 240E0004 */ li $t6, 4 -/* 043090 80042490 AFAE0010 */ sw $t6, 0x10($sp) -/* 043094 80042494 0C002556 */ jal func_80009558 -/* 043098 80042498 AFA00014 */ sw $zero, 0x14($sp) -/* 04309C 8004249C 1000002A */ b .L80042548 -/* 0430A0 800424A0 8FAE0104 */ lw $t6, 0x104($sp) -.L800424A4: -/* 0430A4 800424A4 3C014290 */ li $at, 0x42900000 # 72.000000 -/* 0430A8 800424A8 44813000 */ mtc1 $at, $f6 -/* 0430AC 800424AC 920F0015 */ lbu $t7, 0x15($s0) -/* 0430B0 800424B0 4600A307 */ neg.s $f12, $f20 -/* 0430B4 800424B4 11E00007 */ beqz $t7, .L800424D4 -/* 0430B8 800424B8 E606001C */ swc1 $f6, 0x1c($s0) -/* 0430BC 800424BC 3C01800E */ lui $at, %hi(D_800E626C) # $at, 0x800e -/* 0430C0 800424C0 C42A626C */ lwc1 $f10, %lo(D_800E626C)($at) -/* 0430C4 800424C4 C608001C */ lwc1 $f8, 0x1c($s0) -/* 0430C8 800424C8 00000000 */ nop -/* 0430CC 800424CC 460A4402 */ mul.s $f16, $f8, $f10 -/* 0430D0 800424D0 E610001C */ swc1 $f16, 0x1c($s0) -.L800424D4: -/* 0430D4 800424D4 0C01C1D4 */ jal func_80070750 -/* 0430D8 800424D8 4600B387 */ neg.s $f14, $f22 -/* 0430DC 800424DC 34018000 */ li $at, 32768 -/* 0430E0 800424E0 0041C021 */ addu $t8, $v0, $at -/* 0430E4 800424E4 A618001A */ sh $t8, 0x1a($s0) -/* 0430E8 800424E8 24190001 */ li $t9, 1 -/* 0430EC 800424EC 10000015 */ b .L80042544 -/* 0430F0 800424F0 AFB90104 */ sw $t9, 0x104($sp) -.L800424F4: -/* 0430F4 800424F4 86080016 */ lh $t0, 0x16($s0) -/* 0430F8 800424F8 240B0001 */ li $t3, 1 -/* 0430FC 800424FC 01054823 */ subu $t1, $t0, $a1 -/* 043100 80042500 A6090016 */ sh $t1, 0x16($s0) -/* 043104 80042504 860A0016 */ lh $t2, 0x16($s0) -/* 043108 80042508 24050048 */ li $a1, 72 -/* 04310C 8004250C 0541000D */ bgez $t2, .L80042544 -/* 043110 80042510 24040028 */ li $a0, 40 -/* 043114 80042514 0C01BE53 */ jal func_8006F94C -/* 043118 80042518 AFAB0104 */ sw $t3, 0x104($sp) -/* 04311C 8004251C 44829000 */ mtc1 $v0, $f18 -/* 043120 80042520 2404C000 */ li $a0, -16384 -/* 043124 80042524 46809120 */ cvt.s.w $f4, $f18 -/* 043128 80042528 24054000 */ li $a1, 16384 -/* 04312C 8004252C 0C01BE53 */ jal func_8006F94C -/* 043130 80042530 E604001C */ swc1 $f4, 0x1c($s0) -/* 043134 80042534 862C0000 */ lh $t4, ($s1) -/* 043138 80042538 00000000 */ nop -/* 04313C 8004253C 004C6821 */ addu $t5, $v0, $t4 -/* 043140 80042540 A60D001A */ sh $t5, 0x1a($s0) -.L80042544: -/* 043144 80042544 8FAE0104 */ lw $t6, 0x104($sp) -.L80042548: -/* 043148 80042548 00001025 */ move $v0, $zero -/* 04314C 8004254C 11C00109 */ beqz $t6, .L80042974 -/* 043150 80042550 00001825 */ move $v1, $zero -.L80042554: -/* 043154 80042554 8604001A */ lh $a0, 0x1a($s0) -/* 043158 80042558 AFA30100 */ sw $v1, 0x100($sp) -/* 04315C 8004255C 0C01C1F1 */ jal func_800707C4 -/* 043160 80042560 AFA20108 */ sw $v0, 0x108($sp) -/* 043164 80042564 C606001C */ lwc1 $f6, 0x1c($s0) -/* 043168 80042568 8604001A */ lh $a0, 0x1a($s0) -/* 04316C 8004256C 46060202 */ mul.s $f8, $f0, $f6 -/* 043170 80042570 0C01C1FE */ jal func_800707F8 -/* 043174 80042574 E6080028 */ swc1 $f8, 0x28($s0) -/* 043178 80042578 C60A001C */ lwc1 $f10, 0x1c($s0) -/* 04317C 8004257C 8FA20108 */ lw $v0, 0x108($sp) -/* 043180 80042580 46005407 */ neg.s $f16, $f10 -/* 043184 80042584 46100082 */ mul.s $f2, $f0, $f16 -/* 043188 80042588 8FA30100 */ lw $v1, 0x100($sp) -/* 04318C 8004258C C6040028 */ lwc1 $f4, 0x28($s0) -/* 043190 80042590 C6080000 */ lwc1 $f8, ($s0) -/* 043194 80042594 E602002C */ swc1 $f2, 0x2c($s0) -/* 043198 80042598 C632000C */ lwc1 $f18, 0xc($s1) -/* 04319C 8004259C C62A0014 */ lwc1 $f10, 0x14($s1) -/* 0431A0 800425A0 46049180 */ add.s $f6, $f18, $f4 -/* 0431A4 800425A4 C6120008 */ lwc1 $f18, 8($s0) -/* 0431A8 800425A8 46083501 */ sub.s $f20, $f6, $f8 -/* 0431AC 800425AC 24420001 */ addiu $v0, $v0, 1 -/* 0431B0 800425B0 46025400 */ add.s $f16, $f10, $f2 -/* 0431B4 800425B4 C60A0010 */ lwc1 $f10, 0x10($s0) -/* 0431B8 800425B8 4614A102 */ mul.s $f4, $f20, $f20 -/* 0431BC 800425BC 46128581 */ sub.s $f22, $f16, $f18 -/* 0431C0 800425C0 28410004 */ slti $at, $v0, 4 -/* 0431C4 800425C4 4616B182 */ mul.s $f6, $f22, $f22 -/* 0431C8 800425C8 46062200 */ add.s $f8, $f4, $f6 -/* 0431CC 800425CC 460A403C */ c.lt.s $f8, $f10 -/* 0431D0 800425D0 00000000 */ nop -/* 0431D4 800425D4 45000003 */ bc1f .L800425E4 -/* 0431D8 800425D8 00000000 */ nop -/* 0431DC 800425DC 10000005 */ b .L800425F4 -/* 0431E0 800425E0 24030001 */ li $v1, 1 -.L800425E4: -/* 0431E4 800425E4 860F001A */ lh $t7, 0x1a($s0) -/* 0431E8 800425E8 00000000 */ nop -/* 0431EC 800425EC 25F84000 */ addiu $t8, $t7, 0x4000 -/* 0431F0 800425F0 A618001A */ sh $t8, 0x1a($s0) -.L800425F4: -/* 0431F4 800425F4 10200003 */ beqz $at, .L80042604 -/* 0431F8 800425F8 00000000 */ nop -/* 0431FC 800425FC 1060FFD5 */ beqz $v1, .L80042554 -/* 043200 80042600 00000000 */ nop -.L80042604: -/* 043204 80042604 C620000C */ lwc1 $f0, 0xc($s1) -/* 043208 80042608 C6220014 */ lwc1 $f2, 0x14($s1) -/* 04320C 8004260C 1460000A */ bnez $v1, .L80042638 -/* 043210 80042610 00000000 */ nop -/* 043214 80042614 C6100000 */ lwc1 $f16, ($s0) -/* 043218 80042618 C6120008 */ lwc1 $f18, 8($s0) -/* 04321C 8004261C 46008301 */ sub.s $f12, $f16, $f0 -/* 043220 80042620 0C01C1D4 */ jal func_80070750 -/* 043224 80042624 46029381 */ sub.s $f14, $f18, $f2 -/* 043228 80042628 A602001A */ sh $v0, 0x1a($s0) -/* 04322C 8004262C C6220014 */ lwc1 $f2, 0x14($s1) -/* 043230 80042630 C620000C */ lwc1 $f0, 0xc($s1) -/* 043234 80042634 00000000 */ nop -.L80042638: -/* 043238 80042638 92190015 */ lbu $t9, 0x15($s0) -/* 04323C 8004263C 2404002B */ li $a0, 43 -/* 043240 80042640 1320000B */ beqz $t9, .L80042670 -/* 043244 80042644 24090004 */ li $t1, 4 -/* 043248 80042648 8E260010 */ lw $a2, 0x10($s1) -/* 04324C 8004264C 44050000 */ mfc1 $a1, $f0 -/* 043250 80042650 44071000 */ mfc1 $a3, $f2 -/* 043254 80042654 24080004 */ li $t0, 4 -/* 043258 80042658 AFA80010 */ sw $t0, 0x10($sp) -/* 04325C 8004265C AFA00014 */ sw $zero, 0x14($sp) -/* 043260 80042660 0C002556 */ jal func_80009558 -/* 043264 80042664 240401A4 */ li $a0, 420 -/* 043268 80042668 10000008 */ b .L8004268C -/* 04326C 8004266C 240A0001 */ li $t2, 1 -.L80042670: -/* 043270 80042670 8E260010 */ lw $a2, 0x10($s1) -/* 043274 80042674 44050000 */ mfc1 $a1, $f0 -/* 043278 80042678 44071000 */ mfc1 $a3, $f2 -/* 04327C 8004267C AFA00014 */ sw $zero, 0x14($sp) -/* 043280 80042680 0C002556 */ jal func_80009558 -/* 043284 80042684 AFA90010 */ sw $t1, 0x10($sp) -/* 043288 80042688 240A0001 */ li $t2, 1 -.L8004268C: -/* 04328C 8004268C A20A0014 */ sb $t2, 0x14($s0) -/* 043290 80042690 C624000C */ lwc1 $f4, 0xc($s1) -/* 043294 80042694 860C001A */ lh $t4, 0x1a($s0) -/* 043298 80042698 E6040020 */ swc1 $f4, 0x20($s0) -/* 04329C 8004269C C6260014 */ lwc1 $f6, 0x14($s1) -/* 0432A0 800426A0 240B0020 */ li $t3, 32 -/* 0432A4 800426A4 A20B0018 */ sb $t3, 0x18($s0) -/* 0432A8 800426A8 000C6823 */ negu $t5, $t4 -/* 0432AC 800426AC E6060024 */ swc1 $f6, 0x24($s0) -/* 0432B0 800426B0 100000B0 */ b .L80042974 -/* 0432B4 800426B4 A62D0000 */ sh $t5, ($s1) -/* 0432B8 800426B8 820E0018 */ lb $t6, 0x18($s0) -/* 0432BC 800426BC 82020019 */ lb $v0, 0x19($s0) -/* 0432C0 800426C0 01C57823 */ subu $t7, $t6, $a1 -/* 0432C4 800426C4 18400003 */ blez $v0, .L800426D4 -/* 0432C8 800426C8 A20F0018 */ sb $t7, 0x18($s0) -/* 0432CC 800426CC 0045C023 */ subu $t8, $v0, $a1 -/* 0432D0 800426D0 A2180019 */ sb $t8, 0x19($s0) -.L800426D4: -/* 0432D4 800426D4 82030018 */ lb $v1, 0x18($s0) -/* 0432D8 800426D8 00002025 */ move $a0, $zero -/* 0432DC 800426DC 04610006 */ bgez $v1, .L800426F8 -/* 0432E0 800426E0 2405012C */ li $a1, 300 -/* 0432E4 800426E4 0C01BE53 */ jal func_8006F94C -/* 0432E8 800426E8 A2000014 */ sb $zero, 0x14($s0) -/* 0432EC 800426EC A2000018 */ sb $zero, 0x18($s0) -/* 0432F0 800426F0 82030018 */ lb $v1, 0x18($s0) -/* 0432F4 800426F4 A6020016 */ sh $v0, 0x16($s0) -.L800426F8: -/* 0432F8 800426F8 24190020 */ li $t9, 32 -/* 0432FC 800426FC 03234023 */ subu $t0, $t9, $v1 -/* 043300 80042700 000848C0 */ sll $t1, $t0, 3 -/* 043304 80042704 24010003 */ li $at, 3 -/* 043308 80042708 0121001A */ div $zero, $t1, $at -/* 04330C 8004270C 00005012 */ mflo $t2 -/* 043310 80042710 A62A0018 */ sh $t2, 0x18($s1) -/* 043314 80042714 820B0018 */ lb $t3, 0x18($s0) -/* 043318 80042718 00000000 */ nop -/* 04331C 8004271C 000B6680 */ sll $t4, $t3, 0x1a -/* 043320 80042720 0C01C1FE */ jal func_800707F8 -/* 043324 80042724 000C2403 */ sra $a0, $t4, 0x10 -/* 043328 80042728 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 04332C 8004272C 44816000 */ mtc1 $at, $f12 -/* 043330 80042730 C6080020 */ lwc1 $f8, 0x20($s0) -/* 043334 80042734 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 043338 80042738 44819000 */ mtc1 $at, $f18 -/* 04333C 8004273C 460C0400 */ add.s $f16, $f0, $f12 -/* 043340 80042740 E628000C */ swc1 $f8, 0xc($s1) -/* 043344 80042744 C60A0024 */ lwc1 $f10, 0x24($s0) -/* 043348 80042748 46128082 */ mul.s $f2, $f16, $f18 -/* 04334C 8004274C E62A0014 */ swc1 $f10, 0x14($s1) -/* 043350 80042750 C6040028 */ lwc1 $f4, 0x28($s0) -/* 043354 80042754 00000000 */ nop -/* 043358 80042758 46022182 */ mul.s $f6, $f4, $f2 -/* 04335C 8004275C E626001C */ swc1 $f6, 0x1c($s1) -/* 043360 80042760 C608002C */ lwc1 $f8, 0x2c($s0) -/* 043364 80042764 00000000 */ nop -/* 043368 80042768 46024282 */ mul.s $f10, $f8, $f2 -/* 04336C 8004276C 0C004558 */ jal func_80011560 -/* 043370 80042770 E62A0024 */ swc1 $f10, 0x24($s1) -/* 043374 80042774 4480A000 */ mtc1 $zero, $f20 -/* 043378 80042778 8E25001C */ lw $a1, 0x1c($s1) -/* 04337C 8004277C 8E270024 */ lw $a3, 0x24($s1) -/* 043380 80042780 4406A000 */ mfc1 $a2, $f20 -/* 043384 80042784 0C00455C */ jal func_80011570 -/* 043388 80042788 02202025 */ move $a0, $s1 -/* 04338C 8004278C 8624002E */ lh $a0, 0x2e($s1) -/* 043390 80042790 8E25000C */ lw $a1, 0xc($s1) -/* 043394 80042794 8E260014 */ lw $a2, 0x14($s1) -/* 043398 80042798 0C00AEAC */ jal func_8002BAB0 -/* 04339C 8004279C 27A7006C */ addiu $a3, $sp, 0x6c -/* 0433A0 800427A0 10400008 */ beqz $v0, .L800427C4 -/* 0433A4 800427A4 00000000 */ nop -/* 0433A8 800427A8 0C004558 */ jal func_80011560 -/* 0433AC 800427AC E6340010 */ swc1 $f20, 0x10($s1) -/* 0433B0 800427B0 4405A000 */ mfc1 $a1, $f20 -/* 0433B4 800427B4 8FA6006C */ lw $a2, 0x6c($sp) -/* 0433B8 800427B8 4407A000 */ mfc1 $a3, $f20 -/* 0433BC 800427BC 0C00455C */ jal func_80011570 -/* 0433C0 800427C0 02202025 */ move $a0, $s1 -.L800427C4: -/* 0433C4 800427C4 820E0019 */ lb $t6, 0x19($s0) -/* 0433C8 800427C8 00000000 */ nop -/* 0433CC 800427CC 1DC0006A */ bgtz $t6, .L80042978 -/* 0433D0 800427D0 8FBF0034 */ lw $ra, 0x34($sp) -/* 0433D4 800427D4 82030018 */ lb $v1, 0x18($s0) -/* 0433D8 800427D8 3C074220 */ lui $a3, 0x4220 -/* 0433DC 800427DC 28610006 */ slti $at, $v1, 6 -/* 0433E0 800427E0 14200004 */ bnez $at, .L800427F4 -/* 0433E4 800427E4 27AF0044 */ addiu $t7, $sp, 0x44 -/* 0433E8 800427E8 2861001B */ slti $at, $v1, 0x1b -/* 0433EC 800427EC 14200062 */ bnez $at, .L80042978 -/* 0433F0 800427F0 8FBF0034 */ lw $ra, 0x34($sp) -.L800427F4: -/* 0433F4 800427F4 C62C000C */ lwc1 $f12, 0xc($s1) -/* 0433F8 800427F8 C62E0010 */ lwc1 $f14, 0x10($s1) -/* 0433FC 800427FC 8E260014 */ lw $a2, 0x14($s1) -/* 043400 80042800 AFAF0014 */ sw $t7, 0x14($sp) -/* 043404 80042804 0C005B7A */ jal func_80016DE8 -/* 043408 80042808 AFA00010 */ sw $zero, 0x10($sp) -/* 04340C 8004280C 1040005A */ beqz $v0, .L80042978 -/* 043410 80042810 8FBF0034 */ lw $ra, 0x34($sp) -/* 043414 80042814 92180015 */ lbu $t8, 0x15($s0) -/* 043418 80042818 24080002 */ li $t0, 2 -/* 04341C 8004281C 13000014 */ beqz $t8, .L80042870 -/* 043420 80042820 2404013F */ li $a0, 319 -/* 043424 80042824 8E25000C */ lw $a1, 0xc($s1) -/* 043428 80042828 8E260010 */ lw $a2, 0x10($s1) -/* 04342C 8004282C 8E270014 */ lw $a3, 0x14($s1) -/* 043430 80042830 24190004 */ li $t9, 4 -/* 043434 80042834 AFB90010 */ sw $t9, 0x10($sp) -/* 043438 80042838 AFA00014 */ sw $zero, 0x14($sp) -/* 04343C 8004283C 0C002556 */ jal func_80009558 -/* 043440 80042840 24040174 */ li $a0, 372 -/* 043444 80042844 24040000 */ li $a0, 0 -/* 043448 80042848 0C027A9E */ jal func_8009EA78 -/* 04344C 8004284C 24050002 */ li $a1, 2 -/* 043450 80042850 0C0270B8 */ jal func_8009C2E0 -/* 043454 80042854 24040002 */ li $a0, 2 -/* 043458 80042858 0C01B629 */ jal func_8006D8A4 -/* 04345C 8004285C 00000000 */ nop -/* 043460 80042860 0C003FEE */ jal func_8000FFB8 -/* 043464 80042864 02202025 */ move $a0, $s1 -/* 043468 80042868 10000043 */ b .L80042978 -/* 04346C 8004286C 8FBF0034 */ lw $ra, 0x34($sp) -.L80042870: -/* 043470 80042870 A2080014 */ sb $t0, 0x14($s0) -/* 043474 80042874 8E270014 */ lw $a3, 0x14($s1) -/* 043478 80042878 8E260010 */ lw $a2, 0x10($s1) -/* 04347C 8004287C 8E25000C */ lw $a1, 0xc($s1) -/* 043480 80042880 24090004 */ li $t1, 4 -/* 043484 80042884 AFA90010 */ sw $t1, 0x10($sp) -/* 043488 80042888 0C002556 */ jal func_80009558 -/* 04348C 8004288C AFA00014 */ sw $zero, 0x14($sp) -/* 043490 80042890 10000039 */ b .L80042978 -/* 043494 80042894 8FBF0034 */ lw $ra, 0x34($sp) -/* 043498 80042898 3C01800E */ lui $at, %hi(D_800E6270) # $at, 0x800e -/* 04349C 8004289C C4206270 */ lwc1 $f0, %lo(D_800E6270)($at) -/* 0434A0 800428A0 3C01800E */ lui $at, %hi(D_800E6274) # $at, 0x800e -/* 0434A4 800428A4 C4326274 */ lwc1 $f18, %lo(D_800E6274)($at) -/* 0434A8 800428A8 C6100030 */ lwc1 $f16, 0x30($s0) -/* 0434AC 800428AC 46029102 */ mul.s $f4, $f18, $f2 -/* 0434B0 800428B0 240A0003 */ li $t2, 3 -/* 0434B4 800428B4 240B0028 */ li $t3, 40 -/* 0434B8 800428B8 46048181 */ sub.s $f6, $f16, $f4 -/* 0434BC 800428BC E6060030 */ swc1 $f6, 0x30($s0) -/* 0434C0 800428C0 C6080030 */ lwc1 $f8, 0x30($s0) -/* 0434C4 800428C4 00000000 */ nop -/* 0434C8 800428C8 4600403C */ c.lt.s $f8, $f0 -/* 0434CC 800428CC 00000000 */ nop -/* 0434D0 800428D0 45000029 */ bc1f .L80042978 -/* 0434D4 800428D4 8FBF0034 */ lw $ra, 0x34($sp) -/* 0434D8 800428D8 E6000030 */ swc1 $f0, 0x30($s0) -/* 0434DC 800428DC A20A0014 */ sb $t2, 0x14($s0) -/* 0434E0 800428E0 10000024 */ b .L80042974 -/* 0434E4 800428E4 A60B0016 */ sh $t3, 0x16($s0) -/* 0434E8 800428E8 860C0016 */ lh $t4, 0x16($s0) -/* 0434EC 800428EC 240F0004 */ li $t7, 4 -/* 0434F0 800428F0 01856823 */ subu $t5, $t4, $a1 -/* 0434F4 800428F4 A60D0016 */ sh $t5, 0x16($s0) -/* 0434F8 800428F8 860E0016 */ lh $t6, 0x16($s0) -/* 0434FC 800428FC 24040140 */ li $a0, 320 -/* 043500 80042900 05C1001C */ bgez $t6, .L80042974 -/* 043504 80042904 24180004 */ li $t8, 4 -/* 043508 80042908 A20F0014 */ sb $t7, 0x14($s0) -/* 04350C 8004290C 8E270014 */ lw $a3, 0x14($s1) -/* 043510 80042910 8E260010 */ lw $a2, 0x10($s1) -/* 043514 80042914 8E25000C */ lw $a1, 0xc($s1) -/* 043518 80042918 AFA00014 */ sw $zero, 0x14($sp) -/* 04351C 8004291C 0C002556 */ jal func_80009558 -/* 043520 80042920 AFB80010 */ sw $t8, 0x10($sp) -/* 043524 80042924 10000014 */ b .L80042978 -/* 043528 80042928 8FBF0034 */ lw $ra, 0x34($sp) -/* 04352C 8004292C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 043530 80042930 44816000 */ mtc1 $at, $f12 -/* 043534 80042934 C6000030 */ lwc1 $f0, 0x30($s0) -/* 043538 80042938 2419003C */ li $t9, 60 -/* 04353C 8004293C 4600603C */ c.lt.s $f12, $f0 -/* 043540 80042940 3C01800E */ lui $at, %hi(D_800E6278) # $at, 0x800e -/* 043544 80042944 45000006 */ bc1f .L80042960 -/* 043548 80042948 00000000 */ nop -/* 04354C 8004294C E60C0030 */ swc1 $f12, 0x30($s0) -/* 043550 80042950 A2000014 */ sb $zero, 0x14($s0) -/* 043554 80042954 A6000016 */ sh $zero, 0x16($s0) -/* 043558 80042958 10000006 */ b .L80042974 -/* 04355C 8004295C A2190019 */ sb $t9, 0x19($s0) -.L80042960: -/* 043560 80042960 C42A6278 */ lwc1 $f10, %lo(D_800E6278)($at) -/* 043564 80042964 00000000 */ nop -/* 043568 80042968 46025482 */ mul.s $f18, $f10, $f2 -/* 04356C 8004296C 46120400 */ add.s $f16, $f0, $f18 -/* 043570 80042970 E6100030 */ swc1 $f16, 0x30($s0) -.L80042974: -/* 043574 80042974 8FBF0034 */ lw $ra, 0x34($sp) -.L80042978: -/* 043578 80042978 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 04357C 8004297C C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 043580 80042980 C7B70020 */ lwc1 $f23, 0x20($sp) -/* 043584 80042984 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 043588 80042988 8FB0002C */ lw $s0, 0x2c($sp) -/* 04358C 8004298C 8FB10030 */ lw $s1, 0x30($sp) -/* 043590 80042990 03E00008 */ jr $ra -/* 043594 80042994 27BD0110 */ addiu $sp, $sp, 0x110 - -glabel func_80042998 -/* 043598 80042998 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 04359C 8004299C AFBF001C */ sw $ra, 0x1c($sp) -/* 0435A0 800429A0 AFA50024 */ sw $a1, 0x24($sp) -/* 0435A4 800429A4 AFA40020 */ sw $a0, 0x20($sp) -/* 0435A8 800429A8 0C007D18 */ jal func_8001F460 -/* 0435AC 800429AC 00803025 */ move $a2, $a0 -/* 0435B0 800429B0 0C002FD1 */ jal func_8000BF44 -/* 0435B4 800429B4 2404FFFF */ li $a0, -1 -/* 0435B8 800429B8 10400015 */ beqz $v0, .L80042A10 -/* 0435BC 800429BC 8FBF001C */ lw $ra, 0x1c($sp) -/* 0435C0 800429C0 8C430064 */ lw $v1, 0x64($v0) -/* 0435C4 800429C4 AC400078 */ sw $zero, 0x78($v0) -/* 0435C8 800429C8 10600010 */ beqz $v1, .L80042A0C -/* 0435CC 800429CC 24190002 */ li $t9, 2 -/* 0435D0 800429D0 8FAF0024 */ lw $t7, 0x24($sp) -/* 0435D4 800429D4 906E0072 */ lbu $t6, 0x72($v1) -/* 0435D8 800429D8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0435DC 800429DC 44812000 */ mtc1 $at, $f4 -/* 0435E0 800429E0 01CFC021 */ addu $t8, $t6, $t7 -/* 0435E4 800429E4 A0780072 */ sb $t8, 0x72($v1) -/* 0435E8 800429E8 A0790070 */ sb $t9, 0x70($v1) -/* 0435EC 800429EC E4640074 */ swc1 $f4, 0x74($v1) -/* 0435F0 800429F0 8FA40020 */ lw $a0, 0x20($sp) -/* 0435F4 800429F4 24080001 */ li $t0, 1 -/* 0435F8 800429F8 AFA80010 */ sw $t0, 0x10($sp) -/* 0435FC 800429FC 2405FFFF */ li $a1, -1 -/* 043600 80042A00 24060002 */ li $a2, 2 -/* 043604 80042A04 0C002DD4 */ jal func_8000B750 -/* 043608 80042A08 24070001 */ li $a3, 1 -.L80042A0C: -/* 04360C 80042A0C 8FBF001C */ lw $ra, 0x1c($sp) -.L80042A10: -/* 043610 80042A10 27BD0020 */ addiu $sp, $sp, 0x20 -/* 043614 80042A14 03E00008 */ jr $ra -/* 043618 80042A18 00000000 */ nop - -glabel func_80042A1C -/* 04361C 80042A1C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 043620 80042A20 AFBF0014 */ sw $ra, 0x14($sp) -/* 043624 80042A24 80AE0009 */ lb $t6, 9($a1) -/* 043628 80042A28 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 04362C 80042A2C 448E2000 */ mtc1 $t6, $f4 -/* 043630 80042A30 44814000 */ mtc1 $at, $f8 -/* 043634 80042A34 468021A0 */ cvt.s.w $f6, $f4 -/* 043638 80042A38 46083282 */ mul.s $f10, $f6, $f8 -/* 04363C 80042A3C E48A0078 */ swc1 $f10, 0x78($a0) -/* 043640 80042A40 C4800078 */ lwc1 $f0, 0x78($a0) -/* 043644 80042A44 00000000 */ nop -/* 043648 80042A48 46000402 */ mul.s $f16, $f0, $f0 -/* 04364C 80042A4C E4900078 */ swc1 $f16, 0x78($a0) -/* 043650 80042A50 80AF0008 */ lb $t7, 8($a1) -/* 043654 80042A54 A480007E */ sh $zero, 0x7e($a0) -/* 043658 80042A58 A48F007C */ sh $t7, 0x7c($a0) -/* 04365C 80042A5C 0C0270B4 */ jal func_8009C2D0 -/* 043660 80042A60 AFA40018 */ sw $a0, 0x18($sp) -/* 043664 80042A64 8FA40018 */ lw $a0, 0x18($sp) -/* 043668 80042A68 10400003 */ beqz $v0, .L80042A78 -/* 04366C 80042A6C 00000000 */ nop -/* 043670 80042A70 0C003FEE */ jal func_8000FFB8 -/* 043674 80042A74 00000000 */ nop -.L80042A78: -/* 043678 80042A78 0C0315B4 */ jal func_800C56D0 -/* 04367C 80042A7C 24040004 */ li $a0, 4 -/* 043680 80042A80 8FBF0014 */ lw $ra, 0x14($sp) -/* 043684 80042A84 27BD0018 */ addiu $sp, $sp, 0x18 -/* 043688 80042A88 03E00008 */ jr $ra -/* 04368C 80042A8C 00000000 */ nop - -glabel func_80042A90 -/* 043690 80042A90 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 043694 80042A94 AFBF0024 */ sw $ra, 0x24($sp) -/* 043698 80042A98 00803025 */ move $a2, $a0 -/* 04369C 80042A9C AFB00020 */ sw $s0, 0x20($sp) -/* 0436A0 80042AA0 AFA5005C */ sw $a1, 0x5c($sp) -/* 0436A4 80042AA4 AFA60058 */ sw $a2, 0x58($sp) -/* 0436A8 80042AA8 0C006EC6 */ jal func_8001BB18 -/* 0436AC 80042AAC 00002025 */ move $a0, $zero -/* 0436B0 80042AB0 8FA3005C */ lw $v1, 0x5c($sp) -/* 0436B4 80042AB4 8FA60058 */ lw $a2, 0x58($sp) -/* 0436B8 80042AB8 10400082 */ beqz $v0, .L80042CC4 -/* 0436BC 80042ABC 8FBF0024 */ lw $ra, 0x24($sp) -/* 0436C0 80042AC0 C4C4000C */ lwc1 $f4, 0xc($a2) -/* 0436C4 80042AC4 C446000C */ lwc1 $f6, 0xc($v0) -/* 0436C8 80042AC8 C4C80014 */ lwc1 $f8, 0x14($a2) -/* 0436CC 80042ACC 46062001 */ sub.s $f0, $f4, $f6 -/* 0436D0 80042AD0 C44A0014 */ lwc1 $f10, 0x14($v0) -/* 0436D4 80042AD4 46000402 */ mul.s $f16, $f0, $f0 -/* 0436D8 80042AD8 460A4081 */ sub.s $f2, $f8, $f10 -/* 0436DC 80042ADC C4C60078 */ lwc1 $f6, 0x78($a2) -/* 0436E0 80042AE0 24D00078 */ addiu $s0, $a2, 0x78 -/* 0436E4 80042AE4 46021482 */ mul.s $f18, $f2, $f2 -/* 0436E8 80042AE8 46128100 */ add.s $f4, $f16, $f18 -/* 0436EC 80042AEC 4606203C */ c.lt.s $f4, $f6 -/* 0436F0 80042AF0 00000000 */ nop -/* 0436F4 80042AF4 4500000F */ bc1f .L80042B34 -/* 0436F8 80042AF8 00000000 */ nop -/* 0436FC 80042AFC 24D00078 */ addiu $s0, $a2, 0x78 -/* 043700 80042B00 860E0006 */ lh $t6, 6($s0) -/* 043704 80042B04 00037900 */ sll $t7, $v1, 4 -/* 043708 80042B08 01CFC021 */ addu $t8, $t6, $t7 -/* 04370C 80042B0C A6180006 */ sh $t8, 6($s0) -/* 043710 80042B10 86020006 */ lh $v0, 6($s0) -/* 043714 80042B14 24190100 */ li $t9, 256 -/* 043718 80042B18 28410101 */ slti $at, $v0, 0x101 -/* 04371C 80042B1C 14200010 */ bnez $at, .L80042B60 -/* 043720 80042B20 00000000 */ nop -/* 043724 80042B24 A6190006 */ sh $t9, 6($s0) -/* 043728 80042B28 86020006 */ lh $v0, 6($s0) -/* 04372C 80042B2C 1000000C */ b .L80042B60 -/* 043730 80042B30 00000000 */ nop -.L80042B34: -/* 043734 80042B34 86080006 */ lh $t0, 6($s0) -/* 043738 80042B38 00034900 */ sll $t1, $v1, 4 -/* 04373C 80042B3C 01095023 */ subu $t2, $t0, $t1 -/* 043740 80042B40 A60A0006 */ sh $t2, 6($s0) -/* 043744 80042B44 86020006 */ lh $v0, 6($s0) -/* 043748 80042B48 00000000 */ nop -/* 04374C 80042B4C 04410004 */ bgez $v0, .L80042B60 -/* 043750 80042B50 00000000 */ nop -/* 043754 80042B54 A6000006 */ sh $zero, 6($s0) -/* 043758 80042B58 86020006 */ lh $v0, 6($s0) -/* 04375C 80042B5C 00000000 */ nop -.L80042B60: -/* 043760 80042B60 18400058 */ blez $v0, .L80042CC4 -/* 043764 80042B64 8FBF0024 */ lw $ra, 0x24($sp) -/* 043768 80042B68 86040004 */ lh $a0, 4($s0) -/* 04376C 80042B6C 0C01AF77 */ jal func_8006BDDC -/* 043770 80042B70 00000000 */ nop -/* 043774 80042B74 AFA2002C */ sw $v0, 0x2c($sp) -/* 043778 80042B78 00402025 */ move $a0, $v0 -/* 04377C 80042B7C 00002825 */ move $a1, $zero -/* 043780 80042B80 0C031368 */ jal func_800C4DA0 -/* 043784 80042B84 00003025 */ move $a2, $zero -/* 043788 80042B88 24430018 */ addiu $v1, $v0, 0x18 -/* 04378C 80042B8C 00035843 */ sra $t3, $v1, 1 -/* 043790 80042B90 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 -/* 043794 80042B94 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) -/* 043798 80042B98 240C00A0 */ li $t4, 160 -/* 04379C 80042B9C 018B6823 */ subu $t5, $t4, $t3 -/* 0437A0 80042BA0 256E00A0 */ addiu $t6, $t3, 0xa0 -/* 0437A4 80042BA4 AFAD0050 */ sw $t5, 0x50($sp) -/* 0437A8 80042BA8 15E00006 */ bnez $t7, .L80042BC4 -/* 0437AC 80042BAC AFAE0048 */ sw $t6, 0x48($sp) -/* 0437B0 80042BB0 241800E0 */ li $t8, 224 -/* 0437B4 80042BB4 241900F8 */ li $t9, 248 -/* 0437B8 80042BB8 AFB8004C */ sw $t8, 0x4c($sp) -/* 0437BC 80042BBC 10000005 */ b .L80042BD4 -/* 0437C0 80042BC0 AFB90044 */ sw $t9, 0x44($sp) -.L80042BC4: -/* 0437C4 80042BC4 240800CA */ li $t0, 202 -/* 0437C8 80042BC8 240900DE */ li $t1, 222 -/* 0437CC 80042BCC AFA8004C */ sw $t0, 0x4c($sp) -/* 0437D0 80042BD0 AFA90044 */ sw $t1, 0x44($sp) -.L80042BD4: -/* 0437D4 80042BD4 0C031525 */ jal func_800C5494 -/* 0437D8 80042BD8 24040004 */ li $a0, 4 -/* 0437DC 80042BDC 8FAA0044 */ lw $t2, 0x44($sp) -/* 0437E0 80042BE0 8FA50050 */ lw $a1, 0x50($sp) -/* 0437E4 80042BE4 8FA6004C */ lw $a2, 0x4c($sp) -/* 0437E8 80042BE8 8FA70048 */ lw $a3, 0x48($sp) -/* 0437EC 80042BEC 24040004 */ li $a0, 4 -/* 0437F0 80042BF0 0C0313B7 */ jal func_800C4EDC -/* 0437F4 80042BF4 AFAA0010 */ sw $t2, 0x10($sp) -/* 0437F8 80042BF8 860B0006 */ lh $t3, 6($s0) -/* 0437FC 80042BFC 24040004 */ li $a0, 4 -/* 043800 80042C00 000B6080 */ sll $t4, $t3, 2 -/* 043804 80042C04 018B6021 */ addu $t4, $t4, $t3 -/* 043808 80042C08 000C6140 */ sll $t4, $t4, 5 -/* 04380C 80042C0C 000C6A03 */ sra $t5, $t4, 8 -/* 043810 80042C10 AFAD0010 */ sw $t5, 0x10($sp) -/* 043814 80042C14 24050080 */ li $a1, 128 -/* 043818 80042C18 24060040 */ li $a2, 64 -/* 04381C 80042C1C 0C0313EF */ jal func_800C4FBC -/* 043820 80042C20 24070080 */ li $a3, 128 -/* 043824 80042C24 24040004 */ li $a0, 4 -/* 043828 80042C28 00002825 */ move $a1, $zero -/* 04382C 80042C2C 00003025 */ move $a2, $zero -/* 043830 80042C30 00003825 */ move $a3, $zero -/* 043834 80042C34 0C031414 */ jal func_800C5050 -/* 043838 80042C38 AFA00010 */ sw $zero, 0x10($sp) -/* 04383C 80042C3C 24040004 */ li $a0, 4 -/* 043840 80042C40 0C0313DF */ jal func_800C4F7C -/* 043844 80042C44 00002825 */ move $a1, $zero -/* 043848 80042C48 AFA00010 */ sw $zero, 0x10($sp) -/* 04384C 80042C4C 860E0006 */ lh $t6, 6($s0) -/* 043850 80042C50 24040004 */ li $a0, 4 -/* 043854 80042C54 000E7A00 */ sll $t7, $t6, 8 -/* 043858 80042C58 01EE7823 */ subu $t7, $t7, $t6 -/* 04385C 80042C5C 000FC203 */ sra $t8, $t7, 8 -/* 043860 80042C60 AFB80014 */ sw $t8, 0x14($sp) -/* 043864 80042C64 240500FF */ li $a1, 255 -/* 043868 80042C68 240600FF */ li $a2, 255 -/* 04386C 80042C6C 0C031400 */ jal func_800C5000 -/* 043870 80042C70 240700FF */ li $a3, 255 -/* 043874 80042C74 8FB90048 */ lw $t9, 0x48($sp) -/* 043878 80042C78 8FA80050 */ lw $t0, 0x50($sp) -/* 04387C 80042C7C 8FAA0044 */ lw $t2, 0x44($sp) -/* 043880 80042C80 8FAB004C */ lw $t3, 0x4c($sp) -/* 043884 80042C84 03282823 */ subu $a1, $t9, $t0 -/* 043888 80042C88 014B3023 */ subu $a2, $t2, $t3 -/* 04388C 80042C8C 00066043 */ sra $t4, $a2, 1 -/* 043890 80042C90 00054843 */ sra $t1, $a1, 1 -/* 043894 80042C94 8FA7002C */ lw $a3, 0x2c($sp) -/* 043898 80042C98 240D0001 */ li $t5, 1 -/* 04389C 80042C9C 240E000C */ li $t6, 12 -/* 0438A0 80042CA0 AFAE0014 */ sw $t6, 0x14($sp) -/* 0438A4 80042CA4 AFAD0010 */ sw $t5, 0x10($sp) -/* 0438A8 80042CA8 01202825 */ move $a1, $t1 -/* 0438AC 80042CAC 25860002 */ addiu $a2, $t4, 2 -/* 0438B0 80042CB0 0C03145A */ jal func_800C5168 -/* 0438B4 80042CB4 24040004 */ li $a0, 4 -/* 0438B8 80042CB8 0C03157D */ jal func_800C55F4 -/* 0438BC 80042CBC 24040004 */ li $a0, 4 -/* 0438C0 80042CC0 8FBF0024 */ lw $ra, 0x24($sp) -.L80042CC4: -/* 0438C4 80042CC4 8FB00020 */ lw $s0, 0x20($sp) -/* 0438C8 80042CC8 03E00008 */ jr $ra -/* 0438CC 80042CCC 27BD0058 */ addiu $sp, $sp, 0x58 - -glabel func_80042CD0 -/* 0438D0 80042CD0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0438D4 80042CD4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0438D8 80042CD8 AFA5001C */ sw $a1, 0x1c($sp) -/* 0438DC 80042CDC AFA40018 */ sw $a0, 0x18($sp) -/* 0438E0 80042CE0 0C007D18 */ jal func_8001F460 -/* 0438E4 80042CE4 00803025 */ move $a2, $a0 -/* 0438E8 80042CE8 8FA40018 */ lw $a0, 0x18($sp) -/* 0438EC 80042CEC 8FAF001C */ lw $t7, 0x1c($sp) -/* 0438F0 80042CF0 848E0018 */ lh $t6, 0x18($a0) -/* 0438F4 80042CF4 000FC0C0 */ sll $t8, $t7, 3 -/* 0438F8 80042CF8 01D8C821 */ addu $t9, $t6, $t8 -/* 0438FC 80042CFC 332800FF */ andi $t0, $t9, 0xff -/* 043900 80042D00 A4880018 */ sh $t0, 0x18($a0) -/* 043904 80042D04 8FBF0014 */ lw $ra, 0x14($sp) -/* 043908 80042D08 27BD0018 */ addiu $sp, $sp, 0x18 -/* 04390C 80042D0C 03E00008 */ jr $ra -/* 043910 80042D10 00000000 */ nop - -/* 043914 80042D14 00000000 */ nop -/* 043918 80042D18 00000000 */ nop -/* 04391C 80042D1C 00000000 */ nop diff --git a/asm/unknown_043920.s b/asm/unknown_043920.s deleted file mode 100755 index 301b9449..00000000 --- a/asm/unknown_043920.s +++ /dev/null @@ -1,27956 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_80042D20 -/* 043920 80042D20 27BDFF68 */ addiu $sp, $sp, -0x98 -/* 043924 80042D24 AFBF001C */ sw $ra, 0x1c($sp) -/* 043928 80042D28 AFB00018 */ sw $s0, 0x18($sp) -/* 04392C 80042D2C AFA40098 */ sw $a0, 0x98($sp) -/* 043930 80042D30 AFA600A0 */ sw $a2, 0xa0($sp) -/* 043934 80042D34 80AE01CA */ lb $t6, 0x1ca($a1) -/* 043938 80042D38 00A08025 */ move $s0, $a1 -/* 04393C 80042D3C 24040001 */ li $a0, 1 -/* 043940 80042D40 0C0078A7 */ jal func_8001E29C -/* 043944 80042D44 A7AE006E */ sh $t6, 0x6e($sp) -/* 043948 80042D48 AFA20040 */ sw $v0, 0x40($sp) -/* 04394C 80042D4C 0C0078A7 */ jal func_8001E29C -/* 043950 80042D50 24040002 */ li $a0, 2 -/* 043954 80042D54 0C01AF6C */ jal func_8006BDB0 -/* 043958 80042D58 AFA20044 */ sw $v0, 0x44($sp) -/* 04395C 80042D5C AFA20050 */ sw $v0, 0x50($sp) -/* 043960 80042D60 0C006EAB */ jal func_8001BAAC -/* 043964 80042D64 27A40068 */ addiu $a0, $sp, 0x68 -/* 043968 80042D68 0C01B063 */ jal func_8006C18C -/* 04396C 80042D6C AFA20060 */ sw $v0, 0x60($sp) -/* 043970 80042D70 AFA20054 */ sw $v0, 0x54($sp) -/* 043974 80042D74 860301C6 */ lh $v1, 0x1c6($s0) -/* 043978 80042D78 8FAA0060 */ lw $t2, 0x60($sp) -/* 04397C 80042D7C 18600006 */ blez $v1, .L80042D98 -/* 043980 80042D80 00000000 */ nop -/* 043984 80042D84 8FAF00A0 */ lw $t7, 0xa0($sp) -/* 043988 80042D88 00000000 */ nop -/* 04398C 80042D8C 006FC023 */ subu $t8, $v1, $t7 -/* 043990 80042D90 10000002 */ b .L80042D9C -/* 043994 80042D94 A61801C6 */ sh $t8, 0x1c6($s0) -.L80042D98: -/* 043998 80042D98 A60001C6 */ sh $zero, 0x1c6($s0) -.L80042D9C: -/* 04399C 80042D9C 0C006B91 */ jal func_8001AE44 -/* 0439A0 80042DA0 AFAA0060 */ sw $t2, 0x60($sp) -/* 0439A4 80042DA4 8FAA0060 */ lw $t2, 0x60($sp) -/* 0439A8 80042DA8 10400007 */ beqz $v0, .L80042DC8 -/* 0439AC 80042DAC 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 -/* 0439B0 80042DB0 2442D528 */ addiu $v0, %lo(D_8011D528) # addiu $v0, $v0, -0x2ad8 -/* 0439B4 80042DB4 8C590000 */ lw $t9, ($v0) -/* 0439B8 80042DB8 00000000 */ nop -/* 0439BC 80042DBC 372E8000 */ ori $t6, $t9, 0x8000 -/* 0439C0 80042DC0 1000043E */ b .L80043EBC -/* 0439C4 80042DC4 AC4E0000 */ sw $t6, ($v0) -.L80042DC8: -/* 0439C8 80042DC8 8FAF0068 */ lw $t7, 0x68($sp) -/* 0439CC 80042DCC 00001825 */ move $v1, $zero -/* 0439D0 80042DD0 00006825 */ move $t5, $zero -/* 0439D4 80042DD4 00004025 */ move $t0, $zero -/* 0439D8 80042DD8 240CFFFF */ li $t4, -1 -/* 0439DC 80042DDC 19E00024 */ blez $t7, .L80042E70 -/* 0439E0 80042DE0 24020001 */ li $v0, 1 -/* 0439E4 80042DE4 241FFFFF */ li $ra, -1 -/* 0439E8 80042DE8 0003C080 */ sll $t8, $v1, 2 -.L80042DEC: -/* 0439EC 80042DEC 0158C821 */ addu $t9, $t2, $t8 -/* 0439F0 80042DF0 8F2E0000 */ lw $t6, ($t9) -/* 0439F4 80042DF4 00000000 */ nop -/* 0439F8 80042DF8 8DC90064 */ lw $t1, 0x64($t6) -/* 0439FC 80042DFC 00000000 */ nop -/* 043A00 80042E00 15300003 */ bne $t1, $s0, .L80042E10 -/* 043A04 80042E04 00000000 */ nop -/* 043A08 80042E08 00001025 */ move $v0, $zero -/* 043A0C 80042E0C A7A30072 */ sh $v1, 0x72($sp) -.L80042E10: -/* 043A10 80042E10 852F0000 */ lh $t7, ($t1) -/* 043A14 80042E14 00000000 */ nop -/* 043A18 80042E18 17EF0009 */ bne $ra, $t7, .L80042E40 -/* 043A1C 80042E1C 00000000 */ nop -/* 043A20 80042E20 25080001 */ addiu $t0, $t0, 1 -/* 043A24 80042E24 0008C400 */ sll $t8, $t0, 0x10 -/* 043A28 80042E28 1040000A */ beqz $v0, .L80042E54 -/* 043A2C 80042E2C 00184403 */ sra $t0, $t8, 0x10 -/* 043A30 80042E30 25AD0001 */ addiu $t5, $t5, 1 -/* 043A34 80042E34 000D7400 */ sll $t6, $t5, 0x10 -/* 043A38 80042E38 10000006 */ b .L80042E54 -/* 043A3C 80042E3C 000E6C03 */ sra $t5, $t6, 0x10 -.L80042E40: -/* 043A40 80042E40 159F0004 */ bne $t4, $ra, .L80042E54 -/* 043A44 80042E44 00000000 */ nop -/* 043A48 80042E48 00036400 */ sll $t4, $v1, 0x10 -/* 043A4C 80042E4C 000CC403 */ sra $t8, $t4, 0x10 -/* 043A50 80042E50 03006025 */ move $t4, $t8 -.L80042E54: -/* 043A54 80042E54 24630001 */ addiu $v1, $v1, 1 -/* 043A58 80042E58 8FAF0068 */ lw $t7, 0x68($sp) -/* 043A5C 80042E5C 0003CC00 */ sll $t9, $v1, 0x10 -/* 043A60 80042E60 00191C03 */ sra $v1, $t9, 0x10 -/* 043A64 80042E64 006F082A */ slt $at, $v1, $t7 -/* 043A68 80042E68 1420FFE0 */ bnez $at, .L80042DEC -/* 043A6C 80042E6C 0003C080 */ sll $t8, $v1, 2 -.L80042E70: -/* 043A70 80042E70 241FFFFF */ li $ra, -1 -/* 043A74 80042E74 159F0002 */ bne $t4, $ra, .L80042E80 -/* 043A78 80042E78 00000000 */ nop -/* 043A7C 80042E7C 00006025 */ move $t4, $zero -.L80042E80: -/* 043A80 80042E80 1100040F */ beqz $t0, .L80043EC0 -/* 043A84 80042E84 8FBF001C */ lw $ra, 0x1c($sp) -/* 043A88 80042E88 A7A80076 */ sh $t0, 0x76($sp) -/* 043A8C 80042E8C AFAA0060 */ sw $t2, 0x60($sp) -/* 043A90 80042E90 A7AC0034 */ sh $t4, 0x34($sp) -/* 043A94 80042E94 0C008D5A */ jal func_80023568 -/* 043A98 80042E98 A7AD0078 */ sh $t5, 0x78($sp) -/* 043A9C 80042E9C 3C188012 */ lui $t8, %hi(D_8011D540) # $t8, 0x8012 -/* 043AA0 80042EA0 8F18D540 */ lw $t8, %lo(D_8011D540)($t8) -/* 043AA4 80042EA4 87A80076 */ lh $t0, 0x76($sp) -/* 043AA8 80042EA8 8FAA0060 */ lw $t2, 0x60($sp) -/* 043AAC 80042EAC 87AC0034 */ lh $t4, 0x34($sp) -/* 043AB0 80042EB0 87AD0078 */ lh $t5, 0x78($sp) -/* 043AB4 80042EB4 241FFFFF */ li $ra, -1 -/* 043AB8 80042EB8 17000088 */ bnez $t8, .L800430DC -/* 043ABC 80042EBC A7A20070 */ sh $v0, 0x70($sp) -/* 043AC0 80042EC0 821901D6 */ lb $t9, 0x1d6($s0) -/* 043AC4 80042EC4 24010004 */ li $at, 4 -/* 043AC8 80042EC8 13210085 */ beq $t9, $at, .L800430E0 -/* 043ACC 80042ECC 87A70072 */ lh $a3, 0x72($sp) -/* 043AD0 80042ED0 87A70072 */ lh $a3, 0x72($sp) -/* 043AD4 80042ED4 9204020B */ lbu $a0, 0x20b($s0) -/* 043AD8 80042ED8 24E3FFFF */ addiu $v1, $a3, -1 -/* 043ADC 80042EDC 0087082A */ slt $at, $a0, $a3 -/* 043AE0 80042EE0 10200043 */ beqz $at, .L80042FF0 -/* 043AE4 80042EE4 00037400 */ sll $t6, $v1, 0x10 -/* 043AE8 80042EE8 000E7C03 */ sra $t7, $t6, 0x10 -/* 043AEC 80042EEC 05E00041 */ bltz $t7, .L80042FF4 -/* 043AF0 80042EF0 87AE0072 */ lh $t6, 0x72($sp) -/* 043AF4 80042EF4 8FB80068 */ lw $t8, 0x68($sp) -/* 043AF8 80042EF8 000FC880 */ sll $t9, $t7, 2 -/* 043AFC 80042EFC 01F8082A */ slt $at, $t7, $t8 -/* 043B00 80042F00 1020003B */ beqz $at, .L80042FF0 -/* 043B04 80042F04 01595821 */ addu $t3, $t2, $t9 -/* 043B08 80042F08 8D6E0000 */ lw $t6, ($t3) -/* 043B0C 80042F0C 0002C400 */ sll $t8, $v0, 0x10 -/* 043B10 80042F10 8DC90064 */ lw $t1, 0x64($t6) -/* 043B14 80042F14 0018CC03 */ sra $t9, $t8, 0x10 -/* 043B18 80042F18 852F0000 */ lh $t7, ($t1) -/* 043B1C 80042F1C 00000000 */ nop -/* 043B20 80042F20 13EF0034 */ beq $ra, $t7, .L80042FF4 -/* 043B24 80042F24 87AE0072 */ lh $t6, 0x72($sp) -/* 043B28 80042F28 17200011 */ bnez $t9, .L80042F70 -/* 043B2C 80042F2C 240501C2 */ li $a1, 450 -/* 043B30 80042F30 8FA40098 */ lw $a0, 0x98($sp) -/* 043B34 80042F34 24060008 */ li $a2, 8 -/* 043B38 80042F38 24070003 */ li $a3, 3 -/* 043B3C 80042F3C A7A80076 */ sh $t0, 0x76($sp) -/* 043B40 80042F40 AFAA0060 */ sw $t2, 0x60($sp) -/* 043B44 80042F44 AFAB0024 */ sw $t3, 0x24($sp) -/* 043B48 80042F48 A7AC0034 */ sh $t4, 0x34($sp) -/* 043B4C 80042F4C 0C015C2E */ jal func_800570B8 -/* 043B50 80042F50 A7AD0078 */ sh $t5, 0x78($sp) -/* 043B54 80042F54 87A80076 */ lh $t0, 0x76($sp) -/* 043B58 80042F58 8FAA0060 */ lw $t2, 0x60($sp) -/* 043B5C 80042F5C 8FAB0024 */ lw $t3, 0x24($sp) -/* 043B60 80042F60 87AC0034 */ lh $t4, 0x34($sp) -/* 043B64 80042F64 87AD0078 */ lh $t5, 0x78($sp) -/* 043B68 80042F68 10000013 */ b .L80042FB8 -/* 043B6C 80042F6C 8D640000 */ lw $a0, ($t3) -.L80042F70: -/* 043B70 80042F70 8FA20098 */ lw $v0, 0x98($sp) -/* 043B74 80042F74 24070005 */ li $a3, 5 -/* 043B78 80042F78 C44C000C */ lwc1 $f12, 0xc($v0) -/* 043B7C 80042F7C C44E0010 */ lwc1 $f14, 0x10($v0) -/* 043B80 80042F80 8C460014 */ lw $a2, 0x14($v0) -/* 043B84 80042F84 A7AD0078 */ sh $t5, 0x78($sp) -/* 043B88 80042F88 A7AC0034 */ sh $t4, 0x34($sp) -/* 043B8C 80042F8C AFAB0024 */ sw $t3, 0x24($sp) -/* 043B90 80042F90 AFAA0060 */ sw $t2, 0x60($sp) -/* 043B94 80042F94 0C0172A1 */ jal func_8005CA84 -/* 043B98 80042F98 A7A80076 */ sh $t0, 0x76($sp) -/* 043B9C 80042F9C 87A80076 */ lh $t0, 0x76($sp) -/* 043BA0 80042FA0 8FAA0060 */ lw $t2, 0x60($sp) -/* 043BA4 80042FA4 8FAB0024 */ lw $t3, 0x24($sp) -/* 043BA8 80042FA8 87AC0034 */ lh $t4, 0x34($sp) -/* 043BAC 80042FAC 87AD0078 */ lh $t5, 0x78($sp) -/* 043BB0 80042FB0 00000000 */ nop -/* 043BB4 80042FB4 8D640000 */ lw $a0, ($t3) -.L80042FB8: -/* 043BB8 80042FB8 A7AD0078 */ sh $t5, 0x78($sp) -/* 043BBC 80042FBC A7AC0034 */ sh $t4, 0x34($sp) -/* 043BC0 80042FC0 AFAA0060 */ sw $t2, 0x60($sp) -/* 043BC4 80042FC4 A7A80076 */ sh $t0, 0x76($sp) -/* 043BC8 80042FC8 24050162 */ li $a1, 354 -/* 043BCC 80042FCC 24060008 */ li $a2, 8 -/* 043BD0 80042FD0 0C015C2E */ jal func_800570B8 -/* 043BD4 80042FD4 24070002 */ li $a3, 2 -/* 043BD8 80042FD8 87A80076 */ lh $t0, 0x76($sp) -/* 043BDC 80042FDC 8FAA0060 */ lw $t2, 0x60($sp) -/* 043BE0 80042FE0 87AC0034 */ lh $t4, 0x34($sp) -/* 043BE4 80042FE4 87AD0078 */ lh $t5, 0x78($sp) -/* 043BE8 80042FE8 9204020B */ lbu $a0, 0x20b($s0) -/* 043BEC 80042FEC 241FFFFF */ li $ra, -1 -.L80042FF0: -/* 043BF0 80042FF0 87AE0072 */ lh $t6, 0x72($sp) -.L80042FF4: -/* 043BF4 80042FF4 00000000 */ nop -/* 043BF8 80042FF8 01C4082A */ slt $at, $t6, $a0 -/* 043BFC 80042FFC 10200037 */ beqz $at, .L800430DC -/* 043C00 80043000 25C20001 */ addiu $v0, $t6, 1 -/* 043C04 80043004 00027C00 */ sll $t7, $v0, 0x10 -/* 043C08 80043008 000FC403 */ sra $t8, $t7, 0x10 -/* 043C0C 8004300C 07000034 */ bltz $t8, .L800430E0 -/* 043C10 80043010 87A70072 */ lh $a3, 0x72($sp) -/* 043C14 80043014 8FB90068 */ lw $t9, 0x68($sp) -/* 043C18 80043018 00187880 */ sll $t7, $t8, 2 -/* 043C1C 8004301C 0319082A */ slt $at, $t8, $t9 -/* 043C20 80043020 1020002E */ beqz $at, .L800430DC -/* 043C24 80043024 014FC021 */ addu $t8, $t2, $t7 -/* 043C28 80043028 8F190000 */ lw $t9, ($t8) -/* 043C2C 8004302C 000EC080 */ sll $t8, $t6, 2 -/* 043C30 80043030 8F290064 */ lw $t1, 0x64($t9) -/* 043C34 80043034 0158C821 */ addu $t9, $t2, $t8 -/* 043C38 80043038 852F0000 */ lh $t7, ($t1) -/* 043C3C 8004303C 240501C2 */ li $a1, 450 -/* 043C40 80043040 13EF0026 */ beq $ra, $t7, .L800430DC -/* 043C44 80043044 24060008 */ li $a2, 8 -/* 043C48 80043048 8F240004 */ lw $a0, 4($t9) -/* 043C4C 8004304C A7AD0078 */ sh $t5, 0x78($sp) -/* 043C50 80043050 A7AC0034 */ sh $t4, 0x34($sp) -/* 043C54 80043054 A7A80076 */ sh $t0, 0x76($sp) -/* 043C58 80043058 0C015C2E */ jal func_800570B8 -/* 043C5C 8004305C 24070002 */ li $a3, 2 -/* 043C60 80043060 87AF0070 */ lh $t7, 0x70($sp) -/* 043C64 80043064 87A80076 */ lh $t0, 0x76($sp) -/* 043C68 80043068 87AC0034 */ lh $t4, 0x34($sp) -/* 043C6C 8004306C 87AD0078 */ lh $t5, 0x78($sp) -/* 043C70 80043070 15E0000D */ bnez $t7, .L800430A8 -/* 043C74 80043074 24050162 */ li $a1, 354 -/* 043C78 80043078 8FA40098 */ lw $a0, 0x98($sp) -/* 043C7C 8004307C 24060008 */ li $a2, 8 -/* 043C80 80043080 24070003 */ li $a3, 3 -/* 043C84 80043084 A7A80076 */ sh $t0, 0x76($sp) -/* 043C88 80043088 A7AC0034 */ sh $t4, 0x34($sp) -/* 043C8C 8004308C 0C015C2E */ jal func_800570B8 -/* 043C90 80043090 A7AD0078 */ sh $t5, 0x78($sp) -/* 043C94 80043094 87A80076 */ lh $t0, 0x76($sp) -/* 043C98 80043098 87AC0034 */ lh $t4, 0x34($sp) -/* 043C9C 8004309C 87AD0078 */ lh $t5, 0x78($sp) -/* 043CA0 800430A0 1000000F */ b .L800430E0 -/* 043CA4 800430A4 87A70072 */ lh $a3, 0x72($sp) -.L800430A8: -/* 043CA8 800430A8 8FA20098 */ lw $v0, 0x98($sp) -/* 043CAC 800430AC 24070003 */ li $a3, 3 -/* 043CB0 800430B0 C44C000C */ lwc1 $f12, 0xc($v0) -/* 043CB4 800430B4 C44E0010 */ lwc1 $f14, 0x10($v0) -/* 043CB8 800430B8 8C460014 */ lw $a2, 0x14($v0) -/* 043CBC 800430BC A7AD0078 */ sh $t5, 0x78($sp) -/* 043CC0 800430C0 A7AC0034 */ sh $t4, 0x34($sp) -/* 043CC4 800430C4 0C0172A1 */ jal func_8005CA84 -/* 043CC8 800430C8 A7A80076 */ sh $t0, 0x76($sp) -/* 043CCC 800430CC 87A80076 */ lh $t0, 0x76($sp) -/* 043CD0 800430D0 87AC0034 */ lh $t4, 0x34($sp) -/* 043CD4 800430D4 87AD0078 */ lh $t5, 0x78($sp) -/* 043CD8 800430D8 00000000 */ nop -.L800430DC: -/* 043CDC 800430DC 87A70072 */ lh $a3, 0x72($sp) -.L800430E0: -/* 043CE0 800430E0 44800000 */ mtc1 $zero, $f0 -/* 043CE4 800430E4 A207020B */ sb $a3, 0x20b($s0) -/* 043CE8 800430E8 A7AD0078 */ sh $t5, 0x78($sp) -/* 043CEC 800430EC A7AC0034 */ sh $t4, 0x34($sp) -/* 043CF0 800430F0 AFA0005C */ sw $zero, 0x5c($sp) -/* 043CF4 800430F4 A7A80076 */ sh $t0, 0x76($sp) -/* 043CF8 800430F8 02002025 */ move $a0, $s0 -/* 043CFC 800430FC 24050001 */ li $a1, 1 -/* 043D00 80043100 27A60094 */ addiu $a2, $sp, 0x94 -/* 043D04 80043104 E7A00094 */ swc1 $f0, 0x94($sp) -/* 043D08 80043108 0C006DEA */ jal func_8001B7A8 -/* 043D0C 8004310C E7A00090 */ swc1 $f0, 0x90($sp) -/* 043D10 80043110 87A80076 */ lh $t0, 0x76($sp) -/* 043D14 80043114 8FA9005C */ lw $t1, 0x5c($sp) -/* 043D18 80043118 87AC0034 */ lh $t4, 0x34($sp) -/* 043D1C 8004311C 87AD0078 */ lh $t5, 0x78($sp) -/* 043D20 80043120 10400003 */ beqz $v0, .L80043130 -/* 043D24 80043124 241FFFFF */ li $ra, -1 -/* 043D28 80043128 8C490064 */ lw $t1, 0x64($v0) -/* 043D2C 8004312C 00000000 */ nop -.L80043130: -/* 043D30 80043130 03E02825 */ move $a1, $ra -/* 043D34 80043134 AFA00058 */ sw $zero, 0x58($sp) -/* 043D38 80043138 02002025 */ move $a0, $s0 -/* 043D3C 8004313C 27A60090 */ addiu $a2, $sp, 0x90 -/* 043D40 80043140 A7A80076 */ sh $t0, 0x76($sp) -/* 043D44 80043144 AFA9005C */ sw $t1, 0x5c($sp) -/* 043D48 80043148 A7AC0034 */ sh $t4, 0x34($sp) -/* 043D4C 8004314C 0C006DEA */ jal func_8001B7A8 -/* 043D50 80043150 A7AD0078 */ sh $t5, 0x78($sp) -/* 043D54 80043154 87A80076 */ lh $t0, 0x76($sp) -/* 043D58 80043158 8FA9005C */ lw $t1, 0x5c($sp) -/* 043D5C 8004315C 87AC0034 */ lh $t4, 0x34($sp) -/* 043D60 80043160 87AD0078 */ lh $t5, 0x78($sp) -/* 043D64 80043164 10400004 */ beqz $v0, .L80043178 -/* 043D68 80043168 29010007 */ slti $at, $t0, 7 -/* 043D6C 8004316C 8C4E0064 */ lw $t6, 0x64($v0) -/* 043D70 80043170 00000000 */ nop -/* 043D74 80043174 AFAE0058 */ sw $t6, 0x58($sp) -.L80043178: -/* 043D78 80043178 82180003 */ lb $t8, 3($s0) -/* 043D7C 8004317C 11200004 */ beqz $t1, .L80043190 -/* 043D80 80043180 A3B8003E */ sb $t8, 0x3e($sp) -/* 043D84 80043184 81390003 */ lb $t9, 3($t1) -/* 043D88 80043188 00000000 */ nop -/* 043D8C 8004318C A3B9003F */ sb $t9, 0x3f($sp) -.L80043190: -/* 043D90 80043190 1020002A */ beqz $at, .L8004323C -/* 043D94 80043194 00000000 */ nop -/* 043D98 80043198 AFA9005C */ sw $t1, 0x5c($sp) -/* 043D9C 8004319C A7AC0034 */ sh $t4, 0x34($sp) -/* 043DA0 800431A0 0C02658B */ jal func_8009962C -/* 043DA4 800431A4 A7AD0078 */ sh $t5, 0x78($sp) -/* 043DA8 800431A8 8FA9005C */ lw $t1, 0x5c($sp) -/* 043DAC 800431AC 87AC0034 */ lh $t4, 0x34($sp) -/* 043DB0 800431B0 87AD0078 */ lh $t5, 0x78($sp) -/* 043DB4 800431B4 14400021 */ bnez $v0, .L8004323C -/* 043DB8 800431B8 00000000 */ nop -/* 043DBC 800431BC AFA9005C */ sw $t1, 0x5c($sp) -/* 043DC0 800431C0 A7AC0034 */ sh $t4, 0x34($sp) -/* 043DC4 800431C4 0C008D5A */ jal func_80023568 -/* 043DC8 800431C8 A7AD0078 */ sh $t5, 0x78($sp) -/* 043DCC 800431CC 8FA9005C */ lw $t1, 0x5c($sp) -/* 043DD0 800431D0 87AC0034 */ lh $t4, 0x34($sp) -/* 043DD4 800431D4 87AD0078 */ lh $t5, 0x78($sp) -/* 043DD8 800431D8 14400018 */ bnez $v0, .L8004323C -/* 043DDC 800431DC 00000000 */ nop -/* 043DE0 800431E0 AFA9005C */ sw $t1, 0x5c($sp) -/* 043DE4 800431E4 A7AC0034 */ sh $t4, 0x34($sp) -/* 043DE8 800431E8 0C008D07 */ jal func_8002341C -/* 043DEC 800431EC A7AD0078 */ sh $t5, 0x78($sp) -/* 043DF0 800431F0 8FA9005C */ lw $t1, 0x5c($sp) -/* 043DF4 800431F4 87AC0034 */ lh $t4, 0x34($sp) -/* 043DF8 800431F8 87AD0078 */ lh $t5, 0x78($sp) -/* 043DFC 800431FC 1440000F */ bnez $v0, .L8004323C -/* 043E00 80043200 3C0F8012 */ lui $t7, %hi(D_8011D540) # $t7, 0x8012 -/* 043E04 80043204 8DEFD540 */ lw $t7, %lo(D_8011D540)($t7) -/* 043E08 80043208 24010064 */ li $at, 100 -/* 043E0C 8004320C 15E10022 */ bne $t7, $at, .L80043298 -/* 043E10 80043210 00002025 */ move $a0, $zero -/* 043E14 80043214 24050002 */ li $a1, 2 -/* 043E18 80043218 AFA9005C */ sw $t1, 0x5c($sp) -/* 043E1C 8004321C A7AC0034 */ sh $t4, 0x34($sp) -/* 043E20 80043220 0C01BE53 */ jal func_8006F94C -/* 043E24 80043224 A7AD0078 */ sh $t5, 0x78($sp) -/* 043E28 80043228 8FA9005C */ lw $t1, 0x5c($sp) -/* 043E2C 8004322C 87AC0034 */ lh $t4, 0x34($sp) -/* 043E30 80043230 87AD0078 */ lh $t5, 0x78($sp) -/* 043E34 80043234 10000018 */ b .L80043298 -/* 043E38 80043238 A20201CC */ sb $v0, 0x1cc($s0) -.L8004323C: -/* 043E3C 8004323C AFA9005C */ sw $t1, 0x5c($sp) -/* 043E40 80043240 A7AC0034 */ sh $t4, 0x34($sp) -/* 043E44 80043244 0C02658B */ jal func_8009962C -/* 043E48 80043248 A7AD0078 */ sh $t5, 0x78($sp) -/* 043E4C 8004324C 8FA9005C */ lw $t1, 0x5c($sp) -/* 043E50 80043250 87AC0034 */ lh $t4, 0x34($sp) -/* 043E54 80043254 87AD0078 */ lh $t5, 0x78($sp) -/* 043E58 80043258 10400009 */ beqz $v0, .L80043280 -/* 043E5C 8004325C 8FAE0050 */ lw $t6, 0x50($sp) -/* 043E60 80043260 8FAE0050 */ lw $t6, 0x50($sp) -/* 043E64 80043264 83B8003E */ lb $t8, 0x3e($sp) -/* 043E68 80043268 00000000 */ nop -/* 043E6C 8004326C 01D8C821 */ addu $t9, $t6, $t8 -/* 043E70 80043270 932F0016 */ lbu $t7, 0x16($t9) -/* 043E74 80043274 10000008 */ b .L80043298 -/* 043E78 80043278 A20F01CC */ sb $t7, 0x1cc($s0) -/* 043E7C 8004327C 8FAE0050 */ lw $t6, 0x50($sp) -.L80043280: -/* 043E80 80043280 83B8003E */ lb $t8, 0x3e($sp) -/* 043E84 80043284 00000000 */ nop -/* 043E88 80043288 01D8C821 */ addu $t9, $t6, $t8 -/* 043E8C 8004328C 932F000C */ lbu $t7, 0xc($t9) -/* 043E90 80043290 00000000 */ nop -/* 043E94 80043294 A20F01CC */ sb $t7, 0x1cc($s0) -.L80043298: -/* 043E98 80043298 3C018012 */ lui $at, %hi(D_8011D544) # $at, 0x8012 -/* 043E9C 8004329C C420D544 */ lwc1 $f0, %lo(D_8011D544)($at) -/* 043EA0 800432A0 44802000 */ mtc1 $zero, $f4 -/* 043EA4 800432A4 2404000C */ li $a0, 12 -/* 043EA8 800432A8 46002032 */ c.eq.s $f4, $f0 -/* 043EAC 800432AC 00000000 */ nop -/* 043EB0 800432B0 45010009 */ bc1t .L800432D8 -/* 043EB4 800432B4 00000000 */ nop -/* 043EB8 800432B8 860E01AE */ lh $t6, 0x1ae($s0) -/* 043EBC 800432BC 3C18800E */ lui $t8, 0x800e -/* 043EC0 800432C0 030EC021 */ addu $t8, $t8, $t6 -/* 043EC4 800432C4 8318CDA0 */ lb $t8, -0x3260($t8) -/* 043EC8 800432C8 3C018012 */ lui $at, %hi(D_8011D544) # $at, 0x8012 -/* 043ECC 800432CC A21801CA */ sb $t8, 0x1ca($s0) -/* 043ED0 800432D0 C420D544 */ lwc1 $f0, %lo(D_8011D544)($at) -/* 043ED4 800432D4 00000000 */ nop -.L800432D8: -/* 043ED8 800432D8 820301CC */ lb $v1, 0x1cc($s0) -/* 043EDC 800432DC 3C014396 */ li $at, 0x43960000 # 300.000000 -/* 043EE0 800432E0 246EFFFE */ addiu $t6, $v1, -2 -/* 043EE4 800432E4 000EC480 */ sll $t8, $t6, 0x12 -/* 043EE8 800432E8 00181C03 */ sra $v1, $t8, 0x10 -/* 043EEC 800432EC 44835000 */ mtc1 $v1, $f10 -/* 043EF0 800432F0 44813000 */ mtc1 $at, $f6 -/* 043EF4 800432F4 46805420 */ cvt.s.w $f16, $f10 -/* 043EF8 800432F8 46003201 */ sub.s $f8, $f6, $f0 -/* 043EFC 800432FC 4608803E */ c.le.s $f16, $f8 -/* 043F00 80043300 00000000 */ nop -/* 043F04 80043304 45000005 */ bc1f .L8004331C -/* 043F08 80043308 3C0F8012 */ lui $t7, %hi(D_8011D528) # $t7, 0x8012 -/* 043F0C 8004330C 8DEFD528 */ lw $t7, %lo(D_8011D528)($t7) -/* 043F10 80043310 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 -/* 043F14 80043314 35EE8000 */ ori $t6, $t7, 0x8000 -/* 043F18 80043318 AC2ED528 */ sw $t6, %lo(D_8011D528)($at) -.L8004331C: -/* 043F1C 8004331C AFA9005C */ sw $t1, 0x5c($sp) -/* 043F20 80043320 A7AC0034 */ sh $t4, 0x34($sp) -/* 043F24 80043324 0C0078A7 */ jal func_8001E29C -/* 043F28 80043328 A7AD0078 */ sh $t5, 0x78($sp) -/* 043F2C 8004332C 82080174 */ lb $t0, 0x174($s0) -/* 043F30 80043330 8FA9005C */ lw $t1, 0x5c($sp) -/* 043F34 80043334 87AC0034 */ lh $t4, 0x34($sp) -/* 043F38 80043338 87AD0078 */ lh $t5, 0x78($sp) -/* 043F3C 8004333C 29010003 */ slti $at, $t0, 3 -/* 043F40 80043340 1020000A */ beqz $at, .L8004336C -/* 043F44 80043344 241FFFFF */ li $ra, -1 -/* 043F48 80043348 82180172 */ lb $t8, 0x172($s0) -/* 043F4C 8004334C 00000000 */ nop -/* 043F50 80043350 0018C880 */ sll $t9, $t8, 2 -/* 043F54 80043354 0338C823 */ subu $t9, $t9, $t8 -/* 043F58 80043358 03287821 */ addu $t7, $t9, $t0 -/* 043F5C 8004335C 01E27021 */ addu $t6, $t7, $v0 -/* 043F60 80043360 81CA0000 */ lb $t2, ($t6) -/* 043F64 80043364 10000004 */ b .L80043378 -/* 043F68 80043368 8FB80054 */ lw $t8, 0x54($sp) -.L8004336C: -/* 043F6C 8004336C 820A0172 */ lb $t2, 0x172($s0) -/* 043F70 80043370 00000000 */ nop -/* 043F74 80043374 8FB80054 */ lw $t8, 0x54($sp) -.L80043378: -/* 043F78 80043378 24020007 */ li $v0, 7 -/* 043F7C 8004337C 8303000C */ lb $v1, 0xc($t8) -/* 043F80 80043380 8319000D */ lb $t9, 0xd($t8) -/* 043F84 80043384 004D5823 */ subu $t3, $v0, $t5 -/* 043F88 80043388 03237823 */ subu $t7, $t9, $v1 -/* 043F8C 8004338C 01EB0019 */ multu $t7, $t3 -/* 043F90 80043390 00007012 */ mflo $t6 -/* 043F94 80043394 00000000 */ nop -/* 043F98 80043398 00000000 */ nop -/* 043F9C 8004339C 01C2001A */ div $zero, $t6, $v0 -/* 043FA0 800433A0 14400002 */ bnez $v0, .L800433AC -/* 043FA4 800433A4 00000000 */ nop -/* 043FA8 800433A8 0007000D */ break 7 -.L800433AC: -/* 043FAC 800433AC 2401FFFF */ li $at, -1 -/* 043FB0 800433B0 14410004 */ bne $v0, $at, .L800433C4 -/* 043FB4 800433B4 3C018000 */ lui $at, 0x8000 -/* 043FB8 800433B8 15C10002 */ bne $t6, $at, .L800433C4 -/* 043FBC 800433BC 00000000 */ nop -/* 043FC0 800433C0 0006000D */ break 6 -.L800433C4: -/* 043FC4 800433C4 0000C812 */ mflo $t9 -/* 043FC8 800433C8 03237821 */ addu $t7, $t9, $v1 -/* 043FCC 800433CC A7AF0038 */ sh $t7, 0x38($sp) -/* 043FD0 800433D0 830E0011 */ lb $t6, 0x11($t8) -/* 043FD4 800433D4 83040010 */ lb $a0, 0x10($t8) -/* 043FD8 800433D8 00000000 */ nop -/* 043FDC 800433DC 01C4C823 */ subu $t9, $t6, $a0 -/* 043FE0 800433E0 032B0019 */ multu $t9, $t3 -/* 043FE4 800433E4 00007012 */ mflo $t6 -/* 043FE8 800433E8 00000000 */ nop -/* 043FEC 800433EC 00000000 */ nop -/* 043FF0 800433F0 01C2001A */ div $zero, $t6, $v0 -/* 043FF4 800433F4 14400002 */ bnez $v0, .L80043400 -/* 043FF8 800433F8 00000000 */ nop -/* 043FFC 800433FC 0007000D */ break 7 -.L80043400: -/* 044000 80043400 2401FFFF */ li $at, -1 -/* 044004 80043404 14410004 */ bne $v0, $at, .L80043418 -/* 044008 80043408 3C018000 */ lui $at, 0x8000 -/* 04400C 8004340C 15C10002 */ bne $t6, $at, .L80043418 -/* 044010 80043410 00000000 */ nop -/* 044014 80043414 0006000D */ break 6 -.L80043418: -/* 044018 80043418 0000C812 */ mflo $t9 -/* 04401C 8004341C 03247021 */ addu $t6, $t9, $a0 -/* 044020 80043420 A7AE0036 */ sh $t6, 0x36($sp) -/* 044024 80043424 83190009 */ lb $t9, 9($t8) -/* 044028 80043428 83050008 */ lb $a1, 8($t8) -/* 04402C 8004342C 00000000 */ nop -/* 044030 80043430 03257023 */ subu $t6, $t9, $a1 -/* 044034 80043434 01CB0019 */ multu $t6, $t3 -/* 044038 80043438 0000C812 */ mflo $t9 -/* 04403C 8004343C 00000000 */ nop -/* 044040 80043440 00000000 */ nop -/* 044044 80043444 0322001A */ div $zero, $t9, $v0 -/* 044048 80043448 14400002 */ bnez $v0, .L80043454 -/* 04404C 8004344C 00000000 */ nop -/* 044050 80043450 0007000D */ break 7 -.L80043454: -/* 044054 80043454 2401FFFF */ li $at, -1 -/* 044058 80043458 14410004 */ bne $v0, $at, .L8004346C -/* 04405C 8004345C 3C018000 */ lui $at, 0x8000 -/* 044060 80043460 17210002 */ bne $t9, $at, .L8004346C -/* 044064 80043464 00000000 */ nop -/* 044068 80043468 0006000D */ break 6 -.L8004346C: -/* 04406C 8004346C 00007012 */ mflo $t6 -/* 044070 80043470 01C5C821 */ addu $t9, $t6, $a1 -/* 044074 80043474 A7B9003A */ sh $t9, 0x3a($sp) -/* 044078 80043478 830E0015 */ lb $t6, 0x15($t8) -/* 04407C 8004347C 83060014 */ lb $a2, 0x14($t8) -/* 044080 80043480 00000000 */ nop -/* 044084 80043484 01C6C823 */ subu $t9, $t6, $a2 -/* 044088 80043488 032B0019 */ multu $t9, $t3 -/* 04408C 8004348C 0000C012 */ mflo $t8 -/* 044090 80043490 00000000 */ nop -/* 044094 80043494 00000000 */ nop -/* 044098 80043498 0302001A */ div $zero, $t8, $v0 -/* 04409C 8004349C 14400002 */ bnez $v0, .L800434A8 -/* 0440A0 800434A0 00000000 */ nop -/* 0440A4 800434A4 0007000D */ break 7 -.L800434A8: -/* 0440A8 800434A8 2401FFFF */ li $at, -1 -/* 0440AC 800434AC 14410004 */ bne $v0, $at, .L800434C0 -/* 0440B0 800434B0 3C018000 */ lui $at, 0x8000 -/* 0440B4 800434B4 17010002 */ bne $t8, $at, .L800434C0 -/* 0440B8 800434B8 00000000 */ nop -/* 0440BC 800434BC 0006000D */ break 6 -.L800434C0: -/* 0440C0 800434C0 00007012 */ mflo $t6 -/* 0440C4 800434C4 01C6C821 */ addu $t9, $t6, $a2 -/* 0440C8 800434C8 A7B9003C */ sh $t9, 0x3c($sp) -/* 0440CC 800434CC 92070209 */ lbu $a3, 0x209($s0) -/* 0440D0 800434D0 AFAB0028 */ sw $t3, 0x28($sp) -/* 0440D4 800434D4 30F80001 */ andi $t8, $a3, 1 -/* 0440D8 800434D8 130000AF */ beqz $t8, .L80043798 -/* 0440DC 800434DC 00000000 */ nop -/* 0440E0 800434E0 820E0201 */ lb $t6, 0x201($s0) -/* 0440E4 800434E4 00000000 */ nop -/* 0440E8 800434E8 15C00025 */ bnez $t6, .L80043580 -/* 0440EC 800434EC 00000000 */ nop -/* 0440F0 800434F0 15000012 */ bnez $t0, .L8004353C -/* 0440F4 800434F4 000F2400 */ sll $a0, $t7, 0x10 -/* 0440F8 800434F8 0004CC03 */ sra $t9, $a0, 0x10 -/* 0440FC 800434FC 03202025 */ move $a0, $t9 -/* 044100 80043500 AFA9005C */ sw $t1, 0x5c($sp) -/* 044104 80043504 A3AA004B */ sb $t2, 0x4b($sp) -/* 044108 80043508 A7AC0034 */ sh $t4, 0x34($sp) -/* 04410C 8004350C 0C011114 */ jal func_80044450 -/* 044110 80043510 A7AD0078 */ sh $t5, 0x78($sp) -/* 044114 80043514 8FA9005C */ lw $t1, 0x5c($sp) -/* 044118 80043518 83AA004B */ lb $t2, 0x4b($sp) -/* 04411C 8004351C 87AC0034 */ lh $t4, 0x34($sp) -/* 044120 80043520 87AD0078 */ lh $t5, 0x78($sp) -/* 044124 80043524 10400005 */ beqz $v0, .L8004353C -/* 044128 80043528 241FFFFF */ li $ra, -1 -/* 04412C 8004352C 82180174 */ lb $t8, 0x174($s0) -/* 044130 80043530 00000000 */ nop -/* 044134 80043534 270E0001 */ addiu $t6, $t8, 1 -/* 044138 80043538 A20E0174 */ sb $t6, 0x174($s0) -.L8004353C: -/* 04413C 8004353C 15800010 */ bnez $t4, .L80043580 -/* 044140 80043540 29A10003 */ slti $at, $t5, 3 -/* 044144 80043544 1020000E */ beqz $at, .L80043580 -/* 044148 80043548 00000000 */ nop -/* 04414C 8004354C 87A4003C */ lh $a0, 0x3c($sp) -/* 044150 80043550 AFA9005C */ sw $t1, 0x5c($sp) -/* 044154 80043554 A3AA004B */ sb $t2, 0x4b($sp) -/* 044158 80043558 A7AC0034 */ sh $t4, 0x34($sp) -/* 04415C 8004355C 0C011114 */ jal func_80044450 -/* 044160 80043560 A7AD0078 */ sh $t5, 0x78($sp) -/* 044164 80043564 8FA9005C */ lw $t1, 0x5c($sp) -/* 044168 80043568 83AA004B */ lb $t2, 0x4b($sp) -/* 04416C 8004356C 87AC0034 */ lh $t4, 0x34($sp) -/* 044170 80043570 87AD0078 */ lh $t5, 0x78($sp) -/* 044174 80043574 10400002 */ beqz $v0, .L80043580 -/* 044178 80043578 241FFFFF */ li $ra, -1 -/* 04417C 8004357C A2000172 */ sb $zero, 0x172($s0) -.L80043580: -/* 044180 80043580 820F01D3 */ lb $t7, 0x1d3($s0) -/* 044184 80043584 3C19800E */ lui $t9, 0x800e -/* 044188 80043588 15E00016 */ bnez $t7, .L800435E4 -/* 04418C 8004358C 032AC821 */ addu $t9, $t9, $t2 -/* 044190 80043590 8339CD90 */ lb $t9, -0x3270($t9) -/* 044194 80043594 24010004 */ li $at, 4 -/* 044198 80043598 17210012 */ bne $t9, $at, .L800435E4 -/* 04419C 8004359C 00000000 */ nop -/* 0441A0 800435A0 87A4003C */ lh $a0, 0x3c($sp) -/* 0441A4 800435A4 AFA9005C */ sw $t1, 0x5c($sp) -/* 0441A8 800435A8 A3AA004B */ sb $t2, 0x4b($sp) -/* 0441AC 800435AC A7AC0034 */ sh $t4, 0x34($sp) -/* 0441B0 800435B0 0C011114 */ jal func_80044450 -/* 0441B4 800435B4 A7AD0078 */ sh $t5, 0x78($sp) -/* 0441B8 800435B8 8FA9005C */ lw $t1, 0x5c($sp) -/* 0441BC 800435BC 83AA004B */ lb $t2, 0x4b($sp) -/* 0441C0 800435C0 87AC0034 */ lh $t4, 0x34($sp) -/* 0441C4 800435C4 87AD0078 */ lh $t5, 0x78($sp) -/* 0441C8 800435C8 10400006 */ beqz $v0, .L800435E4 -/* 0441CC 800435CC 241FFFFF */ li $ra, -1 -/* 0441D0 800435D0 3C188012 */ lui $t8, %hi(D_8011D530) # $t8, 0x8012 -/* 0441D4 800435D4 8F18D530 */ lw $t8, %lo(D_8011D530)($t8) -/* 0441D8 800435D8 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 -/* 0441DC 800435DC 370E2000 */ ori $t6, $t8, 0x2000 -/* 0441E0 800435E0 AC2ED530 */ sw $t6, %lo(D_8011D530)($at) -.L800435E4: -/* 0441E4 800435E4 820F0173 */ lb $t7, 0x173($s0) -/* 0441E8 800435E8 3C19800E */ lui $t9, %hi(D_800DCD90) # $t9, 0x800e -/* 0441EC 800435EC 11E00065 */ beqz $t7, .L80043784 -/* 0441F0 800435F0 2739CD90 */ addiu $t9, %lo(D_800DCD90) # addiu $t9, $t9, -0x3270 -/* 0441F4 800435F4 01591821 */ addu $v1, $t2, $t9 -/* 0441F8 800435F8 80780000 */ lb $t8, ($v1) -/* 0441FC 800435FC 24010001 */ li $at, 1 -/* 044200 80043600 1701002F */ bne $t8, $at, .L800436C0 -/* 044204 80043604 00000000 */ nop -/* 044208 80043608 11200014 */ beqz $t1, .L8004365C -/* 04420C 8004360C 87A40036 */ lh $a0, 0x36($sp) -/* 044210 80043610 852E0000 */ lh $t6, ($t1) -/* 044214 80043614 29810004 */ slti $at, $t4, 4 -/* 044218 80043618 17EE0010 */ bne $ra, $t6, .L8004365C -/* 04421C 8004361C 87A40036 */ lh $a0, 0x36($sp) -/* 044220 80043620 10200027 */ beqz $at, .L800436C0 -/* 044224 80043624 00000000 */ nop -/* 044228 80043628 83AF003E */ lb $t7, 0x3e($sp) -/* 04422C 8004362C 8FB90044 */ lw $t9, 0x44($sp) -/* 044230 80043630 00000000 */ nop -/* 044234 80043634 01F9C021 */ addu $t8, $t7, $t9 -/* 044238 80043638 830E0000 */ lb $t6, ($t8) -/* 04423C 8004363C 24190004 */ li $t9, 4 -/* 044240 80043640 000E7900 */ sll $t7, $t6, 4 -/* 044244 80043644 01EE7823 */ subu $t7, $t7, $t6 -/* 044248 80043648 000F7880 */ sll $t7, $t7, 2 -/* 04424C 8004364C A60F01C6 */ sh $t7, 0x1c6($s0) -/* 044250 80043650 1000001B */ b .L800436C0 -/* 044254 80043654 A21901C9 */ sb $t9, 0x1c9($s0) -/* 044258 80043658 87A40036 */ lh $a0, 0x36($sp) -.L8004365C: -/* 04425C 8004365C AFA3002C */ sw $v1, 0x2c($sp) -/* 044260 80043660 AFA9005C */ sw $t1, 0x5c($sp) -/* 044264 80043664 A7AC0034 */ sh $t4, 0x34($sp) -/* 044268 80043668 0C011114 */ jal func_80044450 -/* 04426C 8004366C A7AD0078 */ sh $t5, 0x78($sp) -/* 044270 80043670 8FA3002C */ lw $v1, 0x2c($sp) -/* 044274 80043674 8FA9005C */ lw $t1, 0x5c($sp) -/* 044278 80043678 87AC0034 */ lh $t4, 0x34($sp) -/* 04427C 8004367C 87AD0078 */ lh $t5, 0x78($sp) -/* 044280 80043680 1040000F */ beqz $v0, .L800436C0 -/* 044284 80043684 241FFFFF */ li $ra, -1 -/* 044288 80043688 29810002 */ slti $at, $t4, 2 -/* 04428C 8004368C 1020000C */ beqz $at, .L800436C0 -/* 044290 80043690 00000000 */ nop -/* 044294 80043694 83B8003E */ lb $t8, 0x3e($sp) -/* 044298 80043698 8FAE0044 */ lw $t6, 0x44($sp) -/* 04429C 8004369C 00000000 */ nop -/* 0442A0 800436A0 030E7821 */ addu $t7, $t8, $t6 -/* 0442A4 800436A4 81F90000 */ lb $t9, ($t7) -/* 0442A8 800436A8 240E0004 */ li $t6, 4 -/* 0442AC 800436AC 0019C100 */ sll $t8, $t9, 4 -/* 0442B0 800436B0 0319C023 */ subu $t8, $t8, $t9 -/* 0442B4 800436B4 0018C080 */ sll $t8, $t8, 2 -/* 0442B8 800436B8 A61801C6 */ sh $t8, 0x1c6($s0) -/* 0442BC 800436BC A20E01C9 */ sb $t6, 0x1c9($s0) -.L800436C0: -/* 0442C0 800436C0 806F0000 */ lb $t7, ($v1) -/* 0442C4 800436C4 24010002 */ li $at, 2 -/* 0442C8 800436C8 15E1002E */ bne $t7, $at, .L80043784 -/* 0442CC 800436CC 00000000 */ nop -/* 0442D0 800436D0 8FA30058 */ lw $v1, 0x58($sp) -/* 0442D4 800436D4 87A40036 */ lh $a0, 0x36($sp) -/* 0442D8 800436D8 10600013 */ beqz $v1, .L80043728 -/* 0442DC 800436DC 00000000 */ nop -/* 0442E0 800436E0 84790000 */ lh $t9, ($v1) -/* 0442E4 800436E4 29810004 */ slti $at, $t4, 4 -/* 0442E8 800436E8 17F9000F */ bne $ra, $t9, .L80043728 -/* 0442EC 800436EC 00000000 */ nop -/* 0442F0 800436F0 10200024 */ beqz $at, .L80043784 -/* 0442F4 800436F4 00000000 */ nop -/* 0442F8 800436F8 83B8003E */ lb $t8, 0x3e($sp) -/* 0442FC 800436FC 8FAE0044 */ lw $t6, 0x44($sp) -/* 044300 80043700 00000000 */ nop -/* 044304 80043704 030E7821 */ addu $t7, $t8, $t6 -/* 044308 80043708 81F90000 */ lb $t9, ($t7) -/* 04430C 8004370C 240E0005 */ li $t6, 5 -/* 044310 80043710 0019C100 */ sll $t8, $t9, 4 -/* 044314 80043714 0319C023 */ subu $t8, $t8, $t9 -/* 044318 80043718 0018C080 */ sll $t8, $t8, 2 -/* 04431C 8004371C A61801C6 */ sh $t8, 0x1c6($s0) -/* 044320 80043720 10000018 */ b .L80043784 -/* 044324 80043724 A20E01C9 */ sb $t6, 0x1c9($s0) -.L80043728: -/* 044328 80043728 AFA9005C */ sw $t1, 0x5c($sp) -/* 04432C 8004372C A7AC0034 */ sh $t4, 0x34($sp) -/* 044330 80043730 0C011114 */ jal func_80044450 -/* 044334 80043734 A7AD0078 */ sh $t5, 0x78($sp) -/* 044338 80043738 8FA9005C */ lw $t1, 0x5c($sp) -/* 04433C 8004373C 87AC0034 */ lh $t4, 0x34($sp) -/* 044340 80043740 87AD0078 */ lh $t5, 0x78($sp) -/* 044344 80043744 1040000F */ beqz $v0, .L80043784 -/* 044348 80043748 241FFFFF */ li $ra, -1 -/* 04434C 8004374C 29810002 */ slti $at, $t4, 2 -/* 044350 80043750 1020000C */ beqz $at, .L80043784 -/* 044354 80043754 00000000 */ nop -/* 044358 80043758 83AF003E */ lb $t7, 0x3e($sp) -/* 04435C 8004375C 8FB90044 */ lw $t9, 0x44($sp) -/* 044360 80043760 00000000 */ nop -/* 044364 80043764 01F9C021 */ addu $t8, $t7, $t9 -/* 044368 80043768 830E0000 */ lb $t6, ($t8) -/* 04436C 8004376C 24190005 */ li $t9, 5 -/* 044370 80043770 000E7900 */ sll $t7, $t6, 4 -/* 044374 80043774 01EE7823 */ subu $t7, $t7, $t6 -/* 044378 80043778 000F7880 */ sll $t7, $t7, 2 -/* 04437C 8004377C A60F01C6 */ sh $t7, 0x1c6($s0) -/* 044380 80043780 A21901C9 */ sb $t9, 0x1c9($s0) -.L80043784: -/* 044384 80043784 92180209 */ lbu $t8, 0x209($s0) -/* 044388 80043788 00000000 */ nop -/* 04438C 8004378C 330EFFFE */ andi $t6, $t8, 0xfffe -/* 044390 80043790 A20E0209 */ sb $t6, 0x209($s0) -/* 044394 80043794 31C700FF */ andi $a3, $t6, 0xff -.L80043798: -/* 044398 80043798 820F01D3 */ lb $t7, 0x1d3($s0) -/* 04439C 8004379C 8FA30058 */ lw $v1, 0x58($sp) -/* 0443A0 800437A0 11E00021 */ beqz $t7, .L80043828 -/* 0443A4 800437A4 30F90002 */ andi $t9, $a3, 2 -/* 0443A8 800437A8 17200016 */ bnez $t9, .L80043804 -/* 0443AC 800437AC 30F80004 */ andi $t8, $a3, 4 -/* 0443B0 800437B0 87A4003A */ lh $a0, 0x3a($sp) -/* 0443B4 800437B4 AFA9005C */ sw $t1, 0x5c($sp) -/* 0443B8 800437B8 A7AC0034 */ sh $t4, 0x34($sp) -/* 0443BC 800437BC 0C011114 */ jal func_80044450 -/* 0443C0 800437C0 A7AD0078 */ sh $t5, 0x78($sp) -/* 0443C4 800437C4 8FA9005C */ lw $t1, 0x5c($sp) -/* 0443C8 800437C8 87AC0034 */ lh $t4, 0x34($sp) -/* 0443CC 800437CC 87AD0078 */ lh $t5, 0x78($sp) -/* 0443D0 800437D0 10400005 */ beqz $v0, .L800437E8 -/* 0443D4 800437D4 241FFFFF */ li $ra, -1 -/* 0443D8 800437D8 92180209 */ lbu $t8, 0x209($s0) -/* 0443DC 800437DC 00000000 */ nop -/* 0443E0 800437E0 370E0004 */ ori $t6, $t8, 4 -/* 0443E4 800437E4 A20E0209 */ sb $t6, 0x209($s0) -.L800437E8: -/* 0443E8 800437E8 920F0209 */ lbu $t7, 0x209($s0) -/* 0443EC 800437EC 00000000 */ nop -/* 0443F0 800437F0 35F90002 */ ori $t9, $t7, 2 -/* 0443F4 800437F4 A2190209 */ sb $t9, 0x209($s0) -/* 0443F8 800437F8 8FA30058 */ lw $v1, 0x58($sp) -/* 0443FC 800437FC 332700FF */ andi $a3, $t9, 0xff -/* 044400 80043800 30F80004 */ andi $t8, $a3, 4 -.L80043804: -/* 044404 80043804 13000014 */ beqz $t8, .L80043858 -/* 044408 80043808 3C0E8012 */ lui $t6, %hi(D_8011D528) # $t6, 0x8012 -/* 04440C 8004380C 8DCED528 */ lw $t6, %lo(D_8011D528)($t6) -/* 044410 80043810 3C01FFFF */ lui $at, (0xFFFF7FFF >> 16) # lui $at, 0xffff -/* 044414 80043814 34217FFF */ ori $at, (0xFFFF7FFF & 0xFFFF) # ori $at, $at, 0x7fff -/* 044418 80043818 01C17824 */ and $t7, $t6, $at -/* 04441C 8004381C 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 -/* 044420 80043820 1000000D */ b .L80043858 -/* 044424 80043824 AC2FD528 */ sw $t7, %lo(D_8011D528)($at) -.L80043828: -/* 044428 80043828 2401FFFD */ li $at, -3 -/* 04442C 8004382C 00E1C824 */ and $t9, $a3, $at -/* 044430 80043830 C604002C */ lwc1 $f4, 0x2c($s0) -/* 044434 80043834 3C01C028 */ li $at, 0xC0280000 # -2.625000 -/* 044438 80043838 44819800 */ mtc1 $at, $f19 -/* 04443C 8004383C 44809000 */ mtc1 $zero, $f18 -/* 044440 80043840 460021A1 */ cvt.d.s $f6, $f4 -/* 044444 80043844 4626903C */ c.lt.d $f18, $f6 -/* 044448 80043848 A2190209 */ sb $t9, 0x209($s0) -/* 04444C 8004384C 45000002 */ bc1f .L80043858 -/* 044450 80043850 332EFFFB */ andi $t6, $t9, 0xfffb -/* 044454 80043854 A20E0209 */ sb $t6, 0x209($s0) -.L80043858: -/* 044458 80043858 920F0209 */ lbu $t7, 0x209($s0) -/* 04445C 8004385C 00000000 */ nop -/* 044460 80043860 31F90004 */ andi $t9, $t7, 4 -/* 044464 80043864 13200007 */ beqz $t9, .L80043884 -/* 044468 80043868 3C188012 */ lui $t8, %hi(D_8011D528) # $t8, 0x8012 -/* 04446C 8004386C 8F18D528 */ lw $t8, %lo(D_8011D528)($t8) -/* 044470 80043870 3C01FFFF */ lui $at, (0xFFFF7FFF >> 16) # lui $at, 0xffff -/* 044474 80043874 34217FFF */ ori $at, (0xFFFF7FFF & 0xFFFF) # ori $at, $at, 0x7fff -/* 044478 80043878 03017024 */ and $t6, $t8, $at -/* 04447C 8004387C 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 -/* 044480 80043880 AC2ED528 */ sw $t6, %lo(D_8011D528)($at) -.L80043884: -/* 044484 80043884 860F01C6 */ lh $t7, 0x1c6($s0) -/* 044488 80043888 00000000 */ nop -/* 04448C 8004388C 15E00043 */ bnez $t7, .L8004399C -/* 044490 80043890 8FAF0028 */ lw $t7, 0x28($sp) -/* 044494 80043894 920201C9 */ lbu $v0, 0x1c9($s0) -/* 044498 80043898 24010004 */ li $at, 4 -/* 04449C 8004389C 10410004 */ beq $v0, $at, .L800438B0 -/* 0444A0 800438A0 3C198012 */ lui $t9, %hi(D_8011D530) # $t9, 0x8012 -/* 0444A4 800438A4 24010005 */ li $at, 5 -/* 0444A8 800438A8 14410005 */ bne $v0, $at, .L800438C0 -/* 0444AC 800438AC 00000000 */ nop -.L800438B0: -/* 0444B0 800438B0 8F39D530 */ lw $t9, %lo(D_8011D530)($t9) -/* 0444B4 800438B4 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 -/* 0444B8 800438B8 37382000 */ ori $t8, $t9, 0x2000 -/* 0444BC 800438BC AC38D530 */ sw $t8, %lo(D_8011D530)($at) -.L800438C0: -/* 0444C0 800438C0 1060001D */ beqz $v1, .L80043938 -/* 0444C4 800438C4 A20001C9 */ sb $zero, 0x1c9($s0) -/* 0444C8 800438C8 846E0000 */ lh $t6, ($v1) -/* 0444CC 800438CC C7AA0090 */ lwc1 $f10, 0x90($sp) -/* 0444D0 800438D0 13EE0019 */ beq $ra, $t6, .L80043938 -/* 0444D4 800438D4 3C014348 */ li $at, 0x43480000 # 200.000000 -/* 0444D8 800438D8 44814000 */ mtc1 $at, $f8 -/* 0444DC 800438DC 00000000 */ nop -/* 0444E0 800438E0 4608503C */ c.lt.s $f10, $f8 -/* 0444E4 800438E4 00000000 */ nop -/* 0444E8 800438E8 45000013 */ bc1f .L80043938 -/* 0444EC 800438EC 00000000 */ nop -/* 0444F0 800438F0 11A00011 */ beqz $t5, .L80043938 -/* 0444F4 800438F4 29810003 */ slti $at, $t4, 3 -/* 0444F8 800438F8 1020000F */ beqz $at, .L80043938 -/* 0444FC 800438FC 00000000 */ nop -/* 044500 80043900 83AF003E */ lb $t7, 0x3e($sp) -/* 044504 80043904 83B8003F */ lb $t8, 0x3f($sp) -/* 044508 80043908 000FC880 */ sll $t9, $t7, 2 -/* 04450C 8004390C 032FC821 */ addu $t9, $t9, $t7 -/* 044510 80043910 8FAF0040 */ lw $t7, 0x40($sp) -/* 044514 80043914 0019C840 */ sll $t9, $t9, 1 -/* 044518 80043918 03387021 */ addu $t6, $t9, $t8 -/* 04451C 8004391C 01CFC821 */ addu $t9, $t6, $t7 -/* 044520 80043920 83380000 */ lb $t8, ($t9) -/* 044524 80043924 240E0005 */ li $t6, 5 -/* 044528 80043928 2B010005 */ slti $at, $t8, 5 -/* 04452C 8004392C 10200002 */ beqz $at, .L80043938 -/* 044530 80043930 00000000 */ nop -/* 044534 80043934 A20E01C9 */ sb $t6, 0x1c9($s0) -.L80043938: -/* 044538 80043938 3C018012 */ lui $at, %hi(D_8011D544) # $at, 0x8012 -/* 04453C 8004393C C424D544 */ lwc1 $f4, %lo(D_8011D544)($at) -/* 044540 80043940 44808000 */ mtc1 $zero, $f16 -/* 044544 80043944 3C0F800E */ lui $t7, 0x800e -/* 044548 80043948 46048032 */ c.eq.s $f16, $f4 -/* 04454C 8004394C 01ED7821 */ addu $t7, $t7, $t5 -/* 044550 80043950 4500000F */ bc1f .L80043990 -/* 044554 80043954 8FA30058 */ lw $v1, 0x58($sp) -/* 044558 80043958 81EFCDA8 */ lb $t7, -0x3258($t7) -/* 04455C 8004395C 00000000 */ nop -/* 044560 80043960 A20F01CA */ sb $t7, 0x1ca($s0) -/* 044564 80043964 87A4003C */ lh $a0, 0x3c($sp) -/* 044568 80043968 0C011114 */ jal func_80044450 -/* 04456C 8004396C AFA9005C */ sw $t1, 0x5c($sp) -/* 044570 80043970 8FA9005C */ lw $t1, 0x5c($sp) -/* 044574 80043974 10400005 */ beqz $v0, .L8004398C -/* 044578 80043978 241FFFFF */ li $ra, -1 -/* 04457C 8004397C 821901CA */ lb $t9, 0x1ca($s0) -/* 044580 80043980 00000000 */ nop -/* 044584 80043984 2738FFFF */ addiu $t8, $t9, -1 -/* 044588 80043988 A21801CA */ sb $t8, 0x1ca($s0) -.L8004398C: -/* 04458C 8004398C 8FA30058 */ lw $v1, 0x58($sp) -.L80043990: -/* 044590 80043990 240E012C */ li $t6, 300 -/* 044594 80043994 A60E01C6 */ sh $t6, 0x1c6($s0) -/* 044598 80043998 8FAF0028 */ lw $t7, 0x28($sp) -.L8004399C: -/* 04459C 8004399C 24010007 */ li $at, 7 -/* 0445A0 800439A0 15E1000F */ bne $t7, $at, .L800439E0 -/* 0445A4 800439A4 00000000 */ nop -/* 0445A8 800439A8 1060000D */ beqz $v1, .L800439E0 -/* 0445AC 800439AC 3C01800E */ lui $at, %hi(D_800E62AC) # $at, 0x800e -/* 0445B0 800439B0 C7B20090 */ lwc1 $f18, 0x90($sp) -/* 0445B4 800439B4 C42B62A8 */ lwc1 $f11, %lo(D_800E62A8)($at) -/* 0445B8 800439B8 C42A62AC */ lwc1 $f10, %lo(D_800E62AC)($at) -/* 0445BC 800439BC 460091A1 */ cvt.d.s $f6, $f18 -/* 0445C0 800439C0 462A303C */ c.lt.d $f6, $f10 -/* 0445C4 800439C4 240E0001 */ li $t6, 1 -/* 0445C8 800439C8 45000005 */ bc1f .L800439E0 -/* 0445CC 800439CC 00000000 */ nop -/* 0445D0 800439D0 92190209 */ lbu $t9, 0x209($s0) -/* 0445D4 800439D4 A20E01CA */ sb $t6, 0x1ca($s0) -/* 0445D8 800439D8 3338FFFB */ andi $t8, $t9, 0xfffb -/* 0445DC 800439DC A2180209 */ sb $t8, 0x209($s0) -.L800439E0: -/* 0445E0 800439E0 3C0F8012 */ lui $t7, %hi(D_8011D540) # $t7, 0x8012 -/* 0445E4 800439E4 8DEFD540 */ lw $t7, %lo(D_8011D540)($t7) -/* 0445E8 800439E8 8FB90054 */ lw $t9, 0x54($sp) -/* 0445EC 800439EC 15E00050 */ bnez $t7, .L80043B30 -/* 0445F0 800439F0 3C01800E */ lui $at, %hi(D_800E62B4) # $at, 0x800e -/* 0445F4 800439F4 C72E0004 */ lwc1 $f14, 4($t9) -/* 0445F8 800439F8 C43162B0 */ lwc1 $f17, %lo(D_800E62B0)($at) -/* 0445FC 800439FC C43062B4 */ lwc1 $f16, %lo(D_800E62B4)($at) -/* 044600 80043A00 46007221 */ cvt.d.s $f8, $f14 -/* 044604 80043A04 46304102 */ mul.d $f4, $f8, $f16 -/* 044608 80043A08 3C01800E */ lui $at, %hi(D_800E62BC) # $at, 0x800e -/* 04460C 80043A0C C43362B8 */ lwc1 $f19, %lo(D_800E62B8)($at) -/* 044610 80043A10 C43262BC */ lwc1 $f18, %lo(D_800E62BC)($at) -/* 044614 80043A14 3C01800E */ lui $at, %hi(D_800E62C4) # $at, 0x800e -/* 044618 80043A18 C42B62C0 */ lwc1 $f11, %lo(D_800E62C0)($at) -/* 04461C 80043A1C C42A62C4 */ lwc1 $f10, %lo(D_800E62C4)($at) -/* 044620 80043A20 46322180 */ add.d $f6, $f4, $f18 -/* 044624 80043A24 AFA9005C */ sw $t1, 0x5c($sp) -/* 044628 80043A28 462A3203 */ div.d $f8, $f6, $f10 -/* 04462C 80043A2C 0C0326B4 */ jal sqrtf -/* 044630 80043A30 46204320 */ cvt.s.d $f12, $f8 -/* 044634 80043A34 8FB80054 */ lw $t8, 0x54($sp) -/* 044638 80043A38 3C01800E */ lui $at, %hi(D_800E62CC) # $at, 0x800e -/* 04463C 80043A3C C7020000 */ lwc1 $f2, ($t8) -/* 044640 80043A40 C42562C8 */ lwc1 $f5, %lo(D_800E62C8)($at) -/* 044644 80043A44 C42462CC */ lwc1 $f4, %lo(D_800E62CC)($at) -/* 044648 80043A48 46001421 */ cvt.d.s $f16, $f2 -/* 04464C 80043A4C 46248482 */ mul.d $f18, $f16, $f4 -/* 044650 80043A50 3C01800E */ lui $at, %hi(D_800E62D4) # $at, 0x800e -/* 044654 80043A54 C42762D0 */ lwc1 $f7, %lo(D_800E62D0)($at) -/* 044658 80043A58 C42662D4 */ lwc1 $f6, %lo(D_800E62D4)($at) -/* 04465C 80043A5C 3C01800E */ lui $at, %hi(D_800E62DC) # $at, 0x800e -/* 044660 80043A60 C42962D8 */ lwc1 $f9, %lo(D_800E62D8)($at) -/* 044664 80043A64 C42862DC */ lwc1 $f8, %lo(D_800E62DC)($at) -/* 044668 80043A68 46269280 */ add.d $f10, $f18, $f6 -/* 04466C 80043A6C E7A00080 */ swc1 $f0, 0x80($sp) -/* 044670 80043A70 46285403 */ div.d $f16, $f10, $f8 -/* 044674 80043A74 0C0326B4 */ jal sqrtf -/* 044678 80043A78 46208320 */ cvt.s.d $f12, $f16 -/* 04467C 80043A7C 240E0007 */ li $t6, 7 -/* 044680 80043A80 448E9000 */ mtc1 $t6, $f18 -/* 044684 80043A84 C7AE0080 */ lwc1 $f14, 0x80($sp) -/* 044688 80043A88 468091A0 */ cvt.s.w $f6, $f18 -/* 04468C 80043A8C 8FAF0028 */ lw $t7, 0x28($sp) -/* 044690 80043A90 820201CA */ lb $v0, 0x1ca($s0) -/* 044694 80043A94 46007101 */ sub.s $f4, $f14, $f0 -/* 044698 80043A98 448F4000 */ mtc1 $t7, $f8 -/* 04469C 80043A9C 46062283 */ div.s $f10, $f4, $f6 -/* 0446A0 80043AA0 46804420 */ cvt.s.w $f16, $f8 -/* 0446A4 80043AA4 8FA9005C */ lw $t1, 0x5c($sp) -/* 0446A8 80043AA8 28410002 */ slti $at, $v0, 2 -/* 0446AC 80043AAC 241FFFFF */ li $ra, -1 -/* 0446B0 80043AB0 2459FFFF */ addiu $t9, $v0, -1 -/* 0446B4 80043AB4 46105482 */ mul.s $f18, $f10, $f16 -/* 0446B8 80043AB8 46120300 */ add.s $f12, $f0, $f18 -/* 0446BC 80043ABC 1420000B */ bnez $at, .L80043AEC -/* 0446C0 80043AC0 46006086 */ mov.s $f2, $f12 -/* 0446C4 80043AC4 44992000 */ mtc1 $t9, $f4 -/* 0446C8 80043AC8 3C01800E */ lui $at, %hi(D_800E62E4) # $at, 0x800e -/* 0446CC 80043ACC 468021A0 */ cvt.s.w $f6, $f4 -/* 0446D0 80043AD0 C42B62E0 */ lwc1 $f11, %lo(D_800E62E0)($at) -/* 0446D4 80043AD4 C42A62E4 */ lwc1 $f10, %lo(D_800E62E4)($at) -/* 0446D8 80043AD8 46003221 */ cvt.d.s $f8, $f6 -/* 0446DC 80043ADC 462A4402 */ mul.d $f16, $f8, $f10 -/* 0446E0 80043AE0 460064A1 */ cvt.d.s $f18, $f12 -/* 0446E4 80043AE4 46309100 */ add.d $f4, $f18, $f16 -/* 0446E8 80043AE8 462020A0 */ cvt.s.d $f2, $f4 -.L80043AEC: -/* 0446EC 80043AEC 46021182 */ mul.s $f6, $f2, $f2 -/* 0446F0 80043AF0 3C01800E */ lui $at, %hi(D_800E62EC) # $at, 0x800e -/* 0446F4 80043AF4 C42B62E8 */ lwc1 $f11, %lo(D_800E62E8)($at) -/* 0446F8 80043AF8 C42A62EC */ lwc1 $f10, %lo(D_800E62EC)($at) -/* 0446FC 80043AFC 46003221 */ cvt.d.s $f8, $f6 -/* 044700 80043B00 462A4482 */ mul.d $f18, $f8, $f10 -/* 044704 80043B04 3C01800E */ lui $at, %hi(D_800E62F4) # $at, 0x800e -/* 044708 80043B08 C43162F0 */ lwc1 $f17, %lo(D_800E62F0)($at) -/* 04470C 80043B0C C43062F4 */ lwc1 $f16, %lo(D_800E62F4)($at) -/* 044710 80043B10 3C01800E */ lui $at, %hi(D_800E62FC) # $at, 0x800e -/* 044714 80043B14 C42762F8 */ lwc1 $f7, %lo(D_800E62F8)($at) -/* 044718 80043B18 C42662FC */ lwc1 $f6, %lo(D_800E62FC)($at) -/* 04471C 80043B1C 46309101 */ sub.d $f4, $f18, $f16 -/* 044720 80043B20 00000000 */ nop -/* 044724 80043B24 46262203 */ div.d $f8, $f4, $f6 -/* 044728 80043B28 462040A0 */ cvt.s.d $f2, $f8 -/* 04472C 80043B2C E6020124 */ swc1 $f2, 0x124($s0) -.L80043B30: -/* 044730 80043B30 8FA30058 */ lw $v1, 0x58($sp) -/* 044734 80043B34 1120000E */ beqz $t1, .L80043B70 -/* 044738 80043B38 00000000 */ nop -/* 04473C 80043B3C 821801CA */ lb $t8, 0x1ca($s0) -/* 044740 80043B40 24010003 */ li $at, 3 -/* 044744 80043B44 1701000A */ bne $t8, $at, .L80043B70 -/* 044748 80043B48 3C01800E */ lui $at, %hi(D_800E6304) # $at, 0x800e -/* 04474C 80043B4C C7B20094 */ lwc1 $f18, 0x94($sp) -/* 044750 80043B50 C42B6300 */ lwc1 $f11, %lo(D_800E6300)($at) -/* 044754 80043B54 C42A6304 */ lwc1 $f10, %lo(D_800E6304)($at) -/* 044758 80043B58 46009421 */ cvt.d.s $f16, $f18 -/* 04475C 80043B5C 4630503C */ c.lt.d $f10, $f16 -/* 044760 80043B60 240E0002 */ li $t6, 2 -/* 044764 80043B64 45000002 */ bc1f .L80043B70 -/* 044768 80043B68 00000000 */ nop -/* 04476C 80043B6C A20E01CA */ sb $t6, 0x1ca($s0) -.L80043B70: -/* 044770 80043B70 920201C9 */ lbu $v0, 0x1c9($s0) -/* 044774 80043B74 24010004 */ li $at, 4 -/* 044778 80043B78 10400007 */ beqz $v0, .L80043B98 -/* 04477C 80043B7C 00000000 */ nop -/* 044780 80043B80 10410023 */ beq $v0, $at, .L80043C10 -/* 044784 80043B84 24010005 */ li $at, 5 -/* 044788 80043B88 10410026 */ beq $v0, $at, .L80043C24 -/* 04478C 80043B8C 00000000 */ nop -/* 044790 80043B90 10000029 */ b .L80043C38 -/* 044794 80043B94 00000000 */ nop -.L80043B98: -/* 044798 80043B98 11200027 */ beqz $t1, .L80043C38 -/* 04479C 80043B9C 00000000 */ nop -/* 0447A0 80043BA0 852F0000 */ lh $t7, ($t1) -/* 0447A4 80043BA4 00000000 */ nop -/* 0447A8 80043BA8 17EF0023 */ bne $ra, $t7, .L80043C38 -/* 0447AC 80043BAC 00000000 */ nop -/* 0447B0 80043BB0 913901C9 */ lbu $t9, 0x1c9($t1) -/* 0447B4 80043BB4 00000000 */ nop -/* 0447B8 80043BB8 1720001F */ bnez $t9, .L80043C38 -/* 0447BC 80043BBC 00000000 */ nop -/* 0447C0 80043BC0 820201CA */ lb $v0, 0x1ca($s0) -/* 0447C4 80043BC4 813801CA */ lb $t8, 0x1ca($t1) -/* 0447C8 80043BC8 C7A40094 */ lwc1 $f4, 0x94($sp) -/* 0447CC 80043BCC 1458001A */ bne $v0, $t8, .L80043C38 -/* 0447D0 80043BD0 3C014059 */ li $at, 0x40590000 # 3.390625 -/* 0447D4 80043BD4 44814800 */ mtc1 $at, $f9 -/* 0447D8 80043BD8 44804000 */ mtc1 $zero, $f8 -/* 0447DC 80043BDC 460021A1 */ cvt.d.s $f6, $f4 -/* 0447E0 80043BE0 4628303C */ c.lt.d $f6, $f8 -/* 0447E4 80043BE4 244E0001 */ addiu $t6, $v0, 1 -/* 0447E8 80043BE8 45000013 */ bc1f .L80043C38 -/* 0447EC 80043BEC 00000000 */ nop -/* 0447F0 80043BF0 A20E01CA */ sb $t6, 0x1ca($s0) -/* 0447F4 80043BF4 820F01CA */ lb $t7, 0x1ca($s0) -/* 0447F8 80043BF8 24190003 */ li $t9, 3 -/* 0447FC 80043BFC 29E10004 */ slti $at, $t7, 4 -/* 044800 80043C00 1420000D */ bnez $at, .L80043C38 -/* 044804 80043C04 00000000 */ nop -/* 044808 80043C08 1000000B */ b .L80043C38 -/* 04480C 80043C0C A21901CA */ sb $t9, 0x1ca($s0) -.L80043C10: -/* 044810 80043C10 11200009 */ beqz $t1, .L80043C38 -/* 044814 80043C14 00000000 */ nop -/* 044818 80043C18 853801BA */ lh $t8, 0x1ba($t1) -/* 04481C 80043C1C 10000006 */ b .L80043C38 -/* 044820 80043C20 A61801BA */ sh $t8, 0x1ba($s0) -.L80043C24: -/* 044824 80043C24 10600004 */ beqz $v1, .L80043C38 -/* 044828 80043C28 00000000 */ nop -/* 04482C 80043C2C 846E01BA */ lh $t6, 0x1ba($v1) -/* 044830 80043C30 00000000 */ nop -/* 044834 80043C34 A60E01BA */ sh $t6, 0x1ba($s0) -.L80043C38: -/* 044838 80043C38 0C008D07 */ jal func_8002341C -/* 04483C 80043C3C 00000000 */ nop -/* 044840 80043C40 00021C00 */ sll $v1, $v0, 0x10 -/* 044844 80043C44 0002CC00 */ sll $t9, $v0, 0x10 -/* 044848 80043C48 0019C403 */ sra $t8, $t9, 0x10 -/* 04484C 80043C4C 00037C03 */ sra $t7, $v1, 0x10 -/* 044850 80043C50 17000005 */ bnez $t8, .L80043C68 -/* 044854 80043C54 01E01825 */ move $v1, $t7 -/* 044858 80043C58 87AE0070 */ lh $t6, 0x70($sp) -/* 04485C 80043C5C 00000000 */ nop -/* 044860 80043C60 11C00016 */ beqz $t6, .L80043CBC -/* 044864 80043C64 87AE0070 */ lh $t6, 0x70($sp) -.L80043C68: -/* 044868 80043C68 A20001CA */ sb $zero, 0x1ca($s0) -/* 04486C 80043C6C A20001C9 */ sb $zero, 0x1c9($s0) -/* 044870 80043C70 87AF0070 */ lh $t7, 0x70($sp) -/* 044874 80043C74 24040011 */ li $a0, 17 -/* 044878 80043C78 11E00006 */ beqz $t7, .L80043C94 -/* 04487C 80043C7C 00000000 */ nop -/* 044880 80043C80 0C0078A7 */ jal func_8001E29C -/* 044884 80043C84 24040012 */ li $a0, 18 -/* 044888 80043C88 87A30070 */ lh $v1, 0x70($sp) -/* 04488C 80043C8C 10000006 */ b .L80043CA8 -/* 044890 80043C90 0003C880 */ sll $t9, $v1, 2 -.L80043C94: -/* 044894 80043C94 0C0078A7 */ jal func_8001E29C -/* 044898 80043C98 A7A3007A */ sh $v1, 0x7a($sp) -/* 04489C 80043C9C 87A3007A */ lh $v1, 0x7a($sp) -/* 0448A0 80043CA0 00000000 */ nop -/* 0448A4 80043CA4 0003C880 */ sll $t9, $v1, 2 -.L80043CA8: -/* 0448A8 80043CA8 0059C021 */ addu $t8, $v0, $t9 -/* 0448AC 80043CAC C712FFFC */ lwc1 $f18, -4($t8) -/* 0448B0 80043CB0 00000000 */ nop -/* 0448B4 80043CB4 E6120124 */ swc1 $f18, 0x124($s0) -/* 0448B8 80043CB8 87AE0070 */ lh $t6, 0x70($sp) -.L80043CBC: -/* 0448BC 80043CBC 3C0F8012 */ lui $t7, %hi(D_8011D540) # $t7, 0x8012 -/* 0448C0 80043CC0 11C00061 */ beqz $t6, .L80043E48 -/* 0448C4 80043CC4 00000000 */ nop -/* 0448C8 80043CC8 8DEFD540 */ lw $t7, %lo(D_8011D540)($t7) -/* 0448CC 80043CCC 3C038012 */ lui $v1, %hi(D_8011D5B8) # $v1, 0x8012 -/* 0448D0 80043CD0 11E00006 */ beqz $t7, .L80043CEC -/* 0448D4 80043CD4 2463D5B8 */ addiu $v1, %lo(D_8011D5B8) # addiu $v1, $v1, -0x2a48 -/* 0448D8 80043CD8 3C038012 */ lui $v1, %hi(D_8011D5B8) # $v1, 0x8012 -/* 0448DC 80043CDC 2463D5B8 */ addiu $v1, %lo(D_8011D5B8) # addiu $v1, $v1, -0x2a48 -/* 0448E0 80043CE0 24190384 */ li $t9, 900 -/* 0448E4 80043CE4 10000040 */ b .L80043DE8 -/* 0448E8 80043CE8 A4790000 */ sh $t9, ($v1) -.L80043CEC: -/* 0448EC 80043CEC 84780000 */ lh $t8, ($v1) -/* 0448F0 80043CF0 8FAE00A0 */ lw $t6, 0xa0($sp) -/* 0448F4 80043CF4 00000000 */ nop -/* 0448F8 80043CF8 030E7823 */ subu $t7, $t8, $t6 -/* 0448FC 80043CFC A46F0000 */ sh $t7, ($v1) -/* 044900 80043D00 84620000 */ lh $v0, ($v1) -/* 044904 80043D04 00000000 */ nop -/* 044908 80043D08 04410016 */ bgez $v0, .L80043D64 -/* 04490C 80043D0C 284102D1 */ slti $at, $v0, 0x2d1 -/* 044910 80043D10 87B90072 */ lh $t9, 0x72($sp) -/* 044914 80043D14 24010001 */ li $at, 1 -/* 044918 80043D18 17210033 */ bne $t9, $at, .L80043DE8 -/* 04491C 80043D1C A4600000 */ sh $zero, ($v1) -/* 044920 80043D20 3C01800E */ lui $at, %hi(D_800E630C) # $at, 0x800e -/* 044924 80043D24 C7B00094 */ lwc1 $f16, 0x94($sp) -/* 044928 80043D28 C42B6308 */ lwc1 $f11, %lo(D_800E6308)($at) -/* 04492C 80043D2C C42A630C */ lwc1 $f10, %lo(D_800E630C)($at) -/* 044930 80043D30 46008121 */ cvt.d.s $f4, $f16 -/* 044934 80043D34 4624503C */ c.lt.d $f10, $f4 -/* 044938 80043D38 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 04493C 80043D3C 4500002A */ bc1f .L80043DE8 -/* 044940 80043D40 00000000 */ nop -/* 044944 80043D44 C6060124 */ lwc1 $f6, 0x124($s0) -/* 044948 80043D48 44819800 */ mtc1 $at, $f19 -/* 04494C 80043D4C 44809000 */ mtc1 $zero, $f18 -/* 044950 80043D50 46003221 */ cvt.d.s $f8, $f6 -/* 044954 80043D54 46324400 */ add.d $f16, $f8, $f18 -/* 044958 80043D58 462082A0 */ cvt.s.d $f10, $f16 -/* 04495C 80043D5C 10000022 */ b .L80043DE8 -/* 044960 80043D60 E60A0124 */ swc1 $f10, 0x124($s0) -.L80043D64: -/* 044964 80043D64 C6000124 */ lwc1 $f0, 0x124($s0) -/* 044968 80043D68 14200008 */ bnez $at, .L80043D8C -/* 04496C 80043D6C 46000386 */ mov.s $f14, $f0 -/* 044970 80043D70 3C014014 */ li $at, 0x40140000 # 2.312500 -/* 044974 80043D74 44813800 */ mtc1 $at, $f7 -/* 044978 80043D78 44803000 */ mtc1 $zero, $f6 -/* 04497C 80043D7C 46007121 */ cvt.d.s $f4, $f14 -/* 044980 80043D80 46262200 */ add.d $f8, $f4, $f6 -/* 044984 80043D84 10000013 */ b .L80043DD4 -/* 044988 80043D88 462043A0 */ cvt.s.d $f14, $f8 -.L80043D8C: -/* 04498C 80043D8C 87B80072 */ lh $t8, 0x72($sp) -/* 044990 80043D90 24010001 */ li $at, 1 -/* 044994 80043D94 1301000A */ beq $t8, $at, .L80043DC0 -/* 044998 80043D98 3C014024 */ lui $at, 0x4024 -/* 04499C 80043D9C C7B20090 */ lwc1 $f18, 0x90($sp) -/* 0449A0 80043DA0 3C014069 */ li $at, 0x40690000 # 3.640625 -/* 0449A4 80043DA4 44815800 */ mtc1 $at, $f11 -/* 0449A8 80043DA8 44805000 */ mtc1 $zero, $f10 -/* 0449AC 80043DAC 46009421 */ cvt.d.s $f16, $f18 -/* 0449B0 80043DB0 462A803C */ c.lt.d $f16, $f10 -/* 0449B4 80043DB4 00000000 */ nop -/* 0449B8 80043DB8 45000006 */ bc1f .L80043DD4 -/* 0449BC 80043DBC 3C014024 */ li $at, 0x40240000 # 2.562500 -.L80043DC0: -/* 0449C0 80043DC0 44813800 */ mtc1 $at, $f7 -/* 0449C4 80043DC4 44803000 */ mtc1 $zero, $f6 -/* 0449C8 80043DC8 46007121 */ cvt.d.s $f4, $f14 -/* 0449CC 80043DCC 46262200 */ add.d $f8, $f4, $f6 -/* 0449D0 80043DD0 462043A0 */ cvt.s.d $f14, $f8 -.L80043DD4: -/* 0449D4 80043DD4 460E003C */ c.lt.s $f0, $f14 -/* 0449D8 80043DD8 00000000 */ nop -/* 0449DC 80043DDC 45000002 */ bc1f .L80043DE8 -/* 0449E0 80043DE0 00000000 */ nop -/* 0449E4 80043DE4 E60E0124 */ swc1 $f14, 0x124($s0) -.L80043DE8: -/* 0449E8 80043DE8 820E01D8 */ lb $t6, 0x1d8($s0) -/* 0449EC 80043DEC 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 -/* 0449F0 80043DF0 11C00015 */ beqz $t6, .L80043E48 -/* 0449F4 80043DF4 2442D528 */ addiu $v0, %lo(D_8011D528) # addiu $v0, $v0, -0x2ad8 -/* 0449F8 80043DF8 A20001D3 */ sb $zero, 0x1d3($s0) -/* 0449FC 80043DFC A2000213 */ sb $zero, 0x213($s0) -/* 044A00 80043E00 8C4F0000 */ lw $t7, ($v0) -/* 044A04 80043E04 3C01FFFF */ lui $at, (0xFFFF7FFF >> 16) # lui $at, 0xffff -/* 044A08 80043E08 34217FFF */ ori $at, (0xFFFF7FFF & 0xFFFF) # ori $at, $at, 0x7fff -/* 044A0C 80043E0C 01E1C824 */ and $t9, $t7, $at -/* 044A10 80043E10 AC590000 */ sw $t9, ($v0) -/* 044A14 80043E14 372E4000 */ ori $t6, $t9, 0x4000 -/* 044A18 80043E18 AC4E0000 */ sw $t6, ($v0) -/* 044A1C 80043E1C 3C01800E */ lui $at, %hi(D_800E6314) # $at, 0x800e -/* 044A20 80043E20 C610002C */ lwc1 $f16, 0x2c($s0) -/* 044A24 80043E24 C4336310 */ lwc1 $f19, %lo(D_800E6310)($at) -/* 044A28 80043E28 C4326314 */ lwc1 $f18, %lo(D_800E6314)($at) -/* 044A2C 80043E2C 460082A1 */ cvt.d.s $f10, $f16 -/* 044A30 80043E30 462A903C */ c.lt.d $f18, $f10 -/* 044A34 80043E34 35D98000 */ ori $t9, $t6, 0x8000 -/* 044A38 80043E38 45000003 */ bc1f .L80043E48 -/* 044A3C 80043E3C 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 044A40 80043E40 AC590000 */ sw $t9, ($v0) -/* 044A44 80043E44 AC20D534 */ sw $zero, %lo(D_8011D534)($at) -.L80043E48: -/* 044A48 80043E48 82180214 */ lb $t8, 0x214($s0) -/* 044A4C 80043E4C 87AE006E */ lh $t6, 0x6e($sp) -/* 044A50 80043E50 13000002 */ beqz $t8, .L80043E5C -/* 044A54 80043E54 24190040 */ li $t9, 64 -/* 044A58 80043E58 A20E01CA */ sb $t6, 0x1ca($s0) -.L80043E5C: -/* 044A5C 80043E5C 860F01BA */ lh $t7, 0x1ba($s0) -/* 044A60 80043E60 240E0028 */ li $t6, 40 -/* 044A64 80043E64 29E10041 */ slti $at, $t7, 0x41 -/* 044A68 80043E68 14200002 */ bnez $at, .L80043E74 -/* 044A6C 80043E6C 00000000 */ nop -/* 044A70 80043E70 A61901BA */ sh $t9, 0x1ba($s0) -.L80043E74: -/* 044A74 80043E74 861801BC */ lh $t8, 0x1bc($s0) -/* 044A78 80043E78 2419FFC0 */ li $t9, -64 -/* 044A7C 80043E7C 2B010029 */ slti $at, $t8, 0x29 -/* 044A80 80043E80 14200002 */ bnez $at, .L80043E8C -/* 044A84 80043E84 00000000 */ nop -/* 044A88 80043E88 A60E01BC */ sh $t6, 0x1bc($s0) -.L80043E8C: -/* 044A8C 80043E8C 860F01BA */ lh $t7, 0x1ba($s0) -/* 044A90 80043E90 240EFFD8 */ li $t6, -40 -/* 044A94 80043E94 29E1FFC0 */ slti $at, $t7, -0x40 -/* 044A98 80043E98 10200002 */ beqz $at, .L80043EA4 -/* 044A9C 80043E9C 00000000 */ nop -/* 044AA0 80043EA0 A61901BA */ sh $t9, 0x1ba($s0) -.L80043EA4: -/* 044AA4 80043EA4 861801BC */ lh $t8, 0x1bc($s0) -/* 044AA8 80043EA8 00000000 */ nop -/* 044AAC 80043EAC 2B01FFD8 */ slti $at, $t8, -0x28 -/* 044AB0 80043EB0 10200003 */ beqz $at, .L80043EC0 -/* 044AB4 80043EB4 8FBF001C */ lw $ra, 0x1c($sp) -/* 044AB8 80043EB8 A60E01BC */ sh $t6, 0x1bc($s0) -.L80043EBC: -/* 044ABC 80043EBC 8FBF001C */ lw $ra, 0x1c($sp) -.L80043EC0: -/* 044AC0 80043EC0 8FB00018 */ lw $s0, 0x18($sp) -/* 044AC4 80043EC4 03E00008 */ jr $ra -/* 044AC8 80043EC8 27BD0098 */ addiu $sp, $sp, 0x98 - -glabel func_80043ECC -/* 044ACC 80043ECC 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 044AD0 80043ED0 AFBF0014 */ sw $ra, 0x14($sp) -/* 044AD4 80043ED4 14800008 */ bnez $a0, .L80043EF8 -/* 044AD8 80043ED8 AFA60028 */ sw $a2, 0x28($sp) -/* 044ADC 80043EDC 3C018012 */ lui $at, %hi(D_8011D5BA) # $at, 0x8012 -/* 044AE0 80043EE0 A020D5BA */ sb $zero, %lo(D_8011D5BA)($at) -/* 044AE4 80043EE4 3C018012 */ lui $at, %hi(D_8011D5BB) # $at, 0x8012 -/* 044AE8 80043EE8 A020D5BB */ sb $zero, %lo(D_8011D5BB)($at) -/* 044AEC 80043EEC 3C018012 */ lui $at, %hi(D_8011D5BC) # $at, 0x8012 -/* 044AF0 80043EF0 1000009B */ b .L80044160 -/* 044AF4 80043EF4 A020D5BC */ sb $zero, %lo(D_8011D5BC)($at) -.L80043EF8: -/* 044AF8 80043EF8 0C01B063 */ jal func_8006C18C -/* 044AFC 80043EFC AFA50024 */ sw $a1, 0x24($sp) -/* 044B00 80043F00 8FA50024 */ lw $a1, 0x24($sp) -/* 044B04 80043F04 00403025 */ move $a2, $v0 -/* 044B08 80043F08 80AE01D3 */ lb $t6, 0x1d3($a1) -/* 044B0C 80043F0C 3C018012 */ lui $at, 0x8012 -/* 044B10 80043F10 11C0001A */ beqz $t6, .L80043F7C -/* 044B14 80043F14 2404000C */ li $a0, 12 -/* 044B18 80043F18 3C0F8012 */ lui $t7, %hi(D_8011D5BB) # $t7, 0x8012 -/* 044B1C 80043F1C 81EFD5BB */ lb $t7, %lo(D_8011D5BB)($t7) -/* 044B20 80043F20 240C0001 */ li $t4, 1 -/* 044B24 80043F24 15E0000B */ bnez $t7, .L80043F54 -/* 044B28 80043F28 3C0D8012 */ lui $t5, %hi(D_8011D528) # $t5, 0x8012 -/* 044B2C 80043F2C 80580014 */ lb $t8, 0x14($v0) -/* 044B30 80043F30 80590016 */ lb $t9, 0x16($v0) -/* 044B34 80043F34 80490015 */ lb $t1, 0x15($v0) -/* 044B38 80043F38 804A0017 */ lb $t2, 0x17($v0) -/* 044B3C 80043F3C 03194021 */ addu $t0, $t8, $t9 -/* 044B40 80043F40 012A5821 */ addu $t3, $t1, $t2 -/* 044B44 80043F44 A0480014 */ sb $t0, 0x14($v0) -/* 044B48 80043F48 A04B0015 */ sb $t3, 0x15($v0) -/* 044B4C 80043F4C 3C018012 */ lui $at, %hi(D_8011D5BB) # $at, 0x8012 -/* 044B50 80043F50 A02CD5BB */ sb $t4, %lo(D_8011D5BB)($at) -.L80043F54: -/* 044B54 80043F54 8DADD528 */ lw $t5, %lo(D_8011D528)($t5) -/* 044B58 80043F58 8FB80028 */ lw $t8, 0x28($sp) -/* 044B5C 80043F5C 31AE8000 */ andi $t6, $t5, 0x8000 -/* 044B60 80043F60 15C00016 */ bnez $t6, .L80043FBC -/* 044B64 80043F64 3C0F8012 */ lui $t7, %hi(D_8011D5BA) # $t7, 0x8012 -/* 044B68 80043F68 81EFD5BA */ lb $t7, %lo(D_8011D5BA)($t7) -/* 044B6C 80043F6C 3C018012 */ lui $at, %hi(D_8011D5BB) # $at, 0x8012 -/* 044B70 80043F70 01F8C821 */ addu $t9, $t7, $t8 -/* 044B74 80043F74 10000011 */ b .L80043FBC -/* 044B78 80043F78 A039D5BA */ sb $t9, %lo(D_8011D5BA)($at) -.L80043F7C: -/* 044B7C 80043F7C 3C088012 */ lui $t0, %hi(D_8011D5BA) # $t0, 0x8012 -/* 044B80 80043F80 8108D5BA */ lb $t0, %lo(D_8011D5BA)($t0) -/* 044B84 80043F84 A020D5BB */ sb $zero, %lo(D_8011D5BB)($at) -/* 044B88 80043F88 29010015 */ slti $at, $t0, 0x15 -/* 044B8C 80043F8C 14200009 */ bnez $at, .L80043FB4 -/* 044B90 80043F90 00000000 */ nop -/* 044B94 80043F94 80490008 */ lb $t1, 8($v0) -/* 044B98 80043F98 804A000A */ lb $t2, 0xa($v0) -/* 044B9C 80043F9C 804C0009 */ lb $t4, 9($v0) -/* 044BA0 80043FA0 804D000B */ lb $t5, 0xb($v0) -/* 044BA4 80043FA4 012A5821 */ addu $t3, $t1, $t2 -/* 044BA8 80043FA8 018D7021 */ addu $t6, $t4, $t5 -/* 044BAC 80043FAC A04B0008 */ sb $t3, 8($v0) -/* 044BB0 80043FB0 A04E0009 */ sb $t6, 9($v0) -.L80043FB4: -/* 044BB4 80043FB4 3C018012 */ lui $at, %hi(D_8011D5BA) # $at, 0x8012 -/* 044BB8 80043FB8 A020D5BA */ sb $zero, %lo(D_8011D5BA)($at) -.L80043FBC: -/* 044BBC 80043FBC 80AF0173 */ lb $t7, 0x173($a1) -/* 044BC0 80043FC0 3C188012 */ lui $t8, %hi(D_8011D5BC) # $t8, 0x8012 -/* 044BC4 80043FC4 11E00014 */ beqz $t7, .L80044018 -/* 044BC8 80043FC8 3C018012 */ lui $at, 0x8012 -/* 044BCC 80043FCC 80A30174 */ lb $v1, 0x174($a1) -/* 044BD0 80043FD0 8318D5BC */ lb $t8, %lo(D_8011D5BC)($t8) -/* 044BD4 80043FD4 00000000 */ nop -/* 044BD8 80043FD8 0303082A */ slt $at, $t8, $v1 -/* 044BDC 80043FDC 1020000B */ beqz $at, .L8004400C -/* 044BE0 80043FE0 00000000 */ nop -/* 044BE4 80043FE4 8059000C */ lb $t9, 0xc($v0) -/* 044BE8 80043FE8 8048000E */ lb $t0, 0xe($v0) -/* 044BEC 80043FEC 804A000D */ lb $t2, 0xd($v0) -/* 044BF0 80043FF0 804B000F */ lb $t3, 0xf($v0) -/* 044BF4 80043FF4 03284821 */ addu $t1, $t9, $t0 -/* 044BF8 80043FF8 014B6021 */ addu $t4, $t2, $t3 -/* 044BFC 80043FFC A049000C */ sb $t1, 0xc($v0) -/* 044C00 80044000 A04C000D */ sb $t4, 0xd($v0) -/* 044C04 80044004 80A30174 */ lb $v1, 0x174($a1) -/* 044C08 80044008 00000000 */ nop -.L8004400C: -/* 044C0C 8004400C 3C018012 */ lui $at, %hi(D_8011D5BC) # $at, 0x8012 -/* 044C10 80044010 10000002 */ b .L8004401C -/* 044C14 80044014 A023D5BC */ sb $v1, %lo(D_8011D5BC)($at) -.L80044018: -/* 044C18 80044018 A020D5BC */ sb $zero, %lo(D_8011D5BC)($at) -.L8004401C: -/* 044C1C 8004401C AFA50024 */ sw $a1, 0x24($sp) -/* 044C20 80044020 0C0078A7 */ jal func_8001E29C -/* 044C24 80044024 AFA6001C */ sw $a2, 0x1c($sp) -/* 044C28 80044028 3C0D8012 */ lui $t5, %hi(D_8011D530) # $t5, 0x8012 -/* 044C2C 8004402C 8DADD530 */ lw $t5, %lo(D_8011D530)($t5) -/* 044C30 80044030 8FA50024 */ lw $a1, 0x24($sp) -/* 044C34 80044034 8FA6001C */ lw $a2, 0x1c($sp) -/* 044C38 80044038 31AE2000 */ andi $t6, $t5, 0x2000 -/* 044C3C 8004403C 11C00022 */ beqz $t6, .L800440C8 -/* 044C40 80044040 00000000 */ nop -/* 044C44 80044044 80AF0173 */ lb $t7, 0x173($a1) -/* 044C48 80044048 3C0A800E */ lui $t2, 0x800e -/* 044C4C 8004404C 11E0001E */ beqz $t7, .L800440C8 -/* 044C50 80044050 00000000 */ nop -/* 044C54 80044054 80A30174 */ lb $v1, 0x174($a1) -/* 044C58 80044058 00000000 */ nop -/* 044C5C 8004405C 28610003 */ slti $at, $v1, 3 -/* 044C60 80044060 1020000A */ beqz $at, .L8004408C -/* 044C64 80044064 00000000 */ nop -/* 044C68 80044068 80B80172 */ lb $t8, 0x172($a1) -/* 044C6C 8004406C 00000000 */ nop -/* 044C70 80044070 0018C880 */ sll $t9, $t8, 2 -/* 044C74 80044074 0338C823 */ subu $t9, $t9, $t8 -/* 044C78 80044078 03234021 */ addu $t0, $t9, $v1 -/* 044C7C 8004407C 01024821 */ addu $t1, $t0, $v0 -/* 044C80 80044080 81240000 */ lb $a0, ($t1) -/* 044C84 80044084 10000004 */ b .L80044098 -/* 044C88 80044088 01445021 */ addu $t2, $t2, $a0 -.L8004408C: -/* 044C8C 8004408C 80A40172 */ lb $a0, 0x172($a1) -/* 044C90 80044090 00000000 */ nop -/* 044C94 80044094 01445021 */ addu $t2, $t2, $a0 -.L80044098: -/* 044C98 80044098 814ACD90 */ lb $t2, -0x3270($t2) -/* 044C9C 8004409C 24010001 */ li $at, 1 -/* 044CA0 800440A0 1541000A */ bne $t2, $at, .L800440CC -/* 044CA4 800440A4 00C01025 */ move $v0, $a2 -/* 044CA8 800440A8 80CB0010 */ lb $t3, 0x10($a2) -/* 044CAC 800440AC 80CC0012 */ lb $t4, 0x12($a2) -/* 044CB0 800440B0 80CE0011 */ lb $t6, 0x11($a2) -/* 044CB4 800440B4 80CF0013 */ lb $t7, 0x13($a2) -/* 044CB8 800440B8 016C6821 */ addu $t5, $t3, $t4 -/* 044CBC 800440BC 01CFC021 */ addu $t8, $t6, $t7 -/* 044CC0 800440C0 A0CD0010 */ sb $t5, 0x10($a2) -/* 044CC4 800440C4 A0D80011 */ sb $t8, 0x11($a2) -.L800440C8: -/* 044CC8 800440C8 00C01025 */ move $v0, $a2 -.L800440CC: -/* 044CCC 800440CC 24060002 */ li $a2, 2 -/* 044CD0 800440D0 00002825 */ move $a1, $zero -/* 044CD4 800440D4 24040064 */ li $a0, 100 -.L800440D8: -/* 044CD8 800440D8 8043000C */ lb $v1, 0xc($v0) -/* 044CDC 800440DC 24A50001 */ addiu $a1, $a1, 1 -/* 044CE0 800440E0 28610065 */ slti $at, $v1, 0x65 -/* 044CE4 800440E4 10200003 */ beqz $at, .L800440F4 -/* 044CE8 800440E8 00000000 */ nop -/* 044CEC 800440EC 04610002 */ bgez $v1, .L800440F8 -/* 044CF0 800440F0 00000000 */ nop -.L800440F4: -/* 044CF4 800440F4 A044000C */ sb $a0, 0xc($v0) -.L800440F8: -/* 044CF8 800440F8 80430008 */ lb $v1, 8($v0) -/* 044CFC 800440FC 00000000 */ nop -/* 044D00 80044100 28610065 */ slti $at, $v1, 0x65 -/* 044D04 80044104 10200003 */ beqz $at, .L80044114 -/* 044D08 80044108 00000000 */ nop -/* 044D0C 8004410C 04610002 */ bgez $v1, .L80044118 -/* 044D10 80044110 00000000 */ nop -.L80044114: -/* 044D14 80044114 A0440008 */ sb $a0, 8($v0) -.L80044118: -/* 044D18 80044118 80430014 */ lb $v1, 0x14($v0) -/* 044D1C 8004411C 00000000 */ nop -/* 044D20 80044120 28610065 */ slti $at, $v1, 0x65 -/* 044D24 80044124 10200003 */ beqz $at, .L80044134 -/* 044D28 80044128 00000000 */ nop -/* 044D2C 8004412C 04610002 */ bgez $v1, .L80044138 -/* 044D30 80044130 00000000 */ nop -.L80044134: -/* 044D34 80044134 A0440014 */ sb $a0, 0x14($v0) -.L80044138: -/* 044D38 80044138 80430010 */ lb $v1, 0x10($v0) -/* 044D3C 8004413C 00000000 */ nop -/* 044D40 80044140 28610065 */ slti $at, $v1, 0x65 -/* 044D44 80044144 10200003 */ beqz $at, .L80044154 -/* 044D48 80044148 00000000 */ nop -/* 044D4C 8004414C 04610002 */ bgez $v1, .L80044158 -/* 044D50 80044150 00000000 */ nop -.L80044154: -/* 044D54 80044154 A0440010 */ sb $a0, 0x10($v0) -.L80044158: -/* 044D58 80044158 14A6FFDF */ bne $a1, $a2, .L800440D8 -/* 044D5C 8004415C 24420001 */ addiu $v0, $v0, 1 -.L80044160: -/* 044D60 80044160 8FBF0014 */ lw $ra, 0x14($sp) -/* 044D64 80044164 27BD0020 */ addiu $sp, $sp, 0x20 -/* 044D68 80044168 03E00008 */ jr $ra -/* 044D6C 8004416C 00000000 */ nop - -glabel func_80044170 -/* 044D70 80044170 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 044D74 80044174 AFBF0014 */ sw $ra, 0x14($sp) -/* 044D78 80044178 AFA60028 */ sw $a2, 0x28($sp) -/* 044D7C 8004417C AFA40020 */ sw $a0, 0x20($sp) -/* 044D80 80044180 0C01AF66 */ jal func_8006BD98 -/* 044D84 80044184 AFA50024 */ sw $a1, 0x24($sp) -/* 044D88 80044188 8FA40020 */ lw $a0, 0x20($sp) -/* 044D8C 8004418C 8FA50024 */ lw $a1, 0x24($sp) -/* 044D90 80044190 24010040 */ li $at, 64 -/* 044D94 80044194 10410008 */ beq $v0, $at, .L800441B8 -/* 044D98 80044198 00403825 */ move $a3, $v0 -/* 044D9C 8004419C 24010041 */ li $at, 65 -/* 044DA0 800441A0 10410005 */ beq $v0, $at, .L800441B8 -/* 044DA4 800441A4 24010042 */ li $at, 66 -/* 044DA8 800441A8 1041000C */ beq $v0, $at, .L800441DC -/* 044DAC 800441AC 8FA60028 */ lw $a2, 0x28($sp) -/* 044DB0 800441B0 10000012 */ b .L800441FC -/* 044DB4 800441B4 8FA60028 */ lw $a2, 0x28($sp) -.L800441B8: -/* 044DB8 800441B8 8FA60028 */ lw $a2, 0x28($sp) -/* 044DBC 800441BC AFA50024 */ sw $a1, 0x24($sp) -/* 044DC0 800441C0 0C01111F */ jal func_8004447C -/* 044DC4 800441C4 AFA7001C */ sw $a3, 0x1c($sp) -/* 044DC8 800441C8 8FA50024 */ lw $a1, 0x24($sp) -/* 044DCC 800441CC 8FA7001C */ lw $a3, 0x1c($sp) -/* 044DD0 800441D0 10000011 */ b .L80044218 -/* 044DD4 800441D4 80AE0214 */ lb $t6, 0x214($a1) -/* 044DD8 800441D8 8FA60028 */ lw $a2, 0x28($sp) -.L800441DC: -/* 044DDC 800441DC AFA50024 */ sw $a1, 0x24($sp) -/* 044DE0 800441E0 0C0114A8 */ jal func_800452A0 -/* 044DE4 800441E4 AFA7001C */ sw $a3, 0x1c($sp) -/* 044DE8 800441E8 8FA50024 */ lw $a1, 0x24($sp) -/* 044DEC 800441EC 8FA7001C */ lw $a3, 0x1c($sp) -/* 044DF0 800441F0 10000009 */ b .L80044218 -/* 044DF4 800441F4 80AE0214 */ lb $t6, 0x214($a1) -/* 044DF8 800441F8 8FA60028 */ lw $a2, 0x28($sp) -.L800441FC: -/* 044DFC 800441FC AFA50024 */ sw $a1, 0x24($sp) -/* 044E00 80044200 0C011712 */ jal func_80045C48 -/* 044E04 80044204 AFA7001C */ sw $a3, 0x1c($sp) -/* 044E08 80044208 8FA50024 */ lw $a1, 0x24($sp) -/* 044E0C 8004420C 8FA7001C */ lw $a3, 0x1c($sp) -/* 044E10 80044210 00000000 */ nop -/* 044E14 80044214 80AE0214 */ lb $t6, 0x214($a1) -.L80044218: -/* 044E18 80044218 44805000 */ mtc1 $zero, $f10 -/* 044E1C 8004421C 15C00012 */ bnez $t6, .L80044268 -/* 044E20 80044220 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 044E24 80044224 C4A4002C */ lwc1 $f4, 0x2c($a1) -/* 044E28 80044228 44814800 */ mtc1 $at, $f9 -/* 044E2C 8004422C 44804000 */ mtc1 $zero, $f8 -/* 044E30 80044230 460021A1 */ cvt.d.s $f6, $f4 -/* 044E34 80044234 4628303C */ c.lt.d $f6, $f8 -/* 044E38 80044238 8FA30028 */ lw $v1, 0x28($sp) -/* 044E3C 8004423C 4500000A */ bc1f .L80044268 -/* 044E40 80044240 00000000 */ nop -/* 044E44 80044244 80AF0215 */ lb $t7, 0x215($a1) -/* 044E48 80044248 00000000 */ nop -/* 044E4C 8004424C 01E3C023 */ subu $t8, $t7, $v1 -/* 044E50 80044250 A0B80215 */ sb $t8, 0x215($a1) -/* 044E54 80044254 80B90215 */ lb $t9, 0x215($a1) -/* 044E58 80044258 00000000 */ nop -/* 044E5C 8004425C 07210002 */ bgez $t9, .L80044268 -/* 044E60 80044260 00000000 */ nop -/* 044E64 80044264 A0A00215 */ sb $zero, 0x215($a1) -.L80044268: -/* 044E68 80044268 C4B0002C */ lwc1 $f16, 0x2c($a1) -/* 044E6C 8004426C 3C01BFF0 */ li $at, 0xBFF00000 # -1.875000 -/* 044E70 80044270 44815800 */ mtc1 $at, $f11 -/* 044E74 80044274 460084A1 */ cvt.d.s $f18, $f16 -/* 044E78 80044278 4632503C */ c.lt.d $f10, $f18 -/* 044E7C 8004427C 8FA30028 */ lw $v1, 0x28($sp) -/* 044E80 80044280 80A20214 */ lb $v0, 0x214($a1) -/* 044E84 80044284 4500003B */ bc1f .L80044374 -/* 044E88 80044288 00435023 */ subu $t2, $v0, $v1 -/* 044E8C 8004428C 14400038 */ bnez $v0, .L80044370 -/* 044E90 80044290 3C088012 */ lui $t0, %hi(D_8011D540) # $t0, 0x8012 -/* 044E94 80044294 8D08D540 */ lw $t0, %lo(D_8011D540)($t0) -/* 044E98 80044298 3C018012 */ lui $at, %hi(D_8011D544) # $at, 0x8012 -/* 044E9C 8004429C 15000035 */ bnez $t0, .L80044374 -/* 044EA0 800442A0 00435023 */ subu $t2, $v0, $v1 -/* 044EA4 800442A4 44802000 */ mtc1 $zero, $f4 -/* 044EA8 800442A8 C426D544 */ lwc1 $f6, %lo(D_8011D544)($at) -/* 044EAC 800442AC 00000000 */ nop -/* 044EB0 800442B0 46062032 */ c.eq.s $f4, $f6 -/* 044EB4 800442B4 00000000 */ nop -/* 044EB8 800442B8 4500002E */ bc1f .L80044374 -/* 044EBC 800442BC 00435023 */ subu $t2, $v0, $v1 -/* 044EC0 800442C0 80A901E2 */ lb $t1, 0x1e2($a1) -/* 044EC4 800442C4 00000000 */ nop -/* 044EC8 800442C8 1120002A */ beqz $t1, .L80044374 -/* 044ECC 800442CC 00435023 */ subu $t2, $v0, $v1 -/* 044ED0 800442D0 80AA0215 */ lb $t2, 0x215($a1) -/* 044ED4 800442D4 00000000 */ nop -/* 044ED8 800442D8 15400026 */ bnez $t2, .L80044374 -/* 044EDC 800442DC 00435023 */ subu $t2, $v0, $v1 -/* 044EE0 800442E0 80AB0213 */ lb $t3, 0x213($a1) -/* 044EE4 800442E4 240E003C */ li $t6, 60 -/* 044EE8 800442E8 01636021 */ addu $t4, $t3, $v1 -/* 044EEC 800442EC A0AC0213 */ sb $t4, 0x213($a1) -/* 044EF0 800442F0 80AD0213 */ lb $t5, 0x213($a1) -/* 044EF4 800442F4 240F0078 */ li $t7, 120 -/* 044EF8 800442F8 29A1003D */ slti $at, $t5, 0x3d -/* 044EFC 800442FC 14200019 */ bnez $at, .L80044364 -/* 044F00 80044300 30F80040 */ andi $t8, $a3, 0x40 -/* 044F04 80044304 A0A00213 */ sb $zero, 0x213($a1) -/* 044F08 80044308 A0AE0214 */ sb $t6, 0x214($a1) -/* 044F0C 8004430C 17000007 */ bnez $t8, .L8004432C -/* 044F10 80044310 A0AF0215 */ sb $t7, 0x215($a1) -/* 044F14 80044314 80B901CA */ lb $t9, 0x1ca($a1) -/* 044F18 80044318 00000000 */ nop -/* 044F1C 8004431C 27280001 */ addiu $t0, $t9, 1 -/* 044F20 80044320 31090003 */ andi $t1, $t0, 3 -/* 044F24 80044324 1000000F */ b .L80044364 -/* 044F28 80044328 A0A901CA */ sb $t1, 0x1ca($a1) -.L8004432C: -/* 044F2C 8004432C 24010040 */ li $at, 64 -/* 044F30 80044330 10E10003 */ beq $a3, $at, .L80044340 -/* 044F34 80044334 24010041 */ li $at, 65 -/* 044F38 80044338 14E1000A */ bne $a3, $at, .L80044364 -/* 044F3C 8004433C 00000000 */ nop -.L80044340: -/* 044F40 80044340 90A401CE */ lbu $a0, 0x1ce($a1) -/* 044F44 80044344 240100FF */ li $at, 255 -/* 044F48 80044348 10810006 */ beq $a0, $at, .L80044364 -/* 044F4C 8004434C 00000000 */ nop -/* 044F50 80044350 0C007485 */ jal func_8001D214 -/* 044F54 80044354 AFA50024 */ sw $a1, 0x24($sp) -/* 044F58 80044358 8FA50024 */ lw $a1, 0x24($sp) -/* 044F5C 8004435C 00000000 */ nop -/* 044F60 80044360 ACA20154 */ sw $v0, 0x154($a1) -.L80044364: -/* 044F64 80044364 80A20214 */ lb $v0, 0x214($a1) -/* 044F68 80044368 1000000A */ b .L80044394 -/* 044F6C 8004436C 00000000 */ nop -.L80044370: -/* 044F70 80044370 00435023 */ subu $t2, $v0, $v1 -.L80044374: -/* 044F74 80044374 A0AA0214 */ sb $t2, 0x214($a1) -/* 044F78 80044378 80A20214 */ lb $v0, 0x214($a1) -/* 044F7C 8004437C A0A00213 */ sb $zero, 0x213($a1) -/* 044F80 80044380 04410004 */ bgez $v0, .L80044394 -/* 044F84 80044384 00000000 */ nop -/* 044F88 80044388 A0A00214 */ sb $zero, 0x214($a1) -/* 044F8C 8004438C 80A20214 */ lb $v0, 0x214($a1) -/* 044F90 80044390 00000000 */ nop -.L80044394: -/* 044F94 80044394 10400012 */ beqz $v0, .L800443E0 -/* 044F98 80044398 3C038012 */ lui $v1, %hi(D_8011D534) # $v1, 0x8012 -/* 044F9C 8004439C 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 -/* 044FA0 800443A0 2442D528 */ addiu $v0, %lo(D_8011D528) # addiu $v0, $v0, -0x2ad8 -/* 044FA4 800443A4 8C4D0000 */ lw $t5, ($v0) -/* 044FA8 800443A8 3C01FFFF */ lui $at, (0xFFFF7FFF >> 16) # lui $at, 0xffff -/* 044FAC 800443AC 2463D534 */ addiu $v1, %lo(D_8011D534) # addiu $v1, $v1, -0x2acc -/* 044FB0 800443B0 34217FFF */ ori $at, (0xFFFF7FFF & 0xFFFF) # ori $at, $at, 0x7fff -/* 044FB4 800443B4 8C6B0000 */ lw $t3, ($v1) -/* 044FB8 800443B8 01A17024 */ and $t6, $t5, $at -/* 044FBC 800443BC 3C048012 */ lui $a0, %hi(D_8011D538) # $a0, 0x8012 -/* 044FC0 800443C0 2484D538 */ addiu $a0, %lo(D_8011D538) # addiu $a0, $a0, -0x2ac8 -/* 044FC4 800443C4 AC4E0000 */ sw $t6, ($v0) -/* 044FC8 800443C8 240FFFCE */ li $t7, -50 -/* 044FCC 800443CC 35D94000 */ ori $t9, $t6, 0x4000 -/* 044FD0 800443D0 000B6023 */ negu $t4, $t3 -/* 044FD4 800443D4 AC6C0000 */ sw $t4, ($v1) -/* 044FD8 800443D8 AC8F0000 */ sw $t7, ($a0) -/* 044FDC 800443DC AC590000 */ sw $t9, ($v0) -.L800443E0: -/* 044FE0 800443E0 3C038012 */ lui $v1, %hi(D_8011D534) # $v1, 0x8012 -/* 044FE4 800443E4 2463D534 */ addiu $v1, %lo(D_8011D534) # addiu $v1, $v1, -0x2acc -/* 044FE8 800443E8 8C620000 */ lw $v0, ($v1) -/* 044FEC 800443EC 3C048012 */ lui $a0, %hi(D_8011D538) # $a0, 0x8012 -/* 044FF0 800443F0 2841004C */ slti $at, $v0, 0x4c -/* 044FF4 800443F4 14200003 */ bnez $at, .L80044404 -/* 044FF8 800443F8 2484D538 */ addiu $a0, %lo(D_8011D538) # addiu $a0, $a0, -0x2ac8 -/* 044FFC 800443FC 2402004B */ li $v0, 75 -/* 045000 80044400 AC620000 */ sw $v0, ($v1) -.L80044404: -/* 045004 80044404 2841FFB5 */ slti $at, $v0, -0x4b -/* 045008 80044408 10200002 */ beqz $at, .L80044414 -/* 04500C 8004440C 2409FFB5 */ li $t1, -75 -/* 045010 80044410 AC690000 */ sw $t1, ($v1) -.L80044414: -/* 045014 80044414 8C820000 */ lw $v0, ($a0) -/* 045018 80044418 240BFFB5 */ li $t3, -75 -/* 04501C 8004441C 2841004C */ slti $at, $v0, 0x4c -/* 045020 80044420 14200004 */ bnez $at, .L80044434 -/* 045024 80044424 2841FFB5 */ slti $at, $v0, -0x4b -/* 045028 80044428 2402004B */ li $v0, 75 -/* 04502C 8004442C AC820000 */ sw $v0, ($a0) -/* 045030 80044430 2841FFB5 */ slti $at, $v0, -0x4b -.L80044434: -/* 045034 80044434 10200003 */ beqz $at, .L80044444 -/* 045038 80044438 8FBF0014 */ lw $ra, 0x14($sp) -/* 04503C 8004443C AC8B0000 */ sw $t3, ($a0) -/* 045040 80044440 8FBF0014 */ lw $ra, 0x14($sp) -.L80044444: -/* 045044 80044444 27BD0020 */ addiu $sp, $sp, 0x20 -/* 045048 80044448 03E00008 */ jr $ra -/* 04504C 8004444C 00000000 */ nop - -glabel func_80044450 -/* 045050 80044450 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 045054 80044454 AFBF0014 */ sw $ra, 0x14($sp) -/* 045058 80044458 AFA40018 */ sw $a0, 0x18($sp) -/* 04505C 8004445C 00002025 */ move $a0, $zero -/* 045060 80044460 0C01BE53 */ jal func_8006F94C -/* 045064 80044464 24050063 */ li $a1, 99 -/* 045068 80044468 8FAE0018 */ lw $t6, 0x18($sp) -/* 04506C 8004446C 8FBF0014 */ lw $ra, 0x14($sp) -/* 045070 80044470 27BD0018 */ addiu $sp, $sp, 0x18 -/* 045074 80044474 03E00008 */ jr $ra -/* 045078 80044478 004E102A */ slt $v0, $v0, $t6 - -glabel func_8004447C -/* 04507C 8004447C 3C018012 */ lui $at, %hi(D_8011D52C) # $at, 0x8012 -/* 045080 80044480 AC20D52C */ sw $zero, %lo(D_8011D52C)($at) -/* 045084 80044484 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 -/* 045088 80044488 AC20D530 */ sw $zero, %lo(D_8011D530)($at) -/* 04508C 8004448C 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 -/* 045090 80044490 27BDFF88 */ addiu $sp, $sp, -0x78 -/* 045094 80044494 AC20D528 */ sw $zero, %lo(D_8011D528)($at) -/* 045098 80044498 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 04509C 8004449C AC20D534 */ sw $zero, %lo(D_8011D534)($at) -/* 0450A0 800444A0 AFBF001C */ sw $ra, 0x1c($sp) -/* 0450A4 800444A4 AFB00018 */ sw $s0, 0x18($sp) -/* 0450A8 800444A8 AFA40078 */ sw $a0, 0x78($sp) -/* 0450AC 800444AC 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 -/* 0450B0 800444B0 00A08025 */ move $s0, $a1 -/* 0450B4 800444B4 AFA60080 */ sw $a2, 0x80($sp) -/* 0450B8 800444B8 AC20D538 */ sw $zero, %lo(D_8011D538)($at) -/* 0450BC 800444BC 0C006E9D */ jal func_8001BA74 -/* 0450C0 800444C0 27A40058 */ addiu $a0, $sp, 0x58 -/* 0450C4 800444C4 8FAE0058 */ lw $t6, 0x58($sp) -/* 0450C8 800444C8 24010004 */ li $at, 4 -/* 0450CC 800444CC 15C10313 */ bne $t6, $at, .L8004511C -/* 0450D0 800444D0 8FBF001C */ lw $ra, 0x1c($sp) -/* 0450D4 800444D4 0C01AF6C */ jal func_8006BDB0 -/* 0450D8 800444D8 00000000 */ nop -/* 0450DC 800444DC 804F004C */ lb $t7, 0x4c($v0) -/* 0450E0 800444E0 2458002A */ addiu $t8, $v0, 0x2a -/* 0450E4 800444E4 AFB80038 */ sw $t8, 0x38($sp) -/* 0450E8 800444E8 A3AF003F */ sb $t7, 0x3f($sp) -/* 0450EC 800444EC 921901CD */ lbu $t9, 0x1cd($s0) -/* 0450F0 800444F0 8FA20078 */ lw $v0, 0x78($sp) -/* 0450F4 800444F4 17200010 */ bnez $t9, .L80044538 -/* 0450F8 800444F8 00000000 */ nop -/* 0450FC 800444FC C44C000C */ lwc1 $f12, 0xc($v0) -/* 045100 80044500 C44E0010 */ lwc1 $f14, 0x10($v0) -/* 045104 80044504 8C460014 */ lw $a2, 0x14($v0) -/* 045108 80044508 0C007149 */ jal func_8001C524 -/* 04510C 8004450C 00003825 */ move $a3, $zero -/* 045110 80044510 240100FF */ li $at, 255 -/* 045114 80044514 10410008 */ beq $v0, $at, .L80044538 -/* 045118 80044518 AFA20058 */ sw $v0, 0x58($sp) -/* 04511C 8004451C 0C007485 */ jal func_8001D214 -/* 045120 80044520 00402025 */ move $a0, $v0 -/* 045124 80044524 240C0001 */ li $t4, 1 -/* 045128 80044528 240D00FF */ li $t5, 255 -/* 04512C 8004452C AE020154 */ sw $v0, 0x154($s0) -/* 045130 80044530 A20C01CD */ sb $t4, 0x1cd($s0) -/* 045134 80044534 A20D01CE */ sb $t5, 0x1ce($s0) -.L80044538: -/* 045138 80044538 8E060154 */ lw $a2, 0x154($s0) -/* 04513C 8004453C 00000000 */ nop -/* 045140 80044540 10C00032 */ beqz $a2, .L8004460C -/* 045144 80044544 00000000 */ nop -/* 045148 80044548 8CCE003C */ lw $t6, 0x3c($a2) -/* 04514C 8004454C 8FA20078 */ lw $v0, 0x78($sp) -/* 045150 80044550 AFAE006C */ sw $t6, 0x6c($sp) -/* 045154 80044554 C4C4000C */ lwc1 $f4, 0xc($a2) -/* 045158 80044558 C446000C */ lwc1 $f6, 0xc($v0) -/* 04515C 8004455C C4C80014 */ lwc1 $f8, 0x14($a2) -/* 045160 80044560 46062001 */ sub.s $f0, $f4, $f6 -/* 045164 80044564 C44A0014 */ lwc1 $f10, 0x14($v0) -/* 045168 80044568 46000402 */ mul.s $f16, $f0, $f0 -/* 04516C 8004456C 460A4381 */ sub.s $f14, $f8, $f10 -/* 045170 80044570 E7A00064 */ swc1 $f0, 0x64($sp) -/* 045174 80044574 E7AE0060 */ swc1 $f14, 0x60($sp) -/* 045178 80044578 460E7482 */ mul.s $f18, $f14, $f14 -/* 04517C 8004457C AFA60074 */ sw $a2, 0x74($sp) -/* 045180 80044580 0C0326B4 */ jal sqrtf -/* 045184 80044584 46128300 */ add.s $f12, $f16, $f18 -/* 045188 80044588 44802800 */ mtc1 $zero, $f5 -/* 04518C 8004458C 44802000 */ mtc1 $zero, $f4 -/* 045190 80044590 460001A1 */ cvt.d.s $f6, $f0 -/* 045194 80044594 4626203C */ c.lt.d $f4, $f6 -/* 045198 80044598 8FA60074 */ lw $a2, 0x74($sp) -/* 04519C 8004459C C7AE0060 */ lwc1 $f14, 0x60($sp) -/* 0451A0 800445A0 4500001A */ bc1f .L8004460C -/* 0451A4 800445A4 E7A0005C */ swc1 $f0, 0x5c($sp) -/* 0451A8 800445A8 C7AC0064 */ lwc1 $f12, 0x64($sp) -/* 0451AC 800445AC 0C01C1D4 */ jal func_80070750 -/* 0451B0 800445B0 AFA60074 */ sw $a2, 0x74($sp) -/* 0451B4 800445B4 24018000 */ li $at, -32768 -/* 0451B8 800445B8 00417821 */ addu $t7, $v0, $at -/* 0451BC 800445BC 31F8FFFF */ andi $t8, $t7, 0xffff -/* 0451C0 800445C0 AFB80058 */ sw $t8, 0x58($sp) -/* 0451C4 800445C4 861901A0 */ lh $t9, 0x1a0($s0) -/* 0451C8 800445C8 34018001 */ li $at, 32769 -/* 0451CC 800445CC 332CFFFF */ andi $t4, $t9, 0xffff -/* 0451D0 800445D0 030C1823 */ subu $v1, $t8, $t4 -/* 0451D4 800445D4 8FA60074 */ lw $a2, 0x74($sp) -/* 0451D8 800445D8 0061082A */ slt $at, $v1, $at -/* 0451DC 800445DC 14200003 */ bnez $at, .L800445EC -/* 0451E0 800445E0 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 0451E4 800445E4 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 0451E8 800445E8 00611821 */ addu $v1, $v1, $at -.L800445EC: -/* 0451EC 800445EC 28618000 */ slti $at, $v1, -0x8000 -/* 0451F0 800445F0 10200002 */ beqz $at, .L800445FC -/* 0451F4 800445F4 3401FFFF */ li $at, 65535 -/* 0451F8 800445F8 00611821 */ addu $v1, $v1, $at -.L800445FC: -/* 0451FC 800445FC 00036823 */ negu $t5, $v1 -/* 045200 80044600 000D7103 */ sra $t6, $t5, 4 -/* 045204 80044604 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 045208 80044608 AC2ED534 */ sw $t6, %lo(D_8011D534)($at) -.L8004460C: -/* 04520C 8004460C 3C0F8012 */ lui $t7, %hi(D_8011D540) # $t7, 0x8012 -/* 045210 80044610 8DEFD540 */ lw $t7, %lo(D_8011D540)($t7) -/* 045214 80044614 00000000 */ nop -/* 045218 80044618 11E00002 */ beqz $t7, .L80044624 -/* 04521C 8004461C 00000000 */ nop -/* 045220 80044620 A60001C6 */ sh $zero, 0x1c6($s0) -.L80044624: -/* 045224 80044624 920301CD */ lbu $v1, 0x1cd($s0) -/* 045228 80044628 24010002 */ li $at, 2 -/* 04522C 8004462C 10610005 */ beq $v1, $at, .L80044644 -/* 045230 80044630 24010004 */ li $at, 4 -/* 045234 80044634 10610003 */ beq $v1, $at, .L80044644 -/* 045238 80044638 24010005 */ li $at, 5 -/* 04523C 8004463C 14610009 */ bne $v1, $at, .L80044664 -/* 045240 80044640 8FAC0078 */ lw $t4, 0x78($sp) -.L80044644: -/* 045244 80044644 860201C6 */ lh $v0, 0x1c6($s0) -/* 045248 80044648 8FB90080 */ lw $t9, 0x80($sp) -/* 04524C 8004464C 18400003 */ blez $v0, .L8004465C -/* 045250 80044650 0059C023 */ subu $t8, $v0, $t9 -/* 045254 80044654 10000002 */ b .L80044660 -/* 045258 80044658 A61801C6 */ sh $t8, 0x1c6($s0) -.L8004465C: -/* 04525C 8004465C A60001C6 */ sh $zero, 0x1c6($s0) -.L80044660: -/* 045260 80044660 8FAC0078 */ lw $t4, 0x78($sp) -.L80044664: -/* 045264 80044664 00000000 */ nop -/* 045268 80044668 C58C0010 */ lwc1 $f12, 0x10($t4) -/* 04526C 8004466C 0C007106 */ jal func_8001C418 -/* 045270 80044670 AFA60074 */ sw $a2, 0x74($sp) -/* 045274 80044674 920301CD */ lbu $v1, 0x1cd($s0) -/* 045278 80044678 8FA60074 */ lw $a2, 0x74($sp) -/* 04527C 8004467C 246DFFFF */ addiu $t5, $v1, -1 -/* 045280 80044680 2DA10007 */ sltiu $at, $t5, 7 -/* 045284 80044684 A2020212 */ sb $v0, 0x212($s0) -/* 045288 80044688 10200245 */ beqz $at, .L80044FA0 -/* 04528C 8004468C 24050001 */ li $a1, 1 -/* 045290 80044690 000D6880 */ sll $t5, $t5, 2 -/* 045294 80044694 3C01800E */ lui $at, 0x800e -/* 045298 80044698 002D0821 */ addu $at, $at, $t5 -/* 04529C 8004469C 8C2D6318 */ lw $t5, 0x6318($at) -/* 0452A0 800446A0 00000000 */ nop -/* 0452A4 800446A4 01A00008 */ jr $t5 -/* 0452A8 800446A8 00000000 */ nop -/* 0452AC 800446AC 00002025 */ move $a0, $zero -/* 0452B0 800446B0 0C01BE53 */ jal func_8006F94C -/* 0452B4 800446B4 24050009 */ li $a1, 9 -/* 0452B8 800446B8 820E0173 */ lb $t6, 0x173($s0) -/* 0452BC 800446BC 8FAD0038 */ lw $t5, 0x38($sp) -/* 0452C0 800446C0 15C00035 */ bnez $t6, .L80044798 -/* 0452C4 800446C4 00000000 */ nop -/* 0452C8 800446C8 8FAF0038 */ lw $t7, 0x38($sp) -/* 0452CC 800446CC 00000000 */ nop -/* 0452D0 800446D0 81E40003 */ lb $a0, 3($t7) -/* 0452D4 800446D4 0C011114 */ jal func_80044450 -/* 0452D8 800446D8 00000000 */ nop -/* 0452DC 800446DC 10400003 */ beqz $v0, .L800446EC -/* 0452E0 800446E0 24190003 */ li $t9, 3 -/* 0452E4 800446E4 1000022E */ b .L80044FA0 -/* 0452E8 800446E8 A21901CD */ sb $t9, 0x1cd($s0) -.L800446EC: -/* 0452EC 800446EC 8FB80038 */ lw $t8, 0x38($sp) -/* 0452F0 800446F0 00000000 */ nop -/* 0452F4 800446F4 83040006 */ lb $a0, 6($t8) -/* 0452F8 800446F8 0C011114 */ jal func_80044450 -/* 0452FC 800446FC 00000000 */ nop -/* 045300 80044700 1040000D */ beqz $v0, .L80044738 -/* 045304 80044704 8FAF0038 */ lw $t7, 0x38($sp) -/* 045308 80044708 83AC003F */ lb $t4, 0x3f($sp) -/* 04530C 8004470C 24010041 */ li $at, 65 -/* 045310 80044710 15810009 */ bne $t4, $at, .L80044738 -/* 045314 80044714 8FAF0038 */ lw $t7, 0x38($sp) -/* 045318 80044718 820D0185 */ lb $t5, 0x185($s0) -/* 04531C 8004471C 240E0007 */ li $t6, 7 -/* 045320 80044720 29A10002 */ slti $at, $t5, 2 -/* 045324 80044724 14200004 */ bnez $at, .L80044738 -/* 045328 80044728 8FAF0038 */ lw $t7, 0x38($sp) -/* 04532C 8004472C 1000021C */ b .L80044FA0 -/* 045330 80044730 A20E01CD */ sb $t6, 0x1cd($s0) -/* 045334 80044734 8FAF0038 */ lw $t7, 0x38($sp) -.L80044738: -/* 045338 80044738 00000000 */ nop -/* 04533C 8004473C 81E40005 */ lb $a0, 5($t7) -/* 045340 80044740 0C011114 */ jal func_80044450 -/* 045344 80044744 00000000 */ nop -/* 045348 80044748 1040000E */ beqz $v0, .L80044784 -/* 04534C 8004474C 3C188012 */ lui $t8, %hi(D_8011D58C) # $t8, 0x8012 -/* 045350 80044750 82190002 */ lb $t9, 2($s0) -/* 045354 80044754 2718D58C */ addiu $t8, %lo(D_8011D58C) # addiu $t8, $t8, -0x2a74 -/* 045358 80044758 03381021 */ addu $v0, $t9, $t8 -/* 04535C 8004475C 804C0000 */ lb $t4, ($v0) -/* 045360 80044760 240D04B0 */ li $t5, 1200 -/* 045364 80044764 11800007 */ beqz $t4, .L80044784 -/* 045368 80044768 24190005 */ li $t9, 5 -/* 04536C 8004476C A60D01C6 */ sh $t5, 0x1c6($s0) -/* 045370 80044770 804E0000 */ lb $t6, ($v0) -/* 045374 80044774 A21901CD */ sb $t9, 0x1cd($s0) -/* 045378 80044778 25CFFFFF */ addiu $t7, $t6, -1 -/* 04537C 8004477C 10000208 */ b .L80044FA0 -/* 045380 80044780 A20F01CF */ sb $t7, 0x1cf($s0) -.L80044784: -/* 045384 80044784 24180002 */ li $t8, 2 -/* 045388 80044788 240C012C */ li $t4, 300 -/* 04538C 8004478C A21801CD */ sb $t8, 0x1cd($s0) -/* 045390 80044790 10000203 */ b .L80044FA0 -/* 045394 80044794 A60C01C6 */ sh $t4, 0x1c6($s0) -.L80044798: -/* 045398 80044798 81A40006 */ lb $a0, 6($t5) -/* 04539C 8004479C 0C011114 */ jal func_80044450 -/* 0453A0 800447A0 00000000 */ nop -/* 0453A4 800447A4 1040000D */ beqz $v0, .L800447DC -/* 0453A8 800447A8 8FB80038 */ lw $t8, 0x38($sp) -/* 0453AC 800447AC 83AE003F */ lb $t6, 0x3f($sp) -/* 0453B0 800447B0 24010041 */ li $at, 65 -/* 0453B4 800447B4 15C10009 */ bne $t6, $at, .L800447DC -/* 0453B8 800447B8 8FB80038 */ lw $t8, 0x38($sp) -/* 0453BC 800447BC 820F0185 */ lb $t7, 0x185($s0) -/* 0453C0 800447C0 24190007 */ li $t9, 7 -/* 0453C4 800447C4 29E10002 */ slti $at, $t7, 2 -/* 0453C8 800447C8 14200004 */ bnez $at, .L800447DC -/* 0453CC 800447CC 8FB80038 */ lw $t8, 0x38($sp) -/* 0453D0 800447D0 100001F3 */ b .L80044FA0 -/* 0453D4 800447D4 A21901CD */ sb $t9, 0x1cd($s0) -/* 0453D8 800447D8 8FB80038 */ lw $t8, 0x38($sp) -.L800447DC: -/* 0453DC 800447DC 00000000 */ nop -/* 0453E0 800447E0 83040000 */ lb $a0, ($t8) -/* 0453E4 800447E4 0C011114 */ jal func_80044450 -/* 0453E8 800447E8 00000000 */ nop -/* 0453EC 800447EC 10400081 */ beqz $v0, .L800449F4 -/* 0453F0 800447F0 24180002 */ li $t8, 2 -/* 0453F4 800447F4 0C011114 */ jal func_80044450 -/* 0453F8 800447F8 24040032 */ li $a0, 50 -/* 0453FC 800447FC 8FAC0038 */ lw $t4, 0x38($sp) -/* 045400 80044800 10400003 */ beqz $v0, .L80044810 -/* 045404 80044804 00005025 */ move $t2, $zero -/* 045408 80044808 10000001 */ b .L80044810 -/* 04540C 8004480C 240A0001 */ li $t2, 1 -.L80044810: -/* 045410 80044810 81840001 */ lb $a0, 1($t4) -/* 045414 80044814 0C011114 */ jal func_80044450 -/* 045418 80044818 A7AA004C */ sh $t2, 0x4c($sp) -/* 04541C 8004481C 87AA004C */ lh $t2, 0x4c($sp) -/* 045420 80044820 10400003 */ beqz $v0, .L80044830 -/* 045424 80044824 2408FFFF */ li $t0, -1 -/* 045428 80044828 10000002 */ b .L80044834 -/* 04542C 8004482C 00004825 */ move $t1, $zero -.L80044830: -/* 045430 80044830 24090001 */ li $t1, 1 -.L80044834: -/* 045434 80044834 01203825 */ move $a3, $t1 -/* 045438 80044838 00076D00 */ sll $t5, $a3, 0x14 -/* 04543C 8004483C 000D3C03 */ sra $a3, $t5, 0x10 -/* 045440 80044840 00002825 */ move $a1, $zero -.L80044844: -/* 045444 80044844 11400006 */ beqz $t2, .L80044860 -/* 045448 80044848 3C0D8012 */ lui $t5, 0x8012 -/* 04544C 8004484C 240F0003 */ li $t7, 3 -/* 045450 80044850 01E53023 */ subu $a2, $t7, $a1 -/* 045454 80044854 0006CC00 */ sll $t9, $a2, 0x10 -/* 045458 80044858 10000004 */ b .L8004486C -/* 04545C 8004485C 00193403 */ sra $a2, $t9, 0x10 -.L80044860: -/* 045460 80044860 00053400 */ sll $a2, $a1, 0x10 -/* 045464 80044864 00066403 */ sra $t4, $a2, 0x10 -/* 045468 80044868 01803025 */ move $a2, $t4 -.L8004486C: -/* 04546C 8004486C 01A66821 */ addu $t5, $t5, $a2 -/* 045470 80044870 81ADD58C */ lb $t5, -0x2a74($t5) -/* 045474 80044874 00000000 */ nop -/* 045478 80044878 15A0002D */ bnez $t5, .L80044930 -/* 04547C 8004487C 00000000 */ nop -/* 045480 80044880 820E0002 */ lb $t6, 2($s0) -/* 045484 80044884 00C02025 */ move $a0, $a2 -/* 045488 80044888 10CE0029 */ beq $a2, $t6, .L80044930 -/* 04548C 8004488C 00000000 */ nop -/* 045490 80044890 A7A50052 */ sh $a1, 0x52($sp) -/* 045494 80044894 A7A60050 */ sh $a2, 0x50($sp) -/* 045498 80044898 A7A70048 */ sh $a3, 0x48($sp) -/* 04549C 8004489C A7A8004A */ sh $t0, 0x4a($sp) -/* 0454A0 800448A0 A7A90046 */ sh $t1, 0x46($sp) -/* 0454A4 800448A4 0C006EB2 */ jal func_8001BAC8 -/* 0454A8 800448A8 A7AA004C */ sh $t2, 0x4c($sp) -/* 0454AC 800448AC 87A90046 */ lh $t1, 0x46($sp) -/* 0454B0 800448B0 87A50052 */ lh $a1, 0x52($sp) -/* 0454B4 800448B4 87A60050 */ lh $a2, 0x50($sp) -/* 0454B8 800448B8 87A70048 */ lh $a3, 0x48($sp) -/* 0454BC 800448BC 87A8004A */ lh $t0, 0x4a($sp) -/* 0454C0 800448C0 87AA004C */ lh $t2, 0x4c($sp) -/* 0454C4 800448C4 8C430064 */ lw $v1, 0x64($v0) -/* 0454C8 800448C8 1520000D */ bnez $t1, .L80044900 -/* 0454CC 800448CC 00000000 */ nop -/* 0454D0 800448D0 80620185 */ lb $v0, 0x185($v1) -/* 0454D4 800448D4 00000000 */ nop -/* 0454D8 800448D8 00E2082A */ slt $at, $a3, $v0 -/* 0454DC 800448DC 10200014 */ beqz $at, .L80044930 -/* 0454E0 800448E0 00000000 */ nop -/* 0454E4 800448E4 00023C00 */ sll $a3, $v0, 0x10 -/* 0454E8 800448E8 00064400 */ sll $t0, $a2, 0x10 -/* 0454EC 800448EC 00077C03 */ sra $t7, $a3, 0x10 -/* 0454F0 800448F0 0008CC03 */ sra $t9, $t0, 0x10 -/* 0454F4 800448F4 01E03825 */ move $a3, $t7 -/* 0454F8 800448F8 1000000D */ b .L80044930 -/* 0454FC 800448FC 03204025 */ move $t0, $t9 -.L80044900: -/* 045500 80044900 80620185 */ lb $v0, 0x185($v1) -/* 045504 80044904 00000000 */ nop -/* 045508 80044908 18400009 */ blez $v0, .L80044930 -/* 04550C 8004490C 0047082A */ slt $at, $v0, $a3 -/* 045510 80044910 10200007 */ beqz $at, .L80044930 -/* 045514 80044914 00000000 */ nop -/* 045518 80044918 00023C00 */ sll $a3, $v0, 0x10 -/* 04551C 8004491C 00064400 */ sll $t0, $a2, 0x10 -/* 045520 80044920 0007C403 */ sra $t8, $a3, 0x10 -/* 045524 80044924 00086403 */ sra $t4, $t0, 0x10 -/* 045528 80044928 03003825 */ move $a3, $t8 -/* 04552C 8004492C 01804025 */ move $t0, $t4 -.L80044930: -/* 045530 80044930 24A50001 */ addiu $a1, $a1, 1 -/* 045534 80044934 00056C00 */ sll $t5, $a1, 0x10 -/* 045538 80044938 000D2C03 */ sra $a1, $t5, 0x10 -/* 04553C 8004493C 28A10004 */ slti $at, $a1, 4 -/* 045540 80044940 1420FFC0 */ bnez $at, .L80044844 -/* 045544 80044944 00000000 */ nop -/* 045548 80044948 8FAF0038 */ lw $t7, 0x38($sp) -/* 04554C 8004494C 00000000 */ nop -/* 045550 80044950 81E40002 */ lb $a0, 2($t7) -/* 045554 80044954 A7A8004A */ sh $t0, 0x4a($sp) -/* 045558 80044958 0C011114 */ jal func_80044450 -/* 04555C 8004495C A7A60050 */ sh $a2, 0x50($sp) -/* 045560 80044960 87A60050 */ lh $a2, 0x50($sp) -/* 045564 80044964 87A8004A */ lh $t0, 0x4a($sp) -/* 045568 80044968 10400011 */ beqz $v0, .L800449B0 -/* 04556C 8004496C 00000000 */ nop -/* 045570 80044970 A7A60050 */ sh $a2, 0x50($sp) -/* 045574 80044974 0C019884 */ jal func_80066210 -/* 045578 80044978 A7A8004A */ sh $t0, 0x4a($sp) -/* 04557C 8004497C 87A60050 */ lh $a2, 0x50($sp) -/* 045580 80044980 87A8004A */ lh $t0, 0x4a($sp) -/* 045584 80044984 1440000A */ bnez $v0, .L800449B0 -/* 045588 80044988 00C02025 */ move $a0, $a2 -/* 04558C 8004498C 0C006EB2 */ jal func_8001BAC8 -/* 045590 80044990 A7A8004A */ sh $t0, 0x4a($sp) -/* 045594 80044994 8C430064 */ lw $v1, 0x64($v0) -/* 045598 80044998 87A8004A */ lh $t0, 0x4a($sp) -/* 04559C 8004499C 80790185 */ lb $t9, 0x185($v1) -/* 0455A0 800449A0 00000000 */ nop -/* 0455A4 800449A4 1B200002 */ blez $t9, .L800449B0 -/* 0455A8 800449A8 00000000 */ nop -/* 0455AC 800449AC 00004025 */ move $t0, $zero -.L800449B0: -/* 0455B0 800449B0 0500000C */ bltz $t0, .L800449E4 -/* 0455B4 800449B4 240F0002 */ li $t7, 2 -/* 0455B8 800449B8 82180002 */ lb $t8, 2($s0) -/* 0455BC 800449BC 3C018012 */ lui $at, 0x8012 -/* 0455C0 800449C0 A20801CF */ sb $t0, 0x1cf($s0) -/* 0455C4 800449C4 00280821 */ addu $at, $at, $t0 -/* 0455C8 800449C8 270C0001 */ addiu $t4, $t8, 1 -/* 0455CC 800449CC A02CD58C */ sb $t4, -0x2a74($at) -/* 0455D0 800449D0 240D0004 */ li $t5, 4 -/* 0455D4 800449D4 240E04B0 */ li $t6, 1200 -/* 0455D8 800449D8 A20D01CD */ sb $t5, 0x1cd($s0) -/* 0455DC 800449DC 10000170 */ b .L80044FA0 -/* 0455E0 800449E0 A60E01C6 */ sh $t6, 0x1c6($s0) -.L800449E4: -/* 0455E4 800449E4 241904B0 */ li $t9, 1200 -/* 0455E8 800449E8 A20F01CD */ sb $t7, 0x1cd($s0) -/* 0455EC 800449EC 1000016C */ b .L80044FA0 -/* 0455F0 800449F0 A61901C6 */ sh $t9, 0x1c6($s0) -.L800449F4: -/* 0455F4 800449F4 240C012C */ li $t4, 300 -/* 0455F8 800449F8 A21801CD */ sb $t8, 0x1cd($s0) -/* 0455FC 800449FC 10000168 */ b .L80044FA0 -/* 045600 80044A00 A60C01C6 */ sh $t4, 0x1c6($s0) -/* 045604 80044A04 246DFFFE */ addiu $t5, $v1, -2 -/* 045608 80044A08 2DA10006 */ sltiu $at, $t5, 6 -/* 04560C 80044A0C 10200033 */ beqz $at, .L80044ADC -/* 045610 80044A10 000D6880 */ sll $t5, $t5, 2 -/* 045614 80044A14 3C01800E */ lui $at, 0x800e -/* 045618 80044A18 002D0821 */ addu $at, $at, $t5 -/* 04561C 80044A1C 8C2D6334 */ lw $t5, 0x6334($at) -/* 045620 80044A20 00000000 */ nop -/* 045624 80044A24 01A00008 */ jr $t5 -/* 045628 80044A28 00000000 */ nop -/* 04562C 80044A2C 860E01C6 */ lh $t6, 0x1c6($s0) -/* 045630 80044A30 00000000 */ nop -/* 045634 80044A34 15C00029 */ bnez $t6, .L80044ADC -/* 045638 80044A38 00000000 */ nop -/* 04563C 80044A3C 10000027 */ b .L80044ADC -/* 045640 80044A40 A20501CD */ sb $a1, 0x1cd($s0) -/* 045644 80044A44 820F0172 */ lb $t7, 0x172($s0) -/* 045648 80044A48 24190002 */ li $t9, 2 -/* 04564C 80044A4C 11E00023 */ beqz $t7, .L80044ADC -/* 045650 80044A50 241800B4 */ li $t8, 180 -/* 045654 80044A54 A21901CD */ sb $t9, 0x1cd($s0) -/* 045658 80044A58 10000020 */ b .L80044ADC -/* 04565C 80044A5C A61801C6 */ sh $t8, 0x1c6($s0) -/* 045660 80044A60 820C0173 */ lb $t4, 0x173($s0) -/* 045664 80044A64 3C018012 */ lui $at, 0x8012 -/* 045668 80044A68 11800005 */ beqz $t4, .L80044A80 -/* 04566C 80044A6C 00000000 */ nop -/* 045670 80044A70 860D01C6 */ lh $t5, 0x1c6($s0) -/* 045674 80044A74 00000000 */ nop -/* 045678 80044A78 15A00018 */ bnez $t5, .L80044ADC -/* 04567C 80044A7C 00000000 */ nop -.L80044A80: -/* 045680 80044A80 820E01CF */ lb $t6, 0x1cf($s0) -/* 045684 80044A84 A20501CD */ sb $a1, 0x1cd($s0) -/* 045688 80044A88 002E0821 */ addu $at, $at, $t6 -/* 04568C 80044A8C 10000013 */ b .L80044ADC -/* 045690 80044A90 A020D58C */ sb $zero, -0x2a74($at) -/* 045694 80044A94 820F0002 */ lb $t7, 2($s0) -/* 045698 80044A98 3C198012 */ lui $t9, 0x8012 -/* 04569C 80044A9C 032FC821 */ addu $t9, $t9, $t7 -/* 0456A0 80044AA0 8339D58C */ lb $t9, -0x2a74($t9) -/* 0456A4 80044AA4 00000000 */ nop -/* 0456A8 80044AA8 13200005 */ beqz $t9, .L80044AC0 -/* 0456AC 80044AAC 00000000 */ nop -/* 0456B0 80044AB0 861801C6 */ lh $t8, 0x1c6($s0) -/* 0456B4 80044AB4 00000000 */ nop -/* 0456B8 80044AB8 17000008 */ bnez $t8, .L80044ADC -/* 0456BC 80044ABC 00000000 */ nop -.L80044AC0: -/* 0456C0 80044AC0 10000006 */ b .L80044ADC -/* 0456C4 80044AC4 A20501CD */ sb $a1, 0x1cd($s0) -/* 0456C8 80044AC8 820C0185 */ lb $t4, 0x185($s0) -/* 0456CC 80044ACC 00000000 */ nop -/* 0456D0 80044AD0 15800002 */ bnez $t4, .L80044ADC -/* 0456D4 80044AD4 00000000 */ nop -/* 0456D8 80044AD8 A20501CD */ sb $a1, 0x1cd($s0) -.L80044ADC: -/* 0456DC 80044ADC 920401CE */ lbu $a0, 0x1ce($s0) -/* 0456E0 80044AE0 240100FF */ li $at, 255 -/* 0456E4 80044AE4 10810026 */ beq $a0, $at, .L80044B80 -/* 0456E8 80044AE8 00000000 */ nop -/* 0456EC 80044AEC 82030212 */ lb $v1, 0x212($s0) -/* 0456F0 80044AF0 AFA60074 */ sw $a2, 0x74($sp) -/* 0456F4 80044AF4 0C007485 */ jal func_8001D214 -/* 0456F8 80044AF8 A7A3004E */ sh $v1, 0x4e($sp) -/* 0456FC 80044AFC 8FAB006C */ lw $t3, 0x6c($sp) -/* 045700 80044B00 8C4A003C */ lw $t2, 0x3c($v0) -/* 045704 80044B04 8164000E */ lb $a0, 0xe($t3) -/* 045708 80044B08 8145000E */ lb $a1, 0xe($t2) -/* 04570C 80044B0C 87A3004E */ lh $v1, 0x4e($sp) -/* 045710 80044B10 8FA60074 */ lw $a2, 0x74($sp) -/* 045714 80044B14 0085082A */ slt $at, $a0, $a1 -/* 045718 80044B18 10200008 */ beqz $at, .L80044B3C -/* 04571C 80044B1C 00004825 */ move $t1, $zero -/* 045720 80044B20 00A3082A */ slt $at, $a1, $v1 -/* 045724 80044B24 14200003 */ bnez $at, .L80044B34 -/* 045728 80044B28 0064082A */ slt $at, $v1, $a0 -/* 04572C 80044B2C 10200009 */ beqz $at, .L80044B54 -/* 045730 80044B30 00000000 */ nop -.L80044B34: -/* 045734 80044B34 10000007 */ b .L80044B54 -/* 045738 80044B38 24090001 */ li $t1, 1 -.L80044B3C: -/* 04573C 80044B3C 0083082A */ slt $at, $a0, $v1 -/* 045740 80044B40 14200003 */ bnez $at, .L80044B50 -/* 045744 80044B44 0065082A */ slt $at, $v1, $a1 -/* 045748 80044B48 10200002 */ beqz $at, .L80044B54 -/* 04574C 80044B4C 00000000 */ nop -.L80044B50: -/* 045750 80044B50 24090001 */ li $t1, 1 -.L80044B54: -/* 045754 80044B54 1120000A */ beqz $t1, .L80044B80 -/* 045758 80044B58 240F0006 */ li $t7, 6 -/* 04575C 80044B5C 920D01CD */ lbu $t5, 0x1cd($s0) -/* 045760 80044B60 24010004 */ li $at, 4 -/* 045764 80044B64 15A10005 */ bne $t5, $at, .L80044B7C -/* 045768 80044B68 00000000 */ nop -/* 04576C 80044B6C 820E01CF */ lb $t6, 0x1cf($s0) -/* 045770 80044B70 3C018012 */ lui $at, 0x8012 -/* 045774 80044B74 002E0821 */ addu $at, $at, $t6 -/* 045778 80044B78 A020D58C */ sb $zero, -0x2a74($at) -.L80044B7C: -/* 04577C 80044B7C A20F01CD */ sb $t7, 0x1cd($s0) -.L80044B80: -/* 045780 80044B80 3C028012 */ lui $v0, %hi(D_8011D534) # $v0, 0x8012 -/* 045784 80044B84 8C42D534 */ lw $v0, %lo(D_8011D534)($v0) -/* 045788 80044B88 00000000 */ nop -/* 04578C 80044B8C 2841FFE3 */ slti $at, $v0, -0x1d -/* 045790 80044B90 1420000E */ bnez $at, .L80044BCC -/* 045794 80044B94 2841001E */ slti $at, $v0, 0x1e -/* 045798 80044B98 1020000C */ beqz $at, .L80044BCC -/* 04579C 80044B9C 00000000 */ nop -/* 0457A0 80044BA0 C60A002C */ lwc1 $f10, 0x2c($s0) -/* 0457A4 80044BA4 3C01C024 */ li $at, 0xC0240000 # -2.562500 -/* 0457A8 80044BA8 44814800 */ mtc1 $at, $f9 -/* 0457AC 80044BAC 44804000 */ mtc1 $zero, $f8 -/* 0457B0 80044BB0 46005421 */ cvt.d.s $f16, $f10 -/* 0457B4 80044BB4 4630403C */ c.lt.d $f8, $f16 -/* 0457B8 80044BB8 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 -/* 0457BC 80044BBC 4500001B */ bc1f .L80044C2C -/* 0457C0 80044BC0 34198000 */ li $t9, 32768 -/* 0457C4 80044BC4 10000019 */ b .L80044C2C -/* 0457C8 80044BC8 AC39D528 */ sw $t9, %lo(D_8011D528)($at) -.L80044BCC: -/* 0457CC 80044BCC C604002C */ lwc1 $f4, 0x2c($s0) -/* 0457D0 80044BD0 3C01C010 */ li $at, 0xC0100000 # -2.250000 -/* 0457D4 80044BD4 44819800 */ mtc1 $at, $f19 -/* 0457D8 80044BD8 44809000 */ mtc1 $zero, $f18 -/* 0457DC 80044BDC 460021A1 */ cvt.d.s $f6, $f4 -/* 0457E0 80044BE0 4626903C */ c.lt.d $f18, $f6 -/* 0457E4 80044BE4 44805000 */ mtc1 $zero, $f10 -/* 0457E8 80044BE8 45000005 */ bc1f .L80044C00 -/* 0457EC 80044BEC 240C4000 */ li $t4, 16384 -/* 0457F0 80044BF0 3418C000 */ li $t8, 49152 -/* 0457F4 80044BF4 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 -/* 0457F8 80044BF8 10000003 */ b .L80044C08 -/* 0457FC 80044BFC AC38D528 */ sw $t8, %lo(D_8011D528)($at) -.L80044C00: -/* 045800 80044C00 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 -/* 045804 80044C04 AC2CD528 */ sw $t4, %lo(D_8011D528)($at) -.L80044C08: -/* 045808 80044C08 C608002C */ lwc1 $f8, 0x2c($s0) -/* 04580C 80044C0C 3C01BFF0 */ li $at, 0xBFF00000 # -1.875000 -/* 045810 80044C10 44815800 */ mtc1 $at, $f11 -/* 045814 80044C14 46004421 */ cvt.d.s $f16, $f8 -/* 045818 80044C18 4630503C */ c.lt.d $f10, $f16 -/* 04581C 80044C1C 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 -/* 045820 80044C20 45000002 */ bc1f .L80044C2C -/* 045824 80044C24 340D8000 */ li $t5, 32768 -/* 045828 80044C28 AC2DD528 */ sw $t5, %lo(D_8011D528)($at) -.L80044C2C: -/* 04582C 80044C2C 8E080158 */ lw $t0, 0x158($s0) -/* 045830 80044C30 00000000 */ nop -/* 045834 80044C34 1100003B */ beqz $t0, .L80044D24 -/* 045838 80044C38 00000000 */ nop -/* 04583C 80044C3C C504000C */ lwc1 $f4, 0xc($t0) -/* 045840 80044C40 C4D2000C */ lwc1 $f18, 0xc($a2) -/* 045844 80044C44 C5060014 */ lwc1 $f6, 0x14($t0) -/* 045848 80044C48 46122001 */ sub.s $f0, $f4, $f18 -/* 04584C 80044C4C C4C80014 */ lwc1 $f8, 0x14($a2) -/* 045850 80044C50 46000282 */ mul.s $f10, $f0, $f0 -/* 045854 80044C54 46083381 */ sub.s $f14, $f6, $f8 -/* 045858 80044C58 E7A00064 */ swc1 $f0, 0x64($sp) -/* 04585C 80044C5C E7AE0060 */ swc1 $f14, 0x60($sp) -/* 045860 80044C60 460E7402 */ mul.s $f16, $f14, $f14 -/* 045864 80044C64 0C0326B4 */ jal sqrtf -/* 045868 80044C68 46105300 */ add.s $f12, $f10, $f16 -/* 04586C 80044C6C 44802800 */ mtc1 $zero, $f5 -/* 045870 80044C70 44802000 */ mtc1 $zero, $f4 -/* 045874 80044C74 460004A1 */ cvt.d.s $f18, $f0 -/* 045878 80044C78 4632203C */ c.lt.d $f4, $f18 -/* 04587C 80044C7C C7AE0060 */ lwc1 $f14, 0x60($sp) -/* 045880 80044C80 45000028 */ bc1f .L80044D24 -/* 045884 80044C84 00000000 */ nop -/* 045888 80044C88 C7AC0064 */ lwc1 $f12, 0x64($sp) -/* 04588C 80044C8C 0C01C1D4 */ jal func_80070750 -/* 045890 80044C90 00000000 */ nop -/* 045894 80044C94 24018000 */ li $at, -32768 -/* 045898 80044C98 00417021 */ addu $t6, $v0, $at -/* 04589C 80044C9C 31CFFFFF */ andi $t7, $t6, 0xffff -/* 0458A0 80044CA0 AFAF0058 */ sw $t7, 0x58($sp) -/* 0458A4 80044CA4 861901A0 */ lh $t9, 0x1a0($s0) -/* 0458A8 80044CA8 34018001 */ li $at, 32769 -/* 0458AC 80044CAC 3338FFFF */ andi $t8, $t9, 0xffff -/* 0458B0 80044CB0 01F81823 */ subu $v1, $t7, $t8 -/* 0458B4 80044CB4 0061082A */ slt $at, $v1, $at -/* 0458B8 80044CB8 14200003 */ bnez $at, .L80044CC8 -/* 0458BC 80044CBC 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 0458C0 80044CC0 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 0458C4 80044CC4 00611821 */ addu $v1, $v1, $at -.L80044CC8: -/* 0458C8 80044CC8 28618000 */ slti $at, $v1, -0x8000 -/* 0458CC 80044CCC 10200002 */ beqz $at, .L80044CD8 -/* 0458D0 80044CD0 3401FFFF */ li $at, 65535 -/* 0458D4 80044CD4 00611821 */ addu $v1, $v1, $at -.L80044CD8: -/* 0458D8 80044CD8 28611501 */ slti $at, $v1, 0x1501 -/* 0458DC 80044CDC 10200003 */ beqz $at, .L80044CEC -/* 0458E0 80044CE0 2861EB00 */ slti $at, $v1, -0x1500 -/* 0458E4 80044CE4 1020000F */ beqz $at, .L80044D24 -/* 0458E8 80044CE8 00000000 */ nop -.L80044CEC: -/* 0458EC 80044CEC C608002C */ lwc1 $f8, 0x2c($s0) -/* 0458F0 80044CF0 3C01C010 */ li $at, 0xC0100000 # -2.250000 -/* 0458F4 80044CF4 44813800 */ mtc1 $at, $f7 -/* 0458F8 80044CF8 44803000 */ mtc1 $zero, $f6 -/* 0458FC 80044CFC 460042A1 */ cvt.d.s $f10, $f8 -/* 045900 80044D00 462A303C */ c.lt.d $f6, $f10 -/* 045904 80044D04 3C018012 */ lui $at, 0x8012 -/* 045908 80044D08 45000005 */ bc1f .L80044D20 -/* 04590C 80044D0C 240D4000 */ li $t5, 16384 -/* 045910 80044D10 340CC000 */ li $t4, 49152 -/* 045914 80044D14 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 -/* 045918 80044D18 10000002 */ b .L80044D24 -/* 04591C 80044D1C AC2CD528 */ sw $t4, %lo(D_8011D528)($at) -.L80044D20: -/* 045920 80044D20 AC2DD528 */ sw $t5, %lo(D_8011D528)($at) -.L80044D24: -/* 045924 80044D24 3C01800E */ lui $at, %hi(D_800E6354) # $at, 0x800e -/* 045928 80044D28 C7B0005C */ lwc1 $f16, 0x5c($sp) -/* 04592C 80044D2C C4336350 */ lwc1 $f19, %lo(D_800E6350)($at) -/* 045930 80044D30 C4326354 */ lwc1 $f18, %lo(D_800E6354)($at) -/* 045934 80044D34 46008121 */ cvt.d.s $f4, $f16 -/* 045938 80044D38 4632203C */ c.lt.d $f4, $f18 -/* 04593C 80044D3C 8FAB006C */ lw $t3, 0x6c($sp) -/* 045940 80044D40 E7A40024 */ swc1 $f4, 0x24($sp) -/* 045944 80044D44 45000066 */ bc1f .L80044EE0 -/* 045948 80044D48 E7A50020 */ swc1 $f5, 0x20($sp) -/* 04594C 80044D4C 8E0E0158 */ lw $t6, 0x158($s0) -/* 045950 80044D50 00000000 */ nop -/* 045954 80044D54 15C00063 */ bnez $t6, .L80044EE4 -/* 045958 80044D58 3C014049 */ lui $at, 0x4049 -/* 04595C 80044D5C 920201CD */ lbu $v0, 0x1cd($s0) -/* 045960 80044D60 24010003 */ li $at, 3 -/* 045964 80044D64 1041000D */ beq $v0, $at, .L80044D9C -/* 045968 80044D68 24010004 */ li $at, 4 -/* 04596C 80044D6C 10410012 */ beq $v0, $at, .L80044DB8 -/* 045970 80044D70 00000000 */ nop -/* 045974 80044D74 921901CE */ lbu $t9, 0x1ce($s0) -/* 045978 80044D78 82070002 */ lb $a3, 2($s0) -/* 04597C 80044D7C 24010005 */ li $at, 5 -/* 045980 80044D80 1041002F */ beq $v0, $at, .L80044E40 -/* 045984 80044D84 AFB90028 */ sw $t9, 0x28($sp) -/* 045988 80044D88 24010007 */ li $at, 7 -/* 04598C 80044D8C 10410032 */ beq $v0, $at, .L80044E58 -/* 045990 80044D90 00000000 */ nop -/* 045994 80044D94 10000037 */ b .L80044E74 -/* 045998 80044D98 91640009 */ lbu $a0, 9($t3) -.L80044D9C: -/* 04599C 80044D9C 91640009 */ lbu $a0, 9($t3) -/* 0459A0 80044DA0 920601CE */ lbu $a2, 0x1ce($s0) -/* 0459A4 80044DA4 82070002 */ lb $a3, 2($s0) -/* 0459A8 80044DA8 0C00734A */ jal func_8001CD28 -/* 0459AC 80044DAC 24050001 */ li $a1, 1 -/* 0459B0 80044DB0 10000034 */ b .L80044E84 -/* 0459B4 80044DB4 AFA20058 */ sw $v0, 0x58($sp) -.L80044DB8: -/* 0459B8 80044DB8 820401CF */ lb $a0, 0x1cf($s0) -/* 0459BC 80044DBC 0C006EB2 */ jal func_8001BAC8 -/* 0459C0 80044DC0 00000000 */ nop -/* 0459C4 80044DC4 8C430064 */ lw $v1, 0x64($v0) -/* 0459C8 80044DC8 2401FFFF */ li $at, -1 -/* 0459CC 80044DCC 846F0000 */ lh $t7, ($v1) -/* 0459D0 80044DD0 8FB8006C */ lw $t8, 0x6c($sp) -/* 0459D4 80044DD4 15E1000C */ bne $t7, $at, .L80044E08 -/* 0459D8 80044DD8 00404025 */ move $t0, $v0 -/* 0459DC 80044DDC 8C680154 */ lw $t0, 0x154($v1) -/* 0459E0 80044DE0 93040009 */ lbu $a0, 9($t8) -/* 0459E4 80044DE4 8D0A003C */ lw $t2, 0x3c($t0) -/* 0459E8 80044DE8 920601CE */ lbu $a2, 0x1ce($s0) -/* 0459EC 80044DEC 91450009 */ lbu $a1, 9($t2) -/* 0459F0 80044DF0 82070002 */ lb $a3, 2($s0) -/* 0459F4 80044DF4 34AC0100 */ ori $t4, $a1, 0x100 -/* 0459F8 80044DF8 0C00734A */ jal func_8001CD28 -/* 0459FC 80044DFC 01802825 */ move $a1, $t4 -/* 045A00 80044E00 10000020 */ b .L80044E84 -/* 045A04 80044E04 AFA20058 */ sw $v0, 0x58($sp) -.L80044E08: -/* 045A08 80044E08 C50C000C */ lwc1 $f12, 0xc($t0) -/* 045A0C 80044E0C C50E0010 */ lwc1 $f14, 0x10($t0) -/* 045A10 80044E10 8D060014 */ lw $a2, 0x14($t0) -/* 045A14 80044E14 0C007149 */ jal func_8001C524 -/* 045A18 80044E18 00003825 */ move $a3, $zero -/* 045A1C 80044E1C AFA20058 */ sw $v0, 0x58($sp) -/* 045A20 80044E20 8FAD006C */ lw $t5, 0x6c($sp) -/* 045A24 80044E24 82070002 */ lb $a3, 2($s0) -/* 045A28 80044E28 920601CE */ lbu $a2, 0x1ce($s0) -/* 045A2C 80044E2C 91A40009 */ lbu $a0, 9($t5) -/* 045A30 80044E30 0C00734A */ jal func_8001CD28 -/* 045A34 80044E34 34450100 */ ori $a1, $v0, 0x100 -/* 045A38 80044E38 10000012 */ b .L80044E84 -/* 045A3C 80044E3C AFA20058 */ sw $v0, 0x58($sp) -.L80044E40: -/* 045A40 80044E40 91640009 */ lbu $a0, 9($t3) -/* 045A44 80044E44 8FA60028 */ lw $a2, 0x28($sp) -/* 045A48 80044E48 0C00734A */ jal func_8001CD28 -/* 045A4C 80044E4C 24050001 */ li $a1, 1 -/* 045A50 80044E50 1000000C */ b .L80044E84 -/* 045A54 80044E54 AFA20058 */ sw $v0, 0x58($sp) -.L80044E58: -/* 045A58 80044E58 91640009 */ lbu $a0, 9($t3) -/* 045A5C 80044E5C 8FA60028 */ lw $a2, 0x28($sp) -/* 045A60 80044E60 0C00734A */ jal func_8001CD28 -/* 045A64 80044E64 24E50004 */ addiu $a1, $a3, 4 -/* 045A68 80044E68 10000006 */ b .L80044E84 -/* 045A6C 80044E6C AFA20058 */ sw $v0, 0x58($sp) -/* 045A70 80044E70 91640009 */ lbu $a0, 9($t3) -.L80044E74: -/* 045A74 80044E74 8FA50028 */ lw $a1, 0x28($sp) -/* 045A78 80044E78 0C007312 */ jal func_8001CC48 -/* 045A7C 80044E7C 00E03025 */ move $a2, $a3 -/* 045A80 80044E80 AFA20058 */ sw $v0, 0x58($sp) -.L80044E84: -/* 045A84 80044E84 240100FF */ li $at, 255 -/* 045A88 80044E88 10410008 */ beq $v0, $at, .L80044EAC -/* 045A8C 80044E8C 00000000 */ nop -/* 045A90 80044E90 8FA40058 */ lw $a0, 0x58($sp) -/* 045A94 80044E94 0C007485 */ jal func_8001D214 -/* 045A98 80044E98 00000000 */ nop -/* 045A9C 80044E9C AE020158 */ sw $v0, 0x158($s0) -/* 045AA0 80044EA0 8FAB006C */ lw $t3, 0x6c($sp) -/* 045AA4 80044EA4 1000000F */ b .L80044EE4 -/* 045AA8 80044EA8 3C014049 */ lui $at, 0x4049 -.L80044EAC: -/* 045AAC 80044EAC 920401CE */ lbu $a0, 0x1ce($s0) -/* 045AB0 80044EB0 240100FF */ li $at, 255 -/* 045AB4 80044EB4 10810007 */ beq $a0, $at, .L80044ED4 -/* 045AB8 80044EB8 00000000 */ nop -/* 045ABC 80044EBC 0C007485 */ jal func_8001D214 -/* 045AC0 80044EC0 00000000 */ nop -/* 045AC4 80044EC4 AE020158 */ sw $v0, 0x158($s0) -/* 045AC8 80044EC8 8FAB006C */ lw $t3, 0x6c($sp) -/* 045ACC 80044ECC 10000005 */ b .L80044EE4 -/* 045AD0 80044ED0 3C014049 */ lui $at, 0x4049 -.L80044ED4: -/* 045AD4 80044ED4 AE000158 */ sw $zero, 0x158($s0) -/* 045AD8 80044ED8 8FAB006C */ lw $t3, 0x6c($sp) -/* 045ADC 80044EDC 00000000 */ nop -.L80044EE0: -/* 045AE0 80044EE0 3C014049 */ li $at, 0x40490000 # 3.140625 -.L80044EE4: -/* 045AE4 80044EE4 44813800 */ mtc1 $at, $f7 -/* 045AE8 80044EE8 C7A90020 */ lwc1 $f9, 0x20($sp) -/* 045AEC 80044EEC C7A80024 */ lwc1 $f8, 0x24($sp) -/* 045AF0 80044EF0 44803000 */ mtc1 $zero, $f6 -/* 045AF4 80044EF4 3C014074 */ li $at, 0x40740000 # 3.812500 -/* 045AF8 80044EF8 4626403C */ c.lt.d $f8, $f6 -/* 045AFC 80044EFC 00000000 */ nop -/* 045B00 80044F00 4501000C */ bc1t .L80044F34 -/* 045B04 80044F04 00000000 */ nop -/* 045B08 80044F08 44815800 */ mtc1 $at, $f11 -/* 045B0C 80044F0C 44805000 */ mtc1 $zero, $f10 -/* 045B10 80044F10 00000000 */ nop -/* 045B14 80044F14 4628503C */ c.lt.d $f10, $f8 -/* 045B18 80044F18 00000000 */ nop -/* 045B1C 80044F1C 45000021 */ bc1f .L80044FA4 -/* 045B20 80044F20 00002825 */ move $a1, $zero -/* 045B24 80044F24 8E0E0158 */ lw $t6, 0x158($s0) -/* 045B28 80044F28 00000000 */ nop -/* 045B2C 80044F2C 11C0001D */ beqz $t6, .L80044FA4 -/* 045B30 80044F30 00002825 */ move $a1, $zero -.L80044F34: -/* 045B34 80044F34 91790009 */ lbu $t9, 9($t3) -/* 045B38 80044F38 8E020158 */ lw $v0, 0x158($s0) -/* 045B3C 80044F3C A21901CE */ sb $t9, 0x1ce($s0) -/* 045B40 80044F40 14400002 */ bnez $v0, .L80044F4C -/* 045B44 80044F44 AE020154 */ sw $v0, 0x154($s0) -/* 045B48 80044F48 A20001CD */ sb $zero, 0x1cd($s0) -.L80044F4C: -/* 045B4C 80044F4C 10000014 */ b .L80044FA0 -/* 045B50 80044F50 AE000158 */ sw $zero, 0x158($s0) -/* 045B54 80044F54 8FAF0078 */ lw $t7, 0x78($sp) -/* 045B58 80044F58 24070002 */ li $a3, 2 -/* 045B5C 80044F5C C5EC000C */ lwc1 $f12, 0xc($t7) -/* 045B60 80044F60 C5EE0010 */ lwc1 $f14, 0x10($t7) -/* 045B64 80044F64 8DE60014 */ lw $a2, 0x14($t7) -/* 045B68 80044F68 0C007149 */ jal func_8001C524 -/* 045B6C 80044F6C 00000000 */ nop -/* 045B70 80044F70 240100FF */ li $at, 255 -/* 045B74 80044F74 24050001 */ li $a1, 1 -/* 045B78 80044F78 10410008 */ beq $v0, $at, .L80044F9C -/* 045B7C 80044F7C AFA20058 */ sw $v0, 0x58($sp) -/* 045B80 80044F80 0C007485 */ jal func_8001D214 -/* 045B84 80044F84 00402025 */ move $a0, $v0 -/* 045B88 80044F88 24050001 */ li $a1, 1 -/* 045B8C 80044F8C 241800FF */ li $t8, 255 -/* 045B90 80044F90 AE020154 */ sw $v0, 0x154($s0) -/* 045B94 80044F94 A20501CD */ sb $a1, 0x1cd($s0) -/* 045B98 80044F98 A21801CE */ sb $t8, 0x1ce($s0) -.L80044F9C: -/* 045B9C 80044F9C A20501C9 */ sb $a1, 0x1c9($s0) -.L80044FA0: -/* 045BA0 80044FA0 00002825 */ move $a1, $zero -.L80044FA4: -/* 045BA4 80044FA4 820C0002 */ lb $t4, 2($s0) -/* 045BA8 80044FA8 00A02025 */ move $a0, $a1 -/* 045BAC 80044FAC 10AC0054 */ beq $a1, $t4, .L80045100 -/* 045BB0 80044FB0 00000000 */ nop -/* 045BB4 80044FB4 0C006EB2 */ jal func_8001BAC8 -/* 045BB8 80044FB8 A7A50052 */ sh $a1, 0x52($sp) -/* 045BBC 80044FBC 8C430064 */ lw $v1, 0x64($v0) -/* 045BC0 80044FC0 87A50052 */ lh $a1, 0x52($sp) -/* 045BC4 80044FC4 846D0000 */ lh $t5, ($v1) -/* 045BC8 80044FC8 2401FFFF */ li $at, -1 -/* 045BCC 80044FCC 11A10005 */ beq $t5, $at, .L80044FE4 -/* 045BD0 80044FD0 00404025 */ move $t0, $v0 -/* 045BD4 80044FD4 806E0212 */ lb $t6, 0x212($v1) -/* 045BD8 80044FD8 3C018012 */ lui $at, 0x8012 -/* 045BDC 80044FDC 00250821 */ addu $at, $at, $a1 -/* 045BE0 80044FE0 A02ED5B4 */ sb $t6, -0x2a4c($at) -.L80044FE4: -/* 045BE4 80044FE4 3C0F8012 */ lui $t7, %hi(D_8011D5B4) # $t7, 0x8012 -/* 045BE8 80044FE8 82190002 */ lb $t9, 2($s0) -/* 045BEC 80044FEC 25EFD5B4 */ addiu $t7, %lo(D_8011D5B4) # addiu $t7, $t7, -0x2a4c -/* 045BF0 80044FF0 00AF6821 */ addu $t5, $a1, $t7 -/* 045BF4 80044FF4 032FC021 */ addu $t8, $t9, $t7 -/* 045BF8 80044FF8 830C0000 */ lb $t4, ($t8) -/* 045BFC 80044FFC 81AE0000 */ lb $t6, ($t5) -/* 045C00 80045000 8FA20078 */ lw $v0, 0x78($sp) -/* 045C04 80045004 158E003E */ bne $t4, $t6, .L80045100 -/* 045C08 80045008 00000000 */ nop -/* 045C0C 8004500C C450000C */ lwc1 $f16, 0xc($v0) -/* 045C10 80045010 C504000C */ lwc1 $f4, 0xc($t0) -/* 045C14 80045014 C4520014 */ lwc1 $f18, 0x14($v0) -/* 045C18 80045018 46048001 */ sub.s $f0, $f16, $f4 -/* 045C1C 8004501C C5060014 */ lwc1 $f6, 0x14($t0) -/* 045C20 80045020 46000282 */ mul.s $f10, $f0, $f0 -/* 045C24 80045024 46069381 */ sub.s $f14, $f18, $f6 -/* 045C28 80045028 E7A00064 */ swc1 $f0, 0x64($sp) -/* 045C2C 8004502C E7AE0060 */ swc1 $f14, 0x60($sp) -/* 045C30 80045030 460E7202 */ mul.s $f8, $f14, $f14 -/* 045C34 80045034 A7A50052 */ sh $a1, 0x52($sp) -/* 045C38 80045038 0C0326B4 */ jal sqrtf -/* 045C3C 8004503C 46085300 */ add.s $f12, $f10, $f8 -/* 045C40 80045040 3C014089 */ li $at, 0x40890000 # 4.281250 -/* 045C44 80045044 44812800 */ mtc1 $at, $f5 -/* 045C48 80045048 44802000 */ mtc1 $zero, $f4 -/* 045C4C 8004504C 46000421 */ cvt.d.s $f16, $f0 -/* 045C50 80045050 4624803C */ c.lt.d $f16, $f4 -/* 045C54 80045054 87A50052 */ lh $a1, 0x52($sp) -/* 045C58 80045058 C7AE0060 */ lwc1 $f14, 0x60($sp) -/* 045C5C 8004505C 45000028 */ bc1f .L80045100 -/* 045C60 80045060 00000000 */ nop -/* 045C64 80045064 C7AC0064 */ lwc1 $f12, 0x64($sp) -/* 045C68 80045068 0C01C1D4 */ jal func_80070750 -/* 045C6C 8004506C A7A50052 */ sh $a1, 0x52($sp) -/* 045C70 80045070 8FB90078 */ lw $t9, 0x78($sp) -/* 045C74 80045074 AFA20058 */ sw $v0, 0x58($sp) -/* 045C78 80045078 87380000 */ lh $t8, ($t9) -/* 045C7C 8004507C 34018001 */ li $at, 32769 -/* 045C80 80045080 330FFFFF */ andi $t7, $t8, 0xffff -/* 045C84 80045084 004F6823 */ subu $t5, $v0, $t7 -/* 045C88 80045088 87A50052 */ lh $a1, 0x52($sp) -/* 045C8C 8004508C 01A1082A */ slt $at, $t5, $at -/* 045C90 80045090 14200004 */ bnez $at, .L800450A4 -/* 045C94 80045094 AFAD0058 */ sw $t5, 0x58($sp) -/* 045C98 80045098 3C0EFFFF */ lui $t6, (0xFFFF0001 >> 16) # lui $t6, 0xffff -/* 045C9C 8004509C 35CE0001 */ ori $t6, (0xFFFF0001 & 0xFFFF) # ori $t6, $t6, 1 -/* 045CA0 800450A0 AFAE0058 */ sw $t6, 0x58($sp) -.L800450A4: -/* 045CA4 800450A4 8FB90058 */ lw $t9, 0x58($sp) -/* 045CA8 800450A8 3418FFFF */ li $t8, 65535 -/* 045CAC 800450AC 2B218000 */ slti $at, $t9, -0x8000 -/* 045CB0 800450B0 10200002 */ beqz $at, .L800450BC -/* 045CB4 800450B4 24030800 */ li $v1, 2048 -/* 045CB8 800450B8 AFB80058 */ sw $t8, 0x58($sp) -.L800450BC: -/* 045CBC 800450BC 820F0174 */ lb $t7, 0x174($s0) -/* 045CC0 800450C0 24010001 */ li $at, 1 -/* 045CC4 800450C4 15E10003 */ bne $t7, $at, .L800450D4 -/* 045CC8 800450C8 00000000 */ nop -/* 045CCC 800450CC 10000001 */ b .L800450D4 -/* 045CD0 800450D0 24031000 */ li $v1, 4096 -.L800450D4: -/* 045CD4 800450D4 8FAC0058 */ lw $t4, 0x58($sp) -/* 045CD8 800450D8 00036823 */ negu $t5, $v1 -/* 045CDC 800450DC 01AC082A */ slt $at, $t5, $t4 -/* 045CE0 800450E0 10200007 */ beqz $at, .L80045100 -/* 045CE4 800450E4 0183082A */ slt $at, $t4, $v1 -/* 045CE8 800450E8 10200005 */ beqz $at, .L80045100 -/* 045CEC 800450EC 3C0E8012 */ lui $t6, %hi(D_8011D530) # $t6, 0x8012 -/* 045CF0 800450F0 8DCED530 */ lw $t6, %lo(D_8011D530)($t6) -/* 045CF4 800450F4 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 -/* 045CF8 800450F8 35D92000 */ ori $t9, $t6, 0x2000 -/* 045CFC 800450FC AC39D530 */ sw $t9, %lo(D_8011D530)($at) -.L80045100: -/* 045D00 80045100 24A50001 */ addiu $a1, $a1, 1 -/* 045D04 80045104 0005C400 */ sll $t8, $a1, 0x10 -/* 045D08 80045108 00182C03 */ sra $a1, $t8, 0x10 -/* 045D0C 8004510C 28A10004 */ slti $at, $a1, 4 -/* 045D10 80045110 1420FFA4 */ bnez $at, .L80044FA4 -/* 045D14 80045114 00000000 */ nop -/* 045D18 80045118 8FBF001C */ lw $ra, 0x1c($sp) -.L8004511C: -/* 045D1C 8004511C 8FB00018 */ lw $s0, 0x18($sp) -/* 045D20 80045120 03E00008 */ jr $ra -/* 045D24 80045124 27BD0078 */ addiu $sp, $sp, 0x78 - -glabel func_80045128 -/* 045D28 80045128 8C8E0000 */ lw $t6, ($a0) -/* 045D2C 8004512C 3C018012 */ lui $at, %hi(D_8011D588) # $at, 0x8012 -/* 045D30 80045130 8DC20064 */ lw $v0, 0x64($t6) -/* 045D34 80045134 00801825 */ move $v1, $a0 -/* 045D38 80045138 804F0193 */ lb $t7, 0x193($v0) -/* 045D3C 8004513C 3C198012 */ lui $t9, %hi(D_8011D588) # $t9, 0x8012 -/* 045D40 80045140 A02FD588 */ sb $t7, %lo(D_8011D588)($at) -/* 045D44 80045144 805801CF */ lb $t8, 0x1cf($v0) -/* 045D48 80045148 3C0F8012 */ lui $t7, %hi(D_8011D589) # $t7, 0x8012 -/* 045D4C 8004514C 13000005 */ beqz $t8, .L80045164 -/* 045D50 80045150 3C0A8012 */ lui $t2, %hi(D_8011D588) # $t2, 0x8012 -/* 045D54 80045154 8339D588 */ lb $t9, %lo(D_8011D588)($t9) -/* 045D58 80045158 3C018012 */ lui $at, %hi(D_8011D588) # $at, 0x8012 -/* 045D5C 8004515C 37280040 */ ori $t0, $t9, 0x40 -/* 045D60 80045160 A028D588 */ sb $t0, %lo(D_8011D588)($at) -.L80045164: -/* 045D64 80045164 8C490144 */ lw $t1, 0x144($v0) -/* 045D68 80045168 3C088012 */ lui $t0, %hi(D_8011D589) # $t0, 0x8012 -/* 045D6C 8004516C 11200005 */ beqz $t1, .L80045184 -/* 045D70 80045170 00000000 */ nop -/* 045D74 80045174 814AD588 */ lb $t2, %lo(D_8011D588)($t2) -/* 045D78 80045178 3C018012 */ lui $at, %hi(D_8011D588) # $at, 0x8012 -/* 045D7C 8004517C 354B0080 */ ori $t3, $t2, 0x80 -/* 045D80 80045180 A02BD588 */ sb $t3, %lo(D_8011D588)($at) -.L80045184: -/* 045D84 80045184 8C6C0004 */ lw $t4, 4($v1) -/* 045D88 80045188 3C018012 */ lui $at, %hi(D_8011D589) # $at, 0x8012 -/* 045D8C 8004518C 8D820064 */ lw $v0, 0x64($t4) -/* 045D90 80045190 00000000 */ nop -/* 045D94 80045194 804D0193 */ lb $t5, 0x193($v0) -/* 045D98 80045198 00000000 */ nop -/* 045D9C 8004519C A02DD589 */ sb $t5, %lo(D_8011D589)($at) -/* 045DA0 800451A0 804E01CF */ lb $t6, 0x1cf($v0) -/* 045DA4 800451A4 3C0D8012 */ lui $t5, %hi(D_8011D58A) # $t5, 0x8012 -/* 045DA8 800451A8 11C00005 */ beqz $t6, .L800451C0 -/* 045DAC 800451AC 00000000 */ nop -/* 045DB0 800451B0 81EFD589 */ lb $t7, %lo(D_8011D589)($t7) -/* 045DB4 800451B4 3C018012 */ lui $at, %hi(D_8011D589) # $at, 0x8012 -/* 045DB8 800451B8 35F80040 */ ori $t8, $t7, 0x40 -/* 045DBC 800451BC A038D589 */ sb $t8, %lo(D_8011D589)($at) -.L800451C0: -/* 045DC0 800451C0 8C590144 */ lw $t9, 0x144($v0) -/* 045DC4 800451C4 3C188012 */ lui $t8, %hi(D_8011D58A) # $t8, 0x8012 -/* 045DC8 800451C8 13200005 */ beqz $t9, .L800451E0 -/* 045DCC 800451CC 00000000 */ nop -/* 045DD0 800451D0 8108D589 */ lb $t0, %lo(D_8011D589)($t0) -/* 045DD4 800451D4 3C018012 */ lui $at, %hi(D_8011D589) # $at, 0x8012 -/* 045DD8 800451D8 35090080 */ ori $t1, $t0, 0x80 -/* 045DDC 800451DC A029D589 */ sb $t1, %lo(D_8011D589)($at) -.L800451E0: -/* 045DE0 800451E0 8C6A0008 */ lw $t2, 8($v1) -/* 045DE4 800451E4 3C018012 */ lui $at, %hi(D_8011D58A) # $at, 0x8012 -/* 045DE8 800451E8 8D420064 */ lw $v0, 0x64($t2) -/* 045DEC 800451EC 00000000 */ nop -/* 045DF0 800451F0 804B0193 */ lb $t3, 0x193($v0) -/* 045DF4 800451F4 00000000 */ nop -/* 045DF8 800451F8 A02BD58A */ sb $t3, %lo(D_8011D58A)($at) -/* 045DFC 800451FC 804C01CF */ lb $t4, 0x1cf($v0) -/* 045E00 80045200 3C0B8012 */ lui $t3, %hi(D_8011D58B) # $t3, 0x8012 -/* 045E04 80045204 11800005 */ beqz $t4, .L8004521C -/* 045E08 80045208 00000000 */ nop -/* 045E0C 8004520C 81ADD58A */ lb $t5, %lo(D_8011D58A)($t5) -/* 045E10 80045210 3C018012 */ lui $at, %hi(D_8011D58A) # $at, 0x8012 -/* 045E14 80045214 35AE0040 */ ori $t6, $t5, 0x40 -/* 045E18 80045218 A02ED58A */ sb $t6, %lo(D_8011D58A)($at) -.L8004521C: -/* 045E1C 8004521C 8C4F0144 */ lw $t7, 0x144($v0) -/* 045E20 80045220 3C0E8012 */ lui $t6, %hi(D_8011D58B) # $t6, 0x8012 -/* 045E24 80045224 11E00005 */ beqz $t7, .L8004523C -/* 045E28 80045228 00000000 */ nop -/* 045E2C 8004522C 8318D58A */ lb $t8, %lo(D_8011D58A)($t8) -/* 045E30 80045230 3C018012 */ lui $at, %hi(D_8011D58A) # $at, 0x8012 -/* 045E34 80045234 37190080 */ ori $t9, $t8, 0x80 -/* 045E38 80045238 A039D58A */ sb $t9, %lo(D_8011D58A)($at) -.L8004523C: -/* 045E3C 8004523C 8C68000C */ lw $t0, 0xc($v1) -/* 045E40 80045240 3C018012 */ lui $at, %hi(D_8011D58B) # $at, 0x8012 -/* 045E44 80045244 8D020064 */ lw $v0, 0x64($t0) -/* 045E48 80045248 00000000 */ nop -/* 045E4C 8004524C 80490193 */ lb $t1, 0x193($v0) -/* 045E50 80045250 00000000 */ nop -/* 045E54 80045254 A029D58B */ sb $t1, %lo(D_8011D58B)($at) -/* 045E58 80045258 804A01CF */ lb $t2, 0x1cf($v0) -/* 045E5C 8004525C 00000000 */ nop -/* 045E60 80045260 11400005 */ beqz $t2, .L80045278 -/* 045E64 80045264 00000000 */ nop -/* 045E68 80045268 816BD58B */ lb $t3, %lo(D_8011D58B)($t3) -/* 045E6C 8004526C 3C018012 */ lui $at, %hi(D_8011D58B) # $at, 0x8012 -/* 045E70 80045270 356C0040 */ ori $t4, $t3, 0x40 -/* 045E74 80045274 A02CD58B */ sb $t4, %lo(D_8011D58B)($at) -.L80045278: -/* 045E78 80045278 8C4D0144 */ lw $t5, 0x144($v0) -/* 045E7C 8004527C 00000000 */ nop -/* 045E80 80045280 11A00005 */ beqz $t5, .L80045298 -/* 045E84 80045284 00000000 */ nop -/* 045E88 80045288 81CED58B */ lb $t6, %lo(D_8011D58B)($t6) -/* 045E8C 8004528C 3C018012 */ lui $at, %hi(D_8011D58B) # $at, 0x8012 -/* 045E90 80045290 35CF0080 */ ori $t7, $t6, 0x80 -/* 045E94 80045294 A02FD58B */ sb $t7, %lo(D_8011D58B)($at) -.L80045298: -/* 045E98 80045298 03E00008 */ jr $ra -/* 045E9C 8004529C 00000000 */ nop - -glabel func_800452A0 -/* 045EA0 800452A0 27BDFF48 */ addiu $sp, $sp, -0xb8 -/* 045EA4 800452A4 3C018012 */ lui $at, %hi(D_8011D52C) # $at, 0x8012 -/* 045EA8 800452A8 AC20D52C */ sw $zero, %lo(D_8011D52C)($at) -/* 045EAC 800452AC 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 -/* 045EB0 800452B0 AC20D530 */ sw $zero, %lo(D_8011D530)($at) -/* 045EB4 800452B4 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 -/* 045EB8 800452B8 340E8000 */ li $t6, 32768 -/* 045EBC 800452BC AC2ED528 */ sw $t6, %lo(D_8011D528)($at) -/* 045EC0 800452C0 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 045EC4 800452C4 AFB60048 */ sw $s6, 0x48($sp) -/* 045EC8 800452C8 AC20D534 */ sw $zero, %lo(D_8011D534)($at) -/* 045ECC 800452CC 0080B025 */ move $s6, $a0 -/* 045ED0 800452D0 AFBF0054 */ sw $ra, 0x54($sp) -/* 045ED4 800452D4 AFB50044 */ sw $s5, 0x44($sp) -/* 045ED8 800452D8 AFB00030 */ sw $s0, 0x30($sp) -/* 045EDC 800452DC 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 -/* 045EE0 800452E0 00C08025 */ move $s0, $a2 -/* 045EE4 800452E4 00A0A825 */ move $s5, $a1 -/* 045EE8 800452E8 AFBE0050 */ sw $fp, 0x50($sp) -/* 045EEC 800452EC AFB7004C */ sw $s7, 0x4c($sp) -/* 045EF0 800452F0 AFB40040 */ sw $s4, 0x40($sp) -/* 045EF4 800452F4 AFB3003C */ sw $s3, 0x3c($sp) -/* 045EF8 800452F8 AFB20038 */ sw $s2, 0x38($sp) -/* 045EFC 800452FC AFB10034 */ sw $s1, 0x34($sp) -/* 045F00 80045300 E7B90028 */ swc1 $f25, 0x28($sp) -/* 045F04 80045304 E7B8002C */ swc1 $f24, 0x2c($sp) -/* 045F08 80045308 E7B70020 */ swc1 $f23, 0x20($sp) -/* 045F0C 8004530C E7B60024 */ swc1 $f22, 0x24($sp) -/* 045F10 80045310 E7B50018 */ swc1 $f21, 0x18($sp) -/* 045F14 80045314 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 045F18 80045318 AC20D538 */ sw $zero, %lo(D_8011D538)($at) -/* 045F1C 8004531C 0C006E9D */ jal func_8001BA74 -/* 045F20 80045320 27A4009C */ addiu $a0, $sp, 0x9c -/* 045F24 80045324 8FAF009C */ lw $t7, 0x9c($sp) -/* 045F28 80045328 24010004 */ li $at, 4 -/* 045F2C 8004532C 15E10235 */ bne $t7, $at, .L80045C04 -/* 045F30 80045330 8FBF0054 */ lw $ra, 0x54($sp) -/* 045F34 80045334 0C01AF6C */ jal func_8006BDB0 -/* 045F38 80045338 00000000 */ nop -/* 045F3C 8004533C 2458002A */ addiu $t8, $v0, 0x2a -/* 045F40 80045340 AFB80074 */ sw $t8, 0x74($sp) -/* 045F44 80045344 82B901E2 */ lb $t9, 0x1e2($s5) -/* 045F48 80045348 00000000 */ nop -/* 045F4C 8004534C 1320000E */ beqz $t9, .L80045388 -/* 045F50 80045350 00000000 */ nop -/* 045F54 80045354 86A801C6 */ lh $t0, 0x1c6($s5) -/* 045F58 80045358 240B0003 */ li $t3, 3 -/* 045F5C 8004535C 01104821 */ addu $t1, $t0, $s0 -/* 045F60 80045360 A6A901C6 */ sh $t1, 0x1c6($s5) -/* 045F64 80045364 86AA01C6 */ lh $t2, 0x1c6($s5) -/* 045F68 80045368 00000000 */ nop -/* 045F6C 8004536C 2941003D */ slti $at, $t2, 0x3d -/* 045F70 80045370 14200006 */ bnez $at, .L8004538C -/* 045F74 80045374 00000000 */ nop -/* 045F78 80045378 A6A001C6 */ sh $zero, 0x1c6($s5) -/* 045F7C 8004537C A2A001CD */ sb $zero, 0x1cd($s5) -/* 045F80 80045380 10000002 */ b .L8004538C -/* 045F84 80045384 A2AB01CE */ sb $t3, 0x1ce($s5) -.L80045388: -/* 045F88 80045388 A6A001C6 */ sh $zero, 0x1c6($s5) -.L8004538C: -/* 045F8C 8004538C 92A301CD */ lbu $v1, 0x1cd($s5) -/* 045F90 80045390 00000000 */ nop -/* 045F94 80045394 14600144 */ bnez $v1, .L800458A8 -/* 045F98 80045398 00000000 */ nop -/* 045F9C 8004539C 8FBE0080 */ lw $fp, 0x80($sp) -/* 045FA0 800453A0 24170003 */ li $s7, 3 -.L800453A4: -/* 045FA4 800453A4 3C058012 */ lui $a1, %hi(D_8011D58B) # $a1, 0x8012 -/* 045FA8 800453A8 2411FFFF */ li $s1, -1 -/* 045FAC 800453AC 00008025 */ move $s0, $zero -/* 045FB0 800453B0 00009025 */ move $s2, $zero -/* 045FB4 800453B4 24A5D58B */ addiu $a1, %lo(D_8011D58B) # addiu $a1, $a1, -0x2a75 -/* 045FB8 800453B8 02E02025 */ move $a0, $s7 -/* 045FBC 800453BC 00009825 */ move $s3, $zero -.L800453C0: -/* 045FC0 800453C0 80A20000 */ lb $v0, ($a1) -/* 045FC4 800453C4 00000000 */ nop -/* 045FC8 800453C8 304C000F */ andi $t4, $v0, 0xf -/* 045FCC 800453CC 01970019 */ multu $t4, $s7 -/* 045FD0 800453D0 304F0040 */ andi $t7, $v0, 0x40 -/* 045FD4 800453D4 30480080 */ andi $t0, $v0, 0x80 -/* 045FD8 800453D8 00001812 */ mflo $v1 -/* 045FDC 800453DC 00036E00 */ sll $t5, $v1, 0x18 -/* 045FE0 800453E0 000D7603 */ sra $t6, $t5, 0x18 -/* 045FE4 800453E4 11E00005 */ beqz $t7, .L800453FC -/* 045FE8 800453E8 01C01825 */ move $v1, $t6 -/* 045FEC 800453EC 25C30002 */ addiu $v1, $t6, 2 -/* 045FF0 800453F0 0003C600 */ sll $t8, $v1, 0x18 -/* 045FF4 800453F4 10000006 */ b .L80045410 -/* 045FF8 800453F8 00181E03 */ sra $v1, $t8, 0x18 -.L800453FC: -/* 045FFC 800453FC 11000005 */ beqz $t0, .L80045414 -/* 046000 80045400 0243082A */ slt $at, $s2, $v1 -/* 046004 80045404 24630001 */ addiu $v1, $v1, 1 -/* 046008 80045408 00034E00 */ sll $t1, $v1, 0x18 -/* 04600C 8004540C 00091E03 */ sra $v1, $t1, 0x18 -.L80045410: -/* 046010 80045410 0243082A */ slt $at, $s2, $v1 -.L80045414: -/* 046014 80045414 10200007 */ beqz $at, .L80045434 -/* 046018 80045418 00000000 */ nop -/* 04601C 8004541C 00039600 */ sll $s2, $v1, 0x18 -/* 046020 80045420 00048600 */ sll $s0, $a0, 0x18 -/* 046024 80045424 00125E03 */ sra $t3, $s2, 0x18 -/* 046028 80045428 00106603 */ sra $t4, $s0, 0x18 -/* 04602C 8004542C 01609025 */ move $s2, $t3 -/* 046030 80045430 01808025 */ move $s0, $t4 -.L80045434: -/* 046034 80045434 2484FFFF */ addiu $a0, $a0, -1 -/* 046038 80045438 0481FFE1 */ bgez $a0, .L800453C0 -/* 04603C 8004543C 24A5FFFF */ addiu $a1, $a1, -1 -/* 046040 80045440 92A201CE */ lbu $v0, 0x1ce($s5) -/* 046044 80045444 24180008 */ li $t8, 8 -/* 046048 80045448 304D0040 */ andi $t5, $v0, 0x40 -/* 04604C 8004544C 11A00008 */ beqz $t5, .L80045470 -/* 046050 80045450 30590080 */ andi $t9, $v0, 0x80 -/* 046054 80045454 3051000F */ andi $s1, $v0, 0xf -/* 046058 80045458 00117600 */ sll $t6, $s1, 0x18 -/* 04605C 8004545C 000E8E03 */ sra $s1, $t6, 0x18 -/* 046060 80045460 A2B801CD */ sb $t8, 0x1cd($s5) -/* 046064 80045464 300200FF */ andi $v0, $zero, 0xff -/* 046068 80045468 A2A001CE */ sb $zero, 0x1ce($s5) -/* 04606C 8004546C 30590080 */ andi $t9, $v0, 0x80 -.L80045470: -/* 046070 80045470 1320005B */ beqz $t9, .L800455E0 -/* 046074 80045474 00000000 */ nop -/* 046078 80045478 8FA80074 */ lw $t0, 0x74($sp) -/* 04607C 8004547C 00000000 */ nop -/* 046080 80045480 81040006 */ lb $a0, 6($t0) -/* 046084 80045484 0C011114 */ jal func_80044450 -/* 046088 80045488 00000000 */ nop -/* 04608C 8004548C 10400004 */ beqz $v0, .L800454A0 -/* 046090 80045490 8FA90074 */ lw $t1, 0x74($sp) -/* 046094 80045494 1000000D */ b .L800454CC -/* 046098 80045498 24120002 */ li $s2, 2 -/* 04609C 8004549C 8FA90074 */ lw $t1, 0x74($sp) -.L800454A0: -/* 0460A0 800454A0 24120001 */ li $s2, 1 -/* 0460A4 800454A4 81240002 */ lb $a0, 2($t1) -/* 0460A8 800454A8 0C011114 */ jal func_80044450 -/* 0460AC 800454AC 00000000 */ nop -/* 0460B0 800454B0 10400007 */ beqz $v0, .L800454D0 -/* 0460B4 800454B4 24010002 */ li $at, 2 -/* 0460B8 800454B8 0C019884 */ jal func_80066210 -/* 0460BC 800454BC 00000000 */ nop -/* 0460C0 800454C0 14400003 */ bnez $v0, .L800454D0 -/* 0460C4 800454C4 24010002 */ li $at, 2 -/* 0460C8 800454C8 00008025 */ move $s0, $zero -.L800454CC: -/* 0460CC 800454CC 24010002 */ li $at, 2 -.L800454D0: -/* 0460D0 800454D0 1641002E */ bne $s2, $at, .L8004558C -/* 0460D4 800454D4 24010001 */ li $at, 1 -/* 0460D8 800454D8 82A20002 */ lb $v0, 2($s5) -/* 0460DC 800454DC 24010001 */ li $at, 1 -/* 0460E0 800454E0 10400007 */ beqz $v0, .L80045500 -/* 0460E4 800454E4 3C0A8012 */ lui $t2, %hi(D_8011D588) # $t2, 0x8012 -/* 0460E8 800454E8 814AD588 */ lb $t2, %lo(D_8011D588)($t2) -/* 0460EC 800454EC 00000000 */ nop -/* 0460F0 800454F0 314B0040 */ andi $t3, $t2, 0x40 -/* 0460F4 800454F4 11600002 */ beqz $t3, .L80045500 -/* 0460F8 800454F8 00000000 */ nop -/* 0460FC 800454FC 00008825 */ move $s1, $zero -.L80045500: -/* 046100 80045500 10410007 */ beq $v0, $at, .L80045520 -/* 046104 80045504 3C0C8012 */ lui $t4, %hi(D_8011D589) # $t4, 0x8012 -/* 046108 80045508 818CD589 */ lb $t4, %lo(D_8011D589)($t4) -/* 04610C 8004550C 00000000 */ nop -/* 046110 80045510 318D0040 */ andi $t5, $t4, 0x40 -/* 046114 80045514 11A00003 */ beqz $t5, .L80045524 -/* 046118 80045518 24010002 */ li $at, 2 -/* 04611C 8004551C 24110001 */ li $s1, 1 -.L80045520: -/* 046120 80045520 24010002 */ li $at, 2 -.L80045524: -/* 046124 80045524 10410007 */ beq $v0, $at, .L80045544 -/* 046128 80045528 3C0E8012 */ lui $t6, %hi(D_8011D58A) # $t6, 0x8012 -/* 04612C 8004552C 81CED58A */ lb $t6, %lo(D_8011D58A)($t6) -/* 046130 80045530 00000000 */ nop -/* 046134 80045534 31CF0040 */ andi $t7, $t6, 0x40 -/* 046138 80045538 11E00003 */ beqz $t7, .L80045548 -/* 04613C 8004553C 24010003 */ li $at, 3 -/* 046140 80045540 24110002 */ li $s1, 2 -.L80045544: -/* 046144 80045544 24010003 */ li $at, 3 -.L80045548: -/* 046148 80045548 10410009 */ beq $v0, $at, .L80045570 -/* 04614C 8004554C 3C188012 */ lui $t8, %hi(D_8011D58B) # $t8, 0x8012 -/* 046150 80045550 8318D58B */ lb $t8, %lo(D_8011D58B)($t8) -/* 046154 80045554 00000000 */ nop -/* 046158 80045558 33190040 */ andi $t9, $t8, 0x40 -/* 04615C 8004555C 13200005 */ beqz $t9, .L80045574 -/* 046160 80045560 2401FFFF */ li $at, -1 -/* 046164 80045564 00178E00 */ sll $s1, $s7, 0x18 -/* 046168 80045568 00114603 */ sra $t0, $s1, 0x18 -/* 04616C 8004556C 01008825 */ move $s1, $t0 -.L80045570: -/* 046170 80045570 2401FFFF */ li $at, -1 -.L80045574: -/* 046174 80045574 16210003 */ bne $s1, $at, .L80045584 -/* 046178 80045578 24090007 */ li $t1, 7 -/* 04617C 8004557C 10000002 */ b .L80045588 -/* 046180 80045580 24120001 */ li $s2, 1 -.L80045584: -/* 046184 80045584 A2A901CD */ sb $t1, 0x1cd($s5) -.L80045588: -/* 046188 80045588 24010001 */ li $at, 1 -.L8004558C: -/* 04618C 8004558C 16410013 */ bne $s2, $at, .L800455DC -/* 046190 80045590 00000000 */ nop -/* 046194 80045594 82AA0173 */ lb $t2, 0x173($s5) -/* 046198 80045598 24180005 */ li $t8, 5 -/* 04619C 8004559C 1140000E */ beqz $t2, .L800455D8 -/* 0461A0 800455A0 00000000 */ nop -/* 0461A4 800455A4 82A20002 */ lb $v0, 2($s5) -/* 0461A8 800455A8 240B0006 */ li $t3, 6 -/* 0461AC 800455AC 12020005 */ beq $s0, $v0, .L800455C4 -/* 0461B0 800455B0 A2AB01CD */ sb $t3, 0x1cd($s5) -/* 0461B4 800455B4 00108E00 */ sll $s1, $s0, 0x18 -/* 0461B8 800455B8 00116603 */ sra $t4, $s1, 0x18 -/* 0461BC 800455BC 10000007 */ b .L800455DC -/* 0461C0 800455C0 01808825 */ move $s1, $t4 -.L800455C4: -/* 0461C4 800455C4 24510001 */ addiu $s1, $v0, 1 -/* 0461C8 800455C8 322D0003 */ andi $t5, $s1, 3 -/* 0461CC 800455CC 000D7600 */ sll $t6, $t5, 0x18 -/* 0461D0 800455D0 10000002 */ b .L800455DC -/* 0461D4 800455D4 000E8E03 */ sra $s1, $t6, 0x18 -.L800455D8: -/* 0461D8 800455D8 A2B801CD */ sb $t8, 0x1cd($s5) -.L800455DC: -/* 0461DC 800455DC A2A001CE */ sb $zero, 0x1ce($s5) -.L800455E0: -/* 0461E0 800455E0 8EB90144 */ lw $t9, 0x144($s5) -/* 0461E4 800455E4 24080002 */ li $t0, 2 -/* 0461E8 800455E8 13200002 */ beqz $t9, .L800455F4 -/* 0461EC 800455EC 240F0003 */ li $t7, 3 -/* 0461F0 800455F0 A2A801CD */ sb $t0, 0x1cd($s5) -.L800455F4: -/* 0461F4 800455F4 92A201CE */ lbu $v0, 0x1ce($s5) -/* 0461F8 800455F8 00000000 */ nop -/* 0461FC 800455FC 10400002 */ beqz $v0, .L80045608 -/* 046200 80045600 00000000 */ nop -/* 046204 80045604 A2A201CD */ sb $v0, 0x1cd($s5) -.L80045608: -/* 046208 80045608 92A901CD */ lbu $t1, 0x1cd($s5) -/* 04620C 8004560C A2A001CE */ sb $zero, 0x1ce($s5) -/* 046210 80045610 15200012 */ bnez $t1, .L8004565C -/* 046214 80045614 00000000 */ nop -/* 046218 80045618 8ECA004C */ lw $t2, 0x4c($s6) -/* 04621C 8004561C 24010001 */ li $at, 1 -/* 046220 80045620 91420012 */ lbu $v0, 0x12($t2) -/* 046224 80045624 240B0001 */ li $t3, 1 -/* 046228 80045628 10410007 */ beq $v0, $at, .L80045648 -/* 04622C 8004562C 24010002 */ li $at, 2 -/* 046230 80045630 10410007 */ beq $v0, $at, .L80045650 -/* 046234 80045634 240C0001 */ li $t4, 1 -/* 046238 80045638 10570007 */ beq $v0, $s7, .L80045658 -/* 04623C 8004563C 240D0001 */ li $t5, 1 -/* 046240 80045640 10000007 */ b .L80045660 -/* 046244 80045644 82AE01D8 */ lb $t6, 0x1d8($s5) -.L80045648: -/* 046248 80045648 10000004 */ b .L8004565C -/* 04624C 8004564C A2AB01CD */ sb $t3, 0x1cd($s5) -.L80045650: -/* 046250 80045650 10000002 */ b .L8004565C -/* 046254 80045654 A2AC01CD */ sb $t4, 0x1cd($s5) -.L80045658: -/* 046258 80045658 A2AD01CD */ sb $t5, 0x1cd($s5) -.L8004565C: -/* 04625C 8004565C 82AE01D8 */ lb $t6, 0x1d8($s5) -.L80045660: -/* 046260 80045660 00009025 */ move $s2, $zero -/* 046264 80045664 11C00002 */ beqz $t6, .L80045670 -/* 046268 80045668 00000000 */ nop -/* 04626C 8004566C A2AF01CD */ sb $t7, 0x1cd($s5) -.L80045670: -/* 046270 80045670 92B801CD */ lbu $t8, 0x1cd($s5) -/* 046274 80045674 00000000 */ nop -/* 046278 80045678 2719FFFF */ addiu $t9, $t8, -1 -/* 04627C 8004567C 2F210008 */ sltiu $at, $t9, 8 -/* 046280 80045680 10200018 */ beqz $at, .L800456E4 -/* 046284 80045684 0019C880 */ sll $t9, $t9, 2 -/* 046288 80045688 3C01800E */ lui $at, 0x800e -/* 04628C 8004568C 00390821 */ addu $at, $at, $t9 -/* 046290 80045690 8C396358 */ lw $t9, 0x6358($at) -/* 046294 80045694 00000000 */ nop -/* 046298 80045698 03200008 */ jr $t9 -/* 04629C 8004569C 00000000 */ nop -/* 0462A0 800456A0 10000010 */ b .L800456E4 -/* 0462A4 800456A4 2413002D */ li $s3, 45 -/* 0462A8 800456A8 1000000E */ b .L800456E4 -/* 0462AC 800456AC 2413005C */ li $s3, 92 -/* 0462B0 800456B0 2413005C */ li $s3, 92 -/* 0462B4 800456B4 1000000B */ b .L800456E4 -/* 0462B8 800456B8 24120002 */ li $s2, 2 -/* 0462BC 800456BC 82B10002 */ lb $s1, 2($s5) -/* 0462C0 800456C0 2413005C */ li $s3, 92 -/* 0462C4 800456C4 10000007 */ b .L800456E4 -/* 0462C8 800456C8 24120002 */ li $s2, 2 -/* 0462CC 800456CC 10000005 */ b .L800456E4 -/* 0462D0 800456D0 24130011 */ li $s3, 17 -/* 0462D4 800456D4 10000003 */ b .L800456E4 -/* 0462D8 800456D8 24130001 */ li $s3, 1 -/* 0462DC 800456DC 2413002D */ li $s3, 45 -/* 0462E0 800456E0 24120001 */ li $s2, 1 -.L800456E4: -/* 0462E4 800456E4 1260005E */ beqz $s3, .L80045860 -/* 0462E8 800456E8 24010001 */ li $at, 1 -/* 0462EC 800456EC 1261005C */ beq $s3, $at, .L80045860 -/* 0462F0 800456F0 27A40094 */ addiu $a0, $sp, 0x94 -/* 0462F4 800456F4 3C01800E */ lui $at, %hi(D_800E6378) # $at, 0x800e -/* 0462F8 800456F8 C4386378 */ lwc1 $f24, %lo(D_800E6378)($at) -/* 0462FC 800456FC 27A50090 */ addiu $a1, $sp, 0x90 -/* 046300 80045700 0C003A62 */ jal func_8000E988 -/* 046304 80045704 0000F025 */ move $fp, $zero -/* 046308 80045708 8FA80090 */ lw $t0, 0x90($sp) -/* 04630C 8004570C 0040A025 */ move $s4, $v0 -/* 046310 80045710 19000053 */ blez $t0, .L80045860 -/* 046314 80045714 AFA00094 */ sw $zero, 0x94($sp) -.L80045718: -/* 046318 80045718 8FA90094 */ lw $t1, 0x94($sp) -/* 04631C 8004571C 00001825 */ move $v1, $zero -/* 046320 80045720 00095080 */ sll $t2, $t1, 2 -/* 046324 80045724 028A5821 */ addu $t3, $s4, $t2 -/* 046328 80045728 8D700000 */ lw $s0, ($t3) -/* 04632C 8004572C 00000000 */ nop -/* 046330 80045730 860C0006 */ lh $t4, 6($s0) -/* 046334 80045734 00000000 */ nop -/* 046338 80045738 318D8000 */ andi $t5, $t4, 0x8000 -/* 04633C 8004573C 15A0002B */ bnez $t5, .L800457EC -/* 046340 80045740 00000000 */ nop -/* 046344 80045744 860E0048 */ lh $t6, 0x48($s0) -/* 046348 80045748 2401002D */ li $at, 45 -/* 04634C 8004574C 166E0027 */ bne $s3, $t6, .L800457EC -/* 046350 80045750 00000000 */ nop -/* 046354 80045754 12610013 */ beq $s3, $at, .L800457A4 -/* 046358 80045758 2401005C */ li $at, 92 -/* 04635C 8004575C 12610003 */ beq $s3, $at, .L8004576C -/* 046360 80045760 00000000 */ nop -/* 046364 80045764 10000021 */ b .L800457EC -/* 046368 80045768 24030001 */ li $v1, 1 -.L8004576C: -/* 04636C 8004576C 8E02003C */ lw $v0, 0x3c($s0) -/* 046370 80045770 2401FFFF */ li $at, -1 -/* 046374 80045774 804F0008 */ lb $t7, 8($v0) -/* 046378 80045778 00000000 */ nop -/* 04637C 8004577C 164F001B */ bne $s2, $t7, .L800457EC -/* 046380 80045780 00000000 */ nop -/* 046384 80045784 12210005 */ beq $s1, $at, .L8004579C -/* 046388 80045788 00000000 */ nop -/* 04638C 8004578C 80580009 */ lb $t8, 9($v0) -/* 046390 80045790 00000000 */ nop -/* 046394 80045794 16380015 */ bne $s1, $t8, .L800457EC -/* 046398 80045798 00000000 */ nop -.L8004579C: -/* 04639C 8004579C 10000013 */ b .L800457EC -/* 0463A0 800457A0 24030001 */ li $v1, 1 -.L800457A4: -/* 0463A4 800457A4 8E020064 */ lw $v0, 0x64($s0) -/* 0463A8 800457A8 16400007 */ bnez $s2, .L800457C8 -/* 0463AC 800457AC 00000000 */ nop -/* 0463B0 800457B0 8059000B */ lb $t9, 0xb($v0) -/* 0463B4 800457B4 00000000 */ nop -/* 0463B8 800457B8 1720000C */ bnez $t9, .L800457EC -/* 0463BC 800457BC 00000000 */ nop -/* 0463C0 800457C0 1000000A */ b .L800457EC -/* 0463C4 800457C4 24030001 */ li $v1, 1 -.L800457C8: -/* 0463C8 800457C8 8048000B */ lb $t0, 0xb($v0) -/* 0463CC 800457CC 00000000 */ nop -/* 0463D0 800457D0 16E80006 */ bne $s7, $t0, .L800457EC -/* 0463D4 800457D4 00000000 */ nop -/* 0463D8 800457D8 8049000A */ lb $t1, 0xa($v0) -/* 0463DC 800457DC 00000000 */ nop -/* 0463E0 800457E0 16290002 */ bne $s1, $t1, .L800457EC -/* 0463E4 800457E4 00000000 */ nop -/* 0463E8 800457E8 24030001 */ li $v1, 1 -.L800457EC: -/* 0463EC 800457EC 10600017 */ beqz $v1, .L8004584C -/* 0463F0 800457F0 8FAA0094 */ lw $t2, 0x94($sp) -/* 0463F4 800457F4 C604000C */ lwc1 $f4, 0xc($s0) -/* 0463F8 800457F8 C6C6000C */ lwc1 $f6, 0xc($s6) -/* 0463FC 800457FC C6080010 */ lwc1 $f8, 0x10($s0) -/* 046400 80045800 46062501 */ sub.s $f20, $f4, $f6 -/* 046404 80045804 C6CA0010 */ lwc1 $f10, 0x10($s6) -/* 046408 80045808 4614A102 */ mul.s $f4, $f20, $f20 -/* 04640C 8004580C 460A4581 */ sub.s $f22, $f8, $f10 -/* 046410 80045810 C6100014 */ lwc1 $f16, 0x14($s0) -/* 046414 80045814 C6D20014 */ lwc1 $f18, 0x14($s6) -/* 046418 80045818 4616B182 */ mul.s $f6, $f22, $f22 -/* 04641C 8004581C 46128381 */ sub.s $f14, $f16, $f18 -/* 046420 80045820 460E7282 */ mul.s $f10, $f14, $f14 -/* 046424 80045824 46062200 */ add.s $f8, $f4, $f6 -/* 046428 80045828 0C0326B4 */ jal sqrtf -/* 04642C 8004582C 460A4300 */ add.s $f12, $f8, $f10 -/* 046430 80045830 4618003C */ c.lt.s $f0, $f24 -/* 046434 80045834 00000000 */ nop -/* 046438 80045838 45000004 */ bc1f .L8004584C -/* 04643C 8004583C 8FAA0094 */ lw $t2, 0x94($sp) -/* 046440 80045840 46000606 */ mov.s $f24, $f0 -/* 046444 80045844 0200F025 */ move $fp, $s0 -/* 046448 80045848 8FAA0094 */ lw $t2, 0x94($sp) -.L8004584C: -/* 04644C 8004584C 8FAC0090 */ lw $t4, 0x90($sp) -/* 046450 80045850 254B0001 */ addiu $t3, $t2, 1 -/* 046454 80045854 016C082A */ slt $at, $t3, $t4 -/* 046458 80045858 1420FFAF */ bnez $at, .L80045718 -/* 04645C 8004585C AFAB0094 */ sw $t3, 0x94($sp) -.L80045860: -/* 046460 80045860 24010001 */ li $at, 1 -/* 046464 80045864 16610006 */ bne $s3, $at, .L80045880 -/* 046468 80045868 2401FFFF */ li $at, -1 -/* 04646C 8004586C 12210004 */ beq $s1, $at, .L80045880 -/* 046470 80045870 00000000 */ nop -/* 046474 80045874 0C006EB2 */ jal func_8001BAC8 -/* 046478 80045878 02202025 */ move $a0, $s1 -/* 04647C 8004587C 0040F025 */ move $fp, $v0 -.L80045880: -/* 046480 80045880 17C00004 */ bnez $fp, .L80045894 -/* 046484 80045884 AEBE0154 */ sw $fp, 0x154($s5) -/* 046488 80045888 240D0080 */ li $t5, 128 -/* 04648C 8004588C A2AD01CE */ sb $t5, 0x1ce($s5) -/* 046490 80045890 A2A001CD */ sb $zero, 0x1cd($s5) -.L80045894: -/* 046494 80045894 92A301CD */ lbu $v1, 0x1cd($s5) -/* 046498 80045898 00000000 */ nop -/* 04649C 8004589C 1060FEC1 */ beqz $v1, .L800453A4 -/* 0464A0 800458A0 00000000 */ nop -/* 0464A4 800458A4 AFBE0080 */ sw $fp, 0x80($sp) -.L800458A8: -/* 0464A8 800458A8 8EB00154 */ lw $s0, 0x154($s5) -/* 0464AC 800458AC 44801000 */ mtc1 $zero, $f2 -/* 0464B0 800458B0 1200007D */ beqz $s0, .L80045AA8 -/* 0464B4 800458B4 24170003 */ li $s7, 3 -/* 0464B8 800458B8 860E0048 */ lh $t6, 0x48($s0) -/* 0464BC 800458BC 2401002D */ li $at, 45 -/* 0464C0 800458C0 15C10013 */ bne $t6, $at, .L80045910 -/* 0464C4 800458C4 00000000 */ nop -/* 0464C8 800458C8 8E020064 */ lw $v0, 0x64($s0) -/* 0464CC 800458CC 24010001 */ li $at, 1 -/* 0464D0 800458D0 14610007 */ bne $v1, $at, .L800458F0 -/* 0464D4 800458D4 00602025 */ move $a0, $v1 -/* 0464D8 800458D8 804F000B */ lb $t7, 0xb($v0) -/* 0464DC 800458DC 00000000 */ nop -/* 0464E0 800458E0 11E00004 */ beqz $t7, .L800458F4 -/* 0464E4 800458E4 24010008 */ li $at, 8 -/* 0464E8 800458E8 92A401CD */ lbu $a0, 0x1cd($s5) -/* 0464EC 800458EC AEA00154 */ sw $zero, 0x154($s5) -.L800458F0: -/* 0464F0 800458F0 24010008 */ li $at, 8 -.L800458F4: -/* 0464F4 800458F4 14810006 */ bne $a0, $at, .L80045910 -/* 0464F8 800458F8 00000000 */ nop -/* 0464FC 800458FC 8058000B */ lb $t8, 0xb($v0) -/* 046500 80045900 00000000 */ nop -/* 046504 80045904 12F80002 */ beq $s7, $t8, .L80045910 -/* 046508 80045908 00000000 */ nop -/* 04650C 8004590C AEA00154 */ sw $zero, 0x154($s5) -.L80045910: -/* 046510 80045910 C610000C */ lwc1 $f16, 0xc($s0) -/* 046514 80045914 C6D2000C */ lwc1 $f18, 0xc($s6) -/* 046518 80045918 C6080014 */ lwc1 $f8, 0x14($s0) -/* 04651C 8004591C 46128501 */ sub.s $f20, $f16, $f18 -/* 046520 80045920 C6CA0014 */ lwc1 $f10, 0x14($s6) -/* 046524 80045924 4614A602 */ mul.s $f24, $f20, $f20 -/* 046528 80045928 460A4381 */ sub.s $f14, $f8, $f10 -/* 04652C 8004592C C6040010 */ lwc1 $f4, 0x10($s0) -/* 046530 80045930 C6C60010 */ lwc1 $f6, 0x10($s6) -/* 046534 80045934 460E7002 */ mul.s $f0, $f14, $f14 -/* 046538 80045938 46062581 */ sub.s $f22, $f4, $f6 -/* 04653C 8004593C E7AE00AC */ swc1 $f14, 0xac($sp) -/* 046540 80045940 4616B402 */ mul.s $f16, $f22, $f22 -/* 046544 80045944 E7A0005C */ swc1 $f0, 0x5c($sp) -/* 046548 80045948 4610C480 */ add.s $f18, $f24, $f16 -/* 04654C 8004594C 0C0326B4 */ jal sqrtf -/* 046550 80045950 46009300 */ add.s $f12, $f18, $f0 -/* 046554 80045954 44802800 */ mtc1 $zero, $f5 -/* 046558 80045958 44802000 */ mtc1 $zero, $f4 -/* 04655C 8004595C 460001A1 */ cvt.d.s $f6, $f0 -/* 046560 80045960 4626203C */ c.lt.d $f4, $f6 -/* 046564 80045964 C7AE00AC */ lwc1 $f14, 0xac($sp) -/* 046568 80045968 45000031 */ bc1f .L80045A30 -/* 04656C 8004596C 46000086 */ mov.s $f2, $f0 -/* 046570 80045970 4600A306 */ mov.s $f12, $f20 -/* 046574 80045974 0C01C1D4 */ jal func_80070750 -/* 046578 80045978 E7A200A8 */ swc1 $f2, 0xa8($sp) -/* 04657C 8004597C 24018000 */ li $at, -32768 -/* 046580 80045980 0041C821 */ addu $t9, $v0, $at -/* 046584 80045984 3328FFFF */ andi $t0, $t9, 0xffff -/* 046588 80045988 AFA8009C */ sw $t0, 0x9c($sp) -/* 04658C 8004598C 86A901A0 */ lh $t1, 0x1a0($s5) -/* 046590 80045990 34118001 */ li $s1, 32769 -/* 046594 80045994 312AFFFF */ andi $t2, $t1, 0xffff -/* 046598 80045998 010A1823 */ subu $v1, $t0, $t2 -/* 04659C 8004599C C7A200A8 */ lwc1 $f2, 0xa8($sp) -/* 0465A0 800459A0 0071082A */ slt $at, $v1, $s1 -/* 0465A4 800459A4 14200003 */ bnez $at, .L800459B4 -/* 0465A8 800459A8 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 0465AC 800459AC 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 0465B0 800459B0 00611821 */ addu $v1, $v1, $at -.L800459B4: -/* 0465B4 800459B4 28618000 */ slti $at, $v1, -0x8000 -/* 0465B8 800459B8 10200002 */ beqz $at, .L800459C4 -/* 0465BC 800459BC 3401FFFF */ li $at, 65535 -/* 0465C0 800459C0 00611821 */ addu $v1, $v1, $at -.L800459C4: -/* 0465C4 800459C4 C7A8005C */ lwc1 $f8, 0x5c($sp) -/* 0465C8 800459C8 00035823 */ negu $t3, $v1 -/* 0465CC 800459CC 000B6143 */ sra $t4, $t3, 5 -/* 0465D0 800459D0 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 0465D4 800459D4 AC2CD534 */ sw $t4, %lo(D_8011D534)($at) -/* 0465D8 800459D8 E7A200A8 */ swc1 $f2, 0xa8($sp) -/* 0465DC 800459DC 0C0326B4 */ jal sqrtf -/* 0465E0 800459E0 4608C300 */ add.s $f12, $f24, $f8 -/* 0465E4 800459E4 4600B306 */ mov.s $f12, $f22 -/* 0465E8 800459E8 0C01C1D4 */ jal func_80070750 -/* 0465EC 800459EC 46000386 */ mov.s $f14, $f0 -/* 0465F0 800459F0 3044FFFF */ andi $a0, $v0, 0xffff -/* 0465F4 800459F4 C7A200A8 */ lwc1 $f2, 0xa8($sp) -/* 0465F8 800459F8 0091082A */ slt $at, $a0, $s1 -/* 0465FC 800459FC 14200004 */ bnez $at, .L80045A10 -/* 046600 80045A00 00801825 */ move $v1, $a0 -/* 046604 80045A04 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 046608 80045A08 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 04660C 80045A0C 00811821 */ addu $v1, $a0, $at -.L80045A10: -/* 046610 80045A10 28618000 */ slti $at, $v1, -0x8000 -/* 046614 80045A14 10200002 */ beqz $at, .L80045A20 -/* 046618 80045A18 3401FFFF */ li $at, 65535 -/* 04661C 80045A1C 00611821 */ addu $v1, $v1, $at -.L80045A20: -/* 046620 80045A20 00036823 */ negu $t5, $v1 -/* 046624 80045A24 000D71C3 */ sra $t6, $t5, 7 -/* 046628 80045A28 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 -/* 04662C 80045A2C AC2ED538 */ sw $t6, %lo(D_8011D538)($at) -.L80045A30: -/* 046630 80045A30 82A201CC */ lb $v0, 0x1cc($s5) -/* 046634 80045A34 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 046638 80045A38 0441000A */ bgez $v0, .L80045A64 -/* 04663C 80045A3C 3C038012 */ lui $v1, %hi(D_8011D534) # $v1, 0x8012 -/* 046640 80045A40 AC20D534 */ sw $zero, %lo(D_8011D534)($at) -/* 046644 80045A44 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 -/* 046648 80045A48 240FFFDD */ li $t7, -35 -/* 04664C 80045A4C AC2FD538 */ sw $t7, %lo(D_8011D538)($at) -/* 046650 80045A50 82B801CC */ lb $t8, 0x1cc($s5) -/* 046654 80045A54 00000000 */ nop -/* 046658 80045A58 27190001 */ addiu $t9, $t8, 1 -/* 04665C 80045A5C 10000013 */ b .L80045AAC -/* 046660 80045A60 A2B901CC */ sb $t9, 0x1cc($s5) -.L80045A64: -/* 046664 80045A64 8C63D534 */ lw $v1, %lo(D_8011D534)($v1) -/* 046668 80045A68 24490001 */ addiu $t1, $v0, 1 -/* 04666C 80045A6C 2861003D */ slti $at, $v1, 0x3d -/* 046670 80045A70 10200003 */ beqz $at, .L80045A80 -/* 046674 80045A74 2861FFC4 */ slti $at, $v1, -0x3c -/* 046678 80045A78 10200009 */ beqz $at, .L80045AA0 -/* 04667C 80045A7C 00000000 */ nop -.L80045A80: -/* 046680 80045A80 A2A901CC */ sb $t1, 0x1cc($s5) -/* 046684 80045A84 82A801CC */ lb $t0, 0x1cc($s5) -/* 046688 80045A88 240AFFD8 */ li $t2, -40 -/* 04668C 80045A8C 2901006F */ slti $at, $t0, 0x6f -/* 046690 80045A90 14200006 */ bnez $at, .L80045AAC -/* 046694 80045A94 00000000 */ nop -/* 046698 80045A98 10000004 */ b .L80045AAC -/* 04669C 80045A9C A2AA01CC */ sb $t2, 0x1cc($s5) -.L80045AA0: -/* 0466A0 80045AA0 10000002 */ b .L80045AAC -/* 0466A4 80045AA4 A2A001CC */ sb $zero, 0x1cc($s5) -.L80045AA8: -/* 0466A8 80045AA8 A2A001CD */ sb $zero, 0x1cd($s5) -.L80045AAC: -/* 0466AC 80045AAC 92AB01CD */ lbu $t3, 0x1cd($s5) -/* 0466B0 80045AB0 00000000 */ nop -/* 0466B4 80045AB4 256CFFFF */ addiu $t4, $t3, -1 -/* 0466B8 80045AB8 2D810008 */ sltiu $at, $t4, 8 -/* 0466BC 80045ABC 10200050 */ beqz $at, .L80045C00 -/* 0466C0 80045AC0 000C6080 */ sll $t4, $t4, 2 -/* 0466C4 80045AC4 3C01800E */ lui $at, 0x800e -/* 0466C8 80045AC8 002C0821 */ addu $at, $at, $t4 -/* 0466CC 80045ACC 8C2C637C */ lw $t4, 0x637c($at) -/* 0466D0 80045AD0 00000000 */ nop -/* 0466D4 80045AD4 01800008 */ jr $t4 -/* 0466D8 80045AD8 00000000 */ nop -/* 0466DC 80045ADC 8EAD0144 */ lw $t5, 0x144($s5) -/* 0466E0 80045AE0 240E0004 */ li $t6, 4 -/* 0466E4 80045AE4 11A00047 */ beqz $t5, .L80045C04 -/* 0466E8 80045AE8 8FBF0054 */ lw $ra, 0x54($sp) -/* 0466EC 80045AEC A2A001CD */ sb $zero, 0x1cd($s5) -/* 0466F0 80045AF0 10000043 */ b .L80045C00 -/* 0466F4 80045AF4 A2AE01CE */ sb $t6, 0x1ce($s5) -/* 0466F8 80045AF8 3C014059 */ li $at, 0x40590000 # 3.390625 -/* 0466FC 80045AFC 44818800 */ mtc1 $at, $f17 -/* 046700 80045B00 44808000 */ mtc1 $zero, $f16 -/* 046704 80045B04 460012A1 */ cvt.d.s $f10, $f2 -/* 046708 80045B08 4630503C */ c.lt.d $f10, $f16 -/* 04670C 80045B0C 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 -/* 046710 80045B10 4500003B */ bc1f .L80045C00 -/* 046714 80045B14 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 -/* 046718 80045B18 A2A001CD */ sb $zero, 0x1cd($s5) -/* 04671C 80045B1C 8C4F0000 */ lw $t7, ($v0) -/* 046720 80045B20 00000000 */ nop -/* 046724 80045B24 35F82000 */ ori $t8, $t7, 0x2000 -/* 046728 80045B28 10000035 */ b .L80045C00 -/* 04672C 80045B2C AC580000 */ sw $t8, ($v0) -/* 046730 80045B30 3C014069 */ li $at, 0x40690000 # 3.640625 -/* 046734 80045B34 44812800 */ mtc1 $at, $f5 -/* 046738 80045B38 44802000 */ mtc1 $zero, $f4 -/* 04673C 80045B3C 460014A1 */ cvt.d.s $f18, $f2 -/* 046740 80045B40 4624903C */ c.lt.d $f18, $f4 -/* 046744 80045B44 00000000 */ nop -/* 046748 80045B48 4500002E */ bc1f .L80045C04 -/* 04674C 80045B4C 8FBF0054 */ lw $ra, 0x54($sp) -/* 046750 80045B50 1000002B */ b .L80045C00 -/* 046754 80045B54 A2A001CD */ sb $zero, 0x1cd($s5) -/* 046758 80045B58 82B90173 */ lb $t9, 0x173($s5) -/* 04675C 80045B5C 00000000 */ nop -/* 046760 80045B60 13200028 */ beqz $t9, .L80045C04 -/* 046764 80045B64 8FBF0054 */ lw $ra, 0x54($sp) -/* 046768 80045B68 10000025 */ b .L80045C00 -/* 04676C 80045B6C A2A001CD */ sb $zero, 0x1cd($s5) -/* 046770 80045B70 82A90173 */ lb $t1, 0x173($s5) -/* 046774 80045B74 3C01800E */ lui $at, %hi(D_800E63A4) # $at, 0x800e -/* 046778 80045B78 15200002 */ bnez $t1, .L80045B84 -/* 04677C 80045B7C 3C028012 */ lui $v0, %hi(D_8011D530) # $v0, 0x8012 -/* 046780 80045B80 A2A001CD */ sb $zero, 0x1cd($s5) -.L80045B84: -/* 046784 80045B84 C42963A0 */ lwc1 $f9, %lo(D_800E63A0)($at) -/* 046788 80045B88 C42863A4 */ lwc1 $f8, %lo(D_800E63A4)($at) -/* 04678C 80045B8C 460011A1 */ cvt.d.s $f6, $f2 -/* 046790 80045B90 4628303C */ c.lt.d $f6, $f8 -/* 046794 80045B94 2442D530 */ addiu $v0, %lo(D_8011D530) # addiu $v0, $v0, -0x2ad0 -/* 046798 80045B98 4500001A */ bc1f .L80045C04 -/* 04679C 80045B9C 8FBF0054 */ lw $ra, 0x54($sp) -/* 0467A0 80045BA0 8C480000 */ lw $t0, ($v0) -/* 0467A4 80045BA4 00000000 */ nop -/* 0467A8 80045BA8 350A2000 */ ori $t2, $t0, 0x2000 -/* 0467AC 80045BAC AC4A0000 */ sw $t2, ($v0) -/* 0467B0 80045BB0 10000013 */ b .L80045C00 -/* 0467B4 80045BB4 A2A001CD */ sb $zero, 0x1cd($s5) -/* 0467B8 80045BB8 3C014069 */ li $at, 0x40690000 # 3.640625 -/* 0467BC 80045BBC 44818800 */ mtc1 $at, $f17 -/* 0467C0 80045BC0 44808000 */ mtc1 $zero, $f16 -/* 0467C4 80045BC4 460012A1 */ cvt.d.s $f10, $f2 -/* 0467C8 80045BC8 4630503C */ c.lt.d $f10, $f16 -/* 0467CC 80045BCC 00000000 */ nop -/* 0467D0 80045BD0 4500000C */ bc1f .L80045C04 -/* 0467D4 80045BD4 8FBF0054 */ lw $ra, 0x54($sp) -/* 0467D8 80045BD8 1200000A */ beqz $s0, .L80045C04 -/* 0467DC 80045BDC 8FBF0054 */ lw $ra, 0x54($sp) -/* 0467E0 80045BE0 A2A001CD */ sb $zero, 0x1cd($s5) -/* 0467E4 80045BE4 8E02003C */ lw $v0, 0x3c($s0) -/* 0467E8 80045BE8 00000000 */ nop -/* 0467EC 80045BEC 804B0009 */ lb $t3, 9($v0) -/* 0467F0 80045BF0 00000000 */ nop -/* 0467F4 80045BF4 316C0003 */ andi $t4, $t3, 3 -/* 0467F8 80045BF8 358D0040 */ ori $t5, $t4, 0x40 -/* 0467FC 80045BFC A2AD01CE */ sb $t5, 0x1ce($s5) -.L80045C00: -/* 046800 80045C00 8FBF0054 */ lw $ra, 0x54($sp) -.L80045C04: -/* 046804 80045C04 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 046808 80045C08 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 04680C 80045C0C C7B70020 */ lwc1 $f23, 0x20($sp) -/* 046810 80045C10 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 046814 80045C14 C7B90028 */ lwc1 $f25, 0x28($sp) -/* 046818 80045C18 C7B8002C */ lwc1 $f24, 0x2c($sp) -/* 04681C 80045C1C 8FB00030 */ lw $s0, 0x30($sp) -/* 046820 80045C20 8FB10034 */ lw $s1, 0x34($sp) -/* 046824 80045C24 8FB20038 */ lw $s2, 0x38($sp) -/* 046828 80045C28 8FB3003C */ lw $s3, 0x3c($sp) -/* 04682C 80045C2C 8FB40040 */ lw $s4, 0x40($sp) -/* 046830 80045C30 8FB50044 */ lw $s5, 0x44($sp) -/* 046834 80045C34 8FB60048 */ lw $s6, 0x48($sp) -/* 046838 80045C38 8FB7004C */ lw $s7, 0x4c($sp) -/* 04683C 80045C3C 8FBE0050 */ lw $fp, 0x50($sp) -/* 046840 80045C40 03E00008 */ jr $ra -/* 046844 80045C44 27BD00B8 */ addiu $sp, $sp, 0xb8 - -glabel func_80045C48 -/* 046848 80045C48 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 -/* 04684C 80045C4C 27BDFF18 */ addiu $sp, $sp, -0xe8 -/* 046850 80045C50 AC20D528 */ sw $zero, %lo(D_8011D528)($at) -/* 046854 80045C54 3C018012 */ lui $at, %hi(D_8011D52C) # $at, 0x8012 -/* 046858 80045C58 AC20D52C */ sw $zero, %lo(D_8011D52C)($at) -/* 04685C 80045C5C 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 -/* 046860 80045C60 AC20D530 */ sw $zero, %lo(D_8011D530)($at) -/* 046864 80045C64 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 046868 80045C68 AC20D534 */ sw $zero, %lo(D_8011D534)($at) -/* 04686C 80045C6C AFBF002C */ sw $ra, 0x2c($sp) -/* 046870 80045C70 AFB10024 */ sw $s1, 0x24($sp) -/* 046874 80045C74 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 -/* 046878 80045C78 00A08825 */ move $s1, $a1 -/* 04687C 80045C7C AFB20028 */ sw $s2, 0x28($sp) -/* 046880 80045C80 AFB00020 */ sw $s0, 0x20($sp) -/* 046884 80045C84 E7B50018 */ swc1 $f21, 0x18($sp) -/* 046888 80045C88 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 04688C 80045C8C AFA400E8 */ sw $a0, 0xe8($sp) -/* 046890 80045C90 AFA600F0 */ sw $a2, 0xf0($sp) -/* 046894 80045C94 AFA000C4 */ sw $zero, 0xc4($sp) -/* 046898 80045C98 0C006E99 */ jal func_8001BA64 -/* 04689C 80045C9C AC20D538 */ sw $zero, %lo(D_8011D538)($at) -/* 0468A0 80045CA0 14400005 */ bnez $v0, .L80045CB8 -/* 0468A4 80045CA4 00409025 */ move $s2, $v0 -/* 0468A8 80045CA8 240E0019 */ li $t6, 25 -/* 0468AC 80045CAC 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 0468B0 80045CB0 10000214 */ b .L80046504 -/* 0468B4 80045CB4 AC2ED534 */ sw $t6, %lo(D_8011D534)($at) -.L80045CB8: -/* 0468B8 80045CB8 C62400A8 */ lwc1 $f4, 0xa8($s1) -/* 0468BC 80045CBC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 0468C0 80045CC0 44811800 */ mtc1 $at, $f3 -/* 0468C4 80045CC4 44801000 */ mtc1 $zero, $f2 -/* 0468C8 80045CC8 460021A1 */ cvt.d.s $f6, $f4 -/* 0468CC 80045CCC 46261201 */ sub.d $f8, $f2, $f6 -/* 0468D0 80045CD0 44805800 */ mtc1 $zero, $f11 -/* 0468D4 80045CD4 46204520 */ cvt.s.d $f20, $f8 -/* 0468D8 80045CD8 44805000 */ mtc1 $zero, $f10 -/* 0468DC 80045CDC 4600A021 */ cvt.d.s $f0, $f20 -/* 0468E0 80045CE0 82300192 */ lb $s0, 0x192($s1) -/* 0468E4 80045CE4 462A003C */ c.lt.d $f0, $f10 -/* 0468E8 80045CE8 00004025 */ move $t0, $zero -/* 0468EC 80045CEC 45000004 */ bc1f .L80045D00 -/* 0468F0 80045CF0 2610FFFE */ addiu $s0, $s0, -2 -/* 0468F4 80045CF4 4480A000 */ mtc1 $zero, $f20 -/* 0468F8 80045CF8 00000000 */ nop -/* 0468FC 80045CFC 4600A021 */ cvt.d.s $f0, $f20 -.L80045D00: -/* 046900 80045D00 4620103C */ c.lt.d $f2, $f0 -/* 046904 80045D04 27A600B0 */ addiu $a2, $sp, 0xb0 -/* 046908 80045D08 45000004 */ bc1f .L80045D1C -/* 04690C 80045D0C 27A700A0 */ addiu $a3, $sp, 0xa0 -/* 046910 80045D10 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 046914 80045D14 4481A000 */ mtc1 $at, $f20 -/* 046918 80045D18 00000000 */ nop -.L80045D1C: -/* 04691C 80045D1C 06010002 */ bgez $s0, .L80045D28 -/* 046920 80045D20 27A30090 */ addiu $v1, $sp, 0x90 -/* 046924 80045D24 02028021 */ addu $s0, $s0, $v0 -.L80045D28: -/* 046928 80045D28 0202082A */ slt $at, $s0, $v0 -/* 04692C 80045D2C 14200002 */ bnez $at, .L80045D38 -/* 046930 80045D30 00000000 */ nop -/* 046934 80045D34 02028023 */ subu $s0, $s0, $v0 -.L80045D38: -/* 046938 80045D38 922501C8 */ lbu $a1, 0x1c8($s1) -/* 04693C 80045D3C AFA8003C */ sw $t0, 0x3c($sp) -/* 046940 80045D40 AFA70034 */ sw $a3, 0x34($sp) -/* 046944 80045D44 AFA60038 */ sw $a2, 0x38($sp) -/* 046948 80045D48 AFA30030 */ sw $v1, 0x30($sp) -/* 04694C 80045D4C 0C006E87 */ jal func_8001BA1C -/* 046950 80045D50 02002025 */ move $a0, $s0 -/* 046954 80045D54 8FA60038 */ lw $a2, 0x38($sp) -/* 046958 80045D58 C4520010 */ lwc1 $f18, 0x10($v0) -/* 04695C 80045D5C 8FA30030 */ lw $v1, 0x30($sp) -/* 046960 80045D60 8FA70034 */ lw $a3, 0x34($sp) -/* 046964 80045D64 8FA8003C */ lw $t0, 0x3c($sp) -/* 046968 80045D68 E4D20000 */ swc1 $f18, ($a2) -/* 04696C 80045D6C C4440014 */ lwc1 $f4, 0x14($v0) -/* 046970 80045D70 26100001 */ addiu $s0, $s0, 1 -/* 046974 80045D74 E4E40000 */ swc1 $f4, ($a3) -/* 046978 80045D78 C4460018 */ lwc1 $f6, 0x18($v0) -/* 04697C 80045D7C 00000000 */ nop -/* 046980 80045D80 E4660000 */ swc1 $f6, ($v1) -/* 046984 80045D84 922F01C9 */ lbu $t7, 0x1c9($s1) -/* 046988 80045D88 00000000 */ nop -/* 04698C 80045D8C 15E00037 */ bnez $t7, .L80045E6C -/* 046990 80045D90 00000000 */ nop -/* 046994 80045D94 823801CA */ lb $t8, 0x1ca($s1) -/* 046998 80045D98 03A85021 */ addu $t2, $sp, $t0 -/* 04699C 80045D9C 0058C821 */ addu $t9, $v0, $t8 -/* 0469A0 80045DA0 8329002E */ lb $t1, 0x2e($t9) -/* 0469A4 80045DA4 03A87021 */ addu $t6, $sp, $t0 -/* 0469A8 80045DA8 44894000 */ mtc1 $t1, $f8 -/* 0469AC 80045DAC 00000000 */ nop -/* 0469B0 80045DB0 468042A0 */ cvt.s.w $f10, $f8 -/* 0469B4 80045DB4 E54A0074 */ swc1 $f10, 0x74($t2) -/* 0469B8 80045DB8 822B01CA */ lb $t3, 0x1ca($s1) -/* 0469BC 80045DBC 00000000 */ nop -/* 0469C0 80045DC0 004B6021 */ addu $t4, $v0, $t3 -/* 0469C4 80045DC4 818D0032 */ lb $t5, 0x32($t4) -/* 0469C8 80045DC8 00000000 */ nop -/* 0469CC 80045DCC 448D9000 */ mtc1 $t5, $f18 -/* 0469D0 80045DD0 00000000 */ nop -/* 0469D4 80045DD4 46809120 */ cvt.s.w $f4, $f18 -/* 0469D8 80045DD8 E5C40064 */ swc1 $f4, 0x64($t6) -/* 0469DC 80045DDC 822F01CA */ lb $t7, 0x1ca($s1) -/* 0469E0 80045DE0 C446001C */ lwc1 $f6, 0x1c($v0) -/* 0469E4 80045DE4 004FC021 */ addu $t8, $v0, $t7 -/* 0469E8 80045DE8 8319002E */ lb $t9, 0x2e($t8) -/* 0469EC 80045DEC C4480008 */ lwc1 $f8, 8($v0) -/* 0469F0 80045DF0 44999000 */ mtc1 $t9, $f18 -/* 0469F4 80045DF4 46083282 */ mul.s $f10, $f6, $f8 -/* 0469F8 80045DF8 C4C80000 */ lwc1 $f8, ($a2) -/* 0469FC 80045DFC 46809120 */ cvt.s.w $f4, $f18 -/* 046A00 80045E00 46045182 */ mul.s $f6, $f10, $f4 -/* 046A04 80045E04 46064480 */ add.s $f18, $f8, $f6 -/* 046A08 80045E08 E4D20000 */ swc1 $f18, ($a2) -/* 046A0C 80045E0C 822901CA */ lb $t1, 0x1ca($s1) -/* 046A10 80045E10 C44A001C */ lwc1 $f10, 0x1c($v0) -/* 046A14 80045E14 00495021 */ addu $t2, $v0, $t1 -/* 046A18 80045E18 814B0032 */ lb $t3, 0x32($t2) -/* 046A1C 80045E1C C4F20000 */ lwc1 $f18, ($a3) -/* 046A20 80045E20 448B2000 */ mtc1 $t3, $f4 -/* 046A24 80045E24 00000000 */ nop -/* 046A28 80045E28 46802220 */ cvt.s.w $f8, $f4 -/* 046A2C 80045E2C 46085182 */ mul.s $f6, $f10, $f8 -/* 046A30 80045E30 46069100 */ add.s $f4, $f18, $f6 -/* 046A34 80045E34 E4E40000 */ swc1 $f4, ($a3) -/* 046A38 80045E38 822C01CA */ lb $t4, 0x1ca($s1) -/* 046A3C 80045E3C C4480000 */ lwc1 $f8, ($v0) -/* 046A40 80045E40 004C6821 */ addu $t5, $v0, $t4 -/* 046A44 80045E44 81AE002E */ lb $t6, 0x2e($t5) -/* 046A48 80045E48 C44A001C */ lwc1 $f10, 0x1c($v0) -/* 046A4C 80045E4C 448E2000 */ mtc1 $t6, $f4 -/* 046A50 80045E50 46004487 */ neg.s $f18, $f8 -/* 046A54 80045E54 46125182 */ mul.s $f6, $f10, $f18 -/* 046A58 80045E58 C4720000 */ lwc1 $f18, ($v1) -/* 046A5C 80045E5C 46802220 */ cvt.s.w $f8, $f4 -/* 046A60 80045E60 46083282 */ mul.s $f10, $f6, $f8 -/* 046A64 80045E64 460A9100 */ add.s $f4, $f18, $f10 -/* 046A68 80045E68 E4640000 */ swc1 $f4, ($v1) -.L80045E6C: -/* 046A6C 80045E6C 16120002 */ bne $s0, $s2, .L80045E78 -/* 046A70 80045E70 25080004 */ addiu $t0, $t0, 4 -/* 046A74 80045E74 00008025 */ move $s0, $zero -.L80045E78: -/* 046A78 80045E78 24630004 */ addiu $v1, $v1, 4 -/* 046A7C 80045E7C 27AF00A0 */ addiu $t7, $sp, 0xa0 -/* 046A80 80045E80 006F082B */ sltu $at, $v1, $t7 -/* 046A84 80045E84 24C60004 */ addiu $a2, $a2, 4 -/* 046A88 80045E88 1420FFAB */ bnez $at, .L80045D38 -/* 046A8C 80045E8C 24E70004 */ addiu $a3, $a3, 4 -/* 046A90 80045E90 922201C9 */ lbu $v0, 0x1c9($s1) -/* 046A94 80045E94 27A400B0 */ addiu $a0, $sp, 0xb0 -/* 046A98 80045E98 14400022 */ bnez $v0, .L80045F24 -/* 046A9C 80045E9C 00000000 */ nop -/* 046AA0 80045EA0 C7A6007C */ lwc1 $f6, 0x7c($sp) -/* 046AA4 80045EA4 C7A80078 */ lwc1 $f8, 0x78($sp) -/* 046AA8 80045EA8 00000000 */ nop -/* 046AAC 80045EAC 46083481 */ sub.s $f18, $f6, $f8 -/* 046AB0 80045EB0 46149282 */ mul.s $f10, $f18, $f20 -/* 046AB4 80045EB4 46085100 */ add.s $f4, $f10, $f8 -/* 046AB8 80045EB8 4458F800 */ cfc1 $t8, $31 -/* 046ABC 80045EBC 00000000 */ nop -/* 046AC0 80045EC0 37010003 */ ori $at, $t8, 3 -/* 046AC4 80045EC4 38210002 */ xori $at, $at, 2 -/* 046AC8 80045EC8 44C1F800 */ ctc1 $at, $31 -/* 046ACC 80045ECC 00000000 */ nop -/* 046AD0 80045ED0 460021A4 */ cvt.w.s $f6, $f4 -/* 046AD4 80045ED4 44193000 */ mfc1 $t9, $f6 -/* 046AD8 80045ED8 44D8F800 */ ctc1 $t8, $31 -/* 046ADC 80045EDC A63901BA */ sh $t9, 0x1ba($s1) -/* 046AE0 80045EE0 C7AA0068 */ lwc1 $f10, 0x68($sp) -/* 046AE4 80045EE4 C7B2006C */ lwc1 $f18, 0x6c($sp) -/* 046AE8 80045EE8 00000000 */ nop -/* 046AEC 80045EEC 460A9201 */ sub.s $f8, $f18, $f10 -/* 046AF0 80045EF0 46144102 */ mul.s $f4, $f8, $f20 -/* 046AF4 80045EF4 460A2180 */ add.s $f6, $f4, $f10 -/* 046AF8 80045EF8 4449F800 */ cfc1 $t1, $31 -/* 046AFC 80045EFC 00000000 */ nop -/* 046B00 80045F00 35210003 */ ori $at, $t1, 3 -/* 046B04 80045F04 38210002 */ xori $at, $at, 2 -/* 046B08 80045F08 44C1F800 */ ctc1 $at, $31 -/* 046B0C 80045F0C 00000000 */ nop -/* 046B10 80045F10 460034A4 */ cvt.w.s $f18, $f6 -/* 046B14 80045F14 440A9000 */ mfc1 $t2, $f18 -/* 046B18 80045F18 44C9F800 */ ctc1 $t1, $31 -/* 046B1C 80045F1C A62A01BC */ sh $t2, 0x1bc($s1) -/* 046B20 80045F20 00000000 */ nop -.L80045F24: -/* 046B24 80045F24 4406A000 */ mfc1 $a2, $f20 -/* 046B28 80045F28 0C0089DF */ jal func_8002277C -/* 046B2C 80045F2C 00002825 */ move $a1, $zero -/* 046B30 80045F30 4406A000 */ mfc1 $a2, $f20 -/* 046B34 80045F34 E7A0005C */ swc1 $f0, 0x5c($sp) -/* 046B38 80045F38 27A400A0 */ addiu $a0, $sp, 0xa0 -/* 046B3C 80045F3C 0C0089DF */ jal func_8002277C -/* 046B40 80045F40 00002825 */ move $a1, $zero -/* 046B44 80045F44 4406A000 */ mfc1 $a2, $f20 -/* 046B48 80045F48 E7A00058 */ swc1 $f0, 0x58($sp) -/* 046B4C 80045F4C 27A40090 */ addiu $a0, $sp, 0x90 -/* 046B50 80045F50 0C0089DF */ jal func_8002277C -/* 046B54 80045F54 00002825 */ move $a1, $zero -/* 046B58 80045F58 C7A2005C */ lwc1 $f2, 0x5c($sp) -/* 046B5C 80045F5C C7AE0058 */ lwc1 $f14, 0x58($sp) -/* 046B60 80045F60 46021202 */ mul.s $f8, $f2, $f2 -/* 046B64 80045F64 E7A00054 */ swc1 $f0, 0x54($sp) -/* 046B68 80045F68 460E7102 */ mul.s $f4, $f14, $f14 -/* 046B6C 80045F6C 00000000 */ nop -/* 046B70 80045F70 46000182 */ mul.s $f6, $f0, $f0 -/* 046B74 80045F74 46044280 */ add.s $f10, $f8, $f4 -/* 046B78 80045F78 0C0326B4 */ jal sqrtf -/* 046B7C 80045F7C 46065300 */ add.s $f12, $f10, $f6 -/* 046B80 80045F80 44809000 */ mtc1 $zero, $f18 -/* 046B84 80045F84 00000000 */ nop -/* 046B88 80045F88 46120032 */ c.eq.s $f0, $f18 -/* 046B8C 80045F8C 00000000 */ nop -/* 046B90 80045F90 4501000D */ bc1t .L80045FC8 -/* 046B94 80045F94 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 046B98 80045F98 44814000 */ mtc1 $at, $f8 -/* 046B9C 80045F9C C7A4005C */ lwc1 $f4, 0x5c($sp) -/* 046BA0 80045FA0 46004503 */ div.s $f20, $f8, $f0 -/* 046BA4 80045FA4 C7A60058 */ lwc1 $f6, 0x58($sp) -/* 046BA8 80045FA8 C7AE0054 */ lwc1 $f14, 0x54($sp) -/* 046BAC 80045FAC 46142282 */ mul.s $f10, $f4, $f20 -/* 046BB0 80045FB0 00000000 */ nop -/* 046BB4 80045FB4 46143482 */ mul.s $f18, $f6, $f20 -/* 046BB8 80045FB8 E7AA005C */ swc1 $f10, 0x5c($sp) -/* 046BBC 80045FBC 46147382 */ mul.s $f14, $f14, $f20 -/* 046BC0 80045FC0 E7B20058 */ swc1 $f18, 0x58($sp) -/* 046BC4 80045FC4 E7AE0054 */ swc1 $f14, 0x54($sp) -.L80045FC8: -/* 046BC8 80045FC8 C7AE0054 */ lwc1 $f14, 0x54($sp) -/* 046BCC 80045FCC C7AC005C */ lwc1 $f12, 0x5c($sp) -/* 046BD0 80045FD0 0C01C1D4 */ jal func_80070750 -/* 046BD4 80045FD4 00000000 */ nop -/* 046BD8 80045FD8 24018000 */ li $at, -32768 -/* 046BDC 80045FDC 00418021 */ addu $s0, $v0, $at -/* 046BE0 80045FE0 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 046BE4 80045FE4 320BFFFF */ andi $t3, $s0, 0xffff -/* 046BE8 80045FE8 44817000 */ mtc1 $at, $f14 -/* 046BEC 80045FEC C7AC0058 */ lwc1 $f12, 0x58($sp) -/* 046BF0 80045FF0 0C01C1D4 */ jal func_80070750 -/* 046BF4 80045FF4 01608025 */ move $s0, $t3 -/* 046BF8 80045FF8 862C01BE */ lh $t4, 0x1be($s1) -/* 046BFC 80045FFC 862D01C0 */ lh $t5, 0x1c0($s1) -/* 046C00 80046000 A62C01C2 */ sh $t4, 0x1c2($s1) -/* 046C04 80046004 862E01C2 */ lh $t6, 0x1c2($s1) -/* 046C08 80046008 34088001 */ li $t0, 32769 -/* 046C0C 8004600C 31CFFFFF */ andi $t7, $t6, 0xffff -/* 046C10 80046010 020F2023 */ subu $a0, $s0, $t7 -/* 046C14 80046014 3045FFFF */ andi $a1, $v0, 0xffff -/* 046C18 80046018 0088082A */ slt $at, $a0, $t0 -/* 046C1C 8004601C A63001BE */ sh $s0, 0x1be($s1) -/* 046C20 80046020 A62501C0 */ sh $a1, 0x1c0($s1) -/* 046C24 80046024 14200004 */ bnez $at, .L80046038 -/* 046C28 80046028 A62D01C4 */ sh $t5, 0x1c4($s1) -/* 046C2C 8004602C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 046C30 80046030 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 046C34 80046034 00812021 */ addu $a0, $a0, $at -.L80046038: -/* 046C38 80046038 28818000 */ slti $at, $a0, -0x8000 -/* 046C3C 8004603C 10200002 */ beqz $at, .L80046048 -/* 046C40 80046040 3401FFFF */ li $at, 65535 -/* 046C44 80046044 00812021 */ addu $a0, $a0, $at -.L80046048: -/* 046C48 80046048 863801C4 */ lh $t8, 0x1c4($s1) -/* 046C4C 8004604C 000448C3 */ sra $t1, $a0, 3 -/* 046C50 80046050 3319FFFF */ andi $t9, $t8, 0xffff -/* 046C54 80046054 00B91823 */ subu $v1, $a1, $t9 -/* 046C58 80046058 0068082A */ slt $at, $v1, $t0 -/* 046C5C 8004605C 14200004 */ bnez $at, .L80046070 -/* 046C60 80046060 00095023 */ negu $t2, $t1 -/* 046C64 80046064 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 046C68 80046068 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 046C6C 8004606C 00611821 */ addu $v1, $v1, $at -.L80046070: -/* 046C70 80046070 28618000 */ slti $at, $v1, -0x8000 -/* 046C74 80046074 10200002 */ beqz $at, .L80046080 -/* 046C78 80046078 3401FFFF */ li $at, 65535 -/* 046C7C 8004607C 00611821 */ addu $v1, $v1, $at -.L80046080: -/* 046C80 80046080 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 046C84 80046084 AC2AD534 */ sw $t2, %lo(D_8011D534)($at) -/* 046C88 80046088 000358C3 */ sra $t3, $v1, 3 -/* 046C8C 8004608C 000B6023 */ negu $t4, $t3 -/* 046C90 80046090 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 -/* 046C94 80046094 AC2CD538 */ sw $t4, %lo(D_8011D538)($at) -/* 046C98 80046098 862D01A0 */ lh $t5, 0x1a0($s1) -/* 046C9C 8004609C 44804000 */ mtc1 $zero, $f8 -/* 046CA0 800460A0 31AEFFFF */ andi $t6, $t5, 0xffff -/* 046CA4 800460A4 020E2023 */ subu $a0, $s0, $t6 -/* 046CA8 800460A8 0088082A */ slt $at, $a0, $t0 -/* 046CAC 800460AC 14200003 */ bnez $at, .L800460BC -/* 046CB0 800460B0 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 046CB4 800460B4 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 046CB8 800460B8 00812021 */ addu $a0, $a0, $at -.L800460BC: -/* 046CBC 800460BC 28818000 */ slti $at, $a0, -0x8000 -/* 046CC0 800460C0 10200002 */ beqz $at, .L800460CC -/* 046CC4 800460C4 3401FFFF */ li $at, 65535 -/* 046CC8 800460C8 00812021 */ addu $a0, $a0, $at -.L800460CC: -/* 046CCC 800460CC 28813001 */ slti $at, $a0, 0x3001 -/* 046CD0 800460D0 10200002 */ beqz $at, .L800460DC -/* 046CD4 800460D4 2881D000 */ slti $at, $a0, -0x3000 -/* 046CD8 800460D8 10200002 */ beqz $at, .L800460E4 -.L800460DC: -/* 046CDC 800460DC 240F0001 */ li $t7, 1 -/* 046CE0 800460E0 AFAF00C4 */ sw $t7, 0xc4($sp) -.L800460E4: -/* 046CE4 800460E4 C62400A8 */ lwc1 $f4, 0xa8($s1) -/* 046CE8 800460E8 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 046CEC 800460EC 44814800 */ mtc1 $at, $f9 -/* 046CF0 800460F0 460022A1 */ cvt.d.s $f10, $f4 -/* 046CF4 800460F4 462A4181 */ sub.d $f6, $f8, $f10 -/* 046CF8 800460F8 44809800 */ mtc1 $zero, $f19 -/* 046CFC 800460FC 46203520 */ cvt.s.d $f20, $f6 -/* 046D00 80046100 44809000 */ mtc1 $zero, $f18 -/* 046D04 80046104 4600A021 */ cvt.d.s $f0, $f20 -/* 046D08 80046108 82300192 */ lb $s0, 0x192($s1) -/* 046D0C 8004610C 4632003C */ c.lt.d $f0, $f18 -/* 046D10 80046110 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 046D14 80046114 45000004 */ bc1f .L80046128 -/* 046D18 80046118 2610FFFE */ addiu $s0, $s0, -2 -/* 046D1C 8004611C 4480A000 */ mtc1 $zero, $f20 -/* 046D20 80046120 00000000 */ nop -/* 046D24 80046124 4600A021 */ cvt.d.s $f0, $f20 -.L80046128: -/* 046D28 80046128 44812800 */ mtc1 $at, $f5 -/* 046D2C 8004612C 44802000 */ mtc1 $zero, $f4 -/* 046D30 80046130 8FB800C4 */ lw $t8, 0xc4($sp) -/* 046D34 80046134 4620203C */ c.lt.d $f4, $f0 -/* 046D38 80046138 00000000 */ nop -/* 046D3C 8004613C 45000003 */ bc1f .L8004614C -/* 046D40 80046140 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 046D44 80046144 4481A000 */ mtc1 $at, $f20 -/* 046D48 80046148 00000000 */ nop -.L8004614C: -/* 046D4C 8004614C 13000003 */ beqz $t8, .L8004615C -/* 046D50 80046150 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 046D54 80046154 4481A000 */ mtc1 $at, $f20 -/* 046D58 80046158 00000000 */ nop -.L8004615C: -/* 046D5C 8004615C 923901C9 */ lbu $t9, 0x1c9($s1) -/* 046D60 80046160 00000000 */ nop -/* 046D64 80046164 13200037 */ beqz $t9, .L80046244 -/* 046D68 80046168 00000000 */ nop -/* 046D6C 8004616C 06010002 */ bgez $s0, .L80046178 -/* 046D70 80046170 27A600B0 */ addiu $a2, $sp, 0xb0 -/* 046D74 80046174 02128021 */ addu $s0, $s0, $s2 -.L80046178: -/* 046D78 80046178 0212082A */ slt $at, $s0, $s2 -/* 046D7C 8004617C 14200002 */ bnez $at, .L80046188 -/* 046D80 80046180 27A700A0 */ addiu $a3, $sp, 0xa0 -/* 046D84 80046184 02128023 */ subu $s0, $s0, $s2 -.L80046188: -/* 046D88 80046188 27A30090 */ addiu $v1, $sp, 0x90 -.L8004618C: -/* 046D8C 8004618C 922501C8 */ lbu $a1, 0x1c8($s1) -/* 046D90 80046190 AFA70034 */ sw $a3, 0x34($sp) -/* 046D94 80046194 AFA60038 */ sw $a2, 0x38($sp) -/* 046D98 80046198 AFA30030 */ sw $v1, 0x30($sp) -/* 046D9C 8004619C 0C006E87 */ jal func_8001BA1C -/* 046DA0 800461A0 02002025 */ move $a0, $s0 -/* 046DA4 800461A4 862901BA */ lh $t1, 0x1ba($s1) -/* 046DA8 800461A8 C448001C */ lwc1 $f8, 0x1c($v0) -/* 046DAC 800461AC C44A0008 */ lwc1 $f10, 8($v0) -/* 046DB0 800461B0 44899000 */ mtc1 $t1, $f18 -/* 046DB4 800461B4 460A4182 */ mul.s $f6, $f8, $f10 -/* 046DB8 800461B8 C44A0010 */ lwc1 $f10, 0x10($v0) -/* 046DBC 800461BC 8FA60038 */ lw $a2, 0x38($sp) -/* 046DC0 800461C0 8FA30030 */ lw $v1, 0x30($sp) -/* 046DC4 800461C4 46809120 */ cvt.s.w $f4, $f18 -/* 046DC8 800461C8 8FA70034 */ lw $a3, 0x34($sp) -/* 046DCC 800461CC 26100001 */ addiu $s0, $s0, 1 -/* 046DD0 800461D0 46043202 */ mul.s $f8, $f6, $f4 -/* 046DD4 800461D4 27AC00A0 */ addiu $t4, $sp, 0xa0 -/* 046DD8 800461D8 24C60004 */ addiu $a2, $a2, 4 -/* 046DDC 800461DC 24630004 */ addiu $v1, $v1, 4 -/* 046DE0 800461E0 46085480 */ add.s $f18, $f10, $f8 -/* 046DE4 800461E4 E4D2FFFC */ swc1 $f18, -4($a2) -/* 046DE8 800461E8 862A01BC */ lh $t2, 0x1bc($s1) -/* 046DEC 800461EC C446001C */ lwc1 $f6, 0x1c($v0) -/* 046DF0 800461F0 448A2000 */ mtc1 $t2, $f4 -/* 046DF4 800461F4 C4520014 */ lwc1 $f18, 0x14($v0) -/* 046DF8 800461F8 468022A0 */ cvt.s.w $f10, $f4 -/* 046DFC 800461FC 460A3202 */ mul.s $f8, $f6, $f10 -/* 046E00 80046200 46089100 */ add.s $f4, $f18, $f8 -/* 046E04 80046204 E4E40000 */ swc1 $f4, ($a3) -/* 046E08 80046208 862B01BA */ lh $t3, 0x1ba($s1) -/* 046E0C 8004620C C44A0000 */ lwc1 $f10, ($v0) -/* 046E10 80046210 C446001C */ lwc1 $f6, 0x1c($v0) -/* 046E14 80046214 448B2000 */ mtc1 $t3, $f4 -/* 046E18 80046218 46005487 */ neg.s $f18, $f10 -/* 046E1C 8004621C 46123202 */ mul.s $f8, $f6, $f18 -/* 046E20 80046220 C4520018 */ lwc1 $f18, 0x18($v0) -/* 046E24 80046224 468022A0 */ cvt.s.w $f10, $f4 -/* 046E28 80046228 460A4182 */ mul.s $f6, $f8, $f10 -/* 046E2C 8004622C 46069100 */ add.s $f4, $f18, $f6 -/* 046E30 80046230 16120002 */ bne $s0, $s2, .L8004623C -/* 046E34 80046234 E464FFFC */ swc1 $f4, -4($v1) -/* 046E38 80046238 00008025 */ move $s0, $zero -.L8004623C: -/* 046E3C 8004623C 146CFFD3 */ bne $v1, $t4, .L8004618C -/* 046E40 80046240 24E70004 */ addiu $a3, $a3, 4 -.L80046244: -/* 046E44 80046244 4406A000 */ mfc1 $a2, $f20 -/* 046E48 80046248 27A400B0 */ addiu $a0, $sp, 0xb0 -/* 046E4C 8004624C 00002825 */ move $a1, $zero -/* 046E50 80046250 0C00898F */ jal func_8002263C -/* 046E54 80046254 27A7005C */ addiu $a3, $sp, 0x5c -/* 046E58 80046258 4406A000 */ mfc1 $a2, $f20 -/* 046E5C 8004625C E7A0008C */ swc1 $f0, 0x8c($sp) -/* 046E60 80046260 27A400A0 */ addiu $a0, $sp, 0xa0 -/* 046E64 80046264 00002825 */ move $a1, $zero -/* 046E68 80046268 0C00898F */ jal func_8002263C -/* 046E6C 8004626C 27A70058 */ addiu $a3, $sp, 0x58 -/* 046E70 80046270 4406A000 */ mfc1 $a2, $f20 -/* 046E74 80046274 E7A00088 */ swc1 $f0, 0x88($sp) -/* 046E78 80046278 27A40090 */ addiu $a0, $sp, 0x90 -/* 046E7C 8004627C 00002825 */ move $a1, $zero -/* 046E80 80046280 0C00898F */ jal func_8002263C -/* 046E84 80046284 27A70054 */ addiu $a3, $sp, 0x54 -/* 046E88 80046288 C7A2005C */ lwc1 $f2, 0x5c($sp) -/* 046E8C 8004628C C7B00058 */ lwc1 $f16, 0x58($sp) -/* 046E90 80046290 46021202 */ mul.s $f8, $f2, $f2 -/* 046E94 80046294 C7AE0054 */ lwc1 $f14, 0x54($sp) -/* 046E98 80046298 E7A00084 */ swc1 $f0, 0x84($sp) -/* 046E9C 8004629C 46108282 */ mul.s $f10, $f16, $f16 -/* 046EA0 800462A0 00000000 */ nop -/* 046EA4 800462A4 460E7182 */ mul.s $f6, $f14, $f14 -/* 046EA8 800462A8 460A4480 */ add.s $f18, $f8, $f10 -/* 046EAC 800462AC 0C0326B4 */ jal sqrtf -/* 046EB0 800462B0 46069300 */ add.s $f12, $f18, $f6 -/* 046EB4 800462B4 44802000 */ mtc1 $zero, $f4 -/* 046EB8 800462B8 3C0143FA */ li $at, 0x43FA0000 # 500.000000 -/* 046EBC 800462BC 46040032 */ c.eq.s $f0, $f4 -/* 046EC0 800462C0 00000000 */ nop -/* 046EC4 800462C4 4501000E */ bc1t .L80046300 -/* 046EC8 800462C8 8FA200E8 */ lw $v0, 0xe8($sp) -/* 046ECC 800462CC 44814000 */ mtc1 $at, $f8 -/* 046ED0 800462D0 C7A2005C */ lwc1 $f2, 0x5c($sp) -/* 046ED4 800462D4 46004503 */ div.s $f20, $f8, $f0 -/* 046ED8 800462D8 C7AA0058 */ lwc1 $f10, 0x58($sp) -/* 046EDC 800462DC C7AE0054 */ lwc1 $f14, 0x54($sp) -/* 046EE0 800462E0 46141082 */ mul.s $f2, $f2, $f20 -/* 046EE4 800462E4 00000000 */ nop -/* 046EE8 800462E8 46145482 */ mul.s $f18, $f10, $f20 -/* 046EEC 800462EC E7A2005C */ swc1 $f2, 0x5c($sp) -/* 046EF0 800462F0 46147382 */ mul.s $f14, $f14, $f20 -/* 046EF4 800462F4 E7B20058 */ swc1 $f18, 0x58($sp) -/* 046EF8 800462F8 E7AE0054 */ swc1 $f14, 0x54($sp) -/* 046EFC 800462FC 8FA200E8 */ lw $v0, 0xe8($sp) -.L80046300: -/* 046F00 80046300 C7A6008C */ lwc1 $f6, 0x8c($sp) -/* 046F04 80046304 C7A4005C */ lwc1 $f4, 0x5c($sp) -/* 046F08 80046308 C44A000C */ lwc1 $f10, 0xc($v0) -/* 046F0C 8004630C 46043200 */ add.s $f8, $f6, $f4 -/* 046F10 80046310 C7A40058 */ lwc1 $f4, 0x58($sp) -/* 046F14 80046314 460A4301 */ sub.s $f12, $f8, $f10 -/* 046F18 80046318 C7A60088 */ lwc1 $f6, 0x88($sp) -/* 046F1C 8004631C E7AC005C */ swc1 $f12, 0x5c($sp) -/* 046F20 80046320 C44A0010 */ lwc1 $f10, 0x10($v0) -/* 046F24 80046324 46043200 */ add.s $f8, $f6, $f4 -/* 046F28 80046328 C7A40084 */ lwc1 $f4, 0x84($sp) -/* 046F2C 8004632C 460A4181 */ sub.s $f6, $f8, $f10 -/* 046F30 80046330 C7A80054 */ lwc1 $f8, 0x54($sp) -/* 046F34 80046334 E7A60058 */ swc1 $f6, 0x58($sp) -/* 046F38 80046338 C4460014 */ lwc1 $f6, 0x14($v0) -/* 046F3C 8004633C 46082280 */ add.s $f10, $f4, $f8 -/* 046F40 80046340 46065381 */ sub.s $f14, $f10, $f6 -/* 046F44 80046344 0C01C1D4 */ jal func_80070750 -/* 046F48 80046348 E7AE0054 */ swc1 $f14, 0x54($sp) -/* 046F4C 8004634C 24018000 */ li $at, -32768 -/* 046F50 80046350 00418021 */ addu $s0, $v0, $at -/* 046F54 80046354 3C0143FA */ li $at, 0x43FA0000 # 500.000000 -/* 046F58 80046358 320DFFFF */ andi $t5, $s0, 0xffff -/* 046F5C 8004635C 44817000 */ mtc1 $at, $f14 -/* 046F60 80046360 C7AC0058 */ lwc1 $f12, 0x58($sp) -/* 046F64 80046364 0C01C1D4 */ jal func_80070750 -/* 046F68 80046368 01A08025 */ move $s0, $t5 -/* 046F6C 8004636C 862501A0 */ lh $a1, 0x1a0($s1) -/* 046F70 80046370 34018001 */ li $at, 32769 -/* 046F74 80046374 30AEFFFF */ andi $t6, $a1, 0xffff -/* 046F78 80046378 020E2023 */ subu $a0, $s0, $t6 -/* 046F7C 8004637C 0081082A */ slt $at, $a0, $at -/* 046F80 80046380 14200004 */ bnez $at, .L80046394 -/* 046F84 80046384 24070001 */ li $a3, 1 -/* 046F88 80046388 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 046F8C 8004638C 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 046F90 80046390 00812021 */ addu $a0, $a0, $at -.L80046394: -/* 046F94 80046394 28818000 */ slti $at, $a0, -0x8000 -/* 046F98 80046398 10200002 */ beqz $at, .L800463A4 -/* 046F9C 8004639C 3401FFFF */ li $at, 65535 -/* 046FA0 800463A0 00812021 */ addu $a0, $a0, $at -.L800463A4: -/* 046FA4 800463A4 8FB800E8 */ lw $t8, 0xe8($sp) -/* 046FA8 800463A8 304FFFFF */ andi $t7, $v0, 0xffff -/* 046FAC 800463AC 87190002 */ lh $t9, 2($t8) -/* 046FB0 800463B0 34018001 */ li $at, 32769 -/* 046FB4 800463B4 3329FFFF */ andi $t1, $t9, 0xffff -/* 046FB8 800463B8 01E91823 */ subu $v1, $t7, $t1 -/* 046FBC 800463BC 0061082A */ slt $at, $v1, $at -/* 046FC0 800463C0 14200004 */ bnez $at, .L800463D4 -/* 046FC4 800463C4 00042023 */ negu $a0, $a0 -/* 046FC8 800463C8 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 046FCC 800463CC 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 046FD0 800463D0 00611821 */ addu $v1, $v1, $at -.L800463D4: -/* 046FD4 800463D4 28618000 */ slti $at, $v1, -0x8000 -/* 046FD8 800463D8 10200003 */ beqz $at, .L800463E8 -/* 046FDC 800463DC 24020005 */ li $v0, 5 -/* 046FE0 800463E0 3401FFFF */ li $at, 65535 -/* 046FE4 800463E4 00611821 */ addu $v1, $v1, $at -.L800463E8: -/* 046FE8 800463E8 822601D6 */ lb $a2, 0x1d6($s1) -/* 046FEC 800463EC 24010002 */ li $at, 2 -/* 046FF0 800463F0 14C10002 */ bne $a2, $at, .L800463FC -/* 046FF4 800463F4 00031823 */ negu $v1, $v1 -/* 046FF8 800463F8 24020006 */ li $v0, 6 -.L800463FC: -/* 046FFC 800463FC 14E60007 */ bne $a3, $a2, .L8004641C -/* 047000 80046400 3C018012 */ lui $at, 0x8012 -/* 047004 80046404 822A01D4 */ lb $t2, 0x1d4($s1) -/* 047008 80046408 00045843 */ sra $t3, $a0, 1 -/* 04700C 8004640C 15400003 */ bnez $t2, .L8004641C -/* 047010 80046410 00AB6023 */ subu $t4, $a1, $t3 -/* 047014 80046414 822601D6 */ lb $a2, 0x1d6($s1) -/* 047018 80046418 A62C01A0 */ sh $t4, 0x1a0($s1) -.L8004641C: -/* 04701C 8004641C 10C70019 */ beq $a2, $a3, .L80046484 -/* 047020 80046420 3C0A8012 */ lui $t2, %hi(D_8011D534) # $t2, 0x8012 -/* 047024 80046424 24010004 */ li $at, 4 -/* 047028 80046428 10C10013 */ beq $a2, $at, .L80046478 -/* 04702C 8004642C 24010005 */ li $at, 5 -/* 047030 80046430 10C1001B */ beq $a2, $at, .L800464A0 -/* 047034 80046434 3C0D8012 */ lui $t5, 0x8012 -/* 047038 80046438 24010007 */ li $at, 7 -/* 04703C 8004643C 10C10021 */ beq $a2, $at, .L800464C4 -/* 047040 80046440 3C0F8012 */ lui $t7, %hi(D_8011D534) # $t7, 0x8012 -/* 047044 80046444 3C0D8012 */ lui $t5, %hi(D_8011D534) # $t5, 0x8012 -/* 047048 80046448 8DADD534 */ lw $t5, %lo(D_8011D534)($t5) -/* 04704C 8004644C 00447007 */ srav $t6, $a0, $v0 -/* 047050 80046450 3C198012 */ lui $t9, %hi(D_8011D538) # $t9, 0x8012 -/* 047054 80046454 8F39D538 */ lw $t9, %lo(D_8011D538)($t9) -/* 047058 80046458 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 04705C 8004645C 01AEC021 */ addu $t8, $t5, $t6 -/* 047060 80046460 AC38D534 */ sw $t8, %lo(D_8011D534)($at) -/* 047064 80046464 00437807 */ srav $t7, $v1, $v0 -/* 047068 80046468 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 -/* 04706C 8004646C 032F4821 */ addu $t1, $t9, $t7 -/* 047070 80046470 10000020 */ b .L800464F4 -/* 047074 80046474 AC29D538 */ sw $t1, %lo(D_8011D538)($at) -.L80046478: -/* 047078 80046478 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 -/* 04707C 8004647C 1000001D */ b .L800464F4 -/* 047080 80046480 AC20D538 */ sw $zero, %lo(D_8011D538)($at) -.L80046484: -/* 047084 80046484 8D4AD534 */ lw $t2, %lo(D_8011D534)($t2) -/* 047088 80046488 AC20D538 */ sw $zero, %lo(D_8011D538)($at) -/* 04708C 8004648C 00445807 */ srav $t3, $a0, $v0 -/* 047090 80046490 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 047094 80046494 014B6021 */ addu $t4, $t2, $t3 -/* 047098 80046498 10000016 */ b .L800464F4 -/* 04709C 8004649C AC2CD534 */ sw $t4, %lo(D_8011D534)($at) -.L800464A0: -/* 0470A0 800464A0 8DADD534 */ lw $t5, -0x2acc($t5) -/* 0470A4 800464A4 244E001F */ addiu $t6, $v0, 0x1f -/* 0470A8 800464A8 01C4C007 */ srav $t8, $a0, $t6 -/* 0470AC 800464AC 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 0470B0 800464B0 01B8C821 */ addu $t9, $t5, $t8 -/* 0470B4 800464B4 AC39D534 */ sw $t9, %lo(D_8011D534)($at) -/* 0470B8 800464B8 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 -/* 0470BC 800464BC 1000000D */ b .L800464F4 -/* 0470C0 800464C0 AC20D538 */ sw $zero, %lo(D_8011D538)($at) -.L800464C4: -/* 0470C4 800464C4 8DEFD534 */ lw $t7, %lo(D_8011D534)($t7) -/* 0470C8 800464C8 2442FFFF */ addiu $v0, $v0, -1 -/* 0470CC 800464CC 00444807 */ srav $t1, $a0, $v0 -/* 0470D0 800464D0 3C0B8012 */ lui $t3, %hi(D_8011D538) # $t3, 0x8012 -/* 0470D4 800464D4 8D6BD538 */ lw $t3, %lo(D_8011D538)($t3) -/* 0470D8 800464D8 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 0470DC 800464DC 01E95021 */ addu $t2, $t7, $t1 -/* 0470E0 800464E0 AC2AD534 */ sw $t2, %lo(D_8011D534)($at) -/* 0470E4 800464E4 00436007 */ srav $t4, $v1, $v0 -/* 0470E8 800464E8 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 -/* 0470EC 800464EC 016C7021 */ addu $t6, $t3, $t4 -/* 0470F0 800464F0 AC2ED538 */ sw $t6, %lo(D_8011D538)($at) -.L800464F4: -/* 0470F4 800464F4 8FA400E8 */ lw $a0, 0xe8($sp) -/* 0470F8 800464F8 8FA600F0 */ lw $a2, 0xf0($sp) -/* 0470FC 800464FC 0C010B48 */ jal func_80042D20 -/* 047100 80046500 02202825 */ move $a1, $s1 -.L80046504: -/* 047104 80046504 8FBF002C */ lw $ra, 0x2c($sp) -/* 047108 80046508 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 04710C 8004650C C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 047110 80046510 8FB00020 */ lw $s0, 0x20($sp) -/* 047114 80046514 8FB10024 */ lw $s1, 0x24($sp) -/* 047118 80046518 8FB20028 */ lw $s2, 0x28($sp) -/* 04711C 8004651C 03E00008 */ jr $ra -/* 047120 80046520 27BD00E8 */ addiu $sp, $sp, 0xe8 - -glabel func_80046524 -/* 047124 80046524 27BDFED8 */ addiu $sp, $sp, -0x128 -/* 047128 80046528 AFBF002C */ sw $ra, 0x2c($sp) -/* 04712C 8004652C AFB10028 */ sw $s1, 0x28($sp) -/* 047130 80046530 AFB00024 */ sw $s0, 0x24($sp) -/* 047134 80046534 00E08025 */ move $s0, $a3 -/* 047138 80046538 00C08825 */ move $s1, $a2 -/* 04713C 8004653C AFA40128 */ sw $a0, 0x128($sp) -/* 047140 80046540 0C00384E */ jal func_8000E138 -/* 047144 80046544 AFA5012C */ sw $a1, 0x12c($sp) -/* 047148 80046548 10400009 */ beqz $v0, .L80046570 -/* 04714C 8004654C 3C0A8012 */ lui $t2, %hi(D_8011D586) # $t2, 0x8012 -/* 047150 80046550 3C01800E */ lui $at, %hi(D_800E63AC) # $at, 0x800e -/* 047154 80046554 C7A4012C */ lwc1 $f4, 0x12c($sp) -/* 047158 80046558 C42963A8 */ lwc1 $f9, %lo(D_800E63A8)($at) -/* 04715C 8004655C C42863AC */ lwc1 $f8, %lo(D_800E63AC)($at) -/* 047160 80046560 460021A1 */ cvt.d.s $f6, $f4 -/* 047164 80046564 46283282 */ mul.d $f10, $f6, $f8 -/* 047168 80046568 46205120 */ cvt.s.d $f4, $f10 -/* 04716C 8004656C E7A4012C */ swc1 $f4, 0x12c($sp) -.L80046570: -/* 047170 80046570 A3A00067 */ sb $zero, 0x67($sp) -/* 047174 80046574 860E0000 */ lh $t6, ($s0) -/* 047178 80046578 3C0D8012 */ lui $t5, %hi(D_8011D534) # $t5, 0x8012 -/* 04717C 8004657C 05C0000B */ bltz $t6, .L800465AC -/* 047180 80046580 02202025 */ move $a0, $s1 -/* 047184 80046584 3C0F800E */ lui $t7, %hi(D_800DCB98) # $t7, 0x800e -/* 047188 80046588 8DEFCB98 */ lw $t7, %lo(D_800DCB98)($t7) -/* 04718C 8004658C 00000000 */ nop -/* 047190 80046590 29E10002 */ slti $at, $t7, 2 -/* 047194 80046594 10200006 */ beqz $at, .L800465B0 -/* 047198 80046598 3C014120 */ lui $at, 0x4120 -/* 04719C 8004659C 8E380074 */ lw $t8, 0x74($s1) -/* 0471A0 800465A0 00000000 */ nop -/* 0471A4 800465A4 37190100 */ ori $t9, $t8, 0x100 -/* 0471A8 800465A8 AE390074 */ sw $t9, 0x74($s1) -.L800465AC: -/* 0471AC 800465AC 3C014120 */ li $at, 0x41200000 # 10.000000 -.L800465B0: -/* 0471B0 800465B0 44816000 */ mtc1 $at, $f12 -/* 0471B4 800465B4 3C018012 */ lui $at, %hi(D_8011D550) # $at, 0x8012 -/* 0471B8 800465B8 A420D550 */ sh $zero, %lo(D_8011D550)($at) -/* 0471BC 800465BC 3C018012 */ lui $at, %hi(D_8011D554) # $at, 0x8012 -/* 0471C0 800465C0 AC20D554 */ sw $zero, %lo(D_8011D554)($at) -/* 0471C4 800465C4 3C018012 */ lui $at, %hi(D_8011D558) # $at, 0x8012 -/* 0471C8 800465C8 AC20D558 */ sw $zero, %lo(D_8011D558)($at) -/* 0471CC 800465CC C626000C */ lwc1 $f6, 0xc($s1) -/* 0471D0 800465D0 854AD586 */ lh $t2, %lo(D_8011D586)($t2) -/* 0471D4 800465D4 E7A60110 */ swc1 $f6, 0x110($sp) -/* 0471D8 800465D8 C6280010 */ lwc1 $f8, 0x10($s1) -/* 0471DC 800465DC 448A2000 */ mtc1 $t2, $f4 -/* 0471E0 800465E0 E7A8010C */ swc1 $f8, 0x10c($sp) -/* 0471E4 800465E4 468021A0 */ cvt.s.w $f6, $f4 -/* 0471E8 800465E8 C62A0014 */ lwc1 $f10, 0x14($s1) -/* 0471EC 800465EC 3C014620 */ li $at, 0x46200000 # 10240.000000 -/* 0471F0 800465F0 44814000 */ mtc1 $at, $f8 -/* 0471F4 800465F4 E7AA0108 */ swc1 $f10, 0x108($sp) -/* 0471F8 800465F8 46083283 */ div.s $f10, $f6, $f8 -/* 0471FC 800465FC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 047200 80046600 44813800 */ mtc1 $at, $f7 -/* 047204 80046604 44803000 */ mtc1 $zero, $f6 -/* 047208 80046608 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 04720C 8004660C 3C0B8012 */ lui $t3, %hi(D_8011D55C) # $t3, 0x8012 -/* 047210 80046610 8D6BD55C */ lw $t3, %lo(D_8011D55C)($t3) -/* 047214 80046614 44811000 */ mtc1 $at, $f2 -/* 047218 80046618 2401FFFF */ li $at, -1 -/* 04721C 8004661C 02002825 */ move $a1, $s0 -/* 047220 80046620 46005121 */ cvt.d.s $f4, $f10 -/* 047224 80046624 C60A0038 */ lwc1 $f10, 0x38($s0) -/* 047228 80046628 46243201 */ sub.d $f8, $f6, $f4 -/* 04722C 8004662C 46005187 */ neg.s $f6, $f10 -/* 047230 80046630 460C3102 */ mul.s $f4, $f6, $f12 -/* 047234 80046634 46204020 */ cvt.s.d $f0, $f8 -/* 047238 80046638 46002202 */ mul.s $f8, $f4, $f0 -/* 04723C 8004663C E7A800E8 */ swc1 $f8, 0xe8($sp) -/* 047240 80046640 C60A0040 */ lwc1 $f10, 0x40($s0) -/* 047244 80046644 00000000 */ nop -/* 047248 80046648 46005187 */ neg.s $f6, $f10 -/* 04724C 8004664C 460C3102 */ mul.s $f4, $f6, $f12 -/* 047250 80046650 00000000 */ nop -/* 047254 80046654 46002202 */ mul.s $f8, $f4, $f0 -/* 047258 80046658 11610004 */ beq $t3, $at, .L8004666C -/* 04725C 8004665C E7A800E4 */ swc1 $f8, 0xe4($sp) -/* 047260 80046660 820C01D8 */ lb $t4, 0x1d8($s0) -/* 047264 80046664 00000000 */ nop -/* 047268 80046668 11800003 */ beqz $t4, .L80046678 -.L8004666C: -/* 04726C 8004666C 3C014200 */ li $at, 0x42000000 # 32.000000 -/* 047270 80046670 44811000 */ mtc1 $at, $f2 -/* 047274 80046674 00000000 */ nop -.L80046678: -/* 047278 80046678 820801E1 */ lb $t0, 0x1e1($s0) -/* 04727C 8004667C 8DADD534 */ lw $t5, %lo(D_8011D534)($t5) -/* 047280 80046680 C7A4012C */ lwc1 $f4, 0x12c($sp) -/* 047284 80046684 01A81823 */ subu $v1, $t5, $t0 -/* 047288 80046688 44835000 */ mtc1 $v1, $f10 -/* 04728C 8004668C 00000000 */ nop -/* 047290 80046690 468051A0 */ cvt.s.w $f6, $f10 -/* 047294 80046694 46043202 */ mul.s $f8, $f6, $f4 -/* 047298 80046698 00000000 */ nop -/* 04729C 8004669C 46024283 */ div.s $f10, $f8, $f2 -/* 0472A0 800466A0 444EF800 */ cfc1 $t6, $31 -/* 0472A4 800466A4 00000000 */ nop -/* 0472A8 800466A8 35C10003 */ ori $at, $t6, 3 -/* 0472AC 800466AC 38210002 */ xori $at, $at, 2 -/* 0472B0 800466B0 44C1F800 */ ctc1 $at, $31 -/* 0472B4 800466B4 00000000 */ nop -/* 0472B8 800466B8 460051A4 */ cvt.w.s $f6, $f10 -/* 0472BC 800466BC 44023000 */ mfc1 $v0, $f6 -/* 0472C0 800466C0 44CEF800 */ ctc1 $t6, $31 -/* 0472C4 800466C4 10600009 */ beqz $v1, .L800466EC -/* 0472C8 800466C8 00403825 */ move $a3, $v0 -/* 0472CC 800466CC 14400008 */ bnez $v0, .L800466F0 -/* 0472D0 800466D0 01077821 */ addu $t7, $t0, $a3 -/* 0472D4 800466D4 18600002 */ blez $v1, .L800466E0 -/* 0472D8 800466D8 00000000 */ nop -/* 0472DC 800466DC 24070001 */ li $a3, 1 -.L800466E0: -/* 0472E0 800466E0 04610003 */ bgez $v1, .L800466F0 -/* 0472E4 800466E4 01077821 */ addu $t7, $t0, $a3 -/* 0472E8 800466E8 2407FFFF */ li $a3, -1 -.L800466EC: -/* 0472EC 800466EC 01077821 */ addu $t7, $t0, $a3 -.L800466F0: -/* 0472F0 800466F0 A20F01E1 */ sb $t7, 0x1e1($s0) -/* 0472F4 800466F4 8FA60128 */ lw $a2, 0x128($sp) -/* 0472F8 800466F8 0C0157B0 */ jal func_80055EC0 -/* 0472FC 800466FC E7A000C8 */ swc1 $f0, 0xc8($sp) -/* 047300 80046700 02202025 */ move $a0, $s1 -/* 047304 80046704 0C014D71 */ jal func_800535C4 -/* 047308 80046708 02002825 */ move $a1, $s0 -/* 04730C 8004670C 02202025 */ move $a0, $s1 -/* 047310 80046710 0C01231F */ jal func_80048C7C -/* 047314 80046714 02002825 */ move $a1, $s0 -/* 047318 80046718 3C188012 */ lui $t8, %hi(D_8011D55C) # $t8, 0x8012 -/* 04731C 8004671C 8F18D55C */ lw $t8, %lo(D_8011D55C)($t8) -/* 047320 80046720 2401FFFF */ li $at, -1 -/* 047324 80046724 13010007 */ beq $t8, $at, .L80046744 -/* 047328 80046728 00000000 */ nop -/* 04732C 8004672C 8FA60128 */ lw $a2, 0x128($sp) -/* 047330 80046730 02202025 */ move $a0, $s1 -/* 047334 80046734 0C014871 */ jal func_800521C4 -/* 047338 80046738 02002825 */ move $a1, $s0 -/* 04733C 8004673C 10000003 */ b .L8004674C -/* 047340 80046740 00000000 */ nop -.L80046744: -/* 047344 80046744 0C0148D3 */ jal func_8005234C -/* 047348 80046748 02002025 */ move $a0, $s0 -.L8004674C: -/* 04734C 8004674C 3C198012 */ lui $t9, %hi(D_8011D528) # $t9, 0x8012 -/* 047350 80046750 8F39D528 */ lw $t9, %lo(D_8011D528)($t9) -/* 047354 80046754 3C048012 */ lui $a0, %hi(D_8011D528) # $a0, 0x8012 -/* 047358 80046758 332A8000 */ andi $t2, $t9, 0x8000 -/* 04735C 8004675C 1140001E */ beqz $t2, .L800467D8 -/* 047360 80046760 00000000 */ nop -/* 047364 80046764 C7A4012C */ lwc1 $f4, 0x12c($sp) -/* 047368 80046768 3C01800E */ lui $at, %hi(D_800E63B4) # $at, 0x800e -/* 04736C 8004676C C42B63B0 */ lwc1 $f11, %lo(D_800E63B0)($at) -/* 047370 80046770 C42A63B4 */ lwc1 $f10, %lo(D_800E63B4)($at) -/* 047374 80046774 46002221 */ cvt.d.s $f8, $f4 -/* 047378 80046778 462A4182 */ mul.d $f6, $f8, $f10 -/* 04737C 8004677C E7A80054 */ swc1 $f8, 0x54($sp) -/* 047380 80046780 E7A90050 */ swc1 $f9, 0x50($sp) -/* 047384 80046784 C60400B4 */ lwc1 $f4, 0xb4($s0) -/* 047388 80046788 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 04738C 8004678C 46002221 */ cvt.d.s $f8, $f4 -/* 047390 80046790 46264280 */ add.d $f10, $f8, $f6 -/* 047394 80046794 44804000 */ mtc1 $zero, $f8 -/* 047398 80046798 46205120 */ cvt.s.d $f4, $f10 -/* 04739C 8004679C 44814800 */ mtc1 $at, $f9 -/* 0473A0 800467A0 E60400B4 */ swc1 $f4, 0xb4($s0) -/* 0473A4 800467A4 C60200B4 */ lwc1 $f2, 0xb4($s0) -/* 0473A8 800467A8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0473AC 800467AC 460011A1 */ cvt.d.s $f6, $f2 -/* 0473B0 800467B0 4626403C */ c.lt.d $f8, $f6 -/* 0473B4 800467B4 00000000 */ nop -/* 0473B8 800467B8 45000021 */ bc1f .L80046840 -/* 0473BC 800467BC 00000000 */ nop -/* 0473C0 800467C0 44815000 */ mtc1 $at, $f10 -/* 0473C4 800467C4 00000000 */ nop -/* 0473C8 800467C8 E60A00B4 */ swc1 $f10, 0xb4($s0) -/* 0473CC 800467CC C60200B4 */ lwc1 $f2, 0xb4($s0) -/* 0473D0 800467D0 1000001C */ b .L80046844 -/* 0473D4 800467D4 C60E002C */ lwc1 $f14, 0x2c($s0) -.L800467D8: -/* 0473D8 800467D8 C7A4012C */ lwc1 $f4, 0x12c($sp) -/* 0473DC 800467DC 3C01800E */ lui $at, %hi(D_800E63BC) # $at, 0x800e -/* 0473E0 800467E0 C42763B8 */ lwc1 $f7, %lo(D_800E63B8)($at) -/* 0473E4 800467E4 C42663BC */ lwc1 $f6, %lo(D_800E63BC)($at) -/* 0473E8 800467E8 46002221 */ cvt.d.s $f8, $f4 -/* 0473EC 800467EC 46264282 */ mul.d $f10, $f8, $f6 -/* 0473F0 800467F0 E7A80054 */ swc1 $f8, 0x54($sp) -/* 0473F4 800467F4 E7A90050 */ swc1 $f9, 0x50($sp) -/* 0473F8 800467F8 C60400B4 */ lwc1 $f4, 0xb4($s0) -/* 0473FC 800467FC 00000000 */ nop -/* 047400 80046800 46002221 */ cvt.d.s $f8, $f4 -/* 047404 80046804 462A4181 */ sub.d $f6, $f8, $f10 -/* 047408 80046808 44804000 */ mtc1 $zero, $f8 -/* 04740C 8004680C 46203120 */ cvt.s.d $f4, $f6 -/* 047410 80046810 E60400B4 */ swc1 $f4, 0xb4($s0) -/* 047414 80046814 C60200B4 */ lwc1 $f2, 0xb4($s0) -/* 047418 80046818 00000000 */ nop -/* 04741C 8004681C 4608103C */ c.lt.s $f2, $f8 -/* 047420 80046820 00000000 */ nop -/* 047424 80046824 45000006 */ bc1f .L80046840 -/* 047428 80046828 00000000 */ nop -/* 04742C 8004682C 44805000 */ mtc1 $zero, $f10 -/* 047430 80046830 00000000 */ nop -/* 047434 80046834 E60A00B4 */ swc1 $f10, 0xb4($s0) -/* 047438 80046838 C60200B4 */ lwc1 $f2, 0xb4($s0) -/* 04743C 8004683C 00000000 */ nop -.L80046840: -/* 047440 80046840 C60E002C */ lwc1 $f14, 0x2c($s0) -.L80046844: -/* 047444 80046844 44803000 */ mtc1 $zero, $f6 -/* 047448 80046848 44802800 */ mtc1 $zero, $f5 -/* 04744C 8004684C 460E303C */ c.lt.s $f6, $f14 -/* 047450 80046850 46001006 */ mov.s $f0, $f2 -/* 047454 80046854 45000008 */ bc1f .L80046878 -/* 047458 80046858 3C0B8012 */ lui $t3, %hi(D_8011D528) # $t3, 0x8012 -/* 04745C 8004685C 8D6BD528 */ lw $t3, %lo(D_8011D528)($t3) -/* 047460 80046860 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 047464 80046864 316C8000 */ andi $t4, $t3, 0x8000 -/* 047468 80046868 11800003 */ beqz $t4, .L80046878 -/* 04746C 8004686C 00000000 */ nop -/* 047470 80046870 44810000 */ mtc1 $at, $f0 -/* 047474 80046874 00000000 */ nop -.L80046878: -/* 047478 80046878 3C014040 */ li $at, 0x40400000 # 3.000000 -/* 04747C 8004687C 44812000 */ mtc1 $at, $f4 -/* 047480 80046880 3C014110 */ li $at, 0x41100000 # 9.000000 -/* 047484 80046884 46040002 */ mul.s $f0, $f0, $f4 -/* 047488 80046888 44815000 */ mtc1 $at, $f10 -/* 04748C 8004688C 44802000 */ mtc1 $zero, $f4 -/* 047490 80046890 46000202 */ mul.s $f8, $f0, $f0 -/* 047494 80046894 00000000 */ nop -/* 047498 80046898 460A4303 */ div.s $f12, $f8, $f10 -/* 04749C 8004689C E7AC00F4 */ swc1 $f12, 0xf4($sp) -/* 0474A0 800468A0 8E0D0108 */ lw $t5, 0x108($s0) -/* 0474A4 800468A4 00000000 */ nop -/* 0474A8 800468A8 11A00004 */ beqz $t5, .L800468BC -/* 0474AC 800468AC 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 0474B0 800468B0 44813000 */ mtc1 $at, $f6 -/* 0474B4 800468B4 C60E002C */ lwc1 $f14, 0x2c($s0) -/* 0474B8 800468B8 E60600B4 */ swc1 $f6, 0xb4($s0) -.L800468BC: -/* 0474BC 800468BC 46007221 */ cvt.d.s $f8, $f14 -/* 0474C0 800468C0 4628203C */ c.lt.d $f4, $f8 -/* 0474C4 800468C4 8C84D528 */ lw $a0, %lo(D_8011D528)($a0) -/* 0474C8 800468C8 45000008 */ bc1f .L800468EC -/* 0474CC 800468CC 308E4000 */ andi $t6, $a0, 0x4000 -/* 0474D0 800468D0 3C01800E */ lui $at, %hi(D_800E63C4) # $at, 0x800e -/* 0474D4 800468D4 C42763C0 */ lwc1 $f7, %lo(D_800E63C0)($at) -/* 0474D8 800468D8 C42663C4 */ lwc1 $f6, %lo(D_800E63C4)($at) -/* 0474DC 800468DC 460062A1 */ cvt.d.s $f10, $f12 -/* 0474E0 800468E0 46265102 */ mul.d $f4, $f10, $f6 -/* 0474E4 800468E4 46202220 */ cvt.s.d $f8, $f4 -/* 0474E8 800468E8 E7A800F4 */ swc1 $f8, 0xf4($sp) -.L800468EC: -/* 0474EC 800468EC 11C0002F */ beqz $t6, .L800469AC -/* 0474F0 800468F0 3C0F8012 */ lui $t7, %hi(D_8011D538) # $t7, 0x8012 -/* 0474F4 800468F4 8DEFD538 */ lw $t7, %lo(D_8011D538)($t7) -/* 0474F8 800468F8 C7A70050 */ lwc1 $f7, 0x50($sp) -/* 0474FC 800468FC 29E1FFD8 */ slti $at, $t7, -0x28 -/* 047500 80046900 14200006 */ bnez $at, .L8004691C -/* 047504 80046904 00000000 */ nop -/* 047508 80046908 44805000 */ mtc1 $zero, $f10 -/* 04750C 8004690C 00000000 */ nop -/* 047510 80046910 460A703C */ c.lt.s $f14, $f10 -/* 047514 80046914 00000000 */ nop -/* 047518 80046918 45000024 */ bc1f .L800469AC -.L8004691C: -/* 04751C 8004691C 3C01800E */ lui $at, %hi(D_800E63CC) # $at, 0x800e -/* 047520 80046920 C42563C8 */ lwc1 $f5, %lo(D_800E63C8)($at) -/* 047524 80046924 C42463CC */ lwc1 $f4, %lo(D_800E63CC)($at) -/* 047528 80046928 C7A60054 */ lwc1 $f6, 0x54($sp) -/* 04752C 8004692C C60A00B8 */ lwc1 $f10, 0xb8($s0) -/* 047530 80046930 46243202 */ mul.d $f8, $f6, $f4 -/* 047534 80046934 460051A1 */ cvt.d.s $f6, $f10 -/* 047538 80046938 3C01800E */ lui $at, %hi(D_800E63D0) # $at, 0x800e -/* 04753C 8004693C 46283100 */ add.d $f4, $f6, $f8 -/* 047540 80046940 462022A0 */ cvt.s.d $f10, $f4 -/* 047544 80046944 E60A00B8 */ swc1 $f10, 0xb8($s0) -/* 047548 80046948 C60800B8 */ lwc1 $f8, 0xb8($s0) -/* 04754C 8004694C C42663D4 */ lwc1 $f6, %lo(D_800E63D4)($at) -/* 047550 80046950 C42763D0 */ lwc1 $f7, %lo(D_800E63D0)($at) -/* 047554 80046954 46004121 */ cvt.d.s $f4, $f8 -/* 047558 80046958 4624303C */ c.lt.d $f6, $f4 -/* 04755C 8004695C 44802000 */ mtc1 $zero, $f4 -/* 047560 80046960 45000004 */ bc1f .L80046974 -/* 047564 80046964 3C01800E */ lui $at, %hi(D_800E63D8) # $at, 0x800e -/* 047568 80046968 C42A63D8 */ lwc1 $f10, %lo(D_800E63D8)($at) -/* 04756C 8004696C 00000000 */ nop -/* 047570 80046970 E60A00B8 */ swc1 $f10, 0xb8($s0) -.L80046974: -/* 047574 80046974 C608002C */ lwc1 $f8, 0x2c($s0) -/* 047578 80046978 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 04757C 8004697C 44812800 */ mtc1 $at, $f5 -/* 047580 80046980 460041A1 */ cvt.d.s $f6, $f8 -/* 047584 80046984 4624303C */ c.lt.d $f6, $f4 -/* 047588 80046988 00000000 */ nop -/* 04758C 8004698C 45000004 */ bc1f .L800469A0 -/* 047590 80046990 00000000 */ nop -/* 047594 80046994 86040000 */ lh $a0, ($s0) -/* 047598 80046998 0C01C8D2 */ jal func_80072348 -/* 04759C 8004699C 24050005 */ li $a1, 5 -.L800469A0: -/* 0475A0 800469A0 C60200B8 */ lwc1 $f2, 0xb8($s0) -/* 0475A4 800469A4 10000019 */ b .L80046A0C -/* 0475A8 800469A8 3C014040 */ lui $at, 0x4040 -.L800469AC: -/* 0475AC 800469AC 3C01800E */ lui $at, %hi(D_800E63E4) # $at, 0x800e -/* 0475B0 800469B0 C42963E0 */ lwc1 $f9, %lo(D_800E63E0)($at) -/* 0475B4 800469B4 C42863E4 */ lwc1 $f8, %lo(D_800E63E4)($at) -/* 0475B8 800469B8 C7AB0050 */ lwc1 $f11, 0x50($sp) -/* 0475BC 800469BC C7AA0054 */ lwc1 $f10, 0x54($sp) -/* 0475C0 800469C0 C60400B8 */ lwc1 $f4, 0xb8($s0) -/* 0475C4 800469C4 46285182 */ mul.d $f6, $f10, $f8 -/* 0475C8 800469C8 460022A1 */ cvt.d.s $f10, $f4 -/* 0475CC 800469CC 46265201 */ sub.d $f8, $f10, $f6 -/* 0475D0 800469D0 44805000 */ mtc1 $zero, $f10 -/* 0475D4 800469D4 46204120 */ cvt.s.d $f4, $f8 -/* 0475D8 800469D8 E60400B8 */ swc1 $f4, 0xb8($s0) -/* 0475DC 800469DC C60200B8 */ lwc1 $f2, 0xb8($s0) -/* 0475E0 800469E0 00000000 */ nop -/* 0475E4 800469E4 460A103C */ c.lt.s $f2, $f10 -/* 0475E8 800469E8 00000000 */ nop -/* 0475EC 800469EC 45000007 */ bc1f .L80046A0C -/* 0475F0 800469F0 3C014040 */ lui $at, 0x4040 -/* 0475F4 800469F4 44803000 */ mtc1 $zero, $f6 -/* 0475F8 800469F8 00000000 */ nop -/* 0475FC 800469FC E60600B8 */ swc1 $f6, 0xb8($s0) -/* 047600 80046A00 C60200B8 */ lwc1 $f2, 0xb8($s0) -/* 047604 80046A04 00000000 */ nop -/* 047608 80046A08 3C014040 */ li $at, 0x40400000 # 3.000000 -.L80046A0C: -/* 04760C 80046A0C 44814000 */ mtc1 $at, $f8 -/* 047610 80046A10 3C014110 */ li $at, 0x41100000 # 9.000000 -/* 047614 80046A14 46081002 */ mul.s $f0, $f2, $f8 -/* 047618 80046A18 44815000 */ mtc1 $at, $f10 -/* 04761C 80046A1C 44803800 */ mtc1 $zero, $f7 -/* 047620 80046A20 44803000 */ mtc1 $zero, $f6 -/* 047624 80046A24 46000102 */ mul.s $f4, $f0, $f0 -/* 047628 80046A28 00000000 */ nop -/* 04762C 80046A2C 460A2303 */ div.s $f12, $f4, $f10 -/* 047630 80046A30 E7AC00F0 */ swc1 $f12, 0xf0($sp) -/* 047634 80046A34 C60E002C */ lwc1 $f14, 0x2c($s0) -/* 047638 80046A38 00000000 */ nop -/* 04763C 80046A3C 46007221 */ cvt.d.s $f8, $f14 -/* 047640 80046A40 4628303C */ c.lt.d $f6, $f8 -/* 047644 80046A44 00000000 */ nop -/* 047648 80046A48 45000007 */ bc1f .L80046A68 -/* 04764C 80046A4C 3C01800E */ lui $at, %hi(D_800E63EC) # $at, 0x800e -/* 047650 80046A50 C42B63E8 */ lwc1 $f11, %lo(D_800E63E8)($at) -/* 047654 80046A54 C42A63EC */ lwc1 $f10, %lo(D_800E63EC)($at) -/* 047658 80046A58 46006121 */ cvt.d.s $f4, $f12 -/* 04765C 80046A5C 462A2182 */ mul.d $f6, $f4, $f10 -/* 047660 80046A60 46203220 */ cvt.s.d $f8, $f6 -/* 047664 80046A64 E7A800F0 */ swc1 $f8, 0xf0($sp) -.L80046A68: -/* 047668 80046A68 921801F5 */ lbu $t8, 0x1f5($s0) -/* 04766C 80046A6C 00000000 */ nop -/* 047670 80046A70 13000059 */ beqz $t8, .L80046BD8 -/* 047674 80046A74 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 047678 80046A78 AC20D534 */ sw $zero, %lo(D_8011D534)($at) -/* 04767C 80046A7C 8E19014C */ lw $t9, 0x14c($s0) -/* 047680 80046A80 860201A0 */ lh $v0, 0x1a0($s0) -/* 047684 80046A84 A2000175 */ sb $zero, 0x175($s0) -/* 047688 80046A88 A20001E1 */ sb $zero, 0x1e1($s0) -/* 04768C 80046A8C A20001DB */ sb $zero, 0x1db($s0) -/* 047690 80046A90 A20001E0 */ sb $zero, 0x1e0($s0) -/* 047694 80046A94 872A0000 */ lh $t2, ($t9) -/* 047698 80046A98 304BFFFF */ andi $t3, $v0, 0xffff -/* 04769C 80046A9C 34018001 */ li $at, 32769 -/* 0476A0 80046AA0 014B1823 */ subu $v1, $t2, $t3 -/* 0476A4 80046AA4 0061082A */ slt $at, $v1, $at -/* 0476A8 80046AA8 8FAC0128 */ lw $t4, 0x128($sp) -/* 0476AC 80046AAC 14200003 */ bnez $at, .L80046ABC -/* 0476B0 80046AB0 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 0476B4 80046AB4 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 0476B8 80046AB8 00611821 */ addu $v1, $v1, $at -.L80046ABC: -/* 0476BC 80046ABC 28618000 */ slti $at, $v1, -0x8000 -/* 0476C0 80046AC0 10200002 */ beqz $at, .L80046ACC -/* 0476C4 80046AC4 3401FFFF */ li $at, 65535 -/* 0476C8 80046AC8 00611821 */ addu $v1, $v1, $at -.L80046ACC: -/* 0476CC 80046ACC 006C0019 */ multu $v1, $t4 -/* 0476D0 80046AD0 28610400 */ slti $at, $v1, 0x400 -/* 0476D4 80046AD4 00006812 */ mflo $t5 -/* 0476D8 80046AD8 000D70C3 */ sra $t6, $t5, 3 -/* 0476DC 80046ADC 004E7821 */ addu $t7, $v0, $t6 -/* 0476E0 80046AE0 10200004 */ beqz $at, .L80046AF4 -/* 0476E4 80046AE4 A60F01A0 */ sh $t7, 0x1a0($s0) -/* 0476E8 80046AE8 2861FC01 */ slti $at, $v1, -0x3ff -/* 0476EC 80046AEC 10200005 */ beqz $at, .L80046B04 -/* 0476F0 80046AF0 00000000 */ nop -.L80046AF4: -/* 0476F4 80046AF4 86180000 */ lh $t8, ($s0) -/* 0476F8 80046AF8 2401FFFF */ li $at, -1 -/* 0476FC 80046AFC 17010021 */ bne $t8, $at, .L80046B84 -/* 047700 80046B00 00000000 */ nop -.L80046B04: -/* 047704 80046B04 86190000 */ lh $t9, ($s0) -/* 047708 80046B08 2401FFFF */ li $at, -1 -/* 04770C 80046B0C 1321000B */ beq $t9, $at, .L80046B3C -/* 047710 80046B10 24040107 */ li $a0, 263 -/* 047714 80046B14 8E25000C */ lw $a1, 0xc($s1) -/* 047718 80046B18 8E260010 */ lw $a2, 0x10($s1) -/* 04771C 80046B1C 8E270014 */ lw $a3, 0x14($s1) -/* 047720 80046B20 0C0007AA */ jal func_80001EA8 -/* 047724 80046B24 AFA00010 */ sw $zero, 0x10($sp) -/* 047728 80046B28 02202025 */ move $a0, $s1 -/* 04772C 80046B2C 24050162 */ li $a1, 354 -/* 047730 80046B30 24060008 */ li $a2, 8 -/* 047734 80046B34 0C015C2E */ jal func_800570B8 -/* 047738 80046B38 24070082 */ li $a3, 130 -.L80046B3C: -/* 04773C 80046B3C 0C00322D */ jal func_8000C8B4 -/* 047740 80046B40 2404002D */ li $a0, 45 -/* 047744 80046B44 920B020C */ lbu $t3, 0x20c($s0) -/* 047748 80046B48 240A0002 */ li $t2, 2 -/* 04774C 80046B4C A20201D3 */ sb $v0, 0x1d3($s0) -/* 047750 80046B50 11600005 */ beqz $t3, .L80046B68 -/* 047754 80046B54 A20A0203 */ sb $t2, 0x203($s0) -/* 047758 80046B58 820C0203 */ lb $t4, 0x203($s0) -/* 04775C 80046B5C 00000000 */ nop -/* 047760 80046B60 358D0004 */ ori $t5, $t4, 4 -/* 047764 80046B64 A20D0203 */ sb $t5, 0x203($s0) -.L80046B68: -/* 047768 80046B68 86040000 */ lh $a0, ($s0) -/* 04776C 80046B6C A20001F5 */ sb $zero, 0x1f5($s0) -/* 047770 80046B70 0C01C8D2 */ jal func_80072348 -/* 047774 80046B74 24050008 */ li $a1, 8 -/* 047778 80046B78 C60E002C */ lwc1 $f14, 0x2c($s0) -/* 04777C 80046B7C 10000017 */ b .L80046BDC -/* 047780 80046B80 44800000 */ mtc1 $zero, $f0 -.L80046B84: -/* 047784 80046B84 C624001C */ lwc1 $f4, 0x1c($s1) -/* 047788 80046B88 3C013FE8 */ li $at, 0x3FE80000 # 1.812500 -/* 04778C 80046B8C 44810800 */ mtc1 $at, $f1 -/* 047790 80046B90 44800000 */ mtc1 $zero, $f0 -/* 047794 80046B94 460022A1 */ cvt.d.s $f10, $f4 -/* 047798 80046B98 46205182 */ mul.d $f6, $f10, $f0 -/* 04779C 80046B9C C6240020 */ lwc1 $f4, 0x20($s1) -/* 0477A0 80046BA0 00000000 */ nop -/* 0477A4 80046BA4 460022A1 */ cvt.d.s $f10, $f4 -/* 0477A8 80046BA8 C6240024 */ lwc1 $f4, 0x24($s1) -/* 0477AC 80046BAC 46203220 */ cvt.s.d $f8, $f6 -/* 0477B0 80046BB0 46205182 */ mul.d $f6, $f10, $f0 -/* 0477B4 80046BB4 E628001C */ swc1 $f8, 0x1c($s1) -/* 0477B8 80046BB8 460022A1 */ cvt.d.s $f10, $f4 -/* 0477BC 80046BBC 46203220 */ cvt.s.d $f8, $f6 -/* 0477C0 80046BC0 46205182 */ mul.d $f6, $f10, $f0 -/* 0477C4 80046BC4 E6280020 */ swc1 $f8, 0x20($s1) -/* 0477C8 80046BC8 46203220 */ cvt.s.d $f8, $f6 -/* 0477CC 80046BCC E6280024 */ swc1 $f8, 0x24($s1) -/* 0477D0 80046BD0 C60E002C */ lwc1 $f14, 0x2c($s0) -/* 0477D4 80046BD4 00000000 */ nop -.L80046BD8: -/* 0477D8 80046BD8 44800000 */ mtc1 $zero, $f0 -.L80046BDC: -/* 0477DC 80046BDC 46007087 */ neg.s $f2, $f14 -/* 0477E0 80046BE0 4600103C */ c.lt.s $f2, $f0 -/* 0477E4 80046BE4 44802000 */ mtc1 $zero, $f4 -/* 0477E8 80046BE8 45000002 */ bc1f .L80046BF4 -/* 0477EC 80046BEC 3C01402C */ li $at, 0x402C0000 # 2.687500 -/* 0477F0 80046BF0 46000086 */ mov.s $f2, $f0 -.L80046BF4: -/* 0477F4 80046BF4 44812800 */ mtc1 $at, $f5 -/* 0477F8 80046BF8 460012A1 */ cvt.d.s $f10, $f2 -/* 0477FC 80046BFC 462A203C */ c.lt.d $f4, $f10 -/* 047800 80046C00 00000000 */ nop -/* 047804 80046C04 45000003 */ bc1f .L80046C14 -/* 047808 80046C08 3C014160 */ li $at, 0x41600000 # 14.000000 -/* 04780C 80046C0C 44811000 */ mtc1 $at, $f2 -/* 047810 80046C10 00000000 */ nop -.L80046C14: -/* 047814 80046C14 3C014160 */ li $at, 0x41600000 # 14.000000 -/* 047818 80046C18 44813000 */ mtc1 $at, $f6 -/* 04781C 80046C1C 820E01D4 */ lb $t6, 0x1d4($s0) -/* 047820 80046C20 46061083 */ div.s $f2, $f2, $f6 -/* 047824 80046C24 15C00006 */ bnez $t6, .L80046C40 -/* 047828 80046C28 8FA50128 */ lw $a1, 0x128($sp) -/* 04782C 80046C2C 820F01D5 */ lb $t7, 0x1d5($s0) -/* 047830 80046C30 C7A800F0 */ lwc1 $f8, 0xf0($sp) -/* 047834 80046C34 11E00009 */ beqz $t7, .L80046C5C -/* 047838 80046C38 3C014580 */ li $at, 0x45800000 # 4096.000000 -/* 04783C 80046C3C 8FA50128 */ lw $a1, 0x128($sp) -.L80046C40: -/* 047840 80046C40 86060160 */ lh $a2, 0x160($s0) -/* 047844 80046C44 AFA00010 */ sw $zero, 0x10($sp) -/* 047848 80046C48 02002025 */ move $a0, $s0 -/* 04784C 80046C4C 0C014214 */ jal func_80050850 -/* 047850 80046C50 00003825 */ move $a3, $zero -/* 047854 80046C54 10000015 */ b .L80046CAC -/* 047858 80046C58 820B01D5 */ lb $t3, 0x1d5($s0) -.L80046C5C: -/* 04785C 80046C5C 44812000 */ mtc1 $at, $f4 -/* 047860 80046C60 8FA50128 */ lw $a1, 0x128($sp) -/* 047864 80046C64 46044282 */ mul.s $f10, $f8, $f4 -/* 047868 80046C68 02002025 */ move $a0, $s0 -/* 04786C 80046C6C 00003025 */ move $a2, $zero -/* 047870 80046C70 AFA00010 */ sw $zero, 0x10($sp) -/* 047874 80046C74 46025182 */ mul.s $f6, $f10, $f2 -/* 047878 80046C78 4458F800 */ cfc1 $t8, $31 -/* 04787C 80046C7C 00000000 */ nop -/* 047880 80046C80 37010003 */ ori $at, $t8, 3 -/* 047884 80046C84 38210002 */ xori $at, $at, 2 -/* 047888 80046C88 44C1F800 */ ctc1 $at, $31 -/* 04788C 80046C8C 00000000 */ nop -/* 047890 80046C90 46003224 */ cvt.w.s $f8, $f6 -/* 047894 80046C94 44074000 */ mfc1 $a3, $f8 -/* 047898 80046C98 44D8F800 */ ctc1 $t8, $31 -/* 04789C 80046C9C 0007CC00 */ sll $t9, $a3, 0x10 -/* 0478A0 80046CA0 0C014214 */ jal func_80050850 -/* 0478A4 80046CA4 00193C03 */ sra $a3, $t9, 0x10 -/* 0478A8 80046CA8 820B01D5 */ lb $t3, 0x1d5($s0) -.L80046CAC: -/* 0478AC 80046CAC 44800000 */ mtc1 $zero, $f0 -/* 0478B0 80046CB0 11600010 */ beqz $t3, .L80046CF4 -/* 0478B4 80046CB4 00000000 */ nop -/* 0478B8 80046CB8 86020160 */ lh $v0, 0x160($s0) -/* 0478BC 80046CBC 00000000 */ nop -/* 0478C0 80046CC0 000260C3 */ sra $t4, $v0, 3 -/* 0478C4 80046CC4 004C6823 */ subu $t5, $v0, $t4 -/* 0478C8 80046CC8 A60D0160 */ sh $t5, 0x160($s0) -/* 0478CC 80046CCC 86020160 */ lh $v0, 0x160($s0) -/* 0478D0 80046CD0 00000000 */ nop -/* 0478D4 80046CD4 28410010 */ slti $at, $v0, 0x10 -/* 0478D8 80046CD8 10200004 */ beqz $at, .L80046CEC -/* 0478DC 80046CDC 2841FFF1 */ slti $at, $v0, -0xf -/* 0478E0 80046CE0 14200002 */ bnez $at, .L80046CEC -/* 0478E4 80046CE4 00000000 */ nop -/* 0478E8 80046CE8 A20001D5 */ sb $zero, 0x1d5($s0) -.L80046CEC: -/* 0478EC 80046CEC 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 0478F0 80046CF0 AC20D534 */ sw $zero, %lo(D_8011D534)($at) -.L80046CF4: -/* 0478F4 80046CF4 820201DB */ lb $v0, 0x1db($s0) -/* 0478F8 80046CF8 00000000 */ nop -/* 0478FC 80046CFC 1840000D */ blez $v0, .L80046D34 -/* 047900 80046D00 00000000 */ nop -/* 047904 80046D04 8FA60128 */ lw $a2, 0x128($sp) -/* 047908 80046D08 820E01D4 */ lb $t6, 0x1d4($s0) -/* 04790C 80046D0C 2419000A */ li $t9, 10 -/* 047910 80046D10 01C67821 */ addu $t7, $t6, $a2 -/* 047914 80046D14 A20F01D4 */ sb $t7, 0x1d4($s0) -/* 047918 80046D18 821801D4 */ lb $t8, 0x1d4($s0) -/* 04791C 80046D1C 00000000 */ nop -/* 047920 80046D20 2B01000B */ slti $at, $t8, 0xb -/* 047924 80046D24 14200029 */ bnez $at, .L80046DCC -/* 047928 80046D28 00000000 */ nop -/* 04792C 80046D2C 10000027 */ b .L80046DCC -/* 047930 80046D30 A21901D4 */ sb $t9, 0x1d4($s0) -.L80046D34: -/* 047934 80046D34 0441000D */ bgez $v0, .L80046D6C -/* 047938 80046D38 00000000 */ nop -/* 04793C 80046D3C 820A01D4 */ lb $t2, 0x1d4($s0) -/* 047940 80046D40 8FAB0128 */ lw $t3, 0x128($sp) -/* 047944 80046D44 240EFFF6 */ li $t6, -10 -/* 047948 80046D48 014B6023 */ subu $t4, $t2, $t3 -/* 04794C 80046D4C A20C01D4 */ sb $t4, 0x1d4($s0) -/* 047950 80046D50 820D01D4 */ lb $t5, 0x1d4($s0) -/* 047954 80046D54 00000000 */ nop -/* 047958 80046D58 29A1FFF6 */ slti $at, $t5, -0xa -/* 04795C 80046D5C 1020001B */ beqz $at, .L80046DCC -/* 047960 80046D60 00000000 */ nop -/* 047964 80046D64 10000019 */ b .L80046DCC -/* 047968 80046D68 A20E01D4 */ sb $t6, 0x1d4($s0) -.L80046D6C: -/* 04796C 80046D6C 820301D4 */ lb $v1, 0x1d4($s0) -/* 047970 80046D70 8FAF0128 */ lw $t7, 0x128($sp) -/* 047974 80046D74 04610009 */ bgez $v1, .L80046D9C -/* 047978 80046D78 006FC021 */ addu $t8, $v1, $t7 -/* 04797C 80046D7C A21801D4 */ sb $t8, 0x1d4($s0) -/* 047980 80046D80 821901D4 */ lb $t9, 0x1d4($s0) -/* 047984 80046D84 240A0001 */ li $t2, 1 -/* 047988 80046D88 1B200010 */ blez $t9, .L80046DCC -/* 04798C 80046D8C 00000000 */ nop -/* 047990 80046D90 A20001D4 */ sb $zero, 0x1d4($s0) -/* 047994 80046D94 1000000D */ b .L80046DCC -/* 047998 80046D98 A20A01D5 */ sb $t2, 0x1d5($s0) -.L80046D9C: -/* 04799C 80046D9C 1860000B */ blez $v1, .L80046DCC -/* 0479A0 80046DA0 00000000 */ nop -/* 0479A4 80046DA4 8FAB0128 */ lw $t3, 0x128($sp) -/* 0479A8 80046DA8 240E0001 */ li $t6, 1 -/* 0479AC 80046DAC 006B6023 */ subu $t4, $v1, $t3 -/* 0479B0 80046DB0 A20C01D4 */ sb $t4, 0x1d4($s0) -/* 0479B4 80046DB4 820D01D4 */ lb $t5, 0x1d4($s0) -/* 0479B8 80046DB8 00000000 */ nop -/* 0479BC 80046DBC 05A10003 */ bgez $t5, .L80046DCC -/* 0479C0 80046DC0 00000000 */ nop -/* 0479C4 80046DC4 A20001D4 */ sb $zero, 0x1d4($s0) -/* 0479C8 80046DC8 A20E01D5 */ sb $t6, 0x1d5($s0) -.L80046DCC: -/* 0479CC 80046DCC 820501E2 */ lb $a1, 0x1e2($s0) -/* 0479D0 80046DD0 8FA60128 */ lw $a2, 0x128($sp) -/* 0479D4 80046DD4 10A00011 */ beqz $a1, .L80046E1C -/* 0479D8 80046DD8 28A10003 */ slti $at, $a1, 3 -/* 0479DC 80046DDC 1020000F */ beqz $at, .L80046E1C -/* 0479E0 80046DE0 00000000 */ nop -/* 0479E4 80046DE4 86240002 */ lh $a0, 2($s1) -/* 0479E8 80046DE8 00000000 */ nop -/* 0479EC 80046DEC 00860019 */ multu $a0, $a2 -/* 0479F0 80046DF0 00007812 */ mflo $t7 -/* 0479F4 80046DF4 000FC183 */ sra $t8, $t7, 6 -/* 0479F8 80046DF8 0098C823 */ subu $t9, $a0, $t8 -/* 0479FC 80046DFC A6390002 */ sh $t9, 2($s1) -/* 047A00 80046E00 860501A4 */ lh $a1, 0x1a4($s0) -/* 047A04 80046E04 00000000 */ nop -/* 047A08 80046E08 00A60019 */ multu $a1, $a2 -/* 047A0C 80046E0C 00005012 */ mflo $t2 -/* 047A10 80046E10 000A5983 */ sra $t3, $t2, 6 -/* 047A14 80046E14 00AB6023 */ subu $t4, $a1, $t3 -/* 047A18 80046E18 A60C01A4 */ sh $t4, 0x1a4($s0) -.L80046E1C: -/* 047A1C 80046E1C 820301D4 */ lb $v1, 0x1d4($s0) -/* 047A20 80046E20 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 -/* 047A24 80046E24 10600041 */ beqz $v1, .L80046F2C -/* 047A28 80046E28 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 -/* 047A2C 80046E2C 86020160 */ lh $v0, 0x160($s0) -/* 047A30 80046E30 A20001D5 */ sb $zero, 0x1d5($s0) -/* 047A34 80046E34 18600018 */ blez $v1, .L80046E98 -/* 047A38 80046E38 00404025 */ move $t0, $v0 -/* 047A3C 80046E3C 00036880 */ sll $t5, $v1, 2 -/* 047A40 80046E40 01A36823 */ subu $t5, $t5, $v1 -/* 047A44 80046E44 000D6880 */ sll $t5, $t5, 2 -/* 047A48 80046E48 01A36823 */ subu $t5, $t5, $v1 -/* 047A4C 80046E4C 000D6880 */ sll $t5, $t5, 2 -/* 047A50 80046E50 01A36821 */ addu $t5, $t5, $v1 -/* 047A54 80046E54 000D6880 */ sll $t5, $t5, 2 -/* 047A58 80046E58 01A36823 */ subu $t5, $t5, $v1 -/* 047A5C 80046E5C 01A60019 */ multu $t5, $a2 -/* 047A60 80046E60 2841F000 */ slti $at, $v0, -0x1000 -/* 047A64 80046E64 00007012 */ mflo $t6 -/* 047A68 80046E68 004E7821 */ addu $t7, $v0, $t6 -/* 047A6C 80046E6C 1020000A */ beqz $at, .L80046E98 -/* 047A70 80046E70 A60F0160 */ sh $t7, 0x160($s0) -/* 047A74 80046E74 86180160 */ lh $t8, 0x160($s0) -/* 047A78 80046E78 00000000 */ nop -/* 047A7C 80046E7C 2B01F000 */ slti $at, $t8, -0x1000 -/* 047A80 80046E80 14200005 */ bnez $at, .L80046E98 -/* 047A84 80046E84 00000000 */ nop -/* 047A88 80046E88 821901DB */ lb $t9, 0x1db($s0) -/* 047A8C 80046E8C 820301D4 */ lb $v1, 0x1d4($s0) -/* 047A90 80046E90 272AFFFF */ addiu $t2, $t9, -1 -/* 047A94 80046E94 A20A01DB */ sb $t2, 0x1db($s0) -.L80046E98: -/* 047A98 80046E98 04610019 */ bgez $v1, .L80046F00 -/* 047A9C 80046E9C 3C0A8012 */ lui $t2, %hi(D_8011D528) # $t2, 0x8012 -/* 047AA0 80046EA0 00036080 */ sll $t4, $v1, 2 -/* 047AA4 80046EA4 01836023 */ subu $t4, $t4, $v1 -/* 047AA8 80046EA8 000C6080 */ sll $t4, $t4, 2 -/* 047AAC 80046EAC 01836023 */ subu $t4, $t4, $v1 -/* 047AB0 80046EB0 000C6080 */ sll $t4, $t4, 2 -/* 047AB4 80046EB4 01836021 */ addu $t4, $t4, $v1 -/* 047AB8 80046EB8 000C6080 */ sll $t4, $t4, 2 -/* 047ABC 80046EBC 01836023 */ subu $t4, $t4, $v1 -/* 047AC0 80046EC0 01860019 */ multu $t4, $a2 -/* 047AC4 80046EC4 860B0160 */ lh $t3, 0x160($s0) -/* 047AC8 80046EC8 29011001 */ slti $at, $t0, 0x1001 -/* 047ACC 80046ECC 00006812 */ mflo $t5 -/* 047AD0 80046ED0 016D7023 */ subu $t6, $t3, $t5 -/* 047AD4 80046ED4 1420000A */ bnez $at, .L80046F00 -/* 047AD8 80046ED8 A60E0160 */ sh $t6, 0x160($s0) -/* 047ADC 80046EDC 860F0160 */ lh $t7, 0x160($s0) -/* 047AE0 80046EE0 00000000 */ nop -/* 047AE4 80046EE4 29E11001 */ slti $at, $t7, 0x1001 -/* 047AE8 80046EE8 10200005 */ beqz $at, .L80046F00 -/* 047AEC 80046EEC 00000000 */ nop -/* 047AF0 80046EF0 821801DB */ lb $t8, 0x1db($s0) -/* 047AF4 80046EF4 00000000 */ nop -/* 047AF8 80046EF8 27190001 */ addiu $t9, $t8, 1 -/* 047AFC 80046EFC A21901DB */ sb $t9, 0x1db($s0) -.L80046F00: -/* 047B00 80046F00 8D4AD528 */ lw $t2, %lo(D_8011D528)($t2) -/* 047B04 80046F04 3C01FFFF */ lui $at, (0xFFFF3FFF >> 16) # lui $at, 0xffff -/* 047B08 80046F08 34213FFF */ ori $at, (0xFFFF3FFF & 0xFFFF) # ori $at, $at, 0x3fff -/* 047B0C 80046F0C 01416024 */ and $t4, $t2, $at -/* 047B10 80046F10 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 -/* 047B14 80046F14 AC2CD528 */ sw $t4, %lo(D_8011D528)($at) -/* 047B18 80046F18 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 047B1C 80046F1C AC20D534 */ sw $zero, %lo(D_8011D534)($at) -/* 047B20 80046F20 A20001E1 */ sb $zero, 0x1e1($s0) -/* 047B24 80046F24 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 -/* 047B28 80046F28 AC20D538 */ sw $zero, %lo(D_8011D538)($at) -.L80046F2C: -/* 047B2C 80046F2C 920B01F1 */ lbu $t3, 0x1f1($s0) -/* 047B30 80046F30 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 047B34 80046F34 1160000D */ beqz $t3, .L80046F6C -/* 047B38 80046F38 27A40068 */ addiu $a0, $sp, 0x68 -/* 047B3C 80046F3C 00067080 */ sll $t6, $a2, 2 -/* 047B40 80046F40 0006C880 */ sll $t9, $a2, 2 -/* 047B44 80046F44 860D0160 */ lh $t5, 0x160($s0) -/* 047B48 80046F48 86180162 */ lh $t8, 0x162($s0) -/* 047B4C 80046F4C 01C67021 */ addu $t6, $t6, $a2 -/* 047B50 80046F50 0326C823 */ subu $t9, $t9, $a2 -/* 047B54 80046F54 000E7200 */ sll $t6, $t6, 8 -/* 047B58 80046F58 0019CA40 */ sll $t9, $t9, 9 -/* 047B5C 80046F5C 01AE7821 */ addu $t7, $t5, $t6 -/* 047B60 80046F60 03195021 */ addu $t2, $t8, $t9 -/* 047B64 80046F64 A60F0160 */ sh $t7, 0x160($s0) -/* 047B68 80046F68 A60A0162 */ sh $t2, 0x162($s0) -.L80046F6C: -/* 047B6C 80046F6C 862C0000 */ lh $t4, ($s1) -/* 047B70 80046F70 44812000 */ mtc1 $at, $f4 -/* 047B74 80046F74 A4AC0000 */ sh $t4, ($a1) -/* 047B78 80046F78 862B0002 */ lh $t3, 2($s1) -/* 047B7C 80046F7C A4A00004 */ sh $zero, 4($a1) -/* 047B80 80046F80 E4A0000C */ swc1 $f0, 0xc($a1) -/* 047B84 80046F84 E4A00010 */ swc1 $f0, 0x10($a1) -/* 047B88 80046F88 E4A00014 */ swc1 $f0, 0x14($a1) -/* 047B8C 80046F8C E4A40008 */ swc1 $f4, 8($a1) -/* 047B90 80046F90 0C01BF0C */ jal func_8006FC30 -/* 047B94 80046F94 A4AB0002 */ sh $t3, 2($a1) -/* 047B98 80046F98 44800000 */ mtc1 $zero, $f0 -/* 047B9C 80046F9C 260D0038 */ addiu $t5, $s0, 0x38 -/* 047BA0 80046FA0 260E003C */ addiu $t6, $s0, 0x3c -/* 047BA4 80046FA4 260F0040 */ addiu $t7, $s0, 0x40 -/* 047BA8 80046FA8 44050000 */ mfc1 $a1, $f0 -/* 047BAC 80046FAC 44060000 */ mfc1 $a2, $f0 -/* 047BB0 80046FB0 AFAF0018 */ sw $t7, 0x18($sp) -/* 047BB4 80046FB4 AFAE0014 */ sw $t6, 0x14($sp) -/* 047BB8 80046FB8 AFAD0010 */ sw $t5, 0x10($sp) -/* 047BBC 80046FBC 27A40068 */ addiu $a0, $sp, 0x68 -/* 047BC0 80046FC0 0C01BD93 */ jal func_8006F64C -/* 047BC4 80046FC4 3C073F80 */ lui $a3, 0x3f80 -/* 047BC8 80046FC8 44800000 */ mtc1 $zero, $f0 -/* 047BCC 80046FCC 26180044 */ addiu $t8, $s0, 0x44 -/* 047BD0 80046FD0 26190048 */ addiu $t9, $s0, 0x48 -/* 047BD4 80046FD4 260A004C */ addiu $t2, $s0, 0x4c -/* 047BD8 80046FD8 44050000 */ mfc1 $a1, $f0 -/* 047BDC 80046FDC 44070000 */ mfc1 $a3, $f0 -/* 047BE0 80046FE0 AFAA0018 */ sw $t2, 0x18($sp) -/* 047BE4 80046FE4 AFB90014 */ sw $t9, 0x14($sp) -/* 047BE8 80046FE8 AFB80010 */ sw $t8, 0x10($sp) -/* 047BEC 80046FEC 27A40068 */ addiu $a0, $sp, 0x68 -/* 047BF0 80046FF0 0C01BD93 */ jal func_8006F64C -/* 047BF4 80046FF4 3C063F80 */ lui $a2, 0x3f80 -/* 047BF8 80046FF8 44800000 */ mtc1 $zero, $f0 -/* 047BFC 80046FFC 260C0050 */ addiu $t4, $s0, 0x50 -/* 047C00 80047000 260B0054 */ addiu $t3, $s0, 0x54 -/* 047C04 80047004 260D0058 */ addiu $t5, $s0, 0x58 -/* 047C08 80047008 44060000 */ mfc1 $a2, $f0 -/* 047C0C 8004700C 44070000 */ mfc1 $a3, $f0 -/* 047C10 80047010 AFAD0018 */ sw $t5, 0x18($sp) -/* 047C14 80047014 AFAB0014 */ sw $t3, 0x14($sp) -/* 047C18 80047018 AFAC0010 */ sw $t4, 0x10($sp) -/* 047C1C 8004701C 27A40068 */ addiu $a0, $sp, 0x68 -/* 047C20 80047020 0C01BD93 */ jal func_8006F64C -/* 047C24 80047024 3C053F80 */ lui $a1, 0x3f80 -/* 047C28 80047028 8E0E0148 */ lw $t6, 0x148($s0) -/* 047C2C 8004702C 44805000 */ mtc1 $zero, $f10 -/* 047C30 80047030 15C0000E */ bnez $t6, .L8004706C -/* 047C34 80047034 3C0A8012 */ lui $t2, %hi(D_8011D564) # $t2, 0x8012 -/* 047C38 80047038 A220003B */ sb $zero, 0x3b($s1) -/* 047C3C 8004703C 820201E1 */ lb $v0, 0x1e1($s0) -/* 047C40 80047040 24180028 */ li $t8, 40 -/* 047C44 80047044 00027843 */ sra $t7, $v0, 1 -/* 047C48 80047048 030F1023 */ subu $v0, $t8, $t7 -/* 047C4C 8004704C 04410003 */ bgez $v0, .L8004705C -/* 047C50 80047050 2841004A */ slti $at, $v0, 0x4a -/* 047C54 80047054 00001025 */ move $v0, $zero -/* 047C58 80047058 2841004A */ slti $at, $v0, 0x4a -.L8004705C: -/* 047C5C 8004705C 14200002 */ bnez $at, .L80047068 -/* 047C60 80047060 00000000 */ nop -/* 047C64 80047064 24020049 */ li $v0, 73 -.L80047068: -/* 047C68 80047068 A6220018 */ sh $v0, 0x18($s1) -.L8004706C: -/* 047C6C 8004706C C612002C */ lwc1 $f18, 0x2c($s0) -/* 047C70 80047070 3C014140 */ li $at, 0x41400000 # 12.000000 -/* 047C74 80047074 460A903C */ c.lt.s $f18, $f10 -/* 047C78 80047078 44810000 */ mtc1 $at, $f0 -/* 047C7C 8004707C 45000002 */ bc1f .L80047088 -/* 047C80 80047080 3C0D8012 */ lui $t5, %hi(D_8011D55C) # $t5, 0x8012 -/* 047C84 80047084 46009487 */ neg.s $f18, $f18 -.L80047088: -/* 047C88 80047088 4612003C */ c.lt.s $f0, $f18 -/* 047C8C 8004708C 00004825 */ move $t1, $zero -/* 047C90 80047090 45000002 */ bc1f .L8004709C -/* 047C94 80047094 00003825 */ move $a3, $zero -/* 047C98 80047098 46000486 */ mov.s $f18, $f0 -.L8004709C: -/* 047C9C 8004709C 4459F800 */ cfc1 $t9, $31 -/* 047CA0 800470A0 8D4AD564 */ lw $t2, %lo(D_8011D564)($t2) -/* 047CA4 800470A4 37210003 */ ori $at, $t9, 3 -/* 047CA8 800470A8 38210002 */ xori $at, $at, 2 -/* 047CAC 800470AC 44C1F800 */ ctc1 $at, $31 -/* 047CB0 800470B0 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 047CB4 800470B4 460091A4 */ cvt.w.s $f6, $f18 -/* 047CB8 800470B8 44815800 */ mtc1 $at, $f11 -/* 047CBC 800470BC 44023000 */ mfc1 $v0, $f6 -/* 047CC0 800470C0 44D9F800 */ ctc1 $t9, $31 -/* 047CC4 800470C4 44824000 */ mtc1 $v0, $f8 -/* 047CC8 800470C8 44805000 */ mtc1 $zero, $f10 -/* 047CCC 800470CC 46804120 */ cvt.s.w $f4, $f8 -/* 047CD0 800470D0 00026080 */ sll $t4, $v0, 2 -/* 047CD4 800470D4 014C1821 */ addu $v1, $t2, $t4 -/* 047CD8 800470D8 46049001 */ sub.s $f0, $f18, $f4 -/* 047CDC 800470DC C4640000 */ lwc1 $f4, ($v1) -/* 047CE0 800470E0 460001A1 */ cvt.d.s $f6, $f0 -/* 047CE4 800470E4 46265201 */ sub.d $f8, $f10, $f6 -/* 047CE8 800470E8 3C068012 */ lui $a2, %hi(D_8011D56C) # $a2, 0x8012 -/* 047CEC 800470EC 460022A1 */ cvt.d.s $f10, $f4 -/* 047CF0 800470F0 46285182 */ mul.d $f6, $f10, $f8 -/* 047CF4 800470F4 C4640004 */ lwc1 $f4, 4($v1) -/* 047CF8 800470F8 24C6D56C */ addiu $a2, %lo(D_8011D56C) # addiu $a2, $a2, -0x2a94 -/* 047CFC 800470FC 3C013FE8 */ li $at, 0x3FE80000 # 1.812500 -/* 047D00 80047100 02001825 */ move $v1, $s0 -/* 047D04 80047104 46002282 */ mul.s $f10, $f4, $f0 -/* 047D08 80047108 46005221 */ cvt.d.s $f8, $f10 -/* 047D0C 8004710C 46283100 */ add.d $f4, $f6, $f8 -/* 047D10 80047110 C4CA0000 */ lwc1 $f10, ($a2) -/* 047D14 80047114 44804000 */ mtc1 $zero, $f8 -/* 047D18 80047118 44814800 */ mtc1 $at, $f9 -/* 047D1C 8004711C 462024A0 */ cvt.s.d $f18, $f4 -/* 047D20 80047120 460051A1 */ cvt.d.s $f6, $f10 -/* 047D24 80047124 46283102 */ mul.d $f4, $f6, $f8 -/* 047D28 80047128 462022A0 */ cvt.s.d $f10, $f4 -/* 047D2C 8004712C E4CA0000 */ swc1 $f10, ($a2) -/* 047D30 80047130 820B01E2 */ lb $t3, 0x1e2($s0) -/* 047D34 80047134 00000000 */ nop -/* 047D38 80047138 29610003 */ slti $at, $t3, 3 -/* 047D3C 8004713C 14200010 */ bnez $at, .L80047180 -/* 047D40 80047140 00000000 */ nop -/* 047D44 80047144 C4C60000 */ lwc1 $f6, ($a2) -/* 047D48 80047148 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 047D4C 8004714C 44812800 */ mtc1 $at, $f5 -/* 047D50 80047150 44802000 */ mtc1 $zero, $f4 -/* 047D54 80047154 46003221 */ cvt.d.s $f8, $f6 -/* 047D58 80047158 46244282 */ mul.d $f10, $f8, $f4 -/* 047D5C 8004715C C7A60054 */ lwc1 $f6, 0x54($sp) -/* 047D60 80047160 C7A70050 */ lwc1 $f7, 0x50($sp) -/* 047D64 80047164 C6240020 */ lwc1 $f4, 0x20($s1) -/* 047D68 80047168 46265202 */ mul.d $f8, $f10, $f6 -/* 047D6C 8004716C 460022A1 */ cvt.d.s $f10, $f4 -/* 047D70 80047170 46285181 */ sub.d $f6, $f10, $f8 -/* 047D74 80047174 46203120 */ cvt.s.d $f4, $f6 -/* 047D78 80047178 10000007 */ b .L80047198 -/* 047D7C 8004717C E6240020 */ swc1 $f4, 0x20($s1) -.L80047180: -/* 047D80 80047180 C4CA0000 */ lwc1 $f10, ($a2) -/* 047D84 80047184 C7A8012C */ lwc1 $f8, 0x12c($sp) -/* 047D88 80047188 C6240020 */ lwc1 $f4, 0x20($s1) -/* 047D8C 8004718C 46085182 */ mul.s $f6, $f10, $f8 -/* 047D90 80047190 46062281 */ sub.s $f10, $f4, $f6 -/* 047D94 80047194 E62A0020 */ swc1 $f10, 0x20($s1) -.L80047198: -/* 047D98 80047198 8DADD55C */ lw $t5, %lo(D_8011D55C)($t5) -/* 047D9C 8004719C 2401FFFF */ li $at, -1 -/* 047DA0 800471A0 11A10008 */ beq $t5, $at, .L800471C4 -/* 047DA4 800471A4 24060004 */ li $a2, 4 -/* 047DA8 800471A8 820E01D8 */ lb $t6, 0x1d8($s0) -/* 047DAC 800471AC 00000000 */ nop -/* 047DB0 800471B0 15C00004 */ bnez $t6, .L800471C4 -/* 047DB4 800471B4 00000000 */ nop -/* 047DB8 800471B8 820801E1 */ lb $t0, 0x1e1($s0) -/* 047DBC 800471BC 10000004 */ b .L800471D0 -/* 047DC0 800471C0 00000000 */ nop -.L800471C4: -/* 047DC4 800471C4 3C088012 */ lui $t0, %hi(D_8011D534) # $t0, 0x8012 -/* 047DC8 800471C8 8D08D534 */ lw $t0, %lo(D_8011D534)($t0) -/* 047DCC 800471CC 00000000 */ nop -.L800471D0: -/* 047DD0 800471D0 3C01800E */ lui $at, %hi(D_800E63F0) # $at, 0x800e -/* 047DD4 800471D4 C42263F0 */ lwc1 $f2, %lo(D_800E63F0)($at) -/* 047DD8 800471D8 3C01800E */ lui $at, %hi(D_800E63FC) # $at, 0x800e -/* 047DDC 800471DC E7A200FC */ swc1 $f2, 0xfc($sp) -/* 047DE0 800471E0 C6280020 */ lwc1 $f8, 0x20($s1) -/* 047DE4 800471E4 C42563F8 */ lwc1 $f5, %lo(D_800E63F8)($at) -/* 047DE8 800471E8 C42463FC */ lwc1 $f4, %lo(D_800E63FC)($at) -/* 047DEC 800471EC 46004021 */ cvt.d.s $f0, $f8 -/* 047DF0 800471F0 46240182 */ mul.d $f6, $f0, $f4 -/* 047DF4 800471F4 C7AB0050 */ lwc1 $f11, 0x50($sp) -/* 047DF8 800471F8 C7AA0054 */ lwc1 $f10, 0x54($sp) -/* 047DFC 800471FC 3C0F8012 */ lui $t7, %hi(D_8011D528) # $t7, 0x8012 -/* 047E00 80047200 462A3202 */ mul.d $f8, $f6, $f10 -/* 047E04 80047204 46280101 */ sub.d $f4, $f0, $f8 -/* 047E08 80047208 462021A0 */ cvt.s.d $f6, $f4 -/* 047E0C 8004720C E6260020 */ swc1 $f6, 0x20($s1) -/* 047E10 80047210 8DEFD528 */ lw $t7, %lo(D_8011D528)($t7) -/* 047E14 80047214 00000000 */ nop -/* 047E18 80047218 31F84000 */ andi $t8, $t7, 0x4000 -/* 047E1C 8004721C 13000013 */ beqz $t8, .L8004726C -/* 047E20 80047220 3C198012 */ lui $t9, %hi(D_8011D538) # $t9, 0x8012 -/* 047E24 80047224 8F39D538 */ lw $t9, %lo(D_8011D538)($t9) -/* 047E28 80047228 00000000 */ nop -/* 047E2C 8004722C 2B21FFD8 */ slti $at, $t9, -0x28 -/* 047E30 80047230 1420000F */ bnez $at, .L80047270 -/* 047E34 80047234 8FA40128 */ lw $a0, 0x128($sp) -/* 047E38 80047238 C60A002C */ lwc1 $f10, 0x2c($s0) -/* 047E3C 8004723C 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 047E40 80047240 44812800 */ mtc1 $at, $f5 -/* 047E44 80047244 44802000 */ mtc1 $zero, $f4 -/* 047E48 80047248 46005221 */ cvt.d.s $f8, $f10 -/* 047E4C 8004724C 4628203E */ c.le.d $f4, $f8 -/* 047E50 80047250 3C014180 */ li $at, 0x41800000 # 16.000000 -/* 047E54 80047254 45000006 */ bc1f .L80047270 -/* 047E58 80047258 8FA40128 */ lw $a0, 0x128($sp) -/* 047E5C 8004725C 44813000 */ mtc1 $at, $f6 -/* 047E60 80047260 00000000 */ nop -/* 047E64 80047264 46061282 */ mul.s $f10, $f2, $f6 -/* 047E68 80047268 E7AA00FC */ swc1 $f10, 0xfc($sp) -.L8004726C: -/* 047E6C 8004726C 8FA40128 */ lw $a0, 0x128($sp) -.L80047270: -/* 047E70 80047270 000850C0 */ sll $t2, $t0, 3 -/* 047E74 80047274 01440019 */ multu $t2, $a0 -/* 047E78 80047278 3C028012 */ lui $v0, %hi(D_8011D538) # $v0, 0x8012 -/* 047E7C 8004727C 8C42D538 */ lw $v0, %lo(D_8011D538)($v0) -/* 047E80 80047280 00004025 */ move $t0, $zero -/* 047E84 80047284 00006012 */ mflo $t4 -/* 047E88 80047288 448C4000 */ mtc1 $t4, $f8 -/* 047E8C 8004728C 00000000 */ nop -/* 047E90 80047290 468040A0 */ cvt.s.w $f2, $f8 -/* 047E94 80047294 0441001C */ bgez $v0, .L80047308 -/* 047E98 80047298 46001386 */ mov.s $f14, $f2 -/* 047E9C 8004729C 00025823 */ negu $t3, $v0 -/* 047EA0 800472A0 448B2000 */ mtc1 $t3, $f4 -/* 047EA4 800472A4 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 047EA8 800472A8 46802420 */ cvt.s.w $f16, $f4 -/* 047EAC 800472AC 44813800 */ mtc1 $at, $f7 -/* 047EB0 800472B0 3C01405C */ li $at, 0x405C0000 # 3.437500 -/* 047EB4 800472B4 44815800 */ mtc1 $at, $f11 -/* 047EB8 800472B8 44805000 */ mtc1 $zero, $f10 -/* 047EBC 800472BC 46008021 */ cvt.d.s $f0, $f16 -/* 047EC0 800472C0 00000000 */ nop -/* 047EC4 800472C4 462A0203 */ div.d $f8, $f0, $f10 -/* 047EC8 800472C8 44803000 */ mtc1 $zero, $f6 -/* 047ECC 800472CC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 047ED0 800472D0 460012A1 */ cvt.d.s $f10, $f2 -/* 047ED4 800472D4 46283100 */ add.d $f4, $f6, $f8 -/* 047ED8 800472D8 44814800 */ mtc1 $at, $f9 -/* 047EDC 800472DC 46245182 */ mul.d $f6, $f10, $f4 -/* 047EE0 800472E0 3C01800E */ lui $at, %hi(D_800E6404) # $at, 0x800e -/* 047EE4 800472E4 C42B6400 */ lwc1 $f11, %lo(D_800E6400)($at) -/* 047EE8 800472E8 C42A6404 */ lwc1 $f10, %lo(D_800E6404)($at) -/* 047EEC 800472EC 44804000 */ mtc1 $zero, $f8 -/* 047EF0 800472F0 462A0103 */ div.d $f4, $f0, $f10 -/* 047EF4 800472F4 462033A0 */ cvt.s.d $f14, $f6 -/* 047EF8 800472F8 460092A1 */ cvt.d.s $f10, $f18 -/* 047EFC 800472FC 46244181 */ sub.d $f6, $f8, $f4 -/* 047F00 80047300 46265202 */ mul.d $f8, $f10, $f6 -/* 047F04 80047304 462044A0 */ cvt.s.d $f18, $f8 -.L80047308: -/* 047F08 80047308 3C018012 */ lui $at, %hi(D_8011D570) # $at, 0x8012 -/* 047F0C 8004730C C424D570 */ lwc1 $f4, %lo(D_8011D570)($at) -/* 047F10 80047310 860D01A0 */ lh $t5, 0x1a0($s0) -/* 047F14 80047314 46047382 */ mul.s $f14, $f14, $f4 -/* 047F18 80047318 820C01E2 */ lb $t4, 0x1e2($s0) -/* 047F1C 8004731C 444EF800 */ cfc1 $t6, $31 -/* 047F20 80047320 00000000 */ nop -/* 047F24 80047324 35C10003 */ ori $at, $t6, 3 -/* 047F28 80047328 38210002 */ xori $at, $at, 2 -/* 047F2C 8004732C 44C1F800 */ ctc1 $at, $31 -/* 047F30 80047330 00000000 */ nop -/* 047F34 80047334 460072A4 */ cvt.w.s $f10, $f14 -/* 047F38 80047338 44195000 */ mfc1 $t9, $f10 -/* 047F3C 8004733C 44CEF800 */ ctc1 $t6, $31 -/* 047F40 80047340 01B95023 */ subu $t2, $t5, $t9 -/* 047F44 80047344 1580001A */ bnez $t4, .L800473B0 -/* 047F48 80047348 A60A01A0 */ sh $t2, 0x1a0($s0) -/* 047F4C 8004734C C60800C0 */ lwc1 $f8, 0xc0($s0) -/* 047F50 80047350 44803800 */ mtc1 $zero, $f7 -/* 047F54 80047354 44803000 */ mtc1 $zero, $f6 -/* 047F58 80047358 46004121 */ cvt.d.s $f4, $f8 -/* 047F5C 8004735C 46243032 */ c.eq.d $f6, $f4 -/* 047F60 80047360 00000000 */ nop -/* 047F64 80047364 45000012 */ bc1f .L800473B0 -/* 047F68 80047368 00000000 */ nop -/* 047F6C 8004736C C62A0020 */ lwc1 $f10, 0x20($s1) -/* 047F70 80047370 44804000 */ mtc1 $zero, $f8 -/* 047F74 80047374 24180019 */ li $t8, 25 -/* 047F78 80047378 4608503C */ c.lt.s $f10, $f8 -/* 047F7C 8004737C 00000000 */ nop -/* 047F80 80047380 45000005 */ bc1f .L80047398 -/* 047F84 80047384 00000000 */ nop -/* 047F88 80047388 820B01E0 */ lb $t3, 0x1e0($s0) -/* 047F8C 8004738C 00000000 */ nop -/* 047F90 80047390 01647021 */ addu $t6, $t3, $a0 -/* 047F94 80047394 A20E01E0 */ sb $t6, 0x1e0($s0) -.L80047398: -/* 047F98 80047398 820F01E0 */ lb $t7, 0x1e0($s0) -/* 047F9C 8004739C 00000000 */ nop -/* 047FA0 800473A0 29E1001A */ slti $at, $t7, 0x1a -/* 047FA4 800473A4 14200002 */ bnez $at, .L800473B0 -/* 047FA8 800473A8 00000000 */ nop -/* 047FAC 800473AC A21801E0 */ sb $t8, 0x1e0($s0) -.L800473B0: -/* 047FB0 800473B0 820501E2 */ lb $a1, 0x1e2($s0) -/* 047FB4 800473B4 240400FF */ li $a0, 255 -.L800473B8: -/* 047FB8 800473B8 906201DC */ lbu $v0, 0x1dc($v1) -/* 047FBC 800473BC 25080001 */ addiu $t0, $t0, 1 -/* 047FC0 800473C0 1082000B */ beq $a0, $v0, .L800473F0 -/* 047FC4 800473C4 0122082A */ slt $at, $t1, $v0 -/* 047FC8 800473C8 10200004 */ beqz $at, .L800473DC -/* 047FCC 800473CC 00000000 */ nop -/* 047FD0 800473D0 00024E00 */ sll $t1, $v0, 0x18 -/* 047FD4 800473D4 00096E03 */ sra $t5, $t1, 0x18 -/* 047FD8 800473D8 01A04825 */ move $t1, $t5 -.L800473DC: -/* 047FDC 800473DC 14C20005 */ bne $a2, $v0, .L800473F4 -/* 047FE0 800473E0 29010004 */ slti $at, $t0, 4 -/* 047FE4 800473E4 24E70001 */ addiu $a3, $a3, 1 -/* 047FE8 800473E8 0007CE00 */ sll $t9, $a3, 0x18 -/* 047FEC 800473EC 00193E03 */ sra $a3, $t9, 0x18 -.L800473F0: -/* 047FF0 800473F0 29010004 */ slti $at, $t0, 4 -.L800473F4: -/* 047FF4 800473F4 1420FFF0 */ bnez $at, .L800473B8 -/* 047FF8 800473F8 24630001 */ addiu $v1, $v1, 1 -/* 047FFC 800473FC 860C0000 */ lh $t4, ($s0) -/* 048000 80047400 00000000 */ nop -/* 048004 80047404 1580000D */ bnez $t4, .L8004743C -/* 048008 80047408 00000000 */ nop -/* 04800C 8004740C 10A0000B */ beqz $a1, .L8004743C -/* 048010 80047410 2401000C */ li $at, 12 -/* 048014 80047414 15210009 */ bne $t1, $at, .L8004743C -/* 048018 80047418 3C0B8012 */ lui $t3, %hi(D_8011D52C) # $t3, 0x8012 -/* 04801C 8004741C 8D6BD52C */ lw $t3, %lo(D_8011D52C)($t3) -/* 048020 80047420 240F0002 */ li $t7, 2 -/* 048024 80047424 316E2000 */ andi $t6, $t3, 0x2000 -/* 048028 80047428 11C00004 */ beqz $t6, .L8004743C -/* 04802C 8004742C 3C018012 */ lui $at, %hi(D_8011D582) # $at, 0x8012 -/* 048030 80047430 A02FD582 */ sb $t7, %lo(D_8011D582)($at) -/* 048034 80047434 820501E2 */ lb $a1, 0x1e2($s0) -/* 048038 80047438 00000000 */ nop -.L8004743C: -/* 04803C 8004743C 14A00008 */ bnez $a1, .L80047460 -/* 048040 80047440 00000000 */ nop -/* 048044 80047444 44803000 */ mtc1 $zero, $f6 -/* 048048 80047448 C60400C0 */ lwc1 $f4, 0xc0($s0) -/* 04804C 8004744C 00000000 */ nop -/* 048050 80047450 4604303C */ c.lt.s $f6, $f4 -/* 048054 80047454 00000000 */ nop -/* 048058 80047458 4500004F */ bc1f .L80047598 -/* 04805C 8004745C 02202025 */ move $a0, $s1 -.L80047460: -/* 048060 80047460 820201E0 */ lb $v0, 0x1e0($s0) -/* 048064 80047464 00000000 */ nop -/* 048068 80047468 1040004B */ beqz $v0, .L80047598 -/* 04806C 8004746C 02202025 */ move $a0, $s1 -/* 048070 80047470 10A0001E */ beqz $a1, .L800474EC -/* 048074 80047474 3C188012 */ lui $t8, %hi(D_8011D540) # $t8, 0x8012 -/* 048078 80047478 8F18D540 */ lw $t8, %lo(D_8011D540)($t8) -/* 04807C 8004747C 24010064 */ li $at, 100 -/* 048080 80047480 1301002A */ beq $t8, $at, .L8004752C -/* 048084 80047484 00000000 */ nop -/* 048088 80047488 860D0000 */ lh $t5, ($s0) -/* 04808C 8004748C 2401FFFF */ li $at, -1 -/* 048090 80047490 11A10026 */ beq $t5, $at, .L8004752C -/* 048094 80047494 28410006 */ slti $at, $v0, 6 -/* 048098 80047498 14200024 */ bnez $at, .L8004752C -/* 04809C 8004749C 240400AE */ li $a0, 174 -/* 0480A0 800474A0 2605021C */ addiu $a1, $s0, 0x21c -/* 0480A4 800474A4 A3A700AD */ sb $a3, 0xad($sp) -/* 0480A8 800474A8 A3A900AF */ sb $t1, 0xaf($sp) -/* 0480AC 800474AC 0C000741 */ jal func_80001D04 -/* 0480B0 800474B0 E7B20104 */ swc1 $f18, 0x104($sp) -/* 0480B4 800474B4 820601E0 */ lb $a2, 0x1e0($s0) -/* 0480B8 800474B8 8E05021C */ lw $a1, 0x21c($s0) -/* 0480BC 800474BC 0006C840 */ sll $t9, $a2, 1 -/* 0480C0 800474C0 27260032 */ addiu $a2, $t9, 0x32 -/* 0480C4 800474C4 30CA00FF */ andi $t2, $a2, 0xff -/* 0480C8 800474C8 01403025 */ move $a2, $t2 -/* 0480CC 800474CC 0C0007EE */ jal func_80001FB8 -/* 0480D0 800474D0 240400AE */ li $a0, 174 -/* 0480D4 800474D4 83A700AD */ lb $a3, 0xad($sp) -/* 0480D8 800474D8 83A900AF */ lb $t1, 0xaf($sp) -/* 0480DC 800474DC C7B20104 */ lwc1 $f18, 0x104($sp) -/* 0480E0 800474E0 820201E0 */ lb $v0, 0x1e0($s0) -/* 0480E4 800474E4 10000012 */ b .L80047530 -/* 0480E8 800474E8 44825000 */ mtc1 $v0, $f10 -.L800474EC: -/* 0480EC 800474EC 8E0C0148 */ lw $t4, 0x148($s0) -/* 0480F0 800474F0 02202025 */ move $a0, $s1 -/* 0480F4 800474F4 1580000D */ bnez $t4, .L8004752C -/* 0480F8 800474F8 240500AF */ li $a1, 175 -/* 0480FC 800474FC A3A700AD */ sb $a3, 0xad($sp) -/* 048100 80047500 A3A900AF */ sb $t1, 0xaf($sp) -/* 048104 80047504 0C015C12 */ jal func_80057048 -/* 048108 80047508 E7B20104 */ swc1 $f18, 0x104($sp) -/* 04810C 8004750C 8E2B0074 */ lw $t3, 0x74($s1) -/* 048110 80047510 83A700AD */ lb $a3, 0xad($sp) -/* 048114 80047514 83A900AF */ lb $t1, 0xaf($sp) -/* 048118 80047518 C7B20104 */ lwc1 $f18, 0x104($sp) -/* 04811C 8004751C 356E0030 */ ori $t6, $t3, 0x30 -/* 048120 80047520 AE2E0074 */ sw $t6, 0x74($s1) -/* 048124 80047524 820201E0 */ lb $v0, 0x1e0($s0) -/* 048128 80047528 00000000 */ nop -.L8004752C: -/* 04812C 8004752C 44825000 */ mtc1 $v0, $f10 -.L80047530: -/* 048130 80047530 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 048134 80047534 468050A0 */ cvt.s.w $f2, $f10 -/* 048138 80047538 44814000 */ mtc1 $at, $f8 -/* 04813C 8004753C 44803000 */ mtc1 $zero, $f6 -/* 048140 80047540 46081081 */ sub.s $f2, $f2, $f8 -/* 048144 80047544 4602303C */ c.lt.s $f6, $f2 -/* 048148 80047548 00000000 */ nop -/* 04814C 8004754C 45000010 */ bc1f .L80047590 -/* 048150 80047550 00000000 */ nop -/* 048154 80047554 8E0F0148 */ lw $t7, 0x148($s0) -/* 048158 80047558 3C01800E */ lui $at, %hi(D_800E640C) # $at, 0x800e -/* 04815C 8004755C 15E0000C */ bnez $t7, .L80047590 -/* 048160 80047560 00000000 */ nop -/* 048164 80047564 C42B6408 */ lwc1 $f11, %lo(D_800E6408)($at) -/* 048168 80047568 C42A640C */ lwc1 $f10, %lo(D_800E640C)($at) -/* 04816C 8004756C 46001121 */ cvt.d.s $f4, $f2 -/* 048170 80047570 462A2202 */ mul.d $f8, $f4, $f10 -/* 048174 80047574 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 048178 80047578 44813800 */ mtc1 $at, $f7 -/* 04817C 8004757C 44803000 */ mtc1 $zero, $f6 -/* 048180 80047580 00000000 */ nop -/* 048184 80047584 46283101 */ sub.d $f4, $f6, $f8 -/* 048188 80047588 462022A0 */ cvt.s.d $f10, $f4 -/* 04818C 8004758C E60A0090 */ swc1 $f10, 0x90($s0) -.L80047590: -/* 048190 80047590 A20001E0 */ sb $zero, 0x1e0($s0) -/* 048194 80047594 02202025 */ move $a0, $s1 -.L80047598: -/* 048198 80047598 02002825 */ move $a1, $s0 -/* 04819C 8004759C A3A700AD */ sb $a3, 0xad($sp) -/* 0481A0 800475A0 A3A900AF */ sb $t1, 0xaf($sp) -/* 0481A4 800475A4 0C015C88 */ jal func_80057220 -/* 0481A8 800475A8 E7B20104 */ swc1 $f18, 0x104($sp) -/* 0481AC 800475AC 3C01800E */ lui $at, %hi(D_800E6414) # $at, 0x800e -/* 0481B0 800475B0 C4296410 */ lwc1 $f9, %lo(D_800E6410)($at) -/* 0481B4 800475B4 C4286414 */ lwc1 $f8, %lo(D_800E6414)($at) -/* 0481B8 800475B8 460001A1 */ cvt.d.s $f6, $f0 -/* 0481BC 800475BC 46283102 */ mul.d $f4, $f6, $f8 -/* 0481C0 800475C0 C7B20104 */ lwc1 $f18, 0x104($sp) -/* 0481C4 800475C4 820301D3 */ lb $v1, 0x1d3($s0) -/* 0481C8 800475C8 460092A1 */ cvt.d.s $f10, $f18 -/* 0481CC 800475CC 83A700AD */ lb $a3, 0xad($sp) -/* 0481D0 800475D0 46245182 */ mul.d $f6, $f10, $f4 -/* 0481D4 800475D4 83A900AF */ lb $t1, 0xaf($sp) -/* 0481D8 800475D8 18600019 */ blez $v1, .L80047640 -/* 0481DC 800475DC 462034A0 */ cvt.s.d $f18, $f6 -/* 0481E0 800475E0 3C028012 */ lui $v0, %hi(D_8011D540) # $v0, 0x8012 -/* 0481E4 800475E4 8C42D540 */ lw $v0, %lo(D_8011D540)($v0) -/* 0481E8 800475E8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0481EC 800475EC 14400018 */ bnez $v0, .L80047650 -/* 0481F0 800475F0 00000000 */ nop -/* 0481F4 800475F4 44802800 */ mtc1 $zero, $f5 -/* 0481F8 800475F8 44802000 */ mtc1 $zero, $f4 -/* 0481FC 800475FC 460091A1 */ cvt.d.s $f6, $f18 -/* 048200 80047600 44814000 */ mtc1 $at, $f8 -/* 048204 80047604 44805000 */ mtc1 $zero, $f10 -/* 048208 80047608 46262032 */ c.eq.d $f4, $f6 -/* 04820C 8004760C E7A800F4 */ swc1 $f8, 0xf4($sp) -/* 048210 80047610 45010004 */ bc1t .L80047624 -/* 048214 80047614 E7AA00F0 */ swc1 $f10, 0xf0($sp) -/* 048218 80047618 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 04821C 8004761C 44819000 */ mtc1 $at, $f18 -/* 048220 80047620 00000000 */ nop -.L80047624: -/* 048224 80047624 8FB80128 */ lw $t8, 0x128($sp) -/* 048228 80047628 3C028012 */ lui $v0, %hi(D_8011D540) # $v0, 0x8012 -/* 04822C 8004762C 00786823 */ subu $t5, $v1, $t8 -/* 048230 80047630 A20D01D3 */ sb $t5, 0x1d3($s0) -/* 048234 80047634 8C42D540 */ lw $v0, %lo(D_8011D540)($v0) -/* 048238 80047638 10000005 */ b .L80047650 -/* 04823C 8004763C 00000000 */ nop -.L80047640: -/* 048240 80047640 A20001D3 */ sb $zero, 0x1d3($s0) -/* 048244 80047644 3C028012 */ lui $v0, %hi(D_8011D540) # $v0, 0x8012 -/* 048248 80047648 8C42D540 */ lw $v0, %lo(D_8011D540)($v0) -/* 04824C 8004764C 00000000 */ nop -.L80047650: -/* 048250 80047650 10400003 */ beqz $v0, .L80047660 -/* 048254 80047654 00000000 */ nop -/* 048258 80047658 44809000 */ mtc1 $zero, $f18 -/* 04825C 8004765C 00000000 */ nop -.L80047660: -/* 048260 80047660 10E00012 */ beqz $a3, .L800476AC -/* 048264 80047664 24040020 */ li $a0, 32 -/* 048268 80047668 A3A700AD */ sb $a3, 0xad($sp) -/* 04826C 8004766C A3A900AF */ sb $t1, 0xaf($sp) -/* 048270 80047670 0C0078A7 */ jal func_8001E29C -/* 048274 80047674 E7B20104 */ swc1 $f18, 0x104($sp) -/* 048278 80047678 83A700AD */ lb $a3, 0xad($sp) -/* 04827C 8004767C C7A800FC */ lwc1 $f8, 0xfc($sp) -/* 048280 80047680 0007C880 */ sll $t9, $a3, 2 -/* 048284 80047684 00595021 */ addu $t2, $v0, $t9 -/* 048288 80047688 C5400000 */ lwc1 $f0, ($t2) -/* 04828C 8004768C C7B20104 */ lwc1 $f18, 0x104($sp) -/* 048290 80047690 46004283 */ div.s $f10, $f8, $f0 -/* 048294 80047694 44802000 */ mtc1 $zero, $f4 -/* 048298 80047698 83A900AF */ lb $t1, 0xaf($sp) -/* 04829C 8004769C 46009482 */ mul.s $f18, $f18, $f0 -/* 0482A0 800476A0 E7AA00FC */ swc1 $f10, 0xfc($sp) -/* 0482A4 800476A4 A2000175 */ sb $zero, 0x175($s0) -/* 0482A8 800476A8 E6040030 */ swc1 $f4, 0x30($s0) -.L800476AC: -/* 0482AC 800476AC 820C01D3 */ lb $t4, 0x1d3($s0) -/* 0482B0 800476B0 00000000 */ nop -/* 0482B4 800476B4 1580001D */ bnez $t4, .L8004772C -/* 0482B8 800476B8 24010003 */ li $at, 3 -/* 0482BC 800476BC 1521001B */ bne $t1, $at, .L8004772C -/* 0482C0 800476C0 2404002D */ li $a0, 45 -/* 0482C4 800476C4 0C00322D */ jal func_8000C8B4 -/* 0482C8 800476C8 E7B20104 */ swc1 $f18, 0x104($sp) -/* 0482CC 800476CC 920E020C */ lbu $t6, 0x20c($s0) -/* 0482D0 800476D0 C7B20104 */ lwc1 $f18, 0x104($sp) -/* 0482D4 800476D4 240B0002 */ li $t3, 2 -/* 0482D8 800476D8 A20201D3 */ sb $v0, 0x1d3($s0) -/* 0482DC 800476DC 11C00005 */ beqz $t6, .L800476F4 -/* 0482E0 800476E0 A20B0203 */ sb $t3, 0x203($s0) -/* 0482E4 800476E4 820F0203 */ lb $t7, 0x203($s0) -/* 0482E8 800476E8 00000000 */ nop -/* 0482EC 800476EC 35F80004 */ ori $t8, $t7, 4 -/* 0482F0 800476F0 A2180203 */ sb $t8, 0x203($s0) -.L800476F4: -/* 0482F4 800476F4 02202025 */ move $a0, $s1 -/* 0482F8 800476F8 24050107 */ li $a1, 263 -/* 0482FC 800476FC 0C015C12 */ jal func_80057048 -/* 048300 80047700 E7B20104 */ swc1 $f18, 0x104($sp) -/* 048304 80047704 02202025 */ move $a0, $s1 -/* 048308 80047708 24050162 */ li $a1, 354 -/* 04830C 8004770C 24060008 */ li $a2, 8 -/* 048310 80047710 0C015C2E */ jal func_800570B8 -/* 048314 80047714 24070082 */ li $a3, 130 -/* 048318 80047718 86040000 */ lh $a0, ($s0) -/* 04831C 8004771C 0C01C8D2 */ jal func_80072348 -/* 048320 80047720 24050008 */ li $a1, 8 -/* 048324 80047724 C7B20104 */ lwc1 $f18, 0x104($sp) -/* 048328 80047728 00000000 */ nop -.L8004772C: -/* 04832C 8004772C C62E0024 */ lwc1 $f14, 0x24($s1) -/* 048330 80047730 C620001C */ lwc1 $f0, 0x1c($s1) -/* 048334 80047734 460E7182 */ mul.s $f6, $f14, $f14 -/* 048338 80047738 E7B20104 */ swc1 $f18, 0x104($sp) -/* 04833C 8004773C 46000202 */ mul.s $f8, $f0, $f0 -/* 048340 80047740 0C0326B4 */ jal sqrtf -/* 048344 80047744 46083300 */ add.s $f12, $f6, $f8 -/* 048348 80047748 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 04834C 8004774C 44815800 */ mtc1 $at, $f11 -/* 048350 80047750 44805000 */ mtc1 $zero, $f10 -/* 048354 80047754 46000121 */ cvt.d.s $f4, $f0 -/* 048358 80047758 4624503C */ c.lt.d $f10, $f4 -/* 04835C 8004775C C7B20104 */ lwc1 $f18, 0x104($sp) -/* 048360 80047760 4500007F */ bc1f .L80047960 -/* 048364 80047764 46000086 */ mov.s $f2, $f0 -/* 048368 80047768 C62C001C */ lwc1 $f12, 0x1c($s1) -/* 04836C 8004776C C62E0024 */ lwc1 $f14, 0x24($s1) -/* 048370 80047770 E7B20104 */ swc1 $f18, 0x104($sp) -/* 048374 80047774 0C01C1D4 */ jal func_80070750 -/* 048378 80047778 E7A200D0 */ swc1 $f2, 0xd0($sp) -/* 04837C 8004777C 34058000 */ li $a1, 32768 -/* 048380 80047780 C7A200D0 */ lwc1 $f2, 0xd0($sp) -/* 048384 80047784 00456821 */ addu $t5, $v0, $a1 -/* 048388 80047788 C7B20104 */ lwc1 $f18, 0x104($sp) -/* 04838C 8004778C A60D0168 */ sh $t5, 0x168($s0) -/* 048390 80047790 86190168 */ lh $t9, 0x168($s0) -/* 048394 80047794 86040196 */ lh $a0, 0x196($s0) -/* 048398 80047798 00B95023 */ subu $t2, $a1, $t9 -/* 04839C 8004779C 314CFFFF */ andi $t4, $t2, 0xffff -/* 0483A0 800477A0 308BFFFF */ andi $t3, $a0, 0xffff -/* 0483A4 800477A4 34098001 */ li $t1, 32769 -/* 0483A8 800477A8 018B1823 */ subu $v1, $t4, $t3 -/* 0483AC 800477AC 0069082A */ slt $at, $v1, $t1 -/* 0483B0 800477B0 14200004 */ bnez $at, .L800477C4 -/* 0483B4 800477B4 46001321 */ cvt.d.s $f12, $f2 -/* 0483B8 800477B8 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 0483BC 800477BC 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 0483C0 800477C0 00611821 */ addu $v1, $v1, $at -.L800477C4: -/* 0483C4 800477C4 28618000 */ slti $at, $v1, -0x8000 -/* 0483C8 800477C8 10200002 */ beqz $at, .L800477D4 -/* 0483CC 800477CC 3401FFFF */ li $at, 65535 -/* 0483D0 800477D0 00611821 */ addu $v1, $v1, $at -.L800477D4: -/* 0483D4 800477D4 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 0483D8 800477D8 44813800 */ mtc1 $at, $f7 -/* 0483DC 800477DC 44803000 */ mtc1 $zero, $f6 -/* 0483E0 800477E0 3C014020 */ li $at, 0x40200000 # 2.500000 -/* 0483E4 800477E4 46266201 */ sub.d $f8, $f12, $f6 -/* 0483E8 800477E8 44815800 */ mtc1 $at, $f11 -/* 0483EC 800477EC 46204020 */ cvt.s.d $f0, $f8 -/* 0483F0 800477F0 44805000 */ mtc1 $zero, $f10 -/* 0483F4 800477F4 46000121 */ cvt.d.s $f4, $f0 -/* 0483F8 800477F8 4624503C */ c.lt.d $f10, $f4 -/* 0483FC 800477FC 44804000 */ mtc1 $zero, $f8 -/* 048400 80047800 44832000 */ mtc1 $v1, $f4 -/* 048404 80047804 45000003 */ bc1f .L80047814 -/* 048408 80047808 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 04840C 8004780C 44810000 */ mtc1 $at, $f0 -/* 048410 80047810 00000000 */ nop -.L80047814: -/* 048414 80047814 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 048418 80047818 44814800 */ mtc1 $at, $f9 -/* 04841C 8004781C 460001A1 */ cvt.d.s $f6, $f0 -/* 048420 80047820 46283282 */ mul.d $f10, $f6, $f8 -/* 048424 80047824 468021A0 */ cvt.s.w $f6, $f4 -/* 048428 80047828 3C013FE8 */ li $at, 0x3FE80000 # 1.812500 -/* 04842C 8004782C 44812800 */ mtc1 $at, $f5 -/* 048430 80047830 44802000 */ mtc1 $zero, $f4 -/* 048434 80047834 46205020 */ cvt.s.d $f0, $f10 -/* 048438 80047838 8FA80128 */ lw $t0, 0x128($sp) -/* 04843C 8004783C 46003202 */ mul.s $f8, $f6, $f0 -/* 048440 80047840 860201A0 */ lh $v0, 0x1a0($s0) -/* 048444 80047844 44800000 */ mtc1 $zero, $f0 -/* 048448 80047848 304CFFFF */ andi $t4, $v0, 0xffff -/* 04844C 8004784C 460042A1 */ cvt.d.s $f10, $f8 -/* 048450 80047850 46245182 */ mul.d $f6, $f10, $f4 -/* 048454 80047854 444EF800 */ cfc1 $t6, $31 -/* 048458 80047858 00000000 */ nop -/* 04845C 8004785C 35C10003 */ ori $at, $t6, 3 -/* 048460 80047860 38210002 */ xori $at, $at, 2 -/* 048464 80047864 44C1F800 */ ctc1 $at, $31 -/* 048468 80047868 00000000 */ nop -/* 04846C 8004786C 46203224 */ cvt.w.d $f8, $f6 -/* 048470 80047870 44034000 */ mfc1 $v1, $f8 -/* 048474 80047874 44CEF800 */ ctc1 $t6, $31 -/* 048478 80047878 00680019 */ multu $v1, $t0 -/* 04847C 8004787C 00007812 */ mflo $t7 -/* 048480 80047880 000FC103 */ sra $t8, $t7, 4 -/* 048484 80047884 00986821 */ addu $t5, $a0, $t8 -/* 048488 80047888 A60D0196 */ sh $t5, 0x196($s0) -/* 04848C 8004788C 86190196 */ lh $t9, 0x196($s0) -/* 048490 80047890 00000000 */ nop -/* 048494 80047894 00B95023 */ subu $t2, $a1, $t9 -/* 048498 80047898 014C1823 */ subu $v1, $t2, $t4 -/* 04849C 8004789C 0069082A */ slt $at, $v1, $t1 -/* 0484A0 800478A0 14200003 */ bnez $at, .L800478B0 -/* 0484A4 800478A4 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 0484A8 800478A8 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 0484AC 800478AC 00611821 */ addu $v1, $v1, $at -.L800478B0: -/* 0484B0 800478B0 28618000 */ slti $at, $v1, -0x8000 -/* 0484B4 800478B4 10200002 */ beqz $at, .L800478C0 -/* 0484B8 800478B8 3401FFFF */ li $at, 65535 -/* 0484BC 800478BC 00611821 */ addu $v1, $v1, $at -.L800478C0: -/* 0484C0 800478C0 3C014024 */ li $at, 0x40240000 # 2.562500 -/* 0484C4 800478C4 44810800 */ mtc1 $at, $f1 -/* 0484C8 800478C8 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 0484CC 800478CC 462C003C */ c.lt.d $f0, $f12 -/* 0484D0 800478D0 00000000 */ nop -/* 0484D4 800478D4 45000005 */ bc1f .L800478EC -/* 0484D8 800478D8 00000000 */ nop -/* 0484DC 800478DC 44811000 */ mtc1 $at, $f2 -/* 0484E0 800478E0 00000000 */ nop -/* 0484E4 800478E4 46001321 */ cvt.d.s $f12, $f2 -/* 0484E8 800478E8 00000000 */ nop -.L800478EC: -/* 0484EC 800478EC 46206283 */ div.d $f10, $f12, $f0 -/* 0484F0 800478F0 44832000 */ mtc1 $v1, $f4 -/* 0484F4 800478F4 3C048012 */ lui $a0, %hi(D_8011D528) # $a0, 0x8012 -/* 0484F8 800478F8 468021A0 */ cvt.s.w $f6, $f4 -/* 0484FC 800478FC 8C84D528 */ lw $a0, %lo(D_8011D528)($a0) -/* 048500 80047900 00000000 */ nop -/* 048504 80047904 308E8000 */ andi $t6, $a0, 0x8000 -/* 048508 80047908 308F0010 */ andi $t7, $a0, 0x10 -/* 04850C 8004790C 462050A0 */ cvt.s.d $f2, $f10 -/* 048510 80047910 46023202 */ mul.s $f8, $f6, $f2 -/* 048514 80047914 444BF800 */ cfc1 $t3, $31 -/* 048518 80047918 00000000 */ nop -/* 04851C 8004791C 35610003 */ ori $at, $t3, 3 -/* 048520 80047920 38210002 */ xori $at, $at, 2 -/* 048524 80047924 44C1F800 */ ctc1 $at, $31 -/* 048528 80047928 00000000 */ nop -/* 04852C 8004792C 460042A4 */ cvt.w.s $f10, $f8 -/* 048530 80047930 44035000 */ mfc1 $v1, $f10 -/* 048534 80047934 44CBF800 */ ctc1 $t3, $31 -/* 048538 80047938 15C00003 */ bnez $t6, .L80047948 -/* 04853C 8004793C 0003C040 */ sll $t8, $v1, 1 -/* 048540 80047940 11E00002 */ beqz $t7, .L8004794C -/* 048544 80047944 00000000 */ nop -.L80047948: -/* 048548 80047948 03001825 */ move $v1, $t8 -.L8004794C: -/* 04854C 8004794C 00680019 */ multu $v1, $t0 -/* 048550 80047950 00006812 */ mflo $t5 -/* 048554 80047954 000DC9C3 */ sra $t9, $t5, 7 -/* 048558 80047958 00595021 */ addu $t2, $v0, $t9 -/* 04855C 8004795C A60A01A0 */ sh $t2, 0x1a0($s0) -.L80047960: -/* 048560 80047960 86040196 */ lh $a0, 0x196($s0) -/* 048564 80047964 860C01A0 */ lh $t4, 0x1a0($s0) -/* 048568 80047968 34058000 */ li $a1, 32768 -/* 04856C 8004796C 308EFFFF */ andi $t6, $a0, 0xffff -/* 048570 80047970 00AC5823 */ subu $t3, $a1, $t4 -/* 048574 80047974 34098001 */ li $t1, 32769 -/* 048578 80047978 016E1823 */ subu $v1, $t3, $t6 -/* 04857C 8004797C 8FA80128 */ lw $t0, 0x128($sp) -/* 048580 80047980 0069082A */ slt $at, $v1, $t1 -/* 048584 80047984 14200003 */ bnez $at, .L80047994 -/* 048588 80047988 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 04858C 8004798C 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 048590 80047990 00611821 */ addu $v1, $v1, $at -.L80047994: -/* 048594 80047994 28618000 */ slti $at, $v1, -0x8000 -/* 048598 80047998 10200002 */ beqz $at, .L800479A4 -/* 04859C 8004799C 3401FFFF */ li $at, 65535 -/* 0485A0 800479A0 00611821 */ addu $v1, $v1, $at -.L800479A4: -/* 0485A4 800479A4 44832000 */ mtc1 $v1, $f4 -/* 0485A8 800479A8 3C013FFC */ li $at, 0x3FFC0000 # 1.968750 -/* 0485AC 800479AC 468021A0 */ cvt.s.w $f6, $f4 -/* 0485B0 800479B0 44815800 */ mtc1 $at, $f11 -/* 0485B4 800479B4 44805000 */ mtc1 $zero, $f10 -/* 0485B8 800479B8 46003221 */ cvt.d.s $f8, $f6 -/* 0485BC 800479BC 462A4102 */ mul.d $f4, $f8, $f10 -/* 0485C0 800479C0 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0485C4 800479C4 44813000 */ mtc1 $at, $f6 -/* 0485C8 800479C8 920A01F5 */ lbu $t2, 0x1f5($s0) -/* 0485CC 800479CC 46003221 */ cvt.d.s $f8, $f6 -/* 0485D0 800479D0 46282282 */ mul.d $f10, $f4, $f8 -/* 0485D4 800479D4 444FF800 */ cfc1 $t7, $31 -/* 0485D8 800479D8 00000000 */ nop -/* 0485DC 800479DC 35E10003 */ ori $at, $t7, 3 -/* 0485E0 800479E0 38210002 */ xori $at, $at, 2 -/* 0485E4 800479E4 44C1F800 */ ctc1 $at, $31 -/* 0485E8 800479E8 00000000 */ nop -/* 0485EC 800479EC 462051A4 */ cvt.w.d $f6, $f10 -/* 0485F0 800479F0 44033000 */ mfc1 $v1, $f6 -/* 0485F4 800479F4 44CFF800 */ ctc1 $t7, $31 -/* 0485F8 800479F8 00680019 */ multu $v1, $t0 -/* 0485FC 800479FC 0000C012 */ mflo $t8 -/* 048600 80047A00 00186983 */ sra $t5, $t8, 6 -/* 048604 80047A04 008DC821 */ addu $t9, $a0, $t5 -/* 048608 80047A08 15400120 */ bnez $t2, .L80047E8C -/* 04860C 80047A0C A6190196 */ sh $t9, 0x196($s0) -/* 048610 80047A10 3C0C8012 */ lui $t4, %hi(D_8011D55C) # $t4, 0x8012 -/* 048614 80047A14 8D8CD55C */ lw $t4, %lo(D_8011D55C)($t4) -/* 048618 80047A18 2401FFFF */ li $at, -1 -/* 04861C 80047A1C 15810038 */ bne $t4, $at, .L80047B00 -/* 048620 80047A20 3C048012 */ lui $a0, %hi(D_8011D528) # $a0, 0x8012 -/* 048624 80047A24 820B01D8 */ lb $t3, 0x1d8($s0) -/* 048628 80047A28 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 04862C 80047A2C 15600034 */ bnez $t3, .L80047B00 -/* 048630 80047A30 00000000 */ nop -/* 048634 80047A34 C6040030 */ lwc1 $f4, 0x30($s0) -/* 048638 80047A38 44815800 */ mtc1 $at, $f11 -/* 04863C 80047A3C 44805000 */ mtc1 $zero, $f10 -/* 048640 80047A40 46002221 */ cvt.d.s $f8, $f4 -/* 048644 80047A44 462A4182 */ mul.d $f6, $f8, $f10 -/* 048648 80047A48 3C01800E */ lui $at, %hi(D_800E641C) # $at, 0x800e -/* 04864C 80047A4C C4296418 */ lwc1 $f9, %lo(D_800E6418)($at) -/* 048650 80047A50 C428641C */ lwc1 $f8, %lo(D_800E641C)($at) -/* 048654 80047A54 3C01800E */ lui $at, %hi(D_800E6424) # $at, 0x800e -/* 048658 80047A58 46203420 */ cvt.s.d $f16, $f6 -/* 04865C 80047A5C 3C0E8012 */ lui $t6, %hi(D_8011D528) # $t6, 0x8012 -/* 048660 80047A60 46008121 */ cvt.d.s $f4, $f16 -/* 048664 80047A64 46282282 */ mul.d $f10, $f4, $f8 -/* 048668 80047A68 44802000 */ mtc1 $zero, $f4 -/* 04866C 80047A6C 44802800 */ mtc1 $zero, $f5 -/* 048670 80047A70 46205020 */ cvt.s.d $f0, $f10 -/* 048674 80047A74 460001A1 */ cvt.d.s $f6, $f0 -/* 048678 80047A78 4624303C */ c.lt.d $f6, $f4 -/* 04867C 80047A7C 46000306 */ mov.s $f12, $f0 -/* 048680 80047A80 45000002 */ bc1f .L80047A8C -/* 048684 80047A84 00000000 */ nop -/* 048688 80047A88 46000307 */ neg.s $f12, $f0 -.L80047A8C: -/* 04868C 80047A8C C4296420 */ lwc1 $f9, %lo(D_800E6420)($at) -/* 048690 80047A90 C4286424 */ lwc1 $f8, %lo(D_800E6424)($at) -/* 048694 80047A94 460062A1 */ cvt.d.s $f10, $f12 -/* 048698 80047A98 462A403C */ c.lt.d $f8, $f10 -/* 04869C 80047A9C 00000000 */ nop -/* 0486A0 80047AA0 45000005 */ bc1f .L80047AB8 -/* 0486A4 80047AA4 00000000 */ nop -/* 0486A8 80047AA8 8DCED528 */ lw $t6, %lo(D_8011D528)($t6) -/* 0486AC 80047AAC 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 -/* 0486B0 80047AB0 35CF0010 */ ori $t7, $t6, 0x10 -/* 0486B4 80047AB4 AC2FD528 */ sw $t7, %lo(D_8011D528)($at) -.L80047AB8: -/* 0486B8 80047AB8 C6040038 */ lwc1 $f4, 0x38($s0) -/* 0486BC 80047ABC C626001C */ lwc1 $f6, 0x1c($s1) -/* 0486C0 80047AC0 460C2202 */ mul.s $f8, $f4, $f12 -/* 0486C4 80047AC4 C6240020 */ lwc1 $f4, 0x20($s1) -/* 0486C8 80047AC8 46083280 */ add.s $f10, $f6, $f8 -/* 0486CC 80047ACC E62A001C */ swc1 $f10, 0x1c($s1) -/* 0486D0 80047AD0 C606003C */ lwc1 $f6, 0x3c($s0) -/* 0486D4 80047AD4 00000000 */ nop -/* 0486D8 80047AD8 460C3202 */ mul.s $f8, $f6, $f12 -/* 0486DC 80047ADC C6260024 */ lwc1 $f6, 0x24($s1) -/* 0486E0 80047AE0 46082280 */ add.s $f10, $f4, $f8 -/* 0486E4 80047AE4 E62A0020 */ swc1 $f10, 0x20($s1) -/* 0486E8 80047AE8 C6040040 */ lwc1 $f4, 0x40($s0) -/* 0486EC 80047AEC 00000000 */ nop -/* 0486F0 80047AF0 460C2202 */ mul.s $f8, $f4, $f12 -/* 0486F4 80047AF4 46083280 */ add.s $f10, $f6, $f8 -/* 0486F8 80047AF8 10000039 */ b .L80047BE0 -/* 0486FC 80047AFC E62A0024 */ swc1 $f10, 0x24($s1) -.L80047B00: -/* 048700 80047B00 3C01800E */ lui $at, %hi(D_800E642C) # $at, 0x800e -/* 048704 80047B04 C6040030 */ lwc1 $f4, 0x30($s0) -/* 048708 80047B08 C4276428 */ lwc1 $f7, %lo(D_800E6428)($at) -/* 04870C 80047B0C C426642C */ lwc1 $f6, %lo(D_800E642C)($at) -/* 048710 80047B10 46002021 */ cvt.d.s $f0, $f4 -/* 048714 80047B14 46260202 */ mul.d $f8, $f0, $f6 -/* 048718 80047B18 8C84D528 */ lw $a0, %lo(D_8011D528)($a0) -/* 04871C 80047B1C 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 048720 80047B20 30980010 */ andi $t8, $a0, 0x10 -/* 048724 80047B24 1300002E */ beqz $t8, .L80047BE0 -/* 048728 80047B28 46204420 */ cvt.s.d $f16, $f8 -/* 04872C 80047B2C 3C028012 */ lui $v0, %hi(D_8011D534) # $v0, 0x8012 -/* 048730 80047B30 44815000 */ mtc1 $at, $f10 -/* 048734 80047B34 8C42D534 */ lw $v0, %lo(D_8011D534)($v0) -/* 048738 80047B38 460A8402 */ mul.s $f16, $f16, $f10 -/* 04873C 80047B3C 2841FFD9 */ slti $at, $v0, -0x27 -/* 048740 80047B40 1420000C */ bnez $at, .L80047B74 -/* 048744 80047B44 308D4000 */ andi $t5, $a0, 0x4000 -/* 048748 80047B48 28410028 */ slti $at, $v0, 0x28 -/* 04874C 80047B4C 10200009 */ beqz $at, .L80047B74 -/* 048750 80047B50 3C01800E */ lui $at, %hi(D_800E6434) # $at, 0x800e -/* 048754 80047B54 C7A400F4 */ lwc1 $f4, 0xf4($sp) -/* 048758 80047B58 C4296430 */ lwc1 $f9, %lo(D_800E6430)($at) -/* 04875C 80047B5C C4286434 */ lwc1 $f8, %lo(D_800E6434)($at) -/* 048760 80047B60 460021A1 */ cvt.d.s $f6, $f4 -/* 048764 80047B64 46283282 */ mul.d $f10, $f6, $f8 -/* 048768 80047B68 46205120 */ cvt.s.d $f4, $f10 -/* 04876C 80047B6C 10000016 */ b .L80047BC8 -/* 048770 80047B70 E7A400F4 */ swc1 $f4, 0xf4($sp) -.L80047B74: -/* 048774 80047B74 3C014004 */ li $at, 0x40040000 # 2.062500 -/* 048778 80047B78 44813800 */ mtc1 $at, $f7 -/* 04877C 80047B7C 44803000 */ mtc1 $zero, $f6 -/* 048780 80047B80 C7AA00F4 */ lwc1 $f10, 0xf4($sp) -/* 048784 80047B84 4620303C */ c.lt.d $f6, $f0 -/* 048788 80047B88 3C01C004 */ li $at, 0xC0040000 # -2.062500 -/* 04878C 80047B8C 45010007 */ bc1t .L80047BAC -/* 048790 80047B90 00000000 */ nop -/* 048794 80047B94 44814800 */ mtc1 $at, $f9 -/* 048798 80047B98 44804000 */ mtc1 $zero, $f8 -/* 04879C 80047B9C 00000000 */ nop -/* 0487A0 80047BA0 4628003C */ c.lt.d $f0, $f8 -/* 0487A4 80047BA4 00000000 */ nop -/* 0487A8 80047BA8 45000007 */ bc1f .L80047BC8 -.L80047BAC: -/* 0487AC 80047BAC 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 -/* 0487B0 80047BB0 44813800 */ mtc1 $at, $f7 -/* 0487B4 80047BB4 44803000 */ mtc1 $zero, $f6 -/* 0487B8 80047BB8 46005121 */ cvt.d.s $f4, $f10 -/* 0487BC 80047BBC 46262202 */ mul.d $f8, $f4, $f6 -/* 0487C0 80047BC0 462042A0 */ cvt.s.d $f10, $f8 -/* 0487C4 80047BC4 E7AA00F4 */ swc1 $f10, 0xf4($sp) -.L80047BC8: -/* 0487C8 80047BC8 11A00005 */ beqz $t5, .L80047BE0 -/* 0487CC 80047BCC 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 0487D0 80047BD0 44812000 */ mtc1 $at, $f4 -/* 0487D4 80047BD4 00000000 */ nop -/* 0487D8 80047BD8 46048402 */ mul.s $f16, $f16, $f4 -/* 0487DC 80047BDC 00000000 */ nop -.L80047BE0: -/* 0487E0 80047BE0 C6080050 */ lwc1 $f8, 0x50($s0) -/* 0487E4 80047BE4 C626001C */ lwc1 $f6, 0x1c($s1) -/* 0487E8 80047BE8 46104282 */ mul.s $f10, $f8, $f16 -/* 0487EC 80047BEC C6280020 */ lwc1 $f8, 0x20($s1) -/* 0487F0 80047BF0 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 0487F4 80047BF4 3C0A8012 */ lui $t2, %hi(D_8011D584) # $t2, 0x8012 -/* 0487F8 80047BF8 460A3101 */ sub.s $f4, $f6, $f10 -/* 0487FC 80047BFC 3C0B8012 */ lui $t3, %hi(D_8011D528) # $t3, 0x8012 -/* 048800 80047C00 E624001C */ swc1 $f4, 0x1c($s1) -/* 048804 80047C04 C6060054 */ lwc1 $f6, 0x54($s0) -/* 048808 80047C08 00000000 */ nop -/* 04880C 80047C0C 46103282 */ mul.s $f10, $f6, $f16 -/* 048810 80047C10 C6260024 */ lwc1 $f6, 0x24($s1) -/* 048814 80047C14 460A4101 */ sub.s $f4, $f8, $f10 -/* 048818 80047C18 E6240020 */ swc1 $f4, 0x20($s1) -/* 04881C 80047C1C C6080058 */ lwc1 $f8, 0x58($s0) -/* 048820 80047C20 00000000 */ nop -/* 048824 80047C24 46104282 */ mul.s $f10, $f8, $f16 -/* 048828 80047C28 460A3101 */ sub.s $f4, $f6, $f10 -/* 04882C 80047C2C E6240024 */ swc1 $f4, 0x24($s1) -/* 048830 80047C30 C7A800F4 */ lwc1 $f8, 0xf4($sp) -/* 048834 80047C34 00000000 */ nop -/* 048838 80047C38 46124182 */ mul.s $f6, $f8, $f18 -/* 04883C 80047C3C E7A600F4 */ swc1 $f6, 0xf4($sp) -/* 048840 80047C40 C60A0038 */ lwc1 $f10, 0x38($s0) -/* 048844 80047C44 C628001C */ lwc1 $f8, 0x1c($s1) -/* 048848 80047C48 46065102 */ mul.s $f4, $f10, $f6 -/* 04884C 80047C4C 46044281 */ sub.s $f10, $f8, $f4 -/* 048850 80047C50 E62A001C */ swc1 $f10, 0x1c($s1) -/* 048854 80047C54 C606003C */ lwc1 $f6, 0x3c($s0) -/* 048858 80047C58 C7A800F4 */ lwc1 $f8, 0xf4($sp) -/* 04885C 80047C5C C62A0020 */ lwc1 $f10, 0x20($s1) -/* 048860 80047C60 46083102 */ mul.s $f4, $f6, $f8 -/* 048864 80047C64 46045181 */ sub.s $f6, $f10, $f4 -/* 048868 80047C68 E6260020 */ swc1 $f6, 0x20($s1) -/* 04886C 80047C6C C6080040 */ lwc1 $f8, 0x40($s0) -/* 048870 80047C70 C7AA00F4 */ lwc1 $f10, 0xf4($sp) -/* 048874 80047C74 C6260024 */ lwc1 $f6, 0x24($s1) -/* 048878 80047C78 460A4102 */ mul.s $f4, $f8, $f10 -/* 04887C 80047C7C 46043201 */ sub.s $f8, $f6, $f4 -/* 048880 80047C80 44813000 */ mtc1 $at, $f6 -/* 048884 80047C84 E6280024 */ swc1 $f8, 0x24($s1) -/* 048888 80047C88 46069103 */ div.s $f4, $f18, $f6 -/* 04888C 80047C8C C7AA00F0 */ lwc1 $f10, 0xf0($sp) -/* 048890 80047C90 00000000 */ nop -/* 048894 80047C94 46045202 */ mul.s $f8, $f10, $f4 -/* 048898 80047C98 E7A800F0 */ swc1 $f8, 0xf0($sp) -/* 04889C 80047C9C C6060038 */ lwc1 $f6, 0x38($s0) -/* 0488A0 80047CA0 C624001C */ lwc1 $f4, 0x1c($s1) -/* 0488A4 80047CA4 46083282 */ mul.s $f10, $f6, $f8 -/* 0488A8 80047CA8 460A2180 */ add.s $f6, $f4, $f10 -/* 0488AC 80047CAC E626001C */ swc1 $f6, 0x1c($s1) -/* 0488B0 80047CB0 C7A400F0 */ lwc1 $f4, 0xf0($sp) -/* 0488B4 80047CB4 C608003C */ lwc1 $f8, 0x3c($s0) -/* 0488B8 80047CB8 C6260020 */ lwc1 $f6, 0x20($s1) -/* 0488BC 80047CBC 46044282 */ mul.s $f10, $f8, $f4 -/* 0488C0 80047CC0 460A3200 */ add.s $f8, $f6, $f10 -/* 0488C4 80047CC4 E6280020 */ swc1 $f8, 0x20($s1) -/* 0488C8 80047CC8 C7A600F0 */ lwc1 $f6, 0xf0($sp) -/* 0488CC 80047CCC C6040040 */ lwc1 $f4, 0x40($s0) -/* 0488D0 80047CD0 C6280024 */ lwc1 $f8, 0x24($s1) -/* 0488D4 80047CD4 46062282 */ mul.s $f10, $f4, $f6 -/* 0488D8 80047CD8 460A4100 */ add.s $f4, $f8, $f10 -/* 0488DC 80047CDC E6240024 */ swc1 $f4, 0x24($s1) -/* 0488E0 80047CE0 821901E2 */ lb $t9, 0x1e2($s0) -/* 0488E4 80047CE4 00000000 */ nop -/* 0488E8 80047CE8 13200031 */ beqz $t9, .L80047DB0 -/* 0488EC 80047CEC 00000000 */ nop -/* 0488F0 80047CF0 814AD584 */ lb $t2, %lo(D_8011D584)($t2) -/* 0488F4 80047CF4 3C0C8012 */ lui $t4, %hi(D_8011D540) # $t4, 0x8012 -/* 0488F8 80047CF8 1540002D */ bnez $t2, .L80047DB0 -/* 0488FC 80047CFC 00000000 */ nop -/* 048900 80047D00 8D8CD540 */ lw $t4, %lo(D_8011D540)($t4) -/* 048904 80047D04 C7A8012C */ lwc1 $f8, 0x12c($sp) -/* 048908 80047D08 15800029 */ bnez $t4, .L80047DB0 -/* 04890C 80047D0C 3C018012 */ lui $at, %hi(D_8011D56C) # $at, 0x8012 -/* 048910 80047D10 C426D56C */ lwc1 $f6, %lo(D_8011D56C)($at) -/* 048914 80047D14 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 048918 80047D18 46083282 */ mul.s $f10, $f6, $f8 -/* 04891C 80047D1C 44803000 */ mtc1 $zero, $f6 -/* 048920 80047D20 44813800 */ mtc1 $at, $f7 -/* 048924 80047D24 46005121 */ cvt.d.s $f4, $f10 -/* 048928 80047D28 46262202 */ mul.d $f8, $f4, $f6 -/* 04892C 80047D2C C60A009C */ lwc1 $f10, 0x9c($s0) -/* 048930 80047D30 C60400A0 */ lwc1 $f4, 0xa0($s0) -/* 048934 80047D34 C6060038 */ lwc1 $f6, 0x38($s0) -/* 048938 80047D38 462040A0 */ cvt.s.d $f2, $f8 -/* 04893C 80047D3C 46025002 */ mul.s $f0, $f10, $f2 -/* 048940 80047D40 C60A0050 */ lwc1 $f10, 0x50($s0) -/* 048944 80047D44 46041082 */ mul.s $f2, $f2, $f4 -/* 048948 80047D48 00000000 */ nop -/* 04894C 80047D4C 46003202 */ mul.s $f8, $f6, $f0 -/* 048950 80047D50 00000000 */ nop -/* 048954 80047D54 46025102 */ mul.s $f4, $f10, $f2 -/* 048958 80047D58 C62A001C */ lwc1 $f10, 0x1c($s1) -/* 04895C 80047D5C 46044180 */ add.s $f6, $f8, $f4 -/* 048960 80047D60 46065200 */ add.s $f8, $f10, $f6 -/* 048964 80047D64 E628001C */ swc1 $f8, 0x1c($s1) -/* 048968 80047D68 C604003C */ lwc1 $f4, 0x3c($s0) -/* 04896C 80047D6C C6060054 */ lwc1 $f6, 0x54($s0) -/* 048970 80047D70 46002282 */ mul.s $f10, $f4, $f0 -/* 048974 80047D74 00000000 */ nop -/* 048978 80047D78 46023202 */ mul.s $f8, $f6, $f2 -/* 04897C 80047D7C C6260020 */ lwc1 $f6, 0x20($s1) -/* 048980 80047D80 46085100 */ add.s $f4, $f10, $f8 -/* 048984 80047D84 46043280 */ add.s $f10, $f6, $f4 -/* 048988 80047D88 E62A0020 */ swc1 $f10, 0x20($s1) -/* 04898C 80047D8C C6080040 */ lwc1 $f8, 0x40($s0) -/* 048990 80047D90 C6040058 */ lwc1 $f4, 0x58($s0) -/* 048994 80047D94 46004182 */ mul.s $f6, $f8, $f0 -/* 048998 80047D98 00000000 */ nop -/* 04899C 80047D9C 46022282 */ mul.s $f10, $f4, $f2 -/* 0489A0 80047DA0 C6240024 */ lwc1 $f4, 0x24($s1) -/* 0489A4 80047DA4 460A3200 */ add.s $f8, $f6, $f10 -/* 0489A8 80047DA8 46082180 */ add.s $f6, $f4, $f8 -/* 0489AC 80047DAC E6260024 */ swc1 $f6, 0x24($s1) -.L80047DB0: -/* 0489B0 80047DB0 C60E002C */ lwc1 $f14, 0x2c($s0) -/* 0489B4 80047DB4 44805000 */ mtc1 $zero, $f10 -/* 0489B8 80047DB8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0489BC 80047DBC 460A703C */ c.lt.s $f14, $f10 -/* 0489C0 80047DC0 44812000 */ mtc1 $at, $f4 -/* 0489C4 80047DC4 460E7302 */ mul.s $f12, $f14, $f14 -/* 0489C8 80047DC8 45000002 */ bc1f .L80047DD4 -/* 0489CC 80047DCC 00000000 */ nop -/* 0489D0 80047DD0 46006307 */ neg.s $f12, $f12 -.L80047DD4: -/* 0489D4 80047DD4 4604603C */ c.lt.s $f12, $f4 -/* 0489D8 80047DD8 C7A400FC */ lwc1 $f4, 0xfc($sp) -/* 0489DC 80047DDC 4500000D */ bc1f .L80047E14 -/* 0489E0 80047DE0 00000000 */ nop -/* 0489E4 80047DE4 8D6BD528 */ lw $t3, %lo(D_8011D528)($t3) -/* 0489E8 80047DE8 C7A800FC */ lwc1 $f8, 0xfc($sp) -/* 0489EC 80047DEC 316E8000 */ andi $t6, $t3, 0x8000 -/* 0489F0 80047DF0 15C00008 */ bnez $t6, .L80047E14 -/* 0489F4 80047DF4 00000000 */ nop -/* 0489F8 80047DF8 46087182 */ mul.s $f6, $f14, $f8 -/* 0489FC 80047DFC 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 048A00 80047E00 44815000 */ mtc1 $at, $f10 -/* 048A04 80047E04 00000000 */ nop -/* 048A08 80047E08 460A3402 */ mul.s $f16, $f6, $f10 -/* 048A0C 80047E0C 10000004 */ b .L80047E20 -/* 048A10 80047E10 C6060038 */ lwc1 $f6, 0x38($s0) -.L80047E14: -/* 048A14 80047E14 46046402 */ mul.s $f16, $f12, $f4 -/* 048A18 80047E18 00000000 */ nop -/* 048A1C 80047E1C C6060038 */ lwc1 $f6, 0x38($s0) -.L80047E20: -/* 048A20 80047E20 C628001C */ lwc1 $f8, 0x1c($s1) -/* 048A24 80047E24 46103282 */ mul.s $f10, $f6, $f16 -/* 048A28 80047E28 C6260020 */ lwc1 $f6, 0x20($s1) -/* 048A2C 80047E2C 3C018012 */ lui $at, %hi(D_8011D578) # $at, 0x8012 -/* 048A30 80047E30 460A4101 */ sub.s $f4, $f8, $f10 -/* 048A34 80047E34 E624001C */ swc1 $f4, 0x1c($s1) -/* 048A38 80047E38 C608003C */ lwc1 $f8, 0x3c($s0) -/* 048A3C 80047E3C 00000000 */ nop -/* 048A40 80047E40 46104282 */ mul.s $f10, $f8, $f16 -/* 048A44 80047E44 C6280024 */ lwc1 $f8, 0x24($s1) -/* 048A48 80047E48 460A3101 */ sub.s $f4, $f6, $f10 -/* 048A4C 80047E4C E6240020 */ swc1 $f4, 0x20($s1) -/* 048A50 80047E50 C6060040 */ lwc1 $f6, 0x40($s0) -/* 048A54 80047E54 00000000 */ nop -/* 048A58 80047E58 46103282 */ mul.s $f10, $f6, $f16 -/* 048A5C 80047E5C 460A4101 */ sub.s $f4, $f8, $f10 -/* 048A60 80047E60 E6240024 */ swc1 $f4, 0x24($s1) -/* 048A64 80047E64 820F0175 */ lb $t7, 0x175($s0) -/* 048A68 80047E68 00000000 */ nop -/* 048A6C 80047E6C 11E00007 */ beqz $t7, .L80047E8C -/* 048A70 80047E70 00000000 */ nop -/* 048A74 80047E74 C426D578 */ lwc1 $f6, %lo(D_8011D578)($at) -/* 048A78 80047E78 3C018012 */ li $at, 0x80120000 # -0.000000 -/* 048A7C 80047E7C E626001C */ swc1 $f6, 0x1c($s1) -/* 048A80 80047E80 C428D57C */ lwc1 $f8, %lo(D_8011D57C)($at) -/* 048A84 80047E84 00000000 */ nop -/* 048A88 80047E88 E6280024 */ swc1 $f8, 0x24($s1) -.L80047E8C: -/* 048A8C 80047E8C AE00010C */ sw $zero, 0x10c($s0) -/* 048A90 80047E90 3C188012 */ lui $t8, %hi(D_8011D554) # $t8, 0x8012 -/* 048A94 80047E94 8F18D554 */ lw $t8, %lo(D_8011D554)($t8) -/* 048A98 80047E98 860201A2 */ lh $v0, 0x1a2($s0) -/* 048A9C 80047E9C 860C01A0 */ lh $t4, 0x1a0($s0) -/* 048AA0 80047EA0 03026823 */ subu $t5, $t8, $v0 -/* 048AA4 80047EA4 000DC8C3 */ sra $t9, $t5, 3 -/* 048AA8 80047EA8 00595021 */ addu $t2, $v0, $t9 -/* 048AAC 80047EAC A60A01A2 */ sh $t2, 0x1a2($s0) -/* 048AB0 80047EB0 860B01A2 */ lh $t3, 0x1a2($s0) -/* 048AB4 80047EB4 3C0F8012 */ lui $t7, %hi(D_8011D558) # $t7, 0x8012 -/* 048AB8 80047EB8 018B7021 */ addu $t6, $t4, $t3 -/* 048ABC 80047EBC A62E0000 */ sh $t6, ($s1) -/* 048AC0 80047EC0 860301A6 */ lh $v1, 0x1a6($s0) -/* 048AC4 80047EC4 8DEFD558 */ lw $t7, %lo(D_8011D558)($t7) -/* 048AC8 80047EC8 860A01A4 */ lh $t2, 0x1a4($s0) -/* 048ACC 80047ECC 01E3C023 */ subu $t8, $t7, $v1 -/* 048AD0 80047ED0 001868C3 */ sra $t5, $t8, 3 -/* 048AD4 80047ED4 006DC821 */ addu $t9, $v1, $t5 -/* 048AD8 80047ED8 A61901A6 */ sh $t9, 0x1a6($s0) -/* 048ADC 80047EDC 860C01A6 */ lh $t4, 0x1a6($s0) -/* 048AE0 80047EE0 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 048AE4 80047EE4 014C5821 */ addu $t3, $t2, $t4 -/* 048AE8 80047EE8 A62B0004 */ sh $t3, 4($s1) -/* 048AEC 80047EEC 820401D2 */ lb $a0, 0x1d2($s0) -/* 048AF0 80047EF0 44812000 */ mtc1 $at, $f4 -/* 048AF4 80047EF4 18800003 */ blez $a0, .L80047F04 -/* 048AF8 80047EF8 00887023 */ subu $t6, $a0, $t0 -/* 048AFC 80047EFC 10000002 */ b .L80047F08 -/* 048B00 80047F00 A20E01D2 */ sb $t6, 0x1d2($s0) -.L80047F04: -/* 048B04 80047F04 A20001D2 */ sb $zero, 0x1d2($s0) -.L80047F08: -/* 048B08 80047F08 C60A0038 */ lwc1 $f10, 0x38($s0) -/* 048B0C 80047F0C C7A000C8 */ lwc1 $f0, 0xc8($sp) -/* 048B10 80047F10 46045182 */ mul.s $f6, $f10, $f4 -/* 048B14 80047F14 44812000 */ mtc1 $at, $f4 -/* 048B18 80047F18 C60A0040 */ lwc1 $f10, 0x40($s0) -/* 048B1C 80047F1C C7A200E8 */ lwc1 $f2, 0xe8($sp) -/* 048B20 80047F20 46003202 */ mul.s $f8, $f6, $f0 -/* 048B24 80047F24 C7AE00E4 */ lwc1 $f14, 0xe4($sp) -/* 048B28 80047F28 8E0F0148 */ lw $t7, 0x148($s0) -/* 048B2C 80047F2C 46045182 */ mul.s $f6, $f10, $f4 -/* 048B30 80047F30 46081080 */ add.s $f2, $f2, $f8 -/* 048B34 80047F34 46003202 */ mul.s $f8, $f6, $f0 -/* 048B38 80047F38 15E00059 */ bnez $t7, .L800480A0 -/* 048B3C 80047F3C 46087380 */ add.s $f14, $f14, $f8 -/* 048B40 80047F40 821801D2 */ lb $t8, 0x1d2($s0) -/* 048B44 80047F44 C630001C */ lwc1 $f16, 0x1c($s1) -/* 048B48 80047F48 C62C0024 */ lwc1 $f12, 0x24($s1) -/* 048B4C 80047F4C 13000005 */ beqz $t8, .L80047F64 -/* 048B50 80047F50 3C0D8012 */ lui $t5, %hi(D_8011D584) # $t5, 0x8012 -/* 048B54 80047F54 C60A011C */ lwc1 $f10, 0x11c($s0) -/* 048B58 80047F58 C6040120 */ lwc1 $f4, 0x120($s0) -/* 048B5C 80047F5C 460A8400 */ add.s $f16, $f16, $f10 -/* 048B60 80047F60 46046300 */ add.s $f12, $f12, $f4 -.L80047F64: -/* 048B64 80047F64 81ADD584 */ lb $t5, %lo(D_8011D584)($t5) -/* 048B68 80047F68 C7A8012C */ lwc1 $f8, 0x12c($sp) -/* 048B6C 80047F6C 11A0002E */ beqz $t5, .L80048028 -/* 048B70 80047F70 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 048B74 80047F74 44813800 */ mtc1 $at, $f7 -/* 048B78 80047F78 44803000 */ mtc1 $zero, $f6 -/* 048B7C 80047F7C 46008021 */ cvt.d.s $f0, $f16 -/* 048B80 80047F80 4620303C */ c.lt.d $f6, $f0 -/* 048B84 80047F84 44803000 */ mtc1 $zero, $f6 -/* 048B88 80047F88 45010007 */ bc1t .L80047FA8 -/* 048B8C 80047F8C 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 048B90 80047F90 44814800 */ mtc1 $at, $f9 -/* 048B94 80047F94 44804000 */ mtc1 $zero, $f8 -/* 048B98 80047F98 00000000 */ nop -/* 048B9C 80047F9C 4628003C */ c.lt.d $f0, $f8 -/* 048BA0 80047FA0 00000000 */ nop -/* 048BA4 80047FA4 45000007 */ bc1f .L80047FC4 -.L80047FA8: -/* 048BA8 80047FA8 3C01800E */ lui $at, %hi(D_800E643C) # $at, 0x800e -/* 048BAC 80047FAC C42B6438 */ lwc1 $f11, %lo(D_800E6438)($at) -/* 048BB0 80047FB0 C42A643C */ lwc1 $f10, %lo(D_800E643C)($at) -/* 048BB4 80047FB4 00000000 */ nop -/* 048BB8 80047FB8 462A0102 */ mul.d $f4, $f0, $f10 -/* 048BBC 80047FBC 10000003 */ b .L80047FCC -/* 048BC0 80047FC0 46202420 */ cvt.s.d $f16, $f4 -.L80047FC4: -/* 048BC4 80047FC4 44808000 */ mtc1 $zero, $f16 -/* 048BC8 80047FC8 00000000 */ nop -.L80047FCC: -/* 048BCC 80047FCC 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 048BD0 80047FD0 44813800 */ mtc1 $at, $f7 -/* 048BD4 80047FD4 46006021 */ cvt.d.s $f0, $f12 -/* 048BD8 80047FD8 4620303C */ c.lt.d $f6, $f0 -/* 048BDC 80047FDC 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 048BE0 80047FE0 45010007 */ bc1t .L80048000 -/* 048BE4 80047FE4 00000000 */ nop -/* 048BE8 80047FE8 44814800 */ mtc1 $at, $f9 -/* 048BEC 80047FEC 44804000 */ mtc1 $zero, $f8 -/* 048BF0 80047FF0 00000000 */ nop -/* 048BF4 80047FF4 4628003C */ c.lt.d $f0, $f8 -/* 048BF8 80047FF8 00000000 */ nop -/* 048BFC 80047FFC 45000007 */ bc1f .L8004801C -.L80048000: -/* 048C00 80048000 3C01800E */ lui $at, %hi(D_800E6444) # $at, 0x800e -/* 048C04 80048004 C42B6440 */ lwc1 $f11, %lo(D_800E6440)($at) -/* 048C08 80048008 C42A6444 */ lwc1 $f10, %lo(D_800E6444)($at) -/* 048C0C 8004800C 00000000 */ nop -/* 048C10 80048010 462A0102 */ mul.d $f4, $f0, $f10 -/* 048C14 80048014 1000000B */ b .L80048044 -/* 048C18 80048018 46202320 */ cvt.s.d $f12, $f4 -.L8004801C: -/* 048C1C 8004801C 44806000 */ mtc1 $zero, $f12 -/* 048C20 80048020 10000009 */ b .L80048048 -/* 048C24 80048024 C7A0012C */ lwc1 $f0, 0x12c($sp) -.L80048028: -/* 048C28 80048028 C6060084 */ lwc1 $f6, 0x84($s0) -/* 048C2C 8004802C C6040088 */ lwc1 $f4, 0x88($s0) -/* 048C30 80048030 46083282 */ mul.s $f10, $f6, $f8 -/* 048C34 80048034 00000000 */ nop -/* 048C38 80048038 46082182 */ mul.s $f6, $f4, $f8 -/* 048C3C 8004803C 460A1080 */ add.s $f2, $f2, $f10 -/* 048C40 80048040 46067380 */ add.s $f14, $f14, $f6 -.L80048044: -/* 048C44 80048044 C7A0012C */ lwc1 $f0, 0x12c($sp) -.L80048048: -/* 048C48 80048048 C6280020 */ lwc1 $f8, 0x20($s1) -/* 048C4C 8004804C 46008282 */ mul.s $f10, $f16, $f0 -/* 048C50 80048050 E7AE00E4 */ swc1 $f14, 0xe4($sp) -/* 048C54 80048054 E7A200E8 */ swc1 $f2, 0xe8($sp) -/* 048C58 80048058 02202025 */ move $a0, $s1 -/* 048C5C 8004805C 46004182 */ mul.s $f6, $f8, $f0 -/* 048C60 80048060 46025100 */ add.s $f4, $f10, $f2 -/* 048C64 80048064 44052000 */ mfc1 $a1, $f4 -/* 048C68 80048068 46006282 */ mul.s $f10, $f12, $f0 -/* 048C6C 8004806C 44063000 */ mfc1 $a2, $f6 -/* 048C70 80048070 460E5100 */ add.s $f4, $f10, $f14 -/* 048C74 80048074 44072000 */ mfc1 $a3, $f4 -/* 048C78 80048078 0C00455C */ jal func_80011570 -/* 048C7C 8004807C 00000000 */ nop -/* 048C80 80048080 1040000F */ beqz $v0, .L800480C0 -/* 048C84 80048084 3C198012 */ lui $t9, %hi(D_8011D55C) # $t9, 0x8012 -/* 048C88 80048088 8F39D55C */ lw $t9, %lo(D_8011D55C)($t9) -/* 048C8C 8004808C 2401FFFF */ li $at, -1 -/* 048C90 80048090 1321000B */ beq $t9, $at, .L800480C0 -/* 048C94 80048094 240A0001 */ li $t2, 1 -/* 048C98 80048098 10000009 */ b .L800480C0 -/* 048C9C 8004809C A3AA0067 */ sb $t2, 0x67($sp) -.L800480A0: -/* 048CA0 800480A0 44804000 */ mtc1 $zero, $f8 -/* 048CA4 800480A4 44803000 */ mtc1 $zero, $f6 -/* 048CA8 800480A8 8FA6012C */ lw $a2, 0x12c($sp) -/* 048CAC 800480AC 02202025 */ move $a0, $s1 -/* 048CB0 800480B0 02002825 */ move $a1, $s0 -/* 048CB4 800480B4 E7A800E8 */ swc1 $f8, 0xe8($sp) -/* 048CB8 800480B8 0C0141D5 */ jal func_80050754 -/* 048CBC 800480BC E7A600E4 */ swc1 $f6, 0xe4($sp) -.L800480C0: -/* 048CC0 800480C0 C60A00D0 */ lwc1 $f10, 0xd0($s0) -/* 048CC4 800480C4 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 048CC8 800480C8 44812800 */ mtc1 $at, $f5 -/* 048CCC 800480CC 44802000 */ mtc1 $zero, $f4 -/* 048CD0 800480D0 46005021 */ cvt.d.s $f0, $f10 -/* 048CD4 800480D4 46240202 */ mul.d $f8, $f0, $f4 -/* 048CD8 800480D8 C7A70050 */ lwc1 $f7, 0x50($sp) -/* 048CDC 800480DC C7A60054 */ lwc1 $f6, 0x54($sp) -/* 048CE0 800480E0 3C01401C */ li $at, 0x401C0000 # 2.437500 -/* 048CE4 800480E4 27A50118 */ addiu $a1, $sp, 0x118 -/* 048CE8 800480E8 46264282 */ mul.d $f10, $f8, $f6 -/* 048CEC 800480EC 462A0101 */ sub.d $f4, $f0, $f10 -/* 048CF0 800480F0 46202220 */ cvt.s.d $f8, $f4 -/* 048CF4 800480F4 44814800 */ mtc1 $at, $f9 -/* 048CF8 800480F8 E60800D0 */ swc1 $f8, 0xd0($s0) -/* 048CFC 800480FC C6260020 */ lwc1 $f6, 0x20($s1) -/* 048D00 80048100 44804000 */ mtc1 $zero, $f8 -/* 048D04 80048104 46003287 */ neg.s $f10, $f6 -/* 048D08 80048108 46005121 */ cvt.d.s $f4, $f10 -/* 048D0C 8004810C 46282182 */ mul.d $f6, $f4, $f8 -/* 048D10 80048110 3C01800E */ lui $at, %hi(D_800E6448) # $at, 0x800e -/* 048D14 80048114 44802800 */ mtc1 $zero, $f5 -/* 048D18 80048118 462032A0 */ cvt.s.d $f10, $f6 -/* 048D1C 8004811C E60A00D4 */ swc1 $f10, 0xd4($s0) -/* 048D20 80048120 C60400D4 */ lwc1 $f4, 0xd4($s0) -/* 048D24 80048124 C428644C */ lwc1 $f8, %lo(D_800E644C)($at) -/* 048D28 80048128 C4296448 */ lwc1 $f9, %lo(D_800E6448)($at) -/* 048D2C 8004812C 460020A1 */ cvt.d.s $f2, $f4 -/* 048D30 80048130 4622403C */ c.lt.d $f8, $f2 -/* 048D34 80048134 44802000 */ mtc1 $zero, $f4 -/* 048D38 80048138 45000007 */ bc1f .L80048158 -/* 048D3C 8004813C 3C01420C */ li $at, 0x420C0000 # 35.000000 -/* 048D40 80048140 44813000 */ mtc1 $at, $f6 -/* 048D44 80048144 00000000 */ nop -/* 048D48 80048148 E60600D4 */ swc1 $f6, 0xd4($s0) -/* 048D4C 8004814C C60A00D4 */ lwc1 $f10, 0xd4($s0) -/* 048D50 80048150 00000000 */ nop -/* 048D54 80048154 460050A1 */ cvt.d.s $f2, $f10 -.L80048158: -/* 048D58 80048158 4624103C */ c.lt.d $f2, $f4 -/* 048D5C 8004815C 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 048D60 80048160 45000004 */ bc1f .L80048174 -/* 048D64 80048164 00000000 */ nop -/* 048D68 80048168 44804000 */ mtc1 $zero, $f8 -/* 048D6C 8004816C 00000000 */ nop -/* 048D70 80048170 E60800D4 */ swc1 $f8, 0xd4($s0) -.L80048174: -/* 048D74 80048174 44817000 */ mtc1 $at, $f14 -/* 048D78 80048178 3C01800E */ lui $at, %hi(D_800E6450) # $at, 0x800e -/* 048D7C 8004817C C4266450 */ lwc1 $f6, %lo(D_800E6450)($at) -/* 048D80 80048180 27A600D4 */ addiu $a2, $sp, 0xd4 -/* 048D84 80048184 E7A60118 */ swc1 $f6, 0x118($sp) -/* 048D88 80048188 C62C0010 */ lwc1 $f12, 0x10($s1) -/* 048D8C 8004818C 0C00AB42 */ jal func_8002AD08 -/* 048D90 80048190 E7AE0114 */ swc1 $f14, 0x114($sp) -/* 048D94 80048194 00023E00 */ sll $a3, $v0, 0x18 -/* 048D98 80048198 00025E00 */ sll $t3, $v0, 0x18 -/* 048D9C 8004819C 000B7603 */ sra $t6, $t3, 0x18 -/* 048DA0 800481A0 00076603 */ sra $t4, $a3, 0x18 -/* 048DA4 800481A4 C7AE0114 */ lwc1 $f14, 0x114($sp) -/* 048DA8 800481A8 11C00025 */ beqz $t6, .L80048240 -/* 048DAC 800481AC 01803825 */ move $a3, $t4 -/* 048DB0 800481B0 C60E002C */ lwc1 $f14, 0x2c($s0) -/* 048DB4 800481B4 44805000 */ mtc1 $zero, $f10 -/* 048DB8 800481B8 3C014010 */ li $at, 0x40100000 # 2.250000 -/* 048DBC 800481BC 460A703C */ c.lt.s $f14, $f10 -/* 048DC0 800481C0 44812800 */ mtc1 $at, $f5 -/* 048DC4 800481C4 45000002 */ bc1f .L800481D0 -/* 048DC8 800481C8 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 048DCC 800481CC 46007387 */ neg.s $f14, $f14 -.L800481D0: -/* 048DD0 800481D0 44802000 */ mtc1 $zero, $f4 -/* 048DD4 800481D4 46007021 */ cvt.d.s $f0, $f14 -/* 048DD8 800481D8 4620203C */ c.lt.d $f4, $f0 -/* 048DDC 800481DC 240F0005 */ li $t7, 5 -/* 048DE0 800481E0 45000004 */ bc1f .L800481F4 -/* 048DE4 800481E4 00000000 */ nop -/* 048DE8 800481E8 44817000 */ mtc1 $at, $f14 -/* 048DEC 800481EC 00000000 */ nop -/* 048DF0 800481F0 46007021 */ cvt.d.s $f0, $f14 -.L800481F4: -/* 048DF4 800481F4 3C01800E */ lui $at, %hi(D_800E645C) # $at, 0x800e -/* 048DF8 800481F8 C4296458 */ lwc1 $f9, %lo(D_800E6458)($at) -/* 048DFC 800481FC C428645C */ lwc1 $f8, %lo(D_800E645C)($at) -/* 048E00 80048200 C62A0010 */ lwc1 $f10, 0x10($s1) -/* 048E04 80048204 46280182 */ mul.d $f6, $f0, $f8 -/* 048E08 80048208 C7A40118 */ lwc1 $f4, 0x118($sp) -/* 048E0C 8004820C 462033A0 */ cvt.s.d $f14, $f6 -/* 048E10 80048210 460E5081 */ sub.s $f2, $f10, $f14 -/* 048E14 80048214 4604103C */ c.lt.s $f2, $f4 -/* 048E18 80048218 00000000 */ nop -/* 048E1C 8004821C 45000005 */ bc1f .L80048234 -/* 048E20 80048220 00000000 */ nop -/* 048E24 80048224 46022201 */ sub.s $f8, $f4, $f2 -/* 048E28 80048228 A20F01E5 */ sb $t7, 0x1e5($s0) -/* 048E2C 8004822C 10000004 */ b .L80048240 -/* 048E30 80048230 E60800C0 */ swc1 $f8, 0xc0($s0) -.L80048234: -/* 048E34 80048234 44803000 */ mtc1 $zero, $f6 -/* 048E38 80048238 00000000 */ nop -/* 048E3C 8004823C E60600C0 */ swc1 $f6, 0xc0($s0) -.L80048240: -/* 048E40 80048240 820201E5 */ lb $v0, 0x1e5($s0) -/* 048E44 80048244 00000000 */ nop -/* 048E48 80048248 18400003 */ blez $v0, .L80048258 -/* 048E4C 8004824C 2458FFFF */ addiu $t8, $v0, -1 -/* 048E50 80048250 10000004 */ b .L80048264 -/* 048E54 80048254 A21801E5 */ sb $t8, 0x1e5($s0) -.L80048258: -/* 048E58 80048258 44805000 */ mtc1 $zero, $f10 -/* 048E5C 8004825C 00000000 */ nop -/* 048E60 80048260 E60A00C0 */ swc1 $f10, 0xc0($s0) -.L80048264: -/* 048E64 80048264 820D01E5 */ lb $t5, 0x1e5($s0) -/* 048E68 80048268 00000000 */ nop -/* 048E6C 8004826C 19A0000F */ blez $t5, .L800482AC -/* 048E70 80048270 00000000 */ nop -/* 048E74 80048274 C7A80118 */ lwc1 $f8, 0x118($sp) -/* 048E78 80048278 C6240010 */ lwc1 $f4, 0x10($s1) -/* 048E7C 8004827C 460E4180 */ add.s $f6, $f8, $f14 -/* 048E80 80048280 4606203C */ c.lt.s $f4, $f6 -/* 048E84 80048284 00000000 */ nop -/* 048E88 80048288 45000008 */ bc1f .L800482AC -/* 048E8C 8004828C 00000000 */ nop -/* 048E90 80048290 8E22004C */ lw $v0, 0x4c($s1) -/* 048E94 80048294 00000000 */ nop -/* 048E98 80048298 84590014 */ lh $t9, 0x14($v0) -/* 048E9C 8004829C 00000000 */ nop -/* 048EA0 800482A0 372A0010 */ ori $t2, $t9, 0x10 -/* 048EA4 800482A4 10000007 */ b .L800482C4 -/* 048EA8 800482A8 A44A0014 */ sh $t2, 0x14($v0) -.L800482AC: -/* 048EAC 800482AC 8E22004C */ lw $v0, 0x4c($s1) -/* 048EB0 800482B0 00000000 */ nop -/* 048EB4 800482B4 844C0014 */ lh $t4, 0x14($v0) -/* 048EB8 800482B8 00000000 */ nop -/* 048EBC 800482BC 318BFFEF */ andi $t3, $t4, 0xffef -/* 048EC0 800482C0 A44B0014 */ sh $t3, 0x14($v0) -.L800482C4: -/* 048EC4 800482C4 C7A80118 */ lwc1 $f8, 0x118($sp) -/* 048EC8 800482C8 C62A0010 */ lwc1 $f10, 0x10($s1) -/* 048ECC 800482CC 460E4100 */ add.s $f4, $f8, $f14 -/* 048ED0 800482D0 44804000 */ mtc1 $zero, $f8 -/* 048ED4 800482D4 46045181 */ sub.s $f6, $f10, $f4 -/* 048ED8 800482D8 44804800 */ mtc1 $zero, $f9 -/* 048EDC 800482DC E7A60118 */ swc1 $f6, 0x118($sp) -/* 048EE0 800482E0 C60C00C0 */ lwc1 $f12, 0xc0($s0) -/* 048EE4 800482E4 00000000 */ nop -/* 048EE8 800482E8 460060A1 */ cvt.d.s $f2, $f12 -/* 048EEC 800482EC 4622403C */ c.lt.d $f8, $f2 -/* 048EF0 800482F0 00000000 */ nop -/* 048EF4 800482F4 45000017 */ bc1f .L80048354 -/* 048EF8 800482F8 3C0E8012 */ lui $t6, %hi(D_8011D528) # $t6, 0x8012 -/* 048EFC 800482FC 8DCED528 */ lw $t6, %lo(D_8011D528)($t6) -/* 048F00 80048300 00004025 */ move $t0, $zero -/* 048F04 80048304 31CF0010 */ andi $t7, $t6, 0x10 -/* 048F08 80048308 11E00006 */ beqz $t7, .L80048324 -/* 048F0C 8004830C 02202025 */ move $a0, $s1 -/* 048F10 80048310 3C088012 */ lui $t0, %hi(D_8011D534) # $t0, 0x8012 -/* 048F14 80048314 8D08D534 */ lw $t0, %lo(D_8011D534)($t0) -/* 048F18 80048318 00000000 */ nop -/* 048F1C 8004831C 0008C040 */ sll $t8, $t0, 1 -/* 048F20 80048320 03004025 */ move $t0, $t8 -.L80048324: -/* 048F24 80048324 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 048F28 80048328 44815000 */ mtc1 $at, $f10 -/* 048F2C 8004832C 8FAD0128 */ lw $t5, 0x128($sp) -/* 048F30 80048330 02002825 */ move $a1, $s0 -/* 048F34 80048334 27A600D4 */ addiu $a2, $sp, 0xd4 -/* 048F38 80048338 AFA80014 */ sw $t0, 0x14($sp) -/* 048F3C 8004833C E7AA0018 */ swc1 $f10, 0x18($sp) -/* 048F40 80048340 0C012538 */ jal func_800494E0 -/* 048F44 80048344 AFAD0010 */ sw $t5, 0x10($sp) -/* 048F48 80048348 C60C00C0 */ lwc1 $f12, 0xc0($s0) -/* 048F4C 8004834C 00000000 */ nop -/* 048F50 80048350 460060A1 */ cvt.d.s $f2, $f12 -.L80048354: -/* 048F54 80048354 44802800 */ mtc1 $zero, $f5 -/* 048F58 80048358 44802000 */ mtc1 $zero, $f4 -/* 048F5C 8004835C 3C198012 */ lui $t9, %hi(D_8011D55C) # $t9, 0x8012 -/* 048F60 80048360 4622203C */ c.lt.d $f4, $f2 -/* 048F64 80048364 00000000 */ nop -/* 048F68 80048368 45000013 */ bc1f .L800483B8 -/* 048F6C 8004836C 00000000 */ nop -/* 048F70 80048370 C60800C4 */ lwc1 $f8, 0xc4($s0) -/* 048F74 80048374 C6260010 */ lwc1 $f6, 0x10($s1) -/* 048F78 80048378 46086282 */ mul.s $f10, $f12, $f8 -/* 048F7C 8004837C 3C013FE8 */ li $at, 0x3FE80000 # 1.812500 -/* 048F80 80048380 44813800 */ mtc1 $at, $f7 -/* 048F84 80048384 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 048F88 80048388 460A3100 */ add.s $f4, $f6, $f10 -/* 048F8C 8004838C 44803000 */ mtc1 $zero, $f6 -/* 048F90 80048390 E6240010 */ swc1 $f4, 0x10($s1) -/* 048F94 80048394 C60800C4 */ lwc1 $f8, 0xc4($s0) -/* 048F98 80048398 44802000 */ mtc1 $zero, $f4 -/* 048F9C 8004839C 46004021 */ cvt.d.s $f0, $f8 -/* 048FA0 800483A0 44812800 */ mtc1 $at, $f5 -/* 048FA4 800483A4 46203281 */ sub.d $f10, $f6, $f0 -/* 048FA8 800483A8 46245202 */ mul.d $f8, $f10, $f4 -/* 048FAC 800483AC 46280180 */ add.d $f6, $f0, $f8 -/* 048FB0 800483B0 462032A0 */ cvt.s.d $f10, $f6 -/* 048FB4 800483B4 E60A00C4 */ swc1 $f10, 0xc4($s0) -.L800483B8: -/* 048FB8 800483B8 8F39D55C */ lw $t9, %lo(D_8011D55C)($t9) -/* 048FBC 800483BC 820801D2 */ lb $t0, 0x1d2($s0) -/* 048FC0 800483C0 2401FFFF */ li $at, -1 -/* 048FC4 800483C4 1721000E */ bne $t9, $at, .L80048400 -/* 048FC8 800483C8 8FA60128 */ lw $a2, 0x128($sp) -/* 048FCC 800483CC 0C008D5A */ jal func_80023568 -/* 048FD0 800483D0 AFA800C4 */ sw $t0, 0xc4($sp) -/* 048FD4 800483D4 8FA800C4 */ lw $t0, 0xc4($sp) -/* 048FD8 800483D8 14400008 */ bnez $v0, .L800483FC -/* 048FDC 800483DC 02202025 */ move $a0, $s1 -/* 048FE0 800483E0 8FA60128 */ lw $a2, 0x128($sp) -/* 048FE4 800483E4 02002825 */ move $a1, $s0 -/* 048FE8 800483E8 0C0156A1 */ jal func_80055A84 -/* 048FEC 800483EC AFA800C4 */ sw $t0, 0xc4($sp) -/* 048FF0 800483F0 8FA800C4 */ lw $t0, 0xc4($sp) -/* 048FF4 800483F4 10000008 */ b .L80048418 -/* 048FF8 800483F8 00000000 */ nop -.L800483FC: -/* 048FFC 800483FC 8FA60128 */ lw $a2, 0x128($sp) -.L80048400: -/* 049000 80048400 02202025 */ move $a0, $s1 -/* 049004 80048404 02002825 */ move $a1, $s0 -/* 049008 80048408 0C0153F4 */ jal func_80054FD0 -/* 04900C 8004840C AFA800C4 */ sw $t0, 0xc4($sp) -/* 049010 80048410 8FA800C4 */ lw $t0, 0xc4($sp) -/* 049014 80048414 00000000 */ nop -.L80048418: -/* 049018 80048418 15000006 */ bnez $t0, .L80048434 -/* 04901C 8004841C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 049020 80048420 820A01D2 */ lb $t2, 0x1d2($s0) -/* 049024 80048424 00000000 */ nop -/* 049028 80048428 11400002 */ beqz $t2, .L80048434 -/* 04902C 8004842C 00000000 */ nop -/* 049030 80048430 24080001 */ li $t0, 1 -.L80048434: -/* 049034 80048434 A20801D2 */ sb $t0, 0x1d2($s0) -/* 049038 80048438 C7A8012C */ lwc1 $f8, 0x12c($sp) -/* 04903C 8004843C 44812000 */ mtc1 $at, $f4 -/* 049040 80048440 C7AA00E8 */ lwc1 $f10, 0xe8($sp) -/* 049044 80048444 46082083 */ div.s $f2, $f4, $f8 -/* 049048 80048448 C7A60110 */ lwc1 $f6, 0x110($sp) -/* 04904C 8004844C C628000C */ lwc1 $f8, 0xc($s1) -/* 049050 80048450 460A3100 */ add.s $f4, $f6, $f10 -/* 049054 80048454 3C018012 */ lui $at, %hi(D_8011D548) # $at, 0x8012 -/* 049058 80048458 C42AD548 */ lwc1 $f10, %lo(D_8011D548)($at) -/* 04905C 8004845C 46044181 */ sub.s $f6, $f8, $f4 -/* 049060 80048460 C7A40108 */ lwc1 $f4, 0x108($sp) -/* 049064 80048464 3C018012 */ lui $at, %hi(D_8011D54C) # $at, 0x8012 -/* 049068 80048468 3C03800E */ lui $v1, %hi(D_800DCB98) # $v1, 0x800e -/* 04906C 8004846C 2463CB98 */ addiu $v1, %lo(D_800DCB98) # addiu $v1, $v1, -0x3468 -/* 049070 80048470 460A3201 */ sub.s $f8, $f6, $f10 -/* 049074 80048474 C7A600E4 */ lwc1 $f6, 0xe4($sp) -/* 049078 80048478 46024402 */ mul.s $f16, $f8, $f2 -/* 04907C 8004847C C6280014 */ lwc1 $f8, 0x14($s1) -/* 049080 80048480 46062280 */ add.s $f10, $f4, $f6 -/* 049084 80048484 C426D54C */ lwc1 $f6, %lo(D_8011D54C)($at) -/* 049088 80048488 460A4101 */ sub.s $f4, $f8, $f10 -/* 04908C 8004848C E630001C */ swc1 $f16, 0x1c($s1) -/* 049090 80048490 46062201 */ sub.s $f8, $f4, $f6 -/* 049094 80048494 C62A0010 */ lwc1 $f10, 0x10($s1) -/* 049098 80048498 46024302 */ mul.s $f12, $f8, $f2 -/* 04909C 8004849C 3C01800E */ lui $at, %hi(D_800E6460) # $at, 0x800e -/* 0490A0 800484A0 E62C0024 */ swc1 $f12, 0x24($s1) -/* 0490A4 800484A4 C7A4010C */ lwc1 $f4, 0x10c($sp) -/* 0490A8 800484A8 00000000 */ nop -/* 0490AC 800484AC 46045181 */ sub.s $f6, $f10, $f4 -/* 0490B0 800484B0 46023202 */ mul.s $f8, $f6, $f2 -/* 0490B4 800484B4 E6280020 */ swc1 $f8, 0x20($s1) -/* 0490B8 800484B8 C60A0008 */ lwc1 $f10, 8($s0) -/* 0490BC 800484BC C604002C */ lwc1 $f4, 0x2c($s0) -/* 0490C0 800484C0 C4286464 */ lwc1 $f8, %lo(D_800E6464)($at) -/* 0490C4 800484C4 C4296460 */ lwc1 $f9, %lo(D_800E6460)($at) -/* 0490C8 800484C8 46005021 */ cvt.d.s $f0, $f10 -/* 0490CC 800484CC 460021A1 */ cvt.d.s $f6, $f4 -/* 0490D0 800484D0 46283282 */ mul.d $f10, $f6, $f8 -/* 0490D4 800484D4 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 0490D8 800484D8 44813800 */ mtc1 $at, $f7 -/* 0490DC 800484DC 44803000 */ mtc1 $zero, $f6 -/* 0490E0 800484E0 462A0100 */ add.d $f4, $f0, $f10 -/* 0490E4 800484E4 46262202 */ mul.d $f8, $f4, $f6 -/* 0490E8 800484E8 44803000 */ mtc1 $zero, $f6 -/* 0490EC 800484EC 44803800 */ mtc1 $zero, $f7 -/* 0490F0 800484F0 46280281 */ sub.d $f10, $f0, $f8 -/* 0490F4 800484F4 C60800C0 */ lwc1 $f8, 0xc0($s0) -/* 0490F8 800484F8 46205120 */ cvt.s.d $f4, $f10 -/* 0490FC 800484FC 460042A1 */ cvt.d.s $f10, $f8 -/* 049100 80048500 462A303C */ c.lt.d $f6, $f10 -/* 049104 80048504 E6040008 */ swc1 $f4, 8($s0) -/* 049108 80048508 45000010 */ bc1f .L8004854C -/* 04910C 8004850C 00000000 */ nop -/* 049110 80048510 820C01FB */ lb $t4, 0x1fb($s0) -/* 049114 80048514 3C014010 */ li $at, 0x40100000 # 2.250000 -/* 049118 80048518 1580000C */ bnez $t4, .L8004854C -/* 04911C 8004851C 00000000 */ nop -/* 049120 80048520 C6280020 */ lwc1 $f8, 0x20($s1) -/* 049124 80048524 44812800 */ mtc1 $at, $f5 -/* 049128 80048528 44802000 */ mtc1 $zero, $f4 -/* 04912C 8004852C 460041A1 */ cvt.d.s $f6, $f8 -/* 049130 80048530 4626203C */ c.lt.d $f4, $f6 -/* 049134 80048534 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 049138 80048538 45000004 */ bc1f .L8004854C -/* 04913C 8004853C 00000000 */ nop -/* 049140 80048540 44815000 */ mtc1 $at, $f10 -/* 049144 80048544 00000000 */ nop -/* 049148 80048548 E62A0020 */ swc1 $f10, 0x20($s1) -.L8004854C: -/* 04914C 8004854C 8C6B0000 */ lw $t3, ($v1) -/* 049150 80048550 00000000 */ nop -/* 049154 80048554 29610002 */ slti $at, $t3, 2 -/* 049158 80048558 10200026 */ beqz $at, .L800485F4 -/* 04915C 8004855C 00000000 */ nop -/* 049160 80048560 8E2E0040 */ lw $t6, 0x40($s1) -/* 049164 80048564 3C188012 */ lui $t8, %hi(D_8011D528) # $t8, 0x8012 -/* 049168 80048568 81CF0057 */ lb $t7, 0x57($t6) -/* 04916C 8004856C 00000000 */ nop -/* 049170 80048570 29E10009 */ slti $at, $t7, 9 -/* 049174 80048574 1420001F */ bnez $at, .L800485F4 -/* 049178 80048578 00000000 */ nop -/* 04917C 8004857C 8F18D528 */ lw $t8, %lo(D_8011D528)($t8) -/* 049180 80048580 34018010 */ li $at, 32784 -/* 049184 80048584 330D8010 */ andi $t5, $t8, 0x8010 -/* 049188 80048588 15A10011 */ bne $t5, $at, .L800485D0 -/* 04918C 8004858C 3C028012 */ lui $v0, %hi(D_8011D534) # $v0, 0x8012 -/* 049190 80048590 8C42D534 */ lw $v0, %lo(D_8011D534)($v0) -/* 049194 80048594 02202025 */ move $a0, $s1 -/* 049198 80048598 2841FFE2 */ slti $at, $v0, -0x1e -/* 04919C 8004859C 14200004 */ bnez $at, .L800485B0 -/* 0491A0 800485A0 24050008 */ li $a1, 8 -/* 0491A4 800485A4 2841001F */ slti $at, $v0, 0x1f -/* 0491A8 800485A8 1420000A */ bnez $at, .L800485D4 -/* 0491AC 800485AC 8FA60128 */ lw $a2, 0x128($sp) -.L800485B0: -/* 0491B0 800485B0 8FA60128 */ lw $a2, 0x128($sp) -/* 0491B4 800485B4 24070080 */ li $a3, 128 -/* 0491B8 800485B8 0006CA80 */ sll $t9, $a2, 0xa -/* 0491BC 800485BC 0C02D19A */ jal func_800B4668 -/* 0491C0 800485C0 03203025 */ move $a2, $t9 -/* 0491C4 800485C4 3C03800E */ lui $v1, %hi(D_800DCB98) # $v1, 0x800e -/* 0491C8 800485C8 1000000A */ b .L800485F4 -/* 0491CC 800485CC 2463CB98 */ addiu $v1, %lo(D_800DCB98) # addiu $v1, $v1, -0x3468 -.L800485D0: -/* 0491D0 800485D0 8FA60128 */ lw $a2, 0x128($sp) -.L800485D4: -/* 0491D4 800485D4 02202025 */ move $a0, $s1 -/* 0491D8 800485D8 00065240 */ sll $t2, $a2, 9 -/* 0491DC 800485DC 01403025 */ move $a2, $t2 -/* 0491E0 800485E0 24050008 */ li $a1, 8 -/* 0491E4 800485E4 0C02D1AF */ jal func_800B46BC -/* 0491E8 800485E8 24070020 */ li $a3, 32 -/* 0491EC 800485EC 3C03800E */ lui $v1, %hi(D_800DCB98) # $v1, 0x800e -/* 0491F0 800485F0 2463CB98 */ addiu $v1, %lo(D_800DCB98) # addiu $v1, $v1, -0x3468 -.L800485F4: -/* 0491F4 800485F4 3C028012 */ lui $v0, %hi(D_8011D55C) # $v0, 0x8012 -/* 0491F8 800485F8 8C42D55C */ lw $v0, %lo(D_8011D55C)($v0) -/* 0491FC 800485FC 00000000 */ nop -/* 049200 80048600 04400057 */ bltz $v0, .L80048760 -/* 049204 80048604 2401FFFF */ li $at, -1 -/* 049208 80048608 C60400C0 */ lwc1 $f4, 0xc0($s0) -/* 04920C 8004860C 44804800 */ mtc1 $zero, $f9 -/* 049210 80048610 44804000 */ mtc1 $zero, $f8 -/* 049214 80048614 460021A1 */ cvt.d.s $f6, $f4 -/* 049218 80048618 4626403C */ c.lt.d $f8, $f6 -/* 04921C 8004861C 00000000 */ nop -/* 049220 80048620 4500004F */ bc1f .L80048760 -/* 049224 80048624 2401FFFF */ li $at, -1 -/* 049228 80048628 8C6C0000 */ lw $t4, ($v1) -/* 04922C 8004862C 00000000 */ nop -/* 049230 80048630 29810003 */ slti $at, $t4, 3 -/* 049234 80048634 10200035 */ beqz $at, .L8004870C -/* 049238 80048638 00000000 */ nop -/* 04923C 8004863C C620001C */ lwc1 $f0, 0x1c($s1) -/* 049240 80048640 C62C0020 */ lwc1 $f12, 0x20($s1) -/* 049244 80048644 46000282 */ mul.s $f10, $f0, $f0 -/* 049248 80048648 C62E0024 */ lwc1 $f14, 0x24($s1) -/* 04924C 8004864C 3C014180 */ li $at, 0x41800000 # 16.000000 -/* 049250 80048650 3C028012 */ lui $v0, %hi(D_8011D55C) # $v0, 0x8012 -/* 049254 80048654 460C6102 */ mul.s $f4, $f12, $f12 -/* 049258 80048658 00000000 */ nop -/* 04925C 8004865C 460E7182 */ mul.s $f6, $f14, $f14 -/* 049260 80048660 46045200 */ add.s $f8, $f10, $f4 -/* 049264 80048664 44815000 */ mtc1 $at, $f10 -/* 049268 80048668 3C0142A0 */ li $at, 0x42A00000 # 80.000000 -/* 04926C 8004866C 46064080 */ add.s $f2, $f8, $f6 -/* 049270 80048670 4602503C */ c.lt.s $f10, $f2 -/* 049274 80048674 00000000 */ nop -/* 049278 80048678 45000021 */ bc1f .L80048700 -/* 04927C 8004867C 00000000 */ nop -/* 049280 80048680 44812000 */ mtc1 $at, $f4 -/* 049284 80048684 3C0141E0 */ li $at, 0x41E00000 # 28.000000 -/* 049288 80048688 4604103C */ c.lt.s $f2, $f4 -/* 04928C 8004868C 44814000 */ mtc1 $at, $f8 -/* 049290 80048690 45000005 */ bc1f .L800486A8 -/* 049294 80048694 00000000 */ nop -/* 049298 80048698 8E2B0074 */ lw $t3, 0x74($s1) -/* 04929C 8004869C 00000000 */ nop -/* 0492A0 800486A0 356E000C */ ori $t6, $t3, 0xc -/* 0492A4 800486A4 AE2E0074 */ sw $t6, 0x74($s1) -.L800486A8: -/* 0492A8 800486A8 4602403C */ c.lt.s $f8, $f2 -/* 0492AC 800486AC 00000000 */ nop -/* 0492B0 800486B0 45000005 */ bc1f .L800486C8 -/* 0492B4 800486B4 00000000 */ nop -/* 0492B8 800486B8 8E2F0074 */ lw $t7, 0x74($s1) -/* 0492BC 800486BC 00000000 */ nop -/* 0492C0 800486C0 35F80003 */ ori $t8, $t7, 3 -/* 0492C4 800486C4 AE380074 */ sw $t8, 0x74($s1) -.L800486C8: -/* 0492C8 800486C8 8C6D0000 */ lw $t5, ($v1) -/* 0492CC 800486CC 24010001 */ li $at, 1 -/* 0492D0 800486D0 15A1000B */ bne $t5, $at, .L80048700 -/* 0492D4 800486D4 3C014124 */ li $at, 0x41240000 # 10.250000 -/* 0492D8 800486D8 44813000 */ mtc1 $at, $f6 -/* 0492DC 800486DC 00000000 */ nop -/* 0492E0 800486E0 4602303C */ c.lt.s $f6, $f2 -/* 0492E4 800486E4 00000000 */ nop -/* 0492E8 800486E8 45000005 */ bc1f .L80048700 -/* 0492EC 800486EC 00000000 */ nop -/* 0492F0 800486F0 8E390074 */ lw $t9, 0x74($s1) -/* 0492F4 800486F4 00000000 */ nop -/* 0492F8 800486F8 372A0040 */ ori $t2, $t9, 0x40 -/* 0492FC 800486FC AE2A0074 */ sw $t2, 0x74($s1) -.L80048700: -/* 049300 80048700 8C42D55C */ lw $v0, %lo(D_8011D55C)($v0) -/* 049304 80048704 10000016 */ b .L80048760 -/* 049308 80048708 2401FFFF */ li $at, -1 -.L8004870C: -/* 04930C 8004870C C60E002C */ lwc1 $f14, 0x2c($s0) -/* 049310 80048710 44805000 */ mtc1 $zero, $f10 -/* 049314 80048714 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 049318 80048718 460A703C */ c.lt.s $f14, $f10 -/* 04931C 8004871C 44812000 */ mtc1 $at, $f4 -/* 049320 80048720 45000003 */ bc1f .L80048730 -/* 049324 80048724 00000000 */ nop -/* 049328 80048728 10000002 */ b .L80048734 -/* 04932C 8004872C 46007087 */ neg.s $f2, $f14 -.L80048730: -/* 049330 80048730 46007086 */ mov.s $f2, $f14 -.L80048734: -/* 049334 80048734 4602203C */ c.lt.s $f4, $f2 -/* 049338 80048738 00000000 */ nop -/* 04933C 8004873C 45000008 */ bc1f .L80048760 -/* 049340 80048740 2401FFFF */ li $at, -1 -/* 049344 80048744 8E2C0074 */ lw $t4, 0x74($s1) -/* 049348 80048748 3C028012 */ lui $v0, %hi(D_8011D55C) # $v0, 0x8012 -/* 04934C 8004874C 358B000C */ ori $t3, $t4, 0xc -/* 049350 80048750 AE2B0074 */ sw $t3, 0x74($s1) -/* 049354 80048754 8C42D55C */ lw $v0, %lo(D_8011D55C)($v0) -/* 049358 80048758 00000000 */ nop -/* 04935C 8004875C 2401FFFF */ li $at, -1 -.L80048760: -/* 049360 80048760 10410046 */ beq $v0, $at, .L8004887C -/* 049364 80048764 00000000 */ nop -/* 049368 80048768 820E01D3 */ lb $t6, 0x1d3($s0) -/* 04936C 8004876C 00000000 */ nop -/* 049370 80048770 15C00042 */ bnez $t6, .L8004887C -/* 049374 80048774 00000000 */ nop -/* 049378 80048778 8C6F0000 */ lw $t7, ($v1) -/* 04937C 8004877C 00000000 */ nop -/* 049380 80048780 29E10002 */ slti $at, $t7, 2 -/* 049384 80048784 1020003D */ beqz $at, .L8004887C -/* 049388 80048788 00000000 */ nop -/* 04938C 8004878C 0C0078A7 */ jal func_8001E29C -/* 049390 80048790 24040014 */ li $a0, 20 -/* 049394 80048794 82080203 */ lb $t0, 0x203($s0) -/* 049398 80048798 82180002 */ lb $t8, 2($s0) -/* 04939C 8004879C 31190004 */ andi $t9, $t0, 4 -/* 0493A0 800487A0 00195083 */ sra $t2, $t9, 2 -/* 0493A4 800487A4 2548000A */ addiu $t0, $t2, 0xa -/* 0493A8 800487A8 2901000B */ slti $at, $t0, 0xb -/* 0493AC 800487AC 001869C0 */ sll $t5, $t8, 7 -/* 0493B0 800487B0 14200012 */ bnez $at, .L800487FC -/* 0493B4 800487B4 01A21821 */ addu $v1, $t5, $v0 -/* 0493B8 800487B8 906C0070 */ lbu $t4, 0x70($v1) -/* 0493BC 800487BC 240E0001 */ li $t6, 1 -/* 0493C0 800487C0 1D800009 */ bgtz $t4, .L800487E8 -/* 0493C4 800487C4 00000000 */ nop -/* 0493C8 800487C8 C4660074 */ lwc1 $f6, 0x74($v1) -/* 0493CC 800487CC 44804800 */ mtc1 $zero, $f9 -/* 0493D0 800487D0 44804000 */ mtc1 $zero, $f8 -/* 0493D4 800487D4 460032A1 */ cvt.d.s $f10, $f6 -/* 0493D8 800487D8 462A403C */ c.lt.d $f8, $f10 -/* 0493DC 800487DC 00000000 */ nop -/* 0493E0 800487E0 45000026 */ bc1f .L8004887C -/* 0493E4 800487E4 00000000 */ nop -.L800487E8: -/* 0493E8 800487E8 8E2B0074 */ lw $t3, 0x74($s1) -/* 0493EC 800487EC 010E7804 */ sllv $t7, $t6, $t0 -/* 0493F0 800487F0 016FC025 */ or $t8, $t3, $t7 -/* 0493F4 800487F4 10000021 */ b .L8004887C -/* 0493F8 800487F8 AE380074 */ sw $t8, 0x74($s1) -.L800487FC: -/* 0493FC 800487FC 90620070 */ lbu $v0, 0x70($v1) -/* 049400 80048800 24010002 */ li $at, 2 -/* 049404 80048804 14410010 */ bne $v0, $at, .L80048848 -/* 049408 80048808 28410002 */ slti $at, $v0, 2 -/* 04940C 8004880C C4640074 */ lwc1 $f4, 0x74($v1) -/* 049410 80048810 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 049414 80048814 44814800 */ mtc1 $at, $f9 -/* 049418 80048818 44804000 */ mtc1 $zero, $f8 -/* 04941C 8004881C 460021A1 */ cvt.d.s $f6, $f4 -/* 049420 80048820 4628303C */ c.lt.d $f6, $f8 -/* 049424 80048824 24190001 */ li $t9, 1 -/* 049428 80048828 45000007 */ bc1f .L80048848 -/* 04942C 8004882C 28410002 */ slti $at, $v0, 2 -/* 049430 80048830 8E2D0074 */ lw $t5, 0x74($s1) -/* 049434 80048834 01195004 */ sllv $t2, $t9, $t0 -/* 049438 80048838 01AA6025 */ or $t4, $t5, $t2 -/* 04943C 8004883C 1000000F */ b .L8004887C -/* 049440 80048840 AE2C0074 */ sw $t4, 0x74($s1) -/* 049444 80048844 28410002 */ slti $at, $v0, 2 -.L80048848: -/* 049448 80048848 1020000C */ beqz $at, .L8004887C -/* 04944C 8004884C 00000000 */ nop -/* 049450 80048850 44805000 */ mtc1 $zero, $f10 -/* 049454 80048854 C4640074 */ lwc1 $f4, 0x74($v1) -/* 049458 80048858 240B0001 */ li $t3, 1 -/* 04945C 8004885C 4604503C */ c.lt.s $f10, $f4 -/* 049460 80048860 00000000 */ nop -/* 049464 80048864 45000005 */ bc1f .L8004887C -/* 049468 80048868 00000000 */ nop -/* 04946C 8004886C 8E2E0074 */ lw $t6, 0x74($s1) -/* 049470 80048870 010B7804 */ sllv $t7, $t3, $t0 -/* 049474 80048874 01CFC025 */ or $t8, $t6, $t7 -/* 049478 80048878 AE380074 */ sw $t8, 0x74($s1) -.L8004887C: -/* 04947C 8004887C 82190201 */ lb $t9, 0x201($s0) -/* 049480 80048880 00000000 */ nop -/* 049484 80048884 17200004 */ bnez $t9, .L80048898 -/* 049488 80048888 8FAD0128 */ lw $t5, 0x128($sp) -/* 04948C 8004888C 10000015 */ b .L800488E4 -/* 049490 80048890 AE200074 */ sw $zero, 0x74($s1) -/* 049494 80048894 8FAD0128 */ lw $t5, 0x128($sp) -.L80048898: -/* 049498 80048898 3C018012 */ lui $at, %hi(D_8011D56C) # $at, 0x8012 -/* 04949C 8004889C 448D3000 */ mtc1 $t5, $f6 -/* 0494A0 800488A0 C42AD56C */ lwc1 $f10, %lo(D_8011D56C)($at) -/* 0494A4 800488A4 46803020 */ cvt.s.w $f0, $f6 -/* 0494A8 800488A8 C6280020 */ lwc1 $f8, 0x20($s1) -/* 0494AC 800488AC 02202025 */ move $a0, $s1 -/* 0494B0 800488B0 460A0102 */ mul.s $f4, $f0, $f10 -/* 0494B4 800488B4 46044180 */ add.s $f6, $f8, $f4 -/* 0494B8 800488B8 E6260020 */ swc1 $f6, 0x20($s1) -/* 0494BC 800488BC 8FA50128 */ lw $a1, 0x128($sp) -/* 0494C0 800488C0 0C02BDC5 */ jal func_800AF714 -/* 0494C4 800488C4 E7A0004C */ swc1 $f0, 0x4c($sp) -/* 0494C8 800488C8 3C018012 */ lui $at, %hi(D_8011D56C) # $at, 0x8012 -/* 0494CC 800488CC C7A0004C */ lwc1 $f0, 0x4c($sp) -/* 0494D0 800488D0 C428D56C */ lwc1 $f8, %lo(D_8011D56C)($at) -/* 0494D4 800488D4 C62A0020 */ lwc1 $f10, 0x20($s1) -/* 0494D8 800488D8 46080102 */ mul.s $f4, $f0, $f8 -/* 0494DC 800488DC 46045181 */ sub.s $f6, $f10, $f4 -/* 0494E0 800488E0 E6260020 */ swc1 $f6, 0x20($s1) -.L800488E4: -/* 0494E4 800488E4 862A0000 */ lh $t2, ($s1) -/* 0494E8 800488E8 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 -/* 0494EC 800488EC 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 -/* 0494F0 800488F0 000A6023 */ negu $t4, $t2 -/* 0494F4 800488F4 A4AC0000 */ sh $t4, ($a1) -/* 0494F8 800488F8 862B0002 */ lh $t3, 2($s1) -/* 0494FC 800488FC 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 049500 80048900 000B7023 */ negu $t6, $t3 -/* 049504 80048904 A4AE0002 */ sh $t6, 2($a1) -/* 049508 80048908 862F0004 */ lh $t7, 4($s1) -/* 04950C 8004890C 44814000 */ mtc1 $at, $f8 -/* 049510 80048910 44805000 */ mtc1 $zero, $f10 -/* 049514 80048914 44802000 */ mtc1 $zero, $f4 -/* 049518 80048918 44803000 */ mtc1 $zero, $f6 -/* 04951C 8004891C 000FC023 */ negu $t8, $t7 -/* 049520 80048920 A4B80004 */ sh $t8, 4($a1) -/* 049524 80048924 27A40068 */ addiu $a0, $sp, 0x68 -/* 049528 80048928 E4A80008 */ swc1 $f8, 8($a1) -/* 04952C 8004892C E4AA000C */ swc1 $f10, 0xc($a1) -/* 049530 80048930 E4A40010 */ swc1 $f4, 0x10($a1) -/* 049534 80048934 0C01BF9D */ jal func_8006FE74 -/* 049538 80048938 E4A60014 */ swc1 $f6, 0x14($a1) -/* 04953C 8004893C 8E25001C */ lw $a1, 0x1c($s1) -/* 049540 80048940 8E260020 */ lw $a2, 0x20($s1) -/* 049544 80048944 8E270024 */ lw $a3, 0x24($s1) -/* 049548 80048948 26190030 */ addiu $t9, $s0, 0x30 -/* 04954C 8004894C 260D0034 */ addiu $t5, $s0, 0x34 -/* 049550 80048950 260A002C */ addiu $t2, $s0, 0x2c -/* 049554 80048954 AFAA0018 */ sw $t2, 0x18($sp) -/* 049558 80048958 AFAD0014 */ sw $t5, 0x14($sp) -/* 04955C 8004895C AFB90010 */ sw $t9, 0x10($sp) -/* 049560 80048960 0C01BD93 */ jal func_8006F64C -/* 049564 80048964 27A40068 */ addiu $a0, $sp, 0x68 -/* 049568 80048968 820C01E2 */ lb $t4, 0x1e2($s0) -/* 04956C 8004896C 44804000 */ mtc1 $zero, $f8 -/* 049570 80048970 1580002B */ bnez $t4, .L80048A20 -/* 049574 80048974 24060004 */ li $a2, 4 -/* 049578 80048978 820B01E5 */ lb $t3, 0x1e5($s0) -/* 04957C 8004897C 3C088012 */ lui $t0, %hi(D_8011D538) # $t0, 0x8012 -/* 049580 80048980 15600027 */ bnez $t3, .L80048A20 -/* 049584 80048984 34018001 */ li $at, 32769 -/* 049588 80048988 8D08D538 */ lw $t0, %lo(D_8011D538)($t0) -/* 04958C 8004898C 86240002 */ lh $a0, 2($s1) -/* 049590 80048990 00084023 */ negu $t0, $t0 -/* 049594 80048994 00087180 */ sll $t6, $t0, 6 -/* 049598 80048998 31CFFFFF */ andi $t7, $t6, 0xffff -/* 04959C 8004899C 3098FFFF */ andi $t8, $a0, 0xffff -/* 0495A0 800489A0 01F81823 */ subu $v1, $t7, $t8 -/* 0495A4 800489A4 0061082A */ slt $at, $v1, $at -/* 0495A8 800489A8 14200003 */ bnez $at, .L800489B8 -/* 0495AC 800489AC 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 0495B0 800489B0 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 0495B4 800489B4 00611821 */ addu $v1, $v1, $at -.L800489B8: -/* 0495B8 800489B8 28618000 */ slti $at, $v1, -0x8000 -/* 0495BC 800489BC 10200002 */ beqz $at, .L800489C8 -/* 0495C0 800489C0 3401FFFF */ li $at, 65535 -/* 0495C4 800489C4 00611821 */ addu $v1, $v1, $at -.L800489C8: -/* 0495C8 800489C8 0003C883 */ sra $t9, $v1, 2 -/* 0495CC 800489CC 00996821 */ addu $t5, $a0, $t9 -/* 0495D0 800489D0 A62D0002 */ sh $t5, 2($s1) -/* 0495D4 800489D4 860501A4 */ lh $a1, 0x1a4($s0) -/* 0495D8 800489D8 34018001 */ li $at, 32769 -/* 0495DC 800489DC 30A2FFFF */ andi $v0, $a1, 0xffff -/* 0495E0 800489E0 00021023 */ negu $v0, $v0 -/* 0495E4 800489E4 0041082A */ slt $at, $v0, $at -/* 0495E8 800489E8 8FAA0128 */ lw $t2, 0x128($sp) -/* 0495EC 800489EC 14200003 */ bnez $at, .L800489FC -/* 0495F0 800489F0 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 0495F4 800489F4 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 0495F8 800489F8 00411021 */ addu $v0, $v0, $at -.L800489FC: -/* 0495FC 800489FC 28418000 */ slti $at, $v0, -0x8000 -/* 049600 80048A00 10200002 */ beqz $at, .L80048A0C -/* 049604 80048A04 3401FFFF */ li $at, 65535 -/* 049608 80048A08 00411021 */ addu $v0, $v0, $at -.L80048A0C: -/* 04960C 80048A0C 004A0019 */ multu $v0, $t2 -/* 049610 80048A10 00001012 */ mflo $v0 -/* 049614 80048A14 00026103 */ sra $t4, $v0, 4 -/* 049618 80048A18 00AC5821 */ addu $t3, $a1, $t4 -/* 04961C 80048A1C A60B01A4 */ sh $t3, 0x1a4($s0) -.L80048A20: -/* 049620 80048A20 3C0E8012 */ lui $t6, %hi(D_8011D540) # $t6, 0x8012 -/* 049624 80048A24 8DCED540 */ lw $t6, %lo(D_8011D540)($t6) -/* 049628 80048A28 3C0D8012 */ lui $t5, %hi(D_8011D52C) # $t5, 0x8012 -/* 04962C 80048A2C 11C00007 */ beqz $t6, .L80048A4C -/* 049630 80048A30 02202025 */ move $a0, $s1 -/* 049634 80048A34 3C0F8012 */ lui $t7, %hi(D_8011D52C) # $t7, 0x8012 -/* 049638 80048A38 8DEFD52C */ lw $t7, %lo(D_8011D52C)($t7) -/* 04963C 80048A3C 2401FFEF */ li $at, -17 -/* 049640 80048A40 01E1C024 */ and $t8, $t7, $at -/* 049644 80048A44 3C018012 */ lui $at, %hi(D_8011D52C) # $at, 0x8012 -/* 049648 80048A48 AC38D52C */ sw $t8, %lo(D_8011D52C)($at) -.L80048A4C: -/* 04964C 80048A4C C60A00C0 */ lwc1 $f10, 0xc0($s0) -/* 049650 80048A50 00000000 */ nop -/* 049654 80048A54 460A4032 */ c.eq.s $f8, $f10 -/* 049658 80048A58 00000000 */ nop -/* 04965C 80048A5C 45000005 */ bc1f .L80048A74 -/* 049660 80048A60 00000000 */ nop -/* 049664 80048A64 821901E2 */ lb $t9, 0x1e2($s0) -/* 049668 80048A68 24010004 */ li $at, 4 -/* 04966C 80048A6C 17210002 */ bne $t9, $at, .L80048A78 -/* 049670 80048A70 00000000 */ nop -.L80048A74: -/* 049674 80048A74 A20001FB */ sb $zero, 0x1fb($s0) -.L80048A78: -/* 049678 80048A78 8DADD52C */ lw $t5, %lo(D_8011D52C)($t5) -/* 04967C 80048A7C 00000000 */ nop -/* 049680 80048A80 31AA0010 */ andi $t2, $t5, 0x10 -/* 049684 80048A84 1140004A */ beqz $t2, .L80048BB0 -/* 049688 80048A88 00000000 */ nop -/* 04968C 80048A8C C60C00C0 */ lwc1 $f12, 0xc0($s0) -/* 049690 80048A90 44802000 */ mtc1 $zero, $f4 -/* 049694 80048A94 00000000 */ nop -/* 049698 80048A98 460C203C */ c.lt.s $f4, $f12 -/* 04969C 80048A9C 00000000 */ nop -/* 0496A0 80048AA0 45010006 */ bc1t .L80048ABC -/* 0496A4 80048AA4 00000000 */ nop -/* 0496A8 80048AA8 820C01E2 */ lb $t4, 0x1e2($s0) -/* 0496AC 80048AAC 00000000 */ nop -/* 0496B0 80048AB0 29810002 */ slti $at, $t4, 2 -/* 0496B4 80048AB4 1420003E */ bnez $at, .L80048BB0 -/* 0496B8 80048AB8 00000000 */ nop -.L80048ABC: -/* 0496BC 80048ABC 820B01FB */ lb $t3, 0x1fb($s0) -/* 0496C0 80048AC0 00000000 */ nop -/* 0496C4 80048AC4 1560003A */ bnez $t3, .L80048BB0 -/* 0496C8 80048AC8 00000000 */ nop -/* 0496CC 80048ACC 44803000 */ mtc1 $zero, $f6 -/* 0496D0 80048AD0 3C01400C */ li $at, 0x400C0000 # 2.187500 -/* 0496D4 80048AD4 460C3032 */ c.eq.s $f6, $f12 -/* 0496D8 80048AD8 00000000 */ nop -/* 0496DC 80048ADC 45010018 */ bc1t .L80048B40 -/* 0496E0 80048AE0 00000000 */ nop -/* 0496E4 80048AE4 C6280020 */ lwc1 $f8, 0x20($s1) -/* 0496E8 80048AE8 3C014012 */ li $at, 0x40120000 # 2.281250 -/* 0496EC 80048AEC 44812800 */ mtc1 $at, $f5 -/* 0496F0 80048AF0 44802000 */ mtc1 $zero, $f4 -/* 0496F4 80048AF4 460042A1 */ cvt.d.s $f10, $f8 -/* 0496F8 80048AF8 46245180 */ add.d $f6, $f10, $f4 -/* 0496FC 80048AFC 3C014016 */ li $at, 0x40160000 # 2.343750 -/* 049700 80048B00 46203220 */ cvt.s.d $f8, $f6 -/* 049704 80048B04 44812800 */ mtc1 $at, $f5 -/* 049708 80048B08 E6280020 */ swc1 $f8, 0x20($s1) -/* 04970C 80048B0C C62A0020 */ lwc1 $f10, 0x20($s1) -/* 049710 80048B10 44802000 */ mtc1 $zero, $f4 -/* 049714 80048B14 46005021 */ cvt.d.s $f0, $f10 -/* 049718 80048B18 4620203C */ c.lt.d $f4, $f0 -/* 04971C 80048B1C 3C0140B0 */ li $at, 0x40B00000 # 5.500000 -/* 049720 80048B20 45000011 */ bc1f .L80048B68 -/* 049724 80048B24 00000000 */ nop -/* 049728 80048B28 44813000 */ mtc1 $at, $f6 -/* 04972C 80048B2C 00000000 */ nop -/* 049730 80048B30 E6260020 */ swc1 $f6, 0x20($s1) -/* 049734 80048B34 C6280020 */ lwc1 $f8, 0x20($s1) -/* 049738 80048B38 1000000B */ b .L80048B68 -/* 04973C 80048B3C 46004021 */ cvt.d.s $f0, $f8 -.L80048B40: -/* 049740 80048B40 C62A0020 */ lwc1 $f10, 0x20($s1) -/* 049744 80048B44 44813800 */ mtc1 $at, $f7 -/* 049748 80048B48 44803000 */ mtc1 $zero, $f6 -/* 04974C 80048B4C 46005121 */ cvt.d.s $f4, $f10 -/* 049750 80048B50 46262200 */ add.d $f8, $f4, $f6 -/* 049754 80048B54 462042A0 */ cvt.s.d $f10, $f8 -/* 049758 80048B58 E62A0020 */ swc1 $f10, 0x20($s1) -/* 04975C 80048B5C C6240020 */ lwc1 $f4, 0x20($s1) -/* 049760 80048B60 00000000 */ nop -/* 049764 80048B64 46002021 */ cvt.d.s $f0, $f4 -.L80048B68: -/* 049768 80048B68 3C018012 */ lui $at, %hi(D_8011D56C) # $at, 0x8012 -/* 04976C 80048B6C C428D56C */ lwc1 $f8, %lo(D_8011D56C)($at) -/* 049770 80048B70 46200180 */ add.d $f6, $f0, $f0 -/* 049774 80048B74 460042A1 */ cvt.d.s $f10, $f8 -/* 049778 80048B78 00000000 */ nop -/* 04977C 80048B7C 462A3103 */ div.d $f4, $f6, $f10 -/* 049780 80048B80 462020A0 */ cvt.s.d $f2, $f4 -/* 049784 80048B84 444EF800 */ cfc1 $t6, $31 -/* 049788 80048B88 00000000 */ nop -/* 04978C 80048B8C 35C10003 */ ori $at, $t6, 3 -/* 049790 80048B90 38210002 */ xori $at, $at, 2 -/* 049794 80048B94 44C1F800 */ ctc1 $at, $31 -/* 049798 80048B98 00000000 */ nop -/* 04979C 80048B9C 46001224 */ cvt.w.s $f8, $f2 -/* 0497A0 80048BA0 440F4000 */ mfc1 $t7, $f8 -/* 0497A4 80048BA4 44CEF800 */ ctc1 $t6, $31 -/* 0497A8 80048BA8 25F80001 */ addiu $t8, $t7, 1 -/* 0497AC 80048BAC A21801FB */ sb $t8, 0x1fb($s0) -.L80048BB0: -/* 0497B0 80048BB0 820201FB */ lb $v0, 0x1fb($s0) -/* 0497B4 80048BB4 8FB90128 */ lw $t9, 0x128($sp) -/* 0497B8 80048BB8 18400004 */ blez $v0, .L80048BCC -/* 0497BC 80048BBC 3C014220 */ li $at, 0x42200000 # 40.000000 -/* 0497C0 80048BC0 00596823 */ subu $t5, $v0, $t9 -/* 0497C4 80048BC4 10000002 */ b .L80048BD0 -/* 0497C8 80048BC8 A20D01FB */ sb $t5, 0x1fb($s0) -.L80048BCC: -/* 0497CC 80048BCC A20001FB */ sb $zero, 0x1fb($s0) -.L80048BD0: -/* 0497D0 80048BD0 44813000 */ mtc1 $at, $f6 -/* 0497D4 80048BD4 C7AA0118 */ lwc1 $f10, 0x118($sp) -/* 0497D8 80048BD8 3C01800E */ lui $at, %hi(D_800E6468) # $at, 0x800e -/* 0497DC 80048BDC 460A303C */ c.lt.s $f6, $f10 -/* 0497E0 80048BE0 3C0C8012 */ lui $t4, %hi(D_8011D534) # $t4, 0x8012 -/* 0497E4 80048BE4 45000004 */ bc1f .L80048BF8 -/* 0497E8 80048BE8 00000000 */ nop -/* 0497EC 80048BEC C4246468 */ lwc1 $f4, %lo(D_800E6468)($at) -/* 0497F0 80048BF0 00000000 */ nop -/* 0497F4 80048BF4 E60400C4 */ swc1 $f4, 0xc4($s0) -.L80048BF8: -/* 0497F8 80048BF8 8E230060 */ lw $v1, 0x60($s1) -/* 0497FC 80048BFC 24010001 */ li $at, 1 -/* 049800 80048C00 8C6A0000 */ lw $t2, ($v1) -/* 049804 80048C04 00000000 */ nop -/* 049808 80048C08 1541000F */ bne $t2, $at, .L80048C48 -/* 04980C 80048C0C 8FA7012C */ lw $a3, 0x12c($sp) -/* 049810 80048C10 8C620004 */ lw $v0, 4($v1) -/* 049814 80048C14 8D8CD534 */ lw $t4, %lo(D_8011D534)($t4) -/* 049818 80048C18 804F003A */ lb $t7, 0x3a($v0) -/* 04981C 80048C1C 000C5880 */ sll $t3, $t4, 2 -/* 049820 80048C20 25F80001 */ addiu $t8, $t7, 1 -/* 049824 80048C24 A058003A */ sb $t8, 0x3a($v0) -/* 049828 80048C28 8059003A */ lb $t9, 0x3a($v0) -/* 04982C 80048C2C 016C5821 */ addu $t3, $t3, $t4 -/* 049830 80048C30 000B5880 */ sll $t3, $t3, 2 -/* 049834 80048C34 256E4000 */ addiu $t6, $t3, 0x4000 -/* 049838 80048C38 332D0001 */ andi $t5, $t9, 1 -/* 04983C 80048C3C A44E0000 */ sh $t6, ($v0) -/* 049840 80048C40 A04D003A */ sb $t5, 0x3a($v0) -/* 049844 80048C44 8FA7012C */ lw $a3, 0x12c($sp) -.L80048C48: -/* 049848 80048C48 0C01602D */ jal func_800580B4 -/* 04984C 80048C4C 02002825 */ move $a1, $s0 -/* 049850 80048C50 83AA0067 */ lb $t2, 0x67($sp) -/* 049854 80048C54 02202025 */ move $a0, $s1 -/* 049858 80048C58 11400004 */ beqz $t2, .L80048C6C -/* 04985C 80048C5C 8FBF002C */ lw $ra, 0x2c($sp) -/* 049860 80048C60 0C008C34 */ jal func_800230D0 -/* 049864 80048C64 02002825 */ move $a1, $s0 -/* 049868 80048C68 8FBF002C */ lw $ra, 0x2c($sp) -.L80048C6C: -/* 04986C 80048C6C 8FB00024 */ lw $s0, 0x24($sp) -/* 049870 80048C70 8FB10028 */ lw $s1, 0x28($sp) -/* 049874 80048C74 03E00008 */ jr $ra -/* 049878 80048C78 27BD0128 */ addiu $sp, $sp, 0x128 - -glabel func_80048C7C -/* 04987C 80048C7C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 049880 80048C80 AFBF001C */ sw $ra, 0x1c($sp) -/* 049884 80048C84 AFB00018 */ sw $s0, 0x18($sp) -/* 049888 80048C88 84AE0000 */ lh $t6, ($a1) -/* 04988C 80048C8C 2401FFFF */ li $at, -1 -/* 049890 80048C90 15C10003 */ bne $t6, $at, .L80048CA0 -/* 049894 80048C94 00A08025 */ move $s0, $a1 -/* 049898 80048C98 10000003 */ b .L80048CA8 -/* 04989C 80048C9C 00001825 */ move $v1, $zero -.L80048CA0: -/* 0498A0 80048CA0 82030185 */ lb $v1, 0x185($s0) -/* 0498A4 80048CA4 00000000 */ nop -.L80048CA8: -/* 0498A8 80048CA8 82020187 */ lb $v0, 0x187($s0) -/* 0498AC 80048CAC 00000000 */ nop -/* 0498B0 80048CB0 10400005 */ beqz $v0, .L80048CC8 -/* 0498B4 80048CB4 00000000 */ nop -/* 0498B8 80048CB8 860F018E */ lh $t7, 0x18e($s0) -/* 0498BC 80048CBC 24010004 */ li $at, 4 -/* 0498C0 80048CC0 19E00003 */ blez $t7, .L80048CD0 -/* 0498C4 80048CC4 00000000 */ nop -.L80048CC8: -/* 0498C8 80048CC8 10000062 */ b .L80048E54 -/* 0498CC 80048CCC A2000187 */ sb $zero, 0x187($s0) -.L80048CD0: -/* 0498D0 80048CD0 10410008 */ beq $v0, $at, .L80048CF4 -/* 0498D4 80048CD4 02002825 */ move $a1, $s0 -/* 0498D8 80048CD8 24060002 */ li $a2, 2 -/* 0498DC 80048CDC A3A30027 */ sb $v1, 0x27($sp) -/* 0498E0 80048CE0 0C015DB8 */ jal func_800576E0 -/* 0498E4 80048CE4 AFA40028 */ sw $a0, 0x28($sp) -/* 0498E8 80048CE8 83A30027 */ lb $v1, 0x27($sp) -/* 0498EC 80048CEC 8FA40028 */ lw $a0, 0x28($sp) -/* 0498F0 80048CF0 00000000 */ nop -.L80048CF4: -/* 0498F4 80048CF4 240501C2 */ li $a1, 450 -/* 0498F8 80048CF8 24060008 */ li $a2, 8 -/* 0498FC 80048CFC 24070081 */ li $a3, 129 -/* 049900 80048D00 A3A30027 */ sb $v1, 0x27($sp) -/* 049904 80048D04 0C015C2E */ jal func_800570B8 -/* 049908 80048D08 AFA40028 */ sw $a0, 0x28($sp) -/* 04990C 80048D0C 82180187 */ lb $t8, 0x187($s0) -/* 049910 80048D10 83A30027 */ lb $v1, 0x27($sp) -/* 049914 80048D14 2719FFFF */ addiu $t9, $t8, -1 -/* 049918 80048D18 8FA40028 */ lw $a0, 0x28($sp) -/* 04991C 80048D1C 2F210006 */ sltiu $at, $t9, 6 -/* 049920 80048D20 1020004B */ beqz $at, .L80048E50 -/* 049924 80048D24 0019C880 */ sll $t9, $t9, 2 -/* 049928 80048D28 3C01800E */ lui $at, 0x800e -/* 04992C 80048D2C 00390821 */ addu $at, $at, $t9 -/* 049930 80048D30 8C39646C */ lw $t9, 0x646c($at) -/* 049934 80048D34 00000000 */ nop -/* 049938 80048D38 03200008 */ jr $t9 -/* 04993C 80048D3C 00000000 */ nop -/* 049940 80048D40 24080001 */ li $t0, 1 -/* 049944 80048D44 14600008 */ bnez $v1, .L80048D68 -/* 049948 80048D48 A20801F1 */ sb $t0, 0x1f1($s0) -/* 04994C 80048D4C 44800000 */ mtc1 $zero, $f0 -/* 049950 80048D50 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 049954 80048D54 44812000 */ mtc1 $at, $f4 -/* 049958 80048D58 E480001C */ swc1 $f0, 0x1c($a0) -/* 04995C 80048D5C E4800024 */ swc1 $f0, 0x24($a0) -/* 049960 80048D60 1000003B */ b .L80048E50 -/* 049964 80048D64 E4840020 */ swc1 $f4, 0x20($a0) -.L80048D68: -/* 049968 80048D68 C486001C */ lwc1 $f6, 0x1c($a0) -/* 04996C 80048D6C 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 049970 80048D70 44810800 */ mtc1 $at, $f1 -/* 049974 80048D74 44800000 */ mtc1 $zero, $f0 -/* 049978 80048D78 46003221 */ cvt.d.s $f8, $f6 -/* 04997C 80048D7C 46204282 */ mul.d $f10, $f8, $f0 -/* 049980 80048D80 C4920024 */ lwc1 $f18, 0x24($a0) -/* 049984 80048D84 3C0140C0 */ li $at, 0x40C00000 # 6.000000 -/* 049988 80048D88 46009121 */ cvt.d.s $f4, $f18 -/* 04998C 80048D8C 46202182 */ mul.d $f6, $f4, $f0 -/* 049990 80048D90 46205420 */ cvt.s.d $f16, $f10 -/* 049994 80048D94 44815000 */ mtc1 $at, $f10 -/* 049998 80048D98 E490001C */ swc1 $f16, 0x1c($a0) -/* 04999C 80048D9C E48A0020 */ swc1 $f10, 0x20($a0) -/* 0499A0 80048DA0 46203220 */ cvt.s.d $f8, $f6 -/* 0499A4 80048DA4 1000002A */ b .L80048E50 -/* 0499A8 80048DA8 E4880024 */ swc1 $f8, 0x24($a0) -/* 0499AC 80048DAC 2409003C */ li $t1, 60 -/* 0499B0 80048DB0 10000027 */ b .L80048E50 -/* 0499B4 80048DB4 A20901ED */ sb $t1, 0x1ed($s0) -/* 0499B8 80048DB8 3C01800E */ lui $at, %hi(D_800E648C) # $at, 0x800e -/* 0499BC 80048DBC C4216488 */ lwc1 $f1, %lo(D_800E6488)($at) -/* 0499C0 80048DC0 C420648C */ lwc1 $f0, %lo(D_800E648C)($at) -/* 0499C4 80048DC4 240A0078 */ li $t2, 120 -/* 0499C8 80048DC8 A60A0204 */ sh $t2, 0x204($s0) -/* 0499CC 80048DCC C490001C */ lwc1 $f16, 0x1c($a0) -/* 0499D0 80048DD0 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 0499D4 80048DD4 460084A1 */ cvt.d.s $f18, $f16 -/* 0499D8 80048DD8 46209102 */ mul.d $f4, $f18, $f0 -/* 0499DC 80048DDC 44811000 */ mtc1 $at, $f2 -/* 0499E0 80048DE0 C4880020 */ lwc1 $f8, 0x20($a0) -/* 0499E4 80048DE4 00000000 */ nop -/* 0499E8 80048DE8 4608103C */ c.lt.s $f2, $f8 -/* 0499EC 80048DEC 462021A0 */ cvt.s.d $f6, $f4 -/* 0499F0 80048DF0 45000002 */ bc1f .L80048DFC -/* 0499F4 80048DF4 E486001C */ swc1 $f6, 0x1c($a0) -/* 0499F8 80048DF8 E4820020 */ swc1 $f2, 0x20($a0) -.L80048DFC: -/* 0499FC 80048DFC C48A0024 */ lwc1 $f10, 0x24($a0) -/* 049A00 80048E00 00000000 */ nop -/* 049A04 80048E04 46005421 */ cvt.d.s $f16, $f10 -/* 049A08 80048E08 46208482 */ mul.d $f18, $f16, $f0 -/* 049A0C 80048E0C 46209120 */ cvt.s.d $f4, $f18 -/* 049A10 80048E10 1000000F */ b .L80048E50 -/* 049A14 80048E14 E4840024 */ swc1 $f4, 0x24($a0) -/* 049A18 80048E18 44800000 */ mtc1 $zero, $f0 -/* 049A1C 80048E1C 240B0001 */ li $t3, 1 -/* 049A20 80048E20 A20B01F1 */ sb $t3, 0x1f1($s0) -/* 049A24 80048E24 E600002C */ swc1 $f0, 0x2c($s0) -/* 049A28 80048E28 3C01800E */ lui $at, %hi(D_800E6494) # $at, 0x800e -/* 049A2C 80048E2C C4860020 */ lwc1 $f6, 0x20($a0) -/* 049A30 80048E30 C42B6490 */ lwc1 $f11, %lo(D_800E6490)($at) -/* 049A34 80048E34 C42A6494 */ lwc1 $f10, %lo(D_800E6494)($at) -/* 049A38 80048E38 46003221 */ cvt.d.s $f8, $f6 -/* 049A3C 80048E3C 462A4400 */ add.d $f16, $f8, $f10 -/* 049A40 80048E40 24050139 */ li $a1, 313 -/* 049A44 80048E44 462084A0 */ cvt.s.d $f18, $f16 -/* 049A48 80048E48 0C015C12 */ jal func_80057048 -/* 049A4C 80048E4C E4920020 */ swc1 $f18, 0x20($a0) -.L80048E50: -/* 049A50 80048E50 A2000187 */ sb $zero, 0x187($s0) -.L80048E54: -/* 049A54 80048E54 8FBF001C */ lw $ra, 0x1c($sp) -/* 049A58 80048E58 8FB00018 */ lw $s0, 0x18($sp) -/* 049A5C 80048E5C 03E00008 */ jr $ra -/* 049A60 80048E60 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_80048E64 -/* 049A64 80048E64 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 049A68 80048E68 3C014325 */ li $at, 0x43250000 # 165.000000 -/* 049A6C 80048E6C 44817000 */ mtc1 $at, $f14 -/* 049A70 80048E70 3C014282 */ li $at, 0x42820000 # 65.000000 -/* 049A74 80048E74 44819000 */ mtc1 $at, $f18 -/* 049A78 80048E78 AFBF001C */ sw $ra, 0x1c($sp) -/* 049A7C 80048E7C 240E0400 */ li $t6, 1024 -/* 049A80 80048E80 AFB00018 */ sw $s0, 0x18($sp) -/* 049A84 80048E84 E7AC0060 */ swc1 $f12, 0x60($sp) -/* 049A88 80048E88 AFA50064 */ sw $a1, 0x64($sp) -/* 049A8C 80048E8C AFAE0024 */ sw $t6, 0x24($sp) -/* 049A90 80048E90 AFA60068 */ sw $a2, 0x68($sp) -/* 049A94 80048E94 E7AE0048 */ swc1 $f14, 0x48($sp) -/* 049A98 80048E98 0C019884 */ jal func_80066210 -/* 049A9C 80048E9C E7B20044 */ swc1 $f18, 0x44($sp) -/* 049AA0 80048EA0 24060001 */ li $a2, 1 -/* 049AA4 80048EA4 8FA70068 */ lw $a3, 0x68($sp) -/* 049AA8 80048EA8 C7AE0048 */ lwc1 $f14, 0x48($sp) -/* 049AAC 80048EAC C7B20044 */ lwc1 $f18, 0x44($sp) -/* 049AB0 80048EB0 14460008 */ bne $v0, $a2, .L80048ED4 -/* 049AB4 80048EB4 3C108012 */ lui $s0, %hi(D_8011D508) # $s0, 0x8012 -/* 049AB8 80048EB8 3C014348 */ li $at, 0x43480000 # 200.000000 -/* 049ABC 80048EBC 44817000 */ mtc1 $at, $f14 -/* 049AC0 80048EC0 3C01424C */ li $at, 0x424C0000 # 51.000000 -/* 049AC4 80048EC4 44819000 */ mtc1 $at, $f18 -/* 049AC8 80048EC8 240F0280 */ li $t7, 640 -/* 049ACC 80048ECC 10000008 */ b .L80048EF0 -/* 049AD0 80048ED0 AFAF0024 */ sw $t7, 0x24($sp) -.L80048ED4: -/* 049AD4 80048ED4 28410002 */ slti $at, $v0, 2 -/* 049AD8 80048ED8 14200005 */ bnez $at, .L80048EF0 -/* 049ADC 80048EDC 3C014302 */ li $at, 0x43020000 # 130.000000 -/* 049AE0 80048EE0 44817000 */ mtc1 $at, $f14 -/* 049AE4 80048EE4 3C014248 */ li $at, 0x42480000 # 50.000000 -/* 049AE8 80048EE8 44819000 */ mtc1 $at, $f18 -/* 049AEC 80048EEC 00000000 */ nop -.L80048EF0: -/* 049AF0 80048EF0 2610D508 */ addiu $s0, %lo(D_8011D508) # addiu $s0, $s0, -0x2af8 -/* 049AF4 80048EF4 8E050000 */ lw $a1, ($s0) -/* 049AF8 80048EF8 C4F000B8 */ lwc1 $f16, 0xb8($a3) -/* 049AFC 80048EFC 90A2003B */ lbu $v0, 0x3b($a1) -/* 049B00 80048F00 C4EC0008 */ lwc1 $f12, 8($a3) -/* 049B04 80048F04 10460007 */ beq $v0, $a2, .L80048F24 -/* 049B08 80048F08 24010002 */ li $at, 2 -/* 049B0C 80048F0C 10410009 */ beq $v0, $at, .L80048F34 -/* 049B10 80048F10 24010003 */ li $at, 3 -/* 049B14 80048F14 1041000F */ beq $v0, $at, .L80048F54 -/* 049B18 80048F18 3C014254 */ lui $at, 0x4254 -/* 049B1C 80048F1C 1000001A */ b .L80048F88 -/* 049B20 80048F20 80F801E4 */ lb $t8, 0x1e4($a3) -.L80048F24: -/* 049B24 80048F24 3C01420C */ li $at, 0x420C0000 # 35.000000 -/* 049B28 80048F28 44812000 */ mtc1 $at, $f4 -/* 049B2C 80048F2C 10000015 */ b .L80048F84 -/* 049B30 80048F30 46047380 */ add.s $f14, $f14, $f4 -.L80048F34: -/* 049B34 80048F34 3C01420C */ li $at, 0x420C0000 # 35.000000 -/* 049B38 80048F38 44813000 */ mtc1 $at, $f6 -/* 049B3C 80048F3C 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 049B40 80048F40 44814000 */ mtc1 $at, $f8 -/* 049B44 80048F44 46067381 */ sub.s $f14, $f14, $f6 -/* 049B48 80048F48 1000000E */ b .L80048F84 -/* 049B4C 80048F4C 46089481 */ sub.s $f18, $f18, $f8 -/* 049B50 80048F50 3C014254 */ li $at, 0x42540000 # 53.000000 -.L80048F54: -/* 049B54 80048F54 44815000 */ mtc1 $at, $f10 -/* 049B58 80048F58 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 049B5C 80048F5C 44812000 */ mtc1 $at, $f4 -/* 049B60 80048F60 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 049B64 80048F64 44814800 */ mtc1 $at, $f9 -/* 049B68 80048F68 44804000 */ mtc1 $zero, $f8 -/* 049B6C 80048F6C 460061A1 */ cvt.d.s $f6, $f12 -/* 049B70 80048F70 460A7381 */ sub.s $f14, $f14, $f10 -/* 049B74 80048F74 44808000 */ mtc1 $zero, $f16 -/* 049B78 80048F78 46283282 */ mul.d $f10, $f6, $f8 -/* 049B7C 80048F7C 46049481 */ sub.s $f18, $f18, $f4 -/* 049B80 80048F80 46205320 */ cvt.s.d $f12, $f10 -.L80048F84: -/* 049B84 80048F84 80F801E4 */ lb $t8, 0x1e4($a3) -.L80048F88: -/* 049B88 80048F88 00000000 */ nop -/* 049B8C 80048F8C 1700002D */ bnez $t8, .L80049044 -/* 049B90 80048F90 00000000 */ nop -/* 049B94 80048F94 8FB90064 */ lw $t9, 0x64($sp) -/* 049B98 80048F98 8FA90024 */ lw $t1, 0x24($sp) -/* 049B9C 80048F9C 87220002 */ lh $v0, 2($t9) -/* 049BA0 80048FA0 34018001 */ li $at, 32769 -/* 049BA4 80048FA4 18400008 */ blez $v0, .L80048FC8 -/* 049BA8 80048FA8 00000000 */ nop -/* 049BAC 80048FAC 2442F9E4 */ addiu $v0, $v0, -0x61c -/* 049BB0 80048FB0 04410003 */ bgez $v0, .L80048FC0 -/* 049BB4 80048FB4 00024043 */ sra $t0, $v0, 1 -/* 049BB8 80048FB8 00001025 */ move $v0, $zero -/* 049BBC 80048FBC 00024043 */ sra $t0, $v0, 1 -.L80048FC0: -/* 049BC0 80048FC0 10000005 */ b .L80048FD8 -/* 049BC4 80048FC4 01001025 */ move $v0, $t0 -.L80048FC8: -/* 049BC8 80048FC8 2442061C */ addiu $v0, $v0, 0x61c -/* 049BCC 80048FCC 18400002 */ blez $v0, .L80048FD8 -/* 049BD0 80048FD0 00000000 */ nop -/* 049BD4 80048FD4 00001025 */ move $v0, $zero -.L80048FD8: -/* 049BD8 80048FD8 84A40002 */ lh $a0, 2($a1) -/* 049BDC 80048FDC 01221023 */ subu $v0, $t1, $v0 -/* 049BE0 80048FE0 308AFFFF */ andi $t2, $a0, 0xffff -/* 049BE4 80048FE4 004A1823 */ subu $v1, $v0, $t2 -/* 049BE8 80048FE8 0061082A */ slt $at, $v1, $at -/* 049BEC 80048FEC 14200003 */ bnez $at, .L80048FFC -/* 049BF0 80048FF0 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 049BF4 80048FF4 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 049BF8 80048FF8 00611821 */ addu $v1, $v1, $at -.L80048FFC: -/* 049BFC 80048FFC 28618000 */ slti $at, $v1, -0x8000 -/* 049C00 80049000 10200002 */ beqz $at, .L8004900C -/* 049C04 80049004 3401FFFF */ li $at, 65535 -/* 049C08 80049008 00611821 */ addu $v1, $v1, $at -.L8004900C: -/* 049C0C 8004900C 444BF800 */ cfc1 $t3, $31 -/* 049C10 80049010 C7A40060 */ lwc1 $f4, 0x60($sp) -/* 049C14 80049014 35610003 */ ori $at, $t3, 3 -/* 049C18 80049018 38210002 */ xori $at, $at, 2 -/* 049C1C 8004901C 44C1F800 */ ctc1 $at, $31 -/* 049C20 80049020 00000000 */ nop -/* 049C24 80049024 460021A4 */ cvt.w.s $f6, $f4 -/* 049C28 80049028 440C3000 */ mfc1 $t4, $f6 -/* 049C2C 8004902C 44CBF800 */ ctc1 $t3, $31 -/* 049C30 80049030 006C0019 */ multu $v1, $t4 -/* 049C34 80049034 00006812 */ mflo $t5 -/* 049C38 80049038 000D7103 */ sra $t6, $t5, 4 -/* 049C3C 8004903C 008E7821 */ addu $t7, $a0, $t6 -/* 049C40 80049040 A4AF0002 */ sh $t7, 2($a1) -.L80049044: -/* 049C44 80049044 AFA70068 */ sw $a3, 0x68($sp) -/* 049C48 80049048 E7AC0028 */ swc1 $f12, 0x28($sp) -/* 049C4C 8004904C E7AE0048 */ swc1 $f14, 0x48($sp) -/* 049C50 80049050 E7B0002C */ swc1 $f16, 0x2c($sp) -/* 049C54 80049054 0C019884 */ jal func_80066210 -/* 049C58 80049058 E7B20044 */ swc1 $f18, 0x44($sp) -/* 049C5C 8004905C 8FA70068 */ lw $a3, 0x68($sp) -/* 049C60 80049060 44805800 */ mtc1 $zero, $f11 -/* 049C64 80049064 C4E0002C */ lwc1 $f0, 0x2c($a3) -/* 049C68 80049068 44805000 */ mtc1 $zero, $f10 -/* 049C6C 8004906C 46000221 */ cvt.d.s $f8, $f0 -/* 049C70 80049070 462A403C */ c.lt.d $f8, $f10 -/* 049C74 80049074 C7AC0028 */ lwc1 $f12, 0x28($sp) -/* 049C78 80049078 C7AE0048 */ lwc1 $f14, 0x48($sp) -/* 049C7C 8004907C C7B0002C */ lwc1 $f16, 0x2c($sp) -/* 049C80 80049080 C7B20044 */ lwc1 $f18, 0x44($sp) -/* 049C84 80049084 45000013 */ bc1f .L800490D4 -/* 049C88 80049088 3C0141F0 */ lui $at, 0x41f0 -/* 049C8C 8004908C 46100102 */ mul.s $f4, $f0, $f16 -/* 049C90 80049090 3C0140C0 */ li $at, 0x40C00000 # 6.000000 -/* 049C94 80049094 44814000 */ mtc1 $at, $f8 -/* 049C98 80049098 3C01800E */ lui $at, %hi(D_800E649C) # $at, 0x800e -/* 049C9C 8004909C 46002187 */ neg.s $f6, $f4 -/* 049CA0 800490A0 46083082 */ mul.s $f2, $f6, $f8 -/* 049CA4 800490A4 C42B6498 */ lwc1 $f11, %lo(D_800E6498)($at) -/* 049CA8 800490A8 C42A649C */ lwc1 $f10, %lo(D_800E649C)($at) -/* 049CAC 800490AC 3C014282 */ li $at, 0x42820000 # 65.000000 -/* 049CB0 800490B0 46001121 */ cvt.d.s $f4, $f2 -/* 049CB4 800490B4 4624503C */ c.lt.d $f10, $f4 -/* 049CB8 800490B8 00000000 */ nop -/* 049CBC 800490BC 45000003 */ bc1f .L800490CC -/* 049CC0 800490C0 00000000 */ nop -/* 049CC4 800490C4 44811000 */ mtc1 $at, $f2 -/* 049CC8 800490C8 00000000 */ nop -.L800490CC: -/* 049CCC 800490CC 46027381 */ sub.s $f14, $f14, $f2 -/* 049CD0 800490D0 3C0141F0 */ li $at, 0x41F00000 # 30.000000 -.L800490D4: -/* 049CD4 800490D4 44813000 */ mtc1 $at, $f6 -/* 049CD8 800490D8 3C188012 */ lui $t8, %hi(D_8011D540) # $t8, 0x8012 -/* 049CDC 800490DC 46066202 */ mul.s $f8, $f12, $f6 -/* 049CE0 800490E0 8F18D540 */ lw $t8, %lo(D_8011D540)($t8) -/* 049CE4 800490E4 00000000 */ nop -/* 049CE8 800490E8 17000014 */ bnez $t8, .L8004913C -/* 049CEC 800490EC 46087380 */ add.s $f14, $f14, $f8 -/* 049CF0 800490F0 24040024 */ li $a0, 36 -/* 049CF4 800490F4 AFA70068 */ sw $a3, 0x68($sp) -/* 049CF8 800490F8 E7AE0048 */ swc1 $f14, 0x48($sp) -/* 049CFC 800490FC 0C00322D */ jal func_8000C8B4 -/* 049D00 80049100 E7B20044 */ swc1 $f18, 0x44($sp) -/* 049D04 80049104 8FA70068 */ lw $a3, 0x68($sp) -/* 049D08 80049108 C7AE0048 */ lwc1 $f14, 0x48($sp) -/* 049D0C 8004910C 80E301D3 */ lb $v1, 0x1d3($a3) -/* 049D10 80049110 C7B20044 */ lwc1 $f18, 0x44($sp) -/* 049D14 80049114 0043082A */ slt $at, $v0, $v1 -/* 049D18 80049118 10200004 */ beqz $at, .L8004912C -/* 049D1C 8004911C 3C01C1F0 */ li $at, 0xC1F00000 # -30.000000 -/* 049D20 80049120 44817000 */ mtc1 $at, $f14 -/* 049D24 80049124 10000005 */ b .L8004913C -/* 049D28 80049128 00000000 */ nop -.L8004912C: -/* 049D2C 8004912C 18600003 */ blez $v1, .L8004913C -/* 049D30 80049130 3C014334 */ li $at, 0x43340000 # 180.000000 -/* 049D34 80049134 44817000 */ mtc1 $at, $f14 -/* 049D38 80049138 00000000 */ nop -.L8004913C: -/* 049D3C 8004913C 3C198012 */ lui $t9, %hi(D_8011D540) # $t9, 0x8012 -/* 049D40 80049140 8F39D540 */ lw $t9, %lo(D_8011D540)($t9) -/* 049D44 80049144 00000000 */ nop -/* 049D48 80049148 2B210051 */ slti $at, $t9, 0x51 -/* 049D4C 8004914C 14200007 */ bnez $at, .L8004916C -/* 049D50 80049150 00000000 */ nop -/* 049D54 80049154 8E080000 */ lw $t0, ($s0) -/* 049D58 80049158 00000000 */ nop -/* 049D5C 8004915C E50E001C */ swc1 $f14, 0x1c($t0) -/* 049D60 80049160 8E090000 */ lw $t1, ($s0) -/* 049D64 80049164 00000000 */ nop -/* 049D68 80049168 E5320020 */ swc1 $f18, 0x20($t1) -.L8004916C: -/* 049D6C 8004916C 8E050000 */ lw $a1, ($s0) -/* 049D70 80049170 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 049D74 80049174 C4A0001C */ lwc1 $f0, 0x1c($a1) -/* 049D78 80049178 44816800 */ mtc1 $at, $f13 -/* 049D7C 8004917C 46007101 */ sub.s $f4, $f14, $f0 -/* 049D80 80049180 44806000 */ mtc1 $zero, $f12 -/* 049D84 80049184 460021A1 */ cvt.d.s $f6, $f4 -/* 049D88 80049188 462C3202 */ mul.d $f8, $f6, $f12 -/* 049D8C 8004918C 460002A1 */ cvt.d.s $f10, $f0 -/* 049D90 80049190 46285100 */ add.d $f4, $f10, $f8 -/* 049D94 80049194 462021A0 */ cvt.s.d $f6, $f4 -/* 049D98 80049198 E4A6001C */ swc1 $f6, 0x1c($a1) -/* 049D9C 8004919C 8E050000 */ lw $a1, ($s0) -/* 049DA0 800491A0 00000000 */ nop -/* 049DA4 800491A4 C4A20020 */ lwc1 $f2, 0x20($a1) -/* 049DA8 800491A8 00000000 */ nop -/* 049DAC 800491AC 46029201 */ sub.s $f8, $f18, $f2 -/* 049DB0 800491B0 46004121 */ cvt.d.s $f4, $f8 -/* 049DB4 800491B4 462C2182 */ mul.d $f6, $f4, $f12 -/* 049DB8 800491B8 460012A1 */ cvt.d.s $f10, $f2 -/* 049DBC 800491BC 46265200 */ add.d $f8, $f10, $f6 -/* 049DC0 800491C0 46204120 */ cvt.s.d $f4, $f8 -/* 049DC4 800491C4 E4A40020 */ swc1 $f4, 0x20($a1) -/* 049DC8 800491C8 8E0A0000 */ lw $t2, ($s0) -/* 049DCC 800491CC 8FAC0024 */ lw $t4, 0x24($sp) -/* 049DD0 800491D0 854B0002 */ lh $t3, 2($t2) -/* 049DD4 800491D4 AFA70068 */ sw $a3, 0x68($sp) -/* 049DD8 800491D8 016C2023 */ subu $a0, $t3, $t4 -/* 049DDC 800491DC 00046C00 */ sll $t5, $a0, 0x10 -/* 049DE0 800491E0 0C01C1F1 */ jal func_800707C4 -/* 049DE4 800491E4 000D2403 */ sra $a0, $t5, 0x10 -/* 049DE8 800491E8 8E0F0000 */ lw $t7, ($s0) -/* 049DEC 800491EC E7A00034 */ swc1 $f0, 0x34($sp) -/* 049DF0 800491F0 8FB90024 */ lw $t9, 0x24($sp) -/* 049DF4 800491F4 85F80002 */ lh $t8, 2($t7) -/* 049DF8 800491F8 00000000 */ nop -/* 049DFC 800491FC 03192023 */ subu $a0, $t8, $t9 -/* 049E00 80049200 00044400 */ sll $t0, $a0, 0x10 -/* 049E04 80049204 0C01C1FE */ jal func_800707F8 -/* 049E08 80049208 00082403 */ sra $a0, $t0, 0x10 -/* 049E0C 8004920C 8E050000 */ lw $a1, ($s0) -/* 049E10 80049210 C7A60034 */ lwc1 $f6, 0x34($sp) -/* 049E14 80049214 C4AA001C */ lwc1 $f10, 0x1c($a1) -/* 049E18 80049218 C4A40020 */ lwc1 $f4, 0x20($a1) -/* 049E1C 8004921C 46065202 */ mul.s $f8, $f10, $f6 -/* 049E20 80049220 8FA70068 */ lw $a3, 0x68($sp) -/* 049E24 80049224 340B8000 */ li $t3, 32768 -/* 049E28 80049228 84EA0196 */ lh $t2, 0x196($a3) -/* 049E2C 8004922C 46002282 */ mul.s $f10, $f4, $f0 -/* 049E30 80049230 016A2023 */ subu $a0, $t3, $t2 -/* 049E34 80049234 00046400 */ sll $t4, $a0, 0x10 -/* 049E38 80049238 000C2403 */ sra $a0, $t4, 0x10 -/* 049E3C 8004923C 460A4480 */ add.s $f18, $f8, $f10 -/* 049E40 80049240 0C01C1F1 */ jal func_800707C4 -/* 049E44 80049244 E7B20044 */ swc1 $f18, 0x44($sp) -/* 049E48 80049248 8E0E0000 */ lw $t6, ($s0) -/* 049E4C 8004924C 8FA70068 */ lw $a3, 0x68($sp) -/* 049E50 80049250 C5C6001C */ lwc1 $f6, 0x1c($t6) -/* 049E54 80049254 34188000 */ li $t8, 32768 -/* 049E58 80049258 46060102 */ mul.s $f4, $f0, $f6 -/* 049E5C 8004925C E7A40040 */ swc1 $f4, 0x40($sp) -/* 049E60 80049260 84EF0196 */ lh $t7, 0x196($a3) -/* 049E64 80049264 00000000 */ nop -/* 049E68 80049268 030F2023 */ subu $a0, $t8, $t7 -/* 049E6C 8004926C 0004CC00 */ sll $t9, $a0, 0x10 -/* 049E70 80049270 0C01C1FE */ jal func_800707F8 -/* 049E74 80049274 00192403 */ sra $a0, $t9, 0x10 -/* 049E78 80049278 3C0B8012 */ lui $t3, %hi(D_8011D586) # $t3, 0x8012 -/* 049E7C 8004927C 856BD586 */ lh $t3, %lo(D_8011D586)($t3) -/* 049E80 80049280 8E090000 */ lw $t1, ($s0) -/* 049E84 80049284 448B5000 */ mtc1 $t3, $f10 -/* 049E88 80049288 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 049E8C 8004928C 44817000 */ mtc1 $at, $f14 -/* 049E90 80049290 468051A0 */ cvt.s.w $f6, $f10 -/* 049E94 80049294 C528001C */ lwc1 $f8, 0x1c($t1) -/* 049E98 80049298 3C014620 */ li $at, 0x46200000 # 10240.000000 -/* 049E9C 8004929C 44812000 */ mtc1 $at, $f4 -/* 049EA0 800492A0 46080402 */ mul.s $f16, $f0, $f8 -/* 049EA4 800492A4 00000000 */ nop -/* 049EA8 800492A8 46043203 */ div.s $f8, $f6, $f4 -/* 049EAC 800492AC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 049EB0 800492B0 44813800 */ mtc1 $at, $f7 -/* 049EB4 800492B4 44803000 */ mtc1 $zero, $f6 -/* 049EB8 800492B8 8FA70068 */ lw $a3, 0x68($sp) -/* 049EBC 800492BC 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 049EC0 800492C0 460042A1 */ cvt.d.s $f10, $f8 -/* 049EC4 800492C4 462A3101 */ sub.d $f4, $f6, $f10 -/* 049EC8 800492C8 C4E60038 */ lwc1 $f6, 0x38($a3) -/* 049ECC 800492CC 462020A0 */ cvt.s.d $f2, $f4 -/* 049ED0 800492D0 C7A80040 */ lwc1 $f8, 0x40($sp) -/* 049ED4 800492D4 460E3282 */ mul.s $f10, $f6, $f14 -/* 049ED8 800492D8 00000000 */ nop -/* 049EDC 800492DC 46025102 */ mul.s $f4, $f10, $f2 -/* 049EE0 800492E0 46044181 */ sub.s $f6, $f8, $f4 -/* 049EE4 800492E4 E7A60040 */ swc1 $f6, 0x40($sp) -/* 049EE8 800492E8 C4EA0040 */ lwc1 $f10, 0x40($a3) -/* 049EEC 800492EC C4E60030 */ lwc1 $f6, 0x30($a3) -/* 049EF0 800492F0 460E5202 */ mul.s $f8, $f10, $f14 -/* 049EF4 800492F4 44815000 */ mtc1 $at, $f10 -/* 049EF8 800492F8 C4EC00C8 */ lwc1 $f12, 0xc8($a3) -/* 049EFC 800492FC 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 049F00 80049300 46024102 */ mul.s $f4, $f8, $f2 -/* 049F04 80049304 44813800 */ mtc1 $at, $f7 -/* 049F08 80049308 84E40196 */ lh $a0, 0x196($a3) -/* 049F0C 8004930C 460A3082 */ mul.s $f2, $f6, $f10 -/* 049F10 80049310 46048401 */ sub.s $f16, $f16, $f4 -/* 049F14 80049314 44803000 */ mtc1 $zero, $f6 -/* 049F18 80049318 24844000 */ addiu $a0, $a0, 0x4000 -/* 049F1C 8004931C 46026201 */ sub.s $f8, $f12, $f2 -/* 049F20 80049320 00045400 */ sll $t2, $a0, 0x10 -/* 049F24 80049324 46004121 */ cvt.d.s $f4, $f8 -/* 049F28 80049328 46262282 */ mul.d $f10, $f4, $f6 -/* 049F2C 8004932C 46006221 */ cvt.d.s $f8, $f12 -/* 049F30 80049330 000A2403 */ sra $a0, $t2, 0x10 -/* 049F34 80049334 462A4101 */ sub.d $f4, $f8, $f10 -/* 049F38 80049338 462021A0 */ cvt.s.d $f6, $f4 -/* 049F3C 8004933C E4E600C8 */ swc1 $f6, 0xc8($a3) -/* 049F40 80049340 0C01C1F1 */ jal func_800707C4 -/* 049F44 80049344 E7B0003C */ swc1 $f16, 0x3c($sp) -/* 049F48 80049348 8FA70068 */ lw $a3, 0x68($sp) -/* 049F4C 8004934C 8FA20064 */ lw $v0, 0x64($sp) -/* 049F50 80049350 C4E800C8 */ lwc1 $f8, 0xc8($a3) -/* 049F54 80049354 C7A40040 */ lwc1 $f4, 0x40($sp) -/* 049F58 80049358 46080082 */ mul.s $f2, $f0, $f8 -/* 049F5C 8004935C C44A000C */ lwc1 $f10, 0xc($v0) -/* 049F60 80049360 8E0D0000 */ lw $t5, ($s0) -/* 049F64 80049364 C7B20044 */ lwc1 $f18, 0x44($sp) -/* 049F68 80049368 46045180 */ add.s $f6, $f10, $f4 -/* 049F6C 8004936C C7B0003C */ lwc1 $f16, 0x3c($sp) -/* 049F70 80049370 46023200 */ add.s $f8, $f6, $f2 -/* 049F74 80049374 44803000 */ mtc1 $zero, $f6 -/* 049F78 80049378 E5A8000C */ swc1 $f8, 0xc($t5) -/* 049F7C 8004937C 8E050000 */ lw $a1, ($s0) -/* 049F80 80049380 C44A0010 */ lwc1 $f10, 0x10($v0) -/* 049F84 80049384 C4AC0010 */ lwc1 $f12, 0x10($a1) -/* 049F88 80049388 46125100 */ add.s $f4, $f10, $f18 -/* 049F8C 8004938C 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 049F90 80049390 46046081 */ sub.s $f2, $f12, $f4 -/* 049F94 80049394 3C0E8012 */ lui $t6, %hi(D_8011D53C) # $t6, 0x8012 -/* 049F98 80049398 4602303C */ c.lt.s $f6, $f2 -/* 049F9C 8004939C 00000000 */ nop -/* 049FA0 800493A0 45000007 */ bc1f .L800493C0 -/* 049FA4 800493A4 00000000 */ nop -/* 049FA8 800493A8 44815800 */ mtc1 $at, $f11 -/* 049FAC 800493AC 44805000 */ mtc1 $zero, $f10 -/* 049FB0 800493B0 46001221 */ cvt.d.s $f8, $f2 -/* 049FB4 800493B4 462A4102 */ mul.d $f4, $f8, $f10 -/* 049FB8 800493B8 10000018 */ b .L8004941C -/* 049FBC 800493BC 462020A0 */ cvt.s.d $f2, $f4 -.L800493C0: -/* 049FC0 800493C0 8DCED53C */ lw $t6, %lo(D_8011D53C)($t6) -/* 049FC4 800493C4 24010001 */ li $at, 1 -/* 049FC8 800493C8 15C10007 */ bne $t6, $at, .L800493E8 -/* 049FCC 800493CC 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 049FD0 800493D0 44814800 */ mtc1 $at, $f9 -/* 049FD4 800493D4 44804000 */ mtc1 $zero, $f8 -/* 049FD8 800493D8 460011A1 */ cvt.d.s $f6, $f2 -/* 049FDC 800493DC 46283282 */ mul.d $f10, $f6, $f8 -/* 049FE0 800493E0 10000007 */ b .L80049400 -/* 049FE4 800493E4 462050A0 */ cvt.s.d $f2, $f10 -.L800493E8: -/* 049FE8 800493E8 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 049FEC 800493EC 44813800 */ mtc1 $at, $f7 -/* 049FF0 800493F0 44803000 */ mtc1 $zero, $f6 -/* 049FF4 800493F4 46001121 */ cvt.d.s $f4, $f2 -/* 049FF8 800493F8 46262202 */ mul.d $f8, $f4, $f6 -/* 049FFC 800493FC 462040A0 */ cvt.s.d $f2, $f8 -.L80049400: -/* 04A000 80049400 80F801D3 */ lb $t8, 0x1d3($a3) -/* 04A004 80049404 00000000 */ nop -/* 04A008 80049408 13000004 */ beqz $t8, .L8004941C -/* 04A00C 8004940C 00000000 */ nop -/* 04A010 80049410 46001021 */ cvt.d.s $f0, $f2 -/* 04A014 80049414 46200280 */ add.d $f10, $f0, $f0 -/* 04A018 80049418 462050A0 */ cvt.s.d $f2, $f10 -.L8004941C: -/* 04A01C 8004941C 46026101 */ sub.s $f4, $f12, $f2 -/* 04A020 80049420 3C198012 */ lui $t9, %hi(D_8011D540) # $t9, 0x8012 -/* 04A024 80049424 E4A40010 */ swc1 $f4, 0x10($a1) -/* 04A028 80049428 8E0F0000 */ lw $t7, ($s0) -/* 04A02C 8004942C 00000000 */ nop -/* 04A030 80049430 A5E00004 */ sh $zero, 4($t7) -/* 04A034 80049434 8F39D540 */ lw $t9, %lo(D_8011D540)($t9) -/* 04A038 80049438 00000000 */ nop -/* 04A03C 8004943C 13200005 */ beqz $t9, .L80049454 -/* 04A040 80049440 00000000 */ nop -/* 04A044 80049444 C4460010 */ lwc1 $f6, 0x10($v0) -/* 04A048 80049448 8E080000 */ lw $t0, ($s0) -/* 04A04C 8004944C 46123200 */ add.s $f8, $f6, $f18 -/* 04A050 80049450 E5080010 */ swc1 $f8, 0x10($t0) -.L80049454: -/* 04A054 80049454 84E40196 */ lh $a0, 0x196($a3) -/* 04A058 80049458 E7B0003C */ swc1 $f16, 0x3c($sp) -/* 04A05C 8004945C 24844000 */ addiu $a0, $a0, 0x4000 -/* 04A060 80049460 00044C00 */ sll $t1, $a0, 0x10 -/* 04A064 80049464 00092403 */ sra $a0, $t1, 0x10 -/* 04A068 80049468 0C01C1FE */ jal func_800707F8 -/* 04A06C 8004946C AFA70068 */ sw $a3, 0x68($sp) -/* 04A070 80049470 8FAA0064 */ lw $t2, 0x64($sp) -/* 04A074 80049474 C7B0003C */ lwc1 $f16, 0x3c($sp) -/* 04A078 80049478 C54A0014 */ lwc1 $f10, 0x14($t2) -/* 04A07C 8004947C 8E0C0000 */ lw $t4, ($s0) -/* 04A080 80049480 46105100 */ add.s $f4, $f10, $f16 -/* 04A084 80049484 8FA70068 */ lw $a3, 0x68($sp) -/* 04A088 80049488 E5840014 */ swc1 $f4, 0x14($t4) -/* 04A08C 8004948C 8E0E0000 */ lw $t6, ($s0) -/* 04A090 80049490 84ED0196 */ lh $t5, 0x196($a3) -/* 04A094 80049494 00000000 */ nop -/* 04A098 80049498 A5CD0000 */ sh $t5, ($t6) -/* 04A09C 8004949C 8E050000 */ lw $a1, ($s0) -/* 04A0A0 800494A0 00000000 */ nop -/* 04A0A4 800494A4 C4AC000C */ lwc1 $f12, 0xc($a1) -/* 04A0A8 800494A8 C4AE0010 */ lwc1 $f14, 0x10($a1) -/* 04A0AC 800494AC 8CA60014 */ lw $a2, 0x14($a1) -/* 04A0B0 800494B0 0C00A7C6 */ jal func_80029F18 -/* 04A0B4 800494B4 00000000 */ nop -/* 04A0B8 800494B8 2401FFFF */ li $at, -1 -/* 04A0BC 800494BC 10410005 */ beq $v0, $at, .L800494D4 -/* 04A0C0 800494C0 8FBF001C */ lw $ra, 0x1c($sp) -/* 04A0C4 800494C4 8E180000 */ lw $t8, ($s0) -/* 04A0C8 800494C8 00000000 */ nop -/* 04A0CC 800494CC A7020034 */ sh $v0, 0x34($t8) -/* 04A0D0 800494D0 8FBF001C */ lw $ra, 0x1c($sp) -.L800494D4: -/* 04A0D4 800494D4 8FB00018 */ lw $s0, 0x18($sp) -/* 04A0D8 800494D8 03E00008 */ jr $ra -/* 04A0DC 800494DC 27BD0060 */ addiu $sp, $sp, 0x60 - -glabel func_800494E0 -/* 04A0E0 800494E0 27BDFF78 */ addiu $sp, $sp, -0x88 -/* 04A0E4 800494E4 8FB80098 */ lw $t8, 0x98($sp) -/* 04A0E8 800494E8 00077600 */ sll $t6, $a3, 0x18 -/* 04A0EC 800494EC 44982000 */ mtc1 $t8, $f4 -/* 04A0F0 800494F0 000E7E03 */ sra $t7, $t6, 0x18 -/* 04A0F4 800494F4 AFB10028 */ sw $s1, 0x28($sp) -/* 04A0F8 800494F8 AFB00024 */ sw $s0, 0x24($sp) -/* 04A0FC 800494FC 2401000E */ li $at, 14 -/* 04A100 80049500 00C08025 */ move $s0, $a2 -/* 04A104 80049504 00808825 */ move $s1, $a0 -/* 04A108 80049508 AFBF002C */ sw $ra, 0x2c($sp) -/* 04A10C 8004950C AFA5008C */ sw $a1, 0x8c($sp) -/* 04A110 80049510 AFA70094 */ sw $a3, 0x94($sp) -/* 04A114 80049514 15E10019 */ bne $t7, $at, .L8004957C -/* 04A118 80049518 46802020 */ cvt.s.w $f0, $f4 -/* 04A11C 8004951C 44800000 */ mtc1 $zero, $f0 -/* 04A120 80049520 C4A2002C */ lwc1 $f2, 0x2c($a1) -/* 04A124 80049524 3C01800E */ lui $at, %hi(D_800E64A4) # $at, 0x800e -/* 04A128 80049528 4600103C */ c.lt.s $f2, $f0 -/* 04A12C 8004952C 00000000 */ nop -/* 04A130 80049530 45000002 */ bc1f .L8004953C -/* 04A134 80049534 00000000 */ nop -/* 04A138 80049538 46001087 */ neg.s $f2, $f2 -.L8004953C: -/* 04A13C 8004953C C42964A0 */ lwc1 $f9, %lo(D_800E64A0)($at) -/* 04A140 80049540 C42864A4 */ lwc1 $f8, %lo(D_800E64A4)($at) -/* 04A144 80049544 460011A1 */ cvt.d.s $f6, $f2 -/* 04A148 80049548 46283282 */ mul.d $f10, $f6, $f8 -/* 04A14C 8004954C 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 04A150 80049550 44818800 */ mtc1 $at, $f17 -/* 04A154 80049554 44808000 */ mtc1 $zero, $f16 -/* 04A158 80049558 00000000 */ nop -/* 04A15C 8004955C 462A8481 */ sub.d $f18, $f16, $f10 -/* 04A160 80049560 462090A0 */ cvt.s.d $f2, $f18 -/* 04A164 80049564 4600103C */ c.lt.s $f2, $f0 -/* 04A168 80049568 00000000 */ nop -/* 04A16C 8004956C 45000014 */ bc1f .L800495C0 -/* 04A170 80049570 00000000 */ nop -/* 04A174 80049574 10000012 */ b .L800495C0 -/* 04A178 80049578 46000086 */ mov.s $f2, $f0 -.L8004957C: -/* 04A17C 8004957C C6060000 */ lwc1 $f6, ($s0) -/* 04A180 80049580 C7AC00A0 */ lwc1 $f12, 0xa0($sp) -/* 04A184 80049584 46003202 */ mul.s $f8, $f6, $f0 -/* 04A188 80049588 C624000C */ lwc1 $f4, 0xc($s1) -/* 04A18C 8004958C C6320014 */ lwc1 $f18, 0x14($s1) -/* 04A190 80049590 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 04A194 80049594 460C4402 */ mul.s $f16, $f8, $f12 -/* 04A198 80049598 44811000 */ mtc1 $at, $f2 -/* 04A19C 8004959C 46102280 */ add.s $f10, $f4, $f16 -/* 04A1A0 800495A0 E62A000C */ swc1 $f10, 0xc($s1) -/* 04A1A4 800495A4 C6060008 */ lwc1 $f6, 8($s0) -/* 04A1A8 800495A8 00000000 */ nop -/* 04A1AC 800495AC 46003202 */ mul.s $f8, $f6, $f0 -/* 04A1B0 800495B0 44800000 */ mtc1 $zero, $f0 -/* 04A1B4 800495B4 460C4102 */ mul.s $f4, $f8, $f12 -/* 04A1B8 800495B8 46049400 */ add.s $f16, $f18, $f4 -/* 04A1BC 800495BC E6300014 */ swc1 $f16, 0x14($s1) -.L800495C0: -/* 04A1C0 800495C0 86280000 */ lh $t0, ($s1) -/* 04A1C4 800495C4 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 -/* 04A1C8 800495C8 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 -/* 04A1CC 800495CC 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 04A1D0 800495D0 44815000 */ mtc1 $at, $f10 -/* 04A1D4 800495D4 00084823 */ negu $t1, $t0 -/* 04A1D8 800495D8 A4A90000 */ sh $t1, ($a1) -/* 04A1DC 800495DC A4A00002 */ sh $zero, 2($a1) -/* 04A1E0 800495E0 A4A00004 */ sh $zero, 4($a1) -/* 04A1E4 800495E4 E4A0000C */ swc1 $f0, 0xc($a1) -/* 04A1E8 800495E8 E4A00010 */ swc1 $f0, 0x10($a1) -/* 04A1EC 800495EC E4A00014 */ swc1 $f0, 0x14($a1) -/* 04A1F0 800495F0 E7A20044 */ swc1 $f2, 0x44($sp) -/* 04A1F4 800495F4 27A40048 */ addiu $a0, $sp, 0x48 -/* 04A1F8 800495F8 0C01BF9D */ jal func_8006FE74 -/* 04A1FC 800495FC E4AA0008 */ swc1 $f10, 8($a1) -/* 04A200 80049600 8E050000 */ lw $a1, ($s0) -/* 04A204 80049604 8E060004 */ lw $a2, 4($s0) -/* 04A208 80049608 8E070008 */ lw $a3, 8($s0) -/* 04A20C 8004960C 260A0004 */ addiu $t2, $s0, 4 -/* 04A210 80049610 260B0008 */ addiu $t3, $s0, 8 -/* 04A214 80049614 AFAB0018 */ sw $t3, 0x18($sp) -/* 04A218 80049618 AFAA0014 */ sw $t2, 0x14($sp) -/* 04A21C 8004961C AFB00010 */ sw $s0, 0x10($sp) -/* 04A220 80049620 0C01BD93 */ jal func_8006F64C -/* 04A224 80049624 27A40048 */ addiu $a0, $sp, 0x48 -/* 04A228 80049628 C60C0000 */ lwc1 $f12, ($s0) -/* 04A22C 8004962C C60E0004 */ lwc1 $f14, 4($s0) -/* 04A230 80049630 0C01C1D4 */ jal func_80070750 -/* 04A234 80049634 00000000 */ nop -/* 04A238 80049638 00026400 */ sll $t4, $v0, 0x10 -/* 04A23C 8004963C 000C6C03 */ sra $t5, $t4, 0x10 -/* 04A240 80049640 000D7023 */ negu $t6, $t5 -/* 04A244 80049644 448E3000 */ mtc1 $t6, $f6 -/* 04A248 80049648 C7A20044 */ lwc1 $f2, 0x44($sp) -/* 04A24C 8004964C 46803220 */ cvt.s.w $f8, $f6 -/* 04A250 80049650 8FA5008C */ lw $a1, 0x8c($sp) -/* 04A254 80049654 8FB9009C */ lw $t9, 0x9c($sp) -/* 04A258 80049658 46024482 */ mul.s $f18, $f8, $f2 -/* 04A25C 8004965C 84A301A4 */ lh $v1, 0x1a4($a1) -/* 04A260 80049660 00194180 */ sll $t0, $t9, 6 -/* 04A264 80049664 306BFFFF */ andi $t3, $v1, 0xffff -/* 04A268 80049668 444FF800 */ cfc1 $t7, $31 -/* 04A26C 8004966C 8FAC0098 */ lw $t4, 0x98($sp) -/* 04A270 80049670 35E10003 */ ori $at, $t7, 3 -/* 04A274 80049674 38210002 */ xori $at, $at, 2 -/* 04A278 80049678 44C1F800 */ ctc1 $at, $31 -/* 04A27C 8004967C 34018001 */ li $at, 32769 -/* 04A280 80049680 46009124 */ cvt.w.s $f4, $f18 -/* 04A284 80049684 44182000 */ mfc1 $t8, $f4 -/* 04A288 80049688 44CFF800 */ ctc1 $t7, $31 -/* 04A28C 8004968C 03084823 */ subu $t1, $t8, $t0 -/* 04A290 80049690 312AFFFF */ andi $t2, $t1, 0xffff -/* 04A294 80049694 014B2023 */ subu $a0, $t2, $t3 -/* 04A298 80049698 0081082A */ slt $at, $a0, $at -/* 04A29C 8004969C 14200003 */ bnez $at, .L800496AC -/* 04A2A0 800496A0 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 04A2A4 800496A4 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 04A2A8 800496A8 00812021 */ addu $a0, $a0, $at -.L800496AC: -/* 04A2AC 800496AC 28818000 */ slti $at, $a0, -0x8000 -/* 04A2B0 800496B0 10200002 */ beqz $at, .L800496BC -/* 04A2B4 800496B4 3401FFFF */ li $at, 65535 -/* 04A2B8 800496B8 00812021 */ addu $a0, $a0, $at -.L800496BC: -/* 04A2BC 800496BC 008C0019 */ multu $a0, $t4 -/* 04A2C0 800496C0 00006812 */ mflo $t5 -/* 04A2C4 800496C4 000D7103 */ sra $t6, $t5, 4 -/* 04A2C8 800496C8 006E7821 */ addu $t7, $v1, $t6 -/* 04A2CC 800496CC A4AF01A4 */ sh $t7, 0x1a4($a1) -/* 04A2D0 800496D0 C60E0004 */ lwc1 $f14, 4($s0) -/* 04A2D4 800496D4 C60C0008 */ lwc1 $f12, 8($s0) -/* 04A2D8 800496D8 0C01C1D4 */ jal func_80070750 -/* 04A2DC 800496DC E7A20044 */ swc1 $f2, 0x44($sp) -/* 04A2E0 800496E0 0002CC00 */ sll $t9, $v0, 0x10 -/* 04A2E4 800496E4 0019C403 */ sra $t8, $t9, 0x10 -/* 04A2E8 800496E8 44988000 */ mtc1 $t8, $f16 -/* 04A2EC 800496EC C7A20044 */ lwc1 $f2, 0x44($sp) -/* 04A2F0 800496F0 468082A0 */ cvt.s.w $f10, $f16 -/* 04A2F4 800496F4 3C0A8012 */ lui $t2, %hi(D_8011D538) # $t2, 0x8012 -/* 04A2F8 800496F8 8D4AD538 */ lw $t2, %lo(D_8011D538)($t2) -/* 04A2FC 800496FC 46025182 */ mul.s $f6, $f10, $f2 -/* 04A300 80049700 000A5823 */ negu $t3, $t2 -/* 04A304 80049704 000B6140 */ sll $t4, $t3, 5 -/* 04A308 80049708 86250002 */ lh $a1, 2($s1) -/* 04A30C 8004970C 4448F800 */ cfc1 $t0, $31 -/* 04A310 80049710 30AEFFFF */ andi $t6, $a1, 0xffff -/* 04A314 80049714 35010003 */ ori $at, $t0, 3 -/* 04A318 80049718 38210002 */ xori $at, $at, 2 -/* 04A31C 8004971C 44C1F800 */ ctc1 $at, $31 -/* 04A320 80049720 34018001 */ li $at, 32769 -/* 04A324 80049724 46003224 */ cvt.w.s $f8, $f6 -/* 04A328 80049728 8FAF0098 */ lw $t7, 0x98($sp) -/* 04A32C 8004972C 44094000 */ mfc1 $t1, $f8 -/* 04A330 80049730 44C8F800 */ ctc1 $t0, $31 -/* 04A334 80049734 012C1821 */ addu $v1, $t1, $t4 -/* 04A338 80049738 246303C0 */ addiu $v1, $v1, 0x3c0 -/* 04A33C 8004973C 306DFFFF */ andi $t5, $v1, 0xffff -/* 04A340 80049740 01AE2023 */ subu $a0, $t5, $t6 -/* 04A344 80049744 0081082A */ slt $at, $a0, $at -/* 04A348 80049748 14200003 */ bnez $at, .L80049758 -/* 04A34C 8004974C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 04A350 80049750 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 04A354 80049754 00812021 */ addu $a0, $a0, $at -.L80049758: -/* 04A358 80049758 28818000 */ slti $at, $a0, -0x8000 -/* 04A35C 8004975C 10200002 */ beqz $at, .L80049768 -/* 04A360 80049760 3401FFFF */ li $at, 65535 -/* 04A364 80049764 00812021 */ addu $a0, $a0, $at -.L80049768: -/* 04A368 80049768 008F0019 */ multu $a0, $t7 -/* 04A36C 8004976C 46001006 */ mov.s $f0, $f2 -/* 04A370 80049770 0000C812 */ mflo $t9 -/* 04A374 80049774 0019C103 */ sra $t8, $t9, 4 -/* 04A378 80049778 00B84021 */ addu $t0, $a1, $t8 -/* 04A37C 8004977C A6280002 */ sh $t0, 2($s1) -/* 04A380 80049780 8FBF002C */ lw $ra, 0x2c($sp) -/* 04A384 80049784 8FB10028 */ lw $s1, 0x28($sp) -/* 04A388 80049788 8FB00024 */ lw $s0, 0x24($sp) -/* 04A38C 8004978C 03E00008 */ jr $ra -/* 04A390 80049790 27BD0088 */ addiu $sp, $sp, 0x88 - -glabel func_80049794 -/* 04A394 80049794 27BDFF08 */ addiu $sp, $sp, -0xf8 -/* 04A398 80049798 AFBF0034 */ sw $ra, 0x34($sp) -/* 04A39C 8004979C AFB10030 */ sw $s1, 0x30($sp) -/* 04A3A0 800497A0 AFB0002C */ sw $s0, 0x2c($sp) -/* 04A3A4 800497A4 00E08025 */ move $s0, $a3 -/* 04A3A8 800497A8 00C08825 */ move $s1, $a2 -/* 04A3AC 800497AC E7B50020 */ swc1 $f21, 0x20($sp) -/* 04A3B0 800497B0 E7B40024 */ swc1 $f20, 0x24($sp) -/* 04A3B4 800497B4 AFA400F8 */ sw $a0, 0xf8($sp) -/* 04A3B8 800497B8 0C00384E */ jal func_8000E138 -/* 04A3BC 800497BC AFA500FC */ sw $a1, 0xfc($sp) -/* 04A3C0 800497C0 10400008 */ beqz $v0, .L800497E4 -/* 04A3C4 800497C4 3C01800E */ lui $at, %hi(D_800E64AC) # $at, 0x800e -/* 04A3C8 800497C8 C7A400FC */ lwc1 $f4, 0xfc($sp) -/* 04A3CC 800497CC C42964A8 */ lwc1 $f9, %lo(D_800E64A8)($at) -/* 04A3D0 800497D0 C42864AC */ lwc1 $f8, %lo(D_800E64AC)($at) -/* 04A3D4 800497D4 460021A1 */ cvt.d.s $f6, $f4 -/* 04A3D8 800497D8 46283282 */ mul.d $f10, $f6, $f8 -/* 04A3DC 800497DC 462054A0 */ cvt.s.d $f18, $f10 -/* 04A3E0 800497E0 E7B200FC */ swc1 $f18, 0xfc($sp) -.L800497E4: -/* 04A3E4 800497E4 A3A0005F */ sb $zero, 0x5f($sp) -/* 04A3E8 800497E8 820E01E2 */ lb $t6, 0x1e2($s0) -/* 04A3EC 800497EC 24010004 */ li $at, 4 -/* 04A3F0 800497F0 19C00005 */ blez $t6, .L80049808 -/* 04A3F4 800497F4 00000000 */ nop -/* 04A3F8 800497F8 44807000 */ mtc1 $zero, $f14 -/* 04A3FC 800497FC 00000000 */ nop -/* 04A400 80049800 E60E0084 */ swc1 $f14, 0x84($s0) -/* 04A404 80049804 E60E0088 */ swc1 $f14, 0x88($s0) -.L80049808: -/* 04A408 80049808 920F01FE */ lbu $t7, 0x1fe($s0) -/* 04A40C 8004980C 44807000 */ mtc1 $zero, $f14 -/* 04A410 80049810 15E1000A */ bne $t7, $at, .L8004983C -/* 04A414 80049814 00000000 */ nop -/* 04A418 80049818 821801DB */ lb $t8, 0x1db($s0) -/* 04A41C 8004981C 24040240 */ li $a0, 576 -/* 04A420 80049820 17000006 */ bnez $t8, .L8004983C -/* 04A424 80049824 00000000 */ nop -/* 04A428 80049828 0C000741 */ jal func_80001D04 -/* 04A42C 8004982C 00002825 */ move $a1, $zero -/* 04A430 80049830 24190014 */ li $t9, 20 -/* 04A434 80049834 44807000 */ mtc1 $zero, $f14 -/* 04A438 80049838 A21901DB */ sb $t9, 0x1db($s0) -.L8004983C: -/* 04A43C 8004983C 3C0B8012 */ lui $t3, %hi(D_8011D55C) # $t3, 0x8012 -/* 04A440 80049840 8D6BD55C */ lw $t3, %lo(D_8011D55C)($t3) -/* 04A444 80049844 2409FFFF */ li $t1, -1 -/* 04A448 80049848 112B00A4 */ beq $t1, $t3, .L80049ADC -/* 04A44C 8004984C 00005025 */ move $t2, $zero -/* 04A450 80049850 820C01D7 */ lb $t4, 0x1d7($s0) -/* 04A454 80049854 2401000C */ li $at, 12 -/* 04A458 80049858 118100A0 */ beq $t4, $at, .L80049ADC -/* 04A45C 8004985C 3C028012 */ lui $v0, %hi(D_8011D5AE) # $v0, 0x8012 -/* 04A460 80049860 8042D5AE */ lb $v0, %lo(D_8011D5AE)($v0) -/* 04A464 80049864 3C198012 */ lui $t9, %hi(D_8011D5B0) # $t9, 0x8012 -/* 04A468 80049868 1040009C */ beqz $v0, .L80049ADC -/* 04A46C 8004986C 2443FFFF */ addiu $v1, $v0, -1 -/* 04A470 80049870 0460001A */ bltz $v1, .L800498DC -/* 04A474 80049874 00602025 */ move $a0, $v1 -/* 04A478 80049878 3C0D8012 */ lui $t5, %hi(D_8011D5B0) # $t5, 0x8012 -/* 04A47C 8004987C 8DADD5B0 */ lw $t5, %lo(D_8011D5B0)($t5) -/* 04A480 80049880 00047080 */ sll $t6, $a0, 2 -/* 04A484 80049884 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 04A488 80049888 01AE1021 */ addu $v0, $t5, $t6 -/* 04A48C 8004988C 8C4F0000 */ lw $t7, ($v0) -/* 04A490 80049890 44813000 */ mtc1 $at, $f6 -/* 04A494 80049894 C6240010 */ lwc1 $f4, 0x10($s1) -/* 04A498 80049898 C5E80000 */ lwc1 $f8, ($t7) -/* 04A49C 8004989C 46062000 */ add.s $f0, $f4, $f6 -/* 04A4A0 800498A0 4600403C */ c.lt.s $f8, $f0 -/* 04A4A4 800498A4 00000000 */ nop -/* 04A4A8 800498A8 4500000C */ bc1f .L800498DC -/* 04A4AC 800498AC 00000000 */ nop -.L800498B0: -/* 04A4B0 800498B0 2484FFFF */ addiu $a0, $a0, -1 -/* 04A4B4 800498B4 04800009 */ bltz $a0, .L800498DC -/* 04A4B8 800498B8 2442FFFC */ addiu $v0, $v0, -4 -/* 04A4BC 800498BC 8C580000 */ lw $t8, ($v0) -/* 04A4C0 800498C0 00000000 */ nop -/* 04A4C4 800498C4 C70A0000 */ lwc1 $f10, ($t8) -/* 04A4C8 800498C8 00000000 */ nop -/* 04A4CC 800498CC 4600503C */ c.lt.s $f10, $f0 -/* 04A4D0 800498D0 00000000 */ nop -/* 04A4D4 800498D4 4501FFF6 */ bc1t .L800498B0 -/* 04A4D8 800498D8 00000000 */ nop -.L800498DC: -/* 04A4DC 800498DC 8F39D5B0 */ lw $t9, %lo(D_8011D5B0)($t9) -/* 04A4E0 800498E0 00042880 */ sll $a1, $a0, 2 -/* 04A4E4 800498E4 C62C0010 */ lwc1 $f12, 0x10($s1) -/* 04A4E8 800498E8 14830003 */ bne $a0, $v1, .L800498F8 -/* 04A4EC 800498EC 03251021 */ addu $v0, $t9, $a1 -/* 04A4F0 800498F0 24A5FFFC */ addiu $a1, $a1, -4 -/* 04A4F4 800498F4 2442FFFC */ addiu $v0, $v0, -4 -.L800498F8: -/* 04A4F8 800498F8 8C4B0004 */ lw $t3, 4($v0) -/* 04A4FC 800498FC 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 04A500 80049900 C5620000 */ lwc1 $f2, ($t3) -/* 04A504 80049904 44812000 */ mtc1 $at, $f4 -/* 04A508 80049908 46026481 */ sub.s $f18, $f12, $f2 -/* 04A50C 8004990C 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 04A510 80049910 44813000 */ mtc1 $at, $f6 -/* 04A514 80049914 46049081 */ sub.s $f2, $f18, $f4 -/* 04A518 80049918 3C01420C */ li $at, 0x420C0000 # 35.000000 -/* 04A51C 8004991C 4602303C */ c.lt.s $f6, $f2 -/* 04A520 80049920 44814000 */ mtc1 $at, $f8 -/* 04A524 80049924 45000002 */ bc1f .L80049930 -/* 04A528 80049928 3C014020 */ li $at, 0x40200000 # 2.500000 -/* 04A52C 8004992C A20001E6 */ sb $zero, 0x1e6($s0) -.L80049930: -/* 04A530 80049930 C600002C */ lwc1 $f0, 0x2c($s0) -/* 04A534 80049934 00000000 */ nop -/* 04A538 80049938 46000007 */ neg.s $f0, $f0 -/* 04A53C 8004993C 460E003C */ c.lt.s $f0, $f14 -/* 04A540 80049940 00000000 */ nop -/* 04A544 80049944 45000002 */ bc1f .L80049950 -/* 04A548 80049948 00000000 */ nop -/* 04A54C 8004994C 46007006 */ mov.s $f0, $f14 -.L80049950: -/* 04A550 80049950 4608103C */ c.lt.s $f2, $f8 -/* 04A554 80049954 00000000 */ nop -/* 04A558 80049958 45000009 */ bc1f .L80049980 -/* 04A55C 8004995C 00000000 */ nop -/* 04A560 80049960 44816800 */ mtc1 $at, $f13 -/* 04A564 80049964 44806000 */ mtc1 $zero, $f12 -/* 04A568 80049968 460002A1 */ cvt.d.s $f10, $f0 -/* 04A56C 8004996C 462C503C */ c.lt.d $f10, $f12 -/* 04A570 80049970 00000000 */ nop -/* 04A574 80049974 45000002 */ bc1f .L80049980 -/* 04A578 80049978 00000000 */ nop -/* 04A57C 8004997C 240A0001 */ li $t2, 1 -.L80049980: -/* 04A580 80049980 820C01E6 */ lb $t4, 0x1e6($s0) -/* 04A584 80049984 3C014020 */ li $at, 0x40200000 # 2.500000 -/* 04A588 80049988 44816800 */ mtc1 $at, $f13 -/* 04A58C 8004998C 44806000 */ mtc1 $zero, $f12 -/* 04A590 80049990 1580000D */ bnez $t4, .L800499C8 -/* 04A594 80049994 3C014218 */ li $at, 0x42180000 # 38.000000 -/* 04A598 80049998 44819000 */ mtc1 $at, $f18 -/* 04A59C 8004999C 00000000 */ nop -/* 04A5A0 800499A0 4612103C */ c.lt.s $f2, $f18 -/* 04A5A4 800499A4 00000000 */ nop -/* 04A5A8 800499A8 45000007 */ bc1f .L800499C8 -/* 04A5AC 800499AC 00000000 */ nop -/* 04A5B0 800499B0 46000121 */ cvt.d.s $f4, $f0 -/* 04A5B4 800499B4 4624603E */ c.le.d $f12, $f4 -/* 04A5B8 800499B8 240D0001 */ li $t5, 1 -/* 04A5BC 800499BC 45000002 */ bc1f .L800499C8 -/* 04A5C0 800499C0 00000000 */ nop -/* 04A5C4 800499C4 A20D01E6 */ sb $t5, 0x1e6($s0) -.L800499C8: -/* 04A5C8 800499C8 820201E0 */ lb $v0, 0x1e0($s0) -/* 04A5CC 800499CC 24010001 */ li $at, 1 -/* 04A5D0 800499D0 1041000F */ beq $v0, $at, .L80049A10 -/* 04A5D4 800499D4 00000000 */ nop -/* 04A5D8 800499D8 1122000D */ beq $t1, $v0, .L80049A10 -/* 04A5DC 800499DC 3C0E8012 */ lui $t6, %hi(D_8011D5B0) # $t6, 0x8012 -/* 04A5E0 800499E0 8DCED5B0 */ lw $t6, %lo(D_8011D5B0)($t6) -/* 04A5E4 800499E4 3C01800E */ lui $at, %hi(D_800E64B4) # $at, 0x800e -/* 04A5E8 800499E8 01C57821 */ addu $t7, $t6, $a1 -/* 04A5EC 800499EC 8DF80004 */ lw $t8, 4($t7) -/* 04A5F0 800499F0 C42B64B0 */ lwc1 $f11, %lo(D_800E64B0)($at) -/* 04A5F4 800499F4 C7060008 */ lwc1 $f6, 8($t8) -/* 04A5F8 800499F8 C42A64B4 */ lwc1 $f10, %lo(D_800E64B4)($at) -/* 04A5FC 800499FC 46003221 */ cvt.d.s $f8, $f6 -/* 04A600 80049A00 462A403C */ c.lt.d $f8, $f10 -/* 04A604 80049A04 00000000 */ nop -/* 04A608 80049A08 45000003 */ bc1f .L80049A18 -/* 04A60C 80049A0C 00000000 */ nop -.L80049A10: -/* 04A610 80049A10 A20001E6 */ sb $zero, 0x1e6($s0) -/* 04A614 80049A14 00005025 */ move $t2, $zero -.L80049A18: -/* 04A618 80049A18 821901E6 */ lb $t9, 0x1e6($s0) -/* 04A61C 80049A1C 00000000 */ nop -/* 04A620 80049A20 1320002F */ beqz $t9, .L80049AE0 -/* 04A624 80049A24 3C014100 */ lui $at, 0x4100 -/* 04A628 80049A28 460004A1 */ cvt.d.s $f18, $f0 -/* 04A62C 80049A2C 462C903C */ c.lt.d $f18, $f12 -/* 04A630 80049A30 44802000 */ mtc1 $zero, $f4 -/* 04A634 80049A34 45010007 */ bc1t .L80049A54 -/* 04A638 80049A38 3C088012 */ lui $t0, %hi(D_8011D538) # $t0, 0x8012 -/* 04A63C 80049A3C 2508D538 */ addiu $t0, %lo(D_8011D538) # addiu $t0, $t0, -0x2ac8 -/* 04A640 80049A40 8D0B0000 */ lw $t3, ($t0) -/* 04A644 80049A44 00000000 */ nop -/* 04A648 80049A48 2961FFF6 */ slti $at, $t3, -0xa -/* 04A64C 80049A4C 10200005 */ beqz $at, .L80049A64 -/* 04A650 80049A50 3C014100 */ lui $at, 0x4100 -.L80049A54: -/* 04A654 80049A54 3C088012 */ lui $t0, %hi(D_8011D538) # $t0, 0x8012 -/* 04A658 80049A58 2508D538 */ addiu $t0, %lo(D_8011D538) # addiu $t0, $t0, -0x2ac8 -/* 04A65C 80049A5C A20001E6 */ sb $zero, 0x1e6($s0) -/* 04A660 80049A60 3C014100 */ li $at, 0x41000000 # 8.000000 -.L80049A64: -/* 04A664 80049A64 44818000 */ mtc1 $at, $f16 -/* 04A668 80049A68 3C014010 */ li $at, 0x40100000 # 2.250000 -/* 04A66C 80049A6C 46100001 */ sub.s $f0, $f0, $f16 -/* 04A670 80049A70 44812800 */ mtc1 $at, $f5 -/* 04A674 80049A74 460001A1 */ cvt.d.s $f6, $f0 -/* 04A678 80049A78 4626203C */ c.lt.d $f4, $f6 -/* 04A67C 80049A7C C62C0010 */ lwc1 $f12, 0x10($s1) -/* 04A680 80049A80 45000003 */ bc1f .L80049A90 -/* 04A684 80049A84 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 04A688 80049A88 44810000 */ mtc1 $at, $f0 -/* 04A68C 80049A8C 00000000 */ nop -.L80049A90: -/* 04A690 80049A90 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 04A694 80049A94 44814000 */ mtc1 $at, $f8 -/* 04A698 80049A98 3C014218 */ li $at, 0x42180000 # 38.000000 -/* 04A69C 80049A9C 46080003 */ div.s $f0, $f0, $f8 -/* 04A6A0 80049AA0 44815000 */ mtc1 $at, $f10 -/* 04A6A4 80049AA4 C7A400FC */ lwc1 $f4, 0xfc($sp) -/* 04A6A8 80049AA8 46025481 */ sub.s $f18, $f10, $f2 -/* 04A6AC 80049AAC 46049182 */ mul.s $f6, $f18, $f4 -/* 04A6B0 80049AB0 00000000 */ nop -/* 04A6B4 80049AB4 46003202 */ mul.s $f8, $f6, $f0 -/* 04A6B8 80049AB8 00000000 */ nop -/* 04A6BC 80049ABC 46104283 */ div.s $f10, $f8, $f16 -/* 04A6C0 80049AC0 460A6480 */ add.s $f18, $f12, $f10 -/* 04A6C4 80049AC4 E6320010 */ swc1 $f18, 0x10($s1) -/* 04A6C8 80049AC8 8D020000 */ lw $v0, ($t0) -/* 04A6CC 80049ACC 00000000 */ nop -/* 04A6D0 80049AD0 18400002 */ blez $v0, .L80049ADC -/* 04A6D4 80049AD4 00026043 */ sra $t4, $v0, 1 -/* 04A6D8 80049AD8 AD0C0000 */ sw $t4, ($t0) -.L80049ADC: -/* 04A6DC 80049ADC 3C014100 */ li $at, 0x41000000 # 8.000000 -.L80049AE0: -/* 04A6E0 80049AE0 44818000 */ mtc1 $at, $f16 -/* 04A6E4 80049AE4 3C018012 */ lui $at, %hi(D_8011D550) # $at, 0x8012 -/* 04A6E8 80049AE8 A420D550 */ sh $zero, %lo(D_8011D550)($at) -/* 04A6EC 80049AEC 3C018012 */ lui $at, %hi(D_8011D554) # $at, 0x8012 -/* 04A6F0 80049AF0 AC20D554 */ sw $zero, %lo(D_8011D554)($at) -/* 04A6F4 80049AF4 3C018012 */ lui $at, %hi(D_8011D558) # $at, 0x8012 -/* 04A6F8 80049AF8 AC20D558 */ sw $zero, %lo(D_8011D558)($at) -/* 04A6FC 80049AFC C624000C */ lwc1 $f4, 0xc($s1) -/* 04A700 80049B00 3C088012 */ lui $t0, %hi(D_8011D538) # $t0, 0x8012 -/* 04A704 80049B04 E7A400E8 */ swc1 $f4, 0xe8($sp) -/* 04A708 80049B08 C6260010 */ lwc1 $f6, 0x10($s1) -/* 04A70C 80049B0C 2508D538 */ addiu $t0, %lo(D_8011D538) # addiu $t0, $t0, -0x2ac8 -/* 04A710 80049B10 E7A600E4 */ swc1 $f6, 0xe4($sp) -/* 04A714 80049B14 C6280014 */ lwc1 $f8, 0x14($s1) -/* 04A718 80049B18 3C0E8012 */ lui $t6, %hi(D_8011D534) # $t6, 0x8012 -/* 04A71C 80049B1C E7A800E0 */ swc1 $f8, 0xe0($sp) -/* 04A720 80049B20 820D01E0 */ lb $t5, 0x1e0($s0) -/* 04A724 80049B24 00000000 */ nop -/* 04A728 80049B28 11A00004 */ beqz $t5, .L80049B3C -/* 04A72C 80049B2C 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 04A730 80049B30 44811000 */ mtc1 $at, $f2 -/* 04A734 80049B34 10000003 */ b .L80049B44 -/* 04A738 80049B38 820501E1 */ lb $a1, 0x1e1($s0) -.L80049B3C: -/* 04A73C 80049B3C 46008086 */ mov.s $f2, $f16 -/* 04A740 80049B40 820501E1 */ lb $a1, 0x1e1($s0) -.L80049B44: -/* 04A744 80049B44 8DCED534 */ lw $t6, %lo(D_8011D534)($t6) -/* 04A748 80049B48 C7A400FC */ lwc1 $f4, 0xfc($sp) -/* 04A74C 80049B4C 01C51023 */ subu $v0, $t6, $a1 -/* 04A750 80049B50 44825000 */ mtc1 $v0, $f10 -/* 04A754 80049B54 00000000 */ nop -/* 04A758 80049B58 468054A0 */ cvt.s.w $f18, $f10 -/* 04A75C 80049B5C 46049182 */ mul.s $f6, $f18, $f4 -/* 04A760 80049B60 00000000 */ nop -/* 04A764 80049B64 46023203 */ div.s $f8, $f6, $f2 -/* 04A768 80049B68 444FF800 */ cfc1 $t7, $31 -/* 04A76C 80049B6C 00000000 */ nop -/* 04A770 80049B70 35E10003 */ ori $at, $t7, 3 -/* 04A774 80049B74 38210002 */ xori $at, $at, 2 -/* 04A778 80049B78 44C1F800 */ ctc1 $at, $31 -/* 04A77C 80049B7C 00000000 */ nop -/* 04A780 80049B80 460042A4 */ cvt.w.s $f10, $f8 -/* 04A784 80049B84 44045000 */ mfc1 $a0, $f10 -/* 04A788 80049B88 44CFF800 */ ctc1 $t7, $31 -/* 04A78C 80049B8C 10400009 */ beqz $v0, .L80049BB4 -/* 04A790 80049B90 00801825 */ move $v1, $a0 -/* 04A794 80049B94 14800008 */ bnez $a0, .L80049BB8 -/* 04A798 80049B98 00A3C021 */ addu $t8, $a1, $v1 -/* 04A79C 80049B9C 18400002 */ blez $v0, .L80049BA8 -/* 04A7A0 80049BA0 00000000 */ nop -/* 04A7A4 80049BA4 24030001 */ li $v1, 1 -.L80049BA8: -/* 04A7A8 80049BA8 04410003 */ bgez $v0, .L80049BB8 -/* 04A7AC 80049BAC 00A3C021 */ addu $t8, $a1, $v1 -/* 04A7B0 80049BB0 01201825 */ move $v1, $t1 -.L80049BB4: -/* 04A7B4 80049BB4 00A3C021 */ addu $t8, $a1, $v1 -.L80049BB8: -/* 04A7B8 80049BB8 A21801E1 */ sb $t8, 0x1e1($s0) -/* 04A7BC 80049BBC 8D190000 */ lw $t9, ($t0) -/* 04A7C0 80049BC0 820701E8 */ lb $a3, 0x1e8($s0) -/* 04A7C4 80049BC4 C7A600FC */ lwc1 $f6, 0xfc($sp) -/* 04A7C8 80049BC8 03271023 */ subu $v0, $t9, $a3 -/* 04A7CC 80049BCC 44829000 */ mtc1 $v0, $f18 -/* 04A7D0 80049BD0 3C013FB0 */ li $at, 0x3FB00000 # 1.375000 -/* 04A7D4 80049BD4 46809120 */ cvt.s.w $f4, $f18 -/* 04A7D8 80049BD8 44809000 */ mtc1 $zero, $f18 -/* 04A7DC 80049BDC 44819800 */ mtc1 $at, $f19 -/* 04A7E0 80049BE0 46062202 */ mul.s $f8, $f4, $f6 -/* 04A7E4 80049BE4 02002825 */ move $a1, $s0 -/* 04A7E8 80049BE8 460042A1 */ cvt.d.s $f10, $f8 -/* 04A7EC 80049BEC 46325102 */ mul.d $f4, $f10, $f18 -/* 04A7F0 80049BF0 444BF800 */ cfc1 $t3, $31 -/* 04A7F4 80049BF4 00000000 */ nop -/* 04A7F8 80049BF8 35610003 */ ori $at, $t3, 3 -/* 04A7FC 80049BFC 38210002 */ xori $at, $at, 2 -/* 04A800 80049C00 44C1F800 */ ctc1 $at, $31 -/* 04A804 80049C04 00000000 */ nop -/* 04A808 80049C08 462021A4 */ cvt.w.d $f6, $f4 -/* 04A80C 80049C0C 44043000 */ mfc1 $a0, $f6 -/* 04A810 80049C10 44CBF800 */ ctc1 $t3, $31 -/* 04A814 80049C14 10400009 */ beqz $v0, .L80049C3C -/* 04A818 80049C18 00801825 */ move $v1, $a0 -/* 04A81C 80049C1C 14800008 */ bnez $a0, .L80049C40 -/* 04A820 80049C20 00E36021 */ addu $t4, $a3, $v1 -/* 04A824 80049C24 18400002 */ blez $v0, .L80049C30 -/* 04A828 80049C28 00000000 */ nop -/* 04A82C 80049C2C 24030001 */ li $v1, 1 -.L80049C30: -/* 04A830 80049C30 04410003 */ bgez $v0, .L80049C40 -/* 04A834 80049C34 00E36021 */ addu $t4, $a3, $v1 -/* 04A838 80049C38 01201825 */ move $v1, $t1 -.L80049C3C: -/* 04A83C 80049C3C 00E36021 */ addu $t4, $a3, $v1 -.L80049C40: -/* 04A840 80049C40 A20C01E8 */ sb $t4, 0x1e8($s0) -/* 04A844 80049C44 8FA600F8 */ lw $a2, 0xf8($sp) -/* 04A848 80049C48 A3AA00A2 */ sb $t2, 0xa2($sp) -/* 04A84C 80049C4C 0C0157B0 */ jal func_80055EC0 -/* 04A850 80049C50 02202025 */ move $a0, $s1 -/* 04A854 80049C54 02202025 */ move $a0, $s1 -/* 04A858 80049C58 0C014D71 */ jal func_800535C4 -/* 04A85C 80049C5C 02002825 */ move $a1, $s0 -/* 04A860 80049C60 02202025 */ move $a0, $s1 -/* 04A864 80049C64 0C013050 */ jal func_8004C140 -/* 04A868 80049C68 02002825 */ move $a1, $s0 -/* 04A86C 80049C6C 3C0D8012 */ lui $t5, %hi(D_8011D55C) # $t5, 0x8012 -/* 04A870 80049C70 8DADD55C */ lw $t5, %lo(D_8011D55C)($t5) -/* 04A874 80049C74 2401FFFF */ li $at, -1 -/* 04A878 80049C78 11A10007 */ beq $t5, $at, .L80049C98 -/* 04A87C 80049C7C 00000000 */ nop -/* 04A880 80049C80 8FA600F8 */ lw $a2, 0xf8($sp) -/* 04A884 80049C84 02202025 */ move $a0, $s1 -/* 04A888 80049C88 0C014871 */ jal func_800521C4 -/* 04A88C 80049C8C 02002825 */ move $a1, $s0 -/* 04A890 80049C90 10000003 */ b .L80049CA0 -/* 04A894 80049C94 00000000 */ nop -.L80049C98: -/* 04A898 80049C98 0C0148D3 */ jal func_8005234C -/* 04A89C 80049C9C 02002025 */ move $a0, $s0 -.L80049CA0: -/* 04A8A0 80049CA0 3C0E8012 */ lui $t6, %hi(D_8011D528) # $t6, 0x8012 -/* 04A8A4 80049CA4 8DCED528 */ lw $t6, %lo(D_8011D528)($t6) -/* 04A8A8 80049CA8 3C198012 */ lui $t9, %hi(D_8011D528) # $t9, 0x8012 -/* 04A8AC 80049CAC 31CF8000 */ andi $t7, $t6, 0x8000 -/* 04A8B0 80049CB0 11E00019 */ beqz $t7, .L80049D18 -/* 04A8B4 80049CB4 3C01800E */ lui $at, %hi(D_800E64BC) # $at, 0x800e -/* 04A8B8 80049CB8 C7A800FC */ lwc1 $f8, 0xfc($sp) -/* 04A8BC 80049CBC C42564B8 */ lwc1 $f5, %lo(D_800E64B8)($at) -/* 04A8C0 80049CC0 C42464BC */ lwc1 $f4, %lo(D_800E64BC)($at) -/* 04A8C4 80049CC4 46004021 */ cvt.d.s $f0, $f8 -/* 04A8C8 80049CC8 46240182 */ mul.d $f6, $f0, $f4 -/* 04A8CC 80049CCC C60A00B4 */ lwc1 $f10, 0xb4($s0) -/* 04A8D0 80049CD0 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 04A8D4 80049CD4 460054A1 */ cvt.d.s $f18, $f10 -/* 04A8D8 80049CD8 44812800 */ mtc1 $at, $f5 -/* 04A8DC 80049CDC 46269200 */ add.d $f8, $f18, $f6 -/* 04A8E0 80049CE0 44802000 */ mtc1 $zero, $f4 -/* 04A8E4 80049CE4 462042A0 */ cvt.s.d $f10, $f8 -/* 04A8E8 80049CE8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 04A8EC 80049CEC E60A00B4 */ swc1 $f10, 0xb4($s0) -/* 04A8F0 80049CF0 C61200B4 */ lwc1 $f18, 0xb4($s0) -/* 04A8F4 80049CF4 00000000 */ nop -/* 04A8F8 80049CF8 460091A1 */ cvt.d.s $f6, $f18 -/* 04A8FC 80049CFC 4626203C */ c.lt.d $f4, $f6 -/* 04A900 80049D00 00000000 */ nop -/* 04A904 80049D04 4500001A */ bc1f .L80049D70 -/* 04A908 80049D08 00000000 */ nop -/* 04A90C 80049D0C 44814000 */ mtc1 $at, $f8 -/* 04A910 80049D10 10000017 */ b .L80049D70 -/* 04A914 80049D14 E60800B4 */ swc1 $f8, 0xb4($s0) -.L80049D18: -/* 04A918 80049D18 3C01800E */ lui $at, %hi(D_800E64C4) # $at, 0x800e -/* 04A91C 80049D1C C7AA00FC */ lwc1 $f10, 0xfc($sp) -/* 04A920 80049D20 C42764C0 */ lwc1 $f7, %lo(D_800E64C0)($at) -/* 04A924 80049D24 C42664C4 */ lwc1 $f6, %lo(D_800E64C4)($at) -/* 04A928 80049D28 46005021 */ cvt.d.s $f0, $f10 -/* 04A92C 80049D2C 46260202 */ mul.d $f8, $f0, $f6 -/* 04A930 80049D30 C61200B4 */ lwc1 $f18, 0xb4($s0) -/* 04A934 80049D34 00000000 */ nop -/* 04A938 80049D38 46009121 */ cvt.d.s $f4, $f18 -/* 04A93C 80049D3C 46282281 */ sub.d $f10, $f4, $f8 -/* 04A940 80049D40 44802000 */ mtc1 $zero, $f4 -/* 04A944 80049D44 462054A0 */ cvt.s.d $f18, $f10 -/* 04A948 80049D48 E61200B4 */ swc1 $f18, 0xb4($s0) -/* 04A94C 80049D4C C60600B4 */ lwc1 $f6, 0xb4($s0) -/* 04A950 80049D50 00000000 */ nop -/* 04A954 80049D54 4604303C */ c.lt.s $f6, $f4 -/* 04A958 80049D58 00000000 */ nop -/* 04A95C 80049D5C 45000004 */ bc1f .L80049D70 -/* 04A960 80049D60 00000000 */ nop -/* 04A964 80049D64 44804000 */ mtc1 $zero, $f8 -/* 04A968 80049D68 00000000 */ nop -/* 04A96C 80049D6C E60800B4 */ swc1 $f8, 0xb4($s0) -.L80049D70: -/* 04A970 80049D70 8E180108 */ lw $t8, 0x108($s0) -/* 04A974 80049D74 00000000 */ nop -/* 04A978 80049D78 13000004 */ beqz $t8, .L80049D8C -/* 04A97C 80049D7C 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 04A980 80049D80 44815000 */ mtc1 $at, $f10 -/* 04A984 80049D84 00000000 */ nop -/* 04A988 80049D88 E60A00B4 */ swc1 $f10, 0xb4($s0) -.L80049D8C: -/* 04A98C 80049D8C 8F39D528 */ lw $t9, %lo(D_8011D528)($t9) -/* 04A990 80049D90 C61200B4 */ lwc1 $f18, 0xb4($s0) -/* 04A994 80049D94 332B4000 */ andi $t3, $t9, 0x4000 -/* 04A998 80049D98 11600038 */ beqz $t3, .L80049E7C -/* 04A99C 80049D9C E7B200C8 */ swc1 $f18, 0xc8($sp) -/* 04A9A0 80049DA0 3C0C8012 */ lui $t4, %hi(D_8011D538) # $t4, 0x8012 -/* 04A9A4 80049DA4 8D8CD538 */ lw $t4, %lo(D_8011D538)($t4) -/* 04A9A8 80049DA8 00000000 */ nop -/* 04A9AC 80049DAC 2981FFD8 */ slti $at, $t4, -0x28 -/* 04A9B0 80049DB0 14200007 */ bnez $at, .L80049DD0 -/* 04A9B4 80049DB4 00000000 */ nop -/* 04A9B8 80049DB8 44806000 */ mtc1 $zero, $f12 -/* 04A9BC 80049DBC C606002C */ lwc1 $f6, 0x2c($s0) -/* 04A9C0 80049DC0 00000000 */ nop -/* 04A9C4 80049DC4 460C303C */ c.lt.s $f6, $f12 -/* 04A9C8 80049DC8 00000000 */ nop -/* 04A9CC 80049DCC 4500002B */ bc1f .L80049E7C -.L80049DD0: -/* 04A9D0 80049DD0 3C01800E */ lui $at, %hi(D_800E64CC) # $at, 0x800e -/* 04A9D4 80049DD4 C42B64C8 */ lwc1 $f11, %lo(D_800E64C8)($at) -/* 04A9D8 80049DD8 C42A64CC */ lwc1 $f10, %lo(D_800E64CC)($at) -/* 04A9DC 80049DDC C60400B8 */ lwc1 $f4, 0xb8($s0) -/* 04A9E0 80049DE0 462A0482 */ mul.d $f18, $f0, $f10 -/* 04A9E4 80049DE4 46002221 */ cvt.d.s $f8, $f4 -/* 04A9E8 80049DE8 3C01800E */ lui $at, %hi(D_800E64D0) # $at, 0x800e -/* 04A9EC 80049DEC 44806000 */ mtc1 $zero, $f12 -/* 04A9F0 80049DF0 46324180 */ add.d $f6, $f8, $f18 -/* 04A9F4 80049DF4 46203120 */ cvt.s.d $f4, $f6 -/* 04A9F8 80049DF8 E60400B8 */ swc1 $f4, 0xb8($s0) -/* 04A9FC 80049DFC C60800B8 */ lwc1 $f8, 0xb8($s0) -/* 04AA00 80049E00 C42A64D4 */ lwc1 $f10, %lo(D_800E64D4)($at) -/* 04AA04 80049E04 C42B64D0 */ lwc1 $f11, %lo(D_800E64D0)($at) -/* 04AA08 80049E08 460044A1 */ cvt.d.s $f18, $f8 -/* 04AA0C 80049E0C 4632503C */ c.lt.d $f10, $f18 -/* 04AA10 80049E10 44805000 */ mtc1 $zero, $f10 -/* 04AA14 80049E14 45000004 */ bc1f .L80049E28 -/* 04AA18 80049E18 3C01800E */ lui $at, %hi(D_800E64D8) # $at, 0x800e -/* 04AA1C 80049E1C C42664D8 */ lwc1 $f6, %lo(D_800E64D8)($at) -/* 04AA20 80049E20 00000000 */ nop -/* 04AA24 80049E24 E60600B8 */ swc1 $f6, 0xb8($s0) -.L80049E28: -/* 04AA28 80049E28 C604002C */ lwc1 $f4, 0x2c($s0) -/* 04AA2C 80049E2C 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 04AA30 80049E30 44815800 */ mtc1 $at, $f11 -/* 04AA34 80049E34 46002221 */ cvt.d.s $f8, $f4 -/* 04AA38 80049E38 462A403C */ c.lt.d $f8, $f10 -/* 04AA3C 80049E3C 00000000 */ nop -/* 04AA40 80049E40 4500000B */ bc1f .L80049E70 -/* 04AA44 80049E44 00000000 */ nop -/* 04AA48 80049E48 820D01E2 */ lb $t5, 0x1e2($s0) -/* 04AA4C 80049E4C 00000000 */ nop -/* 04AA50 80049E50 29A10002 */ slti $at, $t5, 2 -/* 04AA54 80049E54 14200006 */ bnez $at, .L80049E70 -/* 04AA58 80049E58 00000000 */ nop -/* 04AA5C 80049E5C 86040000 */ lh $a0, ($s0) -/* 04AA60 80049E60 0C01C8D2 */ jal func_80072348 -/* 04AA64 80049E64 24050003 */ li $a1, 3 -/* 04AA68 80049E68 44806000 */ mtc1 $zero, $f12 -/* 04AA6C 80049E6C 00000000 */ nop -.L80049E70: -/* 04AA70 80049E70 C60200B8 */ lwc1 $f2, 0xb8($s0) -/* 04AA74 80049E74 10000015 */ b .L80049ECC -/* 04AA78 80049E78 E7A200C4 */ swc1 $f2, 0xc4($sp) -.L80049E7C: -/* 04AA7C 80049E7C 3C01800E */ lui $at, %hi(D_800E64E4) # $at, 0x800e -/* 04AA80 80049E80 C42564E0 */ lwc1 $f5, %lo(D_800E64E0)($at) -/* 04AA84 80049E84 C42464E4 */ lwc1 $f4, %lo(D_800E64E4)($at) -/* 04AA88 80049E88 C61200B8 */ lwc1 $f18, 0xb8($s0) -/* 04AA8C 80049E8C 46240202 */ mul.d $f8, $f0, $f4 -/* 04AA90 80049E90 460091A1 */ cvt.d.s $f6, $f18 -/* 04AA94 80049E94 44806000 */ mtc1 $zero, $f12 -/* 04AA98 80049E98 46283281 */ sub.d $f10, $f6, $f8 -/* 04AA9C 80049E9C 462054A0 */ cvt.s.d $f18, $f10 -/* 04AAA0 80049EA0 E61200B8 */ swc1 $f18, 0xb8($s0) -/* 04AAA4 80049EA4 C60200B8 */ lwc1 $f2, 0xb8($s0) -/* 04AAA8 80049EA8 00000000 */ nop -/* 04AAAC 80049EAC 460C103C */ c.lt.s $f2, $f12 -/* 04AAB0 80049EB0 00000000 */ nop -/* 04AAB4 80049EB4 45000004 */ bc1f .L80049EC8 -/* 04AAB8 80049EB8 00000000 */ nop -/* 04AABC 80049EBC E60C00B8 */ swc1 $f12, 0xb8($s0) -/* 04AAC0 80049EC0 C60200B8 */ lwc1 $f2, 0xb8($s0) -/* 04AAC4 80049EC4 00000000 */ nop -.L80049EC8: -/* 04AAC8 80049EC8 E7A200C4 */ swc1 $f2, 0xc4($sp) -.L80049ECC: -/* 04AACC 80049ECC 862E0000 */ lh $t6, ($s1) -/* 04AAD0 80049ED0 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 -/* 04AAD4 80049ED4 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 -/* 04AAD8 80049ED8 A4AE0000 */ sh $t6, ($a1) -/* 04AADC 80049EDC 862F0002 */ lh $t7, 2($s1) -/* 04AAE0 80049EE0 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 04AAE4 80049EE4 44812000 */ mtc1 $at, $f4 -/* 04AAE8 80049EE8 A4A00004 */ sh $zero, 4($a1) -/* 04AAEC 80049EEC E4AC000C */ swc1 $f12, 0xc($a1) -/* 04AAF0 80049EF0 E4AC0010 */ swc1 $f12, 0x10($a1) -/* 04AAF4 80049EF4 E4AC0014 */ swc1 $f12, 0x14($a1) -/* 04AAF8 80049EF8 27A40060 */ addiu $a0, $sp, 0x60 -/* 04AAFC 80049EFC A4AF0002 */ sh $t7, 2($a1) -/* 04AB00 80049F00 0C01BF0C */ jal func_8006FC30 -/* 04AB04 80049F04 E4A40008 */ swc1 $f4, 8($a1) -/* 04AB08 80049F08 44800000 */ mtc1 $zero, $f0 -/* 04AB0C 80049F0C 26180038 */ addiu $t8, $s0, 0x38 -/* 04AB10 80049F10 2619003C */ addiu $t9, $s0, 0x3c -/* 04AB14 80049F14 260B0040 */ addiu $t3, $s0, 0x40 -/* 04AB18 80049F18 44050000 */ mfc1 $a1, $f0 -/* 04AB1C 80049F1C 44060000 */ mfc1 $a2, $f0 -/* 04AB20 80049F20 AFAB0018 */ sw $t3, 0x18($sp) -/* 04AB24 80049F24 AFB90014 */ sw $t9, 0x14($sp) -/* 04AB28 80049F28 AFB80010 */ sw $t8, 0x10($sp) -/* 04AB2C 80049F2C 27A40060 */ addiu $a0, $sp, 0x60 -/* 04AB30 80049F30 0C01BD93 */ jal func_8006F64C -/* 04AB34 80049F34 3C073F80 */ lui $a3, 0x3f80 -/* 04AB38 80049F38 44800000 */ mtc1 $zero, $f0 -/* 04AB3C 80049F3C 260C0050 */ addiu $t4, $s0, 0x50 -/* 04AB40 80049F40 260D0054 */ addiu $t5, $s0, 0x54 -/* 04AB44 80049F44 260E0058 */ addiu $t6, $s0, 0x58 -/* 04AB48 80049F48 44060000 */ mfc1 $a2, $f0 -/* 04AB4C 80049F4C 44070000 */ mfc1 $a3, $f0 -/* 04AB50 80049F50 AFAE0018 */ sw $t6, 0x18($sp) -/* 04AB54 80049F54 AFAD0014 */ sw $t5, 0x14($sp) -/* 04AB58 80049F58 AFAC0010 */ sw $t4, 0x10($sp) -/* 04AB5C 80049F5C 27A40060 */ addiu $a0, $sp, 0x60 -/* 04AB60 80049F60 0C01BD93 */ jal func_8006F64C -/* 04AB64 80049F64 3C053F80 */ lui $a1, 0x3f80 -/* 04AB68 80049F68 44800000 */ mtc1 $zero, $f0 -/* 04AB6C 80049F6C 260F0044 */ addiu $t7, $s0, 0x44 -/* 04AB70 80049F70 26180048 */ addiu $t8, $s0, 0x48 -/* 04AB74 80049F74 2619004C */ addiu $t9, $s0, 0x4c -/* 04AB78 80049F78 44050000 */ mfc1 $a1, $f0 -/* 04AB7C 80049F7C 44070000 */ mfc1 $a3, $f0 -/* 04AB80 80049F80 AFB90018 */ sw $t9, 0x18($sp) -/* 04AB84 80049F84 AFB80014 */ sw $t8, 0x14($sp) -/* 04AB88 80049F88 AFAF0010 */ sw $t7, 0x10($sp) -/* 04AB8C 80049F8C 27A40060 */ addiu $a0, $sp, 0x60 -/* 04AB90 80049F90 0C01BD93 */ jal func_8006F64C -/* 04AB94 80049F94 3C063F80 */ lui $a2, 0x3f80 -/* 04AB98 80049F98 8E0B0148 */ lw $t3, 0x148($s0) -/* 04AB9C 80049F9C 00000000 */ nop -/* 04ABA0 80049FA0 15600005 */ bnez $t3, .L80049FB8 -/* 04ABA4 80049FA4 00000000 */ nop -/* 04ABA8 80049FA8 8FA400F8 */ lw $a0, 0xf8($sp) -/* 04ABAC 80049FAC 02202825 */ move $a1, $s1 -/* 04ABB0 80049FB0 0C013028 */ jal func_8004C0A0 -/* 04ABB4 80049FB4 02003025 */ move $a2, $s0 -.L80049FB8: -/* 04ABB8 80049FB8 86020000 */ lh $v0, ($s0) -/* 04ABBC 80049FBC 2403FFFF */ li $v1, -1 -/* 04ABC0 80049FC0 14620008 */ bne $v1, $v0, .L80049FE4 -/* 04ABC4 80049FC4 3C0C8012 */ lui $t4, %hi(D_8011D55C) # $t4, 0x8012 -/* 04ABC8 80049FC8 8D8CD55C */ lw $t4, %lo(D_8011D55C)($t4) -/* 04ABCC 80049FCC 3C01800E */ lui $at, %hi(D_800E64E8) # $at, 0x800e -/* 04ABD0 80049FD0 106C0004 */ beq $v1, $t4, .L80049FE4 -/* 04ABD4 80049FD4 00000000 */ nop -/* 04ABD8 80049FD8 C42664E8 */ lwc1 $f6, %lo(D_800E64E8)($at) -/* 04ABDC 80049FDC 3C018012 */ lui $at, %hi(D_8011D570) # $at, 0x8012 -/* 04ABE0 80049FE0 E426D570 */ swc1 $f6, %lo(D_8011D570)($at) -.L80049FE4: -/* 04ABE4 80049FE4 C620001C */ lwc1 $f0, 0x1c($s1) -/* 04ABE8 80049FE8 C6220024 */ lwc1 $f2, 0x24($s1) -/* 04ABEC 80049FEC 46000202 */ mul.s $f8, $f0, $f0 -/* 04ABF0 80049FF0 C62E0020 */ lwc1 $f14, 0x20($s1) -/* 04ABF4 80049FF4 46021282 */ mul.s $f10, $f2, $f2 -/* 04ABF8 80049FF8 00000000 */ nop -/* 04ABFC 80049FFC 460E7102 */ mul.s $f4, $f14, $f14 -/* 04AC00 8004A000 460A4480 */ add.s $f18, $f8, $f10 -/* 04AC04 8004A004 0C0326B4 */ jal sqrtf -/* 04AC08 8004A008 46049300 */ add.s $f12, $f18, $f4 -/* 04AC0C 8004A00C 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 04AC10 8004A010 44817800 */ mtc1 $at, $f15 -/* 04AC14 8004A014 44807000 */ mtc1 $zero, $f14 -/* 04AC18 8004A018 460001A1 */ cvt.d.s $f6, $f0 -/* 04AC1C 8004A01C 820D01D6 */ lb $t5, 0x1d6($s0) -/* 04AC20 8004A020 462E3201 */ sub.d $f8, $f6, $f14 -/* 04AC24 8004A024 29A10005 */ slti $at, $t5, 5 -/* 04AC28 8004A028 462040A0 */ cvt.s.d $f2, $f8 -/* 04AC2C 8004A02C 14200009 */ bnez $at, .L8004A054 -/* 04AC30 8004A030 46001506 */ mov.s $f20, $f2 -/* 04AC34 8004A034 460012A1 */ cvt.d.s $f10, $f2 -/* 04AC38 8004A038 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 04AC3C 8004A03C 44812800 */ mtc1 $at, $f5 -/* 04AC40 8004A040 462E5481 */ sub.d $f18, $f10, $f14 -/* 04AC44 8004A044 44802000 */ mtc1 $zero, $f4 -/* 04AC48 8004A048 00000000 */ nop -/* 04AC4C 8004A04C 46249182 */ mul.d $f6, $f18, $f4 -/* 04AC50 8004A050 46203520 */ cvt.s.d $f20, $f6 -.L8004A054: -/* 04AC54 8004A054 44806000 */ mtc1 $zero, $f12 -/* 04AC58 8004A058 3C014010 */ li $at, 0x40100000 # 2.250000 -/* 04AC5C 8004A05C 460CA03C */ c.lt.s $f20, $f12 -/* 04AC60 8004A060 44814800 */ mtc1 $at, $f9 -/* 04AC64 8004A064 45000002 */ bc1f .L8004A070 -/* 04AC68 8004A068 3C0B8012 */ lui $t3, %hi(D_8011D564) # $t3, 0x8012 -/* 04AC6C 8004A06C 46006506 */ mov.s $f20, $f12 -.L8004A070: -/* 04AC70 8004A070 44804000 */ mtc1 $zero, $f8 -/* 04AC74 8004A074 4600A021 */ cvt.d.s $f0, $f20 -/* 04AC78 8004A078 4620403C */ c.lt.d $f8, $f0 -/* 04AC7C 8004A07C 44805000 */ mtc1 $zero, $f10 -/* 04AC80 8004A080 45000004 */ bc1f .L8004A094 -/* 04AC84 8004A084 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 04AC88 8004A088 4481A000 */ mtc1 $at, $f20 -/* 04AC8C 8004A08C 00000000 */ nop -/* 04AC90 8004A090 4600A021 */ cvt.d.s $f0, $f20 -.L8004A094: -/* 04AC94 8004A094 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 04AC98 8004A098 44815800 */ mtc1 $at, $f11 -/* 04AC9C 8004A09C 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 04ACA0 8004A0A0 44819800 */ mtc1 $at, $f19 -/* 04ACA4 8004A0A4 44809000 */ mtc1 $zero, $f18 -/* 04ACA8 8004A0A8 3C018012 */ lui $at, %hi(D_8011D4F0) # $at, 0x8012 -/* 04ACAC 8004A0AC 46320102 */ mul.d $f4, $f0, $f18 -/* 04ACB0 8004A0B0 C428D4F0 */ lwc1 $f8, %lo(D_8011D4F0)($at) -/* 04ACB4 8004A0B4 3C014049 */ li $at, 0x40490000 # 3.140625 -/* 04ACB8 8004A0B8 A3A000A3 */ sb $zero, 0xa3($sp) -/* 04ACBC 8004A0BC 820201E0 */ lb $v0, 0x1e0($s0) -/* 04ACC0 8004A0C0 46245181 */ sub.d $f6, $f10, $f4 -/* 04ACC4 8004A0C4 44805000 */ mtc1 $zero, $f10 -/* 04ACC8 8004A0C8 44815800 */ mtc1 $at, $f11 -/* 04ACCC 8004A0CC 46203520 */ cvt.s.d $f20, $f6 -/* 04ACD0 8004A0D0 C6260010 */ lwc1 $f6, 0x10($s1) -/* 04ACD4 8004A0D4 460044A1 */ cvt.d.s $f18, $f8 -/* 04ACD8 8004A0D8 462A9101 */ sub.d $f4, $f18, $f10 -/* 04ACDC 8004A0DC 28410002 */ slti $at, $v0, 2 -/* 04ACE0 8004A0E0 46003221 */ cvt.d.s $f8, $f6 -/* 04ACE4 8004A0E4 46282481 */ sub.d $f18, $f4, $f8 -/* 04ACE8 8004A0E8 10200023 */ beqz $at, .L8004A178 -/* 04ACEC 8004A0EC 462090A0 */ cvt.s.d $f2, $f18 -/* 04ACF0 8004A0F0 2841FFFF */ slti $at, $v0, -1 -/* 04ACF4 8004A0F4 14200020 */ bnez $at, .L8004A178 -/* 04ACF8 8004A0F8 00000000 */ nop -/* 04ACFC 8004A0FC 460C103C */ c.lt.s $f2, $f12 -/* 04AD00 8004A100 3C014039 */ li $at, 0x40390000 # 2.890625 -/* 04AD04 8004A104 4500001C */ bc1f .L8004A178 -/* 04AD08 8004A108 24180001 */ li $t8, 1 -/* 04AD0C 8004A10C 44812800 */ mtc1 $at, $f5 -/* 04AD10 8004A110 44802000 */ mtc1 $zero, $f4 -/* 04AD14 8004A114 46001287 */ neg.s $f10, $f2 -/* 04AD18 8004A118 460051A1 */ cvt.d.s $f6, $f10 -/* 04AD1C 8004A11C 00000000 */ nop -/* 04AD20 8004A120 46243203 */ div.d $f8, $f6, $f4 -/* 04AD24 8004A124 3C098012 */ lui $t1, %hi(D_8011D538) # $t1, 0x8012 -/* 04AD28 8004A128 2529D538 */ addiu $t1, %lo(D_8011D538) # addiu $t1, $t1, -0x2ac8 -/* 04AD2C 8004A12C 8D2E0000 */ lw $t6, ($t1) -/* 04AD30 8004A130 4600A4A1 */ cvt.d.s $f18, $f20 -/* 04AD34 8004A134 44803000 */ mtc1 $zero, $f6 -/* 04AD38 8004A138 29C1FFEC */ slti $at, $t6, -0x14 -/* 04AD3C 8004A13C 240FFFEC */ li $t7, -20 -/* 04AD40 8004A140 46289280 */ add.d $f10, $f18, $f8 -/* 04AD44 8004A144 10200002 */ beqz $at, .L8004A150 -/* 04AD48 8004A148 46205520 */ cvt.s.d $f20, $f10 -/* 04AD4C 8004A14C AD2F0000 */ sw $t7, ($t1) -.L8004A150: -/* 04AD50 8004A150 3C014004 */ li $at, 0x40040000 # 2.062500 -/* 04AD54 8004A154 44813800 */ mtc1 $at, $f7 -/* 04AD58 8004A158 4600A121 */ cvt.d.s $f4, $f20 -/* 04AD5C 8004A15C 4624303C */ c.lt.d $f6, $f4 -/* 04AD60 8004A160 3C014020 */ li $at, 0x40200000 # 2.500000 -/* 04AD64 8004A164 45000003 */ bc1f .L8004A174 -/* 04AD68 8004A168 00000000 */ nop -/* 04AD6C 8004A16C 4481A000 */ mtc1 $at, $f20 -/* 04AD70 8004A170 00000000 */ nop -.L8004A174: -/* 04AD74 8004A174 A3B800A3 */ sb $t8, 0xa3($sp) -.L8004A178: -/* 04AD78 8004A178 C602002C */ lwc1 $f2, 0x2c($s0) -/* 04AD7C 8004A17C 44809000 */ mtc1 $zero, $f18 -/* 04AD80 8004A180 3C098012 */ lui $t1, %hi(D_8011D538) # $t1, 0x8012 -/* 04AD84 8004A184 4612103C */ c.lt.s $f2, $f18 -/* 04AD88 8004A188 2529D538 */ addiu $t1, %lo(D_8011D538) # addiu $t1, $t1, -0x2ac8 -/* 04AD8C 8004A18C 45000002 */ bc1f .L8004A198 -/* 04AD90 8004A190 46001386 */ mov.s $f14, $f2 -/* 04AD94 8004A194 46007387 */ neg.s $f14, $f14 -.L8004A198: -/* 04AD98 8004A198 44804000 */ mtc1 $zero, $f8 -/* 04AD9C 8004A19C 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 04ADA0 8004A1A0 4608103C */ c.lt.s $f2, $f8 -/* 04ADA4 8004A1A4 44815000 */ mtc1 $at, $f10 -/* 04ADA8 8004A1A8 45000002 */ bc1f .L8004A1B4 -/* 04ADAC 8004A1AC 46001006 */ mov.s $f0, $f2 -/* 04ADB0 8004A1B0 46001007 */ neg.s $f0, $f2 -.L8004A1B4: -/* 04ADB4 8004A1B4 460A0180 */ add.s $f6, $f0, $f10 -/* 04ADB8 8004A1B8 460E303C */ c.lt.s $f6, $f14 -/* 04ADBC 8004A1BC 00000000 */ nop -/* 04ADC0 8004A1C0 45000004 */ bc1f .L8004A1D4 -/* 04ADC4 8004A1C4 3C014040 */ li $at, 0x40400000 # 3.000000 -/* 04ADC8 8004A1C8 44812000 */ mtc1 $at, $f4 -/* 04ADCC 8004A1CC 00000000 */ nop -/* 04ADD0 8004A1D0 46040380 */ add.s $f14, $f0, $f4 -.L8004A1D4: -/* 04ADD4 8004A1D4 3C014140 */ li $at, 0x41400000 # 12.000000 -/* 04ADD8 8004A1D8 44810000 */ mtc1 $at, $f0 -/* 04ADDC 8004A1DC 3C01800E */ lui $at, %hi(D_800E64EC) # $at, 0x800e -/* 04ADE0 8004A1E0 460E003C */ c.lt.s $f0, $f14 -/* 04ADE4 8004A1E4 00000000 */ nop -/* 04ADE8 8004A1E8 45000002 */ bc1f .L8004A1F4 -/* 04ADEC 8004A1EC 00000000 */ nop -/* 04ADF0 8004A1F0 46000386 */ mov.s $f14, $f0 -.L8004A1F4: -/* 04ADF4 8004A1F4 C42264EC */ lwc1 $f2, %lo(D_800E64EC)($at) -/* 04ADF8 8004A1F8 3C01800E */ lui $at, %hi(D_800E64F0) # $at, 0x800e -/* 04ADFC 8004A1FC C42C64F0 */ lwc1 $f12, %lo(D_800E64F0)($at) -/* 04AE00 8004A200 4459F800 */ cfc1 $t9, $31 -/* 04AE04 8004A204 3C01800E */ lui $at, %hi(D_800E64F4) # $at, 0x800e -/* 04AE08 8004A208 C43064F4 */ lwc1 $f16, %lo(D_800E64F4)($at) -/* 04AE0C 8004A20C 37210003 */ ori $at, $t9, 3 -/* 04AE10 8004A210 38210002 */ xori $at, $at, 2 -/* 04AE14 8004A214 44C1F800 */ ctc1 $at, $31 -/* 04AE18 8004A218 8D6BD564 */ lw $t3, %lo(D_8011D564)($t3) -/* 04AE1C 8004A21C 460074A4 */ cvt.w.s $f18, $f14 -/* 04AE20 8004A220 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 04AE24 8004A224 44029000 */ mfc1 $v0, $f18 -/* 04AE28 8004A228 44D9F800 */ ctc1 $t9, $31 -/* 04AE2C 8004A22C 44824000 */ mtc1 $v0, $f8 -/* 04AE30 8004A230 00026080 */ sll $t4, $v0, 2 -/* 04AE34 8004A234 468042A0 */ cvt.s.w $f10, $f8 -/* 04AE38 8004A238 44813800 */ mtc1 $at, $f7 -/* 04AE3C 8004A23C 44803000 */ mtc1 $zero, $f6 -/* 04AE40 8004A240 460A7001 */ sub.s $f0, $f14, $f10 -/* 04AE44 8004A244 016C1821 */ addu $v1, $t3, $t4 -/* 04AE48 8004A248 C4680000 */ lwc1 $f8, ($v1) -/* 04AE4C 8004A24C 46000121 */ cvt.d.s $f4, $f0 -/* 04AE50 8004A250 46243481 */ sub.d $f18, $f6, $f4 -/* 04AE54 8004A254 C4640004 */ lwc1 $f4, 4($v1) -/* 04AE58 8004A258 460042A1 */ cvt.d.s $f10, $f8 -/* 04AE5C 8004A25C 46325182 */ mul.d $f6, $f10, $f18 -/* 04AE60 8004A260 E7A200D4 */ swc1 $f2, 0xd4($sp) -/* 04AE64 8004A264 E7AC00D0 */ swc1 $f12, 0xd0($sp) -/* 04AE68 8004A268 E7B000D8 */ swc1 $f16, 0xd8($sp) -/* 04AE6C 8004A26C 820D01E2 */ lb $t5, 0x1e2($s0) -/* 04AE70 8004A270 46002202 */ mul.s $f8, $f4, $f0 -/* 04AE74 8004A274 460042A1 */ cvt.d.s $f10, $f8 -/* 04AE78 8004A278 462A3480 */ add.d $f18, $f6, $f10 -/* 04AE7C 8004A27C 11A000A0 */ beqz $t5, .L8004A500 -/* 04AE80 8004A280 462093A0 */ cvt.s.d $f14, $f18 -/* 04AE84 8004A284 E7AC00D4 */ swc1 $f12, 0xd4($sp) -/* 04AE88 8004A288 E7A200D0 */ swc1 $f2, 0xd0($sp) -/* 04AE8C 8004A28C 00002825 */ move $a1, $zero -/* 04AE90 8004A290 00004025 */ move $t0, $zero -/* 04AE94 8004A294 4600A021 */ cvt.d.s $f0, $f20 -/* 04AE98 8004A298 02001825 */ move $v1, $s0 -/* 04AE9C 8004A29C 24060004 */ li $a2, 4 -/* 04AEA0 8004A2A0 240400FF */ li $a0, 255 -.L8004A2A4: -/* 04AEA4 8004A2A4 906201DC */ lbu $v0, 0x1dc($v1) -/* 04AEA8 8004A2A8 25080001 */ addiu $t0, $t0, 1 -/* 04AEAC 8004A2AC 10820004 */ beq $a0, $v0, .L8004A2C0 -/* 04AEB0 8004A2B0 00A2082A */ slt $at, $a1, $v0 -/* 04AEB4 8004A2B4 10200002 */ beqz $at, .L8004A2C0 -/* 04AEB8 8004A2B8 00000000 */ nop -/* 04AEBC 8004A2BC 00402825 */ move $a1, $v0 -.L8004A2C0: -/* 04AEC0 8004A2C0 1506FFF8 */ bne $t0, $a2, .L8004A2A4 -/* 04AEC4 8004A2C4 24630001 */ addiu $v1, $v1, 1 -/* 04AEC8 8004A2C8 14A60002 */ bne $a1, $a2, .L8004A2D4 -/* 04AECC 8004A2CC 3C0B8012 */ lui $t3, %hi(D_8011D528) # $t3, 0x8012 -/* 04AED0 8004A2D0 A2000175 */ sb $zero, 0x175($s0) -.L8004A2D4: -/* 04AED4 8004A2D4 860E0000 */ lh $t6, ($s0) -/* 04AED8 8004A2D8 2401000C */ li $at, 12 -/* 04AEDC 8004A2DC 15C00009 */ bnez $t6, .L8004A304 -/* 04AEE0 8004A2E0 00000000 */ nop -/* 04AEE4 8004A2E4 14A10007 */ bne $a1, $at, .L8004A304 -/* 04AEE8 8004A2E8 3C0F8012 */ lui $t7, %hi(D_8011D52C) # $t7, 0x8012 -/* 04AEEC 8004A2EC 8DEFD52C */ lw $t7, %lo(D_8011D52C)($t7) -/* 04AEF0 8004A2F0 24190002 */ li $t9, 2 -/* 04AEF4 8004A2F4 31F82000 */ andi $t8, $t7, 0x2000 -/* 04AEF8 8004A2F8 13000002 */ beqz $t8, .L8004A304 -/* 04AEFC 8004A2FC 3C018012 */ lui $at, %hi(D_8011D582) # $at, 0x8012 -/* 04AF00 8004A300 A039D582 */ sb $t9, %lo(D_8011D582)($at) -.L8004A304: -/* 04AF04 8004A304 8D6BD528 */ lw $t3, %lo(D_8011D528)($t3) -/* 04AF08 8004A308 00000000 */ nop -/* 04AF0C 8004A30C 316C4000 */ andi $t4, $t3, 0x4000 -/* 04AF10 8004A310 11800013 */ beqz $t4, .L8004A360 -/* 04AF14 8004A314 00000000 */ nop -/* 04AF18 8004A318 8D2D0000 */ lw $t5, ($t1) -/* 04AF1C 8004A31C 00000000 */ nop -/* 04AF20 8004A320 29A1FFD8 */ slti $at, $t5, -0x28 -/* 04AF24 8004A324 1420000E */ bnez $at, .L8004A360 -/* 04AF28 8004A328 00000000 */ nop -/* 04AF2C 8004A32C C604002C */ lwc1 $f4, 0x2c($s0) -/* 04AF30 8004A330 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 04AF34 8004A334 44813800 */ mtc1 $at, $f7 -/* 04AF38 8004A338 44803000 */ mtc1 $zero, $f6 -/* 04AF3C 8004A33C 46002221 */ cvt.d.s $f8, $f4 -/* 04AF40 8004A340 4628303E */ c.le.d $f6, $f8 -/* 04AF44 8004A344 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 04AF48 8004A348 45000005 */ bc1f .L8004A360 -/* 04AF4C 8004A34C 00000000 */ nop -/* 04AF50 8004A350 44815000 */ mtc1 $at, $f10 -/* 04AF54 8004A354 00000000 */ nop -/* 04AF58 8004A358 460A8482 */ mul.s $f18, $f16, $f10 -/* 04AF5C 8004A35C E7B200D8 */ swc1 $f18, 0xd8($sp) -.L8004A360: -/* 04AF60 8004A360 820E01D3 */ lb $t6, 0x1d3($s0) -/* 04AF64 8004A364 24010003 */ li $at, 3 -/* 04AF68 8004A368 15C00026 */ bnez $t6, .L8004A404 -/* 04AF6C 8004A36C 00000000 */ nop -/* 04AF70 8004A370 14A10024 */ bne $a1, $at, .L8004A404 -/* 04AF74 8004A374 2404002D */ li $a0, 45 -/* 04AF78 8004A378 E7A10048 */ swc1 $f1, 0x48($sp) -/* 04AF7C 8004A37C E7A0004C */ swc1 $f0, 0x4c($sp) -/* 04AF80 8004A380 0C00322D */ jal func_8000C8B4 -/* 04AF84 8004A384 E7AE00DC */ swc1 $f14, 0xdc($sp) -/* 04AF88 8004A388 9218020C */ lbu $t8, 0x20c($s0) -/* 04AF8C 8004A38C C7A10048 */ lwc1 $f1, 0x48($sp) -/* 04AF90 8004A390 C7A0004C */ lwc1 $f0, 0x4c($sp) -/* 04AF94 8004A394 C7AE00DC */ lwc1 $f14, 0xdc($sp) -/* 04AF98 8004A398 240F0002 */ li $t7, 2 -/* 04AF9C 8004A39C A20201D3 */ sb $v0, 0x1d3($s0) -/* 04AFA0 8004A3A0 13000005 */ beqz $t8, .L8004A3B8 -/* 04AFA4 8004A3A4 A20F0203 */ sb $t7, 0x203($s0) -/* 04AFA8 8004A3A8 82190203 */ lb $t9, 0x203($s0) -/* 04AFAC 8004A3AC 00000000 */ nop -/* 04AFB0 8004A3B0 372B0004 */ ori $t3, $t9, 4 -/* 04AFB4 8004A3B4 A20B0203 */ sb $t3, 0x203($s0) -.L8004A3B8: -/* 04AFB8 8004A3B8 02202025 */ move $a0, $s1 -/* 04AFBC 8004A3BC 24050107 */ li $a1, 263 -/* 04AFC0 8004A3C0 E7A10048 */ swc1 $f1, 0x48($sp) -/* 04AFC4 8004A3C4 E7A0004C */ swc1 $f0, 0x4c($sp) -/* 04AFC8 8004A3C8 0C015C12 */ jal func_80057048 -/* 04AFCC 8004A3CC E7AE00DC */ swc1 $f14, 0xdc($sp) -/* 04AFD0 8004A3D0 02202025 */ move $a0, $s1 -/* 04AFD4 8004A3D4 24050162 */ li $a1, 354 -/* 04AFD8 8004A3D8 24060008 */ li $a2, 8 -/* 04AFDC 8004A3DC 0C015C2E */ jal func_800570B8 -/* 04AFE0 8004A3E0 24070082 */ li $a3, 130 -/* 04AFE4 8004A3E4 86040000 */ lh $a0, ($s0) -/* 04AFE8 8004A3E8 0C01C8D2 */ jal func_80072348 -/* 04AFEC 8004A3EC 24050008 */ li $a1, 8 -/* 04AFF0 8004A3F0 3C098012 */ lui $t1, %hi(D_8011D538) # $t1, 0x8012 -/* 04AFF4 8004A3F4 C7A10048 */ lwc1 $f1, 0x48($sp) -/* 04AFF8 8004A3F8 C7A0004C */ lwc1 $f0, 0x4c($sp) -/* 04AFFC 8004A3FC C7AE00DC */ lwc1 $f14, 0xdc($sp) -/* 04B000 8004A400 2529D538 */ addiu $t1, %lo(D_8011D538) # addiu $t1, $t1, -0x2ac8 -.L8004A404: -/* 04B004 8004A404 820C01D6 */ lb $t4, 0x1d6($s0) -/* 04B008 8004A408 3C0D8012 */ lui $t5, %hi(D_8011D528) # $t5, 0x8012 -/* 04B00C 8004A40C 29810005 */ slti $at, $t4, 5 -/* 04B010 8004A410 14200018 */ bnez $at, .L8004A474 -/* 04B014 8004A414 3C0F800E */ lui $t7, %hi(D_800DCB98) # $t7, 0x800e -/* 04B018 8004A418 C608002C */ lwc1 $f8, 0x2c($s0) -/* 04B01C 8004A41C 3C01C018 */ li $at, 0xC0180000 # -2.375000 -/* 04B020 8004A420 44812800 */ mtc1 $at, $f5 -/* 04B024 8004A424 44802000 */ mtc1 $zero, $f4 -/* 04B028 8004A428 460041A1 */ cvt.d.s $f6, $f8 -/* 04B02C 8004A42C 4626203C */ c.lt.d $f4, $f6 -/* 04B030 8004A430 C7AA00C8 */ lwc1 $f10, 0xc8($sp) -/* 04B034 8004A434 4500000F */ bc1f .L8004A474 -/* 04B038 8004A438 3C01800E */ lui $at, %hi(D_800E64FC) # $at, 0x800e -/* 04B03C 8004A43C C42964F8 */ lwc1 $f9, %lo(D_800E64F8)($at) -/* 04B040 8004A440 C42864FC */ lwc1 $f8, %lo(D_800E64FC)($at) -/* 04B044 8004A444 460054A1 */ cvt.d.s $f18, $f10 -/* 04B048 8004A448 46289102 */ mul.d $f4, $f18, $f8 -/* 04B04C 8004A44C 3C01800E */ lui $at, %hi(D_800E6504) # $at, 0x800e -/* 04B050 8004A450 C7AA00C4 */ lwc1 $f10, 0xc4($sp) -/* 04B054 8004A454 C4296500 */ lwc1 $f9, %lo(D_800E6500)($at) -/* 04B058 8004A458 C4286504 */ lwc1 $f8, %lo(D_800E6504)($at) -/* 04B05C 8004A45C 462021A0 */ cvt.s.d $f6, $f4 -/* 04B060 8004A460 460054A1 */ cvt.d.s $f18, $f10 -/* 04B064 8004A464 46289102 */ mul.d $f4, $f18, $f8 -/* 04B068 8004A468 E7A600C8 */ swc1 $f6, 0xc8($sp) -/* 04B06C 8004A46C 462021A0 */ cvt.s.d $f6, $f4 -/* 04B070 8004A470 E7A600C4 */ swc1 $f6, 0xc4($sp) -.L8004A474: -/* 04B074 8004A474 A20001E0 */ sb $zero, 0x1e0($s0) -/* 04B078 8004A478 8DADD528 */ lw $t5, %lo(D_8011D528)($t5) -/* 04B07C 8004A47C 00000000 */ nop -/* 04B080 8004A480 31AE4000 */ andi $t6, $t5, 0x4000 -/* 04B084 8004A484 11C00007 */ beqz $t6, .L8004A4A4 -/* 04B088 8004A488 00000000 */ nop -/* 04B08C 8004A48C 8DEFCB98 */ lw $t7, %lo(D_800DCB98)($t7) -/* 04B090 8004A490 24180003 */ li $t8, 3 -/* 04B094 8004A494 29E10003 */ slti $at, $t7, 3 -/* 04B098 8004A498 10200002 */ beqz $at, .L8004A4A4 -/* 04B09C 8004A49C 00000000 */ nop -/* 04B0A0 8004A4A0 AE380074 */ sw $t8, 0x74($s1) -.L8004A4A4: -/* 04B0A4 8004A4A4 8D390000 */ lw $t9, ($t1) -/* 04B0A8 8004A4A8 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 04B0AC 8004A4AC 44995000 */ mtc1 $t9, $f10 -/* 04B0B0 8004A4B0 44812800 */ mtc1 $at, $f5 -/* 04B0B4 8004A4B4 468054A0 */ cvt.s.w $f18, $f10 -/* 04B0B8 8004A4B8 44802000 */ mtc1 $zero, $f4 -/* 04B0BC 8004A4BC 00000000 */ nop -/* 04B0C0 8004A4C0 46202181 */ sub.d $f6, $f4, $f0 -/* 04B0C4 8004A4C4 46009221 */ cvt.d.s $f8, $f18 -/* 04B0C8 8004A4C8 46264282 */ mul.d $f10, $f8, $f6 -/* 04B0CC 8004A4CC 444BF800 */ cfc1 $t3, $31 -/* 04B0D0 8004A4D0 00000000 */ nop -/* 04B0D4 8004A4D4 35610003 */ ori $at, $t3, 3 -/* 04B0D8 8004A4D8 38210002 */ xori $at, $at, 2 -/* 04B0DC 8004A4DC 44C1F800 */ ctc1 $at, $31 -/* 04B0E0 8004A4E0 00000000 */ nop -/* 04B0E4 8004A4E4 462054A4 */ cvt.w.d $f18, $f10 -/* 04B0E8 8004A4E8 E5320000 */ swc1 $f18, ($t1) -/* 04B0EC 8004A4EC 8D2C0000 */ lw $t4, ($t1) -/* 04B0F0 8004A4F0 44CBF800 */ ctc1 $t3, $31 -/* 04B0F4 8004A4F4 19800003 */ blez $t4, .L8004A504 -/* 04B0F8 8004A4F8 83AD00A3 */ lb $t5, 0xa3($sp) -/* 04B0FC 8004A4FC AD200000 */ sw $zero, ($t1) -.L8004A500: -/* 04B100 8004A500 83AD00A3 */ lb $t5, 0xa3($sp) -.L8004A504: -/* 04B104 8004A504 820201D6 */ lb $v0, 0x1d6($s0) -/* 04B108 8004A508 15A0000F */ bnez $t5, .L8004A548 -/* 04B10C 8004A50C 00004025 */ move $t0, $zero -/* 04B110 8004A510 3C014590 */ li $at, 0x45900000 # 4608.000000 -/* 04B114 8004A514 44812000 */ mtc1 $at, $f4 -/* 04B118 8004A518 00000000 */ nop -/* 04B11C 8004A51C 4604A202 */ mul.s $f8, $f20, $f4 -/* 04B120 8004A520 444EF800 */ cfc1 $t6, $31 -/* 04B124 8004A524 00000000 */ nop -/* 04B128 8004A528 35C10003 */ ori $at, $t6, 3 -/* 04B12C 8004A52C 38210002 */ xori $at, $at, 2 -/* 04B130 8004A530 44C1F800 */ ctc1 $at, $31 -/* 04B134 8004A534 00000000 */ nop -/* 04B138 8004A538 460041A4 */ cvt.w.s $f6, $f8 -/* 04B13C 8004A53C 44CEF800 */ ctc1 $t6, $31 -/* 04B140 8004A540 44083000 */ mfc1 $t0, $f6 -/* 04B144 8004A544 00000000 */ nop -.L8004A548: -/* 04B148 8004A548 28410006 */ slti $at, $v0, 6 -/* 04B14C 8004A54C 14200002 */ bnez $at, .L8004A558 -/* 04B150 8004A550 02002025 */ move $a0, $s0 -/* 04B154 8004A554 00004025 */ move $t0, $zero -.L8004A558: -/* 04B158 8004A558 2401000A */ li $at, 10 -/* 04B15C 8004A55C 14410003 */ bne $v0, $at, .L8004A56C -/* 04B160 8004A560 00003025 */ move $a2, $zero -/* 04B164 8004A564 4480A000 */ mtc1 $zero, $f20 -/* 04B168 8004A568 00004025 */ move $t0, $zero -.L8004A56C: -/* 04B16C 8004A56C 00083C00 */ sll $a3, $t0, 0x10 -/* 04B170 8004A570 00077C03 */ sra $t7, $a3, 0x10 -/* 04B174 8004A574 8FA500F8 */ lw $a1, 0xf8($sp) -/* 04B178 8004A578 01E03825 */ move $a3, $t7 -/* 04B17C 8004A57C AFA00010 */ sw $zero, 0x10($sp) -/* 04B180 8004A580 0C014214 */ jal func_80050850 -/* 04B184 8004A584 E7AE00DC */ swc1 $f14, 0xdc($sp) -/* 04B188 8004A588 920201FE */ lbu $v0, 0x1fe($s0) -/* 04B18C 8004A58C C7AE00DC */ lwc1 $f14, 0xdc($sp) -/* 04B190 8004A590 14400008 */ bnez $v0, .L8004A5B4 -/* 04B194 8004A594 3C0C8012 */ lui $t4, %hi(D_8011D540) # $t4, 0x8012 -/* 04B198 8004A598 8E380074 */ lw $t8, 0x74($s1) -/* 04B19C 8004A59C 3C0140B0 */ li $at, 0x40B00000 # 5.500000 -/* 04B1A0 8004A5A0 37190100 */ ori $t9, $t8, 0x100 -/* 04B1A4 8004A5A4 AE390074 */ sw $t9, 0x74($s1) -/* 04B1A8 8004A5A8 4481A000 */ mtc1 $at, $f20 -/* 04B1AC 8004A5AC 920201FE */ lbu $v0, 0x1fe($s0) -/* 04B1B0 8004A5B0 00000000 */ nop -.L8004A5B4: -/* 04B1B4 8004A5B4 24010001 */ li $at, 1 -/* 04B1B8 8004A5B8 14410003 */ bne $v0, $at, .L8004A5C8 -/* 04B1BC 8004A5BC 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 04B1C0 8004A5C0 4481A000 */ mtc1 $at, $f20 -/* 04B1C4 8004A5C4 00000000 */ nop -.L8004A5C8: -/* 04B1C8 8004A5C8 C61200C0 */ lwc1 $f18, 0xc0($s0) -/* 04B1CC 8004A5CC 44805800 */ mtc1 $zero, $f11 -/* 04B1D0 8004A5D0 44805000 */ mtc1 $zero, $f10 -/* 04B1D4 8004A5D4 46009121 */ cvt.d.s $f4, $f18 -/* 04B1D8 8004A5D8 46245032 */ c.eq.d $f10, $f4 -/* 04B1DC 8004A5DC 00000000 */ nop -/* 04B1E0 8004A5E0 45010021 */ bc1t .L8004A668 -/* 04B1E4 8004A5E4 3C01BF80 */ li $at, 0xBF800000 # -1.000000 -/* 04B1E8 8004A5E8 44810000 */ mtc1 $at, $f0 -/* 04B1EC 8004A5EC 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 -/* 04B1F0 8004A5F0 240BFFC4 */ li $t3, -60 -/* 04B1F4 8004A5F4 AC2BD538 */ sw $t3, %lo(D_8011D538)($at) -/* 04B1F8 8004A5F8 3C0141A0 */ li $at, 0x41A00000 # 20.000000 -/* 04B1FC 8004A5FC 44813000 */ mtc1 $at, $f6 -/* 04B200 8004A600 C60800C0 */ lwc1 $f8, 0xc0($s0) -/* 04B204 8004A604 44805800 */ mtc1 $zero, $f11 -/* 04B208 8004A608 46064081 */ sub.s $f2, $f8, $f6 -/* 04B20C 8004A60C 44805000 */ mtc1 $zero, $f10 -/* 04B210 8004A610 460014A1 */ cvt.d.s $f18, $f2 -/* 04B214 8004A614 462A903C */ c.lt.d $f18, $f10 -/* 04B218 8004A618 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 04B21C 8004A61C 44812000 */ mtc1 $at, $f4 -/* 04B220 8004A620 45000004 */ bc1f .L8004A634 -/* 04B224 8004A624 00000000 */ nop -/* 04B228 8004A628 44801000 */ mtc1 $zero, $f2 -/* 04B22C 8004A62C 00000000 */ nop -/* 04B230 8004A630 00000000 */ nop -.L8004A634: -/* 04B234 8004A634 46041203 */ div.s $f8, $f2, $f4 -/* 04B238 8004A638 3C01C010 */ li $at, 0xC0100000 # -2.250000 -/* 04B23C 8004A63C 44819800 */ mtc1 $at, $f19 -/* 04B240 8004A640 44809000 */ mtc1 $zero, $f18 -/* 04B244 8004A644 3C01C080 */ li $at, 0xC0800000 # -4.000000 -/* 04B248 8004A648 46080501 */ sub.s $f20, $f0, $f8 -/* 04B24C 8004A64C 4600A1A1 */ cvt.d.s $f6, $f20 -/* 04B250 8004A650 4632303C */ c.lt.d $f6, $f18 -/* 04B254 8004A654 00000000 */ nop -/* 04B258 8004A658 45000003 */ bc1f .L8004A668 -/* 04B25C 8004A65C 00000000 */ nop -/* 04B260 8004A660 4481A000 */ mtc1 $at, $f20 -/* 04B264 8004A664 00000000 */ nop -.L8004A668: -/* 04B268 8004A668 8D8CD540 */ lw $t4, %lo(D_8011D540)($t4) -/* 04B26C 8004A66C 00000000 */ nop -/* 04B270 8004A670 11800003 */ beqz $t4, .L8004A680 -/* 04B274 8004A674 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 04B278 8004A678 4481A000 */ mtc1 $at, $f20 -/* 04B27C 8004A67C 00000000 */ nop -.L8004A680: -/* 04B280 8004A680 820D01D7 */ lb $t5, 0x1d7($s0) -/* 04B284 8004A684 2401000C */ li $at, 12 -/* 04B288 8004A688 15A1000B */ bne $t5, $at, .L8004A6B8 -/* 04B28C 8004A68C 00000000 */ nop -/* 04B290 8004A690 822E003B */ lb $t6, 0x3b($s1) -/* 04B294 8004A694 00000000 */ nop -/* 04B298 8004A698 29C10003 */ slti $at, $t6, 3 -/* 04B29C 8004A69C 10200004 */ beqz $at, .L8004A6B0 -/* 04B2A0 8004A6A0 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 04B2A4 8004A6A4 4481A000 */ mtc1 $at, $f20 -/* 04B2A8 8004A6A8 10000003 */ b .L8004A6B8 -/* 04B2AC 8004A6AC 00000000 */ nop -.L8004A6B0: -/* 04B2B0 8004A6B0 4480A000 */ mtc1 $zero, $f20 -/* 04B2B4 8004A6B4 00000000 */ nop -.L8004A6B8: -/* 04B2B8 8004A6B8 3C018012 */ lui $at, %hi(D_8011D56C) # $at, 0x8012 -/* 04B2BC 8004A6BC C42AD56C */ lwc1 $f10, %lo(D_8011D56C)($at) -/* 04B2C0 8004A6C0 C6240020 */ lwc1 $f4, 0x20($s1) -/* 04B2C4 8004A6C4 460AA502 */ mul.s $f20, $f20, $f10 -/* 04B2C8 8004A6C8 46142201 */ sub.s $f8, $f4, $f20 -/* 04B2CC 8004A6CC E6280020 */ swc1 $f8, 0x20($s1) -/* 04B2D0 8004A6D0 920F01F5 */ lbu $t7, 0x1f5($s0) -/* 04B2D4 8004A6D4 00000000 */ nop -/* 04B2D8 8004A6D8 11E0005E */ beqz $t7, .L8004A854 -/* 04B2DC 8004A6DC 00000000 */ nop -/* 04B2E0 8004A6E0 821801DB */ lb $t8, 0x1db($s0) -/* 04B2E4 8004A6E4 34018001 */ li $at, 32769 -/* 04B2E8 8004A6E8 1700005A */ bnez $t8, .L8004A854 -/* 04B2EC 8004A6EC 00000000 */ nop -/* 04B2F0 8004A6F0 8E19014C */ lw $t9, 0x14c($s0) -/* 04B2F4 8004A6F4 860301A0 */ lh $v1, 0x1a0($s0) -/* 04B2F8 8004A6F8 A2000175 */ sb $zero, 0x175($s0) -/* 04B2FC 8004A6FC A20001DB */ sb $zero, 0x1db($s0) -/* 04B300 8004A700 A20001E0 */ sb $zero, 0x1e0($s0) -/* 04B304 8004A704 872B0000 */ lh $t3, ($t9) -/* 04B308 8004A708 306CFFFF */ andi $t4, $v1, 0xffff -/* 04B30C 8004A70C 016C1023 */ subu $v0, $t3, $t4 -/* 04B310 8004A710 0041082A */ slt $at, $v0, $at -/* 04B314 8004A714 8FAD00F8 */ lw $t5, 0xf8($sp) -/* 04B318 8004A718 14200003 */ bnez $at, .L8004A728 -/* 04B31C 8004A71C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 04B320 8004A720 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 04B324 8004A724 00411021 */ addu $v0, $v0, $at -.L8004A728: -/* 04B328 8004A728 28418000 */ slti $at, $v0, -0x8000 -/* 04B32C 8004A72C 10200002 */ beqz $at, .L8004A738 -/* 04B330 8004A730 3401FFFF */ li $at, 65535 -/* 04B334 8004A734 00411021 */ addu $v0, $v0, $at -.L8004A738: -/* 04B338 8004A738 004D0019 */ multu $v0, $t5 -/* 04B33C 8004A73C 28410400 */ slti $at, $v0, 0x400 -/* 04B340 8004A740 00007012 */ mflo $t6 -/* 04B344 8004A744 000E78C3 */ sra $t7, $t6, 3 -/* 04B348 8004A748 006FC021 */ addu $t8, $v1, $t7 -/* 04B34C 8004A74C 10200004 */ beqz $at, .L8004A760 -/* 04B350 8004A750 A61801A0 */ sh $t8, 0x1a0($s0) -/* 04B354 8004A754 2841FC01 */ slti $at, $v0, -0x3ff -/* 04B358 8004A758 10200005 */ beqz $at, .L8004A770 -/* 04B35C 8004A75C 00000000 */ nop -.L8004A760: -/* 04B360 8004A760 86190000 */ lh $t9, ($s0) -/* 04B364 8004A764 2401FFFF */ li $at, -1 -/* 04B368 8004A768 17210026 */ bne $t9, $at, .L8004A804 -/* 04B36C 8004A76C 00000000 */ nop -.L8004A770: -/* 04B370 8004A770 860B0000 */ lh $t3, ($s0) -/* 04B374 8004A774 2401FFFF */ li $at, -1 -/* 04B378 8004A778 1161000E */ beq $t3, $at, .L8004A7B4 -/* 04B37C 8004A77C 24040107 */ li $a0, 263 -/* 04B380 8004A780 8E25000C */ lw $a1, 0xc($s1) -/* 04B384 8004A784 8E260010 */ lw $a2, 0x10($s1) -/* 04B388 8004A788 8E270014 */ lw $a3, 0x14($s1) -/* 04B38C 8004A78C E7AE00DC */ swc1 $f14, 0xdc($sp) -/* 04B390 8004A790 0C0007AA */ jal func_80001EA8 -/* 04B394 8004A794 AFA00010 */ sw $zero, 0x10($sp) -/* 04B398 8004A798 02202025 */ move $a0, $s1 -/* 04B39C 8004A79C 24050162 */ li $a1, 354 -/* 04B3A0 8004A7A0 24060008 */ li $a2, 8 -/* 04B3A4 8004A7A4 0C015C2E */ jal func_800570B8 -/* 04B3A8 8004A7A8 24070082 */ li $a3, 130 -/* 04B3AC 8004A7AC C7AE00DC */ lwc1 $f14, 0xdc($sp) -/* 04B3B0 8004A7B0 00000000 */ nop -.L8004A7B4: -/* 04B3B4 8004A7B4 2404002D */ li $a0, 45 -/* 04B3B8 8004A7B8 0C00322D */ jal func_8000C8B4 -/* 04B3BC 8004A7BC E7AE00DC */ swc1 $f14, 0xdc($sp) -/* 04B3C0 8004A7C0 920D020C */ lbu $t5, 0x20c($s0) -/* 04B3C4 8004A7C4 C7AE00DC */ lwc1 $f14, 0xdc($sp) -/* 04B3C8 8004A7C8 240C0002 */ li $t4, 2 -/* 04B3CC 8004A7CC A20201D3 */ sb $v0, 0x1d3($s0) -/* 04B3D0 8004A7D0 11A00005 */ beqz $t5, .L8004A7E8 -/* 04B3D4 8004A7D4 A20C0203 */ sb $t4, 0x203($s0) -/* 04B3D8 8004A7D8 820E0203 */ lb $t6, 0x203($s0) -/* 04B3DC 8004A7DC 00000000 */ nop -/* 04B3E0 8004A7E0 35CF0004 */ ori $t7, $t6, 4 -/* 04B3E4 8004A7E4 A20F0203 */ sb $t7, 0x203($s0) -.L8004A7E8: -/* 04B3E8 8004A7E8 86040000 */ lh $a0, ($s0) -/* 04B3EC 8004A7EC E7AE00DC */ swc1 $f14, 0xdc($sp) -/* 04B3F0 8004A7F0 0C01C8D2 */ jal func_80072348 -/* 04B3F4 8004A7F4 24050008 */ li $a1, 8 -/* 04B3F8 8004A7F8 C7AE00DC */ lwc1 $f14, 0xdc($sp) -/* 04B3FC 8004A7FC 10000015 */ b .L8004A854 -/* 04B400 8004A800 A20001F5 */ sb $zero, 0x1f5($s0) -.L8004A804: -/* 04B404 8004A804 C626001C */ lwc1 $f6, 0x1c($s1) -/* 04B408 8004A808 3C013FE8 */ li $at, 0x3FE80000 # 1.812500 -/* 04B40C 8004A80C 44810800 */ mtc1 $at, $f1 -/* 04B410 8004A810 44800000 */ mtc1 $zero, $f0 -/* 04B414 8004A814 460034A1 */ cvt.d.s $f18, $f6 -/* 04B418 8004A818 46209282 */ mul.d $f10, $f18, $f0 -/* 04B41C 8004A81C C6280020 */ lwc1 $f8, 0x20($s1) -/* 04B420 8004A820 00000000 */ nop -/* 04B424 8004A824 460041A1 */ cvt.d.s $f6, $f8 -/* 04B428 8004A828 46205120 */ cvt.s.d $f4, $f10 -/* 04B42C 8004A82C E624001C */ swc1 $f4, 0x1c($s1) -/* 04B430 8004A830 46203482 */ mul.d $f18, $f6, $f0 -/* 04B434 8004A834 C6240024 */ lwc1 $f4, 0x24($s1) -/* 04B438 8004A838 00000000 */ nop -/* 04B43C 8004A83C 46002221 */ cvt.d.s $f8, $f4 -/* 04B440 8004A840 46204182 */ mul.d $f6, $f8, $f0 -/* 04B444 8004A844 462092A0 */ cvt.s.d $f10, $f18 -/* 04B448 8004A848 E62A0020 */ swc1 $f10, 0x20($s1) -/* 04B44C 8004A84C 462034A0 */ cvt.s.d $f18, $f6 -/* 04B450 8004A850 E6320024 */ swc1 $f18, 0x24($s1) -.L8004A854: -/* 04B454 8004A854 821801DB */ lb $t8, 0x1db($s0) -/* 04B458 8004A858 00000000 */ nop -/* 04B45C 8004A85C 13000081 */ beqz $t8, .L8004AA64 -/* 04B460 8004A860 00000000 */ nop -/* 04B464 8004A864 921901F1 */ lbu $t9, 0x1f1($s0) -/* 04B468 8004A868 86040162 */ lh $a0, 0x162($s0) -/* 04B46C 8004A86C 17200002 */ bnez $t9, .L8004A878 -/* 04B470 8004A870 240B0001 */ li $t3, 1 -/* 04B474 8004A874 A20B01F1 */ sb $t3, 0x1f1($s0) -.L8004A878: -/* 04B478 8004A878 820C01E2 */ lb $t4, 0x1e2($s0) -/* 04B47C 8004A87C 240E0002 */ li $t6, 2 -/* 04B480 8004A880 15800005 */ bnez $t4, .L8004A898 -/* 04B484 8004A884 00000000 */ nop -/* 04B488 8004A888 920D01F1 */ lbu $t5, 0x1f1($s0) -/* 04B48C 8004A88C 24010002 */ li $at, 2 -/* 04B490 8004A890 15A10025 */ bne $t5, $at, .L8004A928 -/* 04B494 8004A894 8FAF00F8 */ lw $t7, 0xf8($sp) -.L8004A898: -/* 04B498 8004A898 A20E01F1 */ sb $t6, 0x1f1($s0) -/* 04B49C 8004A89C 8FA200F8 */ lw $v0, 0xf8($sp) -/* 04B4A0 8004A8A0 86180162 */ lh $t8, 0x162($s0) -/* 04B4A4 8004A8A4 86030164 */ lh $v1, 0x164($s0) -/* 04B4A8 8004A8A8 00027AC0 */ sll $t7, $v0, 0xb -/* 04B4AC 8004A8AC 030FC823 */ subu $t9, $t8, $t7 -/* 04B4B0 8004A8B0 01E35821 */ addu $t3, $t7, $v1 -/* 04B4B4 8004A8B4 A6190162 */ sh $t9, 0x162($s0) -/* 04B4B8 8004A8B8 01E01025 */ move $v0, $t7 -/* 04B4BC 8004A8BC 19600005 */ blez $t3, .L8004A8D4 -/* 04B4C0 8004A8C0 00604025 */ move $t0, $v1 -/* 04B4C4 8004A8C4 1D000004 */ bgtz $t0, .L8004A8D8 -/* 04B4C8 8004A8C8 00626021 */ addu $t4, $v1, $v0 -/* 04B4CC 8004A8CC 10000003 */ b .L8004A8DC -/* 04B4D0 8004A8D0 A6000164 */ sh $zero, 0x164($s0) -.L8004A8D4: -/* 04B4D4 8004A8D4 00626021 */ addu $t4, $v1, $v0 -.L8004A8D8: -/* 04B4D8 8004A8D8 A60C0164 */ sh $t4, 0x164($s0) -.L8004A8DC: -/* 04B4DC 8004A8DC C604002C */ lwc1 $f4, 0x2c($s0) -/* 04B4E0 8004A8E0 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 04B4E4 8004A8E4 44815800 */ mtc1 $at, $f11 -/* 04B4E8 8004A8E8 44805000 */ mtc1 $zero, $f10 -/* 04B4EC 8004A8EC 46002221 */ cvt.d.s $f8, $f4 -/* 04B4F0 8004A8F0 4628503C */ c.lt.d $f10, $f8 -/* 04B4F4 8004A8F4 00000000 */ nop -/* 04B4F8 8004A8F8 45000007 */ bc1f .L8004A918 -/* 04B4FC 8004A8FC 00000000 */ nop -/* 04B500 8004A900 820D01E2 */ lb $t5, 0x1e2($s0) -/* 04B504 8004A904 00000000 */ nop -/* 04B508 8004A908 29A10003 */ slti $at, $t5, 3 -/* 04B50C 8004A90C 14200002 */ bnez $at, .L8004A918 -/* 04B510 8004A910 00000000 */ nop -/* 04B514 8004A914 A20001DB */ sb $zero, 0x1db($s0) -.L8004A918: -/* 04B518 8004A918 820301E2 */ lb $v1, 0x1e2($s0) -/* 04B51C 8004A91C 10000007 */ b .L8004A93C -/* 04B520 8004A920 00000000 */ nop -/* 04B524 8004A924 8FAF00F8 */ lw $t7, 0xf8($sp) -.L8004A928: -/* 04B528 8004A928 860E0164 */ lh $t6, 0x164($s0) -/* 04B52C 8004A92C 000FC2C0 */ sll $t8, $t7, 0xb -/* 04B530 8004A930 01D8C821 */ addu $t9, $t6, $t8 -/* 04B534 8004A934 820301E2 */ lb $v1, 0x1e2($s0) -/* 04B538 8004A938 A6190164 */ sh $t9, 0x164($s0) -.L8004A93C: -/* 04B53C 8004A93C 10600022 */ beqz $v1, .L8004A9C8 -/* 04B540 8004A940 28816001 */ slti $at, $a0, 0x6001 -/* 04B544 8004A944 14200006 */ bnez $at, .L8004A960 -/* 04B548 8004A948 2881A001 */ slti $at, $a0, -0x5fff -/* 04B54C 8004A94C 860B0162 */ lh $t3, 0x162($s0) -/* 04B550 8004A950 00000000 */ nop -/* 04B554 8004A954 29616001 */ slti $at, $t3, 0x6001 -/* 04B558 8004A958 1420000D */ bnez $at, .L8004A990 -/* 04B55C 8004A95C 2881A001 */ slti $at, $a0, -0x5fff -.L8004A960: -/* 04B560 8004A960 14200006 */ bnez $at, .L8004A97C -/* 04B564 8004A964 00000000 */ nop -/* 04B568 8004A968 860C0162 */ lh $t4, 0x162($s0) -/* 04B56C 8004A96C 00000000 */ nop -/* 04B570 8004A970 2981A001 */ slti $at, $t4, -0x5fff -/* 04B574 8004A974 14200006 */ bnez $at, .L8004A990 -/* 04B578 8004A978 00000000 */ nop -.L8004A97C: -/* 04B57C 8004A97C 18800012 */ blez $a0, .L8004A9C8 -/* 04B580 8004A980 00000000 */ nop -/* 04B584 8004A984 860D0162 */ lh $t5, 0x162($s0) -/* 04B588 8004A988 00000000 */ nop -/* 04B58C 8004A98C 1DA0000E */ bgtz $t5, .L8004A9C8 -.L8004A990: -/* 04B590 8004A990 02202025 */ move $a0, $s1 -/* 04B594 8004A994 2405000C */ li $a1, 12 -/* 04B598 8004A998 0C015C12 */ jal func_80057048 -/* 04B59C 8004A99C E7AE00DC */ swc1 $f14, 0xdc($sp) -/* 04B5A0 8004A9A0 860F0000 */ lh $t7, ($s0) -/* 04B5A4 8004A9A4 C7AE00DC */ lwc1 $f14, 0xdc($sp) -/* 04B5A8 8004A9A8 2401FFFF */ li $at, -1 -/* 04B5AC 8004A9AC 11E10006 */ beq $t7, $at, .L8004A9C8 -/* 04B5B0 8004A9B0 3C0E8012 */ lui $t6, %hi(D_8011D508) # $t6, 0x8012 -/* 04B5B4 8004A9B4 3C0140C0 */ li $at, 0x40C00000 # 6.000000 -/* 04B5B8 8004A9B8 44813000 */ mtc1 $at, $f6 -/* 04B5BC 8004A9BC 8DCED508 */ lw $t6, %lo(D_8011D508)($t6) -/* 04B5C0 8004A9C0 00000000 */ nop -/* 04B5C4 8004A9C4 E5C60030 */ swc1 $f6, 0x30($t6) -.L8004A9C8: -/* 04B5C8 8004A9C8 3C188012 */ lui $t8, %hi(D_8011D528) # $t8, 0x8012 -/* 04B5CC 8004A9CC 8F18D528 */ lw $t8, %lo(D_8011D528)($t8) -/* 04B5D0 8004A9D0 3C01FFFF */ lui $at, (0xFFFF5FFF >> 16) # lui $at, 0xffff -/* 04B5D4 8004A9D4 34215FFF */ ori $at, (0xFFFF5FFF & 0xFFFF) # ori $at, $at, 0x5fff -/* 04B5D8 8004A9D8 0301C824 */ and $t9, $t8, $at -/* 04B5DC 8004A9DC 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 -/* 04B5E0 8004A9E0 AC39D528 */ sw $t9, %lo(D_8011D528)($at) -/* 04B5E4 8004A9E4 8FA400F8 */ lw $a0, 0xf8($sp) -/* 04B5E8 8004A9E8 820B01DB */ lb $t3, 0x1db($s0) -/* 04B5EC 8004A9EC 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 04B5F0 8004A9F0 01646023 */ subu $t4, $t3, $a0 -/* 04B5F4 8004A9F4 A20C01DB */ sb $t4, 0x1db($s0) -/* 04B5F8 8004A9F8 44819000 */ mtc1 $at, $f18 -/* 04B5FC 8004A9FC 820D01DB */ lb $t5, 0x1db($s0) -/* 04B600 8004AA00 A20001D3 */ sb $zero, 0x1d3($s0) -/* 04B604 8004AA04 1DA00003 */ bgtz $t5, .L8004AA14 -/* 04B608 8004AA08 E61200B8 */ swc1 $f18, 0xb8($s0) -/* 04B60C 8004AA0C A20001DB */ sb $zero, 0x1db($s0) -/* 04B610 8004AA10 A20001F1 */ sb $zero, 0x1f1($s0) -.L8004AA14: -/* 04B614 8004AA14 86230002 */ lh $v1, 2($s1) -/* 04B618 8004AA18 340ED800 */ li $t6, 55296 -/* 04B61C 8004AA1C 306FFFFF */ andi $t7, $v1, 0xffff -/* 04B620 8004AA20 01CF1023 */ subu $v0, $t6, $t7 -/* 04B624 8004AA24 34018001 */ li $at, 32769 -/* 04B628 8004AA28 0041082A */ slt $at, $v0, $at -/* 04B62C 8004AA2C 14200003 */ bnez $at, .L8004AA3C -/* 04B630 8004AA30 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 04B634 8004AA34 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 04B638 8004AA38 00411021 */ addu $v0, $v0, $at -.L8004AA3C: -/* 04B63C 8004AA3C 28418000 */ slti $at, $v0, -0x8000 -/* 04B640 8004AA40 10200002 */ beqz $at, .L8004AA4C -/* 04B644 8004AA44 3401FFFF */ li $at, 65535 -/* 04B648 8004AA48 00411021 */ addu $v0, $v0, $at -.L8004AA4C: -/* 04B64C 8004AA4C 00440019 */ multu $v0, $a0 -/* 04B650 8004AA50 0000C012 */ mflo $t8 -/* 04B654 8004AA54 0018C903 */ sra $t9, $t8, 4 -/* 04B658 8004AA58 00795821 */ addu $t3, $v1, $t9 -/* 04B65C 8004AA5C 10000233 */ b .L8004B32C -/* 04B660 8004AA60 A62B0002 */ sh $t3, 2($s1) -.L8004AA64: -/* 04B664 8004AA64 820201E0 */ lb $v0, 0x1e0($s0) -/* 04B668 8004AA68 24010001 */ li $at, 1 -/* 04B66C 8004AA6C 10410004 */ beq $v0, $at, .L8004AA80 -/* 04B670 8004AA70 00026080 */ sll $t4, $v0, 2 -/* 04B674 8004AA74 2401FFFF */ li $at, -1 -/* 04B678 8004AA78 14410030 */ bne $v0, $at, .L8004AB3C -/* 04B67C 8004AA7C 24010002 */ li $at, 2 -.L8004AA80: -/* 04B680 8004AA80 8FAD00F8 */ lw $t5, 0xf8($sp) -/* 04B684 8004AA84 01826023 */ subu $t4, $t4, $v0 -/* 04B688 8004AA88 000C6240 */ sll $t4, $t4, 9 -/* 04B68C 8004AA8C 018D0019 */ multu $t4, $t5 -/* 04B690 8004AA90 860301A4 */ lh $v1, 0x1a4($s0) -/* 04B694 8004AA94 3C01800E */ lui $at, %hi(D_800E6508) # $at, 0x800e -/* 04B698 8004AA98 00604025 */ move $t0, $v1 -/* 04B69C 8004AA9C 00007012 */ mflo $t6 -/* 04B6A0 8004AAA0 006E7821 */ addu $t7, $v1, $t6 -/* 04B6A4 8004AAA4 A60F01A4 */ sh $t7, 0x1a4($s0) -/* 04B6A8 8004AAA8 C4246508 */ lwc1 $f4, %lo(D_800E6508)($at) -/* 04B6AC 8004AAAC 24010001 */ li $at, 1 -/* 04B6B0 8004AAB0 14410011 */ bne $v0, $at, .L8004AAF8 -/* 04B6B4 8004AAB4 E7A400C8 */ swc1 $f4, 0xc8($sp) -/* 04B6B8 8004AAB8 18600002 */ blez $v1, .L8004AAC4 -/* 04B6BC 8004AABC 24180001 */ li $t8, 1 -/* 04B6C0 8004AAC0 A21801D4 */ sb $t8, 0x1d4($s0) -.L8004AAC4: -/* 04B6C4 8004AAC4 05010219 */ bgez $t0, .L8004B32C -/* 04B6C8 8004AAC8 00000000 */ nop -/* 04B6CC 8004AACC 861901A4 */ lh $t9, 0x1a4($s0) -/* 04B6D0 8004AAD0 00000000 */ nop -/* 04B6D4 8004AAD4 07200215 */ bltz $t9, .L8004B32C -/* 04B6D8 8004AAD8 00000000 */ nop -/* 04B6DC 8004AADC 820B01D4 */ lb $t3, 0x1d4($s0) -/* 04B6E0 8004AAE0 00000000 */ nop -/* 04B6E4 8004AAE4 11600211 */ beqz $t3, .L8004B32C -/* 04B6E8 8004AAE8 00000000 */ nop -/* 04B6EC 8004AAEC A20001E0 */ sb $zero, 0x1e0($s0) -/* 04B6F0 8004AAF0 1000020E */ b .L8004B32C -/* 04B6F4 8004AAF4 A60001A4 */ sh $zero, 0x1a4($s0) -.L8004AAF8: -/* 04B6F8 8004AAF8 05010002 */ bgez $t0, .L8004AB04 -/* 04B6FC 8004AAFC 240C0001 */ li $t4, 1 -/* 04B700 8004AB00 A20C01D4 */ sb $t4, 0x1d4($s0) -.L8004AB04: -/* 04B704 8004AB04 19000209 */ blez $t0, .L8004B32C -/* 04B708 8004AB08 00000000 */ nop -/* 04B70C 8004AB0C 860D01A4 */ lh $t5, 0x1a4($s0) -/* 04B710 8004AB10 00000000 */ nop -/* 04B714 8004AB14 1DA00205 */ bgtz $t5, .L8004B32C -/* 04B718 8004AB18 00000000 */ nop -/* 04B71C 8004AB1C 820E01D4 */ lb $t6, 0x1d4($s0) -/* 04B720 8004AB20 00000000 */ nop -/* 04B724 8004AB24 11C00201 */ beqz $t6, .L8004B32C -/* 04B728 8004AB28 00000000 */ nop -/* 04B72C 8004AB2C A20001E0 */ sb $zero, 0x1e0($s0) -/* 04B730 8004AB30 100001FE */ b .L8004B32C -/* 04B734 8004AB34 A60001A4 */ sh $zero, 0x1a4($s0) -/* 04B738 8004AB38 24010002 */ li $at, 2 -.L8004AB3C: -/* 04B73C 8004AB3C 10410003 */ beq $v0, $at, .L8004AB4C -/* 04B740 8004AB40 2405FFFE */ li $a1, -2 -/* 04B744 8004AB44 14A2008B */ bne $a1, $v0, .L8004AD74 -/* 04B748 8004AB48 00000000 */ nop -.L8004AB4C: -/* 04B74C 8004AB4C 86230002 */ lh $v1, 2($s1) -/* 04B750 8004AB50 820F01D5 */ lb $t7, 0x1d5($s0) -/* 04B754 8004AB54 3C0D8012 */ lui $t5, %hi(D_8011D528) # $t5, 0x8012 -/* 04B758 8004AB58 15E00009 */ bnez $t7, .L8004AB80 -/* 04B75C 8004AB5C 00604025 */ move $t0, $v1 -/* 04B760 8004AB60 0002C080 */ sll $t8, $v0, 2 -/* 04B764 8004AB64 8FB900F8 */ lw $t9, 0xf8($sp) -/* 04B768 8004AB68 0302C023 */ subu $t8, $t8, $v0 -/* 04B76C 8004AB6C 0018C1C0 */ sll $t8, $t8, 7 -/* 04B770 8004AB70 03190019 */ multu $t8, $t9 -/* 04B774 8004AB74 00005812 */ mflo $t3 -/* 04B778 8004AB78 006B6021 */ addu $t4, $v1, $t3 -/* 04B77C 8004AB7C A62C0002 */ sh $t4, 2($s1) -.L8004AB80: -/* 04B780 8004AB80 8DADD528 */ lw $t5, %lo(D_8011D528)($t5) -/* 04B784 8004AB84 00000000 */ nop -/* 04B788 8004AB88 31AE0010 */ andi $t6, $t5, 0x10 -/* 04B78C 8004AB8C 15C00002 */ bnez $t6, .L8004AB98 -/* 04B790 8004AB90 00000000 */ nop -/* 04B794 8004AB94 A20001D5 */ sb $zero, 0x1d5($s0) -.L8004AB98: -/* 04B798 8004AB98 820201D5 */ lb $v0, 0x1d5($s0) -/* 04B79C 8004AB9C 8FAF00F8 */ lw $t7, 0xf8($sp) -/* 04B7A0 8004ABA0 18400003 */ blez $v0, .L8004ABB0 -/* 04B7A4 8004ABA4 004FC023 */ subu $t8, $v0, $t7 -/* 04B7A8 8004ABA8 10000002 */ b .L8004ABB4 -/* 04B7AC 8004ABAC A21801D5 */ sb $t8, 0x1d5($s0) -.L8004ABB0: -/* 04B7B0 8004ABB0 A20001D5 */ sb $zero, 0x1d5($s0) -.L8004ABB4: -/* 04B7B4 8004ABB4 860301A4 */ lh $v1, 0x1a4($s0) -/* 04B7B8 8004ABB8 8FB900F8 */ lw $t9, 0xf8($sp) -/* 04B7BC 8004ABBC C60A002C */ lwc1 $f10, 0x2c($s0) -/* 04B7C0 8004ABC0 00790019 */ multu $v1, $t9 -/* 04B7C4 8004ABC4 C6080038 */ lwc1 $f8, 0x38($s0) -/* 04B7C8 8004ABC8 24010002 */ li $at, 2 -/* 04B7CC 8004ABCC 46085182 */ mul.s $f6, $f10, $f8 -/* 04B7D0 8004ABD0 00005812 */ mflo $t3 -/* 04B7D4 8004ABD4 000B6103 */ sra $t4, $t3, 4 -/* 04B7D8 8004ABD8 006C6823 */ subu $t5, $v1, $t4 -/* 04B7DC 8004ABDC A60D01A4 */ sh $t5, 0x1a4($s0) -/* 04B7E0 8004ABE0 E626001C */ swc1 $f6, 0x1c($s1) -/* 04B7E4 8004ABE4 C612002C */ lwc1 $f18, 0x2c($s0) -/* 04B7E8 8004ABE8 C604003C */ lwc1 $f4, 0x3c($s0) -/* 04B7EC 8004ABEC 00000000 */ nop -/* 04B7F0 8004ABF0 46049282 */ mul.s $f10, $f18, $f4 -/* 04B7F4 8004ABF4 E62A0020 */ swc1 $f10, 0x20($s1) -/* 04B7F8 8004ABF8 C6060040 */ lwc1 $f6, 0x40($s0) -/* 04B7FC 8004ABFC C608002C */ lwc1 $f8, 0x2c($s0) -/* 04B800 8004AC00 00000000 */ nop -/* 04B804 8004AC04 46064482 */ mul.s $f18, $f8, $f6 -/* 04B808 8004AC08 E6320024 */ swc1 $f18, 0x24($s1) -/* 04B80C 8004AC0C 820E01E0 */ lb $t6, 0x1e0($s0) -/* 04B810 8004AC10 00000000 */ nop -/* 04B814 8004AC14 15C1002C */ bne $t6, $at, .L8004ACC8 -/* 04B818 8004AC18 00000000 */ nop -/* 04B81C 8004AC1C 19000002 */ blez $t0, .L8004AC28 -/* 04B820 8004AC20 240F0001 */ li $t7, 1 -/* 04B824 8004AC24 A20F01D4 */ sb $t7, 0x1d4($s0) -.L8004AC28: -/* 04B828 8004AC28 05010019 */ bgez $t0, .L8004AC90 -/* 04B82C 8004AC2C 29014001 */ slti $at, $t0, 0x4001 -/* 04B830 8004AC30 86380002 */ lh $t8, 2($s1) -/* 04B834 8004AC34 00000000 */ nop -/* 04B838 8004AC38 07000015 */ bltz $t8, .L8004AC90 -/* 04B83C 8004AC3C 29014001 */ slti $at, $t0, 0x4001 -/* 04B840 8004AC40 821901D4 */ lb $t9, 0x1d4($s0) -/* 04B844 8004AC44 2404000A */ li $a0, 10 -/* 04B848 8004AC48 13200011 */ beqz $t9, .L8004AC90 -/* 04B84C 8004AC4C 29014001 */ slti $at, $t0, 0x4001 -/* 04B850 8004AC50 A20001E0 */ sb $zero, 0x1e0($s0) -/* 04B854 8004AC54 A6200002 */ sh $zero, 2($s1) -/* 04B858 8004AC58 E7AE00DC */ swc1 $f14, 0xdc($sp) -/* 04B85C 8004AC5C 0C00322D */ jal func_8000C8B4 -/* 04B860 8004AC60 AFA800B8 */ sw $t0, 0xb8($sp) -/* 04B864 8004AC64 920B020C */ lbu $t3, 0x20c($s0) -/* 04B868 8004AC68 8FA800B8 */ lw $t0, 0xb8($sp) -/* 04B86C 8004AC6C C7AE00DC */ lwc1 $f14, 0xdc($sp) -/* 04B870 8004AC70 A20201D3 */ sb $v0, 0x1d3($s0) -/* 04B874 8004AC74 11600005 */ beqz $t3, .L8004AC8C -/* 04B878 8004AC78 A2000203 */ sb $zero, 0x203($s0) -/* 04B87C 8004AC7C 820C0203 */ lb $t4, 0x203($s0) -/* 04B880 8004AC80 00000000 */ nop -/* 04B884 8004AC84 358D0004 */ ori $t5, $t4, 4 -/* 04B888 8004AC88 A20D0203 */ sb $t5, 0x203($s0) -.L8004AC8C: -/* 04B88C 8004AC8C 29014001 */ slti $at, $t0, 0x4001 -.L8004AC90: -/* 04B890 8004AC90 142001A6 */ bnez $at, .L8004B32C -/* 04B894 8004AC94 00000000 */ nop -/* 04B898 8004AC98 862E0002 */ lh $t6, 2($s1) -/* 04B89C 8004AC9C 3C0F8012 */ lui $t7, %hi(D_8011D528) # $t7, 0x8012 -/* 04B8A0 8004ACA0 29C1C000 */ slti $at, $t6, -0x4000 -/* 04B8A4 8004ACA4 102001A1 */ beqz $at, .L8004B32C -/* 04B8A8 8004ACA8 00000000 */ nop -/* 04B8AC 8004ACAC 8DEFD528 */ lw $t7, %lo(D_8011D528)($t7) -/* 04B8B0 8004ACB0 2419003C */ li $t9, 60 -/* 04B8B4 8004ACB4 31F80010 */ andi $t8, $t7, 0x10 -/* 04B8B8 8004ACB8 1300019C */ beqz $t8, .L8004B32C -/* 04B8BC 8004ACBC 00000000 */ nop -/* 04B8C0 8004ACC0 1000019A */ b .L8004B32C -/* 04B8C4 8004ACC4 A21901D5 */ sb $t9, 0x1d5($s0) -.L8004ACC8: -/* 04B8C8 8004ACC8 05010002 */ bgez $t0, .L8004ACD4 -/* 04B8CC 8004ACCC 240B0001 */ li $t3, 1 -/* 04B8D0 8004ACD0 A20B01D4 */ sb $t3, 0x1d4($s0) -.L8004ACD4: -/* 04B8D4 8004ACD4 19000019 */ blez $t0, .L8004AD3C -/* 04B8D8 8004ACD8 2901C000 */ slti $at, $t0, -0x4000 -/* 04B8DC 8004ACDC 862C0002 */ lh $t4, 2($s1) -/* 04B8E0 8004ACE0 00000000 */ nop -/* 04B8E4 8004ACE4 1D800015 */ bgtz $t4, .L8004AD3C -/* 04B8E8 8004ACE8 2901C000 */ slti $at, $t0, -0x4000 -/* 04B8EC 8004ACEC 820D01D4 */ lb $t5, 0x1d4($s0) -/* 04B8F0 8004ACF0 2404000A */ li $a0, 10 -/* 04B8F4 8004ACF4 11A00011 */ beqz $t5, .L8004AD3C -/* 04B8F8 8004ACF8 2901C000 */ slti $at, $t0, -0x4000 -/* 04B8FC 8004ACFC A20001E0 */ sb $zero, 0x1e0($s0) -/* 04B900 8004AD00 A6200002 */ sh $zero, 2($s1) -/* 04B904 8004AD04 E7AE00DC */ swc1 $f14, 0xdc($sp) -/* 04B908 8004AD08 0C00322D */ jal func_8000C8B4 -/* 04B90C 8004AD0C AFA800B8 */ sw $t0, 0xb8($sp) -/* 04B910 8004AD10 920E020C */ lbu $t6, 0x20c($s0) -/* 04B914 8004AD14 8FA800B8 */ lw $t0, 0xb8($sp) -/* 04B918 8004AD18 C7AE00DC */ lwc1 $f14, 0xdc($sp) -/* 04B91C 8004AD1C A20201D3 */ sb $v0, 0x1d3($s0) -/* 04B920 8004AD20 11C00005 */ beqz $t6, .L8004AD38 -/* 04B924 8004AD24 A2000203 */ sb $zero, 0x203($s0) -/* 04B928 8004AD28 820F0203 */ lb $t7, 0x203($s0) -/* 04B92C 8004AD2C 00000000 */ nop -/* 04B930 8004AD30 35F80004 */ ori $t8, $t7, 4 -/* 04B934 8004AD34 A2180203 */ sb $t8, 0x203($s0) -.L8004AD38: -/* 04B938 8004AD38 2901C000 */ slti $at, $t0, -0x4000 -.L8004AD3C: -/* 04B93C 8004AD3C 1020017B */ beqz $at, .L8004B32C -/* 04B940 8004AD40 00000000 */ nop -/* 04B944 8004AD44 86390002 */ lh $t9, 2($s1) -/* 04B948 8004AD48 3C0B8012 */ lui $t3, %hi(D_8011D528) # $t3, 0x8012 -/* 04B94C 8004AD4C 2B214001 */ slti $at, $t9, 0x4001 -/* 04B950 8004AD50 14200176 */ bnez $at, .L8004B32C -/* 04B954 8004AD54 00000000 */ nop -/* 04B958 8004AD58 8D6BD528 */ lw $t3, %lo(D_8011D528)($t3) -/* 04B95C 8004AD5C 240D003C */ li $t5, 60 -/* 04B960 8004AD60 316C0010 */ andi $t4, $t3, 0x10 -/* 04B964 8004AD64 11800171 */ beqz $t4, .L8004B32C -/* 04B968 8004AD68 00000000 */ nop -/* 04B96C 8004AD6C 1000016F */ b .L8004B32C -/* 04B970 8004AD70 A20D01D5 */ sb $t5, 0x1d5($s0) -.L8004AD74: -/* 04B974 8004AD74 820401E1 */ lb $a0, 0x1e1($s0) -/* 04B978 8004AD78 A3A000A1 */ sb $zero, 0xa1($sp) -/* 04B97C 8004AD7C 820301E2 */ lb $v1, 0x1e2($s0) -/* 04B980 8004AD80 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 -/* 04B984 8004AD84 1060000B */ beqz $v1, .L8004ADB4 -/* 04B988 8004AD88 2401FFEF */ li $at, -17 -/* 04B98C 8004AD8C 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) -/* 04B990 8004AD90 240F0001 */ li $t7, 1 -/* 04B994 8004AD94 304E0010 */ andi $t6, $v0, 0x10 -/* 04B998 8004AD98 11C00002 */ beqz $t6, .L8004ADA4 -/* 04B99C 8004AD9C 0041C024 */ and $t8, $v0, $at -/* 04B9A0 8004ADA0 A3AF00A1 */ sb $t7, 0xa1($sp) -.L8004ADA4: -/* 04B9A4 8004ADA4 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 -/* 04B9A8 8004ADA8 AC38D528 */ sw $t8, %lo(D_8011D528)($at) -/* 04B9AC 8004ADAC 820301E2 */ lb $v1, 0x1e2($s0) -/* 04B9B0 8004ADB0 00000000 */ nop -.L8004ADB4: -/* 04B9B4 8004ADB4 28610002 */ slti $at, $v1, 2 -/* 04B9B8 8004ADB8 10200083 */ beqz $at, .L8004AFC8 -/* 04B9BC 8004ADBC 00000000 */ nop -/* 04B9C0 8004ADC0 86230002 */ lh $v1, 2($s1) -/* 04B9C4 8004ADC4 00804025 */ move $t0, $a0 -/* 04B9C8 8004ADC8 28613001 */ slti $at, $v1, 0x3001 -/* 04B9CC 8004ADCC 14200007 */ bnez $at, .L8004ADEC -/* 04B9D0 8004ADD0 00002025 */ move $a0, $zero -/* 04B9D4 8004ADD4 2464D000 */ addiu $a0, $v1, -0x3000 -/* 04B9D8 8004ADD8 28811001 */ slti $at, $a0, 0x1001 -/* 04B9DC 8004ADDC 1420000C */ bnez $at, .L8004AE10 -/* 04B9E0 8004ADE0 00000000 */ nop -/* 04B9E4 8004ADE4 1000000A */ b .L8004AE10 -/* 04B9E8 8004ADE8 24041000 */ li $a0, 4096 -.L8004ADEC: -/* 04B9EC 8004ADEC 2861D000 */ slti $at, $v1, -0x3000 -/* 04B9F0 8004ADF0 10200007 */ beqz $at, .L8004AE10 -/* 04B9F4 8004ADF4 00000000 */ nop -/* 04B9F8 8004ADF8 24643000 */ addiu $a0, $v1, 0x3000 -/* 04B9FC 8004ADFC 2881F000 */ slti $at, $a0, -0x1000 -/* 04BA00 8004AE00 10200003 */ beqz $at, .L8004AE10 -/* 04BA04 8004AE04 00042023 */ negu $a0, $a0 -/* 04BA08 8004AE08 2404F000 */ li $a0, -4096 -/* 04BA0C 8004AE0C 00042023 */ negu $a0, $a0 -.L8004AE10: -/* 04BA10 8004AE10 44842000 */ mtc1 $a0, $f4 -/* 04BA14 8004AE14 3C014580 */ li $at, 0x45800000 # 4096.000000 -/* 04BA18 8004AE18 468022A0 */ cvt.s.w $f10, $f4 -/* 04BA1C 8004AE1C 44814000 */ mtc1 $at, $f8 -/* 04BA20 8004AE20 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 04BA24 8004AE24 46085183 */ div.s $f6, $f10, $f8 -/* 04BA28 8004AE28 44812800 */ mtc1 $at, $f5 -/* 04BA2C 8004AE2C 44802000 */ mtc1 $zero, $f4 -/* 04BA30 8004AE30 3C0B8012 */ lui $t3, %hi(D_8011D528) # $t3, 0x8012 -/* 04BA34 8004AE34 8D6BD528 */ lw $t3, %lo(D_8011D528)($t3) -/* 04BA38 8004AE38 00000000 */ nop -/* 04BA3C 8004AE3C 316C0010 */ andi $t4, $t3, 0x10 -/* 04BA40 8004AE40 460034A1 */ cvt.d.s $f18, $f6 -/* 04BA44 8004AE44 44883000 */ mtc1 $t0, $f6 -/* 04BA48 8004AE48 46322281 */ sub.d $f10, $f4, $f18 -/* 04BA4C 8004AE4C 46803120 */ cvt.s.w $f4, $f6 -/* 04BA50 8004AE50 46205220 */ cvt.s.d $f8, $f10 -/* 04BA54 8004AE54 46082482 */ mul.s $f18, $f4, $f8 -/* 04BA58 8004AE58 4459F800 */ cfc1 $t9, $31 -/* 04BA5C 8004AE5C 00000000 */ nop -/* 04BA60 8004AE60 37210003 */ ori $at, $t9, 3 -/* 04BA64 8004AE64 38210002 */ xori $at, $at, 2 -/* 04BA68 8004AE68 44C1F800 */ ctc1 $at, $31 -/* 04BA6C 8004AE6C 00000000 */ nop -/* 04BA70 8004AE70 460092A4 */ cvt.w.s $f10, $f18 -/* 04BA74 8004AE74 44085000 */ mfc1 $t0, $f10 -/* 04BA78 8004AE78 44D9F800 */ ctc1 $t9, $31 -/* 04BA7C 8004AE7C 1180000D */ beqz $t4, .L8004AEB4 -/* 04BA80 8004AE80 8FAF00F8 */ lw $t7, 0xf8($sp) -/* 04BA84 8004AE84 8E2D0074 */ lw $t5, 0x74($s1) -/* 04BA88 8004AE88 00087900 */ sll $t7, $t0, 4 -/* 04BA8C 8004AE8C 35AE00C0 */ ori $t6, $t5, 0xc0 -/* 04BA90 8004AE90 AE2E0074 */ sw $t6, 0x74($s1) -/* 04BA94 8004AE94 8FB800F8 */ lw $t8, 0xf8($sp) -/* 04BA98 8004AE98 860C01A4 */ lh $t4, 0x1a4($s0) -/* 04BA9C 8004AE9C 01F80019 */ multu $t7, $t8 -/* 04BAA0 8004AEA0 0000C812 */ mflo $t9 -/* 04BAA4 8004AEA4 00195843 */ sra $t3, $t9, 1 -/* 04BAA8 8004AEA8 018B6823 */ subu $t5, $t4, $t3 -/* 04BAAC 8004AEAC A60D01A4 */ sh $t5, 0x1a4($s0) -/* 04BAB0 8004AEB0 8FAF00F8 */ lw $t7, 0xf8($sp) -.L8004AEB4: -/* 04BAB4 8004AEB4 860E01A4 */ lh $t6, 0x1a4($s0) -/* 04BAB8 8004AEB8 010F0019 */ multu $t0, $t7 -/* 04BABC 8004AEBC 0000C012 */ mflo $t8 -/* 04BAC0 8004AEC0 0018C880 */ sll $t9, $t8, 2 -/* 04BAC4 8004AEC4 0338C821 */ addu $t9, $t9, $t8 -/* 04BAC8 8004AEC8 0019C880 */ sll $t9, $t9, 2 -/* 04BACC 8004AECC 00196043 */ sra $t4, $t9, 1 -/* 04BAD0 8004AED0 01CC5823 */ subu $t3, $t6, $t4 -/* 04BAD4 8004AED4 A60B01A4 */ sh $t3, 0x1a4($s0) -/* 04BAD8 8004AED8 860301A4 */ lh $v1, 0x1a4($s0) -/* 04BADC 8004AEDC 8FAD00F8 */ lw $t5, 0xf8($sp) -/* 04BAE0 8004AEE0 920E01F5 */ lbu $t6, 0x1f5($s0) -/* 04BAE4 8004AEE4 006D0019 */ multu $v1, $t5 -/* 04BAE8 8004AEE8 3C0C8012 */ lui $t4, %hi(D_8011D55C) # $t4, 0x8012 -/* 04BAEC 8004AEEC 00007812 */ mflo $t7 -/* 04BAF0 8004AEF0 000FC103 */ sra $t8, $t7, 4 -/* 04BAF4 8004AEF4 0078C823 */ subu $t9, $v1, $t8 -/* 04BAF8 8004AEF8 15C00056 */ bnez $t6, .L8004B054 -/* 04BAFC 8004AEFC A61901A4 */ sh $t9, 0x1a4($s0) -/* 04BB00 8004AF00 8D8CD55C */ lw $t4, %lo(D_8011D55C)($t4) -/* 04BB04 8004AF04 2401FFFF */ li $at, -1 -/* 04BB08 8004AF08 11810025 */ beq $t4, $at, .L8004AFA0 -/* 04BB0C 8004AF0C 3C088012 */ lui $t0, %hi(D_8011D534) # $t0, 0x8012 -/* 04BB10 8004AF10 820B01D8 */ lb $t3, 0x1d8($s0) -/* 04BB14 8004AF14 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 -/* 04BB18 8004AF18 15600021 */ bnez $t3, .L8004AFA0 -/* 04BB1C 8004AF1C 00000000 */ nop -/* 04BB20 8004AF20 860801A4 */ lh $t0, 0x1a4($s0) -/* 04BB24 8004AF24 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) -/* 04BB28 8004AF28 00084023 */ negu $t0, $t0 -/* 04BB2C 8004AF2C 00086983 */ sra $t5, $t0, 6 -/* 04BB30 8004AF30 304F0010 */ andi $t7, $v0, 0x10 -/* 04BB34 8004AF34 11E00005 */ beqz $t7, .L8004AF4C -/* 04BB38 8004AF38 01A04025 */ move $t0, $t5 -/* 04BB3C 8004AF3C 30584000 */ andi $t8, $v0, 0x4000 -/* 04BB40 8004AF40 13000002 */ beqz $t8, .L8004AF4C -/* 04BB44 8004AF44 00000000 */ nop -/* 04BB48 8004AF48 000D4040 */ sll $t0, $t5, 1 -.L8004AF4C: -/* 04BB4C 8004AF4C 44883000 */ mtc1 $t0, $f6 -/* 04BB50 8004AF50 3C018012 */ lui $at, %hi(D_8011D570) # $at, 0x8012 -/* 04BB54 8004AF54 46803120 */ cvt.s.w $f4, $f6 -/* 04BB58 8004AF58 C428D570 */ lwc1 $f8, %lo(D_8011D570)($at) -/* 04BB5C 8004AF5C 8FAB00F8 */ lw $t3, 0xf8($sp) -/* 04BB60 8004AF60 46082482 */ mul.s $f18, $f4, $f8 -/* 04BB64 8004AF64 860C01A0 */ lh $t4, 0x1a0($s0) -/* 04BB68 8004AF68 444EF800 */ cfc1 $t6, $31 -/* 04BB6C 8004AF6C 00000000 */ nop -/* 04BB70 8004AF70 35C10003 */ ori $at, $t6, 3 -/* 04BB74 8004AF74 38210002 */ xori $at, $at, 2 -/* 04BB78 8004AF78 44C1F800 */ ctc1 $at, $31 -/* 04BB7C 8004AF7C 00000000 */ nop -/* 04BB80 8004AF80 460092A4 */ cvt.w.s $f10, $f18 -/* 04BB84 8004AF84 44085000 */ mfc1 $t0, $f10 -/* 04BB88 8004AF88 44CEF800 */ ctc1 $t6, $31 -/* 04BB8C 8004AF8C 010B0019 */ multu $t0, $t3 -/* 04BB90 8004AF90 00007812 */ mflo $t7 -/* 04BB94 8004AF94 018FC023 */ subu $t8, $t4, $t7 -/* 04BB98 8004AF98 1000002E */ b .L8004B054 -/* 04BB9C 8004AF9C A61801A0 */ sh $t8, 0x1a0($s0) -.L8004AFA0: -/* 04BBA0 8004AFA0 8D08D534 */ lw $t0, %lo(D_8011D534)($t0) -/* 04BBA4 8004AFA4 8FAB00F8 */ lw $t3, 0xf8($sp) -/* 04BBA8 8004AFA8 0008C880 */ sll $t9, $t0, 2 -/* 04BBAC 8004AFAC 032B0019 */ multu $t9, $t3 -/* 04BBB0 8004AFB0 860E01A0 */ lh $t6, 0x1a0($s0) -/* 04BBB4 8004AFB4 03204025 */ move $t0, $t9 -/* 04BBB8 8004AFB8 00006012 */ mflo $t4 -/* 04BBBC 8004AFBC 01CC7823 */ subu $t7, $t6, $t4 -/* 04BBC0 8004AFC0 10000024 */ b .L8004B054 -/* 04BBC4 8004AFC4 A60F01A0 */ sh $t7, 0x1a0($s0) -.L8004AFC8: -/* 04BBC8 8004AFC8 860301A4 */ lh $v1, 0x1a4($s0) -/* 04BBCC 8004AFCC 34018001 */ li $at, 32769 -/* 04BBD0 8004AFD0 3062FFFF */ andi $v0, $v1, 0xffff -/* 04BBD4 8004AFD4 00021023 */ negu $v0, $v0 -/* 04BBD8 8004AFD8 0041082A */ slt $at, $v0, $at -/* 04BBDC 8004AFDC 8FB800F8 */ lw $t8, 0xf8($sp) -/* 04BBE0 8004AFE0 14200004 */ bnez $at, .L8004AFF4 -/* 04BBE4 8004AFE4 00044080 */ sll $t0, $a0, 2 -/* 04BBE8 8004AFE8 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 04BBEC 8004AFEC 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 04BBF0 8004AFF0 00411021 */ addu $v0, $v0, $at -.L8004AFF4: -/* 04BBF4 8004AFF4 28418000 */ slti $at, $v0, -0x8000 -/* 04BBF8 8004AFF8 10200002 */ beqz $at, .L8004B004 -/* 04BBFC 8004AFFC 3401FFFF */ li $at, 65535 -/* 04BC00 8004B000 00411021 */ addu $v0, $v0, $at -.L8004B004: -/* 04BC04 8004B004 00580019 */ multu $v0, $t8 -/* 04BC08 8004B008 3C0E8012 */ lui $t6, %hi(D_8011D528) # $t6, 0x8012 -/* 04BC0C 8004B00C 0000C812 */ mflo $t9 -/* 04BC10 8004B010 00195903 */ sra $t3, $t9, 4 -/* 04BC14 8004B014 006B6821 */ addu $t5, $v1, $t3 -/* 04BC18 8004B018 A60D01A4 */ sh $t5, 0x1a4($s0) -/* 04BC1C 8004B01C 8DCED528 */ lw $t6, %lo(D_8011D528)($t6) -/* 04BC20 8004B020 8FB800F8 */ lw $t8, 0xf8($sp) -/* 04BC24 8004B024 31CC0010 */ andi $t4, $t6, 0x10 -/* 04BC28 8004B028 11800005 */ beqz $t4, .L8004B040 -/* 04BC2C 8004B02C 00000000 */ nop -/* 04BC30 8004B030 00044080 */ sll $t0, $a0, 2 -/* 04BC34 8004B034 01044023 */ subu $t0, $t0, $a0 -/* 04BC38 8004B038 10000001 */ b .L8004B040 -/* 04BC3C 8004B03C 00084040 */ sll $t0, $t0, 1 -.L8004B040: -/* 04BC40 8004B040 01180019 */ multu $t0, $t8 -/* 04BC44 8004B044 860F01A0 */ lh $t7, 0x1a0($s0) -/* 04BC48 8004B048 00005812 */ mflo $t3 -/* 04BC4C 8004B04C 01EB6823 */ subu $t5, $t7, $t3 -/* 04BC50 8004B050 A60D01A0 */ sh $t5, 0x1a0($s0) -.L8004B054: -/* 04BC54 8004B054 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 -/* 04BC58 8004B058 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) -/* 04BC5C 8004B05C 3C0F8012 */ lui $t7, %hi(D_8011D55C) # $t7, 0x8012 -/* 04BC60 8004B060 304E0010 */ andi $t6, $v0, 0x10 -/* 04BC64 8004B064 11C00009 */ beqz $t6, .L8004B08C -/* 04BC68 8004B068 01C01025 */ move $v0, $t6 -/* 04BC6C 8004B06C 820C01E2 */ lb $t4, 0x1e2($s0) -/* 04BC70 8004B070 00000000 */ nop -/* 04BC74 8004B074 11800005 */ beqz $t4, .L8004B08C -/* 04BC78 8004B078 00000000 */ nop -/* 04BC7C 8004B07C 921801F5 */ lbu $t8, 0x1f5($s0) -/* 04BC80 8004B080 00000000 */ nop -/* 04BC84 8004B084 13000020 */ beqz $t8, .L8004B108 -/* 04BC88 8004B088 00000000 */ nop -.L8004B08C: -/* 04BC8C 8004B08C 44882000 */ mtc1 $t0, $f4 -/* 04BC90 8004B090 C606002C */ lwc1 $f6, 0x2c($s0) -/* 04BC94 8004B094 46802220 */ cvt.s.w $f8, $f4 -/* 04BC98 8004B098 3C01800E */ lui $at, %hi(D_800E6514) # $at, 0x800e -/* 04BC9C 8004B09C C4256510 */ lwc1 $f5, %lo(D_800E6510)($at) -/* 04BCA0 8004B0A0 46083482 */ mul.s $f18, $f6, $f8 -/* 04BCA4 8004B0A4 C4246514 */ lwc1 $f4, %lo(D_800E6514)($at) -/* 04BCA8 8004B0A8 C628001C */ lwc1 $f8, 0x1c($s1) -/* 04BCAC 8004B0AC 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 -/* 04BCB0 8004B0B0 460092A1 */ cvt.d.s $f10, $f18 -/* 04BCB4 8004B0B4 46245182 */ mul.d $f6, $f10, $f4 -/* 04BCB8 8004B0B8 C6120050 */ lwc1 $f18, 0x50($s0) -/* 04BCBC 8004B0BC 46203520 */ cvt.s.d $f20, $f6 -/* 04BCC0 8004B0C0 C6260020 */ lwc1 $f6, 0x20($s1) -/* 04BCC4 8004B0C4 46149282 */ mul.s $f10, $f18, $f20 -/* 04BCC8 8004B0C8 460A4101 */ sub.s $f4, $f8, $f10 -/* 04BCCC 8004B0CC E624001C */ swc1 $f4, 0x1c($s1) -/* 04BCD0 8004B0D0 C6120054 */ lwc1 $f18, 0x54($s0) -/* 04BCD4 8004B0D4 C6240024 */ lwc1 $f4, 0x24($s1) -/* 04BCD8 8004B0D8 46149202 */ mul.s $f8, $f18, $f20 -/* 04BCDC 8004B0DC 46083281 */ sub.s $f10, $f6, $f8 -/* 04BCE0 8004B0E0 E62A0020 */ swc1 $f10, 0x20($s1) -/* 04BCE4 8004B0E4 C6120058 */ lwc1 $f18, 0x58($s0) -/* 04BCE8 8004B0E8 00000000 */ nop -/* 04BCEC 8004B0EC 46149182 */ mul.s $f6, $f18, $f20 -/* 04BCF0 8004B0F0 46062201 */ sub.s $f8, $f4, $f6 -/* 04BCF4 8004B0F4 E6280024 */ swc1 $f8, 0x24($s1) -/* 04BCF8 8004B0F8 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) -/* 04BCFC 8004B0FC 00000000 */ nop -/* 04BD00 8004B100 30590010 */ andi $t9, $v0, 0x10 -/* 04BD04 8004B104 03201025 */ move $v0, $t9 -.L8004B108: -/* 04BD08 8004B108 8DEFD55C */ lw $t7, %lo(D_8011D55C)($t7) -/* 04BD0C 8004B10C 3C088012 */ lui $t0, %hi(D_8011D538) # $t0, 0x8012 -/* 04BD10 8004B110 8D08D538 */ lw $t0, %lo(D_8011D538)($t0) -/* 04BD14 8004B114 2401FFFF */ li $at, -1 -/* 04BD18 8004B118 11E10007 */ beq $t7, $at, .L8004B138 -/* 04BD1C 8004B11C 00000000 */ nop -/* 04BD20 8004B120 820B01D8 */ lb $t3, 0x1d8($s0) -/* 04BD24 8004B124 00000000 */ nop -/* 04BD28 8004B128 15600003 */ bnez $t3, .L8004B138 -/* 04BD2C 8004B12C 00000000 */ nop -/* 04BD30 8004B130 820801E8 */ lb $t0, 0x1e8($s0) -/* 04BD34 8004B134 00000000 */ nop -.L8004B138: -/* 04BD38 8004B138 C602002C */ lwc1 $f2, 0x2c($s0) -/* 04BD3C 8004B13C 3C014010 */ li $at, 0x40100000 # 2.250000 -/* 04BD40 8004B140 44815800 */ mtc1 $at, $f11 -/* 04BD44 8004B144 44805000 */ mtc1 $zero, $f10 -/* 04BD48 8004B148 46001087 */ neg.s $f2, $f2 -/* 04BD4C 8004B14C 46001021 */ cvt.d.s $f0, $f2 -/* 04BD50 8004B150 462A003C */ c.lt.d $f0, $f10 -/* 04BD54 8004B154 44809000 */ mtc1 $zero, $f18 -/* 04BD58 8004B158 45000004 */ bc1f .L8004B16C -/* 04BD5C 8004B15C 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 04BD60 8004B160 44811000 */ mtc1 $at, $f2 -/* 04BD64 8004B164 00000000 */ nop -/* 04BD68 8004B168 46001021 */ cvt.d.s $f0, $f2 -.L8004B16C: -/* 04BD6C 8004B16C 3C01402C */ li $at, 0x402C0000 # 2.687500 -/* 04BD70 8004B170 44819800 */ mtc1 $at, $f19 -/* 04BD74 8004B174 44802000 */ mtc1 $zero, $f4 -/* 04BD78 8004B178 4620903C */ c.lt.d $f18, $f0 -/* 04BD7C 8004B17C 8FAB00F8 */ lw $t3, 0xf8($sp) -/* 04BD80 8004B180 45000004 */ bc1f .L8004B194 -/* 04BD84 8004B184 3C014160 */ li $at, 0x41600000 # 14.000000 -/* 04BD88 8004B188 44811000 */ mtc1 $at, $f2 -/* 04BD8C 8004B18C 00000000 */ nop -/* 04BD90 8004B190 46001021 */ cvt.d.s $f0, $f2 -.L8004B194: -/* 04BD94 8004B194 3C01401C */ li $at, 0x401C0000 # 2.437500 -/* 04BD98 8004B198 44812800 */ mtc1 $at, $f5 -/* 04BD9C 8004B19C 44884000 */ mtc1 $t0, $f8 -/* 04BDA0 8004B1A0 46240183 */ div.d $f6, $f0, $f4 -/* 04BDA4 8004B1A4 468042A0 */ cvt.s.w $f10, $f8 -/* 04BDA8 8004B1A8 8FAC00F8 */ lw $t4, 0xf8($sp) -/* 04BDAC 8004B1AC 462030A0 */ cvt.s.d $f2, $f6 -/* 04BDB0 8004B1B0 46025482 */ mul.s $f18, $f10, $f2 -/* 04BDB4 8004B1B4 444DF800 */ cfc1 $t5, $31 -/* 04BDB8 8004B1B8 00000000 */ nop -/* 04BDBC 8004B1BC 35A10003 */ ori $at, $t5, 3 -/* 04BDC0 8004B1C0 38210002 */ xori $at, $at, 2 -/* 04BDC4 8004B1C4 44C1F800 */ ctc1 $at, $31 -/* 04BDC8 8004B1C8 00000000 */ nop -/* 04BDCC 8004B1CC 46009124 */ cvt.w.s $f4, $f18 -/* 04BDD0 8004B1D0 44082000 */ mfc1 $t0, $f4 -/* 04BDD4 8004B1D4 44CDF800 */ ctc1 $t5, $31 -/* 04BDD8 8004B1D8 14400014 */ bnez $v0, .L8004B22C -/* 04BDDC 8004B1DC 00000000 */ nop -/* 04BDE0 8004B1E0 86230002 */ lh $v1, 2($s1) -/* 04BDE4 8004B1E4 00087043 */ sra $t6, $t0, 1 -/* 04BDE8 8004B1E8 006C0019 */ multu $v1, $t4 -/* 04BDEC 8004B1EC 000E5880 */ sll $t3, $t6, 2 -/* 04BDF0 8004B1F0 016E5821 */ addu $t3, $t3, $t6 -/* 04BDF4 8004B1F4 000B5880 */ sll $t3, $t3, 2 -/* 04BDF8 8004B1F8 016E5823 */ subu $t3, $t3, $t6 -/* 04BDFC 8004B1FC 0000C012 */ mflo $t8 -/* 04BE00 8004B200 0018C903 */ sra $t9, $t8, 4 -/* 04BE04 8004B204 00797823 */ subu $t7, $v1, $t9 -/* 04BE08 8004B208 A62F0002 */ sh $t7, 2($s1) -/* 04BE0C 8004B20C 8FAD00F8 */ lw $t5, 0xf8($sp) -/* 04BE10 8004B210 86380002 */ lh $t8, 2($s1) -/* 04BE14 8004B214 016D0019 */ multu $t3, $t5 -/* 04BE18 8004B218 00007012 */ mflo $t6 -/* 04BE1C 8004B21C 000E6043 */ sra $t4, $t6, 1 -/* 04BE20 8004B220 030CC823 */ subu $t9, $t8, $t4 -/* 04BE24 8004B224 10000012 */ b .L8004B270 -/* 04BE28 8004B228 A6390002 */ sh $t9, 2($s1) -.L8004B22C: -/* 04BE2C 8004B22C 86230002 */ lh $v1, 2($s1) -/* 04BE30 8004B230 00087843 */ sra $t7, $t0, 1 -/* 04BE34 8004B234 006B0019 */ multu $v1, $t3 -/* 04BE38 8004B238 000F6100 */ sll $t4, $t7, 4 -/* 04BE3C 8004B23C 018F6023 */ subu $t4, $t4, $t7 -/* 04BE40 8004B240 000C6040 */ sll $t4, $t4, 1 -/* 04BE44 8004B244 00006812 */ mflo $t5 -/* 04BE48 8004B248 000D7103 */ sra $t6, $t5, 4 -/* 04BE4C 8004B24C 006EC023 */ subu $t8, $v1, $t6 -/* 04BE50 8004B250 A6380002 */ sh $t8, 2($s1) -/* 04BE54 8004B254 8FB900F8 */ lw $t9, 0xf8($sp) -/* 04BE58 8004B258 862D0002 */ lh $t5, 2($s1) -/* 04BE5C 8004B25C 01990019 */ multu $t4, $t9 -/* 04BE60 8004B260 00007812 */ mflo $t7 -/* 04BE64 8004B264 000F5843 */ sra $t3, $t7, 1 -/* 04BE68 8004B268 01AB7023 */ subu $t6, $t5, $t3 -/* 04BE6C 8004B26C A62E0002 */ sh $t6, 2($s1) -.L8004B270: -/* 04BE70 8004B270 821801EC */ lb $t8, 0x1ec($s0) -/* 04BE74 8004B274 00000000 */ nop -/* 04BE78 8004B278 1300002C */ beqz $t8, .L8004B32C -/* 04BE7C 8004B27C 00000000 */ nop -/* 04BE80 8004B280 820C01E2 */ lb $t4, 0x1e2($s0) -/* 04BE84 8004B284 A20001EC */ sb $zero, 0x1ec($s0) -/* 04BE88 8004B288 15800028 */ bnez $t4, .L8004B32C -/* 04BE8C 8004B28C 3C01C01A */ li $at, 0xC01A0000 # -2.406250 -/* 04BE90 8004B290 C606002C */ lwc1 $f6, 0x2c($s0) -/* 04BE94 8004B294 44815800 */ mtc1 $at, $f11 -/* 04BE98 8004B298 44805000 */ mtc1 $zero, $f10 -/* 04BE9C 8004B29C 46003221 */ cvt.d.s $f8, $f6 -/* 04BEA0 8004B2A0 462A403C */ c.lt.d $f8, $f10 -/* 04BEA4 8004B2A4 00000000 */ nop -/* 04BEA8 8004B2A8 45000020 */ bc1f .L8004B32C -/* 04BEAC 8004B2AC 00000000 */ nop -/* 04BEB0 8004B2B0 821901E5 */ lb $t9, 0x1e5($s0) -/* 04BEB4 8004B2B4 3C028012 */ lui $v0, %hi(D_8011D534) # $v0, 0x8012 -/* 04BEB8 8004B2B8 1720001C */ bnez $t9, .L8004B32C -/* 04BEBC 8004B2BC 3C0B8012 */ lui $t3, %hi(D_8011D538) # $t3, 0x8012 -/* 04BEC0 8004B2C0 8C42D534 */ lw $v0, %lo(D_8011D534)($v0) -/* 04BEC4 8004B2C4 240FFFFF */ li $t7, -1 -/* 04BEC8 8004B2C8 28410029 */ slti $at, $v0, 0x29 -/* 04BECC 8004B2CC 14200005 */ bnez $at, .L8004B2E4 -/* 04BED0 8004B2D0 240D0001 */ li $t5, 1 -/* 04BED4 8004B2D4 A20F01E0 */ sb $t7, 0x1e0($s0) -/* 04BED8 8004B2D8 3C028012 */ lui $v0, %hi(D_8011D534) # $v0, 0x8012 -/* 04BEDC 8004B2DC 8C42D534 */ lw $v0, %lo(D_8011D534)($v0) -/* 04BEE0 8004B2E0 00000000 */ nop -.L8004B2E4: -/* 04BEE4 8004B2E4 2841FFD8 */ slti $at, $v0, -0x28 -/* 04BEE8 8004B2E8 10200002 */ beqz $at, .L8004B2F4 -/* 04BEEC 8004B2EC 00000000 */ nop -/* 04BEF0 8004B2F0 A20D01E0 */ sb $t5, 0x1e0($s0) -.L8004B2F4: -/* 04BEF4 8004B2F4 8D6BD538 */ lw $t3, %lo(D_8011D538)($t3) -/* 04BEF8 8004B2F8 00000000 */ nop -/* 04BEFC 8004B2FC 29610029 */ slti $at, $t3, 0x29 -/* 04BF00 8004B300 14200003 */ bnez $at, .L8004B310 -/* 04BF04 8004B304 00000000 */ nop -/* 04BF08 8004B308 10000006 */ b .L8004B324 -/* 04BF0C 8004B30C A20501E0 */ sb $a1, 0x1e0($s0) -.L8004B310: -/* 04BF10 8004B310 820E01E0 */ lb $t6, 0x1e0($s0) -/* 04BF14 8004B314 24180002 */ li $t8, 2 -/* 04BF18 8004B318 15C00002 */ bnez $t6, .L8004B324 -/* 04BF1C 8004B31C 00000000 */ nop -/* 04BF20 8004B320 A21801E0 */ sb $t8, 0x1e0($s0) -.L8004B324: -/* 04BF24 8004B324 A20001D4 */ sb $zero, 0x1d4($s0) -/* 04BF28 8004B328 A20001D5 */ sb $zero, 0x1d5($s0) -.L8004B32C: -/* 04BF2C 8004B32C 3C0C8012 */ lui $t4, %hi(D_8011D55C) # $t4, 0x8012 -/* 04BF30 8004B330 8D8CD55C */ lw $t4, %lo(D_8011D55C)($t4) -/* 04BF34 8004B334 2401FFFF */ li $at, -1 -/* 04BF38 8004B338 1181000F */ beq $t4, $at, .L8004B378 -/* 04BF3C 8004B33C 02202025 */ move $a0, $s1 -/* 04BF40 8004B340 3C01C080 */ li $at, 0xC0800000 # -4.000000 -/* 04BF44 8004B344 44812000 */ mtc1 $at, $f4 -/* 04BF48 8004B348 C612002C */ lwc1 $f18, 0x2c($s0) -/* 04BF4C 8004B34C 00000000 */ nop -/* 04BF50 8004B350 4604903C */ c.lt.s $f18, $f4 -/* 04BF54 8004B354 00000000 */ nop -/* 04BF58 8004B358 45000008 */ bc1f .L8004B37C -/* 04BF5C 8004B35C 02002825 */ move $a1, $s0 -/* 04BF60 8004B360 8E220074 */ lw $v0, 0x74($s1) -/* 04BF64 8004B364 240100C0 */ li $at, 192 -/* 04BF68 8004B368 305900C0 */ andi $t9, $v0, 0xc0 -/* 04BF6C 8004B36C 13210002 */ beq $t9, $at, .L8004B378 -/* 04BF70 8004B370 344F000C */ ori $t7, $v0, 0xc -/* 04BF74 8004B374 AE2F0074 */ sw $t7, 0x74($s1) -.L8004B378: -/* 04BF78 8004B378 02002825 */ move $a1, $s0 -.L8004B37C: -/* 04BF7C 8004B37C 0C015C88 */ jal func_80057220 -/* 04BF80 8004B380 E7AE00DC */ swc1 $f14, 0xdc($sp) -/* 04BF84 8004B384 C7AE00DC */ lwc1 $f14, 0xdc($sp) -/* 04BF88 8004B388 3C01800E */ lui $at, %hi(D_800E651C) # $at, 0x800e -/* 04BF8C 8004B38C 46007382 */ mul.s $f14, $f14, $f0 -/* 04BF90 8004B390 C4296518 */ lwc1 $f9, %lo(D_800E6518)($at) -/* 04BF94 8004B394 C428651C */ lwc1 $f8, %lo(D_800E651C)($at) -/* 04BF98 8004B398 820201D3 */ lb $v0, 0x1d3($s0) -/* 04BF9C 8004B39C 460071A1 */ cvt.d.s $f6, $f14 -/* 04BFA0 8004B3A0 46283282 */ mul.d $f10, $f6, $f8 -/* 04BFA4 8004B3A4 18400012 */ blez $v0, .L8004B3F0 -/* 04BFA8 8004B3A8 462053A0 */ cvt.s.d $f14, $f10 -/* 04BFAC 8004B3AC 3C0D8012 */ lui $t5, %hi(D_8011D540) # $t5, 0x8012 -/* 04BFB0 8004B3B0 8DADD540 */ lw $t5, %lo(D_8011D540)($t5) -/* 04BFB4 8004B3B4 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 04BFB8 8004B3B8 15A0000E */ bnez $t5, .L8004B3F4 -/* 04BFBC 8004B3BC 00000000 */ nop -/* 04BFC0 8004B3C0 44819000 */ mtc1 $at, $f18 -/* 04BFC4 8004B3C4 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 04BFC8 8004B3C8 E61200B4 */ swc1 $f18, 0xb4($s0) -/* 04BFCC 8004B3CC 8FAB00F8 */ lw $t3, 0xf8($sp) -/* 04BFD0 8004B3D0 44817000 */ mtc1 $at, $f14 -/* 04BFD4 8004B3D4 004B7023 */ subu $t6, $v0, $t3 -/* 04BFD8 8004B3D8 A20E01D3 */ sb $t6, 0x1d3($s0) -/* 04BFDC 8004B3DC 8E380074 */ lw $t8, 0x74($s1) -/* 04BFE0 8004B3E0 00000000 */ nop -/* 04BFE4 8004B3E4 370C00C0 */ ori $t4, $t8, 0xc0 -/* 04BFE8 8004B3E8 10000002 */ b .L8004B3F4 -/* 04BFEC 8004B3EC AE2C0074 */ sw $t4, 0x74($s1) -.L8004B3F0: -/* 04BFF0 8004B3F0 A20001D3 */ sb $zero, 0x1d3($s0) -.L8004B3F4: -/* 04BFF4 8004B3F4 921901F5 */ lbu $t9, 0x1f5($s0) -/* 04BFF8 8004B3F8 00000000 */ nop -/* 04BFFC 8004B3FC 17200128 */ bnez $t9, .L8004B8A0 -/* 04C000 8004B400 3C0F8012 */ lui $t7, %hi(D_8011D540) # $t7, 0x8012 -/* 04C004 8004B404 8DEFD540 */ lw $t7, %lo(D_8011D540)($t7) -/* 04C008 8004B408 00000000 */ nop -/* 04C00C 8004B40C 15E00124 */ bnez $t7, .L8004B8A0 -/* 04C010 8004B410 00000000 */ nop -/* 04C014 8004B414 820D01E2 */ lb $t5, 0x1e2($s0) -/* 04C018 8004B418 C7A400C8 */ lwc1 $f4, 0xc8($sp) -/* 04C01C 8004B41C 15A0000F */ bnez $t5, .L8004B45C -/* 04C020 8004B420 3C01800E */ lui $at, %hi(D_800E6524) # $at, 0x800e -/* 04C024 8004B424 C4296520 */ lwc1 $f9, %lo(D_800E6520)($at) -/* 04C028 8004B428 C4286524 */ lwc1 $f8, %lo(D_800E6524)($at) -/* 04C02C 8004B42C 460021A1 */ cvt.d.s $f6, $f4 -/* 04C030 8004B430 4628303C */ c.lt.d $f6, $f8 -/* 04C034 8004B434 00000000 */ nop -/* 04C038 8004B438 45000008 */ bc1f .L8004B45C -/* 04C03C 8004B43C 00000000 */ nop -/* 04C040 8004B440 820B01D6 */ lb $t3, 0x1d6($s0) -/* 04C044 8004B444 2401000A */ li $at, 10 -/* 04C048 8004B448 11610004 */ beq $t3, $at, .L8004B45C -/* 04C04C 8004B44C 3C01800E */ lui $at, %hi(D_800E6528) # $at, 0x800e -/* 04C050 8004B450 C4206528 */ lwc1 $f0, %lo(D_800E6528)($at) -/* 04C054 8004B454 00000000 */ nop -/* 04C058 8004B458 E7A000C8 */ swc1 $f0, 0xc8($sp) -.L8004B45C: -/* 04C05C 8004B45C C7A000C8 */ lwc1 $f0, 0xc8($sp) -/* 04C060 8004B460 C6120038 */ lwc1 $f18, 0x38($s0) -/* 04C064 8004B464 460E0002 */ mul.s $f0, $f0, $f14 -/* 04C068 8004B468 C62A001C */ lwc1 $f10, 0x1c($s1) -/* 04C06C 8004B46C C6280020 */ lwc1 $f8, 0x20($s1) -/* 04C070 8004B470 3C188012 */ lui $t8, %hi(D_8011D528) # $t8, 0x8012 -/* 04C074 8004B474 46009102 */ mul.s $f4, $f18, $f0 -/* 04C078 8004B478 46045181 */ sub.s $f6, $f10, $f4 -/* 04C07C 8004B47C E626001C */ swc1 $f6, 0x1c($s1) -/* 04C080 8004B480 C612003C */ lwc1 $f18, 0x3c($s0) -/* 04C084 8004B484 C6260024 */ lwc1 $f6, 0x24($s1) -/* 04C088 8004B488 46009282 */ mul.s $f10, $f18, $f0 -/* 04C08C 8004B48C 460A4101 */ sub.s $f4, $f8, $f10 -/* 04C090 8004B490 E6240020 */ swc1 $f4, 0x20($s1) -/* 04C094 8004B494 C6120040 */ lwc1 $f18, 0x40($s0) -/* 04C098 8004B498 00000000 */ nop -/* 04C09C 8004B49C 46009202 */ mul.s $f8, $f18, $f0 -/* 04C0A0 8004B4A0 46083281 */ sub.s $f10, $f6, $f8 -/* 04C0A4 8004B4A4 E62A0024 */ swc1 $f10, 0x24($s1) -/* 04C0A8 8004B4A8 820301E2 */ lb $v1, 0x1e2($s0) -/* 04C0AC 8004B4AC 00000000 */ nop -/* 04C0B0 8004B4B0 28610003 */ slti $at, $v1, 3 -/* 04C0B4 8004B4B4 1020000E */ beqz $at, .L8004B4F0 -/* 04C0B8 8004B4B8 00000000 */ nop -/* 04C0BC 8004B4BC C602002C */ lwc1 $f2, 0x2c($s0) -/* 04C0C0 8004B4C0 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 04C0C4 8004B4C4 44819800 */ mtc1 $at, $f19 -/* 04C0C8 8004B4C8 44809000 */ mtc1 $zero, $f18 -/* 04C0CC 8004B4CC 46001121 */ cvt.d.s $f4, $f2 -/* 04C0D0 8004B4D0 4632203C */ c.lt.d $f4, $f18 -/* 04C0D4 8004B4D4 00000000 */ nop -/* 04C0D8 8004B4D8 45010005 */ bc1t .L8004B4F0 -/* 04C0DC 8004B4DC 00000000 */ nop -/* 04C0E0 8004B4E0 820E01D6 */ lb $t6, 0x1d6($s0) -/* 04C0E4 8004B4E4 2401000A */ li $at, 10 -/* 04C0E8 8004B4E8 15C1001F */ bne $t6, $at, .L8004B568 -/* 04C0EC 8004B4EC 00000000 */ nop -.L8004B4F0: -/* 04C0F0 8004B4F0 14600006 */ bnez $v1, .L8004B50C -/* 04C0F4 8004B4F4 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 04C0F8 8004B4F8 C7A000C4 */ lwc1 $f0, 0xc4($sp) -/* 04C0FC 8004B4FC 44813000 */ mtc1 $at, $f6 -/* 04C100 8004B500 00000000 */ nop -/* 04C104 8004B504 46060003 */ div.s $f0, $f0, $f6 -/* 04C108 8004B508 E7A000C4 */ swc1 $f0, 0xc4($sp) -.L8004B50C: -/* 04C10C 8004B50C 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 04C110 8004B510 44814000 */ mtc1 $at, $f8 -/* 04C114 8004B514 C7A000C4 */ lwc1 $f0, 0xc4($sp) -/* 04C118 8004B518 46087283 */ div.s $f10, $f14, $f8 -/* 04C11C 8004B51C C6120038 */ lwc1 $f18, 0x38($s0) -/* 04C120 8004B520 C624001C */ lwc1 $f4, 0x1c($s1) -/* 04C124 8004B524 460A0002 */ mul.s $f0, $f0, $f10 -/* 04C128 8004B528 C62A0020 */ lwc1 $f10, 0x20($s1) -/* 04C12C 8004B52C 46009182 */ mul.s $f6, $f18, $f0 -/* 04C130 8004B530 46062200 */ add.s $f8, $f4, $f6 -/* 04C134 8004B534 E628001C */ swc1 $f8, 0x1c($s1) -/* 04C138 8004B538 C612003C */ lwc1 $f18, 0x3c($s0) -/* 04C13C 8004B53C C6280024 */ lwc1 $f8, 0x24($s1) -/* 04C140 8004B540 46009102 */ mul.s $f4, $f18, $f0 -/* 04C144 8004B544 46045180 */ add.s $f6, $f10, $f4 -/* 04C148 8004B548 E6260020 */ swc1 $f6, 0x20($s1) -/* 04C14C 8004B54C C6120040 */ lwc1 $f18, 0x40($s0) -/* 04C150 8004B550 00000000 */ nop -/* 04C154 8004B554 46009282 */ mul.s $f10, $f18, $f0 -/* 04C158 8004B558 460A4100 */ add.s $f4, $f8, $f10 -/* 04C15C 8004B55C E6240024 */ swc1 $f4, 0x24($s1) -/* 04C160 8004B560 C602002C */ lwc1 $f2, 0x2c($s0) -/* 04C164 8004B564 00000000 */ nop -.L8004B568: -/* 04C168 8004B568 44803000 */ mtc1 $zero, $f6 -/* 04C16C 8004B56C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 04C170 8004B570 4606103C */ c.lt.s $f2, $f6 -/* 04C174 8004B574 46021302 */ mul.s $f12, $f2, $f2 -/* 04C178 8004B578 44819000 */ mtc1 $at, $f18 -/* 04C17C 8004B57C 45000002 */ bc1f .L8004B588 -/* 04C180 8004B580 00000000 */ nop -/* 04C184 8004B584 46006307 */ neg.s $f12, $f12 -.L8004B588: -/* 04C188 8004B588 4612603C */ c.lt.s $f12, $f18 -/* 04C18C 8004B58C C7A600D8 */ lwc1 $f6, 0xd8($sp) -/* 04C190 8004B590 4500000D */ bc1f .L8004B5C8 -/* 04C194 8004B594 00000000 */ nop -/* 04C198 8004B598 8F18D528 */ lw $t8, %lo(D_8011D528)($t8) -/* 04C19C 8004B59C C7A800D8 */ lwc1 $f8, 0xd8($sp) -/* 04C1A0 8004B5A0 330C8000 */ andi $t4, $t8, 0x8000 -/* 04C1A4 8004B5A4 15800008 */ bnez $t4, .L8004B5C8 -/* 04C1A8 8004B5A8 00000000 */ nop -/* 04C1AC 8004B5AC 46081282 */ mul.s $f10, $f2, $f8 -/* 04C1B0 8004B5B0 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 04C1B4 8004B5B4 44812000 */ mtc1 $at, $f4 -/* 04C1B8 8004B5B8 00000000 */ nop -/* 04C1BC 8004B5BC 46045502 */ mul.s $f20, $f10, $f4 -/* 04C1C0 8004B5C0 10000004 */ b .L8004B5D4 -/* 04C1C4 8004B5C4 C6080038 */ lwc1 $f8, 0x38($s0) -.L8004B5C8: -/* 04C1C8 8004B5C8 46066502 */ mul.s $f20, $f12, $f6 -/* 04C1CC 8004B5CC 00000000 */ nop -/* 04C1D0 8004B5D0 C6080038 */ lwc1 $f8, 0x38($s0) -.L8004B5D4: -/* 04C1D4 8004B5D4 C632001C */ lwc1 $f18, 0x1c($s1) -/* 04C1D8 8004B5D8 46144282 */ mul.s $f10, $f8, $f20 -/* 04C1DC 8004B5DC C6260020 */ lwc1 $f6, 0x20($s1) -/* 04C1E0 8004B5E0 460A9101 */ sub.s $f4, $f18, $f10 -/* 04C1E4 8004B5E4 E624001C */ swc1 $f4, 0x1c($s1) -/* 04C1E8 8004B5E8 C608003C */ lwc1 $f8, 0x3c($s0) -/* 04C1EC 8004B5EC C6240024 */ lwc1 $f4, 0x24($s1) -/* 04C1F0 8004B5F0 46144482 */ mul.s $f18, $f8, $f20 -/* 04C1F4 8004B5F4 46123281 */ sub.s $f10, $f6, $f18 -/* 04C1F8 8004B5F8 E62A0020 */ swc1 $f10, 0x20($s1) -/* 04C1FC 8004B5FC C6080040 */ lwc1 $f8, 0x40($s0) -/* 04C200 8004B600 00000000 */ nop -/* 04C204 8004B604 46144182 */ mul.s $f6, $f8, $f20 -/* 04C208 8004B608 46062481 */ sub.s $f18, $f4, $f6 -/* 04C20C 8004B60C 44802000 */ mtc1 $zero, $f4 -/* 04C210 8004B610 E6320024 */ swc1 $f18, 0x24($s1) -/* 04C214 8004B614 C6000030 */ lwc1 $f0, 0x30($s0) -/* 04C218 8004B618 C7A800D4 */ lwc1 $f8, 0xd4($sp) -/* 04C21C 8004B61C 46000282 */ mul.s $f10, $f0, $f0 -/* 04C220 8004B620 4604003C */ c.lt.s $f0, $f4 -/* 04C224 8004B624 C7A600D4 */ lwc1 $f6, 0xd4($sp) -/* 04C228 8004B628 46085502 */ mul.s $f20, $f10, $f8 -/* 04C22C 8004B62C 45000002 */ bc1f .L8004B638 -/* 04C230 8004B630 00000000 */ nop -/* 04C234 8004B634 4600A507 */ neg.s $f20, $f20 -.L8004B638: -/* 04C238 8004B638 46060482 */ mul.s $f18, $f0, $f6 -/* 04C23C 8004B63C 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 04C240 8004B640 44815000 */ mtc1 $at, $f10 -/* 04C244 8004B644 C6060050 */ lwc1 $f6, 0x50($s0) -/* 04C248 8004B648 460A9202 */ mul.s $f8, $f18, $f10 -/* 04C24C 8004B64C C624001C */ lwc1 $f4, 0x1c($s1) -/* 04C250 8004B650 24010001 */ li $at, 1 -/* 04C254 8004B654 4608A500 */ add.s $f20, $f20, $f8 -/* 04C258 8004B658 C6280020 */ lwc1 $f8, 0x20($s1) -/* 04C25C 8004B65C 46143482 */ mul.s $f18, $f6, $f20 -/* 04C260 8004B660 46122281 */ sub.s $f10, $f4, $f18 -/* 04C264 8004B664 E62A001C */ swc1 $f10, 0x1c($s1) -/* 04C268 8004B668 C6060054 */ lwc1 $f6, 0x54($s0) -/* 04C26C 8004B66C C62A0024 */ lwc1 $f10, 0x24($s1) -/* 04C270 8004B670 46143102 */ mul.s $f4, $f6, $f20 -/* 04C274 8004B674 46044481 */ sub.s $f18, $f8, $f4 -/* 04C278 8004B678 E6320020 */ swc1 $f18, 0x20($s1) -/* 04C27C 8004B67C C6060058 */ lwc1 $f6, 0x58($s0) -/* 04C280 8004B680 00000000 */ nop -/* 04C284 8004B684 46143202 */ mul.s $f8, $f6, $f20 -/* 04C288 8004B688 46085101 */ sub.s $f4, $f10, $f8 -/* 04C28C 8004B68C E6240024 */ swc1 $f4, 0x24($s1) -/* 04C290 8004B690 820201E0 */ lb $v0, 0x1e0($s0) -/* 04C294 8004B694 00000000 */ nop -/* 04C298 8004B698 10410002 */ beq $v0, $at, .L8004B6A4 -/* 04C29C 8004B69C 2401FFFF */ li $at, -1 -/* 04C2A0 8004B6A0 1441004E */ bne $v0, $at, .L8004B7DC -.L8004B6A4: -/* 04C2A4 8004B6A4 3C01800E */ lui $at, %hi(D_800E6534) # $at, 0x800e -/* 04C2A8 8004B6A8 C612002C */ lwc1 $f18, 0x2c($s0) -/* 04C2AC 8004B6AC C42B6530 */ lwc1 $f11, %lo(D_800E6530)($at) -/* 04C2B0 8004B6B0 C42A6534 */ lwc1 $f10, %lo(D_800E6534)($at) -/* 04C2B4 8004B6B4 460091A1 */ cvt.d.s $f6, $f18 -/* 04C2B8 8004B6B8 462A3202 */ mul.d $f8, $f6, $f10 -/* 04C2BC 8004B6BC 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 -/* 04C2C0 8004B6C0 44812800 */ mtc1 $at, $f5 -/* 04C2C4 8004B6C4 44802000 */ mtc1 $zero, $f4 -/* 04C2C8 8004B6C8 860401A4 */ lh $a0, 0x1a4($s0) -/* 04C2CC 8004B6CC 46244482 */ mul.d $f18, $f8, $f4 -/* 04C2D0 8004B6D0 46209320 */ cvt.s.d $f12, $f18 -/* 04C2D4 8004B6D4 0C01C1FE */ jal func_800707F8 -/* 04C2D8 8004B6D8 E7AC00EC */ swc1 $f12, 0xec($sp) -/* 04C2DC 8004B6DC 821901E0 */ lb $t9, 0x1e0($s0) -/* 04C2E0 8004B6E0 C7AC00EC */ lwc1 $f12, 0xec($sp) -/* 04C2E4 8004B6E4 44995000 */ mtc1 $t9, $f10 -/* 04C2E8 8004B6E8 460C0182 */ mul.s $f6, $f0, $f12 -/* 04C2EC 8004B6EC 860301A4 */ lh $v1, 0x1a4($s0) -/* 04C2F0 8004B6F0 00000000 */ nop -/* 04C2F4 8004B6F4 28614001 */ slti $at, $v1, 0x4001 -/* 04C2F8 8004B6F8 46805220 */ cvt.s.w $f8, $f10 -/* 04C2FC 8004B6FC 46083502 */ mul.s $f20, $f6, $f8 -/* 04C300 8004B700 10200002 */ beqz $at, .L8004B70C -/* 04C304 8004B704 2861C000 */ slti $at, $v1, -0x4000 -/* 04C308 8004B708 10200005 */ beqz $at, .L8004B720 -.L8004B70C: -/* 04C30C 8004B70C 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 04C310 8004B710 44812000 */ mtc1 $at, $f4 -/* 04C314 8004B714 00000000 */ nop -/* 04C318 8004B718 4604A502 */ mul.s $f20, $f20, $f4 -/* 04C31C 8004B71C 00000000 */ nop -.L8004B720: -/* 04C320 8004B720 C60A0050 */ lwc1 $f10, 0x50($s0) -/* 04C324 8004B724 C632001C */ lwc1 $f18, 0x1c($s1) -/* 04C328 8004B728 46145182 */ mul.s $f6, $f10, $f20 -/* 04C32C 8004B72C C6240020 */ lwc1 $f4, 0x20($s1) -/* 04C330 8004B730 46069201 */ sub.s $f8, $f18, $f6 -/* 04C334 8004B734 E628001C */ swc1 $f8, 0x1c($s1) -/* 04C338 8004B738 C60A0054 */ lwc1 $f10, 0x54($s0) -/* 04C33C 8004B73C C6280024 */ lwc1 $f8, 0x24($s1) -/* 04C340 8004B740 46145482 */ mul.s $f18, $f10, $f20 -/* 04C344 8004B744 46122181 */ sub.s $f6, $f4, $f18 -/* 04C348 8004B748 E6260020 */ swc1 $f6, 0x20($s1) -/* 04C34C 8004B74C C60A0058 */ lwc1 $f10, 0x58($s0) -/* 04C350 8004B750 00000000 */ nop -/* 04C354 8004B754 46145102 */ mul.s $f4, $f10, $f20 -/* 04C358 8004B758 46044481 */ sub.s $f18, $f8, $f4 -/* 04C35C 8004B75C E6320024 */ swc1 $f18, 0x24($s1) -/* 04C360 8004B760 860401A4 */ lh $a0, 0x1a4($s0) -/* 04C364 8004B764 0C01C1F1 */ jal func_800707C4 -/* 04C368 8004B768 E7AC00EC */ swc1 $f12, 0xec($sp) -/* 04C36C 8004B76C 820F01E0 */ lb $t7, 0x1e0($s0) -/* 04C370 8004B770 C7AC00EC */ lwc1 $f12, 0xec($sp) -/* 04C374 8004B774 448F5000 */ mtc1 $t7, $f10 -/* 04C378 8004B778 460C0182 */ mul.s $f6, $f0, $f12 -/* 04C37C 8004B77C 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 -/* 04C380 8004B780 44815800 */ mtc1 $at, $f11 -/* 04C384 8004B784 46805220 */ cvt.s.w $f8, $f10 -/* 04C388 8004B788 44805000 */ mtc1 $zero, $f10 -/* 04C38C 8004B78C 46083102 */ mul.s $f4, $f6, $f8 -/* 04C390 8004B790 C628001C */ lwc1 $f8, 0x1c($s1) -/* 04C394 8004B794 460024A1 */ cvt.d.s $f18, $f4 -/* 04C398 8004B798 462A9182 */ mul.d $f6, $f18, $f10 -/* 04C39C 8004B79C C6040044 */ lwc1 $f4, 0x44($s0) -/* 04C3A0 8004B7A0 46203520 */ cvt.s.d $f20, $f6 -/* 04C3A4 8004B7A4 C6260020 */ lwc1 $f6, 0x20($s1) -/* 04C3A8 8004B7A8 46142482 */ mul.s $f18, $f4, $f20 -/* 04C3AC 8004B7AC 46124281 */ sub.s $f10, $f8, $f18 -/* 04C3B0 8004B7B0 E62A001C */ swc1 $f10, 0x1c($s1) -/* 04C3B4 8004B7B4 C6040048 */ lwc1 $f4, 0x48($s0) -/* 04C3B8 8004B7B8 C62A0024 */ lwc1 $f10, 0x24($s1) -/* 04C3BC 8004B7BC 46142202 */ mul.s $f8, $f4, $f20 -/* 04C3C0 8004B7C0 46083481 */ sub.s $f18, $f6, $f8 -/* 04C3C4 8004B7C4 E6320020 */ swc1 $f18, 0x20($s1) -/* 04C3C8 8004B7C8 C604004C */ lwc1 $f4, 0x4c($s0) -/* 04C3CC 8004B7CC 00000000 */ nop -/* 04C3D0 8004B7D0 46142182 */ mul.s $f6, $f4, $f20 -/* 04C3D4 8004B7D4 46065201 */ sub.s $f8, $f10, $f6 -/* 04C3D8 8004B7D8 E6280024 */ swc1 $f8, 0x24($s1) -.L8004B7DC: -/* 04C3DC 8004B7DC C6020034 */ lwc1 $f2, 0x34($s0) -/* 04C3E0 8004B7E0 44805000 */ mtc1 $zero, $f10 -/* 04C3E4 8004B7E4 46021482 */ mul.s $f18, $f2, $f2 -/* 04C3E8 8004B7E8 C7A400D0 */ lwc1 $f4, 0xd0($sp) -/* 04C3EC 8004B7EC 460A103C */ c.lt.s $f2, $f10 -/* 04C3F0 8004B7F0 C7A600D0 */ lwc1 $f6, 0xd0($sp) -/* 04C3F4 8004B7F4 46049502 */ mul.s $f20, $f18, $f4 -/* 04C3F8 8004B7F8 45000002 */ bc1f .L8004B804 -/* 04C3FC 8004B7FC 00000000 */ nop -/* 04C400 8004B800 4600A507 */ neg.s $f20, $f20 -.L8004B804: -/* 04C404 8004B804 46061202 */ mul.s $f8, $f2, $f6 -/* 04C408 8004B808 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 04C40C 8004B80C 44819000 */ mtc1 $at, $f18 -/* 04C410 8004B810 C6060044 */ lwc1 $f6, 0x44($s0) -/* 04C414 8004B814 46124102 */ mul.s $f4, $f8, $f18 -/* 04C418 8004B818 C62A001C */ lwc1 $f10, 0x1c($s1) -/* 04C41C 8004B81C 3C01800E */ lui $at, %hi(D_800E6538) # $at, 0x800e -/* 04C420 8004B820 4604A500 */ add.s $f20, $f20, $f4 -/* 04C424 8004B824 C6240020 */ lwc1 $f4, 0x20($s1) -/* 04C428 8004B828 46143202 */ mul.s $f8, $f6, $f20 -/* 04C42C 8004B82C 46085481 */ sub.s $f18, $f10, $f8 -/* 04C430 8004B830 E632001C */ swc1 $f18, 0x1c($s1) -/* 04C434 8004B834 C6060048 */ lwc1 $f6, 0x48($s0) -/* 04C438 8004B838 C6320024 */ lwc1 $f18, 0x24($s1) -/* 04C43C 8004B83C 46143282 */ mul.s $f10, $f6, $f20 -/* 04C440 8004B840 460A2201 */ sub.s $f8, $f4, $f10 -/* 04C444 8004B844 E6280020 */ swc1 $f8, 0x20($s1) -/* 04C448 8004B848 C606004C */ lwc1 $f6, 0x4c($s0) -/* 04C44C 8004B84C 00000000 */ nop -/* 04C450 8004B850 46143102 */ mul.s $f4, $f6, $f20 -/* 04C454 8004B854 46049281 */ sub.s $f10, $f18, $f4 -/* 04C458 8004B858 E62A0024 */ swc1 $f10, 0x24($s1) -/* 04C45C 8004B85C C606002C */ lwc1 $f6, 0x2c($s0) -/* 04C460 8004B860 C424653C */ lwc1 $f4, %lo(D_800E653C)($at) -/* 04C464 8004B864 C4256538 */ lwc1 $f5, %lo(D_800E6538)($at) -/* 04C468 8004B868 460034A1 */ cvt.d.s $f18, $f6 -/* 04C46C 8004B86C 46249282 */ mul.d $f10, $f18, $f4 -/* 04C470 8004B870 C6080008 */ lwc1 $f8, 8($s0) -/* 04C474 8004B874 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 04C478 8004B878 46004021 */ cvt.d.s $f0, $f8 -/* 04C47C 8004B87C 44813800 */ mtc1 $at, $f7 -/* 04C480 8004B880 462A0200 */ add.d $f8, $f0, $f10 -/* 04C484 8004B884 44803000 */ mtc1 $zero, $f6 -/* 04C488 8004B888 00000000 */ nop -/* 04C48C 8004B88C 46264482 */ mul.d $f18, $f8, $f6 -/* 04C490 8004B890 46320101 */ sub.d $f4, $f0, $f18 -/* 04C494 8004B894 462022A0 */ cvt.s.d $f10, $f4 -/* 04C498 8004B898 E60A0008 */ swc1 $f10, 8($s0) -/* 04C49C 8004B89C E7AC00EC */ swc1 $f12, 0xec($sp) -.L8004B8A0: -/* 04C4A0 8004B8A0 C7AC00EC */ lwc1 $f12, 0xec($sp) -/* 04C4A4 8004B8A4 AE00010C */ sw $zero, 0x10c($s0) -/* 04C4A8 8004B8A8 3C0D8012 */ lui $t5, %hi(D_8011D554) # $t5, 0x8012 -/* 04C4AC 8004B8AC 8DADD554 */ lw $t5, %lo(D_8011D554)($t5) -/* 04C4B0 8004B8B0 860201A2 */ lh $v0, 0x1a2($s0) -/* 04C4B4 8004B8B4 860C01A0 */ lh $t4, 0x1a0($s0) -/* 04C4B8 8004B8B8 01A25823 */ subu $t3, $t5, $v0 -/* 04C4BC 8004B8BC 000B70C3 */ sra $t6, $t3, 3 -/* 04C4C0 8004B8C0 004EC021 */ addu $t8, $v0, $t6 -/* 04C4C4 8004B8C4 A61801A2 */ sh $t8, 0x1a2($s0) -/* 04C4C8 8004B8C8 861901A2 */ lh $t9, 0x1a2($s0) -/* 04C4CC 8004B8CC 3C0D8012 */ lui $t5, %hi(D_8011D558) # $t5, 0x8012 -/* 04C4D0 8004B8D0 01997821 */ addu $t7, $t4, $t9 -/* 04C4D4 8004B8D4 A62F0000 */ sh $t7, ($s1) -/* 04C4D8 8004B8D8 860301A6 */ lh $v1, 0x1a6($s0) -/* 04C4DC 8004B8DC 8DADD558 */ lw $t5, %lo(D_8011D558)($t5) -/* 04C4E0 8004B8E0 860C01A4 */ lh $t4, 0x1a4($s0) -/* 04C4E4 8004B8E4 01A35823 */ subu $t3, $t5, $v1 -/* 04C4E8 8004B8E8 000B70C3 */ sra $t6, $t3, 3 -/* 04C4EC 8004B8EC 006EC021 */ addu $t8, $v1, $t6 -/* 04C4F0 8004B8F0 A61801A6 */ sh $t8, 0x1a6($s0) -/* 04C4F4 8004B8F4 861901A6 */ lh $t9, 0x1a6($s0) -/* 04C4F8 8004B8F8 00000000 */ nop -/* 04C4FC 8004B8FC 01997821 */ addu $t7, $t4, $t9 -/* 04C500 8004B900 A62F0004 */ sh $t7, 4($s1) -/* 04C504 8004B904 820D0175 */ lb $t5, 0x175($s0) -/* 04C508 8004B908 00000000 */ nop -/* 04C50C 8004B90C 11A00007 */ beqz $t5, .L8004B92C -/* 04C510 8004B910 3C018012 */ lui $at, %hi(D_8011D578) # $at, 0x8012 -/* 04C514 8004B914 C428D578 */ lwc1 $f8, %lo(D_8011D578)($at) -/* 04C518 8004B918 3C018012 */ lui $at, %hi(D_8011D57C) # $at, 0x8012 -/* 04C51C 8004B91C E628001C */ swc1 $f8, 0x1c($s1) -/* 04C520 8004B920 C426D57C */ lwc1 $f6, %lo(D_8011D57C)($at) -/* 04C524 8004B924 00000000 */ nop -/* 04C528 8004B928 E6260024 */ swc1 $f6, 0x24($s1) -.L8004B92C: -/* 04C52C 8004B92C 8E0B0148 */ lw $t3, 0x148($s0) -/* 04C530 8004B930 00000000 */ nop -/* 04C534 8004B934 15600061 */ bnez $t3, .L8004BABC -/* 04C538 8004B938 8FA600FC */ lw $a2, 0xfc($sp) -/* 04C53C 8004B93C 820E01D2 */ lb $t6, 0x1d2($s0) -/* 04C540 8004B940 C634001C */ lwc1 $f20, 0x1c($s1) -/* 04C544 8004B944 C62C0024 */ lwc1 $f12, 0x24($s1) -/* 04C548 8004B948 11C00010 */ beqz $t6, .L8004B98C -/* 04C54C 8004B94C 3C188012 */ lui $t8, %hi(D_8011D584) # $t8, 0x8012 -/* 04C550 8004B950 C604011C */ lwc1 $f4, 0x11c($s0) -/* 04C554 8004B954 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 04C558 8004B958 44811800 */ mtc1 $at, $f3 -/* 04C55C 8004B95C 44801000 */ mtc1 $zero, $f2 -/* 04C560 8004B960 460022A1 */ cvt.d.s $f10, $f4 -/* 04C564 8004B964 46225202 */ mul.d $f8, $f10, $f2 -/* 04C568 8004B968 C60A0120 */ lwc1 $f10, 0x120($s0) -/* 04C56C 8004B96C 4600A4A1 */ cvt.d.s $f18, $f20 -/* 04C570 8004B970 46006121 */ cvt.d.s $f4, $f12 -/* 04C574 8004B974 46289180 */ add.d $f6, $f18, $f8 -/* 04C578 8004B978 460054A1 */ cvt.d.s $f18, $f10 -/* 04C57C 8004B97C 46229202 */ mul.d $f8, $f18, $f2 -/* 04C580 8004B980 46203520 */ cvt.s.d $f20, $f6 -/* 04C584 8004B984 46282180 */ add.d $f6, $f4, $f8 -/* 04C588 8004B988 46203320 */ cvt.s.d $f12, $f6 -.L8004B98C: -/* 04C58C 8004B98C 8318D584 */ lb $t8, %lo(D_8011D584)($t8) -/* 04C590 8004B990 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 04C594 8004B994 44811800 */ mtc1 $at, $f3 -/* 04C598 8004B998 44801000 */ mtc1 $zero, $f2 -/* 04C59C 8004B99C 1300002A */ beqz $t8, .L8004BA48 -/* 04C5A0 8004B9A0 00000000 */ nop -/* 04C5A4 8004B9A4 4600A021 */ cvt.d.s $f0, $f20 -/* 04C5A8 8004B9A8 4620103C */ c.lt.d $f2, $f0 -/* 04C5AC 8004B9AC 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 04C5B0 8004B9B0 45010007 */ bc1t .L8004B9D0 -/* 04C5B4 8004B9B4 00000000 */ nop -/* 04C5B8 8004B9B8 44815800 */ mtc1 $at, $f11 -/* 04C5BC 8004B9BC 44805000 */ mtc1 $zero, $f10 -/* 04C5C0 8004B9C0 00000000 */ nop -/* 04C5C4 8004B9C4 462A003C */ c.lt.d $f0, $f10 -/* 04C5C8 8004B9C8 00000000 */ nop -/* 04C5CC 8004B9CC 45000007 */ bc1f .L8004B9EC -.L8004B9D0: -/* 04C5D0 8004B9D0 3C01800E */ lui $at, %hi(D_800E6544) # $at, 0x800e -/* 04C5D4 8004B9D4 C4336540 */ lwc1 $f19, %lo(D_800E6540)($at) -/* 04C5D8 8004B9D8 C4326544 */ lwc1 $f18, %lo(D_800E6544)($at) -/* 04C5DC 8004B9DC 00000000 */ nop -/* 04C5E0 8004B9E0 46320102 */ mul.d $f4, $f0, $f18 -/* 04C5E4 8004B9E4 10000003 */ b .L8004B9F4 -/* 04C5E8 8004B9E8 46202520 */ cvt.s.d $f20, $f4 -.L8004B9EC: -/* 04C5EC 8004B9EC 4480A000 */ mtc1 $zero, $f20 -/* 04C5F0 8004B9F0 00000000 */ nop -.L8004B9F4: -/* 04C5F4 8004B9F4 46006021 */ cvt.d.s $f0, $f12 -/* 04C5F8 8004B9F8 4620103C */ c.lt.d $f2, $f0 -/* 04C5FC 8004B9FC 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 04C600 8004BA00 45010007 */ bc1t .L8004BA20 -/* 04C604 8004BA04 00000000 */ nop -/* 04C608 8004BA08 44814800 */ mtc1 $at, $f9 -/* 04C60C 8004BA0C 44804000 */ mtc1 $zero, $f8 -/* 04C610 8004BA10 00000000 */ nop -/* 04C614 8004BA14 4628003C */ c.lt.d $f0, $f8 -/* 04C618 8004BA18 00000000 */ nop -/* 04C61C 8004BA1C 45000007 */ bc1f .L8004BA3C -.L8004BA20: -/* 04C620 8004BA20 3C01800E */ lui $at, %hi(D_800E654C) # $at, 0x800e -/* 04C624 8004BA24 C4276548 */ lwc1 $f7, %lo(D_800E6548)($at) -/* 04C628 8004BA28 C426654C */ lwc1 $f6, %lo(D_800E654C)($at) -/* 04C62C 8004BA2C 00000000 */ nop -/* 04C630 8004BA30 46260282 */ mul.d $f10, $f0, $f6 -/* 04C634 8004BA34 10000008 */ b .L8004BA58 -/* 04C638 8004BA38 46205320 */ cvt.s.d $f12, $f10 -.L8004BA3C: -/* 04C63C 8004BA3C 44806000 */ mtc1 $zero, $f12 -/* 04C640 8004BA40 10000006 */ b .L8004BA5C -/* 04C644 8004BA44 C7A000FC */ lwc1 $f0, 0xfc($sp) -.L8004BA48: -/* 04C648 8004BA48 C6120084 */ lwc1 $f18, 0x84($s0) -/* 04C64C 8004BA4C C6040088 */ lwc1 $f4, 0x88($s0) -/* 04C650 8004BA50 4612A500 */ add.s $f20, $f20, $f18 -/* 04C654 8004BA54 46046300 */ add.s $f12, $f12, $f4 -.L8004BA58: -/* 04C658 8004BA58 C7A000FC */ lwc1 $f0, 0xfc($sp) -.L8004BA5C: -/* 04C65C 8004BA5C C6260020 */ lwc1 $f6, 0x20($s1) -/* 04C660 8004BA60 4600A202 */ mul.s $f8, $f20, $f0 -/* 04C664 8004BA64 E7AC00EC */ swc1 $f12, 0xec($sp) -/* 04C668 8004BA68 02202025 */ move $a0, $s1 -/* 04C66C 8004BA6C 46003282 */ mul.s $f10, $f6, $f0 -/* 04C670 8004BA70 44054000 */ mfc1 $a1, $f8 -/* 04C674 8004BA74 46006482 */ mul.s $f18, $f12, $f0 -/* 04C678 8004BA78 44065000 */ mfc1 $a2, $f10 -/* 04C67C 8004BA7C 44079000 */ mfc1 $a3, $f18 -/* 04C680 8004BA80 0C00455C */ jal func_80011570 -/* 04C684 8004BA84 00000000 */ nop -/* 04C688 8004BA88 C7AC00EC */ lwc1 $f12, 0xec($sp) -/* 04C68C 8004BA8C 10400006 */ beqz $v0, .L8004BAA8 -/* 04C690 8004BA90 3C0C8012 */ lui $t4, %hi(D_8011D55C) # $t4, 0x8012 -/* 04C694 8004BA94 8D8CD55C */ lw $t4, %lo(D_8011D55C)($t4) -/* 04C698 8004BA98 2401FFFF */ li $at, -1 -/* 04C69C 8004BA9C 11810002 */ beq $t4, $at, .L8004BAA8 -/* 04C6A0 8004BAA0 24190001 */ li $t9, 1 -/* 04C6A4 8004BAA4 A3B9005F */ sb $t9, 0x5f($sp) -.L8004BAA8: -/* 04C6A8 8004BAA8 3C028012 */ lui $v0, %hi(D_8011D55C) # $v0, 0x8012 -/* 04C6AC 8004BAAC 8C42D55C */ lw $v0, %lo(D_8011D55C)($v0) -/* 04C6B0 8004BAB0 1000000B */ b .L8004BAE0 -/* 04C6B4 8004BAB4 820801E2 */ lb $t0, 0x1e2($s0) -/* 04C6B8 8004BAB8 8FA600FC */ lw $a2, 0xfc($sp) -.L8004BABC: -/* 04C6BC 8004BABC 02202025 */ move $a0, $s1 -/* 04C6C0 8004BAC0 02002825 */ move $a1, $s0 -/* 04C6C4 8004BAC4 0C0141D5 */ jal func_80050754 -/* 04C6C8 8004BAC8 E7AC00EC */ swc1 $f12, 0xec($sp) -/* 04C6CC 8004BACC 3C028012 */ lui $v0, %hi(D_8011D55C) # $v0, 0x8012 -/* 04C6D0 8004BAD0 8C42D55C */ lw $v0, %lo(D_8011D55C)($v0) -/* 04C6D4 8004BAD4 C7AC00EC */ lwc1 $f12, 0xec($sp) -/* 04C6D8 8004BAD8 00000000 */ nop -/* 04C6DC 8004BADC 820801E2 */ lb $t0, 0x1e2($s0) -.L8004BAE0: -/* 04C6E0 8004BAE0 2401FFFF */ li $at, -1 -/* 04C6E4 8004BAE4 14410017 */ bne $v0, $at, .L8004BB44 -/* 04C6E8 8004BAE8 8FA600F8 */ lw $a2, 0xf8($sp) -/* 04C6EC 8004BAEC 820F01D7 */ lb $t7, 0x1d7($s0) -/* 04C6F0 8004BAF0 2401000D */ li $at, 13 -/* 04C6F4 8004BAF4 15E10005 */ bne $t7, $at, .L8004BB0C -/* 04C6F8 8004BAF8 3C0D8012 */ lui $t5, %hi(D_8011D540) # $t5, 0x8012 -/* 04C6FC 8004BAFC 8DADD540 */ lw $t5, %lo(D_8011D540)($t5) -/* 04C700 8004BB00 00000000 */ nop -/* 04C704 8004BB04 11A0000B */ beqz $t5, .L8004BB34 -/* 04C708 8004BB08 00000000 */ nop -.L8004BB0C: -/* 04C70C 8004BB0C 8FA600F8 */ lw $a2, 0xf8($sp) -/* 04C710 8004BB10 02202025 */ move $a0, $s1 -/* 04C714 8004BB14 02002825 */ move $a1, $s0 -/* 04C718 8004BB18 AFA800B8 */ sw $t0, 0xb8($sp) -/* 04C71C 8004BB1C 0C0156A1 */ jal func_80055A84 -/* 04C720 8004BB20 E7AC00EC */ swc1 $f12, 0xec($sp) -/* 04C724 8004BB24 8FA800B8 */ lw $t0, 0xb8($sp) -/* 04C728 8004BB28 C7AC00EC */ lwc1 $f12, 0xec($sp) -/* 04C72C 8004BB2C 1000000D */ b .L8004BB64 -/* 04C730 8004BB30 00000000 */ nop -.L8004BB34: -/* 04C734 8004BB34 A20001E2 */ sb $zero, 0x1e2($s0) -/* 04C738 8004BB38 1000000A */ b .L8004BB64 -/* 04C73C 8004BB3C A20001E3 */ sb $zero, 0x1e3($s0) -/* 04C740 8004BB40 8FA600F8 */ lw $a2, 0xf8($sp) -.L8004BB44: -/* 04C744 8004BB44 02202025 */ move $a0, $s1 -/* 04C748 8004BB48 02002825 */ move $a1, $s0 -/* 04C74C 8004BB4C AFA800B8 */ sw $t0, 0xb8($sp) -/* 04C750 8004BB50 0C0153F4 */ jal func_80054FD0 -/* 04C754 8004BB54 E7AC00EC */ swc1 $f12, 0xec($sp) -/* 04C758 8004BB58 8FA800B8 */ lw $t0, 0xb8($sp) -/* 04C75C 8004BB5C C7AC00EC */ lwc1 $f12, 0xec($sp) -/* 04C760 8004BB60 00000000 */ nop -.L8004BB64: -/* 04C764 8004BB64 15000015 */ bnez $t0, .L8004BBBC -/* 04C768 8004BB68 00000000 */ nop -/* 04C76C 8004BB6C 820B01E2 */ lb $t3, 0x1e2($s0) -/* 04C770 8004BB70 00000000 */ nop -/* 04C774 8004BB74 11600011 */ beqz $t3, .L8004BBBC -/* 04C778 8004BB78 00000000 */ nop -/* 04C77C 8004BB7C 820E01DB */ lb $t6, 0x1db($s0) -/* 04C780 8004BB80 02202025 */ move $a0, $s1 -/* 04C784 8004BB84 11C0000D */ beqz $t6, .L8004BBBC -/* 04C788 8004BB88 2405000C */ li $a1, 12 -/* 04C78C 8004BB8C 0C015C12 */ jal func_80057048 -/* 04C790 8004BB90 E7AC00EC */ swc1 $f12, 0xec($sp) -/* 04C794 8004BB94 86180000 */ lh $t8, ($s0) -/* 04C798 8004BB98 C7AC00EC */ lwc1 $f12, 0xec($sp) -/* 04C79C 8004BB9C 2401FFFF */ li $at, -1 -/* 04C7A0 8004BBA0 13010006 */ beq $t8, $at, .L8004BBBC -/* 04C7A4 8004BBA4 3C0C8012 */ lui $t4, %hi(D_8011D508) # $t4, 0x8012 -/* 04C7A8 8004BBA8 3C0140C0 */ li $at, 0x40C00000 # 6.000000 -/* 04C7AC 8004BBAC 44812000 */ mtc1 $at, $f4 -/* 04C7B0 8004BBB0 8D8CD508 */ lw $t4, %lo(D_8011D508)($t4) -/* 04C7B4 8004BBB4 00000000 */ nop -/* 04C7B8 8004BBB8 E5840030 */ swc1 $f4, 0x30($t4) -.L8004BBBC: -/* 04C7BC 8004BBBC 820201D2 */ lb $v0, 0x1d2($s0) -/* 04C7C0 8004BBC0 3C0B8012 */ lui $t3, %hi(D_8011D540) # $t3, 0x8012 -/* 04C7C4 8004BBC4 1040000B */ beqz $v0, .L8004BBF4 -/* 04C7C8 8004BBC8 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 -/* 04C7CC 8004BBCC 8FB900F8 */ lw $t9, 0xf8($sp) -/* 04C7D0 8004BBD0 00000000 */ nop -/* 04C7D4 8004BBD4 00597823 */ subu $t7, $v0, $t9 -/* 04C7D8 8004BBD8 A20F01D2 */ sb $t7, 0x1d2($s0) -/* 04C7DC 8004BBDC 820D01D2 */ lb $t5, 0x1d2($s0) -/* 04C7E0 8004BBE0 00000000 */ nop -/* 04C7E4 8004BBE4 05A1001B */ bgez $t5, .L8004BC54 -/* 04C7E8 8004BBE8 00000000 */ nop -/* 04C7EC 8004BBEC 10000019 */ b .L8004BC54 -/* 04C7F0 8004BBF0 A20001D2 */ sb $zero, 0x1d2($s0) -.L8004BBF4: -/* 04C7F4 8004BBF4 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 04C7F8 8004BBF8 44814000 */ mtc1 $at, $f8 -/* 04C7FC 8004BBFC C7A600FC */ lwc1 $f6, 0xfc($sp) -/* 04C800 8004BC00 C62A000C */ lwc1 $f10, 0xc($s1) -/* 04C804 8004BC04 46064003 */ div.s $f0, $f8, $f6 -/* 04C808 8004BC08 C7B200E8 */ lwc1 $f18, 0xe8($sp) -/* 04C80C 8004BC0C 3C018012 */ lui $at, %hi(D_8011D548) # $at, 0x8012 -/* 04C810 8004BC10 C428D548 */ lwc1 $f8, %lo(D_8011D548)($at) -/* 04C814 8004BC14 46125101 */ sub.s $f4, $f10, $f18 -/* 04C818 8004BC18 C7B200E4 */ lwc1 $f18, 0xe4($sp) -/* 04C81C 8004BC1C 46082181 */ sub.s $f6, $f4, $f8 -/* 04C820 8004BC20 C62A0010 */ lwc1 $f10, 0x10($s1) -/* 04C824 8004BC24 3C018012 */ lui $at, %hi(D_8011D54C) # $at, 0x8012 -/* 04C828 8004BC28 46003502 */ mul.s $f20, $f6, $f0 -/* 04C82C 8004BC2C 46125101 */ sub.s $f4, $f10, $f18 -/* 04C830 8004BC30 C6260014 */ lwc1 $f6, 0x14($s1) -/* 04C834 8004BC34 46002202 */ mul.s $f8, $f4, $f0 -/* 04C838 8004BC38 E6280020 */ swc1 $f8, 0x20($s1) -/* 04C83C 8004BC3C C7AA00E0 */ lwc1 $f10, 0xe0($sp) -/* 04C840 8004BC40 C424D54C */ lwc1 $f4, %lo(D_8011D54C)($at) -/* 04C844 8004BC44 460A3481 */ sub.s $f18, $f6, $f10 -/* 04C848 8004BC48 46049201 */ sub.s $f8, $f18, $f4 -/* 04C84C 8004BC4C 46004302 */ mul.s $f12, $f8, $f0 -/* 04C850 8004BC50 00000000 */ nop -.L8004BC54: -/* 04C854 8004BC54 8D6BD540 */ lw $t3, %lo(D_8011D540)($t3) -/* 04C858 8004BC58 24010064 */ li $at, 100 -/* 04C85C 8004BC5C 15610005 */ bne $t3, $at, .L8004BC74 -/* 04C860 8004BC60 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 -/* 04C864 8004BC64 3C01C0A0 */ li $at, 0xC0A00000 # -5.000000 -/* 04C868 8004BC68 44813000 */ mtc1 $at, $f6 -/* 04C86C 8004BC6C 00000000 */ nop -/* 04C870 8004BC70 E6260020 */ swc1 $f6, 0x20($s1) -.L8004BC74: -/* 04C874 8004BC74 862E0000 */ lh $t6, ($s1) -/* 04C878 8004BC78 E634001C */ swc1 $f20, 0x1c($s1) -/* 04C87C 8004BC7C E62C0024 */ swc1 $f12, 0x24($s1) -/* 04C880 8004BC80 000EC023 */ negu $t8, $t6 -/* 04C884 8004BC84 A4B80000 */ sh $t8, ($a1) -/* 04C888 8004BC88 862C0002 */ lh $t4, 2($s1) -/* 04C88C 8004BC8C 44800000 */ mtc1 $zero, $f0 -/* 04C890 8004BC90 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 04C894 8004BC94 44815000 */ mtc1 $at, $f10 -/* 04C898 8004BC98 000CC823 */ negu $t9, $t4 -/* 04C89C 8004BC9C A4B90002 */ sh $t9, 2($a1) -/* 04C8A0 8004BCA0 A4A00004 */ sh $zero, 4($a1) -/* 04C8A4 8004BCA4 27A40060 */ addiu $a0, $sp, 0x60 -/* 04C8A8 8004BCA8 E4A0000C */ swc1 $f0, 0xc($a1) -/* 04C8AC 8004BCAC E4A00010 */ swc1 $f0, 0x10($a1) -/* 04C8B0 8004BCB0 E4A00014 */ swc1 $f0, 0x14($a1) -/* 04C8B4 8004BCB4 0C01BF9D */ jal func_8006FE74 -/* 04C8B8 8004BCB8 E4AA0008 */ swc1 $f10, 8($a1) -/* 04C8BC 8004BCBC 8E25001C */ lw $a1, 0x1c($s1) -/* 04C8C0 8004BCC0 8E260020 */ lw $a2, 0x20($s1) -/* 04C8C4 8004BCC4 8E270024 */ lw $a3, 0x24($s1) -/* 04C8C8 8004BCC8 260F0030 */ addiu $t7, $s0, 0x30 -/* 04C8CC 8004BCCC 260D0034 */ addiu $t5, $s0, 0x34 -/* 04C8D0 8004BCD0 260B002C */ addiu $t3, $s0, 0x2c -/* 04C8D4 8004BCD4 AFAB0018 */ sw $t3, 0x18($sp) -/* 04C8D8 8004BCD8 AFAD0014 */ sw $t5, 0x14($sp) -/* 04C8DC 8004BCDC AFAF0010 */ sw $t7, 0x10($sp) -/* 04C8E0 8004BCE0 0C01BD93 */ jal func_8006F64C -/* 04C8E4 8004BCE4 27A40060 */ addiu $a0, $sp, 0x60 -/* 04C8E8 8004BCE8 8E230060 */ lw $v1, 0x60($s1) -/* 04C8EC 8004BCEC 00000000 */ nop -/* 04C8F0 8004BCF0 10600013 */ beqz $v1, .L8004BD40 -/* 04C8F4 8004BCF4 00000000 */ nop -/* 04C8F8 8004BCF8 8C6E0000 */ lw $t6, ($v1) -/* 04C8FC 8004BCFC 00000000 */ nop -/* 04C900 8004BD00 29C10003 */ slti $at, $t6, 3 -/* 04C904 8004BD04 1420000E */ bnez $at, .L8004BD40 -/* 04C908 8004BD08 00000000 */ nop -/* 04C90C 8004BD0C 8C62000C */ lw $v0, 0xc($v1) -/* 04C910 8004BD10 24184000 */ li $t8, 16384 -/* 04C914 8004BD14 804C003A */ lb $t4, 0x3a($v0) -/* 04C918 8004BD18 8C4F0040 */ lw $t7, 0x40($v0) -/* 04C91C 8004BD1C 25990001 */ addiu $t9, $t4, 1 -/* 04C920 8004BD20 A059003A */ sb $t9, 0x3a($v0) -/* 04C924 8004BD24 A4580000 */ sh $t8, ($v0) -/* 04C928 8004BD28 804B003A */ lb $t3, 0x3a($v0) -/* 04C92C 8004BD2C 81ED0055 */ lb $t5, 0x55($t7) -/* 04C930 8004BD30 00000000 */ nop -/* 04C934 8004BD34 15AB0002 */ bne $t5, $t3, .L8004BD40 -/* 04C938 8004BD38 00000000 */ nop -/* 04C93C 8004BD3C A040003A */ sb $zero, 0x3a($v0) -.L8004BD40: -/* 04C940 8004BD40 8E230060 */ lw $v1, 0x60($s1) -/* 04C944 8004BD44 00000000 */ nop -/* 04C948 8004BD48 1060005F */ beqz $v1, .L8004BEC8 -/* 04C94C 8004BD4C 00000000 */ nop -/* 04C950 8004BD50 8C6E0000 */ lw $t6, ($v1) -/* 04C954 8004BD54 00000000 */ nop -/* 04C958 8004BD58 29C10003 */ slti $at, $t6, 3 -/* 04C95C 8004BD5C 1420005A */ bnez $at, .L8004BEC8 -/* 04C960 8004BD60 00000000 */ nop -/* 04C964 8004BD64 821801E2 */ lb $t8, 0x1e2($s0) -/* 04C968 8004BD68 83AC00A2 */ lb $t4, 0xa2($sp) -/* 04C96C 8004BD6C 17000003 */ bnez $t8, .L8004BD7C -/* 04C970 8004BD70 00000000 */ nop -/* 04C974 8004BD74 11800030 */ beqz $t4, .L8004BE38 -/* 04C978 8004BD78 3C0141A0 */ li $at, 0x41A00000 # 20.000000 -.L8004BD7C: -/* 04C97C 8004BD7C 8C620004 */ lw $v0, 4($v1) -/* 04C980 8004BD80 44809000 */ mtc1 $zero, $f18 -/* 04C984 8004BD84 C4400010 */ lwc1 $f0, 0x10($v0) -/* 04C988 8004BD88 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 04C98C 8004BD8C 4600903C */ c.lt.s $f18, $f0 -/* 04C990 8004BD90 00000000 */ nop -/* 04C994 8004BD94 45000008 */ bc1f .L8004BDB8 -/* 04C998 8004BD98 00000000 */ nop -/* 04C99C 8004BD9C 44814800 */ mtc1 $at, $f9 -/* 04C9A0 8004BDA0 44804000 */ mtc1 $zero, $f8 -/* 04C9A4 8004BDA4 46000121 */ cvt.d.s $f4, $f0 -/* 04C9A8 8004BDA8 46282181 */ sub.d $f6, $f4, $f8 -/* 04C9AC 8004BDAC 462032A0 */ cvt.s.d $f10, $f6 -/* 04C9B0 8004BDB0 10000004 */ b .L8004BDC4 -/* 04C9B4 8004BDB4 E44A0010 */ swc1 $f10, 0x10($v0) -.L8004BDB8: -/* 04C9B8 8004BDB8 44809000 */ mtc1 $zero, $f18 -/* 04C9BC 8004BDBC 00000000 */ nop -/* 04C9C0 8004BDC0 E4520010 */ swc1 $f18, 0x10($v0) -.L8004BDC4: -/* 04C9C4 8004BDC4 84590006 */ lh $t9, 6($v0) -/* 04C9C8 8004BDC8 44802000 */ mtc1 $zero, $f4 -/* 04C9CC 8004BDCC 332FBFFF */ andi $t7, $t9, 0xbfff -/* 04C9D0 8004BDD0 A44F0006 */ sh $t7, 6($v0) -/* 04C9D4 8004BDD4 8E2D0060 */ lw $t5, 0x60($s1) -/* 04C9D8 8004BDD8 2403BFFF */ li $v1, -16385 -/* 04C9DC 8004BDDC 8DA20008 */ lw $v0, 8($t5) -/* 04C9E0 8004BDE0 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 04C9E4 8004BDE4 C4400010 */ lwc1 $f0, 0x10($v0) -/* 04C9E8 8004BDE8 00000000 */ nop -/* 04C9EC 8004BDEC 4600203C */ c.lt.s $f4, $f0 -/* 04C9F0 8004BDF0 00000000 */ nop -/* 04C9F4 8004BDF4 45000008 */ bc1f .L8004BE18 -/* 04C9F8 8004BDF8 00000000 */ nop -/* 04C9FC 8004BDFC 44813800 */ mtc1 $at, $f7 -/* 04CA00 8004BE00 44803000 */ mtc1 $zero, $f6 -/* 04CA04 8004BE04 46000221 */ cvt.d.s $f8, $f0 -/* 04CA08 8004BE08 46264281 */ sub.d $f10, $f8, $f6 -/* 04CA0C 8004BE0C 462054A0 */ cvt.s.d $f18, $f10 -/* 04CA10 8004BE10 10000004 */ b .L8004BE24 -/* 04CA14 8004BE14 E4520010 */ swc1 $f18, 0x10($v0) -.L8004BE18: -/* 04CA18 8004BE18 44802000 */ mtc1 $zero, $f4 -/* 04CA1C 8004BE1C 00000000 */ nop -/* 04CA20 8004BE20 E4440010 */ swc1 $f4, 0x10($v0) -.L8004BE24: -/* 04CA24 8004BE24 844B0006 */ lh $t3, 6($v0) -/* 04CA28 8004BE28 00000000 */ nop -/* 04CA2C 8004BE2C 01637024 */ and $t6, $t3, $v1 -/* 04CA30 8004BE30 10000025 */ b .L8004BEC8 -/* 04CA34 8004BE34 A44E0006 */ sh $t6, 6($v0) -.L8004BE38: -/* 04CA38 8004BE38 8C620004 */ lw $v0, 4($v1) -/* 04CA3C 8004BE3C 44814000 */ mtc1 $at, $f8 -/* 04CA40 8004BE40 C4400010 */ lwc1 $f0, 0x10($v0) -/* 04CA44 8004BE44 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 04CA48 8004BE48 4608003C */ c.lt.s $f0, $f8 -/* 04CA4C 8004BE4C 00000000 */ nop -/* 04CA50 8004BE50 45000006 */ bc1f .L8004BE6C -/* 04CA54 8004BE54 00000000 */ nop -/* 04CA58 8004BE58 44813000 */ mtc1 $at, $f6 -/* 04CA5C 8004BE5C 00000000 */ nop -/* 04CA60 8004BE60 46060280 */ add.s $f10, $f0, $f6 -/* 04CA64 8004BE64 10000005 */ b .L8004BE7C -/* 04CA68 8004BE68 E44A0010 */ swc1 $f10, 0x10($v0) -.L8004BE6C: -/* 04CA6C 8004BE6C 84580006 */ lh $t8, 6($v0) -/* 04CA70 8004BE70 00000000 */ nop -/* 04CA74 8004BE74 370C4000 */ ori $t4, $t8, 0x4000 -/* 04CA78 8004BE78 A44C0006 */ sh $t4, 6($v0) -.L8004BE7C: -/* 04CA7C 8004BE7C 8E390060 */ lw $t9, 0x60($s1) -/* 04CA80 8004BE80 3C0141A0 */ li $at, 0x41A00000 # 20.000000 -/* 04CA84 8004BE84 8F220008 */ lw $v0, 8($t9) -/* 04CA88 8004BE88 44819000 */ mtc1 $at, $f18 -/* 04CA8C 8004BE8C C4400010 */ lwc1 $f0, 0x10($v0) -/* 04CA90 8004BE90 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 04CA94 8004BE94 4612003C */ c.lt.s $f0, $f18 -/* 04CA98 8004BE98 00000000 */ nop -/* 04CA9C 8004BE9C 45000006 */ bc1f .L8004BEB8 -/* 04CAA0 8004BEA0 00000000 */ nop -/* 04CAA4 8004BEA4 44812000 */ mtc1 $at, $f4 -/* 04CAA8 8004BEA8 00000000 */ nop -/* 04CAAC 8004BEAC 46040200 */ add.s $f8, $f0, $f4 -/* 04CAB0 8004BEB0 10000005 */ b .L8004BEC8 -/* 04CAB4 8004BEB4 E4480010 */ swc1 $f8, 0x10($v0) -.L8004BEB8: -/* 04CAB8 8004BEB8 844F0006 */ lh $t7, 6($v0) -/* 04CABC 8004BEBC 00000000 */ nop -/* 04CAC0 8004BEC0 35ED4000 */ ori $t5, $t7, 0x4000 -/* 04CAC4 8004BEC4 A44D0006 */ sh $t5, 6($v0) -.L8004BEC8: -/* 04CAC8 8004BEC8 3C0B8012 */ lui $t3, %hi(D_8011D55C) # $t3, 0x8012 -/* 04CACC 8004BECC 8D6BD55C */ lw $t3, %lo(D_8011D55C)($t3) -/* 04CAD0 8004BED0 2401FFFF */ li $at, -1 -/* 04CAD4 8004BED4 11610046 */ beq $t3, $at, .L8004BFF0 -/* 04CAD8 8004BED8 00000000 */ nop -/* 04CADC 8004BEDC 820E01D3 */ lb $t6, 0x1d3($s0) -/* 04CAE0 8004BEE0 3C18800E */ lui $t8, %hi(D_800DCB98) # $t8, 0x800e -/* 04CAE4 8004BEE4 15C00042 */ bnez $t6, .L8004BFF0 -/* 04CAE8 8004BEE8 00000000 */ nop -/* 04CAEC 8004BEEC 8F18CB98 */ lw $t8, %lo(D_800DCB98)($t8) -/* 04CAF0 8004BEF0 00000000 */ nop -/* 04CAF4 8004BEF4 2B010002 */ slti $at, $t8, 2 -/* 04CAF8 8004BEF8 1020003D */ beqz $at, .L8004BFF0 -/* 04CAFC 8004BEFC 00000000 */ nop -/* 04CB00 8004BF00 0C0078A7 */ jal func_8001E29C -/* 04CB04 8004BF04 24040014 */ li $a0, 20 -/* 04CB08 8004BF08 82080203 */ lb $t0, 0x203($s0) -/* 04CB0C 8004BF0C 820C0002 */ lb $t4, 2($s0) -/* 04CB10 8004BF10 310F0004 */ andi $t7, $t0, 4 -/* 04CB14 8004BF14 000F6883 */ sra $t5, $t7, 2 -/* 04CB18 8004BF18 25A80009 */ addiu $t0, $t5, 9 -/* 04CB1C 8004BF1C 2901000A */ slti $at, $t0, 0xa -/* 04CB20 8004BF20 000CC9C0 */ sll $t9, $t4, 7 -/* 04CB24 8004BF24 14200012 */ bnez $at, .L8004BF70 -/* 04CB28 8004BF28 03221821 */ addu $v1, $t9, $v0 -/* 04CB2C 8004BF2C 906B0070 */ lbu $t3, 0x70($v1) -/* 04CB30 8004BF30 24180001 */ li $t8, 1 -/* 04CB34 8004BF34 1D600009 */ bgtz $t3, .L8004BF5C -/* 04CB38 8004BF38 00000000 */ nop -/* 04CB3C 8004BF3C C46A0074 */ lwc1 $f10, 0x74($v1) -/* 04CB40 8004BF40 44803800 */ mtc1 $zero, $f7 -/* 04CB44 8004BF44 44803000 */ mtc1 $zero, $f6 -/* 04CB48 8004BF48 460054A1 */ cvt.d.s $f18, $f10 -/* 04CB4C 8004BF4C 4632303C */ c.lt.d $f6, $f18 -/* 04CB50 8004BF50 00000000 */ nop -/* 04CB54 8004BF54 45000026 */ bc1f .L8004BFF0 -/* 04CB58 8004BF58 00000000 */ nop -.L8004BF5C: -/* 04CB5C 8004BF5C 8E2E0074 */ lw $t6, 0x74($s1) -/* 04CB60 8004BF60 01186004 */ sllv $t4, $t8, $t0 -/* 04CB64 8004BF64 01CCC825 */ or $t9, $t6, $t4 -/* 04CB68 8004BF68 10000021 */ b .L8004BFF0 -/* 04CB6C 8004BF6C AE390074 */ sw $t9, 0x74($s1) -.L8004BF70: -/* 04CB70 8004BF70 90620070 */ lbu $v0, 0x70($v1) -/* 04CB74 8004BF74 24010002 */ li $at, 2 -/* 04CB78 8004BF78 14410010 */ bne $v0, $at, .L8004BFBC -/* 04CB7C 8004BF7C 28410002 */ slti $at, $v0, 2 -/* 04CB80 8004BF80 C4640074 */ lwc1 $f4, 0x74($v1) -/* 04CB84 8004BF84 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 04CB88 8004BF88 44815800 */ mtc1 $at, $f11 -/* 04CB8C 8004BF8C 44805000 */ mtc1 $zero, $f10 -/* 04CB90 8004BF90 46002221 */ cvt.d.s $f8, $f4 -/* 04CB94 8004BF94 462A403C */ c.lt.d $f8, $f10 -/* 04CB98 8004BF98 240D0001 */ li $t5, 1 -/* 04CB9C 8004BF9C 45000007 */ bc1f .L8004BFBC -/* 04CBA0 8004BFA0 28410002 */ slti $at, $v0, 2 -/* 04CBA4 8004BFA4 8E2F0074 */ lw $t7, 0x74($s1) -/* 04CBA8 8004BFA8 010D5804 */ sllv $t3, $t5, $t0 -/* 04CBAC 8004BFAC 01EBC025 */ or $t8, $t7, $t3 -/* 04CBB0 8004BFB0 1000000F */ b .L8004BFF0 -/* 04CBB4 8004BFB4 AE380074 */ sw $t8, 0x74($s1) -/* 04CBB8 8004BFB8 28410002 */ slti $at, $v0, 2 -.L8004BFBC: -/* 04CBBC 8004BFBC 1020000C */ beqz $at, .L8004BFF0 -/* 04CBC0 8004BFC0 00000000 */ nop -/* 04CBC4 8004BFC4 44803000 */ mtc1 $zero, $f6 -/* 04CBC8 8004BFC8 C4720074 */ lwc1 $f18, 0x74($v1) -/* 04CBCC 8004BFCC 240C0001 */ li $t4, 1 -/* 04CBD0 8004BFD0 4612303C */ c.lt.s $f6, $f18 -/* 04CBD4 8004BFD4 00000000 */ nop -/* 04CBD8 8004BFD8 45000005 */ bc1f .L8004BFF0 -/* 04CBDC 8004BFDC 00000000 */ nop -/* 04CBE0 8004BFE0 8E2E0074 */ lw $t6, 0x74($s1) -/* 04CBE4 8004BFE4 010CC804 */ sllv $t9, $t4, $t0 -/* 04CBE8 8004BFE8 01D96825 */ or $t5, $t6, $t9 -/* 04CBEC 8004BFEC AE2D0074 */ sw $t5, 0x74($s1) -.L8004BFF0: -/* 04CBF0 8004BFF0 3C0F8012 */ lui $t7, %hi(D_8011D55C) # $t7, 0x8012 -/* 04CBF4 8004BFF4 8DEFD55C */ lw $t7, %lo(D_8011D55C)($t7) -/* 04CBF8 8004BFF8 2401FFFF */ li $at, -1 -/* 04CBFC 8004BFFC 15E10002 */ bne $t7, $at, .L8004C008 -/* 04CC00 8004C000 00000000 */ nop -/* 04CC04 8004C004 AE200074 */ sw $zero, 0x74($s1) -.L8004C008: -/* 04CC08 8004C008 820B0201 */ lb $t3, 0x201($s0) -/* 04CC0C 8004C00C 00000000 */ nop -/* 04CC10 8004C010 15600002 */ bnez $t3, .L8004C01C -/* 04CC14 8004C014 00000000 */ nop -/* 04CC18 8004C018 AE200074 */ sw $zero, 0x74($s1) -.L8004C01C: -/* 04CC1C 8004C01C 821801D7 */ lb $t8, 0x1d7($s0) -/* 04CC20 8004C020 8FA500F8 */ lw $a1, 0xf8($sp) -/* 04CC24 8004C024 2B010005 */ slti $at, $t8, 5 -/* 04CC28 8004C028 10200004 */ beqz $at, .L8004C03C -/* 04CC2C 8004C02C 83AC00A1 */ lb $t4, 0xa1($sp) -/* 04CC30 8004C030 0C02BDC5 */ jal func_800AF714 -/* 04CC34 8004C034 02202025 */ move $a0, $s1 -/* 04CC38 8004C038 83AC00A1 */ lb $t4, 0xa1($sp) -.L8004C03C: -/* 04CC3C 8004C03C 02202025 */ move $a0, $s1 -/* 04CC40 8004C040 11800007 */ beqz $t4, .L8004C060 -/* 04CC44 8004C044 02002825 */ move $a1, $s0 -/* 04CC48 8004C048 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 -/* 04CC4C 8004C04C 2442D528 */ addiu $v0, %lo(D_8011D528) # addiu $v0, $v0, -0x2ad8 -/* 04CC50 8004C050 8C4E0000 */ lw $t6, ($v0) -/* 04CC54 8004C054 00000000 */ nop -/* 04CC58 8004C058 35D90010 */ ori $t9, $t6, 0x10 -/* 04CC5C 8004C05C AC590000 */ sw $t9, ($v0) -.L8004C060: -/* 04CC60 8004C060 8FA700FC */ lw $a3, 0xfc($sp) -/* 04CC64 8004C064 0C01602D */ jal func_800580B4 -/* 04CC68 8004C068 24060001 */ li $a2, 1 -/* 04CC6C 8004C06C 83AD005F */ lb $t5, 0x5f($sp) -/* 04CC70 8004C070 02202025 */ move $a0, $s1 -/* 04CC74 8004C074 11A00004 */ beqz $t5, .L8004C088 -/* 04CC78 8004C078 8FBF0034 */ lw $ra, 0x34($sp) -/* 04CC7C 8004C07C 0C008C34 */ jal func_800230D0 -/* 04CC80 8004C080 02002825 */ move $a1, $s0 -/* 04CC84 8004C084 8FBF0034 */ lw $ra, 0x34($sp) -.L8004C088: -/* 04CC88 8004C088 C7B50020 */ lwc1 $f21, 0x20($sp) -/* 04CC8C 8004C08C C7B40024 */ lwc1 $f20, 0x24($sp) -/* 04CC90 8004C090 8FB0002C */ lw $s0, 0x2c($sp) -/* 04CC94 8004C094 8FB10030 */ lw $s1, 0x30($sp) -/* 04CC98 8004C098 03E00008 */ jr $ra -/* 04CC9C 8004C09C 27BD00F8 */ addiu $sp, $sp, 0xf8 - -glabel func_8004C0A0 -/* 04CCA0 8004C0A0 80CE01D7 */ lb $t6, 0x1d7($a2) -/* 04CCA4 8004C0A4 2401000A */ li $at, 10 -/* 04CCA8 8004C0A8 11C10023 */ beq $t6, $at, .L8004C138 -/* 04CCAC 8004C0AC 00803825 */ move $a3, $a0 -/* 04CCB0 8004C0B0 300F00FF */ andi $t7, $zero, 0xff -/* 04CCB4 8004C0B4 15E00020 */ bnez $t7, .L8004C138 -/* 04CCB8 8004C0B8 A0C001F2 */ sb $zero, 0x1f2($a2) -/* 04CCBC 8004C0BC 80C201E1 */ lb $v0, 0x1e1($a2) -/* 04CCC0 8004C0C0 24190028 */ li $t9, 40 -/* 04CCC4 8004C0C4 0002C043 */ sra $t8, $v0, 1 -/* 04CCC8 8004C0C8 03381023 */ subu $v0, $t9, $t8 -/* 04CCCC 8004C0CC 04410002 */ bgez $v0, .L8004C0D8 -/* 04CCD0 8004C0D0 00073080 */ sll $a2, $a3, 2 -/* 04CCD4 8004C0D4 00001025 */ move $v0, $zero -.L8004C0D8: -/* 04CCD8 8004C0D8 2841004A */ slti $at, $v0, 0x4a -/* 04CCDC 8004C0DC 14200002 */ bnez $at, .L8004C0E8 -/* 04CCE0 8004C0E0 00000000 */ nop -/* 04CCE4 8004C0E4 24020049 */ li $v0, 73 -.L8004C0E8: -/* 04CCE8 8004C0E8 84A40018 */ lh $a0, 0x18($a1) -/* 04CCEC 8004C0EC 00000000 */ nop -/* 04CCF0 8004C0F0 00441823 */ subu $v1, $v0, $a0 -/* 04CCF4 8004C0F4 18600006 */ blez $v1, .L8004C110 -/* 04CCF8 8004C0F8 00001025 */ move $v0, $zero -/* 04CCFC 8004C0FC 00C71023 */ subu $v0, $a2, $a3 -/* 04CD00 8004C100 0062082A */ slt $at, $v1, $v0 -/* 04CD04 8004C104 10200002 */ beqz $at, .L8004C110 -/* 04CD08 8004C108 00000000 */ nop -/* 04CD0C 8004C10C 00601025 */ move $v0, $v1 -.L8004C110: -/* 04CD10 8004C110 04610007 */ bgez $v1, .L8004C130 -/* 04CD14 8004C114 00070823 */ negu $at, $a3 -/* 04CD18 8004C118 00013080 */ sll $a2, $at, 2 -/* 04CD1C 8004C11C 00C11023 */ subu $v0, $a2, $at -/* 04CD20 8004C120 0043082A */ slt $at, $v0, $v1 -/* 04CD24 8004C124 10200003 */ beqz $at, .L8004C134 -/* 04CD28 8004C128 00824021 */ addu $t0, $a0, $v0 -/* 04CD2C 8004C12C 00601025 */ move $v0, $v1 -.L8004C130: -/* 04CD30 8004C130 00824021 */ addu $t0, $a0, $v0 -.L8004C134: -/* 04CD34 8004C134 A4A80018 */ sh $t0, 0x18($a1) -.L8004C138: -/* 04CD38 8004C138 03E00008 */ jr $ra -/* 04CD3C 8004C13C 00000000 */ nop - -glabel func_8004C140 -/* 04CD40 8004C140 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 04CD44 8004C144 AFBF001C */ sw $ra, 0x1c($sp) -/* 04CD48 8004C148 AFB00018 */ sw $s0, 0x18($sp) -/* 04CD4C 8004C14C 84AE0000 */ lh $t6, ($a1) -/* 04CD50 8004C150 2401FFFF */ li $at, -1 -/* 04CD54 8004C154 15C10003 */ bne $t6, $at, .L8004C164 -/* 04CD58 8004C158 00A08025 */ move $s0, $a1 -/* 04CD5C 8004C15C 10000003 */ b .L8004C16C -/* 04CD60 8004C160 00001825 */ move $v1, $zero -.L8004C164: -/* 04CD64 8004C164 82030185 */ lb $v1, 0x185($s0) -/* 04CD68 8004C168 00000000 */ nop -.L8004C16C: -/* 04CD6C 8004C16C 82020187 */ lb $v0, 0x187($s0) -/* 04CD70 8004C170 00000000 */ nop -/* 04CD74 8004C174 10400005 */ beqz $v0, .L8004C18C -/* 04CD78 8004C178 00000000 */ nop -/* 04CD7C 8004C17C 860F018E */ lh $t7, 0x18e($s0) -/* 04CD80 8004C180 24010004 */ li $at, 4 -/* 04CD84 8004C184 19E00003 */ blez $t7, .L8004C194 -/* 04CD88 8004C188 00000000 */ nop -.L8004C18C: -/* 04CD8C 8004C18C 10000044 */ b .L8004C2A0 -/* 04CD90 8004C190 A2000187 */ sb $zero, 0x187($s0) -.L8004C194: -/* 04CD94 8004C194 10410008 */ beq $v0, $at, .L8004C1B8 -/* 04CD98 8004C198 02002825 */ move $a1, $s0 -/* 04CD9C 8004C19C 24060002 */ li $a2, 2 -/* 04CDA0 8004C1A0 A3A30027 */ sb $v1, 0x27($sp) -/* 04CDA4 8004C1A4 0C015DB8 */ jal func_800576E0 -/* 04CDA8 8004C1A8 AFA40028 */ sw $a0, 0x28($sp) -/* 04CDAC 8004C1AC 83A30027 */ lb $v1, 0x27($sp) -/* 04CDB0 8004C1B0 8FA40028 */ lw $a0, 0x28($sp) -/* 04CDB4 8004C1B4 00000000 */ nop -.L8004C1B8: -/* 04CDB8 8004C1B8 921901C9 */ lbu $t9, 0x1c9($s0) -/* 04CDBC 8004C1BC 24180168 */ li $t8, 360 -/* 04CDC0 8004C1C0 24010008 */ li $at, 8 -/* 04CDC4 8004C1C4 17210002 */ bne $t9, $at, .L8004C1D0 -/* 04CDC8 8004C1C8 A618018C */ sh $t8, 0x18c($s0) -/* 04CDCC 8004C1CC A20001C9 */ sb $zero, 0x1c9($s0) -.L8004C1D0: -/* 04CDD0 8004C1D0 820801D6 */ lb $t0, 0x1d6($s0) -/* 04CDD4 8004C1D4 240501C2 */ li $a1, 450 -/* 04CDD8 8004C1D8 29010005 */ slti $at, $t0, 5 -/* 04CDDC 8004C1DC 10200030 */ beqz $at, .L8004C2A0 -/* 04CDE0 8004C1E0 24060008 */ li $a2, 8 -/* 04CDE4 8004C1E4 24070081 */ li $a3, 129 -/* 04CDE8 8004C1E8 A3A30027 */ sb $v1, 0x27($sp) -/* 04CDEC 8004C1EC 0C015C2E */ jal func_800570B8 -/* 04CDF0 8004C1F0 AFA40028 */ sw $a0, 0x28($sp) -/* 04CDF4 8004C1F4 82020187 */ lb $v0, 0x187($s0) -/* 04CDF8 8004C1F8 83A30027 */ lb $v1, 0x27($sp) -/* 04CDFC 8004C1FC 8FA40028 */ lw $a0, 0x28($sp) -/* 04CE00 8004C200 24010001 */ li $at, 1 -/* 04CE04 8004C204 10410009 */ beq $v0, $at, .L8004C22C -/* 04CE08 8004C208 24010002 */ li $at, 2 -/* 04CE0C 8004C20C 10410007 */ beq $v0, $at, .L8004C22C -/* 04CE10 8004C210 24010003 */ li $at, 3 -/* 04CE14 8004C214 1041000C */ beq $v0, $at, .L8004C248 -/* 04CE18 8004C218 24010006 */ li $at, 6 -/* 04CE1C 8004C21C 10410011 */ beq $v0, $at, .L8004C264 -/* 04CE20 8004C220 240D0078 */ li $t5, 120 -/* 04CE24 8004C224 1000001E */ b .L8004C2A0 -/* 04CE28 8004C228 A2000187 */ sb $zero, 0x187($s0) -.L8004C22C: -/* 04CE2C 8004C22C 10600004 */ beqz $v1, .L8004C240 -/* 04CE30 8004C230 240A003C */ li $t2, 60 -/* 04CE34 8004C234 24090028 */ li $t1, 40 -/* 04CE38 8004C238 10000018 */ b .L8004C29C -/* 04CE3C 8004C23C A20901DB */ sb $t1, 0x1db($s0) -.L8004C240: -/* 04CE40 8004C240 10000016 */ b .L8004C29C -/* 04CE44 8004C244 A20A01DB */ sb $t2, 0x1db($s0) -.L8004C248: -/* 04CE48 8004C248 10600004 */ beqz $v1, .L8004C25C -/* 04CE4C 8004C24C 240C003C */ li $t4, 60 -/* 04CE50 8004C250 240B0028 */ li $t3, 40 -/* 04CE54 8004C254 10000011 */ b .L8004C29C -/* 04CE58 8004C258 A20B01DB */ sb $t3, 0x1db($s0) -.L8004C25C: -/* 04CE5C 8004C25C 1000000F */ b .L8004C29C -/* 04CE60 8004C260 A20C01DB */ sb $t4, 0x1db($s0) -.L8004C264: -/* 04CE64 8004C264 3C01800E */ lui $at, %hi(D_800E6554) # $at, 0x800e -/* 04CE68 8004C268 C4216550 */ lwc1 $f1, %lo(D_800E6550)($at) -/* 04CE6C 8004C26C C4206554 */ lwc1 $f0, %lo(D_800E6554)($at) -/* 04CE70 8004C270 A60D0204 */ sh $t5, 0x204($s0) -/* 04CE74 8004C274 C484001C */ lwc1 $f4, 0x1c($a0) -/* 04CE78 8004C278 C4900024 */ lwc1 $f16, 0x24($a0) -/* 04CE7C 8004C27C 460021A1 */ cvt.d.s $f6, $f4 -/* 04CE80 8004C280 46203202 */ mul.d $f8, $f6, $f0 -/* 04CE84 8004C284 460084A1 */ cvt.d.s $f18, $f16 -/* 04CE88 8004C288 46209102 */ mul.d $f4, $f18, $f0 -/* 04CE8C 8004C28C 462042A0 */ cvt.s.d $f10, $f8 -/* 04CE90 8004C290 E48A001C */ swc1 $f10, 0x1c($a0) -/* 04CE94 8004C294 462021A0 */ cvt.s.d $f6, $f4 -/* 04CE98 8004C298 E4860024 */ swc1 $f6, 0x24($a0) -.L8004C29C: -/* 04CE9C 8004C29C A2000187 */ sb $zero, 0x187($s0) -.L8004C2A0: -/* 04CEA0 8004C2A0 8FBF001C */ lw $ra, 0x1c($sp) -/* 04CEA4 8004C2A4 8FB00018 */ lw $s0, 0x18($sp) -/* 04CEA8 8004C2A8 03E00008 */ jr $ra -/* 04CEAC 8004C2AC 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_8004C2B0 -/* 04CEB0 8004C2B0 3C014348 */ li $at, 0x43480000 # 200.000000 -/* 04CEB4 8004C2B4 44810000 */ mtc1 $at, $f0 -/* 04CEB8 8004C2B8 3C0142F0 */ li $at, 0x42F00000 # 120.000000 -/* 04CEBC 8004C2BC 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 04CEC0 8004C2C0 44817000 */ mtc1 $at, $f14 -/* 04CEC4 8004C2C4 3C014234 */ li $at, 0x42340000 # 45.000000 -/* 04CEC8 8004C2C8 44819000 */ mtc1 $at, $f18 -/* 04CECC 8004C2CC AFBF0014 */ sw $ra, 0x14($sp) -/* 04CED0 8004C2D0 E7AC0050 */ swc1 $f12, 0x50($sp) -/* 04CED4 8004C2D4 AFA50054 */ sw $a1, 0x54($sp) -/* 04CED8 8004C2D8 3C018012 */ lui $at, %hi(D_8011D4F0) # $at, 0x8012 -/* 04CEDC 8004C2DC C424D4F0 */ lwc1 $f4, %lo(D_8011D4F0)($at) -/* 04CEE0 8004C2E0 C4A60010 */ lwc1 $f6, 0x10($a1) -/* 04CEE4 8004C2E4 44801000 */ mtc1 $zero, $f2 -/* 04CEE8 8004C2E8 46062401 */ sub.s $f16, $f4, $f6 -/* 04CEEC 8004C2EC 00C03825 */ move $a3, $a2 -/* 04CEF0 8004C2F0 46100401 */ sub.s $f16, $f0, $f16 -/* 04CEF4 8004C2F4 4602803C */ c.lt.s $f16, $f2 -/* 04CEF8 8004C2F8 00000000 */ nop -/* 04CEFC 8004C2FC 45000002 */ bc1f .L8004C308 -/* 04CF00 8004C300 00000000 */ nop -/* 04CF04 8004C304 46001406 */ mov.s $f16, $f2 -.L8004C308: -/* 04CF08 8004C308 4610003C */ c.lt.s $f0, $f16 -/* 04CF0C 8004C30C 00000000 */ nop -/* 04CF10 8004C310 45000002 */ bc1f .L8004C31C -/* 04CF14 8004C314 00000000 */ nop -/* 04CF18 8004C318 46000406 */ mov.s $f16, $f0 -.L8004C31C: -/* 04CF1C 8004C31C AFA70058 */ sw $a3, 0x58($sp) -/* 04CF20 8004C320 E7AE0034 */ swc1 $f14, 0x34($sp) -/* 04CF24 8004C324 E7B00020 */ swc1 $f16, 0x20($sp) -/* 04CF28 8004C328 0C019884 */ jal func_80066210 -/* 04CF2C 8004C32C E7B20030 */ swc1 $f18, 0x30($sp) -/* 04CF30 8004C330 8FA70058 */ lw $a3, 0x58($sp) -/* 04CF34 8004C334 C7AE0034 */ lwc1 $f14, 0x34($sp) -/* 04CF38 8004C338 C7B00020 */ lwc1 $f16, 0x20($sp) -/* 04CF3C 8004C33C C7B20030 */ lwc1 $f18, 0x30($sp) -/* 04CF40 8004C340 24010001 */ li $at, 1 -/* 04CF44 8004C344 14410007 */ bne $v0, $at, .L8004C364 -/* 04CF48 8004C348 3C0F8012 */ lui $t7, %hi(D_8011D528) # $t7, 0x8012 -/* 04CF4C 8004C34C 3C014334 */ li $at, 0x43340000 # 180.000000 -/* 04CF50 8004C350 44817000 */ mtc1 $at, $f14 -/* 04CF54 8004C354 3C014248 */ li $at, 0x42480000 # 50.000000 -/* 04CF58 8004C358 44819000 */ mtc1 $at, $f18 -/* 04CF5C 8004C35C 10000008 */ b .L8004C380 -/* 04CF60 8004C360 00000000 */ nop -.L8004C364: -/* 04CF64 8004C364 28410002 */ slti $at, $v0, 2 -/* 04CF68 8004C368 14200005 */ bnez $at, .L8004C380 -/* 04CF6C 8004C36C 3C0142DC */ li $at, 0x42DC0000 # 110.000000 -/* 04CF70 8004C370 44817000 */ mtc1 $at, $f14 -/* 04CF74 8004C374 3C014228 */ li $at, 0x42280000 # 42.000000 -/* 04CF78 8004C378 44819000 */ mtc1 $at, $f18 -/* 04CF7C 8004C37C 00000000 */ nop -.L8004C380: -/* 04CF80 8004C380 8DEFD528 */ lw $t7, %lo(D_8011D528)($t7) -/* 04CF84 8004C384 00000000 */ nop -/* 04CF88 8004C388 31F80010 */ andi $t8, $t7, 0x10 -/* 04CF8C 8004C38C 13000006 */ beqz $t8, .L8004C3A8 -/* 04CF90 8004C390 00000000 */ nop -/* 04CF94 8004C394 80F901E2 */ lb $t9, 0x1e2($a3) -/* 04CF98 8004C398 00000000 */ nop -/* 04CF9C 8004C39C 2B210003 */ slti $at, $t9, 3 -/* 04CFA0 8004C3A0 10200059 */ beqz $at, .L8004C508 -/* 04CFA4 8004C3A4 00000000 */ nop -.L8004C3A8: -/* 04CFA8 8004C3A8 90EA01F5 */ lbu $t2, 0x1f5($a3) -/* 04CFAC 8004C3AC 34018000 */ li $at, 32768 -/* 04CFB0 8004C3B0 15400055 */ bnez $t2, .L8004C508 -/* 04CFB4 8004C3B4 00000000 */ nop -/* 04CFB8 8004C3B8 84EB01A0 */ lh $t3, 0x1a0($a3) -/* 04CFBC 8004C3BC 84ED0196 */ lh $t5, 0x196($a3) -/* 04CFC0 8004C3C0 000B6023 */ negu $t4, $t3 -/* 04CFC4 8004C3C4 31AEFFFF */ andi $t6, $t5, 0xffff -/* 04CFC8 8004C3C8 018E2023 */ subu $a0, $t4, $t6 -/* 04CFCC 8004C3CC 00812021 */ addu $a0, $a0, $at -/* 04CFD0 8004C3D0 34018001 */ li $at, 32769 -/* 04CFD4 8004C3D4 0081082A */ slt $at, $a0, $at -/* 04CFD8 8004C3D8 14200003 */ bnez $at, .L8004C3E8 -/* 04CFDC 8004C3DC 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 04CFE0 8004C3E0 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 04CFE4 8004C3E4 00812021 */ addu $a0, $a0, $at -.L8004C3E8: -/* 04CFE8 8004C3E8 28818000 */ slti $at, $a0, -0x8000 -/* 04CFEC 8004C3EC 10200002 */ beqz $at, .L8004C3F8 -/* 04CFF0 8004C3F0 3401FFFF */ li $at, 65535 -/* 04CFF4 8004C3F4 00812021 */ addu $a0, $a0, $at -.L8004C3F8: -/* 04CFF8 8004C3F8 3C01800E */ lui $at, %hi(D_800E655C) # $at, 0x800e -/* 04CFFC 8004C3FC C4E80094 */ lwc1 $f8, 0x94($a3) -/* 04D000 8004C400 C42B6558 */ lwc1 $f11, %lo(D_800E6558)($at) -/* 04D004 8004C404 C42A655C */ lwc1 $f10, %lo(D_800E655C)($at) -/* 04D008 8004C408 46004021 */ cvt.d.s $f0, $f8 -/* 04D00C 8004C40C 462A003C */ c.lt.d $f0, $f10 -/* 04D010 8004C410 3C01800E */ lui $at, 0x800e -/* 04D014 8004C414 45000009 */ bc1f .L8004C43C -/* 04D018 8004C418 00000000 */ nop -/* 04D01C 8004C41C 3C01800E */ lui $at, %hi(D_800E6568) # $at, 0x800e -/* 04D020 8004C420 C4256560 */ lwc1 $f5, %lo(D_800E6560)($at) -/* 04D024 8004C424 C4246564 */ lwc1 $f4, %lo(D_800E6564)($at) -/* 04D028 8004C428 00000000 */ nop -/* 04D02C 8004C42C 46240180 */ add.d $f6, $f0, $f4 -/* 04D030 8004C430 46203220 */ cvt.s.d $f8, $f6 -/* 04D034 8004C434 10000004 */ b .L8004C448 -/* 04D038 8004C438 E4E80094 */ swc1 $f8, 0x94($a3) -.L8004C43C: -/* 04D03C 8004C43C C42A6568 */ lwc1 $f10, %lo(D_800E6568)($at) -/* 04D040 8004C440 00000000 */ nop -/* 04D044 8004C444 E4EA0094 */ swc1 $f10, 0x94($a3) -.L8004C448: -/* 04D048 8004C448 44842000 */ mtc1 $a0, $f4 -/* 04D04C 8004C44C C4E80094 */ lwc1 $f8, 0x94($a3) -/* 04D050 8004C450 468021A0 */ cvt.s.w $f6, $f4 -/* 04D054 8004C454 46083282 */ mul.s $f10, $f6, $f8 -/* 04D058 8004C458 444FF800 */ cfc1 $t7, $31 -/* 04D05C 8004C45C 00000000 */ nop -/* 04D060 8004C460 35E10003 */ ori $at, $t7, 3 -/* 04D064 8004C464 38210002 */ xori $at, $at, 2 -/* 04D068 8004C468 44C1F800 */ ctc1 $at, $31 -/* 04D06C 8004C46C 00000000 */ nop -/* 04D070 8004C470 46005124 */ cvt.w.s $f4, $f10 -/* 04D074 8004C474 44032000 */ mfc1 $v1, $f4 -/* 04D078 8004C478 44CFF800 */ ctc1 $t7, $31 -/* 04D07C 8004C47C 28610201 */ slti $at, $v1, 0x201 -/* 04D080 8004C480 14200003 */ bnez $at, .L8004C490 -/* 04D084 8004C484 2861FE00 */ slti $at, $v1, -0x200 -/* 04D088 8004C488 24030200 */ li $v1, 512 -/* 04D08C 8004C48C 2861FE00 */ slti $at, $v1, -0x200 -.L8004C490: -/* 04D090 8004C490 10200002 */ beqz $at, .L8004C49C -/* 04D094 8004C494 00000000 */ nop -/* 04D098 8004C498 2403FE00 */ li $v1, -512 -.L8004C49C: -/* 04D09C 8004C49C 4458F800 */ cfc1 $t8, $31 -/* 04D0A0 8004C4A0 C7A60050 */ lwc1 $f6, 0x50($sp) -/* 04D0A4 8004C4A4 37010003 */ ori $at, $t8, 3 -/* 04D0A8 8004C4A8 38210002 */ xori $at, $at, 2 -/* 04D0AC 8004C4AC 44C1F800 */ ctc1 $at, $31 -/* 04D0B0 8004C4B0 00000000 */ nop -/* 04D0B4 8004C4B4 46003224 */ cvt.w.s $f8, $f6 -/* 04D0B8 8004C4B8 44094000 */ mfc1 $t1, $f8 -/* 04D0BC 8004C4BC 44D8F800 */ ctc1 $t8, $31 -/* 04D0C0 8004C4C0 00690019 */ multu $v1, $t1 -/* 04D0C4 8004C4C4 00001812 */ mflo $v1 -/* 04D0C8 8004C4C8 0064082A */ slt $at, $v1, $a0 -/* 04D0CC 8004C4CC 04810004 */ bgez $a0, .L8004C4E0 -/* 04D0D0 8004C4D0 00000000 */ nop -/* 04D0D4 8004C4D4 10200002 */ beqz $at, .L8004C4E0 -/* 04D0D8 8004C4D8 00000000 */ nop -/* 04D0DC 8004C4DC 00801825 */ move $v1, $a0 -.L8004C4E0: -/* 04D0E0 8004C4E0 18800004 */ blez $a0, .L8004C4F4 -/* 04D0E4 8004C4E4 0083082A */ slt $at, $a0, $v1 -/* 04D0E8 8004C4E8 10200002 */ beqz $at, .L8004C4F4 -/* 04D0EC 8004C4EC 00000000 */ nop -/* 04D0F0 8004C4F0 00801825 */ move $v1, $a0 -.L8004C4F4: -/* 04D0F4 8004C4F4 84F90196 */ lh $t9, 0x196($a3) -/* 04D0F8 8004C4F8 00000000 */ nop -/* 04D0FC 8004C4FC 03235021 */ addu $t2, $t9, $v1 -/* 04D100 8004C500 1000000D */ b .L8004C538 -/* 04D104 8004C504 A4EA0196 */ sh $t2, 0x196($a3) -.L8004C508: -/* 04D108 8004C508 444BF800 */ cfc1 $t3, $31 -/* 04D10C 8004C50C 44805000 */ mtc1 $zero, $f10 -/* 04D110 8004C510 35610003 */ ori $at, $t3, 3 -/* 04D114 8004C514 38210002 */ xori $at, $at, 2 -/* 04D118 8004C518 E4EA0094 */ swc1 $f10, 0x94($a3) -/* 04D11C 8004C51C C7A40050 */ lwc1 $f4, 0x50($sp) -/* 04D120 8004C520 44C1F800 */ ctc1 $at, $31 -/* 04D124 8004C524 00000000 */ nop -/* 04D128 8004C528 460021A4 */ cvt.w.s $f6, $f4 -/* 04D12C 8004C52C 44CBF800 */ ctc1 $t3, $31 -/* 04D130 8004C530 44093000 */ mfc1 $t1, $f6 -/* 04D134 8004C534 00000000 */ nop -.L8004C538: -/* 04D138 8004C538 3C0D8012 */ lui $t5, %hi(D_8011D586) # $t5, 0x8012 -/* 04D13C 8004C53C 85ADD586 */ lh $t5, %lo(D_8011D586)($t5) -/* 04D140 8004C540 00000000 */ nop -/* 04D144 8004C544 11A00005 */ beqz $t5, .L8004C55C -/* 04D148 8004C548 00000000 */ nop -/* 04D14C 8004C54C 84EC01A0 */ lh $t4, 0x1a0($a3) -/* 04D150 8004C550 340E8000 */ li $t6, 32768 -/* 04D154 8004C554 01CC7823 */ subu $t7, $t6, $t4 -/* 04D158 8004C558 A4EF0196 */ sh $t7, 0x196($a3) -.L8004C55C: -/* 04D15C 8004C55C 80E301E0 */ lb $v1, 0x1e0($a3) -/* 04D160 8004C560 24010002 */ li $at, 2 -/* 04D164 8004C564 10610003 */ beq $v1, $at, .L8004C574 -/* 04D168 8004C568 2401FFFE */ li $at, -2 -/* 04D16C 8004C56C 14610004 */ bne $v1, $at, .L8004C580 -/* 04D170 8004C570 8FB80054 */ lw $t8, 0x54($sp) -.L8004C574: -/* 04D174 8004C574 1000000D */ b .L8004C5AC -/* 04D178 8004C578 00002025 */ move $a0, $zero -/* 04D17C 8004C57C 8FB80054 */ lw $t8, 0x54($sp) -.L8004C580: -/* 04D180 8004C580 00000000 */ nop -/* 04D184 8004C584 87040002 */ lh $a0, 2($t8) -/* 04D188 8004C588 00000000 */ nop -/* 04D18C 8004C58C 28813001 */ slti $at, $a0, 0x3001 -/* 04D190 8004C590 14200003 */ bnez $at, .L8004C5A0 -/* 04D194 8004C594 2881D000 */ slti $at, $a0, -0x3000 -/* 04D198 8004C598 24043000 */ li $a0, 12288 -/* 04D19C 8004C59C 2881D000 */ slti $at, $a0, -0x3000 -.L8004C5A0: -/* 04D1A0 8004C5A0 10200003 */ beqz $at, .L8004C5B0 -/* 04D1A4 8004C5A4 3C014120 */ lui $at, 0x4120 -/* 04D1A8 8004C5A8 2404D000 */ li $a0, -12288 -.L8004C5AC: -/* 04D1AC 8004C5AC 3C014120 */ li $at, 0x41200000 # 10.000000 -.L8004C5B0: -/* 04D1B0 8004C5B0 44816000 */ mtc1 $at, $f12 -/* 04D1B4 8004C5B4 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 -/* 04D1B8 8004C5B8 460C8202 */ mul.s $f8, $f16, $f12 -/* 04D1BC 8004C5BC 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 -/* 04D1C0 8004C5C0 8D050000 */ lw $a1, ($t0) -/* 04D1C4 8004C5C4 4459F800 */ cfc1 $t9, $31 -/* 04D1C8 8004C5C8 84A60002 */ lh $a2, 2($a1) -/* 04D1CC 8004C5CC 37210003 */ ori $at, $t9, 3 -/* 04D1D0 8004C5D0 38210002 */ xori $at, $at, 2 -/* 04D1D4 8004C5D4 44C1F800 */ ctc1 $at, $31 -/* 04D1D8 8004C5D8 30CBFFFF */ andi $t3, $a2, 0xffff -/* 04D1DC 8004C5DC 460042A4 */ cvt.w.s $f10, $f8 -/* 04D1E0 8004C5E0 34018001 */ li $at, 32769 -/* 04D1E4 8004C5E4 440A5000 */ mfc1 $t2, $f10 -/* 04D1E8 8004C5E8 44D9F800 */ ctc1 $t9, $31 -/* 04D1EC 8004C5EC 008A2023 */ subu $a0, $a0, $t2 -/* 04D1F0 8004C5F0 00042023 */ negu $a0, $a0 -/* 04D1F4 8004C5F4 008B1823 */ subu $v1, $a0, $t3 -/* 04D1F8 8004C5F8 0061082A */ slt $at, $v1, $at -/* 04D1FC 8004C5FC 14200004 */ bnez $at, .L8004C610 -/* 04D200 8004C600 3C198012 */ lui $t9, %hi(D_8011D540) # $t9, 0x8012 -/* 04D204 8004C604 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 04D208 8004C608 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 04D20C 8004C60C 00611821 */ addu $v1, $v1, $at -.L8004C610: -/* 04D210 8004C610 28618000 */ slti $at, $v1, -0x8000 -/* 04D214 8004C614 10200002 */ beqz $at, .L8004C620 -/* 04D218 8004C618 3401FFFF */ li $at, 65535 -/* 04D21C 8004C61C 00611821 */ addu $v1, $v1, $at -.L8004C620: -/* 04D220 8004C620 00690019 */ multu $v1, $t1 -/* 04D224 8004C624 24010001 */ li $at, 1 -/* 04D228 8004C628 00006812 */ mflo $t5 -/* 04D22C 8004C62C 000D7103 */ sra $t6, $t5, 4 -/* 04D230 8004C630 00CE6021 */ addu $t4, $a2, $t6 -/* 04D234 8004C634 A4AC0002 */ sh $t4, 2($a1) -/* 04D238 8004C638 8D0F0000 */ lw $t7, ($t0) -/* 04D23C 8004C63C C4E200B8 */ lwc1 $f2, 0xb8($a3) -/* 04D240 8004C640 91E4003B */ lbu $a0, 0x3b($t7) -/* 04D244 8004C644 C4E00008 */ lwc1 $f0, 8($a3) -/* 04D248 8004C648 10810007 */ beq $a0, $at, .L8004C668 -/* 04D24C 8004C64C 24010002 */ li $at, 2 -/* 04D250 8004C650 10810009 */ beq $a0, $at, .L8004C678 -/* 04D254 8004C654 24010003 */ li $at, 3 -/* 04D258 8004C658 1081000D */ beq $a0, $at, .L8004C690 -/* 04D25C 8004C65C 3C014254 */ lui $at, 0x4254 -/* 04D260 8004C660 10000018 */ b .L8004C6C4 -/* 04D264 8004C664 28410002 */ slti $at, $v0, 2 -.L8004C668: -/* 04D268 8004C668 3C01420C */ li $at, 0x420C0000 # 35.000000 -/* 04D26C 8004C66C 44812000 */ mtc1 $at, $f4 -/* 04D270 8004C670 10000013 */ b .L8004C6C0 -/* 04D274 8004C674 46047380 */ add.s $f14, $f14, $f4 -.L8004C678: -/* 04D278 8004C678 3C01420C */ li $at, 0x420C0000 # 35.000000 -/* 04D27C 8004C67C 44813000 */ mtc1 $at, $f6 -/* 04D280 8004C680 460C9481 */ sub.s $f18, $f18, $f12 -/* 04D284 8004C684 1000000E */ b .L8004C6C0 -/* 04D288 8004C688 46067381 */ sub.s $f14, $f14, $f6 -/* 04D28C 8004C68C 3C014254 */ li $at, 0x42540000 # 53.000000 -.L8004C690: -/* 04D290 8004C690 44814000 */ mtc1 $at, $f8 -/* 04D294 8004C694 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 04D298 8004C698 44815000 */ mtc1 $at, $f10 -/* 04D29C 8004C69C 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 04D2A0 8004C6A0 44813800 */ mtc1 $at, $f7 -/* 04D2A4 8004C6A4 44803000 */ mtc1 $zero, $f6 -/* 04D2A8 8004C6A8 46000121 */ cvt.d.s $f4, $f0 -/* 04D2AC 8004C6AC 46087381 */ sub.s $f14, $f14, $f8 -/* 04D2B0 8004C6B0 44801000 */ mtc1 $zero, $f2 -/* 04D2B4 8004C6B4 46262202 */ mul.d $f8, $f4, $f6 -/* 04D2B8 8004C6B8 460A9481 */ sub.s $f18, $f18, $f10 -/* 04D2BC 8004C6BC 46204020 */ cvt.s.d $f0, $f8 -.L8004C6C0: -/* 04D2C0 8004C6C0 28410002 */ slti $at, $v0, 2 -.L8004C6C4: -/* 04D2C4 8004C6C4 10200006 */ beqz $at, .L8004C6E0 -/* 04D2C8 8004C6C8 3C014270 */ li $at, 0x42700000 # 60.000000 -/* 04D2CC 8004C6CC 44815000 */ mtc1 $at, $f10 -/* 04D2D0 8004C6D0 00000000 */ nop -/* 04D2D4 8004C6D4 460A0102 */ mul.s $f4, $f0, $f10 -/* 04D2D8 8004C6D8 10000006 */ b .L8004C6F4 -/* 04D2DC 8004C6DC 46047380 */ add.s $f14, $f14, $f4 -.L8004C6E0: -/* 04D2E0 8004C6E0 3C0141F0 */ li $at, 0x41F00000 # 30.000000 -/* 04D2E4 8004C6E4 44813000 */ mtc1 $at, $f6 -/* 04D2E8 8004C6E8 00000000 */ nop -/* 04D2EC 8004C6EC 46060202 */ mul.s $f8, $f0, $f6 -/* 04D2F0 8004C6F0 46087380 */ add.s $f14, $f14, $f8 -.L8004C6F4: -/* 04D2F4 8004C6F4 C4E0002C */ lwc1 $f0, 0x2c($a3) -/* 04D2F8 8004C6F8 44802800 */ mtc1 $zero, $f5 -/* 04D2FC 8004C6FC 44802000 */ mtc1 $zero, $f4 -/* 04D300 8004C700 460002A1 */ cvt.d.s $f10, $f0 -/* 04D304 8004C704 4624503C */ c.lt.d $f10, $f4 -/* 04D308 8004C708 00000000 */ nop -/* 04D30C 8004C70C 45000016 */ bc1f .L8004C768 -/* 04D310 8004C710 00000000 */ nop -/* 04D314 8004C714 80F801E2 */ lb $t8, 0x1e2($a3) -/* 04D318 8004C718 00000000 */ nop -/* 04D31C 8004C71C 17000012 */ bnez $t8, .L8004C768 -/* 04D320 8004C720 00000000 */ nop -/* 04D324 8004C724 46020182 */ mul.s $f6, $f0, $f2 -/* 04D328 8004C728 3C0140C0 */ li $at, 0x40C00000 # 6.000000 -/* 04D32C 8004C72C 44815000 */ mtc1 $at, $f10 -/* 04D330 8004C730 3C01800E */ lui $at, %hi(D_800E6574) # $at, 0x800e -/* 04D334 8004C734 46003207 */ neg.s $f8, $f6 -/* 04D338 8004C738 460A4402 */ mul.s $f16, $f8, $f10 -/* 04D33C 8004C73C C4256570 */ lwc1 $f5, %lo(D_800E6570)($at) -/* 04D340 8004C740 C4246574 */ lwc1 $f4, %lo(D_800E6574)($at) -/* 04D344 8004C744 3C014282 */ li $at, 0x42820000 # 65.000000 -/* 04D348 8004C748 460081A1 */ cvt.d.s $f6, $f16 -/* 04D34C 8004C74C 4626203C */ c.lt.d $f4, $f6 -/* 04D350 8004C750 00000000 */ nop -/* 04D354 8004C754 45000003 */ bc1f .L8004C764 -/* 04D358 8004C758 00000000 */ nop -/* 04D35C 8004C75C 44818000 */ mtc1 $at, $f16 -/* 04D360 8004C760 00000000 */ nop -.L8004C764: -/* 04D364 8004C764 46107381 */ sub.s $f14, $f14, $f16 -.L8004C768: -/* 04D368 8004C768 8F39D540 */ lw $t9, %lo(D_8011D540)($t9) -/* 04D36C 8004C76C 00000000 */ nop -/* 04D370 8004C770 17200015 */ bnez $t9, .L8004C7C8 -/* 04D374 8004C774 24040024 */ li $a0, 36 -/* 04D378 8004C778 AFA70058 */ sw $a3, 0x58($sp) -/* 04D37C 8004C77C E7AE0034 */ swc1 $f14, 0x34($sp) -/* 04D380 8004C780 0C00322D */ jal func_8000C8B4 -/* 04D384 8004C784 E7B20030 */ swc1 $f18, 0x30($sp) -/* 04D388 8004C788 8FA70058 */ lw $a3, 0x58($sp) -/* 04D38C 8004C78C 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 -/* 04D390 8004C790 80E301D3 */ lb $v1, 0x1d3($a3) -/* 04D394 8004C794 C7AE0034 */ lwc1 $f14, 0x34($sp) -/* 04D398 8004C798 C7B20030 */ lwc1 $f18, 0x30($sp) -/* 04D39C 8004C79C 0043082A */ slt $at, $v0, $v1 -/* 04D3A0 8004C7A0 10200005 */ beqz $at, .L8004C7B8 -/* 04D3A4 8004C7A4 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 -/* 04D3A8 8004C7A8 3C01C1F0 */ li $at, 0xC1F00000 # -30.000000 -/* 04D3AC 8004C7AC 44817000 */ mtc1 $at, $f14 -/* 04D3B0 8004C7B0 10000005 */ b .L8004C7C8 -/* 04D3B4 8004C7B4 00000000 */ nop -.L8004C7B8: -/* 04D3B8 8004C7B8 18600003 */ blez $v1, .L8004C7C8 -/* 04D3BC 8004C7BC 3C014334 */ li $at, 0x43340000 # 180.000000 -/* 04D3C0 8004C7C0 44817000 */ mtc1 $at, $f14 -/* 04D3C4 8004C7C4 00000000 */ nop -.L8004C7C8: -/* 04D3C8 8004C7C8 3C0A8012 */ lui $t2, %hi(D_8011D540) # $t2, 0x8012 -/* 04D3CC 8004C7CC 8D4AD540 */ lw $t2, %lo(D_8011D540)($t2) -/* 04D3D0 8004C7D0 8D050000 */ lw $a1, ($t0) -/* 04D3D4 8004C7D4 29410051 */ slti $at, $t2, 0x51 -/* 04D3D8 8004C7D8 14200007 */ bnez $at, .L8004C7F8 -/* 04D3DC 8004C7DC 00000000 */ nop -/* 04D3E0 8004C7E0 E4AE001C */ swc1 $f14, 0x1c($a1) -/* 04D3E4 8004C7E4 8D0B0000 */ lw $t3, ($t0) -/* 04D3E8 8004C7E8 00000000 */ nop -/* 04D3EC 8004C7EC E5720020 */ swc1 $f18, 0x20($t3) -/* 04D3F0 8004C7F0 8D050000 */ lw $a1, ($t0) -/* 04D3F4 8004C7F4 00000000 */ nop -.L8004C7F8: -/* 04D3F8 8004C7F8 C4A2001C */ lwc1 $f2, 0x1c($a1) -/* 04D3FC 8004C7FC 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 04D400 8004C800 46027281 */ sub.s $f10, $f14, $f2 -/* 04D404 8004C804 44810800 */ mtc1 $at, $f1 -/* 04D408 8004C808 44800000 */ mtc1 $zero, $f0 -/* 04D40C 8004C80C 46005121 */ cvt.d.s $f4, $f10 -/* 04D410 8004C810 46202182 */ mul.d $f6, $f4, $f0 -/* 04D414 8004C814 46001221 */ cvt.d.s $f8, $f2 -/* 04D418 8004C818 46264280 */ add.d $f10, $f8, $f6 -/* 04D41C 8004C81C 46205120 */ cvt.s.d $f4, $f10 -/* 04D420 8004C820 E4A4001C */ swc1 $f4, 0x1c($a1) -/* 04D424 8004C824 8D050000 */ lw $a1, ($t0) -/* 04D428 8004C828 00000000 */ nop -/* 04D42C 8004C82C C4AC0020 */ lwc1 $f12, 0x20($a1) -/* 04D430 8004C830 00000000 */ nop -/* 04D434 8004C834 460C9181 */ sub.s $f6, $f18, $f12 -/* 04D438 8004C838 460032A1 */ cvt.d.s $f10, $f6 -/* 04D43C 8004C83C 46205102 */ mul.d $f4, $f10, $f0 -/* 04D440 8004C840 46006221 */ cvt.d.s $f8, $f12 -/* 04D444 8004C844 46244180 */ add.d $f6, $f8, $f4 -/* 04D448 8004C848 462032A0 */ cvt.s.d $f10, $f6 -/* 04D44C 8004C84C E4AA0020 */ swc1 $f10, 0x20($a1) -/* 04D450 8004C850 8D0D0000 */ lw $t5, ($t0) -/* 04D454 8004C854 00000000 */ nop -/* 04D458 8004C858 85A40002 */ lh $a0, 2($t5) -/* 04D45C 8004C85C AFA70058 */ sw $a3, 0x58($sp) -/* 04D460 8004C860 2484FC00 */ addiu $a0, $a0, -0x400 -/* 04D464 8004C864 00047400 */ sll $t6, $a0, 0x10 -/* 04D468 8004C868 0C01C1F1 */ jal func_800707C4 -/* 04D46C 8004C86C 000E2403 */ sra $a0, $t6, 0x10 -/* 04D470 8004C870 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 -/* 04D474 8004C874 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 -/* 04D478 8004C878 8D0F0000 */ lw $t7, ($t0) -/* 04D47C 8004C87C 00000000 */ nop -/* 04D480 8004C880 85E40002 */ lh $a0, 2($t7) -/* 04D484 8004C884 E7A0001C */ swc1 $f0, 0x1c($sp) -/* 04D488 8004C888 2484FC00 */ addiu $a0, $a0, -0x400 -/* 04D48C 8004C88C 0004C400 */ sll $t8, $a0, 0x10 -/* 04D490 8004C890 0C01C1FE */ jal func_800707F8 -/* 04D494 8004C894 00182403 */ sra $a0, $t8, 0x10 -/* 04D498 8004C898 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 -/* 04D49C 8004C89C 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 -/* 04D4A0 8004C8A0 8D050000 */ lw $a1, ($t0) -/* 04D4A4 8004C8A4 C7AE001C */ lwc1 $f14, 0x1c($sp) -/* 04D4A8 8004C8A8 C4A2001C */ lwc1 $f2, 0x1c($a1) -/* 04D4AC 8004C8AC C4AC0020 */ lwc1 $f12, 0x20($a1) -/* 04D4B0 8004C8B0 46001202 */ mul.s $f8, $f2, $f0 -/* 04D4B4 8004C8B4 8FA70058 */ lw $a3, 0x58($sp) -/* 04D4B8 8004C8B8 340B8000 */ li $t3, 32768 -/* 04D4BC 8004C8BC 84EA0196 */ lh $t2, 0x196($a3) -/* 04D4C0 8004C8C0 460E6102 */ mul.s $f4, $f12, $f14 -/* 04D4C4 8004C8C4 016A2023 */ subu $a0, $t3, $t2 -/* 04D4C8 8004C8C8 00046C00 */ sll $t5, $a0, 0x10 -/* 04D4CC 8004C8CC 000D2403 */ sra $a0, $t5, 0x10 -/* 04D4D0 8004C8D0 460E1182 */ mul.s $f6, $f2, $f14 -/* 04D4D4 8004C8D4 46044401 */ sub.s $f16, $f8, $f4 -/* 04D4D8 8004C8D8 E7B00020 */ swc1 $f16, 0x20($sp) -/* 04D4DC 8004C8DC 46006282 */ mul.s $f10, $f12, $f0 -/* 04D4E0 8004C8E0 460A3480 */ add.s $f18, $f6, $f10 -/* 04D4E4 8004C8E4 0C01C1F1 */ jal func_800707C4 -/* 04D4E8 8004C8E8 E7B20030 */ swc1 $f18, 0x30($sp) -/* 04D4EC 8004C8EC C7B00020 */ lwc1 $f16, 0x20($sp) -/* 04D4F0 8004C8F0 8FA70058 */ lw $a3, 0x58($sp) -/* 04D4F4 8004C8F4 46100202 */ mul.s $f8, $f0, $f16 -/* 04D4F8 8004C8F8 340F8000 */ li $t7, 32768 -/* 04D4FC 8004C8FC E7A80028 */ swc1 $f8, 0x28($sp) -/* 04D500 8004C900 84EC0196 */ lh $t4, 0x196($a3) -/* 04D504 8004C904 00000000 */ nop -/* 04D508 8004C908 01EC2023 */ subu $a0, $t7, $t4 -/* 04D50C 8004C90C 0004C400 */ sll $t8, $a0, 0x10 -/* 04D510 8004C910 0C01C1FE */ jal func_800707F8 -/* 04D514 8004C914 00182403 */ sra $a0, $t8, 0x10 -/* 04D518 8004C918 C7B00020 */ lwc1 $f16, 0x20($sp) -/* 04D51C 8004C91C 8FA70058 */ lw $a3, 0x58($sp) -/* 04D520 8004C920 46100102 */ mul.s $f4, $f0, $f16 -/* 04D524 8004C924 E7A40024 */ swc1 $f4, 0x24($sp) -/* 04D528 8004C928 84E40196 */ lh $a0, 0x196($a3) -/* 04D52C 8004C92C 00000000 */ nop -/* 04D530 8004C930 24844000 */ addiu $a0, $a0, 0x4000 -/* 04D534 8004C934 00045C00 */ sll $t3, $a0, 0x10 -/* 04D538 8004C938 0C01C1F1 */ jal func_800707C4 -/* 04D53C 8004C93C 000B2403 */ sra $a0, $t3, 0x10 -/* 04D540 8004C940 3C014040 */ li $at, 0x40400000 # 3.000000 -/* 04D544 8004C944 44813000 */ mtc1 $at, $f6 -/* 04D548 8004C948 8FA70058 */ lw $a3, 0x58($sp) -/* 04D54C 8004C94C 46060282 */ mul.s $f10, $f0, $f6 -/* 04D550 8004C950 8FA20054 */ lw $v0, 0x54($sp) -/* 04D554 8004C954 C4E80030 */ lwc1 $f8, 0x30($a3) -/* 04D558 8004C958 C7A60028 */ lwc1 $f6, 0x28($sp) -/* 04D55C 8004C95C 46085402 */ mul.s $f16, $f10, $f8 -/* 04D560 8004C960 C444000C */ lwc1 $f4, 0xc($v0) -/* 04D564 8004C964 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 -/* 04D568 8004C968 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 -/* 04D56C 8004C96C 46062280 */ add.s $f10, $f4, $f6 -/* 04D570 8004C970 8D0D0000 */ lw $t5, ($t0) -/* 04D574 8004C974 46105200 */ add.s $f8, $f10, $f16 -/* 04D578 8004C978 C7B20030 */ lwc1 $f18, 0x30($sp) -/* 04D57C 8004C97C E5A8000C */ swc1 $f8, 0xc($t5) -/* 04D580 8004C980 8D0E0000 */ lw $t6, ($t0) -/* 04D584 8004C984 C4460010 */ lwc1 $f6, 0x10($v0) -/* 04D588 8004C988 C5C40010 */ lwc1 $f4, 0x10($t6) -/* 04D58C 8004C98C 46123280 */ add.s $f10, $f6, $f18 -/* 04D590 8004C990 80E301E0 */ lb $v1, 0x1e0($a3) -/* 04D594 8004C994 460A2081 */ sub.s $f2, $f4, $f10 -/* 04D598 8004C998 24010001 */ li $at, 1 -/* 04D59C 8004C99C 10610003 */ beq $v1, $at, .L8004C9AC -/* 04D5A0 8004C9A0 46001406 */ mov.s $f16, $f2 -/* 04D5A4 8004C9A4 2401FFFF */ li $at, -1 -/* 04D5A8 8004C9A8 14610004 */ bne $v1, $at, .L8004C9BC -.L8004C9AC: -/* 04D5AC 8004C9AC 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 04D5B0 8004C9B0 44814000 */ mtc1 $at, $f8 -/* 04D5B4 8004C9B4 80E301E0 */ lb $v1, 0x1e0($a3) -/* 04D5B8 8004C9B8 E4E80074 */ swc1 $f8, 0x74($a3) -.L8004C9BC: -/* 04D5BC 8004C9BC 24010002 */ li $at, 2 -/* 04D5C0 8004C9C0 10610002 */ beq $v1, $at, .L8004C9CC -/* 04D5C4 8004C9C4 2401FFFE */ li $at, -2 -/* 04D5C8 8004C9C8 14610004 */ bne $v1, $at, .L8004C9DC -.L8004C9CC: -/* 04D5CC 8004C9CC 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 04D5D0 8004C9D0 44813000 */ mtc1 $at, $f6 -/* 04D5D4 8004C9D4 00000000 */ nop -/* 04D5D8 8004C9D8 E4E60074 */ swc1 $f6, 0x74($a3) -.L8004C9DC: -/* 04D5DC 8004C9DC C4E40074 */ lwc1 $f4, 0x74($a3) -/* 04D5E0 8004C9E0 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 04D5E4 8004C9E4 44815800 */ mtc1 $at, $f11 -/* 04D5E8 8004C9E8 44805000 */ mtc1 $zero, $f10 -/* 04D5EC 8004C9EC 46002021 */ cvt.d.s $f0, $f4 -/* 04D5F0 8004C9F0 4620503C */ c.lt.d $f10, $f0 -/* 04D5F4 8004C9F4 3C014000 */ lui $at, 0x4000 -/* 04D5F8 8004C9F8 45000009 */ bc1f .L8004CA20 -/* 04D5FC 8004C9FC 00000000 */ nop -/* 04D600 8004CA00 3C01800E */ li $at, 0x800E0000 # -0.000000 -/* 04D604 8004CA04 C4296578 */ lwc1 $f9, %lo(D_800E6578)($at) -/* 04D608 8004CA08 C428657C */ lwc1 $f8, %lo(D_800E657C)($at) -/* 04D60C 8004CA0C 00000000 */ nop -/* 04D610 8004CA10 46280181 */ sub.d $f6, $f0, $f8 -/* 04D614 8004CA14 46203120 */ cvt.s.d $f4, $f6 -/* 04D618 8004CA18 10000004 */ b .L8004CA2C -/* 04D61C 8004CA1C E4E40074 */ swc1 $f4, 0x74($a3) -.L8004CA20: -/* 04D620 8004CA20 44815000 */ mtc1 $at, $f10 -/* 04D624 8004CA24 00000000 */ nop -/* 04D628 8004CA28 E4EA0074 */ swc1 $f10, 0x74($a3) -.L8004CA2C: -/* 04D62C 8004CA2C C7A80050 */ lwc1 $f8, 0x50($sp) -/* 04D630 8004CA30 C4E40074 */ lwc1 $f4, 0x74($a3) -/* 04D634 8004CA34 46081182 */ mul.s $f6, $f2, $f8 -/* 04D638 8004CA38 44800000 */ mtc1 $zero, $f0 -/* 04D63C 8004CA3C 46043083 */ div.s $f2, $f6, $f4 -/* 04D640 8004CA40 4602003C */ c.lt.s $f0, $f2 -/* 04D644 8004CA44 00000000 */ nop -/* 04D648 8004CA48 45000006 */ bc1f .L8004CA64 -/* 04D64C 8004CA4C 00000000 */ nop -/* 04D650 8004CA50 4602803C */ c.lt.s $f16, $f2 -/* 04D654 8004CA54 00000000 */ nop -/* 04D658 8004CA58 45000002 */ bc1f .L8004CA64 -/* 04D65C 8004CA5C 00000000 */ nop -/* 04D660 8004CA60 46008086 */ mov.s $f2, $f16 -.L8004CA64: -/* 04D664 8004CA64 4600103C */ c.lt.s $f2, $f0 -/* 04D668 8004CA68 00000000 */ nop -/* 04D66C 8004CA6C 45000006 */ bc1f .L8004CA88 -/* 04D670 8004CA70 00000000 */ nop -/* 04D674 8004CA74 4610103C */ c.lt.s $f2, $f16 -/* 04D678 8004CA78 00000000 */ nop -/* 04D67C 8004CA7C 45000002 */ bc1f .L8004CA88 -/* 04D680 8004CA80 00000000 */ nop -/* 04D684 8004CA84 46008086 */ mov.s $f2, $f16 -.L8004CA88: -/* 04D688 8004CA88 8D050000 */ lw $a1, ($t0) -/* 04D68C 8004CA8C 00000000 */ nop -/* 04D690 8004CA90 C4AA0010 */ lwc1 $f10, 0x10($a1) -/* 04D694 8004CA94 00000000 */ nop -/* 04D698 8004CA98 46025201 */ sub.s $f8, $f10, $f2 -/* 04D69C 8004CA9C E4A80010 */ swc1 $f8, 0x10($a1) -/* 04D6A0 8004CAA0 84E40196 */ lh $a0, 0x196($a3) -/* 04D6A4 8004CAA4 AFA70058 */ sw $a3, 0x58($sp) -/* 04D6A8 8004CAA8 24844000 */ addiu $a0, $a0, 0x4000 -/* 04D6AC 8004CAAC 00047C00 */ sll $t7, $a0, 0x10 -/* 04D6B0 8004CAB0 0C01C1FE */ jal func_800707F8 -/* 04D6B4 8004CAB4 000F2403 */ sra $a0, $t7, 0x10 -/* 04D6B8 8004CAB8 3C014040 */ li $at, 0x40400000 # 3.000000 -/* 04D6BC 8004CABC 44812000 */ mtc1 $at, $f4 -/* 04D6C0 8004CAC0 46000187 */ neg.s $f6, $f0 -/* 04D6C4 8004CAC4 46043282 */ mul.s $f10, $f6, $f4 -/* 04D6C8 8004CAC8 8FA70058 */ lw $a3, 0x58($sp) -/* 04D6CC 8004CACC 8FB80054 */ lw $t8, 0x54($sp) -/* 04D6D0 8004CAD0 C4E80030 */ lwc1 $f8, 0x30($a3) -/* 04D6D4 8004CAD4 C7A40024 */ lwc1 $f4, 0x24($sp) -/* 04D6D8 8004CAD8 46085402 */ mul.s $f16, $f10, $f8 -/* 04D6DC 8004CADC C7060014 */ lwc1 $f6, 0x14($t8) -/* 04D6E0 8004CAE0 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 -/* 04D6E4 8004CAE4 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 -/* 04D6E8 8004CAE8 46043280 */ add.s $f10, $f6, $f4 -/* 04D6EC 8004CAEC 8D190000 */ lw $t9, ($t0) -/* 04D6F0 8004CAF0 46105200 */ add.s $f8, $f10, $f16 -/* 04D6F4 8004CAF4 3C0E8012 */ lui $t6, %hi(D_8011D586) # $t6, 0x8012 -/* 04D6F8 8004CAF8 E7280014 */ swc1 $f8, 0x14($t9) -/* 04D6FC 8004CAFC 8D0A0000 */ lw $t2, ($t0) -/* 04D700 8004CB00 84EB0196 */ lh $t3, 0x196($a3) -/* 04D704 8004CB04 00000000 */ nop -/* 04D708 8004CB08 A54B0000 */ sh $t3, ($t2) -/* 04D70C 8004CB0C 80ED01E0 */ lb $t5, 0x1e0($a3) -/* 04D710 8004CB10 00000000 */ nop -/* 04D714 8004CB14 15A00005 */ bnez $t5, .L8004CB2C -/* 04D718 8004CB18 00000000 */ nop -/* 04D71C 8004CB1C 85CED586 */ lh $t6, %lo(D_8011D586)($t6) -/* 04D720 8004CB20 34018001 */ li $at, 32769 -/* 04D724 8004CB24 11C00014 */ beqz $t6, .L8004CB78 -/* 04D728 8004CB28 00000000 */ nop -.L8004CB2C: -/* 04D72C 8004CB2C 8D050000 */ lw $a1, ($t0) -/* 04D730 8004CB30 34018001 */ li $at, 32769 -/* 04D734 8004CB34 84A20004 */ lh $v0, 4($a1) -/* 04D738 8004CB38 00000000 */ nop -/* 04D73C 8004CB3C 3043FFFF */ andi $v1, $v0, 0xffff -/* 04D740 8004CB40 00031823 */ negu $v1, $v1 -/* 04D744 8004CB44 0061082A */ slt $at, $v1, $at -/* 04D748 8004CB48 14200003 */ bnez $at, .L8004CB58 -/* 04D74C 8004CB4C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 04D750 8004CB50 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 04D754 8004CB54 00611821 */ addu $v1, $v1, $at -.L8004CB58: -/* 04D758 8004CB58 28618000 */ slti $at, $v1, -0x8000 -/* 04D75C 8004CB5C 10200002 */ beqz $at, .L8004CB68 -/* 04D760 8004CB60 3401FFFF */ li $at, 65535 -/* 04D764 8004CB64 00611821 */ addu $v1, $v1, $at -.L8004CB68: -/* 04D768 8004CB68 00037883 */ sra $t7, $v1, 2 -/* 04D76C 8004CB6C 004F6021 */ addu $t4, $v0, $t7 -/* 04D770 8004CB70 10000013 */ b .L8004CBC0 -/* 04D774 8004CB74 A4AC0004 */ sh $t4, 4($a1) -.L8004CB78: -/* 04D778 8004CB78 8D050000 */ lw $a1, ($t0) -/* 04D77C 8004CB7C 84E401A4 */ lh $a0, 0x1a4($a3) -/* 04D780 8004CB80 84A20004 */ lh $v0, 4($a1) -/* 04D784 8004CB84 0004C103 */ sra $t8, $a0, 4 -/* 04D788 8004CB88 3059FFFF */ andi $t9, $v0, 0xffff -/* 04D78C 8004CB8C 03191823 */ subu $v1, $t8, $t9 -/* 04D790 8004CB90 0061082A */ slt $at, $v1, $at -/* 04D794 8004CB94 14200003 */ bnez $at, .L8004CBA4 -/* 04D798 8004CB98 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 04D79C 8004CB9C 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 04D7A0 8004CBA0 00611821 */ addu $v1, $v1, $at -.L8004CBA4: -/* 04D7A4 8004CBA4 28618000 */ slti $at, $v1, -0x8000 -/* 04D7A8 8004CBA8 10200002 */ beqz $at, .L8004CBB4 -/* 04D7AC 8004CBAC 3401FFFF */ li $at, 65535 -/* 04D7B0 8004CBB0 00611821 */ addu $v1, $v1, $at -.L8004CBB4: -/* 04D7B4 8004CBB4 000358C3 */ sra $t3, $v1, 3 -/* 04D7B8 8004CBB8 004B5021 */ addu $t2, $v0, $t3 -/* 04D7BC 8004CBBC A4AA0004 */ sh $t2, 4($a1) -.L8004CBC0: -/* 04D7C0 8004CBC0 8D050000 */ lw $a1, ($t0) -/* 04D7C4 8004CBC4 00000000 */ nop -/* 04D7C8 8004CBC8 C4AC000C */ lwc1 $f12, 0xc($a1) -/* 04D7CC 8004CBCC C4AE0010 */ lwc1 $f14, 0x10($a1) -/* 04D7D0 8004CBD0 8CA60014 */ lw $a2, 0x14($a1) -/* 04D7D4 8004CBD4 0C00A7C6 */ jal func_80029F18 -/* 04D7D8 8004CBD8 AFA70058 */ sw $a3, 0x58($sp) -/* 04D7DC 8004CBDC 8FA70058 */ lw $a3, 0x58($sp) -/* 04D7E0 8004CBE0 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 -/* 04D7E4 8004CBE4 2401FFFF */ li $at, -1 -/* 04D7E8 8004CBE8 10410004 */ beq $v0, $at, .L8004CBFC -/* 04D7EC 8004CBEC 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 -/* 04D7F0 8004CBF0 8D0D0000 */ lw $t5, ($t0) -/* 04D7F4 8004CBF4 00000000 */ nop -/* 04D7F8 8004CBF8 A5A20034 */ sh $v0, 0x34($t5) -.L8004CBFC: -/* 04D7FC 8004CBFC 8D0E0000 */ lw $t6, ($t0) -/* 04D800 8004CC00 00000000 */ nop -/* 04D804 8004CC04 85CF0000 */ lh $t7, ($t6) -/* 04D808 8004CC08 00000000 */ nop -/* 04D80C 8004CC0C A4EF0196 */ sh $t7, 0x196($a3) -/* 04D810 8004CC10 8FBF0014 */ lw $ra, 0x14($sp) -/* 04D814 8004CC14 27BD0050 */ addiu $sp, $sp, 0x50 -/* 04D818 8004CC18 03E00008 */ jr $ra -/* 04D81C 8004CC1C 00000000 */ nop - -glabel func_8004CC20 -/* 04D820 8004CC20 27BDFF28 */ addiu $sp, $sp, -0xd8 -/* 04D824 8004CC24 AFBF002C */ sw $ra, 0x2c($sp) -/* 04D828 8004CC28 AFB10028 */ sw $s1, 0x28($sp) -/* 04D82C 8004CC2C AFB00024 */ sw $s0, 0x24($sp) -/* 04D830 8004CC30 AFA400D8 */ sw $a0, 0xd8($sp) -/* 04D834 8004CC34 AFA500DC */ sw $a1, 0xdc($sp) -/* 04D838 8004CC38 A3A0003F */ sb $zero, 0x3f($sp) -/* 04D83C 8004CC3C 8CE5017C */ lw $a1, 0x17c($a3) -/* 04D840 8004CC40 00E08025 */ move $s0, $a3 -/* 04D844 8004CC44 00C08825 */ move $s1, $a2 -/* 04D848 8004CC48 A4E0018E */ sh $zero, 0x18e($a3) -/* 04D84C 8004CC4C 10A00004 */ beqz $a1, .L8004CC60 -/* 04D850 8004CC50 A0E00189 */ sb $zero, 0x189($a3) -/* 04D854 8004CC54 0C0025BE */ jal func_800096F8 -/* 04D858 8004CC58 00A02025 */ move $a0, $a1 -/* 04D85C 8004CC5C AE00017C */ sw $zero, 0x17c($s0) -.L8004CC60: -/* 04D860 8004CC60 820201D3 */ lb $v0, 0x1d3($s0) -/* 04D864 8004CC64 00000000 */ nop -/* 04D868 8004CC68 14400007 */ bnez $v0, .L8004CC88 -/* 04D86C 8004CC6C 240E0008 */ li $t6, 8 -/* 04D870 8004CC70 A20E01D3 */ sb $t6, 0x1d3($s0) -/* 04D874 8004CC74 02202025 */ move $a0, $s1 -/* 04D878 8004CC78 0C015C12 */ jal func_80057048 -/* 04D87C 8004CC7C 24050107 */ li $a1, 263 -/* 04D880 8004CC80 820201D3 */ lb $v0, 0x1d3($s0) -/* 04D884 8004CC84 00000000 */ nop -.L8004CC88: -/* 04D888 8004CC88 28410004 */ slti $at, $v0, 4 -/* 04D88C 8004CC8C 10200003 */ beqz $at, .L8004CC9C -/* 04D890 8004CC90 24040002 */ li $a0, 2 -/* 04D894 8004CC94 240F0004 */ li $t7, 4 -/* 04D898 8004CC98 A20F01D3 */ sb $t7, 0x1d3($s0) -.L8004CC9C: -/* 04D89C 8004CC9C 0C00AB32 */ jal func_8002ACC8 -/* 04D8A0 8004CCA0 A2000203 */ sb $zero, 0x203($s0) -/* 04D8A4 8004CCA4 3C018012 */ lui $at, %hi(D_8011D550) # $at, 0x8012 -/* 04D8A8 8004CCA8 A420D550 */ sh $zero, %lo(D_8011D550)($at) -/* 04D8AC 8004CCAC 3C018012 */ lui $at, %hi(D_8011D554) # $at, 0x8012 -/* 04D8B0 8004CCB0 AC20D554 */ sw $zero, %lo(D_8011D554)($at) -/* 04D8B4 8004CCB4 3C018012 */ lui $at, %hi(D_8011D558) # $at, 0x8012 -/* 04D8B8 8004CCB8 AC20D558 */ sw $zero, %lo(D_8011D558)($at) -/* 04D8BC 8004CCBC C624000C */ lwc1 $f4, 0xc($s1) -/* 04D8C0 8004CCC0 3C188012 */ lui $t8, %hi(D_8011D534) # $t8, 0x8012 -/* 04D8C4 8004CCC4 E7A400B8 */ swc1 $f4, 0xb8($sp) -/* 04D8C8 8004CCC8 C6260010 */ lwc1 $f6, 0x10($s1) -/* 04D8CC 8004CCCC 8F18D534 */ lw $t8, %lo(D_8011D534)($t8) -/* 04D8D0 8004CCD0 E7A600B4 */ swc1 $f6, 0xb4($sp) -/* 04D8D4 8004CCD4 C6280014 */ lwc1 $f8, 0x14($s1) -/* 04D8D8 8004CCD8 8FA800D8 */ lw $t0, 0xd8($sp) -/* 04D8DC 8004CCDC E7A800B0 */ swc1 $f8, 0xb0($sp) -/* 04D8E0 8004CCE0 820401E1 */ lb $a0, 0x1e1($s0) -/* 04D8E4 8004CCE4 3C0C8012 */ lui $t4, %hi(D_8011D538) # $t4, 0x8012 -/* 04D8E8 8004CCE8 03041823 */ subu $v1, $t8, $a0 -/* 04D8EC 8004CCEC 00680019 */ multu $v1, $t0 -/* 04D8F0 8004CCF0 02002825 */ move $a1, $s0 -/* 04D8F4 8004CCF4 00001012 */ mflo $v0 -/* 04D8F8 8004CCF8 0002C903 */ sra $t9, $v0, 4 -/* 04D8FC 8004CCFC 10600009 */ beqz $v1, .L8004CD24 -/* 04D900 8004CD00 03203025 */ move $a2, $t9 -/* 04D904 8004CD04 17200008 */ bnez $t9, .L8004CD28 -/* 04D908 8004CD08 00865821 */ addu $t3, $a0, $a2 -/* 04D90C 8004CD0C 18600002 */ blez $v1, .L8004CD18 -/* 04D910 8004CD10 00000000 */ nop -/* 04D914 8004CD14 24060001 */ li $a2, 1 -.L8004CD18: -/* 04D918 8004CD18 04610003 */ bgez $v1, .L8004CD28 -/* 04D91C 8004CD1C 00865821 */ addu $t3, $a0, $a2 -/* 04D920 8004CD20 2406FFFF */ li $a2, -1 -.L8004CD24: -/* 04D924 8004CD24 00865821 */ addu $t3, $a0, $a2 -.L8004CD28: -/* 04D928 8004CD28 A20B01E1 */ sb $t3, 0x1e1($s0) -/* 04D92C 8004CD2C 8D8CD538 */ lw $t4, %lo(D_8011D538)($t4) -/* 04D930 8004CD30 820701E8 */ lb $a3, 0x1e8($s0) -/* 04D934 8004CD34 02202025 */ move $a0, $s1 -/* 04D938 8004CD38 01871823 */ subu $v1, $t4, $a3 -/* 04D93C 8004CD3C 00680019 */ multu $v1, $t0 -/* 04D940 8004CD40 00001012 */ mflo $v0 -/* 04D944 8004CD44 00026903 */ sra $t5, $v0, 4 -/* 04D948 8004CD48 10600009 */ beqz $v1, .L8004CD70 -/* 04D94C 8004CD4C 01A03025 */ move $a2, $t5 -/* 04D950 8004CD50 15A00008 */ bnez $t5, .L8004CD74 -/* 04D954 8004CD54 00E67021 */ addu $t6, $a3, $a2 -/* 04D958 8004CD58 18600002 */ blez $v1, .L8004CD64 -/* 04D95C 8004CD5C 00000000 */ nop -/* 04D960 8004CD60 24060001 */ li $a2, 1 -.L8004CD64: -/* 04D964 8004CD64 04610003 */ bgez $v1, .L8004CD74 -/* 04D968 8004CD68 00E67021 */ addu $t6, $a3, $a2 -/* 04D96C 8004CD6C 2406FFFF */ li $a2, -1 -.L8004CD70: -/* 04D970 8004CD70 00E67021 */ addu $t6, $a3, $a2 -.L8004CD74: -/* 04D974 8004CD74 A20E01E8 */ sb $t6, 0x1e8($s0) -/* 04D978 8004CD78 A6000160 */ sh $zero, 0x160($s0) -/* 04D97C 8004CD7C A6000162 */ sh $zero, 0x162($s0) -/* 04D980 8004CD80 0C015D7B */ jal func_800575EC -/* 04D984 8004CD84 A6000164 */ sh $zero, 0x164($s0) -/* 04D988 8004CD88 862F0000 */ lh $t7, ($s1) -/* 04D98C 8004CD8C 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 -/* 04D990 8004CD90 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 -/* 04D994 8004CD94 A4AF0000 */ sh $t7, ($a1) -/* 04D998 8004CD98 86380002 */ lh $t8, 2($s1) -/* 04D99C 8004CD9C 44800000 */ mtc1 $zero, $f0 -/* 04D9A0 8004CDA0 A4B80002 */ sh $t8, 2($a1) -/* 04D9A4 8004CDA4 86390004 */ lh $t9, 4($s1) -/* 04D9A8 8004CDA8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 04D9AC 8004CDAC 44815000 */ mtc1 $at, $f10 -/* 04D9B0 8004CDB0 27A40048 */ addiu $a0, $sp, 0x48 -/* 04D9B4 8004CDB4 E4A0000C */ swc1 $f0, 0xc($a1) -/* 04D9B8 8004CDB8 E4A00010 */ swc1 $f0, 0x10($a1) -/* 04D9BC 8004CDBC E4A00014 */ swc1 $f0, 0x14($a1) -/* 04D9C0 8004CDC0 A4B90004 */ sh $t9, 4($a1) -/* 04D9C4 8004CDC4 0C01BF0C */ jal func_8006FC30 -/* 04D9C8 8004CDC8 E4AA0008 */ swc1 $f10, 8($a1) -/* 04D9CC 8004CDCC 44800000 */ mtc1 $zero, $f0 -/* 04D9D0 8004CDD0 260B0044 */ addiu $t3, $s0, 0x44 -/* 04D9D4 8004CDD4 260C0048 */ addiu $t4, $s0, 0x48 -/* 04D9D8 8004CDD8 260D004C */ addiu $t5, $s0, 0x4c -/* 04D9DC 8004CDDC 44050000 */ mfc1 $a1, $f0 -/* 04D9E0 8004CDE0 44070000 */ mfc1 $a3, $f0 -/* 04D9E4 8004CDE4 AFAD0018 */ sw $t5, 0x18($sp) -/* 04D9E8 8004CDE8 AFAC0014 */ sw $t4, 0x14($sp) -/* 04D9EC 8004CDEC AFAB0010 */ sw $t3, 0x10($sp) -/* 04D9F0 8004CDF0 27A40048 */ addiu $a0, $sp, 0x48 -/* 04D9F4 8004CDF4 0C01BD93 */ jal func_8006F64C -/* 04D9F8 8004CDF8 3C063F80 */ lui $a2, 0x3f80 -/* 04D9FC 8004CDFC 340E8000 */ li $t6, 32768 -/* 04DA00 8004CE00 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 -/* 04DA04 8004CE04 AC2ED528 */ sw $t6, %lo(D_8011D528)($at) -/* 04DA08 8004CE08 02202025 */ move $a0, $s1 -/* 04DA0C 8004CE0C 0C014D71 */ jal func_800535C4 -/* 04DA10 8004CE10 02002825 */ move $a1, $s0 -/* 04DA14 8004CE14 0C014D99 */ jal func_80053664 -/* 04DA18 8004CE18 02002025 */ move $a0, $s0 -/* 04DA1C 8004CE1C 8FA600DC */ lw $a2, 0xdc($sp) -/* 04DA20 8004CE20 02202025 */ move $a0, $s1 -/* 04DA24 8004CE24 0C014DD4 */ jal func_80053750 -/* 04DA28 8004CE28 02002825 */ move $a1, $s0 -/* 04DA2C 8004CE2C A220003B */ sb $zero, 0x3b($s1) -/* 04DA30 8004CE30 820201E1 */ lb $v0, 0x1e1($s0) -/* 04DA34 8004CE34 24180028 */ li $t8, 40 -/* 04DA38 8004CE38 00027843 */ sra $t7, $v0, 1 -/* 04DA3C 8004CE3C 030F1023 */ subu $v0, $t8, $t7 -/* 04DA40 8004CE40 04410003 */ bgez $v0, .L8004CE50 -/* 04DA44 8004CE44 2841004A */ slti $at, $v0, 0x4a -/* 04DA48 8004CE48 00001025 */ move $v0, $zero -/* 04DA4C 8004CE4C 2841004A */ slti $at, $v0, 0x4a -.L8004CE50: -/* 04DA50 8004CE50 14200002 */ bnez $at, .L8004CE5C -/* 04DA54 8004CE54 00000000 */ nop -/* 04DA58 8004CE58 24020049 */ li $v0, 73 -.L8004CE5C: -/* 04DA5C 8004CE5C A6220018 */ sh $v0, 0x18($s1) -/* 04DA60 8004CE60 86190000 */ lh $t9, ($s0) -/* 04DA64 8004CE64 2408FFFF */ li $t0, -1 -/* 04DA68 8004CE68 11190004 */ beq $t0, $t9, .L8004CE7C -/* 04DA6C 8004CE6C 2407000A */ li $a3, 10 -/* 04DA70 8004CE70 820701E1 */ lb $a3, 0x1e1($s0) -/* 04DA74 8004CE74 10000055 */ b .L8004CFCC -/* 04DA78 8004CE78 44874000 */ mtc1 $a3, $f8 -.L8004CE7C: -/* 04DA7C 8004CE7C 8E050158 */ lw $a1, 0x158($s0) -/* 04DA80 8004CE80 00000000 */ nop -/* 04DA84 8004CE84 10A00050 */ beqz $a1, .L8004CFC8 -/* 04DA88 8004CE88 00000000 */ nop -/* 04DA8C 8004CE8C C4B0000C */ lwc1 $f16, 0xc($a1) -/* 04DA90 8004CE90 C632000C */ lwc1 $f18, 0xc($s1) -/* 04DA94 8004CE94 C4A40010 */ lwc1 $f4, 0x10($a1) -/* 04DA98 8004CE98 46128001 */ sub.s $f0, $f16, $f18 -/* 04DA9C 8004CE9C C6260010 */ lwc1 $f6, 0x10($s1) -/* 04DAA0 8004CEA0 46000402 */ mul.s $f16, $f0, $f0 -/* 04DAA4 8004CEA4 46062081 */ sub.s $f2, $f4, $f6 -/* 04DAA8 8004CEA8 C4A80014 */ lwc1 $f8, 0x14($a1) -/* 04DAAC 8004CEAC C62A0014 */ lwc1 $f10, 0x14($s1) -/* 04DAB0 8004CEB0 46021482 */ mul.s $f18, $f2, $f2 -/* 04DAB4 8004CEB4 460A4381 */ sub.s $f14, $f8, $f10 -/* 04DAB8 8004CEB8 AFA70090 */ sw $a3, 0x90($sp) -/* 04DABC 8004CEBC AFA50044 */ sw $a1, 0x44($sp) -/* 04DAC0 8004CEC0 460E7182 */ mul.s $f6, $f14, $f14 -/* 04DAC4 8004CEC4 46128100 */ add.s $f4, $f16, $f18 -/* 04DAC8 8004CEC8 0C0326B4 */ jal sqrtf -/* 04DACC 8004CECC 46062300 */ add.s $f12, $f4, $f6 -/* 04DAD0 8004CED0 3C014069 */ li $at, 0x40690000 # 3.640625 -/* 04DAD4 8004CED4 44815800 */ mtc1 $at, $f11 -/* 04DAD8 8004CED8 44805000 */ mtc1 $zero, $f10 -/* 04DADC 8004CEDC 46000221 */ cvt.d.s $f8, $f0 -/* 04DAE0 8004CEE0 462A403C */ c.lt.d $f8, $f10 -/* 04DAE4 8004CEE4 8FA50044 */ lw $a1, 0x44($sp) -/* 04DAE8 8004CEE8 8FA70090 */ lw $a3, 0x90($sp) -/* 04DAEC 8004CEEC 4500001A */ bc1f .L8004CF58 -/* 04DAF0 8004CEF0 2408FFFF */ li $t0, -1 -/* 04DAF4 8004CEF4 8CA60064 */ lw $a2, 0x64($a1) -/* 04DAF8 8004CEF8 00001025 */ move $v0, $zero -/* 04DAFC 8004CEFC 00025880 */ sll $t3, $v0, 2 -.L8004CF00: -/* 04DB00 8004CF00 00CB1821 */ addu $v1, $a2, $t3 -/* 04DB04 8004CF04 8C640000 */ lw $a0, ($v1) -/* 04DB08 8004CF08 00000000 */ nop -/* 04DB0C 8004CF0C 10800009 */ beqz $a0, .L8004CF34 -/* 04DB10 8004CF10 00000000 */ nop -/* 04DB14 8004CF14 8E0C015C */ lw $t4, 0x15c($s0) -/* 04DB18 8004CF18 00000000 */ nop -/* 04DB1C 8004CF1C 11840006 */ beq $t4, $a0, .L8004CF38 -/* 04DB20 8004CF20 24420001 */ addiu $v0, $v0, 1 -/* 04DB24 8004CF24 AE05015C */ sw $a1, 0x15c($s0) -/* 04DB28 8004CF28 8C6D0000 */ lw $t5, ($v1) -/* 04DB2C 8004CF2C 24020004 */ li $v0, 4 -/* 04DB30 8004CF30 AE0D0158 */ sw $t5, 0x158($s0) -.L8004CF34: -/* 04DB34 8004CF34 24420001 */ addiu $v0, $v0, 1 -.L8004CF38: -/* 04DB38 8004CF38 28410004 */ slti $at, $v0, 4 -/* 04DB3C 8004CF3C 1420FFF0 */ bnez $at, .L8004CF00 -/* 04DB40 8004CF40 00025880 */ sll $t3, $v0, 2 -/* 04DB44 8004CF44 24010005 */ li $at, 5 -/* 04DB48 8004CF48 1041001F */ beq $v0, $at, .L8004CFC8 -/* 04DB4C 8004CF4C 00000000 */ nop -/* 04DB50 8004CF50 1000001D */ b .L8004CFC8 -/* 04DB54 8004CF54 AE000158 */ sw $zero, 0x158($s0) -.L8004CF58: -/* 04DB58 8004CF58 C6020050 */ lwc1 $f2, 0x50($s0) -/* 04DB5C 8004CF5C C630000C */ lwc1 $f16, 0xc($s1) -/* 04DB60 8004CF60 C60E0058 */ lwc1 $f14, 0x58($s0) -/* 04DB64 8004CF64 46101482 */ mul.s $f18, $f2, $f16 -/* 04DB68 8004CF68 C6240014 */ lwc1 $f4, 0x14($s1) -/* 04DB6C 8004CF6C C4A8000C */ lwc1 $f8, 0xc($a1) -/* 04DB70 8004CF70 C4B00014 */ lwc1 $f16, 0x14($a1) -/* 04DB74 8004CF74 46047182 */ mul.s $f6, $f14, $f4 -/* 04DB78 8004CF78 00000000 */ nop -/* 04DB7C 8004CF7C 46024282 */ mul.s $f10, $f8, $f2 -/* 04DB80 8004CF80 46069300 */ add.s $f12, $f18, $f6 -/* 04DB84 8004CF84 460E8102 */ mul.s $f4, $f16, $f14 -/* 04DB88 8004CF88 46006307 */ neg.s $f12, $f12 -/* 04DB8C 8004CF8C 46045480 */ add.s $f18, $f10, $f4 -/* 04DB90 8004CF90 460C9000 */ add.s $f0, $f18, $f12 -/* 04DB94 8004CF94 444EF800 */ cfc1 $t6, $31 -/* 04DB98 8004CF98 00000000 */ nop -/* 04DB9C 8004CF9C 35C10003 */ ori $at, $t6, 3 -/* 04DBA0 8004CFA0 38210002 */ xori $at, $at, 2 -/* 04DBA4 8004CFA4 44C1F800 */ ctc1 $at, $31 -/* 04DBA8 8004CFA8 24010005 */ li $at, 5 -/* 04DBAC 8004CFAC 460001A4 */ cvt.w.s $f6, $f0 -/* 04DBB0 8004CFB0 44073000 */ mfc1 $a3, $f6 -/* 04DBB4 8004CFB4 44CEF800 */ ctc1 $t6, $31 -/* 04DBB8 8004CFB8 00E1001A */ div $zero, $a3, $at -/* 04DBBC 8004CFBC 00003812 */ mflo $a3 -/* 04DBC0 8004CFC0 00000000 */ nop -/* 04DBC4 8004CFC4 00000000 */ nop -.L8004CFC8: -/* 04DBC8 8004CFC8 44874000 */ mtc1 $a3, $f8 -.L8004CFCC: -/* 04DBCC 8004CFCC C60A002C */ lwc1 $f10, 0x2c($s0) -/* 04DBD0 8004CFD0 46804420 */ cvt.s.w $f16, $f8 -/* 04DBD4 8004CFD4 3C0143B4 */ li $at, 0x43B40000 # 360.000000 -/* 04DBD8 8004CFD8 44819000 */ mtc1 $at, $f18 -/* 04DBDC 8004CFDC 460A8102 */ mul.s $f4, $f16, $f10 -/* 04DBE0 8004CFE0 C6080050 */ lwc1 $f8, 0x50($s0) -/* 04DBE4 8004CFE4 A2000187 */ sb $zero, 0x187($s0) -/* 04DBE8 8004CFE8 A20001DB */ sb $zero, 0x1db($s0) -/* 04DBEC 8004CFEC 46122003 */ div.s $f0, $f4, $f18 -/* 04DBF0 8004CFF0 C626001C */ lwc1 $f6, 0x1c($s1) -/* 04DBF4 8004CFF4 C6240020 */ lwc1 $f4, 0x20($s1) -/* 04DBF8 8004CFF8 3C098012 */ lui $t1, %hi(D_8011D55C) # $t1, 0x8012 -/* 04DBFC 8004CFFC 2529D55C */ addiu $t1, %lo(D_8011D55C) # addiu $t1, $t1, -0x2aa4 -/* 04DC00 8004D000 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 04DC04 8004D004 44811000 */ mtc1 $at, $f2 -/* 04DC08 8004D008 46004402 */ mul.s $f16, $f8, $f0 -/* 04DC0C 8004D00C 46103281 */ sub.s $f10, $f6, $f16 -/* 04DC10 8004D010 C6300024 */ lwc1 $f16, 0x24($s1) -/* 04DC14 8004D014 E62A001C */ swc1 $f10, 0x1c($s1) -/* 04DC18 8004D018 C6120054 */ lwc1 $f18, 0x54($s0) -/* 04DC1C 8004D01C 00000000 */ nop -/* 04DC20 8004D020 46009202 */ mul.s $f8, $f18, $f0 -/* 04DC24 8004D024 46082181 */ sub.s $f6, $f4, $f8 -/* 04DC28 8004D028 E6260020 */ swc1 $f6, 0x20($s1) -/* 04DC2C 8004D02C C60A0058 */ lwc1 $f10, 0x58($s0) -/* 04DC30 8004D030 00000000 */ nop -/* 04DC34 8004D034 46005482 */ mul.s $f18, $f10, $f0 -/* 04DC38 8004D038 46128101 */ sub.s $f4, $f16, $f18 -/* 04DC3C 8004D03C E6240024 */ swc1 $f4, 0x24($s1) -/* 04DC40 8004D040 8D380000 */ lw $t8, ($t1) -/* 04DC44 8004D044 8FAA00D8 */ lw $t2, 0xd8($sp) -/* 04DC48 8004D048 15180003 */ bne $t0, $t8, .L8004D058 -/* 04DC4C 8004D04C 3C01800E */ lui $at, %hi(D_800E6580) # $at, 0x800e -/* 04DC50 8004D050 C4226580 */ lwc1 $f2, %lo(D_800E6580)($at) -/* 04DC54 8004D054 00000000 */ nop -.L8004D058: -/* 04DC58 8004D058 8619019A */ lh $t9, 0x19a($s0) -/* 04DC5C 8004D05C 00000000 */ nop -/* 04DC60 8004D060 032A5821 */ addu $t3, $t9, $t2 -/* 04DC64 8004D064 A60B019A */ sh $t3, 0x19a($s0) -/* 04DC68 8004D068 860C019A */ lh $t4, 0x19a($s0) -/* 04DC6C 8004D06C 00000000 */ nop -/* 04DC70 8004D070 29810259 */ slti $at, $t4, 0x259 -/* 04DC74 8004D074 1420000A */ bnez $at, .L8004D0A0 -/* 04DC78 8004D078 00000000 */ nop -/* 04DC7C 8004D07C 820D01D7 */ lb $t5, 0x1d7($s0) -/* 04DC80 8004D080 240F0001 */ li $t7, 1 -/* 04DC84 8004D084 A20D01D6 */ sb $t5, 0x1d6($s0) -/* 04DC88 8004D088 A6200002 */ sh $zero, 2($s1) -/* 04DC8C 8004D08C 860E0000 */ lh $t6, ($s0) -/* 04DC90 8004D090 A20001E0 */ sb $zero, 0x1e0($s0) -/* 04DC94 8004D094 05C00002 */ bltz $t6, .L8004D0A0 -/* 04DC98 8004D098 00000000 */ nop -/* 04DC9C 8004D09C A3AF003F */ sb $t7, 0x3f($sp) -.L8004D0A0: -/* 04DCA0 8004D0A0 821801E2 */ lb $t8, 0x1e2($s0) -/* 04DCA4 8004D0A4 00000000 */ nop -/* 04DCA8 8004D0A8 17000011 */ bnez $t8, .L8004D0F0 -/* 04DCAC 8004D0AC 00000000 */ nop -/* 04DCB0 8004D0B0 821901E0 */ lb $t9, 0x1e0($s0) -/* 04DCB4 8004D0B4 3C01800E */ lui $at, %hi(D_800E6584) # $at, 0x800e -/* 04DCB8 8004D0B8 C4226584 */ lwc1 $f2, %lo(D_800E6584)($at) -/* 04DCBC 8004D0BC 032A5821 */ addu $t3, $t9, $t2 -/* 04DCC0 8004D0C0 A20B01E0 */ sb $t3, 0x1e0($s0) -/* 04DCC4 8004D0C4 820C01E0 */ lb $t4, 0x1e0($s0) -/* 04DCC8 8004D0C8 00000000 */ nop -/* 04DCCC 8004D0CC 2981003D */ slti $at, $t4, 0x3d -/* 04DCD0 8004D0D0 14200008 */ bnez $at, .L8004D0F4 -/* 04DCD4 8004D0D4 00000000 */ nop -/* 04DCD8 8004D0D8 820D01D7 */ lb $t5, 0x1d7($s0) -/* 04DCDC 8004D0DC 00000000 */ nop -/* 04DCE0 8004D0E0 A20D01D6 */ sb $t5, 0x1d6($s0) -/* 04DCE4 8004D0E4 A6200002 */ sh $zero, 2($s1) -/* 04DCE8 8004D0E8 10000002 */ b .L8004D0F4 -/* 04DCEC 8004D0EC A20001E0 */ sb $zero, 0x1e0($s0) -.L8004D0F0: -/* 04DCF0 8004D0F0 A20001E0 */ sb $zero, 0x1e0($s0) -.L8004D0F4: -/* 04DCF4 8004D0F4 860301A0 */ lh $v1, 0x1a0($s0) -/* 04DCF8 8004D0F8 860E0198 */ lh $t6, 0x198($s0) -/* 04DCFC 8004D0FC 306FFFFF */ andi $t7, $v1, 0xffff -/* 04DD00 8004D100 34018001 */ li $at, 32769 -/* 04DD04 8004D104 01CF1023 */ subu $v0, $t6, $t7 -/* 04DD08 8004D108 0041082A */ slt $at, $v0, $at -/* 04DD0C 8004D10C 14200003 */ bnez $at, .L8004D11C -/* 04DD10 8004D110 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 04DD14 8004D114 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 04DD18 8004D118 00411021 */ addu $v0, $v0, $at -.L8004D11C: -/* 04DD1C 8004D11C 28418000 */ slti $at, $v0, -0x8000 -/* 04DD20 8004D120 10200002 */ beqz $at, .L8004D12C -/* 04DD24 8004D124 3401FFFF */ li $at, 65535 -/* 04DD28 8004D128 00411021 */ addu $v0, $v0, $at -.L8004D12C: -/* 04DD2C 8004D12C 28411001 */ slti $at, $v0, 0x1001 -/* 04DD30 8004D130 10200004 */ beqz $at, .L8004D144 -/* 04DD34 8004D134 0002C0C3 */ sra $t8, $v0, 3 -/* 04DD38 8004D138 2841F000 */ slti $at, $v0, -0x1000 -/* 04DD3C 8004D13C 10200003 */ beqz $at, .L8004D14C -/* 04DD40 8004D140 00000000 */ nop -.L8004D144: -/* 04DD44 8004D144 44801000 */ mtc1 $zero, $f2 -/* 04DD48 8004D148 00000000 */ nop -.L8004D14C: -/* 04DD4C 8004D14C C6060038 */ lwc1 $f6, 0x38($s0) -/* 04DD50 8004D150 0078C821 */ addu $t9, $v1, $t8 -/* 04DD54 8004D154 46023282 */ mul.s $f10, $f6, $f2 -/* 04DD58 8004D158 A61901A0 */ sh $t9, 0x1a0($s0) -/* 04DD5C 8004D15C A60001A4 */ sh $zero, 0x1a4($s0) -/* 04DD60 8004D160 C628001C */ lwc1 $f8, 0x1c($s1) -/* 04DD64 8004D164 C6320020 */ lwc1 $f18, 0x20($s1) -/* 04DD68 8004D168 460A4401 */ sub.s $f16, $f8, $f10 -/* 04DD6C 8004D16C C62A0024 */ lwc1 $f10, 0x24($s1) -/* 04DD70 8004D170 E630001C */ swc1 $f16, 0x1c($s1) -/* 04DD74 8004D174 C604003C */ lwc1 $f4, 0x3c($s0) -/* 04DD78 8004D178 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 -/* 04DD7C 8004D17C 46022182 */ mul.s $f6, $f4, $f2 -/* 04DD80 8004D180 44816800 */ mtc1 $at, $f13 -/* 04DD84 8004D184 44806000 */ mtc1 $zero, $f12 -/* 04DD88 8004D188 44807000 */ mtc1 $zero, $f14 -/* 04DD8C 8004D18C 46069201 */ sub.s $f8, $f18, $f6 -/* 04DD90 8004D190 C626001C */ lwc1 $f6, 0x1c($s1) -/* 04DD94 8004D194 E6280020 */ swc1 $f8, 0x20($s1) -/* 04DD98 8004D198 C6100040 */ lwc1 $f16, 0x40($s0) -/* 04DD9C 8004D19C 46003221 */ cvt.d.s $f8, $f6 -/* 04DDA0 8004D1A0 46028102 */ mul.s $f4, $f16, $f2 -/* 04DDA4 8004D1A4 3C01800E */ lui $at, %hi(D_800E6588) # $at, 0x800e -/* 04DDA8 8004D1A8 46045481 */ sub.s $f18, $f10, $f4 -/* 04DDAC 8004D1AC E6320024 */ swc1 $f18, 0x24($s1) -/* 04DDB0 8004D1B0 C6100044 */ lwc1 $f16, 0x44($s0) -/* 04DDB4 8004D1B4 00000000 */ nop -/* 04DDB8 8004D1B8 460082A1 */ cvt.d.s $f10, $f16 -/* 04DDBC 8004D1BC 462C5102 */ mul.d $f4, $f10, $f12 -/* 04DDC0 8004D1C0 C6300020 */ lwc1 $f16, 0x20($s1) -/* 04DDC4 8004D1C4 00000000 */ nop -/* 04DDC8 8004D1C8 460082A1 */ cvt.d.s $f10, $f16 -/* 04DDCC 8004D1CC 46244481 */ sub.d $f18, $f8, $f4 -/* 04DDD0 8004D1D0 462091A0 */ cvt.s.d $f6, $f18 -/* 04DDD4 8004D1D4 E626001C */ swc1 $f6, 0x1c($s1) -/* 04DDD8 8004D1D8 C6080048 */ lwc1 $f8, 0x48($s0) -/* 04DDDC 8004D1DC 00000000 */ nop -/* 04DDE0 8004D1E0 46004121 */ cvt.d.s $f4, $f8 -/* 04DDE4 8004D1E4 462C2482 */ mul.d $f18, $f4, $f12 -/* 04DDE8 8004D1E8 C6280024 */ lwc1 $f8, 0x24($s1) -/* 04DDEC 8004D1EC 00000000 */ nop -/* 04DDF0 8004D1F0 46004121 */ cvt.d.s $f4, $f8 -/* 04DDF4 8004D1F4 46325181 */ sub.d $f6, $f10, $f18 -/* 04DDF8 8004D1F8 46203420 */ cvt.s.d $f16, $f6 -/* 04DDFC 8004D1FC E6300020 */ swc1 $f16, 0x20($s1) -/* 04DE00 8004D200 C60A004C */ lwc1 $f10, 0x4c($s0) -/* 04DE04 8004D204 00000000 */ nop -/* 04DE08 8004D208 460054A1 */ cvt.d.s $f18, $f10 -/* 04DE0C 8004D20C 462C9182 */ mul.d $f6, $f18, $f12 -/* 04DE10 8004D210 46262401 */ sub.d $f16, $f4, $f6 -/* 04DE14 8004D214 46208220 */ cvt.s.d $f8, $f16 -/* 04DE18 8004D218 E6280024 */ swc1 $f8, 0x24($s1) -/* 04DE1C 8004D21C C602002C */ lwc1 $f2, 0x2c($s0) -/* 04DE20 8004D220 C4326588 */ lwc1 $f18, %lo(D_800E6588)($at) -/* 04DE24 8004D224 46021282 */ mul.s $f10, $f2, $f2 -/* 04DE28 8004D228 460E103C */ c.lt.s $f2, $f14 -/* 04DE2C 8004D22C 46125002 */ mul.s $f0, $f10, $f18 -/* 04DE30 8004D230 45000002 */ bc1f .L8004D23C -/* 04DE34 8004D234 00000000 */ nop -/* 04DE38 8004D238 46000007 */ neg.s $f0, $f0 -.L8004D23C: -/* 04DE3C 8004D23C C6060038 */ lwc1 $f6, 0x38($s0) -/* 04DE40 8004D240 C624001C */ lwc1 $f4, 0x1c($s1) -/* 04DE44 8004D244 46003402 */ mul.s $f16, $f6, $f0 -/* 04DE48 8004D248 3C01800E */ lui $at, %hi(D_800E658C) # $at, 0x800e -/* 04DE4C 8004D24C C42C658C */ lwc1 $f12, %lo(D_800E658C)($at) -/* 04DE50 8004D250 C62A0020 */ lwc1 $f10, 0x20($s1) -/* 04DE54 8004D254 46102201 */ sub.s $f8, $f4, $f16 -/* 04DE58 8004D258 C6300024 */ lwc1 $f16, 0x24($s1) -/* 04DE5C 8004D25C E628001C */ swc1 $f8, 0x1c($s1) -/* 04DE60 8004D260 C612003C */ lwc1 $f18, 0x3c($s0) -/* 04DE64 8004D264 00000000 */ nop -/* 04DE68 8004D268 46009182 */ mul.s $f6, $f18, $f0 -/* 04DE6C 8004D26C 46065101 */ sub.s $f4, $f10, $f6 -/* 04DE70 8004D270 E6240020 */ swc1 $f4, 0x20($s1) -/* 04DE74 8004D274 C6080040 */ lwc1 $f8, 0x40($s0) -/* 04DE78 8004D278 00000000 */ nop -/* 04DE7C 8004D27C 46004482 */ mul.s $f18, $f8, $f0 -/* 04DE80 8004D280 46128281 */ sub.s $f10, $f16, $f18 -/* 04DE84 8004D284 E62A0024 */ swc1 $f10, 0x24($s1) -/* 04DE88 8004D288 C6020030 */ lwc1 $f2, 0x30($s0) -/* 04DE8C 8004D28C 00000000 */ nop -/* 04DE90 8004D290 46021182 */ mul.s $f6, $f2, $f2 -/* 04DE94 8004D294 460E103C */ c.lt.s $f2, $f14 -/* 04DE98 8004D298 460C3002 */ mul.s $f0, $f6, $f12 -/* 04DE9C 8004D29C 45000002 */ bc1f .L8004D2A8 -/* 04DEA0 8004D2A0 00000000 */ nop -/* 04DEA4 8004D2A4 46000007 */ neg.s $f0, $f0 -.L8004D2A8: -/* 04DEA8 8004D2A8 C6080050 */ lwc1 $f8, 0x50($s0) -/* 04DEAC 8004D2AC C624001C */ lwc1 $f4, 0x1c($s1) -/* 04DEB0 8004D2B0 46004402 */ mul.s $f16, $f8, $f0 -/* 04DEB4 8004D2B4 C62A0020 */ lwc1 $f10, 0x20($s1) -/* 04DEB8 8004D2B8 46102481 */ sub.s $f18, $f4, $f16 -/* 04DEBC 8004D2BC C6300024 */ lwc1 $f16, 0x24($s1) -/* 04DEC0 8004D2C0 E632001C */ swc1 $f18, 0x1c($s1) -/* 04DEC4 8004D2C4 C6060054 */ lwc1 $f6, 0x54($s0) -/* 04DEC8 8004D2C8 00000000 */ nop -/* 04DECC 8004D2CC 46003202 */ mul.s $f8, $f6, $f0 -/* 04DED0 8004D2D0 46085101 */ sub.s $f4, $f10, $f8 -/* 04DED4 8004D2D4 E6240020 */ swc1 $f4, 0x20($s1) -/* 04DED8 8004D2D8 C6120058 */ lwc1 $f18, 0x58($s0) -/* 04DEDC 8004D2DC 00000000 */ nop -/* 04DEE0 8004D2E0 46009182 */ mul.s $f6, $f18, $f0 -/* 04DEE4 8004D2E4 46068281 */ sub.s $f10, $f16, $f6 -/* 04DEE8 8004D2E8 E62A0024 */ swc1 $f10, 0x24($s1) -/* 04DEEC 8004D2EC C6020034 */ lwc1 $f2, 0x34($s0) -/* 04DEF0 8004D2F0 00000000 */ nop -/* 04DEF4 8004D2F4 46021202 */ mul.s $f8, $f2, $f2 -/* 04DEF8 8004D2F8 460E103C */ c.lt.s $f2, $f14 -/* 04DEFC 8004D2FC 460C4002 */ mul.s $f0, $f8, $f12 -/* 04DF00 8004D300 45000002 */ bc1f .L8004D30C -/* 04DF04 8004D304 00000000 */ nop -/* 04DF08 8004D308 46000007 */ neg.s $f0, $f0 -.L8004D30C: -/* 04DF0C 8004D30C C6120044 */ lwc1 $f18, 0x44($s0) -/* 04DF10 8004D310 C624001C */ lwc1 $f4, 0x1c($s1) -/* 04DF14 8004D314 46009402 */ mul.s $f16, $f18, $f0 -/* 04DF18 8004D318 C62A0020 */ lwc1 $f10, 0x20($s1) -/* 04DF1C 8004D31C 3C0B8012 */ lui $t3, %hi(D_8011D554) # $t3, 0x8012 -/* 04DF20 8004D320 02202025 */ move $a0, $s1 -/* 04DF24 8004D324 46102181 */ sub.s $f6, $f4, $f16 -/* 04DF28 8004D328 C6300024 */ lwc1 $f16, 0x24($s1) -/* 04DF2C 8004D32C E626001C */ swc1 $f6, 0x1c($s1) -/* 04DF30 8004D330 C6080048 */ lwc1 $f8, 0x48($s0) -/* 04DF34 8004D334 00000000 */ nop -/* 04DF38 8004D338 46004482 */ mul.s $f18, $f8, $f0 -/* 04DF3C 8004D33C 46125101 */ sub.s $f4, $f10, $f18 -/* 04DF40 8004D340 E6240020 */ swc1 $f4, 0x20($s1) -/* 04DF44 8004D344 C606004C */ lwc1 $f6, 0x4c($s0) -/* 04DF48 8004D348 00000000 */ nop -/* 04DF4C 8004D34C 46003202 */ mul.s $f8, $f6, $f0 -/* 04DF50 8004D350 46088281 */ sub.s $f10, $f16, $f8 -/* 04DF54 8004D354 E62A0024 */ swc1 $f10, 0x24($s1) -/* 04DF58 8004D358 AE00010C */ sw $zero, 0x10c($s0) -/* 04DF5C 8004D35C 8D6BD554 */ lw $t3, %lo(D_8011D554)($t3) -/* 04DF60 8004D360 860201A2 */ lh $v0, 0x1a2($s0) -/* 04DF64 8004D364 860F01A0 */ lh $t7, 0x1a0($s0) -/* 04DF68 8004D368 01626023 */ subu $t4, $t3, $v0 -/* 04DF6C 8004D36C 000C68C3 */ sra $t5, $t4, 3 -/* 04DF70 8004D370 004D7021 */ addu $t6, $v0, $t5 -/* 04DF74 8004D374 A60E01A2 */ sh $t6, 0x1a2($s0) -/* 04DF78 8004D378 861801A2 */ lh $t8, 0x1a2($s0) -/* 04DF7C 8004D37C 3C0B8012 */ lui $t3, %hi(D_8011D558) # $t3, 0x8012 -/* 04DF80 8004D380 01F8C821 */ addu $t9, $t7, $t8 -/* 04DF84 8004D384 A6390000 */ sh $t9, ($s1) -/* 04DF88 8004D388 860301A6 */ lh $v1, 0x1a6($s0) -/* 04DF8C 8004D38C 8D6BD558 */ lw $t3, %lo(D_8011D558)($t3) -/* 04DF90 8004D390 860F01A4 */ lh $t7, 0x1a4($s0) -/* 04DF94 8004D394 01636023 */ subu $t4, $t3, $v1 -/* 04DF98 8004D398 000C68C3 */ sra $t5, $t4, 3 -/* 04DF9C 8004D39C 006D7021 */ addu $t6, $v1, $t5 -/* 04DFA0 8004D3A0 A60E01A6 */ sh $t6, 0x1a6($s0) -/* 04DFA4 8004D3A4 861801A6 */ lh $t8, 0x1a6($s0) -/* 04DFA8 8004D3A8 C7A200DC */ lwc1 $f2, 0xdc($sp) -/* 04DFAC 8004D3AC C620001C */ lwc1 $f0, 0x1c($s1) -/* 04DFB0 8004D3B0 01F8C821 */ addu $t9, $t7, $t8 -/* 04DFB4 8004D3B4 C62C0024 */ lwc1 $f12, 0x24($s1) -/* 04DFB8 8004D3B8 A6390004 */ sh $t9, 4($s1) -/* 04DFBC 8004D3BC 46020482 */ mul.s $f18, $f0, $f2 -/* 04DFC0 8004D3C0 A20001D2 */ sb $zero, 0x1d2($s0) -/* 04DFC4 8004D3C4 C6240020 */ lwc1 $f4, 0x20($s1) -/* 04DFC8 8004D3C8 00000000 */ nop -/* 04DFCC 8004D3CC 46022182 */ mul.s $f6, $f4, $f2 -/* 04DFD0 8004D3D0 44059000 */ mfc1 $a1, $f18 -/* 04DFD4 8004D3D4 46026402 */ mul.s $f16, $f12, $f2 -/* 04DFD8 8004D3D8 44063000 */ mfc1 $a2, $f6 -/* 04DFDC 8004D3DC 44078000 */ mfc1 $a3, $f16 -/* 04DFE0 8004D3E0 0C00455C */ jal func_80011570 -/* 04DFE4 8004D3E4 00000000 */ nop -/* 04DFE8 8004D3E8 3C098012 */ lui $t1, %hi(D_8011D55C) # $t1, 0x8012 -/* 04DFEC 8004D3EC 2529D55C */ addiu $t1, %lo(D_8011D55C) # addiu $t1, $t1, -0x2aa4 -/* 04DFF0 8004D3F0 10400006 */ beqz $v0, .L8004D40C -/* 04DFF4 8004D3F4 2408FFFF */ li $t0, -1 -/* 04DFF8 8004D3F8 8D2B0000 */ lw $t3, ($t1) -/* 04DFFC 8004D3FC 240C0001 */ li $t4, 1 -/* 04E000 8004D400 110B0002 */ beq $t0, $t3, .L8004D40C -/* 04E004 8004D404 00000000 */ nop -/* 04E008 8004D408 A3AC003F */ sb $t4, 0x3f($sp) -.L8004D40C: -/* 04E00C 8004D40C 8D2D0000 */ lw $t5, ($t1) -/* 04E010 8004D410 8FA600D8 */ lw $a2, 0xd8($sp) -/* 04E014 8004D414 150D0007 */ bne $t0, $t5, .L8004D434 -/* 04E018 8004D418 02202025 */ move $a0, $s1 -/* 04E01C 8004D41C 8FA600D8 */ lw $a2, 0xd8($sp) -/* 04E020 8004D420 02202025 */ move $a0, $s1 -/* 04E024 8004D424 0C0156A1 */ jal func_80055A84 -/* 04E028 8004D428 02002825 */ move $a1, $s0 -/* 04E02C 8004D42C 10000004 */ b .L8004D440 -/* 04E030 8004D430 3C013F80 */ li $at, 0x3F800000 # 1.000000 -.L8004D434: -/* 04E034 8004D434 0C0153F4 */ jal func_80054FD0 -/* 04E038 8004D438 02002825 */ move $a1, $s0 -/* 04E03C 8004D43C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -.L8004D440: -/* 04E040 8004D440 44814000 */ mtc1 $at, $f8 -/* 04E044 8004D444 C7AA00DC */ lwc1 $f10, 0xdc($sp) -/* 04E048 8004D448 C632000C */ lwc1 $f18, 0xc($s1) -/* 04E04C 8004D44C 460A4083 */ div.s $f2, $f8, $f10 -/* 04E050 8004D450 C7A400B8 */ lwc1 $f4, 0xb8($sp) -/* 04E054 8004D454 C7A800B4 */ lwc1 $f8, 0xb4($sp) -/* 04E058 8004D458 46049181 */ sub.s $f6, $f18, $f4 -/* 04E05C 8004D45C C6300010 */ lwc1 $f16, 0x10($s1) -/* 04E060 8004D460 C6240014 */ lwc1 $f4, 0x14($s1) -/* 04E064 8004D464 46088281 */ sub.s $f10, $f16, $f8 -/* 04E068 8004D468 862E0000 */ lh $t6, ($s1) -/* 04E06C 8004D46C 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 -/* 04E070 8004D470 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 -/* 04E074 8004D474 000E7823 */ negu $t7, $t6 -/* 04E078 8004D478 44807000 */ mtc1 $zero, $f14 -/* 04E07C 8004D47C 46023002 */ mul.s $f0, $f6, $f2 -/* 04E080 8004D480 44814000 */ mtc1 $at, $f8 -/* 04E084 8004D484 27A40048 */ addiu $a0, $sp, 0x48 -/* 04E088 8004D488 46025482 */ mul.s $f18, $f10, $f2 -/* 04E08C 8004D48C E6320020 */ swc1 $f18, 0x20($s1) -/* 04E090 8004D490 C7A600B0 */ lwc1 $f6, 0xb0($sp) -/* 04E094 8004D494 E620001C */ swc1 $f0, 0x1c($s1) -/* 04E098 8004D498 46062401 */ sub.s $f16, $f4, $f6 -/* 04E09C 8004D49C 46028302 */ mul.s $f12, $f16, $f2 -/* 04E0A0 8004D4A0 E62C0024 */ swc1 $f12, 0x24($s1) -/* 04E0A4 8004D4A4 A4AF0000 */ sh $t7, ($a1) -/* 04E0A8 8004D4A8 86380002 */ lh $t8, 2($s1) -/* 04E0AC 8004D4AC A4A00004 */ sh $zero, 4($a1) -/* 04E0B0 8004D4B0 0018C823 */ negu $t9, $t8 -/* 04E0B4 8004D4B4 A4B90002 */ sh $t9, 2($a1) -/* 04E0B8 8004D4B8 E4AE000C */ swc1 $f14, 0xc($a1) -/* 04E0BC 8004D4BC E4AE0010 */ swc1 $f14, 0x10($a1) -/* 04E0C0 8004D4C0 E4AE0014 */ swc1 $f14, 0x14($a1) -/* 04E0C4 8004D4C4 0C01BF9D */ jal func_8006FE74 -/* 04E0C8 8004D4C8 E4A80008 */ swc1 $f8, 8($a1) -/* 04E0CC 8004D4CC 8E25001C */ lw $a1, 0x1c($s1) -/* 04E0D0 8004D4D0 8E260020 */ lw $a2, 0x20($s1) -/* 04E0D4 8004D4D4 8E270024 */ lw $a3, 0x24($s1) -/* 04E0D8 8004D4D8 260B0030 */ addiu $t3, $s0, 0x30 -/* 04E0DC 8004D4DC 260C0034 */ addiu $t4, $s0, 0x34 -/* 04E0E0 8004D4E0 260D002C */ addiu $t5, $s0, 0x2c -/* 04E0E4 8004D4E4 AFAD0018 */ sw $t5, 0x18($sp) -/* 04E0E8 8004D4E8 AFAC0014 */ sw $t4, 0x14($sp) -/* 04E0EC 8004D4EC AFAB0010 */ sw $t3, 0x10($sp) -/* 04E0F0 8004D4F0 0C01BD93 */ jal func_8006F64C -/* 04E0F4 8004D4F4 27A40048 */ addiu $a0, $sp, 0x48 -/* 04E0F8 8004D4F8 8FA700DC */ lw $a3, 0xdc($sp) -/* 04E0FC 8004D4FC 02202025 */ move $a0, $s1 -/* 04E100 8004D500 02002825 */ move $a1, $s0 -/* 04E104 8004D504 0C01602D */ jal func_800580B4 -/* 04E108 8004D508 24060006 */ li $a2, 6 -/* 04E10C 8004D50C 8E220060 */ lw $v0, 0x60($s1) -/* 04E110 8004D510 02202025 */ move $a0, $s1 -/* 04E114 8004D514 10400013 */ beqz $v0, .L8004D564 -/* 04E118 8004D518 83B9003F */ lb $t9, 0x3f($sp) -/* 04E11C 8004D51C 820E01D7 */ lb $t6, 0x1d7($s0) -/* 04E120 8004D520 00000000 */ nop -/* 04E124 8004D524 15C0000F */ bnez $t6, .L8004D564 -/* 04E128 8004D528 83B9003F */ lb $t9, 0x3f($sp) -/* 04E12C 8004D52C 8C4F0000 */ lw $t7, ($v0) -/* 04E130 8004D530 00000000 */ nop -/* 04E134 8004D534 29E10004 */ slti $at, $t7, 4 -/* 04E138 8004D538 1420000A */ bnez $at, .L8004D564 -/* 04E13C 8004D53C 83B9003F */ lb $t9, 0x3f($sp) -/* 04E140 8004D540 8C45000C */ lw $a1, 0xc($v0) -/* 04E144 8004D544 00000000 */ nop -/* 04E148 8004D548 A4A00000 */ sh $zero, ($a1) -/* 04E14C 8004D54C 8E380060 */ lw $t8, 0x60($s1) -/* 04E150 8004D550 00000000 */ nop -/* 04E154 8004D554 8F050010 */ lw $a1, 0x10($t8) -/* 04E158 8004D558 00000000 */ nop -/* 04E15C 8004D55C A4A00000 */ sh $zero, ($a1) -/* 04E160 8004D560 83B9003F */ lb $t9, 0x3f($sp) -.L8004D564: -/* 04E164 8004D564 02002825 */ move $a1, $s0 -/* 04E168 8004D568 13200005 */ beqz $t9, .L8004D580 -/* 04E16C 8004D56C 8FBF002C */ lw $ra, 0x2c($sp) -/* 04E170 8004D570 820B01D7 */ lb $t3, 0x1d7($s0) -/* 04E174 8004D574 0C008C34 */ jal func_800230D0 -/* 04E178 8004D578 A20B01D6 */ sb $t3, 0x1d6($s0) -/* 04E17C 8004D57C 8FBF002C */ lw $ra, 0x2c($sp) -.L8004D580: -/* 04E180 8004D580 8FB00024 */ lw $s0, 0x24($sp) -/* 04E184 8004D584 8FB10028 */ lw $s1, 0x28($sp) -/* 04E188 8004D588 03E00008 */ jr $ra -/* 04E18C 8004D58C 27BD00D8 */ addiu $sp, $sp, 0xd8 - -glabel func_8004D590 -/* 04E190 8004D590 3C0142F0 */ li $at, 0x42F00000 # 120.000000 -/* 04E194 8004D594 3C028012 */ lui $v0, %hi(D_8011D540) # $v0, 0x8012 -/* 04E198 8004D598 44810000 */ mtc1 $at, $f0 -/* 04E19C 8004D59C 8C42D540 */ lw $v0, %lo(D_8011D540)($v0) -/* 04E1A0 8004D5A0 27BDFF58 */ addiu $sp, $sp, -0xa8 -/* 04E1A4 8004D5A4 2841003D */ slti $at, $v0, 0x3d -/* 04E1A8 8004D5A8 AFBF002C */ sw $ra, 0x2c($sp) -/* 04E1AC 8004D5AC AFB00028 */ sw $s0, 0x28($sp) -/* 04E1B0 8004D5B0 E7AC00A8 */ swc1 $f12, 0xa8($sp) -/* 04E1B4 8004D5B4 AFA500AC */ sw $a1, 0xac($sp) -/* 04E1B8 8004D5B8 14200009 */ bnez $at, .L8004D5E0 -/* 04E1BC 8004D5BC 46000386 */ mov.s $f14, $f0 -/* 04E1C0 8004D5C0 244EFFC4 */ addiu $t6, $v0, -0x3c -/* 04E1C4 8004D5C4 448E2000 */ mtc1 $t6, $f4 -/* 04E1C8 8004D5C8 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 04E1CC 8004D5CC 468021A0 */ cvt.s.w $f6, $f4 -/* 04E1D0 8004D5D0 44814000 */ mtc1 $at, $f8 -/* 04E1D4 8004D5D4 00000000 */ nop -/* 04E1D8 8004D5D8 46083282 */ mul.s $f10, $f6, $f8 -/* 04E1DC 8004D5DC 460A0380 */ add.s $f14, $f0, $f10 -.L8004D5E0: -/* 04E1E0 8004D5E0 84CF01A0 */ lh $t7, 0x1a0($a2) -/* 04E1E4 8004D5E4 34188000 */ li $t8, 32768 -/* 04E1E8 8004D5E8 030FC823 */ subu $t9, $t8, $t7 -/* 04E1EC 8004D5EC A4D90196 */ sh $t9, 0x196($a2) -/* 04E1F0 8004D5F0 E7AE0094 */ swc1 $f14, 0x94($sp) -/* 04E1F4 8004D5F4 0C019884 */ jal func_80066210 -/* 04E1F8 8004D5F8 AFA600B0 */ sw $a2, 0xb0($sp) -/* 04E1FC 8004D5FC 24040001 */ li $a0, 1 -/* 04E200 8004D600 C7AE0094 */ lwc1 $f14, 0x94($sp) -/* 04E204 8004D604 14440004 */ bne $v0, $a0, .L8004D618 -/* 04E208 8004D608 3C108012 */ lui $s0, %hi(D_8011D508) # $s0, 0x8012 -/* 04E20C 8004D60C 3C014320 */ li $at, 0x43200000 # 160.000000 -/* 04E210 8004D610 44817000 */ mtc1 $at, $f14 -/* 04E214 8004D614 00000000 */ nop -.L8004D618: -/* 04E218 8004D618 2610D508 */ addiu $s0, %lo(D_8011D508) # addiu $s0, $s0, -0x2af8 -/* 04E21C 8004D61C 8E020000 */ lw $v0, ($s0) -/* 04E220 8004D620 44804000 */ mtc1 $zero, $f8 -/* 04E224 8004D624 9043003B */ lbu $v1, 0x3b($v0) -/* 04E228 8004D628 00000000 */ nop -/* 04E22C 8004D62C 14830004 */ bne $a0, $v1, .L8004D640 -/* 04E230 8004D630 3C01420C */ li $at, 0x420C0000 # 35.000000 -/* 04E234 8004D634 44818000 */ mtc1 $at, $f16 -/* 04E238 8004D638 00000000 */ nop -/* 04E23C 8004D63C 46107380 */ add.s $f14, $f14, $f16 -.L8004D640: -/* 04E240 8004D640 14830004 */ bne $a0, $v1, .L8004D654 -/* 04E244 8004D644 3C01420C */ li $at, 0x420C0000 # 35.000000 -/* 04E248 8004D648 44819000 */ mtc1 $at, $f18 -/* 04E24C 8004D64C 00000000 */ nop -/* 04E250 8004D650 46127381 */ sub.s $f14, $f14, $f18 -.L8004D654: -/* 04E254 8004D654 C440001C */ lwc1 $f0, 0x1c($v0) -/* 04E258 8004D658 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 04E25C 8004D65C 46007101 */ sub.s $f4, $f14, $f0 -/* 04E260 8004D660 44814800 */ mtc1 $at, $f9 -/* 04E264 8004D664 460021A1 */ cvt.d.s $f6, $f4 -/* 04E268 8004D668 46283282 */ mul.d $f10, $f6, $f8 -/* 04E26C 8004D66C 46000421 */ cvt.d.s $f16, $f0 -/* 04E270 8004D670 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 -/* 04E274 8004D674 340A8000 */ li $t2, 32768 -/* 04E278 8004D678 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 -/* 04E27C 8004D67C 462A8480 */ add.d $f18, $f16, $f10 -/* 04E280 8004D680 44801000 */ mtc1 $zero, $f2 -/* 04E284 8004D684 46209120 */ cvt.s.d $f4, $f18 -/* 04E288 8004D688 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 04E28C 8004D68C E444001C */ swc1 $f4, 0x1c($v0) -/* 04E290 8004D690 8E020000 */ lw $v0, ($s0) -/* 04E294 8004D694 44813000 */ mtc1 $at, $f6 -/* 04E298 8004D698 84490000 */ lh $t1, ($v0) -/* 04E29C 8004D69C 27A40048 */ addiu $a0, $sp, 0x48 -/* 04E2A0 8004D6A0 01495823 */ subu $t3, $t2, $t1 -/* 04E2A4 8004D6A4 A4AB0000 */ sh $t3, ($a1) -/* 04E2A8 8004D6A8 844C0002 */ lh $t4, 2($v0) -/* 04E2AC 8004D6AC A4A00004 */ sh $zero, 4($a1) -/* 04E2B0 8004D6B0 000C6823 */ negu $t5, $t4 -/* 04E2B4 8004D6B4 A4AD0002 */ sh $t5, 2($a1) -/* 04E2B8 8004D6B8 E4A2000C */ swc1 $f2, 0xc($a1) -/* 04E2BC 8004D6BC E4A20010 */ swc1 $f2, 0x10($a1) -/* 04E2C0 8004D6C0 E4A20014 */ swc1 $f2, 0x14($a1) -/* 04E2C4 8004D6C4 0C01BF0C */ jal func_8006FC30 -/* 04E2C8 8004D6C8 E4A60008 */ swc1 $f6, 8($a1) -/* 04E2CC 8004D6CC 8E0E0000 */ lw $t6, ($s0) -/* 04E2D0 8004D6D0 44801000 */ mtc1 $zero, $f2 -/* 04E2D4 8004D6D4 8DC7001C */ lw $a3, 0x1c($t6) -/* 04E2D8 8004D6D8 27B80090 */ addiu $t8, $sp, 0x90 -/* 04E2DC 8004D6DC 27AF008C */ addiu $t7, $sp, 0x8c -/* 04E2E0 8004D6E0 27B90088 */ addiu $t9, $sp, 0x88 -/* 04E2E4 8004D6E4 44051000 */ mfc1 $a1, $f2 -/* 04E2E8 8004D6E8 44061000 */ mfc1 $a2, $f2 -/* 04E2EC 8004D6EC AFB90018 */ sw $t9, 0x18($sp) -/* 04E2F0 8004D6F0 AFAF0014 */ sw $t7, 0x14($sp) -/* 04E2F4 8004D6F4 AFB80010 */ sw $t8, 0x10($sp) -/* 04E2F8 8004D6F8 0C01BD93 */ jal func_8006F64C -/* 04E2FC 8004D6FC 27A40048 */ addiu $a0, $sp, 0x48 -/* 04E300 8004D700 8FA200AC */ lw $v0, 0xac($sp) -/* 04E304 8004D704 C7B00090 */ lwc1 $f16, 0x90($sp) -/* 04E308 8004D708 C448000C */ lwc1 $f8, 0xc($v0) -/* 04E30C 8004D70C 8E0A0000 */ lw $t2, ($s0) -/* 04E310 8004D710 46104280 */ add.s $f10, $f8, $f16 -/* 04E314 8004D714 24040800 */ li $a0, 2048 -/* 04E318 8004D718 E54A000C */ swc1 $f10, 0xc($t2) -/* 04E31C 8004D71C C7A4008C */ lwc1 $f4, 0x8c($sp) -/* 04E320 8004D720 C4520010 */ lwc1 $f18, 0x10($v0) -/* 04E324 8004D724 8E090000 */ lw $t1, ($s0) -/* 04E328 8004D728 46049180 */ add.s $f6, $f18, $f4 -/* 04E32C 8004D72C E5260010 */ swc1 $f6, 0x10($t1) -/* 04E330 8004D730 C7B00088 */ lwc1 $f16, 0x88($sp) -/* 04E334 8004D734 C4480014 */ lwc1 $f8, 0x14($v0) -/* 04E338 8004D738 8E0B0000 */ lw $t3, ($s0) -/* 04E33C 8004D73C 46104280 */ add.s $f10, $f8, $f16 -/* 04E340 8004D740 0C01C1F1 */ jal func_800707C4 -/* 04E344 8004D744 E56A0014 */ swc1 $f10, 0x14($t3) -/* 04E348 8004D748 8E0C0000 */ lw $t4, ($s0) -/* 04E34C 8004D74C 44801000 */ mtc1 $zero, $f2 -/* 04E350 8004D750 C592001C */ lwc1 $f18, 0x1c($t4) -/* 04E354 8004D754 27AD0090 */ addiu $t5, $sp, 0x90 -/* 04E358 8004D758 46120102 */ mul.s $f4, $f0, $f18 -/* 04E35C 8004D75C 27AE008C */ addiu $t6, $sp, 0x8c -/* 04E360 8004D760 27B80088 */ addiu $t8, $sp, 0x88 -/* 04E364 8004D764 44051000 */ mfc1 $a1, $f2 -/* 04E368 8004D768 44062000 */ mfc1 $a2, $f4 -/* 04E36C 8004D76C 44071000 */ mfc1 $a3, $f2 -/* 04E370 8004D770 AFB80018 */ sw $t8, 0x18($sp) -/* 04E374 8004D774 AFAE0014 */ sw $t6, 0x14($sp) -/* 04E378 8004D778 AFAD0010 */ sw $t5, 0x10($sp) -/* 04E37C 8004D77C 0C01BD93 */ jal func_8006F64C -/* 04E380 8004D780 27A40048 */ addiu $a0, $sp, 0x48 -/* 04E384 8004D784 8E020000 */ lw $v0, ($s0) -/* 04E388 8004D788 C7A80090 */ lwc1 $f8, 0x90($sp) -/* 04E38C 8004D78C C446000C */ lwc1 $f6, 0xc($v0) -/* 04E390 8004D790 34088001 */ li $t0, 32769 -/* 04E394 8004D794 46083400 */ add.s $f16, $f6, $f8 -/* 04E398 8004D798 E450000C */ swc1 $f16, 0xc($v0) -/* 04E39C 8004D79C 8E020000 */ lw $v0, ($s0) -/* 04E3A0 8004D7A0 C7B2008C */ lwc1 $f18, 0x8c($sp) -/* 04E3A4 8004D7A4 C44A0010 */ lwc1 $f10, 0x10($v0) -/* 04E3A8 8004D7A8 00000000 */ nop -/* 04E3AC 8004D7AC 46125100 */ add.s $f4, $f10, $f18 -/* 04E3B0 8004D7B0 E4440010 */ swc1 $f4, 0x10($v0) -/* 04E3B4 8004D7B4 8E020000 */ lw $v0, ($s0) -/* 04E3B8 8004D7B8 C7A80088 */ lwc1 $f8, 0x88($sp) -/* 04E3BC 8004D7BC C4460014 */ lwc1 $f6, 0x14($v0) -/* 04E3C0 8004D7C0 00000000 */ nop -/* 04E3C4 8004D7C4 46083400 */ add.s $f16, $f6, $f8 -/* 04E3C8 8004D7C8 E4500014 */ swc1 $f16, 0x14($v0) -/* 04E3CC 8004D7CC 8FAF00AC */ lw $t7, 0xac($sp) -/* 04E3D0 8004D7D0 8E020000 */ lw $v0, ($s0) -/* 04E3D4 8004D7D4 85E40004 */ lh $a0, 4($t7) -/* 04E3D8 8004D7D8 84460004 */ lh $a2, 4($v0) -/* 04E3DC 8004D7DC 00042023 */ negu $a0, $a0 -/* 04E3E0 8004D7E0 3099FFFF */ andi $t9, $a0, 0xffff -/* 04E3E4 8004D7E4 30CAFFFF */ andi $t2, $a2, 0xffff -/* 04E3E8 8004D7E8 032A1823 */ subu $v1, $t9, $t2 -/* 04E3EC 8004D7EC 0068082A */ slt $at, $v1, $t0 -/* 04E3F0 8004D7F0 14200003 */ bnez $at, .L8004D800 -/* 04E3F4 8004D7F4 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 04E3F8 8004D7F8 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 04E3FC 8004D7FC 00611821 */ addu $v1, $v1, $at -.L8004D800: -/* 04E400 8004D800 28618000 */ slti $at, $v1, -0x8000 -/* 04E404 8004D804 10200002 */ beqz $at, .L8004D810 -/* 04E408 8004D808 3401FFFF */ li $at, 65535 -/* 04E40C 8004D80C 00611821 */ addu $v1, $v1, $at -.L8004D810: -/* 04E410 8004D810 4449F800 */ cfc1 $t1, $31 -/* 04E414 8004D814 C7AA00A8 */ lwc1 $f10, 0xa8($sp) -/* 04E418 8004D818 35210003 */ ori $at, $t1, 3 -/* 04E41C 8004D81C 38210002 */ xori $at, $at, 2 -/* 04E420 8004D820 44C1F800 */ ctc1 $at, $31 -/* 04E424 8004D824 00000000 */ nop -/* 04E428 8004D828 460054A4 */ cvt.w.s $f18, $f10 -/* 04E42C 8004D82C 44059000 */ mfc1 $a1, $f18 -/* 04E430 8004D830 44C9F800 */ ctc1 $t1, $31 -/* 04E434 8004D834 00650019 */ multu $v1, $a1 -/* 04E438 8004D838 00005812 */ mflo $t3 -/* 04E43C 8004D83C 000B6103 */ sra $t4, $t3, 4 -/* 04E440 8004D840 00CC6821 */ addu $t5, $a2, $t4 -/* 04E444 8004D844 A44D0004 */ sh $t5, 4($v0) -/* 04E448 8004D848 8FAE00AC */ lw $t6, 0xac($sp) -/* 04E44C 8004D84C 8E020000 */ lw $v0, ($s0) -/* 04E450 8004D850 85C40002 */ lh $a0, 2($t6) -/* 04E454 8004D854 84470002 */ lh $a3, 2($v0) -/* 04E458 8004D858 00042023 */ negu $a0, $a0 -/* 04E45C 8004D85C 30F8FFFF */ andi $t8, $a3, 0xffff -/* 04E460 8004D860 00981823 */ subu $v1, $a0, $t8 -/* 04E464 8004D864 0068082A */ slt $at, $v1, $t0 -/* 04E468 8004D868 14200003 */ bnez $at, .L8004D878 -/* 04E46C 8004D86C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 04E470 8004D870 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 04E474 8004D874 00611821 */ addu $v1, $v1, $at -.L8004D878: -/* 04E478 8004D878 28618000 */ slti $at, $v1, -0x8000 -/* 04E47C 8004D87C 10200002 */ beqz $at, .L8004D888 -/* 04E480 8004D880 3401FFFF */ li $at, 65535 -/* 04E484 8004D884 00611821 */ addu $v1, $v1, $at -.L8004D888: -/* 04E488 8004D888 00650019 */ multu $v1, $a1 -/* 04E48C 8004D88C 00007812 */ mflo $t7 -/* 04E490 8004D890 000FC903 */ sra $t9, $t7, 4 -/* 04E494 8004D894 00F95021 */ addu $t2, $a3, $t9 -/* 04E498 8004D898 A44A0002 */ sh $t2, 2($v0) -/* 04E49C 8004D89C 8FA900B0 */ lw $t1, 0xb0($sp) -/* 04E4A0 8004D8A0 8E0C0000 */ lw $t4, ($s0) -/* 04E4A4 8004D8A4 852B0196 */ lh $t3, 0x196($t1) -/* 04E4A8 8004D8A8 00000000 */ nop -/* 04E4AC 8004D8AC A58B0000 */ sh $t3, ($t4) -/* 04E4B0 8004D8B0 8E020000 */ lw $v0, ($s0) -/* 04E4B4 8004D8B4 00000000 */ nop -/* 04E4B8 8004D8B8 C44C000C */ lwc1 $f12, 0xc($v0) -/* 04E4BC 8004D8BC C44E0010 */ lwc1 $f14, 0x10($v0) -/* 04E4C0 8004D8C0 8C460014 */ lw $a2, 0x14($v0) -/* 04E4C4 8004D8C4 0C00A7C6 */ jal func_80029F18 -/* 04E4C8 8004D8C8 00000000 */ nop -/* 04E4CC 8004D8CC 2401FFFF */ li $at, -1 -/* 04E4D0 8004D8D0 10410004 */ beq $v0, $at, .L8004D8E4 -/* 04E4D4 8004D8D4 00000000 */ nop -/* 04E4D8 8004D8D8 8E0D0000 */ lw $t5, ($s0) -/* 04E4DC 8004D8DC 00000000 */ nop -/* 04E4E0 8004D8E0 A5A20034 */ sh $v0, 0x34($t5) -.L8004D8E4: -/* 04E4E4 8004D8E4 8E0E0000 */ lw $t6, ($s0) -/* 04E4E8 8004D8E8 8FAF00B0 */ lw $t7, 0xb0($sp) -/* 04E4EC 8004D8EC 85D80000 */ lh $t8, ($t6) -/* 04E4F0 8004D8F0 00000000 */ nop -/* 04E4F4 8004D8F4 A5F80196 */ sh $t8, 0x196($t7) -/* 04E4F8 8004D8F8 8E020000 */ lw $v0, ($s0) -/* 04E4FC 8004D8FC 00000000 */ nop -/* 04E500 8004D900 C444000C */ lwc1 $f4, 0xc($v0) -/* 04E504 8004D904 C4460024 */ lwc1 $f6, 0x24($v0) -/* 04E508 8004D908 00000000 */ nop -/* 04E50C 8004D90C 46062200 */ add.s $f8, $f4, $f6 -/* 04E510 8004D910 E448000C */ swc1 $f8, 0xc($v0) -/* 04E514 8004D914 8E020000 */ lw $v0, ($s0) -/* 04E518 8004D918 00000000 */ nop -/* 04E51C 8004D91C C4500010 */ lwc1 $f16, 0x10($v0) -/* 04E520 8004D920 C44A0028 */ lwc1 $f10, 0x28($v0) -/* 04E524 8004D924 00000000 */ nop -/* 04E528 8004D928 460A8480 */ add.s $f18, $f16, $f10 -/* 04E52C 8004D92C E4520010 */ swc1 $f18, 0x10($v0) -/* 04E530 8004D930 8E020000 */ lw $v0, ($s0) -/* 04E534 8004D934 00000000 */ nop -/* 04E538 8004D938 C4440014 */ lwc1 $f4, 0x14($v0) -/* 04E53C 8004D93C C446002C */ lwc1 $f6, 0x2c($v0) -/* 04E540 8004D940 00000000 */ nop -/* 04E544 8004D944 46062200 */ add.s $f8, $f4, $f6 -/* 04E548 8004D948 E4480014 */ swc1 $f8, 0x14($v0) -/* 04E54C 8004D94C 8FBF002C */ lw $ra, 0x2c($sp) -/* 04E550 8004D950 8FB00028 */ lw $s0, 0x28($sp) -/* 04E554 8004D954 03E00008 */ jr $ra -/* 04E558 8004D958 27BD00A8 */ addiu $sp, $sp, 0xa8 - -glabel func_8004D95C -/* 04E55C 8004D95C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 04E560 8004D960 AFBF001C */ sw $ra, 0x1c($sp) -/* 04E564 8004D964 AFB00018 */ sw $s0, 0x18($sp) -/* 04E568 8004D968 AFA40028 */ sw $a0, 0x28($sp) -/* 04E56C 8004D96C AFA5002C */ sw $a1, 0x2c($sp) -/* 04E570 8004D970 8CEE0118 */ lw $t6, 0x118($a3) -/* 04E574 8004D974 00C08025 */ move $s0, $a2 -/* 04E578 8004D978 11C00005 */ beqz $t6, .L8004D990 -/* 04E57C 8004D97C 00C02025 */ move $a0, $a2 -/* 04E580 8004D980 0C001AB2 */ jal func_80006AC8 -/* 04E584 8004D984 AFA70034 */ sw $a3, 0x34($sp) -/* 04E588 8004D988 8FA70034 */ lw $a3, 0x34($sp) -/* 04E58C 8004D98C 00000000 */ nop -.L8004D990: -/* 04E590 8004D990 0C008D07 */ jal func_8002341C -/* 04E594 8004D994 AFA70034 */ sw $a3, 0x34($sp) -/* 04E598 8004D998 8FA70034 */ lw $a3, 0x34($sp) -/* 04E59C 8004D99C 10400008 */ beqz $v0, .L8004D9C0 -/* 04E5A0 8004D9A0 2408000A */ li $t0, 10 -/* 04E5A4 8004D9A4 80EF01D6 */ lb $t7, 0x1d6($a3) -/* 04E5A8 8004D9A8 2401000A */ li $at, 10 -/* 04E5AC 8004D9AC 15E10004 */ bne $t7, $at, .L8004D9C0 -/* 04E5B0 8004D9B0 00000000 */ nop -/* 04E5B4 8004D9B4 8E18004C */ lw $t8, 0x4c($s0) -/* 04E5B8 8004D9B8 00000000 */ nop -/* 04E5BC 8004D9BC A7000014 */ sh $zero, 0x14($t8) -.L8004D9C0: -/* 04E5C0 8004D9C0 86190018 */ lh $t9, 0x18($s0) -/* 04E5C4 8004D9C4 02003025 */ move $a2, $s0 -/* 04E5C8 8004D9C8 A7B90026 */ sh $t9, 0x26($sp) -/* 04E5CC 8004D9CC A0E801D6 */ sb $t0, 0x1d6($a3) -/* 04E5D0 8004D9D0 8FA5002C */ lw $a1, 0x2c($sp) -/* 04E5D4 8004D9D4 8FA40028 */ lw $a0, 0x28($sp) -/* 04E5D8 8004D9D8 0C0125E5 */ jal func_80049794 -/* 04E5DC 8004D9DC AFA70034 */ sw $a3, 0x34($sp) -/* 04E5E0 8004D9E0 8FA70034 */ lw $a3, 0x34($sp) -/* 04E5E4 8004D9E4 2401000A */ li $at, 10 -/* 04E5E8 8004D9E8 80E901D7 */ lb $t1, 0x1d7($a3) -/* 04E5EC 8004D9EC 00000000 */ nop -/* 04E5F0 8004D9F0 A0E901D6 */ sb $t1, 0x1d6($a3) -/* 04E5F4 8004D9F4 A200003B */ sb $zero, 0x3b($s0) -/* 04E5F8 8004D9F8 80EA01D6 */ lb $t2, 0x1d6($a3) -/* 04E5FC 8004D9FC 00000000 */ nop -/* 04E600 8004DA00 15410028 */ bne $t2, $at, .L8004DAA4 -/* 04E604 8004DA04 8FBF001C */ lw $ra, 0x1c($sp) -/* 04E608 8004DA08 8CE20154 */ lw $v0, 0x154($a3) -/* 04E60C 8004DA0C 00000000 */ nop -/* 04E610 8004DA10 10400024 */ beqz $v0, .L8004DAA4 -/* 04E614 8004DA14 8FBF001C */ lw $ra, 0x1c($sp) -/* 04E618 8004DA18 C604000C */ lwc1 $f4, 0xc($s0) -/* 04E61C 8004DA1C 02002025 */ move $a0, $s0 -/* 04E620 8004DA20 E444000C */ swc1 $f4, 0xc($v0) -/* 04E624 8004DA24 8CEB0154 */ lw $t3, 0x154($a3) -/* 04E628 8004DA28 C6060010 */ lwc1 $f6, 0x10($s0) -/* 04E62C 8004DA2C 00000000 */ nop -/* 04E630 8004DA30 E5660010 */ swc1 $f6, 0x10($t3) -/* 04E634 8004DA34 8CEC0154 */ lw $t4, 0x154($a3) -/* 04E638 8004DA38 C6080014 */ lwc1 $f8, 0x14($s0) -/* 04E63C 8004DA3C 00000000 */ nop -/* 04E640 8004DA40 E5880014 */ swc1 $f8, 0x14($t4) -/* 04E644 8004DA44 8CEE0154 */ lw $t6, 0x154($a3) -/* 04E648 8004DA48 860D002E */ lh $t5, 0x2e($s0) -/* 04E64C 8004DA4C 00000000 */ nop -/* 04E650 8004DA50 A5CD002E */ sh $t5, 0x2e($t6) -/* 04E654 8004DA54 8CF80154 */ lw $t8, 0x154($a3) -/* 04E658 8004DA58 860F0000 */ lh $t7, ($s0) -/* 04E65C 8004DA5C 00000000 */ nop -/* 04E660 8004DA60 A70F0000 */ sh $t7, ($t8) -/* 04E664 8004DA64 8CE80154 */ lw $t0, 0x154($a3) -/* 04E668 8004DA68 86190002 */ lh $t9, 2($s0) -/* 04E66C 8004DA6C 00000000 */ nop -/* 04E670 8004DA70 A5190002 */ sh $t9, 2($t0) -/* 04E674 8004DA74 8CEA0154 */ lw $t2, 0x154($a3) -/* 04E678 8004DA78 86090004 */ lh $t1, 4($s0) -/* 04E67C 8004DA7C 00000000 */ nop -/* 04E680 8004DA80 A5490004 */ sh $t1, 4($t2) -/* 04E684 8004DA84 A200003B */ sb $zero, 0x3b($s0) -/* 04E688 8004DA88 8FAC0028 */ lw $t4, 0x28($sp) -/* 04E68C 8004DA8C 87AB0026 */ lh $t3, 0x26($sp) -/* 04E690 8004DA90 00000000 */ nop -/* 04E694 8004DA94 016C6821 */ addu $t5, $t3, $t4 -/* 04E698 8004DA98 0C018703 */ jal func_80061C0C -/* 04E69C 8004DA9C A60D0018 */ sh $t5, 0x18($s0) -/* 04E6A0 8004DAA0 8FBF001C */ lw $ra, 0x1c($sp) -.L8004DAA4: -/* 04E6A4 8004DAA4 8FB00018 */ lw $s0, 0x18($sp) -/* 04E6A8 8004DAA8 03E00008 */ jr $ra -/* 04E6AC 8004DAAC 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_8004DAB0 -/* 04E6B0 8004DAB0 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 04E6B4 8004DAB4 44811000 */ mtc1 $at, $f2 -/* 04E6B8 8004DAB8 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 04E6BC 8004DABC 3C018012 */ lui $at, %hi(D_8011D53C) # $at, 0x8012 -/* 04E6C0 8004DAC0 AFBF001C */ sw $ra, 0x1c($sp) -/* 04E6C4 8004DAC4 AFB00018 */ sw $s0, 0x18($sp) -/* 04E6C8 8004DAC8 AC20D53C */ sw $zero, %lo(D_8011D53C)($at) -/* 04E6CC 8004DACC 84AE000C */ lh $t6, 0xc($a1) -/* 04E6D0 8004DAD0 8C900064 */ lw $s0, 0x64($a0) -/* 04E6D4 8004DAD4 A48E0000 */ sh $t6, ($a0) -/* 04E6D8 8004DAD8 84AF000A */ lh $t7, 0xa($a1) -/* 04E6DC 8004DADC 00803825 */ move $a3, $a0 -/* 04E6E0 8004DAE0 A48F0002 */ sh $t7, 2($a0) -/* 04E6E4 8004DAE4 84B80008 */ lh $t8, 8($a1) -/* 04E6E8 8004DAE8 2409FFFF */ li $t1, -1 -/* 04E6EC 8004DAEC A4980004 */ sh $t8, 4($a0) -/* 04E6F0 8004DAF0 84A6000E */ lh $a2, 0xe($a1) -/* 04E6F4 8004DAF4 A2000194 */ sb $zero, 0x194($s0) -/* 04E6F8 8004DAF8 E602008C */ swc1 $f2, 0x8c($s0) -/* 04E6FC 8004DAFC 04C00010 */ bltz $a2, .L8004DB40 -/* 04E700 8004DB00 E6020090 */ swc1 $f2, 0x90($s0) -/* 04E704 8004DB04 28C10004 */ slti $at, $a2, 4 -/* 04E708 8004DB08 1020000D */ beqz $at, .L8004DB40 -/* 04E70C 8004DB0C 00000000 */ nop -/* 04E710 8004DB10 AFA60028 */ sw $a2, 0x28($sp) -/* 04E714 8004DB14 0C003856 */ jal func_8000E158 -/* 04E718 8004DB18 AFA40030 */ sw $a0, 0x30($sp) -/* 04E71C 8004DB1C 8FA60028 */ lw $a2, 0x28($sp) -/* 04E720 8004DB20 8FA70030 */ lw $a3, 0x30($sp) -/* 04E724 8004DB24 10400003 */ beqz $v0, .L8004DB34 -/* 04E728 8004DB28 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 04E72C 8004DB2C 24190001 */ li $t9, 1 -/* 04E730 8004DB30 03263023 */ subu $a2, $t9, $a2 -.L8004DB34: -/* 04E734 8004DB34 44811000 */ mtc1 $at, $f2 -/* 04E738 8004DB38 10000002 */ b .L8004DB44 -/* 04E73C 8004DB3C A6060000 */ sh $a2, ($s0) -.L8004DB40: -/* 04E740 8004DB40 A6090000 */ sh $t1, ($s0) -.L8004DB44: -/* 04E744 8004DB44 84EA0000 */ lh $t2, ($a3) -/* 04E748 8004DB48 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 04E74C 8004DB4C A60A01A0 */ sh $t2, 0x1a0($s0) -/* 04E750 8004DB50 84EB0004 */ lh $t3, 4($a3) -/* 04E754 8004DB54 44812000 */ mtc1 $at, $f4 -/* 04E758 8004DB58 860C01A0 */ lh $t4, 0x1a0($s0) -/* 04E75C 8004DB5C A60B01A4 */ sh $t3, 0x1a4($s0) -/* 04E760 8004DB60 E60400C4 */ swc1 $f4, 0xc4($s0) -/* 04E764 8004DB64 A60C0196 */ sh $t4, 0x196($s0) -/* 04E768 8004DB68 C4E6000C */ lwc1 $f6, 0xc($a3) -/* 04E76C 8004DB6C 3C0141F0 */ li $at, 0x41F00000 # 30.000000 -/* 04E770 8004DB70 E60600D8 */ swc1 $f6, 0xd8($s0) -/* 04E774 8004DB74 44810000 */ mtc1 $at, $f0 -/* 04E778 8004DB78 C4E80010 */ lwc1 $f8, 0x10($a3) -/* 04E77C 8004DB7C 24180003 */ li $t8, 3 -/* 04E780 8004DB80 46004280 */ add.s $f10, $f8, $f0 -/* 04E784 8004DB84 24190001 */ li $t9, 1 -/* 04E788 8004DB88 E60A00DC */ swc1 $f10, 0xdc($s0) -/* 04E78C 8004DB8C C4F00014 */ lwc1 $f16, 0x14($a3) -/* 04E790 8004DB90 24090001 */ li $t1, 1 -/* 04E794 8004DB94 E61000E0 */ swc1 $f16, 0xe0($s0) -/* 04E798 8004DB98 C4F2000C */ lwc1 $f18, 0xc($a3) -/* 04E79C 8004DB9C 2401FFFF */ li $at, -1 -/* 04E7A0 8004DBA0 E61200E4 */ swc1 $f18, 0xe4($s0) -/* 04E7A4 8004DBA4 C4E40010 */ lwc1 $f4, 0x10($a3) -/* 04E7A8 8004DBA8 00000000 */ nop -/* 04E7AC 8004DBAC 46002180 */ add.s $f6, $f4, $f0 -/* 04E7B0 8004DBB0 E60600E8 */ swc1 $f6, 0xe8($s0) -/* 04E7B4 8004DBB4 C4E80014 */ lwc1 $f8, 0x14($a3) -/* 04E7B8 8004DBB8 00000000 */ nop -/* 04E7BC 8004DBBC E60800EC */ swc1 $f8, 0xec($s0) -/* 04E7C0 8004DBC0 C4EA000C */ lwc1 $f10, 0xc($a3) -/* 04E7C4 8004DBC4 00000000 */ nop -/* 04E7C8 8004DBC8 E60A00F0 */ swc1 $f10, 0xf0($s0) -/* 04E7CC 8004DBCC C4F00010 */ lwc1 $f16, 0x10($a3) -/* 04E7D0 8004DBD0 00000000 */ nop -/* 04E7D4 8004DBD4 46008480 */ add.s $f18, $f16, $f0 -/* 04E7D8 8004DBD8 E61200F4 */ swc1 $f18, 0xf4($s0) -/* 04E7DC 8004DBDC C4E40014 */ lwc1 $f4, 0x14($a3) -/* 04E7E0 8004DBE0 00000000 */ nop -/* 04E7E4 8004DBE4 E60400F8 */ swc1 $f4, 0xf8($s0) -/* 04E7E8 8004DBE8 C4E6000C */ lwc1 $f6, 0xc($a3) -/* 04E7EC 8004DBEC 00000000 */ nop -/* 04E7F0 8004DBF0 E60600FC */ swc1 $f6, 0xfc($s0) -/* 04E7F4 8004DBF4 C4E80010 */ lwc1 $f8, 0x10($a3) -/* 04E7F8 8004DBF8 00000000 */ nop -/* 04E7FC 8004DBFC 46004280 */ add.s $f10, $f8, $f0 -/* 04E800 8004DC00 E60A0100 */ swc1 $f10, 0x100($s0) -/* 04E804 8004DC04 C4F00014 */ lwc1 $f16, 0x14($a3) -/* 04E808 8004DC08 00000000 */ nop -/* 04E80C 8004DC0C E6100104 */ swc1 $f16, 0x104($s0) -/* 04E810 8004DC10 C4F2000C */ lwc1 $f18, 0xc($a3) -/* 04E814 8004DC14 00000000 */ nop -/* 04E818 8004DC18 E612005C */ swc1 $f18, 0x5c($s0) -/* 04E81C 8004DC1C C4E40010 */ lwc1 $f4, 0x10($a3) -/* 04E820 8004DC20 00000000 */ nop -/* 04E824 8004DC24 E6040060 */ swc1 $f4, 0x60($s0) -/* 04E828 8004DC28 C4E60014 */ lwc1 $f6, 0x14($a3) -/* 04E82C 8004DC2C 00000000 */ nop -/* 04E830 8004DC30 E6060064 */ swc1 $f6, 0x64($s0) -/* 04E834 8004DC34 8CED004C */ lw $t5, 0x4c($a3) -/* 04E838 8004DC38 C4E8000C */ lwc1 $f8, 0xc($a3) -/* 04E83C 8004DC3C 00000000 */ nop -/* 04E840 8004DC40 E5A80004 */ swc1 $f8, 4($t5) -/* 04E844 8004DC44 8CEE004C */ lw $t6, 0x4c($a3) -/* 04E848 8004DC48 C4EA0010 */ lwc1 $f10, 0x10($a3) -/* 04E84C 8004DC4C 00000000 */ nop -/* 04E850 8004DC50 E5CA0008 */ swc1 $f10, 8($t6) -/* 04E854 8004DC54 8CEF004C */ lw $t7, 0x4c($a3) -/* 04E858 8004DC58 C4F00014 */ lwc1 $f16, 0x14($a3) -/* 04E85C 8004DC5C 00000000 */ nop -/* 04E860 8004DC60 E5F0000C */ swc1 $f16, 0xc($t7) -/* 04E864 8004DC64 86020000 */ lh $v0, ($s0) -/* 04E868 8004DC68 A21801E2 */ sb $t8, 0x1e2($s0) -/* 04E86C 8004DC6C 00025080 */ sll $t2, $v0, 2 -/* 04E870 8004DC70 01425021 */ addu $t2, $t2, $v0 -/* 04E874 8004DC74 A61901AA */ sh $t9, 0x1aa($s0) -/* 04E878 8004DC78 A60901AE */ sh $t1, 0x1ae($s0) -/* 04E87C 8004DC7C A20A01E7 */ sb $t2, 0x1e7($s0) -/* 04E880 8004DC80 E60200A8 */ swc1 $f2, 0xa8($s0) -/* 04E884 8004DC84 A20001FD */ sb $zero, 0x1fd($s0) -/* 04E888 8004DC88 AE000178 */ sw $zero, 0x178($s0) -/* 04E88C 8004DC8C AE00017C */ sw $zero, 0x17c($s0) -/* 04E890 8004DC90 AE000180 */ sw $zero, 0x180($s0) -/* 04E894 8004DC94 AE000218 */ sw $zero, 0x218($s0) -/* 04E898 8004DC98 AE000220 */ sw $zero, 0x220($s0) -/* 04E89C 8004DC9C 1041002B */ beq $v0, $at, .L8004DD4C -/* 04E8A0 8004DCA0 AE00021C */ sw $zero, 0x21c($s0) -/* 04E8A4 8004DCA4 3C028012 */ lui $v0, %hi(D_8011D582) # $v0, 0x8012 -/* 04E8A8 8004DCA8 2442D582 */ addiu $v0, %lo(D_8011D582) # addiu $v0, $v0, -0x2a7e -/* 04E8AC 8004DCAC 804B0000 */ lb $t3, ($v0) -/* 04E8B0 8004DCB0 00C02025 */ move $a0, $a2 -/* 04E8B4 8004DCB4 15600025 */ bnez $t3, .L8004DD4C -/* 04E8B8 8004DCB8 00000000 */ nop -/* 04E8BC 8004DCBC 0C01997A */ jal func_800665E8 -/* 04E8C0 8004DCC0 AFA70030 */ sw $a3, 0x30($sp) -/* 04E8C4 8004DCC4 0C01A73F */ jal func_80069CFC -/* 04E8C8 8004DCC8 00000000 */ nop -/* 04E8CC 8004DCCC 3C038012 */ lui $v1, %hi(D_8011D508) # $v1, 0x8012 -/* 04E8D0 8004DCD0 2463D508 */ addiu $v1, %lo(D_8011D508) # addiu $v1, $v1, -0x2af8 -/* 04E8D4 8004DCD4 AC620000 */ sw $v0, ($v1) -/* 04E8D8 8004DCD8 8FA40030 */ lw $a0, 0x30($sp) -/* 04E8DC 8004DCDC A4400004 */ sh $zero, 4($v0) -/* 04E8E0 8004DCE0 8C6E0000 */ lw $t6, ($v1) -/* 04E8E4 8004DCE4 240D0400 */ li $t5, 1024 -/* 04E8E8 8004DCE8 A5CD0002 */ sh $t5, 2($t6) -/* 04E8EC 8004DCEC 8C780000 */ lw $t8, ($v1) -/* 04E8F0 8004DCF0 860F0196 */ lh $t7, 0x196($s0) -/* 04E8F4 8004DCF4 240800FF */ li $t0, 255 -/* 04E8F8 8004DCF8 A70F0000 */ sh $t7, ($t8) -/* 04E8FC 8004DCFC 8C790000 */ lw $t9, ($v1) -/* 04E900 8004DD00 44809000 */ mtc1 $zero, $f18 -/* 04E904 8004DD04 A7200036 */ sh $zero, 0x36($t9) -/* 04E908 8004DD08 8C690000 */ lw $t1, ($v1) -/* 04E90C 8004DD0C 02002825 */ move $a1, $s0 -/* 04E910 8004DD10 A128003C */ sb $t0, 0x3c($t1) -/* 04E914 8004DD14 8C6A0000 */ lw $t2, ($v1) -/* 04E918 8004DD18 3C063F80 */ lui $a2, 0x3f80 -/* 04E91C 8004DD1C A148003D */ sb $t0, 0x3d($t2) -/* 04E920 8004DD20 8C6B0000 */ lw $t3, ($v1) -/* 04E924 8004DD24 00000000 */ nop -/* 04E928 8004DD28 A168003E */ sb $t0, 0x3e($t3) -/* 04E92C 8004DD2C 8C6C0000 */ lw $t4, ($v1) -/* 04E930 8004DD30 00000000 */ nop -/* 04E934 8004DD34 A188003F */ sb $t0, 0x3f($t4) -/* 04E938 8004DD38 8C6D0000 */ lw $t5, ($v1) -/* 04E93C 8004DD3C 0C015E90 */ jal func_80057A40 -/* 04E940 8004DD40 E5B20018 */ swc1 $f18, 0x18($t5) -/* 04E944 8004DD44 8FA70030 */ lw $a3, 0x30($sp) -/* 04E948 8004DD48 00000000 */ nop -.L8004DD4C: -/* 04E94C 8004DD4C 3C028012 */ lui $v0, %hi(D_8011D582) # $v0, 0x8012 -/* 04E950 8004DD50 2442D582 */ addiu $v0, %lo(D_8011D582) # addiu $v0, $v0, -0x2a7e -/* 04E954 8004DD54 804E0000 */ lb $t6, ($v0) -/* 04E958 8004DD58 240800FF */ li $t0, 255 -/* 04E95C 8004DD5C 15C00007 */ bnez $t6, .L8004DD7C -/* 04E960 8004DD60 00002025 */ move $a0, $zero -/* 04E964 8004DD64 3C018012 */ lui $at, %hi(D_8011D583) # $at, 0x8012 -/* 04E968 8004DD68 A020D583 */ sb $zero, %lo(D_8011D583)($at) -/* 04E96C 8004DD6C 3C018012 */ lui $at, %hi(D_8011D586) # $at, 0x8012 -/* 04E970 8004DD70 A420D586 */ sh $zero, %lo(D_8011D586)($at) -/* 04E974 8004DD74 3C018012 */ lui $at, %hi(D_8011D584) # $at, 0x8012 -/* 04E978 8004DD78 A020D584 */ sb $zero, %lo(D_8011D584)($at) -.L8004DD7C: -/* 04E97C 8004DD7C 8CF8004C */ lw $t8, 0x4c($a3) -/* 04E980 8004DD80 240F0005 */ li $t7, 5 -/* 04E984 8004DD84 A70F0014 */ sh $t7, 0x14($t8) -/* 04E988 8004DD88 8CF9004C */ lw $t9, 0x4c($a3) -/* 04E98C 8004DD8C 2409000F */ li $t1, 15 -/* 04E990 8004DD90 A3200011 */ sb $zero, 0x11($t9) -/* 04E994 8004DD94 8CEA004C */ lw $t2, 0x4c($a3) -/* 04E998 8004DD98 240B0014 */ li $t3, 20 -/* 04E99C 8004DD9C A1490010 */ sb $t1, 0x10($t2) -/* 04E9A0 8004DDA0 8CEC004C */ lw $t4, 0x4c($a3) -/* 04E9A4 8004DDA4 3C018012 */ lui $at, %hi(D_8011D560) # $at, 0x8012 -/* 04E9A8 8004DDA8 A18B0012 */ sb $t3, 0x12($t4) -/* 04E9AC 8004DDAC A20001EE */ sb $zero, 0x1ee($s0) -/* 04E9B0 8004DDB0 804D0000 */ lb $t5, ($v0) -/* 04E9B4 8004DDB4 240E0006 */ li $t6, 6 -/* 04E9B8 8004DDB8 15A00002 */ bnez $t5, .L8004DDC4 -/* 04E9BC 8004DDBC 240F0064 */ li $t7, 100 -/* 04E9C0 8004DDC0 A20801F7 */ sb $t0, 0x1f7($s0) -.L8004DDC4: -/* 04E9C4 8004DDC4 A420D560 */ sh $zero, %lo(D_8011D560)($at) -/* 04E9C8 8004DDC8 3C014396 */ li $at, 0x43960000 # 300.000000 -/* 04E9CC 8004DDCC 44812000 */ mtc1 $at, $f4 -/* 04E9D0 8004DDD0 3C018012 */ lui $at, %hi(D_8011D544) # $at, 0x8012 -/* 04E9D4 8004DDD4 E424D544 */ swc1 $f4, %lo(D_8011D544)($at) -/* 04E9D8 8004DDD8 A20E01C9 */ sb $t6, 0x1c9($s0) -/* 04E9DC 8004DDDC A60F01C6 */ sh $t7, 0x1c6($s0) -/* 04E9E0 8004DDE0 3C018012 */ lui $at, %hi(D_8011D580) # $at, 0x8012 -/* 04E9E4 8004DDE4 A020D580 */ sb $zero, %lo(D_8011D580)($at) -/* 04E9E8 8004DDE8 3C018012 */ lui $at, %hi(D_8011D58F) # $at, 0x8012 -/* 04E9EC 8004DDEC 24020004 */ li $v0, 4 -/* 04E9F0 8004DDF0 A020D58C */ sb $zero, %lo(D_8011D58C)($at) -/* 04E9F4 8004DDF4 A020D58D */ sb $zero, %lo(D_8011D58D)($at) -/* 04E9F8 8004DDF8 A020D58E */ sb $zero, %lo(D_8011D58E)($at) -/* 04E9FC 8004DDFC A020D58F */ sb $zero, %lo(D_8011D58F)($at) -/* 04EA00 8004DE00 AFA20024 */ sw $v0, 0x24($sp) -/* 04EA04 8004DE04 00002825 */ move $a1, $zero -/* 04EA08 8004DE08 0C010FB3 */ jal func_80043ECC -/* 04EA0C 8004DE0C 00003025 */ move $a2, $zero -/* 04EA10 8004DE10 8FA20024 */ lw $v0, 0x24($sp) -/* 04EA14 8004DE14 3C018012 */ lui $at, %hi(D_8011D583) # $at, 0x8012 -/* 04EA18 8004DE18 A022D583 */ sb $v0, %lo(D_8011D583)($at) -/* 04EA1C 8004DE1C 3C018012 */ lui $at, %hi(D_8011D585) # $at, 0x8012 -/* 04EA20 8004DE20 A020D585 */ sb $zero, %lo(D_8011D585)($at) -/* 04EA24 8004DE24 A200020A */ sb $zero, 0x20a($s0) -/* 04EA28 8004DE28 8FBF001C */ lw $ra, 0x1c($sp) -/* 04EA2C 8004DE2C 8FB00018 */ lw $s0, 0x18($sp) -/* 04EA30 8004DE30 03E00008 */ jr $ra -/* 04EA34 8004DE34 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_8004DE38 -/* 04EA38 8004DE38 27BDFF50 */ addiu $sp, $sp, -0xb0 -/* 04EA3C 8004DE3C AFBF002C */ sw $ra, 0x2c($sp) -/* 04EA40 8004DE40 AFB10028 */ sw $s1, 0x28($sp) -/* 04EA44 8004DE44 00808825 */ move $s1, $a0 -/* 04EA48 8004DE48 AFB00024 */ sw $s0, 0x24($sp) -/* 04EA4C 8004DE4C 0C019884 */ jal func_80066210 -/* 04EA50 8004DE50 AFA500B4 */ sw $a1, 0xb4($sp) -/* 04EA54 8004DE54 244E0001 */ addiu $t6, $v0, 1 -/* 04EA58 8004DE58 3C01800E */ lui $at, %hi(D_800DCB98) # $at, 0x800e -/* 04EA5C 8004DE5C AC2ECB98 */ sw $t6, %lo(D_800DCB98)($at) -/* 04EA60 8004DE60 3C018012 */ lui $at, %hi(D_8011D581) # $at, 0x8012 -/* 04EA64 8004DE64 0C0044E7 */ jal func_8001139C -/* 04EA68 8004DE68 A020D581 */ sb $zero, %lo(D_8011D581)($at) -/* 04EA6C 8004DE6C 3C014049 */ li $at, 0x40490000 # 3.140625 -/* 04EA70 8004DE70 44811800 */ mtc1 $at, $f3 -/* 04EA74 8004DE74 3C018012 */ lui $at, %hi(D_8011D540) # $at, 0x8012 -/* 04EA78 8004DE78 8FA300B4 */ lw $v1, 0xb4($sp) -/* 04EA7C 8004DE7C AC22D540 */ sw $v0, %lo(D_8011D540)($at) -/* 04EA80 8004DE80 C626001C */ lwc1 $f6, 0x1c($s1) -/* 04EA84 8004DE84 44801000 */ mtc1 $zero, $f2 -/* 04EA88 8004DE88 44832000 */ mtc1 $v1, $f4 -/* 04EA8C 8004DE8C 46003221 */ cvt.d.s $f8, $f6 -/* 04EA90 8004DE90 46802420 */ cvt.s.w $f16, $f4 -/* 04EA94 8004DE94 8E300064 */ lw $s0, 0x64($s1) -/* 04EA98 8004DE98 44800000 */ mtc1 $zero, $f0 -/* 04EA9C 8004DE9C 4628103C */ c.lt.d $f2, $f8 -/* 04EAA0 8004DEA0 46008486 */ mov.s $f18, $f16 -/* 04EAA4 8004DEA4 45000004 */ bc1f .L8004DEB8 -/* 04EAA8 8004DEA8 3C014248 */ li $at, 0x42480000 # 50.000000 -/* 04EAAC 8004DEAC 44817000 */ mtc1 $at, $f14 -/* 04EAB0 8004DEB0 00000000 */ nop -/* 04EAB4 8004DEB4 E62E001C */ swc1 $f14, 0x1c($s1) -.L8004DEB8: -/* 04EAB8 8004DEB8 C62A0020 */ lwc1 $f10, 0x20($s1) -/* 04EABC 8004DEBC 3C014248 */ li $at, 0x42480000 # 50.000000 -/* 04EAC0 8004DEC0 46005121 */ cvt.d.s $f4, $f10 -/* 04EAC4 8004DEC4 4624103C */ c.lt.d $f2, $f4 -/* 04EAC8 8004DEC8 44817000 */ mtc1 $at, $f14 -/* 04EACC 8004DECC 45000002 */ bc1f .L8004DED8 -/* 04EAD0 8004DED0 3C01C049 */ li $at, 0xC0490000 # -3.140625 -/* 04EAD4 8004DED4 E62E0020 */ swc1 $f14, 0x20($s1) -.L8004DED8: -/* 04EAD8 8004DED8 C6260024 */ lwc1 $f6, 0x24($s1) -/* 04EADC 8004DEDC 3C188000 */ lui $t8, %hi(D_80000300) # $t8, 0x8000 -/* 04EAE0 8004DEE0 46003221 */ cvt.d.s $f8, $f6 -/* 04EAE4 8004DEE4 4628103C */ c.lt.d $f2, $f8 -/* 04EAE8 8004DEE8 00000000 */ nop -/* 04EAEC 8004DEEC 45000002 */ bc1f .L8004DEF8 -/* 04EAF0 8004DEF0 00000000 */ nop -/* 04EAF4 8004DEF4 E62E0024 */ swc1 $f14, 0x24($s1) -.L8004DEF8: -/* 04EAF8 8004DEF8 C62A001C */ lwc1 $f10, 0x1c($s1) -/* 04EAFC 8004DEFC 44810800 */ mtc1 $at, $f1 -/* 04EB00 8004DF00 46005121 */ cvt.d.s $f4, $f10 -/* 04EB04 8004DF04 4620203C */ c.lt.d $f4, $f0 -/* 04EB08 8004DF08 00000000 */ nop -/* 04EB0C 8004DF0C 45000004 */ bc1f .L8004DF20 -/* 04EB10 8004DF10 3C01C248 */ li $at, 0xC2480000 # -50.000000 -/* 04EB14 8004DF14 44816000 */ mtc1 $at, $f12 -/* 04EB18 8004DF18 00000000 */ nop -/* 04EB1C 8004DF1C E62C001C */ swc1 $f12, 0x1c($s1) -.L8004DF20: -/* 04EB20 8004DF20 C6260020 */ lwc1 $f6, 0x20($s1) -/* 04EB24 8004DF24 3C01C248 */ li $at, 0xC2480000 # -50.000000 -/* 04EB28 8004DF28 46003221 */ cvt.d.s $f8, $f6 -/* 04EB2C 8004DF2C 4620403C */ c.lt.d $f8, $f0 -/* 04EB30 8004DF30 44816000 */ mtc1 $at, $f12 -/* 04EB34 8004DF34 45000002 */ bc1f .L8004DF40 -/* 04EB38 8004DF38 3C01BFF0 */ li $at, 0xBFF00000 # -1.875000 -/* 04EB3C 8004DF3C E62C0020 */ swc1 $f12, 0x20($s1) -.L8004DF40: -/* 04EB40 8004DF40 C62A0024 */ lwc1 $f10, 0x24($s1) -/* 04EB44 8004DF44 00000000 */ nop -/* 04EB48 8004DF48 46005121 */ cvt.d.s $f4, $f10 -/* 04EB4C 8004DF4C 4620203C */ c.lt.d $f4, $f0 -/* 04EB50 8004DF50 00000000 */ nop -/* 04EB54 8004DF54 45000002 */ bc1f .L8004DF60 -/* 04EB58 8004DF58 00000000 */ nop -/* 04EB5C 8004DF5C E62C0024 */ swc1 $f12, 0x24($s1) -.L8004DF60: -/* 04EB60 8004DF60 C606002C */ lwc1 $f6, 0x2c($s0) -/* 04EB64 8004DF64 00000000 */ nop -/* 04EB68 8004DF68 46003221 */ cvt.d.s $f8, $f6 -/* 04EB6C 8004DF6C 4628103C */ c.lt.d $f2, $f8 -/* 04EB70 8004DF70 00000000 */ nop -/* 04EB74 8004DF74 45000002 */ bc1f .L8004DF80 -/* 04EB78 8004DF78 00000000 */ nop -/* 04EB7C 8004DF7C E60E002C */ swc1 $f14, 0x2c($s0) -.L8004DF80: -/* 04EB80 8004DF80 C60A0030 */ lwc1 $f10, 0x30($s0) -/* 04EB84 8004DF84 00000000 */ nop -/* 04EB88 8004DF88 46005121 */ cvt.d.s $f4, $f10 -/* 04EB8C 8004DF8C 4624103C */ c.lt.d $f2, $f4 -/* 04EB90 8004DF90 00000000 */ nop -/* 04EB94 8004DF94 45000002 */ bc1f .L8004DFA0 -/* 04EB98 8004DF98 00000000 */ nop -/* 04EB9C 8004DF9C E60E0030 */ swc1 $f14, 0x30($s0) -.L8004DFA0: -/* 04EBA0 8004DFA0 C606002C */ lwc1 $f6, 0x2c($s0) -/* 04EBA4 8004DFA4 00000000 */ nop -/* 04EBA8 8004DFA8 46003221 */ cvt.d.s $f8, $f6 -/* 04EBAC 8004DFAC 4620403C */ c.lt.d $f8, $f0 -/* 04EBB0 8004DFB0 44814800 */ mtc1 $at, $f9 -/* 04EBB4 8004DFB4 45000002 */ bc1f .L8004DFC0 -/* 04EBB8 8004DFB8 00000000 */ nop -/* 04EBBC 8004DFBC E60C002C */ swc1 $f12, 0x2c($s0) -.L8004DFC0: -/* 04EBC0 8004DFC0 C60A0030 */ lwc1 $f10, 0x30($s0) -/* 04EBC4 8004DFC4 3C01BF80 */ li $at, 0xBF800000 # -1.000000 -/* 04EBC8 8004DFC8 46005121 */ cvt.d.s $f4, $f10 -/* 04EBCC 8004DFCC 4620203C */ c.lt.d $f4, $f0 -/* 04EBD0 8004DFD0 00000000 */ nop -/* 04EBD4 8004DFD4 45000002 */ bc1f .L8004DFE0 -/* 04EBD8 8004DFD8 00000000 */ nop -/* 04EBDC 8004DFDC E60C0030 */ swc1 $f12, 0x30($s0) -.L8004DFE0: -/* 04EBE0 8004DFE0 C60600A8 */ lwc1 $f6, 0xa8($s0) -/* 04EBE4 8004DFE4 44804000 */ mtc1 $zero, $f8 -/* 04EBE8 8004DFE8 46003021 */ cvt.d.s $f0, $f6 -/* 04EBEC 8004DFEC 4628003C */ c.lt.d $f0, $f8 -/* 04EBF0 8004DFF0 44803000 */ mtc1 $zero, $f6 -/* 04EBF4 8004DFF4 45000007 */ bc1f .L8004E014 -/* 04EBF8 8004DFF8 00000000 */ nop -/* 04EBFC 8004DFFC 44815000 */ mtc1 $at, $f10 -/* 04EC00 8004E000 00000000 */ nop -/* 04EC04 8004E004 E60A00A8 */ swc1 $f10, 0xa8($s0) -/* 04EC08 8004E008 C60400A8 */ lwc1 $f4, 0xa8($s0) -/* 04EC0C 8004E00C 00000000 */ nop -/* 04EC10 8004E010 46002021 */ cvt.d.s $f0, $f4 -.L8004E014: -/* 04EC14 8004E014 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 04EC18 8004E018 44813800 */ mtc1 $at, $f7 -/* 04EC1C 8004E01C 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 04EC20 8004E020 4620303C */ c.lt.d $f6, $f0 -/* 04EC24 8004E024 00000000 */ nop -/* 04EC28 8004E028 45000004 */ bc1f .L8004E03C -/* 04EC2C 8004E02C 00000000 */ nop -/* 04EC30 8004E030 44814000 */ mtc1 $at, $f8 -/* 04EC34 8004E034 00000000 */ nop -/* 04EC38 8004E038 E60800A8 */ swc1 $f8, 0xa8($s0) -.L8004E03C: -/* 04EC3C 8004E03C 920F01FE */ lbu $t7, 0x1fe($s0) -/* 04EC40 8004E040 24010001 */ li $at, 1 -/* 04EC44 8004E044 15E10002 */ bne $t7, $at, .L8004E050 -/* 04EC48 8004E048 00000000 */ nop -/* 04EC4C 8004E04C A20001F1 */ sb $zero, 0x1f1($s0) -.L8004E050: -/* 04EC50 8004E050 8F180300 */ lw $t8, %lo(D_80000300)($t8) -/* 04EC54 8004E054 3C01800E */ lui $at, %hi(D_800E6594) # $at, 0x800e -/* 04EC58 8004E058 17000006 */ bnez $t8, .L8004E074 -/* 04EC5C 8004E05C 00000000 */ nop -/* 04EC60 8004E060 C4256590 */ lwc1 $f5, %lo(D_800E6590)($at) -/* 04EC64 8004E064 C4246594 */ lwc1 $f4, %lo(D_800E6594)($at) -/* 04EC68 8004E068 460082A1 */ cvt.d.s $f10, $f16 -/* 04EC6C 8004E06C 46245182 */ mul.d $f6, $f10, $f4 -/* 04EC70 8004E070 462034A0 */ cvt.s.d $f18, $f6 -.L8004E074: -/* 04EC74 8004E074 821901F6 */ lb $t9, 0x1f6($s0) -/* 04EC78 8004E078 00000000 */ nop -/* 04EC7C 8004E07C 03234023 */ subu $t0, $t9, $v1 -/* 04EC80 8004E080 A20801F6 */ sb $t0, 0x1f6($s0) -/* 04EC84 8004E084 820901F6 */ lb $t1, 0x1f6($s0) -/* 04EC88 8004E088 00000000 */ nop -/* 04EC8C 8004E08C 05210002 */ bgez $t1, .L8004E098 -/* 04EC90 8004E090 00000000 */ nop -/* 04EC94 8004E094 A20001F6 */ sb $zero, 0x1f6($s0) -.L8004E098: -/* 04EC98 8004E098 AE200074 */ sw $zero, 0x74($s1) -/* 04EC9C 8004E09C 82020201 */ lb $v0, 0x201($s0) -/* 04ECA0 8004E0A0 00000000 */ nop -/* 04ECA4 8004E0A4 18400003 */ blez $v0, .L8004E0B4 -/* 04ECA8 8004E0A8 00435023 */ subu $t2, $v0, $v1 -/* 04ECAC 8004E0AC 10000002 */ b .L8004E0B8 -/* 04ECB0 8004E0B0 A20A0201 */ sb $t2, 0x201($s0) -.L8004E0B4: -/* 04ECB4 8004E0B4 A2000201 */ sb $zero, 0x201($s0) -.L8004E0B8: -/* 04ECB8 8004E0B8 0C01AF6C */ jal func_8006BDB0 -/* 04ECBC 8004E0BC E7B2009C */ swc1 $f18, 0x9c($sp) -/* 04ECC0 8004E0C0 AFA2007C */ sw $v0, 0x7c($sp) -/* 04ECC4 8004E0C4 C4480008 */ lwc1 $f8, 8($v0) -/* 04ECC8 8004E0C8 3C018012 */ lui $at, %hi(D_8011D4F0) # $at, 0x8012 -/* 04ECCC 8004E0CC E428D4F0 */ swc1 $f8, %lo(D_8011D4F0)($at) -/* 04ECD0 8004E0D0 86030000 */ lh $v1, ($s0) -/* 04ECD4 8004E0D4 2401FFFF */ li $at, -1 -/* 04ECD8 8004E0D8 14610008 */ bne $v1, $at, .L8004E0FC -/* 04ECDC 8004E0DC A200020C */ sb $zero, 0x20c($s0) -/* 04ECE0 8004E0E0 8FA600B4 */ lw $a2, 0xb4($sp) -/* 04ECE4 8004E0E4 8FA7009C */ lw $a3, 0x9c($sp) -/* 04ECE8 8004E0E8 02202025 */ move $a0, $s1 -/* 04ECEC 8004E0EC 0C0169BC */ jal func_8005A6F0 -/* 04ECF0 8004E0F0 02002825 */ move $a1, $s0 -/* 04ECF4 8004E0F4 1000059D */ b .L8004F76C -/* 04ECF8 8004E0F8 8FBF002C */ lw $ra, 0x2c($sp) -.L8004E0FC: -/* 04ECFC 8004E0FC 3C0B8012 */ lui $t3, %hi(D_8011D540) # $t3, 0x8012 -/* 04ED00 8004E100 8D6BD540 */ lw $t3, %lo(D_8011D540)($t3) -/* 04ED04 8004E104 00000000 */ nop -/* 04ED08 8004E108 15600017 */ bnez $t3, .L8004E168 -/* 04ED0C 8004E10C 00002025 */ move $a0, $zero -/* 04ED10 8004E110 14600015 */ bnez $v1, .L8004E168 -/* 04ED14 8004E114 00002025 */ move $a0, $zero -/* 04ED18 8004E118 0C0270C3 */ jal func_8009C30C -/* 04ED1C 8004E11C 00000000 */ nop -/* 04ED20 8004E120 304C0200 */ andi $t4, $v0, 0x200 -/* 04ED24 8004E124 1180000F */ beqz $t4, .L8004E164 -/* 04ED28 8004E128 3C04800E */ lui $a0, %hi(D_800E6280) # $a0, 0x800e -/* 04ED2C 8004E12C C6260010 */ lwc1 $f6, 0x10($s1) -/* 04ED30 8004E130 C62A000C */ lwc1 $f10, 0xc($s1) -/* 04ED34 8004E134 46003221 */ cvt.d.s $f8, $f6 -/* 04ED38 8004E138 46005121 */ cvt.d.s $f4, $f10 -/* 04ED3C 8004E13C E7A80014 */ swc1 $f8, 0x14($sp) -/* 04ED40 8004E140 E7A90010 */ swc1 $f9, 0x10($sp) -/* 04ED44 8004E144 C62A0014 */ lwc1 $f10, 0x14($s1) -/* 04ED48 8004E148 44072000 */ mfc1 $a3, $f4 -/* 04ED4C 8004E14C 44062800 */ mfc1 $a2, $f5 -/* 04ED50 8004E150 46005121 */ cvt.d.s $f4, $f10 -/* 04ED54 8004E154 E7A4001C */ swc1 $f4, 0x1c($sp) -/* 04ED58 8004E158 E7A50018 */ swc1 $f5, 0x18($sp) -/* 04ED5C 8004E15C 0C02D7B7 */ jal func_800B5EDC -/* 04ED60 8004E160 24846280 */ addiu $a0, %lo(D_800E6280) # addiu $a0, $a0, 0x6280 -.L8004E164: -/* 04ED64 8004E164 00002025 */ move $a0, $zero -.L8004E168: -/* 04ED68 8004E168 00002825 */ move $a1, $zero -/* 04ED6C 8004E16C 00003025 */ move $a2, $zero -/* 04ED70 8004E170 0C02D8AD */ jal func_800B62B4 -/* 04ED74 8004E174 24070080 */ li $a3, 128 -/* 04ED78 8004E178 0C008D07 */ jal func_8002341C -/* 04ED7C 8004E17C 00000000 */ nop -/* 04ED80 8004E180 10400002 */ beqz $v0, .L8004E18C -/* 04ED84 8004E184 3C018012 */ lui $at, %hi(D_8011D586) # $at, 0x8012 -/* 04ED88 8004E188 A420D586 */ sh $zero, %lo(D_8011D586)($at) -.L8004E18C: -/* 04ED8C 8004E18C 0C01B683 */ jal func_8006DA0C -/* 04ED90 8004E190 00000000 */ nop -/* 04ED94 8004E194 3C0D8012 */ lui $t5, %hi(D_8011D540) # $t5, 0x8012 -/* 04ED98 8004E198 8DADD540 */ lw $t5, %lo(D_8011D540)($t5) -/* 04ED9C 8004E19C AFA200A4 */ sw $v0, 0xa4($sp) -/* 04EDA0 8004E1A0 15A00010 */ bnez $t5, .L8004E1E4 -/* 04EDA4 8004E1A4 3C028012 */ lui $v0, %hi(D_8011D544) # $v0, 0x8012 -/* 04EDA8 8004E1A8 2442D544 */ addiu $v0, %lo(D_8011D544) # addiu $v0, $v0, -0x2abc -/* 04EDAC 8004E1AC C4400000 */ lwc1 $f0, ($v0) -/* 04EDB0 8004E1B0 44803800 */ mtc1 $zero, $f7 -/* 04EDB4 8004E1B4 44803000 */ mtc1 $zero, $f6 -/* 04EDB8 8004E1B8 46000221 */ cvt.d.s $f8, $f0 -/* 04EDBC 8004E1BC 4628303C */ c.lt.d $f6, $f8 -/* 04EDC0 8004E1C0 C7AA009C */ lwc1 $f10, 0x9c($sp) -/* 04EDC4 8004E1C4 45000004 */ bc1f .L8004E1D8 -/* 04EDC8 8004E1C8 00000000 */ nop -/* 04EDCC 8004E1CC 460A0101 */ sub.s $f4, $f0, $f10 -/* 04EDD0 8004E1D0 10000009 */ b .L8004E1F8 -/* 04EDD4 8004E1D4 E4440000 */ swc1 $f4, ($v0) -.L8004E1D8: -/* 04EDD8 8004E1D8 44803000 */ mtc1 $zero, $f6 -/* 04EDDC 8004E1DC 10000006 */ b .L8004E1F8 -/* 04EDE0 8004E1E0 E4460000 */ swc1 $f6, ($v0) -.L8004E1E4: -/* 04EDE4 8004E1E4 2404FFC4 */ li $a0, -60 -/* 04EDE8 8004E1E8 0C01BE53 */ jal func_8006F94C -/* 04EDEC 8004E1EC 2405003C */ li $a1, 60 -/* 04EDF0 8004E1F0 244E0078 */ addiu $t6, $v0, 0x78 -/* 04EDF4 8004E1F4 A60E01C6 */ sh $t6, 0x1c6($s0) -.L8004E1F8: -/* 04EDF8 8004E1F8 8602018C */ lh $v0, 0x18c($s0) -/* 04EDFC 8004E1FC 00000000 */ nop -/* 04EE00 8004E200 18400006 */ blez $v0, .L8004E21C -/* 04EE04 8004E204 00000000 */ nop -/* 04EE08 8004E208 8FAF00B4 */ lw $t7, 0xb4($sp) -/* 04EE0C 8004E20C 00000000 */ nop -/* 04EE10 8004E210 004FC023 */ subu $t8, $v0, $t7 -/* 04EE14 8004E214 10000002 */ b .L8004E220 -/* 04EE18 8004E218 A618018C */ sh $t8, 0x18c($s0) -.L8004E21C: -/* 04EE1C 8004E21C A600018C */ sh $zero, 0x18c($s0) -.L8004E220: -/* 04EE20 8004E220 0C0078A7 */ jal func_8001E29C -/* 04EE24 8004E224 24040009 */ li $a0, 9 -/* 04EE28 8004E228 3C058012 */ lui $a1, %hi(D_8011D564) # $a1, 0x8012 -/* 04EE2C 8004E22C 24A5D564 */ addiu $a1, %lo(D_8011D564) # addiu $a1, $a1, -0x2a9c -/* 04EE30 8004E230 ACA20000 */ sw $v0, ($a1) -/* 04EE34 8004E234 82080003 */ lb $t0, 3($s0) -/* 04EE38 8004E238 3C01800E */ lui $at, %hi(D_800E659C) # $at, 0x800e -/* 04EE3C 8004E23C 00084880 */ sll $t1, $t0, 2 -/* 04EE40 8004E240 00495021 */ addu $t2, $v0, $t1 -/* 04EE44 8004E244 C5480000 */ lwc1 $f8, ($t2) -/* 04EE48 8004E248 C4256598 */ lwc1 $f5, %lo(D_800E6598)($at) -/* 04EE4C 8004E24C C424659C */ lwc1 $f4, %lo(D_800E659C)($at) -/* 04EE50 8004E250 460042A1 */ cvt.d.s $f10, $f8 -/* 04EE54 8004E254 46245182 */ mul.d $f6, $f10, $f4 -/* 04EE58 8004E258 3C038012 */ lui $v1, %hi(D_8011D56C) # $v1, 0x8012 -/* 04EE5C 8004E25C 2463D56C */ addiu $v1, %lo(D_8011D56C) # addiu $v1, $v1, -0x2a94 -/* 04EE60 8004E260 46203220 */ cvt.s.d $f8, $f6 -/* 04EE64 8004E264 E4680000 */ swc1 $f8, ($v1) -/* 04EE68 8004E268 860B0204 */ lh $t3, 0x204($s0) -/* 04EE6C 8004E26C 00000000 */ nop -/* 04EE70 8004E270 19600004 */ blez $t3, .L8004E284 -/* 04EE74 8004E274 3C01800E */ lui $at, %hi(D_800E65A0) # $at, 0x800e -/* 04EE78 8004E278 C42A65A0 */ lwc1 $f10, %lo(D_800E65A0)($at) -/* 04EE7C 8004E27C 00000000 */ nop -/* 04EE80 8004E280 E46A0000 */ swc1 $f10, ($v1) -.L8004E284: -/* 04EE84 8004E284 0C0078A7 */ jal func_8001E29C -/* 04EE88 8004E288 2404000A */ li $a0, 10 -/* 04EE8C 8004E28C 3C058012 */ lui $a1, %hi(D_8011D564) # $a1, 0x8012 -/* 04EE90 8004E290 24A5D564 */ addiu $a1, %lo(D_8011D564) # addiu $a1, $a1, -0x2a9c -/* 04EE94 8004E294 ACA20000 */ sw $v0, ($a1) -/* 04EE98 8004E298 820D0003 */ lb $t5, 3($s0) -/* 04EE9C 8004E29C 3C018012 */ lui $at, %hi(D_8011D570) # $at, 0x8012 -/* 04EEA0 8004E2A0 000D7080 */ sll $t6, $t5, 2 -/* 04EEA4 8004E2A4 004E7821 */ addu $t7, $v0, $t6 -/* 04EEA8 8004E2A8 C5E40000 */ lwc1 $f4, ($t7) -/* 04EEAC 8004E2AC 2404000B */ li $a0, 11 -/* 04EEB0 8004E2B0 0C0078A7 */ jal func_8001E29C -/* 04EEB4 8004E2B4 E424D570 */ swc1 $f4, %lo(D_8011D570)($at) -/* 04EEB8 8004E2B8 3C018012 */ lui $at, %hi(D_8011D564) # $at, 0x8012 -/* 04EEBC 8004E2BC AC22D564 */ sw $v0, %lo(D_8011D564)($at) -/* 04EEC0 8004E2C0 82080003 */ lb $t0, 3($s0) -/* 04EEC4 8004E2C4 3C188012 */ lui $t8, %hi(D_8011D564) # $t8, 0x8012 -/* 04EEC8 8004E2C8 8F18D564 */ lw $t8, %lo(D_8011D564)($t8) -/* 04EECC 8004E2CC 0008C880 */ sll $t9, $t0, 2 -/* 04EED0 8004E2D0 03194821 */ addu $t1, $t8, $t9 -/* 04EED4 8004E2D4 C5260000 */ lwc1 $f6, ($t1) -/* 04EED8 8004E2D8 3C018012 */ lui $at, %hi(D_8011D574) # $at, 0x8012 -/* 04EEDC 8004E2DC E426D574 */ swc1 $f6, %lo(D_8011D574)($at) -/* 04EEE0 8004E2E0 920401FE */ lbu $a0, 0x1fe($s0) -/* 04EEE4 8004E2E4 3C038012 */ lui $v1, %hi(D_8011D56C) # $v1, 0x8012 -/* 04EEE8 8004E2E8 24010003 */ li $at, 3 -/* 04EEEC 8004E2EC 14810011 */ bne $a0, $at, .L8004E334 -/* 04EEF0 8004E2F0 2463D56C */ addiu $v1, %lo(D_8011D56C) # addiu $v1, $v1, -0x2a94 -/* 04EEF4 8004E2F4 920A01FF */ lbu $t2, 0x1ff($s0) -/* 04EEF8 8004E2F8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 04EEFC 8004E2FC 448A4000 */ mtc1 $t2, $f8 -/* 04EF00 8004E300 05410004 */ bgez $t2, .L8004E314 -/* 04EF04 8004E304 468042A0 */ cvt.s.w $f10, $f8 -/* 04EF08 8004E308 44812000 */ mtc1 $at, $f4 -/* 04EF0C 8004E30C 00000000 */ nop -/* 04EF10 8004E310 46045280 */ add.s $f10, $f10, $f4 -.L8004E314: -/* 04EF14 8004E314 3C014380 */ li $at, 0x43800000 # 256.000000 -/* 04EF18 8004E318 44813000 */ mtc1 $at, $f6 -/* 04EF1C 8004E31C C4640000 */ lwc1 $f4, ($v1) -/* 04EF20 8004E320 46065203 */ div.s $f8, $f10, $f6 -/* 04EF24 8004E324 46082282 */ mul.s $f10, $f4, $f8 -/* 04EF28 8004E328 E46A0000 */ swc1 $f10, ($v1) -/* 04EF2C 8004E32C 920401FE */ lbu $a0, 0x1fe($s0) -/* 04EF30 8004E330 00000000 */ nop -.L8004E334: -/* 04EF34 8004E334 24010001 */ li $at, 1 -/* 04EF38 8004E338 14810019 */ bne $a0, $at, .L8004E3A0 -/* 04EF3C 8004E33C 00000000 */ nop -/* 04EF40 8004E340 920B01FF */ lbu $t3, 0x1ff($s0) -/* 04EF44 8004E344 C4600000 */ lwc1 $f0, ($v1) -/* 04EF48 8004E348 448B3000 */ mtc1 $t3, $f6 -/* 04EF4C 8004E34C 05610005 */ bgez $t3, .L8004E364 -/* 04EF50 8004E350 46803120 */ cvt.s.w $f4, $f6 -/* 04EF54 8004E354 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 04EF58 8004E358 44814000 */ mtc1 $at, $f8 -/* 04EF5C 8004E35C 00000000 */ nop -/* 04EF60 8004E360 46082100 */ add.s $f4, $f4, $f8 -.L8004E364: -/* 04EF64 8004E364 46040282 */ mul.s $f10, $f0, $f4 -/* 04EF68 8004E368 3C014300 */ li $at, 0x43000000 # 128.000000 -/* 04EF6C 8004E36C 44813000 */ mtc1 $at, $f6 -/* 04EF70 8004E370 00000000 */ nop -/* 04EF74 8004E374 46065203 */ div.s $f8, $f10, $f6 -/* 04EF78 8004E378 46080101 */ sub.s $f4, $f0, $f8 -/* 04EF7C 8004E37C E4640000 */ swc1 $f4, ($v1) -/* 04EF80 8004E380 860D0204 */ lh $t5, 0x204($s0) -/* 04EF84 8004E384 00000000 */ nop -/* 04EF88 8004E388 19A00005 */ blez $t5, .L8004E3A0 -/* 04EF8C 8004E38C 00000000 */ nop -/* 04EF90 8004E390 C46A0000 */ lwc1 $f10, ($v1) -/* 04EF94 8004E394 00000000 */ nop -/* 04EF98 8004E398 46005187 */ neg.s $f6, $f10 -/* 04EF9C 8004E39C E4660000 */ swc1 $f6, ($v1) -.L8004E3A0: -/* 04EFA0 8004E3A0 920C01FE */ lbu $t4, 0x1fe($s0) -/* 04EFA4 8004E3A4 24010002 */ li $at, 2 -/* 04EFA8 8004E3A8 1581002F */ bne $t4, $at, .L8004E468 -/* 04EFAC 8004E3AC 00000000 */ nop -/* 04EFB0 8004E3B0 920E01FF */ lbu $t6, 0x1ff($s0) -/* 04EFB4 8004E3B4 00000000 */ nop -/* 04EFB8 8004E3B8 000E7E00 */ sll $t7, $t6, 0x18 -/* 04EFBC 8004E3BC 0C01C1F1 */ jal func_800707C4 -/* 04EFC0 8004E3C0 000F2403 */ sra $a0, $t7, 0x10 -/* 04EFC4 8004E3C4 3C013FB0 */ li $at, 0x3FB00000 # 1.375000 -/* 04EFC8 8004E3C8 44816800 */ mtc1 $at, $f13 -/* 04EFCC 8004E3CC 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 04EFD0 8004E3D0 44815000 */ mtc1 $at, $f10 -/* 04EFD4 8004E3D4 C7A8009C */ lwc1 $f8, 0x9c($sp) -/* 04EFD8 8004E3D8 460A0182 */ mul.s $f6, $f0, $f10 -/* 04EFDC 8004E3DC C6020084 */ lwc1 $f2, 0x84($s0) -/* 04EFE0 8004E3E0 460043A1 */ cvt.d.s $f14, $f8 -/* 04EFE4 8004E3E4 44806000 */ mtc1 $zero, $f12 -/* 04EFE8 8004E3E8 46023201 */ sub.s $f8, $f6, $f2 -/* 04EFEC 8004E3EC 921801FF */ lbu $t8, 0x1ff($s0) -/* 04EFF0 8004E3F0 460042A1 */ cvt.d.s $f10, $f8 -/* 04EFF4 8004E3F4 462C5182 */ mul.d $f6, $f10, $f12 -/* 04EFF8 8004E3F8 46001121 */ cvt.d.s $f4, $f2 -/* 04EFFC 8004E3FC 0018CE00 */ sll $t9, $t8, 0x18 -/* 04F000 8004E400 00192403 */ sra $a0, $t9, 0x10 -/* 04F004 8004E404 462E3202 */ mul.d $f8, $f6, $f14 -/* 04F008 8004E408 46282280 */ add.d $f10, $f4, $f8 -/* 04F00C 8004E40C 462051A0 */ cvt.s.d $f6, $f10 -/* 04F010 8004E410 E6060084 */ swc1 $f6, 0x84($s0) -/* 04F014 8004E414 E7AE0054 */ swc1 $f14, 0x54($sp) -/* 04F018 8004E418 0C01C1FE */ jal func_800707F8 -/* 04F01C 8004E41C E7AF0050 */ swc1 $f15, 0x50($sp) -/* 04F020 8004E420 3C013FB0 */ li $at, 0x3FB00000 # 1.375000 -/* 04F024 8004E424 44816800 */ mtc1 $at, $f13 -/* 04F028 8004E428 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 04F02C 8004E42C 44812000 */ mtc1 $at, $f4 -/* 04F030 8004E430 C6020088 */ lwc1 $f2, 0x88($s0) -/* 04F034 8004E434 46040202 */ mul.s $f8, $f0, $f4 -/* 04F038 8004E438 44806000 */ mtc1 $zero, $f12 -/* 04F03C 8004E43C C7A90050 */ lwc1 $f9, 0x50($sp) -/* 04F040 8004E440 46024281 */ sub.s $f10, $f8, $f2 -/* 04F044 8004E444 C7A80054 */ lwc1 $f8, 0x54($sp) -/* 04F048 8004E448 460051A1 */ cvt.d.s $f6, $f10 -/* 04F04C 8004E44C 462C3102 */ mul.d $f4, $f6, $f12 -/* 04F050 8004E450 460011A1 */ cvt.d.s $f6, $f2 -/* 04F054 8004E454 46282282 */ mul.d $f10, $f4, $f8 -/* 04F058 8004E458 462A3100 */ add.d $f4, $f6, $f10 -/* 04F05C 8004E45C 46202220 */ cvt.s.d $f8, $f4 -/* 04F060 8004E460 10000018 */ b .L8004E4C4 -/* 04F064 8004E464 E6080088 */ swc1 $f8, 0x88($s0) -.L8004E468: -/* 04F068 8004E468 C6060084 */ lwc1 $f6, 0x84($s0) -/* 04F06C 8004E46C 3C013FB0 */ li $at, 0x3FB00000 # 1.375000 -/* 04F070 8004E470 44816800 */ mtc1 $at, $f13 -/* 04F074 8004E474 44806000 */ mtc1 $zero, $f12 -/* 04F078 8004E478 46003021 */ cvt.d.s $f0, $f6 -/* 04F07C 8004E47C 462C0102 */ mul.d $f4, $f0, $f12 -/* 04F080 8004E480 C7AA009C */ lwc1 $f10, 0x9c($sp) -/* 04F084 8004E484 00000000 */ nop -/* 04F088 8004E488 460053A1 */ cvt.d.s $f14, $f10 -/* 04F08C 8004E48C 462E2202 */ mul.d $f8, $f4, $f14 -/* 04F090 8004E490 C6040088 */ lwc1 $f4, 0x88($s0) -/* 04F094 8004E494 00000000 */ nop -/* 04F098 8004E498 460020A1 */ cvt.d.s $f2, $f4 -/* 04F09C 8004E49C 46280181 */ sub.d $f6, $f0, $f8 -/* 04F0A0 8004E4A0 462C1202 */ mul.d $f8, $f2, $f12 -/* 04F0A4 8004E4A4 462032A0 */ cvt.s.d $f10, $f6 -/* 04F0A8 8004E4A8 E60A0084 */ swc1 $f10, 0x84($s0) -/* 04F0AC 8004E4AC 462E4182 */ mul.d $f6, $f8, $f14 -/* 04F0B0 8004E4B0 46261281 */ sub.d $f10, $f2, $f6 -/* 04F0B4 8004E4B4 46205120 */ cvt.s.d $f4, $f10 -/* 04F0B8 8004E4B8 E6040088 */ swc1 $f4, 0x88($s0) -/* 04F0BC 8004E4BC E7AE0054 */ swc1 $f14, 0x54($sp) -/* 04F0C0 8004E4C0 E7AF0050 */ swc1 $f15, 0x50($sp) -.L8004E4C4: -/* 04F0C4 8004E4C4 8E2A0040 */ lw $t2, 0x40($s1) -/* 04F0C8 8004E4C8 00000000 */ nop -/* 04F0CC 8004E4CC 9144005C */ lbu $a0, 0x5c($t2) -/* 04F0D0 8004E4D0 0C0078A7 */ jal func_8001E29C -/* 04F0D4 8004E4D4 00000000 */ nop -/* 04F0D8 8004E4D8 3C018012 */ lui $at, %hi(D_8011D564) # $at, 0x8012 -/* 04F0DC 8004E4DC AC22D564 */ sw $v0, %lo(D_8011D564)($at) -/* 04F0E0 8004E4E0 8E2B0040 */ lw $t3, 0x40($s1) -/* 04F0E4 8004E4E4 00000000 */ nop -/* 04F0E8 8004E4E8 9164005D */ lbu $a0, 0x5d($t3) -/* 04F0EC 8004E4EC 0C0078A7 */ jal func_8001E29C -/* 04F0F0 8004E4F0 00000000 */ nop -/* 04F0F4 8004E4F4 3C018012 */ lui $at, %hi(D_8011D568) # $at, 0x8012 -/* 04F0F8 8004E4F8 AC22D568 */ sw $v0, %lo(D_8011D568)($at) -/* 04F0FC 8004E4FC C6280020 */ lwc1 $f8, 0x20($s1) -/* 04F100 8004E500 3C014010 */ li $at, 0x40100000 # 2.250000 -/* 04F104 8004E504 44815800 */ mtc1 $at, $f11 -/* 04F108 8004E508 44805000 */ mtc1 $zero, $f10 -/* 04F10C 8004E50C 460041A1 */ cvt.d.s $f6, $f8 -/* 04F110 8004E510 462A303C */ c.lt.d $f6, $f10 -/* 04F114 8004E514 00000000 */ nop -/* 04F118 8004E518 4500000F */ bc1f .L8004E558 -/* 04F11C 8004E51C 00000000 */ nop -/* 04F120 8004E520 820D01E2 */ lb $t5, 0x1e2($s0) -/* 04F124 8004E524 00000000 */ nop -/* 04F128 8004E528 29A10003 */ slti $at, $t5, 3 -/* 04F12C 8004E52C 10200009 */ beqz $at, .L8004E554 -/* 04F130 8004E530 00000000 */ nop -/* 04F134 8004E534 C60800C0 */ lwc1 $f8, 0xc0($s0) -/* 04F138 8004E538 44802800 */ mtc1 $zero, $f5 -/* 04F13C 8004E53C 44802000 */ mtc1 $zero, $f4 -/* 04F140 8004E540 460041A1 */ cvt.d.s $f6, $f8 -/* 04F144 8004E544 46262032 */ c.eq.d $f4, $f6 -/* 04F148 8004E548 00000000 */ nop -/* 04F14C 8004E54C 45010002 */ bc1t .L8004E558 -/* 04F150 8004E550 00000000 */ nop -.L8004E554: -/* 04F154 8004E554 A20001F1 */ sb $zero, 0x1f1($s0) -.L8004E558: -/* 04F158 8004E558 C62A000C */ lwc1 $f10, 0xc($s1) -/* 04F15C 8004E55C 00000000 */ nop -/* 04F160 8004E560 E7AA0090 */ swc1 $f10, 0x90($sp) -/* 04F164 8004E564 C6280010 */ lwc1 $f8, 0x10($s1) -/* 04F168 8004E568 00000000 */ nop -/* 04F16C 8004E56C E7A8008C */ swc1 $f8, 0x8c($sp) -/* 04F170 8004E570 C6240014 */ lwc1 $f4, 0x14($s1) -/* 04F174 8004E574 00000000 */ nop -/* 04F178 8004E578 E7A40088 */ swc1 $f4, 0x88($sp) -/* 04F17C 8004E57C 860201B2 */ lh $v0, 0x1b2($s0) -/* 04F180 8004E580 00000000 */ nop -/* 04F184 8004E584 1840000A */ blez $v0, .L8004E5B0 -/* 04F188 8004E588 00000000 */ nop -/* 04F18C 8004E58C 8FAC00B4 */ lw $t4, 0xb4($sp) -/* 04F190 8004E590 00000000 */ nop -/* 04F194 8004E594 004C7023 */ subu $t6, $v0, $t4 -/* 04F198 8004E598 A60E01B2 */ sh $t6, 0x1b2($s0) -/* 04F19C 8004E59C 860F01B2 */ lh $t7, 0x1b2($s0) -/* 04F1A0 8004E5A0 00000000 */ nop -/* 04F1A4 8004E5A4 05E10002 */ bgez $t7, .L8004E5B0 -/* 04F1A8 8004E5A8 00000000 */ nop -/* 04F1AC 8004E5AC A60001B2 */ sh $zero, 0x1b2($s0) -.L8004E5B0: -/* 04F1B0 8004E5B0 86040000 */ lh $a0, ($s0) -/* 04F1B4 8004E5B4 0C01997A */ jal func_800665E8 -/* 04F1B8 8004E5B8 00000000 */ nop -/* 04F1BC 8004E5BC 0C01A73F */ jal func_80069CFC -/* 04F1C0 8004E5C0 00000000 */ nop -/* 04F1C4 8004E5C4 3C018012 */ lui $at, %hi(D_8011D508) # $at, 0x8012 -/* 04F1C8 8004E5C8 AC22D508 */ sw $v0, %lo(D_8011D508)($at) -/* 04F1CC 8004E5CC 820801E7 */ lb $t0, 0x1e7($s0) -/* 04F1D0 8004E5D0 86190000 */ lh $t9, ($s0) -/* 04F1D4 8004E5D4 25180001 */ addiu $t8, $t0, 1 -/* 04F1D8 8004E5D8 A21801E7 */ sb $t8, 0x1e7($s0) -/* 04F1DC 8004E5DC 3C018012 */ lui $at, %hi(D_8011D55C) # $at, 0x8012 -/* 04F1E0 8004E5E0 AC39D55C */ sw $t9, %lo(D_8011D55C)($at) -/* 04F1E4 8004E5E4 820901D8 */ lb $t1, 0x1d8($s0) -/* 04F1E8 8004E5E8 24070001 */ li $a3, 1 -/* 04F1EC 8004E5EC 10E90005 */ beq $a3, $t1, .L8004E604 -/* 04F1F0 8004E5F0 00000000 */ nop -/* 04F1F4 8004E5F4 8FAA00A4 */ lw $t2, 0xa4($sp) -/* 04F1F8 8004E5F8 00000000 */ nop -/* 04F1FC 8004E5FC 1547000A */ bne $t2, $a3, .L8004E628 -/* 04F200 8004E600 00000000 */ nop -.L8004E604: -/* 04F204 8004E604 860D018E */ lh $t5, 0x18e($s0) -/* 04F208 8004E608 240BFFFF */ li $t3, -1 -/* 04F20C 8004E60C 29A10006 */ slti $at, $t5, 6 -/* 04F210 8004E610 A20701CA */ sb $a3, 0x1ca($s0) -/* 04F214 8004E614 A60B0000 */ sh $t3, ($s0) -/* 04F218 8004E618 14200003 */ bnez $at, .L8004E628 -/* 04F21C 8004E61C A20001C9 */ sb $zero, 0x1c9($s0) -/* 04F220 8004E620 240C0005 */ li $t4, 5 -/* 04F224 8004E624 A60C018E */ sh $t4, 0x18e($s0) -.L8004E628: -/* 04F228 8004E628 86030000 */ lh $v1, ($s0) -/* 04F22C 8004E62C 2401FFFF */ li $at, -1 -/* 04F230 8004E630 10610030 */ beq $v1, $at, .L8004E6F4 -/* 04F234 8004E634 8FA600B4 */ lw $a2, 0xb4($sp) -/* 04F238 8004E638 8E0E0108 */ lw $t6, 0x108($s0) -/* 04F23C 8004E63C 8FA500B4 */ lw $a1, 0xb4($sp) -/* 04F240 8004E640 15C00027 */ bnez $t6, .L8004E6E0 -/* 04F244 8004E644 00000000 */ nop -/* 04F248 8004E648 0C003856 */ jal func_8000E158 -/* 04F24C 8004E64C AFA300AC */ sw $v1, 0xac($sp) -/* 04F250 8004E650 8FA600AC */ lw $a2, 0xac($sp) -/* 04F254 8004E654 10400002 */ beqz $v0, .L8004E660 -/* 04F258 8004E658 240F0001 */ li $t7, 1 -/* 04F25C 8004E65C 01E63023 */ subu $a2, $t7, $a2 -.L8004E660: -/* 04F260 8004E660 00C02025 */ move $a0, $a2 -/* 04F264 8004E664 0C01A967 */ jal func_8006A59C -/* 04F268 8004E668 AFA600AC */ sw $a2, 0xac($sp) -/* 04F26C 8004E66C 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 04F270 8004E670 0C0270C3 */ jal func_8009C30C -/* 04F274 8004E674 AC22D534 */ sw $v0, %lo(D_8011D534)($at) -/* 04F278 8004E678 8FA600AC */ lw $a2, 0xac($sp) -/* 04F27C 8004E67C 30480004 */ andi $t0, $v0, 4 -/* 04F280 8004E680 11000006 */ beqz $t0, .L8004E69C -/* 04F284 8004E684 00C02025 */ move $a0, $a2 -/* 04F288 8004E688 3C188012 */ lui $t8, %hi(D_8011D534) # $t8, 0x8012 -/* 04F28C 8004E68C 8F18D534 */ lw $t8, %lo(D_8011D534)($t8) -/* 04F290 8004E690 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 04F294 8004E694 0018C823 */ negu $t9, $t8 -/* 04F298 8004E698 AC39D534 */ sw $t9, %lo(D_8011D534)($at) -.L8004E69C: -/* 04F29C 8004E69C 0C01A978 */ jal func_8006A5E0 -/* 04F2A0 8004E6A0 AFA600AC */ sw $a2, 0xac($sp) -/* 04F2A4 8004E6A4 8FA400AC */ lw $a0, 0xac($sp) -/* 04F2A8 8004E6A8 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 -/* 04F2AC 8004E6AC 0C01A94A */ jal func_8006A528 -/* 04F2B0 8004E6B0 AC22D538 */ sw $v0, %lo(D_8011D538)($at) -/* 04F2B4 8004E6B4 8FA400AC */ lw $a0, 0xac($sp) -/* 04F2B8 8004E6B8 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 -/* 04F2BC 8004E6BC 0C01A955 */ jal func_8006A554 -/* 04F2C0 8004E6C0 AC22D528 */ sw $v0, %lo(D_8011D528)($at) -/* 04F2C4 8004E6C4 8FA400AC */ lw $a0, 0xac($sp) -/* 04F2C8 8004E6C8 3C018012 */ lui $at, %hi(D_8011D52C) # $at, 0x8012 -/* 04F2CC 8004E6CC 0C01A95E */ jal func_8006A578 -/* 04F2D0 8004E6D0 AC22D52C */ sw $v0, %lo(D_8011D52C)($at) -/* 04F2D4 8004E6D4 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 -/* 04F2D8 8004E6D8 10000009 */ b .L8004E700 -/* 04F2DC 8004E6DC AC22D530 */ sw $v0, %lo(D_8011D530)($at) -.L8004E6E0: -/* 04F2E0 8004E6E0 0C016909 */ jal func_8005A424 -/* 04F2E4 8004E6E4 02002025 */ move $a0, $s0 -/* 04F2E8 8004E6E8 10000005 */ b .L8004E700 -/* 04F2EC 8004E6EC 00000000 */ nop -/* 04F2F0 8004E6F0 8FA600B4 */ lw $a2, 0xb4($sp) -.L8004E6F4: -/* 04F2F4 8004E6F4 02202025 */ move $a0, $s1 -/* 04F2F8 8004E6F8 0C01105C */ jal func_80044170 -/* 04F2FC 8004E6FC 02002825 */ move $a1, $s0 -.L8004E700: -/* 04F300 8004E700 3C098012 */ lui $t1, %hi(D_8011D528) # $t1, 0x8012 -/* 04F304 8004E704 8D29D528 */ lw $t1, %lo(D_8011D528)($t1) -/* 04F308 8004E708 00000000 */ nop -/* 04F30C 8004E70C 312A8000 */ andi $t2, $t1, 0x8000 -/* 04F310 8004E710 15400002 */ bnez $t2, .L8004E71C -/* 04F314 8004E714 240B0001 */ li $t3, 1 -/* 04F318 8004E718 A20B020C */ sb $t3, 0x20c($s0) -.L8004E71C: -/* 04F31C 8004E71C 0C019944 */ jal func_80066510 -/* 04F320 8004E720 00000000 */ nop -/* 04F324 8004E724 14400014 */ bnez $v0, .L8004E778 -/* 04F328 8004E728 3C0D8012 */ lui $t5, %hi(D_8011D540) # $t5, 0x8012 -/* 04F32C 8004E72C 8DADD540 */ lw $t5, %lo(D_8011D540)($t5) -/* 04F330 8004E730 24010064 */ li $at, 100 -/* 04F334 8004E734 11A10010 */ beq $t5, $at, .L8004E778 -/* 04F338 8004E738 00000000 */ nop -/* 04F33C 8004E73C 920C01F1 */ lbu $t4, 0x1f1($s0) -/* 04F340 8004E740 3C0E8012 */ lui $t6, %hi(D_8011D584) # $t6, 0x8012 -/* 04F344 8004E744 1580000C */ bnez $t4, .L8004E778 -/* 04F348 8004E748 00000000 */ nop -/* 04F34C 8004E74C 81CED584 */ lb $t6, %lo(D_8011D584)($t6) -/* 04F350 8004E750 00000000 */ nop -/* 04F354 8004E754 15C00008 */ bnez $t6, .L8004E778 -/* 04F358 8004E758 00000000 */ nop -/* 04F35C 8004E75C 8E0F0148 */ lw $t7, 0x148($s0) -/* 04F360 8004E760 00000000 */ nop -/* 04F364 8004E764 15E00004 */ bnez $t7, .L8004E778 -/* 04F368 8004E768 00000000 */ nop -/* 04F36C 8004E76C 86020204 */ lh $v0, 0x204($s0) -/* 04F370 8004E770 00000000 */ nop -/* 04F374 8004E774 1840000C */ blez $v0, .L8004E7A8 -.L8004E778: -/* 04F378 8004E778 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 04F37C 8004E77C AC20D534 */ sw $zero, %lo(D_8011D534)($at) -/* 04F380 8004E780 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 -/* 04F384 8004E784 AC20D538 */ sw $zero, %lo(D_8011D538)($at) -/* 04F388 8004E788 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 -/* 04F38C 8004E78C AC20D528 */ sw $zero, %lo(D_8011D528)($at) -/* 04F390 8004E790 3C018012 */ lui $at, %hi(D_8011D52C) # $at, 0x8012 -/* 04F394 8004E794 AC20D52C */ sw $zero, %lo(D_8011D52C)($at) -/* 04F398 8004E798 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 -/* 04F39C 8004E79C AC20D530 */ sw $zero, %lo(D_8011D530)($at) -/* 04F3A0 8004E7A0 86020204 */ lh $v0, 0x204($s0) -/* 04F3A4 8004E7A4 A20001E1 */ sb $zero, 0x1e1($s0) -.L8004E7A8: -/* 04F3A8 8004E7A8 18400019 */ blez $v0, .L8004E810 -/* 04F3AC 8004E7AC 3C01800E */ lui $at, %hi(D_800E65A4) # $at, 0x800e -/* 04F3B0 8004E7B0 C42065A4 */ lwc1 $f0, %lo(D_800E65A4)($at) -/* 04F3B4 8004E7B4 8FA800B4 */ lw $t0, 0xb4($sp) -/* 04F3B8 8004E7B8 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 04F3BC 8004E7BC 44811000 */ mtc1 $at, $f2 -/* 04F3C0 8004E7C0 0048C023 */ subu $t8, $v0, $t0 -/* 04F3C4 8004E7C4 A6180204 */ sh $t8, 0x204($s0) -/* 04F3C8 8004E7C8 3C01800E */ lui $at, %hi(D_800E65A8) # $at, 0x800e -/* 04F3CC 8004E7CC C42A65A8 */ lwc1 $f10, %lo(D_800E65A8)($at) -/* 04F3D0 8004E7D0 C606002C */ lwc1 $f6, 0x2c($s0) -/* 04F3D4 8004E7D4 00000000 */ nop -/* 04F3D8 8004E7D8 460A3202 */ mul.s $f8, $f6, $f10 -/* 04F3DC 8004E7DC E608002C */ swc1 $f8, 0x2c($s0) -/* 04F3E0 8004E7E0 C624001C */ lwc1 $f4, 0x1c($s1) -/* 04F3E4 8004E7E4 C62A0020 */ lwc1 $f10, 0x20($s1) -/* 04F3E8 8004E7E8 46002182 */ mul.s $f6, $f4, $f0 -/* 04F3EC 8004E7EC 460A103C */ c.lt.s $f2, $f10 -/* 04F3F0 8004E7F0 00000000 */ nop -/* 04F3F4 8004E7F4 45000002 */ bc1f .L8004E800 -/* 04F3F8 8004E7F8 E626001C */ swc1 $f6, 0x1c($s1) -/* 04F3FC 8004E7FC E6220020 */ swc1 $f2, 0x20($s1) -.L8004E800: -/* 04F400 8004E800 C6280024 */ lwc1 $f8, 0x24($s1) -/* 04F404 8004E804 00000000 */ nop -/* 04F408 8004E808 46004102 */ mul.s $f4, $f8, $f0 -/* 04F40C 8004E80C E6240024 */ swc1 $f4, 0x24($s1) -.L8004E810: -/* 04F410 8004E810 86020206 */ lh $v0, 0x206($s0) -/* 04F414 8004E814 00000000 */ nop -/* 04F418 8004E818 18400006 */ blez $v0, .L8004E834 -/* 04F41C 8004E81C 00000000 */ nop -/* 04F420 8004E820 A602018A */ sh $v0, 0x18a($s0) -/* 04F424 8004E824 8FB900B4 */ lw $t9, 0xb4($sp) -/* 04F428 8004E828 00000000 */ nop -/* 04F42C 8004E82C 00594823 */ subu $t1, $v0, $t9 -/* 04F430 8004E830 A6090206 */ sh $t1, 0x206($s0) -.L8004E834: -/* 04F434 8004E834 8602018A */ lh $v0, 0x18a($s0) -/* 04F438 8004E838 00000000 */ nop -/* 04F43C 8004E83C 18400015 */ blez $v0, .L8004E894 -/* 04F440 8004E840 00000000 */ nop -/* 04F444 8004E844 8FAA00B4 */ lw $t2, 0xb4($sp) -/* 04F448 8004E848 3046000F */ andi $a2, $v0, 0xf -/* 04F44C 8004E84C 004A5823 */ subu $t3, $v0, $t2 -/* 04F450 8004E850 A60B018A */ sh $t3, 0x18a($s0) -/* 04F454 8004E854 860D018A */ lh $t5, 0x18a($s0) -/* 04F458 8004E858 2404FFB0 */ li $a0, -80 -/* 04F45C 8004E85C 31AC000F */ andi $t4, $t5, 0xf -/* 04F460 8004E860 00CC082A */ slt $at, $a2, $t4 -/* 04F464 8004E864 10200004 */ beqz $at, .L8004E878 -/* 04F468 8004E868 00000000 */ nop -/* 04F46C 8004E86C 0C01BE53 */ jal func_8006F94C -/* 04F470 8004E870 24050050 */ li $a1, 80 -/* 04F474 8004E874 A20201D1 */ sb $v0, 0x1d1($s0) -.L8004E878: -/* 04F478 8004E878 3C0E8012 */ lui $t6, %hi(D_8011D534) # $t6, 0x8012 -/* 04F47C 8004E87C 8DCED534 */ lw $t6, %lo(D_8011D534)($t6) -/* 04F480 8004E880 820F01D1 */ lb $t7, 0x1d1($s0) -/* 04F484 8004E884 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 04F488 8004E888 01CF4021 */ addu $t0, $t6, $t7 -/* 04F48C 8004E88C 10000002 */ b .L8004E898 -/* 04F490 8004E890 AC28D534 */ sw $t0, %lo(D_8011D534)($at) -.L8004E894: -/* 04F494 8004E894 A600018A */ sh $zero, 0x18a($s0) -.L8004E898: -/* 04F498 8004E898 82180175 */ lb $t8, 0x175($s0) -/* 04F49C 8004E89C 00000000 */ nop -/* 04F4A0 8004E8A0 13000005 */ beqz $t8, .L8004E8B8 -/* 04F4A4 8004E8A4 00000000 */ nop -/* 04F4A8 8004E8A8 8FA600B4 */ lw $a2, 0xb4($sp) -/* 04F4AC 8004E8AC 02202025 */ move $a0, $s1 -/* 04F4B0 8004E8B0 0C015B8B */ jal func_80056E2C -/* 04F4B4 8004E8B4 02002825 */ move $a1, $s0 -.L8004E8B8: -/* 04F4B8 8004E8B8 3C038012 */ lui $v1, %hi(D_8011D540) # $v1, 0x8012 -/* 04F4BC 8004E8BC 8C63D540 */ lw $v1, %lo(D_8011D540)($v1) -/* 04F4C0 8004E8C0 00000000 */ nop -/* 04F4C4 8004E8C4 10600010 */ beqz $v1, .L8004E908 -/* 04F4C8 8004E8C8 00000000 */ nop -/* 04F4CC 8004E8CC 8FB9007C */ lw $t9, 0x7c($sp) -/* 04F4D0 8004E8D0 24010003 */ li $at, 3 -/* 04F4D4 8004E8D4 8322004C */ lb $v0, 0x4c($t9) -/* 04F4D8 8004E8D8 00000000 */ nop -/* 04F4DC 8004E8DC 10400004 */ beqz $v0, .L8004E8F0 -/* 04F4E0 8004E8E0 00000000 */ nop -/* 04F4E4 8004E8E4 10410002 */ beq $v0, $at, .L8004E8F0 -/* 04F4E8 8004E8E8 24010008 */ li $at, 8 -/* 04F4EC 8004E8EC 14410006 */ bne $v0, $at, .L8004E908 -.L8004E8F0: -/* 04F4F0 8004E8F0 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 04F4F4 8004E8F4 AC20D534 */ sw $zero, %lo(D_8011D534)($at) -/* 04F4F8 8004E8F8 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 -/* 04F4FC 8004E8FC AC20D538 */ sw $zero, %lo(D_8011D538)($at) -/* 04F500 8004E900 3C018012 */ lui $at, %hi(D_8011D528) # $at, 0x8012 -/* 04F504 8004E904 AC20D528 */ sw $zero, %lo(D_8011D528)($at) -.L8004E908: -/* 04F508 8004E908 1460001C */ bnez $v1, .L8004E97C -/* 04F50C 8004E90C 00000000 */ nop -/* 04F510 8004E910 8FAA007C */ lw $t2, 0x7c($sp) -/* 04F514 8004E914 82090194 */ lb $t1, 0x194($s0) -/* 04F518 8004E918 814B004B */ lb $t3, 0x4b($t2) -/* 04F51C 8004E91C 00000000 */ nop -/* 04F520 8004E920 012B082A */ slt $at, $t1, $t3 -/* 04F524 8004E924 10200015 */ beqz $at, .L8004E97C -/* 04F528 8004E928 00000000 */ nop -/* 04F52C 8004E92C 0C00322D */ jal func_8000C8B4 -/* 04F530 8004E930 34048CA0 */ li $a0, 36000 -/* 04F534 8004E934 820D0194 */ lb $t5, 0x194($s0) -/* 04F538 8004E938 8FA500B4 */ lw $a1, 0xb4($sp) -/* 04F53C 8004E93C 000D6080 */ sll $t4, $t5, 2 -/* 04F540 8004E940 020C1821 */ addu $v1, $s0, $t4 -/* 04F544 8004E944 8C640128 */ lw $a0, 0x128($v1) -/* 04F548 8004E948 00457023 */ subu $t6, $v0, $a1 -/* 04F54C 8004E94C 008E082A */ slt $at, $a0, $t6 -/* 04F550 8004E950 10200003 */ beqz $at, .L8004E960 -/* 04F554 8004E954 00857821 */ addu $t7, $a0, $a1 -/* 04F558 8004E958 10000008 */ b .L8004E97C -/* 04F55C 8004E95C AC6F0128 */ sw $t7, 0x128($v1) -.L8004E960: -/* 04F560 8004E960 0C00322D */ jal func_8000C8B4 -/* 04F564 8004E964 34048CA0 */ li $a0, 36000 -/* 04F568 8004E968 82080194 */ lb $t0, 0x194($s0) -/* 04F56C 8004E96C 00000000 */ nop -/* 04F570 8004E970 0008C080 */ sll $t8, $t0, 2 -/* 04F574 8004E974 0218C821 */ addu $t9, $s0, $t8 -/* 04F578 8004E978 AF220128 */ sw $v0, 0x128($t9) -.L8004E97C: -/* 04F57C 8004E97C 3C0A8012 */ lui $t2, %hi(D_8011D55C) # $t2, 0x8012 -/* 04F580 8004E980 8D4AD55C */ lw $t2, %lo(D_8011D55C)($t2) -/* 04F584 8004E984 2401FFFF */ li $at, -1 -/* 04F588 8004E988 11410005 */ beq $t2, $at, .L8004E9A0 -/* 04F58C 8004E98C 00000000 */ nop -/* 04F590 8004E990 0C01A73F */ jal func_80069CFC -/* 04F594 8004E994 00000000 */ nop -/* 04F598 8004E998 3C018012 */ lui $at, %hi(D_8011D508) # $at, 0x8012 -/* 04F59C 8004E99C AC22D508 */ sw $v0, %lo(D_8011D508)($at) -.L8004E9A0: -/* 04F5A0 8004E9A0 8624002E */ lh $a0, 0x2e($s1) -/* 04F5A4 8004E9A4 8E25000C */ lw $a1, 0xc($s1) -/* 04F5A8 8004E9A8 8E260014 */ lw $a2, 0x14($s1) -/* 04F5AC 8004E9AC 3C078012 */ lui $a3, %hi(D_8011D5B0) # $a3, 0x8012 -/* 04F5B0 8004E9B0 0C00AC3D */ jal func_8002B0F4 -/* 04F5B4 8004E9B4 24E7D5B0 */ addiu $a3, %lo(D_8011D5B0) # addiu $a3, $a3, -0x2a50 -/* 04F5B8 8004E9B8 3C038012 */ lui $v1, %hi(D_8011D5AE) # $v1, 0x8012 -/* 04F5BC 8004E9BC 2463D5AE */ addiu $v1, %lo(D_8011D5AE) # addiu $v1, $v1, -0x2a52 -/* 04F5C0 8004E9C0 A0620000 */ sb $v0, ($v1) -/* 04F5C4 8004E9C4 80640000 */ lb $a0, ($v1) -/* 04F5C8 8004E9C8 00000000 */ nop -/* 04F5CC 8004E9CC 10800019 */ beqz $a0, .L8004EA34 -/* 04F5D0 8004E9D0 00000000 */ nop -/* 04F5D4 8004E9D4 18800017 */ blez $a0, .L8004EA34 -/* 04F5D8 8004E9D8 00001025 */ move $v0, $zero -/* 04F5DC 8004E9DC 3C038012 */ lui $v1, %hi(D_8011D5B0) # $v1, 0x8012 -/* 04F5E0 8004E9E0 3C078012 */ lui $a3, %hi(D_8011D4F0) # $a3, 0x8012 -/* 04F5E4 8004E9E4 8C63D5B0 */ lw $v1, %lo(D_8011D5B0)($v1) -/* 04F5E8 8004E9E8 24E7D4F0 */ addiu $a3, %lo(D_8011D4F0) # addiu $a3, $a3, -0x2b10 -/* 04F5EC 8004E9EC 00042880 */ sll $a1, $a0, 2 -/* 04F5F0 8004E9F0 2406000F */ li $a2, 15 -.L8004E9F4: -/* 04F5F4 8004E9F4 8C640000 */ lw $a0, ($v1) -/* 04F5F8 8004E9F8 24420004 */ addiu $v0, $v0, 4 -/* 04F5FC 8004E9FC 80890010 */ lb $t1, 0x10($a0) -/* 04F600 8004EA00 0045082A */ slt $at, $v0, $a1 -/* 04F604 8004EA04 14C90009 */ bne $a2, $t1, .L8004EA2C -/* 04F608 8004EA08 00000000 */ nop -/* 04F60C 8004EA0C C4800000 */ lwc1 $f0, ($a0) -/* 04F610 8004EA10 C4E60000 */ lwc1 $f6, ($a3) -/* 04F614 8004EA14 00000000 */ nop -/* 04F618 8004EA18 4606003C */ c.lt.s $f0, $f6 -/* 04F61C 8004EA1C 00000000 */ nop -/* 04F620 8004EA20 45000002 */ bc1f .L8004EA2C -/* 04F624 8004EA24 00000000 */ nop -/* 04F628 8004EA28 E4E00000 */ swc1 $f0, ($a3) -.L8004EA2C: -/* 04F62C 8004EA2C 1420FFF1 */ bnez $at, .L8004E9F4 -/* 04F630 8004EA30 24630004 */ addiu $v1, $v1, 4 -.L8004EA34: -/* 04F634 8004EA34 820B01D6 */ lb $t3, 0x1d6($s0) -/* 04F638 8004EA38 24010001 */ li $at, 1 -/* 04F63C 8004EA3C 11610044 */ beq $t3, $at, .L8004EB50 -/* 04F640 8004EA40 3C01800E */ lui $at, %hi(D_800E65AC) # $at, 0x800e -/* 04F644 8004EA44 C42A65AC */ lwc1 $f10, %lo(D_800E65AC)($at) -/* 04F648 8004EA48 3C068012 */ lui $a2, %hi(D_8011D4F8) # $a2, 0x8012 -/* 04F64C 8004EA4C E7AA0098 */ swc1 $f10, 0x98($sp) -/* 04F650 8004EA50 C62C0010 */ lwc1 $f12, 0x10($s1) -/* 04F654 8004EA54 24C6D4F8 */ addiu $a2, %lo(D_8011D4F8) # addiu $a2, $a2, -0x2b08 -/* 04F658 8004EA58 0C00AB42 */ jal func_8002AD08 -/* 04F65C 8004EA5C 27A50098 */ addiu $a1, $sp, 0x98 -/* 04F660 8004EA60 3C038012 */ lui $v1, %hi(D_8011D504) # $v1, 0x8012 -/* 04F664 8004EA64 2463D504 */ addiu $v1, %lo(D_8011D504) # addiu $v1, $v1, -0x2afc -/* 04F668 8004EA68 A0620000 */ sb $v0, ($v1) -/* 04F66C 8004EA6C 806D0000 */ lb $t5, ($v1) -/* 04F670 8004EA70 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 04F674 8004EA74 11A00014 */ beqz $t5, .L8004EAC8 -/* 04F678 8004EA78 00000000 */ nop -/* 04F67C 8004EA7C 44810000 */ mtc1 $at, $f0 -/* 04F680 8004EA80 C6280010 */ lwc1 $f8, 0x10($s1) -/* 04F684 8004EA84 C7A60098 */ lwc1 $f6, 0x98($sp) -/* 04F688 8004EA88 46004101 */ sub.s $f4, $f8, $f0 -/* 04F68C 8004EA8C 240C0005 */ li $t4, 5 -/* 04F690 8004EA90 4606203C */ c.lt.s $f4, $f6 -/* 04F694 8004EA94 00000000 */ nop -/* 04F698 8004EA98 45000008 */ bc1f .L8004EABC -/* 04F69C 8004EA9C 00000000 */ nop -/* 04F6A0 8004EAA0 A20C01E5 */ sb $t4, 0x1e5($s0) -/* 04F6A4 8004EAA4 C6280010 */ lwc1 $f8, 0x10($s1) -/* 04F6A8 8004EAA8 C7AA0098 */ lwc1 $f10, 0x98($sp) -/* 04F6AC 8004EAAC 46004101 */ sub.s $f4, $f8, $f0 -/* 04F6B0 8004EAB0 46045181 */ sub.s $f6, $f10, $f4 -/* 04F6B4 8004EAB4 1000000F */ b .L8004EAF4 -/* 04F6B8 8004EAB8 E60600C0 */ swc1 $f6, 0xc0($s0) -.L8004EABC: -/* 04F6BC 8004EABC 44804000 */ mtc1 $zero, $f8 -/* 04F6C0 8004EAC0 1000000C */ b .L8004EAF4 -/* 04F6C4 8004EAC4 E60800C0 */ swc1 $f8, 0xc0($s0) -.L8004EAC8: -/* 04F6C8 8004EAC8 820201E5 */ lb $v0, 0x1e5($s0) -/* 04F6CC 8004EACC 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 04F6D0 8004EAD0 18400005 */ blez $v0, .L8004EAE8 -/* 04F6D4 8004EAD4 244EFFFF */ addiu $t6, $v0, -1 -/* 04F6D8 8004EAD8 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 04F6DC 8004EADC 44810000 */ mtc1 $at, $f0 -/* 04F6E0 8004EAE0 10000004 */ b .L8004EAF4 -/* 04F6E4 8004EAE4 A20E01E5 */ sb $t6, 0x1e5($s0) -.L8004EAE8: -/* 04F6E8 8004EAE8 44805000 */ mtc1 $zero, $f10 -/* 04F6EC 8004EAEC 44810000 */ mtc1 $at, $f0 -/* 04F6F0 8004EAF0 E60A00C0 */ swc1 $f10, 0xc0($s0) -.L8004EAF4: -/* 04F6F4 8004EAF4 820F01E5 */ lb $t7, 0x1e5($s0) -/* 04F6F8 8004EAF8 C7A60098 */ lwc1 $f6, 0x98($sp) -/* 04F6FC 8004EAFC 19E0000E */ blez $t7, .L8004EB38 -/* 04F700 8004EB00 00000000 */ nop -/* 04F704 8004EB04 C6240010 */ lwc1 $f4, 0x10($s1) -/* 04F708 8004EB08 46003200 */ add.s $f8, $f6, $f0 -/* 04F70C 8004EB0C 4608203C */ c.lt.s $f4, $f8 -/* 04F710 8004EB10 00000000 */ nop -/* 04F714 8004EB14 45000008 */ bc1f .L8004EB38 -/* 04F718 8004EB18 00000000 */ nop -/* 04F71C 8004EB1C 8E22004C */ lw $v0, 0x4c($s1) -/* 04F720 8004EB20 00000000 */ nop -/* 04F724 8004EB24 84480014 */ lh $t0, 0x14($v0) -/* 04F728 8004EB28 00000000 */ nop -/* 04F72C 8004EB2C 35180010 */ ori $t8, $t0, 0x10 -/* 04F730 8004EB30 10000007 */ b .L8004EB50 -/* 04F734 8004EB34 A4580014 */ sh $t8, 0x14($v0) -.L8004EB38: -/* 04F738 8004EB38 8E22004C */ lw $v0, 0x4c($s1) -/* 04F73C 8004EB3C 00000000 */ nop -/* 04F740 8004EB40 84590014 */ lh $t9, 0x14($v0) -/* 04F744 8004EB44 00000000 */ nop -/* 04F748 8004EB48 332AFFEF */ andi $t2, $t9, 0xffef -/* 04F74C 8004EB4C A44A0014 */ sh $t2, 0x14($v0) -.L8004EB50: -/* 04F750 8004EB50 0C00AB32 */ jal func_8002ACC8 -/* 04F754 8004EB54 00002025 */ move $a0, $zero -/* 04F758 8004EB58 920901D6 */ lbu $t1, 0x1d6($s0) -/* 04F75C 8004EB5C 00000000 */ nop -/* 04F760 8004EB60 2D21000E */ sltiu $at, $t1, 0xe -/* 04F764 8004EB64 10200088 */ beqz $at, .L8004ED88 -/* 04F768 8004EB68 00094880 */ sll $t1, $t1, 2 -/* 04F76C 8004EB6C 3C01800E */ lui $at, 0x800e -/* 04F770 8004EB70 00290821 */ addu $at, $at, $t1 -/* 04F774 8004EB74 8C2965B0 */ lw $t1, 0x65b0($at) -/* 04F778 8004EB78 00000000 */ nop -/* 04F77C 8004EB7C 01200008 */ jr $t1 -/* 04F780 8004EB80 00000000 */ nop -/* 04F784 8004EB84 8FA400B4 */ lw $a0, 0xb4($sp) -/* 04F788 8004EB88 8FA5009C */ lw $a1, 0x9c($sp) -/* 04F78C 8004EB8C 02203025 */ move $a2, $s1 -/* 04F790 8004EB90 0C013DFD */ jal func_8004F7F4 -/* 04F794 8004EB94 02003825 */ move $a3, $s0 -/* 04F798 8004EB98 1000007C */ b .L8004ED8C -/* 04F79C 8004EB9C 820A0175 */ lb $t2, 0x175($s0) -/* 04F7A0 8004EBA0 8FA400B4 */ lw $a0, 0xb4($sp) -/* 04F7A4 8004EBA4 8FA5009C */ lw $a1, 0x9c($sp) -/* 04F7A8 8004EBA8 02203025 */ move $a2, $s1 -/* 04F7AC 8004EBAC 0C013308 */ jal func_8004CC20 -/* 04F7B0 8004EBB0 02003825 */ move $a3, $s0 -/* 04F7B4 8004EBB4 10000075 */ b .L8004ED8C -/* 04F7B8 8004EBB8 820A0175 */ lb $t2, 0x175($s0) -/* 04F7BC 8004EBBC 8FA400B4 */ lw $a0, 0xb4($sp) -/* 04F7C0 8004EBC0 8FA5009C */ lw $a1, 0x9c($sp) -/* 04F7C4 8004EBC4 02203025 */ move $a2, $s1 -/* 04F7C8 8004EBC8 0C011949 */ jal func_80046524 -/* 04F7CC 8004EBCC 02003825 */ move $a3, $s0 -/* 04F7D0 8004EBD0 1000006E */ b .L8004ED8C -/* 04F7D4 8004EBD4 820A0175 */ lb $t2, 0x175($s0) -/* 04F7D8 8004EBD8 8FA400B4 */ lw $a0, 0xb4($sp) -/* 04F7DC 8004EBDC 8FA5009C */ lw $a1, 0x9c($sp) -/* 04F7E0 8004EBE0 02203025 */ move $a2, $s1 -/* 04F7E4 8004EBE4 0C0125E5 */ jal func_80049794 -/* 04F7E8 8004EBE8 02003825 */ move $a3, $s0 -/* 04F7EC 8004EBEC 10000067 */ b .L8004ED8C -/* 04F7F0 8004EBF0 820A0175 */ lb $t2, 0x175($s0) -/* 04F7F4 8004EBF4 8FA400B4 */ lw $a0, 0xb4($sp) -/* 04F7F8 8004EBF8 8FA5009C */ lw $a1, 0x9c($sp) -/* 04F7FC 8004EBFC 02203025 */ move $a2, $s1 -/* 04F800 8004EC00 0C013657 */ jal func_8004D95C -/* 04F804 8004EC04 02003825 */ move $a3, $s0 -/* 04F808 8004EC08 10000060 */ b .L8004ED8C -/* 04F80C 8004EC0C 820A0175 */ lb $t2, 0x175($s0) -/* 04F810 8004EC10 3C0B8012 */ lui $t3, %hi(D_8011D528) # $t3, 0x8012 -/* 04F814 8004EC14 3C0D8012 */ lui $t5, %hi(D_8011D52C) # $t5, 0x8012 -/* 04F818 8004EC18 3C0C8012 */ lui $t4, %hi(D_8011D540) # $t4, 0x8012 -/* 04F81C 8004EC1C 258CD540 */ addiu $t4, %lo(D_8011D540) # addiu $t4, $t4, -0x2ac0 -/* 04F820 8004EC20 25ADD52C */ addiu $t5, %lo(D_8011D52C) # addiu $t5, $t5, -0x2ad4 -/* 04F824 8004EC24 256BD528 */ addiu $t3, %lo(D_8011D528) # addiu $t3, $t3, -0x2ad8 -/* 04F828 8004EC28 8FA400B4 */ lw $a0, 0xb4($sp) -/* 04F82C 8004EC2C 8FA5009C */ lw $a1, 0x9c($sp) -/* 04F830 8004EC30 AFAB0010 */ sw $t3, 0x10($sp) -/* 04F834 8004EC34 AFAD0014 */ sw $t5, 0x14($sp) -/* 04F838 8004EC38 AFAC0018 */ sw $t4, 0x18($sp) -/* 04F83C 8004EC3C 02203025 */ move $a2, $s1 -/* 04F840 8004EC40 0C0170D9 */ jal func_8005C364 -/* 04F844 8004EC44 02003825 */ move $a3, $s0 -/* 04F848 8004EC48 10000050 */ b .L8004ED8C -/* 04F84C 8004EC4C 820A0175 */ lb $t2, 0x175($s0) -/* 04F850 8004EC50 3C0E8012 */ lui $t6, %hi(D_8011D528) # $t6, 0x8012 -/* 04F854 8004EC54 3C0F8012 */ lui $t7, %hi(D_8011D52C) # $t7, 0x8012 -/* 04F858 8004EC58 3C088012 */ lui $t0, %hi(D_8011D540) # $t0, 0x8012 -/* 04F85C 8004EC5C 2508D540 */ addiu $t0, %lo(D_8011D540) # addiu $t0, $t0, -0x2ac0 -/* 04F860 8004EC60 25EFD52C */ addiu $t7, %lo(D_8011D52C) # addiu $t7, $t7, -0x2ad4 -/* 04F864 8004EC64 25CED528 */ addiu $t6, %lo(D_8011D528) # addiu $t6, $t6, -0x2ad8 -/* 04F868 8004EC68 8FA400B4 */ lw $a0, 0xb4($sp) -/* 04F86C 8004EC6C 8FA5009C */ lw $a1, 0x9c($sp) -/* 04F870 8004EC70 AFAE0010 */ sw $t6, 0x10($sp) -/* 04F874 8004EC74 AFAF0014 */ sw $t7, 0x14($sp) -/* 04F878 8004EC78 AFA80018 */ sw $t0, 0x18($sp) -/* 04F87C 8004EC7C 02203025 */ move $a2, $s1 -/* 04F880 8004EC80 0C017434 */ jal func_8005D0D0 -/* 04F884 8004EC84 02003825 */ move $a3, $s0 -/* 04F888 8004EC88 10000040 */ b .L8004ED8C -/* 04F88C 8004EC8C 820A0175 */ lb $t2, 0x175($s0) -/* 04F890 8004EC90 3C188012 */ lui $t8, %hi(D_8011D528) # $t8, 0x8012 -/* 04F894 8004EC94 3C198012 */ lui $t9, %hi(D_8011D534) # $t9, 0x8012 -/* 04F898 8004EC98 3C0A8012 */ lui $t2, %hi(D_8011D540) # $t2, 0x8012 -/* 04F89C 8004EC9C 254AD540 */ addiu $t2, %lo(D_8011D540) # addiu $t2, $t2, -0x2ac0 -/* 04F8A0 8004ECA0 2739D534 */ addiu $t9, %lo(D_8011D534) # addiu $t9, $t9, -0x2acc -/* 04F8A4 8004ECA4 2718D528 */ addiu $t8, %lo(D_8011D528) # addiu $t8, $t8, -0x2ad8 -/* 04F8A8 8004ECA8 8FA400B4 */ lw $a0, 0xb4($sp) -/* 04F8AC 8004ECAC 8FA5009C */ lw $a1, 0x9c($sp) -/* 04F8B0 8004ECB0 AFB80010 */ sw $t8, 0x10($sp) -/* 04F8B4 8004ECB4 AFB90014 */ sw $t9, 0x14($sp) -/* 04F8B8 8004ECB8 AFAA0018 */ sw $t2, 0x18($sp) -/* 04F8BC 8004ECBC 02203025 */ move $a2, $s1 -/* 04F8C0 8004ECC0 0C017608 */ jal func_8005D820 -/* 04F8C4 8004ECC4 02003825 */ move $a3, $s0 -/* 04F8C8 8004ECC8 10000030 */ b .L8004ED8C -/* 04F8CC 8004ECCC 820A0175 */ lb $t2, 0x175($s0) -/* 04F8D0 8004ECD0 3C098012 */ lui $t1, %hi(D_8011D528) # $t1, 0x8012 -/* 04F8D4 8004ECD4 3C0B8012 */ lui $t3, %hi(D_8011D52C) # $t3, 0x8012 -/* 04F8D8 8004ECD8 3C0D8012 */ lui $t5, %hi(D_8011D540) # $t5, 0x8012 -/* 04F8DC 8004ECDC 25ADD540 */ addiu $t5, %lo(D_8011D540) # addiu $t5, $t5, -0x2ac0 -/* 04F8E0 8004ECE0 256BD52C */ addiu $t3, %lo(D_8011D52C) # addiu $t3, $t3, -0x2ad4 -/* 04F8E4 8004ECE4 2529D528 */ addiu $t1, %lo(D_8011D528) # addiu $t1, $t1, -0x2ad8 -/* 04F8E8 8004ECE8 8FA400B4 */ lw $a0, 0xb4($sp) -/* 04F8EC 8004ECEC 8FA5009C */ lw $a1, 0x9c($sp) -/* 04F8F0 8004ECF0 AFA90010 */ sw $t1, 0x10($sp) -/* 04F8F4 8004ECF4 AFAB0014 */ sw $t3, 0x14($sp) -/* 04F8F8 8004ECF8 AFAD0018 */ sw $t5, 0x18($sp) -/* 04F8FC 8004ECFC 02203025 */ move $a2, $s1 -/* 04F900 8004ED00 0C017930 */ jal func_8005E4C0 -/* 04F904 8004ED04 02003825 */ move $a3, $s0 -/* 04F908 8004ED08 10000020 */ b .L8004ED8C -/* 04F90C 8004ED0C 820A0175 */ lb $t2, 0x175($s0) -/* 04F910 8004ED10 3C0C8012 */ lui $t4, %hi(D_8011D528) # $t4, 0x8012 -/* 04F914 8004ED14 3C0E8012 */ lui $t6, %hi(D_8011D52C) # $t6, 0x8012 -/* 04F918 8004ED18 3C0F8012 */ lui $t7, %hi(D_8011D540) # $t7, 0x8012 -/* 04F91C 8004ED1C 25EFD540 */ addiu $t7, %lo(D_8011D540) # addiu $t7, $t7, -0x2ac0 -/* 04F920 8004ED20 25CED52C */ addiu $t6, %lo(D_8011D52C) # addiu $t6, $t6, -0x2ad4 -/* 04F924 8004ED24 258CD528 */ addiu $t4, %lo(D_8011D528) # addiu $t4, $t4, -0x2ad8 -/* 04F928 8004ED28 8FA400B4 */ lw $a0, 0xb4($sp) -/* 04F92C 8004ED2C 8FA5009C */ lw $a1, 0x9c($sp) -/* 04F930 8004ED30 AFAC0010 */ sw $t4, 0x10($sp) -/* 04F934 8004ED34 AFAE0014 */ sw $t6, 0x14($sp) -/* 04F938 8004ED38 AFAF0018 */ sw $t7, 0x18($sp) -/* 04F93C 8004ED3C 02203025 */ move $a2, $s1 -/* 04F940 8004ED40 0C017AA4 */ jal func_8005EA90 -/* 04F944 8004ED44 02003825 */ move $a3, $s0 -/* 04F948 8004ED48 10000010 */ b .L8004ED8C -/* 04F94C 8004ED4C 820A0175 */ lb $t2, 0x175($s0) -/* 04F950 8004ED50 3C088012 */ lui $t0, %hi(D_8011D528) # $t0, 0x8012 -/* 04F954 8004ED54 3C188012 */ lui $t8, %hi(D_8011D52C) # $t8, 0x8012 -/* 04F958 8004ED58 3C198012 */ lui $t9, %hi(D_8011D540) # $t9, 0x8012 -/* 04F95C 8004ED5C 2739D540 */ addiu $t9, %lo(D_8011D540) # addiu $t9, $t9, -0x2ac0 -/* 04F960 8004ED60 2718D52C */ addiu $t8, %lo(D_8011D52C) # addiu $t8, $t8, -0x2ad4 -/* 04F964 8004ED64 2508D528 */ addiu $t0, %lo(D_8011D528) # addiu $t0, $t0, -0x2ad8 -/* 04F968 8004ED68 8FA400B4 */ lw $a0, 0xb4($sp) -/* 04F96C 8004ED6C 8FA5009C */ lw $a1, 0x9c($sp) -/* 04F970 8004ED70 AFA80010 */ sw $t0, 0x10($sp) -/* 04F974 8004ED74 AFB80014 */ sw $t8, 0x14($sp) -/* 04F978 8004ED78 AFB90018 */ sw $t9, 0x18($sp) -/* 04F97C 8004ED7C 02203025 */ move $a2, $s1 -/* 04F980 8004ED80 0C017CC4 */ jal func_8005F310 -/* 04F984 8004ED84 02003825 */ move $a3, $s0 -.L8004ED88: -/* 04F988 8004ED88 820A0175 */ lb $t2, 0x175($s0) -.L8004ED8C: -/* 04F98C 8004ED8C 00000000 */ nop -/* 04F990 8004ED90 15400009 */ bnez $t2, .L8004EDB8 -/* 04F994 8004ED94 8FA9007C */ lw $t1, 0x7c($sp) -/* 04F998 8004ED98 8E040178 */ lw $a0, 0x178($s0) -/* 04F99C 8004ED9C 00000000 */ nop -/* 04F9A0 8004EDA0 10800005 */ beqz $a0, .L8004EDB8 -/* 04F9A4 8004EDA4 8FA9007C */ lw $t1, 0x7c($sp) -/* 04F9A8 8004EDA8 0C001223 */ jal func_8000488C -/* 04F9AC 8004EDAC 00000000 */ nop -/* 04F9B0 8004EDB0 AE000178 */ sw $zero, 0x178($s0) -/* 04F9B4 8004EDB4 8FA9007C */ lw $t1, 0x7c($sp) -.L8004EDB8: -/* 04F9B8 8004EDB8 00000000 */ nop -/* 04F9BC 8004EDBC 8122004A */ lb $v0, 0x4a($t1) -/* 04F9C0 8004EDC0 00000000 */ nop -/* 04F9C4 8004EDC4 10400011 */ beqz $v0, .L8004EE0C -/* 04F9C8 8004EDC8 8FAB00A4 */ lw $t3, 0xa4($sp) -/* 04F9CC 8004EDCC 44825000 */ mtc1 $v0, $f10 -/* 04F9D0 8004EDD0 C600002C */ lwc1 $f0, 0x2c($s0) -/* 04F9D4 8004EDD4 468050A0 */ cvt.s.w $f2, $f10 -/* 04F9D8 8004EDD8 4600103C */ c.lt.s $f2, $f0 -/* 04F9DC 8004EDDC 46001307 */ neg.s $f12, $f2 -/* 04F9E0 8004EDE0 45000004 */ bc1f .L8004EDF4 -/* 04F9E4 8004EDE4 00000000 */ nop -/* 04F9E8 8004EDE8 E602002C */ swc1 $f2, 0x2c($s0) -/* 04F9EC 8004EDEC C600002C */ lwc1 $f0, 0x2c($s0) -/* 04F9F0 8004EDF0 00000000 */ nop -.L8004EDF4: -/* 04F9F4 8004EDF4 460C003C */ c.lt.s $f0, $f12 -/* 04F9F8 8004EDF8 00000000 */ nop -/* 04F9FC 8004EDFC 45000003 */ bc1f .L8004EE0C -/* 04FA00 8004EE00 8FAB00A4 */ lw $t3, 0xa4($sp) -/* 04FA04 8004EE04 E60C002C */ swc1 $f12, 0x2c($s0) -/* 04FA08 8004EE08 8FAB00A4 */ lw $t3, 0xa4($sp) -.L8004EE0C: -/* 04FA0C 8004EE0C 24010001 */ li $at, 1 -/* 04FA10 8004EE10 15610004 */ bne $t3, $at, .L8004EE24 -/* 04FA14 8004EE14 00000000 */ nop -/* 04FA18 8004EE18 0C003852 */ jal func_8000E148 -/* 04FA1C 8004EE1C 00000000 */ nop -/* 04FA20 8004EE20 10400007 */ beqz $v0, .L8004EE40 -.L8004EE24: -/* 04FA24 8004EE24 3C058012 */ lui $a1, %hi(D_8011D52C) # $a1, 0x8012 -/* 04FA28 8004EE28 3C068012 */ lui $a2, %hi(D_8011D528) # $a2, 0x8012 -/* 04FA2C 8004EE2C 8CC6D528 */ lw $a2, %lo(D_8011D528)($a2) -/* 04FA30 8004EE30 8CA5D52C */ lw $a1, %lo(D_8011D52C)($a1) -/* 04FA34 8004EE34 8FA700B4 */ lw $a3, 0xb4($sp) -/* 04FA38 8004EE38 0C001434 */ jal func_800050D0 -/* 04FA3C 8004EE3C 02202025 */ move $a0, $s1 -.L8004EE40: -/* 04FA40 8004EE40 C60600A8 */ lwc1 $f6, 0xa8($s0) -/* 04FA44 8004EE44 C7A40088 */ lwc1 $f4, 0x88($sp) -/* 04FA48 8004EE48 E7A60084 */ swc1 $f6, 0x84($sp) -/* 04FA4C 8004EE4C 82040192 */ lb $a0, 0x192($s0) -/* 04FA50 8004EE50 8FA60090 */ lw $a2, 0x90($sp) -/* 04FA54 8004EE54 8FA7008C */ lw $a3, 0x8c($sp) -/* 04FA58 8004EE58 260D00A8 */ addiu $t5, $s0, 0xa8 -/* 04FA5C 8004EE5C 260C01C8 */ addiu $t4, $s0, 0x1c8 -/* 04FA60 8004EE60 AFAC0018 */ sw $t4, 0x18($sp) -/* 04FA64 8004EE64 AFAD0014 */ sw $t5, 0x14($sp) -/* 04FA68 8004EE68 02202825 */ move $a1, $s1 -/* 04FA6C 8004EE6C 0C006179 */ jal func_800185E4 -/* 04FA70 8004EE70 E7A40010 */ swc1 $f4, 0x10($sp) -/* 04FA74 8004EE74 2401FF9C */ li $at, -100 -/* 04FA78 8004EE78 14410006 */ bne $v0, $at, .L8004EE94 -/* 04FA7C 8004EE7C 00403025 */ move $a2, $v0 -/* 04FA80 8004EE80 02002025 */ move $a0, $s0 -/* 04FA84 8004EE84 0C01709C */ jal func_8005C270 -/* 04FA88 8004EE88 AFA200AC */ sw $v0, 0xac($sp) -/* 04FA8C 8004EE8C 8FA600AC */ lw $a2, 0xac($sp) -/* 04FA90 8004EE90 00000000 */ nop -.L8004EE94: -/* 04FA94 8004EE94 82040192 */ lb $a0, 0x192($s0) -/* 04FA98 8004EE98 920501C8 */ lbu $a1, 0x1c8($s0) -/* 04FA9C 8004EE9C 0C006E87 */ jal func_8001BA1C -/* 04FAA0 8004EEA0 AFA600AC */ sw $a2, 0xac($sp) -/* 04FAA4 8004EEA4 860E0000 */ lh $t6, ($s0) -/* 04FAA8 8004EEA8 8FA600AC */ lw $a2, 0xac($sp) -/* 04FAAC 8004EEAC 2401FFFF */ li $at, -1 -/* 04FAB0 8004EEB0 15C1000D */ bne $t6, $at, .L8004EEE8 -/* 04FAB4 8004EEB4 00000000 */ nop -/* 04FAB8 8004EEB8 820F01CA */ lb $t7, 0x1ca($s0) -/* 04FABC 8004EEBC 24010005 */ li $at, 5 -/* 04FAC0 8004EEC0 004F4021 */ addu $t0, $v0, $t7 -/* 04FAC4 8004EEC4 81180036 */ lb $t8, 0x36($t0) -/* 04FAC8 8004EEC8 00000000 */ nop -/* 04FACC 8004EECC 17010006 */ bne $t8, $at, .L8004EEE8 -/* 04FAD0 8004EED0 00000000 */ nop -/* 04FAD4 8004EED4 821901E5 */ lb $t9, 0x1e5($s0) -/* 04FAD8 8004EED8 240A0001 */ li $t2, 1 -/* 04FADC 8004EEDC 13200002 */ beqz $t9, .L8004EEE8 -/* 04FAE0 8004EEE0 00000000 */ nop -/* 04FAE4 8004EEE4 A20A01C8 */ sb $t2, 0x1c8($s0) -.L8004EEE8: -/* 04FAE8 8004EEE8 820901CA */ lb $t1, 0x1ca($s0) -/* 04FAEC 8004EEEC 24010006 */ li $at, 6 -/* 04FAF0 8004EEF0 00495821 */ addu $t3, $v0, $t1 -/* 04FAF4 8004EEF4 816D0036 */ lb $t5, 0x36($t3) -/* 04FAF8 8004EEF8 00000000 */ nop -/* 04FAFC 8004EEFC 15A10007 */ bne $t5, $at, .L8004EF1C -/* 04FB00 8004EF00 00000000 */ nop -/* 04FB04 8004EF04 8FAC007C */ lw $t4, 0x7c($sp) -/* 04FB08 8004EF08 00000000 */ nop -/* 04FB0C 8004EF0C 818E004B */ lb $t6, 0x4b($t4) -/* 04FB10 8004EF10 00000000 */ nop -/* 04FB14 8004EF14 25CF0001 */ addiu $t7, $t6, 1 -/* 04FB18 8004EF18 A20F0193 */ sb $t7, 0x193($s0) -.L8004EF1C: -/* 04FB1C 8004EF1C 86030000 */ lh $v1, ($s0) -/* 04FB20 8004EF20 14C00097 */ bnez $a2, .L8004F180 -/* 04FB24 8004EF24 2401FFFF */ li $at, -1 -/* 04FB28 8004EF28 14610009 */ bne $v1, $at, .L8004EF50 -/* 04FB2C 8004EF2C 00000000 */ nop -/* 04FB30 8004EF30 820801CA */ lb $t0, 0x1ca($s0) -/* 04FB34 8004EF34 24010002 */ li $at, 2 -/* 04FB38 8004EF38 0048C021 */ addu $t8, $v0, $t0 -/* 04FB3C 8004EF3C 83190036 */ lb $t9, 0x36($t8) -/* 04FB40 8004EF40 240A0001 */ li $t2, 1 -/* 04FB44 8004EF44 17210002 */ bne $t9, $at, .L8004EF50 -/* 04FB48 8004EF48 00000000 */ nop -/* 04FB4C 8004EF4C A20A01C8 */ sb $t2, 0x1c8($s0) -.L8004EF50: -/* 04FB50 8004EF50 0C006E99 */ jal func_8001BA64 -/* 04FB54 8004EF54 00000000 */ nop -/* 04FB58 8004EF58 AFA200A8 */ sw $v0, 0xa8($sp) -/* 04FB5C 8004EF5C 82090192 */ lb $t1, 0x192($s0) -/* 04FB60 8004EF60 00000000 */ nop -/* 04FB64 8004EF64 252B0001 */ addiu $t3, $t1, 1 -/* 04FB68 8004EF68 A20B0192 */ sb $t3, 0x192($s0) -/* 04FB6C 8004EF6C 820D0192 */ lb $t5, 0x192($s0) -/* 04FB70 8004EF70 00000000 */ nop -/* 04FB74 8004EF74 01A2082A */ slt $at, $t5, $v0 -/* 04FB78 8004EF78 14200023 */ bnez $at, .L8004F008 -/* 04FB7C 8004EF7C 00000000 */ nop -/* 04FB80 8004EF80 860C0190 */ lh $t4, 0x190($s0) -/* 04FB84 8004EF84 A2000192 */ sb $zero, 0x192($s0) -/* 04FB88 8004EF88 19800007 */ blez $t4, .L8004EFA8 -/* 04FB8C 8004EF8C 00000000 */ nop -/* 04FB90 8004EF90 82020193 */ lb $v0, 0x193($s0) -/* 04FB94 8004EF94 00000000 */ nop -/* 04FB98 8004EF98 28410078 */ slti $at, $v0, 0x78 -/* 04FB9C 8004EF9C 10200002 */ beqz $at, .L8004EFA8 -/* 04FBA0 8004EFA0 244E0001 */ addiu $t6, $v0, 1 -/* 04FBA4 8004EFA4 A20E0193 */ sb $t6, 0x193($s0) -.L8004EFA8: -/* 04FBA8 8004EFA8 860F0000 */ lh $t7, ($s0) -/* 04FBAC 8004EFAC 2401FFFF */ li $at, -1 -/* 04FBB0 8004EFB0 11E10015 */ beq $t7, $at, .L8004F008 -/* 04FBB4 8004EFB4 00000000 */ nop -/* 04FBB8 8004EFB8 8FA8007C */ lw $t0, 0x7c($sp) -/* 04FBBC 8004EFBC 82190193 */ lb $t9, 0x193($s0) -/* 04FBC0 8004EFC0 8118004B */ lb $t8, 0x4b($t0) -/* 04FBC4 8004EFC4 272A0001 */ addiu $t2, $t9, 1 -/* 04FBC8 8004EFC8 170A000F */ bne $t8, $t2, .L8004F008 -/* 04FBCC 8004EFCC 3C098012 */ lui $t1, %hi(D_8011D580) # $t1, 0x8012 -/* 04FBD0 8004EFD0 9129D580 */ lbu $t1, %lo(D_8011D580)($t1) -/* 04FBD4 8004EFD4 00000000 */ nop -/* 04FBD8 8004EFD8 1520000B */ bnez $t1, .L8004F008 -/* 04FBDC 8004EFDC 00000000 */ nop -/* 04FBE0 8004EFE0 0C01AF66 */ jal func_8006BD98 -/* 04FBE4 8004EFE4 00000000 */ nop -/* 04FBE8 8004EFE8 14400007 */ bnez $v0, .L8004F008 -/* 04FBEC 8004EFEC 3C01800E */ lui $at, %hi(D_800E65E8) # $at, 0x800e -/* 04FBF0 8004EFF0 C42C65E8 */ lwc1 $f12, %lo(D_800E65E8)($at) -/* 04FBF4 8004EFF4 0C00052F */ jal func_800014BC -/* 04FBF8 8004EFF8 00000000 */ nop -/* 04FBFC 8004EFFC 240B0001 */ li $t3, 1 -/* 04FC00 8004F000 3C018012 */ lui $at, %hi(D_8011D580) # $at, 0x8012 -/* 04FC04 8004F004 A02BD580 */ sb $t3, %lo(D_8011D580)($at) -.L8004F008: -/* 04FC08 8004F008 0C008D07 */ jal func_8002341C -/* 04FC0C 8004F00C 00000000 */ nop -/* 04FC10 8004F010 1040004C */ beqz $v0, .L8004F144 -/* 04FC14 8004F014 3C0D8012 */ lui $t5, %hi(D_8011D55C) # $t5, 0x8012 -/* 04FC18 8004F018 8DADD55C */ lw $t5, %lo(D_8011D55C)($t5) -/* 04FC1C 8004F01C 2401FFFF */ li $at, -1 -/* 04FC20 8004F020 11A10049 */ beq $t5, $at, .L8004F148 -/* 04FC24 8004F024 8FAE007C */ lw $t6, 0x7c($sp) -/* 04FC28 8004F028 82040192 */ lb $a0, 0x192($s0) -/* 04FC2C 8004F02C 920501C8 */ lbu $a1, 0x1c8($s0) -/* 04FC30 8004F030 0C006E87 */ jal func_8001BA1C -/* 04FC34 8004F034 00000000 */ nop -/* 04FC38 8004F038 8E0C015C */ lw $t4, 0x15c($s0) -/* 04FC3C 8004F03C 00401825 */ move $v1, $v0 -/* 04FC40 8004F040 15800012 */ bnez $t4, .L8004F08C -/* 04FC44 8004F044 240E0086 */ li $t6, 134 -/* 04FC48 8004F048 240F0008 */ li $t7, 8 -/* 04FC4C 8004F04C A7A00066 */ sh $zero, 0x66($sp) -/* 04FC50 8004F050 A7A00068 */ sh $zero, 0x68($sp) -/* 04FC54 8004F054 A7A0006A */ sh $zero, 0x6a($sp) -/* 04FC58 8004F058 A3AE0064 */ sb $t6, 0x64($sp) -/* 04FC5C 8004F05C A3AF0065 */ sb $t7, 0x65($sp) -/* 04FC60 8004F060 27A40064 */ addiu $a0, $sp, 0x64 -/* 04FC64 8004F064 24050001 */ li $a1, 1 -/* 04FC68 8004F068 0C003A95 */ jal func_8000EA54 -/* 04FC6C 8004F06C AFA20078 */ sw $v0, 0x78($sp) -/* 04FC70 8004F070 8FA30078 */ lw $v1, 0x78($sp) -/* 04FC74 8004F074 10400005 */ beqz $v0, .L8004F08C -/* 04FC78 8004F078 AE02015C */ sw $v0, 0x15c($s0) -/* 04FC7C 8004F07C AC40003C */ sw $zero, 0x3c($v0) -/* 04FC80 8004F080 8E18015C */ lw $t8, 0x15c($s0) -/* 04FC84 8004F084 24190080 */ li $t9, 128 -/* 04FC88 8004F088 A3190039 */ sb $t9, 0x39($t8) -.L8004F08C: -/* 04FC8C 8004F08C 8E02015C */ lw $v0, 0x15c($s0) -/* 04FC90 8004F090 00000000 */ nop -/* 04FC94 8004F094 1040002C */ beqz $v0, .L8004F148 -/* 04FC98 8004F098 8FAE007C */ lw $t6, 0x7c($sp) -/* 04FC9C 8004F09C 8C6A0028 */ lw $t2, 0x28($v1) -/* 04FCA0 8004F0A0 3C01403E */ li $at, 0x403E0000 # 2.968750 -/* 04FCA4 8004F0A4 C548000C */ lwc1 $f8, 0xc($t2) -/* 04FCA8 8004F0A8 00000000 */ nop -/* 04FCAC 8004F0AC E448000C */ swc1 $f8, 0xc($v0) -/* 04FCB0 8004F0B0 8C690028 */ lw $t1, 0x28($v1) -/* 04FCB4 8004F0B4 8E0B015C */ lw $t3, 0x15c($s0) -/* 04FCB8 8004F0B8 C52A0010 */ lwc1 $f10, 0x10($t1) -/* 04FCBC 8004F0BC 00000000 */ nop -/* 04FCC0 8004F0C0 E56A0010 */ swc1 $f10, 0x10($t3) -/* 04FCC4 8004F0C4 820D01D6 */ lb $t5, 0x1d6($s0) -/* 04FCC8 8004F0C8 00000000 */ nop -/* 04FCCC 8004F0CC 15A00009 */ bnez $t5, .L8004F0F4 -/* 04FCD0 8004F0D0 00000000 */ nop -/* 04FCD4 8004F0D4 8E02015C */ lw $v0, 0x15c($s0) -/* 04FCD8 8004F0D8 44814800 */ mtc1 $at, $f9 -/* 04FCDC 8004F0DC C4460010 */ lwc1 $f6, 0x10($v0) -/* 04FCE0 8004F0E0 44804000 */ mtc1 $zero, $f8 -/* 04FCE4 8004F0E4 46003121 */ cvt.d.s $f4, $f6 -/* 04FCE8 8004F0E8 46282281 */ sub.d $f10, $f4, $f8 -/* 04FCEC 8004F0EC 462051A0 */ cvt.s.d $f6, $f10 -/* 04FCF0 8004F0F0 E4460010 */ swc1 $f6, 0x10($v0) -.L8004F0F4: -/* 04FCF4 8004F0F4 8C6C0028 */ lw $t4, 0x28($v1) -/* 04FCF8 8004F0F8 8E0E015C */ lw $t6, 0x15c($s0) -/* 04FCFC 8004F0FC C5840014 */ lwc1 $f4, 0x14($t4) -/* 04FD00 8004F100 00000000 */ nop -/* 04FD04 8004F104 E5C40014 */ swc1 $f4, 0x14($t6) -/* 04FD08 8004F108 8C6F0028 */ lw $t7, 0x28($v1) -/* 04FD0C 8004F10C 8E19015C */ lw $t9, 0x15c($s0) -/* 04FD10 8004F110 85E80000 */ lh $t0, ($t7) -/* 04FD14 8004F114 00000000 */ nop -/* 04FD18 8004F118 A7280000 */ sh $t0, ($t9) -/* 04FD1C 8004F11C 8C780028 */ lw $t8, 0x28($v1) -/* 04FD20 8004F120 8E09015C */ lw $t1, 0x15c($s0) -/* 04FD24 8004F124 870A0002 */ lh $t2, 2($t8) -/* 04FD28 8004F128 00000000 */ nop -/* 04FD2C 8004F12C A52A0002 */ sh $t2, 2($t1) -/* 04FD30 8004F130 8C6B0028 */ lw $t3, 0x28($v1) -/* 04FD34 8004F134 8E0C015C */ lw $t4, 0x15c($s0) -/* 04FD38 8004F138 856D002E */ lh $t5, 0x2e($t3) -/* 04FD3C 8004F13C 00000000 */ nop -/* 04FD40 8004F140 A58D002E */ sh $t5, 0x2e($t4) -.L8004F144: -/* 04FD44 8004F144 8FAE007C */ lw $t6, 0x7c($sp) -.L8004F148: -/* 04FD48 8004F148 8FB900A8 */ lw $t9, 0xa8($sp) -/* 04FD4C 8004F14C 81CF004B */ lb $t7, 0x4b($t6) -/* 04FD50 8004F150 86020190 */ lh $v0, 0x190($s0) -/* 04FD54 8004F154 25E80003 */ addiu $t0, $t7, 3 -/* 04FD58 8004F158 01190019 */ multu $t0, $t9 -/* 04FD5C 8004F15C 24092710 */ li $t1, 10000 -/* 04FD60 8004F160 244A0001 */ addiu $t2, $v0, 1 -/* 04FD64 8004F164 0000C012 */ mflo $t8 -/* 04FD68 8004F168 0058082A */ slt $at, $v0, $t8 -/* 04FD6C 8004F16C 10200002 */ beqz $at, .L8004F178 -/* 04FD70 8004F170 00000000 */ nop -/* 04FD74 8004F174 A60A0190 */ sh $t2, 0x190($s0) -.L8004F178: -/* 04FD78 8004F178 1000000D */ b .L8004F1B0 -/* 04FD7C 8004F17C A60901A8 */ sh $t1, 0x1a8($s0) -.L8004F180: -/* 04FD80 8004F180 2401FFFF */ li $at, -1 -/* 04FD84 8004F184 14610009 */ bne $v1, $at, .L8004F1AC -/* 04FD88 8004F188 00000000 */ nop -/* 04FD8C 8004F18C C7A00084 */ lwc1 $f0, 0x84($sp) -/* 04FD90 8004F190 C60800A8 */ lwc1 $f8, 0xa8($s0) -/* 04FD94 8004F194 00000000 */ nop -/* 04FD98 8004F198 4608003C */ c.lt.s $f0, $f8 -/* 04FD9C 8004F19C 00000000 */ nop -/* 04FDA0 8004F1A0 45000002 */ bc1f .L8004F1AC -/* 04FDA4 8004F1A4 00000000 */ nop -/* 04FDA8 8004F1A8 E60000A8 */ swc1 $f0, 0xa8($s0) -.L8004F1AC: -/* 04FDAC 8004F1AC A60601A8 */ sh $a2, 0x1a8($s0) -.L8004F1B0: -/* 04FDB0 8004F1B0 0C008D07 */ jal func_8002341C -/* 04FDB4 8004F1B4 00000000 */ nop -/* 04FDB8 8004F1B8 10400013 */ beqz $v0, .L8004F208 -/* 04FDBC 8004F1BC 8FAF00B4 */ lw $t7, 0xb4($sp) -/* 04FDC0 8004F1C0 8E02015C */ lw $v0, 0x15c($s0) -/* 04FDC4 8004F1C4 8FAD00B4 */ lw $t5, 0xb4($sp) -/* 04FDC8 8004F1C8 10400005 */ beqz $v0, .L8004F1E0 -/* 04FDCC 8004F1CC 00000000 */ nop -/* 04FDD0 8004F1D0 844B0018 */ lh $t3, 0x18($v0) -/* 04FDD4 8004F1D4 000D60C0 */ sll $t4, $t5, 3 -/* 04FDD8 8004F1D8 016C7021 */ addu $t6, $t3, $t4 -/* 04FDDC 8004F1DC A44E0018 */ sh $t6, 0x18($v0) -.L8004F1E0: -/* 04FDE0 8004F1E0 860201BA */ lh $v0, 0x1ba($s0) -/* 04FDE4 8004F1E4 00000000 */ nop -/* 04FDE8 8004F1E8 28410191 */ slti $at, $v0, 0x191 -/* 04FDEC 8004F1EC 10200003 */ beqz $at, .L8004F1FC -/* 04FDF0 8004F1F0 2841FE70 */ slti $at, $v0, -0x190 -/* 04FDF4 8004F1F4 10200004 */ beqz $at, .L8004F208 -/* 04FDF8 8004F1F8 8FAF00B4 */ lw $t7, 0xb4($sp) -.L8004F1FC: -/* 04FDFC 8004F1FC 0C008B86 */ jal func_80022E18 -/* 04FE00 8004F200 24040002 */ li $a0, 2 -/* 04FE04 8004F204 8FAF00B4 */ lw $t7, 0xb4($sp) -.L8004F208: -/* 04FE08 8004F208 8FA50090 */ lw $a1, 0x90($sp) -/* 04FE0C 8004F20C 8FA6008C */ lw $a2, 0x8c($sp) -/* 04FE10 8004F210 8FA70088 */ lw $a3, 0x88($sp) -/* 04FE14 8004F214 02202025 */ move $a0, $s1 -/* 04FE18 8004F218 0C006338 */ jal func_80018CE0 -/* 04FE1C 8004F21C AFAF0010 */ sw $t7, 0x10($sp) -/* 04FE20 8004F220 8FA600B4 */ lw $a2, 0xb4($sp) -/* 04FE24 8004F224 02202025 */ move $a0, $s1 -/* 04FE28 8004F228 0C016482 */ jal func_80059208 -/* 04FE2C 8004F22C 02002825 */ move $a1, $s0 -/* 04FE30 8004F230 820801D8 */ lb $t0, 0x1d8($s0) -/* 04FE34 8004F234 24010001 */ li $at, 1 -/* 04FE38 8004F238 15010007 */ bne $t0, $at, .L8004F258 -/* 04FE3C 8004F23C 00000000 */ nop -/* 04FE40 8004F240 820201D9 */ lb $v0, 0x1d9($s0) -/* 04FE44 8004F244 8FB900B4 */ lw $t9, 0xb4($sp) -/* 04FE48 8004F248 2841003C */ slti $at, $v0, 0x3c -/* 04FE4C 8004F24C 10200002 */ beqz $at, .L8004F258 -/* 04FE50 8004F250 0059C021 */ addu $t8, $v0, $t9 -/* 04FE54 8004F254 A21801D9 */ sb $t8, 0x1d9($s0) -.L8004F258: -/* 04FE58 8004F258 82060188 */ lb $a2, 0x188($s0) -/* 04FE5C 8004F25C 00000000 */ nop -/* 04FE60 8004F260 18C00003 */ blez $a2, .L8004F270 -/* 04FE64 8004F264 02202025 */ move $a0, $s1 -/* 04FE68 8004F268 0C015DB8 */ jal func_800576E0 -/* 04FE6C 8004F26C 02002825 */ move $a1, $s0 -.L8004F270: -/* 04FE70 8004F270 3C0A8012 */ lui $t2, %hi(D_8011D55C) # $t2, 0x8012 -/* 04FE74 8004F274 8D4AD55C */ lw $t2, %lo(D_8011D55C)($t2) -/* 04FE78 8004F278 02202025 */ move $a0, $s1 -/* 04FE7C 8004F27C A60A0000 */ sh $t2, ($s0) -/* 04FE80 8004F280 8FA6009C */ lw $a2, 0x9c($sp) -/* 04FE84 8004F284 0C015E90 */ jal func_80057A40 -/* 04FE88 8004F288 02002825 */ move $a1, $s0 -/* 04FE8C 8004F28C 3C018012 */ lui $at, %hi(D_8011D583) # $at, 0x8012 -/* 04FE90 8004F290 A020D583 */ sb $zero, %lo(D_8011D583)($at) -/* 04FE94 8004F294 8E090148 */ lw $t1, 0x148($s0) -/* 04FE98 8004F298 44802000 */ mtc1 $zero, $f4 -/* 04FE9C 8004F29C 11200005 */ beqz $t1, .L8004F2B4 -/* 04FEA0 8004F2A0 3C02800E */ lui $v0, %hi(D_800DCB54) # $v0, 0x800e -/* 04FEA4 8004F2A4 44807000 */ mtc1 $zero, $f14 -/* 04FEA8 8004F2A8 AE000148 */ sw $zero, 0x148($s0) -/* 04FEAC 8004F2AC E60E002C */ swc1 $f14, 0x2c($s0) -/* 04FEB0 8004F2B0 E60E0030 */ swc1 $f14, 0x30($s0) -.L8004F2B4: -/* 04FEB4 8004F2B4 C60C0090 */ lwc1 $f12, 0x90($s0) -/* 04FEB8 8004F2B8 C600008C */ lwc1 $f0, 0x8c($s0) -/* 04FEBC 8004F2BC 44807000 */ mtc1 $zero, $f14 -/* 04FEC0 8004F2C0 460C003E */ c.le.s $f0, $f12 -/* 04FEC4 8004F2C4 46006281 */ sub.s $f10, $f12, $f0 -/* 04FEC8 8004F2C8 45000004 */ bc1f .L8004F2DC -/* 04FECC 8004F2CC 3C01800E */ lui $at, %hi(D_800E65EC) # $at, 0x800e -/* 04FED0 8004F2D0 C42265EC */ lwc1 $f2, %lo(D_800E65EC)($at) -/* 04FED4 8004F2D4 10000005 */ b .L8004F2EC -/* 04FED8 8004F2D8 3C013FC0 */ lui $at, 0x3fc0 -.L8004F2DC: -/* 04FEDC 8004F2DC 3C01800E */ lui $at, %hi(D_800E65F0) # $at, 0x800e -/* 04FEE0 8004F2E0 C42265F0 */ lwc1 $f2, %lo(D_800E65F0)($at) -/* 04FEE4 8004F2E4 00000000 */ nop -/* 04FEE8 8004F2E8 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -.L8004F2EC: -/* 04FEEC 8004F2EC 44812800 */ mtc1 $at, $f5 -/* 04FEF0 8004F2F0 460051A1 */ cvt.d.s $f6, $f10 -/* 04FEF4 8004F2F4 46243202 */ mul.d $f8, $f6, $f4 -/* 04FEF8 8004F2F8 460012A1 */ cvt.d.s $f10, $f2 -/* 04FEFC 8004F2FC C7A40054 */ lwc1 $f4, 0x54($sp) -/* 04FF00 8004F300 C7A50050 */ lwc1 $f5, 0x50($sp) -/* 04FF04 8004F304 462A4180 */ add.d $f6, $f8, $f10 -/* 04FF08 8004F308 46243202 */ mul.d $f8, $f6, $f4 -/* 04FF0C 8004F30C 460002A1 */ cvt.d.s $f10, $f0 -/* 04FF10 8004F310 460E103C */ c.lt.s $f2, $f14 -/* 04FF14 8004F314 46285180 */ add.d $f6, $f10, $f8 -/* 04FF18 8004F318 46203120 */ cvt.s.d $f4, $f6 -/* 04FF1C 8004F31C 45000007 */ bc1f .L8004F33C -/* 04FF20 8004F320 E604008C */ swc1 $f4, 0x8c($s0) -/* 04FF24 8004F324 C60A008C */ lwc1 $f10, 0x8c($s0) -/* 04FF28 8004F328 00000000 */ nop -/* 04FF2C 8004F32C 460C503E */ c.le.s $f10, $f12 -/* 04FF30 8004F330 00000000 */ nop -/* 04FF34 8004F334 4501000B */ bc1t .L8004F364 -/* 04FF38 8004F338 3C013F80 */ lui $at, 0x3f80 -.L8004F33C: -/* 04FF3C 8004F33C 4602703C */ c.lt.s $f14, $f2 -/* 04FF40 8004F340 00000000 */ nop -/* 04FF44 8004F344 4500000A */ bc1f .L8004F370 -/* 04FF48 8004F348 00000000 */ nop -/* 04FF4C 8004F34C C608008C */ lwc1 $f8, 0x8c($s0) -/* 04FF50 8004F350 00000000 */ nop -/* 04FF54 8004F354 4608603E */ c.le.s $f12, $f8 -/* 04FF58 8004F358 00000000 */ nop -/* 04FF5C 8004F35C 45000004 */ bc1f .L8004F370 -/* 04FF60 8004F360 3C013F80 */ li $at, 0x3F800000 # 1.000000 -.L8004F364: -/* 04FF64 8004F364 44813000 */ mtc1 $at, $f6 -/* 04FF68 8004F368 E60C008C */ swc1 $f12, 0x8c($s0) -/* 04FF6C 8004F36C E6060090 */ swc1 $f6, 0x90($s0) -.L8004F370: -/* 04FF70 8004F370 8603016A */ lh $v1, 0x16a($s0) -/* 04FF74 8004F374 860D016C */ lh $t5, 0x16c($s0) -/* 04FF78 8004F378 8FAC00B4 */ lw $t4, 0xb4($sp) -/* 04FF7C 8004F37C 01A35823 */ subu $t3, $t5, $v1 -/* 04FF80 8004F380 016C0019 */ multu $t3, $t4 -/* 04FF84 8004F384 00003012 */ mflo $a2 -/* 04FF88 8004F388 000670C3 */ sra $t6, $a2, 3 -/* 04FF8C 8004F38C 29C10801 */ slti $at, $t6, 0x801 -/* 04FF90 8004F390 14200002 */ bnez $at, .L8004F39C -/* 04FF94 8004F394 01C03025 */ move $a2, $t6 -/* 04FF98 8004F398 24060800 */ li $a2, 2048 -.L8004F39C: -/* 04FF9C 8004F39C 28C1F800 */ slti $at, $a2, -0x800 -/* 04FFA0 8004F3A0 10200002 */ beqz $at, .L8004F3AC -/* 04FFA4 8004F3A4 00000000 */ nop -/* 04FFA8 8004F3A8 2406F800 */ li $a2, -2048 -.L8004F3AC: -/* 04FFAC 8004F3AC 8442CB54 */ lh $v0, %lo(D_800DCB54)($v0) -/* 04FFB0 8004F3B0 00000000 */ nop -/* 04FFB4 8004F3B4 10400003 */ beqz $v0, .L8004F3C4 -/* 04FFB8 8004F3B8 00627821 */ addu $t7, $v1, $v0 -/* 04FFBC 8004F3BC 10000003 */ b .L8004F3CC -/* 04FFC0 8004F3C0 A60F016A */ sh $t7, 0x16a($s0) -.L8004F3C4: -/* 04FFC4 8004F3C4 00664021 */ addu $t0, $v1, $a2 -/* 04FFC8 8004F3C8 A608016A */ sh $t0, 0x16a($s0) -.L8004F3CC: -/* 04FFCC 8004F3CC 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 -/* 04FFD0 8004F3D0 8C42D52C */ lw $v0, %lo(D_8011D52C)($v0) -/* 04FFD4 8004F3D4 00000000 */ nop -/* 04FFD8 8004F3D8 30590010 */ andi $t9, $v0, 0x10 -/* 04FFDC 8004F3DC 13200008 */ beqz $t9, .L8004F400 -/* 04FFE0 8004F3E0 03201025 */ move $v0, $t9 -/* 04FFE4 8004F3E4 821801EB */ lb $t8, 0x1eb($s0) -/* 04FFE8 8004F3E8 240A0001 */ li $t2, 1 -/* 04FFEC 8004F3EC 13000004 */ beqz $t8, .L8004F400 -/* 04FFF0 8004F3F0 00000000 */ nop -/* 04FFF4 8004F3F4 A20A01EC */ sb $t2, 0x1ec($s0) -/* 04FFF8 8004F3F8 10000004 */ b .L8004F40C -/* 04FFFC 8004F3FC A20001EB */ sb $zero, 0x1eb($s0) -.L8004F400: -/* 050000 8004F400 10400002 */ beqz $v0, .L8004F40C -/* 050004 8004F404 24090016 */ li $t1, 22 -/* 050008 8004F408 A20901EB */ sb $t1, 0x1eb($s0) -.L8004F40C: -/* 05000C 8004F40C 820201EB */ lb $v0, 0x1eb($s0) -/* 050010 8004F410 00000000 */ nop -/* 050014 8004F414 18400006 */ blez $v0, .L8004F430 -/* 050018 8004F418 00000000 */ nop -/* 05001C 8004F41C 8FAD00B4 */ lw $t5, 0xb4($sp) -/* 050020 8004F420 00000000 */ nop -/* 050024 8004F424 004D5823 */ subu $t3, $v0, $t5 -/* 050028 8004F428 10000002 */ b .L8004F434 -/* 05002C 8004F42C A20B01EB */ sb $t3, 0x1eb($s0) -.L8004F430: -/* 050030 8004F430 A20001EB */ sb $zero, 0x1eb($s0) -.L8004F434: -/* 050034 8004F434 8602018E */ lh $v0, 0x18e($s0) -/* 050038 8004F438 00000000 */ nop -/* 05003C 8004F43C 1840002E */ blez $v0, .L8004F4F8 -/* 050040 8004F440 2841003D */ slti $at, $v0, 0x3d -/* 050044 8004F444 1420001B */ bnez $at, .L8004F4B4 -/* 050048 8004F448 00000000 */ nop -/* 05004C 8004F44C 8E04017C */ lw $a0, 0x17c($s0) -/* 050050 8004F450 00000000 */ nop -/* 050054 8004F454 10800009 */ beqz $a0, .L8004F47C -/* 050058 8004F458 00000000 */ nop -/* 05005C 8004F45C 8E25000C */ lw $a1, 0xc($s1) -/* 050060 8004F460 8E260010 */ lw $a2, 0x10($s1) -/* 050064 8004F464 8E270014 */ lw $a3, 0x14($s1) -/* 050068 8004F468 0C0025B6 */ jal func_800096D8 -/* 05006C 8004F46C 00000000 */ nop -/* 050070 8004F470 8602018E */ lh $v0, 0x18e($s0) -/* 050074 8004F474 10000018 */ b .L8004F4D8 -/* 050078 8004F478 8FA800B4 */ lw $t0, 0xb4($sp) -.L8004F47C: -/* 05007C 8004F47C 8E0C0118 */ lw $t4, 0x118($s0) -/* 050080 8004F480 2404009F */ li $a0, 159 -/* 050084 8004F484 11800013 */ beqz $t4, .L8004F4D4 -/* 050088 8004F488 240E0001 */ li $t6, 1 -/* 05008C 8004F48C 8E25000C */ lw $a1, 0xc($s1) -/* 050090 8004F490 8E260010 */ lw $a2, 0x10($s1) -/* 050094 8004F494 8E270014 */ lw $a3, 0x14($s1) -/* 050098 8004F498 260F017C */ addiu $t7, $s0, 0x17c -/* 05009C 8004F49C AFAF0014 */ sw $t7, 0x14($sp) -/* 0500A0 8004F4A0 0C002556 */ jal func_80009558 -/* 0500A4 8004F4A4 AFAE0010 */ sw $t6, 0x10($sp) -/* 0500A8 8004F4A8 8602018E */ lh $v0, 0x18e($s0) -/* 0500AC 8004F4AC 1000000A */ b .L8004F4D8 -/* 0500B0 8004F4B0 8FA800B4 */ lw $t0, 0xb4($sp) -.L8004F4B4: -/* 0500B4 8004F4B4 8E04017C */ lw $a0, 0x17c($s0) -/* 0500B8 8004F4B8 00000000 */ nop -/* 0500BC 8004F4BC 10800006 */ beqz $a0, .L8004F4D8 -/* 0500C0 8004F4C0 8FA800B4 */ lw $t0, 0xb4($sp) -/* 0500C4 8004F4C4 0C0025BE */ jal func_800096F8 -/* 0500C8 8004F4C8 00000000 */ nop -/* 0500CC 8004F4CC 8602018E */ lh $v0, 0x18e($s0) -/* 0500D0 8004F4D0 AE00017C */ sw $zero, 0x17c($s0) -.L8004F4D4: -/* 0500D4 8004F4D4 8FA800B4 */ lw $t0, 0xb4($sp) -.L8004F4D8: -/* 0500D8 8004F4D8 00000000 */ nop -/* 0500DC 8004F4DC 0048C823 */ subu $t9, $v0, $t0 -/* 0500E0 8004F4E0 A619018E */ sh $t9, 0x18e($s0) -/* 0500E4 8004F4E4 8618018E */ lh $t8, 0x18e($s0) -/* 0500E8 8004F4E8 00000000 */ nop -/* 0500EC 8004F4EC 1F000002 */ bgtz $t8, .L8004F4F8 -/* 0500F0 8004F4F0 00000000 */ nop -/* 0500F4 8004F4F4 A2000189 */ sb $zero, 0x189($s0) -.L8004F4F8: -/* 0500F8 8004F4F8 8E040180 */ lw $a0, 0x180($s0) -/* 0500FC 8004F4FC 00000000 */ nop -/* 050100 8004F500 10800006 */ beqz $a0, .L8004F51C -/* 050104 8004F504 00000000 */ nop -/* 050108 8004F508 8E25000C */ lw $a1, 0xc($s1) -/* 05010C 8004F50C 8E260010 */ lw $a2, 0x10($s1) -/* 050110 8004F510 8E270014 */ lw $a3, 0x14($s1) -/* 050114 8004F514 0C0025B6 */ jal func_800096D8 -/* 050118 8004F518 00000000 */ nop -.L8004F51C: -/* 05011C 8004F51C 0C003936 */ jal func_8000E4D8 -/* 050120 8004F520 00000000 */ nop -/* 050124 8004F524 1040000B */ beqz $v0, .L8004F554 -/* 050128 8004F528 00000000 */ nop -/* 05012C 8004F52C 860A0000 */ lh $t2, ($s0) -/* 050130 8004F530 3C098012 */ lui $t1, %hi(D_8011D540) # $t1, 0x8012 -/* 050134 8004F534 15400007 */ bnez $t2, .L8004F554 -/* 050138 8004F538 00000000 */ nop -/* 05013C 8004F53C 8D29D540 */ lw $t1, %lo(D_8011D540)($t1) -/* 050140 8004F540 8FA500B4 */ lw $a1, 0xb4($sp) -/* 050144 8004F544 15200003 */ bnez $t1, .L8004F554 -/* 050148 8004F548 00000000 */ nop -/* 05014C 8004F54C 0C0166FC */ jal func_80059BF0 -/* 050150 8004F550 02202025 */ move $a0, $s1 -.L8004F554: -/* 050154 8004F554 8E040024 */ lw $a0, 0x24($s0) -/* 050158 8004F558 00000000 */ nop -/* 05015C 8004F55C 10800006 */ beqz $a0, .L8004F578 -/* 050160 8004F560 00000000 */ nop -/* 050164 8004F564 8E25000C */ lw $a1, 0xc($s1) -/* 050168 8004F568 8E260010 */ lw $a2, 0x10($s1) -/* 05016C 8004F56C 8E270014 */ lw $a3, 0x14($s1) -/* 050170 8004F570 0C0025B6 */ jal func_800096D8 -/* 050174 8004F574 00000000 */ nop -.L8004F578: -/* 050178 8004F578 3C018012 */ lui $at, %hi(D_8011D584) # $at, 0x8012 -/* 05017C 8004F57C A020D584 */ sb $zero, %lo(D_8011D584)($at) -/* 050180 8004F580 8E020150 */ lw $v0, 0x150($s0) -/* 050184 8004F584 3C0D8012 */ lui $t5, %hi(D_8011D540) # $t5, 0x8012 -/* 050188 8004F588 1040003D */ beqz $v0, .L8004F680 -/* 05018C 8004F58C 00000000 */ nop -/* 050190 8004F590 8DADD540 */ lw $t5, %lo(D_8011D540)($t5) -/* 050194 8004F594 00002025 */ move $a0, $zero -/* 050198 8004F598 15A0003A */ bnez $t5, .L8004F684 -/* 05019C 8004F59C 240D00FF */ li $t5, 255 -/* 0501A0 8004F5A0 C624000C */ lwc1 $f4, 0xc($s1) -/* 0501A4 8004F5A4 0C0078A7 */ jal func_8001E29C -/* 0501A8 8004F5A8 E444000C */ swc1 $f4, 0xc($v0) -/* 0501AC 8004F5AC 820B0003 */ lb $t3, 3($s0) -/* 0501B0 8004F5B0 C6260010 */ lwc1 $f6, 0x10($s1) -/* 0501B4 8004F5B4 01626021 */ addu $t4, $t3, $v0 -/* 0501B8 8004F5B8 818E0000 */ lb $t6, ($t4) -/* 0501BC 8004F5BC 8E0F0150 */ lw $t7, 0x150($s0) -/* 0501C0 8004F5C0 448E5000 */ mtc1 $t6, $f10 -/* 0501C4 8004F5C4 3C01800E */ lui $at, %hi(D_800E65F4) # $at, 0x800e -/* 0501C8 8004F5C8 46805220 */ cvt.s.w $f8, $f10 -/* 0501CC 8004F5CC 46064100 */ add.s $f4, $f8, $f6 -/* 0501D0 8004F5D0 E5E40010 */ swc1 $f4, 0x10($t7) -/* 0501D4 8004F5D4 8E080150 */ lw $t0, 0x150($s0) -/* 0501D8 8004F5D8 C62A0014 */ lwc1 $f10, 0x14($s1) -/* 0501DC 8004F5DC 00000000 */ nop -/* 0501E0 8004F5E0 E50A0014 */ swc1 $f10, 0x14($t0) -/* 0501E4 8004F5E4 C6280030 */ lwc1 $f8, 0x30($s1) -/* 0501E8 8004F5E8 C42665F4 */ lwc1 $f6, %lo(D_800E65F4)($at) -/* 0501EC 8004F5EC 8E190150 */ lw $t9, 0x150($s0) -/* 0501F0 8004F5F0 46064103 */ div.s $f4, $f8, $f6 -/* 0501F4 8004F5F4 3C01800E */ lui $at, %hi(D_800E65F8) # $at, 0x800e -/* 0501F8 8004F5F8 E7240008 */ swc1 $f4, 8($t9) -/* 0501FC 8004F5FC C62A0030 */ lwc1 $f10, 0x30($s1) -/* 050200 8004F600 C42665FC */ lwc1 $f6, %lo(D_800E65FC)($at) -/* 050204 8004F604 C42765F8 */ lwc1 $f7, %lo(D_800E65F8)($at) -/* 050208 8004F608 46005221 */ cvt.d.s $f8, $f10 -/* 05020C 8004F60C 4626403C */ c.lt.d $f8, $f6 -/* 050210 8004F610 00000000 */ nop -/* 050214 8004F614 45010006 */ bc1t .L8004F630 -/* 050218 8004F618 00000000 */ nop -/* 05021C 8004F61C 0C0270C3 */ jal func_8009C30C -/* 050220 8004F620 00000000 */ nop -/* 050224 8004F624 30580004 */ andi $t8, $v0, 4 -/* 050228 8004F628 13000007 */ beqz $t8, .L8004F648 -/* 05022C 8004F62C 00000000 */ nop -.L8004F630: -/* 050230 8004F630 8E020150 */ lw $v0, 0x150($s0) -/* 050234 8004F634 00000000 */ nop -/* 050238 8004F638 844A0006 */ lh $t2, 6($v0) -/* 05023C 8004F63C 00000000 */ nop -/* 050240 8004F640 35494000 */ ori $t1, $t2, 0x4000 -/* 050244 8004F644 A4490006 */ sh $t1, 6($v0) -.L8004F648: -/* 050248 8004F648 8E020150 */ lw $v0, 0x150($s0) -/* 05024C 8004F64C 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 050250 8004F650 C4440008 */ lwc1 $f4, 8($v0) -/* 050254 8004F654 44814800 */ mtc1 $at, $f9 -/* 050258 8004F658 44804000 */ mtc1 $zero, $f8 -/* 05025C 8004F65C 460022A1 */ cvt.d.s $f10, $f4 -/* 050260 8004F660 4628503C */ c.lt.d $f10, $f8 -/* 050264 8004F664 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 050268 8004F668 45000004 */ bc1f .L8004F67C -/* 05026C 8004F66C 00000000 */ nop -/* 050270 8004F670 44813000 */ mtc1 $at, $f6 -/* 050274 8004F674 00000000 */ nop -/* 050278 8004F678 E4460008 */ swc1 $f6, 8($v0) -.L8004F67C: -/* 05027C 8004F67C AE000150 */ sw $zero, 0x150($s0) -.L8004F680: -/* 050280 8004F680 240D00FF */ li $t5, 255 -.L8004F684: -/* 050284 8004F684 A20D01FE */ sb $t5, 0x1fe($s0) -/* 050288 8004F688 0C013DDF */ jal func_8004F77C -/* 05028C 8004F68C 02002025 */ move $a0, $s0 -/* 050290 8004F690 960B020E */ lhu $t3, 0x20e($s0) -/* 050294 8004F694 8FAC00B4 */ lw $t4, 0xb4($sp) -/* 050298 8004F698 1160001E */ beqz $t3, .L8004F714 -/* 05029C 8004F69C 8FB9007C */ lw $t9, 0x7c($sp) -/* 0502A0 8004F6A0 92020210 */ lbu $v0, 0x210($s0) -/* 0502A4 8004F6A4 00000000 */ nop -/* 0502A8 8004F6A8 0182082A */ slt $at, $t4, $v0 -/* 0502AC 8004F6AC 10200003 */ beqz $at, .L8004F6BC -/* 0502B0 8004F6B0 004C7023 */ subu $t6, $v0, $t4 -/* 0502B4 8004F6B4 10000016 */ b .L8004F710 -/* 0502B8 8004F6B8 A20E0210 */ sb $t6, 0x210($s0) -.L8004F6BC: -/* 0502BC 8004F6BC 860F0000 */ lh $t7, ($s0) -/* 0502C0 8004F6C0 2401FFFF */ li $at, -1 -/* 0502C4 8004F6C4 15E1000B */ bne $t7, $at, .L8004F6F4 -/* 0502C8 8004F6C8 A2000210 */ sb $zero, 0x210($s0) -/* 0502CC 8004F6CC 9604020E */ lhu $a0, 0x20e($s0) -/* 0502D0 8004F6D0 8E25000C */ lw $a1, 0xc($s1) -/* 0502D4 8004F6D4 8E260010 */ lw $a2, 0x10($s1) -/* 0502D8 8004F6D8 8E270014 */ lw $a3, 0x14($s1) -/* 0502DC 8004F6DC 24080004 */ li $t0, 4 -/* 0502E0 8004F6E0 AFA80010 */ sw $t0, 0x10($sp) -/* 0502E4 8004F6E4 0C002556 */ jal func_80009558 -/* 0502E8 8004F6E8 AFA00014 */ sw $zero, 0x14($sp) -/* 0502EC 8004F6EC 10000008 */ b .L8004F710 -/* 0502F0 8004F6F0 A600020E */ sh $zero, 0x20e($s0) -.L8004F6F4: -/* 0502F4 8004F6F4 9604020E */ lhu $a0, 0x20e($s0) -/* 0502F8 8004F6F8 8E25000C */ lw $a1, 0xc($s1) -/* 0502FC 8004F6FC 8E260010 */ lw $a2, 0x10($s1) -/* 050300 8004F700 8E270014 */ lw $a3, 0x14($s1) -/* 050304 8004F704 0C0007AA */ jal func_80001EA8 -/* 050308 8004F708 AFA00010 */ sw $zero, 0x10($sp) -/* 05030C 8004F70C A600020E */ sh $zero, 0x20e($s0) -.L8004F710: -/* 050310 8004F710 8FB9007C */ lw $t9, 0x7c($sp) -.L8004F714: -/* 050314 8004F714 24010042 */ li $at, 66 -/* 050318 8004F718 8322004C */ lb $v0, 0x4c($t9) -/* 05031C 8004F71C 00000000 */ nop -/* 050320 8004F720 30580040 */ andi $t8, $v0, 0x40 -/* 050324 8004F724 13000008 */ beqz $t8, .L8004F748 -/* 050328 8004F728 00000000 */ nop -/* 05032C 8004F72C 10410006 */ beq $v0, $at, .L8004F748 -/* 050330 8004F730 00000000 */ nop -/* 050334 8004F734 C62C0010 */ lwc1 $f12, 0x10($s1) -/* 050338 8004F738 0C007106 */ jal func_8001C418 -/* 05033C 8004F73C 00000000 */ nop -/* 050340 8004F740 10000002 */ b .L8004F74C -/* 050344 8004F744 A2020212 */ sb $v0, 0x212($s0) -.L8004F748: -/* 050348 8004F748 A2000212 */ sb $zero, 0x212($s0) -.L8004F74C: -/* 05034C 8004F74C 82020193 */ lb $v0, 0x193($s0) -/* 050350 8004F750 820A0194 */ lb $t2, 0x194($s0) -/* 050354 8004F754 00000000 */ nop -/* 050358 8004F758 0142082A */ slt $at, $t2, $v0 -/* 05035C 8004F75C 10200003 */ beqz $at, .L8004F76C -/* 050360 8004F760 8FBF002C */ lw $ra, 0x2c($sp) -/* 050364 8004F764 A2020194 */ sb $v0, 0x194($s0) -/* 050368 8004F768 8FBF002C */ lw $ra, 0x2c($sp) -.L8004F76C: -/* 05036C 8004F76C 8FB00024 */ lw $s0, 0x24($sp) -/* 050370 8004F770 8FB10028 */ lw $s1, 0x28($sp) -/* 050374 8004F774 03E00008 */ jr $ra -/* 050378 8004F778 27BD00B0 */ addiu $sp, $sp, 0xb0 - -glabel func_8004F77C -/* 05037C 8004F77C 908E020A */ lbu $t6, 0x20a($a0) -/* 050380 8004F780 2401FF7F */ li $at, -129 -/* 050384 8004F784 01C17824 */ and $t7, $t6, $at -/* 050388 8004F788 A08F020A */ sb $t7, 0x20a($a0) -/* 05038C 8004F78C 3C188012 */ lui $t8, %hi(D_8011D528) # $t8, 0x8012 -/* 050390 8004F790 8F18D528 */ lw $t8, %lo(D_8011D528)($t8) -/* 050394 8004F794 35E90080 */ ori $t1, $t7, 0x80 -/* 050398 8004F798 33194000 */ andi $t9, $t8, 0x4000 -/* 05039C 8004F79C 13200002 */ beqz $t9, .L8004F7A8 -/* 0503A0 8004F7A0 00000000 */ nop -/* 0503A4 8004F7A4 A089020A */ sb $t1, 0x20a($a0) -.L8004F7A8: -/* 0503A8 8004F7A8 9082020A */ lbu $v0, 0x20a($a0) -/* 0503AC 8004F7AC 00000000 */ nop -/* 0503B0 8004F7B0 304A00C0 */ andi $t2, $v0, 0xc0 -/* 0503B4 8004F7B4 11400007 */ beqz $t2, .L8004F7D4 -/* 0503B8 8004F7B8 3043000F */ andi $v1, $v0, 0xf -/* 0503BC 8004F7BC 24630001 */ addiu $v1, $v1, 1 -/* 0503C0 8004F7C0 28610003 */ slti $at, $v1, 3 -/* 0503C4 8004F7C4 14200008 */ bnez $at, .L8004F7E8 -/* 0503C8 8004F7C8 304BFFF0 */ andi $t3, $v0, 0xfff0 -/* 0503CC 8004F7CC 10000005 */ b .L8004F7E4 -/* 0503D0 8004F7D0 24030002 */ li $v1, 2 -.L8004F7D4: -/* 0503D4 8004F7D4 2463FFFF */ addiu $v1, $v1, -1 -/* 0503D8 8004F7D8 04610003 */ bgez $v1, .L8004F7E8 -/* 0503DC 8004F7DC 304BFFF0 */ andi $t3, $v0, 0xfff0 -/* 0503E0 8004F7E0 00001825 */ move $v1, $zero -.L8004F7E4: -/* 0503E4 8004F7E4 304BFFF0 */ andi $t3, $v0, 0xfff0 -.L8004F7E8: -/* 0503E8 8004F7E8 01636025 */ or $t4, $t3, $v1 -/* 0503EC 8004F7EC 03E00008 */ jr $ra -/* 0503F0 8004F7F0 A08C020A */ sb $t4, 0x20a($a0) - -glabel func_8004F7F4 -/* 0503F4 8004F7F4 27BDFF40 */ addiu $sp, $sp, -0xc0 -/* 0503F8 8004F7F8 AFBF002C */ sw $ra, 0x2c($sp) -/* 0503FC 8004F7FC AFB10028 */ sw $s1, 0x28($sp) -/* 050400 8004F800 AFB00024 */ sw $s0, 0x24($sp) -/* 050404 8004F804 AFA400C0 */ sw $a0, 0xc0($sp) -/* 050408 8004F808 AFA500C4 */ sw $a1, 0xc4($sp) -/* 05040C 8004F80C A3A00053 */ sb $zero, 0x53($sp) -/* 050410 8004F810 80EE01D2 */ lb $t6, 0x1d2($a3) -/* 050414 8004F814 00E08025 */ move $s0, $a3 -/* 050418 8004F818 11C00008 */ beqz $t6, .L8004F83C -/* 05041C 8004F81C 00C08825 */ move $s1, $a2 -/* 050420 8004F820 3C048012 */ lui $a0, %hi(D_8011D528) # $a0, 0x8012 -/* 050424 8004F824 2484D528 */ addiu $a0, %lo(D_8011D528) # addiu $a0, $a0, -0x2ad8 -/* 050428 8004F828 8C8F0000 */ lw $t7, ($a0) -/* 05042C 8004F82C 3C01FFFF */ lui $at, (0xFFFF7FFF >> 16) # lui $at, 0xffff -/* 050430 8004F830 34217FFF */ ori $at, (0xFFFF7FFF & 0xFFFF) # ori $at, $at, 0x7fff -/* 050434 8004F834 01E1C024 */ and $t8, $t7, $at -/* 050438 8004F838 AC980000 */ sw $t8, ($a0) -.L8004F83C: -/* 05043C 8004F83C 3C198012 */ lui $t9, %hi(D_8011D55C) # $t9, 0x8012 -/* 050440 8004F840 8F39D55C */ lw $t9, %lo(D_8011D55C)($t9) -/* 050444 8004F844 3C048012 */ lui $a0, %hi(D_8011D528) # $a0, 0x8012 -/* 050448 8004F848 2401FFFF */ li $at, -1 -/* 05044C 8004F84C 13210005 */ beq $t9, $at, .L8004F864 -/* 050450 8004F850 2484D528 */ addiu $a0, %lo(D_8011D528) # addiu $a0, $a0, -0x2ad8 -/* 050454 8004F854 820801D8 */ lb $t0, 0x1d8($s0) -/* 050458 8004F858 00003025 */ move $a2, $zero -/* 05045C 8004F85C 11000008 */ beqz $t0, .L8004F880 -/* 050460 8004F860 00003825 */ move $a3, $zero -.L8004F864: -/* 050464 8004F864 8FA600C0 */ lw $a2, 0xc0($sp) -/* 050468 8004F868 8FA700C4 */ lw $a3, 0xc4($sp) -/* 05046C 8004F86C 02202025 */ move $a0, $s1 -/* 050470 8004F870 0C015044 */ jal func_80054110 -/* 050474 8004F874 02002825 */ move $a1, $s0 -/* 050478 8004F878 100003B2 */ b .L80050744 -/* 05047C 8004F87C 8FBF002C */ lw $ra, 0x2c($sp) -.L8004F880: -/* 050480 8004F880 820901D4 */ lb $t1, 0x1d4($s0) -/* 050484 8004F884 3C038012 */ lui $v1, %hi(D_8011D52C) # $v1, 0x8012 -/* 050488 8004F888 1120000D */ beqz $t1, .L8004F8C0 -/* 05048C 8004F88C 2463D52C */ addiu $v1, %lo(D_8011D52C) # addiu $v1, $v1, -0x2ad4 -/* 050490 8004F890 8C6A0000 */ lw $t2, ($v1) -/* 050494 8004F894 2401DFEF */ li $at, -8209 -/* 050498 8004F898 01415824 */ and $t3, $t2, $at -/* 05049C 8004F89C AC6B0000 */ sw $t3, ($v1) -/* 0504A0 8004F8A0 820201D4 */ lb $v0, 0x1d4($s0) -/* 0504A4 8004F8A4 00000000 */ nop -/* 0504A8 8004F8A8 18400004 */ blez $v0, .L8004F8BC -/* 0504AC 8004F8AC 244D0004 */ addiu $t5, $v0, 4 -/* 0504B0 8004F8B0 244CFFFC */ addiu $t4, $v0, -4 -/* 0504B4 8004F8B4 10000002 */ b .L8004F8C0 -/* 0504B8 8004F8B8 A20C01D4 */ sb $t4, 0x1d4($s0) -.L8004F8BC: -/* 0504BC 8004F8BC A20D01D4 */ sb $t5, 0x1d4($s0) -.L8004F8C0: -/* 0504C0 8004F8C0 8C8E0000 */ lw $t6, ($a0) -/* 0504C4 8004F8C4 00001825 */ move $v1, $zero -/* 0504C8 8004F8C8 31CF4000 */ andi $t7, $t6, 0x4000 -/* 0504CC 8004F8CC 11E0000D */ beqz $t7, .L8004F904 -/* 0504D0 8004F8D0 02002025 */ move $a0, $s0 -/* 0504D4 8004F8D4 820201E6 */ lb $v0, 0x1e6($s0) -/* 0504D8 8004F8D8 00000000 */ nop -/* 0504DC 8004F8DC 10400009 */ beqz $v0, .L8004F904 -/* 0504E0 8004F8E0 00000000 */ nop -/* 0504E4 8004F8E4 000218C0 */ sll $v1, $v0, 3 -/* 0504E8 8004F8E8 00621823 */ subu $v1, $v1, $v0 -/* 0504EC 8004F8EC 000318C0 */ sll $v1, $v1, 3 -/* 0504F0 8004F8F0 00621821 */ addu $v1, $v1, $v0 -/* 0504F4 8004F8F4 000318C0 */ sll $v1, $v1, 3 -/* 0504F8 8004F8F8 00621823 */ subu $v1, $v1, $v0 -/* 0504FC 8004F8FC 10000001 */ b .L8004F904 -/* 050500 8004F900 000318C0 */ sll $v1, $v1, 3 -.L8004F904: -/* 050504 8004F904 921801FE */ lbu $t8, 0x1fe($s0) -/* 050508 8004F908 00000000 */ nop -/* 05050C 8004F90C 17000006 */ bnez $t8, .L8004F928 -/* 050510 8004F910 8FA500C0 */ lw $a1, 0xc0($sp) -/* 050514 8004F914 8E390074 */ lw $t9, 0x74($s1) -/* 050518 8004F918 00000000 */ nop -/* 05051C 8004F91C 37280400 */ ori $t0, $t9, 0x400 -/* 050520 8004F920 AE280074 */ sw $t0, 0x74($s1) -/* 050524 8004F924 8FA500C0 */ lw $a1, 0xc0($sp) -.L8004F928: -/* 050528 8004F928 0C014214 */ jal func_80050850 -/* 05052C 8004F92C AFA30010 */ sw $v1, 0x10($sp) -/* 050530 8004F930 8FA600C4 */ lw $a2, 0xc4($sp) -/* 050534 8004F934 02202025 */ move $a0, $s1 -/* 050538 8004F938 0C014DD4 */ jal func_80053750 -/* 05053C 8004F93C 02002825 */ move $a1, $s0 -/* 050540 8004F940 8FA600C0 */ lw $a2, 0xc0($sp) -/* 050544 8004F944 02202025 */ move $a0, $s1 -/* 050548 8004F948 0C014871 */ jal func_800521C4 -/* 05054C 8004F94C 02002825 */ move $a1, $s0 -/* 050550 8004F950 3C018012 */ lui $at, %hi(D_8011D550) # $at, 0x8012 -/* 050554 8004F954 A420D550 */ sh $zero, %lo(D_8011D550)($at) -/* 050558 8004F958 3C018012 */ lui $at, %hi(D_8011D554) # $at, 0x8012 -/* 05055C 8004F95C AC20D554 */ sw $zero, %lo(D_8011D554)($at) -/* 050560 8004F960 3C018012 */ lui $at, %hi(D_8011D558) # $at, 0x8012 -/* 050564 8004F964 AC20D558 */ sw $zero, %lo(D_8011D558)($at) -/* 050568 8004F968 C624000C */ lwc1 $f4, 0xc($s1) -/* 05056C 8004F96C 00000000 */ nop -/* 050570 8004F970 E7A400A8 */ swc1 $f4, 0xa8($sp) -/* 050574 8004F974 C6260010 */ lwc1 $f6, 0x10($s1) -/* 050578 8004F978 00000000 */ nop -/* 05057C 8004F97C E7A600A4 */ swc1 $f6, 0xa4($sp) -/* 050580 8004F980 C6280014 */ lwc1 $f8, 0x14($s1) -/* 050584 8004F984 00000000 */ nop -/* 050588 8004F988 E7A800A0 */ swc1 $f8, 0xa0($sp) -/* 05058C 8004F98C 820201E6 */ lb $v0, 0x1e6($s0) -/* 050590 8004F990 00000000 */ nop -/* 050594 8004F994 10400068 */ beqz $v0, .L8004FB38 -/* 050598 8004F998 00000000 */ nop -/* 05059C 8004F99C 04410013 */ bgez $v0, .L8004F9EC -/* 0505A0 8004F9A0 3C068012 */ lui $a2, %hi(D_8011D534) # $a2, 0x8012 -/* 0505A4 8004F9A4 24C6D534 */ addiu $a2, %lo(D_8011D534) # addiu $a2, $a2, -0x2acc -/* 0505A8 8004F9A8 8CC90000 */ lw $t1, ($a2) -/* 0505AC 8004F9AC 8FAB00C0 */ lw $t3, 0xc0($sp) -/* 0505B0 8004F9B0 2921001A */ slti $at, $t1, 0x1a -/* 0505B4 8004F9B4 1420000D */ bnez $at, .L8004F9EC -/* 0505B8 8004F9B8 00000000 */ nop -/* 0505BC 8004F9BC 860A016E */ lh $t2, 0x16e($s0) -/* 0505C0 8004F9C0 00000000 */ nop -/* 0505C4 8004F9C4 014B6021 */ addu $t4, $t2, $t3 -/* 0505C8 8004F9C8 A60C016E */ sh $t4, 0x16e($s0) -/* 0505CC 8004F9CC 8602016E */ lh $v0, 0x16e($s0) -/* 0505D0 8004F9D0 00000000 */ nop -/* 0505D4 8004F9D4 0441001C */ bgez $v0, .L8004FA48 -/* 0505D8 8004F9D8 00000000 */ nop -/* 0505DC 8004F9DC A600016E */ sh $zero, 0x16e($s0) -/* 0505E0 8004F9E0 8602016E */ lh $v0, 0x16e($s0) -/* 0505E4 8004F9E4 10000019 */ b .L8004FA4C -/* 0505E8 8004F9E8 44825000 */ mtc1 $v0, $f10 -.L8004F9EC: -/* 0505EC 8004F9EC 3C068012 */ lui $a2, %hi(D_8011D534) # $a2, 0x8012 -/* 0505F0 8004F9F0 18400012 */ blez $v0, .L8004FA3C -/* 0505F4 8004F9F4 24C6D534 */ addiu $a2, %lo(D_8011D534) # addiu $a2, $a2, -0x2acc -/* 0505F8 8004F9F8 8CCD0000 */ lw $t5, ($a2) -/* 0505FC 8004F9FC 8FAF00C0 */ lw $t7, 0xc0($sp) -/* 050600 8004FA00 29A1FFE7 */ slti $at, $t5, -0x19 -/* 050604 8004FA04 1020000D */ beqz $at, .L8004FA3C -/* 050608 8004FA08 00000000 */ nop -/* 05060C 8004FA0C 860E016E */ lh $t6, 0x16e($s0) -/* 050610 8004FA10 00000000 */ nop -/* 050614 8004FA14 01CFC023 */ subu $t8, $t6, $t7 -/* 050618 8004FA18 A618016E */ sh $t8, 0x16e($s0) -/* 05061C 8004FA1C 8602016E */ lh $v0, 0x16e($s0) -/* 050620 8004FA20 00000000 */ nop -/* 050624 8004FA24 18400008 */ blez $v0, .L8004FA48 -/* 050628 8004FA28 00000000 */ nop -/* 05062C 8004FA2C A600016E */ sh $zero, 0x16e($s0) -/* 050630 8004FA30 8602016E */ lh $v0, 0x16e($s0) -/* 050634 8004FA34 10000005 */ b .L8004FA4C -/* 050638 8004FA38 44825000 */ mtc1 $v0, $f10 -.L8004FA3C: -/* 05063C 8004FA3C A600016E */ sh $zero, 0x16e($s0) -/* 050640 8004FA40 8602016E */ lh $v0, 0x16e($s0) -/* 050644 8004FA44 00000000 */ nop -.L8004FA48: -/* 050648 8004FA48 44825000 */ mtc1 $v0, $f10 -.L8004FA4C: -/* 05064C 8004FA4C 44802000 */ mtc1 $zero, $f4 -/* 050650 8004FA50 46805420 */ cvt.s.w $f16, $f10 -/* 050654 8004FA54 3C0142A0 */ li $at, 0x42A00000 # 80.000000 -/* 050658 8004FA58 44814000 */ mtc1 $at, $f8 -/* 05065C 8004FA5C E7B000B8 */ swc1 $f16, 0xb8($sp) -/* 050660 8004FA60 C7B200B8 */ lwc1 $f18, 0xb8($sp) -/* 050664 8004FA64 02202025 */ move $a0, $s1 -/* 050668 8004FA68 4604903C */ c.lt.s $f18, $f4 -/* 05066C 8004FA6C 00000000 */ nop -/* 050670 8004FA70 45000003 */ bc1f .L8004FA80 -/* 050674 8004FA74 00000000 */ nop -/* 050678 8004FA78 46009187 */ neg.s $f6, $f18 -/* 05067C 8004FA7C E7A600B8 */ swc1 $f6, 0xb8($sp) -.L8004FA80: -/* 050680 8004FA80 C7AA00B8 */ lwc1 $f10, 0xb8($sp) -/* 050684 8004FA84 00000000 */ nop -/* 050688 8004FA88 460A403C */ c.lt.s $f8, $f10 -/* 05068C 8004FA8C 00000000 */ nop -/* 050690 8004FA90 45000009 */ bc1f .L8004FAB8 -/* 050694 8004FA94 00000000 */ nop -/* 050698 8004FA98 0C015C12 */ jal func_80057048 -/* 05069C 8004FA9C 2405001C */ li $a1, 28 -/* 0506A0 8004FAA0 821901E6 */ lb $t9, 0x1e6($s0) -/* 0506A4 8004FAA4 3C068012 */ lui $a2, %hi(D_8011D534) # $a2, 0x8012 -/* 0506A8 8004FAA8 00194023 */ negu $t0, $t9 -/* 0506AC 8004FAAC 24C6D534 */ addiu $a2, %lo(D_8011D534) # addiu $a2, $a2, -0x2acc -/* 0506B0 8004FAB0 A20801DB */ sb $t0, 0x1db($s0) -/* 0506B4 8004FAB4 A20001E6 */ sb $zero, 0x1e6($s0) -.L8004FAB8: -/* 0506B8 8004FAB8 8CC30000 */ lw $v1, ($a2) -/* 0506BC 8004FABC 00000000 */ nop -/* 0506C0 8004FAC0 28610033 */ slti $at, $v1, 0x33 -/* 0506C4 8004FAC4 14200004 */ bnez $at, .L8004FAD8 -/* 0506C8 8004FAC8 2861FFCE */ slti $at, $v1, -0x32 -/* 0506CC 8004FACC 24030032 */ li $v1, 50 -/* 0506D0 8004FAD0 ACC30000 */ sw $v1, ($a2) -/* 0506D4 8004FAD4 2861FFCE */ slti $at, $v1, -0x32 -.L8004FAD8: -/* 0506D8 8004FAD8 10200003 */ beqz $at, .L8004FAE8 -/* 0506DC 8004FADC 00000000 */ nop -/* 0506E0 8004FAE0 2403FFCE */ li $v1, -50 -/* 0506E4 8004FAE4 ACC30000 */ sw $v1, ($a2) -.L8004FAE8: -/* 0506E8 8004FAE8 18600005 */ blez $v1, .L8004FB00 -/* 0506EC 8004FAEC 00000000 */ nop -/* 0506F0 8004FAF0 820B01E6 */ lb $t3, 0x1e6($s0) -/* 0506F4 8004FAF4 00000000 */ nop -/* 0506F8 8004FAF8 1D600006 */ bgtz $t3, .L8004FB14 -/* 0506FC 8004FAFC 00036083 */ sra $t4, $v1, 2 -.L8004FB00: -/* 050700 8004FB00 820201E6 */ lb $v0, 0x1e6($s0) -/* 050704 8004FB04 04610007 */ bgez $v1, .L8004FB24 -/* 050708 8004FB08 00026900 */ sll $t5, $v0, 4 -/* 05070C 8004FB0C 04410004 */ bgez $v0, .L8004FB20 -/* 050710 8004FB10 00036083 */ sra $t4, $v1, 2 -.L8004FB14: -/* 050714 8004FB14 ACCC0000 */ sw $t4, ($a2) -/* 050718 8004FB18 820201E6 */ lb $v0, 0x1e6($s0) -/* 05071C 8004FB1C 01801825 */ move $v1, $t4 -.L8004FB20: -/* 050720 8004FB20 00026900 */ sll $t5, $v0, 4 -.L8004FB24: -/* 050724 8004FB24 01A26823 */ subu $t5, $t5, $v0 -/* 050728 8004FB28 000D6880 */ sll $t5, $t5, 2 -/* 05072C 8004FB2C 006D7021 */ addu $t6, $v1, $t5 -/* 050730 8004FB30 10000002 */ b .L8004FB3C -/* 050734 8004FB34 ACCE0000 */ sw $t6, ($a2) -.L8004FB38: -/* 050738 8004FB38 A600016E */ sh $zero, 0x16e($s0) -.L8004FB3C: -/* 05073C 8004FB3C 8FA600C4 */ lw $a2, 0xc4($sp) -/* 050740 8004FB40 02002025 */ move $a0, $s0 -/* 050744 8004FB44 0C015E6C */ jal func_800579B0 -/* 050748 8004FB48 00002825 */ move $a1, $zero -/* 05074C 8004FB4C 02202025 */ move $a0, $s1 -/* 050750 8004FB50 0C015D7B */ jal func_800575EC -/* 050754 8004FB54 02002825 */ move $a1, $s0 -/* 050758 8004FB58 02202025 */ move $a0, $s1 -/* 05075C 8004FB5C 0C014D71 */ jal func_800535C4 -/* 050760 8004FB60 02002825 */ move $a1, $s0 -/* 050764 8004FB64 0C014D99 */ jal func_80053664 -/* 050768 8004FB68 02002025 */ move $a0, $s0 -/* 05076C 8004FB6C 8FA600C0 */ lw $a2, 0xc0($sp) -/* 050770 8004FB70 02202025 */ move $a0, $s1 -/* 050774 8004FB74 0C0157B0 */ jal func_80055EC0 -/* 050778 8004FB78 02002825 */ move $a1, $s0 -/* 05077C 8004FB7C 8FA600C0 */ lw $a2, 0xc0($sp) -/* 050780 8004FB80 02202025 */ move $a0, $s1 -/* 050784 8004FB84 0C014FA7 */ jal func_80053E9C -/* 050788 8004FB88 02002825 */ move $a1, $s0 -/* 05078C 8004FB8C 820F01DB */ lb $t7, 0x1db($s0) -/* 050790 8004FB90 00000000 */ nop -/* 050794 8004FB94 11E00008 */ beqz $t7, .L8004FBB8 -/* 050798 8004FB98 00000000 */ nop -/* 05079C 8004FB9C 8FA600C0 */ lw $a2, 0xc0($sp) -/* 0507A0 8004FBA0 8FA700C4 */ lw $a3, 0xc4($sp) -/* 0507A4 8004FBA4 02202025 */ move $a0, $s1 -/* 0507A8 8004FBA8 0C014AD9 */ jal func_80052B64 -/* 0507AC 8004FBAC 02002825 */ move $a1, $s0 -/* 0507B0 8004FBB0 10000010 */ b .L8004FBF4 -/* 0507B4 8004FBB4 8E02001C */ lw $v0, 0x1c($s0) -.L8004FBB8: -/* 0507B8 8004FBB8 821801E2 */ lb $t8, 0x1e2($s0) -/* 0507BC 8004FBBC 8FA600C0 */ lw $a2, 0xc0($sp) -/* 0507C0 8004FBC0 1B000008 */ blez $t8, .L8004FBE4 -/* 0507C4 8004FBC4 02202025 */ move $a0, $s1 -/* 0507C8 8004FBC8 8FA600C0 */ lw $a2, 0xc0($sp) -/* 0507CC 8004FBCC 8FA700C4 */ lw $a3, 0xc4($sp) -/* 0507D0 8004FBD0 02202025 */ move $a0, $s1 -/* 0507D4 8004FBD4 0C01428A */ jal func_80050A28 -/* 0507D8 8004FBD8 02002825 */ move $a1, $s0 -/* 0507DC 8004FBDC 10000005 */ b .L8004FBF4 -/* 0507E0 8004FBE0 8E02001C */ lw $v0, 0x1c($s0) -.L8004FBE4: -/* 0507E4 8004FBE4 8FA700C4 */ lw $a3, 0xc4($sp) -/* 0507E8 8004FBE8 0C014B5F */ jal func_80052D7C -/* 0507EC 8004FBEC 02002825 */ move $a1, $s0 -/* 0507F0 8004FBF0 8E02001C */ lw $v0, 0x1c($s0) -.L8004FBF4: -/* 0507F4 8004FBF4 00000000 */ nop -/* 0507F8 8004FBF8 10400004 */ beqz $v0, .L8004FC0C -/* 0507FC 8004FBFC 00000000 */ nop -/* 050800 8004FC00 0C001223 */ jal func_8000488C -/* 050804 8004FC04 00402025 */ move $a0, $v0 -/* 050808 8004FC08 AE00001C */ sw $zero, 0x1c($s0) -.L8004FC0C: -/* 05080C 8004FC0C C60000C0 */ lwc1 $f0, 0xc0($s0) -/* 050810 8004FC10 44808000 */ mtc1 $zero, $f16 -/* 050814 8004FC14 00000000 */ nop -/* 050818 8004FC18 46008032 */ c.eq.s $f16, $f0 -/* 05081C 8004FC1C 00000000 */ nop -/* 050820 8004FC20 45010018 */ bc1t .L8004FC84 -/* 050824 8004FC24 00000000 */ nop -/* 050828 8004FC28 821901D7 */ lb $t9, 0x1d7($s0) -/* 05082C 8004FC2C 2401000B */ li $at, 11 -/* 050830 8004FC30 13210014 */ beq $t9, $at, .L8004FC84 -/* 050834 8004FC34 3C014024 */ li $at, 0x40240000 # 2.562500 -/* 050838 8004FC38 44819800 */ mtc1 $at, $f19 -/* 05083C 8004FC3C 44809000 */ mtc1 $zero, $f18 -/* 050840 8004FC40 46000121 */ cvt.d.s $f4, $f0 -/* 050844 8004FC44 46322181 */ sub.d $f6, $f4, $f18 -/* 050848 8004FC48 3C01800E */ lui $at, %hi(D_800E6604) # $at, 0x800e -/* 05084C 8004FC4C 46203220 */ cvt.s.d $f8, $f6 -/* 050850 8004FC50 C4316600 */ lwc1 $f17, %lo(D_800E6600)($at) -/* 050854 8004FC54 C4306604 */ lwc1 $f16, %lo(D_800E6604)($at) -/* 050858 8004FC58 460042A1 */ cvt.d.s $f10, $f8 -/* 05085C 8004FC5C 46305102 */ mul.d $f4, $f10, $f16 -/* 050860 8004FC60 C7B200C4 */ lwc1 $f18, 0xc4($sp) -/* 050864 8004FC64 E7A800B8 */ swc1 $f8, 0xb8($sp) -/* 050868 8004FC68 460091A1 */ cvt.d.s $f6, $f18 -/* 05086C 8004FC6C C62A0020 */ lwc1 $f10, 0x20($s1) -/* 050870 8004FC70 46262202 */ mul.d $f8, $f4, $f6 -/* 050874 8004FC74 46005421 */ cvt.d.s $f16, $f10 -/* 050878 8004FC78 46288480 */ add.d $f18, $f16, $f8 -/* 05087C 8004FC7C 46209120 */ cvt.s.d $f4, $f18 -/* 050880 8004FC80 E6240020 */ swc1 $f4, 0x20($s1) -.L8004FC84: -/* 050884 8004FC84 0C01AF6C */ jal func_8006BDB0 -/* 050888 8004FC88 00000000 */ nop -/* 05088C 8004FC8C C60A00C0 */ lwc1 $f10, 0xc0($s0) -/* 050890 8004FC90 44803800 */ mtc1 $zero, $f7 -/* 050894 8004FC94 44803000 */ mtc1 $zero, $f6 -/* 050898 8004FC98 46005421 */ cvt.d.s $f16, $f10 -/* 05089C 8004FC9C 46303032 */ c.eq.d $f6, $f16 -/* 0508A0 8004FCA0 00000000 */ nop -/* 0508A4 8004FCA4 45010004 */ bc1t .L8004FCB8 -/* 0508A8 8004FCA8 00000000 */ nop -/* 0508AC 8004FCAC 80480002 */ lb $t0, 2($v0) -/* 0508B0 8004FCB0 00000000 */ nop -/* 0508B4 8004FCB4 15000005 */ bnez $t0, .L8004FCCC -.L8004FCB8: -/* 0508B8 8004FCB8 3C098012 */ lui $t1, %hi(D_8011D581) # $t1, 0x8012 -/* 0508BC 8004FCBC 8129D581 */ lb $t1, %lo(D_8011D581)($t1) -/* 0508C0 8004FCC0 2401000A */ li $at, 10 -/* 0508C4 8004FCC4 1521004F */ bne $t1, $at, .L8004FE04 -/* 0508C8 8004FCC8 00000000 */ nop -.L8004FCCC: -/* 0508CC 8004FCCC 920A01F0 */ lbu $t2, 0x1f0($s0) -/* 0508D0 8004FCD0 02202025 */ move $a0, $s1 -/* 0508D4 8004FCD4 1140000A */ beqz $t2, .L8004FD00 -/* 0508D8 8004FCD8 02002825 */ move $a1, $s0 -/* 0508DC 8004FCDC 3C01800E */ lui $at, %hi(D_800E660C) # $at, 0x800e -/* 0508E0 8004FCE0 C60800A8 */ lwc1 $f8, 0xa8($s0) -/* 0508E4 8004FCE4 C4256608 */ lwc1 $f5, %lo(D_800E6608)($at) -/* 0508E8 8004FCE8 C424660C */ lwc1 $f4, %lo(D_800E660C)($at) -/* 0508EC 8004FCEC 460044A1 */ cvt.d.s $f18, $f8 -/* 0508F0 8004FCF0 46249281 */ sub.d $f10, $f18, $f4 -/* 0508F4 8004FCF4 462051A0 */ cvt.s.d $f6, $f10 -/* 0508F8 8004FCF8 10000009 */ b .L8004FD20 -/* 0508FC 8004FCFC E60600A8 */ swc1 $f6, 0xa8($s0) -.L8004FD00: -/* 050900 8004FD00 3C01800E */ lui $at, %hi(D_800E6614) # $at, 0x800e -/* 050904 8004FD04 C61000A8 */ lwc1 $f16, 0xa8($s0) -/* 050908 8004FD08 C4336610 */ lwc1 $f19, %lo(D_800E6610)($at) -/* 05090C 8004FD0C C4326614 */ lwc1 $f18, %lo(D_800E6614)($at) -/* 050910 8004FD10 46008221 */ cvt.d.s $f8, $f16 -/* 050914 8004FD14 46324101 */ sub.d $f4, $f8, $f18 -/* 050918 8004FD18 462022A0 */ cvt.s.d $f10, $f4 -/* 05091C 8004FD1C E60A00A8 */ swc1 $f10, 0xa8($s0) -.L8004FD20: -/* 050920 8004FD20 27AB00B4 */ addiu $t3, $sp, 0xb4 -/* 050924 8004FD24 AFAB0010 */ sw $t3, 0x10($sp) -/* 050928 8004FD28 27A600B8 */ addiu $a2, $sp, 0xb8 -/* 05092C 8004FD2C 0C016420 */ jal func_80059080 -/* 050930 8004FD30 27A700B0 */ addiu $a3, $sp, 0xb0 -/* 050934 8004FD34 920C01F0 */ lbu $t4, 0x1f0($s0) -/* 050938 8004FD38 3C01800E */ lui $at, 0x800e -/* 05093C 8004FD3C 1180000A */ beqz $t4, .L8004FD68 -/* 050940 8004FD40 00000000 */ nop -/* 050944 8004FD44 3C01800E */ lui $at, %hi(D_800E6624) # $at, 0x800e -/* 050948 8004FD48 C60600A8 */ lwc1 $f6, 0xa8($s0) -/* 05094C 8004FD4C C4296618 */ lwc1 $f9, %lo(D_800E6618)($at) -/* 050950 8004FD50 C428661C */ lwc1 $f8, %lo(D_800E661C)($at) -/* 050954 8004FD54 46003421 */ cvt.d.s $f16, $f6 -/* 050958 8004FD58 46288480 */ add.d $f18, $f16, $f8 -/* 05095C 8004FD5C 46209120 */ cvt.s.d $f4, $f18 -/* 050960 8004FD60 10000008 */ b .L8004FD84 -/* 050964 8004FD64 E60400A8 */ swc1 $f4, 0xa8($s0) -.L8004FD68: -/* 050968 8004FD68 C60A00A8 */ lwc1 $f10, 0xa8($s0) -/* 05096C 8004FD6C C4316620 */ lwc1 $f17, %lo(D_800E6620)($at) -/* 050970 8004FD70 C4306624 */ lwc1 $f16, %lo(D_800E6624)($at) -/* 050974 8004FD74 460051A1 */ cvt.d.s $f6, $f10 -/* 050978 8004FD78 46303200 */ add.d $f8, $f6, $f16 -/* 05097C 8004FD7C 462044A0 */ cvt.s.d $f18, $f8 -/* 050980 8004FD80 E61200A8 */ swc1 $f18, 0xa8($s0) -.L8004FD84: -/* 050984 8004FD84 C7A400B8 */ lwc1 $f4, 0xb8($sp) -/* 050988 8004FD88 C62A000C */ lwc1 $f10, 0xc($s1) -/* 05098C 8004FD8C C7B000B4 */ lwc1 $f16, 0xb4($sp) -/* 050990 8004FD90 460A2181 */ sub.s $f6, $f4, $f10 -/* 050994 8004FD94 E7A600B8 */ swc1 $f6, 0xb8($sp) -/* 050998 8004FD98 C6280014 */ lwc1 $f8, 0x14($s1) -/* 05099C 8004FD9C 46063102 */ mul.s $f4, $f6, $f6 -/* 0509A0 8004FDA0 46088481 */ sub.s $f18, $f16, $f8 -/* 0509A4 8004FDA4 E7B200B4 */ swc1 $f18, 0xb4($sp) -/* 0509A8 8004FDA8 46129282 */ mul.s $f10, $f18, $f18 -/* 0509AC 8004FDAC 0C0326B4 */ jal sqrtf -/* 0509B0 8004FDB0 460A2300 */ add.s $f12, $f4, $f10 -/* 0509B4 8004FDB4 C7B000B8 */ lwc1 $f16, 0xb8($sp) -/* 0509B8 8004FDB8 C7A600B4 */ lwc1 $f6, 0xb4($sp) -/* 0509BC 8004FDBC 46008203 */ div.s $f8, $f16, $f0 -/* 0509C0 8004FDC0 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 0509C4 8004FDC4 44811000 */ mtc1 $at, $f2 -/* 0509C8 8004FDC8 E7A000B0 */ swc1 $f0, 0xb0($sp) -/* 0509CC 8004FDCC 3C014118 */ li $at, 0x41180000 # 9.500000 -/* 0509D0 8004FDD0 240D0001 */ li $t5, 1 -/* 0509D4 8004FDD4 46003483 */ div.s $f18, $f6, $f0 -/* 0509D8 8004FDD8 46024102 */ mul.s $f4, $f8, $f2 -/* 0509DC 8004FDDC E7A800B8 */ swc1 $f8, 0xb8($sp) -/* 0509E0 8004FDE0 44813000 */ mtc1 $at, $f6 -/* 0509E4 8004FDE4 E7B200B4 */ swc1 $f18, 0xb4($sp) -/* 0509E8 8004FDE8 E624001C */ swc1 $f4, 0x1c($s1) -/* 0509EC 8004FDEC C7AA00B4 */ lwc1 $f10, 0xb4($sp) -/* 0509F0 8004FDF0 E6260020 */ swc1 $f6, 0x20($s1) -/* 0509F4 8004FDF4 46025402 */ mul.s $f16, $f10, $f2 -/* 0509F8 8004FDF8 E6300024 */ swc1 $f16, 0x24($s1) -/* 0509FC 8004FDFC 10000007 */ b .L8004FE1C -/* 050A00 8004FE00 A20D01F0 */ sb $t5, 0x1f0($s0) -.L8004FE04: -/* 050A04 8004FE04 820E01E2 */ lb $t6, 0x1e2($s0) -/* 050A08 8004FE08 00000000 */ nop -/* 050A0C 8004FE0C 29C10003 */ slti $at, $t6, 3 -/* 050A10 8004FE10 14200002 */ bnez $at, .L8004FE1C -/* 050A14 8004FE14 00000000 */ nop -/* 050A18 8004FE18 A20001F0 */ sb $zero, 0x1f0($s0) -.L8004FE1C: -/* 050A1C 8004FE1C 8E0F0148 */ lw $t7, 0x148($s0) -/* 050A20 8004FE20 00000000 */ nop -/* 050A24 8004FE24 15E00005 */ bnez $t7, .L8004FE3C -/* 050A28 8004FE28 00000000 */ nop -/* 050A2C 8004FE2C 8FA600C0 */ lw $a2, 0xc0($sp) -/* 050A30 8004FE30 02202025 */ move $a0, $s1 -/* 050A34 8004FE34 0C014943 */ jal func_8005250C -/* 050A38 8004FE38 02002825 */ move $a1, $s0 -.L8004FE3C: -/* 050A3C 8004FE3C 860501A2 */ lh $a1, 0x1a2($s0) -/* 050A40 8004FE40 3C188012 */ lui $t8, %hi(D_8011D554) # $t8, 0x8012 -/* 050A44 8004FE44 8F18D554 */ lw $t8, %lo(D_8011D554)($t8) -/* 050A48 8004FE48 30B9FFFF */ andi $t9, $a1, 0xffff -/* 050A4C 8004FE4C 34018001 */ li $at, 32769 -/* 050A50 8004FE50 03191823 */ subu $v1, $t8, $t9 -/* 050A54 8004FE54 0061082A */ slt $at, $v1, $at -/* 050A58 8004FE58 8FA900C0 */ lw $t1, 0xc0($sp) -/* 050A5C 8004FE5C 14200003 */ bnez $at, .L8004FE6C -/* 050A60 8004FE60 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 050A64 8004FE64 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 050A68 8004FE68 00611821 */ addu $v1, $v1, $at -.L8004FE6C: -/* 050A6C 8004FE6C 28618000 */ slti $at, $v1, -0x8000 -/* 050A70 8004FE70 10200002 */ beqz $at, .L8004FE7C -/* 050A74 8004FE74 3401FFFF */ li $at, 65535 -/* 050A78 8004FE78 00611821 */ addu $v1, $v1, $at -.L8004FE7C: -/* 050A7C 8004FE7C 00034083 */ sra $t0, $v1, 2 -/* 050A80 8004FE80 290102EF */ slti $at, $t0, 0x2ef -/* 050A84 8004FE84 14200002 */ bnez $at, .L8004FE90 -/* 050A88 8004FE88 01001825 */ move $v1, $t0 -/* 050A8C 8004FE8C 240302EE */ li $v1, 750 -.L8004FE90: -/* 050A90 8004FE90 2861FD12 */ slti $at, $v1, -0x2ee -/* 050A94 8004FE94 10200002 */ beqz $at, .L8004FEA0 -/* 050A98 8004FE98 00000000 */ nop -/* 050A9C 8004FE9C 2403FD12 */ li $v1, -750 -.L8004FEA0: -/* 050AA0 8004FEA0 00690019 */ multu $v1, $t1 -/* 050AA4 8004FEA4 860C01A0 */ lh $t4, 0x1a0($s0) -/* 050AA8 8004FEA8 3C0F8012 */ lui $t7, %hi(D_8011D558) # $t7, 0x8012 -/* 050AAC 8004FEAC 3C048012 */ lui $a0, %hi(D_8011D550) # $a0, 0x8012 -/* 050AB0 8004FEB0 00005012 */ mflo $t2 -/* 050AB4 8004FEB4 00AA5821 */ addu $t3, $a1, $t2 -/* 050AB8 8004FEB8 A60B01A2 */ sh $t3, 0x1a2($s0) -/* 050ABC 8004FEBC 860D01A2 */ lh $t5, 0x1a2($s0) -/* 050AC0 8004FEC0 00000000 */ nop -/* 050AC4 8004FEC4 018D7021 */ addu $t6, $t4, $t5 -/* 050AC8 8004FEC8 A62E0000 */ sh $t6, ($s1) -/* 050ACC 8004FECC 860201A6 */ lh $v0, 0x1a6($s0) -/* 050AD0 8004FED0 8DEFD558 */ lw $t7, %lo(D_8011D558)($t7) -/* 050AD4 8004FED4 8FB900C0 */ lw $t9, 0xc0($sp) -/* 050AD8 8004FED8 01E2C023 */ subu $t8, $t7, $v0 -/* 050ADC 8004FEDC 03190019 */ multu $t8, $t9 -/* 050AE0 8004FEE0 860B01A4 */ lh $t3, 0x1a4($s0) -/* 050AE4 8004FEE4 00004012 */ mflo $t0 -/* 050AE8 8004FEE8 00084903 */ sra $t1, $t0, 4 -/* 050AEC 8004FEEC 00495021 */ addu $t2, $v0, $t1 -/* 050AF0 8004FEF0 A60A01A6 */ sh $t2, 0x1a6($s0) -/* 050AF4 8004FEF4 860C01A6 */ lh $t4, 0x1a6($s0) -/* 050AF8 8004FEF8 00000000 */ nop -/* 050AFC 8004FEFC 016C6821 */ addu $t5, $t3, $t4 -/* 050B00 8004FF00 A62D0004 */ sh $t5, 4($s1) -/* 050B04 8004FF04 9484D550 */ lhu $a0, %lo(D_8011D550)($a0) -/* 050B08 8004FF08 00000000 */ nop -/* 050B0C 8004FF0C 10800024 */ beqz $a0, .L8004FFA0 -/* 050B10 8004FF10 3C0E8012 */ lui $t6, %hi(D_8011D55C) # $t6, 0x8012 -/* 050B14 8004FF14 8DCED55C */ lw $t6, %lo(D_8011D55C)($t6) -/* 050B18 8004FF18 2401FFFF */ li $at, -1 -/* 050B1C 8004FF1C 11C1000F */ beq $t6, $at, .L8004FF5C -/* 050B20 8004FF20 2401010C */ li $at, 268 -/* 050B24 8004FF24 1081000D */ beq $a0, $at, .L8004FF5C -/* 050B28 8004FF28 260F021C */ addiu $t7, $s0, 0x21c -/* 050B2C 8004FF2C 8E25000C */ lw $a1, 0xc($s1) -/* 050B30 8004FF30 8E260010 */ lw $a2, 0x10($s1) -/* 050B34 8004FF34 8E270014 */ lw $a3, 0x14($s1) -/* 050B38 8004FF38 0C0007AA */ jal func_80001EA8 -/* 050B3C 8004FF3C AFAF0010 */ sw $t7, 0x10($sp) -/* 050B40 8004FF40 3C048012 */ lui $a0, %hi(D_8011D550) # $a0, 0x8012 -/* 050B44 8004FF44 3C068012 */ lui $a2, %hi(D_8011D553) # $a2, 0x8012 -/* 050B48 8004FF48 90C6D553 */ lbu $a2, %lo(D_8011D553)($a2) -/* 050B4C 8004FF4C 9484D550 */ lhu $a0, %lo(D_8011D550)($a0) -/* 050B50 8004FF50 8E05021C */ lw $a1, 0x21c($s0) -/* 050B54 8004FF54 0C0007EE */ jal func_80001FB8 -/* 050B58 8004FF58 00000000 */ nop -.L8004FF5C: -/* 050B5C 8004FF5C 3C188012 */ lui $t8, %hi(D_8011D552) # $t8, 0x8012 -/* 050B60 8004FF60 9718D552 */ lhu $t8, %lo(D_8011D552)($t8) -/* 050B64 8004FF64 3C01800E */ lui $at, %hi(D_800E662C) # $at, 0x800e -/* 050B68 8004FF68 2719FFD8 */ addiu $t9, $t8, -0x28 -/* 050B6C 8004FF6C 44999000 */ mtc1 $t9, $f18 -/* 050B70 8004FF70 C42B6628 */ lwc1 $f11, %lo(D_800E6628)($at) -/* 050B74 8004FF74 46809220 */ cvt.s.w $f8, $f18 -/* 050B78 8004FF78 C42A662C */ lwc1 $f10, %lo(D_800E662C)($at) -/* 050B7C 8004FF7C 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 050B80 8004FF80 46004121 */ cvt.d.s $f4, $f8 -/* 050B84 8004FF84 462A2402 */ mul.d $f16, $f4, $f10 -/* 050B88 8004FF88 44813800 */ mtc1 $at, $f7 -/* 050B8C 8004FF8C 44803000 */ mtc1 $zero, $f6 -/* 050B90 8004FF90 A20001E0 */ sb $zero, 0x1e0($s0) -/* 050B94 8004FF94 46303481 */ sub.d $f18, $f6, $f16 -/* 050B98 8004FF98 46209220 */ cvt.s.d $f8, $f18 -/* 050B9C 8004FF9C E6080090 */ swc1 $f8, 0x90($s0) -.L8004FFA0: -/* 050BA0 8004FFA0 920801F0 */ lbu $t0, 0x1f0($s0) -/* 050BA4 8004FFA4 00000000 */ nop -/* 050BA8 8004FFA8 1500001D */ bnez $t0, .L80050020 -/* 050BAC 8004FFAC 00000000 */ nop -/* 050BB0 8004FFB0 860901A0 */ lh $t1, 0x1a0($s0) -/* 050BB4 8004FFB4 8E0A010C */ lw $t2, 0x10c($s0) -/* 050BB8 8004FFB8 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 -/* 050BBC 8004FFBC 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 -/* 050BC0 8004FFC0 44800000 */ mtc1 $zero, $f0 -/* 050BC4 8004FFC4 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 050BC8 8004FFC8 44812000 */ mtc1 $at, $f4 -/* 050BCC 8004FFCC 012A5821 */ addu $t3, $t1, $t2 -/* 050BD0 8004FFD0 A4AB0000 */ sh $t3, ($a1) -/* 050BD4 8004FFD4 A4A00002 */ sh $zero, 2($a1) -/* 050BD8 8004FFD8 A4A00004 */ sh $zero, 4($a1) -/* 050BDC 8004FFDC 27A40060 */ addiu $a0, $sp, 0x60 -/* 050BE0 8004FFE0 E4A0000C */ swc1 $f0, 0xc($a1) -/* 050BE4 8004FFE4 E4A00010 */ swc1 $f0, 0x10($a1) -/* 050BE8 8004FFE8 E4A00014 */ swc1 $f0, 0x14($a1) -/* 050BEC 8004FFEC 0C01BF9D */ jal func_8006FE74 -/* 050BF0 8004FFF0 E4A40008 */ swc1 $f4, 8($a1) -/* 050BF4 8004FFF4 8E050030 */ lw $a1, 0x30($s0) -/* 050BF8 8004FFF8 8E07002C */ lw $a3, 0x2c($s0) -/* 050BFC 8004FFFC 262C001C */ addiu $t4, $s1, 0x1c -/* 050C00 80050000 27AD00BC */ addiu $t5, $sp, 0xbc -/* 050C04 80050004 262E0024 */ addiu $t6, $s1, 0x24 -/* 050C08 80050008 AFAE0018 */ sw $t6, 0x18($sp) -/* 050C0C 8005000C AFAD0014 */ sw $t5, 0x14($sp) -/* 050C10 80050010 AFAC0010 */ sw $t4, 0x10($sp) -/* 050C14 80050014 27A40060 */ addiu $a0, $sp, 0x60 -/* 050C18 80050018 0C01BD93 */ jal func_8006F64C -/* 050C1C 8005001C 24060000 */ li $a2, 0 -.L80050020: -/* 050C20 80050020 820F0175 */ lb $t7, 0x175($s0) -/* 050C24 80050024 00000000 */ nop -/* 050C28 80050028 11E00007 */ beqz $t7, .L80050048 -/* 050C2C 8005002C 3C018012 */ lui $at, %hi(D_8011D578) # $at, 0x8012 -/* 050C30 80050030 C42AD578 */ lwc1 $f10, %lo(D_8011D578)($at) -/* 050C34 80050034 3C018012 */ lui $at, %hi(D_8011D57C) # $at, 0x8012 -/* 050C38 80050038 E62A001C */ swc1 $f10, 0x1c($s1) -/* 050C3C 8005003C C426D57C */ lwc1 $f6, %lo(D_8011D57C)($at) -/* 050C40 80050040 00000000 */ nop -/* 050C44 80050044 E6260024 */ swc1 $f6, 0x24($s1) -.L80050048: -/* 050C48 80050048 8E180148 */ lw $t8, 0x148($s0) -/* 050C4C 8005004C 8FA600C4 */ lw $a2, 0xc4($sp) -/* 050C50 80050050 17000072 */ bnez $t8, .L8005021C -/* 050C54 80050054 02202025 */ move $a0, $s1 -/* 050C58 80050058 C630001C */ lwc1 $f16, 0x1c($s1) -/* 050C5C 8005005C 3C088012 */ lui $t0, %hi(D_8011D584) # $t0, 0x8012 -/* 050C60 80050060 E7B000B8 */ swc1 $f16, 0xb8($sp) -/* 050C64 80050064 C6320024 */ lwc1 $f18, 0x24($s1) -/* 050C68 80050068 C7A800B8 */ lwc1 $f8, 0xb8($sp) -/* 050C6C 8005006C E7B200B4 */ swc1 $f18, 0xb4($sp) -/* 050C70 80050070 821901D2 */ lb $t9, 0x1d2($s0) -/* 050C74 80050074 3C01800E */ lui $at, %hi(D_800E6634) # $at, 0x800e -/* 050C78 80050078 13200009 */ beqz $t9, .L800500A0 -/* 050C7C 8005007C 00000000 */ nop -/* 050C80 80050080 C604011C */ lwc1 $f4, 0x11c($s0) -/* 050C84 80050084 C7A600B4 */ lwc1 $f6, 0xb4($sp) -/* 050C88 80050088 46044280 */ add.s $f10, $f8, $f4 -/* 050C8C 8005008C E7AA00B8 */ swc1 $f10, 0xb8($sp) -/* 050C90 80050090 C6100120 */ lwc1 $f16, 0x120($s0) -/* 050C94 80050094 00000000 */ nop -/* 050C98 80050098 46103480 */ add.s $f18, $f6, $f16 -/* 050C9C 8005009C E7B200B4 */ swc1 $f18, 0xb4($sp) -.L800500A0: -/* 050CA0 800500A0 8108D584 */ lb $t0, %lo(D_8011D584)($t0) -/* 050CA4 800500A4 C7A800B8 */ lwc1 $f8, 0xb8($sp) -/* 050CA8 800500A8 1100003C */ beqz $t0, .L8005019C -/* 050CAC 800500AC 00000000 */ nop -/* 050CB0 800500B0 C7A800B8 */ lwc1 $f8, 0xb8($sp) -/* 050CB4 800500B4 C4236630 */ lwc1 $f3, %lo(D_800E6630)($at) -/* 050CB8 800500B8 C4226634 */ lwc1 $f2, %lo(D_800E6634)($at) -/* 050CBC 800500BC 46004121 */ cvt.d.s $f4, $f8 -/* 050CC0 800500C0 46222282 */ mul.d $f10, $f4, $f2 -/* 050CC4 800500C4 C7B000B4 */ lwc1 $f16, 0xb4($sp) -/* 050CC8 800500C8 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 050CCC 800500CC 460084A1 */ cvt.d.s $f18, $f16 -/* 050CD0 800500D0 46229202 */ mul.d $f8, $f18, $f2 -/* 050CD4 800500D4 462051A0 */ cvt.s.d $f6, $f10 -/* 050CD8 800500D8 44813800 */ mtc1 $at, $f7 -/* 050CDC 800500DC E7A600B8 */ swc1 $f6, 0xb8($sp) -/* 050CE0 800500E0 44803000 */ mtc1 $zero, $f6 -/* 050CE4 800500E4 46204120 */ cvt.s.d $f4, $f8 -/* 050CE8 800500E8 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 050CEC 800500EC E7A400B4 */ swc1 $f4, 0xb4($sp) -/* 050CF0 800500F0 C60A002C */ lwc1 $f10, 0x2c($s0) -/* 050CF4 800500F4 00000000 */ nop -/* 050CF8 800500F8 46005021 */ cvt.d.s $f0, $f10 -/* 050CFC 800500FC 4626003C */ c.lt.d $f0, $f6 -/* 050D00 80050100 44805000 */ mtc1 $zero, $f10 -/* 050D04 80050104 45010008 */ bc1t .L80050128 -/* 050D08 80050108 00000000 */ nop -/* 050D0C 8005010C 44816800 */ mtc1 $at, $f13 -/* 050D10 80050110 44806000 */ mtc1 $zero, $f12 -/* 050D14 80050114 00000000 */ nop -/* 050D18 80050118 4620603C */ c.lt.d $f12, $f0 -/* 050D1C 8005011C 00000000 */ nop -/* 050D20 80050120 45000008 */ bc1f .L80050144 -/* 050D24 80050124 00000000 */ nop -.L80050128: -/* 050D28 80050128 46220402 */ mul.d $f16, $f0, $f2 -/* 050D2C 8005012C 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 050D30 80050130 44816800 */ mtc1 $at, $f13 -/* 050D34 80050134 44806000 */ mtc1 $zero, $f12 -/* 050D38 80050138 462084A0 */ cvt.s.d $f18, $f16 -/* 050D3C 8005013C 10000004 */ b .L80050150 -/* 050D40 80050140 E612002C */ swc1 $f18, 0x2c($s0) -.L80050144: -/* 050D44 80050144 44804000 */ mtc1 $zero, $f8 -/* 050D48 80050148 00000000 */ nop -/* 050D4C 8005014C E608002C */ swc1 $f8, 0x2c($s0) -.L80050150: -/* 050D50 80050150 C6040030 */ lwc1 $f4, 0x30($s0) -/* 050D54 80050154 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 050D58 80050158 44815800 */ mtc1 $at, $f11 -/* 050D5C 8005015C 46002021 */ cvt.d.s $f0, $f4 -/* 050D60 80050160 462A003C */ c.lt.d $f0, $f10 -/* 050D64 80050164 00000000 */ nop -/* 050D68 80050168 45010005 */ bc1t .L80050180 -/* 050D6C 8005016C 00000000 */ nop -/* 050D70 80050170 4620603C */ c.lt.d $f12, $f0 -/* 050D74 80050174 00000000 */ nop -/* 050D78 80050178 45000005 */ bc1f .L80050190 -/* 050D7C 8005017C 00000000 */ nop -.L80050180: -/* 050D80 80050180 46220182 */ mul.d $f6, $f0, $f2 -/* 050D84 80050184 46203420 */ cvt.s.d $f16, $f6 -/* 050D88 80050188 1000000C */ b .L800501BC -/* 050D8C 8005018C E6100030 */ swc1 $f16, 0x30($s0) -.L80050190: -/* 050D90 80050190 44809000 */ mtc1 $zero, $f18 -/* 050D94 80050194 10000009 */ b .L800501BC -/* 050D98 80050198 E6120030 */ swc1 $f18, 0x30($s0) -.L8005019C: -/* 050D9C 8005019C C6040084 */ lwc1 $f4, 0x84($s0) -/* 050DA0 800501A0 C7A600B4 */ lwc1 $f6, 0xb4($sp) -/* 050DA4 800501A4 46044280 */ add.s $f10, $f8, $f4 -/* 050DA8 800501A8 E7AA00B8 */ swc1 $f10, 0xb8($sp) -/* 050DAC 800501AC C6100088 */ lwc1 $f16, 0x88($s0) -/* 050DB0 800501B0 00000000 */ nop -/* 050DB4 800501B4 46103480 */ add.s $f18, $f6, $f16 -/* 050DB8 800501B8 E7B200B4 */ swc1 $f18, 0xb4($sp) -.L800501BC: -/* 050DBC 800501BC C7A000C4 */ lwc1 $f0, 0xc4($sp) -/* 050DC0 800501C0 C7A800B8 */ lwc1 $f8, 0xb8($sp) -/* 050DC4 800501C4 C62A0020 */ lwc1 $f10, 0x20($s1) -/* 050DC8 800501C8 46004102 */ mul.s $f4, $f8, $f0 -/* 050DCC 800501CC C7B000B4 */ lwc1 $f16, 0xb4($sp) -/* 050DD0 800501D0 02202025 */ move $a0, $s1 -/* 050DD4 800501D4 46005182 */ mul.s $f6, $f10, $f0 -/* 050DD8 800501D8 44052000 */ mfc1 $a1, $f4 -/* 050DDC 800501DC 46008482 */ mul.s $f18, $f16, $f0 -/* 050DE0 800501E0 44063000 */ mfc1 $a2, $f6 -/* 050DE4 800501E4 44079000 */ mfc1 $a3, $f18 -/* 050DE8 800501E8 0C00455C */ jal func_80011570 -/* 050DEC 800501EC 00000000 */ nop -/* 050DF0 800501F0 10400006 */ beqz $v0, .L8005020C -/* 050DF4 800501F4 3C098012 */ lui $t1, %hi(D_8011D55C) # $t1, 0x8012 -/* 050DF8 800501F8 8D29D55C */ lw $t1, %lo(D_8011D55C)($t1) -/* 050DFC 800501FC 2401FFFF */ li $at, -1 -/* 050E00 80050200 11210002 */ beq $t1, $at, .L8005020C -/* 050E04 80050204 240A0001 */ li $t2, 1 -/* 050E08 80050208 A3AA0053 */ sb $t2, 0x53($sp) -.L8005020C: -/* 050E0C 8005020C 3C028012 */ lui $v0, %hi(D_8011D55C) # $v0, 0x8012 -/* 050E10 80050210 8C42D55C */ lw $v0, %lo(D_8011D55C)($v0) -/* 050E14 80050214 10000007 */ b .L80050234 -/* 050E18 80050218 2401FFFF */ li $at, -1 -.L8005021C: -/* 050E1C 8005021C 0C0141D5 */ jal func_80050754 -/* 050E20 80050220 02002825 */ move $a1, $s0 -/* 050E24 80050224 3C028012 */ lui $v0, %hi(D_8011D55C) # $v0, 0x8012 -/* 050E28 80050228 8C42D55C */ lw $v0, %lo(D_8011D55C)($v0) -/* 050E2C 8005022C 00000000 */ nop -/* 050E30 80050230 2401FFFF */ li $at, -1 -.L80050234: -/* 050E34 80050234 14410007 */ bne $v0, $at, .L80050254 -/* 050E38 80050238 02202025 */ move $a0, $s1 -/* 050E3C 8005023C 8FA600C0 */ lw $a2, 0xc0($sp) -/* 050E40 80050240 02202025 */ move $a0, $s1 -/* 050E44 80050244 0C0156A1 */ jal func_80055A84 -/* 050E48 80050248 02002825 */ move $a1, $s0 -/* 050E4C 8005024C 10000005 */ b .L80050264 -/* 050E50 80050250 3C013F80 */ lui $at, 0x3f80 -.L80050254: -/* 050E54 80050254 8FA600C0 */ lw $a2, 0xc0($sp) -/* 050E58 80050258 0C0153F4 */ jal func_80054FD0 -/* 050E5C 8005025C 02002825 */ move $a1, $s0 -/* 050E60 80050260 3C013F80 */ li $at, 0x3F800000 # 1.000000 -.L80050264: -/* 050E64 80050264 44814000 */ mtc1 $at, $f8 -/* 050E68 80050268 C7A400C4 */ lwc1 $f4, 0xc4($sp) -/* 050E6C 8005026C C7B000A8 */ lwc1 $f16, 0xa8($sp) -/* 050E70 80050270 46044283 */ div.s $f10, $f8, $f4 -/* 050E74 80050274 3C018012 */ lui $at, %hi(D_8011D548) # $at, 0x8012 -/* 050E78 80050278 C428D548 */ lwc1 $f8, %lo(D_8011D548)($at) -/* 050E7C 8005027C 3C018012 */ lui $at, %hi(D_8011D54C) # $at, 0x8012 -/* 050E80 80050280 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 -/* 050E84 80050284 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 -/* 050E88 80050288 44800000 */ mtc1 $zero, $f0 -/* 050E8C 8005028C 27A40060 */ addiu $a0, $sp, 0x60 -/* 050E90 80050290 E7AA00BC */ swc1 $f10, 0xbc($sp) -/* 050E94 80050294 C626000C */ lwc1 $f6, 0xc($s1) -/* 050E98 80050298 00000000 */ nop -/* 050E9C 8005029C 46103481 */ sub.s $f18, $f6, $f16 -/* 050EA0 800502A0 C6100084 */ lwc1 $f16, 0x84($s0) -/* 050EA4 800502A4 46089101 */ sub.s $f4, $f18, $f8 -/* 050EA8 800502A8 460A2182 */ mul.s $f6, $f4, $f10 -/* 050EAC 800502AC C7A400A4 */ lwc1 $f4, 0xa4($sp) -/* 050EB0 800502B0 46103481 */ sub.s $f18, $f6, $f16 -/* 050EB4 800502B4 E7B200B8 */ swc1 $f18, 0xb8($sp) -/* 050EB8 800502B8 C6280010 */ lwc1 $f8, 0x10($s1) -/* 050EBC 800502BC C6320014 */ lwc1 $f18, 0x14($s1) -/* 050EC0 800502C0 46044181 */ sub.s $f6, $f8, $f4 -/* 050EC4 800502C4 460A3402 */ mul.s $f16, $f6, $f10 -/* 050EC8 800502C8 E6300020 */ swc1 $f16, 0x20($s1) -/* 050ECC 800502CC C7A800A0 */ lwc1 $f8, 0xa0($sp) -/* 050ED0 800502D0 C426D54C */ lwc1 $f6, %lo(D_8011D54C)($at) -/* 050ED4 800502D4 46089101 */ sub.s $f4, $f18, $f8 -/* 050ED8 800502D8 C7B000BC */ lwc1 $f16, 0xbc($sp) -/* 050EDC 800502DC 46062281 */ sub.s $f10, $f4, $f6 -/* 050EE0 800502E0 C6080088 */ lwc1 $f8, 0x88($s0) -/* 050EE4 800502E4 46105482 */ mul.s $f18, $f10, $f16 -/* 050EE8 800502E8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 050EEC 800502EC 44813000 */ mtc1 $at, $f6 -/* 050EF0 800502F0 46089101 */ sub.s $f4, $f18, $f8 -/* 050EF4 800502F4 E7A400B4 */ swc1 $f4, 0xb4($sp) -/* 050EF8 800502F8 8E0C010C */ lw $t4, 0x10c($s0) -/* 050EFC 800502FC 860B01A0 */ lh $t3, 0x1a0($s0) -/* 050F00 80050300 00000000 */ nop -/* 050F04 80050304 016C6821 */ addu $t5, $t3, $t4 -/* 050F08 80050308 000D7023 */ negu $t6, $t5 -/* 050F0C 8005030C A4AE0000 */ sh $t6, ($a1) -/* 050F10 80050310 862F0002 */ lh $t7, 2($s1) -/* 050F14 80050314 00000000 */ nop -/* 050F18 80050318 000FC023 */ negu $t8, $t7 -/* 050F1C 8005031C A4B80002 */ sh $t8, 2($a1) -/* 050F20 80050320 86390004 */ lh $t9, 4($s1) -/* 050F24 80050324 E4A0000C */ swc1 $f0, 0xc($a1) -/* 050F28 80050328 00194023 */ negu $t0, $t9 -/* 050F2C 8005032C A4A80004 */ sh $t0, 4($a1) -/* 050F30 80050330 E4A00010 */ swc1 $f0, 0x10($a1) -/* 050F34 80050334 E4A00014 */ swc1 $f0, 0x14($a1) -/* 050F38 80050338 0C01BF9D */ jal func_8006FE74 -/* 050F3C 8005033C E4A60008 */ swc1 $f6, 8($a1) -/* 050F40 80050340 8FA500B8 */ lw $a1, 0xb8($sp) -/* 050F44 80050344 8FA700B4 */ lw $a3, 0xb4($sp) -/* 050F48 80050348 27A900AC */ addiu $t1, $sp, 0xac -/* 050F4C 8005034C 27AA00BC */ addiu $t2, $sp, 0xbc -/* 050F50 80050350 27AB00B0 */ addiu $t3, $sp, 0xb0 -/* 050F54 80050354 AFAB0018 */ sw $t3, 0x18($sp) -/* 050F58 80050358 AFAA0014 */ sw $t2, 0x14($sp) -/* 050F5C 8005035C AFA90010 */ sw $t1, 0x10($sp) -/* 050F60 80050360 27A40060 */ addiu $a0, $sp, 0x60 -/* 050F64 80050364 0C01BD93 */ jal func_8006F64C -/* 050F68 80050368 24060000 */ li $a2, 0 -/* 050F6C 8005036C 820201D2 */ lb $v0, 0x1d2($s0) -/* 050F70 80050370 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 050F74 80050374 44816800 */ mtc1 $at, $f13 -/* 050F78 80050378 44806000 */ mtc1 $zero, $f12 -/* 050F7C 8005037C 1040000B */ beqz $v0, .L800503AC -/* 050F80 80050380 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 050F84 80050384 8FAC00C0 */ lw $t4, 0xc0($sp) -/* 050F88 80050388 00000000 */ nop -/* 050F8C 8005038C 004C6823 */ subu $t5, $v0, $t4 -/* 050F90 80050390 A20D01D2 */ sb $t5, 0x1d2($s0) -/* 050F94 80050394 820E01D2 */ lb $t6, 0x1d2($s0) -/* 050F98 80050398 00000000 */ nop -/* 050F9C 8005039C 05C10046 */ bgez $t6, .L800504B8 -/* 050FA0 800503A0 00000000 */ nop -/* 050FA4 800503A4 10000044 */ b .L800504B8 -/* 050FA8 800503A8 A20001D2 */ sb $zero, 0x1d2($s0) -.L800503AC: -/* 050FAC 800503AC C60A002C */ lwc1 $f10, 0x2c($s0) -/* 050FB0 800503B0 C7B000B0 */ lwc1 $f16, 0xb0($sp) -/* 050FB4 800503B4 44812800 */ mtc1 $at, $f5 -/* 050FB8 800503B8 46105481 */ sub.s $f18, $f10, $f16 -/* 050FBC 800503BC 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 050FC0 800503C0 E7B200BC */ swc1 $f18, 0xbc($sp) -/* 050FC4 800503C4 C7A800BC */ lwc1 $f8, 0xbc($sp) -/* 050FC8 800503C8 00000000 */ nop -/* 050FCC 800503CC 46004021 */ cvt.d.s $f0, $f8 -/* 050FD0 800503D0 4620603C */ c.lt.d $f12, $f0 -/* 050FD4 800503D4 00000000 */ nop -/* 050FD8 800503D8 4500000A */ bc1f .L80050404 -/* 050FDC 800503DC 00000000 */ nop -/* 050FE0 800503E0 C604002C */ lwc1 $f4, 0x2c($s0) -/* 050FE4 800503E4 462C0281 */ sub.d $f10, $f0, $f12 -/* 050FE8 800503E8 460021A1 */ cvt.d.s $f6, $f4 -/* 050FEC 800503EC 462A3401 */ sub.d $f16, $f6, $f10 -/* 050FF0 800503F0 462084A0 */ cvt.s.d $f18, $f16 -/* 050FF4 800503F4 E612002C */ swc1 $f18, 0x2c($s0) -/* 050FF8 800503F8 C7A800BC */ lwc1 $f8, 0xbc($sp) -/* 050FFC 800503FC 00000000 */ nop -/* 051000 80050400 46004021 */ cvt.d.s $f0, $f8 -.L80050404: -/* 051004 80050404 44802000 */ mtc1 $zero, $f4 -/* 051008 80050408 00000000 */ nop -/* 05100C 8005040C 4624003C */ c.lt.d $f0, $f4 -/* 051010 80050410 00000000 */ nop -/* 051014 80050414 45000007 */ bc1f .L80050434 -/* 051018 80050418 00000000 */ nop -/* 05101C 8005041C C606002C */ lwc1 $f6, 0x2c($s0) -/* 051020 80050420 462C0400 */ add.d $f16, $f0, $f12 -/* 051024 80050424 460032A1 */ cvt.d.s $f10, $f6 -/* 051028 80050428 46305481 */ sub.d $f18, $f10, $f16 -/* 05102C 8005042C 46209220 */ cvt.s.d $f8, $f18 -/* 051030 80050430 E608002C */ swc1 $f8, 0x2c($s0) -.L80050434: -/* 051034 80050434 C6040030 */ lwc1 $f4, 0x30($s0) -/* 051038 80050438 C7A600AC */ lwc1 $f6, 0xac($sp) -/* 05103C 8005043C 44819800 */ mtc1 $at, $f19 -/* 051040 80050440 46062281 */ sub.s $f10, $f4, $f6 -/* 051044 80050444 E7AA00BC */ swc1 $f10, 0xbc($sp) -/* 051048 80050448 C7B000BC */ lwc1 $f16, 0xbc($sp) -/* 05104C 8005044C 00000000 */ nop -/* 051050 80050450 46008021 */ cvt.d.s $f0, $f16 -/* 051054 80050454 4620603C */ c.lt.d $f12, $f0 -/* 051058 80050458 00000000 */ nop -/* 05105C 8005045C 4500000A */ bc1f .L80050488 -/* 051060 80050460 00000000 */ nop -/* 051064 80050464 C6120030 */ lwc1 $f18, 0x30($s0) -/* 051068 80050468 462C0101 */ sub.d $f4, $f0, $f12 -/* 05106C 8005046C 46009221 */ cvt.d.s $f8, $f18 -/* 051070 80050470 46244181 */ sub.d $f6, $f8, $f4 -/* 051074 80050474 462032A0 */ cvt.s.d $f10, $f6 -/* 051078 80050478 E60A0030 */ swc1 $f10, 0x30($s0) -/* 05107C 8005047C C7B000BC */ lwc1 $f16, 0xbc($sp) -/* 051080 80050480 00000000 */ nop -/* 051084 80050484 46008021 */ cvt.d.s $f0, $f16 -.L80050488: -/* 051088 80050488 44809000 */ mtc1 $zero, $f18 -/* 05108C 8005048C 00000000 */ nop -/* 051090 80050490 4632003C */ c.lt.d $f0, $f18 -/* 051094 80050494 00000000 */ nop -/* 051098 80050498 45000007 */ bc1f .L800504B8 -/* 05109C 8005049C 00000000 */ nop -/* 0510A0 800504A0 C6080030 */ lwc1 $f8, 0x30($s0) -/* 0510A4 800504A4 462C0180 */ add.d $f6, $f0, $f12 -/* 0510A8 800504A8 46004121 */ cvt.d.s $f4, $f8 -/* 0510AC 800504AC 46262281 */ sub.d $f10, $f4, $f6 -/* 0510B0 800504B0 46205420 */ cvt.s.d $f16, $f10 -/* 0510B4 800504B4 E6100030 */ swc1 $f16, 0x30($s0) -.L800504B8: -/* 0510B8 800504B8 820F01D3 */ lb $t7, 0x1d3($s0) -/* 0510BC 800504BC 3C18800E */ lui $t8, %hi(D_800DCB98) # $t8, 0x800e -/* 0510C0 800504C0 15E00043 */ bnez $t7, .L800505D0 -/* 0510C4 800504C4 00000000 */ nop -/* 0510C8 800504C8 8F18CB98 */ lw $t8, %lo(D_800DCB98)($t8) -/* 0510CC 800504CC 00000000 */ nop -/* 0510D0 800504D0 2B010002 */ slti $at, $t8, 2 -/* 0510D4 800504D4 1020003E */ beqz $at, .L800505D0 -/* 0510D8 800504D8 00000000 */ nop -/* 0510DC 800504DC 0C0078A7 */ jal func_8001E29C -/* 0510E0 800504E0 24040014 */ li $a0, 20 -/* 0510E4 800504E4 82030203 */ lb $v1, 0x203($s0) -/* 0510E8 800504E8 82190002 */ lb $t9, 2($s0) -/* 0510EC 800504EC 30690004 */ andi $t1, $v1, 4 -/* 0510F0 800504F0 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 0510F4 800504F4 00095083 */ sra $t2, $t1, 2 -/* 0510F8 800504F8 44816800 */ mtc1 $at, $f13 -/* 0510FC 800504FC 25430010 */ addiu $v1, $t2, 0x10 -/* 051100 80050500 44806000 */ mtc1 $zero, $f12 -/* 051104 80050504 28610011 */ slti $at, $v1, 0x11 -/* 051108 80050508 001941C0 */ sll $t0, $t9, 7 -/* 05110C 8005050C 14200012 */ bnez $at, .L80050558 -/* 051110 80050510 01022021 */ addu $a0, $t0, $v0 -/* 051114 80050514 908B0070 */ lbu $t3, 0x70($a0) -/* 051118 80050518 240D0001 */ li $t5, 1 -/* 05111C 8005051C 1D600009 */ bgtz $t3, .L80050544 -/* 051120 80050520 00000000 */ nop -/* 051124 80050524 C4880074 */ lwc1 $f8, 0x74($a0) -/* 051128 80050528 44809800 */ mtc1 $zero, $f19 -/* 05112C 8005052C 44809000 */ mtc1 $zero, $f18 -/* 051130 80050530 46004121 */ cvt.d.s $f4, $f8 -/* 051134 80050534 4624903C */ c.lt.d $f18, $f4 -/* 051138 80050538 00000000 */ nop -/* 05113C 8005053C 45000024 */ bc1f .L800505D0 -/* 051140 80050540 00000000 */ nop -.L80050544: -/* 051144 80050544 8E2C0074 */ lw $t4, 0x74($s1) -/* 051148 80050548 006D7004 */ sllv $t6, $t5, $v1 -/* 05114C 8005054C 018E7825 */ or $t7, $t4, $t6 -/* 051150 80050550 1000001F */ b .L800505D0 -/* 051154 80050554 AE2F0074 */ sw $t7, 0x74($s1) -.L80050558: -/* 051158 80050558 90820070 */ lbu $v0, 0x70($a0) -/* 05115C 8005055C 24010002 */ li $at, 2 -/* 051160 80050560 1441000E */ bne $v0, $at, .L8005059C -/* 051164 80050564 28410002 */ slti $at, $v0, 2 -/* 051168 80050568 C4860074 */ lwc1 $f6, 0x74($a0) -/* 05116C 8005056C 24190001 */ li $t9, 1 -/* 051170 80050570 460032A1 */ cvt.d.s $f10, $f6 -/* 051174 80050574 462C503C */ c.lt.d $f10, $f12 -/* 051178 80050578 00000000 */ nop -/* 05117C 8005057C 45000007 */ bc1f .L8005059C -/* 051180 80050580 28410002 */ slti $at, $v0, 2 -/* 051184 80050584 8E380074 */ lw $t8, 0x74($s1) -/* 051188 80050588 00794004 */ sllv $t0, $t9, $v1 -/* 05118C 8005058C 03084825 */ or $t1, $t8, $t0 -/* 051190 80050590 1000000F */ b .L800505D0 -/* 051194 80050594 AE290074 */ sw $t1, 0x74($s1) -/* 051198 80050598 28410002 */ slti $at, $v0, 2 -.L8005059C: -/* 05119C 8005059C 1020000C */ beqz $at, .L800505D0 -/* 0511A0 800505A0 00000000 */ nop -/* 0511A4 800505A4 44808000 */ mtc1 $zero, $f16 -/* 0511A8 800505A8 C4880074 */ lwc1 $f8, 0x74($a0) -/* 0511AC 800505AC 240B0001 */ li $t3, 1 -/* 0511B0 800505B0 4608803C */ c.lt.s $f16, $f8 -/* 0511B4 800505B4 00000000 */ nop -/* 0511B8 800505B8 45000005 */ bc1f .L800505D0 -/* 0511BC 800505BC 00000000 */ nop -/* 0511C0 800505C0 8E2A0074 */ lw $t2, 0x74($s1) -/* 0511C4 800505C4 006B6804 */ sllv $t5, $t3, $v1 -/* 0511C8 800505C8 014D6025 */ or $t4, $t2, $t5 -/* 0511CC 800505CC AE2C0074 */ sw $t4, 0x74($s1) -.L800505D0: -/* 0511D0 800505D0 3C0E8012 */ lui $t6, %hi(D_8011D55C) # $t6, 0x8012 -/* 0511D4 800505D4 8DCED55C */ lw $t6, %lo(D_8011D55C)($t6) -/* 0511D8 800505D8 2401FFFF */ li $at, -1 -/* 0511DC 800505DC 11C10030 */ beq $t6, $at, .L800506A0 -/* 0511E0 800505E0 3C0F800E */ lui $t7, %hi(D_800DCB98) # $t7, 0x800e -/* 0511E4 800505E4 8DEFCB98 */ lw $t7, %lo(D_800DCB98)($t7) -/* 0511E8 800505E8 00000000 */ nop -/* 0511EC 800505EC 29E10002 */ slti $at, $t7, 2 -/* 0511F0 800505F0 1020002B */ beqz $at, .L800506A0 -/* 0511F4 800505F4 3C014160 */ li $at, 0x41600000 # 14.000000 -/* 0511F8 800505F8 44819000 */ mtc1 $at, $f18 -/* 0511FC 800505FC C60000C0 */ lwc1 $f0, 0xc0($s0) -/* 051200 80050600 00002025 */ move $a0, $zero -/* 051204 80050604 4600903C */ c.lt.s $f18, $f0 -/* 051208 80050608 3C0140C0 */ lui $at, 0x40c0 -/* 05120C 8005060C 4500000A */ bc1f .L80050638 -/* 051210 80050610 00000000 */ nop -/* 051214 80050614 0C01BE53 */ jal func_8006F94C -/* 051218 80050618 24050001 */ li $a1, 1 -/* 05121C 8005061C 10400020 */ beqz $v0, .L800506A0 -/* 051220 80050620 00000000 */ nop -/* 051224 80050624 8E390074 */ lw $t9, 0x74($s1) -/* 051228 80050628 3C010030 */ li $at, 0x00300000 # 0.000000 -/* 05122C 8005062C 0321C025 */ or $t8, $t9, $at -/* 051230 80050630 1000001B */ b .L800506A0 -/* 051234 80050634 AE380074 */ sw $t8, 0x74($s1) -.L80050638: -/* 051238 80050638 44812000 */ mtc1 $at, $f4 -/* 05123C 8005063C 3C01C008 */ li $at, 0xC0080000 # -2.125000 -/* 051240 80050640 4604003C */ c.lt.s $f0, $f4 -/* 051244 80050644 00000000 */ nop -/* 051248 80050648 45000015 */ bc1f .L800506A0 -/* 05124C 8005064C 00000000 */ nop -/* 051250 80050650 C606002C */ lwc1 $f6, 0x2c($s0) -/* 051254 80050654 44815800 */ mtc1 $at, $f11 -/* 051258 80050658 44805000 */ mtc1 $zero, $f10 -/* 05125C 8005065C 46003021 */ cvt.d.s $f0, $f6 -/* 051260 80050660 4620503C */ c.lt.d $f10, $f0 -/* 051264 80050664 00000000 */ nop -/* 051268 80050668 4500000D */ bc1f .L800506A0 -/* 05126C 8005066C 00000000 */ nop -/* 051270 80050670 462C003C */ c.lt.d $f0, $f12 -/* 051274 80050674 00002025 */ move $a0, $zero -/* 051278 80050678 45000009 */ bc1f .L800506A0 -/* 05127C 8005067C 00000000 */ nop -/* 051280 80050680 0C01BE53 */ jal func_8006F94C -/* 051284 80050684 24050001 */ li $a1, 1 -/* 051288 80050688 10400005 */ beqz $v0, .L800506A0 -/* 05128C 8005068C 00000000 */ nop -/* 051290 80050690 8E280074 */ lw $t0, 0x74($s1) -/* 051294 80050694 3C01000C */ lui $at, 0xc -/* 051298 80050698 01014825 */ or $t1, $t0, $at -/* 05129C 8005069C AE290074 */ sw $t1, 0x74($s1) -.L800506A0: -/* 0512A0 800506A0 820B01D6 */ lb $t3, 0x1d6($s0) -/* 0512A4 800506A4 8FA500C0 */ lw $a1, 0xc0($sp) -/* 0512A8 800506A8 29610005 */ slti $at, $t3, 5 -/* 0512AC 800506AC 10200004 */ beqz $at, .L800506C0 -/* 0512B0 800506B0 8FA700C4 */ lw $a3, 0xc4($sp) -/* 0512B4 800506B4 0C02BDC5 */ jal func_800AF714 -/* 0512B8 800506B8 02202025 */ move $a0, $s1 -/* 0512BC 800506BC 8FA700C4 */ lw $a3, 0xc4($sp) -.L800506C0: -/* 0512C0 800506C0 02202025 */ move $a0, $s1 -/* 0512C4 800506C4 02002825 */ move $a1, $s0 -/* 0512C8 800506C8 0C01602D */ jal func_800580B4 -/* 0512CC 800506CC 00003025 */ move $a2, $zero -/* 0512D0 800506D0 3C0A800E */ lui $t2, %hi(D_800DCB98) # $t2, 0x800e -/* 0512D4 800506D4 8D4ACB98 */ lw $t2, %lo(D_800DCB98)($t2) -/* 0512D8 800506D8 24010001 */ li $at, 1 -/* 0512DC 800506DC 15410013 */ bne $t2, $at, .L8005072C -/* 0512E0 800506E0 83AC0053 */ lb $t4, 0x53($sp) -/* 0512E4 800506E4 C608002C */ lwc1 $f8, 0x2c($s0) -/* 0512E8 800506E8 3C01C008 */ li $at, 0xC0080000 # -2.125000 -/* 0512EC 800506EC 44818800 */ mtc1 $at, $f17 -/* 0512F0 800506F0 44808000 */ mtc1 $zero, $f16 -/* 0512F4 800506F4 460044A1 */ cvt.d.s $f18, $f8 -/* 0512F8 800506F8 4632803C */ c.lt.d $f16, $f18 -/* 0512FC 800506FC 00000000 */ nop -/* 051300 80050700 4500000A */ bc1f .L8005072C -/* 051304 80050704 83AC0053 */ lb $t4, 0x53($sp) -/* 051308 80050708 0C01BAA4 */ jal func_8006EA90 -/* 05130C 8005070C 00000000 */ nop -/* 051310 80050710 904D0049 */ lbu $t5, 0x49($v0) -/* 051314 80050714 24010025 */ li $at, 37 -/* 051318 80050718 11A10004 */ beq $t5, $at, .L8005072C -/* 05131C 8005071C 83AC0053 */ lb $t4, 0x53($sp) -/* 051320 80050720 0C00A3E8 */ jal func_80028FA0 -/* 051324 80050724 24040001 */ li $a0, 1 -/* 051328 80050728 83AC0053 */ lb $t4, 0x53($sp) -.L8005072C: -/* 05132C 8005072C 02202025 */ move $a0, $s1 -/* 051330 80050730 11800004 */ beqz $t4, .L80050744 -/* 051334 80050734 8FBF002C */ lw $ra, 0x2c($sp) -/* 051338 80050738 0C008C34 */ jal func_800230D0 -/* 05133C 8005073C 02002825 */ move $a1, $s0 -/* 051340 80050740 8FBF002C */ lw $ra, 0x2c($sp) -.L80050744: -/* 051344 80050744 8FB00024 */ lw $s0, 0x24($sp) -/* 051348 80050748 8FB10028 */ lw $s1, 0x28($sp) -/* 05134C 8005074C 03E00008 */ jr $ra -/* 051350 80050750 27BD00C0 */ addiu $sp, $sp, 0xc0 - -glabel func_80050754 -/* 051354 80050754 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 051358 80050758 AFBF001C */ sw $ra, 0x1c($sp) -/* 05135C 8005075C AFB00018 */ sw $s0, 0x18($sp) -/* 051360 80050760 240E0028 */ li $t6, 40 -/* 051364 80050764 A080003B */ sb $zero, 0x3b($a0) -/* 051368 80050768 A48E0018 */ sh $t6, 0x18($a0) -/* 05136C 8005076C 8CA20148 */ lw $v0, 0x148($a1) -/* 051370 80050770 C486000C */ lwc1 $f6, 0xc($a0) -/* 051374 80050774 C444000C */ lwc1 $f4, 0xc($v0) -/* 051378 80050778 C48A0010 */ lwc1 $f10, 0x10($a0) -/* 05137C 8005077C 46062001 */ sub.s $f0, $f4, $f6 -/* 051380 80050780 C4840014 */ lwc1 $f4, 0x14($a0) -/* 051384 80050784 C4480010 */ lwc1 $f8, 0x10($v0) -/* 051388 80050788 C4520014 */ lwc1 $f18, 0x14($v0) -/* 05138C 8005078C 44867000 */ mtc1 $a2, $f14 -/* 051390 80050790 460A4081 */ sub.s $f2, $f8, $f10 -/* 051394 80050794 00A08025 */ move $s0, $a1 -/* 051398 80050798 46049301 */ sub.s $f12, $f18, $f4 -/* 05139C 8005079C 44050000 */ mfc1 $a1, $f0 -/* 0513A0 800507A0 44076000 */ mfc1 $a3, $f12 -/* 0513A4 800507A4 44061000 */ mfc1 $a2, $f2 -/* 0513A8 800507A8 E7AC0024 */ swc1 $f12, 0x24($sp) -/* 0513AC 800507AC E7A20028 */ swc1 $f2, 0x28($sp) -/* 0513B0 800507B0 E7A0002C */ swc1 $f0, 0x2c($sp) -/* 0513B4 800507B4 AFA40030 */ sw $a0, 0x30($sp) -/* 0513B8 800507B8 0C00455C */ jal func_80011570 -/* 0513BC 800507BC E7AE0038 */ swc1 $f14, 0x38($sp) -/* 0513C0 800507C0 8E0F0148 */ lw $t7, 0x148($s0) -/* 0513C4 800507C4 8FA40030 */ lw $a0, 0x30($sp) -/* 0513C8 800507C8 85F80000 */ lh $t8, ($t7) -/* 0513CC 800507CC C7A0002C */ lwc1 $f0, 0x2c($sp) -/* 0513D0 800507D0 C7A20028 */ lwc1 $f2, 0x28($sp) -/* 0513D4 800507D4 C7AC0024 */ lwc1 $f12, 0x24($sp) -/* 0513D8 800507D8 C7AE0038 */ lwc1 $f14, 0x38($sp) -/* 0513DC 800507DC A4980000 */ sh $t8, ($a0) -/* 0513E0 800507E0 8E190148 */ lw $t9, 0x148($s0) -/* 0513E4 800507E4 460E0183 */ div.s $f6, $f0, $f14 -/* 0513E8 800507E8 87280002 */ lh $t0, 2($t9) -/* 0513EC 800507EC 44808000 */ mtc1 $zero, $f16 -/* 0513F0 800507F0 A4880002 */ sh $t0, 2($a0) -/* 0513F4 800507F4 8E090148 */ lw $t1, 0x148($s0) -/* 0513F8 800507F8 00000000 */ nop -/* 0513FC 800507FC 852A0004 */ lh $t2, 4($t1) -/* 051400 80050800 00000000 */ nop -/* 051404 80050804 A48A0004 */ sh $t2, 4($a0) -/* 051408 80050808 848B0004 */ lh $t3, 4($a0) -/* 05140C 8005080C 00000000 */ nop -/* 051410 80050810 A60B01A4 */ sh $t3, 0x1a4($s0) -/* 051414 80050814 460E1203 */ div.s $f8, $f2, $f14 -/* 051418 80050818 848C0000 */ lh $t4, ($a0) -/* 05141C 8005081C 00000000 */ nop -/* 051420 80050820 A60C01A0 */ sh $t4, 0x1a0($s0) -/* 051424 80050824 E486001C */ swc1 $f6, 0x1c($a0) -/* 051428 80050828 460E6283 */ div.s $f10, $f12, $f14 -/* 05142C 8005082C E4880020 */ swc1 $f8, 0x20($a0) -/* 051430 80050830 E48A0024 */ swc1 $f10, 0x24($a0) -/* 051434 80050834 A20001F2 */ sb $zero, 0x1f2($s0) -/* 051438 80050838 E610002C */ swc1 $f16, 0x2c($s0) -/* 05143C 8005083C E6100030 */ swc1 $f16, 0x30($s0) -/* 051440 80050840 8FBF001C */ lw $ra, 0x1c($sp) -/* 051444 80050844 8FB00018 */ lw $s0, 0x18($sp) -/* 051448 80050848 03E00008 */ jr $ra -/* 05144C 8005084C 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_80050850 -/* 051450 80050850 AFA60008 */ sw $a2, 8($sp) -/* 051454 80050854 AFA7000C */ sw $a3, 0xc($sp) -/* 051458 80050858 908C01F1 */ lbu $t4, 0x1f1($a0) -/* 05145C 8005085C 0007C400 */ sll $t8, $a3, 0x10 -/* 051460 80050860 0018CC03 */ sra $t9, $t8, 0x10 -/* 051464 80050864 00067400 */ sll $t6, $a2, 0x10 -/* 051468 80050868 000E7C03 */ sra $t7, $t6, 0x10 -/* 05146C 8005086C 1580006C */ bnez $t4, .L80050A20 -/* 051470 80050870 03203825 */ move $a3, $t9 -/* 051474 80050874 84830160 */ lh $v1, 0x160($a0) -/* 051478 80050878 34088001 */ li $t0, 32769 -/* 05147C 8005087C 306DFFFF */ andi $t5, $v1, 0xffff -/* 051480 80050880 01ED1023 */ subu $v0, $t7, $t5 -/* 051484 80050884 0048082A */ slt $at, $v0, $t0 -/* 051488 80050888 14200004 */ bnez $at, .L8005089C -/* 05148C 8005088C A4990166 */ sh $t9, 0x166($a0) -/* 051490 80050890 3C09FFFF */ lui $t1, (0xFFFF0001 >> 16) # lui $t1, 0xffff -/* 051494 80050894 35290001 */ ori $t1, (0xFFFF0001 & 0xFFFF) # ori $t1, $t1, 1 -/* 051498 80050898 00491021 */ addu $v0, $v0, $t1 -.L8005089C: -/* 05149C 8005089C 3C09FFFF */ lui $t1, (0xFFFF0001 >> 16) # lui $t1, 0xffff -/* 0514A0 800508A0 28418000 */ slti $at, $v0, -0x8000 -/* 0514A4 800508A4 10200003 */ beqz $at, .L800508B4 -/* 0514A8 800508A8 35290001 */ ori $t1, (0xFFFF0001 & 0xFFFF) # ori $t1, $t1, 1 -/* 0514AC 800508AC 340AFFFF */ li $t2, 65535 -/* 0514B0 800508B0 004A1021 */ addu $v0, $v0, $t2 -.L800508B4: -/* 0514B4 800508B4 1840000B */ blez $v0, .L800508E4 -/* 0514B8 800508B8 340AFFFF */ li $t2, 65535 -/* 0514BC 800508BC 240B0600 */ li $t3, 1536 -/* 0514C0 800508C0 00AB0019 */ multu $a1, $t3 -/* 0514C4 800508C4 00003012 */ mflo $a2 -/* 0514C8 800508C8 00C2082A */ slt $at, $a2, $v0 -/* 0514CC 800508CC 10200003 */ beqz $at, .L800508DC -/* 0514D0 800508D0 00627021 */ addu $t6, $v1, $v0 -/* 0514D4 800508D4 00C01025 */ move $v0, $a2 -/* 0514D8 800508D8 00627021 */ addu $t6, $v1, $v0 -.L800508DC: -/* 0514DC 800508DC 1000000C */ b .L80050910 -/* 0514E0 800508E0 A48E0160 */ sh $t6, 0x160($a0) -.L800508E4: -/* 0514E4 800508E4 0441000A */ bgez $v0, .L80050910 -/* 0514E8 800508E8 240B0600 */ li $t3, 1536 -/* 0514EC 800508EC 00AB0019 */ multu $a1, $t3 -/* 0514F0 800508F0 00003012 */ mflo $a2 -/* 0514F4 800508F4 00063023 */ negu $a2, $a2 -/* 0514F8 800508F8 0046082A */ slt $at, $v0, $a2 -/* 0514FC 800508FC 10200003 */ beqz $at, .L8005090C -/* 051500 80050900 00627821 */ addu $t7, $v1, $v0 -/* 051504 80050904 00C01025 */ move $v0, $a2 -/* 051508 80050908 00627821 */ addu $t7, $v1, $v0 -.L8005090C: -/* 05150C 8005090C A48F0160 */ sh $t7, 0x160($a0) -.L80050910: -/* 051510 80050910 84830162 */ lh $v1, 0x162($a0) -/* 051514 80050914 240B0600 */ li $t3, 1536 -/* 051518 80050918 3078FFFF */ andi $t8, $v1, 0xffff -/* 05151C 8005091C 00F81023 */ subu $v0, $a3, $t8 -/* 051520 80050920 0048082A */ slt $at, $v0, $t0 -/* 051524 80050924 14200003 */ bnez $at, .L80050934 -/* 051528 80050928 28418000 */ slti $at, $v0, -0x8000 -/* 05152C 8005092C 00491021 */ addu $v0, $v0, $t1 -/* 051530 80050930 28418000 */ slti $at, $v0, -0x8000 -.L80050934: -/* 051534 80050934 10200002 */ beqz $at, .L80050940 -/* 051538 80050938 00000000 */ nop -/* 05153C 8005093C 004A1021 */ addu $v0, $v0, $t2 -.L80050940: -/* 051540 80050940 1840000A */ blez $v0, .L8005096C -/* 051544 80050944 00000000 */ nop -/* 051548 80050948 00AB0019 */ multu $a1, $t3 -/* 05154C 8005094C 00003012 */ mflo $a2 -/* 051550 80050950 00C2082A */ slt $at, $a2, $v0 -/* 051554 80050954 10200003 */ beqz $at, .L80050964 -/* 051558 80050958 0062C821 */ addu $t9, $v1, $v0 -/* 05155C 8005095C 00C01025 */ move $v0, $a2 -/* 051560 80050960 0062C821 */ addu $t9, $v1, $v0 -.L80050964: -/* 051564 80050964 1000000C */ b .L80050998 -/* 051568 80050968 A4990162 */ sh $t9, 0x162($a0) -.L8005096C: -/* 05156C 8005096C 0441000A */ bgez $v0, .L80050998 -/* 051570 80050970 00000000 */ nop -/* 051574 80050974 00AB0019 */ multu $a1, $t3 -/* 051578 80050978 00003012 */ mflo $a2 -/* 05157C 8005097C 00063023 */ negu $a2, $a2 -/* 051580 80050980 0046082A */ slt $at, $v0, $a2 -/* 051584 80050984 10200003 */ beqz $at, .L80050994 -/* 051588 80050988 00626021 */ addu $t4, $v1, $v0 -/* 05158C 8005098C 00C01025 */ move $v0, $a2 -/* 051590 80050990 00626021 */ addu $t4, $v1, $v0 -.L80050994: -/* 051594 80050994 A48C0162 */ sh $t4, 0x162($a0) -.L80050998: -/* 051598 80050998 84830164 */ lh $v1, 0x164($a0) -/* 05159C 8005099C 87AD0012 */ lh $t5, 0x12($sp) -/* 0515A0 800509A0 306EFFFF */ andi $t6, $v1, 0xffff -/* 0515A4 800509A4 01AE1023 */ subu $v0, $t5, $t6 -/* 0515A8 800509A8 0048082A */ slt $at, $v0, $t0 -/* 0515AC 800509AC 14200003 */ bnez $at, .L800509BC -/* 0515B0 800509B0 28418000 */ slti $at, $v0, -0x8000 -/* 0515B4 800509B4 00491021 */ addu $v0, $v0, $t1 -/* 0515B8 800509B8 28418000 */ slti $at, $v0, -0x8000 -.L800509BC: -/* 0515BC 800509BC 10200002 */ beqz $at, .L800509C8 -/* 0515C0 800509C0 00000000 */ nop -/* 0515C4 800509C4 004A1021 */ addu $v0, $v0, $t2 -.L800509C8: -/* 0515C8 800509C8 1840000A */ blez $v0, .L800509F4 -/* 0515CC 800509CC 00000000 */ nop -/* 0515D0 800509D0 00AB0019 */ multu $a1, $t3 -/* 0515D4 800509D4 00003012 */ mflo $a2 -/* 0515D8 800509D8 00C2082A */ slt $at, $a2, $v0 -/* 0515DC 800509DC 10200003 */ beqz $at, .L800509EC -/* 0515E0 800509E0 00627821 */ addu $t7, $v1, $v0 -/* 0515E4 800509E4 00C01025 */ move $v0, $a2 -/* 0515E8 800509E8 00627821 */ addu $t7, $v1, $v0 -.L800509EC: -/* 0515EC 800509EC 03E00008 */ jr $ra -/* 0515F0 800509F0 A48F0164 */ sh $t7, 0x164($a0) - -.L800509F4: -/* 0515F4 800509F4 0441000A */ bgez $v0, .L80050A20 -/* 0515F8 800509F8 00000000 */ nop -/* 0515FC 800509FC 00AB0019 */ multu $a1, $t3 -/* 051600 80050A00 00003012 */ mflo $a2 -/* 051604 80050A04 00063023 */ negu $a2, $a2 -/* 051608 80050A08 0046082A */ slt $at, $v0, $a2 -/* 05160C 80050A0C 10200003 */ beqz $at, .L80050A1C -/* 051610 80050A10 0062C021 */ addu $t8, $v1, $v0 -/* 051614 80050A14 00C01025 */ move $v0, $a2 -/* 051618 80050A18 0062C021 */ addu $t8, $v1, $v0 -.L80050A1C: -/* 05161C 80050A1C A4980164 */ sh $t8, 0x164($a0) -.L80050A20: -/* 051620 80050A20 03E00008 */ jr $ra -/* 051624 80050A24 00000000 */ nop - -glabel func_80050A28 -/* 051628 80050A28 27BDFF88 */ addiu $sp, $sp, -0x78 -/* 05162C 80050A2C AFBF0024 */ sw $ra, 0x24($sp) -/* 051630 80050A30 AFB00020 */ sw $s0, 0x20($sp) -/* 051634 80050A34 AFA40078 */ sw $a0, 0x78($sp) -/* 051638 80050A38 AFA60080 */ sw $a2, 0x80($sp) -/* 05163C 80050A3C AFA70084 */ sw $a3, 0x84($sp) -/* 051640 80050A40 AFA00058 */ sw $zero, 0x58($sp) -/* 051644 80050A44 C4AC002C */ lwc1 $f12, 0x2c($a1) -/* 051648 80050A48 44807000 */ mtc1 $zero, $f14 -/* 05164C 80050A4C 460C6102 */ mul.s $f4, $f12, $f12 -/* 051650 80050A50 460E603C */ c.lt.s $f12, $f14 -/* 051654 80050A54 00803825 */ move $a3, $a0 -/* 051658 80050A58 00A08025 */ move $s0, $a1 -/* 05165C 80050A5C 45000005 */ bc1f .L80050A74 -/* 051660 80050A60 E7A40050 */ swc1 $f4, 0x50($sp) -/* 051664 80050A64 C7A60050 */ lwc1 $f6, 0x50($sp) -/* 051668 80050A68 00000000 */ nop -/* 05166C 80050A6C 46003207 */ neg.s $f8, $f6 -/* 051670 80050A70 E7A80050 */ swc1 $f8, 0x50($sp) -.L80050A74: -/* 051674 80050A74 E60E0084 */ swc1 $f14, 0x84($s0) -/* 051678 80050A78 E60E0088 */ swc1 $f14, 0x88($s0) -/* 05167C 80050A7C 3C0E8012 */ lui $t6, %hi(D_8011D586) # $t6, 0x8012 -/* 051680 80050A80 85CED586 */ lh $t6, %lo(D_8011D586)($t6) -/* 051684 80050A84 3C088012 */ lui $t0, %hi(D_8011D528) # $t0, 0x8012 -/* 051688 80050A88 15C00041 */ bnez $t6, .L80050B90 -/* 05168C 80050A8C 2508D528 */ addiu $t0, %lo(D_8011D528) # addiu $t0, $t0, -0x2ad8 -/* 051690 80050A90 820F01E7 */ lb $t7, 0x1e7($s0) -/* 051694 80050A94 3C19800E */ lui $t9, 0x800e -/* 051698 80050A98 31F8001F */ andi $t8, $t7, 0x1f -/* 05169C 80050A9C 0338C821 */ addu $t9, $t9, $t8 -/* 0516A0 80050AA0 8339CDB0 */ lb $t9, -0x3250($t9) -/* 0516A4 80050AA4 3C01800E */ lui $at, %hi(D_800E663C) # $at, 0x800e -/* 0516A8 80050AA8 44995000 */ mtc1 $t9, $f10 -/* 0516AC 80050AAC C4276638 */ lwc1 $f7, %lo(D_800E6638)($at) -/* 0516B0 80050AB0 468054A0 */ cvt.s.w $f18, $f10 -/* 0516B4 80050AB4 C426663C */ lwc1 $f6, %lo(D_800E663C)($at) -/* 0516B8 80050AB8 C60A00A0 */ lwc1 $f10, 0xa0($s0) -/* 0516BC 80050ABC 46009121 */ cvt.d.s $f4, $f18 -/* 0516C0 80050AC0 46262202 */ mul.d $f8, $f4, $f6 -/* 0516C4 80050AC4 46005487 */ neg.s $f18, $f10 -/* 0516C8 80050AC8 C60600A4 */ lwc1 $f6, 0xa4($s0) -/* 0516CC 80050ACC 46204020 */ cvt.s.d $f0, $f8 -/* 0516D0 80050AD0 46009102 */ mul.s $f4, $f18, $f0 -/* 0516D4 80050AD4 46003207 */ neg.s $f8, $f6 -/* 0516D8 80050AD8 C612009C */ lwc1 $f18, 0x9c($s0) -/* 0516DC 80050ADC 46004282 */ mul.s $f10, $f8, $f0 -/* 0516E0 80050AE0 E6040078 */ swc1 $f4, 0x78($s0) -/* 0516E4 80050AE4 46009107 */ neg.s $f4, $f18 -/* 0516E8 80050AE8 46002182 */ mul.s $f6, $f4, $f0 -/* 0516EC 80050AEC E60A007C */ swc1 $f10, 0x7c($s0) -/* 0516F0 80050AF0 E6060080 */ swc1 $f6, 0x80($s0) -/* 0516F4 80050AF4 8CE30060 */ lw $v1, 0x60($a3) -/* 0516F8 80050AF8 00000000 */ nop -/* 0516FC 80050AFC 10600022 */ beqz $v1, .L80050B88 -/* 051700 80050B00 00000000 */ nop -/* 051704 80050B04 8C6A0000 */ lw $t2, ($v1) -/* 051708 80050B08 00003025 */ move $a2, $zero -/* 05170C 80050B0C 1940001E */ blez $t2, .L80050B88 -/* 051710 80050B10 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 051714 80050B14 44811000 */ mtc1 $at, $f2 -/* 051718 80050B18 00002025 */ move $a0, $zero -.L80050B1C: -/* 05171C 80050B1C C4E80008 */ lwc1 $f8, 8($a3) -/* 051720 80050B20 C60A0078 */ lwc1 $f10, 0x78($s0) -/* 051724 80050B24 46081003 */ div.s $f0, $f2, $f8 -/* 051728 80050B28 46005487 */ neg.s $f18, $f10 -/* 05172C 80050B2C 00645821 */ addu $t3, $v1, $a0 -/* 051730 80050B30 8D620004 */ lw $v0, 4($t3) -/* 051734 80050B34 24C60001 */ addiu $a2, $a2, 1 -/* 051738 80050B38 24840004 */ addiu $a0, $a0, 4 -/* 05173C 80050B3C 46009102 */ mul.s $f4, $f18, $f0 -/* 051740 80050B40 E444000C */ swc1 $f4, 0xc($v0) -/* 051744 80050B44 C606007C */ lwc1 $f6, 0x7c($s0) -/* 051748 80050B48 00000000 */ nop -/* 05174C 80050B4C 46003207 */ neg.s $f8, $f6 -/* 051750 80050B50 46004282 */ mul.s $f10, $f8, $f0 -/* 051754 80050B54 E44A0010 */ swc1 $f10, 0x10($v0) -/* 051758 80050B58 C6120080 */ lwc1 $f18, 0x80($s0) -/* 05175C 80050B5C 00000000 */ nop -/* 051760 80050B60 46009107 */ neg.s $f4, $f18 -/* 051764 80050B64 46002182 */ mul.s $f6, $f4, $f0 -/* 051768 80050B68 E4460014 */ swc1 $f6, 0x14($v0) -/* 05176C 80050B6C 8CE30060 */ lw $v1, 0x60($a3) -/* 051770 80050B70 00000000 */ nop -/* 051774 80050B74 8C6C0000 */ lw $t4, ($v1) -/* 051778 80050B78 00000000 */ nop -/* 05177C 80050B7C 00CC082A */ slt $at, $a2, $t4 -/* 051780 80050B80 1420FFE6 */ bnez $at, .L80050B1C -/* 051784 80050B84 00000000 */ nop -.L80050B88: -/* 051788 80050B88 10000005 */ b .L80050BA0 -/* 05178C 80050B8C C60A002C */ lwc1 $f10, 0x2c($s0) -.L80050B90: -/* 051790 80050B90 E60E0078 */ swc1 $f14, 0x78($s0) -/* 051794 80050B94 E60E007C */ swc1 $f14, 0x7c($s0) -/* 051798 80050B98 E60E0080 */ swc1 $f14, 0x80($s0) -/* 05179C 80050B9C C60A002C */ lwc1 $f10, 0x2c($s0) -.L80050BA0: -/* 0517A0 80050BA0 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 0517A4 80050BA4 44814800 */ mtc1 $at, $f9 -/* 0517A8 80050BA8 44804000 */ mtc1 $zero, $f8 -/* 0517AC 80050BAC 460054A1 */ cvt.d.s $f18, $f10 -/* 0517B0 80050BB0 4632403C */ c.lt.d $f8, $f18 -/* 0517B4 80050BB4 00000000 */ nop -/* 0517B8 80050BB8 4500000A */ bc1f .L80050BE4 -/* 0517BC 80050BBC 00000000 */ nop -/* 0517C0 80050BC0 8D0D0000 */ lw $t5, ($t0) -/* 0517C4 80050BC4 240F003C */ li $t7, 60 -/* 0517C8 80050BC8 31AE8000 */ andi $t6, $t5, 0x8000 -/* 0517CC 80050BCC 11C00003 */ beqz $t6, .L80050BDC -/* 0517D0 80050BD0 00000000 */ nop -/* 0517D4 80050BD4 1000000A */ b .L80050C00 -/* 0517D8 80050BD8 A20F01FB */ sb $t7, 0x1fb($s0) -.L80050BDC: -/* 0517DC 80050BDC 10000008 */ b .L80050C00 -/* 0517E0 80050BE0 A20001FB */ sb $zero, 0x1fb($s0) -.L80050BE4: -/* 0517E4 80050BE4 3C188012 */ lui $t8, %hi(D_8011D528) # $t8, 0x8012 -/* 0517E8 80050BE8 8F18D528 */ lw $t8, %lo(D_8011D528)($t8) -/* 0517EC 80050BEC 00000000 */ nop -/* 0517F0 80050BF0 33198000 */ andi $t9, $t8, 0x8000 -/* 0517F4 80050BF4 17200002 */ bnez $t9, .L80050C00 -/* 0517F8 80050BF8 00000000 */ nop -/* 0517FC 80050BFC A20001FB */ sb $zero, 0x1fb($s0) -.L80050C00: -/* 051800 80050C00 820201FB */ lb $v0, 0x1fb($s0) -/* 051804 80050C04 3C088012 */ lui $t0, %hi(D_8011D528) # $t0, 0x8012 -/* 051808 80050C08 18400006 */ blez $v0, .L80050C24 -/* 05180C 80050C0C 2508D528 */ addiu $t0, %lo(D_8011D528) # addiu $t0, $t0, -0x2ad8 -/* 051810 80050C10 8FAA0080 */ lw $t2, 0x80($sp) -/* 051814 80050C14 00000000 */ nop -/* 051818 80050C18 004A5823 */ subu $t3, $v0, $t2 -/* 05181C 80050C1C 10000002 */ b .L80050C28 -/* 051820 80050C20 A20B01FB */ sb $t3, 0x1fb($s0) -.L80050C24: -/* 051824 80050C24 A20001FB */ sb $zero, 0x1fb($s0) -.L80050C28: -/* 051828 80050C28 AFA00060 */ sw $zero, 0x60($sp) -/* 05182C 80050C2C 3C01800E */ lui $at, %hi(D_800E6644) # $at, 0x800e -/* 051830 80050C30 C60600B8 */ lwc1 $f6, 0xb8($s0) -/* 051834 80050C34 C4256640 */ lwc1 $f5, %lo(D_800E6640)($at) -/* 051838 80050C38 C4246644 */ lwc1 $f4, %lo(D_800E6644)($at) -/* 05183C 80050C3C 460032A1 */ cvt.d.s $f10, $f6 -/* 051840 80050C40 462A203C */ c.lt.d $f4, $f10 -/* 051844 80050C44 00000000 */ nop -/* 051848 80050C48 45000048 */ bc1f .L80050D6C -/* 05184C 80050C4C 00000000 */ nop -/* 051850 80050C50 C608002C */ lwc1 $f8, 0x2c($s0) -/* 051854 80050C54 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 051858 80050C58 44813800 */ mtc1 $at, $f7 -/* 05185C 80050C5C 44803000 */ mtc1 $zero, $f6 -/* 051860 80050C60 460044A1 */ cvt.d.s $f18, $f8 -/* 051864 80050C64 4626903C */ c.lt.d $f18, $f6 -/* 051868 80050C68 00000000 */ nop -/* 05186C 80050C6C 4500000B */ bc1f .L80050C9C -/* 051870 80050C70 00000000 */ nop -/* 051874 80050C74 820C01D8 */ lb $t4, 0x1d8($s0) -/* 051878 80050C78 24050001 */ li $a1, 1 -/* 05187C 80050C7C 15800007 */ bnez $t4, .L80050C9C -/* 051880 80050C80 00000000 */ nop -/* 051884 80050C84 86040000 */ lh $a0, ($s0) -/* 051888 80050C88 0C01C8D2 */ jal func_80072348 -/* 05188C 80050C8C AFA70078 */ sw $a3, 0x78($sp) -/* 051890 80050C90 3C088012 */ lui $t0, %hi(D_8011D528) # $t0, 0x8012 -/* 051894 80050C94 8FA70078 */ lw $a3, 0x78($sp) -/* 051898 80050C98 2508D528 */ addiu $t0, %lo(D_8011D528) # addiu $t0, $t0, -0x2ad8 -.L80050C9C: -/* 05189C 80050C9C 3C0E8012 */ lui $t6, %hi(D_8011D55C) # $t6, 0x8012 -/* 0518A0 80050CA0 8DCED55C */ lw $t6, %lo(D_8011D55C)($t6) -/* 0518A4 80050CA4 240D0001 */ li $t5, 1 -/* 0518A8 80050CA8 05C0001D */ bltz $t6, .L80050D20 -/* 0518AC 80050CAC AFAD0060 */ sw $t5, 0x60($sp) -/* 0518B0 80050CB0 3C0F800E */ lui $t7, %hi(D_800DCB98) # $t7, 0x800e -/* 0518B4 80050CB4 8DEFCB98 */ lw $t7, %lo(D_800DCB98)($t7) -/* 0518B8 80050CB8 240E0001 */ li $t6, 1 -/* 0518BC 80050CBC 29E10003 */ slti $at, $t7, 3 -/* 0518C0 80050CC0 10200016 */ beqz $at, .L80050D1C -/* 0518C4 80050CC4 00000000 */ nop -/* 0518C8 80050CC8 820401E6 */ lb $a0, 0x1e6($s0) -/* 0518CC 80050CCC 00000000 */ nop -/* 0518D0 80050CD0 18800006 */ blez $a0, .L80050CEC -/* 0518D4 80050CD4 00000000 */ nop -/* 0518D8 80050CD8 8CF80074 */ lw $t8, 0x74($a3) -/* 0518DC 80050CDC 00000000 */ nop -/* 0518E0 80050CE0 37191400 */ ori $t9, $t8, 0x1400 -/* 0518E4 80050CE4 1000000E */ b .L80050D20 -/* 0518E8 80050CE8 ACF90074 */ sw $t9, 0x74($a3) -.L80050CEC: -/* 0518EC 80050CEC 04810006 */ bgez $a0, .L80050D08 -/* 0518F0 80050CF0 00000000 */ nop -/* 0518F4 80050CF4 8CEA0074 */ lw $t2, 0x74($a3) -/* 0518F8 80050CF8 00000000 */ nop -/* 0518FC 80050CFC 354B2800 */ ori $t3, $t2, 0x2800 -/* 051900 80050D00 10000007 */ b .L80050D20 -/* 051904 80050D04 ACEB0074 */ sw $t3, 0x74($a3) -.L80050D08: -/* 051908 80050D08 8CEC0074 */ lw $t4, 0x74($a3) -/* 05190C 80050D0C 00000000 */ nop -/* 051910 80050D10 358D3000 */ ori $t5, $t4, 0x3000 -/* 051914 80050D14 10000002 */ b .L80050D20 -/* 051918 80050D18 ACED0074 */ sw $t5, 0x74($a3) -.L80050D1C: -/* 05191C 80050D1C AFAE0058 */ sw $t6, 0x58($sp) -.L80050D20: -/* 051920 80050D20 820F01E7 */ lb $t7, 0x1e7($s0) -/* 051924 80050D24 2404FFE7 */ li $a0, -25 -/* 051928 80050D28 31F80007 */ andi $t8, $t7, 7 -/* 05192C 80050D2C 2B010002 */ slti $at, $t8, 2 -/* 051930 80050D30 10200007 */ beqz $at, .L80050D50 -/* 051934 80050D34 24050019 */ li $a1, 25 -/* 051938 80050D38 0C01BE53 */ jal func_8006F94C -/* 05193C 80050D3C AFA70078 */ sw $a3, 0x78($sp) -/* 051940 80050D40 A20201D1 */ sb $v0, 0x1d1($s0) -/* 051944 80050D44 3C088012 */ lui $t0, %hi(D_8011D528) # $t0, 0x8012 -/* 051948 80050D48 8FA70078 */ lw $a3, 0x78($sp) -/* 05194C 80050D4C 2508D528 */ addiu $t0, %lo(D_8011D528) # addiu $t0, $t0, -0x2ad8 -.L80050D50: -/* 051950 80050D50 3C098012 */ lui $t1, %hi(D_8011D534) # $t1, 0x8012 -/* 051954 80050D54 2529D534 */ addiu $t1, %lo(D_8011D534) # addiu $t1, $t1, -0x2acc -/* 051958 80050D58 8D390000 */ lw $t9, ($t1) -/* 05195C 80050D5C 820A01D1 */ lb $t2, 0x1d1($s0) -/* 051960 80050D60 00000000 */ nop -/* 051964 80050D64 032A5821 */ addu $t3, $t9, $t2 -/* 051968 80050D68 AD2B0000 */ sw $t3, ($t1) -.L80050D6C: -/* 05196C 80050D6C 820401FA */ lb $a0, 0x1fa($s0) -/* 051970 80050D70 3C098012 */ lui $t1, %hi(D_8011D534) # $t1, 0x8012 -/* 051974 80050D74 14800020 */ bnez $a0, .L80050DF8 -/* 051978 80050D78 2529D534 */ addiu $t1, %lo(D_8011D534) # addiu $t1, $t1, -0x2acc -/* 05197C 80050D7C C60A002C */ lwc1 $f10, 0x2c($s0) -/* 051980 80050D80 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 051984 80050D84 44812800 */ mtc1 $at, $f5 -/* 051988 80050D88 44802000 */ mtc1 $zero, $f4 -/* 05198C 80050D8C 46005221 */ cvt.d.s $f8, $f10 -/* 051990 80050D90 4628203C */ c.lt.d $f4, $f8 -/* 051994 80050D94 00000000 */ nop -/* 051998 80050D98 45000017 */ bc1f .L80050DF8 -/* 05199C 80050D9C 00000000 */ nop -/* 0519A0 80050DA0 8D0C0000 */ lw $t4, ($t0) -/* 0519A4 80050DA4 00000000 */ nop -/* 0519A8 80050DA8 318D0010 */ andi $t5, $t4, 0x10 -/* 0519AC 80050DAC 11A00012 */ beqz $t5, .L80050DF8 -/* 0519B0 80050DB0 00000000 */ nop -/* 0519B4 80050DB4 8D220000 */ lw $v0, ($t1) -/* 0519B8 80050DB8 00000000 */ nop -/* 0519BC 80050DBC 28410033 */ slti $at, $v0, 0x33 -/* 0519C0 80050DC0 10200003 */ beqz $at, .L80050DD0 -/* 0519C4 80050DC4 2841FFCE */ slti $at, $v0, -0x32 -/* 0519C8 80050DC8 1020000B */ beqz $at, .L80050DF8 -/* 0519CC 80050DCC 00000000 */ nop -.L80050DD0: -/* 0519D0 80050DD0 18400006 */ blez $v0, .L80050DEC -/* 0519D4 80050DD4 240FFFFF */ li $t7, -1 -/* 0519D8 80050DD8 240E0001 */ li $t6, 1 -/* 0519DC 80050DDC A20E01FA */ sb $t6, 0x1fa($s0) -/* 0519E0 80050DE0 820401FA */ lb $a0, 0x1fa($s0) -/* 0519E4 80050DE4 10000004 */ b .L80050DF8 -/* 0519E8 80050DE8 00000000 */ nop -.L80050DEC: -/* 0519EC 80050DEC A20F01FA */ sb $t7, 0x1fa($s0) -/* 0519F0 80050DF0 820401FA */ lb $a0, 0x1fa($s0) -/* 0519F4 80050DF4 00000000 */ nop -.L80050DF8: -/* 0519F8 80050DF8 10800043 */ beqz $a0, .L80050F08 -/* 0519FC 80050DFC 02002825 */ move $a1, $s0 -/* 051A00 80050E00 8D180000 */ lw $t8, ($t0) -/* 051A04 80050E04 3C01FFFF */ lui $at, (0xFFFF7FFF >> 16) # lui $at, 0xffff -/* 051A08 80050E08 34217FFF */ ori $at, (0xFFFF7FFF & 0xFFFF) # ori $at, $at, 0x7fff -/* 051A0C 80050E0C 0301C824 */ and $t9, $t8, $at -/* 051A10 80050E10 AD190000 */ sw $t9, ($t0) -/* 051A14 80050E14 372B4000 */ ori $t3, $t9, 0x4000 -/* 051A18 80050E18 AD0B0000 */ sw $t3, ($t0) -/* 051A1C 80050E1C 3C0E800E */ lui $t6, %hi(D_800DCB98) # $t6, 0x800e -/* 051A20 80050E20 8DCECB98 */ lw $t6, %lo(D_800DCB98)($t6) -/* 051A24 80050E24 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 -/* 051A28 80050E28 240CFFBA */ li $t4, -70 -/* 051A2C 80050E2C AC2CD538 */ sw $t4, %lo(D_8011D538)($at) -/* 051A30 80050E30 240D0001 */ li $t5, 1 -/* 051A34 80050E34 29C10003 */ slti $at, $t6, 3 -/* 051A38 80050E38 10200006 */ beqz $at, .L80050E54 -/* 051A3C 80050E3C AFAD0060 */ sw $t5, 0x60($sp) -/* 051A40 80050E40 8CEF0074 */ lw $t7, 0x74($a3) -/* 051A44 80050E44 00000000 */ nop -/* 051A48 80050E48 35F83C00 */ ori $t8, $t7, 0x3c00 -/* 051A4C 80050E4C 10000003 */ b .L80050E5C -/* 051A50 80050E50 ACF80074 */ sw $t8, 0x74($a3) -.L80050E54: -/* 051A54 80050E54 24190001 */ li $t9, 1 -/* 051A58 80050E58 AFB90058 */ sw $t9, 0x58($sp) -.L80050E5C: -/* 051A5C 80050E5C 8FAA0080 */ lw $t2, 0x80($sp) -/* 051A60 80050E60 820401FA */ lb $a0, 0x1fa($s0) -/* 051A64 80050E64 000A5880 */ sll $t3, $t2, 2 -/* 051A68 80050E68 016A5823 */ subu $t3, $t3, $t2 -/* 051A6C 80050E6C 000B5A40 */ sll $t3, $t3, 9 -/* 051A70 80050E70 01640019 */ multu $t3, $a0 -/* 051A74 80050E74 860301A2 */ lh $v1, 0x1a2($s0) -/* 051A78 80050E78 00000000 */ nop -/* 051A7C 80050E7C 00603025 */ move $a2, $v1 -/* 051A80 80050E80 00006012 */ mflo $t4 -/* 051A84 80050E84 006C6821 */ addu $t5, $v1, $t4 -/* 051A88 80050E88 1880000B */ blez $a0, .L80050EB8 -/* 051A8C 80050E8C A60D01A2 */ sh $t5, 0x1a2($s0) -/* 051A90 80050E90 860E01A2 */ lh $t6, 0x1a2($s0) -/* 051A94 80050E94 00000000 */ nop -/* 051A98 80050E98 05C10010 */ bgez $t6, .L80050EDC -/* 051A9C 80050E9C 00000000 */ nop -/* 051AA0 80050EA0 0460000E */ bltz $v1, .L80050EDC -/* 051AA4 80050EA4 240F7FFF */ li $t7, 32767 -/* 051AA8 80050EA8 A20001FA */ sb $zero, 0x1fa($s0) -/* 051AAC 80050EAC 820401FA */ lb $a0, 0x1fa($s0) -/* 051AB0 80050EB0 1000000A */ b .L80050EDC -/* 051AB4 80050EB4 A60F01A2 */ sh $t7, 0x1a2($s0) -.L80050EB8: -/* 051AB8 80050EB8 861801A2 */ lh $t8, 0x1a2($s0) -/* 051ABC 80050EBC 00000000 */ nop -/* 051AC0 80050EC0 1B000006 */ blez $t8, .L80050EDC -/* 051AC4 80050EC4 00000000 */ nop -/* 051AC8 80050EC8 1CC00004 */ bgtz $a2, .L80050EDC -/* 051ACC 80050ECC 24198000 */ li $t9, -32768 -/* 051AD0 80050ED0 A20001FA */ sb $zero, 0x1fa($s0) -/* 051AD4 80050ED4 820401FA */ lb $a0, 0x1fa($s0) -/* 051AD8 80050ED8 A61901A2 */ sh $t9, 0x1a2($s0) -.L80050EDC: -/* 051ADC 80050EDC 1480000A */ bnez $a0, .L80050F08 -/* 051AE0 80050EE0 00000000 */ nop -/* 051AE4 80050EE4 860301A2 */ lh $v1, 0x1a2($s0) -/* 051AE8 80050EE8 860A01A0 */ lh $t2, 0x1a0($s0) -/* 051AEC 80050EEC C612002C */ lwc1 $f18, 0x2c($s0) -/* 051AF0 80050EF0 01435821 */ addu $t3, $t2, $v1 -/* 051AF4 80050EF4 46009187 */ neg.s $f6, $f18 -/* 051AF8 80050EF8 A60B01A0 */ sh $t3, 0x1a0($s0) -/* 051AFC 80050EFC A60001A2 */ sh $zero, 0x1a2($s0) -/* 051B00 80050F00 E606002C */ swc1 $f6, 0x2c($s0) -/* 051B04 80050F04 A603019E */ sh $v1, 0x19e($s0) -.L80050F08: -/* 051B08 80050F08 820401E6 */ lb $a0, 0x1e6($s0) -/* 051B0C 80050F0C 44809000 */ mtc1 $zero, $f18 -/* 051B10 80050F10 10800019 */ beqz $a0, .L80050F78 -/* 051B14 80050F14 3C0C8012 */ lui $t4, %hi(D_8011D55C) # $t4, 0x8012 -/* 051B18 80050F18 8D8CD55C */ lw $t4, %lo(D_8011D55C)($t4) -/* 051B1C 80050F1C 3C0D800E */ lui $t5, %hi(D_800DCB98) # $t5, 0x800e -/* 051B20 80050F20 05800015 */ bltz $t4, .L80050F78 -/* 051B24 80050F24 00000000 */ nop -/* 051B28 80050F28 8DADCB98 */ lw $t5, %lo(D_800DCB98)($t5) -/* 051B2C 80050F2C 240A0001 */ li $t2, 1 -/* 051B30 80050F30 29A10003 */ slti $at, $t5, 3 -/* 051B34 80050F34 1020000F */ beqz $at, .L80050F74 -/* 051B38 80050F38 00000000 */ nop -/* 051B3C 80050F3C 18800006 */ blez $a0, .L80050F58 -/* 051B40 80050F40 00000000 */ nop -/* 051B44 80050F44 8CEE0074 */ lw $t6, 0x74($a3) -/* 051B48 80050F48 00000000 */ nop -/* 051B4C 80050F4C 35CF1400 */ ori $t7, $t6, 0x1400 -/* 051B50 80050F50 10000005 */ b .L80050F68 -/* 051B54 80050F54 ACEF0074 */ sw $t7, 0x74($a3) -.L80050F58: -/* 051B58 80050F58 8CF80074 */ lw $t8, 0x74($a3) -/* 051B5C 80050F5C 00000000 */ nop -/* 051B60 80050F60 37192800 */ ori $t9, $t8, 0x2800 -/* 051B64 80050F64 ACF90074 */ sw $t9, 0x74($a3) -.L80050F68: -/* 051B68 80050F68 820401E6 */ lb $a0, 0x1e6($s0) -/* 051B6C 80050F6C 10000002 */ b .L80050F78 -/* 051B70 80050F70 00000000 */ nop -.L80050F74: -/* 051B74 80050F74 AFAA0058 */ sw $t2, 0x58($sp) -.L80050F78: -/* 051B78 80050F78 1480001D */ bnez $a0, .L80050FF0 -/* 051B7C 80050F7C 00000000 */ nop -/* 051B80 80050F80 8D0B0000 */ lw $t3, ($t0) -/* 051B84 80050F84 3C01C008 */ li $at, 0xC0080000 # -2.125000 -/* 051B88 80050F88 316C0010 */ andi $t4, $t3, 0x10 -/* 051B8C 80050F8C 11800018 */ beqz $t4, .L80050FF0 -/* 051B90 80050F90 00000000 */ nop -/* 051B94 80050F94 C60A002C */ lwc1 $f10, 0x2c($s0) -/* 051B98 80050F98 44814800 */ mtc1 $at, $f9 -/* 051B9C 80050F9C 44804000 */ mtc1 $zero, $f8 -/* 051BA0 80050FA0 46005121 */ cvt.d.s $f4, $f10 -/* 051BA4 80050FA4 4628203C */ c.lt.d $f4, $f8 -/* 051BA8 80050FA8 00000000 */ nop -/* 051BAC 80050FAC 45000010 */ bc1f .L80050FF0 -/* 051BB0 80050FB0 00000000 */ nop -/* 051BB4 80050FB4 8D220000 */ lw $v0, ($t1) -/* 051BB8 80050FB8 00000000 */ nop -/* 051BBC 80050FBC 28410010 */ slti $at, $v0, 0x10 -/* 051BC0 80050FC0 10200003 */ beqz $at, .L80050FD0 -/* 051BC4 80050FC4 2841FFF1 */ slti $at, $v0, -0xf -/* 051BC8 80050FC8 10200009 */ beqz $at, .L80050FF0 -/* 051BCC 80050FCC 00000000 */ nop -.L80050FD0: -/* 051BD0 80050FD0 04410004 */ bgez $v0, .L80050FE4 -/* 051BD4 80050FD4 240DFFFF */ li $t5, -1 -/* 051BD8 80050FD8 A20D01E6 */ sb $t5, 0x1e6($s0) -/* 051BDC 80050FDC 8D220000 */ lw $v0, ($t1) -/* 051BE0 80050FE0 00000000 */ nop -.L80050FE4: -/* 051BE4 80050FE4 18400002 */ blez $v0, .L80050FF0 -/* 051BE8 80050FE8 240E0001 */ li $t6, 1 -/* 051BEC 80050FEC A20E01E6 */ sb $t6, 0x1e6($s0) -.L80050FF0: -/* 051BF0 80050FF0 C606002C */ lwc1 $f6, 0x2c($s0) -/* 051BF4 80050FF4 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 051BF8 80050FF8 44819800 */ mtc1 $at, $f19 -/* 051BFC 80050FFC 460032A1 */ cvt.d.s $f10, $f6 -/* 051C00 80051000 462A903C */ c.lt.d $f18, $f10 -/* 051C04 80051004 00E02025 */ move $a0, $a3 -/* 051C08 80051008 45000002 */ bc1f .L80051014 -/* 051C0C 8005100C 00000000 */ nop -/* 051C10 80051010 A20001E6 */ sb $zero, 0x1e6($s0) -.L80051014: -/* 051C14 80051014 0C015C88 */ jal func_80057220 -/* 051C18 80051018 AFA70078 */ sw $a3, 0x78($sp) -/* 051C1C 8005101C 3C0F8012 */ lui $t7, %hi(D_8011D528) # $t7, 0x8012 -/* 051C20 80051020 8DEFD528 */ lw $t7, %lo(D_8011D528)($t7) -/* 051C24 80051024 E7A00034 */ swc1 $f0, 0x34($sp) -/* 051C28 80051028 31F80010 */ andi $t8, $t7, 0x10 -/* 051C2C 8005102C 13000019 */ beqz $t8, .L80051094 -/* 051C30 80051030 00000000 */ nop -/* 051C34 80051034 820401E6 */ lb $a0, 0x1e6($s0) -/* 051C38 80051038 3C01800E */ lui $at, %hi(D_800E664C) # $at, 0x800e -/* 051C3C 8005103C 10800015 */ beqz $a0, .L80051094 -/* 051C40 80051040 3C198012 */ lui $t9, %hi(D_8011D534) # $t9, 0x8012 -/* 051C44 80051044 C4296648 */ lwc1 $f9, %lo(D_800E6648)($at) -/* 051C48 80051048 C428664C */ lwc1 $f8, %lo(D_800E664C)($at) -/* 051C4C 8005104C 46000121 */ cvt.d.s $f4, $f0 -/* 051C50 80051050 46282182 */ mul.d $f6, $f4, $f8 -/* 051C54 80051054 8F39D534 */ lw $t9, %lo(D_8011D534)($t9) -/* 051C58 80051058 00045900 */ sll $t3, $a0, 4 -/* 051C5C 8005105C 01645823 */ subu $t3, $t3, $a0 -/* 051C60 80051060 000B5840 */ sll $t3, $t3, 1 -/* 051C64 80051064 00195043 */ sra $t2, $t9, 1 -/* 051C68 80051068 014B1021 */ addu $v0, $t2, $t3 -/* 051C6C 8005106C 462034A0 */ cvt.s.d $f18, $f6 -/* 051C70 80051070 2841004C */ slti $at, $v0, 0x4c -/* 051C74 80051074 14200002 */ bnez $at, .L80051080 -/* 051C78 80051078 E7B20034 */ swc1 $f18, 0x34($sp) -/* 051C7C 8005107C 2402004B */ li $v0, 75 -.L80051080: -/* 051C80 80051080 2841FFB5 */ slti $at, $v0, -0x4b -/* 051C84 80051084 10200006 */ beqz $at, .L800510A0 -/* 051C88 80051088 00000000 */ nop -/* 051C8C 8005108C 10000005 */ b .L800510A4 -/* 051C90 80051090 8E02010C */ lw $v0, 0x10c($s0) -.L80051094: -/* 051C94 80051094 A20001E6 */ sb $zero, 0x1e6($s0) -/* 051C98 80051098 820401E6 */ lb $a0, 0x1e6($s0) -/* 051C9C 8005109C 00000000 */ nop -.L800510A0: -/* 051CA0 800510A0 8E02010C */ lw $v0, 0x10c($s0) -.L800510A4: -/* 051CA4 800510A4 8FAE0080 */ lw $t6, 0x80($sp) -/* 051CA8 800510A8 00046340 */ sll $t4, $a0, 0xd -/* 051CAC 800510AC 004C6823 */ subu $t5, $v0, $t4 -/* 051CB0 800510B0 01AE0019 */ multu $t5, $t6 -/* 051CB4 800510B4 860301A2 */ lh $v1, 0x1a2($s0) -/* 051CB8 800510B8 00000000 */ nop -/* 051CBC 800510BC 28611801 */ slti $at, $v1, 0x1801 -/* 051CC0 800510C0 00007812 */ mflo $t7 -/* 051CC4 800510C4 000FC103 */ sra $t8, $t7, 4 -/* 051CC8 800510C8 0058C823 */ subu $t9, $v0, $t8 -/* 051CCC 800510CC 1020000D */ beqz $at, .L80051104 -/* 051CD0 800510D0 AE19010C */ sw $t9, 0x10c($s0) -/* 051CD4 800510D4 2861E800 */ slti $at, $v1, -0x1800 -/* 051CD8 800510D8 1420000B */ bnez $at, .L80051108 -/* 051CDC 800510DC 240C0001 */ li $t4, 1 -/* 051CE0 800510E0 14800009 */ bnez $a0, .L80051108 -/* 051CE4 800510E4 240C0001 */ li $t4, 1 -/* 051CE8 800510E8 820A01FA */ lb $t2, 0x1fa($s0) -/* 051CEC 800510EC 00000000 */ nop -/* 051CF0 800510F0 15400005 */ bnez $t2, .L80051108 -/* 051CF4 800510F4 240C0001 */ li $t4, 1 -/* 051CF8 800510F8 820B01FB */ lb $t3, 0x1fb($s0) -/* 051CFC 800510FC 00000000 */ nop -/* 051D00 80051100 1160004A */ beqz $t3, .L8005122C -.L80051104: -/* 051D04 80051104 240C0001 */ li $t4, 1 -.L80051108: -/* 051D08 80051108 AFAC0060 */ sw $t4, 0x60($sp) -/* 051D0C 8005110C 820D01FB */ lb $t5, 0x1fb($s0) -/* 051D10 80051110 00000000 */ nop -/* 051D14 80051114 11A0000A */ beqz $t5, .L80051140 -/* 051D18 80051118 00000000 */ nop -/* 051D1C 8005111C 820E01D8 */ lb $t6, 0x1d8($s0) -/* 051D20 80051120 00000000 */ nop -/* 051D24 80051124 15C00006 */ bnez $t6, .L80051140 -/* 051D28 80051128 00000000 */ nop -/* 051D2C 8005112C 86040000 */ lh $a0, ($s0) -/* 051D30 80051130 0C01C8D2 */ jal func_80072348 -/* 051D34 80051134 00002825 */ move $a1, $zero -/* 051D38 80051138 860301A2 */ lh $v1, 0x1a2($s0) -/* 051D3C 8005113C 00000000 */ nop -.L80051140: -/* 051D40 80051140 04610009 */ bgez $v1, .L80051168 -/* 051D44 80051144 8FA80078 */ lw $t0, 0x78($sp) -/* 051D48 80051148 8FA80078 */ lw $t0, 0x78($sp) -/* 051D4C 8005114C 00000000 */ nop -/* 051D50 80051150 8D0F0074 */ lw $t7, 0x74($t0) -/* 051D54 80051154 00000000 */ nop -/* 051D58 80051158 35F81400 */ ori $t8, $t7, 0x1400 -/* 051D5C 8005115C 10000007 */ b .L8005117C -/* 051D60 80051160 AD180074 */ sw $t8, 0x74($t0) -/* 051D64 80051164 8FA80078 */ lw $t0, 0x78($sp) -.L80051168: -/* 051D68 80051168 00000000 */ nop -/* 051D6C 8005116C 8D0A0074 */ lw $t2, 0x74($t0) -/* 051D70 80051170 00000000 */ nop -/* 051D74 80051174 354B2800 */ ori $t3, $t2, 0x2800 -/* 051D78 80051178 AD0B0074 */ sw $t3, 0x74($t0) -.L8005117C: -/* 051D7C 8005117C 820C01E6 */ lb $t4, 0x1e6($s0) -/* 051D80 80051180 00000000 */ nop -/* 051D84 80051184 15800009 */ bnez $t4, .L800511AC -/* 051D88 80051188 00000000 */ nop -/* 051D8C 8005118C 820D01FA */ lb $t5, 0x1fa($s0) -/* 051D90 80051190 00000000 */ nop -/* 051D94 80051194 15A00005 */ bnez $t5, .L800511AC -/* 051D98 80051198 00000000 */ nop -/* 051D9C 8005119C 820E01FB */ lb $t6, 0x1fb($s0) -/* 051DA0 800511A0 00000000 */ nop -/* 051DA4 800511A4 11C00019 */ beqz $t6, .L8005120C -/* 051DA8 800511A8 00000000 */ nop -.L800511AC: -/* 051DAC 800511AC 8E020010 */ lw $v0, 0x10($s0) -/* 051DB0 800511B0 24040001 */ li $a0, 1 -/* 051DB4 800511B4 14400008 */ bnez $v0, .L800511D8 -/* 051DB8 800511B8 260F0010 */ addiu $t7, $s0, 0x10 -/* 051DBC 800511BC 8D05000C */ lw $a1, 0xc($t0) -/* 051DC0 800511C0 8D060010 */ lw $a2, 0x10($t0) -/* 051DC4 800511C4 8D070014 */ lw $a3, 0x14($t0) -/* 051DC8 800511C8 0C0007AA */ jal func_80001EA8 -/* 051DCC 800511CC AFAF0010 */ sw $t7, 0x10($sp) -/* 051DD0 800511D0 10000007 */ b .L800511F0 -/* 051DD4 800511D4 8E020014 */ lw $v0, 0x14($s0) -.L800511D8: -/* 051DD8 800511D8 8D05000C */ lw $a1, 0xc($t0) -/* 051DDC 800511DC 8D060010 */ lw $a2, 0x10($t0) -/* 051DE0 800511E0 8D070014 */ lw $a3, 0x14($t0) -/* 051DE4 800511E4 0C0026DF */ jal func_80009B7C -/* 051DE8 800511E8 00402025 */ move $a0, $v0 -/* 051DEC 800511EC 8E020014 */ lw $v0, 0x14($s0) -.L800511F0: -/* 051DF0 800511F0 00000000 */ nop -/* 051DF4 800511F4 10400003 */ beqz $v0, .L80051204 -/* 051DF8 800511F8 00000000 */ nop -/* 051DFC 800511FC 0C001223 */ jal func_8000488C -/* 051E00 80051200 00402025 */ move $a0, $v0 -.L80051204: -/* 051E04 80051204 10000015 */ b .L8005125C -/* 051E08 80051208 00000000 */ nop -.L8005120C: -/* 051E0C 8005120C 8E020010 */ lw $v0, 0x10($s0) -/* 051E10 80051210 00000000 */ nop -/* 051E14 80051214 10400011 */ beqz $v0, .L8005125C -/* 051E18 80051218 00000000 */ nop -/* 051E1C 8005121C 0C001223 */ jal func_8000488C -/* 051E20 80051220 00402025 */ move $a0, $v0 -/* 051E24 80051224 1000000D */ b .L8005125C -/* 051E28 80051228 00000000 */ nop -.L8005122C: -/* 051E2C 8005122C 8E020010 */ lw $v0, 0x10($s0) -/* 051E30 80051230 00000000 */ nop -/* 051E34 80051234 10400003 */ beqz $v0, .L80051244 -/* 051E38 80051238 00000000 */ nop -/* 051E3C 8005123C 0C001223 */ jal func_8000488C -/* 051E40 80051240 00402025 */ move $a0, $v0 -.L80051244: -/* 051E44 80051244 8E020014 */ lw $v0, 0x14($s0) -/* 051E48 80051248 00000000 */ nop -/* 051E4C 8005124C 10400003 */ beqz $v0, .L8005125C -/* 051E50 80051250 00000000 */ nop -/* 051E54 80051254 0C001223 */ jal func_8000488C -/* 051E58 80051258 00402025 */ move $a0, $v0 -.L8005125C: -/* 051E5C 8005125C 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 -/* 051E60 80051260 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) -/* 051E64 80051264 820301E1 */ lb $v1, 0x1e1($s0) -/* 051E68 80051268 30584000 */ andi $t8, $v0, 0x4000 -/* 051E6C 8005126C 24060006 */ li $a2, 6 -/* 051E70 80051270 13000002 */ beqz $t8, .L8005127C -/* 051E74 80051274 03001025 */ move $v0, $t8 -/* 051E78 80051278 2406000C */ li $a2, 12 -.L8005127C: -/* 051E7C 8005127C 10400006 */ beqz $v0, .L80051298 -/* 051E80 80051280 3C01800E */ lui $at, %hi(D_800E6654) # $at, 0x800e -/* 051E84 80051284 820A01E6 */ lb $t2, 0x1e6($s0) -/* 051E88 80051288 00000000 */ nop -/* 051E8C 8005128C 11400002 */ beqz $t2, .L80051298 -/* 051E90 80051290 00000000 */ nop -/* 051E94 80051294 24060012 */ li $a2, 18 -.L80051298: -/* 051E98 80051298 C60A002C */ lwc1 $f10, 0x2c($s0) -/* 051E9C 8005129C C4256650 */ lwc1 $f5, %lo(D_800E6650)($at) -/* 051EA0 800512A0 C4246654 */ lwc1 $f4, %lo(D_800E6654)($at) -/* 051EA4 800512A4 460050A1 */ cvt.d.s $f2, $f10 -/* 051EA8 800512A8 4624103C */ c.lt.d $f2, $f4 -/* 051EAC 800512AC 00001025 */ move $v0, $zero -/* 051EB0 800512B0 45000005 */ bc1f .L800512C8 -/* 051EB4 800512B4 3C01800E */ lui $at, %hi(D_800E665C) # $at, 0x800e -/* 051EB8 800512B8 00660019 */ multu $v1, $a2 -/* 051EBC 800512BC 00001012 */ mflo $v0 -/* 051EC0 800512C0 00000000 */ nop -/* 051EC4 800512C4 00000000 */ nop -.L800512C8: -/* 051EC8 800512C8 C4296658 */ lwc1 $f9, %lo(D_800E6658)($at) -/* 051ECC 800512CC C428665C */ lwc1 $f8, %lo(D_800E665C)($at) -/* 051ED0 800512D0 8FB90080 */ lw $t9, 0x80($sp) -/* 051ED4 800512D4 4622403C */ c.lt.d $f8, $f2 -/* 051ED8 800512D8 00000000 */ nop -/* 051EDC 800512DC 45000005 */ bc1f .L800512F4 -/* 051EE0 800512E0 00035823 */ negu $t3, $v1 -/* 051EE4 800512E4 01660019 */ multu $t3, $a2 -/* 051EE8 800512E8 00001012 */ mflo $v0 -/* 051EEC 800512EC 00000000 */ nop -/* 051EF0 800512F0 00000000 */ nop -.L800512F4: -/* 051EF4 800512F4 00590019 */ multu $v0, $t9 -/* 051EF8 800512F8 3C018012 */ lui $at, %hi(D_8011D570) # $at, 0x8012 -/* 051EFC 800512FC C42AD570 */ lwc1 $f10, %lo(D_8011D570)($at) -/* 051F00 80051300 860E01A0 */ lh $t6, 0x1a0($s0) -/* 051F04 80051304 02002025 */ move $a0, $s0 -/* 051F08 80051308 00001012 */ mflo $v0 -/* 051F0C 8005130C 00026043 */ sra $t4, $v0, 1 -/* 051F10 80051310 448C3000 */ mtc1 $t4, $f6 -/* 051F14 80051314 00000000 */ nop -/* 051F18 80051318 468034A0 */ cvt.s.w $f18, $f6 -/* 051F1C 8005131C 460A9102 */ mul.s $f4, $f18, $f10 -/* 051F20 80051320 444DF800 */ cfc1 $t5, $31 -/* 051F24 80051324 00000000 */ nop -/* 051F28 80051328 35A10003 */ ori $at, $t5, 3 -/* 051F2C 8005132C 38210002 */ xori $at, $at, 2 -/* 051F30 80051330 44C1F800 */ ctc1 $at, $31 -/* 051F34 80051334 00000000 */ nop -/* 051F38 80051338 46002224 */ cvt.w.s $f8, $f4 -/* 051F3C 8005133C 440F4000 */ mfc1 $t7, $f8 -/* 051F40 80051340 44CDF800 */ ctc1 $t5, $31 -/* 051F44 80051344 01CFC023 */ subu $t8, $t6, $t7 -/* 051F48 80051348 0C014D1E */ jal func_80053478 -/* 051F4C 8005134C A61801A0 */ sh $t8, 0x1a0($s0) -/* 051F50 80051350 C606002C */ lwc1 $f6, 0x2c($s0) -/* 051F54 80051354 3C01C010 */ li $at, 0xC0100000 # -2.250000 -/* 051F58 80051358 44815800 */ mtc1 $at, $f11 -/* 051F5C 8005135C 44805000 */ mtc1 $zero, $f10 -/* 051F60 80051360 460034A1 */ cvt.d.s $f18, $f6 -/* 051F64 80051364 462A903C */ c.lt.d $f18, $f10 -/* 051F68 80051368 44807000 */ mtc1 $zero, $f14 -/* 051F6C 8005136C 45000032 */ bc1f .L80051438 -/* 051F70 80051370 00004825 */ move $t1, $zero -/* 051F74 80051374 3C028012 */ lui $v0, %hi(D_8011D554) # $v0, 0x8012 -/* 051F78 80051378 8C42D554 */ lw $v0, %lo(D_8011D554)($v0) -/* 051F7C 8005137C 00000000 */ nop -/* 051F80 80051380 28411401 */ slti $at, $v0, 0x1401 -/* 051F84 80051384 10200007 */ beqz $at, .L800513A4 -/* 051F88 80051388 00000000 */ nop -/* 051F8C 8005138C 820401E6 */ lb $a0, 0x1e6($s0) -/* 051F90 80051390 2841EC00 */ slti $at, $v0, -0x1400 -/* 051F94 80051394 10800013 */ beqz $a0, .L800513E4 -/* 051F98 80051398 00000000 */ nop -/* 051F9C 8005139C 18400011 */ blez $v0, .L800513E4 -/* 051FA0 800513A0 00000000 */ nop -.L800513A4: -/* 051FA4 800513A4 820601E7 */ lb $a2, 0x1e7($s0) -/* 051FA8 800513A8 240B0007 */ li $t3, 7 -/* 051FAC 800513AC 30CA0007 */ andi $t2, $a2, 7 -/* 051FB0 800513B0 29410004 */ slti $at, $t2, 4 -/* 051FB4 800513B4 14200002 */ bnez $at, .L800513C0 -/* 051FB8 800513B8 01403025 */ move $a2, $t2 -/* 051FBC 800513BC 016A3023 */ subu $a2, $t3, $t2 -.L800513C0: -/* 051FC0 800513C0 0006C880 */ sll $t9, $a2, 2 -/* 051FC4 800513C4 0326C823 */ subu $t9, $t9, $a2 -/* 051FC8 800513C8 0019C8C0 */ sll $t9, $t9, 3 -/* 051FCC 800513CC 0326C821 */ addu $t9, $t9, $a2 -/* 051FD0 800513D0 0019C900 */ sll $t9, $t9, 4 -/* 051FD4 800513D4 00596021 */ addu $t4, $v0, $t9 -/* 051FD8 800513D8 3C018012 */ lui $at, %hi(D_8011D554) # $at, 0x8012 -/* 051FDC 800513DC 10000016 */ b .L80051438 -/* 051FE0 800513E0 AC2CD554 */ sw $t4, %lo(D_8011D554)($at) -.L800513E4: -/* 051FE4 800513E4 14200005 */ bnez $at, .L800513FC -/* 051FE8 800513E8 00000000 */ nop -/* 051FEC 800513EC 10800012 */ beqz $a0, .L80051438 -/* 051FF0 800513F0 00000000 */ nop -/* 051FF4 800513F4 04410010 */ bgez $v0, .L80051438 -/* 051FF8 800513F8 00000000 */ nop -.L800513FC: -/* 051FFC 800513FC 820601E7 */ lb $a2, 0x1e7($s0) -/* 052000 80051400 240E0007 */ li $t6, 7 -/* 052004 80051404 30CD0007 */ andi $t5, $a2, 7 -/* 052008 80051408 29A10004 */ slti $at, $t5, 4 -/* 05200C 8005140C 14200002 */ bnez $at, .L80051418 -/* 052010 80051410 01A03025 */ move $a2, $t5 -/* 052014 80051414 01CD3023 */ subu $a2, $t6, $t5 -.L80051418: -/* 052018 80051418 00067880 */ sll $t7, $a2, 2 -/* 05201C 8005141C 01E67823 */ subu $t7, $t7, $a2 -/* 052020 80051420 000F78C0 */ sll $t7, $t7, 3 -/* 052024 80051424 01E67821 */ addu $t7, $t7, $a2 -/* 052028 80051428 000F7900 */ sll $t7, $t7, 4 -/* 05202C 8005142C 004FC023 */ subu $t8, $v0, $t7 -/* 052030 80051430 3C018012 */ lui $at, %hi(D_8011D554) # $at, 0x8012 -/* 052034 80051434 AC38D554 */ sw $t8, %lo(D_8011D554)($at) -.L80051438: -/* 052038 80051438 44808000 */ mtc1 $zero, $f16 -/* 05203C 8005143C 44801000 */ mtc1 $zero, $f2 -/* 052040 80051440 AFA00068 */ sw $zero, 0x68($sp) -/* 052044 80051444 00004025 */ move $t0, $zero -/* 052048 80051448 00003025 */ move $a2, $zero -/* 05204C 8005144C 02002825 */ move $a1, $s0 -.L80051450: -/* 052050 80051450 90AA01DC */ lbu $t2, 0x1dc($a1) -/* 052054 80051454 240100FF */ li $at, 255 -/* 052058 80051458 11410038 */ beq $t2, $at, .L8005153C -/* 05205C 8005145C 00000000 */ nop -/* 052060 80051460 AFA50028 */ sw $a1, 0x28($sp) -/* 052064 80051464 AFA60070 */ sw $a2, 0x70($sp) -/* 052068 80051468 A3A80057 */ sb $t0, 0x57($sp) -/* 05206C 8005146C AFA90064 */ sw $t1, 0x64($sp) -/* 052070 80051470 E7A20048 */ swc1 $f2, 0x48($sp) -/* 052074 80051474 E7AE0044 */ swc1 $f14, 0x44($sp) -/* 052078 80051478 0C0270C3 */ jal func_8009C30C -/* 05207C 8005147C E7B00040 */ swc1 $f16, 0x40($sp) -/* 052080 80051480 8FA50028 */ lw $a1, 0x28($sp) -/* 052084 80051484 8FA60070 */ lw $a2, 0x70($sp) -/* 052088 80051488 3C07800E */ lui $a3, %hi(D_800DCB9C) # $a3, 0x800e -/* 05208C 8005148C 83A80057 */ lb $t0, 0x57($sp) -/* 052090 80051490 8FA90064 */ lw $t1, 0x64($sp) -/* 052094 80051494 C7A20048 */ lwc1 $f2, 0x48($sp) -/* 052098 80051498 C7AE0044 */ lwc1 $f14, 0x44($sp) -/* 05209C 8005149C C7B00040 */ lwc1 $f16, 0x40($sp) -/* 0520A0 800514A0 00025A00 */ sll $t3, $v0, 8 -/* 0520A4 800514A4 05610006 */ bgez $t3, .L800514C0 -/* 0520A8 800514A8 24E7CB9C */ addiu $a3, %lo(D_800DCB9C) # addiu $a3, $a3, -0x3464 -/* 0520AC 800514AC C4E40000 */ lwc1 $f4, ($a3) -/* 0520B0 800514B0 90A201DC */ lbu $v0, 0x1dc($a1) -/* 0520B4 800514B4 46047380 */ add.s $f14, $f14, $f4 -/* 0520B8 800514B8 10000008 */ b .L800514DC -/* 0520BC 800514BC 00021880 */ sll $v1, $v0, 2 -.L800514C0: -/* 0520C0 800514C0 90A201DC */ lbu $v0, 0x1dc($a1) -/* 0520C4 800514C4 00000000 */ nop -/* 0520C8 800514C8 00021880 */ sll $v1, $v0, 2 -/* 0520CC 800514CC 00E3C821 */ addu $t9, $a3, $v1 -/* 0520D0 800514D0 C7280000 */ lwc1 $f8, ($t9) -/* 0520D4 800514D4 00000000 */ nop -/* 0520D8 800514D8 46087380 */ add.s $f14, $f14, $f8 -.L800514DC: -/* 0520DC 800514DC 3C01800E */ lui $at, 0x800e -/* 0520E0 800514E0 3C0D800E */ lui $t5, 0x800e -/* 0520E4 800514E4 00230821 */ addu $at, $at, $v1 -/* 0520E8 800514E8 01A36821 */ addu $t5, $t5, $v1 -/* 0520EC 800514EC C426CBE8 */ lwc1 $f6, -0x3418($at) -/* 0520F0 800514F0 8DADCC34 */ lw $t5, -0x33cc($t5) -/* 0520F4 800514F4 8FAC0068 */ lw $t4, 0x68($sp) -/* 0520F8 800514F8 0122082A */ slt $at, $t1, $v0 -/* 0520FC 800514FC 018D7021 */ addu $t6, $t4, $t5 -/* 052100 80051500 AFAE0068 */ sw $t6, 0x68($sp) -/* 052104 80051504 00402025 */ move $a0, $v0 -/* 052108 80051508 10200002 */ beqz $at, .L80051514 -/* 05210C 8005150C 46068400 */ add.s $f16, $f16, $f6 -/* 052110 80051510 00404825 */ move $t1, $v0 -.L80051514: -/* 052114 80051514 24010004 */ li $at, 4 -/* 052118 80051518 14810005 */ bne $a0, $at, .L80051530 -/* 05211C 8005151C 3C013F80 */ lui $at, 0x3f80 -/* 052120 80051520 25080001 */ addiu $t0, $t0, 1 -/* 052124 80051524 00087E00 */ sll $t7, $t0, 0x18 -/* 052128 80051528 000F4603 */ sra $t0, $t7, 0x18 -/* 05212C 8005152C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -.L80051530: -/* 052130 80051530 44819000 */ mtc1 $at, $f18 -/* 052134 80051534 00000000 */ nop -/* 052138 80051538 46121080 */ add.s $f2, $f2, $f18 -.L8005153C: -/* 05213C 8005153C 24C60001 */ addiu $a2, $a2, 1 -/* 052140 80051540 28C10004 */ slti $at, $a2, 4 -/* 052144 80051544 1420FFC2 */ bnez $at, .L80051450 -/* 052148 80051548 24A50001 */ addiu $a1, $a1, 1 -/* 05214C 8005154C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 052150 80051550 44815000 */ mtc1 $at, $f10 -/* 052154 80051554 44802800 */ mtc1 $zero, $f5 -/* 052158 80051558 4602503C */ c.lt.s $f10, $f2 -/* 05215C 8005155C 00000000 */ nop -/* 052160 80051560 45000004 */ bc1f .L80051574 -/* 052164 80051564 00000000 */ nop -/* 052168 80051568 46027383 */ div.s $f14, $f14, $f2 -/* 05216C 8005156C 00000000 */ nop -/* 052170 80051570 46028403 */ div.s $f16, $f16, $f2 -.L80051574: -/* 052174 80051574 860A0000 */ lh $t2, ($s0) -/* 052178 80051578 00000000 */ nop -/* 05217C 8005157C 1540000D */ bnez $t2, .L800515B4 -/* 052180 80051580 00000000 */ nop -/* 052184 80051584 820B01E2 */ lb $t3, 0x1e2($s0) -/* 052188 80051588 2401000C */ li $at, 12 -/* 05218C 8005158C 11600009 */ beqz $t3, .L800515B4 -/* 052190 80051590 00000000 */ nop -/* 052194 80051594 15210007 */ bne $t1, $at, .L800515B4 -/* 052198 80051598 3C198012 */ lui $t9, %hi(D_8011D52C) # $t9, 0x8012 -/* 05219C 8005159C 8F39D52C */ lw $t9, %lo(D_8011D52C)($t9) -/* 0521A0 800515A0 240D0002 */ li $t5, 2 -/* 0521A4 800515A4 332C2000 */ andi $t4, $t9, 0x2000 -/* 0521A8 800515A8 11800002 */ beqz $t4, .L800515B4 -/* 0521AC 800515AC 3C018012 */ lui $at, %hi(D_8011D582) # $at, 0x8012 -/* 0521B0 800515B0 A02DD582 */ sb $t5, %lo(D_8011D582)($at) -.L800515B4: -/* 0521B4 800515B4 C60800C0 */ lwc1 $f8, 0xc0($s0) -/* 0521B8 800515B8 44802000 */ mtc1 $zero, $f4 -/* 0521BC 800515BC 460041A1 */ cvt.d.s $f6, $f8 -/* 0521C0 800515C0 46262032 */ c.eq.d $f4, $f6 -/* 0521C4 800515C4 00000000 */ nop -/* 0521C8 800515C8 45010004 */ bc1t .L800515DC -/* 0521CC 800515CC 3C01800E */ lui $at, %hi(D_800E6660) # $at, 0x800e -/* 0521D0 800515D0 C42E6660 */ lwc1 $f14, %lo(D_800E6660)($at) -/* 0521D4 800515D4 44808000 */ mtc1 $zero, $f16 -/* 0521D8 800515D8 00000000 */ nop -.L800515DC: -/* 0521DC 800515DC 24010002 */ li $at, 2 -/* 0521E0 800515E0 1521001A */ bne $t1, $at, .L8005164C -/* 0521E4 800515E4 24040008 */ li $a0, 8 -/* 0521E8 800515E8 C612002C */ lwc1 $f18, 0x2c($s0) -/* 0521EC 800515EC 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 0521F0 800515F0 44814800 */ mtc1 $at, $f9 -/* 0521F4 800515F4 44804000 */ mtc1 $zero, $f8 -/* 0521F8 800515F8 460092A1 */ cvt.d.s $f10, $f18 -/* 0521FC 800515FC 4628503C */ c.lt.d $f10, $f8 -/* 052200 80051600 00000000 */ nop -/* 052204 80051604 45000011 */ bc1f .L8005164C -/* 052208 80051608 24040008 */ li $a0, 8 -/* 05220C 8005160C 820E01D8 */ lb $t6, 0x1d8($s0) -/* 052210 80051610 00002825 */ move $a1, $zero -/* 052214 80051614 15C0000D */ bnez $t6, .L8005164C -/* 052218 80051618 24040008 */ li $a0, 8 -/* 05221C 8005161C 86040000 */ lh $a0, ($s0) -/* 052220 80051620 E7B00040 */ swc1 $f16, 0x40($sp) -/* 052224 80051624 E7AE0044 */ swc1 $f14, 0x44($sp) -/* 052228 80051628 AFA90064 */ sw $t1, 0x64($sp) -/* 05222C 8005162C 0C01C8D2 */ jal func_80072348 -/* 052230 80051630 A3A80057 */ sb $t0, 0x57($sp) -/* 052234 80051634 83A80057 */ lb $t0, 0x57($sp) -/* 052238 80051638 8FA90064 */ lw $t1, 0x64($sp) -/* 05223C 8005163C C7AE0044 */ lwc1 $f14, 0x44($sp) -/* 052240 80051640 C7B00040 */ lwc1 $f16, 0x40($sp) -/* 052244 80051644 00000000 */ nop -/* 052248 80051648 24040008 */ li $a0, 8 -.L8005164C: -/* 05224C 8005164C A3A80057 */ sb $t0, 0x57($sp) -/* 052250 80051650 AFA90064 */ sw $t1, 0x64($sp) -/* 052254 80051654 E7AE0044 */ swc1 $f14, 0x44($sp) -/* 052258 80051658 0C0078A7 */ jal func_8001E29C -/* 05225C 8005165C E7B00040 */ swc1 $f16, 0x40($sp) -/* 052260 80051660 3C0F8012 */ lui $t7, %hi(D_8011D55C) # $t7, 0x8012 -/* 052264 80051664 8DEFD55C */ lw $t7, %lo(D_8011D55C)($t7) -/* 052268 80051668 2403FFFF */ li $v1, -1 -/* 05226C 8005166C 83A80057 */ lb $t0, 0x57($sp) -/* 052270 80051670 8FA90064 */ lw $t1, 0x64($sp) -/* 052274 80051674 C7AE0044 */ lwc1 $f14, 0x44($sp) -/* 052278 80051678 C7B00040 */ lwc1 $f16, 0x40($sp) -/* 05227C 8005167C 106F0028 */ beq $v1, $t7, .L80051720 -/* 052280 80051680 00000000 */ nop -/* 052284 80051684 C60C002C */ lwc1 $f12, 0x2c($s0) -/* 052288 80051688 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 05228C 8005168C 44812800 */ mtc1 $at, $f5 -/* 052290 80051690 44802000 */ mtc1 $zero, $f4 -/* 052294 80051694 460061A1 */ cvt.d.s $f6, $f12 -/* 052298 80051698 4626203C */ c.lt.d $f4, $f6 -/* 05229C 8005169C 00000000 */ nop -/* 0522A0 800516A0 4501001F */ bc1t .L80051720 -/* 0522A4 800516A4 00000000 */ nop -/* 0522A8 800516A8 821801E6 */ lb $t8, 0x1e6($s0) -/* 0522AC 800516AC 00000000 */ nop -/* 0522B0 800516B0 1700001B */ bnez $t8, .L80051720 -/* 0522B4 800516B4 00000000 */ nop -/* 0522B8 800516B8 820A01D8 */ lb $t2, 0x1d8($s0) -/* 0522BC 800516BC 3C0B8012 */ lui $t3, %hi(D_8011D534) # $t3, 0x8012 -/* 0522C0 800516C0 15400017 */ bnez $t2, .L80051720 -/* 0522C4 800516C4 00000000 */ nop -/* 0522C8 800516C8 8D6BD534 */ lw $t3, %lo(D_8011D534)($t3) -/* 0522CC 800516CC 82190003 */ lb $t9, 3($s0) -/* 0522D0 800516D0 448B9000 */ mtc1 $t3, $f18 -/* 0522D4 800516D4 00196080 */ sll $t4, $t9, 2 -/* 0522D8 800516D8 468092A0 */ cvt.s.w $f10, $f18 -/* 0522DC 800516DC 004C6821 */ addu $t5, $v0, $t4 -/* 0522E0 800516E0 C5A40000 */ lwc1 $f4, ($t5) -/* 0522E4 800516E4 460A6202 */ mul.s $f8, $f12, $f10 -/* 0522E8 800516E8 C6120030 */ lwc1 $f18, 0x30($s0) -/* 0522EC 800516EC 860E0000 */ lh $t6, ($s0) -/* 0522F0 800516F0 3C01800E */ lui $at, %hi(D_800E666C) # $at, 0x800e -/* 0522F4 800516F4 46044183 */ div.s $f6, $f8, $f4 -/* 0522F8 800516F8 46069280 */ add.s $f10, $f18, $f6 -/* 0522FC 800516FC 146E0008 */ bne $v1, $t6, .L80051720 -/* 052300 80051700 E60A0030 */ swc1 $f10, 0x30($s0) -/* 052304 80051704 C6080030 */ lwc1 $f8, 0x30($s0) -/* 052308 80051708 C4336668 */ lwc1 $f19, %lo(D_800E6668)($at) -/* 05230C 8005170C C432666C */ lwc1 $f18, %lo(D_800E666C)($at) -/* 052310 80051710 46004121 */ cvt.d.s $f4, $f8 -/* 052314 80051714 46322182 */ mul.d $f6, $f4, $f18 -/* 052318 80051718 462032A0 */ cvt.s.d $f10, $f6 -/* 05231C 8005171C E60A0030 */ swc1 $f10, 0x30($s0) -.L80051720: -/* 052320 80051720 C608002C */ lwc1 $f8, 0x2c($s0) -/* 052324 80051724 3C01C008 */ li $at, 0xC0080000 # -2.125000 -/* 052328 80051728 44812800 */ mtc1 $at, $f5 -/* 05232C 8005172C 44802000 */ mtc1 $zero, $f4 -/* 052330 80051730 460040A1 */ cvt.d.s $f2, $f8 -/* 052334 80051734 4622203C */ c.lt.d $f4, $f2 -/* 052338 80051738 00000000 */ nop -/* 05233C 8005173C 4500002D */ bc1f .L800517F4 -/* 052340 80051740 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 052344 80051744 44819800 */ mtc1 $at, $f19 -/* 052348 80051748 44809000 */ mtc1 $zero, $f18 -/* 05234C 8005174C 44804800 */ mtc1 $zero, $f9 -/* 052350 80051750 46321180 */ add.d $f6, $f2, $f18 -/* 052354 80051754 44804000 */ mtc1 $zero, $f8 -/* 052358 80051758 46203287 */ neg.d $f10, $f6 -/* 05235C 8005175C 46205020 */ cvt.s.d $f0, $f10 -/* 052360 80051760 3C0F8012 */ lui $t7, %hi(D_8011D554) # $t7, 0x8012 -/* 052364 80051764 46000321 */ cvt.d.s $f12, $f0 -/* 052368 80051768 4628603C */ c.lt.d $f12, $f8 -/* 05236C 8005176C 00000000 */ nop -/* 052370 80051770 45000004 */ bc1f .L80051784 -/* 052374 80051774 00000000 */ nop -/* 052378 80051778 44800000 */ mtc1 $zero, $f0 -/* 05237C 8005177C 00000000 */ nop -/* 052380 80051780 46000321 */ cvt.d.s $f12, $f0 -.L80051784: -/* 052384 80051784 8DEFD554 */ lw $t7, %lo(D_8011D554)($t7) -/* 052388 80051788 44804000 */ mtc1 $zero, $f8 -/* 05238C 8005178C 448F2000 */ mtc1 $t7, $f4 -/* 052390 80051790 00000000 */ nop -/* 052394 80051794 468024A0 */ cvt.s.w $f18, $f4 -/* 052398 80051798 46009182 */ mul.s $f6, $f18, $f0 -/* 05239C 8005179C 4458F800 */ cfc1 $t8, $31 -/* 0523A0 800517A0 00000000 */ nop -/* 0523A4 800517A4 37010003 */ ori $at, $t8, 3 -/* 0523A8 800517A8 38210002 */ xori $at, $at, 2 -/* 0523AC 800517AC 44C1F800 */ ctc1 $at, $31 -/* 0523B0 800517B0 3C018012 */ lui $at, %hi(D_8011D554) # $at, 0x8012 -/* 0523B4 800517B4 460032A4 */ cvt.w.s $f10, $f6 -/* 0523B8 800517B8 440A5000 */ mfc1 $t2, $f10 -/* 0523BC 800517BC 44D8F800 */ ctc1 $t8, $31 -/* 0523C0 800517C0 AC2AD554 */ sw $t2, %lo(D_8011D554)($at) -/* 0523C4 800517C4 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 0523C8 800517C8 44814800 */ mtc1 $at, $f9 -/* 0523CC 800517CC 3C01800E */ lui $at, %hi(D_800E6674) # $at, 0x800e -/* 0523D0 800517D0 C4336670 */ lwc1 $f19, %lo(D_800E6670)($at) -/* 0523D4 800517D4 C4326674 */ lwc1 $f18, %lo(D_800E6674)($at) -/* 0523D8 800517D8 462C4101 */ sub.d $f4, $f8, $f12 -/* 0523DC 800517DC 46322182 */ mul.d $f6, $f4, $f18 -/* 0523E0 800517E0 00000000 */ nop -/* 0523E4 800517E4 46008282 */ mul.s $f10, $f16, $f0 -/* 0523E8 800517E8 46005221 */ cvt.d.s $f8, $f10 -/* 0523EC 800517EC 46283100 */ add.d $f4, $f6, $f8 -/* 0523F0 800517F0 46202420 */ cvt.s.d $f16, $f4 -.L800517F4: -/* 0523F4 800517F4 C6120030 */ lwc1 $f18, 0x30($s0) -/* 0523F8 800517F8 860401A4 */ lh $a0, 0x1a4($s0) -/* 0523FC 800517FC 46109282 */ mul.s $f10, $f18, $f16 -/* 052400 80051800 E60A0030 */ swc1 $f10, 0x30($s0) -/* 052404 80051804 E7AE0044 */ swc1 $f14, 0x44($sp) -/* 052408 80051808 AFA90064 */ sw $t1, 0x64($sp) -/* 05240C 8005180C 0C01C1FE */ jal func_800707F8 -/* 052410 80051810 A3A80057 */ sb $t0, 0x57($sp) -/* 052414 80051814 44803000 */ mtc1 $zero, $f6 -/* 052418 80051818 83A80057 */ lb $t0, 0x57($sp) -/* 05241C 8005181C 4606003C */ c.lt.s $f0, $f6 -/* 052420 80051820 8FA90064 */ lw $t1, 0x64($sp) -/* 052424 80051824 C7AE0044 */ lwc1 $f14, 0x44($sp) -/* 052428 80051828 45000002 */ bc1f .L80051834 -/* 05242C 8005182C 46000086 */ mov.s $f2, $f0 -/* 052430 80051830 46000087 */ neg.s $f2, $f0 -.L80051834: -/* 052434 80051834 C6080030 */ lwc1 $f8, 0x30($s0) -/* 052438 80051838 3C018012 */ lui $at, %hi(D_8011D581) # $at, 0x8012 -/* 05243C 8005183C 46024102 */ mul.s $f4, $f8, $f2 -/* 052440 80051840 E6040030 */ swc1 $f4, 0x30($s0) -/* 052444 80051844 11000013 */ beqz $t0, .L80051894 -/* 052448 80051848 A029D581 */ sb $t1, %lo(D_8011D581)($at) -/* 05244C 8005184C 24040020 */ li $a0, 32 -/* 052450 80051850 A3A80057 */ sb $t0, 0x57($sp) -/* 052454 80051854 AFA90064 */ sw $t1, 0x64($sp) -/* 052458 80051858 0C0078A7 */ jal func_8001E29C -/* 05245C 8005185C E7AE0044 */ swc1 $f14, 0x44($sp) -/* 052460 80051860 83A80057 */ lb $t0, 0x57($sp) -/* 052464 80051864 C7B20034 */ lwc1 $f18, 0x34($sp) -/* 052468 80051868 00085880 */ sll $t3, $t0, 2 -/* 05246C 8005186C 004BC821 */ addu $t9, $v0, $t3 -/* 052470 80051870 C72A0000 */ lwc1 $f10, ($t9) -/* 052474 80051874 44804000 */ mtc1 $zero, $f8 -/* 052478 80051878 460A9182 */ mul.s $f6, $f18, $f10 -/* 05247C 8005187C 8FA90064 */ lw $t1, 0x64($sp) -/* 052480 80051880 C7AE0044 */ lwc1 $f14, 0x44($sp) -/* 052484 80051884 E7A60034 */ swc1 $f6, 0x34($sp) -/* 052488 80051888 A2000175 */ sb $zero, 0x175($s0) -/* 05248C 8005188C 1000000F */ b .L800518CC -/* 052490 80051890 E6080030 */ swc1 $f8, 0x30($s0) -.L80051894: -/* 052494 80051894 2401000A */ li $at, 10 -/* 052498 80051898 1521000C */ bne $t1, $at, .L800518CC -/* 05249C 8005189C 00000000 */ nop -/* 0524A0 800518A0 920C01EF */ lbu $t4, 0x1ef($s0) -/* 0524A4 800518A4 24050138 */ li $a1, 312 -/* 0524A8 800518A8 358D0004 */ ori $t5, $t4, 4 -/* 0524AC 800518AC A20D01EF */ sb $t5, 0x1ef($s0) -/* 0524B0 800518B0 8FA40078 */ lw $a0, 0x78($sp) -/* 0524B4 800518B4 E7AE0044 */ swc1 $f14, 0x44($sp) -/* 0524B8 800518B8 0C015C12 */ jal func_80057048 -/* 0524BC 800518BC AFA90064 */ sw $t1, 0x64($sp) -/* 0524C0 800518C0 8FA90064 */ lw $t1, 0x64($sp) -/* 0524C4 800518C4 C7AE0044 */ lwc1 $f14, 0x44($sp) -/* 0524C8 800518C8 00000000 */ nop -.L800518CC: -/* 0524CC 800518CC 820E01D3 */ lb $t6, 0x1d3($s0) -/* 0524D0 800518D0 00000000 */ nop -/* 0524D4 800518D4 15C0001D */ bnez $t6, .L8005194C -/* 0524D8 800518D8 24010003 */ li $at, 3 -/* 0524DC 800518DC 1521001B */ bne $t1, $at, .L8005194C -/* 0524E0 800518E0 2404002D */ li $a0, 45 -/* 0524E4 800518E4 AFA90064 */ sw $t1, 0x64($sp) -/* 0524E8 800518E8 0C00322D */ jal func_8000C8B4 -/* 0524EC 800518EC E7AE0044 */ swc1 $f14, 0x44($sp) -/* 0524F0 800518F0 240F0002 */ li $t7, 2 -/* 0524F4 800518F4 A20201D3 */ sb $v0, 0x1d3($s0) -/* 0524F8 800518F8 A20F0203 */ sb $t7, 0x203($s0) -/* 0524FC 800518FC 8FA40078 */ lw $a0, 0x78($sp) -/* 052500 80051900 0C015C12 */ jal func_80057048 -/* 052504 80051904 24050107 */ li $a1, 263 -/* 052508 80051908 8FA40078 */ lw $a0, 0x78($sp) -/* 05250C 8005190C 24050162 */ li $a1, 354 -/* 052510 80051910 24060008 */ li $a2, 8 -/* 052514 80051914 0C015C2E */ jal func_800570B8 -/* 052518 80051918 24070082 */ li $a3, 130 -/* 05251C 8005191C 821801D8 */ lb $t8, 0x1d8($s0) -/* 052520 80051920 8FA90064 */ lw $t1, 0x64($sp) -/* 052524 80051924 C7AE0044 */ lwc1 $f14, 0x44($sp) -/* 052528 80051928 17000008 */ bnez $t8, .L8005194C -/* 05252C 8005192C 24050008 */ li $a1, 8 -/* 052530 80051930 86040000 */ lh $a0, ($s0) -/* 052534 80051934 E7AE0044 */ swc1 $f14, 0x44($sp) -/* 052538 80051938 0C01C8D2 */ jal func_80072348 -/* 05253C 8005193C AFA90064 */ sw $t1, 0x64($sp) -/* 052540 80051940 8FA90064 */ lw $t1, 0x64($sp) -/* 052544 80051944 C7AE0044 */ lwc1 $f14, 0x44($sp) -/* 052548 80051948 00000000 */ nop -.L8005194C: -/* 05254C 8005194C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 052550 80051950 44819000 */ mtc1 $at, $f18 -/* 052554 80051954 C7A40050 */ lwc1 $f4, 0x50($sp) -/* 052558 80051958 00000000 */ nop -/* 05255C 8005195C 4612203C */ c.lt.s $f4, $f18 -/* 052560 80051960 00000000 */ nop -/* 052564 80051964 4500000F */ bc1f .L800519A4 -/* 052568 80051968 3C0A8012 */ lui $t2, %hi(D_8011D528) # $t2, 0x8012 -/* 05256C 8005196C 8D4AD528 */ lw $t2, %lo(D_8011D528)($t2) -/* 052570 80051970 00000000 */ nop -/* 052574 80051974 314B8000 */ andi $t3, $t2, 0x8000 -/* 052578 80051978 1560000A */ bnez $t3, .L800519A4 -/* 05257C 8005197C 00000000 */ nop -/* 052580 80051980 C60C002C */ lwc1 $f12, 0x2c($s0) -/* 052584 80051984 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 052588 80051988 460E6282 */ mul.s $f10, $f12, $f14 -/* 05258C 8005198C 44813000 */ mtc1 $at, $f6 -/* 052590 80051990 00000000 */ nop -/* 052594 80051994 46065202 */ mul.s $f8, $f10, $f6 -/* 052598 80051998 46086101 */ sub.s $f4, $f12, $f8 -/* 05259C 8005199C 10000006 */ b .L800519B8 -/* 0525A0 800519A0 E604002C */ swc1 $f4, 0x2c($s0) -.L800519A4: -/* 0525A4 800519A4 C7AA0050 */ lwc1 $f10, 0x50($sp) -/* 0525A8 800519A8 C612002C */ lwc1 $f18, 0x2c($s0) -/* 0525AC 800519AC 460E5182 */ mul.s $f6, $f10, $f14 -/* 0525B0 800519B0 46069201 */ sub.s $f8, $f18, $f6 -/* 0525B4 800519B4 E608002C */ swc1 $f8, 0x2c($s0) -.L800519B8: -/* 0525B8 800519B8 8FB90060 */ lw $t9, 0x60($sp) -/* 0525BC 800519BC 00000000 */ nop -/* 0525C0 800519C0 13200008 */ beqz $t9, .L800519E4 -/* 0525C4 800519C4 00000000 */ nop -/* 0525C8 800519C8 920201EE */ lbu $v0, 0x1ee($s0) -/* 0525CC 800519CC 00000000 */ nop -/* 0525D0 800519D0 28410010 */ slti $at, $v0, 0x10 -/* 0525D4 800519D4 10200004 */ beqz $at, .L800519E8 -/* 0525D8 800519D8 244C0001 */ addiu $t4, $v0, 1 -/* 0525DC 800519DC 10000002 */ b .L800519E8 -/* 0525E0 800519E0 A20C01EE */ sb $t4, 0x1ee($s0) -.L800519E4: -/* 0525E4 800519E4 A20001EE */ sb $zero, 0x1ee($s0) -.L800519E8: -/* 0525E8 800519E8 0C019884 */ jal func_80066210 -/* 0525EC 800519EC AFA90064 */ sw $t1, 0x64($sp) -/* 0525F0 800519F0 8FA90064 */ lw $t1, 0x64($sp) -/* 0525F4 800519F4 28410002 */ slti $at, $v0, 2 -/* 0525F8 800519F8 1020004B */ beqz $at, .L80051B28 -/* 0525FC 800519FC 0009C080 */ sll $t8, $t1, 2 -/* 052600 80051A00 8FAD0060 */ lw $t5, 0x60($sp) -/* 052604 80051A04 8FAE0058 */ lw $t6, 0x58($sp) -/* 052608 80051A08 11A00009 */ beqz $t5, .L80051A30 -/* 05260C 80051A0C 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 052610 80051A10 C604002C */ lwc1 $f4, 0x2c($s0) -/* 052614 80051A14 44819800 */ mtc1 $at, $f19 -/* 052618 80051A18 44809000 */ mtc1 $zero, $f18 -/* 05261C 80051A1C 460022A1 */ cvt.d.s $f10, $f4 -/* 052620 80051A20 4632503C */ c.lt.d $f10, $f18 -/* 052624 80051A24 00000000 */ nop -/* 052628 80051A28 45010007 */ bc1t .L80051A48 -/* 05262C 80051A2C 00000000 */ nop -.L80051A30: -/* 052630 80051A30 15C00005 */ bnez $t6, .L80051A48 -/* 052634 80051A34 00000000 */ nop -/* 052638 80051A38 820F01FB */ lb $t7, 0x1fb($s0) -/* 05263C 80051A3C 00000000 */ nop -/* 052640 80051A40 11E00019 */ beqz $t7, .L80051AA8 -/* 052644 80051A44 00000000 */ nop -.L80051A48: -/* 052648 80051A48 920201DE */ lbu $v0, 0x1de($s0) -/* 05264C 80051A4C 8FA60078 */ lw $a2, 0x78($sp) -/* 052650 80051A50 284100FF */ slti $at, $v0, 0xff -/* 052654 80051A54 10200008 */ beqz $at, .L80051A78 -/* 052658 80051A58 00025080 */ sll $t2, $v0, 2 -/* 05265C 80051A5C 3C0B800E */ lui $t3, 0x800e -/* 052660 80051A60 016A5821 */ addu $t3, $t3, $t2 -/* 052664 80051A64 8D6BCCF4 */ lw $t3, -0x330c($t3) -/* 052668 80051A68 8CD80074 */ lw $t8, 0x74($a2) -/* 05266C 80051A6C 00000000 */ nop -/* 052670 80051A70 030BC825 */ or $t9, $t8, $t3 -/* 052674 80051A74 ACD90074 */ sw $t9, 0x74($a2) -.L80051A78: -/* 052678 80051A78 920201DF */ lbu $v0, 0x1df($s0) -/* 05267C 80051A7C 8FA60078 */ lw $a2, 0x78($sp) -/* 052680 80051A80 284100FF */ slti $at, $v0, 0xff -/* 052684 80051A84 10200008 */ beqz $at, .L80051AA8 -/* 052688 80051A88 00026880 */ sll $t5, $v0, 2 -/* 05268C 80051A8C 3C0E800E */ lui $t6, 0x800e -/* 052690 80051A90 01CD7021 */ addu $t6, $t6, $t5 -/* 052694 80051A94 8DCECCF4 */ lw $t6, -0x330c($t6) -/* 052698 80051A98 8CCC0074 */ lw $t4, 0x74($a2) -/* 05269C 80051A9C 000E7840 */ sll $t7, $t6, 1 -/* 0526A0 80051AA0 018F5025 */ or $t2, $t4, $t7 -/* 0526A4 80051AA4 ACCA0074 */ sw $t2, 0x74($a2) -.L80051AA8: -/* 0526A8 80051AA8 C606002C */ lwc1 $f6, 0x2c($s0) -/* 0526AC 80051AAC 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 0526B0 80051AB0 44812800 */ mtc1 $at, $f5 -/* 0526B4 80051AB4 44802000 */ mtc1 $zero, $f4 -/* 0526B8 80051AB8 46003221 */ cvt.d.s $f8, $f6 -/* 0526BC 80051ABC 4624403C */ c.lt.d $f8, $f4 -/* 0526C0 80051AC0 8FA60078 */ lw $a2, 0x78($sp) -/* 0526C4 80051AC4 45000018 */ bc1f .L80051B28 -/* 0526C8 80051AC8 0009C080 */ sll $t8, $t1, 2 -/* 0526CC 80051ACC 920201DE */ lbu $v0, 0x1de($s0) -/* 0526D0 80051AD0 3C19800E */ lui $t9, 0x800e -/* 0526D4 80051AD4 284100FF */ slti $at, $v0, 0xff -/* 0526D8 80051AD8 10200007 */ beqz $at, .L80051AF8 -/* 0526DC 80051ADC 00025880 */ sll $t3, $v0, 2 -/* 0526E0 80051AE0 032BC821 */ addu $t9, $t9, $t3 -/* 0526E4 80051AE4 8F39CD40 */ lw $t9, -0x32c0($t9) -/* 0526E8 80051AE8 8CD80074 */ lw $t8, 0x74($a2) -/* 0526EC 80051AEC 00000000 */ nop -/* 0526F0 80051AF0 03196825 */ or $t5, $t8, $t9 -/* 0526F4 80051AF4 ACCD0074 */ sw $t5, 0x74($a2) -.L80051AF8: -/* 0526F8 80051AF8 920201DF */ lbu $v0, 0x1df($s0) -/* 0526FC 80051AFC 3C0F800E */ lui $t7, 0x800e -/* 052700 80051B00 284100FF */ slti $at, $v0, 0xff -/* 052704 80051B04 10200007 */ beqz $at, .L80051B24 -/* 052708 80051B08 00026080 */ sll $t4, $v0, 2 -/* 05270C 80051B0C 01EC7821 */ addu $t7, $t7, $t4 -/* 052710 80051B10 8DEFCD40 */ lw $t7, -0x32c0($t7) -/* 052714 80051B14 8CCE0074 */ lw $t6, 0x74($a2) -/* 052718 80051B18 000F5040 */ sll $t2, $t7, 1 -/* 05271C 80051B1C 01CA5825 */ or $t3, $t6, $t2 -/* 052720 80051B20 ACCB0074 */ sw $t3, 0x74($a2) -.L80051B24: -/* 052724 80051B24 0009C080 */ sll $t8, $t1, 2 -.L80051B28: -/* 052728 80051B28 3C09800E */ lui $t1, 0x800e -/* 05272C 80051B2C 8E020018 */ lw $v0, 0x18($s0) -/* 052730 80051B30 01384821 */ addu $t1, $t1, $t8 -/* 052734 80051B34 8FA60078 */ lw $a2, 0x78($sp) -/* 052738 80051B38 8D29CC80 */ lw $t1, -0x3380($t1) -/* 05273C 80051B3C 14400011 */ bnez $v0, .L80051B84 -/* 052740 80051B40 00000000 */ nop -/* 052744 80051B44 1120000F */ beqz $t1, .L80051B84 -/* 052748 80051B48 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 05274C 80051B4C C60A002C */ lwc1 $f10, 0x2c($s0) -/* 052750 80051B50 44813800 */ mtc1 $at, $f7 -/* 052754 80051B54 44803000 */ mtc1 $zero, $f6 -/* 052758 80051B58 460054A1 */ cvt.d.s $f18, $f10 -/* 05275C 80051B5C 4626903C */ c.lt.d $f18, $f6 -/* 052760 80051B60 3124FFFF */ andi $a0, $t1, 0xffff -/* 052764 80051B64 45000007 */ bc1f .L80051B84 -/* 052768 80051B68 26050018 */ addiu $a1, $s0, 0x18 -/* 05276C 80051B6C 0C000741 */ jal func_80001D04 -/* 052770 80051B70 AFA90064 */ sw $t1, 0x64($sp) -/* 052774 80051B74 8FA90064 */ lw $t1, 0x64($sp) -/* 052778 80051B78 8E020018 */ lw $v0, 0x18($s0) -/* 05277C 80051B7C 8FA60078 */ lw $a2, 0x78($sp) -/* 052780 80051B80 00000000 */ nop -.L80051B84: -/* 052784 80051B84 10400010 */ beqz $v0, .L80051BC8 -/* 052788 80051B88 00000000 */ nop -/* 05278C 80051B8C 11200008 */ beqz $t1, .L80051BB0 -/* 052790 80051B90 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 052794 80051B94 C604002C */ lwc1 $f4, 0x2c($s0) -/* 052798 80051B98 44814800 */ mtc1 $at, $f9 -/* 05279C 80051B9C 44804000 */ mtc1 $zero, $f8 -/* 0527A0 80051BA0 460022A1 */ cvt.d.s $f10, $f4 -/* 0527A4 80051BA4 462A403C */ c.lt.d $f8, $f10 -/* 0527A8 80051BA8 00000000 */ nop -/* 0527AC 80051BAC 45000006 */ bc1f .L80051BC8 -.L80051BB0: -/* 0527B0 80051BB0 00402025 */ move $a0, $v0 -/* 0527B4 80051BB4 0C001223 */ jal func_8000488C -/* 0527B8 80051BB8 AFA90064 */ sw $t1, 0x64($sp) -/* 0527BC 80051BBC 8FA90064 */ lw $t1, 0x64($sp) -/* 0527C0 80051BC0 8FA60078 */ lw $a2, 0x78($sp) -/* 0527C4 80051BC4 00000000 */ nop -.L80051BC8: -/* 0527C8 80051BC8 C60C002C */ lwc1 $f12, 0x2c($s0) -/* 0527CC 80051BCC 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 0527D0 80051BD0 44813800 */ mtc1 $at, $f7 -/* 0527D4 80051BD4 44803000 */ mtc1 $zero, $f6 -/* 0527D8 80051BD8 460064A1 */ cvt.d.s $f18, $f12 -/* 0527DC 80051BDC 4626903C */ c.lt.d $f18, $f6 -/* 0527E0 80051BE0 3C0E8012 */ lui $t6, %hi(D_8011D564) # $t6, 0x8012 -/* 0527E4 80051BE4 45000020 */ bc1f .L80051C68 -/* 0527E8 80051BE8 00000000 */ nop -/* 0527EC 80051BEC 8FB90068 */ lw $t9, 0x68($sp) -/* 0527F0 80051BF0 00000000 */ nop -/* 0527F4 80051BF4 2B210004 */ slti $at, $t9, 4 -/* 0527F8 80051BF8 1420001B */ bnez $at, .L80051C68 -/* 0527FC 80051BFC 00000000 */ nop -/* 052800 80051C00 820D01E7 */ lb $t5, 0x1e7($s0) -/* 052804 80051C04 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 052808 80051C08 31AC0001 */ andi $t4, $t5, 1 -/* 05280C 80051C0C 448C2000 */ mtc1 $t4, $f4 -/* 052810 80051C10 44819800 */ mtc1 $at, $f19 -/* 052814 80051C14 46802220 */ cvt.s.w $f8, $f4 -/* 052818 80051C18 44809000 */ mtc1 $zero, $f18 -/* 05281C 80051C1C C6040078 */ lwc1 $f4, 0x78($s0) -/* 052820 80051C20 460042A1 */ cvt.d.s $f10, $f8 -/* 052824 80051C24 46325182 */ mul.d $f6, $f10, $f18 -/* 052828 80051C28 C60800A0 */ lwc1 $f8, 0xa0($s0) -/* 05282C 80051C2C C60C002C */ lwc1 $f12, 0x2c($s0) -/* 052830 80051C30 46203020 */ cvt.s.d $f0, $f6 -/* 052834 80051C34 C606007C */ lwc1 $f6, 0x7c($s0) -/* 052838 80051C38 46004282 */ mul.s $f10, $f8, $f0 -/* 05283C 80051C3C C60800A4 */ lwc1 $f8, 0xa4($s0) -/* 052840 80051C40 460A2481 */ sub.s $f18, $f4, $f10 -/* 052844 80051C44 46004102 */ mul.s $f4, $f8, $f0 -/* 052848 80051C48 C608009C */ lwc1 $f8, 0x9c($s0) -/* 05284C 80051C4C E6120078 */ swc1 $f18, 0x78($s0) -/* 052850 80051C50 C6120080 */ lwc1 $f18, 0x80($s0) -/* 052854 80051C54 46043281 */ sub.s $f10, $f6, $f4 -/* 052858 80051C58 46004182 */ mul.s $f6, $f8, $f0 -/* 05285C 80051C5C E60A007C */ swc1 $f10, 0x7c($s0) -/* 052860 80051C60 46069101 */ sub.s $f4, $f18, $f6 -/* 052864 80051C64 E6040080 */ swc1 $f4, 0x80($s0) -.L80051C68: -/* 052868 80051C68 44805000 */ mtc1 $zero, $f10 -/* 05286C 80051C6C 3C014140 */ li $at, 0x41400000 # 12.000000 -/* 052870 80051C70 460A603C */ c.lt.s $f12, $f10 -/* 052874 80051C74 44810000 */ mtc1 $at, $f0 -/* 052878 80051C78 45000002 */ bc1f .L80051C84 -/* 05287C 80051C7C 46006386 */ mov.s $f14, $f12 -/* 052880 80051C80 46007387 */ neg.s $f14, $f14 -.L80051C84: -/* 052884 80051C84 460E003C */ c.lt.s $f0, $f14 -/* 052888 80051C88 00000000 */ nop -/* 05288C 80051C8C 45000002 */ bc1f .L80051C98 -/* 052890 80051C90 00000000 */ nop -/* 052894 80051C94 46000386 */ mov.s $f14, $f0 -.L80051C98: -/* 052898 80051C98 444FF800 */ cfc1 $t7, $31 -/* 05289C 80051C9C 8DCED564 */ lw $t6, %lo(D_8011D564)($t6) -/* 0528A0 80051CA0 35E10003 */ ori $at, $t7, 3 -/* 0528A4 80051CA4 38210002 */ xori $at, $at, 2 -/* 0528A8 80051CA8 44C1F800 */ ctc1 $at, $31 -/* 0528AC 80051CAC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 0528B0 80051CB0 46007224 */ cvt.w.s $f8, $f14 -/* 0528B4 80051CB4 44812800 */ mtc1 $at, $f5 -/* 0528B8 80051CB8 44024000 */ mfc1 $v0, $f8 -/* 0528BC 80051CBC 44CFF800 */ ctc1 $t7, $31 -/* 0528C0 80051CC0 44829000 */ mtc1 $v0, $f18 -/* 0528C4 80051CC4 00025080 */ sll $t2, $v0, 2 -/* 0528C8 80051CC8 468091A0 */ cvt.s.w $f6, $f18 -/* 0528CC 80051CCC 44802000 */ mtc1 $zero, $f4 -/* 0528D0 80051CD0 01CA1821 */ addu $v1, $t6, $t2 -/* 0528D4 80051CD4 46067001 */ sub.s $f0, $f14, $f6 -/* 0528D8 80051CD8 C4720000 */ lwc1 $f18, ($v1) -/* 0528DC 80051CDC 460002A1 */ cvt.d.s $f10, $f0 -/* 0528E0 80051CE0 462A2201 */ sub.d $f8, $f4, $f10 -/* 0528E4 80051CE4 C46A0004 */ lwc1 $f10, 4($v1) -/* 0528E8 80051CE8 460091A1 */ cvt.d.s $f6, $f18 -/* 0528EC 80051CEC 46283102 */ mul.d $f4, $f6, $f8 -/* 0528F0 80051CF0 3C01800E */ lui $at, %hi(D_800E667C) # $at, 0x800e -/* 0528F4 80051CF4 820B01D3 */ lb $t3, 0x1d3($s0) -/* 0528F8 80051CF8 46005482 */ mul.s $f18, $f10, $f0 -/* 0528FC 80051CFC C4336678 */ lwc1 $f19, %lo(D_800E6678)($at) -/* 052900 80051D00 460091A1 */ cvt.d.s $f6, $f18 -/* 052904 80051D04 46262200 */ add.d $f8, $f4, $f6 -/* 052908 80051D08 C432667C */ lwc1 $f18, %lo(D_800E667C)($at) -/* 05290C 80051D0C 462043A0 */ cvt.s.d $f14, $f8 -/* 052910 80051D10 C7A60034 */ lwc1 $f6, 0x34($sp) -/* 052914 80051D14 460072A1 */ cvt.d.s $f10, $f14 -/* 052918 80051D18 46325102 */ mul.d $f4, $f10, $f18 -/* 05291C 80051D1C 462023A0 */ cvt.s.d $f14, $f4 -/* 052920 80051D20 44802000 */ mtc1 $zero, $f4 -/* 052924 80051D24 46067382 */ mul.s $f14, $f14, $f6 -/* 052928 80051D28 19600016 */ blez $t3, .L80051D84 -/* 05292C 80051D2C 3C188012 */ lui $t8, %hi(D_8011D540) # $t8, 0x8012 -/* 052930 80051D30 8F18D540 */ lw $t8, %lo(D_8011D540)($t8) -/* 052934 80051D34 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 052938 80051D38 17000010 */ bnez $t8, .L80051D7C -/* 05293C 80051D3C 00000000 */ nop -/* 052940 80051D40 44805800 */ mtc1 $zero, $f11 -/* 052944 80051D44 44805000 */ mtc1 $zero, $f10 -/* 052948 80051D48 460074A1 */ cvt.d.s $f18, $f14 -/* 05294C 80051D4C 44814000 */ mtc1 $at, $f8 -/* 052950 80051D50 46325032 */ c.eq.d $f10, $f18 -/* 052954 80051D54 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 052958 80051D58 45010003 */ bc1t .L80051D68 -/* 05295C 80051D5C E60800B4 */ swc1 $f8, 0xb4($s0) -/* 052960 80051D60 44817000 */ mtc1 $at, $f14 -/* 052964 80051D64 00000000 */ nop -.L80051D68: -/* 052968 80051D68 821901D3 */ lb $t9, 0x1d3($s0) -/* 05296C 80051D6C 8FAD0080 */ lw $t5, 0x80($sp) -/* 052970 80051D70 C60C002C */ lwc1 $f12, 0x2c($s0) -/* 052974 80051D74 032D6023 */ subu $t4, $t9, $t5 -/* 052978 80051D78 A20C01D3 */ sb $t4, 0x1d3($s0) -.L80051D7C: -/* 05297C 80051D7C 10000004 */ b .L80051D90 -/* 052980 80051D80 460060A1 */ cvt.d.s $f2, $f12 -.L80051D84: -/* 052984 80051D84 C60C002C */ lwc1 $f12, 0x2c($s0) -/* 052988 80051D88 A20001D3 */ sb $zero, 0x1d3($s0) -/* 05298C 80051D8C 460060A1 */ cvt.d.s $f2, $f12 -.L80051D90: -/* 052990 80051D90 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 052994 80051D94 44812800 */ mtc1 $at, $f5 -/* 052998 80051D98 00000000 */ nop -/* 05299C 80051D9C 4622203C */ c.lt.d $f4, $f2 -/* 0529A0 80051DA0 00000000 */ nop -/* 0529A4 80051DA4 45000039 */ bc1f .L80051E8C -/* 0529A8 80051DA8 3C014008 */ li $at, 0x40080000 # 2.125000 -/* 0529AC 80051DAC 44818800 */ mtc1 $at, $f17 -/* 0529B0 80051DB0 44808000 */ mtc1 $zero, $f16 -/* 0529B4 80051DB4 00000000 */ nop -/* 0529B8 80051DB8 4630103C */ c.lt.d $f2, $f16 -/* 0529BC 80051DBC 00000000 */ nop -/* 0529C0 80051DC0 45000032 */ bc1f .L80051E8C -/* 0529C4 80051DC4 00000000 */ nop -/* 0529C8 80051DC8 860F0000 */ lh $t7, ($s0) -/* 0529CC 80051DCC 2401FFFF */ li $at, -1 -/* 0529D0 80051DD0 15E10004 */ bne $t7, $at, .L80051DE4 -/* 0529D4 80051DD4 3C0A8012 */ lui $t2, %hi(D_8011D538) # $t2, 0x8012 -/* 0529D8 80051DD8 820E0214 */ lb $t6, 0x214($s0) -/* 0529DC 80051DDC 00000000 */ nop -/* 0529E0 80051DE0 11C0002A */ beqz $t6, .L80051E8C -.L80051DE4: -/* 0529E4 80051DE4 3C01800E */ lui $at, %hi(D_800E6684) # $at, 0x800e -/* 0529E8 80051DE8 C4296680 */ lwc1 $f9, %lo(D_800E6680)($at) -/* 0529EC 80051DEC C4286684 */ lwc1 $f8, %lo(D_800E6684)($at) -/* 0529F0 80051DF0 46228181 */ sub.d $f6, $f16, $f2 -/* 0529F4 80051DF4 24010004 */ li $at, 4 -/* 0529F8 80051DF8 46283282 */ mul.d $f10, $f6, $f8 -/* 0529FC 80051DFC 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 -/* 052A00 80051E00 15210007 */ bne $t1, $at, .L80051E20 -/* 052A04 80051E04 46205020 */ cvt.s.d $f0, $f10 -/* 052A08 80051E08 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 052A0C 80051E0C 44812800 */ mtc1 $at, $f5 -/* 052A10 80051E10 44802000 */ mtc1 $zero, $f4 -/* 052A14 80051E14 460004A1 */ cvt.d.s $f18, $f0 -/* 052A18 80051E18 46249182 */ mul.d $f6, $f18, $f4 -/* 052A1C 80051E1C 46203020 */ cvt.s.d $f0, $f6 -.L80051E20: -/* 052A20 80051E20 8D4AD538 */ lw $t2, %lo(D_8011D538)($t2) -/* 052A24 80051E24 00000000 */ nop -/* 052A28 80051E28 2941FFE7 */ slti $at, $t2, -0x19 -/* 052A2C 80051E2C 10200017 */ beqz $at, .L80051E8C -/* 052A30 80051E30 00000000 */ nop -/* 052A34 80051E34 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) -/* 052A38 80051E38 00000000 */ nop -/* 052A3C 80051E3C 304B8000 */ andi $t3, $v0, 0x8000 -/* 052A40 80051E40 15600012 */ bnez $t3, .L80051E8C -/* 052A44 80051E44 30584000 */ andi $t8, $v0, 0x4000 -/* 052A48 80051E48 13000010 */ beqz $t8, .L80051E8C -/* 052A4C 80051E4C 00000000 */ nop -/* 052A50 80051E50 821901D7 */ lb $t9, 0x1d7($s0) -/* 052A54 80051E54 00000000 */ nop -/* 052A58 80051E58 2B210005 */ slti $at, $t9, 5 -/* 052A5C 80051E5C 14200006 */ bnez $at, .L80051E78 -/* 052A60 80051E60 3C01800E */ lui $at, %hi(D_800E668C) # $at, 0x800e -/* 052A64 80051E64 C42B6688 */ lwc1 $f11, %lo(D_800E6688)($at) -/* 052A68 80051E68 C42A668C */ lwc1 $f10, %lo(D_800E668C)($at) -/* 052A6C 80051E6C 46000221 */ cvt.d.s $f8, $f0 -/* 052A70 80051E70 462A4482 */ mul.d $f18, $f8, $f10 -/* 052A74 80051E74 46209020 */ cvt.s.d $f0, $f18 -.L80051E78: -/* 052A78 80051E78 46006100 */ add.s $f4, $f12, $f0 -/* 052A7C 80051E7C 44803000 */ mtc1 $zero, $f6 -/* 052A80 80051E80 E604002C */ swc1 $f4, 0x2c($s0) -/* 052A84 80051E84 C60C002C */ lwc1 $f12, 0x2c($s0) -/* 052A88 80051E88 E60600B8 */ swc1 $f6, 0xb8($s0) -.L80051E8C: -/* 052A8C 80051E8C C60800B8 */ lwc1 $f8, 0xb8($s0) -/* 052A90 80051E90 3C01800E */ lui $at, %hi(D_800E6694) # $at, 0x800e -/* 052A94 80051E94 460E4282 */ mul.s $f10, $f8, $f14 -/* 052A98 80051E98 C4256690 */ lwc1 $f5, %lo(D_800E6690)($at) -/* 052A9C 80051E9C C4246694 */ lwc1 $f4, %lo(D_800E6694)($at) -/* 052AA0 80051EA0 C60800B4 */ lwc1 $f8, 0xb4($s0) -/* 052AA4 80051EA4 460054A1 */ cvt.d.s $f18, $f10 -/* 052AA8 80051EA8 46249182 */ mul.d $f6, $f18, $f4 -/* 052AAC 80051EAC 3C01800E */ lui $at, %hi(D_800E6698) # $at, 0x800e -/* 052AB0 80051EB0 46087282 */ mul.s $f10, $f14, $f8 -/* 052AB4 80051EB4 46203020 */ cvt.s.d $f0, $f6 -/* 052AB8 80051EB8 460A6481 */ sub.s $f18, $f12, $f10 -/* 052ABC 80051EBC 44805000 */ mtc1 $zero, $f10 -/* 052AC0 80051EC0 E612002C */ swc1 $f18, 0x2c($s0) -/* 052AC4 80051EC4 C60C002C */ lwc1 $f12, 0x2c($s0) -/* 052AC8 80051EC8 C424669C */ lwc1 $f4, %lo(D_800E669C)($at) -/* 052ACC 80051ECC C4256698 */ lwc1 $f5, %lo(D_800E6698)($at) -/* 052AD0 80051ED0 460060A1 */ cvt.d.s $f2, $f12 -/* 052AD4 80051ED4 4622203C */ c.lt.d $f4, $f2 -/* 052AD8 80051ED8 00000000 */ nop -/* 052ADC 80051EDC 4500000D */ bc1f .L80051F14 -/* 052AE0 80051EE0 3C01800E */ lui $at, %hi(D_800E66A4) # $at, 0x800e -/* 052AE4 80051EE4 C42766A0 */ lwc1 $f7, %lo(D_800E66A0)($at) -/* 052AE8 80051EE8 C42666A4 */ lwc1 $f6, %lo(D_800E66A4)($at) -/* 052AEC 80051EEC 00000000 */ nop -/* 052AF0 80051EF0 4626103C */ c.lt.d $f2, $f6 -/* 052AF4 80051EF4 00000000 */ nop -/* 052AF8 80051EF8 45000006 */ bc1f .L80051F14 -/* 052AFC 80051EFC 00000000 */ nop -/* 052B00 80051F00 44804000 */ mtc1 $zero, $f8 -/* 052B04 80051F04 00000000 */ nop -/* 052B08 80051F08 E608002C */ swc1 $f8, 0x2c($s0) -/* 052B0C 80051F0C C60C002C */ lwc1 $f12, 0x2c($s0) -/* 052B10 80051F10 00000000 */ nop -.L80051F14: -/* 052B14 80051F14 460A603C */ c.lt.s $f12, $f10 -/* 052B18 80051F18 3C018012 */ lui $at, %hi(D_8011D56C) # $at, 0x8012 -/* 052B1C 80051F1C 4500000D */ bc1f .L80051F54 -/* 052B20 80051F20 00000000 */ nop -/* 052B24 80051F24 46006480 */ add.s $f18, $f12, $f0 -/* 052B28 80051F28 44802000 */ mtc1 $zero, $f4 -/* 052B2C 80051F2C E612002C */ swc1 $f18, 0x2c($s0) -/* 052B30 80051F30 C606002C */ lwc1 $f6, 0x2c($s0) -/* 052B34 80051F34 00000000 */ nop -/* 052B38 80051F38 4606203C */ c.lt.s $f4, $f6 -/* 052B3C 80051F3C 00000000 */ nop -/* 052B40 80051F40 45000010 */ bc1f .L80051F84 -/* 052B44 80051F44 00000000 */ nop -/* 052B48 80051F48 44804000 */ mtc1 $zero, $f8 -/* 052B4C 80051F4C 1000000D */ b .L80051F84 -/* 052B50 80051F50 E608002C */ swc1 $f8, 0x2c($s0) -.L80051F54: -/* 052B54 80051F54 46006281 */ sub.s $f10, $f12, $f0 -/* 052B58 80051F58 44802000 */ mtc1 $zero, $f4 -/* 052B5C 80051F5C E60A002C */ swc1 $f10, 0x2c($s0) -/* 052B60 80051F60 C612002C */ lwc1 $f18, 0x2c($s0) -/* 052B64 80051F64 00000000 */ nop -/* 052B68 80051F68 4604903C */ c.lt.s $f18, $f4 -/* 052B6C 80051F6C 00000000 */ nop -/* 052B70 80051F70 45000004 */ bc1f .L80051F84 -/* 052B74 80051F74 00000000 */ nop -/* 052B78 80051F78 44803000 */ mtc1 $zero, $f6 -/* 052B7C 80051F7C 00000000 */ nop -/* 052B80 80051F80 E606002C */ swc1 $f6, 0x2c($s0) -.L80051F84: -/* 052B84 80051F84 C42ED56C */ lwc1 $f14, %lo(D_8011D56C)($at) -/* 052B88 80051F88 C7AA0084 */ lwc1 $f10, 0x84($sp) -/* 052B8C 80051F8C C4C80020 */ lwc1 $f8, 0x20($a2) -/* 052B90 80051F90 460A7482 */ mul.s $f18, $f14, $f10 -/* 052B94 80051F94 3C0D8012 */ lui $t5, %hi(D_8011D586) # $t5, 0x8012 -/* 052B98 80051F98 3C01800E */ lui $at, %hi(D_800E66AC) # $at, 0x800e -/* 052B9C 80051F9C 46124101 */ sub.s $f4, $f8, $f18 -/* 052BA0 80051FA0 E4C40020 */ swc1 $f4, 0x20($a2) -/* 052BA4 80051FA4 85ADD586 */ lh $t5, %lo(D_8011D586)($t5) -/* 052BA8 80051FA8 00000000 */ nop -/* 052BAC 80051FAC 11A00003 */ beqz $t5, .L80051FBC -/* 052BB0 80051FB0 00000000 */ nop -/* 052BB4 80051FB4 44807000 */ mtc1 $zero, $f14 -/* 052BB8 80051FB8 00000000 */ nop -.L80051FBC: -/* 052BBC 80051FBC C60600B8 */ lwc1 $f6, 0xb8($s0) -/* 052BC0 80051FC0 C42966A8 */ lwc1 $f9, %lo(D_800E66A8)($at) -/* 052BC4 80051FC4 C42866AC */ lwc1 $f8, %lo(D_800E66AC)($at) -/* 052BC8 80051FC8 460032A1 */ cvt.d.s $f10, $f6 -/* 052BCC 80051FCC 4628503C */ c.lt.d $f10, $f8 -/* 052BD0 80051FD0 00000000 */ nop -/* 052BD4 80051FD4 4500003F */ bc1f .L800520D4 -/* 052BD8 80051FD8 00000000 */ nop -/* 052BDC 80051FDC 820C01D7 */ lb $t4, 0x1d7($s0) -/* 052BE0 80051FE0 3C0F8012 */ lui $t7, %hi(D_8011D540) # $t7, 0x8012 -/* 052BE4 80051FE4 29810005 */ slti $at, $t4, 5 -/* 052BE8 80051FE8 1020003A */ beqz $at, .L800520D4 -/* 052BEC 80051FEC 00000000 */ nop -/* 052BF0 80051FF0 8DEFD540 */ lw $t7, %lo(D_8011D540)($t7) -/* 052BF4 80051FF4 00000000 */ nop -/* 052BF8 80051FF8 15E00036 */ bnez $t7, .L800520D4 -/* 052BFC 80051FFC 00000000 */ nop -/* 052C00 80052000 C60C009C */ lwc1 $f12, 0x9c($s0) -/* 052C04 80052004 44802800 */ mtc1 $zero, $f5 -/* 052C08 80052008 44802000 */ mtc1 $zero, $f4 -/* 052C0C 8005200C 460064A1 */ cvt.d.s $f18, $f12 -/* 052C10 80052010 4624903C */ c.lt.d $f18, $f4 -/* 052C14 80052014 3C01800E */ lui $at, %hi(D_800E66B4) # $at, 0x800e -/* 052C18 80052018 45000020 */ bc1f .L8005209C -/* 052C1C 8005201C 46006086 */ mov.s $f2, $f12 -/* 052C20 80052020 C42B66B0 */ lwc1 $f11, %lo(D_800E66B0)($at) -/* 052C24 80052024 C42A66B4 */ lwc1 $f10, %lo(D_800E66B4)($at) -/* 052C28 80052028 46001087 */ neg.s $f2, $f2 -/* 052C2C 8005202C 460011A1 */ cvt.d.s $f6, $f2 -/* 052C30 80052030 462A3201 */ sub.d $f8, $f6, $f10 -/* 052C34 80052034 44809800 */ mtc1 $zero, $f19 -/* 052C38 80052038 462040A0 */ cvt.s.d $f2, $f8 -/* 052C3C 8005203C 44809000 */ mtc1 $zero, $f18 -/* 052C40 80052040 46001021 */ cvt.d.s $f0, $f2 -/* 052C44 80052044 4632003C */ c.lt.d $f0, $f18 -/* 052C48 80052048 3C01800E */ lui $at, %hi(D_800E66BC) # $at, 0x800e -/* 052C4C 8005204C 45000004 */ bc1f .L80052060 -/* 052C50 80052050 00000000 */ nop -/* 052C54 80052054 44801000 */ mtc1 $zero, $f2 -/* 052C58 80052058 00000000 */ nop -/* 052C5C 8005205C 46001021 */ cvt.d.s $f0, $f2 -.L80052060: -/* 052C60 80052060 C42566B8 */ lwc1 $f5, %lo(D_800E66B8)($at) -/* 052C64 80052064 C42466BC */ lwc1 $f4, %lo(D_800E66BC)($at) -/* 052C68 80052068 3C01800E */ lui $at, %hi(D_800E66C0) # $at, 0x800e -/* 052C6C 8005206C 4620203C */ c.lt.d $f4, $f0 -/* 052C70 80052070 00000000 */ nop -/* 052C74 80052074 45000003 */ bc1f .L80052084 -/* 052C78 80052078 00000000 */ nop -/* 052C7C 8005207C C42266C0 */ lwc1 $f2, %lo(D_800E66C0)($at) -/* 052C80 80052080 00000000 */ nop -.L80052084: -/* 052C84 80052084 3C01420C */ li $at, 0x420C0000 # 35.000000 -/* 052C88 80052088 44813000 */ mtc1 $at, $f6 -/* 052C8C 8005208C 00000000 */ nop -/* 052C90 80052090 46061082 */ mul.s $f2, $f2, $f6 -/* 052C94 80052094 10000004 */ b .L800520A8 -/* 052C98 80052098 3C014080 */ lui $at, 0x4080 -.L8005209C: -/* 052C9C 8005209C 44801000 */ mtc1 $zero, $f2 -/* 052CA0 800520A0 00000000 */ nop -/* 052CA4 800520A4 3C014080 */ li $at, 0x40800000 # 4.000000 -.L800520A8: -/* 052CA8 800520A8 44815000 */ mtc1 $at, $f10 -/* 052CAC 800520AC C7A60084 */ lwc1 $f6, 0x84($sp) -/* 052CB0 800520B0 46025201 */ sub.s $f8, $f10, $f2 -/* 052CB4 800520B4 00000000 */ nop -/* 052CB8 800520B8 46086483 */ div.s $f18, $f12, $f8 -/* 052CBC 800520BC C608002C */ lwc1 $f8, 0x2c($s0) -/* 052CC0 800520C0 46127102 */ mul.s $f4, $f14, $f18 -/* 052CC4 800520C4 00000000 */ nop -/* 052CC8 800520C8 46062282 */ mul.s $f10, $f4, $f6 -/* 052CCC 800520CC 460A4480 */ add.s $f18, $f8, $f10 -/* 052CD0 800520D0 E612002C */ swc1 $f18, 0x2c($s0) -.L800520D4: -/* 052CD4 800520D4 3C01800E */ lui $at, %hi(D_800E66CC) # $at, 0x800e -/* 052CD8 800520D8 C606002C */ lwc1 $f6, 0x2c($s0) -/* 052CDC 800520DC C42B66C8 */ lwc1 $f11, %lo(D_800E66C8)($at) -/* 052CE0 800520E0 C42A66CC */ lwc1 $f10, %lo(D_800E66CC)($at) -/* 052CE4 800520E4 46003221 */ cvt.d.s $f8, $f6 -/* 052CE8 800520E8 462A4482 */ mul.d $f18, $f8, $f10 -/* 052CEC 800520EC C6040008 */ lwc1 $f4, 8($s0) -/* 052CF0 800520F0 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 052CF4 800520F4 46002021 */ cvt.d.s $f0, $f4 -/* 052CF8 800520F8 44813800 */ mtc1 $at, $f7 -/* 052CFC 800520FC 46320100 */ add.d $f4, $f0, $f18 -/* 052D00 80052100 44803000 */ mtc1 $zero, $f6 -/* 052D04 80052104 820E01E1 */ lb $t6, 0x1e1($s0) -/* 052D08 80052108 46262202 */ mul.d $f8, $f4, $f6 -/* 052D0C 8005210C 3C0A8012 */ lui $t2, %hi(D_8011D554) # $t2, 0x8012 -/* 052D10 80052110 A20E01E8 */ sb $t6, 0x1e8($s0) -/* 052D14 80052114 820B01E0 */ lb $t3, 0x1e0($s0) -/* 052D18 80052118 46280281 */ sub.d $f10, $f0, $f8 -/* 052D1C 8005211C 462054A0 */ cvt.s.d $f18, $f10 -/* 052D20 80052120 E6120008 */ swc1 $f18, 8($s0) -/* 052D24 80052124 8D4AD554 */ lw $t2, %lo(D_8011D554)($t2) -/* 052D28 80052128 11600013 */ beqz $t3, .L80052178 -/* 052D2C 8005212C AE0A0110 */ sw $t2, 0x110($s0) -/* 052D30 80052130 3C188012 */ lui $t8, %hi(D_8011D55C) # $t8, 0x8012 -/* 052D34 80052134 8F18D55C */ lw $t8, %lo(D_8011D55C)($t8) -/* 052D38 80052138 2401FFFF */ li $at, -1 -/* 052D3C 8005213C 1301000F */ beq $t8, $at, .L8005217C -/* 052D40 80052140 8FBF0024 */ lw $ra, 0x24($sp) -/* 052D44 80052144 920201DC */ lbu $v0, 0x1dc($s0) -/* 052D48 80052148 240100FF */ li $at, 255 -/* 052D4C 8005214C 1041000A */ beq $v0, $at, .L80052178 -/* 052D50 80052150 0002C840 */ sll $t9, $v0, 1 -/* 052D54 80052154 3C0D800E */ lui $t5, 0x800e -/* 052D58 80052158 01B96821 */ addu $t5, $t5, $t9 -/* 052D5C 8005215C 95ADCCCC */ lhu $t5, -0x3334($t5) -/* 052D60 80052160 3C018012 */ lui $at, %hi(D_8011D550) # $at, 0x8012 -/* 052D64 80052164 A42DD550 */ sh $t5, %lo(D_8011D550)($at) -/* 052D68 80052168 820C01E0 */ lb $t4, 0x1e0($s0) -/* 052D6C 8005216C 3C018012 */ lui $at, %hi(D_8011D552) # $at, 0x8012 -/* 052D70 80052170 A42CD552 */ sh $t4, %lo(D_8011D552)($at) -/* 052D74 80052174 A20001E0 */ sb $zero, 0x1e0($s0) -.L80052178: -/* 052D78 80052178 8FBF0024 */ lw $ra, 0x24($sp) -.L8005217C: -/* 052D7C 8005217C 8FB00020 */ lw $s0, 0x20($sp) -/* 052D80 80052180 03E00008 */ jr $ra -/* 052D84 80052184 27BD0078 */ addiu $sp, $sp, 0x78 - -glabel func_80052188 -/* 052D88 80052188 3C038012 */ lui $v1, %hi(D_8011D582) # $v1, 0x8012 -/* 052D8C 8005218C 2463D582 */ addiu $v1, %lo(D_8011D582) # addiu $v1, $v1, -0x2a7e -/* 052D90 80052190 806E0000 */ lb $t6, ($v1) -/* 052D94 80052194 24010002 */ li $at, 2 -/* 052D98 80052198 15C10004 */ bne $t6, $at, .L800521AC -/* 052D9C 8005219C 240F0001 */ li $t7, 1 -/* 052DA0 800521A0 A06F0000 */ sb $t7, ($v1) -/* 052DA4 800521A4 03E00008 */ jr $ra -/* 052DA8 800521A8 24020001 */ li $v0, 1 - -.L800521AC: -/* 052DAC 800521AC 00001025 */ move $v0, $zero -/* 052DB0 800521B0 03E00008 */ jr $ra -/* 052DB4 800521B4 00000000 */ nop - -glabel func_800521B8 -/* 052DB8 800521B8 3C018012 */ lui $at, 0x8012 -/* 052DBC 800521BC 03E00008 */ jr $ra -/* 052DC0 800521C0 A024D582 */ sb $a0, -0x2a7e($at) - -glabel func_800521C4 -/* 052DC4 800521C4 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 052DC8 800521C8 AFBF001C */ sw $ra, 0x1c($sp) -/* 052DCC 800521CC AFB00018 */ sw $s0, 0x18($sp) -/* 052DD0 800521D0 00A08025 */ move $s0, $a1 -/* 052DD4 800521D4 AFA40030 */ sw $a0, 0x30($sp) -/* 052DD8 800521D8 AFA60038 */ sw $a2, 0x38($sp) -/* 052DDC 800521DC 0C008D5A */ jal func_80023568 -/* 052DE0 800521E0 A3A0002B */ sb $zero, 0x2b($sp) -/* 052DE4 800521E4 83A3002B */ lb $v1, 0x2b($sp) -/* 052DE8 800521E8 1040000C */ beqz $v0, .L8005221C -/* 052DEC 800521EC 00000000 */ nop -/* 052DF0 800521F0 0C006EB2 */ jal func_8001BAC8 -/* 052DF4 800521F4 24040001 */ li $a0, 1 -/* 052DF8 800521F8 8FA40030 */ lw $a0, 0x30($sp) -/* 052DFC 800521FC 3C07481C */ lui $a3, (0x481C4000 >> 16) # lui $a3, 0x481c -/* 052E00 80052200 34E74000 */ ori $a3, (0x481C4000 & 0xFFFF) # ori $a3, $a3, 0x4000 -/* 052E04 80052204 02002825 */ move $a1, $s0 -/* 052E08 80052208 0C0148E2 */ jal func_80052388 -/* 052E0C 8005220C 00403025 */ move $a2, $v0 -/* 052E10 80052210 00021E00 */ sll $v1, $v0, 0x18 -/* 052E14 80052214 00037603 */ sra $t6, $v1, 0x18 -/* 052E18 80052218 01C01825 */ move $v1, $t6 -.L8005221C: -/* 052E1C 8005221C 14600013 */ bnez $v1, .L8005226C -/* 052E20 80052220 02002025 */ move $a0, $s0 -/* 052E24 80052224 24050001 */ li $a1, 1 -/* 052E28 80052228 27A60024 */ addiu $a2, $sp, 0x24 -/* 052E2C 8005222C 0C006DEA */ jal func_8001B7A8 -/* 052E30 80052230 A3A3002B */ sb $v1, 0x2b($sp) -/* 052E34 80052234 83A3002B */ lb $v1, 0x2b($sp) -/* 052E38 80052238 1040000C */ beqz $v0, .L8005226C -/* 052E3C 8005223C 00403025 */ move $a2, $v0 -/* 052E40 80052240 3C0F8012 */ lui $t7, %hi(D_8011D540) # $t7, 0x8012 -/* 052E44 80052244 8DEFD540 */ lw $t7, %lo(D_8011D540)($t7) -/* 052E48 80052248 8FA40030 */ lw $a0, 0x30($sp) -/* 052E4C 8005224C 15E00007 */ bnez $t7, .L8005226C -/* 052E50 80052250 02002825 */ move $a1, $s0 -/* 052E54 80052254 3C07481C */ lui $a3, (0x481C4000 >> 16) # lui $a3, 0x481c -/* 052E58 80052258 0C0148E2 */ jal func_80052388 -/* 052E5C 8005225C 34E74000 */ ori $a3, (0x481C4000 & 0xFFFF) # ori $a3, $a3, 0x4000 -/* 052E60 80052260 00021E00 */ sll $v1, $v0, 0x18 -/* 052E64 80052264 0003C603 */ sra $t8, $v1, 0x18 -/* 052E68 80052268 03001825 */ move $v1, $t8 -.L8005226C: -/* 052E6C 8005226C 14600013 */ bnez $v1, .L800522BC -/* 052E70 80052270 02002025 */ move $a0, $s0 -/* 052E74 80052274 2405FFFF */ li $a1, -1 -/* 052E78 80052278 27A60024 */ addiu $a2, $sp, 0x24 -/* 052E7C 8005227C 0C006DEA */ jal func_8001B7A8 -/* 052E80 80052280 A3A3002B */ sb $v1, 0x2b($sp) -/* 052E84 80052284 83A3002B */ lb $v1, 0x2b($sp) -/* 052E88 80052288 1040000C */ beqz $v0, .L800522BC -/* 052E8C 8005228C 00403025 */ move $a2, $v0 -/* 052E90 80052290 3C198012 */ lui $t9, %hi(D_8011D540) # $t9, 0x8012 -/* 052E94 80052294 8F39D540 */ lw $t9, %lo(D_8011D540)($t9) -/* 052E98 80052298 8FA40030 */ lw $a0, 0x30($sp) -/* 052E9C 8005229C 17200007 */ bnez $t9, .L800522BC -/* 052EA0 800522A0 02002825 */ move $a1, $s0 -/* 052EA4 800522A4 3C0746EA */ lui $a3, (0x46EA6000 >> 16) # lui $a3, 0x46ea -/* 052EA8 800522A8 0C0148E2 */ jal func_80052388 -/* 052EAC 800522AC 34E76000 */ ori $a3, (0x46EA6000 & 0xFFFF) # ori $a3, $a3, 0x6000 -/* 052EB0 800522B0 00021E00 */ sll $v1, $v0, 0x18 -/* 052EB4 800522B4 00034603 */ sra $t0, $v1, 0x18 -/* 052EB8 800522B8 01001825 */ move $v1, $t0 -.L800522BC: -/* 052EBC 800522BC 14600020 */ bnez $v1, .L80052340 -/* 052EC0 800522C0 8FBF001C */ lw $ra, 0x1c($sp) -/* 052EC4 800522C4 820901E7 */ lb $t1, 0x1e7($s0) -/* 052EC8 800522C8 240C2800 */ li $t4, 10240 -/* 052ECC 800522CC 312A001F */ andi $t2, $t1, 0x1f -/* 052ED0 800522D0 29410002 */ slti $at, $t2, 2 -/* 052ED4 800522D4 10200019 */ beqz $at, .L8005233C -/* 052ED8 800522D8 3C0144A0 */ li $at, 0x44A00000 # 1280.000000 -/* 052EDC 800522DC 44813000 */ mtc1 $at, $f6 -/* 052EE0 800522E0 C604002C */ lwc1 $f4, 0x2c($s0) -/* 052EE4 800522E4 00000000 */ nop -/* 052EE8 800522E8 46062202 */ mul.s $f8, $f4, $f6 -/* 052EEC 800522EC 444BF800 */ cfc1 $t3, $31 -/* 052EF0 800522F0 00000000 */ nop -/* 052EF4 800522F4 35610003 */ ori $at, $t3, 3 -/* 052EF8 800522F8 38210002 */ xori $at, $at, 2 -/* 052EFC 800522FC 44C1F800 */ ctc1 $at, $31 -/* 052F00 80052300 00000000 */ nop -/* 052F04 80052304 460042A4 */ cvt.w.s $f10, $f8 -/* 052F08 80052308 44055000 */ mfc1 $a1, $f10 -/* 052F0C 8005230C 44CBF800 */ ctc1 $t3, $31 -/* 052F10 80052310 04A10003 */ bgez $a1, .L80052320 -/* 052F14 80052314 28A12801 */ slti $at, $a1, 0x2801 -/* 052F18 80052318 00052823 */ negu $a1, $a1 -/* 052F1C 8005231C 28A12801 */ slti $at, $a1, 0x2801 -.L80052320: -/* 052F20 80052320 14200003 */ bnez $at, .L80052330 -/* 052F24 80052324 01852823 */ subu $a1, $t4, $a1 -/* 052F28 80052328 24052800 */ li $a1, 10240 -/* 052F2C 8005232C 01852823 */ subu $a1, $t4, $a1 -.L80052330: -/* 052F30 80052330 0C01BE53 */ jal func_8006F94C -/* 052F34 80052334 00052023 */ negu $a0, $a1 -/* 052F38 80052338 A602016C */ sh $v0, 0x16c($s0) -.L8005233C: -/* 052F3C 8005233C 8FBF001C */ lw $ra, 0x1c($sp) -.L80052340: -/* 052F40 80052340 8FB00018 */ lw $s0, 0x18($sp) -/* 052F44 80052344 03E00008 */ jr $ra -/* 052F48 80052348 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_8005234C -/* 052F4C 8005234C 8482016C */ lh $v0, 0x16c($a0) -/* 052F50 80052350 00000000 */ nop -/* 052F54 80052354 000270C3 */ sra $t6, $v0, 3 -/* 052F58 80052358 004E7823 */ subu $t7, $v0, $t6 -/* 052F5C 8005235C A48F016C */ sh $t7, 0x16c($a0) -/* 052F60 80052360 8482016C */ lh $v0, 0x16c($a0) -/* 052F64 80052364 00000000 */ nop -/* 052F68 80052368 2841FFF7 */ slti $at, $v0, -9 -/* 052F6C 8005236C 14200004 */ bnez $at, .L80052380 -/* 052F70 80052370 2841000A */ slti $at, $v0, 0xa -/* 052F74 80052374 10200002 */ beqz $at, .L80052380 -/* 052F78 80052378 00000000 */ nop -/* 052F7C 8005237C A480016C */ sh $zero, 0x16c($a0) -.L80052380: -/* 052F80 80052380 03E00008 */ jr $ra -/* 052F84 80052384 00000000 */ nop - -glabel func_80052388 -/* 052F88 80052388 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 052F8C 8005238C AFBF0014 */ sw $ra, 0x14($sp) -/* 052F90 80052390 AFA70034 */ sw $a3, 0x34($sp) -/* 052F94 80052394 C486000C */ lwc1 $f6, 0xc($a0) -/* 052F98 80052398 C4C4000C */ lwc1 $f4, 0xc($a2) -/* 052F9C 8005239C C48A0014 */ lwc1 $f10, 0x14($a0) -/* 052FA0 800523A0 46062301 */ sub.s $f12, $f4, $f6 -/* 052FA4 800523A4 C4C80014 */ lwc1 $f8, 0x14($a2) -/* 052FA8 800523A8 460C6402 */ mul.s $f16, $f12, $f12 -/* 052FAC 800523AC 460A4381 */ sub.s $f14, $f8, $f10 -/* 052FB0 800523B0 C7A60034 */ lwc1 $f6, 0x34($sp) -/* 052FB4 800523B4 00001825 */ move $v1, $zero -/* 052FB8 800523B8 460E7482 */ mul.s $f18, $f14, $f14 -/* 052FBC 800523BC 46128100 */ add.s $f4, $f16, $f18 -/* 052FC0 800523C0 4606203C */ c.lt.s $f4, $f6 -/* 052FC4 800523C4 00000000 */ nop -/* 052FC8 800523C8 4500004D */ bc1f .L80052500 -/* 052FCC 800523CC 8FBF0014 */ lw $ra, 0x14($sp) -/* 052FD0 800523D0 AFA40028 */ sw $a0, 0x28($sp) -/* 052FD4 800523D4 AFA5002C */ sw $a1, 0x2c($sp) -/* 052FD8 800523D8 AFA60030 */ sw $a2, 0x30($sp) -/* 052FDC 800523DC E7AC0020 */ swc1 $f12, 0x20($sp) -/* 052FE0 800523E0 0C01C1D4 */ jal func_80070750 -/* 052FE4 800523E4 E7AE001C */ swc1 $f14, 0x1c($sp) -/* 052FE8 800523E8 8FA40028 */ lw $a0, 0x28($sp) -/* 052FEC 800523EC 34018000 */ li $at, 32768 -/* 052FF0 800523F0 848E0000 */ lh $t6, ($a0) -/* 052FF4 800523F4 8FA5002C */ lw $a1, 0x2c($sp) -/* 052FF8 800523F8 31CFFFFF */ andi $t7, $t6, 0xffff -/* 052FFC 800523FC 004F1823 */ subu $v1, $v0, $t7 -/* 053000 80052400 00611821 */ addu $v1, $v1, $at -/* 053004 80052404 34018001 */ li $at, 32769 -/* 053008 80052408 8FA60030 */ lw $a2, 0x30($sp) -/* 05300C 8005240C C7AC0020 */ lwc1 $f12, 0x20($sp) -/* 053010 80052410 C7AE001C */ lwc1 $f14, 0x1c($sp) -/* 053014 80052414 0061082A */ slt $at, $v1, $at -/* 053018 80052418 14200003 */ bnez $at, .L80052428 -/* 05301C 8005241C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 053020 80052420 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 053024 80052424 00611821 */ addu $v1, $v1, $at -.L80052428: -/* 053028 80052428 28618000 */ slti $at, $v1, -0x8000 -/* 05302C 8005242C 10200002 */ beqz $at, .L80052438 -/* 053030 80052430 3401FFFF */ li $at, 65535 -/* 053034 80052434 00611821 */ addu $v1, $v1, $at -.L80052438: -/* 053038 80052438 28613001 */ slti $at, $v1, 0x3001 -/* 05303C 8005243C 14200003 */ bnez $at, .L8005244C -/* 053040 80052440 2861D000 */ slti $at, $v1, -0x3000 -/* 053044 80052444 24033000 */ li $v1, 12288 -/* 053048 80052448 2861D000 */ slti $at, $v1, -0x3000 -.L8005244C: -/* 05304C 8005244C 10200002 */ beqz $at, .L80052458 -/* 053050 80052450 00000000 */ nop -/* 053054 80052454 2403D000 */ li $v1, -12288 -.L80052458: -/* 053058 80052458 80B801E7 */ lb $t8, 0x1e7($a1) -/* 05305C 8005245C A4A3016C */ sh $v1, 0x16c($a1) -/* 053060 80052460 3319003F */ andi $t9, $t8, 0x3f -/* 053064 80052464 2B21001F */ slti $at, $t9, 0x1f -/* 053068 80052468 10200002 */ beqz $at, .L80052474 -/* 05306C 8005246C 00000000 */ nop -/* 053070 80052470 A4A0016C */ sh $zero, 0x16c($a1) -.L80052474: -/* 053074 80052474 8CC50064 */ lw $a1, 0x64($a2) -/* 053078 80052478 AFA40028 */ sw $a0, 0x28($sp) -/* 05307C 8005247C 0C01C1D4 */ jal func_80070750 -/* 053080 80052480 AFA5002C */ sw $a1, 0x2c($sp) -/* 053084 80052484 8FA40028 */ lw $a0, 0x28($sp) -/* 053088 80052488 34018001 */ li $at, 32769 -/* 05308C 8005248C 84880000 */ lh $t0, ($a0) -/* 053090 80052490 8FA5002C */ lw $a1, 0x2c($sp) -/* 053094 80052494 3109FFFF */ andi $t1, $t0, 0xffff -/* 053098 80052498 00491823 */ subu $v1, $v0, $t1 -/* 05309C 8005249C 0061082A */ slt $at, $v1, $at -/* 0530A0 800524A0 14200003 */ bnez $at, .L800524B0 -/* 0530A4 800524A4 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 0530A8 800524A8 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 0530AC 800524AC 00611821 */ addu $v1, $v1, $at -.L800524B0: -/* 0530B0 800524B0 28618000 */ slti $at, $v1, -0x8000 -/* 0530B4 800524B4 10200002 */ beqz $at, .L800524C0 -/* 0530B8 800524B8 3401FFFF */ li $at, 65535 -/* 0530BC 800524BC 00611821 */ addu $v1, $v1, $at -.L800524C0: -/* 0530C0 800524C0 28613001 */ slti $at, $v1, 0x3001 -/* 0530C4 800524C4 14200003 */ bnez $at, .L800524D4 -/* 0530C8 800524C8 2861D000 */ slti $at, $v1, -0x3000 -/* 0530CC 800524CC 24033000 */ li $v1, 12288 -/* 0530D0 800524D0 2861D000 */ slti $at, $v1, -0x3000 -.L800524D4: -/* 0530D4 800524D4 10200002 */ beqz $at, .L800524E0 -/* 0530D8 800524D8 00000000 */ nop -/* 0530DC 800524DC 2403D000 */ li $v1, -12288 -.L800524E0: -/* 0530E0 800524E0 80AA01E7 */ lb $t2, 0x1e7($a1) -/* 0530E4 800524E4 A4A3016C */ sh $v1, 0x16c($a1) -/* 0530E8 800524E8 314B001F */ andi $t3, $t2, 0x1f -/* 0530EC 800524EC 2961000A */ slti $at, $t3, 0xa -/* 0530F0 800524F0 10200002 */ beqz $at, .L800524FC -/* 0530F4 800524F4 24030001 */ li $v1, 1 -/* 0530F8 800524F8 A4A0016C */ sh $zero, 0x16c($a1) -.L800524FC: -/* 0530FC 800524FC 8FBF0014 */ lw $ra, 0x14($sp) -.L80052500: -/* 053100 80052500 27BD0028 */ addiu $sp, $sp, 0x28 -/* 053104 80052504 03E00008 */ jr $ra -/* 053108 80052508 00601025 */ move $v0, $v1 - -glabel func_8005250C -/* 05310C 8005250C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 053110 80052510 AFBF0024 */ sw $ra, 0x24($sp) -/* 053114 80052514 AFA40028 */ sw $a0, 0x28($sp) -/* 053118 80052518 AFA60030 */ sw $a2, 0x30($sp) -/* 05311C 8005251C 80AE0173 */ lb $t6, 0x173($a1) -/* 053120 80052520 00001825 */ move $v1, $zero -/* 053124 80052524 19C0000F */ blez $t6, .L80052564 -/* 053128 80052528 2404000C */ li $a0, 12 -/* 05312C 8005252C 0C0078A7 */ jal func_8001E29C -/* 053130 80052530 AFA5002C */ sw $a1, 0x2c($sp) -/* 053134 80052534 8FA5002C */ lw $a1, 0x2c($sp) -/* 053138 80052538 00000000 */ nop -/* 05313C 8005253C 80AF0172 */ lb $t7, 0x172($a1) -/* 053140 80052540 80B90174 */ lb $t9, 0x174($a1) -/* 053144 80052544 000FC080 */ sll $t8, $t7, 2 -/* 053148 80052548 030FC021 */ addu $t8, $t8, $t7 -/* 05314C 8005254C 0018C040 */ sll $t8, $t8, 1 -/* 053150 80052550 00194040 */ sll $t0, $t9, 1 -/* 053154 80052554 03084821 */ addu $t1, $t8, $t0 -/* 053158 80052558 01225021 */ addu $t2, $t1, $v0 -/* 05315C 8005255C 81430000 */ lb $v1, ($t2) -/* 053160 80052560 00000000 */ nop -.L80052564: -/* 053164 80052564 3C0B8012 */ lui $t3, %hi(D_8011D52C) # $t3, 0x8012 -/* 053168 80052568 8D6BD52C */ lw $t3, %lo(D_8011D52C)($t3) -/* 05316C 8005256C 24010004 */ li $at, 4 -/* 053170 80052570 316C2000 */ andi $t4, $t3, 0x2000 -/* 053174 80052574 11800006 */ beqz $t4, .L80052590 -/* 053178 80052578 3C09800E */ lui $t1, %hi(D_800DCB98) # $t1, 0x800e -/* 05317C 8005257C 10610004 */ beq $v1, $at, .L80052590 -/* 053180 80052580 24010008 */ li $at, 8 -/* 053184 80052584 10610002 */ beq $v1, $at, .L80052590 -/* 053188 80052588 240D0005 */ li $t5, 5 -/* 05318C 8005258C A0AD01F2 */ sb $t5, 0x1f2($a1) -.L80052590: -/* 053190 80052590 80AE01D3 */ lb $t6, 0x1d3($a1) -/* 053194 80052594 00000000 */ nop -/* 053198 80052598 11C00005 */ beqz $t6, .L800525B0 -/* 05319C 8005259C 00000000 */ nop -/* 0531A0 800525A0 90AF01F3 */ lbu $t7, 0x1f3($a1) -/* 0531A4 800525A4 00000000 */ nop -/* 0531A8 800525A8 35F90004 */ ori $t9, $t7, 4 -/* 0531AC 800525AC A0B901F3 */ sb $t9, 0x1f3($a1) -.L800525B0: -/* 0531B0 800525B0 90B801F3 */ lbu $t8, 0x1f3($a1) -/* 0531B4 800525B4 00000000 */ nop -/* 0531B8 800525B8 33080008 */ andi $t0, $t8, 8 -/* 0531BC 800525BC 11000016 */ beqz $t0, .L80052618 -/* 0531C0 800525C0 24180004 */ li $t8, 4 -/* 0531C4 800525C4 8D29CB98 */ lw $t1, %lo(D_800DCB98)($t1) -/* 0531C8 800525C8 3C0A8012 */ lui $t2, %hi(D_8011D55C) # $t2, 0x8012 -/* 0531CC 800525CC 29210003 */ slti $at, $t1, 3 -/* 0531D0 800525D0 10200010 */ beqz $at, .L80052614 -/* 0531D4 800525D4 00000000 */ nop -/* 0531D8 800525D8 8D4AD55C */ lw $t2, %lo(D_8011D55C)($t2) -/* 0531DC 800525DC 8FAE0028 */ lw $t6, 0x28($sp) -/* 0531E0 800525E0 05400008 */ bltz $t2, .L80052604 -/* 0531E4 800525E4 00000000 */ nop -/* 0531E8 800525E8 8FAB0028 */ lw $t3, 0x28($sp) -/* 0531EC 800525EC 3C010010 */ lui $at, 0x10 -/* 0531F0 800525F0 8D6C0074 */ lw $t4, 0x74($t3) -/* 0531F4 800525F4 00000000 */ nop -/* 0531F8 800525F8 01816825 */ or $t5, $t4, $at -/* 0531FC 800525FC 10000005 */ b .L80052614 -/* 053200 80052600 AD6D0074 */ sw $t5, 0x74($t3) -.L80052604: -/* 053204 80052604 8DCF0074 */ lw $t7, 0x74($t6) -/* 053208 80052608 3C010008 */ lui $at, 8 -/* 05320C 8005260C 01E1C825 */ or $t9, $t7, $at -/* 053210 80052610 ADD90074 */ sw $t9, 0x74($t6) -.L80052614: -/* 053214 80052614 A0B801F2 */ sb $t8, 0x1f2($a1) -.L80052618: -/* 053218 80052618 3C088012 */ lui $t0, %hi(D_8011D540) # $t0, 0x8012 -/* 05321C 8005261C 8D08D540 */ lw $t0, %lo(D_8011D540)($t0) -/* 053220 80052620 00000000 */ nop -/* 053224 80052624 11000003 */ beqz $t0, .L80052634 -/* 053228 80052628 00000000 */ nop -/* 05322C 8005262C A0A001F3 */ sb $zero, 0x1f3($a1) -/* 053230 80052630 A0A001F2 */ sb $zero, 0x1f2($a1) -.L80052634: -/* 053234 80052634 80A901D8 */ lb $t1, 0x1d8($a1) -/* 053238 80052638 24010001 */ li $at, 1 -/* 05323C 8005263C 15210003 */ bne $t1, $at, .L8005264C -/* 053240 80052640 00000000 */ nop -/* 053244 80052644 A0A001F2 */ sb $zero, 0x1f2($a1) -/* 053248 80052648 A0A001F3 */ sb $zero, 0x1f3($a1) -.L8005264C: -/* 05324C 8005264C 90AA01F2 */ lbu $t2, 0x1f2($a1) -/* 053250 80052650 00000000 */ nop -/* 053254 80052654 2D410008 */ sltiu $at, $t2, 8 -/* 053258 80052658 102000C7 */ beqz $at, .L80052978 -/* 05325C 8005265C 000A5080 */ sll $t2, $t2, 2 -/* 053260 80052660 3C01800E */ lui $at, 0x800e -/* 053264 80052664 002A0821 */ addu $at, $at, $t2 -/* 053268 80052668 8C2A66D0 */ lw $t2, 0x66d0($at) -/* 05326C 8005266C 00000000 */ nop -/* 053270 80052670 01400008 */ jr $t2 -/* 053274 80052674 00000000 */ nop -/* 053278 80052678 84AC01A2 */ lh $t4, 0x1a2($a1) -/* 05327C 8005267C 3C018012 */ lui $at, %hi(D_8011D570) # $at, 0x8012 -/* 053280 80052680 000C6823 */ negu $t5, $t4 -/* 053284 80052684 000D5A03 */ sra $t3, $t5, 8 -/* 053288 80052688 448B2000 */ mtc1 $t3, $f4 -/* 05328C 8005268C C428D570 */ lwc1 $f8, %lo(D_8011D570)($at) -/* 053290 80052690 468021A0 */ cvt.s.w $f6, $f4 -/* 053294 80052694 8FA20030 */ lw $v0, 0x30($sp) -/* 053298 80052698 24190028 */ li $t9, 40 -/* 05329C 8005269C 46083283 */ div.s $f10, $f6, $f8 -/* 0532A0 800526A0 8FAE0028 */ lw $t6, 0x28($sp) -/* 0532A4 800526A4 8FAA0028 */ lw $t2, 0x28($sp) -/* 0532A8 800526A8 44809800 */ mtc1 $zero, $f19 -/* 0532AC 800526AC 240D0003 */ li $t5, 3 -/* 0532B0 800526B0 0002C080 */ sll $t8, $v0, 2 -/* 0532B4 800526B4 444FF800 */ cfc1 $t7, $31 -/* 0532B8 800526B8 00000000 */ nop -/* 0532BC 800526BC 35E10003 */ ori $at, $t7, 3 -/* 0532C0 800526C0 38210002 */ xori $at, $at, 2 -/* 0532C4 800526C4 44C1F800 */ ctc1 $at, $31 -/* 0532C8 800526C8 00000000 */ nop -/* 0532CC 800526CC 46005424 */ cvt.w.s $f16, $f10 -/* 0532D0 800526D0 44038000 */ mfc1 $v1, $f16 -/* 0532D4 800526D4 44CFF800 */ ctc1 $t7, $31 -/* 0532D8 800526D8 03231823 */ subu $v1, $t9, $v1 -/* 0532DC 800526DC 04610002 */ bgez $v1, .L800526E8 -/* 0532E0 800526E0 3C0F8012 */ lui $t7, %hi(D_8011D528) # $t7, 0x8012 -/* 0532E4 800526E4 00001825 */ move $v1, $zero -.L800526E8: -/* 0532E8 800526E8 2861004A */ slti $at, $v1, 0x4a -/* 0532EC 800526EC 14200002 */ bnez $at, .L800526F8 -/* 0532F0 800526F0 00000000 */ nop -/* 0532F4 800526F4 24030049 */ li $v1, 73 -.L800526F8: -/* 0532F8 800526F8 85C60018 */ lh $a2, 0x18($t6) -/* 0532FC 800526FC 00000000 */ nop -/* 053300 80052700 00662023 */ subu $a0, $v1, $a2 -/* 053304 80052704 18800006 */ blez $a0, .L80052720 -/* 053308 80052708 00001825 */ move $v1, $zero -/* 05330C 8005270C 03021823 */ subu $v1, $t8, $v0 -/* 053310 80052710 0083082A */ slt $at, $a0, $v1 -/* 053314 80052714 10200002 */ beqz $at, .L80052720 -/* 053318 80052718 00000000 */ nop -/* 05331C 8005271C 00801825 */ move $v1, $a0 -.L80052720: -/* 053320 80052720 0481000B */ bgez $a0, .L80052750 -/* 053324 80052724 00C34821 */ addu $t1, $a2, $v1 -/* 053328 80052728 8FA20030 */ lw $v0, 0x30($sp) -/* 05332C 8005272C 00000000 */ nop -/* 053330 80052730 00020823 */ negu $at, $v0 -/* 053334 80052734 00014080 */ sll $t0, $at, 2 -/* 053338 80052738 01011823 */ subu $v1, $t0, $at -/* 05333C 8005273C 0064082A */ slt $at, $v1, $a0 -/* 053340 80052740 10200003 */ beqz $at, .L80052750 -/* 053344 80052744 00C34821 */ addu $t1, $a2, $v1 -/* 053348 80052748 00801825 */ move $v1, $a0 -/* 05334C 8005274C 00C34821 */ addu $t1, $a2, $v1 -.L80052750: -/* 053350 80052750 A5490018 */ sh $t1, 0x18($t2) -/* 053354 80052754 A140003B */ sb $zero, 0x3b($t2) -/* 053358 80052758 90A201F3 */ lbu $v0, 0x1f3($a1) -/* 05335C 8005275C 00000000 */ nop -/* 053360 80052760 304C0004 */ andi $t4, $v0, 4 -/* 053364 80052764 11800003 */ beqz $t4, .L80052774 -/* 053368 80052768 304BFFFB */ andi $t3, $v0, 0xfffb -/* 05336C 8005276C A0AD01F2 */ sb $t5, 0x1f2($a1) -/* 053370 80052770 A0AB01F3 */ sb $t3, 0x1f3($a1) -.L80052774: -/* 053374 80052774 C4A4002C */ lwc1 $f4, 0x2c($a1) -/* 053378 80052778 44809000 */ mtc1 $zero, $f18 -/* 05337C 8005277C 460021A1 */ cvt.d.s $f6, $f4 -/* 053380 80052780 4626903C */ c.lt.d $f18, $f6 -/* 053384 80052784 00000000 */ nop -/* 053388 80052788 4500007C */ bc1f .L8005297C -/* 05338C 8005278C 8FBF0024 */ lw $ra, 0x24($sp) -/* 053390 80052790 8DEFD528 */ lw $t7, %lo(D_8011D528)($t7) -/* 053394 80052794 240E0006 */ li $t6, 6 -/* 053398 80052798 31F94000 */ andi $t9, $t7, 0x4000 -/* 05339C 8005279C 13200077 */ beqz $t9, .L8005297C -/* 0533A0 800527A0 8FBF0024 */ lw $ra, 0x24($sp) -/* 0533A4 800527A4 10000074 */ b .L80052978 -/* 0533A8 800527A8 A0AE01F2 */ sb $t6, 0x1f2($a1) -/* 0533AC 800527AC 90B801F3 */ lbu $t8, 0x1f3($a1) -/* 0533B0 800527B0 8FA40028 */ lw $a0, 0x28($sp) -/* 0533B4 800527B4 33080004 */ andi $t0, $t8, 4 -/* 0533B8 800527B8 11000002 */ beqz $t0, .L800527C4 -/* 0533BC 800527BC 24020002 */ li $v0, 2 -/* 0533C0 800527C0 24020006 */ li $v0, 6 -.L800527C4: -/* 0533C4 800527C4 8FAC0030 */ lw $t4, 0x30($sp) -/* 0533C8 800527C8 24090020 */ li $t1, 32 -/* 0533CC 800527CC 240A0004 */ li $t2, 4 -/* 0533D0 800527D0 AFAA0014 */ sw $t2, 0x14($sp) -/* 0533D4 800527D4 AFA90010 */ sw $t1, 0x10($sp) -/* 0533D8 800527D8 24060002 */ li $a2, 2 -/* 0533DC 800527DC 00003825 */ move $a3, $zero -/* 0533E0 800527E0 AFA20018 */ sw $v0, 0x18($sp) -/* 0533E4 800527E4 AFA5002C */ sw $a1, 0x2c($sp) -/* 0533E8 800527E8 0C014A62 */ jal func_80052988 -/* 0533EC 800527EC AFAC001C */ sw $t4, 0x1c($sp) -/* 0533F0 800527F0 8FA5002C */ lw $a1, 0x2c($sp) -/* 0533F4 800527F4 00000000 */ nop -/* 0533F8 800527F8 90AD01F3 */ lbu $t5, 0x1f3($a1) -/* 0533FC 800527FC 00000000 */ nop -/* 053400 80052800 31ABFFFB */ andi $t3, $t5, 0xfffb -/* 053404 80052804 1000005C */ b .L80052978 -/* 053408 80052808 A0AB01F3 */ sb $t3, 0x1f3($a1) -/* 05340C 8005280C 8FAE0030 */ lw $t6, 0x30($sp) -/* 053410 80052810 8FA40028 */ lw $a0, 0x28($sp) -/* 053414 80052814 240F0020 */ li $t7, 32 -/* 053418 80052818 24190002 */ li $t9, 2 -/* 05341C 8005281C AFB90014 */ sw $t9, 0x14($sp) -/* 053420 80052820 AFAF0010 */ sw $t7, 0x10($sp) -/* 053424 80052824 24060003 */ li $a2, 3 -/* 053428 80052828 00003825 */ move $a3, $zero -/* 05342C 8005282C AFA00018 */ sw $zero, 0x18($sp) -/* 053430 80052830 AFA5002C */ sw $a1, 0x2c($sp) -/* 053434 80052834 0C014A62 */ jal func_80052988 -/* 053438 80052838 AFAE001C */ sw $t6, 0x1c($sp) -/* 05343C 8005283C 8FA5002C */ lw $a1, 0x2c($sp) -/* 053440 80052840 00000000 */ nop -/* 053444 80052844 90B801F3 */ lbu $t8, 0x1f3($a1) -/* 053448 80052848 00000000 */ nop -/* 05344C 8005284C 3308FFF7 */ andi $t0, $t8, 0xfff7 -/* 053450 80052850 10000049 */ b .L80052978 -/* 053454 80052854 A0A801F3 */ sb $t0, 0x1f3($a1) -/* 053458 80052858 3C098012 */ lui $t1, %hi(D_8011D528) # $t1, 0x8012 -/* 05345C 8005285C 8D29D528 */ lw $t1, %lo(D_8011D528)($t1) -/* 053460 80052860 8FA40028 */ lw $a0, 0x28($sp) -/* 053464 80052864 312A2000 */ andi $t2, $t1, 0x2000 -/* 053468 80052868 11400002 */ beqz $t2, .L80052874 -/* 05346C 8005286C 24020002 */ li $v0, 2 -/* 053470 80052870 24020006 */ li $v0, 6 -.L80052874: -/* 053474 80052874 8FAB0030 */ lw $t3, 0x30($sp) -/* 053478 80052878 240C0030 */ li $t4, 48 -/* 05347C 8005287C 240D0004 */ li $t5, 4 -/* 053480 80052880 AFAD0014 */ sw $t5, 0x14($sp) -/* 053484 80052884 AFAC0010 */ sw $t4, 0x10($sp) -/* 053488 80052888 24060004 */ li $a2, 4 -/* 05348C 8005288C 00003825 */ move $a3, $zero -/* 053490 80052890 AFA20018 */ sw $v0, 0x18($sp) -/* 053494 80052894 0C014A62 */ jal func_80052988 -/* 053498 80052898 AFAB001C */ sw $t3, 0x1c($sp) -/* 05349C 8005289C 10000037 */ b .L8005297C -/* 0534A0 800528A0 8FBF0024 */ lw $ra, 0x24($sp) -/* 0534A4 800528A4 C4AA002C */ lwc1 $f10, 0x2c($a1) -/* 0534A8 800528A8 44804800 */ mtc1 $zero, $f9 -/* 0534AC 800528AC 44804000 */ mtc1 $zero, $f8 -/* 0534B0 800528B0 46005421 */ cvt.d.s $f16, $f10 -/* 0534B4 800528B4 4630403C */ c.lt.d $f8, $f16 -/* 0534B8 800528B8 8FA40028 */ lw $a0, 0x28($sp) -/* 0534BC 800528BC 45000008 */ bc1f .L800528E0 -/* 0534C0 800528C0 24020003 */ li $v0, 3 -/* 0534C4 800528C4 3C0F8012 */ lui $t7, %hi(D_8011D528) # $t7, 0x8012 -/* 0534C8 800528C8 8DEFD528 */ lw $t7, %lo(D_8011D528)($t7) -/* 0534CC 800528CC 00000000 */ nop -/* 0534D0 800528D0 31F94000 */ andi $t9, $t7, 0x4000 -/* 0534D4 800528D4 13200003 */ beqz $t9, .L800528E4 -/* 0534D8 800528D8 8FA80030 */ lw $t0, 0x30($sp) -/* 0534DC 800528DC 24020007 */ li $v0, 7 -.L800528E0: -/* 0534E0 800528E0 8FA80030 */ lw $t0, 0x30($sp) -.L800528E4: -/* 0534E4 800528E4 240E0050 */ li $t6, 80 -/* 0534E8 800528E8 24180003 */ li $t8, 3 -/* 0534EC 800528EC AFB80014 */ sw $t8, 0x14($sp) -/* 0534F0 800528F0 AFAE0010 */ sw $t6, 0x10($sp) -/* 0534F4 800528F4 24060001 */ li $a2, 1 -/* 0534F8 800528F8 00003825 */ move $a3, $zero -/* 0534FC 800528FC AFA20018 */ sw $v0, 0x18($sp) -/* 053500 80052900 0C014A62 */ jal func_80052988 -/* 053504 80052904 AFA8001C */ sw $t0, 0x1c($sp) -/* 053508 80052908 1000001C */ b .L8005297C -/* 05350C 8005290C 8FBF0024 */ lw $ra, 0x24($sp) -/* 053510 80052910 8FAC0030 */ lw $t4, 0x30($sp) -/* 053514 80052914 8FA40028 */ lw $a0, 0x28($sp) -/* 053518 80052918 24090060 */ li $t1, 96 -/* 05351C 8005291C 240A0004 */ li $t2, 4 -/* 053520 80052920 AFAA0014 */ sw $t2, 0x14($sp) -/* 053524 80052924 AFA90010 */ sw $t1, 0x10($sp) -/* 053528 80052928 24060005 */ li $a2, 5 -/* 05352C 8005292C 00003825 */ move $a3, $zero -/* 053530 80052930 AFA00018 */ sw $zero, 0x18($sp) -/* 053534 80052934 AFA5002C */ sw $a1, 0x2c($sp) -/* 053538 80052938 0C014A62 */ jal func_80052988 -/* 05353C 8005293C AFAC001C */ sw $t4, 0x1c($sp) -/* 053540 80052940 8FA5002C */ lw $a1, 0x2c($sp) -/* 053544 80052944 8FA40028 */ lw $a0, 0x28($sp) -/* 053548 80052948 90AD01F2 */ lbu $t5, 0x1f2($a1) -/* 05354C 8005294C 24060005 */ li $a2, 5 -/* 053550 80052950 15A00009 */ bnez $t5, .L80052978 -/* 053554 80052954 00003825 */ move $a3, $zero -/* 053558 80052958 8FB90030 */ lw $t9, 0x30($sp) -/* 05355C 8005295C 240B0060 */ li $t3, 96 -/* 053560 80052960 240F0004 */ li $t7, 4 -/* 053564 80052964 AFAF0014 */ sw $t7, 0x14($sp) -/* 053568 80052968 AFAB0010 */ sw $t3, 0x10($sp) -/* 05356C 8005296C AFA00018 */ sw $zero, 0x18($sp) -/* 053570 80052970 0C014A62 */ jal func_80052988 -/* 053574 80052974 AFB9001C */ sw $t9, 0x1c($sp) -.L80052978: -/* 053578 80052978 8FBF0024 */ lw $ra, 0x24($sp) -.L8005297C: -/* 05357C 8005297C 27BD0028 */ addiu $sp, $sp, 0x28 -/* 053580 80052980 03E00008 */ jr $ra -/* 053584 80052984 00000000 */ nop - -glabel func_80052988 -/* 053588 80052988 8FAE0014 */ lw $t6, 0x14($sp) -/* 05358C 8005298C 8FAF001C */ lw $t7, 0x1c($sp) -/* 053590 80052990 3C198012 */ lui $t9, %hi(D_8011D55C) # $t9, 0x8012 -/* 053594 80052994 01CF0019 */ multu $t6, $t7 -/* 053598 80052998 8F39D55C */ lw $t9, %lo(D_8011D55C)($t9) -/* 05359C 8005299C 2401FFFF */ li $at, -1 -/* 0535A0 800529A0 0000C012 */ mflo $t8 -/* 0535A4 800529A4 AFB80014 */ sw $t8, 0x14($sp) -/* 0535A8 800529A8 17210006 */ bne $t9, $at, .L800529C4 -/* 0535AC 800529AC 28C10003 */ slti $at, $a2, 3 -/* 0535B0 800529B0 14200004 */ bnez $at, .L800529C4 -/* 0535B4 800529B4 00000000 */ nop -/* 0535B8 800529B8 A080003B */ sb $zero, 0x3b($a0) -/* 0535BC 800529BC 03E00008 */ jr $ra -/* 0535C0 800529C0 A0A001F2 */ sb $zero, 0x1f2($a1) - -.L800529C4: -/* 0535C4 800529C4 8082003B */ lb $v0, 0x3b($a0) -/* 0535C8 800529C8 00000000 */ nop -/* 0535CC 800529CC 14400029 */ bnez $v0, .L80052A74 -/* 0535D0 800529D0 00000000 */ nop -/* 0535D4 800529D4 8FA20018 */ lw $v0, 0x18($sp) -/* 0535D8 800529D8 00000000 */ nop -/* 0535DC 800529DC 30480001 */ andi $t0, $v0, 1 -/* 0535E0 800529E0 1100001D */ beqz $t0, .L80052A58 -/* 0535E4 800529E4 00000000 */ nop -/* 0535E8 800529E8 84820018 */ lh $v0, 0x18($a0) -/* 0535EC 800529EC 8FAD001C */ lw $t5, 0x1c($sp) -/* 0535F0 800529F0 28410029 */ slti $at, $v0, 0x29 -/* 0535F4 800529F4 1420000E */ bnez $at, .L80052A30 -/* 0535F8 800529F8 000D7080 */ sll $t6, $t5, 2 -/* 0535FC 800529FC 8FA9001C */ lw $t1, 0x1c($sp) -/* 053600 80052A00 00000000 */ nop -/* 053604 80052A04 00095080 */ sll $t2, $t1, 2 -/* 053608 80052A08 004A5823 */ subu $t3, $v0, $t2 -/* 05360C 80052A0C A48B0018 */ sh $t3, 0x18($a0) -/* 053610 80052A10 848C0018 */ lh $t4, 0x18($a0) -/* 053614 80052A14 00000000 */ nop -/* 053618 80052A18 29810029 */ slti $at, $t4, 0x29 -/* 05361C 80052A1C 1020004F */ beqz $at, .L80052B5C -/* 053620 80052A20 00000000 */ nop -/* 053624 80052A24 A086003B */ sb $a2, 0x3b($a0) -/* 053628 80052A28 03E00008 */ jr $ra -/* 05362C 80052A2C A4870018 */ sh $a3, 0x18($a0) - -.L80052A30: -/* 053630 80052A30 004E7821 */ addu $t7, $v0, $t6 -/* 053634 80052A34 A48F0018 */ sh $t7, 0x18($a0) -/* 053638 80052A38 84980018 */ lh $t8, 0x18($a0) -/* 05363C 80052A3C 00000000 */ nop -/* 053640 80052A40 2B010028 */ slti $at, $t8, 0x28 -/* 053644 80052A44 14200045 */ bnez $at, .L80052B5C -/* 053648 80052A48 00000000 */ nop -/* 05364C 80052A4C A086003B */ sb $a2, 0x3b($a0) -/* 053650 80052A50 03E00008 */ jr $ra -/* 053654 80052A54 A4870018 */ sh $a3, 0x18($a0) - -.L80052A58: -/* 053658 80052A58 A086003B */ sb $a2, 0x3b($a0) -/* 05365C 80052A5C A4870018 */ sh $a3, 0x18($a0) -/* 053660 80052A60 90B901F3 */ lbu $t9, 0x1f3($a1) -/* 053664 80052A64 00000000 */ nop -/* 053668 80052A68 3328FF7F */ andi $t0, $t9, 0xff7f -/* 05366C 80052A6C 03E00008 */ jr $ra -/* 053670 80052A70 A0A801F3 */ sb $t0, 0x1f3($a1) - -.L80052A74: -/* 053674 80052A74 14C20037 */ bne $a2, $v0, .L80052B54 -/* 053678 80052A78 00000000 */ nop -/* 05367C 80052A7C 8FA20018 */ lw $v0, 0x18($sp) -/* 053680 80052A80 8FB80014 */ lw $t8, 0x14($sp) -/* 053684 80052A84 30490002 */ andi $t1, $v0, 2 -/* 053688 80052A88 11200024 */ beqz $t1, .L80052B1C -/* 05368C 80052A8C 00000000 */ nop -/* 053690 80052A90 90AA01F3 */ lbu $t2, 0x1f3($a1) -/* 053694 80052A94 8FA80014 */ lw $t0, 0x14($sp) -/* 053698 80052A98 314B0080 */ andi $t3, $t2, 0x80 -/* 05369C 80052A9C 1160000F */ beqz $t3, .L80052ADC -/* 0536A0 80052AA0 00000000 */ nop -/* 0536A4 80052AA4 848C0018 */ lh $t4, 0x18($a0) -/* 0536A8 80052AA8 8FAD0014 */ lw $t5, 0x14($sp) -/* 0536AC 80052AAC 24180028 */ li $t8, 40 -/* 0536B0 80052AB0 018D7023 */ subu $t6, $t4, $t5 -/* 0536B4 80052AB4 A48E0018 */ sh $t6, 0x18($a0) -/* 0536B8 80052AB8 848F0018 */ lh $t7, 0x18($a0) -/* 0536BC 80052ABC 00000000 */ nop -/* 0536C0 80052AC0 1DE00026 */ bgtz $t7, .L80052B5C -/* 0536C4 80052AC4 00000000 */ nop -/* 0536C8 80052AC8 A080003B */ sb $zero, 0x3b($a0) -/* 0536CC 80052ACC A0A001F2 */ sb $zero, 0x1f2($a1) -/* 0536D0 80052AD0 A4980018 */ sh $t8, 0x18($a0) -/* 0536D4 80052AD4 03E00008 */ jr $ra -/* 0536D8 80052AD8 A0A001F3 */ sb $zero, 0x1f3($a1) - -.L80052ADC: -/* 0536DC 80052ADC 84990018 */ lh $t9, 0x18($a0) -/* 0536E0 80052AE0 8FA30010 */ lw $v1, 0x10($sp) -/* 0536E4 80052AE4 03284821 */ addu $t1, $t9, $t0 -/* 0536E8 80052AE8 A4890018 */ sh $t1, 0x18($a0) -/* 0536EC 80052AEC 848A0018 */ lh $t2, 0x18($a0) -/* 0536F0 80052AF0 304C0004 */ andi $t4, $v0, 4 -/* 0536F4 80052AF4 0143082A */ slt $at, $t2, $v1 -/* 0536F8 80052AF8 14200018 */ bnez $at, .L80052B5C -/* 0536FC 80052AFC 246BFFFF */ addiu $t3, $v1, -1 -/* 053700 80052B00 15800016 */ bnez $t4, .L80052B5C -/* 053704 80052B04 A48B0018 */ sh $t3, 0x18($a0) -/* 053708 80052B08 90AD01F3 */ lbu $t5, 0x1f3($a1) -/* 05370C 80052B0C 00000000 */ nop -/* 053710 80052B10 35AE0080 */ ori $t6, $t5, 0x80 -/* 053714 80052B14 03E00008 */ jr $ra -/* 053718 80052B18 A0AE01F3 */ sb $t6, 0x1f3($a1) - -.L80052B1C: -/* 05371C 80052B1C 848F0018 */ lh $t7, 0x18($a0) -/* 053720 80052B20 8FA30010 */ lw $v1, 0x10($sp) -/* 053724 80052B24 01F8C821 */ addu $t9, $t7, $t8 -/* 053728 80052B28 A4990018 */ sh $t9, 0x18($a0) -/* 05372C 80052B2C 84880018 */ lh $t0, 0x18($a0) -/* 053730 80052B30 24090028 */ li $t1, 40 -/* 053734 80052B34 0103082A */ slt $at, $t0, $v1 -/* 053738 80052B38 14200008 */ bnez $at, .L80052B5C -/* 05373C 80052B3C 00000000 */ nop -/* 053740 80052B40 A080003B */ sb $zero, 0x3b($a0) -/* 053744 80052B44 A0A001F2 */ sb $zero, 0x1f2($a1) -/* 053748 80052B48 A4890018 */ sh $t1, 0x18($a0) -/* 05374C 80052B4C 03E00008 */ jr $ra -/* 053750 80052B50 A0A001F3 */ sb $zero, 0x1f3($a1) - -.L80052B54: -/* 053754 80052B54 A4870018 */ sh $a3, 0x18($a0) -/* 053758 80052B58 A086003B */ sb $a2, 0x3b($a0) -.L80052B5C: -/* 05375C 80052B5C 03E00008 */ jr $ra -/* 053760 80052B60 00000000 */ nop - -glabel func_80052B64 -/* 053764 80052B64 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 053768 80052B68 AFBF001C */ sw $ra, 0x1c($sp) -/* 05376C 80052B6C AFB00018 */ sw $s0, 0x18($sp) -/* 053770 80052B70 AFA50024 */ sw $a1, 0x24($sp) -/* 053774 80052B74 AFA7002C */ sw $a3, 0x2c($sp) -/* 053778 80052B78 3C01800E */ lui $at, %hi(D_800E66F4) # $at, 0x800e -/* 05377C 80052B7C C4A4002C */ lwc1 $f4, 0x2c($a1) -/* 053780 80052B80 C42966F0 */ lwc1 $f9, %lo(D_800E66F0)($at) -/* 053784 80052B84 C42866F4 */ lwc1 $f8, %lo(D_800E66F4)($at) -/* 053788 80052B88 460021A1 */ cvt.d.s $f6, $f4 -/* 05378C 80052B8C 46283282 */ mul.d $f10, $f6, $f8 -/* 053790 80052B90 44809000 */ mtc1 $zero, $f18 -/* 053794 80052B94 80AE01D8 */ lb $t6, 0x1d8($a1) -/* 053798 80052B98 00A03825 */ move $a3, $a1 -/* 05379C 80052B9C 00808025 */ move $s0, $a0 -/* 0537A0 80052BA0 46205420 */ cvt.s.d $f16, $f10 -/* 0537A4 80052BA4 E4B20030 */ swc1 $f18, 0x30($a1) -/* 0537A8 80052BA8 15C00009 */ bnez $t6, .L80052BD0 -/* 0537AC 80052BAC E4B0002C */ swc1 $f16, 0x2c($a1) -/* 0537B0 80052BB0 84A40000 */ lh $a0, ($a1) -/* 0537B4 80052BB4 AFA70024 */ sw $a3, 0x24($sp) -/* 0537B8 80052BB8 AFA60028 */ sw $a2, 0x28($sp) -/* 0537BC 80052BBC 0C01C8D2 */ jal func_80072348 -/* 0537C0 80052BC0 00002825 */ move $a1, $zero -/* 0537C4 80052BC4 8FA60028 */ lw $a2, 0x28($sp) -/* 0537C8 80052BC8 8FA70024 */ lw $a3, 0x24($sp) -/* 0537CC 80052BCC 00000000 */ nop -.L80052BD0: -/* 0537D0 80052BD0 3C0F8012 */ lui $t7, %hi(D_8011D55C) # $t7, 0x8012 -/* 0537D4 80052BD4 8DEFD55C */ lw $t7, %lo(D_8011D55C)($t7) -/* 0537D8 80052BD8 84E301A2 */ lh $v1, 0x1a2($a3) -/* 0537DC 80052BDC 05E0001E */ bltz $t7, .L80052C58 -/* 0537E0 80052BE0 3C18800E */ lui $t8, %hi(D_800DCB98) # $t8, 0x800e -/* 0537E4 80052BE4 8F18CB98 */ lw $t8, %lo(D_800DCB98)($t8) -/* 0537E8 80052BE8 00000000 */ nop -/* 0537EC 80052BEC 2B010003 */ slti $at, $t8, 3 -/* 0537F0 80052BF0 10200007 */ beqz $at, .L80052C10 -/* 0537F4 80052BF4 00000000 */ nop -/* 0537F8 80052BF8 8E190074 */ lw $t9, 0x74($s0) -/* 0537FC 80052BFC 3C010004 */ lui $at, (0x0004FC00 >> 16) # lui $at, 4 -/* 053800 80052C00 3421FC00 */ ori $at, (0x0004FC00 & 0xFFFF) # ori $at, $at, 0xfc00 -/* 053804 80052C04 03214025 */ or $t0, $t9, $at -/* 053808 80052C08 10000013 */ b .L80052C58 -/* 05380C 80052C0C AE080074 */ sw $t0, 0x74($s0) -.L80052C10: -/* 053810 80052C10 90E201DE */ lbu $v0, 0x1de($a3) -/* 053814 80052C14 240B0001 */ li $t3, 1 -/* 053818 80052C18 284100FF */ slti $at, $v0, 0xff -/* 05381C 80052C1C 10200005 */ beqz $at, .L80052C34 -/* 053820 80052C20 00025040 */ sll $t2, $v0, 1 -/* 053824 80052C24 8E090074 */ lw $t1, 0x74($s0) -/* 053828 80052C28 014B6004 */ sllv $t4, $t3, $t2 -/* 05382C 80052C2C 012C6825 */ or $t5, $t1, $t4 -/* 053830 80052C30 AE0D0074 */ sw $t5, 0x74($s0) -.L80052C34: -/* 053834 80052C34 90E201DF */ lbu $v0, 0x1df($a3) -/* 053838 80052C38 24180002 */ li $t8, 2 -/* 05383C 80052C3C 284100FF */ slti $at, $v0, 0xff -/* 053840 80052C40 10200005 */ beqz $at, .L80052C58 -/* 053844 80052C44 00027840 */ sll $t7, $v0, 1 -/* 053848 80052C48 8E0E0074 */ lw $t6, 0x74($s0) -/* 05384C 80052C4C 01F8C804 */ sllv $t9, $t8, $t7 -/* 053850 80052C50 01D94025 */ or $t0, $t6, $t9 -/* 053854 80052C54 AE080074 */ sw $t0, 0x74($s0) -.L80052C58: -/* 053858 80052C58 80E201DB */ lb $v0, 0x1db($a3) -/* 05385C 80052C5C 00065080 */ sll $t2, $a2, 2 -/* 053860 80052C60 1840001A */ blez $v0, .L80052CCC -/* 053864 80052C64 01465021 */ addu $t2, $t2, $a2 -/* 053868 80052C68 84EB01A2 */ lh $t3, 0x1a2($a3) -/* 05386C 80052C6C 000A5200 */ sll $t2, $t2, 8 -/* 053870 80052C70 016A4821 */ addu $t1, $t3, $t2 -/* 053874 80052C74 A4E901A2 */ sh $t1, 0x1a2($a3) -/* 053878 80052C78 84EC01A2 */ lh $t4, 0x1a2($a3) -/* 05387C 80052C7C 00000000 */ nop -/* 053880 80052C80 1980002D */ blez $t4, .L80052D38 -/* 053884 80052C84 00000000 */ nop -/* 053888 80052C88 0461002B */ bgez $v1, .L80052D38 -/* 05388C 80052C8C 00000000 */ nop -/* 053890 80052C90 80ED01DB */ lb $t5, 0x1db($a3) -/* 053894 80052C94 3C0F8012 */ lui $t7, %hi(D_8011D534) # $t7, 0x8012 -/* 053898 80052C98 25B8FFFF */ addiu $t8, $t5, -1 -/* 05389C 80052C9C A0F801DB */ sb $t8, 0x1db($a3) -/* 0538A0 80052CA0 8DEFD534 */ lw $t7, %lo(D_8011D534)($t7) -/* 0538A4 80052CA4 00000000 */ nop -/* 0538A8 80052CA8 29E10033 */ slti $at, $t7, 0x33 -/* 0538AC 80052CAC 14200022 */ bnez $at, .L80052D38 -/* 0538B0 80052CB0 00000000 */ nop -/* 0538B4 80052CB4 80EE01DB */ lb $t6, 0x1db($a3) -/* 0538B8 80052CB8 24010001 */ li $at, 1 -/* 0538BC 80052CBC 15C1001E */ bne $t6, $at, .L80052D38 -/* 0538C0 80052CC0 00000000 */ nop -/* 0538C4 80052CC4 1000001C */ b .L80052D38 -/* 0538C8 80052CC8 A0E001DB */ sb $zero, 0x1db($a3) -.L80052CCC: -/* 0538CC 80052CCC 0441001A */ bgez $v0, .L80052D38 -/* 0538D0 80052CD0 00064080 */ sll $t0, $a2, 2 -/* 0538D4 80052CD4 84F901A2 */ lh $t9, 0x1a2($a3) -/* 0538D8 80052CD8 01064021 */ addu $t0, $t0, $a2 -/* 0538DC 80052CDC 00084200 */ sll $t0, $t0, 8 -/* 0538E0 80052CE0 03285823 */ subu $t3, $t9, $t0 -/* 0538E4 80052CE4 A4EB01A2 */ sh $t3, 0x1a2($a3) -/* 0538E8 80052CE8 84EA01A2 */ lh $t2, 0x1a2($a3) -/* 0538EC 80052CEC 00000000 */ nop -/* 0538F0 80052CF0 05410011 */ bgez $t2, .L80052D38 -/* 0538F4 80052CF4 00000000 */ nop -/* 0538F8 80052CF8 1860000F */ blez $v1, .L80052D38 -/* 0538FC 80052CFC 00000000 */ nop -/* 053900 80052D00 80E901DB */ lb $t1, 0x1db($a3) -/* 053904 80052D04 3C0D8012 */ lui $t5, %hi(D_8011D534) # $t5, 0x8012 -/* 053908 80052D08 252C0001 */ addiu $t4, $t1, 1 -/* 05390C 80052D0C A0EC01DB */ sb $t4, 0x1db($a3) -/* 053910 80052D10 8DADD534 */ lw $t5, %lo(D_8011D534)($t5) -/* 053914 80052D14 00000000 */ nop -/* 053918 80052D18 29A1FFCE */ slti $at, $t5, -0x32 -/* 05391C 80052D1C 10200006 */ beqz $at, .L80052D38 -/* 053920 80052D20 00000000 */ nop -/* 053924 80052D24 80F801DB */ lb $t8, 0x1db($a3) -/* 053928 80052D28 2401FFFF */ li $at, -1 -/* 05392C 80052D2C 17010002 */ bne $t8, $at, .L80052D38 -/* 053930 80052D30 00000000 */ nop -/* 053934 80052D34 A0E001DB */ sb $zero, 0x1db($a3) -.L80052D38: -/* 053938 80052D38 84EF01A2 */ lh $t7, 0x1a2($a3) -/* 05393C 80052D3C 3C018012 */ lui $at, %hi(D_8011D554) # $at, 0x8012 -/* 053940 80052D40 AC2FD554 */ sw $t7, %lo(D_8011D554)($at) -/* 053944 80052D44 3C018012 */ lui $at, %hi(D_8011D56C) # $at, 0x8012 -/* 053948 80052D48 C424D56C */ lwc1 $f4, %lo(D_8011D56C)($at) -/* 05394C 80052D4C C7A6002C */ lwc1 $f6, 0x2c($sp) -/* 053950 80052D50 C60A0020 */ lwc1 $f10, 0x20($s0) -/* 053954 80052D54 46062202 */ mul.s $f8, $f4, $f6 -/* 053958 80052D58 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 05395C 80052D5C 46085401 */ sub.s $f16, $f10, $f8 -/* 053960 80052D60 E6100020 */ swc1 $f16, 0x20($s0) -/* 053964 80052D64 AC20D534 */ sw $zero, %lo(D_8011D534)($at) -/* 053968 80052D68 A0E001E1 */ sb $zero, 0x1e1($a3) -/* 05396C 80052D6C 8FBF001C */ lw $ra, 0x1c($sp) -/* 053970 80052D70 8FB00018 */ lw $s0, 0x18($sp) -/* 053974 80052D74 03E00008 */ jr $ra -/* 053978 80052D78 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_80052D7C -/* 05397C 80052D7C 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 053980 80052D80 AFBF0024 */ sw $ra, 0x24($sp) -/* 053984 80052D84 AFA40040 */ sw $a0, 0x40($sp) -/* 053988 80052D88 AFA60048 */ sw $a2, 0x48($sp) -/* 05398C 80052D8C AFA7004C */ sw $a3, 0x4c($sp) -/* 053990 80052D90 A3A00033 */ sb $zero, 0x33($sp) -/* 053994 80052D94 90AE01FE */ lbu $t6, 0x1fe($a1) -/* 053998 80052D98 24010001 */ li $at, 1 -/* 05399C 80052D9C 15C10007 */ bne $t6, $at, .L80052DBC -/* 0539A0 80052DA0 00000000 */ nop -/* 0539A4 80052DA4 84AF0000 */ lh $t7, ($a1) -/* 0539A8 80052DA8 2401FFFF */ li $at, -1 -/* 0539AC 80052DAC 15E10003 */ bne $t7, $at, .L80052DBC -/* 0539B0 80052DB0 2418003C */ li $t8, 60 -/* 0539B4 80052DB4 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 -/* 0539B8 80052DB8 AC38D538 */ sw $t8, %lo(D_8011D538)($at) -.L80052DBC: -/* 0539BC 80052DBC 90B901F0 */ lbu $t9, 0x1f0($a1) -/* 0539C0 80052DC0 00000000 */ nop -/* 0539C4 80052DC4 13200024 */ beqz $t9, .L80052E58 -/* 0539C8 80052DC8 00000000 */ nop -/* 0539CC 80052DCC 84A80000 */ lh $t0, ($a1) -/* 0539D0 80052DD0 2401FFFF */ li $at, -1 -/* 0539D4 80052DD4 11010004 */ beq $t0, $at, .L80052DE8 -/* 0539D8 80052DD8 3C038012 */ lui $v1, %hi(D_8011D534) # $v1, 0x8012 -/* 0539DC 80052DDC 80A301E1 */ lb $v1, 0x1e1($a1) -/* 0539E0 80052DE0 10000004 */ b .L80052DF4 -/* 0539E4 80052DE4 00034880 */ sll $t1, $v1, 2 -.L80052DE8: -/* 0539E8 80052DE8 8C63D534 */ lw $v1, %lo(D_8011D534)($v1) -/* 0539EC 80052DEC 00000000 */ nop -/* 0539F0 80052DF0 00034880 */ sll $t1, $v1, 2 -.L80052DF4: -/* 0539F4 80052DF4 8FAA0048 */ lw $t2, 0x48($sp) -/* 0539F8 80052DF8 01234823 */ subu $t1, $t1, $v1 -/* 0539FC 80052DFC 00094840 */ sll $t1, $t1, 1 -/* 053A00 80052E00 012A0019 */ multu $t1, $t2 -/* 053A04 80052E04 84A401A4 */ lh $a0, 0x1a4($a1) -/* 053A08 80052E08 84AE01A0 */ lh $t6, 0x1a0($a1) -/* 053A0C 80052E0C 3082FFFF */ andi $v0, $a0, 0xffff -/* 053A10 80052E10 00021023 */ negu $v0, $v0 -/* 053A14 80052E14 34018001 */ li $at, 32769 -/* 053A18 80052E18 0041082A */ slt $at, $v0, $at -/* 053A1C 80052E1C 00005812 */ mflo $t3 -/* 053A20 80052E20 000B6843 */ sra $t5, $t3, 1 -/* 053A24 80052E24 01CD7823 */ subu $t7, $t6, $t5 -/* 053A28 80052E28 14200004 */ bnez $at, .L80052E3C -/* 053A2C 80052E2C A4AF01A0 */ sh $t7, 0x1a0($a1) -/* 053A30 80052E30 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 053A34 80052E34 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 053A38 80052E38 00411021 */ addu $v0, $v0, $at -.L80052E3C: -/* 053A3C 80052E3C 28418000 */ slti $at, $v0, -0x8000 -/* 053A40 80052E40 10200002 */ beqz $at, .L80052E4C -/* 053A44 80052E44 3401FFFF */ li $at, 65535 -/* 053A48 80052E48 00411021 */ addu $v0, $v0, $at -.L80052E4C: -/* 053A4C 80052E4C 0002C0C3 */ sra $t8, $v0, 3 -/* 053A50 80052E50 0098C821 */ addu $t9, $a0, $t8 -/* 053A54 80052E54 A4B901A4 */ sh $t9, 0x1a4($a1) -.L80052E58: -/* 053A58 80052E58 8CA20018 */ lw $v0, 0x18($a1) -/* 053A5C 80052E5C 00000000 */ nop -/* 053A60 80052E60 10400005 */ beqz $v0, .L80052E78 -/* 053A64 80052E64 00402025 */ move $a0, $v0 -/* 053A68 80052E68 0C001223 */ jal func_8000488C -/* 053A6C 80052E6C AFA50044 */ sw $a1, 0x44($sp) -/* 053A70 80052E70 8FA50044 */ lw $a1, 0x44($sp) -/* 053A74 80052E74 00000000 */ nop -.L80052E78: -/* 053A78 80052E78 8CA20010 */ lw $v0, 0x10($a1) -/* 053A7C 80052E7C 00000000 */ nop -/* 053A80 80052E80 10400005 */ beqz $v0, .L80052E98 -/* 053A84 80052E84 00402025 */ move $a0, $v0 -/* 053A88 80052E88 0C001223 */ jal func_8000488C -/* 053A8C 80052E8C AFA50044 */ sw $a1, 0x44($sp) -/* 053A90 80052E90 8FA50044 */ lw $a1, 0x44($sp) -/* 053A94 80052E94 00000000 */ nop -.L80052E98: -/* 053A98 80052E98 8CA20014 */ lw $v0, 0x14($a1) -/* 053A9C 80052E9C 00000000 */ nop -/* 053AA0 80052EA0 10400005 */ beqz $v0, .L80052EB8 -/* 053AA4 80052EA4 00402025 */ move $a0, $v0 -/* 053AA8 80052EA8 0C001223 */ jal func_8000488C -/* 053AAC 80052EAC AFA50044 */ sw $a1, 0x44($sp) -/* 053AB0 80052EB0 8FA50044 */ lw $a1, 0x44($sp) -/* 053AB4 80052EB4 00000000 */ nop -.L80052EB8: -/* 053AB8 80052EB8 90A201FE */ lbu $v0, 0x1fe($a1) -/* 053ABC 80052EBC 24010001 */ li $at, 1 -/* 053AC0 80052EC0 10410003 */ beq $v0, $at, .L80052ED0 -/* 053AC4 80052EC4 24010003 */ li $at, 3 -/* 053AC8 80052EC8 14410004 */ bne $v0, $at, .L80052EDC -/* 053ACC 80052ECC 00000000 */ nop -.L80052ED0: -/* 053AD0 80052ED0 80A801E1 */ lb $t0, 0x1e1($a1) -/* 053AD4 80052ED4 00000000 */ nop -/* 053AD8 80052ED8 A0A801E8 */ sb $t0, 0x1e8($a1) -.L80052EDC: -/* 053ADC 80052EDC C4A600C0 */ lwc1 $f6, 0xc0($a1) -/* 053AE0 80052EE0 44802800 */ mtc1 $zero, $f5 -/* 053AE4 80052EE4 44802000 */ mtc1 $zero, $f4 -/* 053AE8 80052EE8 46003221 */ cvt.d.s $f8, $f6 -/* 053AEC 80052EEC 46282032 */ c.eq.d $f4, $f8 -/* 053AF0 80052EF0 00000000 */ nop -/* 053AF4 80052EF4 45010063 */ bc1t .L80053084 -/* 053AF8 80052EF8 00000000 */ nop -/* 053AFC 80052EFC 8FA90040 */ lw $t1, 0x40($sp) -/* 053B00 80052F00 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 053B04 80052F04 C52A0020 */ lwc1 $f10, 0x20($t1) -/* 053B08 80052F08 44818800 */ mtc1 $at, $f17 -/* 053B0C 80052F0C 44808000 */ mtc1 $zero, $f16 -/* 053B10 80052F10 46005021 */ cvt.d.s $f0, $f10 -/* 053B14 80052F14 4620803C */ c.lt.d $f16, $f0 -/* 053B18 80052F18 44803000 */ mtc1 $zero, $f6 -/* 053B1C 80052F1C 45000006 */ bc1f .L80052F38 -/* 053B20 80052F20 240F0001 */ li $t7, 1 -/* 053B24 80052F24 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 053B28 80052F28 44819000 */ mtc1 $at, $f18 -/* 053B2C 80052F2C 00000000 */ nop -/* 053B30 80052F30 E5320020 */ swc1 $f18, 0x20($t1) -/* 053B34 80052F34 46009021 */ cvt.d.s $f0, $f18 -.L80052F38: -/* 053B38 80052F38 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 053B3C 80052F3C 44813800 */ mtc1 $at, $f7 -/* 053B40 80052F40 8FAA0040 */ lw $t2, 0x40($sp) -/* 053B44 80052F44 4626003C */ c.lt.d $f0, $f6 -/* 053B48 80052F48 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 053B4C 80052F4C 45000004 */ bc1f .L80052F60 -/* 053B50 80052F50 3C0D8012 */ lui $t5, %hi(D_8011D538) # $t5, 0x8012 -/* 053B54 80052F54 44812000 */ mtc1 $at, $f4 -/* 053B58 80052F58 00000000 */ nop -/* 053B5C 80052F5C E5440020 */ swc1 $f4, 0x20($t2) -.L80052F60: -/* 053B60 80052F60 80AB01E1 */ lb $t3, 0x1e1($a1) -/* 053B64 80052F64 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 -/* 053B68 80052F68 A0AB01E8 */ sb $t3, 0x1e8($a1) -/* 053B6C 80052F6C 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) -/* 053B70 80052F70 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 053B74 80052F74 304C8000 */ andi $t4, $v0, 0x8000 -/* 053B78 80052F78 1180000C */ beqz $t4, .L80052FAC -/* 053B7C 80052F7C 304E4000 */ andi $t6, $v0, 0x4000 -/* 053B80 80052F80 C4A8002C */ lwc1 $f8, 0x2c($a1) -/* 053B84 80052F84 44818800 */ mtc1 $at, $f17 -/* 053B88 80052F88 44808000 */ mtc1 $zero, $f16 -/* 053B8C 80052F8C 460042A1 */ cvt.d.s $f10, $f8 -/* 053B90 80052F90 46305481 */ sub.d $f18, $f10, $f16 -/* 053B94 80052F94 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 -/* 053B98 80052F98 462091A0 */ cvt.s.d $f6, $f18 -/* 053B9C 80052F9C E4A6002C */ swc1 $f6, 0x2c($a1) -/* 053BA0 80052FA0 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) -/* 053BA4 80052FA4 00000000 */ nop -/* 053BA8 80052FA8 304E4000 */ andi $t6, $v0, 0x4000 -.L80052FAC: -/* 053BAC 80052FAC 11C0000E */ beqz $t6, .L80052FE8 -/* 053BB0 80052FB0 00000000 */ nop -/* 053BB4 80052FB4 8DADD538 */ lw $t5, %lo(D_8011D538)($t5) -/* 053BB8 80052FB8 00000000 */ nop -/* 053BBC 80052FBC 29A1FFE7 */ slti $at, $t5, -0x19 -/* 053BC0 80052FC0 10200009 */ beqz $at, .L80052FE8 -/* 053BC4 80052FC4 00000000 */ nop -/* 053BC8 80052FC8 C4A4002C */ lwc1 $f4, 0x2c($a1) -/* 053BCC 80052FCC 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 053BD0 80052FD0 44815800 */ mtc1 $at, $f11 -/* 053BD4 80052FD4 44805000 */ mtc1 $zero, $f10 -/* 053BD8 80052FD8 46002221 */ cvt.d.s $f8, $f4 -/* 053BDC 80052FDC 462A4400 */ add.d $f16, $f8, $f10 -/* 053BE0 80052FE0 462084A0 */ cvt.s.d $f18, $f16 -/* 053BE4 80052FE4 E4B2002C */ swc1 $f18, 0x2c($a1) -.L80052FE8: -/* 053BE8 80052FE8 3C01800E */ lui $at, %hi(D_800E66FC) # $at, 0x800e -/* 053BEC 80052FEC A3AF0033 */ sb $t7, 0x33($sp) -/* 053BF0 80052FF0 C4A60030 */ lwc1 $f6, 0x30($a1) -/* 053BF4 80052FF4 C42166F8 */ lwc1 $f1, %lo(D_800E66F8)($at) -/* 053BF8 80052FF8 C42066FC */ lwc1 $f0, %lo(D_800E66FC)($at) -/* 053BFC 80052FFC 46003121 */ cvt.d.s $f4, $f6 -/* 053C00 80053000 46202202 */ mul.d $f8, $f4, $f0 -/* 053C04 80053004 C4B0002C */ lwc1 $f16, 0x2c($a1) -/* 053C08 80053008 3C01800E */ lui $at, %hi(D_800E6700) # $at, 0x800e -/* 053C0C 8005300C 460084A1 */ cvt.d.s $f18, $f16 -/* 053C10 80053010 3C088012 */ lui $t0, %hi(D_8011D534) # $t0, 0x8012 -/* 053C14 80053014 46209182 */ mul.d $f6, $f18, $f0 -/* 053C18 80053018 462042A0 */ cvt.s.d $f10, $f8 -/* 053C1C 8005301C 3C078012 */ lui $a3, %hi(D_8011D504) # $a3, 0x8012 -/* 053C20 80053020 E4AA0030 */ swc1 $f10, 0x30($a1) -/* 053C24 80053024 3C068012 */ lui $a2, %hi(D_8011D4F8) # $a2, 0x8012 -/* 053C28 80053028 46203120 */ cvt.s.d $f4, $f6 -/* 053C2C 8005302C 24C6D4F8 */ addiu $a2, %lo(D_8011D4F8) # addiu $a2, $a2, -0x2b08 -/* 053C30 80053030 E4A4002C */ swc1 $f4, 0x2c($a1) -/* 053C34 80053034 8FA40040 */ lw $a0, 0x40($sp) -/* 053C38 80053038 C4306704 */ lwc1 $f16, %lo(D_800E6704)($at) -/* 053C3C 8005303C C4880020 */ lwc1 $f8, 0x20($a0) -/* 053C40 80053040 C4316700 */ lwc1 $f17, %lo(D_800E6700)($at) -/* 053C44 80053044 460042A1 */ cvt.d.s $f10, $f8 -/* 053C48 80053048 46305482 */ mul.d $f18, $f10, $f16 -/* 053C4C 8005304C 3C0140C0 */ li $at, 0x40C00000 # 6.000000 -/* 053C50 80053050 44812000 */ mtc1 $at, $f4 -/* 053C54 80053054 462091A0 */ cvt.s.d $f6, $f18 -/* 053C58 80053058 E4860020 */ swc1 $f6, 0x20($a0) -/* 053C5C 8005305C 8D08D534 */ lw $t0, %lo(D_8011D534)($t0) -/* 053C60 80053060 8FB90048 */ lw $t9, 0x48($sp) -/* 053C64 80053064 80E7D504 */ lb $a3, %lo(D_8011D504)($a3) -/* 053C68 80053068 AFA50044 */ sw $a1, 0x44($sp) -/* 053C6C 8005306C E7A40018 */ swc1 $f4, 0x18($sp) -/* 053C70 80053070 AFA80014 */ sw $t0, 0x14($sp) -/* 053C74 80053074 0C012538 */ jal func_800494E0 -/* 053C78 80053078 AFB90010 */ sw $t9, 0x10($sp) -/* 053C7C 8005307C 8FA50044 */ lw $a1, 0x44($sp) -/* 053C80 80053080 00000000 */ nop -.L80053084: -/* 053C84 80053084 84A90000 */ lh $t1, ($a1) -/* 053C88 80053088 2401FFFF */ li $at, -1 -/* 053C8C 8005308C 15210004 */ bne $t1, $at, .L800530A0 -/* 053C90 80053090 3C068012 */ lui $a2, %hi(D_8011D554) # $a2, 0x8012 -/* 053C94 80053094 80AA01E1 */ lb $t2, 0x1e1($a1) -/* 053C98 80053098 00000000 */ nop -/* 053C9C 8005309C A0AA01E8 */ sb $t2, 0x1e8($a1) -.L800530A0: -/* 053CA0 800530A0 80A201D3 */ lb $v0, 0x1d3($a1) -/* 053CA4 800530A4 3C01800E */ lui $at, %hi(D_800E670C) # $at, 0x800e -/* 053CA8 800530A8 18400006 */ blez $v0, .L800530C4 -/* 053CAC 800530AC 24C6D554 */ addiu $a2, %lo(D_8011D554) # addiu $a2, $a2, -0x2aac -/* 053CB0 800530B0 8FAB0048 */ lw $t3, 0x48($sp) -/* 053CB4 800530B4 00000000 */ nop -/* 053CB8 800530B8 004B6023 */ subu $t4, $v0, $t3 -/* 053CBC 800530BC 10000002 */ b .L800530C8 -/* 053CC0 800530C0 A0AC01D3 */ sb $t4, 0x1d3($a1) -.L800530C4: -/* 053CC4 800530C4 A0A001D3 */ sb $zero, 0x1d3($a1) -.L800530C8: -/* 053CC8 800530C8 C4AA002C */ lwc1 $f10, 0x2c($a1) -/* 053CCC 800530CC 80A201E8 */ lb $v0, 0x1e8($a1) -/* 053CD0 800530D0 C4296708 */ lwc1 $f9, %lo(D_800E6708)($at) -/* 053CD4 800530D4 C428670C */ lwc1 $f8, %lo(D_800E670C)($at) -/* 053CD8 800530D8 46005421 */ cvt.d.s $f16, $f10 -/* 053CDC 800530DC 4630403C */ c.lt.d $f8, $f16 -/* 053CE0 800530E0 00027080 */ sll $t6, $v0, 2 -/* 053CE4 800530E4 01C27023 */ subu $t6, $t6, $v0 -/* 053CE8 800530E8 45000007 */ bc1f .L80053108 -/* 053CEC 800530EC 000E1040 */ sll $v0, $t6, 1 -/* 053CF0 800530F0 80A201E1 */ lb $v0, 0x1e1($a1) -/* 053CF4 800530F4 00000000 */ nop -/* 053CF8 800530F8 00021023 */ negu $v0, $v0 -/* 053CFC 800530FC 00026880 */ sll $t5, $v0, 2 -/* 053D00 80053100 01A26823 */ subu $t5, $t5, $v0 -/* 053D04 80053104 000D1040 */ sll $v0, $t5, 1 -.L80053108: -/* 053D08 80053108 84AF01A0 */ lh $t7, 0x1a0($a1) -/* 053D0C 8005310C 8CA80110 */ lw $t0, 0x110($a1) -/* 053D10 80053110 01E2C823 */ subu $t9, $t7, $v0 -/* 053D14 80053114 A4B901A0 */ sh $t9, 0x1a0($a1) -/* 053D18 80053118 ACC80000 */ sw $t0, ($a2) -/* 053D1C 8005311C 80A901D3 */ lb $t1, 0x1d3($a1) -/* 053D20 80053120 3C01C034 */ li $at, 0xC0340000 # -2.812500 -/* 053D24 80053124 1120000F */ beqz $t1, .L80053164 -/* 053D28 80053128 3C038012 */ lui $v1, %hi(D_8011D538) # $v1, 0x8012 -/* 053D2C 8005312C C4B2002C */ lwc1 $f18, 0x2c($a1) -/* 053D30 80053130 44813800 */ mtc1 $at, $f7 -/* 053D34 80053134 44803000 */ mtc1 $zero, $f6 -/* 053D38 80053138 46009021 */ cvt.d.s $f0, $f18 -/* 053D3C 8005313C 4620303C */ c.lt.d $f6, $f0 -/* 053D40 80053140 3C01800E */ lui $at, %hi(D_800E6714) # $at, 0x800e -/* 053D44 80053144 45000007 */ bc1f .L80053164 -/* 053D48 80053148 00000000 */ nop -/* 053D4C 8005314C C4256710 */ lwc1 $f5, %lo(D_800E6710)($at) -/* 053D50 80053150 C4246714 */ lwc1 $f4, %lo(D_800E6714)($at) -/* 053D54 80053154 00000000 */ nop -/* 053D58 80053158 46240281 */ sub.d $f10, $f0, $f4 -/* 053D5C 8005315C 46205220 */ cvt.s.d $f8, $f10 -/* 053D60 80053160 E4A8002C */ swc1 $f8, 0x2c($a1) -.L80053164: -/* 053D64 80053164 8C63D538 */ lw $v1, %lo(D_8011D538)($v1) -/* 053D68 80053168 8FAA0040 */ lw $t2, 0x40($sp) -/* 053D6C 8005316C 28610032 */ slti $at, $v1, 0x32 -/* 053D70 80053170 10200004 */ beqz $at, .L80053184 -/* 053D74 80053174 2861FFCF */ slti $at, $v1, -0x31 -/* 053D78 80053178 14200002 */ bnez $at, .L80053184 -/* 053D7C 8005317C 00000000 */ nop -/* 053D80 80053180 00001825 */ move $v1, $zero -.L80053184: -/* 053D84 80053184 3C01800E */ lui $at, %hi(D_800E671C) # $at, 0x800e -/* 053D88 80053188 C5500020 */ lwc1 $f16, 0x20($t2) -/* 053D8C 8005318C C4336718 */ lwc1 $f19, %lo(D_800E6718)($at) -/* 053D90 80053190 C432671C */ lwc1 $f18, %lo(D_800E671C)($at) -/* 053D94 80053194 46008021 */ cvt.d.s $f0, $f16 -/* 053D98 80053198 46320182 */ mul.d $f6, $f0, $f18 -/* 053D9C 8005319C C7A4004C */ lwc1 $f4, 0x4c($sp) -/* 053DA0 800531A0 3C018012 */ lui $at, %hi(D_8011D56C) # $at, 0x8012 -/* 053DA4 800531A4 460022A1 */ cvt.d.s $f10, $f4 -/* 053DA8 800531A8 462A3202 */ mul.d $f8, $f6, $f10 -/* 053DAC 800531AC 46280401 */ sub.d $f16, $f0, $f8 -/* 053DB0 800531B0 462084A0 */ cvt.s.d $f18, $f16 -/* 053DB4 800531B4 E5520020 */ swc1 $f18, 0x20($t2) -/* 053DB8 800531B8 90AB01F1 */ lbu $t3, 0x1f1($a1) -/* 053DBC 800531BC C422D56C */ lwc1 $f2, %lo(D_8011D56C)($at) -/* 053DC0 800531C0 15600005 */ bnez $t3, .L800531D8 -/* 053DC4 800531C4 3C01800E */ lui $at, %hi(D_800E6720) # $at, 0x800e -/* 053DC8 800531C8 90AC01F0 */ lbu $t4, 0x1f0($a1) -/* 053DCC 800531CC 00000000 */ nop -/* 053DD0 800531D0 11800010 */ beqz $t4, .L80053214 -/* 053DD4 800531D4 00000000 */ nop -.L800531D8: -/* 053DD8 800531D8 8FAD0048 */ lw $t5, 0x48($sp) -/* 053DDC 800531DC 84AE0160 */ lh $t6, 0x160($a1) -/* 053DE0 800531E0 000D7880 */ sll $t7, $t5, 2 -/* 053DE4 800531E4 01ED7821 */ addu $t7, $t7, $t5 -/* 053DE8 800531E8 000F7A00 */ sll $t7, $t7, 8 -/* 053DEC 800531EC C4226720 */ lwc1 $f2, %lo(D_800E6720)($at) -/* 053DF0 800531F0 01CFC021 */ addu $t8, $t6, $t7 -/* 053DF4 800531F4 A4B80160 */ sh $t8, 0x160($a1) -/* 053DF8 800531F8 8FA80048 */ lw $t0, 0x48($sp) -/* 053DFC 800531FC 84B90162 */ lh $t9, 0x162($a1) -/* 053E00 80053200 00084880 */ sll $t1, $t0, 2 -/* 053E04 80053204 01284823 */ subu $t1, $t1, $t0 -/* 053E08 80053208 00094A40 */ sll $t1, $t1, 9 -/* 053E0C 8005320C 03295021 */ addu $t2, $t9, $t1 -/* 053E10 80053210 A4AA0162 */ sh $t2, 0x162($a1) -.L80053214: -/* 053E14 80053214 90A201FE */ lbu $v0, 0x1fe($a1) -/* 053E18 80053218 24010001 */ li $at, 1 -/* 053E1C 8005321C 10410002 */ beq $v0, $at, .L80053228 -/* 053E20 80053220 24010003 */ li $at, 3 -/* 053E24 80053224 14410023 */ bne $v0, $at, .L800532B4 -.L80053228: -/* 053E28 80053228 3C01800E */ lui $at, %hi(D_800E672C) # $at, 0x800e -/* 053E2C 8005322C C4A40030 */ lwc1 $f4, 0x30($a1) -/* 053E30 80053230 C4216728 */ lwc1 $f1, %lo(D_800E6728)($at) -/* 053E34 80053234 C420672C */ lwc1 $f0, %lo(D_800E672C)($at) -/* 053E38 80053238 460021A1 */ cvt.d.s $f6, $f4 -/* 053E3C 8005323C 46203282 */ mul.d $f10, $f6, $f0 -/* 053E40 80053240 C4B0002C */ lwc1 $f16, 0x2c($a1) -/* 053E44 80053244 28610033 */ slti $at, $v1, 0x33 -/* 053E48 80053248 460084A1 */ cvt.d.s $f18, $f16 -/* 053E4C 8005324C 240B0001 */ li $t3, 1 -/* 053E50 80053250 46209102 */ mul.d $f4, $f18, $f0 -/* 053E54 80053254 46205220 */ cvt.s.d $f8, $f10 -/* 053E58 80053258 E4A80030 */ swc1 $f8, 0x30($a1) -/* 053E5C 8005325C 462021A0 */ cvt.s.d $f6, $f4 -/* 053E60 80053260 E4A6002C */ swc1 $f6, 0x2c($a1) -/* 053E64 80053264 14200009 */ bnez $at, .L8005328C -/* 053E68 80053268 A3AB0033 */ sb $t3, 0x33($sp) -/* 053E6C 8005326C 3C01800E */ lui $at, %hi(D_800E6734) # $at, 0x800e -/* 053E70 80053270 C4AA002C */ lwc1 $f10, 0x2c($a1) -/* 053E74 80053274 C4316730 */ lwc1 $f17, %lo(D_800E6730)($at) -/* 053E78 80053278 C4306734 */ lwc1 $f16, %lo(D_800E6734)($at) -/* 053E7C 8005327C 46005221 */ cvt.d.s $f8, $f10 -/* 053E80 80053280 46304481 */ sub.d $f18, $f8, $f16 -/* 053E84 80053284 46209120 */ cvt.s.d $f4, $f18 -/* 053E88 80053288 E4A4002C */ swc1 $f4, 0x2c($a1) -.L8005328C: -/* 053E8C 8005328C 2861FFCE */ slti $at, $v1, -0x32 -/* 053E90 80053290 10200008 */ beqz $at, .L800532B4 -/* 053E94 80053294 3C01800E */ lui $at, %hi(D_800E673C) # $at, 0x800e -/* 053E98 80053298 C4A6002C */ lwc1 $f6, 0x2c($a1) -/* 053E9C 8005329C C4296738 */ lwc1 $f9, %lo(D_800E6738)($at) -/* 053EA0 800532A0 C428673C */ lwc1 $f8, %lo(D_800E673C)($at) -/* 053EA4 800532A4 460032A1 */ cvt.d.s $f10, $f6 -/* 053EA8 800532A8 46285400 */ add.d $f16, $f10, $f8 -/* 053EAC 800532AC 462084A0 */ cvt.s.d $f18, $f16 -/* 053EB0 800532B0 E4B2002C */ swc1 $f18, 0x2c($a1) -.L800532B4: -/* 053EB4 800532B4 83AC0033 */ lb $t4, 0x33($sp) -/* 053EB8 800532B8 8FAD0040 */ lw $t5, 0x40($sp) -/* 053EBC 800532BC 11800015 */ beqz $t4, .L80053314 -/* 053EC0 800532C0 28610033 */ slti $at, $v1, 0x33 -/* 053EC4 800532C4 ADA00074 */ sw $zero, 0x74($t5) -/* 053EC8 800532C8 A0A001E6 */ sb $zero, 0x1e6($a1) -/* 053ECC 800532CC 8FAE0048 */ lw $t6, 0x48($sp) -/* 053ED0 800532D0 8CA2010C */ lw $v0, 0x10c($a1) -/* 053ED4 800532D4 00A02025 */ move $a0, $a1 -/* 053ED8 800532D8 004E0019 */ multu $v0, $t6 -/* 053EDC 800532DC 00007812 */ mflo $t7 -/* 053EE0 800532E0 000FC103 */ sra $t8, $t7, 4 -/* 053EE4 800532E4 00584023 */ subu $t0, $v0, $t8 -/* 053EE8 800532E8 ACA8010C */ sw $t0, 0x10c($a1) -/* 053EEC 800532EC ACC00000 */ sw $zero, ($a2) -/* 053EF0 800532F0 E7A2002C */ swc1 $f2, 0x2c($sp) -/* 053EF4 800532F4 AFA50044 */ sw $a1, 0x44($sp) -/* 053EF8 800532F8 0C014D1E */ jal func_80053478 -/* 053EFC 800532FC AFA30038 */ sw $v1, 0x38($sp) -/* 053F00 80053300 8FA30038 */ lw $v1, 0x38($sp) -/* 053F04 80053304 8FA50044 */ lw $a1, 0x44($sp) -/* 053F08 80053308 C7A2002C */ lwc1 $f2, 0x2c($sp) -/* 053F0C 8005330C 10000011 */ b .L80053354 -/* 053F10 80053310 80B901D3 */ lb $t9, 0x1d3($a1) -.L80053314: -/* 053F14 80053314 14200006 */ bnez $at, .L80053330 -/* 053F18 80053318 3C01800E */ lui $at, %hi(D_800E6744) # $at, 0x800e -/* 053F1C 8005331C C4276740 */ lwc1 $f7, %lo(D_800E6740)($at) -/* 053F20 80053320 C4266744 */ lwc1 $f6, %lo(D_800E6744)($at) -/* 053F24 80053324 46001121 */ cvt.d.s $f4, $f2 -/* 053F28 80053328 46262282 */ mul.d $f10, $f4, $f6 -/* 053F2C 8005332C 462050A0 */ cvt.s.d $f2, $f10 -.L80053330: -/* 053F30 80053330 2861FFCE */ slti $at, $v1, -0x32 -/* 053F34 80053334 10200006 */ beqz $at, .L80053350 -/* 053F38 80053338 3C01800E */ lui $at, %hi(D_800E674C) # $at, 0x800e -/* 053F3C 8005333C C4316748 */ lwc1 $f17, %lo(D_800E6748)($at) -/* 053F40 80053340 C430674C */ lwc1 $f16, %lo(D_800E674C)($at) -/* 053F44 80053344 46001221 */ cvt.d.s $f8, $f2 -/* 053F48 80053348 46304482 */ mul.d $f18, $f8, $f16 -/* 053F4C 8005334C 462090A0 */ cvt.s.d $f2, $f18 -.L80053350: -/* 053F50 80053350 80B901D3 */ lb $t9, 0x1d3($a1) -.L80053354: -/* 053F54 80053354 00031823 */ negu $v1, $v1 -/* 053F58 80053358 13200007 */ beqz $t9, .L80053378 -/* 053F5C 8005335C 00034980 */ sll $t1, $v1, 6 -/* 053F60 80053360 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 053F64 80053364 44813800 */ mtc1 $at, $f7 -/* 053F68 80053368 44803000 */ mtc1 $zero, $f6 -/* 053F6C 8005336C 46001121 */ cvt.d.s $f4, $f2 -/* 053F70 80053370 46262282 */ mul.d $f10, $f4, $f6 -/* 053F74 80053374 462050A0 */ cvt.s.d $f2, $f10 -.L80053378: -/* 053F78 80053378 8FAB0040 */ lw $t3, 0x40($sp) -/* 053F7C 8005337C 312AFFFF */ andi $t2, $t1, 0xffff -/* 053F80 80053380 85640002 */ lh $a0, 2($t3) -/* 053F84 80053384 34018001 */ li $at, 32769 -/* 053F88 80053388 308CFFFF */ andi $t4, $a0, 0xffff -/* 053F8C 8005338C 014C1023 */ subu $v0, $t2, $t4 -/* 053F90 80053390 0041082A */ slt $at, $v0, $at -/* 053F94 80053394 14200003 */ bnez $at, .L800533A4 -/* 053F98 80053398 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 053F9C 8005339C 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 053FA0 800533A0 00411021 */ addu $v0, $v0, $at -.L800533A4: -/* 053FA4 800533A4 28418000 */ slti $at, $v0, -0x8000 -/* 053FA8 800533A8 10200002 */ beqz $at, .L800533B4 -/* 053FAC 800533AC 3401FFFF */ li $at, 65535 -/* 053FB0 800533B0 00411021 */ addu $v0, $v0, $at -.L800533B4: -/* 053FB4 800533B4 8FAF0040 */ lw $t7, 0x40($sp) -/* 053FB8 800533B8 000268C3 */ sra $t5, $v0, 3 -/* 053FBC 800533BC 008D7021 */ addu $t6, $a0, $t5 -/* 053FC0 800533C0 A5EE0002 */ sh $t6, 2($t7) -/* 053FC4 800533C4 C7B0004C */ lwc1 $f16, 0x4c($sp) -/* 053FC8 800533C8 C5E80020 */ lwc1 $f8, 0x20($t7) -/* 053FCC 800533CC 46101482 */ mul.s $f18, $f2, $f16 -/* 053FD0 800533D0 44803800 */ mtc1 $zero, $f7 -/* 053FD4 800533D4 44803000 */ mtc1 $zero, $f6 -/* 053FD8 800533D8 3C014034 */ li $at, 0x40340000 # 2.812500 -/* 053FDC 800533DC 46124101 */ sub.s $f4, $f8, $f18 -/* 053FE0 800533E0 E5E40020 */ swc1 $f4, 0x20($t7) -/* 053FE4 800533E4 C4AA00C0 */ lwc1 $f10, 0xc0($a1) -/* 053FE8 800533E8 00000000 */ nop -/* 053FEC 800533EC 46005421 */ cvt.d.s $f16, $f10 -/* 053FF0 800533F0 46303032 */ c.eq.d $f6, $f16 -/* 053FF4 800533F4 00000000 */ nop -/* 053FF8 800533F8 45000019 */ bc1f .L80053460 -/* 053FFC 800533FC 8FA80040 */ lw $t0, 0x40($sp) -/* 054000 80053400 44815800 */ mtc1 $at, $f11 -/* 054004 80053404 44805000 */ mtc1 $zero, $f10 -/* 054008 80053408 46002207 */ neg.s $f8, $f4 -/* 05400C 8005340C 460044A1 */ cvt.d.s $f18, $f8 -/* 054010 80053410 462A9182 */ mul.d $f6, $f18, $f10 -/* 054014 80053414 4458F800 */ cfc1 $t8, $31 -/* 054018 80053418 00000000 */ nop -/* 05401C 8005341C 37010003 */ ori $at, $t8, 3 -/* 054020 80053420 38210002 */ xori $at, $at, 2 -/* 054024 80053424 44C1F800 */ ctc1 $at, $31 -/* 054028 80053428 00000000 */ nop -/* 05402C 8005342C 46203424 */ cvt.w.d $f16, $f6 -/* 054030 80053430 44038000 */ mfc1 $v1, $f16 -/* 054034 80053434 44D8F800 */ ctc1 $t8, $31 -/* 054038 80053438 28610032 */ slti $at, $v1, 0x32 -/* 05403C 8005343C 10200003 */ beqz $at, .L8005344C -/* 054040 80053440 28610080 */ slti $at, $v1, 0x80 -/* 054044 80053444 24030032 */ li $v1, 50 -/* 054048 80053448 28610080 */ slti $at, $v1, 0x80 -.L8005344C: -/* 05404C 8005344C 14200002 */ bnez $at, .L80053458 -/* 054050 80053450 00000000 */ nop -/* 054054 80053454 2403007F */ li $v1, 127 -.L80053458: -/* 054058 80053458 A0A301E0 */ sb $v1, 0x1e0($a1) -/* 05405C 8005345C 8FA80040 */ lw $t0, 0x40($sp) -.L80053460: -/* 054060 80053460 00000000 */ nop -/* 054064 80053464 AD000074 */ sw $zero, 0x74($t0) -/* 054068 80053468 8FBF0024 */ lw $ra, 0x24($sp) -/* 05406C 8005346C 27BD0040 */ addiu $sp, $sp, 0x40 -/* 054070 80053470 03E00008 */ jr $ra -/* 054074 80053474 00000000 */ nop - -glabel func_80053478 -/* 054078 80053478 C480002C */ lwc1 $f0, 0x2c($a0) -/* 05407C 8005347C 44806800 */ mtc1 $zero, $f13 -/* 054080 80053480 44806000 */ mtc1 $zero, $f12 -/* 054084 80053484 460000A1 */ cvt.d.s $f2, $f0 -/* 054088 80053488 462C103C */ c.lt.d $f2, $f12 -/* 05408C 8005348C 3C01800E */ lui $at, %hi(D_800E6754) # $at, 0x800e -/* 054090 80053490 45000003 */ bc1f .L800534A0 -/* 054094 80053494 00000000 */ nop -/* 054098 80053498 46000007 */ neg.s $f0, $f0 -/* 05409C 8005349C 460000A1 */ cvt.d.s $f2, $f0 -.L800534A0: -/* 0540A0 800534A0 C4256750 */ lwc1 $f5, %lo(D_800E6750)($at) -/* 0540A4 800534A4 C4246754 */ lwc1 $f4, %lo(D_800E6754)($at) -/* 0540A8 800534A8 3C01800E */ lui $at, %hi(D_800E6758) # $at, 0x800e -/* 0540AC 800534AC 4622203C */ c.lt.d $f4, $f2 -/* 0540B0 800534B0 00000000 */ nop -/* 0540B4 800534B4 45000004 */ bc1f .L800534C8 -/* 0540B8 800534B8 00000000 */ nop -/* 0540BC 800534BC C4206758 */ lwc1 $f0, %lo(D_800E6758)($at) -/* 0540C0 800534C0 00000000 */ nop -/* 0540C4 800534C4 460000A1 */ cvt.d.s $f2, $f0 -.L800534C8: -/* 0540C8 800534C8 3C01800E */ lui $at, %hi(D_800E6764) # $at, 0x800e -/* 0540CC 800534CC C4276760 */ lwc1 $f7, %lo(D_800E6760)($at) -/* 0540D0 800534D0 C4266764 */ lwc1 $f6, %lo(D_800E6764)($at) -/* 0540D4 800534D4 3C014268 */ li $at, 0x42680000 # 58.000000 -/* 0540D8 800534D8 46261201 */ sub.d $f8, $f2, $f6 -/* 0540DC 800534DC 46204020 */ cvt.s.d $f0, $f8 -/* 0540E0 800534E0 460002A1 */ cvt.d.s $f10, $f0 -/* 0540E4 800534E4 462C503C */ c.lt.d $f10, $f12 -/* 0540E8 800534E8 00000000 */ nop -/* 0540EC 800534EC 45000003 */ bc1f .L800534FC -/* 0540F0 800534F0 00000000 */ nop -/* 0540F4 800534F4 44800000 */ mtc1 $zero, $f0 -/* 0540F8 800534F8 00000000 */ nop -.L800534FC: -/* 0540FC 800534FC 808E01E6 */ lb $t6, 0x1e6($a0) -/* 054100 80053500 00000000 */ nop -/* 054104 80053504 11C00010 */ beqz $t6, .L80053548 -/* 054108 80053508 00000000 */ nop -/* 05410C 8005350C 3C014288 */ li $at, 0x42880000 # 68.000000 -/* 054110 80053510 44818000 */ mtc1 $at, $f16 -/* 054114 80053514 00000000 */ nop -/* 054118 80053518 46100482 */ mul.s $f18, $f0, $f16 -/* 05411C 8005351C 444FF800 */ cfc1 $t7, $31 -/* 054120 80053520 00000000 */ nop -/* 054124 80053524 35E10003 */ ori $at, $t7, 3 -/* 054128 80053528 38210002 */ xori $at, $at, 2 -/* 05412C 8005352C 44C1F800 */ ctc1 $at, $31 -/* 054130 80053530 00000000 */ nop -/* 054134 80053534 46009124 */ cvt.w.s $f4, $f18 -/* 054138 80053538 44022000 */ mfc1 $v0, $f4 -/* 05413C 8005353C 44CFF800 */ ctc1 $t7, $31 -/* 054140 80053540 1000000F */ b .L80053580 -/* 054144 80053544 808801E1 */ lb $t0, 0x1e1($a0) -.L80053548: -/* 054148 80053548 44813000 */ mtc1 $at, $f6 -/* 05414C 8005354C 00000000 */ nop -/* 054150 80053550 46060202 */ mul.s $f8, $f0, $f6 -/* 054154 80053554 4458F800 */ cfc1 $t8, $31 -/* 054158 80053558 00000000 */ nop -/* 05415C 8005355C 37010003 */ ori $at, $t8, 3 -/* 054160 80053560 38210002 */ xori $at, $at, 2 -/* 054164 80053564 44C1F800 */ ctc1 $at, $31 -/* 054168 80053568 00000000 */ nop -/* 05416C 8005356C 460042A4 */ cvt.w.s $f10, $f8 -/* 054170 80053570 44D8F800 */ ctc1 $t8, $31 -/* 054174 80053574 44025000 */ mfc1 $v0, $f10 -/* 054178 80053578 00000000 */ nop -/* 05417C 8005357C 808801E1 */ lb $t0, 0x1e1($a0) -.L80053580: -/* 054180 80053580 3C038012 */ lui $v1, %hi(D_8011D554) # $v1, 0x8012 -/* 054184 80053584 01020019 */ multu $t0, $v0 -/* 054188 80053588 2463D554 */ addiu $v1, %lo(D_8011D554) # addiu $v1, $v1, -0x2aac -/* 05418C 8005358C 8C790000 */ lw $t9, ($v1) -/* 054190 80053590 44808000 */ mtc1 $zero, $f16 -/* 054194 80053594 00004812 */ mflo $t1 -/* 054198 80053598 03295023 */ subu $t2, $t9, $t1 -/* 05419C 8005359C AC6A0000 */ sw $t2, ($v1) -/* 0541A0 800535A0 C492002C */ lwc1 $f18, 0x2c($a0) -/* 0541A4 800535A4 000A6023 */ negu $t4, $t2 -/* 0541A8 800535A8 4612803C */ c.lt.s $f16, $f18 -/* 0541AC 800535AC 00000000 */ nop -/* 0541B0 800535B0 45000002 */ bc1f .L800535BC -/* 0541B4 800535B4 00000000 */ nop -/* 0541B8 800535B8 AC6C0000 */ sw $t4, ($v1) -.L800535BC: -/* 0541BC 800535BC 03E00008 */ jr $ra -/* 0541C0 800535C0 00000000 */ nop - -glabel func_800535C4 -/* 0541C4 800535C4 27BDFF90 */ addiu $sp, $sp, -0x70 -/* 0541C8 800535C8 AFB00028 */ sw $s0, 0x28($sp) -/* 0541CC 800535CC 00A08025 */ move $s0, $a1 -/* 0541D0 800535D0 AFBF002C */ sw $ra, 0x2c($sp) -/* 0541D4 800535D4 860E01A0 */ lh $t6, 0x1a0($s0) -/* 0541D8 800535D8 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 -/* 0541DC 800535DC 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 -/* 0541E0 800535E0 000E7823 */ negu $t7, $t6 -/* 0541E4 800535E4 A4AF0000 */ sh $t7, ($a1) -/* 0541E8 800535E8 84980002 */ lh $t8, 2($a0) -/* 0541EC 800535EC 44800000 */ mtc1 $zero, $f0 -/* 0541F0 800535F0 0018C823 */ negu $t9, $t8 -/* 0541F4 800535F4 A4B90002 */ sh $t9, 2($a1) -/* 0541F8 800535F8 860801A4 */ lh $t0, 0x1a4($s0) -/* 0541FC 800535FC 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 054200 80053600 44812000 */ mtc1 $at, $f4 -/* 054204 80053604 00084823 */ negu $t1, $t0 -/* 054208 80053608 A4A90004 */ sh $t1, 4($a1) -/* 05420C 8005360C 27A40030 */ addiu $a0, $sp, 0x30 -/* 054210 80053610 E4A0000C */ swc1 $f0, 0xc($a1) -/* 054214 80053614 E4A00010 */ swc1 $f0, 0x10($a1) -/* 054218 80053618 E4A00014 */ swc1 $f0, 0x14($a1) -/* 05421C 8005361C 0C01BF9D */ jal func_8006FE74 -/* 054220 80053620 E4A40008 */ swc1 $f4, 8($a1) -/* 054224 80053624 44800000 */ mtc1 $zero, $f0 -/* 054228 80053628 260A00A0 */ addiu $t2, $s0, 0xa0 -/* 05422C 8005362C 260B00A4 */ addiu $t3, $s0, 0xa4 -/* 054230 80053630 260C009C */ addiu $t4, $s0, 0x9c -/* 054234 80053634 44050000 */ mfc1 $a1, $f0 -/* 054238 80053638 44070000 */ mfc1 $a3, $f0 -/* 05423C 8005363C AFAC0018 */ sw $t4, 0x18($sp) -/* 054240 80053640 AFAB0014 */ sw $t3, 0x14($sp) -/* 054244 80053644 AFAA0010 */ sw $t2, 0x10($sp) -/* 054248 80053648 27A40030 */ addiu $a0, $sp, 0x30 -/* 05424C 8005364C 0C01BD93 */ jal func_8006F64C -/* 054250 80053650 3C06BF80 */ lui $a2, 0xbf80 -/* 054254 80053654 8FBF002C */ lw $ra, 0x2c($sp) -/* 054258 80053658 8FB00028 */ lw $s0, 0x28($sp) -/* 05425C 8005365C 03E00008 */ jr $ra -/* 054260 80053660 27BD0070 */ addiu $sp, $sp, 0x70 - -glabel func_80053664 -/* 054264 80053664 C48400B4 */ lwc1 $f4, 0xb4($a0) -/* 054268 80053668 44803800 */ mtc1 $zero, $f7 -/* 05426C 8005366C 44803000 */ mtc1 $zero, $f6 -/* 054270 80053670 46002021 */ cvt.d.s $f0, $f4 -/* 054274 80053674 4620303C */ c.lt.d $f6, $f0 -/* 054278 80053678 3C01800E */ lui $at, %hi(D_800E676C) # $at, 0x800e -/* 05427C 8005367C 45000007 */ bc1f .L8005369C -/* 054280 80053680 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 -/* 054284 80053684 C4296768 */ lwc1 $f9, %lo(D_800E6768)($at) -/* 054288 80053688 C428676C */ lwc1 $f8, %lo(D_800E676C)($at) -/* 05428C 8005368C 00000000 */ nop -/* 054290 80053690 46280281 */ sub.d $f10, $f0, $f8 -/* 054294 80053694 46205420 */ cvt.s.d $f16, $f10 -/* 054298 80053698 E49000B4 */ swc1 $f16, 0xb4($a0) -.L8005369C: -/* 05429C 8005369C 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) -/* 0542A0 800536A0 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0542A4 800536A4 304E8000 */ andi $t6, $v0, 0x8000 -/* 0542A8 800536A8 11C00007 */ beqz $t6, .L800536C8 -/* 0542AC 800536AC 304F4000 */ andi $t7, $v0, 0x4000 -/* 0542B0 800536B0 44819000 */ mtc1 $at, $f18 -/* 0542B4 800536B4 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 -/* 0542B8 800536B8 E49200B4 */ swc1 $f18, 0xb4($a0) -/* 0542BC 800536BC 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) -/* 0542C0 800536C0 00000000 */ nop -/* 0542C4 800536C4 304F4000 */ andi $t7, $v0, 0x4000 -.L800536C8: -/* 0542C8 800536C8 11E00011 */ beqz $t7, .L80053710 -/* 0542CC 800536CC 3C01800E */ lui $at, 0x800e -/* 0542D0 800536D0 C48400B8 */ lwc1 $f4, 0xb8($a0) -/* 0542D4 800536D4 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 0542D8 800536D8 44813800 */ mtc1 $at, $f7 -/* 0542DC 800536DC 44803000 */ mtc1 $zero, $f6 -/* 0542E0 800536E0 46002021 */ cvt.d.s $f0, $f4 -/* 0542E4 800536E4 4626003C */ c.lt.d $f0, $f6 -/* 0542E8 800536E8 3C01800E */ lui $at, %hi(D_800E6774) # $at, 0x800e -/* 0542EC 800536EC 45000016 */ bc1f .L80053748 -/* 0542F0 800536F0 00000000 */ nop -/* 0542F4 800536F4 C4296770 */ lwc1 $f9, %lo(D_800E6770)($at) -/* 0542F8 800536F8 C4286774 */ lwc1 $f8, %lo(D_800E6774)($at) -/* 0542FC 800536FC 00000000 */ nop -/* 054300 80053700 46280280 */ add.d $f10, $f0, $f8 -/* 054304 80053704 46205420 */ cvt.s.d $f16, $f10 -/* 054308 80053708 03E00008 */ jr $ra -/* 05430C 8005370C E49000B8 */ swc1 $f16, 0xb8($a0) - -.L80053710: -/* 054310 80053710 C49200B8 */ lwc1 $f18, 0xb8($a0) -/* 054314 80053714 C4256778 */ lwc1 $f5, 0x6778($at) -/* 054318 80053718 C424677C */ lwc1 $f4, 0x677c($at) -/* 05431C 8005371C 46009021 */ cvt.d.s $f0, $f18 -/* 054320 80053720 4620203C */ c.lt.d $f4, $f0 -/* 054324 80053724 3C01800E */ lui $at, %hi(D_800E6784) # $at, 0x800e -/* 054328 80053728 45000007 */ bc1f .L80053748 -/* 05432C 8005372C 00000000 */ nop -/* 054330 80053730 C4276780 */ lwc1 $f7, %lo(D_800E6780)($at) -/* 054334 80053734 C4266784 */ lwc1 $f6, %lo(D_800E6784)($at) -/* 054338 80053738 00000000 */ nop -/* 05433C 8005373C 46260201 */ sub.d $f8, $f0, $f6 -/* 054340 80053740 462042A0 */ cvt.s.d $f10, $f8 -/* 054344 80053744 E48A00B8 */ swc1 $f10, 0xb8($a0) -.L80053748: -/* 054348 80053748 03E00008 */ jr $ra -/* 05434C 8005374C 00000000 */ nop - -glabel func_80053750 -/* 054350 80053750 AFA50004 */ sw $a1, 4($sp) -/* 054354 80053754 8C820060 */ lw $v0, 0x60($a0) -/* 054358 80053758 44867000 */ mtc1 $a2, $f14 -/* 05435C 8005375C 104001CD */ beqz $v0, .L80053E94 -/* 054360 80053760 00A03025 */ move $a2, $a1 -/* 054364 80053764 8C430000 */ lw $v1, ($v0) -/* 054368 80053768 24010002 */ li $at, 2 -/* 05436C 8005376C 1461000A */ bne $v1, $at, .L80053798 -/* 054370 80053770 28610004 */ slti $at, $v1, 4 -/* 054374 80053774 8C450004 */ lw $a1, 4($v0) -/* 054378 80053778 24074000 */ li $a3, 16384 -/* 05437C 8005377C A4A70000 */ sh $a3, ($a1) -/* 054380 80053780 8C8E0060 */ lw $t6, 0x60($a0) -/* 054384 80053784 00000000 */ nop -/* 054388 80053788 8DC50008 */ lw $a1, 8($t6) -/* 05438C 8005378C 00000000 */ nop -/* 054390 80053790 A4A70000 */ sh $a3, ($a1) -/* 054394 80053794 28610004 */ slti $at, $v1, 4 -.L80053798: -/* 054398 80053798 142001BE */ bnez $at, .L80053E94 -/* 05439C 8005379C 00000000 */ nop -/* 0543A0 800537A0 C4C0002C */ lwc1 $f0, 0x2c($a2) -/* 0543A4 800537A4 3C014014 */ li $at, 0x40140000 # 2.312500 -/* 0543A8 800537A8 44818800 */ mtc1 $at, $f17 -/* 0543AC 800537AC 44808000 */ mtc1 $zero, $f16 -/* 0543B0 800537B0 460000A1 */ cvt.d.s $f2, $f0 -/* 0543B4 800537B4 4622803C */ c.lt.d $f16, $f2 -/* 0543B8 800537B8 44802000 */ mtc1 $zero, $f4 -/* 0543BC 800537BC 45000004 */ bc1f .L800537D0 -/* 0543C0 800537C0 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 0543C4 800537C4 44810000 */ mtc1 $at, $f0 -/* 0543C8 800537C8 00000000 */ nop -/* 0543CC 800537CC 460000A1 */ cvt.d.s $f2, $f0 -.L800537D0: -/* 0543D0 800537D0 3C01C014 */ li $at, 0xC0140000 # -2.312500 -/* 0543D4 800537D4 44812800 */ mtc1 $at, $f5 -/* 0543D8 800537D8 3C01C0A0 */ li $at, 0xC0A00000 # -5.000000 -/* 0543DC 800537DC 4624103C */ c.lt.d $f2, $f4 -/* 0543E0 800537E0 24090004 */ li $t1, 4 -/* 0543E4 800537E4 45000003 */ bc1f .L800537F4 -/* 0543E8 800537E8 00000000 */ nop -/* 0543EC 800537EC 44810000 */ mtc1 $at, $f0 -/* 0543F0 800537F0 00000000 */ nop -.L800537F4: -/* 0543F4 800537F4 3C01800E */ lui $at, %hi(D_800E678C) # $at, 0x800e -/* 0543F8 800537F8 C4C600B8 */ lwc1 $f6, 0xb8($a2) -/* 0543FC 800537FC C4236788 */ lwc1 $f3, %lo(D_800E6788)($at) -/* 054400 80053800 C422678C */ lwc1 $f2, %lo(D_800E678C)($at) -/* 054404 80053804 46003221 */ cvt.d.s $f8, $f6 -/* 054408 80053808 4628103C */ c.lt.d $f2, $f8 -/* 05440C 8005380C 24020001 */ li $v0, 1 -/* 054410 80053810 4500000A */ bc1f .L8005383C -/* 054414 80053814 00000000 */ nop -/* 054418 80053818 C4CA00B4 */ lwc1 $f10, 0xb4($a2) -/* 05441C 8005381C 00001025 */ move $v0, $zero -/* 054420 80053820 46005121 */ cvt.d.s $f4, $f10 -/* 054424 80053824 4622203C */ c.lt.d $f4, $f2 -/* 054428 80053828 00000000 */ nop -/* 05442C 8005382C 45000003 */ bc1f .L8005383C -/* 054430 80053830 00000000 */ nop -/* 054434 80053834 44800000 */ mtc1 $zero, $f0 -/* 054438 80053838 00000000 */ nop -.L8005383C: -/* 05443C 8005383C 460E0182 */ mul.s $f6, $f0, $f14 -/* 054440 80053840 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 054444 80053844 44815800 */ mtc1 $at, $f11 -/* 054448 80053848 44805000 */ mtc1 $zero, $f10 -/* 05444C 8005384C 46003221 */ cvt.d.s $f8, $f6 -/* 054450 80053850 462A4102 */ mul.d $f4, $f8, $f10 -/* 054454 80053854 C4C600B0 */ lwc1 $f6, 0xb0($a2) -/* 054458 80053858 44809000 */ mtc1 $zero, $f18 -/* 05445C 8005385C 46003221 */ cvt.d.s $f8, $f6 -/* 054460 80053860 44807000 */ mtc1 $zero, $f14 -/* 054464 80053864 46244281 */ sub.d $f10, $f8, $f4 -/* 054468 80053868 462051A0 */ cvt.s.d $f6, $f10 -/* 05446C 8005386C E4C600B0 */ swc1 $f6, 0xb0($a2) -/* 054470 80053870 C4C200B0 */ lwc1 $f2, 0xb0($a2) -/* 054474 80053874 00000000 */ nop -/* 054478 80053878 46001321 */ cvt.d.s $f12, $f2 -/* 05447C 8005387C 462C803C */ c.lt.d $f16, $f12 -/* 054480 80053880 00000000 */ nop -/* 054484 80053884 45000067 */ bc1f .L80053A24 -/* 054488 80053888 00000000 */ nop -.L8005388C: -/* 05448C 8005388C 46306201 */ sub.d $f8, $f12, $f16 -/* 054490 80053890 00001825 */ move $v1, $zero -/* 054494 80053894 46204120 */ cvt.s.d $f4, $f8 -/* 054498 80053898 E4C400B0 */ swc1 $f4, 0xb0($a2) -/* 05449C 8005389C 28610002 */ slti $at, $v1, 2 -.L800538A0: -/* 0544A0 800538A0 14200003 */ bnez $at, .L800538B0 -/* 0544A4 800538A4 0003C080 */ sll $t8, $v1, 2 -/* 0544A8 800538A8 10400029 */ beqz $v0, .L80053950 -/* 0544AC 800538AC 00000000 */ nop -.L800538B0: -/* 0544B0 800538B0 8C8F0060 */ lw $t7, 0x60($a0) -/* 0544B4 800538B4 80C801FB */ lb $t0, 0x1fb($a2) -/* 0544B8 800538B8 01F8C821 */ addu $t9, $t7, $t8 -/* 0544BC 800538BC 8F270004 */ lw $a3, 4($t9) -/* 0544C0 800538C0 11000004 */ beqz $t0, .L800538D4 -/* 0544C4 800538C4 00E02825 */ move $a1, $a3 -/* 0544C8 800538C8 28610003 */ slti $at, $v1, 3 -/* 0544CC 800538CC 10200003 */ beqz $at, .L800538DC -/* 0544D0 800538D0 00000000 */ nop -.L800538D4: -/* 0544D4 800538D4 1500001E */ bnez $t0, .L80053950 -/* 0544D8 800538D8 00000000 */ nop -.L800538DC: -/* 0544DC 800538DC 8CEA0078 */ lw $t2, 0x78($a3) -/* 0544E0 800538E0 00000000 */ nop -/* 0544E4 800538E4 11400010 */ beqz $t2, .L80053928 -/* 0544E8 800538E8 00000000 */ nop -/* 0544EC 800538EC 80AB003A */ lb $t3, 0x3a($a1) -/* 0544F0 800538F0 00000000 */ nop -/* 0544F4 800538F4 256CFFFF */ addiu $t4, $t3, -1 -/* 0544F8 800538F8 A0AC003A */ sb $t4, 0x3a($a1) -/* 0544FC 800538FC 80AD003A */ lb $t5, 0x3a($a1) -/* 054500 80053900 00000000 */ nop -/* 054504 80053904 05A10012 */ bgez $t5, .L80053950 -/* 054508 80053908 00000000 */ nop -/* 05450C 8005390C 8CAE0040 */ lw $t6, 0x40($a1) -/* 054510 80053910 00000000 */ nop -/* 054514 80053914 81CF0055 */ lb $t7, 0x55($t6) -/* 054518 80053918 00000000 */ nop -/* 05451C 8005391C 25F8FFFF */ addiu $t8, $t7, -1 -/* 054520 80053920 1000000B */ b .L80053950 -/* 054524 80053924 A0B8003A */ sb $t8, 0x3a($a1) -.L80053928: -/* 054528 80053928 80B9003A */ lb $t9, 0x3a($a1) -/* 05452C 8005392C 8CAB0040 */ lw $t3, 0x40($a1) -/* 054530 80053930 272A0001 */ addiu $t2, $t9, 1 -/* 054534 80053934 A0AA003A */ sb $t2, 0x3a($a1) -/* 054538 80053938 80AD003A */ lb $t5, 0x3a($a1) -/* 05453C 8005393C 816C0055 */ lb $t4, 0x55($t3) -/* 054540 80053940 00000000 */ nop -/* 054544 80053944 158D0002 */ bne $t4, $t5, .L80053950 -/* 054548 80053948 00000000 */ nop -/* 05454C 8005394C A0A0003A */ sb $zero, 0x3a($a1) -.L80053950: -/* 054550 80053950 18600003 */ blez $v1, .L80053960 -/* 054554 80053954 00037880 */ sll $t7, $v1, 2 -/* 054558 80053958 10400028 */ beqz $v0, .L800539FC -/* 05455C 8005395C 00000000 */ nop -.L80053960: -/* 054560 80053960 8C8E0060 */ lw $t6, 0x60($a0) -/* 054564 80053964 80C801FB */ lb $t0, 0x1fb($a2) -/* 054568 80053968 01CFC021 */ addu $t8, $t6, $t7 -/* 05456C 8005396C 8F050008 */ lw $a1, 8($t8) -/* 054570 80053970 11000003 */ beqz $t0, .L80053980 -/* 054574 80053974 28610002 */ slti $at, $v1, 2 -/* 054578 80053978 10200003 */ beqz $at, .L80053988 -/* 05457C 8005397C 00000000 */ nop -.L80053980: -/* 054580 80053980 1500001E */ bnez $t0, .L800539FC -/* 054584 80053984 00000000 */ nop -.L80053988: -/* 054588 80053988 8CB90078 */ lw $t9, 0x78($a1) -/* 05458C 8005398C 00000000 */ nop -/* 054590 80053990 13200010 */ beqz $t9, .L800539D4 -/* 054594 80053994 00000000 */ nop -/* 054598 80053998 80AA003A */ lb $t2, 0x3a($a1) -/* 05459C 8005399C 00000000 */ nop -/* 0545A0 800539A0 254BFFFF */ addiu $t3, $t2, -1 -/* 0545A4 800539A4 A0AB003A */ sb $t3, 0x3a($a1) -/* 0545A8 800539A8 80AC003A */ lb $t4, 0x3a($a1) -/* 0545AC 800539AC 00000000 */ nop -/* 0545B0 800539B0 05810012 */ bgez $t4, .L800539FC -/* 0545B4 800539B4 00000000 */ nop -/* 0545B8 800539B8 8CAD0040 */ lw $t5, 0x40($a1) -/* 0545BC 800539BC 00000000 */ nop -/* 0545C0 800539C0 81AE0055 */ lb $t6, 0x55($t5) -/* 0545C4 800539C4 00000000 */ nop -/* 0545C8 800539C8 25CFFFFF */ addiu $t7, $t6, -1 -/* 0545CC 800539CC 1000000B */ b .L800539FC -/* 0545D0 800539D0 A0AF003A */ sb $t7, 0x3a($a1) -.L800539D4: -/* 0545D4 800539D4 80B8003A */ lb $t8, 0x3a($a1) -/* 0545D8 800539D8 8CAA0040 */ lw $t2, 0x40($a1) -/* 0545DC 800539DC 27190001 */ addiu $t9, $t8, 1 -/* 0545E0 800539E0 A0B9003A */ sb $t9, 0x3a($a1) -/* 0545E4 800539E4 80AC003A */ lb $t4, 0x3a($a1) -/* 0545E8 800539E8 814B0055 */ lb $t3, 0x55($t2) -/* 0545EC 800539EC 00000000 */ nop -/* 0545F0 800539F0 156C0002 */ bne $t3, $t4, .L800539FC -/* 0545F4 800539F4 00000000 */ nop -/* 0545F8 800539F8 A0A0003A */ sb $zero, 0x3a($a1) -.L800539FC: -/* 0545FC 800539FC 24630002 */ addiu $v1, $v1, 2 -/* 054600 80053A00 1469FFA7 */ bne $v1, $t1, .L800538A0 -/* 054604 80053A04 28610002 */ slti $at, $v1, 2 -/* 054608 80053A08 C4C200B0 */ lwc1 $f2, 0xb0($a2) -/* 05460C 80053A0C 00000000 */ nop -/* 054610 80053A10 46001321 */ cvt.d.s $f12, $f2 -/* 054614 80053A14 462C803C */ c.lt.d $f16, $f12 -/* 054618 80053A18 00000000 */ nop -/* 05461C 80053A1C 4501FF9B */ bc1t .L8005388C -/* 054620 80053A20 00000000 */ nop -.L80053A24: -/* 054624 80053A24 4612103C */ c.lt.s $f2, $f18 -/* 054628 80053A28 24090004 */ li $t1, 4 -/* 05462C 80053A2C 45000067 */ bc1f .L80053BCC -/* 054630 80053A30 00000000 */ nop -.L80053A34: -/* 054634 80053A34 460012A1 */ cvt.d.s $f10, $f2 -/* 054638 80053A38 46305180 */ add.d $f6, $f10, $f16 -/* 05463C 80053A3C 00001825 */ move $v1, $zero -/* 054640 80053A40 46203220 */ cvt.s.d $f8, $f6 -/* 054644 80053A44 E4C800B0 */ swc1 $f8, 0xb0($a2) -/* 054648 80053A48 28610002 */ slti $at, $v1, 2 -.L80053A4C: -/* 05464C 80053A4C 14200003 */ bnez $at, .L80053A5C -/* 054650 80053A50 00037080 */ sll $t6, $v1, 2 -/* 054654 80053A54 10400029 */ beqz $v0, .L80053AFC -/* 054658 80053A58 00000000 */ nop -.L80053A5C: -/* 05465C 80053A5C 8C8D0060 */ lw $t5, 0x60($a0) -/* 054660 80053A60 80C801FB */ lb $t0, 0x1fb($a2) -/* 054664 80053A64 01AE7821 */ addu $t7, $t5, $t6 -/* 054668 80053A68 8DE70004 */ lw $a3, 4($t7) -/* 05466C 80053A6C 11000004 */ beqz $t0, .L80053A80 -/* 054670 80053A70 00E02825 */ move $a1, $a3 -/* 054674 80053A74 28610003 */ slti $at, $v1, 3 -/* 054678 80053A78 10200003 */ beqz $at, .L80053A88 -/* 05467C 80053A7C 00000000 */ nop -.L80053A80: -/* 054680 80053A80 1500001E */ bnez $t0, .L80053AFC -/* 054684 80053A84 00000000 */ nop -.L80053A88: -/* 054688 80053A88 8CF80078 */ lw $t8, 0x78($a3) -/* 05468C 80053A8C 00000000 */ nop -/* 054690 80053A90 17000010 */ bnez $t8, .L80053AD4 -/* 054694 80053A94 00000000 */ nop -/* 054698 80053A98 80B9003A */ lb $t9, 0x3a($a1) -/* 05469C 80053A9C 00000000 */ nop -/* 0546A0 80053AA0 272AFFFF */ addiu $t2, $t9, -1 -/* 0546A4 80053AA4 A0AA003A */ sb $t2, 0x3a($a1) -/* 0546A8 80053AA8 80AB003A */ lb $t3, 0x3a($a1) -/* 0546AC 80053AAC 00000000 */ nop -/* 0546B0 80053AB0 05610012 */ bgez $t3, .L80053AFC -/* 0546B4 80053AB4 00000000 */ nop -/* 0546B8 80053AB8 8CAC0040 */ lw $t4, 0x40($a1) -/* 0546BC 80053ABC 00000000 */ nop -/* 0546C0 80053AC0 818D0055 */ lb $t5, 0x55($t4) -/* 0546C4 80053AC4 00000000 */ nop -/* 0546C8 80053AC8 25AEFFFF */ addiu $t6, $t5, -1 -/* 0546CC 80053ACC 1000000B */ b .L80053AFC -/* 0546D0 80053AD0 A0AE003A */ sb $t6, 0x3a($a1) -.L80053AD4: -/* 0546D4 80053AD4 80AF003A */ lb $t7, 0x3a($a1) -/* 0546D8 80053AD8 8CB90040 */ lw $t9, 0x40($a1) -/* 0546DC 80053ADC 25F80001 */ addiu $t8, $t7, 1 -/* 0546E0 80053AE0 A0B8003A */ sb $t8, 0x3a($a1) -/* 0546E4 80053AE4 80AB003A */ lb $t3, 0x3a($a1) -/* 0546E8 80053AE8 832A0055 */ lb $t2, 0x55($t9) -/* 0546EC 80053AEC 00000000 */ nop -/* 0546F0 80053AF0 154B0002 */ bne $t2, $t3, .L80053AFC -/* 0546F4 80053AF4 00000000 */ nop -/* 0546F8 80053AF8 A0A0003A */ sb $zero, 0x3a($a1) -.L80053AFC: -/* 0546FC 80053AFC 18600003 */ blez $v1, .L80053B0C -/* 054700 80053B00 00036880 */ sll $t5, $v1, 2 -/* 054704 80053B04 10400028 */ beqz $v0, .L80053BA8 -/* 054708 80053B08 00000000 */ nop -.L80053B0C: -/* 05470C 80053B0C 8C8C0060 */ lw $t4, 0x60($a0) -/* 054710 80053B10 80C801FB */ lb $t0, 0x1fb($a2) -/* 054714 80053B14 018D7021 */ addu $t6, $t4, $t5 -/* 054718 80053B18 8DC50008 */ lw $a1, 8($t6) -/* 05471C 80053B1C 11000003 */ beqz $t0, .L80053B2C -/* 054720 80053B20 28610002 */ slti $at, $v1, 2 -/* 054724 80053B24 10200003 */ beqz $at, .L80053B34 -/* 054728 80053B28 00000000 */ nop -.L80053B2C: -/* 05472C 80053B2C 1500001E */ bnez $t0, .L80053BA8 -/* 054730 80053B30 00000000 */ nop -.L80053B34: -/* 054734 80053B34 8CAF0078 */ lw $t7, 0x78($a1) -/* 054738 80053B38 00000000 */ nop -/* 05473C 80053B3C 15E00010 */ bnez $t7, .L80053B80 -/* 054740 80053B40 00000000 */ nop -/* 054744 80053B44 80B8003A */ lb $t8, 0x3a($a1) -/* 054748 80053B48 00000000 */ nop -/* 05474C 80053B4C 2719FFFF */ addiu $t9, $t8, -1 -/* 054750 80053B50 A0B9003A */ sb $t9, 0x3a($a1) -/* 054754 80053B54 80AA003A */ lb $t2, 0x3a($a1) -/* 054758 80053B58 00000000 */ nop -/* 05475C 80053B5C 05410012 */ bgez $t2, .L80053BA8 -/* 054760 80053B60 00000000 */ nop -/* 054764 80053B64 8CAB0040 */ lw $t3, 0x40($a1) -/* 054768 80053B68 00000000 */ nop -/* 05476C 80053B6C 816C0055 */ lb $t4, 0x55($t3) -/* 054770 80053B70 00000000 */ nop -/* 054774 80053B74 258DFFFF */ addiu $t5, $t4, -1 -/* 054778 80053B78 1000000B */ b .L80053BA8 -/* 05477C 80053B7C A0AD003A */ sb $t5, 0x3a($a1) -.L80053B80: -/* 054780 80053B80 80AE003A */ lb $t6, 0x3a($a1) -/* 054784 80053B84 8CB80040 */ lw $t8, 0x40($a1) -/* 054788 80053B88 25CF0001 */ addiu $t7, $t6, 1 -/* 05478C 80053B8C A0AF003A */ sb $t7, 0x3a($a1) -/* 054790 80053B90 80AA003A */ lb $t2, 0x3a($a1) -/* 054794 80053B94 83190055 */ lb $t9, 0x55($t8) -/* 054798 80053B98 00000000 */ nop -/* 05479C 80053B9C 172A0002 */ bne $t9, $t2, .L80053BA8 -/* 0547A0 80053BA0 00000000 */ nop -/* 0547A4 80053BA4 A0A0003A */ sb $zero, 0x3a($a1) -.L80053BA8: -/* 0547A8 80053BA8 24630002 */ addiu $v1, $v1, 2 -/* 0547AC 80053BAC 1469FFA7 */ bne $v1, $t1, .L80053A4C -/* 0547B0 80053BB0 28610002 */ slti $at, $v1, 2 -/* 0547B4 80053BB4 C4C200B0 */ lwc1 $f2, 0xb0($a2) -/* 0547B8 80053BB8 00000000 */ nop -/* 0547BC 80053BBC 4612103C */ c.lt.s $f2, $f18 -/* 0547C0 80053BC0 00000000 */ nop -/* 0547C4 80053BC4 4501FF9B */ bc1t .L80053A34 -/* 0547C8 80053BC8 00000000 */ nop -.L80053BCC: -/* 0547CC 80053BCC 80CB01FB */ lb $t3, 0x1fb($a2) -/* 0547D0 80053BD0 24070001 */ li $a3, 1 -/* 0547D4 80053BD4 1160002B */ beqz $t3, .L80053C84 -/* 0547D8 80053BD8 3C01800E */ lui $at, %hi(D_800E6794) # $at, 0x800e -/* 0547DC 80053BDC 00001025 */ move $v0, $zero -/* 0547E0 80053BE0 24030008 */ li $v1, 8 -.L80053BE4: -/* 0547E4 80053BE4 8C8C0060 */ lw $t4, 0x60($a0) -/* 0547E8 80053BE8 00000000 */ nop -/* 0547EC 80053BEC 01826821 */ addu $t5, $t4, $v0 -/* 0547F0 80053BF0 8DA50004 */ lw $a1, 4($t5) -/* 0547F4 80053BF4 24420004 */ addiu $v0, $v0, 4 -/* 0547F8 80053BF8 8CAE0078 */ lw $t6, 0x78($a1) -/* 0547FC 80053BFC 00000000 */ nop -/* 054800 80053C00 11C00010 */ beqz $t6, .L80053C44 -/* 054804 80053C04 00000000 */ nop -/* 054808 80053C08 80AF003A */ lb $t7, 0x3a($a1) -/* 05480C 80053C0C 00000000 */ nop -/* 054810 80053C10 25F8FFFF */ addiu $t8, $t7, -1 -/* 054814 80053C14 A0B8003A */ sb $t8, 0x3a($a1) -/* 054818 80053C18 80B9003A */ lb $t9, 0x3a($a1) -/* 05481C 80053C1C 00000000 */ nop -/* 054820 80053C20 07210012 */ bgez $t9, .L80053C6C -/* 054824 80053C24 00000000 */ nop -/* 054828 80053C28 8CAA0040 */ lw $t2, 0x40($a1) -/* 05482C 80053C2C 00000000 */ nop -/* 054830 80053C30 814B0055 */ lb $t3, 0x55($t2) -/* 054834 80053C34 00000000 */ nop -/* 054838 80053C38 256CFFFF */ addiu $t4, $t3, -1 -/* 05483C 80053C3C 1000000B */ b .L80053C6C -/* 054840 80053C40 A0AC003A */ sb $t4, 0x3a($a1) -.L80053C44: -/* 054844 80053C44 80AD003A */ lb $t5, 0x3a($a1) -/* 054848 80053C48 8CAF0040 */ lw $t7, 0x40($a1) -/* 05484C 80053C4C 25AE0001 */ addiu $t6, $t5, 1 -/* 054850 80053C50 A0AE003A */ sb $t6, 0x3a($a1) -/* 054854 80053C54 80B9003A */ lb $t9, 0x3a($a1) -/* 054858 80053C58 81F80055 */ lb $t8, 0x55($t7) -/* 05485C 80053C5C 00000000 */ nop -/* 054860 80053C60 17190002 */ bne $t8, $t9, .L80053C6C -/* 054864 80053C64 00000000 */ nop -/* 054868 80053C68 A0A0003A */ sb $zero, 0x3a($a1) -.L80053C6C: -/* 05486C 80053C6C 1443FFDD */ bne $v0, $v1, .L80053BE4 -/* 054870 80053C70 00000000 */ nop -/* 054874 80053C74 8C8A0074 */ lw $t2, 0x74($a0) -/* 054878 80053C78 00000000 */ nop -/* 05487C 80053C7C 354B0C00 */ ori $t3, $t2, 0xc00 -/* 054880 80053C80 AC8B0074 */ sw $t3, 0x74($a0) -.L80053C84: -/* 054884 80053C84 C4336790 */ lwc1 $f19, %lo(D_800E6790)($at) -/* 054888 80053C88 C4326794 */ lwc1 $f18, %lo(D_800E6794)($at) -/* 05488C 80053C8C 3C01800E */ lui $at, %hi(D_800E679C) # $at, 0x800e -/* 054890 80053C90 C4316798 */ lwc1 $f17, %lo(D_800E6798)($at) -/* 054894 80053C94 C430679C */ lwc1 $f16, %lo(D_800E679C)($at) -/* 054898 80053C98 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 05489C 80053C9C 44817800 */ mtc1 $at, $f15 -/* 0548A0 80053CA0 3C01C120 */ li $at, 0xC1200000 # -10.000000 -/* 0548A4 80053CA4 44816000 */ mtc1 $at, $f12 -/* 0548A8 80053CA8 00001025 */ move $v0, $zero -/* 0548AC 80053CAC 24030010 */ li $v1, 16 -.L80053CB0: -/* 0548B0 80053CB0 8C8C0060 */ lw $t4, 0x60($a0) -/* 0548B4 80053CB4 80CE01E3 */ lb $t6, 0x1e3($a2) -/* 0548B8 80053CB8 01826821 */ addu $t5, $t4, $v0 -/* 0548BC 80053CBC 8DA50004 */ lw $a1, 4($t5) -/* 0548C0 80053CC0 01C77824 */ and $t7, $t6, $a3 -/* 0548C4 80053CC4 15E0001A */ bnez $t7, .L80053D30 -/* 0548C8 80053CC8 00075840 */ sll $t3, $a3, 1 -/* 0548CC 80053CCC C4A00010 */ lwc1 $f0, 0x10($a1) -/* 0548D0 80053CD0 00000000 */ nop -/* 0548D4 80053CD4 46006281 */ sub.s $f10, $f12, $f0 -/* 0548D8 80053CD8 460051A1 */ cvt.d.s $f6, $f10 -/* 0548DC 80053CDC 462E3202 */ mul.d $f8, $f6, $f14 -/* 0548E0 80053CE0 46000121 */ cvt.d.s $f4, $f0 -/* 0548E4 80053CE4 46282280 */ add.d $f10, $f4, $f8 -/* 0548E8 80053CE8 462051A0 */ cvt.s.d $f6, $f10 -/* 0548EC 80053CEC E4A60010 */ swc1 $f6, 0x10($a1) -/* 0548F0 80053CF0 80D801E5 */ lb $t8, 0x1e5($a2) -/* 0548F4 80053CF4 00000000 */ nop -/* 0548F8 80053CF8 1300001F */ beqz $t8, .L80053D78 -/* 0548FC 80053CFC 00000000 */ nop -/* 054900 80053D00 8CB90040 */ lw $t9, 0x40($a1) -/* 054904 80053D04 C4A40008 */ lwc1 $f4, 8($a1) -/* 054908 80053D08 C728000C */ lwc1 $f8, 0xc($t9) -/* 05490C 80053D0C 46002021 */ cvt.d.s $f0, $f4 -/* 054910 80053D10 460042A1 */ cvt.d.s $f10, $f8 -/* 054914 80053D14 46305182 */ mul.d $f6, $f10, $f16 -/* 054918 80053D18 46203101 */ sub.d $f4, $f6, $f0 -/* 05491C 80053D1C 46322202 */ mul.d $f8, $f4, $f18 -/* 054920 80053D20 46280280 */ add.d $f10, $f0, $f8 -/* 054924 80053D24 462051A0 */ cvt.s.d $f6, $f10 -/* 054928 80053D28 10000013 */ b .L80053D78 -/* 05492C 80053D2C E4A60008 */ swc1 $f6, 8($a1) -.L80053D30: -/* 054930 80053D30 C4A40010 */ lwc1 $f4, 0x10($a1) -/* 054934 80053D34 8CAA0040 */ lw $t2, 0x40($a1) -/* 054938 80053D38 46002021 */ cvt.d.s $f0, $f4 -/* 05493C 80053D3C 462E0202 */ mul.d $f8, $f0, $f14 -/* 054940 80053D40 C4A20008 */ lwc1 $f2, 8($a1) -/* 054944 80053D44 00000000 */ nop -/* 054948 80053D48 46001121 */ cvt.d.s $f4, $f2 -/* 05494C 80053D4C 46280281 */ sub.d $f10, $f0, $f8 -/* 054950 80053D50 462051A0 */ cvt.s.d $f6, $f10 -/* 054954 80053D54 E4A60010 */ swc1 $f6, 0x10($a1) -/* 054958 80053D58 C548000C */ lwc1 $f8, 0xc($t2) -/* 05495C 80053D5C 00000000 */ nop -/* 054960 80053D60 46024281 */ sub.s $f10, $f8, $f2 -/* 054964 80053D64 460051A1 */ cvt.d.s $f6, $f10 -/* 054968 80053D68 46323202 */ mul.d $f8, $f6, $f18 -/* 05496C 80053D6C 46282280 */ add.d $f10, $f4, $f8 -/* 054970 80053D70 462051A0 */ cvt.s.d $f6, $f10 -/* 054974 80053D74 E4A60008 */ swc1 $f6, 8($a1) -.L80053D78: -/* 054978 80053D78 8C8C0060 */ lw $t4, 0x60($a0) -/* 05497C 80053D7C 80CE01E3 */ lb $t6, 0x1e3($a2) -/* 054980 80053D80 01826821 */ addu $t5, $t4, $v0 -/* 054984 80053D84 8DA50008 */ lw $a1, 8($t5) -/* 054988 80053D88 01CB7824 */ and $t7, $t6, $t3 -/* 05498C 80053D8C 15E0001A */ bnez $t7, .L80053DF8 -/* 054990 80053D90 01603825 */ move $a3, $t3 -/* 054994 80053D94 C4A00010 */ lwc1 $f0, 0x10($a1) -/* 054998 80053D98 00000000 */ nop -/* 05499C 80053D9C 46006201 */ sub.s $f8, $f12, $f0 -/* 0549A0 80053DA0 460042A1 */ cvt.d.s $f10, $f8 -/* 0549A4 80053DA4 462E5182 */ mul.d $f6, $f10, $f14 -/* 0549A8 80053DA8 46000121 */ cvt.d.s $f4, $f0 -/* 0549AC 80053DAC 46262200 */ add.d $f8, $f4, $f6 -/* 0549B0 80053DB0 462042A0 */ cvt.s.d $f10, $f8 -/* 0549B4 80053DB4 E4AA0010 */ swc1 $f10, 0x10($a1) -/* 0549B8 80053DB8 80D801E5 */ lb $t8, 0x1e5($a2) -/* 0549BC 80053DBC 00000000 */ nop -/* 0549C0 80053DC0 13000020 */ beqz $t8, .L80053E44 -/* 0549C4 80053DC4 00075840 */ sll $t3, $a3, 1 -/* 0549C8 80053DC8 8CB90040 */ lw $t9, 0x40($a1) -/* 0549CC 80053DCC C4A40008 */ lwc1 $f4, 8($a1) -/* 0549D0 80053DD0 C726000C */ lwc1 $f6, 0xc($t9) -/* 0549D4 80053DD4 46002021 */ cvt.d.s $f0, $f4 -/* 0549D8 80053DD8 46003221 */ cvt.d.s $f8, $f6 -/* 0549DC 80053DDC 46304282 */ mul.d $f10, $f8, $f16 -/* 0549E0 80053DE0 46205101 */ sub.d $f4, $f10, $f0 -/* 0549E4 80053DE4 46322182 */ mul.d $f6, $f4, $f18 -/* 0549E8 80053DE8 46260200 */ add.d $f8, $f0, $f6 -/* 0549EC 80053DEC 462042A0 */ cvt.s.d $f10, $f8 -/* 0549F0 80053DF0 10000013 */ b .L80053E40 -/* 0549F4 80053DF4 E4AA0008 */ swc1 $f10, 8($a1) -.L80053DF8: -/* 0549F8 80053DF8 C4A40010 */ lwc1 $f4, 0x10($a1) -/* 0549FC 80053DFC 8CAA0040 */ lw $t2, 0x40($a1) -/* 054A00 80053E00 46002021 */ cvt.d.s $f0, $f4 -/* 054A04 80053E04 462E0182 */ mul.d $f6, $f0, $f14 -/* 054A08 80053E08 C4A20008 */ lwc1 $f2, 8($a1) -/* 054A0C 80053E0C 00000000 */ nop -/* 054A10 80053E10 46001121 */ cvt.d.s $f4, $f2 -/* 054A14 80053E14 46260201 */ sub.d $f8, $f0, $f6 -/* 054A18 80053E18 462042A0 */ cvt.s.d $f10, $f8 -/* 054A1C 80053E1C E4AA0010 */ swc1 $f10, 0x10($a1) -/* 054A20 80053E20 C546000C */ lwc1 $f6, 0xc($t2) -/* 054A24 80053E24 00000000 */ nop -/* 054A28 80053E28 46023201 */ sub.s $f8, $f6, $f2 -/* 054A2C 80053E2C 460042A1 */ cvt.d.s $f10, $f8 -/* 054A30 80053E30 46325182 */ mul.d $f6, $f10, $f18 -/* 054A34 80053E34 46262200 */ add.d $f8, $f4, $f6 -/* 054A38 80053E38 462042A0 */ cvt.s.d $f10, $f8 -/* 054A3C 80053E3C E4AA0008 */ swc1 $f10, 8($a1) -.L80053E40: -/* 054A40 80053E40 00075840 */ sll $t3, $a3, 1 -.L80053E44: -/* 054A44 80053E44 24420008 */ addiu $v0, $v0, 8 -/* 054A48 80053E48 1443FF99 */ bne $v0, $v1, .L80053CB0 -/* 054A4C 80053E4C 01603825 */ move $a3, $t3 -/* 054A50 80053E50 3C028012 */ lui $v0, %hi(D_8011D534) # $v0, 0x8012 -/* 054A54 80053E54 2442D534 */ addiu $v0, %lo(D_8011D534) # addiu $v0, $v0, -0x2acc -/* 054A58 80053E58 8C4D0000 */ lw $t5, ($v0) -/* 054A5C 80053E5C 24030064 */ li $v1, 100 -/* 054A60 80053E60 01A30019 */ multu $t5, $v1 -/* 054A64 80053E64 8C8C0060 */ lw $t4, 0x60($a0) -/* 054A68 80053E68 00000000 */ nop -/* 054A6C 80053E6C 8D85000C */ lw $a1, 0xc($t4) -/* 054A70 80053E70 00007012 */ mflo $t6 -/* 054A74 80053E74 A4AE0000 */ sh $t6, ($a1) -/* 054A78 80053E78 8C580000 */ lw $t8, ($v0) -/* 054A7C 80053E7C 8C8F0060 */ lw $t7, 0x60($a0) -/* 054A80 80053E80 03030019 */ multu $t8, $v1 -/* 054A84 80053E84 8DE50010 */ lw $a1, 0x10($t7) -/* 054A88 80053E88 0000C812 */ mflo $t9 -/* 054A8C 80053E8C A4B90000 */ sh $t9, ($a1) -/* 054A90 80053E90 00000000 */ nop -.L80053E94: -/* 054A94 80053E94 03E00008 */ jr $ra -/* 054A98 80053E98 00000000 */ nop - -glabel func_80053E9C -/* 054A9C 80053E9C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 054AA0 80053EA0 AFBF001C */ sw $ra, 0x1c($sp) -/* 054AA4 80053EA4 AFB00018 */ sw $s0, 0x18($sp) -/* 054AA8 80053EA8 84AE0000 */ lh $t6, ($a1) -/* 054AAC 80053EAC 2401FFFF */ li $at, -1 -/* 054AB0 80053EB0 15C10003 */ bne $t6, $at, .L80053EC0 -/* 054AB4 80053EB4 00A08025 */ move $s0, $a1 -/* 054AB8 80053EB8 10000004 */ b .L80053ECC -/* 054ABC 80053EBC A3A00027 */ sb $zero, 0x27($sp) -.L80053EC0: -/* 054AC0 80053EC0 820F0185 */ lb $t7, 0x185($s0) -/* 054AC4 80053EC4 00000000 */ nop -/* 054AC8 80053EC8 A3AF0027 */ sb $t7, 0x27($sp) -.L80053ECC: -/* 054ACC 80053ECC 820201ED */ lb $v0, 0x1ed($s0) -/* 054AD0 80053ED0 3C01800E */ lui $at, %hi(D_800E67A0) # $at, 0x800e -/* 054AD4 80053ED4 18400012 */ blez $v0, .L80053F20 -/* 054AD8 80053ED8 0046C023 */ subu $t8, $v0, $a2 -/* 054ADC 80053EDC 44802000 */ mtc1 $zero, $f4 -/* 054AE0 80053EE0 A21801ED */ sb $t8, 0x1ed($s0) -/* 054AE4 80053EE4 E60400B4 */ swc1 $f4, 0xb4($s0) -/* 054AE8 80053EE8 C42667A0 */ lwc1 $f6, %lo(D_800E67A0)($at) -/* 054AEC 80053EEC 821901ED */ lb $t9, 0x1ed($s0) -/* 054AF0 80053EF0 E6060090 */ swc1 $f6, 0x90($s0) -/* 054AF4 80053EF4 1F20000B */ bgtz $t9, .L80053F24 -/* 054AF8 80053EF8 00000000 */ nop -/* 054AFC 80053EFC 86080000 */ lh $t0, ($s0) -/* 054B00 80053F00 24050140 */ li $a1, 320 -/* 054B04 80053F04 05000007 */ bltz $t0, .L80053F24 -/* 054B08 80053F08 00000000 */ nop -/* 054B0C 80053F0C 0C015C12 */ jal func_80057048 -/* 054B10 80053F10 AFA40028 */ sw $a0, 0x28($sp) -/* 054B14 80053F14 8FA40028 */ lw $a0, 0x28($sp) -/* 054B18 80053F18 10000003 */ b .L80053F28 -/* 054B1C 80053F1C 82020187 */ lb $v0, 0x187($s0) -.L80053F20: -/* 054B20 80053F20 A20001ED */ sb $zero, 0x1ed($s0) -.L80053F24: -/* 054B24 80053F24 82020187 */ lb $v0, 0x187($s0) -.L80053F28: -/* 054B28 80053F28 00000000 */ nop -/* 054B2C 80053F2C 10400005 */ beqz $v0, .L80053F44 -/* 054B30 80053F30 00000000 */ nop -/* 054B34 80053F34 8609018E */ lh $t1, 0x18e($s0) -/* 054B38 80053F38 00000000 */ nop -/* 054B3C 80053F3C 19200003 */ blez $t1, .L80053F4C -/* 054B40 80053F40 00000000 */ nop -.L80053F44: -/* 054B44 80053F44 1000006E */ b .L80054100 -/* 054B48 80053F48 A2000187 */ sb $zero, 0x187($s0) -.L80053F4C: -/* 054B4C 80053F4C 820A01ED */ lb $t2, 0x1ed($s0) -/* 054B50 80053F50 24010004 */ li $at, 4 -/* 054B54 80053F54 11400002 */ beqz $t2, .L80053F60 -/* 054B58 80053F58 00000000 */ nop -/* 054B5C 80053F5C 10410068 */ beq $v0, $at, .L80054100 -.L80053F60: -/* 054B60 80053F60 24010002 */ li $at, 2 -/* 054B64 80053F64 10410008 */ beq $v0, $at, .L80053F88 -/* 054B68 80053F68 24010004 */ li $at, 4 -/* 054B6C 80053F6C 10410006 */ beq $v0, $at, .L80053F88 -/* 054B70 80053F70 02002825 */ move $a1, $s0 -/* 054B74 80053F74 24060002 */ li $a2, 2 -/* 054B78 80053F78 0C015DB8 */ jal func_800576E0 -/* 054B7C 80053F7C AFA40028 */ sw $a0, 0x28($sp) -/* 054B80 80053F80 8FA40028 */ lw $a0, 0x28($sp) -/* 054B84 80053F84 00000000 */ nop -.L80053F88: -/* 054B88 80053F88 920C01C9 */ lbu $t4, 0x1c9($s0) -/* 054B8C 80053F8C 240B0168 */ li $t3, 360 -/* 054B90 80053F90 24010008 */ li $at, 8 -/* 054B94 80053F94 15810002 */ bne $t4, $at, .L80053FA0 -/* 054B98 80053F98 A60B018C */ sh $t3, 0x18c($s0) -/* 054B9C 80053F9C A20001C9 */ sb $zero, 0x1c9($s0) -.L80053FA0: -/* 054BA0 80053FA0 820D01D6 */ lb $t5, 0x1d6($s0) -/* 054BA4 80053FA4 240501C2 */ li $a1, 450 -/* 054BA8 80053FA8 29A10005 */ slti $at, $t5, 5 -/* 054BAC 80053FAC 10200054 */ beqz $at, .L80054100 -/* 054BB0 80053FB0 24060008 */ li $a2, 8 -/* 054BB4 80053FB4 24070081 */ li $a3, 129 -/* 054BB8 80053FB8 0C015C2E */ jal func_800570B8 -/* 054BBC 80053FBC AFA40028 */ sw $a0, 0x28($sp) -/* 054BC0 80053FC0 820E0187 */ lb $t6, 0x187($s0) -/* 054BC4 80053FC4 8FA40028 */ lw $a0, 0x28($sp) -/* 054BC8 80053FC8 25CFFFFF */ addiu $t7, $t6, -1 -/* 054BCC 80053FCC 2DE10006 */ sltiu $at, $t7, 6 -/* 054BD0 80053FD0 1020004A */ beqz $at, .L800540FC -/* 054BD4 80053FD4 000F7880 */ sll $t7, $t7, 2 -/* 054BD8 80053FD8 3C01800E */ lui $at, 0x800e -/* 054BDC 80053FDC 002F0821 */ addu $at, $at, $t7 -/* 054BE0 80053FE0 8C2F67A4 */ lw $t7, 0x67a4($at) -/* 054BE4 80053FE4 00000000 */ nop -/* 054BE8 80053FE8 01E00008 */ jr $t7 -/* 054BEC 80053FEC 00000000 */ nop -/* 054BF0 80053FF0 24180001 */ li $t8, 1 -/* 054BF4 80053FF4 A21801F1 */ sb $t8, 0x1f1($s0) -/* 054BF8 80053FF8 83B90027 */ lb $t9, 0x27($sp) -/* 054BFC 80053FFC 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 054C00 80054000 1720000C */ bnez $t9, .L80054034 -/* 054C04 80054004 00000000 */ nop -/* 054C08 80054008 44804000 */ mtc1 $zero, $f8 -/* 054C0C 8005400C 3C014025 */ li $at, 0x40250000 # 2.578125 -/* 054C10 80054010 E608002C */ swc1 $f8, 0x2c($s0) -/* 054C14 80054014 C48A0020 */ lwc1 $f10, 0x20($a0) -/* 054C18 80054018 44819800 */ mtc1 $at, $f19 -/* 054C1C 8005401C 44809000 */ mtc1 $zero, $f18 -/* 054C20 80054020 46005421 */ cvt.d.s $f16, $f10 -/* 054C24 80054024 46328100 */ add.d $f4, $f16, $f18 -/* 054C28 80054028 462021A0 */ cvt.s.d $f6, $f4 -/* 054C2C 8005402C 10000033 */ b .L800540FC -/* 054C30 80054030 E4860020 */ swc1 $f6, 0x20($a0) -.L80054034: -/* 054C34 80054034 C608002C */ lwc1 $f8, 0x2c($s0) -/* 054C38 80054038 44815000 */ mtc1 $at, $f10 -/* 054C3C 8005403C 3C014021 */ li $at, 0x40210000 # 2.515625 -/* 054C40 80054040 460A4403 */ div.s $f16, $f8, $f10 -/* 054C44 80054044 44813800 */ mtc1 $at, $f7 -/* 054C48 80054048 44803000 */ mtc1 $zero, $f6 -/* 054C4C 8005404C E610002C */ swc1 $f16, 0x2c($s0) -/* 054C50 80054050 C4920020 */ lwc1 $f18, 0x20($a0) -/* 054C54 80054054 00000000 */ nop -/* 054C58 80054058 46009121 */ cvt.d.s $f4, $f18 -/* 054C5C 8005405C 46262200 */ add.d $f8, $f4, $f6 -/* 054C60 80054060 462042A0 */ cvt.s.d $f10, $f8 -/* 054C64 80054064 10000025 */ b .L800540FC -/* 054C68 80054068 E48A0020 */ swc1 $f10, 0x20($a0) -/* 054C6C 8005406C 24080002 */ li $t0, 2 -/* 054C70 80054070 24091002 */ li $t1, 4098 -/* 054C74 80054074 A20801DB */ sb $t0, 0x1db($s0) -/* 054C78 80054078 A60901A2 */ sh $t1, 0x1a2($s0) -/* 054C7C 8005407C 0C015C12 */ jal func_80057048 -/* 054C80 80054080 2405013B */ li $a1, 315 -/* 054C84 80054084 1000001E */ b .L80054100 -/* 054C88 80054088 A2000187 */ sb $zero, 0x187($s0) -/* 054C8C 8005408C 240A003C */ li $t2, 60 -/* 054C90 80054090 1000001A */ b .L800540FC -/* 054C94 80054094 A20A01ED */ sb $t2, 0x1ed($s0) -/* 054C98 80054098 C610002C */ lwc1 $f16, 0x2c($s0) -/* 054C9C 8005409C 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 054CA0 800540A0 44812800 */ mtc1 $at, $f5 -/* 054CA4 800540A4 44802000 */ mtc1 $zero, $f4 -/* 054CA8 800540A8 460084A1 */ cvt.d.s $f18, $f16 -/* 054CAC 800540AC 46249182 */ mul.d $f6, $f18, $f4 -/* 054CB0 800540B0 240B0078 */ li $t3, 120 -/* 054CB4 800540B4 A60B0204 */ sh $t3, 0x204($s0) -/* 054CB8 800540B8 46203220 */ cvt.s.d $f8, $f6 -/* 054CBC 800540BC 1000000F */ b .L800540FC -/* 054CC0 800540C0 E608002C */ swc1 $f8, 0x2c($s0) -/* 054CC4 800540C4 44805000 */ mtc1 $zero, $f10 -/* 054CC8 800540C8 240C0001 */ li $t4, 1 -/* 054CCC 800540CC A20C01F1 */ sb $t4, 0x1f1($s0) -/* 054CD0 800540D0 E60A002C */ swc1 $f10, 0x2c($s0) -/* 054CD4 800540D4 3C01800E */ lui $at, %hi(D_800E67C4) # $at, 0x800e -/* 054CD8 800540D8 C4900020 */ lwc1 $f16, 0x20($a0) -/* 054CDC 800540DC C42567C0 */ lwc1 $f5, %lo(D_800E67C0)($at) -/* 054CE0 800540E0 C42467C4 */ lwc1 $f4, %lo(D_800E67C4)($at) -/* 054CE4 800540E4 460084A1 */ cvt.d.s $f18, $f16 -/* 054CE8 800540E8 46249180 */ add.d $f6, $f18, $f4 -/* 054CEC 800540EC 24050139 */ li $a1, 313 -/* 054CF0 800540F0 46203220 */ cvt.s.d $f8, $f6 -/* 054CF4 800540F4 0C015C12 */ jal func_80057048 -/* 054CF8 800540F8 E4880020 */ swc1 $f8, 0x20($a0) -.L800540FC: -/* 054CFC 800540FC A2000187 */ sb $zero, 0x187($s0) -.L80054100: -/* 054D00 80054100 8FBF001C */ lw $ra, 0x1c($sp) -/* 054D04 80054104 8FB00018 */ lw $s0, 0x18($sp) -/* 054D08 80054108 03E00008 */ jr $ra -/* 054D0C 8005410C 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_80054110 -/* 054D10 80054110 27BDFF50 */ addiu $sp, $sp, -0xb0 -/* 054D14 80054114 AFBF002C */ sw $ra, 0x2c($sp) -/* 054D18 80054118 AFB10028 */ sw $s1, 0x28($sp) -/* 054D1C 8005411C AFB00024 */ sw $s0, 0x24($sp) -/* 054D20 80054120 AFA600B8 */ sw $a2, 0xb8($sp) -/* 054D24 80054124 AFA700BC */ sw $a3, 0xbc($sp) -/* 054D28 80054128 C484000C */ lwc1 $f4, 0xc($a0) -/* 054D2C 8005412C 3C018012 */ lui $at, %hi(D_8011D554) # $at, 0x8012 -/* 054D30 80054130 E7A40098 */ swc1 $f4, 0x98($sp) -/* 054D34 80054134 C4860010 */ lwc1 $f6, 0x10($a0) -/* 054D38 80054138 00808825 */ move $s1, $a0 -/* 054D3C 8005413C E7A60094 */ swc1 $f6, 0x94($sp) -/* 054D40 80054140 C4880014 */ lwc1 $f8, 0x14($a0) -/* 054D44 80054144 AC20D554 */ sw $zero, %lo(D_8011D554)($at) -/* 054D48 80054148 00A08025 */ move $s0, $a1 -/* 054D4C 8005414C 3C018012 */ lui $at, %hi(D_8011D558) # $at, 0x8012 -/* 054D50 80054150 00A02025 */ move $a0, $a1 -/* 054D54 80054154 AC20D558 */ sw $zero, %lo(D_8011D558)($at) -/* 054D58 80054158 00002825 */ move $a1, $zero -/* 054D5C 8005415C 00E03025 */ move $a2, $a3 -/* 054D60 80054160 0C015E6C */ jal func_800579B0 -/* 054D64 80054164 E7A80090 */ swc1 $f8, 0x90($sp) -/* 054D68 80054168 0C014D99 */ jal func_80053664 -/* 054D6C 8005416C 02002025 */ move $a0, $s0 -/* 054D70 80054170 02202025 */ move $a0, $s1 -/* 054D74 80054174 0C015D7B */ jal func_800575EC -/* 054D78 80054178 02002825 */ move $a1, $s0 -/* 054D7C 8005417C 8FA600B8 */ lw $a2, 0xb8($sp) -/* 054D80 80054180 02202025 */ move $a0, $s1 -/* 054D84 80054184 0C0157B0 */ jal func_80055EC0 -/* 054D88 80054188 02002825 */ move $a1, $s0 -/* 054D8C 8005418C 8FA600B8 */ lw $a2, 0xb8($sp) -/* 054D90 80054190 02202025 */ move $a0, $s1 -/* 054D94 80054194 0C014FA7 */ jal func_80053E9C -/* 054D98 80054198 02002825 */ move $a1, $s0 -/* 054D9C 8005419C 820E01DB */ lb $t6, 0x1db($s0) -/* 054DA0 800541A0 00000000 */ nop -/* 054DA4 800541A4 11C00008 */ beqz $t6, .L800541C8 -/* 054DA8 800541A8 00000000 */ nop -/* 054DAC 800541AC 8FA600B8 */ lw $a2, 0xb8($sp) -/* 054DB0 800541B0 8FA700BC */ lw $a3, 0xbc($sp) -/* 054DB4 800541B4 02202025 */ move $a0, $s1 -/* 054DB8 800541B8 0C014AD9 */ jal func_80052B64 -/* 054DBC 800541BC 02002825 */ move $a1, $s0 -/* 054DC0 800541C0 10000010 */ b .L80054204 -/* 054DC4 800541C4 8FA500B8 */ lw $a1, 0xb8($sp) -.L800541C8: -/* 054DC8 800541C8 820F01E2 */ lb $t7, 0x1e2($s0) -/* 054DCC 800541CC 8FA600B8 */ lw $a2, 0xb8($sp) -/* 054DD0 800541D0 19E00008 */ blez $t7, .L800541F4 -/* 054DD4 800541D4 02202025 */ move $a0, $s1 -/* 054DD8 800541D8 8FA600B8 */ lw $a2, 0xb8($sp) -/* 054DDC 800541DC 8FA700BC */ lw $a3, 0xbc($sp) -/* 054DE0 800541E0 02202025 */ move $a0, $s1 -/* 054DE4 800541E4 0C01524B */ jal func_8005492C -/* 054DE8 800541E8 02002825 */ move $a1, $s0 -/* 054DEC 800541EC 10000005 */ b .L80054204 -/* 054DF0 800541F0 8FA500B8 */ lw $a1, 0xb8($sp) -.L800541F4: -/* 054DF4 800541F4 8FA700BC */ lw $a3, 0xbc($sp) -/* 054DF8 800541F8 0C014B5F */ jal func_80052D7C -/* 054DFC 800541FC 02002825 */ move $a1, $s0 -/* 054E00 80054200 8FA500B8 */ lw $a1, 0xb8($sp) -.L80054204: -/* 054E04 80054204 02002025 */ move $a0, $s0 -/* 054E08 80054208 00003025 */ move $a2, $zero -/* 054E0C 8005420C 00003825 */ move $a3, $zero -/* 054E10 80054210 0C014214 */ jal func_80050850 -/* 054E14 80054214 AFA00010 */ sw $zero, 0x10($sp) -/* 054E18 80054218 0C01AF6C */ jal func_8006BDB0 -/* 054E1C 8005421C 00000000 */ nop -/* 054E20 80054220 C61000C0 */ lwc1 $f16, 0xc0($s0) -/* 054E24 80054224 44805800 */ mtc1 $zero, $f11 -/* 054E28 80054228 44805000 */ mtc1 $zero, $f10 -/* 054E2C 8005422C 460084A1 */ cvt.d.s $f18, $f16 -/* 054E30 80054230 46325032 */ c.eq.d $f10, $f18 -/* 054E34 80054234 00000000 */ nop -/* 054E38 80054238 45010004 */ bc1t .L8005424C -/* 054E3C 8005423C 00000000 */ nop -/* 054E40 80054240 80580002 */ lb $t8, 2($v0) -/* 054E44 80054244 00000000 */ nop -/* 054E48 80054248 17000005 */ bnez $t8, .L80054260 -.L8005424C: -/* 054E4C 8005424C 3C198012 */ lui $t9, %hi(D_8011D581) # $t9, 0x8012 -/* 054E50 80054250 8339D581 */ lb $t9, %lo(D_8011D581)($t9) -/* 054E54 80054254 2401000A */ li $at, 10 -/* 054E58 80054258 1721004F */ bne $t9, $at, .L80054398 -/* 054E5C 8005425C 00000000 */ nop -.L80054260: -/* 054E60 80054260 920801F0 */ lbu $t0, 0x1f0($s0) -/* 054E64 80054264 02202025 */ move $a0, $s1 -/* 054E68 80054268 1100000A */ beqz $t0, .L80054294 -/* 054E6C 8005426C 02002825 */ move $a1, $s0 -/* 054E70 80054270 3C01800E */ lui $at, %hi(D_800E67CC) # $at, 0x800e -/* 054E74 80054274 C60400A8 */ lwc1 $f4, 0xa8($s0) -/* 054E78 80054278 C42967C8 */ lwc1 $f9, %lo(D_800E67C8)($at) -/* 054E7C 8005427C C42867CC */ lwc1 $f8, %lo(D_800E67CC)($at) -/* 054E80 80054280 460021A1 */ cvt.d.s $f6, $f4 -/* 054E84 80054284 46283401 */ sub.d $f16, $f6, $f8 -/* 054E88 80054288 462082A0 */ cvt.s.d $f10, $f16 -/* 054E8C 8005428C 10000009 */ b .L800542B4 -/* 054E90 80054290 E60A00A8 */ swc1 $f10, 0xa8($s0) -.L80054294: -/* 054E94 80054294 3C01800E */ lui $at, %hi(D_800E67D4) # $at, 0x800e -/* 054E98 80054298 C61200A8 */ lwc1 $f18, 0xa8($s0) -/* 054E9C 8005429C C42767D0 */ lwc1 $f7, %lo(D_800E67D0)($at) -/* 054EA0 800542A0 C42667D4 */ lwc1 $f6, %lo(D_800E67D4)($at) -/* 054EA4 800542A4 46009121 */ cvt.d.s $f4, $f18 -/* 054EA8 800542A8 46262201 */ sub.d $f8, $f4, $f6 -/* 054EAC 800542AC 46204420 */ cvt.s.d $f16, $f8 -/* 054EB0 800542B0 E61000A8 */ swc1 $f16, 0xa8($s0) -.L800542B4: -/* 054EB4 800542B4 27A900A4 */ addiu $t1, $sp, 0xa4 -/* 054EB8 800542B8 AFA90010 */ sw $t1, 0x10($sp) -/* 054EBC 800542BC 27A600A8 */ addiu $a2, $sp, 0xa8 -/* 054EC0 800542C0 0C016420 */ jal func_80059080 -/* 054EC4 800542C4 27A700A0 */ addiu $a3, $sp, 0xa0 -/* 054EC8 800542C8 920A01F0 */ lbu $t2, 0x1f0($s0) -/* 054ECC 800542CC 3C01800E */ lui $at, 0x800e -/* 054ED0 800542D0 1140000A */ beqz $t2, .L800542FC -/* 054ED4 800542D4 00000000 */ nop -/* 054ED8 800542D8 3C01800E */ lui $at, %hi(D_800E67E4) # $at, 0x800e -/* 054EDC 800542DC C60A00A8 */ lwc1 $f10, 0xa8($s0) -/* 054EE0 800542E0 C42567D8 */ lwc1 $f5, %lo(D_800E67D8)($at) -/* 054EE4 800542E4 C42467DC */ lwc1 $f4, %lo(D_800E67DC)($at) -/* 054EE8 800542E8 460054A1 */ cvt.d.s $f18, $f10 -/* 054EEC 800542EC 46249180 */ add.d $f6, $f18, $f4 -/* 054EF0 800542F0 46203220 */ cvt.s.d $f8, $f6 -/* 054EF4 800542F4 10000008 */ b .L80054318 -/* 054EF8 800542F8 E60800A8 */ swc1 $f8, 0xa8($s0) -.L800542FC: -/* 054EFC 800542FC C61000A8 */ lwc1 $f16, 0xa8($s0) -/* 054F00 80054300 C43367E0 */ lwc1 $f19, %lo(D_800E67E0)($at) -/* 054F04 80054304 C43267E4 */ lwc1 $f18, %lo(D_800E67E4)($at) -/* 054F08 80054308 460082A1 */ cvt.d.s $f10, $f16 -/* 054F0C 8005430C 46325100 */ add.d $f4, $f10, $f18 -/* 054F10 80054310 462021A0 */ cvt.s.d $f6, $f4 -/* 054F14 80054314 E60600A8 */ swc1 $f6, 0xa8($s0) -.L80054318: -/* 054F18 80054318 C7A800A8 */ lwc1 $f8, 0xa8($sp) -/* 054F1C 8005431C C630000C */ lwc1 $f16, 0xc($s1) -/* 054F20 80054320 C7B200A4 */ lwc1 $f18, 0xa4($sp) -/* 054F24 80054324 46104281 */ sub.s $f10, $f8, $f16 -/* 054F28 80054328 E7AA00A8 */ swc1 $f10, 0xa8($sp) -/* 054F2C 8005432C C6240014 */ lwc1 $f4, 0x14($s1) -/* 054F30 80054330 460A5202 */ mul.s $f8, $f10, $f10 -/* 054F34 80054334 46049181 */ sub.s $f6, $f18, $f4 -/* 054F38 80054338 E7A600A4 */ swc1 $f6, 0xa4($sp) -/* 054F3C 8005433C 46063402 */ mul.s $f16, $f6, $f6 -/* 054F40 80054340 0C0326B4 */ jal sqrtf -/* 054F44 80054344 46104300 */ add.s $f12, $f8, $f16 -/* 054F48 80054348 C7B200A8 */ lwc1 $f18, 0xa8($sp) -/* 054F4C 8005434C C7AA00A4 */ lwc1 $f10, 0xa4($sp) -/* 054F50 80054350 46009103 */ div.s $f4, $f18, $f0 -/* 054F54 80054354 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 054F58 80054358 44811000 */ mtc1 $at, $f2 -/* 054F5C 8005435C E7A000A0 */ swc1 $f0, 0xa0($sp) -/* 054F60 80054360 3C014118 */ li $at, 0x41180000 # 9.500000 -/* 054F64 80054364 240B0001 */ li $t3, 1 -/* 054F68 80054368 46005183 */ div.s $f6, $f10, $f0 -/* 054F6C 8005436C 46022202 */ mul.s $f8, $f4, $f2 -/* 054F70 80054370 E7A400A8 */ swc1 $f4, 0xa8($sp) -/* 054F74 80054374 44815000 */ mtc1 $at, $f10 -/* 054F78 80054378 E7A600A4 */ swc1 $f6, 0xa4($sp) -/* 054F7C 8005437C E628001C */ swc1 $f8, 0x1c($s1) -/* 054F80 80054380 C7B000A4 */ lwc1 $f16, 0xa4($sp) -/* 054F84 80054384 E62A0020 */ swc1 $f10, 0x20($s1) -/* 054F88 80054388 46028482 */ mul.s $f18, $f16, $f2 -/* 054F8C 8005438C E6320024 */ swc1 $f18, 0x24($s1) -/* 054F90 80054390 10000007 */ b .L800543B0 -/* 054F94 80054394 A20B01F0 */ sb $t3, 0x1f0($s0) -.L80054398: -/* 054F98 80054398 820C01E2 */ lb $t4, 0x1e2($s0) -/* 054F9C 8005439C 00000000 */ nop -/* 054FA0 800543A0 29810003 */ slti $at, $t4, 3 -/* 054FA4 800543A4 14200002 */ bnez $at, .L800543B0 -/* 054FA8 800543A8 00000000 */ nop -/* 054FAC 800543AC A20001F0 */ sb $zero, 0x1f0($s0) -.L800543B0: -/* 054FB0 800543B0 A220003B */ sb $zero, 0x3b($s1) -/* 054FB4 800543B4 860D01A2 */ lh $t5, 0x1a2($s0) -/* 054FB8 800543B8 3C018012 */ lui $at, %hi(D_8011D570) # $at, 0x8012 -/* 054FBC 800543BC 000D7023 */ negu $t6, $t5 -/* 054FC0 800543C0 000E7A03 */ sra $t7, $t6, 8 -/* 054FC4 800543C4 448F3000 */ mtc1 $t7, $f6 -/* 054FC8 800543C8 C428D570 */ lwc1 $f8, %lo(D_8011D570)($at) -/* 054FCC 800543CC 46803120 */ cvt.s.w $f4, $f6 -/* 054FD0 800543D0 24190028 */ li $t9, 40 -/* 054FD4 800543D4 02002025 */ move $a0, $s0 -/* 054FD8 800543D8 46082403 */ div.s $f16, $f4, $f8 -/* 054FDC 800543DC 4458F800 */ cfc1 $t8, $31 -/* 054FE0 800543E0 00000000 */ nop -/* 054FE4 800543E4 37010003 */ ori $at, $t8, 3 -/* 054FE8 800543E8 38210002 */ xori $at, $at, 2 -/* 054FEC 800543EC 44C1F800 */ ctc1 $at, $31 -/* 054FF0 800543F0 00000000 */ nop -/* 054FF4 800543F4 460084A4 */ cvt.w.s $f18, $f16 -/* 054FF8 800543F8 44029000 */ mfc1 $v0, $f18 -/* 054FFC 800543FC 44D8F800 */ ctc1 $t8, $31 -/* 055000 80054400 03221023 */ subu $v0, $t9, $v0 -/* 055004 80054404 04410003 */ bgez $v0, .L80054414 -/* 055008 80054408 2841004A */ slti $at, $v0, 0x4a -/* 05500C 8005440C 00001025 */ move $v0, $zero -/* 055010 80054410 2841004A */ slti $at, $v0, 0x4a -.L80054414: -/* 055014 80054414 14200002 */ bnez $at, .L80054420 -/* 055018 80054418 00000000 */ nop -/* 05501C 8005441C 24020049 */ li $v0, 73 -.L80054420: -/* 055020 80054420 0C0148D3 */ jal func_8005234C -/* 055024 80054424 A6220018 */ sh $v0, 0x18($s1) -/* 055028 80054428 860401A2 */ lh $a0, 0x1a2($s0) -/* 05502C 8005442C 3C088012 */ lui $t0, %hi(D_8011D554) # $t0, 0x8012 -/* 055030 80054430 8D08D554 */ lw $t0, %lo(D_8011D554)($t0) -/* 055034 80054434 3089FFFF */ andi $t1, $a0, 0xffff -/* 055038 80054438 34018001 */ li $at, 32769 -/* 05503C 8005443C 01091023 */ subu $v0, $t0, $t1 -/* 055040 80054440 0041082A */ slt $at, $v0, $at -/* 055044 80054444 8FAB00B8 */ lw $t3, 0xb8($sp) -/* 055048 80054448 14200003 */ bnez $at, .L80054458 -/* 05504C 8005444C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 055050 80054450 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 055054 80054454 00411021 */ addu $v0, $v0, $at -.L80054458: -/* 055058 80054458 28418000 */ slti $at, $v0, -0x8000 -/* 05505C 8005445C 10200002 */ beqz $at, .L80054468 -/* 055060 80054460 3401FFFF */ li $at, 65535 -/* 055064 80054464 00411021 */ addu $v0, $v0, $at -.L80054468: -/* 055068 80054468 00025083 */ sra $t2, $v0, 2 -/* 05506C 8005446C 294102EF */ slti $at, $t2, 0x2ef -/* 055070 80054470 14200002 */ bnez $at, .L8005447C -/* 055074 80054474 01401025 */ move $v0, $t2 -/* 055078 80054478 240202EE */ li $v0, 750 -.L8005447C: -/* 05507C 8005447C 2841FD12 */ slti $at, $v0, -0x2ee -/* 055080 80054480 10200002 */ beqz $at, .L8005448C -/* 055084 80054484 00000000 */ nop -/* 055088 80054488 2402FD12 */ li $v0, -750 -.L8005448C: -/* 05508C 8005448C 004B0019 */ multu $v0, $t3 -/* 055090 80054490 860E01A0 */ lh $t6, 0x1a0($s0) -/* 055094 80054494 3C198012 */ lui $t9, %hi(D_8011D558) # $t9, 0x8012 -/* 055098 80054498 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 -/* 05509C 8005449C 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 -/* 0550A0 800544A0 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0550A4 800544A4 00006012 */ mflo $t4 -/* 0550A8 800544A8 008C6821 */ addu $t5, $a0, $t4 -/* 0550AC 800544AC A60D01A2 */ sh $t5, 0x1a2($s0) -/* 0550B0 800544B0 860F01A2 */ lh $t7, 0x1a2($s0) -/* 0550B4 800544B4 27A40050 */ addiu $a0, $sp, 0x50 -/* 0550B8 800544B8 01CFC021 */ addu $t8, $t6, $t7 -/* 0550BC 800544BC A6380000 */ sh $t8, ($s1) -/* 0550C0 800544C0 860301A6 */ lh $v1, 0x1a6($s0) -/* 0550C4 800544C4 8F39D558 */ lw $t9, %lo(D_8011D558)($t9) -/* 0550C8 800544C8 8FA900B8 */ lw $t1, 0xb8($sp) -/* 0550CC 800544CC 03234023 */ subu $t0, $t9, $v1 -/* 0550D0 800544D0 01090019 */ multu $t0, $t1 -/* 0550D4 800544D4 860D01A4 */ lh $t5, 0x1a4($s0) -/* 0550D8 800544D8 00005012 */ mflo $t2 -/* 0550DC 800544DC 000A5903 */ sra $t3, $t2, 4 -/* 0550E0 800544E0 006B6021 */ addu $t4, $v1, $t3 -/* 0550E4 800544E4 A60C01A6 */ sh $t4, 0x1a6($s0) -/* 0550E8 800544E8 860E01A6 */ lh $t6, 0x1a6($s0) -/* 0550EC 800544EC 00000000 */ nop -/* 0550F0 800544F0 01AE7821 */ addu $t7, $t5, $t6 -/* 0550F4 800544F4 A62F0004 */ sh $t7, 4($s1) -/* 0550F8 800544F8 921801F0 */ lbu $t8, 0x1f0($s0) -/* 0550FC 800544FC 00000000 */ nop -/* 055100 80054500 17000019 */ bnez $t8, .L80054568 -/* 055104 80054504 00000000 */ nop -/* 055108 80054508 861901A0 */ lh $t9, 0x1a0($s0) -/* 05510C 8005450C 8E08010C */ lw $t0, 0x10c($s0) -/* 055110 80054510 44800000 */ mtc1 $zero, $f0 -/* 055114 80054514 44815000 */ mtc1 $at, $f10 -/* 055118 80054518 03284821 */ addu $t1, $t9, $t0 -/* 05511C 8005451C A4A90000 */ sh $t1, ($a1) -/* 055120 80054520 A4A00002 */ sh $zero, 2($a1) -/* 055124 80054524 A4A00004 */ sh $zero, 4($a1) -/* 055128 80054528 E4A0000C */ swc1 $f0, 0xc($a1) -/* 05512C 8005452C E4A00010 */ swc1 $f0, 0x10($a1) -/* 055130 80054530 E4A00014 */ swc1 $f0, 0x14($a1) -/* 055134 80054534 0C01BF9D */ jal func_8006FE74 -/* 055138 80054538 E4AA0008 */ swc1 $f10, 8($a1) -/* 05513C 8005453C 8E050030 */ lw $a1, 0x30($s0) -/* 055140 80054540 8E07002C */ lw $a3, 0x2c($s0) -/* 055144 80054544 262A001C */ addiu $t2, $s1, 0x1c -/* 055148 80054548 27AB00AC */ addiu $t3, $sp, 0xac -/* 05514C 8005454C 262C0024 */ addiu $t4, $s1, 0x24 -/* 055150 80054550 AFAC0018 */ sw $t4, 0x18($sp) -/* 055154 80054554 AFAB0014 */ sw $t3, 0x14($sp) -/* 055158 80054558 AFAA0010 */ sw $t2, 0x10($sp) -/* 05515C 8005455C 27A40050 */ addiu $a0, $sp, 0x50 -/* 055160 80054560 0C01BD93 */ jal func_8006F64C -/* 055164 80054564 24060000 */ li $a2, 0 -.L80054568: -/* 055168 80054568 820D0175 */ lb $t5, 0x175($s0) -/* 05516C 8005456C 3C018012 */ lui $at, %hi(D_8011D578) # $at, 0x8012 -/* 055170 80054570 11A00007 */ beqz $t5, .L80054590 -/* 055174 80054574 02202025 */ move $a0, $s1 -/* 055178 80054578 C426D578 */ lwc1 $f6, %lo(D_8011D578)($at) -/* 05517C 8005457C 3C018012 */ lui $at, %hi(D_8011D57C) # $at, 0x8012 -/* 055180 80054580 E626001C */ swc1 $f6, 0x1c($s1) -/* 055184 80054584 C424D57C */ lwc1 $f4, %lo(D_8011D57C)($at) -/* 055188 80054588 00000000 */ nop -/* 05518C 8005458C E6240024 */ swc1 $f4, 0x24($s1) -.L80054590: -/* 055190 80054590 8E0E0148 */ lw $t6, 0x148($s0) -/* 055194 80054594 8FA600BC */ lw $a2, 0xbc($sp) -/* 055198 80054598 15C00029 */ bnez $t6, .L80054640 -/* 05519C 8005459C 00000000 */ nop -/* 0551A0 800545A0 C628001C */ lwc1 $f8, 0x1c($s1) -/* 0551A4 800545A4 00000000 */ nop -/* 0551A8 800545A8 E7A800A8 */ swc1 $f8, 0xa8($sp) -/* 0551AC 800545AC C6300024 */ lwc1 $f16, 0x24($s1) -/* 0551B0 800545B0 C7B200A8 */ lwc1 $f18, 0xa8($sp) -/* 0551B4 800545B4 E7B000A4 */ swc1 $f16, 0xa4($sp) -/* 0551B8 800545B8 820F01D2 */ lb $t7, 0x1d2($s0) -/* 0551BC 800545BC 00000000 */ nop -/* 0551C0 800545C0 11E00009 */ beqz $t7, .L800545E8 -/* 0551C4 800545C4 00000000 */ nop -/* 0551C8 800545C8 C60A011C */ lwc1 $f10, 0x11c($s0) -/* 0551CC 800545CC C7A400A4 */ lwc1 $f4, 0xa4($sp) -/* 0551D0 800545D0 460A9180 */ add.s $f6, $f18, $f10 -/* 0551D4 800545D4 E7A600A8 */ swc1 $f6, 0xa8($sp) -/* 0551D8 800545D8 C6080120 */ lwc1 $f8, 0x120($s0) -/* 0551DC 800545DC 00000000 */ nop -/* 0551E0 800545E0 46082400 */ add.s $f16, $f4, $f8 -/* 0551E4 800545E4 E7B000A4 */ swc1 $f16, 0xa4($sp) -.L800545E8: -/* 0551E8 800545E8 C7B200A8 */ lwc1 $f18, 0xa8($sp) -/* 0551EC 800545EC C60A0084 */ lwc1 $f10, 0x84($s0) -/* 0551F0 800545F0 C7A400A4 */ lwc1 $f4, 0xa4($sp) -/* 0551F4 800545F4 460A9180 */ add.s $f6, $f18, $f10 -/* 0551F8 800545F8 C7A000BC */ lwc1 $f0, 0xbc($sp) -/* 0551FC 800545FC E7A600A8 */ swc1 $f6, 0xa8($sp) -/* 055200 80054600 C6080088 */ lwc1 $f8, 0x88($s0) -/* 055204 80054604 46003482 */ mul.s $f18, $f6, $f0 -/* 055208 80054608 46082400 */ add.s $f16, $f4, $f8 -/* 05520C 8005460C 02202025 */ move $a0, $s1 -/* 055210 80054610 E7B000A4 */ swc1 $f16, 0xa4($sp) -/* 055214 80054614 C62A0020 */ lwc1 $f10, 0x20($s1) -/* 055218 80054618 44059000 */ mfc1 $a1, $f18 -/* 05521C 8005461C 46005102 */ mul.s $f4, $f10, $f0 -/* 055220 80054620 00000000 */ nop -/* 055224 80054624 46008202 */ mul.s $f8, $f16, $f0 -/* 055228 80054628 44062000 */ mfc1 $a2, $f4 -/* 05522C 8005462C 44074000 */ mfc1 $a3, $f8 -/* 055230 80054630 0C00455C */ jal func_80011570 -/* 055234 80054634 00000000 */ nop -/* 055238 80054638 10000003 */ b .L80054648 -/* 05523C 8005463C 00000000 */ nop -.L80054640: -/* 055240 80054640 0C0141D5 */ jal func_80050754 -/* 055244 80054644 02002825 */ move $a1, $s0 -.L80054648: -/* 055248 80054648 3C188012 */ lui $t8, %hi(D_8011D55C) # $t8, 0x8012 -/* 05524C 8005464C 8F18D55C */ lw $t8, %lo(D_8011D55C)($t8) -/* 055250 80054650 2401FFFF */ li $at, -1 -/* 055254 80054654 1701000B */ bne $t8, $at, .L80054684 -/* 055258 80054658 8FA600B8 */ lw $a2, 0xb8($sp) -/* 05525C 8005465C 0C008D5A */ jal func_80023568 -/* 055260 80054660 00000000 */ nop -/* 055264 80054664 14400006 */ bnez $v0, .L80054680 -/* 055268 80054668 02202025 */ move $a0, $s1 -/* 05526C 8005466C 8FA600B8 */ lw $a2, 0xb8($sp) -/* 055270 80054670 0C0156A1 */ jal func_80055A84 -/* 055274 80054674 02002825 */ move $a1, $s0 -/* 055278 80054678 10000006 */ b .L80054694 -/* 05527C 8005467C 82190201 */ lb $t9, 0x201($s0) -.L80054680: -/* 055280 80054680 8FA600B8 */ lw $a2, 0xb8($sp) -.L80054684: -/* 055284 80054684 02202025 */ move $a0, $s1 -/* 055288 80054688 0C0153F4 */ jal func_80054FD0 -/* 05528C 8005468C 02002825 */ move $a1, $s0 -/* 055290 80054690 82190201 */ lb $t9, 0x201($s0) -.L80054694: -/* 055294 80054694 00000000 */ nop -/* 055298 80054698 17200003 */ bnez $t9, .L800546A8 -/* 05529C 8005469C 00000000 */ nop -/* 0552A0 800546A0 10000008 */ b .L800546C4 -/* 0552A4 800546A4 AE200074 */ sw $zero, 0x74($s1) -.L800546A8: -/* 0552A8 800546A8 820801D6 */ lb $t0, 0x1d6($s0) -/* 0552AC 800546AC 8FA500B8 */ lw $a1, 0xb8($sp) -/* 0552B0 800546B0 29010005 */ slti $at, $t0, 5 -/* 0552B4 800546B4 10200004 */ beqz $at, .L800546C8 -/* 0552B8 800546B8 8FA600BC */ lw $a2, 0xbc($sp) -/* 0552BC 800546BC 0C02BDC5 */ jal func_800AF714 -/* 0552C0 800546C0 02202025 */ move $a0, $s1 -.L800546C4: -/* 0552C4 800546C4 8FA600BC */ lw $a2, 0xbc($sp) -.L800546C8: -/* 0552C8 800546C8 02202025 */ move $a0, $s1 -/* 0552CC 800546CC 0C014DD4 */ jal func_80053750 -/* 0552D0 800546D0 02002825 */ move $a1, $s0 -/* 0552D4 800546D4 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0552D8 800546D8 44813000 */ mtc1 $at, $f6 -/* 0552DC 800546DC C7B200BC */ lwc1 $f18, 0xbc($sp) -/* 0552E0 800546E0 C7B00098 */ lwc1 $f16, 0x98($sp) -/* 0552E4 800546E4 46123283 */ div.s $f10, $f6, $f18 -/* 0552E8 800546E8 3C018012 */ lui $at, %hi(D_8011D548) # $at, 0x8012 -/* 0552EC 800546EC C426D548 */ lwc1 $f6, %lo(D_8011D548)($at) -/* 0552F0 800546F0 3C018012 */ lui $at, %hi(D_8011D54C) # $at, 0x8012 -/* 0552F4 800546F4 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 -/* 0552F8 800546F8 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 -/* 0552FC 800546FC 44800000 */ mtc1 $zero, $f0 -/* 055300 80054700 27A40050 */ addiu $a0, $sp, 0x50 -/* 055304 80054704 E7AA00AC */ swc1 $f10, 0xac($sp) -/* 055308 80054708 C624000C */ lwc1 $f4, 0xc($s1) -/* 05530C 8005470C 00000000 */ nop -/* 055310 80054710 46102201 */ sub.s $f8, $f4, $f16 -/* 055314 80054714 C6100084 */ lwc1 $f16, 0x84($s0) -/* 055318 80054718 46064481 */ sub.s $f18, $f8, $f6 -/* 05531C 8005471C 460A9102 */ mul.s $f4, $f18, $f10 -/* 055320 80054720 C7B20094 */ lwc1 $f18, 0x94($sp) -/* 055324 80054724 46102201 */ sub.s $f8, $f4, $f16 -/* 055328 80054728 E7A800A8 */ swc1 $f8, 0xa8($sp) -/* 05532C 8005472C C6260010 */ lwc1 $f6, 0x10($s1) -/* 055330 80054730 C6280014 */ lwc1 $f8, 0x14($s1) -/* 055334 80054734 46123101 */ sub.s $f4, $f6, $f18 -/* 055338 80054738 460A2402 */ mul.s $f16, $f4, $f10 -/* 05533C 8005473C E6300020 */ swc1 $f16, 0x20($s1) -/* 055340 80054740 C7A60090 */ lwc1 $f6, 0x90($sp) -/* 055344 80054744 C424D54C */ lwc1 $f4, %lo(D_8011D54C)($at) -/* 055348 80054748 46064481 */ sub.s $f18, $f8, $f6 -/* 05534C 8005474C C7B000AC */ lwc1 $f16, 0xac($sp) -/* 055350 80054750 46049281 */ sub.s $f10, $f18, $f4 -/* 055354 80054754 C6060088 */ lwc1 $f6, 0x88($s0) -/* 055358 80054758 46105202 */ mul.s $f8, $f10, $f16 -/* 05535C 8005475C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 055360 80054760 44812000 */ mtc1 $at, $f4 -/* 055364 80054764 46064481 */ sub.s $f18, $f8, $f6 -/* 055368 80054768 E7B200A4 */ swc1 $f18, 0xa4($sp) -/* 05536C 8005476C 8E0A010C */ lw $t2, 0x10c($s0) -/* 055370 80054770 860901A0 */ lh $t1, 0x1a0($s0) -/* 055374 80054774 00000000 */ nop -/* 055378 80054778 012A5821 */ addu $t3, $t1, $t2 -/* 05537C 8005477C 000B6023 */ negu $t4, $t3 -/* 055380 80054780 A4AC0000 */ sh $t4, ($a1) -/* 055384 80054784 862D0002 */ lh $t5, 2($s1) -/* 055388 80054788 00000000 */ nop -/* 05538C 8005478C 000D7023 */ negu $t6, $t5 -/* 055390 80054790 A4AE0002 */ sh $t6, 2($a1) -/* 055394 80054794 862F0004 */ lh $t7, 4($s1) -/* 055398 80054798 E4A0000C */ swc1 $f0, 0xc($a1) -/* 05539C 8005479C 000FC023 */ negu $t8, $t7 -/* 0553A0 800547A0 A4B80004 */ sh $t8, 4($a1) -/* 0553A4 800547A4 E4A00010 */ swc1 $f0, 0x10($a1) -/* 0553A8 800547A8 E4A00014 */ swc1 $f0, 0x14($a1) -/* 0553AC 800547AC 0C01BF9D */ jal func_8006FE74 -/* 0553B0 800547B0 E4A40008 */ swc1 $f4, 8($a1) -/* 0553B4 800547B4 8FA500A8 */ lw $a1, 0xa8($sp) -/* 0553B8 800547B8 8FA700A4 */ lw $a3, 0xa4($sp) -/* 0553BC 800547BC 27B9009C */ addiu $t9, $sp, 0x9c -/* 0553C0 800547C0 27A800AC */ addiu $t0, $sp, 0xac -/* 0553C4 800547C4 27A900A0 */ addiu $t1, $sp, 0xa0 -/* 0553C8 800547C8 AFA90018 */ sw $t1, 0x18($sp) -/* 0553CC 800547CC AFA80014 */ sw $t0, 0x14($sp) -/* 0553D0 800547D0 AFB90010 */ sw $t9, 0x10($sp) -/* 0553D4 800547D4 27A40050 */ addiu $a0, $sp, 0x50 -/* 0553D8 800547D8 0C01BD93 */ jal func_8006F64C -/* 0553DC 800547DC 24060000 */ li $a2, 0 -/* 0553E0 800547E0 820201D2 */ lb $v0, 0x1d2($s0) -/* 0553E4 800547E4 C7B000A0 */ lwc1 $f16, 0xa0($sp) -/* 0553E8 800547E8 1040000B */ beqz $v0, .L80054818 -/* 0553EC 800547EC 00000000 */ nop -/* 0553F0 800547F0 8FAA00B8 */ lw $t2, 0xb8($sp) -/* 0553F4 800547F4 00000000 */ nop -/* 0553F8 800547F8 004A5823 */ subu $t3, $v0, $t2 -/* 0553FC 800547FC A20B01D2 */ sb $t3, 0x1d2($s0) -/* 055400 80054800 820C01D2 */ lb $t4, 0x1d2($s0) -/* 055404 80054804 00000000 */ nop -/* 055408 80054808 05810044 */ bgez $t4, .L8005491C -/* 05540C 8005480C 8FBF002C */ lw $ra, 0x2c($sp) -/* 055410 80054810 10000041 */ b .L80054918 -/* 055414 80054814 A20001D2 */ sb $zero, 0x1d2($s0) -.L80054818: -/* 055418 80054818 C60A002C */ lwc1 $f10, 0x2c($s0) -/* 05541C 8005481C 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 055420 80054820 46105201 */ sub.s $f8, $f10, $f16 -/* 055424 80054824 44811800 */ mtc1 $at, $f3 -/* 055428 80054828 E7A800AC */ swc1 $f8, 0xac($sp) -/* 05542C 8005482C C7A600AC */ lwc1 $f6, 0xac($sp) -/* 055430 80054830 44801000 */ mtc1 $zero, $f2 -/* 055434 80054834 46003021 */ cvt.d.s $f0, $f6 -/* 055438 80054838 4620103C */ c.lt.d $f2, $f0 -/* 05543C 8005483C 44806000 */ mtc1 $zero, $f12 -/* 055440 80054840 4500000A */ bc1f .L8005486C -/* 055444 80054844 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 055448 80054848 C612002C */ lwc1 $f18, 0x2c($s0) -/* 05544C 8005484C 46220281 */ sub.d $f10, $f0, $f2 -/* 055450 80054850 46009121 */ cvt.d.s $f4, $f18 -/* 055454 80054854 462A2401 */ sub.d $f16, $f4, $f10 -/* 055458 80054858 46208220 */ cvt.s.d $f8, $f16 -/* 05545C 8005485C E608002C */ swc1 $f8, 0x2c($s0) -/* 055460 80054860 C7A600AC */ lwc1 $f6, 0xac($sp) -/* 055464 80054864 00000000 */ nop -/* 055468 80054868 46003021 */ cvt.d.s $f0, $f6 -.L8005486C: -/* 05546C 8005486C 44816800 */ mtc1 $at, $f13 -/* 055470 80054870 00000000 */ nop -/* 055474 80054874 462C003C */ c.lt.d $f0, $f12 -/* 055478 80054878 00000000 */ nop -/* 05547C 8005487C 45000007 */ bc1f .L8005489C -/* 055480 80054880 00000000 */ nop -/* 055484 80054884 C612002C */ lwc1 $f18, 0x2c($s0) -/* 055488 80054888 46220280 */ add.d $f10, $f0, $f2 -/* 05548C 8005488C 46009121 */ cvt.d.s $f4, $f18 -/* 055490 80054890 462A2401 */ sub.d $f16, $f4, $f10 -/* 055494 80054894 46208220 */ cvt.s.d $f8, $f16 -/* 055498 80054898 E608002C */ swc1 $f8, 0x2c($s0) -.L8005489C: -/* 05549C 8005489C C6060030 */ lwc1 $f6, 0x30($s0) -/* 0554A0 800548A0 C7B2009C */ lwc1 $f18, 0x9c($sp) -/* 0554A4 800548A4 00000000 */ nop -/* 0554A8 800548A8 46123101 */ sub.s $f4, $f6, $f18 -/* 0554AC 800548AC E7A400AC */ swc1 $f4, 0xac($sp) -/* 0554B0 800548B0 C7AA00AC */ lwc1 $f10, 0xac($sp) -/* 0554B4 800548B4 00000000 */ nop -/* 0554B8 800548B8 46005021 */ cvt.d.s $f0, $f10 -/* 0554BC 800548BC 4620103C */ c.lt.d $f2, $f0 -/* 0554C0 800548C0 00000000 */ nop -/* 0554C4 800548C4 4500000A */ bc1f .L800548F0 -/* 0554C8 800548C8 00000000 */ nop -/* 0554CC 800548CC C6100030 */ lwc1 $f16, 0x30($s0) -/* 0554D0 800548D0 46220181 */ sub.d $f6, $f0, $f2 -/* 0554D4 800548D4 46008221 */ cvt.d.s $f8, $f16 -/* 0554D8 800548D8 46264481 */ sub.d $f18, $f8, $f6 -/* 0554DC 800548DC 46209120 */ cvt.s.d $f4, $f18 -/* 0554E0 800548E0 E6040030 */ swc1 $f4, 0x30($s0) -/* 0554E4 800548E4 C7AA00AC */ lwc1 $f10, 0xac($sp) -/* 0554E8 800548E8 00000000 */ nop -/* 0554EC 800548EC 46005021 */ cvt.d.s $f0, $f10 -.L800548F0: -/* 0554F0 800548F0 462C003C */ c.lt.d $f0, $f12 -/* 0554F4 800548F4 00000000 */ nop -/* 0554F8 800548F8 45000008 */ bc1f .L8005491C -/* 0554FC 800548FC 8FBF002C */ lw $ra, 0x2c($sp) -/* 055500 80054900 C6100030 */ lwc1 $f16, 0x30($s0) -/* 055504 80054904 46220180 */ add.d $f6, $f0, $f2 -/* 055508 80054908 46008221 */ cvt.d.s $f8, $f16 -/* 05550C 8005490C 46264481 */ sub.d $f18, $f8, $f6 -/* 055510 80054910 46209120 */ cvt.s.d $f4, $f18 -/* 055514 80054914 E6040030 */ swc1 $f4, 0x30($s0) -.L80054918: -/* 055518 80054918 8FBF002C */ lw $ra, 0x2c($sp) -.L8005491C: -/* 05551C 8005491C 8FB00024 */ lw $s0, 0x24($sp) -/* 055520 80054920 8FB10028 */ lw $s1, 0x28($sp) -/* 055524 80054924 03E00008 */ jr $ra -/* 055528 80054928 27BD00B0 */ addiu $sp, $sp, 0xb0 - -glabel func_8005492C -/* 05552C 8005492C 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 055530 80054930 AFBF0014 */ sw $ra, 0x14($sp) -/* 055534 80054934 AFA40048 */ sw $a0, 0x48($sp) -/* 055538 80054938 AFA60050 */ sw $a2, 0x50($sp) -/* 05553C 8005493C AFA70054 */ sw $a3, 0x54($sp) -/* 055540 80054940 44809000 */ mtc1 $zero, $f18 -/* 055544 80054944 C4AC002C */ lwc1 $f12, 0x2c($a1) -/* 055548 80054948 00803825 */ move $a3, $a0 -/* 05554C 8005494C 4612603C */ c.lt.s $f12, $f18 -/* 055550 80054950 460C6082 */ mul.s $f2, $f12, $f12 -/* 055554 80054954 E4B20084 */ swc1 $f18, 0x84($a1) -/* 055558 80054958 45000002 */ bc1f .L80054964 -/* 05555C 8005495C E4B20088 */ swc1 $f18, 0x88($a1) -/* 055560 80054960 46001087 */ neg.s $f2, $f2 -.L80054964: -/* 055564 80054964 AFA00038 */ sw $zero, 0x38($sp) -/* 055568 80054968 00E02025 */ move $a0, $a3 -/* 05556C 8005496C AFA5004C */ sw $a1, 0x4c($sp) -/* 055570 80054970 AFA70048 */ sw $a3, 0x48($sp) -/* 055574 80054974 0C015C88 */ jal func_80057220 -/* 055578 80054978 E7A20030 */ swc1 $f2, 0x30($sp) -/* 05557C 8005497C 8FA5004C */ lw $a1, 0x4c($sp) -/* 055580 80054980 E7A00018 */ swc1 $f0, 0x18($sp) -/* 055584 80054984 84A201A2 */ lh $v0, 0x1a2($a1) -/* 055588 80054988 8FA70048 */ lw $a3, 0x48($sp) -/* 05558C 8005498C C7A20030 */ lwc1 $f2, 0x30($sp) -/* 055590 80054990 28411C01 */ slti $at, $v0, 0x1c01 -/* 055594 80054994 10200003 */ beqz $at, .L800549A4 -/* 055598 80054998 3C048012 */ lui $a0, %hi(D_8011D534) # $a0, 0x8012 -/* 05559C 8005499C 2841E400 */ slti $at, $v0, -0x1c00 -/* 0555A0 800549A0 10200002 */ beqz $at, .L800549AC -.L800549A4: -/* 0555A4 800549A4 240E0001 */ li $t6, 1 -/* 0555A8 800549A8 AFAE0038 */ sw $t6, 0x38($sp) -.L800549AC: -/* 0555AC 800549AC 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 -/* 0555B0 800549B0 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) -/* 0555B4 800549B4 8C84D534 */ lw $a0, %lo(D_8011D534)($a0) -/* 0555B8 800549B8 304F4000 */ andi $t7, $v0, 0x4000 -/* 0555BC 800549BC 24030006 */ li $v1, 6 -/* 0555C0 800549C0 11E00002 */ beqz $t7, .L800549CC -/* 0555C4 800549C4 01E01025 */ move $v0, $t7 -/* 0555C8 800549C8 2403000C */ li $v1, 12 -.L800549CC: -/* 0555CC 800549CC 10400006 */ beqz $v0, .L800549E8 -/* 0555D0 800549D0 3C01800E */ lui $at, %hi(D_800E67EC) # $at, 0x800e -/* 0555D4 800549D4 80B801E6 */ lb $t8, 0x1e6($a1) -/* 0555D8 800549D8 00000000 */ nop -/* 0555DC 800549DC 13000002 */ beqz $t8, .L800549E8 -/* 0555E0 800549E0 00000000 */ nop -/* 0555E4 800549E4 24030012 */ li $v1, 18 -.L800549E8: -/* 0555E8 800549E8 C4A4002C */ lwc1 $f4, 0x2c($a1) -/* 0555EC 800549EC C42767E8 */ lwc1 $f7, %lo(D_800E67E8)($at) -/* 0555F0 800549F0 C42667EC */ lwc1 $f6, %lo(D_800E67EC)($at) -/* 0555F4 800549F4 46002021 */ cvt.d.s $f0, $f4 -/* 0555F8 800549F8 4626003C */ c.lt.d $f0, $f6 -/* 0555FC 800549FC 00001025 */ move $v0, $zero -/* 055600 80054A00 45000005 */ bc1f .L80054A18 -/* 055604 80054A04 3C01800E */ lui $at, %hi(D_800E67F4) # $at, 0x800e -/* 055608 80054A08 00830019 */ multu $a0, $v1 -/* 05560C 80054A0C 00001012 */ mflo $v0 -/* 055610 80054A10 00000000 */ nop -/* 055614 80054A14 00000000 */ nop -.L80054A18: -/* 055618 80054A18 C42967F0 */ lwc1 $f9, %lo(D_800E67F0)($at) -/* 05561C 80054A1C C42867F4 */ lwc1 $f8, %lo(D_800E67F4)($at) -/* 055620 80054A20 8FA80050 */ lw $t0, 0x50($sp) -/* 055624 80054A24 4620403C */ c.lt.d $f8, $f0 -/* 055628 80054A28 00000000 */ nop -/* 05562C 80054A2C 45000005 */ bc1f .L80054A44 -/* 055630 80054A30 0004C823 */ negu $t9, $a0 -/* 055634 80054A34 03230019 */ multu $t9, $v1 -/* 055638 80054A38 00001012 */ mflo $v0 -/* 05563C 80054A3C 00000000 */ nop -/* 055640 80054A40 00000000 */ nop -.L80054A44: -/* 055644 80054A44 00480019 */ multu $v0, $t0 -/* 055648 80054A48 3C018012 */ lui $at, %hi(D_8011D570) # $at, 0x8012 -/* 05564C 80054A4C C426D570 */ lwc1 $f6, %lo(D_8011D570)($at) -/* 055650 80054A50 84AB01A0 */ lh $t3, 0x1a0($a1) -/* 055654 80054A54 00A02025 */ move $a0, $a1 -/* 055658 80054A58 00001012 */ mflo $v0 -/* 05565C 80054A5C 00024843 */ sra $t1, $v0, 1 -/* 055660 80054A60 44895000 */ mtc1 $t1, $f10 -/* 055664 80054A64 00000000 */ nop -/* 055668 80054A68 46805120 */ cvt.s.w $f4, $f10 -/* 05566C 80054A6C 46062202 */ mul.s $f8, $f4, $f6 -/* 055670 80054A70 444AF800 */ cfc1 $t2, $31 -/* 055674 80054A74 00000000 */ nop -/* 055678 80054A78 35410003 */ ori $at, $t2, 3 -/* 05567C 80054A7C 38210002 */ xori $at, $at, 2 -/* 055680 80054A80 44C1F800 */ ctc1 $at, $31 -/* 055684 80054A84 00000000 */ nop -/* 055688 80054A88 460042A4 */ cvt.w.s $f10, $f8 -/* 05568C 80054A8C 440C5000 */ mfc1 $t4, $f10 -/* 055690 80054A90 44CAF800 */ ctc1 $t2, $31 -/* 055694 80054A94 016C6823 */ subu $t5, $t3, $t4 -/* 055698 80054A98 A4AD01A0 */ sh $t5, 0x1a0($a1) -/* 05569C 80054A9C E7A20030 */ swc1 $f2, 0x30($sp) -/* 0556A0 80054AA0 AFA70048 */ sw $a3, 0x48($sp) -/* 0556A4 80054AA4 0C014D1E */ jal func_80053478 -/* 0556A8 80054AA8 AFA5004C */ sw $a1, 0x4c($sp) -/* 0556AC 80054AAC 8FA5004C */ lw $a1, 0x4c($sp) -/* 0556B0 80054AB0 3C01800E */ lui $at, %hi(D_800E67FC) # $at, 0x800e -/* 0556B4 80054AB4 C4A40030 */ lwc1 $f4, 0x30($a1) -/* 0556B8 80054AB8 C42967F8 */ lwc1 $f9, %lo(D_800E67F8)($at) -/* 0556BC 80054ABC C42867FC */ lwc1 $f8, %lo(D_800E67FC)($at) -/* 0556C0 80054AC0 460021A1 */ cvt.d.s $f6, $f4 -/* 0556C4 80054AC4 46283282 */ mul.d $f10, $f6, $f8 -/* 0556C8 80054AC8 44809000 */ mtc1 $zero, $f18 -/* 0556CC 80054ACC 90A401DC */ lbu $a0, 0x1dc($a1) -/* 0556D0 80054AD0 8FA70048 */ lw $a3, 0x48($sp) -/* 0556D4 80054AD4 C7A20030 */ lwc1 $f2, 0x30($sp) -/* 0556D8 80054AD8 46205120 */ cvt.s.d $f4, $f10 -/* 0556DC 80054ADC 240100FF */ li $at, 255 -/* 0556E0 80054AE0 00001825 */ move $v1, $zero -/* 0556E4 80054AE4 E4A40030 */ swc1 $f4, 0x30($a1) -/* 0556E8 80054AE8 10810008 */ beq $a0, $at, .L80054B0C -/* 0556EC 80054AEC 46009006 */ mov.s $f0, $f18 -/* 0556F0 80054AF0 00047080 */ sll $t6, $a0, 2 -/* 0556F4 80054AF4 3C01800E */ lui $at, 0x800e -/* 0556F8 80054AF8 002E0821 */ addu $at, $at, $t6 -/* 0556FC 80054AFC C426CB9C */ lwc1 $f6, -0x3464($at) -/* 055700 80054B00 18800002 */ blez $a0, .L80054B0C -/* 055704 80054B04 46069000 */ add.s $f0, $f18, $f6 -/* 055708 80054B08 00801825 */ move $v1, $a0 -.L80054B0C: -/* 05570C 80054B0C C4AA00C0 */ lwc1 $f10, 0xc0($a1) -/* 055710 80054B10 44804800 */ mtc1 $zero, $f9 -/* 055714 80054B14 44804000 */ mtc1 $zero, $f8 -/* 055718 80054B18 46005121 */ cvt.d.s $f4, $f10 -/* 05571C 80054B1C 46244032 */ c.eq.d $f8, $f4 -/* 055720 80054B20 00000000 */ nop -/* 055724 80054B24 45010003 */ bc1t .L80054B34 -/* 055728 80054B28 3C01800E */ lui $at, %hi(D_800E6800) # $at, 0x800e -/* 05572C 80054B2C C4206800 */ lwc1 $f0, %lo(D_800E6800)($at) -/* 055730 80054B30 00000000 */ nop -.L80054B34: -/* 055734 80054B34 3C018012 */ lui $at, %hi(D_8011D581) # $at, 0x8012 -/* 055738 80054B38 A023D581 */ sb $v1, %lo(D_8011D581)($at) -/* 05573C 80054B3C 24010004 */ li $at, 4 -/* 055740 80054B40 A0A001E6 */ sb $zero, 0x1e6($a1) -/* 055744 80054B44 14610006 */ bne $v1, $at, .L80054B60 -/* 055748 80054B48 ACA0010C */ sw $zero, 0x10c($a1) -/* 05574C 80054B4C 3C013E80 */ li $at, 0x3E800000 # 0.250000 -/* 055750 80054B50 44813000 */ mtc1 $at, $f6 -/* 055754 80054B54 00000000 */ nop -/* 055758 80054B58 E7A60018 */ swc1 $f6, 0x18($sp) -/* 05575C 80054B5C E4B20030 */ swc1 $f18, 0x30($a1) -.L80054B60: -/* 055760 80054B60 80AF01D3 */ lb $t7, 0x1d3($a1) -/* 055764 80054B64 00000000 */ nop -/* 055768 80054B68 15E0000F */ bnez $t7, .L80054BA8 -/* 05576C 80054B6C 24010003 */ li $at, 3 -/* 055770 80054B70 1461000D */ bne $v1, $at, .L80054BA8 -/* 055774 80054B74 2404002D */ li $a0, 45 -/* 055778 80054B78 AFA5004C */ sw $a1, 0x4c($sp) -/* 05577C 80054B7C AFA70048 */ sw $a3, 0x48($sp) -/* 055780 80054B80 E7A00028 */ swc1 $f0, 0x28($sp) -/* 055784 80054B84 0C00322D */ jal func_8000C8B4 -/* 055788 80054B88 E7A20030 */ swc1 $f2, 0x30($sp) -/* 05578C 80054B8C 8FA5004C */ lw $a1, 0x4c($sp) -/* 055790 80054B90 8FA70048 */ lw $a3, 0x48($sp) -/* 055794 80054B94 C7A00028 */ lwc1 $f0, 0x28($sp) -/* 055798 80054B98 C7A20030 */ lwc1 $f2, 0x30($sp) -/* 05579C 80054B9C 24180003 */ li $t8, 3 -/* 0557A0 80054BA0 A0A201D3 */ sb $v0, 0x1d3($a1) -/* 0557A4 80054BA4 A0B80203 */ sb $t8, 0x203($a1) -.L80054BA8: -/* 0557A8 80054BA8 46001202 */ mul.s $f8, $f2, $f0 -/* 0557AC 80054BAC C4AA002C */ lwc1 $f10, 0x2c($a1) -/* 0557B0 80054BB0 00000000 */ nop -/* 0557B4 80054BB4 46085101 */ sub.s $f4, $f10, $f8 -/* 0557B8 80054BB8 E4A4002C */ swc1 $f4, 0x2c($a1) -/* 0557BC 80054BBC 8FB90038 */ lw $t9, 0x38($sp) -/* 0557C0 80054BC0 00000000 */ nop -/* 0557C4 80054BC4 13200008 */ beqz $t9, .L80054BE8 -/* 0557C8 80054BC8 00000000 */ nop -/* 0557CC 80054BCC 90A201EE */ lbu $v0, 0x1ee($a1) -/* 0557D0 80054BD0 00000000 */ nop -/* 0557D4 80054BD4 28410010 */ slti $at, $v0, 0x10 -/* 0557D8 80054BD8 10200004 */ beqz $at, .L80054BEC -/* 0557DC 80054BDC 24480001 */ addiu $t0, $v0, 1 -/* 0557E0 80054BE0 10000002 */ b .L80054BEC -/* 0557E4 80054BE4 A0A801EE */ sb $t0, 0x1ee($a1) -.L80054BE8: -/* 0557E8 80054BE8 A0A001EE */ sb $zero, 0x1ee($a1) -.L80054BEC: -/* 0557EC 80054BEC AFA5004C */ sw $a1, 0x4c($sp) -/* 0557F0 80054BF0 0C019884 */ jal func_80066210 -/* 0557F4 80054BF4 AFA70048 */ sw $a3, 0x48($sp) -/* 0557F8 80054BF8 8FA5004C */ lw $a1, 0x4c($sp) -/* 0557FC 80054BFC 8FA70048 */ lw $a3, 0x48($sp) -/* 055800 80054C00 44809000 */ mtc1 $zero, $f18 -/* 055804 80054C04 28410002 */ slti $at, $v0, 2 -/* 055808 80054C08 1020001F */ beqz $at, .L80054C88 -/* 05580C 80054C0C 00000000 */ nop -/* 055810 80054C10 8FA90038 */ lw $t1, 0x38($sp) -/* 055814 80054C14 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 055818 80054C18 1120001B */ beqz $t1, .L80054C88 -/* 05581C 80054C1C 00000000 */ nop -/* 055820 80054C20 C4A6002C */ lwc1 $f6, 0x2c($a1) -/* 055824 80054C24 44814800 */ mtc1 $at, $f9 -/* 055828 80054C28 44804000 */ mtc1 $zero, $f8 -/* 05582C 80054C2C 460032A1 */ cvt.d.s $f10, $f6 -/* 055830 80054C30 4628503C */ c.lt.d $f10, $f8 -/* 055834 80054C34 00000000 */ nop -/* 055838 80054C38 45000013 */ bc1f .L80054C88 -/* 05583C 80054C3C 00000000 */ nop -/* 055840 80054C40 90A201DE */ lbu $v0, 0x1de($a1) -/* 055844 80054C44 240C0001 */ li $t4, 1 -/* 055848 80054C48 284100FF */ slti $at, $v0, 0xff -/* 05584C 80054C4C 10200005 */ beqz $at, .L80054C64 -/* 055850 80054C50 00025840 */ sll $t3, $v0, 1 -/* 055854 80054C54 8CEA0074 */ lw $t2, 0x74($a3) -/* 055858 80054C58 016C6804 */ sllv $t5, $t4, $t3 -/* 05585C 80054C5C 014D7025 */ or $t6, $t2, $t5 -/* 055860 80054C60 ACEE0074 */ sw $t6, 0x74($a3) -.L80054C64: -/* 055864 80054C64 90A201DF */ lbu $v0, 0x1df($a1) -/* 055868 80054C68 24190002 */ li $t9, 2 -/* 05586C 80054C6C 284100FF */ slti $at, $v0, 0xff -/* 055870 80054C70 10200005 */ beqz $at, .L80054C88 -/* 055874 80054C74 0002C040 */ sll $t8, $v0, 1 -/* 055878 80054C78 8CEF0074 */ lw $t7, 0x74($a3) -/* 05587C 80054C7C 03194004 */ sllv $t0, $t9, $t8 -/* 055880 80054C80 01E84825 */ or $t1, $t7, $t0 -/* 055884 80054C84 ACE90074 */ sw $t1, 0x74($a3) -.L80054C88: -/* 055888 80054C88 C4AC002C */ lwc1 $f12, 0x2c($a1) -/* 05588C 80054C8C 3C014140 */ li $at, 0x41400000 # 12.000000 -/* 055890 80054C90 4612603C */ c.lt.s $f12, $f18 -/* 055894 80054C94 44810000 */ mtc1 $at, $f0 -/* 055898 80054C98 45000002 */ bc1f .L80054CA4 -/* 05589C 80054C9C 46006086 */ mov.s $f2, $f12 -/* 0558A0 80054CA0 46001087 */ neg.s $f2, $f2 -.L80054CA4: -/* 0558A4 80054CA4 4602003C */ c.lt.s $f0, $f2 -/* 0558A8 80054CA8 3C0B8012 */ lui $t3, %hi(D_8011D564) # $t3, 0x8012 -/* 0558AC 80054CAC 45000002 */ bc1f .L80054CB8 -/* 0558B0 80054CB0 3C0E8012 */ lui $t6, %hi(D_8011D540) # $t6, 0x8012 -/* 0558B4 80054CB4 46000086 */ mov.s $f2, $f0 -.L80054CB8: -/* 0558B8 80054CB8 444CF800 */ cfc1 $t4, $31 -/* 0558BC 80054CBC 8D6BD564 */ lw $t3, %lo(D_8011D564)($t3) -/* 0558C0 80054CC0 35810003 */ ori $at, $t4, 3 -/* 0558C4 80054CC4 38210002 */ xori $at, $at, 2 -/* 0558C8 80054CC8 44C1F800 */ ctc1 $at, $31 -/* 0558CC 80054CCC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 0558D0 80054CD0 46001124 */ cvt.w.s $f4, $f2 -/* 0558D4 80054CD4 44814800 */ mtc1 $at, $f9 -/* 0558D8 80054CD8 44022000 */ mfc1 $v0, $f4 -/* 0558DC 80054CDC 44CCF800 */ ctc1 $t4, $31 -/* 0558E0 80054CE0 44823000 */ mtc1 $v0, $f6 -/* 0558E4 80054CE4 44804000 */ mtc1 $zero, $f8 -/* 0558E8 80054CE8 468032A0 */ cvt.s.w $f10, $f6 -/* 0558EC 80054CEC 00025080 */ sll $t2, $v0, 2 -/* 0558F0 80054CF0 016A1821 */ addu $v1, $t3, $t2 -/* 0558F4 80054CF4 460A1001 */ sub.s $f0, $f2, $f10 -/* 0558F8 80054CF8 C46A0000 */ lwc1 $f10, ($v1) -/* 0558FC 80054CFC 46000121 */ cvt.d.s $f4, $f0 -/* 055900 80054D00 46244181 */ sub.d $f6, $f8, $f4 -/* 055904 80054D04 3C01800E */ lui $at, %hi(D_800E6808) # $at, 0x800e -/* 055908 80054D08 46005221 */ cvt.d.s $f8, $f10 -/* 05590C 80054D0C 46264102 */ mul.d $f4, $f8, $f6 -/* 055910 80054D10 C46A0004 */ lwc1 $f10, 4($v1) -/* 055914 80054D14 80AD01D3 */ lb $t5, 0x1d3($a1) -/* 055918 80054D18 46005202 */ mul.s $f8, $f10, $f0 -/* 05591C 80054D1C 460041A1 */ cvt.d.s $f6, $f8 -/* 055920 80054D20 46262280 */ add.d $f10, $f4, $f6 -/* 055924 80054D24 C424680C */ lwc1 $f4, %lo(D_800E680C)($at) -/* 055928 80054D28 462050A0 */ cvt.s.d $f2, $f10 -/* 05592C 80054D2C C4256808 */ lwc1 $f5, %lo(D_800E6808)($at) -/* 055930 80054D30 46001221 */ cvt.d.s $f8, $f2 -/* 055934 80054D34 46244182 */ mul.d $f6, $f8, $f4 -/* 055938 80054D38 C7AA0018 */ lwc1 $f10, 0x18($sp) -/* 05593C 80054D3C 462030A0 */ cvt.s.d $f2, $f6 -/* 055940 80054D40 460A1082 */ mul.s $f2, $f2, $f10 -/* 055944 80054D44 19A00016 */ blez $t5, .L80054DA0 -/* 055948 80054D48 00000000 */ nop -/* 05594C 80054D4C 8DCED540 */ lw $t6, %lo(D_8011D540)($t6) -/* 055950 80054D50 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 055954 80054D54 15C00010 */ bnez $t6, .L80054D98 -/* 055958 80054D58 00000000 */ nop -/* 05595C 80054D5C 44802800 */ mtc1 $zero, $f5 -/* 055960 80054D60 44802000 */ mtc1 $zero, $f4 -/* 055964 80054D64 460011A1 */ cvt.d.s $f6, $f2 -/* 055968 80054D68 44814000 */ mtc1 $at, $f8 -/* 05596C 80054D6C 46262032 */ c.eq.d $f4, $f6 -/* 055970 80054D70 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 055974 80054D74 45010003 */ bc1t .L80054D84 -/* 055978 80054D78 E4A800B4 */ swc1 $f8, 0xb4($a1) -/* 05597C 80054D7C 44811000 */ mtc1 $at, $f2 -/* 055980 80054D80 00000000 */ nop -.L80054D84: -/* 055984 80054D84 80B901D3 */ lb $t9, 0x1d3($a1) -/* 055988 80054D88 8FB80050 */ lw $t8, 0x50($sp) -/* 05598C 80054D8C C4AC002C */ lwc1 $f12, 0x2c($a1) -/* 055990 80054D90 03387823 */ subu $t7, $t9, $t8 -/* 055994 80054D94 A0AF01D3 */ sb $t7, 0x1d3($a1) -.L80054D98: -/* 055998 80054D98 10000004 */ b .L80054DAC -/* 05599C 80054D9C 46006021 */ cvt.d.s $f0, $f12 -.L80054DA0: -/* 0559A0 80054DA0 C4AC002C */ lwc1 $f12, 0x2c($a1) -/* 0559A4 80054DA4 A0A001D3 */ sb $zero, 0x1d3($a1) -/* 0559A8 80054DA8 46006021 */ cvt.d.s $f0, $f12 -.L80054DAC: -/* 0559AC 80054DAC 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 0559B0 80054DB0 44815800 */ mtc1 $at, $f11 -/* 0559B4 80054DB4 44805000 */ mtc1 $zero, $f10 -/* 0559B8 80054DB8 3C014008 */ li $at, 0x40080000 # 2.125000 -/* 0559BC 80054DBC 4620503C */ c.lt.d $f10, $f0 -/* 0559C0 80054DC0 3C0B8012 */ lui $t3, %hi(D_8011D540) # $t3, 0x8012 -/* 0559C4 80054DC4 4500001E */ bc1f .L80054E40 -/* 0559C8 80054DC8 00000000 */ nop -/* 0559CC 80054DCC 44818800 */ mtc1 $at, $f17 -/* 0559D0 80054DD0 44808000 */ mtc1 $zero, $f16 -/* 0559D4 80054DD4 3C01800E */ lui $at, %hi(D_800E6814) # $at, 0x800e -/* 0559D8 80054DD8 4630003C */ c.lt.d $f0, $f16 -/* 0559DC 80054DDC 00000000 */ nop -/* 0559E0 80054DE0 45000017 */ bc1f .L80054E40 -/* 0559E4 80054DE4 00000000 */ nop -/* 0559E8 80054DE8 46208201 */ sub.d $f8, $f16, $f0 -/* 0559EC 80054DEC C4256810 */ lwc1 $f5, %lo(D_800E6810)($at) -/* 0559F0 80054DF0 C4246814 */ lwc1 $f4, %lo(D_800E6814)($at) -/* 0559F4 80054DF4 3C088012 */ lui $t0, %hi(D_8011D538) # $t0, 0x8012 -/* 0559F8 80054DF8 46244182 */ mul.d $f6, $f8, $f4 -/* 0559FC 80054DFC 8D08D538 */ lw $t0, %lo(D_8011D538)($t0) -/* 055A00 80054E00 3C028012 */ lui $v0, %hi(D_8011D528) # $v0, 0x8012 -/* 055A04 80054E04 2901FFE7 */ slti $at, $t0, -0x19 -/* 055A08 80054E08 1020000D */ beqz $at, .L80054E40 -/* 055A0C 80054E0C 462033A0 */ cvt.s.d $f14, $f6 -/* 055A10 80054E10 8C42D528 */ lw $v0, %lo(D_8011D528)($v0) -/* 055A14 80054E14 00000000 */ nop -/* 055A18 80054E18 30498000 */ andi $t1, $v0, 0x8000 -/* 055A1C 80054E1C 15200008 */ bnez $t1, .L80054E40 -/* 055A20 80054E20 304C4000 */ andi $t4, $v0, 0x4000 -/* 055A24 80054E24 11800006 */ beqz $t4, .L80054E40 -/* 055A28 80054E28 00000000 */ nop -/* 055A2C 80054E2C 460E6280 */ add.s $f10, $f12, $f14 -/* 055A30 80054E30 E4B200B8 */ swc1 $f18, 0xb8($a1) -/* 055A34 80054E34 E4AA002C */ swc1 $f10, 0x2c($a1) -/* 055A38 80054E38 C4AC002C */ lwc1 $f12, 0x2c($a1) -/* 055A3C 80054E3C 00000000 */ nop -.L80054E40: -/* 055A40 80054E40 C4A800B8 */ lwc1 $f8, 0xb8($a1) -/* 055A44 80054E44 3C01800E */ lui $at, %hi(D_800E681C) # $at, 0x800e -/* 055A48 80054E48 46024102 */ mul.s $f4, $f8, $f2 -/* 055A4C 80054E4C C42B6818 */ lwc1 $f11, %lo(D_800E6818)($at) -/* 055A50 80054E50 C42A681C */ lwc1 $f10, %lo(D_800E681C)($at) -/* 055A54 80054E54 3C01800E */ lui $at, %hi(D_800E6820) # $at, 0x800e -/* 055A58 80054E58 460021A1 */ cvt.d.s $f6, $f4 -/* 055A5C 80054E5C 462A3202 */ mul.d $f8, $f6, $f10 -/* 055A60 80054E60 C4A400B4 */ lwc1 $f4, 0xb4($a1) -/* 055A64 80054E64 00000000 */ nop -/* 055A68 80054E68 46041182 */ mul.s $f6, $f2, $f4 -/* 055A6C 80054E6C 462043A0 */ cvt.s.d $f14, $f8 -/* 055A70 80054E70 46066281 */ sub.s $f10, $f12, $f6 -/* 055A74 80054E74 E4AA002C */ swc1 $f10, 0x2c($a1) -/* 055A78 80054E78 C4AC002C */ lwc1 $f12, 0x2c($a1) -/* 055A7C 80054E7C C4286824 */ lwc1 $f8, %lo(D_800E6824)($at) -/* 055A80 80054E80 C4296820 */ lwc1 $f9, %lo(D_800E6820)($at) -/* 055A84 80054E84 46006021 */ cvt.d.s $f0, $f12 -/* 055A88 80054E88 4620403C */ c.lt.d $f8, $f0 -/* 055A8C 80054E8C 3C01800E */ lui $at, %hi(D_800E682C) # $at, 0x800e -/* 055A90 80054E90 4500000B */ bc1f .L80054EC0 -/* 055A94 80054E94 00000000 */ nop -/* 055A98 80054E98 C4256828 */ lwc1 $f5, %lo(D_800E6828)($at) -/* 055A9C 80054E9C C424682C */ lwc1 $f4, %lo(D_800E682C)($at) -/* 055AA0 80054EA0 00000000 */ nop -/* 055AA4 80054EA4 4624003C */ c.lt.d $f0, $f4 -/* 055AA8 80054EA8 00000000 */ nop -/* 055AAC 80054EAC 45000004 */ bc1f .L80054EC0 -/* 055AB0 80054EB0 00000000 */ nop -/* 055AB4 80054EB4 E4B2002C */ swc1 $f18, 0x2c($a1) -/* 055AB8 80054EB8 C4AC002C */ lwc1 $f12, 0x2c($a1) -/* 055ABC 80054EBC 00000000 */ nop -.L80054EC0: -/* 055AC0 80054EC0 4612603C */ c.lt.s $f12, $f18 -/* 055AC4 80054EC4 3C018012 */ lui $at, %hi(D_8011D56C) # $at, 0x8012 -/* 055AC8 80054EC8 4500000B */ bc1f .L80054EF8 -/* 055ACC 80054ECC 00000000 */ nop -/* 055AD0 80054ED0 460E6180 */ add.s $f6, $f12, $f14 -/* 055AD4 80054ED4 E4A6002C */ swc1 $f6, 0x2c($a1) -/* 055AD8 80054ED8 C4AA002C */ lwc1 $f10, 0x2c($a1) -/* 055ADC 80054EDC 00000000 */ nop -/* 055AE0 80054EE0 460A903C */ c.lt.s $f18, $f10 -/* 055AE4 80054EE4 00000000 */ nop -/* 055AE8 80054EE8 4500000C */ bc1f .L80054F1C -/* 055AEC 80054EEC 00000000 */ nop -/* 055AF0 80054EF0 1000000A */ b .L80054F1C -/* 055AF4 80054EF4 E4B2002C */ swc1 $f18, 0x2c($a1) -.L80054EF8: -/* 055AF8 80054EF8 460E6201 */ sub.s $f8, $f12, $f14 -/* 055AFC 80054EFC E4A8002C */ swc1 $f8, 0x2c($a1) -/* 055B00 80054F00 C4A4002C */ lwc1 $f4, 0x2c($a1) -/* 055B04 80054F04 00000000 */ nop -/* 055B08 80054F08 4612203C */ c.lt.s $f4, $f18 -/* 055B0C 80054F0C 00000000 */ nop -/* 055B10 80054F10 45000002 */ bc1f .L80054F1C -/* 055B14 80054F14 00000000 */ nop -/* 055B18 80054F18 E4B2002C */ swc1 $f18, 0x2c($a1) -.L80054F1C: -/* 055B1C 80054F1C C4AA00C0 */ lwc1 $f10, 0xc0($a1) -/* 055B20 80054F20 44803800 */ mtc1 $zero, $f7 -/* 055B24 80054F24 44803000 */ mtc1 $zero, $f6 -/* 055B28 80054F28 46005221 */ cvt.d.s $f8, $f10 -/* 055B2C 80054F2C 46283032 */ c.eq.d $f6, $f8 -/* 055B30 80054F30 C420D56C */ lwc1 $f0, %lo(D_8011D56C)($at) -/* 055B34 80054F34 45010006 */ bc1t .L80054F50 -/* 055B38 80054F38 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 055B3C 80054F3C 44815800 */ mtc1 $at, $f11 -/* 055B40 80054F40 44805000 */ mtc1 $zero, $f10 -/* 055B44 80054F44 46000121 */ cvt.d.s $f4, $f0 -/* 055B48 80054F48 462A2182 */ mul.d $f6, $f4, $f10 -/* 055B4C 80054F4C 46203020 */ cvt.s.d $f0, $f6 -.L80054F50: -/* 055B50 80054F50 3C01800E */ lui $at, %hi(D_800E6834) # $at, 0x800e -/* 055B54 80054F54 C4A800B8 */ lwc1 $f8, 0xb8($a1) -/* 055B58 80054F58 C42B6830 */ lwc1 $f11, %lo(D_800E6830)($at) -/* 055B5C 80054F5C C42A6834 */ lwc1 $f10, %lo(D_800E6834)($at) -/* 055B60 80054F60 46004121 */ cvt.d.s $f4, $f8 -/* 055B64 80054F64 462A203C */ c.lt.d $f4, $f10 -/* 055B68 80054F68 00000000 */ nop -/* 055B6C 80054F6C 4500000F */ bc1f .L80054FAC -/* 055B70 80054F70 00000000 */ nop -/* 055B74 80054F74 8D6BD540 */ lw $t3, %lo(D_8011D540)($t3) -/* 055B78 80054F78 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 055B7C 80054F7C 1560000B */ bnez $t3, .L80054FAC -/* 055B80 80054F80 00000000 */ nop -/* 055B84 80054F84 C4A6009C */ lwc1 $f6, 0x9c($a1) -/* 055B88 80054F88 44814000 */ mtc1 $at, $f8 -/* 055B8C 80054F8C 00000000 */ nop -/* 055B90 80054F90 46083103 */ div.s $f4, $f6, $f8 -/* 055B94 80054F94 C7A60054 */ lwc1 $f6, 0x54($sp) -/* 055B98 80054F98 46040282 */ mul.s $f10, $f0, $f4 -/* 055B9C 80054F9C C4A4002C */ lwc1 $f4, 0x2c($a1) -/* 055BA0 80054FA0 46065202 */ mul.s $f8, $f10, $f6 -/* 055BA4 80054FA4 46082280 */ add.s $f10, $f4, $f8 -/* 055BA8 80054FA8 E4AA002C */ swc1 $f10, 0x2c($a1) -.L80054FAC: -/* 055BAC 80054FAC C7A40054 */ lwc1 $f4, 0x54($sp) -/* 055BB0 80054FB0 C4E60020 */ lwc1 $f6, 0x20($a3) -/* 055BB4 80054FB4 46040202 */ mul.s $f8, $f0, $f4 -/* 055BB8 80054FB8 46083281 */ sub.s $f10, $f6, $f8 -/* 055BBC 80054FBC E4EA0020 */ swc1 $f10, 0x20($a3) -/* 055BC0 80054FC0 8FBF0014 */ lw $ra, 0x14($sp) -/* 055BC4 80054FC4 27BD0048 */ addiu $sp, $sp, 0x48 -/* 055BC8 80054FC8 03E00008 */ jr $ra -/* 055BCC 80054FCC 00000000 */ nop - -glabel func_80054FD0 -/* 055BD0 80054FD0 27BDFE60 */ addiu $sp, $sp, -0x1a0 -/* 055BD4 80054FD4 AFBF002C */ sw $ra, 0x2c($sp) -/* 055BD8 80054FD8 AFB10028 */ sw $s1, 0x28($sp) -/* 055BDC 80054FDC AFB00024 */ sw $s0, 0x24($sp) -/* 055BE0 80054FE0 AFA601A8 */ sw $a2, 0x1a8($sp) -/* 055BE4 80054FE4 3C018012 */ lui $at, %hi(D_8011D4F0) # $at, 0x8012 -/* 055BE8 80054FE8 C420D4F0 */ lwc1 $f0, %lo(D_8011D4F0)($at) -/* 055BEC 80054FEC C4840010 */ lwc1 $f4, 0x10($a0) -/* 055BF0 80054FF0 00A08025 */ move $s0, $a1 -/* 055BF4 80054FF4 4604003C */ c.lt.s $f0, $f4 -/* 055BF8 80054FF8 00808825 */ move $s1, $a0 -/* 055BFC 80054FFC 45000004 */ bc1f .L80055010 -/* 055C00 80055000 00000000 */ nop -/* 055C04 80055004 E4800010 */ swc1 $f0, 0x10($a0) -/* 055C08 80055008 0C00AB32 */ jal func_8002ACC8 -/* 055C0C 8005500C 24040001 */ li $a0, 1 -.L80055010: -/* 055C10 80055010 A7A00130 */ sh $zero, 0x130($sp) -/* 055C14 80055014 862E0000 */ lh $t6, ($s1) -/* 055C18 80055018 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 -/* 055C1C 8005501C 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 -/* 055C20 80055020 A4AE0000 */ sh $t6, ($a1) -/* 055C24 80055024 862F0002 */ lh $t7, 2($s1) -/* 055C28 80055028 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 055C2C 8005502C A4AF0002 */ sh $t7, 2($a1) -/* 055C30 80055030 86380004 */ lh $t8, 4($s1) -/* 055C34 80055034 44813000 */ mtc1 $at, $f6 -/* 055C38 80055038 A4B80004 */ sh $t8, 4($a1) -/* 055C3C 8005503C E4A60008 */ swc1 $f6, 8($a1) -/* 055C40 80055040 C628000C */ lwc1 $f8, 0xc($s1) -/* 055C44 80055044 27A400A0 */ addiu $a0, $sp, 0xa0 -/* 055C48 80055048 E4A8000C */ swc1 $f8, 0xc($a1) -/* 055C4C 8005504C C62A0010 */ lwc1 $f10, 0x10($s1) -/* 055C50 80055050 00000000 */ nop -/* 055C54 80055054 E4AA0010 */ swc1 $f10, 0x10($a1) -/* 055C58 80055058 C6240014 */ lwc1 $f4, 0x14($s1) -/* 055C5C 8005505C 0C01BF0C */ jal func_8006FC30 -/* 055C60 80055060 E4A40014 */ swc1 $f4, 0x14($a1) -/* 055C64 80055064 3C038012 */ lui $v1, %hi(D_8011D568) # $v1, 0x8012 -/* 055C68 80055068 8C63D568 */ lw $v1, %lo(D_8011D568)($v1) -/* 055C6C 8005506C 00004025 */ move $t0, $zero -/* 055C70 80055070 27A90134 */ addiu $t1, $sp, 0x134 -/* 055C74 80055074 27AA0138 */ addiu $t2, $sp, 0x138 -/* 055C78 80055078 27AB013C */ addiu $t3, $sp, 0x13c -/* 055C7C 8005507C 27AC00E0 */ addiu $t4, $sp, 0xe0 -/* 055C80 80055080 27A20058 */ addiu $v0, $sp, 0x58 -.L80055084: -/* 055C84 80055084 8C650000 */ lw $a1, ($v1) -/* 055C88 80055088 8C660004 */ lw $a2, 4($v1) -/* 055C8C 8005508C 8C670008 */ lw $a3, 8($v1) -/* 055C90 80055090 AFAC0040 */ sw $t4, 0x40($sp) -/* 055C94 80055094 AFAB0044 */ sw $t3, 0x44($sp) -/* 055C98 80055098 AFAA0048 */ sw $t2, 0x48($sp) -/* 055C9C 8005509C AFA9004C */ sw $t1, 0x4c($sp) -/* 055CA0 800550A0 AFA80054 */ sw $t0, 0x54($sp) -/* 055CA4 800550A4 AFA2003C */ sw $v0, 0x3c($sp) -/* 055CA8 800550A8 AFAB0018 */ sw $t3, 0x18($sp) -/* 055CAC 800550AC AFAA0014 */ sw $t2, 0x14($sp) -/* 055CB0 800550B0 AFA90010 */ sw $t1, 0x10($sp) -/* 055CB4 800550B4 0C01BD93 */ jal func_8006F64C -/* 055CB8 800550B8 27A400A0 */ addiu $a0, $sp, 0xa0 -/* 055CBC 800550BC 3C198012 */ lui $t9, %hi(D_8011D568) # $t9, 0x8012 -/* 055CC0 800550C0 8FA80054 */ lw $t0, 0x54($sp) -/* 055CC4 800550C4 8F39D568 */ lw $t9, %lo(D_8011D568)($t9) -/* 055CC8 800550C8 8FA2003C */ lw $v0, 0x3c($sp) -/* 055CCC 800550CC 8FA9004C */ lw $t1, 0x4c($sp) -/* 055CD0 800550D0 8FAA0048 */ lw $t2, 0x48($sp) -/* 055CD4 800550D4 8FAB0044 */ lw $t3, 0x44($sp) -/* 055CD8 800550D8 8FAC0040 */ lw $t4, 0x40($sp) -/* 055CDC 800550DC 03281821 */ addu $v1, $t9, $t0 -/* 055CE0 800550E0 C466000C */ lwc1 $f6, 0xc($v1) -/* 055CE4 800550E4 27AE005C */ addiu $t6, $sp, 0x5c -/* 055CE8 800550E8 24420001 */ addiu $v0, $v0, 1 -/* 055CEC 800550EC 004E082B */ sltu $at, $v0, $t6 -/* 055CF0 800550F0 240DFFFF */ li $t5, -1 -/* 055CF4 800550F4 24630010 */ addiu $v1, $v1, 0x10 -/* 055CF8 800550F8 25080010 */ addiu $t0, $t0, 0x10 -/* 055CFC 800550FC A04DFFFF */ sb $t5, -1($v0) -/* 055D00 80055100 2529000C */ addiu $t1, $t1, 0xc -/* 055D04 80055104 254A000C */ addiu $t2, $t2, 0xc -/* 055D08 80055108 256B000C */ addiu $t3, $t3, 0xc -/* 055D0C 8005510C 258C0004 */ addiu $t4, $t4, 4 -/* 055D10 80055110 1420FFDC */ bnez $at, .L80055084 -/* 055D14 80055114 E586FFFC */ swc1 $f6, -4($t4) -/* 055D18 80055118 44808000 */ mtc1 $zero, $f16 -/* 055D1C 8005511C 3C038012 */ lui $v1, %hi(D_8011D548) # $v1, 0x8012 -/* 055D20 80055120 3C088012 */ lui $t0, %hi(D_8011D54C) # $t0, 0x8012 -/* 055D24 80055124 2508D54C */ addiu $t0, %lo(D_8011D54C) # addiu $t0, $t0, -0x2ab4 -/* 055D28 80055128 2463D548 */ addiu $v1, %lo(D_8011D548) # addiu $v1, $v1, -0x2ab8 -/* 055D2C 8005512C AFA00190 */ sw $zero, 0x190($sp) -/* 055D30 80055130 E4700000 */ swc1 $f16, ($v1) -/* 055D34 80055134 E5100000 */ swc1 $f16, ($t0) -/* 055D38 80055138 860F0000 */ lh $t7, ($s0) -/* 055D3C 8005513C 2401FFFF */ li $at, -1 -/* 055D40 80055140 15E10005 */ bne $t7, $at, .L80055158 -/* 055D44 80055144 00004825 */ move $t1, $zero -/* 055D48 80055148 821801D7 */ lb $t8, 0x1d7($s0) -/* 055D4C 8005514C 00000000 */ nop -/* 055D50 80055150 2B010005 */ slti $at, $t8, 5 -/* 055D54 80055154 10200011 */ beqz $at, .L8005519C -.L80055158: -/* 055D58 80055158 27B90134 */ addiu $t9, $sp, 0x134 -/* 055D5C 8005515C 27AD00E0 */ addiu $t5, $sp, 0xe0 -/* 055D60 80055160 27AE0058 */ addiu $t6, $sp, 0x58 -/* 055D64 80055164 AFAE0018 */ sw $t6, 0x18($sp) -/* 055D68 80055168 AFAD0014 */ sw $t5, 0x14($sp) -/* 055D6C 8005516C AFB90010 */ sw $t9, 0x10($sp) -/* 055D70 80055170 02202025 */ move $a0, $s1 -/* 055D74 80055174 24050004 */ li $a1, 4 -/* 055D78 80055178 27A60190 */ addiu $a2, $sp, 0x190 -/* 055D7C 8005517C 0C005C92 */ jal func_80017248 -/* 055D80 80055180 260700D8 */ addiu $a3, $s0, 0xd8 -/* 055D84 80055184 3C038012 */ lui $v1, %hi(D_8011D548) # $v1, 0x8012 -/* 055D88 80055188 3C088012 */ lui $t0, %hi(D_8011D54C) # $t0, 0x8012 -/* 055D8C 8005518C 44808000 */ mtc1 $zero, $f16 -/* 055D90 80055190 2508D54C */ addiu $t0, %lo(D_8011D54C) # addiu $t0, $t0, -0x2ab4 -/* 055D94 80055194 2463D548 */ addiu $v1, %lo(D_8011D548) # addiu $v1, $v1, -0x2ab8 -/* 055D98 80055198 00404825 */ move $t1, $v0 -.L8005519C: -/* 055D9C 8005519C 312F0080 */ andi $t7, $t1, 0x80 -/* 055DA0 800551A0 11E0003F */ beqz $t7, .L800552A0 -/* 055DA4 800551A4 260500D8 */ addiu $a1, $s0, 0xd8 -/* 055DA8 800551A8 C7A80134 */ lwc1 $f8, 0x134($sp) -/* 055DAC 800551AC C46A0000 */ lwc1 $f10, ($v1) -/* 055DB0 800551B0 3C018012 */ lui $at, %hi(D_8011D548) # $at, 0x8012 -/* 055DB4 800551B4 460A4100 */ add.s $f4, $f8, $f10 -/* 055DB8 800551B8 C7A6013C */ lwc1 $f6, 0x13c($sp) -/* 055DBC 800551BC E424D548 */ swc1 $f4, %lo(D_8011D548)($at) -/* 055DC0 800551C0 C5080000 */ lwc1 $f8, ($t0) -/* 055DC4 800551C4 3C018012 */ lui $at, %hi(D_8011D54C) # $at, 0x8012 -/* 055DC8 800551C8 46083280 */ add.s $f10, $f6, $f8 -/* 055DCC 800551CC C7A40140 */ lwc1 $f4, 0x140($sp) -/* 055DD0 800551D0 E42AD54C */ swc1 $f10, %lo(D_8011D54C)($at) -/* 055DD4 800551D4 C4660000 */ lwc1 $f6, ($v1) -/* 055DD8 800551D8 3C018012 */ lui $at, %hi(D_8011D548) # $at, 0x8012 -/* 055DDC 800551DC 46062200 */ add.s $f8, $f4, $f6 -/* 055DE0 800551E0 C7AA0148 */ lwc1 $f10, 0x148($sp) -/* 055DE4 800551E4 E428D548 */ swc1 $f8, %lo(D_8011D548)($at) -/* 055DE8 800551E8 C5040000 */ lwc1 $f4, ($t0) -/* 055DEC 800551EC 3C018012 */ lui $at, %hi(D_8011D54C) # $at, 0x8012 -/* 055DF0 800551F0 46045180 */ add.s $f6, $f10, $f4 -/* 055DF4 800551F4 C7A8014C */ lwc1 $f8, 0x14c($sp) -/* 055DF8 800551F8 E426D54C */ swc1 $f6, %lo(D_8011D54C)($at) -/* 055DFC 800551FC C46A0000 */ lwc1 $f10, ($v1) -/* 055E00 80055200 3C018012 */ lui $at, %hi(D_8011D548) # $at, 0x8012 -/* 055E04 80055204 460A4100 */ add.s $f4, $f8, $f10 -/* 055E08 80055208 C7A60154 */ lwc1 $f6, 0x154($sp) -/* 055E0C 8005520C E424D548 */ swc1 $f4, %lo(D_8011D548)($at) -/* 055E10 80055210 C5080000 */ lwc1 $f8, ($t0) -/* 055E14 80055214 3C018012 */ lui $at, %hi(D_8011D54C) # $at, 0x8012 -/* 055E18 80055218 46083280 */ add.s $f10, $f6, $f8 -/* 055E1C 8005521C C7A40158 */ lwc1 $f4, 0x158($sp) -/* 055E20 80055220 E42AD54C */ swc1 $f10, %lo(D_8011D54C)($at) -/* 055E24 80055224 C4660000 */ lwc1 $f6, ($v1) -/* 055E28 80055228 3C018012 */ lui $at, %hi(D_8011D548) # $at, 0x8012 -/* 055E2C 8005522C 46062200 */ add.s $f8, $f4, $f6 -/* 055E30 80055230 C7AA0160 */ lwc1 $f10, 0x160($sp) -/* 055E34 80055234 E428D548 */ swc1 $f8, %lo(D_8011D548)($at) -/* 055E38 80055238 C5040000 */ lwc1 $f4, ($t0) -/* 055E3C 8005523C 3C018012 */ li $at, 0x80120000 # -0.000000 -/* 055E40 80055240 46045180 */ add.s $f6, $f10, $f4 -/* 055E44 80055244 24180001 */ li $t8, 1 -/* 055E48 80055248 E426D54C */ swc1 $f6, %lo(D_8011D54C)($at) -/* 055E4C 8005524C 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 055E50 80055250 44815000 */ mtc1 $at, $f10 -/* 055E54 80055254 C4680000 */ lwc1 $f8, ($v1) -/* 055E58 80055258 C5060000 */ lwc1 $f6, ($t0) -/* 055E5C 8005525C 460A4103 */ div.s $f4, $f8, $f10 -/* 055E60 80055260 44814000 */ mtc1 $at, $f8 -/* 055E64 80055264 2401FF7F */ li $at, -129 -/* 055E68 80055268 0121C824 */ and $t9, $t1, $at -/* 055E6C 8005526C 03204825 */ move $t1, $t9 -/* 055E70 80055270 46083283 */ div.s $f10, $f6, $f8 -/* 055E74 80055274 E4640000 */ swc1 $f4, ($v1) -/* 055E78 80055278 C4640000 */ lwc1 $f4, ($v1) -/* 055E7C 8005527C E50A0000 */ swc1 $f10, ($t0) -/* 055E80 80055280 C626000C */ lwc1 $f6, 0xc($s1) -/* 055E84 80055284 C50A0000 */ lwc1 $f10, ($t0) -/* 055E88 80055288 46062201 */ sub.s $f8, $f4, $f6 -/* 055E8C 8005528C E4680000 */ swc1 $f8, ($v1) -/* 055E90 80055290 C6240014 */ lwc1 $f4, 0x14($s1) -/* 055E94 80055294 A7B80130 */ sh $t8, 0x130($sp) -/* 055E98 80055298 46045181 */ sub.s $f6, $f10, $f4 -/* 055E9C 8005529C E5060000 */ swc1 $f6, ($t0) -.L800552A0: -/* 055EA0 800552A0 1120001E */ beqz $t1, .L8005531C -/* 055EA4 800552A4 00001025 */ move $v0, $zero -/* 055EA8 800552A8 C7A80138 */ lwc1 $f8, 0x138($sp) -/* 055EAC 800552AC C7AA0144 */ lwc1 $f10, 0x144($sp) -/* 055EB0 800552B0 46088000 */ add.s $f0, $f16, $f8 -/* 055EB4 800552B4 C7A40150 */ lwc1 $f4, 0x150($sp) -/* 055EB8 800552B8 460A0000 */ add.s $f0, $f0, $f10 -/* 055EBC 800552BC C7A6015C */ lwc1 $f6, 0x15c($sp) -/* 055EC0 800552C0 46040000 */ add.s $f0, $f0, $f4 -/* 055EC4 800552C4 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 055EC8 800552C8 46060000 */ add.s $f0, $f0, $f6 -/* 055ECC 800552CC 44812800 */ mtc1 $at, $f5 -/* 055ED0 800552D0 E7A00178 */ swc1 $f0, 0x178($sp) -/* 055ED4 800552D4 C7A80178 */ lwc1 $f8, 0x178($sp) -/* 055ED8 800552D8 44802000 */ mtc1 $zero, $f4 -/* 055EDC 800552DC 460042A1 */ cvt.d.s $f10, $f8 -/* 055EE0 800552E0 46245182 */ mul.d $f6, $f10, $f4 -/* 055EE4 800552E4 3C014010 */ li $at, 0x40100000 # 2.250000 -/* 055EE8 800552E8 46203220 */ cvt.s.d $f8, $f6 -/* 055EEC 800552EC 44814800 */ mtc1 $at, $f9 -/* 055EF0 800552F0 E7A80178 */ swc1 $f8, 0x178($sp) -/* 055EF4 800552F4 C6240010 */ lwc1 $f4, 0x10($s1) -/* 055EF8 800552F8 460042A1 */ cvt.d.s $f10, $f8 -/* 055EFC 800552FC 44804000 */ mtc1 $zero, $f8 -/* 055F00 80055300 460021A1 */ cvt.d.s $f6, $f4 -/* 055F04 80055304 46283101 */ sub.d $f4, $f6, $f8 -/* 055F08 80055308 4624503C */ c.lt.d $f10, $f4 -/* 055F0C 8005530C 00000000 */ nop -/* 055F10 80055310 45000002 */ bc1f .L8005531C -/* 055F14 80055314 00000000 */ nop -/* 055F18 80055318 24020001 */ li $v0, 1 -.L8005531C: -/* 055F1C 8005531C 820701D6 */ lb $a3, 0x1d6($s0) -/* 055F20 80055320 AFA9018C */ sw $t1, 0x18c($sp) -/* 055F24 80055324 AFA50054 */ sw $a1, 0x54($sp) -/* 055F28 80055328 A3A2005F */ sb $v0, 0x5f($sp) -/* 055F2C 8005532C 24040004 */ li $a0, 4 -/* 055F30 80055330 0C00C44C */ jal func_80031130 -/* 055F34 80055334 27A60134 */ addiu $a2, $sp, 0x134 -/* 055F38 80055338 8FA40054 */ lw $a0, 0x54($sp) -/* 055F3C 8005533C 240D0004 */ li $t5, 4 -/* 055F40 80055340 27AE0190 */ addiu $t6, $sp, 0x190 -/* 055F44 80055344 AFA00190 */ sw $zero, 0x190($sp) -/* 055F48 80055348 AFAE0014 */ sw $t6, 0x14($sp) -/* 055F4C 8005534C AFAD0010 */ sw $t5, 0x10($sp) -/* 055F50 80055350 27A50134 */ addiu $a1, $sp, 0x134 -/* 055F54 80055354 27A600E0 */ addiu $a2, $sp, 0xe0 -/* 055F58 80055358 0C00C580 */ jal func_80031600 -/* 055F5C 8005535C 27A70058 */ addiu $a3, $sp, 0x58 -/* 055F60 80055360 A20201E3 */ sb $v0, 0x1e3($s0) -/* 055F64 80055364 27A40180 */ addiu $a0, $sp, 0x180 -/* 055F68 80055368 27A50178 */ addiu $a1, $sp, 0x178 -/* 055F6C 8005536C 0C00AB35 */ jal func_8002ACD4 -/* 055F70 80055370 27A6017C */ addiu $a2, $sp, 0x17c -/* 055F74 80055374 8FA9018C */ lw $t1, 0x18c($sp) -/* 055F78 80055378 44808000 */ mtc1 $zero, $f16 -/* 055F7C 8005537C 10400081 */ beqz $v0, .L80055584 -/* 055F80 80055380 AFA20184 */ sw $v0, 0x184($sp) -/* 055F84 80055384 3C01437F */ li $at, 0x437F0000 # 255.000000 -/* 055F88 80055388 44810000 */ mtc1 $at, $f0 -/* 055F8C 8005538C C7A60180 */ lwc1 $f6, 0x180($sp) -/* 055F90 80055390 C7A8017C */ lwc1 $f8, 0x17c($sp) -/* 055F94 80055394 46003302 */ mul.s $f12, $f6, $f0 -/* 055F98 80055398 AFA9018C */ sw $t1, 0x18c($sp) -/* 055F9C 8005539C 46004382 */ mul.s $f14, $f8, $f0 -/* 055FA0 800553A0 0C01C1D4 */ jal func_80070750 -/* 055FA4 800553A4 00000000 */ nop -/* 055FA8 800553A8 86390000 */ lh $t9, ($s1) -/* 055FAC 800553AC 8FA9018C */ lw $t1, 0x18c($sp) -/* 055FB0 800553B0 00591823 */ subu $v1, $v0, $t9 -/* 055FB4 800553B4 00036C00 */ sll $t5, $v1, 0x10 -/* 055FB8 800553B8 000D7403 */ sra $t6, $t5, 0x10 -/* 055FBC 800553BC 44808000 */ mtc1 $zero, $f16 -/* 055FC0 800553C0 29C12000 */ slti $at, $t6, 0x2000 -/* 055FC4 800553C4 10200003 */ beqz $at, .L800553D4 -/* 055FC8 800553C8 29C1E001 */ slti $at, $t6, -0x1fff -/* 055FCC 800553CC 10200004 */ beqz $at, .L800553E0 -/* 055FD0 800553D0 00000000 */ nop -.L800553D4: -/* 055FD4 800553D4 820F01D6 */ lb $t7, 0x1d6($s0) -/* 055FD8 800553D8 24010001 */ li $at, 1 -/* 055FDC 800553DC 15E10069 */ bne $t7, $at, .L80055584 -.L800553E0: -/* 055FE0 800553E0 3C01800E */ lui $at, %hi(D_800E683C) # $at, 0x800e -/* 055FE4 800553E4 C60A002C */ lwc1 $f10, 0x2c($s0) -/* 055FE8 800553E8 C4276838 */ lwc1 $f7, %lo(D_800E6838)($at) -/* 055FEC 800553EC C426683C */ lwc1 $f6, %lo(D_800E683C)($at) -/* 055FF0 800553F0 46005121 */ cvt.d.s $f4, $f10 -/* 055FF4 800553F4 46262202 */ mul.d $f8, $f4, $f6 -/* 055FF8 800553F8 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 055FFC 800553FC 44812800 */ mtc1 $at, $f5 -/* 056000 80055400 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 056004 80055404 462042A0 */ cvt.s.d $f10, $f8 -/* 056008 80055408 4610503C */ c.lt.s $f10, $f16 -/* 05600C 8005540C E7AA0178 */ swc1 $f10, 0x178($sp) -/* 056010 80055410 45000003 */ bc1f .L80055420 -/* 056014 80055414 00000000 */ nop -/* 056018 80055418 46005007 */ neg.s $f0, $f10 -/* 05601C 8005541C E7A00178 */ swc1 $f0, 0x178($sp) -.L80055420: -/* 056020 80055420 C7A00178 */ lwc1 $f0, 0x178($sp) -/* 056024 80055424 44802000 */ mtc1 $zero, $f4 -/* 056028 80055428 460000A1 */ cvt.d.s $f2, $f0 -/* 05602C 8005542C 4622203C */ c.lt.d $f4, $f2 -/* 056030 80055430 00000000 */ nop -/* 056034 80055434 4500000F */ bc1f .L80055474 -/* 056038 80055438 00000000 */ nop -/* 05603C 8005543C 44813800 */ mtc1 $at, $f7 -/* 056040 80055440 44803000 */ mtc1 $zero, $f6 -/* 056044 80055444 86040000 */ lh $a0, ($s0) -/* 056048 80055448 46261202 */ mul.d $f8, $f2, $f6 -/* 05604C 8005544C AFA9018C */ sw $t1, 0x18c($sp) -/* 056050 80055450 24050012 */ li $a1, 18 -/* 056054 80055454 462042A0 */ cvt.s.d $f10, $f8 -/* 056058 80055458 44065000 */ mfc1 $a2, $f10 -/* 05605C 8005545C 0C01C909 */ jal func_80072424 -/* 056060 80055460 00000000 */ nop -/* 056064 80055464 C7A00178 */ lwc1 $f0, 0x178($sp) -/* 056068 80055468 8FA9018C */ lw $t1, 0x18c($sp) -/* 05606C 8005546C 44808000 */ mtc1 $zero, $f16 -/* 056070 80055470 460000A1 */ cvt.d.s $f2, $f0 -.L80055474: -/* 056074 80055474 3C014010 */ li $at, 0x40100000 # 2.250000 -/* 056078 80055478 44812800 */ mtc1 $at, $f5 -/* 05607C 8005547C 44802000 */ mtc1 $zero, $f4 -/* 056080 80055480 E7A00178 */ swc1 $f0, 0x178($sp) -/* 056084 80055484 4622203C */ c.lt.d $f4, $f2 -/* 056088 80055488 240F0007 */ li $t7, 7 -/* 05608C 8005548C 4500003D */ bc1f .L80055584 -/* 056090 80055490 00000000 */ nop -/* 056094 80055494 921801F3 */ lbu $t8, 0x1f3($s0) -/* 056098 80055498 3C0D8012 */ lui $t5, %hi(D_8011D55C) # $t5, 0x8012 -/* 05609C 8005549C 37190008 */ ori $t9, $t8, 8 -/* 0560A0 800554A0 A21901F3 */ sb $t9, 0x1f3($s0) -/* 0560A4 800554A4 8DADD55C */ lw $t5, %lo(D_8011D55C)($t5) -/* 0560A8 800554A8 2401FFFF */ li $at, -1 -/* 0560AC 800554AC 11A10006 */ beq $t5, $at, .L800554C8 -/* 0560B0 800554B0 3C0E8012 */ lui $t6, %hi(D_8011D508) # $t6, 0x8012 -/* 0560B4 800554B4 3C014040 */ li $at, 0x40400000 # 3.000000 -/* 0560B8 800554B8 44813000 */ mtc1 $at, $f6 -/* 0560BC 800554BC 8DCED508 */ lw $t6, %lo(D_8011D508)($t6) -/* 0560C0 800554C0 00000000 */ nop -/* 0560C4 800554C4 E5C60030 */ swc1 $f6, 0x30($t6) -.L800554C8: -/* 0560C8 800554C8 86180000 */ lh $t8, ($s0) -/* 0560CC 800554CC 2401FFFF */ li $at, -1 -/* 0560D0 800554D0 1301000D */ beq $t8, $at, .L80055508 -/* 0560D4 800554D4 A20F01D2 */ sb $t7, 0x1d2($s0) -/* 0560D8 800554D8 02202025 */ move $a0, $s1 -/* 0560DC 800554DC 240501C2 */ li $a1, 450 -/* 0560E0 800554E0 24060008 */ li $a2, 8 -/* 0560E4 800554E4 24070082 */ li $a3, 130 -/* 0560E8 800554E8 0C015C2E */ jal func_800570B8 -/* 0560EC 800554EC AFA9018C */ sw $t1, 0x18c($sp) -/* 0560F0 800554F0 02202025 */ move $a0, $s1 -/* 0560F4 800554F4 0C015C12 */ jal func_80057048 -/* 0560F8 800554F8 2405000C */ li $a1, 12 -/* 0560FC 800554FC 8FA9018C */ lw $t1, 0x18c($sp) -/* 056100 80055500 44808000 */ mtc1 $zero, $f16 -/* 056104 80055504 00000000 */ nop -.L80055508: -/* 056108 80055508 921901EF */ lbu $t9, 0x1ef($s0) -/* 05610C 8005550C 820E01D6 */ lb $t6, 0x1d6($s0) -/* 056110 80055510 24010001 */ li $at, 1 -/* 056114 80055514 372D0004 */ ori $t5, $t9, 4 -/* 056118 80055518 15C10009 */ bne $t6, $at, .L80055540 -/* 05611C 8005551C A20D01EF */ sb $t5, 0x1ef($s0) -/* 056120 80055520 C7A00178 */ lwc1 $f0, 0x178($sp) -/* 056124 80055524 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 056128 80055528 44815800 */ mtc1 $at, $f11 -/* 05612C 8005552C 44805000 */ mtc1 $zero, $f10 -/* 056130 80055530 46000221 */ cvt.d.s $f8, $f0 -/* 056134 80055534 462A4102 */ mul.d $f4, $f8, $f10 -/* 056138 80055538 46202020 */ cvt.s.d $f0, $f4 -/* 05613C 8005553C E7A00178 */ swc1 $f0, 0x178($sp) -.L80055540: -/* 056140 80055540 C7A60180 */ lwc1 $f6, 0x180($sp) -/* 056144 80055544 C7A80178 */ lwc1 $f8, 0x178($sp) -/* 056148 80055548 3C01800E */ lui $at, %hi(D_800E6840) # $at, 0x800e -/* 05614C 8005554C 46083282 */ mul.s $f10, $f6, $f8 -/* 056150 80055550 E60A011C */ swc1 $f10, 0x11c($s0) -/* 056154 80055554 C7A60178 */ lwc1 $f6, 0x178($sp) -/* 056158 80055558 C7A4017C */ lwc1 $f4, 0x17c($sp) -/* 05615C 8005555C C60A002C */ lwc1 $f10, 0x2c($s0) -/* 056160 80055560 46062202 */ mul.s $f8, $f4, $f6 -/* 056164 80055564 46005121 */ cvt.d.s $f4, $f10 -/* 056168 80055568 E6080120 */ swc1 $f8, 0x120($s0) -/* 05616C 8005556C C4266844 */ lwc1 $f6, %lo(D_800E6844)($at) -/* 056170 80055570 C4276840 */ lwc1 $f7, %lo(D_800E6840)($at) -/* 056174 80055574 E6100030 */ swc1 $f16, 0x30($s0) -/* 056178 80055578 46262202 */ mul.d $f8, $f4, $f6 -/* 05617C 8005557C 462042A0 */ cvt.s.d $f10, $f8 -/* 056180 80055580 E60A002C */ swc1 $f10, 0x2c($s0) -.L80055584: -/* 056184 80055584 83AF005F */ lb $t7, 0x5f($sp) -/* 056188 80055588 00000000 */ nop -/* 05618C 8005558C 11E0001E */ beqz $t7, .L80055608 -/* 056190 80055590 00000000 */ nop -/* 056194 80055594 8FB80190 */ lw $t8, 0x190($sp) -/* 056198 80055598 00000000 */ nop -/* 05619C 8005559C 2B010003 */ slti $at, $t8, 3 -/* 0561A0 800555A0 14200019 */ bnez $at, .L80055608 -/* 0561A4 800555A4 00000000 */ nop -/* 0561A8 800555A8 86190000 */ lh $t9, ($s0) -/* 0561AC 800555AC 2401FFFF */ li $at, -1 -/* 0561B0 800555B0 1321000E */ beq $t9, $at, .L800555EC -/* 0561B4 800555B4 00000000 */ nop -/* 0561B8 800555B8 8E0D0020 */ lw $t5, 0x20($s0) -/* 0561BC 800555BC 00000000 */ nop -/* 0561C0 800555C0 15A0000A */ bnez $t5, .L800555EC -/* 0561C4 800555C4 00000000 */ nop -/* 0561C8 800555C8 860E018E */ lh $t6, 0x18e($s0) -/* 0561CC 800555CC 2404013F */ li $a0, 319 -/* 0561D0 800555D0 1DC00006 */ bgtz $t6, .L800555EC -/* 0561D4 800555D4 26050020 */ addiu $a1, $s0, 0x20 -/* 0561D8 800555D8 0C000741 */ jal func_80001D04 -/* 0561DC 800555DC AFA9018C */ sw $t1, 0x18c($sp) -/* 0561E0 800555E0 8FA9018C */ lw $t1, 0x18c($sp) -/* 0561E4 800555E4 44808000 */ mtc1 $zero, $f16 -/* 0561E8 800555E8 00000000 */ nop -.L800555EC: -/* 0561EC 800555EC 820F01ED */ lb $t7, 0x1ed($s0) -/* 0561F0 800555F0 24180004 */ li $t8, 4 -/* 0561F4 800555F4 15E00003 */ bnez $t7, .L80055604 -/* 0561F8 800555F8 2419003C */ li $t9, 60 -/* 0561FC 800555FC 10000002 */ b .L80055608 -/* 056200 80055600 A2180187 */ sb $t8, 0x187($s0) -.L80055604: -/* 056204 80055604 A21901ED */ sb $t9, 0x1ed($s0) -.L80055608: -/* 056208 80055608 820D01E3 */ lb $t5, 0x1e3($s0) -/* 05620C 8005560C A20901E4 */ sb $t1, 0x1e4($s0) -/* 056210 80055610 01A97025 */ or $t6, $t5, $t1 -/* 056214 80055614 A20E01E3 */ sb $t6, 0x1e3($s0) -/* 056218 80055618 820201E3 */ lb $v0, 0x1e3($s0) -/* 05621C 8005561C A20001E2 */ sb $zero, 0x1e2($s0) -/* 056220 80055620 304F0001 */ andi $t7, $v0, 1 -/* 056224 80055624 11E00005 */ beqz $t7, .L8005563C -/* 056228 80055628 27A30134 */ addiu $v1, $sp, 0x134 -/* 05622C 8005562C 821801E2 */ lb $t8, 0x1e2($s0) -/* 056230 80055630 820201E3 */ lb $v0, 0x1e3($s0) -/* 056234 80055634 27190001 */ addiu $t9, $t8, 1 -/* 056238 80055638 A21901E2 */ sb $t9, 0x1e2($s0) -.L8005563C: -/* 05623C 8005563C 00026F80 */ sll $t5, $v0, 0x1e -/* 056240 80055640 05A10005 */ bgez $t5, .L80055658 -/* 056244 80055644 24090002 */ li $t1, 2 -/* 056248 80055648 820E01E2 */ lb $t6, 0x1e2($s0) -/* 05624C 8005564C 820201E3 */ lb $v0, 0x1e3($s0) -/* 056250 80055650 25CF0001 */ addiu $t7, $t6, 1 -/* 056254 80055654 A20F01E2 */ sb $t7, 0x1e2($s0) -.L80055658: -/* 056258 80055658 0009C040 */ sll $t8, $t1, 1 -/* 05625C 8005565C 0058C824 */ and $t9, $v0, $t8 -/* 056260 80055660 13200005 */ beqz $t9, .L80055678 -/* 056264 80055664 03004825 */ move $t1, $t8 -/* 056268 80055668 820D01E2 */ lb $t5, 0x1e2($s0) -/* 05626C 8005566C 820201E3 */ lb $v0, 0x1e3($s0) -/* 056270 80055670 25AE0001 */ addiu $t6, $t5, 1 -/* 056274 80055674 A20E01E2 */ sb $t6, 0x1e2($s0) -.L80055678: -/* 056278 80055678 00097840 */ sll $t7, $t1, 1 -/* 05627C 8005567C 004FC024 */ and $t8, $v0, $t7 -/* 056280 80055680 13000005 */ beqz $t8, .L80055698 -/* 056284 80055684 02001025 */ move $v0, $s0 -/* 056288 80055688 821901E2 */ lb $t9, 0x1e2($s0) -/* 05628C 8005568C 00000000 */ nop -/* 056290 80055690 272D0001 */ addiu $t5, $t9, 1 -/* 056294 80055694 A20D01E2 */ sb $t5, 0x1e2($s0) -.L80055698: -/* 056298 80055698 27A40164 */ addiu $a0, $sp, 0x164 -.L8005569C: -/* 05629C 8005569C C4640000 */ lwc1 $f4, ($v1) -/* 0562A0 800556A0 24630004 */ addiu $v1, $v1, 4 -/* 0562A4 800556A4 0064082B */ sltu $at, $v1, $a0 -/* 0562A8 800556A8 24420004 */ addiu $v0, $v0, 4 -/* 0562AC 800556AC 1420FFFB */ bnez $at, .L8005569C -/* 0562B0 800556B0 E44400D4 */ swc1 $f4, 0xd4($v0) -/* 0562B4 800556B4 27A20058 */ addiu $v0, $sp, 0x58 -/* 0562B8 800556B8 02001825 */ move $v1, $s0 -/* 0562BC 800556BC 27A4005C */ addiu $a0, $sp, 0x5c -.L800556C0: -/* 0562C0 800556C0 804E0000 */ lb $t6, ($v0) -/* 0562C4 800556C4 24420001 */ addiu $v0, $v0, 1 -/* 0562C8 800556C8 0044082B */ sltu $at, $v0, $a0 -/* 0562CC 800556CC 24630001 */ addiu $v1, $v1, 1 -/* 0562D0 800556D0 1420FFFB */ bnez $at, .L800556C0 -/* 0562D4 800556D4 A06E01DB */ sb $t6, 0x1db($v1) -/* 0562D8 800556D8 E630000C */ swc1 $f16, 0xc($s1) -/* 0562DC 800556DC E6300010 */ swc1 $f16, 0x10($s1) -/* 0562E0 800556E0 E6300014 */ swc1 $f16, 0x14($s1) -/* 0562E4 800556E4 00002025 */ move $a0, $zero -/* 0562E8 800556E8 02001025 */ move $v0, $s0 -.L800556EC: -/* 0562EC 800556EC C44600D8 */ lwc1 $f6, 0xd8($v0) -/* 0562F0 800556F0 C628000C */ lwc1 $f8, 0xc($s1) -/* 0562F4 800556F4 24840003 */ addiu $a0, $a0, 3 -/* 0562F8 800556F8 46083280 */ add.s $f10, $f6, $f8 -/* 0562FC 800556FC C6260010 */ lwc1 $f6, 0x10($s1) -/* 056300 80055700 E62A000C */ swc1 $f10, 0xc($s1) -/* 056304 80055704 C44400DC */ lwc1 $f4, 0xdc($v0) -/* 056308 80055708 2881000C */ slti $at, $a0, 0xc -/* 05630C 8005570C 46062200 */ add.s $f8, $f4, $f6 -/* 056310 80055710 C6240014 */ lwc1 $f4, 0x14($s1) -/* 056314 80055714 E6280010 */ swc1 $f8, 0x10($s1) -/* 056318 80055718 C44A00E0 */ lwc1 $f10, 0xe0($v0) -/* 05631C 8005571C 2442000C */ addiu $v0, $v0, 0xc -/* 056320 80055720 46045180 */ add.s $f6, $f10, $f4 -/* 056324 80055724 1420FFF1 */ bnez $at, .L800556EC -/* 056328 80055728 E6260014 */ swc1 $f6, 0x14($s1) -/* 05632C 8005572C 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 056330 80055730 44810000 */ mtc1 $at, $f0 -/* 056334 80055734 C628000C */ lwc1 $f8, 0xc($s1) -/* 056338 80055738 C6240010 */ lwc1 $f4, 0x10($s1) -/* 05633C 8005573C 46004283 */ div.s $f10, $f8, $f0 -/* 056340 80055740 C6280014 */ lwc1 $f8, 0x14($s1) -/* 056344 80055744 862F0000 */ lh $t7, ($s1) -/* 056348 80055748 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 -/* 05634C 8005574C 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 -/* 056350 80055750 000FC023 */ negu $t8, $t7 -/* 056354 80055754 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 056358 80055758 27A40060 */ addiu $a0, $sp, 0x60 -/* 05635C 8005575C E62A000C */ swc1 $f10, 0xc($s1) -/* 056360 80055760 46002183 */ div.s $f6, $f4, $f0 -/* 056364 80055764 44812000 */ mtc1 $at, $f4 -/* 056368 80055768 46004283 */ div.s $f10, $f8, $f0 -/* 05636C 8005576C E6260010 */ swc1 $f6, 0x10($s1) -/* 056370 80055770 E62A0014 */ swc1 $f10, 0x14($s1) -/* 056374 80055774 A4B80000 */ sh $t8, ($a1) -/* 056378 80055778 86390002 */ lh $t9, 2($s1) -/* 05637C 8005577C 00000000 */ nop -/* 056380 80055780 00196823 */ negu $t5, $t9 -/* 056384 80055784 A4AD0002 */ sh $t5, 2($a1) -/* 056388 80055788 862E0004 */ lh $t6, 4($s1) -/* 05638C 8005578C E4A40008 */ swc1 $f4, 8($a1) -/* 056390 80055790 000E7823 */ negu $t7, $t6 -/* 056394 80055794 A4AF0004 */ sh $t7, 4($a1) -/* 056398 80055798 C626000C */ lwc1 $f6, 0xc($s1) -/* 05639C 8005579C 00000000 */ nop -/* 0563A0 800557A0 46003207 */ neg.s $f8, $f6 -/* 0563A4 800557A4 E4A8000C */ swc1 $f8, 0xc($a1) -/* 0563A8 800557A8 C62A0010 */ lwc1 $f10, 0x10($s1) -/* 0563AC 800557AC 00000000 */ nop -/* 0563B0 800557B0 46005107 */ neg.s $f4, $f10 -/* 0563B4 800557B4 E4A40010 */ swc1 $f4, 0x10($a1) -/* 0563B8 800557B8 C6260014 */ lwc1 $f6, 0x14($s1) -/* 0563BC 800557BC 00000000 */ nop -/* 0563C0 800557C0 46003207 */ neg.s $f8, $f6 -/* 0563C4 800557C4 0C01BF9D */ jal func_8006FE74 -/* 0563C8 800557C8 E4A80014 */ swc1 $f8, 0x14($a1) -/* 0563CC 800557CC 02001025 */ move $v0, $s0 -/* 0563D0 800557D0 27A8011C */ addiu $t0, $sp, 0x11c -/* 0563D4 800557D4 27A90108 */ addiu $t1, $sp, 0x108 -/* 0563D8 800557D8 27A300F4 */ addiu $v1, $sp, 0xf4 -.L800557DC: -/* 0563DC 800557DC 8C4500D8 */ lw $a1, 0xd8($v0) -/* 0563E0 800557E0 8C4600DC */ lw $a2, 0xdc($v0) -/* 0563E4 800557E4 8C4700E0 */ lw $a3, 0xe0($v0) -/* 0563E8 800557E8 AFA9004C */ sw $t1, 0x4c($sp) -/* 0563EC 800557EC AFA80050 */ sw $t0, 0x50($sp) -/* 0563F0 800557F0 AFA30048 */ sw $v1, 0x48($sp) -/* 0563F4 800557F4 AFA20054 */ sw $v0, 0x54($sp) -/* 0563F8 800557F8 AFA30018 */ sw $v1, 0x18($sp) -/* 0563FC 800557FC AFA90014 */ sw $t1, 0x14($sp) -/* 056400 80055800 AFA80010 */ sw $t0, 0x10($sp) -/* 056404 80055804 0C01BD93 */ jal func_8006F64C -/* 056408 80055808 27A40060 */ addiu $a0, $sp, 0x60 -/* 05640C 8005580C 8FA30048 */ lw $v1, 0x48($sp) -/* 056410 80055810 8FA20054 */ lw $v0, 0x54($sp) -/* 056414 80055814 8FA80050 */ lw $t0, 0x50($sp) -/* 056418 80055818 8FA9004C */ lw $t1, 0x4c($sp) -/* 05641C 8005581C 27B80104 */ addiu $t8, $sp, 0x104 -/* 056420 80055820 24630004 */ addiu $v1, $v1, 4 -/* 056424 80055824 2442000C */ addiu $v0, $v0, 0xc -/* 056428 80055828 25080004 */ addiu $t0, $t0, 4 -/* 05642C 8005582C 1478FFEB */ bne $v1, $t8, .L800557DC -/* 056430 80055830 25290004 */ addiu $t1, $t1, 4 -/* 056434 80055834 821901D6 */ lb $t9, 0x1d6($s0) -/* 056438 80055838 24010004 */ li $at, 4 -/* 05643C 8005583C 13210048 */ beq $t9, $at, .L80055960 -/* 056440 80055840 00000000 */ nop -/* 056444 80055844 C7AA0120 */ lwc1 $f10, 0x120($sp) -/* 056448 80055848 C7A4011C */ lwc1 $f4, 0x11c($sp) -/* 05644C 8005584C C7A600F8 */ lwc1 $f6, 0xf8($sp) -/* 056450 80055850 C7A800F4 */ lwc1 $f8, 0xf4($sp) -/* 056454 80055854 46045400 */ add.s $f16, $f10, $f4 -/* 056458 80055858 C7A40124 */ lwc1 $f4, 0x124($sp) -/* 05645C 8005585C 46083480 */ add.s $f18, $f6, $f8 -/* 056460 80055860 C7AA0128 */ lwc1 $f10, 0x128($sp) -/* 056464 80055864 C7A800FC */ lwc1 $f8, 0xfc($sp) -/* 056468 80055868 C7A60100 */ lwc1 $f6, 0x100($sp) -/* 05646C 8005586C 46045000 */ add.s $f0, $f10, $f4 -/* 056470 80055870 E7B2017C */ swc1 $f18, 0x17c($sp) -/* 056474 80055874 46083080 */ add.s $f2, $f6, $f8 -/* 056478 80055878 E7B00180 */ swc1 $f16, 0x180($sp) -/* 05647C 8005587C 46029381 */ sub.s $f14, $f18, $f2 -/* 056480 80055880 0C01C1D4 */ jal func_80070750 -/* 056484 80055884 46008301 */ sub.s $f12, $f16, $f0 -/* 056488 80055888 34018000 */ li $at, 32768 -/* 05648C 8005588C 00412021 */ addu $a0, $v0, $at -/* 056490 80055890 308DFFFF */ andi $t5, $a0, 0xffff -/* 056494 80055894 820F01D2 */ lb $t7, 0x1d2($s0) -/* 056498 80055898 000D1C00 */ sll $v1, $t5, 0x10 -/* 05649C 8005589C 24050007 */ li $a1, 7 -/* 0564A0 800558A0 00037403 */ sra $t6, $v1, 0x10 -/* 0564A4 800558A4 14AF000A */ bne $a1, $t7, .L800558D0 -/* 0564A8 800558A8 01C01825 */ move $v1, $t6 -/* 0564AC 800558AC 000D1400 */ sll $v0, $t5, 0x10 -/* 0564B0 800558B0 0002C403 */ sra $t8, $v0, 0x10 -/* 0564B4 800558B4 1B000003 */ blez $t8, .L800558C4 -/* 0564B8 800558B8 03001025 */ move $v0, $t8 -/* 0564BC 800558BC 24190800 */ li $t9, 2048 -/* 0564C0 800558C0 A619019C */ sh $t9, 0x19c($s0) -.L800558C4: -/* 0564C4 800558C4 04410002 */ bgez $v0, .L800558D0 -/* 0564C8 800558C8 240DF800 */ li $t5, -2048 -/* 0564CC 800558CC A60D019C */ sh $t5, 0x19c($s0) -.L800558D0: -/* 0564D0 800558D0 820E01D2 */ lb $t6, 0x1d2($s0) -/* 0564D4 800558D4 00000000 */ nop -/* 0564D8 800558D8 11C00004 */ beqz $t6, .L800558EC -/* 0564DC 800558DC 286101F5 */ slti $at, $v1, 0x1f5 -/* 0564E0 800558E0 8603019C */ lh $v1, 0x19c($s0) -/* 0564E4 800558E4 00000000 */ nop -/* 0564E8 800558E8 286101F5 */ slti $at, $v1, 0x1f5 -.L800558EC: -/* 0564EC 800558EC 10200003 */ beqz $at, .L800558FC -/* 0564F0 800558F0 2861FE0C */ slti $at, $v1, -0x1f4 -/* 0564F4 800558F4 1020000D */ beqz $at, .L8005592C -/* 0564F8 800558F8 87B80130 */ lh $t8, 0x130($sp) -.L800558FC: -/* 0564FC 800558FC 8E0F010C */ lw $t7, 0x10c($s0) -/* 056500 80055900 860D01A2 */ lh $t5, 0x1a2($s0) -/* 056504 80055904 01E50019 */ multu $t7, $a1 -/* 056508 80055908 A20001E6 */ sb $zero, 0x1e6($s0) -/* 05650C 8005590C 0000C012 */ mflo $t8 -/* 056510 80055910 0018C8C3 */ sra $t9, $t8, 3 -/* 056514 80055914 AE19010C */ sw $t9, 0x10c($s0) -/* 056518 80055918 01A50019 */ multu $t5, $a1 -/* 05651C 8005591C 00007012 */ mflo $t6 -/* 056520 80055920 000E78C3 */ sra $t7, $t6, 3 -/* 056524 80055924 A60F01A2 */ sh $t7, 0x1a2($s0) -/* 056528 80055928 87B80130 */ lh $t8, 0x130($sp) -.L8005592C: -/* 05652C 8005592C 0060C825 */ move $t9, $v1 -/* 056530 80055930 13000002 */ beqz $t8, .L8005593C -/* 056534 80055934 00196C80 */ sll $t5, $t9, 0x12 -/* 056538 80055938 000D1C03 */ sra $v1, $t5, 0x10 -.L8005593C: -/* 05653C 8005593C 862F0000 */ lh $t7, ($s1) -/* 056540 80055940 0003C083 */ sra $t8, $v1, 2 -/* 056544 80055944 01F8C821 */ addu $t9, $t7, $t8 -/* 056548 80055948 A6390000 */ sh $t9, ($s1) -/* 05654C 8005594C 860E01A2 */ lh $t6, 0x1a2($s0) -/* 056550 80055950 862D0000 */ lh $t5, ($s1) -/* 056554 80055954 00000000 */ nop -/* 056558 80055958 01AE7823 */ subu $t7, $t5, $t6 -/* 05655C 8005595C A60F01A0 */ sh $t7, 0x1a0($s0) -.L80055960: -/* 056560 80055960 C7AA00FC */ lwc1 $f10, 0xfc($sp) -/* 056564 80055964 C7A400F4 */ lwc1 $f4, 0xf4($sp) -/* 056568 80055968 C7A60110 */ lwc1 $f6, 0x110($sp) -/* 05656C 8005596C C7A80108 */ lwc1 $f8, 0x108($sp) -/* 056570 80055970 46045301 */ sub.s $f12, $f10, $f4 -/* 056574 80055974 46083381 */ sub.s $f14, $f6, $f8 -/* 056578 80055978 E7AC0180 */ swc1 $f12, 0x180($sp) -/* 05657C 8005597C 0C01C1D4 */ jal func_80070750 -/* 056580 80055980 E7AE017C */ swc1 $f14, 0x17c($sp) -/* 056584 80055984 8FB80184 */ lw $t8, 0x184($sp) -/* 056588 80055988 00000000 */ nop -/* 05658C 8005598C 17000005 */ bnez $t8, .L800559A4 -/* 056590 80055990 00000000 */ nop -/* 056594 80055994 86390002 */ lh $t9, 2($s1) -/* 056598 80055998 244EC000 */ addiu $t6, $v0, -0x4000 -/* 05659C 8005599C 032E7821 */ addu $t7, $t9, $t6 -/* 0565A0 800559A0 A62F0002 */ sh $t7, 2($s1) -.L800559A4: -/* 0565A4 800559A4 C7AA0120 */ lwc1 $f10, 0x120($sp) -/* 0565A8 800559A8 C7A4011C */ lwc1 $f4, 0x11c($sp) -/* 0565AC 800559AC C7A6010C */ lwc1 $f6, 0x10c($sp) -/* 0565B0 800559B0 C7A80108 */ lwc1 $f8, 0x108($sp) -/* 0565B4 800559B4 46045301 */ sub.s $f12, $f10, $f4 -/* 0565B8 800559B8 46083381 */ sub.s $f14, $f6, $f8 -/* 0565BC 800559BC E7AC0180 */ swc1 $f12, 0x180($sp) -/* 0565C0 800559C0 0C01C1D4 */ jal func_80070750 -/* 0565C4 800559C4 E7AE017C */ swc1 $f14, 0x17c($sp) -/* 0565C8 800559C8 8FB80184 */ lw $t8, 0x184($sp) -/* 0565CC 800559CC 24194000 */ li $t9, 16384 -/* 0565D0 800559D0 17000005 */ bnez $t8, .L800559E8 -/* 0565D4 800559D4 00000000 */ nop -/* 0565D8 800559D8 860D01A4 */ lh $t5, 0x1a4($s0) -/* 0565DC 800559DC 03227823 */ subu $t7, $t9, $v0 -/* 0565E0 800559E0 01AFC021 */ addu $t8, $t5, $t7 -/* 0565E4 800559E4 A61801A4 */ sh $t8, 0x1a4($s0) -.L800559E8: -/* 0565E8 800559E8 820201D6 */ lb $v0, 0x1d6($s0) -/* 0565EC 800559EC 24010004 */ li $at, 4 -/* 0565F0 800559F0 1041001F */ beq $v0, $at, .L80055A70 -/* 0565F4 800559F4 24010002 */ li $at, 2 -/* 0565F8 800559F8 1041001D */ beq $v0, $at, .L80055A70 -/* 0565FC 800559FC 2401000A */ li $at, 10 -/* 056600 80055A00 1041001B */ beq $v0, $at, .L80055A70 -/* 056604 80055A04 24010007 */ li $at, 7 -/* 056608 80055A08 1041001A */ beq $v0, $at, .L80055A74 -/* 05660C 80055A0C 8FBF002C */ lw $ra, 0x2c($sp) -/* 056610 80055A10 860201A4 */ lh $v0, 0x1a4($s0) -/* 056614 80055A14 24193400 */ li $t9, 13312 -/* 056618 80055A18 28413401 */ slti $at, $v0, 0x3401 -/* 05661C 80055A1C 14200004 */ bnez $at, .L80055A30 -/* 056620 80055A20 240ECC00 */ li $t6, -13312 -/* 056624 80055A24 A61901A4 */ sh $t9, 0x1a4($s0) -/* 056628 80055A28 860201A4 */ lh $v0, 0x1a4($s0) -/* 05662C 80055A2C 00000000 */ nop -.L80055A30: -/* 056630 80055A30 2841CC00 */ slti $at, $v0, -0x3400 -/* 056634 80055A34 10200002 */ beqz $at, .L80055A40 -/* 056638 80055A38 240D3400 */ li $t5, 13312 -/* 05663C 80055A3C A60E01A4 */ sh $t6, 0x1a4($s0) -.L80055A40: -/* 056640 80055A40 86220002 */ lh $v0, 2($s1) -/* 056644 80055A44 240FCC00 */ li $t7, -13312 -/* 056648 80055A48 28413401 */ slti $at, $v0, 0x3401 -/* 05664C 80055A4C 14200005 */ bnez $at, .L80055A64 -/* 056650 80055A50 2841CC00 */ slti $at, $v0, -0x3400 -/* 056654 80055A54 A62D0002 */ sh $t5, 2($s1) -/* 056658 80055A58 86220002 */ lh $v0, 2($s1) -/* 05665C 80055A5C 00000000 */ nop -/* 056660 80055A60 2841CC00 */ slti $at, $v0, -0x3400 -.L80055A64: -/* 056664 80055A64 10200003 */ beqz $at, .L80055A74 -/* 056668 80055A68 8FBF002C */ lw $ra, 0x2c($sp) -/* 05666C 80055A6C A62F0002 */ sh $t7, 2($s1) -.L80055A70: -/* 056670 80055A70 8FBF002C */ lw $ra, 0x2c($sp) -.L80055A74: -/* 056674 80055A74 8FB00024 */ lw $s0, 0x24($sp) -/* 056678 80055A78 8FB10028 */ lw $s1, 0x28($sp) -/* 05667C 80055A7C 03E00008 */ jr $ra -/* 056680 80055A80 27BD01A0 */ addiu $sp, $sp, 0x1a0 - -glabel func_80055A84 -/* 056684 80055A84 27BDFF80 */ addiu $sp, $sp, -0x80 -/* 056688 80055A88 AFBF002C */ sw $ra, 0x2c($sp) -/* 05668C 80055A8C AFB10028 */ sw $s1, 0x28($sp) -/* 056690 80055A90 AFB00024 */ sw $s0, 0x24($sp) -/* 056694 80055A94 AFA60088 */ sw $a2, 0x88($sp) -/* 056698 80055A98 3C018012 */ lui $at, %hi(D_8011D4F0) # $at, 0x8012 -/* 05669C 80055A9C C420D4F0 */ lwc1 $f0, %lo(D_8011D4F0)($at) -/* 0566A0 80055AA0 C4840010 */ lwc1 $f4, 0x10($a0) -/* 0566A4 80055AA4 00A08025 */ move $s0, $a1 -/* 0566A8 80055AA8 4604003C */ c.lt.s $f0, $f4 -/* 0566AC 80055AAC 00808825 */ move $s1, $a0 -/* 0566B0 80055AB0 45000002 */ bc1f .L80055ABC -/* 0566B4 80055AB4 00000000 */ nop -/* 0566B8 80055AB8 E4800010 */ swc1 $f0, 0x10($a0) -.L80055ABC: -/* 0566BC 80055ABC 0C0078A7 */ jal func_8001E29C -/* 0566C0 80055AC0 24040038 */ li $a0, 56 -/* 0566C4 80055AC4 240EFFFF */ li $t6, -1 -/* 0566C8 80055AC8 A3AE003F */ sb $t6, 0x3f($sp) -/* 0566CC 80055ACC 820F01D7 */ lb $t7, 0x1d7($s0) -/* 0566D0 80055AD0 44800000 */ mtc1 $zero, $f0 -/* 0566D4 80055AD4 000FC080 */ sll $t8, $t7, 2 -/* 0566D8 80055AD8 0058C821 */ addu $t9, $v0, $t8 -/* 0566DC 80055ADC C7260000 */ lwc1 $f6, ($t9) -/* 0566E0 80055AE0 3C018012 */ lui $at, %hi(D_8011D548) # $at, 0x8012 -/* 0566E4 80055AE4 E7A60040 */ swc1 $f6, 0x40($sp) -/* 0566E8 80055AE8 C628000C */ lwc1 $f8, 0xc($s1) -/* 0566EC 80055AEC 00001825 */ move $v1, $zero -/* 0566F0 80055AF0 E7A80048 */ swc1 $f8, 0x48($sp) -/* 0566F4 80055AF4 C62A0010 */ lwc1 $f10, 0x10($s1) -/* 0566F8 80055AF8 00000000 */ nop -/* 0566FC 80055AFC E7AA004C */ swc1 $f10, 0x4c($sp) -/* 056700 80055B00 C6240014 */ lwc1 $f4, 0x14($s1) -/* 056704 80055B04 E420D548 */ swc1 $f0, %lo(D_8011D548)($at) -/* 056708 80055B08 3C018012 */ lui $at, %hi(D_8011D54C) # $at, 0x8012 -/* 05670C 80055B0C AFA00074 */ sw $zero, 0x74($sp) -/* 056710 80055B10 E420D54C */ swc1 $f0, %lo(D_8011D54C)($at) -/* 056714 80055B14 E7A40050 */ swc1 $f4, 0x50($sp) -/* 056718 80055B18 86090000 */ lh $t1, ($s0) -/* 05671C 80055B1C 2401FFFF */ li $at, -1 -/* 056720 80055B20 15210006 */ bne $t1, $at, .L80055B3C -/* 056724 80055B24 27AB0048 */ addiu $t3, $sp, 0x48 -/* 056728 80055B28 820A01D7 */ lb $t2, 0x1d7($s0) -/* 05672C 80055B2C 00000000 */ nop -/* 056730 80055B30 29410005 */ slti $at, $t2, 5 -/* 056734 80055B34 1020000C */ beqz $at, .L80055B68 -/* 056738 80055B38 27AB0048 */ addiu $t3, $sp, 0x48 -.L80055B3C: -/* 05673C 80055B3C 27AC0040 */ addiu $t4, $sp, 0x40 -/* 056740 80055B40 27AD003F */ addiu $t5, $sp, 0x3f -/* 056744 80055B44 AFAD0018 */ sw $t5, 0x18($sp) -/* 056748 80055B48 AFAC0014 */ sw $t4, 0x14($sp) -/* 05674C 80055B4C AFAB0010 */ sw $t3, 0x10($sp) -/* 056750 80055B50 02202025 */ move $a0, $s1 -/* 056754 80055B54 24050001 */ li $a1, 1 -/* 056758 80055B58 27A60074 */ addiu $a2, $sp, 0x74 -/* 05675C 80055B5C 0C005C92 */ jal func_80017248 -/* 056760 80055B60 260700D8 */ addiu $a3, $s0, 0xd8 -/* 056764 80055B64 00401825 */ move $v1, $v0 -.L80055B68: -/* 056768 80055B68 306E0080 */ andi $t6, $v1, 0x80 -/* 05676C 80055B6C 11C0000E */ beqz $t6, .L80055BA8 -/* 056770 80055B70 260500D8 */ addiu $a1, $s0, 0xd8 -/* 056774 80055B74 C7A60048 */ lwc1 $f6, 0x48($sp) -/* 056778 80055B78 C628000C */ lwc1 $f8, 0xc($s1) -/* 05677C 80055B7C 3C018012 */ lui $at, %hi(D_8011D548) # $at, 0x8012 -/* 056780 80055B80 46083281 */ sub.s $f10, $f6, $f8 -/* 056784 80055B84 C7A40050 */ lwc1 $f4, 0x50($sp) -/* 056788 80055B88 E42AD548 */ swc1 $f10, %lo(D_8011D548)($at) -/* 05678C 80055B8C C6260014 */ lwc1 $f6, 0x14($s1) -/* 056790 80055B90 3C018012 */ lui $at, %hi(D_8011D54C) # $at, 0x8012 -/* 056794 80055B94 46062201 */ sub.s $f8, $f4, $f6 -/* 056798 80055B98 E428D54C */ swc1 $f8, %lo(D_8011D54C)($at) -/* 05679C 80055B9C 2401FF7F */ li $at, -129 -/* 0567A0 80055BA0 00617824 */ and $t7, $v1, $at -/* 0567A4 80055BA4 01E01825 */ move $v1, $t7 -.L80055BA8: -/* 0567A8 80055BA8 1060000E */ beqz $v1, .L80055BE4 -/* 0567AC 80055BAC 00004025 */ move $t0, $zero -/* 0567B0 80055BB0 C7AA004C */ lwc1 $f10, 0x4c($sp) -/* 0567B4 80055BB4 C6260010 */ lwc1 $f6, 0x10($s1) -/* 0567B8 80055BB8 3C014010 */ li $at, 0x40100000 # 2.250000 -/* 0567BC 80055BBC 46005121 */ cvt.d.s $f4, $f10 -/* 0567C0 80055BC0 44805000 */ mtc1 $zero, $f10 -/* 0567C4 80055BC4 44815800 */ mtc1 $at, $f11 -/* 0567C8 80055BC8 46003221 */ cvt.d.s $f8, $f6 -/* 0567CC 80055BCC 462A4181 */ sub.d $f6, $f8, $f10 -/* 0567D0 80055BD0 4626203C */ c.lt.d $f4, $f6 -/* 0567D4 80055BD4 00000000 */ nop -/* 0567D8 80055BD8 45000002 */ bc1f .L80055BE4 -/* 0567DC 80055BDC 00000000 */ nop -/* 0567E0 80055BE0 24080001 */ li $t0, 1 -.L80055BE4: -/* 0567E4 80055BE4 820701D6 */ lb $a3, 0x1d6($s0) -/* 0567E8 80055BE8 A3A8003E */ sb $t0, 0x3e($sp) -/* 0567EC 80055BEC AFA50038 */ sw $a1, 0x38($sp) -/* 0567F0 80055BF0 AFA30070 */ sw $v1, 0x70($sp) -/* 0567F4 80055BF4 24040001 */ li $a0, 1 -/* 0567F8 80055BF8 0C00C44C */ jal func_80031130 -/* 0567FC 80055BFC 27A60048 */ addiu $a2, $sp, 0x48 -/* 056800 80055C00 8FA40038 */ lw $a0, 0x38($sp) -/* 056804 80055C04 24180001 */ li $t8, 1 -/* 056808 80055C08 27B90074 */ addiu $t9, $sp, 0x74 -/* 05680C 80055C0C AFA00074 */ sw $zero, 0x74($sp) -/* 056810 80055C10 AFB90014 */ sw $t9, 0x14($sp) -/* 056814 80055C14 AFB80010 */ sw $t8, 0x10($sp) -/* 056818 80055C18 27A50048 */ addiu $a1, $sp, 0x48 -/* 05681C 80055C1C 27A60040 */ addiu $a2, $sp, 0x40 -/* 056820 80055C20 0C00C580 */ jal func_80031600 -/* 056824 80055C24 27A7003F */ addiu $a3, $sp, 0x3f -/* 056828 80055C28 8FA30070 */ lw $v1, 0x70($sp) -/* 05682C 80055C2C 83A8003E */ lb $t0, 0x3e($sp) -/* 056830 80055C30 A20201E3 */ sb $v0, 0x1e3($s0) -/* 056834 80055C34 820901E3 */ lb $t1, 0x1e3($s0) -/* 056838 80055C38 A20301E4 */ sb $v1, 0x1e4($s0) -/* 05683C 80055C3C 01235025 */ or $t2, $t1, $v1 -/* 056840 80055C40 A20A01E3 */ sb $t2, 0x1e3($s0) -/* 056844 80055C44 820B01E3 */ lb $t3, 0x1e3($s0) -/* 056848 80055C48 A20001E2 */ sb $zero, 0x1e2($s0) -/* 05684C 80055C4C 11600005 */ beqz $t3, .L80055C64 -/* 056850 80055C50 02001825 */ move $v1, $s0 -/* 056854 80055C54 240C000F */ li $t4, 15 -/* 056858 80055C58 240D0004 */ li $t5, 4 -/* 05685C 80055C5C A20C01E3 */ sb $t4, 0x1e3($s0) -/* 056860 80055C60 A20D01E2 */ sb $t5, 0x1e2($s0) -.L80055C64: -/* 056864 80055C64 1100000C */ beqz $t0, .L80055C98 -/* 056868 80055C68 27A20048 */ addiu $v0, $sp, 0x48 -/* 05686C 80055C6C 8FAE0074 */ lw $t6, 0x74($sp) -/* 056870 80055C70 00000000 */ nop -/* 056874 80055C74 11C00009 */ beqz $t6, .L80055C9C -/* 056878 80055C78 27A40054 */ addiu $a0, $sp, 0x54 -/* 05687C 80055C7C 820F01ED */ lb $t7, 0x1ed($s0) -/* 056880 80055C80 24180004 */ li $t8, 4 -/* 056884 80055C84 15E00003 */ bnez $t7, .L80055C94 -/* 056888 80055C88 2419003C */ li $t9, 60 -/* 05688C 80055C8C 10000002 */ b .L80055C98 -/* 056890 80055C90 A2180187 */ sb $t8, 0x187($s0) -.L80055C94: -/* 056894 80055C94 A21901ED */ sb $t9, 0x1ed($s0) -.L80055C98: -/* 056898 80055C98 27A40054 */ addiu $a0, $sp, 0x54 -.L80055C9C: -/* 05689C 80055C9C C4480000 */ lwc1 $f8, ($v0) -/* 0568A0 80055CA0 24420004 */ addiu $v0, $v0, 4 -/* 0568A4 80055CA4 0044082B */ sltu $at, $v0, $a0 -/* 0568A8 80055CA8 24630004 */ addiu $v1, $v1, 4 -/* 0568AC 80055CAC 1420FFFB */ bnez $at, .L80055C9C -/* 0568B0 80055CB0 E46800D4 */ swc1 $f8, 0xd4($v1) -/* 0568B4 80055CB4 83A9003F */ lb $t1, 0x3f($sp) -/* 0568B8 80055CB8 C60A00D8 */ lwc1 $f10, 0xd8($s0) -/* 0568BC 80055CBC A20901DC */ sb $t1, 0x1dc($s0) -/* 0568C0 80055CC0 83AA003F */ lb $t2, 0x3f($sp) -/* 0568C4 80055CC4 27A40068 */ addiu $a0, $sp, 0x68 -/* 0568C8 80055CC8 A20A01DD */ sb $t2, 0x1dd($s0) -/* 0568CC 80055CCC 83AB003F */ lb $t3, 0x3f($sp) -/* 0568D0 80055CD0 27A50064 */ addiu $a1, $sp, 0x64 -/* 0568D4 80055CD4 A20B01DE */ sb $t3, 0x1de($s0) -/* 0568D8 80055CD8 83AC003F */ lb $t4, 0x3f($sp) -/* 0568DC 80055CDC 00000000 */ nop -/* 0568E0 80055CE0 A20C01DF */ sb $t4, 0x1df($s0) -/* 0568E4 80055CE4 E62A000C */ swc1 $f10, 0xc($s1) -/* 0568E8 80055CE8 C60400DC */ lwc1 $f4, 0xdc($s0) -/* 0568EC 80055CEC 00000000 */ nop -/* 0568F0 80055CF0 E6240010 */ swc1 $f4, 0x10($s1) -/* 0568F4 80055CF4 C60600E0 */ lwc1 $f6, 0xe0($s0) -/* 0568F8 80055CF8 00000000 */ nop -/* 0568FC 80055CFC E6260014 */ swc1 $f6, 0x14($s1) -/* 056900 80055D00 820D01E2 */ lb $t5, 0x1e2($s0) -/* 056904 80055D04 00000000 */ nop -/* 056908 80055D08 11A00046 */ beqz $t5, .L80055E24 -/* 05690C 80055D0C 00000000 */ nop -/* 056910 80055D10 0C00AB35 */ jal func_8002ACD4 -/* 056914 80055D14 27A60060 */ addiu $a2, $sp, 0x60 -/* 056918 80055D18 86240000 */ lh $a0, ($s1) -/* 05691C 80055D1C 00000000 */ nop -/* 056920 80055D20 00042023 */ negu $a0, $a0 -/* 056924 80055D24 00047400 */ sll $t6, $a0, 0x10 -/* 056928 80055D28 0C01C1F1 */ jal func_800707C4 -/* 05692C 80055D2C 000E2403 */ sra $a0, $t6, 0x10 -/* 056930 80055D30 86240000 */ lh $a0, ($s1) -/* 056934 80055D34 E7A00058 */ swc1 $f0, 0x58($sp) -/* 056938 80055D38 00042023 */ negu $a0, $a0 -/* 05693C 80055D3C 0004C400 */ sll $t8, $a0, 0x10 -/* 056940 80055D40 0C01C1FE */ jal func_800707F8 -/* 056944 80055D44 00182403 */ sra $a0, $t8, 0x10 -/* 056948 80055D48 C7B00068 */ lwc1 $f16, 0x68($sp) -/* 05694C 80055D4C C7A20058 */ lwc1 $f2, 0x58($sp) -/* 056950 80055D50 46008202 */ mul.s $f8, $f16, $f0 -/* 056954 80055D54 C7B20060 */ lwc1 $f18, 0x60($sp) -/* 056958 80055D58 C7AE0064 */ lwc1 $f14, 0x64($sp) -/* 05695C 80055D5C 46029282 */ mul.s $f10, $f18, $f2 -/* 056960 80055D60 00000000 */ nop -/* 056964 80055D64 46028102 */ mul.s $f4, $f16, $f2 -/* 056968 80055D68 460A4300 */ add.s $f12, $f8, $f10 -/* 05696C 80055D6C 46009182 */ mul.s $f6, $f18, $f0 -/* 056970 80055D70 46062481 */ sub.s $f18, $f4, $f6 -/* 056974 80055D74 0C01C1D4 */ jal func_80070750 -/* 056978 80055D78 E7B20060 */ swc1 $f18, 0x60($sp) -/* 05697C 80055D7C 00021C00 */ sll $v1, $v0, 0x10 -/* 056980 80055D80 00034C03 */ sra $t1, $v1, 0x10 -/* 056984 80055D84 00091823 */ negu $v1, $t1 -/* 056988 80055D88 28612000 */ slti $at, $v1, 0x2000 -/* 05698C 80055D8C 10200004 */ beqz $at, .L80055DA0 -/* 056990 80055D90 2861E001 */ slti $at, $v1, -0x1fff -/* 056994 80055D94 14200002 */ bnez $at, .L80055DA0 -/* 056998 80055D98 00000000 */ nop -/* 05699C 80055D9C A60301A4 */ sh $v1, 0x1a4($s0) -.L80055DA0: -/* 0569A0 80055DA0 C7AC0060 */ lwc1 $f12, 0x60($sp) -/* 0569A4 80055DA4 C7AE0064 */ lwc1 $f14, 0x64($sp) -/* 0569A8 80055DA8 0C01C1D4 */ jal func_80070750 -/* 0569AC 80055DAC 00000000 */ nop -/* 0569B0 80055DB0 00021C00 */ sll $v1, $v0, 0x10 -/* 0569B4 80055DB4 00035403 */ sra $t2, $v1, 0x10 -/* 0569B8 80055DB8 000A1823 */ negu $v1, $t2 -/* 0569BC 80055DBC 28612000 */ slti $at, $v1, 0x2000 -/* 0569C0 80055DC0 10200004 */ beqz $at, .L80055DD4 -/* 0569C4 80055DC4 2861E001 */ slti $at, $v1, -0x1fff -/* 0569C8 80055DC8 14200002 */ bnez $at, .L80055DD4 -/* 0569CC 80055DCC 00000000 */ nop -/* 0569D0 80055DD0 A6230002 */ sh $v1, 2($s1) -.L80055DD4: -/* 0569D4 80055DD4 820B01D6 */ lb $t3, 0x1d6($s0) -/* 0569D8 80055DD8 24010004 */ li $at, 4 -/* 0569DC 80055DDC 15610011 */ bne $t3, $at, .L80055E24 -/* 0569E0 80055DE0 00000000 */ nop -/* 0569E4 80055DE4 86240002 */ lh $a0, 2($s1) -/* 0569E8 80055DE8 34018001 */ li $at, 32769 -/* 0569EC 80055DEC 308CFFFF */ andi $t4, $a0, 0xffff -/* 0569F0 80055DF0 006C1023 */ subu $v0, $v1, $t4 -/* 0569F4 80055DF4 0041082A */ slt $at, $v0, $at -/* 0569F8 80055DF8 14200003 */ bnez $at, .L80055E08 -/* 0569FC 80055DFC 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 056A00 80055E00 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 056A04 80055E04 00411021 */ addu $v0, $v0, $at -.L80055E08: -/* 056A08 80055E08 28418000 */ slti $at, $v0, -0x8000 -/* 056A0C 80055E0C 10200002 */ beqz $at, .L80055E18 -/* 056A10 80055E10 3401FFFF */ li $at, 65535 -/* 056A14 80055E14 00411021 */ addu $v0, $v0, $at -.L80055E18: -/* 056A18 80055E18 00026883 */ sra $t5, $v0, 2 -/* 056A1C 80055E1C 008D7021 */ addu $t6, $a0, $t5 -/* 056A20 80055E20 A62E0002 */ sh $t6, 2($s1) -.L80055E24: -/* 056A24 80055E24 820201D6 */ lb $v0, 0x1d6($s0) -/* 056A28 80055E28 24010004 */ li $at, 4 -/* 056A2C 80055E2C 1041001F */ beq $v0, $at, .L80055EAC -/* 056A30 80055E30 24010002 */ li $at, 2 -/* 056A34 80055E34 1041001D */ beq $v0, $at, .L80055EAC -/* 056A38 80055E38 2401000A */ li $at, 10 -/* 056A3C 80055E3C 1041001B */ beq $v0, $at, .L80055EAC -/* 056A40 80055E40 24010007 */ li $at, 7 -/* 056A44 80055E44 1041001A */ beq $v0, $at, .L80055EB0 -/* 056A48 80055E48 8FBF002C */ lw $ra, 0x2c($sp) -/* 056A4C 80055E4C 860201A4 */ lh $v0, 0x1a4($s0) -/* 056A50 80055E50 240F3400 */ li $t7, 13312 -/* 056A54 80055E54 28413401 */ slti $at, $v0, 0x3401 -/* 056A58 80055E58 14200004 */ bnez $at, .L80055E6C -/* 056A5C 80055E5C 2418CC00 */ li $t8, -13312 -/* 056A60 80055E60 A60F01A4 */ sh $t7, 0x1a4($s0) -/* 056A64 80055E64 860201A4 */ lh $v0, 0x1a4($s0) -/* 056A68 80055E68 00000000 */ nop -.L80055E6C: -/* 056A6C 80055E6C 2841CC00 */ slti $at, $v0, -0x3400 -/* 056A70 80055E70 10200002 */ beqz $at, .L80055E7C -/* 056A74 80055E74 24193400 */ li $t9, 13312 -/* 056A78 80055E78 A61801A4 */ sh $t8, 0x1a4($s0) -.L80055E7C: -/* 056A7C 80055E7C 86240002 */ lh $a0, 2($s1) -/* 056A80 80055E80 2409CC00 */ li $t1, -13312 -/* 056A84 80055E84 28813401 */ slti $at, $a0, 0x3401 -/* 056A88 80055E88 14200005 */ bnez $at, .L80055EA0 -/* 056A8C 80055E8C 2881CC00 */ slti $at, $a0, -0x3400 -/* 056A90 80055E90 A6390002 */ sh $t9, 2($s1) -/* 056A94 80055E94 86240002 */ lh $a0, 2($s1) -/* 056A98 80055E98 00000000 */ nop -/* 056A9C 80055E9C 2881CC00 */ slti $at, $a0, -0x3400 -.L80055EA0: -/* 056AA0 80055EA0 10200003 */ beqz $at, .L80055EB0 -/* 056AA4 80055EA4 8FBF002C */ lw $ra, 0x2c($sp) -/* 056AA8 80055EA8 A6290002 */ sh $t1, 2($s1) -.L80055EAC: -/* 056AAC 80055EAC 8FBF002C */ lw $ra, 0x2c($sp) -.L80055EB0: -/* 056AB0 80055EB0 8FB00024 */ lw $s0, 0x24($sp) -/* 056AB4 80055EB4 8FB10028 */ lw $s1, 0x28($sp) -/* 056AB8 80055EB8 03E00008 */ jr $ra -/* 056ABC 80055EBC 27BD0080 */ addiu $sp, $sp, 0x80 - -glabel func_80055EC0 -/* 056AC0 80055EC0 27BDFF78 */ addiu $sp, $sp, -0x88 -/* 056AC4 80055EC4 AFBF0024 */ sw $ra, 0x24($sp) -/* 056AC8 80055EC8 AFB00020 */ sw $s0, 0x20($sp) -/* 056ACC 80055ECC AFA60090 */ sw $a2, 0x90($sp) -/* 056AD0 80055ED0 A7A0003A */ sh $zero, 0x3a($sp) -/* 056AD4 80055ED4 8CA20144 */ lw $v0, 0x144($a1) -/* 056AD8 80055ED8 00A08025 */ move $s0, $a1 -/* 056ADC 80055EDC 10400073 */ beqz $v0, .L800560AC -/* 056AE0 80055EE0 00803825 */ move $a3, $a0 -/* 056AE4 80055EE4 3C058012 */ lui $a1, %hi(D_8011D52C) # $a1, 0x8012 -/* 056AE8 80055EE8 24A5D52C */ addiu $a1, %lo(D_8011D52C) # addiu $a1, $a1, -0x2ad4 -/* 056AEC 80055EEC 8CAE0000 */ lw $t6, ($a1) -/* 056AF0 80055EF0 00401825 */ move $v1, $v0 -/* 056AF4 80055EF4 31CF2000 */ andi $t7, $t6, 0x2000 -/* 056AF8 80055EF8 15E00009 */ bnez $t7, .L80055F20 -/* 056AFC 80055EFC 00000000 */ nop -/* 056B00 80055F00 821801D8 */ lb $t8, 0x1d8($s0) -/* 056B04 80055F04 00000000 */ nop -/* 056B08 80055F08 17000005 */ bnez $t8, .L80055F20 -/* 056B0C 80055F0C 00000000 */ nop -/* 056B10 80055F10 82190187 */ lb $t9, 0x187($s0) -/* 056B14 80055F14 00000000 */ nop -/* 056B18 80055F18 13200282 */ beqz $t9, .L80056924 -/* 056B1C 80055F1C 8FBF0024 */ lw $ra, 0x24($sp) -.L80055F20: -/* 056B20 80055F20 80EC003A */ lb $t4, 0x3a($a3) -/* 056B24 80055F24 8CEB0068 */ lw $t3, 0x68($a3) -/* 056B28 80055F28 000C6880 */ sll $t5, $t4, 2 -/* 056B2C 80055F2C 016D7021 */ addu $t6, $t3, $t5 -/* 056B30 80055F30 44806000 */ mtc1 $zero, $f12 -/* 056B34 80055F34 8DC20000 */ lw $v0, ($t6) -/* 056B38 80055F38 46006086 */ mov.s $f2, $f12 -/* 056B3C 80055F3C 10400022 */ beqz $v0, .L80055FC8 -/* 056B40 80055F40 00000000 */ nop -/* 056B44 80055F44 8CEF0040 */ lw $t7, 0x40($a3) -/* 056B48 80055F48 8C450000 */ lw $a1, ($v0) -/* 056B4C 80055F4C 81E40058 */ lb $a0, 0x58($t7) -/* 056B50 80055F50 00000000 */ nop -/* 056B54 80055F54 0480001C */ bltz $a0, .L80055FC8 -/* 056B58 80055F58 00000000 */ nop -/* 056B5C 80055F5C 84B80018 */ lh $t8, 0x18($a1) -/* 056B60 80055F60 00000000 */ nop -/* 056B64 80055F64 0098082A */ slt $at, $a0, $t8 -/* 056B68 80055F68 10200017 */ beqz $at, .L80055FC8 -/* 056B6C 80055F6C 00000000 */ nop -/* 056B70 80055F70 8CE60044 */ lw $a2, 0x44($a3) -/* 056B74 80055F74 00000000 */ nop -/* 056B78 80055F78 10C00013 */ beqz $a2, .L80055FC8 -/* 056B7C 80055F7C 00000000 */ nop -/* 056B80 80055F80 8CB90014 */ lw $t9, 0x14($a1) -/* 056B84 80055F84 00046040 */ sll $t4, $a0, 1 -/* 056B88 80055F88 032C5821 */ addu $t3, $t9, $t4 -/* 056B8C 80055F8C 856D0000 */ lh $t5, ($t3) -/* 056B90 80055F90 C4E00008 */ lwc1 $f0, 8($a3) -/* 056B94 80055F94 000D7080 */ sll $t6, $t5, 2 -/* 056B98 80055F98 01CD7021 */ addu $t6, $t6, $t5 -/* 056B9C 80055F9C 000E7040 */ sll $t6, $t6, 1 -/* 056BA0 80055FA0 00CE1021 */ addu $v0, $a2, $t6 -/* 056BA4 80055FA4 844F0002 */ lh $t7, 2($v0) -/* 056BA8 80055FA8 84580004 */ lh $t8, 4($v0) -/* 056BAC 80055FAC 448F2000 */ mtc1 $t7, $f4 -/* 056BB0 80055FB0 44983000 */ mtc1 $t8, $f6 -/* 056BB4 80055FB4 468020A0 */ cvt.s.w $f2, $f4 -/* 056BB8 80055FB8 46001082 */ mul.s $f2, $f2, $f0 -/* 056BBC 80055FBC 46803320 */ cvt.s.w $f12, $f6 -/* 056BC0 80055FC0 46006302 */ mul.s $f12, $f12, $f0 -/* 056BC4 80055FC4 00000000 */ nop -.L80055FC8: -/* 056BC8 80055FC8 C60A0038 */ lwc1 $f10, 0x38($s0) -/* 056BCC 80055FCC C6040044 */ lwc1 $f4, 0x44($s0) -/* 056BD0 80055FD0 460C5402 */ mul.s $f16, $f10, $f12 -/* 056BD4 80055FD4 C4E8000C */ lwc1 $f8, 0xc($a3) -/* 056BD8 80055FD8 3C01800E */ lui $at, %hi(D_800E6848) # $at, 0x800e -/* 056BDC 80055FDC 8C620064 */ lw $v0, 0x64($v1) -/* 056BE0 80055FE0 46022182 */ mul.s $f6, $f4, $f2 -/* 056BE4 80055FE4 46104480 */ add.s $f18, $f8, $f16 -/* 056BE8 80055FE8 240C0002 */ li $t4, 2 -/* 056BEC 80055FEC 240B0001 */ li $t3, 1 -/* 056BF0 80055FF0 46069280 */ add.s $f10, $f18, $f6 -/* 056BF4 80055FF4 E46A000C */ swc1 $f10, 0xc($v1) -/* 056BF8 80055FF8 C610003C */ lwc1 $f16, 0x3c($s0) -/* 056BFC 80055FFC C6060048 */ lwc1 $f6, 0x48($s0) -/* 056C00 80056000 460C8102 */ mul.s $f4, $f16, $f12 -/* 056C04 80056004 C4E80010 */ lwc1 $f8, 0x10($a3) -/* 056C08 80056008 46023282 */ mul.s $f10, $f6, $f2 -/* 056C0C 8005600C 46044480 */ add.s $f18, $f8, $f4 -/* 056C10 80056010 460A9400 */ add.s $f16, $f18, $f10 -/* 056C14 80056014 E4700010 */ swc1 $f16, 0x10($v1) -/* 056C18 80056018 C6040040 */ lwc1 $f4, 0x40($s0) -/* 056C1C 8005601C C60A004C */ lwc1 $f10, 0x4c($s0) -/* 056C20 80056020 460C2182 */ mul.s $f6, $f4, $f12 -/* 056C24 80056024 C4E80014 */ lwc1 $f8, 0x14($a3) -/* 056C28 80056028 46025402 */ mul.s $f16, $f10, $f2 -/* 056C2C 8005602C 46064480 */ add.s $f18, $f8, $f6 -/* 056C30 80056030 46109100 */ add.s $f4, $f18, $f16 -/* 056C34 80056034 E4640014 */ swc1 $f4, 0x14($v1) -/* 056C38 80056038 84F9002E */ lh $t9, 0x2e($a3) -/* 056C3C 8005603C 00000000 */ nop -/* 056C40 80056040 A479002E */ sh $t9, 0x2e($v1) -/* 056C44 80056044 C4E8001C */ lwc1 $f8, 0x1c($a3) -/* 056C48 80056048 C420684C */ lwc1 $f0, %lo(D_800E684C)($at) -/* 056C4C 8005604C C4216848 */ lwc1 $f1, %lo(D_800E6848)($at) -/* 056C50 80056050 460041A1 */ cvt.d.s $f6, $f8 -/* 056C54 80056054 46203282 */ mul.d $f10, $f6, $f0 -/* 056C58 80056058 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 056C5C 8005605C 44814800 */ mtc1 $at, $f9 -/* 056C60 80056060 44804000 */ mtc1 $zero, $f8 -/* 056C64 80056064 462054A0 */ cvt.s.d $f18, $f10 -/* 056C68 80056068 E472001C */ swc1 $f18, 0x1c($v1) -/* 056C6C 8005606C C4F00020 */ lwc1 $f16, 0x20($a3) -/* 056C70 80056070 00000000 */ nop -/* 056C74 80056074 46008121 */ cvt.d.s $f4, $f16 -/* 056C78 80056078 46282181 */ sub.d $f6, $f4, $f8 -/* 056C7C 8005607C 462032A0 */ cvt.s.d $f10, $f6 -/* 056C80 80056080 E46A0020 */ swc1 $f10, 0x20($v1) -/* 056C84 80056084 C4F20024 */ lwc1 $f18, 0x24($a3) -/* 056C88 80056088 00000000 */ nop -/* 056C8C 8005608C 46009421 */ cvt.d.s $f16, $f18 -/* 056C90 80056090 46208102 */ mul.d $f4, $f16, $f0 -/* 056C94 80056094 46202220 */ cvt.s.d $f8, $f4 -/* 056C98 80056098 E4680024 */ swc1 $f8, 0x24($v1) -/* 056C9C 8005609C A04C000B */ sb $t4, 0xb($v0) -/* 056CA0 800560A0 AE000144 */ sw $zero, 0x144($s0) -/* 056CA4 800560A4 1000021E */ b .L80056920 -/* 056CA8 800560A8 A20B0211 */ sb $t3, 0x211($s0) -.L800560AC: -/* 056CAC 800560AC 3C058012 */ lui $a1, %hi(D_8011D52C) # $a1, 0x8012 -/* 056CB0 800560B0 24A5D52C */ addiu $a1, %lo(D_8011D52C) # addiu $a1, $a1, -0x2ad4 -/* 056CB4 800560B4 8CAD0000 */ lw $t5, ($a1) -/* 056CB8 800560B8 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 -/* 056CBC 800560BC 31AE2000 */ andi $t6, $t5, 0x2000 -/* 056CC0 800560C0 11C00002 */ beqz $t6, .L800560CC -/* 056CC4 800560C4 2404000C */ li $a0, 12 -/* 056CC8 800560C8 A2000211 */ sb $zero, 0x211($s0) -.L800560CC: -/* 056CCC 800560CC 820F0211 */ lb $t7, 0x211($s0) -/* 056CD0 800560D0 00000000 */ nop -/* 056CD4 800560D4 11E00006 */ beqz $t7, .L800560F0 -/* 056CD8 800560D8 00000000 */ nop -/* 056CDC 800560DC AC20D530 */ sw $zero, %lo(D_8011D530)($at) -/* 056CE0 800560E0 8CB80000 */ lw $t8, ($a1) -/* 056CE4 800560E4 2401DFFF */ li $at, -8193 -/* 056CE8 800560E8 0301C824 */ and $t9, $t8, $at -/* 056CEC 800560EC ACB90000 */ sw $t9, ($a1) -.L800560F0: -/* 056CF0 800560F0 820C0175 */ lb $t4, 0x175($s0) -/* 056CF4 800560F4 00000000 */ nop -/* 056CF8 800560F8 15800002 */ bnez $t4, .L80056104 -/* 056CFC 800560FC 00000000 */ nop -/* 056D00 80056100 AE000140 */ sw $zero, 0x140($s0) -.L80056104: -/* 056D04 80056104 820B0172 */ lb $t3, 0x172($s0) -/* 056D08 80056108 2401FFFF */ li $at, -1 -/* 056D0C 8005610C 15610002 */ bne $t3, $at, .L80056118 -/* 056D10 80056110 00000000 */ nop -/* 056D14 80056114 A2000173 */ sb $zero, 0x173($s0) -.L80056118: -/* 056D18 80056118 820D0173 */ lb $t5, 0x173($s0) -/* 056D1C 8005611C 00000000 */ nop -/* 056D20 80056120 1DA0000A */ bgtz $t5, .L8005614C -/* 056D24 80056124 00000000 */ nop -/* 056D28 80056128 8CAE0000 */ lw $t6, ($a1) -/* 056D2C 8005612C 00E02025 */ move $a0, $a3 -/* 056D30 80056130 31CF2000 */ andi $t7, $t6, 0x2000 -/* 056D34 80056134 11E001FB */ beqz $t7, .L80056924 -/* 056D38 80056138 8FBF0024 */ lw $ra, 0x24($sp) -/* 056D3C 8005613C 0C015A4C */ jal func_80056930 -/* 056D40 80056140 02002825 */ move $a1, $s0 -/* 056D44 80056144 100001F7 */ b .L80056924 -/* 056D48 80056148 8FBF0024 */ lw $ra, 0x24($sp) -.L8005614C: -/* 056D4C 8005614C 0C0078A7 */ jal func_8001E29C -/* 056D50 80056150 AFA70088 */ sw $a3, 0x88($sp) -/* 056D54 80056154 82180172 */ lb $t8, 0x172($s0) -/* 056D58 80056158 820C0174 */ lb $t4, 0x174($s0) -/* 056D5C 8005615C 0018C880 */ sll $t9, $t8, 2 -/* 056D60 80056160 0338C821 */ addu $t9, $t9, $t8 -/* 056D64 80056164 0019C840 */ sll $t9, $t9, 1 -/* 056D68 80056168 000C5840 */ sll $t3, $t4, 1 -/* 056D6C 8005616C 032B6821 */ addu $t5, $t9, $t3 -/* 056D70 80056170 01A27021 */ addu $t6, $t5, $v0 -/* 056D74 80056174 81C80000 */ lb $t0, ($t6) -/* 056D78 80056178 3C058012 */ lui $a1, %hi(D_8011D52C) # $a1, 0x8012 -/* 056D7C 8005617C 2401FFFF */ li $at, -1 -/* 056D80 80056180 15010003 */ bne $t0, $at, .L80056190 -/* 056D84 80056184 24A5D52C */ addiu $a1, %lo(D_8011D52C) # addiu $a1, $a1, -0x2ad4 -/* 056D88 80056188 100001E5 */ b .L80056920 -/* 056D8C 8005618C A2000173 */ sb $zero, 0x173($s0) -.L80056190: -/* 056D90 80056190 8CAF0000 */ lw $t7, ($a1) -/* 056D94 80056194 00003825 */ move $a3, $zero -/* 056D98 80056198 31F82000 */ andi $t8, $t7, 0x2000 -/* 056D9C 8005619C 13000008 */ beqz $t8, .L800561C0 -/* 056DA0 800561A0 2404013E */ li $a0, 318 -/* 056DA4 800561A4 86050000 */ lh $a1, ($s0) -/* 056DA8 800561A8 AFA8007C */ sw $t0, 0x7c($sp) -/* 056DAC 800561AC 0C029D3B */ jal func_800A74EC -/* 056DB0 800561B0 AFA00068 */ sw $zero, 0x68($sp) -/* 056DB4 800561B4 8FA70068 */ lw $a3, 0x68($sp) -/* 056DB8 800561B8 8FA8007C */ lw $t0, 0x7c($sp) -/* 056DBC 800561BC 00000000 */ nop -.L800561C0: -/* 056DC0 800561C0 820C0195 */ lb $t4, 0x195($s0) -/* 056DC4 800561C4 3C0B8012 */ lui $t3, %hi(D_8011D528) # $t3, 0x8012 -/* 056DC8 800561C8 11800006 */ beqz $t4, .L800561E4 -/* 056DCC 800561CC 00000000 */ nop -/* 056DD0 800561D0 82190175 */ lb $t9, 0x175($s0) -/* 056DD4 800561D4 00000000 */ nop -/* 056DD8 800561D8 172001D2 */ bnez $t9, .L80056924 -/* 056DDC 800561DC 8FBF0024 */ lw $ra, 0x24($sp) -/* 056DE0 800561E0 A2000195 */ sb $zero, 0x195($s0) -.L800561E4: -/* 056DE4 800561E4 8D6BD528 */ lw $t3, %lo(D_8011D528)($t3) -/* 056DE8 800561E8 3C038012 */ lui $v1, %hi(D_8011D530) # $v1, 0x8012 -/* 056DEC 800561EC 316D2000 */ andi $t5, $t3, 0x2000 -/* 056DF0 800561F0 15A00006 */ bnez $t5, .L8005620C -/* 056DF4 800561F4 00000000 */ nop -/* 056DF8 800561F8 8C63D530 */ lw $v1, %lo(D_8011D530)($v1) -/* 056DFC 800561FC 00000000 */ nop -/* 056E00 80056200 306E2000 */ andi $t6, $v1, 0x2000 -/* 056E04 80056204 11C00045 */ beqz $t6, .L8005631C -/* 056E08 80056208 01C01825 */ move $v1, $t6 -.L8005620C: -/* 056E0C 8005620C 1100000E */ beqz $t0, .L80056248 -/* 056E10 80056210 02002825 */ move $a1, $s0 -/* 056E14 80056214 24010005 */ li $at, 5 -/* 056E18 80056218 1101001A */ beq $t0, $at, .L80056284 -/* 056E1C 8005621C 02002825 */ move $a1, $s0 -/* 056E20 80056220 24010006 */ li $at, 6 -/* 056E24 80056224 11010017 */ beq $t0, $at, .L80056284 -/* 056E28 80056228 24010007 */ li $at, 7 -/* 056E2C 8005622C 11010015 */ beq $t0, $at, .L80056284 -/* 056E30 80056230 3C038012 */ lui $v1, %hi(D_8011D530) # $v1, 0x8012 -/* 056E34 80056234 8C63D530 */ lw $v1, %lo(D_8011D530)($v1) -/* 056E38 80056238 00000000 */ nop -/* 056E3C 8005623C 306F2000 */ andi $t7, $v1, 0x2000 -/* 056E40 80056240 10000036 */ b .L8005631C -/* 056E44 80056244 01E01825 */ move $v1, $t7 -.L80056248: -/* 056E48 80056248 8FA40088 */ lw $a0, 0x88($sp) -/* 056E4C 8005624C 27A60064 */ addiu $a2, $sp, 0x64 -/* 056E50 80056250 AFA70068 */ sw $a3, 0x68($sp) -/* 056E54 80056254 0C015A63 */ jal func_8005698C -/* 056E58 80056258 AFA8007C */ sw $t0, 0x7c($sp) -/* 056E5C 8005625C 8FA70068 */ lw $a3, 0x68($sp) -/* 056E60 80056260 8FA8007C */ lw $t0, 0x7c($sp) -/* 056E64 80056264 A2000175 */ sb $zero, 0x175($s0) -/* 056E68 80056268 AE020140 */ sw $v0, 0x140($s0) -/* 056E6C 8005626C 3C038012 */ lui $v1, %hi(D_8011D530) # $v1, 0x8012 -/* 056E70 80056270 8C63D530 */ lw $v1, %lo(D_8011D530)($v1) -/* 056E74 80056274 AFA2006C */ sw $v0, 0x6c($sp) -/* 056E78 80056278 30782000 */ andi $t8, $v1, 0x2000 -/* 056E7C 8005627C 10000027 */ b .L8005631C -/* 056E80 80056280 03001825 */ move $v1, $t8 -.L80056284: -/* 056E84 80056284 8FA40088 */ lw $a0, 0x88($sp) -/* 056E88 80056288 27A60064 */ addiu $a2, $sp, 0x64 -/* 056E8C 8005628C AFA70068 */ sw $a3, 0x68($sp) -/* 056E90 80056290 0C015A63 */ jal func_8005698C -/* 056E94 80056294 AFA8007C */ sw $t0, 0x7c($sp) -/* 056E98 80056298 8FA8007C */ lw $t0, 0x7c($sp) -/* 056E9C 8005629C 8FA70068 */ lw $a3, 0x68($sp) -/* 056EA0 800562A0 24010005 */ li $at, 5 -/* 056EA4 800562A4 00405025 */ move $t2, $v0 -/* 056EA8 800562A8 15010005 */ bne $t0, $at, .L800562C0 -/* 056EAC 800562AC A2000175 */ sb $zero, 0x175($s0) -/* 056EB0 800562B0 3C01447A */ li $at, 0x447A0000 # 1000.000000 -/* 056EB4 800562B4 44810000 */ mtc1 $at, $f0 -/* 056EB8 800562B8 10000005 */ b .L800562D0 -/* 056EBC 800562BC C7A60064 */ lwc1 $f6, 0x64($sp) -.L800562C0: -/* 056EC0 800562C0 3C01800E */ lui $at, %hi(D_800E6850) # $at, 0x800e -/* 056EC4 800562C4 C4206850 */ lwc1 $f0, %lo(D_800E6850)($at) -/* 056EC8 800562C8 00000000 */ nop -/* 056ECC 800562CC C7A60064 */ lwc1 $f6, 0x64($sp) -.L800562D0: -/* 056ED0 800562D0 24010006 */ li $at, 6 -/* 056ED4 800562D4 4600303C */ c.lt.s $f6, $f0 -/* 056ED8 800562D8 3C038012 */ lui $v1, %hi(D_8011D530) # $v1, 0x8012 -/* 056EDC 800562DC 45000009 */ bc1f .L80056304 -/* 056EE0 800562E0 00000000 */ nop -/* 056EE4 800562E4 15010005 */ bne $t0, $at, .L800562FC -/* 056EE8 800562E8 00000000 */ nop -/* 056EEC 800562EC 10400003 */ beqz $v0, .L800562FC -/* 056EF0 800562F0 00000000 */ nop -/* 056EF4 800562F4 8C470064 */ lw $a3, 0x64($v0) -/* 056EF8 800562F8 00000000 */ nop -.L800562FC: -/* 056EFC 800562FC 10000003 */ b .L8005630C -/* 056F00 80056300 AE020140 */ sw $v0, 0x140($s0) -.L80056304: -/* 056F04 80056304 AE000140 */ sw $zero, 0x140($s0) -/* 056F08 80056308 00005025 */ move $t2, $zero -.L8005630C: -/* 056F0C 8005630C 8C63D530 */ lw $v1, %lo(D_8011D530)($v1) -/* 056F10 80056310 AFAA006C */ sw $t2, 0x6c($sp) -/* 056F14 80056314 306C2000 */ andi $t4, $v1, 0x2000 -/* 056F18 80056318 01801825 */ move $v1, $t4 -.L8005631C: -/* 056F1C 8005631C 8FAA006C */ lw $t2, 0x6c($sp) -/* 056F20 80056320 1060017F */ beqz $v1, .L80056920 -/* 056F24 80056324 2402001D */ li $v0, 29 -/* 056F28 80056328 3C0141F0 */ li $at, 0x41F00000 # 30.000000 -/* 056F2C 8005632C 44810000 */ mtc1 $at, $f0 -/* 056F30 80056330 2D010010 */ sltiu $at, $t0, 0x10 -/* 056F34 80056334 AFA80030 */ sw $t0, 0x30($sp) -/* 056F38 80056338 102000B9 */ beqz $at, .L80056620 -/* 056F3C 8005633C 0100C825 */ move $t9, $t0 -/* 056F40 80056340 0019C880 */ sll $t9, $t9, 2 -/* 056F44 80056344 3C01800E */ lui $at, 0x800e -/* 056F48 80056348 00390821 */ addu $at, $at, $t9 -/* 056F4C 8005634C 8C396854 */ lw $t9, 0x6854($at) -/* 056F50 80056350 00000000 */ nop -/* 056F54 80056354 03200008 */ jr $t9 -/* 056F58 80056358 00000000 */ nop -/* 056F5C 8005635C 3C01C120 */ li $at, 0xC1200000 # -10.000000 -/* 056F60 80056360 44815000 */ mtc1 $at, $f10 -/* 056F64 80056364 240200E5 */ li $v0, 229 -/* 056F68 80056368 100000B0 */ b .L8005662C -/* 056F6C 8005636C E7AA0064 */ swc1 $f10, 0x64($sp) -/* 056F70 80056370 3C01C120 */ li $at, 0xC1200000 # -10.000000 -/* 056F74 80056374 44819000 */ mtc1 $at, $f18 -/* 056F78 80056378 100000AC */ b .L8005662C -/* 056F7C 8005637C E7B20064 */ swc1 $f18, 0x64($sp) -/* 056F80 80056380 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 056F84 80056384 44818000 */ mtc1 $at, $f16 -/* 056F88 80056388 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 056F8C 8005638C 44810000 */ mtc1 $at, $f0 -/* 056F90 80056390 2402000E */ li $v0, 14 -/* 056F94 80056394 100000A5 */ b .L8005662C -/* 056F98 80056398 E7B00064 */ swc1 $f16, 0x64($sp) -/* 056F9C 8005639C 820B01D6 */ lb $t3, 0x1d6($s0) -/* 056FA0 800563A0 24010002 */ li $at, 2 -/* 056FA4 800563A4 11610003 */ beq $t3, $at, .L800563B4 -/* 056FA8 800563A8 240200EB */ li $v0, 235 -/* 056FAC 800563AC 10000001 */ b .L800563B4 -/* 056FB0 800563B0 24020082 */ li $v0, 130 -.L800563B4: -/* 056FB4 800563B4 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 056FB8 800563B8 44812000 */ mtc1 $at, $f4 -/* 056FBC 800563BC 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 056FC0 800563C0 44810000 */ mtc1 $at, $f0 -/* 056FC4 800563C4 10000099 */ b .L8005662C -/* 056FC8 800563C8 E7A40064 */ swc1 $f4, 0x64($sp) -/* 056FCC 800563CC 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 056FD0 800563D0 44814000 */ mtc1 $at, $f8 -/* 056FD4 800563D4 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 056FD8 800563D8 44810000 */ mtc1 $at, $f0 -/* 056FDC 800563DC 2402002E */ li $v0, 46 -/* 056FE0 800563E0 00005025 */ move $t2, $zero -/* 056FE4 800563E4 10000091 */ b .L8005662C -/* 056FE8 800563E8 E7A80064 */ swc1 $f8, 0x64($sp) -/* 056FEC 800563EC 24010008 */ li $at, 8 -/* 056FF0 800563F0 11010009 */ beq $t0, $at, .L80056418 -/* 056FF4 800563F4 2401000F */ li $at, 15 -/* 056FF8 800563F8 1501000D */ bne $t0, $at, .L80056430 -/* 056FFC 800563FC 00000000 */ nop -/* 057000 80056400 0C00322D */ jal func_8000C8B4 -/* 057004 80056404 2404004B */ li $a0, 75 -/* 057008 80056408 240D0002 */ li $t5, 2 -/* 05700C 8005640C A20D0203 */ sb $t5, 0x203($s0) -/* 057010 80056410 1000000B */ b .L80056440 -/* 057014 80056414 A20201D3 */ sb $v0, 0x1d3($s0) -.L80056418: -/* 057018 80056418 0C00322D */ jal func_8000C8B4 -/* 05701C 8005641C 24040037 */ li $a0, 55 -/* 057020 80056420 240E0001 */ li $t6, 1 -/* 057024 80056424 A20E0203 */ sb $t6, 0x203($s0) -/* 057028 80056428 10000005 */ b .L80056440 -/* 05702C 8005642C A20201D3 */ sb $v0, 0x1d3($s0) -.L80056430: -/* 057030 80056430 0C00322D */ jal func_8000C8B4 -/* 057034 80056434 24040023 */ li $a0, 35 -/* 057038 80056438 A20201D3 */ sb $v0, 0x1d3($s0) -/* 05703C 8005643C A2000203 */ sb $zero, 0x203($s0) -.L80056440: -/* 057040 80056440 920F020C */ lbu $t7, 0x20c($s0) -/* 057044 80056444 00000000 */ nop -/* 057048 80056448 11E00006 */ beqz $t7, .L80056464 -/* 05704C 8005644C 8FB90030 */ lw $t9, 0x30($sp) -/* 057050 80056450 82180203 */ lb $t8, 0x203($s0) -/* 057054 80056454 00000000 */ nop -/* 057058 80056458 370C0004 */ ori $t4, $t8, 4 -/* 05705C 8005645C A20C0203 */ sb $t4, 0x203($s0) -/* 057060 80056460 8FB90030 */ lw $t9, 0x30($sp) -.L80056464: -/* 057064 80056464 2401000F */ li $at, 15 -/* 057068 80056468 1721000B */ bne $t9, $at, .L80056498 -/* 05706C 8005646C 8FA40088 */ lw $a0, 0x88($sp) -/* 057070 80056470 8FA40088 */ lw $a0, 0x88($sp) -/* 057074 80056474 0C015C12 */ jal func_80057048 -/* 057078 80056478 24050232 */ li $a1, 562 -/* 05707C 8005647C 8FA40088 */ lw $a0, 0x88($sp) -/* 057080 80056480 24050233 */ li $a1, 563 -/* 057084 80056484 0C015C29 */ jal func_800570A4 -/* 057088 80056488 2406001E */ li $a2, 30 -/* 05708C 8005648C 10000005 */ b .L800564A4 -/* 057090 80056490 820B0173 */ lb $t3, 0x173($s0) -/* 057094 80056494 8FA40088 */ lw $a0, 0x88($sp) -.L80056498: -/* 057098 80056498 0C015C12 */ jal func_80057048 -/* 05709C 8005649C 24050021 */ li $a1, 33 -/* 0570A0 800564A0 820B0173 */ lb $t3, 0x173($s0) -.L800564A4: -/* 0570A4 800564A4 24010004 */ li $at, 4 -/* 0570A8 800564A8 256DFFFF */ addiu $t5, $t3, -1 -/* 0570AC 800564AC A20D0173 */ sb $t5, 0x173($s0) -/* 0570B0 800564B0 8FAE0030 */ lw $t6, 0x30($sp) -/* 0570B4 800564B4 00000000 */ nop -/* 0570B8 800564B8 15C1000A */ bne $t6, $at, .L800564E4 -/* 0570BC 800564BC 00000000 */ nop -/* 0570C0 800564C0 820F01D8 */ lb $t7, 0x1d8($s0) -/* 0570C4 800564C4 00000000 */ nop -/* 0570C8 800564C8 15E00116 */ bnez $t7, .L80056924 -/* 0570CC 800564CC 8FBF0024 */ lw $ra, 0x24($sp) -/* 0570D0 800564D0 86040000 */ lh $a0, ($s0) -/* 0570D4 800564D4 0C01C8D2 */ jal func_80072348 -/* 0570D8 800564D8 24050006 */ li $a1, 6 -/* 0570DC 800564DC 10000111 */ b .L80056924 -/* 0570E0 800564E0 8FBF0024 */ lw $ra, 0x24($sp) -.L800564E4: -/* 0570E4 800564E4 821801D8 */ lb $t8, 0x1d8($s0) -/* 0570E8 800564E8 00000000 */ nop -/* 0570EC 800564EC 1700010D */ bnez $t8, .L80056924 -/* 0570F0 800564F0 8FBF0024 */ lw $ra, 0x24($sp) -/* 0570F4 800564F4 86040000 */ lh $a0, ($s0) -/* 0570F8 800564F8 0C01C8D2 */ jal func_80072348 -/* 0570FC 800564FC 24050008 */ li $a1, 8 -/* 057100 80056500 10000108 */ b .L80056924 -/* 057104 80056504 8FBF0024 */ lw $ra, 0x24($sp) -/* 057108 80056508 820C0173 */ lb $t4, 0x173($s0) -/* 05710C 8005650C 860B0000 */ lh $t3, ($s0) -/* 057110 80056510 2401FFFF */ li $at, -1 -/* 057114 80056514 2599FFFF */ addiu $t9, $t4, -1 -/* 057118 80056518 11610101 */ beq $t3, $at, .L80056920 -/* 05711C 8005651C A2190173 */ sb $t9, 0x173($s0) -/* 057120 80056520 11400005 */ beqz $t2, .L80056538 -/* 057124 80056524 240D005A */ li $t5, 90 -/* 057128 80056528 250EFFFB */ addiu $t6, $t0, -5 -/* 05712C 8005652C 000E7843 */ sra $t7, $t6, 1 -/* 057130 80056530 A20D0175 */ sb $t5, 0x175($s0) -/* 057134 80056534 A20F0184 */ sb $t7, 0x184($s0) -.L80056538: -/* 057138 80056538 821801D8 */ lb $t8, 0x1d8($s0) -/* 05713C 8005653C 00000000 */ nop -/* 057140 80056540 170000F8 */ bnez $t8, .L80056924 -/* 057144 80056544 8FBF0024 */ lw $ra, 0x24($sp) -/* 057148 80056548 86040000 */ lh $a0, ($s0) -/* 05714C 8005654C 0C01C8D2 */ jal func_80072348 -/* 057150 80056550 2405000F */ li $a1, 15 -/* 057154 80056554 100000F3 */ b .L80056924 -/* 057158 80056558 8FBF0024 */ lw $ra, 0x24($sp) -/* 05715C 8005655C 820C0173 */ lb $t4, 0x173($s0) -/* 057160 80056560 860B0000 */ lh $t3, ($s0) -/* 057164 80056564 2401FFFF */ li $at, -1 -/* 057168 80056568 2599FFFF */ addiu $t9, $t4, -1 -/* 05716C 8005656C A2190173 */ sb $t9, 0x173($s0) -/* 057170 80056570 116100EB */ beq $t3, $at, .L80056920 -/* 057174 80056574 AE000140 */ sw $zero, 0x140($s0) -/* 057178 80056578 10E00008 */ beqz $a3, .L8005659C -/* 05717C 8005657C 240D0001 */ li $t5, 1 -/* 057180 80056580 240E0078 */ li $t6, 120 -/* 057184 80056584 A0ED0195 */ sb $t5, 0x195($a3) -/* 057188 80056588 A0EE0175 */ sb $t6, 0x175($a3) -/* 05718C 8005658C 8FAF0088 */ lw $t7, 0x88($sp) -/* 057190 80056590 24180002 */ li $t8, 2 -/* 057194 80056594 A0F80184 */ sb $t8, 0x184($a3) -/* 057198 80056598 ACEF0140 */ sw $t7, 0x140($a3) -.L8005659C: -/* 05719C 8005659C 820C01D8 */ lb $t4, 0x1d8($s0) -/* 0571A0 800565A0 00000000 */ nop -/* 0571A4 800565A4 158000DF */ bnez $t4, .L80056924 -/* 0571A8 800565A8 8FBF0024 */ lw $ra, 0x24($sp) -/* 0571AC 800565AC 86040000 */ lh $a0, ($s0) -/* 0571B0 800565B0 0C01C8D2 */ jal func_80072348 -/* 0571B4 800565B4 2405000F */ li $a1, 15 -/* 0571B8 800565B8 100000DA */ b .L80056924 -/* 0571BC 800565BC 8FBF0024 */ lw $ra, 0x24($sp) -/* 0571C0 800565C0 820D0173 */ lb $t5, 0x173($s0) -/* 0571C4 800565C4 24190001 */ li $t9, 1 -/* 0571C8 800565C8 240B012C */ li $t3, 300 -/* 0571CC 800565CC 25AEFFFF */ addiu $t6, $t5, -1 -/* 0571D0 800565D0 A2190189 */ sb $t9, 0x189($s0) -/* 0571D4 800565D4 A60B018E */ sh $t3, 0x18e($s0) -/* 0571D8 800565D8 100000D1 */ b .L80056920 -/* 0571DC 800565DC A20E0173 */ sb $t6, 0x173($s0) -/* 0571E0 800565E0 82180173 */ lb $t8, 0x173($s0) -/* 0571E4 800565E4 240F0002 */ li $t7, 2 -/* 0571E8 800565E8 24190258 */ li $t9, 600 -/* 0571EC 800565EC 270CFFFF */ addiu $t4, $t8, -1 -/* 0571F0 800565F0 A20F0189 */ sb $t7, 0x189($s0) -/* 0571F4 800565F4 A20C0173 */ sb $t4, 0x173($s0) -/* 0571F8 800565F8 100000C9 */ b .L80056920 -/* 0571FC 800565FC A619018E */ sh $t9, 0x18e($s0) -/* 057200 80056600 820E0173 */ lb $t6, 0x173($s0) -/* 057204 80056604 240B0003 */ li $t3, 3 -/* 057208 80056608 240D0384 */ li $t5, 900 -/* 05720C 8005660C 25CFFFFF */ addiu $t7, $t6, -1 -/* 057210 80056610 A20B0189 */ sb $t3, 0x189($s0) -/* 057214 80056614 A60D018E */ sh $t5, 0x18e($s0) -/* 057218 80056618 100000C1 */ b .L80056920 -/* 05721C 8005661C A20F0173 */ sb $t7, 0x173($s0) -.L80056620: -/* 057220 80056620 44803000 */ mtc1 $zero, $f6 -/* 057224 80056624 00000000 */ nop -/* 057228 80056628 E7A60064 */ swc1 $f6, 0x64($sp) -.L8005662C: -/* 05722C 8005662C 8FA40088 */ lw $a0, 0x88($sp) -/* 057230 80056630 24050162 */ li $a1, 354 -/* 057234 80056634 24060008 */ li $a2, 8 -/* 057238 80056638 24070081 */ li $a3, 129 -/* 05723C 8005663C AFA20074 */ sw $v0, 0x74($sp) -/* 057240 80056640 AFA8007C */ sw $t0, 0x7c($sp) -/* 057244 80056644 AFAA006C */ sw $t2, 0x6c($sp) -/* 057248 80056648 0C015C2E */ jal func_800570B8 -/* 05724C 8005664C E7A00058 */ swc1 $f0, 0x58($sp) -/* 057250 80056650 C60A0038 */ lwc1 $f10, 0x38($s0) -/* 057254 80056654 C7B20064 */ lwc1 $f18, 0x64($sp) -/* 057258 80056658 8FA30088 */ lw $v1, 0x88($sp) -/* 05725C 8005665C 46125402 */ mul.s $f16, $f10, $f18 -/* 057260 80056660 C464000C */ lwc1 $f4, 0xc($v1) -/* 057264 80056664 8FA20074 */ lw $v0, 0x74($sp) -/* 057268 80056668 240F0008 */ li $t7, 8 -/* 05726C 8005666C 46102200 */ add.s $f8, $f4, $f16 -/* 057270 80056670 27A40080 */ addiu $a0, $sp, 0x80 -/* 057274 80056674 4458F800 */ cfc1 $t8, $31 -/* 057278 80056678 24050001 */ li $a1, 1 -/* 05727C 8005667C 37010003 */ ori $at, $t8, 3 -/* 057280 80056680 38210002 */ xori $at, $at, 2 -/* 057284 80056684 44C1F800 */ ctc1 $at, $31 -/* 057288 80056688 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 05728C 8005668C 460041A4 */ cvt.w.s $f6, $f8 -/* 057290 80056690 440C3000 */ mfc1 $t4, $f6 -/* 057294 80056694 44D8F800 */ ctc1 $t8, $31 -/* 057298 80056698 A7AC0082 */ sh $t4, 0x82($sp) -/* 05729C 8005669C C60A003C */ lwc1 $f10, 0x3c($s0) -/* 0572A0 800566A0 C4700010 */ lwc1 $f16, 0x10($v1) -/* 0572A4 800566A4 46125102 */ mul.s $f4, $f10, $f18 -/* 0572A8 800566A8 C60A0048 */ lwc1 $f10, 0x48($s0) -/* 0572AC 800566AC 44813000 */ mtc1 $at, $f6 -/* 0572B0 800566B0 46048200 */ add.s $f8, $f16, $f4 -/* 0572B4 800566B4 460A3402 */ mul.s $f16, $f6, $f10 -/* 0572B8 800566B8 46104100 */ add.s $f4, $f8, $f16 -/* 0572BC 800566BC 4459F800 */ cfc1 $t9, $31 -/* 0572C0 800566C0 00000000 */ nop -/* 0572C4 800566C4 37210003 */ ori $at, $t9, 3 -/* 0572C8 800566C8 38210002 */ xori $at, $at, 2 -/* 0572CC 800566CC 44C1F800 */ ctc1 $at, $31 -/* 0572D0 800566D0 00000000 */ nop -/* 0572D4 800566D4 460021A4 */ cvt.w.s $f6, $f4 -/* 0572D8 800566D8 440B3000 */ mfc1 $t3, $f6 -/* 0572DC 800566DC 44D9F800 */ ctc1 $t9, $31 -/* 0572E0 800566E0 A7AB0084 */ sh $t3, 0x84($sp) -/* 0572E4 800566E4 C60A0040 */ lwc1 $f10, 0x40($s0) -/* 0572E8 800566E8 C4700014 */ lwc1 $f16, 0x14($v1) -/* 0572EC 800566EC 46125202 */ mul.s $f8, $f10, $f18 -/* 0572F0 800566F0 A3AF0081 */ sb $t7, 0x81($sp) -/* 0572F4 800566F4 A3A20080 */ sb $v0, 0x80($sp) -/* 0572F8 800566F8 46088100 */ add.s $f4, $f16, $f8 -/* 0572FC 800566FC 444DF800 */ cfc1 $t5, $31 -/* 057300 80056700 00000000 */ nop -/* 057304 80056704 35A10003 */ ori $at, $t5, 3 -/* 057308 80056708 38210002 */ xori $at, $at, 2 -/* 05730C 8005670C 44C1F800 */ ctc1 $at, $31 -/* 057310 80056710 00000000 */ nop -/* 057314 80056714 460021A4 */ cvt.w.s $f6, $f4 -/* 057318 80056718 440E3000 */ mfc1 $t6, $f6 -/* 05731C 8005671C 44CDF800 */ ctc1 $t5, $31 -/* 057320 80056720 0C003A95 */ jal func_8000EA54 -/* 057324 80056724 A7AE0086 */ sh $t6, 0x86($sp) -/* 057328 80056728 8FA8007C */ lw $t0, 0x7c($sp) -/* 05732C 8005672C 8FAA006C */ lw $t2, 0x6c($sp) -/* 057330 80056730 C7A00058 */ lwc1 $f0, 0x58($sp) -/* 057334 80056734 10400073 */ beqz $v0, .L80056904 -/* 057338 80056738 00000000 */ nop -/* 05733C 8005673C 8FA90088 */ lw $t1, 0x88($sp) -/* 057340 80056740 AC40003C */ sw $zero, 0x3c($v0) -/* 057344 80056744 C6120038 */ lwc1 $f18, 0x38($s0) -/* 057348 80056748 C52A001C */ lwc1 $f10, 0x1c($t1) -/* 05734C 8005674C 46009402 */ mul.s $f16, $f18, $f0 -/* 057350 80056750 24010001 */ li $at, 1 -/* 057354 80056754 46105201 */ sub.s $f8, $f10, $f16 -/* 057358 80056758 E448001C */ swc1 $f8, 0x1c($v0) -/* 05735C 8005675C C606003C */ lwc1 $f6, 0x3c($s0) -/* 057360 80056760 C5240020 */ lwc1 $f4, 0x20($t1) -/* 057364 80056764 46003482 */ mul.s $f18, $f6, $f0 -/* 057368 80056768 46122281 */ sub.s $f10, $f4, $f18 -/* 05736C 8005676C E44A0020 */ swc1 $f10, 0x20($v0) -/* 057370 80056770 C6080040 */ lwc1 $f8, 0x40($s0) -/* 057374 80056774 C5300024 */ lwc1 $f16, 0x24($t1) -/* 057378 80056778 46004182 */ mul.s $f6, $f8, $f0 -/* 05737C 8005677C 46068101 */ sub.s $f4, $f16, $f6 -/* 057380 80056780 E4440024 */ swc1 $f4, 0x24($v0) -/* 057384 80056784 85380000 */ lh $t8, ($t1) -/* 057388 80056788 00000000 */ nop -/* 05738C 8005678C A4580000 */ sh $t8, ($v0) -/* 057390 80056790 852C0002 */ lh $t4, 2($t1) -/* 057394 80056794 00000000 */ nop -/* 057398 80056798 A44C0002 */ sh $t4, 2($v0) -/* 05739C 8005679C 821901D6 */ lb $t9, 0x1d6($s0) -/* 0573A0 800567A0 00000000 */ nop -/* 0573A4 800567A4 1721000D */ bne $t9, $at, .L800567DC -/* 0573A8 800567A8 00000000 */ nop -/* 0573AC 800567AC 820B01E5 */ lb $t3, 0x1e5($s0) -/* 0573B0 800567B0 00000000 */ nop -/* 0573B4 800567B4 11600009 */ beqz $t3, .L800567DC -/* 0573B8 800567B8 00000000 */ nop -/* 0573BC 800567BC 84430002 */ lh $v1, 2($v0) -/* 0573C0 800567C0 00000000 */ nop -/* 0573C4 800567C4 2861FC01 */ slti $at, $v1, -0x3ff -/* 0573C8 800567C8 14200004 */ bnez $at, .L800567DC -/* 0573CC 800567CC 28610400 */ slti $at, $v1, 0x400 -/* 0573D0 800567D0 10200002 */ beqz $at, .L800567DC -/* 0573D4 800567D4 00000000 */ nop -/* 0573D8 800567D8 A4400002 */ sh $zero, 2($v0) -.L800567DC: -/* 0573DC 800567DC 8C430064 */ lw $v1, 0x64($v0) -/* 0573E0 800567E0 310E00FF */ andi $t6, $t0, 0xff -/* 0573E4 800567E4 AC690004 */ sw $t1, 4($v1) -/* 0573E8 800567E8 AC6A0000 */ sw $t2, ($v1) -/* 0573EC 800567EC 820D0192 */ lb $t5, 0x192($s0) -/* 0573F0 800567F0 2DC1000C */ sltiu $at, $t6, 0xc -/* 0573F4 800567F4 A06D0019 */ sb $t5, 0x19($v1) -/* 0573F8 800567F8 C612002C */ lwc1 $f18, 0x2c($s0) -/* 0573FC 800567FC A0680018 */ sb $t0, 0x18($v1) -/* 057400 80056800 46009281 */ sub.s $f10, $f18, $f0 -/* 057404 80056804 1020001F */ beqz $at, .L80056884 -/* 057408 80056808 E46A0010 */ swc1 $f10, 0x10($v1) -/* 05740C 8005680C 000E7080 */ sll $t6, $t6, 2 -/* 057410 80056810 3C01800E */ lui $at, 0x800e -/* 057414 80056814 002E0821 */ addu $at, $at, $t6 -/* 057418 80056818 8C2E6894 */ lw $t6, 0x6894($at) -/* 05741C 8005681C 00000000 */ nop -/* 057420 80056820 01C00008 */ jr $t6 -/* 057424 80056824 00000000 */ nop -/* 057428 80056828 240F0134 */ li $t7, 308 -/* 05742C 8005682C 10000015 */ b .L80056884 -/* 057430 80056830 A7AF003A */ sh $t7, 0x3a($sp) -/* 057434 80056834 24180135 */ li $t8, 309 -/* 057438 80056838 10000012 */ b .L80056884 -/* 05743C 8005683C A7B8003A */ sh $t8, 0x3a($sp) -/* 057440 80056840 240C000F */ li $t4, 15 -/* 057444 80056844 1000000F */ b .L80056884 -/* 057448 80056848 A7AC003A */ sh $t4, 0x3a($sp) -/* 05744C 8005684C 821901D6 */ lb $t9, 0x1d6($s0) -/* 057450 80056850 24010002 */ li $at, 2 -/* 057454 80056854 13210005 */ beq $t9, $at, .L8005686C -/* 057458 80056858 240D0151 */ li $t5, 337 -/* 05745C 8005685C 44804000 */ mtc1 $zero, $f8 -/* 057460 80056860 8C4B0050 */ lw $t3, 0x50($v0) -/* 057464 80056864 00000000 */ nop -/* 057468 80056868 E5680000 */ swc1 $f8, ($t3) -.L8005686C: -/* 05746C 8005686C 10000005 */ b .L80056884 -/* 057470 80056870 A7AD003A */ sh $t5, 0x3a($sp) -/* 057474 80056874 240E000F */ li $t6, 15 -/* 057478 80056878 10000002 */ b .L80056884 -/* 05747C 8005687C A7AE003A */ sh $t6, 0x3a($sp) -/* 057480 80056880 A4400018 */ sh $zero, 0x18($v0) -.L80056884: -/* 057484 80056884 97AF003A */ lhu $t7, 0x3a($sp) -/* 057488 80056888 00000000 */ nop -/* 05748C 8005688C 11E0001D */ beqz $t7, .L80056904 -/* 057490 80056890 00000000 */ nop -/* 057494 80056894 86180000 */ lh $t8, ($s0) -/* 057498 80056898 2401FFFF */ li $at, -1 -/* 05749C 8005689C 1701000A */ bne $t8, $at, .L800568C8 -/* 0574A0 800568A0 01E02025 */ move $a0, $t7 -/* 0574A4 800568A4 8D25000C */ lw $a1, 0xc($t1) -/* 0574A8 800568A8 8D260010 */ lw $a2, 0x10($t1) -/* 0574AC 800568AC 8D270014 */ lw $a3, 0x14($t1) -/* 0574B0 800568B0 240C0004 */ li $t4, 4 -/* 0574B4 800568B4 AFAC0010 */ sw $t4, 0x10($sp) -/* 0574B8 800568B8 0C002556 */ jal func_80009558 -/* 0574BC 800568BC AFA00014 */ sw $zero, 0x14($sp) -/* 0574C0 800568C0 10000011 */ b .L80056908 -/* 0574C4 800568C4 82020173 */ lb $v0, 0x173($s0) -.L800568C8: -/* 0574C8 800568C8 8E040218 */ lw $a0, 0x218($s0) -/* 0574CC 800568CC 00000000 */ nop -/* 0574D0 800568D0 10800005 */ beqz $a0, .L800568E8 -/* 0574D4 800568D4 00000000 */ nop -/* 0574D8 800568D8 0C001223 */ jal func_8000488C -/* 0574DC 800568DC 00000000 */ nop -/* 0574E0 800568E0 8FA90088 */ lw $t1, 0x88($sp) -/* 0574E4 800568E4 00000000 */ nop -.L800568E8: -/* 0574E8 800568E8 97A4003A */ lhu $a0, 0x3a($sp) -/* 0574EC 800568EC 8D25000C */ lw $a1, 0xc($t1) -/* 0574F0 800568F0 8D260010 */ lw $a2, 0x10($t1) -/* 0574F4 800568F4 8D270014 */ lw $a3, 0x14($t1) -/* 0574F8 800568F8 26190218 */ addiu $t9, $s0, 0x218 -/* 0574FC 800568FC 0C0007AA */ jal func_80001EA8 -/* 057500 80056900 AFB90010 */ sw $t9, 0x10($sp) -.L80056904: -/* 057504 80056904 82020173 */ lb $v0, 0x173($s0) -.L80056908: -/* 057508 80056908 00000000 */ nop -/* 05750C 8005690C 18400003 */ blez $v0, .L8005691C -/* 057510 80056910 244BFFFF */ addiu $t3, $v0, -1 -/* 057514 80056914 10000002 */ b .L80056920 -/* 057518 80056918 A20B0173 */ sb $t3, 0x173($s0) -.L8005691C: -/* 05751C 8005691C A2000173 */ sb $zero, 0x173($s0) -.L80056920: -/* 057520 80056920 8FBF0024 */ lw $ra, 0x24($sp) -.L80056924: -/* 057524 80056924 8FB00020 */ lw $s0, 0x20($sp) -/* 057528 80056928 03E00008 */ jr $ra -/* 05752C 8005692C 27BD0088 */ addiu $sp, $sp, 0x88 - -glabel func_80056930 -/* 057530 80056930 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 057534 80056934 AFBF0014 */ sw $ra, 0x14($sp) -/* 057538 80056938 AFA40018 */ sw $a0, 0x18($sp) -/* 05753C 8005693C 0C0270C3 */ jal func_8009C30C -/* 057540 80056940 AFA5001C */ sw $a1, 0x1c($sp) -/* 057544 80056944 8FA40018 */ lw $a0, 0x18($sp) -/* 057548 80056948 304E0100 */ andi $t6, $v0, 0x100 -/* 05754C 8005694C 11C00006 */ beqz $t6, .L80056968 -/* 057550 80056950 24050162 */ li $a1, 354 -/* 057554 80056954 24060008 */ li $a2, 8 -/* 057558 80056958 0C015C2E */ jal func_800570B8 -/* 05755C 8005695C 24070082 */ li $a3, 130 -/* 057560 80056960 10000007 */ b .L80056980 -/* 057564 80056964 8FBF0014 */ lw $ra, 0x14($sp) -.L80056968: -/* 057568 80056968 8FAF001C */ lw $t7, 0x1c($sp) -/* 05756C 8005696C 00000000 */ nop -/* 057570 80056970 81E50003 */ lb $a1, 3($t7) -/* 057574 80056974 0C015C12 */ jal func_80057048 -/* 057578 80056978 24A50156 */ addiu $a1, $a1, 0x156 -/* 05757C 8005697C 8FBF0014 */ lw $ra, 0x14($sp) -.L80056980: -/* 057580 80056980 27BD0018 */ addiu $sp, $sp, 0x18 -/* 057584 80056984 03E00008 */ jr $ra -/* 057588 80056988 00000000 */ nop - -glabel func_8005698C -/* 05758C 8005698C 27BDFF48 */ addiu $sp, $sp, -0xb8 -/* 057590 80056990 AFBF004C */ sw $ra, 0x4c($sp) -/* 057594 80056994 AFB10048 */ sw $s1, 0x48($sp) -/* 057598 80056998 AFB00044 */ sw $s0, 0x44($sp) -/* 05759C 8005699C 00A08025 */ move $s0, $a1 -/* 0575A0 800569A0 00808825 */ move $s1, $a0 -/* 0575A4 800569A4 E7BF0038 */ swc1 $f31, 0x38($sp) -/* 0575A8 800569A8 E7BE003C */ swc1 $f30, 0x3c($sp) -/* 0575AC 800569AC E7BD0030 */ swc1 $f29, 0x30($sp) -/* 0575B0 800569B0 E7BC0034 */ swc1 $f28, 0x34($sp) -/* 0575B4 800569B4 E7BB0028 */ swc1 $f27, 0x28($sp) -/* 0575B8 800569B8 E7BA002C */ swc1 $f26, 0x2c($sp) -/* 0575BC 800569BC E7B90020 */ swc1 $f25, 0x20($sp) -/* 0575C0 800569C0 E7B80024 */ swc1 $f24, 0x24($sp) -/* 0575C4 800569C4 E7B70018 */ swc1 $f23, 0x18($sp) -/* 0575C8 800569C8 E7B6001C */ swc1 $f22, 0x1c($sp) -/* 0575CC 800569CC E7B50010 */ swc1 $f21, 0x10($sp) -/* 0575D0 800569D0 E7B40014 */ swc1 $f20, 0x14($sp) -/* 0575D4 800569D4 0C01AF66 */ jal func_8006BD98 -/* 0575D8 800569D8 AFA600C0 */ sw $a2, 0xc0($sp) -/* 0575DC 800569DC 860E0000 */ lh $t6, ($s0) -/* 0575E0 800569E0 30440040 */ andi $a0, $v0, 0x40 -/* 0575E4 800569E4 2401FFFF */ li $at, -1 -/* 0575E8 800569E8 00404825 */ move $t1, $v0 -/* 0575EC 800569EC 15C1000C */ bne $t6, $at, .L80056A20 -/* 0575F0 800569F0 00805025 */ move $t2, $a0 -/* 0575F4 800569F4 1480000A */ bnez $a0, .L80056A20 -/* 0575F8 800569F8 24050001 */ li $a1, 1 -/* 0575FC 800569FC 44807000 */ mtc1 $zero, $f14 -/* 057600 80056A00 02002025 */ move $a0, $s0 -/* 057604 80056A04 27A600AC */ addiu $a2, $sp, 0xac -/* 057608 80056A08 0C006DEA */ jal func_8001B7A8 -/* 05760C 80056A0C E7AE00AC */ swc1 $f14, 0xac($sp) -/* 057610 80056A10 C7A400AC */ lwc1 $f4, 0xac($sp) -/* 057614 80056A14 8FAF00C0 */ lw $t7, 0xc0($sp) -/* 057618 80056A18 100000F3 */ b .L80056DE8 -/* 05761C 80056A1C E5E40000 */ swc1 $f4, ($t7) -.L80056A20: -/* 057620 80056A20 C612003C */ lwc1 $f18, 0x3c($s0) -/* 057624 80056A24 C6260010 */ lwc1 $f6, 0x10($s1) -/* 057628 80056A28 C6100038 */ lwc1 $f16, 0x38($s0) -/* 05762C 80056A2C 46123082 */ mul.s $f2, $f6, $f18 -/* 057630 80056A30 C620000C */ lwc1 $f0, 0xc($s1) -/* 057634 80056A34 C6140040 */ lwc1 $f20, 0x40($s0) -/* 057638 80056A38 C62C0014 */ lwc1 $f12, 0x14($s1) -/* 05763C 80056A3C 46100202 */ mul.s $f8, $f0, $f16 -/* 057640 80056A40 C6160050 */ lwc1 $f22, 0x50($s0) -/* 057644 80056A44 C6180058 */ lwc1 $f24, 0x58($s0) -/* 057648 80056A48 C61C0054 */ lwc1 $f28, 0x54($s0) -/* 05764C 80056A4C 46146102 */ mul.s $f4, $f12, $f20 -/* 057650 80056A50 46024280 */ add.s $f10, $f8, $f2 -/* 057654 80056A54 AFAA0068 */ sw $t2, 0x68($sp) -/* 057658 80056A58 AFA90064 */ sw $t1, 0x64($sp) -/* 05765C 80056A5C 46160182 */ mul.s $f6, $f0, $f22 -/* 057660 80056A60 46045680 */ add.s $f26, $f10, $f4 -/* 057664 80056A64 27A40070 */ addiu $a0, $sp, 0x70 -/* 057668 80056A68 E7B200A0 */ swc1 $f18, 0xa0($sp) -/* 05766C 80056A6C 46186282 */ mul.s $f10, $f12, $f24 -/* 057670 80056A70 46023200 */ add.s $f8, $f6, $f2 -/* 057674 80056A74 E7B000A8 */ swc1 $f16, 0xa8($sp) -/* 057678 80056A78 460A4780 */ add.s $f30, $f8, $f10 -/* 05767C 80056A7C 4600D687 */ neg.s $f26, $f26 -/* 057680 80056A80 0C006E9D */ jal func_8001BA74 -/* 057684 80056A84 4600F787 */ neg.s $f30, $f30 -/* 057688 80056A88 3C01800E */ lui $at, %hi(D_800E68C4) # $at, 0x800e -/* 05768C 80056A8C C42C68C4 */ lwc1 $f12, %lo(D_800E68C4)($at) -/* 057690 80056A90 8FB80070 */ lw $t8, 0x70($sp) -/* 057694 80056A94 8FA90064 */ lw $t1, 0x64($sp) -/* 057698 80056A98 8FAA0068 */ lw $t2, 0x68($sp) -/* 05769C 80056A9C C7B000A8 */ lwc1 $f16, 0xa8($sp) -/* 0576A0 80056AA0 C7B200A0 */ lwc1 $f18, 0xa0($sp) -/* 0576A4 80056AA4 00004025 */ move $t0, $zero -/* 0576A8 80056AA8 00001825 */ move $v1, $zero -/* 0576AC 80056AAC 1B0000CA */ blez $t8, .L80056DD8 -/* 0576B0 80056AB0 E7AC0084 */ swc1 $f12, 0x84($sp) -/* 0576B4 80056AB4 33040001 */ andi $a0, $t8, 1 -/* 0576B8 80056AB8 10800046 */ beqz $a0, .L80056BD4 -/* 0576BC 80056ABC 8FAB0070 */ lw $t3, 0x70($sp) -/* 0576C0 80056AC0 8C440000 */ lw $a0, ($v0) -/* 0576C4 80056AC4 00000000 */ nop -/* 0576C8 80056AC8 1224003E */ beq $s1, $a0, .L80056BC4 -/* 0576CC 80056ACC 8FB80070 */ lw $t8, 0x70($sp) -/* 0576D0 80056AD0 11400007 */ beqz $t2, .L80056AF0 -/* 0576D4 80056AD4 00801825 */ move $v1, $a0 -/* 0576D8 80056AD8 8C990064 */ lw $t9, 0x64($a0) -/* 0576DC 80056ADC 00000000 */ nop -/* 0576E0 80056AE0 832C01D8 */ lb $t4, 0x1d8($t9) -/* 0576E4 80056AE4 00000000 */ nop -/* 0576E8 80056AE8 15800036 */ bnez $t4, .L80056BC4 -/* 0576EC 80056AEC 8FB80070 */ lw $t8, 0x70($sp) -.L80056AF0: -/* 0576F0 80056AF0 8C8E0064 */ lw $t6, 0x64($a0) -/* 0576F4 80056AF4 820D0212 */ lb $t5, 0x212($s0) -/* 0576F8 80056AF8 81CF0212 */ lb $t7, 0x212($t6) -/* 0576FC 80056AFC 00000000 */ nop -/* 057700 80056B00 15AF0030 */ bne $t5, $t7, .L80056BC4 -/* 057704 80056B04 8FB80070 */ lw $t8, 0x70($sp) -/* 057708 80056B08 C464000C */ lwc1 $f4, 0xc($v1) -/* 05770C 80056B0C C4680010 */ lwc1 $f8, 0x10($v1) -/* 057710 80056B10 46102182 */ mul.s $f6, $f4, $f16 -/* 057714 80056B14 44807000 */ mtc1 $zero, $f14 -/* 057718 80056B18 46089282 */ mul.s $f10, $f18, $f8 -/* 05771C 80056B1C C4680014 */ lwc1 $f8, 0x14($v1) -/* 057720 80056B20 460A3100 */ add.s $f4, $f6, $f10 -/* 057724 80056B24 4608A182 */ mul.s $f6, $f20, $f8 -/* 057728 80056B28 46062280 */ add.s $f10, $f4, $f6 -/* 05772C 80056B2C 461A5200 */ add.s $f8, $f10, $f26 -/* 057730 80056B30 46004107 */ neg.s $f4, $f8 -/* 057734 80056B34 4604703C */ c.lt.s $f14, $f4 -/* 057738 80056B38 E7A400AC */ swc1 $f4, 0xac($sp) -/* 05773C 80056B3C 45000021 */ bc1f .L80056BC4 -/* 057740 80056B40 8FB80070 */ lw $t8, 0x70($sp) -/* 057744 80056B44 C466000C */ lwc1 $f6, 0xc($v1) -/* 057748 80056B48 C4680010 */ lwc1 $f8, 0x10($v1) -/* 05774C 80056B4C 46163282 */ mul.s $f10, $f6, $f22 -/* 057750 80056B50 24010008 */ li $at, 8 -/* 057754 80056B54 4608E102 */ mul.s $f4, $f28, $f8 -/* 057758 80056B58 C4680014 */ lwc1 $f8, 0x14($v1) -/* 05775C 80056B5C 46045180 */ add.s $f6, $f10, $f4 -/* 057760 80056B60 4608C282 */ mul.s $f10, $f24, $f8 -/* 057764 80056B64 C7A800AC */ lwc1 $f8, 0xac($sp) -/* 057768 80056B68 460A3100 */ add.s $f4, $f6, $f10 -/* 05776C 80056B6C 461E2080 */ add.s $f2, $f4, $f30 -/* 057770 80056B70 460E103C */ c.lt.s $f2, $f14 -/* 057774 80056B74 46001006 */ mov.s $f0, $f2 -/* 057778 80056B78 45000002 */ bc1f .L80056B84 -/* 05777C 80056B7C 00000000 */ nop -/* 057780 80056B80 46001007 */ neg.s $f0, $f2 -.L80056B84: -/* 057784 80056B84 4608003C */ c.lt.s $f0, $f8 -/* 057788 80056B88 00000000 */ nop -/* 05778C 80056B8C 45010002 */ bc1t .L80056B98 -/* 057790 80056B90 00000000 */ nop -/* 057794 80056B94 1521000A */ bne $t1, $at, .L80056BC0 -.L80056B98: -/* 057798 80056B98 3C01800E */ lui $at, %hi(D_800E68C8) # $at, 0x800e -/* 05779C 80056B9C C42668C8 */ lwc1 $f6, %lo(D_800E68C8)($at) -/* 0577A0 80056BA0 C7AA00AC */ lwc1 $f10, 0xac($sp) -/* 0577A4 80056BA4 4606003C */ c.lt.s $f0, $f6 -/* 0577A8 80056BA8 00000000 */ nop -/* 0577AC 80056BAC 45000005 */ bc1f .L80056BC4 -/* 0577B0 80056BB0 8FB80070 */ lw $t8, 0x70($sp) -/* 0577B4 80056BB4 E7AA0084 */ swc1 $f10, 0x84($sp) -/* 0577B8 80056BB8 46000306 */ mov.s $f12, $f0 -/* 0577BC 80056BBC 00604025 */ move $t0, $v1 -.L80056BC0: -/* 0577C0 80056BC0 8FB80070 */ lw $t8, 0x70($sp) -.L80056BC4: -/* 0577C4 80056BC4 24030001 */ li $v1, 1 -/* 0577C8 80056BC8 10780083 */ beq $v1, $t8, .L80056DD8 -/* 0577CC 80056BCC 00000000 */ nop -/* 0577D0 80056BD0 8FAB0070 */ lw $t3, 0x70($sp) -.L80056BD4: -/* 0577D4 80056BD4 00033880 */ sll $a3, $v1, 2 -/* 0577D8 80056BD8 000BC880 */ sll $t9, $t3, 2 -/* 0577DC 80056BDC 44807000 */ mtc1 $zero, $f14 -/* 0577E0 80056BE0 03205825 */ move $t3, $t9 -/* 0577E4 80056BE4 00473021 */ addu $a2, $v0, $a3 -.L80056BE8: -/* 0577E8 80056BE8 8CC40000 */ lw $a0, ($a2) -/* 0577EC 80056BEC 24E70008 */ addiu $a3, $a3, 8 -/* 0577F0 80056BF0 1224003B */ beq $s1, $a0, .L80056CE0 -/* 0577F4 80056BF4 00000000 */ nop -/* 0577F8 80056BF8 11400007 */ beqz $t2, .L80056C18 -/* 0577FC 80056BFC 00801825 */ move $v1, $a0 -/* 057800 80056C00 8C8C0064 */ lw $t4, 0x64($a0) -/* 057804 80056C04 00000000 */ nop -/* 057808 80056C08 818E01D8 */ lb $t6, 0x1d8($t4) -/* 05780C 80056C0C 00000000 */ nop -/* 057810 80056C10 15C00033 */ bnez $t6, .L80056CE0 -/* 057814 80056C14 00000000 */ nop -.L80056C18: -/* 057818 80056C18 8C8F0064 */ lw $t7, 0x64($a0) -/* 05781C 80056C1C 820D0212 */ lb $t5, 0x212($s0) -/* 057820 80056C20 81F80212 */ lb $t8, 0x212($t7) -/* 057824 80056C24 00000000 */ nop -/* 057828 80056C28 15B8002D */ bne $t5, $t8, .L80056CE0 -/* 05782C 80056C2C 00000000 */ nop -/* 057830 80056C30 C464000C */ lwc1 $f4, 0xc($v1) -/* 057834 80056C34 C4660010 */ lwc1 $f6, 0x10($v1) -/* 057838 80056C38 46102202 */ mul.s $f8, $f4, $f16 -/* 05783C 80056C3C 00000000 */ nop -/* 057840 80056C40 46069282 */ mul.s $f10, $f18, $f6 -/* 057844 80056C44 C4660014 */ lwc1 $f6, 0x14($v1) -/* 057848 80056C48 460A4100 */ add.s $f4, $f8, $f10 -/* 05784C 80056C4C 4606A202 */ mul.s $f8, $f20, $f6 -/* 057850 80056C50 46082280 */ add.s $f10, $f4, $f8 -/* 057854 80056C54 461A5180 */ add.s $f6, $f10, $f26 -/* 057858 80056C58 46003107 */ neg.s $f4, $f6 -/* 05785C 80056C5C 4604703C */ c.lt.s $f14, $f4 -/* 057860 80056C60 E7A400AC */ swc1 $f4, 0xac($sp) -/* 057864 80056C64 4500001E */ bc1f .L80056CE0 -/* 057868 80056C68 00000000 */ nop -/* 05786C 80056C6C C468000C */ lwc1 $f8, 0xc($v1) -/* 057870 80056C70 C4660010 */ lwc1 $f6, 0x10($v1) -/* 057874 80056C74 46164282 */ mul.s $f10, $f8, $f22 -/* 057878 80056C78 24010008 */ li $at, 8 -/* 05787C 80056C7C 4606E102 */ mul.s $f4, $f28, $f6 -/* 057880 80056C80 C4660014 */ lwc1 $f6, 0x14($v1) -/* 057884 80056C84 46045200 */ add.s $f8, $f10, $f4 -/* 057888 80056C88 4606C282 */ mul.s $f10, $f24, $f6 -/* 05788C 80056C8C C7A600AC */ lwc1 $f6, 0xac($sp) -/* 057890 80056C90 460A4100 */ add.s $f4, $f8, $f10 -/* 057894 80056C94 461E2080 */ add.s $f2, $f4, $f30 -/* 057898 80056C98 460E103C */ c.lt.s $f2, $f14 -/* 05789C 80056C9C 46001006 */ mov.s $f0, $f2 -/* 0578A0 80056CA0 45000002 */ bc1f .L80056CAC -/* 0578A4 80056CA4 00000000 */ nop -/* 0578A8 80056CA8 46001007 */ neg.s $f0, $f2 -.L80056CAC: -/* 0578AC 80056CAC 4606003C */ c.lt.s $f0, $f6 -/* 0578B0 80056CB0 00000000 */ nop -/* 0578B4 80056CB4 45010003 */ bc1t .L80056CC4 -/* 0578B8 80056CB8 00000000 */ nop -/* 0578BC 80056CBC 15210008 */ bne $t1, $at, .L80056CE0 -/* 0578C0 80056CC0 00000000 */ nop -.L80056CC4: -/* 0578C4 80056CC4 460C003C */ c.lt.s $f0, $f12 -/* 0578C8 80056CC8 C7A800AC */ lwc1 $f8, 0xac($sp) -/* 0578CC 80056CCC 45000004 */ bc1f .L80056CE0 -/* 0578D0 80056CD0 00000000 */ nop -/* 0578D4 80056CD4 E7A80084 */ swc1 $f8, 0x84($sp) -/* 0578D8 80056CD8 46000306 */ mov.s $f12, $f0 -/* 0578DC 80056CDC 00604025 */ move $t0, $v1 -.L80056CE0: -/* 0578E0 80056CE0 8CC40004 */ lw $a0, 4($a2) -/* 0578E4 80056CE4 00000000 */ nop -/* 0578E8 80056CE8 12240039 */ beq $s1, $a0, .L80056DD0 -/* 0578EC 80056CEC 00000000 */ nop -/* 0578F0 80056CF0 8C850064 */ lw $a1, 0x64($a0) -/* 0578F4 80056CF4 11400005 */ beqz $t2, .L80056D0C -/* 0578F8 80056CF8 00801825 */ move $v1, $a0 -/* 0578FC 80056CFC 80B901D8 */ lb $t9, 0x1d8($a1) -/* 057900 80056D00 00000000 */ nop -/* 057904 80056D04 17200032 */ bnez $t9, .L80056DD0 -/* 057908 80056D08 00000000 */ nop -.L80056D0C: -/* 05790C 80056D0C 820C0212 */ lb $t4, 0x212($s0) -/* 057910 80056D10 80AE0212 */ lb $t6, 0x212($a1) -/* 057914 80056D14 00000000 */ nop -/* 057918 80056D18 158E002D */ bne $t4, $t6, .L80056DD0 -/* 05791C 80056D1C 00000000 */ nop -/* 057920 80056D20 C46A000C */ lwc1 $f10, 0xc($v1) -/* 057924 80056D24 C4660010 */ lwc1 $f6, 0x10($v1) -/* 057928 80056D28 46105102 */ mul.s $f4, $f10, $f16 -/* 05792C 80056D2C 00000000 */ nop -/* 057930 80056D30 46069202 */ mul.s $f8, $f18, $f6 -/* 057934 80056D34 C4660014 */ lwc1 $f6, 0x14($v1) -/* 057938 80056D38 46082280 */ add.s $f10, $f4, $f8 -/* 05793C 80056D3C 4606A102 */ mul.s $f4, $f20, $f6 -/* 057940 80056D40 46045200 */ add.s $f8, $f10, $f4 -/* 057944 80056D44 461A4180 */ add.s $f6, $f8, $f26 -/* 057948 80056D48 46003287 */ neg.s $f10, $f6 -/* 05794C 80056D4C 460A703C */ c.lt.s $f14, $f10 -/* 057950 80056D50 E7AA00AC */ swc1 $f10, 0xac($sp) -/* 057954 80056D54 4500001E */ bc1f .L80056DD0 -/* 057958 80056D58 00000000 */ nop -/* 05795C 80056D5C C464000C */ lwc1 $f4, 0xc($v1) -/* 057960 80056D60 C4660010 */ lwc1 $f6, 0x10($v1) -/* 057964 80056D64 46162202 */ mul.s $f8, $f4, $f22 -/* 057968 80056D68 24010008 */ li $at, 8 -/* 05796C 80056D6C 4606E282 */ mul.s $f10, $f28, $f6 -/* 057970 80056D70 C4660014 */ lwc1 $f6, 0x14($v1) -/* 057974 80056D74 460A4100 */ add.s $f4, $f8, $f10 -/* 057978 80056D78 4606C202 */ mul.s $f8, $f24, $f6 -/* 05797C 80056D7C C7A600AC */ lwc1 $f6, 0xac($sp) -/* 057980 80056D80 46082280 */ add.s $f10, $f4, $f8 -/* 057984 80056D84 461E5080 */ add.s $f2, $f10, $f30 -/* 057988 80056D88 460E103C */ c.lt.s $f2, $f14 -/* 05798C 80056D8C 46001006 */ mov.s $f0, $f2 -/* 057990 80056D90 45000002 */ bc1f .L80056D9C -/* 057994 80056D94 00000000 */ nop -/* 057998 80056D98 46001007 */ neg.s $f0, $f2 -.L80056D9C: -/* 05799C 80056D9C 4606003C */ c.lt.s $f0, $f6 -/* 0579A0 80056DA0 00000000 */ nop -/* 0579A4 80056DA4 45010003 */ bc1t .L80056DB4 -/* 0579A8 80056DA8 00000000 */ nop -/* 0579AC 80056DAC 15210008 */ bne $t1, $at, .L80056DD0 -/* 0579B0 80056DB0 00000000 */ nop -.L80056DB4: -/* 0579B4 80056DB4 460C003C */ c.lt.s $f0, $f12 -/* 0579B8 80056DB8 C7A400AC */ lwc1 $f4, 0xac($sp) -/* 0579BC 80056DBC 45000004 */ bc1f .L80056DD0 -/* 0579C0 80056DC0 00000000 */ nop -/* 0579C4 80056DC4 E7A40084 */ swc1 $f4, 0x84($sp) -/* 0579C8 80056DC8 46000306 */ mov.s $f12, $f0 -/* 0579CC 80056DCC 00604025 */ move $t0, $v1 -.L80056DD0: -/* 0579D0 80056DD0 14EBFF85 */ bne $a3, $t3, .L80056BE8 -/* 0579D4 80056DD4 24C60008 */ addiu $a2, $a2, 8 -.L80056DD8: -/* 0579D8 80056DD8 C7A80084 */ lwc1 $f8, 0x84($sp) -/* 0579DC 80056DDC 8FAF00C0 */ lw $t7, 0xc0($sp) -/* 0579E0 80056DE0 01001025 */ move $v0, $t0 -/* 0579E4 80056DE4 E5E80000 */ swc1 $f8, ($t7) -.L80056DE8: -/* 0579E8 80056DE8 8FBF004C */ lw $ra, 0x4c($sp) -/* 0579EC 80056DEC C7B50010 */ lwc1 $f21, 0x10($sp) -/* 0579F0 80056DF0 C7B40014 */ lwc1 $f20, 0x14($sp) -/* 0579F4 80056DF4 C7B70018 */ lwc1 $f23, 0x18($sp) -/* 0579F8 80056DF8 C7B6001C */ lwc1 $f22, 0x1c($sp) -/* 0579FC 80056DFC C7B90020 */ lwc1 $f25, 0x20($sp) -/* 057A00 80056E00 C7B80024 */ lwc1 $f24, 0x24($sp) -/* 057A04 80056E04 C7BB0028 */ lwc1 $f27, 0x28($sp) -/* 057A08 80056E08 C7BA002C */ lwc1 $f26, 0x2c($sp) -/* 057A0C 80056E0C C7BD0030 */ lwc1 $f29, 0x30($sp) -/* 057A10 80056E10 C7BC0034 */ lwc1 $f28, 0x34($sp) -/* 057A14 80056E14 C7BF0038 */ lwc1 $f31, 0x38($sp) -/* 057A18 80056E18 C7BE003C */ lwc1 $f30, 0x3c($sp) -/* 057A1C 80056E1C 8FB00044 */ lw $s0, 0x44($sp) -/* 057A20 80056E20 8FB10048 */ lw $s1, 0x48($sp) -/* 057A24 80056E24 03E00008 */ jr $ra -/* 057A28 80056E28 27BD00B8 */ addiu $sp, $sp, 0xb8 - -glabel func_80056E2C -/* 057A2C 80056E2C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 057A30 80056E30 AFBF0014 */ sw $ra, 0x14($sp) -/* 057A34 80056E34 80AE0175 */ lb $t6, 0x175($a1) -/* 057A38 80056E38 00A03825 */ move $a3, $a1 -/* 057A3C 80056E3C 01C67823 */ subu $t7, $t6, $a2 -/* 057A40 80056E40 A0AF0175 */ sb $t7, 0x175($a1) -/* 057A44 80056E44 80B80175 */ lb $t8, 0x175($a1) -/* 057A48 80056E48 00000000 */ nop -/* 057A4C 80056E4C 07010003 */ bgez $t8, .L80056E5C -/* 057A50 80056E50 00000000 */ nop -/* 057A54 80056E54 10000078 */ b .L80057038 -/* 057A58 80056E58 A0A00175 */ sb $zero, 0x175($a1) -.L80056E5C: -/* 057A5C 80056E5C 8CE20140 */ lw $v0, 0x140($a3) -/* 057A60 80056E60 00000000 */ nop -/* 057A64 80056E64 14400003 */ bnez $v0, .L80056E74 -/* 057A68 80056E68 00000000 */ nop -/* 057A6C 80056E6C 10000072 */ b .L80057038 -/* 057A70 80056E70 A0E00175 */ sb $zero, 0x175($a3) -.L80056E74: -/* 057A74 80056E74 C444000C */ lwc1 $f4, 0xc($v0) -/* 057A78 80056E78 C486000C */ lwc1 $f6, 0xc($a0) -/* 057A7C 80056E7C C4480014 */ lwc1 $f8, 0x14($v0) -/* 057A80 80056E80 46062381 */ sub.s $f14, $f4, $f6 -/* 057A84 80056E84 C48A0014 */ lwc1 $f10, 0x14($a0) -/* 057A88 80056E88 460E7482 */ mul.s $f18, $f14, $f14 -/* 057A8C 80056E8C 460A4401 */ sub.s $f16, $f8, $f10 -/* 057A90 80056E90 E7AE0024 */ swc1 $f14, 0x24($sp) -/* 057A94 80056E94 E7B00020 */ swc1 $f16, 0x20($sp) -/* 057A98 80056E98 46108102 */ mul.s $f4, $f16, $f16 -/* 057A9C 80056E9C AFA7002C */ sw $a3, 0x2c($sp) -/* 057AA0 80056EA0 0C0326B4 */ jal sqrtf -/* 057AA4 80056EA4 46049300 */ add.s $f12, $f18, $f4 -/* 057AA8 80056EA8 3C014316 */ li $at, 0x43160000 # 150.000000 -/* 057AAC 80056EAC 44813000 */ mtc1 $at, $f6 -/* 057AB0 80056EB0 8FA7002C */ lw $a3, 0x2c($sp) -/* 057AB4 80056EB4 4600303C */ c.lt.s $f6, $f0 -/* 057AB8 80056EB8 C7AE0024 */ lwc1 $f14, 0x24($sp) -/* 057ABC 80056EBC C7B00020 */ lwc1 $f16, 0x20($sp) -/* 057AC0 80056EC0 45000028 */ bc1f .L80056F64 -/* 057AC4 80056EC4 46000086 */ mov.s $f2, $f0 -/* 057AC8 80056EC8 3C0144FA */ li $at, 0x44FA0000 # 2000.000000 -/* 057ACC 80056ECC 44814000 */ mtc1 $at, $f8 -/* 057AD0 80056ED0 00000000 */ nop -/* 057AD4 80056ED4 4608003C */ c.lt.s $f0, $f8 -/* 057AD8 80056ED8 00000000 */ nop -/* 057ADC 80056EDC 45000021 */ bc1f .L80056F64 -/* 057AE0 80056EE0 00000000 */ nop -/* 057AE4 80056EE4 84F90000 */ lh $t9, ($a3) -/* 057AE8 80056EE8 2401FFFF */ li $at, -1 -/* 057AEC 80056EEC 13210002 */ beq $t9, $at, .L80056EF8 -/* 057AF0 80056EF0 24080003 */ li $t0, 3 -/* 057AF4 80056EF4 A0E801D3 */ sb $t0, 0x1d3($a3) -.L80056EF8: -/* 057AF8 80056EF8 90E9020C */ lbu $t1, 0x20c($a3) -/* 057AFC 80056EFC A0E00203 */ sb $zero, 0x203($a3) -/* 057B00 80056F00 11200005 */ beqz $t1, .L80056F18 -/* 057B04 80056F04 00000000 */ nop -/* 057B08 80056F08 80EA0203 */ lb $t2, 0x203($a3) -/* 057B0C 80056F0C 00000000 */ nop -/* 057B10 80056F10 354B0004 */ ori $t3, $t2, 4 -/* 057B14 80056F14 A0EB0203 */ sb $t3, 0x203($a3) -.L80056F18: -/* 057B18 80056F18 8CEC0178 */ lw $t4, 0x178($a3) -/* 057B1C 80056F1C 00000000 */ nop -/* 057B20 80056F20 15800012 */ bnez $t4, .L80056F6C -/* 057B24 80056F24 00000000 */ nop -/* 057B28 80056F28 80ED01D8 */ lb $t5, 0x1d8($a3) -/* 057B2C 80056F2C 2404013A */ li $a0, 314 -/* 057B30 80056F30 15A0000E */ bnez $t5, .L80056F6C -/* 057B34 80056F34 24E50178 */ addiu $a1, $a3, 0x178 -/* 057B38 80056F38 AFA7002C */ sw $a3, 0x2c($sp) -/* 057B3C 80056F3C E7A2001C */ swc1 $f2, 0x1c($sp) -/* 057B40 80056F40 E7AE0024 */ swc1 $f14, 0x24($sp) -/* 057B44 80056F44 0C000741 */ jal func_80001D04 -/* 057B48 80056F48 E7B00020 */ swc1 $f16, 0x20($sp) -/* 057B4C 80056F4C 8FA7002C */ lw $a3, 0x2c($sp) -/* 057B50 80056F50 C7A2001C */ lwc1 $f2, 0x1c($sp) -/* 057B54 80056F54 C7AE0024 */ lwc1 $f14, 0x24($sp) -/* 057B58 80056F58 C7B00020 */ lwc1 $f16, 0x20($sp) -/* 057B5C 80056F5C 10000004 */ b .L80056F70 -/* 057B60 80056F60 8CEE0140 */ lw $t6, 0x140($a3) -.L80056F64: -/* 057B64 80056F64 10000034 */ b .L80057038 -/* 057B68 80056F68 A0E00175 */ sb $zero, 0x175($a3) -.L80056F6C: -/* 057B6C 80056F6C 8CEE0140 */ lw $t6, 0x140($a3) -.L80056F70: -/* 057B70 80056F70 46027383 */ div.s $f14, $f14, $f2 -/* 057B74 80056F74 8DC20064 */ lw $v0, 0x64($t6) -/* 057B78 80056F78 3C014020 */ li $at, 0x40200000 # 2.500000 -/* 057B7C 80056F7C 44815800 */ mtc1 $at, $f11 -/* 057B80 80056F80 44805000 */ mtc1 $zero, $f10 -/* 057B84 80056F84 44809000 */ mtc1 $zero, $f18 -/* 057B88 80056F88 46028403 */ div.s $f16, $f16, $f2 -/* 057B8C 80056F8C C442002C */ lwc1 $f2, 0x2c($v0) -/* 057B90 80056F90 00000000 */ nop -/* 057B94 80056F94 46001087 */ neg.s $f2, $f2 -/* 057B98 80056F98 46001021 */ cvt.d.s $f0, $f2 -/* 057B9C 80056F9C 462A003C */ c.lt.d $f0, $f10 -/* 057BA0 80056FA0 00000000 */ nop -/* 057BA4 80056FA4 45000009 */ bc1f .L80056FCC -/* 057BA8 80056FA8 3C014034 */ lui $at, 0x4034 -/* 057BAC 80056FAC 80EF0195 */ lb $t7, 0x195($a3) -/* 057BB0 80056FB0 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 057BB4 80056FB4 15E00004 */ bnez $t7, .L80056FC8 -/* 057BB8 80056FB8 00000000 */ nop -/* 057BBC 80056FBC 44811000 */ mtc1 $at, $f2 -/* 057BC0 80056FC0 00000000 */ nop -/* 057BC4 80056FC4 46001021 */ cvt.d.s $f0, $f2 -.L80056FC8: -/* 057BC8 80056FC8 3C014034 */ li $at, 0x40340000 # 2.812500 -.L80056FCC: -/* 057BCC 80056FCC 44819800 */ mtc1 $at, $f19 -/* 057BD0 80056FD0 3C0141A0 */ li $at, 0x41A00000 # 20.000000 -/* 057BD4 80056FD4 4620903C */ c.lt.d $f18, $f0 -/* 057BD8 80056FD8 00000000 */ nop -/* 057BDC 80056FDC 45000003 */ bc1f .L80056FEC -/* 057BE0 80056FE0 00000000 */ nop -/* 057BE4 80056FE4 44811000 */ mtc1 $at, $f2 -/* 057BE8 80056FE8 00000000 */ nop -.L80056FEC: -/* 057BEC 80056FEC 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 057BF0 80056FF0 44812000 */ mtc1 $at, $f4 -/* 057BF4 80056FF4 3C018012 */ lui $at, %hi(D_8011D578) # $at, 0x8012 -/* 057BF8 80056FF8 46041000 */ add.s $f0, $f2, $f4 -/* 057BFC 80056FFC 460E0182 */ mul.s $f6, $f0, $f14 -/* 057C00 80057000 00000000 */ nop -/* 057C04 80057004 46100202 */ mul.s $f8, $f0, $f16 -/* 057C08 80057008 E426D578 */ swc1 $f6, %lo(D_8011D578)($at) -/* 057C0C 8005700C 3C018012 */ lui $at, %hi(D_8011D57C) # $at, 0x8012 -/* 057C10 80057010 E428D57C */ swc1 $f8, %lo(D_8011D57C)($at) -/* 057C14 80057014 8458018E */ lh $t8, 0x18e($v0) -/* 057C18 80057018 00000000 */ nop -/* 057C1C 8005701C 13000006 */ beqz $t8, .L80057038 -/* 057C20 80057020 00000000 */ nop -/* 057C24 80057024 80F90195 */ lb $t9, 0x195($a3) -/* 057C28 80057028 00000000 */ nop -/* 057C2C 8005702C 17200003 */ bnez $t9, .L8005703C -/* 057C30 80057030 8FBF0014 */ lw $ra, 0x14($sp) -/* 057C34 80057034 A0E00175 */ sb $zero, 0x175($a3) -.L80057038: -/* 057C38 80057038 8FBF0014 */ lw $ra, 0x14($sp) -.L8005703C: -/* 057C3C 8005703C 27BD0028 */ addiu $sp, $sp, 0x28 -/* 057C40 80057040 03E00008 */ jr $ra -/* 057C44 80057044 00000000 */ nop - -glabel func_80057048 -/* 057C48 80057048 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 057C4C 8005704C 3C0F8012 */ lui $t7, %hi(D_8011D55C) # $t7, 0x8012 -/* 057C50 80057050 8DEFD55C */ lw $t7, %lo(D_8011D55C)($t7) -/* 057C54 80057054 AFBF001C */ sw $ra, 0x1c($sp) -/* 057C58 80057058 AFA40020 */ sw $a0, 0x20($sp) -/* 057C5C 8005705C AFA50024 */ sw $a1, 0x24($sp) -/* 057C60 80057060 8C820064 */ lw $v0, 0x64($a0) -/* 057C64 80057064 2401FFFF */ li $at, -1 -/* 057C68 80057068 11E1000A */ beq $t7, $at, .L80057094 -/* 057C6C 8005706C 00807025 */ move $t6, $a0 -/* 057C70 80057070 8C580108 */ lw $t8, 0x108($v0) -/* 057C74 80057074 97A40026 */ lhu $a0, 0x26($sp) -/* 057C78 80057078 17000007 */ bnez $t8, .L80057098 -/* 057C7C 8005707C 8FBF001C */ lw $ra, 0x1c($sp) -/* 057C80 80057080 8DC5000C */ lw $a1, 0xc($t6) -/* 057C84 80057084 8DC60010 */ lw $a2, 0x10($t6) -/* 057C88 80057088 8DC70014 */ lw $a3, 0x14($t6) -/* 057C8C 8005708C 0C0007AA */ jal func_80001EA8 -/* 057C90 80057090 AFA00010 */ sw $zero, 0x10($sp) -.L80057094: -/* 057C94 80057094 8FBF001C */ lw $ra, 0x1c($sp) -.L80057098: -/* 057C98 80057098 27BD0020 */ addiu $sp, $sp, 0x20 -/* 057C9C 8005709C 03E00008 */ jr $ra -/* 057CA0 800570A0 00000000 */ nop - -glabel func_800570A4 -/* 057CA4 800570A4 8C820064 */ lw $v0, 0x64($a0) -/* 057CA8 800570A8 00000000 */ nop -/* 057CAC 800570AC A445020E */ sh $a1, 0x20e($v0) -/* 057CB0 800570B0 03E00008 */ jr $ra -/* 057CB4 800570B4 A0460210 */ sb $a2, 0x210($v0) - -glabel func_800570B8 -/* 057CB8 800570B8 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 057CBC 800570BC AFBF002C */ sw $ra, 0x2c($sp) -/* 057CC0 800570C0 AFB30028 */ sw $s3, 0x28($sp) -/* 057CC4 800570C4 AFB20024 */ sw $s2, 0x24($sp) -/* 057CC8 800570C8 AFB10020 */ sw $s1, 0x20($sp) -/* 057CCC 800570CC AFB0001C */ sw $s0, 0x1c($sp) -/* 057CD0 800570D0 AFA40038 */ sw $a0, 0x38($sp) -/* 057CD4 800570D4 AFA60040 */ sw $a2, 0x40($sp) -/* 057CD8 800570D8 8C920064 */ lw $s2, 0x64($a0) -/* 057CDC 800570DC 00E08025 */ move $s0, $a3 -/* 057CE0 800570E0 8E4F0108 */ lw $t7, 0x108($s2) -/* 057CE4 800570E4 00A09825 */ move $s3, $a1 -/* 057CE8 800570E8 15E00046 */ bnez $t7, .L80057204 -/* 057CEC 800570EC 30F80080 */ andi $t8, $a3, 0x80 -/* 057CF0 800570F0 13000004 */ beqz $t8, .L80057104 -/* 057CF4 800570F4 3C198012 */ lui $t9, %hi(D_8011D55C) # $t9, 0x8012 -/* 057CF8 800570F8 8F39D55C */ lw $t9, %lo(D_8011D55C)($t9) -/* 057CFC 800570FC 2401FFFF */ li $at, -1 -/* 057D00 80057100 13210040 */ beq $t9, $at, .L80057204 -.L80057104: -/* 057D04 80057104 24010002 */ li $at, 2 -/* 057D08 80057108 1601000C */ bne $s0, $at, .L8005713C -/* 057D0C 8005710C 00000000 */ nop -/* 057D10 80057110 8E440024 */ lw $a0, 0x24($s2) -/* 057D14 80057114 00000000 */ nop -/* 057D18 80057118 10800008 */ beqz $a0, .L8005713C -/* 057D1C 8005711C 00000000 */ nop -/* 057D20 80057120 9649002A */ lhu $t1, 0x2a($s2) -/* 057D24 80057124 00000000 */ nop -/* 057D28 80057128 12690004 */ beq $s3, $t1, .L8005713C -/* 057D2C 8005712C 00000000 */ nop -/* 057D30 80057130 0C0025BE */ jal func_800096F8 -/* 057D34 80057134 00000000 */ nop -/* 057D38 80057138 AE400024 */ sw $zero, 0x24($s2) -.L8005713C: -/* 057D3C 8005713C 8E4A0024 */ lw $t2, 0x24($s2) -/* 057D40 80057140 24010003 */ li $at, 3 -/* 057D44 80057144 15400030 */ bnez $t2, .L80057208 -/* 057D48 80057148 8FBF002C */ lw $ra, 0x2c($sp) -/* 057D4C 8005714C 16010005 */ bne $s0, $at, .L80057164 -/* 057D50 80057150 00002025 */ move $a0, $zero -/* 057D54 80057154 0C01BE53 */ jal func_8006F94C -/* 057D58 80057158 24050001 */ li $a1, 1 -/* 057D5C 8005715C 1040002A */ beqz $v0, .L80057208 -/* 057D60 80057160 8FBF002C */ lw $ra, 0x2c($sp) -.L80057164: -/* 057D64 80057164 A653002A */ sh $s3, 0x2a($s2) -/* 057D68 80057168 8FB10040 */ lw $s1, 0x40($sp) -/* 057D6C 8005716C 824B0003 */ lb $t3, 3($s2) -/* 057D70 80057170 2631FFFF */ addiu $s1, $s1, -1 -/* 057D74 80057174 02202825 */ move $a1, $s1 -/* 057D78 80057178 00002025 */ move $a0, $zero -/* 057D7C 8005717C 0C01BE53 */ jal func_8006F94C -/* 057D80 80057180 026B9821 */ addu $s3, $s3, $t3 -/* 057D84 80057184 2410000C */ li $s0, 12 -/* 057D88 80057188 00500019 */ multu $v0, $s0 -/* 057D8C 8005718C 00006012 */ mflo $t4 -/* 057D90 80057190 01931821 */ addu $v1, $t4, $s3 -/* 057D94 80057194 1A20000D */ blez $s1, .L800571CC -/* 057D98 80057198 00604025 */ move $t0, $v1 -/* 057D9C 8005719C 964D0028 */ lhu $t5, 0x28($s2) -/* 057DA0 800571A0 00000000 */ nop -/* 057DA4 800571A4 146D0009 */ bne $v1, $t5, .L800571CC -/* 057DA8 800571A8 00002025 */ move $a0, $zero -.L800571AC: -/* 057DAC 800571AC 0C01BE53 */ jal func_8006F94C -/* 057DB0 800571B0 02202825 */ move $a1, $s1 -/* 057DB4 800571B4 00500019 */ multu $v0, $s0 -/* 057DB8 800571B8 964F0028 */ lhu $t7, 0x28($s2) -/* 057DBC 800571BC 00007012 */ mflo $t6 -/* 057DC0 800571C0 01D34021 */ addu $t0, $t6, $s3 -/* 057DC4 800571C4 110FFFF9 */ beq $t0, $t7, .L800571AC -/* 057DC8 800571C8 00002025 */ move $a0, $zero -.L800571CC: -/* 057DCC 800571CC 8FB80038 */ lw $t8, 0x38($sp) -/* 057DD0 800571D0 24190004 */ li $t9, 4 -/* 057DD4 800571D4 8F05000C */ lw $a1, 0xc($t8) -/* 057DD8 800571D8 8F060010 */ lw $a2, 0x10($t8) -/* 057DDC 800571DC 8F070014 */ lw $a3, 0x14($t8) -/* 057DE0 800571E0 26490024 */ addiu $t1, $s2, 0x24 -/* 057DE4 800571E4 AFA90014 */ sw $t1, 0x14($sp) -/* 057DE8 800571E8 AFA80034 */ sw $t0, 0x34($sp) -/* 057DEC 800571EC AFB90010 */ sw $t9, 0x10($sp) -/* 057DF0 800571F0 0C002556 */ jal func_80009558 -/* 057DF4 800571F4 3104FFFF */ andi $a0, $t0, 0xffff -/* 057DF8 800571F8 8FA80034 */ lw $t0, 0x34($sp) -/* 057DFC 800571FC 00000000 */ nop -/* 057E00 80057200 A6480028 */ sh $t0, 0x28($s2) -.L80057204: -/* 057E04 80057204 8FBF002C */ lw $ra, 0x2c($sp) -.L80057208: -/* 057E08 80057208 8FB0001C */ lw $s0, 0x1c($sp) -/* 057E0C 8005720C 8FB10020 */ lw $s1, 0x20($sp) -/* 057E10 80057210 8FB20024 */ lw $s2, 0x24($sp) -/* 057E14 80057214 8FB30028 */ lw $s3, 0x28($sp) -/* 057E18 80057218 03E00008 */ jr $ra -/* 057E1C 8005721C 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_80057220 -/* 057E20 80057220 3C0E8012 */ lui $t6, %hi(D_8011D540) # $t6, 0x8012 -/* 057E24 80057224 8DCED540 */ lw $t6, %lo(D_8011D540)($t6) -/* 057E28 80057228 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 057E2C 8005722C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 057E30 80057230 AFB00018 */ sw $s0, 0x18($sp) -/* 057E34 80057234 44810000 */ mtc1 $at, $f0 -/* 057E38 80057238 00A08025 */ move $s0, $a1 -/* 057E3C 8005723C AFBF001C */ sw $ra, 0x1c($sp) -/* 057E40 80057240 11C00003 */ beqz $t6, .L80057250 -/* 057E44 80057244 AFA40040 */ sw $a0, 0x40($sp) -/* 057E48 80057248 44800000 */ mtc1 $zero, $f0 -/* 057E4C 8005724C 00000000 */ nop -.L80057250: -/* 057E50 80057250 0C0044EB */ jal func_800113AC -/* 057E54 80057254 E7A0003C */ swc1 $f0, 0x3c($sp) -/* 057E58 80057258 3C048012 */ lui $a0, %hi(D_8011D540) # $a0, 0x8012 -/* 057E5C 8005725C 8C84D540 */ lw $a0, %lo(D_8011D540)($a0) -/* 057E60 80057260 AFA20028 */ sw $v0, 0x28($sp) -/* 057E64 80057264 18800072 */ blez $a0, .L80057430 -/* 057E68 80057268 2881001E */ slti $at, $a0, 0x1e -/* 057E6C 8005726C 10200070 */ beqz $at, .L80057430 -/* 057E70 80057270 00000000 */ nop -/* 057E74 80057274 920F01F4 */ lbu $t7, 0x1f4($s0) -/* 057E78 80057278 3C188012 */ lui $t8, %hi(D_8011D52C) # $t8, 0x8012 -/* 057E7C 8005727C 15E0006C */ bnez $t7, .L80057430 -/* 057E80 80057280 00000000 */ nop -/* 057E84 80057284 8F18D52C */ lw $t8, %lo(D_8011D52C)($t8) -/* 057E88 80057288 2483FFF2 */ addiu $v1, $a0, -0xe -/* 057E8C 8005728C 33198000 */ andi $t9, $t8, 0x8000 -/* 057E90 80057290 1320003C */ beqz $t9, .L80057384 -/* 057E94 80057294 3C088012 */ lui $t0, %hi(D_8011D528) # $t0, 0x8012 -/* 057E98 80057298 04610004 */ bgez $v1, .L800572AC -/* 057E9C 8005729C 240A0018 */ li $t2, 24 -/* 057EA0 800572A0 04400002 */ bltz $v0, .L800572AC -/* 057EA4 800572A4 00000000 */ nop -/* 057EA8 800572A8 00001825 */ move $v1, $zero -.L800572AC: -/* 057EAC 800572AC 04610002 */ bgez $v1, .L800572B8 -/* 057EB0 800572B0 00000000 */ nop -/* 057EB4 800572B4 00031823 */ negu $v1, $v1 -.L800572B8: -/* 057EB8 800572B8 8D08D528 */ lw $t0, %lo(D_8011D528)($t0) -/* 057EBC 800572BC 28610002 */ slti $at, $v1, 2 -/* 057EC0 800572C0 31092000 */ andi $t1, $t0, 0x2000 -/* 057EC4 800572C4 11200005 */ beqz $t1, .L800572DC -/* 057EC8 800572C8 01432823 */ subu $a1, $t2, $v1 -/* 057ECC 800572CC 10200003 */ beqz $at, .L800572DC -/* 057ED0 800572D0 01432823 */ subu $a1, $t2, $v1 -/* 057ED4 800572D4 00001825 */ move $v1, $zero -/* 057ED8 800572D8 01432823 */ subu $a1, $t2, $v1 -.L800572DC: -/* 057EDC 800572DC 00052043 */ sra $a0, $a1, 1 -/* 057EE0 800572E0 0C00322D */ jal func_8000C8B4 -/* 057EE4 800572E4 AFA50024 */ sw $a1, 0x24($sp) -/* 057EE8 800572E8 8FA50024 */ lw $a1, 0x24($sp) -/* 057EEC 800572EC 24010018 */ li $at, 24 -/* 057EF0 800572F0 14A10007 */ bne $a1, $at, .L80057310 -/* 057EF4 800572F4 A20201D3 */ sb $v0, 0x1d3($s0) -/* 057EF8 800572F8 8FA40040 */ lw $a0, 0x40($sp) -/* 057EFC 800572FC 0C015C12 */ jal func_80057048 -/* 057F00 80057300 24050022 */ li $a1, 34 -/* 057F04 80057304 0C00322D */ jal func_8000C8B4 -/* 057F08 80057308 24040014 */ li $a0, 20 -/* 057F0C 8005730C A20201D3 */ sb $v0, 0x1d3($s0) -.L80057310: -/* 057F10 80057310 0C00322D */ jal func_8000C8B4 -/* 057F14 80057314 24040014 */ li $a0, 20 -/* 057F18 80057318 820B01D3 */ lb $t3, 0x1d3($s0) -/* 057F1C 8005731C 00000000 */ nop -/* 057F20 80057320 0162082A */ slt $at, $t3, $v0 -/* 057F24 80057324 10200003 */ beqz $at, .L80057334 -/* 057F28 80057328 00000000 */ nop -/* 057F2C 8005732C 1000000B */ b .L8005735C -/* 057F30 80057330 A2000203 */ sb $zero, 0x203($s0) -.L80057334: -/* 057F34 80057334 0C00322D */ jal func_8000C8B4 -/* 057F38 80057338 24040023 */ li $a0, 35 -/* 057F3C 8005733C 820C01D3 */ lb $t4, 0x1d3($s0) -/* 057F40 80057340 240D0001 */ li $t5, 1 -/* 057F44 80057344 0182082A */ slt $at, $t4, $v0 -/* 057F48 80057348 10200003 */ beqz $at, .L80057358 -/* 057F4C 8005734C 240E0002 */ li $t6, 2 -/* 057F50 80057350 10000002 */ b .L8005735C -/* 057F54 80057354 A20D0203 */ sb $t5, 0x203($s0) -.L80057358: -/* 057F58 80057358 A20E0203 */ sb $t6, 0x203($s0) -.L8005735C: -/* 057F5C 8005735C 920F01EF */ lbu $t7, 0x1ef($s0) -/* 057F60 80057360 24190007 */ li $t9, 7 -/* 057F64 80057364 35F80001 */ ori $t8, $t7, 1 -/* 057F68 80057368 A21801EF */ sb $t8, 0x1ef($s0) -/* 057F6C 8005736C 3C018012 */ lui $at, %hi(D_8011D560) # $at, 0x8012 -/* 057F70 80057370 A439D560 */ sh $t9, %lo(D_8011D560)($at) -/* 057F74 80057374 820801D3 */ lb $t0, 0x1d3($s0) -/* 057F78 80057378 3C038012 */ lui $v1, %hi(D_8011D585) # $v1, 0x8012 -/* 057F7C 8005737C 2463D585 */ addiu $v1, %lo(D_8011D585) # addiu $v1, $v1, -0x2a7b -/* 057F80 80057380 A0680000 */ sb $t0, ($v1) -.L80057384: -/* 057F84 80057384 86090000 */ lh $t1, ($s0) -/* 057F88 80057388 3C038012 */ lui $v1, %hi(D_8011D585) # $v1, 0x8012 -/* 057F8C 8005738C 2401FFFF */ li $at, -1 -/* 057F90 80057390 15210027 */ bne $t1, $at, .L80057430 -/* 057F94 80057394 2463D585 */ addiu $v1, %lo(D_8011D585) # addiu $v1, $v1, -0x2a7b -/* 057F98 80057398 820201CC */ lb $v0, 0x1cc($s0) -/* 057F9C 8005739C 24010001 */ li $at, 1 -/* 057FA0 800573A0 10400007 */ beqz $v0, .L800573C0 -/* 057FA4 800573A4 00000000 */ nop -/* 057FA8 800573A8 14410021 */ bne $v0, $at, .L80057430 -/* 057FAC 800573AC 00000000 */ nop -/* 057FB0 800573B0 806A0000 */ lb $t2, ($v1) -/* 057FB4 800573B4 00000000 */ nop -/* 057FB8 800573B8 1140001D */ beqz $t2, .L80057430 -/* 057FBC 800573BC 00000000 */ nop -.L800573C0: -/* 057FC0 800573C0 80620000 */ lb $v0, ($v1) -/* 057FC4 800573C4 00000000 */ nop -/* 057FC8 800573C8 10400003 */ beqz $v0, .L800573D8 -/* 057FCC 800573CC 00000000 */ nop -/* 057FD0 800573D0 10000004 */ b .L800573E4 -/* 057FD4 800573D4 A20201D3 */ sb $v0, 0x1d3($s0) -.L800573D8: -/* 057FD8 800573D8 0C00322D */ jal func_8000C8B4 -/* 057FDC 800573DC 24040005 */ li $a0, 5 -/* 057FE0 800573E0 A20201D3 */ sb $v0, 0x1d3($s0) -.L800573E4: -/* 057FE4 800573E4 0C00322D */ jal func_8000C8B4 -/* 057FE8 800573E8 24040014 */ li $a0, 20 -/* 057FEC 800573EC 820B01D3 */ lb $t3, 0x1d3($s0) -/* 057FF0 800573F0 00000000 */ nop -/* 057FF4 800573F4 0162082A */ slt $at, $t3, $v0 -/* 057FF8 800573F8 10200003 */ beqz $at, .L80057408 -/* 057FFC 800573FC 00000000 */ nop -/* 058000 80057400 1000000B */ b .L80057430 -/* 058004 80057404 A2000203 */ sb $zero, 0x203($s0) -.L80057408: -/* 058008 80057408 0C00322D */ jal func_8000C8B4 -/* 05800C 8005740C 24040023 */ li $a0, 35 -/* 058010 80057410 820C01D3 */ lb $t4, 0x1d3($s0) -/* 058014 80057414 240D0001 */ li $t5, 1 -/* 058018 80057418 0182082A */ slt $at, $t4, $v0 -/* 05801C 8005741C 10200003 */ beqz $at, .L8005742C -/* 058020 80057420 240E0002 */ li $t6, 2 -/* 058024 80057424 10000002 */ b .L80057430 -/* 058028 80057428 A20D0203 */ sb $t5, 0x203($s0) -.L8005742C: -/* 05802C 8005742C A20E0203 */ sb $t6, 0x203($s0) -.L80057430: -/* 058030 80057430 820F01D3 */ lb $t7, 0x1d3($s0) -/* 058034 80057434 3C048012 */ lui $a0, %hi(D_8011D540) # $a0, 0x8012 -/* 058038 80057438 8C84D540 */ lw $a0, %lo(D_8011D540)($a0) -/* 05803C 8005743C 11E00012 */ beqz $t7, .L80057488 -/* 058040 80057440 28810050 */ slti $at, $a0, 0x50 -/* 058044 80057444 14800010 */ bnez $a0, .L80057488 -/* 058048 80057448 28810050 */ slti $at, $a0, 0x50 -/* 05804C 8005744C 8FB80028 */ lw $t8, 0x28($sp) -/* 058050 80057450 00000000 */ nop -/* 058054 80057454 1300000C */ beqz $t8, .L80057488 -/* 058058 80057458 28810050 */ slti $at, $a0, 0x50 -/* 05805C 8005745C 821901D8 */ lb $t9, 0x1d8($s0) -/* 058060 80057460 00000000 */ nop -/* 058064 80057464 17200008 */ bnez $t9, .L80057488 -/* 058068 80057468 28810050 */ slti $at, $a0, 0x50 -/* 05806C 8005746C 86040000 */ lh $a0, ($s0) -/* 058070 80057470 0C01C8D2 */ jal func_80072348 -/* 058074 80057474 24050006 */ li $a1, 6 -/* 058078 80057478 3C048012 */ lui $a0, %hi(D_8011D540) # $a0, 0x8012 -/* 05807C 8005747C 8C84D540 */ lw $a0, %lo(D_8011D540)($a0) -/* 058080 80057480 00000000 */ nop -/* 058084 80057484 28810050 */ slti $at, $a0, 0x50 -.L80057488: -/* 058088 80057488 1020000A */ beqz $at, .L800574B4 -/* 05808C 8005748C 3C088012 */ lui $t0, %hi(D_8011D52C) # $t0, 0x8012 -/* 058090 80057490 8D08D52C */ lw $t0, %lo(D_8011D52C)($t0) -/* 058094 80057494 240A0001 */ li $t2, 1 -/* 058098 80057498 31098000 */ andi $t1, $t0, 0x8000 -/* 05809C 8005749C 11200005 */ beqz $t1, .L800574B4 -/* 0580A0 800574A0 00000000 */ nop -/* 0580A4 800574A4 A20A01F4 */ sb $t2, 0x1f4($s0) -/* 0580A8 800574A8 3C048012 */ lui $a0, %hi(D_8011D540) # $a0, 0x8012 -/* 0580AC 800574AC 8C84D540 */ lw $a0, %lo(D_8011D540)($a0) -/* 0580B0 800574B0 00000000 */ nop -.L800574B4: -/* 0580B4 800574B4 1480000E */ bnez $a0, .L800574F0 -/* 0580B8 800574B8 00000000 */ nop -/* 0580BC 800574BC 920201EF */ lbu $v0, 0x1ef($s0) -/* 0580C0 800574C0 24050162 */ li $a1, 354 -/* 0580C4 800574C4 304B0001 */ andi $t3, $v0, 1 -/* 0580C8 800574C8 11600009 */ beqz $t3, .L800574F0 -/* 0580CC 800574CC 304CFFFE */ andi $t4, $v0, 0xfffe -/* 0580D0 800574D0 A20C01EF */ sb $t4, 0x1ef($s0) -/* 0580D4 800574D4 8FA40040 */ lw $a0, 0x40($sp) -/* 0580D8 800574D8 24060008 */ li $a2, 8 -/* 0580DC 800574DC 0C015C2E */ jal func_800570B8 -/* 0580E0 800574E0 24070082 */ li $a3, 130 -/* 0580E4 800574E4 8FA40040 */ lw $a0, 0x40($sp) -/* 0580E8 800574E8 0C015C12 */ jal func_80057048 -/* 0580EC 800574EC 24050021 */ li $a1, 33 -.L800574F0: -/* 0580F0 800574F0 920201EF */ lbu $v0, 0x1ef($s0) -/* 0580F4 800574F4 2401FFFF */ li $at, -1 -/* 0580F8 800574F8 304D0002 */ andi $t5, $v0, 2 -/* 0580FC 800574FC 11A00002 */ beqz $t5, .L80057508 -/* 058100 80057500 304EFFFD */ andi $t6, $v0, 0xfffd -/* 058104 80057504 A20E01EF */ sb $t6, 0x1ef($s0) -.L80057508: -/* 058108 80057508 820F0185 */ lb $t7, 0x185($s0) -/* 05810C 8005750C 86180000 */ lh $t8, ($s0) -/* 058110 80057510 448F2000 */ mtc1 $t7, $f4 -/* 058114 80057514 17010004 */ bne $t8, $at, .L80057528 -/* 058118 80057518 468020A0 */ cvt.s.w $f2, $f4 -/* 05811C 8005751C C6020124 */ lwc1 $f2, 0x124($s0) -/* 058120 80057520 1000001F */ b .L800575A0 -/* 058124 80057524 3C0141A0 */ lui $at, 0x41a0 -.L80057528: -/* 058128 80057528 3C014024 */ li $at, 0x40240000 # 2.562500 -/* 05812C 8005752C 44813800 */ mtc1 $at, $f7 -/* 058130 80057530 44803000 */ mtc1 $zero, $f6 -/* 058134 80057534 46001221 */ cvt.d.s $f8, $f2 -/* 058138 80057538 4628303C */ c.lt.d $f6, $f8 -/* 05813C 8005753C 00000000 */ nop -/* 058140 80057540 45000009 */ bc1f .L80057568 -/* 058144 80057544 00000000 */ nop -/* 058148 80057548 0C0270C3 */ jal func_8009C30C -/* 05814C 8005754C E7A20034 */ swc1 $f2, 0x34($sp) -/* 058150 80057550 C7A20034 */ lwc1 $f2, 0x34($sp) -/* 058154 80057554 30594000 */ andi $t9, $v0, 0x4000 -/* 058158 80057558 17200003 */ bnez $t9, .L80057568 -/* 05815C 8005755C 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 058160 80057560 44811000 */ mtc1 $at, $f2 -/* 058164 80057564 00000000 */ nop -.L80057568: -/* 058168 80057568 0C0270C3 */ jal func_8009C30C -/* 05816C 8005756C E7A20034 */ swc1 $f2, 0x34($sp) -/* 058170 80057570 C7A20034 */ lwc1 $f2, 0x34($sp) -/* 058174 80057574 30482000 */ andi $t0, $v0, 0x2000 -/* 058178 80057578 11000009 */ beqz $t0, .L800575A0 -/* 05817C 8005757C 3C0141A0 */ lui $at, 0x41a0 -/* 058180 80057580 44805000 */ mtc1 $zero, $f10 -/* 058184 80057584 00000000 */ nop -/* 058188 80057588 4602503C */ c.lt.s $f10, $f2 -/* 05818C 8005758C 00000000 */ nop -/* 058190 80057590 45000003 */ bc1f .L800575A0 -/* 058194 80057594 3C0141A0 */ lui $at, 0x41a0 -/* 058198 80057598 46001087 */ neg.s $f2, $f2 -/* 05819C 8005759C 3C0141A0 */ li $at, 0x41A00000 # 20.000000 -.L800575A0: -/* 0581A0 800575A0 44816000 */ mtc1 $at, $f12 -/* 0581A4 800575A4 8FB00018 */ lw $s0, 0x18($sp) -/* 0581A8 800575A8 4602603C */ c.lt.s $f12, $f2 -/* 0581AC 800575AC 3C01800E */ lui $at, %hi(D_800E68CC) # $at, 0x800e -/* 0581B0 800575B0 45000002 */ bc1f .L800575BC -/* 0581B4 800575B4 46006007 */ neg.s $f0, $f12 -/* 0581B8 800575B8 46006086 */ mov.s $f2, $f12 -.L800575BC: -/* 0581BC 800575BC 4600103C */ c.lt.s $f2, $f0 -/* 0581C0 800575C0 00000000 */ nop -/* 0581C4 800575C4 45000002 */ bc1f .L800575D0 -/* 0581C8 800575C8 00000000 */ nop -/* 0581CC 800575CC 46000086 */ mov.s $f2, $f0 -.L800575D0: -/* 0581D0 800575D0 C43068CC */ lwc1 $f16, %lo(D_800E68CC)($at) -/* 0581D4 800575D4 C7AC003C */ lwc1 $f12, 0x3c($sp) -/* 0581D8 800575D8 46101482 */ mul.s $f18, $f2, $f16 -/* 0581DC 800575DC 8FBF001C */ lw $ra, 0x1c($sp) -/* 0581E0 800575E0 27BD0040 */ addiu $sp, $sp, 0x40 -/* 0581E4 800575E4 03E00008 */ jr $ra -/* 0581E8 800575E8 46126000 */ add.s $f0, $f12, $f18 - -glabel func_800575EC -/* 0581EC 800575EC 27BDFF88 */ addiu $sp, $sp, -0x78 -/* 0581F0 800575F0 AFB00030 */ sw $s0, 0x30($sp) -/* 0581F4 800575F4 00A08025 */ move $s0, $a1 -/* 0581F8 800575F8 AFBF0034 */ sw $ra, 0x34($sp) -/* 0581FC 800575FC E7B50028 */ swc1 $f21, 0x28($sp) -/* 058200 80057600 E7B4002C */ swc1 $f20, 0x2c($sp) -/* 058204 80057604 848E0000 */ lh $t6, ($a0) -/* 058208 80057608 3C058012 */ lui $a1, %hi(D_8011D510) # $a1, 0x8012 -/* 05820C 8005760C 24A5D510 */ addiu $a1, %lo(D_8011D510) # addiu $a1, $a1, -0x2af0 -/* 058210 80057610 A4AE0000 */ sh $t6, ($a1) -/* 058214 80057614 848F0002 */ lh $t7, 2($a0) -/* 058218 80057618 4480A000 */ mtc1 $zero, $f20 -/* 05821C 8005761C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 058220 80057620 44812000 */ mtc1 $at, $f4 -/* 058224 80057624 A4A00004 */ sh $zero, 4($a1) -/* 058228 80057628 27A40038 */ addiu $a0, $sp, 0x38 -/* 05822C 8005762C A4AF0002 */ sh $t7, 2($a1) -/* 058230 80057630 E4B4000C */ swc1 $f20, 0xc($a1) -/* 058234 80057634 E4B40010 */ swc1 $f20, 0x10($a1) -/* 058238 80057638 E4B40014 */ swc1 $f20, 0x14($a1) -/* 05823C 8005763C 0C01BF0C */ jal func_8006FC30 -/* 058240 80057640 E4A40008 */ swc1 $f4, 8($a1) -/* 058244 80057644 4405A000 */ mfc1 $a1, $f20 -/* 058248 80057648 4406A000 */ mfc1 $a2, $f20 -/* 05824C 8005764C 26180038 */ addiu $t8, $s0, 0x38 -/* 058250 80057650 2619003C */ addiu $t9, $s0, 0x3c -/* 058254 80057654 26080040 */ addiu $t0, $s0, 0x40 -/* 058258 80057658 AFA80018 */ sw $t0, 0x18($sp) -/* 05825C 8005765C AFB90014 */ sw $t9, 0x14($sp) -/* 058260 80057660 AFB80010 */ sw $t8, 0x10($sp) -/* 058264 80057664 27A40038 */ addiu $a0, $sp, 0x38 -/* 058268 80057668 0C01BD93 */ jal func_8006F64C -/* 05826C 8005766C 3C073F80 */ lui $a3, 0x3f80 -/* 058270 80057670 4405A000 */ mfc1 $a1, $f20 -/* 058274 80057674 4407A000 */ mfc1 $a3, $f20 -/* 058278 80057678 26090044 */ addiu $t1, $s0, 0x44 -/* 05827C 8005767C 260A0048 */ addiu $t2, $s0, 0x48 -/* 058280 80057680 260B004C */ addiu $t3, $s0, 0x4c -/* 058284 80057684 AFAB0018 */ sw $t3, 0x18($sp) -/* 058288 80057688 AFAA0014 */ sw $t2, 0x14($sp) -/* 05828C 8005768C AFA90010 */ sw $t1, 0x10($sp) -/* 058290 80057690 27A40038 */ addiu $a0, $sp, 0x38 -/* 058294 80057694 0C01BD93 */ jal func_8006F64C -/* 058298 80057698 3C063F80 */ lui $a2, 0x3f80 -/* 05829C 8005769C 4406A000 */ mfc1 $a2, $f20 -/* 0582A0 800576A0 4407A000 */ mfc1 $a3, $f20 -/* 0582A4 800576A4 260C0050 */ addiu $t4, $s0, 0x50 -/* 0582A8 800576A8 260D0054 */ addiu $t5, $s0, 0x54 -/* 0582AC 800576AC 260E0058 */ addiu $t6, $s0, 0x58 -/* 0582B0 800576B0 AFAE0018 */ sw $t6, 0x18($sp) -/* 0582B4 800576B4 AFAD0014 */ sw $t5, 0x14($sp) -/* 0582B8 800576B8 AFAC0010 */ sw $t4, 0x10($sp) -/* 0582BC 800576BC 27A40038 */ addiu $a0, $sp, 0x38 -/* 0582C0 800576C0 0C01BD93 */ jal func_8006F64C -/* 0582C4 800576C4 3C053F80 */ lui $a1, 0x3f80 -/* 0582C8 800576C8 8FBF0034 */ lw $ra, 0x34($sp) -/* 0582CC 800576CC C7B50028 */ lwc1 $f21, 0x28($sp) -/* 0582D0 800576D0 C7B4002C */ lwc1 $f20, 0x2c($sp) -/* 0582D4 800576D4 8FB00030 */ lw $s0, 0x30($sp) -/* 0582D8 800576D8 03E00008 */ jr $ra -/* 0582DC 800576DC 27BD0078 */ addiu $sp, $sp, 0x78 - -glabel func_800576E0 -/* 0582E0 800576E0 27BDFF70 */ addiu $sp, $sp, -0x90 -/* 0582E4 800576E4 AFBF005C */ sw $ra, 0x5c($sp) -/* 0582E8 800576E8 AFB20048 */ sw $s2, 0x48($sp) -/* 0582EC 800576EC AFB10044 */ sw $s1, 0x44($sp) -/* 0582F0 800576F0 AFB00040 */ sw $s0, 0x40($sp) -/* 0582F4 800576F4 00A08025 */ move $s0, $a1 -/* 0582F8 800576F8 00C08825 */ move $s1, $a2 -/* 0582FC 800576FC 00809025 */ move $s2, $a0 -/* 058300 80057700 AFB60058 */ sw $s6, 0x58($sp) -/* 058304 80057704 AFB50054 */ sw $s5, 0x54($sp) -/* 058308 80057708 AFB40050 */ sw $s4, 0x50($sp) -/* 05830C 8005770C AFB3004C */ sw $s3, 0x4c($sp) -/* 058310 80057710 E7BD0038 */ swc1 $f29, 0x38($sp) -/* 058314 80057714 E7BC003C */ swc1 $f28, 0x3c($sp) -/* 058318 80057718 E7BB0030 */ swc1 $f27, 0x30($sp) -/* 05831C 8005771C E7BA0034 */ swc1 $f26, 0x34($sp) -/* 058320 80057720 E7B90028 */ swc1 $f25, 0x28($sp) -/* 058324 80057724 E7B8002C */ swc1 $f24, 0x2c($sp) -/* 058328 80057728 E7B70020 */ swc1 $f23, 0x20($sp) -/* 05832C 8005772C E7B60024 */ swc1 $f22, 0x24($sp) -/* 058330 80057730 E7B50018 */ swc1 $f21, 0x18($sp) -/* 058334 80057734 0C0270C3 */ jal func_8009C30C -/* 058338 80057738 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 05833C 8005773C 304E0080 */ andi $t6, $v0, 0x80 -/* 058340 80057740 15C00088 */ bnez $t6, .L80057964 -/* 058344 80057744 8FBF005C */ lw $ra, 0x5c($sp) -/* 058348 80057748 82020185 */ lb $v0, 0x185($s0) -/* 05834C 8005774C A2000188 */ sb $zero, 0x188($s0) -/* 058350 80057750 0051082A */ slt $at, $v0, $s1 -/* 058354 80057754 10200002 */ beqz $at, .L80057760 -/* 058358 80057758 00000000 */ nop -/* 05835C 8005775C 00408825 */ move $s1, $v0 -.L80057760: -/* 058360 80057760 1A20007F */ blez $s1, .L80057960 -/* 058364 80057764 2A210003 */ slti $at, $s1, 3 -/* 058368 80057768 1020007D */ beqz $at, .L80057960 -/* 05836C 8005776C 24080008 */ li $t0, 8 -/* 058370 80057770 860F01A4 */ lh $t7, 0x1a4($s0) -/* 058374 80057774 2409000C */ li $t1, 12 -/* 058378 80057778 A7AF0078 */ sh $t7, 0x78($sp) -/* 05837C 8005777C 86580002 */ lh $t8, 2($s2) -/* 058380 80057780 27A40078 */ addiu $a0, $sp, 0x78 -/* 058384 80057784 A7B8007A */ sh $t8, 0x7a($sp) -/* 058388 80057788 861901A0 */ lh $t9, 0x1a0($s0) -/* 05838C 8005778C A7A00070 */ sh $zero, 0x70($sp) -/* 058390 80057790 A7A80072 */ sh $t0, 0x72($sp) -/* 058394 80057794 A7A90074 */ sh $t1, 0x74($sp) -/* 058398 80057798 27A50070 */ addiu $a1, $sp, 0x70 -/* 05839C 8005779C 0C01C079 */ jal func_800701E4 -/* 0583A0 800577A0 A7B9007C */ sh $t9, 0x7c($sp) -/* 0583A4 800577A4 444BF800 */ cfc1 $t3, $31 -/* 0583A8 800577A8 C644000C */ lwc1 $f4, 0xc($s2) -/* 0583AC 800577AC 35610003 */ ori $at, $t3, 3 -/* 0583B0 800577B0 38210002 */ xori $at, $at, 2 -/* 0583B4 800577B4 44C1F800 */ ctc1 $at, $31 -/* 0583B8 800577B8 87AA0070 */ lh $t2, 0x70($sp) -/* 0583BC 800577BC 460021A4 */ cvt.w.s $f6, $f4 -/* 0583C0 800577C0 87AE0072 */ lh $t6, 0x72($sp) -/* 0583C4 800577C4 44CBF800 */ ctc1 $t3, $31 -/* 0583C8 800577C8 440C3000 */ mfc1 $t4, $f6 -/* 0583CC 800577CC 87A80074 */ lh $t0, 0x74($sp) -/* 0583D0 800577D0 444FF800 */ cfc1 $t7, $31 -/* 0583D4 800577D4 014C6821 */ addu $t5, $t2, $t4 -/* 0583D8 800577D8 35E10003 */ ori $at, $t7, 3 -/* 0583DC 800577DC A7AD008A */ sh $t5, 0x8a($sp) -/* 0583E0 800577E0 38210002 */ xori $at, $at, 2 -/* 0583E4 800577E4 44C1F800 */ ctc1 $at, $31 -/* 0583E8 800577E8 C6480010 */ lwc1 $f8, 0x10($s2) -/* 0583EC 800577EC 240C0008 */ li $t4, 8 -/* 0583F0 800577F0 460042A4 */ cvt.w.s $f10, $f8 -/* 0583F4 800577F4 240D0053 */ li $t5, 83 -/* 0583F8 800577F8 44CFF800 */ ctc1 $t7, $31 -/* 0583FC 800577FC 44185000 */ mfc1 $t8, $f10 -/* 058400 80057800 4480C000 */ mtc1 $zero, $f24 -/* 058404 80057804 4449F800 */ cfc1 $t1, $31 -/* 058408 80057808 01D8C821 */ addu $t9, $t6, $t8 -/* 05840C 8005780C 35210003 */ ori $at, $t1, 3 -/* 058410 80057810 38210002 */ xori $at, $at, 2 -/* 058414 80057814 44C1F800 */ ctc1 $at, $31 -/* 058418 80057818 A7B9008C */ sh $t9, 0x8c($sp) -/* 05841C 8005781C 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 058420 80057820 C6500014 */ lwc1 $f16, 0x14($s2) -/* 058424 80057824 4481E000 */ mtc1 $at, $f28 -/* 058428 80057828 3C01BF00 */ li $at, 0xBF000000 # -0.500000 -/* 05842C 8005782C 460084A4 */ cvt.w.s $f18, $f16 -/* 058430 80057830 4481D000 */ mtc1 $at, $f26 -/* 058434 80057834 3C014014 */ li $at, 0x40140000 # 2.312500 -/* 058438 80057838 440B9000 */ mfc1 $t3, $f18 -/* 05843C 8005783C 4481B800 */ mtc1 $at, $f23 -/* 058440 80057840 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 058444 80057844 44C9F800 */ ctc1 $t1, $31 -/* 058448 80057848 010B5021 */ addu $t2, $t0, $t3 -/* 05844C 8005784C 4481A000 */ mtc1 $at, $f20 -/* 058450 80057850 4480B000 */ mtc1 $zero, $f22 -/* 058454 80057854 A7AA008E */ sh $t2, 0x8e($sp) -/* 058458 80057858 A3AC0089 */ sb $t4, 0x89($sp) -/* 05845C 8005785C A3AD0088 */ sb $t5, 0x88($sp) -/* 058460 80057860 02209825 */ move $s3, $s1 -/* 058464 80057864 24120001 */ li $s2, 1 -/* 058468 80057868 24160002 */ li $s6, 2 -/* 05846C 8005786C 27B50088 */ addiu $s5, $sp, 0x88 -/* 058470 80057870 24140040 */ li $s4, 64 -.L80057874: -/* 058474 80057874 0C01AF66 */ jal func_8006BD98 -/* 058478 80057878 00000000 */ nop -/* 05847C 8005787C 12820033 */ beq $s4, $v0, .L8005794C -/* 058480 80057880 02A02025 */ move $a0, $s5 -/* 058484 80057884 0C003A95 */ jal func_8000EA54 -/* 058488 80057888 02402825 */ move $a1, $s2 -/* 05848C 8005788C 1040002F */ beqz $v0, .L8005794C -/* 058490 80057890 00000000 */ nop -/* 058494 80057894 AC40003C */ sw $zero, 0x3c($v0) -/* 058498 80057898 8C430064 */ lw $v1, 0x64($v0) -/* 05849C 8005789C 820F01D6 */ lb $t7, 0x1d6($s0) -/* 0584A0 800578A0 00000000 */ nop -/* 0584A4 800578A4 A06F0009 */ sb $t7, 9($v1) -/* 0584A8 800578A8 C6040038 */ lwc1 $f4, 0x38($s0) -/* 0584AC 800578AC 00000000 */ nop -/* 0584B0 800578B0 46142182 */ mul.s $f6, $f4, $f20 -/* 0584B4 800578B4 E446001C */ swc1 $f6, 0x1c($v0) -/* 0584B8 800578B8 C608003C */ lwc1 $f8, 0x3c($s0) -/* 0584BC 800578BC 00000000 */ nop -/* 0584C0 800578C0 4608C281 */ sub.s $f10, $f24, $f8 -/* 0584C4 800578C4 46005421 */ cvt.d.s $f16, $f10 -/* 0584C8 800578C8 46368480 */ add.d $f18, $f16, $f22 -/* 0584CC 800578CC 46209120 */ cvt.s.d $f4, $f18 -/* 0584D0 800578D0 E4440020 */ swc1 $f4, 0x20($v0) -/* 0584D4 800578D4 C6060040 */ lwc1 $f6, 0x40($s0) -/* 0584D8 800578D8 00000000 */ nop -/* 0584DC 800578DC 46143202 */ mul.s $f8, $f6, $f20 -/* 0584E0 800578E0 16760019 */ bne $s3, $s6, .L80057948 -/* 0584E4 800578E4 E4480024 */ swc1 $f8, 0x24($v0) -/* 0584E8 800578E8 16320002 */ bne $s1, $s2, .L800578F4 -/* 0584EC 800578EC 4600D006 */ mov.s $f0, $f26 -/* 0584F0 800578F0 4600E006 */ mov.s $f0, $f28 -.L800578F4: -/* 0584F4 800578F4 C60A0050 */ lwc1 $f10, 0x50($s0) -/* 0584F8 800578F8 C6100038 */ lwc1 $f16, 0x38($s0) -/* 0584FC 800578FC C446001C */ lwc1 $f6, 0x1c($v0) -/* 058500 80057900 46105481 */ sub.s $f18, $f10, $f16 -/* 058504 80057904 C44A0020 */ lwc1 $f10, 0x20($v0) -/* 058508 80057908 46009102 */ mul.s $f4, $f18, $f0 -/* 05850C 8005790C 46043201 */ sub.s $f8, $f6, $f4 -/* 058510 80057910 E448001C */ swc1 $f8, 0x1c($v0) -/* 058514 80057914 C6100054 */ lwc1 $f16, 0x54($s0) -/* 058518 80057918 00000000 */ nop -/* 05851C 8005791C 46008482 */ mul.s $f18, $f16, $f0 -/* 058520 80057920 46125181 */ sub.s $f6, $f10, $f18 -/* 058524 80057924 C4520024 */ lwc1 $f18, 0x24($v0) -/* 058528 80057928 E4460020 */ swc1 $f6, 0x20($v0) -/* 05852C 8005792C C6080040 */ lwc1 $f8, 0x40($s0) -/* 058530 80057930 C6040058 */ lwc1 $f4, 0x58($s0) -/* 058534 80057934 00000000 */ nop -/* 058538 80057938 46082401 */ sub.s $f16, $f4, $f8 -/* 05853C 8005793C 46008282 */ mul.s $f10, $f16, $f0 -/* 058540 80057940 460A9181 */ sub.s $f6, $f18, $f10 -/* 058544 80057944 E4460024 */ swc1 $f6, 0x24($v0) -.L80057948: -/* 058548 80057948 AC520078 */ sw $s2, 0x78($v0) -.L8005794C: -/* 05854C 8005794C 820E0185 */ lb $t6, 0x185($s0) -/* 058550 80057950 2631FFFF */ addiu $s1, $s1, -1 -/* 058554 80057954 25D8FFFF */ addiu $t8, $t6, -1 -/* 058558 80057958 1E20FFC6 */ bgtz $s1, .L80057874 -/* 05855C 8005795C A2180185 */ sb $t8, 0x185($s0) -.L80057960: -/* 058560 80057960 8FBF005C */ lw $ra, 0x5c($sp) -.L80057964: -/* 058564 80057964 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 058568 80057968 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 05856C 8005796C C7B70020 */ lwc1 $f23, 0x20($sp) -/* 058570 80057970 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 058574 80057974 C7B90028 */ lwc1 $f25, 0x28($sp) -/* 058578 80057978 C7B8002C */ lwc1 $f24, 0x2c($sp) -/* 05857C 8005797C C7BB0030 */ lwc1 $f27, 0x30($sp) -/* 058580 80057980 C7BA0034 */ lwc1 $f26, 0x34($sp) -/* 058584 80057984 C7BD0038 */ lwc1 $f29, 0x38($sp) -/* 058588 80057988 C7BC003C */ lwc1 $f28, 0x3c($sp) -/* 05858C 8005798C 8FB00040 */ lw $s0, 0x40($sp) -/* 058590 80057990 8FB10044 */ lw $s1, 0x44($sp) -/* 058594 80057994 8FB20048 */ lw $s2, 0x48($sp) -/* 058598 80057998 8FB3004C */ lw $s3, 0x4c($sp) -/* 05859C 8005799C 8FB40050 */ lw $s4, 0x50($sp) -/* 0585A0 800579A0 8FB50054 */ lw $s5, 0x54($sp) -/* 0585A4 800579A4 8FB60058 */ lw $s6, 0x58($sp) -/* 0585A8 800579A8 03E00008 */ jr $ra -/* 0585AC 800579AC 27BD0090 */ addiu $sp, $sp, 0x90 - -glabel func_800579B0 -/* 0585B0 800579B0 AFA50004 */ sw $a1, 4($sp) -/* 0585B4 800579B4 3C0E8012 */ lui $t6, %hi(D_8011D534) # $t6, 0x8012 -/* 0585B8 800579B8 8DCED534 */ lw $t6, %lo(D_8011D534)($t6) -/* 0585BC 800579BC 808301E1 */ lb $v1, 0x1e1($a0) -/* 0585C0 800579C0 44866000 */ mtc1 $a2, $f12 -/* 0585C4 800579C4 01C31023 */ subu $v0, $t6, $v1 -/* 0585C8 800579C8 44822000 */ mtc1 $v0, $f4 -/* 0585CC 800579CC 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 0585D0 800579D0 468021A0 */ cvt.s.w $f6, $f4 -/* 0585D4 800579D4 44818800 */ mtc1 $at, $f17 -/* 0585D8 800579D8 44808000 */ mtc1 $zero, $f16 -/* 0585DC 800579DC 460C3202 */ mul.s $f8, $f6, $f12 -/* 0585E0 800579E0 460042A1 */ cvt.d.s $f10, $f8 -/* 0585E4 800579E4 46305482 */ mul.d $f18, $f10, $f16 -/* 0585E8 800579E8 444FF800 */ cfc1 $t7, $31 -/* 0585EC 800579EC 00000000 */ nop -/* 0585F0 800579F0 35E10003 */ ori $at, $t7, 3 -/* 0585F4 800579F4 38210002 */ xori $at, $at, 2 -/* 0585F8 800579F8 44C1F800 */ ctc1 $at, $31 -/* 0585FC 800579FC 00000000 */ nop -/* 058600 80057A00 46209124 */ cvt.w.d $f4, $f18 -/* 058604 80057A04 44062000 */ mfc1 $a2, $f4 -/* 058608 80057A08 44CFF800 */ ctc1 $t7, $31 -/* 05860C 80057A0C 10400009 */ beqz $v0, .L80057A34 -/* 058610 80057A10 00C02825 */ move $a1, $a2 -/* 058614 80057A14 14C00008 */ bnez $a2, .L80057A38 -/* 058618 80057A18 0065C021 */ addu $t8, $v1, $a1 -/* 05861C 80057A1C 18400002 */ blez $v0, .L80057A28 -/* 058620 80057A20 00000000 */ nop -/* 058624 80057A24 24050001 */ li $a1, 1 -.L80057A28: -/* 058628 80057A28 04410003 */ bgez $v0, .L80057A38 -/* 05862C 80057A2C 0065C021 */ addu $t8, $v1, $a1 -/* 058630 80057A30 2405FFFF */ li $a1, -1 -.L80057A34: -/* 058634 80057A34 0065C021 */ addu $t8, $v1, $a1 -.L80057A38: -/* 058638 80057A38 03E00008 */ jr $ra -/* 05863C 80057A3C A09801E1 */ sb $t8, 0x1e1($a0) - -glabel func_80057A40 -/* 058640 80057A40 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 058644 80057A44 3C0E8012 */ lui $t6, %hi(D_8011D52C) # $t6, 0x8012 -/* 058648 80057A48 8DCED52C */ lw $t6, %lo(D_8011D52C)($t6) -/* 05864C 80057A4C AFA5003C */ sw $a1, 0x3c($sp) -/* 058650 80057A50 31CF0008 */ andi $t7, $t6, 8 -/* 058654 80057A54 AFBF0014 */ sw $ra, 0x14($sp) -/* 058658 80057A58 AFA40038 */ sw $a0, 0x38($sp) -/* 05865C 80057A5C AFA60040 */ sw $a2, 0x40($sp) -/* 058660 80057A60 11E00037 */ beqz $t7, .L80057B40 -/* 058664 80057A64 AFA5003C */ sw $a1, 0x3c($sp) -/* 058668 80057A68 0C028064 */ jal func_800A0190 -/* 05866C 80057A6C AFA5003C */ sw $a1, 0x3c($sp) -/* 058670 80057A70 10400033 */ beqz $v0, .L80057B40 -/* 058674 80057A74 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 -/* 058678 80057A78 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 -/* 05867C 80057A7C 8CE20000 */ lw $v0, ($a3) -/* 058680 80057A80 00000000 */ nop -/* 058684 80057A84 9058003B */ lbu $t8, 0x3b($v0) -/* 058688 80057A88 00000000 */ nop -/* 05868C 80057A8C 27190001 */ addiu $t9, $t8, 1 -/* 058690 80057A90 A059003B */ sb $t9, 0x3b($v0) -/* 058694 80057A94 8CE20000 */ lw $v0, ($a3) -/* 058698 80057A98 00000000 */ nop -/* 05869C 80057A9C 9045003B */ lbu $a1, 0x3b($v0) -/* 0586A0 80057AA0 00000000 */ nop -/* 0586A4 80057AA4 28A10004 */ slti $at, $a1, 4 -/* 0586A8 80057AA8 14200007 */ bnez $at, .L80057AC8 -/* 0586AC 80057AAC 8FA9003C */ lw $t1, 0x3c($sp) -/* 0586B0 80057AB0 A040003B */ sb $zero, 0x3b($v0) -/* 0586B4 80057AB4 8CE80000 */ lw $t0, ($a3) -/* 0586B8 80057AB8 00000000 */ nop -/* 0586BC 80057ABC 9105003B */ lbu $a1, 0x3b($t0) -/* 0586C0 80057AC0 00000000 */ nop -/* 0586C4 80057AC4 8FA9003C */ lw $t1, 0x3c($sp) -.L80057AC8: -/* 0586C8 80057AC8 2401FFFF */ li $at, -1 -/* 0586CC 80057ACC 85240000 */ lh $a0, ($t1) -/* 0586D0 80057AD0 00000000 */ nop -/* 0586D4 80057AD4 10810009 */ beq $a0, $at, .L80057AFC -/* 0586D8 80057AD8 00000000 */ nop -/* 0586DC 80057ADC 0C019818 */ jal func_80066060 -/* 0586E0 80057AE0 00000000 */ nop -/* 0586E4 80057AE4 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 -/* 0586E8 80057AE8 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 -/* 0586EC 80057AEC 8CEA0000 */ lw $t2, ($a3) -/* 0586F0 80057AF0 00000000 */ nop -/* 0586F4 80057AF4 9145003B */ lbu $a1, 0x3b($t2) -/* 0586F8 80057AF8 00000000 */ nop -.L80057AFC: -/* 0586FC 80057AFC 10A00006 */ beqz $a1, .L80057B18 -/* 058700 80057B00 24040068 */ li $a0, 104 -/* 058704 80057B04 24010001 */ li $at, 1 -/* 058708 80057B08 10A10007 */ beq $a1, $at, .L80057B28 -/* 05870C 80057B0C 24040069 */ li $a0, 105 -/* 058710 80057B10 10000009 */ b .L80057B38 -/* 058714 80057B14 2404006A */ li $a0, 106 -.L80057B18: -/* 058718 80057B18 0C000741 */ jal func_80001D04 -/* 05871C 80057B1C 00002825 */ move $a1, $zero -/* 058720 80057B20 10000008 */ b .L80057B44 -/* 058724 80057B24 8FA6003C */ lw $a2, 0x3c($sp) -.L80057B28: -/* 058728 80057B28 0C000741 */ jal func_80001D04 -/* 05872C 80057B2C 00002825 */ move $a1, $zero -/* 058730 80057B30 10000004 */ b .L80057B44 -/* 058734 80057B34 8FA6003C */ lw $a2, 0x3c($sp) -.L80057B38: -/* 058738 80057B38 0C000741 */ jal func_80001D04 -/* 05873C 80057B3C 00002825 */ move $a1, $zero -.L80057B40: -/* 058740 80057B40 8FA6003C */ lw $a2, 0x3c($sp) -.L80057B44: -/* 058744 80057B44 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 -/* 058748 80057B48 80CB01D8 */ lb $t3, 0x1d8($a2) -/* 05874C 80057B4C 24010001 */ li $at, 1 -/* 058750 80057B50 15610008 */ bne $t3, $at, .L80057B74 -/* 058754 80057B54 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 -/* 058758 80057B58 8CE20000 */ lw $v0, ($a3) -/* 05875C 80057B5C 24010005 */ li $at, 5 -/* 058760 80057B60 844C0036 */ lh $t4, 0x36($v0) -/* 058764 80057B64 240D0007 */ li $t5, 7 -/* 058768 80057B68 11810002 */ beq $t4, $at, .L80057B74 -/* 05876C 80057B6C 00000000 */ nop -/* 058770 80057B70 A44D0036 */ sh $t5, 0x36($v0) -.L80057B74: -/* 058774 80057B74 8CCE0108 */ lw $t6, 0x108($a2) -/* 058778 80057B78 8CE20000 */ lw $v0, ($a3) -/* 05877C 80057B7C 11C00004 */ beqz $t6, .L80057B90 -/* 058780 80057B80 240F0003 */ li $t7, 3 -/* 058784 80057B84 A44F0036 */ sh $t7, 0x36($v0) -/* 058788 80057B88 8CE20000 */ lw $v0, ($a3) -/* 05878C 80057B8C 00000000 */ nop -.L80057B90: -/* 058790 80057B90 94580036 */ lhu $t8, 0x36($v0) -/* 058794 80057B94 00000000 */ nop -/* 058798 80057B98 2F010008 */ sltiu $at, $t8, 8 -/* 05879C 80057B9C 1020004C */ beqz $at, .L80057CD0 -/* 0587A0 80057BA0 0018C080 */ sll $t8, $t8, 2 -/* 0587A4 80057BA4 3C01800E */ lui $at, 0x800e -/* 0587A8 80057BA8 00380821 */ addu $at, $at, $t8 -/* 0587AC 80057BAC 8C3868D0 */ lw $t8, 0x68d0($at) -/* 0587B0 80057BB0 00000000 */ nop -/* 0587B4 80057BB4 03000008 */ jr $t8 -/* 0587B8 80057BB8 00000000 */ nop -/* 0587BC 80057BBC C7AC0040 */ lwc1 $f12, 0x40($sp) -/* 0587C0 80057BC0 8FA50038 */ lw $a1, 0x38($sp) -/* 0587C4 80057BC4 0C01607A */ jal func_800581E8 -/* 0587C8 80057BC8 AFA6003C */ sw $a2, 0x3c($sp) -/* 0587CC 80057BCC 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 -/* 0587D0 80057BD0 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 -/* 0587D4 80057BD4 8CE20000 */ lw $v0, ($a3) -/* 0587D8 80057BD8 8FA6003C */ lw $a2, 0x3c($sp) -/* 0587DC 80057BDC 1000003C */ b .L80057CD0 -/* 0587E0 80057BE0 00000000 */ nop -/* 0587E4 80057BE4 C7AC0040 */ lwc1 $f12, 0x40($sp) -/* 0587E8 80057BE8 8FA50038 */ lw $a1, 0x38($sp) -/* 0587EC 80057BEC 0C0130AC */ jal func_8004C2B0 -/* 0587F0 80057BF0 AFA6003C */ sw $a2, 0x3c($sp) -/* 0587F4 80057BF4 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 -/* 0587F8 80057BF8 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 -/* 0587FC 80057BFC 8CE20000 */ lw $v0, ($a3) -/* 058800 80057C00 8FA6003C */ lw $a2, 0x3c($sp) -/* 058804 80057C04 10000032 */ b .L80057CD0 -/* 058808 80057C08 00000000 */ nop -/* 05880C 80057C0C C7AC0040 */ lwc1 $f12, 0x40($sp) -/* 058810 80057C10 8FA50038 */ lw $a1, 0x38($sp) -/* 058814 80057C14 0C0163D1 */ jal func_80058F44 -/* 058818 80057C18 AFA6003C */ sw $a2, 0x3c($sp) -/* 05881C 80057C1C 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 -/* 058820 80057C20 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 -/* 058824 80057C24 8CE20000 */ lw $v0, ($a3) -/* 058828 80057C28 8FA6003C */ lw $a2, 0x3c($sp) -/* 05882C 80057C2C 10000028 */ b .L80057CD0 -/* 058830 80057C30 00000000 */ nop -/* 058834 80057C34 C7AC0040 */ lwc1 $f12, 0x40($sp) -/* 058838 80057C38 8FA50038 */ lw $a1, 0x38($sp) -/* 05883C 80057C3C 0C012399 */ jal func_80048E64 -/* 058840 80057C40 AFA6003C */ sw $a2, 0x3c($sp) -/* 058844 80057C44 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 -/* 058848 80057C48 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 -/* 05884C 80057C4C 8CE20000 */ lw $v0, ($a3) -/* 058850 80057C50 8FA6003C */ lw $a2, 0x3c($sp) -/* 058854 80057C54 1000001E */ b .L80057CD0 -/* 058858 80057C58 00000000 */ nop -/* 05885C 80057C5C C7AC0040 */ lwc1 $f12, 0x40($sp) -/* 058860 80057C60 8FA50038 */ lw $a1, 0x38($sp) -/* 058864 80057C64 0C0162E1 */ jal func_80058B84 -/* 058868 80057C68 AFA6003C */ sw $a2, 0x3c($sp) -/* 05886C 80057C6C 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 -/* 058870 80057C70 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 -/* 058874 80057C74 8CE20000 */ lw $v0, ($a3) -/* 058878 80057C78 8FA6003C */ lw $a2, 0x3c($sp) -/* 05887C 80057C7C 10000014 */ b .L80057CD0 -/* 058880 80057C80 00000000 */ nop -/* 058884 80057C84 C7AC0040 */ lwc1 $f12, 0x40($sp) -/* 058888 80057C88 8FA50038 */ lw $a1, 0x38($sp) -/* 05888C 80057C8C 0C013564 */ jal func_8004D590 -/* 058890 80057C90 AFA6003C */ sw $a2, 0x3c($sp) -/* 058894 80057C94 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 -/* 058898 80057C98 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 -/* 05889C 80057C9C 8CE20000 */ lw $v0, ($a3) -/* 0588A0 80057CA0 8FA6003C */ lw $a2, 0x3c($sp) -/* 0588A4 80057CA4 1000000A */ b .L80057CD0 -/* 0588A8 80057CA8 00000000 */ nop -/* 0588AC 80057CAC C7AC0040 */ lwc1 $f12, 0x40($sp) -/* 0588B0 80057CB0 8FA50038 */ lw $a1, 0x38($sp) -/* 0588B4 80057CB4 0C016357 */ jal func_80058D5C -/* 0588B8 80057CB8 AFA6003C */ sw $a2, 0x3c($sp) -/* 0588BC 80057CBC 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 -/* 0588C0 80057CC0 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 -/* 0588C4 80057CC4 8CE20000 */ lw $v0, ($a3) -/* 0588C8 80057CC8 8FA6003C */ lw $a2, 0x3c($sp) -/* 0588CC 80057CCC 00000000 */ nop -.L80057CD0: -/* 0588D0 80057CD0 3C038012 */ lui $v1, %hi(D_8011D586) # $v1, 0x8012 -/* 0588D4 80057CD4 3C01800E */ lui $at, %hi(D_800E68F4) # $at, 0x800e -/* 0588D8 80057CD8 2463D586 */ addiu $v1, %lo(D_8011D586) # addiu $v1, $v1, -0x2a7a -/* 0588DC 80057CDC C42168F0 */ lwc1 $f1, %lo(D_800E68F0)($at) -/* 0588E0 80057CE0 C42068F4 */ lwc1 $f0, %lo(D_800E68F4)($at) -/* 0588E4 80057CE4 84790000 */ lh $t9, ($v1) -/* 0588E8 80057CE8 3C01800E */ lui $at, %hi(D_800E68FC) # $at, 0x800e -/* 0588EC 80057CEC 44992000 */ mtc1 $t9, $f4 -/* 0588F0 80057CF0 C42D68F8 */ lwc1 $f13, %lo(D_800E68F8)($at) -/* 0588F4 80057CF4 C42C68FC */ lwc1 $f12, %lo(D_800E68FC)($at) -/* 0588F8 80057CF8 468021A0 */ cvt.s.w $f6, $f4 -/* 0588FC 80057CFC 8FA80038 */ lw $t0, 0x38($sp) -/* 058900 80057D00 3C014620 */ li $at, 0x46200000 # 10240.000000 -/* 058904 80057D04 44814000 */ mtc1 $at, $f8 -/* 058908 80057D08 C4D20038 */ lwc1 $f18, 0x38($a2) -/* 05890C 80057D0C C50A000C */ lwc1 $f10, 0xc($t0) -/* 058910 80057D10 46083383 */ div.s $f14, $f6, $f8 -/* 058914 80057D14 46009121 */ cvt.d.s $f4, $f18 -/* 058918 80057D18 46240182 */ mul.d $f6, $f0, $f4 -/* 05891C 80057D1C 46005421 */ cvt.d.s $f16, $f10 -/* 058920 80057D20 C4CA0050 */ lwc1 $f10, 0x50($a2) -/* 058924 80057D24 00000000 */ nop -/* 058928 80057D28 460054A1 */ cvt.d.s $f18, $f10 -/* 05892C 80057D2C 46326102 */ mul.d $f4, $f12, $f18 -/* 058930 80057D30 46268200 */ add.d $f8, $f16, $f6 -/* 058934 80057D34 C446000C */ lwc1 $f6, 0xc($v0) -/* 058938 80057D38 46244400 */ add.d $f16, $f8, $f4 -/* 05893C 80057D3C 460032A1 */ cvt.d.s $f10, $f6 -/* 058940 80057D40 462A8481 */ sub.d $f18, $f16, $f10 -/* 058944 80057D44 460070A1 */ cvt.d.s $f2, $f14 -/* 058948 80057D48 46229202 */ mul.d $f8, $f18, $f2 -/* 05894C 80057D4C 46204120 */ cvt.s.d $f4, $f8 -/* 058950 80057D50 E4440024 */ swc1 $f4, 0x24($v0) -/* 058954 80057D54 8FA90038 */ lw $t1, 0x38($sp) -/* 058958 80057D58 C4CA0040 */ lwc1 $f10, 0x40($a2) -/* 05895C 80057D5C C5260014 */ lwc1 $f6, 0x14($t1) -/* 058960 80057D60 460054A1 */ cvt.d.s $f18, $f10 -/* 058964 80057D64 46320202 */ mul.d $f8, $f0, $f18 -/* 058968 80057D68 46003421 */ cvt.d.s $f16, $f6 -/* 05896C 80057D6C C4C60058 */ lwc1 $f6, 0x58($a2) -/* 058970 80057D70 8CE20000 */ lw $v0, ($a3) -/* 058974 80057D74 460032A1 */ cvt.d.s $f10, $f6 -/* 058978 80057D78 462A6482 */ mul.d $f18, $f12, $f10 -/* 05897C 80057D7C 46288100 */ add.d $f4, $f16, $f8 -/* 058980 80057D80 C4480014 */ lwc1 $f8, 0x14($v0) -/* 058984 80057D84 46322400 */ add.d $f16, $f4, $f18 -/* 058988 80057D88 460041A1 */ cvt.d.s $f6, $f8 -/* 05898C 80057D8C 46268281 */ sub.d $f10, $f16, $f6 -/* 058990 80057D90 46225102 */ mul.d $f4, $f10, $f2 -/* 058994 80057D94 462024A0 */ cvt.s.d $f18, $f4 -/* 058998 80057D98 E452002C */ swc1 $f18, 0x2c($v0) -/* 05899C 80057D9C E7AE0034 */ swc1 $f14, 0x34($sp) -/* 0589A0 80057DA0 E7A2001C */ swc1 $f2, 0x1c($sp) -/* 0589A4 80057DA4 0C00EB2B */ jal func_8003ACAC -/* 0589A8 80057DA8 E7A30018 */ swc1 $f3, 0x18($sp) -/* 0589AC 80057DAC 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 -/* 0589B0 80057DB0 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 -/* 0589B4 80057DB4 3C01800E */ lui $at, %hi(D_800E6904) # $at, 0x800e -/* 0589B8 80057DB8 8CE20000 */ lw $v0, ($a3) -/* 0589BC 80057DBC C4316900 */ lwc1 $f17, %lo(D_800E6900)($at) -/* 0589C0 80057DC0 C4306904 */ lwc1 $f16, %lo(D_800E6904)($at) -/* 0589C4 80057DC4 C44A0010 */ lwc1 $f10, 0x10($v0) -/* 0589C8 80057DC8 46000221 */ cvt.d.s $f8, $f0 -/* 0589CC 80057DCC 46304180 */ add.d $f6, $f8, $f16 -/* 0589D0 80057DD0 C7A30018 */ lwc1 $f3, 0x18($sp) -/* 0589D4 80057DD4 46005121 */ cvt.d.s $f4, $f10 -/* 0589D8 80057DD8 46243481 */ sub.d $f18, $f6, $f4 -/* 0589DC 80057DDC C7A2001C */ lwc1 $f2, 0x1c($sp) -/* 0589E0 80057DE0 C7AE0034 */ lwc1 $f14, 0x34($sp) -/* 0589E4 80057DE4 46229202 */ mul.d $f8, $f18, $f2 -/* 0589E8 80057DE8 3C0E8012 */ lui $t6, %hi(D_8011D540) # $t6, 0x8012 -/* 0589EC 80057DEC 3C038012 */ lui $v1, %hi(D_8011D586) # $v1, 0x8012 -/* 0589F0 80057DF0 2463D586 */ addiu $v1, %lo(D_8011D586) # addiu $v1, $v1, -0x2a7a -/* 0589F4 80057DF4 24182800 */ li $t8, 10240 -/* 0589F8 80057DF8 46204420 */ cvt.s.d $f16, $f8 -/* 0589FC 80057DFC 3C088012 */ lui $t0, %hi(D_8011D583) # $t0, 0x8012 -/* 058A00 80057E00 E4500028 */ swc1 $f16, 0x28($v0) -/* 058A04 80057E04 8CE20000 */ lw $v0, ($a3) -/* 058A08 80057E08 00000000 */ nop -/* 058A0C 80057E0C 844A0002 */ lh $t2, 2($v0) -/* 058A10 80057E10 00000000 */ nop -/* 058A14 80057E14 000A5823 */ negu $t3, $t2 -/* 058A18 80057E18 448B5000 */ mtc1 $t3, $f10 -/* 058A1C 80057E1C 00000000 */ nop -/* 058A20 80057E20 468051A0 */ cvt.s.w $f6, $f10 -/* 058A24 80057E24 460E3102 */ mul.s $f4, $f6, $f14 -/* 058A28 80057E28 444CF800 */ cfc1 $t4, $31 -/* 058A2C 80057E2C 00000000 */ nop -/* 058A30 80057E30 35810003 */ ori $at, $t4, 3 -/* 058A34 80057E34 38210002 */ xori $at, $at, 2 -/* 058A38 80057E38 44C1F800 */ ctc1 $at, $31 -/* 058A3C 80057E3C 00000000 */ nop -/* 058A40 80057E40 460024A4 */ cvt.w.s $f18, $f4 -/* 058A44 80057E44 440D9000 */ mfc1 $t5, $f18 -/* 058A48 80057E48 44CCF800 */ ctc1 $t4, $31 -/* 058A4C 80057E4C A44D0038 */ sh $t5, 0x38($v0) -/* 058A50 80057E50 8CE20000 */ lw $v0, ($a3) -/* 058A54 80057E54 00000000 */ nop -/* 058A58 80057E58 C448000C */ lwc1 $f8, 0xc($v0) -/* 058A5C 80057E5C C4500024 */ lwc1 $f16, 0x24($v0) -/* 058A60 80057E60 00000000 */ nop -/* 058A64 80057E64 46104280 */ add.s $f10, $f8, $f16 -/* 058A68 80057E68 E44A000C */ swc1 $f10, 0xc($v0) -/* 058A6C 80057E6C 8CE20000 */ lw $v0, ($a3) -/* 058A70 80057E70 00000000 */ nop -/* 058A74 80057E74 C4460028 */ lwc1 $f6, 0x28($v0) -/* 058A78 80057E78 C4440030 */ lwc1 $f4, 0x30($v0) -/* 058A7C 80057E7C C4480010 */ lwc1 $f8, 0x10($v0) -/* 058A80 80057E80 46043480 */ add.s $f18, $f6, $f4 -/* 058A84 80057E84 46124400 */ add.s $f16, $f8, $f18 -/* 058A88 80057E88 E4500010 */ swc1 $f16, 0x10($v0) -/* 058A8C 80057E8C 8CE20000 */ lw $v0, ($a3) -/* 058A90 80057E90 00000000 */ nop -/* 058A94 80057E94 C44A0014 */ lwc1 $f10, 0x14($v0) -/* 058A98 80057E98 C446002C */ lwc1 $f6, 0x2c($v0) -/* 058A9C 80057E9C 00000000 */ nop -/* 058AA0 80057EA0 46065100 */ add.s $f4, $f10, $f6 -/* 058AA4 80057EA4 E4440014 */ swc1 $f4, 0x14($v0) -/* 058AA8 80057EA8 8DCED540 */ lw $t6, %lo(D_8011D540)($t6) -/* 058AAC 80057EAC 00000000 */ nop -/* 058AB0 80057EB0 15C0001D */ bnez $t6, .L80057F28 -/* 058AB4 80057EB4 00000000 */ nop -/* 058AB8 80057EB8 846F0000 */ lh $t7, ($v1) -/* 058ABC 80057EBC 3C01800E */ lui $at, %hi(D_800E690C) # $at, 0x800e -/* 058AC0 80057EC0 15E00019 */ bnez $t7, .L80057F28 -/* 058AC4 80057EC4 00000000 */ nop -/* 058AC8 80057EC8 8CE20000 */ lw $v0, ($a3) -/* 058ACC 80057ECC C4216908 */ lwc1 $f1, %lo(D_800E6908)($at) -/* 058AD0 80057ED0 C4480024 */ lwc1 $f8, 0x24($v0) -/* 058AD4 80057ED4 C420690C */ lwc1 $f0, %lo(D_800E690C)($at) -/* 058AD8 80057ED8 460044A1 */ cvt.d.s $f18, $f8 -/* 058ADC 80057EDC 46209402 */ mul.d $f16, $f18, $f0 -/* 058AE0 80057EE0 462082A0 */ cvt.s.d $f10, $f16 -/* 058AE4 80057EE4 E44A0024 */ swc1 $f10, 0x24($v0) -/* 058AE8 80057EE8 8CE20000 */ lw $v0, ($a3) -/* 058AEC 80057EEC 00000000 */ nop -/* 058AF0 80057EF0 C4460028 */ lwc1 $f6, 0x28($v0) -/* 058AF4 80057EF4 00000000 */ nop -/* 058AF8 80057EF8 46003121 */ cvt.d.s $f4, $f6 -/* 058AFC 80057EFC 46202202 */ mul.d $f8, $f4, $f0 -/* 058B00 80057F00 462044A0 */ cvt.s.d $f18, $f8 -/* 058B04 80057F04 E4520028 */ swc1 $f18, 0x28($v0) -/* 058B08 80057F08 8CE20000 */ lw $v0, ($a3) -/* 058B0C 80057F0C 00000000 */ nop -/* 058B10 80057F10 C450002C */ lwc1 $f16, 0x2c($v0) -/* 058B14 80057F14 00000000 */ nop -/* 058B18 80057F18 460082A1 */ cvt.d.s $f10, $f16 -/* 058B1C 80057F1C 46205182 */ mul.d $f6, $f10, $f0 -/* 058B20 80057F20 46203120 */ cvt.s.d $f4, $f6 -/* 058B24 80057F24 E444002C */ swc1 $f4, 0x2c($v0) -.L80057F28: -/* 058B28 80057F28 84640000 */ lh $a0, ($v1) -/* 058B2C 80057F2C 00000000 */ nop -/* 058B30 80057F30 28811401 */ slti $at, $a0, 0x1401 -/* 058B34 80057F34 14200002 */ bnez $at, .L80057F40 -/* 058B38 80057F38 00801025 */ move $v0, $a0 -/* 058B3C 80057F3C 03041023 */ subu $v0, $t8, $a0 -.L80057F40: -/* 058B40 80057F40 28410601 */ slti $at, $v0, 0x601 -/* 058B44 80057F44 14200002 */ bnez $at, .L80057F50 -/* 058B48 80057F48 00000000 */ nop -/* 058B4C 80057F4C 24020600 */ li $v0, 1536 -.L80057F50: -/* 058B50 80057F50 8108D583 */ lb $t0, %lo(D_8011D583)($t0) -/* 058B54 80057F54 0002C903 */ sra $t9, $v0, 4 -/* 058B58 80057F58 11000018 */ beqz $t0, .L80057FBC -/* 058B5C 80057F5C 27220004 */ addiu $v0, $t9, 4 -/* 058B60 80057F60 4449F800 */ cfc1 $t1, $31 -/* 058B64 80057F64 C7A80040 */ lwc1 $f8, 0x40($sp) -/* 058B68 80057F68 35210003 */ ori $at, $t1, 3 -/* 058B6C 80057F6C 38210002 */ xori $at, $at, 2 -/* 058B70 80057F70 44C1F800 */ ctc1 $at, $31 -/* 058B74 80057F74 3C018012 */ lui $at, %hi(D_8011D586) # $at, 0x8012 -/* 058B78 80057F78 460044A4 */ cvt.w.s $f18, $f8 -/* 058B7C 80057F7C 240C2800 */ li $t4, 10240 -/* 058B80 80057F80 44059000 */ mfc1 $a1, $f18 -/* 058B84 80057F84 44C9F800 */ ctc1 $t1, $31 -/* 058B88 80057F88 00A20019 */ multu $a1, $v0 -/* 058B8C 80057F8C 00005012 */ mflo $t2 -/* 058B90 80057F90 008A5821 */ addu $t3, $a0, $t2 -/* 058B94 80057F94 A42BD586 */ sh $t3, %lo(D_8011D586)($at) -/* 058B98 80057F98 84640000 */ lh $a0, ($v1) -/* 058B9C 80057F9C 00000000 */ nop -/* 058BA0 80057FA0 28812801 */ slti $at, $a0, 0x2801 -/* 058BA4 80057FA4 14200019 */ bnez $at, .L8005800C -/* 058BA8 80057FA8 00000000 */ nop -/* 058BAC 80057FAC A46C0000 */ sh $t4, ($v1) -/* 058BB0 80057FB0 84640000 */ lh $a0, ($v1) -/* 058BB4 80057FB4 10000016 */ b .L80058010 -/* 058BB8 80057FB8 8CE20000 */ lw $v0, ($a3) -.L80057FBC: -/* 058BBC 80057FBC 444DF800 */ cfc1 $t5, $31 -/* 058BC0 80057FC0 C7B00040 */ lwc1 $f16, 0x40($sp) -/* 058BC4 80057FC4 35A10003 */ ori $at, $t5, 3 -/* 058BC8 80057FC8 38210002 */ xori $at, $at, 2 -/* 058BCC 80057FCC 44C1F800 */ ctc1 $at, $31 -/* 058BD0 80057FD0 3C018012 */ lui $at, %hi(D_8011D586) # $at, 0x8012 -/* 058BD4 80057FD4 460082A4 */ cvt.w.s $f10, $f16 -/* 058BD8 80057FD8 44055000 */ mfc1 $a1, $f10 -/* 058BDC 80057FDC 44CDF800 */ ctc1 $t5, $31 -/* 058BE0 80057FE0 00A20019 */ multu $a1, $v0 -/* 058BE4 80057FE4 00007012 */ mflo $t6 -/* 058BE8 80057FE8 008E7823 */ subu $t7, $a0, $t6 -/* 058BEC 80057FEC A42FD586 */ sh $t7, %lo(D_8011D586)($at) -/* 058BF0 80057FF0 84640000 */ lh $a0, ($v1) -/* 058BF4 80057FF4 00000000 */ nop -/* 058BF8 80057FF8 04810004 */ bgez $a0, .L8005800C -/* 058BFC 80057FFC 00000000 */ nop -/* 058C00 80058000 A4600000 */ sh $zero, ($v1) -/* 058C04 80058004 84640000 */ lh $a0, ($v1) -/* 058C08 80058008 00000000 */ nop -.L8005800C: -/* 058C0C 8005800C 8CE20000 */ lw $v0, ($a3) -.L80058010: -/* 058C10 80058010 3C013FE8 */ li $at, 0x3FE80000 # 1.812500 -/* 058C14 80058014 84580000 */ lh $t8, ($v0) -/* 058C18 80058018 00000000 */ nop -/* 058C1C 8005801C 0304C823 */ subu $t9, $t8, $a0 -/* 058C20 80058020 A4590000 */ sh $t9, ($v0) -/* 058C24 80058024 8CE20000 */ lw $v0, ($a3) -/* 058C28 80058028 00000000 */ nop -/* 058C2C 8005802C 8048003A */ lb $t0, 0x3a($v0) -/* 058C30 80058030 00000000 */ nop -/* 058C34 80058034 01054823 */ subu $t1, $t0, $a1 -/* 058C38 80058038 A049003A */ sb $t1, 0x3a($v0) -/* 058C3C 8005803C 8CE20000 */ lw $v0, ($a3) -/* 058C40 80058040 00000000 */ nop -/* 058C44 80058044 8043003A */ lb $v1, 0x3a($v0) -/* 058C48 80058048 00000000 */ nop -/* 058C4C 8005804C 04610016 */ bgez $v1, .L800580A8 -/* 058C50 80058050 8FBF0014 */ lw $ra, 0x14($sp) -/* 058C54 80058054 44810800 */ mtc1 $at, $f1 -/* 058C58 80058058 44800000 */ mtc1 $zero, $f0 -/* 058C5C 8005805C 00000000 */ nop -/* 058C60 80058060 246A0005 */ addiu $t2, $v1, 5 -.L80058064: -/* 058C64 80058064 A04A003A */ sb $t2, 0x3a($v0) -/* 058C68 80058068 8CE20000 */ lw $v0, ($a3) -/* 058C6C 8005806C 00000000 */ nop -/* 058C70 80058070 C4460030 */ lwc1 $f6, 0x30($v0) -/* 058C74 80058074 00000000 */ nop -/* 058C78 80058078 46003107 */ neg.s $f4, $f6 -/* 058C7C 8005807C 46002221 */ cvt.d.s $f8, $f4 -/* 058C80 80058080 46204482 */ mul.d $f18, $f8, $f0 -/* 058C84 80058084 46209420 */ cvt.s.d $f16, $f18 -/* 058C88 80058088 E4500030 */ swc1 $f16, 0x30($v0) -/* 058C8C 8005808C 8CE20000 */ lw $v0, ($a3) -/* 058C90 80058090 00000000 */ nop -/* 058C94 80058094 8043003A */ lb $v1, 0x3a($v0) -/* 058C98 80058098 00000000 */ nop -/* 058C9C 8005809C 0460FFF1 */ bltz $v1, .L80058064 -/* 058CA0 800580A0 246A0005 */ addiu $t2, $v1, 5 -/* 058CA4 800580A4 8FBF0014 */ lw $ra, 0x14($sp) -.L800580A8: -/* 058CA8 800580A8 27BD0038 */ addiu $sp, $sp, 0x38 -/* 058CAC 800580AC 03E00008 */ jr $ra -/* 058CB0 800580B0 00000000 */ nop - -glabel func_800580B4 -/* 058CB4 800580B4 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 058CB8 800580B8 3C0E8012 */ lui $t6, %hi(D_8011D55C) # $t6, 0x8012 -/* 058CBC 800580BC 8DCED55C */ lw $t6, %lo(D_8011D55C)($t6) -/* 058CC0 800580C0 AFA70034 */ sw $a3, 0x34($sp) -/* 058CC4 800580C4 2401FFFF */ li $at, -1 -/* 058CC8 800580C8 00C03825 */ move $a3, $a2 -/* 058CCC 800580CC AFBF0014 */ sw $ra, 0x14($sp) -/* 058CD0 800580D0 AFA40028 */ sw $a0, 0x28($sp) -/* 058CD4 800580D4 11C10040 */ beq $t6, $at, .L800581D8 -/* 058CD8 800580D8 AFA60030 */ sw $a2, 0x30($sp) -/* 058CDC 800580DC 80AF01D8 */ lb $t7, 0x1d8($a1) -/* 058CE0 800580E0 24010001 */ li $at, 1 -/* 058CE4 800580E4 11E1003C */ beq $t7, $at, .L800581D8 -/* 058CE8 800580E8 3C038012 */ lui $v1, %hi(D_8011D508) # $v1, 0x8012 -/* 058CEC 800580EC 2463D508 */ addiu $v1, %lo(D_8011D508) # addiu $v1, $v1, -0x2af8 -/* 058CF0 800580F0 8C780000 */ lw $t8, ($v1) -/* 058CF4 800580F4 00000000 */ nop -/* 058CF8 800580F8 87190036 */ lh $t9, 0x36($t8) -/* 058CFC 800580FC 00000000 */ nop -/* 058D00 80058100 10D90036 */ beq $a2, $t9, .L800581DC -/* 058D04 80058104 8FBF0014 */ lw $ra, 0x14($sp) -/* 058D08 80058108 8FA60034 */ lw $a2, 0x34($sp) -/* 058D0C 8005810C AFA5002C */ sw $a1, 0x2c($sp) -/* 058D10 80058110 0C015E90 */ jal func_80057A40 -/* 058D14 80058114 AFA70030 */ sw $a3, 0x30($sp) -/* 058D18 80058118 3C038012 */ lui $v1, %hi(D_8011D508) # $v1, 0x8012 -/* 058D1C 8005811C 2463D508 */ addiu $v1, %lo(D_8011D508) # addiu $v1, $v1, -0x2af8 -/* 058D20 80058120 8C620000 */ lw $v0, ($v1) -/* 058D24 80058124 8FA70030 */ lw $a3, 0x30($sp) -/* 058D28 80058128 C444000C */ lwc1 $f4, 0xc($v0) -/* 058D2C 8005812C 8FA5002C */ lw $a1, 0x2c($sp) -/* 058D30 80058130 E7A40024 */ swc1 $f4, 0x24($sp) -/* 058D34 80058134 C4460010 */ lwc1 $f6, 0x10($v0) -/* 058D38 80058138 00000000 */ nop -/* 058D3C 8005813C E7A60020 */ swc1 $f6, 0x20($sp) -/* 058D40 80058140 C4480014 */ lwc1 $f8, 0x14($v0) -/* 058D44 80058144 00000000 */ nop -/* 058D48 80058148 E7A8001C */ swc1 $f8, 0x1c($sp) -/* 058D4C 8005814C A4470036 */ sh $a3, 0x36($v0) -/* 058D50 80058150 8FA60034 */ lw $a2, 0x34($sp) -/* 058D54 80058154 8FA40028 */ lw $a0, 0x28($sp) -/* 058D58 80058158 0C015E90 */ jal func_80057A40 -/* 058D5C 8005815C 00000000 */ nop -/* 058D60 80058160 3C088012 */ lui $t0, %hi(D_8011D540) # $t0, 0x8012 -/* 058D64 80058164 8D08D540 */ lw $t0, %lo(D_8011D540)($t0) -/* 058D68 80058168 3C038012 */ lui $v1, %hi(D_8011D508) # $v1, 0x8012 -/* 058D6C 8005816C 1500001A */ bnez $t0, .L800581D8 -/* 058D70 80058170 2463D508 */ addiu $v1, %lo(D_8011D508) # addiu $v1, $v1, -0x2af8 -/* 058D74 80058174 3C098012 */ lui $t1, %hi(D_8011D582) # $t1, 0x8012 -/* 058D78 80058178 8129D582 */ lb $t1, %lo(D_8011D582)($t1) -/* 058D7C 8005817C 00000000 */ nop -/* 058D80 80058180 15200016 */ bnez $t1, .L800581DC -/* 058D84 80058184 8FBF0014 */ lw $ra, 0x14($sp) -/* 058D88 80058188 8C620000 */ lw $v0, ($v1) -/* 058D8C 8005818C C7AA0024 */ lwc1 $f10, 0x24($sp) -/* 058D90 80058190 C450000C */ lwc1 $f16, 0xc($v0) -/* 058D94 80058194 00000000 */ nop -/* 058D98 80058198 46105481 */ sub.s $f18, $f10, $f16 -/* 058D9C 8005819C E4520024 */ swc1 $f18, 0x24($v0) -/* 058DA0 800581A0 8C620000 */ lw $v0, ($v1) -/* 058DA4 800581A4 C7AA0020 */ lwc1 $f10, 0x20($sp) -/* 058DA8 800581A8 C4440010 */ lwc1 $f4, 0x10($v0) -/* 058DAC 800581AC C4460030 */ lwc1 $f6, 0x30($v0) -/* 058DB0 800581B0 00000000 */ nop -/* 058DB4 800581B4 46062200 */ add.s $f8, $f4, $f6 -/* 058DB8 800581B8 46085401 */ sub.s $f16, $f10, $f8 -/* 058DBC 800581BC E4500028 */ swc1 $f16, 0x28($v0) -/* 058DC0 800581C0 8C620000 */ lw $v0, ($v1) -/* 058DC4 800581C4 C7B2001C */ lwc1 $f18, 0x1c($sp) -/* 058DC8 800581C8 C4440014 */ lwc1 $f4, 0x14($v0) -/* 058DCC 800581CC 00000000 */ nop -/* 058DD0 800581D0 46049181 */ sub.s $f6, $f18, $f4 -/* 058DD4 800581D4 E446002C */ swc1 $f6, 0x2c($v0) -.L800581D8: -/* 058DD8 800581D8 8FBF0014 */ lw $ra, 0x14($sp) -.L800581DC: -/* 058DDC 800581DC 27BD0028 */ addiu $sp, $sp, 0x28 -/* 058DE0 800581E0 03E00008 */ jr $ra -/* 058DE4 800581E4 00000000 */ nop - -glabel func_800581E8 -/* 058DE8 800581E8 27BDFF98 */ addiu $sp, $sp, -0x68 -/* 058DEC 800581EC 3C0142F0 */ li $at, 0x42F00000 # 120.000000 -/* 058DF0 800581F0 44818000 */ mtc1 $at, $f16 -/* 058DF4 800581F4 3C014248 */ li $at, 0x42480000 # 50.000000 -/* 058DF8 800581F8 44812000 */ mtc1 $at, $f4 -/* 058DFC 800581FC AFBF0014 */ sw $ra, 0x14($sp) -/* 058E00 80058200 240E0400 */ li $t6, 1024 -/* 058E04 80058204 E7AC0068 */ swc1 $f12, 0x68($sp) -/* 058E08 80058208 AFA5006C */ sw $a1, 0x6c($sp) -/* 058E0C 8005820C AFAE001C */ sw $t6, 0x1c($sp) -/* 058E10 80058210 AFA60070 */ sw $a2, 0x70($sp) -/* 058E14 80058214 E7B00054 */ swc1 $f16, 0x54($sp) -/* 058E18 80058218 0C019884 */ jal func_80066210 -/* 058E1C 8005821C E7A40050 */ swc1 $f4, 0x50($sp) -/* 058E20 80058220 24040001 */ li $a0, 1 -/* 058E24 80058224 8FA70070 */ lw $a3, 0x70($sp) -/* 058E28 80058228 C7B00054 */ lwc1 $f16, 0x54($sp) -/* 058E2C 8005822C 14440005 */ bne $v0, $a0, .L80058244 -/* 058E30 80058230 3C014340 */ li $at, 0x43400000 # 192.000000 -/* 058E34 80058234 44818000 */ mtc1 $at, $f16 -/* 058E38 80058238 240F0200 */ li $t7, 512 -/* 058E3C 8005823C 10000009 */ b .L80058264 -/* 058E40 80058240 AFAF001C */ sw $t7, 0x1c($sp) -.L80058244: -/* 058E44 80058244 28410003 */ slti $at, $v0, 3 -/* 058E48 80058248 14200006 */ bnez $at, .L80058264 -/* 058E4C 8005824C 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 058E50 80058250 44818000 */ mtc1 $at, $f16 -/* 058E54 80058254 3C014220 */ li $at, 0x42200000 # 40.000000 -/* 058E58 80058258 44813000 */ mtc1 $at, $f6 -/* 058E5C 8005825C 00000000 */ nop -/* 058E60 80058260 E7A60050 */ swc1 $f6, 0x50($sp) -.L80058264: -/* 058E64 80058264 AFA70070 */ sw $a3, 0x70($sp) -/* 058E68 80058268 0C008D5A */ jal func_80023568 -/* 058E6C 8005826C E7B00054 */ swc1 $f16, 0x54($sp) -/* 058E70 80058270 24040001 */ li $a0, 1 -/* 058E74 80058274 8FA70070 */ lw $a3, 0x70($sp) -/* 058E78 80058278 C7B00054 */ lwc1 $f16, 0x54($sp) -/* 058E7C 8005827C 10440002 */ beq $v0, $a0, .L80058288 -/* 058E80 80058280 24010004 */ li $at, 4 -/* 058E84 80058284 14410012 */ bne $v0, $at, .L800582D0 -.L80058288: -/* 058E88 80058288 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 -/* 058E8C 8005828C 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 -/* 058E90 80058290 3C014310 */ li $at, 0x43100000 # 144.000000 -/* 058E94 80058294 44810000 */ mtc1 $at, $f0 -/* 058E98 80058298 8D180000 */ lw $t8, ($t0) -/* 058E9C 8005829C 3C0142DC */ li $at, 0x42DC0000 # 110.000000 -/* 058EA0 800582A0 9319003B */ lbu $t9, 0x3b($t8) -/* 058EA4 800582A4 44819000 */ mtc1 $at, $f18 -/* 058EA8 800582A8 24010003 */ li $at, 3 -/* 058EAC 800582AC 17210005 */ bne $t9, $at, .L800582C4 -/* 058EB0 800582B0 46000406 */ mov.s $f16, $f0 -/* 058EB4 800582B4 3C0141F0 */ li $at, 0x41F00000 # 30.000000 -/* 058EB8 800582B8 44814000 */ mtc1 $at, $f8 -/* 058EBC 800582BC 00000000 */ nop -/* 058EC0 800582C0 46080400 */ add.s $f16, $f0, $f8 -.L800582C4: -/* 058EC4 800582C4 24090D00 */ li $t1, 3328 -/* 058EC8 800582C8 AFA9001C */ sw $t1, 0x1c($sp) -/* 058ECC 800582CC E7B20050 */ swc1 $f18, 0x50($sp) -.L800582D0: -/* 058ED0 800582D0 84EA01A0 */ lh $t2, 0x1a0($a3) -/* 058ED4 800582D4 84E2019E */ lh $v0, 0x19e($a3) -/* 058ED8 800582D8 000A5823 */ negu $t3, $t2 -/* 058EDC 800582DC 34018000 */ li $at, 32768 -/* 058EE0 800582E0 01626023 */ subu $t4, $t3, $v0 -/* 058EE4 800582E4 01816821 */ addu $t5, $t4, $at -/* 058EE8 800582E8 000218C3 */ sra $v1, $v0, 3 -/* 058EEC 800582EC 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 -/* 058EF0 800582F0 C7B20050 */ lwc1 $f18, 0x50($sp) -/* 058EF4 800582F4 28610401 */ slti $at, $v1, 0x401 -/* 058EF8 800582F8 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 -/* 058EFC 800582FC 14200002 */ bnez $at, .L80058308 -/* 058F00 80058300 A4ED0196 */ sh $t5, 0x196($a3) -/* 058F04 80058304 24030400 */ li $v1, 1024 -.L80058308: -/* 058F08 80058308 2861FC00 */ slti $at, $v1, -0x400 -/* 058F0C 8005830C 10200002 */ beqz $at, .L80058318 -/* 058F10 80058310 00000000 */ nop -/* 058F14 80058314 2403FC00 */ li $v1, -1024 -.L80058318: -/* 058F18 80058318 444EF800 */ cfc1 $t6, $31 -/* 058F1C 8005831C C7AA0068 */ lwc1 $f10, 0x68($sp) -/* 058F20 80058320 35C10003 */ ori $at, $t6, 3 -/* 058F24 80058324 38210002 */ xori $at, $at, 2 -/* 058F28 80058328 44C1F800 */ ctc1 $at, $31 -/* 058F2C 8005832C 00000000 */ nop -/* 058F30 80058330 46005124 */ cvt.w.s $f4, $f10 -/* 058F34 80058334 44062000 */ mfc1 $a2, $f4 -/* 058F38 80058338 44CEF800 */ ctc1 $t6, $31 -/* 058F3C 8005833C 00660019 */ multu $v1, $a2 -/* 058F40 80058340 00001812 */ mflo $v1 -/* 058F44 80058344 18600004 */ blez $v1, .L80058358 -/* 058F48 80058348 0062082A */ slt $at, $v1, $v0 -/* 058F4C 8005834C 10200002 */ beqz $at, .L80058358 -/* 058F50 80058350 00437823 */ subu $t7, $v0, $v1 -/* 058F54 80058354 A4EF019E */ sh $t7, 0x19e($a3) -.L80058358: -/* 058F58 80058358 04610007 */ bgez $v1, .L80058378 -/* 058F5C 8005835C 00000000 */ nop -/* 058F60 80058360 84E2019E */ lh $v0, 0x19e($a3) -/* 058F64 80058364 00000000 */ nop -/* 058F68 80058368 0043082A */ slt $at, $v0, $v1 -/* 058F6C 8005836C 10200002 */ beqz $at, .L80058378 -/* 058F70 80058370 0043C023 */ subu $t8, $v0, $v1 -/* 058F74 80058374 A4F8019E */ sh $t8, 0x19e($a3) -.L80058378: -/* 058F78 80058378 8D050000 */ lw $a1, ($t0) -/* 058F7C 8005837C C4EE00B8 */ lwc1 $f14, 0xb8($a3) -/* 058F80 80058380 90A2003B */ lbu $v0, 0x3b($a1) -/* 058F84 80058384 C4E20008 */ lwc1 $f2, 8($a3) -/* 058F88 80058388 10440007 */ beq $v0, $a0, .L800583A8 -/* 058F8C 8005838C 24010002 */ li $at, 2 -/* 058F90 80058390 10410009 */ beq $v0, $at, .L800583B8 -/* 058F94 80058394 24010003 */ li $at, 3 -/* 058F98 80058398 1041000F */ beq $v0, $at, .L800583D8 -/* 058F9C 8005839C 3C014254 */ lui $at, 0x4254 -/* 058FA0 800583A0 1000001A */ b .L8005840C -/* 058FA4 800583A4 80F901E2 */ lb $t9, 0x1e2($a3) -.L800583A8: -/* 058FA8 800583A8 3C01420C */ li $at, 0x420C0000 # 35.000000 -/* 058FAC 800583AC 44813000 */ mtc1 $at, $f6 -/* 058FB0 800583B0 10000015 */ b .L80058408 -/* 058FB4 800583B4 46068400 */ add.s $f16, $f16, $f6 -.L800583B8: -/* 058FB8 800583B8 3C01420C */ li $at, 0x420C0000 # 35.000000 -/* 058FBC 800583BC 44814000 */ mtc1 $at, $f8 -/* 058FC0 800583C0 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 058FC4 800583C4 44815000 */ mtc1 $at, $f10 -/* 058FC8 800583C8 46088401 */ sub.s $f16, $f16, $f8 -/* 058FCC 800583CC 1000000E */ b .L80058408 -/* 058FD0 800583D0 460A9481 */ sub.s $f18, $f18, $f10 -/* 058FD4 800583D4 3C014254 */ li $at, 0x42540000 # 53.000000 -.L800583D8: -/* 058FD8 800583D8 44812000 */ mtc1 $at, $f4 -/* 058FDC 800583DC 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 058FE0 800583E0 44813000 */ mtc1 $at, $f6 -/* 058FE4 800583E4 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 058FE8 800583E8 44815800 */ mtc1 $at, $f11 -/* 058FEC 800583EC 44805000 */ mtc1 $zero, $f10 -/* 058FF0 800583F0 46001221 */ cvt.d.s $f8, $f2 -/* 058FF4 800583F4 46048401 */ sub.s $f16, $f16, $f4 -/* 058FF8 800583F8 44807000 */ mtc1 $zero, $f14 -/* 058FFC 800583FC 462A4102 */ mul.d $f4, $f8, $f10 -/* 059000 80058400 46069481 */ sub.s $f18, $f18, $f6 -/* 059004 80058404 462020A0 */ cvt.s.d $f2, $f4 -.L80058408: -/* 059008 80058408 80F901E2 */ lb $t9, 0x1e2($a3) -.L8005840C: -/* 05900C 8005840C 44804800 */ mtc1 $zero, $f9 -/* 059010 80058410 2B210003 */ slti $at, $t9, 3 -/* 059014 80058414 10200006 */ beqz $at, .L80058430 -/* 059018 80058418 8FAA006C */ lw $t2, 0x6c($sp) -/* 05901C 8005841C 80E901E5 */ lb $t1, 0x1e5($a3) -/* 059020 80058420 00000000 */ nop -/* 059024 80058424 11200024 */ beqz $t1, .L800584B8 -/* 059028 80058428 00000000 */ nop -/* 05902C 8005842C 8FAA006C */ lw $t2, 0x6c($sp) -.L80058430: -/* 059030 80058430 8FAC001C */ lw $t4, 0x1c($sp) -/* 059034 80058434 85420002 */ lh $v0, 2($t2) -/* 059038 80058438 34018001 */ li $at, 32769 -/* 05903C 8005843C 18400008 */ blez $v0, .L80058460 -/* 059040 80058440 00000000 */ nop -/* 059044 80058444 2442F8E4 */ addiu $v0, $v0, -0x71c -/* 059048 80058448 04410003 */ bgez $v0, .L80058458 -/* 05904C 8005844C 00025843 */ sra $t3, $v0, 1 -/* 059050 80058450 00001025 */ move $v0, $zero -/* 059054 80058454 00025843 */ sra $t3, $v0, 1 -.L80058458: -/* 059058 80058458 10000005 */ b .L80058470 -/* 05905C 8005845C 01601025 */ move $v0, $t3 -.L80058460: -/* 059060 80058460 2442071C */ addiu $v0, $v0, 0x71c -/* 059064 80058464 18400002 */ blez $v0, .L80058470 -/* 059068 80058468 00000000 */ nop -/* 05906C 8005846C 00001025 */ move $v0, $zero -.L80058470: -/* 059070 80058470 84A40002 */ lh $a0, 2($a1) -/* 059074 80058474 01821023 */ subu $v0, $t4, $v0 -/* 059078 80058478 308DFFFF */ andi $t5, $a0, 0xffff -/* 05907C 8005847C 004D1823 */ subu $v1, $v0, $t5 -/* 059080 80058480 0061082A */ slt $at, $v1, $at -/* 059084 80058484 14200003 */ bnez $at, .L80058494 -/* 059088 80058488 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 05908C 8005848C 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 059090 80058490 00611821 */ addu $v1, $v1, $at -.L80058494: -/* 059094 80058494 28618000 */ slti $at, $v1, -0x8000 -/* 059098 80058498 10200002 */ beqz $at, .L800584A4 -/* 05909C 8005849C 3401FFFF */ li $at, 65535 -/* 0590A0 800584A0 00611821 */ addu $v1, $v1, $at -.L800584A4: -/* 0590A4 800584A4 00660019 */ multu $v1, $a2 -/* 0590A8 800584A8 00007012 */ mflo $t6 -/* 0590AC 800584AC 000E7903 */ sra $t7, $t6, 4 -/* 0590B0 800584B0 008FC021 */ addu $t8, $a0, $t7 -/* 0590B4 800584B4 A4B80002 */ sh $t8, 2($a1) -.L800584B8: -/* 0590B8 800584B8 C4E0002C */ lwc1 $f0, 0x2c($a3) -/* 0590BC 800584BC 44804000 */ mtc1 $zero, $f8 -/* 0590C0 800584C0 460001A1 */ cvt.d.s $f6, $f0 -/* 0590C4 800584C4 4628303C */ c.lt.d $f6, $f8 -/* 0590C8 800584C8 3C0A8012 */ lui $t2, %hi(D_8011D540) # $t2, 0x8012 -/* 0590CC 800584CC 45000016 */ bc1f .L80058528 -/* 0590D0 800584D0 00000000 */ nop -/* 0590D4 800584D4 460E0282 */ mul.s $f10, $f0, $f14 -/* 0590D8 800584D8 80F901E6 */ lb $t9, 0x1e6($a3) -/* 0590DC 800584DC 3C0140C0 */ li $at, 0x40C00000 # 6.000000 -/* 0590E0 800584E0 44816000 */ mtc1 $at, $f12 -/* 0590E4 800584E4 13200004 */ beqz $t9, .L800584F8 -/* 0590E8 800584E8 46005107 */ neg.s $f4, $f10 -/* 0590EC 800584EC 3C014040 */ li $at, 0x40400000 # 3.000000 -/* 0590F0 800584F0 44816000 */ mtc1 $at, $f12 -/* 0590F4 800584F4 00000000 */ nop -.L800584F8: -/* 0590F8 800584F8 460C2302 */ mul.s $f12, $f4, $f12 -/* 0590FC 800584FC 3C01800E */ lui $at, %hi(D_800E6914) # $at, 0x800e -/* 059100 80058500 C4276910 */ lwc1 $f7, %lo(D_800E6910)($at) -/* 059104 80058504 C4266914 */ lwc1 $f6, %lo(D_800E6914)($at) -/* 059108 80058508 46006221 */ cvt.d.s $f8, $f12 -/* 05910C 8005850C 4628303C */ c.lt.d $f6, $f8 -/* 059110 80058510 3C014282 */ li $at, 0x42820000 # 65.000000 -/* 059114 80058514 45000003 */ bc1f .L80058524 -/* 059118 80058518 00000000 */ nop -/* 05911C 8005851C 44816000 */ mtc1 $at, $f12 -/* 059120 80058520 00000000 */ nop -.L80058524: -/* 059124 80058524 460C8401 */ sub.s $f16, $f16, $f12 -.L80058528: -/* 059128 80058528 80E901E6 */ lb $t1, 0x1e6($a3) -/* 05912C 8005852C 00000000 */ nop -/* 059130 80058530 15200006 */ bnez $t1, .L8005854C -/* 059134 80058534 3C014270 */ li $at, 0x42700000 # 60.000000 -/* 059138 80058538 44815000 */ mtc1 $at, $f10 -/* 05913C 8005853C 00000000 */ nop -/* 059140 80058540 460A1102 */ mul.s $f4, $f2, $f10 -/* 059144 80058544 10000006 */ b .L80058560 -/* 059148 80058548 46048400 */ add.s $f16, $f16, $f4 -.L8005854C: -/* 05914C 8005854C 3C0141F0 */ li $at, 0x41F00000 # 30.000000 -/* 059150 80058550 44813000 */ mtc1 $at, $f6 -/* 059154 80058554 00000000 */ nop -/* 059158 80058558 46061202 */ mul.s $f8, $f2, $f6 -/* 05915C 8005855C 46088400 */ add.s $f16, $f16, $f8 -.L80058560: -/* 059160 80058560 8D4AD540 */ lw $t2, %lo(D_8011D540)($t2) -/* 059164 80058564 E7B20050 */ swc1 $f18, 0x50($sp) -/* 059168 80058568 15400014 */ bnez $t2, .L800585BC -/* 05916C 8005856C 24040024 */ li $a0, 36 -/* 059170 80058570 AFA70070 */ sw $a3, 0x70($sp) -/* 059174 80058574 E7B00054 */ swc1 $f16, 0x54($sp) -/* 059178 80058578 0C00322D */ jal func_8000C8B4 -/* 05917C 8005857C E7B20050 */ swc1 $f18, 0x50($sp) -/* 059180 80058580 8FA70070 */ lw $a3, 0x70($sp) -/* 059184 80058584 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 -/* 059188 80058588 80E301D3 */ lb $v1, 0x1d3($a3) -/* 05918C 8005858C C7B00054 */ lwc1 $f16, 0x54($sp) -/* 059190 80058590 0043082A */ slt $at, $v0, $v1 -/* 059194 80058594 10200005 */ beqz $at, .L800585AC -/* 059198 80058598 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 -/* 05919C 8005859C 3C01C1F0 */ li $at, 0xC1F00000 # -30.000000 -/* 0591A0 800585A0 44818000 */ mtc1 $at, $f16 -/* 0591A4 800585A4 10000005 */ b .L800585BC -/* 0591A8 800585A8 00000000 */ nop -.L800585AC: -/* 0591AC 800585AC 18600003 */ blez $v1, .L800585BC -/* 0591B0 800585B0 3C014334 */ li $at, 0x43340000 # 180.000000 -/* 0591B4 800585B4 44818000 */ mtc1 $at, $f16 -/* 0591B8 800585B8 00000000 */ nop -.L800585BC: -/* 0591BC 800585BC 3C0B8012 */ lui $t3, %hi(D_8011D540) # $t3, 0x8012 -/* 0591C0 800585C0 8D6BD540 */ lw $t3, %lo(D_8011D540)($t3) -/* 0591C4 800585C4 C7B20050 */ lwc1 $f18, 0x50($sp) -/* 0591C8 800585C8 8D050000 */ lw $a1, ($t0) -/* 0591CC 800585CC 29610051 */ slti $at, $t3, 0x51 -/* 0591D0 800585D0 14200007 */ bnez $at, .L800585F0 -/* 0591D4 800585D4 00000000 */ nop -/* 0591D8 800585D8 E4B0001C */ swc1 $f16, 0x1c($a1) -/* 0591DC 800585DC 8D0C0000 */ lw $t4, ($t0) -/* 0591E0 800585E0 00000000 */ nop -/* 0591E4 800585E4 E5920020 */ swc1 $f18, 0x20($t4) -/* 0591E8 800585E8 8D050000 */ lw $a1, ($t0) -/* 0591EC 800585EC 00000000 */ nop -.L800585F0: -/* 0591F0 800585F0 C4A2001C */ lwc1 $f2, 0x1c($a1) -/* 0591F4 800585F4 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 0591F8 800585F8 46028101 */ sub.s $f4, $f16, $f2 -/* 0591FC 800585FC 44810800 */ mtc1 $at, $f1 -/* 059200 80058600 44800000 */ mtc1 $zero, $f0 -/* 059204 80058604 460021A1 */ cvt.d.s $f6, $f4 -/* 059208 80058608 46203202 */ mul.d $f8, $f6, $f0 -/* 05920C 8005860C 460012A1 */ cvt.d.s $f10, $f2 -/* 059210 80058610 46285100 */ add.d $f4, $f10, $f8 -/* 059214 80058614 462021A0 */ cvt.s.d $f6, $f4 -/* 059218 80058618 E4A6001C */ swc1 $f6, 0x1c($a1) -/* 05921C 8005861C 8D050000 */ lw $a1, ($t0) -/* 059220 80058620 00000000 */ nop -/* 059224 80058624 C4AE0020 */ lwc1 $f14, 0x20($a1) -/* 059228 80058628 00000000 */ nop -/* 05922C 8005862C 460E9201 */ sub.s $f8, $f18, $f14 -/* 059230 80058630 46004121 */ cvt.d.s $f4, $f8 -/* 059234 80058634 46202182 */ mul.d $f6, $f4, $f0 -/* 059238 80058638 460072A1 */ cvt.d.s $f10, $f14 -/* 05923C 8005863C 46265200 */ add.d $f8, $f10, $f6 -/* 059240 80058640 46204120 */ cvt.s.d $f4, $f8 -/* 059244 80058644 E4A40020 */ swc1 $f4, 0x20($a1) -/* 059248 80058648 8D0D0000 */ lw $t5, ($t0) -/* 05924C 8005864C 8FAF001C */ lw $t7, 0x1c($sp) -/* 059250 80058650 85AE0002 */ lh $t6, 2($t5) -/* 059254 80058654 AFA70070 */ sw $a3, 0x70($sp) -/* 059258 80058658 01CF2023 */ subu $a0, $t6, $t7 -/* 05925C 8005865C 0004C400 */ sll $t8, $a0, 0x10 -/* 059260 80058660 0C01C1F1 */ jal func_800707C4 -/* 059264 80058664 00182403 */ sra $a0, $t8, 0x10 -/* 059268 80058668 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 -/* 05926C 8005866C 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 -/* 059270 80058670 8D090000 */ lw $t1, ($t0) -/* 059274 80058674 8FAB001C */ lw $t3, 0x1c($sp) -/* 059278 80058678 852A0002 */ lh $t2, 2($t1) -/* 05927C 8005867C E7A00038 */ swc1 $f0, 0x38($sp) -/* 059280 80058680 014B2023 */ subu $a0, $t2, $t3 -/* 059284 80058684 00046400 */ sll $t4, $a0, 0x10 -/* 059288 80058688 0C01C1FE */ jal func_800707F8 -/* 05928C 8005868C 000C2403 */ sra $a0, $t4, 0x10 -/* 059290 80058690 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 -/* 059294 80058694 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 -/* 059298 80058698 8D050000 */ lw $a1, ($t0) -/* 05929C 8005869C C7B00038 */ lwc1 $f16, 0x38($sp) -/* 0592A0 800586A0 C4A2001C */ lwc1 $f2, 0x1c($a1) -/* 0592A4 800586A4 C4AE0020 */ lwc1 $f14, 0x20($a1) -/* 0592A8 800586A8 46001282 */ mul.s $f10, $f2, $f0 -/* 0592AC 800586AC 8FA70070 */ lw $a3, 0x70($sp) -/* 0592B0 800586B0 340F8000 */ li $t7, 32768 -/* 0592B4 800586B4 46107182 */ mul.s $f6, $f14, $f16 -/* 0592B8 800586B8 00000000 */ nop -/* 0592BC 800586BC 46101202 */ mul.s $f8, $f2, $f16 -/* 0592C0 800586C0 46065301 */ sub.s $f12, $f10, $f6 -/* 0592C4 800586C4 46007102 */ mul.s $f4, $f14, $f0 -/* 0592C8 800586C8 46044280 */ add.s $f10, $f8, $f4 -/* 0592CC 800586CC E7AA0050 */ swc1 $f10, 0x50($sp) -/* 0592D0 800586D0 84EE0196 */ lh $t6, 0x196($a3) -/* 0592D4 800586D4 E7AC0040 */ swc1 $f12, 0x40($sp) -/* 0592D8 800586D8 01EE2023 */ subu $a0, $t7, $t6 -/* 0592DC 800586DC 0004C400 */ sll $t8, $a0, 0x10 -/* 0592E0 800586E0 0C01C1F1 */ jal func_800707C4 -/* 0592E4 800586E4 00182403 */ sra $a0, $t8, 0x10 -/* 0592E8 800586E8 C7AC0040 */ lwc1 $f12, 0x40($sp) -/* 0592EC 800586EC 8FA70070 */ lw $a3, 0x70($sp) -/* 0592F0 800586F0 460C0182 */ mul.s $f6, $f0, $f12 -/* 0592F4 800586F4 340A8000 */ li $t2, 32768 -/* 0592F8 800586F8 E7A60048 */ swc1 $f6, 0x48($sp) -/* 0592FC 800586FC 84E90196 */ lh $t1, 0x196($a3) -/* 059300 80058700 00000000 */ nop -/* 059304 80058704 01492023 */ subu $a0, $t2, $t1 -/* 059308 80058708 00045C00 */ sll $t3, $a0, 0x10 -/* 05930C 8005870C 0C01C1FE */ jal func_800707F8 -/* 059310 80058710 000B2403 */ sra $a0, $t3, 0x10 -/* 059314 80058714 C7AC0040 */ lwc1 $f12, 0x40($sp) -/* 059318 80058718 3C0D8012 */ lui $t5, %hi(D_8011D528) # $t5, 0x8012 -/* 05931C 8005871C 460C0202 */ mul.s $f8, $f0, $f12 -/* 059320 80058720 8DADD528 */ lw $t5, %lo(D_8011D528)($t5) -/* 059324 80058724 44807000 */ mtc1 $zero, $f14 -/* 059328 80058728 8FA70070 */ lw $a3, 0x70($sp) -/* 05932C 8005872C 31AF8000 */ andi $t7, $t5, 0x8000 -/* 059330 80058730 E7A80044 */ swc1 $f8, 0x44($sp) -/* 059334 80058734 11E00023 */ beqz $t7, .L800587C4 -/* 059338 80058738 46007086 */ mov.s $f2, $f14 -/* 05933C 8005873C 3C01800E */ lui $at, %hi(D_800E691C) # $at, 0x800e -/* 059340 80058740 C4E40030 */ lwc1 $f4, 0x30($a3) -/* 059344 80058744 C4276918 */ lwc1 $f7, %lo(D_800E6918)($at) -/* 059348 80058748 C426691C */ lwc1 $f6, %lo(D_800E691C)($at) -/* 05934C 8005874C 460022A1 */ cvt.d.s $f10, $f4 -/* 059350 80058750 46265202 */ mul.d $f8, $f10, $f6 -/* 059354 80058754 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 -/* 059358 80058758 462040A0 */ cvt.s.d $f2, $f8 -/* 05935C 8005875C 4602703C */ c.lt.s $f14, $f2 -/* 059360 80058760 00000000 */ nop -/* 059364 80058764 4500000D */ bc1f .L8005879C -/* 059368 80058768 00000000 */ nop -/* 05936C 8005876C 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 -/* 059370 80058770 44815800 */ mtc1 $at, $f11 -/* 059374 80058774 44805000 */ mtc1 $zero, $f10 -/* 059378 80058778 46001121 */ cvt.d.s $f4, $f2 -/* 05937C 8005877C 462A2181 */ sub.d $f6, $f4, $f10 -/* 059380 80058780 462030A0 */ cvt.s.d $f2, $f6 -/* 059384 80058784 460E103C */ c.lt.s $f2, $f14 -/* 059388 80058788 00000000 */ nop -/* 05938C 8005878C 4500000D */ bc1f .L800587C4 -/* 059390 80058790 00000000 */ nop -/* 059394 80058794 1000000B */ b .L800587C4 -/* 059398 80058798 46007086 */ mov.s $f2, $f14 -.L8005879C: -/* 05939C 8005879C 44812800 */ mtc1 $at, $f5 -/* 0593A0 800587A0 44802000 */ mtc1 $zero, $f4 -/* 0593A4 800587A4 46001221 */ cvt.d.s $f8, $f2 -/* 0593A8 800587A8 46244280 */ add.d $f10, $f8, $f4 -/* 0593AC 800587AC 462050A0 */ cvt.s.d $f2, $f10 -/* 0593B0 800587B0 4602703C */ c.lt.s $f14, $f2 -/* 0593B4 800587B4 00000000 */ nop -/* 0593B8 800587B8 45000002 */ bc1f .L800587C4 -/* 0593BC 800587BC 00000000 */ nop -/* 0593C0 800587C0 46007086 */ mov.s $f2, $f14 -.L800587C4: -/* 0593C4 800587C4 80E201E6 */ lb $v0, 0x1e6($a3) -/* 0593C8 800587C8 00000000 */ nop -/* 0593CC 800587CC 10400008 */ beqz $v0, .L800587F0 -/* 0593D0 800587D0 00000000 */ nop -/* 0593D4 800587D4 44823000 */ mtc1 $v0, $f6 -/* 0593D8 800587D8 3C014140 */ li $at, 0x41400000 # 12.000000 -/* 0593DC 800587DC 46803220 */ cvt.s.w $f8, $f6 -/* 0593E0 800587E0 44815000 */ mtc1 $at, $f10 -/* 0593E4 800587E4 46004107 */ neg.s $f4, $f8 -/* 0593E8 800587E8 460A2082 */ mul.s $f2, $f4, $f10 -/* 0593EC 800587EC 00000000 */ nop -.L800587F0: -/* 0593F0 800587F0 C4E000C8 */ lwc1 $f0, 0xc8($a3) -/* 0593F4 800587F4 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 0593F8 800587F8 46001181 */ sub.s $f6, $f2, $f0 -/* 0593FC 800587FC 44812800 */ mtc1 $at, $f5 -/* 059400 80058800 44802000 */ mtc1 $zero, $f4 -/* 059404 80058804 46003221 */ cvt.d.s $f8, $f6 -/* 059408 80058808 46244282 */ mul.d $f10, $f8, $f4 -/* 05940C 8005880C 460001A1 */ cvt.d.s $f6, $f0 -/* 059410 80058810 80EE01DB */ lb $t6, 0x1db($a3) -/* 059414 80058814 462A3200 */ add.d $f8, $f6, $f10 -/* 059418 80058818 46204120 */ cvt.s.d $f4, $f8 -/* 05941C 8005881C 11C0000B */ beqz $t6, .L8005884C -/* 059420 80058820 E4E400C8 */ swc1 $f4, 0xc8($a3) -/* 059424 80058824 C4E60094 */ lwc1 $f6, 0x94($a3) -/* 059428 80058828 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 05942C 8005882C 44815800 */ mtc1 $at, $f11 -/* 059430 80058830 44805000 */ mtc1 $zero, $f10 -/* 059434 80058834 46003021 */ cvt.d.s $f0, $f6 -/* 059438 80058838 462A0202 */ mul.d $f8, $f0, $f10 -/* 05943C 8005883C 46280101 */ sub.d $f4, $f0, $f8 -/* 059440 80058840 462021A0 */ cvt.s.d $f6, $f4 -/* 059444 80058844 1000000E */ b .L80058880 -/* 059448 80058848 E4E60094 */ swc1 $f6, 0x94($a3) -.L8005884C: -/* 05944C 8005884C 3C014024 */ li $at, 0x40240000 # 2.562500 -/* 059450 80058850 44814800 */ mtc1 $at, $f9 -/* 059454 80058854 C4EA0094 */ lwc1 $f10, 0x94($a3) -/* 059458 80058858 44804000 */ mtc1 $zero, $f8 -/* 05945C 8005885C 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 059460 80058860 46005021 */ cvt.d.s $f0, $f10 -/* 059464 80058864 44813800 */ mtc1 $at, $f7 -/* 059468 80058868 44803000 */ mtc1 $zero, $f6 -/* 05946C 8005886C 46204101 */ sub.d $f4, $f8, $f0 -/* 059470 80058870 46262282 */ mul.d $f10, $f4, $f6 -/* 059474 80058874 462A0200 */ add.d $f8, $f0, $f10 -/* 059478 80058878 46204120 */ cvt.s.d $f4, $f8 -/* 05947C 8005887C E4E40094 */ swc1 $f4, 0x94($a3) -.L80058880: -/* 059480 80058880 C4E00094 */ lwc1 $f0, 0x94($a3) -/* 059484 80058884 C4EA0038 */ lwc1 $f10, 0x38($a3) -/* 059488 80058888 8FA2006C */ lw $v0, 0x6c($sp) -/* 05948C 8005888C 46005202 */ mul.s $f8, $f10, $f0 -/* 059490 80058890 C446000C */ lwc1 $f6, 0xc($v0) -/* 059494 80058894 00000000 */ nop -/* 059498 80058898 46083101 */ sub.s $f4, $f6, $f8 -/* 05949C 8005889C E7A40030 */ swc1 $f4, 0x30($sp) -/* 0594A0 800588A0 C4E6003C */ lwc1 $f6, 0x3c($a3) -/* 0594A4 800588A4 C44A0010 */ lwc1 $f10, 0x10($v0) -/* 0594A8 800588A8 46003202 */ mul.s $f8, $f6, $f0 -/* 0594AC 800588AC 46085101 */ sub.s $f4, $f10, $f8 -/* 0594B0 800588B0 E7A4002C */ swc1 $f4, 0x2c($sp) -/* 0594B4 800588B4 C4EA0040 */ lwc1 $f10, 0x40($a3) -/* 0594B8 800588B8 C4460014 */ lwc1 $f6, 0x14($v0) -/* 0594BC 800588BC 46005202 */ mul.s $f8, $f10, $f0 -/* 0594C0 800588C0 46083101 */ sub.s $f4, $f6, $f8 -/* 0594C4 800588C4 E7A40028 */ swc1 $f4, 0x28($sp) -/* 0594C8 800588C8 84E40196 */ lh $a0, 0x196($a3) -/* 0594CC 800588CC AFA70070 */ sw $a3, 0x70($sp) -/* 0594D0 800588D0 24844000 */ addiu $a0, $a0, 0x4000 -/* 0594D4 800588D4 0004C400 */ sll $t8, $a0, 0x10 -/* 0594D8 800588D8 0C01C1F1 */ jal func_800707C4 -/* 0594DC 800588DC 00182403 */ sra $a0, $t8, 0x10 -/* 0594E0 800588E0 8FA70070 */ lw $a3, 0x70($sp) -/* 0594E4 800588E4 C7A60030 */ lwc1 $f6, 0x30($sp) -/* 0594E8 800588E8 C4EA00C8 */ lwc1 $f10, 0xc8($a3) -/* 0594EC 800588EC C7A80048 */ lwc1 $f8, 0x48($sp) -/* 0594F0 800588F0 460A0302 */ mul.s $f12, $f0, $f10 -/* 0594F4 800588F4 46083100 */ add.s $f4, $f6, $f8 -/* 0594F8 800588F8 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 -/* 0594FC 800588FC 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 -/* 059500 80058900 8D0A0000 */ lw $t2, ($t0) -/* 059504 80058904 460C2280 */ add.s $f10, $f4, $f12 -/* 059508 80058908 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 05950C 8005890C E54A000C */ swc1 $f10, 0xc($t2) -/* 059510 80058910 C7A80050 */ lwc1 $f8, 0x50($sp) -/* 059514 80058914 C7A6002C */ lwc1 $f6, 0x2c($sp) -/* 059518 80058918 8D050000 */ lw $a1, ($t0) -/* 05951C 8005891C 46083480 */ add.s $f18, $f6, $f8 -/* 059520 80058920 C4AE0010 */ lwc1 $f14, 0x10($a1) -/* 059524 80058924 44803000 */ mtc1 $zero, $f6 -/* 059528 80058928 46127101 */ sub.s $f4, $f14, $f18 -/* 05952C 8005892C 44813800 */ mtc1 $at, $f7 -/* 059530 80058930 460022A1 */ cvt.d.s $f10, $f4 -/* 059534 80058934 46265202 */ mul.d $f8, $f10, $f6 -/* 059538 80058938 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 05953C 8005893C 44812800 */ mtc1 $at, $f5 -/* 059540 80058940 44802000 */ mtc1 $zero, $f4 -/* 059544 80058944 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 059548 80058948 46204420 */ cvt.s.d $f16, $f8 -/* 05954C 8005894C 3C098012 */ lui $t1, %hi(D_8011D540) # $t1, 0x8012 -/* 059550 80058950 460080A1 */ cvt.d.s $f2, $f16 -/* 059554 80058954 4624103C */ c.lt.d $f2, $f4 -/* 059558 80058958 00000000 */ nop -/* 05955C 8005895C 4500000C */ bc1f .L80058990 -/* 059560 80058960 00000000 */ nop -/* 059564 80058964 44813800 */ mtc1 $at, $f7 -/* 059568 80058968 44803000 */ mtc1 $zero, $f6 -/* 05956C 8005896C 460072A1 */ cvt.d.s $f10, $f14 -/* 059570 80058970 46261200 */ add.d $f8, $f2, $f6 -/* 059574 80058974 46285101 */ sub.d $f4, $f10, $f8 -/* 059578 80058978 462021A0 */ cvt.s.d $f6, $f4 -/* 05957C 8005897C E4A60010 */ swc1 $f6, 0x10($a1) -/* 059580 80058980 8D050000 */ lw $a1, ($t0) -/* 059584 80058984 00000000 */ nop -/* 059588 80058988 C4AE0010 */ lwc1 $f14, 0x10($a1) -/* 05958C 8005898C 00000000 */ nop -.L80058990: -/* 059590 80058990 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 059594 80058994 44814800 */ mtc1 $at, $f9 -/* 059598 80058998 44804000 */ mtc1 $zero, $f8 -/* 05959C 8005899C 460072A1 */ cvt.d.s $f10, $f14 -/* 0595A0 800589A0 46281102 */ mul.d $f4, $f2, $f8 -/* 0595A4 800589A4 46245181 */ sub.d $f6, $f10, $f4 -/* 0595A8 800589A8 44805000 */ mtc1 $zero, $f10 -/* 0595AC 800589AC 46203220 */ cvt.s.d $f8, $f6 -/* 0595B0 800589B0 4610503C */ c.lt.s $f10, $f16 -/* 0595B4 800589B4 E4A80010 */ swc1 $f8, 0x10($a1) -/* 0595B8 800589B8 45010005 */ bc1t .L800589D0 -/* 0595BC 800589BC 00000000 */ nop -/* 0595C0 800589C0 8D29D540 */ lw $t1, %lo(D_8011D540)($t1) -/* 0595C4 800589C4 00000000 */ nop -/* 0595C8 800589C8 11200004 */ beqz $t1, .L800589DC -/* 0595CC 800589CC 00000000 */ nop -.L800589D0: -/* 0595D0 800589D0 8D0B0000 */ lw $t3, ($t0) -/* 0595D4 800589D4 00000000 */ nop -/* 0595D8 800589D8 E5720010 */ swc1 $f18, 0x10($t3) -.L800589DC: -/* 0595DC 800589DC 84E40196 */ lh $a0, 0x196($a3) -/* 0595E0 800589E0 AFA70070 */ sw $a3, 0x70($sp) -/* 0595E4 800589E4 24844000 */ addiu $a0, $a0, 0x4000 -/* 0595E8 800589E8 00046400 */ sll $t4, $a0, 0x10 -/* 0595EC 800589EC 0C01C1FE */ jal func_800707F8 -/* 0595F0 800589F0 000C2403 */ sra $a0, $t4, 0x10 -/* 0595F4 800589F4 8FA70070 */ lw $a3, 0x70($sp) -/* 0595F8 800589F8 46000107 */ neg.s $f4, $f0 -/* 0595FC 800589FC C4E600C8 */ lwc1 $f6, 0xc8($a3) -/* 059600 80058A00 C7A80028 */ lwc1 $f8, 0x28($sp) -/* 059604 80058A04 46062302 */ mul.s $f12, $f4, $f6 -/* 059608 80058A08 C7AA0044 */ lwc1 $f10, 0x44($sp) -/* 05960C 80058A0C 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 -/* 059610 80058A10 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 -/* 059614 80058A14 460A4100 */ add.s $f4, $f8, $f10 -/* 059618 80058A18 8D0F0000 */ lw $t7, ($t0) -/* 05961C 80058A1C 460C2180 */ add.s $f6, $f4, $f12 -/* 059620 80058A20 3C098012 */ lui $t1, %hi(D_8011D586) # $t1, 0x8012 -/* 059624 80058A24 E5E60014 */ swc1 $f6, 0x14($t7) -/* 059628 80058A28 8D180000 */ lw $t8, ($t0) -/* 05962C 80058A2C 84EE0196 */ lh $t6, 0x196($a3) -/* 059630 80058A30 240F2000 */ li $t7, 8192 -/* 059634 80058A34 A70E0000 */ sh $t6, ($t8) -/* 059638 80058A38 8FB9006C */ lw $t9, 0x6c($sp) -/* 05963C 80058A3C 80EA01E6 */ lb $t2, 0x1e6($a3) -/* 059640 80058A40 87220004 */ lh $v0, 4($t9) -/* 059644 80058A44 11400009 */ beqz $t2, .L80058A6C -/* 059648 80058A48 240EE000 */ li $t6, -8192 -/* 05964C 80058A4C C4EA00B8 */ lwc1 $f10, 0xb8($a3) -/* 059650 80058A50 44804800 */ mtc1 $zero, $f9 -/* 059654 80058A54 44804000 */ mtc1 $zero, $f8 -/* 059658 80058A58 46005121 */ cvt.d.s $f4, $f10 -/* 05965C 80058A5C 4624403C */ c.lt.d $f8, $f4 -/* 059660 80058A60 00000000 */ nop -/* 059664 80058A64 45010005 */ bc1t .L80058A7C -/* 059668 80058A68 00000000 */ nop -.L80058A6C: -/* 05966C 80058A6C 8529D586 */ lh $t1, %lo(D_8011D586)($t1) -/* 059670 80058A70 00000000 */ nop -/* 059674 80058A74 11200002 */ beqz $t1, .L80058A80 -/* 059678 80058A78 00000000 */ nop -.L80058A7C: -/* 05967C 80058A7C 00001025 */ move $v0, $zero -.L80058A80: -/* 059680 80058A80 8D050000 */ lw $a1, ($t0) -/* 059684 80058A84 00000000 */ nop -/* 059688 80058A88 84A40004 */ lh $a0, 4($a1) -/* 05968C 80058A8C 00000000 */ nop -/* 059690 80058A90 00825821 */ addu $t3, $a0, $v0 -/* 059694 80058A94 000B6103 */ sra $t4, $t3, 4 -/* 059698 80058A98 008C6823 */ subu $t5, $a0, $t4 -/* 05969C 80058A9C A4AD0004 */ sh $t5, 4($a1) -/* 0596A0 80058AA0 8D050000 */ lw $a1, ($t0) -/* 0596A4 80058AA4 00000000 */ nop -/* 0596A8 80058AA8 84A40004 */ lh $a0, 4($a1) -/* 0596AC 80058AAC 00000000 */ nop -/* 0596B0 80058AB0 28812001 */ slti $at, $a0, 0x2001 -/* 0596B4 80058AB4 14200007 */ bnez $at, .L80058AD4 -/* 0596B8 80058AB8 2881E000 */ slti $at, $a0, -0x2000 -/* 0596BC 80058ABC A4AF0004 */ sh $t7, 4($a1) -/* 0596C0 80058AC0 8D050000 */ lw $a1, ($t0) -/* 0596C4 80058AC4 00000000 */ nop -/* 0596C8 80058AC8 84A40004 */ lh $a0, 4($a1) -/* 0596CC 80058ACC 00000000 */ nop -/* 0596D0 80058AD0 2881E000 */ slti $at, $a0, -0x2000 -.L80058AD4: -/* 0596D4 80058AD4 10200006 */ beqz $at, .L80058AF0 -/* 0596D8 80058AD8 00000000 */ nop -/* 0596DC 80058ADC A4AE0004 */ sh $t6, 4($a1) -/* 0596E0 80058AE0 8D180000 */ lw $t8, ($t0) -/* 0596E4 80058AE4 00000000 */ nop -/* 0596E8 80058AE8 87040004 */ lh $a0, 4($t8) -/* 0596EC 80058AEC 00000000 */ nop -.L80058AF0: -/* 0596F0 80058AF0 0C01C1F1 */ jal func_800707C4 -/* 0596F4 80058AF4 AFA70070 */ sw $a3, 0x70($sp) -/* 0596F8 80058AF8 8FA70070 */ lw $a3, 0x70($sp) -/* 0596FC 80058AFC 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 -/* 059700 80058B00 C4EA00C8 */ lwc1 $f10, 0xc8($a3) -/* 059704 80058B04 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 -/* 059708 80058B08 46005202 */ mul.s $f8, $f10, $f0 -/* 05970C 80058B0C 8D050000 */ lw $a1, ($t0) -/* 059710 80058B10 00000000 */ nop -/* 059714 80058B14 C4A60010 */ lwc1 $f6, 0x10($a1) -/* 059718 80058B18 00000000 */ nop -/* 05971C 80058B1C 46083101 */ sub.s $f4, $f6, $f8 -/* 059720 80058B20 E4A40010 */ swc1 $f4, 0x10($a1) -/* 059724 80058B24 8D050000 */ lw $a1, ($t0) -/* 059728 80058B28 00000000 */ nop -/* 05972C 80058B2C C4AC000C */ lwc1 $f12, 0xc($a1) -/* 059730 80058B30 C4AE0010 */ lwc1 $f14, 0x10($a1) -/* 059734 80058B34 8CA60014 */ lw $a2, 0x14($a1) -/* 059738 80058B38 0C00A7C6 */ jal func_80029F18 -/* 05973C 80058B3C 00000000 */ nop -/* 059740 80058B40 8FA70070 */ lw $a3, 0x70($sp) -/* 059744 80058B44 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 -/* 059748 80058B48 2401FFFF */ li $at, -1 -/* 05974C 80058B4C 10410004 */ beq $v0, $at, .L80058B60 -/* 059750 80058B50 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 -/* 059754 80058B54 8D190000 */ lw $t9, ($t0) -/* 059758 80058B58 00000000 */ nop -/* 05975C 80058B5C A7220034 */ sh $v0, 0x34($t9) -.L80058B60: -/* 059760 80058B60 8D0A0000 */ lw $t2, ($t0) -/* 059764 80058B64 00000000 */ nop -/* 059768 80058B68 85490000 */ lh $t1, ($t2) -/* 05976C 80058B6C 00000000 */ nop -/* 059770 80058B70 A4E90196 */ sh $t1, 0x196($a3) -/* 059774 80058B74 8FBF0014 */ lw $ra, 0x14($sp) -/* 059778 80058B78 27BD0068 */ addiu $sp, $sp, 0x68 -/* 05977C 80058B7C 03E00008 */ jr $ra -/* 059780 80058B80 00000000 */ nop - -glabel func_80058B84 -/* 059784 80058B84 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 059788 80058B88 AFB00018 */ sw $s0, 0x18($sp) -/* 05978C 80058B8C 3C108012 */ lui $s0, %hi(D_8011D508) # $s0, 0x8012 -/* 059790 80058B90 2610D508 */ addiu $s0, %lo(D_8011D508) # addiu $s0, $s0, -0x2af8 -/* 059794 80058B94 8E020000 */ lw $v0, ($s0) -/* 059798 80058B98 AFBF001C */ sw $ra, 0x1c($sp) -/* 05979C 80058B9C E7AC0030 */ swc1 $f12, 0x30($sp) -/* 0597A0 80058BA0 AFA60038 */ sw $a2, 0x38($sp) -/* 0597A4 80058BA4 844E0000 */ lh $t6, ($v0) -/* 0597A8 80058BA8 24180400 */ li $t8, 1024 -/* 0597AC 80058BAC 25CF0200 */ addiu $t7, $t6, 0x200 -/* 0597B0 80058BB0 A44F0000 */ sh $t7, ($v0) -/* 0597B4 80058BB4 8E190000 */ lw $t9, ($s0) -/* 0597B8 80058BB8 3C014316 */ li $at, 0x43160000 # 150.000000 -/* 0597BC 80058BBC A7380002 */ sh $t8, 2($t9) -/* 0597C0 80058BC0 8E080000 */ lw $t0, ($s0) -/* 0597C4 80058BC4 44812000 */ mtc1 $at, $f4 -/* 0597C8 80058BC8 A5000004 */ sh $zero, 4($t0) -/* 0597CC 80058BCC 8E090000 */ lw $t1, ($s0) -/* 0597D0 80058BD0 340C8000 */ li $t4, 32768 -/* 0597D4 80058BD4 E524001C */ swc1 $f4, 0x1c($t1) -/* 0597D8 80058BD8 8E0A0000 */ lw $t2, ($s0) -/* 0597DC 80058BDC 00000000 */ nop -/* 0597E0 80058BE0 854B0000 */ lh $t3, ($t2) -/* 0597E4 80058BE4 AFA50034 */ sw $a1, 0x34($sp) -/* 0597E8 80058BE8 018B2023 */ subu $a0, $t4, $t3 -/* 0597EC 80058BEC 00046C00 */ sll $t5, $a0, 0x10 -/* 0597F0 80058BF0 0C01C1F1 */ jal func_800707C4 -/* 0597F4 80058BF4 000D2403 */ sra $a0, $t5, 0x10 -/* 0597F8 80058BF8 8E020000 */ lw $v0, ($s0) -/* 0597FC 80058BFC 34188000 */ li $t8, 32768 -/* 059800 80058C00 C446001C */ lwc1 $f6, 0x1c($v0) -/* 059804 80058C04 00000000 */ nop -/* 059808 80058C08 46060202 */ mul.s $f8, $f0, $f6 -/* 05980C 80058C0C E7A80020 */ swc1 $f8, 0x20($sp) -/* 059810 80058C10 844F0000 */ lh $t7, ($v0) -/* 059814 80058C14 00000000 */ nop -/* 059818 80058C18 030F2023 */ subu $a0, $t8, $t7 -/* 05981C 80058C1C 0004CC00 */ sll $t9, $a0, 0x10 -/* 059820 80058C20 0C01C1FE */ jal func_800707F8 -/* 059824 80058C24 00192403 */ sra $a0, $t9, 0x10 -/* 059828 80058C28 8FA50034 */ lw $a1, 0x34($sp) -/* 05982C 80058C2C C7A60020 */ lwc1 $f6, 0x20($sp) -/* 059830 80058C30 C4A4000C */ lwc1 $f4, 0xc($a1) -/* 059834 80058C34 8E020000 */ lw $v0, ($s0) -/* 059838 80058C38 46062200 */ add.s $f8, $f4, $f6 -/* 05983C 80058C3C C44A001C */ lwc1 $f10, 0x1c($v0) -/* 059840 80058C40 E448000C */ swc1 $f8, 0xc($v0) -/* 059844 80058C44 460A0402 */ mul.s $f16, $f0, $f10 -/* 059848 80058C48 3C014234 */ li $at, 0x42340000 # 45.000000 -/* 05984C 80058C4C 44819000 */ mtc1 $at, $f18 -/* 059850 80058C50 8E020000 */ lw $v0, ($s0) -/* 059854 80058C54 C4AA0010 */ lwc1 $f10, 0x10($a1) -/* 059858 80058C58 C44E0010 */ lwc1 $f14, 0x10($v0) -/* 05985C 80058C5C 46125100 */ add.s $f4, $f10, $f18 -/* 059860 80058C60 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 059864 80058C64 46047181 */ sub.s $f6, $f14, $f4 -/* 059868 80058C68 44815800 */ mtc1 $at, $f11 -/* 05986C 80058C6C 44805000 */ mtc1 $zero, $f10 -/* 059870 80058C70 46003221 */ cvt.d.s $f8, $f6 -/* 059874 80058C74 462A4102 */ mul.d $f4, $f8, $f10 -/* 059878 80058C78 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 05987C 80058C7C 44813800 */ mtc1 $at, $f7 -/* 059880 80058C80 44803000 */ mtc1 $zero, $f6 -/* 059884 80058C84 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 059888 80058C88 46202320 */ cvt.s.d $f12, $f4 -/* 05988C 80058C8C 460060A1 */ cvt.d.s $f2, $f12 -/* 059890 80058C90 4626103C */ c.lt.d $f2, $f6 -/* 059894 80058C94 00000000 */ nop -/* 059898 80058C98 4500000A */ bc1f .L80058CC4 -/* 05989C 80058C9C 00000000 */ nop -/* 0598A0 80058CA0 44815800 */ mtc1 $at, $f11 -/* 0598A4 80058CA4 44805000 */ mtc1 $zero, $f10 -/* 0598A8 80058CA8 46007221 */ cvt.d.s $f8, $f14 -/* 0598AC 80058CAC 462A1100 */ add.d $f4, $f2, $f10 -/* 0598B0 80058CB0 46244181 */ sub.d $f6, $f8, $f4 -/* 0598B4 80058CB4 462032A0 */ cvt.s.d $f10, $f6 -/* 0598B8 80058CB8 E44A0010 */ swc1 $f10, 0x10($v0) -/* 0598BC 80058CBC 8E020000 */ lw $v0, ($s0) -/* 0598C0 80058CC0 00000000 */ nop -.L80058CC4: -/* 0598C4 80058CC4 44804000 */ mtc1 $zero, $f8 -/* 0598C8 80058CC8 00000000 */ nop -/* 0598CC 80058CCC 460C403C */ c.lt.s $f8, $f12 -/* 0598D0 80058CD0 00000000 */ nop -/* 0598D4 80058CD4 45000007 */ bc1f .L80058CF4 -/* 0598D8 80058CD8 00000000 */ nop -/* 0598DC 80058CDC C4A40010 */ lwc1 $f4, 0x10($a1) -/* 0598E0 80058CE0 00000000 */ nop -/* 0598E4 80058CE4 46122180 */ add.s $f6, $f4, $f18 -/* 0598E8 80058CE8 E4460010 */ swc1 $f6, 0x10($v0) -/* 0598EC 80058CEC 8E020000 */ lw $v0, ($s0) -/* 0598F0 80058CF0 00000000 */ nop -.L80058CF4: -/* 0598F4 80058CF4 C4AA0014 */ lwc1 $f10, 0x14($a1) -/* 0598F8 80058CF8 00000000 */ nop -/* 0598FC 80058CFC 46105200 */ add.s $f8, $f10, $f16 -/* 059900 80058D00 E4480014 */ swc1 $f8, 0x14($v0) -/* 059904 80058D04 8E020000 */ lw $v0, ($s0) -/* 059908 80058D08 00000000 */ nop -/* 05990C 80058D0C C44C000C */ lwc1 $f12, 0xc($v0) -/* 059910 80058D10 C44E0010 */ lwc1 $f14, 0x10($v0) -/* 059914 80058D14 8C460014 */ lw $a2, 0x14($v0) -/* 059918 80058D18 0C00A7C6 */ jal func_80029F18 -/* 05991C 80058D1C 00000000 */ nop -/* 059920 80058D20 2401FFFF */ li $at, -1 -/* 059924 80058D24 10410004 */ beq $v0, $at, .L80058D38 -/* 059928 80058D28 00000000 */ nop -/* 05992C 80058D2C 8E090000 */ lw $t1, ($s0) -/* 059930 80058D30 00000000 */ nop -/* 059934 80058D34 A5220034 */ sh $v0, 0x34($t1) -.L80058D38: -/* 059938 80058D38 8E0A0000 */ lw $t2, ($s0) -/* 05993C 80058D3C 8FAB0038 */ lw $t3, 0x38($sp) -/* 059940 80058D40 854C0000 */ lh $t4, ($t2) -/* 059944 80058D44 00000000 */ nop -/* 059948 80058D48 A56C0196 */ sh $t4, 0x196($t3) -/* 05994C 80058D4C 8FBF001C */ lw $ra, 0x1c($sp) -/* 059950 80058D50 8FB00018 */ lw $s0, 0x18($sp) -/* 059954 80058D54 03E00008 */ jr $ra -/* 059958 80058D58 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_80058D5C -/* 05995C 80058D5C 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 059960 80058D60 AFBF001C */ sw $ra, 0x1c($sp) -/* 059964 80058D64 AFB00018 */ sw $s0, 0x18($sp) -/* 059968 80058D68 E7AC0038 */ swc1 $f12, 0x38($sp) -/* 05996C 80058D6C AFA60040 */ sw $a2, 0x40($sp) -/* 059970 80058D70 80CF01D0 */ lb $t7, 0x1d0($a2) -/* 059974 80058D74 00A03825 */ move $a3, $a1 -/* 059978 80058D78 00A02025 */ move $a0, $a1 -/* 05997C 80058D7C 27A50034 */ addiu $a1, $sp, 0x34 -/* 059980 80058D80 AFA7003C */ sw $a3, 0x3c($sp) -/* 059984 80058D84 0C006F75 */ jal func_8001BDD4 -/* 059988 80058D88 AFAF0034 */ sw $t7, 0x34($sp) -/* 05998C 80058D8C 8FA7003C */ lw $a3, 0x3c($sp) -/* 059990 80058D90 14400007 */ bnez $v0, .L80058DB0 -/* 059994 80058D94 00402025 */ move $a0, $v0 -/* 059998 80058D98 3C108012 */ lui $s0, %hi(D_8011D508) # $s0, 0x8012 -/* 05999C 80058D9C 2610D508 */ addiu $s0, %lo(D_8011D508) # addiu $s0, $s0, -0x2af8 -/* 0599A0 80058DA0 8E190000 */ lw $t9, ($s0) -/* 0599A4 80058DA4 24180005 */ li $t8, 5 -/* 0599A8 80058DA8 10000062 */ b .L80058F34 -/* 0599AC 80058DAC A7380036 */ sh $t8, 0x36($t9) -.L80058DB0: -/* 0599B0 80058DB0 8FA80034 */ lw $t0, 0x34($sp) -/* 0599B4 80058DB4 8FA90040 */ lw $t1, 0x40($sp) -/* 0599B8 80058DB8 3C108012 */ lui $s0, %hi(D_8011D508) # $s0, 0x8012 -/* 0599BC 80058DBC A12801D0 */ sb $t0, 0x1d0($t1) -/* 0599C0 80058DC0 2610D508 */ addiu $s0, %lo(D_8011D508) # addiu $s0, $s0, -0x2af8 -/* 0599C4 80058DC4 8E0A0000 */ lw $t2, ($s0) -/* 0599C8 80058DC8 C484000C */ lwc1 $f4, 0xc($a0) -/* 0599CC 80058DCC 00000000 */ nop -/* 0599D0 80058DD0 E544000C */ swc1 $f4, 0xc($t2) -/* 0599D4 80058DD4 8E0B0000 */ lw $t3, ($s0) -/* 0599D8 80058DD8 C4860010 */ lwc1 $f6, 0x10($a0) -/* 0599DC 80058DDC 00000000 */ nop -/* 0599E0 80058DE0 E5660010 */ swc1 $f6, 0x10($t3) -/* 0599E4 80058DE4 8E0C0000 */ lw $t4, ($s0) -/* 0599E8 80058DE8 C4880014 */ lwc1 $f8, 0x14($a0) -/* 0599EC 80058DEC 00000000 */ nop -/* 0599F0 80058DF0 E5880014 */ swc1 $f8, 0x14($t4) -/* 0599F4 80058DF4 8E030000 */ lw $v1, ($s0) -/* 0599F8 80058DF8 C4E40010 */ lwc1 $f4, 0x10($a3) -/* 0599FC 80058DFC C4720010 */ lwc1 $f18, 0x10($v1) -/* 059A00 80058E00 C4F0000C */ lwc1 $f16, 0xc($a3) -/* 059A04 80058E04 C46A000C */ lwc1 $f10, 0xc($v1) -/* 059A08 80058E08 46049181 */ sub.s $f6, $f18, $f4 -/* 059A0C 80058E0C 46105081 */ sub.s $f2, $f10, $f16 -/* 059A10 80058E10 E7A60028 */ swc1 $f6, 0x28($sp) -/* 059A14 80058E14 C4EA0014 */ lwc1 $f10, 0x14($a3) -/* 059A18 80058E18 C4680014 */ lwc1 $f8, 0x14($v1) -/* 059A1C 80058E1C 46021402 */ mul.s $f16, $f2, $f2 -/* 059A20 80058E20 460A4381 */ sub.s $f14, $f8, $f10 -/* 059A24 80058E24 E7A2002C */ swc1 $f2, 0x2c($sp) -/* 059A28 80058E28 E7AE0024 */ swc1 $f14, 0x24($sp) -/* 059A2C 80058E2C 460E7482 */ mul.s $f18, $f14, $f14 -/* 059A30 80058E30 0C0326B4 */ jal sqrtf -/* 059A34 80058E34 46128300 */ add.s $f12, $f16, $f18 -/* 059A38 80058E38 444DF800 */ cfc1 $t5, $31 -/* 059A3C 80058E3C C7A2002C */ lwc1 $f2, 0x2c($sp) -/* 059A40 80058E40 35A10003 */ ori $at, $t5, 3 -/* 059A44 80058E44 38210002 */ xori $at, $at, 2 -/* 059A48 80058E48 44C1F800 */ ctc1 $at, $31 -/* 059A4C 80058E4C C7AE0024 */ lwc1 $f14, 0x24($sp) -/* 059A50 80058E50 46001124 */ cvt.w.s $f4, $f2 -/* 059A54 80058E54 E7A00020 */ swc1 $f0, 0x20($sp) -/* 059A58 80058E58 44CDF800 */ ctc1 $t5, $31 -/* 059A5C 80058E5C 44042000 */ mfc1 $a0, $f4 -/* 059A60 80058E60 00000000 */ nop -/* 059A64 80058E64 444EF800 */ cfc1 $t6, $31 -/* 059A68 80058E68 00000000 */ nop -/* 059A6C 80058E6C 35C10003 */ ori $at, $t6, 3 -/* 059A70 80058E70 38210002 */ xori $at, $at, 2 -/* 059A74 80058E74 44C1F800 */ ctc1 $at, $31 -/* 059A78 80058E78 00000000 */ nop -/* 059A7C 80058E7C 460071A4 */ cvt.w.s $f6, $f14 -/* 059A80 80058E80 44053000 */ mfc1 $a1, $f6 -/* 059A84 80058E84 44CEF800 */ ctc1 $t6, $31 -/* 059A88 80058E88 0C01C19B */ jal func_8007066C -/* 059A8C 80058E8C 00000000 */ nop -/* 059A90 80058E90 4448F800 */ cfc1 $t0, $31 -/* 059A94 80058E94 8E190000 */ lw $t9, ($s0) -/* 059A98 80058E98 340F8000 */ li $t7, 32768 -/* 059A9C 80058E9C 01E2C023 */ subu $t8, $t7, $v0 -/* 059AA0 80058EA0 35010003 */ ori $at, $t0, 3 -/* 059AA4 80058EA4 38210002 */ xori $at, $at, 2 -/* 059AA8 80058EA8 A7380000 */ sh $t8, ($t9) -/* 059AAC 80058EAC C7A80028 */ lwc1 $f8, 0x28($sp) -/* 059AB0 80058EB0 44C1F800 */ ctc1 $at, $31 -/* 059AB4 80058EB4 C7B00020 */ lwc1 $f16, 0x20($sp) -/* 059AB8 80058EB8 460042A4 */ cvt.w.s $f10, $f8 -/* 059ABC 80058EBC 44C8F800 */ ctc1 $t0, $31 -/* 059AC0 80058EC0 44045000 */ mfc1 $a0, $f10 -/* 059AC4 80058EC4 00000000 */ nop -/* 059AC8 80058EC8 4449F800 */ cfc1 $t1, $31 -/* 059ACC 80058ECC 00000000 */ nop -/* 059AD0 80058ED0 35210003 */ ori $at, $t1, 3 -/* 059AD4 80058ED4 38210002 */ xori $at, $at, 2 -/* 059AD8 80058ED8 44C1F800 */ ctc1 $at, $31 -/* 059ADC 80058EDC 00000000 */ nop -/* 059AE0 80058EE0 460084A4 */ cvt.w.s $f18, $f16 -/* 059AE4 80058EE4 44059000 */ mfc1 $a1, $f18 -/* 059AE8 80058EE8 44C9F800 */ ctc1 $t1, $31 -/* 059AEC 80058EEC 0C01C19B */ jal func_8007066C -/* 059AF0 80058EF0 00000000 */ nop -/* 059AF4 80058EF4 8E0A0000 */ lw $t2, ($s0) -/* 059AF8 80058EF8 00000000 */ nop -/* 059AFC 80058EFC A5420002 */ sh $v0, 2($t2) -/* 059B00 80058F00 8E0B0000 */ lw $t3, ($s0) -/* 059B04 80058F04 00000000 */ nop -/* 059B08 80058F08 A5600004 */ sh $zero, 4($t3) -/* 059B0C 80058F0C 8E030000 */ lw $v1, ($s0) -/* 059B10 80058F10 8FAC0040 */ lw $t4, 0x40($sp) -/* 059B14 80058F14 C46C000C */ lwc1 $f12, 0xc($v1) -/* 059B18 80058F18 8C660014 */ lw $a2, 0x14($v1) -/* 059B1C 80058F1C C58E003C */ lwc1 $f14, 0x3c($t4) -/* 059B20 80058F20 0C00A7C6 */ jal func_80029F18 -/* 059B24 80058F24 00000000 */ nop -/* 059B28 80058F28 8E0D0000 */ lw $t5, ($s0) -/* 059B2C 80058F2C 00000000 */ nop -/* 059B30 80058F30 A5A20034 */ sh $v0, 0x34($t5) -.L80058F34: -/* 059B34 80058F34 8FBF001C */ lw $ra, 0x1c($sp) -/* 059B38 80058F38 8FB00018 */ lw $s0, 0x18($sp) -/* 059B3C 80058F3C 03E00008 */ jr $ra -/* 059B40 80058F40 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_80058F44 -/* 059B44 80058F44 444EF800 */ cfc1 $t6, $31 -/* 059B48 80058F48 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 059B4C 80058F4C 35C10003 */ ori $at, $t6, 3 -/* 059B50 80058F50 38210002 */ xori $at, $at, 2 -/* 059B54 80058F54 44C1F800 */ ctc1 $at, $31 -/* 059B58 80058F58 AFBF0014 */ sw $ra, 0x14($sp) -/* 059B5C 80058F5C AFA60028 */ sw $a2, 0x28($sp) -/* 059B60 80058F60 3C038012 */ lui $v1, %hi(D_8011D508) # $v1, 0x8012 -/* 059B64 80058F64 8C63D508 */ lw $v1, %lo(D_8011D508)($v1) -/* 059B68 80058F68 46006124 */ cvt.w.s $f4, $f12 -/* 059B6C 80058F6C C4A8000C */ lwc1 $f8, 0xc($a1) -/* 059B70 80058F70 44CEF800 */ ctc1 $t6, $31 -/* 059B74 80058F74 C4B00014 */ lwc1 $f16, 0x14($a1) -/* 059B78 80058F78 C466000C */ lwc1 $f6, 0xc($v1) -/* 059B7C 80058F7C C46A0014 */ lwc1 $f10, 0x14($v1) -/* 059B80 80058F80 46083001 */ sub.s $f0, $f6, $f8 -/* 059B84 80058F84 44082000 */ mfc1 $t0, $f4 -/* 059B88 80058F88 46105081 */ sub.s $f2, $f10, $f16 -/* 059B8C 80058F8C AFA8001C */ sw $t0, 0x1c($sp) -/* 059B90 80058F90 444FF800 */ cfc1 $t7, $31 -/* 059B94 80058F94 00000000 */ nop -/* 059B98 80058F98 35E10003 */ ori $at, $t7, 3 -/* 059B9C 80058F9C 38210002 */ xori $at, $at, 2 -/* 059BA0 80058FA0 44C1F800 */ ctc1 $at, $31 -/* 059BA4 80058FA4 00000000 */ nop -/* 059BA8 80058FA8 460004A4 */ cvt.w.s $f18, $f0 -/* 059BAC 80058FAC 44CFF800 */ ctc1 $t7, $31 -/* 059BB0 80058FB0 44049000 */ mfc1 $a0, $f18 -/* 059BB4 80058FB4 00000000 */ nop -/* 059BB8 80058FB8 4458F800 */ cfc1 $t8, $31 -/* 059BBC 80058FBC 00000000 */ nop -/* 059BC0 80058FC0 37010003 */ ori $at, $t8, 3 -/* 059BC4 80058FC4 38210002 */ xori $at, $at, 2 -/* 059BC8 80058FC8 44C1F800 */ ctc1 $at, $31 -/* 059BCC 80058FCC 00000000 */ nop -/* 059BD0 80058FD0 46001124 */ cvt.w.s $f4, $f2 -/* 059BD4 80058FD4 44052000 */ mfc1 $a1, $f4 -/* 059BD8 80058FD8 44D8F800 */ ctc1 $t8, $31 -/* 059BDC 80058FDC 0C01C19B */ jal func_8007066C -/* 059BE0 80058FE0 00000000 */ nop -/* 059BE4 80058FE4 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 -/* 059BE8 80058FE8 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 -/* 059BEC 80058FEC 8CE30000 */ lw $v1, ($a3) -/* 059BF0 80058FF0 0002C823 */ negu $t9, $v0 -/* 059BF4 80058FF4 84640000 */ lh $a0, ($v1) -/* 059BF8 80058FF8 8FA8001C */ lw $t0, 0x1c($sp) -/* 059BFC 80058FFC 34018000 */ li $at, 32768 -/* 059C00 80059000 03244823 */ subu $t1, $t9, $a0 -/* 059C04 80059004 01215021 */ addu $t2, $t1, $at -/* 059C08 80059008 01480019 */ multu $t2, $t0 -/* 059C0C 8005900C 00005812 */ mflo $t3 -/* 059C10 80059010 000B6103 */ sra $t4, $t3, 4 -/* 059C14 80059014 008C6821 */ addu $t5, $a0, $t4 -/* 059C18 80059018 A46D0000 */ sh $t5, ($v1) -/* 059C1C 8005901C 8CE30000 */ lw $v1, ($a3) -/* 059C20 80059020 00000000 */ nop -/* 059C24 80059024 84650004 */ lh $a1, 4($v1) -/* 059C28 80059028 00000000 */ nop -/* 059C2C 8005902C 00A80019 */ multu $a1, $t0 -/* 059C30 80059030 00007012 */ mflo $t6 -/* 059C34 80059034 000E7903 */ sra $t7, $t6, 4 -/* 059C38 80059038 00AFC023 */ subu $t8, $a1, $t7 -/* 059C3C 8005903C A4780004 */ sh $t8, 4($v1) -/* 059C40 80059040 8CE30000 */ lw $v1, ($a3) -/* 059C44 80059044 8FB90028 */ lw $t9, 0x28($sp) -/* 059C48 80059048 C46C000C */ lwc1 $f12, 0xc($v1) -/* 059C4C 8005904C 8C660014 */ lw $a2, 0x14($v1) -/* 059C50 80059050 C72E003C */ lwc1 $f14, 0x3c($t9) -/* 059C54 80059054 0C00A7C6 */ jal func_80029F18 -/* 059C58 80059058 00000000 */ nop -/* 059C5C 8005905C 3C078012 */ lui $a3, %hi(D_8011D508) # $a3, 0x8012 -/* 059C60 80059060 24E7D508 */ addiu $a3, %lo(D_8011D508) # addiu $a3, $a3, -0x2af8 -/* 059C64 80059064 8CE90000 */ lw $t1, ($a3) -/* 059C68 80059068 00000000 */ nop -/* 059C6C 8005906C A5220034 */ sh $v0, 0x34($t1) -/* 059C70 80059070 8FBF0014 */ lw $ra, 0x14($sp) -/* 059C74 80059074 27BD0020 */ addiu $sp, $sp, 0x20 -/* 059C78 80059078 03E00008 */ jr $ra -/* 059C7C 8005907C 00000000 */ nop - -glabel func_80059080 -/* 059C80 80059080 27BDFF58 */ addiu $sp, $sp, -0xa8 -/* 059C84 80059084 AFBF003C */ sw $ra, 0x3c($sp) -/* 059C88 80059088 AFB50034 */ sw $s5, 0x34($sp) -/* 059C8C 8005908C 00A0A825 */ move $s5, $a1 -/* 059C90 80059090 AFB60038 */ sw $s6, 0x38($sp) -/* 059C94 80059094 AFB40030 */ sw $s4, 0x30($sp) -/* 059C98 80059098 AFB3002C */ sw $s3, 0x2c($sp) -/* 059C9C 8005909C AFB20028 */ sw $s2, 0x28($sp) -/* 059CA0 800590A0 AFB10024 */ sw $s1, 0x24($sp) -/* 059CA4 800590A4 AFB00020 */ sw $s0, 0x20($sp) -/* 059CA8 800590A8 E7B50018 */ swc1 $f21, 0x18($sp) -/* 059CAC 800590AC E7B4001C */ swc1 $f20, 0x1c($sp) -/* 059CB0 800590B0 AFA400A8 */ sw $a0, 0xa8($sp) -/* 059CB4 800590B4 AFA600B0 */ sw $a2, 0xb0($sp) -/* 059CB8 800590B8 0C006E99 */ jal func_8001BA64 -/* 059CBC 800590BC AFA700B4 */ sw $a3, 0xb4($sp) -/* 059CC0 800590C0 10400045 */ beqz $v0, .L800591D8 -/* 059CC4 800590C4 0040B025 */ move $s6, $v0 -/* 059CC8 800590C8 C6A600A8 */ lwc1 $f6, 0xa8($s5) -/* 059CCC 800590CC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 059CD0 800590D0 44812800 */ mtc1 $at, $f5 -/* 059CD4 800590D4 44802000 */ mtc1 $zero, $f4 -/* 059CD8 800590D8 46003221 */ cvt.d.s $f8, $f6 -/* 059CDC 800590DC 46282281 */ sub.d $f10, $f4, $f8 -/* 059CE0 800590E0 44800000 */ mtc1 $zero, $f0 -/* 059CE4 800590E4 46205520 */ cvt.s.d $f20, $f10 -/* 059CE8 800590E8 27B20084 */ addiu $s2, $sp, 0x84 -/* 059CEC 800590EC 4600A03C */ c.lt.s $f20, $f0 -/* 059CF0 800590F0 27B30070 */ addiu $s3, $sp, 0x70 -/* 059CF4 800590F4 45000002 */ bc1f .L80059100 -/* 059CF8 800590F8 27B0005C */ addiu $s0, $sp, 0x5c -/* 059CFC 800590FC 46000506 */ mov.s $f20, $f0 -.L80059100: -/* 059D00 80059100 82A30192 */ lb $v1, 0x192($s5) -/* 059D04 80059104 27B40070 */ addiu $s4, $sp, 0x70 -/* 059D08 80059108 2471FFFE */ addiu $s1, $v1, -2 -/* 059D0C 8005910C 06210002 */ bgez $s1, .L80059118 -/* 059D10 80059110 00000000 */ nop -/* 059D14 80059114 02228821 */ addu $s1, $s1, $v0 -.L80059118: -/* 059D18 80059118 92A501C8 */ lbu $a1, 0x1c8($s5) -/* 059D1C 8005911C 0C006E87 */ jal func_8001BA1C -/* 059D20 80059120 02202025 */ move $a0, $s1 -/* 059D24 80059124 C4500010 */ lwc1 $f16, 0x10($v0) -/* 059D28 80059128 26310001 */ addiu $s1, $s1, 1 -/* 059D2C 8005912C E6500000 */ swc1 $f16, ($s2) -/* 059D30 80059130 C4520014 */ lwc1 $f18, 0x14($v0) -/* 059D34 80059134 26520004 */ addiu $s2, $s2, 4 -/* 059D38 80059138 E6720000 */ swc1 $f18, ($s3) -/* 059D3C 8005913C C4460018 */ lwc1 $f6, 0x18($v0) -/* 059D40 80059140 16360002 */ bne $s1, $s6, .L8005914C -/* 059D44 80059144 E6060000 */ swc1 $f6, ($s0) -/* 059D48 80059148 00008825 */ move $s1, $zero -.L8005914C: -/* 059D4C 8005914C 26100004 */ addiu $s0, $s0, 4 -/* 059D50 80059150 1614FFF1 */ bne $s0, $s4, .L80059118 -/* 059D54 80059154 26730004 */ addiu $s3, $s3, 4 -/* 059D58 80059158 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 059D5C 8005915C 44812800 */ mtc1 $at, $f5 -/* 059D60 80059160 44802000 */ mtc1 $zero, $f4 -/* 059D64 80059164 4600A021 */ cvt.d.s $f0, $f20 -/* 059D68 80059168 4620203E */ c.le.d $f4, $f0 -/* 059D6C 8005916C 00008025 */ move $s0, $zero -/* 059D70 80059170 45000007 */ bc1f .L80059190 -/* 059D74 80059174 27A40084 */ addiu $a0, $sp, 0x84 -/* 059D78 80059178 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 059D7C 8005917C 44814800 */ mtc1 $at, $f9 -/* 059D80 80059180 44804000 */ mtc1 $zero, $f8 -/* 059D84 80059184 24100001 */ li $s0, 1 -/* 059D88 80059188 46280281 */ sub.d $f10, $f0, $f8 -/* 059D8C 8005918C 46205520 */ cvt.s.d $f20, $f10 -.L80059190: -/* 059D90 80059190 4406A000 */ mfc1 $a2, $f20 -/* 059D94 80059194 0C008950 */ jal func_80022540 -/* 059D98 80059198 02002825 */ move $a1, $s0 -/* 059D9C 8005919C 8FAE00B0 */ lw $t6, 0xb0($sp) -/* 059DA0 800591A0 4406A000 */ mfc1 $a2, $f20 -/* 059DA4 800591A4 27A40070 */ addiu $a0, $sp, 0x70 -/* 059DA8 800591A8 02002825 */ move $a1, $s0 -/* 059DAC 800591AC 0C008950 */ jal func_80022540 -/* 059DB0 800591B0 E5C00000 */ swc1 $f0, ($t6) -/* 059DB4 800591B4 8FAF00B4 */ lw $t7, 0xb4($sp) -/* 059DB8 800591B8 4406A000 */ mfc1 $a2, $f20 -/* 059DBC 800591BC 27A4005C */ addiu $a0, $sp, 0x5c -/* 059DC0 800591C0 02002825 */ move $a1, $s0 -/* 059DC4 800591C4 0C008950 */ jal func_80022540 -/* 059DC8 800591C8 E5E00000 */ swc1 $f0, ($t7) -/* 059DCC 800591CC 8FB800B8 */ lw $t8, 0xb8($sp) -/* 059DD0 800591D0 00000000 */ nop -/* 059DD4 800591D4 E7000000 */ swc1 $f0, ($t8) -.L800591D8: -/* 059DD8 800591D8 8FBF003C */ lw $ra, 0x3c($sp) -/* 059DDC 800591DC C7B50018 */ lwc1 $f21, 0x18($sp) -/* 059DE0 800591E0 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 059DE4 800591E4 8FB00020 */ lw $s0, 0x20($sp) -/* 059DE8 800591E8 8FB10024 */ lw $s1, 0x24($sp) -/* 059DEC 800591EC 8FB20028 */ lw $s2, 0x28($sp) -/* 059DF0 800591F0 8FB3002C */ lw $s3, 0x2c($sp) -/* 059DF4 800591F4 8FB40030 */ lw $s4, 0x30($sp) -/* 059DF8 800591F8 8FB50034 */ lw $s5, 0x34($sp) -/* 059DFC 800591FC 8FB60038 */ lw $s6, 0x38($sp) -/* 059E00 80059200 03E00008 */ jr $ra -/* 059E04 80059204 27BD00A8 */ addiu $sp, $sp, 0xa8 - -glabel func_80059208 -/* 059E08 80059208 27BDFF40 */ addiu $sp, $sp, -0xc0 -/* 059E0C 8005920C AFBF001C */ sw $ra, 0x1c($sp) -/* 059E10 80059210 AFB10018 */ sw $s1, 0x18($sp) -/* 059E14 80059214 00A08825 */ move $s1, $a1 -/* 059E18 80059218 AFB00014 */ sw $s0, 0x14($sp) -/* 059E1C 8005921C AFA400C0 */ sw $a0, 0xc0($sp) -/* 059E20 80059220 0C006E99 */ jal func_8001BA64 -/* 059E24 80059224 AFA600C8 */ sw $a2, 0xc8($sp) -/* 059E28 80059228 10400155 */ beqz $v0, .L80059780 -/* 059E2C 8005922C 8FBF001C */ lw $ra, 0x1c($sp) -/* 059E30 80059230 0C01AF62 */ jal func_8006BD88 -/* 059E34 80059234 AFA200B4 */ sw $v0, 0xb4($sp) -/* 059E38 80059238 8FA800B4 */ lw $t0, 0xb4($sp) -/* 059E3C 8005923C 14400009 */ bnez $v0, .L80059264 -/* 059E40 80059240 00000000 */ nop -/* 059E44 80059244 822E0192 */ lb $t6, 0x192($s1) -/* 059E48 80059248 00000000 */ nop -/* 059E4C 8005924C 01C8082A */ slt $at, $t6, $t0 -/* 059E50 80059250 14200004 */ bnez $at, .L80059264 -/* 059E54 80059254 00000000 */ nop -/* 059E58 80059258 A2200193 */ sb $zero, 0x193($s1) -/* 059E5C 8005925C A2200192 */ sb $zero, 0x192($s1) -/* 059E60 80059260 A6200190 */ sh $zero, 0x190($s1) -.L80059264: -/* 059E64 80059264 C62600A8 */ lwc1 $f6, 0xa8($s1) -/* 059E68 80059268 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 059E6C 8005926C 44812800 */ mtc1 $at, $f5 -/* 059E70 80059270 44802000 */ mtc1 $zero, $f4 -/* 059E74 80059274 46003221 */ cvt.d.s $f8, $f6 -/* 059E78 80059278 46282281 */ sub.d $f10, $f4, $f8 -/* 059E7C 8005927C 3C01800E */ lui $at, %hi(D_800E6924) # $at, 0x800e -/* 059E80 80059280 46205020 */ cvt.s.d $f0, $f10 -/* 059E84 80059284 C4316920 */ lwc1 $f17, %lo(D_800E6920)($at) -/* 059E88 80059288 C4306924 */ lwc1 $f16, %lo(D_800E6924)($at) -/* 059E8C 8005928C 460000A1 */ cvt.d.s $f2, $f0 -/* 059E90 80059290 4630103C */ c.lt.d $f2, $f16 -/* 059E94 80059294 82240192 */ lb $a0, 0x192($s1) -/* 059E98 80059298 4500002D */ bc1f .L80059350 -/* 059E9C 8005929C 248FFFFF */ addiu $t7, $a0, -1 -/* 059EA0 800592A0 A22F0192 */ sb $t7, 0x192($s1) -/* 059EA4 800592A4 82240192 */ lb $a0, 0x192($s1) -/* 059EA8 800592A8 00000000 */ nop -/* 059EAC 800592AC 04810007 */ bgez $a0, .L800592CC -/* 059EB0 800592B0 00000000 */ nop -/* 059EB4 800592B4 82220193 */ lb $v0, 0x193($s1) -/* 059EB8 800592B8 0088C021 */ addu $t8, $a0, $t0 -/* 059EBC 800592BC 18400003 */ blez $v0, .L800592CC -/* 059EC0 800592C0 A2380192 */ sb $t8, 0x192($s1) -/* 059EC4 800592C4 2459FFFF */ addiu $t9, $v0, -1 -/* 059EC8 800592C8 A2390193 */ sb $t9, 0x193($s1) -.L800592CC: -/* 059ECC 800592CC 86220190 */ lh $v0, 0x190($s1) -/* 059ED0 800592D0 00000000 */ nop -/* 059ED4 800592D4 28418301 */ slti $at, $v0, -0x7cff -/* 059ED8 800592D8 14200002 */ bnez $at, .L800592E4 -/* 059EDC 800592DC 2449FFFF */ addiu $t1, $v0, -1 -/* 059EE0 800592E0 A6290190 */ sh $t1, 0x190($s1) -.L800592E4: -/* 059EE4 800592E4 922A01C8 */ lbu $t2, 0x1c8($s1) -/* 059EE8 800592E8 00000000 */ nop -/* 059EEC 800592EC 11400124 */ beqz $t2, .L80059780 -/* 059EF0 800592F0 8FBF001C */ lw $ra, 0x1c($sp) -/* 059EF4 800592F4 82240192 */ lb $a0, 0x192($s1) -/* 059EF8 800592F8 0C006E80 */ jal func_8001BA00 -/* 059EFC 800592FC AFA800B4 */ sw $t0, 0xb4($sp) -/* 059F00 80059300 804B003A */ lb $t3, 0x3a($v0) -/* 059F04 80059304 8FA800B4 */ lw $t0, 0xb4($sp) -/* 059F08 80059308 2410FFFF */ li $s0, -1 -/* 059F0C 8005930C 160B0002 */ bne $s0, $t3, .L80059318 -/* 059F10 80059310 00000000 */ nop -/* 059F14 80059314 A22001C8 */ sb $zero, 0x1c8($s1) -.L80059318: -/* 059F18 80059318 82240192 */ lb $a0, 0x192($s1) -/* 059F1C 8005931C 00000000 */ nop -/* 059F20 80059320 2484FFFF */ addiu $a0, $a0, -1 -/* 059F24 80059324 04810002 */ bgez $a0, .L80059330 -/* 059F28 80059328 00000000 */ nop -/* 059F2C 8005932C 00882021 */ addu $a0, $a0, $t0 -.L80059330: -/* 059F30 80059330 0C006E80 */ jal func_8001BA00 -/* 059F34 80059334 00000000 */ nop -/* 059F38 80059338 804C003A */ lb $t4, 0x3a($v0) -/* 059F3C 8005933C 00000000 */ nop -/* 059F40 80059340 160C010F */ bne $s0, $t4, .L80059780 -/* 059F44 80059344 8FBF001C */ lw $ra, 0x1c($sp) -/* 059F48 80059348 1000010C */ b .L8005977C -/* 059F4C 8005934C A22001C8 */ sb $zero, 0x1c8($s1) -.L80059350: -/* 059F50 80059350 44806000 */ mtc1 $zero, $f12 -/* 059F54 80059354 00000000 */ nop -/* 059F58 80059358 460C003C */ c.lt.s $f0, $f12 -/* 059F5C 8005935C 00000000 */ nop -/* 059F60 80059360 45000003 */ bc1f .L80059370 -/* 059F64 80059364 00000000 */ nop -/* 059F68 80059368 46006006 */ mov.s $f0, $f12 -/* 059F6C 8005936C 460060A1 */ cvt.d.s $f2, $f12 -.L80059370: -/* 059F70 80059370 922501C8 */ lbu $a1, 0x1c8($s1) -/* 059F74 80059374 E7A2002C */ swc1 $f2, 0x2c($sp) -/* 059F78 80059378 E7A30028 */ swc1 $f3, 0x28($sp) -/* 059F7C 8005937C E7A00058 */ swc1 $f0, 0x58($sp) -/* 059F80 80059380 0C006E87 */ jal func_8001BA1C -/* 059F84 80059384 AFA800B4 */ sw $t0, 0xb4($sp) -/* 059F88 80059388 82300192 */ lb $s0, 0x192($s1) -/* 059F8C 8005938C 8FA800B4 */ lw $t0, 0xb4($sp) -/* 059F90 80059390 C442001C */ lwc1 $f2, 0x1c($v0) -/* 059F94 80059394 2610FFFF */ addiu $s0, $s0, -1 -/* 059F98 80059398 06010003 */ bgez $s0, .L800593A8 -/* 059F9C 8005939C 02002025 */ move $a0, $s0 -/* 059FA0 800593A0 2510FFFF */ addiu $s0, $t0, -1 -/* 059FA4 800593A4 02002025 */ move $a0, $s0 -.L800593A8: -/* 059FA8 800593A8 AFA800B4 */ sw $t0, 0xb4($sp) -/* 059FAC 800593AC 0C006E80 */ jal func_8001BA00 -/* 059FB0 800593B0 E7A20040 */ swc1 $f2, 0x40($sp) -/* 059FB4 800593B4 C7A20040 */ lwc1 $f2, 0x40($sp) -/* 059FB8 800593B8 C440001C */ lwc1 $f0, 0x1c($v0) -/* 059FBC 800593BC C7A60058 */ lwc1 $f6, 0x58($sp) -/* 059FC0 800593C0 46001481 */ sub.s $f18, $f2, $f0 -/* 059FC4 800593C4 8FA800B4 */ lw $t0, 0xb4($sp) -/* 059FC8 800593C8 46069102 */ mul.s $f4, $f18, $f6 -/* 059FCC 800593CC 27A6009C */ addiu $a2, $sp, 0x9c -/* 059FD0 800593D0 27A70088 */ addiu $a3, $sp, 0x88 -/* 059FD4 800593D4 27A30074 */ addiu $v1, $sp, 0x74 -/* 059FD8 800593D8 46002200 */ add.s $f8, $f4, $f0 -/* 059FDC 800593DC E7A80044 */ swc1 $f8, 0x44($sp) -/* 059FE0 800593E0 82300192 */ lb $s0, 0x192($s1) -/* 059FE4 800593E4 00000000 */ nop -/* 059FE8 800593E8 2610FFFE */ addiu $s0, $s0, -2 -/* 059FEC 800593EC 06010002 */ bgez $s0, .L800593F8 -/* 059FF0 800593F0 00000000 */ nop -/* 059FF4 800593F4 02088021 */ addu $s0, $s0, $t0 -.L800593F8: -/* 059FF8 800593F8 922501C8 */ lbu $a1, 0x1c8($s1) -/* 059FFC 800593FC AFA800B4 */ sw $t0, 0xb4($sp) -/* 05A000 80059400 AFA70024 */ sw $a3, 0x24($sp) -/* 05A004 80059404 AFA60034 */ sw $a2, 0x34($sp) -/* 05A008 80059408 AFA30020 */ sw $v1, 0x20($sp) -/* 05A00C 8005940C 0C006E87 */ jal func_8001BA1C -/* 05A010 80059410 02002025 */ move $a0, $s0 -/* 05A014 80059414 862D01BA */ lh $t5, 0x1ba($s1) -/* 05A018 80059418 C44A001C */ lwc1 $f10, 0x1c($v0) -/* 05A01C 8005941C C4500008 */ lwc1 $f16, 8($v0) -/* 05A020 80059420 448D3000 */ mtc1 $t5, $f6 -/* 05A024 80059424 46105482 */ mul.s $f18, $f10, $f16 -/* 05A028 80059428 C44A0010 */ lwc1 $f10, 0x10($v0) -/* 05A02C 8005942C 8FA60034 */ lw $a2, 0x34($sp) -/* 05A030 80059430 8FA30020 */ lw $v1, 0x20($sp) -/* 05A034 80059434 46803120 */ cvt.s.w $f4, $f6 -/* 05A038 80059438 8FA70024 */ lw $a3, 0x24($sp) -/* 05A03C 8005943C 8FA800B4 */ lw $t0, 0xb4($sp) -/* 05A040 80059440 46049202 */ mul.s $f8, $f18, $f4 -/* 05A044 80059444 27B80088 */ addiu $t8, $sp, 0x88 -/* 05A048 80059448 26100001 */ addiu $s0, $s0, 1 -/* 05A04C 8005944C 24630004 */ addiu $v1, $v1, 4 -/* 05A050 80059450 46085400 */ add.s $f16, $f10, $f8 -/* 05A054 80059454 0078082B */ sltu $at, $v1, $t8 -/* 05A058 80059458 E4D00000 */ swc1 $f16, ($a2) -/* 05A05C 8005945C 862E01BC */ lh $t6, 0x1bc($s1) -/* 05A060 80059460 C446001C */ lwc1 $f6, 0x1c($v0) -/* 05A064 80059464 448E9000 */ mtc1 $t6, $f18 -/* 05A068 80059468 C4480014 */ lwc1 $f8, 0x14($v0) -/* 05A06C 8005946C 46809120 */ cvt.s.w $f4, $f18 -/* 05A070 80059470 24C60004 */ addiu $a2, $a2, 4 -/* 05A074 80059474 46043282 */ mul.s $f10, $f6, $f4 -/* 05A078 80059478 460A4400 */ add.s $f16, $f8, $f10 -/* 05A07C 8005947C E4F00000 */ swc1 $f16, ($a3) -/* 05A080 80059480 862F01BA */ lh $t7, 0x1ba($s1) -/* 05A084 80059484 C4460000 */ lwc1 $f6, ($v0) -/* 05A088 80059488 C452001C */ lwc1 $f18, 0x1c($v0) -/* 05A08C 8005948C 448F5000 */ mtc1 $t7, $f10 -/* 05A090 80059490 46003107 */ neg.s $f4, $f6 -/* 05A094 80059494 46049202 */ mul.s $f8, $f18, $f4 -/* 05A098 80059498 C4520018 */ lwc1 $f18, 0x18($v0) -/* 05A09C 8005949C 46805420 */ cvt.s.w $f16, $f10 -/* 05A0A0 800594A0 46104182 */ mul.s $f6, $f8, $f16 -/* 05A0A4 800594A4 46069100 */ add.s $f4, $f18, $f6 -/* 05A0A8 800594A8 16080002 */ bne $s0, $t0, .L800594B4 -/* 05A0AC 800594AC E464FFFC */ swc1 $f4, -4($v1) -/* 05A0B0 800594B0 00008025 */ move $s0, $zero -.L800594B4: -/* 05A0B4 800594B4 1420FFD0 */ bnez $at, .L800593F8 -/* 05A0B8 800594B8 24E70004 */ addiu $a3, $a3, 4 -/* 05A0BC 800594BC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 05A0C0 800594C0 44811800 */ mtc1 $at, $f3 -/* 05A0C4 800594C4 C7A10028 */ lwc1 $f1, 0x28($sp) -/* 05A0C8 800594C8 C7A0002C */ lwc1 $f0, 0x2c($sp) -/* 05A0CC 800594CC 44801000 */ mtc1 $zero, $f2 -/* 05A0D0 800594D0 00008025 */ move $s0, $zero -/* 05A0D4 800594D4 4620103E */ c.le.d $f2, $f0 -/* 05A0D8 800594D8 27A4009C */ addiu $a0, $sp, 0x9c -/* 05A0DC 800594DC 45000005 */ bc1f .L800594F4 -/* 05A0E0 800594E0 27A70054 */ addiu $a3, $sp, 0x54 -/* 05A0E4 800594E4 46220281 */ sub.d $f10, $f0, $f2 -/* 05A0E8 800594E8 24100001 */ li $s0, 1 -/* 05A0EC 800594EC 46205220 */ cvt.s.d $f8, $f10 -/* 05A0F0 800594F0 E7A80058 */ swc1 $f8, 0x58($sp) -.L800594F4: -/* 05A0F4 800594F4 8FA60058 */ lw $a2, 0x58($sp) -/* 05A0F8 800594F8 0C00898F */ jal func_8002263C -/* 05A0FC 800594FC 02002825 */ move $a1, $s0 -/* 05A100 80059500 8FA60058 */ lw $a2, 0x58($sp) -/* 05A104 80059504 E7A0006C */ swc1 $f0, 0x6c($sp) -/* 05A108 80059508 27A40088 */ addiu $a0, $sp, 0x88 -/* 05A10C 8005950C 02002825 */ move $a1, $s0 -/* 05A110 80059510 0C00898F */ jal func_8002263C -/* 05A114 80059514 27A70050 */ addiu $a3, $sp, 0x50 -/* 05A118 80059518 8FA60058 */ lw $a2, 0x58($sp) -/* 05A11C 8005951C E7A00064 */ swc1 $f0, 0x64($sp) -/* 05A120 80059520 27A40074 */ addiu $a0, $sp, 0x74 -/* 05A124 80059524 02002825 */ move $a1, $s0 -/* 05A128 80059528 0C00898F */ jal func_8002263C -/* 05A12C 8005952C 27A7004C */ addiu $a3, $sp, 0x4c -/* 05A130 80059530 C7A20054 */ lwc1 $f2, 0x54($sp) -/* 05A134 80059534 C7AE004C */ lwc1 $f14, 0x4c($sp) -/* 05A138 80059538 46021402 */ mul.s $f16, $f2, $f2 -/* 05A13C 8005953C E7A0005C */ swc1 $f0, 0x5c($sp) -/* 05A140 80059540 460E7482 */ mul.s $f18, $f14, $f14 -/* 05A144 80059544 0C0326B4 */ jal sqrtf -/* 05A148 80059548 46128300 */ add.s $f12, $f16, $f18 -/* 05A14C 8005954C 44803000 */ mtc1 $zero, $f6 -/* 05A150 80059550 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 05A154 80059554 46060032 */ c.eq.s $f0, $f6 -/* 05A158 80059558 00000000 */ nop -/* 05A15C 8005955C 4501000A */ bc1t .L80059588 -/* 05A160 80059560 00000000 */ nop -/* 05A164 80059564 44812000 */ mtc1 $at, $f4 -/* 05A168 80059568 C7AA0054 */ lwc1 $f10, 0x54($sp) -/* 05A16C 8005956C 46002083 */ div.s $f2, $f4, $f0 -/* 05A170 80059570 C7AE004C */ lwc1 $f14, 0x4c($sp) -/* 05A174 80059574 46025202 */ mul.s $f8, $f10, $f2 -/* 05A178 80059578 00000000 */ nop -/* 05A17C 8005957C 46027382 */ mul.s $f14, $f14, $f2 -/* 05A180 80059580 E7A80054 */ swc1 $f8, 0x54($sp) -/* 05A184 80059584 E7AE004C */ swc1 $f14, 0x4c($sp) -.L80059588: -/* 05A188 80059588 C7AE004C */ lwc1 $f14, 0x4c($sp) -/* 05A18C 8005958C C7AC0054 */ lwc1 $f12, 0x54($sp) -/* 05A190 80059590 0C01C1D4 */ jal func_80070750 -/* 05A194 80059594 00000000 */ nop -/* 05A198 80059598 863901A0 */ lh $t9, 0x1a0($s1) -/* 05A19C 8005959C 24018000 */ li $at, -32768 -/* 05A1A0 800595A0 3329FFFF */ andi $t1, $t9, 0xffff -/* 05A1A4 800595A4 00492023 */ subu $a0, $v0, $t1 -/* 05A1A8 800595A8 00812021 */ addu $a0, $a0, $at -/* 05A1AC 800595AC 34018001 */ li $at, 32769 -/* 05A1B0 800595B0 0081082A */ slt $at, $a0, $at -/* 05A1B4 800595B4 14200003 */ bnez $at, .L800595C4 -/* 05A1B8 800595B8 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 05A1BC 800595BC 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 05A1C0 800595C0 00812021 */ addu $a0, $a0, $at -.L800595C4: -/* 05A1C4 800595C4 28818000 */ slti $at, $a0, -0x8000 -/* 05A1C8 800595C8 10200002 */ beqz $at, .L800595D4 -/* 05A1CC 800595CC 3401FFFF */ li $at, 65535 -/* 05A1D0 800595D0 00812021 */ addu $a0, $a0, $at -.L800595D4: -/* 05A1D4 800595D4 28814001 */ slti $at, $a0, 0x4001 -/* 05A1D8 800595D8 10200003 */ beqz $at, .L800595E8 -/* 05A1DC 800595DC 2881C000 */ slti $at, $a0, -0x4000 -/* 05A1E0 800595E0 10200011 */ beqz $at, .L80059628 -/* 05A1E4 800595E4 00000000 */ nop -.L800595E8: -/* 05A1E8 800595E8 922201FC */ lbu $v0, 0x1fc($s1) -/* 05A1EC 800595EC 00000000 */ nop -/* 05A1F0 800595F0 284100C8 */ slti $at, $v0, 0xc8 -/* 05A1F4 800595F4 1020000D */ beqz $at, .L8005962C -/* 05A1F8 800595F8 00000000 */ nop -/* 05A1FC 800595FC C632002C */ lwc1 $f18, 0x2c($s1) -/* 05A200 80059600 3C01BFF0 */ li $at, 0xBFF00000 # -1.875000 -/* 05A204 80059604 44818800 */ mtc1 $at, $f17 -/* 05A208 80059608 44808000 */ mtc1 $zero, $f16 -/* 05A20C 8005960C 460091A1 */ cvt.d.s $f6, $f18 -/* 05A210 80059610 4630303E */ c.le.d $f6, $f16 -/* 05A214 80059614 8FAA00C8 */ lw $t2, 0xc8($sp) -/* 05A218 80059618 45000004 */ bc1f .L8005962C -/* 05A21C 8005961C 004A5821 */ addu $t3, $v0, $t2 -/* 05A220 80059620 10000002 */ b .L8005962C -/* 05A224 80059624 A22B01FC */ sb $t3, 0x1fc($s1) -.L80059628: -/* 05A228 80059628 A22001FC */ sb $zero, 0x1fc($s1) -.L8005962C: -/* 05A22C 8005962C C7A40054 */ lwc1 $f4, 0x54($sp) -/* 05A230 80059630 C7AA004C */ lwc1 $f10, 0x4c($sp) -/* 05A234 80059634 E7A40050 */ swc1 $f4, 0x50($sp) -/* 05A238 80059638 C7A80050 */ lwc1 $f8, 0x50($sp) -/* 05A23C 8005963C C7B0005C */ lwc1 $f16, 0x5c($sp) -/* 05A240 80059640 E7AA0054 */ swc1 $f10, 0x54($sp) -/* 05A244 80059644 46004487 */ neg.s $f18, $f8 -/* 05A248 80059648 46128182 */ mul.s $f6, $f16, $f18 -/* 05A24C 8005964C C7A40054 */ lwc1 $f4, 0x54($sp) -/* 05A250 80059650 C7AA006C */ lwc1 $f10, 0x6c($sp) -/* 05A254 80059654 8FA200C0 */ lw $v0, 0xc0($sp) -/* 05A258 80059658 460A2202 */ mul.s $f8, $f4, $f10 -/* 05A25C 8005965C E7B2004C */ swc1 $f18, 0x4c($sp) -/* 05A260 80059660 C450000C */ lwc1 $f16, 0xc($v0) -/* 05A264 80059664 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 05A268 80059668 46048282 */ mul.s $f10, $f16, $f4 -/* 05A26C 8005966C 46083000 */ add.s $f0, $f6, $f8 -/* 05A270 80059670 C4460014 */ lwc1 $f6, 0x14($v0) -/* 05A274 80059674 44811000 */ mtc1 $at, $f2 -/* 05A278 80059678 46069202 */ mul.s $f8, $f18, $f6 -/* 05A27C 8005967C 46000007 */ neg.s $f0, $f0 -/* 05A280 80059680 C7B20044 */ lwc1 $f18, 0x44($sp) -/* 05A284 80059684 3C01C0A0 */ li $at, 0xC0A00000 # -5.000000 -/* 05A288 80059688 46085400 */ add.s $f16, $f10, $f8 -/* 05A28C 8005968C 46008100 */ add.s $f4, $f16, $f0 -/* 05A290 80059690 44810000 */ mtc1 $at, $f0 -/* 05A294 80059694 46122183 */ div.s $f6, $f4, $f18 -/* 05A298 80059698 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 05A29C 8005969C 46003287 */ neg.s $f10, $f6 -/* 05A2A0 800596A0 460A103C */ c.lt.s $f2, $f10 -/* 05A2A4 800596A4 E7AA0054 */ swc1 $f10, 0x54($sp) -/* 05A2A8 800596A8 45000002 */ bc1f .L800596B4 -/* 05A2AC 800596AC 00000000 */ nop -/* 05A2B0 800596B0 E7A20054 */ swc1 $f2, 0x54($sp) -.L800596B4: -/* 05A2B4 800596B4 C7A80054 */ lwc1 $f8, 0x54($sp) -/* 05A2B8 800596B8 00000000 */ nop -/* 05A2BC 800596BC 4600403C */ c.lt.s $f8, $f0 -/* 05A2C0 800596C0 00000000 */ nop -/* 05A2C4 800596C4 45000002 */ bc1f .L800596D0 -/* 05A2C8 800596C8 00000000 */ nop -/* 05A2CC 800596CC E7A00054 */ swc1 $f0, 0x54($sp) -.L800596D0: -/* 05A2D0 800596D0 444DF800 */ cfc1 $t5, $31 -/* 05A2D4 800596D4 44810000 */ mtc1 $at, $f0 -/* 05A2D8 800596D8 35A10003 */ ori $at, $t5, 3 -/* 05A2DC 800596DC 38210002 */ xori $at, $at, 2 -/* 05A2E0 800596E0 44C1F800 */ ctc1 $at, $31 -/* 05A2E4 800596E4 C7B00054 */ lwc1 $f16, 0x54($sp) -/* 05A2E8 800596E8 862C01BA */ lh $t4, 0x1ba($s1) -/* 05A2EC 800596EC 46008124 */ cvt.w.s $f4, $f16 -/* 05A2F0 800596F0 3C01C2C8 */ li $at, 0xC2C80000 # -100.000000 -/* 05A2F4 800596F4 440E2000 */ mfc1 $t6, $f4 -/* 05A2F8 800596F8 44CDF800 */ ctc1 $t5, $31 -/* 05A2FC 800596FC 018E7821 */ addu $t7, $t4, $t6 -/* 05A300 80059700 A62F01BA */ sh $t7, 0x1ba($s1) -/* 05A304 80059704 C7A60064 */ lwc1 $f6, 0x64($sp) -/* 05A308 80059708 C4520010 */ lwc1 $f18, 0x10($v0) -/* 05A30C 8005970C C7A80044 */ lwc1 $f8, 0x44($sp) -/* 05A310 80059710 46069281 */ sub.s $f10, $f18, $f6 -/* 05A314 80059714 00000000 */ nop -/* 05A318 80059718 46085403 */ div.s $f16, $f10, $f8 -/* 05A31C 8005971C 4610003C */ c.lt.s $f0, $f16 -/* 05A320 80059720 E7B00050 */ swc1 $f16, 0x50($sp) -/* 05A324 80059724 45000002 */ bc1f .L80059730 -/* 05A328 80059728 00000000 */ nop -/* 05A32C 8005972C E7A00050 */ swc1 $f0, 0x50($sp) -.L80059730: -/* 05A330 80059730 44810000 */ mtc1 $at, $f0 -/* 05A334 80059734 C7A40050 */ lwc1 $f4, 0x50($sp) -/* 05A338 80059738 00000000 */ nop -/* 05A33C 8005973C 4600203C */ c.lt.s $f4, $f0 -/* 05A340 80059740 00000000 */ nop -/* 05A344 80059744 45000002 */ bc1f .L80059750 -/* 05A348 80059748 00000000 */ nop -/* 05A34C 8005974C E7A00050 */ swc1 $f0, 0x50($sp) -.L80059750: -/* 05A350 80059750 4459F800 */ cfc1 $t9, $31 -/* 05A354 80059754 C7B20050 */ lwc1 $f18, 0x50($sp) -/* 05A358 80059758 37210003 */ ori $at, $t9, 3 -/* 05A35C 8005975C 38210002 */ xori $at, $at, 2 -/* 05A360 80059760 44C1F800 */ ctc1 $at, $31 -/* 05A364 80059764 863801BC */ lh $t8, 0x1bc($s1) -/* 05A368 80059768 460091A4 */ cvt.w.s $f6, $f18 -/* 05A36C 8005976C 44093000 */ mfc1 $t1, $f6 -/* 05A370 80059770 44D9F800 */ ctc1 $t9, $31 -/* 05A374 80059774 03095021 */ addu $t2, $t8, $t1 -/* 05A378 80059778 A62A01BC */ sh $t2, 0x1bc($s1) -.L8005977C: -/* 05A37C 8005977C 8FBF001C */ lw $ra, 0x1c($sp) -.L80059780: -/* 05A380 80059780 8FB00014 */ lw $s0, 0x14($sp) -/* 05A384 80059784 8FB10018 */ lw $s1, 0x18($sp) -/* 05A388 80059788 03E00008 */ jr $ra -/* 05A38C 8005978C 27BD00C0 */ addiu $sp, $sp, 0xc0 - -glabel func_80059790 -/* 05A390 80059790 3C0E8012 */ lui $t6, %hi(D_80126170) # $t6, 0x8012 -/* 05A394 80059794 8DCE6170 */ lw $t6, %lo(D_80126170)($t6) -/* 05A398 80059798 24010032 */ li $at, 50 -/* 05A39C 8005979C 15C10012 */ bne $t6, $at, .L800597E8 -/* 05A3A0 800597A0 24080E10 */ li $t0, 3600 -/* 05A3A4 800597A4 44842000 */ mtc1 $a0, $f4 -/* 05A3A8 800597A8 3C01800E */ lui $at, %hi(D_800E692C) # $at, 0x800e -/* 05A3AC 800597AC 468021A0 */ cvt.s.w $f6, $f4 -/* 05A3B0 800597B0 C42B6928 */ lwc1 $f11, %lo(D_800E6928)($at) -/* 05A3B4 800597B4 C42A692C */ lwc1 $f10, %lo(D_800E692C)($at) -/* 05A3B8 800597B8 46003221 */ cvt.d.s $f8, $f6 -/* 05A3BC 800597BC 462A4402 */ mul.d $f16, $f8, $f10 -/* 05A3C0 800597C0 444FF800 */ cfc1 $t7, $31 -/* 05A3C4 800597C4 00000000 */ nop -/* 05A3C8 800597C8 35E10003 */ ori $at, $t7, 3 -/* 05A3CC 800597CC 38210002 */ xori $at, $at, 2 -/* 05A3D0 800597D0 44C1F800 */ ctc1 $at, $31 -/* 05A3D4 800597D4 00000000 */ nop -/* 05A3D8 800597D8 462084A4 */ cvt.w.d $f18, $f16 -/* 05A3DC 800597DC 44CFF800 */ ctc1 $t7, $31 -/* 05A3E0 800597E0 44049000 */ mfc1 $a0, $f18 -/* 05A3E4 800597E4 00000000 */ nop -.L800597E8: -/* 05A3E8 800597E8 0088001A */ div $zero, $a0, $t0 -/* 05A3EC 800597EC 2409003C */ li $t1, 60 -/* 05A3F0 800597F0 15000002 */ bnez $t0, .L800597FC -/* 05A3F4 800597F4 00000000 */ nop -/* 05A3F8 800597F8 0007000D */ break 7 -.L800597FC: -/* 05A3FC 800597FC 2401FFFF */ li $at, -1 -/* 05A400 80059800 15010004 */ bne $t0, $at, .L80059814 -/* 05A404 80059804 3C018000 */ lui $at, 0x8000 -/* 05A408 80059808 14810002 */ bne $a0, $at, .L80059814 -/* 05A40C 8005980C 00000000 */ nop -/* 05A410 80059810 0006000D */ break 6 -.L80059814: -/* 05A414 80059814 00001012 */ mflo $v0 -/* 05A418 80059818 ACA20000 */ sw $v0, ($a1) -/* 05A41C 8005981C 00000000 */ nop -/* 05A420 80059820 00480019 */ multu $v0, $t0 -/* 05A424 80059824 0000C012 */ mflo $t8 -/* 05A428 80059828 0098C823 */ subu $t9, $a0, $t8 -/* 05A42C 8005982C 00000000 */ nop -/* 05A430 80059830 0329001A */ div $zero, $t9, $t1 -/* 05A434 80059834 15200002 */ bnez $t1, .L80059840 -/* 05A438 80059838 00000000 */ nop -/* 05A43C 8005983C 0007000D */ break 7 -.L80059840: -/* 05A440 80059840 2401FFFF */ li $at, -1 -/* 05A444 80059844 15210004 */ bne $t1, $at, .L80059858 -/* 05A448 80059848 3C018000 */ lui $at, 0x8000 -/* 05A44C 8005984C 17210002 */ bne $t9, $at, .L80059858 -/* 05A450 80059850 00000000 */ nop -/* 05A454 80059854 0006000D */ break 6 -.L80059858: -/* 05A458 80059858 00001812 */ mflo $v1 -/* 05A45C 8005985C ACC30000 */ sw $v1, ($a2) -/* 05A460 80059860 8CAA0000 */ lw $t2, ($a1) -/* 05A464 80059864 00000000 */ nop -/* 05A468 80059868 01480019 */ multu $t2, $t0 -/* 05A46C 8005986C 00005812 */ mflo $t3 -/* 05A470 80059870 008B6023 */ subu $t4, $a0, $t3 -/* 05A474 80059874 00000000 */ nop -/* 05A478 80059878 00690019 */ multu $v1, $t1 -/* 05A47C 8005987C 00006812 */ mflo $t5 -/* 05A480 80059880 018D7023 */ subu $t6, $t4, $t5 -/* 05A484 80059884 000E7880 */ sll $t7, $t6, 2 -/* 05A488 80059888 01EE7823 */ subu $t7, $t7, $t6 -/* 05A48C 8005988C 000F78C0 */ sll $t7, $t7, 3 -/* 05A490 80059890 01EE7821 */ addu $t7, $t7, $t6 -/* 05A494 80059894 000F7880 */ sll $t7, $t7, 2 -/* 05A498 80059898 01E9001A */ div $zero, $t7, $t1 -/* 05A49C 8005989C 15200002 */ bnez $t1, .L800598A8 -/* 05A4A0 800598A0 00000000 */ nop -/* 05A4A4 800598A4 0007000D */ break 7 -.L800598A8: -/* 05A4A8 800598A8 2401FFFF */ li $at, -1 -/* 05A4AC 800598AC 15210004 */ bne $t1, $at, .L800598C0 -/* 05A4B0 800598B0 3C018000 */ lui $at, 0x8000 -/* 05A4B4 800598B4 15E10002 */ bne $t7, $at, .L800598C0 -/* 05A4B8 800598B8 00000000 */ nop -/* 05A4BC 800598BC 0006000D */ break 6 -.L800598C0: -/* 05A4C0 800598C0 0000C012 */ mflo $t8 -/* 05A4C4 800598C4 ACF80000 */ sw $t8, ($a3) -/* 05A4C8 800598C8 03E00008 */ jr $ra -/* 05A4CC 800598CC 00000000 */ nop - -glabel func_800598D0 -/* 05A4D0 800598D0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 05A4D4 800598D4 AFBF0014 */ sw $ra, 0x14($sp) -/* 05A4D8 800598D8 3C05FF00 */ lui $a1, (0xFF0000FF >> 16) # lui $a1, 0xff00 -/* 05A4DC 800598DC 34A500FF */ ori $a1, (0xFF0000FF & 0xFFFF) # ori $a1, $a1, 0xff -/* 05A4E0 800598E0 0C01C327 */ jal func_80070C9C -/* 05A4E4 800598E4 240421C0 */ li $a0, 8640 -/* 05A4E8 800598E8 3C038012 */ lui $v1, %hi(D_8011D590) # $v1, 0x8012 -/* 05A4EC 800598EC 3C048012 */ lui $a0, %hi(D_8011D5A0) # $a0, 0x8012 -/* 05A4F0 800598F0 2484D5A0 */ addiu $a0, %lo(D_8011D5A0) # addiu $a0, $a0, -0x2a60 -/* 05A4F4 800598F4 2463D590 */ addiu $v1, %lo(D_8011D590) # addiu $v1, $v1, -0x2a70 -/* 05A4F8 800598F8 3C058012 */ lui $a1, %hi(D_8011D5A8) # $a1, 0x8012 -/* 05A4FC 800598FC 24A5D5A8 */ addiu $a1, %lo(D_8011D5A8) # addiu $a1, $a1, -0x2a58 -/* 05A500 80059900 244F10E0 */ addiu $t7, $v0, 0x10e0 -/* 05A504 80059904 AC620000 */ sw $v0, ($v1) -/* 05A508 80059908 AC6F0004 */ sw $t7, 4($v1) -/* 05A50C 8005990C AC600008 */ sw $zero, 8($v1) -/* 05A510 80059910 A4800000 */ sh $zero, ($a0) -/* 05A514 80059914 A4800002 */ sh $zero, 2($a0) -/* 05A518 80059918 A4800004 */ sh $zero, 4($a0) -/* 05A51C 8005991C A4A00000 */ sh $zero, ($a1) -/* 05A520 80059920 A4A00002 */ sh $zero, 2($a1) -/* 05A524 80059924 3C018012 */ lui $at, %hi(D_8011D59D) # $at, 0x8012 -/* 05A528 80059928 8FBF0014 */ lw $ra, 0x14($sp) -/* 05A52C 8005992C A020D59D */ sb $zero, %lo(D_8011D59D)($at) -/* 05A530 80059930 3C018012 */ lui $at, %hi(D_8011D5AC) # $at, 0x8012 -/* 05A534 80059934 2418FFFF */ li $t8, -1 -/* 05A538 80059938 A438D5AC */ sh $t8, %lo(D_8011D5AC)($at) -/* 05A53C 8005993C 03E00008 */ jr $ra -/* 05A540 80059940 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_80059944 -/* 05A544 80059944 3C0E8012 */ lui $t6, %hi(D_8011D59D) # $t6, 0x8012 -/* 05A548 80059948 81CED59D */ lb $t6, %lo(D_8011D59D)($t6) -/* 05A54C 8005994C 3C038012 */ lui $v1, %hi(D_8011D59C) # $v1, 0x8012 -/* 05A550 80059950 2463D59C */ addiu $v1, %lo(D_8011D59C) # addiu $v1, $v1, -0x2a64 -/* 05A554 80059954 A06E0000 */ sb $t6, ($v1) -/* 05A558 80059958 80620000 */ lb $v0, ($v1) -/* 05A55C 8005995C 3C018012 */ lui $at, 0x8012 -/* 05A560 80059960 00027840 */ sll $t7, $v0, 1 -/* 05A564 80059964 002F0821 */ addu $at, $at, $t7 -/* 05A568 80059968 A420D5A0 */ sh $zero, -0x2a60($at) -/* 05A56C 8005996C 3C018012 */ lui $at, 0x8012 -/* 05A570 80059970 002F0821 */ addu $at, $at, $t7 -/* 05A574 80059974 A420D5A8 */ sh $zero, -0x2a58($at) -/* 05A578 80059978 3C018012 */ lui $at, 0x8012 -/* 05A57C 8005997C 03E00008 */ jr $ra -/* 05A580 80059980 A420D59E */ sh $zero, -0x2a62($at) - -glabel func_80059984 -/* 05A584 80059984 3C0E8012 */ lui $t6, %hi(D_8011D59C) # $t6, 0x8012 -/* 05A588 80059988 81CED59C */ lb $t6, %lo(D_8011D59C)($t6) -/* 05A58C 8005998C 3C018012 */ lui $at, %hi(D_8011D59D) # $at, 0x8012 -/* 05A590 80059990 25CF0001 */ addiu $t7, $t6, 1 -/* 05A594 80059994 31F80001 */ andi $t8, $t7, 1 -/* 05A598 80059998 A038D59D */ sb $t8, %lo(D_8011D59D)($at) -/* 05A59C 8005999C 3C018012 */ lui $at, 0x8012 -/* 05A5A0 800599A0 03E00008 */ jr $ra -/* 05A5A4 800599A4 A424D5AC */ sh $a0, -0x2a54($at) - -glabel func_800599A8 -/* 05A5A8 800599A8 3C028012 */ lui $v0, %hi(D_8011D5AC) # $v0, 0x8012 -/* 05A5AC 800599AC 8442D5AC */ lh $v0, %lo(D_8011D5AC)($v0) -/* 05A5B0 800599B0 03E00008 */ jr $ra -/* 05A5B4 800599B4 00000000 */ nop - -glabel func_800599B8 -/* 05A5B8 800599B8 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 05A5BC 800599BC 3C038012 */ lui $v1, %hi(D_80120001) # $v1, 0x8012 -/* 05A5C0 800599C0 8063D59C */ lb $v1, %lo(D_8011D59C)($v1) -/* 05A5C4 800599C4 3C0A8012 */ lui $t2, 0x8012 -/* 05A5C8 800599C8 24630001 */ addiu $v1, %lo(D_80120001) # addiu $v1, $v1, 1 -/* 05A5CC 800599CC 30780001 */ andi $t8, $v1, 1 -/* 05A5D0 800599D0 00184880 */ sll $t1, $t8, 2 -/* 05A5D4 800599D4 01495021 */ addu $t2, $t2, $t1 -/* 05A5D8 800599D8 8D4AD590 */ lw $t2, -0x2a70($t2) -/* 05A5DC 800599DC 8FB90048 */ lw $t9, 0x48($sp) -/* 05A5E0 800599E0 AFA5003C */ sw $a1, 0x3c($sp) -/* 05A5E4 800599E4 AFBF0024 */ sw $ra, 0x24($sp) -/* 05A5E8 800599E8 AFA60040 */ sw $a2, 0x40($sp) -/* 05A5EC 800599EC 00067400 */ sll $t6, $a2, 0x10 -/* 05A5F0 800599F0 87A5003E */ lh $a1, 0x3e($sp) -/* 05A5F4 800599F4 27A8002E */ addiu $t0, $sp, 0x2e -/* 05A5F8 800599F8 000E3403 */ sra $a2, $t6, 0x10 -/* 05A5FC 800599FC AFA70044 */ sw $a3, 0x44($sp) -/* 05A600 80059A00 AFA80014 */ sw $t0, 0x14($sp) -/* 05A604 80059A04 AFB80030 */ sw $t8, 0x30($sp) -/* 05A608 80059A08 AFAA0018 */ sw $t2, 0x18($sp) -/* 05A60C 80059A0C 0C01D2CD */ jal func_80074B34 -/* 05A610 80059A10 AFB90010 */ sw $t9, 0x10($sp) -/* 05A614 80059A14 8FAB0044 */ lw $t3, 0x44($sp) -/* 05A618 80059A18 8FA30030 */ lw $v1, 0x30($sp) -/* 05A61C 80059A1C 1160000E */ beqz $t3, .L80059A58 -/* 05A620 80059A20 00402025 */ move $a0, $v0 -/* 05A624 80059A24 1440000A */ bnez $v0, .L80059A50 -/* 05A628 80059A28 240FFFFF */ li $t7, -1 -/* 05A62C 80059A2C 87AC002E */ lh $t4, 0x2e($sp) -/* 05A630 80059A30 00036840 */ sll $t5, $v1, 1 -/* 05A634 80059A34 3C018012 */ lui $at, 0x8012 -/* 05A638 80059A38 002D0821 */ addu $at, $at, $t5 -/* 05A63C 80059A3C 8FAE003C */ lw $t6, 0x3c($sp) -/* 05A640 80059A40 A42CD5A0 */ sh $t4, -0x2a60($at) -/* 05A644 80059A44 3C018012 */ lui $at, %hi(D_8011D5AC) # $at, 0x8012 -/* 05A648 80059A48 10000003 */ b .L80059A58 -/* 05A64C 80059A4C A42ED5AC */ sh $t6, %lo(D_8011D5AC)($at) -.L80059A50: -/* 05A650 80059A50 3C018012 */ lui $at, %hi(D_8011D5AC) # $at, 0x8012 -/* 05A654 80059A54 A42FD5AC */ sh $t7, %lo(D_8011D5AC)($at) -.L80059A58: -/* 05A658 80059A58 8FBF0024 */ lw $ra, 0x24($sp) -/* 05A65C 80059A5C 27BD0038 */ addiu $sp, $sp, 0x38 -/* 05A660 80059A60 03E00008 */ jr $ra -/* 05A664 80059A64 00801025 */ move $v0, $a0 - -glabel func_80059A68 -/* 05A668 80059A68 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 05A66C 80059A6C AFA40028 */ sw $a0, 0x28($sp) -/* 05A670 80059A70 AFA5002C */ sw $a1, 0x2c($sp) -/* 05A674 80059A74 00A02025 */ move $a0, $a1 -/* 05A678 80059A78 AFBF001C */ sw $ra, 0x1c($sp) -/* 05A67C 80059A7C 3C05FF00 */ lui $a1, (0xFF0000FF >> 16) # lui $a1, 0xff00 -/* 05A680 80059A80 AFB00018 */ sw $s0, 0x18($sp) -/* 05A684 80059A84 AFA60030 */ sw $a2, 0x30($sp) -/* 05A688 80059A88 0C01C327 */ jal func_80070C9C -/* 05A68C 80059A8C 34A500FF */ ori $a1, (0xFF0000FF & 0xFFFF) # ori $a1, $a1, 0xff -/* 05A690 80059A90 10400029 */ beqz $v0, .L80059B38 -/* 05A694 80059A94 00408025 */ move $s0, $v0 -/* 05A698 80059A98 8FA60028 */ lw $a2, 0x28($sp) -/* 05A69C 80059A9C 8FA7002C */ lw $a3, 0x2c($sp) -/* 05A6A0 80059AA0 24040031 */ li $a0, 49 -/* 05A6A4 80059AA4 0C01DB9A */ jal func_80076E68 -/* 05A6A8 80059AA8 00402825 */ move $a1, $v0 -/* 05A6AC 80059AAC 3C038012 */ lui $v1, %hi(D_8011D590) # $v1, 0x8012 -/* 05A6B0 80059AB0 2463D590 */ addiu $v1, %lo(D_8011D590) # addiu $v1, $v1, -0x2a70 -/* 05A6B4 80059AB4 8C640008 */ lw $a0, 8($v1) -/* 05A6B8 80059AB8 00000000 */ nop -/* 05A6BC 80059ABC 10800004 */ beqz $a0, .L80059AD0 -/* 05A6C0 80059AC0 8FA6002C */ lw $a2, 0x2c($sp) -/* 05A6C4 80059AC4 0C01C450 */ jal func_80071140 -/* 05A6C8 80059AC8 00000000 */ nop -/* 05A6CC 80059ACC 8FA6002C */ lw $a2, 0x2c($sp) -.L80059AD0: -/* 05A6D0 80059AD0 2405FFFF */ li $a1, -1 -/* 05A6D4 80059AD4 24C6FFF8 */ addiu $a2, $a2, -8 -/* 05A6D8 80059AD8 00C02025 */ move $a0, $a2 -/* 05A6DC 80059ADC 0C01C327 */ jal func_80070C9C -/* 05A6E0 80059AE0 AFA60020 */ sw $a2, 0x20($sp) -/* 05A6E4 80059AE4 3C038012 */ lui $v1, %hi(D_8011D590) # $v1, 0x8012 -/* 05A6E8 80059AE8 2463D590 */ addiu $v1, %lo(D_8011D590) # addiu $v1, $v1, -0x2a70 -/* 05A6EC 80059AEC 8FA60020 */ lw $a2, 0x20($sp) -/* 05A6F0 80059AF0 1040000F */ beqz $v0, .L80059B30 -/* 05A6F4 80059AF4 AC620008 */ sw $v0, 8($v1) -/* 05A6F8 80059AF8 860F0004 */ lh $t7, 4($s0) -/* 05A6FC 80059AFC 8FB80030 */ lw $t8, 0x30($sp) -/* 05A700 80059B00 3C018012 */ lui $at, %hi(D_8011D5A4) # $at, 0x8012 -/* 05A704 80059B04 A70F0000 */ sh $t7, ($t8) -/* 05A708 80059B08 86190006 */ lh $t9, 6($s0) -/* 05A70C 80059B0C 26040008 */ addiu $a0, $s0, 8 -/* 05A710 80059B10 A439D5A4 */ sh $t9, %lo(D_8011D5A4)($at) -/* 05A714 80059B14 8C650008 */ lw $a1, 8($v1) -/* 05A718 80059B18 0C032768 */ jal bcopy -/* 05A71C 80059B1C 00000000 */ nop -/* 05A720 80059B20 0C01C450 */ jal func_80071140 -/* 05A724 80059B24 02002025 */ move $a0, $s0 -/* 05A728 80059B28 10000004 */ b .L80059B3C -/* 05A72C 80059B2C 00001025 */ move $v0, $zero -.L80059B30: -/* 05A730 80059B30 0C01C450 */ jal func_80071140 -/* 05A734 80059B34 02002025 */ move $a0, $s0 -.L80059B38: -/* 05A738 80059B38 24020001 */ li $v0, 1 -.L80059B3C: -/* 05A73C 80059B3C 8FBF001C */ lw $ra, 0x1c($sp) -/* 05A740 80059B40 8FB00018 */ lw $s0, 0x18($sp) -/* 05A744 80059B44 03E00008 */ jr $ra -/* 05A748 80059B48 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_80059B4C -/* 05A74C 80059B4C 3C048012 */ lui $a0, %hi(D_8011D598) # $a0, 0x8012 -/* 05A750 80059B50 8C84D598 */ lw $a0, %lo(D_8011D598)($a0) -/* 05A754 80059B54 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 05A758 80059B58 10800003 */ beqz $a0, .L80059B68 -/* 05A75C 80059B5C AFBF0014 */ sw $ra, 0x14($sp) -/* 05A760 80059B60 0C01C450 */ jal func_80071140 -/* 05A764 80059B64 00000000 */ nop -.L80059B68: -/* 05A768 80059B68 8FBF0014 */ lw $ra, 0x14($sp) -/* 05A76C 80059B6C 3C018012 */ lui $at, %hi(D_8011D598) # $at, 0x8012 -/* 05A770 80059B70 AC20D598 */ sw $zero, %lo(D_8011D598)($at) -/* 05A774 80059B74 03E00008 */ jr $ra -/* 05A778 80059B78 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_80059B7C -/* 05A77C 80059B7C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 05A780 80059B80 3C028012 */ lui $v0, %hi(D_8011D59C) # $v0, 0x8012 -/* 05A784 80059B84 8042D59C */ lb $v0, %lo(D_8011D59C)($v0) -/* 05A788 80059B88 3C0A8012 */ lui $t2, 0x8012 -/* 05A78C 80059B8C 3C0C8012 */ lui $t4, 0x8012 -/* 05A790 80059B90 00024840 */ sll $t1, $v0, 1 -/* 05A794 80059B94 00025880 */ sll $t3, $v0, 2 -/* 05A798 80059B98 018B6021 */ addu $t4, $t4, $t3 -/* 05A79C 80059B9C 01495021 */ addu $t2, $t2, $t1 -/* 05A7A0 80059BA0 854AD5A0 */ lh $t2, -0x2a60($t2) -/* 05A7A4 80059BA4 8D8CD590 */ lw $t4, -0x2a70($t4) -/* 05A7A8 80059BA8 87A8003A */ lh $t0, 0x3a($sp) -/* 05A7AC 80059BAC AFA5002C */ sw $a1, 0x2c($sp) -/* 05A7B0 80059BB0 AFBF0024 */ sw $ra, 0x24($sp) -/* 05A7B4 80059BB4 AFA60030 */ sw $a2, 0x30($sp) -/* 05A7B8 80059BB8 AFA70034 */ sw $a3, 0x34($sp) -/* 05A7BC 80059BBC 00067400 */ sll $t6, $a2, 0x10 -/* 05A7C0 80059BC0 0007C400 */ sll $t8, $a3, 0x10 -/* 05A7C4 80059BC4 87A5002E */ lh $a1, 0x2e($sp) -/* 05A7C8 80059BC8 00183C03 */ sra $a3, $t8, 0x10 -/* 05A7CC 80059BCC 000E3403 */ sra $a2, $t6, 0x10 -/* 05A7D0 80059BD0 AFAA0014 */ sw $t2, 0x14($sp) -/* 05A7D4 80059BD4 AFAC0018 */ sw $t4, 0x18($sp) -/* 05A7D8 80059BD8 0C01D400 */ jal func_80075000 -/* 05A7DC 80059BDC AFA80010 */ sw $t0, 0x10($sp) -/* 05A7E0 80059BE0 8FBF0024 */ lw $ra, 0x24($sp) -/* 05A7E4 80059BE4 27BD0028 */ addiu $sp, $sp, 0x28 -/* 05A7E8 80059BE8 03E00008 */ jr $ra -/* 05A7EC 80059BEC 00000000 */ nop - -glabel func_80059BF0 -/* 05A7F0 80059BF0 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 05A7F4 80059BF4 AFBF0014 */ sw $ra, 0x14($sp) -/* 05A7F8 80059BF8 AFA5002C */ sw $a1, 0x2c($sp) -/* 05A7FC 80059BFC 8C880064 */ lw $t0, 0x64($a0) -/* 05A800 80059C00 00803025 */ move $a2, $a0 -/* 05A804 80059C04 85040164 */ lh $a0, 0x164($t0) -/* 05A808 80059C08 AFA60028 */ sw $a2, 0x28($sp) -/* 05A80C 80059C0C 0C01C1FE */ jal func_800707F8 -/* 05A810 80059C10 AFA80020 */ sw $t0, 0x20($sp) -/* 05A814 80059C14 8FA80020 */ lw $t0, 0x20($sp) -/* 05A818 80059C18 E7A00018 */ swc1 $f0, 0x18($sp) -/* 05A81C 80059C1C 850F0166 */ lh $t7, 0x166($t0) -/* 05A820 80059C20 850E0162 */ lh $t6, 0x162($t0) -/* 05A824 80059C24 00000000 */ nop -/* 05A828 80059C28 01CF2023 */ subu $a0, $t6, $t7 -/* 05A82C 80059C2C 0004C400 */ sll $t8, $a0, 0x10 -/* 05A830 80059C30 0C01C1FE */ jal func_800707F8 -/* 05A834 80059C34 00182403 */ sra $a0, $t8, 0x10 -/* 05A838 80059C38 C7A40018 */ lwc1 $f4, 0x18($sp) -/* 05A83C 80059C3C 44803000 */ mtc1 $zero, $f6 -/* 05A840 80059C40 46040302 */ mul.s $f12, $f0, $f4 -/* 05A844 80059C44 8FA60028 */ lw $a2, 0x28($sp) -/* 05A848 80059C48 8FA80020 */ lw $t0, 0x20($sp) -/* 05A84C 80059C4C 3C098012 */ lui $t1, %hi(D_8011D59E) # $t1, 0x8012 -/* 05A850 80059C50 4606603C */ c.lt.s $f12, $f6 -/* 05A854 80059C54 46006086 */ mov.s $f2, $f12 -/* 05A858 80059C58 45000007 */ bc1f .L80059C78 -/* 05A85C 80059C5C 2529D59E */ addiu $t1, %lo(D_8011D59E) # addiu $t1, $t1, -0x2a62 -/* 05A860 80059C60 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 05A864 80059C64 44815800 */ mtc1 $at, $f11 -/* 05A868 80059C68 44805000 */ mtc1 $zero, $f10 -/* 05A86C 80059C6C 46006221 */ cvt.d.s $f8, $f12 -/* 05A870 80059C70 462A4402 */ mul.d $f16, $f8, $f10 -/* 05A874 80059C74 462080A0 */ cvt.s.d $f2, $f16 -.L80059C78: -/* 05A878 80059C78 852E0000 */ lh $t6, ($t1) -/* 05A87C 80059C7C 8FAF002C */ lw $t7, 0x2c($sp) -/* 05A880 80059C80 3C014188 */ li $at, 0x41880000 # 17.000000 -/* 05A884 80059C84 44810000 */ mtc1 $at, $f0 -/* 05A888 80059C88 01CFC023 */ subu $t8, $t6, $t7 -/* 05A88C 80059C8C 46001482 */ mul.s $f18, $f2, $f0 -/* 05A890 80059C90 A5380000 */ sh $t8, ($t1) -/* 05A894 80059C94 85240000 */ lh $a0, ($t1) -/* 05A898 80059C98 00000000 */ nop -/* 05A89C 80059C9C 1C80005C */ bgtz $a0, .L80059E10 -/* 05A8A0 80059CA0 46120081 */ sub.s $f2, $f0, $f18 -/* 05A8A4 80059CA4 1C80005A */ bgtz $a0, .L80059E10 -/* 05A8A8 80059CA8 3C058012 */ lui $a1, %hi(D_8011D59C) # $a1, 0x8012 -/* 05A8AC 80059CAC 80A5D59C */ lb $a1, %lo(D_8011D59C)($a1) -/* 05A8B0 80059CB0 3C0E8012 */ lui $t6, %hi(D_8011D5A0) # $t6, 0x8012 -/* 05A8B4 80059CB4 25CED5A0 */ addiu $t6, %lo(D_8011D5A0) # addiu $t6, $t6, -0x2a60 -/* 05A8B8 80059CB8 3C0D8012 */ lui $t5, %hi(D_8011D5A0) # $t5, 0x8012 -/* 05A8BC 80059CBC 3C0C8012 */ lui $t4, %hi(D_8011D590) # $t4, 0x8012 -/* 05A8C0 80059CC0 3C0A8012 */ lui $t2, %hi(D_8011D59C) # $t2, 0x8012 -/* 05A8C4 80059CC4 0005C840 */ sll $t9, $a1, 1 -/* 05A8C8 80059CC8 032E1821 */ addu $v1, $t9, $t6 -/* 05A8CC 80059CCC 254AD59C */ addiu $t2, %lo(D_8011D59C) # addiu $t2, $t2, -0x2a64 -/* 05A8D0 80059CD0 258CD590 */ addiu $t4, %lo(D_8011D590) # addiu $t4, $t4, -0x2a70 -/* 05A8D4 80059CD4 25ADD5A0 */ addiu $t5, %lo(D_8011D5A0) # addiu $t5, $t5, -0x2a60 -/* 05A8D8 80059CD8 240B000C */ li $t3, 12 -.L80059CDC: -/* 05A8DC 80059CDC 84670000 */ lh $a3, ($v1) -/* 05A8E0 80059CE0 248F001E */ addiu $t7, $a0, 0x1e -/* 05A8E4 80059CE4 28E10168 */ slti $at, $a3, 0x168 -/* 05A8E8 80059CE8 1420000D */ bnez $at, .L80059D20 -/* 05A8EC 80059CEC A52F0000 */ sh $t7, ($t1) -/* 05A8F0 80059CF0 0C01BAAC */ jal func_8006EAB0 -/* 05A8F4 80059CF4 00000000 */ nop -/* 05A8F8 80059CF8 3C0A8012 */ lui $t2, %hi(D_8011D59C) # $t2, 0x8012 -/* 05A8FC 80059CFC 14400044 */ bnez $v0, .L80059E10 -/* 05A900 80059D00 254AD59C */ addiu $t2, %lo(D_8011D59C) # addiu $t2, $t2, -0x2a64 -/* 05A904 80059D04 81590000 */ lb $t9, ($t2) -/* 05A908 80059D08 3C018012 */ lui $at, 0x8012 -/* 05A90C 80059D0C 00197040 */ sll $t6, $t9, 1 -/* 05A910 80059D10 002E0821 */ addu $at, $at, $t6 -/* 05A914 80059D14 24180001 */ li $t8, 1 -/* 05A918 80059D18 1000003D */ b .L80059E10 -/* 05A91C 80059D1C A438D5A8 */ sh $t8, -0x2a58($at) -.L80059D20: -/* 05A920 80059D20 00EB0019 */ multu $a3, $t3 -/* 05A924 80059D24 0005C880 */ sll $t9, $a1, 2 -/* 05A928 80059D28 0199C021 */ addu $t8, $t4, $t9 -/* 05A92C 80059D2C 4459F800 */ cfc1 $t9, $31 -/* 05A930 80059D30 C4C4000C */ lwc1 $f4, 0xc($a2) -/* 05A934 80059D34 37210003 */ ori $at, $t9, 3 -/* 05A938 80059D38 38210002 */ xori $at, $at, 2 -/* 05A93C 80059D3C 44C1F800 */ ctc1 $at, $31 -/* 05A940 80059D40 8F0E0000 */ lw $t6, ($t8) -/* 05A944 80059D44 460021A4 */ cvt.w.s $f6, $f4 -/* 05A948 80059D48 44183000 */ mfc1 $t8, $f6 -/* 05A94C 80059D4C 00007812 */ mflo $t7 -/* 05A950 80059D50 01EE1021 */ addu $v0, $t7, $t6 -/* 05A954 80059D54 A4580000 */ sh $t8, ($v0) -/* 05A958 80059D58 44D9F800 */ ctc1 $t9, $31 -/* 05A95C 80059D5C C4C80010 */ lwc1 $f8, 0x10($a2) -/* 05A960 80059D60 00000000 */ nop -/* 05A964 80059D64 46024280 */ add.s $f10, $f8, $f2 -/* 05A968 80059D68 444FF800 */ cfc1 $t7, $31 -/* 05A96C 80059D6C 00000000 */ nop -/* 05A970 80059D70 35E10003 */ ori $at, $t7, 3 -/* 05A974 80059D74 38210002 */ xori $at, $at, 2 -/* 05A978 80059D78 44C1F800 */ ctc1 $at, $31 -/* 05A97C 80059D7C 37210003 */ ori $at, $t9, 3 -/* 05A980 80059D80 46005424 */ cvt.w.s $f16, $f10 -/* 05A984 80059D84 38210002 */ xori $at, $at, 2 -/* 05A988 80059D88 440E8000 */ mfc1 $t6, $f16 -/* 05A98C 80059D8C 44CFF800 */ ctc1 $t7, $31 -/* 05A990 80059D90 A44E0002 */ sh $t6, 2($v0) -/* 05A994 80059D94 C4D20014 */ lwc1 $f18, 0x14($a2) -/* 05A998 80059D98 44C1F800 */ ctc1 $at, $31 -/* 05A99C 80059D9C 00000000 */ nop -/* 05A9A0 80059DA0 46009124 */ cvt.w.s $f4, $f18 -/* 05A9A4 80059DA4 44182000 */ mfc1 $t8, $f4 -/* 05A9A8 80059DA8 44D9F800 */ ctc1 $t9, $31 -/* 05A9AC 80059DAC A4580004 */ sh $t8, 4($v0) -/* 05A9B0 80059DB0 850E0160 */ lh $t6, 0x160($t0) -/* 05A9B4 80059DB4 84CF0000 */ lh $t7, ($a2) -/* 05A9B8 80059DB8 00000000 */ nop -/* 05A9BC 80059DBC 01EEC821 */ addu $t9, $t7, $t6 -/* 05A9C0 80059DC0 A459000A */ sh $t9, 0xa($v0) -/* 05A9C4 80059DC4 850F0162 */ lh $t7, 0x162($t0) -/* 05A9C8 80059DC8 84D80002 */ lh $t8, 2($a2) -/* 05A9CC 80059DCC 00000000 */ nop -/* 05A9D0 80059DD0 030F7021 */ addu $t6, $t8, $t7 -/* 05A9D4 80059DD4 A44E0008 */ sh $t6, 8($v0) -/* 05A9D8 80059DD8 85180164 */ lh $t8, 0x164($t0) -/* 05A9DC 80059DDC 84D90004 */ lh $t9, 4($a2) -/* 05A9E0 80059DE0 00000000 */ nop -/* 05A9E4 80059DE4 03387821 */ addu $t7, $t9, $t8 -/* 05A9E8 80059DE8 A44F0006 */ sh $t7, 6($v0) -/* 05A9EC 80059DEC 81450000 */ lb $a1, ($t2) -/* 05A9F0 80059DF0 85240000 */ lh $a0, ($t1) -/* 05A9F4 80059DF4 00057040 */ sll $t6, $a1, 1 -/* 05A9F8 80059DF8 01AE1821 */ addu $v1, $t5, $t6 -/* 05A9FC 80059DFC 84790000 */ lh $t9, ($v1) -/* 05AA00 80059E00 00000000 */ nop -/* 05AA04 80059E04 27380001 */ addiu $t8, $t9, 1 -/* 05AA08 80059E08 1880FFB4 */ blez $a0, .L80059CDC -/* 05AA0C 80059E0C A4780000 */ sh $t8, ($v1) -.L80059E10: -/* 05AA10 80059E10 8FBF0014 */ lw $ra, 0x14($sp) -/* 05AA14 80059E14 27BD0028 */ addiu $sp, $sp, 0x28 -/* 05AA18 80059E18 03E00008 */ jr $ra -/* 05AA1C 80059E1C 00000000 */ nop - -glabel func_80059E20 -/* 05AA20 80059E20 3C0E8012 */ lui $t6, %hi(D_8011D59C) # $t6, 0x8012 -/* 05AA24 80059E24 81CED59C */ lb $t6, %lo(D_8011D59C)($t6) -/* 05AA28 80059E28 3C028012 */ lui $v0, 0x8012 -/* 05AA2C 80059E2C 000E7840 */ sll $t7, $t6, 1 -/* 05AA30 80059E30 004F1021 */ addu $v0, $v0, $t7 -/* 05AA34 80059E34 8442D5A8 */ lh $v0, -0x2a58($v0) -/* 05AA38 80059E38 03E00008 */ jr $ra -/* 05AA3C 80059E3C 00000000 */ nop - -glabel func_80059E40 -/* 05AA40 80059E40 3C058012 */ lui $a1, %hi(D_80120001) # $a1, 0x8012 -/* 05AA44 80059E44 80A5D59C */ lb $a1, %lo(D_8011D59C)($a1) -/* 05AA48 80059E48 27BDFF68 */ addiu $sp, $sp, -0x98 -/* 05AA4C 80059E4C 24A50001 */ addiu $a1, %lo(D_80120001) # addiu $a1, $a1, 1 -/* 05AA50 80059E50 AFBF001C */ sw $ra, 0x1c($sp) -/* 05AA54 80059E54 AFB00018 */ sw $s0, 0x18($sp) -/* 05AA58 80059E58 30AE0001 */ andi $t6, $a1, 1 -/* 05AA5C 80059E5C 00808025 */ move $s0, $a0 -/* 05AA60 80059E60 0C006CEB */ jal func_8001B3AC -/* 05AA64 80059E64 AFAE005C */ sw $t6, 0x5c($sp) -/* 05AA68 80059E68 8FA5005C */ lw $a1, 0x5c($sp) -/* 05AA6C 80059E6C 10400002 */ beqz $v0, .L80059E78 -/* 05AA70 80059E70 3C0141F0 */ li $at, 0x41F00000 # 30.000000 -/* 05AA74 80059E74 24050002 */ li $a1, 2 -.L80059E78: -/* 05AA78 80059E78 8E0F0078 */ lw $t7, 0x78($s0) -/* 05AA7C 80059E7C 3C188000 */ lui $t8, %hi(D_80000300) # $t8, 0x8000 -/* 05AA80 80059E80 448F2000 */ mtc1 $t7, $f4 -/* 05AA84 80059E84 44813000 */ mtc1 $at, $f6 -/* 05AA88 80059E88 46802020 */ cvt.s.w $f0, $f4 -/* 05AA8C 80059E8C 8F180300 */ lw $t8, %lo(D_80000300)($t8) -/* 05AA90 80059E90 00057040 */ sll $t6, $a1, 1 -/* 05AA94 80059E94 1700000E */ bnez $t8, .L80059ED0 -/* 05AA98 80059E98 46060083 */ div.s $f2, $f0, $f6 -/* 05AA9C 80059E9C 24010002 */ li $at, 2 -/* 05AAA0 80059EA0 14A1000B */ bne $a1, $at, .L80059ED0 -/* 05AAA4 80059EA4 3C01800E */ lui $at, %hi(D_800E6934) # $at, 0x800e -/* 05AAA8 80059EA8 C42B6930 */ lwc1 $f11, %lo(D_800E6930)($at) -/* 05AAAC 80059EAC C42A6934 */ lwc1 $f10, %lo(D_800E6934)($at) -/* 05AAB0 80059EB0 46000221 */ cvt.d.s $f8, $f0 -/* 05AAB4 80059EB4 462A4402 */ mul.d $f16, $f8, $f10 -/* 05AAB8 80059EB8 3C01403E */ li $at, 0x403E0000 # 2.968750 -/* 05AABC 80059EBC 44819800 */ mtc1 $at, $f19 -/* 05AAC0 80059EC0 44809000 */ mtc1 $zero, $f18 -/* 05AAC4 80059EC4 00000000 */ nop -/* 05AAC8 80059EC8 46328103 */ div.d $f4, $f16, $f18 -/* 05AACC 80059ECC 462020A0 */ cvt.s.d $f2, $f4 -.L80059ED0: -/* 05AAD0 80059ED0 4459F800 */ cfc1 $t9, $31 -/* 05AAD4 80059ED4 3C0D8012 */ lui $t5, 0x8012 -/* 05AAD8 80059ED8 37210003 */ ori $at, $t9, 3 -/* 05AADC 80059EDC 38210002 */ xori $at, $at, 2 -/* 05AAE0 80059EE0 44C1F800 */ ctc1 $at, $31 -/* 05AAE4 80059EE4 01AE6821 */ addu $t5, $t5, $t6 -/* 05AAE8 80059EE8 460011A4 */ cvt.w.s $f6, $f2 -/* 05AAEC 80059EEC 85ADD5A0 */ lh $t5, -0x2a60($t5) -/* 05AAF0 80059EF0 44033000 */ mfc1 $v1, $f6 -/* 05AAF4 80059EF4 25AFFFFE */ addiu $t7, $t5, -2 -/* 05AAF8 80059EF8 44D9F800 */ ctc1 $t9, $31 -/* 05AAFC 80059EFC 006F082A */ slt $at, $v1, $t7 -/* 05AB00 80059F00 14200003 */ bnez $at, .L80059F10 -/* 05AB04 80059F04 AFA30060 */ sw $v1, 0x60($sp) -/* 05AB08 80059F08 10000125 */ b .L8005A3A0 -/* 05AB0C 80059F0C 00001025 */ move $v0, $zero -.L80059F10: -/* 05AB10 80059F10 24010002 */ li $at, 2 -/* 05AB14 80059F14 10A10011 */ beq $a1, $at, .L80059F5C -/* 05AB18 80059F18 2469FFFF */ addiu $t1, $v1, -1 -/* 05AB1C 80059F1C AFA3003C */ sw $v1, 0x3c($sp) -/* 05AB20 80059F20 AFA5005C */ sw $a1, 0x5c($sp) -/* 05AB24 80059F24 AFAD004C */ sw $t5, 0x4c($sp) -/* 05AB28 80059F28 0C01AF62 */ jal func_8006BD88 -/* 05AB2C 80059F2C E7A20094 */ swc1 $f2, 0x94($sp) -/* 05AB30 80059F30 3C188012 */ lui $t8, %hi(D_8011D5AC) # $t8, 0x8012 -/* 05AB34 80059F34 8718D5AC */ lh $t8, %lo(D_8011D5AC)($t8) -/* 05AB38 80059F38 8FA3003C */ lw $v1, 0x3c($sp) -/* 05AB3C 80059F3C 8FA5005C */ lw $a1, 0x5c($sp) -/* 05AB40 80059F40 8FAD004C */ lw $t5, 0x4c($sp) -/* 05AB44 80059F44 C7A20094 */ lwc1 $f2, 0x94($sp) -/* 05AB48 80059F48 10580004 */ beq $v0, $t8, .L80059F5C -/* 05AB4C 80059F4C 2469FFFF */ addiu $t1, $v1, -1 -/* 05AB50 80059F50 10000113 */ b .L8005A3A0 -/* 05AB54 80059F54 00001025 */ move $v0, $zero -/* 05AB58 80059F58 2469FFFF */ addiu $t1, $v1, -1 -.L80059F5C: -/* 05AB5C 80059F5C 0005C880 */ sll $t9, $a1, 2 -/* 05AB60 80059F60 3C1F8012 */ lui $ra, 0x8012 -/* 05AB64 80059F64 03F9F821 */ addu $ra, $ra, $t9 -/* 05AB68 80059F68 00097080 */ sll $t6, $t1, 2 -/* 05AB6C 80059F6C 8FFFD590 */ lw $ra, -0x2a70($ra) -/* 05AB70 80059F70 01C97023 */ subu $t6, $t6, $t1 -/* 05AB74 80059F74 000E7080 */ sll $t6, $t6, 2 -/* 05AB78 80059F78 27A70084 */ addiu $a3, $sp, 0x84 -/* 05AB7C 80059F7C 27A80074 */ addiu $t0, $sp, 0x74 -/* 05AB80 80059F80 27A60064 */ addiu $a2, $sp, 0x64 -/* 05AB84 80059F84 27AC0074 */ addiu $t4, $sp, 0x74 -/* 05AB88 80059F88 240BFFFF */ li $t3, -1 -/* 05AB8C 80059F8C 03EE5021 */ addu $t2, $ra, $t6 -.L80059F90: -/* 05AB90 80059F90 152B001A */ bne $t1, $t3, .L80059FFC -/* 05AB94 80059F94 01401025 */ move $v0, $t2 -/* 05AB98 80059F98 8443000C */ lh $v1, 0xc($v0) -/* 05AB9C 80059F9C 84580018 */ lh $t8, 0x18($v0) -/* 05ABA0 80059FA0 00637821 */ addu $t7, $v1, $v1 -/* 05ABA4 80059FA4 01F8C823 */ subu $t9, $t7, $t8 -/* 05ABA8 80059FA8 44994000 */ mtc1 $t9, $f8 -/* 05ABAC 80059FAC 2442000C */ addiu $v0, $v0, 0xc -/* 05ABB0 80059FB0 468042A0 */ cvt.s.w $f10, $f8 -/* 05ABB4 80059FB4 E4EA0000 */ swc1 $f10, ($a3) -/* 05ABB8 80059FB8 84440002 */ lh $a0, 2($v0) -/* 05ABBC 80059FBC 844F000E */ lh $t7, 0xe($v0) -/* 05ABC0 80059FC0 00847021 */ addu $t6, $a0, $a0 -/* 05ABC4 80059FC4 01CFC023 */ subu $t8, $t6, $t7 -/* 05ABC8 80059FC8 44988000 */ mtc1 $t8, $f16 -/* 05ABCC 80059FCC 00000000 */ nop -/* 05ABD0 80059FD0 468084A0 */ cvt.s.w $f18, $f16 -/* 05ABD4 80059FD4 E5120000 */ swc1 $f18, ($t0) -/* 05ABD8 80059FD8 84450004 */ lh $a1, 4($v0) -/* 05ABDC 80059FDC 844E0010 */ lh $t6, 0x10($v0) -/* 05ABE0 80059FE0 00A5C821 */ addu $t9, $a1, $a1 -/* 05ABE4 80059FE4 032E7823 */ subu $t7, $t9, $t6 -/* 05ABE8 80059FE8 448F2000 */ mtc1 $t7, $f4 -/* 05ABEC 80059FEC 00000000 */ nop -/* 05ABF0 80059FF0 468021A0 */ cvt.s.w $f6, $f4 -/* 05ABF4 80059FF4 1000002F */ b .L8005A0B4 -/* 05ABF8 80059FF8 E4C60000 */ swc1 $f6, ($a2) -.L80059FFC: -/* 05ABFC 80059FFC 012D082A */ slt $at, $t1, $t5 -/* 05AC00 8005A000 1420001A */ bnez $at, .L8005A06C -/* 05AC04 8005A004 00000000 */ nop -/* 05AC08 8005A008 84430000 */ lh $v1, ($v0) -/* 05AC0C 8005A00C 8459FFF4 */ lh $t9, -0xc($v0) -/* 05AC10 8005A010 0063C021 */ addu $t8, $v1, $v1 -/* 05AC14 8005A014 03197023 */ subu $t6, $t8, $t9 -/* 05AC18 8005A018 448E4000 */ mtc1 $t6, $f8 -/* 05AC1C 8005A01C 00000000 */ nop -/* 05AC20 8005A020 468042A0 */ cvt.s.w $f10, $f8 -/* 05AC24 8005A024 E4EA0000 */ swc1 $f10, ($a3) -/* 05AC28 8005A028 84440002 */ lh $a0, 2($v0) -/* 05AC2C 8005A02C 8458FFF6 */ lh $t8, -0xa($v0) -/* 05AC30 8005A030 00847821 */ addu $t7, $a0, $a0 -/* 05AC34 8005A034 01F8C823 */ subu $t9, $t7, $t8 -/* 05AC38 8005A038 44998000 */ mtc1 $t9, $f16 -/* 05AC3C 8005A03C 00000000 */ nop -/* 05AC40 8005A040 468084A0 */ cvt.s.w $f18, $f16 -/* 05AC44 8005A044 E5120000 */ swc1 $f18, ($t0) -/* 05AC48 8005A048 84450004 */ lh $a1, 4($v0) -/* 05AC4C 8005A04C 844FFFF8 */ lh $t7, -8($v0) -/* 05AC50 8005A050 00A57021 */ addu $t6, $a1, $a1 -/* 05AC54 8005A054 01CFC023 */ subu $t8, $t6, $t7 -/* 05AC58 8005A058 44982000 */ mtc1 $t8, $f4 -/* 05AC5C 8005A05C 00000000 */ nop -/* 05AC60 8005A060 468021A0 */ cvt.s.w $f6, $f4 -/* 05AC64 8005A064 10000013 */ b .L8005A0B4 -/* 05AC68 8005A068 E4C60000 */ swc1 $f6, ($a2) -.L8005A06C: -/* 05AC6C 8005A06C 84590000 */ lh $t9, ($v0) -/* 05AC70 8005A070 00000000 */ nop -/* 05AC74 8005A074 44994000 */ mtc1 $t9, $f8 -/* 05AC78 8005A078 00000000 */ nop -/* 05AC7C 8005A07C 468042A0 */ cvt.s.w $f10, $f8 -/* 05AC80 8005A080 E4EA0000 */ swc1 $f10, ($a3) -/* 05AC84 8005A084 844E0002 */ lh $t6, 2($v0) -/* 05AC88 8005A088 00000000 */ nop -/* 05AC8C 8005A08C 448E8000 */ mtc1 $t6, $f16 -/* 05AC90 8005A090 00000000 */ nop -/* 05AC94 8005A094 468084A0 */ cvt.s.w $f18, $f16 -/* 05AC98 8005A098 E5120000 */ swc1 $f18, ($t0) -/* 05AC9C 8005A09C 844F0004 */ lh $t7, 4($v0) -/* 05ACA0 8005A0A0 00000000 */ nop -/* 05ACA4 8005A0A4 448F2000 */ mtc1 $t7, $f4 -/* 05ACA8 8005A0A8 00000000 */ nop -/* 05ACAC 8005A0AC 468021A0 */ cvt.s.w $f6, $f4 -/* 05ACB0 8005A0B0 E4C60000 */ swc1 $f6, ($a2) -.L8005A0B4: -/* 05ACB4 8005A0B4 24C60004 */ addiu $a2, $a2, 4 -/* 05ACB8 8005A0B8 24E70004 */ addiu $a3, $a3, 4 -/* 05ACBC 8005A0BC 25080004 */ addiu $t0, $t0, 4 -/* 05ACC0 8005A0C0 25290001 */ addiu $t1, $t1, 1 -/* 05ACC4 8005A0C4 14CCFFB2 */ bne $a2, $t4, .L80059F90 -/* 05ACC8 8005A0C8 254A000C */ addiu $t2, $t2, 0xc -/* 05ACCC 8005A0CC 8FB80060 */ lw $t8, 0x60($sp) -/* 05ACD0 8005A0D0 27A40084 */ addiu $a0, $sp, 0x84 -/* 05ACD4 8005A0D4 44984000 */ mtc1 $t8, $f8 -/* 05ACD8 8005A0D8 0018C880 */ sll $t9, $t8, 2 -/* 05ACDC 8005A0DC 468042A0 */ cvt.s.w $f10, $f8 -/* 05ACE0 8005A0E0 0338C823 */ subu $t9, $t9, $t8 -/* 05ACE4 8005A0E4 0019C880 */ sll $t9, $t9, 2 -/* 05ACE8 8005A0E8 460A1081 */ sub.s $f2, $f2, $f10 -/* 05ACEC 8005A0EC 03F91021 */ addu $v0, $ra, $t9 -/* 05ACF0 8005A0F0 44061000 */ mfc1 $a2, $f2 -/* 05ACF4 8005A0F4 AFA20048 */ sw $v0, 0x48($sp) -/* 05ACF8 8005A0F8 E7A20094 */ swc1 $f2, 0x94($sp) -/* 05ACFC 8005A0FC 00002825 */ move $a1, $zero -/* 05AD00 8005A100 0C008950 */ jal func_80022540 -/* 05AD04 8005A104 AFAD004C */ sw $t5, 0x4c($sp) -/* 05AD08 8005A108 C7A20094 */ lwc1 $f2, 0x94($sp) -/* 05AD0C 8005A10C E600000C */ swc1 $f0, 0xc($s0) -/* 05AD10 8005A110 44061000 */ mfc1 $a2, $f2 -/* 05AD14 8005A114 27A40074 */ addiu $a0, $sp, 0x74 -/* 05AD18 8005A118 0C008950 */ jal func_80022540 -/* 05AD1C 8005A11C 00002825 */ move $a1, $zero -/* 05AD20 8005A120 C7A20094 */ lwc1 $f2, 0x94($sp) -/* 05AD24 8005A124 E6000010 */ swc1 $f0, 0x10($s0) -/* 05AD28 8005A128 44061000 */ mfc1 $a2, $f2 -/* 05AD2C 8005A12C 27A40064 */ addiu $a0, $sp, 0x64 -/* 05AD30 8005A130 0C008950 */ jal func_80022540 -/* 05AD34 8005A134 00002825 */ move $a1, $zero -/* 05AD38 8005A138 8FA20048 */ lw $v0, 0x48($sp) -/* 05AD3C 8005A13C 8FAD004C */ lw $t5, 0x4c($sp) -/* 05AD40 8005A140 C7A20094 */ lwc1 $f2, 0x94($sp) -/* 05AD44 8005A144 E6000014 */ swc1 $f0, 0x14($s0) -/* 05AD48 8005A148 8444000A */ lh $a0, 0xa($v0) -/* 05AD4C 8005A14C 2446000C */ addiu $a2, $v0, 0xc -/* 05AD50 8005A150 84CE000A */ lh $t6, 0xa($a2) -/* 05AD54 8005A154 308FFFFF */ andi $t7, $a0, 0xffff -/* 05AD58 8005A158 34078001 */ li $a3, 32769 -/* 05AD5C 8005A15C 01CF1823 */ subu $v1, $t6, $t7 -/* 05AD60 8005A160 0067082A */ slt $at, $v1, $a3 -/* 05AD64 8005A164 14200003 */ bnez $at, .L8005A174 -/* 05AD68 8005A168 3C08FFFF */ lui $t0, (0xFFFF0001 >> 16) # lui $t0, 0xffff -/* 05AD6C 8005A16C 35080001 */ ori $t0, (0xFFFF0001 & 0xFFFF) # ori $t0, $t0, 1 -/* 05AD70 8005A170 00681821 */ addu $v1, $v1, $t0 -.L8005A174: -/* 05AD74 8005A174 3C08FFFF */ lui $t0, (0xFFFF0001 >> 16) # lui $t0, 0xffff -/* 05AD78 8005A178 28618000 */ slti $at, $v1, -0x8000 -/* 05AD7C 8005A17C 10200003 */ beqz $at, .L8005A18C -/* 05AD80 8005A180 35080001 */ ori $t0, (0xFFFF0001 & 0xFFFF) # ori $t0, $t0, 1 -/* 05AD84 8005A184 3409FFFF */ li $t1, 65535 -/* 05AD88 8005A188 00691821 */ addu $v1, $v1, $t1 -.L8005A18C: -/* 05AD8C 8005A18C 44838000 */ mtc1 $v1, $f16 -/* 05AD90 8005A190 3409FFFF */ li $t1, 65535 -/* 05AD94 8005A194 468084A0 */ cvt.s.w $f18, $f16 -/* 05AD98 8005A198 46029102 */ mul.s $f4, $f18, $f2 -/* 05AD9C 8005A19C 4459F800 */ cfc1 $t9, $31 -/* 05ADA0 8005A1A0 00000000 */ nop -/* 05ADA4 8005A1A4 37210003 */ ori $at, $t9, 3 -/* 05ADA8 8005A1A8 38210002 */ xori $at, $at, 2 -/* 05ADAC 8005A1AC 44C1F800 */ ctc1 $at, $31 -/* 05ADB0 8005A1B0 00000000 */ nop -/* 05ADB4 8005A1B4 460021A4 */ cvt.w.s $f6, $f4 -/* 05ADB8 8005A1B8 440F3000 */ mfc1 $t7, $f6 -/* 05ADBC 8005A1BC 44D9F800 */ ctc1 $t9, $31 -/* 05ADC0 8005A1C0 008FC821 */ addu $t9, $a0, $t7 -/* 05ADC4 8005A1C4 A6190000 */ sh $t9, ($s0) -/* 05ADC8 8005A1C8 84450008 */ lh $a1, 8($v0) -/* 05ADCC 8005A1CC 84D80008 */ lh $t8, 8($a2) -/* 05ADD0 8005A1D0 30AEFFFF */ andi $t6, $a1, 0xffff -/* 05ADD4 8005A1D4 030E1823 */ subu $v1, $t8, $t6 -/* 05ADD8 8005A1D8 0067082A */ slt $at, $v1, $a3 -/* 05ADDC 8005A1DC 14200003 */ bnez $at, .L8005A1EC -/* 05ADE0 8005A1E0 28618000 */ slti $at, $v1, -0x8000 -/* 05ADE4 8005A1E4 00681821 */ addu $v1, $v1, $t0 -/* 05ADE8 8005A1E8 28618000 */ slti $at, $v1, -0x8000 -.L8005A1EC: -/* 05ADEC 8005A1EC 10200002 */ beqz $at, .L8005A1F8 -/* 05ADF0 8005A1F0 00000000 */ nop -/* 05ADF4 8005A1F4 00691821 */ addu $v1, $v1, $t1 -.L8005A1F8: -/* 05ADF8 8005A1F8 44834000 */ mtc1 $v1, $f8 -/* 05ADFC 8005A1FC 00000000 */ nop -/* 05AE00 8005A200 468042A0 */ cvt.s.w $f10, $f8 -/* 05AE04 8005A204 46025402 */ mul.s $f16, $f10, $f2 -/* 05AE08 8005A208 444FF800 */ cfc1 $t7, $31 -/* 05AE0C 8005A20C 00000000 */ nop -/* 05AE10 8005A210 35E10003 */ ori $at, $t7, 3 -/* 05AE14 8005A214 38210002 */ xori $at, $at, 2 -/* 05AE18 8005A218 44C1F800 */ ctc1 $at, $31 -/* 05AE1C 8005A21C 00000000 */ nop -/* 05AE20 8005A220 460084A4 */ cvt.w.s $f18, $f16 -/* 05AE24 8005A224 440E9000 */ mfc1 $t6, $f18 -/* 05AE28 8005A228 44CFF800 */ ctc1 $t7, $31 -/* 05AE2C 8005A22C 00AE7821 */ addu $t7, $a1, $t6 -/* 05AE30 8005A230 A60F0002 */ sh $t7, 2($s0) -/* 05AE34 8005A234 84440006 */ lh $a0, 6($v0) -/* 05AE38 8005A238 84D90006 */ lh $t9, 6($a2) -/* 05AE3C 8005A23C 3098FFFF */ andi $t8, $a0, 0xffff -/* 05AE40 8005A240 03381823 */ subu $v1, $t9, $t8 -/* 05AE44 8005A244 0067082A */ slt $at, $v1, $a3 -/* 05AE48 8005A248 14200003 */ bnez $at, .L8005A258 -/* 05AE4C 8005A24C 28618000 */ slti $at, $v1, -0x8000 -/* 05AE50 8005A250 00681821 */ addu $v1, $v1, $t0 -/* 05AE54 8005A254 28618000 */ slti $at, $v1, -0x8000 -.L8005A258: -/* 05AE58 8005A258 10200002 */ beqz $at, .L8005A264 -/* 05AE5C 8005A25C 00000000 */ nop -/* 05AE60 8005A260 00691821 */ addu $v1, $v1, $t1 -.L8005A264: -/* 05AE64 8005A264 44832000 */ mtc1 $v1, $f4 -/* 05AE68 8005A268 C60C000C */ lwc1 $f12, 0xc($s0) -/* 05AE6C 8005A26C 468021A0 */ cvt.s.w $f6, $f4 -/* 05AE70 8005A270 C60E0010 */ lwc1 $f14, 0x10($s0) -/* 05AE74 8005A274 8E060014 */ lw $a2, 0x14($s0) -/* 05AE78 8005A278 46023202 */ mul.s $f8, $f6, $f2 -/* 05AE7C 8005A27C AE000074 */ sw $zero, 0x74($s0) -/* 05AE80 8005A280 444EF800 */ cfc1 $t6, $31 -/* 05AE84 8005A284 00000000 */ nop -/* 05AE88 8005A288 35C10003 */ ori $at, $t6, 3 -/* 05AE8C 8005A28C 38210002 */ xori $at, $at, 2 -/* 05AE90 8005A290 44C1F800 */ ctc1 $at, $31 -/* 05AE94 8005A294 00000000 */ nop -/* 05AE98 8005A298 460042A4 */ cvt.w.s $f10, $f8 -/* 05AE9C 8005A29C 44185000 */ mfc1 $t8, $f10 -/* 05AEA0 8005A2A0 44CEF800 */ ctc1 $t6, $31 -/* 05AEA4 8005A2A4 00987021 */ addu $t6, $a0, $t8 -/* 05AEA8 8005A2A8 A60E0004 */ sh $t6, 4($s0) -/* 05AEAC 8005A2AC E7A20094 */ swc1 $f2, 0x94($sp) -/* 05AEB0 8005A2B0 0C00A7C6 */ jal func_80029F18 -/* 05AEB4 8005A2B4 AFAD004C */ sw $t5, 0x4c($sp) -/* 05AEB8 8005A2B8 8FAD004C */ lw $t5, 0x4c($sp) -/* 05AEBC 8005A2BC C7A20094 */ lwc1 $f2, 0x94($sp) -/* 05AEC0 8005A2C0 A602002E */ sh $v0, 0x2e($s0) -/* 05AEC4 8005A2C4 8FAF0060 */ lw $t7, 0x60($sp) -/* 05AEC8 8005A2C8 3C01800E */ lui $at, %hi(D_800E693C) # $at, 0x800e -/* 05AECC 8005A2CC 25F90003 */ addiu $t9, $t7, 3 -/* 05AED0 8005A2D0 15B90033 */ bne $t5, $t9, .L8005A3A0 -/* 05AED4 8005A2D4 24020001 */ li $v0, 1 -/* 05AED8 8005A2D8 C42D6938 */ lwc1 $f13, %lo(D_800E6938)($at) -/* 05AEDC 8005A2DC C42C693C */ lwc1 $f12, %lo(D_800E693C)($at) -/* 05AEE0 8005A2E0 46001021 */ cvt.d.s $f0, $f2 -/* 05AEE4 8005A2E4 4620603E */ c.le.d $f12, $f0 -/* 05AEE8 8005A2E8 8E020064 */ lw $v0, 0x64($s0) -/* 05AEEC 8005A2EC 45000003 */ bc1f .L8005A2FC -/* 05AEF0 8005A2F0 3C014058 */ li $at, 0x40580000 # 3.375000 -/* 05AEF4 8005A2F4 10000029 */ b .L8005A39C -/* 05AEF8 8005A2F8 A04001F7 */ sb $zero, 0x1f7($v0) -.L8005A2FC: -/* 05AEFC 8005A2FC 46206401 */ sub.d $f16, $f12, $f0 -/* 05AF00 8005A300 44819800 */ mtc1 $at, $f19 -/* 05AF04 8005A304 44809000 */ mtc1 $zero, $f18 -/* 05AF08 8005A308 240E0001 */ li $t6, 1 -/* 05AF0C 8005A30C 46328102 */ mul.d $f4, $f16, $f18 -/* 05AF10 8005A310 3C0141E0 */ li $at, 0x41E00000 # 28.000000 -/* 05AF14 8005A314 4458F800 */ cfc1 $t8, $31 -/* 05AF18 8005A318 44CEF800 */ ctc1 $t6, $31 -/* 05AF1C 8005A31C 00000000 */ nop -/* 05AF20 8005A320 462021A4 */ cvt.w.d $f6, $f4 -/* 05AF24 8005A324 444EF800 */ cfc1 $t6, $31 -/* 05AF28 8005A328 00000000 */ nop -/* 05AF2C 8005A32C 31CE0078 */ andi $t6, $t6, 0x78 -/* 05AF30 8005A330 11C00013 */ beqz $t6, .L8005A380 -/* 05AF34 8005A334 00000000 */ nop -/* 05AF38 8005A338 44813800 */ mtc1 $at, $f7 -/* 05AF3C 8005A33C 44803000 */ mtc1 $zero, $f6 -/* 05AF40 8005A340 240E0001 */ li $t6, 1 -/* 05AF44 8005A344 46262181 */ sub.d $f6, $f4, $f6 -/* 05AF48 8005A348 3C018000 */ lui $at, 0x8000 -/* 05AF4C 8005A34C 44CEF800 */ ctc1 $t6, $31 -/* 05AF50 8005A350 00000000 */ nop -/* 05AF54 8005A354 462031A4 */ cvt.w.d $f6, $f6 -/* 05AF58 8005A358 444EF800 */ cfc1 $t6, $31 -/* 05AF5C 8005A35C 00000000 */ nop -/* 05AF60 8005A360 31CE0078 */ andi $t6, $t6, 0x78 -/* 05AF64 8005A364 15C00004 */ bnez $t6, .L8005A378 -/* 05AF68 8005A368 00000000 */ nop -/* 05AF6C 8005A36C 440E3000 */ mfc1 $t6, $f6 -/* 05AF70 8005A370 10000007 */ b .L8005A390 -/* 05AF74 8005A374 01C17025 */ or $t6, $t6, $at -.L8005A378: -/* 05AF78 8005A378 10000005 */ b .L8005A390 -/* 05AF7C 8005A37C 240EFFFF */ li $t6, -1 -.L8005A380: -/* 05AF80 8005A380 440E3000 */ mfc1 $t6, $f6 -/* 05AF84 8005A384 00000000 */ nop -/* 05AF88 8005A388 05C0FFFB */ bltz $t6, .L8005A378 -/* 05AF8C 8005A38C 00000000 */ nop -.L8005A390: -/* 05AF90 8005A390 44D8F800 */ ctc1 $t8, $31 -/* 05AF94 8005A394 A04E01F7 */ sb $t6, 0x1f7($v0) -/* 05AF98 8005A398 00000000 */ nop -.L8005A39C: -/* 05AF9C 8005A39C 24020001 */ li $v0, 1 -.L8005A3A0: -/* 05AFA0 8005A3A0 8FBF001C */ lw $ra, 0x1c($sp) -/* 05AFA4 8005A3A4 8FB00018 */ lw $s0, 0x18($sp) -/* 05AFA8 8005A3A8 03E00008 */ jr $ra -/* 05AFAC 8005A3AC 27BD0098 */ addiu $sp, $sp, 0x98 - -glabel func_8005A3B0 -/* 05AFB0 8005A3B0 240E0001 */ li $t6, 1 -/* 05AFB4 8005A3B4 3C018012 */ lui $at, 0x8012 -/* 05AFB8 8005A3B8 03E00008 */ jr $ra -/* 05AFBC 8005A3BC A02ED584 */ sb $t6, -0x2a7c($at) - -glabel func_8005A3C0 -/* 05AFC0 8005A3C0 240E0001 */ li $t6, 1 -/* 05AFC4 8005A3C4 3C018012 */ lui $at, 0x8012 -/* 05AFC8 8005A3C8 03E00008 */ jr $ra -/* 05AFCC 8005A3CC A02ED583 */ sb $t6, -0x2a7d($at) - -glabel func_8005A3D0 -/* 05AFD0 8005A3D0 3C05800E */ lui $a1, %hi(D_800DCB50) # $a1, 0x800e -/* 05AFD4 8005A3D4 8CA5CB50 */ lw $a1, %lo(D_800DCB50)($a1) -/* 05AFD8 8005A3D8 00001025 */ move $v0, $zero -/* 05AFDC 8005A3DC 18A00009 */ blez $a1, .L8005A404 -/* 05AFE0 8005A3E0 00002025 */ move $a0, $zero -/* 05AFE4 8005A3E4 3C038004 */ lui $v1, %hi(func_8003B4BC) # $v1, 0x8004 -/* 05AFE8 8005A3E8 2463B4BC */ addiu $v1, %lo(func_8003B4BC) # addiu $v1, $v1, -0x4b44 -.L8005A3EC: -/* 05AFEC 8005A3EC 00647021 */ addu $t6, $v1, $a0 -/* 05AFF0 8005A3F0 91CF0000 */ lbu $t7, ($t6) -/* 05AFF4 8005A3F4 24840001 */ addiu $a0, $a0, 1 -/* 05AFF8 8005A3F8 0085082A */ slt $at, $a0, $a1 -/* 05AFFC 8005A3FC 1420FFFB */ bnez $at, .L8005A3EC -/* 05B000 8005A400 004F1021 */ addu $v0, $v0, $t7 -.L8005A404: -/* 05B004 8005A404 3C18800E */ lui $t8, %hi(D_800DCDD0) # $t8, 0x800e -/* 05B008 8005A408 8F18CDD0 */ lw $t8, %lo(D_800DCDD0)($t8) -/* 05B00C 8005A40C 24190800 */ li $t9, 2048 -/* 05B010 8005A410 10580002 */ beq $v0, $t8, .L8005A41C -/* 05B014 8005A414 3C01800E */ lui $at, %hi(D_800DCB54) # $at, 0x800e -/* 05B018 8005A418 A439CB54 */ sh $t9, %lo(D_800DCB54)($at) -.L8005A41C: -/* 05B01C 8005A41C 03E00008 */ jr $ra -/* 05B020 8005A420 00000000 */ nop - -glabel func_8005A424 -/* 05B024 8005A424 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 05B028 8005A428 AFBF0014 */ sw $ra, 0x14($sp) -/* 05B02C 8005A42C AFA50024 */ sw $a1, 0x24($sp) -/* 05B030 8005A430 8C8E0108 */ lw $t6, 0x108($a0) -/* 05B034 8005A434 240FFFFF */ li $t7, -1 -/* 05B038 8005A438 8DC70064 */ lw $a3, 0x64($t6) -/* 05B03C 8005A43C A48F0000 */ sh $t7, ($a0) -/* 05B040 8005A440 C4EE0008 */ lwc1 $f14, 8($a3) -/* 05B044 8005A444 C4EC0000 */ lwc1 $f12, ($a3) -/* 05B048 8005A448 AFA40020 */ sw $a0, 0x20($sp) -/* 05B04C 8005A44C 0C01C1D4 */ jal func_80070750 -/* 05B050 8005A450 AFA7001C */ sw $a3, 0x1c($sp) -/* 05B054 8005A454 8FA60020 */ lw $a2, 0x20($sp) -/* 05B058 8005A458 3058FFFF */ andi $t8, $v0, 0xffff -/* 05B05C 8005A45C 84D901A0 */ lh $t9, 0x1a0($a2) -/* 05B060 8005A460 34018001 */ li $at, 32769 -/* 05B064 8005A464 332AFFFF */ andi $t2, $t9, 0xffff -/* 05B068 8005A468 030A1823 */ subu $v1, $t8, $t2 -/* 05B06C 8005A46C 8FA7001C */ lw $a3, 0x1c($sp) -/* 05B070 8005A470 0061082A */ slt $at, $v1, $at -/* 05B074 8005A474 14200004 */ bnez $at, .L8005A488 -/* 05B078 8005A478 2409FFFF */ li $t1, -1 -/* 05B07C 8005A47C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 05B080 8005A480 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 05B084 8005A484 00611821 */ addu $v1, $v1, $at -.L8005A488: -/* 05B088 8005A488 28618000 */ slti $at, $v1, -0x8000 -/* 05B08C 8005A48C 10200003 */ beqz $at, .L8005A49C -/* 05B090 8005A490 3C048012 */ lui $a0, %hi(D_8011D528) # $a0, 0x8012 -/* 05B094 8005A494 3401FFFF */ li $at, 65535 -/* 05B098 8005A498 00611821 */ addu $v1, $v1, $at -.L8005A49C: -/* 05B09C 8005A49C 3C058012 */ lui $a1, %hi(D_8011D534) # $a1, 0x8012 -/* 05B0A0 8005A4A0 00031823 */ negu $v1, $v1 -/* 05B0A4 8005A4A4 24A5D534 */ addiu $a1, %lo(D_8011D534) # addiu $a1, $a1, -0x2acc -/* 05B0A8 8005A4A8 00035943 */ sra $t3, $v1, 5 -/* 05B0AC 8005A4AC ACAB0000 */ sw $t3, ($a1) -/* 05B0B0 8005A4B0 3C018012 */ lui $at, %hi(D_8011D52C) # $at, 0x8012 -/* 05B0B4 8005A4B4 AC20D52C */ sw $zero, %lo(D_8011D52C)($at) -/* 05B0B8 8005A4B8 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 -/* 05B0BC 8005A4BC AC20D530 */ sw $zero, %lo(D_8011D530)($at) -/* 05B0C0 8005A4C0 2484D528 */ addiu $a0, %lo(D_8011D528) # addiu $a0, $a0, -0x2ad8 -/* 05B0C4 8005A4C4 AC800000 */ sw $zero, ($a0) -/* 05B0C8 8005A4C8 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 -/* 05B0CC 8005A4CC AC20D538 */ sw $zero, %lo(D_8011D538)($at) -/* 05B0D0 8005A4D0 C4C4002C */ lwc1 $f4, 0x2c($a2) -/* 05B0D4 8005A4D4 3C01C010 */ li $at, 0xC0100000 # -2.250000 -/* 05B0D8 8005A4D8 44813800 */ mtc1 $at, $f7 -/* 05B0DC 8005A4DC 44803000 */ mtc1 $zero, $f6 -/* 05B0E0 8005A4E0 46002021 */ cvt.d.s $f0, $f4 -/* 05B0E4 8005A4E4 4620303C */ c.lt.d $f6, $f0 -/* 05B0E8 8005A4E8 3C01C014 */ li $at, 0xC0140000 # -2.312500 -/* 05B0EC 8005A4EC 45000006 */ bc1f .L8005A508 -/* 05B0F0 8005A4F0 00000000 */ nop -/* 05B0F4 8005A4F4 8C8C0000 */ lw $t4, ($a0) -/* 05B0F8 8005A4F8 00000000 */ nop -/* 05B0FC 8005A4FC 358D8000 */ ori $t5, $t4, 0x8000 -/* 05B100 8005A500 1000000C */ b .L8005A534 -/* 05B104 8005A504 AC8D0000 */ sw $t5, ($a0) -.L8005A508: -/* 05B108 8005A508 44814800 */ mtc1 $at, $f9 -/* 05B10C 8005A50C 44804000 */ mtc1 $zero, $f8 -/* 05B110 8005A510 00000000 */ nop -/* 05B114 8005A514 4628003C */ c.lt.d $f0, $f8 -/* 05B118 8005A518 00000000 */ nop -/* 05B11C 8005A51C 45000006 */ bc1f .L8005A538 -/* 05B120 8005A520 8FB90024 */ lw $t9, 0x24($sp) -/* 05B124 8005A524 8C8E0000 */ lw $t6, ($a0) -/* 05B128 8005A528 00000000 */ nop -/* 05B12C 8005A52C 35CF4000 */ ori $t7, $t6, 0x4000 -/* 05B130 8005A530 AC8F0000 */ sw $t7, ($a0) -.L8005A534: -/* 05B134 8005A534 8FB90024 */ lw $t9, 0x24($sp) -.L8005A538: -/* 05B138 8005A538 C4E40000 */ lwc1 $f4, ($a3) -/* 05B13C 8005A53C 44995000 */ mtc1 $t9, $f10 -/* 05B140 8005A540 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 -/* 05B144 8005A544 46805020 */ cvt.s.w $f0, $f10 -/* 05B148 8005A548 44811800 */ mtc1 $at, $f3 -/* 05B14C 8005A54C 44801000 */ mtc1 $zero, $f2 -/* 05B150 8005A550 46002182 */ mul.s $f6, $f4, $f0 -/* 05B154 8005A554 3C088012 */ lui $t0, %hi(D_8011D508) # $t0, 0x8012 -/* 05B158 8005A558 2508D508 */ addiu $t0, %lo(D_8011D508) # addiu $t0, $t0, -0x2af8 -/* 05B15C 8005A55C 8D020000 */ lw $v0, ($t0) -/* 05B160 8005A560 46003221 */ cvt.d.s $f8, $f6 -/* 05B164 8005A564 46224282 */ mul.d $f10, $f8, $f2 -/* 05B168 8005A568 C450000C */ lwc1 $f16, 0xc($v0) -/* 05B16C 8005A56C 240CFFB5 */ li $t4, -75 -/* 05B170 8005A570 460084A1 */ cvt.d.s $f18, $f16 -/* 05B174 8005A574 462A9400 */ add.d $f16, $f18, $f10 -/* 05B178 8005A578 46208120 */ cvt.s.d $f4, $f16 -/* 05B17C 8005A57C E444000C */ swc1 $f4, 0xc($v0) -/* 05B180 8005A580 C4F20008 */ lwc1 $f18, 8($a3) -/* 05B184 8005A584 8D020000 */ lw $v0, ($t0) -/* 05B188 8005A588 46009282 */ mul.s $f10, $f18, $f0 -/* 05B18C 8005A58C C4460014 */ lwc1 $f6, 0x14($v0) -/* 05B190 8005A590 46005421 */ cvt.d.s $f16, $f10 -/* 05B194 8005A594 46228102 */ mul.d $f4, $f16, $f2 -/* 05B198 8005A598 46003221 */ cvt.d.s $f8, $f6 -/* 05B19C 8005A59C 46244180 */ add.d $f6, $f8, $f4 -/* 05B1A0 8005A5A0 462034A0 */ cvt.s.d $f18, $f6 -/* 05B1A4 8005A5A4 E4520014 */ swc1 $f18, 0x14($v0) -/* 05B1A8 8005A5A8 8CA30000 */ lw $v1, ($a1) -/* 05B1AC 8005A5AC 00000000 */ nop -/* 05B1B0 8005A5B0 2861004C */ slti $at, $v1, 0x4c -/* 05B1B4 8005A5B4 14200007 */ bnez $at, .L8005A5D4 -/* 05B1B8 8005A5B8 2861FFB5 */ slti $at, $v1, -0x4b -/* 05B1BC 8005A5BC 8C8A0000 */ lw $t2, ($a0) -/* 05B1C0 8005A5C0 2403004B */ li $v1, 75 -/* 05B1C4 8005A5C4 354BC000 */ ori $t3, $t2, 0xc000 -/* 05B1C8 8005A5C8 AC8B0000 */ sw $t3, ($a0) -/* 05B1CC 8005A5CC ACA30000 */ sw $v1, ($a1) -/* 05B1D0 8005A5D0 2861FFB5 */ slti $at, $v1, -0x4b -.L8005A5D4: -/* 05B1D4 8005A5D4 10200005 */ beqz $at, .L8005A5EC -/* 05B1D8 8005A5D8 00000000 */ nop -/* 05B1DC 8005A5DC 8C8D0000 */ lw $t5, ($a0) -/* 05B1E0 8005A5E0 ACAC0000 */ sw $t4, ($a1) -/* 05B1E4 8005A5E4 35AEC000 */ ori $t6, $t5, 0xc000 -/* 05B1E8 8005A5E8 AC8E0000 */ sw $t6, ($a0) -.L8005A5EC: -/* 05B1EC 8005A5EC 80C20200 */ lb $v0, 0x200($a2) -/* 05B1F0 8005A5F0 8FAF0024 */ lw $t7, 0x24($sp) -/* 05B1F4 8005A5F4 2841FFFF */ slti $at, $v0, -1 -/* 05B1F8 8005A5F8 10200009 */ beqz $at, .L8005A620 -/* 05B1FC 8005A5FC 004FC821 */ addu $t9, $v0, $t7 -/* 05B200 8005A600 A0D90200 */ sb $t9, 0x200($a2) -/* 05B204 8005A604 80C20200 */ lb $v0, 0x200($a2) -/* 05B208 8005A608 00000000 */ nop -/* 05B20C 8005A60C 04400005 */ bltz $v0, .L8005A624 -/* 05B210 8005A610 2841FFFF */ slti $at, $v0, -1 -/* 05B214 8005A614 A0C90200 */ sb $t1, 0x200($a2) -/* 05B218 8005A618 80C20200 */ lb $v0, 0x200($a2) -/* 05B21C 8005A61C 00000000 */ nop -.L8005A620: -/* 05B220 8005A620 2841FFFF */ slti $at, $v0, -1 -.L8005A624: -/* 05B224 8005A624 10200008 */ beqz $at, .L8005A648 -/* 05B228 8005A628 00000000 */ nop -/* 05B22C 8005A62C 8CA30000 */ lw $v1, ($a1) -/* 05B230 8005A630 00000000 */ nop -/* 05B234 8005A634 2861000A */ slti $at, $v1, 0xa -/* 05B238 8005A638 10200003 */ beqz $at, .L8005A648 -/* 05B23C 8005A63C 2861FFF7 */ slti $at, $v1, -9 -/* 05B240 8005A640 10200003 */ beqz $at, .L8005A650 -/* 05B244 8005A644 00000000 */ nop -.L8005A648: -/* 05B248 8005A648 15220010 */ bne $t1, $v0, .L8005A68C -/* 05B24C 8005A64C 24040001 */ li $a0, 1 -.L8005A650: -/* 05B250 8005A650 0C019944 */ jal func_80066510 -/* 05B254 8005A654 AFA60020 */ sw $a2, 0x20($sp) -/* 05B258 8005A658 8FA60020 */ lw $a2, 0x20($sp) -/* 05B25C 8005A65C 14400006 */ bnez $v0, .L8005A678 -/* 05B260 8005A660 3C04800E */ lui $a0, %hi(D_800DCDD4) # $a0, 0x800e -/* 05B264 8005A664 2484CDD4 */ addiu $a0, %lo(D_800DCDD4) # addiu $a0, $a0, -0x322c -/* 05B268 8005A668 0C030076 */ jal func_800C01D8 -/* 05B26C 8005A66C AFA60020 */ sw $a2, 0x20($sp) -/* 05B270 8005A670 8FA60020 */ lw $a2, 0x20($sp) -/* 05B274 8005A674 00000000 */ nop -.L8005A678: -/* 05B278 8005A678 8FB80024 */ lw $t8, 0x24($sp) -/* 05B27C 8005A67C 240A003C */ li $t2, 60 -/* 05B280 8005A680 01585823 */ subu $t3, $t2, $t8 -/* 05B284 8005A684 A0CB0200 */ sb $t3, 0x200($a2) -/* 05B288 8005A688 24040001 */ li $a0, 1 -.L8005A68C: -/* 05B28C 8005A68C 0C01BCE2 */ jal func_8006F388 -/* 05B290 8005A690 AFA60020 */ sw $a2, 0x20($sp) -/* 05B294 8005A694 8FA60020 */ lw $a2, 0x20($sp) -/* 05B298 8005A698 8FAC0024 */ lw $t4, 0x24($sp) -/* 05B29C 8005A69C 80C20200 */ lb $v0, 0x200($a2) -/* 05B2A0 8005A6A0 00000000 */ nop -/* 05B2A4 8005A6A4 1840000E */ blez $v0, .L8005A6E0 -/* 05B2A8 8005A6A8 004C6823 */ subu $t5, $v0, $t4 -/* 05B2AC 8005A6AC A0CD0200 */ sb $t5, 0x200($a2) -/* 05B2B0 8005A6B0 80CE0200 */ lb $t6, 0x200($a2) -/* 05B2B4 8005A6B4 00000000 */ nop -/* 05B2B8 8005A6B8 1DC0000A */ bgtz $t6, .L8005A6E4 -/* 05B2BC 8005A6BC 8FBF0014 */ lw $ra, 0x14($sp) -/* 05B2C0 8005A6C0 8CCF0108 */ lw $t7, 0x108($a2) -/* 05B2C4 8005A6C4 00000000 */ nop -/* 05B2C8 8005A6C8 8DE4003C */ lw $a0, 0x3c($t7) -/* 05B2CC 8005A6CC 0C01B65A */ jal func_8006D968 -/* 05B2D0 8005A6D0 AFA60020 */ sw $a2, 0x20($sp) -/* 05B2D4 8005A6D4 8FA60020 */ lw $a2, 0x20($sp) -/* 05B2D8 8005A6D8 00000000 */ nop -/* 05B2DC 8005A6DC A0C00200 */ sb $zero, 0x200($a2) -.L8005A6E0: -/* 05B2E0 8005A6E0 8FBF0014 */ lw $ra, 0x14($sp) -.L8005A6E4: -/* 05B2E4 8005A6E4 27BD0020 */ addiu $sp, $sp, 0x20 -/* 05B2E8 8005A6E8 03E00008 */ jr $ra -/* 05B2EC 8005A6EC 00000000 */ nop - -glabel func_8005A6F0 -/* 05B2F0 8005A6F0 27BDFF60 */ addiu $sp, $sp, -0xa0 -/* 05B2F4 8005A6F4 AFBF002C */ sw $ra, 0x2c($sp) -/* 05B2F8 8005A6F8 AFB00028 */ sw $s0, 0x28($sp) -/* 05B2FC 8005A6FC 240EFFFF */ li $t6, -1 -/* 05B300 8005A700 3C018012 */ lui $at, %hi(D_8011D55C) # $at, 0x8012 -/* 05B304 8005A704 00A08025 */ move $s0, $a1 -/* 05B308 8005A708 AFA400A0 */ sw $a0, 0xa0($sp) -/* 05B30C 8005A70C AFA600A8 */ sw $a2, 0xa8($sp) -/* 05B310 8005A710 AFA700AC */ sw $a3, 0xac($sp) -/* 05B314 8005A714 0C01B683 */ jal func_8006DA0C -/* 05B318 8005A718 AC2ED55C */ sw $t6, %lo(D_8011D55C)($at) -/* 05B31C 8005A71C 0C01AF6C */ jal func_8006BDB0 -/* 05B320 8005A720 AFA20094 */ sw $v0, 0x94($sp) -/* 05B324 8005A724 AFA20070 */ sw $v0, 0x70($sp) -/* 05B328 8005A728 820301F6 */ lb $v1, 0x1f6($s0) -/* 05B32C 8005A72C 3C198012 */ lui $t9, %hi(D_8011D540) # $t9, 0x8012 -/* 05B330 8005A730 18600006 */ blez $v1, .L8005A74C -/* 05B334 8005A734 00000000 */ nop -/* 05B338 8005A738 8FAF00A8 */ lw $t7, 0xa8($sp) -/* 05B33C 8005A73C 00000000 */ nop -/* 05B340 8005A740 006FC023 */ subu $t8, $v1, $t7 -/* 05B344 8005A744 10000002 */ b .L8005A750 -/* 05B348 8005A748 A21801F6 */ sb $t8, 0x1f6($s0) -.L8005A74C: -/* 05B34C 8005A74C A20001F6 */ sb $zero, 0x1f6($s0) -.L8005A750: -/* 05B350 8005A750 8F39D540 */ lw $t9, %lo(D_8011D540)($t9) -/* 05B354 8005A754 00000000 */ nop -/* 05B358 8005A758 13200005 */ beqz $t9, .L8005A770 -/* 05B35C 8005A75C 2404FFC4 */ li $a0, -60 -/* 05B360 8005A760 0C01BE53 */ jal func_8006F94C -/* 05B364 8005A764 2405003C */ li $a1, 60 -/* 05B368 8005A768 244D0078 */ addiu $t5, $v0, 0x78 -/* 05B36C 8005A76C A60D01C6 */ sh $t5, 0x1c6($s0) -.L8005A770: -/* 05B370 8005A770 8602018C */ lh $v0, 0x18c($s0) -/* 05B374 8005A774 00000000 */ nop -/* 05B378 8005A778 18400006 */ blez $v0, .L8005A794 -/* 05B37C 8005A77C 00000000 */ nop -/* 05B380 8005A780 8FAE00A8 */ lw $t6, 0xa8($sp) -/* 05B384 8005A784 00000000 */ nop -/* 05B388 8005A788 004E7823 */ subu $t7, $v0, $t6 -/* 05B38C 8005A78C 10000002 */ b .L8005A798 -/* 05B390 8005A790 A60F018C */ sh $t7, 0x18c($s0) -.L8005A794: -/* 05B394 8005A794 A600018C */ sh $zero, 0x18c($s0) -.L8005A798: -/* 05B398 8005A798 0C0078A7 */ jal func_8001E29C -/* 05B39C 8005A79C 24040009 */ li $a0, 9 -/* 05B3A0 8005A7A0 3C038012 */ lui $v1, %hi(D_8011D564) # $v1, 0x8012 -/* 05B3A4 8005A7A4 2463D564 */ addiu $v1, %lo(D_8011D564) # addiu $v1, $v1, -0x2a9c -/* 05B3A8 8005A7A8 AC620000 */ sw $v0, ($v1) -/* 05B3AC 8005A7AC 82190003 */ lb $t9, 3($s0) -/* 05B3B0 8005A7B0 3C01800E */ lui $at, %hi(D_800E6944) # $at, 0x800e -/* 05B3B4 8005A7B4 00196880 */ sll $t5, $t9, 2 -/* 05B3B8 8005A7B8 004D7021 */ addu $t6, $v0, $t5 -/* 05B3BC 8005A7BC C5C40000 */ lwc1 $f4, ($t6) -/* 05B3C0 8005A7C0 C4296940 */ lwc1 $f9, %lo(D_800E6940)($at) -/* 05B3C4 8005A7C4 C4286944 */ lwc1 $f8, %lo(D_800E6944)($at) -/* 05B3C8 8005A7C8 460021A1 */ cvt.d.s $f6, $f4 -/* 05B3CC 8005A7CC 46283282 */ mul.d $f10, $f6, $f8 -/* 05B3D0 8005A7D0 3C0C8012 */ lui $t4, %hi(D_8011D56C) # $t4, 0x8012 -/* 05B3D4 8005A7D4 258CD56C */ addiu $t4, %lo(D_8011D56C) # addiu $t4, $t4, -0x2a94 -/* 05B3D8 8005A7D8 462054A0 */ cvt.s.d $f18, $f10 -/* 05B3DC 8005A7DC E5920000 */ swc1 $f18, ($t4) -/* 05B3E0 8005A7E0 860F0204 */ lh $t7, 0x204($s0) -/* 05B3E4 8005A7E4 00000000 */ nop -/* 05B3E8 8005A7E8 19E00004 */ blez $t7, .L8005A7FC -/* 05B3EC 8005A7EC 3C01800E */ lui $at, %hi(D_800E6948) # $at, 0x800e -/* 05B3F0 8005A7F0 C4246948 */ lwc1 $f4, %lo(D_800E6948)($at) -/* 05B3F4 8005A7F4 00000000 */ nop -/* 05B3F8 8005A7F8 E5840000 */ swc1 $f4, ($t4) -.L8005A7FC: -/* 05B3FC 8005A7FC 0C0078A7 */ jal func_8001E29C -/* 05B400 8005A800 2404000A */ li $a0, 10 -/* 05B404 8005A804 3C038012 */ lui $v1, %hi(D_8011D564) # $v1, 0x8012 -/* 05B408 8005A808 2463D564 */ addiu $v1, %lo(D_8011D564) # addiu $v1, $v1, -0x2a9c -/* 05B40C 8005A80C AC620000 */ sw $v0, ($v1) -/* 05B410 8005A810 82180003 */ lb $t8, 3($s0) -/* 05B414 8005A814 3C018012 */ lui $at, %hi(D_8011D570) # $at, 0x8012 -/* 05B418 8005A818 00186880 */ sll $t5, $t8, 2 -/* 05B41C 8005A81C 004D7021 */ addu $t6, $v0, $t5 -/* 05B420 8005A820 C5C60000 */ lwc1 $f6, ($t6) -/* 05B424 8005A824 2404000B */ li $a0, 11 -/* 05B428 8005A828 0C0078A7 */ jal func_8001E29C -/* 05B42C 8005A82C E426D570 */ swc1 $f6, %lo(D_8011D570)($at) -/* 05B430 8005A830 3C058012 */ lui $a1, %hi(D_8011D564) # $a1, 0x8012 -/* 05B434 8005A834 24A5D564 */ addiu $a1, %lo(D_8011D564) # addiu $a1, $a1, -0x2a9c -/* 05B438 8005A838 ACA20000 */ sw $v0, ($a1) -/* 05B43C 8005A83C 82180003 */ lb $t8, 3($s0) -/* 05B440 8005A840 8FA400A0 */ lw $a0, 0xa0($sp) -/* 05B444 8005A844 0018C880 */ sll $t9, $t8, 2 -/* 05B448 8005A848 00596821 */ addu $t5, $v0, $t9 -/* 05B44C 8005A84C C5A80000 */ lwc1 $f8, ($t5) -/* 05B450 8005A850 3C018012 */ lui $at, %hi(D_8011D574) # $at, 0x8012 -/* 05B454 8005A854 E428D574 */ swc1 $f8, %lo(D_8011D574)($at) -/* 05B458 8005A858 C48A000C */ lwc1 $f10, 0xc($a0) -/* 05B45C 8005A85C 00000000 */ nop -/* 05B460 8005A860 E7AA008C */ swc1 $f10, 0x8c($sp) -/* 05B464 8005A864 C4920010 */ lwc1 $f18, 0x10($a0) -/* 05B468 8005A868 00000000 */ nop -/* 05B46C 8005A86C E7B20088 */ swc1 $f18, 0x88($sp) -/* 05B470 8005A870 C4840014 */ lwc1 $f4, 0x14($a0) -/* 05B474 8005A874 00000000 */ nop -/* 05B478 8005A878 E7A40084 */ swc1 $f4, 0x84($sp) -/* 05B47C 8005A87C 860301B2 */ lh $v1, 0x1b2($s0) -/* 05B480 8005A880 00000000 */ nop -/* 05B484 8005A884 1860000A */ blez $v1, .L8005A8B0 -/* 05B488 8005A888 00000000 */ nop -/* 05B48C 8005A88C 8FAE00A8 */ lw $t6, 0xa8($sp) -/* 05B490 8005A890 00000000 */ nop -/* 05B494 8005A894 006EC023 */ subu $t8, $v1, $t6 -/* 05B498 8005A898 A61801B2 */ sh $t8, 0x1b2($s0) -/* 05B49C 8005A89C 860F01B2 */ lh $t7, 0x1b2($s0) -/* 05B4A0 8005A8A0 00000000 */ nop -/* 05B4A4 8005A8A4 05E10002 */ bgez $t7, .L8005A8B0 -/* 05B4A8 8005A8A8 00000000 */ nop -/* 05B4AC 8005A8AC A60001B2 */ sh $zero, 0x1b2($s0) -.L8005A8B0: -/* 05B4B0 8005A8B0 821901E7 */ lb $t9, 0x1e7($s0) -/* 05B4B4 8005A8B4 00000000 */ nop -/* 05B4B8 8005A8B8 272D0001 */ addiu $t5, $t9, 1 -/* 05B4BC 8005A8BC 0C008D07 */ jal func_8002341C -/* 05B4C0 8005A8C0 A20D01E7 */ sb $t5, 0x1e7($s0) -/* 05B4C4 8005A8C4 1440001A */ bnez $v0, .L8005A930 -/* 05B4C8 8005A8C8 240E001E */ li $t6, 30 -/* 05B4CC 8005A8CC 0C008D5A */ jal func_80023568 -/* 05B4D0 8005A8D0 00000000 */ nop -/* 05B4D4 8005A8D4 14400016 */ bnez $v0, .L8005A930 -/* 05B4D8 8005A8D8 240E001E */ li $t6, 30 -/* 05B4DC 8005A8DC 820E01D6 */ lb $t6, 0x1d6($s0) -/* 05B4E0 8005A8E0 24010004 */ li $at, 4 -/* 05B4E4 8005A8E4 11C10011 */ beq $t6, $at, .L8005A92C -/* 05B4E8 8005A8E8 3C0142F0 */ li $at, 0x42F00000 # 120.000000 -/* 05B4EC 8005A8EC 44813000 */ mtc1 $at, $f6 -/* 05B4F0 8005A8F0 3C018012 */ lui $at, %hi(D_8011D544) # $at, 0x8012 -/* 05B4F4 8005A8F4 C428D544 */ lwc1 $f8, %lo(D_8011D544)($at) -/* 05B4F8 8005A8F8 3C188012 */ lui $t8, %hi(D_8011D540) # $t8, 0x8012 -/* 05B4FC 8005A8FC 4608303C */ c.lt.s $f6, $f8 -/* 05B500 8005A900 00000000 */ nop -/* 05B504 8005A904 4501000A */ bc1t .L8005A930 -/* 05B508 8005A908 240E001E */ li $t6, 30 -/* 05B50C 8005A90C 8F18D540 */ lw $t8, %lo(D_8011D540)($t8) -/* 05B510 8005A910 8FAF0070 */ lw $t7, 0x70($sp) -/* 05B514 8005A914 17000006 */ bnez $t8, .L8005A930 -/* 05B518 8005A918 240E001E */ li $t6, 30 -/* 05B51C 8005A91C 81F9004C */ lb $t9, 0x4c($t7) -/* 05B520 8005A920 00000000 */ nop -/* 05B524 8005A924 332D0040 */ andi $t5, $t9, 0x40 -/* 05B528 8005A928 11A00002 */ beqz $t5, .L8005A934 -.L8005A92C: -/* 05B52C 8005A92C 240E001E */ li $t6, 30 -.L8005A930: -/* 05B530 8005A930 A20E0201 */ sb $t6, 0x201($s0) -.L8005A934: -/* 05B534 8005A934 82180201 */ lb $t8, 0x201($s0) -/* 05B538 8005A938 3C01800E */ lui $at, %hi(D_800E694C) # $at, 0x800e -/* 05B53C 8005A93C C422694C */ lwc1 $f2, %lo(D_800E694C)($at) -/* 05B540 8005A940 1700007C */ bnez $t8, .L8005AB34 -/* 05B544 8005A944 27A40090 */ addiu $a0, $sp, 0x90 -/* 05B548 8005A948 0C006E9D */ jal func_8001BA74 -/* 05B54C 8005A94C E7A20078 */ swc1 $f2, 0x78($sp) -/* 05B550 8005A950 8FAF0090 */ lw $t7, 0x90($sp) -/* 05B554 8005A954 C7A20078 */ lwc1 $f2, 0x78($sp) -/* 05B558 8005A958 00004025 */ move $t0, $zero -/* 05B55C 8005A95C 00003825 */ move $a3, $zero -/* 05B560 8005A960 19E00055 */ blez $t7, .L8005AAB8 -/* 05B564 8005A964 00005025 */ move $t2, $zero -/* 05B568 8005A968 31E30003 */ andi $v1, $t7, 3 -/* 05B56C 8005A96C 10600018 */ beqz $v1, .L8005A9D0 -/* 05B570 8005A970 00604825 */ move $t1, $v1 -/* 05B574 8005A974 0000C880 */ sll $t9, $zero, 2 -/* 05B578 8005A978 00593021 */ addu $a2, $v0, $t9 -/* 05B57C 8005A97C 240B0001 */ li $t3, 1 -.L8005A980: -/* 05B580 8005A980 8CC40000 */ lw $a0, ($a2) -/* 05B584 8005A984 254A0001 */ addiu $t2, $t2, 1 -/* 05B588 8005A988 8C850064 */ lw $a1, 0x64($a0) -/* 05B58C 8005A98C 00000000 */ nop -/* 05B590 8005A990 84AD0000 */ lh $t5, ($a1) -/* 05B594 8005A994 00000000 */ nop -/* 05B598 8005A998 15A00002 */ bnez $t5, .L8005A9A4 -/* 05B59C 8005A99C 00000000 */ nop -/* 05B5A0 8005A9A0 00803825 */ move $a3, $a0 -.L8005A9A4: -/* 05B5A4 8005A9A4 84AE0000 */ lh $t6, ($a1) -/* 05B5A8 8005A9A8 00000000 */ nop -/* 05B5AC 8005A9AC 156E0002 */ bne $t3, $t6, .L8005A9B8 -/* 05B5B0 8005A9B0 00000000 */ nop -/* 05B5B4 8005A9B4 00804025 */ move $t0, $a0 -.L8005A9B8: -/* 05B5B8 8005A9B8 152AFFF1 */ bne $t1, $t2, .L8005A980 -/* 05B5BC 8005A9BC 24C60004 */ addiu $a2, $a2, 4 -/* 05B5C0 8005A9C0 8FB80090 */ lw $t8, 0x90($sp) -/* 05B5C4 8005A9C4 00000000 */ nop -/* 05B5C8 8005A9C8 1158003B */ beq $t2, $t8, .L8005AAB8 -/* 05B5CC 8005A9CC 00000000 */ nop -.L8005A9D0: -/* 05B5D0 8005A9D0 8FAF0090 */ lw $t7, 0x90($sp) -/* 05B5D4 8005A9D4 000A6880 */ sll $t5, $t2, 2 -/* 05B5D8 8005A9D8 000FC880 */ sll $t9, $t7, 2 -/* 05B5DC 8005A9DC 03224821 */ addu $t1, $t9, $v0 -/* 05B5E0 8005A9E0 004D3021 */ addu $a2, $v0, $t5 -/* 05B5E4 8005A9E4 240B0001 */ li $t3, 1 -.L8005A9E8: -/* 05B5E8 8005A9E8 8CC40000 */ lw $a0, ($a2) -/* 05B5EC 8005A9EC 00000000 */ nop -/* 05B5F0 8005A9F0 8C850064 */ lw $a1, 0x64($a0) -/* 05B5F4 8005A9F4 00000000 */ nop -/* 05B5F8 8005A9F8 84AE0000 */ lh $t6, ($a1) -/* 05B5FC 8005A9FC 00000000 */ nop -/* 05B600 8005AA00 15C00002 */ bnez $t6, .L8005AA0C -/* 05B604 8005AA04 00000000 */ nop -/* 05B608 8005AA08 00803825 */ move $a3, $a0 -.L8005AA0C: -/* 05B60C 8005AA0C 84B80000 */ lh $t8, ($a1) -/* 05B610 8005AA10 00000000 */ nop -/* 05B614 8005AA14 15780002 */ bne $t3, $t8, .L8005AA20 -/* 05B618 8005AA18 00000000 */ nop -/* 05B61C 8005AA1C 00804025 */ move $t0, $a0 -.L8005AA20: -/* 05B620 8005AA20 8CC50004 */ lw $a1, 4($a2) -/* 05B624 8005AA24 00000000 */ nop -/* 05B628 8005AA28 8CA30064 */ lw $v1, 0x64($a1) -/* 05B62C 8005AA2C 00000000 */ nop -/* 05B630 8005AA30 84640000 */ lh $a0, ($v1) -/* 05B634 8005AA34 00000000 */ nop -/* 05B638 8005AA38 14800002 */ bnez $a0, .L8005AA44 -/* 05B63C 8005AA3C 00000000 */ nop -/* 05B640 8005AA40 00A03825 */ move $a3, $a1 -.L8005AA44: -/* 05B644 8005AA44 15640002 */ bne $t3, $a0, .L8005AA50 -/* 05B648 8005AA48 00000000 */ nop -/* 05B64C 8005AA4C 00A04025 */ move $t0, $a1 -.L8005AA50: -/* 05B650 8005AA50 8CC50008 */ lw $a1, 8($a2) -/* 05B654 8005AA54 00000000 */ nop -/* 05B658 8005AA58 8CA30064 */ lw $v1, 0x64($a1) -/* 05B65C 8005AA5C 00000000 */ nop -/* 05B660 8005AA60 84640000 */ lh $a0, ($v1) -/* 05B664 8005AA64 00000000 */ nop -/* 05B668 8005AA68 14800002 */ bnez $a0, .L8005AA74 -/* 05B66C 8005AA6C 00000000 */ nop -/* 05B670 8005AA70 00A03825 */ move $a3, $a1 -.L8005AA74: -/* 05B674 8005AA74 15640002 */ bne $t3, $a0, .L8005AA80 -/* 05B678 8005AA78 00000000 */ nop -/* 05B67C 8005AA7C 00A04025 */ move $t0, $a1 -.L8005AA80: -/* 05B680 8005AA80 8CC5000C */ lw $a1, 0xc($a2) -/* 05B684 8005AA84 24C60010 */ addiu $a2, $a2, 0x10 -/* 05B688 8005AA88 8CA30064 */ lw $v1, 0x64($a1) -/* 05B68C 8005AA8C 00000000 */ nop -/* 05B690 8005AA90 84640000 */ lh $a0, ($v1) -/* 05B694 8005AA94 00000000 */ nop -/* 05B698 8005AA98 14800002 */ bnez $a0, .L8005AAA4 -/* 05B69C 8005AA9C 00000000 */ nop -/* 05B6A0 8005AAA0 00A03825 */ move $a3, $a1 -.L8005AAA4: -/* 05B6A4 8005AAA4 15640002 */ bne $t3, $a0, .L8005AAB0 -/* 05B6A8 8005AAA8 00000000 */ nop -/* 05B6AC 8005AAAC 00A04025 */ move $t0, $a1 -.L8005AAB0: -/* 05B6B0 8005AAB0 14C9FFCD */ bne $a2, $t1, .L8005A9E8 -/* 05B6B4 8005AAB4 00000000 */ nop -.L8005AAB8: -/* 05B6B8 8005AAB8 10E0000B */ beqz $a3, .L8005AAE8 -/* 05B6BC 8005AABC 3C01800E */ lui $at, %hi(D_800E6954) # $at, 0x800e -/* 05B6C0 8005AAC0 8FA400A0 */ lw $a0, 0xa0($sp) -/* 05B6C4 8005AAC4 C4EA000C */ lwc1 $f10, 0xc($a3) -/* 05B6C8 8005AAC8 C492000C */ lwc1 $f18, 0xc($a0) -/* 05B6CC 8005AACC C4E40014 */ lwc1 $f4, 0x14($a3) -/* 05B6D0 8005AAD0 46125081 */ sub.s $f2, $f10, $f18 -/* 05B6D4 8005AAD4 C4860014 */ lwc1 $f6, 0x14($a0) -/* 05B6D8 8005AAD8 46021202 */ mul.s $f8, $f2, $f2 -/* 05B6DC 8005AADC 46062001 */ sub.s $f0, $f4, $f6 -/* 05B6E0 8005AAE0 46000282 */ mul.s $f10, $f0, $f0 -/* 05B6E4 8005AAE4 460A4080 */ add.s $f2, $f8, $f10 -.L8005AAE8: -/* 05B6E8 8005AAE8 8FA400A0 */ lw $a0, 0xa0($sp) -/* 05B6EC 8005AAEC 11000011 */ beqz $t0, .L8005AB34 -/* 05B6F0 8005AAF0 00000000 */ nop -/* 05B6F4 8005AAF4 C4256950 */ lwc1 $f5, %lo(D_800E6950)($at) -/* 05B6F8 8005AAF8 C4246954 */ lwc1 $f4, %lo(D_800E6954)($at) -/* 05B6FC 8005AAFC 460014A1 */ cvt.d.s $f18, $f2 -/* 05B700 8005AB00 4632203E */ c.le.d $f4, $f18 -/* 05B704 8005AB04 00000000 */ nop -/* 05B708 8005AB08 4500000A */ bc1f .L8005AB34 -/* 05B70C 8005AB0C 00000000 */ nop -/* 05B710 8005AB10 C506000C */ lwc1 $f6, 0xc($t0) -/* 05B714 8005AB14 C488000C */ lwc1 $f8, 0xc($a0) -/* 05B718 8005AB18 C50A0014 */ lwc1 $f10, 0x14($t0) -/* 05B71C 8005AB1C 46083081 */ sub.s $f2, $f6, $f8 -/* 05B720 8005AB20 C4920014 */ lwc1 $f18, 0x14($a0) -/* 05B724 8005AB24 46021102 */ mul.s $f4, $f2, $f2 -/* 05B728 8005AB28 46125001 */ sub.s $f0, $f10, $f18 -/* 05B72C 8005AB2C 46000182 */ mul.s $f6, $f0, $f0 -/* 05B730 8005AB30 46062080 */ add.s $f2, $f4, $f6 -.L8005AB34: -/* 05B734 8005AB34 86020204 */ lh $v0, 0x204($s0) -/* 05B738 8005AB38 8FA400A0 */ lw $a0, 0xa0($sp) -/* 05B73C 8005AB3C 1840000A */ blez $v0, .L8005AB68 -/* 05B740 8005AB40 00000000 */ nop -/* 05B744 8005AB44 8FA600A8 */ lw $a2, 0xa8($sp) -/* 05B748 8005AB48 3C01800E */ lui $at, %hi(D_800E6958) # $at, 0x800e -/* 05B74C 8005AB4C 00467823 */ subu $t7, $v0, $a2 -/* 05B750 8005AB50 A60F0204 */ sh $t7, 0x204($s0) -/* 05B754 8005AB54 C42A6958 */ lwc1 $f10, %lo(D_800E6958)($at) -/* 05B758 8005AB58 C608002C */ lwc1 $f8, 0x2c($s0) -/* 05B75C 8005AB5C 00000000 */ nop -/* 05B760 8005AB60 460A4482 */ mul.s $f18, $f8, $f10 -/* 05B764 8005AB64 E612002C */ swc1 $f18, 0x2c($s0) -.L8005AB68: -/* 05B768 8005AB68 86020206 */ lh $v0, 0x206($s0) -/* 05B76C 8005AB6C 8FA600A8 */ lw $a2, 0xa8($sp) -/* 05B770 8005AB70 18400003 */ blez $v0, .L8005AB80 -/* 05B774 8005AB74 0046C823 */ subu $t9, $v0, $a2 -/* 05B778 8005AB78 A602018A */ sh $v0, 0x18a($s0) -/* 05B77C 8005AB7C A6190206 */ sh $t9, 0x206($s0) -.L8005AB80: -/* 05B780 8005AB80 82020201 */ lb $v0, 0x201($s0) -/* 05B784 8005AB84 00000000 */ nop -/* 05B788 8005AB88 1440000B */ bnez $v0, .L8005ABB8 -/* 05B78C 8005AB8C 3C01800E */ lui $at, %hi(D_800E6964) # $at, 0x800e -/* 05B790 8005AB90 C4276960 */ lwc1 $f7, %lo(D_800E6960)($at) -/* 05B794 8005AB94 C4266964 */ lwc1 $f6, %lo(D_800E6964)($at) -/* 05B798 8005AB98 46001121 */ cvt.d.s $f4, $f2 -/* 05B79C 8005AB9C 4626203C */ c.lt.d $f4, $f6 -/* 05B7A0 8005ABA0 240D001E */ li $t5, 30 -/* 05B7A4 8005ABA4 45000004 */ bc1f .L8005ABB8 -/* 05B7A8 8005ABA8 00000000 */ nop -/* 05B7AC 8005ABAC A20D0201 */ sb $t5, 0x201($s0) -/* 05B7B0 8005ABB0 82020201 */ lb $v0, 0x201($s0) -/* 05B7B4 8005ABB4 00000000 */ nop -.L8005ABB8: -/* 05B7B8 8005ABB8 10400218 */ beqz $v0, .L8005B41C -/* 05B7BC 8005ABBC 8FA700AC */ lw $a3, 0xac($sp) -/* 05B7C0 8005ABC0 0C01105C */ jal func_80044170 -/* 05B7C4 8005ABC4 02002825 */ move $a1, $s0 -/* 05B7C8 8005ABC8 3C0E8012 */ lui $t6, %hi(D_8011D528) # $t6, 0x8012 -/* 05B7CC 8005ABCC 8DCED528 */ lw $t6, %lo(D_8011D528)($t6) -/* 05B7D0 8005ABD0 3C0C8012 */ lui $t4, %hi(D_8011D56C) # $t4, 0x8012 -/* 05B7D4 8005ABD4 31D88000 */ andi $t8, $t6, 0x8000 -/* 05B7D8 8005ABD8 258CD56C */ addiu $t4, %lo(D_8011D56C) # addiu $t4, $t4, -0x2a94 -/* 05B7DC 8005ABDC 17000003 */ bnez $t8, .L8005ABEC -/* 05B7E0 8005ABE0 240B0001 */ li $t3, 1 -/* 05B7E4 8005ABE4 240F0001 */ li $t7, 1 -/* 05B7E8 8005ABE8 A20F020C */ sb $t7, 0x20c($s0) -.L8005ABEC: -/* 05B7EC 8005ABEC 920201FE */ lbu $v0, 0x1fe($s0) -/* 05B7F0 8005ABF0 24010003 */ li $at, 3 -/* 05B7F4 8005ABF4 14410011 */ bne $v0, $at, .L8005AC3C -/* 05B7F8 8005ABF8 00000000 */ nop -/* 05B7FC 8005ABFC 921901FF */ lbu $t9, 0x1ff($s0) -/* 05B800 8005AC00 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 05B804 8005AC04 44994000 */ mtc1 $t9, $f8 -/* 05B808 8005AC08 07210004 */ bgez $t9, .L8005AC1C -/* 05B80C 8005AC0C 468042A0 */ cvt.s.w $f10, $f8 -/* 05B810 8005AC10 44819000 */ mtc1 $at, $f18 -/* 05B814 8005AC14 00000000 */ nop -/* 05B818 8005AC18 46125280 */ add.s $f10, $f10, $f18 -.L8005AC1C: -/* 05B81C 8005AC1C 3C014380 */ li $at, 0x43800000 # 256.000000 -/* 05B820 8005AC20 44812000 */ mtc1 $at, $f4 -/* 05B824 8005AC24 C5880000 */ lwc1 $f8, ($t4) -/* 05B828 8005AC28 46045183 */ div.s $f6, $f10, $f4 -/* 05B82C 8005AC2C 46064482 */ mul.s $f18, $f8, $f6 -/* 05B830 8005AC30 E5920000 */ swc1 $f18, ($t4) -/* 05B834 8005AC34 920201FE */ lbu $v0, 0x1fe($s0) -/* 05B838 8005AC38 00000000 */ nop -.L8005AC3C: -/* 05B83C 8005AC3C 1562001E */ bne $t3, $v0, .L8005ACB8 -/* 05B840 8005AC40 24010002 */ li $at, 2 -/* 05B844 8005AC44 920D01FF */ lbu $t5, 0x1ff($s0) -/* 05B848 8005AC48 C5800000 */ lwc1 $f0, ($t4) -/* 05B84C 8005AC4C 448D5000 */ mtc1 $t5, $f10 -/* 05B850 8005AC50 05A10005 */ bgez $t5, .L8005AC68 -/* 05B854 8005AC54 46805120 */ cvt.s.w $f4, $f10 -/* 05B858 8005AC58 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 05B85C 8005AC5C 44814000 */ mtc1 $at, $f8 -/* 05B860 8005AC60 00000000 */ nop -/* 05B864 8005AC64 46082100 */ add.s $f4, $f4, $f8 -.L8005AC68: -/* 05B868 8005AC68 46040182 */ mul.s $f6, $f0, $f4 -/* 05B86C 8005AC6C 3C014300 */ li $at, 0x43000000 # 128.000000 -/* 05B870 8005AC70 44819000 */ mtc1 $at, $f18 -/* 05B874 8005AC74 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 -/* 05B878 8005AC78 46123283 */ div.s $f10, $f6, $f18 -/* 05B87C 8005AC7C 2418003C */ li $t8, 60 -/* 05B880 8005AC80 460A0201 */ sub.s $f8, $f0, $f10 -/* 05B884 8005AC84 E5880000 */ swc1 $f8, ($t4) -/* 05B888 8005AC88 860E0204 */ lh $t6, 0x204($s0) -/* 05B88C 8005AC8C 00000000 */ nop -/* 05B890 8005AC90 19C00005 */ blez $t6, .L8005ACA8 -/* 05B894 8005AC94 00000000 */ nop -/* 05B898 8005AC98 C5840000 */ lwc1 $f4, ($t4) -/* 05B89C 8005AC9C 00000000 */ nop -/* 05B8A0 8005ACA0 46002187 */ neg.s $f6, $f4 -/* 05B8A4 8005ACA4 E5860000 */ swc1 $f6, ($t4) -.L8005ACA8: -/* 05B8A8 8005ACA8 AC38D538 */ sw $t8, %lo(D_8011D538)($at) -/* 05B8AC 8005ACAC 920201FE */ lbu $v0, 0x1fe($s0) -/* 05B8B0 8005ACB0 00000000 */ nop -/* 05B8B4 8005ACB4 24010002 */ li $at, 2 -.L8005ACB8: -/* 05B8B8 8005ACB8 1441002F */ bne $v0, $at, .L8005AD78 -/* 05B8BC 8005ACBC 00000000 */ nop -/* 05B8C0 8005ACC0 920F01FF */ lbu $t7, 0x1ff($s0) -/* 05B8C4 8005ACC4 00000000 */ nop -/* 05B8C8 8005ACC8 000FCE00 */ sll $t9, $t7, 0x18 -/* 05B8CC 8005ACCC 0C01C1F1 */ jal func_800707C4 -/* 05B8D0 8005ACD0 00192403 */ sra $a0, $t9, 0x10 -/* 05B8D4 8005ACD4 3C013FB0 */ li $at, 0x3FB00000 # 1.375000 -/* 05B8D8 8005ACD8 44817800 */ mtc1 $at, $f15 -/* 05B8DC 8005ACDC 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 05B8E0 8005ACE0 44814000 */ mtc1 $at, $f8 -/* 05B8E4 8005ACE4 C6020084 */ lwc1 $f2, 0x84($s0) -/* 05B8E8 8005ACE8 46080102 */ mul.s $f4, $f0, $f8 -/* 05B8EC 8005ACEC C7B200AC */ lwc1 $f18, 0xac($sp) -/* 05B8F0 8005ACF0 44807000 */ mtc1 $zero, $f14 -/* 05B8F4 8005ACF4 920E01FF */ lbu $t6, 0x1ff($s0) -/* 05B8F8 8005ACF8 46022181 */ sub.s $f6, $f4, $f2 -/* 05B8FC 8005ACFC 000EC600 */ sll $t8, $t6, 0x18 -/* 05B900 8005AD00 46009321 */ cvt.d.s $f12, $f18 -/* 05B904 8005AD04 460034A1 */ cvt.d.s $f18, $f6 -/* 05B908 8005AD08 462E9202 */ mul.d $f8, $f18, $f14 -/* 05B90C 8005AD0C 460012A1 */ cvt.d.s $f10, $f2 -/* 05B910 8005AD10 00182403 */ sra $a0, $t8, 0x10 -/* 05B914 8005AD14 462C4102 */ mul.d $f4, $f8, $f12 -/* 05B918 8005AD18 46245180 */ add.d $f6, $f10, $f4 -/* 05B91C 8005AD1C 462034A0 */ cvt.s.d $f18, $f6 -/* 05B920 8005AD20 E6120084 */ swc1 $f18, 0x84($s0) -/* 05B924 8005AD24 E7AC0044 */ swc1 $f12, 0x44($sp) -/* 05B928 8005AD28 0C01C1FE */ jal func_800707F8 -/* 05B92C 8005AD2C E7AD0040 */ swc1 $f13, 0x40($sp) -/* 05B930 8005AD30 3C013FB0 */ li $at, 0x3FB00000 # 1.375000 -/* 05B934 8005AD34 44817800 */ mtc1 $at, $f15 -/* 05B938 8005AD38 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 05B93C 8005AD3C 44815000 */ mtc1 $at, $f10 -/* 05B940 8005AD40 C6020088 */ lwc1 $f2, 0x88($s0) -/* 05B944 8005AD44 460A0102 */ mul.s $f4, $f0, $f10 -/* 05B948 8005AD48 44807000 */ mtc1 $zero, $f14 -/* 05B94C 8005AD4C C7AD0040 */ lwc1 $f13, 0x40($sp) -/* 05B950 8005AD50 C7AC0044 */ lwc1 $f12, 0x44($sp) -/* 05B954 8005AD54 46022181 */ sub.s $f6, $f4, $f2 -/* 05B958 8005AD58 460034A1 */ cvt.d.s $f18, $f6 -/* 05B95C 8005AD5C 462E9282 */ mul.d $f10, $f18, $f14 -/* 05B960 8005AD60 46001221 */ cvt.d.s $f8, $f2 -/* 05B964 8005AD64 462C5102 */ mul.d $f4, $f10, $f12 -/* 05B968 8005AD68 46244180 */ add.d $f6, $f8, $f4 -/* 05B96C 8005AD6C 462034A0 */ cvt.s.d $f18, $f6 -/* 05B970 8005AD70 10000015 */ b .L8005ADC8 -/* 05B974 8005AD74 E6120088 */ swc1 $f18, 0x88($s0) -.L8005AD78: -/* 05B978 8005AD78 C60A0084 */ lwc1 $f10, 0x84($s0) -/* 05B97C 8005AD7C 3C013FB0 */ li $at, 0x3FB00000 # 1.375000 -/* 05B980 8005AD80 44817800 */ mtc1 $at, $f15 -/* 05B984 8005AD84 44807000 */ mtc1 $zero, $f14 -/* 05B988 8005AD88 46005021 */ cvt.d.s $f0, $f10 -/* 05B98C 8005AD8C 462E0102 */ mul.d $f4, $f0, $f14 -/* 05B990 8005AD90 C7A800AC */ lwc1 $f8, 0xac($sp) -/* 05B994 8005AD94 00000000 */ nop -/* 05B998 8005AD98 46004321 */ cvt.d.s $f12, $f8 -/* 05B99C 8005AD9C C6080088 */ lwc1 $f8, 0x88($s0) -/* 05B9A0 8005ADA0 462C2182 */ mul.d $f6, $f4, $f12 -/* 05B9A4 8005ADA4 460040A1 */ cvt.d.s $f2, $f8 -/* 05B9A8 8005ADA8 462E1102 */ mul.d $f4, $f2, $f14 -/* 05B9AC 8005ADAC 46260481 */ sub.d $f18, $f0, $f6 -/* 05B9B0 8005ADB0 462C2182 */ mul.d $f6, $f4, $f12 -/* 05B9B4 8005ADB4 462092A0 */ cvt.s.d $f10, $f18 -/* 05B9B8 8005ADB8 E60A0084 */ swc1 $f10, 0x84($s0) -/* 05B9BC 8005ADBC 46261481 */ sub.d $f18, $f2, $f6 -/* 05B9C0 8005ADC0 462092A0 */ cvt.s.d $f10, $f18 -/* 05B9C4 8005ADC4 E60A0088 */ swc1 $f10, 0x88($s0) -.L8005ADC8: -/* 05B9C8 8005ADC8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 05B9CC 8005ADCC 44814000 */ mtc1 $at, $f8 -/* 05B9D0 8005ADD0 3C018012 */ lui $at, %hi(D_8011D570) # $at, 0x8012 -/* 05B9D4 8005ADD4 24040021 */ li $a0, 33 -/* 05B9D8 8005ADD8 0C0078A7 */ jal func_8001E29C -/* 05B9DC 8005ADDC E428D570 */ swc1 $f8, %lo(D_8011D570)($at) -/* 05B9E0 8005ADE0 8FB900A0 */ lw $t9, 0xa0($sp) -/* 05B9E4 8005ADE4 3C018012 */ lui $at, %hi(D_8011D564) # $at, 0x8012 -/* 05B9E8 8005ADE8 AC22D564 */ sw $v0, %lo(D_8011D564)($at) -/* 05B9EC 8005ADEC 8F2D0040 */ lw $t5, 0x40($t9) -/* 05B9F0 8005ADF0 00000000 */ nop -/* 05B9F4 8005ADF4 91A4005D */ lbu $a0, 0x5d($t5) -/* 05B9F8 8005ADF8 0C0078A7 */ jal func_8001E29C -/* 05B9FC 8005ADFC 00000000 */ nop -/* 05BA00 8005AE00 3C018012 */ lui $at, %hi(D_8011D568) # $at, 0x8012 -/* 05BA04 8005AE04 8FAE00A0 */ lw $t6, 0xa0($sp) -/* 05BA08 8005AE08 AC22D568 */ sw $v0, %lo(D_8011D568)($at) -/* 05BA0C 8005AE0C C5C40020 */ lwc1 $f4, 0x20($t6) -/* 05BA10 8005AE10 3C014010 */ li $at, 0x40100000 # 2.250000 -/* 05BA14 8005AE14 44819800 */ mtc1 $at, $f19 -/* 05BA18 8005AE18 44809000 */ mtc1 $zero, $f18 -/* 05BA1C 8005AE1C 460021A1 */ cvt.d.s $f6, $f4 -/* 05BA20 8005AE20 4632303C */ c.lt.d $f6, $f18 -/* 05BA24 8005AE24 240B0001 */ li $t3, 1 -/* 05BA28 8005AE28 4500000F */ bc1f .L8005AE68 -/* 05BA2C 8005AE2C 00000000 */ nop -/* 05BA30 8005AE30 821801E2 */ lb $t8, 0x1e2($s0) -/* 05BA34 8005AE34 00000000 */ nop -/* 05BA38 8005AE38 2B010003 */ slti $at, $t8, 3 -/* 05BA3C 8005AE3C 10200009 */ beqz $at, .L8005AE64 -/* 05BA40 8005AE40 00000000 */ nop -/* 05BA44 8005AE44 C60800C0 */ lwc1 $f8, 0xc0($s0) -/* 05BA48 8005AE48 44805800 */ mtc1 $zero, $f11 -/* 05BA4C 8005AE4C 44805000 */ mtc1 $zero, $f10 -/* 05BA50 8005AE50 46004121 */ cvt.d.s $f4, $f8 -/* 05BA54 8005AE54 46245032 */ c.eq.d $f10, $f4 -/* 05BA58 8005AE58 00000000 */ nop -/* 05BA5C 8005AE5C 45010002 */ bc1t .L8005AE68 -/* 05BA60 8005AE60 00000000 */ nop -.L8005AE64: -/* 05BA64 8005AE64 A20001F1 */ sb $zero, 0x1f1($s0) -.L8005AE68: -/* 05BA68 8005AE68 820F0175 */ lb $t7, 0x175($s0) -/* 05BA6C 8005AE6C 00000000 */ nop -/* 05BA70 8005AE70 11E00006 */ beqz $t7, .L8005AE8C -/* 05BA74 8005AE74 00000000 */ nop -/* 05BA78 8005AE78 8FA400A0 */ lw $a0, 0xa0($sp) -/* 05BA7C 8005AE7C 8FA600A8 */ lw $a2, 0xa8($sp) -/* 05BA80 8005AE80 0C015B8B */ jal func_80056E2C -/* 05BA84 8005AE84 02002825 */ move $a1, $s0 -/* 05BA88 8005AE88 240B0001 */ li $t3, 1 -.L8005AE8C: -/* 05BA8C 8005AE8C 821901D6 */ lb $t9, 0x1d6($s0) -/* 05BA90 8005AE90 00000000 */ nop -/* 05BA94 8005AE94 11790008 */ beq $t3, $t9, .L8005AEB8 -/* 05BA98 8005AE98 8FAD00A0 */ lw $t5, 0xa0($sp) -/* 05BA9C 8005AE9C 44803000 */ mtc1 $zero, $f6 -/* 05BAA0 8005AEA0 A20001E5 */ sb $zero, 0x1e5($s0) -/* 05BAA4 8005AEA4 3C018012 */ lui $at, %hi(D_8011D5AE) # $at, 0x8012 -/* 05BAA8 8005AEA8 E60600C0 */ swc1 $f6, 0xc0($s0) -/* 05BAAC 8005AEAC 1000000A */ b .L8005AED8 -/* 05BAB0 8005AEB0 A020D5AE */ sb $zero, %lo(D_8011D5AE)($at) -/* 05BAB4 8005AEB4 8FAD00A0 */ lw $t5, 0xa0($sp) -.L8005AEB8: -/* 05BAB8 8005AEB8 3C078012 */ lui $a3, %hi(D_8011D5B0) # $a3, 0x8012 -/* 05BABC 8005AEBC 85A4002E */ lh $a0, 0x2e($t5) -/* 05BAC0 8005AEC0 8DA5000C */ lw $a1, 0xc($t5) -/* 05BAC4 8005AEC4 8DA60014 */ lw $a2, 0x14($t5) -/* 05BAC8 8005AEC8 0C00AC3D */ jal func_8002B0F4 -/* 05BACC 8005AECC 24E7D5B0 */ addiu $a3, %lo(D_8011D5B0) # addiu $a3, $a3, -0x2a50 -/* 05BAD0 8005AED0 3C018012 */ lui $at, %hi(D_8011D5AE) # $at, 0x8012 -/* 05BAD4 8005AED4 A022D5AE */ sb $v0, %lo(D_8011D5AE)($at) -.L8005AED8: -/* 05BAD8 8005AED8 0C00AB32 */ jal func_8002ACC8 -/* 05BADC 8005AEDC 00002025 */ move $a0, $zero -/* 05BAE0 8005AEE0 8E0E0148 */ lw $t6, 0x148($s0) -/* 05BAE4 8005AEE4 240B0001 */ li $t3, 1 -/* 05BAE8 8005AEE8 15C00009 */ bnez $t6, .L8005AF10 -/* 05BAEC 8005AEEC 3C088012 */ lui $t0, %hi(D_8011D540) # $t0, 0x8012 -/* 05BAF0 8005AEF0 2508D540 */ addiu $t0, %lo(D_8011D540) # addiu $t0, $t0, -0x2ac0 -/* 05BAF4 8005AEF4 8D180000 */ lw $t8, ($t0) -/* 05BAF8 8005AEF8 00000000 */ nop -/* 05BAFC 8005AEFC 17000004 */ bnez $t8, .L8005AF10 -/* 05BB00 8005AF00 00000000 */ nop -/* 05BB04 8005AF04 860F0204 */ lh $t7, 0x204($s0) -/* 05BB08 8005AF08 00000000 */ nop -/* 05BB0C 8005AF0C 19E0000E */ blez $t7, .L8005AF48 -.L8005AF10: -/* 05BB10 8005AF10 3C018012 */ lui $at, %hi(D_8011D534) # $at, 0x8012 -/* 05BB14 8005AF14 AC20D534 */ sw $zero, %lo(D_8011D534)($at) -/* 05BB18 8005AF18 3C018012 */ lui $at, %hi(D_8011D538) # $at, 0x8012 -/* 05BB1C 8005AF1C 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 -/* 05BB20 8005AF20 AC20D538 */ sw $zero, %lo(D_8011D538)($at) -/* 05BB24 8005AF24 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 -/* 05BB28 8005AF28 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 -/* 05BB2C 8005AF2C AC600000 */ sw $zero, ($v1) -/* 05BB30 8005AF30 3C018012 */ lui $at, %hi(D_8011D530) # $at, 0x8012 -/* 05BB34 8005AF34 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 -/* 05BB38 8005AF38 3C088012 */ lui $t0, %hi(D_8011D540) # $t0, 0x8012 -/* 05BB3C 8005AF3C AC20D530 */ sw $zero, %lo(D_8011D530)($at) -/* 05BB40 8005AF40 2508D540 */ addiu $t0, %lo(D_8011D540) # addiu $t0, $t0, -0x2ac0 -/* 05BB44 8005AF44 AC400000 */ sw $zero, ($v0) -.L8005AF48: -/* 05BB48 8005AF48 921901D6 */ lbu $t9, 0x1d6($s0) -/* 05BB4C 8005AF4C 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 -/* 05BB50 8005AF50 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 -/* 05BB54 8005AF54 2F21000E */ sltiu $at, $t9, 0xe -/* 05BB58 8005AF58 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 -/* 05BB5C 8005AF5C 10200094 */ beqz $at, .L8005B1B0 -/* 05BB60 8005AF60 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 -/* 05BB64 8005AF64 0019C880 */ sll $t9, $t9, 2 -/* 05BB68 8005AF68 3C01800E */ lui $at, 0x800e -/* 05BB6C 8005AF6C 00390821 */ addu $at, $at, $t9 -/* 05BB70 8005AF70 8C396968 */ lw $t9, 0x6968($at) -/* 05BB74 8005AF74 00000000 */ nop -/* 05BB78 8005AF78 03200008 */ jr $t9 -/* 05BB7C 8005AF7C 00000000 */ nop -/* 05BB80 8005AF80 8FA400A8 */ lw $a0, 0xa8($sp) -/* 05BB84 8005AF84 8FA500AC */ lw $a1, 0xac($sp) -/* 05BB88 8005AF88 8FA600A0 */ lw $a2, 0xa0($sp) -/* 05BB8C 8005AF8C 0C013DFD */ jal func_8004F7F4 -/* 05BB90 8005AF90 02003825 */ move $a3, $s0 -/* 05BB94 8005AF94 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 -/* 05BB98 8005AF98 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 -/* 05BB9C 8005AF9C 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 -/* 05BBA0 8005AFA0 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 -/* 05BBA4 8005AFA4 10000082 */ b .L8005B1B0 -/* 05BBA8 8005AFA8 240B0001 */ li $t3, 1 -/* 05BBAC 8005AFAC 8FA400A8 */ lw $a0, 0xa8($sp) -/* 05BBB0 8005AFB0 8FA500AC */ lw $a1, 0xac($sp) -/* 05BBB4 8005AFB4 8FA600A0 */ lw $a2, 0xa0($sp) -/* 05BBB8 8005AFB8 0C013308 */ jal func_8004CC20 -/* 05BBBC 8005AFBC 02003825 */ move $a3, $s0 -/* 05BBC0 8005AFC0 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 -/* 05BBC4 8005AFC4 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 -/* 05BBC8 8005AFC8 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 -/* 05BBCC 8005AFCC 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 -/* 05BBD0 8005AFD0 10000077 */ b .L8005B1B0 -/* 05BBD4 8005AFD4 240B0001 */ li $t3, 1 -/* 05BBD8 8005AFD8 8FA400A8 */ lw $a0, 0xa8($sp) -/* 05BBDC 8005AFDC 8FA500AC */ lw $a1, 0xac($sp) -/* 05BBE0 8005AFE0 8FA600A0 */ lw $a2, 0xa0($sp) -/* 05BBE4 8005AFE4 0C011949 */ jal func_80046524 -/* 05BBE8 8005AFE8 02003825 */ move $a3, $s0 -/* 05BBEC 8005AFEC 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 -/* 05BBF0 8005AFF0 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 -/* 05BBF4 8005AFF4 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 -/* 05BBF8 8005AFF8 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 -/* 05BBFC 8005AFFC 1000006C */ b .L8005B1B0 -/* 05BC00 8005B000 240B0001 */ li $t3, 1 -/* 05BC04 8005B004 8FA400A8 */ lw $a0, 0xa8($sp) -/* 05BC08 8005B008 8FA500AC */ lw $a1, 0xac($sp) -/* 05BC0C 8005B00C 8FA600A0 */ lw $a2, 0xa0($sp) -/* 05BC10 8005B010 0C0125E5 */ jal func_80049794 -/* 05BC14 8005B014 02003825 */ move $a3, $s0 -/* 05BC18 8005B018 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 -/* 05BC1C 8005B01C 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 -/* 05BC20 8005B020 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 -/* 05BC24 8005B024 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 -/* 05BC28 8005B028 10000061 */ b .L8005B1B0 -/* 05BC2C 8005B02C 240B0001 */ li $t3, 1 -/* 05BC30 8005B030 8FA400A8 */ lw $a0, 0xa8($sp) -/* 05BC34 8005B034 8FA500AC */ lw $a1, 0xac($sp) -/* 05BC38 8005B038 8FA600A0 */ lw $a2, 0xa0($sp) -/* 05BC3C 8005B03C 0C013657 */ jal func_8004D95C -/* 05BC40 8005B040 02003825 */ move $a3, $s0 -/* 05BC44 8005B044 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 -/* 05BC48 8005B048 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 -/* 05BC4C 8005B04C 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 -/* 05BC50 8005B050 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 -/* 05BC54 8005B054 10000056 */ b .L8005B1B0 -/* 05BC58 8005B058 240B0001 */ li $t3, 1 -/* 05BC5C 8005B05C 8FA400A8 */ lw $a0, 0xa8($sp) -/* 05BC60 8005B060 8FA500AC */ lw $a1, 0xac($sp) -/* 05BC64 8005B064 8FA600A0 */ lw $a2, 0xa0($sp) -/* 05BC68 8005B068 02003825 */ move $a3, $s0 -/* 05BC6C 8005B06C AFA30010 */ sw $v1, 0x10($sp) -/* 05BC70 8005B070 AFA20014 */ sw $v0, 0x14($sp) -/* 05BC74 8005B074 0C0170D9 */ jal func_8005C364 -/* 05BC78 8005B078 AFA80018 */ sw $t0, 0x18($sp) -/* 05BC7C 8005B07C 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 -/* 05BC80 8005B080 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 -/* 05BC84 8005B084 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 -/* 05BC88 8005B088 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 -/* 05BC8C 8005B08C 10000048 */ b .L8005B1B0 -/* 05BC90 8005B090 240B0001 */ li $t3, 1 -/* 05BC94 8005B094 8FA400A8 */ lw $a0, 0xa8($sp) -/* 05BC98 8005B098 8FA500AC */ lw $a1, 0xac($sp) -/* 05BC9C 8005B09C 8FA600A0 */ lw $a2, 0xa0($sp) -/* 05BCA0 8005B0A0 02003825 */ move $a3, $s0 -/* 05BCA4 8005B0A4 AFA30010 */ sw $v1, 0x10($sp) -/* 05BCA8 8005B0A8 AFA20014 */ sw $v0, 0x14($sp) -/* 05BCAC 8005B0AC 0C017434 */ jal func_8005D0D0 -/* 05BCB0 8005B0B0 AFA80018 */ sw $t0, 0x18($sp) -/* 05BCB4 8005B0B4 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 -/* 05BCB8 8005B0B8 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 -/* 05BCBC 8005B0BC 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 -/* 05BCC0 8005B0C0 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 -/* 05BCC4 8005B0C4 1000003A */ b .L8005B1B0 -/* 05BCC8 8005B0C8 240B0001 */ li $t3, 1 -/* 05BCCC 8005B0CC 3C0D8012 */ lui $t5, %hi(D_8011D534) # $t5, 0x8012 -/* 05BCD0 8005B0D0 25ADD534 */ addiu $t5, %lo(D_8011D534) # addiu $t5, $t5, -0x2acc -/* 05BCD4 8005B0D4 8FA400A8 */ lw $a0, 0xa8($sp) -/* 05BCD8 8005B0D8 8FA500AC */ lw $a1, 0xac($sp) -/* 05BCDC 8005B0DC 8FA600A0 */ lw $a2, 0xa0($sp) -/* 05BCE0 8005B0E0 AFAD0014 */ sw $t5, 0x14($sp) -/* 05BCE4 8005B0E4 02003825 */ move $a3, $s0 -/* 05BCE8 8005B0E8 AFA30010 */ sw $v1, 0x10($sp) -/* 05BCEC 8005B0EC 0C017608 */ jal func_8005D820 -/* 05BCF0 8005B0F0 AFA80018 */ sw $t0, 0x18($sp) -/* 05BCF4 8005B0F4 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 -/* 05BCF8 8005B0F8 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 -/* 05BCFC 8005B0FC 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 -/* 05BD00 8005B100 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 -/* 05BD04 8005B104 1000002A */ b .L8005B1B0 -/* 05BD08 8005B108 240B0001 */ li $t3, 1 -/* 05BD0C 8005B10C 8FA400A8 */ lw $a0, 0xa8($sp) -/* 05BD10 8005B110 8FA500AC */ lw $a1, 0xac($sp) -/* 05BD14 8005B114 8FA600A0 */ lw $a2, 0xa0($sp) -/* 05BD18 8005B118 02003825 */ move $a3, $s0 -/* 05BD1C 8005B11C AFA30010 */ sw $v1, 0x10($sp) -/* 05BD20 8005B120 AFA20014 */ sw $v0, 0x14($sp) -/* 05BD24 8005B124 0C017930 */ jal func_8005E4C0 -/* 05BD28 8005B128 AFA80018 */ sw $t0, 0x18($sp) -/* 05BD2C 8005B12C 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 -/* 05BD30 8005B130 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 -/* 05BD34 8005B134 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 -/* 05BD38 8005B138 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 -/* 05BD3C 8005B13C 1000001C */ b .L8005B1B0 -/* 05BD40 8005B140 240B0001 */ li $t3, 1 -/* 05BD44 8005B144 8FA400A8 */ lw $a0, 0xa8($sp) -/* 05BD48 8005B148 8FA500AC */ lw $a1, 0xac($sp) -/* 05BD4C 8005B14C 8FA600A0 */ lw $a2, 0xa0($sp) -/* 05BD50 8005B150 02003825 */ move $a3, $s0 -/* 05BD54 8005B154 AFA30010 */ sw $v1, 0x10($sp) -/* 05BD58 8005B158 AFA20014 */ sw $v0, 0x14($sp) -/* 05BD5C 8005B15C 0C017AA4 */ jal func_8005EA90 -/* 05BD60 8005B160 AFA80018 */ sw $t0, 0x18($sp) -/* 05BD64 8005B164 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 -/* 05BD68 8005B168 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 -/* 05BD6C 8005B16C 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 -/* 05BD70 8005B170 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 -/* 05BD74 8005B174 1000000E */ b .L8005B1B0 -/* 05BD78 8005B178 240B0001 */ li $t3, 1 -/* 05BD7C 8005B17C 8FA400A8 */ lw $a0, 0xa8($sp) -/* 05BD80 8005B180 8FA500AC */ lw $a1, 0xac($sp) -/* 05BD84 8005B184 8FA600A0 */ lw $a2, 0xa0($sp) -/* 05BD88 8005B188 02003825 */ move $a3, $s0 -/* 05BD8C 8005B18C AFA30010 */ sw $v1, 0x10($sp) -/* 05BD90 8005B190 AFA20014 */ sw $v0, 0x14($sp) -/* 05BD94 8005B194 0C017CC4 */ jal func_8005F310 -/* 05BD98 8005B198 AFA80018 */ sw $t0, 0x18($sp) -/* 05BD9C 8005B19C 3C038012 */ lui $v1, %hi(D_8011D528) # $v1, 0x8012 -/* 05BDA0 8005B1A0 3C028012 */ lui $v0, %hi(D_8011D52C) # $v0, 0x8012 -/* 05BDA4 8005B1A4 2442D52C */ addiu $v0, %lo(D_8011D52C) # addiu $v0, $v0, -0x2ad4 -/* 05BDA8 8005B1A8 2463D528 */ addiu $v1, %lo(D_8011D528) # addiu $v1, $v1, -0x2ad8 -/* 05BDAC 8005B1AC 240B0001 */ li $t3, 1 -.L8005B1B0: -/* 05BDB0 8005B1B0 8FAE0094 */ lw $t6, 0x94($sp) -/* 05BDB4 8005B1B4 8FA400A0 */ lw $a0, 0xa0($sp) -/* 05BDB8 8005B1B8 11CB0006 */ beq $t6, $t3, .L8005B1D4 -/* 05BDBC 8005B1BC 00000000 */ nop -/* 05BDC0 8005B1C0 8C450000 */ lw $a1, ($v0) -/* 05BDC4 8005B1C4 8C660000 */ lw $a2, ($v1) -/* 05BDC8 8005B1C8 8FA700A8 */ lw $a3, 0xa8($sp) -/* 05BDCC 8005B1CC 0C001434 */ jal func_800050D0 -/* 05BDD0 8005B1D0 00000000 */ nop -.L8005B1D4: -/* 05BDD4 8005B1D4 C61200A8 */ lwc1 $f18, 0xa8($s0) -/* 05BDD8 8005B1D8 C7A80084 */ lwc1 $f8, 0x84($sp) -/* 05BDDC 8005B1DC E7B20080 */ swc1 $f18, 0x80($sp) -/* 05BDE0 8005B1E0 82180192 */ lb $t8, 0x192($s0) -/* 05BDE4 8005B1E4 8FA500A0 */ lw $a1, 0xa0($sp) -/* 05BDE8 8005B1E8 AFB80090 */ sw $t8, 0x90($sp) -/* 05BDEC 8005B1EC 82040192 */ lb $a0, 0x192($s0) -/* 05BDF0 8005B1F0 8FA6008C */ lw $a2, 0x8c($sp) -/* 05BDF4 8005B1F4 8FA70088 */ lw $a3, 0x88($sp) -/* 05BDF8 8005B1F8 260F00A8 */ addiu $t7, $s0, 0xa8 -/* 05BDFC 8005B1FC 261901C8 */ addiu $t9, $s0, 0x1c8 -/* 05BE00 8005B200 AFB90018 */ sw $t9, 0x18($sp) -/* 05BE04 8005B204 AFAF0014 */ sw $t7, 0x14($sp) -/* 05BE08 8005B208 0C006179 */ jal func_800185E4 -/* 05BE0C 8005B20C E7A80010 */ swc1 $f8, 0x10($sp) -/* 05BE10 8005B210 2401FF9C */ li $at, -100 -/* 05BE14 8005B214 14410006 */ bne $v0, $at, .L8005B230 -/* 05BE18 8005B218 00405025 */ move $t2, $v0 -/* 05BE1C 8005B21C 02002025 */ move $a0, $s0 -/* 05BE20 8005B220 0C01709C */ jal func_8005C270 -/* 05BE24 8005B224 AFA2009C */ sw $v0, 0x9c($sp) -/* 05BE28 8005B228 8FAA009C */ lw $t2, 0x9c($sp) -/* 05BE2C 8005B22C 00000000 */ nop -.L8005B230: -/* 05BE30 8005B230 82040192 */ lb $a0, 0x192($s0) -/* 05BE34 8005B234 920501C8 */ lbu $a1, 0x1c8($s0) -/* 05BE38 8005B238 0C006E87 */ jal func_8001BA1C -/* 05BE3C 8005B23C AFAA009C */ sw $t2, 0x9c($sp) -/* 05BE40 8005B240 820D01CA */ lb $t5, 0x1ca($s0) -/* 05BE44 8005B244 8FAA009C */ lw $t2, 0x9c($sp) -/* 05BE48 8005B248 004D7021 */ addu $t6, $v0, $t5 -/* 05BE4C 8005B24C 81D80036 */ lb $t8, 0x36($t6) -/* 05BE50 8005B250 24010005 */ li $at, 5 -/* 05BE54 8005B254 17010007 */ bne $t8, $at, .L8005B274 -/* 05BE58 8005B258 00000000 */ nop -/* 05BE5C 8005B25C 821901E5 */ lb $t9, 0x1e5($s0) -/* 05BE60 8005B260 240F001E */ li $t7, 30 -/* 05BE64 8005B264 13200003 */ beqz $t9, .L8005B274 -/* 05BE68 8005B268 A20F0201 */ sb $t7, 0x201($s0) -/* 05BE6C 8005B26C 240D0001 */ li $t5, 1 -/* 05BE70 8005B270 A20D01C8 */ sb $t5, 0x1c8($s0) -.L8005B274: -/* 05BE74 8005B274 820E01CA */ lb $t6, 0x1ca($s0) -/* 05BE78 8005B278 24010006 */ li $at, 6 -/* 05BE7C 8005B27C 004EC021 */ addu $t8, $v0, $t6 -/* 05BE80 8005B280 83030036 */ lb $v1, 0x36($t8) -/* 05BE84 8005B284 8FAF0070 */ lw $t7, 0x70($sp) -/* 05BE88 8005B288 14610009 */ bne $v1, $at, .L8005B2B0 -/* 05BE8C 8005B28C 24010004 */ li $at, 4 -/* 05BE90 8005B290 81F9004B */ lb $t9, 0x4b($t7) -/* 05BE94 8005B294 820E01CA */ lb $t6, 0x1ca($s0) -/* 05BE98 8005B298 272D0001 */ addiu $t5, $t9, 1 -/* 05BE9C 8005B29C A20D0193 */ sb $t5, 0x193($s0) -/* 05BEA0 8005B2A0 004EC021 */ addu $t8, $v0, $t6 -/* 05BEA4 8005B2A4 83030036 */ lb $v1, 0x36($t8) -/* 05BEA8 8005B2A8 00000000 */ nop -/* 05BEAC 8005B2AC 24010004 */ li $at, 4 -.L8005B2B0: -/* 05BEB0 8005B2B0 14610010 */ bne $v1, $at, .L8005B2F4 -/* 05BEB4 8005B2B4 00000000 */ nop -/* 05BEB8 8005B2B8 C60A002C */ lwc1 $f10, 0x2c($s0) -/* 05BEBC 8005B2BC 3C01C010 */ li $at, 0xC0100000 # -2.250000 -/* 05BEC0 8005B2C0 44812800 */ mtc1 $at, $f5 -/* 05BEC4 8005B2C4 44802000 */ mtc1 $zero, $f4 -/* 05BEC8 8005B2C8 46005021 */ cvt.d.s $f0, $f10 -/* 05BECC 8005B2CC 4624003C */ c.lt.d $f0, $f4 -/* 05BED0 8005B2D0 3C01800E */ lui $at, %hi(D_800E69A4) # $at, 0x800e -/* 05BED4 8005B2D4 45000007 */ bc1f .L8005B2F4 -/* 05BED8 8005B2D8 00000000 */ nop -/* 05BEDC 8005B2DC C42769A0 */ lwc1 $f7, %lo(D_800E69A0)($at) -/* 05BEE0 8005B2E0 C42669A4 */ lwc1 $f6, %lo(D_800E69A4)($at) -/* 05BEE4 8005B2E4 00000000 */ nop -/* 05BEE8 8005B2E8 46260482 */ mul.d $f18, $f0, $f6 -/* 05BEEC 8005B2EC 46209220 */ cvt.s.d $f8, $f18 -/* 05BEF0 8005B2F0 E608002C */ swc1 $f8, 0x2c($s0) -.L8005B2F4: -/* 05BEF4 8005B2F4 1540002C */ bnez $t2, .L8005B3A8 -/* 05BEF8 8005B2F8 00000000 */ nop -/* 05BEFC 8005B2FC 820F01CA */ lb $t7, 0x1ca($s0) -/* 05BF00 8005B300 24010002 */ li $at, 2 -/* 05BF04 8005B304 004FC821 */ addu $t9, $v0, $t7 -/* 05BF08 8005B308 832D0036 */ lb $t5, 0x36($t9) -/* 05BF0C 8005B30C 240E0001 */ li $t6, 1 -/* 05BF10 8005B310 15A10002 */ bne $t5, $at, .L8005B31C -/* 05BF14 8005B314 00000000 */ nop -/* 05BF18 8005B318 A20E01C8 */ sb $t6, 0x1c8($s0) -.L8005B31C: -/* 05BF1C 8005B31C 0C006E99 */ jal func_8001BA64 -/* 05BF20 8005B320 00000000 */ nop -/* 05BF24 8005B324 82180192 */ lb $t8, 0x192($s0) -/* 05BF28 8005B328 00000000 */ nop -/* 05BF2C 8005B32C 270F0001 */ addiu $t7, $t8, 1 -/* 05BF30 8005B330 A20F0192 */ sb $t7, 0x192($s0) -/* 05BF34 8005B334 82190192 */ lb $t9, 0x192($s0) -/* 05BF38 8005B338 00000000 */ nop -/* 05BF3C 8005B33C 0322082A */ slt $at, $t9, $v0 -/* 05BF40 8005B340 1420000C */ bnez $at, .L8005B374 -/* 05BF44 8005B344 8FB80070 */ lw $t8, 0x70($sp) -/* 05BF48 8005B348 860D0190 */ lh $t5, 0x190($s0) -/* 05BF4C 8005B34C A2000192 */ sb $zero, 0x192($s0) -/* 05BF50 8005B350 19A00008 */ blez $t5, .L8005B374 -/* 05BF54 8005B354 8FB80070 */ lw $t8, 0x70($sp) -/* 05BF58 8005B358 82030193 */ lb $v1, 0x193($s0) -/* 05BF5C 8005B35C 00000000 */ nop -/* 05BF60 8005B360 28610078 */ slti $at, $v1, 0x78 -/* 05BF64 8005B364 10200002 */ beqz $at, .L8005B370 -/* 05BF68 8005B368 246E0001 */ addiu $t6, $v1, 1 -/* 05BF6C 8005B36C A20E0193 */ sb $t6, 0x193($s0) -.L8005B370: -/* 05BF70 8005B370 8FB80070 */ lw $t8, 0x70($sp) -.L8005B374: -/* 05BF74 8005B374 86030190 */ lh $v1, 0x190($s0) -/* 05BF78 8005B378 830F004B */ lb $t7, 0x4b($t8) -/* 05BF7C 8005B37C 24182710 */ li $t8, 10000 -/* 05BF80 8005B380 25F90003 */ addiu $t9, $t7, 3 -/* 05BF84 8005B384 03220019 */ multu $t9, $v0 -/* 05BF88 8005B388 246E0001 */ addiu $t6, $v1, 1 -/* 05BF8C 8005B38C 00006812 */ mflo $t5 -/* 05BF90 8005B390 006D082A */ slt $at, $v1, $t5 -/* 05BF94 8005B394 10200002 */ beqz $at, .L8005B3A0 -/* 05BF98 8005B398 00000000 */ nop -/* 05BF9C 8005B39C A60E0190 */ sh $t6, 0x190($s0) -.L8005B3A0: -/* 05BFA0 8005B3A0 1000000E */ b .L8005B3DC -/* 05BFA4 8005B3A4 A61801A8 */ sh $t8, 0x1a8($s0) -.L8005B3A8: -/* 05BFA8 8005B3A8 860F0000 */ lh $t7, ($s0) -/* 05BFAC 8005B3AC 2401FFFF */ li $at, -1 -/* 05BFB0 8005B3B0 15E10009 */ bne $t7, $at, .L8005B3D8 -/* 05BFB4 8005B3B4 00000000 */ nop -/* 05BFB8 8005B3B8 C7A00080 */ lwc1 $f0, 0x80($sp) -/* 05BFBC 8005B3BC C60A00A8 */ lwc1 $f10, 0xa8($s0) -/* 05BFC0 8005B3C0 00000000 */ nop -/* 05BFC4 8005B3C4 460A003C */ c.lt.s $f0, $f10 -/* 05BFC8 8005B3C8 00000000 */ nop -/* 05BFCC 8005B3CC 45000002 */ bc1f .L8005B3D8 -/* 05BFD0 8005B3D0 00000000 */ nop -/* 05BFD4 8005B3D4 E60000A8 */ swc1 $f0, 0xa8($s0) -.L8005B3D8: -/* 05BFD8 8005B3D8 A60A01A8 */ sh $t2, 0x1a8($s0) -.L8005B3DC: -/* 05BFDC 8005B3DC 8FB900A0 */ lw $t9, 0xa0($sp) -/* 05BFE0 8005B3E0 00000000 */ nop -/* 05BFE4 8005B3E4 C724000C */ lwc1 $f4, 0xc($t9) -/* 05BFE8 8005B3E8 00000000 */ nop -/* 05BFEC 8005B3EC E6040068 */ swc1 $f4, 0x68($s0) -/* 05BFF0 8005B3F0 8FAD00A0 */ lw $t5, 0xa0($sp) -/* 05BFF4 8005B3F4 00000000 */ nop -/* 05BFF8 8005B3F8 C5A60010 */ lwc1 $f6, 0x10($t5) -/* 05BFFC 8005B3FC 00000000 */ nop -/* 05C000 8005B400 E606006C */ swc1 $f6, 0x6c($s0) -/* 05C004 8005B404 8FAE00A0 */ lw $t6, 0xa0($sp) -/* 05C008 8005B408 00000000 */ nop -/* 05C00C 8005B40C C5D20014 */ lwc1 $f18, 0x14($t6) -/* 05C010 8005B410 1000000F */ b .L8005B450 -/* 05C014 8005B414 E6120070 */ swc1 $f18, 0x70($s0) -/* 05C018 8005B418 8FA700AC */ lw $a3, 0xac($sp) -.L8005B41C: -/* 05C01C 8005B41C 0C016E06 */ jal func_8005B818 -/* 05C020 8005B420 02002825 */ move $a1, $s0 -/* 05C024 8005B424 8FB80094 */ lw $t8, 0x94($sp) -/* 05C028 8005B428 240B0001 */ li $t3, 1 -/* 05C02C 8005B42C 130B0008 */ beq $t8, $t3, .L8005B450 -/* 05C030 8005B430 3C058012 */ lui $a1, %hi(D_8011D52C) # $a1, 0x8012 -/* 05C034 8005B434 3C068012 */ lui $a2, %hi(D_8011D528) # $a2, 0x8012 -/* 05C038 8005B438 8CC6D528 */ lw $a2, %lo(D_8011D528)($a2) -/* 05C03C 8005B43C 8FA400A0 */ lw $a0, 0xa0($sp) -/* 05C040 8005B440 8CA5D52C */ lw $a1, %lo(D_8011D52C)($a1) -/* 05C044 8005B444 8FA700A8 */ lw $a3, 0xa8($sp) -/* 05C048 8005B448 0C001434 */ jal func_800050D0 -/* 05C04C 8005B44C 00000000 */ nop -.L8005B450: -/* 05C050 8005B450 C7A800AC */ lwc1 $f8, 0xac($sp) -/* 05C054 8005B454 820F0175 */ lb $t7, 0x175($s0) -/* 05C058 8005B458 46004321 */ cvt.d.s $f12, $f8 -/* 05C05C 8005B45C 15E0000C */ bnez $t7, .L8005B490 -/* 05C060 8005B460 8FB900A8 */ lw $t9, 0xa8($sp) -/* 05C064 8005B464 8E040178 */ lw $a0, 0x178($s0) -/* 05C068 8005B468 00000000 */ nop -/* 05C06C 8005B46C 10800008 */ beqz $a0, .L8005B490 -/* 05C070 8005B470 8FB900A8 */ lw $t9, 0xa8($sp) -/* 05C074 8005B474 E7AD0040 */ swc1 $f13, 0x40($sp) -/* 05C078 8005B478 0C001223 */ jal func_8000488C -/* 05C07C 8005B47C E7AC0044 */ swc1 $f12, 0x44($sp) -/* 05C080 8005B480 C7AD0040 */ lwc1 $f13, 0x40($sp) -/* 05C084 8005B484 C7AC0044 */ lwc1 $f12, 0x44($sp) -/* 05C088 8005B488 AE000178 */ sw $zero, 0x178($s0) -/* 05C08C 8005B48C 8FB900A8 */ lw $t9, 0xa8($sp) -.L8005B490: -/* 05C090 8005B490 8FA400A0 */ lw $a0, 0xa0($sp) -/* 05C094 8005B494 8FA5008C */ lw $a1, 0x8c($sp) -/* 05C098 8005B498 8FA60088 */ lw $a2, 0x88($sp) -/* 05C09C 8005B49C 8FA70084 */ lw $a3, 0x84($sp) -/* 05C0A0 8005B4A0 E7AD0040 */ swc1 $f13, 0x40($sp) -/* 05C0A4 8005B4A4 E7AC0044 */ swc1 $f12, 0x44($sp) -/* 05C0A8 8005B4A8 0C006338 */ jal func_80018CE0 -/* 05C0AC 8005B4AC AFB90010 */ sw $t9, 0x10($sp) -/* 05C0B0 8005B4B0 82060188 */ lb $a2, 0x188($s0) -/* 05C0B4 8005B4B4 C7AD0040 */ lwc1 $f13, 0x40($sp) -/* 05C0B8 8005B4B8 C7AC0044 */ lwc1 $f12, 0x44($sp) -/* 05C0BC 8005B4BC 18C00009 */ blez $a2, .L8005B4E4 -/* 05C0C0 8005B4C0 00000000 */ nop -/* 05C0C4 8005B4C4 8FA400A0 */ lw $a0, 0xa0($sp) -/* 05C0C8 8005B4C8 02002825 */ move $a1, $s0 -/* 05C0CC 8005B4CC E7AD0040 */ swc1 $f13, 0x40($sp) -/* 05C0D0 8005B4D0 0C015DB8 */ jal func_800576E0 -/* 05C0D4 8005B4D4 E7AC0044 */ swc1 $f12, 0x44($sp) -/* 05C0D8 8005B4D8 C7AD0040 */ lwc1 $f13, 0x40($sp) -/* 05C0DC 8005B4DC C7AC0044 */ lwc1 $f12, 0x44($sp) -/* 05C0E0 8005B4E0 00000000 */ nop -.L8005B4E4: -/* 05C0E4 8005B4E4 8E0D0148 */ lw $t5, 0x148($s0) -/* 05C0E8 8005B4E8 44803000 */ mtc1 $zero, $f6 -/* 05C0EC 8005B4EC 11A00005 */ beqz $t5, .L8005B504 -/* 05C0F0 8005B4F0 3C02800E */ lui $v0, %hi(D_800DCB54) # $v0, 0x800e -/* 05C0F4 8005B4F4 44808000 */ mtc1 $zero, $f16 -/* 05C0F8 8005B4F8 AE000148 */ sw $zero, 0x148($s0) -/* 05C0FC 8005B4FC E610002C */ swc1 $f16, 0x2c($s0) -/* 05C100 8005B500 E6100030 */ swc1 $f16, 0x30($s0) -.L8005B504: -/* 05C104 8005B504 C60E0090 */ lwc1 $f14, 0x90($s0) -/* 05C108 8005B508 C600008C */ lwc1 $f0, 0x8c($s0) -/* 05C10C 8005B50C 44808000 */ mtc1 $zero, $f16 -/* 05C110 8005B510 460E003E */ c.le.s $f0, $f14 -/* 05C114 8005B514 3C01800E */ lui $at, 0x800e -/* 05C118 8005B518 45000005 */ bc1f .L8005B530 -/* 05C11C 8005B51C 46007281 */ sub.s $f10, $f14, $f0 -/* 05C120 8005B520 3C01800E */ lui $at, %hi(D_800E69A8) # $at, 0x800e -/* 05C124 8005B524 C42269A8 */ lwc1 $f2, %lo(D_800E69A8)($at) -/* 05C128 8005B528 10000004 */ b .L8005B53C -/* 05C12C 8005B52C 3C013FC0 */ lui $at, %hi(D_3FC069AC) # $at, 0x3fc0 -.L8005B530: -/* 05C130 8005B530 C42269AC */ lwc1 $f2, %lo(D_3FC069AC)($at) -/* 05C134 8005B534 00000000 */ nop -/* 05C138 8005B538 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -.L8005B53C: -/* 05C13C 8005B53C 44813800 */ mtc1 $at, $f7 -/* 05C140 8005B540 46005121 */ cvt.d.s $f4, $f10 -/* 05C144 8005B544 46262482 */ mul.d $f18, $f4, $f6 -/* 05C148 8005B548 46001221 */ cvt.d.s $f8, $f2 -/* 05C14C 8005B54C 460001A1 */ cvt.d.s $f6, $f0 -/* 05C150 8005B550 4610103C */ c.lt.s $f2, $f16 -/* 05C154 8005B554 46289280 */ add.d $f10, $f18, $f8 -/* 05C158 8005B558 462C5102 */ mul.d $f4, $f10, $f12 -/* 05C15C 8005B55C 46243480 */ add.d $f18, $f6, $f4 -/* 05C160 8005B560 46209220 */ cvt.s.d $f8, $f18 -/* 05C164 8005B564 45000007 */ bc1f .L8005B584 -/* 05C168 8005B568 E608008C */ swc1 $f8, 0x8c($s0) -/* 05C16C 8005B56C C60A008C */ lwc1 $f10, 0x8c($s0) -/* 05C170 8005B570 00000000 */ nop -/* 05C174 8005B574 460E503E */ c.le.s $f10, $f14 -/* 05C178 8005B578 00000000 */ nop -/* 05C17C 8005B57C 4501000B */ bc1t .L8005B5AC -/* 05C180 8005B580 3C013F80 */ lui $at, 0x3f80 -.L8005B584: -/* 05C184 8005B584 4602803C */ c.lt.s $f16, $f2 -/* 05C188 8005B588 00000000 */ nop -/* 05C18C 8005B58C 4500000A */ bc1f .L8005B5B8 -/* 05C190 8005B590 00000000 */ nop -/* 05C194 8005B594 C606008C */ lwc1 $f6, 0x8c($s0) -/* 05C198 8005B598 00000000 */ nop -/* 05C19C 8005B59C 4606703E */ c.le.s $f14, $f6 -/* 05C1A0 8005B5A0 00000000 */ nop -/* 05C1A4 8005B5A4 45000004 */ bc1f .L8005B5B8 -/* 05C1A8 8005B5A8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -.L8005B5AC: -/* 05C1AC 8005B5AC 44812000 */ mtc1 $at, $f4 -/* 05C1B0 8005B5B0 E60E008C */ swc1 $f14, 0x8c($s0) -/* 05C1B4 8005B5B4 E6040090 */ swc1 $f4, 0x90($s0) -.L8005B5B8: -/* 05C1B8 8005B5B8 8603016A */ lh $v1, 0x16a($s0) -/* 05C1BC 8005B5BC 860E016C */ lh $t6, 0x16c($s0) -/* 05C1C0 8005B5C0 8FAF00A8 */ lw $t7, 0xa8($sp) -/* 05C1C4 8005B5C4 01C3C023 */ subu $t8, $t6, $v1 -/* 05C1C8 8005B5C8 030F0019 */ multu $t8, $t7 -/* 05C1CC 8005B5CC 00005012 */ mflo $t2 -/* 05C1D0 8005B5D0 000AC8C3 */ sra $t9, $t2, 3 -/* 05C1D4 8005B5D4 2B210801 */ slti $at, $t9, 0x801 -/* 05C1D8 8005B5D8 14200002 */ bnez $at, .L8005B5E4 -/* 05C1DC 8005B5DC 03205025 */ move $t2, $t9 -/* 05C1E0 8005B5E0 240A0800 */ li $t2, 2048 -.L8005B5E4: -/* 05C1E4 8005B5E4 2941F800 */ slti $at, $t2, -0x800 -/* 05C1E8 8005B5E8 10200002 */ beqz $at, .L8005B5F4 -/* 05C1EC 8005B5EC 00000000 */ nop -/* 05C1F0 8005B5F0 240AF800 */ li $t2, -2048 -.L8005B5F4: -/* 05C1F4 8005B5F4 8442CB54 */ lh $v0, %lo(D_800DCB54)($v0) -/* 05C1F8 8005B5F8 006A7021 */ addu $t6, $v1, $t2 -/* 05C1FC 8005B5FC 10400003 */ beqz $v0, .L8005B60C -/* 05C200 8005B600 00626821 */ addu $t5, $v1, $v0 -/* 05C204 8005B604 10000002 */ b .L8005B610 -/* 05C208 8005B608 A60D016A */ sh $t5, 0x16a($s0) -.L8005B60C: -/* 05C20C 8005B60C A60E016A */ sh $t6, 0x16a($s0) -.L8005B610: -/* 05C210 8005B610 8602018E */ lh $v0, 0x18e($s0) -/* 05C214 8005B614 00000000 */ nop -/* 05C218 8005B618 18400031 */ blez $v0, .L8005B6E0 -/* 05C21C 8005B61C 2841003D */ slti $at, $v0, 0x3d -/* 05C220 8005B620 1420001E */ bnez $at, .L8005B69C -/* 05C224 8005B624 00000000 */ nop -/* 05C228 8005B628 8E04017C */ lw $a0, 0x17c($s0) -/* 05C22C 8005B62C 00000000 */ nop -/* 05C230 8005B630 1080000B */ beqz $a0, .L8005B660 -/* 05C234 8005B634 00000000 */ nop -/* 05C238 8005B638 8FA200A0 */ lw $v0, 0xa0($sp) -/* 05C23C 8005B63C 00000000 */ nop -/* 05C240 8005B640 8C45000C */ lw $a1, 0xc($v0) -/* 05C244 8005B644 8C460010 */ lw $a2, 0x10($v0) -/* 05C248 8005B648 8C470014 */ lw $a3, 0x14($v0) -/* 05C24C 8005B64C 0C0025B6 */ jal func_800096D8 -/* 05C250 8005B650 00000000 */ nop -/* 05C254 8005B654 8602018E */ lh $v0, 0x18e($s0) -/* 05C258 8005B658 10000019 */ b .L8005B6C0 -/* 05C25C 8005B65C 8FAE00A8 */ lw $t6, 0xa8($sp) -.L8005B660: -/* 05C260 8005B660 8E180118 */ lw $t8, 0x118($s0) -/* 05C264 8005B664 8FAF00A0 */ lw $t7, 0xa0($sp) -/* 05C268 8005B668 13000014 */ beqz $t8, .L8005B6BC -/* 05C26C 8005B66C 2404009F */ li $a0, 159 -/* 05C270 8005B670 8DE5000C */ lw $a1, 0xc($t7) -/* 05C274 8005B674 8DE60010 */ lw $a2, 0x10($t7) -/* 05C278 8005B678 8DE70014 */ lw $a3, 0x14($t7) -/* 05C27C 8005B67C 24190001 */ li $t9, 1 -/* 05C280 8005B680 260D017C */ addiu $t5, $s0, 0x17c -/* 05C284 8005B684 AFAD0014 */ sw $t5, 0x14($sp) -/* 05C288 8005B688 0C002556 */ jal func_80009558 -/* 05C28C 8005B68C AFB90010 */ sw $t9, 0x10($sp) -/* 05C290 8005B690 8602018E */ lh $v0, 0x18e($s0) -/* 05C294 8005B694 1000000A */ b .L8005B6C0 -/* 05C298 8005B698 8FAE00A8 */ lw $t6, 0xa8($sp) -.L8005B69C: -/* 05C29C 8005B69C 8E04017C */ lw $a0, 0x17c($s0) -/* 05C2A0 8005B6A0 00000000 */ nop -/* 05C2A4 8005B6A4 10800006 */ beqz $a0, .L8005B6C0 -/* 05C2A8 8005B6A8 8FAE00A8 */ lw $t6, 0xa8($sp) -/* 05C2AC 8005B6AC 0C0025BE */ jal func_800096F8 -/* 05C2B0 8005B6B0 00000000 */ nop -/* 05C2B4 8005B6B4 8602018E */ lh $v0, 0x18e($s0) -/* 05C2B8 8005B6B8 AE00017C */ sw $zero, 0x17c($s0) -.L8005B6BC: -/* 05C2BC 8005B6BC 8FAE00A8 */ lw $t6, 0xa8($sp) -.L8005B6C0: -/* 05C2C0 8005B6C0 00000000 */ nop -/* 05C2C4 8005B6C4 004EC023 */ subu $t8, $v0, $t6 -/* 05C2C8 8005B6C8 A618018E */ sh $t8, 0x18e($s0) -/* 05C2CC 8005B6CC 860F018E */ lh $t7, 0x18e($s0) -/* 05C2D0 8005B6D0 00000000 */ nop -/* 05C2D4 8005B6D4 1DE00002 */ bgtz $t7, .L8005B6E0 -/* 05C2D8 8005B6D8 00000000 */ nop -/* 05C2DC 8005B6DC A2000189 */ sb $zero, 0x189($s0) -.L8005B6E0: -/* 05C2E0 8005B6E0 8E040024 */ lw $a0, 0x24($s0) -/* 05C2E4 8005B6E4 8FA200A0 */ lw $v0, 0xa0($sp) -/* 05C2E8 8005B6E8 10800006 */ beqz $a0, .L8005B704 -/* 05C2EC 8005B6EC 00000000 */ nop -/* 05C2F0 8005B6F0 8C45000C */ lw $a1, 0xc($v0) -/* 05C2F4 8005B6F4 8C460010 */ lw $a2, 0x10($v0) -/* 05C2F8 8005B6F8 8C470014 */ lw $a3, 0x14($v0) -/* 05C2FC 8005B6FC 0C0025B6 */ jal func_800096D8 -/* 05C300 8005B700 00000000 */ nop -.L8005B704: -/* 05C304 8005B704 3C018012 */ lui $at, %hi(D_8011D584) # $at, 0x8012 -/* 05C308 8005B708 A020D584 */ sb $zero, %lo(D_8011D584)($at) -/* 05C30C 8005B70C 8E020150 */ lw $v0, 0x150($s0) -/* 05C310 8005B710 3C198012 */ lui $t9, %hi(D_8011D540) # $t9, 0x8012 -/* 05C314 8005B714 10400038 */ beqz $v0, .L8005B7F8 -/* 05C318 8005B718 00000000 */ nop -/* 05C31C 8005B71C 8F39D540 */ lw $t9, %lo(D_8011D540)($t9) -/* 05C320 8005B720 8FAD00A0 */ lw $t5, 0xa0($sp) -/* 05C324 8005B724 17200034 */ bnez $t9, .L8005B7F8 -/* 05C328 8005B728 00002025 */ move $a0, $zero -/* 05C32C 8005B72C C5B2000C */ lwc1 $f18, 0xc($t5) -/* 05C330 8005B730 0C0078A7 */ jal func_8001E29C -/* 05C334 8005B734 E452000C */ swc1 $f18, 0xc($v0) -/* 05C338 8005B738 820E0003 */ lb $t6, 3($s0) -/* 05C33C 8005B73C 8FA300A0 */ lw $v1, 0xa0($sp) -/* 05C340 8005B740 01C2C021 */ addu $t8, $t6, $v0 -/* 05C344 8005B744 830F0000 */ lb $t7, ($t8) -/* 05C348 8005B748 C4660010 */ lwc1 $f6, 0x10($v1) -/* 05C34C 8005B74C 448F4000 */ mtc1 $t7, $f8 -/* 05C350 8005B750 8E190150 */ lw $t9, 0x150($s0) -/* 05C354 8005B754 468042A0 */ cvt.s.w $f10, $f8 -/* 05C358 8005B758 3C01800E */ lui $at, %hi(D_800E69B0) # $at, 0x800e -/* 05C35C 8005B75C 46065100 */ add.s $f4, $f10, $f6 -/* 05C360 8005B760 E7240010 */ swc1 $f4, 0x10($t9) -/* 05C364 8005B764 8E0D0150 */ lw $t5, 0x150($s0) -/* 05C368 8005B768 C4720014 */ lwc1 $f18, 0x14($v1) -/* 05C36C 8005B76C 00000000 */ nop -/* 05C370 8005B770 E5B20014 */ swc1 $f18, 0x14($t5) -/* 05C374 8005B774 C42A69B0 */ lwc1 $f10, %lo(D_800E69B0)($at) -/* 05C378 8005B778 C4680030 */ lwc1 $f8, 0x30($v1) -/* 05C37C 8005B77C 8E0E0150 */ lw $t6, 0x150($s0) -/* 05C380 8005B780 460A4183 */ div.s $f6, $f8, $f10 -/* 05C384 8005B784 3C01800E */ lui $at, %hi(D_800E69B8) # $at, 0x800e -/* 05C388 8005B788 E5C60008 */ swc1 $f6, 8($t6) -/* 05C38C 8005B78C C4640030 */ lwc1 $f4, 0x30($v1) -/* 05C390 8005B790 C42869BC */ lwc1 $f8, %lo(D_800E69BC)($at) -/* 05C394 8005B794 C42969B8 */ lwc1 $f9, %lo(D_800E69B8)($at) -/* 05C398 8005B798 460024A1 */ cvt.d.s $f18, $f4 -/* 05C39C 8005B79C 4628903C */ c.lt.d $f18, $f8 -/* 05C3A0 8005B7A0 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 05C3A4 8005B7A4 45000007 */ bc1f .L8005B7C4 -/* 05C3A8 8005B7A8 00000000 */ nop -/* 05C3AC 8005B7AC 8E020150 */ lw $v0, 0x150($s0) -/* 05C3B0 8005B7B0 00000000 */ nop -/* 05C3B4 8005B7B4 84580006 */ lh $t8, 6($v0) -/* 05C3B8 8005B7B8 00000000 */ nop -/* 05C3BC 8005B7BC 370F4000 */ ori $t7, $t8, 0x4000 -/* 05C3C0 8005B7C0 A44F0006 */ sh $t7, 6($v0) -.L8005B7C4: -/* 05C3C4 8005B7C4 8E020150 */ lw $v0, 0x150($s0) -/* 05C3C8 8005B7C8 44812800 */ mtc1 $at, $f5 -/* 05C3CC 8005B7CC C44A0008 */ lwc1 $f10, 8($v0) -/* 05C3D0 8005B7D0 44802000 */ mtc1 $zero, $f4 -/* 05C3D4 8005B7D4 460051A1 */ cvt.d.s $f6, $f10 -/* 05C3D8 8005B7D8 4624303C */ c.lt.d $f6, $f4 -/* 05C3DC 8005B7DC 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 05C3E0 8005B7E0 45000004 */ bc1f .L8005B7F4 -/* 05C3E4 8005B7E4 00000000 */ nop -/* 05C3E8 8005B7E8 44819000 */ mtc1 $at, $f18 -/* 05C3EC 8005B7EC 00000000 */ nop -/* 05C3F0 8005B7F0 E4520008 */ swc1 $f18, 8($v0) -.L8005B7F4: -/* 05C3F4 8005B7F4 AE000150 */ sw $zero, 0x150($s0) -.L8005B7F8: -/* 05C3F8 8005B7F8 241900FF */ li $t9, 255 -/* 05C3FC 8005B7FC A21901FE */ sb $t9, 0x1fe($s0) -/* 05C400 8005B800 0C013DDF */ jal func_8004F77C -/* 05C404 8005B804 02002025 */ move $a0, $s0 -/* 05C408 8005B808 8FBF002C */ lw $ra, 0x2c($sp) -/* 05C40C 8005B80C 8FB00028 */ lw $s0, 0x28($sp) -/* 05C410 8005B810 03E00008 */ jr $ra -/* 05C414 8005B814 27BD00A0 */ addiu $sp, $sp, 0xa0 - -glabel func_8005B818 -/* 05C418 8005B818 27BDFED8 */ addiu $sp, $sp, -0x128 -/* 05C41C 8005B81C AFB30050 */ sw $s3, 0x50($sp) -/* 05C420 8005B820 E7BE003C */ swc1 $f30, 0x3c($sp) -/* 05C424 8005B824 4487F000 */ mtc1 $a3, $f30 -/* 05C428 8005B828 00809825 */ move $s3, $a0 -/* 05C42C 8005B82C AFBF0054 */ sw $ra, 0x54($sp) -/* 05C430 8005B830 AFB10048 */ sw $s1, 0x48($sp) -/* 05C434 8005B834 00A08825 */ move $s1, $a1 -/* 05C438 8005B838 AFB2004C */ sw $s2, 0x4c($sp) -/* 05C43C 8005B83C AFB00044 */ sw $s0, 0x44($sp) -/* 05C440 8005B840 E7BF0038 */ swc1 $f31, 0x38($sp) -/* 05C444 8005B844 E7BD0030 */ swc1 $f29, 0x30($sp) -/* 05C448 8005B848 E7BC0034 */ swc1 $f28, 0x34($sp) -/* 05C44C 8005B84C E7BB0028 */ swc1 $f27, 0x28($sp) -/* 05C450 8005B850 E7BA002C */ swc1 $f26, 0x2c($sp) -/* 05C454 8005B854 E7B90020 */ swc1 $f25, 0x20($sp) -/* 05C458 8005B858 E7B80024 */ swc1 $f24, 0x24($sp) -/* 05C45C 8005B85C E7B70018 */ swc1 $f23, 0x18($sp) -/* 05C460 8005B860 E7B6001C */ swc1 $f22, 0x1c($sp) -/* 05C464 8005B864 E7B50010 */ swc1 $f21, 0x10($sp) -/* 05C468 8005B868 E7B40014 */ swc1 $f20, 0x14($sp) -/* 05C46C 8005B86C AFA60130 */ sw $a2, 0x130($sp) -/* 05C470 8005B870 0C0078A7 */ jal func_8001E29C -/* 05C474 8005B874 24040021 */ li $a0, 33 -/* 05C478 8005B878 3C018012 */ lui $at, %hi(D_8011D564) # $at, 0x8012 -/* 05C47C 8005B87C 0C01AF6C */ jal func_8006BDB0 -/* 05C480 8005B880 AC22D564 */ sw $v0, %lo(D_8011D564)($at) -/* 05C484 8005B884 0C006E99 */ jal func_8001BA64 -/* 05C488 8005B888 AFA20080 */ sw $v0, 0x80($sp) -/* 05C48C 8005B88C 10400260 */ beqz $v0, .L8005C210 -/* 05C490 8005B890 AFA2011C */ sw $v0, 0x11c($sp) -/* 05C494 8005B894 44802000 */ mtc1 $zero, $f4 -/* 05C498 8005B898 3C0141A0 */ li $at, 0x41A00000 # 20.000000 -/* 05C49C 8005B89C 44811000 */ mtc1 $at, $f2 -/* 05C4A0 8005B8A0 A22001C9 */ sb $zero, 0x1c9($s1) -/* 05C4A4 8005B8A4 A22001F5 */ sb $zero, 0x1f5($s1) -/* 05C4A8 8005B8A8 A2200187 */ sb $zero, 0x187($s1) -/* 05C4AC 8005B8AC E6240030 */ swc1 $f4, 0x30($s1) -/* 05C4B0 8005B8B0 3C01C1A0 */ li $at, 0xC1A00000 # -20.000000 -/* 05C4B4 8005B8B4 E7A20094 */ swc1 $f2, 0x94($sp) -/* 05C4B8 8005B8B8 C6200124 */ lwc1 $f0, 0x124($s1) -/* 05C4BC 8005B8BC 44813000 */ mtc1 $at, $f6 -/* 05C4C0 8005B8C0 3C01800E */ lui $at, %hi(D_800E69C4) # $at, 0x800e -/* 05C4C4 8005B8C4 4606003C */ c.lt.s $f0, $f6 -/* 05C4C8 8005B8C8 00000000 */ nop -/* 05C4CC 8005B8CC 45000005 */ bc1f .L8005B8E4 -/* 05C4D0 8005B8D0 00000000 */ nop -/* 05C4D4 8005B8D4 46001207 */ neg.s $f8, $f2 -/* 05C4D8 8005B8D8 E6280124 */ swc1 $f8, 0x124($s1) -/* 05C4DC 8005B8DC C6200124 */ lwc1 $f0, 0x124($s1) -/* 05C4E0 8005B8E0 00000000 */ nop -.L8005B8E4: -/* 05C4E4 8005B8E4 C7AA0094 */ lwc1 $f10, 0x94($sp) -/* 05C4E8 8005B8E8 00000000 */ nop -/* 05C4EC 8005B8EC 4600503C */ c.lt.s $f10, $f0 -/* 05C4F0 8005B8F0 00000000 */ nop -/* 05C4F4 8005B8F4 45000004 */ bc1f .L8005B908 -/* 05C4F8 8005B8F8 00000000 */ nop -/* 05C4FC 8005B8FC E62A0124 */ swc1 $f10, 0x124($s1) -/* 05C500 8005B900 C6200124 */ lwc1 $f0, 0x124($s1) -/* 05C504 8005B904 00000000 */ nop -.L8005B908: -/* 05C508 8005B908 C42569C0 */ lwc1 $f5, %lo(D_800E69C0)($at) -/* 05C50C 8005B90C C42469C4 */ lwc1 $f4, %lo(D_800E69C4)($at) -/* 05C510 8005B910 460004A1 */ cvt.d.s $f18, $f0 -/* 05C514 8005B914 46249182 */ mul.d $f6, $f18, $f4 -/* 05C518 8005B918 3C01800E */ lui $at, %hi(D_800E69CC) # $at, 0x800e -/* 05C51C 8005B91C C42969C8 */ lwc1 $f9, %lo(D_800E69C8)($at) -/* 05C520 8005B920 C42869CC */ lwc1 $f8, %lo(D_800E69CC)($at) -/* 05C524 8005B924 3C01800E */ lui $at, %hi(D_800E69D4) # $at, 0x800e -/* 05C528 8005B928 C43369D0 */ lwc1 $f19, %lo(D_800E69D0)($at) -/* 05C52C 8005B92C C43269D4 */ lwc1 $f18, %lo(D_800E69D4)($at) -/* 05C530 8005B930 46283280 */ add.d $f10, $f6, $f8 -/* 05C534 8005B934 00000000 */ nop -/* 05C538 8005B938 46325103 */ div.d $f4, $f10, $f18 -/* 05C53C 8005B93C 0C0326B4 */ jal sqrtf -/* 05C540 8005B940 46202320 */ cvt.s.d $f12, $f4 -/* 05C544 8005B944 822E01D3 */ lb $t6, 0x1d3($s1) -/* 05C548 8005B948 46000306 */ mov.s $f12, $f0 -/* 05C54C 8005B94C 11C00007 */ beqz $t6, .L8005B96C -/* 05C550 8005B950 27A30100 */ addiu $v1, $sp, 0x100 -/* 05C554 8005B954 3C01800E */ lui $at, %hi(D_800E69DC) # $at, 0x800e -/* 05C558 8005B958 C42969D8 */ lwc1 $f9, %lo(D_800E69D8)($at) -/* 05C55C 8005B95C C42869DC */ lwc1 $f8, %lo(D_800E69DC)($at) -/* 05C560 8005B960 460001A1 */ cvt.d.s $f6, $f0 -/* 05C564 8005B964 46283282 */ mul.d $f10, $f6, $f8 -/* 05C568 8005B968 46205320 */ cvt.s.d $f12, $f10 -.L8005B96C: -/* 05C56C 8005B96C 822F01D6 */ lb $t7, 0x1d6($s1) -/* 05C570 8005B970 24010001 */ li $at, 1 -/* 05C574 8005B974 15E1003F */ bne $t7, $at, .L8005BA74 -/* 05C578 8005B978 27A600EC */ addiu $a2, $sp, 0xec -/* 05C57C 8005B97C 863801BE */ lh $t8, 0x1be($s1) -/* 05C580 8005B980 862A01C2 */ lh $t2, 0x1c2($s1) -/* 05C584 8005B984 3319FFFF */ andi $t9, $t8, 0xffff -/* 05C588 8005B988 314BFFFF */ andi $t3, $t2, 0xffff -/* 05C58C 8005B98C 032B1023 */ subu $v0, $t9, $t3 -/* 05C590 8005B990 34018001 */ li $at, 32769 -/* 05C594 8005B994 0041082A */ slt $at, $v0, $at -/* 05C598 8005B998 14200003 */ bnez $at, .L8005B9A8 -/* 05C59C 8005B99C 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 05C5A0 8005B9A0 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 05C5A4 8005B9A4 00411021 */ addu $v0, $v0, $at -.L8005B9A8: -/* 05C5A8 8005B9A8 28418000 */ slti $at, $v0, -0x8000 -/* 05C5AC 8005B9AC 10200002 */ beqz $at, .L8005B9B8 -/* 05C5B0 8005B9B0 3401FFFF */ li $at, 65535 -/* 05C5B4 8005B9B4 00411021 */ addu $v0, $v0, $at -.L8005B9B8: -/* 05C5B8 8005B9B8 04410002 */ bgez $v0, .L8005B9C4 -/* 05C5BC 8005B9BC 00000000 */ nop -/* 05C5C0 8005B9C0 00021023 */ negu $v0, $v0 -.L8005B9C4: -/* 05C5C4 8005B9C4 2442FF38 */ addiu $v0, $v0, -0xc8 -/* 05C5C8 8005B9C8 04410002 */ bgez $v0, .L8005B9D4 -/* 05C5CC 8005B9CC 00000000 */ nop -/* 05C5D0 8005B9D0 00001025 */ move $v0, $zero -.L8005B9D4: -/* 05C5D4 8005B9D4 44829000 */ mtc1 $v0, $f18 -/* 05C5D8 8005B9D8 3C01800E */ lui $at, %hi(D_800E69E4) # $at, 0x800e -/* 05C5DC 8005B9DC 46809120 */ cvt.s.w $f4, $f18 -/* 05C5E0 8005B9E0 C42969E0 */ lwc1 $f9, %lo(D_800E69E0)($at) -/* 05C5E4 8005B9E4 C42869E4 */ lwc1 $f8, %lo(D_800E69E4)($at) -/* 05C5E8 8005B9E8 460021A1 */ cvt.d.s $f6, $f4 -/* 05C5EC 8005B9EC 00000000 */ nop -/* 05C5F0 8005B9F0 46283283 */ div.d $f10, $f6, $f8 -/* 05C5F4 8005B9F4 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 05C5F8 8005B9F8 44812800 */ mtc1 $at, $f5 -/* 05C5FC 8005B9FC 44802000 */ mtc1 $zero, $f4 -/* 05C600 8005BA00 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 05C604 8005BA04 462053A0 */ cvt.s.d $f14, $f10 -/* 05C608 8005BA08 460E6301 */ sub.s $f12, $f12, $f14 -/* 05C60C 8005BA0C E7AE0094 */ swc1 $f14, 0x94($sp) -/* 05C610 8005BA10 460064A1 */ cvt.d.s $f18, $f12 -/* 05C614 8005BA14 4624903C */ c.lt.d $f18, $f4 -/* 05C618 8005BA18 00000000 */ nop -/* 05C61C 8005BA1C 45000003 */ bc1f .L8005BA2C -/* 05C620 8005BA20 00000000 */ nop -/* 05C624 8005BA24 44816000 */ mtc1 $at, $f12 -/* 05C628 8005BA28 00000000 */ nop -.L8005BA2C: -/* 05C62C 8005BA2C C620002C */ lwc1 $f0, 0x2c($s1) -/* 05C630 8005BA30 46006087 */ neg.s $f2, $f12 -/* 05C634 8005BA34 4602003C */ c.lt.s $f0, $f2 -/* 05C638 8005BA38 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 05C63C 8005BA3C 45000003 */ bc1f .L8005BA4C -/* 05C640 8005BA40 00000000 */ nop -/* 05C644 8005BA44 10000017 */ b .L8005BAA4 -/* 05C648 8005BA48 E622002C */ swc1 $f2, 0x2c($s1) -.L8005BA4C: -/* 05C64C 8005BA4C 46001181 */ sub.s $f6, $f2, $f0 -/* 05C650 8005BA50 44815800 */ mtc1 $at, $f11 -/* 05C654 8005BA54 44805000 */ mtc1 $zero, $f10 -/* 05C658 8005BA58 46003221 */ cvt.d.s $f8, $f6 -/* 05C65C 8005BA5C 462A4482 */ mul.d $f18, $f8, $f10 -/* 05C660 8005BA60 46000121 */ cvt.d.s $f4, $f0 -/* 05C664 8005BA64 46322180 */ add.d $f6, $f4, $f18 -/* 05C668 8005BA68 46203220 */ cvt.s.d $f8, $f6 -/* 05C66C 8005BA6C 1000000D */ b .L8005BAA4 -/* 05C670 8005BA70 E628002C */ swc1 $f8, 0x2c($s1) -.L8005BA74: -/* 05C674 8005BA74 C620002C */ lwc1 $f0, 0x2c($s1) -/* 05C678 8005BA78 46006287 */ neg.s $f10, $f12 -/* 05C67C 8005BA7C 46005101 */ sub.s $f4, $f10, $f0 -/* 05C680 8005BA80 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 05C684 8005BA84 44813800 */ mtc1 $at, $f7 -/* 05C688 8005BA88 44803000 */ mtc1 $zero, $f6 -/* 05C68C 8005BA8C 460024A1 */ cvt.d.s $f18, $f4 -/* 05C690 8005BA90 46269202 */ mul.d $f8, $f18, $f6 -/* 05C694 8005BA94 460002A1 */ cvt.d.s $f10, $f0 -/* 05C698 8005BA98 46285100 */ add.d $f4, $f10, $f8 -/* 05C69C 8005BA9C 462024A0 */ cvt.s.d $f18, $f4 -/* 05C6A0 8005BAA0 E632002C */ swc1 $f18, 0x2c($s1) -.L8005BAA4: -/* 05C6A4 8005BAA4 82240192 */ lb $a0, 0x192($s1) -/* 05C6A8 8005BAA8 27A700D8 */ addiu $a3, $sp, 0xd8 -/* 05C6AC 8005BAAC 2484FFFE */ addiu $a0, $a0, -2 -/* 05C6B0 8005BAB0 04810004 */ bgez $a0, .L8005BAC4 -/* 05C6B4 8005BAB4 27A900B8 */ addiu $t1, $sp, 0xb8 -/* 05C6B8 8005BAB8 8FA2011C */ lw $v0, 0x11c($sp) -/* 05C6BC 8005BABC 00000000 */ nop -/* 05C6C0 8005BAC0 00822021 */ addu $a0, $a0, $v0 -.L8005BAC4: -/* 05C6C4 8005BAC4 8FA2011C */ lw $v0, 0x11c($sp) -/* 05C6C8 8005BAC8 27A800A4 */ addiu $t0, $sp, 0xa4 -/* 05C6CC 8005BACC 0082082A */ slt $at, $a0, $v0 -/* 05C6D0 8005BAD0 14200002 */ bnez $at, .L8005BADC -/* 05C6D4 8005BAD4 27B000B8 */ addiu $s0, $sp, 0xb8 -/* 05C6D8 8005BAD8 00822023 */ subu $a0, $a0, $v0 -.L8005BADC: -/* 05C6DC 8005BADC 922501C8 */ lbu $a1, 0x1c8($s1) -/* 05C6E0 8005BAE0 AFA90070 */ sw $t1, 0x70($sp) -/* 05C6E4 8005BAE4 AFA8006C */ sw $t0, 0x6c($sp) -/* 05C6E8 8005BAE8 AFA70074 */ sw $a3, 0x74($sp) -/* 05C6EC 8005BAEC AFA60078 */ sw $a2, 0x78($sp) -/* 05C6F0 8005BAF0 AFA40120 */ sw $a0, 0x120($sp) -/* 05C6F4 8005BAF4 0C006E87 */ jal func_8001BA1C -/* 05C6F8 8005BAF8 AFA3007C */ sw $v1, 0x7c($sp) -/* 05C6FC 8005BAFC 8FA3007C */ lw $v1, 0x7c($sp) -/* 05C700 8005BB00 C4460010 */ lwc1 $f6, 0x10($v0) -/* 05C704 8005BB04 8FA40120 */ lw $a0, 0x120($sp) -/* 05C708 8005BB08 8FA60078 */ lw $a2, 0x78($sp) -/* 05C70C 8005BB0C 8FA70074 */ lw $a3, 0x74($sp) -/* 05C710 8005BB10 8FA8006C */ lw $t0, 0x6c($sp) -/* 05C714 8005BB14 8FA90070 */ lw $t1, 0x70($sp) -/* 05C718 8005BB18 E4660000 */ swc1 $f6, ($v1) -/* 05C71C 8005BB1C C44A0014 */ lwc1 $f10, 0x14($v0) -/* 05C720 8005BB20 24840001 */ addiu $a0, $a0, 1 -/* 05C724 8005BB24 E4CA0000 */ swc1 $f10, ($a2) -/* 05C728 8005BB28 C4480018 */ lwc1 $f8, 0x18($v0) -/* 05C72C 8005BB2C 24630004 */ addiu $v1, $v1, 4 -/* 05C730 8005BB30 E4E80000 */ swc1 $f8, ($a3) -/* 05C734 8005BB34 822C01CA */ lb $t4, 0x1ca($s1) -/* 05C738 8005BB38 24C60004 */ addiu $a2, $a2, 4 -/* 05C73C 8005BB3C 004C6821 */ addu $t5, $v0, $t4 -/* 05C740 8005BB40 81AE002E */ lb $t6, 0x2e($t5) -/* 05C744 8005BB44 24E70004 */ addiu $a3, $a3, 4 -/* 05C748 8005BB48 448E2000 */ mtc1 $t6, $f4 -/* 05C74C 8005BB4C 25080004 */ addiu $t0, $t0, 4 -/* 05C750 8005BB50 468024A0 */ cvt.s.w $f18, $f4 -/* 05C754 8005BB54 E5320000 */ swc1 $f18, ($t1) -/* 05C758 8005BB58 822F01CA */ lb $t7, 0x1ca($s1) -/* 05C75C 8005BB5C 00000000 */ nop -/* 05C760 8005BB60 004FC021 */ addu $t8, $v0, $t7 -/* 05C764 8005BB64 830A0032 */ lb $t2, 0x32($t8) -/* 05C768 8005BB68 00000000 */ nop -/* 05C76C 8005BB6C 448A3000 */ mtc1 $t2, $f6 -/* 05C770 8005BB70 00000000 */ nop -/* 05C774 8005BB74 468032A0 */ cvt.s.w $f10, $f6 -/* 05C778 8005BB78 E50AFFFC */ swc1 $f10, -4($t0) -/* 05C77C 8005BB7C 823901CA */ lb $t9, 0x1ca($s1) -/* 05C780 8005BB80 C448001C */ lwc1 $f8, 0x1c($v0) -/* 05C784 8005BB84 00595821 */ addu $t3, $v0, $t9 -/* 05C788 8005BB88 816C002E */ lb $t4, 0x2e($t3) -/* 05C78C 8005BB8C C4440008 */ lwc1 $f4, 8($v0) -/* 05C790 8005BB90 448C3000 */ mtc1 $t4, $f6 -/* 05C794 8005BB94 46044482 */ mul.s $f18, $f8, $f4 -/* 05C798 8005BB98 C464FFFC */ lwc1 $f4, -4($v1) -/* 05C79C 8005BB9C 468032A0 */ cvt.s.w $f10, $f6 -/* 05C7A0 8005BBA0 460A9202 */ mul.s $f8, $f18, $f10 -/* 05C7A4 8005BBA4 46082180 */ add.s $f6, $f4, $f8 -/* 05C7A8 8005BBA8 E466FFFC */ swc1 $f6, -4($v1) -/* 05C7AC 8005BBAC 822D01CA */ lb $t5, 0x1ca($s1) -/* 05C7B0 8005BBB0 C452001C */ lwc1 $f18, 0x1c($v0) -/* 05C7B4 8005BBB4 004D7021 */ addu $t6, $v0, $t5 -/* 05C7B8 8005BBB8 81CF0032 */ lb $t7, 0x32($t6) -/* 05C7BC 8005BBBC C4C6FFFC */ lwc1 $f6, -4($a2) -/* 05C7C0 8005BBC0 448F5000 */ mtc1 $t7, $f10 -/* 05C7C4 8005BBC4 00000000 */ nop -/* 05C7C8 8005BBC8 46805120 */ cvt.s.w $f4, $f10 -/* 05C7CC 8005BBCC 46049202 */ mul.s $f8, $f18, $f4 -/* 05C7D0 8005BBD0 46083280 */ add.s $f10, $f6, $f8 -/* 05C7D4 8005BBD4 E4CAFFFC */ swc1 $f10, -4($a2) -/* 05C7D8 8005BBD8 823801CA */ lb $t8, 0x1ca($s1) -/* 05C7DC 8005BBDC C4440000 */ lwc1 $f4, ($v0) -/* 05C7E0 8005BBE0 00585021 */ addu $t2, $v0, $t8 -/* 05C7E4 8005BBE4 8159002E */ lb $t9, 0x2e($t2) -/* 05C7E8 8005BBE8 C452001C */ lwc1 $f18, 0x1c($v0) -/* 05C7EC 8005BBEC 44995000 */ mtc1 $t9, $f10 -/* 05C7F0 8005BBF0 46002187 */ neg.s $f6, $f4 -/* 05C7F4 8005BBF4 46069202 */ mul.s $f8, $f18, $f6 -/* 05C7F8 8005BBF8 C4E6FFFC */ lwc1 $f6, -4($a3) -/* 05C7FC 8005BBFC 46805120 */ cvt.s.w $f4, $f10 -/* 05C800 8005BC00 46044482 */ mul.s $f18, $f8, $f4 -/* 05C804 8005BC04 46123280 */ add.s $f10, $f6, $f18 -/* 05C808 8005BC08 E4EAFFFC */ swc1 $f10, -4($a3) -/* 05C80C 8005BC0C 8FAB011C */ lw $t3, 0x11c($sp) -/* 05C810 8005BC10 00000000 */ nop -/* 05C814 8005BC14 148B0002 */ bne $a0, $t3, .L8005BC20 -/* 05C818 8005BC18 00000000 */ nop -/* 05C81C 8005BC1C 00002025 */ move $a0, $zero -.L8005BC20: -/* 05C820 8005BC20 1510FFAE */ bne $t0, $s0, .L8005BADC -/* 05C824 8005BC24 25290004 */ addiu $t1, $t1, 4 -/* 05C828 8005BC28 C628002C */ lwc1 $f8, 0x2c($s1) -/* 05C82C 8005BC2C 44803000 */ mtc1 $zero, $f6 -/* 05C830 8005BC30 E7A8008C */ swc1 $f8, 0x8c($sp) -/* 05C834 8005BC34 C7A4008C */ lwc1 $f4, 0x8c($sp) -/* 05C838 8005BC38 44805800 */ mtc1 $zero, $f11 -/* 05C83C 8005BC3C 4606203C */ c.lt.s $f4, $f6 -/* 05C840 8005BC40 4480A000 */ mtc1 $zero, $f20 -/* 05C844 8005BC44 45000003 */ bc1f .L8005BC54 -/* 05C848 8005BC48 00000000 */ nop -/* 05C84C 8005BC4C 46002487 */ neg.s $f18, $f4 -/* 05C850 8005BC50 E7B2008C */ swc1 $f18, 0x8c($sp) -.L8005BC54: -/* 05C854 8005BC54 C62800AC */ lwc1 $f8, 0xac($s1) -/* 05C858 8005BC58 44805000 */ mtc1 $zero, $f10 -/* 05C85C 8005BC5C 460041A1 */ cvt.d.s $f6, $f8 -/* 05C860 8005BC60 46265032 */ c.eq.d $f10, $f6 -/* 05C864 8005BC64 00009025 */ move $s2, $zero -/* 05C868 8005BC68 45000004 */ bc1f .L8005BC7C -/* 05C86C 8005BC6C 3C01800E */ lui $at, %hi(D_800E69E8) # $at, 0x800e -/* 05C870 8005BC70 C42469E8 */ lwc1 $f4, %lo(D_800E69E8)($at) -/* 05C874 8005BC74 00000000 */ nop -/* 05C878 8005BC78 E62400AC */ swc1 $f4, 0xac($s1) -.L8005BC7C: -/* 05C87C 8005BC7C 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 05C880 8005BC80 4481A800 */ mtc1 $at, $f21 -/* 05C884 8005BC84 00008025 */ move $s0, $zero -.L8005BC88: -/* 05C888 8005BC88 C62600AC */ lwc1 $f6, 0xac($s1) -/* 05C88C 8005BC8C C63200A8 */ lwc1 $f18, 0xa8($s1) -/* 05C890 8005BC90 461E3102 */ mul.s $f4, $f6, $f30 -/* 05C894 8005BC94 46009221 */ cvt.d.s $f8, $f18 -/* 05C898 8005BC98 27A40100 */ addiu $a0, $sp, 0x100 -/* 05C89C 8005BC9C 27A7009C */ addiu $a3, $sp, 0x9c -/* 05C8A0 8005BCA0 4628A281 */ sub.d $f10, $f20, $f8 -/* 05C8A4 8005BCA4 460024A1 */ cvt.d.s $f18, $f4 -/* 05C8A8 8005BCA8 46325200 */ add.d $f8, $f10, $f18 -/* 05C8AC 8005BCAC 462045A0 */ cvt.s.d $f22, $f8 -/* 05C8B0 8005BCB0 4600B0A1 */ cvt.d.s $f2, $f22 -/* 05C8B4 8005BCB4 4622A03E */ c.le.d $f20, $f2 -/* 05C8B8 8005BCB8 00000000 */ nop -/* 05C8BC 8005BCBC 45000004 */ bc1f .L8005BCD0 -/* 05C8C0 8005BCC0 00000000 */ nop -/* 05C8C4 8005BCC4 46341181 */ sub.d $f6, $f2, $f20 -/* 05C8C8 8005BCC8 24120001 */ li $s2, 1 -/* 05C8CC 8005BCCC 462035A0 */ cvt.s.d $f22, $f6 -.L8005BCD0: -/* 05C8D0 8005BCD0 4406B000 */ mfc1 $a2, $f22 -/* 05C8D4 8005BCD4 0C00898F */ jal func_8002263C -/* 05C8D8 8005BCD8 02402825 */ move $a1, $s2 -/* 05C8DC 8005BCDC 4406B000 */ mfc1 $a2, $f22 -/* 05C8E0 8005BCE0 46000686 */ mov.s $f26, $f0 -/* 05C8E4 8005BCE4 27A400EC */ addiu $a0, $sp, 0xec -/* 05C8E8 8005BCE8 02402825 */ move $a1, $s2 -/* 05C8EC 8005BCEC 0C00898F */ jal func_8002263C -/* 05C8F0 8005BCF0 27A70098 */ addiu $a3, $sp, 0x98 -/* 05C8F4 8005BCF4 4406B000 */ mfc1 $a2, $f22 -/* 05C8F8 8005BCF8 46000606 */ mov.s $f24, $f0 -/* 05C8FC 8005BCFC 27A400D8 */ addiu $a0, $sp, 0xd8 -/* 05C900 8005BD00 02402825 */ move $a1, $s2 -/* 05C904 8005BD04 0C00898F */ jal func_8002263C -/* 05C908 8005BD08 27A70094 */ addiu $a3, $sp, 0x94 -/* 05C90C 8005BD0C C6240068 */ lwc1 $f4, 0x68($s1) -/* 05C910 8005BD10 C62A006C */ lwc1 $f10, 0x6c($s1) -/* 05C914 8005BD14 C6320070 */ lwc1 $f18, 0x70($s1) -/* 05C918 8005BD18 4604D681 */ sub.s $f26, $f26, $f4 -/* 05C91C 8005BD1C 460AC601 */ sub.s $f24, $f24, $f10 -/* 05C920 8005BD20 16000020 */ bnez $s0, .L8005BDA4 -/* 05C924 8005BD24 46120701 */ sub.s $f28, $f0, $f18 -/* 05C928 8005BD28 461AD202 */ mul.s $f8, $f26, $f26 -/* 05C92C 8005BD2C 00009025 */ move $s2, $zero -/* 05C930 8005BD30 4618C182 */ mul.s $f6, $f24, $f24 -/* 05C934 8005BD34 00000000 */ nop -/* 05C938 8005BD38 461CE282 */ mul.s $f10, $f28, $f28 -/* 05C93C 8005BD3C 46064100 */ add.s $f4, $f8, $f6 -/* 05C940 8005BD40 0C0326B4 */ jal sqrtf -/* 05C944 8005BD44 460A2300 */ add.s $f12, $f4, $f10 -/* 05C948 8005BD48 00000000 */ nop -/* 05C94C 8005BD4C 461E0303 */ div.s $f12, $f0, $f30 -/* 05C950 8005BD50 44809000 */ mtc1 $zero, $f18 -/* 05C954 8005BD54 C7A6008C */ lwc1 $f6, 0x8c($sp) -/* 05C958 8005BD58 3C01800E */ lui $at, %hi(D_800E69F4) # $at, 0x800e -/* 05C95C 8005BD5C 460C9032 */ c.eq.s $f18, $f12 -/* 05C960 8005BD60 00000000 */ nop -/* 05C964 8005BD64 45010007 */ bc1t .L8005BD84 -/* 05C968 8005BD68 00000000 */ nop -/* 05C96C 8005BD6C 460C3103 */ div.s $f4, $f6, $f12 -/* 05C970 8005BD70 C62800AC */ lwc1 $f8, 0xac($s1) -/* 05C974 8005BD74 00000000 */ nop -/* 05C978 8005BD78 46044282 */ mul.s $f10, $f8, $f4 -/* 05C97C 8005BD7C 10000009 */ b .L8005BDA4 -/* 05C980 8005BD80 E62A00AC */ swc1 $f10, 0xac($s1) -.L8005BD84: -/* 05C984 8005BD84 C63200AC */ lwc1 $f18, 0xac($s1) -/* 05C988 8005BD88 C42969F0 */ lwc1 $f9, %lo(D_800E69F0)($at) -/* 05C98C 8005BD8C C42869F4 */ lwc1 $f8, %lo(D_800E69F4)($at) -/* 05C990 8005BD90 460091A1 */ cvt.d.s $f6, $f18 -/* 05C994 8005BD94 46283100 */ add.d $f4, $f6, $f8 -/* 05C998 8005BD98 2410FFFF */ li $s0, -1 -/* 05C99C 8005BD9C 462022A0 */ cvt.s.d $f10, $f4 -/* 05C9A0 8005BDA0 E62A00AC */ swc1 $f10, 0xac($s1) -.L8005BDA4: -/* 05C9A4 8005BDA4 26100001 */ addiu $s0, $s0, 1 -/* 05C9A8 8005BDA8 2A010002 */ slti $at, $s0, 2 -/* 05C9AC 8005BDAC 1420FFB6 */ bnez $at, .L8005BC88 -/* 05C9B0 8005BDB0 00000000 */ nop -/* 05C9B4 8005BDB4 C6320068 */ lwc1 $f18, 0x68($s1) -/* 05C9B8 8005BDB8 C628006C */ lwc1 $f8, 0x6c($s1) -/* 05C9BC 8005BDBC C62A0070 */ lwc1 $f10, 0x70($s1) -/* 05C9C0 8005BDC0 461A9180 */ add.s $f6, $f18, $f26 -/* 05C9C4 8005BDC4 46184100 */ add.s $f4, $f8, $f24 -/* 05C9C8 8005BDC8 E6260068 */ swc1 $f6, 0x68($s1) -/* 05C9CC 8005BDCC 461C5480 */ add.s $f18, $f10, $f28 -/* 05C9D0 8005BDD0 E624006C */ swc1 $f4, 0x6c($s1) -/* 05C9D4 8005BDD4 E6320070 */ swc1 $f18, 0x70($s1) -/* 05C9D8 8005BDD8 C668000C */ lwc1 $f8, 0xc($s3) -/* 05C9DC 8005BDDC C6260068 */ lwc1 $f6, 0x68($s1) -/* 05C9E0 8005BDE0 C6320070 */ lwc1 $f18, 0x70($s1) -/* 05C9E4 8005BDE4 46083681 */ sub.s $f26, $f6, $f8 -/* 05C9E8 8005BDE8 C6660014 */ lwc1 $f6, 0x14($s3) -/* 05C9EC 8005BDEC 461AD202 */ mul.s $f8, $f26, $f26 -/* 05C9F0 8005BDF0 C66A0010 */ lwc1 $f10, 0x10($s3) -/* 05C9F4 8005BDF4 C624006C */ lwc1 $f4, 0x6c($s1) -/* 05C9F8 8005BDF8 46069701 */ sub.s $f28, $f18, $f6 -/* 05C9FC 8005BDFC 460A2601 */ sub.s $f24, $f4, $f10 -/* 05CA00 8005BE00 461CE102 */ mul.s $f4, $f28, $f28 -/* 05CA04 8005BE04 4600B0A1 */ cvt.d.s $f2, $f22 -/* 05CA08 8005BE08 E7A20064 */ swc1 $f2, 0x64($sp) -/* 05CA0C 8005BE0C E7A30060 */ swc1 $f3, 0x60($sp) -/* 05CA10 8005BE10 0C0326B4 */ jal sqrtf -/* 05CA14 8005BE14 46044300 */ add.s $f12, $f8, $f4 -/* 05CA18 8005BE18 00000000 */ nop -/* 05CA1C 8005BE1C 461E0303 */ div.s $f12, $f0, $f30 -/* 05CA20 8005BE20 3C01800E */ lui $at, %hi(D_800E69FC) # $at, 0x800e -/* 05CA24 8005BE24 C43169F8 */ lwc1 $f17, %lo(D_800E69F8)($at) -/* 05CA28 8005BE28 C43069FC */ lwc1 $f16, %lo(D_800E69FC)($at) -/* 05CA2C 8005BE2C C7A30060 */ lwc1 $f3, 0x60($sp) -/* 05CA30 8005BE30 C7A20064 */ lwc1 $f2, 0x64($sp) -/* 05CA34 8005BE34 00000000 */ nop -/* 05CA38 8005BE38 4622A481 */ sub.d $f18, $f20, $f2 -/* 05CA3C 8005BE3C 460063A1 */ cvt.d.s $f14, $f12 -/* 05CA40 8005BE40 462E803C */ c.lt.d $f16, $f14 -/* 05CA44 8005BE44 E7AC0090 */ swc1 $f12, 0x90($sp) -/* 05CA48 8005BE48 45000008 */ bc1f .L8005BE6C -/* 05CA4C 8005BE4C 462091A0 */ cvt.s.d $f6, $f18 -/* 05CA50 8005BE50 00000000 */ nop -/* 05CA54 8005BE54 462E8283 */ div.d $f10, $f16, $f14 -/* 05CA58 8005BE58 46205020 */ cvt.s.d $f0, $f10 -/* 05CA5C 8005BE5C 4600D682 */ mul.s $f26, $f26, $f0 -/* 05CA60 8005BE60 00000000 */ nop -/* 05CA64 8005BE64 4600E702 */ mul.s $f28, $f28, $f0 -/* 05CA68 8005BE68 00000000 */ nop -.L8005BE6C: -/* 05CA6C 8005BE6C 12400024 */ beqz $s2, .L8005BF00 -/* 05CA70 8005BE70 E62600A8 */ swc1 $f6, 0xa8($s1) -/* 05CA74 8005BE74 822C0192 */ lb $t4, 0x192($s1) -/* 05CA78 8005BE78 00000000 */ nop -/* 05CA7C 8005BE7C 258D0001 */ addiu $t5, $t4, 1 -/* 05CA80 8005BE80 A22D0192 */ sb $t5, 0x192($s1) -/* 05CA84 8005BE84 8FAF011C */ lw $t7, 0x11c($sp) -/* 05CA88 8005BE88 822E0192 */ lb $t6, 0x192($s1) -/* 05CA8C 8005BE8C 00000000 */ nop -/* 05CA90 8005BE90 01CF082A */ slt $at, $t6, $t7 -/* 05CA94 8005BE94 1420000C */ bnez $at, .L8005BEC8 -/* 05CA98 8005BE98 8FB90080 */ lw $t9, 0x80($sp) -/* 05CA9C 8005BE9C 86380190 */ lh $t8, 0x190($s1) -/* 05CAA0 8005BEA0 A2200192 */ sb $zero, 0x192($s1) -/* 05CAA4 8005BEA4 1B000008 */ blez $t8, .L8005BEC8 -/* 05CAA8 8005BEA8 8FB90080 */ lw $t9, 0x80($sp) -/* 05CAAC 8005BEAC 82220193 */ lb $v0, 0x193($s1) -/* 05CAB0 8005BEB0 00000000 */ nop -/* 05CAB4 8005BEB4 28410078 */ slti $at, $v0, 0x78 -/* 05CAB8 8005BEB8 10200002 */ beqz $at, .L8005BEC4 -/* 05CABC 8005BEBC 244A0001 */ addiu $t2, $v0, 1 -/* 05CAC0 8005BEC0 A22A0193 */ sb $t2, 0x193($s1) -.L8005BEC4: -/* 05CAC4 8005BEC4 8FB90080 */ lw $t9, 0x80($sp) -.L8005BEC8: -/* 05CAC8 8005BEC8 8FAD011C */ lw $t5, 0x11c($sp) -/* 05CACC 8005BECC 832B004B */ lb $t3, 0x4b($t9) -/* 05CAD0 8005BED0 86220190 */ lh $v0, 0x190($s1) -/* 05CAD4 8005BED4 256C0003 */ addiu $t4, $t3, 3 -/* 05CAD8 8005BED8 018D0019 */ multu $t4, $t5 -/* 05CADC 8005BEDC 24182710 */ li $t8, 10000 -/* 05CAE0 8005BEE0 244F0001 */ addiu $t7, $v0, 1 -/* 05CAE4 8005BEE4 00007012 */ mflo $t6 -/* 05CAE8 8005BEE8 004E082A */ slt $at, $v0, $t6 -/* 05CAEC 8005BEEC 10200002 */ beqz $at, .L8005BEF8 -/* 05CAF0 8005BEF0 00000000 */ nop -/* 05CAF4 8005BEF4 A62F0190 */ sh $t7, 0x190($s1) -.L8005BEF8: -/* 05CAF8 8005BEF8 10000011 */ b .L8005BF40 -/* 05CAFC 8005BEFC A63801A8 */ sh $t8, 0x1a8($s1) -.L8005BF00: -/* 05CB00 8005BF00 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 05CB04 8005BF04 44812000 */ mtc1 $at, $f4 -/* 05CB08 8005BF08 C62800A8 */ lwc1 $f8, 0xa8($s1) -/* 05CB0C 8005BF0C 00000000 */ nop -/* 05CB10 8005BF10 46044282 */ mul.s $f10, $f8, $f4 -/* 05CB14 8005BF14 444AF800 */ cfc1 $t2, $31 -/* 05CB18 8005BF18 00000000 */ nop -/* 05CB1C 8005BF1C 35410003 */ ori $at, $t2, 3 -/* 05CB20 8005BF20 38210002 */ xori $at, $at, 2 -/* 05CB24 8005BF24 44C1F800 */ ctc1 $at, $31 -/* 05CB28 8005BF28 00000000 */ nop -/* 05CB2C 8005BF2C 460054A4 */ cvt.w.s $f18, $f10 -/* 05CB30 8005BF30 44199000 */ mfc1 $t9, $f18 -/* 05CB34 8005BF34 44CAF800 */ ctc1 $t2, $31 -/* 05CB38 8005BF38 A63901A8 */ sh $t9, 0x1a8($s1) -/* 05CB3C 8005BF3C 00000000 */ nop -.L8005BF40: -/* 05CB40 8005BF40 822201D3 */ lb $v0, 0x1d3($s1) -/* 05CB44 8005BF44 8FAB0130 */ lw $t3, 0x130($sp) -/* 05CB48 8005BF48 18400003 */ blez $v0, .L8005BF58 -/* 05CB4C 8005BF4C 004B6023 */ subu $t4, $v0, $t3 -/* 05CB50 8005BF50 10000002 */ b .L8005BF5C -/* 05CB54 8005BF54 A22C01D3 */ sb $t4, 0x1d3($s1) -.L8005BF58: -/* 05CB58 8005BF58 A22001D3 */ sb $zero, 0x1d3($s1) -.L8005BF5C: -/* 05CB5C 8005BF5C C7A600C0 */ lwc1 $f6, 0xc0($sp) -/* 05CB60 8005BF60 C7A800BC */ lwc1 $f8, 0xbc($sp) -/* 05CB64 8005BF64 00000000 */ nop -/* 05CB68 8005BF68 46083101 */ sub.s $f4, $f6, $f8 -/* 05CB6C 8005BF6C 46162282 */ mul.s $f10, $f4, $f22 -/* 05CB70 8005BF70 46085480 */ add.s $f18, $f10, $f8 -/* 05CB74 8005BF74 444DF800 */ cfc1 $t5, $31 -/* 05CB78 8005BF78 00000000 */ nop -/* 05CB7C 8005BF7C 35A10003 */ ori $at, $t5, 3 -/* 05CB80 8005BF80 38210002 */ xori $at, $at, 2 -/* 05CB84 8005BF84 44C1F800 */ ctc1 $at, $31 -/* 05CB88 8005BF88 00000000 */ nop -/* 05CB8C 8005BF8C 460091A4 */ cvt.w.s $f6, $f18 -/* 05CB90 8005BF90 440E3000 */ mfc1 $t6, $f6 -/* 05CB94 8005BF94 44CDF800 */ ctc1 $t5, $31 -/* 05CB98 8005BF98 A62E01BA */ sh $t6, 0x1ba($s1) -/* 05CB9C 8005BF9C C7AA00A8 */ lwc1 $f10, 0xa8($sp) -/* 05CBA0 8005BFA0 C7A400AC */ lwc1 $f4, 0xac($sp) -/* 05CBA4 8005BFA4 00000000 */ nop -/* 05CBA8 8005BFA8 460A2201 */ sub.s $f8, $f4, $f10 -/* 05CBAC 8005BFAC 46164482 */ mul.s $f18, $f8, $f22 -/* 05CBB0 8005BFB0 460A9180 */ add.s $f6, $f18, $f10 -/* 05CBB4 8005BFB4 444FF800 */ cfc1 $t7, $31 -/* 05CBB8 8005BFB8 00000000 */ nop -/* 05CBBC 8005BFBC 35E10003 */ ori $at, $t7, 3 -/* 05CBC0 8005BFC0 38210002 */ xori $at, $at, 2 -/* 05CBC4 8005BFC4 44C1F800 */ ctc1 $at, $31 -/* 05CBC8 8005BFC8 00000000 */ nop -/* 05CBCC 8005BFCC 46003124 */ cvt.w.s $f4, $f6 -/* 05CBD0 8005BFD0 44182000 */ mfc1 $t8, $f4 -/* 05CBD4 8005BFD4 44CFF800 */ ctc1 $t7, $31 -/* 05CBD8 8005BFD8 A63801BC */ sh $t8, 0x1bc($s1) -/* 05CBDC 8005BFDC C7A8009C */ lwc1 $f8, 0x9c($sp) -/* 05CBE0 8005BFE0 C7AA0094 */ lwc1 $f10, 0x94($sp) -/* 05CBE4 8005BFE4 46084482 */ mul.s $f18, $f8, $f8 -/* 05CBE8 8005BFE8 00000000 */ nop -/* 05CBEC 8005BFEC 460A5182 */ mul.s $f6, $f10, $f10 -/* 05CBF0 8005BFF0 0C0326B4 */ jal sqrtf -/* 05CBF4 8005BFF4 46069300 */ add.s $f12, $f18, $f6 -/* 05CBF8 8005BFF8 44802000 */ mtc1 $zero, $f4 -/* 05CBFC 8005BFFC C7AC009C */ lwc1 $f12, 0x9c($sp) -/* 05CC00 8005C000 46040032 */ c.eq.s $f0, $f4 -/* 05CC04 8005C004 C7AE0094 */ lwc1 $f14, 0x94($sp) -/* 05CC08 8005C008 45010015 */ bc1t .L8005C060 -/* 05CC0C 8005C00C 00000000 */ nop -/* 05CC10 8005C010 C7A80098 */ lwc1 $f8, 0x98($sp) -/* 05CC14 8005C014 46006303 */ div.s $f12, $f12, $f0 -/* 05CC18 8005C018 00000000 */ nop -/* 05CC1C 8005C01C 46007383 */ div.s $f14, $f14, $f0 -/* 05CC20 8005C020 E7AC009C */ swc1 $f12, 0x9c($sp) -/* 05CC24 8005C024 46004283 */ div.s $f10, $f8, $f0 -/* 05CC28 8005C028 E7AE0094 */ swc1 $f14, 0x94($sp) -/* 05CC2C 8005C02C 0C01C1D4 */ jal func_80070750 -/* 05CC30 8005C030 E7AA0098 */ swc1 $f10, 0x98($sp) -/* 05CC34 8005C034 24018000 */ li $at, -32768 -/* 05CC38 8005C038 00415021 */ addu $t2, $v0, $at -/* 05CC3C 8005C03C A62A01A0 */ sh $t2, 0x1a0($s1) -/* 05CC40 8005C040 863901A0 */ lh $t9, 0x1a0($s1) -/* 05CC44 8005C044 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 05CC48 8005C048 A6790000 */ sh $t9, ($s3) -/* 05CC4C 8005C04C C7AC0098 */ lwc1 $f12, 0x98($sp) -/* 05CC50 8005C050 44817000 */ mtc1 $at, $f14 -/* 05CC54 8005C054 0C01C1D4 */ jal func_80070750 -/* 05CC58 8005C058 00000000 */ nop -/* 05CC5C 8005C05C A6620002 */ sh $v0, 2($s3) -.L8005C060: -/* 05CC60 8005C060 862B01BE */ lh $t3, 0x1be($s1) -/* 05CC64 8005C064 862C01C0 */ lh $t4, 0x1c0($s1) -/* 05CC68 8005C068 862D01A0 */ lh $t5, 0x1a0($s1) -/* 05CC6C 8005C06C A62B01C2 */ sh $t3, 0x1c2($s1) -/* 05CC70 8005C070 A62C01C4 */ sh $t4, 0x1c4($s1) -/* 05CC74 8005C074 A62D01BE */ sh $t5, 0x1be($s1) -/* 05CC78 8005C078 866E0002 */ lh $t6, 2($s3) -/* 05CC7C 8005C07C 4405D000 */ mfc1 $a1, $f26 -/* 05CC80 8005C080 4406C000 */ mfc1 $a2, $f24 -/* 05CC84 8005C084 4407E000 */ mfc1 $a3, $f28 -/* 05CC88 8005C088 02602025 */ move $a0, $s3 -/* 05CC8C 8005C08C 0C00455C */ jal func_80011570 -/* 05CC90 8005C090 A62E01C0 */ sh $t6, 0x1c0($s1) -/* 05CC94 8005C094 1040000A */ beqz $v0, .L8005C0C0 -/* 05CC98 8005C098 3C014034 */ li $at, 0x40340000 # 2.812500 -/* 05CC9C 8005C09C C672000C */ lwc1 $f18, 0xc($s3) -/* 05CCA0 8005C0A0 C6640010 */ lwc1 $f4, 0x10($s3) -/* 05CCA4 8005C0A4 C66A0014 */ lwc1 $f10, 0x14($s3) -/* 05CCA8 8005C0A8 461A9180 */ add.s $f6, $f18, $f26 -/* 05CCAC 8005C0AC 46182200 */ add.s $f8, $f4, $f24 -/* 05CCB0 8005C0B0 E666000C */ swc1 $f6, 0xc($s3) -/* 05CCB4 8005C0B4 461C5480 */ add.s $f18, $f10, $f28 -/* 05CCB8 8005C0B8 E6680010 */ swc1 $f8, 0x10($s3) -/* 05CCBC 8005C0BC E6720014 */ swc1 $f18, 0x14($s3) -.L8005C0C0: -/* 05CCC0 8005C0C0 C7A60090 */ lwc1 $f6, 0x90($sp) -/* 05CCC4 8005C0C4 44814800 */ mtc1 $at, $f9 -/* 05CCC8 8005C0C8 44804000 */ mtc1 $zero, $f8 -/* 05CCCC 8005C0CC 46003121 */ cvt.d.s $f4, $f6 -/* 05CCD0 8005C0D0 4628203C */ c.lt.d $f4, $f8 -/* 05CCD4 8005C0D4 02602025 */ move $a0, $s3 -/* 05CCD8 8005C0D8 45000009 */ bc1f .L8005C100 -/* 05CCDC 8005C0DC 00000000 */ nop -/* 05CCE0 8005C0E0 461ED283 */ div.s $f10, $f26, $f30 -/* 05CCE4 8005C0E4 3C01BF80 */ li $at, 0xBF800000 # -1.000000 -/* 05CCE8 8005C0E8 44819000 */ mtc1 $at, $f18 -/* 05CCEC 8005C0EC 00000000 */ nop -/* 05CCF0 8005C0F0 E6720020 */ swc1 $f18, 0x20($s3) -/* 05CCF4 8005C0F4 461EE183 */ div.s $f6, $f28, $f30 -/* 05CCF8 8005C0F8 E66A001C */ swc1 $f10, 0x1c($s3) -/* 05CCFC 8005C0FC E6660024 */ swc1 $f6, 0x24($s3) -.L8005C100: -/* 05CD00 8005C100 8FA60130 */ lw $a2, 0x130($sp) -/* 05CD04 8005C104 0C010B48 */ jal func_80042D20 -/* 05CD08 8005C108 02202825 */ move $a1, $s1 -/* 05CD0C 8005C10C 8FA60130 */ lw $a2, 0x130($sp) -/* 05CD10 8005C110 02602025 */ move $a0, $s3 -/* 05CD14 8005C114 0C0157B0 */ jal func_80055EC0 -/* 05CD18 8005C118 02202825 */ move $a1, $s1 -/* 05CD1C 8005C11C A22001E5 */ sb $zero, 0x1e5($s1) -/* 05CD20 8005C120 C664000C */ lwc1 $f4, 0xc($s3) -/* 05CD24 8005C124 8E6F004C */ lw $t7, 0x4c($s3) -/* 05CD28 8005C128 44809000 */ mtc1 $zero, $f18 -/* 05CD2C 8005C12C E5E40004 */ swc1 $f4, 4($t7) -/* 05CD30 8005C130 C6680010 */ lwc1 $f8, 0x10($s3) -/* 05CD34 8005C134 8E78004C */ lw $t8, 0x4c($s3) -/* 05CD38 8005C138 44803000 */ mtc1 $zero, $f6 -/* 05CD3C 8005C13C E7080008 */ swc1 $f8, 8($t8) -/* 05CD40 8005C140 C66A0014 */ lwc1 $f10, 0x14($s3) -/* 05CD44 8005C144 8E6A004C */ lw $t2, 0x4c($s3) -/* 05CD48 8005C148 44802000 */ mtc1 $zero, $f4 -/* 05CD4C 8005C14C E54A000C */ swc1 $f10, 0xc($t2) -/* 05CD50 8005C150 44804000 */ mtc1 $zero, $f8 -/* 05CD54 8005C154 A22001E6 */ sb $zero, 0x1e6($s1) -/* 05CD58 8005C158 A62001A2 */ sh $zero, 0x1a2($s1) -/* 05CD5C 8005C15C A62001A6 */ sh $zero, 0x1a6($s1) -/* 05CD60 8005C160 A22001D2 */ sb $zero, 0x1d2($s1) -/* 05CD64 8005C164 E6320078 */ swc1 $f18, 0x78($s1) -/* 05CD68 8005C168 E626007C */ swc1 $f6, 0x7c($s1) -/* 05CD6C 8005C16C E6240080 */ swc1 $f4, 0x80($s1) -/* 05CD70 8005C170 C66A000C */ lwc1 $f10, 0xc($s3) -/* 05CD74 8005C174 E6680020 */ swc1 $f8, 0x20($s3) -/* 05CD78 8005C178 E62A00D8 */ swc1 $f10, 0xd8($s1) -/* 05CD7C 8005C17C C6720010 */ lwc1 $f18, 0x10($s3) -/* 05CD80 8005C180 02602025 */ move $a0, $s3 -/* 05CD84 8005C184 E63200DC */ swc1 $f18, 0xdc($s1) -/* 05CD88 8005C188 C6660014 */ lwc1 $f6, 0x14($s3) -/* 05CD8C 8005C18C 00000000 */ nop -/* 05CD90 8005C190 E62600E0 */ swc1 $f6, 0xe0($s1) -/* 05CD94 8005C194 C664000C */ lwc1 $f4, 0xc($s3) -/* 05CD98 8005C198 00000000 */ nop -/* 05CD9C 8005C19C E62400E4 */ swc1 $f4, 0xe4($s1) -/* 05CDA0 8005C1A0 C6680010 */ lwc1 $f8, 0x10($s3) -/* 05CDA4 8005C1A4 00000000 */ nop -/* 05CDA8 8005C1A8 E62800E8 */ swc1 $f8, 0xe8($s1) -/* 05CDAC 8005C1AC C66A0014 */ lwc1 $f10, 0x14($s3) -/* 05CDB0 8005C1B0 00000000 */ nop -/* 05CDB4 8005C1B4 E62A00EC */ swc1 $f10, 0xec($s1) -/* 05CDB8 8005C1B8 C672000C */ lwc1 $f18, 0xc($s3) -/* 05CDBC 8005C1BC 00000000 */ nop -/* 05CDC0 8005C1C0 E63200F0 */ swc1 $f18, 0xf0($s1) -/* 05CDC4 8005C1C4 C6660010 */ lwc1 $f6, 0x10($s3) -/* 05CDC8 8005C1C8 00000000 */ nop -/* 05CDCC 8005C1CC E62600F4 */ swc1 $f6, 0xf4($s1) -/* 05CDD0 8005C1D0 C6640014 */ lwc1 $f4, 0x14($s3) -/* 05CDD4 8005C1D4 00000000 */ nop -/* 05CDD8 8005C1D8 E62400F8 */ swc1 $f4, 0xf8($s1) -/* 05CDDC 8005C1DC C668000C */ lwc1 $f8, 0xc($s3) -/* 05CDE0 8005C1E0 00000000 */ nop -/* 05CDE4 8005C1E4 E62800FC */ swc1 $f8, 0xfc($s1) -/* 05CDE8 8005C1E8 C66A0010 */ lwc1 $f10, 0x10($s3) -/* 05CDEC 8005C1EC 00000000 */ nop -/* 05CDF0 8005C1F0 E62A0100 */ swc1 $f10, 0x100($s1) -/* 05CDF4 8005C1F4 C6720014 */ lwc1 $f18, 0x14($s3) -/* 05CDF8 8005C1F8 00000000 */ nop -/* 05CDFC 8005C1FC E6320104 */ swc1 $f18, 0x104($s1) -/* 05CE00 8005C200 AE600074 */ sw $zero, 0x74($s3) -/* 05CE04 8005C204 8FA50130 */ lw $a1, 0x130($sp) -/* 05CE08 8005C208 0C02BDC5 */ jal func_800AF714 -/* 05CE0C 8005C20C 00000000 */ nop -.L8005C210: -/* 05CE10 8005C210 8FBF0054 */ lw $ra, 0x54($sp) -/* 05CE14 8005C214 C7B50010 */ lwc1 $f21, 0x10($sp) -/* 05CE18 8005C218 C7B40014 */ lwc1 $f20, 0x14($sp) -/* 05CE1C 8005C21C C7B70018 */ lwc1 $f23, 0x18($sp) -/* 05CE20 8005C220 C7B6001C */ lwc1 $f22, 0x1c($sp) -/* 05CE24 8005C224 C7B90020 */ lwc1 $f25, 0x20($sp) -/* 05CE28 8005C228 C7B80024 */ lwc1 $f24, 0x24($sp) -/* 05CE2C 8005C22C C7BB0028 */ lwc1 $f27, 0x28($sp) -/* 05CE30 8005C230 C7BA002C */ lwc1 $f26, 0x2c($sp) -/* 05CE34 8005C234 C7BD0030 */ lwc1 $f29, 0x30($sp) -/* 05CE38 8005C238 C7BC0034 */ lwc1 $f28, 0x34($sp) -/* 05CE3C 8005C23C C7BF0038 */ lwc1 $f31, 0x38($sp) -/* 05CE40 8005C240 C7BE003C */ lwc1 $f30, 0x3c($sp) -/* 05CE44 8005C244 8FB00044 */ lw $s0, 0x44($sp) -/* 05CE48 8005C248 8FB10048 */ lw $s1, 0x48($sp) -/* 05CE4C 8005C24C 8FB2004C */ lw $s2, 0x4c($sp) -/* 05CE50 8005C250 8FB30050 */ lw $s3, 0x50($sp) -/* 05CE54 8005C254 03E00008 */ jr $ra -/* 05CE58 8005C258 27BD0128 */ addiu $sp, $sp, 0x128 - -glabel func_8005C25C -/* 05CE5C 8005C25C 3C01800E */ lui $at, %hi(D_800E6A00) # $at, 0x800e -/* 05CE60 8005C260 C4246A00 */ lwc1 $f4, %lo(D_800E6A00)($at) -/* 05CE64 8005C264 3C01800E */ lui $at, 0x800e -/* 05CE68 8005C268 03E00008 */ jr $ra -/* 05CE6C 8005C26C E424CB9C */ swc1 $f4, -0x3464($at) - -glabel func_8005C270 -/* 05CE70 8005C270 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 05CE74 8005C274 AFBF0014 */ sw $ra, 0x14($sp) -/* 05CE78 8005C278 0C006E99 */ jal func_8001BA64 -/* 05CE7C 8005C27C AFA40018 */ sw $a0, 0x18($sp) -/* 05CE80 8005C280 8FA40018 */ lw $a0, 0x18($sp) -/* 05CE84 8005C284 00000000 */ nop -/* 05CE88 8005C288 808E0192 */ lb $t6, 0x192($a0) -/* 05CE8C 8005C28C 00000000 */ nop -/* 05CE90 8005C290 25CFFFFF */ addiu $t7, $t6, -1 -/* 05CE94 8005C294 A08F0192 */ sb $t7, 0x192($a0) -/* 05CE98 8005C298 80830192 */ lb $v1, 0x192($a0) -/* 05CE9C 8005C29C 00000000 */ nop -/* 05CEA0 8005C2A0 04610007 */ bgez $v1, .L8005C2C0 -/* 05CEA4 8005C2A4 00000000 */ nop -/* 05CEA8 8005C2A8 80850193 */ lb $a1, 0x193($a0) -/* 05CEAC 8005C2AC 0062C021 */ addu $t8, $v1, $v0 -/* 05CEB0 8005C2B0 18A00003 */ blez $a1, .L8005C2C0 -/* 05CEB4 8005C2B4 A0980192 */ sb $t8, 0x192($a0) -/* 05CEB8 8005C2B8 24B9FFFF */ addiu $t9, $a1, -1 -/* 05CEBC 8005C2BC A0990193 */ sb $t9, 0x193($a0) -.L8005C2C0: -/* 05CEC0 8005C2C0 84820190 */ lh $v0, 0x190($a0) -/* 05CEC4 8005C2C4 00000000 */ nop -/* 05CEC8 8005C2C8 28418301 */ slti $at, $v0, -0x7cff -/* 05CECC 8005C2CC 14200002 */ bnez $at, .L8005C2D8 -/* 05CED0 8005C2D0 2448FFFF */ addiu $t0, $v0, -1 -/* 05CED4 8005C2D4 A4880190 */ sh $t0, 0x190($a0) -.L8005C2D8: -/* 05CED8 8005C2D8 8FBF0014 */ lw $ra, 0x14($sp) -/* 05CEDC 8005C2DC 27BD0018 */ addiu $sp, $sp, 0x18 -/* 05CEE0 8005C2E0 03E00008 */ jr $ra -/* 05CEE4 8005C2E4 00000000 */ nop - -/* 05CEE8 8005C2E8 00000000 */ nop -/* 05CEEC 8005C2EC 00000000 */ nop diff --git a/asm/unknown_05DCD0.s b/asm/unknown_05DCD0.s deleted file mode 100755 index eeb78b86..00000000 --- a/asm/unknown_05DCD0.s +++ /dev/null @@ -1,1380 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_8005D0D0 -/* 05DCD0 8005D0D0 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 05DCD4 8005D0D4 AFA40060 */ sw $a0, 0x60($sp) -/* 05DCD8 8005D0D8 AFBF002C */ sw $ra, 0x2c($sp) -/* 05DCDC 8005D0DC AFB10028 */ sw $s1, 0x28($sp) -/* 05DCE0 8005D0E0 AFB00024 */ sw $s0, 0x24($sp) -/* 05DCE4 8005D0E4 3C04800E */ lui $a0, %hi(D_800DCE00) # $a0, 0x800e -/* 05DCE8 8005D0E8 00E08025 */ move $s0, $a3 -/* 05DCEC 8005D0EC 00C08825 */ move $s1, $a2 -/* 05DCF0 8005D0F0 E7B50018 */ swc1 $f21, 0x18($sp) -/* 05DCF4 8005D0F4 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 05DCF8 8005D0F8 AFA50064 */ sw $a1, 0x64($sp) -/* 05DCFC 8005D0FC 0C01729E */ jal func_8005CA78 -/* 05DD00 8005D100 2484CE00 */ addiu $a0, %lo(D_800DCE00) # addiu $a0, $a0, -0x3200 -/* 05DD04 8005D104 8FA20074 */ lw $v0, 0x74($sp) -/* 05DD08 8005D108 8FA50070 */ lw $a1, 0x70($sp) -/* 05DD0C 8005D10C 8C4E0000 */ lw $t6, ($v0) -/* 05DD10 8005D110 2403FFEF */ li $v1, -17 -/* 05DD14 8005D114 01C37824 */ and $t7, $t6, $v1 -/* 05DD18 8005D118 AC4F0000 */ sw $t7, ($v0) -/* 05DD1C 8005D11C 8CB80000 */ lw $t8, ($a1) -/* 05DD20 8005D120 24010001 */ li $at, 1 -/* 05DD24 8005D124 0303C824 */ and $t9, $t8, $v1 -/* 05DD28 8005D128 ACB90000 */ sw $t9, ($a1) -/* 05DD2C 8005D12C 822A003B */ lb $t2, 0x3b($s1) -/* 05DD30 8005D130 00000000 */ nop -/* 05DD34 8005D134 A7AA005E */ sh $t2, 0x5e($sp) -/* 05DD38 8005D138 862B0018 */ lh $t3, 0x18($s1) -/* 05DD3C 8005D13C 00000000 */ nop -/* 05DD40 8005D140 A7AB005C */ sh $t3, 0x5c($sp) -/* 05DD44 8005D144 860C016A */ lh $t4, 0x16a($s0) -/* 05DD48 8005D148 00000000 */ nop -/* 05DD4C 8005D14C A7AC005A */ sh $t4, 0x5a($sp) -/* 05DD50 8005D150 820D01D8 */ lb $t5, 0x1d8($s0) -/* 05DD54 8005D154 00000000 */ nop -/* 05DD58 8005D158 15A1000C */ bne $t5, $at, .L8005D18C -/* 05DD5C 8005D15C 8FA90078 */ lw $t1, 0x78($sp) -/* 05DD60 8005D160 0C008D5A */ jal func_80023568 -/* 05DD64 8005D164 00000000 */ nop -/* 05DD68 8005D168 10400008 */ beqz $v0, .L8005D18C -/* 05DD6C 8005D16C 8FA90078 */ lw $t1, 0x78($sp) -/* 05DD70 8005D170 0C008500 */ jal func_80021400 -/* 05DD74 8005D174 24040082 */ li $a0, 130 -/* 05DD78 8005D178 820E01D8 */ lb $t6, 0x1d8($s0) -/* 05DD7C 8005D17C 00000000 */ nop -/* 05DD80 8005D180 25CF0001 */ addiu $t7, $t6, 1 -/* 05DD84 8005D184 A20F01D8 */ sb $t7, 0x1d8($s0) -/* 05DD88 8005D188 8FA90078 */ lw $t1, 0x78($sp) -.L8005D18C: -/* 05DD8C 8005D18C 24040064 */ li $a0, 100 -/* 05DD90 8005D190 8D230000 */ lw $v1, ($t1) -/* 05DD94 8005D194 8FA50070 */ lw $a1, 0x70($sp) -/* 05DD98 8005D198 14640002 */ bne $v1, $a0, .L8005D1A4 -/* 05DD9C 8005D19C 3C018012 */ lui $at, %hi(D_8011D5D0) # $at, 0x8012 -/* 05DDA0 8005D1A0 A020D5D0 */ sb $zero, %lo(D_8011D5D0)($at) -.L8005D1A4: -/* 05DDA4 8005D1A4 86180000 */ lh $t8, ($s0) -/* 05DDA8 8005D1A8 2408FFFF */ li $t0, -1 -/* 05DDAC 8005D1AC 1518001F */ bne $t0, $t8, .L8005D22C -/* 05DDB0 8005D1B0 00000000 */ nop -/* 05DDB4 8005D1B4 8D220000 */ lw $v0, ($t1) -/* 05DDB8 8005D1B8 00000000 */ nop -/* 05DDBC 8005D1BC 1082001B */ beq $a0, $v0, .L8005D22C -/* 05DDC0 8005D1C0 2459FFF1 */ addiu $t9, $v0, -0xf -/* 05DDC4 8005D1C4 07210017 */ bgez $t9, .L8005D224 -/* 05DDC8 8005D1C8 AD390000 */ sw $t9, ($t1) -/* 05DDCC 8005D1CC 3C0B8012 */ lui $t3, %hi(D_8011D5D1) # $t3, 0x8012 -/* 05DDD0 8005D1D0 816BD5D1 */ lb $t3, %lo(D_8011D5D1)($t3) -/* 05DDD4 8005D1D4 00002025 */ move $a0, $zero -/* 05DDD8 8005D1D8 1560000A */ bnez $t3, .L8005D204 -/* 05DDDC 8005D1DC 240D0001 */ li $t5, 1 -/* 05DDE0 8005D1E0 0C0172C1 */ jal func_8005CB04 -/* 05DDE4 8005D1E4 AFA30048 */ sw $v1, 0x48($sp) -/* 05DDE8 8005D1E8 8FA30048 */ lw $v1, 0x48($sp) -/* 05DDEC 8005D1EC 8FA90078 */ lw $t1, 0x78($sp) -/* 05DDF0 8005D1F0 240C0003 */ li $t4, 3 -/* 05DDF4 8005D1F4 A20C01D3 */ sb $t4, 0x1d3($s0) -/* 05DDF8 8005D1F8 8FA50070 */ lw $a1, 0x70($sp) -/* 05DDFC 8005D1FC 00000000 */ nop -/* 05DE00 8005D200 240D0001 */ li $t5, 1 -.L8005D204: -/* 05DE04 8005D204 3C018012 */ lui $at, %hi(D_8011D5D1) # $at, 0x8012 -/* 05DE08 8005D208 A02DD5D1 */ sb $t5, %lo(D_8011D5D1)($at) -/* 05DE0C 8005D20C AD200000 */ sw $zero, ($t1) -/* 05DE10 8005D210 8CAE0000 */ lw $t6, ($a1) -/* 05DE14 8005D214 00000000 */ nop -/* 05DE18 8005D218 35CF8000 */ ori $t7, $t6, 0x8000 -/* 05DE1C 8005D21C 10000003 */ b .L8005D22C -/* 05DE20 8005D220 ACAF0000 */ sw $t7, ($a1) -.L8005D224: -/* 05DE24 8005D224 3C018012 */ lui $at, %hi(D_8011D5D1) # $at, 0x8012 -/* 05DE28 8005D228 A020D5D1 */ sb $zero, %lo(D_8011D5D1)($at) -.L8005D22C: -/* 05DE2C 8005D22C 8FA40060 */ lw $a0, 0x60($sp) -/* 05DE30 8005D230 8FA50064 */ lw $a1, 0x64($sp) -/* 05DE34 8005D234 02203025 */ move $a2, $s1 -/* 05DE38 8005D238 02003825 */ move $a3, $s0 -/* 05DE3C 8005D23C 0C013DFD */ jal func_8004F7F4 -/* 05DE40 8005D240 AFA30048 */ sw $v1, 0x48($sp) -/* 05DE44 8005D244 8FA30048 */ lw $v1, 0x48($sp) -/* 05DE48 8005D248 8FA90078 */ lw $t1, 0x78($sp) -/* 05DE4C 8005D24C 44808000 */ mtc1 $zero, $f16 -/* 05DE50 8005D250 AD230000 */ sw $v1, ($t1) -/* 05DE54 8005D254 E6100030 */ swc1 $f16, 0x30($s0) -/* 05DE58 8005D258 87B8005A */ lh $t8, 0x5a($sp) -/* 05DE5C 8005D25C 00000000 */ nop -/* 05DE60 8005D260 A618016A */ sh $t8, 0x16a($s0) -/* 05DE64 8005D264 87B9005E */ lh $t9, 0x5e($sp) -/* 05DE68 8005D268 00000000 */ nop -/* 05DE6C 8005D26C A239003B */ sb $t9, 0x3b($s1) -/* 05DE70 8005D270 87AA005C */ lh $t2, 0x5c($sp) -/* 05DE74 8005D274 00000000 */ nop -/* 05DE78 8005D278 A62A0018 */ sh $t2, 0x18($s1) -/* 05DE7C 8005D27C 820B0187 */ lb $t3, 0x187($s0) -/* 05DE80 8005D280 00000000 */ nop -/* 05DE84 8005D284 11600023 */ beqz $t3, .L8005D314 -/* 05DE88 8005D288 00000000 */ nop -/* 05DE8C 8005D28C 8223003B */ lb $v1, 0x3b($s1) -/* 05DE90 8005D290 24010004 */ li $at, 4 -/* 05DE94 8005D294 1061001F */ beq $v1, $at, .L8005D314 -/* 05DE98 8005D298 240C0004 */ li $t4, 4 -/* 05DE9C 8005D29C A20301CD */ sb $v1, 0x1cd($s0) -/* 05DEA0 8005D2A0 A22C003B */ sb $t4, 0x3b($s1) -/* 05DEA4 8005D2A4 E610000C */ swc1 $f16, 0xc($s0) -/* 05DEA8 8005D2A8 0C0172C1 */ jal func_8005CB04 -/* 05DEAC 8005D2AC 24040001 */ li $a0, 1 -/* 05DEB0 8005D2B0 24040011 */ li $a0, 17 -/* 05DEB4 8005D2B4 0C000741 */ jal func_80001D04 -/* 05DEB8 8005D2B8 00002825 */ move $a1, $zero -/* 05DEBC 8005D2BC 3C014140 */ li $at, 0x41400000 # 12.000000 -/* 05DEC0 8005D2C0 44816000 */ mtc1 $at, $f12 -/* 05DEC4 8005D2C4 0C01A7CA */ jal func_80069F28 -/* 05DEC8 8005D2C8 00000000 */ nop -/* 05DECC 8005D2CC A2000187 */ sb $zero, 0x187($s0) -/* 05DED0 8005D2D0 3C01800E */ lui $at, %hi(D_800E6A34) # $at, 0x800e -/* 05DED4 8005D2D4 C604002C */ lwc1 $f4, 0x2c($s0) -/* 05DED8 8005D2D8 C4296A30 */ lwc1 $f9, %lo(D_800E6A30)($at) -/* 05DEDC 8005D2DC C4286A34 */ lwc1 $f8, %lo(D_800E6A34)($at) -/* 05DEE0 8005D2E0 460021A1 */ cvt.d.s $f6, $f4 -/* 05DEE4 8005D2E4 46283282 */ mul.d $f10, $f6, $f8 -/* 05DEE8 8005D2E8 3C01401E */ li $at, 0x401E0000 # 2.468750 -/* 05DEEC 8005D2EC 44814800 */ mtc1 $at, $f9 -/* 05DEF0 8005D2F0 44804000 */ mtc1 $zero, $f8 -/* 05DEF4 8005D2F4 462054A0 */ cvt.s.d $f18, $f10 -/* 05DEF8 8005D2F8 E612002C */ swc1 $f18, 0x2c($s0) -/* 05DEFC 8005D2FC C6240020 */ lwc1 $f4, 0x20($s1) -/* 05DF00 8005D300 00000000 */ nop -/* 05DF04 8005D304 460021A1 */ cvt.d.s $f6, $f4 -/* 05DF08 8005D308 46283280 */ add.d $f10, $f6, $f8 -/* 05DF0C 8005D30C 462054A0 */ cvt.s.d $f18, $f10 -/* 05DF10 8005D310 E6320020 */ swc1 $f18, 0x20($s1) -.L8005D314: -/* 05DF14 8005D314 8E0D0148 */ lw $t5, 0x148($s0) -/* 05DF18 8005D318 00000000 */ nop -/* 05DF1C 8005D31C 11A0000E */ beqz $t5, .L8005D358 -/* 05DF20 8005D320 00000000 */ nop -/* 05DF24 8005D324 C620001C */ lwc1 $f0, 0x1c($s1) -/* 05DF28 8005D328 C6220024 */ lwc1 $f2, 0x24($s1) -/* 05DF2C 8005D32C 46000502 */ mul.s $f20, $f0, $f0 -/* 05DF30 8005D330 00000000 */ nop -/* 05DF34 8005D334 46021382 */ mul.s $f14, $f2, $f2 -/* 05DF38 8005D338 00000000 */ nop -/* 05DF3C 8005D33C 4614A102 */ mul.s $f4, $f20, $f20 -/* 05DF40 8005D340 00000000 */ nop -/* 05DF44 8005D344 460E7182 */ mul.s $f6, $f14, $f14 -/* 05DF48 8005D348 0C0326B4 */ jal sqrtf -/* 05DF4C 8005D34C 46062300 */ add.s $f12, $f4, $f6 -/* 05DF50 8005D350 46000207 */ neg.s $f8, $f0 -/* 05DF54 8005D354 E608002C */ swc1 $f8, 0x2c($s0) -.L8005D358: -/* 05DF58 8005D358 82040192 */ lb $a0, 0x192($s0) -/* 05DF5C 8005D35C 920501C8 */ lbu $a1, 0x1c8($s0) -/* 05DF60 8005D360 0C006E87 */ jal func_8001BA1C -/* 05DF64 8005D364 AFA0003C */ sw $zero, 0x3c($sp) -/* 05DF68 8005D368 820E01CA */ lb $t6, 0x1ca($s0) -/* 05DF6C 8005D36C 8FA3003C */ lw $v1, 0x3c($sp) -/* 05DF70 8005D370 004E7821 */ addu $t7, $v0, $t6 -/* 05DF74 8005D374 81F80036 */ lb $t8, 0x36($t7) -/* 05DF78 8005D378 44808000 */ mtc1 $zero, $f16 -/* 05DF7C 8005D37C 24010001 */ li $at, 1 -/* 05DF80 8005D380 17010002 */ bne $t8, $at, .L8005D38C -/* 05DF84 8005D384 2408FFFF */ li $t0, -1 -/* 05DF88 8005D388 24030001 */ li $v1, 1 -.L8005D38C: -/* 05DF8C 8005D38C 8239003B */ lb $t9, 0x3b($s1) -/* 05DF90 8005D390 24010004 */ li $at, 4 -/* 05DF94 8005D394 13210063 */ beq $t9, $at, .L8005D524 -/* 05DF98 8005D398 00000000 */ nop -/* 05DF9C 8005D39C C60A002C */ lwc1 $f10, 0x2c($s0) -/* 05DFA0 8005D3A0 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 05DFA4 8005D3A4 44819800 */ mtc1 $at, $f19 -/* 05DFA8 8005D3A8 44809000 */ mtc1 $zero, $f18 -/* 05DFAC 8005D3AC 46005021 */ cvt.d.s $f0, $f10 -/* 05DFB0 8005D3B0 4632003C */ c.lt.d $f0, $f18 -/* 05DFB4 8005D3B4 3C01800E */ lui $at, %hi(D_800E6A3C) # $at, 0x800e -/* 05DFB8 8005D3B8 45000036 */ bc1f .L8005D494 -/* 05DFBC 8005D3BC 00000000 */ nop -/* 05DFC0 8005D3C0 10600024 */ beqz $v1, .L8005D454 -/* 05DFC4 8005D3C4 240B0003 */ li $t3, 3 -/* 05DFC8 8005D3C8 920A01CD */ lbu $t2, 0x1cd($s0) -/* 05DFCC 8005D3CC 24010003 */ li $at, 3 -/* 05DFD0 8005D3D0 11410004 */ beq $t2, $at, .L8005D3E4 -/* 05DFD4 8005D3D4 3C014220 */ li $at, 0x42200000 # 40.000000 -/* 05DFD8 8005D3D8 44812000 */ mtc1 $at, $f4 -/* 05DFDC 8005D3DC 00000000 */ nop -/* 05DFE0 8005D3E0 E604000C */ swc1 $f4, 0xc($s0) -.L8005D3E4: -/* 05DFE4 8005D3E4 A22B003B */ sb $t3, 0x3b($s1) -/* 05DFE8 8005D3E8 820201E1 */ lb $v0, 0x1e1($s0) -/* 05DFEC 8005D3EC 240D0028 */ li $t5, 40 -/* 05DFF0 8005D3F0 00026040 */ sll $t4, $v0, 1 -/* 05DFF4 8005D3F4 01AC1023 */ subu $v0, $t5, $t4 -/* 05DFF8 8005D3F8 04410003 */ bgez $v0, .L8005D408 -/* 05DFFC 8005D3FC 2841004A */ slti $at, $v0, 0x4a -/* 05E000 8005D400 00001025 */ move $v0, $zero -/* 05E004 8005D404 2841004A */ slti $at, $v0, 0x4a -.L8005D408: -/* 05E008 8005D408 14200002 */ bnez $at, .L8005D414 -/* 05E00C 8005D40C 00000000 */ nop -/* 05E010 8005D410 24020049 */ li $v0, 73 -.L8005D414: -/* 05E014 8005D414 44823000 */ mtc1 $v0, $f6 -/* 05E018 8005D418 C600000C */ lwc1 $f0, 0xc($s0) -/* 05E01C 8005D41C 46803220 */ cvt.s.w $f8, $f6 -/* 05E020 8005D420 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 05E024 8005D424 44812800 */ mtc1 $at, $f5 -/* 05E028 8005D428 46004281 */ sub.s $f10, $f8, $f0 -/* 05E02C 8005D42C 44802000 */ mtc1 $zero, $f4 -/* 05E030 8005D430 460054A1 */ cvt.d.s $f18, $f10 -/* 05E034 8005D434 46249182 */ mul.d $f6, $f18, $f4 -/* 05E038 8005D438 46000221 */ cvt.d.s $f8, $f0 -/* 05E03C 8005D43C 240E0003 */ li $t6, 3 -/* 05E040 8005D440 A20E01CD */ sb $t6, 0x1cd($s0) -/* 05E044 8005D444 46264280 */ add.d $f10, $f8, $f6 -/* 05E048 8005D448 462054A0 */ cvt.s.d $f18, $f10 -/* 05E04C 8005D44C 1000003C */ b .L8005D540 -/* 05E050 8005D450 E612000C */ swc1 $f18, 0xc($s0) -.L8005D454: -/* 05E054 8005D454 A20001CD */ sb $zero, 0x1cd($s0) -/* 05E058 8005D458 A220003B */ sb $zero, 0x3b($s1) -/* 05E05C 8005D45C C7A80064 */ lwc1 $f8, 0x64($sp) -/* 05E060 8005D460 C604002C */ lwc1 $f4, 0x2c($s0) -/* 05E064 8005D464 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 05E068 8005D468 46082182 */ mul.s $f6, $f4, $f8 -/* 05E06C 8005D46C 44819800 */ mtc1 $at, $f19 -/* 05E070 8005D470 44809000 */ mtc1 $zero, $f18 -/* 05E074 8005D474 C608000C */ lwc1 $f8, 0xc($s0) -/* 05E078 8005D478 460032A1 */ cvt.d.s $f10, $f6 -/* 05E07C 8005D47C 46325102 */ mul.d $f4, $f10, $f18 -/* 05E080 8005D480 460041A1 */ cvt.d.s $f6, $f8 -/* 05E084 8005D484 46243281 */ sub.d $f10, $f6, $f4 -/* 05E088 8005D488 462054A0 */ cvt.s.d $f18, $f10 -/* 05E08C 8005D48C 1000002C */ b .L8005D540 -/* 05E090 8005D490 E612000C */ swc1 $f18, 0xc($s0) -.L8005D494: -/* 05E094 8005D494 C4296A38 */ lwc1 $f9, %lo(D_800E6A38)($at) -/* 05E098 8005D498 C4286A3C */ lwc1 $f8, %lo(D_800E6A3C)($at) -/* 05E09C 8005D49C 3C01800E */ lui $at, %hi(D_800E6A44) # $at, 0x800e -/* 05E0A0 8005D4A0 4628003C */ c.lt.d $f0, $f8 -/* 05E0A4 8005D4A4 240F0001 */ li $t7, 1 -/* 05E0A8 8005D4A8 45010008 */ bc1t .L8005D4CC -/* 05E0AC 8005D4AC 24180001 */ li $t8, 1 -/* 05E0B0 8005D4B0 C4276A40 */ lwc1 $f7, %lo(D_800E6A40)($at) -/* 05E0B4 8005D4B4 C4266A44 */ lwc1 $f6, %lo(D_800E6A44)($at) -/* 05E0B8 8005D4B8 24190002 */ li $t9, 2 -/* 05E0BC 8005D4BC 4620303C */ c.lt.d $f6, $f0 -/* 05E0C0 8005D4C0 240A0002 */ li $t2, 2 -/* 05E0C4 8005D4C4 4500000D */ bc1f .L8005D4FC -/* 05E0C8 8005D4C8 00000000 */ nop -.L8005D4CC: -/* 05E0CC 8005D4CC A20F01CD */ sb $t7, 0x1cd($s0) -/* 05E0D0 8005D4D0 A238003B */ sb $t8, 0x3b($s1) -/* 05E0D4 8005D4D4 C7AA0064 */ lwc1 $f10, 0x64($sp) -/* 05E0D8 8005D4D8 C604002C */ lwc1 $f4, 0x2c($s0) -/* 05E0DC 8005D4DC 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 05E0E0 8005D4E0 460A2482 */ mul.s $f18, $f4, $f10 -/* 05E0E4 8005D4E4 44814000 */ mtc1 $at, $f8 -/* 05E0E8 8005D4E8 C604000C */ lwc1 $f4, 0xc($s0) -/* 05E0EC 8005D4EC 46089182 */ mul.s $f6, $f18, $f8 -/* 05E0F0 8005D4F0 46062281 */ sub.s $f10, $f4, $f6 -/* 05E0F4 8005D4F4 10000012 */ b .L8005D540 -/* 05E0F8 8005D4F8 E60A000C */ swc1 $f10, 0xc($s0) -.L8005D4FC: -/* 05E0FC 8005D4FC A21901CD */ sb $t9, 0x1cd($s0) -/* 05E100 8005D500 A22A003B */ sb $t2, 0x3b($s1) -/* 05E104 8005D504 C612000C */ lwc1 $f18, 0xc($s0) -/* 05E108 8005D508 C7A40064 */ lwc1 $f4, 0x64($sp) -/* 05E10C 8005D50C 46009221 */ cvt.d.s $f8, $f18 -/* 05E110 8005D510 460021A1 */ cvt.d.s $f6, $f4 -/* 05E114 8005D514 46264280 */ add.d $f10, $f8, $f6 -/* 05E118 8005D518 462054A0 */ cvt.s.d $f18, $f10 -/* 05E11C 8005D51C 10000008 */ b .L8005D540 -/* 05E120 8005D520 E612000C */ swc1 $f18, 0xc($s0) -.L8005D524: -/* 05E124 8005D524 C604000C */ lwc1 $f4, 0xc($s0) -/* 05E128 8005D528 C7A60064 */ lwc1 $f6, 0x64($sp) -/* 05E12C 8005D52C 46002221 */ cvt.d.s $f8, $f4 -/* 05E130 8005D530 460032A1 */ cvt.d.s $f10, $f6 -/* 05E134 8005D534 462A4480 */ add.d $f18, $f8, $f10 -/* 05E138 8005D538 46209120 */ cvt.s.d $f4, $f18 -/* 05E13C 8005D53C E604000C */ swc1 $f4, 0xc($s0) -.L8005D540: -/* 05E140 8005D540 8E2B0068 */ lw $t3, 0x68($s1) -/* 05E144 8005D544 822D003B */ lb $t5, 0x3b($s1) -/* 05E148 8005D548 8D620000 */ lw $v0, ($t3) -/* 05E14C 8005D54C 000D70C0 */ sll $t6, $t5, 3 -/* 05E150 8005D550 8C430000 */ lw $v1, ($v0) -/* 05E154 8005D554 C600000C */ lwc1 $f0, 0xc($s0) -/* 05E158 8005D558 8C6C0044 */ lw $t4, 0x44($v1) -/* 05E15C 8005D55C 4610003C */ c.lt.s $f0, $f16 -/* 05E160 8005D560 018E7821 */ addu $t7, $t4, $t6 -/* 05E164 8005D564 8DF80004 */ lw $t8, 4($t7) -/* 05E168 8005D568 00000000 */ nop -/* 05E16C 8005D56C 0018C900 */ sll $t9, $t8, 4 -/* 05E170 8005D570 272AFFEF */ addiu $t2, $t9, -0x11 -/* 05E174 8005D574 448A3000 */ mtc1 $t2, $f6 -/* 05E178 8005D578 4500000A */ bc1f .L8005D5A4 -/* 05E17C 8005D57C 46803520 */ cvt.s.w $f20, $f6 -.L8005D580: -/* 05E180 8005D580 46140200 */ add.s $f8, $f0, $f20 -/* 05E184 8005D584 E608000C */ swc1 $f8, 0xc($s0) -/* 05E188 8005D588 A4480010 */ sh $t0, 0x10($v0) -/* 05E18C 8005D58C C600000C */ lwc1 $f0, 0xc($s0) -/* 05E190 8005D590 00000000 */ nop -/* 05E194 8005D594 4610003C */ c.lt.s $f0, $f16 -/* 05E198 8005D598 00000000 */ nop -/* 05E19C 8005D59C 4501FFF8 */ bc1t .L8005D580 -/* 05E1A0 8005D5A0 00000000 */ nop -.L8005D5A4: -/* 05E1A4 8005D5A4 4600A03C */ c.lt.s $f20, $f0 -/* 05E1A8 8005D5A8 00000000 */ nop -/* 05E1AC 8005D5AC 4500000A */ bc1f .L8005D5D8 -/* 05E1B0 8005D5B0 00000000 */ nop -.L8005D5B4: -/* 05E1B4 8005D5B4 46140281 */ sub.s $f10, $f0, $f20 -/* 05E1B8 8005D5B8 E60A000C */ swc1 $f10, 0xc($s0) -/* 05E1BC 8005D5BC A4480010 */ sh $t0, 0x10($v0) -/* 05E1C0 8005D5C0 C600000C */ lwc1 $f0, 0xc($s0) -/* 05E1C4 8005D5C4 00000000 */ nop -/* 05E1C8 8005D5C8 4600A03C */ c.lt.s $f20, $f0 -/* 05E1CC 8005D5CC 00000000 */ nop -/* 05E1D0 8005D5D0 4501FFF8 */ bc1t .L8005D5B4 -/* 05E1D4 8005D5D4 00000000 */ nop -.L8005D5D8: -/* 05E1D8 8005D5D8 844B0010 */ lh $t3, 0x10($v0) -/* 05E1DC 8005D5DC 8223003B */ lb $v1, 0x3b($s1) -/* 05E1E0 8005D5E0 150B0009 */ bne $t0, $t3, .L8005D608 -/* 05E1E4 8005D5E4 24010004 */ li $at, 4 -/* 05E1E8 8005D5E8 14610007 */ bne $v1, $at, .L8005D608 -/* 05E1EC 8005D5EC 00000000 */ nop -/* 05E1F0 8005D5F0 920D01CD */ lbu $t5, 0x1cd($s0) -/* 05E1F4 8005D5F4 00000000 */ nop -/* 05E1F8 8005D5F8 A22D003B */ sb $t5, 0x3b($s1) -/* 05E1FC 8005D5FC C600000C */ lwc1 $f0, 0xc($s0) -/* 05E200 8005D600 8223003B */ lb $v1, 0x3b($s1) -/* 05E204 8005D604 00000000 */ nop -.L8005D608: -/* 05E208 8005D608 444EF800 */ cfc1 $t6, $31 -/* 05E20C 8005D60C 862C0018 */ lh $t4, 0x18($s1) -/* 05E210 8005D610 35C10003 */ ori $at, $t6, 3 -/* 05E214 8005D614 38210002 */ xori $at, $at, 2 -/* 05E218 8005D618 44C1F800 */ ctc1 $at, $31 -/* 05E21C 8005D61C A7AC005C */ sh $t4, 0x5c($sp) -/* 05E220 8005D620 460004A4 */ cvt.w.s $f18, $f0 -/* 05E224 8005D624 AE200074 */ sw $zero, 0x74($s1) -/* 05E228 8005D628 440F9000 */ mfc1 $t7, $f18 -/* 05E22C 8005D62C 44CEF800 */ ctc1 $t6, $31 -/* 05E230 8005D630 1460000C */ bnez $v1, .L8005D664 -/* 05E234 8005D634 A62F0018 */ sh $t7, 0x18($s1) -/* 05E238 8005D638 87A6005C */ lh $a2, 0x5c($sp) -/* 05E23C 8005D63C 241800AD */ li $t8, 173 -/* 05E240 8005D640 AFB80010 */ sw $t8, 0x10($sp) -/* 05E244 8005D644 02202025 */ move $a0, $s1 -/* 05E248 8005D648 24050002 */ li $a1, 2 -/* 05E24C 8005D64C 0C0044F3 */ jal func_800113CC -/* 05E250 8005D650 240700AC */ li $a3, 172 -/* 05E254 8005D654 8E390074 */ lw $t9, 0x74($s1) -/* 05E258 8005D658 00000000 */ nop -/* 05E25C 8005D65C 372A0003 */ ori $t2, $t9, 3 -/* 05E260 8005D660 AE2A0074 */ sw $t2, 0x74($s1) -.L8005D664: -/* 05E264 8005D664 8FA50060 */ lw $a1, 0x60($sp) -/* 05E268 8005D668 0C02BF0F */ jal func_800AFC3C -/* 05E26C 8005D66C 02202025 */ move $a0, $s1 -/* 05E270 8005D670 02202025 */ move $a0, $s1 -/* 05E274 8005D674 02002825 */ move $a1, $s0 -/* 05E278 8005D678 0C017412 */ jal func_8005D048 -/* 05E27C 8005D67C 24060028 */ li $a2, 40 -/* 05E280 8005D680 0C006EB2 */ jal func_8001BAC8 -/* 05E284 8005D684 00002025 */ move $a0, $zero -/* 05E288 8005D688 AFA20034 */ sw $v0, 0x34($sp) -/* 05E28C 8005D68C C626000C */ lwc1 $f6, 0xc($s1) -/* 05E290 8005D690 C444000C */ lwc1 $f4, 0xc($v0) -/* 05E294 8005D694 C62A0014 */ lwc1 $f10, 0x14($s1) -/* 05E298 8005D698 46062501 */ sub.s $f20, $f4, $f6 -/* 05E29C 8005D69C C4480014 */ lwc1 $f8, 0x14($v0) -/* 05E2A0 8005D6A0 4614A482 */ mul.s $f18, $f20, $f20 -/* 05E2A4 8005D6A4 460A4381 */ sub.s $f14, $f8, $f10 -/* 05E2A8 8005D6A8 E7AE0050 */ swc1 $f14, 0x50($sp) -/* 05E2AC 8005D6AC 460E7102 */ mul.s $f4, $f14, $f14 -/* 05E2B0 8005D6B0 0C0326B4 */ jal sqrtf -/* 05E2B4 8005D6B4 46049300 */ add.s $f12, $f18, $f4 -/* 05E2B8 8005D6B8 3C01800E */ lui $at, %hi(D_800E6A4C) # $at, 0x800e -/* 05E2BC 8005D6BC C4296A48 */ lwc1 $f9, %lo(D_800E6A48)($at) -/* 05E2C0 8005D6C0 C4286A4C */ lwc1 $f8, %lo(D_800E6A4C)($at) -/* 05E2C4 8005D6C4 460001A1 */ cvt.d.s $f6, $f0 -/* 05E2C8 8005D6C8 4628303C */ c.lt.d $f6, $f8 -/* 05E2CC 8005D6CC C7AE0050 */ lwc1 $f14, 0x50($sp) -/* 05E2D0 8005D6D0 4500001B */ bc1f .L8005D740 -/* 05E2D4 8005D6D4 00000000 */ nop -/* 05E2D8 8005D6D8 0C01C1D4 */ jal func_80070750 -/* 05E2DC 8005D6DC 4600A306 */ mov.s $f12, $f20 -/* 05E2E0 8005D6E0 862B0000 */ lh $t3, ($s1) -/* 05E2E4 8005D6E4 34018000 */ li $at, 32768 -/* 05E2E8 8005D6E8 316DFFFF */ andi $t5, $t3, 0xffff -/* 05E2EC 8005D6EC 004D1823 */ subu $v1, $v0, $t5 -/* 05E2F0 8005D6F0 00611821 */ addu $v1, $v1, $at -/* 05E2F4 8005D6F4 34018001 */ li $at, 32769 -/* 05E2F8 8005D6F8 0061082A */ slt $at, $v1, $at -/* 05E2FC 8005D6FC 14200003 */ bnez $at, .L8005D70C -/* 05E300 8005D700 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 05E304 8005D704 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 05E308 8005D708 00611821 */ addu $v1, $v1, $at -.L8005D70C: -/* 05E30C 8005D70C 28618000 */ slti $at, $v1, -0x8000 -/* 05E310 8005D710 10200002 */ beqz $at, .L8005D71C -/* 05E314 8005D714 3401FFFF */ li $at, 65535 -/* 05E318 8005D718 00611821 */ addu $v1, $v1, $at -.L8005D71C: -/* 05E31C 8005D71C 28610C01 */ slti $at, $v1, 0xc01 -/* 05E320 8005D720 14200003 */ bnez $at, .L8005D730 -/* 05E324 8005D724 2861F400 */ slti $at, $v1, -0xc00 -/* 05E328 8005D728 24030C00 */ li $v1, 3072 -/* 05E32C 8005D72C 2861F400 */ slti $at, $v1, -0xc00 -.L8005D730: -/* 05E330 8005D730 10200002 */ beqz $at, .L8005D73C -/* 05E334 8005D734 00000000 */ nop -/* 05E338 8005D738 2403F400 */ li $v1, -3072 -.L8005D73C: -/* 05E33C 8005D73C A603016C */ sh $v1, 0x16c($s0) -.L8005D740: -/* 05E340 8005D740 8223003B */ lb $v1, 0x3b($s1) -/* 05E344 8005D744 24010001 */ li $at, 1 -/* 05E348 8005D748 1461000D */ bne $v1, $at, .L8005D780 -/* 05E34C 8005D74C 3C058012 */ lui $a1, %hi(D_8011D5D0) # $a1, 0x8012 -/* 05E350 8005D750 820C01E7 */ lb $t4, 0x1e7($s0) -/* 05E354 8005D754 00000000 */ nop -/* 05E358 8005D758 318E001F */ andi $t6, $t4, 0x1f -/* 05E35C 8005D75C 29C1000A */ slti $at, $t6, 0xa -/* 05E360 8005D760 10200008 */ beqz $at, .L8005D784 -/* 05E364 8005D764 24010003 */ li $at, 3 -/* 05E368 8005D768 860F016C */ lh $t7, 0x16c($s0) -/* 05E36C 8005D76C 00000000 */ nop -/* 05E370 8005D770 000FC043 */ sra $t8, $t7, 1 -/* 05E374 8005D774 A618016C */ sh $t8, 0x16c($s0) -/* 05E378 8005D778 8223003B */ lb $v1, 0x3b($s1) -/* 05E37C 8005D77C 00000000 */ nop -.L8005D780: -/* 05E380 8005D780 24010003 */ li $at, 3 -.L8005D784: -/* 05E384 8005D784 14610002 */ bne $v1, $at, .L8005D790 -/* 05E388 8005D788 24A5D5D0 */ addiu $a1, %lo(D_8011D5D0) # addiu $a1, $a1, -0x2a30 -/* 05E38C 8005D78C A600016C */ sh $zero, 0x16c($s0) -.L8005D790: -/* 05E390 8005D790 8FA30034 */ lw $v1, 0x34($sp) -/* 05E394 8005D794 00000000 */ nop -/* 05E398 8005D798 8C62004C */ lw $v0, 0x4c($v1) -/* 05E39C 8005D79C 8C700064 */ lw $s0, 0x64($v1) -/* 05E3A0 8005D7A0 8C590000 */ lw $t9, ($v0) -/* 05E3A4 8005D7A4 00000000 */ nop -/* 05E3A8 8005D7A8 1639000B */ bne $s1, $t9, .L8005D7D8 -/* 05E3AC 8005D7AC 00000000 */ nop -/* 05E3B0 8005D7B0 844A0014 */ lh $t2, 0x14($v0) -/* 05E3B4 8005D7B4 00000000 */ nop -/* 05E3B8 8005D7B8 314B0008 */ andi $t3, $t2, 8 -/* 05E3BC 8005D7BC 11600006 */ beqz $t3, .L8005D7D8 -/* 05E3C0 8005D7C0 00000000 */ nop -/* 05E3C4 8005D7C4 822D003B */ lb $t5, 0x3b($s1) -/* 05E3C8 8005D7C8 24010001 */ li $at, 1 -/* 05E3CC 8005D7CC 15A10002 */ bne $t5, $at, .L8005D7D8 -/* 05E3D0 8005D7D0 240C0004 */ li $t4, 4 -/* 05E3D4 8005D7D4 A20C0187 */ sb $t4, 0x187($s0) -.L8005D7D8: -/* 05E3D8 8005D7D8 820E01D8 */ lb $t6, 0x1d8($s0) -/* 05E3DC 8005D7DC 00000000 */ nop -/* 05E3E0 8005D7E0 11C00008 */ beqz $t6, .L8005D804 -/* 05E3E4 8005D7E4 8FBF002C */ lw $ra, 0x2c($sp) -/* 05E3E8 8005D7E8 80AF0000 */ lb $t7, ($a1) -/* 05E3EC 8005D7EC 24180001 */ li $t8, 1 -/* 05E3F0 8005D7F0 15E00003 */ bnez $t7, .L8005D800 -/* 05E3F4 8005D7F4 02002025 */ move $a0, $s0 -/* 05E3F8 8005D7F8 0C0172DA */ jal func_8005CB68 -/* 05E3FC 8005D7FC A0B80000 */ sb $t8, ($a1) -.L8005D800: -/* 05E400 8005D800 8FBF002C */ lw $ra, 0x2c($sp) -.L8005D804: -/* 05E404 8005D804 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 05E408 8005D808 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 05E40C 8005D80C 8FB00024 */ lw $s0, 0x24($sp) -/* 05E410 8005D810 8FB10028 */ lw $s1, 0x28($sp) -/* 05E414 8005D814 03E00008 */ jr $ra -/* 05E418 8005D818 27BD0060 */ addiu $sp, $sp, 0x60 - -/* 05E41C 8005D81C 00000000 */ nop -glabel func_8005D820 -/* 05E420 8005D820 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 05E424 8005D824 AFA40060 */ sw $a0, 0x60($sp) -/* 05E428 8005D828 AFBF002C */ sw $ra, 0x2c($sp) -/* 05E42C 8005D82C AFB10028 */ sw $s1, 0x28($sp) -/* 05E430 8005D830 AFB00024 */ sw $s0, 0x24($sp) -/* 05E434 8005D834 3C04800E */ lui $a0, %hi(D_800DCE20) # $a0, 0x800e -/* 05E438 8005D838 00E08025 */ move $s0, $a3 -/* 05E43C 8005D83C 00C08825 */ move $s1, $a2 -/* 05E440 8005D840 E7B50018 */ swc1 $f21, 0x18($sp) -/* 05E444 8005D844 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 05E448 8005D848 AFA50064 */ sw $a1, 0x64($sp) -/* 05E44C 8005D84C 0C01729E */ jal func_8005CA78 -/* 05E450 8005D850 2484CE20 */ addiu $a0, %lo(D_800DCE20) # addiu $a0, $a0, -0x31e0 -/* 05E454 8005D854 822E003B */ lb $t6, 0x3b($s1) -/* 05E458 8005D858 3C01800E */ lui $at, %hi(D_800E6A54) # $at, 0x800e -/* 05E45C 8005D85C A7AE005E */ sh $t6, 0x5e($sp) -/* 05E460 8005D860 860F016A */ lh $t7, 0x16a($s0) -/* 05E464 8005D864 862A0018 */ lh $t2, 0x18($s1) -/* 05E468 8005D868 A7AF005A */ sh $t7, 0x5a($sp) -/* 05E46C 8005D86C C604002C */ lwc1 $f4, 0x2c($s0) -/* 05E470 8005D870 C4276A50 */ lwc1 $f7, %lo(D_800E6A50)($at) -/* 05E474 8005D874 C4266A54 */ lwc1 $f6, %lo(D_800E6A54)($at) -/* 05E478 8005D878 46002021 */ cvt.d.s $f0, $f4 -/* 05E47C 8005D87C 4626003C */ c.lt.d $f0, $f6 -/* 05E480 8005D880 00000000 */ nop -/* 05E484 8005D884 45000009 */ bc1f .L8005D8AC -/* 05E488 8005D888 3C01800E */ lui $at, %hi(D_800E6A5C) # $at, 0x800e -/* 05E48C 8005D88C C4296A58 */ lwc1 $f9, %lo(D_800E6A58)($at) -/* 05E490 8005D890 C4286A5C */ lwc1 $f8, %lo(D_800E6A5C)($at) -/* 05E494 8005D894 8FB80074 */ lw $t8, 0x74($sp) -/* 05E498 8005D898 4620403C */ c.lt.d $f8, $f0 -/* 05E49C 8005D89C 00000000 */ nop -/* 05E4A0 8005D8A0 45000002 */ bc1f .L8005D8AC -/* 05E4A4 8005D8A4 00000000 */ nop -/* 05E4A8 8005D8A8 AF000000 */ sw $zero, ($t8) -.L8005D8AC: -/* 05E4AC 8005D8AC 821901D8 */ lb $t9, 0x1d8($s0) -/* 05E4B0 8005D8B0 24010001 */ li $at, 1 -/* 05E4B4 8005D8B4 1721000D */ bne $t9, $at, .L8005D8EC -/* 05E4B8 8005D8B8 8FA80078 */ lw $t0, 0x78($sp) -/* 05E4BC 8005D8BC 0C008D5A */ jal func_80023568 -/* 05E4C0 8005D8C0 A7AA005C */ sh $t2, 0x5c($sp) -/* 05E4C4 8005D8C4 87AA005C */ lh $t2, 0x5c($sp) -/* 05E4C8 8005D8C8 10400007 */ beqz $v0, .L8005D8E8 -/* 05E4CC 8005D8CC 24040082 */ li $a0, 130 -/* 05E4D0 8005D8D0 0C008500 */ jal func_80021400 -/* 05E4D4 8005D8D4 A7AA005C */ sh $t2, 0x5c($sp) -/* 05E4D8 8005D8D8 820B01D8 */ lb $t3, 0x1d8($s0) -/* 05E4DC 8005D8DC 87AA005C */ lh $t2, 0x5c($sp) -/* 05E4E0 8005D8E0 256C0001 */ addiu $t4, $t3, 1 -/* 05E4E4 8005D8E4 A20C01D8 */ sb $t4, 0x1d8($s0) -.L8005D8E8: -/* 05E4E8 8005D8E8 8FA80078 */ lw $t0, 0x78($sp) -.L8005D8EC: -/* 05E4EC 8005D8EC 24040064 */ li $a0, 100 -/* 05E4F0 8005D8F0 8D030000 */ lw $v1, ($t0) -/* 05E4F4 8005D8F4 00000000 */ nop -/* 05E4F8 8005D8F8 14640002 */ bne $v1, $a0, .L8005D904 -/* 05E4FC 8005D8FC 3C018012 */ lui $at, %hi(D_8011D5E0) # $at, 0x8012 -/* 05E500 8005D900 A020D5E0 */ sb $zero, %lo(D_8011D5E0)($at) -.L8005D904: -/* 05E504 8005D904 860D0000 */ lh $t5, ($s0) -/* 05E508 8005D908 2409FFFF */ li $t1, -1 -/* 05E50C 8005D90C 152D0021 */ bne $t1, $t5, .L8005D994 -/* 05E510 8005D910 240E0007 */ li $t6, 7 -/* 05E514 8005D914 8D020000 */ lw $v0, ($t0) -/* 05E518 8005D918 00000000 */ nop -/* 05E51C 8005D91C 1082001C */ beq $a0, $v0, .L8005D990 -/* 05E520 8005D920 244EFFC4 */ addiu $t6, $v0, -0x3c -/* 05E524 8005D924 05C10018 */ bgez $t6, .L8005D988 -/* 05E528 8005D928 AD0E0000 */ sw $t6, ($t0) -/* 05E52C 8005D92C 3C188012 */ lui $t8, %hi(D_8011D5E1) # $t8, 0x8012 -/* 05E530 8005D930 8318D5E1 */ lb $t8, %lo(D_8011D5E1)($t8) -/* 05E534 8005D934 00002025 */ move $a0, $zero -/* 05E538 8005D938 1700000A */ bnez $t8, .L8005D964 -/* 05E53C 8005D93C 8FA20070 */ lw $v0, 0x70($sp) -/* 05E540 8005D940 AFA30044 */ sw $v1, 0x44($sp) -/* 05E544 8005D944 0C0172C1 */ jal func_8005CB04 -/* 05E548 8005D948 A7AA005C */ sh $t2, 0x5c($sp) -/* 05E54C 8005D94C 8FA30044 */ lw $v1, 0x44($sp) -/* 05E550 8005D950 8FA80078 */ lw $t0, 0x78($sp) -/* 05E554 8005D954 87AA005C */ lh $t2, 0x5c($sp) -/* 05E558 8005D958 2419000A */ li $t9, 10 -/* 05E55C 8005D95C A21901D3 */ sb $t9, 0x1d3($s0) -/* 05E560 8005D960 8FA20070 */ lw $v0, 0x70($sp) -.L8005D964: -/* 05E564 8005D964 240B0001 */ li $t3, 1 -/* 05E568 8005D968 3C018012 */ lui $at, %hi(D_8011D5E1) # $at, 0x8012 -/* 05E56C 8005D96C A02BD5E1 */ sb $t3, %lo(D_8011D5E1)($at) -/* 05E570 8005D970 AD000000 */ sw $zero, ($t0) -/* 05E574 8005D974 8C4C0000 */ lw $t4, ($v0) -/* 05E578 8005D978 00000000 */ nop -/* 05E57C 8005D97C 358D8000 */ ori $t5, $t4, 0x8000 -/* 05E580 8005D980 10000003 */ b .L8005D990 -/* 05E584 8005D984 AC4D0000 */ sw $t5, ($v0) -.L8005D988: -/* 05E588 8005D988 3C018012 */ lui $at, %hi(D_8011D5E1) # $at, 0x8012 -/* 05E58C 8005D98C A020D5E1 */ sb $zero, %lo(D_8011D5E1)($at) -.L8005D990: -/* 05E590 8005D990 240E0007 */ li $t6, 7 -.L8005D994: -/* 05E594 8005D994 A20E01D6 */ sb $t6, 0x1d6($s0) -/* 05E598 8005D998 8FA50064 */ lw $a1, 0x64($sp) -/* 05E59C 8005D99C 8FA40060 */ lw $a0, 0x60($sp) -/* 05E5A0 8005D9A0 A7AA005C */ sh $t2, 0x5c($sp) -/* 05E5A4 8005D9A4 AFA30044 */ sw $v1, 0x44($sp) -/* 05E5A8 8005D9A8 02203025 */ move $a2, $s1 -/* 05E5AC 8005D9AC 0C0125E5 */ jal func_80049794 -/* 05E5B0 8005D9B0 02003825 */ move $a3, $s0 -/* 05E5B4 8005D9B4 8FA30044 */ lw $v1, 0x44($sp) -/* 05E5B8 8005D9B8 8FA80078 */ lw $t0, 0x78($sp) -/* 05E5BC 8005D9BC 820F01D7 */ lb $t7, 0x1d7($s0) -/* 05E5C0 8005D9C0 87AA005C */ lh $t2, 0x5c($sp) -/* 05E5C4 8005D9C4 A20F01D6 */ sb $t7, 0x1d6($s0) -/* 05E5C8 8005D9C8 AD030000 */ sw $v1, ($t0) -/* 05E5CC 8005D9CC AE200074 */ sw $zero, 0x74($s1) -/* 05E5D0 8005D9D0 87B8005A */ lh $t8, 0x5a($sp) -/* 05E5D4 8005D9D4 2409FFFF */ li $t1, -1 -/* 05E5D8 8005D9D8 A618016A */ sh $t8, 0x16a($s0) -/* 05E5DC 8005D9DC 87B9005E */ lh $t9, 0x5e($sp) -/* 05E5E0 8005D9E0 A62A0018 */ sh $t2, 0x18($s1) -/* 05E5E4 8005D9E4 A239003B */ sb $t9, 0x3b($s1) -/* 05E5E8 8005D9E8 820B0187 */ lb $t3, 0x187($s0) -/* 05E5EC 8005D9EC 00000000 */ nop -/* 05E5F0 8005D9F0 11600028 */ beqz $t3, .L8005DA94 -/* 05E5F4 8005D9F4 00000000 */ nop -/* 05E5F8 8005D9F8 822C003B */ lb $t4, 0x3b($s1) -/* 05E5FC 8005D9FC 24010005 */ li $at, 5 -/* 05E600 8005DA00 11810024 */ beq $t4, $at, .L8005DA94 -/* 05E604 8005DA04 00000000 */ nop -/* 05E608 8005DA08 0C0172C1 */ jal func_8005CB04 -/* 05E60C 8005DA0C 24040001 */ li $a0, 1 -/* 05E610 8005DA10 24040011 */ li $a0, 17 -/* 05E614 8005DA14 0C000741 */ jal func_80001D04 -/* 05E618 8005DA18 00002825 */ move $a1, $zero -/* 05E61C 8005DA1C 3C014140 */ li $at, 0x41400000 # 12.000000 -/* 05E620 8005DA20 44816000 */ mtc1 $at, $f12 -/* 05E624 8005DA24 0C01A7CA */ jal func_80069F28 -/* 05E628 8005DA28 00000000 */ nop -/* 05E62C 8005DA2C 3C01800E */ lui $at, %hi(D_800E6A64) # $at, 0x800e -/* 05E630 8005DA30 C62A001C */ lwc1 $f10, 0x1c($s1) -/* 05E634 8005DA34 C4216A60 */ lwc1 $f1, %lo(D_800E6A60)($at) -/* 05E638 8005DA38 C4206A64 */ lwc1 $f0, %lo(D_800E6A64)($at) -/* 05E63C 8005DA3C 460054A1 */ cvt.d.s $f18, $f10 -/* 05E640 8005DA40 46209102 */ mul.d $f4, $f18, $f0 -/* 05E644 8005DA44 C6280024 */ lwc1 $f8, 0x24($s1) -/* 05E648 8005DA48 44808000 */ mtc1 $zero, $f16 -/* 05E64C 8005DA4C 460042A1 */ cvt.d.s $f10, $f8 -/* 05E650 8005DA50 240D0005 */ li $t5, 5 -/* 05E654 8005DA54 46205482 */ mul.d $f18, $f10, $f0 -/* 05E658 8005DA58 462021A0 */ cvt.s.d $f6, $f4 -/* 05E65C 8005DA5C A22D003B */ sb $t5, 0x3b($s1) -/* 05E660 8005DA60 E626001C */ swc1 $f6, 0x1c($s1) -/* 05E664 8005DA64 3C014010 */ li $at, 0x40100000 # 2.250000 -/* 05E668 8005DA68 46209120 */ cvt.s.d $f4, $f18 -/* 05E66C 8005DA6C 44815800 */ mtc1 $at, $f11 -/* 05E670 8005DA70 E6240024 */ swc1 $f4, 0x24($s1) -/* 05E674 8005DA74 E610000C */ swc1 $f16, 0xc($s0) -/* 05E678 8005DA78 C6260020 */ lwc1 $f6, 0x20($s1) -/* 05E67C 8005DA7C 44805000 */ mtc1 $zero, $f10 -/* 05E680 8005DA80 46003221 */ cvt.d.s $f8, $f6 -/* 05E684 8005DA84 462A4480 */ add.d $f18, $f8, $f10 -/* 05E688 8005DA88 2409FFFF */ li $t1, -1 -/* 05E68C 8005DA8C 46209120 */ cvt.s.d $f4, $f18 -/* 05E690 8005DA90 E6240020 */ swc1 $f4, 0x20($s1) -.L8005DA94: -/* 05E694 8005DA94 8E0E0148 */ lw $t6, 0x148($s0) -/* 05E698 8005DA98 44808000 */ mtc1 $zero, $f16 -/* 05E69C 8005DA9C 11C0001A */ beqz $t6, .L8005DB08 -/* 05E6A0 8005DAA0 A2000187 */ sb $zero, 0x187($s0) -/* 05E6A4 8005DAA4 C620001C */ lwc1 $f0, 0x1c($s1) -/* 05E6A8 8005DAA8 C6220024 */ lwc1 $f2, 0x24($s1) -/* 05E6AC 8005DAAC 46000502 */ mul.s $f20, $f0, $f0 -/* 05E6B0 8005DAB0 00000000 */ nop -/* 05E6B4 8005DAB4 46021382 */ mul.s $f14, $f2, $f2 -/* 05E6B8 8005DAB8 00000000 */ nop -/* 05E6BC 8005DABC 4614A182 */ mul.s $f6, $f20, $f20 -/* 05E6C0 8005DAC0 00000000 */ nop -/* 05E6C4 8005DAC4 460E7202 */ mul.s $f8, $f14, $f14 -/* 05E6C8 8005DAC8 0C0326B4 */ jal sqrtf -/* 05E6CC 8005DACC 46083300 */ add.s $f12, $f6, $f8 -/* 05E6D0 8005DAD0 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 05E6D4 8005DAD4 44815800 */ mtc1 $at, $f11 -/* 05E6D8 8005DAD8 44805000 */ mtc1 $zero, $f10 -/* 05E6DC 8005DADC 46000087 */ neg.s $f2, $f0 -/* 05E6E0 8005DAE0 460014A1 */ cvt.d.s $f18, $f2 -/* 05E6E4 8005DAE4 4632503C */ c.lt.d $f10, $f18 -/* 05E6E8 8005DAE8 44808000 */ mtc1 $zero, $f16 -/* 05E6EC 8005DAEC E602002C */ swc1 $f2, 0x2c($s0) -/* 05E6F0 8005DAF0 45000005 */ bc1f .L8005DB08 -/* 05E6F4 8005DAF4 2409FFFF */ li $t1, -1 -/* 05E6F8 8005DAF8 E610002C */ swc1 $f16, 0x2c($s0) -/* 05E6FC 8005DAFC E630001C */ swc1 $f16, 0x1c($s1) -/* 05E700 8005DB00 E6300020 */ swc1 $f16, 0x20($s1) -/* 05E704 8005DB04 E6300024 */ swc1 $f16, 0x24($s1) -.L8005DB08: -/* 05E708 8005DB08 8E2F0068 */ lw $t7, 0x68($s1) -/* 05E70C 8005DB0C 8223003B */ lb $v1, 0x3b($s1) -/* 05E710 8005DB10 8DE20000 */ lw $v0, ($t7) -/* 05E714 8005DB14 0003C8C0 */ sll $t9, $v1, 3 -/* 05E718 8005DB18 8C450000 */ lw $a1, ($v0) -/* 05E71C 8005DB1C C7AC0064 */ lwc1 $f12, 0x64($sp) -/* 05E720 8005DB20 8CB80044 */ lw $t8, 0x44($a1) -/* 05E724 8005DB24 C606002C */ lwc1 $f6, 0x2c($s0) -/* 05E728 8005DB28 03195821 */ addu $t3, $t8, $t9 -/* 05E72C 8005DB2C 8D6C0004 */ lw $t4, 4($t3) -/* 05E730 8005DB30 460C3202 */ mul.s $f8, $f6, $f12 -/* 05E734 8005DB34 000C6900 */ sll $t5, $t4, 4 -/* 05E738 8005DB38 25AEFFEF */ addiu $t6, $t5, -0x11 -/* 05E73C 8005DB3C 3C01800E */ lui $at, %hi(D_800E6A6C) # $at, 0x800e -/* 05E740 8005DB40 448E2000 */ mtc1 $t6, $f4 -/* 05E744 8005DB44 C4336A68 */ lwc1 $f19, %lo(D_800E6A68)($at) -/* 05E748 8005DB48 C4326A6C */ lwc1 $f18, %lo(D_800E6A6C)($at) -/* 05E74C 8005DB4C 460042A1 */ cvt.d.s $f10, $f8 -/* 05E750 8005DB50 46802520 */ cvt.s.w $f20, $f4 -/* 05E754 8005DB54 44803000 */ mtc1 $zero, $f6 -/* 05E758 8005DB58 44803800 */ mtc1 $zero, $f7 -/* 05E75C 8005DB5C 46325102 */ mul.d $f4, $f10, $f18 -/* 05E760 8005DB60 462020A0 */ cvt.s.d $f2, $f4 -/* 05E764 8005DB64 46001021 */ cvt.d.s $f0, $f2 -/* 05E768 8005DB68 4626003E */ c.le.d $f0, $f6 -/* 05E76C 8005DB6C 00000000 */ nop -/* 05E770 8005DB70 4500000B */ bc1f .L8005DBA0 -/* 05E774 8005DB74 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 05E778 8005DB78 44814800 */ mtc1 $at, $f9 -/* 05E77C 8005DB7C 44804000 */ mtc1 $zero, $f8 -/* 05E780 8005DB80 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 05E784 8005DB84 4620403C */ c.lt.d $f8, $f0 -/* 05E788 8005DB88 00000000 */ nop -/* 05E78C 8005DB8C 4500000E */ bc1f .L8005DBC8 -/* 05E790 8005DB90 00000000 */ nop -/* 05E794 8005DB94 44811000 */ mtc1 $at, $f2 -/* 05E798 8005DB98 1000000C */ b .L8005DBCC -/* 05E79C 8005DB9C 2C610006 */ sltiu $at, $v1, 6 -.L8005DBA0: -/* 05E7A0 8005DBA0 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 05E7A4 8005DBA4 44815800 */ mtc1 $at, $f11 -/* 05E7A8 8005DBA8 44805000 */ mtc1 $zero, $f10 -/* 05E7AC 8005DBAC 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 05E7B0 8005DBB0 462A003C */ c.lt.d $f0, $f10 -/* 05E7B4 8005DBB4 00000000 */ nop -/* 05E7B8 8005DBB8 45000003 */ bc1f .L8005DBC8 -/* 05E7BC 8005DBBC 00000000 */ nop -/* 05E7C0 8005DBC0 44811000 */ mtc1 $at, $f2 -/* 05E7C4 8005DBC4 00000000 */ nop -.L8005DBC8: -/* 05E7C8 8005DBC8 2C610006 */ sltiu $at, $v1, 6 -.L8005DBCC: -/* 05E7CC 8005DBCC 1020004F */ beqz $at, .L8005DD0C -/* 05E7D0 8005DBD0 00037880 */ sll $t7, $v1, 2 -/* 05E7D4 8005DBD4 3C01800E */ lui $at, 0x800e -/* 05E7D8 8005DBD8 002F0821 */ addu $at, $at, $t7 -/* 05E7DC 8005DBDC 8C2F6A70 */ lw $t7, 0x6a70($at) -/* 05E7E0 8005DBE0 00000000 */ nop -/* 05E7E4 8005DBE4 01E00008 */ jr $t7 -/* 05E7E8 8005DBE8 00000000 */ nop -/* 05E7EC 8005DBEC C612000C */ lwc1 $f18, 0xc($s0) -/* 05E7F0 8005DBF0 460061A1 */ cvt.d.s $f6, $f12 -/* 05E7F4 8005DBF4 46009121 */ cvt.d.s $f4, $f18 -/* 05E7F8 8005DBF8 46262200 */ add.d $f8, $f4, $f6 -/* 05E7FC 8005DBFC A20001CD */ sb $zero, 0x1cd($s0) -/* 05E800 8005DC00 462042A0 */ cvt.s.d $f10, $f8 -/* 05E804 8005DC04 24040002 */ li $a0, 2 -/* 05E808 8005DC08 10000041 */ b .L8005DD10 -/* 05E80C 8005DC0C E60A000C */ swc1 $f10, 0xc($s0) -/* 05E810 8005DC10 921801CD */ lbu $t8, 0x1cd($s0) -/* 05E814 8005DC14 24040002 */ li $a0, 2 -/* 05E818 8005DC18 14980006 */ bne $a0, $t8, .L8005DC34 -/* 05E81C 8005DC1C 00000000 */ nop -/* 05E820 8005DC20 C612000C */ lwc1 $f18, 0xc($s0) -/* 05E824 8005DC24 00000000 */ nop -/* 05E828 8005DC28 46029100 */ add.s $f4, $f18, $f2 -/* 05E82C 8005DC2C 10000038 */ b .L8005DD10 -/* 05E830 8005DC30 E604000C */ swc1 $f4, 0xc($s0) -.L8005DC34: -/* 05E834 8005DC34 C606000C */ lwc1 $f6, 0xc($s0) -/* 05E838 8005DC38 00000000 */ nop -/* 05E83C 8005DC3C 46023201 */ sub.s $f8, $f6, $f2 -/* 05E840 8005DC40 10000033 */ b .L8005DD10 -/* 05E844 8005DC44 E608000C */ swc1 $f8, 0xc($s0) -/* 05E848 8005DC48 C60A000C */ lwc1 $f10, 0xc($s0) -/* 05E84C 8005DC4C 24190002 */ li $t9, 2 -/* 05E850 8005DC50 46025481 */ sub.s $f18, $f10, $f2 -/* 05E854 8005DC54 A21901CD */ sb $t9, 0x1cd($s0) -/* 05E858 8005DC58 E612000C */ swc1 $f18, 0xc($s0) -/* 05E85C 8005DC5C 1000002C */ b .L8005DD10 -/* 05E860 8005DC60 24040002 */ li $a0, 2 -/* 05E864 8005DC64 920B01CD */ lbu $t3, 0x1cd($s0) -/* 05E868 8005DC68 24010004 */ li $at, 4 -/* 05E86C 8005DC6C 1561000A */ bne $t3, $at, .L8005DC98 -/* 05E870 8005DC70 00000000 */ nop -/* 05E874 8005DC74 C604000C */ lwc1 $f4, 0xc($s0) -/* 05E878 8005DC78 46006021 */ cvt.d.s $f0, $f12 -/* 05E87C 8005DC7C 46200200 */ add.d $f8, $f0, $f0 -/* 05E880 8005DC80 24040002 */ li $a0, 2 -/* 05E884 8005DC84 460021A1 */ cvt.d.s $f6, $f4 -/* 05E888 8005DC88 46283281 */ sub.d $f10, $f6, $f8 -/* 05E88C 8005DC8C 462054A0 */ cvt.s.d $f18, $f10 -/* 05E890 8005DC90 1000001F */ b .L8005DD10 -/* 05E894 8005DC94 E612000C */ swc1 $f18, 0xc($s0) -.L8005DC98: -/* 05E898 8005DC98 C604000C */ lwc1 $f4, 0xc($s0) -/* 05E89C 8005DC9C 46006021 */ cvt.d.s $f0, $f12 -/* 05E8A0 8005DCA0 46200200 */ add.d $f8, $f0, $f0 -/* 05E8A4 8005DCA4 460021A1 */ cvt.d.s $f6, $f4 -/* 05E8A8 8005DCA8 46283280 */ add.d $f10, $f6, $f8 -/* 05E8AC 8005DCAC 462054A0 */ cvt.s.d $f18, $f10 -/* 05E8B0 8005DCB0 E612000C */ swc1 $f18, 0xc($s0) -/* 05E8B4 8005DCB4 10000016 */ b .L8005DD10 -/* 05E8B8 8005DCB8 24040002 */ li $a0, 2 -/* 05E8BC 8005DCBC C604000C */ lwc1 $f4, 0xc($s0) -/* 05E8C0 8005DCC0 46006021 */ cvt.d.s $f0, $f12 -/* 05E8C4 8005DCC4 46200200 */ add.d $f8, $f0, $f0 -/* 05E8C8 8005DCC8 240C0004 */ li $t4, 4 -/* 05E8CC 8005DCCC 460021A1 */ cvt.d.s $f6, $f4 -/* 05E8D0 8005DCD0 46283280 */ add.d $f10, $f6, $f8 -/* 05E8D4 8005DCD4 A20C01CD */ sb $t4, 0x1cd($s0) -/* 05E8D8 8005DCD8 462054A0 */ cvt.s.d $f18, $f10 -/* 05E8DC 8005DCDC 24040002 */ li $a0, 2 -/* 05E8E0 8005DCE0 1000000B */ b .L8005DD10 -/* 05E8E4 8005DCE4 E612000C */ swc1 $f18, 0xc($s0) -/* 05E8E8 8005DCE8 C604000C */ lwc1 $f4, 0xc($s0) -/* 05E8EC 8005DCEC 46006021 */ cvt.d.s $f0, $f12 -/* 05E8F0 8005DCF0 46200200 */ add.d $f8, $f0, $f0 -/* 05E8F4 8005DCF4 24040002 */ li $a0, 2 -/* 05E8F8 8005DCF8 460021A1 */ cvt.d.s $f6, $f4 -/* 05E8FC 8005DCFC 46283280 */ add.d $f10, $f6, $f8 -/* 05E900 8005DD00 462054A0 */ cvt.s.d $f18, $f10 -/* 05E904 8005DD04 10000002 */ b .L8005DD10 -/* 05E908 8005DD08 E612000C */ swc1 $f18, 0xc($s0) -.L8005DD0C: -/* 05E90C 8005DD0C 24040002 */ li $a0, 2 -.L8005DD10: -/* 05E910 8005DD10 C600000C */ lwc1 $f0, 0xc($s0) -/* 05E914 8005DD14 00000000 */ nop -/* 05E918 8005DD18 4600A03E */ c.le.s $f20, $f0 -/* 05E91C 8005DD1C 00000000 */ nop -/* 05E920 8005DD20 4500000A */ bc1f .L8005DD4C -/* 05E924 8005DD24 00000000 */ nop -.L8005DD28: -/* 05E928 8005DD28 46140101 */ sub.s $f4, $f0, $f20 -/* 05E92C 8005DD2C E604000C */ swc1 $f4, 0xc($s0) -/* 05E930 8005DD30 A4490010 */ sh $t1, 0x10($v0) -/* 05E934 8005DD34 C600000C */ lwc1 $f0, 0xc($s0) -/* 05E938 8005DD38 00000000 */ nop -/* 05E93C 8005DD3C 4600A03E */ c.le.s $f20, $f0 -/* 05E940 8005DD40 00000000 */ nop -/* 05E944 8005DD44 4501FFF8 */ bc1t .L8005DD28 -/* 05E948 8005DD48 00000000 */ nop -.L8005DD4C: -/* 05E94C 8005DD4C 4610003E */ c.le.s $f0, $f16 -/* 05E950 8005DD50 00000000 */ nop -/* 05E954 8005DD54 4500000A */ bc1f .L8005DD80 -/* 05E958 8005DD58 00000000 */ nop -.L8005DD5C: -/* 05E95C 8005DD5C 46140180 */ add.s $f6, $f0, $f20 -/* 05E960 8005DD60 E606000C */ swc1 $f6, 0xc($s0) -/* 05E964 8005DD64 A4490010 */ sh $t1, 0x10($v0) -/* 05E968 8005DD68 C600000C */ lwc1 $f0, 0xc($s0) -/* 05E96C 8005DD6C 00000000 */ nop -/* 05E970 8005DD70 4610003E */ c.le.s $f0, $f16 -/* 05E974 8005DD74 00000000 */ nop -/* 05E978 8005DD78 4501FFF8 */ bc1t .L8005DD5C -/* 05E97C 8005DD7C 00000000 */ nop -.L8005DD80: -/* 05E980 8005DD80 8223003B */ lb $v1, 0x3b($s1) -/* 05E984 8005DD84 00000000 */ nop -/* 05E988 8005DD88 14830011 */ bne $a0, $v1, .L8005DDD0 -/* 05E98C 8005DD8C 00000000 */ nop -/* 05E990 8005DD90 820D01E2 */ lb $t5, 0x1e2($s0) -/* 05E994 8005DD94 3C01C01A */ li $at, 0xC01A0000 # -2.406250 -/* 05E998 8005DD98 15A0000D */ bnez $t5, .L8005DDD0 -/* 05E99C 8005DD9C 00000000 */ nop -/* 05E9A0 8005DDA0 C608002C */ lwc1 $f8, 0x2c($s0) -/* 05E9A4 8005DDA4 44819800 */ mtc1 $at, $f19 -/* 05E9A8 8005DDA8 44809000 */ mtc1 $zero, $f18 -/* 05E9AC 8005DDAC 460042A1 */ cvt.d.s $f10, $f8 -/* 05E9B0 8005DDB0 4632503C */ c.lt.d $f10, $f18 -/* 05E9B4 8005DDB4 24060003 */ li $a2, 3 -/* 05E9B8 8005DDB8 45000005 */ bc1f .L8005DDD0 -/* 05E9BC 8005DDBC 00000000 */ nop -/* 05E9C0 8005DDC0 A226003B */ sb $a2, 0x3b($s1) -/* 05E9C4 8005DDC4 E610000C */ swc1 $f16, 0xc($s0) -/* 05E9C8 8005DDC8 8223003B */ lb $v1, 0x3b($s1) -/* 05E9CC 8005DDCC 00000000 */ nop -.L8005DDD0: -/* 05E9D0 8005DDD0 844E0010 */ lh $t6, 0x10($v0) -/* 05E9D4 8005DDD4 24060003 */ li $a2, 3 -/* 05E9D8 8005DDD8 112E0003 */ beq $t1, $t6, .L8005DDE8 -/* 05E9DC 8005DDDC 24010005 */ li $at, 5 -/* 05E9E0 8005DDE0 1460006A */ bnez $v1, .L8005DF8C -/* 05E9E4 8005DDE4 24010005 */ li $at, 5 -.L8005DDE8: -/* 05E9E8 8005DDE8 14610009 */ bne $v1, $at, .L8005DE10 -/* 05E9EC 8005DDEC 24010001 */ li $at, 1 -/* 05E9F0 8005DDF0 920F01CD */ lbu $t7, 0x1cd($s0) -/* 05E9F4 8005DDF4 00000000 */ nop -/* 05E9F8 8005DDF8 A22F003B */ sb $t7, 0x3b($s1) -/* 05E9FC 8005DDFC E610000C */ swc1 $f16, 0xc($s0) -/* 05EA00 8005DE00 8223003B */ lb $v1, 0x3b($s1) -/* 05EA04 8005DE04 10000062 */ b .L8005DF90 -/* 05EA08 8005DE08 4458F800 */ cfc1 $t8, $31 -/* 05EA0C 8005DE0C 24010001 */ li $at, 1 -.L8005DE10: -/* 05EA10 8005DE10 1461000B */ bne $v1, $at, .L8005DE40 -/* 05EA14 8005DE14 00000000 */ nop -/* 05EA18 8005DE18 921801CD */ lbu $t8, 0x1cd($s0) -/* 05EA1C 8005DE1C 00000000 */ nop -/* 05EA20 8005DE20 17000003 */ bnez $t8, .L8005DE30 -/* 05EA24 8005DE24 00000000 */ nop -/* 05EA28 8005DE28 10000002 */ b .L8005DE34 -/* 05EA2C 8005DE2C A224003B */ sb $a0, 0x3b($s1) -.L8005DE30: -/* 05EA30 8005DE30 A220003B */ sb $zero, 0x3b($s1) -.L8005DE34: -/* 05EA34 8005DE34 8223003B */ lb $v1, 0x3b($s1) -/* 05EA38 8005DE38 10000055 */ b .L8005DF90 -/* 05EA3C 8005DE3C 4458F800 */ cfc1 $t8, $31 -.L8005DE40: -/* 05EA40 8005DE40 14C3000B */ bne $a2, $v1, .L8005DE70 -/* 05EA44 8005DE44 3C01800E */ lui $at, %hi(D_800E6A8C) # $at, 0x800e -/* 05EA48 8005DE48 921901CD */ lbu $t9, 0x1cd($s0) -/* 05EA4C 8005DE4C 24010004 */ li $at, 4 -/* 05EA50 8005DE50 17210003 */ bne $t9, $at, .L8005DE60 -/* 05EA54 8005DE54 240B0004 */ li $t3, 4 -/* 05EA58 8005DE58 10000002 */ b .L8005DE64 -/* 05EA5C 8005DE5C A224003B */ sb $a0, 0x3b($s1) -.L8005DE60: -/* 05EA60 8005DE60 A22B003B */ sb $t3, 0x3b($s1) -.L8005DE64: -/* 05EA64 8005DE64 8223003B */ lb $v1, 0x3b($s1) -/* 05EA68 8005DE68 10000049 */ b .L8005DF90 -/* 05EA6C 8005DE6C 4458F800 */ cfc1 $t8, $31 -.L8005DE70: -/* 05EA70 8005DE70 C604002C */ lwc1 $f4, 0x2c($s0) -/* 05EA74 8005DE74 C4276A88 */ lwc1 $f7, %lo(D_800E6A88)($at) -/* 05EA78 8005DE78 C4266A8C */ lwc1 $f6, %lo(D_800E6A8C)($at) -/* 05EA7C 8005DE7C 46002021 */ cvt.d.s $f0, $f4 -/* 05EA80 8005DE80 4620303C */ c.lt.d $f6, $f0 -/* 05EA84 8005DE84 3C01800E */ lui $at, %hi(D_800E6A94) # $at, 0x800e -/* 05EA88 8005DE88 4500001C */ bc1f .L8005DEFC -/* 05EA8C 8005DE8C 00000000 */ nop -/* 05EA90 8005DE90 C4296A90 */ lwc1 $f9, %lo(D_800E6A90)($at) -/* 05EA94 8005DE94 C4286A94 */ lwc1 $f8, %lo(D_800E6A94)($at) -/* 05EA98 8005DE98 00000000 */ nop -/* 05EA9C 8005DE9C 4628003C */ c.lt.d $f0, $f8 -/* 05EAA0 8005DEA0 00000000 */ nop -/* 05EAA4 8005DEA4 45000015 */ bc1f .L8005DEFC -/* 05EAA8 8005DEA8 00000000 */ nop -/* 05EAAC 8005DEAC 1483000F */ bne $a0, $v1, .L8005DEEC -/* 05EAB0 8005DEB0 240C0001 */ li $t4, 1 -/* 05EAB4 8005DEB4 A22C003B */ sb $t4, 0x3b($s1) -/* 05EAB8 8005DEB8 822E003B */ lb $t6, 0x3b($s1) -/* 05EABC 8005DEBC 8CAD0044 */ lw $t5, 0x44($a1) -/* 05EAC0 8005DEC0 000E78C0 */ sll $t7, $t6, 3 -/* 05EAC4 8005DEC4 01AFC021 */ addu $t8, $t5, $t7 -/* 05EAC8 8005DEC8 8F190004 */ lw $t9, 4($t8) -/* 05EACC 8005DECC 00000000 */ nop -/* 05EAD0 8005DED0 00195900 */ sll $t3, $t9, 4 -/* 05EAD4 8005DED4 256CFFEF */ addiu $t4, $t3, -0x11 -/* 05EAD8 8005DED8 448C5000 */ mtc1 $t4, $f10 -/* 05EADC 8005DEDC 00000000 */ nop -/* 05EAE0 8005DEE0 468054A0 */ cvt.s.w $f18, $f10 -/* 05EAE4 8005DEE4 10000002 */ b .L8005DEF0 -/* 05EAE8 8005DEE8 E612000C */ swc1 $f18, 0xc($s0) -.L8005DEEC: -/* 05EAEC 8005DEEC A220003B */ sb $zero, 0x3b($s1) -.L8005DEF0: -/* 05EAF0 8005DEF0 8223003B */ lb $v1, 0x3b($s1) -/* 05EAF4 8005DEF4 10000026 */ b .L8005DF90 -/* 05EAF8 8005DEF8 4458F800 */ cfc1 $t8, $31 -.L8005DEFC: -/* 05EAFC 8005DEFC 14600006 */ bnez $v1, .L8005DF18 -/* 05EB00 8005DF00 24010004 */ li $at, 4 -/* 05EB04 8005DF04 240E0001 */ li $t6, 1 -/* 05EB08 8005DF08 A22E003B */ sb $t6, 0x3b($s1) -/* 05EB0C 8005DF0C E610000C */ swc1 $f16, 0xc($s0) -/* 05EB10 8005DF10 8223003B */ lb $v1, 0x3b($s1) -/* 05EB14 8005DF14 00000000 */ nop -.L8005DF18: -/* 05EB18 8005DF18 1461001C */ bne $v1, $at, .L8005DF8C -/* 05EB1C 8005DF1C 00000000 */ nop -/* 05EB20 8005DF20 820D01E2 */ lb $t5, 0x1e2($s0) -/* 05EB24 8005DF24 3C01C018 */ li $at, 0xC0180000 # -2.375000 -/* 05EB28 8005DF28 11A00018 */ beqz $t5, .L8005DF8C -/* 05EB2C 8005DF2C 00000000 */ nop -/* 05EB30 8005DF30 C606002C */ lwc1 $f6, 0x2c($s0) -/* 05EB34 8005DF34 44812800 */ mtc1 $at, $f5 -/* 05EB38 8005DF38 44802000 */ mtc1 $zero, $f4 -/* 05EB3C 8005DF3C 46003221 */ cvt.d.s $f8, $f6 -/* 05EB40 8005DF40 4628203C */ c.lt.d $f4, $f8 -/* 05EB44 8005DF44 00000000 */ nop -/* 05EB48 8005DF48 45000010 */ bc1f .L8005DF8C -/* 05EB4C 8005DF4C 00000000 */ nop -/* 05EB50 8005DF50 A226003B */ sb $a2, 0x3b($s1) -/* 05EB54 8005DF54 8238003B */ lb $t8, 0x3b($s1) -/* 05EB58 8005DF58 8CAF0044 */ lw $t7, 0x44($a1) -/* 05EB5C 8005DF5C 0018C8C0 */ sll $t9, $t8, 3 -/* 05EB60 8005DF60 01F95821 */ addu $t3, $t7, $t9 -/* 05EB64 8005DF64 8D6C0004 */ lw $t4, 4($t3) -/* 05EB68 8005DF68 00000000 */ nop -/* 05EB6C 8005DF6C 000C7100 */ sll $t6, $t4, 4 -/* 05EB70 8005DF70 25CDFFEF */ addiu $t5, $t6, -0x11 -/* 05EB74 8005DF74 448D5000 */ mtc1 $t5, $f10 -/* 05EB78 8005DF78 00000000 */ nop -/* 05EB7C 8005DF7C 468054A0 */ cvt.s.w $f18, $f10 -/* 05EB80 8005DF80 E612000C */ swc1 $f18, 0xc($s0) -/* 05EB84 8005DF84 8223003B */ lb $v1, 0x3b($s1) -/* 05EB88 8005DF88 00000000 */ nop -.L8005DF8C: -/* 05EB8C 8005DF8C 4458F800 */ cfc1 $t8, $31 -.L8005DF90: -/* 05EB90 8005DF90 C606000C */ lwc1 $f6, 0xc($s0) -/* 05EB94 8005DF94 37010003 */ ori $at, $t8, 3 -/* 05EB98 8005DF98 38210002 */ xori $at, $at, 2 -/* 05EB9C 8005DF9C 44C1F800 */ ctc1 $at, $31 -/* 05EBA0 8005DFA0 862A0018 */ lh $t2, 0x18($s1) -/* 05EBA4 8005DFA4 46003124 */ cvt.w.s $f4, $f6 -/* 05EBA8 8005DFA8 24010001 */ li $at, 1 -/* 05EBAC 8005DFAC 440F2000 */ mfc1 $t7, $f4 -/* 05EBB0 8005DFB0 44D8F800 */ ctc1 $t8, $31 -/* 05EBB4 8005DFB4 AE200074 */ sw $zero, 0x74($s1) -/* 05EBB8 8005DFB8 10610017 */ beq $v1, $at, .L8005E018 -/* 05EBBC 8005DFBC A62F0018 */ sh $t7, 0x18($s1) -/* 05EBC0 8005DFC0 10830015 */ beq $a0, $v1, .L8005E018 -/* 05EBC4 8005DFC4 000AC903 */ sra $t9, $t2, 4 -/* 05EBC8 8005DFC8 00195C00 */ sll $t3, $t9, 0x10 -/* 05EBCC 8005DFCC 000B5403 */ sra $t2, $t3, 0x10 -/* 05EBD0 8005DFD0 14600002 */ bnez $v1, .L8005DFDC -/* 05EBD4 8005DFD4 24020001 */ li $v0, 1 -/* 05EBD8 8005DFD8 24020003 */ li $v0, 3 -.L8005DFDC: -/* 05EBDC 8005DFDC 1542000E */ bne $t2, $v0, .L8005E018 -/* 05EBE0 8005DFE0 00000000 */ nop -/* 05EBE4 8005DFE4 862D0018 */ lh $t5, 0x18($s1) -/* 05EBE8 8005DFE8 244E0001 */ addiu $t6, $v0, 1 -/* 05EBEC 8005DFEC 000DC103 */ sra $t8, $t5, 4 -/* 05EBF0 8005DFF0 15D80009 */ bne $t6, $t8, .L8005E018 -/* 05EBF4 8005DFF4 24040223 */ li $a0, 547 -/* 05EBF8 8005DFF8 8E25000C */ lw $a1, 0xc($s1) -/* 05EBFC 8005DFFC 8E260010 */ lw $a2, 0x10($s1) -/* 05EC00 8005E000 8E270014 */ lw $a3, 0x14($s1) -/* 05EC04 8005E004 240F0004 */ li $t7, 4 -/* 05EC08 8005E008 AFAF0010 */ sw $t7, 0x10($sp) -/* 05EC0C 8005E00C 0C002556 */ jal func_80009558 -/* 05EC10 8005E010 AFA00014 */ sw $zero, 0x14($sp) -/* 05EC14 8005E014 2409FFFF */ li $t1, -1 -.L8005E018: -/* 05EC18 8005E018 821901D7 */ lb $t9, 0x1d7($s0) -/* 05EC1C 8005E01C 24010007 */ li $at, 7 -/* 05EC20 8005E020 17210010 */ bne $t9, $at, .L8005E064 -/* 05EC24 8005E024 8FA50060 */ lw $a1, 0x60($sp) -/* 05EC28 8005E028 860B0000 */ lh $t3, ($s0) -/* 05EC2C 8005E02C 00000000 */ nop -/* 05EC30 8005E030 152B000C */ bne $t1, $t3, .L8005E064 -/* 05EC34 8005E034 8FA50060 */ lw $a1, 0x60($sp) -/* 05EC38 8005E038 0C008D5A */ jal func_80023568 -/* 05EC3C 8005E03C 00000000 */ nop -/* 05EC40 8005E040 10400007 */ beqz $v0, .L8005E060 -/* 05EC44 8005E044 02202025 */ move $a0, $s1 -/* 05EC48 8005E048 240C00A5 */ li $t4, 165 -/* 05EC4C 8005E04C AFAC0010 */ sw $t4, 0x10($sp) -/* 05EC50 8005E050 02002825 */ move $a1, $s0 -/* 05EC54 8005E054 3C0642C8 */ lui $a2, 0x42c8 -/* 05EC58 8005E058 0C017881 */ jal func_8005E204 -/* 05EC5C 8005E05C 24070089 */ li $a3, 137 -.L8005E060: -/* 05EC60 8005E060 8FA50060 */ lw $a1, 0x60($sp) -.L8005E064: -/* 05EC64 8005E064 0C02BF0F */ jal func_800AFC3C -/* 05EC68 8005E068 02202025 */ move $a0, $s1 -/* 05EC6C 8005E06C 02202025 */ move $a0, $s1 -/* 05EC70 8005E070 02002825 */ move $a1, $s0 -/* 05EC74 8005E074 0C017412 */ jal func_8005D048 -/* 05EC78 8005E078 24060028 */ li $a2, 40 -/* 05EC7C 8005E07C 0C006EB2 */ jal func_8001BAC8 -/* 05EC80 8005E080 00002025 */ move $a0, $zero -/* 05EC84 8005E084 AFA20034 */ sw $v0, 0x34($sp) -/* 05EC88 8005E088 C62A000C */ lwc1 $f10, 0xc($s1) -/* 05EC8C 8005E08C C448000C */ lwc1 $f8, 0xc($v0) -/* 05EC90 8005E090 C6260014 */ lwc1 $f6, 0x14($s1) -/* 05EC94 8005E094 460A4501 */ sub.s $f20, $f8, $f10 -/* 05EC98 8005E098 C4520014 */ lwc1 $f18, 0x14($v0) -/* 05EC9C 8005E09C 4614A102 */ mul.s $f4, $f20, $f20 -/* 05ECA0 8005E0A0 46069381 */ sub.s $f14, $f18, $f6 -/* 05ECA4 8005E0A4 E7AE0050 */ swc1 $f14, 0x50($sp) -/* 05ECA8 8005E0A8 460E7202 */ mul.s $f8, $f14, $f14 -/* 05ECAC 8005E0AC 0C0326B4 */ jal sqrtf -/* 05ECB0 8005E0B0 46082300 */ add.s $f12, $f4, $f8 -/* 05ECB4 8005E0B4 3C01800E */ lui $at, %hi(D_800E6A9C) # $at, 0x800e -/* 05ECB8 8005E0B8 C4336A98 */ lwc1 $f19, %lo(D_800E6A98)($at) -/* 05ECBC 8005E0BC C4326A9C */ lwc1 $f18, %lo(D_800E6A9C)($at) -/* 05ECC0 8005E0C0 460002A1 */ cvt.d.s $f10, $f0 -/* 05ECC4 8005E0C4 4632503C */ c.lt.d $f10, $f18 -/* 05ECC8 8005E0C8 C7AE0050 */ lwc1 $f14, 0x50($sp) -/* 05ECCC 8005E0CC 4500001B */ bc1f .L8005E13C -/* 05ECD0 8005E0D0 00000000 */ nop -/* 05ECD4 8005E0D4 0C01C1D4 */ jal func_80070750 -/* 05ECD8 8005E0D8 4600A306 */ mov.s $f12, $f20 -/* 05ECDC 8005E0DC 862D0000 */ lh $t5, ($s1) -/* 05ECE0 8005E0E0 34018000 */ li $at, 32768 -/* 05ECE4 8005E0E4 31AEFFFF */ andi $t6, $t5, 0xffff -/* 05ECE8 8005E0E8 004E1823 */ subu $v1, $v0, $t6 -/* 05ECEC 8005E0EC 00611821 */ addu $v1, $v1, $at -/* 05ECF0 8005E0F0 34018001 */ li $at, 32769 -/* 05ECF4 8005E0F4 0061082A */ slt $at, $v1, $at -/* 05ECF8 8005E0F8 14200003 */ bnez $at, .L8005E108 -/* 05ECFC 8005E0FC 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 05ED00 8005E100 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 05ED04 8005E104 00611821 */ addu $v1, $v1, $at -.L8005E108: -/* 05ED08 8005E108 28618000 */ slti $at, $v1, -0x8000 -/* 05ED0C 8005E10C 10200002 */ beqz $at, .L8005E118 -/* 05ED10 8005E110 3401FFFF */ li $at, 65535 -/* 05ED14 8005E114 00611821 */ addu $v1, $v1, $at -.L8005E118: -/* 05ED18 8005E118 28610C01 */ slti $at, $v1, 0xc01 -/* 05ED1C 8005E11C 14200003 */ bnez $at, .L8005E12C -/* 05ED20 8005E120 2861F400 */ slti $at, $v1, -0xc00 -/* 05ED24 8005E124 24030C00 */ li $v1, 3072 -/* 05ED28 8005E128 2861F400 */ slti $at, $v1, -0xc00 -.L8005E12C: -/* 05ED2C 8005E12C 10200002 */ beqz $at, .L8005E138 -/* 05ED30 8005E130 00000000 */ nop -/* 05ED34 8005E134 2403F400 */ li $v1, -3072 -.L8005E138: -/* 05ED38 8005E138 A603016C */ sh $v1, 0x16c($s0) -.L8005E13C: -/* 05ED3C 8005E13C 8238003B */ lb $t8, 0x3b($s1) -/* 05ED40 8005E140 3C058012 */ lui $a1, %hi(D_8011D5E0) # $a1, 0x8012 -/* 05ED44 8005E144 2B010002 */ slti $at, $t8, 2 -/* 05ED48 8005E148 1420000B */ bnez $at, .L8005E178 -/* 05ED4C 8005E14C 24A5D5E0 */ addiu $a1, %lo(D_8011D5E0) # addiu $a1, $a1, -0x2a20 -/* 05ED50 8005E150 820F01E7 */ lb $t7, 0x1e7($s0) -/* 05ED54 8005E154 00000000 */ nop -/* 05ED58 8005E158 31F9001F */ andi $t9, $t7, 0x1f -/* 05ED5C 8005E15C 2B21000A */ slti $at, $t9, 0xa -/* 05ED60 8005E160 10200006 */ beqz $at, .L8005E17C -/* 05ED64 8005E164 8FA30034 */ lw $v1, 0x34($sp) -/* 05ED68 8005E168 860B016C */ lh $t3, 0x16c($s0) -/* 05ED6C 8005E16C 00000000 */ nop -/* 05ED70 8005E170 000B6043 */ sra $t4, $t3, 1 -/* 05ED74 8005E174 A60C016C */ sh $t4, 0x16c($s0) -.L8005E178: -/* 05ED78 8005E178 8FA30034 */ lw $v1, 0x34($sp) -.L8005E17C: -/* 05ED7C 8005E17C 00000000 */ nop -/* 05ED80 8005E180 8C62004C */ lw $v0, 0x4c($v1) -/* 05ED84 8005E184 8C700064 */ lw $s0, 0x64($v1) -/* 05ED88 8005E188 8C4D0000 */ lw $t5, ($v0) -/* 05ED8C 8005E18C 00000000 */ nop -/* 05ED90 8005E190 162D000B */ bne $s1, $t5, .L8005E1C0 -/* 05ED94 8005E194 00000000 */ nop -/* 05ED98 8005E198 844E0014 */ lh $t6, 0x14($v0) -/* 05ED9C 8005E19C 00000000 */ nop -/* 05EDA0 8005E1A0 31D80008 */ andi $t8, $t6, 8 -/* 05EDA4 8005E1A4 13000006 */ beqz $t8, .L8005E1C0 -/* 05EDA8 8005E1A8 00000000 */ nop -/* 05EDAC 8005E1AC 822F003B */ lb $t7, 0x3b($s1) -/* 05EDB0 8005E1B0 24010001 */ li $at, 1 -/* 05EDB4 8005E1B4 15E10002 */ bne $t7, $at, .L8005E1C0 -/* 05EDB8 8005E1B8 24190004 */ li $t9, 4 -/* 05EDBC 8005E1BC A2190187 */ sb $t9, 0x187($s0) -.L8005E1C0: -/* 05EDC0 8005E1C0 820B01D8 */ lb $t3, 0x1d8($s0) -/* 05EDC4 8005E1C4 00000000 */ nop -/* 05EDC8 8005E1C8 11600008 */ beqz $t3, .L8005E1EC -/* 05EDCC 8005E1CC 8FBF002C */ lw $ra, 0x2c($sp) -/* 05EDD0 8005E1D0 80AC0000 */ lb $t4, ($a1) -/* 05EDD4 8005E1D4 240D0001 */ li $t5, 1 -/* 05EDD8 8005E1D8 15800003 */ bnez $t4, .L8005E1E8 -/* 05EDDC 8005E1DC 02002025 */ move $a0, $s0 -/* 05EDE0 8005E1E0 0C0172DA */ jal func_8005CB68 -/* 05EDE4 8005E1E4 A0AD0000 */ sb $t5, ($a1) -.L8005E1E8: -/* 05EDE8 8005E1E8 8FBF002C */ lw $ra, 0x2c($sp) -.L8005E1EC: -/* 05EDEC 8005E1EC C7B50018 */ lwc1 $f21, 0x18($sp) -/* 05EDF0 8005E1F0 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 05EDF4 8005E1F4 8FB00024 */ lw $s0, 0x24($sp) -/* 05EDF8 8005E1F8 8FB10028 */ lw $s1, 0x28($sp) -/* 05EDFC 8005E1FC 03E00008 */ jr $ra -/* 05EE00 8005E200 27BD0060 */ addiu $sp, $sp, 0x60 - -glabel func_8005E204 -/* 05EE04 8005E204 27BDFF78 */ addiu $sp, $sp, -0x88 -/* 05EE08 8005E208 AFB70044 */ sw $s7, 0x44($sp) -/* 05EE0C 8005E20C AFB30034 */ sw $s3, 0x34($sp) -/* 05EE10 8005E210 E7B40024 */ swc1 $f20, 0x24($sp) -/* 05EE14 8005E214 4486A000 */ mtc1 $a2, $f20 -/* 05EE18 8005E218 00809825 */ move $s3, $a0 -/* 05EE1C 8005E21C 00A0B825 */ move $s7, $a1 -/* 05EE20 8005E220 AFBF004C */ sw $ra, 0x4c($sp) -/* 05EE24 8005E224 AFB00028 */ sw $s0, 0x28($sp) -/* 05EE28 8005E228 00E08025 */ move $s0, $a3 -/* 05EE2C 8005E22C AFBE0048 */ sw $fp, 0x48($sp) -/* 05EE30 8005E230 AFB60040 */ sw $s6, 0x40($sp) -/* 05EE34 8005E234 AFB5003C */ sw $s5, 0x3c($sp) -/* 05EE38 8005E238 AFB40038 */ sw $s4, 0x38($sp) -/* 05EE3C 8005E23C AFB20030 */ sw $s2, 0x30($sp) -/* 05EE40 8005E240 AFB1002C */ sw $s1, 0x2c($sp) -/* 05EE44 8005E244 E7B50020 */ swc1 $f21, 0x20($sp) -/* 05EE48 8005E248 27A5007C */ addiu $a1, $sp, 0x7c -/* 05EE4C 8005E24C 0C003A62 */ jal func_8000E988 -/* 05EE50 8005E250 27A40080 */ addiu $a0, $sp, 0x80 -/* 05EE54 8005E254 320F0100 */ andi $t7, $s0, 0x100 -/* 05EE58 8005E258 000FC043 */ sra $t8, $t7, 1 -/* 05EE5C 8005E25C 37190008 */ ori $t9, $t8, 8 -/* 05EE60 8005E260 A3B00064 */ sb $s0, 0x64($sp) -/* 05EE64 8005E264 A3B90065 */ sb $t9, 0x65($sp) -/* 05EE68 8005E268 C6E60038 */ lwc1 $f6, 0x38($s7) -/* 05EE6C 8005E26C C664000C */ lwc1 $f4, 0xc($s3) -/* 05EE70 8005E270 46143202 */ mul.s $f8, $f6, $f20 -/* 05EE74 8005E274 8FAE007C */ lw $t6, 0x7c($sp) -/* 05EE78 8005E278 8FBE0098 */ lw $fp, 0x98($sp) -/* 05EE7C 8005E27C 0000A825 */ move $s5, $zero -/* 05EE80 8005E280 46082281 */ sub.s $f10, $f4, $f8 -/* 05EE84 8005E284 4448F800 */ cfc1 $t0, $31 -/* 05EE88 8005E288 00000000 */ nop -/* 05EE8C 8005E28C 35010003 */ ori $at, $t0, 3 -/* 05EE90 8005E290 38210002 */ xori $at, $at, 2 -/* 05EE94 8005E294 44C1F800 */ ctc1 $at, $31 -/* 05EE98 8005E298 00000000 */ nop -/* 05EE9C 8005E29C 46005424 */ cvt.w.s $f16, $f10 -/* 05EEA0 8005E2A0 44098000 */ mfc1 $t1, $f16 -/* 05EEA4 8005E2A4 44C8F800 */ ctc1 $t0, $31 -/* 05EEA8 8005E2A8 A7A90066 */ sh $t1, 0x66($sp) -/* 05EEAC 8005E2AC C6E6003C */ lwc1 $f6, 0x3c($s7) -/* 05EEB0 8005E2B0 C6720010 */ lwc1 $f18, 0x10($s3) -/* 05EEB4 8005E2B4 46143102 */ mul.s $f4, $f6, $f20 -/* 05EEB8 8005E2B8 46049201 */ sub.s $f8, $f18, $f4 -/* 05EEBC 8005E2BC 444AF800 */ cfc1 $t2, $31 -/* 05EEC0 8005E2C0 00000000 */ nop -/* 05EEC4 8005E2C4 35410003 */ ori $at, $t2, 3 -/* 05EEC8 8005E2C8 38210002 */ xori $at, $at, 2 -/* 05EECC 8005E2CC 44C1F800 */ ctc1 $at, $31 -/* 05EED0 8005E2D0 00000000 */ nop -/* 05EED4 8005E2D4 460042A4 */ cvt.w.s $f10, $f8 -/* 05EED8 8005E2D8 440B5000 */ mfc1 $t3, $f10 -/* 05EEDC 8005E2DC 44CAF800 */ ctc1 $t2, $31 -/* 05EEE0 8005E2E0 A7AB0068 */ sh $t3, 0x68($sp) -/* 05EEE4 8005E2E4 C6E60040 */ lwc1 $f6, 0x40($s7) -/* 05EEE8 8005E2E8 C6700014 */ lwc1 $f16, 0x14($s3) -/* 05EEEC 8005E2EC 46143482 */ mul.s $f18, $f6, $f20 -/* 05EEF0 8005E2F0 46128101 */ sub.s $f4, $f16, $f18 -/* 05EEF4 8005E2F4 444CF800 */ cfc1 $t4, $31 -/* 05EEF8 8005E2F8 00000000 */ nop -/* 05EEFC 8005E2FC 35810003 */ ori $at, $t4, 3 -/* 05EF00 8005E300 38210002 */ xori $at, $at, 2 -/* 05EF04 8005E304 44C1F800 */ ctc1 $at, $31 -/* 05EF08 8005E308 3C014010 */ li $at, 0x40100000 # 2.250000 -/* 05EF0C 8005E30C 46002224 */ cvt.w.s $f8, $f4 -/* 05EF10 8005E310 440D4000 */ mfc1 $t5, $f8 -/* 05EF14 8005E314 44CCF800 */ ctc1 $t4, $31 -/* 05EF18 8005E318 19C00058 */ blez $t6, .L8005E47C -/* 05EF1C 8005E31C A7AD006A */ sh $t5, 0x6a($sp) -/* 05EF20 8005E320 4481A800 */ mtc1 $at, $f21 -/* 05EF24 8005E324 4480A000 */ mtc1 $zero, $f20 -/* 05EF28 8005E328 0040B025 */ move $s6, $v0 -.L8005E32C: -/* 05EF2C 8005E32C 8ED10000 */ lw $s1, ($s6) -/* 05EF30 8005E330 2401006B */ li $at, 107 -/* 05EF34 8005E334 862F0048 */ lh $t7, 0x48($s1) -/* 05EF38 8005E338 00000000 */ nop -/* 05EF3C 8005E33C 15E1004B */ bne $t7, $at, .L8005E46C -/* 05EF40 8005E340 8FAF007C */ lw $t7, 0x7c($sp) -/* 05EF44 8005E344 8E32003C */ lw $s2, 0x3c($s1) -/* 05EF48 8005E348 82F80193 */ lb $t8, 0x193($s7) -/* 05EF4C 8005E34C 82420008 */ lb $v0, 8($s2) -/* 05EF50 8005E350 27190001 */ addiu $t9, $t8, 1 -/* 05EF54 8005E354 13220003 */ beq $t9, $v0, .L8005E364 -/* 05EF58 8005E358 00000000 */ nop -/* 05EF5C 8005E35C 14400043 */ bnez $v0, .L8005E46C -/* 05EF60 8005E360 8FAF007C */ lw $t7, 0x7c($sp) -.L8005E364: -/* 05EF64 8005E364 C62A000C */ lwc1 $f10, 0xc($s1) -/* 05EF68 8005E368 C666000C */ lwc1 $f6, 0xc($s3) -/* 05EF6C 8005E36C C6300010 */ lwc1 $f16, 0x10($s1) -/* 05EF70 8005E370 46065001 */ sub.s $f0, $f10, $f6 -/* 05EF74 8005E374 C6720010 */ lwc1 $f18, 0x10($s3) -/* 05EF78 8005E378 46000282 */ mul.s $f10, $f0, $f0 -/* 05EF7C 8005E37C 46128081 */ sub.s $f2, $f16, $f18 -/* 05EF80 8005E380 C6240014 */ lwc1 $f4, 0x14($s1) -/* 05EF84 8005E384 C6680014 */ lwc1 $f8, 0x14($s3) -/* 05EF88 8005E388 46021182 */ mul.s $f6, $f2, $f2 -/* 05EF8C 8005E38C 46082381 */ sub.s $f14, $f4, $f8 -/* 05EF90 8005E390 460E7482 */ mul.s $f18, $f14, $f14 -/* 05EF94 8005E394 46065400 */ add.s $f16, $f10, $f6 -/* 05EF98 8005E398 0C0326B4 */ jal sqrtf -/* 05EF9C 8005E39C 46128300 */ add.s $f12, $f16, $f18 -/* 05EFA0 8005E3A0 82480009 */ lb $t0, 9($s2) -/* 05EFA4 8005E3A4 46000121 */ cvt.d.s $f4, $f0 -/* 05EFA8 8005E3A8 310900FF */ andi $t1, $t0, 0xff -/* 05EFAC 8005E3AC 44894000 */ mtc1 $t1, $f8 -/* 05EFB0 8005E3B0 00000000 */ nop -/* 05EFB4 8005E3B4 468042A0 */ cvt.s.w $f10, $f8 -/* 05EFB8 8005E3B8 460051A1 */ cvt.d.s $f6, $f10 -/* 05EFBC 8005E3BC 46343402 */ mul.d $f16, $f6, $f20 -/* 05EFC0 8005E3C0 4630203C */ c.lt.d $f4, $f16 -/* 05EFC4 8005E3C4 00000000 */ nop -/* 05EFC8 8005E3C8 45000026 */ bc1f .L8005E464 -/* 05EFCC 8005E3CC 00000000 */ nop -/* 05EFD0 8005E3D0 8E2A0078 */ lw $t2, 0x78($s1) -/* 05EFD4 8005E3D4 240B0001 */ li $t3, 1 -/* 05EFD8 8005E3D8 15400023 */ bnez $t2, .L8005E468 -/* 05EFDC 8005E3DC 27A40064 */ addiu $a0, $sp, 0x64 -/* 05EFE0 8005E3E0 AE2B0078 */ sw $t3, 0x78($s1) -/* 05EFE4 8005E3E4 0C003A95 */ jal func_8000EA54 -/* 05EFE8 8005E3E8 24050001 */ li $a1, 1 -/* 05EFEC 8005E3EC 1040001E */ beqz $v0, .L8005E468 -/* 05EFF0 8005E3F0 00408025 */ move $s0, $v0 -/* 05EFF4 8005E3F4 AC40003C */ sw $zero, 0x3c($v0) -/* 05EFF8 8005E3F8 C672001C */ lwc1 $f18, 0x1c($s3) -/* 05EFFC 8005E3FC 00002025 */ move $a0, $zero -/* 05F000 8005E400 E452001C */ swc1 $f18, 0x1c($v0) -/* 05F004 8005E404 C6680020 */ lwc1 $f8, 0x20($s3) -/* 05F008 8005E408 240500FF */ li $a1, 255 -/* 05F00C 8005E40C E4480020 */ swc1 $f8, 0x20($v0) -/* 05F010 8005E410 C66A0024 */ lwc1 $f10, 0x24($s3) -/* 05F014 8005E414 AC510078 */ sw $s1, 0x78($v0) -/* 05F018 8005E418 E44A0024 */ swc1 $f10, 0x24($v0) -/* 05F01C 8005E41C 824C000A */ lb $t4, 0xa($s2) -/* 05F020 8005E420 33D4FFFF */ andi $s4, $fp, 0xffff -/* 05F024 8005E424 000C6900 */ sll $t5, $t4, 4 -/* 05F028 8005E428 01AC6823 */ subu $t5, $t5, $t4 -/* 05F02C 8005E42C 000D6880 */ sll $t5, $t5, 2 -/* 05F030 8005E430 0C01BE53 */ jal func_8006F94C -/* 05F034 8005E434 AC4D007C */ sw $t5, 0x7c($v0) -/* 05F038 8005E438 8E05000C */ lw $a1, 0xc($s0) -/* 05F03C 8005E43C 8E060010 */ lw $a2, 0x10($s0) -/* 05F040 8005E440 8E070014 */ lw $a3, 0x14($s0) -/* 05F044 8005E444 A6020018 */ sh $v0, 0x18($s0) -/* 05F048 8005E448 240E0004 */ li $t6, 4 -/* 05F04C 8005E44C AFAE0010 */ sw $t6, 0x10($sp) -/* 05F050 8005E450 AFA00014 */ sw $zero, 0x14($sp) -/* 05F054 8005E454 0C002556 */ jal func_80009558 -/* 05F058 8005E458 3284FFFF */ andi $a0, $s4, 0xffff -/* 05F05C 8005E45C 10000003 */ b .L8005E46C -/* 05F060 8005E460 8FAF007C */ lw $t7, 0x7c($sp) -.L8005E464: -/* 05F064 8005E464 AE200078 */ sw $zero, 0x78($s1) -.L8005E468: -/* 05F068 8005E468 8FAF007C */ lw $t7, 0x7c($sp) -.L8005E46C: -/* 05F06C 8005E46C 26B50001 */ addiu $s5, $s5, 1 -/* 05F070 8005E470 02AF082A */ slt $at, $s5, $t7 -/* 05F074 8005E474 1420FFAD */ bnez $at, .L8005E32C -/* 05F078 8005E478 26D60004 */ addiu $s6, $s6, 4 -.L8005E47C: -/* 05F07C 8005E47C 8FBF004C */ lw $ra, 0x4c($sp) -/* 05F080 8005E480 C7B50020 */ lwc1 $f21, 0x20($sp) -/* 05F084 8005E484 C7B40024 */ lwc1 $f20, 0x24($sp) -/* 05F088 8005E488 8FB00028 */ lw $s0, 0x28($sp) -/* 05F08C 8005E48C 8FB1002C */ lw $s1, 0x2c($sp) -/* 05F090 8005E490 8FB20030 */ lw $s2, 0x30($sp) -/* 05F094 8005E494 8FB30034 */ lw $s3, 0x34($sp) -/* 05F098 8005E498 8FB40038 */ lw $s4, 0x38($sp) -/* 05F09C 8005E49C 8FB5003C */ lw $s5, 0x3c($sp) -/* 05F0A0 8005E4A0 8FB60040 */ lw $s6, 0x40($sp) -/* 05F0A4 8005E4A4 8FB70044 */ lw $s7, 0x44($sp) -/* 05F0A8 8005E4A8 8FBE0048 */ lw $fp, 0x48($sp) -/* 05F0AC 8005E4AC 03E00008 */ jr $ra -/* 05F0B0 8005E4B0 27BD0088 */ addiu $sp, $sp, 0x88 - -/* 05F0B4 8005E4B4 00000000 */ nop -/* 05F0B8 8005E4B8 00000000 */ nop -/* 05F0BC 8005E4BC 00000000 */ nop diff --git a/asm/unknown_05F690.s b/asm/unknown_05F690.s deleted file mode 100755 index cf9d94fb..00000000 --- a/asm/unknown_05F690.s +++ /dev/null @@ -1,3503 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_8005EA90 -/* 05F690 8005EA90 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 05F694 8005EA94 AFA40040 */ sw $a0, 0x40($sp) -/* 05F698 8005EA98 AFBF0024 */ sw $ra, 0x24($sp) -/* 05F69C 8005EA9C AFB10020 */ sw $s1, 0x20($sp) -/* 05F6A0 8005EAA0 AFB0001C */ sw $s0, 0x1c($sp) -/* 05F6A4 8005EAA4 3C04800E */ lui $a0, %hi(D_800DCE60) # $a0, 0x800e -/* 05F6A8 8005EAA8 00E08025 */ move $s0, $a3 -/* 05F6AC 8005EAAC 00C08825 */ move $s1, $a2 -/* 05F6B0 8005EAB0 AFA50044 */ sw $a1, 0x44($sp) -/* 05F6B4 8005EAB4 0C01729E */ jal func_8005CA78 -/* 05F6B8 8005EAB8 2484CE60 */ addiu $a0, %lo(D_800DCE60) # addiu $a0, $a0, -0x31a0 -/* 05F6BC 8005EABC A20001EC */ sb $zero, 0x1ec($s0) -/* 05F6C0 8005EAC0 822E003B */ lb $t6, 0x3b($s1) -/* 05F6C4 8005EAC4 3C01800E */ lui $at, %hi(D_800E6AB4) # $at, 0x800e -/* 05F6C8 8005EAC8 A7AE003E */ sh $t6, 0x3e($sp) -/* 05F6CC 8005EACC 862F0018 */ lh $t7, 0x18($s1) -/* 05F6D0 8005EAD0 C4276AB0 */ lwc1 $f7, %lo(D_800E6AB0)($at) -/* 05F6D4 8005EAD4 A7AF003C */ sh $t7, 0x3c($sp) -/* 05F6D8 8005EAD8 8618016A */ lh $t8, 0x16a($s0) -/* 05F6DC 8005EADC C4266AB4 */ lwc1 $f6, %lo(D_800E6AB4)($at) -/* 05F6E0 8005EAE0 A7B8003A */ sh $t8, 0x3a($sp) -/* 05F6E4 8005EAE4 C604002C */ lwc1 $f4, 0x2c($s0) -/* 05F6E8 8005EAE8 00000000 */ nop -/* 05F6EC 8005EAEC 46002021 */ cvt.d.s $f0, $f4 -/* 05F6F0 8005EAF0 4626003C */ c.lt.d $f0, $f6 -/* 05F6F4 8005EAF4 00000000 */ nop -/* 05F6F8 8005EAF8 45000009 */ bc1f .L8005EB20 -/* 05F6FC 8005EAFC 3C01800E */ lui $at, %hi(D_800E6ABC) # $at, 0x800e -/* 05F700 8005EB00 C4296AB8 */ lwc1 $f9, %lo(D_800E6AB8)($at) -/* 05F704 8005EB04 C4286ABC */ lwc1 $f8, %lo(D_800E6ABC)($at) -/* 05F708 8005EB08 8FB90054 */ lw $t9, 0x54($sp) -/* 05F70C 8005EB0C 4620403C */ c.lt.d $f8, $f0 -/* 05F710 8005EB10 00000000 */ nop -/* 05F714 8005EB14 45000002 */ bc1f .L8005EB20 -/* 05F718 8005EB18 00000000 */ nop -/* 05F71C 8005EB1C AF200000 */ sw $zero, ($t9) -.L8005EB20: -/* 05F720 8005EB20 820A01D8 */ lb $t2, 0x1d8($s0) -/* 05F724 8005EB24 24010001 */ li $at, 1 -/* 05F728 8005EB28 1541000C */ bne $t2, $at, .L8005EB5C -/* 05F72C 8005EB2C 8FA30058 */ lw $v1, 0x58($sp) -/* 05F730 8005EB30 0C008D5A */ jal func_80023568 -/* 05F734 8005EB34 00000000 */ nop -/* 05F738 8005EB38 10400008 */ beqz $v0, .L8005EB5C -/* 05F73C 8005EB3C 8FA30058 */ lw $v1, 0x58($sp) -/* 05F740 8005EB40 0C008500 */ jal func_80021400 -/* 05F744 8005EB44 24040082 */ li $a0, 130 -/* 05F748 8005EB48 820B01D8 */ lb $t3, 0x1d8($s0) -/* 05F74C 8005EB4C 00000000 */ nop -/* 05F750 8005EB50 256C0001 */ addiu $t4, $t3, 1 -/* 05F754 8005EB54 A20C01D8 */ sb $t4, 0x1d8($s0) -/* 05F758 8005EB58 8FA30058 */ lw $v1, 0x58($sp) -.L8005EB5C: -/* 05F75C 8005EB5C 24040064 */ li $a0, 100 -/* 05F760 8005EB60 8C690000 */ lw $t1, ($v1) -/* 05F764 8005EB64 00000000 */ nop -/* 05F768 8005EB68 15240002 */ bne $t1, $a0, .L8005EB74 -/* 05F76C 8005EB6C 3C018012 */ lui $at, %hi(D_8011D600) # $at, 0x8012 -/* 05F770 8005EB70 A020D600 */ sb $zero, %lo(D_8011D600)($at) -.L8005EB74: -/* 05F774 8005EB74 860D0000 */ lh $t5, ($s0) -/* 05F778 8005EB78 2408FFFF */ li $t0, -1 -/* 05F77C 8005EB7C 150D001E */ bne $t0, $t5, .L8005EBF8 -/* 05F780 8005EB80 A20001F5 */ sb $zero, 0x1f5($s0) -/* 05F784 8005EB84 8C620000 */ lw $v0, ($v1) -/* 05F788 8005EB88 00000000 */ nop -/* 05F78C 8005EB8C 1082001A */ beq $a0, $v0, .L8005EBF8 -/* 05F790 8005EB90 244EFFE2 */ addiu $t6, $v0, -0x1e -/* 05F794 8005EB94 05C10016 */ bgez $t6, .L8005EBF0 -/* 05F798 8005EB98 AC6E0000 */ sw $t6, ($v1) -/* 05F79C 8005EB9C 3C188012 */ lui $t8, %hi(D_8011D601) # $t8, 0x8012 -/* 05F7A0 8005EBA0 8318D601 */ lb $t8, %lo(D_8011D601)($t8) -/* 05F7A4 8005EBA4 00002025 */ move $a0, $zero -/* 05F7A8 8005EBA8 17000008 */ bnez $t8, .L8005EBCC -/* 05F7AC 8005EBAC 8FA20050 */ lw $v0, 0x50($sp) -/* 05F7B0 8005EBB0 0C0172C1 */ jal func_8005CB04 -/* 05F7B4 8005EBB4 AFA90028 */ sw $t1, 0x28($sp) -/* 05F7B8 8005EBB8 8FA30058 */ lw $v1, 0x58($sp) -/* 05F7BC 8005EBBC 8FA90028 */ lw $t1, 0x28($sp) -/* 05F7C0 8005EBC0 2419000A */ li $t9, 10 -/* 05F7C4 8005EBC4 A21901D3 */ sb $t9, 0x1d3($s0) -/* 05F7C8 8005EBC8 8FA20050 */ lw $v0, 0x50($sp) -.L8005EBCC: -/* 05F7CC 8005EBCC 240A0001 */ li $t2, 1 -/* 05F7D0 8005EBD0 3C018012 */ lui $at, %hi(D_8011D601) # $at, 0x8012 -/* 05F7D4 8005EBD4 A02AD601 */ sb $t2, %lo(D_8011D601)($at) -/* 05F7D8 8005EBD8 AC600000 */ sw $zero, ($v1) -/* 05F7DC 8005EBDC 8C4B0000 */ lw $t3, ($v0) -/* 05F7E0 8005EBE0 00000000 */ nop -/* 05F7E4 8005EBE4 356C8000 */ ori $t4, $t3, 0x8000 -/* 05F7E8 8005EBE8 10000003 */ b .L8005EBF8 -/* 05F7EC 8005EBEC AC4C0000 */ sw $t4, ($v0) -.L8005EBF0: -/* 05F7F0 8005EBF0 3C018012 */ lui $at, %hi(D_8011D601) # $at, 0x8012 -/* 05F7F4 8005EBF4 A020D601 */ sb $zero, %lo(D_8011D601)($at) -.L8005EBF8: -/* 05F7F8 8005EBF8 240D000C */ li $t5, 12 -/* 05F7FC 8005EBFC A20D01D6 */ sb $t5, 0x1d6($s0) -/* 05F800 8005EC00 8FA50044 */ lw $a1, 0x44($sp) -/* 05F804 8005EC04 8FA40040 */ lw $a0, 0x40($sp) -/* 05F808 8005EC08 AFA90028 */ sw $t1, 0x28($sp) -/* 05F80C 8005EC0C 02203025 */ move $a2, $s1 -/* 05F810 8005EC10 0C0125E5 */ jal func_80049794 -/* 05F814 8005EC14 02003825 */ move $a3, $s0 -/* 05F818 8005EC18 8FA30058 */ lw $v1, 0x58($sp) -/* 05F81C 8005EC1C 8FA90028 */ lw $t1, 0x28($sp) -/* 05F820 8005EC20 820E01D7 */ lb $t6, 0x1d7($s0) -/* 05F824 8005EC24 00000000 */ nop -/* 05F828 8005EC28 A20E01D6 */ sb $t6, 0x1d6($s0) -/* 05F82C 8005EC2C AC690000 */ sw $t1, ($v1) -/* 05F830 8005EC30 AE200074 */ sw $zero, 0x74($s1) -/* 05F834 8005EC34 87AF003A */ lh $t7, 0x3a($sp) -/* 05F838 8005EC38 00000000 */ nop -/* 05F83C 8005EC3C A60F016A */ sh $t7, 0x16a($s0) -/* 05F840 8005EC40 87B8003E */ lh $t8, 0x3e($sp) -/* 05F844 8005EC44 00000000 */ nop -/* 05F848 8005EC48 A238003B */ sb $t8, 0x3b($s1) -/* 05F84C 8005EC4C 87B9003C */ lh $t9, 0x3c($sp) -/* 05F850 8005EC50 00000000 */ nop -/* 05F854 8005EC54 A6390018 */ sh $t9, 0x18($s1) -/* 05F858 8005EC58 820A0187 */ lb $t2, 0x187($s0) -/* 05F85C 8005EC5C 00000000 */ nop -/* 05F860 8005EC60 11400027 */ beqz $t2, .L8005ED00 -/* 05F864 8005EC64 00000000 */ nop -/* 05F868 8005EC68 822B003B */ lb $t3, 0x3b($s1) -/* 05F86C 8005EC6C 24010005 */ li $at, 5 -/* 05F870 8005EC70 11610023 */ beq $t3, $at, .L8005ED00 -/* 05F874 8005EC74 00000000 */ nop -/* 05F878 8005EC78 0C0172C1 */ jal func_8005CB04 -/* 05F87C 8005EC7C 24040001 */ li $a0, 1 -/* 05F880 8005EC80 24040011 */ li $a0, 17 -/* 05F884 8005EC84 0C000741 */ jal func_80001D04 -/* 05F888 8005EC88 00002825 */ move $a1, $zero -/* 05F88C 8005EC8C 3C014140 */ li $at, 0x41400000 # 12.000000 -/* 05F890 8005EC90 44816000 */ mtc1 $at, $f12 -/* 05F894 8005EC94 0C01A7CA */ jal func_80069F28 -/* 05F898 8005EC98 00000000 */ nop -/* 05F89C 8005EC9C 3C01800E */ lui $at, %hi(D_800E6AC4) # $at, 0x800e -/* 05F8A0 8005ECA0 C62A001C */ lwc1 $f10, 0x1c($s1) -/* 05F8A4 8005ECA4 C4216AC0 */ lwc1 $f1, %lo(D_800E6AC0)($at) -/* 05F8A8 8005ECA8 C4206AC4 */ lwc1 $f0, %lo(D_800E6AC4)($at) -/* 05F8AC 8005ECAC 46005121 */ cvt.d.s $f4, $f10 -/* 05F8B0 8005ECB0 46202182 */ mul.d $f6, $f4, $f0 -/* 05F8B4 8005ECB4 C62A0024 */ lwc1 $f10, 0x24($s1) -/* 05F8B8 8005ECB8 44809000 */ mtc1 $zero, $f18 -/* 05F8BC 8005ECBC 46005121 */ cvt.d.s $f4, $f10 -/* 05F8C0 8005ECC0 240C0005 */ li $t4, 5 -/* 05F8C4 8005ECC4 46203220 */ cvt.s.d $f8, $f6 -/* 05F8C8 8005ECC8 A22C003B */ sb $t4, 0x3b($s1) -/* 05F8CC 8005ECCC 46202182 */ mul.d $f6, $f4, $f0 -/* 05F8D0 8005ECD0 E628001C */ swc1 $f8, 0x1c($s1) -/* 05F8D4 8005ECD4 3C014010 */ li $at, 0x40100000 # 2.250000 -/* 05F8D8 8005ECD8 46203220 */ cvt.s.d $f8, $f6 -/* 05F8DC 8005ECDC 44803000 */ mtc1 $zero, $f6 -/* 05F8E0 8005ECE0 E6280024 */ swc1 $f8, 0x24($s1) -/* 05F8E4 8005ECE4 E612000C */ swc1 $f18, 0xc($s0) -/* 05F8E8 8005ECE8 C62A0020 */ lwc1 $f10, 0x20($s1) -/* 05F8EC 8005ECEC 44813800 */ mtc1 $at, $f7 -/* 05F8F0 8005ECF0 46005121 */ cvt.d.s $f4, $f10 -/* 05F8F4 8005ECF4 46262200 */ add.d $f8, $f4, $f6 -/* 05F8F8 8005ECF8 462042A0 */ cvt.s.d $f10, $f8 -/* 05F8FC 8005ECFC E62A0020 */ swc1 $f10, 0x20($s1) -.L8005ED00: -/* 05F900 8005ED00 8E0D0148 */ lw $t5, 0x148($s0) -/* 05F904 8005ED04 A2000187 */ sb $zero, 0x187($s0) -/* 05F908 8005ED08 11A00019 */ beqz $t5, .L8005ED70 -/* 05F90C 8005ED0C 00000000 */ nop -/* 05F910 8005ED10 C620001C */ lwc1 $f0, 0x1c($s1) -/* 05F914 8005ED14 C62E0024 */ lwc1 $f14, 0x24($s1) -/* 05F918 8005ED18 46000082 */ mul.s $f2, $f0, $f0 -/* 05F91C 8005ED1C 00000000 */ nop -/* 05F920 8005ED20 460E7402 */ mul.s $f16, $f14, $f14 -/* 05F924 8005ED24 00000000 */ nop -/* 05F928 8005ED28 46021102 */ mul.s $f4, $f2, $f2 -/* 05F92C 8005ED2C 00000000 */ nop -/* 05F930 8005ED30 46108182 */ mul.s $f6, $f16, $f16 -/* 05F934 8005ED34 0C0326B4 */ jal sqrtf -/* 05F938 8005ED38 46062300 */ add.s $f12, $f4, $f6 -/* 05F93C 8005ED3C 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 05F940 8005ED40 44814800 */ mtc1 $at, $f9 -/* 05F944 8005ED44 44804000 */ mtc1 $zero, $f8 -/* 05F948 8005ED48 46000087 */ neg.s $f2, $f0 -/* 05F94C 8005ED4C 460012A1 */ cvt.d.s $f10, $f2 -/* 05F950 8005ED50 462A403C */ c.lt.d $f8, $f10 -/* 05F954 8005ED54 44809000 */ mtc1 $zero, $f18 -/* 05F958 8005ED58 45000005 */ bc1f .L8005ED70 -/* 05F95C 8005ED5C E602002C */ swc1 $f2, 0x2c($s0) -/* 05F960 8005ED60 E612002C */ swc1 $f18, 0x2c($s0) -/* 05F964 8005ED64 E632001C */ swc1 $f18, 0x1c($s1) -/* 05F968 8005ED68 E6320020 */ swc1 $f18, 0x20($s1) -/* 05F96C 8005ED6C E6320024 */ swc1 $f18, 0x24($s1) -.L8005ED70: -/* 05F970 8005ED70 82040192 */ lb $a0, 0x192($s0) -/* 05F974 8005ED74 920501C8 */ lbu $a1, 0x1c8($s0) -/* 05F978 8005ED78 0C006E87 */ jal func_8001BA1C -/* 05F97C 8005ED7C A7A00038 */ sh $zero, 0x38($sp) -/* 05F980 8005ED80 820E01CA */ lb $t6, 0x1ca($s0) -/* 05F984 8005ED84 87A60038 */ lh $a2, 0x38($sp) -/* 05F988 8005ED88 004E7821 */ addu $t7, $v0, $t6 -/* 05F98C 8005ED8C 81F80036 */ lb $t8, 0x36($t7) -/* 05F990 8005ED90 24090001 */ li $t1, 1 -/* 05F994 8005ED94 44809000 */ mtc1 $zero, $f18 -/* 05F998 8005ED98 15380004 */ bne $t1, $t8, .L8005EDAC -/* 05F99C 8005ED9C 2408FFFF */ li $t0, -1 -/* 05F9A0 8005EDA0 00093400 */ sll $a2, $t1, 0x10 -/* 05F9A4 8005EDA4 0006CC03 */ sra $t9, $a2, 0x10 -/* 05F9A8 8005EDA8 03203025 */ move $a2, $t9 -.L8005EDAC: -/* 05F9AC 8005EDAC 862A0002 */ lh $t2, 2($s1) -/* 05F9B0 8005EDB0 C7AE0044 */ lwc1 $f14, 0x44($sp) -/* 05F9B4 8005EDB4 000A5823 */ negu $t3, $t2 -/* 05F9B8 8005EDB8 A60B0162 */ sh $t3, 0x162($s0) -/* 05F9BC 8005EDBC 8E2C0068 */ lw $t4, 0x68($s1) -/* 05F9C0 8005EDC0 8223003B */ lb $v1, 0x3b($s1) -/* 05F9C4 8005EDC4 8D820000 */ lw $v0, ($t4) -/* 05F9C8 8005EDC8 000370C0 */ sll $t6, $v1, 3 -/* 05F9CC 8005EDCC 8C450000 */ lw $a1, ($v0) -/* 05F9D0 8005EDD0 C606002C */ lwc1 $f6, 0x2c($s0) -/* 05F9D4 8005EDD4 8CAD0044 */ lw $t5, 0x44($a1) -/* 05F9D8 8005EDD8 460E3202 */ mul.s $f8, $f6, $f14 -/* 05F9DC 8005EDDC 01AE7821 */ addu $t7, $t5, $t6 -/* 05F9E0 8005EDE0 8DF80004 */ lw $t8, 4($t7) -/* 05F9E4 8005EDE4 3C01800E */ lui $at, %hi(D_800E6ACC) # $at, 0x800e -/* 05F9E8 8005EDE8 0018C900 */ sll $t9, $t8, 4 -/* 05F9EC 8005EDEC 272AFFEF */ addiu $t2, $t9, -0x11 -/* 05F9F0 8005EDF0 448A2000 */ mtc1 $t2, $f4 -/* 05F9F4 8005EDF4 C4256AC8 */ lwc1 $f5, %lo(D_800E6AC8)($at) -/* 05F9F8 8005EDF8 468020A0 */ cvt.s.w $f2, $f4 -/* 05F9FC 8005EDFC C4246ACC */ lwc1 $f4, %lo(D_800E6ACC)($at) -/* 05FA00 8005EE00 44804800 */ mtc1 $zero, $f9 -/* 05FA04 8005EE04 460042A1 */ cvt.d.s $f10, $f8 -/* 05FA08 8005EE08 46245182 */ mul.d $f6, $f10, $f4 -/* 05FA0C 8005EE0C 44804000 */ mtc1 $zero, $f8 -/* 05FA10 8005EE10 46203320 */ cvt.s.d $f12, $f6 -/* 05FA14 8005EE14 46006021 */ cvt.d.s $f0, $f12 -/* 05FA18 8005EE18 4628003E */ c.le.d $f0, $f8 -/* 05FA1C 8005EE1C 00000000 */ nop -/* 05FA20 8005EE20 4500000B */ bc1f .L8005EE50 -/* 05FA24 8005EE24 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 05FA28 8005EE28 44815800 */ mtc1 $at, $f11 -/* 05FA2C 8005EE2C 44805000 */ mtc1 $zero, $f10 -/* 05FA30 8005EE30 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 05FA34 8005EE34 4620503C */ c.lt.d $f10, $f0 -/* 05FA38 8005EE38 00000000 */ nop -/* 05FA3C 8005EE3C 4500000E */ bc1f .L8005EE78 -/* 05FA40 8005EE40 00000000 */ nop -/* 05FA44 8005EE44 44816000 */ mtc1 $at, $f12 -/* 05FA48 8005EE48 1000000C */ b .L8005EE7C -/* 05FA4C 8005EE4C 2C610006 */ sltiu $at, $v1, 6 -.L8005EE50: -/* 05FA50 8005EE50 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 05FA54 8005EE54 44812800 */ mtc1 $at, $f5 -/* 05FA58 8005EE58 44802000 */ mtc1 $zero, $f4 -/* 05FA5C 8005EE5C 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 05FA60 8005EE60 4624003C */ c.lt.d $f0, $f4 -/* 05FA64 8005EE64 00000000 */ nop -/* 05FA68 8005EE68 45000003 */ bc1f .L8005EE78 -/* 05FA6C 8005EE6C 00000000 */ nop -/* 05FA70 8005EE70 44816000 */ mtc1 $at, $f12 -/* 05FA74 8005EE74 00000000 */ nop -.L8005EE78: -/* 05FA78 8005EE78 2C610006 */ sltiu $at, $v1, 6 -.L8005EE7C: -/* 05FA7C 8005EE7C 1020004F */ beqz $at, .L8005EFBC -/* 05FA80 8005EE80 00035880 */ sll $t3, $v1, 2 -/* 05FA84 8005EE84 3C01800E */ lui $at, 0x800e -/* 05FA88 8005EE88 002B0821 */ addu $at, $at, $t3 -/* 05FA8C 8005EE8C 8C2B6AD0 */ lw $t3, 0x6ad0($at) -/* 05FA90 8005EE90 00000000 */ nop -/* 05FA94 8005EE94 01600008 */ jr $t3 -/* 05FA98 8005EE98 00000000 */ nop -/* 05FA9C 8005EE9C C606000C */ lwc1 $f6, 0xc($s0) -/* 05FAA0 8005EEA0 460072A1 */ cvt.d.s $f10, $f14 -/* 05FAA4 8005EEA4 46003221 */ cvt.d.s $f8, $f6 -/* 05FAA8 8005EEA8 462A4100 */ add.d $f4, $f8, $f10 -/* 05FAAC 8005EEAC A20001CD */ sb $zero, 0x1cd($s0) -/* 05FAB0 8005EEB0 462021A0 */ cvt.s.d $f6, $f4 -/* 05FAB4 8005EEB4 24040002 */ li $a0, 2 -/* 05FAB8 8005EEB8 10000041 */ b .L8005EFC0 -/* 05FABC 8005EEBC E606000C */ swc1 $f6, 0xc($s0) -/* 05FAC0 8005EEC0 920C01CD */ lbu $t4, 0x1cd($s0) -/* 05FAC4 8005EEC4 24040002 */ li $a0, 2 -/* 05FAC8 8005EEC8 148C0006 */ bne $a0, $t4, .L8005EEE4 -/* 05FACC 8005EECC 00000000 */ nop -/* 05FAD0 8005EED0 C608000C */ lwc1 $f8, 0xc($s0) -/* 05FAD4 8005EED4 00000000 */ nop -/* 05FAD8 8005EED8 460C4280 */ add.s $f10, $f8, $f12 -/* 05FADC 8005EEDC 10000038 */ b .L8005EFC0 -/* 05FAE0 8005EEE0 E60A000C */ swc1 $f10, 0xc($s0) -.L8005EEE4: -/* 05FAE4 8005EEE4 C604000C */ lwc1 $f4, 0xc($s0) -/* 05FAE8 8005EEE8 00000000 */ nop -/* 05FAEC 8005EEEC 460C2181 */ sub.s $f6, $f4, $f12 -/* 05FAF0 8005EEF0 10000033 */ b .L8005EFC0 -/* 05FAF4 8005EEF4 E606000C */ swc1 $f6, 0xc($s0) -/* 05FAF8 8005EEF8 C608000C */ lwc1 $f8, 0xc($s0) -/* 05FAFC 8005EEFC 240D0002 */ li $t5, 2 -/* 05FB00 8005EF00 460C4281 */ sub.s $f10, $f8, $f12 -/* 05FB04 8005EF04 A20D01CD */ sb $t5, 0x1cd($s0) -/* 05FB08 8005EF08 E60A000C */ swc1 $f10, 0xc($s0) -/* 05FB0C 8005EF0C 1000002C */ b .L8005EFC0 -/* 05FB10 8005EF10 24040002 */ li $a0, 2 -/* 05FB14 8005EF14 920E01CD */ lbu $t6, 0x1cd($s0) -/* 05FB18 8005EF18 24010004 */ li $at, 4 -/* 05FB1C 8005EF1C 15C1000A */ bne $t6, $at, .L8005EF48 -/* 05FB20 8005EF20 00000000 */ nop -/* 05FB24 8005EF24 C604000C */ lwc1 $f4, 0xc($s0) -/* 05FB28 8005EF28 46007021 */ cvt.d.s $f0, $f14 -/* 05FB2C 8005EF2C 46200200 */ add.d $f8, $f0, $f0 -/* 05FB30 8005EF30 24040002 */ li $a0, 2 -/* 05FB34 8005EF34 460021A1 */ cvt.d.s $f6, $f4 -/* 05FB38 8005EF38 46283281 */ sub.d $f10, $f6, $f8 -/* 05FB3C 8005EF3C 46205120 */ cvt.s.d $f4, $f10 -/* 05FB40 8005EF40 1000001F */ b .L8005EFC0 -/* 05FB44 8005EF44 E604000C */ swc1 $f4, 0xc($s0) -.L8005EF48: -/* 05FB48 8005EF48 C606000C */ lwc1 $f6, 0xc($s0) -/* 05FB4C 8005EF4C 46007021 */ cvt.d.s $f0, $f14 -/* 05FB50 8005EF50 46200280 */ add.d $f10, $f0, $f0 -/* 05FB54 8005EF54 46003221 */ cvt.d.s $f8, $f6 -/* 05FB58 8005EF58 462A4100 */ add.d $f4, $f8, $f10 -/* 05FB5C 8005EF5C 462021A0 */ cvt.s.d $f6, $f4 -/* 05FB60 8005EF60 E606000C */ swc1 $f6, 0xc($s0) -/* 05FB64 8005EF64 10000016 */ b .L8005EFC0 -/* 05FB68 8005EF68 24040002 */ li $a0, 2 -/* 05FB6C 8005EF6C C608000C */ lwc1 $f8, 0xc($s0) -/* 05FB70 8005EF70 46007021 */ cvt.d.s $f0, $f14 -/* 05FB74 8005EF74 46200100 */ add.d $f4, $f0, $f0 -/* 05FB78 8005EF78 240F0004 */ li $t7, 4 -/* 05FB7C 8005EF7C 460042A1 */ cvt.d.s $f10, $f8 -/* 05FB80 8005EF80 46245180 */ add.d $f6, $f10, $f4 -/* 05FB84 8005EF84 A20F01CD */ sb $t7, 0x1cd($s0) -/* 05FB88 8005EF88 46203220 */ cvt.s.d $f8, $f6 -/* 05FB8C 8005EF8C 24040002 */ li $a0, 2 -/* 05FB90 8005EF90 1000000B */ b .L8005EFC0 -/* 05FB94 8005EF94 E608000C */ swc1 $f8, 0xc($s0) -/* 05FB98 8005EF98 C60A000C */ lwc1 $f10, 0xc($s0) -/* 05FB9C 8005EF9C 46007021 */ cvt.d.s $f0, $f14 -/* 05FBA0 8005EFA0 46200180 */ add.d $f6, $f0, $f0 -/* 05FBA4 8005EFA4 24040002 */ li $a0, 2 -/* 05FBA8 8005EFA8 46005121 */ cvt.d.s $f4, $f10 -/* 05FBAC 8005EFAC 46262200 */ add.d $f8, $f4, $f6 -/* 05FBB0 8005EFB0 462042A0 */ cvt.s.d $f10, $f8 -/* 05FBB4 8005EFB4 10000002 */ b .L8005EFC0 -/* 05FBB8 8005EFB8 E60A000C */ swc1 $f10, 0xc($s0) -.L8005EFBC: -/* 05FBBC 8005EFBC 24040002 */ li $a0, 2 -.L8005EFC0: -/* 05FBC0 8005EFC0 C600000C */ lwc1 $f0, 0xc($s0) -/* 05FBC4 8005EFC4 00000000 */ nop -/* 05FBC8 8005EFC8 4600103E */ c.le.s $f2, $f0 -/* 05FBCC 8005EFCC 00000000 */ nop -/* 05FBD0 8005EFD0 4500000A */ bc1f .L8005EFFC -/* 05FBD4 8005EFD4 00000000 */ nop -.L8005EFD8: -/* 05FBD8 8005EFD8 46020101 */ sub.s $f4, $f0, $f2 -/* 05FBDC 8005EFDC E604000C */ swc1 $f4, 0xc($s0) -/* 05FBE0 8005EFE0 A4480010 */ sh $t0, 0x10($v0) -/* 05FBE4 8005EFE4 C600000C */ lwc1 $f0, 0xc($s0) -/* 05FBE8 8005EFE8 00000000 */ nop -/* 05FBEC 8005EFEC 4600103E */ c.le.s $f2, $f0 -/* 05FBF0 8005EFF0 00000000 */ nop -/* 05FBF4 8005EFF4 4501FFF8 */ bc1t .L8005EFD8 -/* 05FBF8 8005EFF8 00000000 */ nop -.L8005EFFC: -/* 05FBFC 8005EFFC 4612003E */ c.le.s $f0, $f18 -/* 05FC00 8005F000 00000000 */ nop -/* 05FC04 8005F004 4500000A */ bc1f .L8005F030 -/* 05FC08 8005F008 00000000 */ nop -.L8005F00C: -/* 05FC0C 8005F00C 46020180 */ add.s $f6, $f0, $f2 -/* 05FC10 8005F010 E606000C */ swc1 $f6, 0xc($s0) -/* 05FC14 8005F014 A4480010 */ sh $t0, 0x10($v0) -/* 05FC18 8005F018 C600000C */ lwc1 $f0, 0xc($s0) -/* 05FC1C 8005F01C 00000000 */ nop -/* 05FC20 8005F020 4612003E */ c.le.s $f0, $f18 -/* 05FC24 8005F024 00000000 */ nop -/* 05FC28 8005F028 4501FFF8 */ bc1t .L8005F00C -/* 05FC2C 8005F02C 00000000 */ nop -.L8005F030: -/* 05FC30 8005F030 8223003B */ lb $v1, 0x3b($s1) -/* 05FC34 8005F034 00000000 */ nop -/* 05FC38 8005F038 14830007 */ bne $a0, $v1, .L8005F058 -/* 05FC3C 8005F03C 00000000 */ nop -/* 05FC40 8005F040 10C00005 */ beqz $a2, .L8005F058 -/* 05FC44 8005F044 24070003 */ li $a3, 3 -/* 05FC48 8005F048 A227003B */ sb $a3, 0x3b($s1) -/* 05FC4C 8005F04C E612000C */ swc1 $f18, 0xc($s0) -/* 05FC50 8005F050 8223003B */ lb $v1, 0x3b($s1) -/* 05FC54 8005F054 00000000 */ nop -.L8005F058: -/* 05FC58 8005F058 84580010 */ lh $t8, 0x10($v0) -/* 05FC5C 8005F05C 24070003 */ li $a3, 3 -/* 05FC60 8005F060 11180003 */ beq $t0, $t8, .L8005F070 -/* 05FC64 8005F064 24010005 */ li $at, 5 -/* 05FC68 8005F068 1460005E */ bnez $v1, .L8005F1E4 -/* 05FC6C 8005F06C 00000000 */ nop -.L8005F070: -/* 05FC70 8005F070 14610008 */ bne $v1, $at, .L8005F094 -/* 05FC74 8005F074 00000000 */ nop -/* 05FC78 8005F078 921901CD */ lbu $t9, 0x1cd($s0) -/* 05FC7C 8005F07C 00000000 */ nop -/* 05FC80 8005F080 A239003B */ sb $t9, 0x3b($s1) -/* 05FC84 8005F084 E612000C */ swc1 $f18, 0xc($s0) -/* 05FC88 8005F088 8223003B */ lb $v1, 0x3b($s1) -/* 05FC8C 8005F08C 10000056 */ b .L8005F1E8 -/* 05FC90 8005F090 444EF800 */ cfc1 $t6, $31 -.L8005F094: -/* 05FC94 8005F094 1523000B */ bne $t1, $v1, .L8005F0C4 -/* 05FC98 8005F098 00000000 */ nop -/* 05FC9C 8005F09C 920A01CD */ lbu $t2, 0x1cd($s0) -/* 05FCA0 8005F0A0 00000000 */ nop -/* 05FCA4 8005F0A4 15400003 */ bnez $t2, .L8005F0B4 -/* 05FCA8 8005F0A8 00000000 */ nop -/* 05FCAC 8005F0AC 10000002 */ b .L8005F0B8 -/* 05FCB0 8005F0B0 A224003B */ sb $a0, 0x3b($s1) -.L8005F0B4: -/* 05FCB4 8005F0B4 A220003B */ sb $zero, 0x3b($s1) -.L8005F0B8: -/* 05FCB8 8005F0B8 8223003B */ lb $v1, 0x3b($s1) -/* 05FCBC 8005F0BC 1000004A */ b .L8005F1E8 -/* 05FCC0 8005F0C0 444EF800 */ cfc1 $t6, $31 -.L8005F0C4: -/* 05FCC4 8005F0C4 14E3000B */ bne $a3, $v1, .L8005F0F4 -/* 05FCC8 8005F0C8 3C01800E */ lui $at, %hi(D_800E6AEC) # $at, 0x800e -/* 05FCCC 8005F0CC 920B01CD */ lbu $t3, 0x1cd($s0) -/* 05FCD0 8005F0D0 24010004 */ li $at, 4 -/* 05FCD4 8005F0D4 15610003 */ bne $t3, $at, .L8005F0E4 -/* 05FCD8 8005F0D8 240C0004 */ li $t4, 4 -/* 05FCDC 8005F0DC 10000002 */ b .L8005F0E8 -/* 05FCE0 8005F0E0 A224003B */ sb $a0, 0x3b($s1) -.L8005F0E4: -/* 05FCE4 8005F0E4 A22C003B */ sb $t4, 0x3b($s1) -.L8005F0E8: -/* 05FCE8 8005F0E8 8223003B */ lb $v1, 0x3b($s1) -/* 05FCEC 8005F0EC 1000003E */ b .L8005F1E8 -/* 05FCF0 8005F0F0 444EF800 */ cfc1 $t6, $31 -.L8005F0F4: -/* 05FCF4 8005F0F4 C608002C */ lwc1 $f8, 0x2c($s0) -/* 05FCF8 8005F0F8 C42B6AE8 */ lwc1 $f11, %lo(D_800E6AE8)($at) -/* 05FCFC 8005F0FC C42A6AEC */ lwc1 $f10, %lo(D_800E6AEC)($at) -/* 05FD00 8005F100 46004021 */ cvt.d.s $f0, $f8 -/* 05FD04 8005F104 4620503C */ c.lt.d $f10, $f0 -/* 05FD08 8005F108 3C01800E */ lui $at, %hi(D_800E6AF4) # $at, 0x800e -/* 05FD0C 8005F10C 4500001C */ bc1f .L8005F180 -/* 05FD10 8005F110 00000000 */ nop -/* 05FD14 8005F114 C4256AF0 */ lwc1 $f5, %lo(D_800E6AF0)($at) -/* 05FD18 8005F118 C4246AF4 */ lwc1 $f4, %lo(D_800E6AF4)($at) -/* 05FD1C 8005F11C 00000000 */ nop -/* 05FD20 8005F120 4624003C */ c.lt.d $f0, $f4 -/* 05FD24 8005F124 00000000 */ nop -/* 05FD28 8005F128 45000015 */ bc1f .L8005F180 -/* 05FD2C 8005F12C 00000000 */ nop -/* 05FD30 8005F130 1483000F */ bne $a0, $v1, .L8005F170 -/* 05FD34 8005F134 00000000 */ nop -/* 05FD38 8005F138 A229003B */ sb $t1, 0x3b($s1) -/* 05FD3C 8005F13C 822E003B */ lb $t6, 0x3b($s1) -/* 05FD40 8005F140 8CAD0044 */ lw $t5, 0x44($a1) -/* 05FD44 8005F144 000E78C0 */ sll $t7, $t6, 3 -/* 05FD48 8005F148 01AFC021 */ addu $t8, $t5, $t7 -/* 05FD4C 8005F14C 8F190004 */ lw $t9, 4($t8) -/* 05FD50 8005F150 00000000 */ nop -/* 05FD54 8005F154 00195100 */ sll $t2, $t9, 4 -/* 05FD58 8005F158 254BFFEF */ addiu $t3, $t2, -0x11 -/* 05FD5C 8005F15C 448B3000 */ mtc1 $t3, $f6 -/* 05FD60 8005F160 00000000 */ nop -/* 05FD64 8005F164 46803220 */ cvt.s.w $f8, $f6 -/* 05FD68 8005F168 10000002 */ b .L8005F174 -/* 05FD6C 8005F16C E608000C */ swc1 $f8, 0xc($s0) -.L8005F170: -/* 05FD70 8005F170 A220003B */ sb $zero, 0x3b($s1) -.L8005F174: -/* 05FD74 8005F174 8223003B */ lb $v1, 0x3b($s1) -/* 05FD78 8005F178 1000001B */ b .L8005F1E8 -/* 05FD7C 8005F17C 444EF800 */ cfc1 $t6, $31 -.L8005F180: -/* 05FD80 8005F180 14600005 */ bnez $v1, .L8005F198 -/* 05FD84 8005F184 24010004 */ li $at, 4 -/* 05FD88 8005F188 A229003B */ sb $t1, 0x3b($s1) -/* 05FD8C 8005F18C E612000C */ swc1 $f18, 0xc($s0) -/* 05FD90 8005F190 8223003B */ lb $v1, 0x3b($s1) -/* 05FD94 8005F194 00000000 */ nop -.L8005F198: -/* 05FD98 8005F198 14610012 */ bne $v1, $at, .L8005F1E4 -/* 05FD9C 8005F19C 00000000 */ nop -/* 05FDA0 8005F1A0 14C00010 */ bnez $a2, .L8005F1E4 -/* 05FDA4 8005F1A4 00000000 */ nop -/* 05FDA8 8005F1A8 A227003B */ sb $a3, 0x3b($s1) -/* 05FDAC 8005F1AC 822E003B */ lb $t6, 0x3b($s1) -/* 05FDB0 8005F1B0 8CAC0044 */ lw $t4, 0x44($a1) -/* 05FDB4 8005F1B4 000E68C0 */ sll $t5, $t6, 3 -/* 05FDB8 8005F1B8 018D7821 */ addu $t7, $t4, $t5 -/* 05FDBC 8005F1BC 8DF80004 */ lw $t8, 4($t7) -/* 05FDC0 8005F1C0 00000000 */ nop -/* 05FDC4 8005F1C4 0018C900 */ sll $t9, $t8, 4 -/* 05FDC8 8005F1C8 272AFFEF */ addiu $t2, $t9, -0x11 -/* 05FDCC 8005F1CC 448A5000 */ mtc1 $t2, $f10 -/* 05FDD0 8005F1D0 00000000 */ nop -/* 05FDD4 8005F1D4 46805120 */ cvt.s.w $f4, $f10 -/* 05FDD8 8005F1D8 E604000C */ swc1 $f4, 0xc($s0) -/* 05FDDC 8005F1DC 8223003B */ lb $v1, 0x3b($s1) -/* 05FDE0 8005F1E0 00000000 */ nop -.L8005F1E4: -/* 05FDE4 8005F1E4 444EF800 */ cfc1 $t6, $31 -.L8005F1E8: -/* 05FDE8 8005F1E8 862B0018 */ lh $t3, 0x18($s1) -/* 05FDEC 8005F1EC 35C10003 */ ori $at, $t6, 3 -/* 05FDF0 8005F1F0 38210002 */ xori $at, $at, 2 -/* 05FDF4 8005F1F4 A7AB003C */ sh $t3, 0x3c($sp) -/* 05FDF8 8005F1F8 C606000C */ lwc1 $f6, 0xc($s0) -/* 05FDFC 8005F1FC 44C1F800 */ ctc1 $at, $31 -/* 05FE00 8005F200 AE200074 */ sw $zero, 0x74($s1) -/* 05FE04 8005F204 46003224 */ cvt.w.s $f8, $f6 -/* 05FE08 8005F208 24050002 */ li $a1, 2 -/* 05FE0C 8005F20C 440C4000 */ mfc1 $t4, $f8 -/* 05FE10 8005F210 44CEF800 */ ctc1 $t6, $31 -/* 05FE14 8005F214 14830008 */ bne $a0, $v1, .L8005F238 -/* 05FE18 8005F218 A62C0018 */ sh $t4, 0x18($s1) -/* 05FE1C 8005F21C 87A6003C */ lh $a2, 0x3c($sp) -/* 05FE20 8005F220 240D00AD */ li $t5, 173 -/* 05FE24 8005F224 AFAD0010 */ sw $t5, 0x10($sp) -/* 05FE28 8005F228 02202025 */ move $a0, $s1 -/* 05FE2C 8005F22C 0C0044F3 */ jal func_800113CC -/* 05FE30 8005F230 240700AC */ li $a3, 172 -/* 05FE34 8005F234 2408FFFF */ li $t0, -1 -.L8005F238: -/* 05FE38 8005F238 860F0000 */ lh $t7, ($s0) -/* 05FE3C 8005F23C 00000000 */ nop -/* 05FE40 8005F240 150F000C */ bne $t0, $t7, .L8005F274 -/* 05FE44 8005F244 8FA50040 */ lw $a1, 0x40($sp) -/* 05FE48 8005F248 0C008D5A */ jal func_80023568 -/* 05FE4C 8005F24C 00000000 */ nop -/* 05FE50 8005F250 10400007 */ beqz $v0, .L8005F270 -/* 05FE54 8005F254 02202025 */ move $a0, $s1 -/* 05FE58 8005F258 241800A5 */ li $t8, 165 -/* 05FE5C 8005F25C AFB80010 */ sw $t8, 0x10($sp) -/* 05FE60 8005F260 02002825 */ move $a1, $s0 -/* 05FE64 8005F264 3C0642C8 */ lui $a2, 0x42c8 -/* 05FE68 8005F268 0C017881 */ jal func_8005E204 -/* 05FE6C 8005F26C 24070089 */ li $a3, 137 -.L8005F270: -/* 05FE70 8005F270 8FA50040 */ lw $a1, 0x40($sp) -.L8005F274: -/* 05FE74 8005F274 0C02BF0F */ jal func_800AFC3C -/* 05FE78 8005F278 02202025 */ move $a0, $s1 -/* 05FE7C 8005F27C 02202025 */ move $a0, $s1 -/* 05FE80 8005F280 02002825 */ move $a1, $s0 -/* 05FE84 8005F284 0C017412 */ jal func_8005D048 -/* 05FE88 8005F288 24060028 */ li $a2, 40 -/* 05FE8C 8005F28C 0C006EB2 */ jal func_8001BAC8 -/* 05FE90 8005F290 00002025 */ move $a0, $zero -/* 05FE94 8005F294 8C43004C */ lw $v1, 0x4c($v0) -/* 05FE98 8005F298 8C500064 */ lw $s0, 0x64($v0) -/* 05FE9C 8005F29C 8C790000 */ lw $t9, ($v1) -/* 05FEA0 8005F2A0 3C058012 */ lui $a1, %hi(D_8011D600) # $a1, 0x8012 -/* 05FEA4 8005F2A4 1639000B */ bne $s1, $t9, .L8005F2D4 -/* 05FEA8 8005F2A8 24A5D600 */ addiu $a1, %lo(D_8011D600) # addiu $a1, $a1, -0x2a00 -/* 05FEAC 8005F2AC 846A0014 */ lh $t2, 0x14($v1) -/* 05FEB0 8005F2B0 00000000 */ nop -/* 05FEB4 8005F2B4 314B0008 */ andi $t3, $t2, 8 -/* 05FEB8 8005F2B8 11600006 */ beqz $t3, .L8005F2D4 -/* 05FEBC 8005F2BC 00000000 */ nop -/* 05FEC0 8005F2C0 822E003B */ lb $t6, 0x3b($s1) -/* 05FEC4 8005F2C4 24010001 */ li $at, 1 -/* 05FEC8 8005F2C8 15C10002 */ bne $t6, $at, .L8005F2D4 -/* 05FECC 8005F2CC 240C0004 */ li $t4, 4 -/* 05FED0 8005F2D0 A20C0187 */ sb $t4, 0x187($s0) -.L8005F2D4: -/* 05FED4 8005F2D4 820D01D8 */ lb $t5, 0x1d8($s0) -/* 05FED8 8005F2D8 00000000 */ nop -/* 05FEDC 8005F2DC 11A00008 */ beqz $t5, .L8005F300 -/* 05FEE0 8005F2E0 8FBF0024 */ lw $ra, 0x24($sp) -/* 05FEE4 8005F2E4 80AF0000 */ lb $t7, ($a1) -/* 05FEE8 8005F2E8 24180001 */ li $t8, 1 -/* 05FEEC 8005F2EC 15E00003 */ bnez $t7, .L8005F2FC -/* 05FEF0 8005F2F0 02002025 */ move $a0, $s0 -/* 05FEF4 8005F2F4 0C0172DA */ jal func_8005CB68 -/* 05FEF8 8005F2F8 A0B80000 */ sb $t8, ($a1) -.L8005F2FC: -/* 05FEFC 8005F2FC 8FBF0024 */ lw $ra, 0x24($sp) -.L8005F300: -/* 05FF00 8005F300 8FB0001C */ lw $s0, 0x1c($sp) -/* 05FF04 8005F304 8FB10020 */ lw $s1, 0x20($sp) -/* 05FF08 8005F308 03E00008 */ jr $ra -/* 05FF0C 8005F30C 27BD0040 */ addiu $sp, $sp, 0x40 - -glabel func_8005F310 -/* 05FF10 8005F310 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 05FF14 8005F314 AFA40040 */ sw $a0, 0x40($sp) -/* 05FF18 8005F318 AFBF0024 */ sw $ra, 0x24($sp) -/* 05FF1C 8005F31C AFB00020 */ sw $s0, 0x20($sp) -/* 05FF20 8005F320 3C04800E */ lui $a0, %hi(D_800DCE80) # $a0, 0x800e -/* 05FF24 8005F324 00C08025 */ move $s0, $a2 -/* 05FF28 8005F328 AFA50044 */ sw $a1, 0x44($sp) -/* 05FF2C 8005F32C 2484CE80 */ addiu $a0, %lo(D_800DCE80) # addiu $a0, $a0, -0x3180 -/* 05FF30 8005F330 0C01729E */ jal func_8005CA78 -/* 05FF34 8005F334 AFA7004C */ sw $a3, 0x4c($sp) -/* 05FF38 8005F338 8FA7004C */ lw $a3, 0x4c($sp) -/* 05FF3C 8005F33C 3C01800E */ lui $at, %hi(D_800E6B00) # $at, 0x800e -/* 05FF40 8005F340 A0E001EC */ sb $zero, 0x1ec($a3) -/* 05FF44 8005F344 820E003B */ lb $t6, 0x3b($s0) -/* 05FF48 8005F348 C4266B04 */ lwc1 $f6, %lo(D_800E6B04)($at) -/* 05FF4C 8005F34C A7AE003E */ sh $t6, 0x3e($sp) -/* 05FF50 8005F350 860F0018 */ lh $t7, 0x18($s0) -/* 05FF54 8005F354 C4276B00 */ lwc1 $f7, %lo(D_800E6B00)($at) -/* 05FF58 8005F358 A7AF003C */ sh $t7, 0x3c($sp) -/* 05FF5C 8005F35C 84F8016A */ lh $t8, 0x16a($a3) -/* 05FF60 8005F360 00000000 */ nop -/* 05FF64 8005F364 A7B8003A */ sh $t8, 0x3a($sp) -/* 05FF68 8005F368 C4E4002C */ lwc1 $f4, 0x2c($a3) -/* 05FF6C 8005F36C 00000000 */ nop -/* 05FF70 8005F370 46002021 */ cvt.d.s $f0, $f4 -/* 05FF74 8005F374 4626003C */ c.lt.d $f0, $f6 -/* 05FF78 8005F378 00000000 */ nop -/* 05FF7C 8005F37C 45000009 */ bc1f .L8005F3A4 -/* 05FF80 8005F380 3C01800E */ lui $at, %hi(D_800E6B0C) # $at, 0x800e -/* 05FF84 8005F384 C4296B08 */ lwc1 $f9, %lo(D_800E6B08)($at) -/* 05FF88 8005F388 C4286B0C */ lwc1 $f8, %lo(D_800E6B0C)($at) -/* 05FF8C 8005F38C 8FB90054 */ lw $t9, 0x54($sp) -/* 05FF90 8005F390 4620403C */ c.lt.d $f8, $f0 -/* 05FF94 8005F394 00000000 */ nop -/* 05FF98 8005F398 45000002 */ bc1f .L8005F3A4 -/* 05FF9C 8005F39C 00000000 */ nop -/* 05FFA0 8005F3A0 AF200000 */ sw $zero, ($t9) -.L8005F3A4: -/* 05FFA4 8005F3A4 80EA01D8 */ lb $t2, 0x1d8($a3) -/* 05FFA8 8005F3A8 24010001 */ li $at, 1 -/* 05FFAC 8005F3AC 1541000F */ bne $t2, $at, .L8005F3EC -/* 05FFB0 8005F3B0 8FA90058 */ lw $t1, 0x58($sp) -/* 05FFB4 8005F3B4 0C008D5A */ jal func_80023568 -/* 05FFB8 8005F3B8 AFA7004C */ sw $a3, 0x4c($sp) -/* 05FFBC 8005F3BC 8FA7004C */ lw $a3, 0x4c($sp) -/* 05FFC0 8005F3C0 10400009 */ beqz $v0, .L8005F3E8 -/* 05FFC4 8005F3C4 24040082 */ li $a0, 130 -/* 05FFC8 8005F3C8 0C008500 */ jal func_80021400 -/* 05FFCC 8005F3CC AFA7004C */ sw $a3, 0x4c($sp) -/* 05FFD0 8005F3D0 8FA7004C */ lw $a3, 0x4c($sp) -/* 05FFD4 8005F3D4 00000000 */ nop -/* 05FFD8 8005F3D8 80EB01D8 */ lb $t3, 0x1d8($a3) -/* 05FFDC 8005F3DC 00000000 */ nop -/* 05FFE0 8005F3E0 256C0001 */ addiu $t4, $t3, 1 -/* 05FFE4 8005F3E4 A0EC01D8 */ sb $t4, 0x1d8($a3) -.L8005F3E8: -/* 05FFE8 8005F3E8 8FA90058 */ lw $t1, 0x58($sp) -.L8005F3EC: -/* 05FFEC 8005F3EC 24010064 */ li $at, 100 -/* 05FFF0 8005F3F0 8D280000 */ lw $t0, ($t1) -/* 05FFF4 8005F3F4 00000000 */ nop -/* 05FFF8 8005F3F8 15010002 */ bne $t0, $at, .L8005F404 -/* 05FFFC 8005F3FC 3C018012 */ lui $at, %hi(D_8011D610) # $at, 0x8012 -/* 060000 8005F400 A020D610 */ sb $zero, %lo(D_8011D610)($at) -.L8005F404: -/* 060004 8005F404 84ED0000 */ lh $t5, ($a3) -/* 060008 8005F408 2403FFFF */ li $v1, -1 -/* 06000C 8005F40C 146D001F */ bne $v1, $t5, .L8005F48C -/* 060010 8005F410 A0E001F5 */ sb $zero, 0x1f5($a3) -/* 060014 8005F414 8D220000 */ lw $v0, ($t1) -/* 060018 8005F418 24010064 */ li $at, 100 -/* 06001C 8005F41C 1041001B */ beq $v0, $at, .L8005F48C -/* 060020 8005F420 244EFFE2 */ addiu $t6, $v0, -0x1e -/* 060024 8005F424 05C10017 */ bgez $t6, .L8005F484 -/* 060028 8005F428 AD2E0000 */ sw $t6, ($t1) -/* 06002C 8005F42C 3C188012 */ lui $t8, %hi(D_8011D611) # $t8, 0x8012 -/* 060030 8005F430 8318D611 */ lb $t8, %lo(D_8011D611)($t8) -/* 060034 8005F434 00002025 */ move $a0, $zero -/* 060038 8005F438 17000009 */ bnez $t8, .L8005F460 -/* 06003C 8005F43C 8FA20050 */ lw $v0, 0x50($sp) -/* 060040 8005F440 AFA7004C */ sw $a3, 0x4c($sp) -/* 060044 8005F444 0C0172C1 */ jal func_8005CB04 -/* 060048 8005F448 AFA8002C */ sw $t0, 0x2c($sp) -/* 06004C 8005F44C 8FA7004C */ lw $a3, 0x4c($sp) -/* 060050 8005F450 8FA8002C */ lw $t0, 0x2c($sp) -/* 060054 8005F454 8FA90058 */ lw $t1, 0x58($sp) -/* 060058 8005F458 00000000 */ nop -/* 06005C 8005F45C 8FA20050 */ lw $v0, 0x50($sp) -.L8005F460: -/* 060060 8005F460 24190001 */ li $t9, 1 -/* 060064 8005F464 3C018012 */ lui $at, %hi(D_8011D611) # $at, 0x8012 -/* 060068 8005F468 A039D611 */ sb $t9, %lo(D_8011D611)($at) -/* 06006C 8005F46C AD200000 */ sw $zero, ($t1) -/* 060070 8005F470 8C4A0000 */ lw $t2, ($v0) -/* 060074 8005F474 00000000 */ nop -/* 060078 8005F478 354B8000 */ ori $t3, $t2, 0x8000 -/* 06007C 8005F47C 10000003 */ b .L8005F48C -/* 060080 8005F480 AC4B0000 */ sw $t3, ($v0) -.L8005F484: -/* 060084 8005F484 3C018012 */ lui $at, %hi(D_8011D611) # $at, 0x8012 -/* 060088 8005F488 A020D611 */ sb $zero, %lo(D_8011D611)($at) -.L8005F48C: -/* 06008C 8005F48C 240C000A */ li $t4, 10 -/* 060090 8005F490 A0EC01D6 */ sb $t4, 0x1d6($a3) -/* 060094 8005F494 8FA50044 */ lw $a1, 0x44($sp) -/* 060098 8005F498 8FA40040 */ lw $a0, 0x40($sp) -/* 06009C 8005F49C AFA8002C */ sw $t0, 0x2c($sp) -/* 0600A0 8005F4A0 AFA7004C */ sw $a3, 0x4c($sp) -/* 0600A4 8005F4A4 0C0125E5 */ jal func_80049794 -/* 0600A8 8005F4A8 02003025 */ move $a2, $s0 -/* 0600AC 8005F4AC 8FA7004C */ lw $a3, 0x4c($sp) -/* 0600B0 8005F4B0 8FA8002C */ lw $t0, 0x2c($sp) -/* 0600B4 8005F4B4 80ED01D7 */ lb $t5, 0x1d7($a3) -/* 0600B8 8005F4B8 2403FFFF */ li $v1, -1 -/* 0600BC 8005F4BC A0ED01D6 */ sb $t5, 0x1d6($a3) -/* 0600C0 8005F4C0 8FAE0058 */ lw $t6, 0x58($sp) -/* 0600C4 8005F4C4 00000000 */ nop -/* 0600C8 8005F4C8 ADC80000 */ sw $t0, ($t6) -/* 0600CC 8005F4CC AE000074 */ sw $zero, 0x74($s0) -/* 0600D0 8005F4D0 87AF003A */ lh $t7, 0x3a($sp) -/* 0600D4 8005F4D4 00000000 */ nop -/* 0600D8 8005F4D8 A4EF016A */ sh $t7, 0x16a($a3) -/* 0600DC 8005F4DC 87B8003E */ lh $t8, 0x3e($sp) -/* 0600E0 8005F4E0 00000000 */ nop -/* 0600E4 8005F4E4 A218003B */ sb $t8, 0x3b($s0) -/* 0600E8 8005F4E8 87B9003C */ lh $t9, 0x3c($sp) -/* 0600EC 8005F4EC 00000000 */ nop -/* 0600F0 8005F4F0 A6190018 */ sh $t9, 0x18($s0) -/* 0600F4 8005F4F4 80EA0187 */ lb $t2, 0x187($a3) -/* 0600F8 8005F4F8 00000000 */ nop -/* 0600FC 8005F4FC 11400029 */ beqz $t2, .L8005F5A4 -/* 060100 8005F500 00000000 */ nop -/* 060104 8005F504 820B003B */ lb $t3, 0x3b($s0) -/* 060108 8005F508 24010001 */ li $at, 1 -/* 06010C 8005F50C 11610025 */ beq $t3, $at, .L8005F5A4 -/* 060110 8005F510 24040001 */ li $a0, 1 -/* 060114 8005F514 0C0172C1 */ jal func_8005CB04 -/* 060118 8005F518 AFA7004C */ sw $a3, 0x4c($sp) -/* 06011C 8005F51C 24040011 */ li $a0, 17 -/* 060120 8005F520 0C000741 */ jal func_80001D04 -/* 060124 8005F524 00002825 */ move $a1, $zero -/* 060128 8005F528 3C014140 */ li $at, 0x41400000 # 12.000000 -/* 06012C 8005F52C 44816000 */ mtc1 $at, $f12 -/* 060130 8005F530 0C01A7CA */ jal func_80069F28 -/* 060134 8005F534 00000000 */ nop -/* 060138 8005F538 3C01800E */ lui $at, %hi(D_800E6B14) # $at, 0x800e -/* 06013C 8005F53C C60A001C */ lwc1 $f10, 0x1c($s0) -/* 060140 8005F540 C4216B10 */ lwc1 $f1, %lo(D_800E6B10)($at) -/* 060144 8005F544 C4206B14 */ lwc1 $f0, %lo(D_800E6B14)($at) -/* 060148 8005F548 46005121 */ cvt.d.s $f4, $f10 -/* 06014C 8005F54C 46202182 */ mul.d $f6, $f4, $f0 -/* 060150 8005F550 C60A0024 */ lwc1 $f10, 0x24($s0) -/* 060154 8005F554 8FA7004C */ lw $a3, 0x4c($sp) -/* 060158 8005F558 46005121 */ cvt.d.s $f4, $f10 -/* 06015C 8005F55C 44809000 */ mtc1 $zero, $f18 -/* 060160 8005F560 46203220 */ cvt.s.d $f8, $f6 -/* 060164 8005F564 240C0001 */ li $t4, 1 -/* 060168 8005F568 46202182 */ mul.d $f6, $f4, $f0 -/* 06016C 8005F56C E608001C */ swc1 $f8, 0x1c($s0) -/* 060170 8005F570 A20C003B */ sb $t4, 0x3b($s0) -/* 060174 8005F574 3C014010 */ li $at, 0x40100000 # 2.250000 -/* 060178 8005F578 2403FFFF */ li $v1, -1 -/* 06017C 8005F57C 46203220 */ cvt.s.d $f8, $f6 -/* 060180 8005F580 44803000 */ mtc1 $zero, $f6 -/* 060184 8005F584 E6080024 */ swc1 $f8, 0x24($s0) -/* 060188 8005F588 E4F2000C */ swc1 $f18, 0xc($a3) -/* 06018C 8005F58C C60A0020 */ lwc1 $f10, 0x20($s0) -/* 060190 8005F590 44813800 */ mtc1 $at, $f7 -/* 060194 8005F594 46005121 */ cvt.d.s $f4, $f10 -/* 060198 8005F598 46262200 */ add.d $f8, $f4, $f6 -/* 06019C 8005F59C 462042A0 */ cvt.s.d $f10, $f8 -/* 0601A0 8005F5A0 E60A0020 */ swc1 $f10, 0x20($s0) -.L8005F5A4: -/* 0601A4 8005F5A4 8CED0148 */ lw $t5, 0x148($a3) -/* 0601A8 8005F5A8 44809000 */ mtc1 $zero, $f18 -/* 0601AC 8005F5AC 11A0001B */ beqz $t5, .L8005F61C -/* 0601B0 8005F5B0 A0E00187 */ sb $zero, 0x187($a3) -/* 0601B4 8005F5B4 C600001C */ lwc1 $f0, 0x1c($s0) -/* 0601B8 8005F5B8 C60E0024 */ lwc1 $f14, 0x24($s0) -/* 0601BC 8005F5BC 46000082 */ mul.s $f2, $f0, $f0 -/* 0601C0 8005F5C0 AFA7004C */ sw $a3, 0x4c($sp) -/* 0601C4 8005F5C4 460E7402 */ mul.s $f16, $f14, $f14 -/* 0601C8 8005F5C8 00000000 */ nop -/* 0601CC 8005F5CC 46021102 */ mul.s $f4, $f2, $f2 -/* 0601D0 8005F5D0 00000000 */ nop -/* 0601D4 8005F5D4 46108182 */ mul.s $f6, $f16, $f16 -/* 0601D8 8005F5D8 0C0326B4 */ jal sqrtf -/* 0601DC 8005F5DC 46062300 */ add.s $f12, $f4, $f6 -/* 0601E0 8005F5E0 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 0601E4 8005F5E4 44814800 */ mtc1 $at, $f9 -/* 0601E8 8005F5E8 44804000 */ mtc1 $zero, $f8 -/* 0601EC 8005F5EC 46000087 */ neg.s $f2, $f0 -/* 0601F0 8005F5F0 460012A1 */ cvt.d.s $f10, $f2 -/* 0601F4 8005F5F4 8FA7004C */ lw $a3, 0x4c($sp) -/* 0601F8 8005F5F8 462A403C */ c.lt.d $f8, $f10 -/* 0601FC 8005F5FC 44809000 */ mtc1 $zero, $f18 -/* 060200 8005F600 2403FFFF */ li $v1, -1 -/* 060204 8005F604 45000005 */ bc1f .L8005F61C -/* 060208 8005F608 E4E2002C */ swc1 $f2, 0x2c($a3) -/* 06020C 8005F60C E4F2002C */ swc1 $f18, 0x2c($a3) -/* 060210 8005F610 E612001C */ swc1 $f18, 0x1c($s0) -/* 060214 8005F614 E6120020 */ swc1 $f18, 0x20($s0) -/* 060218 8005F618 E6120024 */ swc1 $f18, 0x24($s0) -.L8005F61C: -/* 06021C 8005F61C C7A40044 */ lwc1 $f4, 0x44($sp) -/* 060220 8005F620 C4E6000C */ lwc1 $f6, 0xc($a3) -/* 060224 8005F624 46002321 */ cvt.d.s $f12, $f4 -/* 060228 8005F628 462C6280 */ add.d $f10, $f12, $f12 -/* 06022C 8005F62C 46003221 */ cvt.d.s $f8, $f6 -/* 060230 8005F630 462A4100 */ add.d $f4, $f8, $f10 -/* 060234 8005F634 462021A0 */ cvt.s.d $f6, $f4 -/* 060238 8005F638 E4E6000C */ swc1 $f6, 0xc($a3) -/* 06023C 8005F63C 8E0E0068 */ lw $t6, 0x68($s0) -/* 060240 8005F640 8218003B */ lb $t8, 0x3b($s0) -/* 060244 8005F644 8DC20000 */ lw $v0, ($t6) -/* 060248 8005F648 0018C8C0 */ sll $t9, $t8, 3 -/* 06024C 8005F64C 8C440000 */ lw $a0, ($v0) -/* 060250 8005F650 C4E0000C */ lwc1 $f0, 0xc($a3) -/* 060254 8005F654 8C8F0044 */ lw $t7, 0x44($a0) -/* 060258 8005F658 00000000 */ nop -/* 06025C 8005F65C 01F95021 */ addu $t2, $t7, $t9 -/* 060260 8005F660 8D4B0004 */ lw $t3, 4($t2) -/* 060264 8005F664 00000000 */ nop -/* 060268 8005F668 000B6100 */ sll $t4, $t3, 4 -/* 06026C 8005F66C 258DFFEF */ addiu $t5, $t4, -0x11 -/* 060270 8005F670 448D4000 */ mtc1 $t5, $f8 -/* 060274 8005F674 00000000 */ nop -/* 060278 8005F678 468040A0 */ cvt.s.w $f2, $f8 -/* 06027C 8005F67C 4600103E */ c.le.s $f2, $f0 -/* 060280 8005F680 00000000 */ nop -/* 060284 8005F684 4500000A */ bc1f .L8005F6B0 -/* 060288 8005F688 00000000 */ nop -.L8005F68C: -/* 06028C 8005F68C 46020281 */ sub.s $f10, $f0, $f2 -/* 060290 8005F690 E4EA000C */ swc1 $f10, 0xc($a3) -/* 060294 8005F694 A4430010 */ sh $v1, 0x10($v0) -/* 060298 8005F698 C4E0000C */ lwc1 $f0, 0xc($a3) -/* 06029C 8005F69C 00000000 */ nop -/* 0602A0 8005F6A0 4600103E */ c.le.s $f2, $f0 -/* 0602A4 8005F6A4 00000000 */ nop -/* 0602A8 8005F6A8 4501FFF8 */ bc1t .L8005F68C -/* 0602AC 8005F6AC 00000000 */ nop -.L8005F6B0: -/* 0602B0 8005F6B0 4612003E */ c.le.s $f0, $f18 -/* 0602B4 8005F6B4 00000000 */ nop -/* 0602B8 8005F6B8 4500000A */ bc1f .L8005F6E4 -/* 0602BC 8005F6BC 00000000 */ nop -.L8005F6C0: -/* 0602C0 8005F6C0 46020100 */ add.s $f4, $f0, $f2 -/* 0602C4 8005F6C4 E4E4000C */ swc1 $f4, 0xc($a3) -/* 0602C8 8005F6C8 A4430010 */ sh $v1, 0x10($v0) -/* 0602CC 8005F6CC C4E0000C */ lwc1 $f0, 0xc($a3) -/* 0602D0 8005F6D0 00000000 */ nop -/* 0602D4 8005F6D4 4612003E */ c.le.s $f0, $f18 -/* 0602D8 8005F6D8 00000000 */ nop -/* 0602DC 8005F6DC 4501FFF8 */ bc1t .L8005F6C0 -/* 0602E0 8005F6E0 00000000 */ nop -.L8005F6E4: -/* 0602E4 8005F6E4 820E003B */ lb $t6, 0x3b($s0) -/* 0602E8 8005F6E8 24010001 */ li $at, 1 -/* 0602EC 8005F6EC 15C10009 */ bne $t6, $at, .L8005F714 -/* 0602F0 8005F6F0 00000000 */ nop -/* 0602F4 8005F6F4 84580010 */ lh $t8, 0x10($v0) -/* 0602F8 8005F6F8 00000000 */ nop -/* 0602FC 8005F6FC 14780005 */ bne $v1, $t8, .L8005F714 -/* 060300 8005F700 00000000 */ nop -/* 060304 8005F704 A200003B */ sb $zero, 0x3b($s0) -/* 060308 8005F708 E4F2000C */ swc1 $f18, 0xc($a3) -/* 06030C 8005F70C C4E0000C */ lwc1 $f0, 0xc($a3) -/* 060310 8005F710 00000000 */ nop -.L8005F714: -/* 060314 8005F714 444FF800 */ cfc1 $t7, $31 -/* 060318 8005F718 AE000074 */ sw $zero, 0x74($s0) -/* 06031C 8005F71C 35E10003 */ ori $at, $t7, 3 -/* 060320 8005F720 38210002 */ xori $at, $at, 2 -/* 060324 8005F724 44C1F800 */ ctc1 $at, $31 -/* 060328 8005F728 02002025 */ move $a0, $s0 -/* 06032C 8005F72C 460001A4 */ cvt.w.s $f6, $f0 -/* 060330 8005F730 44193000 */ mfc1 $t9, $f6 -/* 060334 8005F734 44CFF800 */ ctc1 $t7, $31 -/* 060338 8005F738 A6190018 */ sh $t9, 0x18($s0) -/* 06033C 8005F73C 8FA50040 */ lw $a1, 0x40($sp) -/* 060340 8005F740 0C02BDC5 */ jal func_800AF714 -/* 060344 8005F744 AFA7004C */ sw $a3, 0x4c($sp) -/* 060348 8005F748 8FA5004C */ lw $a1, 0x4c($sp) -/* 06034C 8005F74C 02002025 */ move $a0, $s0 -/* 060350 8005F750 0C017412 */ jal func_8005D048 -/* 060354 8005F754 24060028 */ li $a2, 40 -/* 060358 8005F758 8FAA0058 */ lw $t2, 0x58($sp) -/* 06035C 8005F75C 24010064 */ li $at, 100 -/* 060360 8005F760 8D4B0000 */ lw $t3, ($t2) -/* 060364 8005F764 00000000 */ nop -/* 060368 8005F768 11610018 */ beq $t3, $at, .L8005F7CC -/* 06036C 8005F76C 00000000 */ nop -/* 060370 8005F770 0C002FD1 */ jal func_8000BF44 -/* 060374 8005F774 2404FFFF */ li $a0, -1 -/* 060378 8005F778 10400014 */ beqz $v0, .L8005F7CC -/* 06037C 8005F77C 00000000 */ nop -/* 060380 8005F780 8C430064 */ lw $v1, 0x64($v0) -/* 060384 8005F784 AC400078 */ sw $zero, 0x78($v0) -/* 060388 8005F788 10600010 */ beqz $v1, .L8005F7CC -/* 06038C 8005F78C 24180002 */ li $t8, 2 -/* 060390 8005F790 8FAD0040 */ lw $t5, 0x40($sp) -/* 060394 8005F794 906C0072 */ lbu $t4, 0x72($v1) -/* 060398 8005F798 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 06039C 8005F79C 44814000 */ mtc1 $at, $f8 -/* 0603A0 8005F7A0 018D7021 */ addu $t6, $t4, $t5 -/* 0603A4 8005F7A4 A06E0072 */ sb $t6, 0x72($v1) -/* 0603A8 8005F7A8 A0780070 */ sb $t8, 0x70($v1) -/* 0603AC 8005F7AC 240F0001 */ li $t7, 1 -/* 0603B0 8005F7B0 E4680074 */ swc1 $f8, 0x74($v1) -/* 0603B4 8005F7B4 AFAF0010 */ sw $t7, 0x10($sp) -/* 0603B8 8005F7B8 02002025 */ move $a0, $s0 -/* 0603BC 8005F7BC 2405FFFF */ li $a1, -1 -/* 0603C0 8005F7C0 24060002 */ li $a2, 2 -/* 0603C4 8005F7C4 0C002DD4 */ jal func_8000B750 -/* 0603C8 8005F7C8 24070001 */ li $a3, 1 -.L8005F7CC: -/* 0603CC 8005F7CC 0C006EB2 */ jal func_8001BAC8 -/* 0603D0 8005F7D0 00002025 */ move $a0, $zero -/* 0603D4 8005F7D4 8C43004C */ lw $v1, 0x4c($v0) -/* 0603D8 8005F7D8 8C470064 */ lw $a3, 0x64($v0) -/* 0603DC 8005F7DC 8C790000 */ lw $t9, ($v1) -/* 0603E0 8005F7E0 3C058012 */ lui $a1, %hi(D_8011D610) # $a1, 0x8012 -/* 0603E4 8005F7E4 1619000B */ bne $s0, $t9, .L8005F814 -/* 0603E8 8005F7E8 24A5D610 */ addiu $a1, %lo(D_8011D610) # addiu $a1, $a1, -0x29f0 -/* 0603EC 8005F7EC 846A0014 */ lh $t2, 0x14($v1) -/* 0603F0 8005F7F0 00000000 */ nop -/* 0603F4 8005F7F4 314B0008 */ andi $t3, $t2, 8 -/* 0603F8 8005F7F8 11600006 */ beqz $t3, .L8005F814 -/* 0603FC 8005F7FC 00000000 */ nop -/* 060400 8005F800 820C003B */ lb $t4, 0x3b($s0) -/* 060404 8005F804 24010001 */ li $at, 1 -/* 060408 8005F808 15810002 */ bne $t4, $at, .L8005F814 -/* 06040C 8005F80C 240D0004 */ li $t5, 4 -/* 060410 8005F810 A0ED0187 */ sb $t5, 0x187($a3) -.L8005F814: -/* 060414 8005F814 80EE01D8 */ lb $t6, 0x1d8($a3) -/* 060418 8005F818 00000000 */ nop -/* 06041C 8005F81C 11C00008 */ beqz $t6, .L8005F840 -/* 060420 8005F820 8FBF0024 */ lw $ra, 0x24($sp) -/* 060424 8005F824 80B80000 */ lb $t8, ($a1) -/* 060428 8005F828 240F0001 */ li $t7, 1 -/* 06042C 8005F82C 17000003 */ bnez $t8, .L8005F83C -/* 060430 8005F830 00E02025 */ move $a0, $a3 -/* 060434 8005F834 0C0172DA */ jal func_8005CB68 -/* 060438 8005F838 A0AF0000 */ sb $t7, ($a1) -.L8005F83C: -/* 06043C 8005F83C 8FBF0024 */ lw $ra, 0x24($sp) -.L8005F840: -/* 060440 8005F840 8FB00020 */ lw $s0, 0x20($sp) -/* 060444 8005F844 03E00008 */ jr $ra -/* 060448 8005F848 27BD0040 */ addiu $sp, $sp, 0x40 - -/* 06044C 8005F84C 00000000 */ nop -glabel func_8005F850 -/* 060450 8005F850 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 060454 8005F854 AFBF0014 */ sw $ra, 0x14($sp) -/* 060458 8005F858 3C0500FF */ lui $a1, (0x00FF00FF >> 16) # lui $a1, 0xff -/* 06045C 8005F85C 34A500FF */ ori $a1, (0x00FF00FF & 0xFFFF) # ori $a1, $a1, 0xff -/* 060460 8005F860 0C01C327 */ jal func_80070C9C -/* 060464 8005F864 24040230 */ li $a0, 560 -/* 060468 8005F868 3C018012 */ lui $at, %hi(D_8011D624) # $at, 0x8012 -/* 06046C 8005F86C 3C0500FF */ lui $a1, (0x00FF00FF >> 16) # lui $a1, 0xff -/* 060470 8005F870 AC22D624 */ sw $v0, %lo(D_8011D624)($at) -/* 060474 8005F874 34A500FF */ ori $a1, (0x00FF00FF & 0xFFFF) # ori $a1, $a1, 0xff -/* 060478 8005F878 0C01C327 */ jal func_80070C9C -/* 06047C 8005F87C 24040190 */ li $a0, 400 -/* 060480 8005F880 3C018012 */ lui $at, %hi(D_8011D628) # $at, 0x8012 -/* 060484 8005F884 AC22D628 */ sw $v0, %lo(D_8011D628)($at) -/* 060488 8005F888 3C018012 */ lui $at, %hi(D_8011D62C) # $at, 0x8012 -/* 06048C 8005F88C AC20D62C */ sw $zero, %lo(D_8011D62C)($at) -/* 060490 8005F890 3C018012 */ lui $at, %hi(D_8011D634) # $at, 0x8012 -/* 060494 8005F894 AC20D634 */ sw $zero, %lo(D_8011D634)($at) -/* 060498 8005F898 0C01DB16 */ jal func_80076C58 -/* 06049C 8005F89C 2404001C */ li $a0, 28 -/* 0604A0 8005F8A0 3C058012 */ lui $a1, %hi(D_8011D630) # $a1, 0x8012 -/* 0604A4 8005F8A4 3C078012 */ lui $a3, %hi(D_8011D620) # $a3, 0x8012 -/* 0604A8 8005F8A8 24E7D620 */ addiu $a3, %lo(D_8011D620) # addiu $a3, $a3, -0x29e0 -/* 0604AC 8005F8AC 24A5D630 */ addiu $a1, %lo(D_8011D630) # addiu $a1, $a1, -0x29d0 -/* 0604B0 8005F8B0 00007080 */ sll $t6, $zero, 2 -/* 0604B4 8005F8B4 ACE20000 */ sw $v0, ($a3) -/* 0604B8 8005F8B8 ACA00000 */ sw $zero, ($a1) -/* 0604BC 8005F8BC 004E7821 */ addu $t7, $v0, $t6 -/* 0604C0 8005F8C0 8DF80000 */ lw $t8, ($t7) -/* 0604C4 8005F8C4 2406FFFF */ li $a2, -1 -/* 0604C8 8005F8C8 00402025 */ move $a0, $v0 -/* 0604CC 8005F8CC 10D80009 */ beq $a2, $t8, .L8005F8F4 -/* 0604D0 8005F8D0 00001825 */ move $v1, $zero -/* 0604D4 8005F8D4 24790001 */ addiu $t9, $v1, 1 -.L8005F8D8: -/* 0604D8 8005F8D8 00194080 */ sll $t0, $t9, 2 -/* 0604DC 8005F8DC 00884821 */ addu $t1, $a0, $t0 -/* 0604E0 8005F8E0 ACB90000 */ sw $t9, ($a1) -/* 0604E4 8005F8E4 8D2A0000 */ lw $t2, ($t1) -/* 0604E8 8005F8E8 03201825 */ move $v1, $t9 -/* 0604EC 8005F8EC 14CAFFFA */ bne $a2, $t2, .L8005F8D8 -/* 0604F0 8005F8F0 24790001 */ addiu $t9, $v1, 1 -.L8005F8F4: -/* 0604F4 8005F8F4 246BFFFF */ addiu $t3, $v1, -1 -/* 0604F8 8005F8F8 ACAB0000 */ sw $t3, ($a1) -/* 0604FC 8005F8FC 0C01DB16 */ jal func_80076C58 -/* 060500 8005F900 2404001E */ li $a0, 30 -/* 060504 8005F904 3C018012 */ lui $at, %hi(D_8011D638) # $at, 0x8012 -/* 060508 8005F908 AC22D638 */ sw $v0, %lo(D_8011D638)($at) -/* 06050C 8005F90C 0C01DB16 */ jal func_80076C58 -/* 060510 8005F910 2404001F */ li $a0, 31 -/* 060514 8005F914 3C018012 */ lui $at, %hi(D_8011D63C) # $at, 0x8012 -/* 060518 8005F918 3C0500FF */ lui $a1, (0x00FF00FF >> 16) # lui $a1, 0xff -/* 06051C 8005F91C AC22D63C */ sw $v0, %lo(D_8011D63C)($at) -/* 060520 8005F920 34A500FF */ ori $a1, (0x00FF00FF & 0xFFFF) # ori $a1, $a1, 0xff -/* 060524 8005F924 0C01C327 */ jal func_80070C9C -/* 060528 8005F928 24040C00 */ li $a0, 3072 -/* 06052C 8005F92C 3C018012 */ lui $at, %hi(D_8011D644) # $at, 0x8012 -/* 060530 8005F930 3C05800E */ lui $a1, %hi(D_800DCEA4) # $a1, 0x800e -/* 060534 8005F934 8CA5CEA4 */ lw $a1, %lo(D_800DCEA4)($a1) -/* 060538 8005F938 AC22D644 */ sw $v0, %lo(D_8011D644)($at) -/* 06053C 8005F93C 3C018012 */ lui $at, %hi(D_8011D640) # $at, 0x8012 -/* 060540 8005F940 AC20D640 */ sw $zero, %lo(D_8011D640)($at) -/* 060544 8005F944 00002025 */ move $a0, $zero -/* 060548 8005F948 18A00009 */ blez $a1, .L8005F970 -/* 06054C 8005F94C 00001825 */ move $v1, $zero -/* 060550 8005F950 3C028002 */ lui $v0, %hi(D_80024D54) # $v0, 0x8002 -/* 060554 8005F954 24424D54 */ addiu $v0, %lo(D_80024D54) # addiu $v0, $v0, 0x4d54 -.L8005F958: -/* 060558 8005F958 00436021 */ addu $t4, $v0, $v1 -/* 06055C 8005F95C 918D0000 */ lbu $t5, ($t4) -/* 060560 8005F960 24630001 */ addiu $v1, $v1, 1 -/* 060564 8005F964 0065082A */ slt $at, $v1, $a1 -/* 060568 8005F968 1420FFFB */ bnez $at, .L8005F958 -/* 06056C 8005F96C 008D2021 */ addu $a0, $a0, $t5 -.L8005F970: -/* 060570 8005F970 3C0E800E */ lui $t6, %hi(D_800DCEA0) # $t6, 0x800e -/* 060574 8005F974 8DCECEA0 */ lw $t6, %lo(D_800DCEA0)($t6) -/* 060578 8005F978 00000000 */ nop -/* 06057C 8005F97C 108E0004 */ beq $a0, $t6, .L8005F990 -/* 060580 8005F980 8FBF0014 */ lw $ra, 0x14($sp) -/* 060584 8005F984 0C017097 */ jal func_8005C25C -/* 060588 8005F988 00000000 */ nop -/* 06058C 8005F98C 8FBF0014 */ lw $ra, 0x14($sp) -.L8005F990: -/* 060590 8005F990 27BD0018 */ addiu $sp, $sp, 0x18 -/* 060594 8005F994 03E00008 */ jr $ra -/* 060598 8005F998 00000000 */ nop - -glabel func_8005F99C -/* 06059C 8005F99C 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 0605A0 8005F9A0 3C0E8012 */ lui $t6, %hi(D_8011D630) # $t6, 0x8012 -/* 0605A4 8005F9A4 8DCED630 */ lw $t6, %lo(D_8011D630)($t6) -/* 0605A8 8005F9A8 AFB30020 */ sw $s3, 0x20($sp) -/* 0605AC 8005F9AC 008E082A */ slt $at, $a0, $t6 -/* 0605B0 8005F9B0 00809825 */ move $s3, $a0 -/* 0605B4 8005F9B4 AFBF0024 */ sw $ra, 0x24($sp) -/* 0605B8 8005F9B8 AFB2001C */ sw $s2, 0x1c($sp) -/* 0605BC 8005F9BC AFB10018 */ sw $s1, 0x18($sp) -/* 0605C0 8005F9C0 AFB00014 */ sw $s0, 0x14($sp) -/* 0605C4 8005F9C4 14200002 */ bnez $at, .L8005F9D0 -/* 0605C8 8005F9C8 AFA5005C */ sw $a1, 0x5c($sp) -/* 0605CC 8005F9CC 00009825 */ move $s3, $zero -.L8005F9D0: -/* 0605D0 8005F9D0 3C068012 */ lui $a2, %hi(D_8011D62C) # $a2, 0x8012 -/* 0605D4 8005F9D4 24C6D62C */ addiu $a2, %lo(D_8011D62C) # addiu $a2, $a2, -0x29d4 -/* 0605D8 8005F9D8 8CC40000 */ lw $a0, ($a2) -/* 0605DC 8005F9DC 00008825 */ move $s1, $zero -/* 0605E0 8005F9E0 18800017 */ blez $a0, .L8005FA40 -/* 0605E4 8005F9E4 3C038012 */ lui $v1, %hi(D_8011D624) # $v1, 0x8012 -/* 0605E8 8005F9E8 8C63D624 */ lw $v1, %lo(D_8011D624)($v1) -/* 0605EC 8005F9EC 00000000 */ nop -/* 0605F0 8005F9F0 0011C0C0 */ sll $t8, $s1, 3 -.L8005F9F4: -/* 0605F4 8005F9F4 00781021 */ addu $v0, $v1, $t8 -/* 0605F8 8005F9F8 8C590000 */ lw $t9, ($v0) -/* 0605FC 8005F9FC 26310001 */ addiu $s1, $s1, 1 -/* 060600 8005FA00 1679000D */ bne $s3, $t9, .L8005FA38 -/* 060604 8005FA04 0224082A */ slt $at, $s1, $a0 -/* 060608 8005FA08 8C520004 */ lw $s2, 4($v0) -/* 06060C 8005FA0C 8FA5005C */ lw $a1, 0x5c($sp) -/* 060610 8005FA10 0C017F34 */ jal func_8005FCD0 -/* 060614 8005FA14 02402025 */ move $a0, $s2 -/* 060618 8005FA18 10400005 */ beqz $v0, .L8005FA30 -/* 06061C 8005FA1C 00401825 */ move $v1, $v0 -/* 060620 8005FA20 86480030 */ lh $t0, 0x30($s2) -/* 060624 8005FA24 00000000 */ nop -/* 060628 8005FA28 25090001 */ addiu $t1, $t0, 1 -/* 06062C 8005FA2C A6490030 */ sh $t1, 0x30($s2) -.L8005FA30: -/* 060630 8005FA30 100000A0 */ b .L8005FCB4 -/* 060634 8005FA34 00601025 */ move $v0, $v1 -.L8005FA38: -/* 060638 8005FA38 1420FFEE */ bnez $at, .L8005F9F4 -/* 06063C 8005FA3C 0011C0C0 */ sll $t8, $s1, 3 -.L8005FA40: -/* 060640 8005FA40 3C038012 */ lui $v1, %hi(D_8011D634) # $v1, 0x8012 -/* 060644 8005FA44 2463D634 */ addiu $v1, %lo(D_8011D634) # addiu $v1, $v1, -0x29cc -/* 060648 8005FA48 8C620000 */ lw $v0, ($v1) -/* 06064C 8005FA4C 3C0B8012 */ lui $t3, %hi(D_8011D628) # $t3, 0x8012 -/* 060650 8005FA50 18400008 */ blez $v0, .L8005FA74 -/* 060654 8005FA54 244AFFFF */ addiu $t2, $v0, -1 -/* 060658 8005FA58 AC6A0000 */ sw $t2, ($v1) -/* 06065C 8005FA5C 8D6BD628 */ lw $t3, %lo(D_8011D628)($t3) -/* 060660 8005FA60 000A6880 */ sll $t5, $t2, 2 -/* 060664 8005FA64 016D7021 */ addu $t6, $t3, $t5 -/* 060668 8005FA68 8DCF0000 */ lw $t7, ($t6) -/* 06066C 8005FA6C 10000004 */ b .L8005FA80 -/* 060670 8005FA70 AFAF0050 */ sw $t7, 0x50($sp) -.L8005FA74: -/* 060674 8005FA74 24980001 */ addiu $t8, $a0, 1 -/* 060678 8005FA78 AFA40050 */ sw $a0, 0x50($sp) -/* 06067C 8005FA7C ACD80000 */ sw $t8, ($a2) -.L8005FA80: -/* 060680 8005FA80 3C198012 */ lui $t9, %hi(D_8011D620) # $t9, 0x8012 -/* 060684 8005FA84 8F39D620 */ lw $t9, %lo(D_8011D620)($t9) -/* 060688 8005FA88 00134080 */ sll $t0, $s3, 2 -/* 06068C 8005FA8C 03281021 */ addu $v0, $t9, $t0 -/* 060690 8005FA90 8C500000 */ lw $s0, ($v0) -/* 060694 8005FA94 8C490004 */ lw $t1, 4($v0) -/* 060698 8005FA98 2404001D */ li $a0, 29 -/* 06069C 8005FA9C 01305023 */ subu $t2, $t1, $s0 -/* 0606A0 8005FAA0 AFAA0048 */ sw $t2, 0x48($sp) -/* 0606A4 8005FAA4 0C031877 */ jal func_800C61DC -/* 0606A8 8005FAA8 02002825 */ move $a1, $s0 -/* 0606AC 8005FAAC 24440080 */ addiu $a0, $v0, 0x80 -/* 0606B0 8005FAB0 3C05FF00 */ lui $a1, (0xFF0000FF >> 16) # lui $a1, 0xff00 -/* 0606B4 8005FAB4 AFA40034 */ sw $a0, 0x34($sp) -/* 0606B8 8005FAB8 0C01C344 */ jal func_80070D10 -/* 0606BC 8005FABC 34A500FF */ ori $a1, (0xFF0000FF & 0xFFFF) # ori $a1, $a1, 0xff -/* 0606C0 8005FAC0 14400003 */ bnez $v0, .L8005FAD0 -/* 0606C4 8005FAC4 00409025 */ move $s2, $v0 -/* 0606C8 8005FAC8 1000007A */ b .L8005FCB4 -/* 0606CC 8005FACC 00001025 */ move $v0, $zero -.L8005FAD0: -/* 0606D0 8005FAD0 8FAC0034 */ lw $t4, 0x34($sp) -/* 0606D4 8005FAD4 8FA70048 */ lw $a3, 0x48($sp) -/* 0606D8 8005FAD8 024C5821 */ addu $t3, $s2, $t4 -/* 0606DC 8005FADC 01672823 */ subu $a1, $t3, $a3 -/* 0606E0 8005FAE0 AFA50030 */ sw $a1, 0x30($sp) -/* 0606E4 8005FAE4 2404001D */ li $a0, 29 -/* 0606E8 8005FAE8 02003025 */ move $a2, $s0 -/* 0606EC 8005FAEC 0C01DB9A */ jal func_80076E68 -/* 0606F0 8005FAF0 00008825 */ move $s1, $zero -/* 0606F4 8005FAF4 8FA40030 */ lw $a0, 0x30($sp) -/* 0606F8 8005FAF8 0C031886 */ jal func_800C6218 -/* 0606FC 8005FAFC 02402825 */ move $a1, $s2 -/* 060700 8005FB00 8E4D0000 */ lw $t5, ($s2) -/* 060704 8005FB04 8E4F0004 */ lw $t7, 4($s2) -/* 060708 8005FB08 8E590008 */ lw $t9, 8($s2) -/* 06070C 8005FB0C 01B27021 */ addu $t6, $t5, $s2 -/* 060710 8005FB10 01F2C021 */ addu $t8, $t7, $s2 -/* 060714 8005FB14 8E490038 */ lw $t1, 0x38($s2) -/* 060718 8005FB18 8E4C0014 */ lw $t4, 0x14($s2) -/* 06071C 8005FB1C 8E4D001C */ lw $t5, 0x1c($s2) -/* 060720 8005FB20 8E4F004C */ lw $t7, 0x4c($s2) -/* 060724 8005FB24 86440022 */ lh $a0, 0x22($s2) -/* 060728 8005FB28 AE4E0000 */ sw $t6, ($s2) -/* 06072C 8005FB2C AE580004 */ sw $t8, 4($s2) -/* 060730 8005FB30 03324021 */ addu $t0, $t9, $s2 -/* 060734 8005FB34 24190001 */ li $t9, 1 -/* 060738 8005FB38 01325021 */ addu $t2, $t1, $s2 -/* 06073C 8005FB3C 01925821 */ addu $t3, $t4, $s2 -/* 060740 8005FB40 01B27021 */ addu $t6, $t5, $s2 -/* 060744 8005FB44 01F2C021 */ addu $t8, $t7, $s2 -/* 060748 8005FB48 AE480008 */ sw $t0, 8($s2) -/* 06074C 8005FB4C AE4A0038 */ sw $t2, 0x38($s2) -/* 060750 8005FB50 AE4B0014 */ sw $t3, 0x14($s2) -/* 060754 8005FB54 AE4E001C */ sw $t6, 0x1c($s2) -/* 060758 8005FB58 AE58004C */ sw $t8, 0x4c($s2) -/* 06075C 8005FB5C A6590030 */ sh $t9, 0x30($s2) -/* 060760 8005FB60 AE40000C */ sw $zero, 0xc($s2) -/* 060764 8005FB64 AE400010 */ sw $zero, 0x10($s2) -/* 060768 8005FB68 A6400032 */ sh $zero, 0x32($s2) -/* 06076C 8005FB6C A6400052 */ sh $zero, 0x52($s2) -/* 060770 8005FB70 AE400040 */ sw $zero, 0x40($s2) -/* 060774 8005FB74 A6400048 */ sh $zero, 0x48($s2) -/* 060778 8005FB78 AE400044 */ sw $zero, 0x44($s2) -/* 06077C 8005FB7C 1880001B */ blez $a0, .L8005FBEC -/* 060780 8005FB80 00002825 */ move $a1, $zero -/* 060784 8005FB84 8E500000 */ lw $s0, ($s2) -/* 060788 8005FB88 00001825 */ move $v1, $zero -.L8005FB8C: -/* 06078C 8005FB8C 8E040000 */ lw $a0, ($s0) -/* 060790 8005FB90 A3A5003F */ sb $a1, 0x3f($sp) -/* 060794 8005FB94 34888000 */ ori $t0, $a0, 0x8000 -/* 060798 8005FB98 01002025 */ move $a0, $t0 -/* 06079C 8005FB9C 0C01EB9D */ jal func_8007AE74 -/* 0607A0 8005FBA0 AFA3002C */ sw $v1, 0x2c($sp) -/* 0607A4 8005FBA4 8FA3002C */ lw $v1, 0x2c($sp) -/* 0607A8 8005FBA8 8E490000 */ lw $t1, ($s2) -/* 0607AC 8005FBAC 83A5003F */ lb $a1, 0x3f($sp) -/* 0607B0 8005FBB0 01235021 */ addu $t2, $t1, $v1 -/* 0607B4 8005FBB4 AD420000 */ sw $v0, ($t2) -/* 0607B8 8005FBB8 8E4C0000 */ lw $t4, ($s2) -/* 0607BC 8005FBBC 26310001 */ addiu $s1, $s1, 1 -/* 0607C0 8005FBC0 01838021 */ addu $s0, $t4, $v1 -/* 0607C4 8005FBC4 8E0B0000 */ lw $t3, ($s0) -/* 0607C8 8005FBC8 00000000 */ nop -/* 0607CC 8005FBCC 15600002 */ bnez $t3, .L8005FBD8 -/* 0607D0 8005FBD0 00000000 */ nop -/* 0607D4 8005FBD4 24050001 */ li $a1, 1 -.L8005FBD8: -/* 0607D8 8005FBD8 86440022 */ lh $a0, 0x22($s2) -/* 0607DC 8005FBDC 24630008 */ addiu $v1, $v1, 8 -/* 0607E0 8005FBE0 0224082A */ slt $at, $s1, $a0 -/* 0607E4 8005FBE4 1420FFE9 */ bnez $at, .L8005FB8C -/* 0607E8 8005FBE8 26100008 */ addiu $s0, $s0, 8 -.L8005FBEC: -/* 0607EC 8005FBEC 14A0002E */ bnez $a1, .L8005FCA8 -/* 0607F0 8005FBF0 00000000 */ nop -/* 0607F4 8005FBF4 86450028 */ lh $a1, 0x28($s2) -/* 0607F8 8005FBF8 00008825 */ move $s1, $zero -/* 0607FC 8005FBFC 18A0000B */ blez $a1, .L8005FC2C -/* 060800 8005FC00 00000000 */ nop -/* 060804 8005FC04 8E420038 */ lw $v0, 0x38($s2) -/* 060808 8005FC08 240600FF */ li $a2, 255 -.L8005FC0C: -/* 06080C 8005FC0C 90430000 */ lbu $v1, ($v0) -/* 060810 8005FC10 26310001 */ addiu $s1, $s1, 1 -/* 060814 8005FC14 10C30002 */ beq $a2, $v1, .L8005FC20 -/* 060818 8005FC18 0064082A */ slt $at, $v1, $a0 -/* 06081C 8005FC1C 10200022 */ beqz $at, .L8005FCA8 -.L8005FC20: -/* 060820 8005FC20 0225082A */ slt $at, $s1, $a1 -/* 060824 8005FC24 1420FFF9 */ bnez $at, .L8005FC0C -/* 060828 8005FC28 2442000C */ addiu $v0, $v0, 0xc -.L8005FC2C: -/* 06082C 8005FC2C 0C0183AA */ jal func_80060EA8 -/* 060830 8005FC30 02402025 */ move $a0, $s2 -/* 060834 8005FC34 1440001C */ bnez $v0, .L8005FCA8 -/* 060838 8005FC38 02402025 */ move $a0, $s2 -/* 06083C 8005FC3C 0C018680 */ jal func_80061A00 -/* 060840 8005FC40 02602825 */ move $a1, $s3 -/* 060844 8005FC44 14400018 */ bnez $v0, .L8005FCA8 -/* 060848 8005FC48 00000000 */ nop -/* 06084C 8005FC4C 8FA5005C */ lw $a1, 0x5c($sp) -/* 060850 8005FC50 0C017F34 */ jal func_8005FCD0 -/* 060854 8005FC54 02402025 */ move $a0, $s2 -/* 060858 8005FC58 10400013 */ beqz $v0, .L8005FCA8 -/* 06085C 8005FC5C 00401825 */ move $v1, $v0 -/* 060860 8005FC60 3C048012 */ lui $a0, %hi(D_8011D624) # $a0, 0x8012 -/* 060864 8005FC64 8FAD0050 */ lw $t5, 0x50($sp) -/* 060868 8005FC68 2484D624 */ addiu $a0, %lo(D_8011D624) # addiu $a0, $a0, -0x29dc -/* 06086C 8005FC6C 8C8F0000 */ lw $t7, ($a0) -/* 060870 8005FC70 000D70C0 */ sll $t6, $t5, 3 -/* 060874 8005FC74 01EEC021 */ addu $t8, $t7, $t6 -/* 060878 8005FC78 AF130000 */ sw $s3, ($t8) -/* 06087C 8005FC7C 8C990000 */ lw $t9, ($a0) -/* 060880 8005FC80 3C098012 */ lui $t1, %hi(D_8011D62C) # $t1, 0x8012 -/* 060884 8005FC84 032E4021 */ addu $t0, $t9, $t6 -/* 060888 8005FC88 AD120004 */ sw $s2, 4($t0) -/* 06088C 8005FC8C 8D29D62C */ lw $t1, %lo(D_8011D62C)($t1) -/* 060890 8005FC90 00601025 */ move $v0, $v1 -/* 060894 8005FC94 29210046 */ slti $at, $t1, 0x46 -/* 060898 8005FC98 10200003 */ beqz $at, .L8005FCA8 -/* 06089C 8005FC9C 00000000 */ nop -/* 0608A0 8005FCA0 10000004 */ b .L8005FCB4 -/* 0608A4 8005FCA4 A0600020 */ sb $zero, 0x20($v1) -.L8005FCA8: -/* 0608A8 8005FCA8 0C018016 */ jal func_80060058 -/* 0608AC 8005FCAC 02402025 */ move $a0, $s2 -/* 0608B0 8005FCB0 00001025 */ move $v0, $zero -.L8005FCB4: -/* 0608B4 8005FCB4 8FBF0024 */ lw $ra, 0x24($sp) -/* 0608B8 8005FCB8 8FB00014 */ lw $s0, 0x14($sp) -/* 0608BC 8005FCBC 8FB10018 */ lw $s1, 0x18($sp) -/* 0608C0 8005FCC0 8FB2001C */ lw $s2, 0x1c($sp) -/* 0608C4 8005FCC4 8FB30020 */ lw $s3, 0x20($sp) -/* 0608C8 8005FCC8 03E00008 */ jr $ra -/* 0608CC 8005FCCC 27BD0058 */ addiu $sp, $sp, 0x58 - -glabel func_8005FCD0 -/* 0608D0 8005FCD0 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0608D4 8005FCD4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0608D8 8005FCD8 848E0048 */ lh $t6, 0x48($a0) -/* 0608DC 8005FCDC 00803825 */ move $a3, $a0 -/* 0608E0 8005FCE0 11C00026 */ beqz $t6, .L8005FD7C -/* 0608E4 8005FCE4 30AF0008 */ andi $t7, $a1, 8 -/* 0608E8 8005FCE8 11E00024 */ beqz $t7, .L8005FD7C -/* 0608EC 8005FCEC 00000000 */ nop -/* 0608F0 8005FCF0 84860024 */ lh $a2, 0x24($a0) -/* 0608F4 8005FCF4 8488004A */ lh $t0, 0x4a($a0) -/* 0608F8 8005FCF8 0006C040 */ sll $t8, $a2, 1 -/* 0608FC 8005FCFC 0018C880 */ sll $t9, $t8, 2 -/* 060900 8005FD00 0338C821 */ addu $t9, $t9, $t8 -/* 060904 8005FD04 00084880 */ sll $t1, $t0, 2 -/* 060908 8005FD08 0019C840 */ sll $t9, $t9, 1 -/* 06090C 8005FD0C 01284823 */ subu $t1, $t1, $t0 -/* 060910 8005FD10 27260024 */ addiu $a2, $t9, 0x24 -/* 060914 8005FD14 00094840 */ sll $t1, $t1, 1 -/* 060918 8005FD18 01262021 */ addu $a0, $t1, $a2 -/* 06091C 8005FD1C AFA6001C */ sw $a2, 0x1c($sp) -/* 060920 8005FD20 AFA70020 */ sw $a3, 0x20($sp) -/* 060924 8005FD24 0C01C344 */ jal func_80070D10 -/* 060928 8005FD28 3405FFFF */ li $a1, 65535 -/* 06092C 8005FD2C 8FA6001C */ lw $a2, 0x1c($sp) -/* 060930 8005FD30 8FA70020 */ lw $a3, 0x20($sp) -/* 060934 8005FD34 14400003 */ bnez $v0, .L8005FD44 -/* 060938 8005FD38 00402825 */ move $a1, $v0 -/* 06093C 8005FD3C 1000007C */ b .L8005FF30 -/* 060940 8005FD40 00001025 */ move $v0, $zero -.L8005FD44: -/* 060944 8005FD44 244A0024 */ addiu $t2, $v0, 0x24 -/* 060948 8005FD48 AC4A0004 */ sw $t2, 4($v0) -/* 06094C 8005FD4C 84EB0024 */ lh $t3, 0x24($a3) -/* 060950 8005FD50 00467821 */ addu $t7, $v0, $a2 -/* 060954 8005FD54 000B6080 */ sll $t4, $t3, 2 -/* 060958 8005FD58 018B6021 */ addu $t4, $t4, $t3 -/* 06095C 8005FD5C 000C6040 */ sll $t4, $t4, 1 -/* 060960 8005FD60 004C6821 */ addu $t5, $v0, $t4 -/* 060964 8005FD64 25AE0024 */ addiu $t6, $t5, 0x24 -/* 060968 8005FD68 24180002 */ li $t8, 2 -/* 06096C 8005FD6C AC4E0008 */ sw $t6, 8($v0) -/* 060970 8005FD70 AC4F000C */ sw $t7, 0xc($v0) -/* 060974 8005FD74 10000029 */ b .L8005FE1C -/* 060978 8005FD78 A058001E */ sb $t8, 0x1e($v0) -.L8005FD7C: -/* 06097C 8005FD7C 8CF90040 */ lw $t9, 0x40($a3) -/* 060980 8005FD80 30A80001 */ andi $t0, $a1, 1 -/* 060984 8005FD84 13200016 */ beqz $t9, .L8005FDE0 -/* 060988 8005FD88 24040024 */ li $a0, 36 -/* 06098C 8005FD8C 11000014 */ beqz $t0, .L8005FDE0 -/* 060990 8005FD90 3405FFFF */ li $a1, 65535 -/* 060994 8005FD94 84E60024 */ lh $a2, 0x24($a3) -/* 060998 8005FD98 AFA70020 */ sw $a3, 0x20($sp) -/* 06099C 8005FD9C 00064880 */ sll $t1, $a2, 2 -/* 0609A0 8005FDA0 01264821 */ addu $t1, $t1, $a2 -/* 0609A4 8005FDA4 00094840 */ sll $t1, $t1, 1 -/* 0609A8 8005FDA8 0C01C344 */ jal func_80070D10 -/* 0609AC 8005FDAC 25240024 */ addiu $a0, $t1, 0x24 -/* 0609B0 8005FDB0 8FA70020 */ lw $a3, 0x20($sp) -/* 0609B4 8005FDB4 14400003 */ bnez $v0, .L8005FDC4 -/* 0609B8 8005FDB8 00402825 */ move $a1, $v0 -/* 0609BC 8005FDBC 1000005C */ b .L8005FF30 -/* 0609C0 8005FDC0 00001025 */ move $v0, $zero -.L8005FDC4: -/* 0609C4 8005FDC4 24430024 */ addiu $v1, $v0, 0x24 -/* 0609C8 8005FDC8 240A0001 */ li $t2, 1 -/* 0609CC 8005FDCC AC430004 */ sw $v1, 4($v0) -/* 0609D0 8005FDD0 AC430008 */ sw $v1, 8($v0) -/* 0609D4 8005FDD4 AC40000C */ sw $zero, 0xc($v0) -/* 0609D8 8005FDD8 10000010 */ b .L8005FE1C -/* 0609DC 8005FDDC A04A001E */ sb $t2, 0x1e($v0) -.L8005FDE0: -/* 0609E0 8005FDE0 3405FFFF */ li $a1, 65535 -/* 0609E4 8005FDE4 0C01C344 */ jal func_80070D10 -/* 0609E8 8005FDE8 AFA70020 */ sw $a3, 0x20($sp) -/* 0609EC 8005FDEC 8FA70020 */ lw $a3, 0x20($sp) -/* 0609F0 8005FDF0 14400003 */ bnez $v0, .L8005FE00 -/* 0609F4 8005FDF4 00402825 */ move $a1, $v0 -/* 0609F8 8005FDF8 1000004D */ b .L8005FF30 -/* 0609FC 8005FDFC 00001025 */ move $v0, $zero -.L8005FE00: -/* 060A00 8005FE00 8CEB0004 */ lw $t3, 4($a3) -/* 060A04 8005FE04 00000000 */ nop -/* 060A08 8005FE08 AC4B0004 */ sw $t3, 4($v0) -/* 060A0C 8005FE0C 8CEC0004 */ lw $t4, 4($a3) -/* 060A10 8005FE10 AC40000C */ sw $zero, 0xc($v0) -/* 060A14 8005FE14 A040001E */ sb $zero, 0x1e($v0) -/* 060A18 8005FE18 AC4C0008 */ sw $t4, 8($v0) -.L8005FE1C: -/* 060A1C 8005FE1C 804D001E */ lb $t5, 0x1e($v0) -/* 060A20 8005FE20 2403FFFF */ li $v1, -1 -/* 060A24 8005FE24 A4400016 */ sh $zero, 0x16($v0) -/* 060A28 8005FE28 A4400018 */ sh $zero, 0x18($v0) -/* 060A2C 8005FE2C A440001A */ sh $zero, 0x1a($v0) -/* 060A30 8005FE30 AC470000 */ sw $a3, ($v0) -/* 060A34 8005FE34 A4430010 */ sh $v1, 0x10($v0) -/* 060A38 8005FE38 A4430012 */ sh $v1, 0x12($v0) -/* 060A3C 8005FE3C 11A0003B */ beqz $t5, .L8005FF2C -/* 060A40 8005FE40 A040001F */ sb $zero, 0x1f($v0) -/* 060A44 8005FE44 8C430004 */ lw $v1, 4($v0) -/* 060A48 8005FE48 8CE40004 */ lw $a0, 4($a3) -/* 060A4C 8005FE4C 00003025 */ move $a2, $zero -.L8005FE50: -/* 060A50 8005FE50 848E0000 */ lh $t6, ($a0) -/* 060A54 8005FE54 24C60001 */ addiu $a2, $a2, 1 -/* 060A58 8005FE58 A46E0000 */ sh $t6, ($v1) -/* 060A5C 8005FE5C 848F0002 */ lh $t7, 2($a0) -/* 060A60 8005FE60 2463000A */ addiu $v1, $v1, 0xa -/* 060A64 8005FE64 A46FFFF8 */ sh $t7, -8($v1) -/* 060A68 8005FE68 84980004 */ lh $t8, 4($a0) -/* 060A6C 8005FE6C 2484000A */ addiu $a0, $a0, 0xa -/* 060A70 8005FE70 A478FFFA */ sh $t8, -6($v1) -/* 060A74 8005FE74 9099FFFC */ lbu $t9, -4($a0) -/* 060A78 8005FE78 00000000 */ nop -/* 060A7C 8005FE7C A079FFFC */ sb $t9, -4($v1) -/* 060A80 8005FE80 9088FFFD */ lbu $t0, -3($a0) -/* 060A84 8005FE84 00000000 */ nop -/* 060A88 8005FE88 A068FFFD */ sb $t0, -3($v1) -/* 060A8C 8005FE8C 9089FFFE */ lbu $t1, -2($a0) -/* 060A90 8005FE90 00000000 */ nop -/* 060A94 8005FE94 A069FFFE */ sb $t1, -2($v1) -/* 060A98 8005FE98 908AFFFF */ lbu $t2, -1($a0) -/* 060A9C 8005FE9C 00000000 */ nop -/* 060AA0 8005FEA0 A06AFFFF */ sb $t2, -1($v1) -/* 060AA4 8005FEA4 84EB0024 */ lh $t3, 0x24($a3) -/* 060AA8 8005FEA8 00000000 */ nop -/* 060AAC 8005FEAC 00CB082A */ slt $at, $a2, $t3 -/* 060AB0 8005FEB0 1420FFE7 */ bnez $at, .L8005FE50 -/* 060AB4 8005FEB4 00000000 */ nop -/* 060AB8 8005FEB8 8C430008 */ lw $v1, 8($v0) -/* 060ABC 8005FEBC 8CE40004 */ lw $a0, 4($a3) -/* 060AC0 8005FEC0 00003025 */ move $a2, $zero -.L8005FEC4: -/* 060AC4 8005FEC4 848C0000 */ lh $t4, ($a0) -/* 060AC8 8005FEC8 24C60001 */ addiu $a2, $a2, 1 -/* 060ACC 8005FECC A46C0000 */ sh $t4, ($v1) -/* 060AD0 8005FED0 848D0002 */ lh $t5, 2($a0) -/* 060AD4 8005FED4 2463000A */ addiu $v1, $v1, 0xa -/* 060AD8 8005FED8 A46DFFF8 */ sh $t5, -8($v1) -/* 060ADC 8005FEDC 848E0004 */ lh $t6, 4($a0) -/* 060AE0 8005FEE0 2484000A */ addiu $a0, $a0, 0xa -/* 060AE4 8005FEE4 A46EFFFA */ sh $t6, -6($v1) -/* 060AE8 8005FEE8 908FFFFC */ lbu $t7, -4($a0) -/* 060AEC 8005FEEC 00000000 */ nop -/* 060AF0 8005FEF0 A06FFFFC */ sb $t7, -4($v1) -/* 060AF4 8005FEF4 9098FFFD */ lbu $t8, -3($a0) -/* 060AF8 8005FEF8 00000000 */ nop -/* 060AFC 8005FEFC A078FFFD */ sb $t8, -3($v1) -/* 060B00 8005FF00 9099FFFE */ lbu $t9, -2($a0) -/* 060B04 8005FF04 00000000 */ nop -/* 060B08 8005FF08 A079FFFE */ sb $t9, -2($v1) -/* 060B0C 8005FF0C 9088FFFF */ lbu $t0, -1($a0) -/* 060B10 8005FF10 00000000 */ nop -/* 060B14 8005FF14 A068FFFF */ sb $t0, -1($v1) -/* 060B18 8005FF18 84E90024 */ lh $t1, 0x24($a3) -/* 060B1C 8005FF1C 00000000 */ nop -/* 060B20 8005FF20 00C9082A */ slt $at, $a2, $t1 -/* 060B24 8005FF24 1420FFE7 */ bnez $at, .L8005FEC4 -/* 060B28 8005FF28 00000000 */ nop -.L8005FF2C: -/* 060B2C 8005FF2C 00A01025 */ move $v0, $a1 -.L8005FF30: -/* 060B30 8005FF30 8FBF0014 */ lw $ra, 0x14($sp) -/* 060B34 8005FF34 27BD0020 */ addiu $sp, $sp, 0x20 -/* 060B38 8005FF38 03E00008 */ jr $ra -/* 060B3C 8005FF3C 00000000 */ nop - -glabel func_8005FF40 -/* 060B40 8005FF40 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 060B44 8005FF44 AFBF0014 */ sw $ra, 0x14($sp) -/* 060B48 8005FF48 1080003F */ beqz $a0, .L80060048 -/* 060B4C 8005FF4C 00803825 */ move $a3, $a0 -/* 060B50 8005FF50 8C850000 */ lw $a1, ($a0) -/* 060B54 8005FF54 3C038012 */ lui $v1, %hi(D_8011D62C) # $v1, 0x8012 -/* 060B58 8005FF58 84AE0030 */ lh $t6, 0x30($a1) -/* 060B5C 8005FF5C 2408FFFF */ li $t0, -1 -/* 060B60 8005FF60 25CFFFFF */ addiu $t7, $t6, -1 -/* 060B64 8005FF64 A4AF0030 */ sh $t7, 0x30($a1) -/* 060B68 8005FF68 84B80030 */ lh $t8, 0x30($a1) -/* 060B6C 8005FF6C 00000000 */ nop -/* 060B70 8005FF70 1B000005 */ blez $t8, .L8005FF88 -/* 060B74 8005FF74 00000000 */ nop -/* 060B78 8005FF78 0C01C450 */ jal func_80071140 -/* 060B7C 8005FF7C 00000000 */ nop -/* 060B80 8005FF80 10000032 */ b .L8006004C -/* 060B84 8005FF84 8FBF0014 */ lw $ra, 0x14($sp) -.L8005FF88: -/* 060B88 8005FF88 8C63D62C */ lw $v1, %lo(D_8011D62C)($v1) -/* 060B8C 8005FF8C 2406FFFF */ li $a2, -1 -/* 060B90 8005FF90 1860000F */ blez $v1, .L8005FFD0 -/* 060B94 8005FF94 00001025 */ move $v0, $zero -/* 060B98 8005FF98 3C048012 */ lui $a0, %hi(D_8011D624) # $a0, 0x8012 -/* 060B9C 8005FF9C 8C84D624 */ lw $a0, %lo(D_8011D624)($a0) -/* 060BA0 8005FFA0 00000000 */ nop -/* 060BA4 8005FFA4 000248C0 */ sll $t1, $v0, 3 -.L8005FFA8: -/* 060BA8 8005FFA8 00895021 */ addu $t2, $a0, $t1 -/* 060BAC 8005FFAC 8D4B0004 */ lw $t3, 4($t2) -/* 060BB0 8005FFB0 00000000 */ nop -/* 060BB4 8005FFB4 14AB0002 */ bne $a1, $t3, .L8005FFC0 -/* 060BB8 8005FFB8 00000000 */ nop -/* 060BBC 8005FFBC 00403025 */ move $a2, $v0 -.L8005FFC0: -/* 060BC0 8005FFC0 24420001 */ addiu $v0, $v0, 1 -/* 060BC4 8005FFC4 0043082A */ slt $at, $v0, $v1 -/* 060BC8 8005FFC8 1420FFF7 */ bnez $at, .L8005FFA8 -/* 060BCC 8005FFCC 000248C0 */ sll $t1, $v0, 3 -.L8005FFD0: -/* 060BD0 8005FFD0 10C8001D */ beq $a2, $t0, .L80060048 -/* 060BD4 8005FFD4 00A02025 */ move $a0, $a1 -/* 060BD8 8005FFD8 AFA60018 */ sw $a2, 0x18($sp) -/* 060BDC 8005FFDC 0C018016 */ jal func_80060058 -/* 060BE0 8005FFE0 AFA70020 */ sw $a3, 0x20($sp) -/* 060BE4 8005FFE4 3C038012 */ lui $v1, %hi(D_8011D634) # $v1, 0x8012 -/* 060BE8 8005FFE8 2463D634 */ addiu $v1, %lo(D_8011D634) # addiu $v1, $v1, -0x29cc -/* 060BEC 8005FFEC 8C6D0000 */ lw $t5, ($v1) -/* 060BF0 8005FFF0 3C0C8012 */ lui $t4, %hi(D_8011D628) # $t4, 0x8012 -/* 060BF4 8005FFF4 8D8CD628 */ lw $t4, %lo(D_8011D628)($t4) -/* 060BF8 8005FFF8 8FA20018 */ lw $v0, 0x18($sp) -/* 060BFC 8005FFFC 000D7080 */ sll $t6, $t5, 2 -/* 060C00 80060000 8FA40020 */ lw $a0, 0x20($sp) -/* 060C04 80060004 018E7821 */ addu $t7, $t4, $t6 -/* 060C08 80060008 3C058012 */ lui $a1, %hi(D_8011D624) # $a1, 0x8012 -/* 060C0C 8006000C ADE20000 */ sw $v0, ($t7) -/* 060C10 80060010 8C780000 */ lw $t8, ($v1) -/* 060C14 80060014 24A5D624 */ addiu $a1, %lo(D_8011D624) # addiu $a1, $a1, -0x29dc -/* 060C18 80060018 8CAA0000 */ lw $t2, ($a1) -/* 060C1C 8006001C 000248C0 */ sll $t1, $v0, 3 -/* 060C20 80060020 27190001 */ addiu $t9, $t8, 1 -/* 060C24 80060024 2408FFFF */ li $t0, -1 -/* 060C28 80060028 AC790000 */ sw $t9, ($v1) -/* 060C2C 8006002C 01495821 */ addu $t3, $t2, $t1 -/* 060C30 80060030 AD680000 */ sw $t0, ($t3) -/* 060C34 80060034 8CAD0000 */ lw $t5, ($a1) -/* 060C38 80060038 00000000 */ nop -/* 060C3C 8006003C 01A96021 */ addu $t4, $t5, $t1 -/* 060C40 80060040 0C01C450 */ jal func_80071140 -/* 060C44 80060044 AD880004 */ sw $t0, 4($t4) -.L80060048: -/* 060C48 80060048 8FBF0014 */ lw $ra, 0x14($sp) -.L8006004C: -/* 060C4C 8006004C 27BD0020 */ addiu $sp, $sp, 0x20 -/* 060C50 80060050 03E00008 */ jr $ra -/* 060C54 80060054 00000000 */ nop - -glabel func_80060058 -/* 060C58 80060058 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 060C5C 8006005C AFBF0024 */ sw $ra, 0x24($sp) -/* 060C60 80060060 AFB20020 */ sw $s2, 0x20($sp) -/* 060C64 80060064 AFB1001C */ sw $s1, 0x1c($sp) -/* 060C68 80060068 AFB00018 */ sw $s0, 0x18($sp) -/* 060C6C 8006006C 84820022 */ lh $v0, 0x22($a0) -/* 060C70 80060070 00809025 */ move $s2, $a0 -/* 060C74 80060074 18400011 */ blez $v0, .L800600BC -/* 060C78 80060078 00008025 */ move $s0, $zero -/* 060C7C 8006007C 00008825 */ move $s1, $zero -.L80060080: -/* 060C80 80060080 8E4E0000 */ lw $t6, ($s2) -/* 060C84 80060084 00000000 */ nop -/* 060C88 80060088 01D17821 */ addu $t7, $t6, $s1 -/* 060C8C 8006008C 8DE40000 */ lw $a0, ($t7) -/* 060C90 80060090 00000000 */ nop -/* 060C94 80060094 10800005 */ beqz $a0, .L800600AC -/* 060C98 80060098 00000000 */ nop -/* 060C9C 8006009C 0C01ECAF */ jal func_8007B2BC -/* 060CA0 800600A0 00000000 */ nop -/* 060CA4 800600A4 86420022 */ lh $v0, 0x22($s2) -/* 060CA8 800600A8 00000000 */ nop -.L800600AC: -/* 060CAC 800600AC 26100001 */ addiu $s0, $s0, 1 -/* 060CB0 800600B0 0202082A */ slt $at, $s0, $v0 -/* 060CB4 800600B4 1420FFF2 */ bnez $at, .L80060080 -/* 060CB8 800600B8 26310008 */ addiu $s1, $s1, 8 -.L800600BC: -/* 060CBC 800600BC 8E44000C */ lw $a0, 0xc($s2) -/* 060CC0 800600C0 00000000 */ nop -/* 060CC4 800600C4 10800003 */ beqz $a0, .L800600D4 -/* 060CC8 800600C8 00000000 */ nop -/* 060CCC 800600CC 0C01C450 */ jal func_80071140 -/* 060CD0 800600D0 00000000 */ nop -.L800600D4: -/* 060CD4 800600D4 8E440010 */ lw $a0, 0x10($s2) -/* 060CD8 800600D8 00000000 */ nop -/* 060CDC 800600DC 10800003 */ beqz $a0, .L800600EC -/* 060CE0 800600E0 00000000 */ nop -/* 060CE4 800600E4 0C01C450 */ jal func_80071140 -/* 060CE8 800600E8 00000000 */ nop -.L800600EC: -/* 060CEC 800600EC 8E440040 */ lw $a0, 0x40($s2) -/* 060CF0 800600F0 00000000 */ nop -/* 060CF4 800600F4 10800003 */ beqz $a0, .L80060104 -/* 060CF8 800600F8 00000000 */ nop -/* 060CFC 800600FC 0C01C450 */ jal func_80071140 -/* 060D00 80060100 00000000 */ nop -.L80060104: -/* 060D04 80060104 8E580044 */ lw $t8, 0x44($s2) -/* 060D08 80060108 00000000 */ nop -/* 060D0C 8006010C 13000013 */ beqz $t8, .L8006015C -/* 060D10 80060110 00000000 */ nop -/* 060D14 80060114 86590048 */ lh $t9, 0x48($s2) -/* 060D18 80060118 00008025 */ move $s0, $zero -/* 060D1C 8006011C 1320000F */ beqz $t9, .L8006015C -/* 060D20 80060120 00008825 */ move $s1, $zero -.L80060124: -/* 060D24 80060124 8E480044 */ lw $t0, 0x44($s2) -/* 060D28 80060128 00000000 */ nop -/* 060D2C 8006012C 01114821 */ addu $t1, $t0, $s1 -/* 060D30 80060130 8D240000 */ lw $a0, ($t1) -/* 060D34 80060134 0C01C450 */ jal func_80071140 -/* 060D38 80060138 2484FFFC */ addiu $a0, $a0, -4 -/* 060D3C 8006013C 864A0048 */ lh $t2, 0x48($s2) -/* 060D40 80060140 26100001 */ addiu $s0, $s0, 1 -/* 060D44 80060144 020A082A */ slt $at, $s0, $t2 -/* 060D48 80060148 1420FFF6 */ bnez $at, .L80060124 -/* 060D4C 8006014C 26310008 */ addiu $s1, $s1, 8 -/* 060D50 80060150 8E440044 */ lw $a0, 0x44($s2) -/* 060D54 80060154 0C01C450 */ jal func_80071140 -/* 060D58 80060158 00000000 */ nop -.L8006015C: -/* 060D5C 8006015C 0C01C450 */ jal func_80071140 -/* 060D60 80060160 02402025 */ move $a0, $s2 -/* 060D64 80060164 8FBF0024 */ lw $ra, 0x24($sp) -/* 060D68 80060168 8FB00018 */ lw $s0, 0x18($sp) -/* 060D6C 8006016C 8FB1001C */ lw $s1, 0x1c($sp) -/* 060D70 80060170 8FB20020 */ lw $s2, 0x20($sp) -/* 060D74 80060174 03E00008 */ jr $ra -/* 060D78 80060178 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_8006017C -/* 060D7C 8006017C 27BDFF00 */ addiu $sp, $sp, -0x100 -/* 060D80 80060180 AFBF006C */ sw $ra, 0x6c($sp) -/* 060D84 80060184 AFBE0068 */ sw $fp, 0x68($sp) -/* 060D88 80060188 AFB70064 */ sw $s7, 0x64($sp) -/* 060D8C 8006018C AFB60060 */ sw $s6, 0x60($sp) -/* 060D90 80060190 AFB5005C */ sw $s5, 0x5c($sp) -/* 060D94 80060194 AFB40058 */ sw $s4, 0x58($sp) -/* 060D98 80060198 AFB30054 */ sw $s3, 0x54($sp) -/* 060D9C 8006019C AFB20050 */ sw $s2, 0x50($sp) -/* 060DA0 800601A0 AFB1004C */ sw $s1, 0x4c($sp) -/* 060DA4 800601A4 AFB00048 */ sw $s0, 0x48($sp) -/* 060DA8 800601A8 E7BF0040 */ swc1 $f31, 0x40($sp) -/* 060DAC 800601AC E7BE0044 */ swc1 $f30, 0x44($sp) -/* 060DB0 800601B0 E7BD0038 */ swc1 $f29, 0x38($sp) -/* 060DB4 800601B4 E7BC003C */ swc1 $f28, 0x3c($sp) -/* 060DB8 800601B8 E7BB0030 */ swc1 $f27, 0x30($sp) -/* 060DBC 800601BC E7BA0034 */ swc1 $f26, 0x34($sp) -/* 060DC0 800601C0 E7B90028 */ swc1 $f25, 0x28($sp) -/* 060DC4 800601C4 E7B8002C */ swc1 $f24, 0x2c($sp) -/* 060DC8 800601C8 E7B70020 */ swc1 $f23, 0x20($sp) -/* 060DCC 800601CC E7B60024 */ swc1 $f22, 0x24($sp) -/* 060DD0 800601D0 E7B50018 */ swc1 $f21, 0x18($sp) -/* 060DD4 800601D4 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 060DD8 800601D8 8C8E000C */ lw $t6, 0xc($a0) -/* 060DDC 800601DC 00809025 */ move $s2, $a0 -/* 060DE0 800601E0 15C001B3 */ bnez $t6, .L800608B0 -/* 060DE4 800601E4 3C10FF00 */ lui $s0, (0xFF0000FF >> 16) # lui $s0, 0xff00 -/* 060DE8 800601E8 84840028 */ lh $a0, 0x28($a0) -/* 060DEC 800601EC 0000A025 */ move $s4, $zero -/* 060DF0 800601F0 18800011 */ blez $a0, .L80060238 -/* 060DF4 800601F4 361000FF */ ori $s0, (0xFF0000FF & 0xFFFF) # ori $s0, $s0, 0xff -/* 060DF8 800601F8 00043080 */ sll $a2, $a0, 2 -/* 060DFC 800601FC 00C43023 */ subu $a2, $a2, $a0 -/* 060E00 80060200 8E420038 */ lw $v0, 0x38($s2) -/* 060E04 80060204 00063080 */ sll $a2, $a2, 2 -/* 060E08 80060208 00002825 */ move $a1, $zero -.L8006020C: -/* 060E0C 8006020C 8C4F0008 */ lw $t7, 8($v0) -/* 060E10 80060210 84430004 */ lh $v1, 4($v0) -/* 060E14 80060214 84440010 */ lh $a0, 0x10($v0) -/* 060E18 80060218 31F80200 */ andi $t8, $t7, 0x200 -/* 060E1C 8006021C 17000003 */ bnez $t8, .L8006022C -/* 060E20 80060220 24A5000C */ addiu $a1, $a1, 0xc -/* 060E24 80060224 0284C821 */ addu $t9, $s4, $a0 -/* 060E28 80060228 0323A023 */ subu $s4, $t9, $v1 -.L8006022C: -/* 060E2C 8006022C 00A6082A */ slt $at, $a1, $a2 -/* 060E30 80060230 1420FFF6 */ bnez $at, .L8006020C -/* 060E34 80060234 2442000C */ addiu $v0, $v0, 0xc -.L80060238: -/* 060E38 80060238 001420C0 */ sll $a0, $s4, 3 -/* 060E3C 8006023C 0C01C344 */ jal func_80070D10 -/* 060E40 80060240 02002825 */ move $a1, $s0 -/* 060E44 80060244 1040019A */ beqz $v0, .L800608B0 -/* 060E48 80060248 AE42000C */ sw $v0, 0xc($s2) -/* 060E4C 8006024C 00142180 */ sll $a0, $s4, 6 -/* 060E50 80060250 0C01C344 */ jal func_80070D10 -/* 060E54 80060254 02002825 */ move $a1, $s0 -/* 060E58 80060258 14400006 */ bnez $v0, .L80060274 -/* 060E5C 8006025C AE420010 */ sw $v0, 0x10($s2) -/* 060E60 80060260 8E44000C */ lw $a0, 0xc($s2) -/* 060E64 80060264 0C01C450 */ jal func_80071140 -/* 060E68 80060268 00000000 */ nop -/* 060E6C 8006026C 10000190 */ b .L800608B0 -/* 060E70 80060270 AE40000C */ sw $zero, 0xc($s2) -.L80060274: -/* 060E74 80060274 AFA000EC */ sw $zero, 0xec($sp) -/* 060E78 80060278 86440028 */ lh $a0, 0x28($s2) -/* 060E7C 8006027C 0000A025 */ move $s4, $zero -/* 060E80 80060280 188000B9 */ blez $a0, .L80060568 -/* 060E84 80060284 2417000A */ li $s7, 10 -/* 060E88 80060288 AFA0007C */ sw $zero, 0x7c($sp) -.L8006028C: -/* 060E8C 8006028C 8E4B0038 */ lw $t3, 0x38($s2) -/* 060E90 80060290 8FAC007C */ lw $t4, 0x7c($sp) -/* 060E94 80060294 001480C0 */ sll $s0, $s4, 3 -/* 060E98 80060298 016C1021 */ addu $v0, $t3, $t4 -/* 060E9C 8006029C 844D0010 */ lh $t5, 0x10($v0) -/* 060EA0 800602A0 84430004 */ lh $v1, 4($v0) -/* 060EA4 800602A4 84550002 */ lh $s5, 2($v0) -/* 060EA8 800602A8 AFAD00F4 */ sw $t5, 0xf4($sp) -/* 060EAC 800602AC 8C4E0008 */ lw $t6, 8($v0) -/* 060EB0 800602B0 2478FFFF */ addiu $t8, $v1, -1 -/* 060EB4 800602B4 31CF0200 */ andi $t7, $t6, 0x200 -/* 060EB8 800602B8 11E00002 */ beqz $t7, .L800602C4 -/* 060EBC 800602BC 00038900 */ sll $s1, $v1, 4 -/* 060EC0 800602C0 AFB800F4 */ sw $t8, 0xf4($sp) -.L800602C4: -/* 060EC4 800602C4 8FB900F4 */ lw $t9, 0xf4($sp) -/* 060EC8 800602C8 0060B025 */ move $s6, $v1 -/* 060ECC 800602CC 0079082A */ slt $at, $v1, $t9 -/* 060ED0 800602D0 1020009D */ beqz $at, .L80060548 -/* 060ED4 800602D4 8FAD00EC */ lw $t5, 0xec($sp) -.L800602D8: -/* 060ED8 800602D8 8E4B0008 */ lw $t3, 8($s2) -/* 060EDC 800602DC 8E430004 */ lw $v1, 4($s2) -/* 060EE0 800602E0 01712021 */ addu $a0, $t3, $s1 -/* 060EE4 800602E4 908C0001 */ lbu $t4, 1($a0) -/* 060EE8 800602E8 00000000 */ nop -/* 060EEC 800602EC 01956821 */ addu $t5, $t4, $s5 -/* 060EF0 800602F0 01B70019 */ multu $t5, $s7 -/* 060EF4 800602F4 00007012 */ mflo $t6 -/* 060EF8 800602F8 01C31021 */ addu $v0, $t6, $v1 -/* 060EFC 800602FC 844F0000 */ lh $t7, ($v0) -/* 060F00 80060300 00000000 */ nop -/* 060F04 80060304 448F2000 */ mtc1 $t7, $f4 -/* 060F08 80060308 00000000 */ nop -/* 060F0C 8006030C 468021A0 */ cvt.s.w $f6, $f4 -/* 060F10 80060310 E7A600CC */ swc1 $f6, 0xcc($sp) -/* 060F14 80060314 84580002 */ lh $t8, 2($v0) -/* 060F18 80060318 C7A200CC */ lwc1 $f2, 0xcc($sp) -/* 060F1C 8006031C 44984000 */ mtc1 $t8, $f8 -/* 060F20 80060320 00000000 */ nop -/* 060F24 80060324 468042A0 */ cvt.s.w $f10, $f8 -/* 060F28 80060328 E7AA00C8 */ swc1 $f10, 0xc8($sp) -/* 060F2C 8006032C 84590004 */ lh $t9, 4($v0) -/* 060F30 80060330 C7BA00C8 */ lwc1 $f26, 0xc8($sp) -/* 060F34 80060334 44992000 */ mtc1 $t9, $f4 -/* 060F38 80060338 00000000 */ nop -/* 060F3C 8006033C 468021A0 */ cvt.s.w $f6, $f4 -/* 060F40 80060340 E7A600C4 */ swc1 $f6, 0xc4($sp) -/* 060F44 80060344 908B0002 */ lbu $t3, 2($a0) -/* 060F48 80060348 90990003 */ lbu $t9, 3($a0) -/* 060F4C 8006034C 01756021 */ addu $t4, $t3, $s5 -/* 060F50 80060350 01970019 */ multu $t4, $s7 -/* 060F54 80060354 03355821 */ addu $t3, $t9, $s5 -/* 060F58 80060358 C7B800C4 */ lwc1 $f24, 0xc4($sp) -/* 060F5C 8006035C 00006812 */ mflo $t5 -/* 060F60 80060360 01A31021 */ addu $v0, $t5, $v1 -/* 060F64 80060364 844E0000 */ lh $t6, ($v0) -/* 060F68 80060368 01770019 */ multu $t3, $s7 -/* 060F6C 8006036C 844F0002 */ lh $t7, 2($v0) -/* 060F70 80060370 84580004 */ lh $t8, 4($v0) -/* 060F74 80060374 448E4000 */ mtc1 $t6, $f8 -/* 060F78 80060378 448F5000 */ mtc1 $t7, $f10 -/* 060F7C 8006037C 468043A0 */ cvt.s.w $f14, $f8 -/* 060F80 80060380 44982000 */ mtc1 $t8, $f4 -/* 060F84 80060384 46805420 */ cvt.s.w $f16, $f10 -/* 060F88 80060388 468024A0 */ cvt.s.w $f18, $f4 -/* 060F8C 8006038C 00006012 */ mflo $t4 -/* 060F90 80060390 01831021 */ addu $v0, $t4, $v1 -/* 060F94 80060394 844E0002 */ lh $t6, 2($v0) -/* 060F98 80060398 844D0000 */ lh $t5, ($v0) -/* 060F9C 8006039C 448E4000 */ mtc1 $t6, $f8 -/* 060FA0 800603A0 448D3000 */ mtc1 $t5, $f6 -/* 060FA4 800603A4 468042A0 */ cvt.s.w $f10, $f8 -/* 060FA8 800603A8 E7AA00B0 */ swc1 $f10, 0xb0($sp) -/* 060FAC 800603AC 844F0004 */ lh $t7, 4($v0) -/* 060FB0 800603B0 468035A0 */ cvt.s.w $f22, $f6 -/* 060FB4 800603B4 448F2000 */ mtc1 $t7, $f4 -/* 060FB8 800603B8 C7AC00B0 */ lwc1 $f12, 0xb0($sp) -/* 060FBC 800603BC 46802020 */ cvt.s.w $f0, $f4 -/* 060FC0 800603C0 46009181 */ sub.s $f6, $f18, $f0 -/* 060FC4 800603C4 461A3202 */ mul.s $f8, $f6, $f26 -/* 060FC8 800603C8 46180281 */ sub.s $f10, $f0, $f24 -/* 060FCC 800603CC 460A8102 */ mul.s $f4, $f16, $f10 -/* 060FD0 800603D0 4612C281 */ sub.s $f10, $f24, $f18 -/* 060FD4 800603D4 46044180 */ add.s $f6, $f8, $f4 -/* 060FD8 800603D8 460A6202 */ mul.s $f8, $f12, $f10 -/* 060FDC 800603DC 46167101 */ sub.s $f4, $f14, $f22 -/* 060FE0 800603E0 46182282 */ mul.s $f10, $f4, $f24 -/* 060FE4 800603E4 46083500 */ add.s $f20, $f6, $f8 -/* 060FE8 800603E8 E7B400A8 */ swc1 $f20, 0xa8($sp) -/* 060FEC 800603EC 4602B181 */ sub.s $f6, $f22, $f2 -/* 060FF0 800603F0 46069202 */ mul.s $f8, $f18, $f6 -/* 060FF4 800603F4 460E1181 */ sub.s $f6, $f2, $f14 -/* 060FF8 800603F8 46085100 */ add.s $f4, $f10, $f8 -/* 060FFC 800603FC 46060282 */ mul.s $f10, $f0, $f6 -/* 061000 80060400 460C8201 */ sub.s $f8, $f16, $f12 -/* 061004 80060404 46024182 */ mul.s $f6, $f8, $f2 -/* 061008 80060408 460A2700 */ add.s $f28, $f4, $f10 -/* 06100C 8006040C E7BC00A4 */ swc1 $f28, 0xa4($sp) -/* 061010 80060410 461A6101 */ sub.s $f4, $f12, $f26 -/* 061014 80060414 46047282 */ mul.s $f10, $f14, $f4 -/* 061018 80060418 4610D101 */ sub.s $f4, $f26, $f16 -/* 06101C 8006041C 460A3200 */ add.s $f8, $f6, $f10 -/* 061020 80060420 4604B182 */ mul.s $f6, $f22, $f4 -/* 061024 80060424 00000000 */ nop -/* 061028 80060428 4614A282 */ mul.s $f10, $f20, $f20 -/* 06102C 8006042C 46064780 */ add.s $f30, $f8, $f6 -/* 061030 80060430 E7BE00A0 */ swc1 $f30, 0xa0($sp) -/* 061034 80060434 461CE102 */ mul.s $f4, $f28, $f28 -/* 061038 80060438 00000000 */ nop -/* 06103C 8006043C 461EF182 */ mul.s $f6, $f30, $f30 -/* 061040 80060440 46045200 */ add.s $f8, $f10, $f4 -/* 061044 80060444 0C0326B4 */ jal sqrtf -/* 061048 80060448 46064300 */ add.s $f12, $f8, $f6 -/* 06104C 8006044C 44805800 */ mtc1 $zero, $f11 -/* 061050 80060450 44805000 */ mtc1 $zero, $f10 -/* 061054 80060454 46000121 */ cvt.d.s $f4, $f0 -/* 061058 80060458 4624503C */ c.lt.d $f10, $f4 -/* 06105C 8006045C C7A200CC */ lwc1 $f2, 0xcc($sp) -/* 061060 80060460 45000009 */ bc1f .L80060488 -/* 061064 80060464 00141100 */ sll $v0, $s4, 4 -/* 061068 80060468 00000000 */ nop -/* 06106C 8006046C 4600A403 */ div.s $f16, $f20, $f0 -/* 061070 80060470 00000000 */ nop -/* 061074 80060474 4600E383 */ div.s $f14, $f28, $f0 -/* 061078 80060478 E7B000A8 */ swc1 $f16, 0xa8($sp) -/* 06107C 8006047C 4600F303 */ div.s $f12, $f30, $f0 -/* 061080 80060480 E7AE00A4 */ swc1 $f14, 0xa4($sp) -/* 061084 80060484 E7AC00A0 */ swc1 $f12, 0xa0($sp) -.L80060488: -/* 061088 80060488 8E590010 */ lw $t9, 0x10($s2) -/* 06108C 8006048C C7B000A8 */ lwc1 $f16, 0xa8($sp) -/* 061090 80060490 C7AC00A0 */ lwc1 $f12, 0xa0($sp) -/* 061094 80060494 C7AE00A4 */ lwc1 $f14, 0xa4($sp) -/* 061098 80060498 03225821 */ addu $t3, $t9, $v0 -/* 06109C 8006049C E5700000 */ swc1 $f16, ($t3) -/* 0610A0 800604A0 8E4C0010 */ lw $t4, 0x10($s2) -/* 0610A4 800604A4 46101202 */ mul.s $f8, $f2, $f16 -/* 0610A8 800604A8 01826821 */ addu $t5, $t4, $v0 -/* 0610AC 800604AC E5AE0004 */ swc1 $f14, 4($t5) -/* 0610B0 800604B0 8E4E0010 */ lw $t6, 0x10($s2) -/* 0610B4 800604B4 26D60001 */ addiu $s6, $s6, 1 -/* 0610B8 800604B8 01C27821 */ addu $t7, $t6, $v0 -/* 0610BC 800604BC E5EC0008 */ swc1 $f12, 8($t7) -/* 0610C0 800604C0 C7A600C8 */ lwc1 $f6, 0xc8($sp) -/* 0610C4 800604C4 8E580010 */ lw $t8, 0x10($s2) -/* 0610C8 800604C8 460E3282 */ mul.s $f10, $f6, $f14 -/* 0610CC 800604CC C7A600C4 */ lwc1 $f6, 0xc4($sp) -/* 0610D0 800604D0 0302C821 */ addu $t9, $t8, $v0 -/* 0610D4 800604D4 26310010 */ addiu $s1, $s1, 0x10 -/* 0610D8 800604D8 460A4100 */ add.s $f4, $f8, $f10 -/* 0610DC 800604DC 460C3202 */ mul.s $f8, $f6, $f12 -/* 0610E0 800604E0 46082280 */ add.s $f10, $f4, $f8 -/* 0610E4 800604E4 46005187 */ neg.s $f6, $f10 -/* 0610E8 800604E8 E726000C */ swc1 $f6, 0xc($t9) -/* 0610EC 800604EC 8E4B000C */ lw $t3, 0xc($s2) -/* 0610F0 800604F0 00000000 */ nop -/* 0610F4 800604F4 01706021 */ addu $t4, $t3, $s0 -/* 0610F8 800604F8 A5940000 */ sh $s4, ($t4) -/* 0610FC 800604FC 8E4D000C */ lw $t5, 0xc($s2) -/* 061100 80060500 00000000 */ nop -/* 061104 80060504 01B07021 */ addu $t6, $t5, $s0 -/* 061108 80060508 A5D40002 */ sh $s4, 2($t6) -/* 06110C 8006050C 8E4F000C */ lw $t7, 0xc($s2) -/* 061110 80060510 00000000 */ nop -/* 061114 80060514 01F0C021 */ addu $t8, $t7, $s0 -/* 061118 80060518 A7140004 */ sh $s4, 4($t8) -/* 06111C 8006051C 8E59000C */ lw $t9, 0xc($s2) -/* 061120 80060520 00000000 */ nop -/* 061124 80060524 03305821 */ addu $t3, $t9, $s0 -/* 061128 80060528 A5740006 */ sh $s4, 6($t3) -/* 06112C 8006052C 8FAC00F4 */ lw $t4, 0xf4($sp) -/* 061130 80060530 26940001 */ addiu $s4, $s4, 1 -/* 061134 80060534 16CCFF68 */ bne $s6, $t4, .L800602D8 -/* 061138 80060538 26100008 */ addiu $s0, $s0, 8 -/* 06113C 8006053C 86440028 */ lh $a0, 0x28($s2) -/* 061140 80060540 00000000 */ nop -/* 061144 80060544 8FAD00EC */ lw $t5, 0xec($sp) -.L80060548: -/* 061148 80060548 8FAF007C */ lw $t7, 0x7c($sp) -/* 06114C 8006054C 25AE0001 */ addiu $t6, $t5, 1 -/* 061150 80060550 01C4082A */ slt $at, $t6, $a0 -/* 061154 80060554 25F8000C */ addiu $t8, $t7, 0xc -/* 061158 80060558 AFB8007C */ sw $t8, 0x7c($sp) -/* 06115C 8006055C 1420FF4B */ bnez $at, .L8006028C -/* 061160 80060560 AFAE00EC */ sw $t6, 0xec($sp) -/* 061164 80060564 AFA000EC */ sw $zero, 0xec($sp) -.L80060568: -/* 061168 80060568 2417000A */ li $s7, 10 -/* 06116C 8006056C A6540032 */ sh $s4, 0x32($s2) -/* 061170 80060570 0C018244 */ jal func_80060910 -/* 061174 80060574 02402025 */ move $a0, $s2 -/* 061178 80060578 86440028 */ lh $a0, 0x28($s2) -/* 06117C 8006057C 00009825 */ move $s3, $zero -/* 061180 80060580 188000CB */ blez $a0, .L800608B0 -/* 061184 80060584 241E0003 */ li $fp, 3 -/* 061188 80060588 AFA0007C */ sw $zero, 0x7c($sp) -.L8006058C: -/* 06118C 8006058C 8E590038 */ lw $t9, 0x38($s2) -/* 061190 80060590 8FAB007C */ lw $t3, 0x7c($sp) -/* 061194 80060594 00000000 */ nop -/* 061198 80060598 032B1021 */ addu $v0, $t9, $t3 -/* 06119C 8006059C 8C4C0008 */ lw $t4, 8($v0) -/* 0611A0 800605A0 84430004 */ lh $v1, 4($v0) -/* 0611A4 800605A4 84550002 */ lh $s5, 2($v0) -/* 0611A8 800605A8 84470010 */ lh $a3, 0x10($v0) -/* 0611AC 800605AC 318D0200 */ andi $t5, $t4, 0x200 -/* 0611B0 800605B0 11A00002 */ beqz $t5, .L800605BC -/* 0611B4 800605B4 001310C0 */ sll $v0, $s3, 3 -/* 0611B8 800605B8 2467FFFF */ addiu $a3, $v1, -1 -.L800605BC: -/* 0611BC 800605BC 0067082A */ slt $at, $v1, $a3 -/* 0611C0 800605C0 102000B3 */ beqz $at, .L80060890 -/* 0611C4 800605C4 0060B025 */ move $s6, $v1 -/* 0611C8 800605C8 AFA20074 */ sw $v0, 0x74($sp) -/* 0611CC 800605CC AFA700F4 */ sw $a3, 0xf4($sp) -.L800605D0: -/* 0611D0 800605D0 8FA20074 */ lw $v0, 0x74($sp) -/* 0611D4 800605D4 8E4F000C */ lw $t7, 0xc($s2) -/* 0611D8 800605D8 8E590010 */ lw $t9, 0x10($s2) -/* 0611DC 800605DC 01E2C021 */ addu $t8, $t7, $v0 -/* 0611E0 800605E0 970E0000 */ lhu $t6, ($t8) -/* 0611E4 800605E4 00002825 */ move $a1, $zero -/* 0611E8 800605E8 000E5900 */ sll $t3, $t6, 4 -/* 0611EC 800605EC 032B1821 */ addu $v1, $t9, $t3 -/* 0611F0 800605F0 C4640000 */ lwc1 $f4, ($v1) -/* 0611F4 800605F4 00008825 */ move $s1, $zero -/* 0611F8 800605F8 E7A400A8 */ swc1 $f4, 0xa8($sp) -/* 0611FC 800605FC C4680004 */ lwc1 $f8, 4($v1) -/* 061200 80060600 00000000 */ nop -/* 061204 80060604 E7A800A4 */ swc1 $f8, 0xa4($sp) -/* 061208 80060608 C46A0008 */ lwc1 $f10, 8($v1) -/* 06120C 8006060C 00000000 */ nop -/* 061210 80060610 E7AA00A0 */ swc1 $f10, 0xa0($sp) -.L80060614: -/* 061214 80060614 24B00001 */ addiu $s0, $a1, 1 -/* 061218 80060618 2A010003 */ slti $at, $s0, 3 -/* 06121C 8006061C 8E47000C */ lw $a3, 0xc($s2) -/* 061220 80060620 8E480010 */ lw $t0, 0x10($s2) -/* 061224 80060624 14200002 */ bnez $at, .L80060630 -/* 061228 80060628 02002025 */ move $a0, $s0 -/* 06122C 8006062C 00002025 */ move $a0, $zero -.L80060630: -/* 061230 80060630 8E4C0008 */ lw $t4, 8($s2) -/* 061234 80060634 00166900 */ sll $t5, $s6, 4 -/* 061238 80060638 018D1021 */ addu $v0, $t4, $t5 -/* 06123C 8006063C 00457821 */ addu $t7, $v0, $a1 -/* 061240 80060640 91F80001 */ lbu $t8, 1($t7) -/* 061244 80060644 001358C0 */ sll $t3, $s3, 3 -/* 061248 80060648 03154821 */ addu $t1, $t8, $s5 -/* 06124C 8006064C 01370019 */ multu $t1, $s7 -/* 061250 80060650 00EB6021 */ addu $t4, $a3, $t3 -/* 061254 80060654 01916821 */ addu $t5, $t4, $s1 -/* 061258 80060658 95AF0002 */ lhu $t7, 2($t5) -/* 06125C 8006065C 00447021 */ addu $t6, $v0, $a0 -/* 061260 80060660 000FC100 */ sll $t8, $t7, 4 -/* 061264 80060664 01181821 */ addu $v1, $t0, $t8 -/* 061268 80060668 91D90001 */ lbu $t9, 1($t6) -/* 06126C 8006066C C4660000 */ lwc1 $f6, ($v1) -/* 061270 80060670 C7A400A8 */ lwc1 $f4, 0xa8($sp) -/* 061274 80060674 C4680004 */ lwc1 $f8, 4($v1) -/* 061278 80060678 46043500 */ add.s $f20, $f6, $f4 -/* 06127C 8006067C 00007012 */ mflo $t6 -/* 061280 80060680 C4660008 */ lwc1 $f6, 8($v1) -/* 061284 80060684 03355021 */ addu $t2, $t9, $s5 -/* 061288 80060688 01570019 */ multu $t2, $s7 -/* 06128C 8006068C 8E430004 */ lw $v1, 4($s2) -/* 061290 80060690 C7AA00A4 */ lwc1 $f10, 0xa4($sp) -/* 061294 80060694 006E1021 */ addu $v0, $v1, $t6 -/* 061298 80060698 84590000 */ lh $t9, ($v0) -/* 06129C 8006069C 460A4600 */ add.s $f24, $f8, $f10 -/* 0612A0 800606A0 44994000 */ mtc1 $t9, $f8 -/* 0612A4 800606A4 C7A400A0 */ lwc1 $f4, 0xa0($sp) -/* 0612A8 800606A8 468042A0 */ cvt.s.w $f10, $f8 -/* 0612AC 800606AC 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 0612B0 800606B0 4481E000 */ mtc1 $at, $f28 -/* 0612B4 800606B4 E7AA00CC */ swc1 $f10, 0xcc($sp) -/* 0612B8 800606B8 844C0004 */ lh $t4, 4($v0) -/* 0612BC 800606BC 844B0002 */ lh $t3, 2($v0) -/* 0612C0 800606C0 46043680 */ add.s $f26, $f6, $f4 -/* 0612C4 800606C4 00006812 */ mflo $t5 -/* 0612C8 800606C8 448C2000 */ mtc1 $t4, $f4 -/* 0612CC 800606CC 006D1021 */ addu $v0, $v1, $t5 -/* 0612D0 800606D0 84580002 */ lh $t8, 2($v0) -/* 0612D4 800606D4 46802320 */ cvt.s.w $f12, $f4 -/* 0612D8 800606D8 448B3000 */ mtc1 $t3, $f6 -/* 0612DC 800606DC 44985000 */ mtc1 $t8, $f10 -/* 0612E0 800606E0 461CA102 */ mul.s $f4, $f20, $f28 -/* 0612E4 800606E4 844E0004 */ lh $t6, 4($v0) -/* 0612E8 800606E8 844F0000 */ lh $t7, ($v0) -/* 0612EC 800606EC E7AC00C4 */ swc1 $f12, 0xc4($sp) -/* 0612F0 800606F0 468037A0 */ cvt.s.w $f30, $f6 -/* 0612F4 800606F4 448E3000 */ mtc1 $t6, $f6 -/* 0612F8 800606F8 448F4000 */ mtc1 $t7, $f8 -/* 0612FC 800606FC 46805420 */ cvt.s.w $f16, $f10 -/* 061300 80060700 E7BE00C8 */ swc1 $f30, 0xc8($sp) -/* 061304 80060704 461CC282 */ mul.s $f10, $f24, $f28 -/* 061308 80060708 468034A0 */ cvt.s.w $f18, $f6 -/* 06130C 8006070C 461CD182 */ mul.s $f6, $f26, $f28 -/* 061310 80060710 461E5080 */ add.s $f2, $f10, $f30 -/* 061314 80060714 E7A200B0 */ swc1 $f2, 0xb0($sp) -/* 061318 80060718 468043A0 */ cvt.s.w $f14, $f8 -/* 06131C 8006071C C7A800CC */ lwc1 $f8, 0xcc($sp) -/* 061320 80060720 460C3000 */ add.s $f0, $f6, $f12 -/* 061324 80060724 46082580 */ add.s $f22, $f4, $f8 -/* 061328 80060728 E7A000AC */ swc1 $f0, 0xac($sp) -/* 06132C 8006072C 46009101 */ sub.s $f4, $f18, $f0 -/* 061330 80060730 461E2282 */ mul.s $f10, $f4, $f30 -/* 061334 80060734 460C0181 */ sub.s $f6, $f0, $f12 -/* 061338 80060738 C7A000C8 */ lwc1 $f0, 0xc8($sp) -/* 06133C 8006073C 46068102 */ mul.s $f4, $f16, $f6 -/* 061340 80060740 46045180 */ add.s $f6, $f10, $f4 -/* 061344 80060744 46126281 */ sub.s $f10, $f12, $f18 -/* 061348 80060748 460A1102 */ mul.s $f4, $f2, $f10 -/* 06134C 8006074C 46167281 */ sub.s $f10, $f14, $f22 -/* 061350 80060750 46043500 */ add.s $f20, $f6, $f4 -/* 061354 80060754 C7A600C4 */ lwc1 $f6, 0xc4($sp) -/* 061358 80060758 46004086 */ mov.s $f2, $f8 -/* 06135C 8006075C 46065102 */ mul.s $f4, $f10, $f6 -/* 061360 80060760 4608B201 */ sub.s $f8, $f22, $f8 -/* 061364 80060764 46089282 */ mul.s $f10, $f18, $f8 -/* 061368 80060768 C7A800AC */ lwc1 $f8, 0xac($sp) -/* 06136C 8006076C 460A2180 */ add.s $f6, $f4, $f10 -/* 061370 80060770 460E1101 */ sub.s $f4, $f2, $f14 -/* 061374 80060774 46044282 */ mul.s $f10, $f8, $f4 -/* 061378 80060778 C7A800B0 */ lwc1 $f8, 0xb0($sp) -/* 06137C 8006077C 00000000 */ nop -/* 061380 80060780 46088101 */ sub.s $f4, $f16, $f8 -/* 061384 80060784 460A3700 */ add.s $f28, $f6, $f10 -/* 061388 80060788 46022182 */ mul.s $f6, $f4, $f2 -/* 06138C 8006078C 46004281 */ sub.s $f10, $f8, $f0 -/* 061390 80060790 460A7102 */ mul.s $f4, $f14, $f10 -/* 061394 80060794 46100281 */ sub.s $f10, $f0, $f16 -/* 061398 80060798 46043200 */ add.s $f8, $f6, $f4 -/* 06139C 8006079C 460AB182 */ mul.s $f6, $f22, $f10 -/* 0613A0 800607A0 4600E606 */ mov.s $f24, $f28 -/* 0613A4 800607A4 4614A102 */ mul.s $f4, $f20, $f20 -/* 0613A8 800607A8 46064780 */ add.s $f30, $f8, $f6 -/* 0613AC 800607AC 461CE282 */ mul.s $f10, $f28, $f28 -/* 0613B0 800607B0 4600F686 */ mov.s $f26, $f30 -/* 0613B4 800607B4 461EF182 */ mul.s $f6, $f30, $f30 -/* 0613B8 800607B8 460A2200 */ add.s $f8, $f4, $f10 -/* 0613BC 800607BC 0C0326B4 */ jal sqrtf -/* 0613C0 800607C0 46064300 */ add.s $f12, $f8, $f6 -/* 0613C4 800607C4 44802800 */ mtc1 $zero, $f5 -/* 0613C8 800607C8 44802000 */ mtc1 $zero, $f4 -/* 0613CC 800607CC 460002A1 */ cvt.d.s $f10, $f0 -/* 0613D0 800607D0 462A203C */ c.lt.d $f4, $f10 -/* 0613D4 800607D4 C7A200CC */ lwc1 $f2, 0xcc($sp) -/* 0613D8 800607D8 45000006 */ bc1f .L800607F4 -/* 0613DC 800607DC 00000000 */ nop -/* 0613E0 800607E0 4600A503 */ div.s $f20, $f20, $f0 -/* 0613E4 800607E4 00000000 */ nop -/* 0613E8 800607E8 4600E603 */ div.s $f24, $f28, $f0 -/* 0613EC 800607EC 00000000 */ nop -/* 0613F0 800607F0 4600F683 */ div.s $f26, $f30, $f0 -.L800607F4: -/* 0613F4 800607F4 8E59000C */ lw $t9, 0xc($s2) -/* 0613F8 800607F8 001358C0 */ sll $t3, $s3, 3 -/* 0613FC 800607FC 032B6021 */ addu $t4, $t9, $t3 -/* 061400 80060800 01916821 */ addu $t5, $t4, $s1 -/* 061404 80060804 A5B40002 */ sh $s4, 2($t5) -/* 061408 80060808 8E580010 */ lw $t8, 0x10($s2) -/* 06140C 8006080C 00141100 */ sll $v0, $s4, 4 -/* 061410 80060810 03027021 */ addu $t6, $t8, $v0 -/* 061414 80060814 E5D40000 */ swc1 $f20, ($t6) -/* 061418 80060818 8E590010 */ lw $t9, 0x10($s2) -/* 06141C 8006081C 46141202 */ mul.s $f8, $f2, $f20 -/* 061420 80060820 03225821 */ addu $t3, $t9, $v0 -/* 061424 80060824 E5780004 */ swc1 $f24, 4($t3) -/* 061428 80060828 8E4C0010 */ lw $t4, 0x10($s2) -/* 06142C 8006082C 26310002 */ addiu $s1, $s1, 2 -/* 061430 80060830 01826821 */ addu $t5, $t4, $v0 -/* 061434 80060834 E5BA0008 */ swc1 $f26, 8($t5) -/* 061438 80060838 C7A600C8 */ lwc1 $f6, 0xc8($sp) -/* 06143C 8006083C 8E4F0010 */ lw $t7, 0x10($s2) -/* 061440 80060840 46183102 */ mul.s $f4, $f6, $f24 -/* 061444 80060844 C7A600C4 */ lwc1 $f6, 0xc4($sp) -/* 061448 80060848 01E2C021 */ addu $t8, $t7, $v0 -/* 06144C 8006084C 02002825 */ move $a1, $s0 -/* 061450 80060850 46044280 */ add.s $f10, $f8, $f4 -/* 061454 80060854 26940001 */ addiu $s4, $s4, 1 -/* 061458 80060858 461A3202 */ mul.s $f8, $f6, $f26 -/* 06145C 8006085C 46085100 */ add.s $f4, $f10, $f8 -/* 061460 80060860 46002187 */ neg.s $f6, $f4 -/* 061464 80060864 161EFF6B */ bne $s0, $fp, .L80060614 -/* 061468 80060868 E706000C */ swc1 $f6, 0xc($t8) -/* 06146C 8006086C 8FAE0074 */ lw $t6, 0x74($sp) -/* 061470 80060870 8FAB00F4 */ lw $t3, 0xf4($sp) -/* 061474 80060874 26D60001 */ addiu $s6, $s6, 1 -/* 061478 80060878 25D90008 */ addiu $t9, $t6, 8 -/* 06147C 8006087C AFB90074 */ sw $t9, 0x74($sp) -/* 061480 80060880 16CBFF53 */ bne $s6, $t3, .L800605D0 -/* 061484 80060884 26730001 */ addiu $s3, $s3, 1 -/* 061488 80060888 86440028 */ lh $a0, 0x28($s2) -/* 06148C 8006088C 00000000 */ nop -.L80060890: -/* 061490 80060890 8FAC00EC */ lw $t4, 0xec($sp) -/* 061494 80060894 8FAF007C */ lw $t7, 0x7c($sp) -/* 061498 80060898 258D0001 */ addiu $t5, $t4, 1 -/* 06149C 8006089C 01A4082A */ slt $at, $t5, $a0 -/* 0614A0 800608A0 25F8000C */ addiu $t8, $t7, 0xc -/* 0614A4 800608A4 AFB8007C */ sw $t8, 0x7c($sp) -/* 0614A8 800608A8 1420FF38 */ bnez $at, .L8006058C -/* 0614AC 800608AC AFAD00EC */ sw $t5, 0xec($sp) -.L800608B0: -/* 0614B0 800608B0 8FBF006C */ lw $ra, 0x6c($sp) -/* 0614B4 800608B4 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 0614B8 800608B8 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 0614BC 800608BC C7B70020 */ lwc1 $f23, 0x20($sp) -/* 0614C0 800608C0 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 0614C4 800608C4 C7B90028 */ lwc1 $f25, 0x28($sp) -/* 0614C8 800608C8 C7B8002C */ lwc1 $f24, 0x2c($sp) -/* 0614CC 800608CC C7BB0030 */ lwc1 $f27, 0x30($sp) -/* 0614D0 800608D0 C7BA0034 */ lwc1 $f26, 0x34($sp) -/* 0614D4 800608D4 C7BD0038 */ lwc1 $f29, 0x38($sp) -/* 0614D8 800608D8 C7BC003C */ lwc1 $f28, 0x3c($sp) -/* 0614DC 800608DC C7BF0040 */ lwc1 $f31, 0x40($sp) -/* 0614E0 800608E0 C7BE0044 */ lwc1 $f30, 0x44($sp) -/* 0614E4 800608E4 8FB00048 */ lw $s0, 0x48($sp) -/* 0614E8 800608E8 8FB1004C */ lw $s1, 0x4c($sp) -/* 0614EC 800608EC 8FB20050 */ lw $s2, 0x50($sp) -/* 0614F0 800608F0 8FB30054 */ lw $s3, 0x54($sp) -/* 0614F4 800608F4 8FB40058 */ lw $s4, 0x58($sp) -/* 0614F8 800608F8 8FB5005C */ lw $s5, 0x5c($sp) -/* 0614FC 800608FC 8FB60060 */ lw $s6, 0x60($sp) -/* 061500 80060900 8FB70064 */ lw $s7, 0x64($sp) -/* 061504 80060904 8FBE0068 */ lw $fp, 0x68($sp) -/* 061508 80060908 03E00008 */ jr $ra -/* 06150C 8006090C 27BD0100 */ addiu $sp, $sp, 0x100 - -glabel func_80060910 -/* 061510 80060910 27BDFF70 */ addiu $sp, $sp, -0x90 -/* 061514 80060914 AFBF0044 */ sw $ra, 0x44($sp) -/* 061518 80060918 AFBE0040 */ sw $fp, 0x40($sp) -/* 06151C 8006091C AFB7003C */ sw $s7, 0x3c($sp) -/* 061520 80060920 AFB60038 */ sw $s6, 0x38($sp) -/* 061524 80060924 AFB50034 */ sw $s5, 0x34($sp) -/* 061528 80060928 AFB40030 */ sw $s4, 0x30($sp) -/* 06152C 8006092C AFB3002C */ sw $s3, 0x2c($sp) -/* 061530 80060930 AFB20028 */ sw $s2, 0x28($sp) -/* 061534 80060934 AFB10024 */ sw $s1, 0x24($sp) -/* 061538 80060938 AFB00020 */ sw $s0, 0x20($sp) -/* 06153C 8006093C AFA00088 */ sw $zero, 0x88($sp) -/* 061540 80060940 84850028 */ lh $a1, 0x28($a0) -/* 061544 80060944 00809025 */ move $s2, $a0 -/* 061548 80060948 18A00053 */ blez $a1, .L80060A98 -/* 06154C 8006094C 0000A025 */ move $s4, $zero -/* 061550 80060950 AFA00054 */ sw $zero, 0x54($sp) -/* 061554 80060954 241EFFFF */ li $fp, -1 -/* 061558 80060958 27B70060 */ addiu $s7, $sp, 0x60 -/* 06155C 8006095C 27B6005C */ addiu $s6, $sp, 0x5c -.L80060960: -/* 061560 80060960 8E4E0038 */ lw $t6, 0x38($s2) -/* 061564 80060964 8FAF0054 */ lw $t7, 0x54($sp) -/* 061568 80060968 001460C0 */ sll $t4, $s4, 3 -/* 06156C 8006096C 01CF1021 */ addu $v0, $t6, $t7 -/* 061570 80060970 84580010 */ lh $t8, 0x10($v0) -/* 061574 80060974 84430004 */ lh $v1, 4($v0) -/* 061578 80060978 84550002 */ lh $s5, 2($v0) -/* 06157C 8006097C AFB80078 */ sw $t8, 0x78($sp) -/* 061580 80060980 8C590008 */ lw $t9, 8($v0) -/* 061584 80060984 246AFFFF */ addiu $t2, $v1, -1 -/* 061588 80060988 33290200 */ andi $t1, $t9, 0x200 -/* 06158C 8006098C 11200003 */ beqz $t1, .L8006099C -/* 061590 80060990 8FAB0078 */ lw $t3, 0x78($sp) -/* 061594 80060994 AFAA0078 */ sw $t2, 0x78($sp) -/* 061598 80060998 8FAB0078 */ lw $t3, 0x78($sp) -.L8006099C: -/* 06159C 8006099C 00609825 */ move $s3, $v1 -/* 0615A0 800609A0 006B082A */ slt $at, $v1, $t3 -/* 0615A4 800609A4 10200035 */ beqz $at, .L80060A7C -/* 0615A8 800609A8 8FAF0088 */ lw $t7, 0x88($sp) -/* 0615AC 800609AC AFAC0058 */ sw $t4, 0x58($sp) -.L800609B0: -/* 0615B0 800609B0 8E4D000C */ lw $t5, 0xc($s2) -/* 0615B4 800609B4 8FAE0058 */ lw $t6, 0x58($sp) -/* 0615B8 800609B8 00001825 */ move $v1, $zero -/* 0615BC 800609BC 01AE7821 */ addu $t7, $t5, $t6 -/* 0615C0 800609C0 A5F40000 */ sh $s4, ($t7) -/* 0615C4 800609C4 00008025 */ move $s0, $zero -.L800609C8: -/* 0615C8 800609C8 24710001 */ addiu $s1, $v1, 1 -/* 0615CC 800609CC 2A210003 */ slti $at, $s1, 3 -/* 0615D0 800609D0 14200002 */ bnez $at, .L800609DC -/* 0615D4 800609D4 02204025 */ move $t0, $s1 -/* 0615D8 800609D8 00004025 */ move $t0, $zero -.L800609DC: -/* 0615DC 800609DC 8E580008 */ lw $t8, 8($s2) -/* 0615E0 800609E0 0013C900 */ sll $t9, $s3, 4 -/* 0615E4 800609E4 03191021 */ addu $v0, $t8, $t9 -/* 0615E8 800609E8 00434821 */ addu $t1, $v0, $v1 -/* 0615EC 800609EC 00485821 */ addu $t3, $v0, $t0 -/* 0615F0 800609F0 912A0001 */ lbu $t2, 1($t1) -/* 0615F4 800609F4 916C0001 */ lbu $t4, 1($t3) -/* 0615F8 800609F8 AFB70014 */ sw $s7, 0x14($sp) -/* 0615FC 800609FC AFB60010 */ sw $s6, 0x10($sp) -/* 061600 80060A00 02402025 */ move $a0, $s2 -/* 061604 80060A04 02602825 */ move $a1, $s3 -/* 061608 80060A08 01553021 */ addu $a2, $t2, $s5 -/* 06160C 80060A0C 0C0182B2 */ jal func_80060AC8 -/* 061610 80060A10 01953821 */ addu $a3, $t4, $s5 -/* 061614 80060A14 105E0007 */ beq $v0, $fp, .L80060A34 -/* 061618 80060A18 02201825 */ move $v1, $s1 -/* 06161C 80060A1C 8E4D000C */ lw $t5, 0xc($s2) -/* 061620 80060A20 001470C0 */ sll $t6, $s4, 3 -/* 061624 80060A24 01AE7821 */ addu $t7, $t5, $t6 -/* 061628 80060A28 01F0C021 */ addu $t8, $t7, $s0 -/* 06162C 80060A2C 10000006 */ b .L80060A48 -/* 061630 80060A30 A7020002 */ sh $v0, 2($t8) -.L80060A34: -/* 061634 80060A34 8E59000C */ lw $t9, 0xc($s2) -/* 061638 80060A38 001448C0 */ sll $t1, $s4, 3 -/* 06163C 80060A3C 03295021 */ addu $t2, $t9, $t1 -/* 061640 80060A40 01505821 */ addu $t3, $t2, $s0 -/* 061644 80060A44 A5740002 */ sh $s4, 2($t3) -.L80060A48: -/* 061648 80060A48 24010003 */ li $at, 3 -/* 06164C 80060A4C 1621FFDE */ bne $s1, $at, .L800609C8 -/* 061650 80060A50 26100002 */ addiu $s0, $s0, 2 -/* 061654 80060A54 8FAC0058 */ lw $t4, 0x58($sp) -/* 061658 80060A58 8FAE0078 */ lw $t6, 0x78($sp) -/* 06165C 80060A5C 26730001 */ addiu $s3, $s3, 1 -/* 061660 80060A60 258D0008 */ addiu $t5, $t4, 8 -/* 061664 80060A64 AFAD0058 */ sw $t5, 0x58($sp) -/* 061668 80060A68 166EFFD1 */ bne $s3, $t6, .L800609B0 -/* 06166C 80060A6C 26940001 */ addiu $s4, $s4, 1 -/* 061670 80060A70 86450028 */ lh $a1, 0x28($s2) -/* 061674 80060A74 00000000 */ nop -/* 061678 80060A78 8FAF0088 */ lw $t7, 0x88($sp) -.L80060A7C: -/* 06167C 80060A7C 8FB90054 */ lw $t9, 0x54($sp) -/* 061680 80060A80 25F80001 */ addiu $t8, $t7, 1 -/* 061684 80060A84 0305082A */ slt $at, $t8, $a1 -/* 061688 80060A88 2729000C */ addiu $t1, $t9, 0xc -/* 06168C 80060A8C AFA90054 */ sw $t1, 0x54($sp) -/* 061690 80060A90 1420FFB3 */ bnez $at, .L80060960 -/* 061694 80060A94 AFB80088 */ sw $t8, 0x88($sp) -.L80060A98: -/* 061698 80060A98 8FBF0044 */ lw $ra, 0x44($sp) -/* 06169C 80060A9C 8FB00020 */ lw $s0, 0x20($sp) -/* 0616A0 80060AA0 8FB10024 */ lw $s1, 0x24($sp) -/* 0616A4 80060AA4 8FB20028 */ lw $s2, 0x28($sp) -/* 0616A8 80060AA8 8FB3002C */ lw $s3, 0x2c($sp) -/* 0616AC 80060AAC 8FB40030 */ lw $s4, 0x30($sp) -/* 0616B0 80060AB0 8FB50034 */ lw $s5, 0x34($sp) -/* 0616B4 80060AB4 8FB60038 */ lw $s6, 0x38($sp) -/* 0616B8 80060AB8 8FB7003C */ lw $s7, 0x3c($sp) -/* 0616BC 80060ABC 8FBE0040 */ lw $fp, 0x40($sp) -/* 0616C0 80060AC0 03E00008 */ jr $ra -/* 0616C4 80060AC4 27BD0090 */ addiu $sp, $sp, 0x90 - -glabel func_80060AC8 -/* 0616C8 80060AC8 27BDFF88 */ addiu $sp, $sp, -0x78 -/* 0616CC 80060ACC AFBF0044 */ sw $ra, 0x44($sp) -/* 0616D0 80060AD0 AFBE0040 */ sw $fp, 0x40($sp) -/* 0616D4 80060AD4 AFB7003C */ sw $s7, 0x3c($sp) -/* 0616D8 80060AD8 AFB60038 */ sw $s6, 0x38($sp) -/* 0616DC 80060ADC AFB50034 */ sw $s5, 0x34($sp) -/* 0616E0 80060AE0 AFB40030 */ sw $s4, 0x30($sp) -/* 0616E4 80060AE4 AFB3002C */ sw $s3, 0x2c($sp) -/* 0616E8 80060AE8 AFB20028 */ sw $s2, 0x28($sp) -/* 0616EC 80060AEC AFB10024 */ sw $s1, 0x24($sp) -/* 0616F0 80060AF0 AFB00020 */ sw $s0, 0x20($sp) -/* 0616F4 80060AF4 AFA5007C */ sw $a1, 0x7c($sp) -/* 0616F8 80060AF8 AFA00074 */ sw $zero, 0x74($sp) -/* 0616FC 80060AFC 84880028 */ lh $t0, 0x28($a0) -/* 061700 80060B00 00809825 */ move $s3, $a0 -/* 061704 80060B04 00C0A825 */ move $s5, $a2 -/* 061708 80060B08 00E0B025 */ move $s6, $a3 -/* 06170C 80060B0C 19000045 */ blez $t0, .L80060C24 -/* 061710 80060B10 0000F025 */ move $fp, $zero -/* 061714 80060B14 AFA00048 */ sw $zero, 0x48($sp) -/* 061718 80060B18 24170003 */ li $s7, 3 -.L80060B1C: -/* 06171C 80060B1C 8E6E0038 */ lw $t6, 0x38($s3) -/* 061720 80060B20 8FAF0048 */ lw $t7, 0x48($sp) -/* 061724 80060B24 00000000 */ nop -/* 061728 80060B28 01CF1021 */ addu $v0, $t6, $t7 -/* 06172C 80060B2C 84580010 */ lh $t8, 0x10($v0) -/* 061730 80060B30 84430004 */ lh $v1, 4($v0) -/* 061734 80060B34 84520002 */ lh $s2, 2($v0) -/* 061738 80060B38 AFB80070 */ sw $t8, 0x70($sp) -/* 06173C 80060B3C 8C590008 */ lw $t9, 8($v0) -/* 061740 80060B40 246AFFFF */ addiu $t2, $v1, -1 -/* 061744 80060B44 33290200 */ andi $t1, $t9, 0x200 -/* 061748 80060B48 11200003 */ beqz $t1, .L80060B58 -/* 06174C 80060B4C 8FAB0070 */ lw $t3, 0x70($sp) -/* 061750 80060B50 AFAA0070 */ sw $t2, 0x70($sp) -/* 061754 80060B54 8FAB0070 */ lw $t3, 0x70($sp) -.L80060B58: -/* 061758 80060B58 0060A025 */ move $s4, $v1 -/* 06175C 80060B5C 006B082A */ slt $at, $v1, $t3 -/* 061760 80060B60 10200029 */ beqz $at, .L80060C08 -/* 061764 80060B64 8FAE0074 */ lw $t6, 0x74($sp) -.L80060B68: -/* 061768 80060B68 8FAC007C */ lw $t4, 0x7c($sp) -/* 06176C 80060B6C 00008825 */ move $s1, $zero -/* 061770 80060B70 128C001E */ beq $s4, $t4, .L80060BEC -.L80060B74: -/* 061774 80060B74 26300001 */ addiu $s0, $s1, 1 -/* 061778 80060B78 2A010003 */ slti $at, $s0, 3 -/* 06177C 80060B7C 14200002 */ bnez $at, .L80060B88 -/* 061780 80060B80 02004025 */ move $t0, $s0 -/* 061784 80060B84 00004025 */ move $t0, $zero -.L80060B88: -/* 061788 80060B88 8E6D0008 */ lw $t5, 8($s3) -/* 06178C 80060B8C 00147100 */ sll $t6, $s4, 4 -/* 061790 80060B90 01AE1021 */ addu $v0, $t5, $t6 -/* 061794 80060B94 0048C821 */ addu $t9, $v0, $t0 -/* 061798 80060B98 93290001 */ lbu $t1, 1($t9) -/* 06179C 80060B9C 00517821 */ addu $t7, $v0, $s1 -/* 0617A0 80060BA0 91F80001 */ lbu $t8, 1($t7) -/* 0617A4 80060BA4 8E640004 */ lw $a0, 4($s3) -/* 0617A8 80060BA8 01321821 */ addu $v1, $t1, $s2 -/* 0617AC 80060BAC AFA30010 */ sw $v1, 0x10($sp) -/* 0617B0 80060BB0 02A02825 */ move $a1, $s5 -/* 0617B4 80060BB4 02C03025 */ move $a2, $s6 -/* 0617B8 80060BB8 0C018316 */ jal func_80060C58 -/* 0617BC 80060BBC 03123821 */ addu $a3, $t8, $s2 -/* 0617C0 80060BC0 10400008 */ beqz $v0, .L80060BE4 -/* 0617C4 80060BC4 00000000 */ nop -/* 0617C8 80060BC8 8FAA008C */ lw $t2, 0x8c($sp) -/* 0617CC 80060BCC 03C01025 */ move $v0, $fp -/* 0617D0 80060BD0 AD510000 */ sw $s1, ($t2) -/* 0617D4 80060BD4 8FAC0088 */ lw $t4, 0x88($sp) -/* 0617D8 80060BD8 8FAB0074 */ lw $t3, 0x74($sp) -/* 0617DC 80060BDC 10000012 */ b .L80060C28 -/* 0617E0 80060BE0 AD8B0000 */ sw $t3, ($t4) -.L80060BE4: -/* 0617E4 80060BE4 1617FFE3 */ bne $s0, $s7, .L80060B74 -/* 0617E8 80060BE8 02008825 */ move $s1, $s0 -.L80060BEC: -/* 0617EC 80060BEC 8FAD0070 */ lw $t5, 0x70($sp) -/* 0617F0 80060BF0 26940001 */ addiu $s4, $s4, 1 -/* 0617F4 80060BF4 168DFFDC */ bne $s4, $t5, .L80060B68 -/* 0617F8 80060BF8 27DE0001 */ addiu $fp, $fp, 1 -/* 0617FC 80060BFC 86680028 */ lh $t0, 0x28($s3) -/* 061800 80060C00 00000000 */ nop -/* 061804 80060C04 8FAE0074 */ lw $t6, 0x74($sp) -.L80060C08: -/* 061808 80060C08 8FB80048 */ lw $t8, 0x48($sp) -/* 06180C 80060C0C 25CF0001 */ addiu $t7, $t6, 1 -/* 061810 80060C10 01E8082A */ slt $at, $t7, $t0 -/* 061814 80060C14 2719000C */ addiu $t9, $t8, 0xc -/* 061818 80060C18 AFB90048 */ sw $t9, 0x48($sp) -/* 06181C 80060C1C 1420FFBF */ bnez $at, .L80060B1C -/* 061820 80060C20 AFAF0074 */ sw $t7, 0x74($sp) -.L80060C24: -/* 061824 80060C24 2402FFFF */ li $v0, -1 -.L80060C28: -/* 061828 80060C28 8FBF0044 */ lw $ra, 0x44($sp) -/* 06182C 80060C2C 8FB00020 */ lw $s0, 0x20($sp) -/* 061830 80060C30 8FB10024 */ lw $s1, 0x24($sp) -/* 061834 80060C34 8FB20028 */ lw $s2, 0x28($sp) -/* 061838 80060C38 8FB3002C */ lw $s3, 0x2c($sp) -/* 06183C 80060C3C 8FB40030 */ lw $s4, 0x30($sp) -/* 061840 80060C40 8FB50034 */ lw $s5, 0x34($sp) -/* 061844 80060C44 8FB60038 */ lw $s6, 0x38($sp) -/* 061848 80060C48 8FB7003C */ lw $s7, 0x3c($sp) -/* 06184C 80060C4C 8FBE0040 */ lw $fp, 0x40($sp) -/* 061850 80060C50 03E00008 */ jr $ra -/* 061854 80060C54 27BD0078 */ addiu $sp, $sp, 0x78 - -glabel func_80060C58 -/* 061858 80060C58 14A70006 */ bne $a1, $a3, .L80060C74 -/* 06185C 80060C5C 8FA30010 */ lw $v1, 0x10($sp) -/* 061860 80060C60 8FA30010 */ lw $v1, 0x10($sp) -/* 061864 80060C64 00000000 */ nop -/* 061868 80060C68 10C30007 */ beq $a2, $v1, .L80060C88 -/* 06186C 80060C6C 00000000 */ nop -/* 061870 80060C70 8FA30010 */ lw $v1, 0x10($sp) -.L80060C74: -/* 061874 80060C74 240D000A */ li $t5, 10 -/* 061878 80060C78 14A30005 */ bne $a1, $v1, .L80060C90 -/* 06187C 80060C7C 00000000 */ nop -/* 061880 80060C80 14C70003 */ bne $a2, $a3, .L80060C90 -/* 061884 80060C84 00000000 */ nop -.L80060C88: -/* 061888 80060C88 03E00008 */ jr $ra -/* 06188C 80060C8C 24020001 */ li $v0, 1 - -.L80060C90: -/* 061890 80060C90 00ED0019 */ multu $a3, $t5 -/* 061894 80060C94 00007012 */ mflo $t6 -/* 061898 80060C98 01C41021 */ addu $v0, $t6, $a0 -/* 06189C 80060C9C 84490000 */ lh $t1, ($v0) -/* 0618A0 80060CA0 00AD0019 */ multu $a1, $t5 -/* 0618A4 80060CA4 252AFFFC */ addiu $t2, $t1, -4 -/* 0618A8 80060CA8 25380004 */ addiu $t8, $t1, 4 -/* 0618AC 80060CAC 00007812 */ mflo $t7 -/* 0618B0 80060CB0 01E44021 */ addu $t0, $t7, $a0 -/* 0618B4 80060CB4 850B0000 */ lh $t3, ($t0) -/* 0618B8 80060CB8 00000000 */ nop -/* 0618BC 80060CBC 014B082A */ slt $at, $t2, $t3 -/* 0618C0 80060CC0 10200039 */ beqz $at, .L80060DA8 -/* 0618C4 80060CC4 0178082A */ slt $at, $t3, $t8 -/* 0618C8 80060CC8 10200037 */ beqz $at, .L80060DA8 -/* 0618CC 80060CCC 00000000 */ nop -/* 0618D0 80060CD0 84470002 */ lh $a3, 2($v0) -/* 0618D4 80060CD4 85050002 */ lh $a1, 2($t0) -/* 0618D8 80060CD8 24F9FFFC */ addiu $t9, $a3, -4 -/* 0618DC 80060CDC 0325082A */ slt $at, $t9, $a1 -/* 0618E0 80060CE0 10200031 */ beqz $at, .L80060DA8 -/* 0618E4 80060CE4 24EE0004 */ addiu $t6, $a3, 4 -/* 0618E8 80060CE8 00AE082A */ slt $at, $a1, $t6 -/* 0618EC 80060CEC 1020002E */ beqz $at, .L80060DA8 -/* 0618F0 80060CF0 00000000 */ nop -/* 0618F4 80060CF4 84470004 */ lh $a3, 4($v0) -/* 0618F8 80060CF8 85050004 */ lh $a1, 4($t0) -/* 0618FC 80060CFC 24EFFFFC */ addiu $t7, $a3, -4 -/* 061900 80060D00 01E5082A */ slt $at, $t7, $a1 -/* 061904 80060D04 10200028 */ beqz $at, .L80060DA8 -/* 061908 80060D08 24F80004 */ addiu $t8, $a3, 4 -/* 06190C 80060D0C 00B8082A */ slt $at, $a1, $t8 -/* 061910 80060D10 10200025 */ beqz $at, .L80060DA8 -/* 061914 80060D14 00000000 */ nop -/* 061918 80060D18 006D0019 */ multu $v1, $t5 -/* 06191C 80060D1C 0000C812 */ mflo $t9 -/* 061920 80060D20 03243821 */ addu $a3, $t9, $a0 -/* 061924 80060D24 84EC0000 */ lh $t4, ($a3) -/* 061928 80060D28 00CD0019 */ multu $a2, $t5 -/* 06192C 80060D2C 258FFFFC */ addiu $t7, $t4, -4 -/* 061930 80060D30 25980004 */ addiu $t8, $t4, 4 -/* 061934 80060D34 00007012 */ mflo $t6 -/* 061938 80060D38 01C42821 */ addu $a1, $t6, $a0 -/* 06193C 80060D3C 84A80000 */ lh $t0, ($a1) -/* 061940 80060D40 00000000 */ nop -/* 061944 80060D44 01E8082A */ slt $at, $t7, $t0 -/* 061948 80060D48 10200054 */ beqz $at, .L80060E9C -/* 06194C 80060D4C 0118082A */ slt $at, $t0, $t8 -/* 061950 80060D50 10200053 */ beqz $at, .L80060EA0 -/* 061954 80060D54 00001025 */ move $v0, $zero -/* 061958 80060D58 84EB0002 */ lh $t3, 2($a3) -/* 06195C 80060D5C 84A30002 */ lh $v1, 2($a1) -/* 061960 80060D60 2579FFFC */ addiu $t9, $t3, -4 -/* 061964 80060D64 0323082A */ slt $at, $t9, $v1 -/* 061968 80060D68 1020004C */ beqz $at, .L80060E9C -/* 06196C 80060D6C 256E0004 */ addiu $t6, $t3, 4 -/* 061970 80060D70 006E082A */ slt $at, $v1, $t6 -/* 061974 80060D74 1020004A */ beqz $at, .L80060EA0 -/* 061978 80060D78 00001025 */ move $v0, $zero -/* 06197C 80060D7C 84EB0004 */ lh $t3, 4($a3) -/* 061980 80060D80 84A30004 */ lh $v1, 4($a1) -/* 061984 80060D84 256FFFFC */ addiu $t7, $t3, -4 -/* 061988 80060D88 01E3082A */ slt $at, $t7, $v1 -/* 06198C 80060D8C 10200043 */ beqz $at, .L80060E9C -/* 061990 80060D90 25780004 */ addiu $t8, $t3, 4 -/* 061994 80060D94 0078082A */ slt $at, $v1, $t8 -/* 061998 80060D98 10200041 */ beqz $at, .L80060EA0 -/* 06199C 80060D9C 00001025 */ move $v0, $zero -/* 0619A0 80060DA0 03E00008 */ jr $ra -/* 0619A4 80060DA4 24020002 */ li $v0, 2 - -.L80060DA8: -/* 0619A8 80060DA8 006D0019 */ multu $v1, $t5 -/* 0619AC 80060DAC 0000C812 */ mflo $t9 -/* 0619B0 80060DB0 03243821 */ addu $a3, $t9, $a0 -/* 0619B4 80060DB4 84EC0000 */ lh $t4, ($a3) -/* 0619B8 80060DB8 00000000 */ nop -/* 0619BC 80060DBC 258EFFFC */ addiu $t6, $t4, -4 -/* 0619C0 80060DC0 01CB082A */ slt $at, $t6, $t3 -/* 0619C4 80060DC4 10200035 */ beqz $at, .L80060E9C -/* 0619C8 80060DC8 258F0004 */ addiu $t7, $t4, 4 -/* 0619CC 80060DCC 016F082A */ slt $at, $t3, $t7 -/* 0619D0 80060DD0 10200032 */ beqz $at, .L80060E9C -/* 0619D4 80060DD4 00000000 */ nop -/* 0619D8 80060DD8 84EB0002 */ lh $t3, 2($a3) -/* 0619DC 80060DDC 85050002 */ lh $a1, 2($t0) -/* 0619E0 80060DE0 2578FFFC */ addiu $t8, $t3, -4 -/* 0619E4 80060DE4 0305082A */ slt $at, $t8, $a1 -/* 0619E8 80060DE8 1020002C */ beqz $at, .L80060E9C -/* 0619EC 80060DEC 25790004 */ addiu $t9, $t3, 4 -/* 0619F0 80060DF0 00B9082A */ slt $at, $a1, $t9 -/* 0619F4 80060DF4 10200029 */ beqz $at, .L80060E9C -/* 0619F8 80060DF8 00000000 */ nop -/* 0619FC 80060DFC 84EB0004 */ lh $t3, 4($a3) -/* 061A00 80060E00 85050004 */ lh $a1, 4($t0) -/* 061A04 80060E04 256EFFFC */ addiu $t6, $t3, -4 -/* 061A08 80060E08 01C5082A */ slt $at, $t6, $a1 -/* 061A0C 80060E0C 10200023 */ beqz $at, .L80060E9C -/* 061A10 80060E10 256F0004 */ addiu $t7, $t3, 4 -/* 061A14 80060E14 00AF082A */ slt $at, $a1, $t7 -/* 061A18 80060E18 10200020 */ beqz $at, .L80060E9C -/* 061A1C 80060E1C 00000000 */ nop -/* 061A20 80060E20 00CD0019 */ multu $a2, $t5 -/* 061A24 80060E24 25390004 */ addiu $t9, $t1, 4 -/* 061A28 80060E28 0000C012 */ mflo $t8 -/* 061A2C 80060E2C 03042821 */ addu $a1, $t8, $a0 -/* 061A30 80060E30 84A80000 */ lh $t0, ($a1) -/* 061A34 80060E34 00000000 */ nop -/* 061A38 80060E38 0148082A */ slt $at, $t2, $t0 -/* 061A3C 80060E3C 10200017 */ beqz $at, .L80060E9C -/* 061A40 80060E40 0119082A */ slt $at, $t0, $t9 -/* 061A44 80060E44 10200015 */ beqz $at, .L80060E9C -/* 061A48 80060E48 00000000 */ nop -/* 061A4C 80060E4C 84470002 */ lh $a3, 2($v0) -/* 061A50 80060E50 84A30002 */ lh $v1, 2($a1) -/* 061A54 80060E54 24EEFFFC */ addiu $t6, $a3, -4 -/* 061A58 80060E58 01C3082A */ slt $at, $t6, $v1 -/* 061A5C 80060E5C 1020000F */ beqz $at, .L80060E9C -/* 061A60 80060E60 24EF0004 */ addiu $t7, $a3, 4 -/* 061A64 80060E64 006F082A */ slt $at, $v1, $t7 -/* 061A68 80060E68 1020000C */ beqz $at, .L80060E9C -/* 061A6C 80060E6C 00000000 */ nop -/* 061A70 80060E70 84470004 */ lh $a3, 4($v0) -/* 061A74 80060E74 84A30004 */ lh $v1, 4($a1) -/* 061A78 80060E78 24F8FFFC */ addiu $t8, $a3, -4 -/* 061A7C 80060E7C 0303082A */ slt $at, $t8, $v1 -/* 061A80 80060E80 10200006 */ beqz $at, .L80060E9C -/* 061A84 80060E84 24F90004 */ addiu $t9, $a3, 4 -/* 061A88 80060E88 0079082A */ slt $at, $v1, $t9 -/* 061A8C 80060E8C 10200004 */ beqz $at, .L80060EA0 -/* 061A90 80060E90 00001025 */ move $v0, $zero -/* 061A94 80060E94 03E00008 */ jr $ra -/* 061A98 80060E98 24020002 */ li $v0, 2 - -.L80060E9C: -/* 061A9C 80060E9C 00001025 */ move $v0, $zero -.L80060EA0: -/* 061AA0 80060EA0 03E00008 */ jr $ra -/* 061AA4 80060EA4 00000000 */ nop - -glabel func_80060EA8 -/* 061AA8 80060EA8 27BDFF48 */ addiu $sp, $sp, -0xb8 -/* 061AAC 80060EAC AFBF0044 */ sw $ra, 0x44($sp) -/* 061AB0 80060EB0 AFBE0040 */ sw $fp, 0x40($sp) -/* 061AB4 80060EB4 AFB7003C */ sw $s7, 0x3c($sp) -/* 061AB8 80060EB8 AFB60038 */ sw $s6, 0x38($sp) -/* 061ABC 80060EBC AFB50034 */ sw $s5, 0x34($sp) -/* 061AC0 80060EC0 AFB40030 */ sw $s4, 0x30($sp) -/* 061AC4 80060EC4 AFB3002C */ sw $s3, 0x2c($sp) -/* 061AC8 80060EC8 AFB20028 */ sw $s2, 0x28($sp) -/* 061ACC 80060ECC AFB10024 */ sw $s1, 0x24($sp) -/* 061AD0 80060ED0 AFB00020 */ sw $s0, 0x20($sp) -/* 061AD4 80060ED4 E7B50018 */ swc1 $f21, 0x18($sp) -/* 061AD8 80060ED8 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 061ADC 80060EDC AFA400B8 */ sw $a0, 0xb8($sp) -/* 061AE0 80060EE0 84830028 */ lh $v1, 0x28($a0) -/* 061AE4 80060EE4 8C9F0038 */ lw $ra, 0x38($a0) -/* 061AE8 80060EE8 AC800040 */ sw $zero, 0x40($a0) -/* 061AEC 80060EEC 00003825 */ move $a3, $zero -/* 061AF0 80060EF0 1860001B */ blez $v1, .L80060F60 -/* 061AF4 80060EF4 00008825 */ move $s1, $zero -/* 061AF8 80060EF8 240D000C */ li $t5, 12 -.L80060EFC: -/* 061AFC 80060EFC 022D0019 */ multu $s1, $t5 -/* 061B00 80060F00 240100FF */ li $at, 255 -/* 061B04 80060F04 26310001 */ addiu $s1, $s1, 1 -/* 061B08 80060F08 00007812 */ mflo $t7 -/* 061B0C 80060F0C 03EF1021 */ addu $v0, $ra, $t7 -/* 061B10 80060F10 90580006 */ lbu $t8, 6($v0) -/* 061B14 80060F14 00000000 */ nop -/* 061B18 80060F18 17010006 */ bne $t8, $at, .L80060F34 -/* 061B1C 80060F1C 00000000 */ nop -/* 061B20 80060F20 8C590008 */ lw $t9, 8($v0) -/* 061B24 80060F24 00000000 */ nop -/* 061B28 80060F28 332E8000 */ andi $t6, $t9, 0x8000 -/* 061B2C 80060F2C 11C00008 */ beqz $t6, .L80060F50 -/* 061B30 80060F30 0011C400 */ sll $t8, $s1, 0x10 -.L80060F34: -/* 061B34 80060F34 844F000E */ lh $t7, 0xe($v0) -/* 061B38 80060F38 84590002 */ lh $t9, 2($v0) -/* 061B3C 80060F3C 00EFC021 */ addu $t8, $a3, $t7 -/* 061B40 80060F40 03193823 */ subu $a3, $t8, $t9 -/* 061B44 80060F44 00077400 */ sll $t6, $a3, 0x10 -/* 061B48 80060F48 000E3C03 */ sra $a3, $t6, 0x10 -/* 061B4C 80060F4C 0011C400 */ sll $t8, $s1, 0x10 -.L80060F50: -/* 061B50 80060F50 00188C03 */ sra $s1, $t8, 0x10 -/* 061B54 80060F54 0223082A */ slt $at, $s1, $v1 -/* 061B58 80060F58 1420FFE8 */ bnez $at, .L80060EFC -/* 061B5C 80060F5C 00000000 */ nop -.L80060F60: -/* 061B60 80060F60 18E00295 */ blez $a3, .L800619B8 -/* 061B64 80060F64 3C05FF7F */ lui $a1, (0xFF7F7FFF >> 16) # lui $a1, 0xff7f -/* 061B68 80060F68 8FAE00B8 */ lw $t6, 0xb8($sp) -/* 061B6C 80060F6C 34A57FFF */ ori $a1, (0xFF7F7FFF & 0xFFFF) # ori $a1, $a1, 0x7fff -/* 061B70 80060F70 8DCF0008 */ lw $t7, 8($t6) -/* 061B74 80060F74 8DD30004 */ lw $s3, 4($t6) -/* 061B78 80060F78 AFAF00B0 */ sw $t7, 0xb0($sp) -/* 061B7C 80060F7C 85C40026 */ lh $a0, 0x26($t6) -/* 061B80 80060F80 AFBF00A4 */ sw $ra, 0xa4($sp) -/* 061B84 80060F84 0004C080 */ sll $t8, $a0, 2 -/* 061B88 80060F88 0304C023 */ subu $t8, $t8, $a0 -/* 061B8C 80060F8C 00182080 */ sll $a0, $t8, 2 -/* 061B90 80060F90 0C01C344 */ jal func_80070D10 -/* 061B94 80060F94 A7A70098 */ sh $a3, 0x98($sp) -/* 061B98 80060F98 87A70098 */ lh $a3, 0x98($sp) -/* 061B9C 80060F9C 8FBF00A4 */ lw $ra, 0xa4($sp) -/* 061BA0 80060FA0 14400003 */ bnez $v0, .L80060FB0 -/* 061BA4 80060FA4 AFA200AC */ sw $v0, 0xac($sp) -/* 061BA8 80060FA8 10000284 */ b .L800619BC -/* 061BAC 80060FAC 24020001 */ li $v0, 1 -.L80060FB0: -/* 061BB0 80060FB0 00072080 */ sll $a0, $a3, 2 -/* 061BB4 80060FB4 00872023 */ subu $a0, $a0, $a3 -/* 061BB8 80060FB8 3C05FF7F */ lui $a1, (0xFF7F7FFF >> 16) # lui $a1, 0xff7f -/* 061BBC 80060FBC AFBF00A4 */ sw $ra, 0xa4($sp) -/* 061BC0 80060FC0 34A57FFF */ ori $a1, (0xFF7F7FFF & 0xFFFF) # ori $a1, $a1, 0x7fff -/* 061BC4 80060FC4 0C01C344 */ jal func_80070D10 -/* 061BC8 80060FC8 00042040 */ sll $a0, $a0, 1 -/* 061BCC 80060FCC 8FBF00A4 */ lw $ra, 0xa4($sp) -/* 061BD0 80060FD0 240D000C */ li $t5, 12 -/* 061BD4 80060FD4 14400006 */ bnez $v0, .L80060FF0 -/* 061BD8 80060FD8 AFA200A0 */ sw $v0, 0xa0($sp) -/* 061BDC 80060FDC 8FA400AC */ lw $a0, 0xac($sp) -/* 061BE0 80060FE0 0C01C450 */ jal func_80071140 -/* 061BE4 80060FE4 00000000 */ nop -/* 061BE8 80060FE8 10000274 */ b .L800619BC -/* 061BEC 80060FEC 24020001 */ li $v0, 1 -.L80060FF0: -/* 061BF0 80060FF0 8FB900B8 */ lw $t9, 0xb8($sp) -/* 061BF4 80060FF4 00008825 */ move $s1, $zero -/* 061BF8 80060FF8 87230028 */ lh $v1, 0x28($t9) -/* 061BFC 80060FFC 27B70064 */ addiu $s7, $sp, 0x64 -/* 061C00 80061000 1860008B */ blez $v1, .L80061230 -/* 061C04 80061004 27B60070 */ addiu $s6, $sp, 0x70 -/* 061C08 80061008 4480A000 */ mtc1 $zero, $f20 -/* 061C0C 8006100C 27BE0058 */ addiu $fp, $sp, 0x58 -/* 061C10 80061010 2412000A */ li $s2, 10 -.L80061014: -/* 061C14 80061014 022D0019 */ multu $s1, $t5 -/* 061C18 80061018 00007812 */ mflo $t7 -/* 061C1C 8006101C 03EF1021 */ addu $v0, $ra, $t7 -/* 061C20 80061020 84550004 */ lh $s5, 4($v0) -/* 061C24 80061024 844E0010 */ lh $t6, 0x10($v0) -/* 061C28 80061028 84540002 */ lh $s4, 2($v0) -/* 061C2C 8006102C 02AE082A */ slt $at, $s5, $t6 -/* 061C30 80061030 10200079 */ beqz $at, .L80061218 -/* 061C34 80061034 00000000 */ nop -/* 061C38 80061038 AFA20050 */ sw $v0, 0x50($sp) -/* 061C3C 8006103C 8FB800B0 */ lw $t8, 0xb0($sp) -.L80061040: -/* 061C40 80061040 0015C900 */ sll $t9, $s5, 4 -/* 061C44 80061044 00003825 */ move $a3, $zero -/* 061C48 80061048 03192021 */ addu $a0, $t8, $t9 -.L8006104C: -/* 061C4C 8006104C 00877821 */ addu $t7, $a0, $a3 -/* 061C50 80061050 91EE0001 */ lbu $t6, 1($t7) -/* 061C54 80061054 00071080 */ sll $v0, $a3, 2 -/* 061C58 80061058 01D43021 */ addu $a2, $t6, $s4 -/* 061C5C 8006105C 0006C400 */ sll $t8, $a2, 0x10 -/* 061C60 80061060 0018CC03 */ sra $t9, $t8, 0x10 -/* 061C64 80061064 03320019 */ multu $t9, $s2 -/* 061C68 80061068 02C2C021 */ addu $t8, $s6, $v0 -/* 061C6C 8006106C 24E70001 */ addiu $a3, $a3, 1 -/* 061C70 80061070 00007812 */ mflo $t7 -/* 061C74 80061074 026F1821 */ addu $v1, $s3, $t7 -/* 061C78 80061078 846E0000 */ lh $t6, ($v1) -/* 061C7C 8006107C 02E27821 */ addu $t7, $s7, $v0 -/* 061C80 80061080 448E2000 */ mtc1 $t6, $f4 -/* 061C84 80061084 00000000 */ nop -/* 061C88 80061088 468021A0 */ cvt.s.w $f6, $f4 -/* 061C8C 8006108C E7060000 */ swc1 $f6, ($t8) -/* 061C90 80061090 84790002 */ lh $t9, 2($v1) -/* 061C94 80061094 03C2C021 */ addu $t8, $fp, $v0 -/* 061C98 80061098 44994000 */ mtc1 $t9, $f8 -/* 061C9C 8006109C 0007CC00 */ sll $t9, $a3, 0x10 -/* 061CA0 800610A0 468042A0 */ cvt.s.w $f10, $f8 -/* 061CA4 800610A4 00193C03 */ sra $a3, $t9, 0x10 -/* 061CA8 800610A8 28E10003 */ slti $at, $a3, 3 -/* 061CAC 800610AC E5EA0000 */ swc1 $f10, ($t7) -/* 061CB0 800610B0 846E0004 */ lh $t6, 4($v1) -/* 061CB4 800610B4 00000000 */ nop -/* 061CB8 800610B8 448E8000 */ mtc1 $t6, $f16 -/* 061CBC 800610BC 00000000 */ nop -/* 061CC0 800610C0 468084A0 */ cvt.s.w $f18, $f16 -/* 061CC4 800610C4 1420FFE1 */ bnez $at, .L8006104C -/* 061CC8 800610C8 E7120000 */ swc1 $f18, ($t8) -/* 061CCC 800610CC C7A40058 */ lwc1 $f4, 0x58($sp) -/* 061CD0 800610D0 C7A60060 */ lwc1 $f6, 0x60($sp) -/* 061CD4 800610D4 C7AA0064 */ lwc1 $f10, 0x64($sp) -/* 061CD8 800610D8 C7B00068 */ lwc1 $f16, 0x68($sp) -/* 061CDC 800610DC 02AD0019 */ multu $s5, $t5 -/* 061CE0 800610E0 46062201 */ sub.s $f8, $f4, $f6 -/* 061CE4 800610E4 8FAE00AC */ lw $t6, 0xac($sp) -/* 061CE8 800610E8 46105481 */ sub.s $f18, $f10, $f16 -/* 061CEC 800610EC C7B0005C */ lwc1 $f16, 0x5c($sp) -/* 061CF0 800610F0 46124182 */ mul.s $f6, $f8, $f18 -/* 061CF4 800610F4 C7B2006C */ lwc1 $f18, 0x6c($sp) -/* 061CF8 800610F8 46102201 */ sub.s $f8, $f4, $f16 -/* 061CFC 800610FC 46125101 */ sub.s $f4, $f10, $f18 -/* 061D00 80061100 0000C012 */ mflo $t8 -/* 061D04 80061104 46044402 */ mul.s $f16, $f8, $f4 -/* 061D08 80061108 01D88021 */ addu $s0, $t6, $t8 -/* 061D0C 8006110C 46103281 */ sub.s $f10, $f6, $f16 -/* 061D10 80061110 E60A0000 */ swc1 $f10, ($s0) -/* 061D14 80061114 C7B00078 */ lwc1 $f16, 0x78($sp) -/* 061D18 80061118 C7A60070 */ lwc1 $f6, 0x70($sp) -/* 061D1C 8006111C C7A8005C */ lwc1 $f8, 0x5c($sp) -/* 061D20 80061120 C7B20058 */ lwc1 $f18, 0x58($sp) -/* 061D24 80061124 46103281 */ sub.s $f10, $f6, $f16 -/* 061D28 80061128 C7B00060 */ lwc1 $f16, 0x60($sp) -/* 061D2C 8006112C 46089101 */ sub.s $f4, $f18, $f8 -/* 061D30 80061130 C6020000 */ lwc1 $f2, ($s0) -/* 061D34 80061134 460A2202 */ mul.s $f8, $f4, $f10 -/* 061D38 80061138 C7AA0074 */ lwc1 $f10, 0x74($sp) -/* 061D3C 8006113C 46109101 */ sub.s $f4, $f18, $f16 -/* 061D40 80061140 460A3481 */ sub.s $f18, $f6, $f10 -/* 061D44 80061144 46122402 */ mul.s $f16, $f4, $f18 -/* 061D48 80061148 46104181 */ sub.s $f6, $f8, $f16 -/* 061D4C 8006114C E6060004 */ swc1 $f6, 4($s0) -/* 061D50 80061150 C7B0006C */ lwc1 $f16, 0x6c($sp) -/* 061D54 80061154 C7A80064 */ lwc1 $f8, 0x64($sp) -/* 061D58 80061158 C7A40074 */ lwc1 $f4, 0x74($sp) -/* 061D5C 8006115C C7AA0070 */ lwc1 $f10, 0x70($sp) -/* 061D60 80061160 46104181 */ sub.s $f6, $f8, $f16 -/* 061D64 80061164 C7B00068 */ lwc1 $f16, 0x68($sp) -/* 061D68 80061168 46045481 */ sub.s $f18, $f10, $f4 -/* 061D6C 8006116C C60E0004 */ lwc1 $f14, 4($s0) -/* 061D70 80061170 46069102 */ mul.s $f4, $f18, $f6 -/* 061D74 80061174 C7A60078 */ lwc1 $f6, 0x78($sp) -/* 061D78 80061178 46104481 */ sub.s $f18, $f8, $f16 -/* 061D7C 8006117C 46065201 */ sub.s $f8, $f10, $f6 -/* 061D80 80061180 46089402 */ mul.s $f16, $f18, $f8 -/* 061D84 80061184 46102281 */ sub.s $f10, $f4, $f16 -/* 061D88 80061188 46021182 */ mul.s $f6, $f2, $f2 -/* 061D8C 8006118C E60A0008 */ swc1 $f10, 8($s0) -/* 061D90 80061190 C6000008 */ lwc1 $f0, 8($s0) -/* 061D94 80061194 AFBF00A4 */ sw $ra, 0xa4($sp) -/* 061D98 80061198 460E7482 */ mul.s $f18, $f14, $f14 -/* 061D9C 8006119C 00000000 */ nop -/* 061DA0 800611A0 46000102 */ mul.s $f4, $f0, $f0 -/* 061DA4 800611A4 46123200 */ add.s $f8, $f6, $f18 -/* 061DA8 800611A8 0C0326B4 */ jal sqrtf -/* 061DAC 800611AC 46082300 */ add.s $f12, $f4, $f8 -/* 061DB0 800611B0 46140032 */ c.eq.s $f0, $f20 -/* 061DB4 800611B4 8FBF00A4 */ lw $ra, 0xa4($sp) -/* 061DB8 800611B8 4501000B */ bc1t .L800611E8 -/* 061DBC 800611BC 240D000C */ li $t5, 12 -/* 061DC0 800611C0 C6100000 */ lwc1 $f16, ($s0) -/* 061DC4 800611C4 C6060004 */ lwc1 $f6, 4($s0) -/* 061DC8 800611C8 C6040008 */ lwc1 $f4, 8($s0) -/* 061DCC 800611CC 46008283 */ div.s $f10, $f16, $f0 -/* 061DD0 800611D0 00000000 */ nop -/* 061DD4 800611D4 46003483 */ div.s $f18, $f6, $f0 -/* 061DD8 800611D8 E60A0000 */ swc1 $f10, ($s0) -/* 061DDC 800611DC 46002203 */ div.s $f8, $f4, $f0 -/* 061DE0 800611E0 E6120004 */ swc1 $f18, 4($s0) -/* 061DE4 800611E4 E6080008 */ swc1 $f8, 8($s0) -.L800611E8: -/* 061DE8 800611E8 8FAE0050 */ lw $t6, 0x50($sp) -/* 061DEC 800611EC 26B50001 */ addiu $s5, $s5, 1 -/* 061DF0 800611F0 85D80010 */ lh $t8, 0x10($t6) -/* 061DF4 800611F4 0015CC00 */ sll $t9, $s5, 0x10 -/* 061DF8 800611F8 0019AC03 */ sra $s5, $t9, 0x10 -/* 061DFC 800611FC 02B8082A */ slt $at, $s5, $t8 -/* 061E00 80061200 1420FF8F */ bnez $at, .L80061040 -/* 061E04 80061204 8FB800B0 */ lw $t8, 0xb0($sp) -/* 061E08 80061208 8FB900B8 */ lw $t9, 0xb8($sp) -/* 061E0C 8006120C 00000000 */ nop -/* 061E10 80061210 87230028 */ lh $v1, 0x28($t9) -/* 061E14 80061214 00000000 */ nop -.L80061218: -/* 061E18 80061218 26310001 */ addiu $s1, $s1, 1 -/* 061E1C 8006121C 00117C00 */ sll $t7, $s1, 0x10 -/* 061E20 80061220 000F8C03 */ sra $s1, $t7, 0x10 -/* 061E24 80061224 0223082A */ slt $at, $s1, $v1 -/* 061E28 80061228 1420FF7A */ bnez $at, .L80061014 -/* 061E2C 8006122C 00000000 */ nop -.L80061230: -/* 061E30 80061230 8FB800B8 */ lw $t8, 0xb8($sp) -/* 061E34 80061234 4480A000 */ mtc1 $zero, $f20 -/* 061E38 80061238 87040024 */ lh $a0, 0x24($t8) -/* 061E3C 8006123C AFBF00A4 */ sw $ra, 0xa4($sp) -/* 061E40 80061240 3C05FF7F */ lui $a1, %hi(D_FF7F0001) # $a1, 0xff7f -/* 061E44 80061244 0004C840 */ sll $t9, $a0, 1 -/* 061E48 80061248 2412000A */ li $s2, 10 -/* 061E4C 8006124C 03202025 */ move $a0, $t9 -/* 061E50 80061250 0C01C344 */ jal func_80070D10 -/* 061E54 80061254 34A57FFF */ ori $a1, (0xFF7F7FFF & 0xFFFF) # ori $a1, $a1, 0x7fff -/* 061E58 80061258 8FBF00A4 */ lw $ra, 0xa4($sp) -/* 061E5C 8006125C 240D000C */ li $t5, 12 -/* 061E60 80061260 14400009 */ bnez $v0, .L80061288 -/* 061E64 80061264 0040B825 */ move $s7, $v0 -/* 061E68 80061268 8FA400AC */ lw $a0, 0xac($sp) -/* 061E6C 8006126C 0C01C450 */ jal func_80071140 -/* 061E70 80061270 00000000 */ nop -/* 061E74 80061274 8FA400A0 */ lw $a0, 0xa0($sp) -/* 061E78 80061278 0C01C450 */ jal func_80071140 -/* 061E7C 8006127C 00000000 */ nop -/* 061E80 80061280 100001CE */ b .L800619BC -/* 061E84 80061284 24020001 */ li $v0, 1 -.L80061288: -/* 061E88 80061288 8FAF00B8 */ lw $t7, 0xb8($sp) -/* 061E8C 8006128C 0000B025 */ move $s6, $zero -/* 061E90 80061290 85E30028 */ lh $v1, 0x28($t7) -/* 061E94 80061294 00008825 */ move $s1, $zero -/* 061E98 80061298 186000E6 */ blez $v1, .L80061634 -/* 061E9C 8006129C 2414FFFF */ li $s4, -1 -/* 061EA0 800612A0 241000FE */ li $s0, 254 -.L800612A4: -/* 061EA4 800612A4 022D0019 */ multu $s1, $t5 -/* 061EA8 800612A8 00007012 */ mflo $t6 -/* 061EAC 800612AC 03EEC021 */ addu $t8, $ra, $t6 -/* 061EB0 800612B0 AFB80050 */ sw $t8, 0x50($sp) -/* 061EB4 800612B4 870F000E */ lh $t7, 0xe($t8) -/* 061EB8 800612B8 870B0002 */ lh $t3, 2($t8) -/* 061EBC 800612BC 00000000 */ nop -/* 061EC0 800612C0 016F082A */ slt $at, $t3, $t7 -/* 061EC4 800612C4 102000D5 */ beqz $at, .L8006161C -/* 061EC8 800612C8 00000000 */ nop -/* 061ECC 800612CC 8FAE0050 */ lw $t6, 0x50($sp) -.L800612D0: -/* 061ED0 800612D0 00000000 */ nop -/* 061ED4 800612D4 91CC0006 */ lbu $t4, 6($t6) -/* 061ED8 800612D8 00000000 */ nop -/* 061EDC 800612DC 298100FE */ slti $at, $t4, 0xfe -/* 061EE0 800612E0 10200058 */ beqz $at, .L80061444 -/* 061EE4 800612E4 00000000 */ nop -/* 061EE8 800612E8 01720019 */ multu $t3, $s2 -/* 061EEC 800612EC 00143400 */ sll $a2, $s4, 0x10 -/* 061EF0 800612F0 0006C403 */ sra $t8, $a2, 0x10 -/* 061EF4 800612F4 03003025 */ move $a2, $t8 -/* 061EF8 800612F8 00002825 */ move $a1, $zero -/* 061EFC 800612FC 0000C812 */ mflo $t9 -/* 061F00 80061300 02791821 */ addu $v1, $s3, $t9 -/* 061F04 80061304 84680000 */ lh $t0, ($v1) -/* 061F08 80061308 84690002 */ lh $t1, 2($v1) -/* 061F0C 8006130C 846A0004 */ lh $t2, 4($v1) -/* 061F10 80061310 06200040 */ bltz $s1, .L80061414 -/* 061F14 80061314 00000000 */ nop -.L80061318: -/* 061F18 80061318 00AD0019 */ multu $a1, $t5 -/* 061F1C 8006131C 00007812 */ mflo $t7 -/* 061F20 80061320 03EF3821 */ addu $a3, $ra, $t7 -/* 061F24 80061324 90EE0006 */ lbu $t6, 6($a3) -/* 061F28 80061328 00000000 */ nop -/* 061F2C 8006132C 158E0031 */ bne $t4, $t6, .L800613F4 -/* 061F30 80061330 00000000 */ nop -/* 061F34 80061334 84E40002 */ lh $a0, 2($a3) -/* 061F38 80061338 14B10003 */ bne $a1, $s1, .L80061348 -/* 061F3C 8006133C 008B082A */ slt $at, $a0, $t3 -/* 061F40 80061340 14200008 */ bnez $at, .L80061364 -/* 061F44 80061344 00000000 */ nop -.L80061348: -/* 061F48 80061348 10B1002A */ beq $a1, $s1, .L800613F4 -/* 061F4C 8006134C 00000000 */ nop -/* 061F50 80061350 84F8000E */ lh $t8, 0xe($a3) -/* 061F54 80061354 00000000 */ nop -/* 061F58 80061358 0098082A */ slt $at, $a0, $t8 -/* 061F5C 8006135C 10200025 */ beqz $at, .L800613F4 -/* 061F60 80061360 00000000 */ nop -.L80061364: -/* 061F64 80061364 04C10023 */ bgez $a2, .L800613F4 -/* 061F68 80061368 00000000 */ nop -.L8006136C: -/* 061F6C 8006136C 00920019 */ multu $a0, $s2 -/* 061F70 80061370 0000C812 */ mflo $t9 -/* 061F74 80061374 02791821 */ addu $v1, $s3, $t9 -/* 061F78 80061378 846F0000 */ lh $t7, ($v1) -/* 061F7C 8006137C 00000000 */ nop -/* 061F80 80061380 150F000B */ bne $t0, $t7, .L800613B0 -/* 061F84 80061384 00000000 */ nop -/* 061F88 80061388 846E0002 */ lh $t6, 2($v1) -/* 061F8C 8006138C 00000000 */ nop -/* 061F90 80061390 152E0007 */ bne $t1, $t6, .L800613B0 -/* 061F94 80061394 00000000 */ nop -/* 061F98 80061398 84780004 */ lh $t8, 4($v1) -/* 061F9C 8006139C 0004C840 */ sll $t9, $a0, 1 -/* 061FA0 800613A0 15580003 */ bne $t2, $t8, .L800613B0 -/* 061FA4 800613A4 00597821 */ addu $t7, $v0, $t9 -/* 061FA8 800613A8 85E60000 */ lh $a2, ($t7) -/* 061FAC 800613AC 00000000 */ nop -.L800613B0: -/* 061FB0 800613B0 24840001 */ addiu $a0, $a0, 1 -/* 061FB4 800613B4 00047400 */ sll $t6, $a0, 0x10 -/* 061FB8 800613B8 000EC403 */ sra $t8, $t6, 0x10 -/* 061FBC 800613BC 14B10004 */ bne $a1, $s1, .L800613D0 -/* 061FC0 800613C0 03002025 */ move $a0, $t8 -/* 061FC4 800613C4 030B082A */ slt $at, $t8, $t3 -/* 061FC8 800613C8 14200008 */ bnez $at, .L800613EC -/* 061FCC 800613CC 00000000 */ nop -.L800613D0: -/* 061FD0 800613D0 10B10008 */ beq $a1, $s1, .L800613F4 -/* 061FD4 800613D4 00000000 */ nop -/* 061FD8 800613D8 84F9000E */ lh $t9, 0xe($a3) -/* 061FDC 800613DC 00000000 */ nop -/* 061FE0 800613E0 0099082A */ slt $at, $a0, $t9 -/* 061FE4 800613E4 10200003 */ beqz $at, .L800613F4 -/* 061FE8 800613E8 00000000 */ nop -.L800613EC: -/* 061FEC 800613EC 04C0FFDF */ bltz $a2, .L8006136C -/* 061FF0 800613F0 00000000 */ nop -.L800613F4: -/* 061FF4 800613F4 24A50001 */ addiu $a1, %lo(D_FF7F0001) # addiu $a1, $a1, 1 -/* 061FF8 800613F8 00057C00 */ sll $t7, $a1, 0x10 -/* 061FFC 800613FC 000F2C03 */ sra $a1, $t7, 0x10 -/* 062000 80061400 0225082A */ slt $at, $s1, $a1 -/* 062004 80061404 14200003 */ bnez $at, .L80061414 -/* 062008 80061408 00000000 */ nop -/* 06200C 8006140C 04C0FFC2 */ bltz $a2, .L80061318 -/* 062010 80061410 00000000 */ nop -.L80061414: -/* 062014 80061414 04C10008 */ bgez $a2, .L80061438 -/* 062018 80061418 000BC040 */ sll $t8, $t3, 1 -/* 06201C 8006141C 000BC040 */ sll $t8, $t3, 1 -/* 062020 80061420 0058C821 */ addu $t9, $v0, $t8 -/* 062024 80061424 A7360000 */ sh $s6, ($t9) -/* 062028 80061428 26D60001 */ addiu $s6, $s6, 1 -/* 06202C 8006142C 00167C00 */ sll $t7, $s6, 0x10 -/* 062030 80061430 1000006E */ b .L800615EC -/* 062034 80061434 000FB403 */ sra $s6, $t7, 0x10 -.L80061438: -/* 062038 80061438 0058C821 */ addu $t9, $v0, $t8 -/* 06203C 8006143C 1000006B */ b .L800615EC -/* 062040 80061440 A7260000 */ sh $a2, ($t9) -.L80061444: -/* 062044 80061444 160C0007 */ bne $s0, $t4, .L80061464 -/* 062048 80061448 000B7840 */ sll $t7, $t3, 1 -/* 06204C 8006144C 004F7021 */ addu $t6, $v0, $t7 -/* 062050 80061450 A5D60000 */ sh $s6, ($t6) -/* 062054 80061454 26D60001 */ addiu $s6, $s6, 1 -/* 062058 80061458 0016C400 */ sll $t8, $s6, 0x10 -/* 06205C 8006145C 10000063 */ b .L800615EC -/* 062060 80061460 0018B403 */ sra $s6, $t8, 0x10 -.L80061464: -/* 062064 80061464 8FAF0050 */ lw $t7, 0x50($sp) -/* 062068 80061468 00000000 */ nop -/* 06206C 8006146C 8DEE0008 */ lw $t6, 8($t7) -/* 062070 80061470 00000000 */ nop -/* 062074 80061474 31D88000 */ andi $t8, $t6, 0x8000 -/* 062078 80061478 1300005A */ beqz $t8, .L800615E4 -/* 06207C 8006147C 000BC040 */ sll $t8, $t3, 1 -/* 062080 80061480 01720019 */ multu $t3, $s2 -/* 062084 80061484 00143400 */ sll $a2, $s4, 0x10 -/* 062088 80061488 0006CC03 */ sra $t9, $a2, 0x10 -/* 06208C 8006148C 03203025 */ move $a2, $t9 -/* 062090 80061490 00002825 */ move $a1, $zero -/* 062094 80061494 00007812 */ mflo $t7 -/* 062098 80061498 026F1821 */ addu $v1, $s3, $t7 -/* 06209C 8006149C 84680000 */ lh $t0, ($v1) -/* 0620A0 800614A0 84690002 */ lh $t1, 2($v1) -/* 0620A4 800614A4 846A0004 */ lh $t2, 4($v1) -/* 0620A8 800614A8 06200041 */ bltz $s1, .L800615B0 -/* 0620AC 800614AC 00000000 */ nop -.L800614B0: -/* 0620B0 800614B0 00AD0019 */ multu $a1, $t5 -/* 0620B4 800614B4 00007012 */ mflo $t6 -/* 0620B8 800614B8 03EE3821 */ addu $a3, $ra, $t6 -/* 0620BC 800614BC 8CF80008 */ lw $t8, 8($a3) -/* 0620C0 800614C0 00000000 */ nop -/* 0620C4 800614C4 33198000 */ andi $t9, $t8, 0x8000 -/* 0620C8 800614C8 13200031 */ beqz $t9, .L80061590 -/* 0620CC 800614CC 00000000 */ nop -/* 0620D0 800614D0 84E40002 */ lh $a0, 2($a3) -/* 0620D4 800614D4 14B10003 */ bne $a1, $s1, .L800614E4 -/* 0620D8 800614D8 008B082A */ slt $at, $a0, $t3 -/* 0620DC 800614DC 14200008 */ bnez $at, .L80061500 -/* 0620E0 800614E0 00000000 */ nop -.L800614E4: -/* 0620E4 800614E4 10B1002A */ beq $a1, $s1, .L80061590 -/* 0620E8 800614E8 00000000 */ nop -/* 0620EC 800614EC 84EF000E */ lh $t7, 0xe($a3) -/* 0620F0 800614F0 00000000 */ nop -/* 0620F4 800614F4 008F082A */ slt $at, $a0, $t7 -/* 0620F8 800614F8 10200025 */ beqz $at, .L80061590 -/* 0620FC 800614FC 00000000 */ nop -.L80061500: -/* 062100 80061500 04C10023 */ bgez $a2, .L80061590 -/* 062104 80061504 00000000 */ nop -.L80061508: -/* 062108 80061508 00920019 */ multu $a0, $s2 -/* 06210C 8006150C 00007012 */ mflo $t6 -/* 062110 80061510 026E1821 */ addu $v1, $s3, $t6 -/* 062114 80061514 84780000 */ lh $t8, ($v1) -/* 062118 80061518 00000000 */ nop -/* 06211C 8006151C 1518000B */ bne $t0, $t8, .L8006154C -/* 062120 80061520 00000000 */ nop -/* 062124 80061524 84790002 */ lh $t9, 2($v1) -/* 062128 80061528 00000000 */ nop -/* 06212C 8006152C 15390007 */ bne $t1, $t9, .L8006154C -/* 062130 80061530 00000000 */ nop -/* 062134 80061534 846F0004 */ lh $t7, 4($v1) -/* 062138 80061538 00047040 */ sll $t6, $a0, 1 -/* 06213C 8006153C 154F0003 */ bne $t2, $t7, .L8006154C -/* 062140 80061540 004EC021 */ addu $t8, $v0, $t6 -/* 062144 80061544 87060000 */ lh $a2, ($t8) -/* 062148 80061548 00000000 */ nop -.L8006154C: -/* 06214C 8006154C 24840001 */ addiu $a0, $a0, 1 -/* 062150 80061550 0004CC00 */ sll $t9, $a0, 0x10 -/* 062154 80061554 00197C03 */ sra $t7, $t9, 0x10 -/* 062158 80061558 14B10004 */ bne $a1, $s1, .L8006156C -/* 06215C 8006155C 01E02025 */ move $a0, $t7 -/* 062160 80061560 01EB082A */ slt $at, $t7, $t3 -/* 062164 80061564 14200008 */ bnez $at, .L80061588 -/* 062168 80061568 00000000 */ nop -.L8006156C: -/* 06216C 8006156C 10B10008 */ beq $a1, $s1, .L80061590 -/* 062170 80061570 00000000 */ nop -/* 062174 80061574 84EE000E */ lh $t6, 0xe($a3) -/* 062178 80061578 00000000 */ nop -/* 06217C 8006157C 008E082A */ slt $at, $a0, $t6 -/* 062180 80061580 10200003 */ beqz $at, .L80061590 -/* 062184 80061584 00000000 */ nop -.L80061588: -/* 062188 80061588 04C0FFDF */ bltz $a2, .L80061508 -/* 06218C 8006158C 00000000 */ nop -.L80061590: -/* 062190 80061590 24A50001 */ addiu $a1, $a1, 1 -/* 062194 80061594 0005C400 */ sll $t8, $a1, 0x10 -/* 062198 80061598 00182C03 */ sra $a1, $t8, 0x10 -/* 06219C 8006159C 0225082A */ slt $at, $s1, $a1 -/* 0621A0 800615A0 14200003 */ bnez $at, .L800615B0 -/* 0621A4 800615A4 00000000 */ nop -/* 0621A8 800615A8 04C0FFC1 */ bltz $a2, .L800614B0 -/* 0621AC 800615AC 00000000 */ nop -.L800615B0: -/* 0621B0 800615B0 04C10008 */ bgez $a2, .L800615D4 -/* 0621B4 800615B4 000B7840 */ sll $t7, $t3, 1 -/* 0621B8 800615B8 000B7840 */ sll $t7, $t3, 1 -/* 0621BC 800615BC 004F7021 */ addu $t6, $v0, $t7 -/* 0621C0 800615C0 A5D60000 */ sh $s6, ($t6) -/* 0621C4 800615C4 26D60001 */ addiu $s6, $s6, 1 -/* 0621C8 800615C8 0016C400 */ sll $t8, $s6, 0x10 -/* 0621CC 800615CC 10000007 */ b .L800615EC -/* 0621D0 800615D0 0018B403 */ sra $s6, $t8, 0x10 -.L800615D4: -/* 0621D4 800615D4 004F7021 */ addu $t6, $v0, $t7 -/* 0621D8 800615D8 10000004 */ b .L800615EC -/* 0621DC 800615DC A5C60000 */ sh $a2, ($t6) -/* 0621E0 800615E0 000BC040 */ sll $t8, $t3, 1 -.L800615E4: -/* 0621E4 800615E4 0058C821 */ addu $t9, $v0, $t8 -/* 0621E8 800615E8 A7340000 */ sh $s4, ($t9) -.L800615EC: -/* 0621EC 800615EC 8FB80050 */ lw $t8, 0x50($sp) -/* 0621F0 800615F0 256B0001 */ addiu $t3, $t3, 1 -/* 0621F4 800615F4 8719000E */ lh $t9, 0xe($t8) -/* 0621F8 800615F8 000B7C00 */ sll $t7, $t3, 0x10 -/* 0621FC 800615FC 000F5C03 */ sra $t3, $t7, 0x10 -/* 062200 80061600 0179082A */ slt $at, $t3, $t9 -/* 062204 80061604 1420FF32 */ bnez $at, .L800612D0 -/* 062208 80061608 8FAE0050 */ lw $t6, 0x50($sp) -/* 06220C 8006160C 8FAF00B8 */ lw $t7, 0xb8($sp) -/* 062210 80061610 00000000 */ nop -/* 062214 80061614 85E30028 */ lh $v1, 0x28($t7) -/* 062218 80061618 00000000 */ nop -.L8006161C: -/* 06221C 8006161C 26310001 */ addiu $s1, $s1, 1 -/* 062220 80061620 00117400 */ sll $t6, $s1, 0x10 -/* 062224 80061624 000E8C03 */ sra $s1, $t6, 0x10 -/* 062228 80061628 0223082A */ slt $at, $s1, $v1 -/* 06222C 8006162C 1420FF1D */ bnez $at, .L800612A4 -/* 062230 80061630 00000000 */ nop -.L80061634: -/* 062234 80061634 00162080 */ sll $a0, $s6, 2 -/* 062238 80061638 00962023 */ subu $a0, $a0, $s6 -/* 06223C 8006163C 3C05FF7F */ lui $a1, (0xFF7F7FFF >> 16) # lui $a1, 0xff7f -/* 062240 80061640 AFBF00A4 */ sw $ra, 0xa4($sp) -/* 062244 80061644 34A57FFF */ ori $a1, (0xFF7F7FFF & 0xFFFF) # ori $a1, $a1, 0x7fff -/* 062248 80061648 0C01C344 */ jal func_80070D10 -/* 06224C 8006164C 00042080 */ sll $a0, $a0, 2 -/* 062250 80061650 8FBF00A4 */ lw $ra, 0xa4($sp) -/* 062254 80061654 240D000C */ li $t5, 12 -/* 062258 80061658 1440000B */ bnez $v0, .L80061688 -/* 06225C 8006165C 00409025 */ move $s2, $v0 -/* 062260 80061660 8FA400AC */ lw $a0, 0xac($sp) -/* 062264 80061664 0C01C450 */ jal func_80071140 -/* 062268 80061668 00000000 */ nop -/* 06226C 8006166C 8FA400A0 */ lw $a0, 0xa0($sp) -/* 062270 80061670 0C01C450 */ jal func_80071140 -/* 062274 80061674 00000000 */ nop -/* 062278 80061678 0C01C450 */ jal func_80071140 -/* 06227C 8006167C 02E02025 */ move $a0, $s7 -/* 062280 80061680 100000CE */ b .L800619BC -/* 062284 80061684 24020001 */ li $v0, 1 -.L80061688: -/* 062288 80061688 00003825 */ move $a3, $zero -/* 06228C 8006168C 1AC0000C */ blez $s6, .L800616C0 -/* 062290 80061690 00008825 */ move $s1, $zero -.L80061694: -/* 062294 80061694 00ED0019 */ multu $a3, $t5 -/* 062298 80061698 24E70001 */ addiu $a3, $a3, 1 -/* 06229C 8006169C 00077C00 */ sll $t7, $a3, 0x10 -/* 0622A0 800616A0 000F3C03 */ sra $a3, $t7, 0x10 -/* 0622A4 800616A4 00F6082A */ slt $at, $a3, $s6 -/* 0622A8 800616A8 0000C812 */ mflo $t9 -/* 0622AC 800616AC 00591821 */ addu $v1, $v0, $t9 -/* 0622B0 800616B0 E4740000 */ swc1 $f20, ($v1) -/* 0622B4 800616B4 E4740004 */ swc1 $f20, 4($v1) -/* 0622B8 800616B8 1420FFF6 */ bnez $at, .L80061694 -/* 0622BC 800616BC E4740008 */ swc1 $f20, 8($v1) -.L800616C0: -/* 0622C0 800616C0 8FB800B8 */ lw $t8, 0xb8($sp) -/* 0622C4 800616C4 00000000 */ nop -/* 0622C8 800616C8 87030028 */ lh $v1, 0x28($t8) -/* 0622CC 800616CC 00000000 */ nop -/* 0622D0 800616D0 1860004F */ blez $v1, .L80061810 -/* 0622D4 800616D4 00000000 */ nop -.L800616D8: -/* 0622D8 800616D8 022D0019 */ multu $s1, $t5 -/* 0622DC 800616DC 240100FF */ li $at, 255 -/* 0622E0 800616E0 26310001 */ addiu $s1, $s1, 1 -/* 0622E4 800616E4 0000C812 */ mflo $t9 -/* 0622E8 800616E8 03F94021 */ addu $t0, $ra, $t9 -/* 0622EC 800616EC 910F0006 */ lbu $t7, 6($t0) -/* 0622F0 800616F0 00000000 */ nop -/* 0622F4 800616F4 15E10006 */ bne $t7, $at, .L80061710 -/* 0622F8 800616F8 00000000 */ nop -/* 0622FC 800616FC 8D0E0008 */ lw $t6, 8($t0) -/* 062300 80061700 00000000 */ nop -/* 062304 80061704 31D88000 */ andi $t8, $t6, 0x8000 -/* 062308 80061708 1300003D */ beqz $t8, .L80061800 -/* 06230C 8006170C 0011C400 */ sll $t8, $s1, 0x10 -.L80061710: -/* 062310 80061710 85150004 */ lh $s5, 4($t0) -/* 062314 80061714 85190010 */ lh $t9, 0x10($t0) -/* 062318 80061718 85140002 */ lh $s4, 2($t0) -/* 06231C 8006171C 02B9082A */ slt $at, $s5, $t9 -/* 062320 80061720 10200037 */ beqz $at, .L80061800 -/* 062324 80061724 0011C400 */ sll $t8, $s1, 0x10 -/* 062328 80061728 8FA900B0 */ lw $t1, 0xb0($sp) -/* 06232C 8006172C 8FA500AC */ lw $a1, 0xac($sp) -/* 062330 80061730 00000000 */ nop -/* 062334 80061734 00157900 */ sll $t7, $s5, 4 -.L80061738: -/* 062338 80061738 012F2021 */ addu $a0, $t1, $t7 -/* 06233C 8006173C 00003825 */ move $a3, $zero -/* 062340 80061740 00877021 */ addu $t6, $a0, $a3 -.L80061744: -/* 062344 80061744 91D80001 */ lbu $t8, 1($t6) -/* 062348 80061748 24E70001 */ addiu $a3, $a3, 1 -/* 06234C 8006174C 03143021 */ addu $a2, $t8, $s4 -/* 062350 80061750 0006CC00 */ sll $t9, $a2, 0x10 -/* 062354 80061754 00197C03 */ sra $t7, $t9, 0x10 -/* 062358 80061758 000F7040 */ sll $t6, $t7, 1 -/* 06235C 8006175C 02EEC021 */ addu $t8, $s7, $t6 -/* 062360 80061760 87060000 */ lh $a2, ($t8) -/* 062364 80061764 00077400 */ sll $t6, $a3, 0x10 -/* 062368 80061768 04C00016 */ bltz $a2, .L800617C4 -/* 06236C 8006176C 000E3C03 */ sra $a3, $t6, 0x10 -/* 062370 80061770 00CD0019 */ multu $a2, $t5 -/* 062374 80061774 0000C812 */ mflo $t9 -/* 062378 80061778 00591821 */ addu $v1, $v0, $t9 -/* 06237C 8006177C C4700000 */ lwc1 $f16, ($v1) -/* 062380 80061780 02AD0019 */ multu $s5, $t5 -/* 062384 80061784 C4720004 */ lwc1 $f18, 4($v1) -/* 062388 80061788 00007812 */ mflo $t7 -/* 06238C 8006178C 00AF8021 */ addu $s0, $a1, $t7 -/* 062390 80061790 C60A0000 */ lwc1 $f10, ($s0) -/* 062394 80061794 00000000 */ nop -/* 062398 80061798 460A8180 */ add.s $f6, $f16, $f10 -/* 06239C 8006179C C4700008 */ lwc1 $f16, 8($v1) -/* 0623A0 800617A0 E4660000 */ swc1 $f6, ($v1) -/* 0623A4 800617A4 C6040004 */ lwc1 $f4, 4($s0) -/* 0623A8 800617A8 00000000 */ nop -/* 0623AC 800617AC 46049200 */ add.s $f8, $f18, $f4 -/* 0623B0 800617B0 E4680004 */ swc1 $f8, 4($v1) -/* 0623B4 800617B4 C60A0008 */ lwc1 $f10, 8($s0) -/* 0623B8 800617B8 00000000 */ nop -/* 0623BC 800617BC 460A8180 */ add.s $f6, $f16, $f10 -/* 0623C0 800617C0 E4660008 */ swc1 $f6, 8($v1) -.L800617C4: -/* 0623C4 800617C4 28E10003 */ slti $at, $a3, 3 -/* 0623C8 800617C8 1420FFDE */ bnez $at, .L80061744 -/* 0623CC 800617CC 00877021 */ addu $t6, $a0, $a3 -/* 0623D0 800617D0 26B50001 */ addiu $s5, $s5, 1 -/* 0623D4 800617D4 85030010 */ lh $v1, 0x10($t0) -/* 0623D8 800617D8 0015CC00 */ sll $t9, $s5, 0x10 -/* 0623DC 800617DC 0019AC03 */ sra $s5, $t9, 0x10 -/* 0623E0 800617E0 02A3082A */ slt $at, $s5, $v1 -/* 0623E4 800617E4 1420FFD4 */ bnez $at, .L80061738 -/* 0623E8 800617E8 00157900 */ sll $t7, $s5, 4 -/* 0623EC 800617EC 8FAE00B8 */ lw $t6, 0xb8($sp) -/* 0623F0 800617F0 00000000 */ nop -/* 0623F4 800617F4 85C30028 */ lh $v1, 0x28($t6) -/* 0623F8 800617F8 00000000 */ nop -/* 0623FC 800617FC 0011C400 */ sll $t8, $s1, 0x10 -.L80061800: -/* 062400 80061800 00188C03 */ sra $s1, $t8, 0x10 -/* 062404 80061804 0223082A */ slt $at, $s1, $v1 -/* 062408 80061808 1420FFB3 */ bnez $at, .L800616D8 -/* 06240C 8006180C 00000000 */ nop -.L80061810: -/* 062410 80061810 1AC00027 */ blez $s6, .L800618B0 -/* 062414 80061814 00003825 */ move $a3, $zero -.L80061818: -/* 062418 80061818 00ED0019 */ multu $a3, $t5 -/* 06241C 8006181C 00007812 */ mflo $t7 -/* 062420 80061820 024F8021 */ addu $s0, $s2, $t7 -/* 062424 80061824 C6020000 */ lwc1 $f2, ($s0) -/* 062428 80061828 C60E0004 */ lwc1 $f14, 4($s0) -/* 06242C 8006182C 46021482 */ mul.s $f18, $f2, $f2 -/* 062430 80061830 C6000008 */ lwc1 $f0, 8($s0) -/* 062434 80061834 A7A70098 */ sh $a3, 0x98($sp) -/* 062438 80061838 460E7102 */ mul.s $f4, $f14, $f14 -/* 06243C 8006183C 00000000 */ nop -/* 062440 80061840 46000402 */ mul.s $f16, $f0, $f0 -/* 062444 80061844 46049200 */ add.s $f8, $f18, $f4 -/* 062448 80061848 0C0326B4 */ jal sqrtf -/* 06244C 8006184C 46088300 */ add.s $f12, $f16, $f8 -/* 062450 80061850 46140032 */ c.eq.s $f0, $f20 -/* 062454 80061854 87A70098 */ lh $a3, 0x98($sp) -/* 062458 80061858 4501000E */ bc1t .L80061894 -/* 06245C 8006185C 240D000C */ li $t5, 12 -/* 062460 80061860 3C013900 */ li $at, 0x39000000 # 0.000122 -/* 062464 80061864 44815000 */ mtc1 $at, $f10 -/* 062468 80061868 C6060000 */ lwc1 $f6, ($s0) -/* 06246C 8006186C 460A0082 */ mul.s $f2, $f0, $f10 -/* 062470 80061870 C6040004 */ lwc1 $f4, 4($s0) -/* 062474 80061874 C6080008 */ lwc1 $f8, 8($s0) -/* 062478 80061878 46023483 */ div.s $f18, $f6, $f2 -/* 06247C 8006187C 00000000 */ nop -/* 062480 80061880 46022403 */ div.s $f16, $f4, $f2 -/* 062484 80061884 E6120000 */ swc1 $f18, ($s0) -/* 062488 80061888 46024283 */ div.s $f10, $f8, $f2 -/* 06248C 8006188C E6100004 */ swc1 $f16, 4($s0) -/* 062490 80061890 E60A0008 */ swc1 $f10, 8($s0) -.L80061894: -/* 062494 80061894 24E70001 */ addiu $a3, $a3, 1 -/* 062498 80061898 00077400 */ sll $t6, $a3, 0x10 -/* 06249C 8006189C 000E3C03 */ sra $a3, $t6, 0x10 -/* 0624A0 800618A0 00F6082A */ slt $at, $a3, $s6 -/* 0624A4 800618A4 1420FFDC */ bnez $at, .L80061818 -/* 0624A8 800618A8 00000000 */ nop -/* 0624AC 800618AC 00003825 */ move $a3, $zero -.L800618B0: -/* 0624B0 800618B0 8FAA00B8 */ lw $t2, 0xb8($sp) -/* 0624B4 800618B4 8FA900A0 */ lw $t1, 0xa0($sp) -/* 0624B8 800618B8 85450024 */ lh $a1, 0x24($t2) -/* 0624BC 800618BC 00002025 */ move $a0, $zero -/* 0624C0 800618C0 18A00034 */ blez $a1, .L80061994 -/* 0624C4 800618C4 24080006 */ li $t0, 6 -/* 0624C8 800618C8 0007C840 */ sll $t9, $a3, 1 -.L800618CC: -/* 0624CC 800618CC 02F97821 */ addu $t7, $s7, $t9 -/* 0624D0 800618D0 85E60000 */ lh $a2, ($t7) -/* 0624D4 800618D4 24E70001 */ addiu $a3, $a3, 1 -/* 0624D8 800618D8 04C0002A */ bltz $a2, .L80061984 -/* 0624DC 800618DC 0007CC00 */ sll $t9, $a3, 0x10 -/* 0624E0 800618E0 00880019 */ multu $a0, $t0 -/* 0624E4 800618E4 4459F800 */ cfc1 $t9, $31 -/* 0624E8 800618E8 24840001 */ addiu $a0, $a0, 1 -/* 0624EC 800618EC 37210003 */ ori $at, $t9, 3 -/* 0624F0 800618F0 38210002 */ xori $at, $at, 2 -/* 0624F4 800618F4 44C1F800 */ ctc1 $at, $31 -/* 0624F8 800618F8 00007012 */ mflo $t6 -/* 0624FC 800618FC 012E1821 */ addu $v1, $t1, $t6 -/* 062500 80061900 00000000 */ nop -/* 062504 80061904 00CD0019 */ multu $a2, $t5 -/* 062508 80061908 0000C012 */ mflo $t8 -/* 06250C 8006190C 02581021 */ addu $v0, $s2, $t8 -/* 062510 80061910 C4460000 */ lwc1 $f6, ($v0) -/* 062514 80061914 00000000 */ nop -/* 062518 80061918 460034A4 */ cvt.w.s $f18, $f6 -/* 06251C 8006191C 44D9F800 */ ctc1 $t9, $31 -/* 062520 80061920 440F9000 */ mfc1 $t7, $f18 -/* 062524 80061924 00000000 */ nop -/* 062528 80061928 444EF800 */ cfc1 $t6, $31 -/* 06252C 8006192C A46F0000 */ sh $t7, ($v1) -/* 062530 80061930 35C10003 */ ori $at, $t6, 3 -/* 062534 80061934 38210002 */ xori $at, $at, 2 -/* 062538 80061938 44C1F800 */ ctc1 $at, $31 -/* 06253C 8006193C C4440004 */ lwc1 $f4, 4($v0) -/* 062540 80061940 37210003 */ ori $at, $t9, 3 -/* 062544 80061944 46002424 */ cvt.w.s $f16, $f4 -/* 062548 80061948 38210002 */ xori $at, $at, 2 -/* 06254C 8006194C 44188000 */ mfc1 $t8, $f16 -/* 062550 80061950 44CEF800 */ ctc1 $t6, $31 -/* 062554 80061954 A4780002 */ sh $t8, 2($v1) -/* 062558 80061958 C4480008 */ lwc1 $f8, 8($v0) -/* 06255C 8006195C 44C1F800 */ ctc1 $at, $31 -/* 062560 80061960 00047400 */ sll $t6, $a0, 0x10 -/* 062564 80061964 460042A4 */ cvt.w.s $f10, $f8 -/* 062568 80061968 000E2403 */ sra $a0, $t6, 0x10 -/* 06256C 8006196C 440F5000 */ mfc1 $t7, $f10 -/* 062570 80061970 44D9F800 */ ctc1 $t9, $31 -/* 062574 80061974 A46F0004 */ sh $t7, 4($v1) -/* 062578 80061978 85450024 */ lh $a1, 0x24($t2) -/* 06257C 8006197C 00000000 */ nop -/* 062580 80061980 0007CC00 */ sll $t9, $a3, 0x10 -.L80061984: -/* 062584 80061984 00193C03 */ sra $a3, $t9, 0x10 -/* 062588 80061988 00E5082A */ slt $at, $a3, $a1 -/* 06258C 8006198C 1420FFCF */ bnez $at, .L800618CC -/* 062590 80061990 0007C840 */ sll $t9, $a3, 1 -.L80061994: -/* 062594 80061994 8FA900A0 */ lw $t1, 0xa0($sp) -/* 062598 80061998 02E02025 */ move $a0, $s7 -/* 06259C 8006199C 0C01C450 */ jal func_80071140 -/* 0625A0 800619A0 AD490040 */ sw $t1, 0x40($t2) -/* 0625A4 800619A4 0C01C450 */ jal func_80071140 -/* 0625A8 800619A8 02402025 */ move $a0, $s2 -/* 0625AC 800619AC 8FA400AC */ lw $a0, 0xac($sp) -/* 0625B0 800619B0 0C01C450 */ jal func_80071140 -/* 0625B4 800619B4 00000000 */ nop -.L800619B8: -/* 0625B8 800619B8 00001025 */ move $v0, $zero -.L800619BC: -/* 0625BC 800619BC 8FBF0044 */ lw $ra, 0x44($sp) -/* 0625C0 800619C0 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 0625C4 800619C4 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 0625C8 800619C8 8FB00020 */ lw $s0, 0x20($sp) -/* 0625CC 800619CC 8FB10024 */ lw $s1, 0x24($sp) -/* 0625D0 800619D0 8FB20028 */ lw $s2, 0x28($sp) -/* 0625D4 800619D4 8FB3002C */ lw $s3, 0x2c($sp) -/* 0625D8 800619D8 8FB40030 */ lw $s4, 0x30($sp) -/* 0625DC 800619DC 8FB50034 */ lw $s5, 0x34($sp) -/* 0625E0 800619E0 8FB60038 */ lw $s6, 0x38($sp) -/* 0625E4 800619E4 8FB7003C */ lw $s7, 0x3c($sp) -/* 0625E8 800619E8 8FBE0040 */ lw $fp, 0x40($sp) -/* 0625EC 800619EC 03E00008 */ jr $ra -/* 0625F0 800619F0 27BD00B8 */ addiu $sp, $sp, 0xb8 - -glabel func_800619F4 -/* 0625F4 800619F4 3C018012 */ lui $at, 0x8012 -/* 0625F8 800619F8 03E00008 */ jr $ra -/* 0625FC 800619FC AC24D640 */ sw $a0, -0x29c0($at) - -glabel func_80061A00 -/* 062600 80061A00 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 062604 80061A04 3C0E8012 */ lui $t6, %hi(D_8011D638) # $t6, 0x8012 -/* 062608 80061A08 8DCED638 */ lw $t6, %lo(D_8011D638)($t6) -/* 06260C 80061A0C 00057840 */ sll $t7, $a1, 1 -/* 062610 80061A10 AFBF003C */ sw $ra, 0x3c($sp) -/* 062614 80061A14 AFBE0038 */ sw $fp, 0x38($sp) -/* 062618 80061A18 AFB70034 */ sw $s7, 0x34($sp) -/* 06261C 80061A1C AFB60030 */ sw $s6, 0x30($sp) -/* 062620 80061A20 AFB5002C */ sw $s5, 0x2c($sp) -/* 062624 80061A24 AFB40028 */ sw $s4, 0x28($sp) -/* 062628 80061A28 AFB30024 */ sw $s3, 0x24($sp) -/* 06262C 80061A2C AFB20020 */ sw $s2, 0x20($sp) -/* 062630 80061A30 AFB1001C */ sw $s1, 0x1c($sp) -/* 062634 80061A34 AFB00018 */ sw $s0, 0x18($sp) -/* 062638 80061A38 01CF1021 */ addu $v0, $t6, $t7 -/* 06263C 80061A3C 84500000 */ lh $s0, ($v0) -/* 062640 80061A40 84430002 */ lh $v1, 2($v0) -/* 062644 80061A44 0080A825 */ move $s5, $a0 -/* 062648 80061A48 16030004 */ bne $s0, $v1, .L80061A5C -/* 06264C 80061A4C 3C028012 */ lui $v0, %hi(D_8011D640) # $v0, 0x8012 -/* 062650 80061A50 A4800048 */ sh $zero, 0x48($a0) -/* 062654 80061A54 10000061 */ b .L80061BDC -/* 062658 80061A58 00001025 */ move $v0, $zero -.L80061A5C: -/* 06265C 80061A5C 8C42D640 */ lw $v0, %lo(D_8011D640)($v0) -/* 062660 80061A60 3C05FF00 */ lui $a1, (0xFF0000FF >> 16) # lui $a1, 0xff00 -/* 062664 80061A64 10400006 */ beqz $v0, .L80061A80 -/* 062668 80061A68 34A500FF */ ori $a1, (0xFF0000FF & 0xFFFF) # ori $a1, $a1, 0xff -/* 06266C 80061A6C 02022021 */ addu $a0, $s0, $v0 -/* 062670 80061A70 0083082A */ slt $at, $a0, $v1 -/* 062674 80061A74 10200003 */ beqz $at, .L80061A84 -/* 062678 80061A78 0070C023 */ subu $t8, $v1, $s0 -/* 06267C 80061A7C 00801825 */ move $v1, $a0 -.L80061A80: -/* 062680 80061A80 0070C023 */ subu $t8, $v1, $s0 -.L80061A84: -/* 062684 80061A84 A6B80048 */ sh $t8, 0x48($s5) -/* 062688 80061A88 86A40048 */ lh $a0, 0x48($s5) -/* 06268C 80061A8C AFA30040 */ sw $v1, 0x40($sp) -/* 062690 80061A90 0004C8C0 */ sll $t9, $a0, 3 -/* 062694 80061A94 0C01C344 */ jal func_80070D10 -/* 062698 80061A98 03202025 */ move $a0, $t9 -/* 06269C 80061A9C 14400003 */ bnez $v0, .L80061AAC -/* 0626A0 80061AA0 AEA20044 */ sw $v0, 0x44($s5) -/* 0626A4 80061AA4 1000004D */ b .L80061BDC -/* 0626A8 80061AA8 24020001 */ li $v0, 1 -.L80061AAC: -/* 0626AC 80061AAC 0000F025 */ move $fp, $zero -/* 0626B0 80061AB0 0010A080 */ sll $s4, $s0, 2 -/* 0626B4 80061AB4 00008825 */ move $s1, $zero -.L80061AB8: -/* 0626B8 80061AB8 3C088012 */ lui $t0, %hi(D_8011D63C) # $t0, 0x8012 -/* 0626BC 80061ABC 8D08D63C */ lw $t0, %lo(D_8011D63C)($t0) -/* 0626C0 80061AC0 24040020 */ li $a0, 32 -/* 0626C4 80061AC4 01141021 */ addu $v0, $t0, $s4 -/* 0626C8 80061AC8 8C520000 */ lw $s2, ($v0) -/* 0626CC 80061ACC 8C490004 */ lw $t1, 4($v0) -/* 0626D0 80061AD0 02402825 */ move $a1, $s2 -/* 0626D4 80061AD4 0C031877 */ jal func_800C61DC -/* 0626D8 80061AD8 01329823 */ subu $s3, $t1, $s2 -/* 0626DC 80061ADC 24440080 */ addiu $a0, $v0, 0x80 -/* 0626E0 80061AE0 3C05FF00 */ lui $a1, (0xFF0000FF >> 16) # lui $a1, 0xff00 -/* 0626E4 80061AE4 0080B025 */ move $s6, $a0 -/* 0626E8 80061AE8 0C01C344 */ jal func_80070D10 -/* 0626EC 80061AEC 34A500FF */ ori $a1, (0xFF0000FF & 0xFFFF) # ori $a1, $a1, 0xff -/* 0626F0 80061AF0 8EAA0044 */ lw $t2, 0x44($s5) -/* 0626F4 80061AF4 02403025 */ move $a2, $s2 -/* 0626F8 80061AF8 01515821 */ addu $t3, $t2, $s1 -/* 0626FC 80061AFC AD620000 */ sw $v0, ($t3) -/* 062700 80061B00 8EA40044 */ lw $a0, 0x44($s5) -/* 062704 80061B04 8FB70040 */ lw $s7, 0x40($sp) -/* 062708 80061B08 00916021 */ addu $t4, $a0, $s1 -/* 06270C 80061B0C 8D830000 */ lw $v1, ($t4) -/* 062710 80061B10 02603825 */ move $a3, $s3 -/* 062714 80061B14 14600014 */ bnez $v1, .L80061B68 -/* 062718 80061B18 00767821 */ addu $t7, $v1, $s6 -/* 06271C 80061B1C 1BC0000D */ blez $fp, .L80061B54 -/* 062720 80061B20 00008025 */ move $s0, $zero -/* 062724 80061B24 00008825 */ move $s1, $zero -.L80061B28: -/* 062728 80061B28 8EAD0044 */ lw $t5, 0x44($s5) -/* 06272C 80061B2C 00000000 */ nop -/* 062730 80061B30 01B17021 */ addu $t6, $t5, $s1 -/* 062734 80061B34 8DC40000 */ lw $a0, ($t6) -/* 062738 80061B38 0C01C450 */ jal func_80071140 -/* 06273C 80061B3C 00000000 */ nop -/* 062740 80061B40 26100001 */ addiu $s0, $s0, 1 -/* 062744 80061B44 161EFFF8 */ bne $s0, $fp, .L80061B28 -/* 062748 80061B48 26310008 */ addiu $s1, $s1, 8 -/* 06274C 80061B4C 8EA40044 */ lw $a0, 0x44($s5) -/* 062750 80061B50 00000000 */ nop -.L80061B54: -/* 062754 80061B54 0C01C450 */ jal func_80071140 -/* 062758 80061B58 00000000 */ nop -/* 06275C 80061B5C AEA00044 */ sw $zero, 0x44($s5) -/* 062760 80061B60 1000001E */ b .L80061BDC -/* 062764 80061B64 24020001 */ li $v0, 1 -.L80061B68: -/* 062768 80061B68 01F38023 */ subu $s0, $t7, $s3 -/* 06276C 80061B6C 0017C080 */ sll $t8, $s7, 2 -/* 062770 80061B70 0300B825 */ move $s7, $t8 -/* 062774 80061B74 02002825 */ move $a1, $s0 -/* 062778 80061B78 0C01DB9A */ jal func_80076E68 -/* 06277C 80061B7C 24040020 */ li $a0, 32 -/* 062780 80061B80 8EB90044 */ lw $t9, 0x44($s5) -/* 062784 80061B84 02002025 */ move $a0, $s0 -/* 062788 80061B88 03314021 */ addu $t0, $t9, $s1 -/* 06278C 80061B8C 8D050000 */ lw $a1, ($t0) -/* 062790 80061B90 0C031886 */ jal func_800C6218 -/* 062794 80061B94 00000000 */ nop -/* 062798 80061B98 8EA90044 */ lw $t1, 0x44($s5) -/* 06279C 80061B9C 26940004 */ addiu $s4, $s4, 4 -/* 0627A0 80061BA0 01311821 */ addu $v1, $t1, $s1 -/* 0627A4 80061BA4 8C640000 */ lw $a0, ($v1) -/* 0627A8 80061BA8 0297082A */ slt $at, $s4, $s7 -/* 0627AC 80061BAC 8C8A0000 */ lw $t2, ($a0) -/* 0627B0 80061BB0 27DE0001 */ addiu $fp, $fp, 1 -/* 0627B4 80061BB4 AC6A0004 */ sw $t2, 4($v1) -/* 0627B8 80061BB8 8EAB0044 */ lw $t3, 0x44($s5) -/* 0627BC 80061BBC 00000000 */ nop -/* 0627C0 80061BC0 01711821 */ addu $v1, $t3, $s1 -/* 0627C4 80061BC4 8C6C0000 */ lw $t4, ($v1) -/* 0627C8 80061BC8 26310008 */ addiu $s1, $s1, 8 -/* 0627CC 80061BCC 258D0004 */ addiu $t5, $t4, 4 -/* 0627D0 80061BD0 1420FFB9 */ bnez $at, .L80061AB8 -/* 0627D4 80061BD4 AC6D0000 */ sw $t5, ($v1) -/* 0627D8 80061BD8 00001025 */ move $v0, $zero -.L80061BDC: -/* 0627DC 80061BDC 8FBF003C */ lw $ra, 0x3c($sp) -/* 0627E0 80061BE0 8FB00018 */ lw $s0, 0x18($sp) -/* 0627E4 80061BE4 8FB1001C */ lw $s1, 0x1c($sp) -/* 0627E8 80061BE8 8FB20020 */ lw $s2, 0x20($sp) -/* 0627EC 80061BEC 8FB30024 */ lw $s3, 0x24($sp) -/* 0627F0 80061BF0 8FB40028 */ lw $s4, 0x28($sp) -/* 0627F4 80061BF4 8FB5002C */ lw $s5, 0x2c($sp) -/* 0627F8 80061BF8 8FB60030 */ lw $s6, 0x30($sp) -/* 0627FC 80061BFC 8FB70034 */ lw $s7, 0x34($sp) -/* 062800 80061C00 8FBE0038 */ lw $fp, 0x38($sp) -/* 062804 80061C04 03E00008 */ jr $ra -/* 062808 80061C08 27BD0048 */ addiu $sp, $sp, 0x48 - -glabel func_80061C0C -/* 06280C 80061C0C 8082003A */ lb $v0, 0x3a($a0) -/* 062810 80061C10 00000000 */ nop -/* 062814 80061C14 04410004 */ bgez $v0, .L80061C28 -/* 062818 80061C18 00000000 */ nop -/* 06281C 80061C1C A080003A */ sb $zero, 0x3a($a0) -/* 062820 80061C20 8082003A */ lb $v0, 0x3a($a0) -/* 062824 80061C24 00000000 */ nop -.L80061C28: -/* 062828 80061C28 8C8E0040 */ lw $t6, 0x40($a0) -/* 06282C 80061C2C 00000000 */ nop -/* 062830 80061C30 81C30055 */ lb $v1, 0x55($t6) -/* 062834 80061C34 00000000 */ nop -/* 062838 80061C38 2463FFFF */ addiu $v1, $v1, -1 -/* 06283C 80061C3C 0062082A */ slt $at, $v1, $v0 -/* 062840 80061C40 10200004 */ beqz $at, .L80061C54 -/* 062844 80061C44 00000000 */ nop -/* 062848 80061C48 A083003A */ sb $v1, 0x3a($a0) -/* 06284C 80061C4C 8082003A */ lb $v0, 0x3a($a0) -/* 062850 80061C50 00000000 */ nop -.L80061C54: -/* 062854 80061C54 8C8F0068 */ lw $t7, 0x68($a0) -/* 062858 80061C58 0002C080 */ sll $t8, $v0, 2 -/* 06285C 80061C5C 01F8C821 */ addu $t9, $t7, $t8 -/* 062860 80061C60 8F250000 */ lw $a1, ($t9) -/* 062864 80061C64 00000000 */ nop -/* 062868 80061C68 8CA60000 */ lw $a2, ($a1) -/* 06286C 80061C6C 00000000 */ nop -/* 062870 80061C70 8CC80044 */ lw $t0, 0x44($a2) -/* 062874 80061C74 00000000 */ nop -/* 062878 80061C78 11000029 */ beqz $t0, .L80061D20 -/* 06287C 80061C7C 00000000 */ nop -/* 062880 80061C80 8082003B */ lb $v0, 0x3b($a0) -/* 062884 80061C84 2418FFFF */ li $t8, -1 -/* 062888 80061C88 04410004 */ bgez $v0, .L80061C9C -/* 06288C 80061C8C 00000000 */ nop -/* 062890 80061C90 A080003B */ sb $zero, 0x3b($a0) -/* 062894 80061C94 8082003B */ lb $v0, 0x3b($a0) -/* 062898 80061C98 00000000 */ nop -.L80061C9C: -/* 06289C 80061C9C 84C30048 */ lh $v1, 0x48($a2) -/* 0628A0 80061CA0 00000000 */ nop -/* 0628A4 80061CA4 0043082A */ slt $at, $v0, $v1 -/* 0628A8 80061CA8 14200004 */ bnez $at, .L80061CBC -/* 0628AC 80061CAC 2469FFFF */ addiu $t1, $v1, -1 -/* 0628B0 80061CB0 A089003B */ sb $t1, 0x3b($a0) -/* 0628B4 80061CB4 84C30048 */ lh $v1, 0x48($a2) -/* 0628B8 80061CB8 00000000 */ nop -.L80061CBC: -/* 0628BC 80061CBC 18600009 */ blez $v1, .L80061CE4 -/* 0628C0 80061CC0 00001825 */ move $v1, $zero -/* 0628C4 80061CC4 808B003B */ lb $t3, 0x3b($a0) -/* 0628C8 80061CC8 8CCA0044 */ lw $t2, 0x44($a2) -/* 0628CC 80061CCC 000B60C0 */ sll $t4, $t3, 3 -/* 0628D0 80061CD0 014C6821 */ addu $t5, $t2, $t4 -/* 0628D4 80061CD4 8DA30004 */ lw $v1, 4($t5) -/* 0628D8 80061CD8 10000002 */ b .L80061CE4 -/* 0628DC 80061CDC 2463FFFE */ addiu $v1, $v1, -2 -/* 0628E0 80061CE0 00001825 */ move $v1, $zero -.L80061CE4: -/* 0628E4 80061CE4 84820018 */ lh $v0, 0x18($a0) -/* 0628E8 80061CE8 00000000 */ nop -/* 0628EC 80061CEC 00027103 */ sra $t6, $v0, 4 -/* 0628F0 80061CF0 05C10006 */ bgez $t6, .L80061D0C -/* 0628F4 80061CF4 01C01025 */ move $v0, $t6 -/* 0628F8 80061CF8 A4830018 */ sh $v1, 0x18($a0) -/* 0628FC 80061CFC 84820018 */ lh $v0, 0x18($a0) -/* 062900 80061D00 00000000 */ nop -/* 062904 80061D04 00027903 */ sra $t7, $v0, 4 -/* 062908 80061D08 01E01025 */ move $v0, $t7 -.L80061D0C: -/* 06290C 80061D0C 0062082A */ slt $at, $v1, $v0 -/* 062910 80061D10 10200003 */ beqz $at, .L80061D20 -/* 062914 80061D14 00000000 */ nop -/* 062918 80061D18 A4800018 */ sh $zero, 0x18($a0) -/* 06291C 80061D1C A4B80010 */ sh $t8, 0x10($a1) -.L80061D20: -/* 062920 80061D20 03E00008 */ jr $ra -/* 062924 80061D24 00000000 */ nop - -/* 062928 80061D28 00000000 */ nop -/* 06292C 80061D2C 00000000 */ nop diff --git a/asm/unknown_061D30.s b/asm/unknown_061D30.s deleted file mode 100755 index 269dab71..00000000 --- a/asm/unknown_061D30.s +++ /dev/null @@ -1,2027 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_80061D30 -/* 062930 80061D30 27BDFFF8 */ addiu $sp, $sp, -8 -/* 062934 80061D34 AFB10004 */ sw $s1, 4($sp) -/* 062938 80061D38 AFB00000 */ sw $s0, ($sp) -/* 06293C 80061D3C 8088003A */ lb $t0, 0x3a($a0) -/* 062940 80061D40 05030003 */ bgezl $t0, .L80061D50 -/* 062944 80061D44 8C890040 */ lw $t1, 0x40($a0) -/* 062948 80061D48 00004025 */ move $t0, $zero -/* 06294C 80061D4C 8C890040 */ lw $t1, 0x40($a0) -.L80061D50: -/* 062950 80061D50 812A0055 */ lb $t2, 0x55($t1) -/* 062954 80061D54 010A082A */ slt $at, $t0, $t2 -/* 062958 80061D58 54200003 */ bnezl $at, .L80061D68 -/* 06295C 80061D5C 8C890068 */ lw $t1, 0x68($a0) -/* 062960 80061D60 01404025 */ move $t0, $t2 -/* 062964 80061D64 8C890068 */ lw $t1, 0x68($a0) -.L80061D68: -/* 062968 80061D68 00084080 */ sll $t0, $t0, 2 -/* 06296C 80061D6C 01284820 */ add $t1, $t1, $t0 -/* 062970 80061D70 8D250000 */ lw $a1, ($t1) -/* 062974 80061D74 8CA60000 */ lw $a2, ($a1) -/* 062978 80061D78 8CC80044 */ lw $t0, 0x44($a2) -/* 06297C 80061D7C 55000004 */ bnezl $t0, .L80061D90 -/* 062980 80061D80 84990018 */ lh $t9, 0x18($a0) -/* 062984 80061D84 1000013D */ b .L8006227C -/* 062988 80061D88 00001025 */ move $v0, $zero -/* 06298C 80061D8C 84990018 */ lh $t9, 0x18($a0) -.L80061D90: -/* 062990 80061D90 84A80014 */ lh $t0, 0x14($a1) -/* 062994 80061D94 8087003B */ lb $a3, 0x3b($a0) -/* 062998 80061D98 17280006 */ bne $t9, $t0, .L80061DB4 -/* 06299C 80061D9C 00000000 */ nop -/* 0629A0 80061DA0 84A80010 */ lh $t0, 0x10($a1) -/* 0629A4 80061DA4 14E80003 */ bne $a3, $t0, .L80061DB4 -/* 0629A8 80061DA8 00000000 */ nop -/* 0629AC 80061DAC 10000133 */ b .L8006227C -/* 0629B0 80061DB0 00001025 */ move $v0, $zero -.L80061DB4: -/* 0629B4 80061DB4 04E30003 */ bgezl $a3, .L80061DC4 -/* 0629B8 80061DB8 84C80048 */ lh $t0, 0x48($a2) -/* 0629BC 80061DBC 00003825 */ move $a3, $zero -/* 0629C0 80061DC0 84C80048 */ lh $t0, 0x48($a2) -.L80061DC4: -/* 0629C4 80061DC4 00E8082A */ slt $at, $a3, $t0 -/* 0629C8 80061DC8 14200002 */ bnez $at, .L80061DD4 -/* 0629CC 80061DCC 00000000 */ nop -/* 0629D0 80061DD0 2507FFFF */ addiu $a3, $t0, -1 -.L80061DD4: -/* 0629D4 80061DD4 19000006 */ blez $t0, .L80061DF0 -/* 0629D8 80061DD8 00005025 */ move $t2, $zero -/* 0629DC 80061DDC 8CC90044 */ lw $t1, 0x44($a2) -/* 0629E0 80061DE0 000710C0 */ sll $v0, $a3, 3 -/* 0629E4 80061DE4 01224820 */ add $t1, $t1, $v0 -/* 0629E8 80061DE8 8D2A0004 */ lw $t2, 4($t1) -/* 0629EC 80061DEC 214AFFFE */ addi $t2, $t2, -2 -.L80061DF0: -/* 0629F0 80061DF0 00192102 */ srl $a0, $t9, 4 -/* 0629F4 80061DF4 04830004 */ bgezl $a0, .L80061E08 -/* 0629F8 80061DF8 0144082A */ slt $at, $t2, $a0 -/* 0629FC 80061DFC 0140C825 */ move $t9, $t2 -/* 062A00 80061E00 000A2102 */ srl $a0, $t2, 4 -/* 062A04 80061E04 0144082A */ slt $at, $t2, $a0 -.L80061E08: -/* 062A08 80061E08 50200006 */ beql $at, $zero, .L80061E24 -/* 062A0C 80061E0C 84A80010 */ lh $t0, 0x10($a1) -/* 062A10 80061E10 2408FFFF */ li $t0, -1 -/* 062A14 80061E14 0000C825 */ move $t9, $zero -/* 062A18 80061E18 00002025 */ move $a0, $zero -/* 062A1C 80061E1C A4A80010 */ sh $t0, 0x10($a1) -/* 062A20 80061E20 84A80010 */ lh $t0, 0x10($a1) -.L80061E24: -/* 062A24 80061E24 8CB1000C */ lw $s1, 0xc($a1) -/* 062A28 80061E28 50E80004 */ beql $a3, $t0, .L80061E3C -/* 062A2C 80061E2C 84B00012 */ lh $s0, 0x12($a1) -/* 062A30 80061E30 10000002 */ b .L80061E3C -/* 062A34 80061E34 2410FFFF */ li $s0, -1 -/* 062A38 80061E38 84B00012 */ lh $s0, 0x12($a1) -.L80061E3C: -/* 062A3C 80061E3C A4A70010 */ sh $a3, 0x10($a1) -/* 062A40 80061E40 A4B90014 */ sh $t9, 0x14($a1) -/* 062A44 80061E44 A4A40012 */ sh $a0, 0x12($a1) -/* 062A48 80061E48 10800006 */ beqz $a0, .L80061E64 -/* 062A4C 80061E4C 3338000F */ andi $t8, $t9, 0xf -/* 062A50 80061E50 2401FFFF */ li $at, -1 -/* 062A54 80061E54 52010004 */ beql $s0, $at, .L80061E68 -/* 062A58 80061E58 8CC20044 */ lw $v0, 0x44($a2) -/* 062A5C 80061E5C 10000026 */ b .L80061EF8 -/* 062A60 80061E60 84C3004A */ lh $v1, 0x4a($a2) -.L80061E64: -/* 062A64 80061E64 8CC20044 */ lw $v0, 0x44($a2) -.L80061E68: -/* 062A68 80061E68 000718C0 */ sll $v1, $a3, 3 -/* 062A6C 80061E6C 8CCD004C */ lw $t5, 0x4c($a2) -/* 062A70 80061E70 00431020 */ add $v0, $v0, $v1 -/* 062A74 80061E74 8C4E0000 */ lw $t6, ($v0) -/* 062A78 80061E78 84C20024 */ lh $v0, 0x24($a2) -/* 062A7C 80061E7C 8CCF0004 */ lw $t7, 4($a2) -/* 062A80 80061E80 25CE000C */ addiu $t6, $t6, 0xc -/* 062A84 80061E84 00021040 */ sll $v0, $v0, 1 -/* 062A88 80061E88 01A25820 */ add $t3, $t5, $v0 -.L80061E8C: -/* 062A8C 80061E8C 85A20000 */ lh $v0, ($t5) -/* 062A90 80061E90 2401FFFF */ li $at, -1 -/* 062A94 80061E94 50410013 */ beql $v0, $at, .L80061EE4 -/* 062A98 80061E98 25AD0002 */ addiu $t5, $t5, 2 -/* 062A9C 80061E9C 00021880 */ sll $v1, $v0, 2 -/* 062AA0 80061EA0 00021040 */ sll $v0, $v0, 1 -/* 062AA4 80061EA4 00431020 */ add $v0, $v0, $v1 -/* 062AA8 80061EA8 02221820 */ add $v1, $s1, $v0 -/* 062AAC 80061EAC 01C21020 */ add $v0, $t6, $v0 -/* 062AB0 80061EB0 85E80000 */ lh $t0, ($t7) -/* 062AB4 80061EB4 84490000 */ lh $t1, ($v0) -/* 062AB8 80061EB8 01095020 */ add $t2, $t0, $t1 -/* 062ABC 80061EBC A46A0000 */ sh $t2, ($v1) -/* 062AC0 80061EC0 85E80002 */ lh $t0, 2($t7) -/* 062AC4 80061EC4 84490002 */ lh $t1, 2($v0) -/* 062AC8 80061EC8 01095020 */ add $t2, $t0, $t1 -/* 062ACC 80061ECC A46A0002 */ sh $t2, 2($v1) -/* 062AD0 80061ED0 85E80004 */ lh $t0, 4($t7) -/* 062AD4 80061ED4 84490004 */ lh $t1, 4($v0) -/* 062AD8 80061ED8 01095020 */ add $t2, $t0, $t1 -/* 062ADC 80061EDC A46A0004 */ sh $t2, 4($v1) -/* 062AE0 80061EE0 25AD0002 */ addiu $t5, $t5, 2 -.L80061EE4: -/* 062AE4 80061EE4 01AB082A */ slt $at, $t5, $t3 -/* 062AE8 80061EE8 1420FFE8 */ bnez $at, .L80061E8C -/* 062AEC 80061EEC 25EF000A */ addiu $t7, $t7, 0xa -/* 062AF0 80061EF0 00008025 */ move $s0, $zero -/* 062AF4 80061EF4 84C3004A */ lh $v1, 0x4a($a2) -.L80061EF8: -/* 062AF8 80061EF8 0204082A */ slt $at, $s0, $a0 -/* 062AFC 80061EFC 00631020 */ add $v0, $v1, $v1 -/* 062B00 80061F00 00436020 */ add $t4, $v0, $v1 -/* 062B04 80061F04 10200026 */ beqz $at, .L80061FA0 -/* 062B08 80061F08 258C000C */ addiu $t4, $t4, 0xc -/* 062B0C 80061F0C 8CC20044 */ lw $v0, 0x44($a2) -/* 062B10 80061F10 000718C0 */ sll $v1, $a3, 3 -/* 062B14 80061F14 00431020 */ add $v0, $v0, $v1 -/* 062B18 80061F18 26030002 */ addiu $v1, $s0, 2 -/* 062B1C 80061F1C 01830019 */ multu $t4, $v1 -/* 062B20 80061F20 8C4A0000 */ lw $t2, ($v0) -/* 062B24 80061F24 00001812 */ mflo $v1 -/* 062B28 80061F28 01435020 */ add $t2, $t2, $v1 -/* 062B2C 80061F2C 00000000 */ nop -/* 062B30 80061F30 84C2004A */ lh $v0, 0x4a($a2) -.L80061F34: -/* 062B34 80061F34 01407025 */ move $t6, $t2 -/* 062B38 80061F38 02206825 */ move $t5, $s1 -/* 062B3C 80061F3C 00021880 */ sll $v1, $v0, 2 -/* 062B40 80061F40 00021040 */ sll $v0, $v0, 1 -/* 062B44 80061F44 00431020 */ add $v0, $v0, $v1 -/* 062B48 80061F48 014C5020 */ add $t2, $t2, $t4 -/* 062B4C 80061F4C 01A25820 */ add $t3, $t5, $v0 -.L80061F50: -/* 062B50 80061F50 85A80000 */ lh $t0, ($t5) -/* 062B54 80061F54 81C90000 */ lb $t1, ($t6) -/* 062B58 80061F58 25AD0006 */ addiu $t5, $t5, 6 -/* 062B5C 80061F5C 01AB082A */ slt $at, $t5, $t3 -/* 062B60 80061F60 01094020 */ add $t0, $t0, $t1 -/* 062B64 80061F64 A5A8FFFA */ sh $t0, -6($t5) -/* 062B68 80061F68 85A8FFFC */ lh $t0, -4($t5) -/* 062B6C 80061F6C 81C90001 */ lb $t1, 1($t6) -/* 062B70 80061F70 25CE0003 */ addiu $t6, $t6, 3 -/* 062B74 80061F74 01094020 */ add $t0, $t0, $t1 -/* 062B78 80061F78 A5A8FFFC */ sh $t0, -4($t5) -/* 062B7C 80061F7C 85A8FFFE */ lh $t0, -2($t5) -/* 062B80 80061F80 81C9FFFF */ lb $t1, -1($t6) -/* 062B84 80061F84 01094020 */ add $t0, $t0, $t1 -/* 062B88 80061F88 1420FFF1 */ bnez $at, .L80061F50 -/* 062B8C 80061F8C A5A8FFFE */ sh $t0, -2($t5) -/* 062B90 80061F90 26100001 */ addiu $s0, $s0, 1 -/* 062B94 80061F94 0204082A */ slt $at, $s0, $a0 -/* 062B98 80061F98 5420FFE6 */ bnezl $at, .L80061F34 -/* 062B9C 80061F9C 84C2004A */ lh $v0, 0x4a($a2) -.L80061FA0: -/* 062BA0 80061FA0 0090082A */ slt $at, $a0, $s0 -/* 062BA4 80061FA4 50200027 */ beql $at, $zero, .L80062044 -/* 062BA8 80061FA8 8CC20044 */ lw $v0, 0x44($a2) -/* 062BAC 80061FAC 8CC20044 */ lw $v0, 0x44($a2) -/* 062BB0 80061FB0 000718C0 */ sll $v1, $a3, 3 -/* 062BB4 80061FB4 00431020 */ add $v0, $v0, $v1 -/* 062BB8 80061FB8 26030002 */ addiu $v1, $s0, 2 -/* 062BBC 80061FBC 01830019 */ multu $t4, $v1 -/* 062BC0 80061FC0 8C4A0000 */ lw $t2, ($v0) -/* 062BC4 80061FC4 00001812 */ mflo $v1 -/* 062BC8 80061FC8 01435020 */ add $t2, $t2, $v1 -/* 062BCC 80061FCC 00000000 */ nop -/* 062BD0 80061FD0 84C2004A */ lh $v0, 0x4a($a2) -.L80061FD4: -/* 062BD4 80061FD4 014C5022 */ sub $t2, $t2, $t4 -/* 062BD8 80061FD8 02206825 */ move $t5, $s1 -/* 062BDC 80061FDC 00021880 */ sll $v1, $v0, 2 -/* 062BE0 80061FE0 00021040 */ sll $v0, $v0, 1 -/* 062BE4 80061FE4 00431020 */ add $v0, $v0, $v1 -/* 062BE8 80061FE8 2610FFFF */ addiu $s0, $s0, -1 -/* 062BEC 80061FEC 01407025 */ move $t6, $t2 -/* 062BF0 80061FF0 01A25820 */ add $t3, $t5, $v0 -.L80061FF4: -/* 062BF4 80061FF4 85A80000 */ lh $t0, ($t5) -/* 062BF8 80061FF8 81C90000 */ lb $t1, ($t6) -/* 062BFC 80061FFC 25AD0006 */ addiu $t5, $t5, 6 -/* 062C00 80062000 01AB082A */ slt $at, $t5, $t3 -/* 062C04 80062004 01094022 */ sub $t0, $t0, $t1 -/* 062C08 80062008 A5A8FFFA */ sh $t0, -6($t5) -/* 062C0C 8006200C 85A8FFFC */ lh $t0, -4($t5) -/* 062C10 80062010 81C90001 */ lb $t1, 1($t6) -/* 062C14 80062014 25CE0003 */ addiu $t6, $t6, 3 -/* 062C18 80062018 01094022 */ sub $t0, $t0, $t1 -/* 062C1C 8006201C A5A8FFFC */ sh $t0, -4($t5) -/* 062C20 80062020 85A8FFFE */ lh $t0, -2($t5) -/* 062C24 80062024 81C9FFFF */ lb $t1, -1($t6) -/* 062C28 80062028 01094022 */ sub $t0, $t0, $t1 -/* 062C2C 8006202C 1420FFF1 */ bnez $at, .L80061FF4 -/* 062C30 80062030 A5A8FFFE */ sh $t0, -2($t5) -/* 062C34 80062034 0090082A */ slt $at, $a0, $s0 -/* 062C38 80062038 5420FFE6 */ bnezl $at, .L80061FD4 -/* 062C3C 8006203C 84C2004A */ lh $v0, 0x4a($a2) -/* 062C40 80062040 8CC20044 */ lw $v0, 0x44($a2) -.L80062044: -/* 062C44 80062044 000718C0 */ sll $v1, $a3, 3 -/* 062C48 80062048 3C0D8012 */ lui $t5, %hi(D_8011D644) # $t5, 0x8012 -/* 062C4C 8006204C 00431020 */ add $v0, $v0, $v1 -/* 062C50 80062050 8C4E0000 */ lw $t6, ($v0) -/* 062C54 80062054 26020002 */ addiu $v0, $s0, 2 -/* 062C58 80062058 01820019 */ multu $t4, $v0 -/* 062C5C 8006205C 84C2004A */ lh $v0, 0x4a($a2) -/* 062C60 80062060 8DADD644 */ lw $t5, %lo(D_8011D644)($t5) -/* 062C64 80062064 00001812 */ mflo $v1 -/* 062C68 80062068 01C37020 */ add $t6, $t6, $v1 -/* 062C6C 8006206C 00021880 */ sll $v1, $v0, 2 -/* 062C70 80062070 00021040 */ sll $v0, $v0, 1 -/* 062C74 80062074 00431020 */ add $v0, $v0, $v1 -/* 062C78 80062078 01A25820 */ add $t3, $t5, $v0 -.L8006207C: -/* 062C7C 8006207C 81C80000 */ lb $t0, ($t6) -/* 062C80 80062080 25AD0006 */ addiu $t5, $t5, 6 -/* 062C84 80062084 01AB082A */ slt $at, $t5, $t3 -/* 062C88 80062088 01180019 */ multu $t0, $t8 -/* 062C8C 8006208C 25CE0003 */ addiu $t6, $t6, 3 -/* 062C90 80062090 00004012 */ mflo $t0 -/* 062C94 80062094 00084102 */ srl $t0, $t0, 4 -/* 062C98 80062098 A5A8FFFA */ sh $t0, -6($t5) -/* 062C9C 8006209C 81C9FFFE */ lb $t1, -2($t6) -/* 062CA0 800620A0 01380019 */ multu $t1, $t8 -/* 062CA4 800620A4 00004812 */ mflo $t1 -/* 062CA8 800620A8 00094902 */ srl $t1, $t1, 4 -/* 062CAC 800620AC A5A9FFFC */ sh $t1, -4($t5) -/* 062CB0 800620B0 81CAFFFF */ lb $t2, -1($t6) -/* 062CB4 800620B4 01580019 */ multu $t2, $t8 -/* 062CB8 800620B8 00005012 */ mflo $t2 -/* 062CBC 800620BC 000A5102 */ srl $t2, $t2, 4 -/* 062CC0 800620C0 1420FFEE */ bnez $at, .L8006207C -/* 062CC4 800620C4 A5AAFFFE */ sh $t2, -2($t5) -/* 062CC8 800620C8 8CC20044 */ lw $v0, 0x44($a2) -/* 062CCC 800620CC 000718C0 */ sll $v1, $a3, 3 -/* 062CD0 800620D0 00431020 */ add $v0, $v0, $v1 -/* 062CD4 800620D4 10800006 */ beqz $a0, .L800620F0 -/* 062CD8 800620D8 8C4E0000 */ lw $t6, ($v0) -/* 062CDC 800620DC 24820001 */ addiu $v0, $a0, 1 -/* 062CE0 800620E0 01820019 */ multu $t4, $v0 -/* 062CE4 800620E4 00001812 */ mflo $v1 -/* 062CE8 800620E8 01C37020 */ add $t6, $t6, $v1 -/* 062CEC 800620EC 25CEFFF4 */ addiu $t6, $t6, -0xc -.L800620F0: -/* 062CF0 800620F0 81C20000 */ lb $v0, ($t6) -/* 062CF4 800620F4 91C30001 */ lbu $v1, 1($t6) -/* 062CF8 800620F8 00021200 */ sll $v0, $v0, 8 -/* 062CFC 800620FC 00434025 */ or $t0, $v0, $v1 -/* 062D00 80062100 81C20002 */ lb $v0, 2($t6) -/* 062D04 80062104 91C30003 */ lbu $v1, 3($t6) -/* 062D08 80062108 00021200 */ sll $v0, $v0, 8 -/* 062D0C 8006210C 00434825 */ or $t1, $v0, $v1 -/* 062D10 80062110 81C20004 */ lb $v0, 4($t6) -/* 062D14 80062114 91C30005 */ lbu $v1, 5($t6) -/* 062D18 80062118 00021200 */ sll $v0, $v0, 8 -/* 062D1C 8006211C 00435025 */ or $t2, $v0, $v1 -/* 062D20 80062120 81C2000A */ lb $v0, 0xa($t6) -/* 062D24 80062124 91C3000B */ lbu $v1, 0xb($t6) -/* 062D28 80062128 01CC7020 */ add $t6, $t6, $t4 -/* 062D2C 8006212C 00021200 */ sll $v0, $v0, 8 -/* 062D30 80062130 14800003 */ bnez $a0, .L80062140 -/* 062D34 80062134 00435825 */ or $t3, $v0, $v1 -/* 062D38 80062138 01CC7020 */ add $t6, $t6, $t4 -/* 062D3C 8006213C 25CEFFF4 */ addiu $t6, $t6, -0xc -.L80062140: -/* 062D40 80062140 81C20000 */ lb $v0, ($t6) -/* 062D44 80062144 91C30001 */ lbu $v1, 1($t6) -/* 062D48 80062148 3C198012 */ lui $t9, %hi(D_8011D644) # $t9, 0x8012 -/* 062D4C 8006214C 00021200 */ sll $v0, $v0, 8 -/* 062D50 80062150 00431025 */ or $v0, $v0, $v1 -/* 062D54 80062154 00481022 */ sub $v0, $v0, $t0 -/* 062D58 80062158 00580019 */ multu $v0, $t8 -/* 062D5C 8006215C 00001012 */ mflo $v0 -/* 062D60 80062160 00021102 */ srl $v0, $v0, 4 -/* 062D64 80062164 01024020 */ add $t0, $t0, $v0 -/* 062D68 80062168 A4A80016 */ sh $t0, 0x16($a1) -/* 062D6C 8006216C 81C20002 */ lb $v0, 2($t6) -/* 062D70 80062170 91C30003 */ lbu $v1, 3($t6) -/* 062D74 80062174 00021200 */ sll $v0, $v0, 8 -/* 062D78 80062178 00431025 */ or $v0, $v0, $v1 -/* 062D7C 8006217C 00491022 */ sub $v0, $v0, $t1 -/* 062D80 80062180 00580019 */ multu $v0, $t8 -/* 062D84 80062184 00001012 */ mflo $v0 -/* 062D88 80062188 00021102 */ srl $v0, $v0, 4 -/* 062D8C 8006218C 01224820 */ add $t1, $t1, $v0 -/* 062D90 80062190 A4A90018 */ sh $t1, 0x18($a1) -/* 062D94 80062194 81C20004 */ lb $v0, 4($t6) -/* 062D98 80062198 91C30005 */ lbu $v1, 5($t6) -/* 062D9C 8006219C 00021200 */ sll $v0, $v0, 8 -/* 062DA0 800621A0 00431025 */ or $v0, $v0, $v1 -/* 062DA4 800621A4 004A1022 */ sub $v0, $v0, $t2 -/* 062DA8 800621A8 00580019 */ multu $v0, $t8 -/* 062DAC 800621AC 00001012 */ mflo $v0 -/* 062DB0 800621B0 00021102 */ srl $v0, $v0, 4 -/* 062DB4 800621B4 01425020 */ add $t2, $t2, $v0 -/* 062DB8 800621B8 A4AA001A */ sh $t2, 0x1a($a1) -/* 062DBC 800621BC 81C2000A */ lb $v0, 0xa($t6) -/* 062DC0 800621C0 91C3000B */ lbu $v1, 0xb($t6) -/* 062DC4 800621C4 00021200 */ sll $v0, $v0, 8 -/* 062DC8 800621C8 00431025 */ or $v0, $v0, $v1 -/* 062DCC 800621CC 004B1022 */ sub $v0, $v0, $t3 -/* 062DD0 800621D0 00580019 */ multu $v0, $t8 -/* 062DD4 800621D4 24A30004 */ addiu $v1, $a1, 4 -/* 062DD8 800621D8 00001012 */ mflo $v0 -/* 062DDC 800621DC 00021102 */ srl $v0, $v0, 4 -/* 062DE0 800621E0 01625820 */ add $t3, $t3, $v0 -/* 062DE4 800621E4 80A2001F */ lb $v0, 0x1f($a1) -/* 062DE8 800621E8 A4AB001C */ sh $t3, 0x1c($a1) -/* 062DEC 800621EC 38420001 */ xori $v0, $v0, 1 -/* 062DF0 800621F0 A0A2001F */ sb $v0, 0x1f($a1) -/* 062DF4 800621F4 00021080 */ sll $v0, $v0, 2 -/* 062DF8 800621F8 00621820 */ add $v1, $v1, $v0 -/* 062DFC 800621FC 84C20024 */ lh $v0, 0x24($a2) -/* 062E00 80062200 8CCD004C */ lw $t5, 0x4c($a2) -/* 062E04 80062204 8C6E0000 */ lw $t6, ($v1) -/* 062E08 80062208 00021040 */ sll $v0, $v0, 1 -/* 062E0C 8006220C 8F39D644 */ lw $t9, %lo(D_8011D644)($t9) -/* 062E10 80062210 01A25820 */ add $t3, $t5, $v0 -.L80062214: -/* 062E14 80062214 85A20000 */ lh $v0, ($t5) -/* 062E18 80062218 2401FFFF */ li $at, -1 -/* 062E1C 8006221C 21AD0002 */ addi $t5, $t5, 2 -/* 062E20 80062220 50410013 */ beql $v0, $at, .L80062270 -/* 062E24 80062224 01AB082A */ slt $at, $t5, $t3 -/* 062E28 80062228 00021880 */ sll $v1, $v0, 2 -/* 062E2C 8006222C 00021040 */ sll $v0, $v0, 1 -/* 062E30 80062230 00431020 */ add $v0, $v0, $v1 -/* 062E34 80062234 03224820 */ add $t1, $t9, $v0 -/* 062E38 80062238 02224020 */ add $t0, $s1, $v0 -/* 062E3C 8006223C 85020000 */ lh $v0, ($t0) -/* 062E40 80062240 85230000 */ lh $v1, ($t1) -/* 062E44 80062244 00435020 */ add $t2, $v0, $v1 -/* 062E48 80062248 A5CA0000 */ sh $t2, ($t6) -/* 062E4C 8006224C 85020002 */ lh $v0, 2($t0) -/* 062E50 80062250 85230002 */ lh $v1, 2($t1) -/* 062E54 80062254 00435020 */ add $t2, $v0, $v1 -/* 062E58 80062258 A5CA0002 */ sh $t2, 2($t6) -/* 062E5C 8006225C 85020004 */ lh $v0, 4($t0) -/* 062E60 80062260 85230004 */ lh $v1, 4($t1) -/* 062E64 80062264 00435020 */ add $t2, $v0, $v1 -/* 062E68 80062268 A5CA0004 */ sh $t2, 4($t6) -/* 062E6C 8006226C 01AB082A */ slt $at, $t5, $t3 -.L80062270: -/* 062E70 80062270 1420FFE8 */ bnez $at, .L80062214 -/* 062E74 80062274 21CE000A */ addi $t6, $t6, 0xa -/* 062E78 80062278 24020001 */ li $v0, 1 -.L8006227C: -/* 062E7C 8006227C 8FB00000 */ lw $s0, ($sp) -/* 062E80 80062280 8FB10004 */ lw $s1, 4($sp) -/* 062E84 80062284 03E00008 */ jr $ra -/* 062E88 80062288 27BD0008 */ addiu $sp, $sp, 8 - -/* 062E8C 8006228C 00000000 */ nop -glabel func_80062290 -/* 062E90 80062290 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 062E94 80062294 AFBF0024 */ sw $ra, 0x24($sp) -/* 062E98 80062298 AFB10020 */ sw $s1, 0x20($sp) -/* 062E9C 8006229C AFB0001C */ sw $s0, 0x1c($sp) -/* 062EA0 800622A0 8CA6000C */ lw $a2, 0xc($a1) -/* 062EA4 800622A4 AC800020 */ sw $zero, 0x20($a0) -/* 062EA8 800622A8 AC800018 */ sw $zero, 0x18($a0) -/* 062EAC 800622AC 3C0E800E */ lui $t6, %hi(D_800E3780) # $t6, 0x800e -/* 062EB0 800622B0 8DCE3780 */ lw $t6, %lo(D_800E3780)($t6) -/* 062EB4 800622B4 340FFFFF */ li $t7, 65535 -/* 062EB8 800622B8 241801E8 */ li $t8, 488 -/* 062EBC 800622BC 24197FFF */ li $t9, 32767 -/* 062EC0 800622C0 24083E80 */ li $t0, 16000 -/* 062EC4 800622C4 A48F0030 */ sh $t7, 0x30($a0) -/* 062EC8 800622C8 AC980024 */ sw $t8, 0x24($a0) -/* 062ECC 800622CC AC800028 */ sw $zero, 0x28($a0) -/* 062ED0 800622D0 AC80002C */ sw $zero, 0x2c($a0) -/* 062ED4 800622D4 A4990032 */ sh $t9, 0x32($a0) -/* 062ED8 800622D8 AC88005C */ sw $t0, 0x5c($a0) -/* 062EDC 800622DC AC80001C */ sw $zero, 0x1c($a0) -/* 062EE0 800622E0 AC8E0014 */ sw $t6, 0x14($a0) -/* 062EE4 800622E4 8CA90014 */ lw $t1, 0x14($a1) -/* 062EE8 800622E8 240D0009 */ li $t5, 9 -/* 062EEC 800622EC AC890074 */ sw $t1, 0x74($a0) -/* 062EF0 800622F0 8CAA0018 */ lw $t2, 0x18($a1) -/* 062EF4 800622F4 00A08825 */ move $s1, $a1 -/* 062EF8 800622F8 AC8A0078 */ sw $t2, 0x78($a0) -/* 062EFC 800622FC 8CAB001C */ lw $t3, 0x1c($a1) -/* 062F00 80062300 A0800071 */ sb $zero, 0x71($a0) -/* 062F04 80062304 AC8B007C */ sw $t3, 0x7c($a0) -/* 062F08 80062308 90AC0010 */ lbu $t4, 0x10($a1) -/* 062F0C 8006230C A48D0038 */ sh $t5, 0x38($a0) -/* 062F10 80062310 A08C0070 */ sb $t4, 0x70($a0) -/* 062F14 80062314 90AE0008 */ lbu $t6, 8($a1) -/* 062F18 80062318 00808025 */ move $s0, $a0 -/* 062F1C 8006231C A08E0034 */ sb $t6, 0x34($a0) -/* 062F20 80062320 92270008 */ lbu $a3, 8($s1) -/* 062F24 80062324 240F0014 */ li $t7, 20 -/* 062F28 80062328 AFAF0010 */ sw $t7, 0x10($sp) -/* 062F2C 8006232C 00002025 */ move $a0, $zero -/* 062F30 80062330 00002825 */ move $a1, $zero -/* 062F34 80062334 0C031DFC */ jal func_800C77F0 -/* 062F38 80062338 AFA6002C */ sw $a2, 0x2c($sp) -/* 062F3C 8006233C AE020060 */ sw $v0, 0x60($s0) -/* 062F40 80062340 0C002BA4 */ jal func_8000AE90 -/* 062F44 80062344 02002025 */ move $a0, $s0 -/* 062F48 80062348 8FA6002C */ lw $a2, 0x2c($sp) -/* 062F4C 8006234C 8E270000 */ lw $a3, ($s1) -/* 062F50 80062350 24180038 */ li $t8, 56 -/* 062F54 80062354 AFB80010 */ sw $t8, 0x10($sp) -/* 062F58 80062358 00002025 */ move $a0, $zero -/* 062F5C 8006235C 0C031DFC */ jal func_800C77F0 -/* 062F60 80062360 00002825 */ move $a1, $zero -/* 062F64 80062364 AE00006C */ sw $zero, 0x6c($s0) -/* 062F68 80062368 8E390000 */ lw $t9, ($s1) -/* 062F6C 8006236C 00002025 */ move $a0, $zero -/* 062F70 80062370 1B20000B */ blez $t9, .L800623A0 -/* 062F74 80062374 00002825 */ move $a1, $zero -/* 062F78 80062378 00401825 */ move $v1, $v0 -.L8006237C: -/* 062F7C 8006237C 8E08006C */ lw $t0, 0x6c($s0) -/* 062F80 80062380 24840001 */ addiu $a0, $a0, 1 -/* 062F84 80062384 AC680000 */ sw $t0, ($v1) -/* 062F88 80062388 AE03006C */ sw $v1, 0x6c($s0) -/* 062F8C 8006238C 8E290000 */ lw $t1, ($s1) -/* 062F90 80062390 24630038 */ addiu $v1, $v1, 0x38 -/* 062F94 80062394 0089082A */ slt $at, $a0, $t1 -/* 062F98 80062398 1420FFF8 */ bnez $at, .L8006237C -/* 062F9C 8006239C 00000000 */ nop -.L800623A0: -/* 062FA0 800623A0 AE000064 */ sw $zero, 0x64($s0) -/* 062FA4 800623A4 AE000068 */ sw $zero, 0x68($s0) -/* 062FA8 800623A8 8E270004 */ lw $a3, 4($s1) -/* 062FAC 800623AC 8FA6002C */ lw $a2, 0x2c($sp) -/* 062FB0 800623B0 240A001C */ li $t2, 28 -/* 062FB4 800623B4 AFAA0010 */ sw $t2, 0x10($sp) -/* 062FB8 800623B8 0C031DFC */ jal func_800C77F0 -/* 062FBC 800623BC 00002025 */ move $a0, $zero -/* 062FC0 800623C0 8E260004 */ lw $a2, 4($s1) -/* 062FC4 800623C4 26040048 */ addiu $a0, $s0, 0x48 -/* 062FC8 800623C8 0C0324D7 */ jal func_800C935C -/* 062FCC 800623CC 00402825 */ move $a1, $v0 -/* 062FD0 800623D0 3C0B8006 */ lui $t3, %hi(D_80062408) # $t3, 0x8006 -/* 062FD4 800623D4 256B2408 */ addiu $t3, %lo(D_80062408) # addiu $t3, $t3, 0x2408 -/* 062FD8 800623D8 AE000000 */ sw $zero, ($s0) -/* 062FDC 800623DC AE0B0008 */ sw $t3, 8($s0) -/* 062FE0 800623E0 AE100004 */ sw $s0, 4($s0) -/* 062FE4 800623E4 3C04800E */ lui $a0, %hi(D_800E3780) # $a0, 0x800e -/* 062FE8 800623E8 8C843780 */ lw $a0, %lo(D_800E3780)($a0) -/* 062FEC 800623EC 0C0324F4 */ jal func_800C93D0 -/* 062FF0 800623F0 02002825 */ move $a1, $s0 -/* 062FF4 800623F4 8FBF0024 */ lw $ra, 0x24($sp) -/* 062FF8 800623F8 8FB0001C */ lw $s0, 0x1c($sp) -/* 062FFC 800623FC 8FB10020 */ lw $s1, 0x20($sp) -/* 063000 80062400 03E00008 */ jr $ra -/* 063004 80062404 27BD0040 */ addiu $sp, $sp, 0x40 - -glabel D_80062408 -/* 063008 80062408 27BDFF80 */ addiu $sp, $sp, -0x80 -/* 06300C 8006240C AFBE0038 */ sw $fp, 0x38($sp) -/* 063010 80062410 AFB70034 */ sw $s7, 0x34($sp) -/* 063014 80062414 AFB60030 */ sw $s6, 0x30($sp) -/* 063018 80062418 AFB5002C */ sw $s5, 0x2c($sp) -/* 06301C 8006241C AFB20020 */ sw $s2, 0x20($sp) -/* 063020 80062420 248E0038 */ addiu $t6, $a0, 0x38 -/* 063024 80062424 00809025 */ move $s2, $a0 -/* 063028 80062428 AFBF003C */ sw $ra, 0x3c($sp) -/* 06302C 8006242C AFB40028 */ sw $s4, 0x28($sp) -/* 063030 80062430 AFB30024 */ sw $s3, 0x24($sp) -/* 063034 80062434 AFB1001C */ sw $s1, 0x1c($sp) -/* 063038 80062438 AFB00018 */ sw $s0, 0x18($sp) -/* 06303C 8006243C AFAE0048 */ sw $t6, 0x48($sp) -/* 063040 80062440 24150014 */ li $s5, 20 -/* 063044 80062444 2416007F */ li $s6, 127 -/* 063048 80062448 24970048 */ addiu $s7, $a0, 0x48 -/* 06304C 8006244C 27BE006C */ addiu $fp, $sp, 0x6c -.L80062450: -/* 063050 80062450 964F0038 */ lhu $t7, 0x38($s2) -/* 063054 80062454 00000000 */ nop -/* 063058 80062458 2DE10018 */ sltiu $at, $t7, 0x18 -/* 06305C 8006245C 10200146 */ beqz $at, .L80062978 -/* 063060 80062460 000F7880 */ sll $t7, $t7, 2 -/* 063064 80062464 3C01800E */ lui $at, 0x800e -/* 063068 80062468 002F0821 */ addu $at, $at, $t7 -/* 06306C 8006246C 8C2F6C30 */ lw $t7, 0x6c30($at) -/* 063070 80062470 00000000 */ nop -/* 063074 80062474 01E00008 */ jr $t7 -/* 063078 80062478 00000000 */ nop -/* 06307C 8006247C 0C018A8F */ jal func_80062A3C -/* 063080 80062480 02402025 */ move $a0, $s2 -/* 063084 80062484 1000013D */ b .L8006297C -/* 063088 80062488 8FA50048 */ lw $a1, 0x48($sp) -/* 06308C 8006248C 24180009 */ li $t8, 9 -/* 063090 80062490 A7B8006C */ sh $t8, 0x6c($sp) -/* 063094 80062494 8E46005C */ lw $a2, 0x5c($s2) -/* 063098 80062498 02E02025 */ move $a0, $s7 -/* 06309C 8006249C 0C03246B */ jal func_800C91AC -/* 0630A0 800624A0 03C02825 */ move $a1, $fp -/* 0630A4 800624A4 10000135 */ b .L8006297C -/* 0630A8 800624A8 8FA50048 */ lw $a1, 0x48($sp) -/* 0630AC 800624AC 8E50003C */ lw $s0, 0x3c($s2) -/* 0630B0 800624B0 8E440014 */ lw $a0, 0x14($s2) -/* 0630B4 800624B4 0C03262C */ jal func_800C98B0 -/* 0630B8 800624B8 02002825 */ move $a1, $s0 -/* 0630BC 800624BC 8E440014 */ lw $a0, 0x14($s2) -/* 0630C0 800624C0 0C03264C */ jal func_800C9930 -/* 0630C4 800624C4 02002825 */ move $a1, $s0 -/* 0630C8 800624C8 8E110010 */ lw $s1, 0x10($s0) -/* 0630CC 800624CC 02402025 */ move $a0, $s2 -/* 0630D0 800624D0 92390037 */ lbu $t9, 0x37($s1) -/* 0630D4 800624D4 00000000 */ nop -/* 0630D8 800624D8 13200003 */ beqz $t9, .L800624E8 -/* 0630DC 800624DC 00000000 */ nop -/* 0630E0 800624E0 0C002BBF */ jal func_8000AEFC -/* 0630E4 800624E4 02202825 */ move $a1, $s1 -.L800624E8: -/* 0630E8 800624E8 02402025 */ move $a0, $s2 -/* 0630EC 800624EC 0C0029F1 */ jal func_8000A7C4 -/* 0630F0 800624F0 02002825 */ move $a1, $s0 -/* 0630F4 800624F4 10000121 */ b .L8006297C -/* 0630F8 800624F8 8FA50048 */ lw $a1, 0x48($sp) -/* 0630FC 800624FC 8E50003C */ lw $s0, 0x3c($s2) -/* 063100 80062500 24090001 */ li $t1, 1 -/* 063104 80062504 8E110010 */ lw $s1, 0x10($s0) -/* 063108 80062508 00000000 */ nop -/* 06310C 8006250C 92280034 */ lbu $t0, 0x34($s1) -/* 063110 80062510 02202025 */ move $a0, $s1 -/* 063114 80062514 15000002 */ bnez $t0, .L80062520 -/* 063118 80062518 00000000 */ nop -/* 06311C 8006251C A2290034 */ sb $t1, 0x34($s1) -.L80062520: -/* 063120 80062520 8E530040 */ lw $s3, 0x40($s2) -/* 063124 80062524 8E4A001C */ lw $t2, 0x1c($s2) -/* 063128 80062528 02402825 */ move $a1, $s2 -/* 06312C 8006252C 01535821 */ addu $t3, $t2, $s3 -/* 063130 80062530 AE2B0024 */ sw $t3, 0x24($s1) -/* 063134 80062534 924C0044 */ lbu $t4, 0x44($s2) -/* 063138 80062538 0C002A7E */ jal func_8000A9F8 -/* 06313C 8006253C A22C0030 */ sb $t4, 0x30($s1) -/* 063140 80062540 00023400 */ sll $a2, $v0, 0x10 -/* 063144 80062544 00066C03 */ sra $t5, $a2, 0x10 -/* 063148 80062548 8E440014 */ lw $a0, 0x14($s2) -/* 06314C 8006254C 01A03025 */ move $a2, $t5 -/* 063150 80062550 02002825 */ move $a1, $s0 -/* 063154 80062554 0C032594 */ jal func_800C9650 -/* 063158 80062558 02603825 */ move $a3, $s3 -/* 06315C 8006255C 10000107 */ b .L8006297C -/* 063160 80062560 8FA50048 */ lw $a1, 0x48($sp) -/* 063164 80062564 8E540040 */ lw $s4, 0x40($s2) -/* 063168 80062568 8E590078 */ lw $t9, 0x78($s2) -/* 06316C 8006256C 8E51003C */ lw $s1, 0x3c($s2) -/* 063170 80062570 27A50058 */ addiu $a1, $sp, 0x58 -/* 063174 80062574 0320F809 */ jalr $t9 -/* 063178 80062578 02802025 */ move $a0, $s4 -/* 06317C 8006257C 444EF800 */ cfc1 $t6, $31 -/* 063180 80062580 240F0001 */ li $t7, 1 -/* 063184 80062584 44CFF800 */ ctc1 $t7, $31 -/* 063188 80062588 C7A40058 */ lwc1 $f4, 0x58($sp) -/* 06318C 8006258C 00409825 */ move $s3, $v0 -/* 063190 80062590 460021A4 */ cvt.w.s $f6, $f4 -/* 063194 80062594 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 063198 80062598 444FF800 */ cfc1 $t7, $31 -/* 06319C 8006259C 02202025 */ move $a0, $s1 -/* 0631A0 800625A0 31EF0078 */ andi $t7, $t7, 0x78 -/* 0631A4 800625A4 11E00012 */ beqz $t7, .L800625F0 -/* 0631A8 800625A8 02402825 */ move $a1, $s2 -/* 0631AC 800625AC 44813000 */ mtc1 $at, $f6 -/* 0631B0 800625B0 240F0001 */ li $t7, 1 -/* 0631B4 800625B4 46062181 */ sub.s $f6, $f4, $f6 -/* 0631B8 800625B8 3C018000 */ lui $at, 0x8000 -/* 0631BC 800625BC 44CFF800 */ ctc1 $t7, $31 -/* 0631C0 800625C0 00000000 */ nop -/* 0631C4 800625C4 460031A4 */ cvt.w.s $f6, $f6 -/* 0631C8 800625C8 444FF800 */ cfc1 $t7, $31 -/* 0631CC 800625CC 00000000 */ nop -/* 0631D0 800625D0 31EF0078 */ andi $t7, $t7, 0x78 -/* 0631D4 800625D4 15E00004 */ bnez $t7, .L800625E8 -/* 0631D8 800625D8 00000000 */ nop -/* 0631DC 800625DC 440F3000 */ mfc1 $t7, $f6 -/* 0631E0 800625E0 10000007 */ b .L80062600 -/* 0631E4 800625E4 01E17825 */ or $t7, $t7, $at -.L800625E8: -/* 0631E8 800625E8 10000005 */ b .L80062600 -/* 0631EC 800625EC 240FFFFF */ li $t7, -1 -.L800625F0: -/* 0631F0 800625F0 440F3000 */ mfc1 $t7, $f6 -/* 0631F4 800625F4 00000000 */ nop -/* 0631F8 800625F8 05E0FFFB */ bltz $t7, .L800625E8 -/* 0631FC 800625FC 00000000 */ nop -.L80062600: -/* 063200 80062600 44CEF800 */ ctc1 $t6, $31 -/* 063204 80062604 0C002A7E */ jal func_8000A9F8 -/* 063208 80062608 A22F0036 */ sb $t7, 0x36($s1) -/* 06320C 8006260C 00028400 */ sll $s0, $v0, 0x10 -/* 063210 80062610 0010C403 */ sra $t8, $s0, 0x10 -/* 063214 80062614 8E45001C */ lw $a1, 0x1c($s2) -/* 063218 80062618 03008025 */ move $s0, $t8 -/* 06321C 8006261C 0C002AA2 */ jal func_8000AA88 -/* 063220 80062620 02202025 */ move $a0, $s1 -/* 063224 80062624 00103400 */ sll $a2, $s0, 0x10 -/* 063228 80062628 00064403 */ sra $t0, $a2, 0x10 -/* 06322C 8006262C 8E440014 */ lw $a0, 0x14($s2) -/* 063230 80062630 01003025 */ move $a2, $t0 -/* 063234 80062634 26250004 */ addiu $a1, $s1, 4 -/* 063238 80062638 0C032594 */ jal func_800C9650 -/* 06323C 8006263C 00403825 */ move $a3, $v0 -/* 063240 80062640 24090016 */ li $t1, 22 -/* 063244 80062644 A7A9006C */ sh $t1, 0x6c($sp) -/* 063248 80062648 AFB10070 */ sw $s1, 0x70($sp) -/* 06324C 8006264C AFB40074 */ sw $s4, 0x74($sp) -/* 063250 80062650 02E02025 */ move $a0, $s7 -/* 063254 80062654 03C02825 */ move $a1, $fp -/* 063258 80062658 0C03246B */ jal func_800C91AC -/* 06325C 8006265C 02603025 */ move $a2, $s3 -/* 063260 80062660 100000C6 */ b .L8006297C -/* 063264 80062664 8FA50048 */ lw $a1, 0x48($sp) -/* 063268 80062668 8E540040 */ lw $s4, 0x40($s2) -/* 06326C 8006266C 8E590078 */ lw $t9, 0x78($s2) -/* 063270 80062670 8E51003C */ lw $s1, 0x3c($s2) -/* 063274 80062674 92500044 */ lbu $s0, 0x44($s2) -/* 063278 80062678 27A50058 */ addiu $a1, $sp, 0x58 -/* 06327C 8006267C 0320F809 */ jalr $t9 -/* 063280 80062680 02802025 */ move $a0, $s4 -/* 063284 80062684 02150019 */ multu $s0, $s5 -/* 063288 80062688 C7A80058 */ lwc1 $f8, 0x58($sp) -/* 06328C 8006268C C6300028 */ lwc1 $f16, 0x28($s1) -/* 063290 80062690 E628002C */ swc1 $f8, 0x2c($s1) -/* 063294 80062694 C632002C */ lwc1 $f18, 0x2c($s1) -/* 063298 80062698 8E4A0060 */ lw $t2, 0x60($s2) -/* 06329C 8006269C 46128102 */ mul.s $f4, $f16, $f18 -/* 0632A0 800626A0 8E440014 */ lw $a0, 0x14($s2) -/* 0632A4 800626A4 00409825 */ move $s3, $v0 -/* 0632A8 800626A8 26250004 */ addiu $a1, $s1, 4 -/* 0632AC 800626AC 00005812 */ mflo $t3 -/* 0632B0 800626B0 014B6021 */ addu $t4, $t2, $t3 -/* 0632B4 800626B4 C58A000C */ lwc1 $f10, 0xc($t4) -/* 0632B8 800626B8 00000000 */ nop -/* 0632BC 800626BC 46045182 */ mul.s $f6, $f10, $f4 -/* 0632C0 800626C0 44063000 */ mfc1 $a2, $f6 -/* 0632C4 800626C4 0C0325E0 */ jal func_800C9780 -/* 0632C8 800626C8 00000000 */ nop -/* 0632CC 800626CC 240D0017 */ li $t5, 23 -/* 0632D0 800626D0 A7AD006C */ sh $t5, 0x6c($sp) -/* 0632D4 800626D4 AFB10070 */ sw $s1, 0x70($sp) -/* 0632D8 800626D8 AFB40074 */ sw $s4, 0x74($sp) -/* 0632DC 800626DC A3B00078 */ sb $s0, 0x78($sp) -/* 0632E0 800626E0 02E02025 */ move $a0, $s7 -/* 0632E4 800626E4 03C02825 */ move $a1, $fp -/* 0632E8 800626E8 0C03246B */ jal func_800C91AC -/* 0632EC 800626EC 02603025 */ move $a2, $s3 -/* 0632F0 800626F0 100000A2 */ b .L8006297C -/* 0632F4 800626F4 8FA50048 */ lw $a1, 0x48($sp) -/* 0632F8 800626F8 8FA50048 */ lw $a1, 0x48($sp) -/* 0632FC 800626FC 0C018AC0 */ jal func_80062B00 -/* 063300 80062700 02402025 */ move $a0, $s2 -/* 063304 80062704 1000009D */ b .L8006297C -/* 063308 80062708 8FA50048 */ lw $a1, 0x48($sp) -/* 06330C 8006270C 8FA50048 */ lw $a1, 0x48($sp) -/* 063310 80062710 0C018DFB */ jal func_800637EC -/* 063314 80062714 02402025 */ move $a0, $s2 -/* 063318 80062718 10000098 */ b .L8006297C -/* 06331C 8006271C 8FA50048 */ lw $a1, 0x48($sp) -/* 063320 80062720 864E003C */ lh $t6, 0x3c($s2) -/* 063324 80062724 8E510064 */ lw $s1, 0x64($s2) -/* 063328 80062728 A64E0032 */ sh $t6, 0x32($s2) -/* 06332C 8006272C 12200092 */ beqz $s1, .L80062978 -/* 063330 80062730 02202025 */ move $a0, $s1 -.L80062734: -/* 063334 80062734 0C002A7E */ jal func_8000A9F8 -/* 063338 80062738 02402825 */ move $a1, $s2 -/* 06333C 8006273C 00028400 */ sll $s0, $v0, 0x10 -/* 063340 80062740 00107C03 */ sra $t7, $s0, 0x10 -/* 063344 80062744 8E45001C */ lw $a1, 0x1c($s2) -/* 063348 80062748 01E08025 */ move $s0, $t7 -/* 06334C 8006274C 0C002AA2 */ jal func_8000AA88 -/* 063350 80062750 02202025 */ move $a0, $s1 -/* 063354 80062754 00103400 */ sll $a2, $s0, 0x10 -/* 063358 80062758 0006C403 */ sra $t8, $a2, 0x10 -/* 06335C 8006275C 8E440014 */ lw $a0, 0x14($s2) -/* 063360 80062760 03003025 */ move $a2, $t8 -/* 063364 80062764 26250004 */ addiu $a1, $s1, 4 -/* 063368 80062768 0C032594 */ jal func_800C9650 -/* 06336C 8006276C 00403825 */ move $a3, $v0 -/* 063370 80062770 8E310000 */ lw $s1, ($s1) -/* 063374 80062774 00000000 */ nop -/* 063378 80062778 1620FFEE */ bnez $s1, .L80062734 -/* 06337C 8006277C 02202025 */ move $a0, $s1 -/* 063380 80062780 1000007E */ b .L8006297C -/* 063384 80062784 8FA50048 */ lw $a1, 0x48($sp) -/* 063388 80062788 8E48002C */ lw $t0, 0x2c($s2) -/* 06338C 8006278C 24010001 */ li $at, 1 -/* 063390 80062790 11010079 */ beq $t0, $at, .L80062978 -/* 063394 80062794 24090001 */ li $t1, 1 -/* 063398 80062798 AE49002C */ sw $t1, 0x2c($s2) -/* 06339C 8006279C 0C018A73 */ jal func_800629CC -/* 0633A0 800627A0 02402025 */ move $a0, $s2 -/* 0633A4 800627A4 10000075 */ b .L8006297C -/* 0633A8 800627A8 8FA50048 */ lw $a1, 0x48($sp) -/* 0633AC 800627AC 8E59002C */ lw $t9, 0x2c($s2) -/* 0633B0 800627B0 24010002 */ li $at, 2 -/* 0633B4 800627B4 17210070 */ bne $t9, $at, .L80062978 -/* 0633B8 800627B8 340AFFFF */ li $t2, 65535 -/* 0633BC 800627BC 924B0034 */ lbu $t3, 0x34($s2) -/* 0633C0 800627C0 A64A0030 */ sh $t2, 0x30($s2) -/* 0633C4 800627C4 19600014 */ blez $t3, .L80062818 -/* 0633C8 800627C8 00008025 */ move $s0, $zero -.L800627CC: -/* 0633CC 800627CC 02150019 */ multu $s0, $s5 -/* 0633D0 800627D0 8E4C0060 */ lw $t4, 0x60($s2) -/* 0633D4 800627D4 26100001 */ addiu $s0, $s0, 1 -/* 0633D8 800627D8 321800FF */ andi $t8, $s0, 0xff -/* 0633DC 800627DC 03008025 */ move $s0, $t8 -/* 0633E0 800627E0 00001012 */ mflo $v0 -/* 0633E4 800627E4 01826821 */ addu $t5, $t4, $v0 -/* 0633E8 800627E8 A1B60010 */ sb $s6, 0x10($t5) -/* 0633EC 800627EC 8E4E0060 */ lw $t6, 0x60($s2) -/* 0633F0 800627F0 00000000 */ nop -/* 0633F4 800627F4 01C21821 */ addu $v1, $t6, $v0 -/* 0633F8 800627F8 906F0011 */ lbu $t7, 0x11($v1) -/* 0633FC 800627FC 00000000 */ nop -/* 063400 80062800 A06F0009 */ sb $t7, 9($v1) -/* 063404 80062804 92480034 */ lbu $t0, 0x34($s2) -/* 063408 80062808 00000000 */ nop -/* 06340C 8006280C 0308082A */ slt $at, $t8, $t0 -/* 063410 80062810 1420FFEE */ bnez $at, .L800627CC -/* 063414 80062814 00000000 */ nop -.L80062818: -/* 063418 80062818 8E510064 */ lw $s1, 0x64($s2) -/* 06341C 8006281C 00000000 */ nop -/* 063420 80062820 12200015 */ beqz $s1, .L80062878 -/* 063424 80062824 00000000 */ nop -.L80062828: -/* 063428 80062828 8E440014 */ lw $a0, 0x14($s2) -/* 06342C 8006282C 26300004 */ addiu $s0, $s1, 4 -/* 063430 80062830 0C03262C */ jal func_800C98B0 -/* 063434 80062834 02002825 */ move $a1, $s0 -/* 063438 80062838 8E440014 */ lw $a0, 0x14($s2) -/* 06343C 8006283C 0C03264C */ jal func_800C9930 -/* 063440 80062840 02002825 */ move $a1, $s0 -/* 063444 80062844 92290037 */ lbu $t1, 0x37($s1) -/* 063448 80062848 02402025 */ move $a0, $s2 -/* 06344C 8006284C 11200003 */ beqz $t1, .L8006285C -/* 063450 80062850 00000000 */ nop -/* 063454 80062854 0C002BBF */ jal func_8000AEFC -/* 063458 80062858 02202825 */ move $a1, $s1 -.L8006285C: -/* 06345C 8006285C 02402025 */ move $a0, $s2 -/* 063460 80062860 0C0029F1 */ jal func_8000A7C4 -/* 063464 80062864 02002825 */ move $a1, $s0 -/* 063468 80062868 8E510064 */ lw $s1, 0x64($s2) -/* 06346C 8006286C 00000000 */ nop -/* 063470 80062870 1620FFED */ bnez $s1, .L80062828 -/* 063474 80062874 00000000 */ nop -.L80062878: -/* 063478 80062878 1000003F */ b .L80062978 -/* 06347C 8006287C AE40002C */ sw $zero, 0x2c($s2) -/* 063480 80062880 8E59002C */ lw $t9, 0x2c($s2) -/* 063484 80062884 24010001 */ li $at, 1 -/* 063488 80062888 1721003B */ bne $t9, $at, .L80062978 -/* 06348C 8006288C 02E02025 */ move $a0, $s7 -/* 063490 80062890 0C032424 */ jal func_800C9090 -/* 063494 80062894 00002825 */ move $a1, $zero -/* 063498 80062898 02E02025 */ move $a0, $s7 -/* 06349C 8006289C 0C032424 */ jal func_800C9090 -/* 0634A0 800628A0 24050015 */ li $a1, 21 -/* 0634A4 800628A4 02E02025 */ move $a0, $s7 -/* 0634A8 800628A8 0C032424 */ jal func_800C9090 -/* 0634AC 800628AC 24050002 */ li $a1, 2 -/* 0634B0 800628B0 8E510064 */ lw $s1, 0x64($s2) -/* 0634B4 800628B4 00000000 */ nop -/* 0634B8 800628B8 12200010 */ beqz $s1, .L800628FC -/* 0634BC 800628BC 240A0002 */ li $t2, 2 -.L800628C0: -/* 0634C0 800628C0 26300004 */ addiu $s0, $s1, 4 -/* 0634C4 800628C4 02002825 */ move $a1, $s0 -/* 0634C8 800628C8 02402025 */ move $a0, $s2 -/* 0634CC 800628CC 0C002B0D */ jal func_8000AC34 -/* 0634D0 800628D0 3406C350 */ li $a2, 50000 -/* 0634D4 800628D4 10400004 */ beqz $v0, .L800628E8 -/* 0634D8 800628D8 02402025 */ move $a0, $s2 -/* 0634DC 800628DC 02002825 */ move $a1, $s0 -/* 0634E0 800628E0 0C002AC0 */ jal func_8000AB00 -/* 0634E4 800628E4 3406C350 */ li $a2, 50000 -.L800628E8: -/* 0634E8 800628E8 8E310000 */ lw $s1, ($s1) -/* 0634EC 800628EC 00000000 */ nop -/* 0634F0 800628F0 1620FFF3 */ bnez $s1, .L800628C0 -/* 0634F4 800628F4 00000000 */ nop -/* 0634F8 800628F8 240A0002 */ li $t2, 2 -.L800628FC: -/* 0634FC 800628FC AE4A002C */ sw $t2, 0x2c($s2) -/* 063500 80062900 240B0010 */ li $t3, 16 -/* 063504 80062904 3C067FFF */ lui $a2, (0x7FFFFFFF >> 16) # lui $a2, 0x7fff -/* 063508 80062908 A7AB006C */ sh $t3, 0x6c($sp) -/* 06350C 8006290C 34C6FFFF */ ori $a2, (0x7FFFFFFF & 0xFFFF) # ori $a2, $a2, 0xffff -/* 063510 80062910 02E02025 */ move $a0, $s7 -/* 063514 80062914 0C03246B */ jal func_800C91AC -/* 063518 80062918 03C02825 */ move $a1, $fp -/* 06351C 8006291C 10000017 */ b .L8006297C -/* 063520 80062920 8FA50048 */ lw $a1, 0x48($sp) -/* 063524 80062924 9250003C */ lbu $s0, 0x3c($s2) -/* 063528 80062928 8E4D0060 */ lw $t5, 0x60($s2) -/* 06352C 8006292C 02150019 */ multu $s0, $s5 -/* 063530 80062930 924C003D */ lbu $t4, 0x3d($s2) -/* 063534 80062934 00007012 */ mflo $t6 -/* 063538 80062938 01AE7821 */ addu $t7, $t5, $t6 -/* 06353C 8006293C 1000000E */ b .L80062978 -/* 063540 80062940 A1EC0008 */ sb $t4, 8($t7) -/* 063544 80062944 8E58003C */ lw $t8, 0x3c($s2) -/* 063548 80062948 8E450020 */ lw $a1, 0x20($s2) -/* 06354C 8006294C AE580018 */ sw $t8, 0x18($s2) -/* 063550 80062950 10A00009 */ beqz $a1, .L80062978 -/* 063554 80062954 00000000 */ nop -/* 063558 80062958 0C002B38 */ jal func_8000ACE0 -/* 06355C 8006295C 02402025 */ move $a0, $s2 -/* 063560 80062960 10000006 */ b .L8006297C -/* 063564 80062964 8FA50048 */ lw $a1, 0x48($sp) -/* 063568 80062968 8E45003C */ lw $a1, 0x3c($s2) -/* 06356C 8006296C 02402025 */ move $a0, $s2 -/* 063570 80062970 0C002B38 */ jal func_8000ACE0 -/* 063574 80062974 AE450020 */ sw $a1, 0x20($s2) -.L80062978: -/* 063578 80062978 8FA50048 */ lw $a1, 0x48($sp) -.L8006297C: -/* 06357C 8006297C 0C0324B4 */ jal func_800C92D0 -/* 063580 80062980 02E02025 */ move $a0, $s7 -/* 063584 80062984 1040FEB2 */ beqz $v0, .L80062450 -/* 063588 80062988 AE420028 */ sw $v0, 0x28($s2) -/* 06358C 8006298C 8E48001C */ lw $t0, 0x1c($s2) -/* 063590 80062990 00000000 */ nop -/* 063594 80062994 01024821 */ addu $t1, $t0, $v0 -/* 063598 80062998 AE49001C */ sw $t1, 0x1c($s2) -/* 06359C 8006299C 8FBF003C */ lw $ra, 0x3c($sp) -/* 0635A0 800629A0 8FBE0038 */ lw $fp, 0x38($sp) -/* 0635A4 800629A4 8FB70034 */ lw $s7, 0x34($sp) -/* 0635A8 800629A8 8FB60030 */ lw $s6, 0x30($sp) -/* 0635AC 800629AC 8FB5002C */ lw $s5, 0x2c($sp) -/* 0635B0 800629B0 8FB40028 */ lw $s4, 0x28($sp) -/* 0635B4 800629B4 8FB30024 */ lw $s3, 0x24($sp) -/* 0635B8 800629B8 8FB20020 */ lw $s2, 0x20($sp) -/* 0635BC 800629BC 8FB1001C */ lw $s1, 0x1c($sp) -/* 0635C0 800629C0 8FB00018 */ lw $s0, 0x18($sp) -/* 0635C4 800629C4 03E00008 */ jr $ra -/* 0635C8 800629C8 27BD0080 */ addiu $sp, $sp, 0x80 - -glabel func_800629CC -/* 0635CC 800629CC 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0635D0 800629D0 AFBF0014 */ sw $ra, 0x14($sp) -/* 0635D4 800629D4 8C8E002C */ lw $t6, 0x2c($a0) -/* 0635D8 800629D8 24010001 */ li $at, 1 -/* 0635DC 800629DC 15C10013 */ bne $t6, $at, .L80062A2C -/* 0635E0 800629E0 00803825 */ move $a3, $a0 -/* 0635E4 800629E4 8C840018 */ lw $a0, 0x18($a0) -/* 0635E8 800629E8 27A5001C */ addiu $a1, $sp, 0x1c -/* 0635EC 800629EC 10800010 */ beqz $a0, .L80062A30 -/* 0635F0 800629F0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0635F4 800629F4 0C0320FB */ jal func_800C83EC -/* 0635F8 800629F8 AFA70030 */ sw $a3, 0x30($sp) -/* 0635FC 800629FC 8FA70030 */ lw $a3, 0x30($sp) -/* 063600 80062A00 1040000B */ beqz $v0, .L80062A30 -/* 063604 80062A04 8FBF0014 */ lw $ra, 0x14($sp) -/* 063608 80062A08 A7A00020 */ sh $zero, 0x20($sp) -/* 06360C 80062A0C 8CEF0024 */ lw $t7, 0x24($a3) -/* 063610 80062A10 8FB8001C */ lw $t8, 0x1c($sp) -/* 063614 80062A14 24E40048 */ addiu $a0, $a3, 0x48 -/* 063618 80062A18 01F80019 */ multu $t7, $t8 -/* 06361C 80062A1C 27A50020 */ addiu $a1, $sp, 0x20 -/* 063620 80062A20 00003012 */ mflo $a2 -/* 063624 80062A24 0C03246B */ jal func_800C91AC -/* 063628 80062A28 00000000 */ nop -.L80062A2C: -/* 06362C 80062A2C 8FBF0014 */ lw $ra, 0x14($sp) -.L80062A30: -/* 063630 80062A30 27BD0030 */ addiu $sp, $sp, 0x30 -/* 063634 80062A34 03E00008 */ jr $ra -/* 063638 80062A38 00000000 */ nop - -glabel func_80062A3C -/* 06363C 80062A3C 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 063640 80062A40 AFBF001C */ sw $ra, 0x1c($sp) -/* 063644 80062A44 AFB00018 */ sw $s0, 0x18($sp) -/* 063648 80062A48 8C860018 */ lw $a2, 0x18($a0) -/* 06364C 80062A4C 00808025 */ move $s0, $a0 -/* 063650 80062A50 10C00027 */ beqz $a2, .L80062AF0 -/* 063654 80062A54 27A50028 */ addiu $a1, $sp, 0x28 -/* 063658 80062A58 0C031F41 */ jal func_800C7D04 -/* 06365C 80062A5C 00C02025 */ move $a0, $a2 -/* 063660 80062A60 87AE0028 */ lh $t6, 0x28($sp) -/* 063664 80062A64 27A50028 */ addiu $a1, $sp, 0x28 -/* 063668 80062A68 25CFFFFF */ addiu $t7, $t6, -1 -/* 06366C 80062A6C 2DE10014 */ sltiu $at, $t7, 0x14 -/* 063670 80062A70 1020001F */ beqz $at, .L80062AF0 -/* 063674 80062A74 000F7880 */ sll $t7, $t7, 2 -/* 063678 80062A78 3C01800E */ lui $at, 0x800e -/* 06367C 80062A7C 002F0821 */ addu $at, $at, $t7 -/* 063680 80062A80 8C2F6C90 */ lw $t7, 0x6c90($at) -/* 063684 80062A84 00000000 */ nop -/* 063688 80062A88 01E00008 */ jr $t7 -/* 06368C 80062A8C 00000000 */ nop -/* 063690 80062A90 0C018AC0 */ jal func_80062B00 -/* 063694 80062A94 02002025 */ move $a0, $s0 -/* 063698 80062A98 0C018A73 */ jal func_800629CC -/* 06369C 80062A9C 02002025 */ move $a0, $s0 -/* 0636A0 80062AA0 10000014 */ b .L80062AF4 -/* 0636A4 80062AA4 8FBF001C */ lw $ra, 0x1c($sp) -/* 0636A8 80062AA8 0C018DFB */ jal func_800637EC -/* 0636AC 80062AAC 02002025 */ move $a0, $s0 -/* 0636B0 80062AB0 0C018A73 */ jal func_800629CC -/* 0636B4 80062AB4 02002025 */ move $a0, $s0 -/* 0636B8 80062AB8 1000000E */ b .L80062AF4 -/* 0636BC 80062ABC 8FBF001C */ lw $ra, 0x1c($sp) -/* 0636C0 80062AC0 24180002 */ li $t8, 2 -/* 0636C4 80062AC4 AE18002C */ sw $t8, 0x2c($s0) -/* 0636C8 80062AC8 24190010 */ li $t9, 16 -/* 0636CC 80062ACC 3C067FFF */ lui $a2, (0x7FFFFFFF >> 16) # lui $a2, 0x7fff -/* 0636D0 80062AD0 A7B90028 */ sh $t9, 0x28($sp) -/* 0636D4 80062AD4 34C6FFFF */ ori $a2, (0x7FFFFFFF & 0xFFFF) # ori $a2, $a2, 0xffff -/* 0636D8 80062AD8 0C03246B */ jal func_800C91AC -/* 0636DC 80062ADC 26040048 */ addiu $a0, $s0, 0x48 -/* 0636E0 80062AE0 10000004 */ b .L80062AF4 -/* 0636E4 80062AE4 8FBF001C */ lw $ra, 0x1c($sp) -/* 0636E8 80062AE8 0C018A73 */ jal func_800629CC -/* 0636EC 80062AEC 02002025 */ move $a0, $s0 -.L80062AF0: -/* 0636F0 80062AF0 8FBF001C */ lw $ra, 0x1c($sp) -.L80062AF4: -/* 0636F4 80062AF4 8FB00018 */ lw $s0, 0x18($sp) -/* 0636F8 80062AF8 03E00008 */ jr $ra -/* 0636FC 80062AFC 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_80062B00 -/* 063700 80062B00 27BDFF28 */ addiu $sp, $sp, -0xd8 -/* 063704 80062B04 AFBF003C */ sw $ra, 0x3c($sp) -/* 063708 80062B08 AFB40038 */ sw $s4, 0x38($sp) -/* 06370C 80062B0C AFB30034 */ sw $s3, 0x34($sp) -/* 063710 80062B10 AFB20030 */ sw $s2, 0x30($sp) -/* 063714 80062B14 AFB1002C */ sw $s1, 0x2c($sp) -/* 063718 80062B18 AFB00028 */ sw $s0, 0x28($sp) -/* 06371C 80062B1C 90A70008 */ lbu $a3, 8($a1) -/* 063720 80062B20 90AF0009 */ lbu $t7, 9($a1) -/* 063724 80062B24 240600B0 */ li $a2, 176 -/* 063728 80062B28 A3AF00CA */ sb $t7, 0xca($sp) -/* 06372C 80062B2C 90B3000A */ lbu $s3, 0xa($a1) -/* 063730 80062B30 30E300F0 */ andi $v1, $a3, 0xf0 -/* 063734 80062B34 30EE000F */ andi $t6, $a3, 0xf -/* 063738 80062B38 00A08025 */ move $s0, $a1 -/* 06373C 80062B3C 00809025 */ move $s2, $a0 -/* 063740 80062B40 14660027 */ bne $v1, $a2, .L80062BE0 -/* 063744 80062B44 01C03825 */ move $a3, $t6 -/* 063748 80062B48 31F100FF */ andi $s1, $t7, 0xff -/* 06374C 80062B4C 2401006A */ li $at, 106 -/* 063750 80062B50 1621001B */ bne $s1, $at, .L80062BC0 -/* 063754 80062B54 24080001 */ li $t0, 1 -/* 063758 80062B58 AFB30058 */ sw $s3, 0x58($sp) -/* 06375C 80062B5C 94980030 */ lhu $t8, 0x30($a0) -/* 063760 80062B60 02684804 */ sllv $t1, $t0, $s3 -/* 063764 80062B64 8C900064 */ lw $s0, 0x64($a0) -/* 063768 80062B68 01205027 */ not $t2, $t1 -/* 06376C 80062B6C 030A5824 */ and $t3, $t8, $t2 -/* 063770 80062B70 12000316 */ beqz $s0, .L800637CC -/* 063774 80062B74 A48B0030 */ sh $t3, 0x30($a0) -/* 063778 80062B78 8FAC0058 */ lw $t4, 0x58($sp) -.L80062B7C: -/* 06377C 80062B7C 920D0031 */ lbu $t5, 0x31($s0) -/* 063780 80062B80 00000000 */ nop -/* 063784 80062B84 158D0008 */ bne $t4, $t5, .L80062BA8 -/* 063788 80062B88 00000000 */ nop -/* 06378C 80062B8C 8E0E0020 */ lw $t6, 0x20($s0) -/* 063790 80062B90 02402025 */ move $a0, $s2 -/* 063794 80062B94 8DCF0000 */ lw $t7, ($t6) -/* 063798 80062B98 26050004 */ addiu $a1, $s0, 4 -/* 06379C 80062B9C 8DE60008 */ lw $a2, 8($t7) -/* 0637A0 80062BA0 0C002AC0 */ jal func_8000AB00 -/* 0637A4 80062BA4 00000000 */ nop -.L80062BA8: -/* 0637A8 80062BA8 8E100000 */ lw $s0, ($s0) -/* 0637AC 80062BAC 00000000 */ nop -/* 0637B0 80062BB0 1600FFF2 */ bnez $s0, .L80062B7C -/* 0637B4 80062BB4 8FAC0058 */ lw $t4, 0x58($sp) -/* 0637B8 80062BB8 10000305 */ b .L800637D0 -/* 0637BC 80062BBC 8FBF003C */ lw $ra, 0x3c($sp) -.L80062BC0: -/* 0637C0 80062BC0 2401006C */ li $at, 108 -/* 0637C4 80062BC4 16210006 */ bne $s1, $at, .L80062BE0 -/* 0637C8 80062BC8 24190001 */ li $t9, 1 -/* 0637CC 80062BCC 96480030 */ lhu $t0, 0x30($s2) -/* 0637D0 80062BD0 02794804 */ sllv $t1, $t9, $s3 -/* 0637D4 80062BD4 0109C025 */ or $t8, $t0, $t1 -/* 0637D8 80062BD8 100002FC */ b .L800637CC -/* 0637DC 80062BDC A6580030 */ sh $t8, 0x30($s2) -.L80062BE0: -/* 0637E0 80062BE0 964C0030 */ lhu $t4, 0x30($s2) -/* 0637E4 80062BE4 240A0001 */ li $t2, 1 -/* 0637E8 80062BE8 00EA5804 */ sllv $t3, $t2, $a3 -/* 0637EC 80062BEC 016C6824 */ and $t5, $t3, $t4 -/* 0637F0 80062BF0 15A00007 */ bnez $t5, .L80062C10 -/* 0637F4 80062BF4 00E0A025 */ move $s4, $a3 -/* 0637F8 80062BF8 240100C0 */ li $at, 192 -/* 0637FC 80062BFC 10610005 */ beq $v1, $at, .L80062C14 -/* 063800 80062C00 246EFF80 */ addiu $t6, $v1, -0x80 -/* 063804 80062C04 10660002 */ beq $v1, $a2, .L80062C10 -/* 063808 80062C08 240100E0 */ li $at, 224 -/* 06380C 80062C0C 146102EF */ bne $v1, $at, .L800637CC -.L80062C10: -/* 063810 80062C10 246EFF80 */ addiu $t6, $v1, -0x80 -.L80062C14: -/* 063814 80062C14 2DC10061 */ sltiu $at, $t6, 0x61 -/* 063818 80062C18 102002EC */ beqz $at, .L800637CC -/* 06381C 80062C1C 000E7080 */ sll $t6, $t6, 2 -/* 063820 80062C20 3C01800E */ lui $at, 0x800e -/* 063824 80062C24 002E0821 */ addu $at, $at, $t6 -/* 063828 80062C28 8C2E6CE0 */ lw $t6, 0x6ce0($at) -/* 06382C 80062C2C 00000000 */ nop -/* 063830 80062C30 01C00008 */ jr $t6 -/* 063834 80062C34 00000000 */ nop -/* 063838 80062C38 1260010C */ beqz $s3, .L8006306C -/* 06383C 80062C3C 93A500CA */ lbu $a1, 0xca($sp) -/* 063840 80062C40 8E4F002C */ lw $t7, 0x2c($s2) -/* 063844 80062C44 24010001 */ li $at, 1 -/* 063848 80062C48 15E102E0 */ bne $t7, $at, .L800637CC -/* 06384C 80062C4C 02402025 */ move $a0, $s2 -/* 063850 80062C50 93A500CA */ lbu $a1, 0xca($sp) -/* 063854 80062C54 326600FF */ andi $a2, $s3, 0xff -/* 063858 80062C58 A3A700CB */ sb $a3, 0xcb($sp) -/* 06385C 80062C5C 0C002A34 */ jal func_8000A8D0 -/* 063860 80062C60 AFB000DC */ sw $s0, 0xdc($sp) -/* 063864 80062C64 104002D9 */ beqz $v0, .L800637CC -/* 063868 80062C68 AFA20090 */ sw $v0, 0x90($sp) -/* 06386C 80062C6C 93A700CB */ lbu $a3, 0xcb($sp) -/* 063870 80062C70 8E590060 */ lw $t9, 0x60($s2) -/* 063874 80062C74 00071880 */ sll $v1, $a3, 2 -/* 063878 80062C78 00671821 */ addu $v1, $v1, $a3 -/* 06387C 80062C7C 00031880 */ sll $v1, $v1, 2 -/* 063880 80062C80 03234021 */ addu $t0, $t9, $v1 -/* 063884 80062C84 91090008 */ lbu $t1, 8($t0) -/* 063888 80062C88 93A500CA */ lbu $a1, 0xca($sp) -/* 06388C 80062C8C A7A00096 */ sh $zero, 0x96($sp) -/* 063890 80062C90 A3A00098 */ sb $zero, 0x98($sp) -/* 063894 80062C94 AFA30058 */ sw $v1, 0x58($sp) -/* 063898 80062C98 02402025 */ move $a0, $s2 -/* 06389C 80062C9C 326600FF */ andi $a2, $s3, 0xff -/* 0638A0 80062CA0 0C0029C7 */ jal func_8000A71C -/* 0638A4 80062CA4 A7A90094 */ sh $t1, 0x94($sp) -/* 0638A8 80062CA8 8FA30058 */ lw $v1, 0x58($sp) -/* 0638AC 80062CAC 104002C7 */ beqz $v0, .L800637CC -/* 0638B0 80062CB0 00408025 */ move $s0, $v0 -/* 0638B4 80062CB4 8E440014 */ lw $a0, 0x14($s2) -/* 0638B8 80062CB8 24450004 */ addiu $a1, $v0, 4 -/* 0638BC 80062CBC 93B100CA */ lbu $s1, 0xca($sp) -/* 0638C0 80062CC0 AFA50050 */ sw $a1, 0x50($sp) -/* 0638C4 80062CC4 AFA30058 */ sw $v1, 0x58($sp) -/* 0638C8 80062CC8 0C032542 */ jal func_800C9508 -/* 0638CC 80062CCC 27A60094 */ addiu $a2, $sp, 0x94 -/* 0638D0 80062CD0 8FA30058 */ lw $v1, 0x58($sp) -/* 0638D4 80062CD4 10400008 */ beqz $v0, .L80062CF8 -/* 0638D8 80062CD8 00003025 */ move $a2, $zero -/* 0638DC 80062CDC 8FB80050 */ lw $t8, 0x50($sp) -/* 0638E0 80062CE0 8E440014 */ lw $a0, 0x14($s2) -/* 0638E4 80062CE4 8F050008 */ lw $a1, 8($t8) -/* 0638E8 80062CE8 0C0196A0 */ jal func_80065A80 -/* 0638EC 80062CEC AFA30058 */ sw $v1, 0x58($sp) -/* 0638F0 80062CF0 8FA30058 */ lw $v1, 0x58($sp) -/* 0638F4 80062CF4 00000000 */ nop -.L80062CF8: -/* 0638F8 80062CF8 8FA50090 */ lw $a1, 0x90($sp) -/* 0638FC 80062CFC A2000034 */ sb $zero, 0x34($s0) -/* 063900 80062D00 AE050020 */ sw $a1, 0x20($s0) -/* 063904 80062D04 8E4A0060 */ lw $t2, 0x60($s2) -/* 063908 80062D08 240D0002 */ li $t5, 2 -/* 06390C 80062D0C 01435821 */ addu $t3, $t2, $v1 -/* 063910 80062D10 916C000B */ lbu $t4, 0xb($t3) -/* 063914 80062D14 00000000 */ nop -/* 063918 80062D18 29810040 */ slti $at, $t4, 0x40 -/* 06391C 80062D1C 14200003 */ bnez $at, .L80062D2C -/* 063920 80062D20 00000000 */ nop -/* 063924 80062D24 10000002 */ b .L80062D30 -/* 063928 80062D28 A20D0035 */ sb $t5, 0x35($s0) -.L80062D2C: -/* 06392C 80062D2C A2000035 */ sb $zero, 0x35($s0) -.L80062D30: -/* 063930 80062D30 8CA20004 */ lw $v0, 4($a1) -/* 063934 80062D34 00000000 */ nop -/* 063938 80062D38 904E0004 */ lbu $t6, 4($v0) -/* 06393C 80062D3C 80480005 */ lb $t0, 5($v0) -/* 063940 80062D40 022E7823 */ subu $t7, $s1, $t6 -/* 063944 80062D44 000FC880 */ sll $t9, $t7, 2 -/* 063948 80062D48 032FC823 */ subu $t9, $t9, $t7 -/* 06394C 80062D4C 0019C8C0 */ sll $t9, $t9, 3 -/* 063950 80062D50 032FC821 */ addu $t9, $t9, $t7 -/* 063954 80062D54 0019C880 */ sll $t9, $t9, 2 -/* 063958 80062D58 03282021 */ addu $a0, $t9, $t0 -/* 06395C 80062D5C 00044C00 */ sll $t1, $a0, 0x10 -/* 063960 80062D60 00092403 */ sra $a0, $t1, 0x10 -/* 063964 80062D64 0C032678 */ jal func_800C99E0 -/* 063968 80062D68 AFA30058 */ sw $v1, 0x58($sp) -/* 06396C 80062D6C 8FA30058 */ lw $v1, 0x58($sp) -/* 063970 80062D70 E6000028 */ swc1 $f0, 0x28($s0) -/* 063974 80062D74 8FAA0090 */ lw $t2, 0x90($sp) -/* 063978 80062D78 3C0142FE */ li $at, 0x42FE0000 # 127.000000 -/* 06397C 80062D7C 8D4B0000 */ lw $t3, ($t2) -/* 063980 80062D80 44812000 */ mtc1 $at, $f4 -/* 063984 80062D84 916C000C */ lbu $t4, 0xc($t3) -/* 063988 80062D88 00000000 */ nop -/* 06398C 80062D8C A20C0030 */ sb $t4, 0x30($s0) -/* 063990 80062D90 8FAE0090 */ lw $t6, 0x90($sp) -/* 063994 80062D94 8E4D001C */ lw $t5, 0x1c($s2) -/* 063998 80062D98 8DCF0000 */ lw $t7, ($t6) -/* 06399C 80062D9C 00000000 */ nop -/* 0639A0 80062DA0 8DF90000 */ lw $t9, ($t7) -/* 0639A4 80062DA4 A2000037 */ sb $zero, 0x37($s0) -/* 0639A8 80062DA8 01B94021 */ addu $t0, $t5, $t9 -/* 0639AC 80062DAC AE080024 */ sw $t0, 0x24($s0) -/* 0639B0 80062DB0 8E490060 */ lw $t1, 0x60($s2) -/* 0639B4 80062DB4 00000000 */ nop -/* 0639B8 80062DB8 0123C021 */ addu $t8, $t1, $v1 -/* 0639BC 80062DBC 8F110000 */ lw $s1, ($t8) -/* 0639C0 80062DC0 E7A40084 */ swc1 $f4, 0x84($sp) -/* 0639C4 80062DC4 92260004 */ lbu $a2, 4($s1) -/* 0639C8 80062DC8 00000000 */ nop -/* 0639CC 80062DCC 10C0001C */ beqz $a2, .L80062E40 -/* 0639D0 80062DD0 00000000 */ nop -/* 0639D4 80062DD4 8E420074 */ lw $v0, 0x74($s2) -/* 0639D8 80062DD8 27A4007C */ addiu $a0, $sp, 0x7c -/* 0639DC 80062DDC 10400018 */ beqz $v0, .L80062E40 -/* 0639E0 80062DE0 27A50084 */ addiu $a1, $sp, 0x84 -/* 0639E4 80062DE4 922A0006 */ lbu $t2, 6($s1) -/* 0639E8 80062DE8 92270005 */ lbu $a3, 5($s1) -/* 0639EC 80062DEC AFAA0010 */ sw $t2, 0x10($sp) -/* 0639F0 80062DF0 922B0007 */ lbu $t3, 7($s1) -/* 0639F4 80062DF4 AFA30058 */ sw $v1, 0x58($sp) -/* 0639F8 80062DF8 0040F809 */ jalr $v0 -/* 0639FC 80062DFC AFAB0014 */ sw $t3, 0x14($sp) -/* 063A00 80062E00 8FA30058 */ lw $v1, 0x58($sp) -/* 063A04 80062E04 1040000E */ beqz $v0, .L80062E40 -/* 063A08 80062E08 240C0016 */ li $t4, 22 -/* 063A0C 80062E0C 8FAE007C */ lw $t6, 0x7c($sp) -/* 063A10 80062E10 A7AC00AC */ sh $t4, 0xac($sp) -/* 063A14 80062E14 AFB000B0 */ sw $s0, 0xb0($sp) -/* 063A18 80062E18 26440048 */ addiu $a0, $s2, 0x48 -/* 063A1C 80062E1C 27A500AC */ addiu $a1, $sp, 0xac -/* 063A20 80062E20 00403025 */ move $a2, $v0 -/* 063A24 80062E24 AFA30058 */ sw $v1, 0x58($sp) -/* 063A28 80062E28 0C03246B */ jal func_800C91AC -/* 063A2C 80062E2C AFAE00B4 */ sw $t6, 0xb4($sp) -/* 063A30 80062E30 920F0037 */ lbu $t7, 0x37($s0) -/* 063A34 80062E34 8FA30058 */ lw $v1, 0x58($sp) -/* 063A38 80062E38 35ED0001 */ ori $t5, $t7, 1 -/* 063A3C 80062E3C A20D0037 */ sb $t5, 0x37($s0) -.L80062E40: -/* 063A40 80062E40 4459F800 */ cfc1 $t9, $31 -/* 063A44 80062E44 24080001 */ li $t0, 1 -/* 063A48 80062E48 44C8F800 */ ctc1 $t0, $31 -/* 063A4C 80062E4C C7A60084 */ lwc1 $f6, 0x84($sp) -/* 063A50 80062E50 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 063A54 80062E54 46003224 */ cvt.w.s $f8, $f6 -/* 063A58 80062E58 26490048 */ addiu $t1, $s2, 0x48 -/* 063A5C 80062E5C 4448F800 */ cfc1 $t0, $31 -/* 063A60 80062E60 00000000 */ nop -/* 063A64 80062E64 31080078 */ andi $t0, $t0, 0x78 -/* 063A68 80062E68 11000012 */ beqz $t0, .L80062EB4 -/* 063A6C 80062E6C 00000000 */ nop -/* 063A70 80062E70 44814000 */ mtc1 $at, $f8 -/* 063A74 80062E74 24080001 */ li $t0, 1 -/* 063A78 80062E78 46083201 */ sub.s $f8, $f6, $f8 -/* 063A7C 80062E7C 3C018000 */ lui $at, 0x8000 -/* 063A80 80062E80 44C8F800 */ ctc1 $t0, $31 -/* 063A84 80062E84 00000000 */ nop -/* 063A88 80062E88 46004224 */ cvt.w.s $f8, $f8 -/* 063A8C 80062E8C 4448F800 */ cfc1 $t0, $31 -/* 063A90 80062E90 00000000 */ nop -/* 063A94 80062E94 31080078 */ andi $t0, $t0, 0x78 -/* 063A98 80062E98 15000004 */ bnez $t0, .L80062EAC -/* 063A9C 80062E9C 00000000 */ nop -/* 063AA0 80062EA0 44084000 */ mfc1 $t0, $f8 -/* 063AA4 80062EA4 10000007 */ b .L80062EC4 -/* 063AA8 80062EA8 01014025 */ or $t0, $t0, $at -.L80062EAC: -/* 063AAC 80062EAC 10000005 */ b .L80062EC4 -/* 063AB0 80062EB0 2408FFFF */ li $t0, -1 -.L80062EB4: -/* 063AB4 80062EB4 44084000 */ mfc1 $t0, $f8 -/* 063AB8 80062EB8 00000000 */ nop -/* 063ABC 80062EBC 0500FFFB */ bltz $t0, .L80062EAC -/* 063AC0 80062EC0 00000000 */ nop -.L80062EC4: -/* 063AC4 80062EC4 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 063AC8 80062EC8 44815000 */ mtc1 $at, $f10 -/* 063ACC 80062ECC A2080036 */ sb $t0, 0x36($s0) -/* 063AD0 80062ED0 E7AA0084 */ swc1 $f10, 0x84($sp) -/* 063AD4 80062ED4 92260008 */ lbu $a2, 8($s1) -/* 063AD8 80062ED8 44D9F800 */ ctc1 $t9, $31 -/* 063ADC 80062EDC 10C0001E */ beqz $a2, .L80062F58 -/* 063AE0 80062EE0 AFA9004C */ sw $t1, 0x4c($sp) -/* 063AE4 80062EE4 8E420074 */ lw $v0, 0x74($s2) -/* 063AE8 80062EE8 27A4007C */ addiu $a0, $sp, 0x7c -/* 063AEC 80062EEC 1040001A */ beqz $v0, .L80062F58 -/* 063AF0 80062EF0 27A50084 */ addiu $a1, $sp, 0x84 -/* 063AF4 80062EF4 9238000A */ lbu $t8, 0xa($s1) -/* 063AF8 80062EF8 92270009 */ lbu $a3, 9($s1) -/* 063AFC 80062EFC AFB80010 */ sw $t8, 0x10($sp) -/* 063B00 80062F00 922A000B */ lbu $t2, 0xb($s1) -/* 063B04 80062F04 AFA30058 */ sw $v1, 0x58($sp) -/* 063B08 80062F08 0040F809 */ jalr $v0 -/* 063B0C 80062F0C AFAA0014 */ sw $t2, 0x14($sp) -/* 063B10 80062F10 8FA30058 */ lw $v1, 0x58($sp) -/* 063B14 80062F14 10400010 */ beqz $v0, .L80062F58 -/* 063B18 80062F18 240B0017 */ li $t3, 23 -/* 063B1C 80062F1C 8FAC007C */ lw $t4, 0x7c($sp) -/* 063B20 80062F20 93AE00CB */ lbu $t6, 0xcb($sp) -/* 063B24 80062F24 8FA4004C */ lw $a0, 0x4c($sp) -/* 063B28 80062F28 A7AB00AC */ sh $t3, 0xac($sp) -/* 063B2C 80062F2C AFB000B0 */ sw $s0, 0xb0($sp) -/* 063B30 80062F30 27A500AC */ addiu $a1, $sp, 0xac -/* 063B34 80062F34 00403025 */ move $a2, $v0 -/* 063B38 80062F38 AFA30058 */ sw $v1, 0x58($sp) -/* 063B3C 80062F3C AFAC00B4 */ sw $t4, 0xb4($sp) -/* 063B40 80062F40 0C03246B */ jal func_800C91AC -/* 063B44 80062F44 A3AE00B8 */ sb $t6, 0xb8($sp) -/* 063B48 80062F48 920F0037 */ lbu $t7, 0x37($s0) -/* 063B4C 80062F4C 8FA30058 */ lw $v1, 0x58($sp) -/* 063B50 80062F50 35ED0002 */ ori $t5, $t7, 2 -/* 063B54 80062F54 A20D0037 */ sb $t5, 0x37($s0) -.L80062F58: -/* 063B58 80062F58 C7B00084 */ lwc1 $f16, 0x84($sp) -/* 063B5C 80062F5C C6040028 */ lwc1 $f4, 0x28($s0) -/* 063B60 80062F60 E610002C */ swc1 $f16, 0x2c($s0) -/* 063B64 80062F64 8E590060 */ lw $t9, 0x60($s2) -/* 063B68 80062F68 C608002C */ lwc1 $f8, 0x2c($s0) -/* 063B6C 80062F6C 03231021 */ addu $v0, $t9, $v1 -/* 063B70 80062F70 C452000C */ lwc1 $f18, 0xc($v0) -/* 063B74 80062F74 02002025 */ move $a0, $s0 -/* 063B78 80062F78 46049182 */ mul.s $f6, $f18, $f4 -/* 063B7C 80062F7C 02402825 */ move $a1, $s2 -/* 063B80 80062F80 46083282 */ mul.s $f10, $f6, $f8 -/* 063B84 80062F84 E7AA0088 */ swc1 $f10, 0x88($sp) -/* 063B88 80062F88 9051000A */ lbu $s1, 0xa($v0) -/* 063B8C 80062F8C 0C002AAB */ jal func_8000AAAC -/* 063B90 80062F90 00000000 */ nop -/* 063B94 80062F94 A3A200A3 */ sb $v0, 0xa3($sp) -/* 063B98 80062F98 02002025 */ move $a0, $s0 -/* 063B9C 80062F9C 0C002A7E */ jal func_8000A9F8 -/* 063BA0 80062FA0 02402825 */ move $a1, $s2 -/* 063BA4 80062FA4 8FA80090 */ lw $t0, 0x90($sp) -/* 063BA8 80062FA8 8E440014 */ lw $a0, 0x14($s2) -/* 063BAC 80062FAC 8D090000 */ lw $t1, ($t0) -/* 063BB0 80062FB0 8D060008 */ lw $a2, 8($t0) -/* 063BB4 80062FB4 8D330000 */ lw $s3, ($t1) -/* 063BB8 80062FB8 93B800A3 */ lbu $t8, 0xa3($sp) -/* 063BBC 80062FBC 8FA50050 */ lw $a1, 0x50($sp) -/* 063BC0 80062FC0 8FA70088 */ lw $a3, 0x88($sp) -/* 063BC4 80062FC4 AFB10018 */ sw $s1, 0x18($sp) -/* 063BC8 80062FC8 AFA20010 */ sw $v0, 0x10($sp) -/* 063BCC 80062FCC AFB3001C */ sw $s3, 0x1c($sp) -/* 063BD0 80062FD0 0C01970E */ jal func_80065C38 -/* 063BD4 80062FD4 AFB80014 */ sw $t8, 0x14($sp) -/* 063BD8 80062FD8 8FAB0050 */ lw $t3, 0x50($sp) -/* 063BDC 80062FDC 8FAC0090 */ lw $t4, 0x90($sp) -/* 063BE0 80062FE0 240A0006 */ li $t2, 6 -/* 063BE4 80062FE4 A7AA00AC */ sh $t2, 0xac($sp) -/* 063BE8 80062FE8 AFAB00B0 */ sw $t3, 0xb0($sp) -/* 063BEC 80062FEC 8D8E0000 */ lw $t6, ($t4) -/* 063BF0 80062FF0 8FA4004C */ lw $a0, 0x4c($sp) -/* 063BF4 80062FF4 91CF000D */ lbu $t7, 0xd($t6) -/* 063BF8 80062FF8 27A500AC */ addiu $a1, $sp, 0xac -/* 063BFC 80062FFC A3AF00B8 */ sb $t7, 0xb8($sp) -/* 063C00 80063000 8D8D0000 */ lw $t5, ($t4) -/* 063C04 80063004 02603025 */ move $a2, $s3 -/* 063C08 80063008 8DB90004 */ lw $t9, 4($t5) -/* 063C0C 8006300C 0C03246B */ jal func_800C91AC -/* 063C10 80063010 AFB900B4 */ sw $t9, 0xb4($sp) -/* 063C14 80063014 8FA200DC */ lw $v0, 0xdc($sp) -/* 063C18 80063018 24080015 */ li $t0, 21 -/* 063C1C 8006301C 8C49000C */ lw $t1, 0xc($v0) -/* 063C20 80063020 36980080 */ ori $t8, $s4, 0x80 -/* 063C24 80063024 112001E9 */ beqz $t1, .L800637CC -/* 063C28 80063028 24420004 */ addiu $v0, $v0, 4 -/* 063C2C 8006302C 93AA00CA */ lbu $t2, 0xca($sp) -/* 063C30 80063030 A7A800AC */ sh $t0, 0xac($sp) -/* 063C34 80063034 A3B800B4 */ sb $t8, 0xb4($sp) -/* 063C38 80063038 A3A000B6 */ sb $zero, 0xb6($sp) -/* 063C3C 8006303C A3AA00B5 */ sb $t2, 0xb5($sp) -/* 063C40 80063040 8C4E0008 */ lw $t6, 8($v0) -/* 063C44 80063044 8E4B0024 */ lw $t3, 0x24($s2) -/* 063C48 80063048 8FA4004C */ lw $a0, 0x4c($sp) -/* 063C4C 8006304C 016E0019 */ multu $t3, $t6 -/* 063C50 80063050 27A500AC */ addiu $a1, $sp, 0xac -/* 063C54 80063054 00003012 */ mflo $a2 -/* 063C58 80063058 0C03246B */ jal func_800C91AC -/* 063C5C 8006305C 00000000 */ nop -/* 063C60 80063060 100001DB */ b .L800637D0 -/* 063C64 80063064 8FBF003C */ lw $ra, 0x3c($sp) -/* 063C68 80063068 93A500CA */ lbu $a1, 0xca($sp) -.L8006306C: -/* 063C6C 8006306C 02402025 */ move $a0, $s2 -/* 063C70 80063070 0C002A13 */ jal func_8000A84C -/* 063C74 80063074 30E600FF */ andi $a2, $a3, 0xff -/* 063C78 80063078 104001D4 */ beqz $v0, .L800637CC -/* 063C7C 8006307C 00408025 */ move $s0, $v0 -/* 063C80 80063080 904F0035 */ lbu $t7, 0x35($v0) -/* 063C84 80063084 24110002 */ li $s1, 2 -/* 063C88 80063088 162F0004 */ bne $s1, $t7, .L8006309C -/* 063C8C 8006308C 240D0003 */ li $t5, 3 -/* 063C90 80063090 240C0004 */ li $t4, 4 -/* 063C94 80063094 100001CD */ b .L800637CC -/* 063C98 80063098 A04C0035 */ sb $t4, 0x35($v0) -.L8006309C: -/* 063C9C 8006309C 8E190020 */ lw $t9, 0x20($s0) -/* 063CA0 800630A0 A20D0035 */ sb $t5, 0x35($s0) -/* 063CA4 800630A4 8F290000 */ lw $t1, ($t9) -/* 063CA8 800630A8 02402025 */ move $a0, $s2 -/* 063CAC 800630AC 8D260008 */ lw $a2, 8($t1) -/* 063CB0 800630B0 0C002AC0 */ jal func_8000AB00 -/* 063CB4 800630B4 26050004 */ addiu $a1, $s0, 4 -/* 063CB8 800630B8 100001C5 */ b .L800637D0 -/* 063CBC 800630BC 8FBF003C */ lw $ra, 0x3c($sp) -/* 063CC0 800630C0 93A500CA */ lbu $a1, 0xca($sp) -/* 063CC4 800630C4 02402025 */ move $a0, $s2 -/* 063CC8 800630C8 0C002A13 */ jal func_8000A84C -/* 063CCC 800630CC 30E600FF */ andi $a2, $a3, 0xff -/* 063CD0 800630D0 104001BE */ beqz $v0, .L800637CC -/* 063CD4 800630D4 00408025 */ move $s0, $v0 -/* 063CD8 800630D8 A0530033 */ sb $s3, 0x33($v0) -/* 063CDC 800630DC 00402025 */ move $a0, $v0 -/* 063CE0 800630E0 0C002A7E */ jal func_8000A9F8 -/* 063CE4 800630E4 02402825 */ move $a1, $s2 -/* 063CE8 800630E8 00028C00 */ sll $s1, $v0, 0x10 -/* 063CEC 800630EC 00114403 */ sra $t0, $s1, 0x10 -/* 063CF0 800630F0 8E45001C */ lw $a1, 0x1c($s2) -/* 063CF4 800630F4 01008825 */ move $s1, $t0 -/* 063CF8 800630F8 0C002AA2 */ jal func_8000AA88 -/* 063CFC 800630FC 02002025 */ move $a0, $s0 -/* 063D00 80063100 00113400 */ sll $a2, $s1, 0x10 -/* 063D04 80063104 0006C403 */ sra $t8, $a2, 0x10 -/* 063D08 80063108 8E440014 */ lw $a0, 0x14($s2) -/* 063D0C 8006310C 03003025 */ move $a2, $t8 -/* 063D10 80063110 26050004 */ addiu $a1, $s0, 4 -/* 063D14 80063114 0C032594 */ jal func_800C9650 -/* 063D18 80063118 00403825 */ move $a3, $v0 -/* 063D1C 8006311C 100001AC */ b .L800637D0 -/* 063D20 80063120 8FBF003C */ lw $ra, 0x3c($sp) -/* 063D24 80063124 8E500064 */ lw $s0, 0x64($s2) -/* 063D28 80063128 00000000 */ nop -/* 063D2C 8006312C 120001A8 */ beqz $s0, .L800637D0 -/* 063D30 80063130 8FBF003C */ lw $ra, 0x3c($sp) -.L80063134: -/* 063D34 80063134 920A0031 */ lbu $t2, 0x31($s0) -/* 063D38 80063138 93AB00CA */ lbu $t3, 0xca($sp) -/* 063D3C 8006313C 168A0011 */ bne $s4, $t2, .L80063184 -/* 063D40 80063140 02002025 */ move $a0, $s0 -/* 063D44 80063144 A20B0033 */ sb $t3, 0x33($s0) -/* 063D48 80063148 0C002A7E */ jal func_8000A9F8 -/* 063D4C 8006314C 02402825 */ move $a1, $s2 -/* 063D50 80063150 00028C00 */ sll $s1, $v0, 0x10 -/* 063D54 80063154 00117403 */ sra $t6, $s1, 0x10 -/* 063D58 80063158 8E45001C */ lw $a1, 0x1c($s2) -/* 063D5C 8006315C 01C08825 */ move $s1, $t6 -/* 063D60 80063160 0C002AA2 */ jal func_8000AA88 -/* 063D64 80063164 02002025 */ move $a0, $s0 -/* 063D68 80063168 00113400 */ sll $a2, $s1, 0x10 -/* 063D6C 8006316C 00067C03 */ sra $t7, $a2, 0x10 -/* 063D70 80063170 8E440014 */ lw $a0, 0x14($s2) -/* 063D74 80063174 01E03025 */ move $a2, $t7 -/* 063D78 80063178 26050004 */ addiu $a1, $s0, 4 -/* 063D7C 8006317C 0C032594 */ jal func_800C9650 -/* 063D80 80063180 00403825 */ move $a3, $v0 -.L80063184: -/* 063D84 80063184 8E100000 */ lw $s0, ($s0) -/* 063D88 80063188 00000000 */ nop -/* 063D8C 8006318C 1600FFE9 */ bnez $s0, .L80063134 -/* 063D90 80063190 00000000 */ nop -/* 063D94 80063194 1000018E */ b .L800637D0 -/* 063D98 80063198 8FBF003C */ lw $ra, 0x3c($sp) -/* 063D9C 8006319C 93B100CA */ lbu $s1, 0xca($sp) -/* 063DA0 800631A0 24010007 */ li $at, 7 -/* 063DA4 800631A4 1221002E */ beq $s1, $at, .L80063260 -/* 063DA8 800631A8 00071880 */ sll $v1, $a3, 2 -/* 063DAC 800631AC 24010008 */ li $at, 8 -/* 063DB0 800631B0 12210087 */ beq $s1, $at, .L800633D0 -/* 063DB4 800631B4 00071880 */ sll $v1, $a3, 2 -/* 063DB8 800631B8 2401000A */ li $at, 10 -/* 063DBC 800631BC 1221000F */ beq $s1, $at, .L800631FC -/* 063DC0 800631C0 00076880 */ sll $t5, $a3, 2 -/* 063DC4 800631C4 24010010 */ li $at, 16 -/* 063DC8 800631C8 122100D5 */ beq $s1, $at, .L80063520 -/* 063DCC 800631CC 00075880 */ sll $t3, $a3, 2 -/* 063DD0 800631D0 24010040 */ li $at, 64 -/* 063DD4 800631D4 122100D8 */ beq $s1, $at, .L80063538 -/* 063DD8 800631D8 00076080 */ sll $t4, $a3, 2 -/* 063DDC 800631DC 2401005B */ li $at, 91 -/* 063DE0 800631E0 122100FF */ beq $s1, $at, .L800635E0 -/* 063DE4 800631E4 00077080 */ sll $t6, $a3, 2 -/* 063DE8 800631E8 2401005F */ li $at, 95 -/* 063DEC 800631EC 12210112 */ beq $s1, $at, .L80063638 -/* 063DF0 800631F0 00000000 */ nop -/* 063DF4 800631F4 10000176 */ b .L800637D0 -/* 063DF8 800631F8 8FBF003C */ lw $ra, 0x3c($sp) -.L800631FC: -/* 063DFC 800631FC 8E4C0060 */ lw $t4, 0x60($s2) -/* 063E00 80063200 01A76821 */ addu $t5, $t5, $a3 -/* 063E04 80063204 000D6880 */ sll $t5, $t5, 2 -/* 063E08 80063208 018DC821 */ addu $t9, $t4, $t5 -/* 063E0C 8006320C A3330007 */ sb $s3, 7($t9) -/* 063E10 80063210 8E500064 */ lw $s0, 0x64($s2) -/* 063E14 80063214 00000000 */ nop -/* 063E18 80063218 1200016D */ beqz $s0, .L800637D0 -/* 063E1C 8006321C 8FBF003C */ lw $ra, 0x3c($sp) -.L80063220: -/* 063E20 80063220 92090031 */ lbu $t1, 0x31($s0) -/* 063E24 80063224 02002025 */ move $a0, $s0 -/* 063E28 80063228 16890007 */ bne $s4, $t1, .L80063248 -/* 063E2C 8006322C 00000000 */ nop -/* 063E30 80063230 0C002AAB */ jal func_8000AAAC -/* 063E34 80063234 02402825 */ move $a1, $s2 -/* 063E38 80063238 8E440014 */ lw $a0, 0x14($s2) -/* 063E3C 8006323C 26050004 */ addiu $a1, $s0, 4 -/* 063E40 80063240 0C0196C8 */ jal func_80065B20 -/* 063E44 80063244 304600FF */ andi $a2, $v0, 0xff -.L80063248: -/* 063E48 80063248 8E100000 */ lw $s0, ($s0) -/* 063E4C 8006324C 00000000 */ nop -/* 063E50 80063250 1600FFF3 */ bnez $s0, .L80063220 -/* 063E54 80063254 00000000 */ nop -/* 063E58 80063258 1000015D */ b .L800637D0 -/* 063E5C 8006325C 8FBF003C */ lw $ra, 0x3c($sp) -.L80063260: -/* 063E60 80063260 8E480060 */ lw $t0, 0x60($s2) -/* 063E64 80063264 00671821 */ addu $v1, $v1, $a3 -/* 063E68 80063268 00031880 */ sll $v1, $v1, 2 -/* 063E6C 8006326C 0103C021 */ addu $t8, $t0, $v1 -/* 063E70 80063270 A3130011 */ sb $s3, 0x11($t8) -/* 063E74 80063274 8E4A0060 */ lw $t2, 0x60($s2) -/* 063E78 80063278 44933000 */ mtc1 $s3, $f6 -/* 063E7C 8006327C 01431021 */ addu $v0, $t2, $v1 -/* 063E80 80063280 904B0010 */ lbu $t3, 0x10($v0) -/* 063E84 80063284 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 063E88 80063288 448B8000 */ mtc1 $t3, $f16 -/* 063E8C 8006328C 05610004 */ bgez $t3, .L800632A0 -/* 063E90 80063290 468084A0 */ cvt.s.w $f18, $f16 -/* 063E94 80063294 44812000 */ mtc1 $at, $f4 -/* 063E98 80063298 00000000 */ nop -/* 063E9C 8006329C 46049480 */ add.s $f18, $f18, $f4 -.L800632A0: -/* 063EA0 800632A0 06610005 */ bgez $s3, .L800632B8 -/* 063EA4 800632A4 46803220 */ cvt.s.w $f8, $f6 -/* 063EA8 800632A8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 063EAC 800632AC 44815000 */ mtc1 $at, $f10 -/* 063EB0 800632B0 00000000 */ nop -/* 063EB4 800632B4 460A4200 */ add.s $f8, $f8, $f10 -.L800632B8: -/* 063EB8 800632B8 46089402 */ mul.s $f16, $f18, $f8 -/* 063EBC 800632BC 3C0142FE */ li $at, 0x42FE0000 # 127.000000 -/* 063EC0 800632C0 44812000 */ mtc1 $at, $f4 -/* 063EC4 800632C4 240F0001 */ li $t7, 1 -/* 063EC8 800632C8 46048183 */ div.s $f6, $f16, $f4 -/* 063ECC 800632CC 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 063ED0 800632D0 444EF800 */ cfc1 $t6, $31 -/* 063ED4 800632D4 44CFF800 */ ctc1 $t7, $31 -/* 063ED8 800632D8 00000000 */ nop -/* 063EDC 800632DC 460032A4 */ cvt.w.s $f10, $f6 -/* 063EE0 800632E0 444FF800 */ cfc1 $t7, $31 -/* 063EE4 800632E4 00000000 */ nop -/* 063EE8 800632E8 31EF0078 */ andi $t7, $t7, 0x78 -/* 063EEC 800632EC 11E00012 */ beqz $t7, .L80063338 -/* 063EF0 800632F0 00000000 */ nop -/* 063EF4 800632F4 44815000 */ mtc1 $at, $f10 -/* 063EF8 800632F8 240F0001 */ li $t7, 1 -/* 063EFC 800632FC 460A3281 */ sub.s $f10, $f6, $f10 -/* 063F00 80063300 3C018000 */ lui $at, 0x8000 -/* 063F04 80063304 44CFF800 */ ctc1 $t7, $31 -/* 063F08 80063308 00000000 */ nop -/* 063F0C 8006330C 460052A4 */ cvt.w.s $f10, $f10 -/* 063F10 80063310 444FF800 */ cfc1 $t7, $31 -/* 063F14 80063314 00000000 */ nop -/* 063F18 80063318 31EF0078 */ andi $t7, $t7, 0x78 -/* 063F1C 8006331C 15E00004 */ bnez $t7, .L80063330 -/* 063F20 80063320 00000000 */ nop -/* 063F24 80063324 440F5000 */ mfc1 $t7, $f10 -/* 063F28 80063328 10000007 */ b .L80063348 -/* 063F2C 8006332C 01E17825 */ or $t7, $t7, $at -.L80063330: -/* 063F30 80063330 10000005 */ b .L80063348 -/* 063F34 80063334 240FFFFF */ li $t7, -1 -.L80063338: -/* 063F38 80063338 440F5000 */ mfc1 $t7, $f10 -/* 063F3C 8006333C 00000000 */ nop -/* 063F40 80063340 05E0FFFB */ bltz $t7, .L80063330 -/* 063F44 80063344 00000000 */ nop -.L80063348: -/* 063F48 80063348 A04F0009 */ sb $t7, 9($v0) -/* 063F4C 8006334C 8E500064 */ lw $s0, 0x64($s2) -/* 063F50 80063350 44CEF800 */ ctc1 $t6, $31 -/* 063F54 80063354 1200011E */ beqz $s0, .L800637D0 -/* 063F58 80063358 8FBF003C */ lw $ra, 0x3c($sp) -.L8006335C: -/* 063F5C 8006335C 920C0031 */ lbu $t4, 0x31($s0) -/* 063F60 80063360 00000000 */ nop -/* 063F64 80063364 168C0014 */ bne $s4, $t4, .L800633B8 -/* 063F68 80063368 00000000 */ nop -/* 063F6C 8006336C 920D0034 */ lbu $t5, 0x34($s0) -/* 063F70 80063370 24010003 */ li $at, 3 -/* 063F74 80063374 11A10010 */ beq $t5, $at, .L800633B8 -/* 063F78 80063378 02002025 */ move $a0, $s0 -/* 063F7C 8006337C 0C002A7E */ jal func_8000A9F8 -/* 063F80 80063380 02402825 */ move $a1, $s2 -/* 063F84 80063384 00028C00 */ sll $s1, $v0, 0x10 -/* 063F88 80063388 0011CC03 */ sra $t9, $s1, 0x10 -/* 063F8C 8006338C 8E45001C */ lw $a1, 0x1c($s2) -/* 063F90 80063390 03208825 */ move $s1, $t9 -/* 063F94 80063394 0C002AA2 */ jal func_8000AA88 -/* 063F98 80063398 02002025 */ move $a0, $s0 -/* 063F9C 8006339C 00113400 */ sll $a2, $s1, 0x10 -/* 063FA0 800633A0 00064C03 */ sra $t1, $a2, 0x10 -/* 063FA4 800633A4 8E440014 */ lw $a0, 0x14($s2) -/* 063FA8 800633A8 01203025 */ move $a2, $t1 -/* 063FAC 800633AC 26050004 */ addiu $a1, $s0, 4 -/* 063FB0 800633B0 0C032594 */ jal func_800C9650 -/* 063FB4 800633B4 00403825 */ move $a3, $v0 -.L800633B8: -/* 063FB8 800633B8 8E100000 */ lw $s0, ($s0) -/* 063FBC 800633BC 00000000 */ nop -/* 063FC0 800633C0 1600FFE6 */ bnez $s0, .L8006335C -/* 063FC4 800633C4 00000000 */ nop -/* 063FC8 800633C8 10000101 */ b .L800637D0 -/* 063FCC 800633CC 8FBF003C */ lw $ra, 0x3c($sp) -.L800633D0: -/* 063FD0 800633D0 8E480060 */ lw $t0, 0x60($s2) -/* 063FD4 800633D4 00671821 */ addu $v1, $v1, $a3 -/* 063FD8 800633D8 00031880 */ sll $v1, $v1, 2 -/* 063FDC 800633DC 0103C021 */ addu $t8, $t0, $v1 -/* 063FE0 800633E0 A3130010 */ sb $s3, 0x10($t8) -/* 063FE4 800633E4 8E4A0060 */ lw $t2, 0x60($s2) -/* 063FE8 800633E8 3C0142FE */ li $at, 0x42FE0000 # 127.000000 -/* 063FEC 800633EC 01431021 */ addu $v0, $t2, $v1 -/* 063FF0 800633F0 904B0010 */ lbu $t3, 0x10($v0) -/* 063FF4 800633F4 904E0011 */ lbu $t6, 0x11($v0) -/* 063FF8 800633F8 44818000 */ mtc1 $at, $f16 -/* 063FFC 800633FC 016E0019 */ multu $t3, $t6 -/* 064000 80063400 240D0001 */ li $t5, 1 -/* 064004 80063404 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 064008 80063408 00007812 */ mflo $t7 -/* 06400C 8006340C 448F9000 */ mtc1 $t7, $f18 -/* 064010 80063410 00000000 */ nop -/* 064014 80063414 46809220 */ cvt.s.w $f8, $f18 -/* 064018 80063418 00000000 */ nop -/* 06401C 8006341C 46104103 */ div.s $f4, $f8, $f16 -/* 064020 80063420 444CF800 */ cfc1 $t4, $31 -/* 064024 80063424 44CDF800 */ ctc1 $t5, $31 -/* 064028 80063428 00000000 */ nop -/* 06402C 8006342C 460021A4 */ cvt.w.s $f6, $f4 -/* 064030 80063430 444DF800 */ cfc1 $t5, $31 -/* 064034 80063434 00000000 */ nop -/* 064038 80063438 31AD0078 */ andi $t5, $t5, 0x78 -/* 06403C 8006343C 11A00012 */ beqz $t5, .L80063488 -/* 064040 80063440 00000000 */ nop -/* 064044 80063444 44813000 */ mtc1 $at, $f6 -/* 064048 80063448 240D0001 */ li $t5, 1 -/* 06404C 8006344C 46062181 */ sub.s $f6, $f4, $f6 -/* 064050 80063450 3C018000 */ lui $at, 0x8000 -/* 064054 80063454 44CDF800 */ ctc1 $t5, $31 -/* 064058 80063458 00000000 */ nop -/* 06405C 8006345C 460031A4 */ cvt.w.s $f6, $f6 -/* 064060 80063460 444DF800 */ cfc1 $t5, $31 -/* 064064 80063464 00000000 */ nop -/* 064068 80063468 31AD0078 */ andi $t5, $t5, 0x78 -/* 06406C 8006346C 15A00004 */ bnez $t5, .L80063480 -/* 064070 80063470 00000000 */ nop -/* 064074 80063474 440D3000 */ mfc1 $t5, $f6 -/* 064078 80063478 10000007 */ b .L80063498 -/* 06407C 8006347C 01A16825 */ or $t5, $t5, $at -.L80063480: -/* 064080 80063480 10000005 */ b .L80063498 -/* 064084 80063484 240DFFFF */ li $t5, -1 -.L80063488: -/* 064088 80063488 440D3000 */ mfc1 $t5, $f6 -/* 06408C 8006348C 00000000 */ nop -/* 064090 80063490 05A0FFFB */ bltz $t5, .L80063480 -/* 064094 80063494 00000000 */ nop -.L80063498: -/* 064098 80063498 A04D0009 */ sb $t5, 9($v0) -/* 06409C 8006349C 8E500064 */ lw $s0, 0x64($s2) -/* 0640A0 800634A0 44CCF800 */ ctc1 $t4, $31 -/* 0640A4 800634A4 120000CA */ beqz $s0, .L800637D0 -/* 0640A8 800634A8 8FBF003C */ lw $ra, 0x3c($sp) -.L800634AC: -/* 0640AC 800634AC 92190031 */ lbu $t9, 0x31($s0) -/* 0640B0 800634B0 00000000 */ nop -/* 0640B4 800634B4 16990014 */ bne $s4, $t9, .L80063508 -/* 0640B8 800634B8 00000000 */ nop -/* 0640BC 800634BC 92090034 */ lbu $t1, 0x34($s0) -/* 0640C0 800634C0 24010003 */ li $at, 3 -/* 0640C4 800634C4 11210010 */ beq $t1, $at, .L80063508 -/* 0640C8 800634C8 02002025 */ move $a0, $s0 -/* 0640CC 800634CC 0C002A7E */ jal func_8000A9F8 -/* 0640D0 800634D0 02402825 */ move $a1, $s2 -/* 0640D4 800634D4 00028C00 */ sll $s1, $v0, 0x10 -/* 0640D8 800634D8 00114403 */ sra $t0, $s1, 0x10 -/* 0640DC 800634DC 8E45001C */ lw $a1, 0x1c($s2) -/* 0640E0 800634E0 01008825 */ move $s1, $t0 -/* 0640E4 800634E4 0C002AA2 */ jal func_8000AA88 -/* 0640E8 800634E8 02002025 */ move $a0, $s0 -/* 0640EC 800634EC 00113400 */ sll $a2, $s1, 0x10 -/* 0640F0 800634F0 0006C403 */ sra $t8, $a2, 0x10 -/* 0640F4 800634F4 8E440014 */ lw $a0, 0x14($s2) -/* 0640F8 800634F8 03003025 */ move $a2, $t8 -/* 0640FC 800634FC 26050004 */ addiu $a1, $s0, 4 -/* 064100 80063500 0C032594 */ jal func_800C9650 -/* 064104 80063504 00403825 */ move $a3, $v0 -.L80063508: -/* 064108 80063508 8E100000 */ lw $s0, ($s0) -/* 06410C 8006350C 00000000 */ nop -/* 064110 80063510 1600FFE6 */ bnez $s0, .L800634AC -/* 064114 80063514 00000000 */ nop -/* 064118 80063518 100000AD */ b .L800637D0 -/* 06411C 8006351C 8FBF003C */ lw $ra, 0x3c($sp) -.L80063520: -/* 064120 80063520 8E4A0060 */ lw $t2, 0x60($s2) -/* 064124 80063524 01675821 */ addu $t3, $t3, $a3 -/* 064128 80063528 000B5880 */ sll $t3, $t3, 2 -/* 06412C 8006352C 014B7021 */ addu $t6, $t2, $t3 -/* 064130 80063530 100000A6 */ b .L800637CC -/* 064134 80063534 A1D30008 */ sb $s3, 8($t6) -.L80063538: -/* 064138 80063538 8E4F0060 */ lw $t7, 0x60($s2) -/* 06413C 8006353C 01876021 */ addu $t4, $t4, $a3 -/* 064140 80063540 000C6080 */ sll $t4, $t4, 2 -/* 064144 80063544 01EC6821 */ addu $t5, $t7, $t4 -/* 064148 80063548 A1B3000B */ sb $s3, 0xb($t5) -/* 06414C 8006354C 8E500064 */ lw $s0, 0x64($s2) -/* 064150 80063550 24110002 */ li $s1, 2 -/* 064154 80063554 1200009E */ beqz $s0, .L800637D0 -/* 064158 80063558 8FBF003C */ lw $ra, 0x3c($sp) -.L8006355C: -/* 06415C 8006355C 92190031 */ lbu $t9, 0x31($s0) -/* 064160 80063560 00000000 */ nop -/* 064164 80063564 16990018 */ bne $s4, $t9, .L800635C8 -/* 064168 80063568 00000000 */ nop -/* 06416C 8006356C 92020035 */ lbu $v0, 0x35($s0) -/* 064170 80063570 24010003 */ li $at, 3 -/* 064174 80063574 10410014 */ beq $v0, $at, .L800635C8 -/* 064178 80063578 2A610040 */ slti $at, $s3, 0x40 -/* 06417C 8006357C 14200005 */ bnez $at, .L80063594 -/* 064180 80063580 00000000 */ nop -/* 064184 80063584 14400010 */ bnez $v0, .L800635C8 -/* 064188 80063588 24090002 */ li $t1, 2 -/* 06418C 8006358C 1000000E */ b .L800635C8 -/* 064190 80063590 A2090035 */ sb $t1, 0x35($s0) -.L80063594: -/* 064194 80063594 16220003 */ bne $s1, $v0, .L800635A4 -/* 064198 80063598 24010004 */ li $at, 4 -/* 06419C 8006359C 1000000A */ b .L800635C8 -/* 0641A0 800635A0 A2000035 */ sb $zero, 0x35($s0) -.L800635A4: -/* 0641A4 800635A4 14410008 */ bne $v0, $at, .L800635C8 -/* 0641A8 800635A8 24080003 */ li $t0, 3 -/* 0641AC 800635AC 8E180020 */ lw $t8, 0x20($s0) -/* 0641B0 800635B0 A2080035 */ sb $t0, 0x35($s0) -/* 0641B4 800635B4 8F0A0000 */ lw $t2, ($t8) -/* 0641B8 800635B8 02402025 */ move $a0, $s2 -/* 0641BC 800635BC 8D460008 */ lw $a2, 8($t2) -/* 0641C0 800635C0 0C002AC0 */ jal func_8000AB00 -/* 0641C4 800635C4 26050004 */ addiu $a1, $s0, 4 -.L800635C8: -/* 0641C8 800635C8 8E100000 */ lw $s0, ($s0) -/* 0641CC 800635CC 00000000 */ nop -/* 0641D0 800635D0 1600FFE2 */ bnez $s0, .L8006355C -/* 0641D4 800635D4 00000000 */ nop -/* 0641D8 800635D8 1000007D */ b .L800637D0 -/* 0641DC 800635DC 8FBF003C */ lw $ra, 0x3c($sp) -.L800635E0: -/* 0641E0 800635E0 8E4B0060 */ lw $t3, 0x60($s2) -/* 0641E4 800635E4 01C77021 */ addu $t6, $t6, $a3 -/* 0641E8 800635E8 000E7080 */ sll $t6, $t6, 2 -/* 0641EC 800635EC 016E7821 */ addu $t7, $t3, $t6 -/* 0641F0 800635F0 A1F3000A */ sb $s3, 0xa($t7) -/* 0641F4 800635F4 8E500064 */ lw $s0, 0x64($s2) -/* 0641F8 800635F8 00000000 */ nop -/* 0641FC 800635FC 12000074 */ beqz $s0, .L800637D0 -/* 064200 80063600 8FBF003C */ lw $ra, 0x3c($sp) -.L80063604: -/* 064204 80063604 920C0031 */ lbu $t4, 0x31($s0) -/* 064208 80063608 26050004 */ addiu $a1, $s0, 4 -/* 06420C 8006360C 168C0004 */ bne $s4, $t4, .L80063620 -/* 064210 80063610 00000000 */ nop -/* 064214 80063614 8E440014 */ lw $a0, 0x14($s2) -/* 064218 80063618 0C032604 */ jal func_800C9810 -/* 06421C 8006361C 326600FF */ andi $a2, $s3, 0xff -.L80063620: -/* 064220 80063620 8E100000 */ lw $s0, ($s0) -/* 064224 80063624 00000000 */ nop -/* 064228 80063628 1600FFF6 */ bnez $s0, .L80063604 -/* 06422C 8006362C 00000000 */ nop -/* 064230 80063630 10000067 */ b .L800637D0 -/* 064234 80063634 8FBF003C */ lw $ra, 0x3c($sp) -.L80063638: -/* 064238 80063638 924D0034 */ lbu $t5, 0x34($s2) -/* 06423C 8006363C A2530036 */ sb $s3, 0x36($s2) -/* 064240 80063640 19A00062 */ blez $t5, .L800637CC -/* 064244 80063644 00008825 */ move $s1, $zero -/* 064248 80063648 0260A025 */ move $s4, $s3 -/* 06424C 8006364C AFA00054 */ sw $zero, 0x54($sp) -.L80063650: -/* 064250 80063650 8E590060 */ lw $t9, 0x60($s2) -/* 064254 80063654 8FA90054 */ lw $t1, 0x54($sp) -/* 064258 80063658 00000000 */ nop -/* 06425C 8006365C 03291021 */ addu $v0, $t9, $t1 -/* 064260 80063660 9048000A */ lbu $t0, 0xa($v0) -/* 064264 80063664 00000000 */ nop -/* 064268 80063668 0114082A */ slt $at, $t0, $s4 -/* 06426C 8006366C 10200012 */ beqz $at, .L800636B8 -/* 064270 80063670 8FAA0054 */ lw $t2, 0x54($sp) -/* 064274 80063674 A040000A */ sb $zero, 0xa($v0) -/* 064278 80063678 8E500064 */ lw $s0, 0x64($s2) -/* 06427C 8006367C 00000000 */ nop -/* 064280 80063680 1200000D */ beqz $s0, .L800636B8 -/* 064284 80063684 8FAA0054 */ lw $t2, 0x54($sp) -.L80063688: -/* 064288 80063688 92180031 */ lbu $t8, 0x31($s0) -/* 06428C 8006368C 26050004 */ addiu $a1, $s0, 4 -/* 064290 80063690 16380004 */ bne $s1, $t8, .L800636A4 -/* 064294 80063694 00000000 */ nop -/* 064298 80063698 8E440014 */ lw $a0, 0x14($s2) -/* 06429C 8006369C 0C032604 */ jal func_800C9810 -/* 0642A0 800636A0 326600FF */ andi $a2, $s3, 0xff -.L800636A4: -/* 0642A4 800636A4 8E100000 */ lw $s0, ($s0) -/* 0642A8 800636A8 00000000 */ nop -/* 0642AC 800636AC 1600FFF6 */ bnez $s0, .L80063688 -/* 0642B0 800636B0 00000000 */ nop -/* 0642B4 800636B4 8FAA0054 */ lw $t2, 0x54($sp) -.L800636B8: -/* 0642B8 800636B8 26310001 */ addiu $s1, $s1, 1 -/* 0642BC 800636BC 254B0014 */ addiu $t3, $t2, 0x14 -/* 0642C0 800636C0 AFAB0054 */ sw $t3, 0x54($sp) -/* 0642C4 800636C4 924E0034 */ lbu $t6, 0x34($s2) -/* 0642C8 800636C8 00000000 */ nop -/* 0642CC 800636CC 022E082A */ slt $at, $s1, $t6 -/* 0642D0 800636D0 1420FFDF */ bnez $at, .L80063650 -/* 0642D4 800636D4 00000000 */ nop -/* 0642D8 800636D8 1000003D */ b .L800637D0 -/* 0642DC 800636DC 8FBF003C */ lw $ra, 0x3c($sp) -/* 0642E0 800636E0 8E420020 */ lw $v0, 0x20($s2) -/* 0642E4 800636E4 93AF00CA */ lbu $t7, 0xca($sp) -/* 0642E8 800636E8 844C0000 */ lh $t4, ($v0) -/* 0642EC 800636EC 000F6880 */ sll $t5, $t7, 2 -/* 0642F0 800636F0 01EC082A */ slt $at, $t7, $t4 -/* 0642F4 800636F4 10200035 */ beqz $at, .L800637CC -/* 0642F8 800636F8 004DC821 */ addu $t9, $v0, $t5 -/* 0642FC 800636FC 8F25000C */ lw $a1, 0xc($t9) -/* 064300 80063700 02402025 */ move $a0, $s2 -/* 064304 80063704 0C002B66 */ jal func_8000AD98 -/* 064308 80063708 02803025 */ move $a2, $s4 -/* 06430C 8006370C 10000030 */ b .L800637D0 -/* 064310 80063710 8FBF003C */ lw $ra, 0x3c($sp) -/* 064314 80063714 00071880 */ sll $v1, $a3, 2 -/* 064318 80063718 8E4B0060 */ lw $t3, 0x60($s2) -/* 06431C 8006371C 00671821 */ addu $v1, $v1, $a3 -/* 064320 80063720 93A800CA */ lbu $t0, 0xca($sp) -/* 064324 80063724 00031880 */ sll $v1, $v1, 2 -/* 064328 80063728 001349C0 */ sll $t1, $s3, 7 -/* 06432C 8006372C 01637021 */ addu $t6, $t3, $v1 -/* 064330 80063730 85CC0004 */ lh $t4, 4($t6) -/* 064334 80063734 0128C021 */ addu $t8, $t1, $t0 -/* 064338 80063738 270AE000 */ addiu $t2, $t8, -0x2000 -/* 06433C 8006373C 018A0019 */ multu $t4, $t2 -/* 064340 80063740 AFA30058 */ sw $v1, 0x58($sp) -/* 064344 80063744 00002012 */ mflo $a0 -/* 064348 80063748 04810003 */ bgez $a0, .L80063758 -/* 06434C 8006374C 00047B43 */ sra $t7, $a0, 0xd -/* 064350 80063750 24811FFF */ addiu $at, $a0, 0x1fff -/* 064354 80063754 00017B43 */ sra $t7, $at, 0xd -.L80063758: -/* 064358 80063758 0C032678 */ jal func_800C99E0 -/* 06435C 8006375C 01E02025 */ move $a0, $t7 -/* 064360 80063760 E7A00068 */ swc1 $f0, 0x68($sp) -/* 064364 80063764 8FA30058 */ lw $v1, 0x58($sp) -/* 064368 80063768 8E4D0060 */ lw $t5, 0x60($s2) -/* 06436C 8006376C 00000000 */ nop -/* 064370 80063770 01A3C821 */ addu $t9, $t5, $v1 -/* 064374 80063774 E720000C */ swc1 $f0, 0xc($t9) -/* 064378 80063778 8E500064 */ lw $s0, 0x64($s2) -/* 06437C 8006377C 00000000 */ nop -/* 064380 80063780 12000013 */ beqz $s0, .L800637D0 -/* 064384 80063784 8FBF003C */ lw $ra, 0x3c($sp) -.L80063788: -/* 064388 80063788 92090031 */ lbu $t1, 0x31($s0) -/* 06438C 8006378C C7B20068 */ lwc1 $f18, 0x68($sp) -/* 064390 80063790 1689000A */ bne $s4, $t1, .L800637BC -/* 064394 80063794 00000000 */ nop -/* 064398 80063798 C60A0028 */ lwc1 $f10, 0x28($s0) -/* 06439C 8006379C C610002C */ lwc1 $f16, 0x2c($s0) -/* 0643A0 800637A0 46125202 */ mul.s $f8, $f10, $f18 -/* 0643A4 800637A4 8E440014 */ lw $a0, 0x14($s2) -/* 0643A8 800637A8 26050004 */ addiu $a1, $s0, 4 -/* 0643AC 800637AC 46104102 */ mul.s $f4, $f8, $f16 -/* 0643B0 800637B0 44062000 */ mfc1 $a2, $f4 -/* 0643B4 800637B4 0C0325E0 */ jal func_800C9780 -/* 0643B8 800637B8 00000000 */ nop -.L800637BC: -/* 0643BC 800637BC 8E100000 */ lw $s0, ($s0) -/* 0643C0 800637C0 00000000 */ nop -/* 0643C4 800637C4 1600FFF0 */ bnez $s0, .L80063788 -/* 0643C8 800637C8 00000000 */ nop -.L800637CC: -/* 0643CC 800637CC 8FBF003C */ lw $ra, 0x3c($sp) -.L800637D0: -/* 0643D0 800637D0 8FB00028 */ lw $s0, 0x28($sp) -/* 0643D4 800637D4 8FB1002C */ lw $s1, 0x2c($sp) -/* 0643D8 800637D8 8FB20030 */ lw $s2, 0x30($sp) -/* 0643DC 800637DC 8FB30034 */ lw $s3, 0x34($sp) -/* 0643E0 800637E0 8FB40038 */ lw $s4, 0x38($sp) -/* 0643E4 800637E4 03E00008 */ jr $ra -/* 0643E8 800637E8 27BD00D8 */ addiu $sp, $sp, 0xd8 - -glabel func_800637EC -/* 0643EC 800637EC 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0643F0 800637F0 AFBF0034 */ sw $ra, 0x34($sp) -/* 0643F4 800637F4 AFB60030 */ sw $s6, 0x30($sp) -/* 0643F8 800637F8 AFB5002C */ sw $s5, 0x2c($sp) -/* 0643FC 800637FC AFB40028 */ sw $s4, 0x28($sp) -/* 064400 80063800 AFB30024 */ sw $s3, 0x24($sp) -/* 064404 80063804 AFB20020 */ sw $s2, 0x20($sp) -/* 064408 80063808 AFB1001C */ sw $s1, 0x1c($sp) -/* 06440C 8006380C AFB00018 */ sw $s0, 0x18($sp) -/* 064410 80063810 90AE0008 */ lbu $t6, 8($a1) -/* 064414 80063814 240100FF */ li $at, 255 -/* 064418 80063818 0080A825 */ move $s5, $a0 -/* 06441C 8006381C 00009025 */ move $s2, $zero -/* 064420 80063820 15C1004E */ bne $t6, $at, .L8006395C -/* 064424 80063824 00009825 */ move $s3, $zero -/* 064428 80063828 90AF0009 */ lbu $t7, 9($a1) -/* 06442C 8006382C 24010051 */ li $at, 81 -/* 064430 80063830 15E1004A */ bne $t7, $at, .L8006395C -/* 064434 80063834 24A20004 */ addiu $v0, $a1, 4 -/* 064438 80063838 90580007 */ lbu $t8, 7($v0) -/* 06443C 8006383C 90480008 */ lbu $t0, 8($v0) -/* 064440 80063840 904B0009 */ lbu $t3, 9($v0) -/* 064444 80063844 0018CC00 */ sll $t9, $t8, 0x10 -/* 064448 80063848 00084A00 */ sll $t1, $t0, 8 -/* 06444C 8006384C 03295025 */ or $t2, $t9, $t1 -/* 064450 80063850 014B1825 */ or $v1, $t2, $t3 -/* 064454 80063854 44832000 */ mtc1 $v1, $f4 -/* 064458 80063858 8C960024 */ lw $s6, 0x24($a0) -/* 06445C 8006385C 46802120 */ cvt.s.w $f4, $f4 -/* 064460 80063860 44052000 */ mfc1 $a1, $f4 -/* 064464 80063864 0C018E8D */ jal func_80063A34 -/* 064468 80063868 00000000 */ nop -/* 06446C 8006386C 8EB00050 */ lw $s0, 0x50($s5) -/* 064470 80063870 00000000 */ nop -/* 064474 80063874 1200001D */ beqz $s0, .L800638EC -/* 064478 80063878 00000000 */ nop -/* 06447C 8006387C 24140015 */ li $s4, 21 -.L80063880: -/* 064480 80063880 8E0C0008 */ lw $t4, 8($s0) -/* 064484 80063884 860D000C */ lh $t5, 0xc($s0) -/* 064488 80063888 8E110000 */ lw $s1, ($s0) -/* 06448C 8006388C 168D0015 */ bne $s4, $t5, .L800638E4 -/* 064490 80063890 024C9021 */ addu $s2, $s2, $t4 -/* 064494 80063894 0C0321D8 */ jal func_800C8760 -/* 064498 80063898 02002025 */ move $a0, $s0 -/* 06449C 8006389C 12600006 */ beqz $s3, .L800638B8 -/* 0644A0 800638A0 00000000 */ nop -/* 0644A4 800638A4 02002025 */ move $a0, $s0 -/* 0644A8 800638A8 0C0321E4 */ jal func_800C8790 -/* 0644AC 800638AC 02602825 */ move $a1, $s3 -/* 0644B0 800638B0 10000004 */ b .L800638C4 -/* 0644B4 800638B4 00000000 */ nop -.L800638B8: -/* 0644B8 800638B8 AE000000 */ sw $zero, ($s0) -/* 0644BC 800638BC AE000004 */ sw $zero, 4($s0) -/* 0644C0 800638C0 02009825 */ move $s3, $s0 -.L800638C4: -/* 0644C4 800638C4 12200006 */ beqz $s1, .L800638E0 -/* 0644C8 800638C8 02401825 */ move $v1, $s2 -/* 0644CC 800638CC 8E020008 */ lw $v0, 8($s0) -/* 0644D0 800638D0 8E2E0008 */ lw $t6, 8($s1) -/* 0644D4 800638D4 02429023 */ subu $s2, $s2, $v0 -/* 0644D8 800638D8 01C27821 */ addu $t7, $t6, $v0 -/* 0644DC 800638DC AE2F0008 */ sw $t7, 8($s1) -.L800638E0: -/* 0644E0 800638E0 AE030008 */ sw $v1, 8($s0) -.L800638E4: -/* 0644E4 800638E4 1620FFE6 */ bnez $s1, .L80063880 -/* 0644E8 800638E8 02208025 */ move $s0, $s1 -.L800638EC: -/* 0644EC 800638EC 1260001B */ beqz $s3, .L8006395C -/* 0644F0 800638F0 02608025 */ move $s0, $s3 -/* 0644F4 800638F4 26B20048 */ addiu $s2, $s5, 0x48 -.L800638F8: -/* 0644F8 800638F8 8E180008 */ lw $t8, 8($s0) -/* 0644FC 800638FC 8EA80024 */ lw $t0, 0x24($s5) -/* 064500 80063900 0316001A */ div $zero, $t8, $s6 -/* 064504 80063904 8E110000 */ lw $s1, ($s0) -/* 064508 80063908 16C00002 */ bnez $s6, .L80063914 -/* 06450C 8006390C 00000000 */ nop -/* 064510 80063910 0007000D */ break 7 -.L80063914: -/* 064514 80063914 2401FFFF */ li $at, -1 -/* 064518 80063918 16C10004 */ bne $s6, $at, .L8006392C -/* 06451C 8006391C 3C018000 */ lui $at, 0x8000 -/* 064520 80063920 17010002 */ bne $t8, $at, .L8006392C -/* 064524 80063924 00000000 */ nop -/* 064528 80063928 0006000D */ break 6 -.L8006392C: -/* 06452C 8006392C 02402025 */ move $a0, $s2 -/* 064530 80063930 02002825 */ move $a1, $s0 -/* 064534 80063934 00001012 */ mflo $v0 -/* 064538 80063938 00000000 */ nop -/* 06453C 8006393C 00000000 */ nop -/* 064540 80063940 01020019 */ multu $t0, $v0 -/* 064544 80063944 0000C812 */ mflo $t9 -/* 064548 80063948 AE190008 */ sw $t9, 8($s0) -/* 06454C 8006394C 0C018E61 */ jal func_80063984 -/* 064550 80063950 00000000 */ nop -/* 064554 80063954 1620FFE8 */ bnez $s1, .L800638F8 -/* 064558 80063958 02208025 */ move $s0, $s1 -.L8006395C: -/* 06455C 8006395C 8FBF0034 */ lw $ra, 0x34($sp) -/* 064560 80063960 8FB00018 */ lw $s0, 0x18($sp) -/* 064564 80063964 8FB1001C */ lw $s1, 0x1c($sp) -/* 064568 80063968 8FB20020 */ lw $s2, 0x20($sp) -/* 06456C 8006396C 8FB30024 */ lw $s3, 0x24($sp) -/* 064570 80063970 8FB40028 */ lw $s4, 0x28($sp) -/* 064574 80063974 8FB5002C */ lw $s5, 0x2c($sp) -/* 064578 80063978 8FB60030 */ lw $s6, 0x30($sp) -/* 06457C 8006397C 03E00008 */ jr $ra -/* 064580 80063980 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_80063984 -/* 064584 80063984 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 064588 80063988 AFBF0014 */ sw $ra, 0x14($sp) -/* 06458C 8006398C AFA40020 */ sw $a0, 0x20($sp) -/* 064590 80063990 24040001 */ li $a0, 1 -/* 064594 80063994 0C03268C */ jal func_800C9A30 -/* 064598 80063998 AFA50024 */ sw $a1, 0x24($sp) -/* 06459C 8006399C 8FA30020 */ lw $v1, 0x20($sp) -/* 0645A0 800639A0 8FA70024 */ lw $a3, 0x24($sp) -/* 0645A4 800639A4 2401FFF8 */ li $at, -8 -/* 0645A8 800639A8 AFA2001C */ sw $v0, 0x1c($sp) -/* 0645AC 800639AC 1061001A */ beq $v1, $at, .L80063A18 -/* 0645B0 800639B0 24650008 */ addiu $a1, $v1, 8 -.L800639B4: -/* 0645B4 800639B4 8CA40000 */ lw $a0, ($a1) -/* 0645B8 800639B8 00000000 */ nop -/* 0645BC 800639BC 14800005 */ bnez $a0, .L800639D4 -/* 0645C0 800639C0 00000000 */ nop -/* 0645C4 800639C4 0C0321E4 */ jal func_800C8790 -/* 0645C8 800639C8 00E02025 */ move $a0, $a3 -/* 0645CC 800639CC 10000013 */ b .L80063A1C -/* 0645D0 800639D0 8FA4001C */ lw $a0, 0x1c($sp) -.L800639D4: -/* 0645D4 800639D4 8CE20008 */ lw $v0, 8($a3) -/* 0645D8 800639D8 8C830008 */ lw $v1, 8($a0) -/* 0645DC 800639DC 00000000 */ nop -/* 0645E0 800639E0 0043082A */ slt $at, $v0, $v1 -/* 0645E4 800639E4 10200007 */ beqz $at, .L80063A04 -/* 0645E8 800639E8 00437823 */ subu $t7, $v0, $v1 -/* 0645EC 800639EC 00627023 */ subu $t6, $v1, $v0 -/* 0645F0 800639F0 AC8E0008 */ sw $t6, 8($a0) -/* 0645F4 800639F4 0C0321E4 */ jal func_800C8790 -/* 0645F8 800639F8 00E02025 */ move $a0, $a3 -/* 0645FC 800639FC 10000007 */ b .L80063A1C -/* 064600 80063A00 8FA4001C */ lw $a0, 0x1c($sp) -.L80063A04: -/* 064604 80063A04 ACEF0008 */ sw $t7, 8($a3) -/* 064608 80063A08 8CA50000 */ lw $a1, ($a1) -/* 06460C 80063A0C 00000000 */ nop -/* 064610 80063A10 14A0FFE8 */ bnez $a1, .L800639B4 -/* 064614 80063A14 00000000 */ nop -.L80063A18: -/* 064618 80063A18 8FA4001C */ lw $a0, 0x1c($sp) -.L80063A1C: -/* 06461C 80063A1C 0C03268C */ jal func_800C9A30 -/* 064620 80063A20 00000000 */ nop -/* 064624 80063A24 8FBF0014 */ lw $ra, 0x14($sp) -/* 064628 80063A28 27BD0020 */ addiu $sp, $sp, 0x20 -/* 06462C 80063A2C 03E00008 */ jr $ra -/* 064630 80063A30 00000000 */ nop - -glabel func_80063A34 -/* 064634 80063A34 8C820018 */ lw $v0, 0x18($a0) -/* 064638 80063A38 44856000 */ mtc1 $a1, $f12 -/* 06463C 80063A3C 1040000F */ beqz $v0, .L80063A7C -/* 064640 80063A40 241801E8 */ li $t8, 488 -/* 064644 80063A44 C4440008 */ lwc1 $f4, 8($v0) -/* 064648 80063A48 00000000 */ nop -/* 06464C 80063A4C 46046182 */ mul.s $f6, $f12, $f4 -/* 064650 80063A50 444EF800 */ cfc1 $t6, $31 -/* 064654 80063A54 00000000 */ nop -/* 064658 80063A58 35C10003 */ ori $at, $t6, 3 -/* 06465C 80063A5C 38210002 */ xori $at, $at, 2 -/* 064660 80063A60 44C1F800 */ ctc1 $at, $31 -/* 064664 80063A64 00000000 */ nop -/* 064668 80063A68 46003224 */ cvt.w.s $f8, $f6 -/* 06466C 80063A6C 440F4000 */ mfc1 $t7, $f8 -/* 064670 80063A70 44CEF800 */ ctc1 $t6, $31 -/* 064674 80063A74 03E00008 */ jr $ra -/* 064678 80063A78 AC8F0024 */ sw $t7, 0x24($a0) - -.L80063A7C: -/* 06467C 80063A7C AC980024 */ sw $t8, 0x24($a0) -/* 064680 80063A80 03E00008 */ jr $ra -/* 064684 80063A84 00000000 */ nop - -/* 064688 80063A88 00000000 */ nop -/* 06468C 80063A8C 00000000 */ nop diff --git a/asm/unknown_0646F0.s b/asm/unknown_0646F0.s deleted file mode 100755 index 2d191d46..00000000 --- a/asm/unknown_0646F0.s +++ /dev/null @@ -1,56 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_80063AF0 -/* 0646F0 80063AF0 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0646F4 80063AF4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0646F8 80063AF8 AFA40028 */ sw $a0, 0x28($sp) -/* 0646FC 80063AFC AFA5002C */ sw $a1, 0x2c($sp) -/* 064700 80063B00 00A03825 */ move $a3, $a1 -/* 064704 80063B04 240E0002 */ li $t6, 2 -/* 064708 80063B08 240F00B0 */ li $t7, 176 -/* 06470C 80063B0C 2418006A */ li $t8, 106 -/* 064710 80063B10 A7AE0018 */ sh $t6, 0x18($sp) -/* 064714 80063B14 AFA0001C */ sw $zero, 0x1c($sp) -/* 064718 80063B18 A3AF0020 */ sb $t7, 0x20($sp) -/* 06471C 80063B1C A3B80021 */ sb $t8, 0x21($sp) -/* 064720 80063B20 A3A70022 */ sb $a3, 0x22($sp) -/* 064724 80063B24 27A50018 */ addiu $a1, $sp, 0x18 -/* 064728 80063B28 24840048 */ addiu $a0, $a0, 0x48 -/* 06472C 80063B2C 0C03246B */ jal func_800C91AC -/* 064730 80063B30 00003025 */ move $a2, $zero -/* 064734 80063B34 8FBF0014 */ lw $ra, 0x14($sp) -/* 064738 80063B38 27BD0028 */ addiu $sp, $sp, 0x28 -/* 06473C 80063B3C 03E00008 */ jr $ra -/* 064740 80063B40 00000000 */ nop - -glabel func_80063B44 -/* 064744 80063B44 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 064748 80063B48 AFBF0014 */ sw $ra, 0x14($sp) -/* 06474C 80063B4C AFA40028 */ sw $a0, 0x28($sp) -/* 064750 80063B50 AFA5002C */ sw $a1, 0x2c($sp) -/* 064754 80063B54 00A03825 */ move $a3, $a1 -/* 064758 80063B58 240E0002 */ li $t6, 2 -/* 06475C 80063B5C 240F00B0 */ li $t7, 176 -/* 064760 80063B60 2418006C */ li $t8, 108 -/* 064764 80063B64 A7AE0018 */ sh $t6, 0x18($sp) -/* 064768 80063B68 AFA0001C */ sw $zero, 0x1c($sp) -/* 06476C 80063B6C A3AF0020 */ sb $t7, 0x20($sp) -/* 064770 80063B70 A3B80021 */ sb $t8, 0x21($sp) -/* 064774 80063B74 A3A70022 */ sb $a3, 0x22($sp) -/* 064778 80063B78 27A50018 */ addiu $a1, $sp, 0x18 -/* 06477C 80063B7C 24840048 */ addiu $a0, $a0, 0x48 -/* 064780 80063B80 0C03246B */ jal func_800C91AC -/* 064784 80063B84 00003025 */ move $a2, $zero -/* 064788 80063B88 8FBF0014 */ lw $ra, 0x14($sp) -/* 06478C 80063B8C 27BD0028 */ addiu $sp, $sp, 0x28 -/* 064790 80063B90 03E00008 */ jr $ra -/* 064794 80063B94 00000000 */ nop - -/* 064798 80063B98 00000000 */ nop -/* 06479C 80063B9C 00000000 */ nop diff --git a/asm/unknown_064830.s b/asm/unknown_064830.s deleted file mode 100755 index aa947d5d..00000000 --- a/asm/unknown_064830.s +++ /dev/null @@ -1,1436 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel D_80063C30 -/* 064830 80063C30 27BDFF60 */ addiu $sp, $sp, -0xa0 -/* 064834 80063C34 AFB3002C */ sw $s3, 0x2c($sp) -/* 064838 80063C38 00809825 */ move $s3, $a0 -/* 06483C 80063C3C AFBF0044 */ sw $ra, 0x44($sp) -/* 064840 80063C40 AFBE0040 */ sw $fp, 0x40($sp) -/* 064844 80063C44 AFB7003C */ sw $s7, 0x3c($sp) -/* 064848 80063C48 AFB60038 */ sw $s6, 0x38($sp) -/* 06484C 80063C4C AFB50034 */ sw $s5, 0x34($sp) -/* 064850 80063C50 AFB40030 */ sw $s4, 0x30($sp) -/* 064854 80063C54 AFB20028 */ sw $s2, 0x28($sp) -/* 064858 80063C58 AFB10024 */ sw $s1, 0x24($sp) -/* 06485C 80063C5C AFB00020 */ sw $s0, 0x20($sp) -/* 064860 80063C60 8C840000 */ lw $a0, ($a0) -/* 064864 80063C64 8FAE00B0 */ lw $t6, 0xb0($sp) -/* 064868 80063C68 AFA0007C */ sw $zero, 0x7c($sp) -/* 06486C 80063C6C AFAE0010 */ sw $t6, 0x10($sp) -/* 064870 80063C70 8C990004 */ lw $t9, 4($a0) -/* 064874 80063C74 00C0B025 */ move $s6, $a2 -/* 064878 80063C78 0320F809 */ jalr $t9 -/* 06487C 80063C7C 00000000 */ nop -/* 064880 80063C80 3C0F800E */ lui $t7, %hi(D_800DCEB0) # $t7, 0x800e -/* 064884 80063C84 91EFCEB0 */ lbu $t7, %lo(D_800DCEB0)($t7) -/* 064888 80063C88 8FA3007C */ lw $v1, 0x7c($sp) -/* 06488C 80063C8C 15E00003 */ bnez $t7, .L80063C9C -/* 064890 80063C90 00408025 */ move $s0, $v0 -/* 064894 80063C94 100000B4 */ b .L80063F68 -/* 064898 80063C98 8FBF0044 */ lw $ra, 0x44($sp) -.L80063C9C: -/* 06489C 80063C9C 02001025 */ move $v0, $s0 -/* 0648A0 80063CA0 00168840 */ sll $s1, $s6, 1 -/* 0648A4 80063CA4 322BFFFF */ andi $t3, $s1, 0xffff -/* 0648A8 80063CA8 26080008 */ addiu $t0, $s0, 8 -/* 0648AC 80063CAC 3C180800 */ lui $t8, 0x800 -/* 0648B0 80063CB0 AC580000 */ sw $t8, ($v0) -/* 0648B4 80063CB4 AC4B0004 */ sw $t3, 4($v0) -/* 0648B8 80063CB8 3C0C0C00 */ lui $t4, (0x0C00DA83 >> 16) # lui $t4, 0xc00 -/* 0648BC 80063CBC 3C0D06C0 */ lui $t5, (0x06C006C0 >> 16) # lui $t5, 0x6c0 -/* 0648C0 80063CC0 35AD06C0 */ ori $t5, (0x06C006C0 & 0xFFFF) # ori $t5, $t5, 0x6c0 -/* 0648C4 80063CC4 358CDA83 */ ori $t4, (0x0C00DA83 & 0xFFFF) # ori $t4, $t4, 0xda83 -/* 0648C8 80063CC8 AD0C0000 */ sw $t4, ($t0) -/* 0648CC 80063CCC AD0D0004 */ sw $t5, 4($t0) -/* 0648D0 80063CD0 25090008 */ addiu $t1, $t0, 8 -/* 0648D4 80063CD4 3C0E0C00 */ lui $t6, (0x0C005A82 >> 16) # lui $t6, 0xc00 -/* 0648D8 80063CD8 3C190800 */ lui $t9, (0x080006C0 >> 16) # lui $t9, 0x800 -/* 0648DC 80063CDC 373906C0 */ ori $t9, (0x080006C0 & 0xFFFF) # ori $t9, $t9, 0x6c0 -/* 0648E0 80063CE0 35CE5A82 */ ori $t6, (0x0C005A82 & 0xFFFF) # ori $t6, $t6, 0x5a82 -/* 0648E4 80063CE4 AD2E0000 */ sw $t6, ($t1) -/* 0648E8 80063CE8 AD390004 */ sw $t9, 4($t1) -/* 0648EC 80063CEC 8E650018 */ lw $a1, 0x18($s3) -/* 0648F0 80063CF0 25300008 */ addiu $s0, $t1, 8 -/* 0648F4 80063CF4 0000A825 */ move $s5, $zero -/* 0648F8 80063CF8 24120140 */ li $s2, 320 -/* 0648FC 80063CFC AFB00010 */ sw $s0, 0x10($sp) -/* 064900 80063D00 AFAB0048 */ sw $t3, 0x48($sp) -/* 064904 80063D04 AFB10050 */ sw $s1, 0x50($sp) -/* 064908 80063D08 AFA3007C */ sw $v1, 0x7c($sp) -/* 06490C 80063D0C 02602025 */ move $a0, $s3 -/* 064910 80063D10 240606C0 */ li $a2, 1728 -/* 064914 80063D14 0C01918E */ jal func_80064638 -/* 064918 80063D18 02C03825 */ move $a3, $s6 -/* 06491C 80063D1C 8FA3007C */ lw $v1, 0x7c($sp) -/* 064920 80063D20 3C0F0200 */ lui $t7, (0x02000800 >> 16) # lui $t7, 0x200 -/* 064924 80063D24 35EF0800 */ ori $t7, (0x02000800 & 0xFFFF) # ori $t7, $t7, 0x800 -/* 064928 80063D28 AC4F0000 */ sw $t7, ($v0) -/* 06492C 80063D2C AC510004 */ sw $s1, 4($v0) -/* 064930 80063D30 92780024 */ lbu $t8, 0x24($s3) -/* 064934 80063D34 24500008 */ addiu $s0, $v0, 8 -/* 064938 80063D38 1B000076 */ blez $t8, .L80063F14 -/* 06493C 80063D3C 0000B825 */ move $s7, $zero -/* 064940 80063D40 8E620018 */ lw $v0, 0x18($s3) -/* 064944 80063D44 00000000 */ nop -.L80063D48: -/* 064948 80063D48 00176880 */ sll $t5, $s7, 2 -/* 06494C 80063D4C 8E6C0020 */ lw $t4, 0x20($s3) -/* 064950 80063D50 01B76821 */ addu $t5, $t5, $s7 -/* 064954 80063D54 000D68C0 */ sll $t5, $t5, 3 -/* 064958 80063D58 018D8821 */ addu $s1, $t4, $t5 -/* 06495C 80063D5C 8E2E0000 */ lw $t6, ($s1) -/* 064960 80063D60 8E380004 */ lw $t8, 4($s1) -/* 064964 80063D64 000EC823 */ negu $t9, $t6 -/* 064968 80063D68 00197840 */ sll $t7, $t9, 1 -/* 06496C 80063D6C 00186023 */ negu $t4, $t8 -/* 064970 80063D70 004FA021 */ addu $s4, $v0, $t7 -/* 064974 80063D74 000C6840 */ sll $t5, $t4, 1 -/* 064978 80063D78 16830009 */ bne $s4, $v1, .L80063DA0 -/* 06497C 80063D7C 004DF021 */ addu $fp, $v0, $t5 -/* 064980 80063D80 02407025 */ move $t6, $s2 -/* 064984 80063D84 00159400 */ sll $s2, $s5, 0x10 -/* 064988 80063D88 000EAC00 */ sll $s5, $t6, 0x10 -/* 06498C 80063D8C 00157C03 */ sra $t7, $s5, 0x10 -/* 064990 80063D90 0012CC03 */ sra $t9, $s2, 0x10 -/* 064994 80063D94 03209025 */ move $s2, $t9 -/* 064998 80063D98 10000008 */ b .L80063DBC -/* 06499C 80063D9C 01E0A825 */ move $s5, $t7 -.L80063DA0: -/* 0649A0 80063DA0 02602025 */ move $a0, $s3 -/* 0649A4 80063DA4 02802825 */ move $a1, $s4 -/* 0649A8 80063DA8 02A03025 */ move $a2, $s5 -/* 0649AC 80063DAC 02C03825 */ move $a3, $s6 -/* 0649B0 80063DB0 0C019128 */ jal func_800644A0 -/* 0649B4 80063DB4 AFB00010 */ sw $s0, 0x10($sp) -/* 0649B8 80063DB8 00408025 */ move $s0, $v0 -.L80063DBC: -/* 0649BC 80063DBC 02602025 */ move $a0, $s3 -/* 0649C0 80063DC0 02202825 */ move $a1, $s1 -/* 0649C4 80063DC4 02403025 */ move $a2, $s2 -/* 0649C8 80063DC8 02C03825 */ move $a3, $s6 -/* 0649CC 80063DCC 0C019089 */ jal func_80064224 -/* 0649D0 80063DD0 AFB00010 */ sw $s0, 0x10($sp) -/* 0649D4 80063DD4 86240008 */ lh $a0, 8($s1) -/* 0649D8 80063DD8 00408025 */ move $s0, $v0 -/* 0649DC 80063DDC 10800015 */ beqz $a0, .L80063E34 -/* 0649E0 80063DE0 308CFFFF */ andi $t4, $a0, 0xffff -/* 0649E4 80063DE4 3C010C00 */ lui $at, 0xc00 -/* 0649E8 80063DE8 0015CC00 */ sll $t9, $s5, 0x10 -/* 0649EC 80063DEC 324FFFFF */ andi $t7, $s2, 0xffff -/* 0649F0 80063DF0 032FC025 */ or $t8, $t9, $t7 -/* 0649F4 80063DF4 01816825 */ or $t5, $t4, $at -/* 0649F8 80063DF8 AC4D0000 */ sw $t5, ($v0) -/* 0649FC 80063DFC AC580004 */ sw $t8, 4($v0) -/* 064A00 80063E00 8E2C0024 */ lw $t4, 0x24($s1) -/* 064A04 80063E04 24500008 */ addiu $s0, $v0, 8 -/* 064A08 80063E08 1580000A */ bnez $t4, .L80063E34 -/* 064A0C 80063E0C 00000000 */ nop -/* 064A10 80063E10 8E2D0020 */ lw $t5, 0x20($s1) -/* 064A14 80063E14 02602025 */ move $a0, $s3 -/* 064A18 80063E18 15A00006 */ bnez $t5, .L80063E34 -/* 064A1C 80063E1C 03C02825 */ move $a1, $fp -/* 064A20 80063E20 02403025 */ move $a2, $s2 -/* 064A24 80063E24 02C03825 */ move $a3, $s6 -/* 064A28 80063E28 0C01918E */ jal func_80064638 -/* 064A2C 80063E2C AFB00010 */ sw $s0, 0x10($sp) -/* 064A30 80063E30 00408025 */ move $s0, $v0 -.L80063E34: -/* 064A34 80063E34 8623000A */ lh $v1, 0xa($s1) -/* 064A38 80063E38 02001025 */ move $v0, $s0 -/* 064A3C 80063E3C 10600010 */ beqz $v1, .L80063E80 -/* 064A40 80063E40 3079FFFF */ andi $t9, $v1, 0xffff -/* 064A44 80063E44 3C010C00 */ lui $at, 0xc00 -/* 064A48 80063E48 00126400 */ sll $t4, $s2, 0x10 -/* 064A4C 80063E4C 32ADFFFF */ andi $t5, $s5, 0xffff -/* 064A50 80063E50 018D7025 */ or $t6, $t4, $t5 -/* 064A54 80063E54 03217825 */ or $t7, $t9, $at -/* 064A58 80063E58 AC4F0000 */ sw $t7, ($v0) -/* 064A5C 80063E5C AC4E0004 */ sw $t6, 4($v0) -/* 064A60 80063E60 26100008 */ addiu $s0, $s0, 8 -/* 064A64 80063E64 AFB00010 */ sw $s0, 0x10($sp) -/* 064A68 80063E68 02602025 */ move $a0, $s3 -/* 064A6C 80063E6C 02802825 */ move $a1, $s4 -/* 064A70 80063E70 02A03025 */ move $a2, $s5 -/* 064A74 80063E74 0C01918E */ jal func_80064638 -/* 064A78 80063E78 02C03825 */ move $a3, $s6 -/* 064A7C 80063E7C 00408025 */ move $s0, $v0 -.L80063E80: -/* 064A80 80063E80 8E240020 */ lw $a0, 0x20($s1) -/* 064A84 80063E84 02402825 */ move $a1, $s2 -/* 064A88 80063E88 10800004 */ beqz $a0, .L80063E9C -/* 064A8C 80063E8C 02C03025 */ move $a2, $s6 -/* 064A90 80063E90 0C0191F4 */ jal func_800647D0 -/* 064A94 80063E94 02003825 */ move $a3, $s0 -/* 064A98 80063E98 00408025 */ move $s0, $v0 -.L80063E9C: -/* 064A9C 80063E9C 8E390024 */ lw $t9, 0x24($s1) -/* 064AA0 80063EA0 02602025 */ move $a0, $s3 -/* 064AA4 80063EA4 17200006 */ bnez $t9, .L80063EC0 -/* 064AA8 80063EA8 03C02825 */ move $a1, $fp -/* 064AAC 80063EAC 02403025 */ move $a2, $s2 -/* 064AB0 80063EB0 02C03825 */ move $a3, $s6 -/* 064AB4 80063EB4 0C01918E */ jal func_80064638 -/* 064AB8 80063EB8 AFB00010 */ sw $s0, 0x10($sp) -/* 064ABC 80063EBC 00408025 */ move $s0, $v0 -.L80063EC0: -/* 064AC0 80063EC0 8623000C */ lh $v1, 0xc($s1) -/* 064AC4 80063EC4 26F70001 */ addiu $s7, $s7, 1 -/* 064AC8 80063EC8 10600009 */ beqz $v1, .L80063EF0 -/* 064ACC 80063ECC 02001025 */ move $v0, $s0 -/* 064AD0 80063ED0 3078FFFF */ andi $t8, $v1, 0xffff -/* 064AD4 80063ED4 3C010C00 */ lui $at, 0xc00 -/* 064AD8 80063ED8 00127400 */ sll $t6, $s2, 0x10 -/* 064ADC 80063EDC 35D90800 */ ori $t9, $t6, 0x800 -/* 064AE0 80063EE0 03016025 */ or $t4, $t8, $at -/* 064AE4 80063EE4 AC4C0000 */ sw $t4, ($v0) -/* 064AE8 80063EE8 AC590004 */ sw $t9, 4($v0) -/* 064AEC 80063EEC 26100008 */ addiu $s0, $s0, 8 -.L80063EF0: -/* 064AF0 80063EF0 926E0024 */ lbu $t6, 0x24($s3) -/* 064AF4 80063EF4 8E2F0004 */ lw $t7, 4($s1) -/* 064AF8 80063EF8 00176400 */ sll $t4, $s7, 0x10 -/* 064AFC 80063EFC 8E620018 */ lw $v0, 0x18($s3) -/* 064B00 80063F00 000CBC03 */ sra $s7, $t4, 0x10 -/* 064B04 80063F04 02EE082A */ slt $at, $s7, $t6 -/* 064B08 80063F08 000FC040 */ sll $t8, $t7, 1 -/* 064B0C 80063F0C 1420FF8E */ bnez $at, .L80063D48 -/* 064B10 80063F10 00581821 */ addu $v1, $v0, $t8 -.L80063F14: -/* 064B14 80063F14 8E63001C */ lw $v1, 0x1c($s3) -/* 064B18 80063F18 8E790018 */ lw $t9, 0x18($s3) -/* 064B1C 80063F1C 8FAF0050 */ lw $t7, 0x50($sp) -/* 064B20 80063F20 8E6D0014 */ lw $t5, 0x14($s3) -/* 064B24 80063F24 00036040 */ sll $t4, $v1, 1 -/* 064B28 80063F28 032FC021 */ addu $t8, $t9, $t7 -/* 064B2C 80063F2C 01AC7021 */ addu $t6, $t5, $t4 -/* 064B30 80063F30 01D8082B */ sltu $at, $t6, $t8 -/* 064B34 80063F34 10200003 */ beqz $at, .L80063F44 -/* 064B38 80063F38 AE780018 */ sw $t8, 0x18($s3) -/* 064B3C 80063F3C 030CC823 */ subu $t9, $t8, $t4 -/* 064B40 80063F40 AE790018 */ sw $t9, 0x18($s3) -.L80063F44: -/* 064B44 80063F44 3C0F0A00 */ lui $t7, (0x0A000800 >> 16) # lui $t7, 0xa00 -/* 064B48 80063F48 35EF0800 */ ori $t7, (0x0A000800 & 0xFFFF) # ori $t7, $t7, 0x800 -/* 064B4C 80063F4C AE0F0000 */ sw $t7, ($s0) -/* 064B50 80063F50 8FB80048 */ lw $t8, 0x48($sp) -/* 064B54 80063F54 3C0106C0 */ lui $at, 0x6c0 -/* 064B58 80063F58 03016025 */ or $t4, $t8, $at -/* 064B5C 80063F5C AE0C0004 */ sw $t4, 4($s0) -/* 064B60 80063F60 26020008 */ addiu $v0, $s0, 8 -/* 064B64 80063F64 8FBF0044 */ lw $ra, 0x44($sp) -.L80063F68: -/* 064B68 80063F68 8FB00020 */ lw $s0, 0x20($sp) -/* 064B6C 80063F6C 8FB10024 */ lw $s1, 0x24($sp) -/* 064B70 80063F70 8FB20028 */ lw $s2, 0x28($sp) -/* 064B74 80063F74 8FB3002C */ lw $s3, 0x2c($sp) -/* 064B78 80063F78 8FB40030 */ lw $s4, 0x30($sp) -/* 064B7C 80063F7C 8FB50034 */ lw $s5, 0x34($sp) -/* 064B80 80063F80 8FB60038 */ lw $s6, 0x38($sp) -/* 064B84 80063F84 8FB7003C */ lw $s7, 0x3c($sp) -/* 064B88 80063F88 8FBE0040 */ lw $fp, 0x40($sp) -/* 064B8C 80063F8C 03E00008 */ jr $ra -/* 064B90 80063F90 27BD00A0 */ addiu $sp, $sp, 0xa0 - -glabel D_80063F94 -/* 064B94 80063F94 24010001 */ li $at, 1 -/* 064B98 80063F98 14A10002 */ bne $a1, $at, .L80063FA4 -/* 064B9C 80063F9C 00000000 */ nop -/* 064BA0 80063FA0 AC860000 */ sw $a2, ($a0) -.L80063FA4: -/* 064BA4 80063FA4 03E00008 */ jr $ra -/* 064BA8 80063FA8 00001025 */ move $v0, $zero - -glabel D_80063FAC -/* 064BAC 80063FAC 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 064BB0 80063FB0 24A3FFFE */ addiu $v1, $a1, -2 -/* 064BB4 80063FB4 AFBF0014 */ sw $ra, 0x14($sp) -/* 064BB8 80063FB8 306E0007 */ andi $t6, $v1, 7 -/* 064BBC 80063FBC 8CC80000 */ lw $t0, ($a2) -/* 064BC0 80063FC0 2DC10008 */ sltiu $at, $t6, 8 -/* 064BC4 80063FC4 10200093 */ beqz $at, .L80064214 -/* 064BC8 80063FC8 00803825 */ move $a3, $a0 -/* 064BCC 80063FCC 000E7080 */ sll $t6, $t6, 2 -/* 064BD0 80063FD0 3C01800E */ lui $at, 0x800e -/* 064BD4 80063FD4 002E0821 */ addu $at, $at, $t6 -/* 064BD8 80063FD8 8C2E6E70 */ lw $t6, 0x6e70($at) -/* 064BDC 80063FDC 00000000 */ nop -/* 064BE0 80063FE0 01C00008 */ jr $t6 -/* 064BE4 80063FE4 00000000 */ nop -/* 064BE8 80063FE8 2401FFF8 */ li $at, -8 -/* 064BEC 80063FEC 01017824 */ and $t7, $t0, $at -/* 064BF0 80063FF0 8CF80020 */ lw $t8, 0x20($a3) -/* 064BF4 80063FF4 04610003 */ bgez $v1, .L80064004 -/* 064BF8 80063FF8 0003C8C3 */ sra $t9, $v1, 3 -/* 064BFC 80063FFC 24610007 */ addiu $at, $v1, 7 -/* 064C00 80064000 0001C8C3 */ sra $t9, $at, 3 -.L80064004: -/* 064C04 80064004 00194880 */ sll $t1, $t9, 2 -/* 064C08 80064008 01394821 */ addu $t1, $t1, $t9 -/* 064C0C 8006400C 000948C0 */ sll $t1, $t1, 3 -/* 064C10 80064010 03095021 */ addu $t2, $t8, $t1 -/* 064C14 80064014 1000007F */ b .L80064214 -/* 064C18 80064018 AD4F0000 */ sw $t7, ($t2) -/* 064C1C 8006401C 2401FFF8 */ li $at, -8 -/* 064C20 80064020 01015824 */ and $t3, $t0, $at -/* 064C24 80064024 8CEC0020 */ lw $t4, 0x20($a3) -/* 064C28 80064028 04610003 */ bgez $v1, .L80064038 -/* 064C2C 8006402C 000368C3 */ sra $t5, $v1, 3 -/* 064C30 80064030 24610007 */ addiu $at, $v1, 7 -/* 064C34 80064034 000168C3 */ sra $t5, $at, 3 -.L80064038: -/* 064C38 80064038 000D7080 */ sll $t6, $t5, 2 -/* 064C3C 8006403C 01CD7021 */ addu $t6, $t6, $t5 -/* 064C40 80064040 000E70C0 */ sll $t6, $t6, 3 -/* 064C44 80064044 018EC821 */ addu $t9, $t4, $t6 -/* 064C48 80064048 10000072 */ b .L80064214 -/* 064C4C 8006404C AF2B0004 */ sw $t3, 4($t9) -/* 064C50 80064050 8CF80020 */ lw $t8, 0x20($a3) -/* 064C54 80064054 04610003 */ bgez $v1, .L80064064 -/* 064C58 80064058 000348C3 */ sra $t1, $v1, 3 -/* 064C5C 8006405C 24610007 */ addiu $at, $v1, 7 -/* 064C60 80064060 000148C3 */ sra $t1, $at, 3 -.L80064064: -/* 064C64 80064064 00097880 */ sll $t7, $t1, 2 -/* 064C68 80064068 01E97821 */ addu $t7, $t7, $t1 -/* 064C6C 8006406C 000F78C0 */ sll $t7, $t7, 3 -/* 064C70 80064070 030F5021 */ addu $t2, $t8, $t7 -/* 064C74 80064074 10000067 */ b .L80064214 -/* 064C78 80064078 A5480008 */ sh $t0, 8($t2) -/* 064C7C 8006407C 8CED0020 */ lw $t5, 0x20($a3) -/* 064C80 80064080 04610003 */ bgez $v1, .L80064090 -/* 064C84 80064084 000360C3 */ sra $t4, $v1, 3 -/* 064C88 80064088 24610007 */ addiu $at, $v1, 7 -/* 064C8C 8006408C 000160C3 */ sra $t4, $at, 3 -.L80064090: -/* 064C90 80064090 000C7080 */ sll $t6, $t4, 2 -/* 064C94 80064094 01CC7021 */ addu $t6, $t6, $t4 -/* 064C98 80064098 000E70C0 */ sll $t6, $t6, 3 -/* 064C9C 8006409C 01AE5821 */ addu $t3, $t5, $t6 -/* 064CA0 800640A0 1000005C */ b .L80064214 -/* 064CA4 800640A4 A568000A */ sh $t0, 0xa($t3) -/* 064CA8 800640A8 8CF90020 */ lw $t9, 0x20($a3) -/* 064CAC 800640AC 04610003 */ bgez $v1, .L800640BC -/* 064CB0 800640B0 000348C3 */ sra $t1, $v1, 3 -/* 064CB4 800640B4 24610007 */ addiu $at, $v1, 7 -/* 064CB8 800640B8 000148C3 */ sra $t1, $at, 3 -.L800640BC: -/* 064CBC 800640BC 0009C080 */ sll $t8, $t1, 2 -/* 064CC0 800640C0 0309C021 */ addu $t8, $t8, $t1 -/* 064CC4 800640C4 0018C0C0 */ sll $t8, $t8, 3 -/* 064CC8 800640C8 03387821 */ addu $t7, $t9, $t8 -/* 064CCC 800640CC 10000051 */ b .L80064214 -/* 064CD0 800640D0 A5E8000C */ sh $t0, 0xc($t7) -/* 064CD4 800640D4 44882000 */ mtc1 $t0, $f4 -/* 064CD8 800640D8 3C01447A */ li $at, 0x447A0000 # 1000.000000 -/* 064CDC 800640DC 468021A0 */ cvt.s.w $f6, $f4 -/* 064CE0 800640E0 44814000 */ mtc1 $at, $f8 -/* 064CE4 800640E4 3C0A800E */ lui $t2, %hi(D_800E3780) # $t2, 0x800e -/* 064CE8 800640E8 46083283 */ div.s $f10, $f6, $f8 -/* 064CEC 800640EC 8D4A3780 */ lw $t2, %lo(D_800E3780)($t2) -/* 064CF0 800640F0 8CED0020 */ lw $t5, 0x20($a3) -/* 064CF4 800640F4 8D4C0044 */ lw $t4, 0x44($t2) -/* 064CF8 800640F8 00000000 */ nop -/* 064CFC 800640FC 448C9000 */ mtc1 $t4, $f18 -/* 064D00 80064100 00000000 */ nop -/* 064D04 80064104 46809121 */ cvt.d.w $f4, $f18 -/* 064D08 80064108 46005021 */ cvt.d.s $f0, $f10 -/* 064D0C 8006410C 46200400 */ add.d $f16, $f0, $f0 -/* 064D10 80064110 00000000 */ nop -/* 064D14 80064114 46248183 */ div.d $f6, $f16, $f4 -/* 064D18 80064118 46203220 */ cvt.s.d $f8, $f6 -/* 064D1C 8006411C 04610003 */ bgez $v1, .L8006412C -/* 064D20 80064120 000370C3 */ sra $t6, $v1, 3 -/* 064D24 80064124 24610007 */ addiu $at, $v1, 7 -/* 064D28 80064128 000170C3 */ sra $t6, $at, 3 -.L8006412C: -/* 064D2C 8006412C 000E5880 */ sll $t3, $t6, 2 -/* 064D30 80064130 016E5821 */ addu $t3, $t3, $t6 -/* 064D34 80064134 000B58C0 */ sll $t3, $t3, 3 -/* 064D38 80064138 01AB4821 */ addu $t1, $t5, $t3 -/* 064D3C 8006413C 10000035 */ b .L80064214 -/* 064D40 80064140 E5280010 */ swc1 $f8, 0x10($t1) -/* 064D44 80064144 8CF90020 */ lw $t9, 0x20($a3) -/* 064D48 80064148 04610003 */ bgez $v1, .L80064158 -/* 064D4C 8006414C 0003C0C3 */ sra $t8, $v1, 3 -/* 064D50 80064150 24610007 */ addiu $at, $v1, 7 -/* 064D54 80064154 0001C0C3 */ sra $t8, $at, 3 -.L80064158: -/* 064D58 80064158 00187880 */ sll $t7, $t8, 2 -/* 064D5C 8006415C 01F87821 */ addu $t7, $t7, $t8 -/* 064D60 80064160 000F78C0 */ sll $t7, $t7, 3 -/* 064D64 80064164 032F1021 */ addu $v0, $t9, $t7 -/* 064D68 80064168 8C4A0004 */ lw $t2, 4($v0) -/* 064D6C 8006416C 8C4C0000 */ lw $t4, ($v0) -/* 064D70 80064170 44882000 */ mtc1 $t0, $f4 -/* 064D74 80064174 014C7023 */ subu $t6, $t2, $t4 -/* 064D78 80064178 448E5000 */ mtc1 $t6, $f10 -/* 064D7C 8006417C 05C10006 */ bgez $t6, .L80064198 -/* 064D80 80064180 468054A1 */ cvt.d.w $f18, $f10 -/* 064D84 80064184 3C0141F0 */ li $at, 0x41F00000 # 30.000000 -/* 064D88 80064188 44818800 */ mtc1 $at, $f17 -/* 064D8C 8006418C 44808000 */ mtc1 $zero, $f16 -/* 064D90 80064190 00000000 */ nop -/* 064D94 80064194 46309480 */ add.d $f18, $f18, $f16 -.L80064198: -/* 064D98 80064198 468021A0 */ cvt.s.w $f6, $f4 -/* 064D9C 8006419C 3C01800E */ lui $at, %hi(D_800E6E94) # $at, 0x800e -/* 064DA0 800641A0 C42B6E90 */ lwc1 $f11, %lo(D_800E6E90)($at) -/* 064DA4 800641A4 C42A6E94 */ lwc1 $f10, %lo(D_800E6E94)($at) -/* 064DA8 800641A8 46003221 */ cvt.d.s $f8, $f6 -/* 064DAC 800641AC 00000000 */ nop -/* 064DB0 800641B0 462A4403 */ div.d $f16, $f8, $f10 -/* 064DB4 800641B4 46309102 */ mul.d $f4, $f18, $f16 -/* 064DB8 800641B8 462021A0 */ cvt.s.d $f6, $f4 -/* 064DBC 800641BC 10000015 */ b .L80064214 -/* 064DC0 800641C0 E446001C */ swc1 $f6, 0x1c($v0) -/* 064DC4 800641C4 04610003 */ bgez $v1, .L800641D4 -/* 064DC8 800641C8 000310C3 */ sra $v0, $v1, 3 -/* 064DCC 800641CC 24610007 */ addiu $at, $v1, 7 -/* 064DD0 800641D0 000110C3 */ sra $v0, $at, 3 -.L800641D4: -/* 064DD4 800641D4 00026880 */ sll $t5, $v0, 2 -/* 064DD8 800641D8 8CEB0020 */ lw $t3, 0x20($a3) -/* 064DDC 800641DC 01A26821 */ addu $t5, $t5, $v0 -/* 064DE0 800641E0 000D68C0 */ sll $t5, $t5, 3 -/* 064DE4 800641E4 016D4821 */ addu $t1, $t3, $t5 -/* 064DE8 800641E8 8D250020 */ lw $a1, 0x20($t1) -/* 064DEC 800641EC 00000000 */ nop -/* 064DF0 800641F0 10A00009 */ beqz $a1, .L80064218 -/* 064DF4 800641F4 8FBF0014 */ lw $ra, 0x14($sp) -/* 064DF8 800641F8 A4A80000 */ sh $t0, ($a1) -/* 064DFC 800641FC 8CF80020 */ lw $t8, 0x20($a3) -/* 064E00 80064200 00000000 */ nop -/* 064E04 80064204 030DC821 */ addu $t9, $t8, $t5 -/* 064E08 80064208 8F240020 */ lw $a0, 0x20($t9) -/* 064E0C 8006420C 0C019254 */ jal func_80064950 -/* 064E10 80064210 00000000 */ nop -.L80064214: -/* 064E14 80064214 8FBF0014 */ lw $ra, 0x14($sp) -.L80064218: -/* 064E18 80064218 27BD0018 */ addiu $sp, $sp, 0x18 -/* 064E1C 8006421C 03E00008 */ jr $ra -/* 064E20 80064220 00001025 */ move $v0, $zero - -glabel func_80064224 -/* 064E24 80064224 27BDFF98 */ addiu $sp, $sp, -0x68 -/* 064E28 80064228 AFBF002C */ sw $ra, 0x2c($sp) -/* 064E2C 8006422C AFB20028 */ sw $s2, 0x28($sp) -/* 064E30 80064230 AFB10024 */ sw $s1, 0x24($sp) -/* 064E34 80064234 AFB00020 */ sw $s0, 0x20($sp) -/* 064E38 80064238 AFA40068 */ sw $a0, 0x68($sp) -/* 064E3C 8006423C AFA60070 */ sw $a2, 0x70($sp) -/* 064E40 80064240 8CAE0024 */ lw $t6, 0x24($a1) -/* 064E44 80064244 00A08025 */ move $s0, $a1 -/* 064E48 80064248 11C00082 */ beqz $t6, .L80064454 -/* 064E4C 8006424C 00E09025 */ move $s2, $a3 -/* 064E50 80064250 8CAF0004 */ lw $t7, 4($a1) -/* 064E54 80064254 8CB80000 */ lw $t8, ($a1) -/* 064E58 80064258 00A02025 */ move $a0, $a1 -/* 064E5C 8006425C 01F8C823 */ subu $t9, $t7, $t8 -/* 064E60 80064260 AFB90040 */ sw $t9, 0x40($sp) -/* 064E64 80064264 0C019221 */ jal func_80064884 -/* 064E68 80064268 00E02825 */ move $a1, $a3 -/* 064E6C 8006426C 8FAA0040 */ lw $t2, 0x40($sp) -/* 064E70 80064270 3C014700 */ li $at, 0x47000000 # 32768.000000 -/* 064E74 80064274 448A3000 */ mtc1 $t2, $f6 -/* 064E78 80064278 44817000 */ mtc1 $at, $f14 -/* 064E7C 8006427C 46803220 */ cvt.s.w $f8, $f6 -/* 064E80 80064280 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 064E84 80064284 44812800 */ mtc1 $at, $f5 -/* 064E88 80064288 46080283 */ div.s $f10, $f0, $f8 -/* 064E8C 8006428C 44802000 */ mtc1 $zero, $f4 -/* 064E90 80064290 8FA40068 */ lw $a0, 0x68($sp) -/* 064E94 80064294 24060280 */ li $a2, 640 -/* 064E98 80064298 460E5402 */ mul.s $f16, $f10, $f14 -/* 064E9C 8006429C 444BF800 */ cfc1 $t3, $31 -/* 064EA0 800642A0 00000000 */ nop -/* 064EA4 800642A4 35610003 */ ori $at, $t3, 3 -/* 064EA8 800642A8 38210002 */ xori $at, $at, 2 -/* 064EAC 800642AC 44C1F800 */ ctc1 $at, $31 -/* 064EB0 800642B0 00000000 */ nop -/* 064EB4 800642B4 460084A4 */ cvt.w.s $f18, $f16 -/* 064EB8 800642B8 440C9000 */ mfc1 $t4, $f18 -/* 064EBC 800642BC 44CBF800 */ ctc1 $t3, $31 -/* 064EC0 800642C0 448C3000 */ mtc1 $t4, $f6 -/* 064EC4 800642C4 00000000 */ nop -/* 064EC8 800642C8 46803220 */ cvt.s.w $f8, $f6 -/* 064ECC 800642CC 00000000 */ nop -/* 064ED0 800642D0 460E4283 */ div.s $f10, $f8, $f14 -/* 064ED4 800642D4 44924000 */ mtc1 $s2, $f8 -/* 064ED8 800642D8 46005421 */ cvt.d.s $f16, $f10 -/* 064EDC 800642DC 46302481 */ sub.d $f18, $f4, $f16 -/* 064EE0 800642E0 468042A0 */ cvt.s.w $f10, $f8 -/* 064EE4 800642E4 462090A0 */ cvt.s.d $f2, $f18 -/* 064EE8 800642E8 E7A2004C */ swc1 $f2, 0x4c($sp) -/* 064EEC 800642EC 460A1102 */ mul.s $f4, $f2, $f10 -/* 064EF0 800642F0 8E020024 */ lw $v0, 0x24($s0) -/* 064EF4 800642F4 00000000 */ nop -/* 064EF8 800642F8 C4460020 */ lwc1 $f6, 0x20($v0) -/* 064EFC 800642FC 00000000 */ nop -/* 064F00 80064300 46043300 */ add.s $f12, $f6, $f4 -/* 064F04 80064304 444DF800 */ cfc1 $t5, $31 -/* 064F08 80064308 00000000 */ nop -/* 064F0C 8006430C 35A10003 */ ori $at, $t5, 3 -/* 064F10 80064310 38210002 */ xori $at, $at, 2 -/* 064F14 80064314 44C1F800 */ ctc1 $at, $31 -/* 064F18 80064318 00000000 */ nop -/* 064F1C 8006431C 46006424 */ cvt.w.s $f16, $f12 -/* 064F20 80064320 44088000 */ mfc1 $t0, $f16 -/* 064F24 80064324 44CDF800 */ ctc1 $t5, $31 -/* 064F28 80064328 44889000 */ mtc1 $t0, $f18 -/* 064F2C 8006432C 00000000 */ nop -/* 064F30 80064330 46809220 */ cvt.s.w $f8, $f18 -/* 064F34 80064334 46086281 */ sub.s $f10, $f12, $f8 -/* 064F38 80064338 E44A0020 */ swc1 $f10, 0x20($v0) -/* 064F3C 8006433C 8E0F0018 */ lw $t7, 0x18($s0) -/* 064F40 80064340 8E0E0004 */ lw $t6, 4($s0) -/* 064F44 80064344 8C8B0018 */ lw $t3, 0x18($a0) -/* 064F48 80064348 01CFC023 */ subu $t8, $t6, $t7 -/* 064F4C 8006434C 0018C823 */ negu $t9, $t8 -/* 064F50 80064350 00195040 */ sll $t2, $t9, 1 -/* 064F54 80064354 016A8821 */ addu $s1, $t3, $t2 -/* 064F58 80064358 32230007 */ andi $v1, $s1, 7 -/* 064F5C 8006435C 8FAD0078 */ lw $t5, 0x78($sp) -/* 064F60 80064360 00036043 */ sra $t4, $v1, 1 -/* 064F64 80064364 000C4840 */ sll $t1, $t4, 1 -/* 064F68 80064368 02292823 */ subu $a1, $s1, $t1 -/* 064F6C 8006436C AFA90030 */ sw $t1, 0x30($sp) -/* 064F70 80064370 01801825 */ move $v1, $t4 -/* 064F74 80064374 010C3821 */ addu $a3, $t0, $t4 -/* 064F78 80064378 AFA80034 */ sw $t0, 0x34($sp) -/* 064F7C 8006437C 0C019128 */ jal func_800644A0 -/* 064F80 80064380 AFAD0010 */ sw $t5, 0x10($sp) -/* 064F84 80064384 8FA90030 */ lw $t1, 0x30($sp) -/* 064F88 80064388 3C010800 */ lui $at, 0x800 -/* 064F8C 8006438C 252E0280 */ addiu $t6, $t1, 0x280 -/* 064F90 80064390 31CFFFFF */ andi $t7, $t6, 0xffff -/* 064F94 80064394 01E1C025 */ or $t8, $t7, $at -/* 064F98 80064398 AC580000 */ sw $t8, ($v0) -/* 064F9C 8006439C 8FAB0070 */ lw $t3, 0x70($sp) -/* 064FA0 800643A0 00126040 */ sll $t4, $s2, 1 -/* 064FA4 800643A4 318DFFFF */ andi $t5, $t4, 0xffff -/* 064FA8 800643A8 000B5400 */ sll $t2, $t3, 0x10 -/* 064FAC 800643AC 014D7025 */ or $t6, $t2, $t5 -/* 064FB0 800643B0 AC4E0004 */ sw $t6, 4($v0) -/* 064FB4 800643B4 3C014700 */ li $at, 0x47000000 # 32768.000000 -/* 064FB8 800643B8 44812000 */ mtc1 $at, $f4 -/* 064FBC 800643BC C7A6004C */ lwc1 $f6, 0x4c($sp) -/* 064FC0 800643C0 244F0008 */ addiu $t7, $v0, 8 -/* 064FC4 800643C4 46043402 */ mul.s $f16, $f6, $f4 -/* 064FC8 800643C8 AFAF0038 */ sw $t7, 0x38($sp) -/* 064FCC 800643CC 8E0C0024 */ lw $t4, 0x24($s0) -/* 064FD0 800643D0 24510010 */ addiu $s1, $v0, 0x10 -/* 064FD4 800643D4 4458F800 */ cfc1 $t8, $31 -/* 064FD8 800643D8 8D8A0024 */ lw $t2, 0x24($t4) -/* 064FDC 800643DC 37010003 */ ori $at, $t8, 3 -/* 064FE0 800643E0 38210002 */ xori $at, $at, 2 -/* 064FE4 800643E4 44C1F800 */ ctc1 $at, $31 -/* 064FE8 800643E8 314D00FF */ andi $t5, $t2, 0xff -/* 064FEC 800643EC 460084A4 */ cvt.w.s $f18, $f16 -/* 064FF0 800643F0 000D7400 */ sll $t6, $t5, 0x10 -/* 064FF4 800643F4 44199000 */ mfc1 $t9, $f18 -/* 064FF8 800643F8 3C010500 */ lui $at, 0x500 -/* 064FFC 800643FC 01C17825 */ or $t7, $t6, $at -/* 065000 80064400 44D8F800 */ ctc1 $t8, $31 -/* 065004 80064404 332BFFFF */ andi $t3, $t9, 0xffff -/* 065008 80064408 01EBC025 */ or $t8, $t7, $t3 -/* 06500C 8006440C AC580008 */ sw $t8, 8($v0) -/* 065010 80064410 8E190024 */ lw $t9, 0x24($s0) -/* 065014 80064414 00000000 */ nop -/* 065018 80064418 8F240014 */ lw $a0, 0x14($t9) -/* 06501C 8006441C 0C03233C */ jal func_800C8CF0 -/* 065020 80064420 00000000 */ nop -/* 065024 80064424 8FAC0038 */ lw $t4, 0x38($sp) -/* 065028 80064428 8FA80034 */ lw $t0, 0x34($sp) -/* 06502C 8006442C AD820004 */ sw $v0, 4($t4) -/* 065030 80064430 8E0A0024 */ lw $t2, 0x24($s0) -/* 065034 80064434 00000000 */ nop -/* 065038 80064438 AD400024 */ sw $zero, 0x24($t2) -/* 06503C 8006443C 8E0D0018 */ lw $t5, 0x18($s0) -/* 065040 80064440 00000000 */ nop -/* 065044 80064444 01A87021 */ addu $t6, $t5, $t0 -/* 065048 80064448 01D27823 */ subu $t7, $t6, $s2 -/* 06504C 8006444C 1000000D */ b .L80064484 -/* 065050 80064450 AE0F0018 */ sw $t7, 0x18($s0) -.L80064454: -/* 065054 80064454 8FA40068 */ lw $a0, 0x68($sp) -/* 065058 80064458 8E190004 */ lw $t9, 4($s0) -/* 06505C 8006445C 8FAD0078 */ lw $t5, 0x78($sp) -/* 065060 80064460 8C980018 */ lw $t8, 0x18($a0) -/* 065064 80064464 00196023 */ negu $t4, $t9 -/* 065068 80064468 000C5040 */ sll $t2, $t4, 1 -/* 06506C 8006446C 8FA60070 */ lw $a2, 0x70($sp) -/* 065070 80064470 02403825 */ move $a3, $s2 -/* 065074 80064474 AFAD0010 */ sw $t5, 0x10($sp) -/* 065078 80064478 0C019128 */ jal func_800644A0 -/* 06507C 8006447C 030A2821 */ addu $a1, $t8, $t2 -/* 065080 80064480 00408825 */ move $s1, $v0 -.L80064484: -/* 065084 80064484 8FBF002C */ lw $ra, 0x2c($sp) -/* 065088 80064488 02201025 */ move $v0, $s1 -/* 06508C 8006448C 8FB10024 */ lw $s1, 0x24($sp) -/* 065090 80064490 8FB00020 */ lw $s0, 0x20($sp) -/* 065094 80064494 8FB20028 */ lw $s2, 0x28($sp) -/* 065098 80064498 03E00008 */ jr $ra -/* 06509C 8006449C 27BD0068 */ addiu $sp, $sp, 0x68 - -glabel func_800644A0 -/* 0650A0 800644A0 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 0650A4 800644A4 AFBF001C */ sw $ra, 0x1c($sp) -/* 0650A8 800644A8 AFB00018 */ sw $s0, 0x18($sp) -/* 0650AC 800644AC AFA40060 */ sw $a0, 0x60($sp) -/* 0650B0 800644B0 AFA60068 */ sw $a2, 0x68($sp) -/* 0650B4 800644B4 AFA7006C */ sw $a3, 0x6c($sp) -/* 0650B8 800644B8 8C83001C */ lw $v1, 0x1c($a0) -/* 0650BC 800644BC 8C820014 */ lw $v0, 0x14($a0) -/* 0650C0 800644C0 00037840 */ sll $t7, $v1, 1 -/* 0650C4 800644C4 00A2082B */ sltu $at, $a1, $v0 -/* 0650C8 800644C8 10200002 */ beqz $at, .L800644D4 -/* 0650CC 800644CC 004F4021 */ addu $t0, $v0, $t7 -/* 0650D0 800644D0 00AF2821 */ addu $a1, $a1, $t7 -.L800644D4: -/* 0650D4 800644D4 8FA6006C */ lw $a2, 0x6c($sp) -/* 0650D8 800644D8 8FAE0070 */ lw $t6, 0x70($sp) -/* 0650DC 800644DC 0006C040 */ sll $t8, $a2, 1 -/* 0650E0 800644E0 03053821 */ addu $a3, $t8, $a1 -/* 0650E4 800644E4 0107082B */ sltu $at, $t0, $a3 -/* 0650E8 800644E8 10200037 */ beqz $at, .L800645C8 -/* 0650EC 800644EC 03003025 */ move $a2, $t8 -/* 0650F0 800644F0 8FB90070 */ lw $t9, 0x70($sp) -/* 0650F4 800644F4 8FAB0068 */ lw $t3, 0x68($sp) -/* 0650F8 800644F8 01054823 */ subu $t1, $t0, $a1 -/* 0650FC 800644FC 00097043 */ sra $t6, $t1, 1 -/* 065100 80064500 000E7840 */ sll $t7, $t6, 1 -/* 065104 80064504 3C010800 */ lui $at, 0x800 -/* 065108 80064508 316CFFFF */ andi $t4, $t3, 0xffff -/* 06510C 8006450C 01816825 */ or $t5, $t4, $at -/* 065110 80064510 31F8FFFF */ andi $t8, $t7, 0xffff -/* 065114 80064514 27300008 */ addiu $s0, $t9, 8 -/* 065118 80064518 AF380004 */ sw $t8, 4($t9) -/* 06511C 8006451C AF2D0000 */ sw $t5, ($t9) -/* 065120 80064520 3C190400 */ lui $t9, 0x400 -/* 065124 80064524 02005025 */ move $t2, $s0 -/* 065128 80064528 AD590000 */ sw $t9, ($t2) -/* 06512C 8006452C AFAA0044 */ sw $t2, 0x44($sp) -/* 065130 80064530 AFAF0024 */ sw $t7, 0x24($sp) -/* 065134 80064534 AFA8004C */ sw $t0, 0x4c($sp) -/* 065138 80064538 AFA70028 */ sw $a3, 0x28($sp) -/* 06513C 8006453C AFA6002C */ sw $a2, 0x2c($sp) -/* 065140 80064540 26100008 */ addiu $s0, $s0, 8 -/* 065144 80064544 0C03233C */ jal func_800C8CF0 -/* 065148 80064548 00A02025 */ move $a0, $a1 -/* 06514C 8006454C 8FAA0044 */ lw $t2, 0x44($sp) -/* 065150 80064550 8FA70028 */ lw $a3, 0x28($sp) -/* 065154 80064554 8FA8004C */ lw $t0, 0x4c($sp) -/* 065158 80064558 8FA90024 */ lw $t1, 0x24($sp) -/* 06515C 8006455C AD420004 */ sw $v0, 4($t2) -/* 065160 80064560 8FAB0068 */ lw $t3, 0x68($sp) -/* 065164 80064564 00E87823 */ subu $t7, $a3, $t0 -/* 065168 80064568 000FC043 */ sra $t8, $t7, 1 -/* 06516C 8006456C 02001825 */ move $v1, $s0 -/* 065170 80064570 012B6021 */ addu $t4, $t1, $t3 -/* 065174 80064574 318DFFFF */ andi $t5, $t4, 0xffff -/* 065178 80064578 0018C840 */ sll $t9, $t8, 1 -/* 06517C 8006457C 3C010800 */ lui $at, 0x800 -/* 065180 80064580 01A17025 */ or $t6, $t5, $at -/* 065184 80064584 332BFFFF */ andi $t3, $t9, 0xffff -/* 065188 80064588 26100008 */ addiu $s0, $s0, 8 -/* 06518C 8006458C AC6B0004 */ sw $t3, 4($v1) -/* 065190 80064590 AC6E0000 */ sw $t6, ($v1) -/* 065194 80064594 02002825 */ move $a1, $s0 -/* 065198 80064598 3C0C0400 */ lui $t4, 0x400 -/* 06519C 8006459C ACAC0000 */ sw $t4, ($a1) -/* 0651A0 800645A0 8FAD0060 */ lw $t5, 0x60($sp) -/* 0651A4 800645A4 26100008 */ addiu $s0, $s0, 8 -/* 0651A8 800645A8 8DA40014 */ lw $a0, 0x14($t5) -/* 0651AC 800645AC 0C03233C */ jal func_800C8CF0 -/* 0651B0 800645B0 AFA5003C */ sw $a1, 0x3c($sp) -/* 0651B4 800645B4 8FA5003C */ lw $a1, 0x3c($sp) -/* 0651B8 800645B8 8FA6002C */ lw $a2, 0x2c($sp) -/* 0651BC 800645BC ACA20004 */ sw $v0, 4($a1) -/* 0651C0 800645C0 10000014 */ b .L80064614 -/* 0651C4 800645C4 30C7FFFF */ andi $a3, $a2, 0xffff -.L800645C8: -/* 0651C8 800645C8 8FAF0068 */ lw $t7, 0x68($sp) -/* 0651CC 800645CC 3C010800 */ lui $at, 0x800 -/* 0651D0 800645D0 31F8FFFF */ andi $t8, $t7, 0xffff -/* 0651D4 800645D4 0301C825 */ or $t9, $t8, $at -/* 0651D8 800645D8 25D00008 */ addiu $s0, $t6, 8 -/* 0651DC 800645DC 30C7FFFF */ andi $a3, $a2, 0xffff -/* 0651E0 800645E0 ADC70004 */ sw $a3, 4($t6) -/* 0651E4 800645E4 ADD90000 */ sw $t9, ($t6) -/* 0651E8 800645E8 02001825 */ move $v1, $s0 -/* 0651EC 800645EC 3C0B0400 */ lui $t3, 0x400 -/* 0651F0 800645F0 AC6B0000 */ sw $t3, ($v1) -/* 0651F4 800645F4 AFA70028 */ sw $a3, 0x28($sp) -/* 0651F8 800645F8 AFA30034 */ sw $v1, 0x34($sp) -/* 0651FC 800645FC 26100008 */ addiu $s0, $s0, 8 -/* 065200 80064600 0C03233C */ jal func_800C8CF0 -/* 065204 80064604 00A02025 */ move $a0, $a1 -/* 065208 80064608 8FA30034 */ lw $v1, 0x34($sp) -/* 06520C 8006460C 8FA70028 */ lw $a3, 0x28($sp) -/* 065210 80064610 AC620004 */ sw $v0, 4($v1) -.L80064614: -/* 065214 80064614 02001825 */ move $v1, $s0 -/* 065218 80064618 3C0C0800 */ lui $t4, 0x800 -/* 06521C 8006461C AC6C0000 */ sw $t4, ($v1) -/* 065220 80064620 AC670004 */ sw $a3, 4($v1) -/* 065224 80064624 8FBF001C */ lw $ra, 0x1c($sp) -/* 065228 80064628 26020008 */ addiu $v0, $s0, 8 -/* 06522C 8006462C 8FB00018 */ lw $s0, 0x18($sp) -/* 065230 80064630 03E00008 */ jr $ra -/* 065234 80064634 27BD0060 */ addiu $sp, $sp, 0x60 - -glabel func_80064638 -/* 065238 80064638 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 06523C 8006463C AFBF001C */ sw $ra, 0x1c($sp) -/* 065240 80064640 AFB00018 */ sw $s0, 0x18($sp) -/* 065244 80064644 AFA40060 */ sw $a0, 0x60($sp) -/* 065248 80064648 AFA60068 */ sw $a2, 0x68($sp) -/* 06524C 8006464C AFA7006C */ sw $a3, 0x6c($sp) -/* 065250 80064650 8C83001C */ lw $v1, 0x1c($a0) -/* 065254 80064654 8C820014 */ lw $v0, 0x14($a0) -/* 065258 80064658 00037840 */ sll $t7, $v1, 1 -/* 06525C 8006465C 00A2082B */ sltu $at, $a1, $v0 -/* 065260 80064660 10200002 */ beqz $at, .L8006466C -/* 065264 80064664 004F4021 */ addu $t0, $v0, $t7 -/* 065268 80064668 00AF2821 */ addu $a1, $a1, $t7 -.L8006466C: -/* 06526C 8006466C 8FA6006C */ lw $a2, 0x6c($sp) -/* 065270 80064670 8FB90070 */ lw $t9, 0x70($sp) -/* 065274 80064674 0006C040 */ sll $t8, $a2, 1 -/* 065278 80064678 03053821 */ addu $a3, $t8, $a1 -/* 06527C 8006467C 0107082B */ sltu $at, $t0, $a3 -/* 065280 80064680 1020003C */ beqz $at, .L80064774 -/* 065284 80064684 03003025 */ move $a2, $t8 -/* 065288 80064688 8FA20070 */ lw $v0, 0x70($sp) -/* 06528C 8006468C 3C0B0800 */ lui $t3, 0x800 -/* 065290 80064690 01054823 */ subu $t1, $t0, $a1 -/* 065294 80064694 AC4B0000 */ sw $t3, ($v0) -/* 065298 80064698 8FAF0068 */ lw $t7, 0x68($sp) -/* 06529C 8006469C 00096043 */ sra $t4, $t1, 1 -/* 0652A0 800646A0 000C6840 */ sll $t5, $t4, 1 -/* 0652A4 800646A4 31B9FFFF */ andi $t9, $t5, 0xffff -/* 0652A8 800646A8 000FC400 */ sll $t8, $t7, 0x10 -/* 0652AC 800646AC 03195825 */ or $t3, $t8, $t9 -/* 0652B0 800646B0 24500008 */ addiu $s0, $v0, 8 -/* 0652B4 800646B4 02005025 */ move $t2, $s0 -/* 0652B8 800646B8 3C0C0600 */ lui $t4, 0x600 -/* 0652BC 800646BC AC4B0004 */ sw $t3, 4($v0) -/* 0652C0 800646C0 AD4C0000 */ sw $t4, ($t2) -/* 0652C4 800646C4 AFAA0044 */ sw $t2, 0x44($sp) -/* 0652C8 800646C8 AFAD0024 */ sw $t5, 0x24($sp) -/* 0652CC 800646CC AFA8004C */ sw $t0, 0x4c($sp) -/* 0652D0 800646D0 AFA70028 */ sw $a3, 0x28($sp) -/* 0652D4 800646D4 AFA6002C */ sw $a2, 0x2c($sp) -/* 0652D8 800646D8 26100008 */ addiu $s0, $s0, 8 -/* 0652DC 800646DC 0C03233C */ jal func_800C8CF0 -/* 0652E0 800646E0 00A02025 */ move $a0, $a1 -/* 0652E4 800646E4 8FAA0044 */ lw $t2, 0x44($sp) -/* 0652E8 800646E8 8FA70028 */ lw $a3, 0x28($sp) -/* 0652EC 800646EC 8FA8004C */ lw $t0, 0x4c($sp) -/* 0652F0 800646F0 8FA90024 */ lw $t1, 0x24($sp) -/* 0652F4 800646F4 02001825 */ move $v1, $s0 -/* 0652F8 800646F8 3C0D0800 */ lui $t5, 0x800 -/* 0652FC 800646FC AD420004 */ sw $v0, 4($t2) -/* 065300 80064700 AC6D0000 */ sw $t5, ($v1) -/* 065304 80064704 8FAE0068 */ lw $t6, 0x68($sp) -/* 065308 80064708 00E85823 */ subu $t3, $a3, $t0 -/* 06530C 8006470C 000B6043 */ sra $t4, $t3, 1 -/* 065310 80064710 012EC021 */ addu $t8, $t1, $t6 -/* 065314 80064714 000C6840 */ sll $t5, $t4, 1 -/* 065318 80064718 31AEFFFF */ andi $t6, $t5, 0xffff -/* 06531C 8006471C 0018CC00 */ sll $t9, $t8, 0x10 -/* 065320 80064720 032E7825 */ or $t7, $t9, $t6 -/* 065324 80064724 26100008 */ addiu $s0, $s0, 8 -/* 065328 80064728 AC6F0004 */ sw $t7, 4($v1) -/* 06532C 8006472C 02002825 */ move $a1, $s0 -/* 065330 80064730 3C180600 */ lui $t8, 0x600 -/* 065334 80064734 ACB80000 */ sw $t8, ($a1) -/* 065338 80064738 8FAB0060 */ lw $t3, 0x60($sp) -/* 06533C 8006473C 26100008 */ addiu $s0, $s0, 8 -/* 065340 80064740 8D640014 */ lw $a0, 0x14($t3) -/* 065344 80064744 0C03233C */ jal func_800C8CF0 -/* 065348 80064748 AFA5003C */ sw $a1, 0x3c($sp) -/* 06534C 8006474C 8FA6002C */ lw $a2, 0x2c($sp) -/* 065350 80064750 8FA5003C */ lw $a1, 0x3c($sp) -/* 065354 80064754 02001825 */ move $v1, $s0 -/* 065358 80064758 3C0C0800 */ lui $t4, 0x800 -/* 06535C 8006475C 30CDFFFF */ andi $t5, $a2, 0xffff -/* 065360 80064760 ACA20004 */ sw $v0, 4($a1) -/* 065364 80064764 AC6D0004 */ sw $t5, 4($v1) -/* 065368 80064768 AC6C0000 */ sw $t4, ($v1) -/* 06536C 8006476C 10000013 */ b .L800647BC -/* 065370 80064770 26100008 */ addiu $s0, $s0, 8 -.L80064774: -/* 065374 80064774 3C0E0800 */ lui $t6, 0x800 -/* 065378 80064778 AF2E0000 */ sw $t6, ($t9) -/* 06537C 8006477C 8FB80068 */ lw $t8, 0x68($sp) -/* 065380 80064780 30CCFFFF */ andi $t4, $a2, 0xffff -/* 065384 80064784 00185C00 */ sll $t3, $t8, 0x10 -/* 065388 80064788 016C6825 */ or $t5, $t3, $t4 -/* 06538C 8006478C 27300008 */ addiu $s0, $t9, 8 -/* 065390 80064790 AF2D0004 */ sw $t5, 4($t9) -/* 065394 80064794 3C190600 */ lui $t9, 0x600 -/* 065398 80064798 02001825 */ move $v1, $s0 -/* 06539C 8006479C AC790000 */ sw $t9, ($v1) -/* 0653A0 800647A0 AFA30030 */ sw $v1, 0x30($sp) -/* 0653A4 800647A4 26100008 */ addiu $s0, $s0, 8 -/* 0653A8 800647A8 0C03233C */ jal func_800C8CF0 -/* 0653AC 800647AC 00A02025 */ move $a0, $a1 -/* 0653B0 800647B0 8FA30030 */ lw $v1, 0x30($sp) -/* 0653B4 800647B4 00000000 */ nop -/* 0653B8 800647B8 AC620004 */ sw $v0, 4($v1) -.L800647BC: -/* 0653BC 800647BC 8FBF001C */ lw $ra, 0x1c($sp) -/* 0653C0 800647C0 02001025 */ move $v0, $s0 -/* 0653C4 800647C4 8FB00018 */ lw $s0, 0x18($sp) -/* 0653C8 800647C8 03E00008 */ jr $ra -/* 0653CC 800647CC 27BD0060 */ addiu $sp, $sp, 0x60 - -glabel func_800647D0 -/* 0653D0 800647D0 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0653D4 800647D4 AFB00018 */ sw $s0, 0x18($sp) -/* 0653D8 800647D8 AFBF001C */ sw $ra, 0x1c($sp) -/* 0653DC 800647DC 30A2FFFF */ andi $v0, $a1, 0xffff -/* 0653E0 800647E0 0006C040 */ sll $t8, $a2, 1 -/* 0653E4 800647E4 3319FFFF */ andi $t9, $t8, 0xffff -/* 0653E8 800647E8 00027C00 */ sll $t7, $v0, 0x10 -/* 0653EC 800647EC 3C010800 */ lui $at, 0x800 -/* 0653F0 800647F0 3C090B00 */ lui $t1, (0x0B000020 >> 16) # lui $t1, 0xb00 -/* 0653F4 800647F4 00417025 */ or $t6, $v0, $at -/* 0653F8 800647F8 01F94025 */ or $t0, $t7, $t9 -/* 0653FC 800647FC 35290020 */ ori $t1, (0x0B000020 & 0xFFFF) # ori $t1, $t1, 0x20 -/* 065400 80064800 00808025 */ move $s0, $a0 -/* 065404 80064804 ACE80004 */ sw $t0, 4($a3) -/* 065408 80064808 ACEE0000 */ sw $t6, ($a3) -/* 06540C 8006480C ACE90008 */ sw $t1, 8($a3) -/* 065410 80064810 AFA7003C */ sw $a3, 0x3c($sp) -/* 065414 80064814 0C03233C */ jal func_800C8CF0 -/* 065418 80064818 24840008 */ addiu $a0, $a0, 8 -/* 06541C 8006481C 8FA7003C */ lw $a3, 0x3c($sp) -/* 065420 80064820 3C010E00 */ lui $at, 0xe00 -/* 065424 80064824 24E30010 */ addiu $v1, $a3, 0x10 -/* 065428 80064828 246A0008 */ addiu $t2, $v1, 8 -/* 06542C 8006482C ACE2000C */ sw $v0, 0xc($a3) -/* 065430 80064830 AFAA002C */ sw $t2, 0x2c($sp) -/* 065434 80064834 8E0B002C */ lw $t3, 0x2c($s0) -/* 065438 80064838 86180002 */ lh $t8, 2($s0) -/* 06543C 8006483C 316C00FF */ andi $t4, $t3, 0xff -/* 065440 80064840 000C6C00 */ sll $t5, $t4, 0x10 -/* 065444 80064844 01A17025 */ or $t6, $t5, $at -/* 065448 80064848 330FFFFF */ andi $t7, $t8, 0xffff -/* 06544C 8006484C 01CFC825 */ or $t9, $t6, $t7 -/* 065450 80064850 AC790000 */ sw $t9, ($v1) -/* 065454 80064854 8E040028 */ lw $a0, 0x28($s0) -/* 065458 80064858 0C03233C */ jal func_800C8CF0 -/* 06545C 8006485C AFA30020 */ sw $v1, 0x20($sp) -/* 065460 80064860 8FA50020 */ lw $a1, 0x20($sp) -/* 065464 80064864 00000000 */ nop -/* 065468 80064868 ACA20004 */ sw $v0, 4($a1) -/* 06546C 8006486C AE00002C */ sw $zero, 0x2c($s0) -/* 065470 80064870 8FBF001C */ lw $ra, 0x1c($sp) -/* 065474 80064874 8FB00018 */ lw $s0, 0x18($sp) -/* 065478 80064878 8FA2002C */ lw $v0, 0x2c($sp) -/* 06547C 8006487C 03E00008 */ jr $ra -/* 065480 80064880 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_80064884 -/* 065484 80064884 44853000 */ mtc1 $a1, $f6 -/* 065488 80064888 C4840010 */ lwc1 $f4, 0x10($a0) -/* 06548C 8006488C 46803220 */ cvt.s.w $f8, $f6 -/* 065490 80064890 C4900014 */ lwc1 $f16, 0x14($a0) -/* 065494 80064894 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 065498 80064898 46082282 */ mul.s $f10, $f4, $f8 -/* 06549C 8006489C 44802000 */ mtc1 $zero, $f4 -/* 0654A0 800648A0 44812800 */ mtc1 $at, $f5 -/* 0654A4 800648A4 3C014010 */ li $at, 0x40100000 # 2.250000 -/* 0654A8 800648A8 460A8480 */ add.s $f18, $f16, $f10 -/* 0654AC 800648AC E4920014 */ swc1 $f18, 0x14($a0) -/* 0654B0 800648B0 C4860014 */ lwc1 $f6, 0x14($a0) -/* 0654B4 800648B4 00000000 */ nop -/* 0654B8 800648B8 46003021 */ cvt.d.s $f0, $f6 -/* 0654BC 800648BC 4620203C */ c.lt.d $f4, $f0 -/* 0654C0 800648C0 44803000 */ mtc1 $zero, $f6 -/* 0654C4 800648C4 45000008 */ bc1f .L800648E8 -/* 0654C8 800648C8 00000000 */ nop -/* 0654CC 800648CC 44814800 */ mtc1 $at, $f9 -/* 0654D0 800648D0 44804000 */ mtc1 $zero, $f8 -/* 0654D4 800648D4 00000000 */ nop -/* 0654D8 800648D8 46280401 */ sub.d $f16, $f0, $f8 -/* 0654DC 800648DC 462082A0 */ cvt.s.d $f10, $f16 -/* 0654E0 800648E0 10000003 */ b .L800648F0 -/* 0654E4 800648E4 E48A0014 */ swc1 $f10, 0x14($a0) -.L800648E8: -/* 0654E8 800648E8 462004A0 */ cvt.s.d $f18, $f0 -/* 0654EC 800648EC E4920014 */ swc1 $f18, 0x14($a0) -.L800648F0: -/* 0654F0 800648F0 C4820014 */ lwc1 $f2, 0x14($a0) -/* 0654F4 800648F4 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 0654F8 800648F8 4606103C */ c.lt.s $f2, $f6 -/* 0654FC 800648FC 44814800 */ mtc1 $at, $f9 -/* 065500 80064900 45000002 */ bc1f .L8006490C -/* 065504 80064904 00000000 */ nop -/* 065508 80064908 46001087 */ neg.s $f2, $f2 -.L8006490C: -/* 06550C 8006490C 44804000 */ mtc1 $zero, $f8 -/* 065510 80064910 46001121 */ cvt.d.s $f4, $f2 -/* 065514 80064914 46282401 */ sub.d $f16, $f4, $f8 -/* 065518 80064918 C48A001C */ lwc1 $f10, 0x1c($a0) -/* 06551C 8006491C 462080A0 */ cvt.s.d $f2, $f16 -/* 065520 80064920 46025002 */ mul.s $f0, $f10, $f2 -/* 065524 80064924 03E00008 */ jr $ra -/* 065528 80064928 00000000 */ nop - -glabel func_8006492C -/* 06552C 8006492C 3C01800E */ lui $at, 0x800e -/* 065530 80064930 AFA40000 */ sw $a0, ($sp) -/* 065534 80064934 03E00008 */ jr $ra -/* 065538 80064938 A024CEB0 */ sb $a0, -0x3150($at) - -/* 06553C 8006493C 3C02800E */ lui $v0, %hi(D_800DCEB0) # $v0, 0x800e -/* 065540 80064940 9042CEB0 */ lbu $v0, %lo(D_800DCEB0)($v0) -/* 065544 80064944 03E00008 */ jr $ra -/* 065548 80064948 00000000 */ nop - -/* 06554C 8006494C 00000000 */ nop -glabel func_80064950 -/* 065550 80064950 84820000 */ lh $v0, ($a0) -/* 065554 80064954 24194000 */ li $t9, 16384 -/* 065558 80064958 00027380 */ sll $t6, $v0, 0xe -/* 06555C 8006495C 000E1BC3 */ sra $v1, $t6, 0xf -/* 065560 80064960 00037C00 */ sll $t7, $v1, 0x10 -/* 065564 80064964 000F1C03 */ sra $v1, $t7, 0x10 -/* 065568 80064968 03234023 */ subu $t0, $t9, $v1 -/* 06556C 8006496C 24090001 */ li $t1, 1 -/* 065570 80064970 A4880002 */ sh $t0, 2($a0) -/* 065574 80064974 AC89002C */ sw $t1, 0x2c($a0) -/* 065578 80064978 00002825 */ move $a1, $zero -/* 06557C 8006497C 00803025 */ move $a2, $a0 -.L80064980: -/* 065580 80064980 24A50001 */ addiu $a1, $a1, 1 -/* 065584 80064984 28A10008 */ slti $at, $a1, 8 -/* 065588 80064988 24C60002 */ addiu $a2, $a2, 2 -/* 06558C 8006498C 1420FFFC */ bnez $at, .L80064980 -/* 065590 80064990 A4C00006 */ sh $zero, 6($a2) -/* 065594 80064994 44832000 */ mtc1 $v1, $f4 -/* 065598 80064998 3C0140D0 */ li $at, 0x40D00000 # 6.500000 -/* 06559C 8006499C 468021A1 */ cvt.d.w $f6, $f4 -/* 0655A0 800649A0 44816800 */ mtc1 $at, $f13 -/* 0655A4 800649A4 44806000 */ mtc1 $zero, $f12 -/* 0655A8 800649A8 24A50001 */ addiu $a1, $a1, 1 -/* 0655AC 800649AC 462C3083 */ div.d $f2, $f6, $f12 -/* 0655B0 800649B0 28A10010 */ slti $at, $a1, 0x10 -/* 0655B4 800649B4 A4C30008 */ sh $v1, 8($a2) -/* 0655B8 800649B8 24C60002 */ addiu $a2, $a2, 2 -/* 0655BC 800649BC 10200010 */ beqz $at, .L80064A00 -/* 0655C0 800649C0 46201006 */ mov.d $f0, $f2 -.L800649C4: -/* 0655C4 800649C4 46220002 */ mul.d $f0, $f0, $f2 -/* 0655C8 800649C8 24A50001 */ addiu $a1, $a1, 1 -/* 0655CC 800649CC 24C60002 */ addiu $a2, $a2, 2 -/* 0655D0 800649D0 462C0202 */ mul.d $f8, $f0, $f12 -/* 0655D4 800649D4 444AF800 */ cfc1 $t2, $31 -/* 0655D8 800649D8 00000000 */ nop -/* 0655DC 800649DC 35410003 */ ori $at, $t2, 3 -/* 0655E0 800649E0 38210002 */ xori $at, $at, 2 -/* 0655E4 800649E4 44C1F800 */ ctc1 $at, $31 -/* 0655E8 800649E8 28A10010 */ slti $at, $a1, 0x10 -/* 0655EC 800649EC 462042A4 */ cvt.w.d $f10, $f8 -/* 0655F0 800649F0 440B5000 */ mfc1 $t3, $f10 -/* 0655F4 800649F4 44CAF800 */ ctc1 $t2, $31 -/* 0655F8 800649F8 1420FFF2 */ bnez $at, .L800649C4 -/* 0655FC 800649FC A4CB0006 */ sh $t3, 6($a2) -.L80064A00: -/* 065600 80064A00 03E00008 */ jr $ra -/* 065604 80064A04 00000000 */ nop - -glabel func_80064A08 -/* 065608 80064A08 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 06560C 80064A0C AFB00038 */ sw $s0, 0x38($sp) -/* 065610 80064A10 00068400 */ sll $s0, $a2, 0x10 -/* 065614 80064A14 AFA60068 */ sw $a2, 0x68($sp) -/* 065618 80064A18 00107403 */ sra $t6, $s0, 0x10 -/* 06561C 80064A1C AFBF005C */ sw $ra, 0x5c($sp) -/* 065620 80064A20 AFB60050 */ sw $s6, 0x50($sp) -/* 065624 80064A24 AFA50064 */ sw $a1, 0x64($sp) -/* 065628 80064A28 AFA7006C */ sw $a3, 0x6c($sp) -/* 06562C 80064A2C 3C068006 */ lui $a2, %hi(D_80063F94) # $a2, 0x8006 -/* 065630 80064A30 0080B025 */ move $s6, $a0 -/* 065634 80064A34 01C08025 */ move $s0, $t6 -/* 065638 80064A38 AFBE0058 */ sw $fp, 0x58($sp) -/* 06563C 80064A3C AFB70054 */ sw $s7, 0x54($sp) -/* 065640 80064A40 AFB5004C */ sw $s5, 0x4c($sp) -/* 065644 80064A44 AFB40048 */ sw $s4, 0x48($sp) -/* 065648 80064A48 AFB30044 */ sw $s3, 0x44($sp) -/* 06564C 80064A4C AFB20040 */ sw $s2, 0x40($sp) -/* 065650 80064A50 AFB1003C */ sw $s1, 0x3c($sp) -/* 065654 80064A54 E7BB0030 */ swc1 $f27, 0x30($sp) -/* 065658 80064A58 E7BA0034 */ swc1 $f26, 0x34($sp) -/* 06565C 80064A5C E7B90028 */ swc1 $f25, 0x28($sp) -/* 065660 80064A60 E7B8002C */ swc1 $f24, 0x2c($sp) -/* 065664 80064A64 E7B70020 */ swc1 $f23, 0x20($sp) -/* 065668 80064A68 E7B60024 */ swc1 $f22, 0x24($sp) -/* 06566C 80064A6C E7B50018 */ swc1 $f21, 0x18($sp) -/* 065670 80064A70 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 065674 80064A74 24C63F94 */ addiu $a2, %lo(D_80063F94) # addiu $a2, $a2, 0x3f94 -/* 065678 80064A78 24070005 */ li $a3, 5 -/* 06567C 80064A7C 0C03282C */ jal func_800CA0B0 -/* 065680 80064A80 00002825 */ move $a1, $zero -/* 065684 80064A84 8FA20064 */ lw $v0, 0x64($sp) -/* 065688 80064A88 3C0F8006 */ lui $t7, %hi(D_80063C30) # $t7, 0x8006 -/* 06568C 80064A8C 3C188006 */ lui $t8, %hi(D_80063FAC) # $t8, 0x8006 -/* 065690 80064A90 25EF3C30 */ addiu $t7, %lo(D_80063C30) # addiu $t7, $t7, 0x3c30 -/* 065694 80064A94 27183FAC */ addiu $t8, %lo(D_80063FAC) # addiu $t8, $t8, 0x3fac -/* 065698 80064A98 AECF0004 */ sw $t7, 4($s6) -/* 06569C 80064A9C AED80028 */ sw $t8, 0x28($s6) -/* 0656A0 80064AA0 0050C821 */ addu $t9, $v0, $s0 -/* 0656A4 80064AA4 9328001C */ lbu $t0, 0x1c($t9) -/* 0656A8 80064AA8 3C13800E */ lui $s3, %hi(D_800DD028) # $s3, 0x800e -/* 0656AC 80064AAC 2509FFFF */ addiu $t1, $t0, -1 -/* 0656B0 80064AB0 2D210006 */ sltiu $at, $t1, 6 -/* 0656B4 80064AB4 1020001C */ beqz $at, .L80064B28 -/* 0656B8 80064AB8 2673D028 */ addiu $s3, %lo(D_800DD028) # addiu $s3, $s3, -0x2fd8 -/* 0656BC 80064ABC 00094880 */ sll $t1, $t1, 2 -/* 0656C0 80064AC0 3C01800E */ lui $at, 0x800e -/* 0656C4 80064AC4 00290821 */ addu $at, $at, $t1 -/* 0656C8 80064AC8 8C296EA0 */ lw $t1, 0x6ea0($at) -/* 0656CC 80064ACC 00000000 */ nop -/* 0656D0 80064AD0 01200008 */ jr $t1 -/* 0656D4 80064AD4 00000000 */ nop -/* 0656D8 80064AD8 3C13800E */ lui $s3, %hi(D_800DCEC0) # $s3, 0x800e -/* 0656DC 80064ADC 10000012 */ b .L80064B28 -/* 0656E0 80064AE0 2673CEC0 */ addiu $s3, %lo(D_800DCEC0) # addiu $s3, $s3, -0x3140 -/* 0656E4 80064AE4 3C13800E */ lui $s3, %hi(D_800DCF28) # $s3, 0x800e -/* 0656E8 80064AE8 1000000F */ b .L80064B28 -/* 0656EC 80064AEC 2673CF28 */ addiu $s3, %lo(D_800DCF28) # addiu $s3, $s3, -0x30d8 -/* 0656F0 80064AF0 3C13800E */ lui $s3, %hi(D_800DCFB0) # $s3, 0x800e -/* 0656F4 80064AF4 1000000C */ b .L80064B28 -/* 0656F8 80064AF8 2673CFB0 */ addiu $s3, %lo(D_800DCFB0) # addiu $s3, $s3, -0x3050 -/* 0656FC 80064AFC 3C13800E */ lui $s3, %hi(D_800DCFD8) # $s3, 0x800e -/* 065700 80064B00 10000009 */ b .L80064B28 -/* 065704 80064B04 2673CFD8 */ addiu $s3, %lo(D_800DCFD8) # addiu $s3, $s3, -0x3028 -/* 065708 80064B08 3C13800E */ lui $s3, %hi(D_800DD000) # $s3, 0x800e -/* 06570C 80064B0C 10000006 */ b .L80064B28 -/* 065710 80064B10 2673D000 */ addiu $s3, %lo(D_800DD000) # addiu $s3, $s3, -0x3000 -/* 065714 80064B14 00105080 */ sll $t2, $s0, 2 -/* 065718 80064B18 004A5821 */ addu $t3, $v0, $t2 -/* 06571C 80064B1C 8D730020 */ lw $s3, 0x20($t3) -/* 065720 80064B20 10000002 */ b .L80064B2C -/* 065724 80064B24 8E6C0000 */ lw $t4, ($s3) -.L80064B28: -/* 065728 80064B28 8E6C0000 */ lw $t4, ($s3) -.L80064B2C: -/* 06572C 80064B2C 241E0028 */ li $fp, 40 -/* 065730 80064B30 318E00FF */ andi $t6, $t4, 0xff -/* 065734 80064B34 01DE0019 */ multu $t6, $fp -/* 065738 80064B38 A2CC0024 */ sb $t4, 0x24($s6) -/* 06573C 80064B3C 8E6D0004 */ lw $t5, 4($s3) -/* 065740 80064B40 3C1500FF */ lui $s5, (0x00FFFFFF >> 16) # lui $s5, 0xff -/* 065744 80064B44 36B5FFFF */ ori $s5, (0x00FFFFFF & 0xFFFF) # ori $s5, $s5, 0xffff -/* 065748 80064B48 24110002 */ li $s1, 2 -/* 06574C 80064B4C 02A02825 */ move $a1, $s5 -/* 065750 80064B50 AECD001C */ sw $t5, 0x1c($s6) -/* 065754 80064B54 00002012 */ mflo $a0 -/* 065758 80064B58 0C01C327 */ jal func_80070C9C -/* 06575C 80064B5C 00000000 */ nop -/* 065760 80064B60 8EC4001C */ lw $a0, 0x1c($s6) -/* 065764 80064B64 AEC20020 */ sw $v0, 0x20($s6) -/* 065768 80064B68 00047840 */ sll $t7, $a0, 1 -/* 06576C 80064B6C 01E02025 */ move $a0, $t7 -/* 065770 80064B70 0C01C327 */ jal func_80070C9C -/* 065774 80064B74 02A02825 */ move $a1, $s5 -/* 065778 80064B78 8ED8001C */ lw $t8, 0x1c($s6) -/* 06577C 80064B7C AEC20014 */ sw $v0, 0x14($s6) -/* 065780 80064B80 AEC20018 */ sw $v0, 0x18($s6) -/* 065784 80064B84 1300000B */ beqz $t8, .L80064BB4 -/* 065788 80064B88 00001825 */ move $v1, $zero -.L80064B8C: -/* 06578C 80064B8C 8ED90014 */ lw $t9, 0x14($s6) -/* 065790 80064B90 00034040 */ sll $t0, $v1, 1 -/* 065794 80064B94 03284821 */ addu $t1, $t9, $t0 -/* 065798 80064B98 A5200000 */ sh $zero, ($t1) -/* 06579C 80064B9C 8ECB001C */ lw $t3, 0x1c($s6) -/* 0657A0 80064BA0 24630001 */ addiu $v1, $v1, 1 -/* 0657A4 80064BA4 306AFFFF */ andi $t2, $v1, 0xffff -/* 0657A8 80064BA8 014B082B */ sltu $at, $t2, $t3 -/* 0657AC 80064BAC 1420FFF7 */ bnez $at, .L80064B8C -/* 0657B0 80064BB0 01401825 */ move $v1, $t2 -.L80064BB4: -/* 0657B4 80064BB4 92CC0024 */ lbu $t4, 0x24($s6) -/* 0657B8 80064BB8 0000A025 */ move $s4, $zero -/* 0657BC 80064BBC 19800091 */ blez $t4, .L80064E04 -/* 0657C0 80064BC0 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0657C4 80064BC4 4481C000 */ mtc1 $at, $f24 -/* 0657C8 80064BC8 3C01447A */ li $at, 0x447A0000 # 1000.000000 -/* 0657CC 80064BCC 4481B000 */ mtc1 $at, $f22 -/* 0657D0 80064BD0 3C01800E */ lui $at, %hi(D_800E6EBC) # $at, 0x800e -/* 0657D4 80064BD4 C4356EB8 */ lwc1 $f21, %lo(D_800E6EB8)($at) -/* 0657D8 80064BD8 C4346EBC */ lwc1 $f20, %lo(D_800E6EBC)($at) -/* 0657DC 80064BDC 4480D000 */ mtc1 $zero, $f26 -/* 0657E0 80064BE0 24170001 */ li $s7, 1 -.L80064BE4: -/* 0657E4 80064BE4 029E0019 */ multu $s4, $fp -/* 0657E8 80064BE8 00117880 */ sll $t7, $s1, 2 -/* 0657EC 80064BEC 8ECD0020 */ lw $t5, 0x20($s6) -/* 0657F0 80064BF0 026FC021 */ addu $t8, $s3, $t7 -/* 0657F4 80064BF4 26310001 */ addiu $s1, $s1, 1 -/* 0657F8 80064BF8 8F190000 */ lw $t9, ($t8) -/* 0657FC 80064BFC 3228FFFF */ andi $t0, $s1, 0xffff -/* 065800 80064C00 00084880 */ sll $t1, $t0, 2 -/* 065804 80064C04 02695021 */ addu $t2, $s3, $t1 -/* 065808 80064C08 25110001 */ addiu $s1, $t0, 1 -/* 06580C 80064C0C 322CFFFF */ andi $t4, $s1, 0xffff -/* 065810 80064C10 25910001 */ addiu $s1, $t4, 1 -/* 065814 80064C14 00007012 */ mflo $t6 -/* 065818 80064C18 01AE8021 */ addu $s0, $t5, $t6 -/* 06581C 80064C1C AE190000 */ sw $t9, ($s0) -/* 065820 80064C20 8D4B0000 */ lw $t3, ($t2) -/* 065824 80064C24 000C6880 */ sll $t5, $t4, 2 -/* 065828 80064C28 026D7021 */ addu $t6, $s3, $t5 -/* 06582C 80064C2C AE0B0004 */ sw $t3, 4($s0) -/* 065830 80064C30 8DCF0000 */ lw $t7, ($t6) -/* 065834 80064C34 3238FFFF */ andi $t8, $s1, 0xffff -/* 065838 80064C38 0018C880 */ sll $t9, $t8, 2 -/* 06583C 80064C3C 02794021 */ addu $t0, $s3, $t9 -/* 065840 80064C40 27110001 */ addiu $s1, $t8, 1 -/* 065844 80064C44 A60F000A */ sh $t7, 0xa($s0) -/* 065848 80064C48 8D090000 */ lw $t1, ($t0) -/* 06584C 80064C4C 322AFFFF */ andi $t2, $s1, 0xffff -/* 065850 80064C50 000A5880 */ sll $t3, $t2, 2 -/* 065854 80064C54 026B6021 */ addu $t4, $s3, $t3 -/* 065858 80064C58 25510001 */ addiu $s1, $t2, 1 -/* 06585C 80064C5C A6090008 */ sh $t1, 8($s0) -/* 065860 80064C60 8D8D0000 */ lw $t5, ($t4) -/* 065864 80064C64 322EFFFF */ andi $t6, $s1, 0xffff -/* 065868 80064C68 000E7880 */ sll $t7, $t6, 2 -/* 06586C 80064C6C 026FC021 */ addu $t8, $s3, $t7 -/* 065870 80064C70 A60D000C */ sh $t5, 0xc($s0) -/* 065874 80064C74 8F020000 */ lw $v0, ($t8) -/* 065878 80064C78 01C08825 */ move $s1, $t6 -/* 06587C 80064C7C 1040003B */ beqz $v0, .L80064D6C -/* 065880 80064C80 02205025 */ move $t2, $s1 -/* 065884 80064C84 44822000 */ mtc1 $v0, $f4 -/* 065888 80064C88 8FB90064 */ lw $t9, 0x64($sp) -/* 06588C 80064C8C 468021A0 */ cvt.s.w $f6, $f4 -/* 065890 80064C90 8F280018 */ lw $t0, 0x18($t9) -/* 065894 80064C94 8E0A0004 */ lw $t2, 4($s0) -/* 065898 80064C98 46163203 */ div.s $f8, $f6, $f22 -/* 06589C 80064C9C 44888000 */ mtc1 $t0, $f16 -/* 0658A0 80064CA0 8E0B0000 */ lw $t3, ($s0) -/* 0658A4 80064CA4 468084A1 */ cvt.d.w $f18, $f16 -/* 0658A8 80064CA8 25D10001 */ addiu $s1, $t6, 1 -/* 0658AC 80064CAC 3229FFFF */ andi $t1, $s1, 0xffff -/* 0658B0 80064CB0 014B6023 */ subu $t4, $t2, $t3 -/* 0658B4 80064CB4 01208825 */ move $s1, $t1 -/* 0658B8 80064CB8 00116880 */ sll $t5, $s1, 2 -/* 0658BC 80064CBC 026D7021 */ addu $t6, $s3, $t5 -/* 0658C0 80064CC0 3C0141F0 */ li $at, 0x41F00000 # 30.000000 -/* 0658C4 80064CC4 46004021 */ cvt.d.s $f0, $f8 -/* 0658C8 80064CC8 46200280 */ add.d $f10, $f0, $f0 -/* 0658CC 80064CCC 448C4000 */ mtc1 $t4, $f8 -/* 0658D0 80064CD0 46325103 */ div.d $f4, $f10, $f18 -/* 0658D4 80064CD4 46804421 */ cvt.d.w $f16, $f8 -/* 0658D8 80064CD8 462021A0 */ cvt.s.d $f6, $f4 -/* 0658DC 80064CDC 05810005 */ bgez $t4, .L80064CF4 -/* 0658E0 80064CE0 E6060010 */ swc1 $f6, 0x10($s0) -/* 0658E4 80064CE4 44815800 */ mtc1 $at, $f11 -/* 0658E8 80064CE8 44805000 */ mtc1 $zero, $f10 -/* 0658EC 80064CEC 00000000 */ nop -/* 0658F0 80064CF0 462A8400 */ add.d $f16, $f16, $f10 -.L80064CF4: -/* 0658F4 80064CF4 8DCF0000 */ lw $t7, ($t6) -/* 0658F8 80064CF8 26310001 */ addiu $s1, $s1, 1 -/* 0658FC 80064CFC 448F9000 */ mtc1 $t7, $f18 -/* 065900 80064D00 3238FFFF */ andi $t8, $s1, 0xffff -/* 065904 80064D04 46809120 */ cvt.s.w $f4, $f18 -/* 065908 80064D08 03008825 */ move $s1, $t8 -/* 06590C 80064D0C E6180014 */ swc1 $f24, 0x14($s0) -/* 065910 80064D10 460021A1 */ cvt.d.s $f6, $f4 -/* 065914 80064D14 00000000 */ nop -/* 065918 80064D18 46343203 */ div.d $f8, $f6, $f20 -/* 06591C 80064D1C AE000018 */ sw $zero, 0x18($s0) -/* 065920 80064D20 24040034 */ li $a0, 52 -/* 065924 80064D24 02A02825 */ move $a1, $s5 -/* 065928 80064D28 46304282 */ mul.d $f10, $f8, $f16 -/* 06592C 80064D2C 462054A0 */ cvt.s.d $f18, $f10 -/* 065930 80064D30 0C01C327 */ jal func_80070C9C -/* 065934 80064D34 E612001C */ swc1 $f18, 0x1c($s0) -/* 065938 80064D38 AE020024 */ sw $v0, 0x24($s0) -/* 06593C 80064D3C 24040020 */ li $a0, 32 -/* 065940 80064D40 0C01C327 */ jal func_80070C9C -/* 065944 80064D44 02A02825 */ move $a1, $s5 -/* 065948 80064D48 8E190024 */ lw $t9, 0x24($s0) -/* 06594C 80064D4C 00000000 */ nop -/* 065950 80064D50 AF220014 */ sw $v0, 0x14($t9) -/* 065954 80064D54 8E080024 */ lw $t0, 0x24($s0) -/* 065958 80064D58 00000000 */ nop -/* 06595C 80064D5C E51A0020 */ swc1 $f26, 0x20($t0) -/* 065960 80064D60 8E090024 */ lw $t1, 0x24($s0) -/* 065964 80064D64 10000005 */ b .L80064D7C -/* 065968 80064D68 AD370024 */ sw $s7, 0x24($t1) -.L80064D6C: -/* 06596C 80064D6C 25510002 */ addiu $s1, $t2, 2 -/* 065970 80064D70 322BFFFF */ andi $t3, $s1, 0xffff -/* 065974 80064D74 AE000024 */ sw $zero, 0x24($s0) -/* 065978 80064D78 01608825 */ move $s1, $t3 -.L80064D7C: -/* 06597C 80064D7C 00116080 */ sll $t4, $s1, 2 -/* 065980 80064D80 026C9021 */ addu $s2, $s3, $t4 -/* 065984 80064D84 8E4D0000 */ lw $t5, ($s2) -/* 065988 80064D88 24040030 */ li $a0, 48 -/* 06598C 80064D8C 11A00013 */ beqz $t5, .L80064DDC -/* 065990 80064D90 00000000 */ nop -/* 065994 80064D94 0C01C327 */ jal func_80070C9C -/* 065998 80064D98 02A02825 */ move $a1, $s5 -/* 06599C 80064D9C AE020020 */ sw $v0, 0x20($s0) -/* 0659A0 80064DA0 24040008 */ li $a0, 8 -/* 0659A4 80064DA4 0C01C327 */ jal func_80070C9C -/* 0659A8 80064DA8 02A02825 */ move $a1, $s5 -/* 0659AC 80064DAC 8E0E0020 */ lw $t6, 0x20($s0) -/* 0659B0 80064DB0 26310001 */ addiu $s1, $s1, 1 -/* 0659B4 80064DB4 ADC20028 */ sw $v0, 0x28($t6) -/* 0659B8 80064DB8 8E180020 */ lw $t8, 0x20($s0) -/* 0659BC 80064DBC 8E4F0000 */ lw $t7, ($s2) -/* 0659C0 80064DC0 3239FFFF */ andi $t9, $s1, 0xffff -/* 0659C4 80064DC4 A70F0000 */ sh $t7, ($t8) -/* 0659C8 80064DC8 8E040020 */ lw $a0, 0x20($s0) -/* 0659CC 80064DCC 0C019254 */ jal func_80064950 -/* 0659D0 80064DD0 03208825 */ move $s1, $t9 -/* 0659D4 80064DD4 10000006 */ b .L80064DF0 -/* 0659D8 80064DD8 92CA0024 */ lbu $t2, 0x24($s6) -.L80064DDC: -/* 0659DC 80064DDC 26310001 */ addiu $s1, $s1, 1 -/* 0659E0 80064DE0 3228FFFF */ andi $t0, $s1, 0xffff -/* 0659E4 80064DE4 AE000020 */ sw $zero, 0x20($s0) -/* 0659E8 80064DE8 01008825 */ move $s1, $t0 -/* 0659EC 80064DEC 92CA0024 */ lbu $t2, 0x24($s6) -.L80064DF0: -/* 0659F0 80064DF0 26940001 */ addiu $s4, $s4, 1 -/* 0659F4 80064DF4 3289FFFF */ andi $t1, $s4, 0xffff -/* 0659F8 80064DF8 012A082A */ slt $at, $t1, $t2 -/* 0659FC 80064DFC 1420FF79 */ bnez $at, .L80064BE4 -/* 065A00 80064E00 0120A025 */ move $s4, $t1 -.L80064E04: -/* 065A04 80064E04 8FBF005C */ lw $ra, 0x5c($sp) -/* 065A08 80064E08 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 065A0C 80064E0C C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 065A10 80064E10 C7B70020 */ lwc1 $f23, 0x20($sp) -/* 065A14 80064E14 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 065A18 80064E18 C7B90028 */ lwc1 $f25, 0x28($sp) -/* 065A1C 80064E1C C7B8002C */ lwc1 $f24, 0x2c($sp) -/* 065A20 80064E20 C7BB0030 */ lwc1 $f27, 0x30($sp) -/* 065A24 80064E24 C7BA0034 */ lwc1 $f26, 0x34($sp) -/* 065A28 80064E28 8FB00038 */ lw $s0, 0x38($sp) -/* 065A2C 80064E2C 8FB1003C */ lw $s1, 0x3c($sp) -/* 065A30 80064E30 8FB20040 */ lw $s2, 0x40($sp) -/* 065A34 80064E34 8FB30044 */ lw $s3, 0x44($sp) -/* 065A38 80064E38 8FB40048 */ lw $s4, 0x48($sp) -/* 065A3C 80064E3C 8FB5004C */ lw $s5, 0x4c($sp) -/* 065A40 80064E40 8FB60050 */ lw $s6, 0x50($sp) -/* 065A44 80064E44 8FB70054 */ lw $s7, 0x54($sp) -/* 065A48 80064E48 8FBE0058 */ lw $fp, 0x58($sp) -/* 065A4C 80064E4C 03E00008 */ jr $ra -/* 065A50 80064E50 27BD0060 */ addiu $sp, $sp, 0x60 - -glabel func_80064E54 -/* 065A54 80064E54 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 065A58 80064E58 AFA5002C */ sw $a1, 0x2c($sp) -/* 065A5C 80064E5C AFBF0024 */ sw $ra, 0x24($sp) -/* 065A60 80064E60 AFB00020 */ sw $s0, 0x20($sp) -/* 065A64 80064E64 3C05800D */ lui $a1, %hi(D_800CA0D0) # $a1, 0x800d -/* 065A68 80064E68 3C06800D */ lui $a2, %hi(D_800CAA7C) # $a2, 0x800d -/* 065A6C 80064E6C 00808025 */ move $s0, $a0 -/* 065A70 80064E70 24C6AA7C */ addiu $a2, %lo(D_800CAA7C) # addiu $a2, $a2, -0x5584 -/* 065A74 80064E74 24A5A0D0 */ addiu $a1, %lo(D_800CA0D0) # addiu $a1, $a1, -0x5f30 -/* 065A78 80064E78 0C03282C */ jal func_800CA0B0 -/* 065A7C 80064E7C 24070004 */ li $a3, 4 -/* 065A80 80064E80 8FA6002C */ lw $a2, 0x2c($sp) -/* 065A84 80064E84 240E0050 */ li $t6, 80 -/* 065A88 80064E88 AFAE0010 */ sw $t6, 0x10($sp) -/* 065A8C 80064E8C 00002025 */ move $a0, $zero -/* 065A90 80064E90 00002825 */ move $a1, $zero -/* 065A94 80064E94 0C031DFC */ jal func_800C77F0 -/* 065A98 80064E98 24070001 */ li $a3, 1 -/* 065A9C 80064E9C 24030001 */ li $v1, 1 -/* 065AA0 80064EA0 AE020014 */ sw $v0, 0x14($s0) -/* 065AA4 80064EA4 AE030038 */ sw $v1, 0x38($s0) -/* 065AA8 80064EA8 AE000048 */ sw $zero, 0x48($s0) -/* 065AAC 80064EAC A603001A */ sh $v1, 0x1a($s0) -/* 065AB0 80064EB0 A6030028 */ sh $v1, 0x28($s0) -/* 065AB4 80064EB4 A603002E */ sh $v1, 0x2e($s0) -/* 065AB8 80064EB8 A603001C */ sh $v1, 0x1c($s0) -/* 065ABC 80064EBC A603001E */ sh $v1, 0x1e($s0) -/* 065AC0 80064EC0 A6000020 */ sh $zero, 0x20($s0) -/* 065AC4 80064EC4 A6000022 */ sh $zero, 0x22($s0) -/* 065AC8 80064EC8 A6030026 */ sh $v1, 0x26($s0) -/* 065ACC 80064ECC A6000024 */ sh $zero, 0x24($s0) -/* 065AD0 80064ED0 AE000030 */ sw $zero, 0x30($s0) -/* 065AD4 80064ED4 AE000034 */ sw $zero, 0x34($s0) -/* 065AD8 80064ED8 A6000018 */ sh $zero, 0x18($s0) -/* 065ADC 80064EDC AE00003C */ sw $zero, 0x3c($s0) -/* 065AE0 80064EE0 AE000040 */ sw $zero, 0x40($s0) -/* 065AE4 80064EE4 AE000044 */ sw $zero, 0x44($s0) -/* 065AE8 80064EE8 8FBF0024 */ lw $ra, 0x24($sp) -/* 065AEC 80064EEC 8FB00020 */ lw $s0, 0x20($sp) -/* 065AF0 80064EF0 03E00008 */ jr $ra -/* 065AF4 80064EF4 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_80064EF8 -/* 065AF8 80064EF8 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 065AFC 80064EFC AFA5002C */ sw $a1, 0x2c($sp) -/* 065B00 80064F00 AFA60030 */ sw $a2, 0x30($sp) -/* 065B04 80064F04 AFBF0024 */ sw $ra, 0x24($sp) -/* 065B08 80064F08 AFB00020 */ sw $s0, 0x20($sp) -/* 065B0C 80064F0C 3C06800D */ lui $a2, %hi(D_800CB540) # $a2, 0x800d -/* 065B10 80064F10 3C05800D */ lui $a1, %hi(D_800CBBEC) # $a1, 0x800d -/* 065B14 80064F14 00808025 */ move $s0, $a0 -/* 065B18 80064F18 24A5BBEC */ addiu $a1, %lo(D_800CBBEC) # addiu $a1, $a1, -0x4414 -/* 065B1C 80064F1C 24C6B540 */ addiu $a2, %lo(D_800CB540) # addiu $a2, $a2, -0x4ac0 -/* 065B20 80064F20 0C03282C */ jal func_800CA0B0 -/* 065B24 80064F24 00003825 */ move $a3, $zero -/* 065B28 80064F28 8FA60030 */ lw $a2, 0x30($sp) -/* 065B2C 80064F2C 240E0020 */ li $t6, 32 -/* 065B30 80064F30 AFAE0010 */ sw $t6, 0x10($sp) -/* 065B34 80064F34 00002025 */ move $a0, $zero -/* 065B38 80064F38 00002825 */ move $a1, $zero -/* 065B3C 80064F3C 0C031DFC */ jal func_800C77F0 -/* 065B40 80064F40 24070001 */ li $a3, 1 -/* 065B44 80064F44 AE020014 */ sw $v0, 0x14($s0) -/* 065B48 80064F48 8FA60030 */ lw $a2, 0x30($sp) -/* 065B4C 80064F4C 240F0020 */ li $t7, 32 -/* 065B50 80064F50 AFAF0010 */ sw $t7, 0x10($sp) -/* 065B54 80064F54 00002025 */ move $a0, $zero -/* 065B58 80064F58 00002825 */ move $a1, $zero -/* 065B5C 80064F5C 0C031DFC */ jal func_800C77F0 -/* 065B60 80064F60 24070001 */ li $a3, 1 -/* 065B64 80064F64 AE020018 */ sw $v0, 0x18($s0) -/* 065B68 80064F68 8FB9002C */ lw $t9, 0x2c($sp) -/* 065B6C 80064F6C 26040034 */ addiu $a0, $s0, 0x34 -/* 065B70 80064F70 0320F809 */ jalr $t9 -/* 065B74 80064F74 00000000 */ nop -/* 065B78 80064F78 24180001 */ li $t8, 1 -/* 065B7C 80064F7C AE020030 */ sw $v0, 0x30($s0) -/* 065B80 80064F80 AE00003C */ sw $zero, 0x3c($s0) -/* 065B84 80064F84 AE180040 */ sw $t8, 0x40($s0) -/* 065B88 80064F88 AE000044 */ sw $zero, 0x44($s0) -/* 065B8C 80064F8C 8FBF0024 */ lw $ra, 0x24($sp) -/* 065B90 80064F90 8FB00020 */ lw $s0, 0x20($sp) -/* 065B94 80064F94 03E00008 */ jr $ra -/* 065B98 80064F98 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_80064F9C -/* 065B9C 80064F9C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 065BA0 80064FA0 AFA5002C */ sw $a1, 0x2c($sp) -/* 065BA4 80064FA4 AFBF0024 */ sw $ra, 0x24($sp) -/* 065BA8 80064FA8 AFB00020 */ sw $s0, 0x20($sp) -/* 065BAC 80064FAC 3C05800D */ lui $a1, %hi(D_800CC17C) # $a1, 0x800d -/* 065BB0 80064FB0 3C06800D */ lui $a2, %hi(D_800CC090) # $a2, 0x800d -/* 065BB4 80064FB4 00808025 */ move $s0, $a0 -/* 065BB8 80064FB8 24C6C090 */ addiu $a2, %lo(D_800CC090) # addiu $a2, $a2, -0x3f70 -/* 065BBC 80064FBC 24A5C17C */ addiu $a1, %lo(D_800CC17C) # addiu $a1, $a1, -0x3e84 -/* 065BC0 80064FC0 0C03282C */ jal func_800CA0B0 -/* 065BC4 80064FC4 24070001 */ li $a3, 1 -/* 065BC8 80064FC8 8FA6002C */ lw $a2, 0x2c($sp) -/* 065BCC 80064FCC 240E0020 */ li $t6, 32 -/* 065BD0 80064FD0 AFAE0010 */ sw $t6, 0x10($sp) -/* 065BD4 80064FD4 00002025 */ move $a0, $zero -/* 065BD8 80064FD8 00002825 */ move $a1, $zero -/* 065BDC 80064FDC 0C031DFC */ jal func_800C77F0 -/* 065BE0 80064FE0 24070001 */ li $a3, 1 -/* 065BE4 80064FE4 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 065BE8 80064FE8 44802000 */ mtc1 $zero, $f4 -/* 065BEC 80064FEC 44813000 */ mtc1 $at, $f6 -/* 065BF0 80064FF0 240F0001 */ li $t7, 1 -/* 065BF4 80064FF4 AE020014 */ sw $v0, 0x14($s0) -/* 065BF8 80064FF8 AE0F0024 */ sw $t7, 0x24($s0) -/* 065BFC 80064FFC AE000030 */ sw $zero, 0x30($s0) -/* 065C00 80065000 AE00001C */ sw $zero, 0x1c($s0) -/* 065C04 80065004 AE000028 */ sw $zero, 0x28($s0) -/* 065C08 80065008 AE00002C */ sw $zero, 0x2c($s0) -/* 065C0C 8006500C E6040020 */ swc1 $f4, 0x20($s0) -/* 065C10 80065010 E6060018 */ swc1 $f6, 0x18($s0) -/* 065C14 80065014 8FBF0024 */ lw $ra, 0x24($sp) -/* 065C18 80065018 8FB00020 */ lw $s0, 0x20($sp) -/* 065C1C 8006501C 03E00008 */ jr $ra -/* 065C20 80065020 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_80065024 -/* 065C24 80065024 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 065C28 80065028 AFA5001C */ sw $a1, 0x1c($sp) -/* 065C2C 8006502C AFA60020 */ sw $a2, 0x20($sp) -/* 065C30 80065030 AFBF0014 */ sw $ra, 0x14($sp) -/* 065C34 80065034 3C068006 */ lui $a2, %hi(D_800659D4) # $a2, 0x8006 -/* 065C38 80065038 3C058006 */ lui $a1, %hi(D_80065900) # $a1, 0x8006 -/* 065C3C 8006503C 24A55900 */ addiu $a1, %lo(D_80065900) # addiu $a1, $a1, 0x5900 -/* 065C40 80065040 24C659D4 */ addiu $a2, %lo(D_800659D4) # addiu $a2, $a2, 0x59d4 -/* 065C44 80065044 AFA40018 */ sw $a0, 0x18($sp) -/* 065C48 80065048 0C03282C */ jal func_800CA0B0 -/* 065C4C 8006504C 24070006 */ li $a3, 6 -/* 065C50 80065050 8FA40018 */ lw $a0, 0x18($sp) -/* 065C54 80065054 00000000 */ nop -/* 065C58 80065058 AC800014 */ sw $zero, 0x14($a0) -/* 065C5C 8006505C 8FAE0020 */ lw $t6, 0x20($sp) -/* 065C60 80065060 00000000 */ nop -/* 065C64 80065064 AC8E0018 */ sw $t6, 0x18($a0) -/* 065C68 80065068 8FAF001C */ lw $t7, 0x1c($sp) -/* 065C6C 8006506C 00000000 */ nop -/* 065C70 80065070 AC8F001C */ sw $t7, 0x1c($a0) -/* 065C74 80065074 8FBF0014 */ lw $ra, 0x14($sp) -/* 065C78 80065078 27BD0018 */ addiu $sp, $sp, 0x18 -/* 065C7C 8006507C 03E00008 */ jr $ra -/* 065C80 80065080 00000000 */ nop - -glabel func_80065084 -/* 065C84 80065084 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 065C88 80065088 AFA5001C */ sw $a1, 0x1c($sp) -/* 065C8C 8006508C AFA60020 */ sw $a2, 0x20($sp) -/* 065C90 80065090 AFBF0014 */ sw $ra, 0x14($sp) -/* 065C94 80065094 3C06800D */ lui $a2, %hi(D_800CC390) # $a2, 0x800d -/* 065C98 80065098 3C05800D */ lui $a1, %hi(D_800CC3C0) # $a1, 0x800d -/* 065C9C 8006509C 24A5C3C0 */ addiu $a1, %lo(D_800CC3C0) # addiu $a1, $a1, -0x3c40 -/* 065CA0 800650A0 24C6C390 */ addiu $a2, %lo(D_800CC390) # addiu $a2, $a2, -0x3c70 -/* 065CA4 800650A4 AFA40018 */ sw $a0, 0x18($sp) -/* 065CA8 800650A8 0C03282C */ jal func_800CA0B0 -/* 065CAC 800650AC 24070007 */ li $a3, 7 -/* 065CB0 800650B0 8FA40018 */ lw $a0, 0x18($sp) -/* 065CB4 800650B4 00000000 */ nop -/* 065CB8 800650B8 AC800014 */ sw $zero, 0x14($a0) -/* 065CBC 800650BC 8FAE0020 */ lw $t6, 0x20($sp) -/* 065CC0 800650C0 00000000 */ nop -/* 065CC4 800650C4 AC8E0018 */ sw $t6, 0x18($a0) -/* 065CC8 800650C8 8FAF001C */ lw $t7, 0x1c($sp) -/* 065CCC 800650CC 00000000 */ nop -/* 065CD0 800650D0 AC8F001C */ sw $t7, 0x1c($a0) -/* 065CD4 800650D4 8FBF0014 */ lw $ra, 0x14($sp) -/* 065CD8 800650D8 27BD0018 */ addiu $sp, $sp, 0x18 -/* 065CDC 800650DC 03E00008 */ jr $ra -/* 065CE0 800650E0 00000000 */ nop - -glabel func_800650E4 -/* 065CE4 800650E4 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 065CE8 800650E8 AFBF0014 */ sw $ra, 0x14($sp) -/* 065CEC 800650EC 3C05800D */ lui $a1, %hi(D_800CC514) # $a1, 0x800d -/* 065CF0 800650F0 3C06800D */ lui $a2, %hi(D_800CC4E0) # $a2, 0x800d -/* 065CF4 800650F4 24C6C4E0 */ addiu $a2, %lo(D_800CC4E0) # addiu $a2, $a2, -0x3b20 -/* 065CF8 800650F8 24A5C514 */ addiu $a1, %lo(D_800CC514) # addiu $a1, $a1, -0x3aec -/* 065CFC 800650FC AFA40018 */ sw $a0, 0x18($sp) -/* 065D00 80065100 0C03282C */ jal func_800CA0B0 -/* 065D04 80065104 24070003 */ li $a3, 3 -/* 065D08 80065108 8FA40018 */ lw $a0, 0x18($sp) -/* 065D0C 8006510C 240E0001 */ li $t6, 1 -/* 065D10 80065110 AC800014 */ sw $zero, 0x14($a0) -/* 065D14 80065114 AC8E0018 */ sw $t6, 0x18($a0) -/* 065D18 80065118 8FBF0014 */ lw $ra, 0x14($sp) -/* 065D1C 8006511C 27BD0018 */ addiu $sp, $sp, 0x18 -/* 065D20 80065120 03E00008 */ jr $ra -/* 065D24 80065124 00000000 */ nop - -/* 065D28 80065128 00000000 */ nop -/* 065D2C 8006512C 00000000 */ nop diff --git a/asm/unknown_065D30.s b/asm/unknown_065D30.s deleted file mode 100755 index 8eb39664..00000000 --- a/asm/unknown_065D30.s +++ /dev/null @@ -1,506 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_80065130 -/* 065D30 80065130 27BDFF90 */ addiu $sp, $sp, -0x70 -/* 065D34 80065134 AFBF0044 */ sw $ra, 0x44($sp) -/* 065D38 80065138 AFBE0040 */ sw $fp, 0x40($sp) -/* 065D3C 8006513C AFB7003C */ sw $s7, 0x3c($sp) -/* 065D40 80065140 AFB60038 */ sw $s6, 0x38($sp) -/* 065D44 80065144 AFB50034 */ sw $s5, 0x34($sp) -/* 065D48 80065148 AFB40030 */ sw $s4, 0x30($sp) -/* 065D4C 8006514C AFB3002C */ sw $s3, 0x2c($sp) -/* 065D50 80065150 AFB20028 */ sw $s2, 0x28($sp) -/* 065D54 80065154 AFB10024 */ sw $s1, 0x24($sp) -/* 065D58 80065158 AFB00020 */ sw $s0, 0x20($sp) -/* 065D5C 8006515C 8CB70014 */ lw $s7, 0x14($a1) -/* 065D60 80065160 AC800000 */ sw $zero, ($a0) -/* 065D64 80065164 8CAE0004 */ lw $t6, 4($a1) -/* 065D68 80065168 AC800020 */ sw $zero, 0x20($a0) -/* 065D6C 8006516C AC80001C */ sw $zero, 0x1c($a0) -/* 065D70 80065170 AC8E003C */ sw $t6, 0x3c($a0) -/* 065D74 80065174 8CAF0018 */ lw $t7, 0x18($a1) -/* 065D78 80065178 241800A0 */ li $t8, 160 -/* 065D7C 8006517C AC980048 */ sw $t8, 0x48($a0) -/* 065D80 80065180 AC8F0044 */ sw $t7, 0x44($a0) -/* 065D84 80065184 8CB90010 */ lw $t9, 0x10($a1) -/* 065D88 80065188 0080B025 */ move $s6, $a0 -/* 065D8C 8006518C 00A0F025 */ move $fp, $a1 -/* 065D90 80065190 2408001C */ li $t0, 28 -/* 065D94 80065194 AC990024 */ sw $t9, 0x24($a0) -/* 065D98 80065198 AFA80010 */ sw $t0, 0x10($sp) -/* 065D9C 8006519C 00002025 */ move $a0, $zero -/* 065DA0 800651A0 00002825 */ move $a1, $zero -/* 065DA4 800651A4 24070001 */ li $a3, 1 -/* 065DA8 800651A8 0C031DFC */ jal func_800C77F0 -/* 065DAC 800651AC 02E03025 */ move $a2, $s7 -/* 065DB0 800651B0 AFA2005C */ sw $v0, 0x5c($sp) -/* 065DB4 800651B4 0C019439 */ jal func_800650E4 -/* 065DB8 800651B8 00402025 */ move $a0, $v0 -/* 065DBC 800651BC 8FA9005C */ lw $t1, 0x5c($sp) -/* 065DC0 800651C0 240A004C */ li $t2, 76 -/* 065DC4 800651C4 AEC90038 */ sw $t1, 0x38($s6) -/* 065DC8 800651C8 AFAA0010 */ sw $t2, 0x10($sp) -/* 065DCC 800651CC 00002025 */ move $a0, $zero -/* 065DD0 800651D0 00002825 */ move $a1, $zero -/* 065DD4 800651D4 02E03025 */ move $a2, $s7 -/* 065DD8 800651D8 0C031DFC */ jal func_800C77F0 -/* 065DDC 800651DC 24070002 */ li $a3, 2 -/* 065DE0 800651E0 240B0002 */ li $t3, 2 -/* 065DE4 800651E4 AEC20034 */ sw $v0, 0x34($s6) -/* 065DE8 800651E8 AECB0040 */ sw $t3, 0x40($s6) -/* 065DEC 800651EC 8FC70004 */ lw $a3, 4($fp) -/* 065DF0 800651F0 240C0004 */ li $t4, 4 -/* 065DF4 800651F4 AFAC0010 */ sw $t4, 0x10($sp) -/* 065DF8 800651F8 00002025 */ move $a0, $zero -/* 065DFC 800651FC 00002825 */ move $a1, $zero -/* 065E00 80065200 0C031DFC */ jal func_800C77F0 -/* 065E04 80065204 02E03025 */ move $a2, $s7 -/* 065E08 80065208 8EC40034 */ lw $a0, 0x34($s6) -/* 065E0C 8006520C 8FC60004 */ lw $a2, 4($fp) -/* 065E10 80065210 0C019409 */ jal func_80065024 -/* 065E14 80065214 00402825 */ move $a1, $v0 -/* 065E18 80065218 8FC70004 */ lw $a3, 4($fp) -/* 065E1C 8006521C 240D0004 */ li $t5, 4 -/* 065E20 80065220 AFAD0010 */ sw $t5, 0x10($sp) -/* 065E24 80065224 00002025 */ move $a0, $zero -/* 065E28 80065228 00002825 */ move $a1, $zero -/* 065E2C 8006522C 0C031DFC */ jal func_800C77F0 -/* 065E30 80065230 02E03025 */ move $a2, $s7 -/* 065E34 80065234 8EC40034 */ lw $a0, 0x34($s6) -/* 065E38 80065238 8FC60004 */ lw $a2, 4($fp) -/* 065E3C 8006523C 00402825 */ move $a1, $v0 -/* 065E40 80065240 0C019409 */ jal func_80065024 -/* 065E44 80065244 2484004C */ addiu $a0, $a0, 0x4c -/* 065E48 80065248 240E0020 */ li $t6, 32 -/* 065E4C 8006524C AFAE0010 */ sw $t6, 0x10($sp) -/* 065E50 80065250 00002025 */ move $a0, $zero -/* 065E54 80065254 00002825 */ move $a1, $zero -/* 065E58 80065258 02E03025 */ move $a2, $s7 -/* 065E5C 8006525C 0C031DFC */ jal func_800C77F0 -/* 065E60 80065260 24070001 */ li $a3, 1 -/* 065E64 80065264 AEC20030 */ sw $v0, 0x30($s6) -/* 065E68 80065268 8FC70004 */ lw $a3, 4($fp) -/* 065E6C 8006526C 240F0004 */ li $t7, 4 -/* 065E70 80065270 AFAF0010 */ sw $t7, 0x10($sp) -/* 065E74 80065274 00002025 */ move $a0, $zero -/* 065E78 80065278 00002825 */ move $a1, $zero -/* 065E7C 8006527C 0C031DFC */ jal func_800C77F0 -/* 065E80 80065280 02E03025 */ move $a2, $s7 -/* 065E84 80065284 8EC40030 */ lw $a0, 0x30($s6) -/* 065E88 80065288 8FC60004 */ lw $a2, 4($fp) -/* 065E8C 8006528C 0C019421 */ jal func_80065084 -/* 065E90 80065290 00402825 */ move $a1, $v0 -/* 065E94 80065294 00008025 */ move $s0, $zero -/* 065E98 80065298 03C08825 */ move $s1, $fp -/* 065E9C 8006529C 2412004C */ li $s2, 76 -.L800652A0: -/* 065EA0 800652A0 9238001C */ lbu $t8, 0x1c($s1) -/* 065EA4 800652A4 02C02025 */ move $a0, $s6 -/* 065EA8 800652A8 13000008 */ beqz $t8, .L800652CC -/* 065EAC 800652AC 00102C00 */ sll $a1, $s0, 0x10 -/* 065EB0 800652B0 0005CC03 */ sra $t9, $a1, 0x10 -/* 065EB4 800652B4 03202825 */ move $a1, $t9 -/* 065EB8 800652B8 03C03025 */ move $a2, $fp -/* 065EBC 800652BC 0C019618 */ jal func_80065860 -/* 065EC0 800652C0 02E03825 */ move $a3, $s7 -/* 065EC4 800652C4 1000000A */ b .L800652F0 -/* 065EC8 800652C8 26100001 */ addiu $s0, $s0, 1 -.L800652CC: -/* 065ECC 800652CC 02120019 */ multu $s0, $s2 -/* 065ED0 800652D0 8EC80034 */ lw $t0, 0x34($s6) -/* 065ED4 800652D4 8EC40030 */ lw $a0, 0x30($s6) -/* 065ED8 800652D8 24050002 */ li $a1, 2 -/* 065EDC 800652DC 00004812 */ mflo $t1 -/* 065EE0 800652E0 01093021 */ addu $a2, $t0, $t1 -/* 065EE4 800652E4 0C0330E4 */ jal D_800CC390 -/* 065EE8 800652E8 00000000 */ nop -/* 065EEC 800652EC 26100001 */ addiu $s0, $s0, 1 -.L800652F0: -/* 065EF0 800652F0 2A010002 */ slti $at, $s0, 2 -/* 065EF4 800652F4 1420FFEA */ bnez $at, .L800652A0 -/* 065EF8 800652F8 26310001 */ addiu $s1, $s1, 1 -/* 065EFC 800652FC AEC00004 */ sw $zero, 4($s6) -/* 065F00 80065300 AEC00008 */ sw $zero, 8($s6) -/* 065F04 80065304 AEC00014 */ sw $zero, 0x14($s6) -/* 065F08 80065308 AEC00018 */ sw $zero, 0x18($s6) -/* 065F0C 8006530C AEC0000C */ sw $zero, 0xc($s6) -/* 065F10 80065310 AEC00010 */ sw $zero, 0x10($s6) -/* 065F14 80065314 8FC70004 */ lw $a3, 4($fp) -/* 065F18 80065318 240A00E0 */ li $t2, 224 -/* 065F1C 8006531C AFAA0010 */ sw $t2, 0x10($sp) -/* 065F20 80065320 00002025 */ move $a0, $zero -/* 065F24 80065324 00002825 */ move $a1, $zero -/* 065F28 80065328 0C031DFC */ jal func_800C77F0 -/* 065F2C 8006532C 02E03025 */ move $a2, $s7 -/* 065F30 80065330 8FCB0004 */ lw $t3, 4($fp) -/* 065F34 80065334 00008025 */ move $s0, $zero -/* 065F38 80065338 19600030 */ blez $t3, .L800653FC -/* 065F3C 8006533C 00408825 */ move $s1, $v0 -/* 065F40 80065340 26C50004 */ addiu $a1, $s6, 4 -/* 065F44 80065344 AFA50048 */ sw $a1, 0x48($sp) -/* 065F48 80065348 2452008C */ addiu $s2, $v0, 0x8c -/* 065F4C 8006534C 24530058 */ addiu $s3, $v0, 0x58 -/* 065F50 80065350 24540010 */ addiu $s4, $v0, 0x10 -.L80065354: -/* 065F54 80065354 8FA50048 */ lw $a1, 0x48($sp) -/* 065F58 80065358 0220A825 */ move $s5, $s1 -/* 065F5C 8006535C 0C0321E4 */ jal func_800C8790 -/* 065F60 80065360 02202025 */ move $a0, $s1 -/* 065F64 80065364 AE200008 */ sw $zero, 8($s1) -/* 065F68 80065368 8EC50024 */ lw $a1, 0x24($s6) -/* 065F6C 8006536C 02802025 */ move $a0, $s4 -/* 065F70 80065370 0C0193BE */ jal func_80064EF8 -/* 065F74 80065374 02E03025 */ move $a2, $s7 -/* 065F78 80065378 02802025 */ move $a0, $s4 -/* 065F7C 8006537C 24050001 */ li $a1, 1 -/* 065F80 80065380 0C032D50 */ jal D_800CB540 -/* 065F84 80065384 00003025 */ move $a2, $zero -/* 065F88 80065388 02602025 */ move $a0, $s3 -/* 065F8C 8006538C 0C0193E7 */ jal func_80064F9C -/* 065F90 80065390 02E02825 */ move $a1, $s7 -/* 065F94 80065394 02602025 */ move $a0, $s3 -/* 065F98 80065398 24050001 */ li $a1, 1 -/* 065F9C 8006539C 0C033024 */ jal D_800CC090 -/* 065FA0 800653A0 02803025 */ move $a2, $s4 -/* 065FA4 800653A4 02402025 */ move $a0, $s2 -/* 065FA8 800653A8 0C019395 */ jal func_80064E54 -/* 065FAC 800653AC 02E02825 */ move $a1, $s7 -/* 065FB0 800653B0 02402025 */ move $a0, $s2 -/* 065FB4 800653B4 24050001 */ li $a1, 1 -/* 065FB8 800653B8 0C032A9F */ jal D_800CAA7C -/* 065FBC 800653BC 02603025 */ move $a2, $s3 -/* 065FC0 800653C0 8EC40034 */ lw $a0, 0x34($s6) -/* 065FC4 800653C4 24050002 */ li $a1, 2 -/* 065FC8 800653C8 0C019675 */ jal D_800659D4 -/* 065FCC 800653CC 02403025 */ move $a2, $s2 -/* 065FD0 800653D0 26AC008C */ addiu $t4, $s5, 0x8c -/* 065FD4 800653D4 AEAC000C */ sw $t4, 0xc($s5) -/* 065FD8 800653D8 8FCD0004 */ lw $t5, 4($fp) -/* 065FDC 800653DC 26100001 */ addiu $s0, $s0, 1 -/* 065FE0 800653E0 020D082A */ slt $at, $s0, $t5 -/* 065FE4 800653E4 263100E0 */ addiu $s1, $s1, 0xe0 -/* 065FE8 800653E8 265200E0 */ addiu $s2, $s2, 0xe0 -/* 065FEC 800653EC 267300E0 */ addiu $s3, $s3, 0xe0 -/* 065FF0 800653F0 1420FFD8 */ bnez $at, .L80065354 -/* 065FF4 800653F4 269400E0 */ addiu $s4, $s4, 0xe0 -/* 065FF8 800653F8 00008025 */ move $s0, $zero -.L800653FC: -/* 065FFC 800653FC 8FA4005C */ lw $a0, 0x5c($sp) -/* 066000 80065400 8EC60030 */ lw $a2, 0x30($s6) -/* 066004 80065404 0C033138 */ jal D_800CC4E0 -/* 066008 80065408 24050001 */ li $a1, 1 -/* 06600C 8006540C 8FC70008 */ lw $a3, 8($fp) -/* 066010 80065410 240E001C */ li $t6, 28 -/* 066014 80065414 AFAE0010 */ sw $t6, 0x10($sp) -/* 066018 80065418 00002025 */ move $a0, $zero -/* 06601C 8006541C 00002825 */ move $a1, $zero -/* 066020 80065420 0C031DFC */ jal func_800C77F0 -/* 066024 80065424 02E03025 */ move $a2, $s7 -/* 066028 80065428 AEC0002C */ sw $zero, 0x2c($s6) -/* 06602C 8006542C 8FCF0008 */ lw $t7, 8($fp) -/* 066030 80065430 00401825 */ move $v1, $v0 -/* 066034 80065434 19E0000A */ blez $t7, .L80065460 -/* 066038 80065438 00000000 */ nop -.L8006543C: -/* 06603C 8006543C 8ED8002C */ lw $t8, 0x2c($s6) -/* 066040 80065440 26100001 */ addiu $s0, $s0, 1 -/* 066044 80065444 AC780000 */ sw $t8, ($v1) -/* 066048 80065448 AEC3002C */ sw $v1, 0x2c($s6) -/* 06604C 8006544C 8FD90008 */ lw $t9, 8($fp) -/* 066050 80065450 2463001C */ addiu $v1, $v1, 0x1c -/* 066054 80065454 0219082A */ slt $at, $s0, $t9 -/* 066058 80065458 1420FFF8 */ bnez $at, .L8006543C -/* 06605C 8006545C 00000000 */ nop -.L80065460: -/* 066060 80065460 AED70028 */ sw $s7, 0x28($s6) -/* 066064 80065464 8FBF0044 */ lw $ra, 0x44($sp) -/* 066068 80065468 8FBE0040 */ lw $fp, 0x40($sp) -/* 06606C 8006546C 8FB7003C */ lw $s7, 0x3c($sp) -/* 066070 80065470 8FB60038 */ lw $s6, 0x38($sp) -/* 066074 80065474 8FB50034 */ lw $s5, 0x34($sp) -/* 066078 80065478 8FB40030 */ lw $s4, 0x30($sp) -/* 06607C 8006547C 8FB3002C */ lw $s3, 0x2c($sp) -/* 066080 80065480 8FB20028 */ lw $s2, 0x28($sp) -/* 066084 80065484 8FB10024 */ lw $s1, 0x24($sp) -/* 066088 80065488 8FB00020 */ lw $s0, 0x20($sp) -/* 06608C 8006548C 03E00008 */ jr $ra -/* 066090 80065490 27BD0070 */ addiu $sp, $sp, 0x70 - -glabel func_80065494 -/* 066094 80065494 27BDFF90 */ addiu $sp, $sp, -0x70 -/* 066098 80065498 AFB20024 */ sw $s2, 0x24($sp) -/* 06609C 8006549C 3C12800E */ lui $s2, %hi(D_800E3780) # $s2, 0x800e -/* 0660A0 800654A0 8E523780 */ lw $s2, %lo(D_800E3780)($s2) -/* 0660A4 800654A4 AFBF003C */ sw $ra, 0x3c($sp) -/* 0660A8 800654A8 AFB70038 */ sw $s7, 0x38($sp) -/* 0660AC 800654AC AFB60034 */ sw $s6, 0x34($sp) -/* 0660B0 800654B0 AFB50030 */ sw $s5, 0x30($sp) -/* 0660B4 800654B4 AFB4002C */ sw $s4, 0x2c($sp) -/* 0660B8 800654B8 AFB30028 */ sw $s3, 0x28($sp) -/* 0660BC 800654BC AFB10020 */ sw $s1, 0x20($sp) -/* 0660C0 800654C0 AFB0001C */ sw $s0, 0x1c($sp) -/* 0660C4 800654C4 AFA50074 */ sw $a1, 0x74($sp) -/* 0660C8 800654C8 A7A00062 */ sh $zero, 0x62($sp) -/* 0660CC 800654CC 8E4E0000 */ lw $t6, ($s2) -/* 0660D0 800654D0 00808825 */ move $s1, $a0 -/* 0660D4 800654D4 00E09825 */ move $s3, $a3 -/* 0660D8 800654D8 0080A025 */ move $s4, $a0 -/* 0660DC 800654DC 15C00004 */ bnez $t6, .L800654F0 -/* 0660E0 800654E0 00C0A825 */ move $s5, $a2 -/* 0660E4 800654E4 ACA00000 */ sw $zero, ($a1) -/* 0660E8 800654E8 10000054 */ b .L8006563C -/* 0660EC 800654EC 00801025 */ move $v0, $a0 -.L800654F0: -/* 0660F0 800654F0 27B0006C */ addiu $s0, $sp, 0x6c -/* 0660F4 800654F4 02002825 */ move $a1, $s0 -/* 0660F8 800654F8 02402025 */ move $a0, $s2 -/* 0660FC 800654FC 0C0195FB */ jal func_800657EC -/* 066100 80065500 AFB10070 */ sw $s1, 0x70($sp) -/* 066104 80065504 8E580020 */ lw $t8, 0x20($s2) -/* 066108 80065508 AE42001C */ sw $v0, 0x1c($s2) -/* 06610C 8006550C 0058C823 */ subu $t9, $v0, $t8 -/* 066110 80065510 0333082A */ slt $at, $t9, $s3 -/* 066114 80065514 1020001B */ beqz $at, .L80065584 -/* 066118 80065518 2411FFF0 */ li $s1, -16 -.L8006551C: -/* 06611C 8006551C 8E48001C */ lw $t0, 0x1c($s2) -/* 066120 80065520 00000000 */ nop -/* 066124 80065524 01114824 */ and $t1, $t0, $s1 -/* 066128 80065528 AE49001C */ sw $t1, 0x1c($s2) -/* 06612C 8006552C 8FA4006C */ lw $a0, 0x6c($sp) -/* 066130 80065530 00000000 */ nop -/* 066134 80065534 8C990008 */ lw $t9, 8($a0) -/* 066138 80065538 00000000 */ nop -/* 06613C 8006553C 0320F809 */ jalr $t9 -/* 066140 80065540 00000000 */ nop -/* 066144 80065544 02402025 */ move $a0, $s2 -/* 066148 80065548 0C0195D5 */ jal func_80065754 -/* 06614C 8006554C 00402825 */ move $a1, $v0 -/* 066150 80065550 8FAB006C */ lw $t3, 0x6c($sp) -/* 066154 80065554 02402025 */ move $a0, $s2 -/* 066158 80065558 8D6C0010 */ lw $t4, 0x10($t3) -/* 06615C 8006555C 02002825 */ move $a1, $s0 -/* 066160 80065560 01826821 */ addu $t5, $t4, $v0 -/* 066164 80065564 0C0195FB */ jal func_800657EC -/* 066168 80065568 AD6D0010 */ sw $t5, 0x10($t3) -/* 06616C 8006556C 8E4E0020 */ lw $t6, 0x20($s2) -/* 066170 80065570 AE42001C */ sw $v0, 0x1c($s2) -/* 066174 80065574 004E7823 */ subu $t7, $v0, $t6 -/* 066178 80065578 01F3082A */ slt $at, $t7, $s3 -/* 06617C 8006557C 1420FFE7 */ bnez $at, .L8006551C -/* 066180 80065580 00000000 */ nop -.L80065584: -/* 066184 80065584 8E58001C */ lw $t8, 0x1c($s2) -/* 066188 80065588 2411FFF0 */ li $s1, -16 -/* 06618C 8006558C 03114024 */ and $t0, $t8, $s1 -/* 066190 80065590 1A600022 */ blez $s3, .L8006561C -/* 066194 80065594 AE48001C */ sw $t0, 0x1c($s2) -/* 066198 80065598 27B70062 */ addiu $s7, $sp, 0x62 -/* 06619C 8006559C 3C160700 */ lui $s6, 0x700 -.L800655A0: -/* 0661A0 800655A0 8E420048 */ lw $v0, 0x48($s2) -/* 0661A4 800655A4 02608025 */ move $s0, $s3 -/* 0661A8 800655A8 0053082A */ slt $at, $v0, $s3 -/* 0661AC 800655AC 10200003 */ beqz $at, .L800655BC -/* 0661B0 800655B0 00000000 */ nop -/* 0661B4 800655B4 10000001 */ b .L800655BC -/* 0661B8 800655B8 00408025 */ move $s0, $v0 -.L800655BC: -/* 0661BC 800655BC AE960000 */ sw $s6, ($s4) -/* 0661C0 800655C0 AE800004 */ sw $zero, 4($s4) -/* 0661C4 800655C4 8E510038 */ lw $s1, 0x38($s2) -/* 0661C8 800655C8 24050006 */ li $a1, 6 -/* 0661CC 800655CC 8E390008 */ lw $t9, 8($s1) -/* 0661D0 800655D0 02A03025 */ move $a2, $s5 -/* 0661D4 800655D4 0320F809 */ jalr $t9 -/* 0661D8 800655D8 02202025 */ move $a0, $s1 -/* 0661DC 800655DC 8E470020 */ lw $a3, 0x20($s2) -/* 0661E0 800655E0 26890008 */ addiu $t1, $s4, 8 -/* 0661E4 800655E4 AFA90010 */ sw $t1, 0x10($sp) -/* 0661E8 800655E8 8E390004 */ lw $t9, 4($s1) -/* 0661EC 800655EC 02202025 */ move $a0, $s1 -/* 0661F0 800655F0 02E02825 */ move $a1, $s7 -/* 0661F4 800655F4 0320F809 */ jalr $t9 -/* 0661F8 800655F8 02003025 */ move $a2, $s0 -/* 0661FC 800655FC 8E4D0020 */ lw $t5, 0x20($s2) -/* 066200 80065600 02709823 */ subu $s3, $s3, $s0 -/* 066204 80065604 00106080 */ sll $t4, $s0, 2 -/* 066208 80065608 01B05821 */ addu $t3, $t5, $s0 -/* 06620C 8006560C 0040A025 */ move $s4, $v0 -/* 066210 80065610 02ACA821 */ addu $s5, $s5, $t4 -/* 066214 80065614 1E60FFE2 */ bgtz $s3, .L800655A0 -/* 066218 80065618 AE4B0020 */ sw $t3, 0x20($s2) -.L8006561C: -/* 06621C 8006561C 8FAE0070 */ lw $t6, 0x70($sp) -/* 066220 80065620 8FA80074 */ lw $t0, 0x74($sp) -/* 066224 80065624 028E7823 */ subu $t7, $s4, $t6 -/* 066228 80065628 000FC0C3 */ sra $t8, $t7, 3 -/* 06622C 8006562C 02402025 */ move $a0, $s2 -/* 066230 80065630 0C0195AF */ jal func_800656BC -/* 066234 80065634 AD180000 */ sw $t8, ($t0) -/* 066238 80065638 02801025 */ move $v0, $s4 -.L8006563C: -/* 06623C 8006563C 8FBF003C */ lw $ra, 0x3c($sp) -/* 066240 80065640 8FB0001C */ lw $s0, 0x1c($sp) -/* 066244 80065644 8FB10020 */ lw $s1, 0x20($sp) -/* 066248 80065648 8FB20024 */ lw $s2, 0x24($sp) -/* 06624C 8006564C 8FB30028 */ lw $s3, 0x28($sp) -/* 066250 80065650 8FB4002C */ lw $s4, 0x2c($sp) -/* 066254 80065654 8FB50030 */ lw $s5, 0x30($sp) -/* 066258 80065658 8FB60034 */ lw $s6, 0x34($sp) -/* 06625C 8006565C 8FB70038 */ lw $s7, 0x38($sp) -/* 066260 80065660 03E00008 */ jr $ra -/* 066264 80065664 27BD0070 */ addiu $sp, $sp, 0x70 - -glabel func_80065668 -/* 066268 80065668 3C02800E */ lui $v0, %hi(D_800E3780) # $v0, 0x800e -/* 06626C 8006566C 8C423780 */ lw $v0, %lo(D_800E3780)($v0) -/* 066270 80065670 00001825 */ move $v1, $zero -/* 066274 80065674 8C44002C */ lw $a0, 0x2c($v0) -/* 066278 80065678 00000000 */ nop -/* 06627C 8006567C 10800005 */ beqz $a0, .L80065694 -/* 066280 80065680 00000000 */ nop -/* 066284 80065684 8C8E0000 */ lw $t6, ($a0) -/* 066288 80065688 00801825 */ move $v1, $a0 -/* 06628C 8006568C AC4E002C */ sw $t6, 0x2c($v0) -/* 066290 80065690 AC800000 */ sw $zero, ($a0) -.L80065694: -/* 066294 80065694 03E00008 */ jr $ra -/* 066298 80065698 00601025 */ move $v0, $v1 - -glabel func_8006569C -/* 06629C 8006569C 3C02800E */ lui $v0, %hi(D_800E3780) # $v0, 0x800e -/* 0662A0 800656A0 8C423780 */ lw $v0, %lo(D_800E3780)($v0) -/* 0662A4 800656A4 00000000 */ nop -/* 0662A8 800656A8 8C4E002C */ lw $t6, 0x2c($v0) -/* 0662AC 800656AC 00000000 */ nop -/* 0662B0 800656B0 AC8E0000 */ sw $t6, ($a0) -/* 0662B4 800656B4 03E00008 */ jr $ra -/* 0662B8 800656B8 AC44002C */ sw $a0, 0x2c($v0) - -glabel func_800656BC -/* 0662BC 800656BC 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0662C0 800656C0 AFBF0024 */ sw $ra, 0x24($sp) -/* 0662C4 800656C4 AFB20020 */ sw $s2, 0x20($sp) -/* 0662C8 800656C8 AFB1001C */ sw $s1, 0x1c($sp) -/* 0662CC 800656CC AFB00018 */ sw $s0, 0x18($sp) -/* 0662D0 800656D0 8C900014 */ lw $s0, 0x14($a0) -/* 0662D4 800656D4 00808825 */ move $s1, $a0 -/* 0662D8 800656D8 1200000A */ beqz $s0, .L80065704 -/* 0662DC 800656DC 24920004 */ addiu $s2, $a0, 4 -.L800656E0: -/* 0662E0 800656E0 0C0321D8 */ jal func_800C8760 -/* 0662E4 800656E4 02002025 */ move $a0, $s0 -/* 0662E8 800656E8 02002025 */ move $a0, $s0 -/* 0662EC 800656EC 0C0321E4 */ jal func_800C8790 -/* 0662F0 800656F0 02402825 */ move $a1, $s2 -/* 0662F4 800656F4 8E300014 */ lw $s0, 0x14($s1) -/* 0662F8 800656F8 00000000 */ nop -/* 0662FC 800656FC 1600FFF8 */ bnez $s0, .L800656E0 -/* 066300 80065700 00000000 */ nop -.L80065704: -/* 066304 80065704 8FBF0024 */ lw $ra, 0x24($sp) -/* 066308 80065708 8FB00018 */ lw $s0, 0x18($sp) -/* 06630C 8006570C 8FB1001C */ lw $s1, 0x1c($sp) -/* 066310 80065710 8FB20020 */ lw $s2, 0x20($sp) -/* 066314 80065714 03E00008 */ jr $ra -/* 066318 80065718 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_8006571C -/* 06631C 8006571C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 066320 80065720 AFBF0014 */ sw $ra, 0x14($sp) -/* 066324 80065724 AFA40018 */ sw $a0, 0x18($sp) -/* 066328 80065728 AFA5001C */ sw $a1, 0x1c($sp) -/* 06632C 8006572C 0C0321D8 */ jal func_800C8760 -/* 066330 80065730 00A02025 */ move $a0, $a1 -/* 066334 80065734 8FA50018 */ lw $a1, 0x18($sp) -/* 066338 80065738 8FA4001C */ lw $a0, 0x1c($sp) -/* 06633C 8006573C 0C0321E4 */ jal func_800C8790 -/* 066340 80065740 24A50014 */ addiu $a1, $a1, 0x14 -/* 066344 80065744 8FBF0014 */ lw $ra, 0x14($sp) -/* 066348 80065748 27BD0018 */ addiu $sp, $sp, 0x18 -/* 06634C 8006574C 03E00008 */ jr $ra -/* 066350 80065750 00000000 */ nop - -glabel func_80065754 -/* 066354 80065754 8C8E0044 */ lw $t6, 0x44($a0) -/* 066358 80065758 44852000 */ mtc1 $a1, $f4 -/* 06635C 8006575C 448E4000 */ mtc1 $t6, $f8 -/* 066360 80065760 468021A0 */ cvt.s.w $f6, $f4 -/* 066364 80065764 3C01800E */ lui $at, %hi(D_800E6EC4) # $at, 0x800e -/* 066368 80065768 C4256EC0 */ lwc1 $f5, %lo(D_800E6EC0)($at) -/* 06636C 8006576C 468042A0 */ cvt.s.w $f10, $f8 -/* 066370 80065770 C4246EC4 */ lwc1 $f4, %lo(D_800E6EC4)($at) -/* 066374 80065774 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 066378 80065778 460A3402 */ mul.s $f16, $f6, $f10 -/* 06637C 8006577C 44803000 */ mtc1 $zero, $f6 -/* 066380 80065780 44813800 */ mtc1 $at, $f7 -/* 066384 80065784 460084A1 */ cvt.d.s $f18, $f16 -/* 066388 80065788 00000000 */ nop -/* 06638C 8006578C 46249203 */ div.d $f8, $f18, $f4 -/* 066390 80065790 46264280 */ add.d $f10, $f8, $f6 -/* 066394 80065794 46205020 */ cvt.s.d $f0, $f10 -/* 066398 80065798 444FF800 */ cfc1 $t7, $31 -/* 06639C 8006579C 00000000 */ nop -/* 0663A0 800657A0 35E10003 */ ori $at, $t7, 3 -/* 0663A4 800657A4 38210002 */ xori $at, $at, 2 -/* 0663A8 800657A8 44C1F800 */ ctc1 $at, $31 -/* 0663AC 800657AC 00000000 */ nop -/* 0663B0 800657B0 46000424 */ cvt.w.s $f16, $f0 -/* 0663B4 800657B4 44028000 */ mfc1 $v0, $f16 -/* 0663B8 800657B8 44CFF800 */ ctc1 $t7, $31 -/* 0663BC 800657BC 03E00008 */ jr $ra -/* 0663C0 800657C0 00000000 */ nop - -glabel func_800657C4 -/* 0663C4 800657C4 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0663C8 800657C8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0663CC 800657CC 0C0195D5 */ jal func_80065754 -/* 0663D0 800657D0 00000000 */ nop -/* 0663D4 800657D4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0663D8 800657D8 2401FFF0 */ li $at, -16 -/* 0663DC 800657DC 00417024 */ and $t6, $v0, $at -/* 0663E0 800657E0 01C01025 */ move $v0, $t6 -/* 0663E4 800657E4 03E00008 */ jr $ra -/* 0663E8 800657E8 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_800657EC -/* 0663EC 800657EC ACA00000 */ sw $zero, ($a1) -/* 0663F0 800657F0 8C830000 */ lw $v1, ($a0) -/* 0663F4 800657F4 3C027FFF */ lui $v0, (0x7FFFFFFF >> 16) # lui $v0, 0x7fff -/* 0663F8 800657F8 10600012 */ beqz $v1, .L80065844 -/* 0663FC 800657FC 3442FFFF */ ori $v0, (0x7FFFFFFF & 0xFFFF) # ori $v0, $v0, 0xffff -/* 066400 80065800 8C860020 */ lw $a2, 0x20($a0) -/* 066404 80065804 00000000 */ nop -.L80065808: -/* 066408 80065808 8C6E0010 */ lw $t6, 0x10($v1) -/* 06640C 8006580C 00000000 */ nop -/* 066410 80065810 01C67823 */ subu $t7, $t6, $a2 -/* 066414 80065814 01E2082A */ slt $at, $t7, $v0 -/* 066418 80065818 10200006 */ beqz $at, .L80065834 -/* 06641C 8006581C 00000000 */ nop -/* 066420 80065820 ACA30000 */ sw $v1, ($a1) -/* 066424 80065824 8C780010 */ lw $t8, 0x10($v1) -/* 066428 80065828 8C860020 */ lw $a2, 0x20($a0) -/* 06642C 8006582C 00000000 */ nop -/* 066430 80065830 03061023 */ subu $v0, $t8, $a2 -.L80065834: -/* 066434 80065834 8C630000 */ lw $v1, ($v1) -/* 066438 80065838 00000000 */ nop -/* 06643C 8006583C 1460FFF2 */ bnez $v1, .L80065808 -/* 066440 80065840 00000000 */ nop -.L80065844: -/* 066444 80065844 8CB90000 */ lw $t9, ($a1) -/* 066448 80065848 00000000 */ nop -/* 06644C 8006584C 8F220010 */ lw $v0, 0x10($t9) -/* 066450 80065850 03E00008 */ jr $ra -/* 066454 80065854 00000000 */ nop - -/* 066458 80065858 00000000 */ nop -/* 06645C 8006585C 00000000 */ nop diff --git a/asm/unknown_066500.s b/asm/unknown_066500.s deleted file mode 100755 index 5edc3fbf..00000000 --- a/asm/unknown_066500.s +++ /dev/null @@ -1,208 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel D_80065900 -/* 066500 80065900 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 066504 80065904 AFB10024 */ sw $s1, 0x24($sp) -/* 066508 80065908 8FB10050 */ lw $s1, 0x50($sp) -/* 06650C 8006590C AFBF003C */ sw $ra, 0x3c($sp) -/* 066510 80065910 AFB60038 */ sw $s6, 0x38($sp) -/* 066514 80065914 AFB50034 */ sw $s5, 0x34($sp) -/* 066518 80065918 AFB40030 */ sw $s4, 0x30($sp) -/* 06651C 8006591C AFB3002C */ sw $s3, 0x2c($sp) -/* 066520 80065920 AFB20028 */ sw $s2, 0x28($sp) -/* 066524 80065924 AFB00020 */ sw $s0, 0x20($sp) -/* 066528 80065928 8C83001C */ lw $v1, 0x1c($a0) -/* 06652C 8006592C 3C0E0200 */ lui $t6, (0x020006C0 >> 16) # lui $t6, 0x200 -/* 066530 80065930 00061040 */ sll $v0, $a2, 1 -/* 066534 80065934 3C0F0200 */ lui $t7, (0x02000800 >> 16) # lui $t7, 0x200 -/* 066538 80065938 35CE06C0 */ ori $t6, (0x020006C0 & 0xFFFF) # ori $t6, $t6, 0x6c0 -/* 06653C 8006593C 35EF0800 */ ori $t7, (0x02000800 & 0xFFFF) # ori $t7, $t7, 0x800 -/* 066540 80065940 AE2E0000 */ sw $t6, ($s1) -/* 066544 80065944 AE220004 */ sw $v0, 4($s1) -/* 066548 80065948 AE2F0008 */ sw $t7, 8($s1) -/* 06654C 8006594C AE22000C */ sw $v0, 0xc($s1) -/* 066550 80065950 8C980014 */ lw $t8, 0x14($a0) -/* 066554 80065954 00C0A025 */ move $s4, $a2 -/* 066558 80065958 00A0A825 */ move $s5, $a1 -/* 06655C 8006595C 00E0B025 */ move $s6, $a3 -/* 066560 80065960 00809825 */ move $s3, $a0 -/* 066564 80065964 00008025 */ move $s0, $zero -/* 066568 80065968 1B00000F */ blez $t8, .L800659A8 -/* 06656C 8006596C 26320010 */ addiu $s2, $s1, 0x10 -/* 066570 80065970 00608825 */ move $s1, $v1 -.L80065974: -/* 066574 80065974 8E240000 */ lw $a0, ($s1) -/* 066578 80065978 AFB20010 */ sw $s2, 0x10($sp) -/* 06657C 8006597C 8C990004 */ lw $t9, 4($a0) -/* 066580 80065980 02A02825 */ move $a1, $s5 -/* 066584 80065984 02803025 */ move $a2, $s4 -/* 066588 80065988 0320F809 */ jalr $t9 -/* 06658C 8006598C 02C03825 */ move $a3, $s6 -/* 066590 80065990 8E680014 */ lw $t0, 0x14($s3) -/* 066594 80065994 26100001 */ addiu $s0, $s0, 1 -/* 066598 80065998 0208082A */ slt $at, $s0, $t0 -/* 06659C 8006599C 26310004 */ addiu $s1, $s1, 4 -/* 0665A0 800659A0 1420FFF4 */ bnez $at, .L80065974 -/* 0665A4 800659A4 00409025 */ move $s2, $v0 -.L800659A8: -/* 0665A8 800659A8 8FBF003C */ lw $ra, 0x3c($sp) -/* 0665AC 800659AC 02401025 */ move $v0, $s2 -/* 0665B0 800659B0 8FB20028 */ lw $s2, 0x28($sp) -/* 0665B4 800659B4 8FB00020 */ lw $s0, 0x20($sp) -/* 0665B8 800659B8 8FB10024 */ lw $s1, 0x24($sp) -/* 0665BC 800659BC 8FB3002C */ lw $s3, 0x2c($sp) -/* 0665C0 800659C0 8FB40030 */ lw $s4, 0x30($sp) -/* 0665C4 800659C4 8FB50034 */ lw $s5, 0x34($sp) -/* 0665C8 800659C8 8FB60038 */ lw $s6, 0x38($sp) -/* 0665CC 800659CC 03E00008 */ jr $ra -/* 0665D0 800659D0 27BD0040 */ addiu $sp, $sp, 0x40 - -glabel D_800659D4 -/* 0665D4 800659D4 8C83001C */ lw $v1, 0x1c($a0) -/* 0665D8 800659D8 24010002 */ li $at, 2 -/* 0665DC 800659DC 10A10006 */ beq $a1, $at, .L800659F8 -/* 0665E0 800659E0 00801025 */ move $v0, $a0 -/* 0665E4 800659E4 24010011 */ li $at, 17 -/* 0665E8 800659E8 10A1000D */ beq $a1, $at, .L80065A20 -/* 0665EC 800659EC 00000000 */ nop -/* 0665F0 800659F0 03E00008 */ jr $ra -/* 0665F4 800659F4 00001025 */ move $v0, $zero - -.L800659F8: -/* 0665F8 800659F8 8C8E0014 */ lw $t6, 0x14($a0) -/* 0665FC 800659FC 00001025 */ move $v0, $zero -/* 066600 80065A00 000E7880 */ sll $t7, $t6, 2 -/* 066604 80065A04 006FC021 */ addu $t8, $v1, $t7 -/* 066608 80065A08 AF060000 */ sw $a2, ($t8) -/* 06660C 80065A0C 8C990014 */ lw $t9, 0x14($a0) -/* 066610 80065A10 00000000 */ nop -/* 066614 80065A14 27280001 */ addiu $t0, $t9, 1 -/* 066618 80065A18 03E00008 */ jr $ra -/* 06661C 80065A1C AC880014 */ sw $t0, 0x14($a0) - -.L80065A20: -/* 066620 80065A20 8C890014 */ lw $t1, 0x14($a0) -/* 066624 80065A24 00002825 */ move $a1, $zero -/* 066628 80065A28 19200013 */ blez $t1, .L80065A78 -/* 06662C 80065A2C 00603825 */ move $a3, $v1 -.L80065A30: -/* 066630 80065A30 8CEA0000 */ lw $t2, ($a3) -/* 066634 80065A34 00000000 */ nop -/* 066638 80065A38 14CA000A */ bne $a2, $t2, .L80065A64 -/* 06663C 80065A3C 00000000 */ nop -/* 066640 80065A40 8C8B0014 */ lw $t3, 0x14($a0) -/* 066644 80065A44 00000000 */ nop -/* 066648 80065A48 256CFFFF */ addiu $t4, $t3, -1 -/* 06664C 80065A4C 000C7080 */ sll $t6, $t4, 2 -/* 066650 80065A50 AC8C0014 */ sw $t4, 0x14($a0) -/* 066654 80065A54 006E7821 */ addu $t7, $v1, $t6 -/* 066658 80065A58 8DF80000 */ lw $t8, ($t7) -/* 06665C 80065A5C 00000000 */ nop -/* 066660 80065A60 ACF80000 */ sw $t8, ($a3) -.L80065A64: -/* 066664 80065A64 8C590014 */ lw $t9, 0x14($v0) -/* 066668 80065A68 24A50001 */ addiu $a1, $a1, 1 -/* 06666C 80065A6C 00B9082A */ slt $at, $a1, $t9 -/* 066670 80065A70 1420FFEF */ bnez $at, .L80065A30 -/* 066674 80065A74 24E70004 */ addiu $a3, $a3, 4 -.L80065A78: -/* 066678 80065A78 03E00008 */ jr $ra -/* 06667C 80065A7C 00001025 */ move $v0, $zero - -glabel func_80065A80 -/* 066680 80065A80 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 066684 80065A84 AFA60028 */ sw $a2, 0x28($sp) -/* 066688 80065A88 AFBF0014 */ sw $ra, 0x14($sp) -/* 06668C 80065A8C AFA40020 */ sw $a0, 0x20($sp) -/* 066690 80065A90 90A200DC */ lbu $v0, 0xdc($a1) -/* 066694 80065A94 87AE002A */ lh $t6, 0x2a($sp) -/* 066698 80065A98 00A03825 */ move $a3, $a1 -/* 06669C 80065A9C 11C2001C */ beq $t6, $v0, .L80065B10 -/* 0666A0 80065AA0 0002C880 */ sll $t9, $v0, 2 -/* 0666A4 80065AA4 0322C821 */ addu $t9, $t9, $v0 -/* 0666A8 80065AA8 8C980034 */ lw $t8, 0x34($a0) -/* 0666AC 80065AAC 0019C880 */ sll $t9, $t9, 2 -/* 0666B0 80065AB0 0322C823 */ subu $t9, $t9, $v0 -/* 0666B4 80065AB4 0019C880 */ sll $t9, $t9, 2 -/* 0666B8 80065AB8 24E6008C */ addiu $a2, $a3, 0x8c -/* 0666BC 80065ABC AFA60018 */ sw $a2, 0x18($sp) -/* 0666C0 80065AC0 AFA70024 */ sw $a3, 0x24($sp) -/* 0666C4 80065AC4 24050011 */ li $a1, 17 -/* 0666C8 80065AC8 0C019675 */ jal D_800659D4 -/* 0666CC 80065ACC 03192021 */ addu $a0, $t8, $t9 -/* 0666D0 80065AD0 87AA002A */ lh $t2, 0x2a($sp) -/* 0666D4 80065AD4 8FA80020 */ lw $t0, 0x20($sp) -/* 0666D8 80065AD8 000A5880 */ sll $t3, $t2, 2 -/* 0666DC 80065ADC 016A5821 */ addu $t3, $t3, $t2 -/* 0666E0 80065AE0 000B5880 */ sll $t3, $t3, 2 -/* 0666E4 80065AE4 8D090034 */ lw $t1, 0x34($t0) -/* 0666E8 80065AE8 016A5823 */ subu $t3, $t3, $t2 -/* 0666EC 80065AEC 8FA60018 */ lw $a2, 0x18($sp) -/* 0666F0 80065AF0 000B5880 */ sll $t3, $t3, 2 -/* 0666F4 80065AF4 24050002 */ li $a1, 2 -/* 0666F8 80065AF8 0C019675 */ jal D_800659D4 -/* 0666FC 80065AFC 012B2021 */ addu $a0, $t1, $t3 -/* 066700 80065B00 87AC002A */ lh $t4, 0x2a($sp) -/* 066704 80065B04 8FAD0024 */ lw $t5, 0x24($sp) -/* 066708 80065B08 00000000 */ nop -/* 06670C 80065B0C A1AC00DC */ sb $t4, 0xdc($t5) -.L80065B10: -/* 066710 80065B10 8FBF0014 */ lw $ra, 0x14($sp) -/* 066714 80065B14 27BD0020 */ addiu $sp, $sp, 0x20 -/* 066718 80065B18 03E00008 */ jr $ra -/* 06671C 80065B1C 00000000 */ nop - -glabel func_80065B20 -/* 066720 80065B20 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 066724 80065B24 AFBF0014 */ sw $ra, 0x14($sp) -/* 066728 80065B28 AFA40020 */ sw $a0, 0x20($sp) -/* 06672C 80065B2C AFA50024 */ sw $a1, 0x24($sp) -/* 066730 80065B30 AFA60028 */ sw $a2, 0x28($sp) -/* 066734 80065B34 8CAF0008 */ lw $t7, 8($a1) -/* 066738 80065B38 00000000 */ nop -/* 06673C 80065B3C 11E0001F */ beqz $t7, .L80065BBC -/* 066740 80065B40 8FBF0014 */ lw $ra, 0x14($sp) -/* 066744 80065B44 0C01959A */ jal func_80065668 -/* 066748 80065B48 00000000 */ nop -/* 06674C 80065B4C 1040001A */ beqz $v0, .L80065BB8 -/* 066750 80065B50 240C000C */ li $t4, 12 -/* 066754 80065B54 8FA80024 */ lw $t0, 0x24($sp) -/* 066758 80065B58 8FB80020 */ lw $t8, 0x20($sp) -/* 06675C 80065B5C 8D090008 */ lw $t1, 8($t0) -/* 066760 80065B60 8F19001C */ lw $t9, 0x1c($t8) -/* 066764 80065B64 8D2A00D8 */ lw $t2, 0xd8($t1) -/* 066768 80065B68 A44C0008 */ sh $t4, 8($v0) -/* 06676C 80065B6C 032A5821 */ addu $t3, $t9, $t2 -/* 066770 80065B70 AC4B0004 */ sw $t3, 4($v0) -/* 066774 80065B74 93A4002B */ lbu $a0, 0x2b($sp) -/* 066778 80065B78 0C0196FB */ jal func_80065BEC -/* 06677C 80065B7C AFA2001C */ sw $v0, 0x1c($sp) -/* 066780 80065B80 8FA6001C */ lw $a2, 0x1c($sp) -/* 066784 80065B84 24050003 */ li $a1, 3 -/* 066788 80065B88 ACC2000C */ sw $v0, 0xc($a2) -/* 06678C 80065B8C ACC00000 */ sw $zero, ($a2) -/* 066790 80065B90 8FAD0024 */ lw $t5, 0x24($sp) -/* 066794 80065B94 00000000 */ nop -/* 066798 80065B98 8DAE0008 */ lw $t6, 8($t5) -/* 06679C 80065B9C 00000000 */ nop -/* 0667A0 80065BA0 8DC4000C */ lw $a0, 0xc($t6) -/* 0667A4 80065BA4 00000000 */ nop -/* 0667A8 80065BA8 8C990008 */ lw $t9, 8($a0) -/* 0667AC 80065BAC 00000000 */ nop -/* 0667B0 80065BB0 0320F809 */ jalr $t9 -/* 0667B4 80065BB4 00000000 */ nop -.L80065BB8: -/* 0667B8 80065BB8 8FBF0014 */ lw $ra, 0x14($sp) -.L80065BBC: -/* 0667BC 80065BBC 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0667C0 80065BC0 03E00008 */ jr $ra -/* 0667C4 80065BC4 00000000 */ nop - -/* 0667C8 80065BC8 00000000 */ nop -/* 0667CC 80065BCC 00000000 */ nop diff --git a/asm/unknown_071730.s b/asm/unknown_071730.s deleted file mode 100755 index 27346980..00000000 --- a/asm/unknown_071730.s +++ /dev/null @@ -1,1657 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_80070B30 -/* 071730 80070B30 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 071734 80070B34 3C048013 */ lui $a0, %hi(D_8012D3F0) # $a0, 0x8013 -/* 071738 80070B38 AFBF0014 */ sw $ra, 0x14($sp) -/* 07173C 80070B3C 240EFFFF */ li $t6, -1 -/* 071740 80070B40 3C018012 */ lui $at, %hi(D_801235C0) # $at, 0x8012 -/* 071744 80070B44 2484D3F0 */ addiu $a0, %lo(D_8012D3F0) # addiu $a0, $a0, -0x2c10 -/* 071748 80070B48 3C0F8040 */ lui $t7, 0x8040 -/* 07174C 80070B4C AC2E35C0 */ sw $t6, %lo(D_801235C0)($at) -/* 071750 80070B50 01E42823 */ subu $a1, $t7, $a0 -/* 071754 80070B54 0C01C2F9 */ jal func_80070BE4 -/* 071758 80070B58 24060640 */ li $a2, 1600 -/* 07175C 80070B5C 0C01C42C */ jal func_800710B0 -/* 071760 80070B60 24040002 */ li $a0, 2 -/* 071764 80070B64 8FBF0014 */ lw $ra, 0x14($sp) -/* 071768 80070B68 3C018012 */ lui $at, %hi(D_80123DC8) # $at, 0x8012 -/* 07176C 80070B6C AC203DC8 */ sw $zero, %lo(D_80123DC8)($at) -/* 071770 80070B70 03E00008 */ jr $ra -/* 071774 80070B74 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_80070B78 -/* 071778 80070B78 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 07177C 80070B7C AFBF0014 */ sw $ra, 0x14($sp) -/* 071780 80070B80 AFA40030 */ sw $a0, 0x30($sp) -/* 071784 80070B84 0C01BD44 */ jal func_8006F510 -/* 071788 80070B88 AFA50034 */ sw $a1, 0x34($sp) -/* 07178C 80070B8C 8FAF0034 */ lw $t7, 0x34($sp) -/* 071790 80070B90 8FAE0030 */ lw $t6, 0x30($sp) -/* 071794 80070B94 000FC080 */ sll $t8, $t7, 2 -/* 071798 80070B98 030FC021 */ addu $t8, $t8, $t7 -/* 07179C 80070B9C 0018C080 */ sll $t8, $t8, 2 -/* 0717A0 80070BA0 01D83821 */ addu $a3, $t6, $t8 -/* 0717A4 80070BA4 AFA20020 */ sw $v0, 0x20($sp) -/* 0717A8 80070BA8 00E02025 */ move $a0, $a3 -/* 0717AC 80070BAC AFA70018 */ sw $a3, 0x18($sp) -/* 0717B0 80070BB0 0C01C327 */ jal func_80070C9C -/* 0717B4 80070BB4 2405FFFF */ li $a1, -1 -/* 0717B8 80070BB8 8FA50018 */ lw $a1, 0x18($sp) -/* 0717BC 80070BBC 8FA60034 */ lw $a2, 0x34($sp) -/* 0717C0 80070BC0 0C01C2F9 */ jal func_80070BE4 -/* 0717C4 80070BC4 00402025 */ move $a0, $v0 -/* 0717C8 80070BC8 8FA40020 */ lw $a0, 0x20($sp) -/* 0717CC 80070BCC 0C01BD4F */ jal func_8006F53C -/* 0717D0 80070BD0 AFA2001C */ sw $v0, 0x1c($sp) -/* 0717D4 80070BD4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0717D8 80070BD8 8FA2001C */ lw $v0, 0x1c($sp) -/* 0717DC 80070BDC 03E00008 */ jr $ra -/* 0717E0 80070BE0 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_80070BE4 -/* 0717E4 80070BE4 3C098012 */ lui $t1, %hi(D_801235C0) # $t1, 0x8012 -/* 0717E8 80070BE8 252935C0 */ addiu $t1, %lo(D_801235C0) # addiu $t1, $t1, 0x35c0 -/* 0717EC 80070BEC 8D2E0000 */ lw $t6, ($t1) -/* 0717F0 80070BF0 3C198012 */ lui $t9, %hi(D_80123580) # $t9, 0x8012 -/* 0717F4 80070BF4 25CF0001 */ addiu $t7, $t6, 1 -/* 0717F8 80070BF8 000FC100 */ sll $t8, $t7, 4 -/* 0717FC 80070BFC 27393580 */ addiu $t9, %lo(D_80123580) # addiu $t9, $t9, 0x3580 -/* 071800 80070C00 03193821 */ addu $a3, $t8, $t9 -/* 071804 80070C04 AD2F0000 */ sw $t7, ($t1) -/* 071808 80070C08 ACE60000 */ sw $a2, ($a3) -/* 07180C 80070C0C ACE00004 */ sw $zero, 4($a3) -/* 071810 80070C10 ACE40008 */ sw $a0, 8($a3) -/* 071814 80070C14 ACE5000C */ sw $a1, 0xc($a3) -/* 071818 80070C18 00804025 */ move $t0, $a0 -/* 07181C 80070C1C 18C00007 */ blez $a2, .L80070C3C -/* 071820 80070C20 00001825 */ move $v1, $zero -.L80070C24: -/* 071824 80070C24 A503000E */ sh $v1, 0xe($t0) -/* 071828 80070C28 8CEA0000 */ lw $t2, ($a3) -/* 07182C 80070C2C 24630001 */ addiu $v1, $v1, 1 -/* 071830 80070C30 006A082A */ slt $at, $v1, $t2 -/* 071834 80070C34 1420FFFB */ bnez $at, .L80070C24 -/* 071838 80070C38 25080014 */ addiu $t0, $t0, 0x14 -.L80070C3C: -/* 07183C 80070C3C 00061880 */ sll $v1, $a2, 2 -/* 071840 80070C40 00661821 */ addu $v1, $v1, $a2 -/* 071844 80070C44 00031880 */ sll $v1, $v1, 2 -/* 071848 80070C48 00832021 */ addu $a0, $a0, $v1 -/* 07184C 80070C4C 8CE80008 */ lw $t0, 8($a3) -/* 071850 80070C50 308B000F */ andi $t3, $a0, 0xf -/* 071854 80070C54 11600006 */ beqz $t3, .L80070C70 -/* 071858 80070C58 00A37023 */ subu $t6, $a1, $v1 -/* 07185C 80070C5C 2401FFF0 */ li $at, -16 -/* 071860 80070C60 00816024 */ and $t4, $a0, $at -/* 071864 80070C64 258D0010 */ addiu $t5, $t4, 0x10 -/* 071868 80070C68 10000002 */ b .L80070C74 -/* 07186C 80070C6C AD0D0000 */ sw $t5, ($t0) -.L80070C70: -/* 071870 80070C70 AD040000 */ sw $a0, ($t0) -.L80070C74: -/* 071874 80070C74 2404FFFF */ li $a0, -1 -/* 071878 80070C78 AD0E0004 */ sw $t6, 4($t0) -/* 07187C 80070C7C A5000008 */ sh $zero, 8($t0) -/* 071880 80070C80 A504000A */ sh $a0, 0xa($t0) -/* 071884 80070C84 A504000C */ sh $a0, 0xc($t0) -/* 071888 80070C88 8CEF0004 */ lw $t7, 4($a3) -/* 07188C 80070C8C 8CE20008 */ lw $v0, 8($a3) -/* 071890 80070C90 25F80001 */ addiu $t8, $t7, 1 -/* 071894 80070C94 03E00008 */ jr $ra -/* 071898 80070C98 ACF80004 */ sw $t8, 4($a3) - -glabel func_80070C9C -/* 07189C 80070C9C 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0718A0 80070CA0 AFBF0014 */ sw $ra, 0x14($sp) -/* 0718A4 80070CA4 AFA40020 */ sw $a0, 0x20($sp) -/* 0718A8 80070CA8 14800008 */ bnez $a0, .L80070CCC -/* 0718AC 80070CAC AFA50024 */ sw $a1, 0x24($sp) -/* 0718B0 80070CB0 0C02DF44 */ jal func_800B7D10 -/* 0718B4 80070CB4 00000000 */ nop -/* 0718B8 80070CB8 8C440014 */ lw $a0, 0x14($v0) -/* 0718BC 80070CBC 8FA50020 */ lw $a1, 0x20($sp) -/* 0718C0 80070CC0 8FA60024 */ lw $a2, 0x24($sp) -/* 0718C4 80070CC4 0C02DD18 */ jal func_800B7460 -/* 0718C8 80070CC8 00000000 */ nop -.L80070CCC: -/* 0718CC 80070CCC 8FA50020 */ lw $a1, 0x20($sp) -/* 0718D0 80070CD0 8FA60024 */ lw $a2, 0x24($sp) -/* 0718D4 80070CD4 0C01C34F */ jal func_80070D3C -/* 0718D8 80070CD8 00002025 */ move $a0, $zero -/* 0718DC 80070CDC 14400008 */ bnez $v0, .L80070D00 -/* 0718E0 80070CE0 AFA2001C */ sw $v0, 0x1c($sp) -/* 0718E4 80070CE4 0C02DF44 */ jal func_800B7D10 -/* 0718E8 80070CE8 00000000 */ nop -/* 0718EC 80070CEC 8C440014 */ lw $a0, 0x14($v0) -/* 0718F0 80070CF0 8FA50020 */ lw $a1, 0x20($sp) -/* 0718F4 80070CF4 8FA60024 */ lw $a2, 0x24($sp) -/* 0718F8 80070CF8 0C02DD18 */ jal func_800B7460 -/* 0718FC 80070CFC 00000000 */ nop -.L80070D00: -/* 071900 80070D00 8FBF0014 */ lw $ra, 0x14($sp) -/* 071904 80070D04 8FA2001C */ lw $v0, 0x1c($sp) -/* 071908 80070D08 03E00008 */ jr $ra -/* 07190C 80070D0C 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_80070D10 -/* 071910 80070D10 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 071914 80070D14 00A03025 */ move $a2, $a1 -/* 071918 80070D18 00802825 */ move $a1, $a0 -/* 07191C 80070D1C AFBF0014 */ sw $ra, 0x14($sp) -/* 071920 80070D20 AFA40018 */ sw $a0, 0x18($sp) -/* 071924 80070D24 0C01C34F */ jal func_80070D3C -/* 071928 80070D28 00002025 */ move $a0, $zero -/* 07192C 80070D2C 8FBF0014 */ lw $ra, 0x14($sp) -/* 071930 80070D30 27BD0018 */ addiu $sp, $sp, 0x18 -/* 071934 80070D34 03E00008 */ jr $ra -/* 071938 80070D38 00000000 */ nop - -glabel func_80070D3C -/* 07193C 80070D3C 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 071940 80070D40 AFBF0024 */ sw $ra, 0x24($sp) -/* 071944 80070D44 AFB10020 */ sw $s1, 0x20($sp) -/* 071948 80070D48 00A08825 */ move $s1, $a1 -/* 07194C 80070D4C AFB0001C */ sw $s0, 0x1c($sp) -/* 071950 80070D50 AFA40040 */ sw $a0, 0x40($sp) -/* 071954 80070D54 0C01BD44 */ jal func_8006F510 -/* 071958 80070D58 AFA60048 */ sw $a2, 0x48($sp) -/* 07195C 80070D5C 8FAE0040 */ lw $t6, 0x40($sp) -/* 071960 80070D60 3C188012 */ lui $t8, %hi(D_80123580) # $t8, 0x8012 -/* 071964 80070D64 AFA20028 */ sw $v0, 0x28($sp) -/* 071968 80070D68 27183580 */ addiu $t8, %lo(D_80123580) # addiu $t8, $t8, 0x3580 -/* 07196C 80070D6C 000E7900 */ sll $t7, $t6, 4 -/* 071970 80070D70 01F81021 */ addu $v0, $t7, $t8 -/* 071974 80070D74 8C590004 */ lw $t9, 4($v0) -/* 071978 80070D78 8C4B0000 */ lw $t3, ($v0) -/* 07197C 80070D7C 272A0001 */ addiu $t2, $t9, 1 -/* 071980 80070D80 154B0006 */ bne $t2, $t3, .L80070D9C -/* 071984 80070D84 322C000F */ andi $t4, $s1, 0xf -/* 071988 80070D88 8FA40028 */ lw $a0, 0x28($sp) -/* 07198C 80070D8C 0C01BD4F */ jal func_8006F53C -/* 071990 80070D90 00000000 */ nop -/* 071994 80070D94 10000039 */ b .L80070E7C -/* 071998 80070D98 00001025 */ move $v0, $zero -.L80070D9C: -/* 07199C 80070D9C 11800004 */ beqz $t4, .L80070DB0 -/* 0719A0 80070DA0 2410FFFF */ li $s0, -1 -/* 0719A4 80070DA4 2401FFF0 */ li $at, -16 -/* 0719A8 80070DA8 02216824 */ and $t5, $s1, $at -/* 0719AC 80070DAC 25B10010 */ addiu $s1, $t5, 0x10 -.L80070DB0: -/* 0719B0 80070DB0 3C067FFF */ lui $a2, (0x7FFFFFFF >> 16) # lui $a2, 0x7fff -/* 0719B4 80070DB4 8C490008 */ lw $t1, 8($v0) -/* 0719B8 80070DB8 34C6FFFF */ ori $a2, (0x7FFFFFFF & 0xFFFF) # ori $a2, $a2, 0xffff -/* 0719BC 80070DBC 00002025 */ move $a0, $zero -/* 0719C0 80070DC0 24080014 */ li $t0, 20 -/* 0719C4 80070DC4 2407FFFF */ li $a3, -1 -.L80070DC8: -/* 0719C8 80070DC8 00880019 */ multu $a0, $t0 -/* 0719CC 80070DCC 00007012 */ mflo $t6 -/* 0719D0 80070DD0 01C91021 */ addu $v0, $t6, $t1 -/* 0719D4 80070DD4 844F0008 */ lh $t7, 8($v0) -/* 0719D8 80070DD8 00402825 */ move $a1, $v0 -/* 0719DC 80070DDC 15E0000A */ bnez $t7, .L80070E08 -/* 0719E0 80070DE0 00000000 */ nop -/* 0719E4 80070DE4 8C430004 */ lw $v1, 4($v0) -/* 0719E8 80070DE8 00000000 */ nop -/* 0719EC 80070DEC 0071082A */ slt $at, $v1, $s1 -/* 0719F0 80070DF0 14200005 */ bnez $at, .L80070E08 -/* 0719F4 80070DF4 0066082A */ slt $at, $v1, $a2 -/* 0719F8 80070DF8 10200003 */ beqz $at, .L80070E08 -/* 0719FC 80070DFC 00000000 */ nop -/* 071A00 80070E00 00603025 */ move $a2, $v1 -/* 071A04 80070E04 00808025 */ move $s0, $a0 -.L80070E08: -/* 071A08 80070E08 84A4000C */ lh $a0, 0xc($a1) -/* 071A0C 80070E0C 00000000 */ nop -/* 071A10 80070E10 1487FFED */ bne $a0, $a3, .L80070DC8 -/* 071A14 80070E14 00000000 */ nop -/* 071A18 80070E18 12070014 */ beq $s0, $a3, .L80070E6C -/* 071A1C 80070E1C 02002825 */ move $a1, $s0 -/* 071A20 80070E20 8FB80048 */ lw $t8, 0x48($sp) -/* 071A24 80070E24 8FA40040 */ lw $a0, 0x40($sp) -/* 071A28 80070E28 02203025 */ move $a2, $s1 -/* 071A2C 80070E2C 24070001 */ li $a3, 1 -/* 071A30 80070E30 AFA00010 */ sw $zero, 0x10($sp) -/* 071A34 80070E34 AFA9002C */ sw $t1, 0x2c($sp) -/* 071A38 80070E38 0C01C5E3 */ jal func_8007178C -/* 071A3C 80070E3C AFB80014 */ sw $t8, 0x14($sp) -/* 071A40 80070E40 8FA40028 */ lw $a0, 0x28($sp) -/* 071A44 80070E44 0C01BD4F */ jal func_8006F53C -/* 071A48 80070E48 00000000 */ nop -/* 071A4C 80070E4C 24080014 */ li $t0, 20 -/* 071A50 80070E50 02080019 */ multu $s0, $t0 -/* 071A54 80070E54 8FA9002C */ lw $t1, 0x2c($sp) -/* 071A58 80070E58 0000C812 */ mflo $t9 -/* 071A5C 80070E5C 03295021 */ addu $t2, $t9, $t1 -/* 071A60 80070E60 8D420000 */ lw $v0, ($t2) -/* 071A64 80070E64 10000006 */ b .L80070E80 -/* 071A68 80070E68 8FBF0024 */ lw $ra, 0x24($sp) -.L80070E6C: -/* 071A6C 80070E6C 8FA40028 */ lw $a0, 0x28($sp) -/* 071A70 80070E70 0C01BD4F */ jal func_8006F53C -/* 071A74 80070E74 00000000 */ nop -/* 071A78 80070E78 00001025 */ move $v0, $zero -.L80070E7C: -/* 071A7C 80070E7C 8FBF0024 */ lw $ra, 0x24($sp) -.L80070E80: -/* 071A80 80070E80 8FB0001C */ lw $s0, 0x1c($sp) -/* 071A84 80070E84 8FB10020 */ lw $s1, 0x20($sp) -/* 071A88 80070E88 03E00008 */ jr $ra -/* 071A8C 80070E8C 27BD0040 */ addiu $sp, $sp, 0x40 - -glabel func_80070E90 -/* 071A90 80070E90 3C078012 */ lui $a3, %hi(D_801235C0) # $a3, 0x8012 -/* 071A94 80070E94 8CE735C0 */ lw $a3, %lo(D_801235C0)($a3) -/* 071A98 80070E98 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 071A9C 80070E9C 10E00011 */ beqz $a3, .L80070EE4 -/* 071AA0 80070EA0 AFBF0014 */ sw $ra, 0x14($sp) -/* 071AA4 80070EA4 3C0F8012 */ lui $t7, %hi(D_80123580) # $t7, 0x8012 -/* 071AA8 80070EA8 25EF3580 */ addiu $t7, %lo(D_80123580) # addiu $t7, $t7, 0x3580 -/* 071AAC 80070EAC 00077100 */ sll $t6, $a3, 4 -/* 071AB0 80070EB0 01CF1021 */ addu $v0, $t6, $t7 -.L80070EB4: -/* 071AB4 80070EB4 8C580008 */ lw $t8, 8($v0) -/* 071AB8 80070EB8 00000000 */ nop -/* 071ABC 80070EBC 14980006 */ bne $a0, $t8, .L80070ED8 -/* 071AC0 80070EC0 00000000 */ nop -/* 071AC4 80070EC4 00E02025 */ move $a0, $a3 -/* 071AC8 80070EC8 0C01C34F */ jal func_80070D3C -/* 071ACC 80070ECC 00003025 */ move $a2, $zero -/* 071AD0 80070ED0 10000006 */ b .L80070EEC -/* 071AD4 80070ED4 8FBF0014 */ lw $ra, 0x14($sp) -.L80070ED8: -/* 071AD8 80070ED8 24E7FFFF */ addiu $a3, $a3, -1 -/* 071ADC 80070EDC 14E0FFF5 */ bnez $a3, .L80070EB4 -/* 071AE0 80070EE0 2442FFF0 */ addiu $v0, $v0, -0x10 -.L80070EE4: -/* 071AE4 80070EE4 00001025 */ move $v0, $zero -/* 071AE8 80070EE8 8FBF0014 */ lw $ra, 0x14($sp) -.L80070EEC: -/* 071AEC 80070EEC 27BD0018 */ addiu $sp, $sp, 0x18 -/* 071AF0 80070EF0 03E00008 */ jr $ra -/* 071AF4 80070EF4 00000000 */ nop - -glabel func_80070EF8 -/* 071AF8 80070EF8 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 071AFC 80070EFC AFBF002C */ sw $ra, 0x2c($sp) -/* 071B00 80070F00 AFB20028 */ sw $s2, 0x28($sp) -/* 071B04 80070F04 AFB10024 */ sw $s1, 0x24($sp) -/* 071B08 80070F08 00A08825 */ move $s1, $a1 -/* 071B0C 80070F0C 00809025 */ move $s2, $a0 -/* 071B10 80070F10 AFB00020 */ sw $s0, 0x20($sp) -/* 071B14 80070F14 0C01BD44 */ jal func_8006F510 -/* 071B18 80070F18 AFA60050 */ sw $a2, 0x50($sp) -/* 071B1C 80070F1C AFA20038 */ sw $v0, 0x38($sp) -/* 071B20 80070F20 3C028012 */ lui $v0, %hi(D_80123580) # $v0, 0x8012 -/* 071B24 80070F24 24423580 */ addiu $v0, %lo(D_80123580) # addiu $v0, $v0, 0x3580 -/* 071B28 80070F28 8C4E0004 */ lw $t6, 4($v0) -/* 071B2C 80070F2C 8C580000 */ lw $t8, ($v0) -/* 071B30 80070F30 25CF0001 */ addiu $t7, $t6, 1 -/* 071B34 80070F34 15F80006 */ bne $t7, $t8, .L80070F50 -/* 071B38 80070F38 3259000F */ andi $t9, $s2, 0xf -/* 071B3C 80070F3C 8FA40038 */ lw $a0, 0x38($sp) -/* 071B40 80070F40 0C01BD4F */ jal func_8006F53C -/* 071B44 80070F44 00000000 */ nop -/* 071B48 80070F48 10000053 */ b .L80071098 -/* 071B4C 80070F4C 00001025 */ move $v0, $zero -.L80070F50: -/* 071B50 80070F50 13200004 */ beqz $t9, .L80070F64 -/* 071B54 80070F54 00008025 */ move $s0, $zero -/* 071B58 80070F58 2401FFF0 */ li $at, -16 -/* 071B5C 80070F5C 02415024 */ and $t2, $s2, $at -/* 071B60 80070F60 25520010 */ addiu $s2, $t2, 0x10 -.L80070F64: -/* 071B64 80070F64 8C490008 */ lw $t1, 8($v0) -/* 071B68 80070F68 24080014 */ li $t0, 20 -/* 071B6C 80070F6C 2406FFFF */ li $a2, -1 -.L80070F70: -/* 071B70 80070F70 02080019 */ multu $s0, $t0 -/* 071B74 80070F74 00005812 */ mflo $t3 -/* 071B78 80070F78 01691821 */ addu $v1, $t3, $t1 -/* 071B7C 80070F7C 846C0008 */ lh $t4, 8($v1) -/* 071B80 80070F80 00602825 */ move $a1, $v1 -/* 071B84 80070F84 1580003C */ bnez $t4, .L80071078 -/* 071B88 80070F88 00000000 */ nop -/* 071B8C 80070F8C 8C640000 */ lw $a0, ($v1) -/* 071B90 80070F90 00000000 */ nop -/* 071B94 80070F94 0224082B */ sltu $at, $s1, $a0 -/* 071B98 80070F98 14200037 */ bnez $at, .L80071078 -/* 071B9C 80070F9C 00801025 */ move $v0, $a0 -/* 071BA0 80070FA0 8C6D0004 */ lw $t5, 4($v1) -/* 071BA4 80070FA4 02327821 */ addu $t7, $s1, $s2 -/* 071BA8 80070FA8 008D7021 */ addu $t6, $a0, $t5 -/* 071BAC 80070FAC 01CF082B */ sltu $at, $t6, $t7 -/* 071BB0 80070FB0 14200031 */ bnez $at, .L80071078 -/* 071BB4 80070FB4 00000000 */ nop -/* 071BB8 80070FB8 16240012 */ bne $s1, $a0, .L80071004 -/* 071BBC 80070FBC 02002825 */ move $a1, $s0 -/* 071BC0 80070FC0 8FB80050 */ lw $t8, 0x50($sp) -/* 071BC4 80070FC4 00002025 */ move $a0, $zero -/* 071BC8 80070FC8 02002825 */ move $a1, $s0 -/* 071BCC 80070FCC 02403025 */ move $a2, $s2 -/* 071BD0 80070FD0 24070001 */ li $a3, 1 -/* 071BD4 80070FD4 AFA00010 */ sw $zero, 0x10($sp) -/* 071BD8 80070FD8 AFA30034 */ sw $v1, 0x34($sp) -/* 071BDC 80070FDC 0C01C5E3 */ jal func_8007178C -/* 071BE0 80070FE0 AFB80014 */ sw $t8, 0x14($sp) -/* 071BE4 80070FE4 8FA40038 */ lw $a0, 0x38($sp) -/* 071BE8 80070FE8 0C01BD4F */ jal func_8006F53C -/* 071BEC 80070FEC 00000000 */ nop -/* 071BF0 80070FF0 8FA30034 */ lw $v1, 0x34($sp) -/* 071BF4 80070FF4 00000000 */ nop -/* 071BF8 80070FF8 8C620000 */ lw $v0, ($v1) -/* 071BFC 80070FFC 10000027 */ b .L8007109C -/* 071C00 80071000 8FBF002C */ lw $ra, 0x2c($sp) -.L80071004: -/* 071C04 80071004 8FAA0050 */ lw $t2, 0x50($sp) -/* 071C08 80071008 24190001 */ li $t9, 1 -/* 071C0C 8007100C AFB90010 */ sw $t9, 0x10($sp) -/* 071C10 80071010 00002025 */ move $a0, $zero -/* 071C14 80071014 02223023 */ subu $a2, $s1, $v0 -/* 071C18 80071018 00003825 */ move $a3, $zero -/* 071C1C 8007101C AFA9003C */ sw $t1, 0x3c($sp) -/* 071C20 80071020 0C01C5E3 */ jal func_8007178C -/* 071C24 80071024 AFAA0014 */ sw $t2, 0x14($sp) -/* 071C28 80071028 8FAB0050 */ lw $t3, 0x50($sp) -/* 071C2C 8007102C 00408025 */ move $s0, $v0 -/* 071C30 80071030 00002025 */ move $a0, $zero -/* 071C34 80071034 00402825 */ move $a1, $v0 -/* 071C38 80071038 02403025 */ move $a2, $s2 -/* 071C3C 8007103C 24070001 */ li $a3, 1 -/* 071C40 80071040 AFA00010 */ sw $zero, 0x10($sp) -/* 071C44 80071044 0C01C5E3 */ jal func_8007178C -/* 071C48 80071048 AFAB0014 */ sw $t3, 0x14($sp) -/* 071C4C 8007104C 8FA40038 */ lw $a0, 0x38($sp) -/* 071C50 80071050 0C01BD4F */ jal func_8006F53C -/* 071C54 80071054 00000000 */ nop -/* 071C58 80071058 24080014 */ li $t0, 20 -/* 071C5C 8007105C 02080019 */ multu $s0, $t0 -/* 071C60 80071060 8FA9003C */ lw $t1, 0x3c($sp) -/* 071C64 80071064 00006012 */ mflo $t4 -/* 071C68 80071068 01896821 */ addu $t5, $t4, $t1 -/* 071C6C 8007106C 8DA20000 */ lw $v0, ($t5) -/* 071C70 80071070 1000000A */ b .L8007109C -/* 071C74 80071074 8FBF002C */ lw $ra, 0x2c($sp) -.L80071078: -/* 071C78 80071078 84B0000C */ lh $s0, 0xc($a1) -/* 071C7C 8007107C 00000000 */ nop -/* 071C80 80071080 1606FFBB */ bne $s0, $a2, .L80070F70 -/* 071C84 80071084 00000000 */ nop -/* 071C88 80071088 8FA40038 */ lw $a0, 0x38($sp) -/* 071C8C 8007108C 0C01BD4F */ jal func_8006F53C -/* 071C90 80071090 00000000 */ nop -/* 071C94 80071094 00001025 */ move $v0, $zero -.L80071098: -/* 071C98 80071098 8FBF002C */ lw $ra, 0x2c($sp) -.L8007109C: -/* 071C9C 8007109C 8FB00020 */ lw $s0, 0x20($sp) -/* 071CA0 800710A0 8FB10024 */ lw $s1, 0x24($sp) -/* 071CA4 800710A4 8FB20028 */ lw $s2, 0x28($sp) -/* 071CA8 800710A8 03E00008 */ jr $ra -/* 071CAC 800710AC 27BD0048 */ addiu $sp, $sp, 0x48 - -glabel func_800710B0 -/* 071CB0 800710B0 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 071CB4 800710B4 AFBF0024 */ sw $ra, 0x24($sp) -/* 071CB8 800710B8 AFB00018 */ sw $s0, 0x18($sp) -/* 071CBC 800710BC 00808025 */ move $s0, $a0 -/* 071CC0 800710C0 AFB20020 */ sw $s2, 0x20($sp) -/* 071CC4 800710C4 0C01BD44 */ jal func_8006F510 -/* 071CC8 800710C8 AFB1001C */ sw $s1, 0x1c($sp) -/* 071CCC 800710CC 3C018012 */ lui $at, %hi(D_80123DCC) # $at, 0x8012 -/* 071CD0 800710D0 AFA2002C */ sw $v0, 0x2c($sp) -/* 071CD4 800710D4 16000011 */ bnez $s0, .L8007111C -/* 071CD8 800710D8 AC303DCC */ sw $s0, %lo(D_80123DCC)($at) -/* 071CDC 800710DC 3C118012 */ lui $s1, %hi(D_80123DC8) # $s1, 0x8012 -/* 071CE0 800710E0 26313DC8 */ addiu $s1, %lo(D_80123DC8) # addiu $s1, $s1, 0x3dc8 -/* 071CE4 800710E4 8E300000 */ lw $s0, ($s1) -/* 071CE8 800710E8 3C128012 */ lui $s2, %hi(D_801235C8) # $s2, 0x8012 -/* 071CEC 800710EC 1A00000B */ blez $s0, .L8007111C -/* 071CF0 800710F0 265235C8 */ addiu $s2, %lo(D_801235C8) # addiu $s2, $s2, 0x35c8 -/* 071CF4 800710F4 2602FFFF */ addiu $v0, $s0, -1 -.L800710F8: -/* 071CF8 800710F8 000270C0 */ sll $t6, $v0, 3 -/* 071CFC 800710FC 024E7821 */ addu $t7, $s2, $t6 -/* 071D00 80071100 8DE40000 */ lw $a0, ($t7) -/* 071D04 80071104 0C01C49E */ jal func_80071278 -/* 071D08 80071108 AE220000 */ sw $v0, ($s1) -/* 071D0C 8007110C 8E300000 */ lw $s0, ($s1) -/* 071D10 80071110 00000000 */ nop -/* 071D14 80071114 1E00FFF8 */ bgtz $s0, .L800710F8 -/* 071D18 80071118 2602FFFF */ addiu $v0, $s0, -1 -.L8007111C: -/* 071D1C 8007111C 8FA4002C */ lw $a0, 0x2c($sp) -/* 071D20 80071120 0C01BD4F */ jal func_8006F53C -/* 071D24 80071124 00000000 */ nop -/* 071D28 80071128 8FBF0024 */ lw $ra, 0x24($sp) -/* 071D2C 8007112C 8FB00018 */ lw $s0, 0x18($sp) -/* 071D30 80071130 8FB1001C */ lw $s1, 0x1c($sp) -/* 071D34 80071134 8FB20020 */ lw $s2, 0x20($sp) -/* 071D38 80071138 03E00008 */ jr $ra -/* 071D3C 8007113C 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_80071140 -/* 071D40 80071140 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 071D44 80071144 AFBF0014 */ sw $ra, 0x14($sp) -/* 071D48 80071148 0C01BD44 */ jal func_8006F510 -/* 071D4C 8007114C AFA40020 */ sw $a0, 0x20($sp) -/* 071D50 80071150 3C0E8012 */ lui $t6, %hi(D_80123DCC) # $t6, 0x8012 -/* 071D54 80071154 8DCE3DCC */ lw $t6, %lo(D_80123DCC)($t6) -/* 071D58 80071158 8FA40020 */ lw $a0, 0x20($sp) -/* 071D5C 8007115C 15C00005 */ bnez $t6, .L80071174 -/* 071D60 80071160 AFA2001C */ sw $v0, 0x1c($sp) -/* 071D64 80071164 0C01C49E */ jal func_80071278 -/* 071D68 80071168 00000000 */ nop -/* 071D6C 8007116C 10000004 */ b .L80071180 -/* 071D70 80071170 8FA4001C */ lw $a0, 0x1c($sp) -.L80071174: -/* 071D74 80071174 0C01C510 */ jal func_80071440 -/* 071D78 80071178 00000000 */ nop -/* 071D7C 8007117C 8FA4001C */ lw $a0, 0x1c($sp) -.L80071180: -/* 071D80 80071180 0C01BD4F */ jal func_8006F53C -/* 071D84 80071184 00000000 */ nop -/* 071D88 80071188 8FBF0014 */ lw $ra, 0x14($sp) -/* 071D8C 8007118C 27BD0020 */ addiu $sp, $sp, 0x20 -/* 071D90 80071190 03E00008 */ jr $ra -/* 071D94 80071194 00000000 */ nop - -glabel func_80071198 -/* 071D98 80071198 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 071D9C 8007119C AFBF0024 */ sw $ra, 0x24($sp) -/* 071DA0 800711A0 AFB20020 */ sw $s2, 0x20($sp) -/* 071DA4 800711A4 AFB1001C */ sw $s1, 0x1c($sp) -/* 071DA8 800711A8 0C01BD44 */ jal func_8006F510 -/* 071DAC 800711AC AFB00018 */ sw $s0, 0x18($sp) -/* 071DB0 800711B0 3C118012 */ lui $s1, %hi(D_80123DC8) # $s1, 0x8012 -/* 071DB4 800711B4 26313DC8 */ addiu $s1, %lo(D_80123DC8) # addiu $s1, $s1, 0x3dc8 -/* 071DB8 800711B8 8E230000 */ lw $v1, ($s1) -/* 071DBC 800711BC AFA20028 */ sw $v0, 0x28($sp) -/* 071DC0 800711C0 18600024 */ blez $v1, .L80071254 -/* 071DC4 800711C4 3C108012 */ lui $s0, %hi(D_801235C8) # $s0, 0x8012 -/* 071DC8 800711C8 3C128012 */ lui $s2, %hi(D_801235C8) # $s2, 0x8012 -/* 071DCC 800711CC 265235C8 */ addiu $s2, %lo(D_801235C8) # addiu $s2, $s2, 0x35c8 -/* 071DD0 800711D0 261035C8 */ addiu $s0, %lo(D_801235C8) # addiu $s0, $s0, 0x35c8 -.L800711D4: -/* 071DD4 800711D4 920E0004 */ lbu $t6, 4($s0) -/* 071DD8 800711D8 00000000 */ nop -/* 071DDC 800711DC 25CFFFFF */ addiu $t7, $t6, -1 -/* 071DE0 800711E0 31F800FF */ andi $t8, $t7, 0xff -/* 071DE4 800711E4 17000013 */ bnez $t8, .L80071234 -/* 071DE8 800711E8 A20F0004 */ sb $t7, 4($s0) -/* 071DEC 800711EC 8E040000 */ lw $a0, ($s0) -/* 071DF0 800711F0 0C01C49E */ jal func_80071278 -/* 071DF4 800711F4 00000000 */ nop -/* 071DF8 800711F8 8E230000 */ lw $v1, ($s1) -/* 071DFC 800711FC 3C0C8012 */ lui $t4, %hi(D_801235C8) # $t4, 0x8012 -/* 071E00 80071200 0003C8C0 */ sll $t9, $v1, 3 -/* 071E04 80071204 02591021 */ addu $v0, $s2, $t9 -/* 071E08 80071208 8C48FFF8 */ lw $t0, -8($v0) -/* 071E0C 8007120C 246AFFFF */ addiu $t2, $v1, -1 -/* 071E10 80071210 AE080000 */ sw $t0, ($s0) -/* 071E14 80071214 9049FFFC */ lbu $t1, -4($v0) -/* 071E18 80071218 000A58C0 */ sll $t3, $t2, 3 -/* 071E1C 8007121C 258C35C8 */ addiu $t4, %lo(D_801235C8) # addiu $t4, $t4, 0x35c8 -/* 071E20 80071220 016C2021 */ addu $a0, $t3, $t4 -/* 071E24 80071224 AE2A0000 */ sw $t2, ($s1) -/* 071E28 80071228 01401825 */ move $v1, $t2 -/* 071E2C 8007122C 10000006 */ b .L80071248 -/* 071E30 80071230 A2090004 */ sb $t1, 4($s0) -.L80071234: -/* 071E34 80071234 3C0E8012 */ lui $t6, %hi(D_801235C8) # $t6, 0x8012 -/* 071E38 80071238 25CE35C8 */ addiu $t6, %lo(D_801235C8) # addiu $t6, $t6, 0x35c8 -/* 071E3C 8007123C 000368C0 */ sll $t5, $v1, 3 -/* 071E40 80071240 01AE2021 */ addu $a0, $t5, $t6 -/* 071E44 80071244 26100008 */ addiu $s0, $s0, 8 -.L80071248: -/* 071E48 80071248 0204082B */ sltu $at, $s0, $a0 -/* 071E4C 8007124C 1420FFE1 */ bnez $at, .L800711D4 -/* 071E50 80071250 00000000 */ nop -.L80071254: -/* 071E54 80071254 8FA40028 */ lw $a0, 0x28($sp) -/* 071E58 80071258 0C01BD4F */ jal func_8006F53C -/* 071E5C 8007125C 00000000 */ nop -/* 071E60 80071260 8FBF0024 */ lw $ra, 0x24($sp) -/* 071E64 80071264 8FB00018 */ lw $s0, 0x18($sp) -/* 071E68 80071268 8FB1001C */ lw $s1, 0x1c($sp) -/* 071E6C 8007126C 8FB20020 */ lw $s2, 0x20($sp) -/* 071E70 80071270 03E00008 */ jr $ra -/* 071E74 80071274 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_80071278 -/* 071E78 80071278 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 071E7C 8007127C AFBF0014 */ sw $ra, 0x14($sp) -/* 071E80 80071280 0C01C57B */ jal func_800715EC -/* 071E84 80071284 AFA40020 */ sw $a0, 0x20($sp) -/* 071E88 80071288 00027100 */ sll $t6, $v0, 4 -/* 071E8C 8007128C 3C038012 */ lui $v1, 0x8012 -/* 071E90 80071290 006E1821 */ addu $v1, $v1, $t6 -/* 071E94 80071294 8FA40020 */ lw $a0, 0x20($sp) -/* 071E98 80071298 8C633588 */ lw $v1, 0x3588($v1) -/* 071E9C 8007129C AFA20018 */ sw $v0, 0x18($sp) -/* 071EA0 800712A0 00002825 */ move $a1, $zero -/* 071EA4 800712A4 2407FFFF */ li $a3, -1 -/* 071EA8 800712A8 24060014 */ li $a2, 20 -.L800712AC: -/* 071EAC 800712AC 00A60019 */ multu $a1, $a2 -/* 071EB0 800712B0 00007812 */ mflo $t7 -/* 071EB4 800712B4 01E31021 */ addu $v0, $t7, $v1 -/* 071EB8 800712B8 8C580000 */ lw $t8, ($v0) -/* 071EBC 800712BC 00000000 */ nop -/* 071EC0 800712C0 1498000C */ bne $a0, $t8, .L800712F4 -/* 071EC4 800712C4 00000000 */ nop -/* 071EC8 800712C8 84430008 */ lh $v1, 8($v0) -/* 071ECC 800712CC 24010001 */ li $at, 1 -/* 071ED0 800712D0 10610003 */ beq $v1, $at, .L800712E0 -/* 071ED4 800712D4 24010004 */ li $at, 4 -/* 071ED8 800712D8 1461000B */ bne $v1, $at, .L80071308 -/* 071EDC 800712DC 8FBF0014 */ lw $ra, 0x14($sp) -.L800712E0: -/* 071EE0 800712E0 8FA40018 */ lw $a0, 0x18($sp) -/* 071EE4 800712E4 0C01C593 */ jal func_8007164C -/* 071EE8 800712E8 00000000 */ nop -/* 071EEC 800712EC 10000006 */ b .L80071308 -/* 071EF0 800712F0 8FBF0014 */ lw $ra, 0x14($sp) -.L800712F4: -/* 071EF4 800712F4 8445000C */ lh $a1, 0xc($v0) -/* 071EF8 800712F8 00000000 */ nop -/* 071EFC 800712FC 14A7FFEB */ bne $a1, $a3, .L800712AC -/* 071F00 80071300 00000000 */ nop -/* 071F04 80071304 8FBF0014 */ lw $ra, 0x14($sp) -.L80071308: -/* 071F08 80071308 27BD0020 */ addiu $sp, $sp, 0x20 -/* 071F0C 8007130C 03E00008 */ jr $ra -/* 071F10 80071310 00000000 */ nop - -/* 071F14 80071314 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 071F18 80071318 AFBF003C */ sw $ra, 0x3c($sp) -/* 071F1C 8007131C AFBE0038 */ sw $fp, 0x38($sp) -/* 071F20 80071320 AFB70034 */ sw $s7, 0x34($sp) -/* 071F24 80071324 AFB60030 */ sw $s6, 0x30($sp) -/* 071F28 80071328 AFB5002C */ sw $s5, 0x2c($sp) -/* 071F2C 8007132C AFB40028 */ sw $s4, 0x28($sp) -/* 071F30 80071330 AFB30024 */ sw $s3, 0x24($sp) -/* 071F34 80071334 AFB20020 */ sw $s2, 0x20($sp) -/* 071F38 80071338 AFB1001C */ sw $s1, 0x1c($sp) -/* 071F3C 8007133C 0C01BD44 */ jal func_8006F510 -/* 071F40 80071340 AFB00018 */ sw $s0, 0x18($sp) -/* 071F44 80071344 3C128012 */ lui $s2, %hi(D_801235C0) # $s2, 0x8012 -/* 071F48 80071348 8E5235C0 */ lw $s2, %lo(D_801235C0)($s2) -/* 071F4C 8007134C 2416FFFF */ li $s6, -1 -/* 071F50 80071350 1256002C */ beq $s2, $s6, .L80071404 -/* 071F54 80071354 AFA20040 */ sw $v0, 0x40($sp) -/* 071F58 80071358 3C0F8012 */ lui $t7, %hi(D_80123580) # $t7, 0x8012 -/* 071F5C 8007135C 25EF3580 */ addiu $t7, %lo(D_80123580) # addiu $t7, $t7, 0x3580 -/* 071F60 80071360 00127100 */ sll $t6, $s2, 4 -/* 071F64 80071364 01CFA821 */ addu $s5, $t6, $t7 -/* 071F68 80071368 241E0004 */ li $fp, 4 -/* 071F6C 8007136C 24170014 */ li $s7, 20 -/* 071F70 80071370 24130001 */ li $s3, 1 -.L80071374: -/* 071F74 80071374 8EB40008 */ lw $s4, 8($s5) -/* 071F78 80071378 00008025 */ move $s0, $zero -.L8007137C: -/* 071F7C 8007137C 02170019 */ multu $s0, $s7 -/* 071F80 80071380 02402025 */ move $a0, $s2 -/* 071F84 80071384 0000C012 */ mflo $t8 -/* 071F88 80071388 03148821 */ addu $s1, $t8, $s4 -/* 071F8C 8007138C 86220008 */ lh $v0, 8($s1) -/* 071F90 80071390 00000000 */ nop -/* 071F94 80071394 16620005 */ bne $s3, $v0, .L800713AC -/* 071F98 80071398 00000000 */ nop -/* 071F9C 8007139C 0C01C593 */ jal func_8007164C -/* 071FA0 800713A0 02002825 */ move $a1, $s0 -/* 071FA4 800713A4 86220008 */ lh $v0, 8($s1) -/* 071FA8 800713A8 00000000 */ nop -.L800713AC: -/* 071FAC 800713AC 17C2000E */ bne $fp, $v0, .L800713E8 -/* 071FB0 800713B0 02402025 */ move $a0, $s2 -/* 071FB4 800713B4 8EB90004 */ lw $t9, 4($s5) -/* 071FB8 800713B8 00000000 */ nop -/* 071FBC 800713BC 16790005 */ bne $s3, $t9, .L800713D4 -/* 071FC0 800713C0 00000000 */ nop -/* 071FC4 800713C4 0C01C593 */ jal func_8007164C -/* 071FC8 800713C8 02002825 */ move $a1, $s0 -/* 071FCC 800713CC 10000007 */ b .L800713EC -/* 071FD0 800713D0 8630000C */ lh $s0, 0xc($s1) -.L800713D4: -/* 071FD4 800713D4 8FA40040 */ lw $a0, 0x40($sp) -/* 071FD8 800713D8 0C01BD4F */ jal func_8006F53C -/* 071FDC 800713DC 00000000 */ nop -/* 071FE0 800713E0 1000000C */ b .L80071414 -/* 071FE4 800713E4 8FBF003C */ lw $ra, 0x3c($sp) -.L800713E8: -/* 071FE8 800713E8 8630000C */ lh $s0, 0xc($s1) -.L800713EC: -/* 071FEC 800713EC 00000000 */ nop -/* 071FF0 800713F0 1616FFE2 */ bne $s0, $s6, .L8007137C -/* 071FF4 800713F4 00000000 */ nop -/* 071FF8 800713F8 2652FFFF */ addiu $s2, $s2, -1 -/* 071FFC 800713FC 1656FFDD */ bne $s2, $s6, .L80071374 -/* 072000 80071400 26B5FFF0 */ addiu $s5, $s5, -0x10 -.L80071404: -/* 072004 80071404 8FA40040 */ lw $a0, 0x40($sp) -/* 072008 80071408 0C01BD4F */ jal func_8006F53C -/* 07200C 8007140C 00000000 */ nop -/* 072010 80071410 8FBF003C */ lw $ra, 0x3c($sp) -.L80071414: -/* 072014 80071414 8FB00018 */ lw $s0, 0x18($sp) -/* 072018 80071418 8FB1001C */ lw $s1, 0x1c($sp) -/* 07201C 8007141C 8FB20020 */ lw $s2, 0x20($sp) -/* 072020 80071420 8FB30024 */ lw $s3, 0x24($sp) -/* 072024 80071424 8FB40028 */ lw $s4, 0x28($sp) -/* 072028 80071428 8FB5002C */ lw $s5, 0x2c($sp) -/* 07202C 8007142C 8FB60030 */ lw $s6, 0x30($sp) -/* 072030 80071430 8FB70034 */ lw $s7, 0x34($sp) -/* 072034 80071434 8FBE0038 */ lw $fp, 0x38($sp) -/* 072038 80071438 03E00008 */ jr $ra -/* 07203C 8007143C 27BD0050 */ addiu $sp, $sp, 0x50 - -glabel func_80071440 -/* 072040 80071440 3C058012 */ lui $a1, %hi(D_80123DC8) # $a1, 0x8012 -/* 072044 80071444 24A53DC8 */ addiu $a1, %lo(D_80123DC8) # addiu $a1, $a1, 0x3dc8 -/* 072048 80071448 8CA20000 */ lw $v0, ($a1) -/* 07204C 8007144C 3C0F8012 */ lui $t7, %hi(D_801235C8) # $t7, 0x8012 -/* 072050 80071450 25EF35C8 */ addiu $t7, %lo(D_801235C8) # addiu $t7, $t7, 0x35c8 -/* 072054 80071454 000270C0 */ sll $t6, $v0, 3 -/* 072058 80071458 01CF1821 */ addu $v1, $t6, $t7 -/* 07205C 8007145C AC640000 */ sw $a0, ($v1) -/* 072060 80071460 3C188012 */ lui $t8, %hi(D_80123DCC) # $t8, 0x8012 -/* 072064 80071464 8F183DCC */ lw $t8, %lo(D_80123DCC)($t8) -/* 072068 80071468 24590001 */ addiu $t9, $v0, 1 -/* 07206C 8007146C ACB90000 */ sw $t9, ($a1) -/* 072070 80071470 03E00008 */ jr $ra -/* 072074 80071474 A0780004 */ sb $t8, 4($v1) - -glabel func_80071478 -/* 072078 80071478 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 07207C 8007147C AFBF001C */ sw $ra, 0x1c($sp) -/* 072080 80071480 AFB00018 */ sw $s0, 0x18($sp) -/* 072084 80071484 0C01BD44 */ jal func_8006F510 -/* 072088 80071488 00808025 */ move $s0, $a0 -/* 07208C 8007148C AFA20020 */ sw $v0, 0x20($sp) -/* 072090 80071490 0C01C57B */ jal func_800715EC -/* 072094 80071494 02002025 */ move $a0, $s0 -/* 072098 80071498 00027100 */ sll $t6, $v0, 4 -/* 07209C 8007149C 3C048012 */ lui $a0, 0x8012 -/* 0720A0 800714A0 008E2021 */ addu $a0, $a0, $t6 -/* 0720A4 800714A4 8C843588 */ lw $a0, 0x3588($a0) -/* 0720A8 800714A8 00001825 */ move $v1, $zero -/* 0720AC 800714AC 2409FFFF */ li $t1, -1 -/* 0720B0 800714B0 24080004 */ li $t0, 4 -/* 0720B4 800714B4 24070001 */ li $a3, 1 -/* 0720B8 800714B8 24060014 */ li $a2, 20 -.L800714BC: -/* 0720BC 800714BC 00660019 */ multu $v1, $a2 -/* 0720C0 800714C0 00007812 */ mflo $t7 -/* 0720C4 800714C4 01E42821 */ addu $a1, $t7, $a0 -/* 0720C8 800714C8 8CB80000 */ lw $t8, ($a1) -/* 0720CC 800714CC 00000000 */ nop -/* 0720D0 800714D0 1618000D */ bne $s0, $t8, .L80071508 -/* 0720D4 800714D4 00000000 */ nop -/* 0720D8 800714D8 84A20008 */ lh $v0, 8($a1) -/* 0720DC 800714DC 00000000 */ nop -/* 0720E0 800714E0 10E20003 */ beq $a3, $v0, .L800714F0 -/* 0720E4 800714E4 34590002 */ ori $t9, $v0, 2 -/* 0720E8 800714E8 15020007 */ bne $t0, $v0, .L80071508 -/* 0720EC 800714EC 34590002 */ ori $t9, $v0, 2 -.L800714F0: -/* 0720F0 800714F0 A4B90008 */ sh $t9, 8($a1) -/* 0720F4 800714F4 8FA40020 */ lw $a0, 0x20($sp) -/* 0720F8 800714F8 0C01BD4F */ jal func_8006F53C -/* 0720FC 800714FC 00000000 */ nop -/* 072100 80071500 10000009 */ b .L80071528 -/* 072104 80071504 24020001 */ li $v0, 1 -.L80071508: -/* 072108 80071508 84A3000C */ lh $v1, 0xc($a1) -/* 07210C 8007150C 00000000 */ nop -/* 072110 80071510 1469FFEA */ bne $v1, $t1, .L800714BC -/* 072114 80071514 00000000 */ nop -/* 072118 80071518 8FA40020 */ lw $a0, 0x20($sp) -/* 07211C 8007151C 0C01BD4F */ jal func_8006F53C -/* 072120 80071520 00000000 */ nop -/* 072124 80071524 00001025 */ move $v0, $zero -.L80071528: -/* 072128 80071528 8FBF001C */ lw $ra, 0x1c($sp) -/* 07212C 8007152C 8FB00018 */ lw $s0, 0x18($sp) -/* 072130 80071530 03E00008 */ jr $ra -/* 072134 80071534 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_80071538 -/* 072138 80071538 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 07213C 8007153C AFBF0014 */ sw $ra, 0x14($sp) -/* 072140 80071540 0C01BD44 */ jal func_8006F510 -/* 072144 80071544 AFA40028 */ sw $a0, 0x28($sp) -/* 072148 80071548 8FA40028 */ lw $a0, 0x28($sp) -/* 07214C 8007154C 0C01C57B */ jal func_800715EC -/* 072150 80071550 AFA20018 */ sw $v0, 0x18($sp) -/* 072154 80071554 00027100 */ sll $t6, $v0, 4 -/* 072158 80071558 3C048012 */ lui $a0, 0x8012 -/* 07215C 8007155C 008E2021 */ addu $a0, $a0, $t6 -/* 072160 80071560 8FA70028 */ lw $a3, 0x28($sp) -/* 072164 80071564 8C843588 */ lw $a0, 0x3588($a0) -/* 072168 80071568 00001825 */ move $v1, $zero -/* 07216C 8007156C 2406FFFF */ li $a2, -1 -/* 072170 80071570 24050014 */ li $a1, 20 -.L80071574: -/* 072174 80071574 00650019 */ multu $v1, $a1 -/* 072178 80071578 00007812 */ mflo $t7 -/* 07217C 8007157C 01E41021 */ addu $v0, $t7, $a0 -/* 072180 80071580 8C580000 */ lw $t8, ($v0) -/* 072184 80071584 00000000 */ nop -/* 072188 80071588 14F8000C */ bne $a3, $t8, .L800715BC -/* 07218C 8007158C 00000000 */ nop -/* 072190 80071590 84430008 */ lh $v1, 8($v0) -/* 072194 80071594 00000000 */ nop -/* 072198 80071598 30790002 */ andi $t9, $v1, 2 -/* 07219C 8007159C 13200007 */ beqz $t9, .L800715BC -/* 0721A0 800715A0 38680002 */ xori $t0, $v1, 2 -/* 0721A4 800715A4 A4480008 */ sh $t0, 8($v0) -/* 0721A8 800715A8 8FA40018 */ lw $a0, 0x18($sp) -/* 0721AC 800715AC 0C01BD4F */ jal func_8006F53C -/* 0721B0 800715B0 00000000 */ nop -/* 0721B4 800715B4 10000009 */ b .L800715DC -/* 0721B8 800715B8 24020001 */ li $v0, 1 -.L800715BC: -/* 0721BC 800715BC 8443000C */ lh $v1, 0xc($v0) -/* 0721C0 800715C0 00000000 */ nop -/* 0721C4 800715C4 1466FFEB */ bne $v1, $a2, .L80071574 -/* 0721C8 800715C8 00000000 */ nop -/* 0721CC 800715CC 8FA40018 */ lw $a0, 0x18($sp) -/* 0721D0 800715D0 0C01BD4F */ jal func_8006F53C -/* 0721D4 800715D4 00000000 */ nop -/* 0721D8 800715D8 00001025 */ move $v0, $zero -.L800715DC: -/* 0721DC 800715DC 8FBF0014 */ lw $ra, 0x14($sp) -/* 0721E0 800715E0 27BD0028 */ addiu $sp, $sp, 0x28 -/* 0721E4 800715E4 03E00008 */ jr $ra -/* 0721E8 800715E8 00000000 */ nop - -glabel func_800715EC -/* 0721EC 800715EC 3C038012 */ lui $v1, %hi(D_801235C0) # $v1, 0x8012 -/* 0721F0 800715F0 8C6335C0 */ lw $v1, %lo(D_801235C0)($v1) -/* 0721F4 800715F4 00802825 */ move $a1, $a0 -/* 0721F8 800715F8 18600012 */ blez $v1, .L80071644 -/* 0721FC 800715FC 00037100 */ sll $t6, $v1, 4 -/* 072200 80071600 3C0F8012 */ lui $t7, %hi(D_80123580) # $t7, 0x8012 -/* 072204 80071604 25EF3580 */ addiu $t7, %lo(D_80123580) # addiu $t7, $t7, 0x3580 -/* 072208 80071608 01CF1021 */ addu $v0, $t6, $t7 -.L8007160C: -/* 07220C 8007160C 8C440008 */ lw $a0, 8($v0) -/* 072210 80071610 00000000 */ nop -/* 072214 80071614 0085082B */ sltu $at, $a0, $a1 -/* 072218 80071618 10200007 */ beqz $at, .L80071638 -/* 07221C 8007161C 00000000 */ nop -/* 072220 80071620 8C58000C */ lw $t8, 0xc($v0) -/* 072224 80071624 00000000 */ nop -/* 072228 80071628 0304C821 */ addu $t9, $t8, $a0 -/* 07222C 8007162C 00B9082B */ sltu $at, $a1, $t9 -/* 072230 80071630 14200004 */ bnez $at, .L80071644 -/* 072234 80071634 00000000 */ nop -.L80071638: -/* 072238 80071638 2463FFFF */ addiu $v1, $v1, -1 -/* 07223C 8007163C 1C60FFF3 */ bgtz $v1, .L8007160C -/* 072240 80071640 2442FFF0 */ addiu $v0, $v0, -0x10 -.L80071644: -/* 072244 80071644 03E00008 */ jr $ra -/* 072248 80071648 00601025 */ move $v0, $v1 - -glabel func_8007164C -/* 07224C 8007164C 240A0014 */ li $t2, 20 -/* 072250 80071650 00AA0019 */ multu $a1, $t2 -/* 072254 80071654 3C0F8012 */ lui $t7, %hi(D_80123580) # $t7, 0x8012 -/* 072258 80071658 25EF3580 */ addiu $t7, %lo(D_80123580) # addiu $t7, $t7, 0x3580 -/* 07225C 8007165C 00047100 */ sll $t6, $a0, 4 -/* 072260 80071660 01CF1821 */ addu $v1, $t6, $t7 -/* 072264 80071664 8C620008 */ lw $v0, 8($v1) -/* 072268 80071668 240BFFFF */ li $t3, -1 -/* 07226C 8007166C 0000C012 */ mflo $t8 -/* 072270 80071670 03023821 */ addu $a3, $t8, $v0 -/* 072274 80071674 84E6000C */ lh $a2, 0xc($a3) -/* 072278 80071678 84E8000A */ lh $t0, 0xa($a3) -/* 07227C 8007167C 10CB001D */ beq $a2, $t3, .L800716F4 -/* 072280 80071680 A4E00008 */ sh $zero, 8($a3) -/* 072284 80071684 00CA0019 */ multu $a2, $t2 -/* 072288 80071688 0000C812 */ mflo $t9 -/* 07228C 8007168C 03222021 */ addu $a0, $t9, $v0 -/* 072290 80071690 848C0008 */ lh $t4, 8($a0) -/* 072294 80071694 00000000 */ nop -/* 072298 80071698 15800016 */ bnez $t4, .L800716F4 -/* 07229C 8007169C 00000000 */ nop -/* 0722A0 800716A0 8CED0004 */ lw $t5, 4($a3) -/* 0722A4 800716A4 8C8E0004 */ lw $t6, 4($a0) -/* 0722A8 800716A8 00000000 */ nop -/* 0722AC 800716AC 01AE7821 */ addu $t7, $t5, $t6 -/* 0722B0 800716B0 ACEF0004 */ sw $t7, 4($a3) -/* 0722B4 800716B4 8489000C */ lh $t1, 0xc($a0) -/* 0722B8 800716B8 00000000 */ nop -/* 0722BC 800716BC 112B0005 */ beq $t1, $t3, .L800716D4 -/* 0722C0 800716C0 A4E9000C */ sh $t1, 0xc($a3) -/* 0722C4 800716C4 012A0019 */ multu $t1, $t2 -/* 0722C8 800716C8 0000C012 */ mflo $t8 -/* 0722CC 800716CC 0058C821 */ addu $t9, $v0, $t8 -/* 0722D0 800716D0 A725000A */ sh $a1, 0xa($t9) -.L800716D4: -/* 0722D4 800716D4 8C6C0004 */ lw $t4, 4($v1) -/* 0722D8 800716D8 00000000 */ nop -/* 0722DC 800716DC 258DFFFF */ addiu $t5, $t4, -1 -/* 0722E0 800716E0 01AA0019 */ multu $t5, $t2 -/* 0722E4 800716E4 AC6D0004 */ sw $t5, 4($v1) -/* 0722E8 800716E8 00007812 */ mflo $t7 -/* 0722EC 800716EC 004FC021 */ addu $t8, $v0, $t7 -/* 0722F0 800716F0 A706000E */ sh $a2, 0xe($t8) -.L800716F4: -/* 0722F4 800716F4 110B001D */ beq $t0, $t3, .L8007176C -/* 0722F8 800716F8 00000000 */ nop -/* 0722FC 800716FC 010A0019 */ multu $t0, $t2 -/* 072300 80071700 0000C812 */ mflo $t9 -/* 072304 80071704 03222021 */ addu $a0, $t9, $v0 -/* 072308 80071708 848C0008 */ lh $t4, 8($a0) -/* 07230C 8007170C 00000000 */ nop -/* 072310 80071710 15800016 */ bnez $t4, .L8007176C -/* 072314 80071714 00000000 */ nop -/* 072318 80071718 8C8D0004 */ lw $t5, 4($a0) -/* 07231C 8007171C 8CEE0004 */ lw $t6, 4($a3) -/* 072320 80071720 00000000 */ nop -/* 072324 80071724 01AE7821 */ addu $t7, $t5, $t6 -/* 072328 80071728 AC8F0004 */ sw $t7, 4($a0) -/* 07232C 8007172C 84E9000C */ lh $t1, 0xc($a3) -/* 072330 80071730 00000000 */ nop -/* 072334 80071734 112B0005 */ beq $t1, $t3, .L8007174C -/* 072338 80071738 A489000C */ sh $t1, 0xc($a0) -/* 07233C 8007173C 012A0019 */ multu $t1, $t2 -/* 072340 80071740 0000C012 */ mflo $t8 -/* 072344 80071744 0058C821 */ addu $t9, $v0, $t8 -/* 072348 80071748 A728000A */ sh $t0, 0xa($t9) -.L8007174C: -/* 07234C 8007174C 8C6C0004 */ lw $t4, 4($v1) -/* 072350 80071750 00000000 */ nop -/* 072354 80071754 258DFFFF */ addiu $t5, $t4, -1 -/* 072358 80071758 01AA0019 */ multu $t5, $t2 -/* 07235C 8007175C AC6D0004 */ sw $t5, 4($v1) -/* 072360 80071760 00007812 */ mflo $t7 -/* 072364 80071764 004FC021 */ addu $t8, $v0, $t7 -/* 072368 80071768 A705000E */ sh $a1, 0xe($t8) -.L8007176C: -/* 07236C 8007176C 03E00008 */ jr $ra -/* 072370 80071770 00000000 */ nop - -/* 072374 80071774 00047100 */ sll $t6, $a0, 4 -/* 072378 80071778 3C028012 */ lui $v0, 0x8012 -/* 07237C 8007177C 004E1021 */ addu $v0, $v0, $t6 -/* 072380 80071780 8C423588 */ lw $v0, 0x3588($v0) -/* 072384 80071784 03E00008 */ jr $ra -/* 072388 80071788 00000000 */ nop - -glabel func_8007178C -/* 07238C 8007178C 240B0014 */ li $t3, 20 -/* 072390 80071790 00AB0019 */ multu $a1, $t3 -/* 072394 80071794 3C0F8012 */ lui $t7, %hi(D_80123580) # $t7, 0x8012 -/* 072398 80071798 25EF3580 */ addiu $t7, %lo(D_80123580) # addiu $t7, $t7, 0x3580 -/* 07239C 8007179C 00047100 */ sll $t6, $a0, 4 -/* 0723A0 800717A0 01CF1821 */ addu $v1, $t6, $t7 -/* 0723A4 800717A4 8C620008 */ lw $v0, 8($v1) -/* 0723A8 800717A8 0000C012 */ mflo $t8 -/* 0723AC 800717AC 00584021 */ addu $t0, $v0, $t8 -/* 0723B0 800717B0 8D090004 */ lw $t1, 4($t0) -/* 0723B4 800717B4 A5070008 */ sh $a3, 8($t0) -/* 0723B8 800717B8 AD060004 */ sw $a2, 4($t0) -/* 0723BC 800717BC 8FB90014 */ lw $t9, 0x14($sp) -/* 0723C0 800717C0 00C9082A */ slt $at, $a2, $t1 -/* 0723C4 800717C4 1020001F */ beqz $at, .L80071844 -/* 0723C8 800717C8 AD190010 */ sw $t9, 0x10($t0) -/* 0723CC 800717CC 8C670004 */ lw $a3, 4($v1) -/* 0723D0 800717D0 2401FFFF */ li $at, -1 -/* 0723D4 800717D4 00EB0019 */ multu $a3, $t3 -/* 0723D8 800717D8 24EE0001 */ addiu $t6, $a3, 1 -/* 0723DC 800717DC 00006012 */ mflo $t4 -/* 0723E0 800717E0 01826821 */ addu $t5, $t4, $v0 -/* 0723E4 800717E4 85A4000E */ lh $a0, 0xe($t5) -/* 0723E8 800717E8 AC6E0004 */ sw $t6, 4($v1) -/* 0723EC 800717EC 008B0019 */ multu $a0, $t3 -/* 0723F0 800717F0 8D180000 */ lw $t8, ($t0) -/* 0723F4 800717F4 01266023 */ subu $t4, $t1, $a2 -/* 0723F8 800717F8 0306C821 */ addu $t9, $t8, $a2 -/* 0723FC 800717FC 00007812 */ mflo $t7 -/* 072400 80071800 004F5021 */ addu $t2, $v0, $t7 -/* 072404 80071804 AD590000 */ sw $t9, ($t2) -/* 072408 80071808 AD4C0004 */ sw $t4, 4($t2) -/* 07240C 8007180C 8FAD0010 */ lw $t5, 0x10($sp) -/* 072410 80071810 00000000 */ nop -/* 072414 80071814 A54D0008 */ sh $t5, 8($t2) -/* 072418 80071818 8509000C */ lh $t1, 0xc($t0) -/* 07241C 8007181C A545000A */ sh $a1, 0xa($t2) -/* 072420 80071820 A549000C */ sh $t1, 0xc($t2) -/* 072424 80071824 11210005 */ beq $t1, $at, .L8007183C -/* 072428 80071828 A504000C */ sh $a0, 0xc($t0) -/* 07242C 8007182C 012B0019 */ multu $t1, $t3 -/* 072430 80071830 00007012 */ mflo $t6 -/* 072434 80071834 004E7821 */ addu $t7, $v0, $t6 -/* 072438 80071838 A5E4000A */ sh $a0, 0xa($t7) -.L8007183C: -/* 07243C 8007183C 03E00008 */ jr $ra -/* 072440 80071840 00801025 */ move $v0, $a0 - -.L80071844: -/* 072444 80071844 00A01025 */ move $v0, $a1 -/* 072448 80071848 03E00008 */ jr $ra -/* 07244C 8007184C 00000000 */ nop - -glabel func_80071850 -/* 072450 80071850 3083000F */ andi $v1, $a0, 0xf -/* 072454 80071854 18600003 */ blez $v1, .L80071864 -/* 072458 80071858 00000000 */ nop -/* 07245C 8007185C 00832023 */ subu $a0, $a0, $v1 -/* 072460 80071860 24840010 */ addiu $a0, $a0, 0x10 -.L80071864: -/* 072464 80071864 03E00008 */ jr $ra -/* 072468 80071868 00801025 */ move $v0, $a0 - -/* 07246C 8007186C 30830007 */ andi $v1, $a0, 7 -/* 072470 80071870 18600003 */ blez $v1, .L80071880 -/* 072474 80071874 00000000 */ nop -/* 072478 80071878 00832023 */ subu $a0, $a0, $v1 -/* 07247C 8007187C 24840008 */ addiu $a0, $a0, 8 -.L80071880: -/* 072480 80071880 03E00008 */ jr $ra -/* 072484 80071884 00801025 */ move $v0, $a0 - -/* 072488 80071888 30830003 */ andi $v1, $a0, 3 -/* 07248C 8007188C 18600003 */ blez $v1, .L8007189C -/* 072490 80071890 00000000 */ nop -/* 072494 80071894 00832023 */ subu $a0, $a0, $v1 -/* 072498 80071898 24840004 */ addiu $a0, $a0, 4 -.L8007189C: -/* 07249C 8007189C 03E00008 */ jr $ra -/* 0724A0 800718A0 00801025 */ move $v0, $a0 - -/* 0724A4 800718A4 27BDFDC8 */ addiu $sp, $sp, -0x238 -/* 0724A8 800718A8 AFB00004 */ sw $s0, 4($sp) -/* 0724AC 800718AC 00001025 */ move $v0, $zero -/* 0724B0 800718B0 27A40138 */ addiu $a0, $sp, 0x138 -/* 0724B4 800718B4 27A50038 */ addiu $a1, $sp, 0x38 -/* 0724B8 800718B8 27A30138 */ addiu $v1, $sp, 0x138 -.L800718BC: -/* 0724BC 800718BC 24A50010 */ addiu $a1, $a1, 0x10 -/* 0724C0 800718C0 AC800004 */ sw $zero, 4($a0) -/* 0724C4 800718C4 ACA0FFF4 */ sw $zero, -0xc($a1) -/* 0724C8 800718C8 AC800008 */ sw $zero, 8($a0) -/* 0724CC 800718CC ACA0FFF8 */ sw $zero, -8($a1) -/* 0724D0 800718D0 AC80000C */ sw $zero, 0xc($a0) -/* 0724D4 800718D4 ACA0FFFC */ sw $zero, -4($a1) -/* 0724D8 800718D8 24840010 */ addiu $a0, $a0, 0x10 -/* 0724DC 800718DC AC80FFF0 */ sw $zero, -0x10($a0) -/* 0724E0 800718E0 14A3FFF6 */ bne $a1, $v1, .L800718BC -/* 0724E4 800718E4 ACA0FFF0 */ sw $zero, -0x10($a1) -/* 0724E8 800718E8 3C048012 */ lui $a0, %hi(D_801235C0) # $a0, 0x8012 -/* 0724EC 800718EC 8C8435C0 */ lw $a0, %lo(D_801235C0)($a0) -/* 0724F0 800718F0 3C0E8012 */ lui $t6, 0x8012 -/* 0724F4 800718F4 1880003B */ blez $a0, .L800719E4 -/* 0724F8 800718F8 25C53580 */ addiu $a1, $t6, 0x3580 -/* 0724FC 800718FC 00047900 */ sll $t7, $a0, 4 -/* 072500 80071900 01E55021 */ addu $t2, $t7, $a1 -/* 072504 80071904 24100014 */ li $s0, 20 -/* 072508 80071908 240DFFFF */ li $t5, -1 -/* 07250C 8007190C 27AC0038 */ addiu $t4, $sp, 0x38 -/* 072510 80071910 27AB0138 */ addiu $t3, $sp, 0x138 -.L80071914: -/* 072514 80071914 8CA40008 */ lw $a0, 8($a1) -/* 072518 80071918 00000000 */ nop -/* 07251C 8007191C 00801825 */ move $v1, $a0 -.L80071920: -/* 072520 80071920 84780008 */ lh $t8, 8($v1) -/* 072524 80071924 00000000 */ nop -/* 072528 80071928 13000020 */ beqz $t8, .L800719AC -/* 07252C 8007192C 00000000 */ nop -/* 072530 80071930 8C660010 */ lw $a2, 0x10($v1) -/* 072534 80071934 8FB90138 */ lw $t9, 0x138($sp) -/* 072538 80071938 10C0001C */ beqz $a2, .L800719AC -/* 07253C 8007193C 00C03825 */ move $a3, $a2 -/* 072540 80071940 10D9000E */ beq $a2, $t9, .L8007197C -/* 072544 80071944 00004025 */ move $t0, $zero -/* 072548 80071948 1320000D */ beqz $t9, .L80071980 -/* 07254C 8007194C 29010040 */ slti $at, $t0, 0x40 -.L80071950: -/* 072550 80071950 25080001 */ addiu $t0, $t0, 1 -/* 072554 80071954 29010040 */ slti $at, $t0, 0x40 -/* 072558 80071958 10200008 */ beqz $at, .L8007197C -/* 07255C 8007195C 00087880 */ sll $t7, $t0, 2 -/* 072560 80071960 016F7021 */ addu $t6, $t3, $t7 -/* 072564 80071964 8DC60000 */ lw $a2, ($t6) -/* 072568 80071968 00000000 */ nop -/* 07256C 8007196C 10E60004 */ beq $a3, $a2, .L80071980 -/* 072570 80071970 29010040 */ slti $at, $t0, 0x40 -/* 072574 80071974 14C0FFF6 */ bnez $a2, .L80071950 -/* 072578 80071978 00000000 */ nop -.L8007197C: -/* 07257C 8007197C 29010040 */ slti $at, $t0, 0x40 -.L80071980: -/* 072580 80071980 10200009 */ beqz $at, .L800719A8 -/* 072584 80071984 00083080 */ sll $a2, $t0, 2 -/* 072588 80071988 0166C021 */ addu $t8, $t3, $a2 -/* 07258C 8007198C AF070000 */ sw $a3, ($t8) -/* 072590 80071990 01864821 */ addu $t1, $t4, $a2 -/* 072594 80071994 8D390000 */ lw $t9, ($t1) -/* 072598 80071998 00000000 */ nop -/* 07259C 8007199C 272F0001 */ addiu $t7, $t9, 1 -/* 0725A0 800719A0 10000002 */ b .L800719AC -/* 0725A4 800719A4 AD2F0000 */ sw $t7, ($t1) -.L800719A8: -/* 0725A8 800719A8 24420001 */ addiu $v0, $v0, 1 -.L800719AC: -/* 0725AC 800719AC 8467000C */ lh $a3, 0xc($v1) -/* 0725B0 800719B0 00000000 */ nop -/* 0725B4 800719B4 10ED0005 */ beq $a3, $t5, .L800719CC -/* 0725B8 800719B8 00E03025 */ move $a2, $a3 -/* 0725BC 800719BC 00F00019 */ multu $a3, $s0 -/* 0725C0 800719C0 00007012 */ mflo $t6 -/* 0725C4 800719C4 008E1821 */ addu $v1, $a0, $t6 -/* 0725C8 800719C8 00000000 */ nop -.L800719CC: -/* 0725CC 800719CC 14CDFFD4 */ bne $a2, $t5, .L80071920 -/* 0725D0 800719D0 00000000 */ nop -/* 0725D4 800719D4 24A50010 */ addiu $a1, $a1, 0x10 -/* 0725D8 800719D8 00AA082B */ sltu $at, $a1, $t2 -/* 0725DC 800719DC 1420FFCD */ bnez $at, .L80071914 -/* 0725E0 800719E0 00000000 */ nop -.L800719E4: -/* 0725E4 800719E4 8FB80138 */ lw $t8, 0x138($sp) -/* 0725E8 800719E8 8FB00004 */ lw $s0, 4($sp) -/* 0725EC 800719EC 1300000B */ beqz $t8, .L80071A1C -/* 0725F0 800719F0 00001025 */ move $v0, $zero -/* 0725F4 800719F4 0000C880 */ sll $t9, $zero, 2 -/* 0725F8 800719F8 27AF0138 */ addiu $t7, $sp, 0x138 -/* 0725FC 800719FC 032F2021 */ addu $a0, $t9, $t7 -/* 072600 80071A00 27A30238 */ addiu $v1, $sp, 0x238 -.L80071A04: -/* 072604 80071A04 8C8E0004 */ lw $t6, 4($a0) -/* 072608 80071A08 24840004 */ addiu $a0, $a0, 4 -/* 07260C 80071A0C 11C00003 */ beqz $t6, .L80071A1C -/* 072610 80071A10 00000000 */ nop -/* 072614 80071A14 1483FFFB */ bne $a0, $v1, .L80071A04 -/* 072618 80071A18 00000000 */ nop -.L80071A1C: -/* 07261C 80071A1C 03E00008 */ jr $ra -/* 072620 80071A20 27BD0238 */ addiu $sp, $sp, 0x238 - -glabel func_80071A24 -/* 072624 80071A24 3C028012 */ lui $v0, %hi(D_80123588) # $v0, 0x8012 -/* 072628 80071A28 8C423588 */ lw $v0, %lo(D_80123588)($v0) -/* 07262C 80071A2C 00001825 */ move $v1, $zero -/* 072630 80071A30 00002825 */ move $a1, $zero -/* 072634 80071A34 24060640 */ li $a2, 1600 -.L80071A38: -/* 072638 80071A38 844E0008 */ lh $t6, 8($v0) -/* 07263C 80071A3C 24A50004 */ addiu $a1, $a1, 4 -/* 072640 80071A40 11C00006 */ beqz $t6, .L80071A5C -/* 072644 80071A44 00000000 */ nop -/* 072648 80071A48 8C4F0010 */ lw $t7, 0x10($v0) -/* 07264C 80071A4C 00000000 */ nop -/* 072650 80071A50 148F0002 */ bne $a0, $t7, .L80071A5C -/* 072654 80071A54 00000000 */ nop -/* 072658 80071A58 24630001 */ addiu $v1, $v1, 1 -.L80071A5C: -/* 07265C 80071A5C 8458001C */ lh $t8, 0x1c($v0) -/* 072660 80071A60 24420014 */ addiu $v0, $v0, 0x14 -/* 072664 80071A64 13000006 */ beqz $t8, .L80071A80 -/* 072668 80071A68 00000000 */ nop -/* 07266C 80071A6C 8C590010 */ lw $t9, 0x10($v0) -/* 072670 80071A70 00000000 */ nop -/* 072674 80071A74 14990002 */ bne $a0, $t9, .L80071A80 -/* 072678 80071A78 00000000 */ nop -/* 07267C 80071A7C 24630001 */ addiu $v1, $v1, 1 -.L80071A80: -/* 072680 80071A80 8448001C */ lh $t0, 0x1c($v0) -/* 072684 80071A84 24420014 */ addiu $v0, $v0, 0x14 -/* 072688 80071A88 11000006 */ beqz $t0, .L80071AA4 -/* 07268C 80071A8C 00000000 */ nop -/* 072690 80071A90 8C490010 */ lw $t1, 0x10($v0) -/* 072694 80071A94 00000000 */ nop -/* 072698 80071A98 14890002 */ bne $a0, $t1, .L80071AA4 -/* 07269C 80071A9C 00000000 */ nop -/* 0726A0 80071AA0 24630001 */ addiu $v1, $v1, 1 -.L80071AA4: -/* 0726A4 80071AA4 844A001C */ lh $t2, 0x1c($v0) -/* 0726A8 80071AA8 24420014 */ addiu $v0, $v0, 0x14 -/* 0726AC 80071AAC 11400006 */ beqz $t2, .L80071AC8 -/* 0726B0 80071AB0 00000000 */ nop -/* 0726B4 80071AB4 8C4B0010 */ lw $t3, 0x10($v0) -/* 0726B8 80071AB8 00000000 */ nop -/* 0726BC 80071ABC 148B0002 */ bne $a0, $t3, .L80071AC8 -/* 0726C0 80071AC0 00000000 */ nop -/* 0726C4 80071AC4 24630001 */ addiu $v1, $v1, 1 -.L80071AC8: -/* 0726C8 80071AC8 14A6FFDB */ bne $a1, $a2, .L80071A38 -/* 0726CC 80071ACC 24420014 */ addiu $v0, $v0, 0x14 -/* 0726D0 80071AD0 03E00008 */ jr $ra -/* 0726D4 80071AD4 00601025 */ move $v0, $v1 - -/* 0726D8 80071AD8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0726DC 80071ADC AFBF0014 */ sw $ra, 0x14($sp) -/* 0726E0 80071AE0 3C04FF00 */ lui $a0, (0xFF0000FF >> 16) # lui $a0, 0xff00 -/* 0726E4 80071AE4 0C01C689 */ jal func_80071A24 -/* 0726E8 80071AE8 348400FF */ ori $a0, (0xFF0000FF & 0xFFFF) # ori $a0, $a0, 0xff -/* 0726EC 80071AEC 3C0400FF */ lui $a0, (0x00FF00FF >> 16) # lui $a0, 0xff -/* 0726F0 80071AF0 0C01C689 */ jal func_80071A24 -/* 0726F4 80071AF4 348400FF */ ori $a0, (0x00FF00FF & 0xFFFF) # ori $a0, $a0, 0xff -/* 0726F8 80071AF8 0C01C689 */ jal func_80071A24 -/* 0726FC 80071AFC 3404FFFF */ li $a0, 65535 -/* 072700 80071B00 3C04FFFF */ lui $a0, (0xFFFF00FF >> 16) # lui $a0, 0xffff -/* 072704 80071B04 0C01C689 */ jal func_80071A24 -/* 072708 80071B08 348400FF */ ori $a0, (0xFFFF00FF & 0xFFFF) # ori $a0, $a0, 0xff -/* 07270C 80071B0C 3C04FF00 */ lui $a0, (0xFF00FFFF >> 16) # lui $a0, 0xff00 -/* 072710 80071B10 0C01C689 */ jal func_80071A24 -/* 072714 80071B14 3484FFFF */ ori $a0, (0xFF00FFFF & 0xFFFF) # ori $a0, $a0, 0xffff -/* 072718 80071B18 3C0400FF */ lui $a0, (0x00FFFFFF >> 16) # lui $a0, 0xff -/* 07271C 80071B1C 0C01C689 */ jal func_80071A24 -/* 072720 80071B20 3484FFFF */ ori $a0, (0x00FFFFFF & 0xFFFF) # ori $a0, $a0, 0xffff -/* 072724 80071B24 0C01C689 */ jal func_80071A24 -/* 072728 80071B28 2404FFFF */ li $a0, -1 -/* 07272C 80071B2C 3C047F7F */ lui $a0, (0x7F7F7FFF >> 16) # lui $a0, 0x7f7f -/* 072730 80071B30 0C01C689 */ jal func_80071A24 -/* 072734 80071B34 34847FFF */ ori $a0, (0x7F7F7FFF & 0xFFFF) # ori $a0, $a0, 0x7fff -/* 072738 80071B38 3C04FF7F */ lui $a0, (0xFF7F7FFF >> 16) # lui $a0, 0xff7f -/* 07273C 80071B3C 0C01C689 */ jal func_80071A24 -/* 072740 80071B40 34847FFF */ ori $a0, (0xFF7F7FFF & 0xFFFF) # ori $a0, $a0, 0x7fff -/* 072744 80071B44 8FBF0014 */ lw $ra, 0x14($sp) -/* 072748 80071B48 27BD0018 */ addiu $sp, $sp, 0x18 -/* 07274C 80071B4C 03E00008 */ jr $ra -/* 072750 80071B50 00000000 */ nop - -/* 072754 80071B54 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 072758 80071B58 AFBF0014 */ sw $ra, 0x14($sp) -/* 07275C 80071B5C 00002025 */ move $a0, $zero -/* 072760 80071B60 00002825 */ move $a1, $zero -/* 072764 80071B64 00003025 */ move $a2, $zero -/* 072768 80071B68 0C02D8AD */ jal func_800B62B4 -/* 07276C 80071B6C 24070080 */ li $a3, 128 -/* 072770 80071B70 3C04FF00 */ lui $a0, (0xFF0000FF >> 16) # lui $a0, 0xff00 -/* 072774 80071B74 0C01C689 */ jal func_80071A24 -/* 072778 80071B78 348400FF */ ori $a0, (0xFF0000FF & 0xFFFF) # ori $a0, $a0, 0xff -/* 07277C 80071B7C 3C04800E */ lui $a0, %hi(D_800E7528) # $a0, 0x800e -/* 072780 80071B80 24847528 */ addiu $a0, %lo(D_800E7528) # addiu $a0, $a0, 0x7528 -/* 072784 80071B84 0C02D7B7 */ jal func_800B5EDC -/* 072788 80071B88 00402825 */ move $a1, $v0 -/* 07278C 80071B8C 3C0400FF */ lui $a0, (0x00FF00FF >> 16) # lui $a0, 0xff -/* 072790 80071B90 0C01C689 */ jal func_80071A24 -/* 072794 80071B94 348400FF */ ori $a0, (0x00FF00FF & 0xFFFF) # ori $a0, $a0, 0xff -/* 072798 80071B98 3C04800E */ lui $a0, %hi(D_800E7530) # $a0, 0x800e -/* 07279C 80071B9C 24847530 */ addiu $a0, %lo(D_800E7530) # addiu $a0, $a0, 0x7530 -/* 0727A0 80071BA0 0C02D7B7 */ jal func_800B5EDC -/* 0727A4 80071BA4 00402825 */ move $a1, $v0 -/* 0727A8 80071BA8 0C01C689 */ jal func_80071A24 -/* 0727AC 80071BAC 3404FFFF */ li $a0, 65535 -/* 0727B0 80071BB0 3C04800E */ lui $a0, %hi(D_800E753C) # $a0, 0x800e -/* 0727B4 80071BB4 2484753C */ addiu $a0, %lo(D_800E753C) # addiu $a0, $a0, 0x753c -/* 0727B8 80071BB8 0C02D7B7 */ jal func_800B5EDC -/* 0727BC 80071BBC 00402825 */ move $a1, $v0 -/* 0727C0 80071BC0 3C04FFFF */ lui $a0, (0xFFFF00FF >> 16) # lui $a0, 0xffff -/* 0727C4 80071BC4 0C01C689 */ jal func_80071A24 -/* 0727C8 80071BC8 348400FF */ ori $a0, (0xFFFF00FF & 0xFFFF) # ori $a0, $a0, 0xff -/* 0727CC 80071BCC 3C04800E */ lui $a0, %hi(D_800E7548) # $a0, 0x800e -/* 0727D0 80071BD0 24847548 */ addiu $a0, %lo(D_800E7548) # addiu $a0, $a0, 0x7548 -/* 0727D4 80071BD4 0C02D7B7 */ jal func_800B5EDC -/* 0727D8 80071BD8 00402825 */ move $a1, $v0 -/* 0727DC 80071BDC 3C04FF00 */ lui $a0, (0xFF00FFFF >> 16) # lui $a0, 0xff00 -/* 0727E0 80071BE0 0C01C689 */ jal func_80071A24 -/* 0727E4 80071BE4 3484FFFF */ ori $a0, (0xFF00FFFF & 0xFFFF) # ori $a0, $a0, 0xffff -/* 0727E8 80071BE8 3C04800E */ lui $a0, %hi(D_800E7554) # $a0, 0x800e -/* 0727EC 80071BEC 24847554 */ addiu $a0, %lo(D_800E7554) # addiu $a0, $a0, 0x7554 -/* 0727F0 80071BF0 0C02D7B7 */ jal func_800B5EDC -/* 0727F4 80071BF4 00402825 */ move $a1, $v0 -/* 0727F8 80071BF8 3C0400FF */ lui $a0, (0x00FFFFFF >> 16) # lui $a0, 0xff -/* 0727FC 80071BFC 0C01C689 */ jal func_80071A24 -/* 072800 80071C00 3484FFFF */ ori $a0, (0x00FFFFFF & 0xFFFF) # ori $a0, $a0, 0xffff -/* 072804 80071C04 3C04800E */ lui $a0, %hi(D_800E7560) # $a0, 0x800e -/* 072808 80071C08 24847560 */ addiu $a0, %lo(D_800E7560) # addiu $a0, $a0, 0x7560 -/* 07280C 80071C0C 0C02D7B7 */ jal func_800B5EDC -/* 072810 80071C10 00402825 */ move $a1, $v0 -/* 072814 80071C14 0C01C689 */ jal func_80071A24 -/* 072818 80071C18 2404FFFF */ li $a0, -1 -/* 07281C 80071C1C 3C04800E */ lui $a0, %hi(D_800E756C) # $a0, 0x800e -/* 072820 80071C20 2484756C */ addiu $a0, %lo(D_800E756C) # addiu $a0, $a0, 0x756c -/* 072824 80071C24 0C02D7B7 */ jal func_800B5EDC -/* 072828 80071C28 00402825 */ move $a1, $v0 -/* 07282C 80071C2C 3C047F7F */ lui $a0, (0x7F7F7FFF >> 16) # lui $a0, 0x7f7f -/* 072830 80071C30 0C01C689 */ jal func_80071A24 -/* 072834 80071C34 34847FFF */ ori $a0, (0x7F7F7FFF & 0xFFFF) # ori $a0, $a0, 0x7fff -/* 072838 80071C38 3C04800E */ lui $a0, %hi(D_800E7578) # $a0, 0x800e -/* 07283C 80071C3C 24847578 */ addiu $a0, %lo(D_800E7578) # addiu $a0, $a0, 0x7578 -/* 072840 80071C40 0C02D7B7 */ jal func_800B5EDC -/* 072844 80071C44 00402825 */ move $a1, $v0 -/* 072848 80071C48 3C04FF7F */ lui $a0, (0xFF7F7FFF >> 16) # lui $a0, 0xff7f -/* 07284C 80071C4C 0C01C689 */ jal func_80071A24 -/* 072850 80071C50 34847FFF */ ori $a0, (0xFF7F7FFF & 0xFFFF) # ori $a0, $a0, 0x7fff -/* 072854 80071C54 3C04800E */ lui $a0, %hi(D_800E7584) # $a0, 0x800e -/* 072858 80071C58 24847584 */ addiu $a0, %lo(D_800E7584) # addiu $a0, $a0, 0x7584 -/* 07285C 80071C5C 0C02D7B7 */ jal func_800B5EDC -/* 072860 80071C60 00402825 */ move $a1, $v0 -/* 072864 80071C64 8FBF0014 */ lw $ra, 0x14($sp) -/* 072868 80071C68 27BD0018 */ addiu $sp, $sp, 0x18 -/* 07286C 80071C6C 03E00008 */ jr $ra -/* 072870 80071C70 00000000 */ nop - -/* 072874 80071C74 3C038012 */ lui $v1, %hi(D_801235C0) # $v1, 0x8012 -/* 072878 80071C78 8C6335C0 */ lw $v1, %lo(D_801235C0)($v1) -/* 07287C 80071C7C 3C0E8012 */ lui $t6, 0x8012 -/* 072880 80071C80 04600017 */ bltz $v1, .L80071CE0 -/* 072884 80071C84 25C43580 */ addiu $a0, $t6, 0x3580 -/* 072888 80071C88 00037900 */ sll $t7, $v1, 4 -/* 07288C 80071C8C 01E44021 */ addu $t0, $t7, $a0 -/* 072890 80071C90 240C0014 */ li $t4, 20 -/* 072894 80071C94 240BFFFF */ li $t3, -1 -.L80071C98: -/* 072898 80071C98 8C830008 */ lw $v1, 8($a0) -/* 07289C 80071C9C 24840010 */ addiu $a0, $a0, 0x10 -/* 0728A0 80071CA0 00601025 */ move $v0, $v1 -.L80071CA4: -/* 0728A4 80071CA4 84450008 */ lh $a1, 8($v0) -/* 0728A8 80071CA8 8447000C */ lh $a3, 0xc($v0) -/* 0728AC 80071CAC 10A00001 */ beqz $a1, .L80071CB4 -/* 0728B0 80071CB0 00E03025 */ move $a2, $a3 -.L80071CB4: -/* 0728B4 80071CB4 10CB0005 */ beq $a2, $t3, .L80071CCC -/* 0728B8 80071CB8 00000000 */ nop -/* 0728BC 80071CBC 00EC0019 */ multu $a3, $t4 -/* 0728C0 80071CC0 0000C012 */ mflo $t8 -/* 0728C4 80071CC4 00781021 */ addu $v0, $v1, $t8 -/* 0728C8 80071CC8 00000000 */ nop -.L80071CCC: -/* 0728CC 80071CCC 14CBFFF5 */ bne $a2, $t3, .L80071CA4 -/* 0728D0 80071CD0 00000000 */ nop -/* 0728D4 80071CD4 0104082B */ sltu $at, $t0, $a0 -/* 0728D8 80071CD8 1020FFEF */ beqz $at, .L80071C98 -/* 0728DC 80071CDC 00000000 */ nop -.L80071CE0: -/* 0728E0 80071CE0 03E00008 */ jr $ra -/* 0728E4 80071CE4 00000000 */ nop - -/* 0728E8 80071CE8 3C028012 */ lui $v0, %hi(D_801235C0) # $v0, 0x8012 -/* 0728EC 80071CEC 8C4235C0 */ lw $v0, %lo(D_801235C0)($v0) -/* 0728F0 80071CF0 2405FFFF */ li $a1, -1 -/* 0728F4 80071CF4 1045000C */ beq $v0, $a1, .L80071D28 -/* 0728F8 80071CF8 24440001 */ addiu $a0, $v0, 1 -/* 0728FC 80071CFC 308E0003 */ andi $t6, $a0, 3 -/* 072900 80071D00 000E2023 */ negu $a0, $t6 -/* 072904 80071D04 10800005 */ beqz $a0, .L80071D1C -/* 072908 80071D08 00821821 */ addu $v1, $a0, $v0 -.L80071D0C: -/* 07290C 80071D0C 2442FFFF */ addiu $v0, $v0, -1 -/* 072910 80071D10 1462FFFE */ bne $v1, $v0, .L80071D0C -/* 072914 80071D14 00000000 */ nop -/* 072918 80071D18 10450003 */ beq $v0, $a1, .L80071D28 -.L80071D1C: -/* 07291C 80071D1C 2442FFFC */ addiu $v0, $v0, -4 -.L80071D20: -/* 072920 80071D20 1445FFFF */ bne $v0, $a1, .L80071D20 -/* 072924 80071D24 2442FFFC */ addiu $v0, $v0, -4 -.L80071D28: -/* 072928 80071D28 03E00008 */ jr $ra -/* 07292C 80071D2C 00000000 */ nop - -glabel func_80071D30 -/* 072930 80071D30 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 072934 80071D34 AFBF0014 */ sw $ra, 0x14($sp) -/* 072938 80071D38 0C033594 */ jal func_800CD650 -/* 07293C 80071D3C AFA40050 */ sw $a0, 0x50($sp) -/* 072940 80071D40 8FAF0050 */ lw $t7, 0x50($sp) -/* 072944 80071D44 240E0003 */ li $t6, 3 -/* 072948 80071D48 3C018013 */ lui $at, %hi(D_8012CD90) # $at, 0x8013 -/* 07294C 80071D4C A02ECD90 */ sb $t6, %lo(D_8012CD90)($at) -/* 072950 80071D50 8DF80008 */ lw $t8, 8($t7) -/* 072954 80071D54 3C088012 */ lui $t0, %hi(D_80123DD0) # $t0, 0x8012 -/* 072958 80071D58 25083DD0 */ addiu $t0, %lo(D_80123DD0) # addiu $t0, $t0, 0x3dd0 -/* 07295C 80071D5C 0018C980 */ sll $t9, $t8, 6 -/* 072960 80071D60 03282821 */ addu $a1, $t9, $t0 -/* 072964 80071D64 0C0335B0 */ jal func_800CD6C0 -/* 072968 80071D68 24040001 */ li $a0, 1 -/* 07296C 80071D6C 8FA90050 */ lw $t1, 0x50($sp) -/* 072970 80071D70 00002825 */ move $a1, $zero -/* 072974 80071D74 8D240004 */ lw $a0, 4($t1) -/* 072978 80071D78 0C0322EC */ jal osRecvMesg -/* 07297C 80071D7C 24060001 */ li $a2, 1 -/* 072980 80071D80 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013 -/* 072984 80071D84 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220 -/* 072988 80071D88 0C0335B0 */ jal func_800CD6C0 -/* 07298C 80071D8C 00002025 */ move $a0, $zero -/* 072990 80071D90 8FAA0050 */ lw $t2, 0x50($sp) -/* 072994 80071D94 00002825 */ move $a1, $zero -/* 072998 80071D98 8D440004 */ lw $a0, 4($t2) -/* 07299C 80071D9C 0C0322EC */ jal osRecvMesg -/* 0729A0 80071DA0 24060001 */ li $a2, 1 -/* 0729A4 80071DA4 8FAB0050 */ lw $t3, 0x50($sp) -/* 0729A8 80071DA8 3C038013 */ lui $v1, %hi(D_8012CDE0) # $v1, 0x8013 -/* 0729AC 80071DAC 8D640008 */ lw $a0, 8($t3) -/* 0729B0 80071DB0 2463CDE0 */ addiu $v1, %lo(D_8012CDE0) # addiu $v1, $v1, -0x3220 -/* 0729B4 80071DB4 10800007 */ beqz $a0, .L80071DD4 -/* 0729B8 80071DB8 27AC001C */ addiu $t4, $sp, 0x1c -/* 0729BC 80071DBC 18800005 */ blez $a0, .L80071DD4 -/* 0729C0 80071DC0 00001025 */ move $v0, $zero -.L80071DC4: -/* 0729C4 80071DC4 24420001 */ addiu $v0, $v0, 1 -/* 0729C8 80071DC8 0044082A */ slt $at, $v0, $a0 -/* 0729CC 80071DCC 1420FFFD */ bnez $at, .L80071DC4 -/* 0729D0 80071DD0 24630001 */ addiu $v1, $v1, 1 -.L80071DD4: -/* 0729D4 80071DD4 00607825 */ move $t7, $v1 -/* 0729D8 80071DD8 246E0024 */ addiu $t6, $v1, 0x24 -.L80071DDC: -/* 0729DC 80071DDC 89E10000 */ lwl $at, ($t7) -/* 0729E0 80071DE0 99E10003 */ lwr $at, 3($t7) -/* 0729E4 80071DE4 25EF000C */ addiu $t7, $t7, 0xc -/* 0729E8 80071DE8 AD810000 */ sw $at, ($t4) -/* 0729EC 80071DEC 89E1FFF8 */ lwl $at, -8($t7) -/* 0729F0 80071DF0 99E1FFFB */ lwr $at, -5($t7) -/* 0729F4 80071DF4 258C000C */ addiu $t4, $t4, 0xc -/* 0729F8 80071DF8 AD81FFF8 */ sw $at, -8($t4) -/* 0729FC 80071DFC 89E1FFFC */ lwl $at, -4($t7) -/* 072A00 80071E00 99E1FFFF */ lwr $at, -1($t7) -/* 072A04 80071E04 15EEFFF5 */ bne $t7, $t6, .L80071DDC -/* 072A08 80071E08 AD81FFFC */ sw $at, -4($t4) -/* 072A0C 80071E0C 89E10000 */ lwl $at, ($t7) -/* 072A10 80071E10 99E10003 */ lwr $at, 3($t7) -/* 072A14 80071E14 00000000 */ nop -/* 072A18 80071E18 AD810000 */ sw $at, ($t4) -/* 072A1C 80071E1C 93A2001E */ lbu $v0, 0x1e($sp) -/* 072A20 80071E20 93A80042 */ lbu $t0, 0x42($sp) -/* 072A24 80071E24 305800C0 */ andi $t8, $v0, 0xc0 -/* 072A28 80071E28 00182103 */ sra $a0, $t8, 4 -/* 072A2C 80071E2C 14800004 */ bnez $a0, .L80071E40 -/* 072A30 80071E30 00000000 */ nop -/* 072A34 80071E34 11000002 */ beqz $t0, .L80071E40 -/* 072A38 80071E38 00000000 */ nop -/* 072A3C 80071E3C 24040004 */ li $a0, 4 -.L80071E40: -/* 072A40 80071E40 0C0335A5 */ jal func_800CD694 -/* 072A44 80071E44 AFA40048 */ sw $a0, 0x48($sp) -/* 072A48 80071E48 8FBF0014 */ lw $ra, 0x14($sp) -/* 072A4C 80071E4C 8FA20048 */ lw $v0, 0x48($sp) -/* 072A50 80071E50 03E00008 */ jr $ra -/* 072A54 80071E54 27BD0050 */ addiu $sp, $sp, 0x50 - -glabel func_80071E58 -/* 072A58 80071E58 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 072A5C 80071E5C AFBF0014 */ sw $ra, 0x14($sp) -/* 072A60 80071E60 0C033594 */ jal func_800CD650 -/* 072A64 80071E64 AFA40050 */ sw $a0, 0x50($sp) -/* 072A68 80071E68 8FAF0050 */ lw $t7, 0x50($sp) -/* 072A6C 80071E6C 240E0003 */ li $t6, 3 -/* 072A70 80071E70 3C018013 */ lui $at, %hi(D_8012CD90) # $at, 0x8013 -/* 072A74 80071E74 A02ECD90 */ sb $t6, %lo(D_8012CD90)($at) -/* 072A78 80071E78 8DF80008 */ lw $t8, 8($t7) -/* 072A7C 80071E7C 3C088012 */ lui $t0, %hi(D_80123ED0) # $t0, 0x8012 -/* 072A80 80071E80 25083ED0 */ addiu $t0, %lo(D_80123ED0) # addiu $t0, $t0, 0x3ed0 -/* 072A84 80071E84 0018C980 */ sll $t9, $t8, 6 -/* 072A88 80071E88 03282821 */ addu $a1, $t9, $t0 -/* 072A8C 80071E8C 0C0335B0 */ jal func_800CD6C0 -/* 072A90 80071E90 24040001 */ li $a0, 1 -/* 072A94 80071E94 8FA90050 */ lw $t1, 0x50($sp) -/* 072A98 80071E98 00002825 */ move $a1, $zero -/* 072A9C 80071E9C 8D240004 */ lw $a0, 4($t1) -/* 072AA0 80071EA0 0C0322EC */ jal osRecvMesg -/* 072AA4 80071EA4 24060001 */ li $a2, 1 -/* 072AA8 80071EA8 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013 -/* 072AAC 80071EAC 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220 -/* 072AB0 80071EB0 0C0335B0 */ jal func_800CD6C0 -/* 072AB4 80071EB4 00002025 */ move $a0, $zero -/* 072AB8 80071EB8 8FAA0050 */ lw $t2, 0x50($sp) -/* 072ABC 80071EBC 00002825 */ move $a1, $zero -/* 072AC0 80071EC0 8D440004 */ lw $a0, 4($t2) -/* 072AC4 80071EC4 0C0322EC */ jal osRecvMesg -/* 072AC8 80071EC8 24060001 */ li $a2, 1 -/* 072ACC 80071ECC 8FAB0050 */ lw $t3, 0x50($sp) -/* 072AD0 80071ED0 3C038013 */ lui $v1, %hi(D_8012CDE0) # $v1, 0x8013 -/* 072AD4 80071ED4 8D640008 */ lw $a0, 8($t3) -/* 072AD8 80071ED8 2463CDE0 */ addiu $v1, %lo(D_8012CDE0) # addiu $v1, $v1, -0x3220 -/* 072ADC 80071EDC 10800007 */ beqz $a0, .L80071EFC -/* 072AE0 80071EE0 27AC001C */ addiu $t4, $sp, 0x1c -/* 072AE4 80071EE4 18800005 */ blez $a0, .L80071EFC -/* 072AE8 80071EE8 00001025 */ move $v0, $zero -.L80071EEC: -/* 072AEC 80071EEC 24420001 */ addiu $v0, $v0, 1 -/* 072AF0 80071EF0 0044082A */ slt $at, $v0, $a0 -/* 072AF4 80071EF4 1420FFFD */ bnez $at, .L80071EEC -/* 072AF8 80071EF8 24630001 */ addiu $v1, $v1, 1 -.L80071EFC: -/* 072AFC 80071EFC 00607825 */ move $t7, $v1 -/* 072B00 80071F00 246E0024 */ addiu $t6, $v1, 0x24 -.L80071F04: -/* 072B04 80071F04 89E10000 */ lwl $at, ($t7) -/* 072B08 80071F08 99E10003 */ lwr $at, 3($t7) -/* 072B0C 80071F0C 25EF000C */ addiu $t7, $t7, 0xc -/* 072B10 80071F10 AD810000 */ sw $at, ($t4) -/* 072B14 80071F14 89E1FFF8 */ lwl $at, -8($t7) -/* 072B18 80071F18 99E1FFFB */ lwr $at, -5($t7) -/* 072B1C 80071F1C 258C000C */ addiu $t4, $t4, 0xc -/* 072B20 80071F20 AD81FFF8 */ sw $at, -8($t4) -/* 072B24 80071F24 89E1FFFC */ lwl $at, -4($t7) -/* 072B28 80071F28 99E1FFFF */ lwr $at, -1($t7) -/* 072B2C 80071F2C 15EEFFF5 */ bne $t7, $t6, .L80071F04 -/* 072B30 80071F30 AD81FFFC */ sw $at, -4($t4) -/* 072B34 80071F34 89E10000 */ lwl $at, ($t7) -/* 072B38 80071F38 99E10003 */ lwr $at, 3($t7) -/* 072B3C 80071F3C 00000000 */ nop -/* 072B40 80071F40 AD810000 */ sw $at, ($t4) -/* 072B44 80071F44 93A2001E */ lbu $v0, 0x1e($sp) -/* 072B48 80071F48 93A80042 */ lbu $t0, 0x42($sp) -/* 072B4C 80071F4C 305800C0 */ andi $t8, $v0, 0xc0 -/* 072B50 80071F50 00182103 */ sra $a0, $t8, 4 -/* 072B54 80071F54 14800004 */ bnez $a0, .L80071F68 -/* 072B58 80071F58 240100EB */ li $at, 235 -/* 072B5C 80071F5C 11010002 */ beq $t0, $at, .L80071F68 -/* 072B60 80071F60 00000000 */ nop -/* 072B64 80071F64 24040004 */ li $a0, 4 -.L80071F68: -/* 072B68 80071F68 0C0335A5 */ jal func_800CD694 -/* 072B6C 80071F6C AFA40048 */ sw $a0, 0x48($sp) -/* 072B70 80071F70 8FBF0014 */ lw $ra, 0x14($sp) -/* 072B74 80071F74 8FA20048 */ lw $v0, 0x48($sp) -/* 072B78 80071F78 03E00008 */ jr $ra -/* 072B7C 80071F7C 27BD0050 */ addiu $sp, $sp, 0x50 - -glabel func_80071F80 -/* 072B80 80071F80 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 072B84 80071F84 AFB00018 */ sw $s0, 0x18($sp) -/* 072B88 80071F88 00808025 */ move $s0, $a0 -/* 072B8C 80071F8C AFBF001C */ sw $ra, 0x1c($sp) -/* 072B90 80071F90 AFA5005C */ sw $a1, 0x5c($sp) -/* 072B94 80071F94 00E01825 */ move $v1, $a3 -/* 072B98 80071F98 00004025 */ move $t0, $zero -/* 072B9C 80071F9C 00E01025 */ move $v0, $a3 -.L80071FA0: -/* 072BA0 80071FA0 25080001 */ addiu $t0, $t0, 1 -/* 072BA4 80071FA4 2901000F */ slti $at, $t0, 0xf -/* 072BA8 80071FA8 24420004 */ addiu $v0, $v0, 4 -/* 072BAC 80071FAC 1420FFFC */ bnez $at, .L80071FA0 -/* 072BB0 80071FB0 AC40FFFC */ sw $zero, -4($v0) -/* 072BB4 80071FB4 240E0001 */ li $t6, 1 -/* 072BB8 80071FB8 ACEE003C */ sw $t6, 0x3c($a3) -/* 072BBC 80071FBC 240F00FF */ li $t7, 255 -/* 072BC0 80071FC0 24180023 */ li $t8, 35 -/* 072BC4 80071FC4 24190001 */ li $t9, 1 -/* 072BC8 80071FC8 24090003 */ li $t1, 3 -/* 072BCC 80071FCC 97A4005E */ lhu $a0, 0x5e($sp) -/* 072BD0 80071FD0 A3AF002C */ sb $t7, 0x2c($sp) -/* 072BD4 80071FD4 A3B8002D */ sb $t8, 0x2d($sp) -/* 072BD8 80071FD8 A3B9002E */ sb $t9, 0x2e($sp) -/* 072BDC 80071FDC A3A9002F */ sb $t1, 0x2f($sp) -/* 072BE0 80071FE0 AFA60060 */ sw $a2, 0x60($sp) -/* 072BE4 80071FE4 0C0335DC */ jal func_800CD770 -/* 072BE8 80071FE8 AFA30054 */ sw $v1, 0x54($sp) -/* 072BEC 80071FEC 97AA005E */ lhu $t2, 0x5e($sp) -/* 072BF0 80071FF0 240D00FF */ li $t5, 255 -/* 072BF4 80071FF4 000A5940 */ sll $t3, $t2, 5 -/* 072BF8 80071FF8 004B6025 */ or $t4, $v0, $t3 -/* 072BFC 80071FFC 8FA30054 */ lw $v1, 0x54($sp) -/* 072C00 80072000 8FA60060 */ lw $a2, 0x60($sp) -/* 072C04 80072004 A7AC0030 */ sh $t4, 0x30($sp) -/* 072C08 80072008 A3AD0052 */ sb $t5, 0x52($sp) -/* 072C0C 8007200C 27A2004C */ addiu $v0, $sp, 0x4c -/* 072C10 80072010 27A4002C */ addiu $a0, $sp, 0x2c -.L80072014: -/* 072C14 80072014 90CE0000 */ lbu $t6, ($a2) -/* 072C18 80072018 24840001 */ addiu $a0, $a0, 1 -/* 072C1C 8007201C 0082082B */ sltu $at, $a0, $v0 -/* 072C20 80072020 24C60001 */ addiu $a2, $a2, 1 -/* 072C24 80072024 1420FFFB */ bnez $at, .L80072014 -/* 072C28 80072028 A08E0005 */ sb $t6, 5($a0) -/* 072C2C 8007202C 12000012 */ beqz $s0, .L80072078 -/* 072C30 80072030 27AF002C */ addiu $t7, $sp, 0x2c -/* 072C34 80072034 1A000010 */ blez $s0, .L80072078 -/* 072C38 80072038 00004025 */ move $t0, $zero -/* 072C3C 8007203C 32040003 */ andi $a0, $s0, 3 -/* 072C40 80072040 10800006 */ beqz $a0, .L8007205C -/* 072C44 80072044 00801025 */ move $v0, $a0 -.L80072048: -/* 072C48 80072048 25080001 */ addiu $t0, $t0, 1 -/* 072C4C 8007204C A0600000 */ sb $zero, ($v1) -/* 072C50 80072050 1448FFFD */ bne $v0, $t0, .L80072048 -/* 072C54 80072054 24630001 */ addiu $v1, $v1, 1 -/* 072C58 80072058 11100007 */ beq $t0, $s0, .L80072078 -.L8007205C: -/* 072C5C 8007205C 25080004 */ addiu $t0, $t0, 4 -/* 072C60 80072060 A0600001 */ sb $zero, 1($v1) -/* 072C64 80072064 A0600002 */ sb $zero, 2($v1) -/* 072C68 80072068 A0600003 */ sb $zero, 3($v1) -/* 072C6C 8007206C 24630004 */ addiu $v1, $v1, 4 -/* 072C70 80072070 1510FFFA */ bne $t0, $s0, .L8007205C -/* 072C74 80072074 A060FFFC */ sb $zero, -4($v1) -.L80072078: -/* 072C78 80072078 00604825 */ move $t1, $v1 -/* 072C7C 8007207C 25F90024 */ addiu $t9, $t7, 0x24 -.L80072080: -/* 072C80 80072080 8DE10000 */ lw $at, ($t7) -/* 072C84 80072084 25EF000C */ addiu $t7, $t7, 0xc -/* 072C88 80072088 A9210000 */ swl $at, ($t1) -/* 072C8C 8007208C B9210003 */ swr $at, 3($t1) -/* 072C90 80072090 8DE1FFF8 */ lw $at, -8($t7) -/* 072C94 80072094 2529000C */ addiu $t1, $t1, 0xc -/* 072C98 80072098 A921FFF8 */ swl $at, -8($t1) -/* 072C9C 8007209C B921FFFB */ swr $at, -5($t1) -/* 072CA0 800720A0 8DE1FFFC */ lw $at, -4($t7) -/* 072CA4 800720A4 00000000 */ nop -/* 072CA8 800720A8 A921FFFC */ swl $at, -4($t1) -/* 072CAC 800720AC 15F9FFF4 */ bne $t7, $t9, .L80072080 -/* 072CB0 800720B0 B921FFFF */ swr $at, -1($t1) -/* 072CB4 800720B4 8DE10000 */ lw $at, ($t7) -/* 072CB8 800720B8 240A00FE */ li $t2, 254 -/* 072CBC 800720BC A9210000 */ swl $at, ($t1) -/* 072CC0 800720C0 B9210003 */ swr $at, 3($t1) -/* 072CC4 800720C4 A06A0028 */ sb $t2, 0x28($v1) -/* 072CC8 800720C8 8FBF001C */ lw $ra, 0x1c($sp) -/* 072CCC 800720CC 8FB00018 */ lw $s0, 0x18($sp) -/* 072CD0 800720D0 24630028 */ addiu $v1, $v1, 0x28 -/* 072CD4 800720D4 03E00008 */ jr $ra -/* 072CD8 800720D8 27BD0058 */ addiu $sp, $sp, 0x58 - -glabel func_800720DC -/* 072CDC 800720DC 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 072CE0 800720E0 AFB00020 */ sw $s0, 0x20($sp) -/* 072CE4 800720E4 AFBF0024 */ sw $ra, 0x24($sp) -/* 072CE8 800720E8 24070080 */ li $a3, 128 -/* 072CEC 800720EC 00C08025 */ move $s0, $a2 -/* 072CF0 800720F0 ACA40004 */ sw $a0, 4($a1) -/* 072CF4 800720F4 ACA60008 */ sw $a2, 8($a1) -/* 072CF8 800720F8 ACA00000 */ sw $zero, ($a1) -/* 072CFC 800720FC A0A70065 */ sb $a3, 0x65($a1) -/* 072D00 80072100 27A20030 */ addiu $v0, $sp, 0x30 -/* 072D04 80072104 27A30050 */ addiu $v1, $sp, 0x50 -.L80072108: -/* 072D08 80072108 24420001 */ addiu $v0, $v0, 1 -/* 072D0C 8007210C 0043082B */ sltu $at, $v0, $v1 -/* 072D10 80072110 1420FFFD */ bnez $at, .L80072108 -/* 072D14 80072114 A047FFFF */ sb $a3, -1($v0) -/* 072D18 80072118 02002825 */ move $a1, $s0 -/* 072D1C 8007211C 24060400 */ li $a2, 1024 -/* 072D20 80072120 27A70030 */ addiu $a3, $sp, 0x30 -/* 072D24 80072124 AFA00010 */ sw $zero, 0x10($sp) -/* 072D28 80072128 0C03363C */ jal func_800CD8F0 -/* 072D2C 8007212C AFA40058 */ sw $a0, 0x58($sp) -/* 072D30 80072130 24010002 */ li $at, 2 -/* 072D34 80072134 14410008 */ bne $v0, $at, .L80072158 -/* 072D38 80072138 00401825 */ move $v1, $v0 -/* 072D3C 8007213C 8FA40058 */ lw $a0, 0x58($sp) -/* 072D40 80072140 02002825 */ move $a1, $s0 -/* 072D44 80072144 24060400 */ li $a2, 1024 -/* 072D48 80072148 27A70030 */ addiu $a3, $sp, 0x30 -/* 072D4C 8007214C 0C03363C */ jal func_800CD8F0 -/* 072D50 80072150 AFA00010 */ sw $zero, 0x10($sp) -/* 072D54 80072154 00401825 */ move $v1, $v0 -.L80072158: -/* 072D58 80072158 10400003 */ beqz $v0, .L80072168 -/* 072D5C 8007215C 02002825 */ move $a1, $s0 -/* 072D60 80072160 10000034 */ b .L80072234 -/* 072D64 80072164 00601025 */ move $v0, $v1 -.L80072168: -/* 072D68 80072168 8FA40058 */ lw $a0, 0x58($sp) -/* 072D6C 8007216C 24060400 */ li $a2, 1024 -/* 072D70 80072170 0C033728 */ jal func_800CDCA0 -/* 072D74 80072174 27A70030 */ addiu $a3, $sp, 0x30 -/* 072D78 80072178 10400004 */ beqz $v0, .L8007218C -/* 072D7C 8007217C 93AE004F */ lbu $t6, 0x4f($sp) -/* 072D80 80072180 1000002D */ b .L80072238 -/* 072D84 80072184 8FBF0024 */ lw $ra, 0x24($sp) -/* 072D88 80072188 93AE004F */ lbu $t6, 0x4f($sp) -.L8007218C: -/* 072D8C 8007218C 24010080 */ li $at, 128 -/* 072D90 80072190 11C10003 */ beq $t6, $at, .L800721A0 -/* 072D94 80072194 3C048012 */ lui $a0, %hi(D_80123FF0) # $a0, 0x8012 -/* 072D98 80072198 10000026 */ b .L80072234 -/* 072D9C 8007219C 2402000B */ li $v0, 11 -.L800721A0: -/* 072DA0 800721A0 3C038012 */ lui $v1, %hi(D_80123FD0) # $v1, 0x8012 -/* 072DA4 800721A4 3C058012 */ lui $a1, %hi(D_80123FF0) # $a1, 0x8012 -/* 072DA8 800721A8 24A53FF0 */ addiu $a1, %lo(D_80123FF0) # addiu $a1, $a1, 0x3ff0 -/* 072DAC 800721AC 24633FD0 */ addiu $v1, %lo(D_80123FD0) # addiu $v1, $v1, 0x3fd0 -/* 072DB0 800721B0 24843FF0 */ addiu $a0, %lo(D_80123FF0) # addiu $a0, $a0, 0x3ff0 -/* 072DB4 800721B4 24020001 */ li $v0, 1 -.L800721B8: -/* 072DB8 800721B8 24630004 */ addiu $v1, $v1, 4 -/* 072DBC 800721BC A0820001 */ sb $v0, 1($a0) -/* 072DC0 800721C0 A060FFFD */ sb $zero, -3($v1) -/* 072DC4 800721C4 A0820002 */ sb $v0, 2($a0) -/* 072DC8 800721C8 A060FFFE */ sb $zero, -2($v1) -/* 072DCC 800721CC A0820003 */ sb $v0, 3($a0) -/* 072DD0 800721D0 A060FFFF */ sb $zero, -1($v1) -/* 072DD4 800721D4 24840004 */ addiu $a0, $a0, 4 -/* 072DD8 800721D8 A082FFFC */ sb $v0, -4($a0) -/* 072DDC 800721DC 1465FFF6 */ bne $v1, $a1, .L800721B8 -/* 072DE0 800721E0 A060FFFC */ sb $zero, -4($v1) -/* 072DE4 800721E4 3C0F8012 */ lui $t7, %hi(D_80123ED0) # $t7, 0x8012 -/* 072DE8 800721E8 25EF3ED0 */ addiu $t7, %lo(D_80123ED0) # addiu $t7, $t7, 0x3ed0 -/* 072DEC 800721EC 3C068012 */ lui $a2, %hi(D_80123FF0) # $a2, 0x8012 -/* 072DF0 800721F0 00101180 */ sll $v0, $s0, 6 -/* 072DF4 800721F4 004F3821 */ addu $a3, $v0, $t7 -/* 072DF8 800721F8 AFA2002C */ sw $v0, 0x2c($sp) -/* 072DFC 800721FC 24C63FF0 */ addiu $a2, %lo(D_80123FF0) # addiu $a2, $a2, 0x3ff0 -/* 072E00 80072200 02002025 */ move $a0, $s0 -/* 072E04 80072204 0C01C7E0 */ jal func_80071F80 -/* 072E08 80072208 24050600 */ li $a1, 1536 -/* 072E0C 8007220C 8FA2002C */ lw $v0, 0x2c($sp) -/* 072E10 80072210 3C188012 */ lui $t8, %hi(D_80123DD0) # $t8, 0x8012 -/* 072E14 80072214 27183DD0 */ addiu $t8, %lo(D_80123DD0) # addiu $t8, $t8, 0x3dd0 -/* 072E18 80072218 3C068012 */ lui $a2, %hi(D_80123FD0) # $a2, 0x8012 -/* 072E1C 8007221C 24C63FD0 */ addiu $a2, %lo(D_80123FD0) # addiu $a2, $a2, 0x3fd0 -/* 072E20 80072220 02002025 */ move $a0, $s0 -/* 072E24 80072224 24050600 */ li $a1, 1536 -/* 072E28 80072228 0C01C7E0 */ jal func_80071F80 -/* 072E2C 8007222C 00583821 */ addu $a3, $v0, $t8 -/* 072E30 80072230 00001025 */ move $v0, $zero -.L80072234: -/* 072E34 80072234 8FBF0024 */ lw $ra, 0x24($sp) -.L80072238: -/* 072E38 80072238 8FB00020 */ lw $s0, 0x20($sp) -/* 072E3C 8007223C 03E00008 */ jr $ra -/* 072E40 80072240 27BD0058 */ addiu $sp, $sp, 0x58 - -/* 072E44 80072244 00000000 */ nop -/* 072E48 80072248 00000000 */ nop -/* 072E4C 8007224C 00000000 */ nop diff --git a/asm/unknown_072E50.s b/asm/unknown_072E50.s deleted file mode 100755 index 441984ee..00000000 --- a/asm/unknown_072E50.s +++ /dev/null @@ -1,5527 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_80072250 -/* 072E50 80072250 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 072E54 80072254 10800004 */ beqz $a0, .L80072268 -/* 072E58 80072258 AFBF0014 */ sw $ra, 0x14($sp) -/* 072E5C 8007225C 24010001 */ li $at, 1 -/* 072E60 80072260 14810007 */ bne $a0, $at, .L80072280 -/* 072E64 80072264 00000000 */ nop -.L80072268: -/* 072E68 80072268 0C003856 */ jal func_8000E158 -/* 072E6C 8007226C AFA40018 */ sw $a0, 0x18($sp) -/* 072E70 80072270 8FA40018 */ lw $a0, 0x18($sp) -/* 072E74 80072274 10400002 */ beqz $v0, .L80072280 -/* 072E78 80072278 240E0001 */ li $t6, 1 -/* 072E7C 8007227C 01C42023 */ subu $a0, $t6, $a0 -.L80072280: -/* 072E80 80072280 0C01A93E */ jal func_8006A4F8 -/* 072E84 80072284 00000000 */ nop -/* 072E88 80072288 8FBF0014 */ lw $ra, 0x14($sp) -/* 072E8C 8007228C 27BD0018 */ addiu $sp, $sp, 0x18 -/* 072E90 80072290 03E00008 */ jr $ra -/* 072E94 80072294 00000000 */ nop - -glabel func_80072298 -/* 072E98 80072298 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 072E9C 8007229C 308E00FF */ andi $t6, $a0, 0xff -/* 072EA0 800722A0 3C018012 */ lui $at, %hi(D_801241E4) # $at, 0x8012 -/* 072EA4 800722A4 AFBF0014 */ sw $ra, 0x14($sp) -/* 072EA8 800722A8 AFA40018 */ sw $a0, 0x18($sp) -/* 072EAC 800722AC 11C00008 */ beqz $t6, .L800722D0 -/* 072EB0 800722B0 A02E41E4 */ sb $t6, %lo(D_801241E4)($at) -/* 072EB4 800722B4 240F0079 */ li $t7, 121 -/* 072EB8 800722B8 3C018012 */ lui $at, %hi(D_801241E8) # $at, 0x8012 -/* 072EBC 800722BC AC2F41E8 */ sw $t7, %lo(D_801241E8)($at) -/* 072EC0 800722C0 3C018012 */ lui $at, %hi(D_801241E6) # $at, 0x8012 -/* 072EC4 800722C4 2418000F */ li $t8, 15 -/* 072EC8 800722C8 10000003 */ b .L800722D8 -/* 072ECC 800722CC A03841E6 */ sb $t8, %lo(D_801241E6)($at) -.L800722D0: -/* 072ED0 800722D0 0C01C9C2 */ jal func_80072708 -/* 072ED4 800722D4 00000000 */ nop -.L800722D8: -/* 072ED8 800722D8 8FBF0014 */ lw $ra, 0x14($sp) -/* 072EDC 800722DC 27BD0018 */ addiu $sp, $sp, 0x18 -/* 072EE0 800722E0 03E00008 */ jr $ra -/* 072EE4 800722E4 00000000 */ nop - -/* 072EE8 800722E8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 072EEC 800722EC 00047400 */ sll $t6, $a0, 0x10 -/* 072EF0 800722F0 000E7C03 */ sra $t7, $t6, 0x10 -/* 072EF4 800722F4 AFA40018 */ sw $a0, 0x18($sp) -/* 072EF8 800722F8 01E02025 */ move $a0, $t7 -/* 072EFC 800722FC 05E00004 */ bltz $t7, .L80072310 -/* 072F00 80072300 AFBF0014 */ sw $ra, 0x14($sp) -/* 072F04 80072304 29E10004 */ slti $at, $t7, 4 -/* 072F08 80072308 14200003 */ bnez $at, .L80072318 -/* 072F0C 8007230C 00000000 */ nop -.L80072310: -/* 072F10 80072310 10000009 */ b .L80072338 -/* 072F14 80072314 00001025 */ move $v0, $zero -.L80072318: -/* 072F18 80072318 0C01C894 */ jal func_80072250 -/* 072F1C 8007231C 00000000 */ nop -/* 072F20 80072320 3C188012 */ lui $t8, %hi(D_801241E5) # $t8, 0x8012 -/* 072F24 80072324 24190001 */ li $t9, 1 -/* 072F28 80072328 931841E5 */ lbu $t8, %lo(D_801241E5)($t8) -/* 072F2C 8007232C 00594004 */ sllv $t0, $t9, $v0 -/* 072F30 80072330 310900FF */ andi $t1, $t0, 0xff -/* 072F34 80072334 03091024 */ and $v0, $t8, $t1 -.L80072338: -/* 072F38 80072338 8FBF0014 */ lw $ra, 0x14($sp) -/* 072F3C 8007233C 27BD0018 */ addiu $sp, $sp, 0x18 -/* 072F40 80072340 03E00008 */ jr $ra -/* 072F44 80072344 00000000 */ nop - -glabel func_80072348 -/* 072F48 80072348 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 072F4C 8007234C 00047400 */ sll $t6, $a0, 0x10 -/* 072F50 80072350 30B800FF */ andi $t8, $a1, 0xff -/* 072F54 80072354 000E7C03 */ sra $t7, $t6, 0x10 -/* 072F58 80072358 AFA40020 */ sw $a0, 0x20($sp) -/* 072F5C 8007235C 2B010013 */ slti $at, $t8, 0x13 -/* 072F60 80072360 01E02025 */ move $a0, $t7 -/* 072F64 80072364 AFBF0014 */ sw $ra, 0x14($sp) -/* 072F68 80072368 1020002A */ beqz $at, .L80072414 -/* 072F6C 8007236C AFA50024 */ sw $a1, 0x24($sp) -/* 072F70 80072370 05E00028 */ bltz $t7, .L80072414 -/* 072F74 80072374 29E10004 */ slti $at, $t7, 4 -/* 072F78 80072378 10200027 */ beqz $at, .L80072418 -/* 072F7C 8007237C 8FBF0014 */ lw $ra, 0x14($sp) -/* 072F80 80072380 A7AF0022 */ sh $t7, 0x22($sp) -/* 072F84 80072384 0C01C894 */ jal func_80072250 -/* 072F88 80072388 AFB80018 */ sw $t8, 0x18($sp) -/* 072F8C 8007238C 3059FFFF */ andi $t9, $v0, 0xffff -/* 072F90 80072390 00194080 */ sll $t0, $t9, 2 -/* 072F94 80072394 01194021 */ addu $t0, $t0, $t9 -/* 072F98 80072398 3C098012 */ lui $t1, %hi(D_801241B8) # $t1, 0x8012 -/* 072F9C 8007239C 252941B8 */ addiu $t1, %lo(D_801241B8) # addiu $t1, $t1, 0x41b8 -/* 072FA0 800723A0 00084040 */ sll $t0, $t0, 1 -/* 072FA4 800723A4 01091821 */ addu $v1, $t0, $t1 -/* 072FA8 800723A8 8FA60018 */ lw $a2, 0x18($sp) -/* 072FAC 800723AC 846A0000 */ lh $t2, ($v1) -/* 072FB0 800723B0 87A40022 */ lh $a0, 0x22($sp) -/* 072FB4 800723B4 14CA000C */ bne $a2, $t2, .L800723E8 -/* 072FB8 800723B8 3C088012 */ lui $t0, %hi(D_801241E0) # $t0, 0x8012 -/* 072FBC 800723BC 846B0008 */ lh $t3, 8($v1) -/* 072FC0 800723C0 240CFED4 */ li $t4, -300 -/* 072FC4 800723C4 05610002 */ bgez $t3, .L800723D0 -/* 072FC8 800723C8 3C0D8012 */ lui $t5, %hi(D_801241E0) # $t5, 0x8012 -/* 072FCC 800723CC A46C0008 */ sh $t4, 8($v1) -.L800723D0: -/* 072FD0 800723D0 8DAD41E0 */ lw $t5, %lo(D_801241E0)($t5) -/* 072FD4 800723D4 00067880 */ sll $t7, $a2, 2 -/* 072FD8 800723D8 01AFC021 */ addu $t8, $t5, $t7 -/* 072FDC 800723DC 87190002 */ lh $t9, 2($t8) -/* 072FE0 800723E0 1000000C */ b .L80072414 -/* 072FE4 800723E4 A4790004 */ sh $t9, 4($v1) -.L800723E8: -/* 072FE8 800723E8 A4660000 */ sh $a2, ($v1) -/* 072FEC 800723EC 8D0841E0 */ lw $t0, %lo(D_801241E0)($t0) -/* 072FF0 800723F0 00065080 */ sll $t2, $a2, 2 -/* 072FF4 800723F4 010A1021 */ addu $v0, $t0, $t2 -/* 072FF8 800723F8 84450000 */ lh $a1, ($v0) -/* 072FFC 800723FC 00000000 */ nop -/* 073000 80072400 10A00005 */ beqz $a1, .L80072418 -/* 073004 80072404 8FBF0014 */ lw $ra, 0x14($sp) -/* 073008 80072408 84460002 */ lh $a2, 2($v0) -/* 07300C 8007240C 0C01C95E */ jal func_80072578 -/* 073010 80072410 00000000 */ nop -.L80072414: -/* 073014 80072414 8FBF0014 */ lw $ra, 0x14($sp) -.L80072418: -/* 073018 80072418 27BD0020 */ addiu $sp, $sp, 0x20 -/* 07301C 8007241C 03E00008 */ jr $ra -/* 073020 80072420 00000000 */ nop - -glabel func_80072424 -/* 073024 80072424 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 073028 80072428 00047400 */ sll $t6, $a0, 0x10 -/* 07302C 8007242C 30B800FF */ andi $t8, $a1, 0xff -/* 073030 80072430 000E7C03 */ sra $t7, $t6, 0x10 -/* 073034 80072434 AFA40020 */ sw $a0, 0x20($sp) -/* 073038 80072438 44866000 */ mtc1 $a2, $f12 -/* 07303C 8007243C 2B010013 */ slti $at, $t8, 0x13 -/* 073040 80072440 01E02025 */ move $a0, $t7 -/* 073044 80072444 AFBF0014 */ sw $ra, 0x14($sp) -/* 073048 80072448 10200047 */ beqz $at, .L80072568 -/* 07304C 8007244C AFA50024 */ sw $a1, 0x24($sp) -/* 073050 80072450 05E00045 */ bltz $t7, .L80072568 -/* 073054 80072454 29E10004 */ slti $at, $t7, 4 -/* 073058 80072458 10200044 */ beqz $at, .L8007256C -/* 07305C 8007245C 8FBF0014 */ lw $ra, 0x14($sp) -/* 073060 80072460 A7AF0022 */ sh $t7, 0x22($sp) -/* 073064 80072464 AFB80018 */ sw $t8, 0x18($sp) -/* 073068 80072468 0C01C894 */ jal func_80072250 -/* 07306C 8007246C E7AC0028 */ swc1 $f12, 0x28($sp) -/* 073070 80072470 3059FFFF */ andi $t9, $v0, 0xffff -/* 073074 80072474 00194080 */ sll $t0, $t9, 2 -/* 073078 80072478 01194021 */ addu $t0, $t0, $t9 -/* 07307C 8007247C 3C098012 */ lui $t1, %hi(D_801241B8) # $t1, 0x8012 -/* 073080 80072480 252941B8 */ addiu $t1, %lo(D_801241B8) # addiu $t1, $t1, 0x41b8 -/* 073084 80072484 00084040 */ sll $t0, $t0, 1 -/* 073088 80072488 01091821 */ addu $v1, $t0, $t1 -/* 07308C 8007248C 8FA60018 */ lw $a2, 0x18($sp) -/* 073090 80072490 846A0000 */ lh $t2, ($v1) -/* 073094 80072494 87A40022 */ lh $a0, 0x22($sp) -/* 073098 80072498 C7AC0028 */ lwc1 $f12, 0x28($sp) -/* 07309C 8007249C 14CA000C */ bne $a2, $t2, .L800724D0 -/* 0730A0 800724A0 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0730A4 800724A4 846B0008 */ lh $t3, 8($v1) -/* 0730A8 800724A8 240CFED4 */ li $t4, -300 -/* 0730AC 800724AC 05610002 */ bgez $t3, .L800724B8 -/* 0730B0 800724B0 3C0D8012 */ lui $t5, %hi(D_801241E0) # $t5, 0x8012 -/* 0730B4 800724B4 A46C0008 */ sh $t4, 8($v1) -.L800724B8: -/* 0730B8 800724B8 8DAD41E0 */ lw $t5, %lo(D_801241E0)($t5) -/* 0730BC 800724BC 00067880 */ sll $t7, $a2, 2 -/* 0730C0 800724C0 01AFC021 */ addu $t8, $t5, $t7 -/* 0730C4 800724C4 87190002 */ lh $t9, 2($t8) -/* 0730C8 800724C8 10000027 */ b .L80072568 -/* 0730CC 800724CC A4790004 */ sh $t9, 4($v1) -.L800724D0: -/* 0730D0 800724D0 44800000 */ mtc1 $zero, $f0 -/* 0730D4 800724D4 3C088012 */ lui $t0, %hi(D_801241E0) # $t0, 0x8012 -/* 0730D8 800724D8 4600603C */ c.lt.s $f12, $f0 -/* 0730DC 800724DC 00000000 */ nop -/* 0730E0 800724E0 45000002 */ bc1f .L800724EC -/* 0730E4 800724E4 00000000 */ nop -/* 0730E8 800724E8 46000306 */ mov.s $f12, $f0 -.L800724EC: -/* 0730EC 800724EC 44810000 */ mtc1 $at, $f0 -/* 0730F0 800724F0 00000000 */ nop -/* 0730F4 800724F4 460C003C */ c.lt.s $f0, $f12 -/* 0730F8 800724F8 00000000 */ nop -/* 0730FC 800724FC 45000002 */ bc1f .L80072508 -/* 073100 80072500 00000000 */ nop -/* 073104 80072504 46000306 */ mov.s $f12, $f0 -.L80072508: -/* 073108 80072508 A4660000 */ sh $a2, ($v1) -/* 07310C 8007250C 8D0841E0 */ lw $t0, %lo(D_801241E0)($t0) -/* 073110 80072510 00065080 */ sll $t2, $a2, 2 -/* 073114 80072514 010A1021 */ addu $v0, $t0, $t2 -/* 073118 80072518 84470000 */ lh $a3, ($v0) -/* 07311C 8007251C 00000000 */ nop -/* 073120 80072520 10E00012 */ beqz $a3, .L8007256C -/* 073124 80072524 8FBF0014 */ lw $ra, 0x14($sp) -/* 073128 80072528 44872000 */ mtc1 $a3, $f4 -/* 07312C 8007252C 84460002 */ lh $a2, 2($v0) -/* 073130 80072530 468021A0 */ cvt.s.w $f6, $f4 -/* 073134 80072534 460C3202 */ mul.s $f8, $f6, $f12 -/* 073138 80072538 444BF800 */ cfc1 $t3, $31 -/* 07313C 8007253C 00000000 */ nop -/* 073140 80072540 35610003 */ ori $at, $t3, 3 -/* 073144 80072544 38210002 */ xori $at, $at, 2 -/* 073148 80072548 44C1F800 */ ctc1 $at, $31 -/* 07314C 8007254C 00000000 */ nop -/* 073150 80072550 460042A4 */ cvt.w.s $f10, $f8 -/* 073154 80072554 44055000 */ mfc1 $a1, $f10 -/* 073158 80072558 44CBF800 */ ctc1 $t3, $31 -/* 07315C 8007255C 00056400 */ sll $t4, $a1, 0x10 -/* 073160 80072560 0C01C95E */ jal func_80072578 -/* 073164 80072564 000C2C03 */ sra $a1, $t4, 0x10 -.L80072568: -/* 073168 80072568 8FBF0014 */ lw $ra, 0x14($sp) -.L8007256C: -/* 07316C 8007256C 27BD0020 */ addiu $sp, $sp, 0x20 -/* 073170 80072570 03E00008 */ jr $ra -/* 073174 80072574 00000000 */ nop - -glabel func_80072578 -/* 073178 80072578 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 07317C 8007257C 3C198012 */ lui $t9, %hi(D_801241E4) # $t9, 0x8012 -/* 073180 80072580 933941E4 */ lbu $t9, %lo(D_801241E4)($t9) -/* 073184 80072584 00047400 */ sll $t6, $a0, 0x10 -/* 073188 80072588 000E7C03 */ sra $t7, $t6, 0x10 -/* 07318C 8007258C AFA40018 */ sw $a0, 0x18($sp) -/* 073190 80072590 00053C00 */ sll $a3, $a1, 0x10 -/* 073194 80072594 0007C403 */ sra $t8, $a3, 0x10 -/* 073198 80072598 01E02025 */ move $a0, $t7 -/* 07319C 8007259C AFBF0014 */ sw $ra, 0x14($sp) -/* 0731A0 800725A0 AFA5001C */ sw $a1, 0x1c($sp) -/* 0731A4 800725A4 13200031 */ beqz $t9, .L8007266C -/* 0731A8 800725A8 AFA60020 */ sw $a2, 0x20($sp) -/* 0731AC 800725AC 05E0002F */ bltz $t7, .L8007266C -/* 0731B0 800725B0 29E10004 */ slti $at, $t7, 4 -/* 0731B4 800725B4 1020002E */ beqz $at, .L80072670 -/* 0731B8 800725B8 8FBF0014 */ lw $ra, 0x14($sp) -/* 0731BC 800725BC 0C01C894 */ jal func_80072250 -/* 0731C0 800725C0 A7B8001E */ sh $t8, 0x1e($sp) -/* 0731C4 800725C4 87A7001E */ lh $a3, 0x1e($sp) -/* 0731C8 800725C8 3C088012 */ lui $t0, %hi(D_801241E6) # $t0, 0x8012 -/* 0731CC 800725CC 00E70019 */ multu $a3, $a3 -/* 0731D0 800725D0 00022400 */ sll $a0, $v0, 0x10 -/* 0731D4 800725D4 250841E6 */ addiu $t0, %lo(D_801241E6) # addiu $t0, $t0, 0x41e6 -/* 0731D8 800725D8 00045403 */ sra $t2, $a0, 0x10 -/* 0731DC 800725DC 240B0001 */ li $t3, 1 -/* 0731E0 800725E0 910D0000 */ lbu $t5, ($t0) -/* 0731E4 800725E4 3C098012 */ lui $t1, %hi(D_801241E7) # $t1, 0x8012 -/* 0731E8 800725E8 014B6004 */ sllv $t4, $t3, $t2 -/* 0731EC 800725EC 252941E7 */ addiu $t1, %lo(D_801241E7) # addiu $t1, $t1, 0x41e7 -/* 0731F0 800725F0 912F0000 */ lbu $t7, ($t1) -/* 0731F4 800725F4 0180C027 */ not $t8, $t4 -/* 0731F8 800725F8 01AC7025 */ or $t6, $t5, $t4 -/* 0731FC 800725FC 00006012 */ mflo $t4 -/* 073200 80072600 448C2000 */ mtc1 $t4, $f4 -/* 073204 80072604 01F8C824 */ and $t9, $t7, $t8 -/* 073208 80072608 A10E0000 */ sb $t6, ($t0) -/* 07320C 8007260C A1390000 */ sb $t9, ($t1) -/* 073210 80072610 3C01800E */ lui $at, %hi(D_800E77E4) # $at, 0x800e -/* 073214 80072614 468021A1 */ cvt.d.w $f6, $f4 -/* 073218 80072618 C42977E0 */ lwc1 $f9, %lo(D_800E77E0)($at) -/* 07321C 8007261C C42877E4 */ lwc1 $f8, %lo(D_800E77E4)($at) -/* 073220 80072620 01402025 */ move $a0, $t2 -/* 073224 80072624 46283282 */ mul.d $f10, $f6, $f8 -/* 073228 80072628 000A5080 */ sll $t2, $t2, 2 -/* 07322C 8007262C 01445021 */ addu $t2, $t2, $a0 -/* 073230 80072630 3C0B8012 */ lui $t3, %hi(D_801241B8) # $t3, 0x8012 -/* 073234 80072634 256B41B8 */ addiu $t3, %lo(D_801241B8) # addiu $t3, $t3, 0x41b8 -/* 073238 80072638 444DF800 */ cfc1 $t5, $31 -/* 07323C 8007263C 000A5040 */ sll $t2, $t2, 1 -/* 073240 80072640 35A10003 */ ori $at, $t5, 3 -/* 073244 80072644 38210002 */ xori $at, $at, 2 -/* 073248 80072648 44C1F800 */ ctc1 $at, $31 -/* 07324C 8007264C 014B1821 */ addu $v1, $t2, $t3 -/* 073250 80072650 46205424 */ cvt.w.d $f16, $f10 -/* 073254 80072654 87AE0022 */ lh $t6, 0x22($sp) -/* 073258 80072658 44068000 */ mfc1 $a2, $f16 -/* 07325C 8007265C 44CDF800 */ ctc1 $t5, $31 -/* 073260 80072660 A46E0004 */ sh $t6, 4($v1) -/* 073264 80072664 A4660006 */ sh $a2, 6($v1) -/* 073268 80072668 A4660002 */ sh $a2, 2($v1) -.L8007266C: -/* 07326C 8007266C 8FBF0014 */ lw $ra, 0x14($sp) -.L80072670: -/* 073270 80072670 27BD0018 */ addiu $sp, $sp, 0x18 -/* 073274 80072674 03E00008 */ jr $ra -/* 073278 80072678 00000000 */ nop - -/* 07327C 8007267C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 073280 80072680 00047400 */ sll $t6, $a0, 0x10 -/* 073284 80072684 000E7C03 */ sra $t7, $t6, 0x10 -/* 073288 80072688 AFA40018 */ sw $a0, 0x18($sp) -/* 07328C 8007268C 01E02025 */ move $a0, $t7 -/* 073290 80072690 05E00019 */ bltz $t7, .L800726F8 -/* 073294 80072694 AFBF0014 */ sw $ra, 0x14($sp) -/* 073298 80072698 29E10004 */ slti $at, $t7, 4 -/* 07329C 8007269C 10200017 */ beqz $at, .L800726FC -/* 0732A0 800726A0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0732A4 800726A4 0C01C894 */ jal func_80072250 -/* 0732A8 800726A8 00000000 */ nop -/* 0732AC 800726AC 00022400 */ sll $a0, $v0, 0x10 -/* 0732B0 800726B0 0004C403 */ sra $t8, $a0, 0x10 -/* 0732B4 800726B4 00185880 */ sll $t3, $t8, 2 -/* 0732B8 800726B8 3C058012 */ lui $a1, %hi(D_801241E7) # $a1, 0x8012 -/* 0732BC 800726BC 01785821 */ addu $t3, $t3, $t8 -/* 0732C0 800726C0 3C0C8012 */ lui $t4, %hi(D_801241B8) # $t4, 0x8012 -/* 0732C4 800726C4 24A541E7 */ addiu $a1, %lo(D_801241E7) # addiu $a1, $a1, 0x41e7 -/* 0732C8 800726C8 258C41B8 */ addiu $t4, %lo(D_801241B8) # addiu $t4, $t4, 0x41b8 -/* 0732CC 800726CC 000B5840 */ sll $t3, $t3, 1 -/* 0732D0 800726D0 90B90000 */ lbu $t9, ($a1) -/* 0732D4 800726D4 24080001 */ li $t0, 1 -/* 0732D8 800726D8 016C1821 */ addu $v1, $t3, $t4 -/* 0732DC 800726DC 2406FFFF */ li $a2, -1 -/* 0732E0 800726E0 03084804 */ sllv $t1, $t0, $t8 -/* 0732E4 800726E4 03295025 */ or $t2, $t9, $t1 -/* 0732E8 800726E8 A0AA0000 */ sb $t2, ($a1) -/* 0732EC 800726EC A4660004 */ sh $a2, 4($v1) -/* 0732F0 800726F0 A4660000 */ sh $a2, ($v1) -/* 0732F4 800726F4 A4600008 */ sh $zero, 8($v1) -.L800726F8: -/* 0732F8 800726F8 8FBF0014 */ lw $ra, 0x14($sp) -.L800726FC: -/* 0732FC 800726FC 27BD0018 */ addiu $sp, $sp, 0x18 -/* 073300 80072700 03E00008 */ jr $ra -/* 073304 80072704 00000000 */ nop - -glabel func_80072708 -/* 073308 80072708 240E0003 */ li $t6, 3 -/* 07330C 8007270C 3C01800E */ lui $at, 0x800e -/* 073310 80072710 03E00008 */ jr $ra -/* 073314 80072714 AC2EE48C */ sw $t6, -0x1b74($at) - -glabel func_80072718 -/* 073318 80072718 27BDFF88 */ addiu $sp, $sp, -0x78 -/* 07331C 8007271C AFBE0048 */ sw $fp, 0x48($sp) -/* 073320 80072720 3C1E8012 */ lui $fp, %hi(D_801241E6) # $fp, 0x8012 -/* 073324 80072724 27DE41E6 */ addiu $fp, %lo(D_801241E6) # addiu $fp, $fp, 0x41e6 -/* 073328 80072728 93CE0000 */ lbu $t6, ($fp) -/* 07332C 8007272C AFBF004C */ sw $ra, 0x4c($sp) -/* 073330 80072730 AFB70044 */ sw $s7, 0x44($sp) -/* 073334 80072734 AFB60040 */ sw $s6, 0x40($sp) -/* 073338 80072738 AFB5003C */ sw $s5, 0x3c($sp) -/* 07333C 8007273C AFB40038 */ sw $s4, 0x38($sp) -/* 073340 80072740 AFB30034 */ sw $s3, 0x34($sp) -/* 073344 80072744 AFB20030 */ sw $s2, 0x30($sp) -/* 073348 80072748 AFB1002C */ sw $s1, 0x2c($sp) -/* 07334C 8007274C AFB00028 */ sw $s0, 0x28($sp) -/* 073350 80072750 E7B70020 */ swc1 $f23, 0x20($sp) -/* 073354 80072754 E7B60024 */ swc1 $f22, 0x24($sp) -/* 073358 80072758 E7B50018 */ swc1 $f21, 0x18($sp) -/* 07335C 8007275C E7B4001C */ swc1 $f20, 0x1c($sp) -/* 073360 80072760 15C00005 */ bnez $t6, .L80072778 -/* 073364 80072764 AFA40078 */ sw $a0, 0x78($sp) -/* 073368 80072768 3C0F800E */ lui $t7, %hi(D_800DE48C) # $t7, 0x800e -/* 07336C 8007276C 8DEFE48C */ lw $t7, %lo(D_800DE48C)($t7) -/* 073370 80072770 00000000 */ nop -/* 073374 80072774 11E00127 */ beqz $t7, .L80072C14 -.L80072778: -/* 073378 80072778 3C028012 */ lui $v0, %hi(D_801241E8) # $v0, 0x8012 -/* 07337C 8007277C 244241E8 */ addiu $v0, %lo(D_801241E8) # addiu $v0, $v0, 0x41e8 -/* 073380 80072780 8C580000 */ lw $t8, ($v0) -/* 073384 80072784 8FB90078 */ lw $t9, 0x78($sp) -/* 073388 80072788 3C048012 */ lui $a0, %hi(D_80124010) # $a0, 0x8012 -/* 07338C 8007278C 03194021 */ addu $t0, $t8, $t9 -/* 073390 80072790 29010079 */ slti $at, $t0, 0x79 -/* 073394 80072794 1420003B */ bnez $at, .L80072884 -/* 073398 80072798 AC480000 */ sw $t0, ($v0) -/* 07339C 8007279C AC400000 */ sw $zero, ($v0) -/* 0733A0 800727A0 8C844010 */ lw $a0, %lo(D_80124010)($a0) -/* 0733A4 800727A4 0C0334A4 */ jal func_800CD290 -/* 0733A8 800727A8 27A5006D */ addiu $a1, $sp, 0x6d -/* 0733AC 800727AC 3C168012 */ lui $s6, %hi(D_80124018) # $s6, 0x8012 -/* 0733B0 800727B0 3C148012 */ lui $s4, %hi(D_801241E7) # $s4, 0x8012 -/* 0733B4 800727B4 269441E7 */ addiu $s4, %lo(D_801241E7) # addiu $s4, $s4, 0x41e7 -/* 0733B8 800727B8 26D64018 */ addiu $s6, %lo(D_80124018) # addiu $s6, $s6, 0x4018 -/* 0733BC 800727BC 00009825 */ move $s3, $zero -/* 0733C0 800727C0 24030001 */ li $v1, 1 -/* 0733C4 800727C4 24170068 */ li $s7, 104 -.L800727C8: -/* 0733C8 800727C8 93AA006D */ lbu $t2, 0x6d($sp) -/* 0733CC 800727CC 00608825 */ move $s1, $v1 -/* 0733D0 800727D0 01435824 */ and $t3, $t2, $v1 -/* 0733D4 800727D4 11600023 */ beqz $t3, .L80072864 -/* 0733D8 800727D8 3C0E8012 */ lui $t6, %hi(D_801241E5) # $t6, 0x8012 -/* 0733DC 800727DC 93CC0000 */ lbu $t4, ($fp) -/* 0733E0 800727E0 91CE41E5 */ lbu $t6, %lo(D_801241E5)($t6) -/* 0733E4 800727E4 01806827 */ not $t5, $t4 -/* 0733E8 800727E8 01AE7824 */ and $t7, $t5, $t6 -/* 0733EC 800727EC 01E3C024 */ and $t8, $t7, $v1 -/* 0733F0 800727F0 1700001C */ bnez $t8, .L80072864 -/* 0733F4 800727F4 00000000 */ nop -/* 0733F8 800727F8 02770019 */ multu $s3, $s7 -/* 0733FC 800727FC 3C048012 */ lui $a0, %hi(D_80124010) # $a0, 0x8012 -/* 073400 80072800 8C844010 */ lw $a0, %lo(D_80124010)($a0) -/* 073404 80072804 02603025 */ move $a2, $s3 -/* 073408 80072808 0000C812 */ mflo $t9 -/* 07340C 8007280C 02D92821 */ addu $a1, $s6, $t9 -/* 073410 80072810 0C01C837 */ jal func_800720DC -/* 073414 80072814 00000000 */ nop -/* 073418 80072818 1040000E */ beqz $v0, .L80072854 -/* 07341C 8007281C 3C0E8012 */ lui $t6, %hi(D_801241E5) # $t6, 0x8012 -/* 073420 80072820 93C80000 */ lbu $t0, ($fp) -/* 073424 80072824 928A0000 */ lbu $t2, ($s4) -/* 073428 80072828 02201027 */ not $v0, $s1 -/* 07342C 8007282C 01024824 */ and $t1, $t0, $v0 -/* 073430 80072830 01425824 */ and $t3, $t2, $v0 -/* 073434 80072834 A3C90000 */ sb $t1, ($fp) -/* 073438 80072838 A28B0000 */ sb $t3, ($s4) -/* 07343C 8007283C 3C0C8012 */ lui $t4, %hi(D_801241E5) # $t4, 0x8012 -/* 073440 80072840 918C41E5 */ lbu $t4, %lo(D_801241E5)($t4) -/* 073444 80072844 3C018012 */ lui $at, %hi(D_801241E5) # $at, 0x8012 -/* 073448 80072848 01826824 */ and $t5, $t4, $v0 -/* 07344C 8007284C 10000005 */ b .L80072864 -/* 073450 80072850 A02D41E5 */ sb $t5, %lo(D_801241E5)($at) -.L80072854: -/* 073454 80072854 91CE41E5 */ lbu $t6, %lo(D_801241E5)($t6) -/* 073458 80072858 3C018012 */ lui $at, %hi(D_801241E5) # $at, 0x8012 -/* 07345C 8007285C 01D17825 */ or $t7, $t6, $s1 -/* 073460 80072860 A02F41E5 */ sb $t7, %lo(D_801241E5)($at) -.L80072864: -/* 073464 80072864 26730001 */ addiu $s3, $s3, 1 -/* 073468 80072868 327800FF */ andi $t8, $s3, 0xff -/* 07346C 8007286C 00111840 */ sll $v1, $s1, 1 -/* 073470 80072870 307900FF */ andi $t9, $v1, 0xff -/* 073474 80072874 2B010004 */ slti $at, $t8, 4 -/* 073478 80072878 03201825 */ move $v1, $t9 -/* 07347C 8007287C 1420FFD2 */ bnez $at, .L800727C8 -/* 073480 80072880 03009825 */ move $s3, $t8 -.L80072884: -/* 073484 80072884 3C088012 */ lui $t0, %hi(D_801241E5) # $t0, 0x8012 -/* 073488 80072888 910841E5 */ lbu $t0, %lo(D_801241E5)($t0) -/* 07348C 8007288C 3C04800E */ lui $a0, %hi(D_800DE48C) # $a0, 0x800e -/* 073490 80072890 3C148012 */ lui $s4, %hi(D_801241E7) # $s4, 0x8012 -/* 073494 80072894 3C168012 */ lui $s6, %hi(D_80124018) # $s6, 0x8012 -/* 073498 80072898 8C84E48C */ lw $a0, %lo(D_800DE48C)($a0) -/* 07349C 8007289C 26D64018 */ addiu $s6, %lo(D_80124018) # addiu $s6, $s6, 0x4018 -/* 0734A0 800728A0 269441E7 */ addiu $s4, %lo(D_801241E7) # addiu $s4, $s4, 0x41e7 -/* 0734A4 800728A4 15000003 */ bnez $t0, .L800728B4 -/* 0734A8 800728A8 24170068 */ li $s7, 104 -/* 0734AC 800728AC 108000DA */ beqz $a0, .L80072C18 -/* 0734B0 800728B0 8FBF004C */ lw $ra, 0x4c($sp) -.L800728B4: -/* 0734B4 800728B4 10800008 */ beqz $a0, .L800728D8 -/* 0734B8 800728B8 0000A825 */ move $s5, $zero -/* 0734BC 800728BC 3C048012 */ lui $a0, %hi(D_80124010) # $a0, 0x8012 -/* 0734C0 800728C0 8C844010 */ lw $a0, %lo(D_80124010)($a0) -/* 0734C4 800728C4 0C0334A4 */ jal func_800CD290 -/* 0734C8 800728C8 27A5006D */ addiu $a1, $sp, 0x6d -/* 0734CC 800728CC 3C04800E */ lui $a0, %hi(D_800DE48C) # $a0, 0x800e -/* 0734D0 800728D0 8C84E48C */ lw $a0, %lo(D_800DE48C)($a0) -/* 0734D4 800728D4 00000000 */ nop -.L800728D8: -/* 0734D8 800728D8 3C01800E */ lui $at, %hi(D_800E77EC) # $at, 0x800e -/* 0734DC 800728DC C43777E8 */ lwc1 $f23, %lo(D_800E77E8)($at) -/* 0734E0 800728E0 C43677EC */ lwc1 $f22, %lo(D_800E77EC)($at) -/* 0734E4 800728E4 3C01800E */ lui $at, %hi(D_800E77F4) # $at, 0x800e -/* 0734E8 800728E8 3C108012 */ lui $s0, %hi(D_801241B8) # $s0, 0x8012 -/* 0734EC 800728EC C43577F0 */ lwc1 $f21, %lo(D_800E77F0)($at) -/* 0734F0 800728F0 C43477F4 */ lwc1 $f20, %lo(D_800E77F4)($at) -/* 0734F4 800728F4 261041B8 */ addiu $s0, %lo(D_801241B8) # addiu $s0, $s0, 0x41b8 -/* 0734F8 800728F8 00009825 */ move $s3, $zero -/* 0734FC 800728FC 24030001 */ li $v1, 1 -.L80072900: -/* 073500 80072900 1080001F */ beqz $a0, .L80072980 -/* 073504 80072904 3C0D8012 */ lui $t5, %hi(D_801241E5) # $t5, 0x8012 -/* 073508 80072908 2409FFFF */ li $t1, -1 -/* 07350C 8007290C A6090004 */ sh $t1, 4($s0) -/* 073510 80072910 86020004 */ lh $v0, 4($s0) -/* 073514 80072914 00608825 */ move $s1, $v1 -/* 073518 80072918 A6020006 */ sh $v0, 6($s0) -/* 07351C 8007291C A6020000 */ sh $v0, ($s0) -/* 073520 80072920 93AA006D */ lbu $t2, 0x6d($sp) -/* 073524 80072924 3C04800E */ lui $a0, %hi(D_800DE48C) # $a0, 0x800e -/* 073528 80072928 01435824 */ and $t3, $t2, $v1 -/* 07352C 8007292C 15600004 */ bnez $t3, .L80072940 -/* 073530 80072930 00000000 */ nop -/* 073534 80072934 8C84E48C */ lw $a0, %lo(D_800DE48C)($a0) -/* 073538 80072938 100000A7 */ b .L80072BD8 -/* 07353C 8007293C 26730001 */ addiu $s3, $s3, 1 -.L80072940: -/* 073540 80072940 02770019 */ multu $s3, $s7 -/* 073544 80072944 3C048012 */ lui $a0, %hi(D_80124010) # $a0, 0x8012 -/* 073548 80072948 8C844010 */ lw $a0, %lo(D_80124010)($a0) -/* 07354C 8007294C 02603025 */ move $a2, $s3 -/* 073550 80072950 00006012 */ mflo $t4 -/* 073554 80072954 02CC9021 */ addu $s2, $s6, $t4 -/* 073558 80072958 0C01C837 */ jal func_800720DC -/* 07355C 8007295C 02402825 */ move $a1, $s2 -/* 073560 80072960 14400003 */ bnez $v0, .L80072970 -/* 073564 80072964 00000000 */ nop -/* 073568 80072968 0C01C74C */ jal func_80071D30 -/* 07356C 8007296C 02402025 */ move $a0, $s2 -.L80072970: -/* 073570 80072970 3C04800E */ lui $a0, %hi(D_800DE48C) # $a0, 0x800e -/* 073574 80072974 8C84E48C */ lw $a0, %lo(D_800DE48C)($a0) -/* 073578 80072978 10000097 */ b .L80072BD8 -/* 07357C 8007297C 26730001 */ addiu $s3, $s3, 1 -.L80072980: -/* 073580 80072980 93C20000 */ lbu $v0, ($fp) -/* 073584 80072984 91AD41E5 */ lbu $t5, %lo(D_801241E5)($t5) -/* 073588 80072988 00608825 */ move $s1, $v1 -/* 07358C 8007298C 004D7024 */ and $t6, $v0, $t5 -/* 073590 80072990 01C37824 */ and $t7, $t6, $v1 -/* 073594 80072994 11E0008F */ beqz $t7, .L80072BD4 -/* 073598 80072998 00000000 */ nop -/* 07359C 8007299C 86030004 */ lh $v1, 4($s0) -/* 0735A0 800729A0 8FAA0078 */ lw $t2, 0x78($sp) -/* 0735A4 800729A4 1C600010 */ bgtz $v1, .L800729E8 -/* 0735A8 800729A8 006A5823 */ subu $t3, $v1, $t2 -/* 0735AC 800729AC 02770019 */ multu $s3, $s7 -/* 0735B0 800729B0 0220C027 */ not $t8, $s1 -/* 0735B4 800729B4 0058C824 */ and $t9, $v0, $t8 -/* 0735B8 800729B8 A3D90000 */ sb $t9, ($fp) -/* 0735BC 800729BC 2408FFFF */ li $t0, -1 -/* 0735C0 800729C0 A6080000 */ sh $t0, ($s0) -/* 0735C4 800729C4 A6000008 */ sh $zero, 8($s0) -/* 0735C8 800729C8 00004812 */ mflo $t1 -/* 0735CC 800729CC 02C92021 */ addu $a0, $s6, $t1 -/* 0735D0 800729D0 0C01C74C */ jal func_80071D30 -/* 0735D4 800729D4 00000000 */ nop -/* 0735D8 800729D8 3C04800E */ lui $a0, %hi(D_800DE48C) # $a0, 0x800e -/* 0735DC 800729DC 8C84E48C */ lw $a0, %lo(D_800DE48C)($a0) -/* 0735E0 800729E0 1000007D */ b .L80072BD8 -/* 0735E4 800729E4 26730001 */ addiu $s3, $s3, 1 -.L800729E8: -/* 0735E8 800729E8 A60B0004 */ sh $t3, 4($s0) -/* 0735EC 800729EC 8FAD0078 */ lw $t5, 0x78($sp) -/* 0735F0 800729F0 860C0008 */ lh $t4, 8($s0) -/* 0735F4 800729F4 3C04800E */ lui $a0, %hi(D_800DE48C) # $a0, 0x800e -/* 0735F8 800729F8 018D7021 */ addu $t6, $t4, $t5 -/* 0735FC 800729FC A60E0008 */ sh $t6, 8($s0) -/* 073600 80072A00 86020008 */ lh $v0, 8($s0) -/* 073604 80072A04 00000000 */ nop -/* 073608 80072A08 04410004 */ bgez $v0, .L80072A1C -/* 07360C 80072A0C 28410259 */ slti $at, $v0, 0x259 -/* 073610 80072A10 8C84E48C */ lw $a0, %lo(D_800DE48C)($a0) -/* 073614 80072A14 10000070 */ b .L80072BD8 -/* 073618 80072A18 26730001 */ addiu $s3, $s3, 1 -.L80072A1C: -/* 07361C 80072A1C 14200012 */ bnez $at, .L80072A68 -/* 073620 80072A20 00000000 */ nop -/* 073624 80072A24 02770019 */ multu $s3, $s7 -/* 073628 80072A28 93CF0000 */ lbu $t7, ($fp) -/* 07362C 80072A2C 0220C027 */ not $t8, $s1 -/* 073630 80072A30 01F8C824 */ and $t9, $t7, $t8 -/* 073634 80072A34 A3D90000 */ sb $t9, ($fp) -/* 073638 80072A38 2408FFFF */ li $t0, -1 -/* 07363C 80072A3C 2409FED4 */ li $t1, -300 -/* 073640 80072A40 A6080000 */ sh $t0, ($s0) -/* 073644 80072A44 A6090008 */ sh $t1, 8($s0) -/* 073648 80072A48 00005012 */ mflo $t2 -/* 07364C 80072A4C 02CA2021 */ addu $a0, $s6, $t2 -/* 073650 80072A50 0C01C74C */ jal func_80071D30 -/* 073654 80072A54 00000000 */ nop -/* 073658 80072A58 3C04800E */ lui $a0, %hi(D_800DE48C) # $a0, 0x800e -/* 07365C 80072A5C 8C84E48C */ lw $a0, %lo(D_800DE48C)($a0) -/* 073660 80072A60 1000005D */ b .L80072BD8 -/* 073664 80072A64 26730001 */ addiu $s3, $s3, 1 -.L80072A68: -/* 073668 80072A68 86040002 */ lh $a0, 2($s0) -/* 07366C 80072A6C 00000000 */ nop -/* 073670 80072A70 44842000 */ mtc1 $a0, $f4 -/* 073674 80072A74 00000000 */ nop -/* 073678 80072A78 46802021 */ cvt.d.w $f0, $f4 -/* 07367C 80072A7C 4620A03C */ c.lt.d $f20, $f0 -/* 073680 80072A80 00000000 */ nop -/* 073684 80072A84 45000010 */ bc1f .L80072AC8 -/* 073688 80072A88 00000000 */ nop -/* 07368C 80072A8C 928B0000 */ lbu $t3, ($s4) -/* 073690 80072A90 00000000 */ nop -/* 073694 80072A94 01716024 */ and $t4, $t3, $s1 -/* 073698 80072A98 1580004B */ bnez $t4, .L80072BC8 -/* 07369C 80072A9C 00000000 */ nop -/* 0736A0 80072AA0 02770019 */ multu $s3, $s7 -/* 0736A4 80072AA4 00006812 */ mflo $t5 -/* 0736A8 80072AA8 02CD2021 */ addu $a0, $s6, $t5 -/* 0736AC 80072AAC 0C01C796 */ jal func_80071E58 -/* 0736B0 80072AB0 00000000 */ nop -/* 0736B4 80072AB4 928E0000 */ lbu $t6, ($s4) -/* 0736B8 80072AB8 02A2A825 */ or $s5, $s5, $v0 -/* 0736BC 80072ABC 01D17825 */ or $t7, $t6, $s1 -/* 0736C0 80072AC0 10000041 */ b .L80072BC8 -/* 0736C4 80072AC4 A28F0000 */ sb $t7, ($s4) -.L80072AC8: -/* 0736C8 80072AC8 4636003C */ c.lt.d $f0, $f22 -/* 0736CC 80072ACC 00000000 */ nop -/* 0736D0 80072AD0 45000011 */ bc1f .L80072B18 -/* 0736D4 80072AD4 00000000 */ nop -/* 0736D8 80072AD8 92980000 */ lbu $t8, ($s4) -/* 0736DC 80072ADC 00000000 */ nop -/* 0736E0 80072AE0 0311C824 */ and $t9, $t8, $s1 -/* 0736E4 80072AE4 13200038 */ beqz $t9, .L80072BC8 -/* 0736E8 80072AE8 00000000 */ nop -/* 0736EC 80072AEC 02770019 */ multu $s3, $s7 -/* 0736F0 80072AF0 00004012 */ mflo $t0 -/* 0736F4 80072AF4 02C82021 */ addu $a0, $s6, $t0 -/* 0736F8 80072AF8 0C01C74C */ jal func_80071D30 -/* 0736FC 80072AFC 00000000 */ nop -/* 073700 80072B00 92890000 */ lbu $t1, ($s4) -/* 073704 80072B04 02205027 */ not $t2, $s1 -/* 073708 80072B08 012A5824 */ and $t3, $t1, $t2 -/* 07370C 80072B0C 02A2A825 */ or $s5, $s5, $v0 -/* 073710 80072B10 1000002D */ b .L80072BC8 -/* 073714 80072B14 A28B0000 */ sb $t3, ($s4) -.L80072B18: -/* 073718 80072B18 86030006 */ lh $v1, 6($s0) -/* 07371C 80072B1C 00000000 */ nop -/* 073720 80072B20 28610100 */ slti $at, $v1, 0x100 -/* 073724 80072B24 14200014 */ bnez $at, .L80072B78 -/* 073728 80072B28 00000000 */ nop -/* 07372C 80072B2C 928C0000 */ lbu $t4, ($s4) -/* 073730 80072B30 00000000 */ nop -/* 073734 80072B34 01916824 */ and $t5, $t4, $s1 -/* 073738 80072B38 15A0000D */ bnez $t5, .L80072B70 -/* 07373C 80072B3C 2479FF00 */ addiu $t9, $v1, -0x100 -/* 073740 80072B40 02770019 */ multu $s3, $s7 -/* 073744 80072B44 00007012 */ mflo $t6 -/* 073748 80072B48 02CE2021 */ addu $a0, $s6, $t6 -/* 07374C 80072B4C 0C01C796 */ jal func_80071E58 -/* 073750 80072B50 00000000 */ nop -/* 073754 80072B54 928F0000 */ lbu $t7, ($s4) -/* 073758 80072B58 02A2A825 */ or $s5, $s5, $v0 -/* 07375C 80072B5C 01F1C025 */ or $t8, $t7, $s1 -/* 073760 80072B60 A2980000 */ sb $t8, ($s4) -/* 073764 80072B64 86030006 */ lh $v1, 6($s0) -/* 073768 80072B68 00000000 */ nop -/* 07376C 80072B6C 2479FF00 */ addiu $t9, $v1, -0x100 -.L80072B70: -/* 073770 80072B70 10000015 */ b .L80072BC8 -/* 073774 80072B74 A6190006 */ sh $t9, 6($s0) -.L80072B78: -/* 073778 80072B78 92880000 */ lbu $t0, ($s4) -/* 07377C 80072B7C 00000000 */ nop -/* 073780 80072B80 01114824 */ and $t1, $t0, $s1 -/* 073784 80072B84 1120000E */ beqz $t1, .L80072BC0 -/* 073788 80072B88 00647021 */ addu $t6, $v1, $a0 -/* 07378C 80072B8C 02770019 */ multu $s3, $s7 -/* 073790 80072B90 00005012 */ mflo $t2 -/* 073794 80072B94 02CA2021 */ addu $a0, $s6, $t2 -/* 073798 80072B98 0C01C74C */ jal func_80071D30 -/* 07379C 80072B9C 00000000 */ nop -/* 0737A0 80072BA0 928B0000 */ lbu $t3, ($s4) -/* 0737A4 80072BA4 02206027 */ not $t4, $s1 -/* 0737A8 80072BA8 016C6824 */ and $t5, $t3, $t4 -/* 0737AC 80072BAC A28D0000 */ sb $t5, ($s4) -/* 0737B0 80072BB0 86030006 */ lh $v1, 6($s0) -/* 0737B4 80072BB4 86040002 */ lh $a0, 2($s0) -/* 0737B8 80072BB8 02A2A825 */ or $s5, $s5, $v0 -/* 0737BC 80072BBC 00647021 */ addu $t6, $v1, $a0 -.L80072BC0: -/* 0737C0 80072BC0 25CF0004 */ addiu $t7, $t6, 4 -/* 0737C4 80072BC4 A60F0006 */ sh $t7, 6($s0) -.L80072BC8: -/* 0737C8 80072BC8 3C04800E */ lui $a0, %hi(D_800DE48C) # $a0, 0x800e -/* 0737CC 80072BCC 8C84E48C */ lw $a0, %lo(D_800DE48C)($a0) -/* 0737D0 80072BD0 00000000 */ nop -.L80072BD4: -/* 0737D4 80072BD4 26730001 */ addiu $s3, $s3, 1 -.L80072BD8: -/* 0737D8 80072BD8 327800FF */ andi $t8, $s3, 0xff -/* 0737DC 80072BDC 00111840 */ sll $v1, $s1, 1 -/* 0737E0 80072BE0 307900FF */ andi $t9, $v1, 0xff -/* 0737E4 80072BE4 2B010004 */ slti $at, $t8, 4 -/* 0737E8 80072BE8 03201825 */ move $v1, $t9 -/* 0737EC 80072BEC 03009825 */ move $s3, $t8 -/* 0737F0 80072BF0 1420FF43 */ bnez $at, .L80072900 -/* 0737F4 80072BF4 2610000A */ addiu $s0, $s0, 0xa -/* 0737F8 80072BF8 12A00002 */ beqz $s5, .L80072C04 -/* 0737FC 80072BFC 3C018012 */ lui $at, %hi(D_801241E5) # $at, 0x8012 -/* 073800 80072C00 A02041E5 */ sb $zero, %lo(D_801241E5)($at) -.L80072C04: -/* 073804 80072C04 10800003 */ beqz $a0, .L80072C14 -/* 073808 80072C08 2488FFFF */ addiu $t0, $a0, -1 -/* 07380C 80072C0C 3C01800E */ lui $at, %hi(D_800DE48C) # $at, 0x800e -/* 073810 80072C10 AC28E48C */ sw $t0, %lo(D_800DE48C)($at) -.L80072C14: -/* 073814 80072C14 8FBF004C */ lw $ra, 0x4c($sp) -.L80072C18: -/* 073818 80072C18 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 07381C 80072C1C C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 073820 80072C20 C7B70020 */ lwc1 $f23, 0x20($sp) -/* 073824 80072C24 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 073828 80072C28 8FB00028 */ lw $s0, 0x28($sp) -/* 07382C 80072C2C 8FB1002C */ lw $s1, 0x2c($sp) -/* 073830 80072C30 8FB20030 */ lw $s2, 0x30($sp) -/* 073834 80072C34 8FB30034 */ lw $s3, 0x34($sp) -/* 073838 80072C38 8FB40038 */ lw $s4, 0x38($sp) -/* 07383C 80072C3C 8FB5003C */ lw $s5, 0x3c($sp) -/* 073840 80072C40 8FB60040 */ lw $s6, 0x40($sp) -/* 073844 80072C44 8FB70044 */ lw $s7, 0x44($sp) -/* 073848 80072C48 8FBE0048 */ lw $fp, 0x48($sp) -/* 07384C 80072C4C 03E00008 */ jr $ra -/* 073850 80072C50 27BD0078 */ addiu $sp, $sp, 0x78 - -glabel func_80072C54 -/* 073854 80072C54 1C800003 */ bgtz $a0, .L80072C64 -/* 073858 80072C58 00001825 */ move $v1, $zero -/* 07385C 80072C5C 03E00008 */ jr $ra -/* 073860 80072C60 00001025 */ move $v0, $zero - -.L80072C64: -/* 073864 80072C64 248E001F */ addiu $t6, $a0, 0x1f -/* 073868 80072C68 240F0001 */ li $t7, 1 -/* 07386C 80072C6C 1080006B */ beqz $a0, .L80072E1C -/* 073870 80072C70 01CF1004 */ sllv $v0, $t7, $t6 -/* 073874 80072C74 30850003 */ andi $a1, $a0, 3 -/* 073878 80072C78 00052823 */ negu $a1, $a1 -/* 07387C 80072C7C 10A0001D */ beqz $a1, .L80072CF4 -/* 073880 80072C80 00A44021 */ addu $t0, $a1, $a0 -/* 073884 80072C84 3C0B8012 */ lui $t3, %hi(D_801241EC) # $t3, 0x8012 -/* 073888 80072C88 3C0A8012 */ lui $t2, %hi(D_801241F0) # $t2, 0x8012 -/* 07388C 80072C8C 3C098012 */ lui $t1, %hi(D_801241F4) # $t1, 0x8012 -/* 073890 80072C90 252941F4 */ addiu $t1, %lo(D_801241F4) # addiu $t1, $t1, 0x41f4 -/* 073894 80072C94 254A41F0 */ addiu $t2, %lo(D_801241F0) # addiu $t2, $t2, 0x41f0 -/* 073898 80072C98 256B41EC */ addiu $t3, %lo(D_801241EC) # addiu $t3, $t3, 0x41ec -/* 07389C 80072C9C 240C0080 */ li $t4, 128 -.L80072CA0: -/* 0738A0 80072CA0 8D260000 */ lw $a2, ($t1) -/* 0738A4 80072CA4 2485FFFF */ addiu $a1, $a0, -1 -/* 0738A8 80072CA8 14C00008 */ bnez $a2, .L80072CCC -/* 0738AC 80072CAC 00027042 */ srl $t6, $v0, 1 -/* 0738B0 80072CB0 8D670000 */ lw $a3, ($t3) -/* 0738B4 80072CB4 01803025 */ move $a2, $t4 -/* 0738B8 80072CB8 90F80000 */ lbu $t8, ($a3) -/* 0738BC 80072CBC 24F90001 */ addiu $t9, $a3, 1 -/* 0738C0 80072CC0 AD790000 */ sw $t9, ($t3) -/* 0738C4 80072CC4 AD2C0000 */ sw $t4, ($t1) -/* 0738C8 80072CC8 AD580000 */ sw $t8, ($t2) -.L80072CCC: -/* 0738CC 80072CCC 8D4D0000 */ lw $t5, ($t2) -/* 0738D0 80072CD0 0006C042 */ srl $t8, $a2, 1 -/* 0738D4 80072CD4 01A67824 */ and $t7, $t5, $a2 -/* 0738D8 80072CD8 11E00002 */ beqz $t7, .L80072CE4 -/* 0738DC 80072CDC 00A02025 */ move $a0, $a1 -/* 0738E0 80072CE0 00621825 */ or $v1, $v1, $v0 -.L80072CE4: -/* 0738E4 80072CE4 01C01025 */ move $v0, $t6 -/* 0738E8 80072CE8 1505FFED */ bne $t0, $a1, .L80072CA0 -/* 0738EC 80072CEC AD380000 */ sw $t8, ($t1) -/* 0738F0 80072CF0 10A0004A */ beqz $a1, .L80072E1C -.L80072CF4: -/* 0738F4 80072CF4 3C098012 */ lui $t1, %hi(D_801241F4) # $t1, 0x8012 -/* 0738F8 80072CF8 3C0A8012 */ lui $t2, %hi(D_801241F0) # $t2, 0x8012 -/* 0738FC 80072CFC 3C0B8012 */ lui $t3, %hi(D_801241EC) # $t3, 0x8012 -/* 073900 80072D00 256B41EC */ addiu $t3, %lo(D_801241EC) # addiu $t3, $t3, 0x41ec -/* 073904 80072D04 254A41F0 */ addiu $t2, %lo(D_801241F0) # addiu $t2, $t2, 0x41f0 -/* 073908 80072D08 252941F4 */ addiu $t1, %lo(D_801241F4) # addiu $t1, $t1, 0x41f4 -/* 07390C 80072D0C 240C0080 */ li $t4, 128 -.L80072D10: -/* 073910 80072D10 8D260000 */ lw $a2, ($t1) -/* 073914 80072D14 00027042 */ srl $t6, $v0, 1 -/* 073918 80072D18 14C00008 */ bnez $a2, .L80072D3C -/* 07391C 80072D1C 2484FFFC */ addiu $a0, $a0, -4 -/* 073920 80072D20 8D670000 */ lw $a3, ($t3) -/* 073924 80072D24 01803025 */ move $a2, $t4 -/* 073928 80072D28 90F90000 */ lbu $t9, ($a3) -/* 07392C 80072D2C 24ED0001 */ addiu $t5, $a3, 1 -/* 073930 80072D30 AD6D0000 */ sw $t5, ($t3) -/* 073934 80072D34 AD2C0000 */ sw $t4, ($t1) -/* 073938 80072D38 AD590000 */ sw $t9, ($t2) -.L80072D3C: -/* 07393C 80072D3C 8D450000 */ lw $a1, ($t2) -/* 073940 80072D40 0006C042 */ srl $t8, $a2, 1 -/* 073944 80072D44 00A67824 */ and $t7, $a1, $a2 -/* 073948 80072D48 11E00002 */ beqz $t7, .L80072D54 -/* 07394C 80072D4C 03003025 */ move $a2, $t8 -/* 073950 80072D50 00621825 */ or $v1, $v1, $v0 -.L80072D54: -/* 073954 80072D54 01C01025 */ move $v0, $t6 -/* 073958 80072D58 17000008 */ bnez $t8, .L80072D7C -/* 07395C 80072D5C AD380000 */ sw $t8, ($t1) -/* 073960 80072D60 8D670000 */ lw $a3, ($t3) -/* 073964 80072D64 01803025 */ move $a2, $t4 -/* 073968 80072D68 90E50000 */ lbu $a1, ($a3) -/* 07396C 80072D6C 24ED0001 */ addiu $t5, $a3, 1 -/* 073970 80072D70 AD6D0000 */ sw $t5, ($t3) -/* 073974 80072D74 AD2C0000 */ sw $t4, ($t1) -/* 073978 80072D78 AD450000 */ sw $a1, ($t2) -.L80072D7C: -/* 07397C 80072D7C 00A67824 */ and $t7, $a1, $a2 -/* 073980 80072D80 11E00002 */ beqz $t7, .L80072D8C -/* 073984 80072D84 00027042 */ srl $t6, $v0, 1 -/* 073988 80072D88 00621825 */ or $v1, $v1, $v0 -.L80072D8C: -/* 07398C 80072D8C 0006C042 */ srl $t8, $a2, 1 -/* 073990 80072D90 AD380000 */ sw $t8, ($t1) -/* 073994 80072D94 03003025 */ move $a2, $t8 -/* 073998 80072D98 17000008 */ bnez $t8, .L80072DBC -/* 07399C 80072D9C 01C01025 */ move $v0, $t6 -/* 0739A0 80072DA0 8D670000 */ lw $a3, ($t3) -/* 0739A4 80072DA4 01803025 */ move $a2, $t4 -/* 0739A8 80072DA8 90E50000 */ lbu $a1, ($a3) -/* 0739AC 80072DAC 24ED0001 */ addiu $t5, $a3, 1 -/* 0739B0 80072DB0 AD6D0000 */ sw $t5, ($t3) -/* 0739B4 80072DB4 AD2C0000 */ sw $t4, ($t1) -/* 0739B8 80072DB8 AD450000 */ sw $a1, ($t2) -.L80072DBC: -/* 0739BC 80072DBC 00A67824 */ and $t7, $a1, $a2 -/* 0739C0 80072DC0 11E00002 */ beqz $t7, .L80072DCC -/* 0739C4 80072DC4 00027042 */ srl $t6, $v0, 1 -/* 0739C8 80072DC8 00621825 */ or $v1, $v1, $v0 -.L80072DCC: -/* 0739CC 80072DCC 0006C042 */ srl $t8, $a2, 1 -/* 0739D0 80072DD0 AD380000 */ sw $t8, ($t1) -/* 0739D4 80072DD4 03003025 */ move $a2, $t8 -/* 0739D8 80072DD8 17000008 */ bnez $t8, .L80072DFC -/* 0739DC 80072DDC 01C01025 */ move $v0, $t6 -/* 0739E0 80072DE0 8D670000 */ lw $a3, ($t3) -/* 0739E4 80072DE4 01803025 */ move $a2, $t4 -/* 0739E8 80072DE8 90E50000 */ lbu $a1, ($a3) -/* 0739EC 80072DEC 24ED0001 */ addiu $t5, $a3, 1 -/* 0739F0 80072DF0 AD6D0000 */ sw $t5, ($t3) -/* 0739F4 80072DF4 AD2C0000 */ sw $t4, ($t1) -/* 0739F8 80072DF8 AD450000 */ sw $a1, ($t2) -.L80072DFC: -/* 0739FC 80072DFC 00A67824 */ and $t7, $a1, $a2 -/* 073A00 80072E00 11E00002 */ beqz $t7, .L80072E0C -/* 073A04 80072E04 00027042 */ srl $t6, $v0, 1 -/* 073A08 80072E08 00621825 */ or $v1, $v1, $v0 -.L80072E0C: -/* 073A0C 80072E0C 0006C042 */ srl $t8, $a2, 1 -/* 073A10 80072E10 AD380000 */ sw $t8, ($t1) -/* 073A14 80072E14 1480FFBE */ bnez $a0, .L80072D10 -/* 073A18 80072E18 01C01025 */ move $v0, $t6 -.L80072E1C: -/* 073A1C 80072E1C 00601025 */ move $v0, $v1 -/* 073A20 80072E20 03E00008 */ jr $ra -/* 073A24 80072E24 00000000 */ nop - -glabel func_80072E28 -/* 073A28 80072E28 1880008E */ blez $a0, .L80073064 -/* 073A2C 80072E2C 00A03025 */ move $a2, $a1 -/* 073A30 80072E30 248E001F */ addiu $t6, $a0, 0x1f -/* 073A34 80072E34 240F0001 */ li $t7, 1 -/* 073A38 80072E38 10800082 */ beqz $a0, .L80073044 -/* 073A3C 80072E3C 01CF1004 */ sllv $v0, $t7, $t6 -/* 073A40 80072E40 30830003 */ andi $v1, $a0, 3 -/* 073A44 80072E44 00031823 */ negu $v1, $v1 -/* 073A48 80072E48 10600021 */ beqz $v1, .L80072ED0 -/* 073A4C 80072E4C 00643821 */ addu $a3, $v1, $a0 -/* 073A50 80072E50 3C0A8012 */ lui $t2, %hi(D_801241F0) # $t2, 0x8012 -/* 073A54 80072E54 3C098012 */ lui $t1, %hi(D_801241EC) # $t1, 0x8012 -/* 073A58 80072E58 3C088012 */ lui $t0, %hi(D_801241F4) # $t0, 0x8012 -/* 073A5C 80072E5C 250841F4 */ addiu $t0, %lo(D_801241F4) # addiu $t0, $t0, 0x41f4 -/* 073A60 80072E60 252941EC */ addiu $t1, %lo(D_801241EC) # addiu $t1, $t1, 0x41ec -/* 073A64 80072E64 254A41F0 */ addiu $t2, %lo(D_801241F0) # addiu $t2, $t2, 0x41f0 -/* 073A68 80072E68 240B0080 */ li $t3, 128 -.L80072E6C: -/* 073A6C 80072E6C 8D050000 */ lw $a1, ($t0) -/* 073A70 80072E70 2483FFFF */ addiu $v1, $a0, -1 -/* 073A74 80072E74 14A0000A */ bnez $a1, .L80072EA0 -/* 073A78 80072E78 00C27824 */ and $t7, $a2, $v0 -/* 073A7C 80072E7C 8D580000 */ lw $t8, ($t2) -/* 073A80 80072E80 8D390000 */ lw $t9, ($t1) -/* 073A84 80072E84 01602825 */ move $a1, $t3 -/* 073A88 80072E88 A3380000 */ sb $t8, ($t9) -/* 073A8C 80072E8C 8D2C0000 */ lw $t4, ($t1) -/* 073A90 80072E90 AD0B0000 */ sw $t3, ($t0) -/* 073A94 80072E94 258D0001 */ addiu $t5, $t4, 1 -/* 073A98 80072E98 AD2D0000 */ sw $t5, ($t1) -/* 073A9C 80072E9C AD400000 */ sw $zero, ($t2) -.L80072EA0: -/* 073AA0 80072EA0 11E00005 */ beqz $t7, .L80072EB8 -/* 073AA4 80072EA4 0002C842 */ srl $t9, $v0, 1 -/* 073AA8 80072EA8 8D4E0000 */ lw $t6, ($t2) -/* 073AAC 80072EAC 00000000 */ nop -/* 073AB0 80072EB0 01C5C025 */ or $t8, $t6, $a1 -/* 073AB4 80072EB4 AD580000 */ sw $t8, ($t2) -.L80072EB8: -/* 073AB8 80072EB8 00056042 */ srl $t4, $a1, 1 -/* 073ABC 80072EBC AD0C0000 */ sw $t4, ($t0) -/* 073AC0 80072EC0 03201025 */ move $v0, $t9 -/* 073AC4 80072EC4 14E3FFE9 */ bne $a3, $v1, .L80072E6C -/* 073AC8 80072EC8 00602025 */ move $a0, $v1 -/* 073ACC 80072ECC 1060005D */ beqz $v1, .L80073044 -.L80072ED0: -/* 073AD0 80072ED0 3C088012 */ lui $t0, %hi(D_801241F4) # $t0, 0x8012 -/* 073AD4 80072ED4 3C098012 */ lui $t1, %hi(D_801241EC) # $t1, 0x8012 -/* 073AD8 80072ED8 3C0A8012 */ lui $t2, %hi(D_801241F0) # $t2, 0x8012 -/* 073ADC 80072EDC 254A41F0 */ addiu $t2, %lo(D_801241F0) # addiu $t2, $t2, 0x41f0 -/* 073AE0 80072EE0 252941EC */ addiu $t1, %lo(D_801241EC) # addiu $t1, $t1, 0x41ec -/* 073AE4 80072EE4 250841F4 */ addiu $t0, %lo(D_801241F4) # addiu $t0, $t0, 0x41f4 -/* 073AE8 80072EE8 240B0080 */ li $t3, 128 -.L80072EEC: -/* 073AEC 80072EEC 8D050000 */ lw $a1, ($t0) -/* 073AF0 80072EF0 00C2C824 */ and $t9, $a2, $v0 -/* 073AF4 80072EF4 14A0000A */ bnez $a1, .L80072F20 -/* 073AF8 80072EF8 2484FFFC */ addiu $a0, $a0, -4 -/* 073AFC 80072EFC 8D4D0000 */ lw $t5, ($t2) -/* 073B00 80072F00 8D2F0000 */ lw $t7, ($t1) -/* 073B04 80072F04 01602825 */ move $a1, $t3 -/* 073B08 80072F08 A1ED0000 */ sb $t5, ($t7) -/* 073B0C 80072F0C 8D2E0000 */ lw $t6, ($t1) -/* 073B10 80072F10 AD400000 */ sw $zero, ($t2) -/* 073B14 80072F14 25D80001 */ addiu $t8, $t6, 1 -/* 073B18 80072F18 AD380000 */ sw $t8, ($t1) -/* 073B1C 80072F1C AD0B0000 */ sw $t3, ($t0) -.L80072F20: -/* 073B20 80072F20 13200005 */ beqz $t9, .L80072F38 -/* 073B24 80072F24 00027842 */ srl $t7, $v0, 1 -/* 073B28 80072F28 8D4C0000 */ lw $t4, ($t2) -/* 073B2C 80072F2C 00000000 */ nop -/* 073B30 80072F30 01856825 */ or $t5, $t4, $a1 -/* 073B34 80072F34 AD4D0000 */ sw $t5, ($t2) -.L80072F38: -/* 073B38 80072F38 00057042 */ srl $t6, $a1, 1 -/* 073B3C 80072F3C 01E01025 */ move $v0, $t7 -/* 073B40 80072F40 AD0E0000 */ sw $t6, ($t0) -/* 073B44 80072F44 15C0000A */ bnez $t6, .L80072F70 -/* 073B48 80072F48 01C02825 */ move $a1, $t6 -/* 073B4C 80072F4C 8D580000 */ lw $t8, ($t2) -/* 073B50 80072F50 8D390000 */ lw $t9, ($t1) -/* 073B54 80072F54 01602825 */ move $a1, $t3 -/* 073B58 80072F58 A3380000 */ sb $t8, ($t9) -/* 073B5C 80072F5C 8D2C0000 */ lw $t4, ($t1) -/* 073B60 80072F60 AD0B0000 */ sw $t3, ($t0) -/* 073B64 80072F64 258D0001 */ addiu $t5, $t4, 1 -/* 073B68 80072F68 AD2D0000 */ sw $t5, ($t1) -/* 073B6C 80072F6C AD400000 */ sw $zero, ($t2) -.L80072F70: -/* 073B70 80072F70 00C27824 */ and $t7, $a2, $v0 -/* 073B74 80072F74 11E00005 */ beqz $t7, .L80072F8C -/* 073B78 80072F78 0002C842 */ srl $t9, $v0, 1 -/* 073B7C 80072F7C 8D4E0000 */ lw $t6, ($t2) -/* 073B80 80072F80 00000000 */ nop -/* 073B84 80072F84 01C5C025 */ or $t8, $t6, $a1 -/* 073B88 80072F88 AD580000 */ sw $t8, ($t2) -.L80072F8C: -/* 073B8C 80072F8C 00056042 */ srl $t4, $a1, 1 -/* 073B90 80072F90 AD0C0000 */ sw $t4, ($t0) -/* 073B94 80072F94 01802825 */ move $a1, $t4 -/* 073B98 80072F98 1580000A */ bnez $t4, .L80072FC4 -/* 073B9C 80072F9C 03201025 */ move $v0, $t9 -/* 073BA0 80072FA0 8D4D0000 */ lw $t5, ($t2) -/* 073BA4 80072FA4 8D2F0000 */ lw $t7, ($t1) -/* 073BA8 80072FA8 01602825 */ move $a1, $t3 -/* 073BAC 80072FAC A1ED0000 */ sb $t5, ($t7) -/* 073BB0 80072FB0 8D2E0000 */ lw $t6, ($t1) -/* 073BB4 80072FB4 AD0B0000 */ sw $t3, ($t0) -/* 073BB8 80072FB8 25D80001 */ addiu $t8, $t6, 1 -/* 073BBC 80072FBC AD380000 */ sw $t8, ($t1) -/* 073BC0 80072FC0 AD400000 */ sw $zero, ($t2) -.L80072FC4: -/* 073BC4 80072FC4 00C2C824 */ and $t9, $a2, $v0 -/* 073BC8 80072FC8 13200005 */ beqz $t9, .L80072FE0 -/* 073BCC 80072FCC 00027842 */ srl $t7, $v0, 1 -/* 073BD0 80072FD0 8D4C0000 */ lw $t4, ($t2) -/* 073BD4 80072FD4 00000000 */ nop -/* 073BD8 80072FD8 01856825 */ or $t5, $t4, $a1 -/* 073BDC 80072FDC AD4D0000 */ sw $t5, ($t2) -.L80072FE0: -/* 073BE0 80072FE0 00057042 */ srl $t6, $a1, 1 -/* 073BE4 80072FE4 AD0E0000 */ sw $t6, ($t0) -/* 073BE8 80072FE8 01C02825 */ move $a1, $t6 -/* 073BEC 80072FEC 15C0000A */ bnez $t6, .L80073018 -/* 073BF0 80072FF0 01E01025 */ move $v0, $t7 -/* 073BF4 80072FF4 8D580000 */ lw $t8, ($t2) -/* 073BF8 80072FF8 8D390000 */ lw $t9, ($t1) -/* 073BFC 80072FFC 01602825 */ move $a1, $t3 -/* 073C00 80073000 A3380000 */ sb $t8, ($t9) -/* 073C04 80073004 8D2C0000 */ lw $t4, ($t1) -/* 073C08 80073008 AD0B0000 */ sw $t3, ($t0) -/* 073C0C 8007300C 258D0001 */ addiu $t5, $t4, 1 -/* 073C10 80073010 AD2D0000 */ sw $t5, ($t1) -/* 073C14 80073014 AD400000 */ sw $zero, ($t2) -.L80073018: -/* 073C18 80073018 00C27824 */ and $t7, $a2, $v0 -/* 073C1C 8007301C 11E00005 */ beqz $t7, .L80073034 -/* 073C20 80073020 0002C842 */ srl $t9, $v0, 1 -/* 073C24 80073024 8D4E0000 */ lw $t6, ($t2) -/* 073C28 80073028 00000000 */ nop -/* 073C2C 8007302C 01C5C025 */ or $t8, $t6, $a1 -/* 073C30 80073030 AD580000 */ sw $t8, ($t2) -.L80073034: -/* 073C34 80073034 00056042 */ srl $t4, $a1, 1 -/* 073C38 80073038 AD0C0000 */ sw $t4, ($t0) -/* 073C3C 8007303C 1480FFAB */ bnez $a0, .L80072EEC -/* 073C40 80073040 03201025 */ move $v0, $t9 -.L80073044: -/* 073C44 80073044 3C098012 */ lui $t1, %hi(D_801241EC) # $t1, 0x8012 -/* 073C48 80073048 3C0A8012 */ lui $t2, %hi(D_801241F0) # $t2, 0x8012 -/* 073C4C 8007304C 254A41F0 */ addiu $t2, %lo(D_801241F0) # addiu $t2, $t2, 0x41f0 -/* 073C50 80073050 252941EC */ addiu $t1, %lo(D_801241EC) # addiu $t1, $t1, 0x41ec -/* 073C54 80073054 8D2F0000 */ lw $t7, ($t1) -/* 073C58 80073058 8D4D0000 */ lw $t5, ($t2) -/* 073C5C 8007305C 00000000 */ nop -/* 073C60 80073060 A1ED0000 */ sb $t5, ($t7) -.L80073064: -/* 073C64 80073064 03E00008 */ jr $ra -/* 073C68 80073068 00000000 */ nop - -glabel func_8007306C -/* 073C6C 8007306C 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 073C70 80073070 AFBF0024 */ sw $ra, 0x24($sp) -/* 073C74 80073074 AFB20020 */ sw $s2, 0x20($sp) -/* 073C78 80073078 AFB1001C */ sw $s1, 0x1c($sp) -/* 073C7C 8007307C 00A08825 */ move $s1, $a1 -/* 073C80 80073080 00809025 */ move $s2, $a0 -/* 073C84 80073084 0C01BA65 */ jal func_8006E994 -/* 073C88 80073088 AFB00018 */ sw $s0, 0x18($sp) -/* 073C8C 8007308C 27A40048 */ addiu $a0, $sp, 0x48 -/* 073C90 80073090 0C01AC89 */ jal func_8006B224 -/* 073C94 80073094 27A50044 */ addiu $a1, $sp, 0x44 -/* 073C98 80073098 3C018012 */ lui $at, %hi(D_801241EC) # $at, 0x8012 -/* 073C9C 8007309C 3C028012 */ lui $v0, %hi(D_801241F4) # $v0, 0x8012 -/* 073CA0 800730A0 AC3141EC */ sw $s1, %lo(D_801241EC)($at) -/* 073CA4 800730A4 244241F4 */ addiu $v0, %lo(D_801241F4) # addiu $v0, $v0, 0x41f4 -/* 073CA8 800730A8 AC400000 */ sw $zero, ($v0) -/* 073CAC 800730AC 3C018012 */ lui $at, %hi(D_801241F0) # $at, 0x8012 -/* 073CB0 800730B0 AC2041F0 */ sw $zero, %lo(D_801241F0)($at) -/* 073CB4 800730B4 0C01CB15 */ jal func_80072C54 -/* 073CB8 800730B8 24040010 */ li $a0, 16 -/* 073CBC 800730BC 2444FFFB */ addiu $a0, $v0, -5 -/* 073CC0 800730C0 00047C00 */ sll $t7, $a0, 0x10 -/* 073CC4 800730C4 000F2403 */ sra $a0, $t7, 0x10 -/* 073CC8 800730C8 24100002 */ li $s0, 2 -/* 073CCC 800730CC 26230002 */ addiu $v1, $s1, 2 -.L800730D0: -/* 073CD0 800730D0 90790000 */ lbu $t9, ($v1) -/* 073CD4 800730D4 26100001 */ addiu $s0, $s0, 1 -/* 073CD8 800730D8 00992023 */ subu $a0, $a0, $t9 -/* 073CDC 800730DC 00044400 */ sll $t0, $a0, 0x10 -/* 073CE0 800730E0 00084C03 */ sra $t1, $t0, 0x10 -/* 073CE4 800730E4 2A010028 */ slti $at, $s0, 0x28 -/* 073CE8 800730E8 01202025 */ move $a0, $t1 -/* 073CEC 800730EC 1420FFF8 */ bnez $at, .L800730D0 -/* 073CF0 800730F0 24630001 */ addiu $v1, $v1, 1 -/* 073CF4 800730F4 15200077 */ bnez $t1, .L800732D4 -/* 073CF8 800730F8 8FBF0024 */ lw $ra, 0x24($sp) -/* 073CFC 800730FC 8FAA0048 */ lw $t2, 0x48($sp) -/* 073D00 80073100 00008025 */ move $s0, $zero -/* 073D04 80073104 1940002E */ blez $t2, .L800731C0 -/* 073D08 80073108 00008825 */ move $s1, $zero -.L8007310C: -/* 073D0C 8007310C 0C01AC53 */ jal func_8006B14C -/* 073D10 80073110 02002025 */ move $a0, $s0 -/* 073D14 80073114 10400005 */ beqz $v0, .L8007312C -/* 073D18 80073118 304B0040 */ andi $t3, $v0, 0x40 -/* 073D1C 8007311C 15600003 */ bnez $t3, .L8007312C -/* 073D20 80073120 24010008 */ li $at, 8 -/* 073D24 80073124 14410021 */ bne $v0, $at, .L800731AC -/* 073D28 80073128 8FAE0048 */ lw $t6, 0x48($sp) -.L8007312C: -/* 073D2C 8007312C 0C01CB15 */ jal func_80072C54 -/* 073D30 80073130 24040002 */ li $a0, 2 -/* 073D34 80073134 304300FF */ andi $v1, $v0, 0xff -/* 073D38 80073138 18600008 */ blez $v1, .L8007315C -/* 073D3C 8007313C 28610002 */ slti $at, $v1, 2 -/* 073D40 80073140 8E4C0004 */ lw $t4, 4($s2) -/* 073D44 80073144 00106880 */ sll $t5, $s0, 2 -/* 073D48 80073148 018D1021 */ addu $v0, $t4, $t5 -/* 073D4C 8007314C 8C4E0000 */ lw $t6, ($v0) -/* 073D50 80073150 00000000 */ nop -/* 073D54 80073154 35CF0001 */ ori $t7, $t6, 1 -/* 073D58 80073158 AC4F0000 */ sw $t7, ($v0) -.L8007315C: -/* 073D5C 8007315C 14200008 */ bnez $at, .L80073180 -/* 073D60 80073160 26310002 */ addiu $s1, $s1, 2 -/* 073D64 80073164 8E580004 */ lw $t8, 4($s2) -/* 073D68 80073168 0010C880 */ sll $t9, $s0, 2 -/* 073D6C 8007316C 03191021 */ addu $v0, $t8, $t9 -/* 073D70 80073170 8C480000 */ lw $t0, ($v0) -/* 073D74 80073174 00000000 */ nop -/* 073D78 80073178 35090002 */ ori $t1, $t0, 2 -/* 073D7C 8007317C AC490000 */ sw $t1, ($v0) -.L80073180: -/* 073D80 80073180 28610003 */ slti $at, $v1, 3 -/* 073D84 80073184 14200008 */ bnez $at, .L800731A8 -/* 073D88 80073188 00000000 */ nop -/* 073D8C 8007318C 8E4A0004 */ lw $t2, 4($s2) -/* 073D90 80073190 00105880 */ sll $t3, $s0, 2 -/* 073D94 80073194 014B1021 */ addu $v0, $t2, $t3 -/* 073D98 80073198 8C4C0000 */ lw $t4, ($v0) -/* 073D9C 8007319C 00000000 */ nop -/* 073DA0 800731A0 358D0004 */ ori $t5, $t4, 4 -/* 073DA4 800731A4 AC4D0000 */ sw $t5, ($v0) -.L800731A8: -/* 073DA8 800731A8 8FAE0048 */ lw $t6, 0x48($sp) -.L800731AC: -/* 073DAC 800731AC 26100001 */ addiu $s0, $s0, 1 -/* 073DB0 800731B0 020E082A */ slt $at, $s0, $t6 -/* 073DB4 800731B4 1420FFD5 */ bnez $at, .L8007310C -/* 073DB8 800731B8 00000000 */ nop -/* 073DBC 800731BC 00008025 */ move $s0, $zero -.L800731C0: -/* 073DC0 800731C0 240F0044 */ li $t7, 68 -/* 073DC4 800731C4 0C01CB15 */ jal func_80072C54 -/* 073DC8 800731C8 01F12023 */ subu $a0, $t7, $s1 -/* 073DCC 800731CC 0C01CB15 */ jal func_80072C54 -/* 073DD0 800731D0 24040006 */ li $a0, 6 -/* 073DD4 800731D4 A6420014 */ sh $v0, 0x14($s2) -/* 073DD8 800731D8 0C01CB15 */ jal func_80072C54 -/* 073DDC 800731DC 2404000A */ li $a0, 10 -/* 073DE0 800731E0 A642000E */ sh $v0, 0xe($s2) -/* 073DE4 800731E4 0C01CB15 */ jal func_80072C54 -/* 073DE8 800731E8 2404000C */ li $a0, 12 -/* 073DEC 800731EC A642000C */ sh $v0, 0xc($s2) -/* 073DF0 800731F0 8FB80044 */ lw $t8, 0x44($sp) -/* 073DF4 800731F4 00001825 */ move $v1, $zero -/* 073DF8 800731F8 1B00000E */ blez $t8, .L80073234 -/* 073DFC 800731FC 24040007 */ li $a0, 7 -.L80073200: -/* 073E00 80073200 0C01CB15 */ jal func_80072C54 -/* 073E04 80073204 AFA3002C */ sw $v1, 0x2c($sp) -/* 073E08 80073208 8FA3002C */ lw $v1, 0x2c($sp) -/* 073E0C 8007320C 8E590000 */ lw $t9, ($s2) -/* 073E10 80073210 26100001 */ addiu $s0, $s0, 1 -/* 073E14 80073214 03234021 */ addu $t0, $t9, $v1 -/* 073E18 80073218 A5020000 */ sh $v0, ($t0) -/* 073E1C 8007321C 8FA90044 */ lw $t1, 0x44($sp) -/* 073E20 80073220 24630002 */ addiu $v1, $v1, 2 -/* 073E24 80073224 0209082A */ slt $at, $s0, $t1 -/* 073E28 80073228 1420FFF5 */ bnez $at, .L80073200 -/* 073E2C 8007322C 24040007 */ li $a0, 7 -/* 073E30 80073230 00008025 */ move $s0, $zero -.L80073234: -/* 073E34 80073234 0C01CB15 */ jal func_80072C54 -/* 073E38 80073238 24040003 */ li $a0, 3 -/* 073E3C 8007323C A2420016 */ sb $v0, 0x16($s2) -/* 073E40 80073240 0C01CB15 */ jal func_80072C54 -/* 073E44 80073244 24040003 */ li $a0, 3 -/* 073E48 80073248 A2420017 */ sb $v0, 0x17($s2) -/* 073E4C 8007324C 8FAA0044 */ lw $t2, 0x44($sp) -/* 073E50 80073250 00000000 */ nop -/* 073E54 80073254 19400012 */ blez $t2, .L800732A0 -/* 073E58 80073258 00000000 */ nop -.L8007325C: -/* 073E5C 8007325C 0C01CB15 */ jal func_80072C54 -/* 073E60 80073260 24040010 */ li $a0, 16 -/* 073E64 80073264 00408825 */ move $s1, $v0 -/* 073E68 80073268 0C01AC75 */ jal func_8006B1D4 -/* 073E6C 8007326C 02002025 */ move $a0, $s0 -/* 073E70 80073270 8E4B0004 */ lw $t3, 4($s2) -/* 073E74 80073274 00026080 */ sll $t4, $v0, 2 -/* 073E78 80073278 016C1821 */ addu $v1, $t3, $t4 -/* 073E7C 8007327C 8C6D0000 */ lw $t5, ($v1) -/* 073E80 80073280 00117400 */ sll $t6, $s1, 0x10 -/* 073E84 80073284 01AE7825 */ or $t7, $t5, $t6 -/* 073E88 80073288 AC6F0000 */ sw $t7, ($v1) -/* 073E8C 8007328C 8FB80044 */ lw $t8, 0x44($sp) -/* 073E90 80073290 26100001 */ addiu $s0, $s0, 1 -/* 073E94 80073294 0218082A */ slt $at, $s0, $t8 -/* 073E98 80073298 1420FFF0 */ bnez $at, .L8007325C -/* 073E9C 8007329C 00000000 */ nop -.L800732A0: -/* 073EA0 800732A0 0C01CB15 */ jal func_80072C54 -/* 073EA4 800732A4 24040008 */ li $a0, 8 -/* 073EA8 800732A8 A6420008 */ sh $v0, 8($s2) -/* 073EAC 800732AC 0C01CB15 */ jal func_80072C54 -/* 073EB0 800732B0 24040020 */ li $a0, 32 -/* 073EB4 800732B4 AE420010 */ sw $v0, 0x10($s2) -/* 073EB8 800732B8 0C01CB15 */ jal func_80072C54 -/* 073EBC 800732BC 24040010 */ li $a0, 16 -/* 073EC0 800732C0 AE420050 */ sw $v0, 0x50($s2) -/* 073EC4 800732C4 0C01CB15 */ jal func_80072C54 -/* 073EC8 800732C8 24040008 */ li $a0, 8 -/* 073ECC 800732CC A240004B */ sb $zero, 0x4b($s2) -/* 073ED0 800732D0 8FBF0024 */ lw $ra, 0x24($sp) -.L800732D4: -/* 073ED4 800732D4 8FB00018 */ lw $s0, 0x18($sp) -/* 073ED8 800732D8 8FB1001C */ lw $s1, 0x1c($sp) -/* 073EDC 800732DC 8FB20020 */ lw $s2, 0x20($sp) -/* 073EE0 800732E0 03E00008 */ jr $ra -/* 073EE4 800732E4 27BD0050 */ addiu $sp, $sp, 0x50 - -glabel func_800732E8 -/* 073EE8 800732E8 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 073EEC 800732EC AFB20020 */ sw $s2, 0x20($sp) -/* 073EF0 800732F0 00809025 */ move $s2, $a0 -/* 073EF4 800732F4 AFBF0024 */ sw $ra, 0x24($sp) -/* 073EF8 800732F8 AFA5004C */ sw $a1, 0x4c($sp) -/* 073EFC 800732FC AFB1001C */ sw $s1, 0x1c($sp) -/* 073F00 80073300 AFB00018 */ sw $s0, 0x18($sp) -/* 073F04 80073304 27A5003C */ addiu $a1, $sp, 0x3c -/* 073F08 80073308 0C01AC89 */ jal func_8006B224 -/* 073F0C 8007330C 27A40040 */ addiu $a0, $sp, 0x40 -/* 073F10 80073310 8FAE004C */ lw $t6, 0x4c($sp) -/* 073F14 80073314 3C018012 */ lui $at, %hi(D_801241EC) # $at, 0x8012 -/* 073F18 80073318 AC2E41EC */ sw $t6, %lo(D_801241EC)($at) -/* 073F1C 8007331C 3C018012 */ lui $at, %hi(D_801241F0) # $at, 0x8012 -/* 073F20 80073320 AC2041F0 */ sw $zero, %lo(D_801241F0)($at) -/* 073F24 80073324 3C018012 */ lui $at, %hi(D_801241F4) # $at, 0x8012 -/* 073F28 80073328 240F0080 */ li $t7, 128 -/* 073F2C 8007332C AC2F41F4 */ sw $t7, %lo(D_801241F4)($at) -/* 073F30 80073330 24040010 */ li $a0, 16 -/* 073F34 80073334 0C01CB8A */ jal func_80072E28 -/* 073F38 80073338 00002825 */ move $a1, $zero -/* 073F3C 8007333C 8FB80040 */ lw $t8, 0x40($sp) -/* 073F40 80073340 00008825 */ move $s1, $zero -/* 073F44 80073344 1B000025 */ blez $t8, .L800733DC -/* 073F48 80073348 00008025 */ move $s0, $zero -.L8007334C: -/* 073F4C 8007334C 0C01AC53 */ jal func_8006B14C -/* 073F50 80073350 02202025 */ move $a0, $s1 -/* 073F54 80073354 10400005 */ beqz $v0, .L8007336C -/* 073F58 80073358 30590040 */ andi $t9, $v0, 0x40 -/* 073F5C 8007335C 17200003 */ bnez $t9, .L8007336C -/* 073F60 80073360 24010008 */ li $at, 8 -/* 073F64 80073364 14410018 */ bne $v0, $at, .L800733C8 -/* 073F68 80073368 8FB80040 */ lw $t8, 0x40($sp) -.L8007336C: -/* 073F6C 8007336C 8E480004 */ lw $t0, 4($s2) -/* 073F70 80073370 00114880 */ sll $t1, $s1, 2 -/* 073F74 80073374 01095021 */ addu $t2, $t0, $t1 -/* 073F78 80073378 8D420000 */ lw $v0, ($t2) -/* 073F7C 8007337C 00002825 */ move $a1, $zero -/* 073F80 80073380 304B0001 */ andi $t3, $v0, 1 -/* 073F84 80073384 11600002 */ beqz $t3, .L80073390 -/* 073F88 80073388 304C0002 */ andi $t4, $v0, 2 -/* 073F8C 8007338C 24050001 */ li $a1, 1 -.L80073390: -/* 073F90 80073390 11800004 */ beqz $t4, .L800733A4 -/* 073F94 80073394 304E0004 */ andi $t6, $v0, 4 -/* 073F98 80073398 24A50001 */ addiu $a1, $a1, 1 -/* 073F9C 8007339C 30AD00FF */ andi $t5, $a1, 0xff -/* 073FA0 800733A0 01A02825 */ move $a1, $t5 -.L800733A4: -/* 073FA4 800733A4 11C00004 */ beqz $t6, .L800733B8 -/* 073FA8 800733A8 00000000 */ nop -/* 073FAC 800733AC 24A50001 */ addiu $a1, $a1, 1 -/* 073FB0 800733B0 30AF00FF */ andi $t7, $a1, 0xff -/* 073FB4 800733B4 01E02825 */ move $a1, $t7 -.L800733B8: -/* 073FB8 800733B8 0C01CB8A */ jal func_80072E28 -/* 073FBC 800733BC 24040002 */ li $a0, 2 -/* 073FC0 800733C0 26100002 */ addiu $s0, $s0, 2 -/* 073FC4 800733C4 8FB80040 */ lw $t8, 0x40($sp) -.L800733C8: -/* 073FC8 800733C8 26310001 */ addiu $s1, $s1, 1 -/* 073FCC 800733CC 0238082A */ slt $at, $s1, $t8 -/* 073FD0 800733D0 1420FFDE */ bnez $at, .L8007334C -/* 073FD4 800733D4 00000000 */ nop -/* 073FD8 800733D8 00008825 */ move $s1, $zero -.L800733DC: -/* 073FDC 800733DC 24190044 */ li $t9, 68 -/* 073FE0 800733E0 03302023 */ subu $a0, $t9, $s0 -/* 073FE4 800733E4 0C01CB8A */ jal func_80072E28 -/* 073FE8 800733E8 00002825 */ move $a1, $zero -/* 073FEC 800733EC 96450014 */ lhu $a1, 0x14($s2) -/* 073FF0 800733F0 0C01CB8A */ jal func_80072E28 -/* 073FF4 800733F4 24040006 */ li $a0, 6 -/* 073FF8 800733F8 9645000E */ lhu $a1, 0xe($s2) -/* 073FFC 800733FC 0C01CB8A */ jal func_80072E28 -/* 074000 80073400 2404000A */ li $a0, 10 -/* 074004 80073404 9645000C */ lhu $a1, 0xc($s2) -/* 074008 80073408 0C01CB8A */ jal func_80072E28 -/* 07400C 8007340C 2404000C */ li $a0, 12 -/* 074010 80073410 8FA8003C */ lw $t0, 0x3c($sp) -/* 074014 80073414 00008025 */ move $s0, $zero -/* 074018 80073418 1900000D */ blez $t0, .L80073450 -/* 07401C 8007341C 00000000 */ nop -.L80073420: -/* 074020 80073420 8E490000 */ lw $t1, ($s2) -/* 074024 80073424 24040007 */ li $a0, 7 -/* 074028 80073428 01305021 */ addu $t2, $t1, $s0 -/* 07402C 8007342C 85450000 */ lh $a1, ($t2) -/* 074030 80073430 0C01CB8A */ jal func_80072E28 -/* 074034 80073434 00000000 */ nop -/* 074038 80073438 8FAB003C */ lw $t3, 0x3c($sp) -/* 07403C 8007343C 26310001 */ addiu $s1, $s1, 1 -/* 074040 80073440 022B082A */ slt $at, $s1, $t3 -/* 074044 80073444 1420FFF6 */ bnez $at, .L80073420 -/* 074048 80073448 26100002 */ addiu $s0, $s0, 2 -/* 07404C 8007344C 00008825 */ move $s1, $zero -.L80073450: -/* 074050 80073450 92450016 */ lbu $a1, 0x16($s2) -/* 074054 80073454 0C01CB8A */ jal func_80072E28 -/* 074058 80073458 24040003 */ li $a0, 3 -/* 07405C 8007345C 92450017 */ lbu $a1, 0x17($s2) -/* 074060 80073460 0C01CB8A */ jal func_80072E28 -/* 074064 80073464 24040003 */ li $a0, 3 -/* 074068 80073468 8FAC003C */ lw $t4, 0x3c($sp) -/* 07406C 8007346C 00000000 */ nop -/* 074070 80073470 19800010 */ blez $t4, .L800734B4 -/* 074074 80073474 00000000 */ nop -.L80073478: -/* 074078 80073478 0C01AC75 */ jal func_8006B1D4 -/* 07407C 8007347C 02202025 */ move $a0, $s1 -/* 074080 80073480 8E4D0004 */ lw $t5, 4($s2) -/* 074084 80073484 00027080 */ sll $t6, $v0, 2 -/* 074088 80073488 01AE7821 */ addu $t7, $t5, $t6 -/* 07408C 8007348C 8DE50000 */ lw $a1, ($t7) -/* 074090 80073490 24040010 */ li $a0, 16 -/* 074094 80073494 0005C403 */ sra $t8, $a1, 0x10 -/* 074098 80073498 0C01CB8A */ jal func_80072E28 -/* 07409C 8007349C 3305FFFF */ andi $a1, $t8, 0xffff -/* 0740A0 800734A0 8FA8003C */ lw $t0, 0x3c($sp) -/* 0740A4 800734A4 26310001 */ addiu $s1, $s1, 1 -/* 0740A8 800734A8 0228082A */ slt $at, $s1, $t0 -/* 0740AC 800734AC 1420FFF2 */ bnez $at, .L80073478 -/* 0740B0 800734B0 00000000 */ nop -.L800734B4: -/* 0740B4 800734B4 96450008 */ lhu $a1, 8($s2) -/* 0740B8 800734B8 0C01CB8A */ jal func_80072E28 -/* 0740BC 800734BC 24040008 */ li $a0, 8 -/* 0740C0 800734C0 8E450010 */ lw $a1, 0x10($s2) -/* 0740C4 800734C4 0C01CB8A */ jal func_80072E28 -/* 0740C8 800734C8 24040020 */ li $a0, 32 -/* 0740CC 800734CC 8E450050 */ lw $a1, 0x50($s2) -/* 0740D0 800734D0 0C01CB8A */ jal func_80072E28 -/* 0740D4 800734D4 24040010 */ li $a0, 16 -/* 0740D8 800734D8 24040008 */ li $a0, 8 -/* 0740DC 800734DC 0C01CB8A */ jal func_80072E28 -/* 0740E0 800734E0 00002825 */ move $a1, $zero -/* 0740E4 800734E4 8FA6004C */ lw $a2, 0x4c($sp) -/* 0740E8 800734E8 24110004 */ li $s1, 4 -/* 0740EC 800734EC 24C40002 */ addiu $a0, $a2, 2 -/* 0740F0 800734F0 90820000 */ lbu $v0, ($a0) -/* 0740F4 800734F4 908B0001 */ lbu $t3, 1($a0) -/* 0740F8 800734F8 244A0005 */ addiu $t2, $v0, 5 -/* 0740FC 800734FC 014B1021 */ addu $v0, $t2, $t3 -/* 074100 80073500 00026400 */ sll $t4, $v0, 0x10 -/* 074104 80073504 000C1403 */ sra $v0, $t4, 0x10 -/* 074108 80073508 24040028 */ li $a0, 40 -/* 07410C 8007350C 24C30004 */ addiu $v1, $a2, 4 -.L80073510: -/* 074110 80073510 906E0000 */ lbu $t6, ($v1) -/* 074114 80073514 90790001 */ lbu $t9, 1($v1) -/* 074118 80073518 906A0002 */ lbu $t2, 2($v1) -/* 07411C 8007351C 004EC021 */ addu $t8, $v0, $t6 -/* 074120 80073520 906D0003 */ lbu $t5, 3($v1) -/* 074124 80073524 03194821 */ addu $t1, $t8, $t9 -/* 074128 80073528 012A6021 */ addu $t4, $t1, $t2 -/* 07412C 8007352C 018D1021 */ addu $v0, $t4, $t5 -/* 074130 80073530 00027400 */ sll $t6, $v0, 0x10 -/* 074134 80073534 000E7C03 */ sra $t7, $t6, 0x10 -/* 074138 80073538 26310004 */ addiu $s1, $s1, 4 -/* 07413C 8007353C 01E01025 */ move $v0, $t7 -/* 074140 80073540 1624FFF3 */ bne $s1, $a0, .L80073510 -/* 074144 80073544 24630004 */ addiu $v1, $v1, 4 -/* 074148 80073548 3C018012 */ lui $at, %hi(D_801241EC) # $at, 0x8012 -/* 07414C 8007354C AC2641EC */ sw $a2, %lo(D_801241EC)($at) -/* 074150 80073550 3C018012 */ lui $at, %hi(D_801241F0) # $at, 0x8012 -/* 074154 80073554 AC2041F0 */ sw $zero, %lo(D_801241F0)($at) -/* 074158 80073558 3C018012 */ lui $at, %hi(D_801241F4) # $at, 0x8012 -/* 07415C 8007355C 24180080 */ li $t8, 128 -/* 074160 80073560 AC3841F4 */ sw $t8, %lo(D_801241F4)($at) -/* 074164 80073564 24040010 */ li $a0, 16 -/* 074168 80073568 0C01CB8A */ jal func_80072E28 -/* 07416C 8007356C 01E02825 */ move $a1, $t7 -/* 074170 80073570 8FBF0024 */ lw $ra, 0x24($sp) -/* 074174 80073574 8FB00018 */ lw $s0, 0x18($sp) -/* 074178 80073578 8FB1001C */ lw $s1, 0x1c($sp) -/* 07417C 8007357C 8FB20020 */ lw $s2, 0x20($sp) -/* 074180 80073580 03E00008 */ jr $ra -/* 074184 80073584 27BD0048 */ addiu $sp, $sp, 0x48 - -glabel func_80073588 -/* 074188 80073588 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 07418C 8007358C AFA5004C */ sw $a1, 0x4c($sp) -/* 074190 80073590 30C500FF */ andi $a1, $a2, 0xff -/* 074194 80073594 AFBF0024 */ sw $ra, 0x24($sp) -/* 074198 80073598 AFB30020 */ sw $s3, 0x20($sp) -/* 07419C 8007359C 00809825 */ move $s3, $a0 -/* 0741A0 800735A0 AFB2001C */ sw $s2, 0x1c($sp) -/* 0741A4 800735A4 AFB10018 */ sw $s1, 0x18($sp) -/* 0741A8 800735A8 AFB00014 */ sw $s0, 0x14($sp) -/* 0741AC 800735AC AFA60050 */ sw $a2, 0x50($sp) -/* 0741B0 800735B0 0C01B9DC */ jal func_8006E770 -/* 0741B4 800735B4 AFA5002C */ sw $a1, 0x2c($sp) -/* 0741B8 800735B8 27A40040 */ addiu $a0, $sp, 0x40 -/* 0741BC 800735BC 0C01AC89 */ jal func_8006B224 -/* 0741C0 800735C0 27A5003C */ addiu $a1, $sp, 0x3c -/* 0741C4 800735C4 8FAF002C */ lw $t7, 0x2c($sp) -/* 0741C8 800735C8 8FB9004C */ lw $t9, 0x4c($sp) -/* 0741CC 800735CC 31F80001 */ andi $t8, $t7, 1 -/* 0741D0 800735D0 13000054 */ beqz $t8, .L80073724 -/* 0741D4 800735D4 3C018012 */ lui $at, %hi(D_801241EC) # $at, 0x8012 -/* 0741D8 800735D8 AC3941EC */ sw $t9, %lo(D_801241EC)($at) -/* 0741DC 800735DC 3C018012 */ lui $at, %hi(D_801241F0) # $at, 0x8012 -/* 0741E0 800735E0 AC2041F0 */ sw $zero, %lo(D_801241F0)($at) -/* 0741E4 800735E4 3C018012 */ lui $at, %hi(D_801241F4) # $at, 0x8012 -/* 0741E8 800735E8 AC2041F4 */ sw $zero, %lo(D_801241F4)($at) -/* 0741EC 800735EC 24110002 */ li $s1, 2 -/* 0741F0 800735F0 24100005 */ li $s0, 5 -/* 0741F4 800735F4 27220002 */ addiu $v0, $t9, 2 -.L800735F8: -/* 0741F8 800735F8 90480000 */ lbu $t0, ($v0) -/* 0741FC 800735FC 26310001 */ addiu $s1, $s1, 1 -/* 074200 80073600 02088021 */ addu $s0, $s0, $t0 -/* 074204 80073604 2A2100C0 */ slti $at, $s1, 0xc0 -/* 074208 80073608 00104C00 */ sll $t1, $s0, 0x10 -/* 07420C 8007360C 24420001 */ addiu $v0, $v0, 1 -/* 074210 80073610 1420FFF9 */ bnez $at, .L800735F8 -/* 074214 80073614 00098403 */ sra $s0, $t1, 0x10 -/* 074218 80073618 0C01CB15 */ jal func_80072C54 -/* 07421C 8007361C 24040010 */ li $a0, 16 -/* 074220 80073620 02028023 */ subu $s0, $s0, $v0 -/* 074224 80073624 00105C00 */ sll $t3, $s0, 0x10 -/* 074228 80073628 000B6403 */ sra $t4, $t3, 0x10 -/* 07422C 8007362C 1580003E */ bnez $t4, .L80073728 -/* 074230 80073630 8FAD002C */ lw $t5, 0x2c($sp) -/* 074234 80073634 8FAD0040 */ lw $t5, 0x40($sp) -/* 074238 80073638 00008825 */ move $s1, $zero -/* 07423C 8007363C 19A0003A */ blez $t5, .L80073728 -/* 074240 80073640 8FAD002C */ lw $t5, 0x2c($sp) -.L80073644: -/* 074244 80073644 0C01AC53 */ jal func_8006B14C -/* 074248 80073648 02202025 */ move $a0, $s1 -/* 07424C 8007364C 14400031 */ bnez $v0, .L80073714 -/* 074250 80073650 8FAC0040 */ lw $t4, 0x40($sp) -/* 074254 80073654 0C01AC3E */ jal func_8006B0F8 -/* 074258 80073658 02202025 */ move $a0, $s1 -/* 07425C 8007365C 00029400 */ sll $s2, $v0, 0x10 -/* 074260 80073660 00127403 */ sra $t6, $s2, 0x10 -/* 074264 80073664 30590001 */ andi $t9, $v0, 1 -/* 074268 80073668 1320000D */ beqz $t9, .L800736A0 -/* 07426C 8007366C 01C09025 */ move $s2, $t6 -/* 074270 80073670 24040010 */ li $a0, 16 -/* 074274 80073674 0C01CB15 */ jal func_80072C54 -/* 074278 80073678 00118040 */ sll $s0, $s1, 1 -/* 07427C 8007367C 8E680024 */ lw $t0, 0x24($s3) -/* 074280 80073680 24040010 */ li $a0, 16 -/* 074284 80073684 01104821 */ addu $t1, $t0, $s0 -/* 074288 80073688 0C01CB15 */ jal func_80072C54 -/* 07428C 8007368C A5220000 */ sh $v0, ($t1) -/* 074290 80073690 8E6A0018 */ lw $t2, 0x18($s3) -/* 074294 80073694 00000000 */ nop -/* 074298 80073698 01505821 */ addu $t3, $t2, $s0 -/* 07429C 8007369C A5620000 */ sh $v0, ($t3) -.L800736A0: -/* 0742A0 800736A0 324C0002 */ andi $t4, $s2, 2 -/* 0742A4 800736A4 1180000C */ beqz $t4, .L800736D8 -/* 0742A8 800736A8 24040010 */ li $a0, 16 -/* 0742AC 800736AC 0C01CB15 */ jal func_80072C54 -/* 0742B0 800736B0 00118040 */ sll $s0, $s1, 1 -/* 0742B4 800736B4 8E6D0028 */ lw $t5, 0x28($s3) -/* 0742B8 800736B8 24040010 */ li $a0, 16 -/* 0742BC 800736BC 01B07021 */ addu $t6, $t5, $s0 -/* 0742C0 800736C0 0C01CB15 */ jal func_80072C54 -/* 0742C4 800736C4 A5C20000 */ sh $v0, ($t6) -/* 0742C8 800736C8 8E6F001C */ lw $t7, 0x1c($s3) -/* 0742CC 800736CC 00000000 */ nop -/* 0742D0 800736D0 01F0C021 */ addu $t8, $t7, $s0 -/* 0742D4 800736D4 A7020000 */ sh $v0, ($t8) -.L800736D8: -/* 0742D8 800736D8 32590004 */ andi $t9, $s2, 4 -/* 0742DC 800736DC 1320000C */ beqz $t9, .L80073710 -/* 0742E0 800736E0 24040010 */ li $a0, 16 -/* 0742E4 800736E4 0C01CB15 */ jal func_80072C54 -/* 0742E8 800736E8 00118040 */ sll $s0, $s1, 1 -/* 0742EC 800736EC 8E68002C */ lw $t0, 0x2c($s3) -/* 0742F0 800736F0 24040010 */ li $a0, 16 -/* 0742F4 800736F4 01104821 */ addu $t1, $t0, $s0 -/* 0742F8 800736F8 0C01CB15 */ jal func_80072C54 -/* 0742FC 800736FC A5220000 */ sh $v0, ($t1) -/* 074300 80073700 8E6A0020 */ lw $t2, 0x20($s3) -/* 074304 80073704 00000000 */ nop -/* 074308 80073708 01505821 */ addu $t3, $t2, $s0 -/* 07430C 8007370C A5620000 */ sh $v0, ($t3) -.L80073710: -/* 074310 80073710 8FAC0040 */ lw $t4, 0x40($sp) -.L80073714: -/* 074314 80073714 26310001 */ addiu $s1, $s1, 1 -/* 074318 80073718 022C082A */ slt $at, $s1, $t4 -/* 07431C 8007371C 1420FFC9 */ bnez $at, .L80073644 -/* 074320 80073720 00000000 */ nop -.L80073724: -/* 074324 80073724 8FAD002C */ lw $t5, 0x2c($sp) -.L80073728: -/* 074328 80073728 8FAF004C */ lw $t7, 0x4c($sp) -/* 07432C 8007372C 31AE0002 */ andi $t6, $t5, 2 -/* 074330 80073730 11C00055 */ beqz $t6, .L80073888 -/* 074334 80073734 25F800C0 */ addiu $t8, $t7, 0xc0 -/* 074338 80073738 3C018012 */ lui $at, %hi(D_801241EC) # $at, 0x8012 -/* 07433C 8007373C AC3841EC */ sw $t8, %lo(D_801241EC)($at) -/* 074340 80073740 3C018012 */ lui $at, %hi(D_801241F0) # $at, 0x8012 -/* 074344 80073744 AC2041F0 */ sw $zero, %lo(D_801241F0)($at) -/* 074348 80073748 3C018012 */ lui $at, %hi(D_801241F4) # $at, 0x8012 -/* 07434C 8007374C AC2041F4 */ sw $zero, %lo(D_801241F4)($at) -/* 074350 80073750 24110002 */ li $s1, 2 -/* 074354 80073754 24100005 */ li $s0, 5 -/* 074358 80073758 27020002 */ addiu $v0, $t8, 2 -.L8007375C: -/* 07435C 8007375C 90590000 */ lbu $t9, ($v0) -/* 074360 80073760 26310001 */ addiu $s1, $s1, 1 -/* 074364 80073764 02198021 */ addu $s0, $s0, $t9 -/* 074368 80073768 2A2100C0 */ slti $at, $s1, 0xc0 -/* 07436C 8007376C 00104400 */ sll $t0, $s0, 0x10 -/* 074370 80073770 24420001 */ addiu $v0, $v0, 1 -/* 074374 80073774 1420FFF9 */ bnez $at, .L8007375C -/* 074378 80073778 00088403 */ sra $s0, $t0, 0x10 -/* 07437C 8007377C 0C01CB15 */ jal func_80072C54 -/* 074380 80073780 24040010 */ li $a0, 16 -/* 074384 80073784 02028023 */ subu $s0, $s0, $v0 -/* 074388 80073788 00105400 */ sll $t2, $s0, 0x10 -/* 07438C 8007378C 000A5C03 */ sra $t3, $t2, 0x10 -/* 074390 80073790 1560003E */ bnez $t3, .L8007388C -/* 074394 80073794 8FBF0024 */ lw $ra, 0x24($sp) -/* 074398 80073798 8FAC0040 */ lw $t4, 0x40($sp) -/* 07439C 8007379C 00008825 */ move $s1, $zero -/* 0743A0 800737A0 1980003A */ blez $t4, .L8007388C -/* 0743A4 800737A4 8FBF0024 */ lw $ra, 0x24($sp) -.L800737A8: -/* 0743A8 800737A8 0C01AC53 */ jal func_8006B14C -/* 0743AC 800737AC 02202025 */ move $a0, $s1 -/* 0743B0 800737B0 14400031 */ bnez $v0, .L80073878 -/* 0743B4 800737B4 8FAB0040 */ lw $t3, 0x40($sp) -/* 0743B8 800737B8 0C01AC3E */ jal func_8006B0F8 -/* 0743BC 800737BC 02202025 */ move $a0, $s1 -/* 0743C0 800737C0 00029400 */ sll $s2, $v0, 0x10 -/* 0743C4 800737C4 00126C03 */ sra $t5, $s2, 0x10 -/* 0743C8 800737C8 30580001 */ andi $t8, $v0, 1 -/* 0743CC 800737CC 1300000D */ beqz $t8, .L80073804 -/* 0743D0 800737D0 01A09025 */ move $s2, $t5 -/* 0743D4 800737D4 24040010 */ li $a0, 16 -/* 0743D8 800737D8 0C01CB15 */ jal func_80072C54 -/* 0743DC 800737DC 00118040 */ sll $s0, $s1, 1 -/* 0743E0 800737E0 8E79003C */ lw $t9, 0x3c($s3) -/* 0743E4 800737E4 24040010 */ li $a0, 16 -/* 0743E8 800737E8 03304021 */ addu $t0, $t9, $s0 -/* 0743EC 800737EC 0C01CB15 */ jal func_80072C54 -/* 0743F0 800737F0 A5020000 */ sh $v0, ($t0) -/* 0743F4 800737F4 8E690030 */ lw $t1, 0x30($s3) -/* 0743F8 800737F8 00000000 */ nop -/* 0743FC 800737FC 01305021 */ addu $t2, $t1, $s0 -/* 074400 80073800 A5420000 */ sh $v0, ($t2) -.L80073804: -/* 074404 80073804 324B0002 */ andi $t3, $s2, 2 -/* 074408 80073808 1160000C */ beqz $t3, .L8007383C -/* 07440C 8007380C 24040010 */ li $a0, 16 -/* 074410 80073810 0C01CB15 */ jal func_80072C54 -/* 074414 80073814 00118040 */ sll $s0, $s1, 1 -/* 074418 80073818 8E6C0040 */ lw $t4, 0x40($s3) -/* 07441C 8007381C 24040010 */ li $a0, 16 -/* 074420 80073820 01906821 */ addu $t5, $t4, $s0 -/* 074424 80073824 0C01CB15 */ jal func_80072C54 -/* 074428 80073828 A5A20000 */ sh $v0, ($t5) -/* 07442C 8007382C 8E6E0034 */ lw $t6, 0x34($s3) -/* 074430 80073830 00000000 */ nop -/* 074434 80073834 01D07821 */ addu $t7, $t6, $s0 -/* 074438 80073838 A5E20000 */ sh $v0, ($t7) -.L8007383C: -/* 07443C 8007383C 32580004 */ andi $t8, $s2, 4 -/* 074440 80073840 1300000C */ beqz $t8, .L80073874 -/* 074444 80073844 24040010 */ li $a0, 16 -/* 074448 80073848 0C01CB15 */ jal func_80072C54 -/* 07444C 8007384C 00118040 */ sll $s0, $s1, 1 -/* 074450 80073850 8E790044 */ lw $t9, 0x44($s3) -/* 074454 80073854 24040010 */ li $a0, 16 -/* 074458 80073858 03304021 */ addu $t0, $t9, $s0 -/* 07445C 8007385C 0C01CB15 */ jal func_80072C54 -/* 074460 80073860 A5020000 */ sh $v0, ($t0) -/* 074464 80073864 8E690038 */ lw $t1, 0x38($s3) -/* 074468 80073868 00000000 */ nop -/* 07446C 8007386C 01305021 */ addu $t2, $t1, $s0 -/* 074470 80073870 A5420000 */ sh $v0, ($t2) -.L80073874: -/* 074474 80073874 8FAB0040 */ lw $t3, 0x40($sp) -.L80073878: -/* 074478 80073878 26310001 */ addiu $s1, $s1, 1 -/* 07447C 8007387C 022B082A */ slt $at, $s1, $t3 -/* 074480 80073880 1420FFC9 */ bnez $at, .L800737A8 -/* 074484 80073884 00000000 */ nop -.L80073888: -/* 074488 80073888 8FBF0024 */ lw $ra, 0x24($sp) -.L8007388C: -/* 07448C 8007388C 8FB00014 */ lw $s0, 0x14($sp) -/* 074490 80073890 8FB10018 */ lw $s1, 0x18($sp) -/* 074494 80073894 8FB2001C */ lw $s2, 0x1c($sp) -/* 074498 80073898 8FB30020 */ lw $s3, 0x20($sp) -/* 07449C 8007389C 03E00008 */ jr $ra -/* 0744A0 800738A0 27BD0048 */ addiu $sp, $sp, 0x48 - -glabel func_800738A4 -/* 0744A4 800738A4 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 0744A8 800738A8 AFB40028 */ sw $s4, 0x28($sp) -/* 0744AC 800738AC 0080A025 */ move $s4, $a0 -/* 0744B0 800738B0 AFBF002C */ sw $ra, 0x2c($sp) -/* 0744B4 800738B4 AFA50054 */ sw $a1, 0x54($sp) -/* 0744B8 800738B8 AFB30024 */ sw $s3, 0x24($sp) -/* 0744BC 800738BC AFB20020 */ sw $s2, 0x20($sp) -/* 0744C0 800738C0 AFB1001C */ sw $s1, 0x1c($sp) -/* 0744C4 800738C4 AFB00018 */ sw $s0, 0x18($sp) -/* 0744C8 800738C8 27A50044 */ addiu $a1, $sp, 0x44 -/* 0744CC 800738CC 0C01AC89 */ jal func_8006B224 -/* 0744D0 800738D0 27A40048 */ addiu $a0, $sp, 0x48 -/* 0744D4 800738D4 8FAE0054 */ lw $t6, 0x54($sp) -/* 0744D8 800738D8 3C018012 */ lui $at, %hi(D_801241EC) # $at, 0x8012 -/* 0744DC 800738DC AC2E41EC */ sw $t6, %lo(D_801241EC)($at) -/* 0744E0 800738E0 3C018012 */ lui $at, %hi(D_801241F0) # $at, 0x8012 -/* 0744E4 800738E4 AC2041F0 */ sw $zero, %lo(D_801241F0)($at) -/* 0744E8 800738E8 3C018012 */ lui $at, %hi(D_801241F4) # $at, 0x8012 -/* 0744EC 800738EC 240F0080 */ li $t7, 128 -/* 0744F0 800738F0 AC2F41F4 */ sw $t7, %lo(D_801241F4)($at) -/* 0744F4 800738F4 24040010 */ li $a0, 16 -/* 0744F8 800738F8 0C01CB8A */ jal func_80072E28 -/* 0744FC 800738FC 00002825 */ move $a1, $zero -/* 074500 80073900 8FB80048 */ lw $t8, 0x48($sp) -/* 074504 80073904 00009025 */ move $s2, $zero -/* 074508 80073908 1B000043 */ blez $t8, .L80073A18 -/* 07450C 8007390C 00008825 */ move $s1, $zero -.L80073910: -/* 074510 80073910 0C01AC53 */ jal func_8006B14C -/* 074514 80073914 02202025 */ move $a0, $s1 -/* 074518 80073918 1440003B */ bnez $v0, .L80073A08 -/* 07451C 8007391C 8FAF0048 */ lw $t7, 0x48($sp) -/* 074520 80073920 0C01AC3E */ jal func_8006B0F8 -/* 074524 80073924 02202025 */ move $a0, $s1 -/* 074528 80073928 00029C00 */ sll $s3, $v0, 0x10 -/* 07452C 8007392C 0013CC03 */ sra $t9, $s3, 0x10 -/* 074530 80073930 304A0001 */ andi $t2, $v0, 1 -/* 074534 80073934 1140000E */ beqz $t2, .L80073970 -/* 074538 80073938 03209825 */ move $s3, $t9 -/* 07453C 8007393C 8E8B0024 */ lw $t3, 0x24($s4) -/* 074540 80073940 00118040 */ sll $s0, $s1, 1 -/* 074544 80073944 01706021 */ addu $t4, $t3, $s0 -/* 074548 80073948 95850000 */ lhu $a1, ($t4) -/* 07454C 8007394C 0C01CB8A */ jal func_80072E28 -/* 074550 80073950 24040010 */ li $a0, 16 -/* 074554 80073954 8E8D0018 */ lw $t5, 0x18($s4) -/* 074558 80073958 24040010 */ li $a0, 16 -/* 07455C 8007395C 01B07021 */ addu $t6, $t5, $s0 -/* 074560 80073960 95C50000 */ lhu $a1, ($t6) -/* 074564 80073964 0C01CB8A */ jal func_80072E28 -/* 074568 80073968 00000000 */ nop -/* 07456C 8007396C 26520001 */ addiu $s2, $s2, 1 -.L80073970: -/* 074570 80073970 326F0002 */ andi $t7, $s3, 2 -/* 074574 80073974 11E0000F */ beqz $t7, .L800739B4 -/* 074578 80073978 326A0004 */ andi $t2, $s3, 4 -/* 07457C 8007397C 8E980028 */ lw $t8, 0x28($s4) -/* 074580 80073980 00118040 */ sll $s0, $s1, 1 -/* 074584 80073984 0310C821 */ addu $t9, $t8, $s0 -/* 074588 80073988 97250000 */ lhu $a1, ($t9) -/* 07458C 8007398C 0C01CB8A */ jal func_80072E28 -/* 074590 80073990 24040010 */ li $a0, 16 -/* 074594 80073994 8E88001C */ lw $t0, 0x1c($s4) -/* 074598 80073998 24040010 */ li $a0, 16 -/* 07459C 8007399C 01104821 */ addu $t1, $t0, $s0 -/* 0745A0 800739A0 95250000 */ lhu $a1, ($t1) -/* 0745A4 800739A4 0C01CB8A */ jal func_80072E28 -/* 0745A8 800739A8 00000000 */ nop -/* 0745AC 800739AC 26520001 */ addiu $s2, $s2, 1 -/* 0745B0 800739B0 326A0004 */ andi $t2, $s3, 4 -.L800739B4: -/* 0745B4 800739B4 1140000F */ beqz $t2, .L800739F4 -/* 0745B8 800739B8 2A410030 */ slti $at, $s2, 0x30 -/* 0745BC 800739BC 8E8B002C */ lw $t3, 0x2c($s4) -/* 0745C0 800739C0 00118040 */ sll $s0, $s1, 1 -/* 0745C4 800739C4 01706021 */ addu $t4, $t3, $s0 -/* 0745C8 800739C8 95850000 */ lhu $a1, ($t4) -/* 0745CC 800739CC 0C01CB8A */ jal func_80072E28 -/* 0745D0 800739D0 24040010 */ li $a0, 16 -/* 0745D4 800739D4 8E8D0020 */ lw $t5, 0x20($s4) -/* 0745D8 800739D8 24040010 */ li $a0, 16 -/* 0745DC 800739DC 01B07021 */ addu $t6, $t5, $s0 -/* 0745E0 800739E0 95C50000 */ lhu $a1, ($t6) -/* 0745E4 800739E4 0C01CB8A */ jal func_80072E28 -/* 0745E8 800739E8 00000000 */ nop -/* 0745EC 800739EC 26520001 */ addiu $s2, $s2, 1 -/* 0745F0 800739F0 2A410030 */ slti $at, $s2, 0x30 -.L800739F4: -/* 0745F4 800739F4 14200004 */ bnez $at, .L80073A08 -/* 0745F8 800739F8 8FAF0048 */ lw $t7, 0x48($sp) -/* 0745FC 800739FC 10000007 */ b .L80073A1C -/* 074600 80073A00 8FB80054 */ lw $t8, 0x54($sp) -/* 074604 80073A04 8FAF0048 */ lw $t7, 0x48($sp) -.L80073A08: -/* 074608 80073A08 26310001 */ addiu $s1, $s1, 1 -/* 07460C 80073A0C 022F082A */ slt $at, $s1, $t7 -/* 074610 80073A10 1420FFBF */ bnez $at, .L80073910 -/* 074614 80073A14 00000000 */ nop -.L80073A18: -/* 074618 80073A18 8FB80054 */ lw $t8, 0x54($sp) -.L80073A1C: -/* 07461C 80073A1C 3C018012 */ lui $at, %hi(D_801241EC) # $at, 0x8012 -/* 074620 80073A20 AC3841EC */ sw $t8, %lo(D_801241EC)($at) -/* 074624 80073A24 3C018012 */ lui $at, %hi(D_801241F0) # $at, 0x8012 -/* 074628 80073A28 AC2041F0 */ sw $zero, %lo(D_801241F0)($at) -/* 07462C 80073A2C 3C018012 */ lui $at, %hi(D_801241F4) # $at, 0x8012 -/* 074630 80073A30 24190080 */ li $t9, 128 -/* 074634 80073A34 AC3941F4 */ sw $t9, %lo(D_801241F4)($at) -/* 074638 80073A38 24110002 */ li $s1, 2 -/* 07463C 80073A3C 24030005 */ li $v1, 5 -/* 074640 80073A40 27020002 */ addiu $v0, $t8, 2 -.L80073A44: -/* 074644 80073A44 90480000 */ lbu $t0, ($v0) -/* 074648 80073A48 26310001 */ addiu $s1, $s1, 1 -/* 07464C 80073A4C 00681821 */ addu $v1, $v1, $t0 -/* 074650 80073A50 00034C00 */ sll $t1, $v1, 0x10 -/* 074654 80073A54 2A2100C0 */ slti $at, $s1, 0xc0 -/* 074658 80073A58 00095403 */ sra $t2, $t1, 0x10 -/* 07465C 80073A5C 24420001 */ addiu $v0, $v0, 1 -/* 074660 80073A60 1420FFF8 */ bnez $at, .L80073A44 -/* 074664 80073A64 01401825 */ move $v1, $t2 -/* 074668 80073A68 24040010 */ li $a0, 16 -/* 07466C 80073A6C 0C01CB8A */ jal func_80072E28 -/* 074670 80073A70 01402825 */ move $a1, $t2 -/* 074674 80073A74 8FB20054 */ lw $s2, 0x54($sp) -/* 074678 80073A78 3C018012 */ lui $at, %hi(D_801241EC) # $at, 0x8012 -/* 07467C 80073A7C 265200C0 */ addiu $s2, $s2, 0xc0 -/* 074680 80073A80 AC3241EC */ sw $s2, %lo(D_801241EC)($at) -/* 074684 80073A84 3C018012 */ lui $at, %hi(D_801241F0) # $at, 0x8012 -/* 074688 80073A88 AC2041F0 */ sw $zero, %lo(D_801241F0)($at) -/* 07468C 80073A8C 3C018012 */ lui $at, %hi(D_801241F4) # $at, 0x8012 -/* 074690 80073A90 240B0080 */ li $t3, 128 -/* 074694 80073A94 AC2B41F4 */ sw $t3, %lo(D_801241F4)($at) -/* 074698 80073A98 24040010 */ li $a0, 16 -/* 07469C 80073A9C 0C01CB8A */ jal func_80072E28 -/* 0746A0 80073AA0 00002825 */ move $a1, $zero -/* 0746A4 80073AA4 8FAC0048 */ lw $t4, 0x48($sp) -/* 0746A8 80073AA8 00008825 */ move $s1, $zero -/* 0746AC 80073AAC 1980003B */ blez $t4, .L80073B9C -/* 0746B0 80073AB0 00000000 */ nop -.L80073AB4: -/* 0746B4 80073AB4 0C01AC53 */ jal func_8006B14C -/* 0746B8 80073AB8 02202025 */ move $a0, $s1 -/* 0746BC 80073ABC 14400033 */ bnez $v0, .L80073B8C -/* 0746C0 80073AC0 8FAB0048 */ lw $t3, 0x48($sp) -/* 0746C4 80073AC4 0C01AC3E */ jal func_8006B0F8 -/* 0746C8 80073AC8 02202025 */ move $a0, $s1 -/* 0746CC 80073ACC 00029C00 */ sll $s3, $v0, 0x10 -/* 0746D0 80073AD0 00136C03 */ sra $t5, $s3, 0x10 -/* 0746D4 80073AD4 30590001 */ andi $t9, $v0, 1 -/* 0746D8 80073AD8 1320000D */ beqz $t9, .L80073B10 -/* 0746DC 80073ADC 01A09825 */ move $s3, $t5 -/* 0746E0 80073AE0 8E98003C */ lw $t8, 0x3c($s4) -/* 0746E4 80073AE4 00118040 */ sll $s0, $s1, 1 -/* 0746E8 80073AE8 03104021 */ addu $t0, $t8, $s0 -/* 0746EC 80073AEC 95050000 */ lhu $a1, ($t0) -/* 0746F0 80073AF0 0C01CB8A */ jal func_80072E28 -/* 0746F4 80073AF4 24040010 */ li $a0, 16 -/* 0746F8 80073AF8 8E890030 */ lw $t1, 0x30($s4) -/* 0746FC 80073AFC 24040010 */ li $a0, 16 -/* 074700 80073B00 01305021 */ addu $t2, $t1, $s0 -/* 074704 80073B04 95450000 */ lhu $a1, ($t2) -/* 074708 80073B08 0C01CB8A */ jal func_80072E28 -/* 07470C 80073B0C 00000000 */ nop -.L80073B10: -/* 074710 80073B10 326B0002 */ andi $t3, $s3, 2 -/* 074714 80073B14 1160000E */ beqz $t3, .L80073B50 -/* 074718 80073B18 32790004 */ andi $t9, $s3, 4 -/* 07471C 80073B1C 8E8C0040 */ lw $t4, 0x40($s4) -/* 074720 80073B20 00118040 */ sll $s0, $s1, 1 -/* 074724 80073B24 01906821 */ addu $t5, $t4, $s0 -/* 074728 80073B28 95A50000 */ lhu $a1, ($t5) -/* 07472C 80073B2C 0C01CB8A */ jal func_80072E28 -/* 074730 80073B30 24040010 */ li $a0, 16 -/* 074734 80073B34 8E8E0034 */ lw $t6, 0x34($s4) -/* 074738 80073B38 24040010 */ li $a0, 16 -/* 07473C 80073B3C 01D07821 */ addu $t7, $t6, $s0 -/* 074740 80073B40 95E50000 */ lhu $a1, ($t7) -/* 074744 80073B44 0C01CB8A */ jal func_80072E28 -/* 074748 80073B48 00000000 */ nop -/* 07474C 80073B4C 32790004 */ andi $t9, $s3, 4 -.L80073B50: -/* 074750 80073B50 1320000E */ beqz $t9, .L80073B8C -/* 074754 80073B54 8FAB0048 */ lw $t3, 0x48($sp) -/* 074758 80073B58 8E980044 */ lw $t8, 0x44($s4) -/* 07475C 80073B5C 00118040 */ sll $s0, $s1, 1 -/* 074760 80073B60 03104021 */ addu $t0, $t8, $s0 -/* 074764 80073B64 95050000 */ lhu $a1, ($t0) -/* 074768 80073B68 0C01CB8A */ jal func_80072E28 -/* 07476C 80073B6C 24040010 */ li $a0, 16 -/* 074770 80073B70 8E890038 */ lw $t1, 0x38($s4) -/* 074774 80073B74 24040010 */ li $a0, 16 -/* 074778 80073B78 01305021 */ addu $t2, $t1, $s0 -/* 07477C 80073B7C 95450000 */ lhu $a1, ($t2) -/* 074780 80073B80 0C01CB8A */ jal func_80072E28 -/* 074784 80073B84 00000000 */ nop -/* 074788 80073B88 8FAB0048 */ lw $t3, 0x48($sp) -.L80073B8C: -/* 07478C 80073B8C 26310001 */ addiu $s1, $s1, 1 -/* 074790 80073B90 022B082A */ slt $at, $s1, $t3 -/* 074794 80073B94 1420FFC7 */ bnez $at, .L80073AB4 -/* 074798 80073B98 00000000 */ nop -.L80073B9C: -/* 07479C 80073B9C 3C018012 */ lui $at, %hi(D_801241EC) # $at, 0x8012 -/* 0747A0 80073BA0 AC3241EC */ sw $s2, %lo(D_801241EC)($at) -/* 0747A4 80073BA4 3C018012 */ lui $at, %hi(D_801241F0) # $at, 0x8012 -/* 0747A8 80073BA8 3C048012 */ lui $a0, %hi(D_801241EC) # $a0, 0x8012 -/* 0747AC 80073BAC 8C8441EC */ lw $a0, %lo(D_801241EC)($a0) -/* 0747B0 80073BB0 AC2041F0 */ sw $zero, %lo(D_801241F0)($at) -/* 0747B4 80073BB4 3C018012 */ lui $at, %hi(D_801241F4) # $at, 0x8012 -/* 0747B8 80073BB8 240C0080 */ li $t4, 128 -/* 0747BC 80073BBC AC2C41F4 */ sw $t4, %lo(D_801241F4)($at) -/* 0747C0 80073BC0 24850002 */ addiu $a1, $a0, 2 -/* 0747C4 80073BC4 90A30000 */ lbu $v1, ($a1) -/* 0747C8 80073BC8 90AF0001 */ lbu $t7, 1($a1) -/* 0747CC 80073BCC 246E0005 */ addiu $t6, $v1, 5 -/* 0747D0 80073BD0 01CF1821 */ addu $v1, $t6, $t7 -/* 0747D4 80073BD4 0003CC00 */ sll $t9, $v1, 0x10 -/* 0747D8 80073BD8 24820004 */ addiu $v0, $a0, 4 -/* 0747DC 80073BDC 240400C0 */ li $a0, 192 -/* 0747E0 80073BE0 00191C03 */ sra $v1, $t9, 0x10 -/* 0747E4 80073BE4 24110004 */ li $s1, 4 -.L80073BE8: -/* 0747E8 80073BE8 90480000 */ lbu $t0, ($v0) -/* 0747EC 80073BEC 904B0001 */ lbu $t3, 1($v0) -/* 0747F0 80073BF0 904E0002 */ lbu $t6, 2($v0) -/* 0747F4 80073BF4 00685021 */ addu $t2, $v1, $t0 -/* 0747F8 80073BF8 90580003 */ lbu $t8, 3($v0) -/* 0747FC 80073BFC 014B6821 */ addu $t5, $t2, $t3 -/* 074800 80073C00 01AEC821 */ addu $t9, $t5, $t6 -/* 074804 80073C04 03381821 */ addu $v1, $t9, $t8 -/* 074808 80073C08 00034400 */ sll $t0, $v1, 0x10 -/* 07480C 80073C0C 00084C03 */ sra $t1, $t0, 0x10 -/* 074810 80073C10 26310004 */ addiu $s1, $s1, 4 -/* 074814 80073C14 01201825 */ move $v1, $t1 -/* 074818 80073C18 1624FFF3 */ bne $s1, $a0, .L80073BE8 -/* 07481C 80073C1C 24420004 */ addiu $v0, $v0, 4 -/* 074820 80073C20 24040010 */ li $a0, 16 -/* 074824 80073C24 0C01CB8A */ jal func_80072E28 -/* 074828 80073C28 01202825 */ move $a1, $t1 -/* 07482C 80073C2C 8FBF002C */ lw $ra, 0x2c($sp) -/* 074830 80073C30 8FB00018 */ lw $s0, 0x18($sp) -/* 074834 80073C34 8FB1001C */ lw $s1, 0x1c($sp) -/* 074838 80073C38 8FB20020 */ lw $s2, 0x20($sp) -/* 07483C 80073C3C 8FB30024 */ lw $s3, 0x24($sp) -/* 074840 80073C40 8FB40028 */ lw $s4, 0x28($sp) -/* 074844 80073C44 03E00008 */ jr $ra -/* 074848 80073C48 27BD0050 */ addiu $sp, $sp, 0x50 - -glabel func_80073C4C -/* 07484C 80073C4C 03E00008 */ jr $ra -/* 074850 80073C50 24020100 */ li $v0, 256 - -glabel func_80073C54 -/* 074854 80073C54 03E00008 */ jr $ra -/* 074858 80073C58 24020200 */ li $v0, 512 - -glabel func_80073C5C -/* 07485C 80073C5C 27BDFEC0 */ addiu $sp, $sp, -0x140 -/* 074860 80073C60 AFBF0044 */ sw $ra, 0x44($sp) -/* 074864 80073C64 AFB20028 */ sw $s2, 0x28($sp) -/* 074868 80073C68 AFB10024 */ sw $s1, 0x24($sp) -/* 07486C 80073C6C AFA50144 */ sw $a1, 0x144($sp) -/* 074870 80073C70 AFA60148 */ sw $a2, 0x148($sp) -/* 074874 80073C74 27AE0070 */ addiu $t6, $sp, 0x70 -/* 074878 80073C78 27AF00B0 */ addiu $t7, $sp, 0xb0 -/* 07487C 80073C7C AFBE0040 */ sw $fp, 0x40($sp) -/* 074880 80073C80 AFB7003C */ sw $s7, 0x3c($sp) -/* 074884 80073C84 AFB60038 */ sw $s6, 0x38($sp) -/* 074888 80073C88 AFB50034 */ sw $s5, 0x34($sp) -/* 07488C 80073C8C AFB40030 */ sw $s4, 0x30($sp) -/* 074890 80073C90 AFB3002C */ sw $s3, 0x2c($sp) -/* 074894 80073C94 AFB00020 */ sw $s0, 0x20($sp) -/* 074898 80073C98 24120020 */ li $s2, 32 -/* 07489C 80073C9C 00008825 */ move $s1, $zero -/* 0748A0 80073CA0 AFAF0014 */ sw $t7, 0x14($sp) -/* 0748A4 80073CA4 AFAE0010 */ sw $t6, 0x10($sp) -/* 0748A8 80073CA8 27A60100 */ addiu $a2, $sp, 0x100 -/* 0748AC 80073CAC 24050010 */ li $a1, 16 -/* 0748B0 80073CB0 0C01D798 */ jal func_80075E60 -/* 0748B4 80073CB4 27A700C0 */ addiu $a3, $sp, 0xc0 -/* 0748B8 80073CB8 1440004B */ bnez $v0, .L80073DE8 -/* 0748BC 80073CBC AFA20060 */ sw $v0, 0x60($sp) -/* 0748C0 80073CC0 3C1E800E */ lui $fp, %hi(D_800E7630) # $fp, 0x800e -/* 0748C4 80073CC4 3C17800E */ lui $s7, %hi(D_800E7640) # $s7, 0x800e -/* 0748C8 80073CC8 26F77640 */ addiu $s7, %lo(D_800E7640) # addiu $s7, $s7, 0x7640 -/* 0748CC 80073CCC 27DE7630 */ addiu $fp, %lo(D_800E7630) # addiu $fp, $fp, 0x7630 -/* 0748D0 80073CD0 00009825 */ move $s3, $zero -/* 0748D4 80073CD4 27B00100 */ addiu $s0, $sp, 0x100 -/* 0748D8 80073CD8 0240A025 */ move $s4, $s2 -/* 0748DC 80073CDC 24160003 */ li $s6, 3 -/* 0748E0 80073CE0 27B50140 */ addiu $s5, $sp, 0x140 -.L80073CE4: -/* 0748E4 80073CE4 8E180000 */ lw $t8, ($s0) -/* 0748E8 80073CE8 8FB90144 */ lw $t9, 0x144($sp) -/* 0748EC 80073CEC 13000022 */ beqz $t8, .L80073D78 -/* 0748F0 80073CF0 00000000 */ nop -/* 0748F4 80073CF4 1736000B */ bne $t9, $s6, .L80073D24 -/* 0748F8 80073CF8 3C04800E */ lui $a0, 0x800e -/* 0748FC 80073CFC 0C033867 */ jal strlen -/* 074900 80073D00 02E02025 */ move $a0, $s7 -/* 074904 80073D04 8E040000 */ lw $a0, ($s0) -/* 074908 80073D08 03C02825 */ move $a1, $fp -/* 07490C 80073D0C 0C033814 */ jal func_800CE050 -/* 074910 80073D10 00403025 */ move $a2, $v0 -/* 074914 80073D14 1040000C */ beqz $v0, .L80073D48 -/* 074918 80073D18 03B34021 */ addu $t0, $sp, $s3 -/* 07491C 80073D1C 10000017 */ b .L80073D7C -/* 074920 80073D20 26100004 */ addiu $s0, $s0, 4 -.L80073D24: -/* 074924 80073D24 0C033867 */ jal strlen -/* 074928 80073D28 24847660 */ addiu $a0, $a0, 0x7660 -/* 07492C 80073D2C 8E040000 */ lw $a0, ($s0) -/* 074930 80073D30 3C05800E */ lui $a1, %hi(D_800E7650) # $a1, 0x800e -/* 074934 80073D34 24A57650 */ addiu $a1, %lo(D_800E7650) # addiu $a1, $a1, 0x7650 -/* 074938 80073D38 0C033814 */ jal func_800CE050 -/* 07493C 80073D3C 00403025 */ move $a2, $v0 -/* 074940 80073D40 1440000D */ bnez $v0, .L80073D78 -/* 074944 80073D44 03B34021 */ addu $t0, $sp, $s3 -.L80073D48: -/* 074948 80073D48 8D0800C0 */ lw $t0, 0xc0($t0) -/* 07494C 80073D4C 240A0001 */ li $t2, 1 -/* 074950 80073D50 91020000 */ lbu $v0, ($t0) -/* 074954 80073D54 00000000 */ nop -/* 074958 80073D58 0282082A */ slt $at, $s4, $v0 -/* 07495C 80073D5C 10200003 */ beqz $at, .L80073D6C -/* 074960 80073D60 00401825 */ move $v1, $v0 -/* 074964 80073D64 305200FF */ andi $s2, $v0, 0xff -/* 074968 80073D68 0240A025 */ move $s4, $s2 -.L80073D6C: -/* 07496C 80073D6C 2469001F */ addiu $t1, $v1, 0x1f -/* 074970 80073D70 012A5804 */ sllv $t3, $t2, $t1 -/* 074974 80073D74 022B8825 */ or $s1, $s1, $t3 -.L80073D78: -/* 074978 80073D78 26100004 */ addiu $s0, $s0, 4 -.L80073D7C: -/* 07497C 80073D7C 1615FFD9 */ bne $s0, $s5, .L80073CE4 -/* 074980 80073D80 26730004 */ addiu $s3, $s3, 4 -/* 074984 80073D84 24010020 */ li $at, 32 -/* 074988 80073D88 8FA20148 */ lw $v0, 0x148($sp) -/* 07498C 80073D8C 16810004 */ bne $s4, $at, .L80073DA0 -/* 074990 80073D90 2401005A */ li $at, 90 -/* 074994 80073D94 10000012 */ b .L80073DE0 -/* 074998 80073D98 24120041 */ li $s2, 65 -/* 07499C 80073D9C 2401005A */ li $at, 90 -.L80073DA0: -/* 0749A0 80073DA0 1681000D */ bne $s4, $at, .L80073DD8 -/* 0749A4 80073DA4 26520001 */ addiu $s2, $s2, 1 -/* 0749A8 80073DA8 24120041 */ li $s2, 65 -.L80073DAC: -/* 0749AC 80073DAC 322C0001 */ andi $t4, $s1, 1 -/* 0749B0 80073DB0 1180000B */ beqz $t4, .L80073DE0 -/* 0749B4 80073DB4 00116843 */ sra $t5, $s1, 1 -/* 0749B8 80073DB8 26520001 */ addiu $s2, $s2, 1 -/* 0749BC 80073DBC 324E00FF */ andi $t6, $s2, 0xff -/* 0749C0 80073DC0 29C1005B */ slti $at, $t6, 0x5b -/* 0749C4 80073DC4 01C09025 */ move $s2, $t6 -/* 0749C8 80073DC8 1420FFF8 */ bnez $at, .L80073DAC -/* 0749CC 80073DCC 01A08825 */ move $s1, $t5 -/* 0749D0 80073DD0 10000004 */ b .L80073DE4 -/* 0749D4 80073DD4 A0520000 */ sb $s2, ($v0) -.L80073DD8: -/* 0749D8 80073DD8 324F00FF */ andi $t7, $s2, 0xff -/* 0749DC 80073DDC 01E09025 */ move $s2, $t7 -.L80073DE0: -/* 0749E0 80073DE0 A0520000 */ sb $s2, ($v0) -.L80073DE4: -/* 0749E4 80073DE4 A0400001 */ sb $zero, 1($v0) -.L80073DE8: -/* 0749E8 80073DE8 8FBF0044 */ lw $ra, 0x44($sp) -/* 0749EC 80073DEC 8FA20060 */ lw $v0, 0x60($sp) -/* 0749F0 80073DF0 8FB00020 */ lw $s0, 0x20($sp) -/* 0749F4 80073DF4 8FB10024 */ lw $s1, 0x24($sp) -/* 0749F8 80073DF8 8FB20028 */ lw $s2, 0x28($sp) -/* 0749FC 80073DFC 8FB3002C */ lw $s3, 0x2c($sp) -/* 074A00 80073E00 8FB40030 */ lw $s4, 0x30($sp) -/* 074A04 80073E04 8FB50034 */ lw $s5, 0x34($sp) -/* 074A08 80073E08 8FB60038 */ lw $s6, 0x38($sp) -/* 074A0C 80073E0C 8FB7003C */ lw $s7, 0x3c($sp) -/* 074A10 80073E10 8FBE0040 */ lw $fp, 0x40($sp) -/* 074A14 80073E14 03E00008 */ jr $ra -/* 074A18 80073E18 27BD0140 */ addiu $sp, $sp, 0x140 - -glabel func_80073E1C -/* 074A1C 80073E1C 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 074A20 80073E20 AFBF001C */ sw $ra, 0x1c($sp) -/* 074A24 80073E24 AFB00018 */ sw $s0, 0x18($sp) -/* 074A28 80073E28 00808025 */ move $s0, $a0 -/* 074A2C 80073E2C AFA50034 */ sw $a1, 0x34($sp) -/* 074A30 80073E30 0C01D637 */ jal func_800758DC -/* 074A34 80073E34 AFA60038 */ sw $a2, 0x38($sp) -/* 074A38 80073E38 10400008 */ beqz $v0, .L80073E5C -/* 074A3C 80073E3C 02002025 */ move $a0, $s0 -/* 074A40 80073E40 02002025 */ move $a0, $s0 -/* 074A44 80073E44 0C01D6BB */ jal func_80075AEC -/* 074A48 80073E48 AFA20028 */ sw $v0, 0x28($sp) -/* 074A4C 80073E4C 8FA30028 */ lw $v1, 0x28($sp) -/* 074A50 80073E50 00107780 */ sll $t6, $s0, 0x1e -/* 074A54 80073E54 1000003D */ b .L80073F4C -/* 074A58 80073E58 01C31025 */ or $v0, $t6, $v1 -.L80073E5C: -/* 074A5C 80073E5C 3C05800E */ lui $a1, %hi(D_800E7670) # $a1, 0x800e -/* 074A60 80073E60 8FA60034 */ lw $a2, 0x34($sp) -/* 074A64 80073E64 24A57670 */ addiu $a1, %lo(D_800E7670) # addiu $a1, $a1, 0x7670 -/* 074A68 80073E68 0C01D93A */ jal func_800764E8 -/* 074A6C 80073E6C 27A70024 */ addiu $a3, $sp, 0x24 -/* 074A70 80073E70 1440002D */ bnez $v0, .L80073F28 -/* 074A74 80073E74 00401825 */ move $v1, $v0 -/* 074A78 80073E78 8FA50024 */ lw $a1, 0x24($sp) -/* 074A7C 80073E7C 02002025 */ move $a0, $s0 -/* 074A80 80073E80 0C01DA49 */ jal func_80076924 -/* 074A84 80073E84 27A60020 */ addiu $a2, $sp, 0x20 -/* 074A88 80073E88 8FA40020 */ lw $a0, 0x20($sp) -/* 074A8C 80073E8C 00401825 */ move $v1, $v0 -/* 074A90 80073E90 14800002 */ bnez $a0, .L80073E9C -/* 074A94 80073E94 00000000 */ nop -/* 074A98 80073E98 24030009 */ li $v1, 9 -.L80073E9C: -/* 074A9C 80073E9C 14600022 */ bnez $v1, .L80073F28 -/* 074AA0 80073EA0 00000000 */ nop -/* 074AA4 80073EA4 0C01C327 */ jal func_80070C9C -/* 074AA8 80073EA8 240500FF */ li $a1, 255 -/* 074AAC 80073EAC 8FA50024 */ lw $a1, 0x24($sp) -/* 074AB0 80073EB0 8FA70020 */ lw $a3, 0x20($sp) -/* 074AB4 80073EB4 AFA2002C */ sw $v0, 0x2c($sp) -/* 074AB8 80073EB8 02002025 */ move $a0, $s0 -/* 074ABC 80073EBC 0C01D984 */ jal func_80076610 -/* 074AC0 80073EC0 00403025 */ move $a2, $v0 -/* 074AC4 80073EC4 14400013 */ bnez $v0, .L80073F14 -/* 074AC8 80073EC8 00401825 */ move $v1, $v0 -/* 074ACC 80073ECC 8FA6002C */ lw $a2, 0x2c($sp) -/* 074AD0 80073ED0 3C014741 */ lui $at, (0x47414D44 >> 16) # lui $at, 0x4741 -/* 074AD4 80073ED4 8CCF0000 */ lw $t7, ($a2) -/* 074AD8 80073ED8 34214D44 */ ori $at, (0x47414D44 & 0xFFFF) # ori $at, $at, 0x4d44 -/* 074ADC 80073EDC 15E1000D */ bne $t7, $at, .L80073F14 -/* 074AE0 80073EE0 24030009 */ li $v1, 9 -/* 074AE4 80073EE4 8FA40038 */ lw $a0, 0x38($sp) -/* 074AE8 80073EE8 24C50004 */ addiu $a1, $a2, 4 -/* 074AEC 80073EEC 0C01CC1B */ jal func_8007306C -/* 074AF0 80073EF0 AFA20028 */ sw $v0, 0x28($sp) -/* 074AF4 80073EF4 8FB80038 */ lw $t8, 0x38($sp) -/* 074AF8 80073EF8 8FA30028 */ lw $v1, 0x28($sp) -/* 074AFC 80073EFC 9319004B */ lbu $t9, 0x4b($t8) -/* 074B00 80073F00 00000000 */ nop -/* 074B04 80073F04 13200004 */ beqz $t9, .L80073F18 -/* 074B08 80073F08 8FA4002C */ lw $a0, 0x2c($sp) -/* 074B0C 80073F0C 10000001 */ b .L80073F14 -/* 074B10 80073F10 24030005 */ li $v1, 5 -.L80073F14: -/* 074B14 80073F14 8FA4002C */ lw $a0, 0x2c($sp) -.L80073F18: -/* 074B18 80073F18 0C01C450 */ jal func_80071140 -/* 074B1C 80073F1C AFA30028 */ sw $v1, 0x28($sp) -/* 074B20 80073F20 8FA30028 */ lw $v1, 0x28($sp) -/* 074B24 80073F24 00000000 */ nop -.L80073F28: -/* 074B28 80073F28 02002025 */ move $a0, $s0 -/* 074B2C 80073F2C 0C01D6BB */ jal func_80075AEC -/* 074B30 80073F30 AFA30028 */ sw $v1, 0x28($sp) -/* 074B34 80073F34 8FA30028 */ lw $v1, 0x28($sp) -/* 074B38 80073F38 00104780 */ sll $t0, $s0, 0x1e -/* 074B3C 80073F3C 10600003 */ beqz $v1, .L80073F4C -/* 074B40 80073F40 00601025 */ move $v0, $v1 -/* 074B44 80073F44 00681825 */ or $v1, $v1, $t0 -/* 074B48 80073F48 00601025 */ move $v0, $v1 -.L80073F4C: -/* 074B4C 80073F4C 8FBF001C */ lw $ra, 0x1c($sp) -/* 074B50 80073F50 8FB00018 */ lw $s0, 0x18($sp) -/* 074B54 80073F54 03E00008 */ jr $ra -/* 074B58 80073F58 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_80073F5C -/* 074B5C 80073F5C 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 074B60 80073F60 AFBF001C */ sw $ra, 0x1c($sp) -/* 074B64 80073F64 AFA40038 */ sw $a0, 0x38($sp) -/* 074B68 80073F68 0C01CF13 */ jal func_80073C4C -/* 074B6C 80073F6C AFA5003C */ sw $a1, 0x3c($sp) -/* 074B70 80073F70 AFA20024 */ sw $v0, 0x24($sp) -/* 074B74 80073F74 00402025 */ move $a0, $v0 -/* 074B78 80073F78 0C01C327 */ jal func_80070C9C -/* 074B7C 80073F7C 2405FFFF */ li $a1, -1 -/* 074B80 80073F80 3C0E4741 */ lui $t6, (0x47414D44 >> 16) # lui $t6, 0x4741 -/* 074B84 80073F84 AFA2002C */ sw $v0, 0x2c($sp) -/* 074B88 80073F88 35CE4D44 */ ori $t6, (0x47414D44 & 0xFFFF) # ori $t6, $t6, 0x4d44 -/* 074B8C 80073F8C AC4E0000 */ sw $t6, ($v0) -/* 074B90 80073F90 8FA4003C */ lw $a0, 0x3c($sp) -/* 074B94 80073F94 0C01CCBA */ jal func_800732E8 -/* 074B98 80073F98 24450004 */ addiu $a1, $v0, 4 -/* 074B9C 80073F9C 8FA40038 */ lw $a0, 0x38($sp) -/* 074BA0 80073FA0 24050003 */ li $a1, 3 -/* 074BA4 80073FA4 0C01CF17 */ jal func_80073C5C -/* 074BA8 80073FA8 27A60030 */ addiu $a2, $sp, 0x30 -/* 074BAC 80073FAC 1440000C */ bnez $v0, .L80073FE0 -/* 074BB0 80073FB0 00401825 */ move $v1, $v0 -/* 074BB4 80073FB4 8FAF002C */ lw $t7, 0x2c($sp) -/* 074BB8 80073FB8 8FB80024 */ lw $t8, 0x24($sp) -/* 074BBC 80073FBC 8FA40038 */ lw $a0, 0x38($sp) -/* 074BC0 80073FC0 3C06800E */ lui $a2, %hi(D_800E7680) # $a2, 0x800e -/* 074BC4 80073FC4 24C67680 */ addiu $a2, %lo(D_800E7680) # addiu $a2, $a2, 0x7680 -/* 074BC8 80073FC8 2405FFFF */ li $a1, -1 -/* 074BCC 80073FCC 27A70030 */ addiu $a3, $sp, 0x30 -/* 074BD0 80073FD0 AFAF0010 */ sw $t7, 0x10($sp) -/* 074BD4 80073FD4 0C01D9B5 */ jal func_800766D4 -/* 074BD8 80073FD8 AFB80014 */ sw $t8, 0x14($sp) -/* 074BDC 80073FDC 00401825 */ move $v1, $v0 -.L80073FE0: -/* 074BE0 80073FE0 8FA4002C */ lw $a0, 0x2c($sp) -/* 074BE4 80073FE4 0C01C450 */ jal func_80071140 -/* 074BE8 80073FE8 AFA30028 */ sw $v1, 0x28($sp) -/* 074BEC 80073FEC 8FA30028 */ lw $v1, 0x28($sp) -/* 074BF0 80073FF0 8FBF001C */ lw $ra, 0x1c($sp) -/* 074BF4 80073FF4 10600006 */ beqz $v1, .L80074010 -/* 074BF8 80073FF8 00601025 */ move $v0, $v1 -/* 074BFC 80073FFC 8FB90038 */ lw $t9, 0x38($sp) -/* 074C00 80074000 00000000 */ nop -/* 074C04 80074004 00194780 */ sll $t0, $t9, 0x1e -/* 074C08 80074008 00681825 */ or $v1, $v1, $t0 -/* 074C0C 8007400C 00601025 */ move $v0, $v1 -.L80074010: -/* 074C10 80074010 03E00008 */ jr $ra -/* 074C14 80074014 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_80074018 -/* 074C18 80074018 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 074C1C 8007401C AFBF001C */ sw $ra, 0x1c($sp) -/* 074C20 80074020 AFB00018 */ sw $s0, 0x18($sp) -/* 074C24 80074024 00808025 */ move $s0, $a0 -/* 074C28 80074028 AFA50034 */ sw $a1, 0x34($sp) -/* 074C2C 8007402C 0C01D637 */ jal func_800758DC -/* 074C30 80074030 AFA60038 */ sw $a2, 0x38($sp) -/* 074C34 80074034 10400008 */ beqz $v0, .L80074058 -/* 074C38 80074038 02002025 */ move $a0, $s0 -/* 074C3C 8007403C 02002025 */ move $a0, $s0 -/* 074C40 80074040 0C01D6BB */ jal func_80075AEC -/* 074C44 80074044 AFA20028 */ sw $v0, 0x28($sp) -/* 074C48 80074048 8FA30028 */ lw $v1, 0x28($sp) -/* 074C4C 8007404C 00107780 */ sll $t6, $s0, 0x1e -/* 074C50 80074050 10000039 */ b .L80074138 -/* 074C54 80074054 01C31025 */ or $v0, $t6, $v1 -.L80074058: -/* 074C58 80074058 3C05800E */ lui $a1, %hi(D_800E7690) # $a1, 0x800e -/* 074C5C 8007405C 8FA60034 */ lw $a2, 0x34($sp) -/* 074C60 80074060 24A57690 */ addiu $a1, %lo(D_800E7690) # addiu $a1, $a1, 0x7690 -/* 074C64 80074064 0C01D93A */ jal func_800764E8 -/* 074C68 80074068 27A70024 */ addiu $a3, $sp, 0x24 -/* 074C6C 8007406C 14400029 */ bnez $v0, .L80074114 -/* 074C70 80074070 00401825 */ move $v1, $v0 -/* 074C74 80074074 8FA50024 */ lw $a1, 0x24($sp) -/* 074C78 80074078 02002025 */ move $a0, $s0 -/* 074C7C 8007407C 0C01DA49 */ jal func_80076924 -/* 074C80 80074080 27A60020 */ addiu $a2, $sp, 0x20 -/* 074C84 80074084 8FA40020 */ lw $a0, 0x20($sp) -/* 074C88 80074088 00401825 */ move $v1, $v0 -/* 074C8C 8007408C 14800002 */ bnez $a0, .L80074098 -/* 074C90 80074090 00000000 */ nop -/* 074C94 80074094 24030009 */ li $v1, 9 -.L80074098: -/* 074C98 80074098 1460001E */ bnez $v1, .L80074114 -/* 074C9C 8007409C 00000000 */ nop -/* 074CA0 800740A0 0C01C327 */ jal func_80070C9C -/* 074CA4 800740A4 240500FF */ li $a1, 255 -/* 074CA8 800740A8 8FA50024 */ lw $a1, 0x24($sp) -/* 074CAC 800740AC 8FA70020 */ lw $a3, 0x20($sp) -/* 074CB0 800740B0 AFA2002C */ sw $v0, 0x2c($sp) -/* 074CB4 800740B4 02002025 */ move $a0, $s0 -/* 074CB8 800740B8 0C01D984 */ jal func_80076610 -/* 074CBC 800740BC 00403025 */ move $a2, $v0 -/* 074CC0 800740C0 1440000F */ bnez $v0, .L80074100 -/* 074CC4 800740C4 00401825 */ move $v1, $v0 -/* 074CC8 800740C8 8FA7002C */ lw $a3, 0x2c($sp) -/* 074CCC 800740CC 3C015449 */ lui $at, (0x54494D44 >> 16) # lui $at, 0x5449 -/* 074CD0 800740D0 8CEF0000 */ lw $t7, ($a3) -/* 074CD4 800740D4 34214D44 */ ori $at, (0x54494D44 & 0xFFFF) # ori $at, $at, 0x4d44 -/* 074CD8 800740D8 15E10009 */ bne $t7, $at, .L80074100 -/* 074CDC 800740DC 24030009 */ li $v1, 9 -/* 074CE0 800740E0 8FA40038 */ lw $a0, 0x38($sp) -/* 074CE4 800740E4 24E50004 */ addiu $a1, $a3, 4 -/* 074CE8 800740E8 24060003 */ li $a2, 3 -/* 074CEC 800740EC 0C01CD62 */ jal func_80073588 -/* 074CF0 800740F0 AFA20028 */ sw $v0, 0x28($sp) -/* 074CF4 800740F4 8FA30028 */ lw $v1, 0x28($sp) -/* 074CF8 800740F8 10000002 */ b .L80074104 -/* 074CFC 800740FC 8FA4002C */ lw $a0, 0x2c($sp) -.L80074100: -/* 074D00 80074100 8FA4002C */ lw $a0, 0x2c($sp) -.L80074104: -/* 074D04 80074104 0C01C450 */ jal func_80071140 -/* 074D08 80074108 AFA30028 */ sw $v1, 0x28($sp) -/* 074D0C 8007410C 8FA30028 */ lw $v1, 0x28($sp) -/* 074D10 80074110 00000000 */ nop -.L80074114: -/* 074D14 80074114 02002025 */ move $a0, $s0 -/* 074D18 80074118 0C01D6BB */ jal func_80075AEC -/* 074D1C 8007411C AFA30028 */ sw $v1, 0x28($sp) -/* 074D20 80074120 8FA30028 */ lw $v1, 0x28($sp) -/* 074D24 80074124 0010C780 */ sll $t8, $s0, 0x1e -/* 074D28 80074128 10600003 */ beqz $v1, .L80074138 -/* 074D2C 8007412C 00601025 */ move $v0, $v1 -/* 074D30 80074130 00781825 */ or $v1, $v1, $t8 -/* 074D34 80074134 00601025 */ move $v0, $v1 -.L80074138: -/* 074D38 80074138 8FBF001C */ lw $ra, 0x1c($sp) -/* 074D3C 8007413C 8FB00018 */ lw $s0, 0x18($sp) -/* 074D40 80074140 03E00008 */ jr $ra -/* 074D44 80074144 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_80074148 -/* 074D48 80074148 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 074D4C 8007414C AFBF001C */ sw $ra, 0x1c($sp) -/* 074D50 80074150 AFA40038 */ sw $a0, 0x38($sp) -/* 074D54 80074154 0C01CF15 */ jal func_80073C54 -/* 074D58 80074158 AFA5003C */ sw $a1, 0x3c($sp) -/* 074D5C 8007415C AFA2002C */ sw $v0, 0x2c($sp) -/* 074D60 80074160 00402025 */ move $a0, $v0 -/* 074D64 80074164 0C01C327 */ jal func_80070C9C -/* 074D68 80074168 2405FFFF */ li $a1, -1 -/* 074D6C 8007416C 3C0E5449 */ lui $t6, (0x54494D44 >> 16) # lui $t6, 0x5449 -/* 074D70 80074170 AFA20034 */ sw $v0, 0x34($sp) -/* 074D74 80074174 35CE4D44 */ ori $t6, (0x54494D44 & 0xFFFF) # ori $t6, $t6, 0x4d44 -/* 074D78 80074178 AC4E0000 */ sw $t6, ($v0) -/* 074D7C 8007417C 8FA4003C */ lw $a0, 0x3c($sp) -/* 074D80 80074180 0C01CE29 */ jal func_800738A4 -/* 074D84 80074184 24450004 */ addiu $a1, $v0, 4 -/* 074D88 80074188 8FA40038 */ lw $a0, 0x38($sp) -/* 074D8C 8007418C 24050004 */ li $a1, 4 -/* 074D90 80074190 0C01CF17 */ jal func_80073C5C -/* 074D94 80074194 27A60024 */ addiu $a2, $sp, 0x24 -/* 074D98 80074198 1440000C */ bnez $v0, .L800741CC -/* 074D9C 8007419C 00401825 */ move $v1, $v0 -/* 074DA0 800741A0 8FAF0034 */ lw $t7, 0x34($sp) -/* 074DA4 800741A4 8FB8002C */ lw $t8, 0x2c($sp) -/* 074DA8 800741A8 8FA40038 */ lw $a0, 0x38($sp) -/* 074DAC 800741AC 3C06800E */ lui $a2, %hi(D_800E76A0) # $a2, 0x800e -/* 074DB0 800741B0 24C676A0 */ addiu $a2, %lo(D_800E76A0) # addiu $a2, $a2, 0x76a0 -/* 074DB4 800741B4 2405FFFF */ li $a1, -1 -/* 074DB8 800741B8 27A70024 */ addiu $a3, $sp, 0x24 -/* 074DBC 800741BC AFAF0010 */ sw $t7, 0x10($sp) -/* 074DC0 800741C0 0C01D9B5 */ jal func_800766D4 -/* 074DC4 800741C4 AFB80014 */ sw $t8, 0x14($sp) -/* 074DC8 800741C8 00401825 */ move $v1, $v0 -.L800741CC: -/* 074DCC 800741CC 8FA40034 */ lw $a0, 0x34($sp) -/* 074DD0 800741D0 0C01C450 */ jal func_80071140 -/* 074DD4 800741D4 AFA30030 */ sw $v1, 0x30($sp) -/* 074DD8 800741D8 8FA30030 */ lw $v1, 0x30($sp) -/* 074DDC 800741DC 8FBF001C */ lw $ra, 0x1c($sp) -/* 074DE0 800741E0 10600006 */ beqz $v1, .L800741FC -/* 074DE4 800741E4 00601025 */ move $v0, $v1 -/* 074DE8 800741E8 8FB90038 */ lw $t9, 0x38($sp) -/* 074DEC 800741EC 00000000 */ nop -/* 074DF0 800741F0 00194780 */ sll $t0, $t9, 0x1e -/* 074DF4 800741F4 00681825 */ or $v1, $v1, $t0 -/* 074DF8 800741F8 00601025 */ move $v0, $v1 -.L800741FC: -/* 074DFC 800741FC 03E00008 */ jr $ra -/* 074E00 80074200 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_80074204 -/* 074E04 80074204 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 074E08 80074208 AFBF0024 */ sw $ra, 0x24($sp) -/* 074E0C 8007420C AFB30020 */ sw $s3, 0x20($sp) -/* 074E10 80074210 AFB2001C */ sw $s2, 0x1c($sp) -/* 074E14 80074214 AFB10018 */ sw $s1, 0x18($sp) -/* 074E18 80074218 AFB00014 */ sw $s0, 0x14($sp) -/* 074E1C 8007421C AFA40030 */ sw $a0, 0x30($sp) -/* 074E20 80074220 0C01A840 */ jal func_8006A100 -/* 074E24 80074224 AFA50034 */ sw $a1, 0x34($sp) -/* 074E28 80074228 0C033884 */ jal func_800CE210 -/* 074E2C 8007422C 00402025 */ move $a0, $v0 -/* 074E30 80074230 14400003 */ bnez $v0, .L80074240 -/* 074E34 80074234 24130005 */ li $s3, 5 -/* 074E38 80074238 10000031 */ b .L80074300 -/* 074E3C 8007423C 2402FFFF */ li $v0, -1 -.L80074240: -/* 074E40 80074240 8FA20030 */ lw $v0, 0x30($sp) -/* 074E44 80074244 24040028 */ li $a0, 40 -/* 074E48 80074248 10400008 */ beqz $v0, .L8007426C -/* 074E4C 8007424C 2405FFFF */ li $a1, -1 -/* 074E50 80074250 24010001 */ li $at, 1 -/* 074E54 80074254 10410007 */ beq $v0, $at, .L80074274 -/* 074E58 80074258 24010002 */ li $at, 2 -/* 074E5C 8007425C 10410007 */ beq $v0, $at, .L8007427C -/* 074E60 80074260 2403000A */ li $v1, 10 -/* 074E64 80074264 10000005 */ b .L8007427C -/* 074E68 80074268 2403000A */ li $v1, 10 -.L8007426C: -/* 074E6C 8007426C 10000003 */ b .L8007427C -/* 074E70 80074270 00001825 */ move $v1, $zero -.L80074274: -/* 074E74 80074274 10000001 */ b .L8007427C -/* 074E78 80074278 24030005 */ li $v1, 5 -.L8007427C: -/* 074E7C 8007427C 0C01C327 */ jal func_80070C9C -/* 074E80 80074280 AFA3002C */ sw $v1, 0x2c($sp) -/* 074E84 80074284 8FB1002C */ lw $s1, 0x2c($sp) -/* 074E88 80074288 00409025 */ move $s2, $v0 -/* 074E8C 8007428C 00008025 */ move $s0, $zero -.L80074290: -/* 074E90 80074290 0C01A840 */ jal func_8006A100 -/* 074E94 80074294 00000000 */ nop -/* 074E98 80074298 001070C0 */ sll $t6, $s0, 3 -/* 074E9C 8007429C 01D23021 */ addu $a2, $t6, $s2 -/* 074EA0 800742A0 00402025 */ move $a0, $v0 -/* 074EA4 800742A4 0C0338A0 */ jal osEepromRead -/* 074EA8 800742A8 322500FF */ andi $a1, $s1, 0xff -/* 074EAC 800742AC 26100001 */ addiu $s0, $s0, 1 -/* 074EB0 800742B0 1613FFF7 */ bne $s0, $s3, .L80074290 -/* 074EB4 800742B4 26310001 */ addiu $s1, $s1, 1 -/* 074EB8 800742B8 8FA40034 */ lw $a0, 0x34($sp) -/* 074EBC 800742BC 0C01CC1B */ jal func_8007306C -/* 074EC0 800742C0 02402825 */ move $a1, $s2 -/* 074EC4 800742C4 0C01C450 */ jal func_80071140 -/* 074EC8 800742C8 02402025 */ move $a0, $s2 -/* 074ECC 800742CC 8FA50034 */ lw $a1, 0x34($sp) -/* 074ED0 800742D0 8FA40030 */ lw $a0, 0x30($sp) -/* 074ED4 800742D4 90A3004B */ lbu $v1, 0x4b($a1) -/* 074ED8 800742D8 00000000 */ nop -/* 074EDC 800742DC 10600008 */ beqz $v1, .L80074300 -/* 074EE0 800742E0 00601025 */ move $v0, $v1 -/* 074EE4 800742E4 0C01D0C7 */ jal func_8007431C -/* 074EE8 800742E8 00000000 */ nop -/* 074EEC 800742EC 8FAF0034 */ lw $t7, 0x34($sp) -/* 074EF0 800742F0 00000000 */ nop -/* 074EF4 800742F4 91E3004B */ lbu $v1, 0x4b($t7) -/* 074EF8 800742F8 00000000 */ nop -/* 074EFC 800742FC 00601025 */ move $v0, $v1 -.L80074300: -/* 074F00 80074300 8FBF0024 */ lw $ra, 0x24($sp) -/* 074F04 80074304 8FB00014 */ lw $s0, 0x14($sp) -/* 074F08 80074308 8FB10018 */ lw $s1, 0x18($sp) -/* 074F0C 8007430C 8FB2001C */ lw $s2, 0x1c($sp) -/* 074F10 80074310 8FB30020 */ lw $s3, 0x20($sp) -/* 074F14 80074314 03E00008 */ jr $ra -/* 074F18 80074318 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_8007431C -/* 074F1C 8007431C 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 074F20 80074320 AFBF0024 */ sw $ra, 0x24($sp) -/* 074F24 80074324 AFB2001C */ sw $s2, 0x1c($sp) -/* 074F28 80074328 AFB10018 */ sw $s1, 0x18($sp) -/* 074F2C 8007432C 00A08825 */ move $s1, $a1 -/* 074F30 80074330 00809025 */ move $s2, $a0 -/* 074F34 80074334 AFB30020 */ sw $s3, 0x20($sp) -/* 074F38 80074338 0C01A840 */ jal func_8006A100 -/* 074F3C 8007433C AFB00014 */ sw $s0, 0x14($sp) -/* 074F40 80074340 0C033884 */ jal func_800CE210 -/* 074F44 80074344 00402025 */ move $a0, $v0 -/* 074F48 80074348 1040005D */ beqz $v0, .L800744C0 -/* 074F4C 8007434C 27A40044 */ addiu $a0, $sp, 0x44 -/* 074F50 80074350 0C01AC89 */ jal func_8006B224 -/* 074F54 80074354 27A50040 */ addiu $a1, $sp, 0x40 -/* 074F58 80074358 8FAE0044 */ lw $t6, 0x44($sp) -/* 074F5C 8007435C 00008025 */ move $s0, $zero -/* 074F60 80074360 19C0000C */ blez $t6, .L80074394 -/* 074F64 80074364 240C0001 */ li $t4, 1 -/* 074F68 80074368 00001025 */ move $v0, $zero -.L8007436C: -/* 074F6C 8007436C 8E2F0004 */ lw $t7, 4($s1) -/* 074F70 80074370 26100001 */ addiu $s0, $s0, 1 -/* 074F74 80074374 01E2C021 */ addu $t8, $t7, $v0 -/* 074F78 80074378 AF000000 */ sw $zero, ($t8) -/* 074F7C 8007437C 8FB90044 */ lw $t9, 0x44($sp) -/* 074F80 80074380 24420004 */ addiu $v0, $v0, 4 -/* 074F84 80074384 0219082A */ slt $at, $s0, $t9 -/* 074F88 80074388 1420FFF8 */ bnez $at, .L8007436C -/* 074F8C 8007438C 00000000 */ nop -/* 074F90 80074390 00008025 */ move $s0, $zero -.L80074394: -/* 074F94 80074394 8FA80040 */ lw $t0, 0x40($sp) -/* 074F98 80074398 24040028 */ li $a0, 40 -/* 074F9C 8007439C 1900000C */ blez $t0, .L800743D0 -/* 074FA0 800743A0 2405FFFF */ li $a1, -1 -/* 074FA4 800743A4 00001025 */ move $v0, $zero -.L800743A8: -/* 074FA8 800743A8 8E290000 */ lw $t1, ($s1) -/* 074FAC 800743AC 26100001 */ addiu $s0, $s0, 1 -/* 074FB0 800743B0 01225021 */ addu $t2, $t1, $v0 -/* 074FB4 800743B4 A5400000 */ sh $zero, ($t2) -/* 074FB8 800743B8 8FAB0040 */ lw $t3, 0x40($sp) -/* 074FBC 800743BC 24420002 */ addiu $v0, $v0, 2 -/* 074FC0 800743C0 020B082A */ slt $at, $s0, $t3 -/* 074FC4 800743C4 1420FFF8 */ bnez $at, .L800743A8 -/* 074FC8 800743C8 00000000 */ nop -/* 074FCC 800743CC 00008025 */ move $s0, $zero -.L800743D0: -/* 074FD0 800743D0 A620000E */ sh $zero, 0xe($s1) -/* 074FD4 800743D4 A620000C */ sh $zero, 0xc($s1) -/* 074FD8 800743D8 A6200014 */ sh $zero, 0x14($s1) -/* 074FDC 800743DC AE200010 */ sw $zero, 0x10($s1) -/* 074FE0 800743E0 12400008 */ beqz $s2, .L80074404 -/* 074FE4 800743E4 A22C004B */ sb $t4, 0x4b($s1) -/* 074FE8 800743E8 24010001 */ li $at, 1 -/* 074FEC 800743EC 12410007 */ beq $s2, $at, .L8007440C -/* 074FF0 800743F0 24010002 */ li $at, 2 -/* 074FF4 800743F4 12410007 */ beq $s2, $at, .L80074414 -/* 074FF8 800743F8 2406000A */ li $a2, 10 -/* 074FFC 800743FC 10000005 */ b .L80074414 -/* 075000 80074400 2406000A */ li $a2, 10 -.L80074404: -/* 075004 80074404 10000003 */ b .L80074414 -/* 075008 80074408 00003025 */ move $a2, $zero -.L8007440C: -/* 07500C 8007440C 10000001 */ b .L80074414 -/* 075010 80074410 24060005 */ li $a2, 5 -.L80074414: -/* 075014 80074414 24120005 */ li $s2, 5 -/* 075018 80074418 0C01C327 */ jal func_80070C9C -/* 07501C 8007441C AFA60054 */ sw $a2, 0x54($sp) -/* 075020 80074420 8FA60054 */ lw $a2, 0x54($sp) -/* 075024 80074424 1000000A */ b .L80074450 -/* 075028 80074428 00409825 */ move $s3, $v0 -/* 07502C 8007442C 00002825 */ move $a1, $zero -/* 075030 80074430 00501821 */ addu $v1, $v0, $s0 -/* 075034 80074434 240400FF */ li $a0, 255 -.L80074438: -/* 075038 80074438 26100001 */ addiu $s0, $s0, 1 -/* 07503C 8007443C A0640000 */ sb $a0, ($v1) -/* 075040 80074440 14B0FFFD */ bne $a1, $s0, .L80074438 -/* 075044 80074444 24630001 */ addiu $v1, $v1, 1 -/* 075048 80074448 24010028 */ li $at, 40 -/* 07504C 8007444C 1201000A */ beq $s0, $at, .L80074478 -.L80074450: -/* 075050 80074450 240400FF */ li $a0, 255 -/* 075054 80074454 001228C0 */ sll $a1, $s2, 3 -/* 075058 80074458 00501821 */ addu $v1, $v0, $s0 -.L8007445C: -/* 07505C 8007445C 26100004 */ addiu $s0, $s0, 4 -/* 075060 80074460 A0640000 */ sb $a0, ($v1) -/* 075064 80074464 A0640001 */ sb $a0, 1($v1) -/* 075068 80074468 A0640002 */ sb $a0, 2($v1) -/* 07506C 8007446C A0640003 */ sb $a0, 3($v1) -/* 075070 80074470 1605FFFA */ bne $s0, $a1, .L8007445C -/* 075074 80074474 24630004 */ addiu $v1, $v1, 4 -.L80074478: -/* 075078 80074478 0C01BAB0 */ jal func_8006EAC0 -/* 07507C 8007447C AFA60054 */ sw $a2, 0x54($sp) -/* 075080 80074480 8FA60054 */ lw $a2, 0x54($sp) -/* 075084 80074484 1440000C */ bnez $v0, .L800744B8 -/* 075088 80074488 00008025 */ move $s0, $zero -/* 07508C 8007448C 00C08825 */ move $s1, $a2 -.L80074490: -/* 075090 80074490 0C01A840 */ jal func_8006A100 -/* 075094 80074494 00000000 */ nop -/* 075098 80074498 001068C0 */ sll $t5, $s0, 3 -/* 07509C 8007449C 01B33021 */ addu $a2, $t5, $s3 -/* 0750A0 800744A0 00402025 */ move $a0, $v0 -/* 0750A4 800744A4 0C033960 */ jal osEepromWrite -/* 0750A8 800744A8 322500FF */ andi $a1, $s1, 0xff -/* 0750AC 800744AC 26100001 */ addiu $s0, $s0, 1 -/* 0750B0 800744B0 1612FFF7 */ bne $s0, $s2, .L80074490 -/* 0750B4 800744B4 26310001 */ addiu $s1, $s1, 1 -.L800744B8: -/* 0750B8 800744B8 0C01C450 */ jal func_80071140 -/* 0750BC 800744BC 02602025 */ move $a0, $s3 -.L800744C0: -/* 0750C0 800744C0 8FBF0024 */ lw $ra, 0x24($sp) -/* 0750C4 800744C4 8FB00014 */ lw $s0, 0x14($sp) -/* 0750C8 800744C8 8FB10018 */ lw $s1, 0x18($sp) -/* 0750CC 800744CC 8FB2001C */ lw $s2, 0x1c($sp) -/* 0750D0 800744D0 8FB30020 */ lw $s3, 0x20($sp) -/* 0750D4 800744D4 03E00008 */ jr $ra -/* 0750D8 800744D8 27BD0058 */ addiu $sp, $sp, 0x58 - -glabel func_800744DC -/* 0750DC 800744DC 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0750E0 800744E0 AFBF0024 */ sw $ra, 0x24($sp) -/* 0750E4 800744E4 AFB10018 */ sw $s1, 0x18($sp) -/* 0750E8 800744E8 AFB00014 */ sw $s0, 0x14($sp) -/* 0750EC 800744EC 00808025 */ move $s0, $a0 -/* 0750F0 800744F0 00A08825 */ move $s1, $a1 -/* 0750F4 800744F4 AFB30020 */ sw $s3, 0x20($sp) -/* 0750F8 800744F8 0C01A840 */ jal func_8006A100 -/* 0750FC 800744FC AFB2001C */ sw $s2, 0x1c($sp) -/* 075100 80074500 0C033884 */ jal func_800CE210 -/* 075104 80074504 00402025 */ move $a0, $v0 -/* 075108 80074508 14400003 */ bnez $v0, .L80074518 -/* 07510C 8007450C 24120005 */ li $s2, 5 -/* 075110 80074510 10000028 */ b .L800745B4 -/* 075114 80074514 2402FFFF */ li $v0, -1 -.L80074518: -/* 075118 80074518 12000008 */ beqz $s0, .L8007453C -/* 07511C 8007451C 24040028 */ li $a0, 40 -/* 075120 80074520 24010001 */ li $at, 1 -/* 075124 80074524 12010007 */ beq $s0, $at, .L80074544 -/* 075128 80074528 24010002 */ li $at, 2 -/* 07512C 8007452C 12010007 */ beq $s0, $at, .L8007454C -/* 075130 80074530 2403000A */ li $v1, 10 -/* 075134 80074534 10000005 */ b .L8007454C -/* 075138 80074538 2403000A */ li $v1, 10 -.L8007453C: -/* 07513C 8007453C 10000003 */ b .L8007454C -/* 075140 80074540 00001825 */ move $v1, $zero -.L80074544: -/* 075144 80074544 10000001 */ b .L8007454C -/* 075148 80074548 24030005 */ li $v1, 5 -.L8007454C: -/* 07514C 8007454C 2405FFFF */ li $a1, -1 -/* 075150 80074550 0C01C327 */ jal func_80070C9C -/* 075154 80074554 AFA3002C */ sw $v1, 0x2c($sp) -/* 075158 80074558 00409825 */ move $s3, $v0 -/* 07515C 8007455C 02202025 */ move $a0, $s1 -/* 075160 80074560 0C01CCBA */ jal func_800732E8 -/* 075164 80074564 00402825 */ move $a1, $v0 -/* 075168 80074568 0C01BAB0 */ jal func_8006EAC0 -/* 07516C 8007456C 00000000 */ nop -/* 075170 80074570 8FA3002C */ lw $v1, 0x2c($sp) -/* 075174 80074574 1440000C */ bnez $v0, .L800745A8 -/* 075178 80074578 00008025 */ move $s0, $zero -/* 07517C 8007457C 00608825 */ move $s1, $v1 -.L80074580: -/* 075180 80074580 0C01A840 */ jal func_8006A100 -/* 075184 80074584 00000000 */ nop -/* 075188 80074588 001070C0 */ sll $t6, $s0, 3 -/* 07518C 8007458C 01D33021 */ addu $a2, $t6, $s3 -/* 075190 80074590 00402025 */ move $a0, $v0 -/* 075194 80074594 0C033960 */ jal osEepromWrite -/* 075198 80074598 322500FF */ andi $a1, $s1, 0xff -/* 07519C 8007459C 26100001 */ addiu $s0, $s0, 1 -/* 0751A0 800745A0 1612FFF7 */ bne $s0, $s2, .L80074580 -/* 0751A4 800745A4 26310001 */ addiu $s1, $s1, 1 -.L800745A8: -/* 0751A8 800745A8 0C01C450 */ jal func_80071140 -/* 0751AC 800745AC 02602025 */ move $a0, $s3 -/* 0751B0 800745B0 00001025 */ move $v0, $zero -.L800745B4: -/* 0751B4 800745B4 8FBF0024 */ lw $ra, 0x24($sp) -/* 0751B8 800745B8 8FB00014 */ lw $s0, 0x14($sp) -/* 0751BC 800745BC 8FB10018 */ lw $s1, 0x18($sp) -/* 0751C0 800745C0 8FB2001C */ lw $s2, 0x1c($sp) -/* 0751C4 800745C4 8FB30020 */ lw $s3, 0x20($sp) -/* 0751C8 800745C8 03E00008 */ jr $ra -/* 0751CC 800745CC 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_800745D0 -/* 0751D0 800745D0 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 0751D4 800745D4 AFBF0024 */ sw $ra, 0x24($sp) -/* 0751D8 800745D8 AFB00018 */ sw $s0, 0x18($sp) -/* 0751DC 800745DC 30B000FF */ andi $s0, $a1, 0xff -/* 0751E0 800745E0 AFB20020 */ sw $s2, 0x20($sp) -/* 0751E4 800745E4 AFB1001C */ sw $s1, 0x1c($sp) -/* 0751E8 800745E8 AFA40040 */ sw $a0, 0x40($sp) -/* 0751EC 800745EC 0C01A840 */ jal func_8006A100 -/* 0751F0 800745F0 AFA50044 */ sw $a1, 0x44($sp) -/* 0751F4 800745F4 0C033884 */ jal func_800CE210 -/* 0751F8 800745F8 00402025 */ move $a0, $v0 -/* 0751FC 800745FC 14400003 */ bnez $v0, .L8007460C -/* 075200 80074600 24040200 */ li $a0, 512 -/* 075204 80074604 10000034 */ b .L800746D8 -/* 075208 80074608 2402FFFF */ li $v0, -1 -.L8007460C: -/* 07520C 8007460C 0C01C327 */ jal func_80070C9C -/* 075210 80074610 2405FFFF */ li $a1, -1 -/* 075214 80074614 320F0001 */ andi $t7, $s0, 1 -/* 075218 80074618 00409025 */ move $s2, $v0 -/* 07521C 8007461C 11E00014 */ beqz $t7, .L80074670 -/* 075220 80074620 AFB00028 */ sw $s0, 0x28($sp) -/* 075224 80074624 24110018 */ li $s1, 24 -/* 075228 80074628 00008025 */ move $s0, $zero -.L8007462C: -/* 07522C 8007462C 0C01A840 */ jal func_8006A100 -/* 075230 80074630 00000000 */ nop -/* 075234 80074634 26050010 */ addiu $a1, $s0, 0x10 -/* 075238 80074638 30B800FF */ andi $t8, $a1, 0xff -/* 07523C 8007463C 0010C8C0 */ sll $t9, $s0, 3 -/* 075240 80074640 03323021 */ addu $a2, $t9, $s2 -/* 075244 80074644 03002825 */ move $a1, $t8 -/* 075248 80074648 0C0338A0 */ jal osEepromRead -/* 07524C 8007464C 00402025 */ move $a0, $v0 -/* 075250 80074650 26100001 */ addiu $s0, $s0, 1 -/* 075254 80074654 0211082A */ slt $at, $s0, $s1 -/* 075258 80074658 1420FFF4 */ bnez $at, .L8007462C -/* 07525C 8007465C 00000000 */ nop -/* 075260 80074660 8FA40040 */ lw $a0, 0x40($sp) -/* 075264 80074664 02402825 */ move $a1, $s2 -/* 075268 80074668 0C01CD62 */ jal func_80073588 -/* 07526C 8007466C 24060001 */ li $a2, 1 -.L80074670: -/* 075270 80074670 8FA80028 */ lw $t0, 0x28($sp) -/* 075274 80074674 24110018 */ li $s1, 24 -/* 075278 80074678 31090002 */ andi $t1, $t0, 2 -/* 07527C 8007467C 11200013 */ beqz $t1, .L800746CC -/* 075280 80074680 00008025 */ move $s0, $zero -.L80074684: -/* 075284 80074684 0C01A840 */ jal func_8006A100 -/* 075288 80074688 00000000 */ nop -/* 07528C 8007468C 26050028 */ addiu $a1, $s0, 0x28 -/* 075290 80074690 001058C0 */ sll $t3, $s0, 3 -/* 075294 80074694 024B3021 */ addu $a2, $s2, $t3 -/* 075298 80074698 30AA00FF */ andi $t2, $a1, 0xff -/* 07529C 8007469C 01402825 */ move $a1, $t2 -/* 0752A0 800746A0 24C600C0 */ addiu $a2, $a2, 0xc0 -/* 0752A4 800746A4 0C0338A0 */ jal osEepromRead -/* 0752A8 800746A8 00402025 */ move $a0, $v0 -/* 0752AC 800746AC 26100001 */ addiu $s0, $s0, 1 -/* 0752B0 800746B0 0211082A */ slt $at, $s0, $s1 -/* 0752B4 800746B4 1420FFF3 */ bnez $at, .L80074684 -/* 0752B8 800746B8 00000000 */ nop -/* 0752BC 800746BC 8FA40040 */ lw $a0, 0x40($sp) -/* 0752C0 800746C0 02402825 */ move $a1, $s2 -/* 0752C4 800746C4 0C01CD62 */ jal func_80073588 -/* 0752C8 800746C8 24060002 */ li $a2, 2 -.L800746CC: -/* 0752CC 800746CC 0C01C450 */ jal func_80071140 -/* 0752D0 800746D0 02402025 */ move $a0, $s2 -/* 0752D4 800746D4 00001025 */ move $v0, $zero -.L800746D8: -/* 0752D8 800746D8 8FBF0024 */ lw $ra, 0x24($sp) -/* 0752DC 800746DC 8FB00018 */ lw $s0, 0x18($sp) -/* 0752E0 800746E0 8FB1001C */ lw $s1, 0x1c($sp) -/* 0752E4 800746E4 8FB20020 */ lw $s2, 0x20($sp) -/* 0752E8 800746E8 03E00008 */ jr $ra -/* 0752EC 800746EC 27BD0040 */ addiu $sp, $sp, 0x40 - -glabel func_800746F0 -/* 0752F0 800746F0 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 0752F4 800746F4 AFBF0024 */ sw $ra, 0x24($sp) -/* 0752F8 800746F8 AFB1001C */ sw $s1, 0x1c($sp) -/* 0752FC 800746FC AFB00018 */ sw $s0, 0x18($sp) -/* 075300 80074700 00808025 */ move $s0, $a0 -/* 075304 80074704 30B100FF */ andi $s1, $a1, 0xff -/* 075308 80074708 AFB20020 */ sw $s2, 0x20($sp) -/* 07530C 8007470C 0C01A840 */ jal func_8006A100 -/* 075310 80074710 AFA50044 */ sw $a1, 0x44($sp) -/* 075314 80074714 0C033884 */ jal func_800CE210 -/* 075318 80074718 00402025 */ move $a0, $v0 -/* 07531C 8007471C 14400003 */ bnez $v0, .L8007472C -/* 075320 80074720 24040200 */ li $a0, 512 -/* 075324 80074724 10000033 */ b .L800747F4 -/* 075328 80074728 2402FFFF */ li $v0, -1 -.L8007472C: -/* 07532C 8007472C 0C01C327 */ jal func_80070C9C -/* 075330 80074730 2405FFFF */ li $a1, -1 -/* 075334 80074734 00409025 */ move $s2, $v0 -/* 075338 80074738 02002025 */ move $a0, $s0 -/* 07533C 8007473C 0C01CE29 */ jal func_800738A4 -/* 075340 80074740 00402825 */ move $a1, $v0 -/* 075344 80074744 322F0001 */ andi $t7, $s1, 1 -/* 075348 80074748 11E00011 */ beqz $t7, .L80074790 -/* 07534C 8007474C AFB10028 */ sw $s1, 0x28($sp) -/* 075350 80074750 0C01BAB0 */ jal func_8006EAC0 -/* 075354 80074754 24110018 */ li $s1, 24 -/* 075358 80074758 1440000D */ bnez $v0, .L80074790 -/* 07535C 8007475C 00008025 */ move $s0, $zero -.L80074760: -/* 075360 80074760 0C01A840 */ jal func_8006A100 -/* 075364 80074764 00000000 */ nop -/* 075368 80074768 26050010 */ addiu $a1, $s0, 0x10 -/* 07536C 8007476C 30B800FF */ andi $t8, $a1, 0xff -/* 075370 80074770 0010C8C0 */ sll $t9, $s0, 3 -/* 075374 80074774 03323021 */ addu $a2, $t9, $s2 -/* 075378 80074778 03002825 */ move $a1, $t8 -/* 07537C 8007477C 0C033960 */ jal osEepromWrite -/* 075380 80074780 00402025 */ move $a0, $v0 -/* 075384 80074784 26100001 */ addiu $s0, $s0, 1 -/* 075388 80074788 1611FFF5 */ bne $s0, $s1, .L80074760 -/* 07538C 8007478C 00000000 */ nop -.L80074790: -/* 075390 80074790 8FA80028 */ lw $t0, 0x28($sp) -/* 075394 80074794 00000000 */ nop -/* 075398 80074798 31090002 */ andi $t1, $t0, 2 -/* 07539C 8007479C 11200012 */ beqz $t1, .L800747E8 -/* 0753A0 800747A0 00000000 */ nop -/* 0753A4 800747A4 0C01BAB0 */ jal func_8006EAC0 -/* 0753A8 800747A8 24110018 */ li $s1, 24 -/* 0753AC 800747AC 1440000E */ bnez $v0, .L800747E8 -/* 0753B0 800747B0 00008025 */ move $s0, $zero -.L800747B4: -/* 0753B4 800747B4 0C01A840 */ jal func_8006A100 -/* 0753B8 800747B8 00000000 */ nop -/* 0753BC 800747BC 26050028 */ addiu $a1, $s0, 0x28 -/* 0753C0 800747C0 001058C0 */ sll $t3, $s0, 3 -/* 0753C4 800747C4 024B3021 */ addu $a2, $s2, $t3 -/* 0753C8 800747C8 30AA00FF */ andi $t2, $a1, 0xff -/* 0753CC 800747CC 01402825 */ move $a1, $t2 -/* 0753D0 800747D0 24C600C0 */ addiu $a2, $a2, 0xc0 -/* 0753D4 800747D4 0C033960 */ jal osEepromWrite -/* 0753D8 800747D8 00402025 */ move $a0, $v0 -/* 0753DC 800747DC 26100001 */ addiu $s0, $s0, 1 -/* 0753E0 800747E0 1611FFF4 */ bne $s0, $s1, .L800747B4 -/* 0753E4 800747E4 00000000 */ nop -.L800747E8: -/* 0753E8 800747E8 0C01C450 */ jal func_80071140 -/* 0753EC 800747EC 02402025 */ move $a0, $s2 -/* 0753F0 800747F0 00001025 */ move $v0, $zero -.L800747F4: -/* 0753F4 800747F4 8FBF0024 */ lw $ra, 0x24($sp) -/* 0753F8 800747F8 8FB00018 */ lw $s0, 0x18($sp) -/* 0753FC 800747FC 8FB1001C */ lw $s1, 0x1c($sp) -/* 075400 80074800 8FB20020 */ lw $s2, 0x20($sp) -/* 075404 80074804 03E00008 */ jr $ra -/* 075408 80074808 27BD0040 */ addiu $sp, $sp, 0x40 - -glabel func_8007480C -/* 07540C 8007480C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 075410 80074810 AFB20020 */ sw $s2, 0x20($sp) -/* 075414 80074814 AFB1001C */ sw $s1, 0x1c($sp) -/* 075418 80074818 AFB00018 */ sw $s0, 0x18($sp) -/* 07541C 8007481C AFBF0024 */ sw $ra, 0x24($sp) -/* 075420 80074820 AFA40028 */ sw $a0, 0x28($sp) -/* 075424 80074824 AFA5002C */ sw $a1, 0x2c($sp) -/* 075428 80074828 24110005 */ li $s1, 5 -/* 07542C 8007482C 00008025 */ move $s0, $zero -/* 075430 80074830 2412000E */ li $s2, 14 -.L80074834: -/* 075434 80074834 8FA40028 */ lw $a0, 0x28($sp) -/* 075438 80074838 8FA5002C */ lw $a1, 0x2c($sp) -/* 07543C 8007483C 00103880 */ sll $a3, $s0, 2 -/* 075440 80074840 0C033A98 */ jal __ull_rshift -/* 075444 80074844 000737C3 */ sra $a2, $a3, 0x1f -/* 075448 80074848 26100001 */ addiu $s0, $s0, 1 -/* 07544C 8007484C 3079000F */ andi $t9, $v1, 0xf -/* 075450 80074850 1612FFF8 */ bne $s0, $s2, .L80074834 -/* 075454 80074854 02398821 */ addu $s1, $s1, $t9 -/* 075458 80074858 8FBF0024 */ lw $ra, 0x24($sp) -/* 07545C 8007485C 02201025 */ move $v0, $s1 -/* 075460 80074860 8FB1001C */ lw $s1, 0x1c($sp) -/* 075464 80074864 8FB00018 */ lw $s0, 0x18($sp) -/* 075468 80074868 8FB20020 */ lw $s2, 0x20($sp) -/* 07546C 8007486C 03E00008 */ jr $ra -/* 075470 80074870 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_80074874 -/* 075474 80074874 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 075478 80074878 AFBF001C */ sw $ra, 0x1c($sp) -/* 07547C 8007487C AFB00018 */ sw $s0, 0x18($sp) -/* 075480 80074880 0C01A840 */ jal func_8006A100 -/* 075484 80074884 00808025 */ move $s0, $a0 -/* 075488 80074888 0C033884 */ jal func_800CE210 -/* 07548C 8007488C 00402025 */ move $a0, $v0 -/* 075490 80074890 14400003 */ bnez $v0, .L800748A0 -/* 075494 80074894 00000000 */ nop -/* 075498 80074898 10000034 */ b .L8007496C -/* 07549C 8007489C 2402FFFF */ li $v0, -1 -.L800748A0: -/* 0754A0 800748A0 0C01A840 */ jal func_8006A100 -/* 0754A4 800748A4 00000000 */ nop -/* 0754A8 800748A8 00402025 */ move $a0, $v0 -/* 0754AC 800748AC 2405000F */ li $a1, 15 -/* 0754B0 800748B0 0C0338A0 */ jal osEepromRead -/* 0754B4 800748B4 02003025 */ move $a2, $s0 -/* 0754B8 800748B8 8E040000 */ lw $a0, ($s0) -/* 0754BC 800748BC 8E050004 */ lw $a1, 4($s0) -/* 0754C0 800748C0 0C01D203 */ jal func_8007480C -/* 0754C4 800748C4 00000000 */ nop -/* 0754C8 800748C8 AFA20020 */ sw $v0, 0x20($sp) -/* 0754CC 800748CC 8E050004 */ lw $a1, 4($s0) -/* 0754D0 800748D0 8E040000 */ lw $a0, ($s0) -/* 0754D4 800748D4 24060000 */ li $a2, 0 -/* 0754D8 800748D8 0C033A98 */ jal __ull_rshift -/* 0754DC 800748DC 24070038 */ li $a3, 56 -/* 0754E0 800748E0 8FAE0020 */ lw $t6, 0x20($sp) -/* 0754E4 800748E4 24180000 */ li $t8, 0 -/* 0754E8 800748E8 11C3001F */ beq $t6, $v1, .L80074968 -/* 0754EC 800748EC 3C190300 */ lui $t9, 0x300 -/* 0754F0 800748F0 AE180000 */ sw $t8, ($s0) -/* 0754F4 800748F4 AE190004 */ sw $t9, 4($s0) -/* 0754F8 800748F8 24040000 */ li $a0, 0 -/* 0754FC 800748FC 3C050300 */ lui $a1, 0x300 -/* 075500 80074900 24060000 */ li $a2, 0 -/* 075504 80074904 0C033AC1 */ jal __ll_lshift -/* 075508 80074908 24070008 */ li $a3, 8 -/* 07550C 8007490C AE020000 */ sw $v0, ($s0) -/* 075510 80074910 AE030004 */ sw $v1, 4($s0) -/* 075514 80074914 00402025 */ move $a0, $v0 -/* 075518 80074918 00602825 */ move $a1, $v1 -/* 07551C 8007491C 24060000 */ li $a2, 0 -/* 075520 80074920 0C033A98 */ jal __ull_rshift -/* 075524 80074924 24070008 */ li $a3, 8 -/* 075528 80074928 AE020000 */ sw $v0, ($s0) -/* 07552C 8007492C AE030004 */ sw $v1, 4($s0) -/* 075530 80074930 00402025 */ move $a0, $v0 -/* 075534 80074934 0C01D203 */ jal func_8007480C -/* 075538 80074938 00602825 */ move $a1, $v1 -/* 07553C 8007493C 00402825 */ move $a1, $v0 -/* 075540 80074940 000227C3 */ sra $a0, $v0, 0x1f -/* 075544 80074944 24060000 */ li $a2, 0 -/* 075548 80074948 0C033AC1 */ jal __ll_lshift -/* 07554C 8007494C 24070038 */ li $a3, 56 -/* 075550 80074950 8E080000 */ lw $t0, ($s0) -/* 075554 80074954 8E090004 */ lw $t1, 4($s0) -/* 075558 80074958 01025025 */ or $t2, $t0, $v0 -/* 07555C 8007495C 01235825 */ or $t3, $t1, $v1 -/* 075560 80074960 AE0B0004 */ sw $t3, 4($s0) -/* 075564 80074964 AE0A0000 */ sw $t2, ($s0) -.L80074968: -/* 075568 80074968 24020001 */ li $v0, 1 -.L8007496C: -/* 07556C 8007496C 8FBF001C */ lw $ra, 0x1c($sp) -/* 075570 80074970 8FB00018 */ lw $s0, 0x18($sp) -/* 075574 80074974 03E00008 */ jr $ra -/* 075578 80074978 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_8007497C -/* 07557C 8007497C 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 075580 80074980 AFBF001C */ sw $ra, 0x1c($sp) -/* 075584 80074984 AFB00018 */ sw $s0, 0x18($sp) -/* 075588 80074988 0C01A840 */ jal func_8006A100 -/* 07558C 8007498C 00808025 */ move $s0, $a0 -/* 075590 80074990 0C033884 */ jal func_800CE210 -/* 075594 80074994 00402025 */ move $a0, $v0 -/* 075598 80074998 14400003 */ bnez $v0, .L800749A8 -/* 07559C 8007499C 24060000 */ li $a2, 0 -/* 0755A0 800749A0 10000026 */ b .L80074A3C -/* 0755A4 800749A4 2402FFFF */ li $v0, -1 -.L800749A8: -/* 0755A8 800749A8 8E040000 */ lw $a0, ($s0) -/* 0755AC 800749AC 8E050004 */ lw $a1, 4($s0) -/* 0755B0 800749B0 0C033AC1 */ jal __ll_lshift -/* 0755B4 800749B4 24070008 */ li $a3, 8 -/* 0755B8 800749B8 AE020000 */ sw $v0, ($s0) -/* 0755BC 800749BC AE030004 */ sw $v1, 4($s0) -/* 0755C0 800749C0 00402025 */ move $a0, $v0 -/* 0755C4 800749C4 00602825 */ move $a1, $v1 -/* 0755C8 800749C8 24060000 */ li $a2, 0 -/* 0755CC 800749CC 0C033A98 */ jal __ull_rshift -/* 0755D0 800749D0 24070008 */ li $a3, 8 -/* 0755D4 800749D4 AE020000 */ sw $v0, ($s0) -/* 0755D8 800749D8 AE030004 */ sw $v1, 4($s0) -/* 0755DC 800749DC 00402025 */ move $a0, $v0 -/* 0755E0 800749E0 0C01D203 */ jal func_8007480C -/* 0755E4 800749E4 00602825 */ move $a1, $v1 -/* 0755E8 800749E8 00402825 */ move $a1, $v0 -/* 0755EC 800749EC 000227C3 */ sra $a0, $v0, 0x1f -/* 0755F0 800749F0 24060000 */ li $a2, 0 -/* 0755F4 800749F4 0C033AC1 */ jal __ll_lshift -/* 0755F8 800749F8 24070038 */ li $a3, 56 -/* 0755FC 800749FC 8E0E0000 */ lw $t6, ($s0) -/* 075600 80074A00 8E0F0004 */ lw $t7, 4($s0) -/* 075604 80074A04 01C2C025 */ or $t8, $t6, $v0 -/* 075608 80074A08 01E3C825 */ or $t9, $t7, $v1 -/* 07560C 80074A0C AE190004 */ sw $t9, 4($s0) -/* 075610 80074A10 0C01BAB0 */ jal func_8006EAC0 -/* 075614 80074A14 AE180000 */ sw $t8, ($s0) -/* 075618 80074A18 14400008 */ bnez $v0, .L80074A3C -/* 07561C 80074A1C 24020001 */ li $v0, 1 -/* 075620 80074A20 0C01A840 */ jal func_8006A100 -/* 075624 80074A24 00000000 */ nop -/* 075628 80074A28 00402025 */ move $a0, $v0 -/* 07562C 80074A2C 2405000F */ li $a1, 15 -/* 075630 80074A30 0C033960 */ jal osEepromWrite -/* 075634 80074A34 02003025 */ move $a2, $s0 -/* 075638 80074A38 24020001 */ li $v0, 1 -.L80074A3C: -/* 07563C 80074A3C 8FBF001C */ lw $ra, 0x1c($sp) -/* 075640 80074A40 8FB00018 */ lw $s0, 0x18($sp) -/* 075644 80074A44 03E00008 */ jr $ra -/* 075648 80074A48 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_80074A4C -/* 07564C 80074A4C 84820006 */ lh $v0, 6($a0) -/* 075650 80074A50 00001825 */ move $v1, $zero -/* 075654 80074A54 00027080 */ sll $t6, $v0, 2 -/* 075658 80074A58 01C27023 */ subu $t6, $t6, $v0 -/* 07565C 80074A5C 000EC080 */ sll $t8, $t6, 2 -/* 075660 80074A60 27020008 */ addiu $v0, $t8, 8 -/* 075664 80074A64 0002CC00 */ sll $t9, $v0, 0x10 -/* 075668 80074A68 00191403 */ sra $v0, $t9, 0x10 -/* 07566C 80074A6C 28410003 */ slti $at, $v0, 3 -/* 075670 80074A70 1420000B */ bnez $at, .L80074AA0 -/* 075674 80074A74 24050002 */ li $a1, 2 -.L80074A78: -/* 075678 80074A78 00854821 */ addu $t1, $a0, $a1 -/* 07567C 80074A7C 912A0000 */ lbu $t2, ($t1) -/* 075680 80074A80 24A50001 */ addiu $a1, $a1, 1 -/* 075684 80074A84 00056C00 */ sll $t5, $a1, 0x10 -/* 075688 80074A88 000D2C03 */ sra $a1, $t5, 0x10 -/* 07568C 80074A8C 006A1821 */ addu $v1, $v1, $t2 -/* 075690 80074A90 00A2082A */ slt $at, $a1, $v0 -/* 075694 80074A94 00035C00 */ sll $t3, $v1, 0x10 -/* 075698 80074A98 1420FFF7 */ bnez $at, .L80074A78 -/* 07569C 80074A9C 000B1C03 */ sra $v1, $t3, 0x10 -.L80074AA0: -/* 0756A0 80074AA0 03E00008 */ jr $ra -/* 0756A4 80074AA4 00601025 */ move $v0, $v1 - -glabel func_80074AA8 -/* 0756A8 80074AA8 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0756AC 80074AAC AFBF001C */ sw $ra, 0x1c($sp) -/* 0756B0 80074AB0 AFB00018 */ sw $s0, 0x18($sp) -/* 0756B4 80074AB4 AFA50024 */ sw $a1, 0x24($sp) -/* 0756B8 80074AB8 AFA60028 */ sw $a2, 0x28($sp) -/* 0756BC 80074ABC AFA7002C */ sw $a3, 0x2c($sp) -/* 0756C0 80074AC0 A4800000 */ sh $zero, ($a0) -/* 0756C4 80074AC4 87B80026 */ lh $t8, 0x26($sp) -/* 0756C8 80074AC8 00077400 */ sll $t6, $a3, 0x10 -/* 0756CC 80074ACC A0800003 */ sb $zero, 3($a0) -/* 0756D0 80074AD0 A0980002 */ sb $t8, 2($a0) -/* 0756D4 80074AD4 87B9002A */ lh $t9, 0x2a($sp) -/* 0756D8 80074AD8 000E7C03 */ sra $t7, $t6, 0x10 -/* 0756DC 80074ADC 00808025 */ move $s0, $a0 -/* 0756E0 80074AE0 A48F0006 */ sh $t7, 6($a0) -/* 0756E4 80074AE4 000F3080 */ sll $a2, $t7, 2 -/* 0756E8 80074AE8 A4990004 */ sh $t9, 4($a0) -/* 0756EC 80074AEC 8FA40030 */ lw $a0, 0x30($sp) -/* 0756F0 80074AF0 00CF3023 */ subu $a2, $a2, $t7 -/* 0756F4 80074AF4 00063080 */ sll $a2, $a2, 2 -/* 0756F8 80074AF8 0C032768 */ jal bcopy -/* 0756FC 80074AFC 26050008 */ addiu $a1, $s0, 8 -/* 075700 80074B00 0C01D293 */ jal func_80074A4C -/* 075704 80074B04 02002025 */ move $a0, $s0 -/* 075708 80074B08 A6020000 */ sh $v0, ($s0) -/* 07570C 80074B0C 8FBF001C */ lw $ra, 0x1c($sp) -/* 075710 80074B10 8FB00018 */ lw $s0, 0x18($sp) -/* 075714 80074B14 03E00008 */ jr $ra -/* 075718 80074B18 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_80074B1C -/* 07571C 80074B1C 24031100 */ li $v1, 4352 -/* 075720 80074B20 00031080 */ sll $v0, $v1, 2 -/* 075724 80074B24 00431023 */ subu $v0, $v0, $v1 -/* 075728 80074B28 00021040 */ sll $v0, $v0, 1 -/* 07572C 80074B2C 03E00008 */ jr $ra -/* 075730 80074B30 24420100 */ addiu $v0, $v0, 0x100 - -glabel func_80074B34 -/* 075734 80074B34 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 075738 80074B38 AFBF001C */ sw $ra, 0x1c($sp) -/* 07573C 80074B3C AFA40058 */ sw $a0, 0x58($sp) -/* 075740 80074B40 AFA5005C */ sw $a1, 0x5c($sp) -/* 075744 80074B44 AFA60060 */ sw $a2, 0x60($sp) -/* 075748 80074B48 AFA70064 */ sw $a3, 0x64($sp) -/* 07574C 80074B4C 0C01D637 */ jal func_800758DC -/* 075750 80074B50 AFA00040 */ sw $zero, 0x40($sp) -/* 075754 80074B54 10400007 */ beqz $v0, .L80074B74 -/* 075758 80074B58 3C05800E */ lui $a1, %hi(D_800E773C) # $a1, 0x800e -/* 07575C 80074B5C 8FA40058 */ lw $a0, 0x58($sp) -/* 075760 80074B60 0C01D6BB */ jal func_80075AEC -/* 075764 80074B64 AFA2004C */ sw $v0, 0x4c($sp) -/* 075768 80074B68 8FA2004C */ lw $v0, 0x4c($sp) -/* 07576C 80074B6C 100000CF */ b .L80074EAC -/* 075770 80074B70 8FBF001C */ lw $ra, 0x1c($sp) -.L80074B74: -/* 075774 80074B74 8FA20064 */ lw $v0, 0x64($sp) -/* 075778 80074B78 24A5773C */ addiu $a1, %lo(D_800E773C) # addiu $a1, $a1, 0x773c -/* 07577C 80074B7C 10400006 */ beqz $v0, .L80074B98 -/* 075780 80074B80 3C06800E */ lui $a2, %hi(D_800E774C) # $a2, 0x800e -/* 075784 80074B84 8FAF0068 */ lw $t7, 0x68($sp) -/* 075788 80074B88 240EFFFF */ li $t6, -1 -/* 07578C 80074B8C 3418FFFF */ li $t8, 65535 -/* 075790 80074B90 A5EE0000 */ sh $t6, ($t7) -/* 075794 80074B94 A4580000 */ sh $t8, ($v0) -.L80074B98: -/* 075798 80074B98 8FA40058 */ lw $a0, 0x58($sp) -/* 07579C 80074B9C 24C6774C */ addiu $a2, %lo(D_800E774C) # addiu $a2, $a2, 0x774c -/* 0757A0 80074BA0 0C01D93A */ jal func_800764E8 -/* 0757A4 80074BA4 27A70048 */ addiu $a3, $sp, 0x48 -/* 0757A8 80074BA8 144000A1 */ bnez $v0, .L80074E30 -/* 0757AC 80074BAC 00403825 */ move $a3, $v0 -/* 0757B0 80074BB0 24040100 */ li $a0, 256 -/* 0757B4 80074BB4 0C01C327 */ jal func_80070C9C -/* 0757B8 80074BB8 240500FF */ li $a1, 255 -/* 0757BC 80074BBC 8FB90058 */ lw $t9, 0x58($sp) -/* 0757C0 80074BC0 3C0B8012 */ lui $t3, %hi(D_80124018) # $t3, 0x8012 -/* 0757C4 80074BC4 00195080 */ sll $t2, $t9, 2 -/* 0757C8 80074BC8 01595023 */ subu $t2, $t2, $t9 -/* 0757CC 80074BCC 000A5080 */ sll $t2, $t2, 2 -/* 0757D0 80074BD0 01595021 */ addu $t2, $t2, $t9 -/* 0757D4 80074BD4 000A50C0 */ sll $t2, $t2, 3 -/* 0757D8 80074BD8 256B4018 */ addiu $t3, %lo(D_80124018) # addiu $t3, $t3, 0x4018 -/* 0757DC 80074BDC 014B6021 */ addu $t4, $t2, $t3 -/* 0757E0 80074BE0 AFA20050 */ sw $v0, 0x50($sp) -/* 0757E4 80074BE4 AFAC0030 */ sw $t4, 0x30($sp) -/* 0757E8 80074BE8 8D8D0000 */ lw $t5, ($t4) -/* 0757EC 80074BEC 01802825 */ move $a1, $t4 -/* 0757F0 80074BF0 31AE0001 */ andi $t6, $t5, 1 -/* 0757F4 80074BF4 15C00004 */ bnez $t6, .L80074C08 -/* 0757F8 80074BF8 3C048012 */ lui $a0, %hi(D_80124010) # $a0, 0x8012 -/* 0757FC 80074BFC 8C844010 */ lw $a0, %lo(D_80124010)($a0) -/* 075800 80074C00 0C033B48 */ jal func_800CED20 -/* 075804 80074C04 03203025 */ move $a2, $t9 -.L80074C08: -/* 075808 80074C08 8FA40058 */ lw $a0, 0x58($sp) -/* 07580C 80074C0C 8FA50048 */ lw $a1, 0x48($sp) -/* 075810 80074C10 8FA60050 */ lw $a2, 0x50($sp) -/* 075814 80074C14 0C01D984 */ jal func_80076610 -/* 075818 80074C18 24070100 */ li $a3, 256 -/* 07581C 80074C1C 87A8005E */ lh $t0, 0x5e($sp) -/* 075820 80074C20 87A90062 */ lh $t1, 0x62($sp) -/* 075824 80074C24 1440003F */ bnez $v0, .L80074D24 -/* 075828 80074C28 00403825 */ move $a3, $v0 -/* 07582C 80074C2C 8FA60050 */ lw $a2, 0x50($sp) -/* 075830 80074C30 3C014748 */ lui $at, (0x47485353 >> 16) # lui $at, 0x4748 -/* 075834 80074C34 8CCF0000 */ lw $t7, ($a2) -/* 075838 80074C38 34215353 */ ori $at, (0x47485353 & 0xFFFF) # ori $at, $at, 0x5353 -/* 07583C 80074C3C 15E10038 */ bne $t7, $at, .L80074D20 -/* 075840 80074C40 24C50004 */ addiu $a1, $a2, 4 -/* 075844 80074C44 00001825 */ move $v1, $zero -/* 075848 80074C48 00A01025 */ move $v0, $a1 -.L80074C4C: -/* 07584C 80074C4C 90580000 */ lbu $t8, ($v0) -/* 075850 80074C50 24630004 */ addiu $v1, $v1, 4 -/* 075854 80074C54 1518000D */ bne $t0, $t8, .L80074C8C -/* 075858 80074C58 28610018 */ slti $at, $v1, 0x18 -/* 07585C 80074C5C 904A0001 */ lbu $t2, 1($v0) -/* 075860 80074C60 00000000 */ nop -/* 075864 80074C64 152A0009 */ bne $t1, $t2, .L80074C8C -/* 075868 80074C68 00000000 */ nop -/* 07586C 80074C6C 844B0002 */ lh $t3, 2($v0) -/* 075870 80074C70 00000000 */ nop -/* 075874 80074C74 AFAB0040 */ sw $t3, 0x40($sp) -/* 075878 80074C78 844D0006 */ lh $t5, 6($v0) -/* 07587C 80074C7C 00000000 */ nop -/* 075880 80074C80 01AB6023 */ subu $t4, $t5, $t3 -/* 075884 80074C84 10000003 */ b .L80074C94 -/* 075888 80074C88 AFAC003C */ sw $t4, 0x3c($sp) -.L80074C8C: -/* 07588C 80074C8C 1420FFEF */ bnez $at, .L80074C4C -/* 075890 80074C90 24420004 */ addiu $v0, $v0, 4 -.L80074C94: -/* 075894 80074C94 8FB90040 */ lw $t9, 0x40($sp) -/* 075898 80074C98 240300FF */ li $v1, 255 -/* 07589C 80074C9C 17200021 */ bnez $t9, .L80074D24 -/* 0758A0 80074CA0 24040002 */ li $a0, 2 -/* 0758A4 80074CA4 90AF0000 */ lbu $t7, ($a1) -/* 0758A8 80074CA8 24070006 */ li $a3, 6 -/* 0758AC 80074CAC 146F0002 */ bne $v1, $t7, .L80074CB8 -/* 0758B0 80074CB0 00A01025 */ move $v0, $a1 -/* 0758B4 80074CB4 24070008 */ li $a3, 8 -.L80074CB8: -/* 0758B8 80074CB8 90580004 */ lbu $t8, 4($v0) -/* 0758BC 80074CBC 00045080 */ sll $t2, $a0, 2 -/* 0758C0 80074CC0 14780002 */ bne $v1, $t8, .L80074CCC -/* 0758C4 80074CC4 00AA1021 */ addu $v0, $a1, $t2 -/* 0758C8 80074CC8 24070008 */ li $a3, 8 -.L80074CCC: -/* 0758CC 80074CCC 904B0000 */ lbu $t3, ($v0) -/* 0758D0 80074CD0 00000000 */ nop -/* 0758D4 80074CD4 146B0002 */ bne $v1, $t3, .L80074CE0 -/* 0758D8 80074CD8 00000000 */ nop -/* 0758DC 80074CDC 24070008 */ li $a3, 8 -.L80074CE0: -/* 0758E0 80074CE0 904D0004 */ lbu $t5, 4($v0) -/* 0758E4 80074CE4 00000000 */ nop -/* 0758E8 80074CE8 146D0002 */ bne $v1, $t5, .L80074CF4 -/* 0758EC 80074CEC 00000000 */ nop -/* 0758F0 80074CF0 24070008 */ li $a3, 8 -.L80074CF4: -/* 0758F4 80074CF4 904E0008 */ lbu $t6, 8($v0) -/* 0758F8 80074CF8 00000000 */ nop -/* 0758FC 80074CFC 146E0002 */ bne $v1, $t6, .L80074D08 -/* 075900 80074D00 00000000 */ nop -/* 075904 80074D04 24070008 */ li $a3, 8 -.L80074D08: -/* 075908 80074D08 904C000C */ lbu $t4, 0xc($v0) -/* 07590C 80074D0C 00000000 */ nop -/* 075910 80074D10 146C0005 */ bne $v1, $t4, .L80074D28 -/* 075914 80074D14 8FA40050 */ lw $a0, 0x50($sp) -/* 075918 80074D18 10000002 */ b .L80074D24 -/* 07591C 80074D1C 24070008 */ li $a3, 8 -.L80074D20: -/* 075920 80074D20 24070009 */ li $a3, 9 -.L80074D24: -/* 075924 80074D24 8FA40050 */ lw $a0, 0x50($sp) -.L80074D28: -/* 075928 80074D28 0C01C450 */ jal func_80071140 -/* 07592C 80074D2C AFA7004C */ sw $a3, 0x4c($sp) -/* 075930 80074D30 8FB90040 */ lw $t9, 0x40($sp) -/* 075934 80074D34 8FA7004C */ lw $a3, 0x4c($sp) -/* 075938 80074D38 13200037 */ beqz $t9, .L80074E18 -/* 07593C 80074D3C 8FAB0040 */ lw $t3, 0x40($sp) -/* 075940 80074D40 8FAF0064 */ lw $t7, 0x64($sp) -/* 075944 80074D44 8FA4003C */ lw $a0, 0x3c($sp) -/* 075948 80074D48 11E00032 */ beqz $t7, .L80074E14 -/* 07594C 80074D4C 24840100 */ addiu $a0, $a0, 0x100 -/* 075950 80074D50 0C01C327 */ jal func_80070C9C -/* 075954 80074D54 240500FF */ li $a1, 255 -/* 075958 80074D58 8FB8003C */ lw $t8, 0x3c($sp) -/* 07595C 80074D5C 8FA40030 */ lw $a0, 0x30($sp) -/* 075960 80074D60 8FA50048 */ lw $a1, 0x48($sp) -/* 075964 80074D64 8FA70040 */ lw $a3, 0x40($sp) -/* 075968 80074D68 AFA20050 */ sw $v0, 0x50($sp) -/* 07596C 80074D6C 00003025 */ move $a2, $zero -/* 075970 80074D70 AFA20014 */ sw $v0, 0x14($sp) -/* 075974 80074D74 0C033BF7 */ jal func_800CEFDC -/* 075978 80074D78 AFB80010 */ sw $t8, 0x10($sp) -/* 07597C 80074D7C 14400020 */ bnez $v0, .L80074E00 -/* 075980 80074D80 24070009 */ li $a3, 9 -/* 075984 80074D84 8FA40050 */ lw $a0, 0x50($sp) -/* 075988 80074D88 0C01D293 */ jal func_80074A4C -/* 07598C 80074D8C 00000000 */ nop -/* 075990 80074D90 8FAA0050 */ lw $t2, 0x50($sp) -/* 075994 80074D94 8FAE0064 */ lw $t6, 0x64($sp) -/* 075998 80074D98 854B0000 */ lh $t3, ($t2) -/* 07599C 80074D9C 00000000 */ nop -/* 0759A0 80074DA0 144B0015 */ bne $v0, $t3, .L80074DF8 -/* 0759A4 80074DA4 00000000 */ nop -/* 0759A8 80074DA8 914D0002 */ lbu $t5, 2($t2) -/* 0759AC 80074DAC 8FA2006C */ lw $v0, 0x6c($sp) -/* 0759B0 80074DB0 A5CD0000 */ sh $t5, ($t6) -/* 0759B4 80074DB4 8FB90068 */ lw $t9, 0x68($sp) -/* 0759B8 80074DB8 854C0004 */ lh $t4, 4($t2) -/* 0759BC 80074DBC 00000000 */ nop -/* 0759C0 80074DC0 A72C0000 */ sh $t4, ($t9) -/* 0759C4 80074DC4 854F0006 */ lh $t7, 6($t2) -/* 0759C8 80074DC8 00000000 */ nop -/* 0759CC 80074DCC A44F0000 */ sh $t7, ($v0) -/* 0759D0 80074DD0 84460000 */ lh $a2, ($v0) -/* 0759D4 80074DD4 8FA40050 */ lw $a0, 0x50($sp) -/* 0759D8 80074DD8 0006C080 */ sll $t8, $a2, 2 -/* 0759DC 80074DDC 8FA50070 */ lw $a1, 0x70($sp) -/* 0759E0 80074DE0 0306C023 */ subu $t8, $t8, $a2 -/* 0759E4 80074DE4 00183080 */ sll $a2, $t8, 2 -/* 0759E8 80074DE8 0C032768 */ jal bcopy -/* 0759EC 80074DEC 24840008 */ addiu $a0, $a0, 8 -/* 0759F0 80074DF0 10000003 */ b .L80074E00 -/* 0759F4 80074DF4 00003825 */ move $a3, $zero -.L80074DF8: -/* 0759F8 80074DF8 10000001 */ b .L80074E00 -/* 0759FC 80074DFC 24070009 */ li $a3, 9 -.L80074E00: -/* 075A00 80074E00 8FA40050 */ lw $a0, 0x50($sp) -/* 075A04 80074E04 0C01C450 */ jal func_80071140 -/* 075A08 80074E08 AFA7004C */ sw $a3, 0x4c($sp) -/* 075A0C 80074E0C 8FA7004C */ lw $a3, 0x4c($sp) -/* 075A10 80074E10 00000000 */ nop -.L80074E14: -/* 075A14 80074E14 8FAB0040 */ lw $t3, 0x40($sp) -.L80074E18: -/* 075A18 80074E18 8FAD0064 */ lw $t5, 0x64($sp) -/* 075A1C 80074E1C 11600005 */ beqz $t3, .L80074E34 -/* 075A20 80074E20 8FA40058 */ lw $a0, 0x58($sp) -/* 075A24 80074E24 15A00003 */ bnez $t5, .L80074E34 -/* 075A28 80074E28 8FA40058 */ lw $a0, 0x58($sp) -/* 075A2C 80074E2C 00003825 */ move $a3, $zero -.L80074E30: -/* 075A30 80074E30 8FA40058 */ lw $a0, 0x58($sp) -.L80074E34: -/* 075A34 80074E34 0C01D6BB */ jal func_80075AEC -/* 075A38 80074E38 AFA7004C */ sw $a3, 0x4c($sp) -/* 075A3C 80074E3C 8FA7004C */ lw $a3, 0x4c($sp) -/* 075A40 80074E40 24010005 */ li $at, 5 -/* 075A44 80074E44 14E10017 */ bne $a3, $at, .L80074EA4 -/* 075A48 80074E48 27A50038 */ addiu $a1, $sp, 0x38 -/* 075A4C 80074E4C 8FA40058 */ lw $a0, 0x58($sp) -/* 075A50 80074E50 27A60034 */ addiu $a2, $sp, 0x34 -/* 075A54 80074E54 0C01D865 */ jal func_80076194 -/* 075A58 80074E58 AFA7004C */ sw $a3, 0x4c($sp) -/* 075A5C 80074E5C 8FA7004C */ lw $a3, 0x4c($sp) -/* 075A60 80074E60 1440000E */ bnez $v0, .L80074E9C -/* 075A64 80074E64 00000000 */ nop -/* 075A68 80074E68 0C01D2C7 */ jal func_80074B1C -/* 075A6C 80074E6C AFA7004C */ sw $a3, 0x4c($sp) -/* 075A70 80074E70 8FAE0038 */ lw $t6, 0x38($sp) -/* 075A74 80074E74 8FA7004C */ lw $a3, 0x4c($sp) -/* 075A78 80074E78 01C2082A */ slt $at, $t6, $v0 -/* 075A7C 80074E7C 14200005 */ bnez $at, .L80074E94 -/* 075A80 80074E80 00000000 */ nop -/* 075A84 80074E84 8FAC0034 */ lw $t4, 0x34($sp) -/* 075A88 80074E88 00000000 */ nop -/* 075A8C 80074E8C 15800006 */ bnez $t4, .L80074EA8 -/* 075A90 80074E90 00E01025 */ move $v0, $a3 -.L80074E94: -/* 075A94 80074E94 10000004 */ b .L80074EA8 -/* 075A98 80074E98 24020004 */ li $v0, 4 -.L80074E9C: -/* 075A9C 80074E9C 10000002 */ b .L80074EA8 -/* 075AA0 80074EA0 24020009 */ li $v0, 9 -.L80074EA4: -/* 075AA4 80074EA4 00E01025 */ move $v0, $a3 -.L80074EA8: -/* 075AA8 80074EA8 8FBF001C */ lw $ra, 0x1c($sp) -.L80074EAC: -/* 075AAC 80074EAC 27BD0058 */ addiu $sp, $sp, 0x58 -/* 075AB0 80074EB0 03E00008 */ jr $ra -/* 075AB4 80074EB4 00000000 */ nop - -glabel func_80074EB8 -/* 075AB8 80074EB8 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 075ABC 80074EBC AFA60048 */ sw $a2, 0x48($sp) -/* 075AC0 80074EC0 24061100 */ li $a2, 4352 -/* 075AC4 80074EC4 00061080 */ sll $v0, $a2, 2 -/* 075AC8 80074EC8 00461023 */ subu $v0, $v0, $a2 -/* 075ACC 80074ECC AFBF001C */ sw $ra, 0x1c($sp) -/* 075AD0 80074ED0 AFA40040 */ sw $a0, 0x40($sp) -/* 075AD4 80074ED4 AFA50044 */ sw $a1, 0x44($sp) -/* 075AD8 80074ED8 00021040 */ sll $v0, $v0, 1 -/* 075ADC 80074EDC AFA7004C */ sw $a3, 0x4c($sp) -/* 075AE0 80074EE0 24440200 */ addiu $a0, $v0, 0x200 -/* 075AE4 80074EE4 AFA20024 */ sw $v0, 0x24($sp) -/* 075AE8 80074EE8 240500FF */ li $a1, 255 -/* 075AEC 80074EEC 0C01C327 */ jal func_80070C9C -/* 075AF0 80074EF0 AFA60030 */ sw $a2, 0x30($sp) -/* 075AF4 80074EF4 3C0E4748 */ lui $t6, (0x47485353 >> 16) # lui $t6, 0x4748 -/* 075AF8 80074EF8 8FA60030 */ lw $a2, 0x30($sp) -/* 075AFC 80074EFC 35CE5353 */ ori $t6, (0x47485353 & 0xFFFF) # ori $t6, $t6, 0x5353 -/* 075B00 80074F00 AC4E0000 */ sw $t6, ($v0) -/* 075B04 80074F04 87AF0046 */ lh $t7, 0x46($sp) -/* 075B08 80074F08 24190100 */ li $t9, 256 -/* 075B0C 80074F0C A04F0004 */ sb $t7, 4($v0) -/* 075B10 80074F10 87B8004A */ lh $t8, 0x4a($sp) -/* 075B14 80074F14 A4590006 */ sh $t9, 6($v0) -/* 075B18 80074F18 844A0006 */ lh $t2, 6($v0) -/* 075B1C 80074F1C 00404825 */ move $t1, $v0 -/* 075B20 80074F20 01465821 */ addu $t3, $t2, $a2 -/* 075B24 80074F24 24430004 */ addiu $v1, $v0, 4 -/* 075B28 80074F28 A44B000A */ sh $t3, 0xa($v0) -/* 075B2C 80074F2C A0580005 */ sb $t8, 5($v0) -/* 075B30 80074F30 24620004 */ addiu $v0, $v1, 4 -/* 075B34 80074F34 240400FF */ li $a0, 255 -/* 075B38 80074F38 A0440000 */ sb $a0, ($v0) -/* 075B3C 80074F3C 846C0006 */ lh $t4, 6($v1) -/* 075B40 80074F40 A0440004 */ sb $a0, 4($v0) -/* 075B44 80074F44 A44C0002 */ sh $t4, 2($v0) -/* 075B48 80074F48 846D0006 */ lh $t5, 6($v1) -/* 075B4C 80074F4C 24050003 */ li $a1, 3 -/* 075B50 80074F50 00057080 */ sll $t6, $a1, 2 -/* 075B54 80074F54 A44D0006 */ sh $t5, 6($v0) -/* 075B58 80074F58 006E1021 */ addu $v0, $v1, $t6 -/* 075B5C 80074F5C A0440000 */ sb $a0, ($v0) -/* 075B60 80074F60 846F0006 */ lh $t7, 6($v1) -/* 075B64 80074F64 A0440004 */ sb $a0, 4($v0) -/* 075B68 80074F68 A44F0002 */ sh $t7, 2($v0) -/* 075B6C 80074F6C 84780006 */ lh $t8, 6($v1) -/* 075B70 80074F70 A0440008 */ sb $a0, 8($v0) -/* 075B74 80074F74 A4580006 */ sh $t8, 6($v0) -/* 075B78 80074F78 84790006 */ lh $t9, 6($v1) -/* 075B7C 80074F7C A044000C */ sb $a0, 0xc($v0) -/* 075B80 80074F80 A459000A */ sh $t9, 0xa($v0) -/* 075B84 80074F84 846A0006 */ lh $t2, 6($v1) -/* 075B88 80074F88 00000000 */ nop -/* 075B8C 80074F8C A44A000E */ sh $t2, 0xe($v0) -/* 075B90 80074F90 846B0002 */ lh $t3, 2($v1) -/* 075B94 80074F94 8FAC0058 */ lw $t4, 0x58($sp) -/* 075B98 80074F98 87A70056 */ lh $a3, 0x56($sp) -/* 075B9C 80074F9C 87A60052 */ lh $a2, 0x52($sp) -/* 075BA0 80074FA0 87A5004E */ lh $a1, 0x4e($sp) -/* 075BA4 80074FA4 AFA90038 */ sw $t1, 0x38($sp) -/* 075BA8 80074FA8 01692021 */ addu $a0, $t3, $t1 -/* 075BAC 80074FAC 0C01D2AA */ jal func_80074AA8 -/* 075BB0 80074FB0 AFAC0010 */ sw $t4, 0x10($sp) -/* 075BB4 80074FB4 8FAE0024 */ lw $t6, 0x24($sp) -/* 075BB8 80074FB8 8FAD0038 */ lw $t5, 0x38($sp) -/* 075BBC 80074FBC 8FA40040 */ lw $a0, 0x40($sp) -/* 075BC0 80074FC0 3C06800E */ lui $a2, %hi(D_800E7768) # $a2, 0x800e -/* 075BC4 80074FC4 3C07800E */ lui $a3, %hi(D_800E7778) # $a3, 0x800e -/* 075BC8 80074FC8 25CF0100 */ addiu $t7, $t6, 0x100 -/* 075BCC 80074FCC AFAF0014 */ sw $t7, 0x14($sp) -/* 075BD0 80074FD0 24E77778 */ addiu $a3, %lo(D_800E7778) # addiu $a3, $a3, 0x7778 -/* 075BD4 80074FD4 24C67768 */ addiu $a2, %lo(D_800E7768) # addiu $a2, $a2, 0x7768 -/* 075BD8 80074FD8 2405FFFF */ li $a1, -1 -/* 075BDC 80074FDC 0C01D9B5 */ jal func_800766D4 -/* 075BE0 80074FE0 AFAD0010 */ sw $t5, 0x10($sp) -/* 075BE4 80074FE4 8FA40038 */ lw $a0, 0x38($sp) -/* 075BE8 80074FE8 0C01C450 */ jal func_80071140 -/* 075BEC 80074FEC AFA20028 */ sw $v0, 0x28($sp) -/* 075BF0 80074FF0 8FBF001C */ lw $ra, 0x1c($sp) -/* 075BF4 80074FF4 8FA20028 */ lw $v0, 0x28($sp) -/* 075BF8 80074FF8 03E00008 */ jr $ra -/* 075BFC 80074FFC 27BD0040 */ addiu $sp, $sp, 0x40 - -glabel func_80075000 -/* 075C00 80075000 27BDFF88 */ addiu $sp, $sp, -0x78 -/* 075C04 80075004 AFBF0034 */ sw $ra, 0x34($sp) -/* 075C08 80075008 AFB20030 */ sw $s2, 0x30($sp) -/* 075C0C 8007500C AFB1002C */ sw $s1, 0x2c($sp) -/* 075C10 80075010 AFB00028 */ sw $s0, 0x28($sp) -/* 075C14 80075014 AFA40078 */ sw $a0, 0x78($sp) -/* 075C18 80075018 AFA5007C */ sw $a1, 0x7c($sp) -/* 075C1C 8007501C AFA60080 */ sw $a2, 0x80($sp) -/* 075C20 80075020 0C01D637 */ jal func_800758DC -/* 075C24 80075024 AFA70084 */ sw $a3, 0x84($sp) -/* 075C28 80075028 10400006 */ beqz $v0, .L80075044 -/* 075C2C 8007502C 00408025 */ move $s0, $v0 -/* 075C30 80075030 8FA40078 */ lw $a0, 0x78($sp) -/* 075C34 80075034 0C01D6BB */ jal func_80075AEC -/* 075C38 80075038 00000000 */ nop -/* 075C3C 8007503C 100000E0 */ b .L800753C0 -/* 075C40 80075040 02001025 */ move $v0, $s0 -.L80075044: -/* 075C44 80075044 8FA40078 */ lw $a0, 0x78($sp) -/* 075C48 80075048 3C05800E */ lui $a1, %hi(D_800E777C) # $a1, 0x800e -/* 075C4C 8007504C 3C06800E */ lui $a2, %hi(D_800E778C) # $a2, 0x800e -/* 075C50 80075050 24111100 */ li $s1, 4352 -/* 075C54 80075054 24C6778C */ addiu $a2, %lo(D_800E778C) # addiu $a2, $a2, 0x778c -/* 075C58 80075058 24A5777C */ addiu $a1, %lo(D_800E777C) # addiu $a1, $a1, 0x777c -/* 075C5C 8007505C 0C01D93A */ jal func_800764E8 -/* 075C60 80075060 27A7004C */ addiu $a3, $sp, 0x4c -/* 075C64 80075064 24010005 */ li $at, 5 -/* 075C68 80075068 14410011 */ bne $v0, $at, .L800750B0 -/* 075C6C 8007506C 00408025 */ move $s0, $v0 -/* 075C70 80075070 8FA40078 */ lw $a0, 0x78($sp) -/* 075C74 80075074 0C01D6BB */ jal func_80075AEC -/* 075C78 80075078 00000000 */ nop -/* 075C7C 8007507C 87AE008A */ lh $t6, 0x8a($sp) -/* 075C80 80075080 87AF008E */ lh $t7, 0x8e($sp) -/* 075C84 80075084 8FB80090 */ lw $t8, 0x90($sp) -/* 075C88 80075088 8FA40078 */ lw $a0, 0x78($sp) -/* 075C8C 8007508C 87A5007E */ lh $a1, 0x7e($sp) -/* 075C90 80075090 87A60082 */ lh $a2, 0x82($sp) -/* 075C94 80075094 87A70086 */ lh $a3, 0x86($sp) -/* 075C98 80075098 AFAE0010 */ sw $t6, 0x10($sp) -/* 075C9C 8007509C AFAF0014 */ sw $t7, 0x14($sp) -/* 075CA0 800750A0 0C01D3AE */ jal func_80074EB8 -/* 075CA4 800750A4 AFB80018 */ sw $t8, 0x18($sp) -/* 075CA8 800750A8 100000C6 */ b .L800753C4 -/* 075CAC 800750AC 8FBF0034 */ lw $ra, 0x34($sp) -.L800750B0: -/* 075CB0 800750B0 10400007 */ beqz $v0, .L800750D0 -/* 075CB4 800750B4 8FA40078 */ lw $a0, 0x78($sp) -/* 075CB8 800750B8 8FA40078 */ lw $a0, 0x78($sp) -/* 075CBC 800750BC 0C01D6BB */ jal func_80075AEC -/* 075CC0 800750C0 00000000 */ nop -/* 075CC4 800750C4 100000BE */ b .L800753C0 -/* 075CC8 800750C8 02001025 */ move $v0, $s0 -/* 075CCC 800750CC 8FA40078 */ lw $a0, 0x78($sp) -.L800750D0: -/* 075CD0 800750D0 8FA5004C */ lw $a1, 0x4c($sp) -/* 075CD4 800750D4 0C01DA49 */ jal func_80076924 -/* 075CD8 800750D8 27A60054 */ addiu $a2, $sp, 0x54 -/* 075CDC 800750DC 10400006 */ beqz $v0, .L800750F8 -/* 075CE0 800750E0 00408025 */ move $s0, $v0 -/* 075CE4 800750E4 8FA40078 */ lw $a0, 0x78($sp) -/* 075CE8 800750E8 0C01D6BB */ jal func_80075AEC -/* 075CEC 800750EC 00000000 */ nop -/* 075CF0 800750F0 100000B3 */ b .L800753C0 -/* 075CF4 800750F4 02001025 */ move $v0, $s0 -.L800750F8: -/* 075CF8 800750F8 8FA40054 */ lw $a0, 0x54($sp) -/* 075CFC 800750FC 240500FF */ li $a1, 255 -/* 075D00 80075100 0C01C327 */ jal func_80070C9C -/* 075D04 80075104 24840100 */ addiu $a0, $a0, 0x100 -/* 075D08 80075108 8FA40078 */ lw $a0, 0x78($sp) -/* 075D0C 8007510C 8FA5004C */ lw $a1, 0x4c($sp) -/* 075D10 80075110 8FA70054 */ lw $a3, 0x54($sp) -/* 075D14 80075114 00409025 */ move $s2, $v0 -/* 075D18 80075118 0C01D984 */ jal func_80076610 -/* 075D1C 8007511C 00403025 */ move $a2, $v0 -/* 075D20 80075120 8FA40078 */ lw $a0, 0x78($sp) -/* 075D24 80075124 0C01D6BB */ jal func_80075AEC -/* 075D28 80075128 00408025 */ move $s0, $v0 -/* 075D2C 8007512C 12000005 */ beqz $s0, .L80075144 -/* 075D30 80075130 3C014748 */ lui $at, (0x47485353 >> 16) # lui $at, 0x4748 -/* 075D34 80075134 0C01C450 */ jal func_80071140 -/* 075D38 80075138 02402025 */ move $a0, $s2 -/* 075D3C 8007513C 100000A0 */ b .L800753C0 -/* 075D40 80075140 02001025 */ move $v0, $s0 -.L80075144: -/* 075D44 80075144 8E590000 */ lw $t9, ($s2) -/* 075D48 80075148 34215353 */ ori $at, (0x47485353 & 0xFFFF) # ori $at, $at, 0x5353 -/* 075D4C 8007514C 17210099 */ bne $t9, $at, .L800753B4 -/* 075D50 80075150 24100009 */ li $s0, 9 -/* 075D54 80075154 26460004 */ addiu $a2, $s2, 4 -/* 075D58 80075158 87AB0082 */ lh $t3, 0x82($sp) -/* 075D5C 8007515C 87AA007E */ lh $t2, 0x7e($sp) -/* 075D60 80075160 00C08025 */ move $s0, $a2 -/* 075D64 80075164 00001825 */ move $v1, $zero -/* 075D68 80075168 2409FFFF */ li $t1, -1 -.L8007516C: -/* 075D6C 8007516C 920C0000 */ lbu $t4, ($s0) -/* 075D70 80075170 00000000 */ nop -/* 075D74 80075174 154C0007 */ bne $t2, $t4, .L80075194 -/* 075D78 80075178 00000000 */ nop -/* 075D7C 8007517C 920D0001 */ lbu $t5, 1($s0) -/* 075D80 80075180 00000000 */ nop -/* 075D84 80075184 156D0003 */ bne $t3, $t5, .L80075194 -/* 075D88 80075188 00000000 */ nop -/* 075D8C 8007518C 10000005 */ b .L800751A4 -/* 075D90 80075190 00604825 */ move $t1, $v1 -.L80075194: -/* 075D94 80075194 24630001 */ addiu $v1, $v1, 1 -/* 075D98 80075198 28610006 */ slti $at, $v1, 6 -/* 075D9C 8007519C 1420FFF3 */ bnez $at, .L8007516C -/* 075DA0 800751A0 26100004 */ addiu $s0, $s0, 4 -.L800751A4: -/* 075DA4 800751A4 2404FFFF */ li $a0, -1 -/* 075DA8 800751A8 1124000B */ beq $t1, $a0, .L800751D8 -/* 075DAC 800751AC 00097080 */ sll $t6, $t1, 2 -/* 075DB0 800751B0 00CE7821 */ addu $t7, $a2, $t6 -/* 075DB4 800751B4 85F80002 */ lh $t8, 2($t7) -/* 075DB8 800751B8 87B9008A */ lh $t9, 0x8a($sp) -/* 075DBC 800751BC 03121821 */ addu $v1, $t8, $s2 -/* 075DC0 800751C0 84630004 */ lh $v1, 4($v1) -/* 075DC4 800751C4 00000000 */ nop -/* 075DC8 800751C8 0079082A */ slt $at, $v1, $t9 -/* 075DCC 800751CC 10200002 */ beqz $at, .L800751D8 -/* 075DD0 800751D0 00000000 */ nop -/* 075DD4 800751D4 2409FFFE */ li $t1, -2 -.L800751D8: -/* 075DD8 800751D8 1524000E */ bne $t1, $a0, .L80075214 -/* 075DDC 800751DC 2401FFFE */ li $at, -2 -/* 075DE0 800751E0 00001825 */ move $v1, $zero -/* 075DE4 800751E4 00C08025 */ move $s0, $a2 -/* 075DE8 800751E8 24070006 */ li $a3, 6 -/* 075DEC 800751EC 240200FF */ li $v0, 255 -.L800751F0: -/* 075DF0 800751F0 920C0000 */ lbu $t4, ($s0) -/* 075DF4 800751F4 00000000 */ nop -/* 075DF8 800751F8 144C0003 */ bne $v0, $t4, .L80075208 -/* 075DFC 800751FC 00000000 */ nop -/* 075E00 80075200 10000004 */ b .L80075214 -/* 075E04 80075204 00604825 */ move $t1, $v1 -.L80075208: -/* 075E08 80075208 24630001 */ addiu $v1, $v1, 1 -/* 075E0C 8007520C 1467FFF8 */ bne $v1, $a3, .L800751F0 -/* 075E10 80075210 26100004 */ addiu $s0, $s0, 4 -.L80075214: -/* 075E14 80075214 15210003 */ bne $t1, $at, .L80075224 -/* 075E18 80075218 00000000 */ nop -/* 075E1C 8007521C 10000065 */ b .L800753B4 -/* 075E20 80075220 00008025 */ move $s0, $zero -.L80075224: -/* 075E24 80075224 15240003 */ bne $t1, $a0, .L80075234 -/* 075E28 80075228 00094080 */ sll $t0, $t1, 2 -/* 075E2C 8007522C 10000061 */ b .L800753B4 -/* 075E30 80075230 24100006 */ li $s0, 6 -.L80075234: -/* 075E34 80075234 00C81021 */ addu $v0, $a2, $t0 -/* 075E38 80075238 844D0006 */ lh $t5, 6($v0) -/* 075E3C 8007523C 844F0002 */ lh $t7, 2($v0) -/* 075E40 80075240 8FA40054 */ lw $a0, 0x54($sp) -/* 075E44 80075244 022D7023 */ subu $t6, $s1, $t5 -/* 075E48 80075248 01CFC021 */ addu $t8, $t6, $t7 -/* 075E4C 8007524C AFB80058 */ sw $t8, 0x58($sp) -/* 075E50 80075250 AFA9005C */ sw $t1, 0x5c($sp) -/* 075E54 80075254 AFA80044 */ sw $t0, 0x44($sp) -/* 075E58 80075258 AFA60048 */ sw $a2, 0x48($sp) -/* 075E5C 8007525C AFA00060 */ sw $zero, 0x60($sp) -/* 075E60 80075260 240500FF */ li $a1, 255 -/* 075E64 80075264 00001825 */ move $v1, $zero -/* 075E68 80075268 0C01C327 */ jal func_80070C9C -/* 075E6C 8007526C 24840100 */ addiu $a0, $a0, 0x100 -/* 075E70 80075270 3C194748 */ lui $t9, (0x47485353 >> 16) # lui $t9, 0x4748 -/* 075E74 80075274 8FB00048 */ lw $s0, 0x48($sp) -/* 075E78 80075278 8FA80058 */ lw $t0, 0x58($sp) -/* 075E7C 8007527C 8FA30060 */ lw $v1, 0x60($sp) -/* 075E80 80075280 8FA9005C */ lw $t1, 0x5c($sp) -/* 075E84 80075284 AFA20068 */ sw $v0, 0x68($sp) -/* 075E88 80075288 37395353 */ ori $t9, (0x47485353 & 0xFFFF) # ori $t9, $t9, 0x5353 -/* 075E8C 8007528C AC590000 */ sw $t9, ($v0) -/* 075E90 80075290 244C0004 */ addiu $t4, $v0, 4 -/* 075E94 80075294 AFAC0070 */ sw $t4, 0x70($sp) -/* 075E98 80075298 240D00FF */ li $t5, 255 -/* 075E9C 8007529C A04D001C */ sb $t5, 0x1c($v0) -/* 075EA0 800752A0 860E001A */ lh $t6, 0x1a($s0) -/* 075EA4 800752A4 00000000 */ nop -/* 075EA8 800752A8 01C87821 */ addu $t7, $t6, $t0 -/* 075EAC 800752AC A44F001E */ sh $t7, 0x1e($v0) -/* 075EB0 800752B0 8FB10070 */ lw $s1, 0x70($sp) -/* 075EB4 800752B4 00000000 */ nop -.L800752B8: -/* 075EB8 800752B8 92180000 */ lbu $t8, ($s0) -/* 075EBC 800752BC 8FA80058 */ lw $t0, 0x58($sp) -/* 075EC0 800752C0 A2380000 */ sb $t8, ($s1) -/* 075EC4 800752C4 92190001 */ lbu $t9, 1($s0) -/* 075EC8 800752C8 0123082A */ slt $at, $t1, $v1 -/* 075ECC 800752CC 14200004 */ bnez $at, .L800752E0 -/* 075ED0 800752D0 A2390001 */ sb $t9, 1($s1) -/* 075ED4 800752D4 860C0002 */ lh $t4, 2($s0) -/* 075ED8 800752D8 10000005 */ b .L800752F0 -/* 075EDC 800752DC A62C0002 */ sh $t4, 2($s1) -.L800752E0: -/* 075EE0 800752E0 860D0002 */ lh $t5, 2($s0) -/* 075EE4 800752E4 00000000 */ nop -/* 075EE8 800752E8 01A87021 */ addu $t6, $t5, $t0 -/* 075EEC 800752EC A62E0002 */ sh $t6, 2($s1) -.L800752F0: -/* 075EF0 800752F0 86020002 */ lh $v0, 2($s0) -/* 075EF4 800752F4 862F0002 */ lh $t7, 2($s1) -/* 075EF8 800752F8 86190006 */ lh $t9, 6($s0) -/* 075EFC 800752FC 8FB80068 */ lw $t8, 0x68($sp) -/* 075F00 80075300 AFA9005C */ sw $t1, 0x5c($sp) -/* 075F04 80075304 AFA30060 */ sw $v1, 0x60($sp) -/* 075F08 80075308 00522021 */ addu $a0, $v0, $s2 -/* 075F0C 8007530C 03223023 */ subu $a2, $t9, $v0 -/* 075F10 80075310 0C032768 */ jal bcopy -/* 075F14 80075314 01F82821 */ addu $a1, $t7, $t8 -/* 075F18 80075318 8FA30060 */ lw $v1, 0x60($sp) -/* 075F1C 8007531C 24070006 */ li $a3, 6 -/* 075F20 80075320 8FA9005C */ lw $t1, 0x5c($sp) -/* 075F24 80075324 24630001 */ addiu $v1, $v1, 1 -/* 075F28 80075328 26310004 */ addiu $s1, $s1, 4 -/* 075F2C 8007532C 1467FFE2 */ bne $v1, $a3, .L800752B8 -/* 075F30 80075330 26100004 */ addiu $s0, $s0, 4 -/* 075F34 80075334 8FAC0070 */ lw $t4, 0x70($sp) -/* 075F38 80075338 8FAD0044 */ lw $t5, 0x44($sp) -/* 075F3C 8007533C 8FAF0068 */ lw $t7, 0x68($sp) -/* 075F40 80075340 018D8021 */ addu $s0, $t4, $t5 -/* 075F44 80075344 860E0002 */ lh $t6, 2($s0) -/* 075F48 80075348 8FB80090 */ lw $t8, 0x90($sp) -/* 075F4C 8007534C 87A50086 */ lh $a1, 0x86($sp) -/* 075F50 80075350 87A6008A */ lh $a2, 0x8a($sp) -/* 075F54 80075354 87A7008E */ lh $a3, 0x8e($sp) -/* 075F58 80075358 01CF2021 */ addu $a0, $t6, $t7 -/* 075F5C 8007535C 0C01D2AA */ jal func_80074AA8 -/* 075F60 80075360 AFB80010 */ sw $t8, 0x10($sp) -/* 075F64 80075364 87B9007E */ lh $t9, 0x7e($sp) -/* 075F68 80075368 3C06800E */ lui $a2, %hi(D_800E7790) # $a2, 0x800e -/* 075F6C 8007536C A2190000 */ sb $t9, ($s0) -/* 075F70 80075370 87AC0082 */ lh $t4, 0x82($sp) -/* 075F74 80075374 3C07800E */ lui $a3, %hi(D_800E77A0) # $a3, 0x800e -/* 075F78 80075378 A20C0001 */ sb $t4, 1($s0) -/* 075F7C 8007537C 8FAE0054 */ lw $t6, 0x54($sp) -/* 075F80 80075380 8FAD0068 */ lw $t5, 0x68($sp) -/* 075F84 80075384 8FA5004C */ lw $a1, 0x4c($sp) -/* 075F88 80075388 8FA40078 */ lw $a0, 0x78($sp) -/* 075F8C 8007538C 24E777A0 */ addiu $a3, %lo(D_800E77A0) # addiu $a3, $a3, 0x77a0 -/* 075F90 80075390 24C67790 */ addiu $a2, %lo(D_800E7790) # addiu $a2, $a2, 0x7790 -/* 075F94 80075394 AFAE0014 */ sw $t6, 0x14($sp) -/* 075F98 80075398 0C01D9B5 */ jal func_800766D4 -/* 075F9C 8007539C AFAD0010 */ sw $t5, 0x10($sp) -/* 075FA0 800753A0 8FA40068 */ lw $a0, 0x68($sp) -/* 075FA4 800753A4 0C01C450 */ jal func_80071140 -/* 075FA8 800753A8 00408025 */ move $s0, $v0 -/* 075FAC 800753AC 10000001 */ b .L800753B4 -/* 075FB0 800753B0 00000000 */ nop -.L800753B4: -/* 075FB4 800753B4 0C01C450 */ jal func_80071140 -/* 075FB8 800753B8 02402025 */ move $a0, $s2 -/* 075FBC 800753BC 02001025 */ move $v0, $s0 -.L800753C0: -/* 075FC0 800753C0 8FBF0034 */ lw $ra, 0x34($sp) -.L800753C4: -/* 075FC4 800753C4 8FB00028 */ lw $s0, 0x28($sp) -/* 075FC8 800753C8 8FB1002C */ lw $s1, 0x2c($sp) -/* 075FCC 800753CC 8FB20030 */ lw $s2, 0x30($sp) -/* 075FD0 800753D0 03E00008 */ jr $ra -/* 075FD4 800753D4 27BD0078 */ addiu $sp, $sp, 0x78 - -glabel func_800753D8 -/* 075FD8 800753D8 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 075FDC 800753DC AFBF001C */ sw $ra, 0x1c($sp) -/* 075FE0 800753E0 AFA40050 */ sw $a0, 0x50($sp) -/* 075FE4 800753E4 0C01D637 */ jal func_800758DC -/* 075FE8 800753E8 AFA50054 */ sw $a1, 0x54($sp) -/* 075FEC 800753EC 10400007 */ beqz $v0, .L8007540C -/* 075FF0 800753F0 3C05800E */ lui $a1, %hi(D_800E77A4) # $a1, 0x800e -/* 075FF4 800753F4 8FA40050 */ lw $a0, 0x50($sp) -/* 075FF8 800753F8 0C01D6BB */ jal func_80075AEC -/* 075FFC 800753FC AFA20040 */ sw $v0, 0x40($sp) -/* 076000 80075400 8FA20040 */ lw $v0, 0x40($sp) -/* 076004 80075404 100000B0 */ b .L800756C8 -/* 076008 80075408 8FBF001C */ lw $ra, 0x1c($sp) -.L8007540C: -/* 07600C 8007540C 8FA40050 */ lw $a0, 0x50($sp) -/* 076010 80075410 3C06800E */ lui $a2, %hi(D_800E77B4) # $a2, 0x800e -/* 076014 80075414 24C677B4 */ addiu $a2, %lo(D_800E77B4) # addiu $a2, $a2, 0x77b4 -/* 076018 80075418 24A577A4 */ addiu $a1, %lo(D_800E77A4) # addiu $a1, $a1, 0x77a4 -/* 07601C 8007541C 0C01D93A */ jal func_800764E8 -/* 076020 80075420 27A70034 */ addiu $a3, $sp, 0x34 -/* 076024 80075424 144000A1 */ bnez $v0, .L800756AC -/* 076028 80075428 00401825 */ move $v1, $v0 -/* 07602C 8007542C 8FA40050 */ lw $a0, 0x50($sp) -/* 076030 80075430 8FA50034 */ lw $a1, 0x34($sp) -/* 076034 80075434 0C01DA49 */ jal func_80076924 -/* 076038 80075438 27A60030 */ addiu $a2, $sp, 0x30 -/* 07603C 8007543C 10400007 */ beqz $v0, .L8007545C -/* 076040 80075440 240500FF */ li $a1, 255 -/* 076044 80075444 8FA40050 */ lw $a0, 0x50($sp) -/* 076048 80075448 0C01D6BB */ jal func_80075AEC -/* 07604C 8007544C AFA20040 */ sw $v0, 0x40($sp) -/* 076050 80075450 8FA20040 */ lw $v0, 0x40($sp) -/* 076054 80075454 1000009C */ b .L800756C8 -/* 076058 80075458 8FBF001C */ lw $ra, 0x1c($sp) -.L8007545C: -/* 07605C 8007545C 8FA40030 */ lw $a0, 0x30($sp) -/* 076060 80075460 0C01C327 */ jal func_80070C9C -/* 076064 80075464 24840100 */ addiu $a0, $a0, 0x100 -/* 076068 80075468 8FA40050 */ lw $a0, 0x50($sp) -/* 07606C 8007546C 8FA50034 */ lw $a1, 0x34($sp) -/* 076070 80075470 8FA70030 */ lw $a3, 0x30($sp) -/* 076074 80075474 AFA20048 */ sw $v0, 0x48($sp) -/* 076078 80075478 0C01D984 */ jal func_80076610 -/* 07607C 8007547C 00403025 */ move $a2, $v0 -/* 076080 80075480 8FA40050 */ lw $a0, 0x50($sp) -/* 076084 80075484 0C01D6BB */ jal func_80075AEC -/* 076088 80075488 AFA20040 */ sw $v0, 0x40($sp) -/* 07608C 8007548C 8FA30040 */ lw $v1, 0x40($sp) -/* 076090 80075490 8FAE0048 */ lw $t6, 0x48($sp) -/* 076094 80075494 1460007F */ bnez $v1, .L80075694 -/* 076098 80075498 3C014748 */ lui $at, (0x47485353 >> 16) # lui $at, 0x4748 -/* 07609C 8007549C 8DCF0000 */ lw $t7, ($t6) -/* 0760A0 800754A0 34215353 */ ori $at, (0x47485353 & 0xFFFF) # ori $at, $at, 0x5353 -/* 0760A4 800754A4 15E10076 */ bne $t7, $at, .L80075680 -/* 0760A8 800754A8 24030009 */ li $v1, 9 -/* 0760AC 800754AC 8FA80054 */ lw $t0, 0x54($sp) -/* 0760B0 800754B0 8FA40030 */ lw $a0, 0x30($sp) -/* 0760B4 800754B4 0008C080 */ sll $t8, $t0, 2 -/* 0760B8 800754B8 01D81021 */ addu $v0, $t6, $t8 -/* 0760BC 800754BC 84590006 */ lh $t9, 6($v0) -/* 0760C0 800754C0 844A000A */ lh $t2, 0xa($v0) -/* 0760C4 800754C4 AFB80024 */ sw $t8, 0x24($sp) -/* 0760C8 800754C8 032A3823 */ subu $a3, $t9, $t2 -/* 0760CC 800754CC AFA70038 */ sw $a3, 0x38($sp) -/* 0760D0 800754D0 240500FF */ li $a1, 255 -/* 0760D4 800754D4 0C01C327 */ jal func_80070C9C -/* 0760D8 800754D8 24840100 */ addiu $a0, $a0, 0x100 -/* 0760DC 800754DC 8FA40048 */ lw $a0, 0x48($sp) -/* 0760E0 800754E0 8FA80024 */ lw $t0, 0x24($sp) -/* 0760E4 800754E4 24830004 */ addiu $v1, $a0, 4 -/* 0760E8 800754E8 AFA20044 */ sw $v0, 0x44($sp) -/* 0760EC 800754EC 00684821 */ addu $t1, $v1, $t0 -/* 0760F0 800754F0 85260002 */ lh $a2, 2($t1) -/* 0760F4 800754F4 AFA90020 */ sw $t1, 0x20($sp) -/* 0760F8 800754F8 AFA30028 */ sw $v1, 0x28($sp) -/* 0760FC 800754FC 0C032768 */ jal bcopy -/* 076100 80075500 00402825 */ move $a1, $v0 -/* 076104 80075504 8FA80054 */ lw $t0, 0x54($sp) -/* 076108 80075508 8FA30028 */ lw $v1, 0x28($sp) -/* 07610C 8007550C 8FA70038 */ lw $a3, 0x38($sp) -/* 076110 80075510 8FA90020 */ lw $t1, 0x20($sp) -/* 076114 80075514 24010005 */ li $at, 5 -/* 076118 80075518 1101000F */ beq $t0, $at, .L80075558 -/* 07611C 8007551C 29010006 */ slti $at, $t0, 6 -/* 076120 80075520 85220006 */ lh $v0, 6($t1) -/* 076124 80075524 8FAC0044 */ lw $t4, 0x44($sp) -/* 076128 80075528 8FAB0048 */ lw $t3, 0x48($sp) -/* 07612C 8007552C 846F001A */ lh $t7, 0x1a($v1) -/* 076130 80075530 004C6821 */ addu $t5, $v0, $t4 -/* 076134 80075534 01A72821 */ addu $a1, $t5, $a3 -/* 076138 80075538 AFA70038 */ sw $a3, 0x38($sp) -/* 07613C 8007553C 004B2021 */ addu $a0, $v0, $t3 -/* 076140 80075540 0C032768 */ jal bcopy -/* 076144 80075544 01E23023 */ subu $a2, $t7, $v0 -/* 076148 80075548 8FA70038 */ lw $a3, 0x38($sp) -/* 07614C 8007554C 8FA80054 */ lw $t0, 0x54($sp) -/* 076150 80075550 00000000 */ nop -/* 076154 80075554 29010006 */ slti $at, $t0, 6 -.L80075558: -/* 076158 80075558 10200039 */ beqz $at, .L80075640 -/* 07615C 8007555C 01001825 */ move $v1, $t0 -/* 076160 80075560 24050006 */ li $a1, 6 -/* 076164 80075564 00A83023 */ subu $a2, $a1, $t0 -/* 076168 80075568 30D80003 */ andi $t8, $a2, 3 -/* 07616C 8007556C 13000011 */ beqz $t8, .L800755B4 -/* 076170 80075570 03082021 */ addu $a0, $t8, $t0 -/* 076174 80075574 8FA90044 */ lw $t1, 0x44($sp) -/* 076178 80075578 00087080 */ sll $t6, $t0, 2 -/* 07617C 8007557C 012E1021 */ addu $v0, $t1, $t6 -/* 076180 80075580 24420004 */ addiu $v0, $v0, 4 -.L80075584: -/* 076184 80075584 844B0006 */ lh $t3, 6($v0) -/* 076188 80075588 90590004 */ lbu $t9, 4($v0) -/* 07618C 8007558C 904A0005 */ lbu $t2, 5($v0) -/* 076190 80075590 24630001 */ addiu $v1, $v1, 1 -/* 076194 80075594 01676021 */ addu $t4, $t3, $a3 -/* 076198 80075598 A44C0002 */ sh $t4, 2($v0) -/* 07619C 8007559C 24420004 */ addiu $v0, $v0, 4 -/* 0761A0 800755A0 A059FFFC */ sb $t9, -4($v0) -/* 0761A4 800755A4 1483FFF7 */ bne $a0, $v1, .L80075584 -/* 0761A8 800755A8 A04AFFFD */ sb $t2, -3($v0) -/* 0761AC 800755AC 10650025 */ beq $v1, $a1, .L80075644 -/* 0761B0 800755B0 8FA90044 */ lw $t1, 0x44($sp) -.L800755B4: -/* 0761B4 800755B4 8FA90044 */ lw $t1, 0x44($sp) -/* 0761B8 800755B8 00036880 */ sll $t5, $v1, 2 -/* 0761BC 800755BC 012D1021 */ addu $v0, $t1, $t5 -/* 0761C0 800755C0 24420004 */ addiu $v0, $v0, 4 -.L800755C4: -/* 0761C4 800755C4 844C000A */ lh $t4, 0xa($v0) -/* 0761C8 800755C8 844E0006 */ lh $t6, 6($v0) -/* 0761CC 800755CC 904A0008 */ lbu $t2, 8($v0) -/* 0761D0 800755D0 904B0009 */ lbu $t3, 9($v0) -/* 0761D4 800755D4 904F0004 */ lbu $t7, 4($v0) -/* 0761D8 800755D8 90580005 */ lbu $t8, 5($v0) -/* 0761DC 800755DC 01876821 */ addu $t5, $t4, $a3 -/* 0761E0 800755E0 01C7C821 */ addu $t9, $t6, $a3 -/* 0761E4 800755E4 844E000E */ lh $t6, 0xe($v0) -/* 0761E8 800755E8 844C0012 */ lh $t4, 0x12($v0) -/* 0761EC 800755EC A04A0004 */ sb $t2, 4($v0) -/* 0761F0 800755F0 A04B0005 */ sb $t3, 5($v0) -/* 0761F4 800755F4 A04F0000 */ sb $t7, ($v0) -/* 0761F8 800755F8 A0580001 */ sb $t8, 1($v0) -/* 0761FC 800755FC 9058000D */ lbu $t8, 0xd($v0) -/* 076200 80075600 904F000C */ lbu $t7, 0xc($v0) -/* 076204 80075604 904B0011 */ lbu $t3, 0x11($v0) -/* 076208 80075608 904A0010 */ lbu $t2, 0x10($v0) -/* 07620C 8007560C A44D0006 */ sh $t5, 6($v0) -/* 076210 80075610 A4590002 */ sh $t9, 2($v0) -/* 076214 80075614 24630004 */ addiu $v1, $v1, 4 -/* 076218 80075618 01C7C821 */ addu $t9, $t6, $a3 -/* 07621C 8007561C 01876821 */ addu $t5, $t4, $a3 -/* 076220 80075620 A44D000E */ sh $t5, 0xe($v0) -/* 076224 80075624 A459000A */ sh $t9, 0xa($v0) -/* 076228 80075628 24420010 */ addiu $v0, $v0, 0x10 -/* 07622C 8007562C A058FFF9 */ sb $t8, -7($v0) -/* 076230 80075630 A04FFFF8 */ sb $t7, -8($v0) -/* 076234 80075634 A04BFFFD */ sb $t3, -3($v0) -/* 076238 80075638 1465FFE2 */ bne $v1, $a1, .L800755C4 -/* 07623C 8007563C A04AFFFC */ sb $t2, -4($v0) -.L80075640: -/* 076240 80075640 8FA90044 */ lw $t1, 0x44($sp) -.L80075644: -/* 076244 80075644 3C06800E */ lui $a2, %hi(D_800E77B8) # $a2, 0x800e -/* 076248 80075648 25220004 */ addiu $v0, $t1, 4 -/* 07624C 8007564C 844F0016 */ lh $t7, 0x16($v0) -/* 076250 80075650 3C07800E */ lui $a3, %hi(D_800E77C8) # $a3, 0x800e -/* 076254 80075654 A44F001A */ sh $t7, 0x1a($v0) -/* 076258 80075658 8FB80030 */ lw $t8, 0x30($sp) -/* 07625C 8007565C 8FA50034 */ lw $a1, 0x34($sp) -/* 076260 80075660 8FA40050 */ lw $a0, 0x50($sp) -/* 076264 80075664 24E777C8 */ addiu $a3, %lo(D_800E77C8) # addiu $a3, $a3, 0x77c8 -/* 076268 80075668 24C677B8 */ addiu $a2, %lo(D_800E77B8) # addiu $a2, $a2, 0x77b8 -/* 07626C 8007566C AFA90010 */ sw $t1, 0x10($sp) -/* 076270 80075670 0C01D9B5 */ jal func_800766D4 -/* 076274 80075674 AFB80014 */ sw $t8, 0x14($sp) -/* 076278 80075678 10000001 */ b .L80075680 -/* 07627C 8007567C 00401825 */ move $v1, $v0 -.L80075680: -/* 076280 80075680 8FA40044 */ lw $a0, 0x44($sp) -/* 076284 80075684 0C01C450 */ jal func_80071140 -/* 076288 80075688 AFA30040 */ sw $v1, 0x40($sp) -/* 07628C 8007568C 8FA30040 */ lw $v1, 0x40($sp) -/* 076290 80075690 00000000 */ nop -.L80075694: -/* 076294 80075694 8FA40048 */ lw $a0, 0x48($sp) -/* 076298 80075698 0C01C450 */ jal func_80071140 -/* 07629C 8007569C AFA30040 */ sw $v1, 0x40($sp) -/* 0762A0 800756A0 8FA30040 */ lw $v1, 0x40($sp) -/* 0762A4 800756A4 10000007 */ b .L800756C4 -/* 0762A8 800756A8 00601025 */ move $v0, $v1 -.L800756AC: -/* 0762AC 800756AC 8FA40050 */ lw $a0, 0x50($sp) -/* 0762B0 800756B0 0C01D6BB */ jal func_80075AEC -/* 0762B4 800756B4 AFA30040 */ sw $v1, 0x40($sp) -/* 0762B8 800756B8 8FA30040 */ lw $v1, 0x40($sp) -/* 0762BC 800756BC 00000000 */ nop -/* 0762C0 800756C0 00601025 */ move $v0, $v1 -.L800756C4: -/* 0762C4 800756C4 8FBF001C */ lw $ra, 0x1c($sp) -.L800756C8: -/* 0762C8 800756C8 27BD0050 */ addiu $sp, $sp, 0x50 -/* 0762CC 800756CC 03E00008 */ jr $ra -/* 0762D0 800756D0 00000000 */ nop - -glabel func_800756D4 -/* 0762D4 800756D4 27BDFF90 */ addiu $sp, $sp, -0x70 -/* 0762D8 800756D8 AFBF003C */ sw $ra, 0x3c($sp) -/* 0762DC 800756DC AFBE0038 */ sw $fp, 0x38($sp) -/* 0762E0 800756E0 AFB70034 */ sw $s7, 0x34($sp) -/* 0762E4 800756E4 AFB60030 */ sw $s6, 0x30($sp) -/* 0762E8 800756E8 00A0B025 */ move $s6, $a1 -/* 0762EC 800756EC 00E0B825 */ move $s7, $a3 -/* 0762F0 800756F0 00C0F025 */ move $fp, $a2 -/* 0762F4 800756F4 AFB5002C */ sw $s5, 0x2c($sp) -/* 0762F8 800756F8 AFB40028 */ sw $s4, 0x28($sp) -/* 0762FC 800756FC AFB30024 */ sw $s3, 0x24($sp) -/* 076300 80075700 AFB20020 */ sw $s2, 0x20($sp) -/* 076304 80075704 AFB1001C */ sw $s1, 0x1c($sp) -/* 076308 80075708 AFB00018 */ sw $s0, 0x18($sp) -/* 07630C 8007570C 0C01D637 */ jal func_800758DC -/* 076310 80075710 AFA40070 */ sw $a0, 0x70($sp) -/* 076314 80075714 10400007 */ beqz $v0, .L80075734 -/* 076318 80075718 AFA20064 */ sw $v0, 0x64($sp) -/* 07631C 8007571C 8FA40070 */ lw $a0, 0x70($sp) -/* 076320 80075720 0C01D6BB */ jal func_80075AEC -/* 076324 80075724 00000000 */ nop -/* 076328 80075728 8FA20064 */ lw $v0, 0x64($sp) -/* 07632C 8007572C 10000060 */ b .L800758B0 -/* 076330 80075730 8FBF003C */ lw $ra, 0x3c($sp) -.L80075734: -/* 076334 80075734 8FB50080 */ lw $s5, 0x80($sp) -/* 076338 80075738 00008025 */ move $s0, $zero -/* 07633C 8007573C 02C02025 */ move $a0, $s6 -/* 076340 80075740 02E02825 */ move $a1, $s7 -/* 076344 80075744 03C03025 */ move $a2, $fp -/* 076348 80075748 240700FF */ li $a3, 255 -/* 07634C 8007574C 02A01825 */ move $v1, $s5 -.L80075750: -/* 076350 80075750 A0870000 */ sb $a3, ($a0) -/* 076354 80075754 A4600000 */ sh $zero, ($v1) -/* 076358 80075758 90620001 */ lbu $v0, 1($v1) -/* 07635C 8007575C 26100001 */ addiu $s0, $s0, 1 -/* 076360 80075760 2A010006 */ slti $at, $s0, 6 -/* 076364 80075764 A0A20000 */ sb $v0, ($a1) -/* 076368 80075768 24840001 */ addiu $a0, $a0, 1 -/* 07636C 8007576C 24630002 */ addiu $v1, $v1, 2 -/* 076370 80075770 24A50001 */ addiu $a1, $a1, 1 -/* 076374 80075774 24C60001 */ addiu $a2, $a2, 1 -/* 076378 80075778 1420FFF5 */ bnez $at, .L80075750 -/* 07637C 8007577C A0C2FFFF */ sb $v0, -1($a2) -/* 076380 80075780 8FA40070 */ lw $a0, 0x70($sp) -/* 076384 80075784 3C05800E */ lui $a1, %hi(D_800E77CC) # $a1, 0x800e -/* 076388 80075788 3C06800E */ lui $a2, %hi(D_800E77DC) # $a2, 0x800e -/* 07638C 8007578C 24C677DC */ addiu $a2, %lo(D_800E77DC) # addiu $a2, $a2, 0x77dc -/* 076390 80075790 24A577CC */ addiu $a1, %lo(D_800E77CC) # addiu $a1, $a1, 0x77cc -/* 076394 80075794 0C01D93A */ jal func_800764E8 -/* 076398 80075798 27A7005C */ addiu $a3, $sp, 0x5c -/* 07639C 8007579C 1440003E */ bnez $v0, .L80075898 -/* 0763A0 800757A0 AFA20064 */ sw $v0, 0x64($sp) -/* 0763A4 800757A4 8FA40070 */ lw $a0, 0x70($sp) -/* 0763A8 800757A8 8FA5005C */ lw $a1, 0x5c($sp) -/* 0763AC 800757AC 0C01DA49 */ jal func_80076924 -/* 0763B0 800757B0 27A60058 */ addiu $a2, $sp, 0x58 -/* 0763B4 800757B4 14400038 */ bnez $v0, .L80075898 -/* 0763B8 800757B8 AFA20064 */ sw $v0, 0x64($sp) -/* 0763BC 800757BC 8FA40058 */ lw $a0, 0x58($sp) -/* 0763C0 800757C0 240500FF */ li $a1, 255 -/* 0763C4 800757C4 0C01C327 */ jal func_80070C9C -/* 0763C8 800757C8 24840100 */ addiu $a0, $a0, 0x100 -/* 0763CC 800757CC 8FA40070 */ lw $a0, 0x70($sp) -/* 0763D0 800757D0 8FA5005C */ lw $a1, 0x5c($sp) -/* 0763D4 800757D4 8FA70058 */ lw $a3, 0x58($sp) -/* 0763D8 800757D8 00409025 */ move $s2, $v0 -/* 0763DC 800757DC 0C01D984 */ jal func_80076610 -/* 0763E0 800757E0 00403025 */ move $a2, $v0 -/* 0763E4 800757E4 1440002A */ bnez $v0, .L80075890 -/* 0763E8 800757E8 AFA20064 */ sw $v0, 0x64($sp) -/* 0763EC 800757EC 00008025 */ move $s0, $zero -/* 0763F0 800757F0 26510004 */ addiu $s1, $s2, 4 -/* 0763F4 800757F4 24140006 */ li $s4, 6 -/* 0763F8 800757F8 241300FF */ li $s3, 255 -.L800757FC: -/* 0763FC 800757FC 922E0000 */ lbu $t6, ($s1) -/* 076400 80075800 00000000 */ nop -/* 076404 80075804 126E001F */ beq $s3, $t6, .L80075884 -/* 076408 80075808 00000000 */ nop -/* 07640C 8007580C 862F0002 */ lh $t7, 2($s1) -/* 076410 80075810 0C01D293 */ jal func_80074A4C -/* 076414 80075814 01F22021 */ addu $a0, $t7, $s2 -/* 076418 80075818 86380002 */ lh $t8, 2($s1) -/* 07641C 8007581C 00000000 */ nop -/* 076420 80075820 0312C821 */ addu $t9, $t8, $s2 -/* 076424 80075824 87280000 */ lh $t0, ($t9) -/* 076428 80075828 00000000 */ nop -/* 07642C 8007582C 10480003 */ beq $v0, $t0, .L8007583C -/* 076430 80075830 24090009 */ li $t1, 9 -/* 076434 80075834 10000016 */ b .L80075890 -/* 076438 80075838 AFA90064 */ sw $t1, 0x64($sp) -.L8007583C: -/* 07643C 8007583C 922A0000 */ lbu $t2, ($s1) -/* 076440 80075840 02D05821 */ addu $t3, $s6, $s0 -/* 076444 80075844 A16A0000 */ sb $t2, ($t3) -/* 076448 80075848 922C0001 */ lbu $t4, 1($s1) -/* 07644C 8007584C 03D06821 */ addu $t5, $fp, $s0 -/* 076450 80075850 A1AC0000 */ sb $t4, ($t5) -/* 076454 80075854 862E0002 */ lh $t6, 2($s1) -/* 076458 80075858 02F0C821 */ addu $t9, $s7, $s0 -/* 07645C 8007585C 01D27821 */ addu $t7, $t6, $s2 -/* 076460 80075860 91F80002 */ lbu $t8, 2($t7) -/* 076464 80075864 00105840 */ sll $t3, $s0, 1 -/* 076468 80075868 A3380000 */ sb $t8, ($t9) -/* 07646C 8007586C 86280002 */ lh $t0, 2($s1) -/* 076470 80075870 02AB6021 */ addu $t4, $s5, $t3 -/* 076474 80075874 01124821 */ addu $t1, $t0, $s2 -/* 076478 80075878 852A0004 */ lh $t2, 4($t1) -/* 07647C 8007587C 00000000 */ nop -/* 076480 80075880 A58A0000 */ sh $t2, ($t4) -.L80075884: -/* 076484 80075884 26100001 */ addiu $s0, $s0, 1 -/* 076488 80075888 1614FFDC */ bne $s0, $s4, .L800757FC -/* 07648C 8007588C 26310004 */ addiu $s1, $s1, 4 -.L80075890: -/* 076490 80075890 0C01C450 */ jal func_80071140 -/* 076494 80075894 02402025 */ move $a0, $s2 -.L80075898: -/* 076498 80075898 8FA40070 */ lw $a0, 0x70($sp) -/* 07649C 8007589C 0C01D6BB */ jal func_80075AEC -/* 0764A0 800758A0 00000000 */ nop -/* 0764A4 800758A4 8FA20064 */ lw $v0, 0x64($sp) -/* 0764A8 800758A8 00000000 */ nop -/* 0764AC 800758AC 8FBF003C */ lw $ra, 0x3c($sp) -.L800758B0: -/* 0764B0 800758B0 8FB00018 */ lw $s0, 0x18($sp) -/* 0764B4 800758B4 8FB1001C */ lw $s1, 0x1c($sp) -/* 0764B8 800758B8 8FB20020 */ lw $s2, 0x20($sp) -/* 0764BC 800758BC 8FB30024 */ lw $s3, 0x24($sp) -/* 0764C0 800758C0 8FB40028 */ lw $s4, 0x28($sp) -/* 0764C4 800758C4 8FB5002C */ lw $s5, 0x2c($sp) -/* 0764C8 800758C8 8FB60030 */ lw $s6, 0x30($sp) -/* 0764CC 800758CC 8FB70034 */ lw $s7, 0x34($sp) -/* 0764D0 800758D0 8FBE0038 */ lw $fp, 0x38($sp) -/* 0764D4 800758D4 03E00008 */ jr $ra -/* 0764D8 800758D8 27BD0070 */ addiu $sp, $sp, 0x70 - -glabel func_800758DC -/* 0764DC 800758DC 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 0764E0 800758E0 AFB40024 */ sw $s4, 0x24($sp) -/* 0764E4 800758E4 3C148012 */ lui $s4, %hi(D_80124010) # $s4, 0x8012 -/* 0764E8 800758E8 26944010 */ addiu $s4, %lo(D_80124010) # addiu $s4, $s4, 0x4010 -/* 0764EC 800758EC AFB00014 */ sw $s0, 0x14($sp) -/* 0764F0 800758F0 8E900000 */ lw $s0, ($s4) -/* 0764F4 800758F4 AFBF002C */ sw $ra, 0x2c($sp) -/* 0764F8 800758F8 AFB50028 */ sw $s5, 0x28($sp) -/* 0764FC 800758FC AFB30020 */ sw $s3, 0x20($sp) -/* 076500 80075900 AFB2001C */ sw $s2, 0x1c($sp) -/* 076504 80075904 AFB10018 */ sw $s1, 0x18($sp) -/* 076508 80075908 8E0E0008 */ lw $t6, 8($s0) -/* 07650C 8007590C 0080A825 */ move $s5, $a0 -/* 076510 80075910 15C0000F */ bnez $t6, .L80075950 -/* 076514 80075914 02002025 */ move $a0, $s0 -/* 076518 80075918 00157880 */ sll $t7, $s5, 2 -/* 07651C 8007591C 01F57823 */ subu $t7, $t7, $s5 -/* 076520 80075920 000F7880 */ sll $t7, $t7, 2 -/* 076524 80075924 01F57821 */ addu $t7, $t7, $s5 -/* 076528 80075928 3C188012 */ lui $t8, %hi(D_80124018) # $t8, 0x8012 -/* 07652C 8007592C 27184018 */ addiu $t8, %lo(D_80124018) # addiu $t8, $t8, 0x4018 -/* 076530 80075930 000F78C0 */ sll $t7, $t7, 3 -/* 076534 80075934 01F82821 */ addu $a1, $t7, $t8 -/* 076538 80075938 0C01C837 */ jal func_800720DC -/* 07653C 8007593C 02A03025 */ move $a2, $s5 -/* 076540 80075940 14400004 */ bnez $v0, .L80075954 -/* 076544 80075944 0015C880 */ sll $t9, $s5, 2 -/* 076548 80075948 1000005F */ b .L80075AC8 -/* 07654C 8007594C 24020007 */ li $v0, 7 -.L80075950: -/* 076550 80075950 0015C880 */ sll $t9, $s5, 2 -.L80075954: -/* 076554 80075954 8E900000 */ lw $s0, ($s4) -/* 076558 80075958 0335C823 */ subu $t9, $t9, $s5 -/* 07655C 8007595C 0019C880 */ sll $t9, $t9, 2 -/* 076560 80075960 8E090008 */ lw $t1, 8($s0) -/* 076564 80075964 0335C821 */ addu $t9, $t9, $s5 -/* 076568 80075968 3C088012 */ lui $t0, %hi(D_80124018) # $t0, 0x8012 -/* 07656C 8007596C 25084018 */ addiu $t0, %lo(D_80124018) # addiu $t0, $t0, 0x4018 -/* 076570 80075970 0019C8C0 */ sll $t9, $t9, 3 -/* 076574 80075974 00008825 */ move $s1, $zero -/* 076578 80075978 1120000E */ beqz $t1, .L800759B4 -/* 07657C 8007597C 03289821 */ addu $s3, $t9, $t0 -/* 076580 80075980 2412000A */ li $s2, 10 -/* 076584 80075984 02002025 */ move $a0, $s0 -.L80075988: -/* 076588 80075988 27A50044 */ addiu $a1, $sp, 0x44 -/* 07658C 8007598C 0C0322EC */ jal osRecvMesg -/* 076590 80075990 00003025 */ move $a2, $zero -/* 076594 80075994 8E900000 */ lw $s0, ($s4) -/* 076598 80075998 26310001 */ addiu $s1, $s1, 1 -/* 07659C 8007599C 8E0A0008 */ lw $t2, 8($s0) -/* 0765A0 800759A0 00000000 */ nop -/* 0765A4 800759A4 11400003 */ beqz $t2, .L800759B4 -/* 0765A8 800759A8 00000000 */ nop -/* 0765AC 800759AC 1632FFF6 */ bne $s1, $s2, .L80075988 -/* 0765B0 800759B0 02002025 */ move $a0, $s0 -.L800759B4: -/* 0765B4 800759B4 2412000A */ li $s2, 10 -/* 0765B8 800759B8 00008825 */ move $s1, $zero -/* 0765BC 800759BC 24100005 */ li $s0, 5 -/* 0765C0 800759C0 02602025 */ move $a0, $s3 -.L800759C4: -/* 0765C4 800759C4 0C033CF8 */ jal func_800CF3E0 -/* 0765C8 800759C8 27A5003C */ addiu $a1, $sp, 0x3c -/* 0765CC 800759CC 14500006 */ bne $v0, $s0, .L800759E8 -/* 0765D0 800759D0 00401825 */ move $v1, $v0 -/* 0765D4 800759D4 8E840000 */ lw $a0, ($s4) -/* 0765D8 800759D8 02602825 */ move $a1, $s3 -/* 0765DC 800759DC 0C033B48 */ jal func_800CED20 -/* 0765E0 800759E0 02A03025 */ move $a2, $s5 -/* 0765E4 800759E4 00401825 */ move $v1, $v0 -.L800759E8: -/* 0765E8 800759E8 1452000A */ bne $v0, $s2, .L80075A14 -/* 0765EC 800759EC 02602825 */ move $a1, $s3 -/* 0765F0 800759F0 8E840000 */ lw $a0, ($s4) -/* 0765F4 800759F4 02A03025 */ move $a2, $s5 -/* 0765F8 800759F8 0C01C837 */ jal func_800720DC -/* 0765FC 800759FC AFA30040 */ sw $v1, 0x40($sp) -/* 076600 80075A00 8FA30040 */ lw $v1, 0x40($sp) -/* 076604 80075A04 14400004 */ bnez $v0, .L80075A18 -/* 076608 80075A08 24010002 */ li $at, 2 -/* 07660C 80075A0C 1000002E */ b .L80075AC8 -/* 076610 80075A10 24020007 */ li $v0, 7 -.L80075A14: -/* 076614 80075A14 24010002 */ li $at, 2 -.L80075A18: -/* 076618 80075A18 14610011 */ bne $v1, $at, .L80075A60 -/* 07661C 80075A1C 24010001 */ li $at, 1 -/* 076620 80075A20 8E840000 */ lw $a0, ($s4) -/* 076624 80075A24 02602825 */ move $a1, $s3 -/* 076628 80075A28 0C033B48 */ jal func_800CED20 -/* 07662C 80075A2C 02A03025 */ move $a2, $s5 -/* 076630 80075A30 14520008 */ bne $v0, $s2, .L80075A54 -/* 076634 80075A34 02602825 */ move $a1, $s3 -/* 076638 80075A38 8E840000 */ lw $a0, ($s4) -/* 07663C 80075A3C 0C01C837 */ jal func_800720DC -/* 076640 80075A40 02A03025 */ move $a2, $s5 -/* 076644 80075A44 14400003 */ bnez $v0, .L80075A54 -/* 076648 80075A48 00000000 */ nop -/* 07664C 80075A4C 1000001E */ b .L80075AC8 -/* 076650 80075A50 24020007 */ li $v0, 7 -.L80075A54: -/* 076654 80075A54 1000001C */ b .L80075AC8 -/* 076658 80075A58 24020005 */ li $v0, 5 -/* 07665C 80075A5C 24010001 */ li $at, 1 -.L80075A60: -/* 076660 80075A60 10610003 */ beq $v1, $at, .L80075A70 -/* 076664 80075A64 2401000B */ li $at, 11 -/* 076668 80075A68 14610003 */ bne $v1, $at, .L80075A78 -/* 07666C 80075A6C 26310001 */ addiu $s1, $s1, 1 -.L80075A70: -/* 076670 80075A70 10000015 */ b .L80075AC8 -/* 076674 80075A74 24020001 */ li $v0, 1 -.L80075A78: -/* 076678 80075A78 24010006 */ li $at, 6 -/* 07667C 80075A7C 14610003 */ bne $v1, $at, .L80075A8C -/* 076680 80075A80 00000000 */ nop -/* 076684 80075A84 10000010 */ b .L80075AC8 -/* 076688 80075A88 24020009 */ li $v0, 9 -.L80075A8C: -/* 07668C 80075A8C 14720003 */ bne $v1, $s2, .L80075A9C -/* 076690 80075A90 24010003 */ li $at, 3 -/* 076694 80075A94 1000000C */ b .L80075AC8 -/* 076698 80075A98 24020003 */ li $v0, 3 -.L80075A9C: -/* 07669C 80075A9C 14610003 */ bne $v1, $at, .L80075AAC -/* 0766A0 80075AA0 00000000 */ nop -/* 0766A4 80075AA4 10000008 */ b .L80075AC8 -/* 0766A8 80075AA8 24020002 */ li $v0, 2 -.L80075AAC: -/* 0766AC 80075AAC 14600003 */ bnez $v1, .L80075ABC -/* 0766B0 80075AB0 00000000 */ nop -/* 0766B4 80075AB4 10000004 */ b .L80075AC8 -/* 0766B8 80075AB8 00001025 */ move $v0, $zero -.L80075ABC: -/* 0766BC 80075ABC 1630FFC1 */ bne $s1, $s0, .L800759C4 -/* 0766C0 80075AC0 02602025 */ move $a0, $s3 -/* 0766C4 80075AC4 24020001 */ li $v0, 1 -.L80075AC8: -/* 0766C8 80075AC8 8FBF002C */ lw $ra, 0x2c($sp) -/* 0766CC 80075ACC 8FB00014 */ lw $s0, 0x14($sp) -/* 0766D0 80075AD0 8FB10018 */ lw $s1, 0x18($sp) -/* 0766D4 80075AD4 8FB2001C */ lw $s2, 0x1c($sp) -/* 0766D8 80075AD8 8FB30020 */ lw $s3, 0x20($sp) -/* 0766DC 80075ADC 8FB40024 */ lw $s4, 0x24($sp) -/* 0766E0 80075AE0 8FB50028 */ lw $s5, 0x28($sp) -/* 0766E4 80075AE4 03E00008 */ jr $ra -/* 0766E8 80075AE8 27BD0048 */ addiu $sp, $sp, 0x48 - -glabel func_80075AEC -/* 0766EC 80075AEC 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0766F0 80075AF0 AFA40018 */ sw $a0, 0x18($sp) -/* 0766F4 80075AF4 3C048012 */ lui $a0, %hi(D_80124010) # $a0, 0x8012 -/* 0766F8 80075AF8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0766FC 80075AFC 8C844010 */ lw $a0, %lo(D_80124010)($a0) -/* 076700 80075B00 0C0333F8 */ jal func_800CCFE0 -/* 076704 80075B04 00000000 */ nop -/* 076708 80075B08 8FBF0014 */ lw $ra, 0x14($sp) -/* 07670C 80075B0C 27BD0018 */ addiu $sp, $sp, 0x18 -/* 076710 80075B10 03E00008 */ jr $ra -/* 076714 80075B14 00001025 */ move $v0, $zero - -glabel func_80075B18 -/* 076718 80075B18 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 07671C 80075B1C AFBF003C */ sw $ra, 0x3c($sp) -/* 076720 80075B20 AFBE0038 */ sw $fp, 0x38($sp) -/* 076724 80075B24 AFB70034 */ sw $s7, 0x34($sp) -/* 076728 80075B28 AFB60030 */ sw $s6, 0x30($sp) -/* 07672C 80075B2C AFB5002C */ sw $s5, 0x2c($sp) -/* 076730 80075B30 AFB40028 */ sw $s4, 0x28($sp) -/* 076734 80075B34 AFB30024 */ sw $s3, 0x24($sp) -/* 076738 80075B38 AFB20020 */ sw $s2, 0x20($sp) -/* 07673C 80075B3C AFB1001C */ sw $s1, 0x1c($sp) -/* 076740 80075B40 0C01A840 */ jal func_8006A100 -/* 076744 80075B44 AFB00018 */ sw $s0, 0x18($sp) -/* 076748 80075B48 3C148012 */ lui $s4, %hi(D_80124010) # $s4, 0x8012 -/* 07674C 80075B4C 26944010 */ addiu $s4, %lo(D_80124010) # addiu $s4, $s4, 0x4010 -/* 076750 80075B50 AE820000 */ sw $v0, ($s4) -/* 076754 80075B54 0C0078A7 */ jal func_8001E29C -/* 076758 80075B58 24040013 */ li $a0, 19 -/* 07675C 80075B5C 3C018012 */ lui $at, %hi(D_801241E0) # $at, 0x8012 -/* 076760 80075B60 AC2241E0 */ sw $v0, %lo(D_801241E0)($at) -/* 076764 80075B64 3C038012 */ lui $v1, %hi(D_801241E7) # $v1, 0x8012 -/* 076768 80075B68 246341E7 */ addiu $v1, %lo(D_801241E7) # addiu $v1, $v1, 0x41e7 -/* 07676C 80075B6C 240F000F */ li $t7, 15 -/* 076770 80075B70 A06F0000 */ sb $t7, ($v1) -/* 076774 80075B74 3C018012 */ lui $at, %hi(D_801241E6) # $at, 0x8012 -/* 076778 80075B78 A02F41E6 */ sb $t7, %lo(D_801241E6)($at) -/* 07677C 80075B7C 3C018012 */ lui $at, %hi(D_801241E4) # $at, 0x8012 -/* 076780 80075B80 24180001 */ li $t8, 1 -/* 076784 80075B84 A03841E4 */ sb $t8, %lo(D_801241E4)($at) -/* 076788 80075B88 3C018012 */ lui $at, %hi(D_801241E8) # $at, 0x8012 -/* 07678C 80075B8C AC2041E8 */ sw $zero, %lo(D_801241E8)($at) -/* 076790 80075B90 3C01800E */ lui $at, %hi(D_800DE48C) # $at, 0x800e -/* 076794 80075B94 24190001 */ li $t9, 1 -/* 076798 80075B98 3C158012 */ lui $s5, %hi(D_801241E5) # $s5, 0x8012 -/* 07679C 80075B9C 3C16800E */ lui $s6, %hi(D_800DE488) # $s6, 0x800e -/* 0767A0 80075BA0 AC39E48C */ sw $t9, %lo(D_800DE48C)($at) -/* 0767A4 80075BA4 26D6E488 */ addiu $s6, %lo(D_800DE488) # addiu $s6, $s6, -0x1b78 -/* 0767A8 80075BA8 26B541E5 */ addiu $s5, %lo(D_801241E5) # addiu $s5, $s5, 0x41e5 -/* 0767AC 80075BAC 8E840000 */ lw $a0, ($s4) -/* 0767B0 80075BB0 A2A00000 */ sb $zero, ($s5) -/* 0767B4 80075BB4 A2C00000 */ sb $zero, ($s6) -/* 0767B8 80075BB8 0C0334A4 */ jal func_800CD290 -/* 0767BC 80075BBC 27A5004E */ addiu $a1, $sp, 0x4e -/* 0767C0 80075BC0 3C118012 */ lui $s1, %hi(D_801241B8) # $s1, 0x8012 -/* 0767C4 80075BC4 263141B8 */ addiu $s1, %lo(D_801241B8) # addiu $s1, $s1, 0x41b8 -/* 0767C8 80075BC8 00008025 */ move $s0, $zero -/* 0767CC 80075BCC 24030001 */ li $v1, 1 -/* 0767D0 80075BD0 241E0004 */ li $fp, 4 -/* 0767D4 80075BD4 2417FFFF */ li $s7, -1 -.L80075BD8: -/* 0767D8 80075BD8 93AA004E */ lbu $t2, 0x4e($sp) -/* 0767DC 80075BDC A6200002 */ sh $zero, 2($s1) -/* 0767E0 80075BE0 86290002 */ lh $t1, 2($s1) -/* 0767E4 80075BE4 01435824 */ and $t3, $t2, $v1 -/* 0767E8 80075BE8 A6370004 */ sh $s7, 4($s1) -/* 0767EC 80075BEC A6370000 */ sh $s7, ($s1) -/* 0767F0 80075BF0 00609825 */ move $s3, $v1 -/* 0767F4 80075BF4 11600025 */ beqz $t3, .L80075C8C -/* 0767F8 80075BF8 A6290006 */ sh $t1, 6($s1) -/* 0767FC 80075BFC 00106080 */ sll $t4, $s0, 2 -/* 076800 80075C00 01906023 */ subu $t4, $t4, $s0 -/* 076804 80075C04 000C6080 */ sll $t4, $t4, 2 -/* 076808 80075C08 01906021 */ addu $t4, $t4, $s0 -/* 07680C 80075C0C 3C0D8012 */ lui $t5, %hi(D_80124018) # $t5, 0x8012 -/* 076810 80075C10 25AD4018 */ addiu $t5, %lo(D_80124018) # addiu $t5, $t5, 0x4018 -/* 076814 80075C14 000C60C0 */ sll $t4, $t4, 3 -/* 076818 80075C18 018D9021 */ addu $s2, $t4, $t5 -/* 07681C 80075C1C 8E840000 */ lw $a0, ($s4) -/* 076820 80075C20 02402825 */ move $a1, $s2 -/* 076824 80075C24 0C033B48 */ jal func_800CED20 -/* 076828 80075C28 02003025 */ move $a2, $s0 -/* 07682C 80075C2C 24010002 */ li $at, 2 -/* 076830 80075C30 14410004 */ bne $v0, $at, .L80075C44 -/* 076834 80075C34 02402825 */ move $a1, $s2 -/* 076838 80075C38 8E840000 */ lw $a0, ($s4) -/* 07683C 80075C3C 0C033B48 */ jal func_800CED20 -/* 076840 80075C40 02003025 */ move $a2, $s0 -.L80075C44: -/* 076844 80075C44 14400006 */ bnez $v0, .L80075C60 -/* 076848 80075C48 2401000A */ li $at, 10 -/* 07684C 80075C4C 92CE0000 */ lbu $t6, ($s6) -/* 076850 80075C50 00000000 */ nop -/* 076854 80075C54 01D37825 */ or $t7, $t6, $s3 -/* 076858 80075C58 1000000C */ b .L80075C8C -/* 07685C 80075C5C A2CF0000 */ sb $t7, ($s6) -.L80075C60: -/* 076860 80075C60 1441000A */ bne $v0, $at, .L80075C8C -/* 076864 80075C64 02402825 */ move $a1, $s2 -/* 076868 80075C68 8E840000 */ lw $a0, ($s4) -/* 07686C 80075C6C 0C01C837 */ jal func_800720DC -/* 076870 80075C70 02003025 */ move $a2, $s0 -/* 076874 80075C74 14400006 */ bnez $v0, .L80075C90 -/* 076878 80075C78 00131840 */ sll $v1, $s3, 1 -/* 07687C 80075C7C 92B80000 */ lbu $t8, ($s5) -/* 076880 80075C80 00000000 */ nop -/* 076884 80075C84 0313C825 */ or $t9, $t8, $s3 -/* 076888 80075C88 A2B90000 */ sb $t9, ($s5) -.L80075C8C: -/* 07688C 80075C8C 00131840 */ sll $v1, $s3, 1 -.L80075C90: -/* 076890 80075C90 306800FF */ andi $t0, $v1, 0xff -/* 076894 80075C94 26100001 */ addiu $s0, $s0, 1 -/* 076898 80075C98 01001825 */ move $v1, $t0 -/* 07689C 80075C9C 161EFFCE */ bne $s0, $fp, .L80075BD8 -/* 0768A0 80075CA0 2631000A */ addiu $s1, $s1, 0xa -/* 0768A4 80075CA4 8E840000 */ lw $a0, ($s4) -/* 0768A8 80075CA8 0C0333F8 */ jal func_800CCFE0 -/* 0768AC 80075CAC 00000000 */ nop -/* 0768B0 80075CB0 8FBF003C */ lw $ra, 0x3c($sp) -/* 0768B4 80075CB4 8FB00018 */ lw $s0, 0x18($sp) -/* 0768B8 80075CB8 8FB1001C */ lw $s1, 0x1c($sp) -/* 0768BC 80075CBC 8FB20020 */ lw $s2, 0x20($sp) -/* 0768C0 80075CC0 8FB30024 */ lw $s3, 0x24($sp) -/* 0768C4 80075CC4 8FB40028 */ lw $s4, 0x28($sp) -/* 0768C8 80075CC8 8FB5002C */ lw $s5, 0x2c($sp) -/* 0768CC 80075CCC 8FB60030 */ lw $s6, 0x30($sp) -/* 0768D0 80075CD0 8FB70034 */ lw $s7, 0x34($sp) -/* 0768D4 80075CD4 8FBE0038 */ lw $fp, 0x38($sp) -/* 0768D8 80075CD8 03E00008 */ jr $ra -/* 0768DC 80075CDC 27BD0058 */ addiu $sp, $sp, 0x58 - -/* 0768E0 80075CE0 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0768E4 80075CE4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0768E8 80075CE8 0C01D637 */ jal func_800758DC -/* 0768EC 80075CEC AFA40020 */ sw $a0, 0x20($sp) -/* 0768F0 80075CF0 8FA40020 */ lw $a0, 0x20($sp) -/* 0768F4 80075CF4 0C01D6BB */ jal func_80075AEC -/* 0768F8 80075CF8 AFA2001C */ sw $v0, 0x1c($sp) -/* 0768FC 80075CFC 8FA3001C */ lw $v1, 0x1c($sp) -/* 076900 80075D00 24010007 */ li $at, 7 -/* 076904 80075D04 14610008 */ bne $v1, $at, .L80075D28 -/* 076908 80075D08 3C028012 */ lui $v0, %hi(D_801241E5) # $v0, 0x8012 -/* 07690C 80075D0C 8FAF0020 */ lw $t7, 0x20($sp) -/* 076910 80075D10 244241E5 */ addiu $v0, %lo(D_801241E5) # addiu $v0, $v0, 0x41e5 -/* 076914 80075D14 904E0000 */ lbu $t6, ($v0) -/* 076918 80075D18 24180001 */ li $t8, 1 -/* 07691C 80075D1C 01F8C804 */ sllv $t9, $t8, $t7 -/* 076920 80075D20 01D94025 */ or $t0, $t6, $t9 -/* 076924 80075D24 A0480000 */ sb $t0, ($v0) -.L80075D28: -/* 076928 80075D28 8FBF0014 */ lw $ra, 0x14($sp) -/* 07692C 80075D2C 27BD0020 */ addiu $sp, $sp, 0x20 -/* 076930 80075D30 03E00008 */ jr $ra -/* 076934 80075D34 00601025 */ move $v0, $v1 - -glabel func_80075D38 -/* 076938 80075D38 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 07693C 80075D3C AFBF0014 */ sw $ra, 0x14($sp) -/* 076940 80075D40 0C01D637 */ jal func_800758DC -/* 076944 80075D44 AFA40020 */ sw $a0, 0x20($sp) -/* 076948 80075D48 10400003 */ beqz $v0, .L80075D58 -/* 07694C 80075D4C 24010002 */ li $at, 2 -/* 076950 80075D50 14410015 */ bne $v0, $at, .L80075DA8 -/* 076954 80075D54 00001825 */ move $v1, $zero -.L80075D58: -/* 076958 80075D58 8FAE0020 */ lw $t6, 0x20($sp) -/* 07695C 80075D5C 3C188012 */ lui $t8, %hi(D_80124018) # $t8, 0x8012 -/* 076960 80075D60 000E7880 */ sll $t7, $t6, 2 -/* 076964 80075D64 01EE7823 */ subu $t7, $t7, $t6 -/* 076968 80075D68 000F7880 */ sll $t7, $t7, 2 -/* 07696C 80075D6C 01EE7821 */ addu $t7, $t7, $t6 -/* 076970 80075D70 000F78C0 */ sll $t7, $t7, 3 -/* 076974 80075D74 27184018 */ addiu $t8, %lo(D_80124018) # addiu $t8, $t8, 0x4018 -/* 076978 80075D78 0C033D4C */ jal func_800CF530 -/* 07697C 80075D7C 01F82021 */ addu $a0, $t7, $t8 -/* 076980 80075D80 14400003 */ bnez $v0, .L80075D90 -/* 076984 80075D84 24010002 */ li $at, 2 -/* 076988 80075D88 10000007 */ b .L80075DA8 -/* 07698C 80075D8C 00001825 */ move $v1, $zero -.L80075D90: -/* 076990 80075D90 14410003 */ bne $v0, $at, .L80075DA0 -/* 076994 80075D94 00000000 */ nop -/* 076998 80075D98 10000003 */ b .L80075DA8 -/* 07699C 80075D9C 24030005 */ li $v1, 5 -.L80075DA0: -/* 0769A0 80075DA0 10000001 */ b .L80075DA8 -/* 0769A4 80075DA4 24030002 */ li $v1, 2 -.L80075DA8: -/* 0769A8 80075DA8 8FA40020 */ lw $a0, 0x20($sp) -/* 0769AC 80075DAC 0C01D6BB */ jal func_80075AEC -/* 0769B0 80075DB0 AFA3001C */ sw $v1, 0x1c($sp) -/* 0769B4 80075DB4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0769B8 80075DB8 8FA2001C */ lw $v0, 0x1c($sp) -/* 0769BC 80075DBC 03E00008 */ jr $ra -/* 0769C0 80075DC0 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_80075DC4 -/* 0769C4 80075DC4 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0769C8 80075DC8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0769CC 80075DCC 0C01D637 */ jal func_800758DC -/* 0769D0 80075DD0 AFA40020 */ sw $a0, 0x20($sp) -/* 0769D4 80075DD4 10400005 */ beqz $v0, .L80075DEC -/* 0769D8 80075DD8 24010002 */ li $at, 2 -/* 0769DC 80075DDC 10410003 */ beq $v0, $at, .L80075DEC -/* 0769E0 80075DE0 24010003 */ li $at, 3 -/* 0769E4 80075DE4 14410017 */ bne $v0, $at, .L80075E44 -/* 0769E8 80075DE8 00001825 */ move $v1, $zero -.L80075DEC: -/* 0769EC 80075DEC 8FA60020 */ lw $a2, 0x20($sp) -/* 0769F0 80075DF0 3C0F8012 */ lui $t7, %hi(D_80124018) # $t7, 0x8012 -/* 0769F4 80075DF4 00067080 */ sll $t6, $a2, 2 -/* 0769F8 80075DF8 01C67023 */ subu $t6, $t6, $a2 -/* 0769FC 80075DFC 000E7080 */ sll $t6, $t6, 2 -/* 076A00 80075E00 3C058012 */ lui $a1, %hi(D_80124010) # $a1, 0x8012 -/* 076A04 80075E04 01C67021 */ addu $t6, $t6, $a2 -/* 076A08 80075E08 000E70C0 */ sll $t6, $t6, 3 -/* 076A0C 80075E0C 8CA54010 */ lw $a1, %lo(D_80124010)($a1) -/* 076A10 80075E10 25EF4018 */ addiu $t7, %lo(D_80124018) # addiu $t7, $t7, 0x4018 -/* 076A14 80075E14 0C033FE4 */ jal func_800CFF90 -/* 076A18 80075E18 01CF2021 */ addu $a0, $t6, $t7 -/* 076A1C 80075E1C 14400003 */ bnez $v0, .L80075E2C -/* 076A20 80075E20 24010002 */ li $at, 2 -/* 076A24 80075E24 10000007 */ b .L80075E44 -/* 076A28 80075E28 00001825 */ move $v1, $zero -.L80075E2C: -/* 076A2C 80075E2C 14410003 */ bne $v0, $at, .L80075E3C -/* 076A30 80075E30 00000000 */ nop -/* 076A34 80075E34 10000003 */ b .L80075E44 -/* 076A38 80075E38 24030005 */ li $v1, 5 -.L80075E3C: -/* 076A3C 80075E3C 10000001 */ b .L80075E44 -/* 076A40 80075E40 24030002 */ li $v1, 2 -.L80075E44: -/* 076A44 80075E44 8FA40020 */ lw $a0, 0x20($sp) -/* 076A48 80075E48 0C01D6BB */ jal func_80075AEC -/* 076A4C 80075E4C AFA3001C */ sw $v1, 0x1c($sp) -/* 076A50 80075E50 8FBF0014 */ lw $ra, 0x14($sp) -/* 076A54 80075E54 8FA2001C */ lw $v0, 0x1c($sp) -/* 076A58 80075E58 03E00008 */ jr $ra -/* 076A5C 80075E5C 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_80075E60 -/* 076A60 80075E60 27BDFF70 */ addiu $sp, $sp, -0x90 -/* 076A64 80075E64 AFBF0034 */ sw $ra, 0x34($sp) -/* 076A68 80075E68 AFB70030 */ sw $s7, 0x30($sp) -/* 076A6C 80075E6C AFB50028 */ sw $s5, 0x28($sp) -/* 076A70 80075E70 AFB40024 */ sw $s4, 0x24($sp) -/* 076A74 80075E74 00A0A025 */ move $s4, $a1 -/* 076A78 80075E78 00C0A825 */ move $s5, $a2 -/* 076A7C 80075E7C 0080B825 */ move $s7, $a0 -/* 076A80 80075E80 AFB6002C */ sw $s6, 0x2c($sp) -/* 076A84 80075E84 AFB30020 */ sw $s3, 0x20($sp) -/* 076A88 80075E88 AFB2001C */ sw $s2, 0x1c($sp) -/* 076A8C 80075E8C AFB10018 */ sw $s1, 0x18($sp) -/* 076A90 80075E90 AFB00014 */ sw $s0, 0x14($sp) -/* 076A94 80075E94 0C01D637 */ jal func_800758DC -/* 076A98 80075E98 AFA7009C */ sw $a3, 0x9c($sp) -/* 076A9C 80075E9C 10400006 */ beqz $v0, .L80075EB8 -/* 076AA0 80075EA0 00408025 */ move $s0, $v0 -/* 076AA4 80075EA4 0C01D6BB */ jal func_80075AEC -/* 076AA8 80075EA8 02E02025 */ move $a0, $s7 -/* 076AAC 80075EAC 00177780 */ sll $t6, $s7, 0x1e -/* 076AB0 80075EB0 100000A1 */ b .L80076138 -/* 076AB4 80075EB4 01D01025 */ or $v0, $t6, $s0 -.L80075EB8: -/* 076AB8 80075EB8 00177880 */ sll $t7, $s7, 2 -/* 076ABC 80075EBC 01F77823 */ subu $t7, $t7, $s7 -/* 076AC0 80075EC0 000F7880 */ sll $t7, $t7, 2 -/* 076AC4 80075EC4 01F77821 */ addu $t7, $t7, $s7 -/* 076AC8 80075EC8 3C188012 */ lui $t8, %hi(D_80124018) # $t8, 0x8012 -/* 076ACC 80075ECC 27184018 */ addiu $t8, %lo(D_80124018) # addiu $t8, $t8, 0x4018 -/* 076AD0 80075ED0 000F78C0 */ sll $t7, $t7, 3 -/* 076AD4 80075ED4 01F82021 */ addu $a0, $t7, $t8 -/* 076AD8 80075ED8 AFA40054 */ sw $a0, 0x54($sp) -/* 076ADC 80075EDC 27A50068 */ addiu $a1, $sp, 0x68 -/* 076AE0 80075EE0 0C0340E4 */ jal func_800D0390 -/* 076AE4 80075EE4 27A60064 */ addiu $a2, $sp, 0x64 -/* 076AE8 80075EE8 10400007 */ beqz $v0, .L80075F08 -/* 076AEC 80075EEC 00000000 */ nop -/* 076AF0 80075EF0 0C01D6BB */ jal func_80075AEC -/* 076AF4 80075EF4 02E02025 */ move $a0, $s7 -/* 076AF8 80075EF8 00171780 */ sll $v0, $s7, 0x1e -/* 076AFC 80075EFC 34590009 */ ori $t9, $v0, 9 -/* 076B00 80075F00 1000008D */ b .L80076138 -/* 076B04 80075F04 03201025 */ move $v0, $t9 -.L80075F08: -/* 076B08 80075F08 0C027AC8 */ jal func_8009EB20 -/* 076B0C 80075F0C 00000000 */ nop -/* 076B10 80075F10 24010003 */ li $at, 3 -/* 076B14 80075F14 8FA90068 */ lw $t1, 0x68($sp) -/* 076B18 80075F18 14410004 */ bne $v0, $at, .L80075F2C -/* 076B1C 80075F1C 3C10800E */ lui $s0, %hi(D_800DE440) # $s0, 0x800e -/* 076B20 80075F20 3C164E44 */ lui $s6, (0x4E44594A >> 16) # lui $s6, 0x4e44 -/* 076B24 80075F24 10000009 */ b .L80075F4C -/* 076B28 80075F28 36D6594A */ ori $s6, (0x4E44594A & 0xFFFF) # ori $s6, $s6, 0x594a -.L80075F2C: -/* 076B2C 80075F2C 3C088000 */ lui $t0, %hi(D_80000300) # $t0, 0x8000 -/* 076B30 80075F30 8D080300 */ lw $t0, %lo(D_80000300)($t0) -/* 076B34 80075F34 3C164E44 */ lui $s6, (0x4E445945 >> 16) # lui $s6, 0x4e44 -/* 076B38 80075F38 15000004 */ bnez $t0, .L80075F4C -/* 076B3C 80075F3C 36D65945 */ ori $s6, (0x4E445945 & 0xFFFF) # ori $s6, $s6, 0x5945 -/* 076B40 80075F40 3C164E44 */ lui $s6, (0x4E445950 >> 16) # lui $s6, 0x4e44 -/* 076B44 80075F44 10000001 */ b .L80075F4C -/* 076B48 80075F48 36D65950 */ ori $s6, (0x4E445950 & 0xFFFF) # ori $s6, $s6, 0x5950 -.L80075F4C: -/* 076B4C 80075F4C 0289082A */ slt $at, $s4, $t1 -/* 076B50 80075F50 10200002 */ beqz $at, .L80075F5C -/* 076B54 80075F54 2610E440 */ addiu $s0, %lo(D_800DE440) # addiu $s0, $s0, -0x1bc0 -/* 076B58 80075F58 AFB40068 */ sw $s4, 0x68($sp) -.L80075F5C: -/* 076B5C 80075F5C 8E040000 */ lw $a0, ($s0) -/* 076B60 80075F60 00000000 */ nop -/* 076B64 80075F64 10800004 */ beqz $a0, .L80075F78 -/* 076B68 80075F68 8FA60068 */ lw $a2, 0x68($sp) -/* 076B6C 80075F6C 0C01C450 */ jal func_80071140 -/* 076B70 80075F70 00000000 */ nop -/* 076B74 80075F74 8FA60068 */ lw $a2, 0x68($sp) -.L80075F78: -/* 076B78 80075F78 240500FF */ li $a1, 255 -/* 076B7C 80075F7C 00065080 */ sll $t2, $a2, 2 -/* 076B80 80075F80 01465023 */ subu $t2, $t2, $a2 -/* 076B84 80075F84 000A20C0 */ sll $a0, $t2, 3 -/* 076B88 80075F88 0C01C327 */ jal func_80070C9C -/* 076B8C 80075F8C AFA40064 */ sw $a0, 0x64($sp) -/* 076B90 80075F90 8FA50064 */ lw $a1, 0x64($sp) -/* 076B94 80075F94 AE020000 */ sw $v0, ($s0) -/* 076B98 80075F98 0C034138 */ jal func_800D04E0 -/* 076B9C 80075F9C 00402025 */ move $a0, $v0 -/* 076BA0 80075FA0 8FAB0068 */ lw $t3, 0x68($sp) -/* 076BA4 80075FA4 8E030000 */ lw $v1, ($s0) -/* 076BA8 80075FA8 19600014 */ blez $t3, .L80075FFC -/* 076BAC 80075FAC 00009825 */ move $s3, $zero -/* 076BB0 80075FB0 8FB000A0 */ lw $s0, 0xa0($sp) -/* 076BB4 80075FB4 8FB1009C */ lw $s1, 0x9c($sp) -/* 076BB8 80075FB8 8FB200A4 */ lw $s2, 0xa4($sp) -/* 076BBC 80075FBC 02A01025 */ move $v0, $s5 -/* 076BC0 80075FC0 240400FF */ li $a0, 255 -.L80075FC4: -/* 076BC4 80075FC4 AC430000 */ sw $v1, ($v0) -/* 076BC8 80075FC8 24630012 */ addiu $v1, $v1, 0x12 -/* 076BCC 80075FCC AE230000 */ sw $v1, ($s1) -/* 076BD0 80075FD0 AE000000 */ sw $zero, ($s0) -/* 076BD4 80075FD4 A2440000 */ sb $a0, ($s2) -/* 076BD8 80075FD8 8FAC0068 */ lw $t4, 0x68($sp) -/* 076BDC 80075FDC 26730001 */ addiu $s3, $s3, 1 -/* 076BE0 80075FE0 026C082A */ slt $at, $s3, $t4 -/* 076BE4 80075FE4 24420004 */ addiu $v0, $v0, 4 -/* 076BE8 80075FE8 26310004 */ addiu $s1, $s1, 4 -/* 076BEC 80075FEC 26100004 */ addiu $s0, $s0, 4 -/* 076BF0 80075FF0 26520001 */ addiu $s2, $s2, 1 -/* 076BF4 80075FF4 1420FFF3 */ bnez $at, .L80075FC4 -/* 076BF8 80075FF8 24630006 */ addiu $v1, $v1, 6 -.L80075FFC: -/* 076BFC 80075FFC 8FA700A0 */ lw $a3, 0xa0($sp) -/* 076C00 80076000 0274082A */ slt $at, $s3, $s4 -/* 076C04 80076004 10200014 */ beqz $at, .L80076058 -/* 076C08 80076008 240400FF */ li $a0, 255 -/* 076C0C 8007600C 00131880 */ sll $v1, $s3, 2 -/* 076C10 80076010 8FAD009C */ lw $t5, 0x9c($sp) -/* 076C14 80076014 8FAE00A4 */ lw $t6, 0xa4($sp) -/* 076C18 80076018 00147880 */ sll $t7, $s4, 2 -/* 076C1C 8007601C 01E72821 */ addu $a1, $t7, $a3 -/* 076C20 80076020 02A31021 */ addu $v0, $s5, $v1 -/* 076C24 80076024 00E38021 */ addu $s0, $a3, $v1 -/* 076C28 80076028 01A38821 */ addu $s1, $t5, $v1 -/* 076C2C 8007602C 01D39021 */ addu $s2, $t6, $s3 -.L80076030: -/* 076C30 80076030 AE200000 */ sw $zero, ($s1) -/* 076C34 80076034 AC400000 */ sw $zero, ($v0) -/* 076C38 80076038 26100004 */ addiu $s0, $s0, 4 -/* 076C3C 8007603C AE00FFFC */ sw $zero, -4($s0) -/* 076C40 80076040 0205082B */ sltu $at, $s0, $a1 -/* 076C44 80076044 A2440000 */ sb $a0, ($s2) -/* 076C48 80076048 24420004 */ addiu $v0, $v0, 4 -/* 076C4C 8007604C 26310004 */ addiu $s1, $s1, 4 -/* 076C50 80076050 1420FFF7 */ bnez $at, .L80076030 -/* 076C54 80076054 26520001 */ addiu $s2, $s2, 1 -.L80076058: -/* 076C58 80076058 8FB80068 */ lw $t8, 0x68($sp) -/* 076C5C 8007605C 00009825 */ move $s3, $zero -/* 076C60 80076060 1B000032 */ blez $t8, .L8007612C -/* 076C64 80076064 00000000 */ nop -/* 076C68 80076068 8FA40054 */ lw $a0, 0x54($sp) -.L8007606C: -/* 076C6C 8007606C 02602825 */ move $a1, $s3 -/* 076C70 80076070 0C034160 */ jal func_800D0580 -/* 076C74 80076074 27A60070 */ addiu $a2, $sp, 0x70 -/* 076C78 80076078 24010005 */ li $at, 5 -/* 076C7C 8007607C 14410004 */ bne $v0, $at, .L80076090 -/* 076C80 80076080 0013C880 */ sll $t9, $s3, 2 -/* 076C84 80076084 02B94021 */ addu $t0, $s5, $t9 -/* 076C88 80076088 10000023 */ b .L80076118 -/* 076C8C 8007608C AD000000 */ sw $zero, ($t0) -.L80076090: -/* 076C90 80076090 10400005 */ beqz $v0, .L800760A8 -/* 076C94 80076094 27A4007E */ addiu $a0, $sp, 0x7e -/* 076C98 80076098 0C01D6BB */ jal func_80075AEC -/* 076C9C 8007609C 02E02025 */ move $a0, $s7 -/* 076CA0 800760A0 10000025 */ b .L80076138 -/* 076CA4 800760A4 24020009 */ li $v0, 9 -.L800760A8: -/* 076CA8 800760A8 00131880 */ sll $v1, $s3, 2 -/* 076CAC 800760AC 8FAA009C */ lw $t2, 0x9c($sp) -/* 076CB0 800760B0 8FAB00A0 */ lw $t3, 0xa0($sp) -/* 076CB4 800760B4 8FAC00A4 */ lw $t4, 0xa4($sp) -/* 076CB8 800760B8 02A34821 */ addu $t1, $s5, $v1 -/* 076CBC 800760BC 8D250000 */ lw $a1, ($t1) -/* 076CC0 800760C0 24060010 */ li $a2, 16 -/* 076CC4 800760C4 01438821 */ addu $s1, $t2, $v1 -/* 076CC8 800760C8 01638021 */ addu $s0, $t3, $v1 -/* 076CCC 800760CC 0C01DA63 */ jal func_8007698C -/* 076CD0 800760D0 01939021 */ addu $s2, $t4, $s3 -/* 076CD4 800760D4 8E250000 */ lw $a1, ($s1) -/* 076CD8 800760D8 27A4007A */ addiu $a0, $sp, 0x7a -/* 076CDC 800760DC 0C01DA63 */ jal func_8007698C -/* 076CE0 800760E0 24060004 */ li $a2, 4 -/* 076CE4 800760E4 8FAD0070 */ lw $t5, 0x70($sp) -/* 076CE8 800760E8 240E0006 */ li $t6, 6 -/* 076CEC 800760EC AE0D0000 */ sw $t5, ($s0) -/* 076CF0 800760F0 A24E0000 */ sb $t6, ($s2) -/* 076CF4 800760F4 8FAF0074 */ lw $t7, 0x74($sp) -/* 076CF8 800760F8 97B80078 */ lhu $t8, 0x78($sp) -/* 076CFC 800760FC 15F60006 */ bne $t7, $s6, .L80076118 -/* 076D00 80076100 24013459 */ li $at, 13401 -/* 076D04 80076104 17010004 */ bne $t8, $at, .L80076118 -/* 076D08 80076108 02E02025 */ move $a0, $s7 -/* 076D0C 8007610C 0C01DABD */ jal func_80076AF4 -/* 076D10 80076110 02602825 */ move $a1, $s3 -/* 076D14 80076114 A2420000 */ sb $v0, ($s2) -.L80076118: -/* 076D18 80076118 8FB90068 */ lw $t9, 0x68($sp) -/* 076D1C 8007611C 26730001 */ addiu $s3, $s3, 1 -/* 076D20 80076120 0279082A */ slt $at, $s3, $t9 -/* 076D24 80076124 1420FFD1 */ bnez $at, .L8007606C -/* 076D28 80076128 8FA40054 */ lw $a0, 0x54($sp) -.L8007612C: -/* 076D2C 8007612C 0C01D6BB */ jal func_80075AEC -/* 076D30 80076130 02E02025 */ move $a0, $s7 -/* 076D34 80076134 00001025 */ move $v0, $zero -.L80076138: -/* 076D38 80076138 8FBF0034 */ lw $ra, 0x34($sp) -/* 076D3C 8007613C 8FB00014 */ lw $s0, 0x14($sp) -/* 076D40 80076140 8FB10018 */ lw $s1, 0x18($sp) -/* 076D44 80076144 8FB2001C */ lw $s2, 0x1c($sp) -/* 076D48 80076148 8FB30020 */ lw $s3, 0x20($sp) -/* 076D4C 8007614C 8FB40024 */ lw $s4, 0x24($sp) -/* 076D50 80076150 8FB50028 */ lw $s5, 0x28($sp) -/* 076D54 80076154 8FB6002C */ lw $s6, 0x2c($sp) -/* 076D58 80076158 8FB70030 */ lw $s7, 0x30($sp) -/* 076D5C 8007615C 03E00008 */ jr $ra -/* 076D60 80076160 27BD0090 */ addiu $sp, $sp, 0x90 - -glabel func_80076164 -/* 076D64 80076164 3C04800E */ lui $a0, %hi(D_800DE440) # $a0, 0x800e -/* 076D68 80076168 8C84E440 */ lw $a0, %lo(D_800DE440)($a0) -/* 076D6C 8007616C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 076D70 80076170 10800003 */ beqz $a0, .L80076180 -/* 076D74 80076174 AFBF0014 */ sw $ra, 0x14($sp) -/* 076D78 80076178 0C01C450 */ jal func_80071140 -/* 076D7C 8007617C 00000000 */ nop -.L80076180: -/* 076D80 80076180 8FBF0014 */ lw $ra, 0x14($sp) -/* 076D84 80076184 3C01800E */ lui $at, %hi(D_800DE440) # $at, 0x800e -/* 076D88 80076188 AC20E440 */ sw $zero, %lo(D_800DE440)($at) -/* 076D8C 8007618C 03E00008 */ jr $ra -/* 076D90 80076190 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_80076194 -/* 076D94 80076194 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 076D98 80076198 AFBF001C */ sw $ra, 0x1c($sp) -/* 076D9C 8007619C AFB00018 */ sw $s0, 0x18($sp) -/* 076DA0 800761A0 00808025 */ move $s0, $a0 -/* 076DA4 800761A4 AFA50034 */ sw $a1, 0x34($sp) -/* 076DA8 800761A8 0C01D637 */ jal func_800758DC -/* 076DAC 800761AC AFA60038 */ sw $a2, 0x38($sp) -/* 076DB0 800761B0 1440003A */ bnez $v0, .L8007629C -/* 076DB4 800761B4 00401825 */ move $v1, $v0 -/* 076DB8 800761B8 8FAE0034 */ lw $t6, 0x34($sp) -/* 076DBC 800761BC 00107880 */ sll $t7, $s0, 2 -/* 076DC0 800761C0 11C00015 */ beqz $t6, .L80076218 -/* 076DC4 800761C4 01F07823 */ subu $t7, $t7, $s0 -/* 076DC8 800761C8 000F7880 */ sll $t7, $t7, 2 -/* 076DCC 800761CC 01F07821 */ addu $t7, $t7, $s0 -/* 076DD0 800761D0 3C188012 */ lui $t8, %hi(D_80124018) # $t8, 0x8012 -/* 076DD4 800761D4 27184018 */ addiu $t8, %lo(D_80124018) # addiu $t8, $t8, 0x4018 -/* 076DD8 800761D8 000F78C0 */ sll $t7, $t7, 3 -/* 076DDC 800761DC 01F82021 */ addu $a0, $t7, $t8 -/* 076DE0 800761E0 0C033CF8 */ jal func_800CF3E0 -/* 076DE4 800761E4 27A50028 */ addiu $a1, $sp, 0x28 -/* 076DE8 800761E8 10400007 */ beqz $v0, .L80076208 -/* 076DEC 800761EC 00401825 */ move $v1, $v0 -/* 076DF0 800761F0 0C01D6BB */ jal func_80075AEC -/* 076DF4 800761F4 02002025 */ move $a0, $s0 -/* 076DF8 800761F8 00101780 */ sll $v0, $s0, 0x1e -/* 076DFC 800761FC 34590009 */ ori $t9, $v0, 9 -/* 076E00 80076200 1000002D */ b .L800762B8 -/* 076E04 80076204 03201025 */ move $v0, $t9 -.L80076208: -/* 076E08 80076208 8FA80028 */ lw $t0, 0x28($sp) -/* 076E0C 8007620C 8FA90034 */ lw $t1, 0x34($sp) -/* 076E10 80076210 00000000 */ nop -/* 076E14 80076214 AD280000 */ sw $t0, ($t1) -.L80076218: -/* 076E18 80076218 8FAA0038 */ lw $t2, 0x38($sp) -/* 076E1C 8007621C 00105880 */ sll $t3, $s0, 2 -/* 076E20 80076220 11400020 */ beqz $t2, .L800762A4 -/* 076E24 80076224 01705823 */ subu $t3, $t3, $s0 -/* 076E28 80076228 000B5880 */ sll $t3, $t3, 2 -/* 076E2C 8007622C 01705821 */ addu $t3, $t3, $s0 -/* 076E30 80076230 3C0C8012 */ lui $t4, %hi(D_80124018) # $t4, 0x8012 -/* 076E34 80076234 258C4018 */ addiu $t4, %lo(D_80124018) # addiu $t4, $t4, 0x4018 -/* 076E38 80076238 000B58C0 */ sll $t3, $t3, 3 -/* 076E3C 8007623C 016C2021 */ addu $a0, $t3, $t4 -/* 076E40 80076240 27A50024 */ addiu $a1, $sp, 0x24 -/* 076E44 80076244 0C0340E4 */ jal func_800D0390 -/* 076E48 80076248 27A60020 */ addiu $a2, $sp, 0x20 -/* 076E4C 8007624C 10400007 */ beqz $v0, .L8007626C -/* 076E50 80076250 00401825 */ move $v1, $v0 -/* 076E54 80076254 0C01D6BB */ jal func_80075AEC -/* 076E58 80076258 02002025 */ move $a0, $s0 -/* 076E5C 8007625C 00101780 */ sll $v0, $s0, 0x1e -/* 076E60 80076260 344D0009 */ ori $t5, $v0, 9 -/* 076E64 80076264 10000014 */ b .L800762B8 -/* 076E68 80076268 01A01025 */ move $v0, $t5 -.L8007626C: -/* 076E6C 8007626C 8FAE0020 */ lw $t6, 0x20($sp) -/* 076E70 80076270 8FB80020 */ lw $t8, 0x20($sp) -/* 076E74 80076274 29C10010 */ slti $at, $t6, 0x10 -/* 076E78 80076278 14200004 */ bnez $at, .L8007628C -/* 076E7C 8007627C 24190010 */ li $t9, 16 -/* 076E80 80076280 8FAF0038 */ lw $t7, 0x38($sp) -/* 076E84 80076284 10000007 */ b .L800762A4 -/* 076E88 80076288 ADE00000 */ sw $zero, ($t7) -.L8007628C: -/* 076E8C 8007628C 8FA90038 */ lw $t1, 0x38($sp) -/* 076E90 80076290 03384023 */ subu $t0, $t9, $t8 -/* 076E94 80076294 10000003 */ b .L800762A4 -/* 076E98 80076298 AD280000 */ sw $t0, ($t1) -.L8007629C: -/* 076E9C 8007629C 00105780 */ sll $t2, $s0, 0x1e -/* 076EA0 800762A0 004A1825 */ or $v1, $v0, $t2 -.L800762A4: -/* 076EA4 800762A4 02002025 */ move $a0, $s0 -/* 076EA8 800762A8 0C01D6BB */ jal func_80075AEC -/* 076EAC 800762AC AFA3002C */ sw $v1, 0x2c($sp) -/* 076EB0 800762B0 8FA2002C */ lw $v0, 0x2c($sp) -/* 076EB4 800762B4 00000000 */ nop -.L800762B8: -/* 076EB8 800762B8 8FBF001C */ lw $ra, 0x1c($sp) -/* 076EBC 800762BC 8FB00018 */ lw $s0, 0x18($sp) -/* 076EC0 800762C0 03E00008 */ jr $ra -/* 076EC4 800762C4 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_800762C8 -/* 076EC8 800762C8 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 076ECC 800762CC AFBF0024 */ sw $ra, 0x24($sp) -/* 076ED0 800762D0 AFB0001C */ sw $s0, 0x1c($sp) -/* 076ED4 800762D4 00808025 */ move $s0, $a0 -/* 076ED8 800762D8 AFB10020 */ sw $s1, 0x20($sp) -/* 076EDC 800762DC 0C01D637 */ jal func_800758DC -/* 076EE0 800762E0 AFA50054 */ sw $a1, 0x54($sp) -/* 076EE4 800762E4 10400006 */ beqz $v0, .L80076300 -/* 076EE8 800762E8 00408825 */ move $s1, $v0 -/* 076EEC 800762EC 0C01D6BB */ jal func_80075AEC -/* 076EF0 800762F0 02002025 */ move $a0, $s0 -/* 076EF4 800762F4 00107780 */ sll $t6, $s0, 0x1e -/* 076EF8 800762F8 1000001E */ b .L80076374 -/* 076EFC 800762FC 01D11025 */ or $v0, $t6, $s1 -.L80076300: -/* 076F00 80076300 0010C080 */ sll $t8, $s0, 2 -/* 076F04 80076304 0310C023 */ subu $t8, $t8, $s0 -/* 076F08 80076308 0018C080 */ sll $t8, $t8, 2 -/* 076F0C 8007630C 0310C021 */ addu $t8, $t8, $s0 -/* 076F10 80076310 3C198012 */ lui $t9, %hi(D_80124018) # $t9, 0x8012 -/* 076F14 80076314 00108F80 */ sll $s1, $s0, 0x1e -/* 076F18 80076318 27394018 */ addiu $t9, %lo(D_80124018) # addiu $t9, $t9, 0x4018 -/* 076F1C 8007631C 0018C0C0 */ sll $t8, $t8, 3 -/* 076F20 80076320 362F0009 */ ori $t7, $s1, 9 -/* 076F24 80076324 03192021 */ addu $a0, $t8, $t9 -/* 076F28 80076328 8FA50054 */ lw $a1, 0x54($sp) -/* 076F2C 8007632C 01E08825 */ move $s1, $t7 -/* 076F30 80076330 AFA40028 */ sw $a0, 0x28($sp) -/* 076F34 80076334 0C034160 */ jal func_800D0580 -/* 076F38 80076338 27A60030 */ addiu $a2, $sp, 0x30 -/* 076F3C 8007633C 8FA40028 */ lw $a0, 0x28($sp) -/* 076F40 80076340 14400009 */ bnez $v0, .L80076368 -/* 076F44 80076344 27A7003E */ addiu $a3, $sp, 0x3e -/* 076F48 80076348 97A50038 */ lhu $a1, 0x38($sp) -/* 076F4C 8007634C 8FA60034 */ lw $a2, 0x34($sp) -/* 076F50 80076350 27A8003A */ addiu $t0, $sp, 0x3a -/* 076F54 80076354 0C03421C */ jal func_800D0870 -/* 076F58 80076358 AFA80010 */ sw $t0, 0x10($sp) -/* 076F5C 8007635C 14400002 */ bnez $v0, .L80076368 -/* 076F60 80076360 00000000 */ nop -/* 076F64 80076364 00008825 */ move $s1, $zero -.L80076368: -/* 076F68 80076368 0C01D6BB */ jal func_80075AEC -/* 076F6C 8007636C 02002025 */ move $a0, $s0 -/* 076F70 80076370 02201025 */ move $v0, $s1 -.L80076374: -/* 076F74 80076374 8FBF0024 */ lw $ra, 0x24($sp) -/* 076F78 80076378 8FB0001C */ lw $s0, 0x1c($sp) -/* 076F7C 8007637C 8FB10020 */ lw $s1, 0x20($sp) -/* 076F80 80076380 03E00008 */ jr $ra -/* 076F84 80076384 27BD0050 */ addiu $sp, $sp, 0x50 - -glabel func_80076388 -/* 076F88 80076388 27BDFF90 */ addiu $sp, $sp, -0x70 -/* 076F8C 8007638C AFBF0024 */ sw $ra, 0x24($sp) -/* 076F90 80076390 AFB00020 */ sw $s0, 0x20($sp) -/* 076F94 80076394 00808025 */ move $s0, $a0 -/* 076F98 80076398 AFA50074 */ sw $a1, 0x74($sp) -/* 076F9C 8007639C 0C01D637 */ jal func_800758DC -/* 076FA0 800763A0 AFA60078 */ sw $a2, 0x78($sp) -/* 076FA4 800763A4 10400008 */ beqz $v0, .L800763C8 -/* 076FA8 800763A8 00107880 */ sll $t7, $s0, 2 -/* 076FAC 800763AC 02002025 */ move $a0, $s0 -/* 076FB0 800763B0 0C01D6BB */ jal func_80075AEC -/* 076FB4 800763B4 AFA20030 */ sw $v0, 0x30($sp) -/* 076FB8 800763B8 8FA30030 */ lw $v1, 0x30($sp) -/* 076FBC 800763BC 00107780 */ sll $t6, $s0, 0x1e -/* 076FC0 800763C0 10000045 */ b .L800764D8 -/* 076FC4 800763C4 01C31025 */ or $v0, $t6, $v1 -.L800763C8: -/* 076FC8 800763C8 01F07823 */ subu $t7, $t7, $s0 -/* 076FCC 800763CC 000F7880 */ sll $t7, $t7, 2 -/* 076FD0 800763D0 01F07821 */ addu $t7, $t7, $s0 -/* 076FD4 800763D4 3C188012 */ lui $t8, %hi(D_80124018) # $t8, 0x8012 -/* 076FD8 800763D8 27184018 */ addiu $t8, %lo(D_80124018) # addiu $t8, $t8, 0x4018 -/* 076FDC 800763DC 000F78C0 */ sll $t7, $t7, 3 -/* 076FE0 800763E0 8FA50074 */ lw $a1, 0x74($sp) -/* 076FE4 800763E4 01F82021 */ addu $a0, $t7, $t8 -/* 076FE8 800763E8 0C034160 */ jal func_800D0580 -/* 076FEC 800763EC 27A60034 */ addiu $a2, $sp, 0x34 -/* 076FF0 800763F0 10400008 */ beqz $v0, .L80076414 -/* 076FF4 800763F4 8FA40034 */ lw $a0, 0x34($sp) -/* 076FF8 800763F8 0C01D6BB */ jal func_80075AEC -/* 076FFC 800763FC 02002025 */ move $a0, $s0 -/* 077000 80076400 00101780 */ sll $v0, $s0, 0x1e -/* 077004 80076404 34590009 */ ori $t9, $v0, 9 -/* 077008 80076408 10000033 */ b .L800764D8 -/* 07700C 8007640C 03201025 */ move $v0, $t9 -/* 077010 80076410 8FA40034 */ lw $a0, 0x34($sp) -.L80076414: -/* 077014 80076414 0C01C327 */ jal func_80070C9C -/* 077018 80076418 240500FF */ li $a1, 255 -/* 07701C 8007641C 8FA50074 */ lw $a1, 0x74($sp) -/* 077020 80076420 8FA70034 */ lw $a3, 0x34($sp) -/* 077024 80076424 AFA2002C */ sw $v0, 0x2c($sp) -/* 077028 80076428 02002025 */ move $a0, $s0 -/* 07702C 8007642C 0C01D984 */ jal func_80076610 -/* 077030 80076430 00403025 */ move $a2, $v0 -/* 077034 80076434 02002025 */ move $a0, $s0 -/* 077038 80076438 0C01D6BB */ jal func_80075AEC -/* 07703C 8007643C AFA20030 */ sw $v0, 0x30($sp) -/* 077040 80076440 8FA30030 */ lw $v1, 0x30($sp) -/* 077044 80076444 27A40042 */ addiu $a0, $sp, 0x42 -/* 077048 80076448 10600008 */ beqz $v1, .L8007646C -/* 07704C 8007644C 24060010 */ li $a2, 16 -/* 077050 80076450 8FA4002C */ lw $a0, 0x2c($sp) -/* 077054 80076454 0C01C450 */ jal func_80071140 -/* 077058 80076458 AFA30030 */ sw $v1, 0x30($sp) -/* 07705C 8007645C 8FA30030 */ lw $v1, 0x30($sp) -/* 077060 80076460 00104780 */ sll $t0, $s0, 0x1e -/* 077064 80076464 1000001C */ b .L800764D8 -/* 077068 80076468 01031025 */ or $v0, $t0, $v1 -.L8007646C: -/* 07706C 8007646C 27B0005C */ addiu $s0, $sp, 0x5c -/* 077070 80076470 0C01DA63 */ jal func_8007698C -/* 077074 80076474 02002825 */ move $a1, $s0 -/* 077078 80076478 27A4003E */ addiu $a0, $sp, 0x3e -/* 07707C 8007647C 27A50054 */ addiu $a1, $sp, 0x54 -/* 077080 80076480 0C01DA63 */ jal func_8007698C -/* 077084 80076484 24060004 */ li $a2, 4 -/* 077088 80076488 8FA9002C */ lw $t1, 0x2c($sp) -/* 07708C 8007648C 8FAA0034 */ lw $t2, 0x34($sp) -/* 077090 80076490 8FA40078 */ lw $a0, 0x78($sp) -/* 077094 80076494 2405FFFF */ li $a1, -1 -/* 077098 80076498 02003025 */ move $a2, $s0 -/* 07709C 8007649C 27A70054 */ addiu $a3, $sp, 0x54 -/* 0770A0 800764A0 AFA90010 */ sw $t1, 0x10($sp) -/* 0770A4 800764A4 0C01D9B5 */ jal func_800766D4 -/* 0770A8 800764A8 AFAA0014 */ sw $t2, 0x14($sp) -/* 0770AC 800764AC 10400005 */ beqz $v0, .L800764C4 -/* 0770B0 800764B0 00401825 */ move $v1, $v0 -/* 0770B4 800764B4 8FAB0078 */ lw $t3, 0x78($sp) -/* 0770B8 800764B8 00000000 */ nop -/* 0770BC 800764BC 000B6780 */ sll $t4, $t3, 0x1e -/* 0770C0 800764C0 004C1825 */ or $v1, $v0, $t4 -.L800764C4: -/* 0770C4 800764C4 8FA4002C */ lw $a0, 0x2c($sp) -/* 0770C8 800764C8 0C01C450 */ jal func_80071140 -/* 0770CC 800764CC AFA30030 */ sw $v1, 0x30($sp) -/* 0770D0 800764D0 8FA20030 */ lw $v0, 0x30($sp) -/* 0770D4 800764D4 00000000 */ nop -.L800764D8: -/* 0770D8 800764D8 8FBF0024 */ lw $ra, 0x24($sp) -/* 0770DC 800764DC 8FB00020 */ lw $s0, 0x20($sp) -/* 0770E0 800764E0 03E00008 */ jr $ra -/* 0770E4 800764E4 27BD0070 */ addiu $sp, $sp, 0x70 - -glabel func_800764E8 -/* 0770E8 800764E8 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 0770EC 800764EC AFA40048 */ sw $a0, 0x48($sp) -/* 0770F0 800764F0 AFBF001C */ sw $ra, 0x1c($sp) -/* 0770F4 800764F4 AFA5004C */ sw $a1, 0x4c($sp) -/* 0770F8 800764F8 AFA60050 */ sw $a2, 0x50($sp) -/* 0770FC 800764FC 00A02025 */ move $a0, $a1 -/* 077100 80076500 AFA70054 */ sw $a3, 0x54($sp) -/* 077104 80076504 27A50034 */ addiu $a1, $sp, 0x34 -/* 077108 80076508 0C01DA8E */ jal func_80076A38 -/* 07710C 8007650C 24060010 */ li $a2, 16 -/* 077110 80076510 8FA40050 */ lw $a0, 0x50($sp) -/* 077114 80076514 27A5002C */ addiu $a1, $sp, 0x2c -/* 077118 80076518 0C01DA8E */ jal func_80076A38 -/* 07711C 8007651C 24060004 */ li $a2, 4 -/* 077120 80076520 0C027AC8 */ jal func_8009EB20 -/* 077124 80076524 00000000 */ nop -/* 077128 80076528 24010003 */ li $at, 3 -/* 07712C 8007652C 14410004 */ bne $v0, $at, .L80076540 -/* 077130 80076530 3C198012 */ lui $t9, %hi(D_80124018) # $t9, 0x8012 -/* 077134 80076534 3C064E44 */ lui $a2, (0x4E44594A >> 16) # lui $a2, 0x4e44 -/* 077138 80076538 10000009 */ b .L80076560 -/* 07713C 8007653C 34C6594A */ ori $a2, (0x4E44594A & 0xFFFF) # ori $a2, $a2, 0x594a -.L80076540: -/* 077140 80076540 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 -/* 077144 80076544 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) -/* 077148 80076548 3C064E44 */ lui $a2, (0x4E445945 >> 16) # lui $a2, 0x4e44 -/* 07714C 8007654C 15C00004 */ bnez $t6, .L80076560 -/* 077150 80076550 34C65945 */ ori $a2, (0x4E445945 & 0xFFFF) # ori $a2, $a2, 0x5945 -/* 077154 80076554 3C064E44 */ lui $a2, (0x4E445950 >> 16) # lui $a2, 0x4e44 -/* 077158 80076558 10000001 */ b .L80076560 -/* 07715C 8007655C 34C65950 */ ori $a2, (0x4E445950 & 0xFFFF) # ori $a2, $a2, 0x5950 -.L80076560: -/* 077160 80076560 8FAF0048 */ lw $t7, 0x48($sp) -/* 077164 80076564 8FA90054 */ lw $t1, 0x54($sp) -/* 077168 80076568 000FC080 */ sll $t8, $t7, 2 -/* 07716C 8007656C 030FC023 */ subu $t8, $t8, $t7 -/* 077170 80076570 0018C080 */ sll $t8, $t8, 2 -/* 077174 80076574 030FC021 */ addu $t8, $t8, $t7 -/* 077178 80076578 0018C0C0 */ sll $t8, $t8, 3 -/* 07717C 8007657C 27394018 */ addiu $t9, %lo(D_80124018) # addiu $t9, $t9, 0x4018 -/* 077180 80076580 27A8002C */ addiu $t0, $sp, 0x2c -/* 077184 80076584 AFA80010 */ sw $t0, 0x10($sp) -/* 077188 80076588 03192021 */ addu $a0, $t8, $t9 -/* 07718C 8007658C 24053459 */ li $a1, 13401 -/* 077190 80076590 27A70034 */ addiu $a3, $sp, 0x34 -/* 077194 80076594 0C0343A0 */ jal func_800D0E80 -/* 077198 80076598 AFA90014 */ sw $t1, 0x14($sp) -/* 07719C 8007659C 8FBF001C */ lw $ra, 0x1c($sp) -/* 0771A0 800765A0 14400003 */ bnez $v0, .L800765B0 -/* 0771A4 800765A4 24010001 */ li $at, 1 -/* 0771A8 800765A8 10000017 */ b .L80076608 -/* 0771AC 800765AC 00001025 */ move $v0, $zero -.L800765B0: -/* 0771B0 800765B0 10410003 */ beq $v0, $at, .L800765C0 -/* 0771B4 800765B4 2401000B */ li $at, 11 -/* 0771B8 800765B8 14410004 */ bne $v0, $at, .L800765CC -/* 0771BC 800765BC 24010003 */ li $at, 3 -.L800765C0: -/* 0771C0 800765C0 10000011 */ b .L80076608 -/* 0771C4 800765C4 24020001 */ li $v0, 1 -/* 0771C8 800765C8 24010003 */ li $at, 3 -.L800765CC: -/* 0771CC 800765CC 14410004 */ bne $v0, $at, .L800765E0 -/* 0771D0 800765D0 2401000A */ li $at, 10 -/* 0771D4 800765D4 1000000C */ b .L80076608 -/* 0771D8 800765D8 24020002 */ li $v0, 2 -/* 0771DC 800765DC 2401000A */ li $at, 10 -.L800765E0: -/* 0771E0 800765E0 14410004 */ bne $v0, $at, .L800765F4 -/* 0771E4 800765E4 24010005 */ li $at, 5 -/* 0771E8 800765E8 10000007 */ b .L80076608 -/* 0771EC 800765EC 24020003 */ li $v0, 3 -/* 0771F0 800765F0 24010005 */ li $at, 5 -.L800765F4: -/* 0771F4 800765F4 14410004 */ bne $v0, $at, .L80076608 -/* 0771F8 800765F8 24020009 */ li $v0, 9 -/* 0771FC 800765FC 10000002 */ b .L80076608 -/* 077200 80076600 24020005 */ li $v0, 5 -/* 077204 80076604 24020009 */ li $v0, 9 -.L80076608: -/* 077208 80076608 03E00008 */ jr $ra -/* 07720C 8007660C 27BD0048 */ addiu $sp, $sp, 0x48 - -glabel func_80076610 -/* 077210 80076610 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 077214 80076614 00047880 */ sll $t7, $a0, 2 -/* 077218 80076618 01E47823 */ subu $t7, $t7, $a0 -/* 07721C 8007661C AFA60028 */ sw $a2, 0x28($sp) -/* 077220 80076620 AFA7002C */ sw $a3, 0x2c($sp) -/* 077224 80076624 000F7880 */ sll $t7, $t7, 2 -/* 077228 80076628 8FB9002C */ lw $t9, 0x2c($sp) -/* 07722C 8007662C 8FA80028 */ lw $t0, 0x28($sp) -/* 077230 80076630 01E47821 */ addu $t7, $t7, $a0 -/* 077234 80076634 3C188012 */ lui $t8, %hi(D_80124018) # $t8, 0x8012 -/* 077238 80076638 AFBF001C */ sw $ra, 0x1c($sp) -/* 07723C 8007663C AFA40020 */ sw $a0, 0x20($sp) -/* 077240 80076640 27184018 */ addiu $t8, %lo(D_80124018) # addiu $t8, $t8, 0x4018 -/* 077244 80076644 000F78C0 */ sll $t7, $t7, 3 -/* 077248 80076648 01F82021 */ addu $a0, $t7, $t8 -/* 07724C 8007664C 00003825 */ move $a3, $zero -/* 077250 80076650 00003025 */ move $a2, $zero -/* 077254 80076654 AFB90010 */ sw $t9, 0x10($sp) -/* 077258 80076658 0C033BF7 */ jal func_800CEFDC -/* 07725C 8007665C AFA80014 */ sw $t0, 0x14($sp) -/* 077260 80076660 8FBF001C */ lw $ra, 0x1c($sp) -/* 077264 80076664 14400003 */ bnez $v0, .L80076674 -/* 077268 80076668 24010001 */ li $at, 1 -/* 07726C 8007666C 10000017 */ b .L800766CC -/* 077270 80076670 00001025 */ move $v0, $zero -.L80076674: -/* 077274 80076674 10410003 */ beq $v0, $at, .L80076684 -/* 077278 80076678 2401000B */ li $at, 11 -/* 07727C 8007667C 14410004 */ bne $v0, $at, .L80076690 -/* 077280 80076680 24010003 */ li $at, 3 -.L80076684: -/* 077284 80076684 10000011 */ b .L800766CC -/* 077288 80076688 24020001 */ li $v0, 1 -/* 07728C 8007668C 24010003 */ li $at, 3 -.L80076690: -/* 077290 80076690 14410004 */ bne $v0, $at, .L800766A4 -/* 077294 80076694 2401000A */ li $at, 10 -/* 077298 80076698 1000000C */ b .L800766CC -/* 07729C 8007669C 24020002 */ li $v0, 2 -/* 0772A0 800766A0 2401000A */ li $at, 10 -.L800766A4: -/* 0772A4 800766A4 14410004 */ bne $v0, $at, .L800766B8 -/* 0772A8 800766A8 24010005 */ li $at, 5 -/* 0772AC 800766AC 10000007 */ b .L800766CC -/* 0772B0 800766B0 24020003 */ li $v0, 3 -/* 0772B4 800766B4 24010005 */ li $at, 5 -.L800766B8: -/* 0772B8 800766B8 14410004 */ bne $v0, $at, .L800766CC -/* 0772BC 800766BC 24020009 */ li $v0, 9 -/* 0772C0 800766C0 10000002 */ b .L800766CC -/* 0772C4 800766C4 24020005 */ li $v0, 5 -/* 0772C8 800766C8 24020009 */ li $v0, 9 -.L800766CC: -/* 0772CC 800766CC 03E00008 */ jr $ra -/* 0772D0 800766D0 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_800766D4 -/* 0772D4 800766D4 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 0772D8 800766D8 AFBF0024 */ sw $ra, 0x24($sp) -/* 0772DC 800766DC AFA40058 */ sw $a0, 0x58($sp) -/* 0772E0 800766E0 AFA5005C */ sw $a1, 0x5c($sp) -/* 0772E4 800766E4 AFA60060 */ sw $a2, 0x60($sp) -/* 0772E8 800766E8 0C01D637 */ jal func_800758DC -/* 0772EC 800766EC AFA70064 */ sw $a3, 0x64($sp) -/* 0772F0 800766F0 10400007 */ beqz $v0, .L80076710 -/* 0772F4 800766F4 27A50044 */ addiu $a1, $sp, 0x44 -/* 0772F8 800766F8 8FA40058 */ lw $a0, 0x58($sp) -/* 0772FC 800766FC 0C01D6BB */ jal func_80075AEC -/* 077300 80076700 AFA20038 */ sw $v0, 0x38($sp) -/* 077304 80076704 8FA20038 */ lw $v0, 0x38($sp) -/* 077308 80076708 10000083 */ b .L80076918 -/* 07730C 8007670C 8FBF0024 */ lw $ra, 0x24($sp) -.L80076710: -/* 077310 80076710 8FA3006C */ lw $v1, 0x6c($sp) -/* 077314 80076714 8FA40060 */ lw $a0, 0x60($sp) -/* 077318 80076718 306200FF */ andi $v0, $v1, 0xff -/* 07731C 8007671C 10400003 */ beqz $v0, .L8007672C -/* 077320 80076720 00603825 */ move $a3, $v1 -/* 077324 80076724 00623823 */ subu $a3, $v1, $v0 -/* 077328 80076728 24E70100 */ addiu $a3, $a3, 0x100 -.L8007672C: -/* 07732C 8007672C 24060010 */ li $a2, 16 -/* 077330 80076730 0C01DA8E */ jal func_80076A38 -/* 077334 80076734 AFA70030 */ sw $a3, 0x30($sp) -/* 077338 80076738 8FA40064 */ lw $a0, 0x64($sp) -/* 07733C 8007673C 27A5003C */ addiu $a1, $sp, 0x3c -/* 077340 80076740 0C01DA8E */ jal func_80076A38 -/* 077344 80076744 24060004 */ li $a2, 4 -/* 077348 80076748 0C027AC8 */ jal func_8009EB20 -/* 07734C 8007674C 00000000 */ nop -/* 077350 80076750 24010003 */ li $at, 3 -/* 077354 80076754 14410005 */ bne $v0, $at, .L8007676C -/* 077358 80076758 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 -/* 07735C 8007675C 3C0E4E44 */ lui $t6, (0x4E44594A >> 16) # lui $t6, 0x4e44 -/* 077360 80076760 35CE594A */ ori $t6, (0x4E44594A & 0xFFFF) # ori $t6, $t6, 0x594a -/* 077364 80076764 1000000A */ b .L80076790 -/* 077368 80076768 AFAE002C */ sw $t6, 0x2c($sp) -.L8007676C: -/* 07736C 8007676C 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) -/* 077370 80076770 3C194E44 */ lui $t9, (0x4E445945 >> 16) # lui $t9, 0x4e44 -/* 077374 80076774 15E00005 */ bnez $t7, .L8007678C -/* 077378 80076778 37395945 */ ori $t9, (0x4E445945 & 0xFFFF) # ori $t9, $t9, 0x5945 -/* 07737C 8007677C 3C184E44 */ lui $t8, (0x4E445950 >> 16) # lui $t8, 0x4e44 -/* 077380 80076780 37185950 */ ori $t8, (0x4E445950 & 0xFFFF) # ori $t8, $t8, 0x5950 -/* 077384 80076784 10000002 */ b .L80076790 -/* 077388 80076788 AFB8002C */ sw $t8, 0x2c($sp) -.L8007678C: -/* 07738C 8007678C AFB9002C */ sw $t9, 0x2c($sp) -.L80076790: -/* 077390 80076790 8FA40058 */ lw $a0, 0x58($sp) -/* 077394 80076794 8FA50060 */ lw $a1, 0x60($sp) -/* 077398 80076798 8FA60064 */ lw $a2, 0x64($sp) -/* 07739C 8007679C 0C01D93A */ jal func_800764E8 -/* 0773A0 800767A0 27A70034 */ addiu $a3, $sp, 0x34 -/* 0773A4 800767A4 1440000B */ bnez $v0, .L800767D4 -/* 0773A8 800767A8 00401825 */ move $v1, $v0 -/* 0773AC 800767AC 8FA2005C */ lw $v0, 0x5c($sp) -/* 0773B0 800767B0 2401FFFF */ li $at, -1 -/* 0773B4 800767B4 1041002C */ beq $v0, $at, .L80076868 -/* 0773B8 800767B8 00000000 */ nop -/* 0773BC 800767BC 8FA80034 */ lw $t0, 0x34($sp) -/* 0773C0 800767C0 00000000 */ nop -/* 0773C4 800767C4 10480028 */ beq $v0, $t0, .L80076868 -/* 0773C8 800767C8 00000000 */ nop -/* 0773CC 800767CC 10000026 */ b .L80076868 -/* 0773D0 800767D0 24030009 */ li $v1, 9 -.L800767D4: -/* 0773D4 800767D4 24010005 */ li $at, 5 -/* 0773D8 800767D8 14410023 */ bne $v0, $at, .L80076868 -/* 0773DC 800767DC 00000000 */ nop -/* 0773E0 800767E0 8FA9005C */ lw $t1, 0x5c($sp) -/* 0773E4 800767E4 2401FFFF */ li $at, -1 -/* 0773E8 800767E8 11210003 */ beq $t1, $at, .L800767F8 -/* 0773EC 800767EC 3C0C8012 */ lui $t4, %hi(D_80124018) # $t4, 0x8012 -/* 0773F0 800767F0 1000001D */ b .L80076868 -/* 0773F4 800767F4 24030009 */ li $v1, 9 -.L800767F8: -/* 0773F8 800767F8 8FAA0058 */ lw $t2, 0x58($sp) -/* 0773FC 800767FC 8FAE0030 */ lw $t6, 0x30($sp) -/* 077400 80076800 000A5880 */ sll $t3, $t2, 2 -/* 077404 80076804 016A5823 */ subu $t3, $t3, $t2 -/* 077408 80076808 000B5880 */ sll $t3, $t3, 2 -/* 07740C 8007680C 016A5821 */ addu $t3, $t3, $t2 -/* 077410 80076810 000B58C0 */ sll $t3, $t3, 3 -/* 077414 80076814 258C4018 */ addiu $t4, %lo(D_80124018) # addiu $t4, $t4, 0x4018 -/* 077418 80076818 8FA6002C */ lw $a2, 0x2c($sp) -/* 07741C 8007681C 27AD003C */ addiu $t5, $sp, 0x3c -/* 077420 80076820 27AF0034 */ addiu $t7, $sp, 0x34 -/* 077424 80076824 AFAF0018 */ sw $t7, 0x18($sp) -/* 077428 80076828 AFAD0010 */ sw $t5, 0x10($sp) -/* 07742C 8007682C 016C2021 */ addu $a0, $t3, $t4 -/* 077430 80076830 24053459 */ li $a1, 13401 -/* 077434 80076834 27A70044 */ addiu $a3, $sp, 0x44 -/* 077438 80076838 0C034410 */ jal func_800D1040 -/* 07743C 8007683C AFAE0014 */ sw $t6, 0x14($sp) -/* 077440 80076840 14400003 */ bnez $v0, .L80076850 -/* 077444 80076844 24010007 */ li $at, 7 -/* 077448 80076848 10000007 */ b .L80076868 -/* 07744C 8007684C 00001825 */ move $v1, $zero -.L80076850: -/* 077450 80076850 10410003 */ beq $v0, $at, .L80076860 -/* 077454 80076854 24010008 */ li $at, 8 -/* 077458 80076858 14410003 */ bne $v0, $at, .L80076868 -/* 07745C 8007685C 24030009 */ li $v1, 9 -.L80076860: -/* 077460 80076860 10000001 */ b .L80076868 -/* 077464 80076864 24030004 */ li $v1, 4 -.L80076868: -/* 077468 80076868 14600025 */ bnez $v1, .L80076900 -/* 07746C 8007686C 3C088012 */ lui $t0, %hi(D_80124018) # $t0, 0x8012 -/* 077470 80076870 8FB80058 */ lw $t8, 0x58($sp) -/* 077474 80076874 8FA90030 */ lw $t1, 0x30($sp) -/* 077478 80076878 0018C880 */ sll $t9, $t8, 2 -/* 07747C 8007687C 0338C823 */ subu $t9, $t9, $t8 -/* 077480 80076880 0019C880 */ sll $t9, $t9, 2 -/* 077484 80076884 8FAA0068 */ lw $t2, 0x68($sp) -/* 077488 80076888 0338C821 */ addu $t9, $t9, $t8 -/* 07748C 8007688C 0019C8C0 */ sll $t9, $t9, 3 -/* 077490 80076890 25084018 */ addiu $t0, %lo(D_80124018) # addiu $t0, $t0, 0x4018 -/* 077494 80076894 8FA50034 */ lw $a1, 0x34($sp) -/* 077498 80076898 03282021 */ addu $a0, $t9, $t0 -/* 07749C 8007689C 24060001 */ li $a2, 1 -/* 0774A0 800768A0 00003825 */ move $a3, $zero -/* 0774A4 800768A4 AFA90010 */ sw $t1, 0x10($sp) -/* 0774A8 800768A8 0C033BF7 */ jal func_800CEFDC -/* 0774AC 800768AC AFAA0014 */ sw $t2, 0x14($sp) -/* 0774B0 800768B0 14400003 */ bnez $v0, .L800768C0 -/* 0774B4 800768B4 24010001 */ li $at, 1 -/* 0774B8 800768B8 10000011 */ b .L80076900 -/* 0774BC 800768BC 00001825 */ move $v1, $zero -.L800768C0: -/* 0774C0 800768C0 10410003 */ beq $v0, $at, .L800768D0 -/* 0774C4 800768C4 2401000B */ li $at, 11 -/* 0774C8 800768C8 14410004 */ bne $v0, $at, .L800768DC -/* 0774CC 800768CC 24010003 */ li $at, 3 -.L800768D0: -/* 0774D0 800768D0 1000000B */ b .L80076900 -/* 0774D4 800768D4 24030001 */ li $v1, 1 -/* 0774D8 800768D8 24010003 */ li $at, 3 -.L800768DC: -/* 0774DC 800768DC 14410004 */ bne $v0, $at, .L800768F0 -/* 0774E0 800768E0 2401000A */ li $at, 10 -/* 0774E4 800768E4 10000006 */ b .L80076900 -/* 0774E8 800768E8 24030002 */ li $v1, 2 -/* 0774EC 800768EC 2401000A */ li $at, 10 -.L800768F0: -/* 0774F0 800768F0 14410003 */ bne $v0, $at, .L80076900 -/* 0774F4 800768F4 24030009 */ li $v1, 9 -/* 0774F8 800768F8 10000001 */ b .L80076900 -/* 0774FC 800768FC 24030003 */ li $v1, 3 -.L80076900: -/* 077500 80076900 8FA40058 */ lw $a0, 0x58($sp) -/* 077504 80076904 0C01D6BB */ jal func_80075AEC -/* 077508 80076908 AFA30038 */ sw $v1, 0x38($sp) -/* 07750C 8007690C 8FA20038 */ lw $v0, 0x38($sp) -/* 077510 80076910 00000000 */ nop -/* 077514 80076914 8FBF0024 */ lw $ra, 0x24($sp) -.L80076918: -/* 077518 80076918 27BD0058 */ addiu $sp, $sp, 0x58 -/* 07751C 8007691C 03E00008 */ jr $ra -/* 077520 80076920 00000000 */ nop - -glabel func_80076924 -/* 077524 80076924 00047880 */ sll $t7, $a0, 2 -/* 077528 80076928 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 07752C 8007692C 01E47823 */ subu $t7, $t7, $a0 -/* 077530 80076930 000F7880 */ sll $t7, $t7, 2 -/* 077534 80076934 AFBF0014 */ sw $ra, 0x14($sp) -/* 077538 80076938 AFA60040 */ sw $a2, 0x40($sp) -/* 07753C 8007693C 01E47821 */ addu $t7, $t7, $a0 -/* 077540 80076940 3C188012 */ lui $t8, %hi(D_80124018) # $t8, 0x8012 -/* 077544 80076944 ACC00000 */ sw $zero, ($a2) -/* 077548 80076948 27184018 */ addiu $t8, %lo(D_80124018) # addiu $t8, $t8, 0x4018 -/* 07754C 8007694C 000F78C0 */ sll $t7, $t7, 3 -/* 077550 80076950 01F82021 */ addu $a0, $t7, $t8 -/* 077554 80076954 0C034160 */ jal func_800D0580 -/* 077558 80076958 27A60018 */ addiu $a2, $sp, 0x18 -/* 07755C 8007695C 14400007 */ bnez $v0, .L8007697C -/* 077560 80076960 24020009 */ li $v0, 9 -/* 077564 80076964 8FB90018 */ lw $t9, 0x18($sp) -/* 077568 80076968 8FA80040 */ lw $t0, 0x40($sp) -/* 07756C 8007696C 00001025 */ move $v0, $zero -/* 077570 80076970 10000002 */ b .L8007697C -/* 077574 80076974 AD190000 */ sw $t9, ($t0) -/* 077578 80076978 24020009 */ li $v0, 9 -.L8007697C: -/* 07757C 8007697C 8FBF0014 */ lw $ra, 0x14($sp) -/* 077580 80076980 27BD0038 */ addiu $sp, $sp, 0x38 -/* 077584 80076984 03E00008 */ jr $ra -/* 077588 80076988 00000000 */ nop - -glabel func_8007698C -/* 07758C 8007698C 90820000 */ lbu $v0, ($a0) -/* 077590 80076990 00A01825 */ move $v1, $a1 -/* 077594 80076994 10400014 */ beqz $v0, .L800769E8 -/* 077598 80076998 00000000 */ nop -/* 07759C 8007699C 10C00012 */ beqz $a2, .L800769E8 -/* 0775A0 800769A0 2408002D */ li $t0, 45 -/* 0775A4 800769A4 3C07800E */ lui $a3, %hi(D_800DE444) # $a3, 0x800e -/* 0775A8 800769A8 24E7E444 */ addiu $a3, %lo(D_800DE444) # addiu $a3, $a3, -0x1bbc -/* 0775AC 800769AC 28410042 */ slti $at, $v0, 0x42 -.L800769B0: -/* 0775B0 800769B0 10200005 */ beqz $at, .L800769C8 -/* 0775B4 800769B4 00E27021 */ addu $t6, $a3, $v0 -/* 0775B8 800769B8 91CF0000 */ lbu $t7, ($t6) -/* 0775BC 800769BC 24A50001 */ addiu $a1, $a1, 1 -/* 0775C0 800769C0 10000003 */ b .L800769D0 -/* 0775C4 800769C4 A0AFFFFF */ sb $t7, -1($a1) -.L800769C8: -/* 0775C8 800769C8 A0A80000 */ sb $t0, ($a1) -/* 0775CC 800769CC 24A50001 */ addiu $a1, $a1, 1 -.L800769D0: -/* 0775D0 800769D0 90820001 */ lbu $v0, 1($a0) -/* 0775D4 800769D4 24840001 */ addiu $a0, $a0, 1 -/* 0775D8 800769D8 10400003 */ beqz $v0, .L800769E8 -/* 0775DC 800769DC 24C6FFFF */ addiu $a2, $a2, -1 -/* 0775E0 800769E0 14C0FFF3 */ bnez $a2, .L800769B0 -/* 0775E4 800769E4 28410042 */ slti $at, $v0, 0x42 -.L800769E8: -/* 0775E8 800769E8 10C00010 */ beqz $a2, .L80076A2C -/* 0775EC 800769EC 30C40003 */ andi $a0, $a2, 3 -/* 0775F0 800769F0 00042023 */ negu $a0, $a0 -/* 0775F4 800769F4 10800006 */ beqz $a0, .L80076A10 -/* 0775F8 800769F8 00861021 */ addu $v0, $a0, $a2 -.L800769FC: -/* 0775FC 800769FC 24C6FFFF */ addiu $a2, $a2, -1 -/* 077600 80076A00 A0A00000 */ sb $zero, ($a1) -/* 077604 80076A04 1446FFFD */ bne $v0, $a2, .L800769FC -/* 077608 80076A08 24A50001 */ addiu $a1, $a1, 1 -/* 07760C 80076A0C 10C00007 */ beqz $a2, .L80076A2C -.L80076A10: -/* 077610 80076A10 24C6FFFC */ addiu $a2, $a2, -4 -/* 077614 80076A14 A0A00000 */ sb $zero, ($a1) -/* 077618 80076A18 A0A00001 */ sb $zero, 1($a1) -/* 07761C 80076A1C A0A00002 */ sb $zero, 2($a1) -/* 077620 80076A20 A0A00003 */ sb $zero, 3($a1) -/* 077624 80076A24 14C0FFFA */ bnez $a2, .L80076A10 -/* 077628 80076A28 24A50004 */ addiu $a1, $a1, 4 -.L80076A2C: -/* 07762C 80076A2C A0A00000 */ sb $zero, ($a1) -/* 077630 80076A30 03E00008 */ jr $ra -/* 077634 80076A34 00601025 */ move $v0, $v1 - -glabel func_80076A38 -/* 077638 80076A38 908E0000 */ lbu $t6, ($a0) -/* 07763C 80076A3C 00A01825 */ move $v1, $a1 -/* 077640 80076A40 11C00018 */ beqz $t6, .L80076AA4 -/* 077644 80076A44 00000000 */ nop -/* 077648 80076A48 10C00016 */ beqz $a2, .L80076AA4 -/* 07764C 80076A4C 24090041 */ li $t1, 65 -.L80076A50: -/* 077650 80076A50 A0A00000 */ sb $zero, ($a1) -/* 077654 80076A54 3C08800E */ lui $t0, %hi(D_800DE444) # $t0, 0x800e -/* 077658 80076A58 90870000 */ lbu $a3, ($a0) -/* 07765C 80076A5C 2508E444 */ addiu $t0, %lo(D_800DE444) # addiu $t0, $t0, -0x1bbc -/* 077660 80076A60 00001025 */ move $v0, $zero -.L80076A64: -/* 077664 80076A64 910F0000 */ lbu $t7, ($t0) -/* 077668 80076A68 00000000 */ nop -/* 07766C 80076A6C 14EF0004 */ bne $a3, $t7, .L80076A80 -/* 077670 80076A70 00000000 */ nop -/* 077674 80076A74 A0A20000 */ sb $v0, ($a1) -/* 077678 80076A78 10000004 */ b .L80076A8C -/* 07767C 80076A7C 24A50001 */ addiu $a1, $a1, 1 -.L80076A80: -/* 077680 80076A80 24420001 */ addiu $v0, $v0, 1 -/* 077684 80076A84 1449FFF7 */ bne $v0, $t1, .L80076A64 -/* 077688 80076A88 25080001 */ addiu $t0, $t0, 1 -.L80076A8C: -/* 07768C 80076A8C 90980001 */ lbu $t8, 1($a0) -/* 077690 80076A90 24840001 */ addiu $a0, $a0, 1 -/* 077694 80076A94 13000003 */ beqz $t8, .L80076AA4 -/* 077698 80076A98 24C6FFFF */ addiu $a2, $a2, -1 -/* 07769C 80076A9C 14C0FFEC */ bnez $a2, .L80076A50 -/* 0776A0 80076AA0 00000000 */ nop -.L80076AA4: -/* 0776A4 80076AA4 10C00010 */ beqz $a2, .L80076AE8 -/* 0776A8 80076AA8 30C40003 */ andi $a0, $a2, 3 -/* 0776AC 80076AAC 00042023 */ negu $a0, $a0 -/* 0776B0 80076AB0 10800006 */ beqz $a0, .L80076ACC -/* 0776B4 80076AB4 00861021 */ addu $v0, $a0, $a2 -.L80076AB8: -/* 0776B8 80076AB8 24C6FFFF */ addiu $a2, $a2, -1 -/* 0776BC 80076ABC A0A00000 */ sb $zero, ($a1) -/* 0776C0 80076AC0 1446FFFD */ bne $v0, $a2, .L80076AB8 -/* 0776C4 80076AC4 24A50001 */ addiu $a1, $a1, 1 -/* 0776C8 80076AC8 10C00007 */ beqz $a2, .L80076AE8 -.L80076ACC: -/* 0776CC 80076ACC 24C6FFFC */ addiu $a2, $a2, -4 -/* 0776D0 80076AD0 A0A00000 */ sb $zero, ($a1) -/* 0776D4 80076AD4 A0A00001 */ sb $zero, 1($a1) -/* 0776D8 80076AD8 A0A00002 */ sb $zero, 2($a1) -/* 0776DC 80076ADC A0A00003 */ sb $zero, 3($a1) -/* 0776E0 80076AE0 14C0FFFA */ bnez $a2, .L80076ACC -/* 0776E4 80076AE4 24A50004 */ addiu $a1, $a1, 4 -.L80076AE8: -/* 0776E8 80076AE8 A0A00000 */ sb $zero, ($a1) -/* 0776EC 80076AEC 03E00008 */ jr $ra -/* 0776F0 80076AF0 00601025 */ move $v0, $v1 - -glabel func_80076AF4 -/* 0776F4 80076AF4 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0776F8 80076AF8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0776FC 80076AFC AFA40028 */ sw $a0, 0x28($sp) -/* 077700 80076B00 AFA5002C */ sw $a1, 0x2c($sp) -/* 077704 80076B04 24030006 */ li $v1, 6 -/* 077708 80076B08 AFA3001C */ sw $v1, 0x1c($sp) -/* 07770C 80076B0C 240500FF */ li $a1, 255 -/* 077710 80076B10 0C01C327 */ jal func_80070C9C -/* 077714 80076B14 24040100 */ li $a0, 256 -/* 077718 80076B18 8FA40028 */ lw $a0, 0x28($sp) -/* 07771C 80076B1C 8FA5002C */ lw $a1, 0x2c($sp) -/* 077720 80076B20 AFA20024 */ sw $v0, 0x24($sp) -/* 077724 80076B24 00403025 */ move $a2, $v0 -/* 077728 80076B28 0C01D984 */ jal func_80076610 -/* 07772C 80076B2C 24070100 */ li $a3, 256 -/* 077730 80076B30 8FA3001C */ lw $v1, 0x1c($sp) -/* 077734 80076B34 8FA40024 */ lw $a0, 0x24($sp) -/* 077738 80076B38 14400012 */ bnez $v0, .L80076B84 -/* 07773C 80076B3C 3C014741 */ lui $at, (0x47414D44 >> 16) # lui $at, 0x4741 -/* 077740 80076B40 8C820000 */ lw $v0, ($a0) -/* 077744 80076B44 34214D44 */ ori $at, (0x47414D44 & 0xFFFF) # ori $at, $at, 0x4d44 -/* 077748 80076B48 10410009 */ beq $v0, $at, .L80076B70 -/* 07774C 80076B4C 3C014748 */ lui $at, (0x47485353 >> 16) # lui $at, 0x4748 -/* 077750 80076B50 34215353 */ ori $at, (0x47485353 & 0xFFFF) # ori $at, $at, 0x5353 -/* 077754 80076B54 1041000A */ beq $v0, $at, .L80076B80 -/* 077758 80076B58 3C015449 */ lui $at, (0x54494D44 >> 16) # lui $at, 0x5449 -/* 07775C 80076B5C 34214D44 */ ori $at, (0x54494D44 & 0xFFFF) # ori $at, $at, 0x4d44 -/* 077760 80076B60 10410005 */ beq $v0, $at, .L80076B78 -/* 077764 80076B64 00000000 */ nop -/* 077768 80076B68 10000006 */ b .L80076B84 -/* 07776C 80076B6C 00000000 */ nop -.L80076B70: -/* 077770 80076B70 10000004 */ b .L80076B84 -/* 077774 80076B74 24030003 */ li $v1, 3 -.L80076B78: -/* 077778 80076B78 10000002 */ b .L80076B84 -/* 07777C 80076B7C 24030004 */ li $v1, 4 -.L80076B80: -/* 077780 80076B80 24030005 */ li $v1, 5 -.L80076B84: -/* 077784 80076B84 0C01C450 */ jal func_80071140 -/* 077788 80076B88 AFA3001C */ sw $v1, 0x1c($sp) -/* 07778C 80076B8C 8FBF0014 */ lw $ra, 0x14($sp) -/* 077790 80076B90 8FA2001C */ lw $v0, 0x1c($sp) -/* 077794 80076B94 03E00008 */ jr $ra -/* 077798 80076B98 27BD0028 */ addiu $sp, $sp, 0x28 - -/* 07779C 80076B9C 00000000 */ nop -glabel func_80076BA0 -/* 0777A0 80076BA0 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0777A4 80076BA4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0777A8 80076BA8 3C048012 */ lui $a0, %hi(D_80124278) # $a0, 0x8012 -/* 0777AC 80076BAC 3C058012 */ lui $a1, %hi(D_80124238) # $a1, 0x8012 -/* 0777B0 80076BB0 24A54238 */ addiu $a1, %lo(D_80124238) # addiu $a1, $a1, 0x4238 -/* 0777B4 80076BB4 24844278 */ addiu $a0, %lo(D_80124278) # addiu $a0, $a0, 0x4278 -/* 0777B8 80076BB8 0C032208 */ jal osCreateMesgQueue -/* 0777BC 80076BBC 24060010 */ li $a2, 16 -/* 0777C0 80076BC0 3C048012 */ lui $a0, %hi(D_80124220) # $a0, 0x8012 -/* 0777C4 80076BC4 3C058012 */ lui $a1, %hi(D_80124218) # $a1, 0x8012 -/* 0777C8 80076BC8 24A54218 */ addiu $a1, %lo(D_80124218) # addiu $a1, $a1, 0x4218 -/* 0777CC 80076BCC 24844220 */ addiu $a0, %lo(D_80124220) # addiu $a0, $a0, 0x4220 -/* 0777D0 80076BD0 0C032208 */ jal osCreateMesgQueue -/* 0777D4 80076BD4 24060001 */ li $a2, 1 -/* 0777D8 80076BD8 3C058012 */ lui $a1, %hi(D_80124278) # $a1, 0x8012 -/* 0777DC 80076BDC 3C068012 */ lui $a2, %hi(D_80124238) # $a2, 0x8012 -/* 0777E0 80076BE0 24C64238 */ addiu $a2, %lo(D_80124238) # addiu $a2, $a2, 0x4238 -/* 0777E4 80076BE4 24A54278 */ addiu $a1, %lo(D_80124278) # addiu $a1, $a1, 0x4278 -/* 0777E8 80076BE8 24040096 */ li $a0, 150 -/* 0777EC 80076BEC 0C031800 */ jal func_800C6000 -/* 0777F0 80076BF0 24070010 */ li $a3, 16 -/* 0777F4 80076BF4 3C0E000F */ lui $t6, %hi(D_000ECC30) # $t6, 0xf -/* 0777F8 80076BF8 3C0F000F */ lui $t7, %hi(D_000ECB60) # $t7, 0xf -/* 0777FC 80076BFC 25EFCB60 */ addiu $t7, %lo(D_000ECB60) # addiu $t7, $t7, -0x34a0 -/* 077800 80076C00 25CECC30 */ addiu $t6, %lo(D_000ECC30) # addiu $t6, $t6, -0x33d0 -/* 077804 80076C04 01CF1023 */ subu $v0, $t6, $t7 -/* 077808 80076C08 3C057F7F */ lui $a1, (0x7F7F7FFF >> 16) # lui $a1, 0x7f7f -/* 07780C 80076C0C 34A57FFF */ ori $a1, (0x7F7F7FFF & 0xFFFF) # ori $a1, $a1, 0x7fff -/* 077810 80076C10 00402025 */ move $a0, $v0 -/* 077814 80076C14 0C01C327 */ jal func_80070C9C -/* 077818 80076C18 AFA20018 */ sw $v0, 0x18($sp) -/* 07781C 80076C1C 3C038012 */ lui $v1, %hi(D_80124290) # $v1, 0x8012 -/* 077820 80076C20 24634290 */ addiu $v1, %lo(D_80124290) # addiu $v1, $v1, 0x4290 -/* 077824 80076C24 AC620000 */ sw $v0, ($v1) -/* 077828 80076C28 0C01C51E */ jal func_80071478 -/* 07782C 80076C2C 00402025 */ move $a0, $v0 -/* 077830 80076C30 3C058012 */ lui $a1, %hi(D_80124290) # $a1, 0x8012 -/* 077834 80076C34 8CA54290 */ lw $a1, %lo(D_80124290)($a1) -/* 077838 80076C38 3C04000F */ lui $a0, %hi(D_000ECB60) # $a0, 0xf -/* 07783C 80076C3C 8FA60018 */ lw $a2, 0x18($sp) -/* 077840 80076C40 0C01DBDE */ jal func_80076F78 -/* 077844 80076C44 2484CB60 */ addiu $a0, %lo(D_000ECB60) # addiu $a0, $a0, -0x34a0 -/* 077848 80076C48 8FBF0014 */ lw $ra, 0x14($sp) -/* 07784C 80076C4C 27BD0020 */ addiu $sp, $sp, 0x20 -/* 077850 80076C50 03E00008 */ jr $ra -/* 077854 80076C54 00000000 */ nop - -glabel func_80076C58 -/* 077858 80076C58 3C038012 */ lui $v1, %hi(D_80124290) # $v1, 0x8012 -/* 07785C 80076C5C 8C634290 */ lw $v1, %lo(D_80124290)($v1) -/* 077860 80076C60 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 077864 80076C64 AFBF0014 */ sw $ra, 0x14($sp) -/* 077868 80076C68 8C6E0000 */ lw $t6, ($v1) -/* 07786C 80076C6C 00803025 */ move $a2, $a0 -/* 077870 80076C70 01C4082B */ sltu $at, $t6, $a0 -/* 077874 80076C74 10200003 */ beqz $at, .L80076C84 -/* 077878 80076C78 24C60001 */ addiu $a2, $a2, 1 -/* 07787C 80076C7C 10000018 */ b .L80076CE0 -/* 077880 80076C80 00001025 */ move $v0, $zero -.L80076C84: -/* 077884 80076C84 00067880 */ sll $t7, $a2, 2 -/* 077888 80076C88 01E31021 */ addu $v0, $t7, $v1 -/* 07788C 80076C8C 8C470000 */ lw $a3, ($v0) -/* 077890 80076C90 8C580004 */ lw $t8, 4($v0) -/* 077894 80076C94 3C057F7F */ lui $a1, (0x7F7F7FFF >> 16) # lui $a1, 0x7f7f -/* 077898 80076C98 03072023 */ subu $a0, $t8, $a3 -/* 07789C 80076C9C AFA4001C */ sw $a0, 0x1c($sp) -/* 0778A0 80076CA0 34A57FFF */ ori $a1, (0x7F7F7FFF & 0xFFFF) # ori $a1, $a1, 0x7fff -/* 0778A4 80076CA4 0C01C327 */ jal func_80070C9C -/* 0778A8 80076CA8 AFA70018 */ sw $a3, 0x18($sp) -/* 0778AC 80076CAC 8FA70018 */ lw $a3, 0x18($sp) -/* 0778B0 80076CB0 14400003 */ bnez $v0, .L80076CC0 -/* 0778B4 80076CB4 00402825 */ move $a1, $v0 -/* 0778B8 80076CB8 10000009 */ b .L80076CE0 -/* 0778BC 80076CBC 00001025 */ move $v0, $zero -.L80076CC0: -/* 0778C0 80076CC0 3C19000F */ lui $t9, %hi(D_000ECC30) # $t9, 0xf -/* 0778C4 80076CC4 2739CC30 */ addiu $t9, %lo(D_000ECC30) # addiu $t9, $t9, -0x33d0 -/* 0778C8 80076CC8 8FA6001C */ lw $a2, 0x1c($sp) -/* 0778CC 80076CCC 00F92021 */ addu $a0, $a3, $t9 -/* 0778D0 80076CD0 0C01DBDE */ jal func_80076F78 -/* 0778D4 80076CD4 AFA50020 */ sw $a1, 0x20($sp) -/* 0778D8 80076CD8 8FA20020 */ lw $v0, 0x20($sp) -/* 0778DC 80076CDC 00000000 */ nop -.L80076CE0: -/* 0778E0 80076CE0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0778E4 80076CE4 27BD0028 */ addiu $sp, $sp, 0x28 -/* 0778E8 80076CE8 03E00008 */ jr $ra -/* 0778EC 80076CEC 00000000 */ nop - -/* 0778F0 80076CF0 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0778F4 80076CF4 3C028012 */ lui $v0, %hi(D_80124290) # $v0, 0x8012 -/* 0778F8 80076CF8 8C424290 */ lw $v0, %lo(D_80124290)($v0) -/* 0778FC 80076CFC AFBF0014 */ sw $ra, 0x14($sp) -/* 077900 80076D00 AFA5003C */ sw $a1, 0x3c($sp) -/* 077904 80076D04 8C4E0000 */ lw $t6, ($v0) -/* 077908 80076D08 00803025 */ move $a2, $a0 -/* 07790C 80076D0C 01C4082B */ sltu $at, $t6, $a0 -/* 077910 80076D10 10200003 */ beqz $at, .L80076D20 -/* 077914 80076D14 24C60001 */ addiu $a2, $a2, 1 -/* 077918 80076D18 10000034 */ b .L80076DEC -/* 07791C 80076D1C 00001025 */ move $v0, $zero -.L80076D20: -/* 077920 80076D20 00067880 */ sll $t7, $a2, 2 -/* 077924 80076D24 01E23821 */ addu $a3, $t7, $v0 -/* 077928 80076D28 8CE30000 */ lw $v1, ($a3) -/* 07792C 80076D2C 8CF80004 */ lw $t8, 4($a3) -/* 077930 80076D30 24040008 */ li $a0, 8 -/* 077934 80076D34 0303C823 */ subu $t9, $t8, $v1 -/* 077938 80076D38 AFB90034 */ sw $t9, 0x34($sp) -/* 07793C 80076D3C 2405FFFF */ li $a1, -1 -/* 077940 80076D40 0C01C327 */ jal func_80070C9C -/* 077944 80076D44 AFA30030 */ sw $v1, 0x30($sp) -/* 077948 80076D48 8FA30030 */ lw $v1, 0x30($sp) -/* 07794C 80076D4C 3C08000F */ lui $t0, %hi(D_000ECC30) # $t0, 0xf -/* 077950 80076D50 2508CC30 */ addiu $t0, %lo(D_000ECC30) # addiu $t0, $t0, -0x33d0 -/* 077954 80076D54 00682021 */ addu $a0, $v1, $t0 -/* 077958 80076D58 AFA20028 */ sw $v0, 0x28($sp) -/* 07795C 80076D5C AFA40020 */ sw $a0, 0x20($sp) -/* 077960 80076D60 00402825 */ move $a1, $v0 -/* 077964 80076D64 0C01DBDE */ jal func_80076F78 -/* 077968 80076D68 24060008 */ li $a2, 8 -/* 07796C 80076D6C 8FA40028 */ lw $a0, 0x28($sp) -/* 077970 80076D70 0C03186B */ jal func_800C61AC -/* 077974 80076D74 00000000 */ nop -/* 077978 80076D78 8FA9003C */ lw $t1, 0x3c($sp) -/* 07797C 80076D7C 8FA40028 */ lw $a0, 0x28($sp) -/* 077980 80076D80 00495021 */ addu $t2, $v0, $t1 -/* 077984 80076D84 0C01C450 */ jal func_80071140 -/* 077988 80076D88 AFAA002C */ sw $t2, 0x2c($sp) -/* 07798C 80076D8C 8FAB002C */ lw $t3, 0x2c($sp) -/* 077990 80076D90 8FAC003C */ lw $t4, 0x3c($sp) -/* 077994 80076D94 3C057F7F */ lui $a1, (0x7F7F7FFF >> 16) # lui $a1, 0x7f7f -/* 077998 80076D98 34A57FFF */ ori $a1, (0x7F7F7FFF & 0xFFFF) # ori $a1, $a1, 0x7fff -/* 07799C 80076D9C 0C01C327 */ jal func_80070C9C -/* 0779A0 80076DA0 016C2021 */ addu $a0, $t3, $t4 -/* 0779A4 80076DA4 14400003 */ bnez $v0, .L80076DB4 -/* 0779A8 80076DA8 00403825 */ move $a3, $v0 -/* 0779AC 80076DAC 1000000F */ b .L80076DEC -/* 0779B0 80076DB0 00001025 */ move $v0, $zero -.L80076DB4: -/* 0779B4 80076DB4 8FAD002C */ lw $t5, 0x2c($sp) -/* 0779B8 80076DB8 8FA60034 */ lw $a2, 0x34($sp) -/* 0779BC 80076DBC 00ED7021 */ addu $t6, $a3, $t5 -/* 0779C0 80076DC0 8FA40020 */ lw $a0, 0x20($sp) -/* 0779C4 80076DC4 01C62823 */ subu $a1, $t6, $a2 -/* 0779C8 80076DC8 AFA5001C */ sw $a1, 0x1c($sp) -/* 0779CC 80076DCC 0C01DBDE */ jal func_80076F78 -/* 0779D0 80076DD0 AFA70024 */ sw $a3, 0x24($sp) -/* 0779D4 80076DD4 8FA50024 */ lw $a1, 0x24($sp) -/* 0779D8 80076DD8 8FA4001C */ lw $a0, 0x1c($sp) -/* 0779DC 80076DDC 0C031886 */ jal func_800C6218 -/* 0779E0 80076DE0 00000000 */ nop -/* 0779E4 80076DE4 8FA20024 */ lw $v0, 0x24($sp) -/* 0779E8 80076DE8 00000000 */ nop -.L80076DEC: -/* 0779EC 80076DEC 8FBF0014 */ lw $ra, 0x14($sp) -/* 0779F0 80076DF0 27BD0038 */ addiu $sp, $sp, 0x38 -/* 0779F4 80076DF4 03E00008 */ jr $ra -/* 0779F8 80076DF8 00000000 */ nop - -/* 0779FC 80076DFC 3C088012 */ lui $t0, %hi(D_80124290) # $t0, 0x8012 -/* 077A00 80076E00 8D084290 */ lw $t0, %lo(D_80124290)($t0) -/* 077A04 80076E04 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 077A08 80076E08 AFBF0014 */ sw $ra, 0x14($sp) -/* 077A0C 80076E0C 8D0E0000 */ lw $t6, ($t0) -/* 077A10 80076E10 00803825 */ move $a3, $a0 -/* 077A14 80076E14 01C4082B */ sltu $at, $t6, $a0 -/* 077A18 80076E18 10200003 */ beqz $at, .L80076E28 -/* 077A1C 80076E1C 24E70001 */ addiu $a3, $a3, 1 -/* 077A20 80076E20 1000000D */ b .L80076E58 -/* 077A24 80076E24 00001025 */ move $v0, $zero -.L80076E28: -/* 077A28 80076E28 00077880 */ sll $t7, $a3, 2 -/* 077A2C 80076E2C 01E81021 */ addu $v0, $t7, $t0 -/* 077A30 80076E30 8C430000 */ lw $v1, ($v0) -/* 077A34 80076E34 8C580004 */ lw $t8, 4($v0) -/* 077A38 80076E38 3C19000F */ lui $t9, %hi(D_000ECC30) # $t9, 0xf -/* 077A3C 80076E3C 2739CC30 */ addiu $t9, %lo(D_000ECC30) # addiu $t9, $t9, -0x33d0 -/* 077A40 80076E40 03033023 */ subu $a2, $t8, $v1 -/* 077A44 80076E44 AFA60018 */ sw $a2, 0x18($sp) -/* 077A48 80076E48 0C01DBDE */ jal func_80076F78 -/* 077A4C 80076E4C 00792021 */ addu $a0, $v1, $t9 -/* 077A50 80076E50 8FA20018 */ lw $v0, 0x18($sp) -/* 077A54 80076E54 00000000 */ nop -.L80076E58: -/* 077A58 80076E58 8FBF0014 */ lw $ra, 0x14($sp) -/* 077A5C 80076E5C 27BD0020 */ addiu $sp, $sp, 0x20 -/* 077A60 80076E60 03E00008 */ jr $ra -/* 077A64 80076E64 00000000 */ nop - -glabel func_80076E68 -/* 077A68 80076E68 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 077A6C 80076E6C AFBF0014 */ sw $ra, 0x14($sp) -/* 077A70 80076E70 AFA40018 */ sw $a0, 0x18($sp) -/* 077A74 80076E74 10E00009 */ beqz $a3, .L80076E9C -/* 077A78 80076E78 AFA60020 */ sw $a2, 0x20($sp) -/* 077A7C 80076E7C 3C088012 */ lui $t0, %hi(D_80124290) # $t0, 0x8012 -/* 077A80 80076E80 8D084290 */ lw $t0, %lo(D_80124290)($t0) -/* 077A84 80076E84 8FB80018 */ lw $t8, 0x18($sp) -/* 077A88 80076E88 8D0E0000 */ lw $t6, ($t0) -/* 077A8C 80076E8C 27190001 */ addiu $t9, $t8, 1 -/* 077A90 80076E90 01C4082B */ sltu $at, $t6, $a0 -/* 077A94 80076E94 10200003 */ beqz $at, .L80076EA4 -/* 077A98 80076E98 00194880 */ sll $t1, $t9, 2 -.L80076E9C: -/* 077A9C 80076E9C 1000000E */ b .L80076ED8 -/* 077AA0 80076EA0 00001025 */ move $v0, $zero -.L80076EA4: -/* 077AA4 80076EA4 AFB90018 */ sw $t9, 0x18($sp) -/* 077AA8 80076EA8 01281021 */ addu $v0, $t1, $t0 -/* 077AAC 80076EAC 8C4A0000 */ lw $t2, ($v0) -/* 077AB0 80076EB0 8FAB0020 */ lw $t3, 0x20($sp) -/* 077AB4 80076EB4 3C0C000F */ lui $t4, %hi(D_000ECC30) # $t4, 0xf -/* 077AB8 80076EB8 258CCC30 */ addiu $t4, %lo(D_000ECC30) # addiu $t4, $t4, -0x33d0 -/* 077ABC 80076EBC 014B1821 */ addu $v1, $t2, $t3 -/* 077AC0 80076EC0 006C2021 */ addu $a0, $v1, $t4 -/* 077AC4 80076EC4 AFA70024 */ sw $a3, 0x24($sp) -/* 077AC8 80076EC8 0C01DBDE */ jal func_80076F78 -/* 077ACC 80076ECC 00E03025 */ move $a2, $a3 -/* 077AD0 80076ED0 8FA20024 */ lw $v0, 0x24($sp) -/* 077AD4 80076ED4 00000000 */ nop -.L80076ED8: -/* 077AD8 80076ED8 8FBF0014 */ lw $ra, 0x14($sp) -/* 077ADC 80076EDC 27BD0018 */ addiu $sp, $sp, 0x18 -/* 077AE0 80076EE0 03E00008 */ jr $ra -/* 077AE4 80076EE4 00000000 */ nop - -glabel func_80076EE8 -/* 077AE8 80076EE8 3C038012 */ lui $v1, %hi(D_80124290) # $v1, 0x8012 -/* 077AEC 80076EEC 8C634290 */ lw $v1, %lo(D_80124290)($v1) -/* 077AF0 80076EF0 00A03825 */ move $a3, $a1 -/* 077AF4 80076EF4 8C6E0000 */ lw $t6, ($v1) -/* 077AF8 80076EF8 3C19000F */ lui $t9, 0xf -/* 077AFC 80076EFC 01C4082B */ sltu $at, $t6, $a0 -/* 077B00 80076F00 10200003 */ beqz $at, .L80076F10 -/* 077B04 80076F04 24840001 */ addiu $a0, $a0, 1 -/* 077B08 80076F08 03E00008 */ jr $ra -/* 077B0C 80076F0C 00001025 */ move $v0, $zero - -.L80076F10: -/* 077B10 80076F10 00047880 */ sll $t7, $a0, 2 -/* 077B14 80076F14 01E32821 */ addu $a1, $t7, $v1 -/* 077B18 80076F18 8CB80000 */ lw $t8, ($a1) -/* 077B1C 80076F1C 2739CC30 */ addiu $t9, $t9, -0x33d0 -/* 077B20 80076F20 03073021 */ addu $a2, $t8, $a3 -/* 077B24 80076F24 00D91021 */ addu $v0, $a2, $t9 -/* 077B28 80076F28 03E00008 */ jr $ra -/* 077B2C 80076F2C 00000000 */ nop - -glabel func_80076F30 -/* 077B30 80076F30 3C038012 */ lui $v1, %hi(D_80124290) # $v1, 0x8012 -/* 077B34 80076F34 8C634290 */ lw $v1, %lo(D_80124290)($v1) -/* 077B38 80076F38 00000000 */ nop -/* 077B3C 80076F3C 8C6E0000 */ lw $t6, ($v1) -/* 077B40 80076F40 00000000 */ nop -/* 077B44 80076F44 01C4082B */ sltu $at, $t6, $a0 -/* 077B48 80076F48 10200003 */ beqz $at, .L80076F58 -/* 077B4C 80076F4C 24840001 */ addiu $a0, $a0, 1 -/* 077B50 80076F50 03E00008 */ jr $ra -/* 077B54 80076F54 00001025 */ move $v0, $zero - -.L80076F58: -/* 077B58 80076F58 00047880 */ sll $t7, $a0, 2 -/* 077B5C 80076F5C 01E32821 */ addu $a1, $t7, $v1 -/* 077B60 80076F60 8CB80004 */ lw $t8, 4($a1) -/* 077B64 80076F64 8CB90000 */ lw $t9, ($a1) -/* 077B68 80076F68 00000000 */ nop -/* 077B6C 80076F6C 03191023 */ subu $v0, $t8, $t9 -/* 077B70 80076F70 03E00008 */ jr $ra -/* 077B74 80076F74 00000000 */ nop - -glabel func_80076F78 -/* 077B78 80076F78 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 077B7C 80076F7C AFB30034 */ sw $s3, 0x34($sp) -/* 077B80 80076F80 00809825 */ move $s3, $a0 -/* 077B84 80076F84 AFB20030 */ sw $s2, 0x30($sp) -/* 077B88 80076F88 00A09025 */ move $s2, $a1 -/* 077B8C 80076F8C AFBF0044 */ sw $ra, 0x44($sp) -/* 077B90 80076F90 AFB1002C */ sw $s1, 0x2c($sp) -/* 077B94 80076F94 00A02025 */ move $a0, $a1 -/* 077B98 80076F98 00C08825 */ move $s1, $a2 -/* 077B9C 80076F9C AFB60040 */ sw $s6, 0x40($sp) -/* 077BA0 80076FA0 AFB5003C */ sw $s5, 0x3c($sp) -/* 077BA4 80076FA4 AFB40038 */ sw $s4, 0x38($sp) -/* 077BA8 80076FA8 AFB00028 */ sw $s0, 0x28($sp) -/* 077BAC 80076FAC 0C0345FC */ jal func_800D17F0 -/* 077BB0 80076FB0 00C02825 */ move $a1, $a2 -/* 077BB4 80076FB4 1A200019 */ blez $s1, .L8007701C -/* 077BB8 80076FB8 24105000 */ li $s0, 20480 -/* 077BBC 80076FBC 3C158012 */ lui $s5, %hi(D_80124200) # $s5, 0x8012 -/* 077BC0 80076FC0 3C148012 */ lui $s4, %hi(D_80124220) # $s4, 0x8012 -/* 077BC4 80076FC4 26944220 */ addiu $s4, %lo(D_80124220) # addiu $s4, $s4, 0x4220 -/* 077BC8 80076FC8 26B54200 */ addiu $s5, %lo(D_80124200) # addiu $s5, $s5, 0x4200 -/* 077BCC 80076FCC 27B6004C */ addiu $s6, $sp, 0x4c -.L80076FD0: -/* 077BD0 80076FD0 0230082A */ slt $at, $s1, $s0 -/* 077BD4 80076FD4 10200002 */ beqz $at, .L80076FE0 -/* 077BD8 80076FD8 02A02025 */ move $a0, $s5 -/* 077BDC 80076FDC 02208025 */ move $s0, $s1 -.L80076FE0: -/* 077BE0 80076FE0 00002825 */ move $a1, $zero -/* 077BE4 80076FE4 00003025 */ move $a2, $zero -/* 077BE8 80076FE8 02603825 */ move $a3, $s3 -/* 077BEC 80076FEC AFB20010 */ sw $s2, 0x10($sp) -/* 077BF0 80076FF0 AFB00014 */ sw $s0, 0x14($sp) -/* 077BF4 80076FF4 0C0323E0 */ jal func_800C8F80 -/* 077BF8 80076FF8 AFB40018 */ sw $s4, 0x18($sp) -/* 077BFC 80076FFC 02802025 */ move $a0, $s4 -/* 077C00 80077000 02C02825 */ move $a1, $s6 -/* 077C04 80077004 0C0322EC */ jal osRecvMesg -/* 077C08 80077008 24060001 */ li $a2, 1 -/* 077C0C 8007700C 02308823 */ subu $s1, $s1, $s0 -/* 077C10 80077010 02709821 */ addu $s3, $s3, $s0 -/* 077C14 80077014 1E20FFEE */ bgtz $s1, .L80076FD0 -/* 077C18 80077018 02509021 */ addu $s2, $s2, $s0 -.L8007701C: -/* 077C1C 8007701C 8FBF0044 */ lw $ra, 0x44($sp) -/* 077C20 80077020 8FB00028 */ lw $s0, 0x28($sp) -/* 077C24 80077024 8FB1002C */ lw $s1, 0x2c($sp) -/* 077C28 80077028 8FB20030 */ lw $s2, 0x30($sp) -/* 077C2C 8007702C 8FB30034 */ lw $s3, 0x34($sp) -/* 077C30 80077030 8FB40038 */ lw $s4, 0x38($sp) -/* 077C34 80077034 8FB5003C */ lw $s5, 0x3c($sp) -/* 077C38 80077038 8FB60040 */ lw $s6, 0x40($sp) -/* 077C3C 8007703C 03E00008 */ jr $ra -/* 077C40 80077040 27BD0050 */ addiu $sp, $sp, 0x50 - -/* 077C44 80077044 00000000 */ nop -/* 077C48 80077048 00000000 */ nop -/* 077C4C 8007704C 00000000 */ nop diff --git a/asm/unknown_078050.s b/asm/unknown_078050.s deleted file mode 100755 index 7f9bcf8c..00000000 --- a/asm/unknown_078050.s +++ /dev/null @@ -1,2107 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel setupOSTasks -/* 078050 80077450 3C03800E */ lui $v1, %hi(D_800DE4D4) # $v1, 0x800e -/* 078054 80077454 240E0001 */ li $t6, 1 -/* 078058 80077458 3C01800E */ lui $at, %hi(D_800DE4DC) # $at, 0x800e -/* 07805C 8007745C 2463E4D4 */ addiu $v1, %lo(D_800DE4D4) # addiu $v1, $v1, -0x1b2c -/* 078060 80077460 AC2EE4DC */ sw $t6, %lo(D_800DE4DC)($at) -/* 078064 80077464 8C620000 */ lw $v0, ($v1) -/* 078068 80077468 3C188012 */ lui $t8, %hi(D_80125F40) # $t8, 0x8012 -/* 07806C 8007746C 000278C0 */ sll $t7, $v0, 3 -/* 078070 80077470 01E27823 */ subu $t7, $t7, $v0 -/* 078074 80077474 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 078078 80077478 000F7900 */ sll $t7, $t7, 4 -/* 07807C 8007747C 27185F40 */ addiu $t8, %lo(D_80125F40) # addiu $t8, $t8, 0x5f40 -/* 078080 80077480 24010002 */ li $at, 2 -/* 078084 80077484 24590001 */ addiu $t9, $v0, 1 -/* 078088 80077488 AFBF0014 */ sw $ra, 0x14($sp) -/* 07808C 8007748C AFA60028 */ sw $a2, 0x28($sp) -/* 078090 80077490 01F83821 */ addu $a3, $t7, $t8 -/* 078094 80077494 17210002 */ bne $t9, $at, .L800774A0 -/* 078098 80077498 AC790000 */ sw $t9, ($v1) -/* 07809C 8007749C AC600000 */ sw $zero, ($v1) -.L800774A0: -/* 0780A0 800774A0 00A45823 */ subu $t3, $a1, $a0 -/* 0780A4 800774A4 3C03800E */ lui $v1, %hi(D_800D84C0) # $v1, 0x800e -/* 0780A8 800774A8 3C0A8012 */ lui $t2, %hi(D_80125ED8) # $t2, 0x8012 -/* 0780AC 800774AC 000B60C3 */ sra $t4, $t3, 3 -/* 0780B0 800774B0 240D0001 */ li $t5, 1 -/* 0780B4 800774B4 3C0F800E */ lui $t7, %hi(D_800D8590) # $t7, 0x800e -/* 0780B8 800774B8 246384C0 */ addiu $v1, %lo(D_800D84C0) # addiu $v1, $v1, -0x7b40 -/* 0780BC 800774BC 254A5ED8 */ addiu $t2, %lo(D_80125ED8) # addiu $t2, $t2, 0x5ed8 -/* 0780C0 800774C0 ACEC0044 */ sw $t4, 0x44($a3) -/* 0780C4 800774C4 ACED0010 */ sw $t5, 0x10($a3) -/* 0780C8 800774C8 240E0002 */ li $t6, 2 -/* 0780CC 800774CC 25EF8590 */ addiu $t7, %lo(D_800D8590) # addiu $t7, $t7, -0x7a70 -/* 0780D0 800774D0 3C02FF00 */ lui $v0, (0xFF0000FF >> 16) # lui $v0, 0xff00 -/* 0780D4 800774D4 24090023 */ li $t1, 35 -/* 0780D8 800774D8 ACEA0050 */ sw $t2, 0x50($a3) -/* 0780DC 800774DC ACEE0014 */ sw $t6, 0x14($a3) -/* 0780E0 800774E0 01E3C023 */ subu $t8, $t7, $v1 -/* 0780E4 800774E4 3C0C8012 */ lui $t4, %hi(D_801246A0) # $t4, 0x8012 -/* 0780E8 800774E8 3C0D8012 */ lui $t5, %hi(D_80125EA0) # $t5, 0x8012 -/* 0780EC 800774EC 344200FF */ ori $v0, (0xFF0000FF & 0xFFFF) # ori $v0, $v0, 0xff -/* 0780F0 800774F0 ACE90008 */ sw $t1, 8($a3) -/* 0780F4 800774F4 3C19800E */ lui $t9, %hi(D_800DA970) # $t9, 0x800e -/* 0780F8 800774F8 3C08800F */ lui $t0, %hi(D_800EABA0) # $t0, 0x800f -/* 0780FC 800774FC 3C0A8012 */ lui $t2, %hi(D_801242A0) # $t2, 0x8012 -/* 078100 80077500 258C46A0 */ addiu $t4, %lo(D_801246A0) # addiu $t4, $t4, 0x46a0 -/* 078104 80077504 25AD5EA0 */ addiu $t5, %lo(D_80125EA0) # addiu $t5, $t5, 0x5ea0 -/* 078108 80077508 3C0E8012 */ lui $t6, %hi(D_801271B0) # $t6, 0x8012 -/* 07810C 8007750C ACF8001C */ sw $t8, 0x1c($a3) -/* 078110 80077510 2739A970 */ addiu $t9, %lo(D_800DA970) # addiu $t9, $t9, -0x5690 -/* 078114 80077514 2508ABA0 */ addiu $t0, %lo(D_800EABA0) # addiu $t0, $t0, -0x5460 -/* 078118 80077518 24090800 */ li $t1, 2048 -/* 07811C 8007751C 254A42A0 */ addiu $t2, %lo(D_801242A0) # addiu $t2, $t2, 0x42a0 -/* 078120 80077520 240B0400 */ li $t3, 1024 -/* 078124 80077524 ACEC0038 */ sw $t4, 0x38($a3) -/* 078128 80077528 ACED003C */ sw $t5, 0x3c($a3) -/* 07812C 8007752C 25CE71B0 */ addiu $t6, %lo(D_801271B0) # addiu $t6, $t6, 0x71b0 -/* 078130 80077530 240F0A00 */ li $t7, 2560 -/* 078134 80077534 ACE20058 */ sw $v0, 0x58($a3) -/* 078138 80077538 ACE2005C */ sw $v0, 0x5c($a3) -/* 07813C 8007753C ACE40040 */ sw $a0, 0x40($a3) -/* 078140 80077540 ACE30018 */ sw $v1, 0x18($a3) -/* 078144 80077544 ACF90020 */ sw $t9, 0x20($a3) -/* 078148 80077548 ACE80028 */ sw $t0, 0x28($a3) -/* 07814C 8007754C ACE9002C */ sw $t1, 0x2c($a3) -/* 078150 80077550 ACEA0030 */ sw $t2, 0x30($a3) -/* 078154 80077554 ACEB0034 */ sw $t3, 0x34($a3) -/* 078158 80077558 ACEE0048 */ sw $t6, 0x48($a3) -/* 07815C 8007755C ACEF004C */ sw $t7, 0x4c($a3) -/* 078160 80077560 ACE00038 */ sw $zero, 0x38($a3) -/* 078164 80077564 ACE0003C */ sw $zero, 0x3c($a3) -/* 078168 80077568 ACE00000 */ sw $zero, ($a3) -/* 07816C 8007756C 3C188012 */ lui $t8, %hi(D_801262D4) # $t8, 0x8012 -/* 078170 80077570 8F1862D4 */ lw $t8, %lo(D_801262D4)($t8) -/* 078174 80077574 240200FF */ li $v0, 255 -/* 078178 80077578 ACE20060 */ sw $v0, 0x60($a3) -/* 07817C 8007757C ACE20064 */ sw $v0, 0x64($a3) -/* 078180 80077580 ACF8000C */ sw $t8, 0xc($a3) -/* 078184 80077584 0C034628 */ jal func_800D18A0 -/* 078188 80077588 AFA7001C */ sw $a3, 0x1c($sp) -/* 07818C 8007758C 3C048012 */ lui $a0, %hi(D_80126100) # $a0, 0x8012 -/* 078190 80077590 8FA5001C */ lw $a1, 0x1c($sp) -/* 078194 80077594 8C846100 */ lw $a0, %lo(D_80126100)($a0) -/* 078198 80077598 0C03238C */ jal func_800C8E30 -/* 07819C 8007759C 24060001 */ li $a2, 1 -/* 0781A0 800775A0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0781A4 800775A4 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0781A8 800775A8 03E00008 */ jr $ra -/* 0781AC 800775AC 00001025 */ move $v0, $zero - -/* 0781B0 800775B0 3C03800E */ lui $v1, %hi(D_800DE4D8) # $v1, 0x800e -/* 0781B4 800775B4 2463E4D8 */ addiu $v1, %lo(D_800DE4D8) # addiu $v1, $v1, -0x1b28 -/* 0781B8 800775B8 8C620000 */ lw $v0, ($v1) -/* 0781BC 800775BC 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0781C0 800775C0 000270C0 */ sll $t6, $v0, 3 -/* 0781C4 800775C4 3C0F8012 */ lui $t7, %hi(D_80126020) # $t7, 0x8012 -/* 0781C8 800775C8 01C27023 */ subu $t6, $t6, $v0 -/* 0781CC 800775CC 000E7100 */ sll $t6, $t6, 4 -/* 0781D0 800775D0 25EF6020 */ addiu $t7, %lo(D_80126020) # addiu $t7, $t7, 0x6020 -/* 0781D4 800775D4 24010002 */ li $at, 2 -/* 0781D8 800775D8 24580001 */ addiu $t8, $v0, 1 -/* 0781DC 800775DC AFBF0014 */ sw $ra, 0x14($sp) -/* 0781E0 800775E0 AFA60030 */ sw $a2, 0x30($sp) -/* 0781E4 800775E4 AFA00020 */ sw $zero, 0x20($sp) -/* 0781E8 800775E8 01CF3821 */ addu $a3, $t6, $t7 -/* 0781EC 800775EC 17010002 */ bne $t8, $at, .L800775F8 -/* 0781F0 800775F0 AC780000 */ sw $t8, ($v1) -/* 0781F4 800775F4 AC600000 */ sw $zero, ($v1) -.L800775F8: -/* 0781F8 800775F8 3C02800E */ lui $v0, %hi(D_800D84C0) # $v0, 0x800e -/* 0781FC 800775FC 3C0D800E */ lui $t5, %hi(D_800D8590) # $t5, 0x800e -/* 078200 80077600 244284C0 */ addiu $v0, %lo(D_800D84C0) # addiu $v0, $v0, -0x7b40 -/* 078204 80077604 00A44023 */ subu $t0, $a1, $a0 -/* 078208 80077608 25AD8590 */ addiu $t5, %lo(D_800D8590) # addiu $t5, $t5, -0x7a70 -/* 07820C 8007760C 000848C3 */ sra $t1, $t0, 3 -/* 078210 80077610 01A27023 */ subu $t6, $t5, $v0 -/* 078214 80077614 000950C0 */ sll $t2, $t1, 3 -/* 078218 80077618 ACEA0044 */ sw $t2, 0x44($a3) -/* 07821C 8007761C 240B0001 */ li $t3, 1 -/* 078220 80077620 240C0002 */ li $t4, 2 -/* 078224 80077624 ACEE001C */ sw $t6, 0x1c($a3) -/* 078228 80077628 3C0F800E */ lui $t7, %hi(D_800DA970) # $t7, 0x800e -/* 07822C 8007762C ACEB0010 */ sw $t3, 0x10($a3) -/* 078230 80077630 ACEC0014 */ sw $t4, 0x14($a3) -/* 078234 80077634 25EFA970 */ addiu $t7, %lo(D_800DA970) # addiu $t7, $t7, -0x5690 -/* 078238 80077638 3C18800F */ lui $t8, %hi(D_800EABA0) # $t8, 0x800f -/* 07823C 8007763C 3C088012 */ lui $t0, %hi(D_801242A0) # $t0, 0x8012 -/* 078240 80077640 3C0A8012 */ lui $t2, %hi(D_801271B0) # $t2, 0x8012 -/* 078244 80077644 3C0D8012 */ lui $t5, %hi(D_80125ED8) # $t5, 0x8012 -/* 078248 80077648 3C0E800E */ lui $t6, %hi(D_800DE490) # $t6, 0x800e -/* 07824C 8007764C ACEF0020 */ sw $t7, 0x20($a3) -/* 078250 80077650 2718ABA0 */ addiu $t8, %lo(D_800EABA0) # addiu $t8, $t8, -0x5460 -/* 078254 80077654 24190800 */ li $t9, 2048 -/* 078258 80077658 250842A0 */ addiu $t0, %lo(D_801242A0) # addiu $t0, $t0, 0x42a0 -/* 07825C 8007765C 24090400 */ li $t1, 1024 -/* 078260 80077660 254A71B0 */ addiu $t2, %lo(D_801271B0) # addiu $t2, $t2, 0x71b0 -/* 078264 80077664 240B0A00 */ li $t3, 2560 -/* 078268 80077668 240C0003 */ li $t4, 3 -/* 07826C 8007766C 25AD5ED8 */ addiu $t5, %lo(D_80125ED8) # addiu $t5, $t5, 0x5ed8 -/* 078270 80077670 25CEE490 */ addiu $t6, %lo(D_800DE490) # addiu $t6, $t6, -0x1b70 -/* 078274 80077674 ACE40040 */ sw $a0, 0x40($a3) -/* 078278 80077678 ACE20018 */ sw $v0, 0x18($a3) -/* 07827C 8007767C ACF80028 */ sw $t8, 0x28($a3) -/* 078280 80077680 ACF9002C */ sw $t9, 0x2c($a3) -/* 078284 80077684 ACE80030 */ sw $t0, 0x30($a3) -/* 078288 80077688 ACE90034 */ sw $t1, 0x34($a3) -/* 07828C 8007768C ACEA0048 */ sw $t2, 0x48($a3) -/* 078290 80077690 ACEB004C */ sw $t3, 0x4c($a3) -/* 078294 80077694 ACE00038 */ sw $zero, 0x38($a3) -/* 078298 80077698 ACE0003C */ sw $zero, 0x3c($a3) -/* 07829C 8007769C ACE00000 */ sw $zero, ($a3) -/* 0782A0 800776A0 ACEC0008 */ sw $t4, 8($a3) -/* 0782A4 800776A4 ACED0050 */ sw $t5, 0x50($a3) -/* 0782A8 800776A8 ACEE0054 */ sw $t6, 0x54($a3) -/* 0782AC 800776AC 3C0F8012 */ lui $t7, %hi(D_801262D4) # $t7, 0x8012 -/* 0782B0 800776B0 8DEF62D4 */ lw $t7, %lo(D_801262D4)($t7) -/* 0782B4 800776B4 3C02FF00 */ lui $v0, (0xFF0000FF >> 16) # lui $v0, 0xff00 -/* 0782B8 800776B8 344200FF */ ori $v0, (0xFF0000FF & 0xFFFF) # ori $v0, $v0, 0xff -/* 0782BC 800776BC 240300FF */ li $v1, 255 -/* 0782C0 800776C0 ACE20058 */ sw $v0, 0x58($a3) -/* 0782C4 800776C4 ACE2005C */ sw $v0, 0x5c($a3) -/* 0782C8 800776C8 ACE30060 */ sw $v1, 0x60($a3) -/* 0782CC 800776CC ACE30064 */ sw $v1, 0x64($a3) -/* 0782D0 800776D0 ACE00068 */ sw $zero, 0x68($a3) -/* 0782D4 800776D4 ACEF000C */ sw $t7, 0xc($a3) -/* 0782D8 800776D8 8FB80030 */ lw $t8, 0x30($sp) -/* 0782DC 800776DC 3C198012 */ lui $t9, %hi(D_80125EA0) # $t9, 0x8012 -/* 0782E0 800776E0 13000002 */ beqz $t8, .L800776EC -/* 0782E4 800776E4 27395EA0 */ addiu $t9, %lo(D_80125EA0) # addiu $t9, $t9, 0x5ea0 -/* 0782E8 800776E8 ACF90050 */ sw $t9, 0x50($a3) -.L800776EC: -/* 0782EC 800776EC 0C034628 */ jal func_800D18A0 -/* 0782F0 800776F0 AFA70024 */ sw $a3, 0x24($sp) -/* 0782F4 800776F4 3C048012 */ lui $a0, %hi(D_80126100) # $a0, 0x8012 -/* 0782F8 800776F8 8FA50024 */ lw $a1, 0x24($sp) -/* 0782FC 800776FC 8C846100 */ lw $a0, %lo(D_80126100)($a0) -/* 078300 80077700 0C03238C */ jal func_800C8E30 -/* 078304 80077704 24060001 */ li $a2, 1 -/* 078308 80077708 8FA80030 */ lw $t0, 0x30($sp) -/* 07830C 8007770C 3C048012 */ lui $a0, %hi(D_80125EA0) # $a0, 0x8012 -/* 078310 80077710 11000004 */ beqz $t0, .L80077724 -/* 078314 80077714 24845EA0 */ addiu $a0, %lo(D_80125EA0) # addiu $a0, $a0, 0x5ea0 -/* 078318 80077718 27A50020 */ addiu $a1, $sp, 0x20 -/* 07831C 8007771C 0C0322EC */ jal osRecvMesg -/* 078320 80077720 24060001 */ li $a2, 1 -.L80077724: -/* 078324 80077724 8FBF0014 */ lw $ra, 0x14($sp) -/* 078328 80077728 27BD0028 */ addiu $sp, $sp, 0x28 -/* 07832C 8007772C 03E00008 */ jr $ra -/* 078330 80077730 00000000 */ nop - -/* 078334 80077734 3C03800E */ lui $v1, %hi(D_800DE4D8) # $v1, 0x800e -/* 078338 80077738 2463E4D8 */ addiu $v1, %lo(D_800DE4D8) # addiu $v1, $v1, -0x1b28 -/* 07833C 8007773C 8C620000 */ lw $v0, ($v1) -/* 078340 80077740 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 078344 80077744 000270C0 */ sll $t6, $v0, 3 -/* 078348 80077748 3C0F8012 */ lui $t7, %hi(D_80126020) # $t7, 0x8012 -/* 07834C 8007774C 01C27023 */ subu $t6, $t6, $v0 -/* 078350 80077750 000E7100 */ sll $t6, $t6, 4 -/* 078354 80077754 25EF6020 */ addiu $t7, %lo(D_80126020) # addiu $t7, $t7, 0x6020 -/* 078358 80077758 24010002 */ li $at, 2 -/* 07835C 8007775C 24580001 */ addiu $t8, $v0, 1 -/* 078360 80077760 AFBF0014 */ sw $ra, 0x14($sp) -/* 078364 80077764 AFA60030 */ sw $a2, 0x30($sp) -/* 078368 80077768 AFA00020 */ sw $zero, 0x20($sp) -/* 07836C 8007776C 01CF3821 */ addu $a3, $t6, $t7 -/* 078370 80077770 17010002 */ bne $t8, $at, .L8007777C -/* 078374 80077774 AC780000 */ sw $t8, ($v1) -/* 078378 80077778 AC600000 */ sw $zero, ($v1) -.L8007777C: -/* 07837C 8007777C 3C02800E */ lui $v0, %hi(D_800D84C0) # $v0, 0x800e -/* 078380 80077780 00A44023 */ subu $t0, $a1, $a0 -/* 078384 80077784 3C0D800E */ lui $t5, %hi(D_800D8590) # $t5, 0x800e -/* 078388 80077788 244284C0 */ addiu $v0, %lo(D_800D84C0) # addiu $v0, $v0, -0x7b40 -/* 07838C 8007778C 000848C3 */ sra $t1, $t0, 3 -/* 078390 80077790 25AD8590 */ addiu $t5, %lo(D_800D8590) # addiu $t5, $t5, -0x7a70 -/* 078394 80077794 3C0F800E */ lui $t7, %hi(D_800D9790) # $t7, 0x800e -/* 078398 80077798 3C18800F */ lui $t8, %hi(D_800EA3A0) # $t8, 0x800f -/* 07839C 8007779C 000950C0 */ sll $t2, $t1, 3 -/* 0783A0 800777A0 240B0001 */ li $t3, 1 -/* 0783A4 800777A4 240C0002 */ li $t4, 2 -/* 0783A8 800777A8 01A27023 */ subu $t6, $t5, $v0 -/* 0783AC 800777AC 25EF9790 */ addiu $t7, %lo(D_800D9790) # addiu $t7, $t7, -0x6870 -/* 0783B0 800777B0 2718A3A0 */ addiu $t8, %lo(D_800EA3A0) # addiu $t8, $t8, -0x5c60 -/* 0783B4 800777B4 ACEA0044 */ sw $t2, 0x44($a3) -/* 0783B8 800777B8 ACEB0010 */ sw $t3, 0x10($a3) -/* 0783BC 800777BC ACEC0014 */ sw $t4, 0x14($a3) -/* 0783C0 800777C0 ACEF0020 */ sw $t7, 0x20($a3) -/* 0783C4 800777C4 ACF80028 */ sw $t8, 0x28($a3) -/* 0783C8 800777C8 ACEE001C */ sw $t6, 0x1c($a3) -/* 0783CC 800777CC 24190800 */ li $t9, 2048 -/* 0783D0 800777D0 3C088012 */ lui $t0, %hi(D_801242A0) # $t0, 0x8012 -/* 0783D4 800777D4 3C0A8012 */ lui $t2, %hi(D_801246A0) # $t2, 0x8012 -/* 0783D8 800777D8 3C0B8012 */ lui $t3, %hi(D_80125EA0) # $t3, 0x8012 -/* 0783DC 800777DC 3C0C8012 */ lui $t4, %hi(D_801271B0) # $t4, 0x8012 -/* 0783E0 800777E0 3C0F8012 */ lui $t7, %hi(D_80125ED8) # $t7, 0x8012 -/* 0783E4 800777E4 3C18800E */ lui $t8, %hi(D_800DE490) # $t8, 0x800e -/* 0783E8 800777E8 ACF9002C */ sw $t9, 0x2c($a3) -/* 0783EC 800777EC 250842A0 */ addiu $t0, %lo(D_801242A0) # addiu $t0, $t0, 0x42a0 -/* 0783F0 800777F0 24090400 */ li $t1, 1024 -/* 0783F4 800777F4 254A46A0 */ addiu $t2, %lo(D_801246A0) # addiu $t2, $t2, 0x46a0 -/* 0783F8 800777F8 256B5EA0 */ addiu $t3, %lo(D_80125EA0) # addiu $t3, $t3, 0x5ea0 -/* 0783FC 800777FC 258C71B0 */ addiu $t4, %lo(D_801271B0) # addiu $t4, $t4, 0x71b0 -/* 078400 80077800 240D0A00 */ li $t5, 2560 -/* 078404 80077804 240E0007 */ li $t6, 7 -/* 078408 80077808 25EF5ED8 */ addiu $t7, %lo(D_80125ED8) # addiu $t7, $t7, 0x5ed8 -/* 07840C 8007780C 2718E490 */ addiu $t8, %lo(D_800DE490) # addiu $t8, $t8, -0x1b70 -/* 078410 80077810 ACE40040 */ sw $a0, 0x40($a3) -/* 078414 80077814 ACE20018 */ sw $v0, 0x18($a3) -/* 078418 80077818 ACE80030 */ sw $t0, 0x30($a3) -/* 07841C 8007781C ACE90034 */ sw $t1, 0x34($a3) -/* 078420 80077820 ACEA0038 */ sw $t2, 0x38($a3) -/* 078424 80077824 ACEB003C */ sw $t3, 0x3c($a3) -/* 078428 80077828 ACEC0048 */ sw $t4, 0x48($a3) -/* 07842C 8007782C ACED004C */ sw $t5, 0x4c($a3) -/* 078430 80077830 ACE00000 */ sw $zero, ($a3) -/* 078434 80077834 ACEE0008 */ sw $t6, 8($a3) -/* 078438 80077838 ACEF0050 */ sw $t7, 0x50($a3) -/* 07843C 8007783C ACF80054 */ sw $t8, 0x54($a3) -/* 078440 80077840 3C198012 */ lui $t9, %hi(D_801262D4) # $t9, 0x8012 -/* 078444 80077844 8F3962D4 */ lw $t9, %lo(D_801262D4)($t9) -/* 078448 80077848 3C02FF00 */ lui $v0, (0xFF0000FF >> 16) # lui $v0, 0xff00 -/* 07844C 8007784C 344200FF */ ori $v0, (0xFF0000FF & 0xFFFF) # ori $v0, $v0, 0xff -/* 078450 80077850 240300FF */ li $v1, 255 -/* 078454 80077854 ACE20058 */ sw $v0, 0x58($a3) -/* 078458 80077858 ACE2005C */ sw $v0, 0x5c($a3) -/* 07845C 8007785C ACE30060 */ sw $v1, 0x60($a3) -/* 078460 80077860 ACE30064 */ sw $v1, 0x64($a3) -/* 078464 80077864 ACE00068 */ sw $zero, 0x68($a3) -/* 078468 80077868 ACF9000C */ sw $t9, 0xc($a3) -/* 07846C 8007786C 8FA80030 */ lw $t0, 0x30($sp) -/* 078470 80077870 3C098012 */ lui $t1, %hi(D_80125EA0) # $t1, 0x8012 -/* 078474 80077874 11000002 */ beqz $t0, .L80077880 -/* 078478 80077878 25295EA0 */ addiu $t1, %lo(D_80125EA0) # addiu $t1, $t1, 0x5ea0 -/* 07847C 8007787C ACE90050 */ sw $t1, 0x50($a3) -.L80077880: -/* 078480 80077880 0C034628 */ jal func_800D18A0 -/* 078484 80077884 AFA70024 */ sw $a3, 0x24($sp) -/* 078488 80077888 3C048012 */ lui $a0, %hi(D_80126100) # $a0, 0x8012 -/* 07848C 8007788C 8FA50024 */ lw $a1, 0x24($sp) -/* 078490 80077890 8C846100 */ lw $a0, %lo(D_80126100)($a0) -/* 078494 80077894 0C03238C */ jal func_800C8E30 -/* 078498 80077898 24060001 */ li $a2, 1 -/* 07849C 8007789C 8FAA0030 */ lw $t2, 0x30($sp) -/* 0784A0 800778A0 3C048012 */ lui $a0, %hi(D_80125EA0) # $a0, 0x8012 -/* 0784A4 800778A4 11400004 */ beqz $t2, .L800778B8 -/* 0784A8 800778A8 24845EA0 */ addiu $a0, %lo(D_80125EA0) # addiu $a0, $a0, 0x5ea0 -/* 0784AC 800778AC 27A50020 */ addiu $a1, $sp, 0x20 -/* 0784B0 800778B0 0C0322EC */ jal osRecvMesg -/* 0784B4 800778B4 24060001 */ li $a2, 1 -.L800778B8: -/* 0784B8 800778B8 8FBF0014 */ lw $ra, 0x14($sp) -/* 0784BC 800778BC 27BD0028 */ addiu $sp, $sp, 0x28 -/* 0784C0 800778C0 03E00008 */ jr $ra -/* 0784C4 800778C4 00000000 */ nop - -/* 0784C8 800778C8 3C03800E */ lui $v1, %hi(D_800DE4D4) # $v1, 0x800e -/* 0784CC 800778CC 2463E4D4 */ addiu $v1, %lo(D_800DE4D4) # addiu $v1, $v1, -0x1b2c -/* 0784D0 800778D0 8C620000 */ lw $v0, ($v1) -/* 0784D4 800778D4 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0784D8 800778D8 000270C0 */ sll $t6, $v0, 3 -/* 0784DC 800778DC 3C0F8012 */ lui $t7, %hi(D_80125F40) # $t7, 0x8012 -/* 0784E0 800778E0 01C27023 */ subu $t6, $t6, $v0 -/* 0784E4 800778E4 000E7100 */ sll $t6, $t6, 4 -/* 0784E8 800778E8 25EF5F40 */ addiu $t7, %lo(D_80125F40) # addiu $t7, $t7, 0x5f40 -/* 0784EC 800778EC 24010003 */ li $at, 3 -/* 0784F0 800778F0 24580001 */ addiu $t8, $v0, 1 -/* 0784F4 800778F4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0784F8 800778F8 AFA60030 */ sw $a2, 0x30($sp) -/* 0784FC 800778FC AFA00020 */ sw $zero, 0x20($sp) -/* 078500 80077900 01CF3821 */ addu $a3, $t6, $t7 -/* 078504 80077904 17010002 */ bne $t8, $at, .L80077910 -/* 078508 80077908 AC780000 */ sw $t8, ($v1) -/* 07850C 8007790C AC600000 */ sw $zero, ($v1) -.L80077910: -/* 078510 80077910 3C02800E */ lui $v0, %hi(D_800D84C0) # $v0, 0x800e -/* 078514 80077914 00A44023 */ subu $t0, $a1, $a0 -/* 078518 80077918 3C0D800E */ lui $t5, %hi(D_800D8590) # $t5, 0x800e -/* 07851C 8007791C 244284C0 */ addiu $v0, %lo(D_800D84C0) # addiu $v0, $v0, -0x7b40 -/* 078520 80077920 000848C3 */ sra $t1, $t0, 3 -/* 078524 80077924 25AD8590 */ addiu $t5, %lo(D_800D8590) # addiu $t5, $t5, -0x7a70 -/* 078528 80077928 3C0F800E */ lui $t7, %hi(D_800D9790) # $t7, 0x800e -/* 07852C 8007792C 3C18800F */ lui $t8, %hi(D_800EA3A0) # $t8, 0x800f -/* 078530 80077930 000950C0 */ sll $t2, $t1, 3 -/* 078534 80077934 240B0001 */ li $t3, 1 -/* 078538 80077938 240C0002 */ li $t4, 2 -/* 07853C 8007793C 01A27023 */ subu $t6, $t5, $v0 -/* 078540 80077940 25EF9790 */ addiu $t7, %lo(D_800D9790) # addiu $t7, $t7, -0x6870 -/* 078544 80077944 2718A3A0 */ addiu $t8, %lo(D_800EA3A0) # addiu $t8, $t8, -0x5c60 -/* 078548 80077948 ACEA0044 */ sw $t2, 0x44($a3) -/* 07854C 8007794C ACEB0010 */ sw $t3, 0x10($a3) -/* 078550 80077950 ACEC0014 */ sw $t4, 0x14($a3) -/* 078554 80077954 ACEF0020 */ sw $t7, 0x20($a3) -/* 078558 80077958 ACF80028 */ sw $t8, 0x28($a3) -/* 07855C 8007795C ACEE001C */ sw $t6, 0x1c($a3) -/* 078560 80077960 24190800 */ li $t9, 2048 -/* 078564 80077964 3C088012 */ lui $t0, %hi(D_801242A0) # $t0, 0x8012 -/* 078568 80077968 3C0A8012 */ lui $t2, %hi(D_801246A0) # $t2, 0x8012 -/* 07856C 8007796C 3C0B8012 */ lui $t3, %hi(D_80125EA0) # $t3, 0x8012 -/* 078570 80077970 3C0C8012 */ lui $t4, %hi(D_801271B0) # $t4, 0x8012 -/* 078574 80077974 3C0F8012 */ lui $t7, %hi(D_80125ED8) # $t7, 0x8012 -/* 078578 80077978 3C18800E */ lui $t8, %hi(D_800DE490) # $t8, 0x800e -/* 07857C 8007797C ACE20018 */ sw $v0, 0x18($a3) -/* 078580 80077980 ACF9002C */ sw $t9, 0x2c($a3) -/* 078584 80077984 250842A0 */ addiu $t0, %lo(D_801242A0) # addiu $t0, $t0, 0x42a0 -/* 078588 80077988 24090400 */ li $t1, 1024 -/* 07858C 8007798C 254A46A0 */ addiu $t2, %lo(D_801246A0) # addiu $t2, $t2, 0x46a0 -/* 078590 80077990 256B5EA0 */ addiu $t3, %lo(D_80125EA0) # addiu $t3, $t3, 0x5ea0 -/* 078594 80077994 258C71B0 */ addiu $t4, %lo(D_801271B0) # addiu $t4, $t4, 0x71b0 -/* 078598 80077998 240D0A00 */ li $t5, 2560 -/* 07859C 8007799C 240E0007 */ li $t6, 7 -/* 0785A0 800779A0 25EF5ED8 */ addiu $t7, %lo(D_80125ED8) # addiu $t7, $t7, 0x5ed8 -/* 0785A4 800779A4 2718E490 */ addiu $t8, %lo(D_800DE490) # addiu $t8, $t8, -0x1b70 -/* 0785A8 800779A8 ACE40040 */ sw $a0, 0x40($a3) -/* 0785AC 800779AC ACE80030 */ sw $t0, 0x30($a3) -/* 0785B0 800779B0 ACE90034 */ sw $t1, 0x34($a3) -/* 0785B4 800779B4 ACEA0038 */ sw $t2, 0x38($a3) -/* 0785B8 800779B8 ACEB003C */ sw $t3, 0x3c($a3) -/* 0785BC 800779BC ACEC0048 */ sw $t4, 0x48($a3) -/* 0785C0 800779C0 ACED004C */ sw $t5, 0x4c($a3) -/* 0785C4 800779C4 ACE00000 */ sw $zero, ($a3) -/* 0785C8 800779C8 ACEE0008 */ sw $t6, 8($a3) -/* 0785CC 800779CC ACEF0050 */ sw $t7, 0x50($a3) -/* 0785D0 800779D0 ACF80054 */ sw $t8, 0x54($a3) -/* 0785D4 800779D4 3C198012 */ lui $t9, %hi(D_801262D4) # $t9, 0x8012 -/* 0785D8 800779D8 8F3962D4 */ lw $t9, %lo(D_801262D4)($t9) -/* 0785DC 800779DC 3C02FF00 */ lui $v0, (0xFF0000FF >> 16) # lui $v0, 0xff00 -/* 0785E0 800779E0 344200FF */ ori $v0, (0xFF0000FF & 0xFFFF) # ori $v0, $v0, 0xff -/* 0785E4 800779E4 ACE20058 */ sw $v0, 0x58($a3) -/* 0785E8 800779E8 ACE2005C */ sw $v0, 0x5c($a3) -/* 0785EC 800779EC ACF9000C */ sw $t9, 0xc($a3) -/* 0785F0 800779F0 8FA80030 */ lw $t0, 0x30($sp) -/* 0785F4 800779F4 240200FF */ li $v0, 255 -/* 0785F8 800779F8 11000003 */ beqz $t0, .L80077A08 -/* 0785FC 800779FC 00000000 */ nop -/* 078600 80077A00 ACE20060 */ sw $v0, 0x60($a3) -/* 078604 80077A04 ACE20064 */ sw $v0, 0x64($a3) -.L80077A08: -/* 078608 80077A08 ACE00068 */ sw $zero, 0x68($a3) -/* 07860C 80077A0C 0C034628 */ jal func_800D18A0 -/* 078610 80077A10 AFA70024 */ sw $a3, 0x24($sp) -/* 078614 80077A14 3C048012 */ lui $a0, %hi(D_80126100) # $a0, 0x8012 -/* 078618 80077A18 8FA50024 */ lw $a1, 0x24($sp) -/* 07861C 80077A1C 8C846100 */ lw $a0, %lo(D_80126100)($a0) -/* 078620 80077A20 0C03238C */ jal func_800C8E30 -/* 078624 80077A24 24060001 */ li $a2, 1 -/* 078628 80077A28 8FA90030 */ lw $t1, 0x30($sp) -/* 07862C 80077A2C 3C048012 */ lui $a0, %hi(D_80125ED8) # $a0, 0x8012 -/* 078630 80077A30 11200004 */ beqz $t1, .L80077A44 -/* 078634 80077A34 24845ED8 */ addiu $a0, %lo(D_80125ED8) # addiu $a0, $a0, 0x5ed8 -/* 078638 80077A38 27A50020 */ addiu $a1, $sp, 0x20 -/* 07863C 80077A3C 0C0322EC */ jal osRecvMesg -/* 078640 80077A40 24060001 */ li $a2, 1 -.L80077A44: -/* 078644 80077A44 8FBF0014 */ lw $ra, 0x14($sp) -/* 078648 80077A48 27BD0028 */ addiu $sp, $sp, 0x28 -/* 07864C 80077A4C 03E00008 */ jr $ra -/* 078650 80077A50 00000000 */ nop - -glabel func_80077A54 -/* 078654 80077A54 3C0E800E */ lui $t6, %hi(D_800DE4DC) # $t6, 0x800e -/* 078658 80077A58 8DCEE4DC */ lw $t6, %lo(D_800DE4DC)($t6) -/* 07865C 80077A5C 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 078660 80077A60 AFBF0014 */ sw $ra, 0x14($sp) -/* 078664 80077A64 15C00003 */ bnez $t6, .L80077A74 -/* 078668 80077A68 AFA0001C */ sw $zero, 0x1c($sp) -/* 07866C 80077A6C 1000000B */ b .L80077A9C -/* 078670 80077A70 00001025 */ move $v0, $zero -.L80077A74: -/* 078674 80077A74 3C048012 */ lui $a0, %hi(D_80125ED8) # $a0, 0x8012 -/* 078678 80077A78 24845ED8 */ addiu $a0, %lo(D_80125ED8) # addiu $a0, $a0, 0x5ed8 -/* 07867C 80077A7C 27A5001C */ addiu $a1, $sp, 0x1c -/* 078680 80077A80 0C0322EC */ jal osRecvMesg -/* 078684 80077A84 24060001 */ li $a2, 1 -/* 078688 80077A88 8FAF001C */ lw $t7, 0x1c($sp) -/* 07868C 80077A8C 3C01800E */ lui $at, %hi(D_800DE4DC) # $at, 0x800e -/* 078690 80077A90 AC20E4DC */ sw $zero, %lo(D_800DE4DC)($at) -/* 078694 80077A94 8DE20004 */ lw $v0, 4($t7) -/* 078698 80077A98 00000000 */ nop -.L80077A9C: -/* 07869C 80077A9C 8FBF0014 */ lw $ra, 0x14($sp) -/* 0786A0 80077AA0 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0786A4 80077AA4 03E00008 */ jr $ra -/* 0786A8 80077AA8 00000000 */ nop - -/* 0786AC 80077AAC 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0786B0 80077AB0 AFBF0014 */ sw $ra, 0x14($sp) -/* 0786B4 80077AB4 AFA40018 */ sw $a0, 0x18($sp) -/* 0786B8 80077AB8 AFA5001C */ sw $a1, 0x1c($sp) -/* 0786BC 80077ABC 0C034628 */ jal func_800D18A0 -/* 0786C0 80077AC0 AFA60020 */ sw $a2, 0x20($sp) -/* 0786C4 80077AC4 0C034634 */ jal func_800D18D0 -/* 0786C8 80077AC8 00000000 */ nop -/* 0786CC 80077ACC 304E0100 */ andi $t6, $v0, 0x100 -/* 0786D0 80077AD0 11C00007 */ beqz $t6, .L80077AF0 -/* 0786D4 80077AD4 8FA7001C */ lw $a3, 0x1c($sp) -.L80077AD8: -/* 0786D8 80077AD8 0C034634 */ jal func_800D18D0 -/* 0786DC 80077ADC 00000000 */ nop -/* 0786E0 80077AE0 304F0100 */ andi $t7, $v0, 0x100 -/* 0786E4 80077AE4 15E0FFFC */ bnez $t7, .L80077AD8 -/* 0786E8 80077AE8 00000000 */ nop -/* 0786EC 80077AEC 8FA7001C */ lw $a3, 0x1c($sp) -.L80077AF0: -/* 0786F0 80077AF0 8FA40018 */ lw $a0, 0x18($sp) -/* 0786F4 80077AF4 0C034638 */ jal func_800D18E0 -/* 0786F8 80077AF8 000737C3 */ sra $a2, $a3, 0x1f -/* 0786FC 80077AFC 0C034634 */ jal func_800D18D0 -/* 078700 80077B00 00000000 */ nop -/* 078704 80077B04 30590100 */ andi $t9, $v0, 0x100 -/* 078708 80077B08 13200007 */ beqz $t9, .L80077B28 -/* 07870C 80077B0C 8FBF0014 */ lw $ra, 0x14($sp) -.L80077B10: -/* 078710 80077B10 0C034634 */ jal func_800D18D0 -/* 078714 80077B14 00000000 */ nop -/* 078718 80077B18 30480100 */ andi $t0, $v0, 0x100 -/* 07871C 80077B1C 1500FFFC */ bnez $t0, .L80077B10 -/* 078720 80077B20 00000000 */ nop -/* 078724 80077B24 8FBF0014 */ lw $ra, 0x14($sp) -.L80077B28: -/* 078728 80077B28 27BD0018 */ addiu $sp, $sp, 0x18 -/* 07872C 80077B2C 03E00008 */ jr $ra -/* 078730 80077B30 00000000 */ nop - -glabel func_80077B34 -/* 078734 80077B34 3C01800E */ lui $at, %hi(D_800DE4B0) # $at, 0x800e -/* 078738 80077B38 A024E4B0 */ sb $a0, %lo(D_800DE4B0)($at) -/* 07873C 80077B3C 3C01800E */ lui $at, %hi(D_800DE4B4) # $at, 0x800e -/* 078740 80077B40 A025E4B4 */ sb $a1, %lo(D_800DE4B4)($at) -/* 078744 80077B44 3C01800E */ lui $at, 0x800e -/* 078748 80077B48 AFA40000 */ sw $a0, ($sp) -/* 07874C 80077B4C AFA50004 */ sw $a1, 4($sp) -/* 078750 80077B50 AFA60008 */ sw $a2, 8($sp) -/* 078754 80077B54 03E00008 */ jr $ra -/* 078758 80077B58 A026E4B8 */ sb $a2, -0x1b48($at) - -glabel func_80077B5C -/* 07875C 80077B5C 00047200 */ sll $t6, $a0, 8 -/* 078760 80077B60 0005C0C0 */ sll $t8, $a1, 3 -/* 078764 80077B64 331907C0 */ andi $t9, $t8, 0x7c0 -/* 078768 80077B68 31CFF800 */ andi $t7, $t6, 0xf800 -/* 07876C 80077B6C 00064883 */ sra $t1, $a2, 2 -/* 078770 80077B70 312A003E */ andi $t2, $t1, 0x3e -/* 078774 80077B74 01F94025 */ or $t0, $t7, $t9 -/* 078778 80077B78 010A5825 */ or $t3, $t0, $t2 -/* 07877C 80077B7C 356C0001 */ ori $t4, $t3, 1 -/* 078780 80077B80 3C03800E */ lui $v1, %hi(D_800DE4BC) # $v1, 0x800e -/* 078784 80077B84 2463E4BC */ addiu $v1, %lo(D_800DE4BC) # addiu $v1, $v1, -0x1b44 -/* 078788 80077B88 000C6C00 */ sll $t5, $t4, 0x10 -/* 07878C 80077B8C AC6C0000 */ sw $t4, ($v1) -/* 078790 80077B90 018D7025 */ or $t6, $t4, $t5 -/* 078794 80077B94 03E00008 */ jr $ra -/* 078798 80077B98 AC6E0000 */ sw $t6, ($v1) - -glabel func_80077B9C -/* 07879C 80077B9C 27BDFF60 */ addiu $sp, $sp, -0xa0 -/* 0787A0 80077BA0 AFBF0024 */ sw $ra, 0x24($sp) -/* 0787A4 80077BA4 AFB00020 */ sw $s0, 0x20($sp) -/* 0787A8 80077BA8 00808025 */ move $s0, $a0 -/* 0787AC 80077BAC AFA500A4 */ sw $a1, 0xa4($sp) -/* 0787B0 80077BB0 0C01E948 */ jal func_8007A520 -/* 0787B4 80077BB4 AFA600A8 */ sw $a2, 0xa8($sp) -/* 0787B8 80077BB8 304CFFFF */ andi $t4, $v0, 0xffff -/* 0787BC 80077BBC 2589FFFF */ addiu $t1, $t4, -1 -/* 0787C0 80077BC0 44892000 */ mtc1 $t1, $f4 -/* 0787C4 80077BC4 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 0787C8 80077BC8 468021A0 */ cvt.s.w $f6, $f4 -/* 0787CC 80077BCC 44810000 */ mtc1 $at, $f0 -/* 0787D0 80077BD0 8E030000 */ lw $v1, ($s0) -/* 0787D4 80077BD4 46003202 */ mul.s $f8, $f6, $f0 -/* 0787D8 80077BD8 246E0008 */ addiu $t6, $v1, 8 -/* 0787DC 80077BDC AE0E0000 */ sw $t6, ($s0) -/* 0787E0 80077BE0 00026C03 */ sra $t5, $v0, 0x10 -/* 0787E4 80077BE4 444EF800 */ cfc1 $t6, $31 -/* 0787E8 80077BE8 25AAFFFF */ addiu $t2, $t5, -1 -/* 0787EC 80077BEC 35C10003 */ ori $at, $t6, 3 -/* 0787F0 80077BF0 38210002 */ xori $at, $at, 2 -/* 0787F4 80077BF4 44C1F800 */ ctc1 $at, $31 -/* 0787F8 80077BF8 448A8000 */ mtc1 $t2, $f16 -/* 0787FC 80077BFC 460042A4 */ cvt.w.s $f10, $f8 -/* 078800 80077C00 3C0FE700 */ lui $t7, 0xe700 -/* 078804 80077C04 44CEF800 */ ctc1 $t6, $31 -/* 078808 80077C08 AC6F0000 */ sw $t7, ($v1) -/* 07880C 80077C0C 468084A0 */ cvt.s.w $f18, $f16 -/* 078810 80077C10 AC600004 */ sw $zero, 4($v1) -/* 078814 80077C14 35C10003 */ ori $at, $t6, 3 -/* 078818 80077C18 46009102 */ mul.s $f4, $f18, $f0 -/* 07881C 80077C1C 8E030000 */ lw $v1, ($s0) -/* 078820 80077C20 38210002 */ xori $at, $at, 2 -/* 078824 80077C24 440F5000 */ mfc1 $t7, $f10 -/* 078828 80077C28 44C1F800 */ ctc1 $at, $31 -/* 07882C 80077C2C 24780008 */ addiu $t8, $v1, 8 -/* 078830 80077C30 460021A4 */ cvt.w.s $f6, $f4 -/* 078834 80077C34 AE180000 */ sw $t8, ($s0) -/* 078838 80077C38 3C19ED00 */ lui $t9, 0xed00 -/* 07883C 80077C3C 31F80FFF */ andi $t8, $t7, 0xfff -/* 078840 80077C40 440F3000 */ mfc1 $t7, $f6 -/* 078844 80077C44 AC790000 */ sw $t9, ($v1) -/* 078848 80077C48 0018CB00 */ sll $t9, $t8, 0xc -/* 07884C 80077C4C 44CEF800 */ ctc1 $t6, $31 -/* 078850 80077C50 31F80FFF */ andi $t8, $t7, 0xfff -/* 078854 80077C54 03387025 */ or $t6, $t9, $t8 -/* 078858 80077C58 AC6E0004 */ sw $t6, 4($v1) -/* 07885C 80077C5C 8E030000 */ lw $v1, ($s0) -/* 078860 80077C60 3C19BA00 */ lui $t9, (0xBA001402 >> 16) # lui $t9, 0xba00 -/* 078864 80077C64 246F0008 */ addiu $t7, $v1, 8 -/* 078868 80077C68 AE0F0000 */ sw $t7, ($s0) -/* 07886C 80077C6C 37391402 */ ori $t9, (0xBA001402 & 0xFFFF) # ori $t9, $t9, 0x1402 -/* 078870 80077C70 3C180030 */ lui $t8, 0x30 -/* 078874 80077C74 AC780004 */ sw $t8, 4($v1) -/* 078878 80077C78 AC790000 */ sw $t9, ($v1) -/* 07887C 80077C7C 8E030000 */ lw $v1, ($s0) -/* 078880 80077C80 3C1FFF10 */ lui $ra, 0xff10 -/* 078884 80077C84 246E0008 */ addiu $t6, $v1, 8 -/* 078888 80077C88 AE0E0000 */ sw $t6, ($s0) -/* 07888C 80077C8C 312F0FFF */ andi $t7, $t1, 0xfff -/* 078890 80077C90 01FFC825 */ or $t9, $t7, $ra -/* 078894 80077C94 3C180200 */ lui $t8, 0x200 -/* 078898 80077C98 AC780004 */ sw $t8, 4($v1) -/* 07889C 80077C9C AC790000 */ sw $t9, ($v1) -/* 0788A0 80077CA0 8E030000 */ lw $v1, ($s0) -/* 0788A4 80077CA4 3C0FFFFC */ lui $t7, (0xFFFCFFFC >> 16) # lui $t7, 0xfffc -/* 0788A8 80077CA8 246E0008 */ addiu $t6, $v1, 8 -/* 0788AC 80077CAC AE0E0000 */ sw $t6, ($s0) -/* 0788B0 80077CB0 3C07F700 */ lui $a3, 0xf700 -/* 0788B4 80077CB4 35EFFFFC */ ori $t7, (0xFFFCFFFC & 0xFFFF) # ori $t7, $t7, 0xfffc -/* 0788B8 80077CB8 AC6F0004 */ sw $t7, 4($v1) -/* 0788BC 80077CBC AC670000 */ sw $a3, ($v1) -/* 0788C0 80077CC0 8E030000 */ lw $v1, ($s0) -/* 0788C4 80077CC4 313803FF */ andi $t8, $t1, 0x3ff -/* 0788C8 80077CC8 24790008 */ addiu $t9, $v1, 8 -/* 0788CC 80077CCC AE190000 */ sw $t9, ($s0) -/* 0788D0 80077CD0 00187380 */ sll $t6, $t8, 0xe -/* 0788D4 80077CD4 315903FF */ andi $t9, $t2, 0x3ff -/* 0788D8 80077CD8 3C01F600 */ lui $at, 0xf600 -/* 0788DC 80077CDC 01C17825 */ or $t7, $t6, $at -/* 0788E0 80077CE0 0019C080 */ sll $t8, $t9, 2 -/* 0788E4 80077CE4 01F87025 */ or $t6, $t7, $t8 -/* 0788E8 80077CE8 AC6E0000 */ sw $t6, ($v1) -/* 0788EC 80077CEC AC600004 */ sw $zero, 4($v1) -/* 0788F0 80077CF0 8E030000 */ lw $v1, ($s0) -/* 0788F4 80077CF4 3C0FE700 */ lui $t7, 0xe700 -/* 0788F8 80077CF8 24790008 */ addiu $t9, $v1, 8 -/* 0788FC 80077CFC AE190000 */ sw $t9, ($s0) -/* 078900 80077D00 AC600004 */ sw $zero, 4($v1) -/* 078904 80077D04 AC6F0000 */ sw $t7, ($v1) -/* 078908 80077D08 8E030000 */ lw $v1, ($s0) -/* 07890C 80077D0C 312E0FFF */ andi $t6, $t1, 0xfff -/* 078910 80077D10 24780008 */ addiu $t8, $v1, 8 -/* 078914 80077D14 AE180000 */ sw $t8, ($s0) -/* 078918 80077D18 01DFC825 */ or $t9, $t6, $ra -/* 07891C 80077D1C 3C0F0100 */ lui $t7, 0x100 -/* 078920 80077D20 AC6F0004 */ sw $t7, 4($v1) -/* 078924 80077D24 AC790000 */ sw $t9, ($v1) -/* 078928 80077D28 8FB800A8 */ lw $t8, 0xa8($sp) -/* 07892C 80077D2C 00002025 */ move $a0, $zero -/* 078930 80077D30 130000BC */ beqz $t8, .L80078024 -/* 078934 80077D34 00000000 */ nop -/* 078938 80077D38 AFAC0098 */ sw $t4, 0x98($sp) -/* 07893C 80077D3C 0C019A44 */ jal func_80066910 -/* 078940 80077D40 AFAD0094 */ sw $t5, 0x94($sp) -/* 078944 80077D44 8FAC0098 */ lw $t4, 0x98($sp) -/* 078948 80077D48 8FAD0094 */ lw $t5, 0x94($sp) -/* 07894C 80077D4C 10400079 */ beqz $v0, .L80077F34 -/* 078950 80077D50 3C07F700 */ lui $a3, 0xf700 -/* 078954 80077D54 3C0E800E */ lui $t6, %hi(D_800DE4CC) # $t6, 0x800e -/* 078958 80077D58 8DCEE4CC */ lw $t6, %lo(D_800DE4CC)($t6) -/* 07895C 80077D5C 3C19800E */ lui $t9, %hi(D_800DE4C4) # $t9, 0x800e -/* 078960 80077D60 11C00005 */ beqz $t6, .L80077D78 -/* 078964 80077D64 00000000 */ nop -/* 078968 80077D68 0C01E1FF */ jal func_800787FC -/* 07896C 80077D6C 02002025 */ move $a0, $s0 -/* 078970 80077D70 10000026 */ b .L80077E0C -/* 078974 80077D74 27AF0084 */ addiu $t7, $sp, 0x84 -.L80077D78: -/* 078978 80077D78 8F39E4C4 */ lw $t9, %lo(D_800DE4C4)($t9) -/* 07897C 80077D7C 3C02800E */ lui $v0, %hi(D_800DE4D0) # $v0, 0x800e -/* 078980 80077D80 13200005 */ beqz $t9, .L80077D98 -/* 078984 80077D84 00000000 */ nop -/* 078988 80077D88 0C01E064 */ jal func_80078190 -/* 07898C 80077D8C 02002025 */ move $a0, $s0 -/* 078990 80077D90 1000001E */ b .L80077E0C -/* 078994 80077D94 27AF0084 */ addiu $t7, $sp, 0x84 -.L80077D98: -/* 078998 80077D98 8C42E4D0 */ lw $v0, %lo(D_800DE4D0)($v0) -/* 07899C 80077D9C 3C18800E */ lui $t8, %hi(D_800DE4BC) # $t8, 0x800e -/* 0789A0 80077DA0 10400006 */ beqz $v0, .L80077DBC -/* 0789A4 80077DA4 2599FFFF */ addiu $t9, $t4, -1 -/* 0789A8 80077DA8 8FA500A4 */ lw $a1, 0xa4($sp) -/* 0789AC 80077DAC 0040F809 */ jalr $v0 -/* 0789B0 80077DB0 02002025 */ move $a0, $s0 -/* 0789B4 80077DB4 10000015 */ b .L80077E0C -/* 0789B8 80077DB8 27AF0084 */ addiu $t7, $sp, 0x84 -.L80077DBC: -/* 0789BC 80077DBC 8E030000 */ lw $v1, ($s0) -/* 0789C0 80077DC0 3C01F600 */ lui $at, 0xf600 -/* 0789C4 80077DC4 246F0008 */ addiu $t7, $v1, 8 -/* 0789C8 80077DC8 AE0F0000 */ sw $t7, ($s0) -/* 0789CC 80077DCC AC670000 */ sw $a3, ($v1) -/* 0789D0 80077DD0 8F18E4BC */ lw $t8, %lo(D_800DE4BC)($t8) -/* 0789D4 80077DD4 332F03FF */ andi $t7, $t9, 0x3ff -/* 0789D8 80077DD8 AC780004 */ sw $t8, 4($v1) -/* 0789DC 80077DDC 8E030000 */ lw $v1, ($s0) -/* 0789E0 80077DE0 000FC380 */ sll $t8, $t7, 0xe -/* 0789E4 80077DE4 246E0008 */ addiu $t6, $v1, 8 -/* 0789E8 80077DE8 AE0E0000 */ sw $t6, ($s0) -/* 0789EC 80077DEC 25B9FFFF */ addiu $t9, $t5, -1 -/* 0789F0 80077DF0 332F03FF */ andi $t7, $t9, 0x3ff -/* 0789F4 80077DF4 03017025 */ or $t6, $t8, $at -/* 0789F8 80077DF8 000FC080 */ sll $t8, $t7, 2 -/* 0789FC 80077DFC 01D8C825 */ or $t9, $t6, $t8 -/* 078A00 80077E00 AC790000 */ sw $t9, ($v1) -/* 078A04 80077E04 AC600004 */ sw $zero, 4($v1) -/* 078A08 80077E08 27AF0084 */ addiu $t7, $sp, 0x84 -.L80077E0C: -/* 078A0C 80077E0C AFAF0010 */ sw $t7, 0x10($sp) -/* 078A10 80077E10 00002025 */ move $a0, $zero -/* 078A14 80077E14 27A50090 */ addiu $a1, $sp, 0x90 -/* 078A18 80077E18 27A6008C */ addiu $a2, $sp, 0x8c -/* 078A1C 80077E1C 0C019AEA */ jal func_80066BA8 -/* 078A20 80077E20 27A70088 */ addiu $a3, $sp, 0x88 -/* 078A24 80077E24 1040007F */ beqz $v0, .L80078024 -/* 078A28 80077E28 3C18BA00 */ lui $t8, (0xBA001402 >> 16) # lui $t8, 0xba00 -/* 078A2C 80077E2C 8E030000 */ lw $v1, ($s0) -/* 078A30 80077E30 37181402 */ ori $t8, (0xBA001402 & 0xFFFF) # ori $t8, $t8, 0x1402 -/* 078A34 80077E34 246E0008 */ addiu $t6, $v1, 8 -/* 078A38 80077E38 AE0E0000 */ sw $t6, ($s0) -/* 078A3C 80077E3C AC600004 */ sw $zero, 4($v1) -/* 078A40 80077E40 AC780000 */ sw $t8, ($v1) -/* 078A44 80077E44 8E030000 */ lw $v1, ($s0) -/* 078A48 80077E48 3C0FFA00 */ lui $t7, 0xfa00 -/* 078A4C 80077E4C 24790008 */ addiu $t9, $v1, 8 -/* 078A50 80077E50 AE190000 */ sw $t9, ($s0) -/* 078A54 80077E54 3C0E800E */ lui $t6, %hi(D_800DE4B0) # $t6, 0x800e -/* 078A58 80077E58 AC6F0000 */ sw $t7, ($v1) -/* 078A5C 80077E5C 91D8E4B0 */ lbu $t8, %lo(D_800DE4B0)($t6) -/* 078A60 80077E60 3C0F800E */ lui $t7, %hi(D_800DE4B4) # $t7, 0x800e -/* 078A64 80077E64 91EEE4B4 */ lbu $t6, %lo(D_800DE4B4)($t7) -/* 078A68 80077E68 0018CE00 */ sll $t9, $t8, 0x18 -/* 078A6C 80077E6C 000EC400 */ sll $t8, $t6, 0x10 -/* 078A70 80077E70 03387825 */ or $t7, $t9, $t8 -/* 078A74 80077E74 3C0E800E */ lui $t6, %hi(D_800DE4B8) # $t6, 0x800e -/* 078A78 80077E78 91D9E4B8 */ lbu $t9, %lo(D_800DE4B8)($t6) -/* 078A7C 80077E7C 3C01F600 */ lui $at, 0xf600 -/* 078A80 80077E80 0019C200 */ sll $t8, $t9, 8 -/* 078A84 80077E84 01F87025 */ or $t6, $t7, $t8 -/* 078A88 80077E88 35D900FF */ ori $t9, $t6, 0xff -/* 078A8C 80077E8C AC790004 */ sw $t9, 4($v1) -/* 078A90 80077E90 8E030000 */ lw $v1, ($s0) -/* 078A94 80077E94 3C0EFFFD */ lui $t6, (0xFFFDF6FB >> 16) # lui $t6, 0xfffd -/* 078A98 80077E98 246F0008 */ addiu $t7, $v1, 8 -/* 078A9C 80077E9C AE0F0000 */ sw $t7, ($s0) -/* 078AA0 80077EA0 3C18FCFF */ lui $t8, (0xFCFFFFFF >> 16) # lui $t8, 0xfcff -/* 078AA4 80077EA4 3718FFFF */ ori $t8, (0xFCFFFFFF & 0xFFFF) # ori $t8, $t8, 0xffff -/* 078AA8 80077EA8 35CEF6FB */ ori $t6, (0xFFFDF6FB & 0xFFFF) # ori $t6, $t6, 0xf6fb -/* 078AAC 80077EAC AC6E0004 */ sw $t6, 4($v1) -/* 078AB0 80077EB0 AC780000 */ sw $t8, ($v1) -/* 078AB4 80077EB4 8E030000 */ lw $v1, ($s0) -/* 078AB8 80077EB8 3C180F0A */ lui $t8, (0x0F0A4000 >> 16) # lui $t8, 0xf0a -/* 078ABC 80077EBC 24790008 */ addiu $t9, $v1, 8 -/* 078AC0 80077EC0 AE190000 */ sw $t9, ($s0) -/* 078AC4 80077EC4 3C0FB900 */ lui $t7, (0xB900031D >> 16) # lui $t7, 0xb900 -/* 078AC8 80077EC8 35EF031D */ ori $t7, (0xB900031D & 0xFFFF) # ori $t7, $t7, 0x31d -/* 078ACC 80077ECC 37184000 */ ori $t8, (0x0F0A4000 & 0xFFFF) # ori $t8, $t8, 0x4000 -/* 078AD0 80077ED0 AC780004 */ sw $t8, 4($v1) -/* 078AD4 80077ED4 AC6F0000 */ sw $t7, ($v1) -/* 078AD8 80077ED8 8E030000 */ lw $v1, ($s0) -/* 078ADC 80077EDC 00000000 */ nop -/* 078AE0 80077EE0 246E0008 */ addiu $t6, $v1, 8 -/* 078AE4 80077EE4 AE0E0000 */ sw $t6, ($s0) -/* 078AE8 80077EE8 8FB90088 */ lw $t9, 0x88($sp) -/* 078AEC 80077EEC 00000000 */ nop -/* 078AF0 80077EF0 332F03FF */ andi $t7, $t9, 0x3ff -/* 078AF4 80077EF4 8FB90084 */ lw $t9, 0x84($sp) -/* 078AF8 80077EF8 000FC380 */ sll $t8, $t7, 0xe -/* 078AFC 80077EFC 03017025 */ or $t6, $t8, $at -/* 078B00 80077F00 332F03FF */ andi $t7, $t9, 0x3ff -/* 078B04 80077F04 000FC080 */ sll $t8, $t7, 2 -/* 078B08 80077F08 01D8C825 */ or $t9, $t6, $t8 -/* 078B0C 80077F0C AC790000 */ sw $t9, ($v1) -/* 078B10 80077F10 8FAF0090 */ lw $t7, 0x90($sp) -/* 078B14 80077F14 8FB9008C */ lw $t9, 0x8c($sp) -/* 078B18 80077F18 31EE03FF */ andi $t6, $t7, 0x3ff -/* 078B1C 80077F1C 000EC380 */ sll $t8, $t6, 0xe -/* 078B20 80077F20 332F03FF */ andi $t7, $t9, 0x3ff -/* 078B24 80077F24 000F7080 */ sll $t6, $t7, 2 -/* 078B28 80077F28 030EC825 */ or $t9, $t8, $t6 -/* 078B2C 80077F2C 1000003D */ b .L80078024 -/* 078B30 80077F30 AC790004 */ sw $t9, 4($v1) -.L80077F34: -/* 078B34 80077F34 3C0F800E */ lui $t7, %hi(D_800DE4CC) # $t7, 0x800e -/* 078B38 80077F38 8DEFE4CC */ lw $t7, %lo(D_800DE4CC)($t7) -/* 078B3C 80077F3C 3C18800E */ lui $t8, %hi(D_800DE4C4) # $t8, 0x800e -/* 078B40 80077F40 11E00005 */ beqz $t7, .L80077F58 -/* 078B44 80077F44 00000000 */ nop -/* 078B48 80077F48 0C01E1FF */ jal func_800787FC -/* 078B4C 80077F4C 02002025 */ move $a0, $s0 -/* 078B50 80077F50 10000035 */ b .L80078028 -/* 078B54 80077F54 8E030000 */ lw $v1, ($s0) -.L80077F58: -/* 078B58 80077F58 8F18E4C4 */ lw $t8, %lo(D_800DE4C4)($t8) -/* 078B5C 80077F5C 3C02800E */ lui $v0, %hi(D_800DE4D0) # $v0, 0x800e -/* 078B60 80077F60 13000005 */ beqz $t8, .L80077F78 -/* 078B64 80077F64 00000000 */ nop -/* 078B68 80077F68 0C01E064 */ jal func_80078190 -/* 078B6C 80077F6C 02002025 */ move $a0, $s0 -/* 078B70 80077F70 1000002D */ b .L80078028 -/* 078B74 80077F74 8E030000 */ lw $v1, ($s0) -.L80077F78: -/* 078B78 80077F78 8C42E4D0 */ lw $v0, %lo(D_800DE4D0)($v0) -/* 078B7C 80077F7C 8FA500A4 */ lw $a1, 0xa4($sp) -/* 078B80 80077F80 10400005 */ beqz $v0, .L80077F98 -/* 078B84 80077F84 3C19800E */ lui $t9, %hi(D_800DE4B0) # $t9, 0x800e -/* 078B88 80077F88 0040F809 */ jalr $v0 -/* 078B8C 80077F8C 02002025 */ move $a0, $s0 -/* 078B90 80077F90 10000025 */ b .L80078028 -/* 078B94 80077F94 8E030000 */ lw $v1, ($s0) -.L80077F98: -/* 078B98 80077F98 8E030000 */ lw $v1, ($s0) -/* 078B9C 80077F9C 3C01F600 */ lui $at, 0xf600 -/* 078BA0 80077FA0 246E0008 */ addiu $t6, $v1, 8 -/* 078BA4 80077FA4 AE0E0000 */ sw $t6, ($s0) -/* 078BA8 80077FA8 AC670000 */ sw $a3, ($v1) -/* 078BAC 80077FAC 9339E4B0 */ lbu $t9, %lo(D_800DE4B0)($t9) -/* 078BB0 80077FB0 3C0E800E */ lui $t6, %hi(D_800DE4B4) # $t6, 0x800e -/* 078BB4 80077FB4 91CEE4B4 */ lbu $t6, %lo(D_800DE4B4)($t6) -/* 078BB8 80077FB8 00197A00 */ sll $t7, $t9, 8 -/* 078BBC 80077FBC 31F8F800 */ andi $t8, $t7, 0xf800 -/* 078BC0 80077FC0 000EC8C0 */ sll $t9, $t6, 3 -/* 078BC4 80077FC4 332F07C0 */ andi $t7, $t9, 0x7c0 -/* 078BC8 80077FC8 3C19800E */ lui $t9, %hi(D_800DE4B8) # $t9, 0x800e -/* 078BCC 80077FCC 9339E4B8 */ lbu $t9, %lo(D_800DE4B8)($t9) -/* 078BD0 80077FD0 030F7025 */ or $t6, $t8, $t7 -/* 078BD4 80077FD4 0019C083 */ sra $t8, $t9, 2 -/* 078BD8 80077FD8 330F003E */ andi $t7, $t8, 0x3e -/* 078BDC 80077FDC 01CF2025 */ or $a0, $t6, $t7 -/* 078BE0 80077FE0 34990001 */ ori $t9, $a0, 1 -/* 078BE4 80077FE4 0019C400 */ sll $t8, $t9, 0x10 -/* 078BE8 80077FE8 03197025 */ or $t6, $t8, $t9 -/* 078BEC 80077FEC AC6E0004 */ sw $t6, 4($v1) -/* 078BF0 80077FF0 8E030000 */ lw $v1, ($s0) -/* 078BF4 80077FF4 2599FFFF */ addiu $t9, $t4, -1 -/* 078BF8 80077FF8 333803FF */ andi $t8, $t9, 0x3ff -/* 078BFC 80077FFC 00187380 */ sll $t6, $t8, 0xe -/* 078C00 80078000 246F0008 */ addiu $t7, $v1, 8 -/* 078C04 80078004 AE0F0000 */ sw $t7, ($s0) -/* 078C08 80078008 25B9FFFF */ addiu $t9, $t5, -1 -/* 078C0C 8007800C 333803FF */ andi $t8, $t9, 0x3ff -/* 078C10 80078010 01C17825 */ or $t7, $t6, $at -/* 078C14 80078014 00187080 */ sll $t6, $t8, 2 -/* 078C18 80078018 01EEC825 */ or $t9, $t7, $t6 -/* 078C1C 8007801C AC790000 */ sw $t9, ($v1) -/* 078C20 80078020 AC600004 */ sw $zero, 4($v1) -.L80078024: -/* 078C24 80078024 8E030000 */ lw $v1, ($s0) -.L80078028: -/* 078C28 80078028 3C0FE700 */ lui $t7, 0xe700 -/* 078C2C 8007802C 24780008 */ addiu $t8, $v1, 8 -/* 078C30 80078030 AE180000 */ sw $t8, ($s0) -/* 078C34 80078034 02002025 */ move $a0, $s0 -/* 078C38 80078038 AC600004 */ sw $zero, 4($v1) -/* 078C3C 8007803C 0C019E8F */ jal func_80067A3C -/* 078C40 80078040 AC6F0000 */ sw $t7, ($v1) -/* 078C44 80078044 8FBF0024 */ lw $ra, 0x24($sp) -/* 078C48 80078048 8FB00020 */ lw $s0, 0x20($sp) -/* 078C4C 8007804C 03E00008 */ jr $ra -/* 078C50 80078050 27BD00A0 */ addiu $sp, $sp, 0xa0 - -glabel func_80078054 -/* 078C54 80078054 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 078C58 80078058 AFBF0014 */ sw $ra, 0x14($sp) -/* 078C5C 8007805C 0C01E948 */ jal func_8007A520 -/* 078C60 80078060 AFA40018 */ sw $a0, 0x18($sp) -/* 078C64 80078064 8FA50018 */ lw $a1, 0x18($sp) -/* 078C68 80078068 2458FFFF */ addiu $t8, $v0, -1 -/* 078C6C 8007806C 8CA30000 */ lw $v1, ($a1) -/* 078C70 80078070 33190FFF */ andi $t9, $t8, 0xfff -/* 078C74 80078074 246E0008 */ addiu $t6, $v1, 8 -/* 078C78 80078078 3C01FF10 */ lui $at, 0xff10 -/* 078C7C 8007807C ACAE0000 */ sw $t6, ($a1) -/* 078C80 80078080 03214025 */ or $t0, $t9, $at -/* 078C84 80078084 3C090100 */ lui $t1, 0x100 -/* 078C88 80078088 AC690004 */ sw $t1, 4($v1) -/* 078C8C 8007808C AC680000 */ sw $t0, ($v1) -/* 078C90 80078090 8CA30000 */ lw $v1, ($a1) -/* 078C94 80078094 3C0BFE00 */ lui $t3, 0xfe00 -/* 078C98 80078098 246A0008 */ addiu $t2, $v1, 8 -/* 078C9C 8007809C ACAA0000 */ sw $t2, ($a1) -/* 078CA0 800780A0 3C0C0200 */ lui $t4, 0x200 -/* 078CA4 800780A4 AC6C0004 */ sw $t4, 4($v1) -/* 078CA8 800780A8 AC6B0000 */ sw $t3, ($v1) -/* 078CAC 800780AC 8CA30000 */ lw $v1, ($a1) -/* 078CB0 800780B0 3C0F800E */ lui $t7, %hi(D_800DE520) # $t7, 0x800e -/* 078CB4 800780B4 246D0008 */ addiu $t5, $v1, 8 -/* 078CB8 800780B8 ACAD0000 */ sw $t5, ($a1) -/* 078CBC 800780BC 25EFE520 */ addiu $t7, %lo(D_800DE520) # addiu $t7, $t7, -0x1ae0 -/* 078CC0 800780C0 3C0E0600 */ lui $t6, 0x600 -/* 078CC4 800780C4 AC6E0000 */ sw $t6, ($v1) -/* 078CC8 800780C8 AC6F0004 */ sw $t7, 4($v1) -/* 078CCC 800780CC 8FBF0014 */ lw $ra, 0x14($sp) -/* 078CD0 800780D0 27BD0018 */ addiu $sp, $sp, 0x18 -/* 078CD4 800780D4 03E00008 */ jr $ra -/* 078CD8 800780D8 00000000 */ nop - -glabel func_800780DC -/* 078CDC 800780DC 8C830000 */ lw $v1, ($a0) -/* 078CE0 800780E0 3C18800E */ lui $t8, %hi(D_800DE4E0) # $t8, 0x800e -/* 078CE4 800780E4 246E0008 */ addiu $t6, $v1, 8 -/* 078CE8 800780E8 AC8E0000 */ sw $t6, ($a0) -/* 078CEC 800780EC 2718E4E0 */ addiu $t8, %lo(D_800DE4E0) # addiu $t8, $t8, -0x1b20 -/* 078CF0 800780F0 3C0F0600 */ lui $t7, 0x600 -/* 078CF4 800780F4 AC6F0000 */ sw $t7, ($v1) -/* 078CF8 800780F8 03E00008 */ jr $ra -/* 078CFC 800780FC AC780004 */ sw $t8, 4($v1) - -glabel func_80078100 -/* 078D00 80078100 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 078D04 80078104 AFBF0014 */ sw $ra, 0x14($sp) -/* 078D08 80078108 0C01E55F */ jal func_8007957C -/* 078D0C 8007810C 00000000 */ nop -/* 078D10 80078110 3C018012 */ lui $at, %hi(D_80126100) # $at, 0x8012 -/* 078D14 80078114 3C048012 */ lui $a0, %hi(D_80125EA0) # $a0, 0x8012 -/* 078D18 80078118 3C058012 */ lui $a1, %hi(D_80125EB8) # $a1, 0x8012 -/* 078D1C 8007811C AC226100 */ sw $v0, %lo(D_80126100)($at) -/* 078D20 80078120 24A55EB8 */ addiu $a1, %lo(D_80125EB8) # addiu $a1, $a1, 0x5eb8 -/* 078D24 80078124 24845EA0 */ addiu $a0, %lo(D_80125EA0) # addiu $a0, $a0, 0x5ea0 -/* 078D28 80078128 0C032208 */ jal osCreateMesgQueue -/* 078D2C 8007812C 24060001 */ li $a2, 1 -/* 078D30 80078130 3C048012 */ lui $a0, %hi(D_80125EC0) # $a0, 0x8012 -/* 078D34 80078134 3C058012 */ lui $a1, %hi(D_80125EF0) # $a1, 0x8012 -/* 078D38 80078138 24A55EF0 */ addiu $a1, %lo(D_80125EF0) # addiu $a1, $a1, 0x5ef0 -/* 078D3C 8007813C 24845EC0 */ addiu $a0, %lo(D_80125EC0) # addiu $a0, $a0, 0x5ec0 -/* 078D40 80078140 0C032208 */ jal osCreateMesgQueue -/* 078D44 80078144 24060008 */ li $a2, 8 -/* 078D48 80078148 3C048012 */ lui $a0, %hi(D_80125ED8) # $a0, 0x8012 -/* 078D4C 8007814C 3C058012 */ lui $a1, %hi(D_80125F10) # $a1, 0x8012 -/* 078D50 80078150 24A55F10 */ addiu $a1, %lo(D_80125F10) # addiu $a1, $a1, 0x5f10 -/* 078D54 80078154 24845ED8 */ addiu $a0, %lo(D_80125ED8) # addiu $a0, $a0, 0x5ed8 -/* 078D58 80078158 0C032208 */ jal osCreateMesgQueue -/* 078D5C 8007815C 24060008 */ li $a2, 8 -/* 078D60 80078160 8FBF0014 */ lw $ra, 0x14($sp) -/* 078D64 80078164 27BD0018 */ addiu $sp, $sp, 0x18 -/* 078D68 80078168 03E00008 */ jr $ra -/* 078D6C 8007816C 00000000 */ nop - -glabel func_80078170 -/* 078D70 80078170 3C01800E */ lui $at, %hi(D_800DE4C4) # $at, 0x800e -/* 078D74 80078174 AC24E4C4 */ sw $a0, %lo(D_800DE4C4)($at) -/* 078D78 80078178 3C01800E */ lui $at, %hi(D_800DE4C8) # $at, 0x800e -/* 078D7C 8007817C AC25E4C8 */ sw $a1, %lo(D_800DE4C8)($at) -/* 078D80 80078180 3C01800E */ lui $at, 0x800e -/* 078D84 80078184 00067080 */ sll $t6, $a2, 2 -/* 078D88 80078188 03E00008 */ jr $ra -/* 078D8C 8007818C AC2EE4C0 */ sw $t6, -0x1b40($at) - -glabel func_80078190 -/* 078D90 80078190 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 078D94 80078194 AFBF003C */ sw $ra, 0x3c($sp) -/* 078D98 80078198 AFBE0038 */ sw $fp, 0x38($sp) -/* 078D9C 8007819C AFB70034 */ sw $s7, 0x34($sp) -/* 078DA0 800781A0 AFB60030 */ sw $s6, 0x30($sp) -/* 078DA4 800781A4 AFB5002C */ sw $s5, 0x2c($sp) -/* 078DA8 800781A8 AFB40028 */ sw $s4, 0x28($sp) -/* 078DAC 800781AC AFB30024 */ sw $s3, 0x24($sp) -/* 078DB0 800781B0 AFB20020 */ sw $s2, 0x20($sp) -/* 078DB4 800781B4 AFB1001C */ sw $s1, 0x1c($sp) -/* 078DB8 800781B8 AFB00018 */ sw $s0, 0x18($sp) -/* 078DBC 800781BC 0C01E948 */ jal func_8007A520 -/* 078DC0 800781C0 AFA40040 */ sw $a0, 0x40($sp) -/* 078DC4 800781C4 8FA40040 */ lw $a0, 0x40($sp) -/* 078DC8 800781C8 00024403 */ sra $t0, $v0, 0x10 -/* 078DCC 800781CC 8C830000 */ lw $v1, ($a0) -/* 078DD0 800781D0 3C19800E */ lui $t9, %hi(D_800DE598) # $t9, 0x800e -/* 078DD4 800781D4 246F0008 */ addiu $t7, $v1, 8 -/* 078DD8 800781D8 AC8F0000 */ sw $t7, ($a0) -/* 078DDC 800781DC 3C0A800E */ lui $t2, %hi(D_800DE4C8) # $t2, 0x800e -/* 078DE0 800781E0 310EFFFF */ andi $t6, $t0, 0xffff -/* 078DE4 800781E4 2739E598 */ addiu $t9, %lo(D_800DE598) # addiu $t9, $t9, -0x1a68 -/* 078DE8 800781E8 3C180600 */ lui $t8, 0x600 -/* 078DEC 800781EC 254AE4C8 */ addiu $t2, %lo(D_800DE4C8) # addiu $t2, $t2, -0x1b38 -/* 078DF0 800781F0 01C04025 */ move $t0, $t6 -/* 078DF4 800781F4 AC780000 */ sw $t8, ($v1) -/* 078DF8 800781F8 AC790004 */ sw $t9, 4($v1) -/* 078DFC 800781FC 8D4E0000 */ lw $t6, ($t2) -/* 078E00 80078200 3C09800E */ lui $t1, %hi(D_800DE4C4) # $t1, 0x800e -/* 078E04 80078204 15C00070 */ bnez $t6, .L800783C8 -/* 078E08 80078208 2529E4C4 */ addiu $t1, %lo(D_800DE4C4) # addiu $t1, $t1, -0x1b3c -/* 078E0C 8007820C 8C830000 */ lw $v1, ($a0) -/* 078E10 80078210 3C09800E */ lui $t1, %hi(D_800DE4C4) # $t1, 0x800e -/* 078E14 80078214 246F0008 */ addiu $t7, $v1, 8 -/* 078E18 80078218 2529E4C4 */ addiu $t1, %lo(D_800DE4C4) # addiu $t1, $t1, -0x1b3c -/* 078E1C 8007821C AC8F0000 */ sw $t7, ($a0) -/* 078E20 80078220 8D380000 */ lw $t8, ($t1) -/* 078E24 80078224 3C010700 */ lui $at, 0x700 -/* 078E28 80078228 8707000A */ lh $a3, 0xa($t8) -/* 078E2C 8007822C 3051FFFF */ andi $s1, $v0, 0xffff -/* 078E30 80078230 30F900FF */ andi $t9, $a3, 0xff -/* 078E34 80078234 00197400 */ sll $t6, $t9, 0x10 -/* 078E38 80078238 0007C0C0 */ sll $t8, $a3, 3 -/* 078E3C 8007823C 3319FFFF */ andi $t9, $t8, 0xffff -/* 078E40 80078240 01C17825 */ or $t7, $t6, $at -/* 078E44 80078244 01F97025 */ or $t6, $t7, $t9 -/* 078E48 80078248 AC6E0000 */ sw $t6, ($v1) -/* 078E4C 8007824C 8D380000 */ lw $t8, ($t1) -/* 078E50 80078250 3C018000 */ lui $at, 0x8000 -/* 078E54 80078254 8F0F000C */ lw $t7, 0xc($t8) -/* 078E58 80078258 00117080 */ sll $t6, $s1, 2 -/* 078E5C 8007825C 01E1C821 */ addu $t9, $t7, $at -/* 078E60 80078260 AC790004 */ sw $t9, 4($v1) -/* 078E64 80078264 8D260000 */ lw $a2, ($t1) -/* 078E68 80078268 0008B080 */ sll $s6, $t0, 2 -/* 078E6C 8007826C 90D00000 */ lbu $s0, ($a2) -/* 078E70 80078270 90D40001 */ lbu $s4, 1($a2) -/* 078E74 80078274 0010C080 */ sll $t8, $s0, 2 -/* 078E78 80078278 00147880 */ sll $t7, $s4, 2 -/* 078E7C 8007827C 01C08825 */ move $s1, $t6 -/* 078E80 80078280 03008025 */ move $s0, $t8 -/* 078E84 80078284 01E0A025 */ move $s4, $t7 -/* 078E88 80078288 00009825 */ move $s3, $zero -/* 078E8C 8007828C 1AC00128 */ blez $s6, .L80078730 -/* 078E90 80078290 00009025 */ move $s2, $zero -/* 078E94 80078294 3C17800E */ lui $s7, %hi(D_800DE4C0) # $s7, 0x800e -/* 078E98 80078298 3C1F0400 */ lui $ra, (0x04000400 >> 16) # lui $ra, 0x400 -/* 078E9C 8007829C 37FF0400 */ ori $ra, (0x04000400 & 0xFFFF) # ori $ra, $ra, 0x400 -/* 078EA0 800782A0 26F7E4C0 */ addiu $s7, %lo(D_800DE4C0) # addiu $s7, $s7, -0x1b40 -/* 078EA4 800782A4 2715FFFF */ addiu $s5, $t8, -1 -/* 078EA8 800782A8 3C0DB200 */ lui $t5, 0xb200 -/* 078EAC 800782AC 3C0CB300 */ lui $t4, 0xb300 -/* 078EB0 800782B0 3C0BE400 */ lui $t3, 0xe400 -.L800782B4: -/* 078EB4 800782B4 00131023 */ negu $v0, $s3 -/* 078EB8 800782B8 0051082A */ slt $at, $v0, $s1 -/* 078EBC 800782BC 1020003A */ beqz $at, .L800783A8 -/* 078EC0 800782C0 02544821 */ addu $t1, $s2, $s4 -/* 078EC4 800782C4 31390FFF */ andi $t9, $t1, 0xfff -/* 078EC8 800782C8 03204825 */ move $t1, $t9 -/* 078ECC 800782CC 324A0FFF */ andi $t2, $s2, 0xfff -.L800782D0: -/* 078ED0 800782D0 0441001A */ bgez $v0, .L8007833C -/* 078ED4 800782D4 00503021 */ addu $a2, $v0, $s0 -/* 078ED8 800782D8 8C830000 */ lw $v1, ($a0) -/* 078EDC 800782DC 00503021 */ addu $a2, $v0, $s0 -/* 078EE0 800782E0 30D80FFF */ andi $t8, $a2, 0xfff -/* 078EE4 800782E4 246E0008 */ addiu $t6, $v1, 8 -/* 078EE8 800782E8 AC8E0000 */ sw $t6, ($a0) -/* 078EEC 800782EC 00187B00 */ sll $t7, $t8, 0xc -/* 078EF0 800782F0 01EBC825 */ or $t9, $t7, $t3 -/* 078EF4 800782F4 03297025 */ or $t6, $t9, $t1 -/* 078EF8 800782F8 AC6E0000 */ sw $t6, ($v1) -/* 078EFC 800782FC AC6A0004 */ sw $t2, 4($v1) -/* 078F00 80078300 8C830000 */ lw $v1, ($a0) -/* 078F04 80078304 000278C0 */ sll $t7, $v0, 3 -/* 078F08 80078308 24780008 */ addiu $t8, $v1, 8 -/* 078F0C 8007830C AC980000 */ sw $t8, ($a0) -/* 078F10 80078310 000F7023 */ negu $t6, $t7 -/* 078F14 80078314 000EC400 */ sll $t8, $t6, 0x10 -/* 078F18 80078318 AC780004 */ sw $t8, 4($v1) -/* 078F1C 8007831C AC6C0000 */ sw $t4, ($v1) -/* 078F20 80078320 8C830000 */ lw $v1, ($a0) -/* 078F24 80078324 00000000 */ nop -/* 078F28 80078328 246F0008 */ addiu $t7, $v1, 8 -/* 078F2C 8007832C AC8F0000 */ sw $t7, ($a0) -/* 078F30 80078330 AC7F0004 */ sw $ra, 4($v1) -/* 078F34 80078334 10000019 */ b .L8007839C -/* 078F38 80078338 AC6D0000 */ sw $t5, ($v1) -.L8007833C: -/* 078F3C 8007833C 8C830000 */ lw $v1, ($a0) -/* 078F40 80078340 30CE0FFF */ andi $t6, $a2, 0xfff -/* 078F44 80078344 000EC300 */ sll $t8, $t6, 0xc -/* 078F48 80078348 030B7825 */ or $t7, $t8, $t3 -/* 078F4C 8007834C 24790008 */ addiu $t9, $v1, 8 -/* 078F50 80078350 AC990000 */ sw $t9, ($a0) -/* 078F54 80078354 304E0FFF */ andi $t6, $v0, 0xfff -/* 078F58 80078358 000EC300 */ sll $t8, $t6, 0xc -/* 078F5C 8007835C 01E9C825 */ or $t9, $t7, $t1 -/* 078F60 80078360 030A7825 */ or $t7, $t8, $t2 -/* 078F64 80078364 AC6F0004 */ sw $t7, 4($v1) -/* 078F68 80078368 AC790000 */ sw $t9, ($v1) -/* 078F6C 8007836C 8C830000 */ lw $v1, ($a0) -/* 078F70 80078370 00000000 */ nop -/* 078F74 80078374 24790008 */ addiu $t9, $v1, 8 -/* 078F78 80078378 AC990000 */ sw $t9, ($a0) -/* 078F7C 8007837C AC600004 */ sw $zero, 4($v1) -/* 078F80 80078380 AC6C0000 */ sw $t4, ($v1) -/* 078F84 80078384 8C830000 */ lw $v1, ($a0) -/* 078F88 80078388 00000000 */ nop -/* 078F8C 8007838C 246E0008 */ addiu $t6, $v1, 8 -/* 078F90 80078390 AC8E0000 */ sw $t6, ($a0) -/* 078F94 80078394 AC7F0004 */ sw $ra, 4($v1) -/* 078F98 80078398 AC6D0000 */ sw $t5, ($v1) -.L8007839C: -/* 078F9C 8007839C 00D1082A */ slt $at, $a2, $s1 -/* 078FA0 800783A0 1420FFCB */ bnez $at, .L800782D0 -/* 078FA4 800783A4 00C01025 */ move $v0, $a2 -.L800783A8: -/* 078FA8 800783A8 8EF80000 */ lw $t8, ($s7) -/* 078FAC 800783AC 02549021 */ addu $s2, $s2, $s4 -/* 078FB0 800783B0 0256082A */ slt $at, $s2, $s6 -/* 078FB4 800783B4 02787821 */ addu $t7, $s3, $t8 -/* 078FB8 800783B8 1420FFBE */ bnez $at, .L800782B4 -/* 078FBC 800783BC 01F59824 */ and $s3, $t7, $s5 -/* 078FC0 800783C0 100000DC */ b .L80078734 -/* 078FC4 800783C4 8C830000 */ lw $v1, ($a0) -.L800783C8: -/* 078FC8 800783C8 8C830000 */ lw $v1, ($a0) -/* 078FCC 800783CC 3C010700 */ lui $at, 0x700 -/* 078FD0 800783D0 24790008 */ addiu $t9, $v1, 8 -/* 078FD4 800783D4 AC990000 */ sw $t9, ($a0) -/* 078FD8 800783D8 8D2E0000 */ lw $t6, ($t1) -/* 078FDC 800783DC 3051FFFF */ andi $s1, $v0, 0xffff -/* 078FE0 800783E0 85C7000A */ lh $a3, 0xa($t6) -/* 078FE4 800783E4 0008B080 */ sll $s6, $t0, 2 -/* 078FE8 800783E8 30F800FF */ andi $t8, $a3, 0xff -/* 078FEC 800783EC 00187C00 */ sll $t7, $t8, 0x10 -/* 078FF0 800783F0 000770C0 */ sll $t6, $a3, 3 -/* 078FF4 800783F4 31D8FFFF */ andi $t8, $t6, 0xffff -/* 078FF8 800783F8 01E1C825 */ or $t9, $t7, $at -/* 078FFC 800783FC 03387825 */ or $t7, $t9, $t8 -/* 079000 80078400 AC6F0000 */ sw $t7, ($v1) -/* 079004 80078404 8D2E0000 */ lw $t6, ($t1) -/* 079008 80078408 3C018000 */ lui $at, 0x8000 -/* 07900C 8007840C 8DD9000C */ lw $t9, 0xc($t6) -/* 079010 80078410 00117880 */ sll $t7, $s1, 2 -/* 079014 80078414 0321C021 */ addu $t8, $t9, $at -/* 079018 80078418 AC780004 */ sw $t8, 4($v1) -/* 07901C 8007841C 8D260000 */ lw $a2, ($t1) -/* 079020 80078420 8D580000 */ lw $t8, ($t2) -/* 079024 80078424 90D00000 */ lbu $s0, ($a2) -/* 079028 80078428 01E08825 */ move $s1, $t7 -/* 07902C 8007842C 90D40001 */ lbu $s4, 1($a2) -/* 079030 80078430 930F0001 */ lbu $t7, 1($t8) -/* 079034 80078434 00107080 */ sll $t6, $s0, 2 -/* 079038 80078438 01C08025 */ move $s0, $t6 -/* 07903C 8007843C 0014C880 */ sll $t9, $s4, 2 -/* 079040 80078440 000F7080 */ sll $t6, $t7, 2 -/* 079044 80078444 00009025 */ move $s2, $zero -/* 079048 80078448 0320A025 */ move $s4, $t9 -/* 07904C 8007844C 01D9F021 */ addu $fp, $t6, $t9 -/* 079050 80078450 1AC0004D */ blez $s6, .L80078588 -/* 079054 80078454 00009825 */ move $s3, $zero -/* 079058 80078458 3C17800E */ lui $s7, %hi(D_800DE4C0) # $s7, 0x800e -/* 07905C 8007845C 3C1F0400 */ lui $ra, (0x04000400 >> 16) # lui $ra, 0x400 -/* 079060 80078460 37FF0400 */ ori $ra, (0x04000400 & 0xFFFF) # ori $ra, $ra, 0x400 -/* 079064 80078464 26F7E4C0 */ addiu $s7, %lo(D_800DE4C0) # addiu $s7, $s7, -0x1b40 -/* 079068 80078468 2615FFFF */ addiu $s5, $s0, -1 -/* 07906C 8007846C 3C0DB200 */ lui $t5, 0xb200 -/* 079070 80078470 3C0CB300 */ lui $t4, 0xb300 -/* 079074 80078474 3C0BE400 */ lui $t3, 0xe400 -.L80078478: -/* 079078 80078478 00131023 */ negu $v0, $s3 -/* 07907C 8007847C 0051082A */ slt $at, $v0, $s1 -/* 079080 80078480 1020003A */ beqz $at, .L8007856C -/* 079084 80078484 02544821 */ addu $t1, $s2, $s4 -/* 079088 80078488 31390FFF */ andi $t9, $t1, 0xfff -/* 07908C 8007848C 03204825 */ move $t1, $t9 -/* 079090 80078490 324A0FFF */ andi $t2, $s2, 0xfff -.L80078494: -/* 079094 80078494 0441001A */ bgez $v0, .L80078500 -/* 079098 80078498 00503021 */ addu $a2, $v0, $s0 -/* 07909C 8007849C 8C830000 */ lw $v1, ($a0) -/* 0790A0 800784A0 00503021 */ addu $a2, $v0, $s0 -/* 0790A4 800784A4 30CF0FFF */ andi $t7, $a2, 0xfff -/* 0790A8 800784A8 24780008 */ addiu $t8, $v1, 8 -/* 0790AC 800784AC AC980000 */ sw $t8, ($a0) -/* 0790B0 800784B0 000F7300 */ sll $t6, $t7, 0xc -/* 0790B4 800784B4 01CBC825 */ or $t9, $t6, $t3 -/* 0790B8 800784B8 0329C025 */ or $t8, $t9, $t1 -/* 0790BC 800784BC AC780000 */ sw $t8, ($v1) -/* 0790C0 800784C0 AC6A0004 */ sw $t2, 4($v1) -/* 0790C4 800784C4 8C830000 */ lw $v1, ($a0) -/* 0790C8 800784C8 000270C0 */ sll $t6, $v0, 3 -/* 0790CC 800784CC 246F0008 */ addiu $t7, $v1, 8 -/* 0790D0 800784D0 AC8F0000 */ sw $t7, ($a0) -/* 0790D4 800784D4 000EC023 */ negu $t8, $t6 -/* 0790D8 800784D8 00187C00 */ sll $t7, $t8, 0x10 -/* 0790DC 800784DC AC6F0004 */ sw $t7, 4($v1) -/* 0790E0 800784E0 AC6C0000 */ sw $t4, ($v1) -/* 0790E4 800784E4 8C830000 */ lw $v1, ($a0) -/* 0790E8 800784E8 00000000 */ nop -/* 0790EC 800784EC 246E0008 */ addiu $t6, $v1, 8 -/* 0790F0 800784F0 AC8E0000 */ sw $t6, ($a0) -/* 0790F4 800784F4 AC7F0004 */ sw $ra, 4($v1) -/* 0790F8 800784F8 10000019 */ b .L80078560 -/* 0790FC 800784FC AC6D0000 */ sw $t5, ($v1) -.L80078500: -/* 079100 80078500 8C830000 */ lw $v1, ($a0) -/* 079104 80078504 30D80FFF */ andi $t8, $a2, 0xfff -/* 079108 80078508 00187B00 */ sll $t7, $t8, 0xc -/* 07910C 8007850C 01EB7025 */ or $t6, $t7, $t3 -/* 079110 80078510 24790008 */ addiu $t9, $v1, 8 -/* 079114 80078514 AC990000 */ sw $t9, ($a0) -/* 079118 80078518 30580FFF */ andi $t8, $v0, 0xfff -/* 07911C 8007851C 00187B00 */ sll $t7, $t8, 0xc -/* 079120 80078520 01C9C825 */ or $t9, $t6, $t1 -/* 079124 80078524 01EA7025 */ or $t6, $t7, $t2 -/* 079128 80078528 AC6E0004 */ sw $t6, 4($v1) -/* 07912C 8007852C AC790000 */ sw $t9, ($v1) -/* 079130 80078530 8C830000 */ lw $v1, ($a0) -/* 079134 80078534 00000000 */ nop -/* 079138 80078538 24790008 */ addiu $t9, $v1, 8 -/* 07913C 8007853C AC990000 */ sw $t9, ($a0) -/* 079140 80078540 AC600004 */ sw $zero, 4($v1) -/* 079144 80078544 AC6C0000 */ sw $t4, ($v1) -/* 079148 80078548 8C830000 */ lw $v1, ($a0) -/* 07914C 8007854C 00000000 */ nop -/* 079150 80078550 24780008 */ addiu $t8, $v1, 8 -/* 079154 80078554 AC980000 */ sw $t8, ($a0) -/* 079158 80078558 AC7F0004 */ sw $ra, 4($v1) -/* 07915C 8007855C AC6D0000 */ sw $t5, ($v1) -.L80078560: -/* 079160 80078560 00D1082A */ slt $at, $a2, $s1 -/* 079164 80078564 1420FFCB */ bnez $at, .L80078494 -/* 079168 80078568 00C01025 */ move $v0, $a2 -.L8007856C: -/* 07916C 8007856C 8EEF0000 */ lw $t7, ($s7) -/* 079170 80078570 025E9021 */ addu $s2, $s2, $fp -/* 079174 80078574 0256082A */ slt $at, $s2, $s6 -/* 079178 80078578 026F7021 */ addu $t6, $s3, $t7 -/* 07917C 8007857C 1420FFBE */ bnez $at, .L80078478 -/* 079180 80078580 01D59824 */ and $s3, $t6, $s5 -/* 079184 80078584 00009825 */ move $s3, $zero -.L80078588: -/* 079188 80078588 8C830000 */ lw $v1, ($a0) -/* 07918C 8007858C 3C06800E */ lui $a2, %hi(D_800DE4C8) # $a2, 0x800e -/* 079190 80078590 24790008 */ addiu $t9, $v1, 8 -/* 079194 80078594 24C6E4C8 */ addiu $a2, %lo(D_800DE4C8) # addiu $a2, $a2, -0x1b38 -/* 079198 80078598 AC990000 */ sw $t9, ($a0) -/* 07919C 8007859C 8CD80000 */ lw $t8, ($a2) -/* 0791A0 800785A0 3C010700 */ lui $at, 0x700 -/* 0791A4 800785A4 8705000A */ lh $a1, 0xa($t8) -/* 0791A8 800785A8 02809025 */ move $s2, $s4 -/* 0791AC 800785AC 30AF00FF */ andi $t7, $a1, 0xff -/* 0791B0 800785B0 000F7400 */ sll $t6, $t7, 0x10 -/* 0791B4 800785B4 0005C0C0 */ sll $t8, $a1, 3 -/* 0791B8 800785B8 330FFFFF */ andi $t7, $t8, 0xffff -/* 0791BC 800785BC 01C1C825 */ or $t9, $t6, $at -/* 0791C0 800785C0 032F7025 */ or $t6, $t9, $t7 -/* 0791C4 800785C4 AC6E0000 */ sw $t6, ($v1) -/* 0791C8 800785C8 8CD80000 */ lw $t8, ($a2) -/* 0791CC 800785CC 3C018000 */ lui $at, 0x8000 -/* 0791D0 800785D0 8F19000C */ lw $t9, 0xc($t8) -/* 0791D4 800785D4 0016C080 */ sll $t8, $s6, 2 -/* 0791D8 800785D8 03217821 */ addu $t7, $t9, $at -/* 0791DC 800785DC AC6F0004 */ sw $t7, 4($v1) -/* 0791E0 800785E0 8CD90000 */ lw $t9, ($a2) -/* 0791E4 800785E4 3C1F0400 */ lui $ra, (0x04000400 >> 16) # lui $ra, 0x400 -/* 0791E8 800785E8 93340001 */ lbu $s4, 1($t9) -/* 0791EC 800785EC 3C17800E */ lui $s7, %hi(D_800DE4C0) # $s7, 0x800e -/* 0791F0 800785F0 00117080 */ sll $t6, $s1, 2 -/* 0791F4 800785F4 0258082A */ slt $at, $s2, $t8 -/* 0791F8 800785F8 00147880 */ sll $t7, $s4, 2 -/* 0791FC 800785FC 26F7E4C0 */ addiu $s7, %lo(D_800DE4C0) # addiu $s7, $s7, -0x1b40 -/* 079200 80078600 37FF0400 */ ori $ra, (0x04000400 & 0xFFFF) # ori $ra, $ra, 0x400 -/* 079204 80078604 3C0BE400 */ lui $t3, 0xe400 -/* 079208 80078608 3C0CB300 */ lui $t4, 0xb300 -/* 07920C 8007860C 3C0DB200 */ lui $t5, 0xb200 -/* 079210 80078610 01C08825 */ move $s1, $t6 -/* 079214 80078614 0300B025 */ move $s6, $t8 -/* 079218 80078618 10200045 */ beqz $at, .L80078730 -/* 07921C 8007861C 01E0A025 */ move $s4, $t7 -/* 079220 80078620 2615FFFF */ addiu $s5, $s0, -1 -.L80078624: -/* 079224 80078624 00131023 */ negu $v0, $s3 -/* 079228 80078628 0051082A */ slt $at, $v0, $s1 -/* 07922C 8007862C 1020003A */ beqz $at, .L80078718 -/* 079230 80078630 02544821 */ addu $t1, $s2, $s4 -/* 079234 80078634 312E0FFF */ andi $t6, $t1, 0xfff -/* 079238 80078638 01C04825 */ move $t1, $t6 -/* 07923C 8007863C 324A0FFF */ andi $t2, $s2, 0xfff -.L80078640: -/* 079240 80078640 0441001A */ bgez $v0, .L800786AC -/* 079244 80078644 00503021 */ addu $a2, $v0, $s0 -/* 079248 80078648 8C830000 */ lw $v1, ($a0) -/* 07924C 8007864C 00503021 */ addu $a2, $v0, $s0 -/* 079250 80078650 30D90FFF */ andi $t9, $a2, 0xfff -/* 079254 80078654 24780008 */ addiu $t8, $v1, 8 -/* 079258 80078658 AC980000 */ sw $t8, ($a0) -/* 07925C 8007865C 00197B00 */ sll $t7, $t9, 0xc -/* 079260 80078660 01EB7025 */ or $t6, $t7, $t3 -/* 079264 80078664 01C9C025 */ or $t8, $t6, $t1 -/* 079268 80078668 AC780000 */ sw $t8, ($v1) -/* 07926C 8007866C AC6A0004 */ sw $t2, 4($v1) -/* 079270 80078670 8C830000 */ lw $v1, ($a0) -/* 079274 80078674 000278C0 */ sll $t7, $v0, 3 -/* 079278 80078678 24790008 */ addiu $t9, $v1, 8 -/* 07927C 8007867C AC990000 */ sw $t9, ($a0) -/* 079280 80078680 000FC023 */ negu $t8, $t7 -/* 079284 80078684 0018CC00 */ sll $t9, $t8, 0x10 -/* 079288 80078688 AC790004 */ sw $t9, 4($v1) -/* 07928C 8007868C AC6C0000 */ sw $t4, ($v1) -/* 079290 80078690 8C830000 */ lw $v1, ($a0) -/* 079294 80078694 00000000 */ nop -/* 079298 80078698 246F0008 */ addiu $t7, $v1, 8 -/* 07929C 8007869C AC8F0000 */ sw $t7, ($a0) -/* 0792A0 800786A0 AC7F0004 */ sw $ra, 4($v1) -/* 0792A4 800786A4 10000019 */ b .L8007870C -/* 0792A8 800786A8 AC6D0000 */ sw $t5, ($v1) -.L800786AC: -/* 0792AC 800786AC 8C830000 */ lw $v1, ($a0) -/* 0792B0 800786B0 30D80FFF */ andi $t8, $a2, 0xfff -/* 0792B4 800786B4 0018CB00 */ sll $t9, $t8, 0xc -/* 0792B8 800786B8 032B7825 */ or $t7, $t9, $t3 -/* 0792BC 800786BC 246E0008 */ addiu $t6, $v1, 8 -/* 0792C0 800786C0 AC8E0000 */ sw $t6, ($a0) -/* 0792C4 800786C4 30580FFF */ andi $t8, $v0, 0xfff -/* 0792C8 800786C8 0018CB00 */ sll $t9, $t8, 0xc -/* 0792CC 800786CC 01E97025 */ or $t6, $t7, $t1 -/* 0792D0 800786D0 032A7825 */ or $t7, $t9, $t2 -/* 0792D4 800786D4 AC6F0004 */ sw $t7, 4($v1) -/* 0792D8 800786D8 AC6E0000 */ sw $t6, ($v1) -/* 0792DC 800786DC 8C830000 */ lw $v1, ($a0) -/* 0792E0 800786E0 00000000 */ nop -/* 0792E4 800786E4 246E0008 */ addiu $t6, $v1, 8 -/* 0792E8 800786E8 AC8E0000 */ sw $t6, ($a0) -/* 0792EC 800786EC AC600004 */ sw $zero, 4($v1) -/* 0792F0 800786F0 AC6C0000 */ sw $t4, ($v1) -/* 0792F4 800786F4 8C830000 */ lw $v1, ($a0) -/* 0792F8 800786F8 00000000 */ nop -/* 0792FC 800786FC 24780008 */ addiu $t8, $v1, 8 -/* 079300 80078700 AC980000 */ sw $t8, ($a0) -/* 079304 80078704 AC7F0004 */ sw $ra, 4($v1) -/* 079308 80078708 AC6D0000 */ sw $t5, ($v1) -.L8007870C: -/* 07930C 8007870C 00D1082A */ slt $at, $a2, $s1 -/* 079310 80078710 1420FFCB */ bnez $at, .L80078640 -/* 079314 80078714 00C01025 */ move $v0, $a2 -.L80078718: -/* 079318 80078718 8EF90000 */ lw $t9, ($s7) -/* 07931C 8007871C 025E9021 */ addu $s2, $s2, $fp -/* 079320 80078720 0256082A */ slt $at, $s2, $s6 -/* 079324 80078724 02797821 */ addu $t7, $s3, $t9 -/* 079328 80078728 1420FFBE */ bnez $at, .L80078624 -/* 07932C 8007872C 01F59824 */ and $s3, $t7, $s5 -.L80078730: -/* 079330 80078730 8C830000 */ lw $v1, ($a0) -.L80078734: -/* 079334 80078734 3C18E700 */ lui $t8, 0xe700 -/* 079338 80078738 246E0008 */ addiu $t6, $v1, 8 -/* 07933C 8007873C AC8E0000 */ sw $t6, ($a0) -/* 079340 80078740 AC600004 */ sw $zero, 4($v1) -/* 079344 80078744 AC780000 */ sw $t8, ($v1) -/* 079348 80078748 8FBF003C */ lw $ra, 0x3c($sp) -/* 07934C 8007874C 8FBE0038 */ lw $fp, 0x38($sp) -/* 079350 80078750 8FB70034 */ lw $s7, 0x34($sp) -/* 079354 80078754 8FB60030 */ lw $s6, 0x30($sp) -/* 079358 80078758 8FB5002C */ lw $s5, 0x2c($sp) -/* 07935C 8007875C 8FB40028 */ lw $s4, 0x28($sp) -/* 079360 80078760 8FB30024 */ lw $s3, 0x24($sp) -/* 079364 80078764 8FB20020 */ lw $s2, 0x20($sp) -/* 079368 80078768 8FB1001C */ lw $s1, 0x1c($sp) -/* 07936C 8007876C 8FB00018 */ lw $s0, 0x18($sp) -/* 079370 80078770 03E00008 */ jr $ra -/* 079374 80078774 27BD0040 */ addiu $sp, $sp, 0x40 - -/* 079378 80078778 00047E03 */ sra $t7, $a0, 0x18 -/* 07937C 8007877C 3C018012 */ lui $at, %hi(D_80125F30) # $at, 0x8012 -/* 079380 80078780 A02F5F30 */ sb $t7, %lo(D_80125F30)($at) -/* 079384 80078784 3C018012 */ lui $at, %hi(D_80125F31) # $at, 0x8012 -/* 079388 80078788 0004CC03 */ sra $t9, $a0, 0x10 -/* 07938C 8007878C A0395F31 */ sb $t9, %lo(D_80125F31)($at) -/* 079390 80078790 3C018012 */ lui $at, %hi(D_80125F32) # $at, 0x8012 -/* 079394 80078794 00044A03 */ sra $t1, $a0, 8 -/* 079398 80078798 A0295F32 */ sb $t1, %lo(D_80125F32)($at) -/* 07939C 8007879C 3C018012 */ lui $at, %hi(D_80125F33) # $at, 0x8012 -/* 0793A0 800787A0 A0245F33 */ sb $a0, %lo(D_80125F33)($at) -/* 0793A4 800787A4 3C018012 */ lui $at, %hi(D_80125F34) # $at, 0x8012 -/* 0793A8 800787A8 00056603 */ sra $t4, $a1, 0x18 -/* 0793AC 800787AC A02C5F34 */ sb $t4, %lo(D_80125F34)($at) -/* 0793B0 800787B0 3C018012 */ lui $at, %hi(D_80125F35) # $at, 0x8012 -/* 0793B4 800787B4 00057403 */ sra $t6, $a1, 0x10 -/* 0793B8 800787B8 A02E5F35 */ sb $t6, %lo(D_80125F35)($at) -/* 0793BC 800787BC 3C018012 */ lui $at, %hi(D_80125F36) # $at, 0x8012 -/* 0793C0 800787C0 0005C203 */ sra $t8, $a1, 8 -/* 0793C4 800787C4 A0385F36 */ sb $t8, %lo(D_80125F36)($at) -/* 0793C8 800787C8 3C018012 */ lui $at, %hi(D_80125F37) # $at, 0x8012 -/* 0793CC 800787CC A0255F37 */ sb $a1, %lo(D_80125F37)($at) -/* 0793D0 800787D0 3C018012 */ lui $at, %hi(D_80125F38) # $at, 0x8012 -/* 0793D4 800787D4 AC265F38 */ sw $a2, %lo(D_80125F38)($at) -/* 0793D8 800787D8 3C018012 */ lui $at, %hi(D_80125F3C) # $at, 0x8012 -/* 0793DC 800787DC AC275F3C */ sw $a3, %lo(D_80125F3C)($at) -/* 0793E0 800787E0 3C01800E */ lui $at, 0x800e -/* 0793E4 800787E4 24080001 */ li $t0, 1 -/* 0793E8 800787E8 03E00008 */ jr $ra -/* 0793EC 800787EC AC28E4CC */ sw $t0, -0x1b34($at) - -/* 0793F0 800787F0 3C01800E */ lui $at, 0x800e -/* 0793F4 800787F4 03E00008 */ jr $ra -/* 0793F8 800787F8 AC20E4CC */ sw $zero, -0x1b34($at) - -glabel func_800787FC -/* 0793FC 800787FC 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 079400 80078800 AFBF001C */ sw $ra, 0x1c($sp) -/* 079404 80078804 AFB00018 */ sw $s0, 0x18($sp) -/* 079408 80078808 0C01E948 */ jal func_8007A520 -/* 07940C 8007880C 00808025 */ move $s0, $a0 -/* 079410 80078810 00027403 */ sra $t6, $v0, 0x10 -/* 079414 80078814 31DFFFFF */ andi $ra, $t6, 0xffff -/* 079418 80078818 AFBF0020 */ sw $ra, 0x20($sp) -/* 07941C 8007881C 8E030000 */ lw $v1, ($s0) -/* 079420 80078820 3C0E800E */ lui $t6, %hi(D_800DE5E0) # $t6, 0x800e -/* 079424 80078824 24780008 */ addiu $t8, $v1, 8 -/* 079428 80078828 AE180000 */ sw $t8, ($s0) -/* 07942C 8007882C 25CEE5E0 */ addiu $t6, %lo(D_800DE5E0) # addiu $t6, $t6, -0x1a20 -/* 079430 80078830 3C190600 */ lui $t9, 0x600 -/* 079434 80078834 AC790000 */ sw $t9, ($v1) -/* 079438 80078838 AC6E0004 */ sw $t6, 4($v1) -/* 07943C 8007883C 8E030000 */ lw $v1, ($s0) -/* 079440 80078840 3C18FA00 */ lui $t8, 0xfa00 -/* 079444 80078844 246F0008 */ addiu $t7, $v1, 8 -/* 079448 80078848 AE0F0000 */ sw $t7, ($s0) -/* 07944C 8007884C 3C198012 */ lui $t9, %hi(D_80125F30) # $t9, 0x8012 -/* 079450 80078850 AC780000 */ sw $t8, ($v1) -/* 079454 80078854 932E5F30 */ lbu $t6, %lo(D_80125F30)($t9) -/* 079458 80078858 3C188012 */ lui $t8, %hi(D_80125F31) # $t8, 0x8012 -/* 07945C 8007885C 93195F31 */ lbu $t9, %lo(D_80125F31)($t8) -/* 079460 80078860 000E7E00 */ sll $t7, $t6, 0x18 -/* 079464 80078864 00197400 */ sll $t6, $t9, 0x10 -/* 079468 80078868 01EEC025 */ or $t8, $t7, $t6 -/* 07946C 8007886C 3C198012 */ lui $t9, %hi(D_80125F32) # $t9, 0x8012 -/* 079470 80078870 932F5F32 */ lbu $t7, %lo(D_80125F32)($t9) -/* 079474 80078874 304DFFFF */ andi $t5, $v0, 0xffff -/* 079478 80078878 000F7200 */ sll $t6, $t7, 8 -/* 07947C 8007887C 030EC825 */ or $t9, $t8, $t6 -/* 079480 80078880 3C0F8012 */ lui $t7, %hi(D_80125F33) # $t7, 0x8012 -/* 079484 80078884 91F85F33 */ lbu $t8, %lo(D_80125F33)($t7) -/* 079488 80078888 01A05825 */ move $t3, $t5 -/* 07948C 8007888C 03387025 */ or $t6, $t9, $t8 -/* 079490 80078890 AC6E0004 */ sw $t6, 4($v1) -/* 079494 80078894 8FAF0020 */ lw $t7, 0x20($sp) -/* 079498 80078898 00004025 */ move $t0, $zero -/* 07949C 8007889C 19E00032 */ blez $t7, .L80078968 -/* 0794A0 800788A0 00006025 */ move $t4, $zero -/* 0794A4 800788A4 3C068012 */ lui $a2, %hi(D_80125F38) # $a2, 0x8012 -/* 0794A8 800788A8 3C098012 */ lui $t1, %hi(D_80125F3C) # $t1, 0x8012 -/* 0794AC 800788AC 3C078012 */ lui $a3, %hi(D_80125F38) # $a3, 0x8012 -/* 0794B0 800788B0 8CC65F38 */ lw $a2, %lo(D_80125F38)($a2) -/* 0794B4 800788B4 24E75F38 */ addiu $a3, %lo(D_80125F38) # addiu $a3, $a3, 0x5f38 -/* 0794B8 800788B8 25295F3C */ addiu $t1, %lo(D_80125F3C) # addiu $t1, $t1, 0x5f3c -/* 0794BC 800788BC 3C0AF600 */ lui $t2, 0xf600 -.L800788C0: -/* 0794C0 800788C0 01860019 */ multu $t4, $a2 -/* 0794C4 800788C4 310503FF */ andi $a1, $t0, 0x3ff -/* 0794C8 800788C8 0005C880 */ sll $t9, $a1, 2 -/* 0794CC 800788CC 03202825 */ move $a1, $t9 -/* 0794D0 800788D0 00001012 */ mflo $v0 -/* 0794D4 800788D4 004D082A */ slt $at, $v0, $t5 -/* 0794D8 800788D8 1020001C */ beqz $at, .L8007894C -/* 0794DC 800788DC 00000000 */ nop -.L800788E0: -/* 0794E0 800788E0 8E030000 */ lw $v1, ($s0) -/* 0794E4 800788E4 00000000 */ nop -/* 0794E8 800788E8 24780008 */ addiu $t8, $v1, 8 -/* 0794EC 800788EC AE180000 */ sw $t8, ($s0) -/* 0794F0 800788F0 8CEE0000 */ lw $t6, ($a3) -/* 0794F4 800788F4 00000000 */ nop -/* 0794F8 800788F8 004E7821 */ addu $t7, $v0, $t6 -/* 0794FC 800788FC 31F903FF */ andi $t9, $t7, 0x3ff -/* 079500 80078900 8D2F0000 */ lw $t7, ($t1) -/* 079504 80078904 0019C380 */ sll $t8, $t9, 0xe -/* 079508 80078908 030A7025 */ or $t6, $t8, $t2 -/* 07950C 8007890C 010FC821 */ addu $t9, $t0, $t7 -/* 079510 80078910 333803FF */ andi $t8, $t9, 0x3ff -/* 079514 80078914 00187880 */ sll $t7, $t8, 2 -/* 079518 80078918 01CFC825 */ or $t9, $t6, $t7 -/* 07951C 8007891C 305803FF */ andi $t8, $v0, 0x3ff -/* 079520 80078920 00187380 */ sll $t6, $t8, 0xe -/* 079524 80078924 01C57825 */ or $t7, $t6, $a1 -/* 079528 80078928 AC6F0004 */ sw $t7, 4($v1) -/* 07952C 8007892C AC790000 */ sw $t9, ($v1) -/* 079530 80078930 8CE60000 */ lw $a2, ($a3) -/* 079534 80078934 00000000 */ nop -/* 079538 80078938 0006C840 */ sll $t9, $a2, 1 -/* 07953C 8007893C 00591021 */ addu $v0, $v0, $t9 -/* 079540 80078940 004B082A */ slt $at, $v0, $t3 -/* 079544 80078944 1420FFE6 */ bnez $at, .L800788E0 -/* 079548 80078948 00000000 */ nop -.L8007894C: -/* 07954C 8007894C 8D380000 */ lw $t8, ($t1) -/* 079550 80078950 398E0001 */ xori $t6, $t4, 1 -/* 079554 80078954 01184021 */ addu $t0, $t0, $t8 -/* 079558 80078958 011F082A */ slt $at, $t0, $ra -/* 07955C 8007895C 1420FFD8 */ bnez $at, .L800788C0 -/* 079560 80078960 01C06025 */ move $t4, $t6 -/* 079564 80078964 00004025 */ move $t0, $zero -.L80078968: -/* 079568 80078968 8E030000 */ lw $v1, ($s0) -/* 07956C 8007896C 3C19FA00 */ lui $t9, 0xfa00 -/* 079570 80078970 246F0008 */ addiu $t7, $v1, 8 -/* 079574 80078974 AE0F0000 */ sw $t7, ($s0) -/* 079578 80078978 3C188012 */ lui $t8, %hi(D_80125F34) # $t8, 0x8012 -/* 07957C 8007897C AC790000 */ sw $t9, ($v1) -/* 079580 80078980 930E5F34 */ lbu $t6, %lo(D_80125F34)($t8) -/* 079584 80078984 3C198012 */ lui $t9, %hi(D_80125F35) # $t9, 0x8012 -/* 079588 80078988 93385F35 */ lbu $t8, %lo(D_80125F35)($t9) -/* 07958C 8007898C 000E7E00 */ sll $t7, $t6, 0x18 -/* 079590 80078990 00187400 */ sll $t6, $t8, 0x10 -/* 079594 80078994 01EEC825 */ or $t9, $t7, $t6 -/* 079598 80078998 3C188012 */ lui $t8, %hi(D_80125F36) # $t8, 0x8012 -/* 07959C 8007899C 930F5F36 */ lbu $t7, %lo(D_80125F36)($t8) -/* 0795A0 800789A0 3C078012 */ lui $a3, %hi(D_80125F38) # $a3, 0x8012 -/* 0795A4 800789A4 000F7200 */ sll $t6, $t7, 8 -/* 0795A8 800789A8 032EC025 */ or $t8, $t9, $t6 -/* 0795AC 800789AC 3C0F8012 */ lui $t7, %hi(D_80125F37) # $t7, 0x8012 -/* 0795B0 800789B0 91F95F37 */ lbu $t9, %lo(D_80125F37)($t7) -/* 0795B4 800789B4 3C098012 */ lui $t1, %hi(D_80125F3C) # $t1, 0x8012 -/* 0795B8 800789B8 03197025 */ or $t6, $t8, $t9 -/* 0795BC 800789BC AC6E0004 */ sw $t6, 4($v1) -/* 0795C0 800789C0 8FAF0020 */ lw $t7, 0x20($sp) -/* 0795C4 800789C4 25295F3C */ addiu $t1, %lo(D_80125F3C) # addiu $t1, $t1, 0x5f3c -/* 0795C8 800789C8 24E75F38 */ addiu $a3, %lo(D_80125F38) # addiu $a3, $a3, 0x5f38 -/* 0795CC 800789CC 3C0AF600 */ lui $t2, 0xf600 -/* 0795D0 800789D0 19E0002C */ blez $t7, .L80078A84 -/* 0795D4 800789D4 240C0001 */ li $t4, 1 -/* 0795D8 800789D8 8CE60000 */ lw $a2, ($a3) -/* 0795DC 800789DC 00000000 */ nop -.L800789E0: -/* 0795E0 800789E0 01860019 */ multu $t4, $a2 -/* 0795E4 800789E4 310503FF */ andi $a1, $t0, 0x3ff -/* 0795E8 800789E8 0005C080 */ sll $t8, $a1, 2 -/* 0795EC 800789EC 03002825 */ move $a1, $t8 -/* 0795F0 800789F0 00001012 */ mflo $v0 -/* 0795F4 800789F4 004D082A */ slt $at, $v0, $t5 -/* 0795F8 800789F8 1020001C */ beqz $at, .L80078A6C -/* 0795FC 800789FC 00000000 */ nop -.L80078A00: -/* 079600 80078A00 8E030000 */ lw $v1, ($s0) -/* 079604 80078A04 00000000 */ nop -/* 079608 80078A08 24790008 */ addiu $t9, $v1, 8 -/* 07960C 80078A0C AE190000 */ sw $t9, ($s0) -/* 079610 80078A10 8CEE0000 */ lw $t6, ($a3) -/* 079614 80078A14 00000000 */ nop -/* 079618 80078A18 004E7821 */ addu $t7, $v0, $t6 -/* 07961C 80078A1C 31F803FF */ andi $t8, $t7, 0x3ff -/* 079620 80078A20 8D2F0000 */ lw $t7, ($t1) -/* 079624 80078A24 0018CB80 */ sll $t9, $t8, 0xe -/* 079628 80078A28 032A7025 */ or $t6, $t9, $t2 -/* 07962C 80078A2C 010FC021 */ addu $t8, $t0, $t7 -/* 079630 80078A30 331903FF */ andi $t9, $t8, 0x3ff -/* 079634 80078A34 00197880 */ sll $t7, $t9, 2 -/* 079638 80078A38 01CFC025 */ or $t8, $t6, $t7 -/* 07963C 80078A3C 305903FF */ andi $t9, $v0, 0x3ff -/* 079640 80078A40 00197380 */ sll $t6, $t9, 0xe -/* 079644 80078A44 01C57825 */ or $t7, $t6, $a1 -/* 079648 80078A48 AC6F0004 */ sw $t7, 4($v1) -/* 07964C 80078A4C AC780000 */ sw $t8, ($v1) -/* 079650 80078A50 8CE60000 */ lw $a2, ($a3) -/* 079654 80078A54 00000000 */ nop -/* 079658 80078A58 0006C040 */ sll $t8, $a2, 1 -/* 07965C 80078A5C 00581021 */ addu $v0, $v0, $t8 -/* 079660 80078A60 004B082A */ slt $at, $v0, $t3 -/* 079664 80078A64 1420FFE6 */ bnez $at, .L80078A00 -/* 079668 80078A68 00000000 */ nop -.L80078A6C: -/* 07966C 80078A6C 8D390000 */ lw $t9, ($t1) -/* 079670 80078A70 398E0001 */ xori $t6, $t4, 1 -/* 079674 80078A74 01194021 */ addu $t0, $t0, $t9 -/* 079678 80078A78 011F082A */ slt $at, $t0, $ra -/* 07967C 80078A7C 1420FFD8 */ bnez $at, .L800789E0 -/* 079680 80078A80 01C06025 */ move $t4, $t6 -.L80078A84: -/* 079684 80078A84 8E030000 */ lw $v1, ($s0) -/* 079688 80078A88 3C18E700 */ lui $t8, 0xe700 -/* 07968C 80078A8C 246F0008 */ addiu $t7, $v1, 8 -/* 079690 80078A90 AE0F0000 */ sw $t7, ($s0) -/* 079694 80078A94 AC600004 */ sw $zero, 4($v1) -/* 079698 80078A98 AC780000 */ sw $t8, ($v1) -/* 07969C 80078A9C 8FBF001C */ lw $ra, 0x1c($sp) -/* 0796A0 80078AA0 8FB00018 */ lw $s0, 0x18($sp) -/* 0796A4 80078AA4 03E00008 */ jr $ra -/* 0796A8 80078AA8 27BD0050 */ addiu $sp, $sp, 0x50 - -glabel func_80078AAC -/* 0796AC 80078AAC 3C01800E */ lui $at, 0x800e -/* 0796B0 80078AB0 03E00008 */ jr $ra -/* 0796B4 80078AB4 AC24E4D0 */ sw $a0, -0x1b30($at) - -glabel func_80078AB8 -/* 0796B8 80078AB8 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0796BC 80078ABC AFBF002C */ sw $ra, 0x2c($sp) -/* 0796C0 80078AC0 AFBE0028 */ sw $fp, 0x28($sp) -/* 0796C4 80078AC4 AFB70024 */ sw $s7, 0x24($sp) -/* 0796C8 80078AC8 AFB60020 */ sw $s6, 0x20($sp) -/* 0796CC 80078ACC AFB5001C */ sw $s5, 0x1c($sp) -/* 0796D0 80078AD0 AFB40018 */ sw $s4, 0x18($sp) -/* 0796D4 80078AD4 AFB30014 */ sw $s3, 0x14($sp) -/* 0796D8 80078AD8 AFB20010 */ sw $s2, 0x10($sp) -/* 0796DC 80078ADC AFB1000C */ sw $s1, 0xc($sp) -/* 0796E0 80078AE0 AFB00008 */ sw $s0, 8($sp) -/* 0796E4 80078AE4 8C820000 */ lw $v0, ($a0) -/* 0796E8 80078AE8 3C18800E */ lui $t8, %hi(D_800DE628) # $t8, 0x800e -/* 0796EC 80078AEC 244E0008 */ addiu $t6, $v0, 8 -/* 0796F0 80078AF0 AC8E0000 */ sw $t6, ($a0) -/* 0796F4 80078AF4 2718E628 */ addiu $t8, %lo(D_800DE628) # addiu $t8, $t8, -0x19d8 -/* 0796F8 80078AF8 3C0F0600 */ lui $t7, 0x600 -/* 0796FC 80078AFC AC4F0000 */ sw $t7, ($v0) -/* 079700 80078B00 AC580004 */ sw $t8, 4($v0) -/* 079704 80078B04 8C820000 */ lw $v0, ($a0) -/* 079708 80078B08 3C0EFA00 */ lui $t6, 0xfa00 -/* 07970C 80078B0C 24590008 */ addiu $t9, $v0, 8 -/* 079710 80078B10 AC990000 */ sw $t9, ($a0) -/* 079714 80078B14 AC4E0000 */ sw $t6, ($v0) -/* 079718 80078B18 93B80043 */ lbu $t8, 0x43($sp) -/* 07971C 80078B1C 93AF0047 */ lbu $t7, 0x47($sp) -/* 079720 80078B20 0018CE00 */ sll $t9, $t8, 0x18 -/* 079724 80078B24 000FC400 */ sll $t8, $t7, 0x10 -/* 079728 80078B28 03387025 */ or $t6, $t9, $t8 -/* 07972C 80078B2C 93B9004B */ lbu $t9, 0x4b($sp) -/* 079730 80078B30 00808025 */ move $s0, $a0 -/* 079734 80078B34 0019C200 */ sll $t8, $t9, 8 -/* 079738 80078B38 01D87825 */ or $t7, $t6, $t8 -/* 07973C 80078B3C 93AE004F */ lbu $t6, 0x4f($sp) -/* 079740 80078B40 0006F080 */ sll $fp, $a2, 2 -/* 079744 80078B44 01EEC025 */ or $t8, $t7, $t6 -/* 079748 80078B48 AC580004 */ sw $t8, 4($v0) -/* 07974C 80078B4C 8CA80000 */ lw $t0, ($a1) -/* 079750 80078B50 0007F880 */ sll $ra, $a3, 2 -/* 079754 80078B54 11000051 */ beqz $t0, .L80078C9C -/* 079758 80078B58 00A05025 */ move $t2, $a1 -/* 07975C 80078B5C 3C170400 */ lui $s7, (0x04000400 >> 16) # lui $s7, 0x400 -/* 079760 80078B60 36F70400 */ ori $s7, (0x04000400 & 0xFFFF) # ori $s7, $s7, 0x400 -/* 079764 80078B64 3C16B200 */ lui $s6, 0xb200 -/* 079768 80078B68 3C15B300 */ lui $s5, 0xb300 -/* 07976C 80078B6C 3C14E400 */ lui $s4, 0xe400 -/* 079770 80078B70 3C138000 */ lui $s3, 0x8000 -/* 079774 80078B74 3C120700 */ lui $s2, 0x700 -.L80078B78: -/* 079778 80078B78 854E0004 */ lh $t6, 4($t2) -/* 07977C 80078B7C 85590006 */ lh $t9, 6($t2) -/* 079780 80078B80 000EC080 */ sll $t8, $t6, 2 -/* 079784 80078B84 910E0000 */ lbu $t6, ($t0) -/* 079788 80078B88 00197880 */ sll $t7, $t9, 2 -/* 07978C 80078B8C 91190001 */ lbu $t9, 1($t0) -/* 079790 80078B90 031E3021 */ addu $a2, $t8, $fp -/* 079794 80078B94 01FF3821 */ addu $a3, $t7, $ra -/* 079798 80078B98 000EC080 */ sll $t8, $t6, 2 -/* 07979C 80078B9C 03065821 */ addu $t3, $t8, $a2 -/* 0797A0 80078BA0 00197880 */ sll $t7, $t9, 2 -/* 0797A4 80078BA4 19600039 */ blez $t3, .L80078C8C -/* 0797A8 80078BA8 01E76021 */ addu $t4, $t7, $a3 -/* 0797AC 80078BAC 19800037 */ blez $t4, .L80078C8C -/* 0797B0 80078BB0 00006825 */ move $t5, $zero -/* 0797B4 80078BB4 04C10004 */ bgez $a2, .L80078BC8 -/* 0797B8 80078BB8 00008825 */ move $s1, $zero -/* 0797BC 80078BBC 000668C0 */ sll $t5, $a2, 3 -/* 0797C0 80078BC0 000D6823 */ negu $t5, $t5 -/* 0797C4 80078BC4 00003025 */ move $a2, $zero -.L80078BC8: -/* 0797C8 80078BC8 04E10004 */ bgez $a3, .L80078BDC -/* 0797CC 80078BCC 00000000 */ nop -/* 0797D0 80078BD0 000788C0 */ sll $s1, $a3, 3 -/* 0797D4 80078BD4 00118823 */ negu $s1, $s1 -/* 0797D8 80078BD8 00003825 */ move $a3, $zero -.L80078BDC: -/* 0797DC 80078BDC 8E020000 */ lw $v0, ($s0) -/* 0797E0 80078BE0 00000000 */ nop -/* 0797E4 80078BE4 244E0008 */ addiu $t6, $v0, 8 -/* 0797E8 80078BE8 AE0E0000 */ sw $t6, ($s0) -/* 0797EC 80078BEC 8504000A */ lh $a0, 0xa($t0) -/* 0797F0 80078BF0 00000000 */ nop -/* 0797F4 80078BF4 309800FF */ andi $t8, $a0, 0xff -/* 0797F8 80078BF8 0018CC00 */ sll $t9, $t8, 0x10 -/* 0797FC 80078BFC 000470C0 */ sll $t6, $a0, 3 -/* 079800 80078C00 31D8FFFF */ andi $t8, $t6, 0xffff -/* 079804 80078C04 03327825 */ or $t7, $t9, $s2 -/* 079808 80078C08 01F8C825 */ or $t9, $t7, $t8 -/* 07980C 80078C0C AC590000 */ sw $t9, ($v0) -/* 079810 80078C10 8D0E000C */ lw $t6, 0xc($t0) -/* 079814 80078C14 31790FFF */ andi $t9, $t3, 0xfff -/* 079818 80078C18 01D37821 */ addu $t7, $t6, $s3 -/* 07981C 80078C1C AC4F0004 */ sw $t7, 4($v0) -/* 079820 80078C20 8E020000 */ lw $v0, ($s0) -/* 079824 80078C24 00197300 */ sll $t6, $t9, 0xc -/* 079828 80078C28 24580008 */ addiu $t8, $v0, 8 -/* 07982C 80078C2C AE180000 */ sw $t8, ($s0) -/* 079830 80078C30 31980FFF */ andi $t8, $t4, 0xfff -/* 079834 80078C34 01D47825 */ or $t7, $t6, $s4 -/* 079838 80078C38 01F8C825 */ or $t9, $t7, $t8 -/* 07983C 80078C3C 30CE0FFF */ andi $t6, $a2, 0xfff -/* 079840 80078C40 000E7B00 */ sll $t7, $t6, 0xc -/* 079844 80078C44 30F80FFF */ andi $t8, $a3, 0xfff -/* 079848 80078C48 AC590000 */ sw $t9, ($v0) -/* 07984C 80078C4C 01F8C825 */ or $t9, $t7, $t8 -/* 079850 80078C50 AC590004 */ sw $t9, 4($v0) -/* 079854 80078C54 8E020000 */ lw $v0, ($s0) -/* 079858 80078C58 3239FFFF */ andi $t9, $s1, 0xffff -/* 07985C 80078C5C 244E0008 */ addiu $t6, $v0, 8 -/* 079860 80078C60 AE0E0000 */ sw $t6, ($s0) -/* 079864 80078C64 000DC400 */ sll $t8, $t5, 0x10 -/* 079868 80078C68 03197025 */ or $t6, $t8, $t9 -/* 07986C 80078C6C AC4E0004 */ sw $t6, 4($v0) -/* 079870 80078C70 AC550000 */ sw $s5, ($v0) -/* 079874 80078C74 8E020000 */ lw $v0, ($s0) -/* 079878 80078C78 00000000 */ nop -/* 07987C 80078C7C 244F0008 */ addiu $t7, $v0, 8 -/* 079880 80078C80 AE0F0000 */ sw $t7, ($s0) -/* 079884 80078C84 AC570004 */ sw $s7, 4($v0) -/* 079888 80078C88 AC560000 */ sw $s6, ($v0) -.L80078C8C: -/* 07988C 80078C8C 8D480008 */ lw $t0, 8($t2) -/* 079890 80078C90 254A0008 */ addiu $t2, $t2, 8 -/* 079894 80078C94 1500FFB8 */ bnez $t0, .L80078B78 -/* 079898 80078C98 00000000 */ nop -.L80078C9C: -/* 07989C 80078C9C 8E020000 */ lw $v0, ($s0) -/* 0798A0 80078CA0 3C19E700 */ lui $t9, 0xe700 -/* 0798A4 80078CA4 24580008 */ addiu $t8, $v0, 8 -/* 0798A8 80078CA8 AE180000 */ sw $t8, ($s0) -/* 0798AC 80078CAC AC400004 */ sw $zero, 4($v0) -/* 0798B0 80078CB0 AC590000 */ sw $t9, ($v0) -/* 0798B4 80078CB4 8E020000 */ lw $v0, ($s0) -/* 0798B8 80078CB8 2418FFFF */ li $t8, -1 -/* 0798BC 80078CBC 244E0008 */ addiu $t6, $v0, 8 -/* 0798C0 80078CC0 AE0E0000 */ sw $t6, ($s0) -/* 0798C4 80078CC4 3C0FFA00 */ lui $t7, 0xfa00 -/* 0798C8 80078CC8 AC4F0000 */ sw $t7, ($v0) -/* 0798CC 80078CCC AC580004 */ sw $t8, 4($v0) -/* 0798D0 80078CD0 8FBF002C */ lw $ra, 0x2c($sp) -/* 0798D4 80078CD4 8FBE0028 */ lw $fp, 0x28($sp) -/* 0798D8 80078CD8 8FB70024 */ lw $s7, 0x24($sp) -/* 0798DC 80078CDC 8FB60020 */ lw $s6, 0x20($sp) -/* 0798E0 80078CE0 8FB5001C */ lw $s5, 0x1c($sp) -/* 0798E4 80078CE4 8FB40018 */ lw $s4, 0x18($sp) -/* 0798E8 80078CE8 8FB30014 */ lw $s3, 0x14($sp) -/* 0798EC 80078CEC 8FB20010 */ lw $s2, 0x10($sp) -/* 0798F0 80078CF0 8FB1000C */ lw $s1, 0xc($sp) -/* 0798F4 80078CF4 8FB00008 */ lw $s0, 8($sp) -/* 0798F8 80078CF8 03E00008 */ jr $ra -/* 0798FC 80078CFC 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_80078D00 -/* 079900 80078D00 27BDFF50 */ addiu $sp, $sp, -0xb0 -/* 079904 80078D04 AFBF003C */ sw $ra, 0x3c($sp) -/* 079908 80078D08 AFB20020 */ sw $s2, 0x20($sp) -/* 07990C 80078D0C AFB00018 */ sw $s0, 0x18($sp) -/* 079910 80078D10 00808025 */ move $s0, $a0 -/* 079914 80078D14 00A09025 */ move $s2, $a1 -/* 079918 80078D18 AFBE0038 */ sw $fp, 0x38($sp) -/* 07991C 80078D1C AFB70034 */ sw $s7, 0x34($sp) -/* 079920 80078D20 AFB60030 */ sw $s6, 0x30($sp) -/* 079924 80078D24 AFB5002C */ sw $s5, 0x2c($sp) -/* 079928 80078D28 AFB40028 */ sw $s4, 0x28($sp) -/* 07992C 80078D2C AFB30024 */ sw $s3, 0x24($sp) -/* 079930 80078D30 AFB1001C */ sw $s1, 0x1c($sp) -/* 079934 80078D34 AFA600B8 */ sw $a2, 0xb8($sp) -/* 079938 80078D38 0C01E948 */ jal func_8007A520 -/* 07993C 80078D3C AFA700BC */ sw $a3, 0xbc($sp) -/* 079940 80078D40 8FA900C8 */ lw $t1, 0xc8($sp) -/* 079944 80078D44 240100FF */ li $at, 255 -/* 079948 80078D48 312E00FF */ andi $t6, $t1, 0xff -/* 07994C 80078D4C 15C10009 */ bne $t6, $at, .L80078D74 -/* 079950 80078D50 8FA800CC */ lw $t0, 0xcc($sp) -/* 079954 80078D54 8FA800CC */ lw $t0, 0xcc($sp) -/* 079958 80078D58 3C0E800E */ lui $t6, %hi(D_800DE6A8) # $t6, 0x800e -/* 07995C 80078D5C 311800FF */ andi $t8, $t0, 0xff -/* 079960 80078D60 0018C900 */ sll $t9, $t8, 4 -/* 079964 80078D64 25CEE6A8 */ addiu $t6, %lo(D_800DE6A8) # addiu $t6, $t6, -0x1958 -/* 079968 80078D68 10000007 */ b .L80078D88 -/* 07996C 80078D6C 032E3821 */ addu $a3, $t9, $t6 -/* 079970 80078D70 8FA800CC */ lw $t0, 0xcc($sp) -.L80078D74: -/* 079974 80078D74 3C0E800E */ lui $t6, %hi(D_800DE6E8) # $t6, 0x800e -/* 079978 80078D78 311800FF */ andi $t8, $t0, 0xff -/* 07997C 80078D7C 0018C900 */ sll $t9, $t8, 4 -/* 079980 80078D80 25CEE6E8 */ addiu $t6, %lo(D_800DE6E8) # addiu $t6, $t6, -0x1918 -/* 079984 80078D84 032E3821 */ addu $a3, $t9, $t6 -.L80078D88: -/* 079988 80078D88 8E040000 */ lw $a0, ($s0) -/* 07998C 80078D8C C7A000C0 */ lwc1 $f0, 0xc0($sp) -/* 079990 80078D90 248F0008 */ addiu $t7, $a0, 8 -/* 079994 80078D94 AE0F0000 */ sw $t7, ($s0) -/* 079998 80078D98 3C19800E */ lui $t9, %hi(D_800DE670) # $t9, 0x800e -/* 07999C 80078D9C 2739E670 */ addiu $t9, %lo(D_800DE670) # addiu $t9, $t9, -0x1990 -/* 0799A0 80078DA0 3C180600 */ lui $t8, 0x600 -/* 0799A4 80078DA4 AC980000 */ sw $t8, ($a0) -/* 0799A8 80078DA8 AC990004 */ sw $t9, 4($a0) -/* 0799AC 80078DAC 8E050000 */ lw $a1, ($s0) -/* 0799B0 80078DB0 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 0799B4 80078DB4 44816000 */ mtc1 $at, $f12 -/* 0799B8 80078DB8 24AE0008 */ addiu $t6, $a1, 8 -/* 0799BC 80078DBC AE0E0000 */ sw $t6, ($s0) -/* 0799C0 80078DC0 3C018000 */ lui $at, 0x8000 -/* 0799C4 80078DC4 3C0F0702 */ lui $t7, (0x07020010 >> 16) # lui $t7, 0x702 -/* 0799C8 80078DC8 35EF0010 */ ori $t7, (0x07020010 & 0xFFFF) # ori $t7, $t7, 0x10 -/* 0799CC 80078DCC 00E1C021 */ addu $t8, $a3, $at -/* 0799D0 80078DD0 ACB80004 */ sw $t8, 4($a1) -/* 0799D4 80078DD4 ACAF0000 */ sw $t7, ($a1) -/* 0799D8 80078DD8 8E060000 */ lw $a2, ($s0) -/* 0799DC 80078DDC 3C0EFA00 */ lui $t6, 0xfa00 -/* 0799E0 80078DE0 24D90008 */ addiu $t9, $a2, 8 -/* 0799E4 80078DE4 AE190000 */ sw $t9, ($s0) -/* 0799E8 80078DE8 460C0002 */ mul.s $f0, $f0, $f12 -/* 0799EC 80078DEC ACC90004 */ sw $t1, 4($a2) -/* 0799F0 80078DF0 ACCE0000 */ sw $t6, ($a2) -/* 0799F4 80078DF4 C7A200C4 */ lwc1 $f2, 0xc4($sp) -/* 0799F8 80078DF8 8E5F0000 */ lw $ra, ($s2) -/* 0799FC 80078DFC 460C1082 */ mul.s $f2, $f2, $f12 -/* 079A00 80078E00 13E00137 */ beqz $ra, .L800792E0 -/* 079A04 80078E04 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 079A08 80078E08 C7A400B8 */ lwc1 $f4, 0xb8($sp) -/* 079A0C 80078E0C 44813000 */ mtc1 $at, $f6 -/* 079A10 80078E10 C7B000BC */ lwc1 $f16, 0xbc($sp) -/* 079A14 80078E14 46062202 */ mul.s $f8, $f4, $f6 -/* 079A18 80078E18 304FFFFF */ andi $t7, $v0, 0xffff -/* 079A1C 80078E1C 02408825 */ move $s1, $s2 -/* 079A20 80078E20 000FC080 */ sll $t8, $t7, 2 -/* 079A24 80078E24 4459F800 */ cfc1 $t9, $31 -/* 079A28 80078E28 8FB20080 */ lw $s2, 0x80($sp) -/* 079A2C 80078E2C 37210003 */ ori $at, $t9, 3 -/* 079A30 80078E30 38210002 */ xori $at, $at, 2 -/* 079A34 80078E34 44C1F800 */ ctc1 $at, $31 -/* 079A38 80078E38 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 079A3C 80078E3C 460042A4 */ cvt.w.s $f10, $f8 -/* 079A40 80078E40 44819000 */ mtc1 $at, $f18 -/* 079A44 80078E44 44D9F800 */ ctc1 $t9, $31 -/* 079A48 80078E48 44175000 */ mfc1 $s7, $f10 -/* 079A4C 80078E4C 46128102 */ mul.s $f4, $f16, $f18 -/* 079A50 80078E50 8FB3007C */ lw $s3, 0x7c($sp) -/* 079A54 80078E54 AFB80044 */ sw $t8, 0x44($sp) -/* 079A58 80078E58 31151000 */ andi $s5, $t0, 0x1000 -/* 079A5C 80078E5C 444EF800 */ cfc1 $t6, $31 -/* 079A60 80078E60 31162000 */ andi $s6, $t0, 0x2000 -/* 079A64 80078E64 35C10003 */ ori $at, $t6, 3 -/* 079A68 80078E68 38210002 */ xori $at, $at, 2 -/* 079A6C 80078E6C 44C1F800 */ ctc1 $at, $31 -/* 079A70 80078E70 00000000 */ nop -/* 079A74 80078E74 460021A4 */ cvt.w.s $f6, $f4 -/* 079A78 80078E78 44CEF800 */ ctc1 $t6, $31 -/* 079A7C 80078E7C 441E3000 */ mfc1 $fp, $f6 -/* 079A80 80078E80 00000000 */ nop -.L80078E84: -/* 079A84 80078E84 16A00012 */ bnez $s5, .L80078ED0 -/* 079A88 80078E88 00000000 */ nop -/* 079A8C 80078E8C 862F0004 */ lh $t7, 4($s1) -/* 079A90 80078E90 00000000 */ nop -/* 079A94 80078E94 448F4000 */ mtc1 $t7, $f8 -/* 079A98 80078E98 00000000 */ nop -/* 079A9C 80078E9C 468042A0 */ cvt.s.w $f10, $f8 -/* 079AA0 80078EA0 46005402 */ mul.s $f16, $f10, $f0 -/* 079AA4 80078EA4 4458F800 */ cfc1 $t8, $31 -/* 079AA8 80078EA8 00000000 */ nop -/* 079AAC 80078EAC 37010003 */ ori $at, $t8, 3 -/* 079AB0 80078EB0 38210002 */ xori $at, $at, 2 -/* 079AB4 80078EB4 44C1F800 */ ctc1 $at, $31 -/* 079AB8 80078EB8 00000000 */ nop -/* 079ABC 80078EBC 460084A4 */ cvt.w.s $f18, $f16 -/* 079AC0 80078EC0 44199000 */ mfc1 $t9, $f18 -/* 079AC4 80078EC4 44D8F800 */ ctc1 $t8, $31 -/* 079AC8 80078EC8 10000022 */ b .L80078F54 -/* 079ACC 80078ECC 03375821 */ addu $t3, $t9, $s7 -.L80078ED0: -/* 079AD0 80078ED0 862E0004 */ lh $t6, 4($s1) -/* 079AD4 80078ED4 93F90000 */ lbu $t9, ($ra) -/* 079AD8 80078ED8 448E2000 */ mtc1 $t6, $f4 -/* 079ADC 80078EDC 44998000 */ mtc1 $t9, $f16 -/* 079AE0 80078EE0 468021A0 */ cvt.s.w $f6, $f4 -/* 079AE4 80078EE4 46003202 */ mul.s $f8, $f6, $f0 -/* 079AE8 80078EE8 444FF800 */ cfc1 $t7, $31 -/* 079AEC 80078EEC 00000000 */ nop -/* 079AF0 80078EF0 35E10003 */ ori $at, $t7, 3 -/* 079AF4 80078EF4 38210002 */ xori $at, $at, 2 -/* 079AF8 80078EF8 44C1F800 */ ctc1 $at, $31 -/* 079AFC 80078EFC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 079B00 80078F00 460042A4 */ cvt.w.s $f10, $f8 -/* 079B04 80078F04 44185000 */ mfc1 $t8, $f10 -/* 079B08 80078F08 44CFF800 */ ctc1 $t7, $31 -/* 079B0C 80078F0C 02F89023 */ subu $s2, $s7, $t8 -/* 079B10 80078F10 07210004 */ bgez $t9, .L80078F24 -/* 079B14 80078F14 468084A0 */ cvt.s.w $f18, $f16 -/* 079B18 80078F18 44812000 */ mtc1 $at, $f4 -/* 079B1C 80078F1C 00000000 */ nop -/* 079B20 80078F20 46049480 */ add.s $f18, $f18, $f4 -.L80078F24: -/* 079B24 80078F24 46009182 */ mul.s $f6, $f18, $f0 -/* 079B28 80078F28 444EF800 */ cfc1 $t6, $31 -/* 079B2C 80078F2C 00000000 */ nop -/* 079B30 80078F30 35C10003 */ ori $at, $t6, 3 -/* 079B34 80078F34 38210002 */ xori $at, $at, 2 -/* 079B38 80078F38 44C1F800 */ ctc1 $at, $31 -/* 079B3C 80078F3C 00000000 */ nop -/* 079B40 80078F40 46003224 */ cvt.w.s $f8, $f6 -/* 079B44 80078F44 440F4000 */ mfc1 $t7, $f8 -/* 079B48 80078F48 44CEF800 */ ctc1 $t6, $31 -/* 079B4C 80078F4C 024F5823 */ subu $t3, $s2, $t7 -/* 079B50 80078F50 00000000 */ nop -.L80078F54: -/* 079B54 80078F54 16C00012 */ bnez $s6, .L80078FA0 -/* 079B58 80078F58 00000000 */ nop -/* 079B5C 80078F5C 86380006 */ lh $t8, 6($s1) -/* 079B60 80078F60 00000000 */ nop -/* 079B64 80078F64 44985000 */ mtc1 $t8, $f10 -/* 079B68 80078F68 00000000 */ nop -/* 079B6C 80078F6C 46805420 */ cvt.s.w $f16, $f10 -/* 079B70 80078F70 46028102 */ mul.s $f4, $f16, $f2 -/* 079B74 80078F74 4459F800 */ cfc1 $t9, $31 -/* 079B78 80078F78 00000000 */ nop -/* 079B7C 80078F7C 37210003 */ ori $at, $t9, 3 -/* 079B80 80078F80 38210002 */ xori $at, $at, 2 -/* 079B84 80078F84 44C1F800 */ ctc1 $at, $31 -/* 079B88 80078F88 00000000 */ nop -/* 079B8C 80078F8C 460024A4 */ cvt.w.s $f18, $f4 -/* 079B90 80078F90 440E9000 */ mfc1 $t6, $f18 -/* 079B94 80078F94 44D9F800 */ ctc1 $t9, $31 -/* 079B98 80078F98 10000022 */ b .L80079024 -/* 079B9C 80078F9C 01DE5021 */ addu $t2, $t6, $fp -.L80078FA0: -/* 079BA0 80078FA0 862F0006 */ lh $t7, 6($s1) -/* 079BA4 80078FA4 93EE0001 */ lbu $t6, 1($ra) -/* 079BA8 80078FA8 448F3000 */ mtc1 $t7, $f6 -/* 079BAC 80078FAC 448E2000 */ mtc1 $t6, $f4 -/* 079BB0 80078FB0 46803220 */ cvt.s.w $f8, $f6 -/* 079BB4 80078FB4 46024282 */ mul.s $f10, $f8, $f2 -/* 079BB8 80078FB8 4458F800 */ cfc1 $t8, $31 -/* 079BBC 80078FBC 00000000 */ nop -/* 079BC0 80078FC0 37010003 */ ori $at, $t8, 3 -/* 079BC4 80078FC4 38210002 */ xori $at, $at, 2 -/* 079BC8 80078FC8 44C1F800 */ ctc1 $at, $31 -/* 079BCC 80078FCC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 079BD0 80078FD0 46005424 */ cvt.w.s $f16, $f10 -/* 079BD4 80078FD4 44198000 */ mfc1 $t9, $f16 -/* 079BD8 80078FD8 44D8F800 */ ctc1 $t8, $31 -/* 079BDC 80078FDC 03D99823 */ subu $s3, $fp, $t9 -/* 079BE0 80078FE0 05C10004 */ bgez $t6, .L80078FF4 -/* 079BE4 80078FE4 468024A0 */ cvt.s.w $f18, $f4 -/* 079BE8 80078FE8 44813000 */ mtc1 $at, $f6 -/* 079BEC 80078FEC 00000000 */ nop -/* 079BF0 80078FF0 46069480 */ add.s $f18, $f18, $f6 -.L80078FF4: -/* 079BF4 80078FF4 46029202 */ mul.s $f8, $f18, $f2 -/* 079BF8 80078FF8 444FF800 */ cfc1 $t7, $31 -/* 079BFC 80078FFC 00000000 */ nop -/* 079C00 80079000 35E10003 */ ori $at, $t7, 3 -/* 079C04 80079004 38210002 */ xori $at, $at, 2 -/* 079C08 80079008 44C1F800 */ ctc1 $at, $31 -/* 079C0C 8007900C 00000000 */ nop -/* 079C10 80079010 460042A4 */ cvt.w.s $f10, $f8 -/* 079C14 80079014 44185000 */ mfc1 $t8, $f10 -/* 079C18 80079018 44CFF800 */ ctc1 $t7, $31 -/* 079C1C 8007901C 02785023 */ subu $t2, $s3, $t8 -/* 079C20 80079020 00000000 */ nop -.L80079024: -/* 079C24 80079024 8FB90044 */ lw $t9, 0x44($sp) -/* 079C28 80079028 00027403 */ sra $t6, $v0, 0x10 -/* 079C2C 8007902C 0179082A */ slt $at, $t3, $t9 -/* 079C30 80079030 102000A5 */ beqz $at, .L800792C8 -/* 079C34 80079034 31CFFFFF */ andi $t7, $t6, 0xffff -/* 079C38 80079038 000FC080 */ sll $t8, $t7, 2 -/* 079C3C 8007903C 0158082A */ slt $at, $t2, $t8 -/* 079C40 80079040 102000A1 */ beqz $at, .L800792C8 -/* 079C44 80079044 00000000 */ nop -/* 079C48 80079048 16A00015 */ bnez $s5, .L800790A0 -/* 079C4C 8007904C 00000000 */ nop -/* 079C50 80079050 93F90000 */ lbu $t9, ($ra) -/* 079C54 80079054 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 079C58 80079058 44998000 */ mtc1 $t9, $f16 -/* 079C5C 8007905C 07210004 */ bgez $t9, .L80079070 -/* 079C60 80079060 46808120 */ cvt.s.w $f4, $f16 -/* 079C64 80079064 44813000 */ mtc1 $at, $f6 -/* 079C68 80079068 00000000 */ nop -/* 079C6C 8007906C 46062100 */ add.s $f4, $f4, $f6 -.L80079070: -/* 079C70 80079070 46002482 */ mul.s $f18, $f4, $f0 -/* 079C74 80079074 444EF800 */ cfc1 $t6, $31 -/* 079C78 80079078 00000000 */ nop -/* 079C7C 8007907C 35C10003 */ ori $at, $t6, 3 -/* 079C80 80079080 38210002 */ xori $at, $at, 2 -/* 079C84 80079084 44C1F800 */ ctc1 $at, $31 -/* 079C88 80079088 00000000 */ nop -/* 079C8C 8007908C 46009224 */ cvt.w.s $f8, $f18 -/* 079C90 80079090 440F4000 */ mfc1 $t7, $f8 -/* 079C94 80079094 44CEF800 */ ctc1 $t6, $31 -/* 079C98 80079098 01EB9021 */ addu $s2, $t7, $t3 -/* 079C9C 8007909C 00000000 */ nop -.L800790A0: -/* 079CA0 800790A0 16C00015 */ bnez $s6, .L800790F8 -/* 079CA4 800790A4 00000000 */ nop -/* 079CA8 800790A8 93F80001 */ lbu $t8, 1($ra) -/* 079CAC 800790AC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 079CB0 800790B0 44985000 */ mtc1 $t8, $f10 -/* 079CB4 800790B4 07010004 */ bgez $t8, .L800790C8 -/* 079CB8 800790B8 46805420 */ cvt.s.w $f16, $f10 -/* 079CBC 800790BC 44813000 */ mtc1 $at, $f6 -/* 079CC0 800790C0 00000000 */ nop -/* 079CC4 800790C4 46068400 */ add.s $f16, $f16, $f6 -.L800790C8: -/* 079CC8 800790C8 46028102 */ mul.s $f4, $f16, $f2 -/* 079CCC 800790CC 4459F800 */ cfc1 $t9, $31 -/* 079CD0 800790D0 00000000 */ nop -/* 079CD4 800790D4 37210003 */ ori $at, $t9, 3 -/* 079CD8 800790D8 38210002 */ xori $at, $at, 2 -/* 079CDC 800790DC 44C1F800 */ ctc1 $at, $31 -/* 079CE0 800790E0 00000000 */ nop -/* 079CE4 800790E4 460024A4 */ cvt.w.s $f18, $f4 -/* 079CE8 800790E8 440E9000 */ mfc1 $t6, $f18 -/* 079CEC 800790EC 44D9F800 */ ctc1 $t9, $31 -/* 079CF0 800790F0 01CA9821 */ addu $s3, $t6, $t2 -/* 079CF4 800790F4 00000000 */ nop -.L800790F8: -/* 079CF8 800790F8 1A400073 */ blez $s2, .L800792C8 -/* 079CFC 800790FC 00000000 */ nop -/* 079D00 80079100 1A600071 */ blez $s3, .L800792C8 -/* 079D04 80079104 0172082A */ slt $at, $t3, $s2 -/* 079D08 80079108 1020006F */ beqz $at, .L800792C8 -/* 079D0C 8007910C 0153082A */ slt $at, $t2, $s3 -/* 079D10 80079110 1020006D */ beqz $at, .L800792C8 -/* 079D14 80079114 00000000 */ nop -/* 079D18 80079118 93E30000 */ lbu $v1, ($ra) -/* 079D1C 8007911C 024BC023 */ subu $t8, $s2, $t3 -/* 079D20 80079120 2463FFFF */ addiu $v1, $v1, -1 -/* 079D24 80079124 00037B00 */ sll $t7, $v1, 0xc -/* 079D28 80079128 01F8001A */ div $zero, $t7, $t8 -/* 079D2C 8007912C 32590FFF */ andi $t9, $s2, 0xfff -/* 079D30 80079130 17000002 */ bnez $t8, .L8007913C -/* 079D34 80079134 00000000 */ nop -/* 079D38 80079138 0007000D */ break 7 -.L8007913C: -/* 079D3C 8007913C 2401FFFF */ li $at, -1 -/* 079D40 80079140 17010004 */ bne $t8, $at, .L80079154 -/* 079D44 80079144 3C018000 */ lui $at, 0x8000 -/* 079D48 80079148 15E10002 */ bne $t7, $at, .L80079154 -/* 079D4C 8007914C 00000000 */ nop -/* 079D50 80079150 0006000D */ break 6 -.L80079154: -/* 079D54 80079154 3C01E400 */ lui $at, 0xe400 -/* 079D58 80079158 00197300 */ sll $t6, $t9, 0xc -/* 079D5C 8007915C 01C17825 */ or $t7, $t6, $at -/* 079D60 80079160 32780FFF */ andi $t8, $s3, 0xfff -/* 079D64 80079164 01F8A025 */ or $s4, $t7, $t8 -/* 079D68 80079168 93E40001 */ lbu $a0, 1($ra) -/* 079D6C 8007916C 00006825 */ move $t5, $zero -/* 079D70 80079170 026A7023 */ subu $t6, $s3, $t2 -/* 079D74 80079174 00004025 */ move $t0, $zero -/* 079D78 80079178 000B7823 */ negu $t7, $t3 -/* 079D7C 8007917C 00006012 */ mflo $t4 -/* 079D80 80079180 12A00004 */ beqz $s5, .L80079194 -/* 079D84 80079184 00000000 */ nop -/* 079D88 80079188 00036940 */ sll $t5, $v1, 5 -/* 079D8C 8007918C 10000001 */ b .L80079194 -/* 079D90 80079190 000C6023 */ negu $t4, $t4 -.L80079194: -/* 079D94 80079194 2483FFFF */ addiu $v1, $a0, -1 -/* 079D98 80079198 0003CB00 */ sll $t9, $v1, 0xc -/* 079D9C 8007919C 032E001A */ div $zero, $t9, $t6 -/* 079DA0 800791A0 15C00002 */ bnez $t6, .L800791AC -/* 079DA4 800791A4 00000000 */ nop -/* 079DA8 800791A8 0007000D */ break 7 -.L800791AC: -/* 079DAC 800791AC 2401FFFF */ li $at, -1 -/* 079DB0 800791B0 15C10004 */ bne $t6, $at, .L800791C4 -/* 079DB4 800791B4 3C018000 */ lui $at, 0x8000 -/* 079DB8 800791B8 17210002 */ bne $t9, $at, .L800791C4 -/* 079DBC 800791BC 00000000 */ nop -/* 079DC0 800791C0 0006000D */ break 6 -.L800791C4: -/* 079DC4 800791C4 000A7023 */ negu $t6, $t2 -/* 079DC8 800791C8 00003812 */ mflo $a3 -/* 079DCC 800791CC 12C00004 */ beqz $s6, .L800791E0 -/* 079DD0 800791D0 00000000 */ nop -/* 079DD4 800791D4 00034140 */ sll $t0, $v1, 5 -/* 079DD8 800791D8 10000001 */ b .L800791E0 -/* 079DDC 800791DC 00073823 */ negu $a3, $a3 -.L800791E0: -/* 079DE0 800791E0 05610006 */ bgez $t3, .L800791FC -/* 079DE4 800791E4 00000000 */ nop -/* 079DE8 800791E8 01EC0019 */ multu $t7, $t4 -/* 079DEC 800791EC 00005825 */ move $t3, $zero -/* 079DF0 800791F0 0000C012 */ mflo $t8 -/* 079DF4 800791F4 0018C9C3 */ sra $t9, $t8, 7 -/* 079DF8 800791F8 01B96821 */ addu $t5, $t5, $t9 -.L800791FC: -/* 079DFC 800791FC 05410006 */ bgez $t2, .L80079218 -/* 079E00 80079200 00000000 */ nop -/* 079E04 80079204 01C70019 */ multu $t6, $a3 -/* 079E08 80079208 00005025 */ move $t2, $zero -/* 079E0C 8007920C 00007812 */ mflo $t7 -/* 079E10 80079210 000FC1C3 */ sra $t8, $t7, 7 -/* 079E14 80079214 01184021 */ addu $t0, $t0, $t8 -.L80079218: -/* 079E18 80079218 8E030000 */ lw $v1, ($s0) -/* 079E1C 8007921C 3C010700 */ lui $at, 0x700 -/* 079E20 80079220 24790008 */ addiu $t9, $v1, 8 -/* 079E24 80079224 AE190000 */ sw $t9, ($s0) -/* 079E28 80079228 87E5000A */ lh $a1, 0xa($ra) -/* 079E2C 8007922C 00000000 */ nop -/* 079E30 80079230 30AE00FF */ andi $t6, $a1, 0xff -/* 079E34 80079234 000E7C00 */ sll $t7, $t6, 0x10 -/* 079E38 80079238 0005C8C0 */ sll $t9, $a1, 3 -/* 079E3C 8007923C 332EFFFF */ andi $t6, $t9, 0xffff -/* 079E40 80079240 01E1C025 */ or $t8, $t7, $at -/* 079E44 80079244 030E7825 */ or $t7, $t8, $t6 -/* 079E48 80079248 AC6F0000 */ sw $t7, ($v1) -/* 079E4C 8007924C 8FF9000C */ lw $t9, 0xc($ra) -/* 079E50 80079250 3C018000 */ lui $at, 0x8000 -/* 079E54 80079254 0321C021 */ addu $t8, $t9, $at -/* 079E58 80079258 AC780004 */ sw $t8, 4($v1) -/* 079E5C 8007925C 8E060000 */ lw $a2, ($s0) -/* 079E60 80079260 316F0FFF */ andi $t7, $t3, 0xfff -/* 079E64 80079264 24CE0008 */ addiu $t6, $a2, 8 -/* 079E68 80079268 AE0E0000 */ sw $t6, ($s0) -/* 079E6C 8007926C 000FCB00 */ sll $t9, $t7, 0xc -/* 079E70 80079270 31580FFF */ andi $t8, $t2, 0xfff -/* 079E74 80079274 03387025 */ or $t6, $t9, $t8 -/* 079E78 80079278 ACCE0004 */ sw $t6, 4($a2) -/* 079E7C 8007927C ACD40000 */ sw $s4, ($a2) -/* 079E80 80079280 8E090000 */ lw $t1, ($s0) -/* 079E84 80079284 3C19B300 */ lui $t9, 0xb300 -/* 079E88 80079288 252F0008 */ addiu $t7, $t1, 8 -/* 079E8C 8007928C AE0F0000 */ sw $t7, ($s0) -/* 079E90 80079290 310FFFFF */ andi $t7, $t0, 0xffff -/* 079E94 80079294 000D7400 */ sll $t6, $t5, 0x10 -/* 079E98 80079298 AD390000 */ sw $t9, ($t1) -/* 079E9C 8007929C 01CFC825 */ or $t9, $t6, $t7 -/* 079EA0 800792A0 AD390004 */ sw $t9, 4($t1) -/* 079EA4 800792A4 8E040000 */ lw $a0, ($s0) -/* 079EA8 800792A8 3C0EB200 */ lui $t6, 0xb200 -/* 079EAC 800792AC 24980008 */ addiu $t8, $a0, 8 -/* 079EB0 800792B0 AE180000 */ sw $t8, ($s0) -/* 079EB4 800792B4 30F8FFFF */ andi $t8, $a3, 0xffff -/* 079EB8 800792B8 000CCC00 */ sll $t9, $t4, 0x10 -/* 079EBC 800792BC AC8E0000 */ sw $t6, ($a0) -/* 079EC0 800792C0 03387025 */ or $t6, $t9, $t8 -/* 079EC4 800792C4 AC8E0004 */ sw $t6, 4($a0) -.L800792C8: -/* 079EC8 800792C8 8E3F0008 */ lw $ra, 8($s1) -/* 079ECC 800792CC 26310008 */ addiu $s1, $s1, 8 -/* 079ED0 800792D0 17E0FEEC */ bnez $ra, .L80078E84 -/* 079ED4 800792D4 00000000 */ nop -/* 079ED8 800792D8 AFB3007C */ sw $s3, 0x7c($sp) -/* 079EDC 800792DC AFB20080 */ sw $s2, 0x80($sp) -.L800792E0: -/* 079EE0 800792E0 8E030000 */ lw $v1, ($s0) -/* 079EE4 800792E4 3C19E700 */ lui $t9, 0xe700 -/* 079EE8 800792E8 246F0008 */ addiu $t7, $v1, 8 -/* 079EEC 800792EC AE0F0000 */ sw $t7, ($s0) -/* 079EF0 800792F0 AC600004 */ sw $zero, 4($v1) -/* 079EF4 800792F4 AC790000 */ sw $t9, ($v1) -/* 079EF8 800792F8 8E030000 */ lw $v1, ($s0) -/* 079EFC 800792FC 240FFFFF */ li $t7, -1 -/* 079F00 80079300 24780008 */ addiu $t8, $v1, 8 -/* 079F04 80079304 AE180000 */ sw $t8, ($s0) -/* 079F08 80079308 3C0EFA00 */ lui $t6, 0xfa00 -/* 079F0C 8007930C AC6E0000 */ sw $t6, ($v1) -/* 079F10 80079310 AC6F0004 */ sw $t7, 4($v1) -/* 079F14 80079314 8FBF003C */ lw $ra, 0x3c($sp) -/* 079F18 80079318 8FBE0038 */ lw $fp, 0x38($sp) -/* 079F1C 8007931C 8FB70034 */ lw $s7, 0x34($sp) -/* 079F20 80079320 8FB60030 */ lw $s6, 0x30($sp) -/* 079F24 80079324 8FB5002C */ lw $s5, 0x2c($sp) -/* 079F28 80079328 8FB40028 */ lw $s4, 0x28($sp) -/* 079F2C 8007932C 8FB30024 */ lw $s3, 0x24($sp) -/* 079F30 80079330 8FB20020 */ lw $s2, 0x20($sp) -/* 079F34 80079334 8FB1001C */ lw $s1, 0x1c($sp) -/* 079F38 80079338 8FB00018 */ lw $s0, 0x18($sp) -/* 079F3C 8007933C 03E00008 */ jr $ra -/* 079F40 80079340 27BD00B0 */ addiu $sp, $sp, 0xb0 - -/* 079F44 80079344 00000000 */ nop -/* 079F48 80079348 00000000 */ nop -/* 079F4C 8007934C 00000000 */ nop diff --git a/asm/unknown_079F50.s b/asm/unknown_079F50.s deleted file mode 100755 index c30804fe..00000000 --- a/asm/unknown_079F50.s +++ /dev/null @@ -1,1133 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_80079350 -/* 079F50 80079350 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 079F54 80079354 AFB0001C */ sw $s0, 0x1c($sp) -/* 079F58 80079358 AFBF0024 */ sw $ra, 0x24($sp) -/* 079F5C 8007935C AFB10020 */ sw $s1, 0x20($sp) -/* 079F60 80079360 AFA5002C */ sw $a1, 0x2c($sp) -/* 079F64 80079364 AFA60030 */ sw $a2, 0x30($sp) -/* 079F68 80079368 AFA70034 */ sw $a3, 0x34($sp) -/* 079F6C 8007936C 240E0001 */ li $t6, 1 -/* 079F70 80079370 240F0004 */ li $t7, 4 -/* 079F74 80079374 00808025 */ move $s0, $a0 -/* 079F78 80079378 AC800274 */ sw $zero, 0x274($a0) -/* 079F7C 8007937C AC800278 */ sw $zero, 0x278($a0) -/* 079F80 80079380 AC800260 */ sw $zero, 0x260($a0) -/* 079F84 80079384 AC800264 */ sw $zero, 0x264($a0) -/* 079F88 80079388 AC800268 */ sw $zero, 0x268($a0) -/* 079F8C 8007938C AC80026C */ sw $zero, 0x26c($a0) -/* 079F90 80079390 AC800270 */ sw $zero, 0x270($a0) -/* 079F94 80079394 AC800280 */ sw $zero, 0x280($a0) -/* 079F98 80079398 AC80027C */ sw $zero, 0x27c($a0) -/* 079F9C 8007939C A48E0000 */ sh $t6, ($a0) -/* 079FA0 800793A0 A48F0020 */ sh $t7, 0x20($a0) -/* 079FA4 800793A4 30F100FF */ andi $s1, $a3, 0xff -/* 079FA8 800793A8 0C034664 */ jal func_800D1990 -/* 079FAC 800793AC 240400FE */ li $a0, 254 -/* 079FB0 800793B0 0011C080 */ sll $t8, $s1, 2 -/* 079FB4 800793B4 0311C021 */ addu $t8, $t8, $s1 -/* 079FB8 800793B8 3C19800E */ lui $t9, %hi(D_800E3900) # $t9, 0x800e -/* 079FBC 800793BC 27393900 */ addiu $t9, %lo(D_800E3900) # addiu $t9, $t9, 0x3900 -/* 079FC0 800793C0 0018C100 */ sll $t8, $t8, 4 -/* 079FC4 800793C4 0C034728 */ jal func_800D1CA0 -/* 079FC8 800793C8 03192021 */ addu $a0, $t8, $t9 -/* 079FCC 800793CC 0C034744 */ jal func_800D1D10 -/* 079FD0 800793D0 24040001 */ li $a0, 1 -/* 079FD4 800793D4 26110040 */ addiu $s1, $s0, 0x40 -/* 079FD8 800793D8 02202025 */ move $a0, $s1 -/* 079FDC 800793DC 26050058 */ addiu $a1, $s0, 0x58 -/* 079FE0 800793E0 0C032208 */ jal osCreateMesgQueue -/* 079FE4 800793E4 24060008 */ li $a2, 8 -/* 079FE8 800793E8 26040078 */ addiu $a0, $s0, 0x78 -/* 079FEC 800793EC 26050090 */ addiu $a1, $s0, 0x90 -/* 079FF0 800793F0 0C032208 */ jal osCreateMesgQueue -/* 079FF4 800793F4 24060008 */ li $a2, 8 -/* 079FF8 800793F8 24040004 */ li $a0, 4 -/* 079FFC 800793FC 02202825 */ move $a1, $s1 -/* 07A000 80079400 0C0332EC */ jal osSetEventMsg -/* 07A004 80079404 2406029B */ li $a2, 667 -/* 07A008 80079408 24040009 */ li $a0, 9 -/* 07A00C 8007940C 02202825 */ move $a1, $s1 -/* 07A010 80079410 0C0332EC */ jal osSetEventMsg -/* 07A014 80079414 2406029C */ li $a2, 668 -/* 07A018 80079418 2404000E */ li $a0, 14 -/* 07A01C 8007941C 02202825 */ move $a1, $s1 -/* 07A020 80079420 0C0332EC */ jal osSetEventMsg -/* 07A024 80079424 2406029D */ li $a2, 669 -/* 07A028 80079428 93A6003B */ lbu $a2, 0x3b($sp) -/* 07A02C 8007942C 02202025 */ move $a0, $s1 -/* 07A030 80079430 0C034760 */ jal osViSetEventMsg -/* 07A034 80079434 2405029A */ li $a1, 666 -/* 07A038 80079438 8FA8002C */ lw $t0, 0x2c($sp) -/* 07A03C 8007943C 8FA90030 */ lw $t1, 0x30($sp) -/* 07A040 80079440 261100B0 */ addiu $s1, $s0, 0xb0 -/* 07A044 80079444 3C068008 */ lui $a2, %hi(D_800795AC) # $a2, 0x8008 -/* 07A048 80079448 24C695AC */ addiu $a2, %lo(D_800795AC) # addiu $a2, $a2, -0x6a54 -/* 07A04C 8007944C 02202025 */ move $a0, $s1 -/* 07A050 80079450 24050005 */ li $a1, 5 -/* 07A054 80079454 02003825 */ move $a3, $s0 -/* 07A058 80079458 AFA80010 */ sw $t0, 0x10($sp) -/* 07A05C 8007945C 0C032214 */ jal osCreateThread -/* 07A060 80079460 AFA90014 */ sw $t1, 0x14($sp) -/* 07A064 80079464 0C032268 */ jal osStartThread -/* 07A068 80079468 02202025 */ move $a0, $s1 -/* 07A06C 8007946C 8FBF0024 */ lw $ra, 0x24($sp) -/* 07A070 80079470 8FB0001C */ lw $s0, 0x1c($sp) -/* 07A074 80079474 8FB10020 */ lw $s1, 0x20($sp) -/* 07A078 80079478 03E00008 */ jr $ra -/* 07A07C 8007947C 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_80079480 -/* 07A080 80079480 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 07A084 80079484 AFBF0014 */ sw $ra, 0x14($sp) -/* 07A088 80079488 AFA40018 */ sw $a0, 0x18($sp) -/* 07A08C 8007948C AFA60020 */ sw $a2, 0x20($sp) -/* 07A090 80079490 AFA70024 */ sw $a3, 0x24($sp) -/* 07A094 80079494 24040001 */ li $a0, 1 -/* 07A098 80079498 0C03268C */ jal func_800C9A30 -/* 07A09C 8007949C AFA5001C */ sw $a1, 0x1c($sp) -/* 07A0A0 800794A0 8FA30018 */ lw $v1, 0x18($sp) -/* 07A0A4 800794A4 8FA5001C */ lw $a1, 0x1c($sp) -/* 07A0A8 800794A8 8FAE0020 */ lw $t6, 0x20($sp) -/* 07A0AC 800794AC 00402025 */ move $a0, $v0 -/* 07A0B0 800794B0 ACAE0008 */ sw $t6, 8($a1) -/* 07A0B4 800794B4 8C6F0260 */ lw $t7, 0x260($v1) -/* 07A0B8 800794B8 00000000 */ nop -/* 07A0BC 800794BC ACAF0004 */ sw $t7, 4($a1) -/* 07A0C0 800794C0 93B80027 */ lbu $t8, 0x27($sp) -/* 07A0C4 800794C4 00000000 */ nop -/* 07A0C8 800794C8 A0B80000 */ sb $t8, ($a1) -/* 07A0CC 800794CC 0C03268C */ jal func_800C9A30 -/* 07A0D0 800794D0 AC650260 */ sw $a1, 0x260($v1) -/* 07A0D4 800794D4 8FBF0014 */ lw $ra, 0x14($sp) -/* 07A0D8 800794D8 27BD0018 */ addiu $sp, $sp, 0x18 -/* 07A0DC 800794DC 03E00008 */ jr $ra -/* 07A0E0 800794E0 00000000 */ nop - -/* 07A0E4 800794E4 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 07A0E8 800794E8 AFBF0014 */ sw $ra, 0x14($sp) -/* 07A0EC 800794EC AFA40020 */ sw $a0, 0x20($sp) -/* 07A0F0 800794F0 8C830260 */ lw $v1, 0x260($a0) -/* 07A0F4 800794F4 AFA00018 */ sw $zero, 0x18($sp) -/* 07A0F8 800794F8 AFA50024 */ sw $a1, 0x24($sp) -/* 07A0FC 800794FC 24040001 */ li $a0, 1 -/* 07A100 80079500 0C03268C */ jal func_800C9A30 -/* 07A104 80079504 AFA3001C */ sw $v1, 0x1c($sp) -/* 07A108 80079508 8FA3001C */ lw $v1, 0x1c($sp) -/* 07A10C 8007950C 8FA50024 */ lw $a1, 0x24($sp) -/* 07A110 80079510 8FA60018 */ lw $a2, 0x18($sp) -/* 07A114 80079514 10600011 */ beqz $v1, .L8007955C -/* 07A118 80079518 00402025 */ move $a0, $v0 -.L8007951C: -/* 07A11C 8007951C 1465000A */ bne $v1, $a1, .L80079548 -/* 07A120 80079520 00000000 */ nop -/* 07A124 80079524 10C00004 */ beqz $a2, .L80079538 -/* 07A128 80079528 00000000 */ nop -/* 07A12C 8007952C 8CAF0004 */ lw $t7, 4($a1) -/* 07A130 80079530 1000000A */ b .L8007955C -/* 07A134 80079534 ACCF0004 */ sw $t7, 4($a2) -.L80079538: -/* 07A138 80079538 8CB80004 */ lw $t8, 4($a1) -/* 07A13C 8007953C 8FB90020 */ lw $t9, 0x20($sp) -/* 07A140 80079540 10000006 */ b .L8007955C -/* 07A144 80079544 AF380260 */ sw $t8, 0x260($t9) -.L80079548: -/* 07A148 80079548 00603025 */ move $a2, $v1 -/* 07A14C 8007954C 8C630004 */ lw $v1, 4($v1) -/* 07A150 80079550 00000000 */ nop -/* 07A154 80079554 1460FFF1 */ bnez $v1, .L8007951C -/* 07A158 80079558 00000000 */ nop -.L8007955C: -/* 07A15C 8007955C 0C03268C */ jal func_800C9A30 -/* 07A160 80079560 00000000 */ nop -/* 07A164 80079564 8FBF0014 */ lw $ra, 0x14($sp) -/* 07A168 80079568 27BD0020 */ addiu $sp, $sp, 0x20 -/* 07A16C 8007956C 03E00008 */ jr $ra -/* 07A170 80079570 00000000 */ nop - -glabel func_80079574 -/* 07A174 80079574 03E00008 */ jr $ra -/* 07A178 80079578 24820078 */ addiu $v0, $a0, 0x78 - -glabel func_8007957C -/* 07A17C 8007957C 03E00008 */ jr $ra -/* 07A180 80079580 24820040 */ addiu $v0, $a0, 0x40 - -/* 07A184 80079584 3C01800E */ lui $at, %hi(D_800DE740) # $at, 0x800e -/* 07A188 80079588 C424E740 */ lwc1 $f4, %lo(D_800DE740)($at) -/* 07A18C 8007958C 3C01800E */ lui $at, %hi(D_800DE748) # $at, 0x800e -/* 07A190 80079590 E4840000 */ swc1 $f4, ($a0) -/* 07A194 80079594 C426E748 */ lwc1 $f6, %lo(D_800DE748)($at) -/* 07A198 80079598 3C01800E */ lui $at, %hi(D_800DE74C) # $at, 0x800e -/* 07A19C 8007959C E4A60000 */ swc1 $f6, ($a1) -/* 07A1A0 800795A0 C428E74C */ lwc1 $f8, %lo(D_800DE74C)($at) -/* 07A1A4 800795A4 03E00008 */ jr $ra -/* 07A1A8 800795A8 E4C80000 */ swc1 $f8, ($a2) - -glabel D_800795AC -/* 07A1AC 800795AC 27BDFF98 */ addiu $sp, $sp, -0x68 -/* 07A1B0 800795B0 AFBE0038 */ sw $fp, 0x38($sp) -/* 07A1B4 800795B4 AFB70034 */ sw $s7, 0x34($sp) -/* 07A1B8 800795B8 AFB60030 */ sw $s6, 0x30($sp) -/* 07A1BC 800795BC AFB5002C */ sw $s5, 0x2c($sp) -/* 07A1C0 800795C0 AFB40028 */ sw $s4, 0x28($sp) -/* 07A1C4 800795C4 AFB30024 */ sw $s3, 0x24($sp) -/* 07A1C8 800795C8 AFB20020 */ sw $s2, 0x20($sp) -/* 07A1CC 800795CC 00809025 */ move $s2, $a0 -/* 07A1D0 800795D0 AFBF003C */ sw $ra, 0x3c($sp) -/* 07A1D4 800795D4 AFB1001C */ sw $s1, 0x1c($sp) -/* 07A1D8 800795D8 AFB00018 */ sw $s0, 0x18($sp) -/* 07A1DC 800795DC AFA00064 */ sw $zero, 0x64($sp) -/* 07A1E0 800795E0 AFA00054 */ sw $zero, 0x54($sp) -/* 07A1E4 800795E4 AFA00050 */ sw $zero, 0x50($sp) -/* 07A1E8 800795E8 24930040 */ addiu $s3, $a0, 0x40 -/* 07A1EC 800795EC 27B40064 */ addiu $s4, $sp, 0x64 -/* 07A1F0 800795F0 24150063 */ li $s5, 99 -/* 07A1F4 800795F4 2416029A */ li $s6, 666 -/* 07A1F8 800795F8 2417029B */ li $s7, 667 -/* 07A1FC 800795FC 241E029C */ li $fp, 668 -/* 07A200 80079600 02602025 */ move $a0, $s3 -.L80079604: -/* 07A204 80079604 02802825 */ move $a1, $s4 -/* 07A208 80079608 0C0322EC */ jal osRecvMesg -/* 07A20C 8007960C 24060001 */ li $a2, 1 -/* 07A210 80079610 8FAE0064 */ lw $t6, 0x64($sp) -/* 07A214 80079614 00000000 */ nop -/* 07A218 80079618 11D50017 */ beq $t6, $s5, .L80079678 -/* 07A21C 8007961C 00000000 */ nop -/* 07A220 80079620 11D60009 */ beq $t6, $s6, .L80079648 -/* 07A224 80079624 00000000 */ nop -/* 07A228 80079628 11D7000B */ beq $t6, $s7, .L80079658 -/* 07A22C 8007962C 00000000 */ nop -/* 07A230 80079630 11DE000D */ beq $t6, $fp, .L80079668 -/* 07A234 80079634 2401029D */ li $at, 669 -/* 07A238 80079638 11C10013 */ beq $t6, $at, .L80079688 -/* 07A23C 8007963C 00000000 */ nop -/* 07A240 80079640 10000020 */ b .L800796C4 -/* 07A244 80079644 8FA50064 */ lw $a1, 0x64($sp) -.L80079648: -/* 07A248 80079648 0C01E606 */ jal func_80079818 -/* 07A24C 8007964C 02402025 */ move $a0, $s2 -/* 07A250 80079650 1000FFEC */ b .L80079604 -/* 07A254 80079654 02602025 */ move $a0, $s3 -.L80079658: -/* 07A258 80079658 0C01E6D1 */ jal func_80079B44 -/* 07A25C 8007965C 02402025 */ move $a0, $s2 -/* 07A260 80079660 1000FFE8 */ b .L80079604 -/* 07A264 80079664 02602025 */ move $a0, $s3 -.L80079668: -/* 07A268 80079668 0C01E757 */ jal func_80079D5C -/* 07A26C 8007966C 02402025 */ move $a0, $s2 -/* 07A270 80079670 1000FFE4 */ b .L80079604 -/* 07A274 80079674 02602025 */ move $a0, $s3 -.L80079678: -/* 07A278 80079678 0C01E5D8 */ jal func_80079760 -/* 07A27C 8007967C 02402025 */ move $a0, $s2 -/* 07A280 80079680 1000FFE0 */ b .L80079604 -/* 07A284 80079684 02602025 */ move $a0, $s3 -.L80079688: -/* 07A288 80079688 8E500260 */ lw $s0, 0x260($s2) -/* 07A28C 8007968C 26510020 */ addiu $s1, $s2, 0x20 -/* 07A290 80079690 1200FFDC */ beqz $s0, .L80079604 -/* 07A294 80079694 02602025 */ move $a0, $s3 -.L80079698: -/* 07A298 80079698 8E040008 */ lw $a0, 8($s0) -/* 07A29C 8007969C 02202825 */ move $a1, $s1 -/* 07A2A0 800796A0 0C03238C */ jal func_800C8E30 -/* 07A2A4 800796A4 00003025 */ move $a2, $zero -/* 07A2A8 800796A8 8E100004 */ lw $s0, 4($s0) -/* 07A2AC 800796AC 00000000 */ nop -/* 07A2B0 800796B0 1600FFF9 */ bnez $s0, .L80079698 -/* 07A2B4 800796B4 00000000 */ nop -/* 07A2B8 800796B8 1000FFD2 */ b .L80079604 -/* 07A2BC 800796BC 02602025 */ move $a0, $s3 -/* 07A2C0 800796C0 8FA50064 */ lw $a1, 0x64($sp) -.L800796C4: -/* 07A2C4 800796C4 0C01E7D0 */ jal func_80079F40 -/* 07A2C8 800796C8 02402025 */ move $a0, $s2 -/* 07A2CC 800796CC 8E4F0274 */ lw $t7, 0x274($s2) -/* 07A2D0 800796D0 8E480278 */ lw $t0, 0x278($s2) -/* 07A2D4 800796D4 2DF80001 */ sltiu $t8, $t7, 1 -/* 07A2D8 800796D8 0018C840 */ sll $t9, $t8, 1 -/* 07A2DC 800796DC 2D090001 */ sltiu $t1, $t0, 1 -/* 07A2E0 800796E0 03298025 */ or $s0, $t9, $t1 -/* 07A2E4 800796E4 02003825 */ move $a3, $s0 -/* 07A2E8 800796E8 02402025 */ move $a0, $s2 -/* 07A2EC 800796EC 27A50054 */ addiu $a1, $sp, 0x54 -/* 07A2F0 800796F0 0C01E835 */ jal func_8007A0D4 -/* 07A2F4 800796F4 27A60050 */ addiu $a2, $sp, 0x50 -/* 07A2F8 800796F8 1050FFC2 */ beq $v0, $s0, .L80079604 -/* 07A2FC 800796FC 02602025 */ move $a0, $s3 -/* 07A300 80079700 8FA50054 */ lw $a1, 0x54($sp) -/* 07A304 80079704 8FA60050 */ lw $a2, 0x50($sp) -/* 07A308 80079708 0C01E7EA */ jal func_80079FA8 -/* 07A30C 8007970C 02402025 */ move $a0, $s2 -/* 07A310 80079710 1000FFBC */ b .L80079604 -/* 07A314 80079714 02602025 */ move $a0, $s3 -/* 07A318 80079718 00000000 */ nop -/* 07A31C 8007971C 00000000 */ nop -/* 07A320 80079720 00000000 */ nop -/* 07A324 80079724 00000000 */ nop -/* 07A328 80079728 00000000 */ nop -/* 07A32C 8007972C 00000000 */ nop -/* 07A330 80079730 8FBF003C */ lw $ra, 0x3c($sp) -/* 07A334 80079734 8FB00018 */ lw $s0, 0x18($sp) -/* 07A338 80079738 8FB1001C */ lw $s1, 0x1c($sp) -/* 07A33C 8007973C 8FB20020 */ lw $s2, 0x20($sp) -/* 07A340 80079740 8FB30024 */ lw $s3, 0x24($sp) -/* 07A344 80079744 8FB40028 */ lw $s4, 0x28($sp) -/* 07A348 80079748 8FB5002C */ lw $s5, 0x2c($sp) -/* 07A34C 8007974C 8FB60030 */ lw $s6, 0x30($sp) -/* 07A350 80079750 8FB70034 */ lw $s7, 0x34($sp) -/* 07A354 80079754 8FBE0038 */ lw $fp, 0x38($sp) -/* 07A358 80079758 03E00008 */ jr $ra -/* 07A35C 8007975C 27BD0068 */ addiu $sp, $sp, 0x68 - -glabel func_80079760 -/* 07A360 80079760 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 07A364 80079764 AFBF0014 */ sw $ra, 0x14($sp) -/* 07A368 80079768 AFA00020 */ sw $zero, 0x20($sp) -/* 07A36C 8007976C AFA0001C */ sw $zero, 0x1c($sp) -/* 07A370 80079770 8C8E0264 */ lw $t6, 0x264($a0) -/* 07A374 80079774 240F0001 */ li $t7, 1 -/* 07A378 80079778 11C00002 */ beqz $t6, .L80079784 -/* 07A37C 8007977C 27A50020 */ addiu $a1, $sp, 0x20 -/* 07A380 80079780 AC8F0284 */ sw $t7, 0x284($a0) -.L80079784: -/* 07A384 80079784 8C980284 */ lw $t8, 0x284($a0) -/* 07A388 80079788 27A6001C */ addiu $a2, $sp, 0x1c -/* 07A38C 8007978C 13000009 */ beqz $t8, .L800797B4 -/* 07A390 80079790 00000000 */ nop -/* 07A394 80079794 8C990274 */ lw $t9, 0x274($a0) -/* 07A398 80079798 00000000 */ nop -/* 07A39C 8007979C 13200005 */ beqz $t9, .L800797B4 -/* 07A3A0 800797A0 00000000 */ nop -/* 07A3A4 800797A4 0C01E820 */ jal func_8007A080 -/* 07A3A8 800797A8 00000000 */ nop -/* 07A3AC 800797AC 10000013 */ b .L800797FC -/* 07A3B0 800797B0 8FBF0014 */ lw $ra, 0x14($sp) -.L800797B4: -/* 07A3B4 800797B4 8C880274 */ lw $t0, 0x274($a0) -/* 07A3B8 800797B8 8C8B0278 */ lw $t3, 0x278($a0) -/* 07A3BC 800797BC 2D090001 */ sltiu $t1, $t0, 1 -/* 07A3C0 800797C0 00095040 */ sll $t2, $t1, 1 -/* 07A3C4 800797C4 2D6C0001 */ sltiu $t4, $t3, 1 -/* 07A3C8 800797C8 014C3825 */ or $a3, $t2, $t4 -/* 07A3CC 800797CC AFA70024 */ sw $a3, 0x24($sp) -/* 07A3D0 800797D0 0C01E835 */ jal func_8007A0D4 -/* 07A3D4 800797D4 AFA40028 */ sw $a0, 0x28($sp) -/* 07A3D8 800797D8 8FA70024 */ lw $a3, 0x24($sp) -/* 07A3DC 800797DC 8FA40028 */ lw $a0, 0x28($sp) -/* 07A3E0 800797E0 10470006 */ beq $v0, $a3, .L800797FC -/* 07A3E4 800797E4 8FBF0014 */ lw $ra, 0x14($sp) -/* 07A3E8 800797E8 8FA50020 */ lw $a1, 0x20($sp) -/* 07A3EC 800797EC 8FA6001C */ lw $a2, 0x1c($sp) -/* 07A3F0 800797F0 0C01E7EA */ jal func_80079FA8 -/* 07A3F4 800797F4 00000000 */ nop -/* 07A3F8 800797F8 8FBF0014 */ lw $ra, 0x14($sp) -.L800797FC: -/* 07A3FC 800797FC 27BD0028 */ addiu $sp, $sp, 0x28 -/* 07A400 80079800 03E00008 */ jr $ra -/* 07A404 80079804 00000000 */ nop - -/* 07A408 80079808 03E00008 */ jr $ra -/* 07A40C 8007980C 00000000 */ nop - -/* 07A410 80079810 03E00008 */ jr $ra -/* 07A414 80079814 00000000 */ nop - -glabel func_80079818 -/* 07A418 80079818 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 07A41C 8007981C AFBF001C */ sw $ra, 0x1c($sp) -/* 07A420 80079820 AFB10018 */ sw $s1, 0x18($sp) -/* 07A424 80079824 AFB00014 */ sw $s0, 0x14($sp) -/* 07A428 80079828 AFA00044 */ sw $zero, 0x44($sp) -/* 07A42C 8007982C AFA00038 */ sw $zero, 0x38($sp) -/* 07A430 80079830 AFA00034 */ sw $zero, 0x34($sp) -/* 07A434 80079834 A3A00032 */ sb $zero, 0x32($sp) -/* 07A438 80079838 8C8E0274 */ lw $t6, 0x274($a0) -/* 07A43C 8007983C 00808825 */ move $s1, $a0 -/* 07A440 80079840 11C00007 */ beqz $t6, .L80079860 -/* 07A444 80079844 00008025 */ move $s0, $zero -/* 07A448 80079848 3C03800E */ lui $v1, %hi(D_800DE754) # $v1, 0x800e -/* 07A44C 8007984C 2463E754 */ addiu $v1, %lo(D_800DE754) # addiu $v1, $v1, -0x18ac -/* 07A450 80079850 8C6F0000 */ lw $t7, ($v1) -/* 07A454 80079854 00000000 */ nop -/* 07A458 80079858 25F80001 */ addiu $t8, $t7, 1 -/* 07A45C 8007985C AC780000 */ sw $t8, ($v1) -.L80079860: -/* 07A460 80079860 8E390278 */ lw $t9, 0x278($s1) -/* 07A464 80079864 3C03800E */ lui $v1, %hi(D_800DE754) # $v1, 0x800e -/* 07A468 80079868 13200006 */ beqz $t9, .L80079884 -/* 07A46C 8007986C 2463E754 */ addiu $v1, %lo(D_800DE754) # addiu $v1, $v1, -0x18ac -/* 07A470 80079870 3C08800E */ lui $t0, %hi(D_800DE758) # $t0, 0x800e -/* 07A474 80079874 8D08E758 */ lw $t0, %lo(D_800DE758)($t0) -/* 07A478 80079878 3C01800E */ lui $at, %hi(D_800DE758) # $at, 0x800e -/* 07A47C 8007987C 25090001 */ addiu $t1, $t0, 1 -/* 07A480 80079880 AC29E758 */ sw $t1, %lo(D_800DE758)($at) -.L80079884: -/* 07A484 80079884 8C6A0000 */ lw $t2, ($v1) -/* 07A488 80079888 8E220274 */ lw $v0, 0x274($s1) -/* 07A48C 8007988C 2941000B */ slti $at, $t2, 0xb -/* 07A490 80079890 14200009 */ bnez $at, .L800798B8 -/* 07A494 80079894 00000000 */ nop -/* 07A498 80079898 10400007 */ beqz $v0, .L800798B8 -/* 07A49C 8007989C 3C0400AA */ lui $a0, (0x00AAAA82 >> 16) # lui $a0, 0xaa -/* 07A4A0 800798A0 AC600000 */ sw $zero, ($v1) -/* 07A4A4 800798A4 24100001 */ li $s0, 1 -/* 07A4A8 800798A8 0C033490 */ jal func_800CD240 -/* 07A4AC 800798AC 3484AA82 */ ori $a0, (0x00AAAA82 & 0xFFFF) # ori $a0, $a0, 0xaa82 -/* 07A4B0 800798B0 10000005 */ b .L800798C8 -/* 07A4B4 800798B4 00000000 */ nop -.L800798B8: -/* 07A4B8 800798B8 10400003 */ beqz $v0, .L800798C8 -/* 07A4BC 800798BC 240B0001 */ li $t3, 1 -/* 07A4C0 800798C0 3C018012 */ lui $at, %hi(D_80126110) # $at, 0x8012 -/* 07A4C4 800798C4 AC2B6110 */ sw $t3, %lo(D_80126110)($at) -.L800798C8: -/* 07A4C8 800798C8 3C0C800E */ lui $t4, %hi(D_800DE758) # $t4, 0x800e -/* 07A4CC 800798CC 8D8CE758 */ lw $t4, %lo(D_800DE758)($t4) -/* 07A4D0 800798D0 8E220278 */ lw $v0, 0x278($s1) -/* 07A4D4 800798D4 2981000B */ slti $at, $t4, 0xb -/* 07A4D8 800798D8 14200016 */ bnez $at, .L80079934 -/* 07A4DC 800798DC 00000000 */ nop -/* 07A4E0 800798E0 10400014 */ beqz $v0, .L80079934 -/* 07A4E4 800798E4 00000000 */ nop -/* 07A4E8 800798E8 8C4D0068 */ lw $t5, 0x68($v0) -/* 07A4EC 800798EC 3C05800E */ lui $a1, %hi(D_800DE738) # $a1, 0x800e -/* 07A4F0 800798F0 15A00004 */ bnez $t5, .L80079904 -/* 07A4F4 800798F4 24A5E738 */ addiu $a1, %lo(D_800DE738) # addiu $a1, $a1, -0x18c8 -/* 07A4F8 800798F8 8C440050 */ lw $a0, 0x50($v0) -/* 07A4FC 800798FC 0C03238C */ jal func_800C8E30 -/* 07A500 80079900 24060001 */ li $a2, 1 -.L80079904: -/* 07A504 80079904 240E0001 */ li $t6, 1 -/* 07A508 80079908 A3AE0032 */ sb $t6, 0x32($sp) -/* 07A50C 8007990C AE200280 */ sw $zero, 0x280($s1) -/* 07A510 80079910 3C01800E */ lui $at, %hi(D_800DE758) # $at, 0x800e -/* 07A514 80079914 3C0400AA */ lui $a0, (0x00AAAA82 >> 16) # lui $a0, 0xaa -/* 07A518 80079918 AC20E758 */ sw $zero, %lo(D_800DE758)($at) -/* 07A51C 8007991C 0C033490 */ jal func_800CD240 -/* 07A520 80079920 3484AA82 */ ori $a0, (0x00AAAA82 & 0xFFFF) # ori $a0, $a0, 0xaa82 -/* 07A524 80079924 0C033494 */ jal func_800CD250 -/* 07A528 80079928 240401D6 */ li $a0, 470 -/* 07A52C 8007992C 10000005 */ b .L80079944 -/* 07A530 80079930 00000000 */ nop -.L80079934: -/* 07A534 80079934 10400003 */ beqz $v0, .L80079944 -/* 07A538 80079938 240F0001 */ li $t7, 1 -/* 07A53C 8007993C 3C018012 */ lui $at, %hi(D_80126114) # $at, 0x8012 -/* 07A540 80079940 AC2F6114 */ sw $t7, %lo(D_80126114)($at) -.L80079944: -/* 07A544 80079944 12000002 */ beqz $s0, .L80079950 -/* 07A548 80079948 26240078 */ addiu $a0, $s1, 0x78 -/* 07A54C 8007994C AE200274 */ sw $zero, 0x274($s1) -.L80079950: -/* 07A550 80079950 93B80032 */ lbu $t8, 0x32($sp) -/* 07A554 80079954 27A50044 */ addiu $a1, $sp, 0x44 -/* 07A558 80079958 13000002 */ beqz $t8, .L80079964 -/* 07A55C 8007995C 00003025 */ move $a2, $zero -/* 07A560 80079960 AE200278 */ sw $zero, 0x278($s1) -.L80079964: -/* 07A564 80079964 0C0322EC */ jal osRecvMesg -/* 07A568 80079968 AFA40028 */ sw $a0, 0x28($sp) -/* 07A56C 8007996C 2410FFFF */ li $s0, -1 -/* 07A570 80079970 1050000A */ beq $v0, $s0, .L8007999C -/* 07A574 80079974 00000000 */ nop -/* 07A578 80079978 8FA50044 */ lw $a1, 0x44($sp) -.L8007997C: -/* 07A57C 8007997C 0C01E7D0 */ jal func_80079F40 -/* 07A580 80079980 02202025 */ move $a0, $s1 -/* 07A584 80079984 8FA40028 */ lw $a0, 0x28($sp) -/* 07A588 80079988 27A50044 */ addiu $a1, $sp, 0x44 -/* 07A58C 8007998C 0C0322EC */ jal osRecvMesg -/* 07A590 80079990 00003025 */ move $a2, $zero -/* 07A594 80079994 1450FFF9 */ bne $v0, $s0, .L8007997C -/* 07A598 80079998 8FA50044 */ lw $a1, 0x44($sp) -.L8007999C: -/* 07A59C 8007999C 8E390274 */ lw $t9, 0x274($s1) -/* 07A5A0 800799A0 8E2A0278 */ lw $t2, 0x278($s1) -/* 07A5A4 800799A4 2F280001 */ sltiu $t0, $t9, 1 -/* 07A5A8 800799A8 00084840 */ sll $t1, $t0, 1 -/* 07A5AC 800799AC 2D4B0001 */ sltiu $t3, $t2, 1 -/* 07A5B0 800799B0 012B8025 */ or $s0, $t1, $t3 -/* 07A5B4 800799B4 02003825 */ move $a3, $s0 -/* 07A5B8 800799B8 02202025 */ move $a0, $s1 -/* 07A5BC 800799BC 27A50038 */ addiu $a1, $sp, 0x38 -/* 07A5C0 800799C0 0C01E835 */ jal func_8007A0D4 -/* 07A5C4 800799C4 27A60034 */ addiu $a2, $sp, 0x34 -/* 07A5C8 800799C8 10500005 */ beq $v0, $s0, .L800799E0 -/* 07A5CC 800799CC 00000000 */ nop -/* 07A5D0 800799D0 8FA50038 */ lw $a1, 0x38($sp) -/* 07A5D4 800799D4 8FA60034 */ lw $a2, 0x34($sp) -/* 07A5D8 800799D8 0C01E7EA */ jal func_80079FA8 -/* 07A5DC 800799DC 02202025 */ move $a0, $s1 -.L800799E0: -/* 07A5E0 800799E0 3C0D800E */ lui $t5, %hi(D_800DE764) # $t5, 0x800e -/* 07A5E4 800799E4 8DADE764 */ lw $t5, %lo(D_800DE764)($t5) -/* 07A5E8 800799E8 3C0C800E */ lui $t4, %hi(D_800DE760) # $t4, 0x800e -/* 07A5EC 800799EC 8D8CE760 */ lw $t4, %lo(D_800DE760)($t4) -/* 07A5F0 800799F0 25AF0001 */ addiu $t7, $t5, 1 -/* 07A5F4 800799F4 2DE10001 */ sltiu $at, $t7, 1 -/* 07A5F8 800799F8 01817021 */ addu $t6, $t4, $at -/* 07A5FC 800799FC 3C01800E */ lui $at, %hi(D_800DE764) # $at, 0x800e -/* 07A600 80079A00 3C02800E */ lui $v0, %hi(D_800DE750) # $v0, 0x800e -/* 07A604 80079A04 2442E750 */ addiu $v0, %lo(D_800DE750) # addiu $v0, $v0, -0x18b0 -/* 07A608 80079A08 AC2EE760 */ sw $t6, %lo(D_800DE760)($at) -/* 07A60C 80079A0C AC2FE764 */ sw $t7, %lo(D_800DE764)($at) -/* 07A610 80079A10 8C580000 */ lw $t8, ($v0) -/* 07A614 80079A14 00000000 */ nop -/* 07A618 80079A18 27190001 */ addiu $t9, $t8, 1 -/* 07A61C 80079A1C AC590000 */ sw $t9, ($v0) -/* 07A620 80079A20 8E280280 */ lw $t0, 0x280($s1) -/* 07A624 80079A24 8E23027C */ lw $v1, 0x27c($s1) -/* 07A628 80079A28 250A0001 */ addiu $t2, $t0, 1 -/* 07A62C 80079A2C 10600019 */ beqz $v1, .L80079A94 -/* 07A630 80079A30 AE2A0280 */ sw $t2, 0x280($s1) -/* 07A634 80079A34 2D410002 */ sltiu $at, $t2, 2 -/* 07A638 80079A38 14200016 */ bnez $at, .L80079A94 -/* 07A63C 80079A3C 00000000 */ nop -/* 07A640 80079A40 8C640050 */ lw $a0, 0x50($v1) -/* 07A644 80079A44 00601025 */ move $v0, $v1 -/* 07A648 80079A48 10800010 */ beqz $a0, .L80079A8C -/* 07A64C 80079A4C 00000000 */ nop -/* 07A650 80079A50 8C6B0068 */ lw $t3, 0x68($v1) -/* 07A654 80079A54 00000000 */ nop -/* 07A658 80079A58 15600005 */ bnez $t3, .L80079A70 -/* 07A65C 80079A5C 00000000 */ nop -/* 07A660 80079A60 8C6C0054 */ lw $t4, 0x54($v1) -/* 07A664 80079A64 3C05800E */ lui $a1, %hi(D_800DE730) # $a1, 0x800e -/* 07A668 80079A68 11800006 */ beqz $t4, .L80079A84 -/* 07A66C 80079A6C 24A5E730 */ addiu $a1, %lo(D_800DE730) # addiu $a1, $a1, -0x18d0 -.L80079A70: -/* 07A670 80079A70 8C450054 */ lw $a1, 0x54($v0) -/* 07A674 80079A74 0C03238C */ jal func_800C8E30 -/* 07A678 80079A78 24060001 */ li $a2, 1 -/* 07A67C 80079A7C 10000004 */ b .L80079A90 -/* 07A680 80079A80 AE200280 */ sw $zero, 0x280($s1) -.L80079A84: -/* 07A684 80079A84 0C03238C */ jal func_800C8E30 -/* 07A688 80079A88 24060001 */ li $a2, 1 -.L80079A8C: -/* 07A68C 80079A8C AE200280 */ sw $zero, 0x280($s1) -.L80079A90: -/* 07A690 80079A90 AE20027C */ sw $zero, 0x27c($s1) -.L80079A94: -/* 07A694 80079A94 8E300260 */ lw $s0, 0x260($s1) -/* 07A698 80079A98 00000000 */ nop -/* 07A69C 80079A9C 12000025 */ beqz $s0, .L80079B34 -/* 07A6A0 80079AA0 8FBF001C */ lw $ra, 0x1c($sp) -.L80079AA4: -/* 07A6A4 80079AA4 92020000 */ lbu $v0, ($s0) -/* 07A6A8 80079AA8 24010001 */ li $at, 1 -/* 07A6AC 80079AAC 14410016 */ bne $v0, $at, .L80079B08 -/* 07A6B0 80079AB0 3C04800E */ lui $a0, %hi(D_800DE760) # $a0, 0x800e -/* 07A6B4 80079AB4 3C05800E */ lui $a1, %hi(D_800DE764) # $a1, 0x800e -/* 07A6B8 80079AB8 8CA5E764 */ lw $a1, %lo(D_800DE764)($a1) -/* 07A6BC 80079ABC 8C84E760 */ lw $a0, %lo(D_800DE760)($a0) -/* 07A6C0 80079AC0 24060000 */ li $a2, 0 -/* 07A6C4 80079AC4 0C033AA3 */ jal __ull_rem -/* 07A6C8 80079AC8 24070002 */ li $a3, 2 -/* 07A6CC 80079ACC 14400014 */ bnez $v0, .L80079B20 -/* 07A6D0 80079AD0 00000000 */ nop -/* 07A6D4 80079AD4 14600012 */ bnez $v1, .L80079B20 -/* 07A6D8 80079AD8 02202825 */ move $a1, $s1 -/* 07A6DC 80079ADC 8E040008 */ lw $a0, 8($s0) -/* 07A6E0 80079AE0 0C03238C */ jal func_800C8E30 -/* 07A6E4 80079AE4 00003025 */ move $a2, $zero -/* 07A6E8 80079AE8 8E2D0264 */ lw $t5, 0x264($s1) -/* 07A6EC 80079AEC 00000000 */ nop -/* 07A6F0 80079AF0 11A0000B */ beqz $t5, .L80079B20 -/* 07A6F4 80079AF4 00000000 */ nop -/* 07A6F8 80079AF8 0C01E5D8 */ jal func_80079760 -/* 07A6FC 80079AFC 02202025 */ move $a0, $s1 -/* 07A700 80079B00 10000008 */ b .L80079B24 -/* 07A704 80079B04 8E100004 */ lw $s0, 4($s0) -.L80079B08: -/* 07A708 80079B08 24010002 */ li $at, 2 -/* 07A70C 80079B0C 14410004 */ bne $v0, $at, .L80079B20 -/* 07A710 80079B10 02202825 */ move $a1, $s1 -/* 07A714 80079B14 8E040008 */ lw $a0, 8($s0) -/* 07A718 80079B18 0C03238C */ jal func_800C8E30 -/* 07A71C 80079B1C 00003025 */ move $a2, $zero -.L80079B20: -/* 07A720 80079B20 8E100004 */ lw $s0, 4($s0) -.L80079B24: -/* 07A724 80079B24 00000000 */ nop -/* 07A728 80079B28 1600FFDE */ bnez $s0, .L80079AA4 -/* 07A72C 80079B2C 00000000 */ nop -/* 07A730 80079B30 8FBF001C */ lw $ra, 0x1c($sp) -.L80079B34: -/* 07A734 80079B34 8FB00014 */ lw $s0, 0x14($sp) -/* 07A738 80079B38 8FB10018 */ lw $s1, 0x18($sp) -/* 07A73C 80079B3C 03E00008 */ jr $ra -/* 07A740 80079B40 27BD0048 */ addiu $sp, $sp, 0x48 - -glabel func_80079B44 -/* 07A744 80079B44 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 07A748 80079B48 AFBF001C */ sw $ra, 0x1c($sp) -/* 07A74C 80079B4C AFB00018 */ sw $s0, 0x18($sp) -/* 07A750 80079B50 AFA00030 */ sw $zero, 0x30($sp) -/* 07A754 80079B54 AFA0002C */ sw $zero, 0x2c($sp) -/* 07A758 80079B58 8C850274 */ lw $a1, 0x274($a0) -/* 07A75C 80079B5C AC800274 */ sw $zero, 0x274($a0) -/* 07A760 80079B60 8CAE0010 */ lw $t6, 0x10($a1) -/* 07A764 80079B64 24010002 */ li $at, 2 -/* 07A768 80079B68 15C10039 */ bne $t6, $at, .L80079C50 -/* 07A76C 80079B6C 00808025 */ move $s0, $a0 -/* 07A770 80079B70 0C031E34 */ jal func_800C78D0 -/* 07A774 80079B74 AFA50034 */ sw $a1, 0x34($sp) -/* 07A778 80079B78 3C038012 */ lui $v1, %hi(D_80126124) # $v1, 0x8012 -/* 07A77C 80079B7C 24636124 */ addiu $v1, %lo(D_80126124) # addiu $v1, $v1, 0x6124 -/* 07A780 80079B80 AC620000 */ sw $v0, ($v1) -/* 07A784 80079B84 3C188012 */ lui $t8, %hi(D_80126120) # $t8, 0x8012 -/* 07A788 80079B88 8F186120 */ lw $t8, %lo(D_80126120)($t8) -/* 07A78C 80079B8C 3C04800E */ lui $a0, %hi(D_800DE74C) # $a0, 0x800e -/* 07A790 80079B90 0058C823 */ subu $t9, $v0, $t8 -/* 07A794 80079B94 44992000 */ mtc1 $t9, $f4 -/* 07A798 80079B98 8FA50034 */ lw $a1, 0x34($sp) -/* 07A79C 80079B9C 3C06800E */ lui $a2, %hi(D_800DE744) # $a2, 0x800e -/* 07A7A0 80079BA0 3C07800E */ lui $a3, %hi(D_800DE740) # $a3, 0x800e -/* 07A7A4 80079BA4 24E7E740 */ addiu $a3, %lo(D_800DE740) # addiu $a3, $a3, -0x18c0 -/* 07A7A8 80079BA8 24C6E744 */ addiu $a2, %lo(D_800DE744) # addiu $a2, $a2, -0x18bc -/* 07A7AC 80079BAC 2484E74C */ addiu $a0, %lo(D_800DE74C) # addiu $a0, $a0, -0x18b4 -/* 07A7B0 80079BB0 07210005 */ bgez $t9, .L80079BC8 -/* 07A7B4 80079BB4 468021A0 */ cvt.s.w $f6, $f4 -/* 07A7B8 80079BB8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 07A7BC 80079BBC 44814000 */ mtc1 $at, $f8 -/* 07A7C0 80079BC0 00000000 */ nop -/* 07A7C4 80079BC4 46083180 */ add.s $f6, $f6, $f8 -.L80079BC8: -/* 07A7C8 80079BC8 3C014270 */ li $at, 0x42700000 # 60.000000 -/* 07A7CC 80079BCC 44815000 */ mtc1 $at, $f10 -/* 07A7D0 80079BD0 3C01800E */ lui $at, %hi(D_800E796C) # $at, 0x800e -/* 07A7D4 80079BD4 460A3402 */ mul.s $f16, $f6, $f10 -/* 07A7D8 80079BD8 C432796C */ lwc1 $f18, %lo(D_800E796C)($at) -/* 07A7DC 80079BDC C4EA0000 */ lwc1 $f10, ($a3) -/* 07A7E0 80079BE0 C4C80000 */ lwc1 $f8, ($a2) -/* 07A7E4 80079BE4 46128103 */ div.s $f4, $f16, $f18 -/* 07A7E8 80079BE8 3C02800E */ lui $v0, %hi(D_800DE750) # $v0, 0x800e -/* 07A7EC 80079BEC E4840000 */ swc1 $f4, ($a0) -/* 07A7F0 80079BF0 C4800000 */ lwc1 $f0, ($a0) -/* 07A7F4 80079BF4 00000000 */ nop -/* 07A7F8 80079BF8 4600503C */ c.lt.s $f10, $f0 -/* 07A7FC 80079BFC 46004180 */ add.s $f6, $f8, $f0 -/* 07A800 80079C00 45000002 */ bc1f .L80079C0C -/* 07A804 80079C04 E4C60000 */ swc1 $f6, ($a2) -/* 07A808 80079C08 E4E00000 */ swc1 $f0, ($a3) -.L80079C0C: -/* 07A80C 80079C0C 8C42E750 */ lw $v0, %lo(D_800DE750)($v0) -/* 07A810 80079C10 240103E8 */ li $at, 1000 -/* 07A814 80079C14 0041001A */ div $zero, $v0, $at -/* 07A818 80079C18 24010001 */ li $at, 1 -/* 07A81C 80079C1C 00004010 */ mfhi $t0 -/* 07A820 80079C20 11010002 */ beq $t0, $at, .L80079C2C -/* 07A824 80079C24 24010002 */ li $at, 2 -/* 07A828 80079C28 15010009 */ bne $t0, $at, .L80079C50 -.L80079C2C: -/* 07A82C 80079C2C 3C0143FA */ li $at, 0x43FA0000 # 500.000000 -/* 07A830 80079C30 44819000 */ mtc1 $at, $f18 -/* 07A834 80079C34 C4D00000 */ lwc1 $f16, ($a2) -/* 07A838 80079C38 44800000 */ mtc1 $zero, $f0 -/* 07A83C 80079C3C 46128103 */ div.s $f4, $f16, $f18 -/* 07A840 80079C40 3C01800E */ lui $at, %hi(D_800DE748) # $at, 0x800e -/* 07A844 80079C44 E424E748 */ swc1 $f4, %lo(D_800DE748)($at) -/* 07A848 80079C48 E4C00000 */ swc1 $f0, ($a2) -/* 07A84C 80079C4C E4E00000 */ swc1 $f0, ($a3) -.L80079C50: -/* 07A850 80079C50 8CA20004 */ lw $v0, 4($a1) -/* 07A854 80079C54 2401FFFD */ li $at, -3 -/* 07A858 80079C58 30490010 */ andi $t1, $v0, 0x10 -/* 07A85C 80079C5C 11200026 */ beqz $t1, .L80079CF8 -/* 07A860 80079C60 00415024 */ and $t2, $v0, $at -/* 07A864 80079C64 24A40010 */ addiu $a0, $a1, 0x10 -/* 07A868 80079C68 0C03477C */ jal func_800D1DF0 -/* 07A86C 80079C6C AFA50034 */ sw $a1, 0x34($sp) -/* 07A870 80079C70 8FA50034 */ lw $a1, 0x34($sp) -/* 07A874 80079C74 10400015 */ beqz $v0, .L80079CCC -/* 07A878 80079C78 2401FFFD */ li $at, -3 -/* 07A87C 80079C7C 8CAA0004 */ lw $t2, 4($a1) -/* 07A880 80079C80 8CAC0008 */ lw $t4, 8($a1) -/* 07A884 80079C84 24010003 */ li $at, 3 -/* 07A888 80079C88 354B0020 */ ori $t3, $t2, 0x20 -/* 07A88C 80079C8C 318D0007 */ andi $t5, $t4, 7 -/* 07A890 80079C90 15A10009 */ bne $t5, $at, .L80079CB8 -/* 07A894 80079C94 ACAB0004 */ sw $t3, 4($a1) -/* 07A898 80079C98 8E0E0268 */ lw $t6, 0x268($s0) -/* 07A89C 80079C9C 00000000 */ nop -/* 07A8A0 80079CA0 ACAE0000 */ sw $t6, ($a1) -/* 07A8A4 80079CA4 8E0F0270 */ lw $t7, 0x270($s0) -/* 07A8A8 80079CA8 AE050268 */ sw $a1, 0x268($s0) -/* 07A8AC 80079CAC 15E00002 */ bnez $t7, .L80079CB8 -/* 07A8B0 80079CB0 00000000 */ nop -/* 07A8B4 80079CB4 AE050270 */ sw $a1, 0x270($s0) -.L80079CB8: -/* 07A8B8 80079CB8 8CA20008 */ lw $v0, 8($a1) -/* 07A8BC 80079CBC 00000000 */ nop -/* 07A8C0 80079CC0 30580007 */ andi $t8, $v0, 7 -/* 07A8C4 80079CC4 10000007 */ b .L80079CE4 -/* 07A8C8 80079CC8 03001025 */ move $v0, $t8 -.L80079CCC: -/* 07A8CC 80079CCC 8CB90004 */ lw $t9, 4($a1) -/* 07A8D0 80079CD0 8CA20008 */ lw $v0, 8($a1) -/* 07A8D4 80079CD4 03214024 */ and $t0, $t9, $at -/* 07A8D8 80079CD8 30490007 */ andi $t1, $v0, 7 -/* 07A8DC 80079CDC ACA80004 */ sw $t0, 4($a1) -/* 07A8E0 80079CE0 01201025 */ move $v0, $t1 -.L80079CE4: -/* 07A8E4 80079CE4 24010003 */ li $at, 3 -/* 07A8E8 80079CE8 10410006 */ beq $v0, $at, .L80079D04 -/* 07A8EC 80079CEC 00000000 */ nop -/* 07A8F0 80079CF0 10000005 */ b .L80079D08 -/* 07A8F4 80079CF4 8E0B0274 */ lw $t3, 0x274($s0) -.L80079CF8: -/* 07A8F8 80079CF8 ACAA0004 */ sw $t2, 4($a1) -/* 07A8FC 80079CFC 0C01E790 */ jal func_80079E40 -/* 07A900 80079D00 02002025 */ move $a0, $s0 -.L80079D04: -/* 07A904 80079D04 8E0B0274 */ lw $t3, 0x274($s0) -.L80079D08: -/* 07A908 80079D08 8E0E0278 */ lw $t6, 0x278($s0) -/* 07A90C 80079D0C 2D6C0001 */ sltiu $t4, $t3, 1 -/* 07A910 80079D10 000C6840 */ sll $t5, $t4, 1 -/* 07A914 80079D14 2DCF0001 */ sltiu $t7, $t6, 1 -/* 07A918 80079D18 01AF3825 */ or $a3, $t5, $t7 -/* 07A91C 80079D1C AFA70028 */ sw $a3, 0x28($sp) -/* 07A920 80079D20 02002025 */ move $a0, $s0 -/* 07A924 80079D24 27A50030 */ addiu $a1, $sp, 0x30 -/* 07A928 80079D28 0C01E835 */ jal func_8007A0D4 -/* 07A92C 80079D2C 27A6002C */ addiu $a2, $sp, 0x2c -/* 07A930 80079D30 8FA70028 */ lw $a3, 0x28($sp) -/* 07A934 80079D34 8FA50030 */ lw $a1, 0x30($sp) -/* 07A938 80079D38 10470005 */ beq $v0, $a3, .L80079D50 -/* 07A93C 80079D3C 8FBF001C */ lw $ra, 0x1c($sp) -/* 07A940 80079D40 8FA6002C */ lw $a2, 0x2c($sp) -/* 07A944 80079D44 0C01E7EA */ jal func_80079FA8 -/* 07A948 80079D48 02002025 */ move $a0, $s0 -/* 07A94C 80079D4C 8FBF001C */ lw $ra, 0x1c($sp) -.L80079D50: -/* 07A950 80079D50 8FB00018 */ lw $s0, 0x18($sp) -/* 07A954 80079D54 03E00008 */ jr $ra -/* 07A958 80079D58 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_80079D5C -/* 07A95C 80079D5C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 07A960 80079D60 AFBF0014 */ sw $ra, 0x14($sp) -/* 07A964 80079D64 AFA00020 */ sw $zero, 0x20($sp) -/* 07A968 80079D68 AFA0001C */ sw $zero, 0x1c($sp) -/* 07A96C 80079D6C 8C850278 */ lw $a1, 0x278($a0) -/* 07A970 80079D70 AC800278 */ sw $zero, 0x278($a0) -/* 07A974 80079D74 8CAE0004 */ lw $t6, 4($a1) -/* 07A978 80079D78 2401FFFE */ li $at, -2 -/* 07A97C 80079D7C 01C17824 */ and $t7, $t6, $at -/* 07A980 80079D80 ACAF0004 */ sw $t7, 4($a1) -/* 07A984 80079D84 0C01E790 */ jal func_80079E40 -/* 07A988 80079D88 AFA40028 */ sw $a0, 0x28($sp) -/* 07A98C 80079D8C 8FA40028 */ lw $a0, 0x28($sp) -/* 07A990 80079D90 27A50020 */ addiu $a1, $sp, 0x20 -/* 07A994 80079D94 8C980274 */ lw $t8, 0x274($a0) -/* 07A998 80079D98 8C890278 */ lw $t1, 0x278($a0) -/* 07A99C 80079D9C 2F190001 */ sltiu $t9, $t8, 1 -/* 07A9A0 80079DA0 00194040 */ sll $t0, $t9, 1 -/* 07A9A4 80079DA4 2D2A0001 */ sltiu $t2, $t1, 1 -/* 07A9A8 80079DA8 010A3825 */ or $a3, $t0, $t2 -/* 07A9AC 80079DAC AFA70018 */ sw $a3, 0x18($sp) -/* 07A9B0 80079DB0 0C01E835 */ jal func_8007A0D4 -/* 07A9B4 80079DB4 27A6001C */ addiu $a2, $sp, 0x1c -/* 07A9B8 80079DB8 8FA70018 */ lw $a3, 0x18($sp) -/* 07A9BC 80079DBC 8FA40028 */ lw $a0, 0x28($sp) -/* 07A9C0 80079DC0 10470006 */ beq $v0, $a3, .L80079DDC -/* 07A9C4 80079DC4 8FBF0014 */ lw $ra, 0x14($sp) -/* 07A9C8 80079DC8 8FA50020 */ lw $a1, 0x20($sp) -/* 07A9CC 80079DCC 8FA6001C */ lw $a2, 0x1c($sp) -/* 07A9D0 80079DD0 0C01E7EA */ jal func_80079FA8 -/* 07A9D4 80079DD4 00000000 */ nop -/* 07A9D8 80079DD8 8FBF0014 */ lw $ra, 0x14($sp) -.L80079DDC: -/* 07A9DC 80079DDC 27BD0028 */ addiu $sp, $sp, 0x28 -/* 07A9E0 80079DE0 03E00008 */ jr $ra -/* 07A9E4 80079DE4 00000000 */ nop - -glabel func_80079DE8 -/* 07A9E8 80079DE8 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 07A9EC 80079DEC AFBF0014 */ sw $ra, 0x14($sp) -/* 07A9F0 80079DF0 1080000E */ beqz $a0, .L80079E2C -/* 07A9F4 80079DF4 AFA40020 */ sw $a0, 0x20($sp) -/* 07A9F8 80079DF8 0C03479C */ jal func_800D1E70 -/* 07A9FC 80079DFC 00000000 */ nop -/* 07AA00 80079E00 0C0347AC */ jal func_800D1EB0 -/* 07AA04 80079E04 AFA2001C */ sw $v0, 0x1c($sp) -/* 07AA08 80079E08 8FAF001C */ lw $t7, 0x1c($sp) -/* 07AA0C 80079E0C 00000000 */ nop -/* 07AA10 80079E10 104F0004 */ beq $v0, $t7, .L80079E24 -/* 07AA14 80079E14 8FA20020 */ lw $v0, 0x20($sp) -/* 07AA18 80079E18 10000005 */ b .L80079E30 -/* 07AA1C 80079E1C 00001025 */ move $v0, $zero -/* 07AA20 80079E20 8FA20020 */ lw $v0, 0x20($sp) -.L80079E24: -/* 07AA24 80079E24 10000003 */ b .L80079E34 -/* 07AA28 80079E28 8FBF0014 */ lw $ra, 0x14($sp) -.L80079E2C: -/* 07AA2C 80079E2C 00001025 */ move $v0, $zero -.L80079E30: -/* 07AA30 80079E30 8FBF0014 */ lw $ra, 0x14($sp) -.L80079E34: -/* 07AA34 80079E34 27BD0020 */ addiu $sp, $sp, 0x20 -/* 07AA38 80079E38 03E00008 */ jr $ra -/* 07AA3C 80079E3C 00000000 */ nop - -glabel func_80079E40 -/* 07AA40 80079E40 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 07AA44 80079E44 AFBF0014 */ sw $ra, 0x14($sp) -/* 07AA48 80079E48 AFA40018 */ sw $a0, 0x18($sp) -/* 07AA4C 80079E4C 8CAE0004 */ lw $t6, 4($a1) -/* 07AA50 80079E50 00A03825 */ move $a3, $a1 -/* 07AA54 80079E54 31CF0003 */ andi $t7, $t6, 3 -/* 07AA58 80079E58 15E00035 */ bnez $t7, .L80079F30 -/* 07AA5C 80079E5C 00001025 */ move $v0, $zero -/* 07AA60 80079E60 8CA40050 */ lw $a0, 0x50($a1) -/* 07AA64 80079E64 00000000 */ nop -/* 07AA68 80079E68 1080002F */ beqz $a0, .L80079F28 -/* 07AA6C 80079E6C 00000000 */ nop -/* 07AA70 80079E70 8CB80008 */ lw $t8, 8($a1) -/* 07AA74 80079E74 8FA80018 */ lw $t0, 0x18($sp) -/* 07AA78 80079E78 33190020 */ andi $t9, $t8, 0x20 -/* 07AA7C 80079E7C 1320001B */ beqz $t9, .L80079EEC -/* 07AA80 80079E80 00000000 */ nop -/* 07AA84 80079E84 8D090280 */ lw $t1, 0x280($t0) -/* 07AA88 80079E88 24020001 */ li $v0, 1 -/* 07AA8C 80079E8C 2D210002 */ sltiu $at, $t1, 2 -/* 07AA90 80079E90 10200003 */ beqz $at, .L80079EA0 -/* 07AA94 80079E94 00000000 */ nop -/* 07AA98 80079E98 10000025 */ b .L80079F30 -/* 07AA9C 80079E9C AD05027C */ sw $a1, 0x27c($t0) -.L80079EA0: -/* 07AAA0 80079EA0 8CEA0068 */ lw $t2, 0x68($a3) -/* 07AAA4 80079EA4 00000000 */ nop -/* 07AAA8 80079EA8 15400005 */ bnez $t2, .L80079EC0 -/* 07AAAC 80079EAC 00000000 */ nop -/* 07AAB0 80079EB0 8CEB0054 */ lw $t3, 0x54($a3) -/* 07AAB4 80079EB4 3C05800E */ lui $a1, %hi(D_800DE730) # $a1, 0x800e -/* 07AAB8 80079EB8 11600006 */ beqz $t3, .L80079ED4 -/* 07AABC 80079EBC 24A5E730 */ addiu $a1, %lo(D_800DE730) # addiu $a1, $a1, -0x18d0 -.L80079EC0: -/* 07AAC0 80079EC0 8CE50054 */ lw $a1, 0x54($a3) -/* 07AAC4 80079EC4 0C03238C */ jal func_800C8E30 -/* 07AAC8 80079EC8 24060001 */ li $a2, 1 -/* 07AACC 80079ECC 10000004 */ b .L80079EE0 -/* 07AAD0 80079ED0 8FAC0018 */ lw $t4, 0x18($sp) -.L80079ED4: -/* 07AAD4 80079ED4 0C03238C */ jal func_800C8E30 -/* 07AAD8 80079ED8 24060001 */ li $a2, 1 -/* 07AADC 80079EDC 8FAC0018 */ lw $t4, 0x18($sp) -.L80079EE0: -/* 07AAE0 80079EE0 24020001 */ li $v0, 1 -/* 07AAE4 80079EE4 10000012 */ b .L80079F30 -/* 07AAE8 80079EE8 AD800280 */ sw $zero, 0x280($t4) -.L80079EEC: -/* 07AAEC 80079EEC 8CED0068 */ lw $t5, 0x68($a3) -/* 07AAF0 80079EF0 00000000 */ nop -/* 07AAF4 80079EF4 15A00005 */ bnez $t5, .L80079F0C -/* 07AAF8 80079EF8 00000000 */ nop -/* 07AAFC 80079EFC 8CEE0054 */ lw $t6, 0x54($a3) -/* 07AB00 80079F00 3C05800E */ lui $a1, %hi(D_800DE730) # $a1, 0x800e -/* 07AB04 80079F04 11C00006 */ beqz $t6, .L80079F20 -/* 07AB08 80079F08 24A5E730 */ addiu $a1, %lo(D_800DE730) # addiu $a1, $a1, -0x18d0 -.L80079F0C: -/* 07AB0C 80079F0C 8CE50054 */ lw $a1, 0x54($a3) -/* 07AB10 80079F10 0C03238C */ jal func_800C8E30 -/* 07AB14 80079F14 24060001 */ li $a2, 1 -/* 07AB18 80079F18 10000005 */ b .L80079F30 -/* 07AB1C 80079F1C 24020001 */ li $v0, 1 -.L80079F20: -/* 07AB20 80079F20 0C03238C */ jal func_800C8E30 -/* 07AB24 80079F24 24060001 */ li $a2, 1 -.L80079F28: -/* 07AB28 80079F28 10000001 */ b .L80079F30 -/* 07AB2C 80079F2C 24020001 */ li $v0, 1 -.L80079F30: -/* 07AB30 80079F30 8FBF0014 */ lw $ra, 0x14($sp) -/* 07AB34 80079F34 27BD0018 */ addiu $sp, $sp, 0x18 -/* 07AB38 80079F38 03E00008 */ jr $ra -/* 07AB3C 80079F3C 00000000 */ nop - -glabel func_80079F40 -/* 07AB40 80079F40 8CA20010 */ lw $v0, 0x10($a1) -/* 07AB44 80079F44 24010002 */ li $at, 2 -/* 07AB48 80079F48 1441000A */ bne $v0, $at, .L80079F74 -/* 07AB4C 80079F4C 00000000 */ nop -/* 07AB50 80079F50 8C82026C */ lw $v0, 0x26c($a0) -/* 07AB54 80079F54 00000000 */ nop -/* 07AB58 80079F58 10400003 */ beqz $v0, .L80079F68 -/* 07AB5C 80079F5C 00000000 */ nop -/* 07AB60 80079F60 10000002 */ b .L80079F6C -/* 07AB64 80079F64 AC450000 */ sw $a1, ($v0) -.L80079F68: -/* 07AB68 80079F68 AC850264 */ sw $a1, 0x264($a0) -.L80079F6C: -/* 07AB6C 80079F6C 10000009 */ b .L80079F94 -/* 07AB70 80079F70 AC85026C */ sw $a1, 0x26c($a0) -.L80079F74: -/* 07AB74 80079F74 8C820270 */ lw $v0, 0x270($a0) -/* 07AB78 80079F78 00000000 */ nop -/* 07AB7C 80079F7C 10400003 */ beqz $v0, .L80079F8C -/* 07AB80 80079F80 00000000 */ nop -/* 07AB84 80079F84 10000002 */ b .L80079F90 -/* 07AB88 80079F88 AC450000 */ sw $a1, ($v0) -.L80079F8C: -/* 07AB8C 80079F8C AC850268 */ sw $a1, 0x268($a0) -.L80079F90: -/* 07AB90 80079F90 AC850270 */ sw $a1, 0x270($a0) -.L80079F94: -/* 07AB94 80079F94 8CAE0008 */ lw $t6, 8($a1) -/* 07AB98 80079F98 ACA00000 */ sw $zero, ($a1) -/* 07AB9C 80079F9C 31CF0003 */ andi $t7, $t6, 3 -/* 07ABA0 80079FA0 03E00008 */ jr $ra -/* 07ABA4 80079FA4 ACAF0004 */ sw $t7, 4($a1) - -glabel func_80079FA8 -/* 07ABA8 80079FA8 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 07ABAC 80079FAC AFB10018 */ sw $s1, 0x18($sp) -/* 07ABB0 80079FB0 AFB00014 */ sw $s0, 0x14($sp) -/* 07ABB4 80079FB4 00A08025 */ move $s0, $a1 -/* 07ABB8 80079FB8 00C08825 */ move $s1, $a2 -/* 07ABBC 80079FBC AFBF001C */ sw $ra, 0x1c($sp) -/* 07ABC0 80079FC0 10A0001D */ beqz $a1, .L8007A038 -/* 07ABC4 80079FC4 AFA40028 */ sw $a0, 0x28($sp) -/* 07ABC8 80079FC8 8CAE0010 */ lw $t6, 0x10($a1) -/* 07ABCC 80079FCC 24010002 */ li $at, 2 -/* 07ABD0 80079FD0 15C10007 */ bne $t6, $at, .L80079FF0 -/* 07ABD4 80079FD4 00000000 */ nop -/* 07ABD8 80079FD8 0C034628 */ jal func_800D18A0 -/* 07ABDC 80079FDC 00000000 */ nop -/* 07ABE0 80079FE0 0C031E34 */ jal func_800C78D0 -/* 07ABE4 80079FE4 00000000 */ nop -/* 07ABE8 80079FE8 3C018012 */ lui $at, %hi(D_80126120) # $at, 0x8012 -/* 07ABEC 80079FEC AC226120 */ sw $v0, %lo(D_80126120)($at) -.L80079FF0: -/* 07ABF0 80079FF0 8E0F0004 */ lw $t7, 4($s0) -/* 07ABF4 80079FF4 2401FFCF */ li $at, -49 -/* 07ABF8 80079FF8 01E1C024 */ and $t8, $t7, $at -/* 07ABFC 80079FFC AE180004 */ sw $t8, 4($s0) -/* 07AC00 8007A000 26040010 */ addiu $a0, $s0, 0x10 -/* 07AC04 8007A004 0C034803 */ jal func_800D200C -/* 07AC08 8007A008 AFA40024 */ sw $a0, 0x24($sp) -/* 07AC0C 8007A00C 8FA40024 */ lw $a0, 0x24($sp) -/* 07AC10 8007A010 0C03485B */ jal func_800D216C -/* 07AC14 8007A014 00000000 */ nop -/* 07AC18 8007A018 3C01800E */ lui $at, %hi(D_800DE754) # $at, 0x800e -/* 07AC1C 8007A01C AC20E754 */ sw $zero, %lo(D_800DE754)($at) -/* 07AC20 8007A020 8FB90028 */ lw $t9, 0x28($sp) -/* 07AC24 8007A024 3C01800E */ lui $at, %hi(D_800DE758) # $at, 0x800e -/* 07AC28 8007A028 AC20E758 */ sw $zero, %lo(D_800DE758)($at) -/* 07AC2C 8007A02C 16110002 */ bne $s0, $s1, .L8007A038 -/* 07AC30 8007A030 AF300274 */ sw $s0, 0x274($t9) -/* 07AC34 8007A034 AF310278 */ sw $s1, 0x278($t9) -.L8007A038: -/* 07AC38 8007A038 1220000D */ beqz $s1, .L8007A070 -/* 07AC3C 8007A03C 8FBF001C */ lw $ra, 0x1c($sp) -/* 07AC40 8007A040 1230000B */ beq $s1, $s0, .L8007A070 -/* 07AC44 8007A044 8FBF001C */ lw $ra, 0x1c($sp) -/* 07AC48 8007A048 8E28003C */ lw $t0, 0x3c($s1) -/* 07AC4C 8007A04C 8E240038 */ lw $a0, 0x38($s1) -/* 07AC50 8007A050 8D060000 */ lw $a2, ($t0) -/* 07AC54 8007A054 8D070004 */ lw $a3, 4($t0) -/* 07AC58 8007A058 0C034638 */ jal func_800D18E0 -/* 07AC5C 8007A05C 00000000 */ nop -/* 07AC60 8007A060 8FA90028 */ lw $t1, 0x28($sp) -/* 07AC64 8007A064 00000000 */ nop -/* 07AC68 8007A068 AD310278 */ sw $s1, 0x278($t1) -/* 07AC6C 8007A06C 8FBF001C */ lw $ra, 0x1c($sp) -.L8007A070: -/* 07AC70 8007A070 8FB00014 */ lw $s0, 0x14($sp) -/* 07AC74 8007A074 8FB10018 */ lw $s1, 0x18($sp) -/* 07AC78 8007A078 03E00008 */ jr $ra -/* 07AC7C 8007A07C 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_8007A080 -/* 07AC80 8007A080 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 07AC84 8007A084 AFBF0014 */ sw $ra, 0x14($sp) -/* 07AC88 8007A088 8C820274 */ lw $v0, 0x274($a0) -/* 07AC8C 8007A08C 24010001 */ li $at, 1 -/* 07AC90 8007A090 8C4E0010 */ lw $t6, 0x10($v0) -/* 07AC94 8007A094 00000000 */ nop -/* 07AC98 8007A098 15C1000B */ bne $t6, $at, .L8007A0C8 -/* 07AC9C 8007A09C 8FBF0014 */ lw $ra, 0x14($sp) -/* 07ACA0 8007A0A0 8C4F0004 */ lw $t7, 4($v0) -/* 07ACA4 8007A0A4 00000000 */ nop -/* 07ACA8 8007A0A8 35F80010 */ ori $t8, $t7, 0x10 -/* 07ACAC 8007A0AC 0C03486C */ jal func_800D21B0 -/* 07ACB0 8007A0B0 AC580004 */ sw $t8, 4($v0) -/* 07ACB4 8007A0B4 3C018012 */ lui $at, %hi(D_8012611C) # $at, 0x8012 -/* 07ACB8 8007A0B8 AC226118 */ sw $v0, %lo(D_80126118)($at) -/* 07ACBC 8007A0BC 0C034890 */ jal func_800D2240 -/* 07ACC0 8007A0C0 AC23611C */ sw $v1, %lo(D_8012611C)($at) -/* 07ACC4 8007A0C4 8FBF0014 */ lw $ra, 0x14($sp) -.L8007A0C8: -/* 07ACC8 8007A0C8 27BD0018 */ addiu $sp, $sp, 0x18 -/* 07ACCC 8007A0CC 03E00008 */ jr $ra -/* 07ACD0 8007A0D0 00000000 */ nop - -glabel func_8007A0D4 -/* 07ACD4 8007A0D4 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 07ACD8 8007A0D8 AFB10018 */ sw $s1, 0x18($sp) -/* 07ACDC 8007A0DC 00808825 */ move $s1, $a0 -/* 07ACE0 8007A0E0 AFBF001C */ sw $ra, 0x1c($sp) -/* 07ACE4 8007A0E4 AFB00014 */ sw $s0, 0x14($sp) -/* 07ACE8 8007A0E8 2408FFFD */ li $t0, -3 -.L8007A0EC: -/* 07ACEC 8007A0EC 8E2E0284 */ lw $t6, 0x284($s1) -/* 07ACF0 8007A0F0 8E300268 */ lw $s0, 0x268($s1) -/* 07ACF4 8007A0F4 8E220264 */ lw $v0, 0x264($s1) -/* 07ACF8 8007A0F8 11C00016 */ beqz $t6, .L8007A154 -/* 07ACFC 8007A0FC 00E01825 */ move $v1, $a3 -/* 07AD00 8007A100 30EF0002 */ andi $t7, $a3, 2 -/* 07AD04 8007A104 11E00014 */ beqz $t7, .L8007A158 -/* 07AD08 8007A108 02002025 */ move $a0, $s0 -/* 07AD0C 8007A10C 12000008 */ beqz $s0, .L8007A130 -/* 07AD10 8007A110 00000000 */ nop -/* 07AD14 8007A114 8E180008 */ lw $t8, 8($s0) -/* 07AD18 8007A118 00E81824 */ and $v1, $a3, $t0 -/* 07AD1C 8007A11C 33190010 */ andi $t9, $t8, 0x10 -/* 07AD20 8007A120 13200003 */ beqz $t9, .L8007A130 -/* 07AD24 8007A124 00000000 */ nop -/* 07AD28 8007A128 1000005E */ b .L8007A2A4 -/* 07AD2C 8007A12C ACB00000 */ sw $s0, ($a1) -.L8007A130: -/* 07AD30 8007A130 ACA20000 */ sw $v0, ($a1) -/* 07AD34 8007A134 8E2A0264 */ lw $t2, 0x264($s1) -/* 07AD38 8007A138 AE200284 */ sw $zero, 0x284($s1) -/* 07AD3C 8007A13C 8D4B0000 */ lw $t3, ($t2) -/* 07AD40 8007A140 00E81824 */ and $v1, $a3, $t0 -/* 07AD44 8007A144 15600057 */ bnez $t3, .L8007A2A4 -/* 07AD48 8007A148 AE2B0264 */ sw $t3, 0x264($s1) -/* 07AD4C 8007A14C 10000055 */ b .L8007A2A4 -/* 07AD50 8007A150 AE20026C */ sw $zero, 0x26c($s1) -.L8007A154: -/* 07AD54 8007A154 02002025 */ move $a0, $s0 -.L8007A158: -/* 07AD58 8007A158 AFA30024 */ sw $v1, 0x24($sp) -/* 07AD5C 8007A15C AFA5002C */ sw $a1, 0x2c($sp) -/* 07AD60 8007A160 AFA60030 */ sw $a2, 0x30($sp) -/* 07AD64 8007A164 0C01E77A */ jal func_80079DE8 -/* 07AD68 8007A168 AFA70034 */ sw $a3, 0x34($sp) -/* 07AD6C 8007A16C 8FA30024 */ lw $v1, 0x24($sp) -/* 07AD70 8007A170 8FA5002C */ lw $a1, 0x2c($sp) -/* 07AD74 8007A174 8FA60030 */ lw $a2, 0x30($sp) -/* 07AD78 8007A178 8FA70034 */ lw $a3, 0x34($sp) -/* 07AD7C 8007A17C 2408FFFD */ li $t0, -3 -/* 07AD80 8007A180 10400048 */ beqz $v0, .L8007A2A4 -/* 07AD84 8007A184 2409FFFE */ li $t1, -2 -/* 07AD88 8007A188 8E0D0008 */ lw $t5, 8($s0) -/* 07AD8C 8007A18C 00000000 */ nop -/* 07AD90 8007A190 31AE0007 */ andi $t6, $t5, 7 -/* 07AD94 8007A194 25CFFFFF */ addiu $t7, $t6, -1 -/* 07AD98 8007A198 2DE10007 */ sltiu $at, $t7, 7 -/* 07AD9C 8007A19C 10200041 */ beqz $at, .L8007A2A4 -/* 07ADA0 8007A1A0 000F7880 */ sll $t7, $t7, 2 -/* 07ADA4 8007A1A4 3C01800E */ lui $at, 0x800e -/* 07ADA8 8007A1A8 002F0821 */ addu $at, $at, $t7 -/* 07ADAC 8007A1AC 8C2F7970 */ lw $t7, 0x7970($at) -/* 07ADB0 8007A1B0 00000000 */ nop -/* 07ADB4 8007A1B4 01E00008 */ jr $t7 -/* 07ADB8 8007A1B8 00000000 */ nop -/* 07ADBC 8007A1BC 8E180004 */ lw $t8, 4($s0) -/* 07ADC0 8007A1C0 30EA0002 */ andi $t2, $a3, 2 -/* 07ADC4 8007A1C4 33190020 */ andi $t9, $t8, 0x20 -/* 07ADC8 8007A1C8 13200013 */ beqz $t9, .L8007A218 -/* 07ADCC 8007A1CC 24010003 */ li $at, 3 -/* 07ADD0 8007A1D0 11400034 */ beqz $t2, .L8007A2A4 -/* 07ADD4 8007A1D4 00000000 */ nop -/* 07ADD8 8007A1D8 ACB00000 */ sw $s0, ($a1) -/* 07ADDC 8007A1DC 8E0B0004 */ lw $t3, 4($s0) -/* 07ADE0 8007A1E0 00E81824 */ and $v1, $a3, $t0 -/* 07ADE4 8007A1E4 316C0001 */ andi $t4, $t3, 1 -/* 07ADE8 8007A1E8 11800003 */ beqz $t4, .L8007A1F8 -/* 07ADEC 8007A1EC 00000000 */ nop -/* 07ADF0 8007A1F0 ACD00000 */ sw $s0, ($a2) -/* 07ADF4 8007A1F4 00691824 */ and $v1, $v1, $t1 -.L8007A1F8: -/* 07ADF8 8007A1F8 8E2D0268 */ lw $t5, 0x268($s1) -/* 07ADFC 8007A1FC 00000000 */ nop -/* 07AE00 8007A200 8DAE0000 */ lw $t6, ($t5) -/* 07AE04 8007A204 00000000 */ nop -/* 07AE08 8007A208 15C00026 */ bnez $t6, .L8007A2A4 -/* 07AE0C 8007A20C AE2E0268 */ sw $t6, 0x268($s1) -/* 07AE10 8007A210 10000024 */ b .L8007A2A4 -/* 07AE14 8007A214 AE200270 */ sw $zero, 0x270($s1) -.L8007A218: -/* 07AE18 8007A218 14E10022 */ bne $a3, $at, .L8007A2A4 -/* 07AE1C 8007A21C 00000000 */ nop -/* 07AE20 8007A220 ACD00000 */ sw $s0, ($a2) -/* 07AE24 8007A224 ACB00000 */ sw $s0, ($a1) -/* 07AE28 8007A228 8E380268 */ lw $t8, 0x268($s1) -/* 07AE2C 8007A22C 2401FFFC */ li $at, -4 -/* 07AE30 8007A230 8F190000 */ lw $t9, ($t8) -/* 07AE34 8007A234 00E11824 */ and $v1, $a3, $at -/* 07AE38 8007A238 1720001A */ bnez $t9, .L8007A2A4 -/* 07AE3C 8007A23C AE390268 */ sw $t9, 0x268($s1) -/* 07AE40 8007A240 10000018 */ b .L8007A2A4 -/* 07AE44 8007A244 AE200270 */ sw $zero, 0x270($s1) -/* 07AE48 8007A248 8E020004 */ lw $v0, 4($s0) -/* 07AE4C 8007A24C 30EC0002 */ andi $t4, $a3, 2 -/* 07AE50 8007A250 304B0002 */ andi $t3, $v0, 2 -/* 07AE54 8007A254 11600007 */ beqz $t3, .L8007A274 -/* 07AE58 8007A258 304D0001 */ andi $t5, $v0, 1 -/* 07AE5C 8007A25C 11800005 */ beqz $t4, .L8007A274 -/* 07AE60 8007A260 304D0001 */ andi $t5, $v0, 1 -/* 07AE64 8007A264 ACB00000 */ sw $s0, ($a1) -/* 07AE68 8007A268 8E020004 */ lw $v0, 4($s0) -/* 07AE6C 8007A26C 00E81824 */ and $v1, $a3, $t0 -/* 07AE70 8007A270 304D0001 */ andi $t5, $v0, 1 -.L8007A274: -/* 07AE74 8007A274 11A0000B */ beqz $t5, .L8007A2A4 -/* 07AE78 8007A278 306E0001 */ andi $t6, $v1, 1 -/* 07AE7C 8007A27C 11C00009 */ beqz $t6, .L8007A2A4 -/* 07AE80 8007A280 00000000 */ nop -/* 07AE84 8007A284 ACD00000 */ sw $s0, ($a2) -/* 07AE88 8007A288 8E2F0268 */ lw $t7, 0x268($s1) -/* 07AE8C 8007A28C 00691824 */ and $v1, $v1, $t1 -/* 07AE90 8007A290 8DF80000 */ lw $t8, ($t7) -/* 07AE94 8007A294 00000000 */ nop -/* 07AE98 8007A298 17000002 */ bnez $t8, .L8007A2A4 -/* 07AE9C 8007A29C AE380268 */ sw $t8, 0x268($s1) -/* 07AEA0 8007A2A0 AE200270 */ sw $zero, 0x270($s1) -.L8007A2A4: -/* 07AEA4 8007A2A4 10670004 */ beq $v1, $a3, .L8007A2B8 -/* 07AEA8 8007A2A8 8FBF001C */ lw $ra, 0x1c($sp) -/* 07AEAC 8007A2AC 1000FF8F */ b .L8007A0EC -/* 07AEB0 8007A2B0 00603825 */ move $a3, $v1 -/* 07AEB4 8007A2B4 8FBF001C */ lw $ra, 0x1c($sp) -.L8007A2B8: -/* 07AEB8 8007A2B8 8FB00014 */ lw $s0, 0x14($sp) -/* 07AEBC 8007A2BC 8FB10018 */ lw $s1, 0x18($sp) -/* 07AEC0 8007A2C0 27BD0028 */ addiu $sp, $sp, 0x28 -/* 07AEC4 8007A2C4 03E00008 */ jr $ra -/* 07AEC8 8007A2C8 00601025 */ move $v0, $v1 - -/* 07AECC 8007A2CC 00000000 */ nop -glabel func_8007A2D0 -/* 07AED0 8007A2D0 00057880 */ sll $t7, $a1, 2 -/* 07AED4 8007A2D4 8C830000 */ lw $v1, ($a0) -/* 07AED8 8007A2D8 31F8FFFF */ andi $t8, $t7, 0xffff -/* 07AEDC 8007A2DC 0018CA00 */ sll $t9, $t8, 8 -/* 07AEE0 8007A2E0 3C01BC00 */ lui $at, 0xbc00 -/* 07AEE4 8007A2E4 03214025 */ or $t0, $t9, $at -/* 07AEE8 8007A2E8 3C018000 */ lui $at, 0x8000 -/* 07AEEC 8007A2EC 246E0008 */ addiu $t6, $v1, 8 -/* 07AEF0 8007A2F0 AC8E0000 */ sw $t6, ($a0) -/* 07AEF4 8007A2F4 00C15021 */ addu $t2, $a2, $at -/* 07AEF8 8007A2F8 35090006 */ ori $t1, $t0, 6 -/* 07AEFC 8007A2FC AC690000 */ sw $t1, ($v1) -/* 07AF00 8007A300 03E00008 */ jr $ra -/* 07AF04 8007A304 AC6A0004 */ sw $t2, 4($v1) - -/* 07AF08 8007A308 00000000 */ nop -/* 07AF0C 8007A30C 00000000 */ nop diff --git a/asm/unknown_07AF10.s b/asm/unknown_07AF10.s deleted file mode 100755 index 113bb537..00000000 --- a/asm/unknown_07AF10.s +++ /dev/null @@ -1,663 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_8007A310 -/* 07AF10 8007A310 3C028000 */ lui $v0, %hi(D_80000300) # $v0, 0x8000 -/* 07AF14 8007A314 8C420300 */ lw $v0, %lo(D_80000300)($v0) -/* 07AF18 8007A318 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 07AF1C 8007A31C AFBF0014 */ sw $ra, 0x14($sp) -/* 07AF20 8007A320 AFA40018 */ sw $a0, 0x18($sp) -/* 07AF24 8007A324 1440000D */ bnez $v0, .L8007A35C -/* 07AF28 8007A328 AFA5001C */ sw $a1, 0x1c($sp) -/* 07AF2C 8007A32C 240E0032 */ li $t6, 50 -/* 07AF30 8007A330 3C018012 */ lui $at, %hi(D_80126170) # $at, 0x8012 -/* 07AF34 8007A334 AC2E6170 */ sw $t6, %lo(D_80126170)($at) -/* 07AF38 8007A338 3C01800E */ lui $at, %hi(D_800E7AFC) # $at, 0x800e -/* 07AF3C 8007A33C C4247AFC */ lwc1 $f4, %lo(D_800E7AFC)($at) -/* 07AF40 8007A340 3C018012 */ lui $at, %hi(D_80126174) # $at, 0x8012 -/* 07AF44 8007A344 E4246174 */ swc1 $f4, %lo(D_80126174)($at) -/* 07AF48 8007A348 3C01800E */ lui $at, %hi(D_800E7B00) # $at, 0x800e -/* 07AF4C 8007A34C C4267B00 */ lwc1 $f6, %lo(D_800E7B00)($at) -/* 07AF50 8007A350 3C018012 */ lui $at, %hi(D_80126178) # $at, 0x8012 -/* 07AF54 8007A354 1000001A */ b .L8007A3C0 -/* 07AF58 8007A358 E4266178 */ swc1 $f6, %lo(D_80126178)($at) -.L8007A35C: -/* 07AF5C 8007A35C 24010002 */ li $at, 2 -/* 07AF60 8007A360 1441000D */ bne $v0, $at, .L8007A398 -/* 07AF64 8007A364 2418003C */ li $t8, 60 -/* 07AF68 8007A368 240F003C */ li $t7, 60 -/* 07AF6C 8007A36C 3C018012 */ lui $at, %hi(D_80126170) # $at, 0x8012 -/* 07AF70 8007A370 AC2F6170 */ sw $t7, %lo(D_80126170)($at) -/* 07AF74 8007A374 3C01800E */ lui $at, %hi(D_800E7B04) # $at, 0x800e -/* 07AF78 8007A378 C4287B04 */ lwc1 $f8, %lo(D_800E7B04)($at) -/* 07AF7C 8007A37C 3C018012 */ lui $at, %hi(D_80126174) # $at, 0x8012 -/* 07AF80 8007A380 E4286174 */ swc1 $f8, %lo(D_80126174)($at) -/* 07AF84 8007A384 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 07AF88 8007A388 44815000 */ mtc1 $at, $f10 -/* 07AF8C 8007A38C 3C018012 */ lui $at, %hi(D_80126178) # $at, 0x8012 -/* 07AF90 8007A390 1000000B */ b .L8007A3C0 -/* 07AF94 8007A394 E42A6178 */ swc1 $f10, %lo(D_80126178)($at) -.L8007A398: -/* 07AF98 8007A398 3C018012 */ lui $at, %hi(D_80126170) # $at, 0x8012 -/* 07AF9C 8007A39C AC386170 */ sw $t8, %lo(D_80126170)($at) -/* 07AFA0 8007A3A0 3C01800E */ lui $at, %hi(D_800E7B08) # $at, 0x800e -/* 07AFA4 8007A3A4 C4307B08 */ lwc1 $f16, %lo(D_800E7B08)($at) -/* 07AFA8 8007A3A8 3C018012 */ lui $at, %hi(D_80126174) # $at, 0x8012 -/* 07AFAC 8007A3AC E4306174 */ swc1 $f16, %lo(D_80126174)($at) -/* 07AFB0 8007A3B0 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 07AFB4 8007A3B4 44819000 */ mtc1 $at, $f18 -/* 07AFB8 8007A3B8 3C018012 */ lui $at, %hi(D_80126178) # $at, 0x8012 -/* 07AFBC 8007A3BC E4326178 */ swc1 $f18, %lo(D_80126178)($at) -.L8007A3C0: -/* 07AFC0 8007A3C0 14400012 */ bnez $v0, .L8007A40C -/* 07AFC4 8007A3C4 3C03800E */ lui $v1, %hi(D_800DE7BC) # $v1, 0x800e -/* 07AFC8 8007A3C8 3C02800E */ lui $v0, %hi(D_800DE77C) # $v0, 0x800e -/* 07AFCC 8007A3CC 2442E77C */ addiu $v0, %lo(D_800DE77C) # addiu $v0, $v0, -0x1884 -/* 07AFD0 8007A3D0 2463E7BC */ addiu $v1, %lo(D_800DE7BC) # addiu $v1, $v1, -0x1844 -.L8007A3D4: -/* 07AFD4 8007A3D4 8C49000C */ lw $t1, 0xc($v0) -/* 07AFD8 8007A3D8 8C4B0014 */ lw $t3, 0x14($v0) -/* 07AFDC 8007A3DC 8C4D001C */ lw $t5, 0x1c($v0) -/* 07AFE0 8007A3E0 8C590004 */ lw $t9, 4($v0) -/* 07AFE4 8007A3E4 24420020 */ addiu $v0, $v0, 0x20 -/* 07AFE8 8007A3E8 252A0018 */ addiu $t2, $t1, 0x18 -/* 07AFEC 8007A3EC 256C0018 */ addiu $t4, $t3, 0x18 -/* 07AFF0 8007A3F0 25AE0018 */ addiu $t6, $t5, 0x18 -/* 07AFF4 8007A3F4 27280018 */ addiu $t0, $t9, 0x18 -/* 07AFF8 8007A3F8 AC4EFFFC */ sw $t6, -4($v0) -/* 07AFFC 8007A3FC AC4CFFF4 */ sw $t4, -0xc($v0) -/* 07B000 8007A400 AC4AFFEC */ sw $t2, -0x14($v0) -/* 07B004 8007A404 1443FFF3 */ bne $v0, $v1, .L8007A3D4 -/* 07B008 8007A408 AC48FFE4 */ sw $t0, -0x1c($v0) -.L8007A40C: -/* 07B00C 8007A40C 0C01EA5D */ jal func_8007A974 -/* 07B010 8007A410 00000000 */ nop -/* 07B014 8007A414 8FA40018 */ lw $a0, 0x18($sp) -/* 07B018 8007A418 0C01E930 */ jal func_8007A4C0 -/* 07B01C 8007A41C 00000000 */ nop -/* 07B020 8007A420 3C028012 */ lui $v0, %hi(D_801262C0) # $v0, 0x8012 -/* 07B024 8007A424 244262C0 */ addiu $v0, %lo(D_801262C0) # addiu $v0, $v0, 0x62c0 -/* 07B028 8007A428 AC400000 */ sw $zero, ($v0) -/* 07B02C 8007A42C AC400004 */ sw $zero, 4($v0) -/* 07B030 8007A430 0C01E9FA */ jal func_8007A7E8 -/* 07B034 8007A434 00002025 */ move $a0, $zero -/* 07B038 8007A438 0C01E9FA */ jal func_8007A7E8 -/* 07B03C 8007A43C 24040001 */ li $a0, 1 -/* 07B040 8007A440 240F0001 */ li $t7, 1 -/* 07B044 8007A444 3C018012 */ lui $at, %hi(D_801262C8) # $at, 0x8012 -/* 07B048 8007A448 0C01EAE7 */ jal func_8007AB9C -/* 07B04C 8007A44C AC2F62C8 */ sw $t7, %lo(D_801262C8)($at) -/* 07B050 8007A450 3C048012 */ lui $a0, %hi(D_801261A0) # $a0, 0x8012 -/* 07B054 8007A454 3C058012 */ lui $a1, %hi(D_80126180) # $a1, 0x8012 -/* 07B058 8007A458 24A56180 */ addiu $a1, %lo(D_80126180) # addiu $a1, $a1, 0x6180 -/* 07B05C 8007A45C 248461A0 */ addiu $a0, %lo(D_801261A0) # addiu $a0, $a0, 0x61a0 -/* 07B060 8007A460 0C032208 */ jal osCreateMesgQueue -/* 07B064 8007A464 24060008 */ li $a2, 8 -/* 07B068 8007A468 8FA4001C */ lw $a0, 0x1c($sp) -/* 07B06C 8007A46C 3C058012 */ lui $a1, %hi(D_80126310) # $a1, 0x8012 -/* 07B070 8007A470 3C068012 */ lui $a2, %hi(D_801261A0) # $a2, 0x8012 -/* 07B074 8007A474 24C661A0 */ addiu $a2, %lo(D_801261A0) # addiu $a2, $a2, 0x61a0 -/* 07B078 8007A478 24A56310 */ addiu $a1, %lo(D_80126310) # addiu $a1, $a1, 0x6310 -/* 07B07C 8007A47C 0C01E520 */ jal func_80079480 -/* 07B080 8007A480 24070002 */ li $a3, 2 -/* 07B084 8007A484 0C01E954 */ jal func_8007A550 -/* 07B088 8007A488 00000000 */ nop -/* 07B08C 8007A48C 2418000C */ li $t8, 12 -/* 07B090 8007A490 3C018012 */ lui $at, %hi(D_801262D0) # $at, 0x8012 -/* 07B094 8007A494 AC3862D0 */ sw $t8, %lo(D_801262D0)($at) -/* 07B098 8007A498 0C034744 */ jal func_800D1D10 -/* 07B09C 8007A49C 24040001 */ li $a0, 1 -/* 07B0A0 8007A4A0 3C018012 */ lui $at, %hi(D_80126308) # $at, 0x8012 -/* 07B0A4 8007A4A4 8FBF0014 */ lw $ra, 0x14($sp) -/* 07B0A8 8007A4A8 A0206308 */ sb $zero, %lo(D_80126308)($at) -/* 07B0AC 8007A4AC 3C018012 */ lui $at, %hi(D_801262E4) # $at, 0x8012 -/* 07B0B0 8007A4B0 24190003 */ li $t9, 3 -/* 07B0B4 8007A4B4 A03962E4 */ sb $t9, %lo(D_801262E4)($at) -/* 07B0B8 8007A4B8 03E00008 */ jr $ra -/* 07B0BC 8007A4BC 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_8007A4C0 -/* 07B0C0 8007A4C0 3C018012 */ lui $at, 0x8012 -/* 07B0C4 8007A4C4 03E00008 */ jr $ra -/* 07B0C8 8007A4C8 AC2462CC */ sw $a0, 0x62cc($at) - -/* 07B0CC 8007A4CC 3C028012 */ lui $v0, %hi(D_801262CC) # $v0, 0x8012 -/* 07B0D0 8007A4D0 8C4262CC */ lw $v0, %lo(D_801262CC)($v0) -/* 07B0D4 8007A4D4 03E00008 */ jr $ra -/* 07B0D8 8007A4D8 00000000 */ nop - -/* 07B0DC 8007A4DC 3C0E8012 */ lui $t6, %hi(D_801262CC) # $t6, 0x8012 -/* 07B0E0 8007A4E0 8DCE62CC */ lw $t6, %lo(D_801262CC)($t6) -/* 07B0E4 8007A4E4 3C19800E */ lui $t9, %hi(D_800DE77C) # $t9, 0x800e -/* 07B0E8 8007A4E8 31CF0007 */ andi $t7, $t6, 7 -/* 07B0EC 8007A4EC 000FC0C0 */ sll $t8, $t7, 3 -/* 07B0F0 8007A4F0 2739E77C */ addiu $t9, %lo(D_800DE77C) # addiu $t9, $t9, -0x1884 -/* 07B0F4 8007A4F4 03191821 */ addu $v1, $t8, $t9 -/* 07B0F8 8007A4F8 8C680000 */ lw $t0, ($v1) -/* 07B0FC 8007A4FC 00041080 */ sll $v0, $a0, 2 -/* 07B100 8007A500 3C018012 */ lui $at, 0x8012 -/* 07B104 8007A504 00220821 */ addu $at, $at, $v0 -/* 07B108 8007A508 AC2862B0 */ sw $t0, 0x62b0($at) -/* 07B10C 8007A50C 8C690004 */ lw $t1, 4($v1) -/* 07B110 8007A510 3C018012 */ lui $at, 0x8012 -/* 07B114 8007A514 00220821 */ addu $at, $at, $v0 -/* 07B118 8007A518 03E00008 */ jr $ra -/* 07B11C 8007A51C AC2962B8 */ sw $t1, 0x62b8($at) - -glabel func_8007A520 -/* 07B120 8007A520 3C038012 */ lui $v1, %hi(D_801262C8) # $v1, 0x8012 -/* 07B124 8007A524 8C6362C8 */ lw $v1, %lo(D_801262C8)($v1) -/* 07B128 8007A528 3C188012 */ lui $t8, 0x8012 -/* 07B12C 8007A52C 00037080 */ sll $t6, $v1, 2 -/* 07B130 8007A530 030EC021 */ addu $t8, $t8, $t6 -/* 07B134 8007A534 3C0F8012 */ lui $t7, 0x8012 -/* 07B138 8007A538 8F1862B8 */ lw $t8, 0x62b8($t8) -/* 07B13C 8007A53C 01EE7821 */ addu $t7, $t7, $t6 -/* 07B140 8007A540 8DEF62B0 */ lw $t7, 0x62b0($t7) -/* 07B144 8007A544 0018CC00 */ sll $t9, $t8, 0x10 -/* 07B148 8007A548 03E00008 */ jr $ra -/* 07B14C 8007A54C 01F91025 */ or $v0, $t7, $t9 - -glabel func_8007A550 -/* 07B150 8007A550 3C028000 */ lui $v0, %hi(D_80000300) # $v0, 0x8000 -/* 07B154 8007A554 8C420300 */ lw $v0, %lo(D_80000300)($v0) -/* 07B158 8007A558 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 07B15C 8007A55C AFBF0014 */ sw $ra, 0x14($sp) -/* 07B160 8007A560 14400004 */ bnez $v0, .L8007A574 -/* 07B164 8007A564 00001825 */ move $v1, $zero -/* 07B168 8007A568 2403000E */ li $v1, 14 -/* 07B16C 8007A56C 10000005 */ b .L8007A584 -/* 07B170 8007A570 24050002 */ li $a1, 2 -.L8007A574: -/* 07B174 8007A574 24050002 */ li $a1, 2 -/* 07B178 8007A578 14A20002 */ bne $a1, $v0, .L8007A584 -/* 07B17C 8007A57C 00000000 */ nop -/* 07B180 8007A580 2403001C */ li $v1, 28 -.L8007A584: -/* 07B184 8007A584 3C0E8012 */ lui $t6, %hi(D_801262CC) # $t6, 0x8012 -/* 07B188 8007A588 8DCE62CC */ lw $t6, %lo(D_801262CC)($t6) -/* 07B18C 8007A58C 3C01800E */ lui $at, 0x800e -/* 07B190 8007A590 31CF0007 */ andi $t7, $t6, 7 -/* 07B194 8007A594 000F7880 */ sll $t7, $t7, 2 -/* 07B198 8007A598 002F0821 */ addu $at, $at, $t7 -/* 07B19C 8007A59C 8C2F7B0C */ lw $t7, 0x7b0c($at) -/* 07B1A0 8007A5A0 00000000 */ nop -/* 07B1A4 8007A5A4 01E00008 */ jr $t7 -/* 07B1A8 8007A5A8 00000000 */ nop -/* 07B1AC 8007A5AC 0003C080 */ sll $t8, $v1, 2 -/* 07B1B0 8007A5B0 0303C021 */ addu $t8, $t8, $v1 -/* 07B1B4 8007A5B4 3C19800E */ lui $t9, %hi(D_800E3900) # $t9, 0x800e -/* 07B1B8 8007A5B8 27393900 */ addiu $t9, %lo(D_800E3900) # addiu $t9, $t9, 0x3900 -/* 07B1BC 8007A5BC 0018C100 */ sll $t8, $t8, 4 -/* 07B1C0 8007A5C0 0C034728 */ jal func_800D1CA0 -/* 07B1C4 8007A5C4 03192021 */ addu $a0, $t8, $t9 -/* 07B1C8 8007A5C8 1000007D */ b .L8007A7C0 -/* 07B1CC 8007A5CC 00000000 */ nop -/* 07B1D0 8007A5D0 3C04800E */ lui $a0, %hi(D_800E4620) # $a0, 0x800e -/* 07B1D4 8007A5D4 14400004 */ bnez $v0, .L8007A5E8 -/* 07B1D8 8007A5D8 24844620 */ addiu $a0, %lo(D_800E4620) # addiu $a0, $a0, 0x4620 -/* 07B1DC 8007A5DC 3C04800E */ lui $a0, %hi(D_800E4670) # $a0, 0x800e -/* 07B1E0 8007A5E0 10000005 */ b .L8007A5F8 -/* 07B1E4 8007A5E4 24844670 */ addiu $a0, %lo(D_800E4670) # addiu $a0, $a0, 0x4670 -.L8007A5E8: -/* 07B1E8 8007A5E8 14A20003 */ bne $a1, $v0, .L8007A5F8 -/* 07B1EC 8007A5EC 00000000 */ nop -/* 07B1F0 8007A5F0 3C04800E */ lui $a0, %hi(D_800E46C0) # $a0, 0x800e -/* 07B1F4 8007A5F4 248446C0 */ addiu $a0, %lo(D_800E46C0) # addiu $a0, $a0, 0x46c0 -.L8007A5F8: -/* 07B1F8 8007A5F8 3C058012 */ lui $a1, %hi(D_80126260) # $a1, 0x8012 -/* 07B1FC 8007A5FC 24A56260 */ addiu $a1, %lo(D_80126260) # addiu $a1, $a1, 0x6260 -/* 07B200 8007A600 0C01EAFF */ jal func_8007ABFC -/* 07B204 8007A604 24060050 */ li $a2, 80 -/* 07B208 8007A608 3C088000 */ lui $t0, %hi(D_80000300) # $t0, 0x8000 -/* 07B20C 8007A60C 8D080300 */ lw $t0, %lo(D_80000300)($t0) -/* 07B210 8007A610 3C058012 */ lui $a1, %hi(D_80126260) # $a1, 0x8012 -/* 07B214 8007A614 1500000C */ bnez $t0, .L8007A648 -/* 07B218 8007A618 24A56260 */ addiu $a1, %lo(D_80126260) # addiu $a1, $a1, 0x6260 -/* 07B21C 8007A61C 8CA90030 */ lw $t1, 0x30($a1) -/* 07B220 8007A620 8CAB0044 */ lw $t3, 0x44($a1) -/* 07B224 8007A624 3C020018 */ lui $v0, 0x18 -/* 07B228 8007A628 01225023 */ subu $t2, $t1, $v0 -/* 07B22C 8007A62C 01626023 */ subu $t4, $t3, $v0 -/* 07B230 8007A630 ACAA0030 */ sw $t2, 0x30($a1) -/* 07B234 8007A634 ACAC0044 */ sw $t4, 0x44($a1) -/* 07B238 8007A638 254E0018 */ addiu $t6, $t2, 0x18 -/* 07B23C 8007A63C 25980018 */ addiu $t8, $t4, 0x18 -/* 07B240 8007A640 ACAE0030 */ sw $t6, 0x30($a1) -/* 07B244 8007A644 ACB80044 */ sw $t8, 0x44($a1) -.L8007A648: -/* 07B248 8007A648 0C034728 */ jal func_800D1CA0 -/* 07B24C 8007A64C 00A02025 */ move $a0, $a1 -/* 07B250 8007A650 1000005B */ b .L8007A7C0 -/* 07B254 8007A654 00000000 */ nop -/* 07B258 8007A658 3C04800E */ lui $a0, %hi(D_800E4620) # $a0, 0x800e -/* 07B25C 8007A65C 14400004 */ bnez $v0, .L8007A670 -/* 07B260 8007A660 24844620 */ addiu $a0, %lo(D_800E4620) # addiu $a0, $a0, 0x4620 -/* 07B264 8007A664 3C04800E */ lui $a0, %hi(D_800E4670) # $a0, 0x800e -/* 07B268 8007A668 10000005 */ b .L8007A680 -/* 07B26C 8007A66C 24844670 */ addiu $a0, %lo(D_800E4670) # addiu $a0, $a0, 0x4670 -.L8007A670: -/* 07B270 8007A670 14A20003 */ bne $a1, $v0, .L8007A680 -/* 07B274 8007A674 00000000 */ nop -/* 07B278 8007A678 3C04800E */ lui $a0, %hi(D_800E46C0) # $a0, 0x800e -/* 07B27C 8007A67C 248446C0 */ addiu $a0, %lo(D_800E46C0) # addiu $a0, $a0, 0x46c0 -.L8007A680: -/* 07B280 8007A680 3C058012 */ lui $a1, %hi(D_80126260) # $a1, 0x8012 -/* 07B284 8007A684 24A56260 */ addiu $a1, %lo(D_80126260) # addiu $a1, $a1, 0x6260 -/* 07B288 8007A688 0C01EAFF */ jal func_8007ABFC -/* 07B28C 8007A68C 24060050 */ li $a2, 80 -/* 07B290 8007A690 3C058012 */ lui $a1, 0x8012 -/* 07B294 8007A694 24A46260 */ addiu $a0, $a1, 0x6260 -/* 07B298 8007A698 24020500 */ li $v0, 1280 -/* 07B29C 8007A69C 24190280 */ li $t9, 640 -/* 07B2A0 8007A6A0 24080400 */ li $t0, 1024 -/* 07B2A4 8007A6A4 AC990008 */ sw $t9, 8($a0) -/* 07B2A8 8007A6A8 AC880020 */ sw $t0, 0x20($a0) -/* 07B2AC 8007A6AC AC820028 */ sw $v0, 0x28($a0) -/* 07B2B0 8007A6B0 0C034728 */ jal func_800D1CA0 -/* 07B2B4 8007A6B4 AC82003C */ sw $v0, 0x3c($a0) -/* 07B2B8 8007A6B8 10000041 */ b .L8007A7C0 -/* 07B2BC 8007A6BC 00000000 */ nop -/* 07B2C0 8007A6C0 3C04800E */ lui $a0, %hi(D_800E4710) # $a0, 0x800e -/* 07B2C4 8007A6C4 14400004 */ bnez $v0, .L8007A6D8 -/* 07B2C8 8007A6C8 24844710 */ addiu $a0, %lo(D_800E4710) # addiu $a0, $a0, 0x4710 -/* 07B2CC 8007A6CC 3C04800E */ lui $a0, %hi(D_800E4760) # $a0, 0x800e -/* 07B2D0 8007A6D0 10000005 */ b .L8007A6E8 -/* 07B2D4 8007A6D4 24844760 */ addiu $a0, %lo(D_800E4760) # addiu $a0, $a0, 0x4760 -.L8007A6D8: -/* 07B2D8 8007A6D8 14A20003 */ bne $a1, $v0, .L8007A6E8 -/* 07B2DC 8007A6DC 00000000 */ nop -/* 07B2E0 8007A6E0 3C04800E */ lui $a0, %hi(D_800E47B0) # $a0, 0x800e -/* 07B2E4 8007A6E4 248447B0 */ addiu $a0, %lo(D_800E47B0) # addiu $a0, $a0, 0x47b0 -.L8007A6E8: -/* 07B2E8 8007A6E8 3C058012 */ lui $a1, %hi(D_80126260) # $a1, 0x8012 -/* 07B2EC 8007A6EC 24A56260 */ addiu $a1, %lo(D_80126260) # addiu $a1, $a1, 0x6260 -/* 07B2F0 8007A6F0 0C01EAFF */ jal func_8007ABFC -/* 07B2F4 8007A6F4 24060050 */ li $a2, 80 -/* 07B2F8 8007A6F8 3C058012 */ lui $a1, 0x8012 -/* 07B2FC 8007A6FC 24A46260 */ addiu $a0, $a1, 0x6260 -/* 07B300 8007A700 24020500 */ li $v0, 1280 -/* 07B304 8007A704 24090280 */ li $t1, 640 -/* 07B308 8007A708 240A0400 */ li $t2, 1024 -/* 07B30C 8007A70C AC890008 */ sw $t1, 8($a0) -/* 07B310 8007A710 AC8A0020 */ sw $t2, 0x20($a0) -/* 07B314 8007A714 AC820028 */ sw $v0, 0x28($a0) -/* 07B318 8007A718 0C034728 */ jal func_800D1CA0 -/* 07B31C 8007A71C AC82003C */ sw $v0, 0x3c($a0) -/* 07B320 8007A720 10000027 */ b .L8007A7C0 -/* 07B324 8007A724 00000000 */ nop -/* 07B328 8007A728 00035880 */ sll $t3, $v1, 2 -/* 07B32C 8007A72C 01635821 */ addu $t3, $t3, $v1 -/* 07B330 8007A730 000B5900 */ sll $t3, $t3, 4 -/* 07B334 8007A734 3C0D800E */ lui $t5, %hi(D_800E3900) # $t5, 0x800e -/* 07B338 8007A738 25AD3900 */ addiu $t5, %lo(D_800E3900) # addiu $t5, $t5, 0x3900 -/* 07B33C 8007A73C 256C0280 */ addiu $t4, $t3, 0x280 -/* 07B340 8007A740 0C034728 */ jal func_800D1CA0 -/* 07B344 8007A744 018D2021 */ addu $a0, $t4, $t5 -/* 07B348 8007A748 1000001D */ b .L8007A7C0 -/* 07B34C 8007A74C 00000000 */ nop -/* 07B350 8007A750 00037080 */ sll $t6, $v1, 2 -/* 07B354 8007A754 01C37021 */ addu $t6, $t6, $v1 -/* 07B358 8007A758 000E7100 */ sll $t6, $t6, 4 -/* 07B35C 8007A75C 3C18800E */ lui $t8, %hi(D_800E3900) # $t8, 0x800e -/* 07B360 8007A760 27183900 */ addiu $t8, %lo(D_800E3900) # addiu $t8, $t8, 0x3900 -/* 07B364 8007A764 25CF0320 */ addiu $t7, $t6, 0x320 -/* 07B368 8007A768 0C034728 */ jal func_800D1CA0 -/* 07B36C 8007A76C 01F82021 */ addu $a0, $t7, $t8 -/* 07B370 8007A770 10000013 */ b .L8007A7C0 -/* 07B374 8007A774 00000000 */ nop -/* 07B378 8007A778 0003C880 */ sll $t9, $v1, 2 -/* 07B37C 8007A77C 0323C821 */ addu $t9, $t9, $v1 -/* 07B380 8007A780 0019C900 */ sll $t9, $t9, 4 -/* 07B384 8007A784 3C09800E */ lui $t1, %hi(D_800E3900) # $t1, 0x800e -/* 07B388 8007A788 25293900 */ addiu $t1, %lo(D_800E3900) # addiu $t1, $t1, 0x3900 -/* 07B38C 8007A78C 272802D0 */ addiu $t0, $t9, 0x2d0 -/* 07B390 8007A790 0C034728 */ jal func_800D1CA0 -/* 07B394 8007A794 01092021 */ addu $a0, $t0, $t1 -/* 07B398 8007A798 10000009 */ b .L8007A7C0 -/* 07B39C 8007A79C 00000000 */ nop -/* 07B3A0 8007A7A0 00035080 */ sll $t2, $v1, 2 -/* 07B3A4 8007A7A4 01435021 */ addu $t2, $t2, $v1 -/* 07B3A8 8007A7A8 000A5100 */ sll $t2, $t2, 4 -/* 07B3AC 8007A7AC 3C0C800E */ lui $t4, %hi(D_800E3900) # $t4, 0x800e -/* 07B3B0 8007A7B0 258C3900 */ addiu $t4, %lo(D_800E3900) # addiu $t4, $t4, 0x3900 -/* 07B3B4 8007A7B4 254B0370 */ addiu $t3, $t2, 0x370 -/* 07B3B8 8007A7B8 0C034728 */ jal func_800D1CA0 -/* 07B3BC 8007A7BC 016C2021 */ addu $a0, $t3, $t4 -.L8007A7C0: -/* 07B3C0 8007A7C0 0C034898 */ jal func_800D2260 -/* 07B3C4 8007A7C4 24040010 */ li $a0, 16 -/* 07B3C8 8007A7C8 0C034898 */ jal func_800D2260 -/* 07B3CC 8007A7CC 24040040 */ li $a0, 64 -/* 07B3D0 8007A7D0 0C034898 */ jal func_800D2260 -/* 07B3D4 8007A7D4 24040002 */ li $a0, 2 -/* 07B3D8 8007A7D8 8FBF0014 */ lw $ra, 0x14($sp) -/* 07B3DC 8007A7DC 27BD0018 */ addiu $sp, $sp, 0x18 -/* 07B3E0 8007A7E0 03E00008 */ jr $ra -/* 07B3E4 8007A7E4 00000000 */ nop - -glabel func_8007A7E8 -/* 07B3E8 8007A7E8 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 07B3EC 8007A7EC 3C0E8012 */ lui $t6, %hi(D_801262C0) # $t6, 0x8012 -/* 07B3F0 8007A7F0 AFB00018 */ sw $s0, 0x18($sp) -/* 07B3F4 8007A7F4 25CE62C0 */ addiu $t6, %lo(D_801262C0) # addiu $t6, $t6, 0x62c0 -/* 07B3F8 8007A7F8 00042880 */ sll $a1, $a0, 2 -/* 07B3FC 8007A7FC 00AE8021 */ addu $s0, $a1, $t6 -/* 07B400 8007A800 8E060000 */ lw $a2, ($s0) -/* 07B404 8007A804 AFBF001C */ sw $ra, 0x1c($sp) -/* 07B408 8007A808 10C00008 */ beqz $a2, .L8007A82C -/* 07B40C 8007A80C 00C02025 */ move $a0, $a2 -/* 07B410 8007A810 0C01C54E */ jal func_80071538 -/* 07B414 8007A814 AFA5002C */ sw $a1, 0x2c($sp) -/* 07B418 8007A818 8E040000 */ lw $a0, ($s0) -/* 07B41C 8007A81C 0C01C450 */ jal func_80071140 -/* 07B420 8007A820 00000000 */ nop -/* 07B424 8007A824 8FA5002C */ lw $a1, 0x2c($sp) -/* 07B428 8007A828 00000000 */ nop -.L8007A82C: -/* 07B42C 8007A82C 3C028012 */ lui $v0, %hi(D_801262CC) # $v0, 0x8012 -/* 07B430 8007A830 8C4262CC */ lw $v0, %lo(D_801262CC)($v0) -/* 07B434 8007A834 3C08800E */ lui $t0, %hi(D_800DE77C) # $t0, 0x800e -/* 07B438 8007A838 30580007 */ andi $t8, $v0, 7 -/* 07B43C 8007A83C 0018C8C0 */ sll $t9, $t8, 3 -/* 07B440 8007A840 2508E77C */ addiu $t0, %lo(D_800DE77C) # addiu $t0, $t0, -0x1884 -/* 07B444 8007A844 03281821 */ addu $v1, $t9, $t0 -/* 07B448 8007A848 3C0F8012 */ lui $t7, %hi(D_801262B0) # $t7, 0x8012 -/* 07B44C 8007A84C 3C0A8012 */ lui $t2, %hi(D_801262B8) # $t2, 0x8012 -/* 07B450 8007A850 8C690000 */ lw $t1, ($v1) -/* 07B454 8007A854 8C6B0004 */ lw $t3, 4($v1) -/* 07B458 8007A858 25EF62B0 */ addiu $t7, %lo(D_801262B0) # addiu $t7, $t7, 0x62b0 -/* 07B45C 8007A85C 254A62B8 */ addiu $t2, %lo(D_801262B8) # addiu $t2, $t2, 0x62b8 -/* 07B460 8007A860 00AF3021 */ addu $a2, $a1, $t7 -/* 07B464 8007A864 00AA3821 */ addu $a3, $a1, $t2 -/* 07B468 8007A868 28410002 */ slti $at, $v0, 2 -/* 07B46C 8007A86C ACC90000 */ sw $t1, ($a2) -/* 07B470 8007A870 14200019 */ bnez $at, .L8007A8D8 -/* 07B474 8007A874 ACEB0000 */ sw $t3, ($a3) -/* 07B478 8007A878 3C040009 */ lui $a0, (0x00096030 >> 16) # lui $a0, 9 -/* 07B47C 8007A87C 34846030 */ ori $a0, (0x00096030 & 0xFFFF) # ori $a0, $a0, 0x6030 -/* 07B480 8007A880 0C01C327 */ jal func_80070C9C -/* 07B484 8007A884 2405FFFF */ li $a1, -1 -/* 07B488 8007A888 3C03800E */ lui $v1, %hi(D_800DE770) # $v1, 0x800e -/* 07B48C 8007A88C 2463E770 */ addiu $v1, %lo(D_800DE770) # addiu $v1, $v1, -0x1890 -/* 07B490 8007A890 8C6E0000 */ lw $t6, ($v1) -/* 07B494 8007A894 244C003F */ addiu $t4, $v0, 0x3f -/* 07B498 8007A898 2401FFC0 */ li $at, -64 -/* 07B49C 8007A89C 01816824 */ and $t5, $t4, $at -/* 07B4A0 8007A8A0 15C00030 */ bnez $t6, .L8007A964 -/* 07B4A4 8007A8A4 AE0D0000 */ sw $t5, ($s0) -/* 07B4A8 8007A8A8 3C040009 */ lui $a0, (0x00096030 >> 16) # lui $a0, 9 -/* 07B4AC 8007A8AC 34846030 */ ori $a0, (0x00096030 & 0xFFFF) # ori $a0, $a0, 0x6030 -/* 07B4B0 8007A8B0 0C01C327 */ jal func_80070C9C -/* 07B4B4 8007A8B4 2405FFFF */ li $a1, -1 -/* 07B4B8 8007A8B8 3C03800E */ lui $v1, %hi(D_800DE770) # $v1, 0x800e -/* 07B4BC 8007A8BC 2463E770 */ addiu $v1, %lo(D_800DE770) # addiu $v1, $v1, -0x1890 -/* 07B4C0 8007A8C0 2458003F */ addiu $t8, $v0, 0x3f -/* 07B4C4 8007A8C4 2401FFC0 */ li $at, -64 -/* 07B4C8 8007A8C8 AC620000 */ sw $v0, ($v1) -/* 07B4CC 8007A8CC 0301C824 */ and $t9, $t8, $at -/* 07B4D0 8007A8D0 10000024 */ b .L8007A964 -/* 07B4D4 8007A8D4 AC790000 */ sw $t9, ($v1) -.L8007A8D8: -/* 07B4D8 8007A8D8 8CE80000 */ lw $t0, ($a3) -/* 07B4DC 8007A8DC 8CC90000 */ lw $t1, ($a2) -/* 07B4E0 8007A8E0 2405FFFF */ li $a1, -1 -/* 07B4E4 8007A8E4 01090019 */ multu $t0, $t1 -/* 07B4E8 8007A8E8 AFA60024 */ sw $a2, 0x24($sp) -/* 07B4EC 8007A8EC AFA70020 */ sw $a3, 0x20($sp) -/* 07B4F0 8007A8F0 00002012 */ mflo $a0 -/* 07B4F4 8007A8F4 00045040 */ sll $t2, $a0, 1 -/* 07B4F8 8007A8F8 0C01C327 */ jal func_80070C9C -/* 07B4FC 8007A8FC 25440030 */ addiu $a0, $t2, 0x30 -/* 07B500 8007A900 3C03800E */ lui $v1, %hi(D_800DE770) # $v1, 0x800e -/* 07B504 8007A904 2463E770 */ addiu $v1, %lo(D_800DE770) # addiu $v1, $v1, -0x1890 -/* 07B508 8007A908 8C6D0000 */ lw $t5, ($v1) -/* 07B50C 8007A90C 244B003F */ addiu $t3, $v0, 0x3f -/* 07B510 8007A910 2401FFC0 */ li $at, -64 -/* 07B514 8007A914 8FA60024 */ lw $a2, 0x24($sp) -/* 07B518 8007A918 8FA70020 */ lw $a3, 0x20($sp) -/* 07B51C 8007A91C 01616024 */ and $t4, $t3, $at -/* 07B520 8007A920 15A00010 */ bnez $t5, .L8007A964 -/* 07B524 8007A924 AE0C0000 */ sw $t4, ($s0) -/* 07B528 8007A928 8CEE0000 */ lw $t6, ($a3) -/* 07B52C 8007A92C 8CCF0000 */ lw $t7, ($a2) -/* 07B530 8007A930 2405FFFF */ li $a1, -1 -/* 07B534 8007A934 01CF0019 */ multu $t6, $t7 -/* 07B538 8007A938 00002012 */ mflo $a0 -/* 07B53C 8007A93C 0004C040 */ sll $t8, $a0, 1 -/* 07B540 8007A940 0C01C327 */ jal func_80070C9C -/* 07B544 8007A944 27040030 */ addiu $a0, $t8, 0x30 -/* 07B548 8007A948 3C03800E */ lui $v1, %hi(D_800DE770) # $v1, 0x800e -/* 07B54C 8007A94C 2463E770 */ addiu $v1, %lo(D_800DE770) # addiu $v1, $v1, -0x1890 -/* 07B550 8007A950 2448003F */ addiu $t0, $v0, 0x3f -/* 07B554 8007A954 2401FFC0 */ li $at, -64 -/* 07B558 8007A958 AC620000 */ sw $v0, ($v1) -/* 07B55C 8007A95C 01014824 */ and $t1, $t0, $at -/* 07B560 8007A960 AC690000 */ sw $t1, ($v1) -.L8007A964: -/* 07B564 8007A964 8FBF001C */ lw $ra, 0x1c($sp) -/* 07B568 8007A968 8FB00018 */ lw $s0, 0x18($sp) -/* 07B56C 8007A96C 03E00008 */ jr $ra -/* 07B570 8007A970 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_8007A974 -/* 07B574 8007A974 3C018012 */ lui $at, %hi(D_80126308) # $at, 0x8012 -/* 07B578 8007A978 A0206308 */ sb $zero, %lo(D_80126308)($at) -/* 07B57C 8007A97C 3C018012 */ lui $at, 0x8012 -/* 07B580 8007A980 240E0002 */ li $t6, 2 -/* 07B584 8007A984 03E00008 */ jr $ra -/* 07B588 8007A988 A02E6309 */ sb $t6, 0x6309($at) - -glabel func_8007A98C -/* 07B58C 8007A98C 3C038012 */ lui $v1, %hi(D_801262D0) # $v1, 0x8012 -/* 07B590 8007A990 246362D0 */ addiu $v1, %lo(D_801262D0) # addiu $v1, $v1, 0x62d0 -/* 07B594 8007A994 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 07B598 8007A998 8C620000 */ lw $v0, ($v1) -/* 07B59C 8007A99C AFB1001C */ sw $s1, 0x1c($sp) -/* 07B5A0 8007A9A0 AFB00018 */ sw $s0, 0x18($sp) -/* 07B5A4 8007A9A4 00808825 */ move $s1, $a0 -/* 07B5A8 8007A9A8 AFBF0024 */ sw $ra, 0x24($sp) -/* 07B5AC 8007A9AC AFB20020 */ sw $s2, 0x20($sp) -/* 07B5B0 8007A9B0 10400006 */ beqz $v0, .L8007A9CC -/* 07B5B4 8007A9B4 24100001 */ li $s0, 1 -/* 07B5B8 8007A9B8 244EFFFF */ addiu $t6, $v0, -1 -/* 07B5BC 8007A9BC 15C00003 */ bnez $t6, .L8007A9CC -/* 07B5C0 8007A9C0 AC6E0000 */ sw $t6, ($v1) -/* 07B5C4 8007A9C4 0C034744 */ jal func_800D1D10 -/* 07B5C8 8007A9C8 00002025 */ move $a0, $zero -.L8007A9CC: -/* 07B5CC 8007A9CC 24010008 */ li $at, 8 -/* 07B5D0 8007A9D0 12210003 */ beq $s1, $at, .L8007A9E0 -/* 07B5D4 8007A9D4 00000000 */ nop -/* 07B5D8 8007A9D8 0C01EAE7 */ jal func_8007AB9C -/* 07B5DC 8007A9DC 00000000 */ nop -.L8007A9E0: -/* 07B5E0 8007A9E0 3C128012 */ lui $s2, %hi(D_801261A0) # $s2, 0x8012 -/* 07B5E4 8007A9E4 265261A0 */ addiu $s2, %lo(D_801261A0) # addiu $s2, $s2, 0x61a0 -/* 07B5E8 8007A9E8 02402025 */ move $a0, $s2 -/* 07B5EC 8007A9EC 00002825 */ move $a1, $zero -/* 07B5F0 8007A9F0 0C0322EC */ jal osRecvMesg -/* 07B5F4 8007A9F4 00003025 */ move $a2, $zero -/* 07B5F8 8007A9F8 2411FFFF */ li $s1, -1 -/* 07B5FC 8007A9FC 1051000A */ beq $v0, $s1, .L8007AA28 -/* 07B600 8007AA00 00000000 */ nop -.L8007AA04: -/* 07B604 8007AA04 26100001 */ addiu $s0, $s0, 1 -/* 07B608 8007AA08 321800FF */ andi $t8, $s0, 0xff -/* 07B60C 8007AA0C 03008025 */ move $s0, $t8 -/* 07B610 8007AA10 02402025 */ move $a0, $s2 -/* 07B614 8007AA14 00002825 */ move $a1, $zero -/* 07B618 8007AA18 0C0322EC */ jal osRecvMesg -/* 07B61C 8007AA1C 00003025 */ move $a2, $zero -/* 07B620 8007AA20 1451FFF8 */ bne $v0, $s1, .L8007AA04 -/* 07B624 8007AA24 00000000 */ nop -.L8007AA28: -/* 07B628 8007AA28 3C118012 */ lui $s1, %hi(D_80126309) # $s1, 0x8012 -/* 07B62C 8007AA2C 26316309 */ addiu $s1, %lo(D_80126309) # addiu $s1, $s1, 0x6309 -/* 07B630 8007AA30 92240000 */ lbu $a0, ($s1) -/* 07B634 8007AA34 02001825 */ move $v1, $s0 -/* 07B638 8007AA38 0204082A */ slt $at, $s0, $a0 -/* 07B63C 8007AA3C 10200012 */ beqz $at, .L8007AA88 -/* 07B640 8007AA40 3C068012 */ lui $a2, 0x8012 -/* 07B644 8007AA44 3C068012 */ lui $a2, %hi(D_80126308) # $a2, 0x8012 -/* 07B648 8007AA48 24C66308 */ addiu $a2, %lo(D_80126308) # addiu $a2, $a2, 0x6308 -/* 07B64C 8007AA4C 90C50000 */ lbu $a1, ($a2) -/* 07B650 8007AA50 00000000 */ nop -/* 07B654 8007AA54 28A10014 */ slti $at, $a1, 0x14 -/* 07B658 8007AA58 10200004 */ beqz $at, .L8007AA6C -/* 07B65C 8007AA5C 00A01025 */ move $v0, $a1 -/* 07B660 8007AA60 24B90001 */ addiu $t9, $a1, 1 -/* 07B664 8007AA64 A0D90000 */ sb $t9, ($a2) -/* 07B668 8007AA68 332200FF */ andi $v0, $t9, 0xff -.L8007AA6C: -/* 07B66C 8007AA6C 24010014 */ li $at, 20 -/* 07B670 8007AA70 14410012 */ bne $v0, $at, .L8007AABC -/* 07B674 8007AA74 0064082A */ slt $at, $v1, $a0 -/* 07B678 8007AA78 A2300000 */ sb $s0, ($s1) -/* 07B67C 8007AA7C A0C00000 */ sb $zero, ($a2) -/* 07B680 8007AA80 1000000D */ b .L8007AAB8 -/* 07B684 8007AA84 320400FF */ andi $a0, $s0, 0xff -.L8007AA88: -/* 07B688 8007AA88 24C66308 */ addiu $a2, $a2, 0x6308 -/* 07B68C 8007AA8C 0083082A */ slt $at, $a0, $v1 -/* 07B690 8007AA90 10200009 */ beqz $at, .L8007AAB8 -/* 07B694 8007AA94 A0C00000 */ sb $zero, ($a2) -/* 07B698 8007AA98 3C088012 */ lui $t0, %hi(D_801262E4) # $t0, 0x8012 -/* 07B69C 8007AA9C 910862E4 */ lbu $t0, %lo(D_801262E4)($t0) -/* 07B6A0 8007AAA0 00000000 */ nop -/* 07B6A4 8007AAA4 0103082A */ slt $at, $t0, $v1 -/* 07B6A8 8007AAA8 14200004 */ bnez $at, .L8007AABC -/* 07B6AC 8007AAAC 0064082A */ slt $at, $v1, $a0 -/* 07B6B0 8007AAB0 A2300000 */ sb $s0, ($s1) -/* 07B6B4 8007AAB4 320400FF */ andi $a0, $s0, 0xff -.L8007AAB8: -/* 07B6B8 8007AAB8 0064082A */ slt $at, $v1, $a0 -.L8007AABC: -/* 07B6BC 8007AABC 1020000A */ beqz $at, .L8007AAE8 -.L8007AAC0: -/* 07B6C0 8007AAC0 02402025 */ move $a0, $s2 -/* 07B6C4 8007AAC4 00002825 */ move $a1, $zero -/* 07B6C8 8007AAC8 0C0322EC */ jal osRecvMesg -/* 07B6CC 8007AACC 24060001 */ li $a2, 1 -/* 07B6D0 8007AAD0 922A0000 */ lbu $t2, ($s1) -/* 07B6D4 8007AAD4 26100001 */ addiu $s0, $s0, 1 -/* 07B6D8 8007AAD8 320300FF */ andi $v1, $s0, 0xff -/* 07B6DC 8007AADC 006A082A */ slt $at, $v1, $t2 -/* 07B6E0 8007AAE0 1420FFF7 */ bnez $at, .L8007AAC0 -/* 07B6E4 8007AAE4 00608025 */ move $s0, $v1 -.L8007AAE8: -/* 07B6E8 8007AAE8 3C048012 */ lui $a0, %hi(D_801262D8) # $a0, 0x8012 -/* 07B6EC 8007AAEC 8C8462D8 */ lw $a0, %lo(D_801262D8)($a0) -/* 07B6F0 8007AAF0 0C034908 */ jal func_800D2420 -/* 07B6F4 8007AAF4 AFA30028 */ sw $v1, 0x28($sp) -/* 07B6F8 8007AAF8 02402025 */ move $a0, $s2 -/* 07B6FC 8007AAFC 00002825 */ move $a1, $zero -/* 07B700 8007AB00 0C0322EC */ jal osRecvMesg -/* 07B704 8007AB04 24060001 */ li $a2, 1 -/* 07B708 8007AB08 8FBF0024 */ lw $ra, 0x24($sp) -/* 07B70C 8007AB0C 8FA20028 */ lw $v0, 0x28($sp) -/* 07B710 8007AB10 8FB00018 */ lw $s0, 0x18($sp) -/* 07B714 8007AB14 8FB1001C */ lw $s1, 0x1c($sp) -/* 07B718 8007AB18 8FB20020 */ lw $s2, 0x20($sp) -/* 07B71C 8007AB1C 03E00008 */ jr $ra -/* 07B720 8007AB20 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_8007AB24 -/* 07B724 8007AB24 3C018012 */ lui $at, 0x8012 -/* 07B728 8007AB28 AFA40000 */ sw $a0, ($sp) -/* 07B72C 8007AB2C 03E00008 */ jr $ra -/* 07B730 8007AB30 A02462E4 */ sb $a0, 0x62e4($at) - -/* 07B734 8007AB34 3C0E8012 */ lui $t6, %hi(D_80126170) # $t6, 0x8012 -/* 07B738 8007AB38 8DCE6170 */ lw $t6, %lo(D_80126170)($t6) -/* 07B73C 8007AB3C 3C0F8012 */ lui $t7, %hi(D_80126309) # $t7, 0x8012 -/* 07B740 8007AB40 448E9000 */ mtc1 $t6, $f18 -/* 07B744 8007AB44 91EF6309 */ lbu $t7, %lo(D_80126309)($t7) -/* 07B748 8007AB48 468091A0 */ cvt.s.w $f6, $f18 -/* 07B74C 8007AB4C 448F9000 */ mtc1 $t7, $f18 -/* 07B750 8007AB50 05E10005 */ bgez $t7, .L8007AB68 -/* 07B754 8007AB54 468092A0 */ cvt.s.w $f10, $f18 -/* 07B758 8007AB58 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 07B75C 8007AB5C 44818000 */ mtc1 $at, $f16 -/* 07B760 8007AB60 00000000 */ nop -/* 07B764 8007AB64 46105280 */ add.s $f10, $f10, $f16 -.L8007AB68: -/* 07B768 8007AB68 00000000 */ nop -/* 07B76C 8007AB6C 460A3483 */ div.s $f18, $f6, $f10 -/* 07B770 8007AB70 4458F800 */ cfc1 $t8, $31 -/* 07B774 8007AB74 00000000 */ nop -/* 07B778 8007AB78 37010003 */ ori $at, $t8, 3 -/* 07B77C 8007AB7C 38210002 */ xori $at, $at, 2 -/* 07B780 8007AB80 44C1F800 */ ctc1 $at, $31 -/* 07B784 8007AB84 00000000 */ nop -/* 07B788 8007AB88 46009124 */ cvt.w.s $f4, $f18 -/* 07B78C 8007AB8C 44022000 */ mfc1 $v0, $f4 -/* 07B790 8007AB90 44D8F800 */ ctc1 $t8, $31 -/* 07B794 8007AB94 03E00008 */ jr $ra -/* 07B798 8007AB98 00000000 */ nop - -glabel func_8007AB9C -/* 07B79C 8007AB9C 3C058012 */ lui $a1, %hi(D_801262C8) # $a1, 0x8012 -/* 07B7A0 8007ABA0 24A562C8 */ addiu $a1, %lo(D_801262C8) # addiu $a1, $a1, 0x62c8 -/* 07B7A4 8007ABA4 8CA20000 */ lw $v0, ($a1) -/* 07B7A8 8007ABA8 3C048012 */ lui $a0, %hi(D_801262C0) # $a0, 0x8012 -/* 07B7AC 8007ABAC 248462C0 */ addiu $a0, %lo(D_801262C0) # addiu $a0, $a0, 0x62c0 -/* 07B7B0 8007ABB0 00027080 */ sll $t6, $v0, 2 -/* 07B7B4 8007ABB4 008E7821 */ addu $t7, $a0, $t6 -/* 07B7B8 8007ABB8 8DF80000 */ lw $t8, ($t7) -/* 07B7BC 8007ABBC 3C018012 */ lui $at, %hi(D_801262D8) # $at, 0x8012 -/* 07B7C0 8007ABC0 3C03800E */ lui $v1, %hi(D_800DE770) # $v1, 0x800e -/* 07B7C4 8007ABC4 8C63E770 */ lw $v1, %lo(D_800DE770)($v1) -/* 07B7C8 8007ABC8 AC3862D8 */ sw $t8, %lo(D_801262D8)($at) -/* 07B7CC 8007ABCC 3C018012 */ lui $at, %hi(D_801262E0) # $at, 0x8012 -/* 07B7D0 8007ABD0 38590001 */ xori $t9, $v0, 1 -/* 07B7D4 8007ABD4 00194880 */ sll $t1, $t9, 2 -/* 07B7D8 8007ABD8 AC2362E0 */ sw $v1, %lo(D_801262E0)($at) -/* 07B7DC 8007ABDC 00895021 */ addu $t2, $a0, $t1 -/* 07B7E0 8007ABE0 8D4B0000 */ lw $t3, ($t2) -/* 07B7E4 8007ABE4 ACB90000 */ sw $t9, ($a1) -/* 07B7E8 8007ABE8 3C018012 */ lui $at, %hi(D_801262D4) # $at, 0x8012 -/* 07B7EC 8007ABEC AC2B62D4 */ sw $t3, %lo(D_801262D4)($at) -/* 07B7F0 8007ABF0 3C018012 */ lui $at, 0x8012 -/* 07B7F4 8007ABF4 03E00008 */ jr $ra -/* 07B7F8 8007ABF8 AC2362DC */ sw $v1, 0x62dc($at) - -glabel func_8007ABFC -/* 07B7FC 8007ABFC 18C00018 */ blez $a2, .L8007AC60 -/* 07B800 8007AC00 00001025 */ move $v0, $zero -/* 07B804 8007AC04 30C70003 */ andi $a3, $a2, 3 -/* 07B808 8007AC08 10E00009 */ beqz $a3, .L8007AC30 -/* 07B80C 8007AC0C 00E01825 */ move $v1, $a3 -.L8007AC10: -/* 07B810 8007AC10 908E0000 */ lbu $t6, ($a0) -/* 07B814 8007AC14 24420001 */ addiu $v0, $v0, 1 -/* 07B818 8007AC18 24A50001 */ addiu $a1, $a1, 1 -/* 07B81C 8007AC1C 24840001 */ addiu $a0, $a0, 1 -/* 07B820 8007AC20 1462FFFB */ bne $v1, $v0, .L8007AC10 -/* 07B824 8007AC24 A0AEFFFF */ sb $t6, -1($a1) -/* 07B828 8007AC28 1046000D */ beq $v0, $a2, .L8007AC60 -/* 07B82C 8007AC2C 00000000 */ nop -.L8007AC30: -/* 07B830 8007AC30 908F0000 */ lbu $t7, ($a0) -/* 07B834 8007AC34 24420004 */ addiu $v0, $v0, 4 -/* 07B838 8007AC38 A0AF0000 */ sb $t7, ($a1) -/* 07B83C 8007AC3C 90980001 */ lbu $t8, 1($a0) -/* 07B840 8007AC40 24A50004 */ addiu $a1, $a1, 4 -/* 07B844 8007AC44 A0B8FFFD */ sb $t8, -3($a1) -/* 07B848 8007AC48 90990002 */ lbu $t9, 2($a0) -/* 07B84C 8007AC4C 24840004 */ addiu $a0, $a0, 4 -/* 07B850 8007AC50 A0B9FFFE */ sb $t9, -2($a1) -/* 07B854 8007AC54 9088FFFF */ lbu $t0, -1($a0) -/* 07B858 8007AC58 1446FFF5 */ bne $v0, $a2, .L8007AC30 -/* 07B85C 8007AC5C A0A8FFFF */ sb $t0, -1($a1) -.L8007AC60: -/* 07B860 8007AC60 03E00008 */ jr $ra -/* 07B864 8007AC64 00000000 */ nop - -/* 07B868 8007AC68 00000000 */ nop -/* 07B86C 8007AC6C 00000000 */ nop diff --git a/asm/unknown_07B870.s b/asm/unknown_07B870.s deleted file mode 100755 index 909e01a9..00000000 --- a/asm/unknown_07B870.s +++ /dev/null @@ -1,5118 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_8007AC70 -/* 07B870 8007AC70 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 07B874 8007AC74 AFBF0014 */ sw $ra, 0x14($sp) -/* 07B878 8007AC78 3C05FF00 */ lui $a1, (0xFF00FFFF >> 16) # lui $a1, 0xff00 -/* 07B87C 8007AC7C 34A5FFFF */ ori $a1, (0xFF00FFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 07B880 8007AC80 0C01C327 */ jal func_80070C9C -/* 07B884 8007AC84 240415E0 */ li $a0, 5600 -/* 07B888 8007AC88 3C018012 */ lui $at, %hi(D_80126328) # $at, 0x8012 -/* 07B88C 8007AC8C 3C05FF00 */ lui $a1, (0xFF00FFFF >> 16) # lui $a1, 0xff00 -/* 07B890 8007AC90 AC226328 */ sw $v0, %lo(D_80126328)($at) -/* 07B894 8007AC94 34A5FFFF */ ori $a1, (0xFF00FFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 07B898 8007AC98 0C01C327 */ jal func_80070C9C -/* 07B89C 8007AC9C 24040280 */ li $a0, 640 -/* 07B8A0 8007ACA0 3C018012 */ lui $at, %hi(D_8012632C) # $at, 0x8012 -/* 07B8A4 8007ACA4 AC22632C */ sw $v0, %lo(D_8012632C)($at) -/* 07B8A8 8007ACA8 3C018012 */ lui $at, %hi(D_80126330) # $at, 0x8012 -/* 07B8AC 8007ACAC AC206330 */ sw $zero, %lo(D_80126330)($at) -/* 07B8B0 8007ACB0 3C018012 */ lui $at, %hi(D_80126340) # $at, 0x8012 -/* 07B8B4 8007ACB4 AC206340 */ sw $zero, %lo(D_80126340)($at) -/* 07B8B8 8007ACB8 0C01DB16 */ jal func_80076C58 -/* 07B8BC 8007ACBC 24040005 */ li $a0, 5 -/* 07B8C0 8007ACC0 3C058012 */ lui $a1, %hi(D_80126320) # $a1, 0x8012 -/* 07B8C4 8007ACC4 24A56320 */ addiu $a1, %lo(D_80126320) # addiu $a1, $a1, 0x6320 -/* 07B8C8 8007ACC8 ACA20000 */ sw $v0, ($a1) -/* 07B8CC 8007ACCC 0C01DB16 */ jal func_80076C58 -/* 07B8D0 8007ACD0 24040003 */ li $a0, 3 -/* 07B8D4 8007ACD4 3C058012 */ lui $a1, %hi(D_80126320) # $a1, 0x8012 -/* 07B8D8 8007ACD8 24A56320 */ addiu $a1, %lo(D_80126320) # addiu $a1, $a1, 0x6320 -/* 07B8DC 8007ACDC 8CA40000 */ lw $a0, ($a1) -/* 07B8E0 8007ACE0 ACA20004 */ sw $v0, 4($a1) -/* 07B8E4 8007ACE4 8C8E0000 */ lw $t6, ($a0) -/* 07B8E8 8007ACE8 2407FFFF */ li $a3, -1 -/* 07B8EC 8007ACEC 10EE0006 */ beq $a3, $t6, .L8007AD08 -/* 07B8F0 8007ACF0 00001825 */ move $v1, $zero -/* 07B8F4 8007ACF4 00801025 */ move $v0, $a0 -.L8007ACF8: -/* 07B8F8 8007ACF8 8C4F0004 */ lw $t7, 4($v0) -/* 07B8FC 8007ACFC 24630001 */ addiu $v1, $v1, 1 -/* 07B900 8007AD00 14EFFFFD */ bne $a3, $t7, .L8007ACF8 -/* 07B904 8007AD04 24420004 */ addiu $v0, $v0, 4 -.L8007AD08: -/* 07B908 8007AD08 3C068012 */ lui $a2, %hi(D_80126338) # $a2, 0x8012 -/* 07B90C 8007AD0C 8CA40004 */ lw $a0, 4($a1) -/* 07B910 8007AD10 24C66338 */ addiu $a2, %lo(D_80126338) # addiu $a2, $a2, 0x6338 -/* 07B914 8007AD14 2463FFFF */ addiu $v1, $v1, -1 -/* 07B918 8007AD18 ACC30000 */ sw $v1, ($a2) -/* 07B91C 8007AD1C 8C980000 */ lw $t8, ($a0) -/* 07B920 8007AD20 00001825 */ move $v1, $zero -/* 07B924 8007AD24 10F80006 */ beq $a3, $t8, .L8007AD40 -/* 07B928 8007AD28 3C05FF00 */ lui $a1, (0xFF00FFFF >> 16) # lui $a1, 0xff00 -/* 07B92C 8007AD2C 00801025 */ move $v0, $a0 -.L8007AD30: -/* 07B930 8007AD30 8C590004 */ lw $t9, 4($v0) -/* 07B934 8007AD34 24630001 */ addiu $v1, $v1, 1 -/* 07B938 8007AD38 14F9FFFD */ bne $a3, $t9, .L8007AD30 -/* 07B93C 8007AD3C 24420004 */ addiu $v0, $v0, 4 -.L8007AD40: -/* 07B940 8007AD40 2463FFFF */ addiu $v1, $v1, -1 -/* 07B944 8007AD44 ACC30004 */ sw $v1, 4($a2) -/* 07B948 8007AD48 24040320 */ li $a0, 800 -/* 07B94C 8007AD4C 0C01C327 */ jal func_80070C9C -/* 07B950 8007AD50 34A5FFFF */ ori $a1, (0xFF00FFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 07B954 8007AD54 3C018012 */ lui $at, %hi(D_8012634C) # $at, 0x8012 -/* 07B958 8007AD58 3C05FF00 */ lui $a1, (0xFF00FFFF >> 16) # lui $a1, 0xff00 -/* 07B95C 8007AD5C AC22634C */ sw $v0, %lo(D_8012634C)($at) -/* 07B960 8007AD60 34A5FFFF */ ori $a1, (0xFF00FFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 07B964 8007AD64 0C01C327 */ jal func_80070C9C -/* 07B968 8007AD68 24040200 */ li $a0, 512 -/* 07B96C 8007AD6C 3C018012 */ lui $at, %hi(D_80126350) # $at, 0x8012 -/* 07B970 8007AD70 AC226350 */ sw $v0, %lo(D_80126350)($at) -/* 07B974 8007AD74 3C018012 */ lui $at, %hi(D_80126358) # $at, 0x8012 -/* 07B978 8007AD78 AC206358 */ sw $zero, %lo(D_80126358)($at) -/* 07B97C 8007AD7C 0C01DB16 */ jal func_80076C58 -/* 07B980 8007AD80 2404000D */ li $a0, 13 -/* 07B984 8007AD84 3C058012 */ lui $a1, %hi(D_80126348) # $a1, 0x8012 -/* 07B988 8007AD88 3C068012 */ lui $a2, %hi(D_80126354) # $a2, 0x8012 -/* 07B98C 8007AD8C 24C66354 */ addiu $a2, %lo(D_80126354) # addiu $a2, $a2, 0x6354 -/* 07B990 8007AD90 24A56348 */ addiu $a1, %lo(D_80126348) # addiu $a1, $a1, 0x6348 -/* 07B994 8007AD94 00004080 */ sll $t0, $zero, 2 -/* 07B998 8007AD98 ACA20000 */ sw $v0, ($a1) -/* 07B99C 8007AD9C ACC00000 */ sw $zero, ($a2) -/* 07B9A0 8007ADA0 00484821 */ addu $t1, $v0, $t0 -/* 07B9A4 8007ADA4 8D2A0000 */ lw $t2, ($t1) -/* 07B9A8 8007ADA8 2407FFFF */ li $a3, -1 -/* 07B9AC 8007ADAC 00402025 */ move $a0, $v0 -/* 07B9B0 8007ADB0 10EA0009 */ beq $a3, $t2, .L8007ADD8 -/* 07B9B4 8007ADB4 00001825 */ move $v1, $zero -/* 07B9B8 8007ADB8 246B0001 */ addiu $t3, $v1, 1 -.L8007ADBC: -/* 07B9BC 8007ADBC 000B6080 */ sll $t4, $t3, 2 -/* 07B9C0 8007ADC0 008C6821 */ addu $t5, $a0, $t4 -/* 07B9C4 8007ADC4 ACCB0000 */ sw $t3, ($a2) -/* 07B9C8 8007ADC8 8DAE0000 */ lw $t6, ($t5) -/* 07B9CC 8007ADCC 01601825 */ move $v1, $t3 -/* 07B9D0 8007ADD0 14EEFFFA */ bne $a3, $t6, .L8007ADBC -/* 07B9D4 8007ADD4 246B0001 */ addiu $t3, $v1, 1 -.L8007ADD8: -/* 07B9D8 8007ADD8 246FFFFF */ addiu $t7, $v1, -1 -/* 07B9DC 8007ADDC 3C05FF00 */ lui $a1, (0xFF00FFFF >> 16) # lui $a1, 0xff00 -/* 07B9E0 8007ADE0 ACCF0000 */ sw $t7, ($a2) -/* 07B9E4 8007ADE4 34A5FFFF */ ori $a1, (0xFF00FFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 07B9E8 8007ADE8 0C01C327 */ jal func_80070C9C -/* 07B9EC 8007ADEC 24040028 */ li $a0, 40 -/* 07B9F0 8007ADF0 3C018012 */ lui $at, %hi(D_8012636C) # $at, 0x8012 -/* 07B9F4 8007ADF4 8FBF0014 */ lw $ra, 0x14($sp) -/* 07B9F8 8007ADF8 AC22636C */ sw $v0, %lo(D_8012636C)($at) -/* 07B9FC 8007ADFC 3C018012 */ lui $at, %hi(D_80126344) # $at, 0x8012 -/* 07BA00 8007AE00 AC206344 */ sw $zero, %lo(D_80126344)($at) -/* 07BA04 8007AE04 03E00008 */ jr $ra -/* 07BA08 8007AE08 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_8007AE0C -/* 07BA0C 8007AE0C 3C028012 */ lui $v0, %hi(D_80126378) # $v0, 0x8012 -/* 07BA10 8007AE10 24426378 */ addiu $v0, %lo(D_80126378) # addiu $v0, $v0, 0x6378 -/* 07BA14 8007AE14 8C4E0000 */ lw $t6, ($v0) -/* 07BA18 8007AE18 00000000 */ nop -/* 07BA1C 8007AE1C 01C47825 */ or $t7, $t6, $a0 -/* 07BA20 8007AE20 03E00008 */ jr $ra -/* 07BA24 8007AE24 AC4F0000 */ sw $t7, ($v0) - -glabel func_8007AE28 -/* 07BA28 8007AE28 3C028012 */ lui $v0, %hi(D_80126378) # $v0, 0x8012 -/* 07BA2C 8007AE2C 24426378 */ addiu $v0, %lo(D_80126378) # addiu $v0, $v0, 0x6378 -/* 07BA30 8007AE30 8C4E0000 */ lw $t6, ($v0) -/* 07BA34 8007AE34 00807827 */ not $t7, $a0 -/* 07BA38 8007AE38 01CFC024 */ and $t8, $t6, $t7 -/* 07BA3C 8007AE3C 03E00008 */ jr $ra -/* 07BA40 8007AE40 AC580000 */ sw $t8, ($v0) - -/* 07BA44 8007AE44 3C028012 */ lui $v0, %hi(D_80126338) # $v0, 0x8012 -/* 07BA48 8007AE48 8C426338 */ lw $v0, %lo(D_80126338)($v0) -/* 07BA4C 8007AE4C 03E00008 */ jr $ra -/* 07BA50 8007AE50 00000000 */ nop - -/* 07BA54 8007AE54 3C028012 */ lui $v0, %hi(D_8012633C) # $v0, 0x8012 -/* 07BA58 8007AE58 8C42633C */ lw $v0, %lo(D_8012633C)($v0) -/* 07BA5C 8007AE5C 03E00008 */ jr $ra -/* 07BA60 8007AE60 00000000 */ nop - -/* 07BA64 8007AE64 3C028012 */ lui $v0, %hi(D_80126354) # $v0, 0x8012 -/* 07BA68 8007AE68 8C426354 */ lw $v0, %lo(D_80126354)($v0) -/* 07BA6C 8007AE6C 03E00008 */ jr $ra -/* 07BA70 8007AE70 00000000 */ nop - -glabel func_8007AE74 -/* 07BA74 8007AE74 27BDFF90 */ addiu $sp, $sp, -0x70 -/* 07BA78 8007AE78 308EFFFF */ andi $t6, $a0, 0xffff -/* 07BA7C 8007AE7C AFB30024 */ sw $s3, 0x24($sp) -/* 07BA80 8007AE80 AFB00018 */ sw $s0, 0x18($sp) -/* 07BA84 8007AE84 31CF8000 */ andi $t7, $t6, 0x8000 -/* 07BA88 8007AE88 AFBF002C */ sw $ra, 0x2c($sp) -/* 07BA8C 8007AE8C AFB40028 */ sw $s4, 0x28($sp) -/* 07BA90 8007AE90 AFB20020 */ sw $s2, 0x20($sp) -/* 07BA94 8007AE94 AFB1001C */ sw $s1, 0x1c($sp) -/* 07BA98 8007AE98 01C08025 */ move $s0, $t6 -/* 07BA9C 8007AE9C 01C04025 */ move $t0, $t6 -/* 07BAA0 8007AEA0 24130004 */ li $s3, 4 -/* 07BAA4 8007AEA4 11E00004 */ beqz $t7, .L8007AEB8 -/* 07BAA8 8007AEA8 00001025 */ move $v0, $zero -/* 07BAAC 8007AEAC 24020001 */ li $v0, 1 -/* 07BAB0 8007AEB0 31C87FFF */ andi $t0, $t6, 0x7fff -/* 07BAB4 8007AEB4 24130002 */ li $s3, 2 -.L8007AEB8: -/* 07BAB8 8007AEB8 00024880 */ sll $t1, $v0, 2 -/* 07BABC 8007AEBC 3C188012 */ lui $t8, 0x8012 -/* 07BAC0 8007AEC0 0309C021 */ addu $t8, $t8, $t1 -/* 07BAC4 8007AEC4 8F186338 */ lw $t8, 0x6338($t8) -/* 07BAC8 8007AEC8 3C028012 */ lui $v0, %hi(D_80126330) # $v0, 0x8012 -/* 07BACC 8007AECC 0118082A */ slt $at, $t0, $t8 -/* 07BAD0 8007AED0 10200003 */ beqz $at, .L8007AEE0 -/* 07BAD4 8007AED4 3C048012 */ lui $a0, %hi(D_80126328) # $a0, 0x8012 -/* 07BAD8 8007AED8 05010002 */ bgez $t0, .L8007AEE4 -/* 07BADC 8007AEDC 00000000 */ nop -.L8007AEE0: -/* 07BAE0 8007AEE0 00008025 */ move $s0, $zero -.L8007AEE4: -/* 07BAE4 8007AEE4 8C426330 */ lw $v0, %lo(D_80126330)($v0) -/* 07BAE8 8007AEE8 00008825 */ move $s1, $zero -/* 07BAEC 8007AEEC 18400012 */ blez $v0, .L8007AF38 -/* 07BAF0 8007AEF0 3C148012 */ lui $s4, %hi(D_8012636C) # $s4, 0x8012 -/* 07BAF4 8007AEF4 8C846328 */ lw $a0, %lo(D_80126328)($a0) -/* 07BAF8 8007AEF8 00000000 */ nop -/* 07BAFC 8007AEFC 001150C0 */ sll $t2, $s1, 3 -.L8007AF00: -/* 07BB00 8007AF00 008A1821 */ addu $v1, $a0, $t2 -/* 07BB04 8007AF04 8C6B0000 */ lw $t3, ($v1) -/* 07BB08 8007AF08 26310001 */ addiu $s1, $s1, 1 -/* 07BB0C 8007AF0C 160B0008 */ bne $s0, $t3, .L8007AF30 -/* 07BB10 8007AF10 0222082A */ slt $at, $s1, $v0 -/* 07BB14 8007AF14 8C620004 */ lw $v0, 4($v1) -/* 07BB18 8007AF18 00000000 */ nop -/* 07BB1C 8007AF1C 904C0005 */ lbu $t4, 5($v0) -/* 07BB20 8007AF20 00000000 */ nop -/* 07BB24 8007AF24 258D0001 */ addiu $t5, $t4, 1 -/* 07BB28 8007AF28 100000DC */ b .L8007B29C -/* 07BB2C 8007AF2C A04D0005 */ sb $t5, 5($v0) -.L8007AF30: -/* 07BB30 8007AF30 1420FFF3 */ bnez $at, .L8007AF00 -/* 07BB34 8007AF34 001150C0 */ sll $t2, $s1, 3 -.L8007AF38: -/* 07BB38 8007AF38 3C0E8012 */ lui $t6, 0x8012 -/* 07BB3C 8007AF3C 01C97021 */ addu $t6, $t6, $t1 -/* 07BB40 8007AF40 8DCE6320 */ lw $t6, 0x6320($t6) -/* 07BB44 8007AF44 00087880 */ sll $t7, $t0, 2 -/* 07BB48 8007AF48 01CF1021 */ addu $v0, $t6, $t7 -/* 07BB4C 8007AF4C 8C520000 */ lw $s2, ($v0) -/* 07BB50 8007AF50 8C580004 */ lw $t8, 4($v0) -/* 07BB54 8007AF54 2694636C */ addiu $s4, %lo(D_8012636C) # addiu $s4, $s4, 0x636c -/* 07BB58 8007AF58 8E850000 */ lw $a1, ($s4) -/* 07BB5C 8007AF5C 0312C823 */ subu $t9, $t8, $s2 -/* 07BB60 8007AF60 AFB90058 */ sw $t9, 0x58($sp) -/* 07BB64 8007AF64 AFB30050 */ sw $s3, 0x50($sp) -/* 07BB68 8007AF68 02602025 */ move $a0, $s3 -/* 07BB6C 8007AF6C 24070028 */ li $a3, 40 -/* 07BB70 8007AF70 0C01DB9A */ jal func_80076E68 -/* 07BB74 8007AF74 02403025 */ move $a2, $s2 -/* 07BB78 8007AF78 8E830000 */ lw $v1, ($s4) -/* 07BB7C 8007AF7C 8FAE0058 */ lw $t6, 0x58($sp) -/* 07BB80 8007AF80 94710012 */ lhu $s1, 0x12($v1) -/* 07BB84 8007AF84 906C001D */ lbu $t4, 0x1d($v1) -/* 07BB88 8007AF88 00115203 */ sra $t2, $s1, 8 -/* 07BB8C 8007AF8C 314BFFFF */ andi $t3, $t2, 0xffff -/* 07BB90 8007AF90 15800015 */ bnez $t4, .L8007AFE8 -/* 07BB94 8007AF94 01608825 */ move $s1, $t3 -/* 07BB98 8007AF98 000B6880 */ sll $t5, $t3, 2 -/* 07BB9C 8007AF9C 01AB6823 */ subu $t5, $t5, $t3 -/* 07BBA0 8007AFA0 3C05800E */ lui $a1, %hi(D_800DE7C0) # $a1, 0x800e -/* 07BBA4 8007AFA4 8CA5E7C0 */ lw $a1, %lo(D_800DE7C0)($a1) -/* 07BBA8 8007AFA8 000D6940 */ sll $t5, $t5, 5 -/* 07BBAC 8007AFAC 01AE2021 */ addu $a0, $t5, $t6 -/* 07BBB0 8007AFB0 0C01C344 */ jal func_80070D10 -/* 07BBB4 8007AFB4 0160A025 */ move $s4, $t3 -/* 07BBB8 8007AFB8 14400003 */ bnez $v0, .L8007AFC8 -/* 07BBBC 8007AFBC 00409825 */ move $s3, $v0 -/* 07BBC0 8007AFC0 100000B6 */ b .L8007B29C -/* 07BBC4 8007AFC4 00001025 */ move $v0, $zero -.L8007AFC8: -/* 07BBC8 8007AFC8 8FA40050 */ lw $a0, 0x50($sp) -/* 07BBCC 8007AFCC 8FA70058 */ lw $a3, 0x58($sp) -/* 07BBD0 8007AFD0 02602825 */ move $a1, $s3 -/* 07BBD4 8007AFD4 02403025 */ move $a2, $s2 -/* 07BBD8 8007AFD8 0C01DB9A */ jal func_80076E68 -/* 07BBDC 8007AFDC 00008825 */ move $s1, $zero -/* 07BBE0 8007AFE0 1000002A */ b .L8007B08C -/* 07BBE4 8007AFE4 00000000 */ nop -.L8007AFE8: -/* 07BBE8 8007AFE8 0C03186B */ jal func_800C61AC -/* 07BBEC 8007AFEC 24640020 */ addiu $a0, $v1, 0x20 -/* 07BBF0 8007AFF0 0011C080 */ sll $t8, $s1, 2 -/* 07BBF4 8007AFF4 0311C023 */ subu $t8, $t8, $s1 -/* 07BBF8 8007AFF8 0018C140 */ sll $t8, $t8, 5 -/* 07BBFC 8007AFFC 3C05800E */ lui $a1, %hi(D_800DE7C0) # $a1, 0x800e -/* 07BC00 8007B000 244F0020 */ addiu $t7, $v0, 0x20 -/* 07BC04 8007B004 8CA5E7C0 */ lw $a1, %lo(D_800DE7C0)($a1) -/* 07BC08 8007B008 03022021 */ addu $a0, $t8, $v0 -/* 07BC0C 8007B00C AFAF003C */ sw $t7, 0x3c($sp) -/* 07BC10 8007B010 24840020 */ addiu $a0, $a0, 0x20 -/* 07BC14 8007B014 0C01C344 */ jal func_80070D10 -/* 07BC18 8007B018 0220A025 */ move $s4, $s1 -/* 07BC1C 8007B01C 14400003 */ bnez $v0, .L8007B02C -/* 07BC20 8007B020 00409825 */ move $s3, $v0 -/* 07BC24 8007B024 1000009D */ b .L8007B29C -/* 07BC28 8007B028 00001025 */ move $v0, $zero -.L8007B02C: -/* 07BC2C 8007B02C 8FB9003C */ lw $t9, 0x3c($sp) -/* 07BC30 8007B030 8FAB0058 */ lw $t3, 0x58($sp) -/* 07BC34 8007B034 02795021 */ addu $t2, $s3, $t9 -/* 07BC38 8007B038 014B1023 */ subu $v0, $t2, $t3 -/* 07BC3C 8007B03C 8FA40050 */ lw $a0, 0x50($sp) -/* 07BC40 8007B040 04410004 */ bgez $v0, .L8007B054 -/* 07BC44 8007B044 304C000F */ andi $t4, $v0, 0xf -/* 07BC48 8007B048 11800002 */ beqz $t4, .L8007B054 -/* 07BC4C 8007B04C 00000000 */ nop -/* 07BC50 8007B050 258CFFF0 */ addiu $t4, $t4, -0x10 -.L8007B054: -/* 07BC54 8007B054 004C2823 */ subu $a1, $v0, $t4 -/* 07BC58 8007B058 AFA50034 */ sw $a1, 0x34($sp) -/* 07BC5C 8007B05C 02403025 */ move $a2, $s2 -/* 07BC60 8007B060 00008825 */ move $s1, $zero -/* 07BC64 8007B064 0C01DB9A */ jal func_80076E68 -/* 07BC68 8007B068 01603825 */ move $a3, $t3 -/* 07BC6C 8007B06C 8FA40034 */ lw $a0, 0x34($sp) -/* 07BC70 8007B070 02602825 */ move $a1, $s3 -/* 07BC74 8007B074 0C031886 */ jal func_800C6218 -/* 07BC78 8007B078 24840020 */ addiu $a0, $a0, 0x20 -/* 07BC7C 8007B07C 8FAD003C */ lw $t5, 0x3c($sp) -/* 07BC80 8007B080 00000000 */ nop -/* 07BC84 8007B084 25AEFFE0 */ addiu $t6, $t5, -0x20 -/* 07BC88 8007B088 AFAE0058 */ sw $t6, 0x58($sp) -.L8007B08C: -/* 07BC8C 8007B08C 3C028012 */ lui $v0, %hi(D_80126330) # $v0, 0x8012 -/* 07BC90 8007B090 8C426330 */ lw $v0, %lo(D_80126330)($v0) -/* 07BC94 8007B094 2405FFFF */ li $a1, -1 -/* 07BC98 8007B098 18400010 */ blez $v0, .L8007B0DC -/* 07BC9C 8007B09C 3C0E8012 */ lui $t6, %hi(D_80126328) # $t6, 0x8012 -/* 07BCA0 8007B0A0 3C048012 */ lui $a0, %hi(D_80126328) # $a0, 0x8012 -/* 07BCA4 8007B0A4 8C846328 */ lw $a0, %lo(D_80126328)($a0) -/* 07BCA8 8007B0A8 2403FFFF */ li $v1, -1 -/* 07BCAC 8007B0AC 0011C0C0 */ sll $t8, $s1, 3 -.L8007B0B0: -/* 07BCB0 8007B0B0 0098C821 */ addu $t9, $a0, $t8 -/* 07BCB4 8007B0B4 8F2A0000 */ lw $t2, ($t9) -/* 07BCB8 8007B0B8 00000000 */ nop -/* 07BCBC 8007B0BC 146A0002 */ bne $v1, $t2, .L8007B0C8 -/* 07BCC0 8007B0C0 00000000 */ nop -/* 07BCC4 8007B0C4 02202825 */ move $a1, $s1 -.L8007B0C8: -/* 07BCC8 8007B0C8 26310001 */ addiu $s1, $s1, 1 -/* 07BCCC 8007B0CC 0222082A */ slt $at, $s1, $v0 -/* 07BCD0 8007B0D0 1420FFF7 */ bnez $at, .L8007B0B0 -/* 07BCD4 8007B0D4 0011C0C0 */ sll $t8, $s1, 3 -/* 07BCD8 8007B0D8 00008825 */ move $s1, $zero -.L8007B0DC: -/* 07BCDC 8007B0DC 3C048012 */ lui $a0, %hi(D_80126328) # $a0, 0x8012 -/* 07BCE0 8007B0E0 2403FFFF */ li $v1, -1 -/* 07BCE4 8007B0E4 8C846328 */ lw $a0, %lo(D_80126328)($a0) -/* 07BCE8 8007B0E8 14A30004 */ bne $a1, $v1, .L8007B0FC -/* 07BCEC 8007B0EC 244C0001 */ addiu $t4, $v0, 1 -/* 07BCF0 8007B0F0 3C018012 */ lui $at, %hi(D_80126330) # $at, 0x8012 -/* 07BCF4 8007B0F4 00402825 */ move $a1, $v0 -/* 07BCF8 8007B0F8 AC2C6330 */ sw $t4, %lo(D_80126330)($at) -.L8007B0FC: -/* 07BCFC 8007B0FC 000558C0 */ sll $t3, $a1, 3 -/* 07BD00 8007B100 008B6821 */ addu $t5, $a0, $t3 -/* 07BD04 8007B104 ADB00000 */ sw $s0, ($t5) -/* 07BD08 8007B108 8DCE6328 */ lw $t6, %lo(D_80126328)($t6) -/* 07BD0C 8007B10C 24010007 */ li $at, 7 -/* 07BD10 8007B110 01CB7821 */ addu $t7, $t6, $t3 -/* 07BD14 8007B114 ADF30004 */ sw $s3, 4($t7) -/* 07BD18 8007B118 92660002 */ lbu $a2, 2($s3) -/* 07BD1C 8007B11C 2403FFFF */ li $v1, -1 -/* 07BD20 8007B120 30D8000F */ andi $t8, $a2, 0xf -/* 07BD24 8007B124 1701001E */ bne $t8, $at, .L8007B1A0 -/* 07BD28 8007B128 03003025 */ move $a2, $t8 -/* 07BD2C 8007B12C 3C128012 */ lui $s2, %hi(D_80126344) # $s2, 0x8012 -/* 07BD30 8007B130 26526344 */ addiu $s2, %lo(D_80126344) # addiu $s2, $s2, 0x6344 -/* 07BD34 8007B134 8E590000 */ lw $t9, ($s2) -/* 07BD38 8007B138 2404000E */ li $a0, 14 -/* 07BD3C 8007B13C 17200014 */ bnez $t9, .L8007B190 -/* 07BD40 8007B140 3C0A8012 */ lui $t2, %hi(D_8012632C) # $t2, 0x8012 -/* 07BD44 8007B144 3C0C8012 */ lui $t4, %hi(D_80126340) # $t4, 0x8012 -/* 07BD48 8007B148 8D8C6340 */ lw $t4, %lo(D_80126340)($t4) -/* 07BD4C 8007B14C 8D4A632C */ lw $t2, %lo(D_8012632C)($t2) -/* 07BD50 8007B150 86660008 */ lh $a2, 8($s3) -/* 07BD54 8007B154 24070020 */ li $a3, 32 -/* 07BD58 8007B158 0C01DB9A */ jal func_80076E68 -/* 07BD5C 8007B15C 014C2821 */ addu $a1, $t2, $t4 -/* 07BD60 8007B160 3C0B8012 */ lui $t3, %hi(D_80126340) # $t3, 0x8012 -/* 07BD64 8007B164 8D6B6340 */ lw $t3, %lo(D_80126340)($t3) -/* 07BD68 8007B168 3C0D8012 */ lui $t5, %hi(D_80126340) # $t5, 0x8012 -/* 07BD6C 8007B16C A66B0008 */ sh $t3, 8($s3) -/* 07BD70 8007B170 8DAD6340 */ lw $t5, %lo(D_80126340)($t5) -/* 07BD74 8007B174 3C018012 */ lui $at, %hi(D_80126340) # $at, 0x8012 -/* 07BD78 8007B178 25AE0020 */ addiu $t6, $t5, 0x20 -/* 07BD7C 8007B17C AC2E6340 */ sw $t6, %lo(D_80126340)($at) -/* 07BD80 8007B180 92660002 */ lbu $a2, 2($s3) -/* 07BD84 8007B184 00000000 */ nop -/* 07BD88 8007B188 30CF000F */ andi $t7, $a2, 0xf -/* 07BD8C 8007B18C 01E03025 */ move $a2, $t7 -.L8007B190: -/* 07BD90 8007B190 3C038012 */ lui $v1, %hi(D_80126340) # $v1, 0x8012 -/* 07BD94 8007B194 8C636340 */ lw $v1, %lo(D_80126340)($v1) -/* 07BD98 8007B198 00000000 */ nop -/* 07BD9C 8007B19C 2463FFE0 */ addiu $v1, $v1, -0x20 -.L8007B1A0: -/* 07BDA0 8007B1A0 3C128012 */ lui $s2, %hi(D_80126344) # $s2, 0x8012 -/* 07BDA4 8007B1A4 24010008 */ li $at, 8 -/* 07BDA8 8007B1A8 14C10016 */ bne $a2, $at, .L8007B204 -/* 07BDAC 8007B1AC 26526344 */ addiu $s2, %lo(D_80126344) # addiu $s2, $s2, 0x6344 -/* 07BDB0 8007B1B0 8E580000 */ lw $t8, ($s2) -/* 07BDB4 8007B1B4 3C108012 */ lui $s0, %hi(D_80126340) # $s0, 0x8012 -/* 07BDB8 8007B1B8 8E106340 */ lw $s0, %lo(D_80126340)($s0) -/* 07BDBC 8007B1BC 17000010 */ bnez $t8, .L8007B200 -/* 07BDC0 8007B1C0 2404000E */ li $a0, 14 -/* 07BDC4 8007B1C4 3C198012 */ lui $t9, %hi(D_8012632C) # $t9, 0x8012 -/* 07BDC8 8007B1C8 8F39632C */ lw $t9, %lo(D_8012632C)($t9) -/* 07BDCC 8007B1CC 86660008 */ lh $a2, 8($s3) -/* 07BDD0 8007B1D0 24070080 */ li $a3, 128 -/* 07BDD4 8007B1D4 0C01DB9A */ jal func_80076E68 -/* 07BDD8 8007B1D8 03302821 */ addu $a1, $t9, $s0 -/* 07BDDC 8007B1DC 3C038012 */ lui $v1, %hi(D_80126340) # $v1, 0x8012 -/* 07BDE0 8007B1E0 24636340 */ addiu $v1, %lo(D_80126340) # addiu $v1, $v1, 0x6340 -/* 07BDE4 8007B1E4 8C6A0000 */ lw $t2, ($v1) -/* 07BDE8 8007B1E8 00000000 */ nop -/* 07BDEC 8007B1EC A66A0008 */ sh $t2, 8($s3) -/* 07BDF0 8007B1F0 8C6C0000 */ lw $t4, ($v1) -/* 07BDF4 8007B1F4 00000000 */ nop -/* 07BDF8 8007B1F8 25900080 */ addiu $s0, $t4, 0x80 -/* 07BDFC 8007B1FC AC700000 */ sw $s0, ($v1) -.L8007B200: -/* 07BE00 8007B200 2603FF80 */ addiu $v1, $s0, -0x80 -.L8007B204: -/* 07BE04 8007B204 8FAD0058 */ lw $t5, 0x58($sp) -/* 07BE08 8007B208 AE400000 */ sw $zero, ($s2) -/* 07BE0C 8007B20C AFA30054 */ sw $v1, 0x54($sp) -/* 07BE10 8007B210 0C01C614 */ jal func_80071850 -/* 07BE14 8007B214 026D2021 */ addu $a0, $s3, $t5 -/* 07BE18 8007B218 8FA30054 */ lw $v1, 0x54($sp) -/* 07BE1C 8007B21C 00409025 */ move $s2, $v0 -/* 07BE20 8007B220 1A80000F */ blez $s4, .L8007B260 -/* 07BE24 8007B224 02608025 */ move $s0, $s3 -.L8007B228: -/* 07BE28 8007B228 02002025 */ move $a0, $s0 -/* 07BE2C 8007B22C 02402825 */ move $a1, $s2 -/* 07BE30 8007B230 0C01F43D */ jal func_8007D0F4 -/* 07BE34 8007B234 AFA30054 */ sw $v1, 0x54($sp) -/* 07BE38 8007B238 8FA30054 */ lw $v1, 0x54($sp) -/* 07BE3C 8007B23C 26310001 */ addiu $s1, $s1, 1 -/* 07BE40 8007B240 04600003 */ bltz $v1, .L8007B250 -/* 07BE44 8007B244 00000000 */ nop -/* 07BE48 8007B248 A6030008 */ sh $v1, 8($s0) -/* 07BE4C 8007B24C 26520030 */ addiu $s2, $s2, 0x30 -.L8007B250: -/* 07BE50 8007B250 860E0016 */ lh $t6, 0x16($s0) -/* 07BE54 8007B254 26520060 */ addiu $s2, $s2, 0x60 -/* 07BE58 8007B258 1634FFF3 */ bne $s1, $s4, .L8007B228 -/* 07BE5C 8007B25C 020E8021 */ addu $s0, $s0, $t6 -.L8007B260: -/* 07BE60 8007B260 3C0F8012 */ lui $t7, %hi(D_80126340) # $t7, 0x8012 -/* 07BE64 8007B264 8DEF6340 */ lw $t7, %lo(D_80126340)($t7) -/* 07BE68 8007B268 3C188012 */ lui $t8, %hi(D_80126330) # $t8, 0x8012 -/* 07BE6C 8007B26C 29E10280 */ slti $at, $t7, 0x280 -/* 07BE70 8007B270 14200003 */ bnez $at, .L8007B280 -/* 07BE74 8007B274 00000000 */ nop -/* 07BE78 8007B278 10000008 */ b .L8007B29C -/* 07BE7C 8007B27C 00001025 */ move $v0, $zero -.L8007B280: -/* 07BE80 8007B280 8F186330 */ lw $t8, %lo(D_80126330)($t8) -/* 07BE84 8007B284 02601025 */ move $v0, $s3 -/* 07BE88 8007B288 2B0102BD */ slti $at, $t8, 0x2bd -/* 07BE8C 8007B28C 14200003 */ bnez $at, .L8007B29C -/* 07BE90 8007B290 00000000 */ nop -/* 07BE94 8007B294 10000001 */ b .L8007B29C -/* 07BE98 8007B298 00001025 */ move $v0, $zero -.L8007B29C: -/* 07BE9C 8007B29C 8FBF002C */ lw $ra, 0x2c($sp) -/* 07BEA0 8007B2A0 8FB00018 */ lw $s0, 0x18($sp) -/* 07BEA4 8007B2A4 8FB1001C */ lw $s1, 0x1c($sp) -/* 07BEA8 8007B2A8 8FB20020 */ lw $s2, 0x20($sp) -/* 07BEAC 8007B2AC 8FB30024 */ lw $s3, 0x24($sp) -/* 07BEB0 8007B2B0 8FB40028 */ lw $s4, 0x28($sp) -/* 07BEB4 8007B2B4 03E00008 */ jr $ra -/* 07BEB8 8007B2B8 27BD0070 */ addiu $sp, $sp, 0x70 - -glabel func_8007B2BC -/* 07BEBC 8007B2BC 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 07BEC0 8007B2C0 AFBF0014 */ sw $ra, 0x14($sp) -/* 07BEC4 8007B2C4 10800027 */ beqz $a0, .L8007B364 -/* 07BEC8 8007B2C8 00803025 */ move $a2, $a0 -/* 07BECC 8007B2CC 908E0005 */ lbu $t6, 5($a0) -/* 07BED0 8007B2D0 00000000 */ nop -/* 07BED4 8007B2D4 25CFFFFF */ addiu $t7, $t6, -1 -/* 07BED8 8007B2D8 31F800FF */ andi $t8, $t7, 0xff -/* 07BEDC 8007B2DC 1F000021 */ bgtz $t8, .L8007B364 -/* 07BEE0 8007B2E0 A08F0005 */ sb $t7, 5($a0) -/* 07BEE4 8007B2E4 3C048012 */ lui $a0, %hi(D_80126330) # $a0, 0x8012 -/* 07BEE8 8007B2E8 8C846330 */ lw $a0, %lo(D_80126330)($a0) -/* 07BEEC 8007B2EC 00001025 */ move $v0, $zero -/* 07BEF0 8007B2F0 1880001C */ blez $a0, .L8007B364 -/* 07BEF4 8007B2F4 3C058012 */ lui $a1, %hi(D_80126328) # $a1, 0x8012 -/* 07BEF8 8007B2F8 8CA56328 */ lw $a1, %lo(D_80126328)($a1) -/* 07BEFC 8007B2FC 00000000 */ nop -/* 07BF00 8007B300 0002C8C0 */ sll $t9, $v0, 3 -.L8007B304: -/* 07BF04 8007B304 00B94021 */ addu $t0, $a1, $t9 -/* 07BF08 8007B308 8D090004 */ lw $t1, 4($t0) -/* 07BF0C 8007B30C 00000000 */ nop -/* 07BF10 8007B310 14C90011 */ bne $a2, $t1, .L8007B358 -/* 07BF14 8007B314 24420001 */ addiu $v0, $v0, 1 -/* 07BF18 8007B318 00C02025 */ move $a0, $a2 -/* 07BF1C 8007B31C 0C01C450 */ jal func_80071140 -/* 07BF20 8007B320 AFB90018 */ sw $t9, 0x18($sp) -/* 07BF24 8007B324 3C028012 */ lui $v0, %hi(D_80126328) # $v0, 0x8012 -/* 07BF28 8007B328 24426328 */ addiu $v0, %lo(D_80126328) # addiu $v0, $v0, 0x6328 -/* 07BF2C 8007B32C 8FA30018 */ lw $v1, 0x18($sp) -/* 07BF30 8007B330 8C4A0000 */ lw $t2, ($v0) -/* 07BF34 8007B334 2404FFFF */ li $a0, -1 -/* 07BF38 8007B338 01435821 */ addu $t3, $t2, $v1 -/* 07BF3C 8007B33C AD640000 */ sw $a0, ($t3) -/* 07BF40 8007B340 8C4C0000 */ lw $t4, ($v0) -/* 07BF44 8007B344 00000000 */ nop -/* 07BF48 8007B348 01836821 */ addu $t5, $t4, $v1 -/* 07BF4C 8007B34C 10000005 */ b .L8007B364 -/* 07BF50 8007B350 ADA40004 */ sw $a0, 4($t5) -/* 07BF54 8007B354 24420001 */ addiu $v0, $v0, 1 -.L8007B358: -/* 07BF58 8007B358 0044082A */ slt $at, $v0, $a0 -/* 07BF5C 8007B35C 1420FFE9 */ bnez $at, .L8007B304 -/* 07BF60 8007B360 0002C8C0 */ sll $t9, $v0, 3 -.L8007B364: -/* 07BF64 8007B364 8FBF0014 */ lw $ra, 0x14($sp) -/* 07BF68 8007B368 27BD0028 */ addiu $sp, $sp, 0x28 -/* 07BF6C 8007B36C 03E00008 */ jr $ra -/* 07BF70 8007B370 00000000 */ nop - -glabel func_8007B374 -/* 07BF74 8007B374 3C01800E */ lui $at, 0x800e -/* 07BF78 8007B378 03E00008 */ jr $ra -/* 07BF7C 8007B37C AC24E7C0 */ sw $a0, -0x1840($at) - -/* 07BF80 8007B380 04800006 */ bltz $a0, .L8007B39C -/* 07BF84 8007B384 3C0E8012 */ lui $t6, %hi(D_80126330) # $t6, 0x8012 -/* 07BF88 8007B388 8DCE6330 */ lw $t6, %lo(D_80126330)($t6) -/* 07BF8C 8007B38C 3C0F8012 */ lui $t7, 0x8012 -/* 07BF90 8007B390 008E082A */ slt $at, $a0, $t6 -/* 07BF94 8007B394 14200003 */ bnez $at, .L8007B3A4 -/* 07BF98 8007B398 00000000 */ nop -.L8007B39C: -/* 07BF9C 8007B39C 03E00008 */ jr $ra -/* 07BFA0 8007B3A0 00001025 */ move $v0, $zero - -.L8007B3A4: -/* 07BFA4 8007B3A4 8DEF6328 */ lw $t7, 0x6328($t7) -/* 07BFA8 8007B3A8 0004C8C0 */ sll $t9, $a0, 3 -/* 07BFAC 8007B3AC 01F94021 */ addu $t0, $t7, $t9 -/* 07BFB0 8007B3B0 8D030004 */ lw $v1, 4($t0) -/* 07BFB4 8007B3B4 2401FFFF */ li $at, -1 -/* 07BFB8 8007B3B8 14610003 */ bne $v1, $at, .L8007B3C8 -/* 07BFBC 8007B3BC 00601025 */ move $v0, $v1 -/* 07BFC0 8007B3C0 03E00008 */ jr $ra -/* 07BFC4 8007B3C4 00001025 */ move $v0, $zero - -.L8007B3C8: -/* 07BFC8 8007B3C8 03E00008 */ jr $ra -/* 07BFCC 8007B3CC 00000000 */ nop - -glabel func_8007B3D0 -/* 07BFD0 8007B3D0 3C018012 */ lui $at, %hi(D_8012637C) # $at, 0x8012 -/* 07BFD4 8007B3D4 AC20637C */ sw $zero, %lo(D_8012637C)($at) -/* 07BFD8 8007B3D8 3C018012 */ lui $at, %hi(D_80126374) # $at, 0x8012 -/* 07BFDC 8007B3DC AC206374 */ sw $zero, %lo(D_80126374)($at) -/* 07BFE0 8007B3E0 3C018012 */ lui $at, %hi(D_80126380) # $at, 0x8012 -/* 07BFE4 8007B3E4 A4206380 */ sh $zero, %lo(D_80126380)($at) -/* 07BFE8 8007B3E8 3C018012 */ lui $at, %hi(D_80126382) # $at, 0x8012 -/* 07BFEC 8007B3EC 240E0001 */ li $t6, 1 -/* 07BFF0 8007B3F0 A42E6382 */ sh $t6, %lo(D_80126382)($at) -/* 07BFF4 8007B3F4 3C018012 */ lui $at, %hi(D_80126378) # $at, 0x8012 -/* 07BFF8 8007B3F8 AC206378 */ sw $zero, %lo(D_80126378)($at) -/* 07BFFC 8007B3FC 3C018012 */ lui $at, %hi(D_80126384) # $at, 0x8012 -/* 07C000 8007B400 A4206384 */ sh $zero, %lo(D_80126384)($at) -/* 07C004 8007B404 8C830000 */ lw $v1, ($a0) -/* 07C008 8007B408 3C18E700 */ lui $t8, 0xe700 -/* 07C00C 8007B40C 246F0008 */ addiu $t7, $v1, 8 -/* 07C010 8007B410 AC8F0000 */ sw $t7, ($a0) -/* 07C014 8007B414 AC600004 */ sw $zero, 4($v1) -/* 07C018 8007B418 AC780000 */ sw $t8, ($v1) -/* 07C01C 8007B41C 8C830000 */ lw $v1, ($a0) -/* 07C020 8007B420 3C08B700 */ lui $t0, 0xb700 -/* 07C024 8007B424 24790008 */ addiu $t9, $v1, 8 -/* 07C028 8007B428 AC990000 */ sw $t9, ($a0) -/* 07C02C 8007B42C 24090205 */ li $t1, 517 -/* 07C030 8007B430 AC690004 */ sw $t1, 4($v1) -/* 07C034 8007B434 03E00008 */ jr $ra -/* 07C038 8007B438 AC680000 */ sw $t0, ($v1) - -glabel func_8007B43C -/* 07C03C 8007B43C 24020001 */ li $v0, 1 -/* 07C040 8007B440 3C018012 */ lui $at, %hi(D_80126384) # $at, 0x8012 -/* 07C044 8007B444 A4226384 */ sh $v0, %lo(D_80126384)($at) -/* 07C048 8007B448 3C018012 */ lui $at, 0x8012 -/* 07C04C 8007B44C 03E00008 */ jr $ra -/* 07C050 8007B450 A4226382 */ sh $v0, 0x6382($at) - -glabel func_8007B454 -/* 07C054 8007B454 3C018012 */ lui $at, %hi(D_80126384) # $at, 0x8012 -/* 07C058 8007B458 A4206384 */ sh $zero, %lo(D_80126384)($at) -/* 07C05C 8007B45C 3C018012 */ lui $at, 0x8012 -/* 07C060 8007B460 240E0001 */ li $t6, 1 -/* 07C064 8007B464 03E00008 */ jr $ra -/* 07C068 8007B468 A42E6382 */ sh $t6, 0x6382($at) - -glabel func_8007B46C -/* 07C06C 8007B46C 18A00014 */ blez $a1, .L8007B4C0 -/* 07C070 8007B470 00000000 */ nop -/* 07C074 8007B474 94820012 */ lhu $v0, 0x12($a0) -/* 07C078 8007B478 00000000 */ nop -/* 07C07C 8007B47C 00027200 */ sll $t6, $v0, 8 -/* 07C080 8007B480 00AE082A */ slt $at, $a1, $t6 -/* 07C084 8007B484 10200008 */ beqz $at, .L8007B4A8 -/* 07C088 8007B488 00024203 */ sra $t0, $v0, 8 -/* 07C08C 8007B48C 84980016 */ lh $t8, 0x16($a0) -/* 07C090 8007B490 00057C03 */ sra $t7, $a1, 0x10 -/* 07C094 8007B494 01F80019 */ multu $t7, $t8 -/* 07C098 8007B498 0000C812 */ mflo $t9 -/* 07C09C 8007B49C 00991021 */ addu $v0, $a0, $t9 -/* 07C0A0 8007B4A0 03E00008 */ jr $ra -/* 07C0A4 8007B4A4 00000000 */ nop - -.L8007B4A8: -/* 07C0A8 8007B4A8 848A0016 */ lh $t2, 0x16($a0) -/* 07C0AC 8007B4AC 2509FFFF */ addiu $t1, $t0, -1 -/* 07C0B0 8007B4B0 012A0019 */ multu $t1, $t2 -/* 07C0B4 8007B4B4 00005812 */ mflo $t3 -/* 07C0B8 8007B4B8 008B2021 */ addu $a0, $a0, $t3 -/* 07C0BC 8007B4BC 00000000 */ nop -.L8007B4C0: -/* 07C0C0 8007B4C0 03E00008 */ jr $ra -/* 07C0C4 8007B4C4 00801025 */ move $v0, $a0 - -glabel func_8007B4C8 -/* 07C0C8 8007B4C8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 07C0CC 8007B4CC AFBF0014 */ sw $ra, 0x14($sp) -/* 07C0D0 8007B4D0 0C01ED3A */ jal func_8007B4E8 -/* 07C0D4 8007B4D4 00003825 */ move $a3, $zero -/* 07C0D8 8007B4D8 8FBF0014 */ lw $ra, 0x14($sp) -/* 07C0DC 8007B4DC 27BD0018 */ addiu $sp, $sp, 0x18 -/* 07C0E0 8007B4E0 03E00008 */ jr $ra -/* 07C0E4 8007B4E4 00000000 */ nop - -glabel func_8007B4E8 -/* 07C0E8 8007B4E8 3C0B8012 */ lui $t3, %hi(D_80126382) # $t3, 0x8012 -/* 07C0EC 8007B4EC 256B6382 */ addiu $t3, %lo(D_80126382) # addiu $t3, $t3, 0x6382 -/* 07C0F0 8007B4F0 85630000 */ lh $v1, ($t3) -/* 07C0F4 8007B4F4 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 07C0F8 8007B4F8 10A00030 */ beqz $a1, .L8007B5BC -/* 07C0FC 8007B4FC 24080001 */ li $t0, 1 -/* 07C100 8007B500 10E0000D */ beqz $a3, .L8007B538 -/* 07C104 8007B504 3C0C8012 */ lui $t4, %hi(D_8012637C) # $t4, 0x8012 -/* 07C108 8007B508 94AE0012 */ lhu $t6, 0x12($a1) -/* 07C10C 8007B50C 00000000 */ nop -/* 07C110 8007B510 000E7A00 */ sll $t7, $t6, 8 -/* 07C114 8007B514 00EF082A */ slt $at, $a3, $t7 -/* 07C118 8007B518 10200007 */ beqz $at, .L8007B538 -/* 07C11C 8007B51C 00000000 */ nop -/* 07C120 8007B520 84B90016 */ lh $t9, 0x16($a1) -/* 07C124 8007B524 0007C403 */ sra $t8, $a3, 0x10 -/* 07C128 8007B528 03190019 */ multu $t8, $t9 -/* 07C12C 8007B52C 00007012 */ mflo $t6 -/* 07C130 8007B530 00AE2821 */ addu $a1, $a1, $t6 -/* 07C134 8007B534 00000000 */ nop -.L8007B538: -/* 07C138 8007B538 258C637C */ addiu $t4, %lo(D_8012637C) # addiu $t4, $t4, 0x637c -/* 07C13C 8007B53C 84AF0006 */ lh $t7, 6($a1) -/* 07C140 8007B540 8D980000 */ lw $t8, ($t4) -/* 07C144 8007B544 00CF3025 */ or $a2, $a2, $t7 -/* 07C148 8007B548 10B80013 */ beq $a1, $t8, .L8007B598 -/* 07C14C 8007B54C 00000000 */ nop -/* 07C150 8007B550 8C820000 */ lw $v0, ($a0) -/* 07C154 8007B554 3C010700 */ lui $at, 0x700 -/* 07C158 8007B558 24590008 */ addiu $t9, $v0, 8 -/* 07C15C 8007B55C AC990000 */ sw $t9, ($a0) -/* 07C160 8007B560 84AA000A */ lh $t2, 0xa($a1) -/* 07C164 8007B564 3C098000 */ lui $t1, 0x8000 -/* 07C168 8007B568 314E00FF */ andi $t6, $t2, 0xff -/* 07C16C 8007B56C 000E7C00 */ sll $t7, $t6, 0x10 -/* 07C170 8007B570 000AC8C0 */ sll $t9, $t2, 3 -/* 07C174 8007B574 332EFFFF */ andi $t6, $t9, 0xffff -/* 07C178 8007B578 01E1C025 */ or $t8, $t7, $at -/* 07C17C 8007B57C 030E7825 */ or $t7, $t8, $t6 -/* 07C180 8007B580 AC4F0000 */ sw $t7, ($v0) -/* 07C184 8007B584 8CB9000C */ lw $t9, 0xc($a1) -/* 07C188 8007B588 00004025 */ move $t0, $zero -/* 07C18C 8007B58C 0329C021 */ addu $t8, $t9, $t1 -/* 07C190 8007B590 AC580004 */ sw $t8, 4($v0) -/* 07C194 8007B594 AD850000 */ sw $a1, ($t4) -.L8007B598: -/* 07C198 8007B598 3C0A8012 */ lui $t2, %hi(D_80126380) # $t2, 0x8012 -/* 07C19C 8007B59C 254A6380 */ addiu $t2, %lo(D_80126380) # addiu $t2, $t2, 0x6380 -/* 07C1A0 8007B5A0 854E0000 */ lh $t6, ($t2) -/* 07C1A4 8007B5A4 240F0001 */ li $t7, 1 -/* 07C1A8 8007B5A8 15C0000C */ bnez $t6, .L8007B5DC -/* 07C1AC 8007B5AC 00000000 */ nop -/* 07C1B0 8007B5B0 24030001 */ li $v1, 1 -/* 07C1B4 8007B5B4 10000009 */ b .L8007B5DC -/* 07C1B8 8007B5B8 A54F0000 */ sh $t7, ($t2) -.L8007B5BC: -/* 07C1BC 8007B5BC 3C0A8012 */ lui $t2, %hi(D_80126380) # $t2, 0x8012 -/* 07C1C0 8007B5C0 254A6380 */ addiu $t2, %lo(D_80126380) # addiu $t2, $t2, 0x6380 -/* 07C1C4 8007B5C4 85590000 */ lh $t9, ($t2) -/* 07C1C8 8007B5C8 00000000 */ nop -/* 07C1CC 8007B5CC 13200003 */ beqz $t9, .L8007B5DC -/* 07C1D0 8007B5D0 00000000 */ nop -/* 07C1D4 8007B5D4 24030001 */ li $v1, 1 -/* 07C1D8 8007B5D8 A5400000 */ sh $zero, ($t2) -.L8007B5DC: -/* 07C1DC 8007B5DC 3C0C8012 */ lui $t4, %hi(D_80126384) # $t4, 0x8012 -/* 07C1E0 8007B5E0 258C6384 */ addiu $t4, %lo(D_80126384) # addiu $t4, $t4, 0x6384 -/* 07C1E4 8007B5E4 85980000 */ lh $t8, ($t4) -/* 07C1E8 8007B5E8 3C098000 */ lui $t1, 0x8000 -/* 07C1EC 8007B5EC 13000004 */ beqz $t8, .L8007B600 -/* 07C1F0 8007B5F0 3C198012 */ lui $t9, %hi(D_80126378) # $t9, 0x8012 -/* 07C1F4 8007B5F4 30CE0827 */ andi $t6, $a2, 0x827 -/* 07C1F8 8007B5F8 10000005 */ b .L8007B610 -/* 07C1FC 8007B5FC 01C03025 */ move $a2, $t6 -.L8007B600: -/* 07C200 8007B600 3C010800 */ lui $at, (0x0800093F >> 16) # lui $at, 0x800 -/* 07C204 8007B604 3421093F */ ori $at, (0x0800093F & 0xFFFF) # ori $at, $at, 0x93f -/* 07C208 8007B608 00C17824 */ and $t7, $a2, $at -/* 07C20C 8007B60C 01E03025 */ move $a2, $t7 -.L8007B610: -/* 07C210 8007B610 8F396378 */ lw $t9, %lo(D_80126378)($t9) -/* 07C214 8007B614 3C050800 */ lui $a1, 0x800 -/* 07C218 8007B618 0320C027 */ not $t8, $t9 -/* 07C21C 8007B61C 00D83024 */ and $a2, $a2, $t8 -/* 07C220 8007B620 00067100 */ sll $t6, $a2, 4 -/* 07C224 8007B624 05C10005 */ bgez $t6, .L8007B63C -/* 07C228 8007B628 3C078012 */ lui $a3, %hi(D_80126374) # $a3, 0x8012 -/* 07C22C 8007B62C 2401FFF7 */ li $at, -9 -/* 07C230 8007B630 00C17824 */ and $t7, $a2, $at -/* 07C234 8007B634 10000004 */ b .L8007B648 -/* 07C238 8007B638 01E03025 */ move $a2, $t7 -.L8007B63C: -/* 07C23C 8007B63C 2401FEFF */ li $at, -257 -/* 07C240 8007B640 00C1C824 */ and $t9, $a2, $at -/* 07C244 8007B644 03203025 */ move $a2, $t9 -.L8007B648: -/* 07C248 8007B648 24E76374 */ addiu $a3, %lo(D_80126374) # addiu $a3, $a3, 0x6374 -/* 07C24C 8007B64C 8CED0000 */ lw $t5, ($a3) -/* 07C250 8007B650 00000000 */ nop -/* 07C254 8007B654 14CD0003 */ bne $a2, $t5, .L8007B664 -/* 07C258 8007B658 00000000 */ nop -/* 07C25C 8007B65C 106000FD */ beqz $v1, .L8007BA54 -/* 07C260 8007B660 00000000 */ nop -.L8007B664: -/* 07C264 8007B664 1100000A */ beqz $t0, .L8007B690 -/* 07C268 8007B668 00C54024 */ and $t0, $a2, $a1 -/* 07C26C 8007B66C 8C820000 */ lw $v0, ($a0) -/* 07C270 8007B670 3C0EE700 */ lui $t6, 0xe700 -/* 07C274 8007B674 24580008 */ addiu $t8, $v0, 8 -/* 07C278 8007B678 AC980000 */ sw $t8, ($a0) -/* 07C27C 8007B67C AC400004 */ sw $zero, 4($v0) -/* 07C280 8007B680 AC4E0000 */ sw $t6, ($v0) -/* 07C284 8007B684 8CED0000 */ lw $t5, ($a3) -/* 07C288 8007B688 00000000 */ nop -/* 07C28C 8007B68C 00C54024 */ and $t0, $a2, $a1 -.L8007B690: -/* 07C290 8007B690 01A57824 */ and $t7, $t5, $a1 -/* 07C294 8007B694 15E80005 */ bne $t7, $t0, .L8007B6AC -/* 07C298 8007B698 00000000 */ nop -/* 07C29C 8007B69C 85790000 */ lh $t9, ($t3) -/* 07C2A0 8007B6A0 00000000 */ nop -/* 07C2A4 8007B6A4 1320001C */ beqz $t9, .L8007B718 -/* 07C2A8 8007B6A8 30D90002 */ andi $t9, $a2, 2 -.L8007B6AC: -/* 07C2AC 8007B6AC 15000005 */ bnez $t0, .L8007B6C4 -/* 07C2B0 8007B6B0 3C0FB600 */ lui $t7, 0xb600 -/* 07C2B4 8007B6B4 85980000 */ lh $t8, ($t4) -/* 07C2B8 8007B6B8 00000000 */ nop -/* 07C2BC 8007B6BC 1300000A */ beqz $t8, .L8007B6E8 -/* 07C2C0 8007B6C0 00000000 */ nop -.L8007B6C4: -/* 07C2C4 8007B6C4 8C820000 */ lw $v0, ($a0) -/* 07C2C8 8007B6C8 3C190001 */ lui $t9, 1 -/* 07C2CC 8007B6CC 244E0008 */ addiu $t6, $v0, 8 -/* 07C2D0 8007B6D0 AC8E0000 */ sw $t6, ($a0) -/* 07C2D4 8007B6D4 AC590004 */ sw $t9, 4($v0) -/* 07C2D8 8007B6D8 AC4F0000 */ sw $t7, ($v0) -/* 07C2DC 8007B6DC 8CED0000 */ lw $t5, ($a3) -/* 07C2E0 8007B6E0 1000000D */ b .L8007B718 -/* 07C2E4 8007B6E4 30D90002 */ andi $t9, $a2, 2 -.L8007B6E8: -/* 07C2E8 8007B6E8 8C820000 */ lw $v0, ($a0) -/* 07C2EC 8007B6EC 3C03B700 */ lui $v1, 0xb700 -/* 07C2F0 8007B6F0 AFA2003C */ sw $v0, 0x3c($sp) -/* 07C2F4 8007B6F4 24580008 */ addiu $t8, $v0, 8 -/* 07C2F8 8007B6F8 AC980000 */ sw $t8, ($a0) -/* 07C2FC 8007B6FC 8FAE003C */ lw $t6, 0x3c($sp) -/* 07C300 8007B700 3C0F0001 */ lui $t7, 1 -/* 07C304 8007B704 ADCF0004 */ sw $t7, 4($t6) -/* 07C308 8007B708 ADC30000 */ sw $v1, ($t6) -/* 07C30C 8007B70C 8CED0000 */ lw $t5, ($a3) -/* 07C310 8007B710 00000000 */ nop -/* 07C314 8007B714 30D90002 */ andi $t9, $a2, 2 -.L8007B718: -/* 07C318 8007B718 31B80002 */ andi $t8, $t5, 2 -/* 07C31C 8007B71C 3C03B700 */ lui $v1, 0xb700 -/* 07C320 8007B720 17190005 */ bne $t8, $t9, .L8007B738 -/* 07C324 8007B724 AFB90004 */ sw $t9, 4($sp) -/* 07C328 8007B728 856E0000 */ lh $t6, ($t3) -/* 07C32C 8007B72C 00000000 */ nop -/* 07C330 8007B730 11C00012 */ beqz $t6, .L8007B77C -/* 07C334 8007B734 00000000 */ nop -.L8007B738: -/* 07C338 8007B738 8FB90004 */ lw $t9, 4($sp) -/* 07C33C 8007B73C 24180001 */ li $t8, 1 -/* 07C340 8007B740 13200008 */ beqz $t9, .L8007B764 -/* 07C344 8007B744 00000000 */ nop -/* 07C348 8007B748 8C820000 */ lw $v0, ($a0) -/* 07C34C 8007B74C 240F0001 */ li $t7, 1 -/* 07C350 8007B750 24580008 */ addiu $t8, $v0, 8 -/* 07C354 8007B754 AC980000 */ sw $t8, ($a0) -/* 07C358 8007B758 AC4F0004 */ sw $t7, 4($v0) -/* 07C35C 8007B75C 10000007 */ b .L8007B77C -/* 07C360 8007B760 AC430000 */ sw $v1, ($v0) -.L8007B764: -/* 07C364 8007B764 8C820000 */ lw $v0, ($a0) -/* 07C368 8007B768 3C19B600 */ lui $t9, 0xb600 -/* 07C36C 8007B76C 244E0008 */ addiu $t6, $v0, 8 -/* 07C370 8007B770 AC8E0000 */ sw $t6, ($a0) -/* 07C374 8007B774 AC580004 */ sw $t8, 4($v0) -/* 07C378 8007B778 AC590000 */ sw $t9, ($v0) -.L8007B77C: -/* 07C37C 8007B77C 854F0000 */ lh $t7, ($t2) -/* 07C380 8007B780 A5600000 */ sh $zero, ($t3) -/* 07C384 8007B784 15E0001E */ bnez $t7, .L8007B800 -/* 07C388 8007B788 ACE60000 */ sw $a2, ($a3) -/* 07C38C 8007B78C 1100000F */ beqz $t0, .L8007B7CC -/* 07C390 8007B790 3C0E0702 */ lui $t6, 0x702 -/* 07C394 8007B794 8C820000 */ lw $v0, ($a0) -/* 07C398 8007B798 3C190702 */ lui $t9, (0x07020010 >> 16) # lui $t9, 0x702 -/* 07C39C 8007B79C 244E0008 */ addiu $t6, $v0, 8 -/* 07C3A0 8007B7A0 AC8E0000 */ sw $t6, ($a0) -/* 07C3A4 8007B7A4 37390010 */ ori $t9, (0x07020010 & 0xFFFF) # ori $t9, $t9, 0x10 -/* 07C3A8 8007B7A8 30D80003 */ andi $t8, $a2, 3 -/* 07C3AC 8007B7AC AC590000 */ sw $t9, ($v0) -/* 07C3B0 8007B7B0 3C19800E */ lui $t9, %hi(D_800DEEE8) # $t9, 0x800e -/* 07C3B4 8007B7B4 00187900 */ sll $t7, $t8, 4 -/* 07C3B8 8007B7B8 01E97021 */ addu $t6, $t7, $t1 -/* 07C3BC 8007B7BC 2739EEE8 */ addiu $t9, %lo(D_800DEEE8) # addiu $t9, $t9, -0x1118 -/* 07C3C0 8007B7C0 01D9C021 */ addu $t8, $t6, $t9 -/* 07C3C4 8007B7C4 100000A3 */ b .L8007BA54 -/* 07C3C8 8007B7C8 AC580004 */ sw $t8, 4($v0) -.L8007B7CC: -/* 07C3CC 8007B7CC 8C820000 */ lw $v0, ($a0) -/* 07C3D0 8007B7D0 35CE0010 */ ori $t6, $t6, 0x10 -/* 07C3D4 8007B7D4 244F0008 */ addiu $t7, $v0, 8 -/* 07C3D8 8007B7D8 AC8F0000 */ sw $t7, ($a0) -/* 07C3DC 8007B7DC 30D9000F */ andi $t9, $a2, 0xf -/* 07C3E0 8007B7E0 AC4E0000 */ sw $t6, ($v0) -/* 07C3E4 8007B7E4 3C0E800E */ lui $t6, %hi(D_800DEF28) # $t6, 0x800e -/* 07C3E8 8007B7E8 0019C100 */ sll $t8, $t9, 4 -/* 07C3EC 8007B7EC 03097821 */ addu $t7, $t8, $t1 -/* 07C3F0 8007B7F0 25CEEF28 */ addiu $t6, %lo(D_800DEF28) # addiu $t6, $t6, -0x10d8 -/* 07C3F4 8007B7F4 01EEC821 */ addu $t9, $t7, $t6 -/* 07C3F8 8007B7F8 10000096 */ b .L8007BA54 -/* 07C3FC 8007B7FC AC590004 */ sw $t9, 4($v0) -.L8007B800: -/* 07C400 8007B800 85980000 */ lh $t8, ($t4) -/* 07C404 8007B804 30CF0800 */ andi $t7, $a2, 0x800 -/* 07C408 8007B808 1300002F */ beqz $t8, .L8007B8C8 -/* 07C40C 8007B80C 30D90800 */ andi $t9, $a2, 0x800 -/* 07C410 8007B810 11E0001D */ beqz $t7, .L8007B888 -/* 07C414 8007B814 30CE0020 */ andi $t6, $a2, 0x20 -/* 07C418 8007B818 8FAE0004 */ lw $t6, 4($sp) -/* 07C41C 8007B81C 30D90001 */ andi $t9, $a2, 1 -/* 07C420 8007B820 11C00018 */ beqz $t6, .L8007B884 -/* 07C424 8007B824 30D80004 */ andi $t8, $a2, 4 -/* 07C428 8007B828 13200002 */ beqz $t9, .L8007B834 -/* 07C42C 8007B82C 00002825 */ move $a1, $zero -/* 07C430 8007B830 24050001 */ li $a1, 1 -.L8007B834: -/* 07C434 8007B834 13000003 */ beqz $t8, .L8007B844 -/* 07C438 8007B838 30CE0020 */ andi $t6, $a2, 0x20 -/* 07C43C 8007B83C 34AF0002 */ ori $t7, $a1, 2 -/* 07C440 8007B840 01E02825 */ move $a1, $t7 -.L8007B844: -/* 07C444 8007B844 11C00003 */ beqz $t6, .L8007B854 -/* 07C448 8007B848 3C0F0702 */ lui $t7, (0x07020010 >> 16) # lui $t7, 0x702 -/* 07C44C 8007B84C 34B90004 */ ori $t9, $a1, 4 -/* 07C450 8007B850 03202825 */ move $a1, $t9 -.L8007B854: -/* 07C454 8007B854 8C820000 */ lw $v0, ($a0) -/* 07C458 8007B858 35EF0010 */ ori $t7, (0x07020010 & 0xFFFF) # ori $t7, $t7, 0x10 -/* 07C45C 8007B85C 24580008 */ addiu $t8, $v0, 8 -/* 07C460 8007B860 AC980000 */ sw $t8, ($a0) -/* 07C464 8007B864 3C18800E */ lui $t8, %hi(D_800DF028) # $t8, 0x800e -/* 07C468 8007B868 00057100 */ sll $t6, $a1, 4 -/* 07C46C 8007B86C 01C9C821 */ addu $t9, $t6, $t1 -/* 07C470 8007B870 2718F028 */ addiu $t8, %lo(D_800DF028) # addiu $t8, $t8, -0xfd8 -/* 07C474 8007B874 AC4F0000 */ sw $t7, ($v0) -/* 07C478 8007B878 03387821 */ addu $t7, $t9, $t8 -/* 07C47C 8007B87C 10000075 */ b .L8007BA54 -/* 07C480 8007B880 AC4F0004 */ sw $t7, 4($v0) -.L8007B884: -/* 07C484 8007B884 30CE0020 */ andi $t6, $a2, 0x20 -.L8007B888: -/* 07C488 8007B888 11C00002 */ beqz $t6, .L8007B894 -/* 07C48C 8007B88C 38D90020 */ xori $t9, $a2, 0x20 -/* 07C490 8007B890 37260008 */ ori $a2, $t9, 8 -.L8007B894: -/* 07C494 8007B894 8C820000 */ lw $v0, ($a0) -/* 07C498 8007B898 3C0E0702 */ lui $t6, (0x07020010 >> 16) # lui $t6, 0x702 -/* 07C49C 8007B89C 244F0008 */ addiu $t7, $v0, 8 -/* 07C4A0 8007B8A0 AC8F0000 */ sw $t7, ($a0) -/* 07C4A4 8007B8A4 3C0F800E */ lui $t7, %hi(D_800DF0A8) # $t7, 0x800e -/* 07C4A8 8007B8A8 35CE0010 */ ori $t6, (0x07020010 & 0xFFFF) # ori $t6, $t6, 0x10 -/* 07C4AC 8007B8AC 0006C900 */ sll $t9, $a2, 4 -/* 07C4B0 8007B8B0 0329C021 */ addu $t8, $t9, $t1 -/* 07C4B4 8007B8B4 25EFF0A8 */ addiu $t7, %lo(D_800DF0A8) # addiu $t7, $t7, -0xf58 -/* 07C4B8 8007B8B8 AC4E0000 */ sw $t6, ($v0) -/* 07C4BC 8007B8BC 030F7021 */ addu $t6, $t8, $t7 -/* 07C4C0 8007B8C0 10000064 */ b .L8007BA54 -/* 07C4C4 8007B8C4 AC4E0004 */ sw $t6, 4($v0) -.L8007B8C8: -/* 07C4C8 8007B8C8 13200021 */ beqz $t9, .L8007B950 -/* 07C4CC 8007B8CC 30CE0010 */ andi $t6, $a2, 0x10 -/* 07C4D0 8007B8D0 8FB80004 */ lw $t8, 4($sp) -/* 07C4D4 8007B8D4 30CF0001 */ andi $t7, $a2, 1 -/* 07C4D8 8007B8D8 1300001D */ beqz $t8, .L8007B950 -/* 07C4DC 8007B8DC 00000000 */ nop -/* 07C4E0 8007B8E0 11E00002 */ beqz $t7, .L8007B8EC -/* 07C4E4 8007B8E4 00002825 */ move $a1, $zero -/* 07C4E8 8007B8E8 24050001 */ li $a1, 1 -.L8007B8EC: -/* 07C4EC 8007B8EC 30CE0004 */ andi $t6, $a2, 4 -/* 07C4F0 8007B8F0 11C00003 */ beqz $t6, .L8007B900 -/* 07C4F4 8007B8F4 30D80008 */ andi $t8, $a2, 8 -/* 07C4F8 8007B8F8 34B90002 */ ori $t9, $a1, 2 -/* 07C4FC 8007B8FC 03202825 */ move $a1, $t9 -.L8007B900: -/* 07C500 8007B900 13000003 */ beqz $t8, .L8007B910 -/* 07C504 8007B904 30CE0020 */ andi $t6, $a2, 0x20 -/* 07C508 8007B908 34AF0004 */ ori $t7, $a1, 4 -/* 07C50C 8007B90C 01E02825 */ move $a1, $t7 -.L8007B910: -/* 07C510 8007B910 11C00003 */ beqz $t6, .L8007B920 -/* 07C514 8007B914 3C0F0702 */ lui $t7, (0x07020010 >> 16) # lui $t7, 0x702 -/* 07C518 8007B918 34B90008 */ ori $t9, $a1, 8 -/* 07C51C 8007B91C 03202825 */ move $a1, $t9 -.L8007B920: -/* 07C520 8007B920 8C820000 */ lw $v0, ($a0) -/* 07C524 8007B924 35EF0010 */ ori $t7, (0x07020010 & 0xFFFF) # ori $t7, $t7, 0x10 -/* 07C528 8007B928 24580008 */ addiu $t8, $v0, 8 -/* 07C52C 8007B92C AC980000 */ sw $t8, ($a0) -/* 07C530 8007B930 3C18800E */ lui $t8, %hi(D_800DEDE8) # $t8, 0x800e -/* 07C534 8007B934 00057100 */ sll $t6, $a1, 4 -/* 07C538 8007B938 01C9C821 */ addu $t9, $t6, $t1 -/* 07C53C 8007B93C 2718EDE8 */ addiu $t8, %lo(D_800DEDE8) # addiu $t8, $t8, -0x1218 -/* 07C540 8007B940 AC4F0000 */ sw $t7, ($v0) -/* 07C544 8007B944 03387821 */ addu $t7, $t9, $t8 -/* 07C548 8007B948 10000042 */ b .L8007BA54 -/* 07C54C 8007B94C AC4F0004 */ sw $t7, 4($v0) -.L8007B950: -/* 07C550 8007B950 11C00013 */ beqz $t6, .L8007B9A0 -/* 07C554 8007B954 2401F7FF */ li $at, -2049 -/* 07C558 8007B958 30C20007 */ andi $v0, $a2, 7 -/* 07C55C 8007B95C 30D90008 */ andi $t9, $a2, 8 -/* 07C560 8007B960 13200002 */ beqz $t9, .L8007B96C -/* 07C564 8007B964 00402825 */ move $a1, $v0 -/* 07C568 8007B968 34450008 */ ori $a1, $v0, 8 -.L8007B96C: -/* 07C56C 8007B96C 8C820000 */ lw $v0, ($a0) -/* 07C570 8007B970 3C0F0702 */ lui $t7, (0x07020010 >> 16) # lui $t7, 0x702 -/* 07C574 8007B974 24580008 */ addiu $t8, $v0, 8 -/* 07C578 8007B978 AC980000 */ sw $t8, ($a0) -/* 07C57C 8007B97C 3C18800E */ lui $t8, %hi(D_800DECE8) # $t8, 0x800e -/* 07C580 8007B980 35EF0010 */ ori $t7, (0x07020010 & 0xFFFF) # ori $t7, $t7, 0x10 -/* 07C584 8007B984 00057100 */ sll $t6, $a1, 4 -/* 07C588 8007B988 01C9C821 */ addu $t9, $t6, $t1 -/* 07C58C 8007B98C 2718ECE8 */ addiu $t8, %lo(D_800DECE8) # addiu $t8, $t8, -0x1318 -/* 07C590 8007B990 AC4F0000 */ sw $t7, ($v0) -/* 07C594 8007B994 03387821 */ addu $t7, $t9, $t8 -/* 07C598 8007B998 1000002E */ b .L8007BA54 -/* 07C59C 8007B99C AC4F0004 */ sw $t7, 4($v0) -.L8007B9A0: -/* 07C5A0 8007B9A0 00C17024 */ and $t6, $a2, $at -/* 07C5A4 8007B9A4 01C5C824 */ and $t9, $t6, $a1 -/* 07C5A8 8007B9A8 1320001E */ beqz $t9, .L8007BA24 -/* 07C5AC 8007B9AC 01C03025 */ move $a2, $t6 -/* 07C5B0 8007B9B0 31C20003 */ andi $v0, $t6, 3 -/* 07C5B4 8007B9B4 31D80100 */ andi $t8, $t6, 0x100 -/* 07C5B8 8007B9B8 13000003 */ beqz $t8, .L8007B9C8 -/* 07C5BC 8007B9BC 00402825 */ move $a1, $v0 -/* 07C5C0 8007B9C0 1000000B */ b .L8007B9F0 -/* 07C5C4 8007B9C4 34450004 */ ori $a1, $v0, 4 -.L8007B9C8: -/* 07C5C8 8007B9C8 8C820000 */ lw $v0, ($a0) -/* 07C5CC 8007B9CC 240E0001 */ li $t6, 1 -/* 07C5D0 8007B9D0 244F0008 */ addiu $t7, $v0, 8 -/* 07C5D4 8007B9D4 AC8F0000 */ sw $t7, ($a0) -/* 07C5D8 8007B9D8 AC4E0004 */ sw $t6, 4($v0) -/* 07C5DC 8007B9DC AC430000 */ sw $v1, ($v0) -/* 07C5E0 8007B9E0 8CF90000 */ lw $t9, ($a3) -/* 07C5E4 8007B9E4 00000000 */ nop -/* 07C5E8 8007B9E8 37380002 */ ori $t8, $t9, 2 -/* 07C5EC 8007B9EC ACF80000 */ sw $t8, ($a3) -.L8007B9F0: -/* 07C5F0 8007B9F0 8C820000 */ lw $v0, ($a0) -/* 07C5F4 8007B9F4 3C0E0702 */ lui $t6, (0x07020010 >> 16) # lui $t6, 0x702 -/* 07C5F8 8007B9F8 244F0008 */ addiu $t7, $v0, 8 -/* 07C5FC 8007B9FC AC8F0000 */ sw $t7, ($a0) -/* 07C600 8007BA00 3C0F800E */ lui $t7, %hi(D_800DE7C8) # $t7, 0x800e -/* 07C604 8007BA04 35CE0010 */ ori $t6, (0x07020010 & 0xFFFF) # ori $t6, $t6, 0x10 -/* 07C608 8007BA08 0005C900 */ sll $t9, $a1, 4 -/* 07C60C 8007BA0C 0329C021 */ addu $t8, $t9, $t1 -/* 07C610 8007BA10 25EFE7C8 */ addiu $t7, %lo(D_800DE7C8) # addiu $t7, $t7, -0x1838 -/* 07C614 8007BA14 AC4E0000 */ sw $t6, ($v0) -/* 07C618 8007BA18 030F7021 */ addu $t6, $t8, $t7 -/* 07C61C 8007BA1C 1000000D */ b .L8007BA54 -/* 07C620 8007BA20 AC4E0004 */ sw $t6, 4($v0) -.L8007BA24: -/* 07C624 8007BA24 8C820000 */ lw $v0, ($a0) -/* 07C628 8007BA28 3C180702 */ lui $t8, (0x07020010 >> 16) # lui $t8, 0x702 -/* 07C62C 8007BA2C 24590008 */ addiu $t9, $v0, 8 -/* 07C630 8007BA30 AC990000 */ sw $t9, ($a0) -/* 07C634 8007BA34 3C19800E */ lui $t9, %hi(D_800DE8E8) # $t9, 0x800e -/* 07C638 8007BA38 37180010 */ ori $t8, (0x07020010 & 0xFFFF) # ori $t8, $t8, 0x10 -/* 07C63C 8007BA3C 00067900 */ sll $t7, $a2, 4 -/* 07C640 8007BA40 01E97021 */ addu $t6, $t7, $t1 -/* 07C644 8007BA44 2739E8E8 */ addiu $t9, %lo(D_800DE8E8) # addiu $t9, $t9, -0x1718 -/* 07C648 8007BA48 AC580000 */ sw $t8, ($v0) -/* 07C64C 8007BA4C 01D9C021 */ addu $t8, $t6, $t9 -/* 07C650 8007BA50 AC580004 */ sw $t8, 4($v0) -.L8007BA54: -/* 07C654 8007BA54 03E00008 */ jr $ra -/* 07C658 8007BA58 27BD0058 */ addiu $sp, $sp, 0x58 - -glabel func_8007BA5C -/* 07C65C 8007BA5C 27BDFF90 */ addiu $sp, $sp, -0x70 -/* 07C660 8007BA60 10E0000D */ beqz $a3, .L8007BA98 -/* 07C664 8007BA64 AFA60078 */ sw $a2, 0x78($sp) -/* 07C668 8007BA68 94AE0012 */ lhu $t6, 0x12($a1) -/* 07C66C 8007BA6C 00000000 */ nop -/* 07C670 8007BA70 000E7A00 */ sll $t7, $t6, 8 -/* 07C674 8007BA74 00EF082A */ slt $at, $a3, $t7 -/* 07C678 8007BA78 10200007 */ beqz $at, .L8007BA98 -/* 07C67C 8007BA7C 00000000 */ nop -/* 07C680 8007BA80 84B90016 */ lh $t9, 0x16($a1) -/* 07C684 8007BA84 0007C403 */ sra $t8, $a3, 0x10 -/* 07C688 8007BA88 03190019 */ multu $t8, $t9 -/* 07C68C 8007BA8C 00007012 */ mflo $t6 -/* 07C690 8007BA90 00AE2821 */ addu $a1, $a1, $t6 -/* 07C694 8007BA94 00000000 */ nop -.L8007BA98: -/* 07C698 8007BA98 90AF0000 */ lbu $t7, ($a1) -/* 07C69C 8007BA9C 24010040 */ li $at, 64 -/* 07C6A0 8007BAA0 15E10073 */ bne $t7, $at, .L8007BC70 -/* 07C6A4 8007BAA4 3C06B700 */ lui $a2, 0xb700 -/* 07C6A8 8007BAA8 8C820000 */ lw $v0, ($a0) -/* 07C6AC 8007BAAC 3C098000 */ lui $t1, 0x8000 -/* 07C6B0 8007BAB0 24580008 */ addiu $t8, $v0, 8 -/* 07C6B4 8007BAB4 AC980000 */ sw $t8, ($a0) -/* 07C6B8 8007BAB8 00A9C821 */ addu $t9, $a1, $t1 -/* 07C6BC 8007BABC 3C07FD10 */ lui $a3, 0xfd10 -/* 07C6C0 8007BAC0 272E0020 */ addiu $t6, $t9, 0x20 -/* 07C6C4 8007BAC4 AC4E0004 */ sw $t6, 4($v0) -/* 07C6C8 8007BAC8 AC470000 */ sw $a3, ($v0) -/* 07C6CC 8007BACC 8C820000 */ lw $v0, ($a0) -/* 07C6D0 8007BAD0 3C190701 */ lui $t9, (0x07010060 >> 16) # lui $t9, 0x701 -/* 07C6D4 8007BAD4 244F0008 */ addiu $t7, $v0, 8 -/* 07C6D8 8007BAD8 AC8F0000 */ sw $t7, ($a0) -/* 07C6DC 8007BADC 3C18F510 */ lui $t8, (0xF5100100 >> 16) # lui $t8, 0xf510 -/* 07C6E0 8007BAE0 37180100 */ ori $t8, (0xF5100100 & 0xFFFF) # ori $t8, $t8, 0x100 -/* 07C6E4 8007BAE4 37390060 */ ori $t9, (0x07010060 & 0xFFFF) # ori $t9, $t9, 0x60 -/* 07C6E8 8007BAE8 AC590004 */ sw $t9, 4($v0) -/* 07C6EC 8007BAEC AC580000 */ sw $t8, ($v0) -/* 07C6F0 8007BAF0 8C820000 */ lw $v0, ($a0) -/* 07C6F4 8007BAF4 3C0AE600 */ lui $t2, 0xe600 -/* 07C6F8 8007BAF8 244E0008 */ addiu $t6, $v0, 8 -/* 07C6FC 8007BAFC AC8E0000 */ sw $t6, ($a0) -/* 07C700 8007BB00 AC400004 */ sw $zero, 4($v0) -/* 07C704 8007BB04 AC4A0000 */ sw $t2, ($v0) -/* 07C708 8007BB08 8C820000 */ lw $v0, ($a0) -/* 07C70C 8007BB0C 3C18073F */ lui $t8, (0x073FF080 >> 16) # lui $t8, 0x73f -/* 07C710 8007BB10 244F0008 */ addiu $t7, $v0, 8 -/* 07C714 8007BB14 AC8F0000 */ sw $t7, ($a0) -/* 07C718 8007BB18 3C0BF300 */ lui $t3, 0xf300 -/* 07C71C 8007BB1C 3718F080 */ ori $t8, (0x073FF080 & 0xFFFF) # ori $t8, $t8, 0xf080 -/* 07C720 8007BB20 AC580004 */ sw $t8, 4($v0) -/* 07C724 8007BB24 AC4B0000 */ sw $t3, ($v0) -/* 07C728 8007BB28 8C820000 */ lw $v0, ($a0) -/* 07C72C 8007BB2C 3C08E700 */ lui $t0, 0xe700 -/* 07C730 8007BB30 24590008 */ addiu $t9, $v0, 8 -/* 07C734 8007BB34 AC990000 */ sw $t9, ($a0) -/* 07C738 8007BB38 AC400004 */ sw $zero, 4($v0) -/* 07C73C 8007BB3C AC480000 */ sw $t0, ($v0) -/* 07C740 8007BB40 8C820000 */ lw $v0, ($a0) -/* 07C744 8007BB44 3C190101 */ lui $t9, (0x01010060 >> 16) # lui $t9, 0x101 -/* 07C748 8007BB48 AFA20050 */ sw $v0, 0x50($sp) -/* 07C74C 8007BB4C 244E0008 */ addiu $t6, $v0, 8 -/* 07C750 8007BB50 AC8E0000 */ sw $t6, ($a0) -/* 07C754 8007BB54 8FB80050 */ lw $t8, 0x50($sp) -/* 07C758 8007BB58 3C0FF510 */ lui $t7, (0xF5102100 >> 16) # lui $t7, 0xf510 -/* 07C75C 8007BB5C 35EF2100 */ ori $t7, (0xF5102100 & 0xFFFF) # ori $t7, $t7, 0x2100 -/* 07C760 8007BB60 37390060 */ ori $t9, (0x01010060 & 0xFFFF) # ori $t9, $t9, 0x60 -/* 07C764 8007BB64 AF190004 */ sw $t9, 4($t8) -/* 07C768 8007BB68 AF0F0000 */ sw $t7, ($t8) -/* 07C76C 8007BB6C 8C820000 */ lw $v0, ($a0) -/* 07C770 8007BB70 3C19010F */ lui $t9, (0x010FC03C >> 16) # lui $t9, 0x10f -/* 07C774 8007BB74 AFA2004C */ sw $v0, 0x4c($sp) -/* 07C778 8007BB78 244E0008 */ addiu $t6, $v0, 8 -/* 07C77C 8007BB7C AC8E0000 */ sw $t6, ($a0) -/* 07C780 8007BB80 8FAF004C */ lw $t7, 0x4c($sp) -/* 07C784 8007BB84 3739C03C */ ori $t9, (0x010FC03C & 0xFFFF) # ori $t9, $t9, 0xc03c -/* 07C788 8007BB88 3C0CF200 */ lui $t4, 0xf200 -/* 07C78C 8007BB8C ADEC0000 */ sw $t4, ($t7) -/* 07C790 8007BB90 ADF90004 */ sw $t9, 4($t7) -/* 07C794 8007BB94 8C820000 */ lw $v0, ($a0) -/* 07C798 8007BB98 00A97021 */ addu $t6, $a1, $t1 -/* 07C79C 8007BB9C 24580008 */ addiu $t8, $v0, 8 -/* 07C7A0 8007BBA0 AC980000 */ sw $t8, ($a0) -/* 07C7A4 8007BBA4 AC470000 */ sw $a3, ($v0) -/* 07C7A8 8007BBA8 8FAD0078 */ lw $t5, 0x78($sp) -/* 07C7AC 8007BBAC 25D90820 */ addiu $t9, $t6, 0x820 -/* 07C7B0 8007BBB0 AC590004 */ sw $t9, 4($v0) -/* 07C7B4 8007BBB4 8C820000 */ lw $v0, ($a0) -/* 07C7B8 8007BBB8 3C0E0701 */ lui $t6, (0x07010060 >> 16) # lui $t6, 0x701 -/* 07C7BC 8007BBBC 244F0008 */ addiu $t7, $v0, 8 -/* 07C7C0 8007BBC0 AC8F0000 */ sw $t7, ($a0) -/* 07C7C4 8007BBC4 35CE0060 */ ori $t6, (0x07010060 & 0xFFFF) # ori $t6, $t6, 0x60 -/* 07C7C8 8007BBC8 3C18F510 */ lui $t8, 0xf510 -/* 07C7CC 8007BBCC AC580000 */ sw $t8, ($v0) -/* 07C7D0 8007BBD0 AC4E0004 */ sw $t6, 4($v0) -/* 07C7D4 8007BBD4 8C820000 */ lw $v0, ($a0) -/* 07C7D8 8007BBD8 3C0E073F */ lui $t6, (0x073FF080 >> 16) # lui $t6, 0x73f -/* 07C7DC 8007BBDC 24590008 */ addiu $t9, $v0, 8 -/* 07C7E0 8007BBE0 AC990000 */ sw $t9, ($a0) -/* 07C7E4 8007BBE4 AC400004 */ sw $zero, 4($v0) -/* 07C7E8 8007BBE8 AC4A0000 */ sw $t2, ($v0) -/* 07C7EC 8007BBEC 8C820000 */ lw $v0, ($a0) -/* 07C7F0 8007BBF0 35CEF080 */ ori $t6, (0x073FF080 & 0xFFFF) # ori $t6, $t6, 0xf080 -/* 07C7F4 8007BBF4 AFA2003C */ sw $v0, 0x3c($sp) -/* 07C7F8 8007BBF8 244F0008 */ addiu $t7, $v0, 8 -/* 07C7FC 8007BBFC AC8F0000 */ sw $t7, ($a0) -/* 07C800 8007BC00 8FB8003C */ lw $t8, 0x3c($sp) -/* 07C804 8007BC04 00000000 */ nop -/* 07C808 8007BC08 AF0B0000 */ sw $t3, ($t8) -/* 07C80C 8007BC0C AF0E0004 */ sw $t6, 4($t8) -/* 07C810 8007BC10 8C820000 */ lw $v0, ($a0) -/* 07C814 8007BC14 3C18F510 */ lui $t8, (0xF5102000 >> 16) # lui $t8, 0xf510 -/* 07C818 8007BC18 AFA20038 */ sw $v0, 0x38($sp) -/* 07C81C 8007BC1C 24590008 */ addiu $t9, $v0, 8 -/* 07C820 8007BC20 AC990000 */ sw $t9, ($a0) -/* 07C824 8007BC24 8FAF0038 */ lw $t7, 0x38($sp) -/* 07C828 8007BC28 3C190001 */ lui $t9, (0x00010060 >> 16) # lui $t9, 1 -/* 07C82C 8007BC2C ADE80000 */ sw $t0, ($t7) -/* 07C830 8007BC30 ADE00004 */ sw $zero, 4($t7) -/* 07C834 8007BC34 8C820000 */ lw $v0, ($a0) -/* 07C838 8007BC38 37390060 */ ori $t9, (0x00010060 & 0xFFFF) # ori $t9, $t9, 0x60 -/* 07C83C 8007BC3C 244E0008 */ addiu $t6, $v0, 8 -/* 07C840 8007BC40 AC8E0000 */ sw $t6, ($a0) -/* 07C844 8007BC44 37182000 */ ori $t8, (0xF5102000 & 0xFFFF) # ori $t8, $t8, 0x2000 -/* 07C848 8007BC48 AC580000 */ sw $t8, ($v0) -/* 07C84C 8007BC4C AC590004 */ sw $t9, 4($v0) -/* 07C850 8007BC50 8C820000 */ lw $v0, ($a0) -/* 07C854 8007BC54 3C0E000F */ lui $t6, (0x000FC03C >> 16) # lui $t6, 0xf -/* 07C858 8007BC58 244F0008 */ addiu $t7, $v0, 8 -/* 07C85C 8007BC5C AC8F0000 */ sw $t7, ($a0) -/* 07C860 8007BC60 35CEC03C */ ori $t6, (0x000FC03C & 0xFFFF) # ori $t6, $t6, 0xc03c -/* 07C864 8007BC64 AC4E0004 */ sw $t6, 4($v0) -/* 07C868 8007BC68 10000079 */ b .L8007BE50 -/* 07C86C 8007BC6C AC4C0000 */ sw $t4, ($v0) -.L8007BC70: -/* 07C870 8007BC70 8C820000 */ lw $v0, ($a0) -/* 07C874 8007BC74 3C098000 */ lui $t1, 0x8000 -/* 07C878 8007BC78 24580008 */ addiu $t8, $v0, 8 -/* 07C87C 8007BC7C AC980000 */ sw $t8, ($a0) -/* 07C880 8007BC80 00A9C821 */ addu $t9, $a1, $t1 -/* 07C884 8007BC84 3C07FD10 */ lui $a3, 0xfd10 -/* 07C888 8007BC88 272F0020 */ addiu $t7, $t9, 0x20 -/* 07C88C 8007BC8C AC4F0004 */ sw $t7, 4($v0) -/* 07C890 8007BC90 AC470000 */ sw $a3, ($v0) -/* 07C894 8007BC94 8C820000 */ lw $v0, ($a0) -/* 07C898 8007BC98 3C190701 */ lui $t9, (0x07014050 >> 16) # lui $t9, 0x701 -/* 07C89C 8007BC9C 244E0008 */ addiu $t6, $v0, 8 -/* 07C8A0 8007BCA0 AC8E0000 */ sw $t6, ($a0) -/* 07C8A4 8007BCA4 3C18F510 */ lui $t8, (0xF5100100 >> 16) # lui $t8, 0xf510 -/* 07C8A8 8007BCA8 37180100 */ ori $t8, (0xF5100100 & 0xFFFF) # ori $t8, $t8, 0x100 -/* 07C8AC 8007BCAC 37394050 */ ori $t9, (0x07014050 & 0xFFFF) # ori $t9, $t9, 0x4050 -/* 07C8B0 8007BCB0 AC590004 */ sw $t9, 4($v0) -/* 07C8B4 8007BCB4 AC580000 */ sw $t8, ($v0) -/* 07C8B8 8007BCB8 8C820000 */ lw $v0, ($a0) -/* 07C8BC 8007BCBC 3C0AE600 */ lui $t2, 0xe600 -/* 07C8C0 8007BCC0 244F0008 */ addiu $t7, $v0, 8 -/* 07C8C4 8007BCC4 AC8F0000 */ sw $t7, ($a0) -/* 07C8C8 8007BCC8 AC400004 */ sw $zero, 4($v0) -/* 07C8CC 8007BCCC AC4A0000 */ sw $t2, ($v0) -/* 07C8D0 8007BCD0 8C820000 */ lw $v0, ($a0) -/* 07C8D4 8007BCD4 3C0BF300 */ lui $t3, 0xf300 -/* 07C8D8 8007BCD8 244E0008 */ addiu $t6, $v0, 8 -/* 07C8DC 8007BCDC AC8E0000 */ sw $t6, ($a0) -/* 07C8E0 8007BCE0 3C18073F */ lui $t8, (0x073FF100 >> 16) # lui $t8, 0x73f -/* 07C8E4 8007BCE4 AC4B0000 */ sw $t3, ($v0) -/* 07C8E8 8007BCE8 8FAD0078 */ lw $t5, 0x78($sp) -/* 07C8EC 8007BCEC 3718F100 */ ori $t8, (0x073FF100 & 0xFFFF) # ori $t8, $t8, 0xf100 -/* 07C8F0 8007BCF0 AC580004 */ sw $t8, 4($v0) -/* 07C8F4 8007BCF4 8C820000 */ lw $v0, ($a0) -/* 07C8F8 8007BCF8 3C08E700 */ lui $t0, 0xe700 -/* 07C8FC 8007BCFC AFA2001C */ sw $v0, 0x1c($sp) -/* 07C900 8007BD00 24590008 */ addiu $t9, $v0, 8 -/* 07C904 8007BD04 AC990000 */ sw $t9, ($a0) -/* 07C908 8007BD08 8FAF001C */ lw $t7, 0x1c($sp) -/* 07C90C 8007BD0C 3C18F510 */ lui $t8, (0xF5101100 >> 16) # lui $t8, 0xf510 -/* 07C910 8007BD10 ADE80000 */ sw $t0, ($t7) -/* 07C914 8007BD14 ADE00004 */ sw $zero, 4($t7) -/* 07C918 8007BD18 8C820000 */ lw $v0, ($a0) -/* 07C91C 8007BD1C 3C0F0101 */ lui $t7, (0x01014050 >> 16) # lui $t7, 0x101 -/* 07C920 8007BD20 AFA20018 */ sw $v0, 0x18($sp) -/* 07C924 8007BD24 244E0008 */ addiu $t6, $v0, 8 -/* 07C928 8007BD28 AC8E0000 */ sw $t6, ($a0) -/* 07C92C 8007BD2C 8FB90018 */ lw $t9, 0x18($sp) -/* 07C930 8007BD30 35EF4050 */ ori $t7, (0x01014050 & 0xFFFF) # ori $t7, $t7, 0x4050 -/* 07C934 8007BD34 37181100 */ ori $t8, (0xF5101100 & 0xFFFF) # ori $t8, $t8, 0x1100 -/* 07C938 8007BD38 AF380000 */ sw $t8, ($t9) -/* 07C93C 8007BD3C AF2F0004 */ sw $t7, 4($t9) -/* 07C940 8007BD40 8C820000 */ lw $v0, ($a0) -/* 07C944 8007BD44 3C0CF200 */ lui $t4, 0xf200 -/* 07C948 8007BD48 AFA20014 */ sw $v0, 0x14($sp) -/* 07C94C 8007BD4C 244E0008 */ addiu $t6, $v0, 8 -/* 07C950 8007BD50 AC8E0000 */ sw $t6, ($a0) -/* 07C954 8007BD54 8FB80014 */ lw $t8, 0x14($sp) -/* 07C958 8007BD58 3C0F0107 */ lui $t7, (0x0107C07C >> 16) # lui $t7, 0x107 -/* 07C95C 8007BD5C AF0C0000 */ sw $t4, ($t8) -/* 07C960 8007BD60 8FB90014 */ lw $t9, 0x14($sp) -/* 07C964 8007BD64 35EFC07C */ ori $t7, (0x0107C07C & 0xFFFF) # ori $t7, $t7, 0xc07c -/* 07C968 8007BD68 AF2F0004 */ sw $t7, 4($t9) -/* 07C96C 8007BD6C 8C820000 */ lw $v0, ($a0) -/* 07C970 8007BD70 00A9C021 */ addu $t8, $a1, $t1 -/* 07C974 8007BD74 244E0008 */ addiu $t6, $v0, 8 -/* 07C978 8007BD78 AC8E0000 */ sw $t6, ($a0) -/* 07C97C 8007BD7C 270F0820 */ addiu $t7, $t8, 0x820 -/* 07C980 8007BD80 AC4F0004 */ sw $t7, 4($v0) -/* 07C984 8007BD84 AC470000 */ sw $a3, ($v0) -/* 07C988 8007BD88 8C820000 */ lw $v0, ($a0) -/* 07C98C 8007BD8C 3C180701 */ lui $t8, (0x07014050 >> 16) # lui $t8, 0x701 -/* 07C990 8007BD90 24590008 */ addiu $t9, $v0, 8 -/* 07C994 8007BD94 AC990000 */ sw $t9, ($a0) -/* 07C998 8007BD98 37184050 */ ori $t8, (0x07014050 & 0xFFFF) # ori $t8, $t8, 0x4050 -/* 07C99C 8007BD9C 3C0EF510 */ lui $t6, 0xf510 -/* 07C9A0 8007BDA0 AC4E0000 */ sw $t6, ($v0) -/* 07C9A4 8007BDA4 AC580004 */ sw $t8, 4($v0) -/* 07C9A8 8007BDA8 8C820000 */ lw $v0, ($a0) -/* 07C9AC 8007BDAC 3C18073F */ lui $t8, (0x073FF100 >> 16) # lui $t8, 0x73f -/* 07C9B0 8007BDB0 244F0008 */ addiu $t7, $v0, 8 -/* 07C9B4 8007BDB4 AC8F0000 */ sw $t7, ($a0) -/* 07C9B8 8007BDB8 AC400004 */ sw $zero, 4($v0) -/* 07C9BC 8007BDBC AC4A0000 */ sw $t2, ($v0) -/* 07C9C0 8007BDC0 8C820000 */ lw $v0, ($a0) -/* 07C9C4 8007BDC4 3718F100 */ ori $t8, (0x073FF100 & 0xFFFF) # ori $t8, $t8, 0xf100 -/* 07C9C8 8007BDC8 AFA20004 */ sw $v0, 4($sp) -/* 07C9CC 8007BDCC 24590008 */ addiu $t9, $v0, 8 -/* 07C9D0 8007BDD0 AC990000 */ sw $t9, ($a0) -/* 07C9D4 8007BDD4 8FAE0004 */ lw $t6, 4($sp) -/* 07C9D8 8007BDD8 00000000 */ nop -/* 07C9DC 8007BDDC ADCB0000 */ sw $t3, ($t6) -/* 07C9E0 8007BDE0 8FAF0004 */ lw $t7, 4($sp) -/* 07C9E4 8007BDE4 00000000 */ nop -/* 07C9E8 8007BDE8 ADF80004 */ sw $t8, 4($t7) -/* 07C9EC 8007BDEC 8C820000 */ lw $v0, ($a0) -/* 07C9F0 8007BDF0 00000000 */ nop -/* 07C9F4 8007BDF4 AFA20000 */ sw $v0, ($sp) -/* 07C9F8 8007BDF8 24590008 */ addiu $t9, $v0, 8 -/* 07C9FC 8007BDFC AC990000 */ sw $t9, ($a0) -/* 07CA00 8007BE00 8FAE0000 */ lw $t6, ($sp) -/* 07CA04 8007BE04 3C19F510 */ lui $t9, (0xF5101000 >> 16) # lui $t9, 0xf510 -/* 07CA08 8007BE08 ADC80000 */ sw $t0, ($t6) -/* 07CA0C 8007BE0C 8FB80000 */ lw $t8, ($sp) -/* 07CA10 8007BE10 3C0E0001 */ lui $t6, (0x00014050 >> 16) # lui $t6, 1 -/* 07CA14 8007BE14 AF000004 */ sw $zero, 4($t8) -/* 07CA18 8007BE18 8C820000 */ lw $v0, ($a0) -/* 07CA1C 8007BE1C 35CE4050 */ ori $t6, (0x00014050 & 0xFFFF) # ori $t6, $t6, 0x4050 -/* 07CA20 8007BE20 244F0008 */ addiu $t7, $v0, 8 -/* 07CA24 8007BE24 AC8F0000 */ sw $t7, ($a0) -/* 07CA28 8007BE28 37391000 */ ori $t9, (0xF5101000 & 0xFFFF) # ori $t9, $t9, 0x1000 -/* 07CA2C 8007BE2C AC590000 */ sw $t9, ($v0) -/* 07CA30 8007BE30 AC4E0004 */ sw $t6, 4($v0) -/* 07CA34 8007BE34 8C820000 */ lw $v0, ($a0) -/* 07CA38 8007BE38 3C0F0007 */ lui $t7, (0x0007C07C >> 16) # lui $t7, 7 -/* 07CA3C 8007BE3C 24580008 */ addiu $t8, $v0, 8 -/* 07CA40 8007BE40 AC980000 */ sw $t8, ($a0) -/* 07CA44 8007BE44 35EFC07C */ ori $t7, (0x0007C07C & 0xFFFF) # ori $t7, $t7, 0xc07c -/* 07CA48 8007BE48 AC4F0004 */ sw $t7, 4($v0) -/* 07CA4C 8007BE4C AC4C0000 */ sw $t4, ($v0) -.L8007BE50: -/* 07CA50 8007BE50 8C820000 */ lw $v0, ($a0) -/* 07CA54 8007BE54 3C018012 */ lui $at, %hi(D_8012637C) # $at, 0x8012 -/* 07CA58 8007BE58 24590008 */ addiu $t9, $v0, 8 -/* 07CA5C 8007BE5C AC990000 */ sw $t9, ($a0) -/* 07CA60 8007BE60 AC400004 */ sw $zero, 4($v0) -/* 07CA64 8007BE64 AC480000 */ sw $t0, ($v0) -/* 07CA68 8007BE68 AC20637C */ sw $zero, %lo(D_8012637C)($at) -/* 07CA6C 8007BE6C 8C820000 */ lw $v0, ($a0) -/* 07CA70 8007BE70 31AE001F */ andi $t6, $t5, 0x1f -/* 07CA74 8007BE74 24580008 */ addiu $t8, $v0, 8 -/* 07CA78 8007BE78 AC980000 */ sw $t8, ($a0) -/* 07CA7C 8007BE7C 3C0F0001 */ lui $t7, 1 -/* 07CA80 8007BE80 31D90002 */ andi $t9, $t6, 2 -/* 07CA84 8007BE84 01C06825 */ move $t5, $t6 -/* 07CA88 8007BE88 AC4F0004 */ sw $t7, 4($v0) -/* 07CA8C 8007BE8C 13200008 */ beqz $t9, .L8007BEB0 -/* 07CA90 8007BE90 AC460000 */ sw $a2, ($v0) -/* 07CA94 8007BE94 8C820000 */ lw $v0, ($a0) -/* 07CA98 8007BE98 24180001 */ li $t8, 1 -/* 07CA9C 8007BE9C 244E0008 */ addiu $t6, $v0, 8 -/* 07CAA0 8007BEA0 AC8E0000 */ sw $t6, ($a0) -/* 07CAA4 8007BEA4 AC580004 */ sw $t8, 4($v0) -/* 07CAA8 8007BEA8 10000008 */ b .L8007BECC -/* 07CAAC 8007BEAC AC460000 */ sw $a2, ($v0) -.L8007BEB0: -/* 07CAB0 8007BEB0 8C820000 */ lw $v0, ($a0) -/* 07CAB4 8007BEB4 3C19B600 */ lui $t9, 0xb600 -/* 07CAB8 8007BEB8 244F0008 */ addiu $t7, $v0, 8 -/* 07CABC 8007BEBC AC8F0000 */ sw $t7, ($a0) -/* 07CAC0 8007BEC0 240E0001 */ li $t6, 1 -/* 07CAC4 8007BEC4 AC4E0004 */ sw $t6, 4($v0) -/* 07CAC8 8007BEC8 AC590000 */ sw $t9, ($v0) -.L8007BECC: -/* 07CACC 8007BECC 24180001 */ li $t8, 1 -/* 07CAD0 8007BED0 3C018012 */ lui $at, %hi(D_80126382) # $at, 0x8012 -/* 07CAD4 8007BED4 A4386382 */ sh $t8, %lo(D_80126382)($at) -/* 07CAD8 8007BED8 3C018012 */ lui $at, %hi(D_80126374) # $at, 0x8012 -/* 07CADC 8007BEDC AC206374 */ sw $zero, %lo(D_80126374)($at) -/* 07CAE0 8007BEE0 8C820000 */ lw $v0, ($a0) -/* 07CAE4 8007BEE4 3C190702 */ lui $t9, (0x07020010 >> 16) # lui $t9, 0x702 -/* 07CAE8 8007BEE8 244F0008 */ addiu $t7, $v0, 8 -/* 07CAEC 8007BEEC AC8F0000 */ sw $t7, ($a0) -/* 07CAF0 8007BEF0 3C0F800E */ lui $t7, %hi(D_800DF1A8) # $t7, 0x800e -/* 07CAF4 8007BEF4 37390010 */ ori $t9, (0x07020010 & 0xFFFF) # ori $t9, $t9, 0x10 -/* 07CAF8 8007BEF8 3C018000 */ lui $at, 0x8000 -/* 07CAFC 8007BEFC 000D7100 */ sll $t6, $t5, 4 -/* 07CB00 8007BF00 01C1C021 */ addu $t8, $t6, $at -/* 07CB04 8007BF04 25EFF1A8 */ addiu $t7, %lo(D_800DF1A8) # addiu $t7, $t7, -0xe58 -/* 07CB08 8007BF08 AC590000 */ sw $t9, ($v0) -/* 07CB0C 8007BF0C 030FC821 */ addu $t9, $t8, $t7 -/* 07CB10 8007BF10 27BD0070 */ addiu $sp, $sp, 0x70 -/* 07CB14 8007BF14 03E00008 */ jr $ra -/* 07CB18 8007BF18 AC590004 */ sw $t9, 4($v0) - -glabel func_8007BF1C -/* 07CB1C 8007BF1C 3C01800E */ lui $at, %hi(D_800DE7C4) # $at, 0x800e -/* 07CB20 8007BF20 AC24E7C4 */ sw $a0, %lo(D_800DE7C4)($at) -/* 07CB24 8007BF24 3C018012 */ lui $at, 0x8012 -/* 07CB28 8007BF28 240E0001 */ li $t6, 1 -/* 07CB2C 8007BF2C 03E00008 */ jr $ra -/* 07CB30 8007BF30 A42E6382 */ sh $t6, 0x6382($at) - -glabel func_8007BF34 -/* 07CB34 8007BF34 3C078012 */ lui $a3, %hi(D_80126374) # $a3, 0x8012 -/* 07CB38 8007BF38 24E76374 */ addiu $a3, %lo(D_80126374) # addiu $a3, $a3, 0x6374 -/* 07CB3C 8007BF3C 8CEE0000 */ lw $t6, ($a3) -/* 07CB40 8007BF40 3C088012 */ lui $t0, %hi(D_80126382) # $t0, 0x8012 -/* 07CB44 8007BF44 14AE0005 */ bne $a1, $t6, .L8007BF5C -/* 07CB48 8007BF48 25086382 */ addiu $t0, %lo(D_80126382) # addiu $t0, $t0, 0x6382 -/* 07CB4C 8007BF4C 850F0000 */ lh $t7, ($t0) -/* 07CB50 8007BF50 00000000 */ nop -/* 07CB54 8007BF54 11E00073 */ beqz $t7, .L8007C124 -/* 07CB58 8007BF58 00000000 */ nop -.L8007BF5C: -/* 07CB5C 8007BF5C 8C820000 */ lw $v0, ($a0) -/* 07CB60 8007BF60 3C19E700 */ lui $t9, 0xe700 -/* 07CB64 8007BF64 24580008 */ addiu $t8, $v0, 8 -/* 07CB68 8007BF68 AC980000 */ sw $t8, ($a0) -/* 07CB6C 8007BF6C AC400004 */ sw $zero, 4($v0) -/* 07CB70 8007BF70 AC590000 */ sw $t9, ($v0) -/* 07CB74 8007BF74 8CE30000 */ lw $v1, ($a3) -/* 07CB78 8007BF78 3C088012 */ lui $t0, %hi(D_80126382) # $t0, 0x8012 -/* 07CB7C 8007BF7C 00034900 */ sll $t1, $v1, 4 -/* 07CB80 8007BF80 05200005 */ bltz $t1, .L8007BF98 -/* 07CB84 8007BF84 25086382 */ addiu $t0, %lo(D_80126382) # addiu $t0, $t0, 0x6382 -/* 07CB88 8007BF88 850A0000 */ lh $t2, ($t0) -/* 07CB8C 8007BF8C 00000000 */ nop -/* 07CB90 8007BF90 1140000A */ beqz $t2, .L8007BFBC -/* 07CB94 8007BF94 00000000 */ nop -.L8007BF98: -/* 07CB98 8007BF98 8C820000 */ lw $v0, ($a0) -/* 07CB9C 8007BF9C 3C0CB700 */ lui $t4, 0xb700 -/* 07CBA0 8007BFA0 244B0008 */ addiu $t3, $v0, 8 -/* 07CBA4 8007BFA4 AC8B0000 */ sw $t3, ($a0) -/* 07CBA8 8007BFA8 3C0D0001 */ lui $t5, 1 -/* 07CBAC 8007BFAC AC4D0004 */ sw $t5, 4($v0) -/* 07CBB0 8007BFB0 AC4C0000 */ sw $t4, ($v0) -/* 07CBB4 8007BFB4 8CE30000 */ lw $v1, ($a3) -/* 07CBB8 8007BFB8 00000000 */ nop -.L8007BFBC: -/* 07CBBC 8007BFBC 3C0F8012 */ lui $t7, %hi(D_80126378) # $t7, 0x8012 -/* 07CBC0 8007BFC0 8DEF6378 */ lw $t7, %lo(D_80126378)($t7) -/* 07CBC4 8007BFC4 3C01F7FF */ lui $at, (0xF7FFFFFF >> 16) # lui $at, 0xf7ff -/* 07CBC8 8007BFC8 3421FFFF */ ori $at, (0xF7FFFFFF & 0xFFFF) # ori $at, $at, 0xffff -/* 07CBCC 8007BFCC 00A17024 */ and $t6, $a1, $at -/* 07CBD0 8007BFD0 01E0C027 */ not $t8, $t7 -/* 07CBD4 8007BFD4 01D82824 */ and $a1, $t6, $t8 -/* 07CBD8 8007BFD8 30A20002 */ andi $v0, $a1, 2 -/* 07CBDC 8007BFDC 30790002 */ andi $t9, $v1, 2 -/* 07CBE0 8007BFE0 17220005 */ bne $t9, $v0, .L8007BFF8 -/* 07CBE4 8007BFE4 2401F7FF */ li $at, -2049 -/* 07CBE8 8007BFE8 85090000 */ lh $t1, ($t0) -/* 07CBEC 8007BFEC 00000000 */ nop -/* 07CBF0 8007BFF0 11200011 */ beqz $t1, .L8007C038 -/* 07CBF4 8007BFF4 00000000 */ nop -.L8007BFF8: -/* 07CBF8 8007BFF8 10400009 */ beqz $v0, .L8007C020 -/* 07CBFC 8007BFFC 3C0EB600 */ lui $t6, 0xb600 -/* 07CC00 8007C000 8C820000 */ lw $v0, ($a0) -/* 07CC04 8007C004 3C0BB700 */ lui $t3, 0xb700 -/* 07CC08 8007C008 244A0008 */ addiu $t2, $v0, 8 -/* 07CC0C 8007C00C AC8A0000 */ sw $t2, ($a0) -/* 07CC10 8007C010 240C0001 */ li $t4, 1 -/* 07CC14 8007C014 AC4C0004 */ sw $t4, 4($v0) -/* 07CC18 8007C018 10000007 */ b .L8007C038 -/* 07CC1C 8007C01C AC4B0000 */ sw $t3, ($v0) -.L8007C020: -/* 07CC20 8007C020 8C820000 */ lw $v0, ($a0) -/* 07CC24 8007C024 240F0001 */ li $t7, 1 -/* 07CC28 8007C028 244D0008 */ addiu $t5, $v0, 8 -/* 07CC2C 8007C02C AC8D0000 */ sw $t5, ($a0) -/* 07CC30 8007C030 AC4F0004 */ sw $t7, 4($v0) -/* 07CC34 8007C034 AC4E0000 */ sw $t6, ($v0) -.L8007C038: -/* 07CC38 8007C038 A5000000 */ sh $zero, ($t0) -/* 07CC3C 8007C03C ACE50000 */ sw $a1, ($a3) -/* 07CC40 8007C040 3C19800E */ lui $t9, %hi(D_800DE7C4) # $t9, 0x800e -/* 07CC44 8007C044 8F39E7C4 */ lw $t9, %lo(D_800DE7C4)($t9) -/* 07CC48 8007C048 00A1C024 */ and $t8, $a1, $at -/* 07CC4C 8007C04C 17200023 */ bnez $t9, .L8007C0DC -/* 07CC50 8007C050 03002825 */ move $a1, $t8 -/* 07CC54 8007C054 8CE90000 */ lw $t1, ($a3) -/* 07CC58 8007C058 3C0B0702 */ lui $t3, (0x07020010 >> 16) # lui $t3, 0x702 -/* 07CC5C 8007C05C 312A0200 */ andi $t2, $t1, 0x200 -/* 07CC60 8007C060 11400011 */ beqz $t2, .L8007C0A8 -/* 07CC64 8007C064 356B0010 */ ori $t3, (0x07020010 & 0xFFFF) # ori $t3, $t3, 0x10 -/* 07CC68 8007C068 8C820000 */ lw $v0, ($a0) -/* 07CC6C 8007C06C 00186843 */ sra $t5, $t8, 1 -/* 07CC70 8007C070 31AE0001 */ andi $t6, $t5, 1 -/* 07CC74 8007C074 000E7900 */ sll $t7, $t6, 4 -/* 07CC78 8007C078 3C018000 */ lui $at, 0x8000 -/* 07CC7C 8007C07C 3C19800E */ lui $t9, %hi(D_800DE848) # $t9, 0x800e -/* 07CC80 8007C080 2739E848 */ addiu $t9, %lo(D_800DE848) # addiu $t9, $t9, -0x17b8 -/* 07CC84 8007C084 01E1C021 */ addu $t8, $t7, $at -/* 07CC88 8007C088 3C0C0702 */ lui $t4, (0x07020010 >> 16) # lui $t4, 0x702 -/* 07CC8C 8007C08C 244B0008 */ addiu $t3, $v0, 8 -/* 07CC90 8007C090 AC8B0000 */ sw $t3, ($a0) -/* 07CC94 8007C094 358C0010 */ ori $t4, (0x07020010 & 0xFFFF) # ori $t4, $t4, 0x10 -/* 07CC98 8007C098 03194821 */ addu $t1, $t8, $t9 -/* 07CC9C 8007C09C AC490004 */ sw $t1, 4($v0) -/* 07CCA0 8007C0A0 1000001B */ b .L8007C110 -/* 07CCA4 8007C0A4 AC4C0000 */ sw $t4, ($v0) -.L8007C0A8: -/* 07CCA8 8007C0A8 8C820000 */ lw $v0, ($a0) -/* 07CCAC 8007C0AC 24ACFFF0 */ addiu $t4, $a1, -0x10 -/* 07CCB0 8007C0B0 000C6900 */ sll $t5, $t4, 4 -/* 07CCB4 8007C0B4 3C018000 */ lui $at, 0x8000 -/* 07CCB8 8007C0B8 3C0F800E */ lui $t7, %hi(D_800DE868) # $t7, 0x800e -/* 07CCBC 8007C0BC 25EFE868 */ addiu $t7, %lo(D_800DE868) # addiu $t7, $t7, -0x1798 -/* 07CCC0 8007C0C0 01A17021 */ addu $t6, $t5, $at -/* 07CCC4 8007C0C4 244A0008 */ addiu $t2, $v0, 8 -/* 07CCC8 8007C0C8 AC8A0000 */ sw $t2, ($a0) -/* 07CCCC 8007C0CC 01CFC021 */ addu $t8, $t6, $t7 -/* 07CCD0 8007C0D0 AC580004 */ sw $t8, 4($v0) -/* 07CCD4 8007C0D4 1000000E */ b .L8007C110 -/* 07CCD8 8007C0D8 AC4B0000 */ sw $t3, ($v0) -.L8007C0DC: -/* 07CCDC 8007C0DC 8C820000 */ lw $v0, ($a0) -/* 07CCE0 8007C0E0 00055100 */ sll $t2, $a1, 4 -/* 07CCE4 8007C0E4 3C018000 */ lui $at, 0x8000 -/* 07CCE8 8007C0E8 3C0C800E */ lui $t4, %hi(D_800DE8E8) # $t4, 0x800e -/* 07CCEC 8007C0EC 24590008 */ addiu $t9, $v0, 8 -/* 07CCF0 8007C0F0 AC990000 */ sw $t9, ($a0) -/* 07CCF4 8007C0F4 258CE8E8 */ addiu $t4, %lo(D_800DE8E8) # addiu $t4, $t4, -0x1718 -/* 07CCF8 8007C0F8 01415821 */ addu $t3, $t2, $at -/* 07CCFC 8007C0FC 3C090702 */ lui $t1, (0x07020010 >> 16) # lui $t1, 0x702 -/* 07CD00 8007C100 35290010 */ ori $t1, (0x07020010 & 0xFFFF) # ori $t1, $t1, 0x10 -/* 07CD04 8007C104 016C6821 */ addu $t5, $t3, $t4 -/* 07CD08 8007C108 AC4D0004 */ sw $t5, 4($v0) -/* 07CD0C 8007C10C AC490000 */ sw $t1, ($v0) -.L8007C110: -/* 07CD10 8007C110 3C018012 */ lui $at, %hi(D_8012637C) # $at, 0x8012 -/* 07CD14 8007C114 AC20637C */ sw $zero, %lo(D_8012637C)($at) -/* 07CD18 8007C118 3C018012 */ lui $at, %hi(D_80126380) # $at, 0x8012 -/* 07CD1C 8007C11C 240E0001 */ li $t6, 1 -/* 07CD20 8007C120 A42E6380 */ sh $t6, %lo(D_80126380)($at) -.L8007C124: -/* 07CD24 8007C124 03E00008 */ jr $ra -/* 07CD28 8007C128 00000000 */ nop - -glabel func_8007C12C -/* 07CD2C 8007C12C 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 07CD30 8007C130 AFB10018 */ sw $s1, 0x18($sp) -/* 07CD34 8007C134 3C018012 */ lui $at, %hi(D_8012635C) # $at, 0x8012 -/* 07CD38 8007C138 00808825 */ move $s1, $a0 -/* 07CD3C 8007C13C AFBF002C */ sw $ra, 0x2c($sp) -/* 07CD40 8007C140 AFB50028 */ sw $s5, 0x28($sp) -/* 07CD44 8007C144 AFB40024 */ sw $s4, 0x24($sp) -/* 07CD48 8007C148 AFB30020 */ sw $s3, 0x20($sp) -/* 07CD4C 8007C14C AFB2001C */ sw $s2, 0x1c($sp) -/* 07CD50 8007C150 AFB00014 */ sw $s0, 0x14($sp) -/* 07CD54 8007C154 04800007 */ bltz $a0, .L8007C174 -/* 07CD58 8007C158 AC25635C */ sw $a1, %lo(D_8012635C)($at) -/* 07CD5C 8007C15C 3C0E8012 */ lui $t6, %hi(D_80126354) # $t6, 0x8012 -/* 07CD60 8007C160 8DCE6354 */ lw $t6, %lo(D_80126354)($t6) -/* 07CD64 8007C164 3C0A8012 */ lui $t2, %hi(D_80126358) # $t2, 0x8012 -/* 07CD68 8007C168 008E082A */ slt $at, $a0, $t6 -/* 07CD6C 8007C16C 14200003 */ bnez $at, .L8007C17C -/* 07CD70 8007C170 254A6358 */ addiu $t2, %lo(D_80126358) # addiu $t2, $t2, 0x6358 -.L8007C174: -/* 07CD74 8007C174 100000E4 */ b .L8007C508 -/* 07CD78 8007C178 00001025 */ move $v0, $zero -.L8007C17C: -/* 07CD7C 8007C17C 8D440000 */ lw $a0, ($t2) -/* 07CD80 8007C180 00008025 */ move $s0, $zero -/* 07CD84 8007C184 18800014 */ blez $a0, .L8007C1D8 -/* 07CD88 8007C188 00004825 */ move $t1, $zero -/* 07CD8C 8007C18C 3C028012 */ lui $v0, %hi(D_8012634C) # $v0, 0x8012 -/* 07CD90 8007C190 8C42634C */ lw $v0, %lo(D_8012634C)($v0) -/* 07CD94 8007C194 00000000 */ nop -/* 07CD98 8007C198 0010C0C0 */ sll $t8, $s0, 3 -.L8007C19C: -/* 07CD9C 8007C19C 00581821 */ addu $v1, $v0, $t8 -/* 07CDA0 8007C1A0 8C790000 */ lw $t9, ($v1) -/* 07CDA4 8007C1A4 26100001 */ addiu $s0, $s0, 1 -/* 07CDA8 8007C1A8 16390008 */ bne $s1, $t9, .L8007C1CC -/* 07CDAC 8007C1AC 0204082A */ slt $at, $s0, $a0 -/* 07CDB0 8007C1B0 8C620004 */ lw $v0, 4($v1) -/* 07CDB4 8007C1B4 00000000 */ nop -/* 07CDB8 8007C1B8 844B0004 */ lh $t3, 4($v0) -/* 07CDBC 8007C1BC 00000000 */ nop -/* 07CDC0 8007C1C0 256C0001 */ addiu $t4, $t3, 1 -/* 07CDC4 8007C1C4 100000D0 */ b .L8007C508 -/* 07CDC8 8007C1C8 A44C0004 */ sh $t4, 4($v0) -.L8007C1CC: -/* 07CDCC 8007C1CC 1420FFF3 */ bnez $at, .L8007C19C -/* 07CDD0 8007C1D0 0010C0C0 */ sll $t8, $s0, 3 -/* 07CDD4 8007C1D4 00008025 */ move $s0, $zero -.L8007C1D8: -/* 07CDD8 8007C1D8 1880000F */ blez $a0, .L8007C218 -/* 07CDDC 8007C1DC 2408FFFF */ li $t0, -1 -/* 07CDE0 8007C1E0 3C028012 */ lui $v0, %hi(D_8012634C) # $v0, 0x8012 -/* 07CDE4 8007C1E4 8C42634C */ lw $v0, %lo(D_8012634C)($v0) -/* 07CDE8 8007C1E8 2403FFFF */ li $v1, -1 -/* 07CDEC 8007C1EC 001070C0 */ sll $t6, $s0, 3 -.L8007C1F0: -/* 07CDF0 8007C1F0 004E7821 */ addu $t7, $v0, $t6 -/* 07CDF4 8007C1F4 8DF80000 */ lw $t8, ($t7) -/* 07CDF8 8007C1F8 00000000 */ nop -/* 07CDFC 8007C1FC 14780002 */ bne $v1, $t8, .L8007C208 -/* 07CE00 8007C200 00000000 */ nop -/* 07CE04 8007C204 02004025 */ move $t0, $s0 -.L8007C208: -/* 07CE08 8007C208 26100001 */ addiu $s0, $s0, 1 -/* 07CE0C 8007C20C 0204082A */ slt $at, $s0, $a0 -/* 07CE10 8007C210 1420FFF7 */ bnez $at, .L8007C1F0 -/* 07CE14 8007C214 001070C0 */ sll $t6, $s0, 3 -.L8007C218: -/* 07CE18 8007C218 2403FFFF */ li $v1, -1 -/* 07CE1C 8007C21C 15030005 */ bne $t0, $v1, .L8007C234 -/* 07CE20 8007C220 3C0B8012 */ lui $t3, %hi(D_80126348) # $t3, 0x8012 -/* 07CE24 8007C224 24990001 */ addiu $t9, $a0, 1 -/* 07CE28 8007C228 24090001 */ li $t1, 1 -/* 07CE2C 8007C22C 00804025 */ move $t0, $a0 -/* 07CE30 8007C230 AD590000 */ sw $t9, ($t2) -.L8007C234: -/* 07CE34 8007C234 8D6B6348 */ lw $t3, %lo(D_80126348)($t3) -/* 07CE38 8007C238 00116080 */ sll $t4, $s1, 2 -/* 07CE3C 8007C23C 016C1021 */ addu $v0, $t3, $t4 -/* 07CE40 8007C240 8C460000 */ lw $a2, ($v0) -/* 07CE44 8007C244 8C4D0004 */ lw $t5, 4($v0) -/* 07CE48 8007C248 3C148012 */ lui $s4, %hi(D_80126350) # $s4, 0x8012 -/* 07CE4C 8007C24C 8E946350 */ lw $s4, %lo(D_80126350)($s4) -/* 07CE50 8007C250 AFB10050 */ sw $s1, 0x50($sp) -/* 07CE54 8007C254 A3A90032 */ sb $t1, 0x32($sp) -/* 07CE58 8007C258 AFA80044 */ sw $t0, 0x44($sp) -/* 07CE5C 8007C25C 2404000C */ li $a0, 12 -/* 07CE60 8007C260 01A63823 */ subu $a3, $t5, $a2 -/* 07CE64 8007C264 0C01DB9A */ jal func_80076E68 -/* 07CE68 8007C268 02802825 */ move $a1, $s4 -/* 07CE6C 8007C26C 86850002 */ lh $a1, 2($s4) -/* 07CE70 8007C270 24040010 */ li $a0, 16 -/* 07CE74 8007C274 02857021 */ addu $t6, $s4, $a1 -/* 07CE78 8007C278 91D5000C */ lbu $s5, 0xc($t6) -/* 07CE7C 8007C27C 000558C0 */ sll $t3, $a1, 3 -/* 07CE80 8007C280 00151880 */ sll $v1, $s5, 2 -/* 07CE84 8007C284 00037880 */ sll $t7, $v1, 2 -/* 07CE88 8007C288 01E37821 */ addu $t7, $t7, $v1 -/* 07CE8C 8007C28C 000F7840 */ sll $t7, $t7, 1 -/* 07CE90 8007C290 0003C0C0 */ sll $t8, $v1, 3 -/* 07CE94 8007C294 01F8C821 */ addu $t9, $t7, $t8 -/* 07CE98 8007C298 032B8021 */ addu $s0, $t9, $t3 -/* 07CE9C 8007C29C 00156940 */ sll $t5, $s5, 5 -/* 07CEA0 8007C2A0 020D8021 */ addu $s0, $s0, $t5 -/* 07CEA4 8007C2A4 0C01C614 */ jal func_80071850 -/* 07CEA8 8007C2A8 02038021 */ addu $s0, $s0, $v1 -/* 07CEAC 8007C2AC 86840002 */ lh $a0, 2($s4) -/* 07CEB0 8007C2B0 02028021 */ addu $s0, $s0, $v0 -/* 07CEB4 8007C2B4 00047080 */ sll $t6, $a0, 2 -/* 07CEB8 8007C2B8 0C01C614 */ jal func_80071850 -/* 07CEBC 8007C2BC 01C02025 */ move $a0, $t6 -/* 07CEC0 8007C2C0 3C05FF00 */ lui $a1, (0xFF00FFFF >> 16) # lui $a1, 0xff00 -/* 07CEC4 8007C2C4 02022021 */ addu $a0, $s0, $v0 -/* 07CEC8 8007C2C8 0C01C344 */ jal func_80070D10 -/* 07CECC 8007C2CC 34A5FFFF */ ori $a1, (0xFF00FFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 07CED0 8007C2D0 1440000B */ bnez $v0, .L8007C300 -/* 07CED4 8007C2D4 00409825 */ move $s3, $v0 -/* 07CED8 8007C2D8 83AF0032 */ lb $t7, 0x32($sp) -/* 07CEDC 8007C2DC 3C028012 */ lui $v0, %hi(D_80126358) # $v0, 0x8012 -/* 07CEE0 8007C2E0 11E00005 */ beqz $t7, .L8007C2F8 -/* 07CEE4 8007C2E4 24426358 */ addiu $v0, %lo(D_80126358) # addiu $v0, $v0, 0x6358 -/* 07CEE8 8007C2E8 8C580000 */ lw $t8, ($v0) -/* 07CEEC 8007C2EC 00000000 */ nop -/* 07CEF0 8007C2F0 2719FFFF */ addiu $t9, $t8, -1 -/* 07CEF4 8007C2F4 AC590000 */ sw $t9, ($v0) -.L8007C2F8: -/* 07CEF8 8007C2F8 10000083 */ b .L8007C508 -/* 07CEFC 8007C2FC 00001025 */ move $v0, $zero -.L8007C300: -/* 07CF00 8007C300 24040010 */ li $a0, 16 -/* 07CF04 8007C304 0C01C614 */ jal func_80071850 -/* 07CF08 8007C308 00008025 */ move $s0, $zero -/* 07CF0C 8007C30C 86840002 */ lh $a0, 2($s4) -/* 07CF10 8007C310 00408825 */ move $s1, $v0 -/* 07CF14 8007C314 00045880 */ sll $t3, $a0, 2 -/* 07CF18 8007C318 0C01C614 */ jal func_80071850 -/* 07CF1C 8007C31C 01602025 */ move $a0, $t3 -/* 07CF20 8007C320 00536021 */ addu $t4, $v0, $s3 -/* 07CF24 8007C324 01916821 */ addu $t5, $t4, $s1 -/* 07CF28 8007C328 3C058012 */ lui $a1, %hi(D_80126368) # $a1, 0x8012 -/* 07CF2C 8007C32C 3C078012 */ lui $a3, %hi(D_80126364) # $a3, 0x8012 -/* 07CF30 8007C330 00152140 */ sll $a0, $s5, 5 -/* 07CF34 8007C334 24E76364 */ addiu $a3, %lo(D_80126364) # addiu $a3, $a3, 0x6364 -/* 07CF38 8007C338 24A56368 */ addiu $a1, %lo(D_80126368) # addiu $a1, $a1, 0x6368 -/* 07CF3C 8007C33C 01A47821 */ addu $t7, $t5, $a0 -/* 07CF40 8007C340 ACAD0000 */ sw $t5, ($a1) -/* 07CF44 8007C344 ACEF0000 */ sw $t7, ($a3) -/* 07CF48 8007C348 868B0002 */ lh $t3, 2($s4) -/* 07CF4C 8007C34C 01E4C821 */ addu $t9, $t7, $a0 -/* 07CF50 8007C350 00157880 */ sll $t7, $s5, 2 -/* 07CF54 8007C354 000B60C0 */ sll $t4, $t3, 3 -/* 07CF58 8007C358 3C068012 */ lui $a2, %hi(D_80126360) # $a2, 0x8012 -/* 07CF5C 8007C35C 032C6821 */ addu $t5, $t9, $t4 -/* 07CF60 8007C360 01F57821 */ addu $t7, $t7, $s5 -/* 07CF64 8007C364 24C66360 */ addiu $a2, %lo(D_80126360) # addiu $a2, $a2, 0x6360 -/* 07CF68 8007C368 000F78C0 */ sll $t7, $t7, 3 -/* 07CF6C 8007C36C ACCD0000 */ sw $t5, ($a2) -/* 07CF70 8007C370 01AFC021 */ addu $t8, $t5, $t7 -/* 07CF74 8007C374 AE780008 */ sw $t8, 8($s3) -/* 07CF78 8007C378 1AA0001E */ blez $s5, .L8007C3F4 -/* 07CF7C 8007C37C 00001825 */ move $v1, $zero -/* 07CF80 8007C380 3C12800E */ lui $s2, %hi(D_800DE7C0) # $s2, 0x800e -/* 07CF84 8007C384 2652E7C0 */ addiu $s2, %lo(D_800DE7C0) # addiu $s2, $s2, -0x1840 -/* 07CF88 8007C388 00008825 */ move $s1, $zero -.L8007C38C: -/* 07CF8C 8007C38C 3C0B00FF */ lui $t3, (0x00FF0163 >> 16) # lui $t3, 0xff -/* 07CF90 8007C390 356B0163 */ ori $t3, (0x00FF0163 & 0xFFFF) # ori $t3, $t3, 0x163 -/* 07CF94 8007C394 AE4B0000 */ sw $t3, ($s2) -/* 07CF98 8007C398 86990000 */ lh $t9, ($s4) -/* 07CF9C 8007C39C A3A30033 */ sb $v1, 0x33($sp) -/* 07CFA0 8007C3A0 0C01EB9D */ jal func_8007AE74 -/* 07CFA4 8007C3A4 03302021 */ addu $a0, $t9, $s0 -/* 07CFA8 8007C3A8 8E6C0008 */ lw $t4, 8($s3) -/* 07CFAC 8007C3AC 83A30033 */ lb $v1, 0x33($sp) -/* 07CFB0 8007C3B0 01916821 */ addu $t5, $t4, $s1 -/* 07CFB4 8007C3B4 ADA20000 */ sw $v0, ($t5) -/* 07CFB8 8007C3B8 8E6E0008 */ lw $t6, 8($s3) -/* 07CFBC 8007C3BC 3C0BFF00 */ lui $t3, (0xFF00FFFF >> 16) # lui $t3, 0xff00 -/* 07CFC0 8007C3C0 01D17821 */ addu $t7, $t6, $s1 -/* 07CFC4 8007C3C4 8DF80000 */ lw $t8, ($t7) -/* 07CFC8 8007C3C8 356BFFFF */ ori $t3, (0xFF00FFFF & 0xFFFF) # ori $t3, $t3, 0xffff -/* 07CFCC 8007C3CC 17000002 */ bnez $t8, .L8007C3D8 -/* 07CFD0 8007C3D0 24190001 */ li $t9, 1 -/* 07CFD4 8007C3D4 24030001 */ li $v1, 1 -.L8007C3D8: -/* 07CFD8 8007C3D8 26100001 */ addiu $s0, $s0, 1 -/* 07CFDC 8007C3DC AE4B0000 */ sw $t3, ($s2) -/* 07CFE0 8007C3E0 3C018012 */ lui $at, %hi(D_80126344) # $at, 0x8012 -/* 07CFE4 8007C3E4 26310004 */ addiu $s1, $s1, 4 -/* 07CFE8 8007C3E8 1615FFE8 */ bne $s0, $s5, .L8007C38C -/* 07CFEC 8007C3EC AC396344 */ sw $t9, %lo(D_80126344)($at) -/* 07CFF0 8007C3F0 00008025 */ move $s0, $zero -.L8007C3F4: -/* 07CFF4 8007C3F4 3C018012 */ lui $at, %hi(D_80126344) # $at, 0x8012 -/* 07CFF8 8007C3F8 1060001B */ beqz $v1, .L8007C468 -/* 07CFFC 8007C3FC AC206344 */ sw $zero, %lo(D_80126344)($at) -/* 07D000 8007C400 1AA0000D */ blez $s5, .L8007C438 -/* 07D004 8007C404 00008825 */ move $s1, $zero -.L8007C408: -/* 07D008 8007C408 8E6C0008 */ lw $t4, 8($s3) -/* 07D00C 8007C40C 00000000 */ nop -/* 07D010 8007C410 01916821 */ addu $t5, $t4, $s1 -/* 07D014 8007C414 8DA40000 */ lw $a0, ($t5) -/* 07D018 8007C418 00000000 */ nop -/* 07D01C 8007C41C 10800003 */ beqz $a0, .L8007C42C -/* 07D020 8007C420 00000000 */ nop -/* 07D024 8007C424 0C01ECAF */ jal func_8007B2BC -/* 07D028 8007C428 00000000 */ nop -.L8007C42C: -/* 07D02C 8007C42C 26100001 */ addiu $s0, $s0, 1 -/* 07D030 8007C430 1615FFF5 */ bne $s0, $s5, .L8007C408 -/* 07D034 8007C434 26310004 */ addiu $s1, $s1, 4 -.L8007C438: -/* 07D038 8007C438 83AE0032 */ lb $t6, 0x32($sp) -/* 07D03C 8007C43C 3C028012 */ lui $v0, %hi(D_80126358) # $v0, 0x8012 -/* 07D040 8007C440 11C00005 */ beqz $t6, .L8007C458 -/* 07D044 8007C444 24426358 */ addiu $v0, %lo(D_80126358) # addiu $v0, $v0, 0x6358 -/* 07D048 8007C448 8C4F0000 */ lw $t7, ($v0) -/* 07D04C 8007C44C 00000000 */ nop -/* 07D050 8007C450 25F8FFFF */ addiu $t8, $t7, -1 -/* 07D054 8007C454 AC580000 */ sw $t8, ($v0) -.L8007C458: -/* 07D058 8007C458 0C01C450 */ jal func_80071140 -/* 07D05C 8007C45C 02602025 */ move $a0, $s3 -/* 07D060 8007C460 10000029 */ b .L8007C508 -/* 07D064 8007C464 00001025 */ move $v0, $zero -.L8007C468: -/* 07D068 8007C468 A6750002 */ sh $s5, 2($s3) -/* 07D06C 8007C46C 868B0002 */ lh $t3, 2($s4) -/* 07D070 8007C470 02608825 */ move $s1, $s3 -/* 07D074 8007C474 A66B0000 */ sh $t3, ($s3) -/* 07D078 8007C478 86990002 */ lh $t9, 2($s4) -/* 07D07C 8007C47C 00000000 */ nop -/* 07D080 8007C480 1B20000D */ blez $t9, .L8007C4B8 -.L8007C484: -/* 07D084 8007C484 3C078012 */ lui $a3, %hi(D_80126364) # $a3, 0x8012 -/* 07D088 8007C488 24E76364 */ addiu $a3, %lo(D_80126364) # addiu $a3, $a3, 0x6364 -/* 07D08C 8007C48C 8CEC0000 */ lw $t4, ($a3) -/* 07D090 8007C490 02802025 */ move $a0, $s4 -/* 07D094 8007C494 02602825 */ move $a1, $s3 -/* 07D098 8007C498 02003025 */ move $a2, $s0 -/* 07D09C 8007C49C 0C01F370 */ jal func_8007CDC0 -/* 07D0A0 8007C4A0 AE2C000C */ sw $t4, 0xc($s1) -/* 07D0A4 8007C4A4 868D0002 */ lh $t5, 2($s4) -/* 07D0A8 8007C4A8 26100001 */ addiu $s0, $s0, 1 -/* 07D0AC 8007C4AC 020D082A */ slt $at, $s0, $t5 -/* 07D0B0 8007C4B0 1420FFF4 */ bnez $at, .L8007C484 -/* 07D0B4 8007C4B4 26310004 */ addiu $s1, $s1, 4 -.L8007C4B8: -/* 07D0B8 8007C4B8 3C0E8012 */ lui $t6, %hi(D_80126358) # $t6, 0x8012 -/* 07D0BC 8007C4BC 8DCE6358 */ lw $t6, %lo(D_80126358)($t6) -/* 07D0C0 8007C4C0 3C048012 */ lui $a0, %hi(D_8012634C) # $a0, 0x8012 -/* 07D0C4 8007C4C4 29C10064 */ slti $at, $t6, 0x64 -/* 07D0C8 8007C4C8 14200003 */ bnez $at, .L8007C4D8 -/* 07D0CC 8007C4CC 2484634C */ addiu $a0, %lo(D_8012634C) # addiu $a0, $a0, 0x634c -/* 07D0D0 8007C4D0 1000000D */ b .L8007C508 -/* 07D0D4 8007C4D4 00001025 */ move $v0, $zero -.L8007C4D8: -/* 07D0D8 8007C4D8 8FAF0044 */ lw $t7, 0x44($sp) -/* 07D0DC 8007C4DC 8C990000 */ lw $t9, ($a0) -/* 07D0E0 8007C4E0 8FAB0050 */ lw $t3, 0x50($sp) -/* 07D0E4 8007C4E4 000FC0C0 */ sll $t8, $t7, 3 -/* 07D0E8 8007C4E8 03386021 */ addu $t4, $t9, $t8 -/* 07D0EC 8007C4EC AD8B0000 */ sw $t3, ($t4) -/* 07D0F0 8007C4F0 8C8D0000 */ lw $t5, ($a0) -/* 07D0F4 8007C4F4 240F0001 */ li $t7, 1 -/* 07D0F8 8007C4F8 01B87021 */ addu $t6, $t5, $t8 -/* 07D0FC 8007C4FC ADD30004 */ sw $s3, 4($t6) -/* 07D100 8007C500 A66F0004 */ sh $t7, 4($s3) -/* 07D104 8007C504 02601025 */ move $v0, $s3 -.L8007C508: -/* 07D108 8007C508 8FBF002C */ lw $ra, 0x2c($sp) -/* 07D10C 8007C50C 8FB00014 */ lw $s0, 0x14($sp) -/* 07D110 8007C510 8FB10018 */ lw $s1, 0x18($sp) -/* 07D114 8007C514 8FB2001C */ lw $s2, 0x1c($sp) -/* 07D118 8007C518 8FB30020 */ lw $s3, 0x20($sp) -/* 07D11C 8007C51C 8FB40024 */ lw $s4, 0x24($sp) -/* 07D120 8007C520 8FB50028 */ lw $s5, 0x28($sp) -/* 07D124 8007C524 03E00008 */ jr $ra -/* 07D128 8007C528 27BD0050 */ addiu $sp, $sp, 0x50 - -/* 07D12C 8007C52C 04800006 */ bltz $a0, .L8007C548 -/* 07D130 8007C530 3C0E8012 */ lui $t6, %hi(D_80126358) # $t6, 0x8012 -/* 07D134 8007C534 8DCE6358 */ lw $t6, %lo(D_80126358)($t6) -/* 07D138 8007C538 3C0F8012 */ lui $t7, 0x8012 -/* 07D13C 8007C53C 008E082A */ slt $at, $a0, $t6 -/* 07D140 8007C540 14200003 */ bnez $at, .L8007C550 -/* 07D144 8007C544 00000000 */ nop -.L8007C548: -/* 07D148 8007C548 03E00008 */ jr $ra -/* 07D14C 8007C54C 00001025 */ move $v0, $zero - -.L8007C550: -/* 07D150 8007C550 8DEF634C */ lw $t7, 0x634c($t7) -/* 07D154 8007C554 0004C8C0 */ sll $t9, $a0, 3 -/* 07D158 8007C558 01F94021 */ addu $t0, $t7, $t9 -/* 07D15C 8007C55C 8D030004 */ lw $v1, 4($t0) -/* 07D160 8007C560 2401FFFF */ li $at, -1 -/* 07D164 8007C564 14610003 */ bne $v1, $at, .L8007C574 -/* 07D168 8007C568 00601025 */ move $v0, $v1 -/* 07D16C 8007C56C 03E00008 */ jr $ra -/* 07D170 8007C570 00001025 */ move $v0, $zero - -.L8007C574: -/* 07D174 8007C574 03E00008 */ jr $ra -/* 07D178 8007C578 00000000 */ nop - -glabel func_8007C57C -/* 07D17C 8007C57C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 07D180 8007C580 240E0004 */ li $t6, 4 -/* 07D184 8007C584 308F8000 */ andi $t7, $a0, 0x8000 -/* 07D188 8007C588 AFBF0014 */ sw $ra, 0x14($sp) -/* 07D18C 8007C58C AFAE0018 */ sw $t6, 0x18($sp) -/* 07D190 8007C590 11E00006 */ beqz $t7, .L8007C5AC -/* 07D194 8007C594 00001025 */ move $v0, $zero -/* 07D198 8007C598 24180002 */ li $t8, 2 -/* 07D19C 8007C59C 30997FFF */ andi $t9, $a0, 0x7fff -/* 07D1A0 8007C5A0 AFB80018 */ sw $t8, 0x18($sp) -/* 07D1A4 8007C5A4 24020001 */ li $v0, 1 -/* 07D1A8 8007C5A8 03202025 */ move $a0, $t9 -.L8007C5AC: -/* 07D1AC 8007C5AC 00021880 */ sll $v1, $v0, 2 -/* 07D1B0 8007C5B0 3C088012 */ lui $t0, 0x8012 -/* 07D1B4 8007C5B4 01034021 */ addu $t0, $t0, $v1 -/* 07D1B8 8007C5B8 8D086338 */ lw $t0, 0x6338($t0) -/* 07D1BC 8007C5BC 00000000 */ nop -/* 07D1C0 8007C5C0 0088082A */ slt $at, $a0, $t0 -/* 07D1C4 8007C5C4 10200003 */ beqz $at, .L8007C5D4 -/* 07D1C8 8007C5C8 00000000 */ nop -/* 07D1CC 8007C5CC 04810003 */ bgez $a0, .L8007C5DC -/* 07D1D0 8007C5D0 3C098012 */ lui $t1, 0x8012 -.L8007C5D4: -/* 07D1D4 8007C5D4 1000001E */ b .L8007C650 -/* 07D1D8 8007C5D8 00001025 */ move $v0, $zero -.L8007C5DC: -/* 07D1DC 8007C5DC 01234821 */ addu $t1, $t1, $v1 -/* 07D1E0 8007C5E0 8D296320 */ lw $t1, 0x6320($t1) -/* 07D1E4 8007C5E4 00045080 */ sll $t2, $a0, 2 -/* 07D1E8 8007C5E8 3C058012 */ lui $a1, %hi(D_8012636C) # $a1, 0x8012 -/* 07D1EC 8007C5EC 8CA5636C */ lw $a1, %lo(D_8012636C)($a1) -/* 07D1F0 8007C5F0 012A1021 */ addu $v0, $t1, $t2 -/* 07D1F4 8007C5F4 8C460000 */ lw $a2, ($v0) -/* 07D1F8 8007C5F8 8C4B0004 */ lw $t3, 4($v0) -/* 07D1FC 8007C5FC 90AC001D */ lbu $t4, 0x1d($a1) -/* 07D200 8007C600 8FA40018 */ lw $a0, 0x18($sp) -/* 07D204 8007C604 1180000A */ beqz $t4, .L8007C630 -/* 07D208 8007C608 01663823 */ subu $a3, $t3, $a2 -/* 07D20C 8007C60C 0C01DB9A */ jal func_80076E68 -/* 07D210 8007C610 24070028 */ li $a3, 40 -/* 07D214 8007C614 3C038012 */ lui $v1, %hi(D_8012636C) # $v1, 0x8012 -/* 07D218 8007C618 8C63636C */ lw $v1, %lo(D_8012636C)($v1) -/* 07D21C 8007C61C 0C03186B */ jal func_800C61AC -/* 07D220 8007C620 24640020 */ addiu $a0, $v1, 0x20 -/* 07D224 8007C624 3C058012 */ lui $a1, %hi(D_8012636C) # $a1, 0x8012 -/* 07D228 8007C628 8CA5636C */ lw $a1, %lo(D_8012636C)($a1) -/* 07D22C 8007C62C 00403825 */ move $a3, $v0 -.L8007C630: -/* 07D230 8007C630 94A30012 */ lhu $v1, 0x12($a1) -/* 07D234 8007C634 00000000 */ nop -/* 07D238 8007C638 00036A03 */ sra $t5, $v1, 8 -/* 07D23C 8007C63C 31AEFFFF */ andi $t6, $t5, 0xffff -/* 07D240 8007C640 000E7880 */ sll $t7, $t6, 2 -/* 07D244 8007C644 01EE7823 */ subu $t7, $t7, $t6 -/* 07D248 8007C648 000F7940 */ sll $t7, $t7, 5 -/* 07D24C 8007C64C 01E71021 */ addu $v0, $t7, $a3 -.L8007C650: -/* 07D250 8007C650 8FBF0014 */ lw $ra, 0x14($sp) -/* 07D254 8007C654 27BD0028 */ addiu $sp, $sp, 0x28 -/* 07D258 8007C658 03E00008 */ jr $ra -/* 07D25C 8007C65C 00000000 */ nop - -/* 07D260 8007C660 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 07D264 8007C664 308F8000 */ andi $t7, $a0, 0x8000 -/* 07D268 8007C668 AFBF003C */ sw $ra, 0x3c($sp) -/* 07D26C 8007C66C AFBE0038 */ sw $fp, 0x38($sp) -/* 07D270 8007C670 AFB70034 */ sw $s7, 0x34($sp) -/* 07D274 8007C674 AFB60030 */ sw $s6, 0x30($sp) -/* 07D278 8007C678 AFB5002C */ sw $s5, 0x2c($sp) -/* 07D27C 8007C67C AFB40028 */ sw $s4, 0x28($sp) -/* 07D280 8007C680 AFB30024 */ sw $s3, 0x24($sp) -/* 07D284 8007C684 AFB20020 */ sw $s2, 0x20($sp) -/* 07D288 8007C688 AFB1001C */ sw $s1, 0x1c($sp) -/* 07D28C 8007C68C AFB00018 */ sw $s0, 0x18($sp) -/* 07D290 8007C690 11E00003 */ beqz $t7, .L8007C6A0 -/* 07D294 8007C694 AFA40040 */ sw $a0, 0x40($sp) -/* 07D298 8007C698 10000065 */ b .L8007C830 -/* 07D29C 8007C69C 00001025 */ move $v0, $zero -.L8007C6A0: -/* 07D2A0 8007C6A0 3C138012 */ lui $s3, %hi(D_80126370) # $s3, 0x8012 -/* 07D2A4 8007C6A4 26736370 */ addiu $s3, %lo(D_80126370) # addiu $s3, $s3, 0x6370 -/* 07D2A8 8007C6A8 8E780000 */ lw $t8, ($s3) -/* 07D2AC 8007C6AC 3C108012 */ lui $s0, %hi(D_80126338) # $s0, 0x8012 -/* 07D2B0 8007C6B0 17000059 */ bnez $t8, .L8007C818 -/* 07D2B4 8007C6B4 26106338 */ addiu $s0, %lo(D_80126338) # addiu $s0, $s0, 0x6338 -/* 07D2B8 8007C6B8 8E040000 */ lw $a0, ($s0) -/* 07D2BC 8007C6BC 3C05FF00 */ lui $a1, (0xFF00FFFF >> 16) # lui $a1, 0xff00 -/* 07D2C0 8007C6C0 0C01C327 */ jal func_80070C9C -/* 07D2C4 8007C6C4 34A5FFFF */ ori $a1, (0xFF00FFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 07D2C8 8007C6C8 8E190000 */ lw $t9, ($s0) -/* 07D2CC 8007C6CC AE620000 */ sw $v0, ($s3) -/* 07D2D0 8007C6D0 1B20000B */ blez $t9, .L8007C700 -/* 07D2D4 8007C6D4 0000A025 */ move $s4, $zero -.L8007C6D8: -/* 07D2D8 8007C6D8 8E680000 */ lw $t0, ($s3) -/* 07D2DC 8007C6DC 00000000 */ nop -/* 07D2E0 8007C6E0 01144821 */ addu $t1, $t0, $s4 -/* 07D2E4 8007C6E4 A1200000 */ sb $zero, ($t1) -/* 07D2E8 8007C6E8 8E0A0000 */ lw $t2, ($s0) -/* 07D2EC 8007C6EC 26940001 */ addiu $s4, $s4, 1 -/* 07D2F0 8007C6F0 028A082A */ slt $at, $s4, $t2 -/* 07D2F4 8007C6F4 1420FFF8 */ bnez $at, .L8007C6D8 -/* 07D2F8 8007C6F8 00000000 */ nop -/* 07D2FC 8007C6FC 0000A025 */ move $s4, $zero -.L8007C700: -/* 07D300 8007C700 3C1E8012 */ lui $fp, %hi(D_80126354) # $fp, 0x8012 -/* 07D304 8007C704 27DE6354 */ addiu $fp, %lo(D_80126354) # addiu $fp, $fp, 0x6354 -/* 07D308 8007C708 8FCB0000 */ lw $t3, ($fp) -/* 07D30C 8007C70C 0000A825 */ move $s5, $zero -/* 07D310 8007C710 19600041 */ blez $t3, .L8007C818 -/* 07D314 8007C714 3C178012 */ lui $s7, %hi(D_80126348) # $s7, 0x8012 -/* 07D318 8007C718 3C168012 */ lui $s6, %hi(D_80126350) # $s6, 0x8012 -/* 07D31C 8007C71C 26D66350 */ addiu $s6, %lo(D_80126350) # addiu $s6, $s6, 0x6350 -/* 07D320 8007C720 26F76348 */ addiu $s7, %lo(D_80126348) # addiu $s7, $s7, 0x6348 -/* 07D324 8007C724 24120001 */ li $s2, 1 -.L8007C728: -/* 07D328 8007C728 8EEC0000 */ lw $t4, ($s7) -/* 07D32C 8007C72C 8ED10000 */ lw $s1, ($s6) -/* 07D330 8007C730 01951021 */ addu $v0, $t4, $s5 -/* 07D334 8007C734 8C460000 */ lw $a2, ($v0) -/* 07D338 8007C738 8C4D0004 */ lw $t5, 4($v0) -/* 07D33C 8007C73C 2404000C */ li $a0, 12 -/* 07D340 8007C740 00008025 */ move $s0, $zero -/* 07D344 8007C744 02202825 */ move $a1, $s1 -/* 07D348 8007C748 0C01DB9A */ jal func_80076E68 -/* 07D34C 8007C74C 01A63823 */ subu $a3, $t5, $a2 -/* 07D350 8007C750 862E0002 */ lh $t6, 2($s1) -/* 07D354 8007C754 00000000 */ nop -/* 07D358 8007C758 022E7821 */ addu $t7, $s1, $t6 -/* 07D35C 8007C75C 91E3000C */ lbu $v1, 0xc($t7) -/* 07D360 8007C760 00000000 */ nop -/* 07D364 8007C764 18600027 */ blez $v1, .L8007C804 -/* 07D368 8007C768 30640003 */ andi $a0, $v1, 3 -/* 07D36C 8007C76C 1080000B */ beqz $a0, .L8007C79C -/* 07D370 8007C770 00801025 */ move $v0, $a0 -.L8007C774: -/* 07D374 8007C774 8E780000 */ lw $t8, ($s3) -/* 07D378 8007C778 86390000 */ lh $t9, ($s1) -/* 07D37C 8007C77C 00000000 */ nop -/* 07D380 8007C780 03194021 */ addu $t0, $t8, $t9 -/* 07D384 8007C784 01104821 */ addu $t1, $t0, $s0 -/* 07D388 8007C788 26100001 */ addiu $s0, $s0, 1 -/* 07D38C 8007C78C 1450FFF9 */ bne $v0, $s0, .L8007C774 -/* 07D390 8007C790 A1320000 */ sb $s2, ($t1) -/* 07D394 8007C794 1203001B */ beq $s0, $v1, .L8007C804 -/* 07D398 8007C798 00000000 */ nop -.L8007C79C: -/* 07D39C 8007C79C 8E6A0000 */ lw $t2, ($s3) -/* 07D3A0 8007C7A0 862B0000 */ lh $t3, ($s1) -/* 07D3A4 8007C7A4 00000000 */ nop -/* 07D3A8 8007C7A8 014B6021 */ addu $t4, $t2, $t3 -/* 07D3AC 8007C7AC 01906821 */ addu $t5, $t4, $s0 -/* 07D3B0 8007C7B0 A1B20000 */ sb $s2, ($t5) -/* 07D3B4 8007C7B4 862F0000 */ lh $t7, ($s1) -/* 07D3B8 8007C7B8 8E6E0000 */ lw $t6, ($s3) -/* 07D3BC 8007C7BC 00000000 */ nop -/* 07D3C0 8007C7C0 01CFC021 */ addu $t8, $t6, $t7 -/* 07D3C4 8007C7C4 0310C821 */ addu $t9, $t8, $s0 -/* 07D3C8 8007C7C8 A3320001 */ sb $s2, 1($t9) -/* 07D3CC 8007C7CC 86290000 */ lh $t1, ($s1) -/* 07D3D0 8007C7D0 8E680000 */ lw $t0, ($s3) -/* 07D3D4 8007C7D4 00000000 */ nop -/* 07D3D8 8007C7D8 01095021 */ addu $t2, $t0, $t1 -/* 07D3DC 8007C7DC 01505821 */ addu $t3, $t2, $s0 -/* 07D3E0 8007C7E0 A1720002 */ sb $s2, 2($t3) -/* 07D3E4 8007C7E4 862D0000 */ lh $t5, ($s1) -/* 07D3E8 8007C7E8 8E6C0000 */ lw $t4, ($s3) -/* 07D3EC 8007C7EC 00000000 */ nop -/* 07D3F0 8007C7F0 018D7021 */ addu $t6, $t4, $t5 -/* 07D3F4 8007C7F4 01D07821 */ addu $t7, $t6, $s0 -/* 07D3F8 8007C7F8 26100004 */ addiu $s0, $s0, 4 -/* 07D3FC 8007C7FC 1603FFE7 */ bne $s0, $v1, .L8007C79C -/* 07D400 8007C800 A1F20003 */ sb $s2, 3($t7) -.L8007C804: -/* 07D404 8007C804 8FD80000 */ lw $t8, ($fp) -/* 07D408 8007C808 26940001 */ addiu $s4, $s4, 1 -/* 07D40C 8007C80C 0298082A */ slt $at, $s4, $t8 -/* 07D410 8007C810 1420FFC5 */ bnez $at, .L8007C728 -/* 07D414 8007C814 26B50004 */ addiu $s5, $s5, 4 -.L8007C818: -/* 07D418 8007C818 8E790000 */ lw $t9, ($s3) -/* 07D41C 8007C81C 8FA80040 */ lw $t0, 0x40($sp) -/* 07D420 8007C820 00000000 */ nop -/* 07D424 8007C824 03284821 */ addu $t1, $t9, $t0 -/* 07D428 8007C828 91220000 */ lbu $v0, ($t1) -/* 07D42C 8007C82C 00000000 */ nop -.L8007C830: -/* 07D430 8007C830 8FBF003C */ lw $ra, 0x3c($sp) -/* 07D434 8007C834 8FB00018 */ lw $s0, 0x18($sp) -/* 07D438 8007C838 8FB1001C */ lw $s1, 0x1c($sp) -/* 07D43C 8007C83C 8FB20020 */ lw $s2, 0x20($sp) -/* 07D440 8007C840 8FB30024 */ lw $s3, 0x24($sp) -/* 07D444 8007C844 8FB40028 */ lw $s4, 0x28($sp) -/* 07D448 8007C848 8FB5002C */ lw $s5, 0x2c($sp) -/* 07D44C 8007C84C 8FB60030 */ lw $s6, 0x30($sp) -/* 07D450 8007C850 8FB70034 */ lw $s7, 0x34($sp) -/* 07D454 8007C854 8FBE0038 */ lw $fp, 0x38($sp) -/* 07D458 8007C858 03E00008 */ jr $ra -/* 07D45C 8007C85C 27BD0040 */ addiu $sp, $sp, 0x40 - -/* 07D460 8007C860 04800006 */ bltz $a0, .L8007C87C -/* 07D464 8007C864 3C0E8012 */ lui $t6, %hi(D_80126330) # $t6, 0x8012 -/* 07D468 8007C868 8DCE6330 */ lw $t6, %lo(D_80126330)($t6) -/* 07D46C 8007C86C 3C0F8012 */ lui $t7, 0x8012 -/* 07D470 8007C870 008E082A */ slt $at, $a0, $t6 -/* 07D474 8007C874 14200003 */ bnez $at, .L8007C884 -/* 07D478 8007C878 00000000 */ nop -.L8007C87C: -/* 07D47C 8007C87C 03E00008 */ jr $ra -/* 07D480 8007C880 2402FFFF */ li $v0, -1 - -.L8007C884: -/* 07D484 8007C884 8DEF6328 */ lw $t7, 0x6328($t7) -/* 07D488 8007C888 0004C8C0 */ sll $t9, $a0, 3 -/* 07D48C 8007C88C 01F94021 */ addu $t0, $t7, $t9 -/* 07D490 8007C890 8D020000 */ lw $v0, ($t0) -/* 07D494 8007C894 00000000 */ nop -/* 07D498 8007C898 03E00008 */ jr $ra -/* 07D49C 8007C89C 00000000 */ nop - -/* 07D4A0 8007C8A0 04800006 */ bltz $a0, .L8007C8BC -/* 07D4A4 8007C8A4 3C0E8012 */ lui $t6, %hi(D_80126358) # $t6, 0x8012 -/* 07D4A8 8007C8A8 8DCE6358 */ lw $t6, %lo(D_80126358)($t6) -/* 07D4AC 8007C8AC 3C0F8012 */ lui $t7, 0x8012 -/* 07D4B0 8007C8B0 008E082A */ slt $at, $a0, $t6 -/* 07D4B4 8007C8B4 14200003 */ bnez $at, .L8007C8C4 -/* 07D4B8 8007C8B8 00000000 */ nop -.L8007C8BC: -/* 07D4BC 8007C8BC 03E00008 */ jr $ra -/* 07D4C0 8007C8C0 2402FFFF */ li $v0, -1 - -.L8007C8C4: -/* 07D4C4 8007C8C4 8DEF634C */ lw $t7, 0x634c($t7) -/* 07D4C8 8007C8C8 0004C8C0 */ sll $t9, $a0, 3 -/* 07D4CC 8007C8CC 01F94021 */ addu $t0, $t7, $t9 -/* 07D4D0 8007C8D0 8D020000 */ lw $v0, ($t0) -/* 07D4D4 8007C8D4 00000000 */ nop -/* 07D4D8 8007C8D8 03E00008 */ jr $ra -/* 07D4DC 8007C8DC 00000000 */ nop - -glabel func_8007C8E0 -/* 07D4E0 8007C8E0 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 07D4E4 8007C8E4 AFB00018 */ sw $s0, 0x18($sp) -/* 07D4E8 8007C8E8 00808025 */ move $s0, $a0 -/* 07D4EC 8007C8EC AFBF002C */ sw $ra, 0x2c($sp) -/* 07D4F0 8007C8F0 AFB40028 */ sw $s4, 0x28($sp) -/* 07D4F4 8007C8F4 AFB30024 */ sw $s3, 0x24($sp) -/* 07D4F8 8007C8F8 AFB20020 */ sw $s2, 0x20($sp) -/* 07D4FC 8007C8FC AFB1001C */ sw $s1, 0x1c($sp) -/* 07D500 8007C900 AFA50034 */ sw $a1, 0x34($sp) -/* 07D504 8007C904 AFA60038 */ sw $a2, 0x38($sp) -/* 07D508 8007C908 04800007 */ bltz $a0, .L8007C928 -/* 07D50C 8007C90C AFA7003C */ sw $a3, 0x3c($sp) -/* 07D510 8007C910 3C0E8012 */ lui $t6, %hi(D_80126354) # $t6, 0x8012 -/* 07D514 8007C914 8DCE6354 */ lw $t6, %lo(D_80126354)($t6) -/* 07D518 8007C918 3C088012 */ lui $t0, %hi(D_80126348) # $t0, 0x8012 -/* 07D51C 8007C91C 008E082A */ slt $at, $a0, $t6 -/* 07D520 8007C920 1420000A */ bnez $at, .L8007C94C -/* 07D524 8007C924 00104880 */ sll $t1, $s0, 2 -.L8007C928: -/* 07D528 8007C928 8FAF0034 */ lw $t7, 0x34($sp) -/* 07D52C 8007C92C 00001025 */ move $v0, $zero -/* 07D530 8007C930 ADE00000 */ sw $zero, ($t7) -/* 07D534 8007C934 8FB80038 */ lw $t8, 0x38($sp) -/* 07D538 8007C938 00000000 */ nop -/* 07D53C 8007C93C AF000000 */ sw $zero, ($t8) -/* 07D540 8007C940 8FB9003C */ lw $t9, 0x3c($sp) -/* 07D544 8007C944 10000040 */ b .L8007CA48 -/* 07D548 8007C948 AF200000 */ sw $zero, ($t9) -.L8007C94C: -/* 07D54C 8007C94C 8D086348 */ lw $t0, %lo(D_80126348)($t0) -/* 07D550 8007C950 3C138012 */ lui $s3, %hi(D_80126350) # $s3, 0x8012 -/* 07D554 8007C954 01091021 */ addu $v0, $t0, $t1 -/* 07D558 8007C958 8C460000 */ lw $a2, ($v0) -/* 07D55C 8007C95C 8C4A0004 */ lw $t2, 4($v0) -/* 07D560 8007C960 8E736350 */ lw $s3, %lo(D_80126350)($s3) -/* 07D564 8007C964 2404000C */ li $a0, 12 -/* 07D568 8007C968 01463823 */ subu $a3, $t2, $a2 -/* 07D56C 8007C96C 0C01DB9A */ jal func_80076E68 -/* 07D570 8007C970 02602825 */ move $a1, $s3 -/* 07D574 8007C974 926B000C */ lbu $t3, 0xc($s3) -/* 07D578 8007C978 866C0000 */ lh $t4, ($s3) -/* 07D57C 8007C97C 0C01EB9D */ jal func_8007AE74 -/* 07D580 8007C980 016C2021 */ addu $a0, $t3, $t4 -/* 07D584 8007C984 1040FFE8 */ beqz $v0, .L8007C928 -/* 07D588 8007C988 00402025 */ move $a0, $v0 -/* 07D58C 8007C98C 904D0002 */ lbu $t5, 2($v0) -/* 07D590 8007C990 8FAF0040 */ lw $t7, 0x40($sp) -/* 07D594 8007C994 31AE000F */ andi $t6, $t5, 0xf -/* 07D598 8007C998 0C01ECAF */ jal func_8007B2BC -/* 07D59C 8007C99C ADEE0000 */ sw $t6, ($t7) -/* 07D5A0 8007C9A0 8FB10044 */ lw $s1, 0x44($sp) -/* 07D5A4 8007C9A4 0000A025 */ move $s4, $zero -/* 07D5A8 8007C9A8 AE200000 */ sw $zero, ($s1) -/* 07D5AC 8007C9AC 86630002 */ lh $v1, 2($s3) -/* 07D5B0 8007C9B0 02609025 */ move $s2, $s3 -/* 07D5B4 8007C9B4 1860001A */ blez $v1, .L8007CA20 -/* 07D5B8 8007C9B8 8FAB003C */ lw $t3, 0x3c($sp) -.L8007C9BC: -/* 07D5BC 8007C9BC 9250000C */ lbu $s0, 0xc($s2) -/* 07D5C0 8007C9C0 9258000D */ lbu $t8, 0xd($s2) -/* 07D5C4 8007C9C4 00000000 */ nop -/* 07D5C8 8007C9C8 0218082A */ slt $at, $s0, $t8 -/* 07D5CC 8007C9CC 1020000F */ beqz $at, .L8007CA0C -/* 07D5D0 8007C9D0 00000000 */ nop -.L8007C9D4: -/* 07D5D4 8007C9D4 86790000 */ lh $t9, ($s3) -/* 07D5D8 8007C9D8 0C01F15F */ jal func_8007C57C -/* 07D5DC 8007C9DC 03302021 */ addu $a0, $t9, $s0 -/* 07D5E0 8007C9E0 8E280000 */ lw $t0, ($s1) -/* 07D5E4 8007C9E4 26100001 */ addiu $s0, $s0, 1 -/* 07D5E8 8007C9E8 01024821 */ addu $t1, $t0, $v0 -/* 07D5EC 8007C9EC AE290000 */ sw $t1, ($s1) -/* 07D5F0 8007C9F0 924A000D */ lbu $t2, 0xd($s2) -/* 07D5F4 8007C9F4 00000000 */ nop -/* 07D5F8 8007C9F8 020A082A */ slt $at, $s0, $t2 -/* 07D5FC 8007C9FC 1420FFF5 */ bnez $at, .L8007C9D4 -/* 07D600 8007CA00 00000000 */ nop -/* 07D604 8007CA04 86630002 */ lh $v1, 2($s3) -/* 07D608 8007CA08 00000000 */ nop -.L8007CA0C: -/* 07D60C 8007CA0C 26940001 */ addiu $s4, $s4, 1 -/* 07D610 8007CA10 0283082A */ slt $at, $s4, $v1 -/* 07D614 8007CA14 1420FFE9 */ bnez $at, .L8007C9BC -/* 07D618 8007CA18 26520001 */ addiu $s2, $s2, 1 -/* 07D61C 8007CA1C 8FAB003C */ lw $t3, 0x3c($sp) -.L8007CA20: -/* 07D620 8007CA20 24020001 */ li $v0, 1 -/* 07D624 8007CA24 AD630000 */ sw $v1, ($t3) -/* 07D628 8007CA28 8FAD0034 */ lw $t5, 0x34($sp) -/* 07D62C 8007CA2C 866C0004 */ lh $t4, 4($s3) -/* 07D630 8007CA30 00000000 */ nop -/* 07D634 8007CA34 ADAC0000 */ sw $t4, ($t5) -/* 07D638 8007CA38 8FAF0038 */ lw $t7, 0x38($sp) -/* 07D63C 8007CA3C 866E0006 */ lh $t6, 6($s3) -/* 07D640 8007CA40 00000000 */ nop -/* 07D644 8007CA44 ADEE0000 */ sw $t6, ($t7) -.L8007CA48: -/* 07D648 8007CA48 8FBF002C */ lw $ra, 0x2c($sp) -/* 07D64C 8007CA4C 8FB00018 */ lw $s0, 0x18($sp) -/* 07D650 8007CA50 8FB1001C */ lw $s1, 0x1c($sp) -/* 07D654 8007CA54 8FB20020 */ lw $s2, 0x20($sp) -/* 07D658 8007CA58 8FB30024 */ lw $s3, 0x24($sp) -/* 07D65C 8007CA5C 8FB40028 */ lw $s4, 0x28($sp) -/* 07D660 8007CA60 03E00008 */ jr $ra -/* 07D664 8007CA64 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_8007CA68 -/* 07D668 8007CA68 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 07D66C 8007CA6C AFB1001C */ sw $s1, 0x1c($sp) -/* 07D670 8007CA70 AFB00018 */ sw $s0, 0x18($sp) -/* 07D674 8007CA74 00808025 */ move $s0, $a0 -/* 07D678 8007CA78 00A08825 */ move $s1, $a1 -/* 07D67C 8007CA7C AFBF003C */ sw $ra, 0x3c($sp) -/* 07D680 8007CA80 AFBE0038 */ sw $fp, 0x38($sp) -/* 07D684 8007CA84 AFB70034 */ sw $s7, 0x34($sp) -/* 07D688 8007CA88 AFB60030 */ sw $s6, 0x30($sp) -/* 07D68C 8007CA8C AFB5002C */ sw $s5, 0x2c($sp) -/* 07D690 8007CA90 AFB40028 */ sw $s4, 0x28($sp) -/* 07D694 8007CA94 AFB30024 */ sw $s3, 0x24($sp) -/* 07D698 8007CA98 AFB20020 */ sw $s2, 0x20($sp) -/* 07D69C 8007CA9C AFA60048 */ sw $a2, 0x48($sp) -/* 07D6A0 8007CAA0 04800007 */ bltz $a0, .L8007CAC0 -/* 07D6A4 8007CAA4 AFA7004C */ sw $a3, 0x4c($sp) -/* 07D6A8 8007CAA8 3C0E8012 */ lui $t6, %hi(D_80126354) # $t6, 0x8012 -/* 07D6AC 8007CAAC 8DCE6354 */ lw $t6, %lo(D_80126354)($t6) -/* 07D6B0 8007CAB0 3C198012 */ lui $t9, %hi(D_80126348) # $t9, 0x8012 -/* 07D6B4 8007CAB4 008E082A */ slt $at, $a0, $t6 -/* 07D6B8 8007CAB8 14200007 */ bnez $at, .L8007CAD8 -/* 07D6BC 8007CABC 00104080 */ sll $t0, $s0, 2 -.L8007CAC0: -/* 07D6C0 8007CAC0 8FAF0048 */ lw $t7, 0x48($sp) -/* 07D6C4 8007CAC4 00000000 */ nop -/* 07D6C8 8007CAC8 ADE00000 */ sw $zero, ($t7) -/* 07D6CC 8007CACC 8FB8004C */ lw $t8, 0x4c($sp) -/* 07D6D0 8007CAD0 1000006B */ b .L8007CC80 -/* 07D6D4 8007CAD4 AF000000 */ sw $zero, ($t8) -.L8007CAD8: -/* 07D6D8 8007CAD8 8F396348 */ lw $t9, %lo(D_80126348)($t9) -/* 07D6DC 8007CADC 3C128012 */ lui $s2, %hi(D_80126350) # $s2, 0x8012 -/* 07D6E0 8007CAE0 03281021 */ addu $v0, $t9, $t0 -/* 07D6E4 8007CAE4 8C460000 */ lw $a2, ($v0) -/* 07D6E8 8007CAE8 8C490004 */ lw $t1, 4($v0) -/* 07D6EC 8007CAEC 8E526350 */ lw $s2, %lo(D_80126350)($s2) -/* 07D6F0 8007CAF0 2404000C */ li $a0, 12 -/* 07D6F4 8007CAF4 01263823 */ subu $a3, $t1, $a2 -/* 07D6F8 8007CAF8 0C01DB9A */ jal func_80076E68 -/* 07D6FC 8007CAFC 02402825 */ move $a1, $s2 -/* 07D700 8007CB00 864A0002 */ lh $t2, 2($s2) -/* 07D704 8007CB04 8FB70050 */ lw $s7, 0x50($sp) -/* 07D708 8007CB08 0151082A */ slt $at, $t2, $s1 -/* 07D70C 8007CB0C 10200009 */ beqz $at, .L8007CB34 -/* 07D710 8007CB10 0251F021 */ addu $fp, $s2, $s1 -.L8007CB14: -/* 07D714 8007CB14 8FAB0048 */ lw $t3, 0x48($sp) -.L8007CB18: -/* 07D718 8007CB18 00000000 */ nop -/* 07D71C 8007CB1C AD600000 */ sw $zero, ($t3) -/* 07D720 8007CB20 8FAC004C */ lw $t4, 0x4c($sp) -/* 07D724 8007CB24 00000000 */ nop -/* 07D728 8007CB28 AD800000 */ sw $zero, ($t4) -/* 07D72C 8007CB2C 10000054 */ b .L8007CC80 -/* 07D730 8007CB30 AEE00000 */ sw $zero, ($s7) -.L8007CB34: -/* 07D734 8007CB34 93CD000C */ lbu $t5, 0xc($fp) -/* 07D738 8007CB38 864E0000 */ lh $t6, ($s2) -/* 07D73C 8007CB3C 0C01EB9D */ jal func_8007AE74 -/* 07D740 8007CB40 01AE2021 */ addu $a0, $t5, $t6 -/* 07D744 8007CB44 14400004 */ bnez $v0, .L8007CB58 -/* 07D748 8007CB48 00408025 */ move $s0, $v0 -/* 07D74C 8007CB4C 8FB70050 */ lw $s7, 0x50($sp) -/* 07D750 8007CB50 1000FFF1 */ b .L8007CB18 -/* 07D754 8007CB54 8FAB0048 */ lw $t3, 0x48($sp) -.L8007CB58: -/* 07D758 8007CB58 93CF000C */ lbu $t7, 0xc($fp) -/* 07D75C 8007CB5C 86580000 */ lh $t8, ($s2) -/* 07D760 8007CB60 0C01F15F */ jal func_8007C57C -/* 07D764 8007CB64 01F82021 */ addu $a0, $t7, $t8 -/* 07D768 8007CB68 8FB70050 */ lw $s7, 0x50($sp) -/* 07D76C 8007CB6C 02002025 */ move $a0, $s0 -/* 07D770 8007CB70 AEE20000 */ sw $v0, ($s7) -/* 07D774 8007CB74 86480004 */ lh $t0, 4($s2) -/* 07D778 8007CB78 82190003 */ lb $t9, 3($s0) -/* 07D77C 8007CB7C 820A0004 */ lb $t2, 4($s0) -/* 07D780 8007CB80 86490006 */ lh $t1, 6($s2) -/* 07D784 8007CB84 92050000 */ lbu $a1, ($s0) -/* 07D788 8007CB88 92060001 */ lbu $a2, 1($s0) -/* 07D78C 8007CB8C 03289823 */ subu $s3, $t9, $t0 -/* 07D790 8007CB90 012AA023 */ subu $s4, $t1, $t2 -/* 07D794 8007CB94 0265A821 */ addu $s5, $s3, $a1 -/* 07D798 8007CB98 0C01ECAF */ jal func_8007B2BC -/* 07D79C 8007CB9C 0286B023 */ subu $s6, $s4, $a2 -/* 07D7A0 8007CBA0 93D1000C */ lbu $s1, 0xc($fp) -/* 07D7A4 8007CBA4 93CB000D */ lbu $t3, 0xd($fp) -/* 07D7A8 8007CBA8 26310001 */ addiu $s1, $s1, 1 -/* 07D7AC 8007CBAC 022B082A */ slt $at, $s1, $t3 -/* 07D7B0 8007CBB0 1020002E */ beqz $at, .L8007CC6C -/* 07D7B4 8007CBB4 8FAC0048 */ lw $t4, 0x48($sp) -.L8007CBB8: -/* 07D7B8 8007CBB8 864C0000 */ lh $t4, ($s2) -/* 07D7BC 8007CBBC 0C01EB9D */ jal func_8007AE74 -/* 07D7C0 8007CBC0 01912021 */ addu $a0, $t4, $s1 -/* 07D7C4 8007CBC4 1040FFD3 */ beqz $v0, .L8007CB14 -/* 07D7C8 8007CBC8 00408025 */ move $s0, $v0 -/* 07D7CC 8007CBCC 864D0000 */ lh $t5, ($s2) -/* 07D7D0 8007CBD0 0C01F15F */ jal func_8007C57C -/* 07D7D4 8007CBD4 01B12021 */ addu $a0, $t5, $s1 -/* 07D7D8 8007CBD8 8EEE0000 */ lw $t6, ($s7) -/* 07D7DC 8007CBDC 00000000 */ nop -/* 07D7E0 8007CBE0 01C27821 */ addu $t7, $t6, $v0 -/* 07D7E4 8007CBE4 AEEF0000 */ sw $t7, ($s7) -/* 07D7E8 8007CBE8 86590004 */ lh $t9, 4($s2) -/* 07D7EC 8007CBEC 82180003 */ lb $t8, 3($s0) -/* 07D7F0 8007CBF0 82090004 */ lb $t1, 4($s0) -/* 07D7F4 8007CBF4 86480006 */ lh $t0, 6($s2) -/* 07D7F8 8007CBF8 03191823 */ subu $v1, $t8, $t9 -/* 07D7FC 8007CBFC 92050000 */ lbu $a1, ($s0) -/* 07D800 8007CC00 92060001 */ lbu $a2, 1($s0) -/* 07D804 8007CC04 0073082A */ slt $at, $v1, $s3 -/* 07D808 8007CC08 10200002 */ beqz $at, .L8007CC14 -/* 07D80C 8007CC0C 01092023 */ subu $a0, $t0, $t1 -/* 07D810 8007CC10 00609825 */ move $s3, $v1 -.L8007CC14: -/* 07D814 8007CC14 00651021 */ addu $v0, $v1, $a1 -/* 07D818 8007CC18 02A2082A */ slt $at, $s5, $v0 -/* 07D81C 8007CC1C 10200002 */ beqz $at, .L8007CC28 -/* 07D820 8007CC20 00000000 */ nop -/* 07D824 8007CC24 0040A825 */ move $s5, $v0 -.L8007CC28: -/* 07D828 8007CC28 00861023 */ subu $v0, $a0, $a2 -/* 07D82C 8007CC2C 0056082A */ slt $at, $v0, $s6 -/* 07D830 8007CC30 10200003 */ beqz $at, .L8007CC40 -/* 07D834 8007CC34 0284082A */ slt $at, $s4, $a0 -/* 07D838 8007CC38 0040B025 */ move $s6, $v0 -/* 07D83C 8007CC3C 0284082A */ slt $at, $s4, $a0 -.L8007CC40: -/* 07D840 8007CC40 10200002 */ beqz $at, .L8007CC4C -/* 07D844 8007CC44 00000000 */ nop -/* 07D848 8007CC48 0080A025 */ move $s4, $a0 -.L8007CC4C: -/* 07D84C 8007CC4C 0C01ECAF */ jal func_8007B2BC -/* 07D850 8007CC50 02002025 */ move $a0, $s0 -/* 07D854 8007CC54 93CA000D */ lbu $t2, 0xd($fp) -/* 07D858 8007CC58 26310001 */ addiu $s1, $s1, 1 -/* 07D85C 8007CC5C 022A082A */ slt $at, $s1, $t2 -/* 07D860 8007CC60 1420FFD5 */ bnez $at, .L8007CBB8 -/* 07D864 8007CC64 00000000 */ nop -/* 07D868 8007CC68 8FAC0048 */ lw $t4, 0x48($sp) -.L8007CC6C: -/* 07D86C 8007CC6C 02B35823 */ subu $t3, $s5, $s3 -/* 07D870 8007CC70 AD8B0000 */ sw $t3, ($t4) -/* 07D874 8007CC74 8FAE004C */ lw $t6, 0x4c($sp) -/* 07D878 8007CC78 02966823 */ subu $t5, $s4, $s6 -/* 07D87C 8007CC7C ADCD0000 */ sw $t5, ($t6) -.L8007CC80: -/* 07D880 8007CC80 8FBF003C */ lw $ra, 0x3c($sp) -/* 07D884 8007CC84 8FB00018 */ lw $s0, 0x18($sp) -/* 07D888 8007CC88 8FB1001C */ lw $s1, 0x1c($sp) -/* 07D88C 8007CC8C 8FB20020 */ lw $s2, 0x20($sp) -/* 07D890 8007CC90 8FB30024 */ lw $s3, 0x24($sp) -/* 07D894 8007CC94 8FB40028 */ lw $s4, 0x28($sp) -/* 07D898 8007CC98 8FB5002C */ lw $s5, 0x2c($sp) -/* 07D89C 8007CC9C 8FB60030 */ lw $s6, 0x30($sp) -/* 07D8A0 8007CCA0 8FB70034 */ lw $s7, 0x34($sp) -/* 07D8A4 8007CCA4 8FBE0038 */ lw $fp, 0x38($sp) -/* 07D8A8 8007CCA8 03E00008 */ jr $ra -/* 07D8AC 8007CCAC 27BD0040 */ addiu $sp, $sp, 0x40 - -glabel func_8007CCB0 -/* 07D8B0 8007CCB0 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 07D8B4 8007CCB4 AFB2001C */ sw $s2, 0x1c($sp) -/* 07D8B8 8007CCB8 00809025 */ move $s2, $a0 -/* 07D8BC 8007CCBC AFBF0024 */ sw $ra, 0x24($sp) -/* 07D8C0 8007CCC0 AFB30020 */ sw $s3, 0x20($sp) -/* 07D8C4 8007CCC4 AFB10018 */ sw $s1, 0x18($sp) -/* 07D8C8 8007CCC8 10800036 */ beqz $a0, .L8007CDA4 -/* 07D8CC 8007CCCC AFB00014 */ sw $s0, 0x14($sp) -/* 07D8D0 8007CCD0 848E0004 */ lh $t6, 4($a0) -/* 07D8D4 8007CCD4 3C038012 */ lui $v1, %hi(D_80126358) # $v1, 0x8012 -/* 07D8D8 8007CCD8 25CFFFFF */ addiu $t7, $t6, -1 -/* 07D8DC 8007CCDC A48F0004 */ sh $t7, 4($a0) -/* 07D8E0 8007CCE0 84980004 */ lh $t8, 4($a0) -/* 07D8E4 8007CCE4 00000000 */ nop -/* 07D8E8 8007CCE8 1F00002F */ bgtz $t8, .L8007CDA8 -/* 07D8EC 8007CCEC 8FBF0024 */ lw $ra, 0x24($sp) -/* 07D8F0 8007CCF0 8C636358 */ lw $v1, %lo(D_80126358)($v1) -/* 07D8F4 8007CCF4 00001025 */ move $v0, $zero -/* 07D8F8 8007CCF8 1860002A */ blez $v1, .L8007CDA4 -/* 07D8FC 8007CCFC 3C048012 */ lui $a0, %hi(D_8012634C) # $a0, 0x8012 -/* 07D900 8007CD00 8C84634C */ lw $a0, %lo(D_8012634C)($a0) -/* 07D904 8007CD04 00000000 */ nop -/* 07D908 8007CD08 00409825 */ move $s3, $v0 -.L8007CD0C: -/* 07D90C 8007CD0C 0013C8C0 */ sll $t9, $s3, 3 -/* 07D910 8007CD10 00994021 */ addu $t0, $a0, $t9 -/* 07D914 8007CD14 8D090004 */ lw $t1, 4($t0) -/* 07D918 8007CD18 03209825 */ move $s3, $t9 -/* 07D91C 8007CD1C 1649001E */ bne $s2, $t1, .L8007CD98 -/* 07D920 8007CD20 24420001 */ addiu $v0, $v0, 1 -/* 07D924 8007CD24 864A0002 */ lh $t2, 2($s2) -/* 07D928 8007CD28 00008025 */ move $s0, $zero -/* 07D92C 8007CD2C 1940000C */ blez $t2, .L8007CD60 -/* 07D930 8007CD30 00008825 */ move $s1, $zero -.L8007CD34: -/* 07D934 8007CD34 8E4B0008 */ lw $t3, 8($s2) -/* 07D938 8007CD38 00000000 */ nop -/* 07D93C 8007CD3C 01716021 */ addu $t4, $t3, $s1 -/* 07D940 8007CD40 8D840000 */ lw $a0, ($t4) -/* 07D944 8007CD44 0C01ECAF */ jal func_8007B2BC -/* 07D948 8007CD48 00000000 */ nop -/* 07D94C 8007CD4C 864D0002 */ lh $t5, 2($s2) -/* 07D950 8007CD50 26100001 */ addiu $s0, $s0, 1 -/* 07D954 8007CD54 020D082A */ slt $at, $s0, $t5 -/* 07D958 8007CD58 1420FFF6 */ bnez $at, .L8007CD34 -/* 07D95C 8007CD5C 26310004 */ addiu $s1, $s1, 4 -.L8007CD60: -/* 07D960 8007CD60 0C01C450 */ jal func_80071140 -/* 07D964 8007CD64 02402025 */ move $a0, $s2 -/* 07D968 8007CD68 3C028012 */ lui $v0, %hi(D_8012634C) # $v0, 0x8012 -/* 07D96C 8007CD6C 2442634C */ addiu $v0, %lo(D_8012634C) # addiu $v0, $v0, 0x634c -/* 07D970 8007CD70 8C4E0000 */ lw $t6, ($v0) -/* 07D974 8007CD74 2403FFFF */ li $v1, -1 -/* 07D978 8007CD78 01D37821 */ addu $t7, $t6, $s3 -/* 07D97C 8007CD7C ADE30000 */ sw $v1, ($t7) -/* 07D980 8007CD80 8C580000 */ lw $t8, ($v0) -/* 07D984 8007CD84 00000000 */ nop -/* 07D988 8007CD88 0313C821 */ addu $t9, $t8, $s3 -/* 07D98C 8007CD8C 10000005 */ b .L8007CDA4 -/* 07D990 8007CD90 AF230004 */ sw $v1, 4($t9) -/* 07D994 8007CD94 24420001 */ addiu $v0, $v0, 1 -.L8007CD98: -/* 07D998 8007CD98 0043082A */ slt $at, $v0, $v1 -/* 07D99C 8007CD9C 1420FFDB */ bnez $at, .L8007CD0C -/* 07D9A0 8007CDA0 00409825 */ move $s3, $v0 -.L8007CDA4: -/* 07D9A4 8007CDA4 8FBF0024 */ lw $ra, 0x24($sp) -.L8007CDA8: -/* 07D9A8 8007CDA8 8FB00014 */ lw $s0, 0x14($sp) -/* 07D9AC 8007CDAC 8FB10018 */ lw $s1, 0x18($sp) -/* 07D9B0 8007CDB0 8FB2001C */ lw $s2, 0x1c($sp) -/* 07D9B4 8007CDB4 8FB30020 */ lw $s3, 0x20($sp) -/* 07D9B8 8007CDB8 03E00008 */ jr $ra -/* 07D9BC 8007CDBC 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_8007CDC0 -/* 07D9C0 8007CDC0 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 07D9C4 8007CDC4 AFBF002C */ sw $ra, 0x2c($sp) -/* 07D9C8 8007CDC8 AFBE0028 */ sw $fp, 0x28($sp) -/* 07D9CC 8007CDCC AFB70024 */ sw $s7, 0x24($sp) -/* 07D9D0 8007CDD0 AFB60020 */ sw $s6, 0x20($sp) -/* 07D9D4 8007CDD4 AFB5001C */ sw $s5, 0x1c($sp) -/* 07D9D8 8007CDD8 AFB40018 */ sw $s4, 0x18($sp) -/* 07D9DC 8007CDDC AFB30014 */ sw $s3, 0x14($sp) -/* 07D9E0 8007CDE0 AFB20010 */ sw $s2, 0x10($sp) -/* 07D9E4 8007CDE4 AFB1000C */ sw $s1, 0xc($sp) -/* 07D9E8 8007CDE8 AFB00008 */ sw $s0, 8($sp) -/* 07D9EC 8007CDEC 848E0004 */ lh $t6, 4($a0) -/* 07D9F0 8007CDF0 00863821 */ addu $a3, $a0, $a2 -/* 07D9F4 8007CDF4 AFAE0034 */ sw $t6, 0x34($sp) -/* 07D9F8 8007CDF8 848F0006 */ lh $t7, 6($a0) -/* 07D9FC 8007CDFC 3C098012 */ lui $t1, %hi(D_80126364) # $t1, 0x8012 -/* 07DA00 8007CE00 AFAF0030 */ sw $t7, 0x30($sp) -/* 07DA04 8007CE04 90F2000C */ lbu $s2, 0xc($a3) -/* 07DA08 8007CE08 90FE000D */ lbu $fp, 0xd($a3) -/* 07DA0C 8007CE0C 3C028012 */ lui $v0, %hi(D_80126360) # $v0, 0x8012 -/* 07DA10 8007CE10 3C038012 */ lui $v1, %hi(D_80126368) # $v1, 0x8012 -/* 07DA14 8007CE14 8D296364 */ lw $t1, %lo(D_80126364)($t1) -/* 07DA18 8007CE18 8C426360 */ lw $v0, %lo(D_80126360)($v0) -/* 07DA1C 8007CE1C 8C636368 */ lw $v1, %lo(D_80126368)($v1) -/* 07DA20 8007CE20 025E082A */ slt $at, $s2, $fp -/* 07DA24 8007CE24 1020000A */ beqz $at, .L8007CE50 -/* 07DA28 8007CE28 00005025 */ move $t2, $zero -/* 07DA2C 8007CE2C 8CB80008 */ lw $t8, 8($a1) -/* 07DA30 8007CE30 0012C880 */ sll $t9, $s2, 2 -/* 07DA34 8007CE34 03197021 */ addu $t6, $t8, $t9 -/* 07DA38 8007CE38 8DC40000 */ lw $a0, ($t6) -/* 07DA3C 8007CE3C 00000000 */ nop -/* 07DA40 8007CE40 84980006 */ lh $t8, 6($a0) -/* 07DA44 8007CE44 00000000 */ nop -/* 07DA48 8007CE48 3319003B */ andi $t9, $t8, 0x3b -/* 07DA4C 8007CE4C A4B90006 */ sh $t9, 6($a1) -.L8007CE50: -/* 07DA50 8007CE50 025E082A */ slt $at, $s2, $fp -/* 07DA54 8007CE54 1020008C */ beqz $at, .L8007D088 -/* 07DA58 8007CE58 00006825 */ move $t5, $zero -/* 07DA5C 8007CE5C AFA50044 */ sw $a1, 0x44($sp) -/* 07DA60 8007CE60 240500FF */ li $a1, 255 -/* 07DA64 8007CE64 00129880 */ sll $s3, $s2, 2 -/* 07DA68 8007CE68 3C1F0700 */ lui $ra, 0x700 -/* 07DA6C 8007CE6C 24170040 */ li $s7, 64 -/* 07DA70 8007CE70 24150001 */ li $s5, 1 -/* 07DA74 8007CE74 3C148000 */ lui $s4, 0x8000 -/* 07DA78 8007CE78 8FAE0044 */ lw $t6, 0x44($sp) -.L8007CE7C: -/* 07DA7C 8007CE7C 0040B025 */ move $s6, $v0 -/* 07DA80 8007CE80 8DCF0008 */ lw $t7, 8($t6) -/* 07DA84 8007CE84 8FAE0034 */ lw $t6, 0x34($sp) -/* 07DA88 8007CE88 01F3C021 */ addu $t8, $t7, $s3 -/* 07DA8C 8007CE8C 8F040000 */ lw $a0, ($t8) -/* 07DA90 8007CE90 8FAF0030 */ lw $t7, 0x30($sp) -/* 07DA94 8007CE94 90900000 */ lbu $s0, ($a0) -/* 07DA98 8007CE98 90910001 */ lbu $s1, 1($a0) -/* 07DA9C 8007CE9C 80990003 */ lb $t9, 3($a0) -/* 07DAA0 8007CEA0 80980004 */ lb $t8, 4($a0) -/* 07DAA4 8007CEA4 032E4023 */ subu $t0, $t9, $t6 -/* 07DAA8 8007CEA8 01F83023 */ subu $a2, $t7, $t8 -/* 07DAAC 8007CEAC 01105821 */ addu $t3, $t0, $s0 -/* 07DAB0 8007CEB0 24C7FFFF */ addiu $a3, $a2, -1 -/* 07DAB4 8007CEB4 256BFFFF */ addiu $t3, $t3, -1 -/* 07DAB8 8007CEB8 00D16023 */ subu $t4, $a2, $s1 -/* 07DABC 8007CEBC A4480000 */ sh $t0, ($v0) -/* 07DAC0 8007CEC0 A4470002 */ sh $a3, 2($v0) -/* 07DAC4 8007CEC4 A4400004 */ sh $zero, 4($v0) -/* 07DAC8 8007CEC8 A0450006 */ sb $a1, 6($v0) -/* 07DACC 8007CECC A0450007 */ sb $a1, 7($v0) -/* 07DAD0 8007CED0 A0450008 */ sb $a1, 8($v0) -/* 07DAD4 8007CED4 A0450009 */ sb $a1, 9($v0) -/* 07DAD8 8007CED8 A44B000A */ sh $t3, 0xa($v0) -/* 07DADC 8007CEDC A447000C */ sh $a3, 0xc($v0) -/* 07DAE0 8007CEE0 A440000E */ sh $zero, 0xe($v0) -/* 07DAE4 8007CEE4 A0450010 */ sb $a1, 0x10($v0) -/* 07DAE8 8007CEE8 A0450011 */ sb $a1, 0x11($v0) -/* 07DAEC 8007CEEC A0450012 */ sb $a1, 0x12($v0) -/* 07DAF0 8007CEF0 A0450013 */ sb $a1, 0x13($v0) -/* 07DAF4 8007CEF4 A44B0014 */ sh $t3, 0x14($v0) -/* 07DAF8 8007CEF8 A44C0016 */ sh $t4, 0x16($v0) -/* 07DAFC 8007CEFC A4400018 */ sh $zero, 0x18($v0) -/* 07DB00 8007CF00 A045001A */ sb $a1, 0x1a($v0) -/* 07DB04 8007CF04 A045001B */ sb $a1, 0x1b($v0) -/* 07DB08 8007CF08 A045001C */ sb $a1, 0x1c($v0) -/* 07DB0C 8007CF0C A045001D */ sb $a1, 0x1d($v0) -/* 07DB10 8007CF10 A448001E */ sh $t0, 0x1e($v0) -/* 07DB14 8007CF14 A44C0020 */ sh $t4, 0x20($v0) -/* 07DB18 8007CF18 A4400022 */ sh $zero, 0x22($v0) -/* 07DB1C 8007CF1C A0450024 */ sb $a1, 0x24($v0) -/* 07DB20 8007CF20 A0450025 */ sb $a1, 0x25($v0) -/* 07DB24 8007CF24 A0450026 */ sb $a1, 0x26($v0) -/* 07DB28 8007CF28 A0450027 */ sb $a1, 0x27($v0) -/* 07DB2C 8007CF2C 8487000A */ lh $a3, 0xa($a0) -/* 07DB30 8007CF30 01203025 */ move $a2, $t1 -/* 07DB34 8007CF34 30F900FF */ andi $t9, $a3, 0xff -/* 07DB38 8007CF38 00197400 */ sll $t6, $t9, 0x10 -/* 07DB3C 8007CF3C 0007C0C0 */ sll $t8, $a3, 3 -/* 07DB40 8007CF40 3319FFFF */ andi $t9, $t8, 0xffff -/* 07DB44 8007CF44 01DF7825 */ or $t7, $t6, $ra -/* 07DB48 8007CF48 01F97025 */ or $t6, $t7, $t9 -/* 07DB4C 8007CF4C ACCE0000 */ sw $t6, ($a2) -/* 07DB50 8007CF50 8C98000C */ lw $t8, 0xc($a0) -/* 07DB54 8007CF54 24420028 */ addiu $v0, $v0, 0x28 -/* 07DB58 8007CF58 03147821 */ addu $t7, $t8, $s4 -/* 07DB5C 8007CF5C ACCF0004 */ sw $t7, 4($a2) -/* 07DB60 8007CF60 15A0001A */ bnez $t5, .L8007CFCC -/* 07DB64 8007CF64 25290008 */ addiu $t1, $t1, 8 -/* 07DB68 8007CF68 03D24023 */ subu $t0, $fp, $s2 -/* 07DB6C 8007CF6C 29010006 */ slti $at, $t0, 6 -/* 07DB70 8007CF70 14200002 */ bnez $at, .L8007CF7C -/* 07DB74 8007CF74 01203025 */ move $a2, $t1 -/* 07DB78 8007CF78 24080005 */ li $t0, 5 -.L8007CF7C: -/* 07DB7C 8007CF7C 00082080 */ sll $a0, $t0, 2 -/* 07DB80 8007CF80 2499FFFF */ addiu $t9, $a0, -1 -/* 07DB84 8007CF84 02D43821 */ addu $a3, $s6, $s4 -/* 07DB88 8007CF88 30F80006 */ andi $t8, $a3, 6 -/* 07DB8C 8007CF8C 001970C0 */ sll $t6, $t9, 3 -/* 07DB90 8007CF90 01D87825 */ or $t7, $t6, $t8 -/* 07DB94 8007CF94 35F90001 */ ori $t9, $t7, 1 -/* 07DB98 8007CF98 332E00FF */ andi $t6, $t9, 0xff -/* 07DB9C 8007CF9C 000EC400 */ sll $t8, $t6, 0x10 -/* 07DBA0 8007CFA0 0004C8C0 */ sll $t9, $a0, 3 -/* 07DBA4 8007CFA4 3C010400 */ lui $at, 0x400 -/* 07DBA8 8007CFA8 03017825 */ or $t7, $t8, $at -/* 07DBAC 8007CFAC 03247021 */ addu $t6, $t9, $a0 -/* 07DBB0 8007CFB0 000EC040 */ sll $t8, $t6, 1 -/* 07DBB4 8007CFB4 27190008 */ addiu $t9, $t8, 8 -/* 07DBB8 8007CFB8 332EFFFF */ andi $t6, $t9, 0xffff -/* 07DBBC 8007CFBC 01EEC025 */ or $t8, $t7, $t6 -/* 07DBC0 8007CFC0 ACD80000 */ sw $t8, ($a2) -/* 07DBC4 8007CFC4 ACC70004 */ sw $a3, 4($a2) -/* 07DBC8 8007CFC8 25290008 */ addiu $t1, $t1, 8 -.L8007CFCC: -/* 07DBCC 8007CFCC 3C190511 */ lui $t9, (0x05110020 >> 16) # lui $t9, 0x511 -/* 07DBD0 8007CFD0 37390020 */ ori $t9, (0x05110020 & 0xFFFF) # ori $t9, $t9, 0x20 -/* 07DBD4 8007CFD4 01202025 */ move $a0, $t1 -/* 07DBD8 8007CFD8 AC990000 */ sw $t9, ($a0) -/* 07DBDC 8007CFDC 00747821 */ addu $t7, $v1, $s4 -/* 07DBE0 8007CFE0 AC8F0004 */ sw $t7, 4($a0) -/* 07DBE4 8007CFE4 2606FFFF */ addiu $a2, $s0, -1 -/* 07DBE8 8007CFE8 2627FFFF */ addiu $a3, $s1, -1 -/* 07DBEC 8007CFEC 25480003 */ addiu $t0, $t2, 3 -/* 07DBF0 8007CFF0 254B0001 */ addiu $t3, $t2, 1 -/* 07DBF4 8007CFF4 0006C140 */ sll $t8, $a2, 5 -/* 07DBF8 8007CFF8 0007C940 */ sll $t9, $a3, 5 -/* 07DBFC 8007CFFC 25AD0001 */ addiu $t5, $t5, 1 -/* 07DC00 8007D000 254E0002 */ addiu $t6, $t2, 2 -/* 07DC04 8007D004 25440004 */ addiu $a0, $t2, 4 -/* 07DC08 8007D008 29A10005 */ slti $at, $t5, 5 -/* 07DC0C 8007D00C 25290008 */ addiu $t1, $t1, 8 -/* 07DC10 8007D010 A0770000 */ sb $s7, ($v1) -/* 07DC14 8007D014 A0680001 */ sb $t0, 1($v1) -/* 07DC18 8007D018 A06E0002 */ sb $t6, 2($v1) -/* 07DC1C 8007D01C A06B0003 */ sb $t3, 3($v1) -/* 07DC20 8007D020 A4780004 */ sh $t8, 4($v1) -/* 07DC24 8007D024 A4790006 */ sh $t9, 6($v1) -/* 07DC28 8007D028 A4780008 */ sh $t8, 8($v1) -/* 07DC2C 8007D02C A460000A */ sh $zero, 0xa($v1) -/* 07DC30 8007D030 A475000C */ sh $s5, 0xc($v1) -/* 07DC34 8007D034 A460000E */ sh $zero, 0xe($v1) -/* 07DC38 8007D038 A0770010 */ sb $s7, 0x10($v1) -/* 07DC3C 8007D03C A0640011 */ sb $a0, 0x11($v1) -/* 07DC40 8007D040 A0680012 */ sb $t0, 0x12($v1) -/* 07DC44 8007D044 A06B0013 */ sb $t3, 0x13($v1) -/* 07DC48 8007D048 A4750014 */ sh $s5, 0x14($v1) -/* 07DC4C 8007D04C A4790016 */ sh $t9, 0x16($v1) -/* 07DC50 8007D050 A4780018 */ sh $t8, 0x18($v1) -/* 07DC54 8007D054 A479001A */ sh $t9, 0x1a($v1) -/* 07DC58 8007D058 A475001C */ sh $s5, 0x1c($v1) -/* 07DC5C 8007D05C A460001E */ sh $zero, 0x1e($v1) -/* 07DC60 8007D060 24630020 */ addiu $v1, $v1, 0x20 -/* 07DC64 8007D064 00805025 */ move $t2, $a0 -/* 07DC68 8007D068 26520001 */ addiu $s2, $s2, 1 -/* 07DC6C 8007D06C 14200003 */ bnez $at, .L8007D07C -/* 07DC70 8007D070 26730004 */ addiu $s3, $s3, 4 -/* 07DC74 8007D074 00006825 */ move $t5, $zero -/* 07DC78 8007D078 00005025 */ move $t2, $zero -.L8007D07C: -/* 07DC7C 8007D07C 025E082A */ slt $at, $s2, $fp -/* 07DC80 8007D080 1420FF7E */ bnez $at, .L8007CE7C -/* 07DC84 8007D084 8FAE0044 */ lw $t6, 0x44($sp) -.L8007D088: -/* 07DC88 8007D088 01202025 */ move $a0, $t1 -/* 07DC8C 8007D08C 3C0FE700 */ lui $t7, 0xe700 -/* 07DC90 8007D090 AC8F0000 */ sw $t7, ($a0) -/* 07DC94 8007D094 AC800004 */ sw $zero, 4($a0) -/* 07DC98 8007D098 25250008 */ addiu $a1, $t1, 8 -/* 07DC9C 8007D09C 3C0EB800 */ lui $t6, 0xb800 -/* 07DCA0 8007D0A0 ACAE0000 */ sw $t6, ($a1) -/* 07DCA4 8007D0A4 ACA00004 */ sw $zero, 4($a1) -/* 07DCA8 8007D0A8 24A90008 */ addiu $t1, $a1, 8 -/* 07DCAC 8007D0AC 3C018012 */ lui $at, %hi(D_80126364) # $at, 0x8012 -/* 07DCB0 8007D0B0 AC296364 */ sw $t1, %lo(D_80126364)($at) -/* 07DCB4 8007D0B4 3C018012 */ lui $at, %hi(D_80126360) # $at, 0x8012 -/* 07DCB8 8007D0B8 8FBF002C */ lw $ra, 0x2c($sp) -/* 07DCBC 8007D0BC AC226360 */ sw $v0, %lo(D_80126360)($at) -/* 07DCC0 8007D0C0 3C018012 */ lui $at, %hi(D_80126368) # $at, 0x8012 -/* 07DCC4 8007D0C4 8FBE0028 */ lw $fp, 0x28($sp) -/* 07DCC8 8007D0C8 8FB70024 */ lw $s7, 0x24($sp) -/* 07DCCC 8007D0CC 8FB60020 */ lw $s6, 0x20($sp) -/* 07DCD0 8007D0D0 8FB5001C */ lw $s5, 0x1c($sp) -/* 07DCD4 8007D0D4 8FB40018 */ lw $s4, 0x18($sp) -/* 07DCD8 8007D0D8 8FB30014 */ lw $s3, 0x14($sp) -/* 07DCDC 8007D0DC 8FB20010 */ lw $s2, 0x10($sp) -/* 07DCE0 8007D0E0 8FB1000C */ lw $s1, 0xc($sp) -/* 07DCE4 8007D0E4 8FB00008 */ lw $s0, 8($sp) -/* 07DCE8 8007D0E8 AC236368 */ sw $v1, %lo(D_80126368)($at) -/* 07DCEC 8007D0EC 03E00008 */ jr $ra -/* 07DCF0 8007D0F0 27BD0040 */ addiu $sp, $sp, 0x40 - -glabel func_8007D0F4 -/* 07DCF4 8007D0F4 27BDFD80 */ addiu $sp, $sp, -0x280 -/* 07DCF8 8007D0F8 AFBF001C */ sw $ra, 0x1c($sp) -/* 07DCFC 8007D0FC AFB10018 */ sw $s1, 0x18($sp) -/* 07DD00 8007D100 AFB00014 */ sw $s0, 0x14($sp) -/* 07DD04 8007D104 AFA50284 */ sw $a1, 0x284($sp) -/* 07DD08 8007D108 90830002 */ lbu $v1, 2($a0) -/* 07DD0C 8007D10C AC85000C */ sw $a1, 0xc($a0) -/* 07DD10 8007D110 00037903 */ sra $t7, $v1, 4 -/* 07DD14 8007D114 31F8000F */ andi $t8, $t7, 0xf -/* 07DD18 8007D118 AFB80278 */ sw $t8, 0x278($sp) -/* 07DD1C 8007D11C 00808825 */ move $s1, $a0 -/* 07DD20 8007D120 90900001 */ lbu $s0, 1($a0) -/* 07DD24 8007D124 908D0000 */ lbu $t5, ($a0) -/* 07DD28 8007D128 00A03825 */ move $a3, $a1 -/* 07DD2C 8007D12C 24020001 */ li $v0, 1 -/* 07DD30 8007D130 240A0001 */ li $t2, 1 -/* 07DD34 8007D134 240B0001 */ li $t3, 1 -/* 07DD38 8007D138 24080001 */ li $t0, 1 -/* 07DD3C 8007D13C 24090001 */ li $t1, 1 -/* 07DD40 8007D140 24040007 */ li $a0, 7 -/* 07DD44 8007D144 00003025 */ move $a2, $zero -/* 07DD48 8007D148 306C000F */ andi $t4, $v1, 0xf -.L8007D14C: -/* 07DD4C 8007D14C 004D082A */ slt $at, $v0, $t5 -/* 07DD50 8007D150 10200003 */ beqz $at, .L8007D160 -/* 07DD54 8007D154 00027840 */ sll $t7, $v0, 1 -/* 07DD58 8007D158 10000004 */ b .L8007D16C -/* 07DD5C 8007D15C 24CA0001 */ addiu $t2, $a2, 1 -.L8007D160: -/* 07DD60 8007D160 144D0003 */ bne $v0, $t5, .L8007D170 -/* 07DD64 8007D164 0050082A */ slt $at, $v0, $s0 -/* 07DD68 8007D168 00004025 */ move $t0, $zero -.L8007D16C: -/* 07DD6C 8007D16C 0050082A */ slt $at, $v0, $s0 -.L8007D170: -/* 07DD70 8007D170 10200003 */ beqz $at, .L8007D180 -/* 07DD74 8007D174 24C30001 */ addiu $v1, $a2, 1 -/* 07DD78 8007D178 10000004 */ b .L8007D18C -/* 07DD7C 8007D17C 00605825 */ move $t3, $v1 -.L8007D180: -/* 07DD80 8007D180 14500003 */ bne $v0, $s0, .L8007D190 -/* 07DD84 8007D184 00603025 */ move $a2, $v1 -/* 07DD88 8007D188 00004825 */ move $t1, $zero -.L8007D18C: -/* 07DD8C 8007D18C 00603025 */ move $a2, $v1 -.L8007D190: -/* 07DD90 8007D190 1464FFEE */ bne $v1, $a0, .L8007D14C -/* 07DD94 8007D194 01E01025 */ move $v0, $t7 -/* 07DD98 8007D198 15000006 */ bnez $t0, .L8007D1B4 -/* 07DD9C 8007D19C 24190002 */ li $t9, 2 -/* 07DDA0 8007D1A0 86220006 */ lh $v0, 6($s1) -/* 07DDA4 8007D1A4 00000000 */ nop -/* 07DDA8 8007D1A8 30580040 */ andi $t8, $v0, 0x40 -/* 07DDAC 8007D1AC 13000005 */ beqz $t8, .L8007D1C4 -/* 07DDB0 8007D1B0 00000000 */ nop -.L8007D1B4: -/* 07DDB4 8007D1B4 AFB9026C */ sw $t9, 0x26c($sp) -/* 07DDB8 8007D1B8 86220006 */ lh $v0, 6($s1) -/* 07DDBC 8007D1BC 10000002 */ b .L8007D1C8 -/* 07DDC0 8007D1C0 00005025 */ move $t2, $zero -.L8007D1C4: -/* 07DDC4 8007D1C4 AFA0026C */ sw $zero, 0x26c($sp) -.L8007D1C8: -/* 07DDC8 8007D1C8 15200003 */ bnez $t1, .L8007D1D8 -/* 07DDCC 8007D1CC 30580400 */ andi $t8, $v0, 0x400 -/* 07DDD0 8007D1D0 304E0080 */ andi $t6, $v0, 0x80 -/* 07DDD4 8007D1D4 11C00004 */ beqz $t6, .L8007D1E8 -.L8007D1D8: -/* 07DDD8 8007D1D8 240F0002 */ li $t7, 2 -/* 07DDDC 8007D1DC AFAF0268 */ sw $t7, 0x268($sp) -/* 07DDE0 8007D1E0 10000002 */ b .L8007D1EC -/* 07DDE4 8007D1E4 00005825 */ move $t3, $zero -.L8007D1E8: -/* 07DDE8 8007D1E8 AFA00268 */ sw $zero, 0x268($sp) -.L8007D1EC: -/* 07DDEC 8007D1EC 17000417 */ bnez $t8, .L8007E24C -/* 07DDF0 8007D1F0 00000000 */ nop -/* 07DDF4 8007D1F4 AFAA0264 */ sw $t2, 0x264($sp) -/* 07DDF8 8007D1F8 AFAB0260 */ sw $t3, 0x260($sp) -/* 07DDFC 8007D1FC 1580007B */ bnez $t4, .L8007D3EC -/* 07DE00 8007D200 AFAC027C */ sw $t4, 0x27c($sp) -/* 07DE04 8007D204 8FAA0284 */ lw $t2, 0x284($sp) -/* 07DE08 8007D208 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 -/* 07DE0C 8007D20C 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 -/* 07DE10 8007D210 02217021 */ addu $t6, $s1, $at -/* 07DE14 8007D214 3C19FD18 */ lui $t9, 0xfd18 -/* 07DE18 8007D218 25470008 */ addiu $a3, $t2, 8 -/* 07DE1C 8007D21C 00E04025 */ move $t0, $a3 -/* 07DE20 8007D220 3C0FF518 */ lui $t7, 0xf518 -/* 07DE24 8007D224 AD590000 */ sw $t9, ($t2) -/* 07DE28 8007D228 AD4E0004 */ sw $t6, 4($t2) -/* 07DE2C 8007D22C 01B00019 */ multu $t5, $s0 -/* 07DE30 8007D230 AD0F0000 */ sw $t7, ($t0) -/* 07DE34 8007D234 8FA20268 */ lw $v0, 0x268($sp) -/* 07DE38 8007D238 8FA5026C */ lw $a1, 0x26c($sp) -/* 07DE3C 8007D23C 8FA30260 */ lw $v1, 0x260($sp) -/* 07DE40 8007D240 30580003 */ andi $t8, $v0, 3 -/* 07DE44 8007D244 00181480 */ sll $v0, $t8, 0x12 -/* 07DE48 8007D248 8FA60264 */ lw $a2, 0x264($sp) -/* 07DE4C 8007D24C 30B80003 */ andi $t8, $a1, 3 -/* 07DE50 8007D250 306E000F */ andi $t6, $v1, 0xf -/* 07DE54 8007D254 000E1B80 */ sll $v1, $t6, 0xe -/* 07DE58 8007D258 00182A00 */ sll $a1, $t8, 8 -/* 07DE5C 8007D25C 3C010700 */ lui $at, 0x700 -/* 07DE60 8007D260 0041C025 */ or $t8, $v0, $at -/* 07DE64 8007D264 30CE000F */ andi $t6, $a2, 0xf -/* 07DE68 8007D268 000E3100 */ sll $a2, $t6, 4 -/* 07DE6C 8007D26C 0303C825 */ or $t9, $t8, $v1 -/* 07DE70 8007D270 03257025 */ or $t6, $t9, $a1 -/* 07DE74 8007D274 01C67825 */ or $t7, $t6, $a2 -/* 07DE78 8007D278 24E70008 */ addiu $a3, $a3, 8 -/* 07DE7C 8007D27C 00E04825 */ move $t1, $a3 -/* 07DE80 8007D280 AD0F0004 */ sw $t7, 4($t0) -/* 07DE84 8007D284 00004012 */ mflo $t0 -/* 07DE88 8007D288 2508FFFF */ addiu $t0, $t0, -1 -/* 07DE8C 8007D28C 24E70008 */ addiu $a3, $a3, 8 -/* 07DE90 8007D290 3C18E600 */ lui $t8, 0xe600 -/* 07DE94 8007D294 AD380000 */ sw $t8, ($t1) -/* 07DE98 8007D298 00E06025 */ move $t4, $a3 -/* 07DE9C 8007D29C 290107FF */ slti $at, $t0, 0x7ff -/* 07DEA0 8007D2A0 AD200004 */ sw $zero, 4($t1) -/* 07DEA4 8007D2A4 3C19F300 */ lui $t9, 0xf300 -/* 07DEA8 8007D2A8 AD990000 */ sw $t9, ($t4) -/* 07DEAC 8007D2AC 10200003 */ beqz $at, .L8007D2BC -/* 07DEB0 8007D2B0 24E70008 */ addiu $a3, $a3, 8 -/* 07DEB4 8007D2B4 10000002 */ b .L8007D2C0 -/* 07DEB8 8007D2B8 0100F825 */ move $ra, $t0 -.L8007D2BC: -/* 07DEBC 8007D2BC 241F07FF */ li $ra, 2047 -.L8007D2C0: -/* 07DEC0 8007D2C0 000D4080 */ sll $t0, $t5, 2 -/* 07DEC4 8007D2C4 05010003 */ bgez $t0, .L8007D2D4 -/* 07DEC8 8007D2C8 000870C3 */ sra $t6, $t0, 3 -/* 07DECC 8007D2CC 25010007 */ addiu $at, $t0, 7 -/* 07DED0 8007D2D0 000170C3 */ sra $t6, $at, 3 -.L8007D2D4: -/* 07DED4 8007D2D4 1DC00003 */ bgtz $t6, .L8007D2E4 -/* 07DED8 8007D2D8 01C04025 */ move $t0, $t6 -/* 07DEDC 8007D2DC 10000002 */ b .L8007D2E8 -/* 07DEE0 8007D2E0 240A0001 */ li $t2, 1 -.L8007D2E4: -/* 07DEE4 8007D2E4 01005025 */ move $t2, $t0 -.L8007D2E8: -/* 07DEE8 8007D2E8 1D000003 */ bgtz $t0, .L8007D2F8 -/* 07DEEC 8007D2EC 254F07FF */ addiu $t7, $t2, 0x7ff -/* 07DEF0 8007D2F0 10000002 */ b .L8007D2FC -/* 07DEF4 8007D2F4 24040001 */ li $a0, 1 -.L8007D2F8: -/* 07DEF8 8007D2F8 01002025 */ move $a0, $t0 -.L8007D2FC: -/* 07DEFC 8007D2FC 01E4001A */ div $zero, $t7, $a0 -/* 07DF00 8007D300 00E04025 */ move $t0, $a3 -/* 07DF04 8007D304 14800002 */ bnez $a0, .L8007D310 -/* 07DF08 8007D308 00000000 */ nop -/* 07DF0C 8007D30C 0007000D */ break 7 -.L8007D310: -/* 07DF10 8007D310 2401FFFF */ li $at, -1 -/* 07DF14 8007D314 14810004 */ bne $a0, $at, .L8007D328 -/* 07DF18 8007D318 3C018000 */ lui $at, 0x8000 -/* 07DF1C 8007D31C 15E10002 */ bne $t7, $at, .L8007D328 -/* 07DF20 8007D320 00000000 */ nop -/* 07DF24 8007D324 0006000D */ break 6 -.L8007D328: -/* 07DF28 8007D328 3C010700 */ lui $at, 0x700 -/* 07DF2C 8007D32C 33EF0FFF */ andi $t7, $ra, 0xfff -/* 07DF30 8007D330 24E70008 */ addiu $a3, $a3, 8 -/* 07DF34 8007D334 00E04825 */ move $t1, $a3 -/* 07DF38 8007D338 24E70008 */ addiu $a3, $a3, 8 -/* 07DF3C 8007D33C 00E05825 */ move $t3, $a3 -/* 07DF40 8007D340 24E70008 */ addiu $a3, $a3, 8 -/* 07DF44 8007D344 0000C012 */ mflo $t8 -/* 07DF48 8007D348 33190FFF */ andi $t9, $t8, 0xfff -/* 07DF4C 8007D34C 03217025 */ or $t6, $t9, $at -/* 07DF50 8007D350 000FC300 */ sll $t8, $t7, 0xc -/* 07DF54 8007D354 01D8C825 */ or $t9, $t6, $t8 -/* 07DF58 8007D358 AD990004 */ sw $t9, 4($t4) -/* 07DF5C 8007D35C 000D7040 */ sll $t6, $t5, 1 -/* 07DF60 8007D360 25D80007 */ addiu $t8, $t6, 7 -/* 07DF64 8007D364 3C0FE700 */ lui $t7, 0xe700 -/* 07DF68 8007D368 AD0F0000 */ sw $t7, ($t0) -/* 07DF6C 8007D36C 0018C8C3 */ sra $t9, $t8, 3 -/* 07DF70 8007D370 332F01FF */ andi $t7, $t9, 0x1ff -/* 07DF74 8007D374 000F7240 */ sll $t6, $t7, 9 -/* 07DF78 8007D378 0043C825 */ or $t9, $v0, $v1 -/* 07DF7C 8007D37C 3C01F518 */ lui $at, 0xf518 -/* 07DF80 8007D380 01C1C025 */ or $t8, $t6, $at -/* 07DF84 8007D384 03257825 */ or $t7, $t9, $a1 -/* 07DF88 8007D388 01E67025 */ or $t6, $t7, $a2 -/* 07DF8C 8007D38C AD000004 */ sw $zero, 4($t0) -/* 07DF90 8007D390 25B9FFFF */ addiu $t9, $t5, -1 -/* 07DF94 8007D394 00197880 */ sll $t7, $t9, 2 -/* 07DF98 8007D398 AD2E0004 */ sw $t6, 4($t1) -/* 07DF9C 8007D39C AD380000 */ sw $t8, ($t1) -/* 07DFA0 8007D3A0 3C18F200 */ lui $t8, 0xf200 -/* 07DFA4 8007D3A4 31EE0FFF */ andi $t6, $t7, 0xfff -/* 07DFA8 8007D3A8 AD780000 */ sw $t8, ($t3) -/* 07DFAC 8007D3AC 2619FFFF */ addiu $t9, $s0, -1 -/* 07DFB0 8007D3B0 00197880 */ sll $t7, $t9, 2 -/* 07DFB4 8007D3B4 000EC300 */ sll $t8, $t6, 0xc -/* 07DFB8 8007D3B8 31EE0FFF */ andi $t6, $t7, 0xfff -/* 07DFBC 8007D3BC 030EC825 */ or $t9, $t8, $t6 -/* 07DFC0 8007D3C0 AD790004 */ sw $t9, 4($t3) -/* 07DFC4 8007D3C4 8FAF0278 */ lw $t7, 0x278($sp) -/* 07DFC8 8007D3C8 24010002 */ li $at, 2 -/* 07DFCC 8007D3CC 11E00003 */ beqz $t7, .L8007D3DC -/* 07DFD0 8007D3D0 00000000 */ nop -/* 07DFD4 8007D3D4 15E10006 */ bne $t7, $at, .L8007D3F0 -/* 07DFD8 8007D3D8 8FB9027C */ lw $t9, 0x27c($sp) -.L8007D3DC: -/* 07DFDC 8007D3DC 86380006 */ lh $t8, 6($s1) -/* 07DFE0 8007D3E0 00000000 */ nop -/* 07DFE4 8007D3E4 370E0004 */ ori $t6, $t8, 4 -/* 07DFE8 8007D3E8 A62E0006 */ sh $t6, 6($s1) -.L8007D3EC: -/* 07DFEC 8007D3EC 8FB9027C */ lw $t9, 0x27c($sp) -.L8007D3F0: -/* 07DFF0 8007D3F0 24010001 */ li $at, 1 -/* 07DFF4 8007D3F4 17210080 */ bne $t9, $at, .L8007D5F8 -/* 07DFF8 8007D3F8 00E02025 */ move $a0, $a3 -/* 07DFFC 8007D3FC 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 -/* 07E000 8007D400 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 -/* 07E004 8007D404 0221C021 */ addu $t8, $s1, $at -/* 07E008 8007D408 AC980004 */ sw $t8, 4($a0) -/* 07E00C 8007D40C 24E70008 */ addiu $a3, $a3, 8 -/* 07E010 8007D410 3C0FFD10 */ lui $t7, 0xfd10 -/* 07E014 8007D414 AC8F0000 */ sw $t7, ($a0) -/* 07E018 8007D418 00E04825 */ move $t1, $a3 -/* 07E01C 8007D41C 3C0EF510 */ lui $t6, 0xf510 -/* 07E020 8007D420 AD2E0000 */ sw $t6, ($t1) -/* 07E024 8007D424 8FA20268 */ lw $v0, 0x268($sp) -/* 07E028 8007D428 8FA30260 */ lw $v1, 0x260($sp) -/* 07E02C 8007D42C 8FA5026C */ lw $a1, 0x26c($sp) -/* 07E030 8007D430 30590003 */ andi $t9, $v0, 3 -/* 07E034 8007D434 8FA60264 */ lw $a2, 0x264($sp) -/* 07E038 8007D438 00191480 */ sll $v0, $t9, 0x12 -/* 07E03C 8007D43C 3078000F */ andi $t8, $v1, 0xf -/* 07E040 8007D440 00181B80 */ sll $v1, $t8, 0xe -/* 07E044 8007D444 30B90003 */ andi $t9, $a1, 3 -/* 07E048 8007D448 00192A00 */ sll $a1, $t9, 8 -/* 07E04C 8007D44C 3C010700 */ lui $at, 0x700 -/* 07E050 8007D450 30D8000F */ andi $t8, $a2, 0xf -/* 07E054 8007D454 00187100 */ sll $t6, $t8, 4 -/* 07E058 8007D458 0041C825 */ or $t9, $v0, $at -/* 07E05C 8007D45C 03237825 */ or $t7, $t9, $v1 -/* 07E060 8007D460 01E5C025 */ or $t8, $t7, $a1 -/* 07E064 8007D464 01C03025 */ move $a2, $t6 -/* 07E068 8007D468 01B00019 */ multu $t5, $s0 -/* 07E06C 8007D46C 030E7025 */ or $t6, $t8, $t6 -/* 07E070 8007D470 24E70008 */ addiu $a3, $a3, 8 -/* 07E074 8007D474 00E05025 */ move $t2, $a3 -/* 07E078 8007D478 AD2E0004 */ sw $t6, 4($t1) -/* 07E07C 8007D47C 3C19E600 */ lui $t9, 0xe600 -/* 07E080 8007D480 000D6040 */ sll $t4, $t5, 1 -/* 07E084 8007D484 25980007 */ addiu $t8, $t4, 7 -/* 07E088 8007D488 AD590000 */ sw $t9, ($t2) -/* 07E08C 8007D48C 24E70008 */ addiu $a3, $a3, 8 -/* 07E090 8007D490 00E05825 */ move $t3, $a3 -/* 07E094 8007D494 001870C3 */ sra $t6, $t8, 3 -/* 07E098 8007D498 AD400004 */ sw $zero, 4($t2) -/* 07E09C 8007D49C 3C0FF300 */ lui $t7, 0xf300 -/* 07E0A0 8007D4A0 AD6F0000 */ sw $t7, ($t3) -/* 07E0A4 8007D4A4 31D901FF */ andi $t9, $t6, 0x1ff -/* 07E0A8 8007D4A8 00197A40 */ sll $t7, $t9, 9 -/* 07E0AC 8007D4AC 0043C025 */ or $t8, $v0, $v1 -/* 07E0B0 8007D4B0 03057025 */ or $t6, $t8, $a1 -/* 07E0B4 8007D4B4 AFAF0030 */ sw $t7, 0x30($sp) -/* 07E0B8 8007D4B8 25AFFFFF */ addiu $t7, $t5, -1 -/* 07E0BC 8007D4BC 000FC080 */ sll $t8, $t7, 2 -/* 07E0C0 8007D4C0 01C6C825 */ or $t9, $t6, $a2 -/* 07E0C4 8007D4C4 330E0FFF */ andi $t6, $t8, 0xfff -/* 07E0C8 8007D4C8 AFB9002C */ sw $t9, 0x2c($sp) -/* 07E0CC 8007D4CC 260FFFFF */ addiu $t7, $s0, -1 -/* 07E0D0 8007D4D0 000FC080 */ sll $t8, $t7, 2 -/* 07E0D4 8007D4D4 000ECB00 */ sll $t9, $t6, 0xc -/* 07E0D8 8007D4D8 00004012 */ mflo $t0 -/* 07E0DC 8007D4DC 2508FFFF */ addiu $t0, $t0, -1 -/* 07E0E0 8007D4E0 330E0FFF */ andi $t6, $t8, 0xfff -/* 07E0E4 8007D4E4 032E7825 */ or $t7, $t9, $t6 -/* 07E0E8 8007D4E8 290107FF */ slti $at, $t0, 0x7ff -/* 07E0EC 8007D4EC AFAF0028 */ sw $t7, 0x28($sp) -/* 07E0F0 8007D4F0 AFAB021C */ sw $t3, 0x21c($sp) -/* 07E0F4 8007D4F4 10200003 */ beqz $at, .L8007D504 -/* 07E0F8 8007D4F8 24E70008 */ addiu $a3, $a3, 8 -/* 07E0FC 8007D4FC 10000002 */ b .L8007D508 -/* 07E100 8007D500 0100F825 */ move $ra, $t0 -.L8007D504: -/* 07E104 8007D504 241F07FF */ li $ra, 2047 -.L8007D508: -/* 07E108 8007D508 05810003 */ bgez $t4, .L8007D518 -/* 07E10C 8007D50C 000C58C3 */ sra $t3, $t4, 3 -/* 07E110 8007D510 25810007 */ addiu $at, $t4, 7 -/* 07E114 8007D514 000158C3 */ sra $t3, $at, 3 -.L8007D518: -/* 07E118 8007D518 1D600003 */ bgtz $t3, .L8007D528 -/* 07E11C 8007D51C 01605025 */ move $t2, $t3 -/* 07E120 8007D520 10000001 */ b .L8007D528 -/* 07E124 8007D524 240A0001 */ li $t2, 1 -.L8007D528: -/* 07E128 8007D528 1D600003 */ bgtz $t3, .L8007D538 -/* 07E12C 8007D52C 255807FF */ addiu $t8, $t2, 0x7ff -/* 07E130 8007D530 10000002 */ b .L8007D53C -/* 07E134 8007D534 24040001 */ li $a0, 1 -.L8007D538: -/* 07E138 8007D538 01602025 */ move $a0, $t3 -.L8007D53C: -/* 07E13C 8007D53C 0304001A */ div $zero, $t8, $a0 -/* 07E140 8007D540 00E01025 */ move $v0, $a3 -/* 07E144 8007D544 14800002 */ bnez $a0, .L8007D550 -/* 07E148 8007D548 00000000 */ nop -/* 07E14C 8007D54C 0007000D */ break 7 -.L8007D550: -/* 07E150 8007D550 2401FFFF */ li $at, -1 -/* 07E154 8007D554 14810004 */ bne $a0, $at, .L8007D568 -/* 07E158 8007D558 3C018000 */ lui $at, 0x8000 -/* 07E15C 8007D55C 17010002 */ bne $t8, $at, .L8007D568 -/* 07E160 8007D560 00000000 */ nop -/* 07E164 8007D564 0006000D */ break 6 -.L8007D568: -/* 07E168 8007D568 33F80FFF */ andi $t8, $ra, 0xfff -/* 07E16C 8007D56C 3C010700 */ lui $at, 0x700 -/* 07E170 8007D570 24E70008 */ addiu $a3, $a3, 8 -/* 07E174 8007D574 00E01825 */ move $v1, $a3 -/* 07E178 8007D578 24E70008 */ addiu $a3, $a3, 8 -/* 07E17C 8007D57C 00E02825 */ move $a1, $a3 -/* 07E180 8007D580 24E70008 */ addiu $a3, $a3, 8 -/* 07E184 8007D584 0000C812 */ mflo $t9 -/* 07E188 8007D588 332E0FFF */ andi $t6, $t9, 0xfff -/* 07E18C 8007D58C 0018CB00 */ sll $t9, $t8, 0xc -/* 07E190 8007D590 8FB8021C */ lw $t8, 0x21c($sp) -/* 07E194 8007D594 01C17825 */ or $t7, $t6, $at -/* 07E198 8007D598 01F97025 */ or $t6, $t7, $t9 -/* 07E19C 8007D59C AF0E0004 */ sw $t6, 4($t8) -/* 07E1A0 8007D5A0 3C0FE700 */ lui $t7, 0xe700 -/* 07E1A4 8007D5A4 AC4F0000 */ sw $t7, ($v0) -/* 07E1A8 8007D5A8 AC400004 */ sw $zero, 4($v0) -/* 07E1AC 8007D5AC 8FB90030 */ lw $t9, 0x30($sp) -/* 07E1B0 8007D5B0 3C01F510 */ lui $at, 0xf510 -/* 07E1B4 8007D5B4 03217025 */ or $t6, $t9, $at -/* 07E1B8 8007D5B8 AC6E0000 */ sw $t6, ($v1) -/* 07E1BC 8007D5BC 8FB8002C */ lw $t8, 0x2c($sp) -/* 07E1C0 8007D5C0 3C0FF200 */ lui $t7, 0xf200 -/* 07E1C4 8007D5C4 AC780004 */ sw $t8, 4($v1) -/* 07E1C8 8007D5C8 ACAF0000 */ sw $t7, ($a1) -/* 07E1CC 8007D5CC 8FB90028 */ lw $t9, 0x28($sp) -/* 07E1D0 8007D5D0 8FA20278 */ lw $v0, 0x278($sp) -/* 07E1D4 8007D5D4 24010002 */ li $at, 2 -/* 07E1D8 8007D5D8 10400003 */ beqz $v0, .L8007D5E8 -/* 07E1DC 8007D5DC ACB90004 */ sw $t9, 4($a1) -/* 07E1E0 8007D5E0 14410006 */ bne $v0, $at, .L8007D5FC -/* 07E1E4 8007D5E4 8FAF027C */ lw $t7, 0x27c($sp) -.L8007D5E8: -/* 07E1E8 8007D5E8 862E0006 */ lh $t6, 6($s1) -/* 07E1EC 8007D5EC 00000000 */ nop -/* 07E1F0 8007D5F0 35D80004 */ ori $t8, $t6, 4 -/* 07E1F4 8007D5F4 A6380006 */ sh $t8, 6($s1) -.L8007D5F8: -/* 07E1F8 8007D5F8 8FAF027C */ lw $t7, 0x27c($sp) -.L8007D5FC: -/* 07E1FC 8007D5FC 24010007 */ li $at, 7 -/* 07E200 8007D600 15E100A8 */ bne $t7, $at, .L8007D8A4 -/* 07E204 8007D604 8FAE027C */ lw $t6, 0x27c($sp) -/* 07E208 8007D608 8FA20268 */ lw $v0, 0x268($sp) -/* 07E20C 8007D60C 8FA30260 */ lw $v1, 0x260($sp) -/* 07E210 8007D610 8FA5026C */ lw $a1, 0x26c($sp) -/* 07E214 8007D614 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 -/* 07E218 8007D618 304E0003 */ andi $t6, $v0, 3 -/* 07E21C 8007D61C 000E1480 */ sll $v0, $t6, 0x12 -/* 07E220 8007D620 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 -/* 07E224 8007D624 8FA60264 */ lw $a2, 0x264($sp) -/* 07E228 8007D628 0221C821 */ addu $t9, $s1, $at -/* 07E22C 8007D62C 306F000F */ andi $t7, $v1, 0xf -/* 07E230 8007D630 30AE0003 */ andi $t6, $a1, 3 -/* 07E234 8007D634 01B00019 */ multu $t5, $s0 -/* 07E238 8007D638 000E2A00 */ sll $a1, $t6, 8 -/* 07E23C 8007D63C 000F1B80 */ sll $v1, $t7, 0xe -/* 07E240 8007D640 3C010700 */ lui $at, 0x700 -/* 07E244 8007D644 00417025 */ or $t6, $v0, $at -/* 07E248 8007D648 30CF000F */ andi $t7, $a2, 0xf -/* 07E24C 8007D64C 000F3100 */ sll $a2, $t7, 4 -/* 07E250 8007D650 01C3C025 */ or $t8, $t6, $v1 -/* 07E254 8007D654 86240008 */ lh $a0, 8($s1) -/* 07E258 8007D658 AFB90048 */ sw $t9, 0x48($sp) -/* 07E25C 8007D65C 03057825 */ or $t7, $t8, $a1 -/* 07E260 8007D660 01E6C825 */ or $t9, $t7, $a2 -/* 07E264 8007D664 00437025 */ or $t6, $v0, $v1 -/* 07E268 8007D668 01C5C025 */ or $t8, $t6, $a1 -/* 07E26C 8007D66C AFB90034 */ sw $t9, 0x34($sp) -/* 07E270 8007D670 25B9FFFF */ addiu $t9, $t5, -1 -/* 07E274 8007D674 00197080 */ sll $t6, $t9, 2 -/* 07E278 8007D678 03067825 */ or $t7, $t8, $a2 -/* 07E27C 8007D67C 31D80FFF */ andi $t8, $t6, 0xfff -/* 07E280 8007D680 AFAF002C */ sw $t7, 0x2c($sp) -/* 07E284 8007D684 2619FFFF */ addiu $t9, $s0, -1 -/* 07E288 8007D688 00197080 */ sll $t6, $t9, 2 -/* 07E28C 8007D68C 00187B00 */ sll $t7, $t8, 0xc -/* 07E290 8007D690 31D80FFF */ andi $t8, $t6, 0xfff -/* 07E294 8007D694 01F8C825 */ or $t9, $t7, $t8 -/* 07E298 8007D698 00005012 */ mflo $t2 -/* 07E29C 8007D69C AFAA0030 */ sw $t2, 0x30($sp) -/* 07E2A0 8007D6A0 AFB90028 */ sw $t9, 0x28($sp) -/* 07E2A4 8007D6A4 AFAD0274 */ sw $t5, 0x274($sp) -/* 07E2A8 8007D6A8 0C01FBD9 */ jal func_8007EF64 -/* 07E2AC 8007D6AC AFA70248 */ sw $a3, 0x248($sp) -/* 07E2B0 8007D6B0 8FA70248 */ lw $a3, 0x248($sp) -/* 07E2B4 8007D6B4 8FAA0030 */ lw $t2, 0x30($sp) -/* 07E2B8 8007D6B8 8FAD0274 */ lw $t5, 0x274($sp) -/* 07E2BC 8007D6BC 3C0EFD50 */ lui $t6, 0xfd50 -/* 07E2C0 8007D6C0 00E01825 */ move $v1, $a3 -/* 07E2C4 8007D6C4 AC6E0000 */ sw $t6, ($v1) -/* 07E2C8 8007D6C8 8FAF0048 */ lw $t7, 0x48($sp) -/* 07E2CC 8007D6CC 24E70008 */ addiu $a3, $a3, 8 -/* 07E2D0 8007D6D0 00E02025 */ move $a0, $a3 -/* 07E2D4 8007D6D4 3C18F550 */ lui $t8, 0xf550 -/* 07E2D8 8007D6D8 AC6F0004 */ sw $t7, 4($v1) -/* 07E2DC 8007D6DC AC980000 */ sw $t8, ($a0) -/* 07E2E0 8007D6E0 8FB90034 */ lw $t9, 0x34($sp) -/* 07E2E4 8007D6E4 24E70008 */ addiu $a3, $a3, 8 -/* 07E2E8 8007D6E8 00E02825 */ move $a1, $a3 -/* 07E2EC 8007D6EC 25480003 */ addiu $t0, $t2, 3 -/* 07E2F0 8007D6F0 0008C083 */ sra $t8, $t0, 2 -/* 07E2F4 8007D6F4 AC990004 */ sw $t9, 4($a0) -/* 07E2F8 8007D6F8 2708FFFF */ addiu $t0, $t8, -1 -/* 07E2FC 8007D6FC 24E70008 */ addiu $a3, $a3, 8 -/* 07E300 8007D700 3C0EE600 */ lui $t6, 0xe600 -/* 07E304 8007D704 ACAE0000 */ sw $t6, ($a1) -/* 07E308 8007D708 00E03025 */ move $a2, $a3 -/* 07E30C 8007D70C 290107FF */ slti $at, $t0, 0x7ff -/* 07E310 8007D710 ACA00004 */ sw $zero, 4($a1) -/* 07E314 8007D714 3C0FF300 */ lui $t7, 0xf300 -/* 07E318 8007D718 ACCF0000 */ sw $t7, ($a2) -/* 07E31C 8007D71C 10200003 */ beqz $at, .L8007D72C -/* 07E320 8007D720 24E70008 */ addiu $a3, $a3, 8 -/* 07E324 8007D724 10000002 */ b .L8007D730 -/* 07E328 8007D728 01002025 */ move $a0, $t0 -.L8007D72C: -/* 07E32C 8007D72C 240407FF */ li $a0, 2047 -.L8007D730: -/* 07E330 8007D730 05A10003 */ bgez $t5, .L8007D740 -/* 07E334 8007D734 000D4903 */ sra $t1, $t5, 4 -/* 07E338 8007D738 25A1000F */ addiu $at, $t5, 0xf -/* 07E33C 8007D73C 00014903 */ sra $t1, $at, 4 -.L8007D740: -/* 07E340 8007D740 253807FF */ addiu $t8, $t1, 0x7ff -/* 07E344 8007D744 0309001A */ div $zero, $t8, $t1 -/* 07E348 8007D748 30990FFF */ andi $t9, $a0, 0xfff -/* 07E34C 8007D74C 00197300 */ sll $t6, $t9, 0xc -/* 07E350 8007D750 3C010700 */ lui $at, 0x700 -/* 07E354 8007D754 01C17825 */ or $t7, $t6, $at -/* 07E358 8007D758 15200002 */ bnez $t1, .L8007D764 -/* 07E35C 8007D75C 00000000 */ nop -/* 07E360 8007D760 0007000D */ break 7 -.L8007D764: -/* 07E364 8007D764 2401FFFF */ li $at, -1 -/* 07E368 8007D768 15210004 */ bne $t1, $at, .L8007D77C -/* 07E36C 8007D76C 3C018000 */ lui $at, 0x8000 -/* 07E370 8007D770 17010002 */ bne $t8, $at, .L8007D77C -/* 07E374 8007D774 00000000 */ nop -/* 07E378 8007D778 0006000D */ break 6 -.L8007D77C: -/* 07E37C 8007D77C 00E01825 */ move $v1, $a3 -/* 07E380 8007D780 24E70008 */ addiu $a3, $a3, 8 -/* 07E384 8007D784 3C01F540 */ lui $at, 0xf540 -/* 07E388 8007D788 00E02825 */ move $a1, $a3 -/* 07E38C 8007D78C 24E70008 */ addiu $a3, $a3, 8 -/* 07E390 8007D790 00E04025 */ move $t0, $a3 -/* 07E394 8007D794 24E70008 */ addiu $a3, $a3, 8 -/* 07E398 8007D798 0000C812 */ mflo $t9 -/* 07E39C 8007D79C 332E0FFF */ andi $t6, $t9, 0xfff -/* 07E3A0 8007D7A0 01EEC025 */ or $t8, $t7, $t6 -/* 07E3A4 8007D7A4 ACD80004 */ sw $t8, 4($a2) -/* 07E3A8 8007D7A8 000D7843 */ sra $t7, $t5, 1 -/* 07E3AC 8007D7AC 25EE0007 */ addiu $t6, $t7, 7 -/* 07E3B0 8007D7B0 3C19E700 */ lui $t9, 0xe700 -/* 07E3B4 8007D7B4 AC790000 */ sw $t9, ($v1) -/* 07E3B8 8007D7B8 000EC0C3 */ sra $t8, $t6, 3 -/* 07E3BC 8007D7BC 331901FF */ andi $t9, $t8, 0x1ff -/* 07E3C0 8007D7C0 00197A40 */ sll $t7, $t9, 9 -/* 07E3C4 8007D7C4 01E17025 */ or $t6, $t7, $at -/* 07E3C8 8007D7C8 AC600004 */ sw $zero, 4($v1) -/* 07E3CC 8007D7CC ACAE0000 */ sw $t6, ($a1) -/* 07E3D0 8007D7D0 8FB8002C */ lw $t8, 0x2c($sp) -/* 07E3D4 8007D7D4 3C19F200 */ lui $t9, 0xf200 -/* 07E3D8 8007D7D8 ACB80004 */ sw $t8, 4($a1) -/* 07E3DC 8007D7DC AD190000 */ sw $t9, ($t0) -/* 07E3E0 8007D7E0 8FAF0028 */ lw $t7, 0x28($sp) -/* 07E3E4 8007D7E4 00E01825 */ move $v1, $a3 -/* 07E3E8 8007D7E8 AD0F0004 */ sw $t7, 4($t0) -/* 07E3EC 8007D7EC 24E70008 */ addiu $a3, $a3, 8 -/* 07E3F0 8007D7F0 3C0EFD10 */ lui $t6, 0xfd10 -/* 07E3F4 8007D7F4 AC6E0000 */ sw $t6, ($v1) -/* 07E3F8 8007D7F8 00E02025 */ move $a0, $a3 -/* 07E3FC 8007D7FC AC620004 */ sw $v0, 4($v1) -/* 07E400 8007D800 24E70008 */ addiu $a3, $a3, 8 -/* 07E404 8007D804 00E02825 */ move $a1, $a3 -/* 07E408 8007D808 3C18E800 */ lui $t8, 0xe800 -/* 07E40C 8007D80C AC980000 */ sw $t8, ($a0) -/* 07E410 8007D810 AC800004 */ sw $zero, 4($a0) -/* 07E414 8007D814 3C19F500 */ lui $t9, (0xF5000100 >> 16) # lui $t9, 0xf500 -/* 07E418 8007D818 37390100 */ ori $t9, (0xF5000100 & 0xFFFF) # ori $t9, $t9, 0x100 -/* 07E41C 8007D81C 24E70008 */ addiu $a3, $a3, 8 -/* 07E420 8007D820 3C0F0700 */ lui $t7, 0x700 -/* 07E424 8007D824 ACAF0004 */ sw $t7, 4($a1) -/* 07E428 8007D828 00E03025 */ move $a2, $a3 -/* 07E42C 8007D82C ACB90000 */ sw $t9, ($a1) -/* 07E430 8007D830 24E70008 */ addiu $a3, $a3, 8 -/* 07E434 8007D834 3C0EE600 */ lui $t6, 0xe600 -/* 07E438 8007D838 ACCE0000 */ sw $t6, ($a2) -/* 07E43C 8007D83C 00E01025 */ move $v0, $a3 -/* 07E440 8007D840 ACC00004 */ sw $zero, 4($a2) -/* 07E444 8007D844 8FA40278 */ lw $a0, 0x278($sp) -/* 07E448 8007D848 3C190703 */ lui $t9, (0x0703C000 >> 16) # lui $t9, 0x703 -/* 07E44C 8007D84C 3739C000 */ ori $t9, (0x0703C000 & 0xFFFF) # ori $t9, $t9, 0xc000 -/* 07E450 8007D850 24E70008 */ addiu $a3, $a3, 8 -/* 07E454 8007D854 3C18F000 */ lui $t8, 0xf000 -/* 07E458 8007D858 AC580000 */ sw $t8, ($v0) -/* 07E45C 8007D85C 00E01825 */ move $v1, $a3 -/* 07E460 8007D860 AC590004 */ sw $t9, 4($v0) -/* 07E464 8007D864 3C0FE700 */ lui $t7, 0xe700 -/* 07E468 8007D868 AC6F0000 */ sw $t7, ($v1) -/* 07E46C 8007D86C AC600004 */ sw $zero, 4($v1) -/* 07E470 8007D870 862E0006 */ lh $t6, 6($s1) -/* 07E474 8007D874 24E70008 */ addiu $a3, $a3, 8 -/* 07E478 8007D878 35D80020 */ ori $t8, $t6, 0x20 -/* 07E47C 8007D87C 10800004 */ beqz $a0, .L8007D890 -/* 07E480 8007D880 A6380006 */ sh $t8, 6($s1) -/* 07E484 8007D884 24010002 */ li $at, 2 -/* 07E488 8007D888 14810006 */ bne $a0, $at, .L8007D8A4 -/* 07E48C 8007D88C 8FAE027C */ lw $t6, 0x27c($sp) -.L8007D890: -/* 07E490 8007D890 86390006 */ lh $t9, 6($s1) -/* 07E494 8007D894 00000000 */ nop -/* 07E498 8007D898 372F0004 */ ori $t7, $t9, 4 -/* 07E49C 8007D89C A62F0006 */ sh $t7, 6($s1) -/* 07E4A0 8007D8A0 8FAE027C */ lw $t6, 0x27c($sp) -.L8007D8A4: -/* 07E4A4 8007D8A4 24010004 */ li $at, 4 -/* 07E4A8 8007D8A8 15C1007C */ bne $t6, $at, .L8007DA9C -/* 07E4AC 8007D8AC 00E02025 */ move $a0, $a3 -/* 07E4B0 8007D8B0 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 -/* 07E4B4 8007D8B4 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 -/* 07E4B8 8007D8B8 0221C821 */ addu $t9, $s1, $at -/* 07E4BC 8007D8BC AC990004 */ sw $t9, 4($a0) -/* 07E4C0 8007D8C0 24E70008 */ addiu $a3, $a3, 8 -/* 07E4C4 8007D8C4 3C18FD70 */ lui $t8, 0xfd70 -/* 07E4C8 8007D8C8 AC980000 */ sw $t8, ($a0) -/* 07E4CC 8007D8CC 00E04825 */ move $t1, $a3 -/* 07E4D0 8007D8D0 3C0FF570 */ lui $t7, 0xf570 -/* 07E4D4 8007D8D4 AD2F0000 */ sw $t7, ($t1) -/* 07E4D8 8007D8D8 8FA20268 */ lw $v0, 0x268($sp) -/* 07E4DC 8007D8DC 8FA30260 */ lw $v1, 0x260($sp) -/* 07E4E0 8007D8E0 8FA5026C */ lw $a1, 0x26c($sp) -/* 07E4E4 8007D8E4 304E0003 */ andi $t6, $v0, 3 -/* 07E4E8 8007D8E8 8FA60264 */ lw $a2, 0x264($sp) -/* 07E4EC 8007D8EC 000E1480 */ sll $v0, $t6, 0x12 -/* 07E4F0 8007D8F0 3079000F */ andi $t9, $v1, 0xf -/* 07E4F4 8007D8F4 00191B80 */ sll $v1, $t9, 0xe -/* 07E4F8 8007D8F8 30AE0003 */ andi $t6, $a1, 3 -/* 07E4FC 8007D8FC 000E2A00 */ sll $a1, $t6, 8 -/* 07E500 8007D900 3C010700 */ lui $at, 0x700 -/* 07E504 8007D904 30D9000F */ andi $t9, $a2, 0xf -/* 07E508 8007D908 00197900 */ sll $t7, $t9, 4 -/* 07E50C 8007D90C 00417025 */ or $t6, $v0, $at -/* 07E510 8007D910 01C3C025 */ or $t8, $t6, $v1 -/* 07E514 8007D914 0305C825 */ or $t9, $t8, $a1 -/* 07E518 8007D918 01E03025 */ move $a2, $t7 -/* 07E51C 8007D91C 01B00019 */ multu $t5, $s0 -/* 07E520 8007D920 032F7825 */ or $t7, $t9, $t7 -/* 07E524 8007D924 24E70008 */ addiu $a3, $a3, 8 -/* 07E528 8007D928 00E05025 */ move $t2, $a3 -/* 07E52C 8007D92C AD2F0004 */ sw $t7, 4($t1) -/* 07E530 8007D930 3C0EE600 */ lui $t6, 0xe600 -/* 07E534 8007D934 000D6040 */ sll $t4, $t5, 1 -/* 07E538 8007D938 25990007 */ addiu $t9, $t4, 7 -/* 07E53C 8007D93C AD4E0000 */ sw $t6, ($t2) -/* 07E540 8007D940 24E70008 */ addiu $a3, $a3, 8 -/* 07E544 8007D944 00E0F825 */ move $ra, $a3 -/* 07E548 8007D948 001978C3 */ sra $t7, $t9, 3 -/* 07E54C 8007D94C AD400004 */ sw $zero, 4($t2) -/* 07E550 8007D950 3C18F300 */ lui $t8, 0xf300 -/* 07E554 8007D954 AFF80000 */ sw $t8, ($ra) -/* 07E558 8007D958 31EE01FF */ andi $t6, $t7, 0x1ff -/* 07E55C 8007D95C 000EC240 */ sll $t8, $t6, 9 -/* 07E560 8007D960 0043C825 */ or $t9, $v0, $v1 -/* 07E564 8007D964 03257825 */ or $t7, $t9, $a1 -/* 07E568 8007D968 AFB80030 */ sw $t8, 0x30($sp) -/* 07E56C 8007D96C 25B8FFFF */ addiu $t8, $t5, -1 -/* 07E570 8007D970 0018C880 */ sll $t9, $t8, 2 -/* 07E574 8007D974 01E67025 */ or $t6, $t7, $a2 -/* 07E578 8007D978 332F0FFF */ andi $t7, $t9, 0xfff -/* 07E57C 8007D97C AFAE002C */ sw $t6, 0x2c($sp) -/* 07E580 8007D980 2618FFFF */ addiu $t8, $s0, -1 -/* 07E584 8007D984 0018C880 */ sll $t9, $t8, 2 -/* 07E588 8007D988 000F7300 */ sll $t6, $t7, 0xc -/* 07E58C 8007D98C 00004012 */ mflo $t0 -/* 07E590 8007D990 2508FFFF */ addiu $t0, $t0, -1 -/* 07E594 8007D994 332F0FFF */ andi $t7, $t9, 0xfff -/* 07E598 8007D998 01CFC025 */ or $t8, $t6, $t7 -/* 07E59C 8007D99C AFB80028 */ sw $t8, 0x28($sp) -/* 07E5A0 8007D9A0 AFBF01CC */ sw $ra, 0x1cc($sp) -/* 07E5A4 8007D9A4 24E70008 */ addiu $a3, $a3, 8 -/* 07E5A8 8007D9A8 05810003 */ bgez $t4, .L8007D9B8 -/* 07E5AC 8007D9AC 000C58C3 */ sra $t3, $t4, 3 -/* 07E5B0 8007D9B0 25810007 */ addiu $at, $t4, 7 -/* 07E5B4 8007D9B4 000158C3 */ sra $t3, $at, 3 -.L8007D9B8: -/* 07E5B8 8007D9B8 290107FF */ slti $at, $t0, 0x7ff -/* 07E5BC 8007D9BC 10200003 */ beqz $at, .L8007D9CC -/* 07E5C0 8007D9C0 01605025 */ move $t2, $t3 -/* 07E5C4 8007D9C4 10000002 */ b .L8007D9D0 -/* 07E5C8 8007D9C8 0100F825 */ move $ra, $t0 -.L8007D9CC: -/* 07E5CC 8007D9CC 241F07FF */ li $ra, 2047 -.L8007D9D0: -/* 07E5D0 8007D9D0 1D600003 */ bgtz $t3, .L8007D9E0 -/* 07E5D4 8007D9D4 01602025 */ move $a0, $t3 -/* 07E5D8 8007D9D8 10000001 */ b .L8007D9E0 -/* 07E5DC 8007D9DC 240A0001 */ li $t2, 1 -.L8007D9E0: -/* 07E5E0 8007D9E0 1D600003 */ bgtz $t3, .L8007D9F0 -/* 07E5E4 8007D9E4 255907FF */ addiu $t9, $t2, 0x7ff -/* 07E5E8 8007D9E8 10000001 */ b .L8007D9F0 -/* 07E5EC 8007D9EC 24040001 */ li $a0, 1 -.L8007D9F0: -/* 07E5F0 8007D9F0 0324001A */ div $zero, $t9, $a0 -/* 07E5F4 8007D9F4 00E01025 */ move $v0, $a3 -/* 07E5F8 8007D9F8 14800002 */ bnez $a0, .L8007DA04 -/* 07E5FC 8007D9FC 00000000 */ nop -/* 07E600 8007DA00 0007000D */ break 7 -.L8007DA04: -/* 07E604 8007DA04 2401FFFF */ li $at, -1 -/* 07E608 8007DA08 14810004 */ bne $a0, $at, .L8007DA1C -/* 07E60C 8007DA0C 3C018000 */ lui $at, 0x8000 -/* 07E610 8007DA10 17210002 */ bne $t9, $at, .L8007DA1C -/* 07E614 8007DA14 00000000 */ nop -/* 07E618 8007DA18 0006000D */ break 6 -.L8007DA1C: -/* 07E61C 8007DA1C 33F90FFF */ andi $t9, $ra, 0xfff -/* 07E620 8007DA20 3C010700 */ lui $at, 0x700 -/* 07E624 8007DA24 24E70008 */ addiu $a3, $a3, 8 -/* 07E628 8007DA28 00E01825 */ move $v1, $a3 -/* 07E62C 8007DA2C 24E70008 */ addiu $a3, $a3, 8 -/* 07E630 8007DA30 00E02825 */ move $a1, $a3 -/* 07E634 8007DA34 24E70008 */ addiu $a3, $a3, 8 -/* 07E638 8007DA38 00007012 */ mflo $t6 -/* 07E63C 8007DA3C 31CF0FFF */ andi $t7, $t6, 0xfff -/* 07E640 8007DA40 00197300 */ sll $t6, $t9, 0xc -/* 07E644 8007DA44 8FB901CC */ lw $t9, 0x1cc($sp) -/* 07E648 8007DA48 01E1C025 */ or $t8, $t7, $at -/* 07E64C 8007DA4C 030E7825 */ or $t7, $t8, $t6 -/* 07E650 8007DA50 AF2F0004 */ sw $t7, 4($t9) -/* 07E654 8007DA54 3C18E700 */ lui $t8, 0xe700 -/* 07E658 8007DA58 AC580000 */ sw $t8, ($v0) -/* 07E65C 8007DA5C AC400004 */ sw $zero, 4($v0) -/* 07E660 8007DA60 8FAE0030 */ lw $t6, 0x30($sp) -/* 07E664 8007DA64 3C01F570 */ lui $at, 0xf570 -/* 07E668 8007DA68 01C17825 */ or $t7, $t6, $at -/* 07E66C 8007DA6C AC6F0000 */ sw $t7, ($v1) -/* 07E670 8007DA70 8FB9002C */ lw $t9, 0x2c($sp) -/* 07E674 8007DA74 3C18F200 */ lui $t8, 0xf200 -/* 07E678 8007DA78 AC790004 */ sw $t9, 4($v1) -/* 07E67C 8007DA7C ACB80000 */ sw $t8, ($a1) -/* 07E680 8007DA80 8FAE0028 */ lw $t6, 0x28($sp) -/* 07E684 8007DA84 00000000 */ nop -/* 07E688 8007DA88 ACAE0004 */ sw $t6, 4($a1) -/* 07E68C 8007DA8C 862F0006 */ lh $t7, 6($s1) -/* 07E690 8007DA90 00000000 */ nop -/* 07E694 8007DA94 35F90004 */ ori $t9, $t7, 4 -/* 07E698 8007DA98 A6390006 */ sh $t9, 6($s1) -.L8007DA9C: -/* 07E69C 8007DA9C 8FB8027C */ lw $t8, 0x27c($sp) -/* 07E6A0 8007DAA0 24010005 */ li $at, 5 -/* 07E6A4 8007DAA4 1701007C */ bne $t8, $at, .L8007DC98 -/* 07E6A8 8007DAA8 00E02025 */ move $a0, $a3 -/* 07E6AC 8007DAAC 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 -/* 07E6B0 8007DAB0 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 -/* 07E6B4 8007DAB4 02217821 */ addu $t7, $s1, $at -/* 07E6B8 8007DAB8 AC8F0004 */ sw $t7, 4($a0) -/* 07E6BC 8007DABC 24E70008 */ addiu $a3, $a3, 8 -/* 07E6C0 8007DAC0 3C0EFD70 */ lui $t6, 0xfd70 -/* 07E6C4 8007DAC4 AC8E0000 */ sw $t6, ($a0) -/* 07E6C8 8007DAC8 00E04025 */ move $t0, $a3 -/* 07E6CC 8007DACC 3C19F570 */ lui $t9, 0xf570 -/* 07E6D0 8007DAD0 AD190000 */ sw $t9, ($t0) -/* 07E6D4 8007DAD4 8FA20268 */ lw $v0, 0x268($sp) -/* 07E6D8 8007DAD8 8FA30260 */ lw $v1, 0x260($sp) -/* 07E6DC 8007DADC 8FA5026C */ lw $a1, 0x26c($sp) -/* 07E6E0 8007DAE0 30580003 */ andi $t8, $v0, 3 -/* 07E6E4 8007DAE4 8FA60264 */ lw $a2, 0x264($sp) -/* 07E6E8 8007DAE8 00181480 */ sll $v0, $t8, 0x12 -/* 07E6EC 8007DAEC 306F000F */ andi $t7, $v1, 0xf -/* 07E6F0 8007DAF0 000F1B80 */ sll $v1, $t7, 0xe -/* 07E6F4 8007DAF4 30B80003 */ andi $t8, $a1, 3 -/* 07E6F8 8007DAF8 00182A00 */ sll $a1, $t8, 8 -/* 07E6FC 8007DAFC 3C010700 */ lui $at, 0x700 -/* 07E700 8007DB00 30CF000F */ andi $t7, $a2, 0xf -/* 07E704 8007DB04 000FC900 */ sll $t9, $t7, 4 -/* 07E708 8007DB08 0041C025 */ or $t8, $v0, $at -/* 07E70C 8007DB0C 01B00019 */ multu $t5, $s0 -/* 07E710 8007DB10 03037025 */ or $t6, $t8, $v1 -/* 07E714 8007DB14 01C57825 */ or $t7, $t6, $a1 -/* 07E718 8007DB18 03203025 */ move $a2, $t9 -/* 07E71C 8007DB1C 01F9C825 */ or $t9, $t7, $t9 -/* 07E720 8007DB20 24E70008 */ addiu $a3, $a3, 8 -/* 07E724 8007DB24 00E04825 */ move $t1, $a3 -/* 07E728 8007DB28 AD190004 */ sw $t9, 4($t0) -/* 07E72C 8007DB2C 24E70008 */ addiu $a3, $a3, 8 -/* 07E730 8007DB30 3C18E600 */ lui $t8, 0xe600 -/* 07E734 8007DB34 AD380000 */ sw $t8, ($t1) -/* 07E738 8007DB38 00E05825 */ move $t3, $a3 -/* 07E73C 8007DB3C AD200004 */ sw $zero, 4($t1) -/* 07E740 8007DB40 00437825 */ or $t7, $v0, $v1 -/* 07E744 8007DB44 3C0EF300 */ lui $t6, 0xf300 -/* 07E748 8007DB48 AD6E0000 */ sw $t6, ($t3) -/* 07E74C 8007DB4C 01E5C825 */ or $t9, $t7, $a1 -/* 07E750 8007DB50 25AEFFFF */ addiu $t6, $t5, -1 -/* 07E754 8007DB54 000E7880 */ sll $t7, $t6, 2 -/* 07E758 8007DB58 0326C025 */ or $t8, $t9, $a2 -/* 07E75C 8007DB5C 31F90FFF */ andi $t9, $t7, 0xfff -/* 07E760 8007DB60 AFB8002C */ sw $t8, 0x2c($sp) -/* 07E764 8007DB64 260EFFFF */ addiu $t6, $s0, -1 -/* 07E768 8007DB68 000E7880 */ sll $t7, $t6, 2 -/* 07E76C 8007DB6C 0019C300 */ sll $t8, $t9, 0xc -/* 07E770 8007DB70 00005012 */ mflo $t2 -/* 07E774 8007DB74 25480001 */ addiu $t0, $t2, 1 -/* 07E778 8007DB78 31F90FFF */ andi $t9, $t7, 0xfff -/* 07E77C 8007DB7C 00087843 */ sra $t7, $t0, 1 -/* 07E780 8007DB80 25E8FFFF */ addiu $t0, $t7, -1 -/* 07E784 8007DB84 290107FF */ slti $at, $t0, 0x7ff -/* 07E788 8007DB88 03197025 */ or $t6, $t8, $t9 -/* 07E78C 8007DB8C AFAE0028 */ sw $t6, 0x28($sp) -/* 07E790 8007DB90 AFAB01B0 */ sw $t3, 0x1b0($sp) -/* 07E794 8007DB94 10200003 */ beqz $at, .L8007DBA4 -/* 07E798 8007DB98 24E70008 */ addiu $a3, $a3, 8 -/* 07E79C 8007DB9C 10000002 */ b .L8007DBA8 -/* 07E7A0 8007DBA0 0100F825 */ move $ra, $t0 -.L8007DBA4: -/* 07E7A4 8007DBA4 241F07FF */ li $ra, 2047 -.L8007DBA8: -/* 07E7A8 8007DBA8 01A06025 */ move $t4, $t5 -/* 07E7AC 8007DBAC 05810003 */ bgez $t4, .L8007DBBC -/* 07E7B0 8007DBB0 000C58C3 */ sra $t3, $t4, 3 -/* 07E7B4 8007DBB4 25810007 */ addiu $at, $t4, 7 -/* 07E7B8 8007DBB8 000158C3 */ sra $t3, $at, 3 -.L8007DBBC: -/* 07E7BC 8007DBBC 1D600003 */ bgtz $t3, .L8007DBCC -/* 07E7C0 8007DBC0 01605025 */ move $t2, $t3 -/* 07E7C4 8007DBC4 10000001 */ b .L8007DBCC -/* 07E7C8 8007DBC8 240A0001 */ li $t2, 1 -.L8007DBCC: -/* 07E7CC 8007DBCC 1D600003 */ bgtz $t3, .L8007DBDC -/* 07E7D0 8007DBD0 255807FF */ addiu $t8, $t2, 0x7ff -/* 07E7D4 8007DBD4 10000002 */ b .L8007DBE0 -/* 07E7D8 8007DBD8 24040001 */ li $a0, 1 -.L8007DBDC: -/* 07E7DC 8007DBDC 01602025 */ move $a0, $t3 -.L8007DBE0: -/* 07E7E0 8007DBE0 0304001A */ div $zero, $t8, $a0 -/* 07E7E4 8007DBE4 00E01025 */ move $v0, $a3 -/* 07E7E8 8007DBE8 14800002 */ bnez $a0, .L8007DBF4 -/* 07E7EC 8007DBEC 00000000 */ nop -/* 07E7F0 8007DBF0 0007000D */ break 7 -.L8007DBF4: -/* 07E7F4 8007DBF4 2401FFFF */ li $at, -1 -/* 07E7F8 8007DBF8 14810004 */ bne $a0, $at, .L8007DC0C -/* 07E7FC 8007DBFC 3C018000 */ lui $at, 0x8000 -/* 07E800 8007DC00 17010002 */ bne $t8, $at, .L8007DC0C -/* 07E804 8007DC04 00000000 */ nop -/* 07E808 8007DC08 0006000D */ break 6 -.L8007DC0C: -/* 07E80C 8007DC0C 33F80FFF */ andi $t8, $ra, 0xfff -/* 07E810 8007DC10 3C010700 */ lui $at, 0x700 -/* 07E814 8007DC14 24E70008 */ addiu $a3, $a3, 8 -/* 07E818 8007DC18 00E01825 */ move $v1, $a3 -/* 07E81C 8007DC1C 24E70008 */ addiu $a3, $a3, 8 -/* 07E820 8007DC20 00E02825 */ move $a1, $a3 -/* 07E824 8007DC24 24E70008 */ addiu $a3, $a3, 8 -/* 07E828 8007DC28 0000C812 */ mflo $t9 -/* 07E82C 8007DC2C 332E0FFF */ andi $t6, $t9, 0xfff -/* 07E830 8007DC30 0018CB00 */ sll $t9, $t8, 0xc -/* 07E834 8007DC34 01C17825 */ or $t7, $t6, $at -/* 07E838 8007DC38 8FB801B0 */ lw $t8, 0x1b0($sp) -/* 07E83C 8007DC3C 01F97025 */ or $t6, $t7, $t9 -/* 07E840 8007DC40 AF0E0004 */ sw $t6, 4($t8) -/* 07E844 8007DC44 25990007 */ addiu $t9, $t4, 7 -/* 07E848 8007DC48 001970C3 */ sra $t6, $t9, 3 -/* 07E84C 8007DC4C 3C0FE700 */ lui $t7, 0xe700 -/* 07E850 8007DC50 AC4F0000 */ sw $t7, ($v0) -/* 07E854 8007DC54 31D801FF */ andi $t8, $t6, 0x1ff -/* 07E858 8007DC58 00187A40 */ sll $t7, $t8, 9 -/* 07E85C 8007DC5C 3C01F568 */ lui $at, 0xf568 -/* 07E860 8007DC60 01E1C825 */ or $t9, $t7, $at -/* 07E864 8007DC64 AC400004 */ sw $zero, 4($v0) -/* 07E868 8007DC68 AC790000 */ sw $t9, ($v1) -/* 07E86C 8007DC6C 8FAE002C */ lw $t6, 0x2c($sp) -/* 07E870 8007DC70 3C18F200 */ lui $t8, 0xf200 -/* 07E874 8007DC74 AC6E0004 */ sw $t6, 4($v1) -/* 07E878 8007DC78 ACB80000 */ sw $t8, ($a1) -/* 07E87C 8007DC7C 8FAF0028 */ lw $t7, 0x28($sp) -/* 07E880 8007DC80 00000000 */ nop -/* 07E884 8007DC84 ACAF0004 */ sw $t7, 4($a1) -/* 07E888 8007DC88 86390006 */ lh $t9, 6($s1) -/* 07E88C 8007DC8C 00000000 */ nop -/* 07E890 8007DC90 372E0004 */ ori $t6, $t9, 4 -/* 07E894 8007DC94 A62E0006 */ sh $t6, 6($s1) -.L8007DC98: -/* 07E898 8007DC98 8FB8027C */ lw $t8, 0x27c($sp) -/* 07E89C 8007DC9C 24010006 */ li $at, 6 -/* 07E8A0 8007DCA0 17010074 */ bne $t8, $at, .L8007DE74 -/* 07E8A4 8007DCA4 00E02025 */ move $a0, $a3 -/* 07E8A8 8007DCA8 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 -/* 07E8AC 8007DCAC 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 -/* 07E8B0 8007DCB0 0221C821 */ addu $t9, $s1, $at -/* 07E8B4 8007DCB4 AC990004 */ sw $t9, 4($a0) -/* 07E8B8 8007DCB8 24E70008 */ addiu $a3, $a3, 8 -/* 07E8BC 8007DCBC 3C0FFD70 */ lui $t7, 0xfd70 -/* 07E8C0 8007DCC0 AC8F0000 */ sw $t7, ($a0) -/* 07E8C4 8007DCC4 00E05025 */ move $t2, $a3 -/* 07E8C8 8007DCC8 3C0EF570 */ lui $t6, 0xf570 -/* 07E8CC 8007DCCC AD4E0000 */ sw $t6, ($t2) -/* 07E8D0 8007DCD0 8FA20268 */ lw $v0, 0x268($sp) -/* 07E8D4 8007DCD4 8FA30260 */ lw $v1, 0x260($sp) -/* 07E8D8 8007DCD8 8FA5026C */ lw $a1, 0x26c($sp) -/* 07E8DC 8007DCDC 30580003 */ andi $t8, $v0, 3 -/* 07E8E0 8007DCE0 8FA60264 */ lw $a2, 0x264($sp) -/* 07E8E4 8007DCE4 00181480 */ sll $v0, $t8, 0x12 -/* 07E8E8 8007DCE8 3079000F */ andi $t9, $v1, 0xf -/* 07E8EC 8007DCEC 00191B80 */ sll $v1, $t9, 0xe -/* 07E8F0 8007DCF0 30B80003 */ andi $t8, $a1, 3 -/* 07E8F4 8007DCF4 00182A00 */ sll $a1, $t8, 8 -/* 07E8F8 8007DCF8 3C010700 */ lui $at, 0x700 -/* 07E8FC 8007DCFC 30D9000F */ andi $t9, $a2, 0xf -/* 07E900 8007DD00 00197100 */ sll $t6, $t9, 4 -/* 07E904 8007DD04 0041C025 */ or $t8, $v0, $at -/* 07E908 8007DD08 03037825 */ or $t7, $t8, $v1 -/* 07E90C 8007DD0C 01B00019 */ multu $t5, $s0 -/* 07E910 8007DD10 01E5C825 */ or $t9, $t7, $a1 -/* 07E914 8007DD14 01C03025 */ move $a2, $t6 -/* 07E918 8007DD18 032E7025 */ or $t6, $t9, $t6 -/* 07E91C 8007DD1C 24E70008 */ addiu $a3, $a3, 8 -/* 07E920 8007DD20 00E05825 */ move $t3, $a3 -/* 07E924 8007DD24 AD4E0004 */ sw $t6, 4($t2) -/* 07E928 8007DD28 24E70008 */ addiu $a3, $a3, 8 -/* 07E92C 8007DD2C 3C18E600 */ lui $t8, 0xe600 -/* 07E930 8007DD30 AD780000 */ sw $t8, ($t3) -/* 07E934 8007DD34 00E06025 */ move $t4, $a3 -/* 07E938 8007DD38 AD600004 */ sw $zero, 4($t3) -/* 07E93C 8007DD3C 0043C825 */ or $t9, $v0, $v1 -/* 07E940 8007DD40 3C0FF300 */ lui $t7, 0xf300 -/* 07E944 8007DD44 AD8F0000 */ sw $t7, ($t4) -/* 07E948 8007DD48 03257025 */ or $t6, $t9, $a1 -/* 07E94C 8007DD4C 25AFFFFF */ addiu $t7, $t5, -1 -/* 07E950 8007DD50 000FC880 */ sll $t9, $t7, 2 -/* 07E954 8007DD54 01C6C025 */ or $t8, $t6, $a2 -/* 07E958 8007DD58 332E0FFF */ andi $t6, $t9, 0xfff -/* 07E95C 8007DD5C AFB8002C */ sw $t8, 0x2c($sp) -/* 07E960 8007DD60 260FFFFF */ addiu $t7, $s0, -1 -/* 07E964 8007DD64 000FC880 */ sll $t9, $t7, 2 -/* 07E968 8007DD68 000EC300 */ sll $t8, $t6, 0xc -/* 07E96C 8007DD6C 00004012 */ mflo $t0 -/* 07E970 8007DD70 332E0FFF */ andi $t6, $t9, 0xfff -/* 07E974 8007DD74 030E7825 */ or $t7, $t8, $t6 -/* 07E978 8007DD78 25080003 */ addiu $t0, $t0, 3 -/* 07E97C 8007DD7C 0008C883 */ sra $t9, $t0, 2 -/* 07E980 8007DD80 000DF843 */ sra $ra, $t5, 1 -/* 07E984 8007DD84 27FF0007 */ addiu $ra, $ra, 7 -/* 07E988 8007DD88 2728FFFF */ addiu $t0, $t9, -1 -/* 07E98C 8007DD8C 001FC8C3 */ sra $t9, $ra, 3 -/* 07E990 8007DD90 AFAF0028 */ sw $t7, 0x28($sp) -/* 07E994 8007DD94 24E70008 */ addiu $a3, $a3, 8 -/* 07E998 8007DD98 05A10003 */ bgez $t5, .L8007DDA8 -/* 07E99C 8007DD9C 000D4903 */ sra $t1, $t5, 4 -/* 07E9A0 8007DDA0 25A1000F */ addiu $at, $t5, 0xf -/* 07E9A4 8007DDA4 00014903 */ sra $t1, $at, 4 -.L8007DDA8: -/* 07E9A8 8007DDA8 253807FF */ addiu $t8, $t1, 0x7ff -/* 07E9AC 8007DDAC 0309001A */ div $zero, $t8, $t1 -/* 07E9B0 8007DDB0 15200002 */ bnez $t1, .L8007DDBC -/* 07E9B4 8007DDB4 00000000 */ nop -/* 07E9B8 8007DDB8 0007000D */ break 7 -.L8007DDBC: -/* 07E9BC 8007DDBC 2401FFFF */ li $at, -1 -/* 07E9C0 8007DDC0 15210004 */ bne $t1, $at, .L8007DDD4 -/* 07E9C4 8007DDC4 3C018000 */ lui $at, 0x8000 -/* 07E9C8 8007DDC8 17010002 */ bne $t8, $at, .L8007DDD4 -/* 07E9CC 8007DDCC 00000000 */ nop -/* 07E9D0 8007DDD0 0006000D */ break 6 -.L8007DDD4: -/* 07E9D4 8007DDD4 333801FF */ andi $t8, $t9, 0x1ff -/* 07E9D8 8007DDD8 00E01025 */ move $v0, $a3 -/* 07E9DC 8007DDDC 24E70008 */ addiu $a3, $a3, 8 -/* 07E9E0 8007DDE0 290107FF */ slti $at, $t0, 0x7ff -/* 07E9E4 8007DDE4 00E01825 */ move $v1, $a3 -/* 07E9E8 8007DDE8 240407FF */ li $a0, 2047 -/* 07E9EC 8007DDEC 00007012 */ mflo $t6 -/* 07E9F0 8007DDF0 31CF0FFF */ andi $t7, $t6, 0xfff -/* 07E9F4 8007DDF4 00187240 */ sll $t6, $t8, 9 -/* 07E9F8 8007DDF8 01C0F825 */ move $ra, $t6 -/* 07E9FC 8007DDFC 10200003 */ beqz $at, .L8007DE0C -/* 07EA00 8007DE00 AFAF0030 */ sw $t7, 0x30($sp) -/* 07EA04 8007DE04 10000001 */ b .L8007DE0C -/* 07EA08 8007DE08 01002025 */ move $a0, $t0 -.L8007DE0C: -/* 07EA0C 8007DE0C 308F0FFF */ andi $t7, $a0, 0xfff -/* 07EA10 8007DE10 8FAE0030 */ lw $t6, 0x30($sp) -/* 07EA14 8007DE14 000FCB00 */ sll $t9, $t7, 0xc -/* 07EA18 8007DE18 3C010700 */ lui $at, 0x700 -/* 07EA1C 8007DE1C 0321C025 */ or $t8, $t9, $at -/* 07EA20 8007DE20 030E7825 */ or $t7, $t8, $t6 -/* 07EA24 8007DE24 AD8F0004 */ sw $t7, 4($t4) -/* 07EA28 8007DE28 3C01F560 */ lui $at, 0xf560 -/* 07EA2C 8007DE2C 3C19E700 */ lui $t9, 0xe700 -/* 07EA30 8007DE30 AC590000 */ sw $t9, ($v0) -/* 07EA34 8007DE34 03E1C025 */ or $t8, $ra, $at -/* 07EA38 8007DE38 AC400004 */ sw $zero, 4($v0) -/* 07EA3C 8007DE3C AC780000 */ sw $t8, ($v1) -/* 07EA40 8007DE40 8FAE002C */ lw $t6, 0x2c($sp) -/* 07EA44 8007DE44 24E70008 */ addiu $a3, $a3, 8 -/* 07EA48 8007DE48 00E02825 */ move $a1, $a3 -/* 07EA4C 8007DE4C 3C0FF200 */ lui $t7, 0xf200 -/* 07EA50 8007DE50 AC6E0004 */ sw $t6, 4($v1) -/* 07EA54 8007DE54 ACAF0000 */ sw $t7, ($a1) -/* 07EA58 8007DE58 8FB90028 */ lw $t9, 0x28($sp) -/* 07EA5C 8007DE5C 24E70008 */ addiu $a3, $a3, 8 -/* 07EA60 8007DE60 ACB90004 */ sw $t9, 4($a1) -/* 07EA64 8007DE64 86380006 */ lh $t8, 6($s1) -/* 07EA68 8007DE68 00000000 */ nop -/* 07EA6C 8007DE6C 370E0004 */ ori $t6, $t8, 4 -/* 07EA70 8007DE70 A62E0006 */ sh $t6, 6($s1) -.L8007DE74: -/* 07EA74 8007DE74 8FAF027C */ lw $t7, 0x27c($sp) -/* 07EA78 8007DE78 24010002 */ li $at, 2 -/* 07EA7C 8007DE7C 15E1007A */ bne $t7, $at, .L8007E068 -/* 07EA80 8007DE80 00E02025 */ move $a0, $a3 -/* 07EA84 8007DE84 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 -/* 07EA88 8007DE88 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 -/* 07EA8C 8007DE8C 0221C021 */ addu $t8, $s1, $at -/* 07EA90 8007DE90 AC980004 */ sw $t8, 4($a0) -/* 07EA94 8007DE94 24E70008 */ addiu $a3, $a3, 8 -/* 07EA98 8007DE98 3C19FD90 */ lui $t9, 0xfd90 -/* 07EA9C 8007DE9C AC990000 */ sw $t9, ($a0) -/* 07EAA0 8007DEA0 00E04825 */ move $t1, $a3 -/* 07EAA4 8007DEA4 3C0EF590 */ lui $t6, 0xf590 -/* 07EAA8 8007DEA8 AD2E0000 */ sw $t6, ($t1) -/* 07EAAC 8007DEAC 8FA20268 */ lw $v0, 0x268($sp) -/* 07EAB0 8007DEB0 8FA30260 */ lw $v1, 0x260($sp) -/* 07EAB4 8007DEB4 8FA5026C */ lw $a1, 0x26c($sp) -/* 07EAB8 8007DEB8 304F0003 */ andi $t7, $v0, 3 -/* 07EABC 8007DEBC 8FA60264 */ lw $a2, 0x264($sp) -/* 07EAC0 8007DEC0 000F1480 */ sll $v0, $t7, 0x12 -/* 07EAC4 8007DEC4 3078000F */ andi $t8, $v1, 0xf -/* 07EAC8 8007DEC8 00181B80 */ sll $v1, $t8, 0xe -/* 07EACC 8007DECC 30AF0003 */ andi $t7, $a1, 3 -/* 07EAD0 8007DED0 000F2A00 */ sll $a1, $t7, 8 -/* 07EAD4 8007DED4 3C010700 */ lui $at, 0x700 -/* 07EAD8 8007DED8 30D8000F */ andi $t8, $a2, 0xf -/* 07EADC 8007DEDC 00187100 */ sll $t6, $t8, 4 -/* 07EAE0 8007DEE0 00417825 */ or $t7, $v0, $at -/* 07EAE4 8007DEE4 01E3C825 */ or $t9, $t7, $v1 -/* 07EAE8 8007DEE8 0325C025 */ or $t8, $t9, $a1 -/* 07EAEC 8007DEEC 01C03025 */ move $a2, $t6 -/* 07EAF0 8007DEF0 01B00019 */ multu $t5, $s0 -/* 07EAF4 8007DEF4 030E7025 */ or $t6, $t8, $t6 -/* 07EAF8 8007DEF8 24E70008 */ addiu $a3, $a3, 8 -/* 07EAFC 8007DEFC 00E05025 */ move $t2, $a3 -/* 07EB00 8007DF00 AD2E0004 */ sw $t6, 4($t1) -/* 07EB04 8007DF04 24E70008 */ addiu $a3, $a3, 8 -/* 07EB08 8007DF08 3C0FE600 */ lui $t7, 0xe600 -/* 07EB0C 8007DF0C AD4F0000 */ sw $t7, ($t2) -/* 07EB10 8007DF10 00E0F825 */ move $ra, $a3 -/* 07EB14 8007DF14 AD400004 */ sw $zero, 4($t2) -/* 07EB18 8007DF18 0043C025 */ or $t8, $v0, $v1 -/* 07EB1C 8007DF1C 3C19F300 */ lui $t9, 0xf300 -/* 07EB20 8007DF20 AFF90000 */ sw $t9, ($ra) -/* 07EB24 8007DF24 03057025 */ or $t6, $t8, $a1 -/* 07EB28 8007DF28 25B9FFFF */ addiu $t9, $t5, -1 -/* 07EB2C 8007DF2C 0019C080 */ sll $t8, $t9, 2 -/* 07EB30 8007DF30 01C67825 */ or $t7, $t6, $a2 -/* 07EB34 8007DF34 330E0FFF */ andi $t6, $t8, 0xfff -/* 07EB38 8007DF38 AFAF002C */ sw $t7, 0x2c($sp) -/* 07EB3C 8007DF3C 2619FFFF */ addiu $t9, $s0, -1 -/* 07EB40 8007DF40 0019C080 */ sll $t8, $t9, 2 -/* 07EB44 8007DF44 000E7B00 */ sll $t7, $t6, 0xc -/* 07EB48 8007DF48 330E0FFF */ andi $t6, $t8, 0xfff -/* 07EB4C 8007DF4C 01EEC825 */ or $t9, $t7, $t6 -/* 07EB50 8007DF50 00004012 */ mflo $t0 -/* 07EB54 8007DF54 25080001 */ addiu $t0, $t0, 1 -/* 07EB58 8007DF58 01A06025 */ move $t4, $t5 -/* 07EB5C 8007DF5C 258F0007 */ addiu $t7, $t4, 7 -/* 07EB60 8007DF60 0008C043 */ sra $t8, $t0, 1 -/* 07EB64 8007DF64 2708FFFF */ addiu $t0, $t8, -1 -/* 07EB68 8007DF68 000F70C3 */ sra $t6, $t7, 3 -/* 07EB6C 8007DF6C AFB90028 */ sw $t9, 0x28($sp) -/* 07EB70 8007DF70 31D901FF */ andi $t9, $t6, 0x1ff -/* 07EB74 8007DF74 0019C240 */ sll $t8, $t9, 9 -/* 07EB78 8007DF78 AFB80024 */ sw $t8, 0x24($sp) -/* 07EB7C 8007DF7C AFBF0178 */ sw $ra, 0x178($sp) -/* 07EB80 8007DF80 24E70008 */ addiu $a3, $a3, 8 -/* 07EB84 8007DF84 05810003 */ bgez $t4, .L8007DF94 -/* 07EB88 8007DF88 000C58C3 */ sra $t3, $t4, 3 -/* 07EB8C 8007DF8C 25810007 */ addiu $at, $t4, 7 -/* 07EB90 8007DF90 000158C3 */ sra $t3, $at, 3 -.L8007DF94: -/* 07EB94 8007DF94 290107FF */ slti $at, $t0, 0x7ff -/* 07EB98 8007DF98 10200003 */ beqz $at, .L8007DFA8 -/* 07EB9C 8007DF9C 03006025 */ move $t4, $t8 -/* 07EBA0 8007DFA0 10000002 */ b .L8007DFAC -/* 07EBA4 8007DFA4 0100F825 */ move $ra, $t0 -.L8007DFA8: -/* 07EBA8 8007DFA8 241F07FF */ li $ra, 2047 -.L8007DFAC: -/* 07EBAC 8007DFAC 1D600003 */ bgtz $t3, .L8007DFBC -/* 07EBB0 8007DFB0 01605025 */ move $t2, $t3 -/* 07EBB4 8007DFB4 10000001 */ b .L8007DFBC -/* 07EBB8 8007DFB8 240A0001 */ li $t2, 1 -.L8007DFBC: -/* 07EBBC 8007DFBC 1D600003 */ bgtz $t3, .L8007DFCC -/* 07EBC0 8007DFC0 254F07FF */ addiu $t7, $t2, 0x7ff -/* 07EBC4 8007DFC4 10000002 */ b .L8007DFD0 -/* 07EBC8 8007DFC8 24040001 */ li $a0, 1 -.L8007DFCC: -/* 07EBCC 8007DFCC 01602025 */ move $a0, $t3 -.L8007DFD0: -/* 07EBD0 8007DFD0 01E4001A */ div $zero, $t7, $a0 -/* 07EBD4 8007DFD4 00E01025 */ move $v0, $a3 -/* 07EBD8 8007DFD8 14800002 */ bnez $a0, .L8007DFE4 -/* 07EBDC 8007DFDC 00000000 */ nop -/* 07EBE0 8007DFE0 0007000D */ break 7 -.L8007DFE4: -/* 07EBE4 8007DFE4 2401FFFF */ li $at, -1 -/* 07EBE8 8007DFE8 14810004 */ bne $a0, $at, .L8007DFFC -/* 07EBEC 8007DFEC 3C018000 */ lui $at, 0x8000 -/* 07EBF0 8007DFF0 15E10002 */ bne $t7, $at, .L8007DFFC -/* 07EBF4 8007DFF4 00000000 */ nop -/* 07EBF8 8007DFF8 0006000D */ break 6 -.L8007DFFC: -/* 07EBFC 8007DFFC 33EF0FFF */ andi $t7, $ra, 0xfff -/* 07EC00 8007E000 3C010700 */ lui $at, 0x700 -/* 07EC04 8007E004 24E70008 */ addiu $a3, $a3, 8 -/* 07EC08 8007E008 00E01825 */ move $v1, $a3 -/* 07EC0C 8007E00C 24E70008 */ addiu $a3, $a3, 8 -/* 07EC10 8007E010 00E02825 */ move $a1, $a3 -/* 07EC14 8007E014 24E70008 */ addiu $a3, $a3, 8 -/* 07EC18 8007E018 00007012 */ mflo $t6 -/* 07EC1C 8007E01C 31D90FFF */ andi $t9, $t6, 0xfff -/* 07EC20 8007E020 000F7300 */ sll $t6, $t7, 0xc -/* 07EC24 8007E024 8FAF0178 */ lw $t7, 0x178($sp) -/* 07EC28 8007E028 0321C025 */ or $t8, $t9, $at -/* 07EC2C 8007E02C 030EC825 */ or $t9, $t8, $t6 -/* 07EC30 8007E030 ADF90004 */ sw $t9, 4($t7) -/* 07EC34 8007E034 3C18E700 */ lui $t8, 0xe700 -/* 07EC38 8007E038 3C01F588 */ lui $at, 0xf588 -/* 07EC3C 8007E03C 01817025 */ or $t6, $t4, $at -/* 07EC40 8007E040 AC580000 */ sw $t8, ($v0) -/* 07EC44 8007E044 AC400004 */ sw $zero, 4($v0) -/* 07EC48 8007E048 AC6E0000 */ sw $t6, ($v1) -/* 07EC4C 8007E04C 8FB9002C */ lw $t9, 0x2c($sp) -/* 07EC50 8007E050 3C0FF200 */ lui $t7, 0xf200 -/* 07EC54 8007E054 AC790004 */ sw $t9, 4($v1) -/* 07EC58 8007E058 ACAF0000 */ sw $t7, ($a1) -/* 07EC5C 8007E05C 8FB80028 */ lw $t8, 0x28($sp) -/* 07EC60 8007E060 00000000 */ nop -/* 07EC64 8007E064 ACB80004 */ sw $t8, 4($a1) -.L8007E068: -/* 07EC68 8007E068 8FAE027C */ lw $t6, 0x27c($sp) -/* 07EC6C 8007E06C 24010003 */ li $at, 3 -/* 07EC70 8007E070 15C10070 */ bne $t6, $at, .L8007E234 -/* 07EC74 8007E074 00E02025 */ move $a0, $a3 -/* 07EC78 8007E078 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 -/* 07EC7C 8007E07C 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 -/* 07EC80 8007E080 02217821 */ addu $t7, $s1, $at -/* 07EC84 8007E084 AC8F0004 */ sw $t7, 4($a0) -/* 07EC88 8007E088 24E70008 */ addiu $a3, $a3, 8 -/* 07EC8C 8007E08C 3C19FD90 */ lui $t9, 0xfd90 -/* 07EC90 8007E090 AC990000 */ sw $t9, ($a0) -/* 07EC94 8007E094 00E05025 */ move $t2, $a3 -/* 07EC98 8007E098 3C18F590 */ lui $t8, 0xf590 -/* 07EC9C 8007E09C AD580000 */ sw $t8, ($t2) -/* 07ECA0 8007E0A0 8FA20268 */ lw $v0, 0x268($sp) -/* 07ECA4 8007E0A4 8FA30260 */ lw $v1, 0x260($sp) -/* 07ECA8 8007E0A8 8FA5026C */ lw $a1, 0x26c($sp) -/* 07ECAC 8007E0AC 304E0003 */ andi $t6, $v0, 3 -/* 07ECB0 8007E0B0 8FA60264 */ lw $a2, 0x264($sp) -/* 07ECB4 8007E0B4 000E1480 */ sll $v0, $t6, 0x12 -/* 07ECB8 8007E0B8 306F000F */ andi $t7, $v1, 0xf -/* 07ECBC 8007E0BC 000F1B80 */ sll $v1, $t7, 0xe -/* 07ECC0 8007E0C0 30AE0003 */ andi $t6, $a1, 3 -/* 07ECC4 8007E0C4 000E2A00 */ sll $a1, $t6, 8 -/* 07ECC8 8007E0C8 3C010700 */ lui $at, 0x700 -/* 07ECCC 8007E0CC 30CF000F */ andi $t7, $a2, 0xf -/* 07ECD0 8007E0D0 000FC100 */ sll $t8, $t7, 4 -/* 07ECD4 8007E0D4 00417025 */ or $t6, $v0, $at -/* 07ECD8 8007E0D8 01C3C825 */ or $t9, $t6, $v1 -/* 07ECDC 8007E0DC 01B00019 */ multu $t5, $s0 -/* 07ECE0 8007E0E0 03257825 */ or $t7, $t9, $a1 -/* 07ECE4 8007E0E4 03003025 */ move $a2, $t8 -/* 07ECE8 8007E0E8 01F8C025 */ or $t8, $t7, $t8 -/* 07ECEC 8007E0EC 24E70008 */ addiu $a3, $a3, 8 -/* 07ECF0 8007E0F0 00E05825 */ move $t3, $a3 -/* 07ECF4 8007E0F4 AD580004 */ sw $t8, 4($t2) -/* 07ECF8 8007E0F8 24E70008 */ addiu $a3, $a3, 8 -/* 07ECFC 8007E0FC 3C0EE600 */ lui $t6, 0xe600 -/* 07ED00 8007E100 AD6E0000 */ sw $t6, ($t3) -/* 07ED04 8007E104 00E06025 */ move $t4, $a3 -/* 07ED08 8007E108 AD600004 */ sw $zero, 4($t3) -/* 07ED0C 8007E10C 00437825 */ or $t7, $v0, $v1 -/* 07ED10 8007E110 3C19F300 */ lui $t9, 0xf300 -/* 07ED14 8007E114 AD990000 */ sw $t9, ($t4) -/* 07ED18 8007E118 01E5C025 */ or $t8, $t7, $a1 -/* 07ED1C 8007E11C 25B9FFFF */ addiu $t9, $t5, -1 -/* 07ED20 8007E120 00197880 */ sll $t7, $t9, 2 -/* 07ED24 8007E124 03067025 */ or $t6, $t8, $a2 -/* 07ED28 8007E128 31F80FFF */ andi $t8, $t7, 0xfff -/* 07ED2C 8007E12C AFAE002C */ sw $t6, 0x2c($sp) -/* 07ED30 8007E130 2619FFFF */ addiu $t9, $s0, -1 -/* 07ED34 8007E134 00197880 */ sll $t7, $t9, 2 -/* 07ED38 8007E138 00187300 */ sll $t6, $t8, 0xc -/* 07ED3C 8007E13C 00004012 */ mflo $t0 -/* 07ED40 8007E140 31F80FFF */ andi $t8, $t7, 0xfff -/* 07ED44 8007E144 01D8C825 */ or $t9, $t6, $t8 -/* 07ED48 8007E148 25080003 */ addiu $t0, $t0, 3 -/* 07ED4C 8007E14C 00087883 */ sra $t7, $t0, 2 -/* 07ED50 8007E150 000DF843 */ sra $ra, $t5, 1 -/* 07ED54 8007E154 27FF0007 */ addiu $ra, $ra, 7 -/* 07ED58 8007E158 25E8FFFF */ addiu $t0, $t7, -1 -/* 07ED5C 8007E15C 001F78C3 */ sra $t7, $ra, 3 -/* 07ED60 8007E160 AFB90028 */ sw $t9, 0x28($sp) -/* 07ED64 8007E164 24E70008 */ addiu $a3, $a3, 8 -/* 07ED68 8007E168 05A10003 */ bgez $t5, .L8007E178 -/* 07ED6C 8007E16C 000D4903 */ sra $t1, $t5, 4 -/* 07ED70 8007E170 25A1000F */ addiu $at, $t5, 0xf -/* 07ED74 8007E174 00014903 */ sra $t1, $at, 4 -.L8007E178: -/* 07ED78 8007E178 252E07FF */ addiu $t6, $t1, 0x7ff -/* 07ED7C 8007E17C 01C9001A */ div $zero, $t6, $t1 -/* 07ED80 8007E180 15200002 */ bnez $t1, .L8007E18C -/* 07ED84 8007E184 00000000 */ nop -/* 07ED88 8007E188 0007000D */ break 7 -.L8007E18C: -/* 07ED8C 8007E18C 2401FFFF */ li $at, -1 -/* 07ED90 8007E190 15210004 */ bne $t1, $at, .L8007E1A4 -/* 07ED94 8007E194 3C018000 */ lui $at, 0x8000 -/* 07ED98 8007E198 15C10002 */ bne $t6, $at, .L8007E1A4 -/* 07ED9C 8007E19C 00000000 */ nop -/* 07EDA0 8007E1A0 0006000D */ break 6 -.L8007E1A4: -/* 07EDA4 8007E1A4 31EE01FF */ andi $t6, $t7, 0x1ff -/* 07EDA8 8007E1A8 00E01025 */ move $v0, $a3 -/* 07EDAC 8007E1AC 24E70008 */ addiu $a3, $a3, 8 -/* 07EDB0 8007E1B0 290107FF */ slti $at, $t0, 0x7ff -/* 07EDB4 8007E1B4 00E01825 */ move $v1, $a3 -/* 07EDB8 8007E1B8 240407FF */ li $a0, 2047 -/* 07EDBC 8007E1BC 0000C012 */ mflo $t8 -/* 07EDC0 8007E1C0 33190FFF */ andi $t9, $t8, 0xfff -/* 07EDC4 8007E1C4 000EC240 */ sll $t8, $t6, 9 -/* 07EDC8 8007E1C8 0300F825 */ move $ra, $t8 -/* 07EDCC 8007E1CC 10200003 */ beqz $at, .L8007E1DC -/* 07EDD0 8007E1D0 AFB90030 */ sw $t9, 0x30($sp) -/* 07EDD4 8007E1D4 10000001 */ b .L8007E1DC -/* 07EDD8 8007E1D8 01002025 */ move $a0, $t0 -.L8007E1DC: -/* 07EDDC 8007E1DC 30990FFF */ andi $t9, $a0, 0xfff -/* 07EDE0 8007E1E0 8FB80030 */ lw $t8, 0x30($sp) -/* 07EDE4 8007E1E4 00197B00 */ sll $t7, $t9, 0xc -/* 07EDE8 8007E1E8 3C010700 */ lui $at, 0x700 -/* 07EDEC 8007E1EC 01E17025 */ or $t6, $t7, $at -/* 07EDF0 8007E1F0 01D8C825 */ or $t9, $t6, $t8 -/* 07EDF4 8007E1F4 AD990004 */ sw $t9, 4($t4) -/* 07EDF8 8007E1F8 3C01F580 */ lui $at, 0xf580 -/* 07EDFC 8007E1FC 3C0FE700 */ lui $t7, 0xe700 -/* 07EE00 8007E200 AC4F0000 */ sw $t7, ($v0) -/* 07EE04 8007E204 03E17025 */ or $t6, $ra, $at -/* 07EE08 8007E208 AC400004 */ sw $zero, 4($v0) -/* 07EE0C 8007E20C AC6E0000 */ sw $t6, ($v1) -/* 07EE10 8007E210 8FB8002C */ lw $t8, 0x2c($sp) -/* 07EE14 8007E214 24E70008 */ addiu $a3, $a3, 8 -/* 07EE18 8007E218 00E02825 */ move $a1, $a3 -/* 07EE1C 8007E21C 3C19F200 */ lui $t9, 0xf200 -/* 07EE20 8007E220 AC780004 */ sw $t8, 4($v1) -/* 07EE24 8007E224 ACB90000 */ sw $t9, ($a1) -/* 07EE28 8007E228 8FAF0028 */ lw $t7, 0x28($sp) -/* 07EE2C 8007E22C 24E70008 */ addiu $a3, $a3, 8 -/* 07EE30 8007E230 ACAF0004 */ sw $t7, 4($a1) -.L8007E234: -/* 07EE34 8007E234 8E2E000C */ lw $t6, 0xc($s1) -/* 07EE38 8007E238 00000000 */ nop -/* 07EE3C 8007E23C 00EEC023 */ subu $t8, $a3, $t6 -/* 07EE40 8007E240 0018C8C3 */ sra $t9, $t8, 3 -/* 07EE44 8007E244 10000342 */ b .L8007EF50 -/* 07EE48 8007E248 A639000A */ sh $t9, 0xa($s1) -.L8007E24C: -/* 07EE4C 8007E24C AFAA0264 */ sw $t2, 0x264($sp) -/* 07EE50 8007E250 AFAB0260 */ sw $t3, 0x260($sp) -/* 07EE54 8007E254 1580005E */ bnez $t4, .L8007E3D0 -/* 07EE58 8007E258 AFAC027C */ sw $t4, 0x27c($sp) -/* 07EE5C 8007E25C 8FAA0284 */ lw $t2, 0x284($sp) -/* 07EE60 8007E260 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 -/* 07EE64 8007E264 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 -/* 07EE68 8007E268 02217021 */ addu $t6, $s1, $at -/* 07EE6C 8007E26C 3C0FFD18 */ lui $t7, 0xfd18 -/* 07EE70 8007E270 25470008 */ addiu $a3, $t2, 8 -/* 07EE74 8007E274 00E04025 */ move $t0, $a3 -/* 07EE78 8007E278 3C18F518 */ lui $t8, 0xf518 -/* 07EE7C 8007E27C AD4F0000 */ sw $t7, ($t2) -/* 07EE80 8007E280 AD4E0004 */ sw $t6, 4($t2) -/* 07EE84 8007E284 01B00019 */ multu $t5, $s0 -/* 07EE88 8007E288 AD180000 */ sw $t8, ($t0) -/* 07EE8C 8007E28C 8FA20268 */ lw $v0, 0x268($sp) -/* 07EE90 8007E290 8FA5026C */ lw $a1, 0x26c($sp) -/* 07EE94 8007E294 8FA30260 */ lw $v1, 0x260($sp) -/* 07EE98 8007E298 30590003 */ andi $t9, $v0, 3 -/* 07EE9C 8007E29C 00191480 */ sll $v0, $t9, 0x12 -/* 07EEA0 8007E2A0 8FA60264 */ lw $a2, 0x264($sp) -/* 07EEA4 8007E2A4 30B90003 */ andi $t9, $a1, 3 -/* 07EEA8 8007E2A8 306E000F */ andi $t6, $v1, 0xf -/* 07EEAC 8007E2AC 000E1B80 */ sll $v1, $t6, 0xe -/* 07EEB0 8007E2B0 00192A00 */ sll $a1, $t9, 8 -/* 07EEB4 8007E2B4 3C010700 */ lui $at, 0x700 -/* 07EEB8 8007E2B8 0041C825 */ or $t9, $v0, $at -/* 07EEBC 8007E2BC 30CE000F */ andi $t6, $a2, 0xf -/* 07EEC0 8007E2C0 000E3100 */ sll $a2, $t6, 4 -/* 07EEC4 8007E2C4 03237825 */ or $t7, $t9, $v1 -/* 07EEC8 8007E2C8 01E57025 */ or $t6, $t7, $a1 -/* 07EECC 8007E2CC 01C6C025 */ or $t8, $t6, $a2 -/* 07EED0 8007E2D0 24E70008 */ addiu $a3, $a3, 8 -/* 07EED4 8007E2D4 00E04825 */ move $t1, $a3 -/* 07EED8 8007E2D8 AD180004 */ sw $t8, 4($t0) -/* 07EEDC 8007E2DC 00004012 */ mflo $t0 -/* 07EEE0 8007E2E0 2508FFFF */ addiu $t0, $t0, -1 -/* 07EEE4 8007E2E4 24E70008 */ addiu $a3, $a3, 8 -/* 07EEE8 8007E2E8 3C19E600 */ lui $t9, 0xe600 -/* 07EEEC 8007E2EC AD390000 */ sw $t9, ($t1) -/* 07EEF0 8007E2F0 00E05825 */ move $t3, $a3 -/* 07EEF4 8007E2F4 290107FF */ slti $at, $t0, 0x7ff -/* 07EEF8 8007E2F8 AD200004 */ sw $zero, 4($t1) -/* 07EEFC 8007E2FC 3C0FF300 */ lui $t7, 0xf300 -/* 07EF00 8007E300 AD6F0000 */ sw $t7, ($t3) -/* 07EF04 8007E304 10200003 */ beqz $at, .L8007E314 -/* 07EF08 8007E308 24E70008 */ addiu $a3, $a3, 8 -/* 07EF0C 8007E30C 10000002 */ b .L8007E318 -/* 07EF10 8007E310 01002025 */ move $a0, $t0 -.L8007E314: -/* 07EF14 8007E314 240407FF */ li $a0, 2047 -.L8007E318: -/* 07EF18 8007E318 308E0FFF */ andi $t6, $a0, 0xfff -/* 07EF1C 8007E31C 000EC300 */ sll $t8, $t6, 0xc -/* 07EF20 8007E320 3C010700 */ lui $at, 0x700 -/* 07EF24 8007E324 0301C825 */ or $t9, $t8, $at -/* 07EF28 8007E328 AD790004 */ sw $t9, 4($t3) -/* 07EF2C 8007E32C 000D7040 */ sll $t6, $t5, 1 -/* 07EF30 8007E330 25D80007 */ addiu $t8, $t6, 7 -/* 07EF34 8007E334 00E04025 */ move $t0, $a3 -/* 07EF38 8007E338 3C0FE700 */ lui $t7, 0xe700 -/* 07EF3C 8007E33C AD0F0000 */ sw $t7, ($t0) -/* 07EF40 8007E340 0018C8C3 */ sra $t9, $t8, 3 -/* 07EF44 8007E344 332F01FF */ andi $t7, $t9, 0x1ff -/* 07EF48 8007E348 000F7240 */ sll $t6, $t7, 9 -/* 07EF4C 8007E34C 0043C825 */ or $t9, $v0, $v1 -/* 07EF50 8007E350 24E70008 */ addiu $a3, $a3, 8 -/* 07EF54 8007E354 3C01F518 */ lui $at, 0xf518 -/* 07EF58 8007E358 01C1C025 */ or $t8, $t6, $at -/* 07EF5C 8007E35C 00E04825 */ move $t1, $a3 -/* 07EF60 8007E360 03257825 */ or $t7, $t9, $a1 -/* 07EF64 8007E364 01E67025 */ or $t6, $t7, $a2 -/* 07EF68 8007E368 AD000004 */ sw $zero, 4($t0) -/* 07EF6C 8007E36C 25B9FFFF */ addiu $t9, $t5, -1 -/* 07EF70 8007E370 00197880 */ sll $t7, $t9, 2 -/* 07EF74 8007E374 AD2E0004 */ sw $t6, 4($t1) -/* 07EF78 8007E378 AD380000 */ sw $t8, ($t1) -/* 07EF7C 8007E37C 24E70008 */ addiu $a3, $a3, 8 -/* 07EF80 8007E380 00E05025 */ move $t2, $a3 -/* 07EF84 8007E384 3C18F200 */ lui $t8, 0xf200 -/* 07EF88 8007E388 31EE0FFF */ andi $t6, $t7, 0xfff -/* 07EF8C 8007E38C AD580000 */ sw $t8, ($t2) -/* 07EF90 8007E390 2619FFFF */ addiu $t9, $s0, -1 -/* 07EF94 8007E394 00197880 */ sll $t7, $t9, 2 -/* 07EF98 8007E398 000EC300 */ sll $t8, $t6, 0xc -/* 07EF9C 8007E39C 31EE0FFF */ andi $t6, $t7, 0xfff -/* 07EFA0 8007E3A0 030EC825 */ or $t9, $t8, $t6 -/* 07EFA4 8007E3A4 AD590004 */ sw $t9, 4($t2) -/* 07EFA8 8007E3A8 8FAF0278 */ lw $t7, 0x278($sp) -/* 07EFAC 8007E3AC 24E70008 */ addiu $a3, $a3, 8 -/* 07EFB0 8007E3B0 11E00003 */ beqz $t7, .L8007E3C0 -/* 07EFB4 8007E3B4 24010002 */ li $at, 2 -/* 07EFB8 8007E3B8 15E10006 */ bne $t7, $at, .L8007E3D4 -/* 07EFBC 8007E3BC 8FB9027C */ lw $t9, 0x27c($sp) -.L8007E3C0: -/* 07EFC0 8007E3C0 86380006 */ lh $t8, 6($s1) -/* 07EFC4 8007E3C4 00000000 */ nop -/* 07EFC8 8007E3C8 370E0004 */ ori $t6, $t8, 4 -/* 07EFCC 8007E3CC A62E0006 */ sh $t6, 6($s1) -.L8007E3D0: -/* 07EFD0 8007E3D0 8FB9027C */ lw $t9, 0x27c($sp) -.L8007E3D4: -/* 07EFD4 8007E3D4 24010001 */ li $at, 1 -/* 07EFD8 8007E3D8 17210064 */ bne $t9, $at, .L8007E56C -/* 07EFDC 8007E3DC 00E02025 */ move $a0, $a3 -/* 07EFE0 8007E3E0 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 -/* 07EFE4 8007E3E4 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 -/* 07EFE8 8007E3E8 0221C021 */ addu $t8, $s1, $at -/* 07EFEC 8007E3EC 24E70008 */ addiu $a3, $a3, 8 -/* 07EFF0 8007E3F0 3C0FFD10 */ lui $t7, 0xfd10 -/* 07EFF4 8007E3F4 AC8F0000 */ sw $t7, ($a0) -/* 07EFF8 8007E3F8 00E04825 */ move $t1, $a3 -/* 07EFFC 8007E3FC AC980004 */ sw $t8, 4($a0) -/* 07F000 8007E400 3C0EF510 */ lui $t6, 0xf510 -/* 07F004 8007E404 AD2E0000 */ sw $t6, ($t1) -/* 07F008 8007E408 8FA20268 */ lw $v0, 0x268($sp) -/* 07F00C 8007E40C 8FA5026C */ lw $a1, 0x26c($sp) -/* 07F010 8007E410 8FA30260 */ lw $v1, 0x260($sp) -/* 07F014 8007E414 30590003 */ andi $t9, $v0, 3 -/* 07F018 8007E418 00191480 */ sll $v0, $t9, 0x12 -/* 07F01C 8007E41C 8FA60264 */ lw $a2, 0x264($sp) -/* 07F020 8007E420 30B90003 */ andi $t9, $a1, 3 -/* 07F024 8007E424 3078000F */ andi $t8, $v1, 0xf -/* 07F028 8007E428 00181B80 */ sll $v1, $t8, 0xe -/* 07F02C 8007E42C 00192A00 */ sll $a1, $t9, 8 -/* 07F030 8007E430 3C010700 */ lui $at, 0x700 -/* 07F034 8007E434 0041C825 */ or $t9, $v0, $at -/* 07F038 8007E438 30D8000F */ andi $t8, $a2, 0xf -/* 07F03C 8007E43C 00183100 */ sll $a2, $t8, 4 -/* 07F040 8007E440 03237825 */ or $t7, $t9, $v1 -/* 07F044 8007E444 01E5C025 */ or $t8, $t7, $a1 -/* 07F048 8007E448 03067025 */ or $t6, $t8, $a2 -/* 07F04C 8007E44C 24E70008 */ addiu $a3, $a3, 8 -/* 07F050 8007E450 01B00019 */ multu $t5, $s0 -/* 07F054 8007E454 00E05025 */ move $t2, $a3 -/* 07F058 8007E458 AD2E0004 */ sw $t6, 4($t1) -/* 07F05C 8007E45C 3C19E600 */ lui $t9, 0xe600 -/* 07F060 8007E460 AD590000 */ sw $t9, ($t2) -/* 07F064 8007E464 24E70008 */ addiu $a3, $a3, 8 -/* 07F068 8007E468 000DC040 */ sll $t8, $t5, 1 -/* 07F06C 8007E46C 270E0007 */ addiu $t6, $t8, 7 -/* 07F070 8007E470 00E05825 */ move $t3, $a3 -/* 07F074 8007E474 AD400004 */ sw $zero, 4($t2) -/* 07F078 8007E478 3C0FF300 */ lui $t7, 0xf300 -/* 07F07C 8007E47C AD6F0000 */ sw $t7, ($t3) -/* 07F080 8007E480 000EC8C3 */ sra $t9, $t6, 3 -/* 07F084 8007E484 332F01FF */ andi $t7, $t9, 0x1ff -/* 07F088 8007E488 000FC240 */ sll $t8, $t7, 9 -/* 07F08C 8007E48C 00437025 */ or $t6, $v0, $v1 -/* 07F090 8007E490 01C5C825 */ or $t9, $t6, $a1 -/* 07F094 8007E494 AFB80030 */ sw $t8, 0x30($sp) -/* 07F098 8007E498 25B8FFFF */ addiu $t8, $t5, -1 -/* 07F09C 8007E49C 00187080 */ sll $t6, $t8, 2 -/* 07F0A0 8007E4A0 03267825 */ or $t7, $t9, $a2 -/* 07F0A4 8007E4A4 31D90FFF */ andi $t9, $t6, 0xfff -/* 07F0A8 8007E4A8 AFAF002C */ sw $t7, 0x2c($sp) -/* 07F0AC 8007E4AC 2618FFFF */ addiu $t8, $s0, -1 -/* 07F0B0 8007E4B0 00187080 */ sll $t6, $t8, 2 -/* 07F0B4 8007E4B4 00197B00 */ sll $t7, $t9, 0xc -/* 07F0B8 8007E4B8 00004012 */ mflo $t0 -/* 07F0BC 8007E4BC 2508FFFF */ addiu $t0, $t0, -1 -/* 07F0C0 8007E4C0 31D90FFF */ andi $t9, $t6, 0xfff -/* 07F0C4 8007E4C4 01F9C025 */ or $t8, $t7, $t9 -/* 07F0C8 8007E4C8 290107FF */ slti $at, $t0, 0x7ff -/* 07F0CC 8007E4CC AFB80028 */ sw $t8, 0x28($sp) -/* 07F0D0 8007E4D0 10200003 */ beqz $at, .L8007E4E0 -/* 07F0D4 8007E4D4 24E70008 */ addiu $a3, $a3, 8 -/* 07F0D8 8007E4D8 10000002 */ b .L8007E4E4 -/* 07F0DC 8007E4DC 01002025 */ move $a0, $t0 -.L8007E4E0: -/* 07F0E0 8007E4E0 240407FF */ li $a0, 2047 -.L8007E4E4: -/* 07F0E4 8007E4E4 308E0FFF */ andi $t6, $a0, 0xfff -/* 07F0E8 8007E4E8 000E7B00 */ sll $t7, $t6, 0xc -/* 07F0EC 8007E4EC 3C010700 */ lui $at, 0x700 -/* 07F0F0 8007E4F0 01E1C825 */ or $t9, $t7, $at -/* 07F0F4 8007E4F4 AD790004 */ sw $t9, 4($t3) -/* 07F0F8 8007E4F8 00E01025 */ move $v0, $a3 -/* 07F0FC 8007E4FC 3C18E700 */ lui $t8, 0xe700 -/* 07F100 8007E500 AC580000 */ sw $t8, ($v0) -/* 07F104 8007E504 AC400004 */ sw $zero, 4($v0) -/* 07F108 8007E508 8FAE0030 */ lw $t6, 0x30($sp) -/* 07F10C 8007E50C 24E70008 */ addiu $a3, $a3, 8 -/* 07F110 8007E510 3C01F510 */ lui $at, 0xf510 -/* 07F114 8007E514 00E01825 */ move $v1, $a3 -/* 07F118 8007E518 01C17825 */ or $t7, $t6, $at -/* 07F11C 8007E51C AC6F0000 */ sw $t7, ($v1) -/* 07F120 8007E520 8FB9002C */ lw $t9, 0x2c($sp) -/* 07F124 8007E524 24E70008 */ addiu $a3, $a3, 8 -/* 07F128 8007E528 00E02825 */ move $a1, $a3 -/* 07F12C 8007E52C 3C18F200 */ lui $t8, 0xf200 -/* 07F130 8007E530 AC790004 */ sw $t9, 4($v1) -/* 07F134 8007E534 ACB80000 */ sw $t8, ($a1) -/* 07F138 8007E538 8FAE0028 */ lw $t6, 0x28($sp) -/* 07F13C 8007E53C 24E70008 */ addiu $a3, $a3, 8 -/* 07F140 8007E540 ACAE0004 */ sw $t6, 4($a1) -/* 07F144 8007E544 8FAF0278 */ lw $t7, 0x278($sp) -/* 07F148 8007E548 24010002 */ li $at, 2 -/* 07F14C 8007E54C 11E00003 */ beqz $t7, .L8007E55C -/* 07F150 8007E550 00000000 */ nop -/* 07F154 8007E554 15E10006 */ bne $t7, $at, .L8007E570 -/* 07F158 8007E558 8FAE027C */ lw $t6, 0x27c($sp) -.L8007E55C: -/* 07F15C 8007E55C 86390006 */ lh $t9, 6($s1) -/* 07F160 8007E560 00000000 */ nop -/* 07F164 8007E564 37380004 */ ori $t8, $t9, 4 -/* 07F168 8007E568 A6380006 */ sh $t8, 6($s1) -.L8007E56C: -/* 07F16C 8007E56C 8FAE027C */ lw $t6, 0x27c($sp) -.L8007E570: -/* 07F170 8007E570 24010007 */ li $at, 7 -/* 07F174 8007E574 15C10097 */ bne $t6, $at, .L8007E7D4 -/* 07F178 8007E578 8FAE027C */ lw $t6, 0x27c($sp) -/* 07F17C 8007E57C 8FA20268 */ lw $v0, 0x268($sp) -/* 07F180 8007E580 8FA30260 */ lw $v1, 0x260($sp) -/* 07F184 8007E584 8FA5026C */ lw $a1, 0x26c($sp) -/* 07F188 8007E588 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 -/* 07F18C 8007E58C 30590003 */ andi $t9, $v0, 3 -/* 07F190 8007E590 00191480 */ sll $v0, $t9, 0x12 -/* 07F194 8007E594 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 -/* 07F198 8007E598 8FA60264 */ lw $a2, 0x264($sp) -/* 07F19C 8007E59C 02217821 */ addu $t7, $s1, $at -/* 07F1A0 8007E5A0 306E000F */ andi $t6, $v1, 0xf -/* 07F1A4 8007E5A4 30B90003 */ andi $t9, $a1, 3 -/* 07F1A8 8007E5A8 01B00019 */ multu $t5, $s0 -/* 07F1AC 8007E5AC 00192A00 */ sll $a1, $t9, 8 -/* 07F1B0 8007E5B0 000E1B80 */ sll $v1, $t6, 0xe -/* 07F1B4 8007E5B4 3C010700 */ lui $at, 0x700 -/* 07F1B8 8007E5B8 0041C825 */ or $t9, $v0, $at -/* 07F1BC 8007E5BC 30CE000F */ andi $t6, $a2, 0xf -/* 07F1C0 8007E5C0 000E3100 */ sll $a2, $t6, 4 -/* 07F1C4 8007E5C4 0323C025 */ or $t8, $t9, $v1 -/* 07F1C8 8007E5C8 86240008 */ lh $a0, 8($s1) -/* 07F1CC 8007E5CC AFAF0048 */ sw $t7, 0x48($sp) -/* 07F1D0 8007E5D0 03057025 */ or $t6, $t8, $a1 -/* 07F1D4 8007E5D4 01C67825 */ or $t7, $t6, $a2 -/* 07F1D8 8007E5D8 0043C825 */ or $t9, $v0, $v1 -/* 07F1DC 8007E5DC 0325C025 */ or $t8, $t9, $a1 -/* 07F1E0 8007E5E0 AFAF0034 */ sw $t7, 0x34($sp) -/* 07F1E4 8007E5E4 25AFFFFF */ addiu $t7, $t5, -1 -/* 07F1E8 8007E5E8 000FC880 */ sll $t9, $t7, 2 -/* 07F1EC 8007E5EC 03067025 */ or $t6, $t8, $a2 -/* 07F1F0 8007E5F0 33380FFF */ andi $t8, $t9, 0xfff -/* 07F1F4 8007E5F4 AFAE002C */ sw $t6, 0x2c($sp) -/* 07F1F8 8007E5F8 260FFFFF */ addiu $t7, $s0, -1 -/* 07F1FC 8007E5FC 000FC880 */ sll $t9, $t7, 2 -/* 07F200 8007E600 00187300 */ sll $t6, $t8, 0xc -/* 07F204 8007E604 33380FFF */ andi $t8, $t9, 0xfff -/* 07F208 8007E608 01D87825 */ or $t7, $t6, $t8 -/* 07F20C 8007E60C 00005012 */ mflo $t2 -/* 07F210 8007E610 AFAA0030 */ sw $t2, 0x30($sp) -/* 07F214 8007E614 AFAF0028 */ sw $t7, 0x28($sp) -/* 07F218 8007E618 AFAD0274 */ sw $t5, 0x274($sp) -/* 07F21C 8007E61C 0C01FBD9 */ jal func_8007EF64 -/* 07F220 8007E620 AFA70248 */ sw $a3, 0x248($sp) -/* 07F224 8007E624 8FA70248 */ lw $a3, 0x248($sp) -/* 07F228 8007E628 8FAA0030 */ lw $t2, 0x30($sp) -/* 07F22C 8007E62C 8FAD0274 */ lw $t5, 0x274($sp) -/* 07F230 8007E630 3C19FD50 */ lui $t9, 0xfd50 -/* 07F234 8007E634 00E01825 */ move $v1, $a3 -/* 07F238 8007E638 AC790000 */ sw $t9, ($v1) -/* 07F23C 8007E63C 8FAE0048 */ lw $t6, 0x48($sp) -/* 07F240 8007E640 24E70008 */ addiu $a3, $a3, 8 -/* 07F244 8007E644 00E02025 */ move $a0, $a3 -/* 07F248 8007E648 3C18F550 */ lui $t8, 0xf550 -/* 07F24C 8007E64C AC6E0004 */ sw $t6, 4($v1) -/* 07F250 8007E650 AC980000 */ sw $t8, ($a0) -/* 07F254 8007E654 8FAF0034 */ lw $t7, 0x34($sp) -/* 07F258 8007E658 24E70008 */ addiu $a3, $a3, 8 -/* 07F25C 8007E65C 00E02825 */ move $a1, $a3 -/* 07F260 8007E660 25480003 */ addiu $t0, $t2, 3 -/* 07F264 8007E664 0008C083 */ sra $t8, $t0, 2 -/* 07F268 8007E668 AC8F0004 */ sw $t7, 4($a0) -/* 07F26C 8007E66C 2708FFFF */ addiu $t0, $t8, -1 -/* 07F270 8007E670 24E70008 */ addiu $a3, $a3, 8 -/* 07F274 8007E674 3C19E600 */ lui $t9, 0xe600 -/* 07F278 8007E678 ACB90000 */ sw $t9, ($a1) -/* 07F27C 8007E67C 00E04825 */ move $t1, $a3 -/* 07F280 8007E680 290107FF */ slti $at, $t0, 0x7ff -/* 07F284 8007E684 ACA00004 */ sw $zero, 4($a1) -/* 07F288 8007E688 3C0EF300 */ lui $t6, 0xf300 -/* 07F28C 8007E68C AD2E0000 */ sw $t6, ($t1) -/* 07F290 8007E690 10200003 */ beqz $at, .L8007E6A0 -/* 07F294 8007E694 24E70008 */ addiu $a3, $a3, 8 -/* 07F298 8007E698 10000002 */ b .L8007E6A4 -/* 07F29C 8007E69C 01002025 */ move $a0, $t0 -.L8007E6A0: -/* 07F2A0 8007E6A0 240407FF */ li $a0, 2047 -.L8007E6A4: -/* 07F2A4 8007E6A4 308F0FFF */ andi $t7, $a0, 0xfff -/* 07F2A8 8007E6A8 000FCB00 */ sll $t9, $t7, 0xc -/* 07F2AC 8007E6AC 3C010700 */ lui $at, 0x700 -/* 07F2B0 8007E6B0 03217025 */ or $t6, $t9, $at -/* 07F2B4 8007E6B4 AD2E0004 */ sw $t6, 4($t1) -/* 07F2B8 8007E6B8 000D7843 */ sra $t7, $t5, 1 -/* 07F2BC 8007E6BC 25F90007 */ addiu $t9, $t7, 7 -/* 07F2C0 8007E6C0 00E01825 */ move $v1, $a3 -/* 07F2C4 8007E6C4 3C18E700 */ lui $t8, 0xe700 -/* 07F2C8 8007E6C8 AC780000 */ sw $t8, ($v1) -/* 07F2CC 8007E6CC 001970C3 */ sra $t6, $t9, 3 -/* 07F2D0 8007E6D0 31D801FF */ andi $t8, $t6, 0x1ff -/* 07F2D4 8007E6D4 00187A40 */ sll $t7, $t8, 9 -/* 07F2D8 8007E6D8 24E70008 */ addiu $a3, $a3, 8 -/* 07F2DC 8007E6DC 3C01F540 */ lui $at, 0xf540 -/* 07F2E0 8007E6E0 01E1C825 */ or $t9, $t7, $at -/* 07F2E4 8007E6E4 00E02825 */ move $a1, $a3 -/* 07F2E8 8007E6E8 AC600004 */ sw $zero, 4($v1) -/* 07F2EC 8007E6EC ACB90000 */ sw $t9, ($a1) -/* 07F2F0 8007E6F0 8FAE002C */ lw $t6, 0x2c($sp) -/* 07F2F4 8007E6F4 24E70008 */ addiu $a3, $a3, 8 -/* 07F2F8 8007E6F8 00E03025 */ move $a2, $a3 -/* 07F2FC 8007E6FC 3C18F200 */ lui $t8, 0xf200 -/* 07F300 8007E700 ACAE0004 */ sw $t6, 4($a1) -/* 07F304 8007E704 ACD80000 */ sw $t8, ($a2) -/* 07F308 8007E708 8FAF0028 */ lw $t7, 0x28($sp) -/* 07F30C 8007E70C 24E70008 */ addiu $a3, $a3, 8 -/* 07F310 8007E710 ACCF0004 */ sw $t7, 4($a2) -/* 07F314 8007E714 00E01825 */ move $v1, $a3 -/* 07F318 8007E718 24E70008 */ addiu $a3, $a3, 8 -/* 07F31C 8007E71C 00E02025 */ move $a0, $a3 -/* 07F320 8007E720 3C19FD10 */ lui $t9, 0xfd10 -/* 07F324 8007E724 AC790000 */ sw $t9, ($v1) -/* 07F328 8007E728 24E70008 */ addiu $a3, $a3, 8 -/* 07F32C 8007E72C AC620004 */ sw $v0, 4($v1) -/* 07F330 8007E730 00E02825 */ move $a1, $a3 -/* 07F334 8007E734 3C0EE800 */ lui $t6, 0xe800 -/* 07F338 8007E738 AC8E0000 */ sw $t6, ($a0) -/* 07F33C 8007E73C AC800004 */ sw $zero, 4($a0) -/* 07F340 8007E740 3C18F500 */ lui $t8, (0xF5000100 >> 16) # lui $t8, 0xf500 -/* 07F344 8007E744 37180100 */ ori $t8, (0xF5000100 & 0xFFFF) # ori $t8, $t8, 0x100 -/* 07F348 8007E748 24E70008 */ addiu $a3, $a3, 8 -/* 07F34C 8007E74C 3C0F0700 */ lui $t7, 0x700 -/* 07F350 8007E750 ACAF0004 */ sw $t7, 4($a1) -/* 07F354 8007E754 00E03025 */ move $a2, $a3 -/* 07F358 8007E758 ACB80000 */ sw $t8, ($a1) -/* 07F35C 8007E75C 24E70008 */ addiu $a3, $a3, 8 -/* 07F360 8007E760 00E04025 */ move $t0, $a3 -/* 07F364 8007E764 3C19E600 */ lui $t9, 0xe600 -/* 07F368 8007E768 ACD90000 */ sw $t9, ($a2) -/* 07F36C 8007E76C ACC00004 */ sw $zero, 4($a2) -/* 07F370 8007E770 3C180703 */ lui $t8, (0x0703C000 >> 16) # lui $t8, 0x703 -/* 07F374 8007E774 3718C000 */ ori $t8, (0x0703C000 & 0xFFFF) # ori $t8, $t8, 0xc000 -/* 07F378 8007E778 24E70008 */ addiu $a3, $a3, 8 -/* 07F37C 8007E77C 3C0EF000 */ lui $t6, 0xf000 -/* 07F380 8007E780 AD0E0000 */ sw $t6, ($t0) -/* 07F384 8007E784 00E01025 */ move $v0, $a3 -/* 07F388 8007E788 AD180004 */ sw $t8, 4($t0) -/* 07F38C 8007E78C 3C0FE700 */ lui $t7, 0xe700 -/* 07F390 8007E790 AC4F0000 */ sw $t7, ($v0) -/* 07F394 8007E794 AC400004 */ sw $zero, 4($v0) -/* 07F398 8007E798 86390006 */ lh $t9, 6($s1) -/* 07F39C 8007E79C 24E70008 */ addiu $a3, $a3, 8 -/* 07F3A0 8007E7A0 372E0020 */ ori $t6, $t9, 0x20 -/* 07F3A4 8007E7A4 A62E0006 */ sh $t6, 6($s1) -/* 07F3A8 8007E7A8 8FB80278 */ lw $t8, 0x278($sp) -/* 07F3AC 8007E7AC 24010002 */ li $at, 2 -/* 07F3B0 8007E7B0 13000003 */ beqz $t8, .L8007E7C0 -/* 07F3B4 8007E7B4 00000000 */ nop -/* 07F3B8 8007E7B8 17010006 */ bne $t8, $at, .L8007E7D4 -/* 07F3BC 8007E7BC 8FAE027C */ lw $t6, 0x27c($sp) -.L8007E7C0: -/* 07F3C0 8007E7C0 862F0006 */ lh $t7, 6($s1) -/* 07F3C4 8007E7C4 00000000 */ nop -/* 07F3C8 8007E7C8 35F90004 */ ori $t9, $t7, 4 -/* 07F3CC 8007E7CC A6390006 */ sh $t9, 6($s1) -/* 07F3D0 8007E7D0 8FAE027C */ lw $t6, 0x27c($sp) -.L8007E7D4: -/* 07F3D4 8007E7D4 24010004 */ li $at, 4 -/* 07F3D8 8007E7D8 15C1005E */ bne $t6, $at, .L8007E954 -/* 07F3DC 8007E7DC 00E02025 */ move $a0, $a3 -/* 07F3E0 8007E7E0 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 -/* 07F3E4 8007E7E4 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 -/* 07F3E8 8007E7E8 02217821 */ addu $t7, $s1, $at -/* 07F3EC 8007E7EC 24E70008 */ addiu $a3, $a3, 8 -/* 07F3F0 8007E7F0 3C18FD70 */ lui $t8, 0xfd70 -/* 07F3F4 8007E7F4 AC980000 */ sw $t8, ($a0) -/* 07F3F8 8007E7F8 00E04825 */ move $t1, $a3 -/* 07F3FC 8007E7FC AC8F0004 */ sw $t7, 4($a0) -/* 07F400 8007E800 3C19F570 */ lui $t9, 0xf570 -/* 07F404 8007E804 AD390000 */ sw $t9, ($t1) -/* 07F408 8007E808 8FA20268 */ lw $v0, 0x268($sp) -/* 07F40C 8007E80C 8FA5026C */ lw $a1, 0x26c($sp) -/* 07F410 8007E810 8FA30260 */ lw $v1, 0x260($sp) -/* 07F414 8007E814 304E0003 */ andi $t6, $v0, 3 -/* 07F418 8007E818 000E1480 */ sll $v0, $t6, 0x12 -/* 07F41C 8007E81C 8FA60264 */ lw $a2, 0x264($sp) -/* 07F420 8007E820 30AE0003 */ andi $t6, $a1, 3 -/* 07F424 8007E824 306F000F */ andi $t7, $v1, 0xf -/* 07F428 8007E828 000F1B80 */ sll $v1, $t7, 0xe -/* 07F42C 8007E82C 000E2A00 */ sll $a1, $t6, 8 -/* 07F430 8007E830 3C010700 */ lui $at, 0x700 -/* 07F434 8007E834 00417025 */ or $t6, $v0, $at -/* 07F438 8007E838 30CF000F */ andi $t7, $a2, 0xf -/* 07F43C 8007E83C 000F3100 */ sll $a2, $t7, 4 -/* 07F440 8007E840 01C3C025 */ or $t8, $t6, $v1 -/* 07F444 8007E844 03057825 */ or $t7, $t8, $a1 -/* 07F448 8007E848 01E6C825 */ or $t9, $t7, $a2 -/* 07F44C 8007E84C 24E70008 */ addiu $a3, $a3, 8 -/* 07F450 8007E850 01B00019 */ multu $t5, $s0 -/* 07F454 8007E854 00E05025 */ move $t2, $a3 -/* 07F458 8007E858 AD390004 */ sw $t9, 4($t1) -/* 07F45C 8007E85C 3C0EE600 */ lui $t6, 0xe600 -/* 07F460 8007E860 AD4E0000 */ sw $t6, ($t2) -/* 07F464 8007E864 24E70008 */ addiu $a3, $a3, 8 -/* 07F468 8007E868 000D7840 */ sll $t7, $t5, 1 -/* 07F46C 8007E86C 25F90007 */ addiu $t9, $t7, 7 -/* 07F470 8007E870 00E05825 */ move $t3, $a3 -/* 07F474 8007E874 AD400004 */ sw $zero, 4($t2) -/* 07F478 8007E878 3C18F300 */ lui $t8, 0xf300 -/* 07F47C 8007E87C AD780000 */ sw $t8, ($t3) -/* 07F480 8007E880 001970C3 */ sra $t6, $t9, 3 -/* 07F484 8007E884 31D801FF */ andi $t8, $t6, 0x1ff -/* 07F488 8007E888 00187A40 */ sll $t7, $t8, 9 -/* 07F48C 8007E88C 0043C825 */ or $t9, $v0, $v1 -/* 07F490 8007E890 03257025 */ or $t6, $t9, $a1 -/* 07F494 8007E894 AFAF0030 */ sw $t7, 0x30($sp) -/* 07F498 8007E898 25AFFFFF */ addiu $t7, $t5, -1 -/* 07F49C 8007E89C 000FC880 */ sll $t9, $t7, 2 -/* 07F4A0 8007E8A0 01C6C025 */ or $t8, $t6, $a2 -/* 07F4A4 8007E8A4 332E0FFF */ andi $t6, $t9, 0xfff -/* 07F4A8 8007E8A8 AFB8002C */ sw $t8, 0x2c($sp) -/* 07F4AC 8007E8AC 260FFFFF */ addiu $t7, $s0, -1 -/* 07F4B0 8007E8B0 000FC880 */ sll $t9, $t7, 2 -/* 07F4B4 8007E8B4 000EC300 */ sll $t8, $t6, 0xc -/* 07F4B8 8007E8B8 00004012 */ mflo $t0 -/* 07F4BC 8007E8BC 2508FFFF */ addiu $t0, $t0, -1 -/* 07F4C0 8007E8C0 332E0FFF */ andi $t6, $t9, 0xfff -/* 07F4C4 8007E8C4 030E7825 */ or $t7, $t8, $t6 -/* 07F4C8 8007E8C8 290107FF */ slti $at, $t0, 0x7ff -/* 07F4CC 8007E8CC AFAF0028 */ sw $t7, 0x28($sp) -/* 07F4D0 8007E8D0 10200003 */ beqz $at, .L8007E8E0 -/* 07F4D4 8007E8D4 24E70008 */ addiu $a3, $a3, 8 -/* 07F4D8 8007E8D8 10000002 */ b .L8007E8E4 -/* 07F4DC 8007E8DC 01002025 */ move $a0, $t0 -.L8007E8E0: -/* 07F4E0 8007E8E0 240407FF */ li $a0, 2047 -.L8007E8E4: -/* 07F4E4 8007E8E4 30990FFF */ andi $t9, $a0, 0xfff -/* 07F4E8 8007E8E8 0019C300 */ sll $t8, $t9, 0xc -/* 07F4EC 8007E8EC 3C010700 */ lui $at, 0x700 -/* 07F4F0 8007E8F0 03017025 */ or $t6, $t8, $at -/* 07F4F4 8007E8F4 AD6E0004 */ sw $t6, 4($t3) -/* 07F4F8 8007E8F8 00E01025 */ move $v0, $a3 -/* 07F4FC 8007E8FC 3C0FE700 */ lui $t7, 0xe700 -/* 07F500 8007E900 AC4F0000 */ sw $t7, ($v0) -/* 07F504 8007E904 AC400004 */ sw $zero, 4($v0) -/* 07F508 8007E908 8FB90030 */ lw $t9, 0x30($sp) -/* 07F50C 8007E90C 24E70008 */ addiu $a3, $a3, 8 -/* 07F510 8007E910 3C01F570 */ lui $at, 0xf570 -/* 07F514 8007E914 00E01825 */ move $v1, $a3 -/* 07F518 8007E918 0321C025 */ or $t8, $t9, $at -/* 07F51C 8007E91C AC780000 */ sw $t8, ($v1) -/* 07F520 8007E920 8FAE002C */ lw $t6, 0x2c($sp) -/* 07F524 8007E924 24E70008 */ addiu $a3, $a3, 8 -/* 07F528 8007E928 00E02825 */ move $a1, $a3 -/* 07F52C 8007E92C 3C0FF200 */ lui $t7, 0xf200 -/* 07F530 8007E930 AC6E0004 */ sw $t6, 4($v1) -/* 07F534 8007E934 ACAF0000 */ sw $t7, ($a1) -/* 07F538 8007E938 8FB90028 */ lw $t9, 0x28($sp) -/* 07F53C 8007E93C 24E70008 */ addiu $a3, $a3, 8 -/* 07F540 8007E940 ACB90004 */ sw $t9, 4($a1) -/* 07F544 8007E944 86380006 */ lh $t8, 6($s1) -/* 07F548 8007E948 00000000 */ nop -/* 07F54C 8007E94C 370E0004 */ ori $t6, $t8, 4 -/* 07F550 8007E950 A62E0006 */ sh $t6, 6($s1) -.L8007E954: -/* 07F554 8007E954 8FAF027C */ lw $t7, 0x27c($sp) -/* 07F558 8007E958 24010005 */ li $at, 5 -/* 07F55C 8007E95C 15E1005D */ bne $t7, $at, .L8007EAD4 -/* 07F560 8007E960 00E02025 */ move $a0, $a3 -/* 07F564 8007E964 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 -/* 07F568 8007E968 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 -/* 07F56C 8007E96C 0221C021 */ addu $t8, $s1, $at -/* 07F570 8007E970 24E70008 */ addiu $a3, $a3, 8 -/* 07F574 8007E974 3C19FD70 */ lui $t9, 0xfd70 -/* 07F578 8007E978 AC990000 */ sw $t9, ($a0) -/* 07F57C 8007E97C 00E04025 */ move $t0, $a3 -/* 07F580 8007E980 AC980004 */ sw $t8, 4($a0) -/* 07F584 8007E984 3C0EF570 */ lui $t6, 0xf570 -/* 07F588 8007E988 AD0E0000 */ sw $t6, ($t0) -/* 07F58C 8007E98C 8FA20268 */ lw $v0, 0x268($sp) -/* 07F590 8007E990 8FA5026C */ lw $a1, 0x26c($sp) -/* 07F594 8007E994 8FA30260 */ lw $v1, 0x260($sp) -/* 07F598 8007E998 304F0003 */ andi $t7, $v0, 3 -/* 07F59C 8007E99C 000F1480 */ sll $v0, $t7, 0x12 -/* 07F5A0 8007E9A0 8FA60264 */ lw $a2, 0x264($sp) -/* 07F5A4 8007E9A4 30AF0003 */ andi $t7, $a1, 3 -/* 07F5A8 8007E9A8 3078000F */ andi $t8, $v1, 0xf -/* 07F5AC 8007E9AC 00181B80 */ sll $v1, $t8, 0xe -/* 07F5B0 8007E9B0 000F2A00 */ sll $a1, $t7, 8 -/* 07F5B4 8007E9B4 3C010700 */ lui $at, 0x700 -/* 07F5B8 8007E9B8 00417825 */ or $t7, $v0, $at -/* 07F5BC 8007E9BC 30D8000F */ andi $t8, $a2, 0xf -/* 07F5C0 8007E9C0 01B00019 */ multu $t5, $s0 -/* 07F5C4 8007E9C4 00183100 */ sll $a2, $t8, 4 -/* 07F5C8 8007E9C8 01E3C825 */ or $t9, $t7, $v1 -/* 07F5CC 8007E9CC 0325C025 */ or $t8, $t9, $a1 -/* 07F5D0 8007E9D0 03067025 */ or $t6, $t8, $a2 -/* 07F5D4 8007E9D4 24E70008 */ addiu $a3, $a3, 8 -/* 07F5D8 8007E9D8 00E04825 */ move $t1, $a3 -/* 07F5DC 8007E9DC AD0E0004 */ sw $t6, 4($t0) -/* 07F5E0 8007E9E0 24E70008 */ addiu $a3, $a3, 8 -/* 07F5E4 8007E9E4 3C0FE600 */ lui $t7, 0xe600 -/* 07F5E8 8007E9E8 AD2F0000 */ sw $t7, ($t1) -/* 07F5EC 8007E9EC 00E05825 */ move $t3, $a3 -/* 07F5F0 8007E9F0 AD200004 */ sw $zero, 4($t1) -/* 07F5F4 8007E9F4 0043C025 */ or $t8, $v0, $v1 -/* 07F5F8 8007E9F8 3C19F300 */ lui $t9, 0xf300 -/* 07F5FC 8007E9FC AD790000 */ sw $t9, ($t3) -/* 07F600 8007EA00 03057025 */ or $t6, $t8, $a1 -/* 07F604 8007EA04 25B9FFFF */ addiu $t9, $t5, -1 -/* 07F608 8007EA08 0019C080 */ sll $t8, $t9, 2 -/* 07F60C 8007EA0C 01C67825 */ or $t7, $t6, $a2 -/* 07F610 8007EA10 330E0FFF */ andi $t6, $t8, 0xfff -/* 07F614 8007EA14 AFAF002C */ sw $t7, 0x2c($sp) -/* 07F618 8007EA18 2619FFFF */ addiu $t9, $s0, -1 -/* 07F61C 8007EA1C 0019C080 */ sll $t8, $t9, 2 -/* 07F620 8007EA20 000E7B00 */ sll $t7, $t6, 0xc -/* 07F624 8007EA24 00005012 */ mflo $t2 -/* 07F628 8007EA28 25480001 */ addiu $t0, $t2, 1 -/* 07F62C 8007EA2C 330E0FFF */ andi $t6, $t8, 0xfff -/* 07F630 8007EA30 0008C043 */ sra $t8, $t0, 1 -/* 07F634 8007EA34 2708FFFF */ addiu $t0, $t8, -1 -/* 07F638 8007EA38 290107FF */ slti $at, $t0, 0x7ff -/* 07F63C 8007EA3C 01EEC825 */ or $t9, $t7, $t6 -/* 07F640 8007EA40 AFB90028 */ sw $t9, 0x28($sp) -/* 07F644 8007EA44 10200003 */ beqz $at, .L8007EA54 -/* 07F648 8007EA48 24E70008 */ addiu $a3, $a3, 8 -/* 07F64C 8007EA4C 10000002 */ b .L8007EA58 -/* 07F650 8007EA50 01002025 */ move $a0, $t0 -.L8007EA54: -/* 07F654 8007EA54 240407FF */ li $a0, 2047 -.L8007EA58: -/* 07F658 8007EA58 308F0FFF */ andi $t7, $a0, 0xfff -/* 07F65C 8007EA5C 000F7300 */ sll $t6, $t7, 0xc -/* 07F660 8007EA60 3C010700 */ lui $at, 0x700 -/* 07F664 8007EA64 01C1C825 */ or $t9, $t6, $at -/* 07F668 8007EA68 AD790004 */ sw $t9, 4($t3) -/* 07F66C 8007EA6C 25AF0007 */ addiu $t7, $t5, 7 -/* 07F670 8007EA70 000F70C3 */ sra $t6, $t7, 3 -/* 07F674 8007EA74 00E01025 */ move $v0, $a3 -/* 07F678 8007EA78 3C18E700 */ lui $t8, 0xe700 -/* 07F67C 8007EA7C AC580000 */ sw $t8, ($v0) -/* 07F680 8007EA80 31D901FF */ andi $t9, $t6, 0x1ff -/* 07F684 8007EA84 0019C240 */ sll $t8, $t9, 9 -/* 07F688 8007EA88 24E70008 */ addiu $a3, $a3, 8 -/* 07F68C 8007EA8C 3C01F568 */ lui $at, 0xf568 -/* 07F690 8007EA90 03017825 */ or $t7, $t8, $at -/* 07F694 8007EA94 00E01825 */ move $v1, $a3 -/* 07F698 8007EA98 AC400004 */ sw $zero, 4($v0) -/* 07F69C 8007EA9C AC6F0000 */ sw $t7, ($v1) -/* 07F6A0 8007EAA0 8FAE002C */ lw $t6, 0x2c($sp) -/* 07F6A4 8007EAA4 24E70008 */ addiu $a3, $a3, 8 -/* 07F6A8 8007EAA8 00E02825 */ move $a1, $a3 -/* 07F6AC 8007EAAC 3C19F200 */ lui $t9, 0xf200 -/* 07F6B0 8007EAB0 AC6E0004 */ sw $t6, 4($v1) -/* 07F6B4 8007EAB4 ACB90000 */ sw $t9, ($a1) -/* 07F6B8 8007EAB8 8FB80028 */ lw $t8, 0x28($sp) -/* 07F6BC 8007EABC 24E70008 */ addiu $a3, $a3, 8 -/* 07F6C0 8007EAC0 ACB80004 */ sw $t8, 4($a1) -/* 07F6C4 8007EAC4 862F0006 */ lh $t7, 6($s1) -/* 07F6C8 8007EAC8 00000000 */ nop -/* 07F6CC 8007EACC 35EE0004 */ ori $t6, $t7, 4 -/* 07F6D0 8007EAD0 A62E0006 */ sh $t6, 6($s1) -.L8007EAD4: -/* 07F6D4 8007EAD4 8FB9027C */ lw $t9, 0x27c($sp) -/* 07F6D8 8007EAD8 24010006 */ li $at, 6 -/* 07F6DC 8007EADC 1721005E */ bne $t9, $at, .L8007EC58 -/* 07F6E0 8007EAE0 00E02025 */ move $a0, $a3 -/* 07F6E4 8007EAE4 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 -/* 07F6E8 8007EAE8 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 -/* 07F6EC 8007EAEC 02217821 */ addu $t7, $s1, $at -/* 07F6F0 8007EAF0 24E70008 */ addiu $a3, $a3, 8 -/* 07F6F4 8007EAF4 3C18FD70 */ lui $t8, 0xfd70 -/* 07F6F8 8007EAF8 AC980000 */ sw $t8, ($a0) -/* 07F6FC 8007EAFC 00E04825 */ move $t1, $a3 -/* 07F700 8007EB00 AC8F0004 */ sw $t7, 4($a0) -/* 07F704 8007EB04 3C0EF570 */ lui $t6, 0xf570 -/* 07F708 8007EB08 AD2E0000 */ sw $t6, ($t1) -/* 07F70C 8007EB0C 8FA20268 */ lw $v0, 0x268($sp) -/* 07F710 8007EB10 8FA5026C */ lw $a1, 0x26c($sp) -/* 07F714 8007EB14 8FA30260 */ lw $v1, 0x260($sp) -/* 07F718 8007EB18 30590003 */ andi $t9, $v0, 3 -/* 07F71C 8007EB1C 00191480 */ sll $v0, $t9, 0x12 -/* 07F720 8007EB20 8FA60264 */ lw $a2, 0x264($sp) -/* 07F724 8007EB24 30B90003 */ andi $t9, $a1, 3 -/* 07F728 8007EB28 306F000F */ andi $t7, $v1, 0xf -/* 07F72C 8007EB2C 000F1B80 */ sll $v1, $t7, 0xe -/* 07F730 8007EB30 00192A00 */ sll $a1, $t9, 8 -/* 07F734 8007EB34 3C010700 */ lui $at, 0x700 -/* 07F738 8007EB38 0041C825 */ or $t9, $v0, $at -/* 07F73C 8007EB3C 30CF000F */ andi $t7, $a2, 0xf -/* 07F740 8007EB40 000F3100 */ sll $a2, $t7, 4 -/* 07F744 8007EB44 0323C025 */ or $t8, $t9, $v1 -/* 07F748 8007EB48 01B00019 */ multu $t5, $s0 -/* 07F74C 8007EB4C 03057825 */ or $t7, $t8, $a1 -/* 07F750 8007EB50 01E67025 */ or $t6, $t7, $a2 -/* 07F754 8007EB54 24E70008 */ addiu $a3, $a3, 8 -/* 07F758 8007EB58 00E05025 */ move $t2, $a3 -/* 07F75C 8007EB5C AD2E0004 */ sw $t6, 4($t1) -/* 07F760 8007EB60 24E70008 */ addiu $a3, $a3, 8 -/* 07F764 8007EB64 3C19E600 */ lui $t9, 0xe600 -/* 07F768 8007EB68 AD590000 */ sw $t9, ($t2) -/* 07F76C 8007EB6C 00E05825 */ move $t3, $a3 -/* 07F770 8007EB70 AD400004 */ sw $zero, 4($t2) -/* 07F774 8007EB74 00437825 */ or $t7, $v0, $v1 -/* 07F778 8007EB78 3C18F300 */ lui $t8, 0xf300 -/* 07F77C 8007EB7C AD780000 */ sw $t8, ($t3) -/* 07F780 8007EB80 01E57025 */ or $t6, $t7, $a1 -/* 07F784 8007EB84 25B8FFFF */ addiu $t8, $t5, -1 -/* 07F788 8007EB88 00187880 */ sll $t7, $t8, 2 -/* 07F78C 8007EB8C 01C6C825 */ or $t9, $t6, $a2 -/* 07F790 8007EB90 31EE0FFF */ andi $t6, $t7, 0xfff -/* 07F794 8007EB94 AFB9002C */ sw $t9, 0x2c($sp) -/* 07F798 8007EB98 2618FFFF */ addiu $t8, $s0, -1 -/* 07F79C 8007EB9C 00187880 */ sll $t7, $t8, 2 -/* 07F7A0 8007EBA0 000ECB00 */ sll $t9, $t6, 0xc -/* 07F7A4 8007EBA4 31EE0FFF */ andi $t6, $t7, 0xfff -/* 07F7A8 8007EBA8 00004012 */ mflo $t0 -/* 07F7AC 8007EBAC 25080003 */ addiu $t0, $t0, 3 -/* 07F7B0 8007EBB0 000DF843 */ sra $ra, $t5, 1 -/* 07F7B4 8007EBB4 27FF0007 */ addiu $ra, $ra, 7 -/* 07F7B8 8007EBB8 00087883 */ sra $t7, $t0, 2 -/* 07F7BC 8007EBBC 032EC025 */ or $t8, $t9, $t6 -/* 07F7C0 8007EBC0 001FC8C3 */ sra $t9, $ra, 3 -/* 07F7C4 8007EBC4 25E8FFFF */ addiu $t0, $t7, -1 -/* 07F7C8 8007EBC8 290107FF */ slti $at, $t0, 0x7ff -/* 07F7CC 8007EBCC 332E01FF */ andi $t6, $t9, 0x1ff -/* 07F7D0 8007EBD0 000EFA40 */ sll $ra, $t6, 9 -/* 07F7D4 8007EBD4 AFB80028 */ sw $t8, 0x28($sp) -/* 07F7D8 8007EBD8 10200003 */ beqz $at, .L8007EBE8 -/* 07F7DC 8007EBDC 24E70008 */ addiu $a3, $a3, 8 -/* 07F7E0 8007EBE0 10000002 */ b .L8007EBEC -/* 07F7E4 8007EBE4 01002025 */ move $a0, $t0 -.L8007EBE8: -/* 07F7E8 8007EBE8 240407FF */ li $a0, 2047 -.L8007EBEC: -/* 07F7EC 8007EBEC 308F0FFF */ andi $t7, $a0, 0xfff -/* 07F7F0 8007EBF0 000FCB00 */ sll $t9, $t7, 0xc -/* 07F7F4 8007EBF4 3C010700 */ lui $at, 0x700 -/* 07F7F8 8007EBF8 03217025 */ or $t6, $t9, $at -/* 07F7FC 8007EBFC 00E01025 */ move $v0, $a3 -/* 07F800 8007EC00 AD6E0004 */ sw $t6, 4($t3) -/* 07F804 8007EC04 24E70008 */ addiu $a3, $a3, 8 -/* 07F808 8007EC08 3C01F560 */ lui $at, 0xf560 -/* 07F80C 8007EC0C 3C18E700 */ lui $t8, 0xe700 -/* 07F810 8007EC10 AC580000 */ sw $t8, ($v0) -/* 07F814 8007EC14 03E17825 */ or $t7, $ra, $at -/* 07F818 8007EC18 00E01825 */ move $v1, $a3 -/* 07F81C 8007EC1C AC400004 */ sw $zero, 4($v0) -/* 07F820 8007EC20 AC6F0000 */ sw $t7, ($v1) -/* 07F824 8007EC24 8FB9002C */ lw $t9, 0x2c($sp) -/* 07F828 8007EC28 24E70008 */ addiu $a3, $a3, 8 -/* 07F82C 8007EC2C 00E02825 */ move $a1, $a3 -/* 07F830 8007EC30 3C0EF200 */ lui $t6, 0xf200 -/* 07F834 8007EC34 AC790004 */ sw $t9, 4($v1) -/* 07F838 8007EC38 ACAE0000 */ sw $t6, ($a1) -/* 07F83C 8007EC3C 8FB80028 */ lw $t8, 0x28($sp) -/* 07F840 8007EC40 24E70008 */ addiu $a3, $a3, 8 -/* 07F844 8007EC44 ACB80004 */ sw $t8, 4($a1) -/* 07F848 8007EC48 862F0006 */ lh $t7, 6($s1) -/* 07F84C 8007EC4C 00000000 */ nop -/* 07F850 8007EC50 35F90004 */ ori $t9, $t7, 4 -/* 07F854 8007EC54 A6390006 */ sh $t9, 6($s1) -.L8007EC58: -/* 07F858 8007EC58 8FAE027C */ lw $t6, 0x27c($sp) -/* 07F85C 8007EC5C 24010002 */ li $at, 2 -/* 07F860 8007EC60 15C10059 */ bne $t6, $at, .L8007EDC8 -/* 07F864 8007EC64 00E02025 */ move $a0, $a3 -/* 07F868 8007EC68 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 -/* 07F86C 8007EC6C 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 -/* 07F870 8007EC70 02217821 */ addu $t7, $s1, $at -/* 07F874 8007EC74 24E70008 */ addiu $a3, $a3, 8 -/* 07F878 8007EC78 3C18FD90 */ lui $t8, 0xfd90 -/* 07F87C 8007EC7C AC980000 */ sw $t8, ($a0) -/* 07F880 8007EC80 00E04825 */ move $t1, $a3 -/* 07F884 8007EC84 AC8F0004 */ sw $t7, 4($a0) -/* 07F888 8007EC88 3C19F590 */ lui $t9, 0xf590 -/* 07F88C 8007EC8C AD390000 */ sw $t9, ($t1) -/* 07F890 8007EC90 8FA20268 */ lw $v0, 0x268($sp) -/* 07F894 8007EC94 8FA5026C */ lw $a1, 0x26c($sp) -/* 07F898 8007EC98 8FA30260 */ lw $v1, 0x260($sp) -/* 07F89C 8007EC9C 304E0003 */ andi $t6, $v0, 3 -/* 07F8A0 8007ECA0 000E1480 */ sll $v0, $t6, 0x12 -/* 07F8A4 8007ECA4 8FA60264 */ lw $a2, 0x264($sp) -/* 07F8A8 8007ECA8 30AE0003 */ andi $t6, $a1, 3 -/* 07F8AC 8007ECAC 306F000F */ andi $t7, $v1, 0xf -/* 07F8B0 8007ECB0 000F1B80 */ sll $v1, $t7, 0xe -/* 07F8B4 8007ECB4 000E2A00 */ sll $a1, $t6, 8 -/* 07F8B8 8007ECB8 3C010700 */ lui $at, 0x700 -/* 07F8BC 8007ECBC 00417025 */ or $t6, $v0, $at -/* 07F8C0 8007ECC0 30CF000F */ andi $t7, $a2, 0xf -/* 07F8C4 8007ECC4 000F3100 */ sll $a2, $t7, 4 -/* 07F8C8 8007ECC8 01C3C025 */ or $t8, $t6, $v1 -/* 07F8CC 8007ECCC 01B00019 */ multu $t5, $s0 -/* 07F8D0 8007ECD0 03057825 */ or $t7, $t8, $a1 -/* 07F8D4 8007ECD4 01E6C825 */ or $t9, $t7, $a2 -/* 07F8D8 8007ECD8 24E70008 */ addiu $a3, $a3, 8 -/* 07F8DC 8007ECDC 00E05025 */ move $t2, $a3 -/* 07F8E0 8007ECE0 AD390004 */ sw $t9, 4($t1) -/* 07F8E4 8007ECE4 24E70008 */ addiu $a3, $a3, 8 -/* 07F8E8 8007ECE8 3C0EE600 */ lui $t6, 0xe600 -/* 07F8EC 8007ECEC AD4E0000 */ sw $t6, ($t2) -/* 07F8F0 8007ECF0 00E05825 */ move $t3, $a3 -/* 07F8F4 8007ECF4 AD400004 */ sw $zero, 4($t2) -/* 07F8F8 8007ECF8 00437825 */ or $t7, $v0, $v1 -/* 07F8FC 8007ECFC 3C18F300 */ lui $t8, 0xf300 -/* 07F900 8007ED00 AD780000 */ sw $t8, ($t3) -/* 07F904 8007ED04 01E5C825 */ or $t9, $t7, $a1 -/* 07F908 8007ED08 25B8FFFF */ addiu $t8, $t5, -1 -/* 07F90C 8007ED0C 00187880 */ sll $t7, $t8, 2 -/* 07F910 8007ED10 03267025 */ or $t6, $t9, $a2 -/* 07F914 8007ED14 31F90FFF */ andi $t9, $t7, 0xfff -/* 07F918 8007ED18 AFAE002C */ sw $t6, 0x2c($sp) -/* 07F91C 8007ED1C 2618FFFF */ addiu $t8, $s0, -1 -/* 07F920 8007ED20 00187880 */ sll $t7, $t8, 2 -/* 07F924 8007ED24 00197300 */ sll $t6, $t9, 0xc -/* 07F928 8007ED28 31F90FFF */ andi $t9, $t7, 0xfff -/* 07F92C 8007ED2C 00004012 */ mflo $t0 -/* 07F930 8007ED30 25080001 */ addiu $t0, $t0, 1 -/* 07F934 8007ED34 00087843 */ sra $t7, $t0, 1 -/* 07F938 8007ED38 01D9C025 */ or $t8, $t6, $t9 -/* 07F93C 8007ED3C 25AC0007 */ addiu $t4, $t5, 7 -/* 07F940 8007ED40 000C70C3 */ sra $t6, $t4, 3 -/* 07F944 8007ED44 25E8FFFF */ addiu $t0, $t7, -1 -/* 07F948 8007ED48 290107FF */ slti $at, $t0, 0x7ff -/* 07F94C 8007ED4C 31D901FF */ andi $t9, $t6, 0x1ff -/* 07F950 8007ED50 00196240 */ sll $t4, $t9, 9 -/* 07F954 8007ED54 AFB80028 */ sw $t8, 0x28($sp) -/* 07F958 8007ED58 10200003 */ beqz $at, .L8007ED68 -/* 07F95C 8007ED5C 24E70008 */ addiu $a3, $a3, 8 -/* 07F960 8007ED60 10000002 */ b .L8007ED6C -/* 07F964 8007ED64 01002025 */ move $a0, $t0 -.L8007ED68: -/* 07F968 8007ED68 240407FF */ li $a0, 2047 -.L8007ED6C: -/* 07F96C 8007ED6C 308F0FFF */ andi $t7, $a0, 0xfff -/* 07F970 8007ED70 000F7300 */ sll $t6, $t7, 0xc -/* 07F974 8007ED74 3C010700 */ lui $at, 0x700 -/* 07F978 8007ED78 01C1C825 */ or $t9, $t6, $at -/* 07F97C 8007ED7C 00E01025 */ move $v0, $a3 -/* 07F980 8007ED80 AD790004 */ sw $t9, 4($t3) -/* 07F984 8007ED84 24E70008 */ addiu $a3, $a3, 8 -/* 07F988 8007ED88 3C01F588 */ lui $at, 0xf588 -/* 07F98C 8007ED8C 3C18E700 */ lui $t8, 0xe700 -/* 07F990 8007ED90 AC580000 */ sw $t8, ($v0) -/* 07F994 8007ED94 01817825 */ or $t7, $t4, $at -/* 07F998 8007ED98 00E01825 */ move $v1, $a3 -/* 07F99C 8007ED9C AC400004 */ sw $zero, 4($v0) -/* 07F9A0 8007EDA0 AC6F0000 */ sw $t7, ($v1) -/* 07F9A4 8007EDA4 8FAE002C */ lw $t6, 0x2c($sp) -/* 07F9A8 8007EDA8 24E70008 */ addiu $a3, $a3, 8 -/* 07F9AC 8007EDAC 00E02825 */ move $a1, $a3 -/* 07F9B0 8007EDB0 3C19F200 */ lui $t9, 0xf200 -/* 07F9B4 8007EDB4 AC6E0004 */ sw $t6, 4($v1) -/* 07F9B8 8007EDB8 ACB90000 */ sw $t9, ($a1) -/* 07F9BC 8007EDBC 8FB80028 */ lw $t8, 0x28($sp) -/* 07F9C0 8007EDC0 24E70008 */ addiu $a3, $a3, 8 -/* 07F9C4 8007EDC4 ACB80004 */ sw $t8, 4($a1) -.L8007EDC8: -/* 07F9C8 8007EDC8 8FAF027C */ lw $t7, 0x27c($sp) -/* 07F9CC 8007EDCC 24010003 */ li $at, 3 -/* 07F9D0 8007EDD0 15E1005A */ bne $t7, $at, .L8007EF3C -/* 07F9D4 8007EDD4 00E02025 */ move $a0, $a3 -/* 07F9D8 8007EDD8 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 -/* 07F9DC 8007EDDC 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 -/* 07F9E0 8007EDE0 0221C821 */ addu $t9, $s1, $at -/* 07F9E4 8007EDE4 24E70008 */ addiu $a3, $a3, 8 -/* 07F9E8 8007EDE8 3C0EFD90 */ lui $t6, 0xfd90 -/* 07F9EC 8007EDEC AC8E0000 */ sw $t6, ($a0) -/* 07F9F0 8007EDF0 00E04825 */ move $t1, $a3 -/* 07F9F4 8007EDF4 AC990004 */ sw $t9, 4($a0) -/* 07F9F8 8007EDF8 3C18F590 */ lui $t8, 0xf590 -/* 07F9FC 8007EDFC AD380000 */ sw $t8, ($t1) -/* 07FA00 8007EE00 8FA20268 */ lw $v0, 0x268($sp) -/* 07FA04 8007EE04 8FA5026C */ lw $a1, 0x26c($sp) -/* 07FA08 8007EE08 8FA30260 */ lw $v1, 0x260($sp) -/* 07FA0C 8007EE0C 304F0003 */ andi $t7, $v0, 3 -/* 07FA10 8007EE10 000F1480 */ sll $v0, $t7, 0x12 -/* 07FA14 8007EE14 8FA60264 */ lw $a2, 0x264($sp) -/* 07FA18 8007EE18 30AF0003 */ andi $t7, $a1, 3 -/* 07FA1C 8007EE1C 3079000F */ andi $t9, $v1, 0xf -/* 07FA20 8007EE20 00191B80 */ sll $v1, $t9, 0xe -/* 07FA24 8007EE24 000F2A00 */ sll $a1, $t7, 8 -/* 07FA28 8007EE28 3C010700 */ lui $at, 0x700 -/* 07FA2C 8007EE2C 00417825 */ or $t7, $v0, $at -/* 07FA30 8007EE30 30D9000F */ andi $t9, $a2, 0xf -/* 07FA34 8007EE34 00193100 */ sll $a2, $t9, 4 -/* 07FA38 8007EE38 01E37025 */ or $t6, $t7, $v1 -/* 07FA3C 8007EE3C 01B00019 */ multu $t5, $s0 -/* 07FA40 8007EE40 01C5C825 */ or $t9, $t6, $a1 -/* 07FA44 8007EE44 0326C025 */ or $t8, $t9, $a2 -/* 07FA48 8007EE48 24E70008 */ addiu $a3, $a3, 8 -/* 07FA4C 8007EE4C 00E05025 */ move $t2, $a3 -/* 07FA50 8007EE50 AD380004 */ sw $t8, 4($t1) -/* 07FA54 8007EE54 24E70008 */ addiu $a3, $a3, 8 -/* 07FA58 8007EE58 3C0FE600 */ lui $t7, 0xe600 -/* 07FA5C 8007EE5C AD4F0000 */ sw $t7, ($t2) -/* 07FA60 8007EE60 00E05825 */ move $t3, $a3 -/* 07FA64 8007EE64 AD400004 */ sw $zero, 4($t2) -/* 07FA68 8007EE68 0043C825 */ or $t9, $v0, $v1 -/* 07FA6C 8007EE6C 3C0EF300 */ lui $t6, 0xf300 -/* 07FA70 8007EE70 AD6E0000 */ sw $t6, ($t3) -/* 07FA74 8007EE74 0325C025 */ or $t8, $t9, $a1 -/* 07FA78 8007EE78 25AEFFFF */ addiu $t6, $t5, -1 -/* 07FA7C 8007EE7C 000EC880 */ sll $t9, $t6, 2 -/* 07FA80 8007EE80 03067825 */ or $t7, $t8, $a2 -/* 07FA84 8007EE84 33380FFF */ andi $t8, $t9, 0xfff -/* 07FA88 8007EE88 AFAF002C */ sw $t7, 0x2c($sp) -/* 07FA8C 8007EE8C 260EFFFF */ addiu $t6, $s0, -1 -/* 07FA90 8007EE90 000EC880 */ sll $t9, $t6, 2 -/* 07FA94 8007EE94 00187B00 */ sll $t7, $t8, 0xc -/* 07FA98 8007EE98 33380FFF */ andi $t8, $t9, 0xfff -/* 07FA9C 8007EE9C 00004012 */ mflo $t0 -/* 07FAA0 8007EEA0 25080003 */ addiu $t0, $t0, 3 -/* 07FAA4 8007EEA4 000DF843 */ sra $ra, $t5, 1 -/* 07FAA8 8007EEA8 27FF0007 */ addiu $ra, $ra, 7 -/* 07FAAC 8007EEAC 0008C883 */ sra $t9, $t0, 2 -/* 07FAB0 8007EEB0 01F87025 */ or $t6, $t7, $t8 -/* 07FAB4 8007EEB4 001F78C3 */ sra $t7, $ra, 3 -/* 07FAB8 8007EEB8 2728FFFF */ addiu $t0, $t9, -1 -/* 07FABC 8007EEBC 290107FF */ slti $at, $t0, 0x7ff -/* 07FAC0 8007EEC0 31F801FF */ andi $t8, $t7, 0x1ff -/* 07FAC4 8007EEC4 0018FA40 */ sll $ra, $t8, 9 -/* 07FAC8 8007EEC8 AFAE0028 */ sw $t6, 0x28($sp) -/* 07FACC 8007EECC 10200003 */ beqz $at, .L8007EEDC -/* 07FAD0 8007EED0 24E70008 */ addiu $a3, $a3, 8 -/* 07FAD4 8007EED4 10000002 */ b .L8007EEE0 -/* 07FAD8 8007EED8 01002025 */ move $a0, $t0 -.L8007EEDC: -/* 07FADC 8007EEDC 240407FF */ li $a0, 2047 -.L8007EEE0: -/* 07FAE0 8007EEE0 30990FFF */ andi $t9, $a0, 0xfff -/* 07FAE4 8007EEE4 00197B00 */ sll $t7, $t9, 0xc -/* 07FAE8 8007EEE8 3C010700 */ lui $at, 0x700 -/* 07FAEC 8007EEEC 01E1C025 */ or $t8, $t7, $at -/* 07FAF0 8007EEF0 00E01025 */ move $v0, $a3 -/* 07FAF4 8007EEF4 AD780004 */ sw $t8, 4($t3) -/* 07FAF8 8007EEF8 24E70008 */ addiu $a3, $a3, 8 -/* 07FAFC 8007EEFC 3C01F580 */ lui $at, 0xf580 -/* 07FB00 8007EF00 3C0EE700 */ lui $t6, 0xe700 -/* 07FB04 8007EF04 AC4E0000 */ sw $t6, ($v0) -/* 07FB08 8007EF08 03E1C825 */ or $t9, $ra, $at -/* 07FB0C 8007EF0C 00E01825 */ move $v1, $a3 -/* 07FB10 8007EF10 AC400004 */ sw $zero, 4($v0) -/* 07FB14 8007EF14 AC790000 */ sw $t9, ($v1) -/* 07FB18 8007EF18 8FAF002C */ lw $t7, 0x2c($sp) -/* 07FB1C 8007EF1C 24E70008 */ addiu $a3, $a3, 8 -/* 07FB20 8007EF20 00E02825 */ move $a1, $a3 -/* 07FB24 8007EF24 3C18F200 */ lui $t8, 0xf200 -/* 07FB28 8007EF28 AC6F0004 */ sw $t7, 4($v1) -/* 07FB2C 8007EF2C ACB80000 */ sw $t8, ($a1) -/* 07FB30 8007EF30 8FAE0028 */ lw $t6, 0x28($sp) -/* 07FB34 8007EF34 24E70008 */ addiu $a3, $a3, 8 -/* 07FB38 8007EF38 ACAE0004 */ sw $t6, 4($a1) -.L8007EF3C: -/* 07FB3C 8007EF3C 8E39000C */ lw $t9, 0xc($s1) -/* 07FB40 8007EF40 00000000 */ nop -/* 07FB44 8007EF44 00F97823 */ subu $t7, $a3, $t9 -/* 07FB48 8007EF48 000FC0C3 */ sra $t8, $t7, 3 -/* 07FB4C 8007EF4C A638000A */ sh $t8, 0xa($s1) -.L8007EF50: -/* 07FB50 8007EF50 8FBF001C */ lw $ra, 0x1c($sp) -/* 07FB54 8007EF54 8FB00014 */ lw $s0, 0x14($sp) -/* 07FB58 8007EF58 8FB10018 */ lw $s1, 0x18($sp) -/* 07FB5C 8007EF5C 03E00008 */ jr $ra -/* 07FB60 8007EF60 27BD0280 */ addiu $sp, $sp, 0x280 - -glabel func_8007EF64 -/* 07FB64 8007EF64 3C188012 */ lui $t8, %hi(D_8012632C) # $t8, 0x8012 -/* 07FB68 8007EF68 8F18632C */ lw $t8, %lo(D_8012632C)($t8) -/* 07FB6C 8007EF6C 00047400 */ sll $t6, $a0, 0x10 -/* 07FB70 8007EF70 000E7C03 */ sra $t7, $t6, 0x10 -/* 07FB74 8007EF74 AFA40000 */ sw $a0, ($sp) -/* 07FB78 8007EF78 03E00008 */ jr $ra -/* 07FB7C 8007EF7C 01F81021 */ addu $v0, $t7, $t8 - -glabel func_8007EF80 -/* 07FB80 8007EF80 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 07FB84 8007EF84 AFBF001C */ sw $ra, 0x1c($sp) -/* 07FB88 8007EF88 AFB10018 */ sw $s1, 0x18($sp) -/* 07FB8C 8007EF8C AFB00014 */ sw $s0, 0x14($sp) -/* 07FB90 8007EF90 8CA20000 */ lw $v0, ($a1) -/* 07FB94 8007EF94 3C080400 */ lui $t0, 0x400 -/* 07FB98 8007EF98 3C010200 */ lui $at, 0x200 -/* 07FB9C 8007EF9C 00021A00 */ sll $v1, $v0, 8 -/* 07FBA0 8007EFA0 00A08025 */ move $s0, $a1 -/* 07FBA4 8007EFA4 00808825 */ move $s1, $a0 -/* 07FBA8 8007EFA8 00485024 */ and $t2, $v0, $t0 -/* 07FBAC 8007EFAC 0461003B */ bgez $v1, .L8007F09C -/* 07FBB0 8007EFB0 00414824 */ and $t1, $v0, $at -/* 07FBB4 8007EFB4 1520000E */ bnez $t1, .L8007EFF0 -/* 07FBB8 8007EFB8 00002025 */ move $a0, $zero -/* 07FBBC 8007EFBC 0C01BE53 */ jal func_8006F94C -/* 07FBC0 8007EFC0 240503E8 */ li $a1, 1000 -/* 07FBC4 8007EFC4 284103DA */ slti $at, $v0, 0x3da -/* 07FBC8 8007EFC8 14200082 */ bnez $at, .L8007F1D4 -/* 07FBCC 8007EFCC 3C05FBFF */ lui $a1, (0xFBFFFFFF >> 16) # lui $a1, 0xfbff -/* 07FBD0 8007EFD0 8E0E0000 */ lw $t6, ($s0) -/* 07FBD4 8007EFD4 34A5FFFF */ ori $a1, (0xFBFFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 07FBD8 8007EFD8 01C57824 */ and $t7, $t6, $a1 -/* 07FBDC 8007EFDC 3C010200 */ lui $at, 0x200 -/* 07FBE0 8007EFE0 AE0F0000 */ sw $t7, ($s0) -/* 07FBE4 8007EFE4 01E1C825 */ or $t9, $t7, $at -/* 07FBE8 8007EFE8 1000007A */ b .L8007F1D4 -/* 07FBEC 8007EFEC AE190000 */ sw $t9, ($s0) -.L8007EFF0: -/* 07FBF0 8007EFF0 1540001C */ bnez $t2, .L8007F064 -/* 07FBF4 8007EFF4 00000000 */ nop -/* 07FBF8 8007EFF8 962C0014 */ lhu $t4, 0x14($s1) -/* 07FBFC 8007EFFC 8CCB0000 */ lw $t3, ($a2) -/* 07FC00 8007F000 01870019 */ multu $t4, $a3 -/* 07FC04 8007F004 00006812 */ mflo $t5 -/* 07FC08 8007F008 016D7021 */ addu $t6, $t3, $t5 -/* 07FC0C 8007F00C ACCE0000 */ sw $t6, ($a2) -/* 07FC10 8007F010 96230012 */ lhu $v1, 0x12($s1) -/* 07FC14 8007F014 00000000 */ nop -/* 07FC18 8007F018 01C3082A */ slt $at, $t6, $v1 -/* 07FC1C 8007F01C 1420006D */ bnez $at, .L8007F1D4 -/* 07FC20 8007F020 00037840 */ sll $t7, $v1, 1 -/* 07FC24 8007F024 01EEC023 */ subu $t8, $t7, $t6 -/* 07FC28 8007F028 2719FFFF */ addiu $t9, $t8, -1 -/* 07FC2C 8007F02C 07210008 */ bgez $t9, .L8007F050 -/* 07FC30 8007F030 ACD90000 */ sw $t9, ($a2) -/* 07FC34 8007F034 ACC00000 */ sw $zero, ($a2) -/* 07FC38 8007F038 8E0B0000 */ lw $t3, ($s0) -/* 07FC3C 8007F03C 3C01F9FF */ lui $at, (0xF9FFFFFF >> 16) # lui $at, 0xf9ff -/* 07FC40 8007F040 3421FFFF */ ori $at, (0xF9FFFFFF & 0xFFFF) # ori $at, $at, 0xffff -/* 07FC44 8007F044 01616824 */ and $t5, $t3, $at -/* 07FC48 8007F048 10000062 */ b .L8007F1D4 -/* 07FC4C 8007F04C AE0D0000 */ sw $t5, ($s0) -.L8007F050: -/* 07FC50 8007F050 8E0E0000 */ lw $t6, ($s0) -/* 07FC54 8007F054 00000000 */ nop -/* 07FC58 8007F058 01C87825 */ or $t7, $t6, $t0 -/* 07FC5C 8007F05C 1000005D */ b .L8007F1D4 -/* 07FC60 8007F060 AE0F0000 */ sw $t7, ($s0) -.L8007F064: -/* 07FC64 8007F064 96390014 */ lhu $t9, 0x14($s1) -/* 07FC68 8007F068 8CD80000 */ lw $t8, ($a2) -/* 07FC6C 8007F06C 03270019 */ multu $t9, $a3 -/* 07FC70 8007F070 3C01F9FF */ lui $at, (0xF9FFFFFF >> 16) # lui $at, 0xf9ff -/* 07FC74 8007F074 00006012 */ mflo $t4 -/* 07FC78 8007F078 030C5823 */ subu $t3, $t8, $t4 -/* 07FC7C 8007F07C 05610055 */ bgez $t3, .L8007F1D4 -/* 07FC80 8007F080 ACCB0000 */ sw $t3, ($a2) -/* 07FC84 8007F084 ACC00000 */ sw $zero, ($a2) -/* 07FC88 8007F088 8E0E0000 */ lw $t6, ($s0) -/* 07FC8C 8007F08C 3421FFFF */ ori $at, (0xF9FFFFFF & 0xFFFF) # ori $at, $at, 0xffff -/* 07FC90 8007F090 01C17824 */ and $t7, $t6, $at -/* 07FC94 8007F094 1000004F */ b .L8007F1D4 -/* 07FC98 8007F098 AE0F0000 */ sw $t7, ($s0) -.L8007F09C: -/* 07FC9C 8007F09C 1120002B */ beqz $t1, .L8007F14C -/* 07FCA0 8007F0A0 3C05FBFF */ lui $a1, (0xFBFFFFFF >> 16) # lui $a1, 0xfbff -/* 07FCA4 8007F0A4 15400008 */ bnez $t2, .L8007F0C8 -/* 07FCA8 8007F0A8 34A5FFFF */ ori $a1, (0xFBFFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 07FCAC 8007F0AC 96380014 */ lhu $t8, 0x14($s1) -/* 07FCB0 8007F0B0 8CD90000 */ lw $t9, ($a2) -/* 07FCB4 8007F0B4 03070019 */ multu $t8, $a3 -/* 07FCB8 8007F0B8 00006012 */ mflo $t4 -/* 07FCBC 8007F0BC 032C5821 */ addu $t3, $t9, $t4 -/* 07FCC0 8007F0C0 10000007 */ b .L8007F0E0 -/* 07FCC4 8007F0C4 ACCB0000 */ sw $t3, ($a2) -.L8007F0C8: -/* 07FCC8 8007F0C8 962E0014 */ lhu $t6, 0x14($s1) -/* 07FCCC 8007F0CC 8CCD0000 */ lw $t5, ($a2) -/* 07FCD0 8007F0D0 01C70019 */ multu $t6, $a3 -/* 07FCD4 8007F0D4 00007812 */ mflo $t7 -/* 07FCD8 8007F0D8 01AFC023 */ subu $t8, $t5, $t7 -/* 07FCDC 8007F0DC ACD80000 */ sw $t8, ($a2) -.L8007F0E0: -/* 07FCE0 8007F0E0 8CC20000 */ lw $v0, ($a2) -/* 07FCE4 8007F0E4 00002025 */ move $a0, $zero -/* 07FCE8 8007F0E8 04410008 */ bgez $v0, .L8007F10C -/* 07FCEC 8007F0EC 0002C823 */ negu $t9, $v0 -/* 07FCF0 8007F0F0 ACD90000 */ sw $t9, ($a2) -/* 07FCF4 8007F0F4 8E0C0000 */ lw $t4, ($s0) -/* 07FCF8 8007F0F8 24040001 */ li $a0, 1 -/* 07FCFC 8007F0FC 01855824 */ and $t3, $t4, $a1 -/* 07FD00 8007F100 AE0B0000 */ sw $t3, ($s0) -/* 07FD04 8007F104 8CC20000 */ lw $v0, ($a2) -/* 07FD08 8007F108 00000000 */ nop -.L8007F10C: -/* 07FD0C 8007F10C 96230012 */ lhu $v1, 0x12($s1) -/* 07FD10 8007F110 00000000 */ nop -/* 07FD14 8007F114 0043082A */ slt $at, $v0, $v1 -/* 07FD18 8007F118 14200008 */ bnez $at, .L8007F13C -/* 07FD1C 8007F11C 00037040 */ sll $t6, $v1, 1 -/* 07FD20 8007F120 01C26823 */ subu $t5, $t6, $v0 -/* 07FD24 8007F124 25AFFFFF */ addiu $t7, $t5, -1 -/* 07FD28 8007F128 ACCF0000 */ sw $t7, ($a2) -/* 07FD2C 8007F12C 8E180000 */ lw $t8, ($s0) -/* 07FD30 8007F130 24040001 */ li $a0, 1 -/* 07FD34 8007F134 0308C825 */ or $t9, $t8, $t0 -/* 07FD38 8007F138 AE190000 */ sw $t9, ($s0) -.L8007F13C: -/* 07FD3C 8007F13C 1480FFE8 */ bnez $a0, .L8007F0E0 -/* 07FD40 8007F140 00000000 */ nop -/* 07FD44 8007F144 10000024 */ b .L8007F1D8 -/* 07FD48 8007F148 8FBF001C */ lw $ra, 0x1c($sp) -.L8007F14C: -/* 07FD4C 8007F14C 15400014 */ bnez $t2, .L8007F1A0 -/* 07FD50 8007F150 00000000 */ nop -/* 07FD54 8007F154 962B0014 */ lhu $t3, 0x14($s1) -/* 07FD58 8007F158 8CCC0000 */ lw $t4, ($a2) -/* 07FD5C 8007F15C 01670019 */ multu $t3, $a3 -/* 07FD60 8007F160 00007012 */ mflo $t6 -/* 07FD64 8007F164 018E1021 */ addu $v0, $t4, $t6 -/* 07FD68 8007F168 ACC20000 */ sw $v0, ($a2) -/* 07FD6C 8007F16C 96230012 */ lhu $v1, 0x12($s1) -/* 07FD70 8007F170 00000000 */ nop -/* 07FD74 8007F174 0043082A */ slt $at, $v0, $v1 -/* 07FD78 8007F178 14200016 */ bnez $at, .L8007F1D4 -/* 07FD7C 8007F17C 00437823 */ subu $t7, $v0, $v1 -.L8007F180: -/* 07FD80 8007F180 ACCF0000 */ sw $t7, ($a2) -/* 07FD84 8007F184 96230012 */ lhu $v1, 0x12($s1) -/* 07FD88 8007F188 01E01025 */ move $v0, $t7 -/* 07FD8C 8007F18C 01E3082A */ slt $at, $t7, $v1 -/* 07FD90 8007F190 1020FFFB */ beqz $at, .L8007F180 -/* 07FD94 8007F194 00437823 */ subu $t7, $v0, $v1 -/* 07FD98 8007F198 1000000F */ b .L8007F1D8 -/* 07FD9C 8007F19C 8FBF001C */ lw $ra, 0x1c($sp) -.L8007F1A0: -/* 07FDA0 8007F1A0 96390014 */ lhu $t9, 0x14($s1) -/* 07FDA4 8007F1A4 8CD80000 */ lw $t8, ($a2) -/* 07FDA8 8007F1A8 03270019 */ multu $t9, $a3 -/* 07FDAC 8007F1AC 00005812 */ mflo $t3 -/* 07FDB0 8007F1B0 030B1023 */ subu $v0, $t8, $t3 -/* 07FDB4 8007F1B4 04410007 */ bgez $v0, .L8007F1D4 -/* 07FDB8 8007F1B8 ACC20000 */ sw $v0, ($a2) -.L8007F1BC: -/* 07FDBC 8007F1BC 962E0012 */ lhu $t6, 0x12($s1) -/* 07FDC0 8007F1C0 00000000 */ nop -/* 07FDC4 8007F1C4 004E6821 */ addu $t5, $v0, $t6 -/* 07FDC8 8007F1C8 ACCD0000 */ sw $t5, ($a2) -/* 07FDCC 8007F1CC 05A0FFFB */ bltz $t5, .L8007F1BC -/* 07FDD0 8007F1D0 01A01025 */ move $v0, $t5 -.L8007F1D4: -/* 07FDD4 8007F1D4 8FBF001C */ lw $ra, 0x1c($sp) -.L8007F1D8: -/* 07FDD8 8007F1D8 8FB00014 */ lw $s0, 0x14($sp) -/* 07FDDC 8007F1DC 8FB10018 */ lw $s1, 0x18($sp) -/* 07FDE0 8007F1E0 03E00008 */ jr $ra -/* 07FDE4 8007F1E4 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_8007F1E8 -/* 07FDE8 8007F1E8 908E0014 */ lbu $t6, 0x14($a0) -/* 07FDEC 8007F1EC 908F0015 */ lbu $t7, 0x15($a0) -/* 07FDF0 8007F1F0 90980016 */ lbu $t8, 0x16($a0) -/* 07FDF4 8007F1F4 90990017 */ lbu $t9, 0x17($a0) -/* 07FDF8 8007F1F8 8C830000 */ lw $v1, ($a0) -/* 07FDFC 8007F1FC AC800004 */ sw $zero, 4($a0) -/* 07FE00 8007F200 AC800008 */ sw $zero, 8($a0) -/* 07FE04 8007F204 AC80000C */ sw $zero, 0xc($a0) -/* 07FE08 8007F208 A08E0010 */ sb $t6, 0x10($a0) -/* 07FE0C 8007F20C A08F0011 */ sb $t7, 0x11($a0) -/* 07FE10 8007F210 A0980012 */ sb $t8, 0x12($a0) -/* 07FE14 8007F214 1860000B */ blez $v1, .L8007F244 -/* 07FE18 8007F218 A0990013 */ sb $t9, 0x13($a0) -/* 07FE1C 8007F21C 000340C0 */ sll $t0, $v1, 3 -/* 07FE20 8007F220 01042821 */ addu $a1, $t0, $a0 -/* 07FE24 8007F224 00801025 */ move $v0, $a0 -.L8007F228: -/* 07FE28 8007F228 8C89000C */ lw $t1, 0xc($a0) -/* 07FE2C 8007F22C 8C4A0018 */ lw $t2, 0x18($v0) -/* 07FE30 8007F230 24420008 */ addiu $v0, $v0, 8 -/* 07FE34 8007F234 0045082B */ sltu $at, $v0, $a1 -/* 07FE38 8007F238 012A5821 */ addu $t3, $t1, $t2 -/* 07FE3C 8007F23C 1420FFFA */ bnez $at, .L8007F228 -/* 07FE40 8007F240 AC8B000C */ sw $t3, 0xc($a0) -.L8007F244: -/* 07FE44 8007F244 03E00008 */ jr $ra -/* 07FE48 8007F248 00000000 */ nop - -glabel func_8007F24C -/* 07FE4C 8007F24C 8C8E0000 */ lw $t6, ($a0) -/* 07FE50 8007F250 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 07FE54 8007F254 29C10002 */ slti $at, $t6, 2 -/* 07FE58 8007F258 1420006C */ bnez $at, .L8007F40C -/* 07FE5C 8007F25C 00000000 */ nop -/* 07FE60 8007F260 8C8F0008 */ lw $t7, 8($a0) -/* 07FE64 8007F264 8C83000C */ lw $v1, 0xc($a0) -/* 07FE68 8007F268 01E51021 */ addu $v0, $t7, $a1 -/* 07FE6C 8007F26C 0043082A */ slt $at, $v0, $v1 -/* 07FE70 8007F270 14200006 */ bnez $at, .L8007F28C -/* 07FE74 8007F274 AC820008 */ sw $v0, 8($a0) -.L8007F278: -/* 07FE78 8007F278 0043C823 */ subu $t9, $v0, $v1 -/* 07FE7C 8007F27C 0323082A */ slt $at, $t9, $v1 -/* 07FE80 8007F280 AC990008 */ sw $t9, 8($a0) -/* 07FE84 8007F284 1020FFFC */ beqz $at, .L8007F278 -/* 07FE88 8007F288 03201025 */ move $v0, $t9 -.L8007F28C: -/* 07FE8C 8007F28C 8C830004 */ lw $v1, 4($a0) -/* 07FE90 8007F290 00000000 */ nop -/* 07FE94 8007F294 000370C0 */ sll $t6, $v1, 3 -/* 07FE98 8007F298 008E7821 */ addu $t7, $a0, $t6 -/* 07FE9C 8007F29C 8DE50018 */ lw $a1, 0x18($t7) -/* 07FEA0 8007F2A0 00000000 */ nop -/* 07FEA4 8007F2A4 0045082A */ slt $at, $v0, $a1 -/* 07FEA8 8007F2A8 14200013 */ bnez $at, .L8007F2F8 -/* 07FEAC 8007F2AC 00000000 */ nop -.L8007F2B0: -/* 07FEB0 8007F2B0 8C8E0000 */ lw $t6, ($a0) -/* 07FEB4 8007F2B4 24790001 */ addiu $t9, $v1, 1 -/* 07FEB8 8007F2B8 0045C023 */ subu $t8, $v0, $a1 -/* 07FEBC 8007F2BC 032E082A */ slt $at, $t9, $t6 -/* 07FEC0 8007F2C0 AC980008 */ sw $t8, 8($a0) -/* 07FEC4 8007F2C4 AC990004 */ sw $t9, 4($a0) -/* 07FEC8 8007F2C8 14200003 */ bnez $at, .L8007F2D8 -/* 07FECC 8007F2CC 03201825 */ move $v1, $t9 -/* 07FED0 8007F2D0 AC800004 */ sw $zero, 4($a0) -/* 07FED4 8007F2D4 00001825 */ move $v1, $zero -.L8007F2D8: -/* 07FED8 8007F2D8 000378C0 */ sll $t7, $v1, 3 -/* 07FEDC 8007F2DC 008FC021 */ addu $t8, $a0, $t7 -/* 07FEE0 8007F2E0 8F050018 */ lw $a1, 0x18($t8) -/* 07FEE4 8007F2E4 8C820008 */ lw $v0, 8($a0) -/* 07FEE8 8007F2E8 00000000 */ nop -/* 07FEEC 8007F2EC 0045082A */ slt $at, $v0, $a1 -/* 07FEF0 8007F2F0 1020FFEF */ beqz $at, .L8007F2B0 -/* 07FEF4 8007F2F4 00000000 */ nop -.L8007F2F8: -/* 07FEF8 8007F2F8 8C990000 */ lw $t9, ($a0) -/* 07FEFC 8007F2FC 24650001 */ addiu $a1, $v1, 1 -/* 07FF00 8007F300 00B9082A */ slt $at, $a1, $t9 -/* 07FF04 8007F304 00603025 */ move $a2, $v1 -/* 07FF08 8007F308 14200002 */ bnez $at, .L8007F314 -/* 07FF0C 8007F30C 00A03825 */ move $a3, $a1 -/* 07FF10 8007F310 00003825 */ move $a3, $zero -.L8007F314: -/* 07FF14 8007F314 000670C0 */ sll $t6, $a2, 3 -/* 07FF18 8007F318 008E1821 */ addu $v1, $a0, $t6 -/* 07FF1C 8007F31C 8C780018 */ lw $t8, 0x18($v1) -/* 07FF20 8007F320 00027C00 */ sll $t7, $v0, 0x10 -/* 07FF24 8007F324 01F8001A */ div $zero, $t7, $t8 -/* 07FF28 8007F328 0007C8C0 */ sll $t9, $a3, 3 -/* 07FF2C 8007F32C 00996821 */ addu $t5, $a0, $t9 -/* 07FF30 8007F330 90680014 */ lbu $t0, 0x14($v1) -/* 07FF34 8007F334 91AC0014 */ lbu $t4, 0x14($t5) -/* 07FF38 8007F338 91AE0015 */ lbu $t6, 0x15($t5) -/* 07FF3C 8007F33C 0188C823 */ subu $t9, $t4, $t0 -/* 07FF40 8007F340 90690015 */ lbu $t1, 0x15($v1) -/* 07FF44 8007F344 906A0016 */ lbu $t2, 0x16($v1) -/* 07FF48 8007F348 906B0017 */ lbu $t3, 0x17($v1) -/* 07FF4C 8007F34C 17000002 */ bnez $t8, .L8007F358 -/* 07FF50 8007F350 00000000 */ nop -/* 07FF54 8007F354 0007000D */ break 7 -.L8007F358: -/* 07FF58 8007F358 2401FFFF */ li $at, -1 -/* 07FF5C 8007F35C 17010004 */ bne $t8, $at, .L8007F370 -/* 07FF60 8007F360 3C018000 */ lui $at, 0x8000 -/* 07FF64 8007F364 15E10002 */ bne $t7, $at, .L8007F370 -/* 07FF68 8007F368 00000000 */ nop -/* 07FF6C 8007F36C 0006000D */ break 6 -.L8007F370: -/* 07FF70 8007F370 AFAE0008 */ sw $t6, 8($sp) -/* 07FF74 8007F374 91AF0016 */ lbu $t7, 0x16($t5) -/* 07FF78 8007F378 00000000 */ nop -/* 07FF7C 8007F37C AFAF0004 */ sw $t7, 4($sp) -/* 07FF80 8007F380 91B80017 */ lbu $t8, 0x17($t5) -/* 07FF84 8007F384 00000000 */ nop -/* 07FF88 8007F388 AFB80000 */ sw $t8, ($sp) -/* 07FF8C 8007F38C 00002812 */ mflo $a1 -/* 07FF90 8007F390 00000000 */ nop -/* 07FF94 8007F394 00000000 */ nop -/* 07FF98 8007F398 03250019 */ multu $t9, $a1 -/* 07FF9C 8007F39C 00007012 */ mflo $t6 -/* 07FFA0 8007F3A0 000E7C02 */ srl $t7, $t6, 0x10 -/* 07FFA4 8007F3A4 01E8C021 */ addu $t8, $t7, $t0 -/* 07FFA8 8007F3A8 A0980010 */ sb $t8, 0x10($a0) -/* 07FFAC 8007F3AC 8FB90008 */ lw $t9, 8($sp) -/* 07FFB0 8007F3B0 00000000 */ nop -/* 07FFB4 8007F3B4 03297023 */ subu $t6, $t9, $t1 -/* 07FFB8 8007F3B8 01C50019 */ multu $t6, $a1 -/* 07FFBC 8007F3BC 00007812 */ mflo $t7 -/* 07FFC0 8007F3C0 000FC402 */ srl $t8, $t7, 0x10 -/* 07FFC4 8007F3C4 0309C821 */ addu $t9, $t8, $t1 -/* 07FFC8 8007F3C8 A0990011 */ sb $t9, 0x11($a0) -/* 07FFCC 8007F3CC 8FAE0004 */ lw $t6, 4($sp) -/* 07FFD0 8007F3D0 00000000 */ nop -/* 07FFD4 8007F3D4 01CA7823 */ subu $t7, $t6, $t2 -/* 07FFD8 8007F3D8 01E50019 */ multu $t7, $a1 -/* 07FFDC 8007F3DC 0000C012 */ mflo $t8 -/* 07FFE0 8007F3E0 0018CC02 */ srl $t9, $t8, 0x10 -/* 07FFE4 8007F3E4 032A7021 */ addu $t6, $t9, $t2 -/* 07FFE8 8007F3E8 A08E0012 */ sb $t6, 0x12($a0) -/* 07FFEC 8007F3EC 8FAF0000 */ lw $t7, ($sp) -/* 07FFF0 8007F3F0 00000000 */ nop -/* 07FFF4 8007F3F4 01EBC023 */ subu $t8, $t7, $t3 -/* 07FFF8 8007F3F8 03050019 */ multu $t8, $a1 -/* 07FFFC 8007F3FC 0000C812 */ mflo $t9 -/* 080000 8007F400 00197402 */ srl $t6, $t9, 0x10 -/* 080004 8007F404 01CB7821 */ addu $t7, $t6, $t3 -/* 080008 8007F408 A08F0013 */ sb $t7, 0x13($a0) -.L8007F40C: -/* 08000C 8007F40C 03E00008 */ jr $ra -/* 080010 8007F410 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_8007F414 -/* 080014 8007F414 948E000C */ lhu $t6, 0xc($a0) -/* 080018 8007F418 94830000 */ lhu $v1, ($a0) -/* 08001C 8007F41C A4800002 */ sh $zero, 2($a0) -/* 080020 8007F420 A4800004 */ sh $zero, 4($a0) -/* 080024 8007F424 A4800006 */ sh $zero, 6($a0) -/* 080028 8007F428 1860000B */ blez $v1, .L8007F458 -/* 08002C 8007F42C AC8E0008 */ sw $t6, 8($a0) -/* 080030 8007F430 00037880 */ sll $t7, $v1, 2 -/* 080034 8007F434 01E42821 */ addu $a1, $t7, $a0 -/* 080038 8007F438 00801025 */ move $v0, $a0 -.L8007F43C: -/* 08003C 8007F43C 94980006 */ lhu $t8, 6($a0) -/* 080040 8007F440 9459000E */ lhu $t9, 0xe($v0) -/* 080044 8007F444 24420004 */ addiu $v0, $v0, 4 -/* 080048 8007F448 0045082B */ sltu $at, $v0, $a1 -/* 08004C 8007F44C 03194021 */ addu $t0, $t8, $t9 -/* 080050 8007F450 1420FFFA */ bnez $at, .L8007F43C -/* 080054 8007F454 A4880006 */ sh $t0, 6($a0) -.L8007F458: -/* 080058 8007F458 03E00008 */ jr $ra -/* 08005C 8007F45C 00000000 */ nop - -glabel func_8007F460 -/* 080060 8007F460 948E0000 */ lhu $t6, ($a0) -/* 080064 8007F464 00000000 */ nop -/* 080068 8007F468 29C10002 */ slti $at, $t6, 2 -/* 08006C 8007F46C 14200047 */ bnez $at, .L8007F58C -/* 080070 8007F470 00000000 */ nop -/* 080074 8007F474 948F0004 */ lhu $t7, 4($a0) -/* 080078 8007F478 94830006 */ lhu $v1, 6($a0) -/* 08007C 8007F47C 01E5C021 */ addu $t8, $t7, $a1 -/* 080080 8007F480 3302FFFF */ andi $v0, $t8, 0xffff -/* 080084 8007F484 0043082A */ slt $at, $v0, $v1 -/* 080088 8007F488 14200006 */ bnez $at, .L8007F4A4 -/* 08008C 8007F48C A4980004 */ sh $t8, 4($a0) -.L8007F490: -/* 080090 8007F490 0043C823 */ subu $t9, $v0, $v1 -/* 080094 8007F494 3322FFFF */ andi $v0, $t9, 0xffff -/* 080098 8007F498 0043082A */ slt $at, $v0, $v1 -/* 08009C 8007F49C 1020FFFC */ beqz $at, .L8007F490 -/* 0800A0 8007F4A0 A4990004 */ sh $t9, 4($a0) -.L8007F4A4: -/* 0800A4 8007F4A4 94830002 */ lhu $v1, 2($a0) -/* 0800A8 8007F4A8 00000000 */ nop -/* 0800AC 8007F4AC 00034080 */ sll $t0, $v1, 2 -/* 0800B0 8007F4B0 00884821 */ addu $t1, $a0, $t0 -/* 0800B4 8007F4B4 9525000E */ lhu $a1, 0xe($t1) -/* 0800B8 8007F4B8 00000000 */ nop -/* 0800BC 8007F4BC 0045082A */ slt $at, $v0, $a1 -/* 0800C0 8007F4C0 14200013 */ bnez $at, .L8007F510 -/* 0800C4 8007F4C4 00000000 */ nop -.L8007F4C8: -/* 0800C8 8007F4C8 948C0000 */ lhu $t4, ($a0) -/* 0800CC 8007F4CC 246B0001 */ addiu $t3, $v1, 1 -/* 0800D0 8007F4D0 3163FFFF */ andi $v1, $t3, 0xffff -/* 0800D4 8007F4D4 00455023 */ subu $t2, $v0, $a1 -/* 0800D8 8007F4D8 006C082A */ slt $at, $v1, $t4 -/* 0800DC 8007F4DC A48A0004 */ sh $t2, 4($a0) -/* 0800E0 8007F4E0 14200003 */ bnez $at, .L8007F4F0 -/* 0800E4 8007F4E4 A48B0002 */ sh $t3, 2($a0) -/* 0800E8 8007F4E8 A4800002 */ sh $zero, 2($a0) -/* 0800EC 8007F4EC 3003FFFF */ andi $v1, $zero, 0xffff -.L8007F4F0: -/* 0800F0 8007F4F0 00036880 */ sll $t5, $v1, 2 -/* 0800F4 8007F4F4 008D7021 */ addu $t6, $a0, $t5 -/* 0800F8 8007F4F8 95C5000E */ lhu $a1, 0xe($t6) -/* 0800FC 8007F4FC 94820004 */ lhu $v0, 4($a0) -/* 080100 8007F500 00000000 */ nop -/* 080104 8007F504 0045082A */ slt $at, $v0, $a1 -/* 080108 8007F508 1020FFEF */ beqz $at, .L8007F4C8 -/* 08010C 8007F50C 00000000 */ nop -.L8007F510: -/* 080110 8007F510 948F0000 */ lhu $t7, ($a0) -/* 080114 8007F514 24670001 */ addiu $a3, $v1, 1 -/* 080118 8007F518 00EF082A */ slt $at, $a3, $t7 -/* 08011C 8007F51C 00602825 */ move $a1, $v1 -/* 080120 8007F520 14200002 */ bnez $at, .L8007F52C -/* 080124 8007F524 00E03025 */ move $a2, $a3 -/* 080128 8007F528 00003025 */ move $a2, $zero -.L8007F52C: -/* 08012C 8007F52C 0006C880 */ sll $t9, $a2, 2 -/* 080130 8007F530 00994021 */ addu $t0, $a0, $t9 -/* 080134 8007F534 9509000C */ lhu $t1, 0xc($t0) -/* 080138 8007F538 0005C080 */ sll $t8, $a1, 2 -/* 08013C 8007F53C 01220019 */ multu $t1, $v0 -/* 080140 8007F540 00981821 */ addu $v1, $a0, $t8 -/* 080144 8007F544 946B000E */ lhu $t3, 0xe($v1) -/* 080148 8007F548 946D000C */ lhu $t5, 0xc($v1) -/* 08014C 8007F54C 00005012 */ mflo $t2 -/* 080150 8007F550 00000000 */ nop -/* 080154 8007F554 00000000 */ nop -/* 080158 8007F558 014B001A */ div $zero, $t2, $t3 -/* 08015C 8007F55C 15600002 */ bnez $t3, .L8007F568 -/* 080160 8007F560 00000000 */ nop -/* 080164 8007F564 0007000D */ break 7 -.L8007F568: -/* 080168 8007F568 2401FFFF */ li $at, -1 -/* 08016C 8007F56C 15610004 */ bne $t3, $at, .L8007F580 -/* 080170 8007F570 3C018000 */ lui $at, 0x8000 -/* 080174 8007F574 15410002 */ bne $t2, $at, .L8007F580 -/* 080178 8007F578 00000000 */ nop -/* 08017C 8007F57C 0006000D */ break 6 -.L8007F580: -/* 080180 8007F580 00006012 */ mflo $t4 -/* 080184 8007F584 018D7021 */ addu $t6, $t4, $t5 -/* 080188 8007F588 AC8E0008 */ sw $t6, 8($a0) -.L8007F58C: -/* 08018C 8007F58C 03E00008 */ jr $ra -/* 080190 8007F590 00000000 */ nop - -glabel func_8007F594 -/* 080194 8007F594 3C02800E */ lui $v0, %hi(D_800DF3A8) # $v0, 0x800e -/* 080198 8007F598 2CA10002 */ sltiu $at, $a1, 2 -/* 08019C 8007F59C AFA40000 */ sw $a0, ($sp) -/* 0801A0 8007F5A0 AFA60008 */ sw $a2, 8($sp) -/* 0801A4 8007F5A4 AFA7000C */ sw $a3, 0xc($sp) -/* 0801A8 8007F5A8 2442F3A8 */ addiu $v0, %lo(D_800DF3A8) # addiu $v0, $v0, -0xc58 -/* 0801AC 8007F5AC 14200004 */ bnez $at, .L8007F5C0 -/* 0801B0 8007F5B0 00A01825 */ move $v1, $a1 -/* 0801B4 8007F5B4 3C02800E */ lui $v0, %hi(D_800DF3D8) # $v0, 0x800e -/* 0801B8 8007F5B8 24030002 */ li $v1, 2 -/* 0801BC 8007F5BC 2442F3D8 */ addiu $v0, %lo(D_800DF3D8) # addiu $v0, $v0, -0xc28 -.L8007F5C0: -/* 0801C0 8007F5C0 8FAE0000 */ lw $t6, ($sp) -/* 0801C4 8007F5C4 3C0F0600 */ lui $t7, 0x600 -/* 0801C8 8007F5C8 8DC50000 */ lw $a1, ($t6) -/* 0801CC 8007F5CC 0003C900 */ sll $t9, $v1, 4 -/* 0801D0 8007F5D0 3C018000 */ lui $at, 0x8000 -/* 0801D4 8007F5D4 3C0A800E */ lui $t2, %hi(D_800DF410) # $t2, 0x800e -/* 0801D8 8007F5D8 24A60008 */ addiu $a2, $a1, 8 -/* 0801DC 8007F5DC 254AF410 */ addiu $t2, %lo(D_800DF410) # addiu $t2, $t2, -0xbf0 -/* 0801E0 8007F5E0 03214821 */ addu $t1, $t9, $at -/* 0801E4 8007F5E4 3C180702 */ lui $t8, (0x07020010 >> 16) # lui $t8, 0x702 -/* 0801E8 8007F5E8 ACAF0000 */ sw $t7, ($a1) -/* 0801EC 8007F5EC ACA20004 */ sw $v0, 4($a1) -/* 0801F0 8007F5F0 37180010 */ ori $t8, (0x07020010 & 0xFFFF) # ori $t8, $t8, 0x10 -/* 0801F4 8007F5F4 012A5821 */ addu $t3, $t1, $t2 -/* 0801F8 8007F5F8 ACCB0004 */ sw $t3, 4($a2) -/* 0801FC 8007F5FC ACD80000 */ sw $t8, ($a2) -/* 080200 8007F600 24C70008 */ addiu $a3, $a2, 8 -/* 080204 8007F604 3C0CFA00 */ lui $t4, 0xfa00 -/* 080208 8007F608 ACEC0000 */ sw $t4, ($a3) -/* 08020C 8007F60C 8FAD0008 */ lw $t5, 8($sp) -/* 080210 8007F610 24E80008 */ addiu $t0, $a3, 8 -/* 080214 8007F614 3C0EFB00 */ lui $t6, 0xfb00 -/* 080218 8007F618 ACED0004 */ sw $t5, 4($a3) -/* 08021C 8007F61C AD0E0000 */ sw $t6, ($t0) -/* 080220 8007F620 8FAF000C */ lw $t7, 0xc($sp) -/* 080224 8007F624 25040008 */ addiu $a0, $t0, 8 -/* 080228 8007F628 AD0F0004 */ sw $t7, 4($t0) -/* 08022C 8007F62C 8FB80000 */ lw $t8, ($sp) -/* 080230 8007F630 03E00008 */ jr $ra -/* 080234 8007F634 AF040000 */ sw $a0, ($t8) - -/* 080238 8007F638 00000000 */ nop -/* 08023C 8007F63C 00000000 */ nop diff --git a/asm/unknown_09F8F0.s b/asm/unknown_09F8F0.s deleted file mode 100755 index d395990a..00000000 --- a/asm/unknown_09F8F0.s +++ /dev/null @@ -1,16723 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_8009ECF0 -/* 09F8F0 8009ECF0 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 09F8F4 8009ECF4 AFBF0024 */ sw $ra, 0x24($sp) -/* 09F8F8 8009ECF8 AFB20020 */ sw $s2, 0x20($sp) -/* 09F8FC 8009ECFC AFB1001C */ sw $s1, 0x1c($sp) -/* 09F900 8009ED00 AFB00018 */ sw $s0, 0x18($sp) -/* 09F904 8009ED04 0C019884 */ jal func_80066210 -/* 09F908 8009ED08 AFA40028 */ sw $a0, 0x28($sp) -/* 09F90C 8009ED0C 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 -/* 09F910 8009ED10 24636D0C */ addiu $v1, %lo(D_80126D0C) # addiu $v1, $v1, 0x6d0c -/* 09F914 8009ED14 AC620000 */ sw $v0, ($v1) -/* 09F918 8009ED18 0C01994B */ jal func_8006652C -/* 09F91C 8009ED1C 00402025 */ move $a0, $v0 -/* 09F920 8009ED20 3C018012 */ lui $at, %hi(D_80126D37) # $at, 0x8012 -/* 09F924 8009ED24 0C01BAA4 */ jal func_8006EA90 -/* 09F928 8009ED28 A0226D37 */ sb $v0, %lo(D_80126D37)($at) -/* 09F92C 8009ED2C 3C018012 */ lui $at, %hi(D_80127184) # $at, 0x8012 -/* 09F930 8009ED30 0C003877 */ jal func_8000E1DC -/* 09F934 8009ED34 AC227184 */ sw $v0, %lo(D_80127184)($at) -/* 09F938 8009ED38 3C018012 */ lui $at, %hi(D_80127188) # $at, 0x8012 -/* 09F93C 8009ED3C A0227188 */ sb $v0, %lo(D_80127188)($at) -/* 09F940 8009ED40 0C01DB16 */ jal func_80076C58 -/* 09F944 8009ED44 24040011 */ li $a0, 17 -/* 09F948 8009ED48 3C068012 */ lui $a2, %hi(D_80126CF8) # $a2, 0x8012 -/* 09F94C 8009ED4C 3C118012 */ lui $s1, %hi(D_80126CF0) # $s1, 0x8012 -/* 09F950 8009ED50 26316CF0 */ addiu $s1, %lo(D_80126CF0) # addiu $s1, $s1, 0x6cf0 -/* 09F954 8009ED54 24C66CF8 */ addiu $a2, %lo(D_80126CF8) # addiu $a2, $a2, 0x6cf8 -/* 09F958 8009ED58 00007040 */ sll $t6, $zero, 1 -/* 09F95C 8009ED5C AE220000 */ sw $v0, ($s1) -/* 09F960 8009ED60 ACC00000 */ sw $zero, ($a2) -/* 09F964 8009ED64 004E7821 */ addu $t7, $v0, $t6 -/* 09F968 8009ED68 85F80000 */ lh $t8, ($t7) -/* 09F96C 8009ED6C 2412FFFF */ li $s2, -1 -/* 09F970 8009ED70 00401825 */ move $v1, $v0 -/* 09F974 8009ED74 12580009 */ beq $s2, $t8, .L8009ED9C -/* 09F978 8009ED78 00008025 */ move $s0, $zero -/* 09F97C 8009ED7C 26190001 */ addiu $t9, $s0, 1 -.L8009ED80: -/* 09F980 8009ED80 00194040 */ sll $t0, $t9, 1 -/* 09F984 8009ED84 00684821 */ addu $t1, $v1, $t0 -/* 09F988 8009ED88 ACD90000 */ sw $t9, ($a2) -/* 09F98C 8009ED8C 852A0000 */ lh $t2, ($t1) -/* 09F990 8009ED90 03208025 */ move $s0, $t9 -/* 09F994 8009ED94 164AFFFA */ bne $s2, $t2, .L8009ED80 -/* 09F998 8009ED98 26190001 */ addiu $t9, $s0, 1 -.L8009ED9C: -/* 09F99C 8009ED9C 00102080 */ sll $a0, $s0, 2 -/* 09F9A0 8009EDA0 00902021 */ addu $a0, $a0, $s0 -/* 09F9A4 8009EDA4 0C01C327 */ jal func_80070C9C -/* 09F9A8 8009EDA8 3405FFFF */ li $a1, 65535 -/* 09F9AC 8009EDAC 3C068012 */ lui $a2, %hi(D_80126CF8) # $a2, 0x8012 -/* 09F9B0 8009EDB0 24C66CF8 */ addiu $a2, %lo(D_80126CF8) # addiu $a2, $a2, 0x6cf8 -/* 09F9B4 8009EDB4 8CD00000 */ lw $s0, ($a2) -/* 09F9B8 8009EDB8 3C048012 */ lui $a0, %hi(D_80126CD8) # $a0, 0x8012 -/* 09F9BC 8009EDBC 3C078012 */ lui $a3, %hi(D_80126CF4) # $a3, 0x8012 -/* 09F9C0 8009EDC0 00105880 */ sll $t3, $s0, 2 -/* 09F9C4 8009EDC4 24E76CF4 */ addiu $a3, %lo(D_80126CF4) # addiu $a3, $a3, 0x6cf4 -/* 09F9C8 8009EDC8 24846CD8 */ addiu $a0, %lo(D_80126CD8) # addiu $a0, $a0, 0x6cd8 -/* 09F9CC 8009EDCC 01626821 */ addu $t5, $t3, $v0 -/* 09F9D0 8009EDD0 ACE20000 */ sw $v0, ($a3) -/* 09F9D4 8009EDD4 AC8D0000 */ sw $t5, ($a0) -/* 09F9D8 8009EDD8 1A00000F */ blez $s0, .L8009EE18 -/* 09F9DC 8009EDDC 00001825 */ move $v1, $zero -/* 09F9E0 8009EDE0 00001025 */ move $v0, $zero -.L8009EDE4: -/* 09F9E4 8009EDE4 8C8E0000 */ lw $t6, ($a0) -/* 09F9E8 8009EDE8 00000000 */ nop -/* 09F9EC 8009EDEC 01C37821 */ addu $t7, $t6, $v1 -/* 09F9F0 8009EDF0 A1E00000 */ sb $zero, ($t7) -/* 09F9F4 8009EDF4 8CF80000 */ lw $t8, ($a3) -/* 09F9F8 8009EDF8 24630001 */ addiu $v1, $v1, 1 -/* 09F9FC 8009EDFC 0302C821 */ addu $t9, $t8, $v0 -/* 09FA00 8009EE00 AF200000 */ sw $zero, ($t9) -/* 09FA04 8009EE04 8CC80000 */ lw $t0, ($a2) -/* 09FA08 8009EE08 24420004 */ addiu $v0, $v0, 4 -/* 09FA0C 8009EE0C 0068082A */ slt $at, $v1, $t0 -/* 09FA10 8009EE10 1420FFF4 */ bnez $at, .L8009EDE4 -/* 09FA14 8009EE14 00000000 */ nop -.L8009EE18: -/* 09FA18 8009EE18 8E290000 */ lw $t1, ($s1) -/* 09FA1C 8009EE1C 24050001 */ li $a1, 1 -/* 09FA20 8009EE20 85240002 */ lh $a0, 2($t1) -/* 09FA24 8009EE24 00000000 */ nop -/* 09FA28 8009EE28 308A3FFF */ andi $t2, $a0, 0x3fff -/* 09FA2C 8009EE2C 0C01F04B */ jal func_8007C12C -/* 09FA30 8009EE30 01402025 */ move $a0, $t2 -/* 09FA34 8009EE34 3C078012 */ lui $a3, %hi(D_80126CF4) # $a3, 0x8012 -/* 09FA38 8009EE38 24E76CF4 */ addiu $a3, %lo(D_80126CF4) # addiu $a3, $a3, 0x6cf4 -/* 09FA3C 8009EE3C 8CEB0000 */ lw $t3, ($a3) -/* 09FA40 8009EE40 24050001 */ li $a1, 1 -/* 09FA44 8009EE44 AD620004 */ sw $v0, 4($t3) -/* 09FA48 8009EE48 8E2C0000 */ lw $t4, ($s1) -/* 09FA4C 8009EE4C 00000000 */ nop -/* 09FA50 8009EE50 8584002E */ lh $a0, 0x2e($t4) -/* 09FA54 8009EE54 00000000 */ nop -/* 09FA58 8009EE58 308D3FFF */ andi $t5, $a0, 0x3fff -/* 09FA5C 8009EE5C 0C01F04B */ jal func_8007C12C -/* 09FA60 8009EE60 01A02025 */ move $a0, $t5 -/* 09FA64 8009EE64 3C078012 */ lui $a3, %hi(D_80126CF4) # $a3, 0x8012 -/* 09FA68 8009EE68 24E76CF4 */ addiu $a3, %lo(D_80126CF4) # addiu $a3, $a3, 0x6cf4 -/* 09FA6C 8009EE6C 8CEE0000 */ lw $t6, ($a3) -/* 09FA70 8009EE70 24050001 */ li $a1, 1 -/* 09FA74 8009EE74 ADC2005C */ sw $v0, 0x5c($t6) -/* 09FA78 8009EE78 8E2F0000 */ lw $t7, ($s1) -/* 09FA7C 8009EE7C 00000000 */ nop -/* 09FA80 8009EE80 85E40010 */ lh $a0, 0x10($t7) -/* 09FA84 8009EE84 00000000 */ nop -/* 09FA88 8009EE88 30983FFF */ andi $t8, $a0, 0x3fff -/* 09FA8C 8009EE8C 0C01F04B */ jal func_8007C12C -/* 09FA90 8009EE90 03002025 */ move $a0, $t8 -/* 09FA94 8009EE94 3C078012 */ lui $a3, %hi(D_80126CF4) # $a3, 0x8012 -/* 09FA98 8009EE98 24E76CF4 */ addiu $a3, %lo(D_80126CF4) # addiu $a3, $a3, 0x6cf4 -/* 09FA9C 8009EE9C 8CF90000 */ lw $t9, ($a3) -/* 09FAA0 8009EEA0 24050001 */ li $a1, 1 -/* 09FAA4 8009EEA4 AF220020 */ sw $v0, 0x20($t9) -/* 09FAA8 8009EEA8 8E280000 */ lw $t0, ($s1) -/* 09FAAC 8009EEAC 00000000 */ nop -/* 09FAB0 8009EEB0 85040022 */ lh $a0, 0x22($t0) -/* 09FAB4 8009EEB4 00000000 */ nop -/* 09FAB8 8009EEB8 30893FFF */ andi $t1, $a0, 0x3fff -/* 09FABC 8009EEBC 0C01F04B */ jal func_8007C12C -/* 09FAC0 8009EEC0 01202025 */ move $a0, $t1 -/* 09FAC4 8009EEC4 3C078012 */ lui $a3, %hi(D_80126CF4) # $a3, 0x8012 -/* 09FAC8 8009EEC8 24E76CF4 */ addiu $a3, %lo(D_80126CF4) # addiu $a3, $a3, 0x6cf4 -/* 09FACC 8009EECC 8CEA0000 */ lw $t2, ($a3) -/* 09FAD0 8009EED0 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 -/* 09FAD4 8009EED4 AD420044 */ sw $v0, 0x44($t2) -/* 09FAD8 8009EED8 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) -/* 09FADC 8009EEDC 24010003 */ li $at, 3 -/* 09FAE0 8009EEE0 10610003 */ beq $v1, $at, .L8009EEF0 -/* 09FAE4 8009EEE4 3405FFFF */ li $a1, 65535 -/* 09FAE8 8009EEE8 10000002 */ b .L8009EEF4 -/* 09FAEC 8009EEEC 00601025 */ move $v0, $v1 -.L8009EEF0: -/* 09FAF0 8009EEF0 24020004 */ li $v0, 4 -.L8009EEF4: -/* 09FAF4 8009EEF4 00022100 */ sll $a0, $v0, 4 -/* 09FAF8 8009EEF8 00822023 */ subu $a0, $a0, $v0 -/* 09FAFC 8009EEFC 00042080 */ sll $a0, $a0, 2 -/* 09FB00 8009EF00 00822023 */ subu $a0, $a0, $v0 -/* 09FB04 8009EF04 0C01C327 */ jal func_80070C9C -/* 09FB08 8009EF08 00042140 */ sll $a0, $a0, 5 -/* 09FB0C 8009EF0C 3C038012 */ lui $v1, %hi(D_80126CE0) # $v1, 0x8012 -/* 09FB10 8009EF10 24636CE0 */ addiu $v1, %lo(D_80126CE0) # addiu $v1, $v1, 0x6ce0 -/* 09FB14 8009EF14 244C0760 */ addiu $t4, $v0, 0x760 -/* 09FB18 8009EF18 258E0760 */ addiu $t6, $t4, 0x760 -/* 09FB1C 8009EF1C 25D80760 */ addiu $t8, $t6, 0x760 -/* 09FB20 8009EF20 AC620000 */ sw $v0, ($v1) -/* 09FB24 8009EF24 AC6C0004 */ sw $t4, 4($v1) -/* 09FB28 8009EF28 AC6E0008 */ sw $t6, 8($v1) -/* 09FB2C 8009EF2C 0C027C0D */ jal func_8009F034 -/* 09FB30 8009EF30 AC78000C */ sw $t8, 0xc($v1) -/* 09FB34 8009EF34 3C018012 */ lui $at, %hi(D_80126D64) # $at, 0x8012 -/* 09FB38 8009EF38 A0206D64 */ sb $zero, %lo(D_80126D64)($at) -/* 09FB3C 8009EF3C 3C018012 */ lui $at, %hi(D_80126D6C) # $at, 0x8012 -/* 09FB40 8009EF40 AC206D6C */ sw $zero, %lo(D_80126D6C)($at) -/* 09FB44 8009EF44 3C018012 */ lui $at, %hi(D_80126D48) # $at, 0x8012 -/* 09FB48 8009EF48 A4206D48 */ sh $zero, %lo(D_80126D48)($at) -/* 09FB4C 8009EF4C 24020004 */ li $v0, 4 -/* 09FB50 8009EF50 3C018012 */ lui $at, %hi(D_80126D66) # $at, 0x8012 -/* 09FB54 8009EF54 A0226D66 */ sb $v0, %lo(D_80126D66)($at) -/* 09FB58 8009EF58 3C018012 */ lui $at, %hi(D_80126D65) # $at, 0x8012 -/* 09FB5C 8009EF5C A0206D65 */ sb $zero, %lo(D_80126D65)($at) -/* 09FB60 8009EF60 3C018012 */ lui $at, %hi(D_80126D67) # $at, 0x8012 -/* 09FB64 8009EF64 A0226D67 */ sb $v0, %lo(D_80126D67)($at) -/* 09FB68 8009EF68 3C018012 */ lui $at, %hi(D_80126D69) # $at, 0x8012 -/* 09FB6C 8009EF6C 24190001 */ li $t9, 1 -/* 09FB70 8009EF70 A0396D69 */ sb $t9, %lo(D_80126D69)($at) -/* 09FB74 8009EF74 3C018012 */ lui $at, %hi(D_80126D68) # $at, 0x8012 -/* 09FB78 8009EF78 24080001 */ li $t0, 1 -/* 09FB7C 8009EF7C A0286D68 */ sb $t0, %lo(D_80126D68)($at) -/* 09FB80 8009EF80 3C018012 */ lui $at, %hi(D_80126D70) # $at, 0x8012 -/* 09FB84 8009EF84 A0206D70 */ sb $zero, %lo(D_80126D70)($at) -/* 09FB88 8009EF88 3C018012 */ lui $at, %hi(D_80126D7C) # $at, 0x8012 -/* 09FB8C 8009EF8C A4206D7C */ sh $zero, %lo(D_80126D7C)($at) -/* 09FB90 8009EF90 3C018012 */ lui $at, %hi(D_80126D74) # $at, 0x8012 -/* 09FB94 8009EF94 AC206D74 */ sw $zero, %lo(D_80126D74)($at) -/* 09FB98 8009EF98 3C018012 */ lui $at, %hi(D_80126D3C) # $at, 0x8012 -/* 09FB9C 8009EF9C AC206D3C */ sw $zero, %lo(D_80126D3C)($at) -/* 09FBA0 8009EFA0 3C018012 */ lui $at, %hi(D_80126D44) # $at, 0x8012 -/* 09FBA4 8009EFA4 AC206D44 */ sw $zero, %lo(D_80126D44)($at) -/* 09FBA8 8009EFA8 3C018012 */ lui $at, %hi(D_80126CD3) # $at, 0x8012 -/* 09FBAC 8009EFAC A0206CD3 */ sb $zero, %lo(D_80126CD3)($at) -/* 09FBB0 8009EFB0 0C0078A7 */ jal func_8001E29C -/* 09FBB4 8009EFB4 2404003A */ li $a0, 58 -/* 09FBB8 8009EFB8 3C038012 */ lui $v1, %hi(D_80127194) # $v1, 0x8012 -/* 09FBBC 8009EFBC 24637194 */ addiu $v1, %lo(D_80127194) # addiu $v1, $v1, 0x7194 -/* 09FBC0 8009EFC0 AC620000 */ sw $v0, ($v1) -/* 09FBC4 8009EFC4 0C01FC7A */ jal func_8007F1E8 -/* 09FBC8 8009EFC8 00402025 */ move $a0, $v0 -/* 09FBCC 8009EFCC 00002025 */ move $a0, $zero -/* 09FBD0 8009EFD0 0C001298 */ jal func_80004A60 -/* 09FBD4 8009EFD4 24057FFF */ li $a1, 32767 -/* 09FBD8 8009EFD8 24040002 */ li $a0, 2 -/* 09FBDC 8009EFDC 0C001298 */ jal func_80004A60 -/* 09FBE0 8009EFE0 24057FFF */ li $a1, 32767 -/* 09FBE4 8009EFE4 3C10800E */ lui $s0, %hi(D_800E2770) # $s0, 0x800e -/* 09FBE8 8009EFE8 3C11800E */ lui $s1, %hi(D_800E2790) # $s1, 0x800e -/* 09FBEC 8009EFEC 26312790 */ addiu $s1, %lo(D_800E2790) # addiu $s1, $s1, 0x2790 -/* 09FBF0 8009EFF0 26102770 */ addiu $s0, %lo(D_800E2770) # addiu $s0, $s0, 0x2770 -.L8009EFF4: -/* 09FBF4 8009EFF4 8E040004 */ lw $a0, 4($s0) -/* 09FBF8 8009EFF8 A2000002 */ sb $zero, 2($s0) -/* 09FBFC 8009EFFC A2000003 */ sb $zero, 3($s0) -/* 09FC00 8009F000 10800003 */ beqz $a0, .L8009F010 -/* 09FC04 8009F004 A212000C */ sb $s2, 0xc($s0) -/* 09FC08 8009F008 0C001223 */ jal func_8000488C -/* 09FC0C 8009F00C 00000000 */ nop -.L8009F010: -/* 09FC10 8009F010 26100010 */ addiu $s0, $s0, 0x10 -/* 09FC14 8009F014 1611FFF7 */ bne $s0, $s1, .L8009EFF4 -/* 09FC18 8009F018 00000000 */ nop -/* 09FC1C 8009F01C 8FBF0024 */ lw $ra, 0x24($sp) -/* 09FC20 8009F020 8FB00018 */ lw $s0, 0x18($sp) -/* 09FC24 8009F024 8FB1001C */ lw $s1, 0x1c($sp) -/* 09FC28 8009F028 8FB20020 */ lw $s2, 0x20($sp) -/* 09FC2C 8009F02C 03E00008 */ jr $ra -/* 09FC30 8009F030 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_8009F034 -/* 09FC34 8009F034 27BDFF68 */ addiu $sp, $sp, -0x98 -/* 09FC38 8009F038 AFBF0064 */ sw $ra, 0x64($sp) -/* 09FC3C 8009F03C AFBE0060 */ sw $fp, 0x60($sp) -/* 09FC40 8009F040 AFB7005C */ sw $s7, 0x5c($sp) -/* 09FC44 8009F044 AFB60058 */ sw $s6, 0x58($sp) -/* 09FC48 8009F048 AFB50054 */ sw $s5, 0x54($sp) -/* 09FC4C 8009F04C AFB40050 */ sw $s4, 0x50($sp) -/* 09FC50 8009F050 AFB3004C */ sw $s3, 0x4c($sp) -/* 09FC54 8009F054 AFB20048 */ sw $s2, 0x48($sp) -/* 09FC58 8009F058 AFB10044 */ sw $s1, 0x44($sp) -/* 09FC5C 8009F05C AFB00040 */ sw $s0, 0x40($sp) -/* 09FC60 8009F060 E7BD0038 */ swc1 $f29, 0x38($sp) -/* 09FC64 8009F064 E7BC003C */ swc1 $f28, 0x3c($sp) -/* 09FC68 8009F068 E7BB0030 */ swc1 $f27, 0x30($sp) -/* 09FC6C 8009F06C E7BA0034 */ swc1 $f26, 0x34($sp) -/* 09FC70 8009F070 E7B90028 */ swc1 $f25, 0x28($sp) -/* 09FC74 8009F074 E7B8002C */ swc1 $f24, 0x2c($sp) -/* 09FC78 8009F078 E7B70020 */ swc1 $f23, 0x20($sp) -/* 09FC7C 8009F07C E7B60024 */ swc1 $f22, 0x24($sp) -/* 09FC80 8009F080 E7B50018 */ swc1 $f21, 0x18($sp) -/* 09FC84 8009F084 0C01AF66 */ jal func_8006BD98 -/* 09FC88 8009F088 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 09FC8C 8009F08C 240C0001 */ li $t4, 1 -/* 09FC90 8009F090 11820004 */ beq $t4, $v0, .L8009F0A4 -/* 09FC94 8009F094 3C108000 */ lui $s0, %hi(D_80000300) # $s0, 0x8000 -/* 09FC98 8009F098 24010005 */ li $at, 5 -/* 09FC9C 8009F09C 14410007 */ bne $v0, $at, .L8009F0BC -/* 09FCA0 8009F0A0 3C0F8012 */ lui $t7, %hi(D_80126D0C) # $t7, 0x8012 -.L8009F0A4: -/* 09FCA4 8009F0A4 3C018012 */ lui $at, %hi(D_80126D24) # $at, 0x8012 -/* 09FCA8 8009F0A8 AC206D24 */ sw $zero, %lo(D_80126D24)($at) -/* 09FCAC 8009F0AC 3C018012 */ lui $at, %hi(D_80126D34) # $at, 0x8012 -/* 09FCB0 8009F0B0 240E0001 */ li $t6, 1 -/* 09FCB4 8009F0B4 10000015 */ b .L8009F10C -/* 09FCB8 8009F0B8 A02E6D34 */ sb $t6, %lo(D_80126D34)($at) -.L8009F0BC: -/* 09FCBC 8009F0BC 8DEF6D0C */ lw $t7, %lo(D_80126D0C)($t7) -/* 09FCC0 8009F0C0 24180140 */ li $t8, 320 -/* 09FCC4 8009F0C4 29E10002 */ slti $at, $t7, 2 -/* 09FCC8 8009F0C8 10200008 */ beqz $at, .L8009F0EC -/* 09FCCC 8009F0CC 241900C8 */ li $t9, 200 -/* 09FCD0 8009F0D0 3C018012 */ lui $at, %hi(D_80126D24) # $at, 0x8012 -/* 09FCD4 8009F0D4 AC386D24 */ sw $t8, %lo(D_80126D24)($at) -/* 09FCD8 8009F0D8 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 09FCDC 8009F0DC 44812000 */ mtc1 $at, $f4 -/* 09FCE0 8009F0E0 3C018012 */ lui $at, %hi(D_80126D30) # $at, 0x8012 -/* 09FCE4 8009F0E4 10000007 */ b .L8009F104 -/* 09FCE8 8009F0E8 E4246D30 */ swc1 $f4, %lo(D_80126D30)($at) -.L8009F0EC: -/* 09FCEC 8009F0EC 3C018012 */ lui $at, %hi(D_80126D24) # $at, 0x8012 -/* 09FCF0 8009F0F0 AC396D24 */ sw $t9, %lo(D_80126D24)($at) -/* 09FCF4 8009F0F4 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 09FCF8 8009F0F8 44813000 */ mtc1 $at, $f6 -/* 09FCFC 8009F0FC 3C018012 */ lui $at, %hi(D_80126D30) # $at, 0x8012 -/* 09FD00 8009F100 E4266D30 */ swc1 $f6, %lo(D_80126D30)($at) -.L8009F104: -/* 09FD04 8009F104 3C018012 */ lui $at, %hi(D_80126D34) # $at, 0x8012 -/* 09FD08 8009F108 A0206D34 */ sb $zero, %lo(D_80126D34)($at) -.L8009F10C: -/* 09FD0C 8009F10C 3C018012 */ lui $at, %hi(D_80126D2C) # $at, 0x8012 -/* 09FD10 8009F110 A4206D2C */ sh $zero, %lo(D_80126D2C)($at) -/* 09FD14 8009F114 3C018012 */ lui $at, %hi(D_80126CD4) # $at, 0x8012 -/* 09FD18 8009F118 A0206CD4 */ sb $zero, %lo(D_80126CD4)($at) -/* 09FD1C 8009F11C 3C018012 */ lui $at, %hi(D_80126D36) # $at, 0x8012 -/* 09FD20 8009F120 A0206D36 */ sb $zero, %lo(D_80126D36)($at) -/* 09FD24 8009F124 3C018012 */ lui $at, %hi(D_80126D38) # $at, 0x8012 -/* 09FD28 8009F128 A0206D38 */ sb $zero, %lo(D_80126D38)($at) -/* 09FD2C 8009F12C 3C018012 */ lui $at, %hi(D_80126D35) # $at, 0x8012 -/* 09FD30 8009F130 A0206D35 */ sb $zero, %lo(D_80126D35)($at) -/* 09FD34 8009F134 3C018012 */ lui $at, %hi(D_80126CD0) # $at, 0x8012 -/* 09FD38 8009F138 26100300 */ addiu $s0, %lo(D_80000300) # addiu $s0, $s0, 0x300 -/* 09FD3C 8009F13C A0206CD0 */ sb $zero, %lo(D_80126CD0)($at) -/* 09FD40 8009F140 8E0E0000 */ lw $t6, ($s0) -/* 09FD44 8009F144 2419FF9C */ li $t9, -100 -/* 09FD48 8009F148 15C00005 */ bnez $t6, .L8009F160 -/* 09FD4C 8009F14C 24040078 */ li $a0, 120 -/* 09FD50 8009F150 240F003C */ li $t7, 60 -/* 09FD54 8009F154 3C018012 */ lui $at, %hi(D_8012718B) # $at, 0x8012 -/* 09FD58 8009F158 10000004 */ b .L8009F16C -/* 09FD5C 8009F15C A02F718B */ sb $t7, %lo(D_8012718B)($at) -.L8009F160: -/* 09FD60 8009F160 24180032 */ li $t8, 50 -/* 09FD64 8009F164 3C018012 */ lui $at, %hi(D_8012718B) # $at, 0x8012 -/* 09FD68 8009F168 A038718B */ sb $t8, %lo(D_8012718B)($at) -.L8009F16C: -/* 09FD6C 8009F16C 3C018012 */ lui $at, %hi(D_80126CD1) # $at, 0x8012 -/* 09FD70 8009F170 A0206CD1 */ sb $zero, %lo(D_80126CD1)($at) -/* 09FD74 8009F174 3C018012 */ lui $at, %hi(D_80126CD2) # $at, 0x8012 -/* 09FD78 8009F178 A0206CD2 */ sb $zero, %lo(D_80126CD2)($at) -/* 09FD7C 8009F17C 3C018012 */ lui $at, %hi(D_80126CD5) # $at, 0x8012 -/* 09FD80 8009F180 A0206CD5 */ sb $zero, %lo(D_80126CD5)($at) -/* 09FD84 8009F184 3C018012 */ lui $at, %hi(D_80127189) # $at, 0x8012 -/* 09FD88 8009F188 A0207189 */ sb $zero, %lo(D_80127189)($at) -/* 09FD8C 8009F18C 3C018012 */ lui $at, %hi(D_80126D4C) # $at, 0x8012 -/* 09FD90 8009F190 AC396D4C */ sw $t9, %lo(D_80126D4C)($at) -/* 09FD94 8009F194 0C01BE53 */ jal func_8006F94C -/* 09FD98 8009F198 24050168 */ li $a1, 360 -/* 09FD9C 8009F19C 3C018012 */ lui $at, %hi(D_80126D50) # $at, 0x8012 -/* 09FDA0 8009F1A0 0C003856 */ jal func_8000E158 -/* 09FDA4 8009F1A4 AC226D50 */ sw $v0, %lo(D_80126D50)($at) -/* 09FDA8 8009F1A8 3C018012 */ lui $at, %hi(D_8012718A) # $at, 0x8012 -/* 09FDAC 8009F1AC A022718A */ sb $v0, %lo(D_8012718A)($at) -/* 09FDB0 8009F1B0 8E180000 */ lw $t8, ($s0) -/* 09FDB4 8009F1B4 3C038012 */ lui $v1, %hi(D_8012718C) # $v1, 0x8012 -/* 09FDB8 8009F1B8 3C048012 */ lui $a0, %hi(D_80127190) # $a0, 0x8012 -/* 09FDBC 8009F1BC 24847190 */ addiu $a0, %lo(D_80127190) # addiu $a0, $a0, 0x7190 -/* 09FDC0 8009F1C0 2463718C */ addiu $v1, %lo(D_8012718C) # addiu $v1, $v1, 0x718c -/* 09FDC4 8009F1C4 240E0037 */ li $t6, 55 -/* 09FDC8 8009F1C8 240F00B3 */ li $t7, 179 -/* 09FDCC 8009F1CC AC6E0000 */ sw $t6, ($v1) -/* 09FDD0 8009F1D0 17000006 */ bnez $t8, .L8009F1EC -/* 09FDD4 8009F1D4 AC8F0000 */ sw $t7, ($a0) -/* 09FDD8 8009F1D8 25EE001E */ addiu $t6, $t7, 0x1e -/* 09FDDC 8009F1DC 8C6F0000 */ lw $t7, ($v1) -/* 09FDE0 8009F1E0 AC8E0000 */ sw $t6, ($a0) -/* 09FDE4 8009F1E4 25F8FFFC */ addiu $t8, $t7, -4 -/* 09FDE8 8009F1E8 AC780000 */ sw $t8, ($v1) -.L8009F1EC: -/* 09FDEC 8009F1EC 0C006D90 */ jal func_8001B640 -/* 09FDF0 8009F1F0 00000000 */ nop -/* 09FDF4 8009F1F4 14400004 */ bnez $v0, .L8009F208 -/* 09FDF8 8009F1F8 240C0001 */ li $t4, 1 -/* 09FDFC 8009F1FC 3C018012 */ lui $at, %hi(D_80126D71) # $at, 0x8012 -/* 09FE00 8009F200 10000004 */ b .L8009F214 -/* 09FE04 8009F204 A0206D71 */ sb $zero, %lo(D_80126D71)($at) -.L8009F208: -/* 09FE08 8009F208 24190001 */ li $t9, 1 -/* 09FE0C 8009F20C 3C018012 */ lui $at, %hi(D_80126D71) # $at, 0x8012 -/* 09FE10 8009F210 A0396D71 */ sb $t9, %lo(D_80126D71)($at) -.L8009F214: -/* 09FE14 8009F214 3C028012 */ lui $v0, %hi(D_80126D37) # $v0, 0x8012 -/* 09FE18 8009F218 90426D37 */ lbu $v0, %lo(D_80126D37)($v0) -/* 09FE1C 8009F21C 24010003 */ li $at, 3 -/* 09FE20 8009F220 10410003 */ beq $v0, $at, .L8009F230 -/* 09FE24 8009F224 240E0004 */ li $t6, 4 -/* 09FE28 8009F228 10000002 */ b .L8009F234 -/* 09FE2C 8009F22C AFA2008C */ sw $v0, 0x8c($sp) -.L8009F230: -/* 09FE30 8009F230 AFAE008C */ sw $t6, 0x8c($sp) -.L8009F234: -/* 09FE34 8009F234 8FAF008C */ lw $t7, 0x8c($sp) -/* 09FE38 8009F238 00003825 */ move $a3, $zero -/* 09FE3C 8009F23C 19E00359 */ blez $t7, .L8009FFA4 -/* 09FE40 8009F240 3C188012 */ lui $t8, %hi(D_80126CE0) # $t8, 0x8012 -/* 09FE44 8009F244 3C01C268 */ li $at, 0xC2680000 # -58.000000 -/* 09FE48 8009F248 4481E000 */ mtc1 $at, $f28 -/* 09FE4C 8009F24C 3C01C2F0 */ li $at, 0xC2F00000 # -120.000000 -/* 09FE50 8009F250 4481D000 */ mtc1 $at, $f26 -/* 09FE54 8009F254 3C01C1C8 */ li $at, 0xC1C80000 # -25.000000 -/* 09FE58 8009F258 4481C000 */ mtc1 $at, $f24 -/* 09FE5C 8009F25C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 09FE60 8009F260 4481B000 */ mtc1 $at, $f22 -/* 09FE64 8009F264 3C0141E0 */ li $at, 0x41E00000 # 28.000000 -/* 09FE68 8009F268 4481A000 */ mtc1 $at, $f20 -/* 09FE6C 8009F26C 3C013FE8 */ li $at, 0x3FE80000 # 1.812500 -/* 09FE70 8009F270 44818800 */ mtc1 $at, $f17 -/* 09FE74 8009F274 3C01800F */ lui $at, %hi(D_800E86AC) # $at, 0x800f -/* 09FE78 8009F278 27186CE0 */ addiu $t8, %lo(D_80126CE0) # addiu $t8, $t8, 0x6ce0 -/* 09FE7C 8009F27C 3C10800E */ lui $s0, %hi(D_800E25C4) # $s0, 0x800e -/* 09FE80 8009F280 3C098012 */ lui $t1, %hi(D_80126CF0) # $t1, 0x8012 -/* 09FE84 8009F284 3C058012 */ lui $a1, %hi(D_80126CDC) # $a1, 0x8012 -/* 09FE88 8009F288 C42F86A8 */ lwc1 $f15, %lo(D_800E86A8)($at) -/* 09FE8C 8009F28C C42E86AC */ lwc1 $f14, %lo(D_800E86AC)($at) -/* 09FE90 8009F290 44808000 */ mtc1 $zero, $f16 -/* 09FE94 8009F294 24A56CDC */ addiu $a1, %lo(D_80126CDC) # addiu $a1, $a1, 0x6cdc -/* 09FE98 8009F298 25296CF0 */ addiu $t1, %lo(D_80126CF0) # addiu $t1, $t1, 0x6cf0 -/* 09FE9C 8009F29C 261025C4 */ addiu $s0, %lo(D_800E25C4) # addiu $s0, $s0, 0x25c4 -/* 09FEA0 8009F2A0 AFB8006C */ sw $t8, 0x6c($sp) -/* 09FEA4 8009F2A4 241E0036 */ li $fp, 54 -/* 09FEA8 8009F2A8 2417001C */ li $s7, 28 -/* 09FEAC 8009F2AC 2416000C */ li $s6, 12 -/* 09FEB0 8009F2B0 2415000B */ li $s5, 11 -/* 09FEB4 8009F2B4 2414000F */ li $s4, 15 -/* 09FEB8 8009F2B8 24130004 */ li $s3, 4 -/* 09FEBC 8009F2BC 24120760 */ li $s2, 1888 -/* 09FEC0 8009F2C0 2411000A */ li $s1, 10 -/* 09FEC4 8009F2C4 241F0012 */ li $ra, 18 -/* 09FEC8 8009F2C8 240D0009 */ li $t5, 9 -/* 09FECC 8009F2CC 240B0002 */ li $t3, 2 -/* 09FED0 8009F2D0 240AFFFF */ li $t2, -1 -/* 09FED4 8009F2D4 3408C000 */ li $t0, 49152 -.L8009F2D8: -/* 09FED8 8009F2D8 8FB9006C */ lw $t9, 0x6c($sp) -/* 09FEDC 8009F2DC 3C02800E */ lui $v0, %hi(D_800E1E64) # $v0, 0x800e -/* 09FEE0 8009F2E0 8F2E0000 */ lw $t6, ($t9) -/* 09FEE4 8009F2E4 24421E64 */ addiu $v0, %lo(D_800E1E64) # addiu $v0, $v0, 0x1e64 -/* 09FEE8 8009F2E8 00001825 */ move $v1, $zero -/* 09FEEC 8009F2EC ACAE0000 */ sw $t6, ($a1) -.L8009F2F0: -/* 09FEF0 8009F2F0 8CAF0000 */ lw $t7, ($a1) -/* 09FEF4 8009F2F4 C448000C */ lwc1 $f8, 0xc($v0) -/* 09FEF8 8009F2F8 01E3C021 */ addu $t8, $t7, $v1 -/* 09FEFC 8009F2FC E708000C */ swc1 $f8, 0xc($t8) -/* 09FF00 8009F300 8CB90000 */ lw $t9, ($a1) -/* 09FF04 8009F304 C44A0010 */ lwc1 $f10, 0x10($v0) -/* 09FF08 8009F308 03237021 */ addu $t6, $t9, $v1 -/* 09FF0C 8009F30C E5CA0010 */ swc1 $f10, 0x10($t6) -/* 09FF10 8009F310 8CAF0000 */ lw $t7, ($a1) -/* 09FF14 8009F314 C4440014 */ lwc1 $f4, 0x14($v0) -/* 09FF18 8009F318 01E3C021 */ addu $t8, $t7, $v1 -/* 09FF1C 8009F31C E7040014 */ swc1 $f4, 0x14($t8) -/* 09FF20 8009F320 8CB90000 */ lw $t9, ($a1) -/* 09FF24 8009F324 C4460008 */ lwc1 $f6, 8($v0) -/* 09FF28 8009F328 03237021 */ addu $t6, $t9, $v1 -/* 09FF2C 8009F32C E5C60008 */ swc1 $f6, 8($t6) -/* 09FF30 8009F330 8CB80000 */ lw $t8, ($a1) -/* 09FF34 8009F334 844F0004 */ lh $t7, 4($v0) -/* 09FF38 8009F338 0303C821 */ addu $t9, $t8, $v1 -/* 09FF3C 8009F33C A72F0004 */ sh $t7, 4($t9) -/* 09FF40 8009F340 8CB80000 */ lw $t8, ($a1) -/* 09FF44 8009F344 844E0002 */ lh $t6, 2($v0) -/* 09FF48 8009F348 03037821 */ addu $t7, $t8, $v1 -/* 09FF4C 8009F34C A5EE0002 */ sh $t6, 2($t7) -/* 09FF50 8009F350 8CB80000 */ lw $t8, ($a1) -/* 09FF54 8009F354 84590000 */ lh $t9, ($v0) -/* 09FF58 8009F358 03037021 */ addu $t6, $t8, $v1 -/* 09FF5C 8009F35C A5D90000 */ sh $t9, ($t6) -/* 09FF60 8009F360 8CB80000 */ lw $t8, ($a1) -/* 09FF64 8009F364 844F0006 */ lh $t7, 6($v0) -/* 09FF68 8009F368 0303C821 */ addu $t9, $t8, $v1 -/* 09FF6C 8009F36C A72F0006 */ sh $t7, 6($t9) -/* 09FF70 8009F370 8CB80000 */ lw $t8, ($a1) -/* 09FF74 8009F374 844E0018 */ lh $t6, 0x18($v0) -/* 09FF78 8009F378 03037821 */ addu $t7, $t8, $v1 -/* 09FF7C 8009F37C A5EE0018 */ sh $t6, 0x18($t7) -/* 09FF80 8009F380 8CB80000 */ lw $t8, ($a1) -/* 09FF84 8009F384 8059001A */ lb $t9, 0x1a($v0) -/* 09FF88 8009F388 03037021 */ addu $t6, $t8, $v1 -/* 09FF8C 8009F38C A1D9001A */ sb $t9, 0x1a($t6) -/* 09FF90 8009F390 8CB80000 */ lw $t8, ($a1) -/* 09FF94 8009F394 804F001B */ lb $t7, 0x1b($v0) -/* 09FF98 8009F398 0303C821 */ addu $t9, $t8, $v1 -/* 09FF9C 8009F39C A32F001B */ sb $t7, 0x1b($t9) -/* 09FFA0 8009F3A0 8CB80000 */ lw $t8, ($a1) -/* 09FFA4 8009F3A4 804E001C */ lb $t6, 0x1c($v0) -/* 09FFA8 8009F3A8 03037821 */ addu $t7, $t8, $v1 -/* 09FFAC 8009F3AC A1EE001C */ sb $t6, 0x1c($t7) -/* 09FFB0 8009F3B0 8CB80000 */ lw $t8, ($a1) -/* 09FFB4 8009F3B4 8059001D */ lb $t9, 0x1d($v0) -/* 09FFB8 8009F3B8 24420020 */ addiu $v0, $v0, 0x20 -/* 09FFBC 8009F3BC 03037021 */ addu $t6, $t8, $v1 -/* 09FFC0 8009F3C0 24630020 */ addiu $v1, $v1, 0x20 -/* 09FFC4 8009F3C4 1450FFCA */ bne $v0, $s0, .L8009F2F0 -/* 09FFC8 8009F3C8 A1D9001D */ sb $t9, 0x1d($t6) -/* 09FFCC 8009F3CC 8CB80000 */ lw $t8, ($a1) -/* 09FFD0 8009F3D0 240F0005 */ li $t7, 5 -/* 09FFD4 8009F3D4 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 -/* 09FFD8 8009F3D8 A30F05DC */ sb $t7, 0x5dc($t8) -/* 09FFDC 8009F3DC 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) -/* 09FFE0 8009F3E0 3C014188 */ li $at, 0x41880000 # 17.000000 -/* 09FFE4 8009F3E4 15830084 */ bne $t4, $v1, .L8009F5F8 -/* 09FFE8 8009F3E8 00000000 */ nop -/* 09FFEC 8009F3EC 3C03800E */ lui $v1, 0x800e -/* 09FFF0 8009F3F0 246225C4 */ addiu $v0, $v1, 0x25c4 -/* 09FFF4 8009F3F4 84590000 */ lh $t9, ($v0) -/* 09FFF8 8009F3F8 44810000 */ mtc1 $at, $f0 -/* 09FFFC 8009F3FC 1159003F */ beq $t2, $t9, .L8009F4FC -/* 0A0000 8009F400 3C01800F */ lui $at, %hi(D_800E86B8) # $at, 0x800f -/* 0A0004 8009F404 3C0E800E */ lui $t6, %hi(D_800E25C4) # $t6, 0x800e -/* 0A0008 8009F408 25CE25C4 */ addiu $t6, %lo(D_800E25C4) # addiu $t6, $t6, 0x25c4 -/* 0A000C 8009F40C 85C40000 */ lh $a0, ($t6) -/* 0A0010 8009F410 00000000 */ nop -.L8009F414: -/* 0A0014 8009F414 844F0002 */ lh $t7, 2($v0) -/* 0A0018 8009F418 8CB80000 */ lw $t8, ($a1) -/* 0A001C 8009F41C 448F4000 */ mtc1 $t7, $f8 -/* 0A0020 8009F420 0004C940 */ sll $t9, $a0, 5 -/* 0A0024 8009F424 468042A0 */ cvt.s.w $f10, $f8 -/* 0A0028 8009F428 03197021 */ addu $t6, $t8, $t9 -/* 0A002C 8009F42C E5CA000C */ swc1 $f10, 0xc($t6) -/* 0A0030 8009F430 84580000 */ lh $t8, ($v0) -/* 0A0034 8009F434 8CAF0000 */ lw $t7, ($a1) -/* 0A0038 8009F438 0018C940 */ sll $t9, $t8, 5 -/* 0A003C 8009F43C 01F91821 */ addu $v1, $t7, $t9 -/* 0A0040 8009F440 84780006 */ lh $t8, 6($v1) -/* 0A0044 8009F444 8D2E0000 */ lw $t6, ($t1) -/* 0A0048 8009F448 00187840 */ sll $t7, $t8, 1 -/* 0A004C 8009F44C 01CFC821 */ addu $t9, $t6, $t7 -/* 0A0050 8009F450 87380000 */ lh $t8, ($t9) -/* 0A0054 8009F454 00000000 */ nop -/* 0A0058 8009F458 330EC000 */ andi $t6, $t8, 0xc000 -/* 0A005C 8009F45C 150E0012 */ bne $t0, $t6, .L8009F4A8 -/* 0A0060 8009F460 00000000 */ nop -/* 0A0064 8009F464 14E00008 */ bnez $a3, .L8009F488 -/* 0A0068 8009F468 00000000 */ nop -/* 0A006C 8009F46C 844F0004 */ lh $t7, 4($v0) -/* 0A0070 8009F470 00000000 */ nop -/* 0A0074 8009F474 448F2000 */ mtc1 $t7, $f4 -/* 0A0078 8009F478 00000000 */ nop -/* 0A007C 8009F47C 468021A0 */ cvt.s.w $f6, $f4 -/* 0A0080 8009F480 1000001A */ b .L8009F4EC -/* 0A0084 8009F484 E4660010 */ swc1 $f6, 0x10($v1) -.L8009F488: -/* 0A0088 8009F488 84590004 */ lh $t9, 4($v0) -/* 0A008C 8009F48C 00000000 */ nop -/* 0A0090 8009F490 2738006C */ addiu $t8, $t9, 0x6c -/* 0A0094 8009F494 44984000 */ mtc1 $t8, $f8 -/* 0A0098 8009F498 00000000 */ nop -/* 0A009C 8009F49C 468042A0 */ cvt.s.w $f10, $f8 -/* 0A00A0 8009F4A0 10000012 */ b .L8009F4EC -/* 0A00A4 8009F4A4 E46A0010 */ swc1 $f10, 0x10($v1) -.L8009F4A8: -/* 0A00A8 8009F4A8 14E00009 */ bnez $a3, .L8009F4D0 -/* 0A00AC 8009F4AC 00000000 */ nop -/* 0A00B0 8009F4B0 844E0004 */ lh $t6, 4($v0) -/* 0A00B4 8009F4B4 00000000 */ nop -/* 0A00B8 8009F4B8 25CF003C */ addiu $t7, $t6, 0x3c -/* 0A00BC 8009F4BC 448F2000 */ mtc1 $t7, $f4 -/* 0A00C0 8009F4C0 00000000 */ nop -/* 0A00C4 8009F4C4 468021A0 */ cvt.s.w $f6, $f4 -/* 0A00C8 8009F4C8 10000008 */ b .L8009F4EC -/* 0A00CC 8009F4CC E4660010 */ swc1 $f6, 0x10($v1) -.L8009F4D0: -/* 0A00D0 8009F4D0 84590004 */ lh $t9, 4($v0) -/* 0A00D4 8009F4D4 00000000 */ nop -/* 0A00D8 8009F4D8 2738FFD0 */ addiu $t8, $t9, -0x30 -/* 0A00DC 8009F4DC 44984000 */ mtc1 $t8, $f8 -/* 0A00E0 8009F4E0 00000000 */ nop -/* 0A00E4 8009F4E4 468042A0 */ cvt.s.w $f10, $f8 -/* 0A00E8 8009F4E8 E46A0010 */ swc1 $f10, 0x10($v1) -.L8009F4EC: -/* 0A00EC 8009F4EC 84440006 */ lh $a0, 6($v0) -/* 0A00F0 8009F4F0 24420006 */ addiu $v0, $v0, 6 -/* 0A00F4 8009F4F4 1544FFC7 */ bne $t2, $a0, .L8009F414 -/* 0A00F8 8009F4F8 00000000 */ nop -.L8009F4FC: -/* 0A00FC 8009F4FC C42486B8 */ lwc1 $f4, %lo(D_800E86B8)($at) -/* 0A0100 8009F500 8CAE0000 */ lw $t6, ($a1) -/* 0A0104 8009F504 3C014377 */ li $at, 0x43770000 # 247.000000 -/* 0A0108 8009F508 E5C4064C */ swc1 $f4, 0x64c($t6) -/* 0A010C 8009F50C 8CAF0000 */ lw $t7, ($a1) -/* 0A0110 8009F510 44813000 */ mtc1 $at, $f6 -/* 0A0114 8009F514 E5E00650 */ swc1 $f0, 0x650($t7) -/* 0A0118 8009F518 8CB90000 */ lw $t9, ($a1) -/* 0A011C 8009F51C 3C014234 */ li $at, 0x42340000 # 45.000000 -/* 0A0120 8009F520 E726040C */ swc1 $f6, 0x40c($t9) -/* 0A0124 8009F524 8CB80000 */ lw $t8, ($a1) -/* 0A0128 8009F528 44814000 */ mtc1 $at, $f8 -/* 0A012C 8009F52C 3C01800F */ lui $at, %hi(D_800E86BC) # $at, 0x800f -/* 0A0130 8009F530 E7080410 */ swc1 $f8, 0x410($t8) -/* 0A0134 8009F534 8CAE0000 */ lw $t6, ($a1) -/* 0A0138 8009F538 C42A86BC */ lwc1 $f10, %lo(D_800E86BC)($at) -/* 0A013C 8009F53C 3C014244 */ li $at, 0x42440000 # 49.000000 -/* 0A0140 8009F540 E5CA066C */ swc1 $f10, 0x66c($t6) -/* 0A0144 8009F544 8CAF0000 */ lw $t7, ($a1) -/* 0A0148 8009F548 44812000 */ mtc1 $at, $f4 -/* 0A014C 8009F54C 3C0142CE */ li $at, 0x42CE0000 # 103.000000 -/* 0A0150 8009F550 E5E40670 */ swc1 $f4, 0x670($t7) -/* 0A0154 8009F554 8CB90000 */ lw $t9, ($a1) -/* 0A0158 8009F558 44813000 */ mtc1 $at, $f6 -/* 0A015C 8009F55C 3C014244 */ li $at, 0x42440000 # 49.000000 -/* 0A0160 8009F560 E726068C */ swc1 $f6, 0x68c($t9) -/* 0A0164 8009F564 8CB80000 */ lw $t8, ($a1) -/* 0A0168 8009F568 44814000 */ mtc1 $at, $f8 -/* 0A016C 8009F56C 3C014384 */ li $at, 0x43840000 # 264.000000 -/* 0A0170 8009F570 E7080690 */ swc1 $f8, 0x690($t8) -/* 0A0174 8009F574 8CAE0000 */ lw $t6, ($a1) -/* 0A0178 8009F578 44815000 */ mtc1 $at, $f10 -/* 0A017C 8009F57C 3C014248 */ li $at, 0x42480000 # 50.000000 -/* 0A0180 8009F580 E5CA06AC */ swc1 $f10, 0x6ac($t6) -/* 0A0184 8009F584 8CAF0000 */ lw $t7, ($a1) -/* 0A0188 8009F588 44812000 */ mtc1 $at, $f4 -/* 0A018C 8009F58C 3C01800F */ lui $at, %hi(D_800E86C0) # $at, 0x800f -/* 0A0190 8009F590 E5E406B0 */ swc1 $f4, 0x6b0($t7) -/* 0A0194 8009F594 8CB90000 */ lw $t9, ($a1) -/* 0A0198 8009F598 C42686C0 */ lwc1 $f6, %lo(D_800E86C0)($at) -/* 0A019C 8009F59C 3C01424C */ li $at, 0x424C0000 # 51.000000 -/* 0A01A0 8009F5A0 E72606CC */ swc1 $f6, 0x6cc($t9) -/* 0A01A4 8009F5A4 8CB80000 */ lw $t8, ($a1) -/* 0A01A8 8009F5A8 44814000 */ mtc1 $at, $f8 -/* 0A01AC 8009F5AC 3C014389 */ li $at, 0x43890000 # 274.000000 -/* 0A01B0 8009F5B0 E70806D0 */ swc1 $f8, 0x6d0($t8) -/* 0A01B4 8009F5B4 8CAE0000 */ lw $t6, ($a1) -/* 0A01B8 8009F5B8 44815000 */ mtc1 $at, $f10 -/* 0A01BC 8009F5BC 3C01424C */ li $at, 0x424C0000 # 51.000000 -/* 0A01C0 8009F5C0 E5CA06EC */ swc1 $f10, 0x6ec($t6) -/* 0A01C4 8009F5C4 8CAF0000 */ lw $t7, ($a1) -/* 0A01C8 8009F5C8 44812000 */ mtc1 $at, $f4 -/* 0A01CC 8009F5CC 24180003 */ li $t8, 3 -/* 0A01D0 8009F5D0 E5E406F0 */ swc1 $f4, 0x6f0($t7) -/* 0A01D4 8009F5D4 8CB90000 */ lw $t9, ($a1) -/* 0A01D8 8009F5D8 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 -/* 0A01DC 8009F5DC E7200650 */ swc1 $f0, 0x650($t9) -/* 0A01E0 8009F5E0 8CAE0000 */ lw $t6, ($a1) -/* 0A01E4 8009F5E4 00000000 */ nop -/* 0A01E8 8009F5E8 A1D805DC */ sb $t8, 0x5dc($t6) -/* 0A01EC 8009F5EC 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) -/* 0A01F0 8009F5F0 10000072 */ b .L8009F7BC -/* 0A01F4 8009F5F4 00000000 */ nop -.L8009F5F8: -/* 0A01F8 8009F5F8 11630002 */ beq $t3, $v1, .L8009F604 -/* 0A01FC 8009F5FC 24010003 */ li $at, 3 -/* 0A0200 8009F600 1461006E */ bne $v1, $at, .L8009F7BC -.L8009F604: -/* 0A0204 8009F604 3C04800E */ lui $a0, 0x800e -/* 0A0208 8009F608 24822684 */ addiu $v0, $a0, 0x2684 -/* 0A020C 8009F60C 844F0000 */ lh $t7, ($v0) -/* 0A0210 8009F610 3C19800E */ lui $t9, %hi(D_800E2684) # $t9, 0x800e -/* 0A0214 8009F614 114F0069 */ beq $t2, $t7, .L8009F7BC -/* 0A0218 8009F618 27392684 */ addiu $t9, %lo(D_800E2684) # addiu $t9, $t9, 0x2684 -/* 0A021C 8009F61C 87230000 */ lh $v1, ($t9) -/* 0A0220 8009F620 00000000 */ nop -.L8009F624: -/* 0A0224 8009F624 8CB80000 */ lw $t8, ($a1) -/* 0A0228 8009F628 00037140 */ sll $t6, $v1, 5 -/* 0A022C 8009F62C 030E2021 */ addu $a0, $t8, $t6 -/* 0A0230 8009F630 84990006 */ lh $t9, 6($a0) -/* 0A0234 8009F634 8D2F0000 */ lw $t7, ($t1) -/* 0A0238 8009F638 0019C040 */ sll $t8, $t9, 1 -/* 0A023C 8009F63C 01F87021 */ addu $t6, $t7, $t8 -/* 0A0240 8009F640 85D90000 */ lh $t9, ($t6) -/* 0A0244 8009F644 00000000 */ nop -/* 0A0248 8009F648 332FC000 */ andi $t7, $t9, 0xc000 -/* 0A024C 8009F64C 150F002A */ bne $t0, $t7, .L8009F6F8 -/* 0A0250 8009F650 00000000 */ nop -/* 0A0254 8009F654 10E00003 */ beqz $a3, .L8009F664 -/* 0A0258 8009F658 00000000 */ nop -/* 0A025C 8009F65C 14EB0008 */ bne $a3, $t3, .L8009F680 -/* 0A0260 8009F660 00000000 */ nop -.L8009F664: -/* 0A0264 8009F664 84580002 */ lh $t8, 2($v0) -/* 0A0268 8009F668 00000000 */ nop -/* 0A026C 8009F66C 44983000 */ mtc1 $t8, $f6 -/* 0A0270 8009F670 00000000 */ nop -/* 0A0274 8009F674 46803220 */ cvt.s.w $f8, $f6 -/* 0A0278 8009F678 10000008 */ b .L8009F69C -/* 0A027C 8009F67C E488000C */ swc1 $f8, 0xc($a0) -.L8009F680: -/* 0A0280 8009F680 844E0006 */ lh $t6, 6($v0) -/* 0A0284 8009F684 00000000 */ nop -/* 0A0288 8009F688 25D900A0 */ addiu $t9, $t6, 0xa0 -/* 0A028C 8009F68C 44995000 */ mtc1 $t9, $f10 -/* 0A0290 8009F690 00000000 */ nop -/* 0A0294 8009F694 46805120 */ cvt.s.w $f4, $f10 -/* 0A0298 8009F698 E484000C */ swc1 $f4, 0xc($a0) -.L8009F69C: -/* 0A029C 8009F69C 10E00003 */ beqz $a3, .L8009F6AC -/* 0A02A0 8009F6A0 00000000 */ nop -/* 0A02A4 8009F6A4 14EC000A */ bne $a3, $t4, .L8009F6D0 -/* 0A02A8 8009F6A8 00000000 */ nop -.L8009F6AC: -/* 0A02AC 8009F6AC 844F0004 */ lh $t7, 4($v0) -/* 0A02B0 8009F6B0 844E0000 */ lh $t6, ($v0) -/* 0A02B4 8009F6B4 448F3000 */ mtc1 $t7, $f6 -/* 0A02B8 8009F6B8 8CB80000 */ lw $t8, ($a1) -/* 0A02BC 8009F6BC 46803220 */ cvt.s.w $f8, $f6 -/* 0A02C0 8009F6C0 000EC940 */ sll $t9, $t6, 5 -/* 0A02C4 8009F6C4 03197821 */ addu $t7, $t8, $t9 -/* 0A02C8 8009F6C8 10000035 */ b .L8009F7A0 -/* 0A02CC 8009F6CC E5E80010 */ swc1 $f8, 0x10($t7) -.L8009F6D0: -/* 0A02D0 8009F6D0 844E0004 */ lh $t6, 4($v0) -/* 0A02D4 8009F6D4 844F0000 */ lh $t7, ($v0) -/* 0A02D8 8009F6D8 25D8006C */ addiu $t8, $t6, 0x6c -/* 0A02DC 8009F6DC 44985000 */ mtc1 $t8, $f10 -/* 0A02E0 8009F6E0 8CB90000 */ lw $t9, ($a1) -/* 0A02E4 8009F6E4 46805120 */ cvt.s.w $f4, $f10 -/* 0A02E8 8009F6E8 000F7140 */ sll $t6, $t7, 5 -/* 0A02EC 8009F6EC 032EC021 */ addu $t8, $t9, $t6 -/* 0A02F0 8009F6F0 1000002B */ b .L8009F7A0 -/* 0A02F4 8009F6F4 E7040010 */ swc1 $f4, 0x10($t8) -.L8009F6F8: -/* 0A02F8 8009F6F8 10E00003 */ beqz $a3, .L8009F708 -/* 0A02FC 8009F6FC 00000000 */ nop -/* 0A0300 8009F700 14EB0009 */ bne $a3, $t3, .L8009F728 -/* 0A0304 8009F704 00000000 */ nop -.L8009F708: -/* 0A0308 8009F708 844F0002 */ lh $t7, 2($v0) -/* 0A030C 8009F70C 00000000 */ nop -/* 0A0310 8009F710 25F9FFB0 */ addiu $t9, $t7, -0x50 -/* 0A0314 8009F714 44993000 */ mtc1 $t9, $f6 -/* 0A0318 8009F718 00000000 */ nop -/* 0A031C 8009F71C 46803220 */ cvt.s.w $f8, $f6 -/* 0A0320 8009F720 10000008 */ b .L8009F744 -/* 0A0324 8009F724 E488000C */ swc1 $f8, 0xc($a0) -.L8009F728: -/* 0A0328 8009F728 844E0006 */ lh $t6, 6($v0) -/* 0A032C 8009F72C 00000000 */ nop -/* 0A0330 8009F730 25D80050 */ addiu $t8, $t6, 0x50 -/* 0A0334 8009F734 44985000 */ mtc1 $t8, $f10 -/* 0A0338 8009F738 00000000 */ nop -/* 0A033C 8009F73C 46805120 */ cvt.s.w $f4, $f10 -/* 0A0340 8009F740 E484000C */ swc1 $f4, 0xc($a0) -.L8009F744: -/* 0A0344 8009F744 10E00003 */ beqz $a3, .L8009F754 -/* 0A0348 8009F748 00000000 */ nop -/* 0A034C 8009F74C 14EC000B */ bne $a3, $t4, .L8009F77C -/* 0A0350 8009F750 00000000 */ nop -.L8009F754: -/* 0A0354 8009F754 844F0004 */ lh $t7, 4($v0) -/* 0A0358 8009F758 84580000 */ lh $t8, ($v0) -/* 0A035C 8009F75C 25F9003C */ addiu $t9, $t7, 0x3c -/* 0A0360 8009F760 44993000 */ mtc1 $t9, $f6 -/* 0A0364 8009F764 8CAE0000 */ lw $t6, ($a1) -/* 0A0368 8009F768 46803220 */ cvt.s.w $f8, $f6 -/* 0A036C 8009F76C 00187940 */ sll $t7, $t8, 5 -/* 0A0370 8009F770 01CFC821 */ addu $t9, $t6, $t7 -/* 0A0374 8009F774 1000000A */ b .L8009F7A0 -/* 0A0378 8009F778 E7280010 */ swc1 $f8, 0x10($t9) -.L8009F77C: -/* 0A037C 8009F77C 84580004 */ lh $t8, 4($v0) -/* 0A0380 8009F780 84590000 */ lh $t9, ($v0) -/* 0A0384 8009F784 270EFFD0 */ addiu $t6, $t8, -0x30 -/* 0A0388 8009F788 448E5000 */ mtc1 $t6, $f10 -/* 0A038C 8009F78C 8CAF0000 */ lw $t7, ($a1) -/* 0A0390 8009F790 46805120 */ cvt.s.w $f4, $f10 -/* 0A0394 8009F794 0019C140 */ sll $t8, $t9, 5 -/* 0A0398 8009F798 01F87021 */ addu $t6, $t7, $t8 -/* 0A039C 8009F79C E5C40010 */ swc1 $f4, 0x10($t6) -.L8009F7A0: -/* 0A03A0 8009F7A0 84430008 */ lh $v1, 8($v0) -/* 0A03A4 8009F7A4 24420008 */ addiu $v0, $v0, 8 -/* 0A03A8 8009F7A8 1543FF9E */ bne $t2, $v1, .L8009F624 -/* 0A03AC 8009F7AC 00000000 */ nop -/* 0A03B0 8009F7B0 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 -/* 0A03B4 8009F7B4 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) -/* 0A03B8 8009F7B8 00000000 */ nop -.L8009F7BC: -/* 0A03BC 8009F7BC 10600046 */ beqz $v1, .L8009F8D8 -/* 0A03C0 8009F7C0 00000000 */ nop -/* 0A03C4 8009F7C4 00001825 */ move $v1, $zero -.L8009F7C8: -/* 0A03C8 8009F7C8 8CB90000 */ lw $t9, ($a1) -/* 0A03CC 8009F7CC 00000000 */ nop -/* 0A03D0 8009F7D0 03232021 */ addu $a0, $t9, $v1 -/* 0A03D4 8009F7D4 84820006 */ lh $v0, 6($a0) -/* 0A03D8 8009F7D8 00000000 */ nop -/* 0A03DC 8009F7DC 15A20003 */ bne $t5, $v0, .L8009F7EC -/* 0A03E0 8009F7E0 00000000 */ nop -/* 0A03E4 8009F7E4 10000036 */ b .L8009F8C0 -/* 0A03E8 8009F7E8 A4910006 */ sh $s1, 6($a0) -.L8009F7EC: -/* 0A03EC 8009F7EC 16620003 */ bne $s3, $v0, .L8009F7FC -/* 0A03F0 8009F7F0 00000000 */ nop -/* 0A03F4 8009F7F4 10000032 */ b .L8009F8C0 -/* 0A03F8 8009F7F8 A4940006 */ sh $s4, 6($a0) -.L8009F7FC: -/* 0A03FC 8009F7FC 16A20003 */ bne $s5, $v0, .L8009F80C -/* 0A0400 8009F800 00000000 */ nop -/* 0A0404 8009F804 1000002E */ b .L8009F8C0 -/* 0A0408 8009F808 A4960006 */ sh $s6, 6($a0) -.L8009F80C: -/* 0A040C 8009F80C 17E20003 */ bne $ra, $v0, .L8009F81C -/* 0A0410 8009F810 00000000 */ nop -/* 0A0414 8009F814 1000002A */ b .L8009F8C0 -/* 0A0418 8009F818 A4970006 */ sh $s7, 6($a0) -.L8009F81C: -/* 0A041C 8009F81C 17C20008 */ bne $fp, $v0, .L8009F840 -/* 0A0420 8009F820 00000000 */ nop -/* 0A0424 8009F824 C4860008 */ lwc1 $f6, 8($a0) -/* 0A0428 8009F828 00000000 */ nop -/* 0A042C 8009F82C 46003221 */ cvt.d.s $f8, $f6 -/* 0A0430 8009F830 462E4282 */ mul.d $f10, $f8, $f14 -/* 0A0434 8009F834 46205120 */ cvt.s.d $f4, $f10 -/* 0A0438 8009F838 10000021 */ b .L8009F8C0 -/* 0A043C 8009F83C E4840008 */ swc1 $f4, 8($a0) -.L8009F840: -/* 0A0440 8009F840 1060001F */ beqz $v1, .L8009F8C0 -/* 0A0444 8009F844 24010020 */ li $at, 32 -/* 0A0448 8009F848 1061001D */ beq $v1, $at, .L8009F8C0 -/* 0A044C 8009F84C 24010040 */ li $at, 64 -/* 0A0450 8009F850 1061001B */ beq $v1, $at, .L8009F8C0 -/* 0A0454 8009F854 240104A0 */ li $at, 1184 -/* 0A0458 8009F858 10610019 */ beq $v1, $at, .L8009F8C0 -/* 0A045C 8009F85C 240105E0 */ li $at, 1504 -/* 0A0460 8009F860 10610017 */ beq $v1, $at, .L8009F8C0 -/* 0A0464 8009F864 24010600 */ li $at, 1536 -/* 0A0468 8009F868 10610015 */ beq $v1, $at, .L8009F8C0 -/* 0A046C 8009F86C 24010060 */ li $at, 96 -/* 0A0470 8009F870 10610013 */ beq $v1, $at, .L8009F8C0 -/* 0A0474 8009F874 24010640 */ li $at, 1600 -/* 0A0478 8009F878 10610011 */ beq $v1, $at, .L8009F8C0 -/* 0A047C 8009F87C 24010660 */ li $at, 1632 -/* 0A0480 8009F880 1061000F */ beq $v1, $at, .L8009F8C0 -/* 0A0484 8009F884 28610680 */ slti $at, $v1, 0x680 -/* 0A0488 8009F888 14200007 */ bnez $at, .L8009F8A8 -/* 0A048C 8009F88C 28610700 */ slti $at, $v1, 0x700 -/* 0A0490 8009F890 10200005 */ beqz $at, .L8009F8A8 -/* 0A0494 8009F894 24010380 */ li $at, 896 -/* 0A0498 8009F898 10610003 */ beq $v1, $at, .L8009F8A8 -/* 0A049C 8009F89C 24010120 */ li $at, 288 -/* 0A04A0 8009F8A0 14610007 */ bne $v1, $at, .L8009F8C0 -/* 0A04A4 8009F8A4 00000000 */ nop -.L8009F8A8: -/* 0A04A8 8009F8A8 C4860008 */ lwc1 $f6, 8($a0) -/* 0A04AC 8009F8AC 00000000 */ nop -/* 0A04B0 8009F8B0 46003221 */ cvt.d.s $f8, $f6 -/* 0A04B4 8009F8B4 46304282 */ mul.d $f10, $f8, $f16 -/* 0A04B8 8009F8B8 46205120 */ cvt.s.d $f4, $f10 -/* 0A04BC 8009F8BC E4840008 */ swc1 $f4, 8($a0) -.L8009F8C0: -/* 0A04C0 8009F8C0 24630020 */ addiu $v1, $v1, 0x20 -/* 0A04C4 8009F8C4 1472FFC0 */ bne $v1, $s2, .L8009F7C8 -/* 0A04C8 8009F8C8 00000000 */ nop -/* 0A04CC 8009F8CC 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 -/* 0A04D0 8009F8D0 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) -/* 0A04D4 8009F8D4 00000000 */ nop -.L8009F8D8: -/* 0A04D8 8009F8D8 8CA40000 */ lw $a0, ($a1) -/* 0A04DC 8009F8DC 28610002 */ slti $at, $v1, 2 -/* 0A04E0 8009F8E0 1420002F */ bnez $at, .L8009F9A0 -/* 0A04E4 8009F8E4 00000000 */ nop -/* 0A04E8 8009F8E8 E49603C8 */ swc1 $f22, 0x3c8($a0) -/* 0A04EC 8009F8EC 8CAF0000 */ lw $t7, ($a1) -/* 0A04F0 8009F8F0 00000000 */ nop -/* 0A04F4 8009F8F4 E5F603E8 */ swc1 $f22, 0x3e8($t7) -/* 0A04F8 8009F8F8 8CB80000 */ lw $t8, ($a1) -/* 0A04FC 8009F8FC 00000000 */ nop -/* 0A0500 8009F900 E71603A8 */ swc1 $f22, 0x3a8($t8) -/* 0A0504 8009F904 8CAE0000 */ lw $t6, ($a1) -/* 0A0508 8009F908 00000000 */ nop -/* 0A050C 8009F90C E5D60188 */ swc1 $f22, 0x188($t6) -/* 0A0510 8009F910 8CB90000 */ lw $t9, ($a1) -/* 0A0514 8009F914 00000000 */ nop -/* 0A0518 8009F918 E73601A8 */ swc1 $f22, 0x1a8($t9) -/* 0A051C 8009F91C 8CAF0000 */ lw $t7, ($a1) -/* 0A0520 8009F920 24190026 */ li $t9, 38 -/* 0A0524 8009F924 E5F60468 */ swc1 $f22, 0x468($t7) -/* 0A0528 8009F928 8CB80000 */ lw $t8, ($a1) -/* 0A052C 8009F92C 00000000 */ nop -/* 0A0530 8009F930 E7160488 */ swc1 $f22, 0x488($t8) -/* 0A0534 8009F934 8CAE0000 */ lw $t6, ($a1) -/* 0A0538 8009F938 2418002B */ li $t8, 43 -/* 0A053C 8009F93C E5D601C8 */ swc1 $f22, 0x1c8($t6) -/* 0A0540 8009F940 8CAF0000 */ lw $t7, ($a1) -/* 0A0544 8009F944 00000000 */ nop -/* 0A0548 8009F948 A5F903C6 */ sh $t9, 0x3c6($t7) -/* 0A054C 8009F94C 8CAE0000 */ lw $t6, ($a1) -/* 0A0550 8009F950 24190029 */ li $t9, 41 -/* 0A0554 8009F954 A5D803E6 */ sh $t8, 0x3e6($t6) -/* 0A0558 8009F958 8CAF0000 */ lw $t7, ($a1) -/* 0A055C 8009F95C 24180025 */ li $t8, 37 -/* 0A0560 8009F960 A5F903A6 */ sh $t9, 0x3a6($t7) -/* 0A0564 8009F964 8CAE0000 */ lw $t6, ($a1) -/* 0A0568 8009F968 24190027 */ li $t9, 39 -/* 0A056C 8009F96C A5D80186 */ sh $t8, 0x186($t6) -/* 0A0570 8009F970 8CAF0000 */ lw $t7, ($a1) -/* 0A0574 8009F974 2418002D */ li $t8, 45 -/* 0A0578 8009F978 A5F901A6 */ sh $t9, 0x1a6($t7) -/* 0A057C 8009F97C 8CAE0000 */ lw $t6, ($a1) -/* 0A0580 8009F980 2419002C */ li $t9, 44 -/* 0A0584 8009F984 A5D80466 */ sh $t8, 0x466($t6) -/* 0A0588 8009F988 8CAF0000 */ lw $t7, ($a1) -/* 0A058C 8009F98C 2418002A */ li $t8, 42 -/* 0A0590 8009F990 A5F90486 */ sh $t9, 0x486($t7) -/* 0A0594 8009F994 8CAE0000 */ lw $t6, ($a1) -/* 0A0598 8009F998 10000005 */ b .L8009F9B0 -/* 0A059C 8009F99C A5D801C6 */ sh $t8, 0x1c6($t6) -.L8009F9A0: -/* 0A05A0 8009F9A0 A08C005D */ sb $t4, 0x5d($a0) -/* 0A05A4 8009F9A4 8CB90000 */ lw $t9, ($a1) -/* 0A05A8 8009F9A8 00000000 */ nop -/* 0A05AC 8009F9AC A32C037D */ sb $t4, 0x37d($t9) -.L8009F9B0: -/* 0A05B0 8009F9B0 0C003936 */ jal func_8000E4D8 -/* 0A05B4 8009F9B4 AFA70090 */ sw $a3, 0x90($sp) -/* 0A05B8 8009F9B8 3C058012 */ lui $a1, %hi(D_80126CDC) # $a1, 0x8012 -/* 0A05BC 8009F9BC 8FA70090 */ lw $a3, 0x90($sp) -/* 0A05C0 8009F9C0 10400043 */ beqz $v0, .L8009FAD0 -/* 0A05C4 8009F9C4 24A56CDC */ addiu $a1, %lo(D_80126CDC) # addiu $a1, $a1, 0x6cdc -/* 0A05C8 8009F9C8 8CA40000 */ lw $a0, ($a1) -/* 0A05CC 8009F9CC 00000000 */ nop -/* 0A05D0 8009F9D0 C48600EC */ lwc1 $f6, 0xec($a0) -/* 0A05D4 8009F9D4 00000000 */ nop -/* 0A05D8 8009F9D8 46183200 */ add.s $f8, $f6, $f24 -/* 0A05DC 8009F9DC E48800EC */ swc1 $f8, 0xec($a0) -/* 0A05E0 8009F9E0 8CA40000 */ lw $a0, ($a1) -/* 0A05E4 8009F9E4 00000000 */ nop -/* 0A05E8 8009F9E8 C48A010C */ lwc1 $f10, 0x10c($a0) -/* 0A05EC 8009F9EC 00000000 */ nop -/* 0A05F0 8009F9F0 46185100 */ add.s $f4, $f10, $f24 -/* 0A05F4 8009F9F4 E484010C */ swc1 $f4, 0x10c($a0) -/* 0A05F8 8009F9F8 8CA40000 */ lw $a0, ($a1) -/* 0A05FC 8009F9FC 00000000 */ nop -/* 0A0600 8009FA00 C486012C */ lwc1 $f6, 0x12c($a0) -/* 0A0604 8009FA04 00000000 */ nop -/* 0A0608 8009FA08 46183200 */ add.s $f8, $f6, $f24 -/* 0A060C 8009FA0C E488012C */ swc1 $f8, 0x12c($a0) -/* 0A0610 8009FA10 8CA40000 */ lw $a0, ($a1) -/* 0A0614 8009FA14 00000000 */ nop -/* 0A0618 8009FA18 C48A038C */ lwc1 $f10, 0x38c($a0) -/* 0A061C 8009FA1C 00000000 */ nop -/* 0A0620 8009FA20 46185100 */ add.s $f4, $f10, $f24 -/* 0A0624 8009FA24 E484038C */ swc1 $f4, 0x38c($a0) -/* 0A0628 8009FA28 8CA40000 */ lw $a0, ($a1) -/* 0A062C 8009FA2C 00000000 */ nop -/* 0A0630 8009FA30 C486036C */ lwc1 $f6, 0x36c($a0) -/* 0A0634 8009FA34 00000000 */ nop -/* 0A0638 8009FA38 46183200 */ add.s $f8, $f6, $f24 -/* 0A063C 8009FA3C E488036C */ swc1 $f8, 0x36c($a0) -/* 0A0640 8009FA40 8CA40000 */ lw $a0, ($a1) -/* 0A0644 8009FA44 00000000 */ nop -/* 0A0648 8009FA48 C48A024C */ lwc1 $f10, 0x24c($a0) -/* 0A064C 8009FA4C 00000000 */ nop -/* 0A0650 8009FA50 46185100 */ add.s $f4, $f10, $f24 -/* 0A0654 8009FA54 E484024C */ swc1 $f4, 0x24c($a0) -/* 0A0658 8009FA58 8CA40000 */ lw $a0, ($a1) -/* 0A065C 8009FA5C 00000000 */ nop -/* 0A0660 8009FA60 C486008C */ lwc1 $f6, 0x8c($a0) -/* 0A0664 8009FA64 00000000 */ nop -/* 0A0668 8009FA68 461C3200 */ add.s $f8, $f6, $f28 -/* 0A066C 8009FA6C E488008C */ swc1 $f8, 0x8c($a0) -/* 0A0670 8009FA70 8CA40000 */ lw $a0, ($a1) -/* 0A0674 8009FA74 00000000 */ nop -/* 0A0678 8009FA78 C48A00AC */ lwc1 $f10, 0xac($a0) -/* 0A067C 8009FA7C 00000000 */ nop -/* 0A0680 8009FA80 461C5100 */ add.s $f4, $f10, $f28 -/* 0A0684 8009FA84 E48400AC */ swc1 $f4, 0xac($a0) -/* 0A0688 8009FA88 8CA40000 */ lw $a0, ($a1) -/* 0A068C 8009FA8C 00000000 */ nop -/* 0A0690 8009FA90 C48600CC */ lwc1 $f6, 0xcc($a0) -/* 0A0694 8009FA94 00000000 */ nop -/* 0A0698 8009FA98 461C3200 */ add.s $f8, $f6, $f28 -/* 0A069C 8009FA9C E48800CC */ swc1 $f8, 0xcc($a0) -/* 0A06A0 8009FAA0 8CA40000 */ lw $a0, ($a1) -/* 0A06A4 8009FAA4 00000000 */ nop -/* 0A06A8 8009FAA8 C48A006C */ lwc1 $f10, 0x6c($a0) -/* 0A06AC 8009FAAC 00000000 */ nop -/* 0A06B0 8009FAB0 461C5100 */ add.s $f4, $f10, $f28 -/* 0A06B4 8009FAB4 E484006C */ swc1 $f4, 0x6c($a0) -/* 0A06B8 8009FAB8 8CA40000 */ lw $a0, ($a1) -/* 0A06BC 8009FABC 00000000 */ nop -/* 0A06C0 8009FAC0 C486020C */ lwc1 $f6, 0x20c($a0) -/* 0A06C4 8009FAC4 00000000 */ nop -/* 0A06C8 8009FAC8 461C3200 */ add.s $f8, $f6, $f28 -/* 0A06CC 8009FACC E488020C */ swc1 $f8, 0x20c($a0) -.L8009FAD0: -/* 0A06D0 8009FAD0 0C01AF66 */ jal func_8006BD98 -/* 0A06D4 8009FAD4 AFA70090 */ sw $a3, 0x90($sp) -/* 0A06D8 8009FAD8 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 0A06DC 8009FADC 44819000 */ mtc1 $at, $f18 -/* 0A06E0 8009FAE0 24010008 */ li $at, 8 -/* 0A06E4 8009FAE4 3C058012 */ lui $a1, %hi(D_80126CDC) # $a1, 0x8012 -/* 0A06E8 8009FAE8 8FA70090 */ lw $a3, 0x90($sp) -/* 0A06EC 8009FAEC 24A56CDC */ addiu $a1, %lo(D_80126CDC) # addiu $a1, $a1, 0x6cdc -/* 0A06F0 8009FAF0 240B0002 */ li $t3, 2 -/* 0A06F4 8009FAF4 10410006 */ beq $v0, $at, .L8009FB10 -/* 0A06F8 8009FAF8 240C0001 */ li $t4, 1 -/* 0A06FC 8009FAFC 24010041 */ li $at, 65 -/* 0A0700 8009FB00 10410046 */ beq $v0, $at, .L8009FC1C -/* 0A0704 8009FB04 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 -/* 0A0708 8009FB08 10000085 */ b .L8009FD20 -/* 0A070C 8009FB0C 00000000 */ nop -.L8009FB10: -/* 0A0710 8009FB10 8CA40000 */ lw $a0, ($a1) -/* 0A0714 8009FB14 00000000 */ nop -/* 0A0718 8009FB18 C48A00EC */ lwc1 $f10, 0xec($a0) -/* 0A071C 8009FB1C 00000000 */ nop -/* 0A0720 8009FB20 461A5100 */ add.s $f4, $f10, $f26 -/* 0A0724 8009FB24 E48400EC */ swc1 $f4, 0xec($a0) -/* 0A0728 8009FB28 8CA40000 */ lw $a0, ($a1) -/* 0A072C 8009FB2C 00000000 */ nop -/* 0A0730 8009FB30 C486010C */ lwc1 $f6, 0x10c($a0) -/* 0A0734 8009FB34 00000000 */ nop -/* 0A0738 8009FB38 461A3200 */ add.s $f8, $f6, $f26 -/* 0A073C 8009FB3C E488010C */ swc1 $f8, 0x10c($a0) -/* 0A0740 8009FB40 8CA40000 */ lw $a0, ($a1) -/* 0A0744 8009FB44 00000000 */ nop -/* 0A0748 8009FB48 C48A012C */ lwc1 $f10, 0x12c($a0) -/* 0A074C 8009FB4C 00000000 */ nop -/* 0A0750 8009FB50 461A5100 */ add.s $f4, $f10, $f26 -/* 0A0754 8009FB54 E484012C */ swc1 $f4, 0x12c($a0) -/* 0A0758 8009FB58 8CA40000 */ lw $a0, ($a1) -/* 0A075C 8009FB5C 00000000 */ nop -/* 0A0760 8009FB60 C486038C */ lwc1 $f6, 0x38c($a0) -/* 0A0764 8009FB64 00000000 */ nop -/* 0A0768 8009FB68 461A3200 */ add.s $f8, $f6, $f26 -/* 0A076C 8009FB6C E488038C */ swc1 $f8, 0x38c($a0) -/* 0A0770 8009FB70 8CA40000 */ lw $a0, ($a1) -/* 0A0774 8009FB74 00000000 */ nop -/* 0A0778 8009FB78 C48A036C */ lwc1 $f10, 0x36c($a0) -/* 0A077C 8009FB7C 00000000 */ nop -/* 0A0780 8009FB80 461A5100 */ add.s $f4, $f10, $f26 -/* 0A0784 8009FB84 E484036C */ swc1 $f4, 0x36c($a0) -/* 0A0788 8009FB88 8CA40000 */ lw $a0, ($a1) -/* 0A078C 8009FB8C 00000000 */ nop -/* 0A0790 8009FB90 C486024C */ lwc1 $f6, 0x24c($a0) -/* 0A0794 8009FB94 00000000 */ nop -/* 0A0798 8009FB98 461A3200 */ add.s $f8, $f6, $f26 -/* 0A079C 8009FB9C E488024C */ swc1 $f8, 0x24c($a0) -/* 0A07A0 8009FBA0 8CA40000 */ lw $a0, ($a1) -/* 0A07A4 8009FBA4 00000000 */ nop -/* 0A07A8 8009FBA8 C48A006C */ lwc1 $f10, 0x6c($a0) -/* 0A07AC 8009FBAC 00000000 */ nop -/* 0A07B0 8009FBB0 46145100 */ add.s $f4, $f10, $f20 -/* 0A07B4 8009FBB4 E484006C */ swc1 $f4, 0x6c($a0) -/* 0A07B8 8009FBB8 8CA40000 */ lw $a0, ($a1) -/* 0A07BC 8009FBBC 00000000 */ nop -/* 0A07C0 8009FBC0 C486008C */ lwc1 $f6, 0x8c($a0) -/* 0A07C4 8009FBC4 00000000 */ nop -/* 0A07C8 8009FBC8 46143200 */ add.s $f8, $f6, $f20 -/* 0A07CC 8009FBCC E488008C */ swc1 $f8, 0x8c($a0) -/* 0A07D0 8009FBD0 8CA40000 */ lw $a0, ($a1) -/* 0A07D4 8009FBD4 00000000 */ nop -/* 0A07D8 8009FBD8 C48A00AC */ lwc1 $f10, 0xac($a0) -/* 0A07DC 8009FBDC 00000000 */ nop -/* 0A07E0 8009FBE0 46145100 */ add.s $f4, $f10, $f20 -/* 0A07E4 8009FBE4 E48400AC */ swc1 $f4, 0xac($a0) -/* 0A07E8 8009FBE8 8CA40000 */ lw $a0, ($a1) -/* 0A07EC 8009FBEC 00000000 */ nop -/* 0A07F0 8009FBF0 C48600CC */ lwc1 $f6, 0xcc($a0) -/* 0A07F4 8009FBF4 00000000 */ nop -/* 0A07F8 8009FBF8 46143200 */ add.s $f8, $f6, $f20 -/* 0A07FC 8009FBFC E48800CC */ swc1 $f8, 0xcc($a0) -/* 0A0800 8009FC00 8CA40000 */ lw $a0, ($a1) -/* 0A0804 8009FC04 00000000 */ nop -/* 0A0808 8009FC08 C48A020C */ lwc1 $f10, 0x20c($a0) -/* 0A080C 8009FC0C 00000000 */ nop -/* 0A0810 8009FC10 46145100 */ add.s $f4, $f10, $f20 -/* 0A0814 8009FC14 10000042 */ b .L8009FD20 -/* 0A0818 8009FC18 E484020C */ swc1 $f4, 0x20c($a0) -.L8009FC1C: -/* 0A081C 8009FC1C 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) -/* 0A0820 8009FC20 3C028012 */ lui $v0, %hi(D_80126D37) # $v0, 0x8012 -/* 0A0824 8009FC24 15E00007 */ bnez $t7, .L8009FC44 -/* 0A0828 8009FC28 00000000 */ nop -/* 0A082C 8009FC2C 8CA40000 */ lw $a0, ($a1) -/* 0A0830 8009FC30 00000000 */ nop -/* 0A0834 8009FC34 C4860410 */ lwc1 $f6, 0x410($a0) -/* 0A0838 8009FC38 00000000 */ nop -/* 0A083C 8009FC3C 46123201 */ sub.s $f8, $f6, $f18 -/* 0A0840 8009FC40 E4880410 */ swc1 $f8, 0x410($a0) -.L8009FC44: -/* 0A0844 8009FC44 90426D37 */ lbu $v0, %lo(D_80126D37)($v0) -/* 0A0848 8009FC48 00000000 */ nop -/* 0A084C 8009FC4C 28410003 */ slti $at, $v0, 3 -/* 0A0850 8009FC50 14200009 */ bnez $at, .L8009FC78 -/* 0A0854 8009FC54 00000000 */ nop -/* 0A0858 8009FC58 10E00003 */ beqz $a3, .L8009FC68 -/* 0A085C 8009FC5C 00000000 */ nop -/* 0A0860 8009FC60 14EB0003 */ bne $a3, $t3, .L8009FC70 -/* 0A0864 8009FC64 00000000 */ nop -.L8009FC68: -/* 0A0868 8009FC68 10000008 */ b .L8009FC8C -/* 0A086C 8009FC6C 02801025 */ move $v0, $s4 -.L8009FC70: -/* 0A0870 8009FC70 10000006 */ b .L8009FC8C -/* 0A0874 8009FC74 2402FFF6 */ li $v0, -10 -.L8009FC78: -/* 0A0878 8009FC78 15820004 */ bne $t4, $v0, .L8009FC8C -/* 0A087C 8009FC7C 00001025 */ move $v0, $zero -/* 0A0880 8009FC80 10000002 */ b .L8009FC8C -/* 0A0884 8009FC84 2402FFF6 */ li $v0, -10 -/* 0A0888 8009FC88 00001025 */ move $v0, $zero -.L8009FC8C: -/* 0A088C 8009FC8C 44825000 */ mtc1 $v0, $f10 -/* 0A0890 8009FC90 8CA40000 */ lw $a0, ($a1) -/* 0A0894 8009FC94 46805020 */ cvt.s.w $f0, $f10 -/* 0A0898 8009FC98 C484036C */ lwc1 $f4, 0x36c($a0) -/* 0A089C 8009FC9C 00000000 */ nop -/* 0A08A0 8009FCA0 46002180 */ add.s $f6, $f4, $f0 -/* 0A08A4 8009FCA4 E486036C */ swc1 $f6, 0x36c($a0) -/* 0A08A8 8009FCA8 8CA40000 */ lw $a0, ($a1) -/* 0A08AC 8009FCAC 00000000 */ nop -/* 0A08B0 8009FCB0 C48800EC */ lwc1 $f8, 0xec($a0) -/* 0A08B4 8009FCB4 00000000 */ nop -/* 0A08B8 8009FCB8 46004280 */ add.s $f10, $f8, $f0 -/* 0A08BC 8009FCBC E48A00EC */ swc1 $f10, 0xec($a0) -/* 0A08C0 8009FCC0 8CA40000 */ lw $a0, ($a1) -/* 0A08C4 8009FCC4 00000000 */ nop -/* 0A08C8 8009FCC8 C484010C */ lwc1 $f4, 0x10c($a0) -/* 0A08CC 8009FCCC 00000000 */ nop -/* 0A08D0 8009FCD0 46002180 */ add.s $f6, $f4, $f0 -/* 0A08D4 8009FCD4 E486010C */ swc1 $f6, 0x10c($a0) -/* 0A08D8 8009FCD8 8CA40000 */ lw $a0, ($a1) -/* 0A08DC 8009FCDC 00000000 */ nop -/* 0A08E0 8009FCE0 C488012C */ lwc1 $f8, 0x12c($a0) -/* 0A08E4 8009FCE4 00000000 */ nop -/* 0A08E8 8009FCE8 46004280 */ add.s $f10, $f8, $f0 -/* 0A08EC 8009FCEC E48A012C */ swc1 $f10, 0x12c($a0) -/* 0A08F0 8009FCF0 8CA40000 */ lw $a0, ($a1) -/* 0A08F4 8009FCF4 00000000 */ nop -/* 0A08F8 8009FCF8 C484038C */ lwc1 $f4, 0x38c($a0) -/* 0A08FC 8009FCFC 00000000 */ nop -/* 0A0900 8009FD00 46002180 */ add.s $f6, $f4, $f0 -/* 0A0904 8009FD04 E486038C */ swc1 $f6, 0x38c($a0) -/* 0A0908 8009FD08 8CA40000 */ lw $a0, ($a1) -/* 0A090C 8009FD0C 00000000 */ nop -/* 0A0910 8009FD10 C488024C */ lwc1 $f8, 0x24c($a0) -/* 0A0914 8009FD14 00000000 */ nop -/* 0A0918 8009FD18 46004280 */ add.s $f10, $f8, $f0 -/* 0A091C 8009FD1C E48A024C */ swc1 $f10, 0x24c($a0) -.L8009FD20: -/* 0A0920 8009FD20 0C008D07 */ jal func_8002341C -/* 0A0924 8009FD24 AFA70090 */ sw $a3, 0x90($sp) -/* 0A0928 8009FD28 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 0A092C 8009FD2C 44811000 */ mtc1 $at, $f2 -/* 0A0930 8009FD30 3C01800F */ lui $at, %hi(D_800E86EC) # $at, 0x800f -/* 0A0934 8009FD34 C42D86E8 */ lwc1 $f13, %lo(D_800E86E8)($at) -/* 0A0938 8009FD38 C42C86EC */ lwc1 $f12, %lo(D_800E86EC)($at) -/* 0A093C 8009FD3C 3C01800F */ lui $at, %hi(D_800E86F4) # $at, 0x800f -/* 0A0940 8009FD40 C42F86F0 */ lwc1 $f15, %lo(D_800E86F0)($at) -/* 0A0944 8009FD44 C42E86F4 */ lwc1 $f14, %lo(D_800E86F4)($at) -/* 0A0948 8009FD48 3C013FE8 */ li $at, 0x3FE80000 # 1.812500 -/* 0A094C 8009FD4C 44818800 */ mtc1 $at, $f17 -/* 0A0950 8009FD50 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 0A0954 8009FD54 44819000 */ mtc1 $at, $f18 -/* 0A0958 8009FD58 3C058012 */ lui $a1, %hi(D_80126CDC) # $a1, 0x8012 -/* 0A095C 8009FD5C 8FA70090 */ lw $a3, 0x90($sp) -/* 0A0960 8009FD60 3C098012 */ lui $t1, %hi(D_80126CF0) # $t1, 0x8012 -/* 0A0964 8009FD64 44808000 */ mtc1 $zero, $f16 -/* 0A0968 8009FD68 25296CF0 */ addiu $t1, %lo(D_80126CF0) # addiu $t1, $t1, 0x6cf0 -/* 0A096C 8009FD6C 24A56CDC */ addiu $a1, %lo(D_80126CDC) # addiu $a1, $a1, 0x6cdc -/* 0A0970 8009FD70 3408C000 */ li $t0, 49152 -/* 0A0974 8009FD74 240AFFFF */ li $t2, -1 -/* 0A0978 8009FD78 240B0002 */ li $t3, 2 -/* 0A097C 8009FD7C 240C0001 */ li $t4, 1 -/* 0A0980 8009FD80 240D0009 */ li $t5, 9 -/* 0A0984 8009FD84 1040001F */ beqz $v0, .L8009FE04 -/* 0A0988 8009FD88 241F0012 */ li $ra, 18 -/* 0A098C 8009FD8C 8CA40000 */ lw $a0, ($a1) -/* 0A0990 8009FD90 00000000 */ nop -/* 0A0994 8009FD94 C484006C */ lwc1 $f4, 0x6c($a0) -/* 0A0998 8009FD98 00000000 */ nop -/* 0A099C 8009FD9C 46142180 */ add.s $f6, $f4, $f20 -/* 0A09A0 8009FDA0 E486006C */ swc1 $f6, 0x6c($a0) -/* 0A09A4 8009FDA4 8CA40000 */ lw $a0, ($a1) -/* 0A09A8 8009FDA8 00000000 */ nop -/* 0A09AC 8009FDAC C488008C */ lwc1 $f8, 0x8c($a0) -/* 0A09B0 8009FDB0 00000000 */ nop -/* 0A09B4 8009FDB4 46144280 */ add.s $f10, $f8, $f20 -/* 0A09B8 8009FDB8 E48A008C */ swc1 $f10, 0x8c($a0) -/* 0A09BC 8009FDBC 8CA40000 */ lw $a0, ($a1) -/* 0A09C0 8009FDC0 00000000 */ nop -/* 0A09C4 8009FDC4 C48400AC */ lwc1 $f4, 0xac($a0) -/* 0A09C8 8009FDC8 00000000 */ nop -/* 0A09CC 8009FDCC 46142180 */ add.s $f6, $f4, $f20 -/* 0A09D0 8009FDD0 E48600AC */ swc1 $f6, 0xac($a0) -/* 0A09D4 8009FDD4 8CA40000 */ lw $a0, ($a1) -/* 0A09D8 8009FDD8 00000000 */ nop -/* 0A09DC 8009FDDC C48800CC */ lwc1 $f8, 0xcc($a0) -/* 0A09E0 8009FDE0 00000000 */ nop -/* 0A09E4 8009FDE4 46144280 */ add.s $f10, $f8, $f20 -/* 0A09E8 8009FDE8 E48A00CC */ swc1 $f10, 0xcc($a0) -/* 0A09EC 8009FDEC 8CA40000 */ lw $a0, ($a1) -/* 0A09F0 8009FDF0 00000000 */ nop -/* 0A09F4 8009FDF4 C484020C */ lwc1 $f4, 0x20c($a0) -/* 0A09F8 8009FDF8 00000000 */ nop -/* 0A09FC 8009FDFC 46142180 */ add.s $f6, $f4, $f20 -/* 0A0A00 8009FE00 E486020C */ swc1 $f6, 0x20c($a0) -.L8009FE04: -/* 0A0A04 8009FE04 3C188000 */ lui $t8, %hi(D_80000300) # $t8, 0x8000 -/* 0A0A08 8009FE08 8F180300 */ lw $t8, %lo(D_80000300)($t8) -/* 0A0A0C 8009FE0C 00000000 */ nop -/* 0A0A10 8009FE10 17000053 */ bnez $t8, .L8009FF60 -/* 0A0A14 8009FE14 00000000 */ nop -/* 0A0A18 8009FE18 8CA40000 */ lw $a0, ($a1) -/* 0A0A1C 8009FE1C 00001825 */ move $v1, $zero -/* 0A0A20 8009FE20 00831021 */ addu $v0, $a0, $v1 -.L8009FE24: -/* 0A0A24 8009FE24 C4480010 */ lwc1 $f8, 0x10($v0) -/* 0A0A28 8009FE28 00000000 */ nop -/* 0A0A2C 8009FE2C 460042A1 */ cvt.d.s $f10, $f8 -/* 0A0A30 8009FE30 462C5102 */ mul.d $f4, $f10, $f12 -/* 0A0A34 8009FE34 462021A0 */ cvt.s.d $f6, $f4 -/* 0A0A38 8009FE38 E4460010 */ swc1 $f6, 0x10($v0) -/* 0A0A3C 8009FE3C 8CAE0000 */ lw $t6, ($a1) -/* 0A0A40 8009FE40 00000000 */ nop -/* 0A0A44 8009FE44 01C31021 */ addu $v0, $t6, $v1 -/* 0A0A48 8009FE48 C448000C */ lwc1 $f8, 0xc($v0) -/* 0A0A4C 8009FE4C 00000000 */ nop -/* 0A0A50 8009FE50 46124281 */ sub.s $f10, $f8, $f18 -/* 0A0A54 8009FE54 E44A000C */ swc1 $f10, 0xc($v0) -/* 0A0A58 8009FE58 8CA40000 */ lw $a0, ($a1) -/* 0A0A5C 8009FE5C 8D390000 */ lw $t9, ($t1) -/* 0A0A60 8009FE60 00831021 */ addu $v0, $a0, $v1 -/* 0A0A64 8009FE64 844F0006 */ lh $t7, 6($v0) -/* 0A0A68 8009FE68 24630020 */ addiu $v1, $v1, 0x20 -/* 0A0A6C 8009FE6C 000FC040 */ sll $t8, $t7, 1 -/* 0A0A70 8009FE70 03387021 */ addu $t6, $t9, $t8 -/* 0A0A74 8009FE74 85CF0000 */ lh $t7, ($t6) -/* 0A0A78 8009FE78 28610760 */ slti $at, $v1, 0x760 -/* 0A0A7C 8009FE7C 31F9C000 */ andi $t9, $t7, 0xc000 -/* 0A0A80 8009FE80 15190007 */ bne $t0, $t9, .L8009FEA0 -/* 0A0A84 8009FE84 00000000 */ nop -/* 0A0A88 8009FE88 C4440010 */ lwc1 $f4, 0x10($v0) -/* 0A0A8C 8009FE8C 00000000 */ nop -/* 0A0A90 8009FE90 46022181 */ sub.s $f6, $f4, $f2 -/* 0A0A94 8009FE94 E4460010 */ swc1 $f6, 0x10($v0) -/* 0A0A98 8009FE98 8CA40000 */ lw $a0, ($a1) -/* 0A0A9C 8009FE9C 00000000 */ nop -.L8009FEA0: -/* 0A0AA0 8009FEA0 1420FFE0 */ bnez $at, .L8009FE24 -/* 0A0AA4 8009FEA4 00831021 */ addu $v0, $a0, $v1 -/* 0A0AA8 8009FEA8 248204E0 */ addiu $v0, $a0, 0x4e0 -/* 0A0AAC 8009FEAC C4480010 */ lwc1 $f8, 0x10($v0) -/* 0A0AB0 8009FEB0 2406002A */ li $a2, 42 -/* 0A0AB4 8009FEB4 46024280 */ add.s $f10, $f8, $f2 -/* 0A0AB8 8009FEB8 00061940 */ sll $v1, $a2, 5 -/* 0A0ABC 8009FEBC E44A0010 */ swc1 $f10, 0x10($v0) -/* 0A0AC0 8009FEC0 8CA20000 */ lw $v0, ($a1) -/* 0A0AC4 8009FEC4 00000000 */ nop -/* 0A0AC8 8009FEC8 C4440510 */ lwc1 $f4, 0x510($v0) -/* 0A0ACC 8009FECC 244204E0 */ addiu $v0, $v0, 0x4e0 -/* 0A0AD0 8009FED0 46022180 */ add.s $f6, $f4, $f2 -/* 0A0AD4 8009FED4 E4460030 */ swc1 $f6, 0x30($v0) -/* 0A0AD8 8009FED8 8CA20000 */ lw $v0, ($a1) -/* 0A0ADC 8009FEDC 00000000 */ nop -/* 0A0AE0 8009FEE0 C4480530 */ lwc1 $f8, 0x530($v0) -/* 0A0AE4 8009FEE4 244204E0 */ addiu $v0, $v0, 0x4e0 -/* 0A0AE8 8009FEE8 46024280 */ add.s $f10, $f8, $f2 -/* 0A0AEC 8009FEEC E44A0050 */ swc1 $f10, 0x50($v0) -/* 0A0AF0 8009FEF0 8CB80000 */ lw $t8, ($a1) -/* 0A0AF4 8009FEF4 00000000 */ nop -/* 0A0AF8 8009FEF8 03031021 */ addu $v0, $t8, $v1 -/* 0A0AFC 8009FEFC C4440010 */ lwc1 $f4, 0x10($v0) -/* 0A0B00 8009FF00 00000000 */ nop -/* 0A0B04 8009FF04 46022180 */ add.s $f6, $f4, $f2 -/* 0A0B08 8009FF08 E4460010 */ swc1 $f6, 0x10($v0) -/* 0A0B0C 8009FF0C 8CAE0000 */ lw $t6, ($a1) -/* 0A0B10 8009FF10 00000000 */ nop -/* 0A0B14 8009FF14 01C31021 */ addu $v0, $t6, $v1 -/* 0A0B18 8009FF18 C4480030 */ lwc1 $f8, 0x30($v0) -/* 0A0B1C 8009FF1C 00000000 */ nop -/* 0A0B20 8009FF20 46024280 */ add.s $f10, $f8, $f2 -/* 0A0B24 8009FF24 E44A0030 */ swc1 $f10, 0x30($v0) -/* 0A0B28 8009FF28 8CAF0000 */ lw $t7, ($a1) -/* 0A0B2C 8009FF2C 00000000 */ nop -/* 0A0B30 8009FF30 01E31021 */ addu $v0, $t7, $v1 -/* 0A0B34 8009FF34 C4440050 */ lwc1 $f4, 0x50($v0) -/* 0A0B38 8009FF38 00000000 */ nop -/* 0A0B3C 8009FF3C 46022180 */ add.s $f6, $f4, $f2 -/* 0A0B40 8009FF40 E4460050 */ swc1 $f6, 0x50($v0) -/* 0A0B44 8009FF44 8CB90000 */ lw $t9, ($a1) -/* 0A0B48 8009FF48 00000000 */ nop -/* 0A0B4C 8009FF4C 03231021 */ addu $v0, $t9, $v1 -/* 0A0B50 8009FF50 C4480070 */ lwc1 $f8, 0x70($v0) -/* 0A0B54 8009FF54 00000000 */ nop -/* 0A0B58 8009FF58 46024280 */ add.s $f10, $f8, $f2 -/* 0A0B5C 8009FF5C E44A0070 */ swc1 $f10, 0x70($v0) -.L8009FF60: -/* 0A0B60 8009FF60 8CB80000 */ lw $t8, ($a1) -/* 0A0B64 8009FF64 24E70001 */ addiu $a3, $a3, 1 -/* 0A0B68 8009FF68 E7160268 */ swc1 $f22, 0x268($t8) -/* 0A0B6C 8009FF6C 8CAE0000 */ lw $t6, ($a1) -/* 0A0B70 8009FF70 00000000 */ nop -/* 0A0B74 8009FF74 A5DF0286 */ sh $ra, 0x286($t6) -/* 0A0B78 8009FF78 8CAF0000 */ lw $t7, ($a1) -/* 0A0B7C 8009FF7C 00000000 */ nop -/* 0A0B80 8009FF80 A5ED02A6 */ sh $t5, 0x2a6($t7) -/* 0A0B84 8009FF84 8CB90000 */ lw $t9, ($a1) -/* 0A0B88 8009FF88 00000000 */ nop -/* 0A0B8C 8009FF8C A72D02C6 */ sh $t5, 0x2c6($t9) -/* 0A0B90 8009FF90 8FB8006C */ lw $t8, 0x6c($sp) -/* 0A0B94 8009FF94 8FAF008C */ lw $t7, 0x8c($sp) -/* 0A0B98 8009FF98 270E0004 */ addiu $t6, $t8, 4 -/* 0A0B9C 8009FF9C 14EFFCCE */ bne $a3, $t7, .L8009F2D8 -/* 0A0BA0 8009FFA0 AFAE006C */ sw $t6, 0x6c($sp) -.L8009FFA4: -/* 0A0BA4 8009FFA4 0C01AF66 */ jal func_8006BD98 -/* 0A0BA8 8009FFA8 00000000 */ nop -/* 0A0BAC 8009FFAC 30590040 */ andi $t9, $v0, 0x40 -/* 0A0BB0 8009FFB0 13200008 */ beqz $t9, .L8009FFD4 -/* 0A0BB4 8009FFB4 3C02800E */ lui $v0, 0x800e -/* 0A0BB8 8009FFB8 3C02800E */ lui $v0, %hi(D_800E27A4) # $v0, 0x800e -/* 0A0BBC 8009FFBC 244227A4 */ addiu $v0, %lo(D_800E27A4) # addiu $v0, $v0, 0x27a4 -/* 0A0BC0 8009FFC0 80580001 */ lb $t8, 1($v0) -/* 0A0BC4 8009FFC4 3C01800E */ lui $at, %hi(D_800E27A8) # $at, 0x800e -/* 0A0BC8 8009FFC8 A03827A8 */ sb $t8, %lo(D_800E27A8)($at) -/* 0A0BCC 8009FFCC 10000005 */ b .L8009FFE4 -/* 0A0BD0 8009FFD0 A0400001 */ sb $zero, 1($v0) -.L8009FFD4: -/* 0A0BD4 8009FFD4 3C0E800E */ lui $t6, %hi(D_800E27A8) # $t6, 0x800e -/* 0A0BD8 8009FFD8 81CE27A8 */ lb $t6, %lo(D_800E27A8)($t6) -/* 0A0BDC 8009FFDC 244227A4 */ addiu $v0, $v0, 0x27a4 -/* 0A0BE0 8009FFE0 A04E0001 */ sb $t6, 1($v0) -.L8009FFE4: -/* 0A0BE4 8009FFE4 8FBF0064 */ lw $ra, 0x64($sp) -/* 0A0BE8 8009FFE8 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 0A0BEC 8009FFEC C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 0A0BF0 8009FFF0 C7B70020 */ lwc1 $f23, 0x20($sp) -/* 0A0BF4 8009FFF4 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 0A0BF8 8009FFF8 C7B90028 */ lwc1 $f25, 0x28($sp) -/* 0A0BFC 8009FFFC C7B8002C */ lwc1 $f24, 0x2c($sp) -/* 0A0C00 800A0000 C7BB0030 */ lwc1 $f27, 0x30($sp) -/* 0A0C04 800A0004 C7BA0034 */ lwc1 $f26, 0x34($sp) -/* 0A0C08 800A0008 C7BD0038 */ lwc1 $f29, 0x38($sp) -/* 0A0C0C 800A000C C7BC003C */ lwc1 $f28, 0x3c($sp) -/* 0A0C10 800A0010 8FB00040 */ lw $s0, 0x40($sp) -/* 0A0C14 800A0014 8FB10044 */ lw $s1, 0x44($sp) -/* 0A0C18 800A0018 8FB20048 */ lw $s2, 0x48($sp) -/* 0A0C1C 800A001C 8FB3004C */ lw $s3, 0x4c($sp) -/* 0A0C20 800A0020 8FB40050 */ lw $s4, 0x50($sp) -/* 0A0C24 800A0024 8FB50054 */ lw $s5, 0x54($sp) -/* 0A0C28 800A0028 8FB60058 */ lw $s6, 0x58($sp) -/* 0A0C2C 800A002C 8FB7005C */ lw $s7, 0x5c($sp) -/* 0A0C30 800A0030 8FBE0060 */ lw $fp, 0x60($sp) -/* 0A0C34 800A0034 03E00008 */ jr $ra -/* 0A0C38 800A0038 27BD0098 */ addiu $sp, $sp, 0x98 - -glabel func_800A003C -/* 0A0C3C 800A003C 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0A0C40 800A0040 3C028012 */ lui $v0, %hi(D_80126CF8) # $v0, 0x8012 -/* 0A0C44 800A0044 8C426CF8 */ lw $v0, %lo(D_80126CF8)($v0) -/* 0A0C48 800A0048 AFB00018 */ sw $s0, 0x18($sp) -/* 0A0C4C 800A004C AFBF002C */ sw $ra, 0x2c($sp) -/* 0A0C50 800A0050 AFB40028 */ sw $s4, 0x28($sp) -/* 0A0C54 800A0054 AFB30024 */ sw $s3, 0x24($sp) -/* 0A0C58 800A0058 AFB20020 */ sw $s2, 0x20($sp) -/* 0A0C5C 800A005C AFB1001C */ sw $s1, 0x1c($sp) -/* 0A0C60 800A0060 18400032 */ blez $v0, .L800A012C -/* 0A0C64 800A0064 00008025 */ move $s0, $zero -/* 0A0C68 800A0068 3C148012 */ lui $s4, %hi(D_80126CF0) # $s4, 0x8012 -/* 0A0C6C 800A006C 3C128012 */ lui $s2, %hi(D_80126CF4) # $s2, 0x8012 -/* 0A0C70 800A0070 26526CF4 */ addiu $s2, %lo(D_80126CF4) # addiu $s2, $s2, 0x6cf4 -/* 0A0C74 800A0074 26946CF0 */ addiu $s4, %lo(D_80126CF0) # addiu $s4, $s4, 0x6cf0 -/* 0A0C78 800A0078 00008825 */ move $s1, $zero -/* 0A0C7C 800A007C 3413C000 */ li $s3, 49152 -.L800A0080: -/* 0A0C80 800A0080 8E4E0000 */ lw $t6, ($s2) -/* 0A0C84 800A0084 00000000 */ nop -/* 0A0C88 800A0088 01D17821 */ addu $t7, $t6, $s1 -/* 0A0C8C 800A008C 8DE40000 */ lw $a0, ($t7) -/* 0A0C90 800A0090 00000000 */ nop -/* 0A0C94 800A0094 10800021 */ beqz $a0, .L800A011C -/* 0A0C98 800A0098 00000000 */ nop -/* 0A0C9C 800A009C 8E980000 */ lw $t8, ($s4) -/* 0A0CA0 800A00A0 0010C840 */ sll $t9, $s0, 1 -/* 0A0CA4 800A00A4 03194021 */ addu $t0, $t8, $t9 -/* 0A0CA8 800A00A8 85020000 */ lh $v0, ($t0) -/* 0A0CAC 800A00AC 00000000 */ nop -/* 0A0CB0 800A00B0 3049C000 */ andi $t1, $v0, 0xc000 -/* 0A0CB4 800A00B4 16690005 */ bne $s3, $t1, .L800A00CC -/* 0A0CB8 800A00B8 304A8000 */ andi $t2, $v0, 0x8000 -/* 0A0CBC 800A00BC 0C01ECAF */ jal func_8007B2BC -/* 0A0CC0 800A00C0 00000000 */ nop -/* 0A0CC4 800A00C4 10000010 */ b .L800A0108 -/* 0A0CC8 800A00C8 8E4C0000 */ lw $t4, ($s2) -.L800A00CC: -/* 0A0CCC 800A00CC 11400005 */ beqz $t2, .L800A00E4 -/* 0A0CD0 800A00D0 304B4000 */ andi $t3, $v0, 0x4000 -/* 0A0CD4 800A00D4 0C01F32C */ jal func_8007CCB0 -/* 0A0CD8 800A00D8 00000000 */ nop -/* 0A0CDC 800A00DC 1000000A */ b .L800A0108 -/* 0A0CE0 800A00E0 8E4C0000 */ lw $t4, ($s2) -.L800A00E4: -/* 0A0CE4 800A00E4 11600005 */ beqz $t3, .L800A00FC -/* 0A0CE8 800A00E8 00000000 */ nop -/* 0A0CEC 800A00EC 0C003FEE */ jal func_8000FFB8 -/* 0A0CF0 800A00F0 00000000 */ nop -/* 0A0CF4 800A00F4 10000004 */ b .L800A0108 -/* 0A0CF8 800A00F8 8E4C0000 */ lw $t4, ($s2) -.L800A00FC: -/* 0A0CFC 800A00FC 0C017FD0 */ jal func_8005FF40 -/* 0A0D00 800A0100 00000000 */ nop -/* 0A0D04 800A0104 8E4C0000 */ lw $t4, ($s2) -.L800A0108: -/* 0A0D08 800A0108 3C028012 */ lui $v0, %hi(D_80126CF8) # $v0, 0x8012 -/* 0A0D0C 800A010C 01916821 */ addu $t5, $t4, $s1 -/* 0A0D10 800A0110 ADA00000 */ sw $zero, ($t5) -/* 0A0D14 800A0114 8C426CF8 */ lw $v0, %lo(D_80126CF8)($v0) -/* 0A0D18 800A0118 00000000 */ nop -.L800A011C: -/* 0A0D1C 800A011C 26100001 */ addiu $s0, $s0, 1 -/* 0A0D20 800A0120 0202082A */ slt $at, $s0, $v0 -/* 0A0D24 800A0124 1420FFD6 */ bnez $at, .L800A0080 -/* 0A0D28 800A0128 26310004 */ addiu $s1, $s1, 4 -.L800A012C: -/* 0A0D2C 800A012C 3C048012 */ lui $a0, %hi(D_80126CE0) # $a0, 0x8012 -/* 0A0D30 800A0130 3C128012 */ lui $s2, %hi(D_80126CF4) # $s2, 0x8012 -/* 0A0D34 800A0134 3C148012 */ lui $s4, %hi(D_80126CF0) # $s4, 0x8012 -/* 0A0D38 800A0138 8C846CE0 */ lw $a0, %lo(D_80126CE0)($a0) -/* 0A0D3C 800A013C 26946CF0 */ addiu $s4, %lo(D_80126CF0) # addiu $s4, $s4, 0x6cf0 -/* 0A0D40 800A0140 0C01C450 */ jal func_80071140 -/* 0A0D44 800A0144 26526CF4 */ addiu $s2, %lo(D_80126CF4) # addiu $s2, $s2, 0x6cf4 -/* 0A0D48 800A0148 8E840000 */ lw $a0, ($s4) -/* 0A0D4C 800A014C 0C01C450 */ jal func_80071140 -/* 0A0D50 800A0150 00000000 */ nop -/* 0A0D54 800A0154 3C018012 */ lui $at, %hi(D_80126CF8) # $at, 0x8012 -/* 0A0D58 800A0158 AC206CF8 */ sw $zero, %lo(D_80126CF8)($at) -/* 0A0D5C 800A015C 8E440000 */ lw $a0, ($s2) -/* 0A0D60 800A0160 0C01C450 */ jal func_80071140 -/* 0A0D64 800A0164 00000000 */ nop -/* 0A0D68 800A0168 0C004013 */ jal func_8001004C -/* 0A0D6C 800A016C 00000000 */ nop -/* 0A0D70 800A0170 8FBF002C */ lw $ra, 0x2c($sp) -/* 0A0D74 800A0174 8FB00018 */ lw $s0, 0x18($sp) -/* 0A0D78 800A0178 8FB1001C */ lw $s1, 0x1c($sp) -/* 0A0D7C 800A017C 8FB20020 */ lw $s2, 0x20($sp) -/* 0A0D80 800A0180 8FB30024 */ lw $s3, 0x24($sp) -/* 0A0D84 800A0184 8FB40028 */ lw $s4, 0x28($sp) -/* 0A0D88 800A0188 03E00008 */ jr $ra -/* 0A0D8C 800A018C 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_800A0190 -/* 0A0D90 800A0190 3C028012 */ lui $v0, %hi(D_80126D34) # $v0, 0x8012 -/* 0A0D94 800A0194 90426D34 */ lbu $v0, %lo(D_80126D34)($v0) -/* 0A0D98 800A0198 03E00008 */ jr $ra -/* 0A0D9C 800A019C 00000000 */ nop - -glabel func_800A01A0 -/* 0A0DA0 800A01A0 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0A0DA4 800A01A4 AFBF0024 */ sw $ra, 0x24($sp) -/* 0A0DA8 800A01A8 AFA40030 */ sw $a0, 0x30($sp) -/* 0A0DAC 800A01AC AFA50034 */ sw $a1, 0x34($sp) -/* 0A0DB0 800A01B0 AFA60038 */ sw $a2, 0x38($sp) -/* 0A0DB4 800A01B4 0C019888 */ jal func_80066220 -/* 0A0DB8 800A01B8 AFA7003C */ sw $a3, 0x3c($sp) -/* 0A0DBC 800A01BC 3C0E8012 */ lui $t6, %hi(D_8012718A) # $t6, 0x8012 -/* 0A0DC0 800A01C0 91CE718A */ lbu $t6, %lo(D_8012718A)($t6) -/* 0A0DC4 800A01C4 3C018012 */ lui $at, %hi(D_80126D08) # $at, 0x8012 -/* 0A0DC8 800A01C8 11C00007 */ beqz $t6, .L800A01E8 -/* 0A0DCC 800A01CC AC226D08 */ sw $v0, %lo(D_80126D08)($at) -/* 0A0DD0 800A01D0 3C0F8012 */ lui $t7, %hi(D_80126D08) # $t7, 0x8012 -/* 0A0DD4 800A01D4 8DEF6D08 */ lw $t7, %lo(D_80126D08)($t7) -/* 0A0DD8 800A01D8 24180001 */ li $t8, 1 -/* 0A0DDC 800A01DC 0C006EC6 */ jal func_8001BB18 -/* 0A0DE0 800A01E0 030F2023 */ subu $a0, $t8, $t7 -/* 0A0DE4 800A01E4 AFA2003C */ sw $v0, 0x3c($sp) -.L800A01E8: -/* 0A0DE8 800A01E8 0C01AF6C */ jal func_8006BDB0 -/* 0A0DEC 800A01EC 00000000 */ nop -/* 0A0DF0 800A01F0 8FB9003C */ lw $t9, 0x3c($sp) -/* 0A0DF4 800A01F4 3C018012 */ lui $at, %hi(D_80126D60) # $at, 0x8012 -/* 0A0DF8 800A01F8 17200009 */ bnez $t9, .L800A0220 -/* 0A0DFC 800A01FC AC226D60 */ sw $v0, %lo(D_80126D60)($at) -/* 0A0E00 800A0200 0C007910 */ jal func_8001E440 -/* 0A0E04 800A0204 00000000 */ nop -/* 0A0E08 800A0208 2401000A */ li $at, 10 -/* 0A0E0C 800A020C 14410005 */ bne $v0, $at, .L800A0224 -/* 0A0E10 800A0210 8FA8003C */ lw $t0, 0x3c($sp) -/* 0A0E14 800A0214 0C006EC6 */ jal func_8001BB18 -/* 0A0E18 800A0218 00002025 */ move $a0, $zero -/* 0A0E1C 800A021C AFA2003C */ sw $v0, 0x3c($sp) -.L800A0220: -/* 0A0E20 800A0220 8FA8003C */ lw $t0, 0x3c($sp) -.L800A0224: -/* 0A0E24 800A0224 3C098012 */ lui $t1, %hi(D_80126D60) # $t1, 0x8012 -/* 0A0E28 800A0228 1100024F */ beqz $t0, .L800A0B68 -/* 0A0E2C 800A022C 8FBF0024 */ lw $ra, 0x24($sp) -/* 0A0E30 800A0230 8D296D60 */ lw $t1, %lo(D_80126D60)($t1) -/* 0A0E34 800A0234 00000000 */ nop -/* 0A0E38 800A0238 912A00BC */ lbu $t2, 0xbc($t1) -/* 0A0E3C 800A023C 00000000 */ nop -/* 0A0E40 800A0240 314B0002 */ andi $t3, $t2, 2 -/* 0A0E44 800A0244 15600248 */ bnez $t3, .L800A0B68 -/* 0A0E48 800A0248 8FBF0024 */ lw $ra, 0x24($sp) -/* 0A0E4C 800A024C 0C01B683 */ jal func_8006DA0C -/* 0A0E50 800A0250 00000000 */ nop -/* 0A0E54 800A0254 24030001 */ li $v1, 1 -/* 0A0E58 800A0258 10430242 */ beq $v0, $v1, .L800A0B64 -/* 0A0E5C 800A025C 3C018012 */ lui $at, %hi(D_80126CFC) # $at, 0x8012 -/* 0A0E60 800A0260 8FAC0030 */ lw $t4, 0x30($sp) -/* 0A0E64 800A0264 8FAE0034 */ lw $t6, 0x34($sp) -/* 0A0E68 800A0268 8D8D0000 */ lw $t5, ($t4) -/* 0A0E6C 800A026C 8FAF0038 */ lw $t7, 0x38($sp) -/* 0A0E70 800A0270 AC2D6CFC */ sw $t5, %lo(D_80126CFC)($at) -/* 0A0E74 800A0274 8DD80000 */ lw $t8, ($t6) -/* 0A0E78 800A0278 3C018012 */ lui $at, %hi(D_80126D00) # $at, 0x8012 -/* 0A0E7C 800A027C AC386D00 */ sw $t8, %lo(D_80126D00)($at) -/* 0A0E80 800A0280 8DF90000 */ lw $t9, ($t7) -/* 0A0E84 800A0284 3C018012 */ lui $at, %hi(D_80126D04) # $at, 0x8012 -/* 0A0E88 800A0288 3C088012 */ lui $t0, %hi(D_80126CD1) # $t0, 0x8012 -/* 0A0E8C 800A028C 81086CD1 */ lb $t0, %lo(D_80126CD1)($t0) -/* 0A0E90 800A0290 AC396D04 */ sw $t9, %lo(D_80126D04)($at) -/* 0A0E94 800A0294 3C018012 */ lui $at, %hi(D_80127180) # $at, 0x8012 -/* 0A0E98 800A0298 11000010 */ beqz $t0, .L800A02DC -/* 0A0E9C 800A029C AC207180 */ sw $zero, %lo(D_80127180)($at) -/* 0A0EA0 800A02A0 3C068012 */ lui $a2, %hi(D_80126CD0) # $a2, 0x8012 -/* 0A0EA4 800A02A4 24C66CD0 */ addiu $a2, %lo(D_80126CD0) # addiu $a2, $a2, 0x6cd0 -/* 0A0EA8 800A02A8 80C90000 */ lb $t1, ($a2) -/* 0A0EAC 800A02AC 8FAA0040 */ lw $t2, 0x40($sp) -/* 0A0EB0 800A02B0 3C028012 */ lui $v0, %hi(D_8012718B) # $v0, 0x8012 -/* 0A0EB4 800A02B4 012A5821 */ addu $t3, $t1, $t2 -/* 0A0EB8 800A02B8 A0CB0000 */ sb $t3, ($a2) -/* 0A0EBC 800A02BC 80CC0000 */ lb $t4, ($a2) -/* 0A0EC0 800A02C0 9042718B */ lbu $v0, %lo(D_8012718B)($v0) -/* 0A0EC4 800A02C4 00000000 */ nop -/* 0A0EC8 800A02C8 004C082A */ slt $at, $v0, $t4 -/* 0A0ECC 800A02CC 1020000F */ beqz $at, .L800A030C -/* 0A0ED0 800A02D0 00000000 */ nop -/* 0A0ED4 800A02D4 1000000D */ b .L800A030C -/* 0A0ED8 800A02D8 A0C20000 */ sb $v0, ($a2) -.L800A02DC: -/* 0A0EDC 800A02DC 3C068012 */ lui $a2, %hi(D_80126CD0) # $a2, 0x8012 -/* 0A0EE0 800A02E0 24C66CD0 */ addiu $a2, %lo(D_80126CD0) # addiu $a2, $a2, 0x6cd0 -/* 0A0EE4 800A02E4 80CD0000 */ lb $t5, ($a2) -/* 0A0EE8 800A02E8 8FAE0040 */ lw $t6, 0x40($sp) -/* 0A0EEC 800A02EC 00000000 */ nop -/* 0A0EF0 800A02F0 01AEC023 */ subu $t8, $t5, $t6 -/* 0A0EF4 800A02F4 A0D80000 */ sb $t8, ($a2) -/* 0A0EF8 800A02F8 80CF0000 */ lb $t7, ($a2) -/* 0A0EFC 800A02FC 00000000 */ nop -/* 0A0F00 800A0300 05E10002 */ bgez $t7, .L800A030C -/* 0A0F04 800A0304 00000000 */ nop -/* 0A0F08 800A0308 A0C00000 */ sb $zero, ($a2) -.L800A030C: -/* 0A0F0C 800A030C 3C198012 */ lui $t9, %hi(D_80126CD2) # $t9, 0x8012 -/* 0A0F10 800A0310 83396CD2 */ lb $t9, %lo(D_80126CD2)($t9) -/* 0A0F14 800A0314 8FA8003C */ lw $t0, 0x3c($sp) -/* 0A0F18 800A0318 17200212 */ bnez $t9, .L800A0B64 -/* 0A0F1C 800A031C 3C098012 */ lui $t1, %hi(D_8012718A) # $t1, 0x8012 -/* 0A0F20 800A0320 9129718A */ lbu $t1, %lo(D_8012718A)($t1) -/* 0A0F24 800A0324 8D020064 */ lw $v0, 0x64($t0) -/* 0A0F28 800A0328 11200006 */ beqz $t1, .L800A0344 -/* 0A0F2C 800A032C 3C0D8012 */ lui $t5, %hi(D_80126D08) # $t5, 0x8012 -/* 0A0F30 800A0330 844A0000 */ lh $t2, ($v0) -/* 0A0F34 800A0334 3C018012 */ lui $at, %hi(D_80126D10) # $at, 0x8012 -/* 0A0F38 800A0338 006A5823 */ subu $t3, $v1, $t2 -/* 0A0F3C 800A033C 10000004 */ b .L800A0350 -/* 0A0F40 800A0340 AC2B6D10 */ sw $t3, %lo(D_80126D10)($at) -.L800A0344: -/* 0A0F44 800A0344 844C0000 */ lh $t4, ($v0) -/* 0A0F48 800A0348 3C018012 */ lui $at, %hi(D_80126D10) # $at, 0x8012 -/* 0A0F4C 800A034C AC2C6D10 */ sw $t4, %lo(D_80126D10)($at) -.L800A0350: -/* 0A0F50 800A0350 8DAD6D08 */ lw $t5, %lo(D_80126D08)($t5) -/* 0A0F54 800A0354 3C188012 */ lui $t8, 0x8012 -/* 0A0F58 800A0358 000D7080 */ sll $t6, $t5, 2 -/* 0A0F5C 800A035C 030EC021 */ addu $t8, $t8, $t6 -/* 0A0F60 800A0360 8F186CE0 */ lw $t8, 0x6ce0($t8) -/* 0A0F64 800A0364 3C018012 */ lui $at, %hi(D_80126CDC) # $at, 0x8012 -/* 0A0F68 800A0368 AFA20028 */ sw $v0, 0x28($sp) -/* 0A0F6C 800A036C 0C007910 */ jal func_8001E440 -/* 0A0F70 800A0370 AC386CDC */ sw $t8, %lo(D_80126CDC)($at) -/* 0A0F74 800A0374 2401000A */ li $at, 10 -/* 0A0F78 800A0378 1041008B */ beq $v0, $at, .L800A05A8 -/* 0A0F7C 800A037C 3C0F8012 */ lui $t7, %hi(D_80126D0C) # $t7, 0x8012 -/* 0A0F80 800A0380 8DEF6D0C */ lw $t7, %lo(D_80126D0C)($t7) -/* 0A0F84 800A0384 3C048012 */ lui $a0, 0x8012 -/* 0A0F88 800A0388 15E0002F */ bnez $t7, .L800A0448 -/* 0A0F8C 800A038C 00000000 */ nop -/* 0A0F90 800A0390 3C048012 */ lui $a0, %hi(D_80126D10) # $a0, 0x8012 -/* 0A0F94 800A0394 8C846D10 */ lw $a0, %lo(D_80126D10)($a0) -/* 0A0F98 800A0398 0C01A955 */ jal func_8006A554 -/* 0A0F9C 800A039C 00000000 */ nop -/* 0A0FA0 800A03A0 30590004 */ andi $t9, $v0, 4 -/* 0A0FA4 800A03A4 13200059 */ beqz $t9, .L800A050C -/* 0A0FA8 800A03A8 00000000 */ nop -/* 0A0FAC 800A03AC 8FA80028 */ lw $t0, 0x28($sp) -/* 0A0FB0 800A03B0 3C0A8012 */ lui $t2, %hi(D_80126D60) # $t2, 0x8012 -/* 0A0FB4 800A03B4 810901D8 */ lb $t1, 0x1d8($t0) -/* 0A0FB8 800A03B8 00000000 */ nop -/* 0A0FBC 800A03BC 15200053 */ bnez $t1, .L800A050C -/* 0A0FC0 800A03C0 00000000 */ nop -/* 0A0FC4 800A03C4 8D4A6D60 */ lw $t2, %lo(D_80126D60)($t2) -/* 0A0FC8 800A03C8 24010003 */ li $at, 3 -/* 0A0FCC 800A03CC 8142004C */ lb $v0, 0x4c($t2) -/* 0A0FD0 800A03D0 3C0B8012 */ lui $t3, %hi(D_80126D34) # $t3, 0x8012 -/* 0A0FD4 800A03D4 10400003 */ beqz $v0, .L800A03E4 -/* 0A0FD8 800A03D8 00000000 */ nop -/* 0A0FDC 800A03DC 1441004B */ bne $v0, $at, .L800A050C -/* 0A0FE0 800A03E0 00000000 */ nop -.L800A03E4: -/* 0A0FE4 800A03E4 916B6D34 */ lbu $t3, %lo(D_80126D34)($t3) -/* 0A0FE8 800A03E8 3C02800E */ lui $v0, %hi(D_800E2790) # $v0, 0x800e -/* 0A0FEC 800A03EC 11600047 */ beqz $t3, .L800A050C -/* 0A0FF0 800A03F0 24422790 */ addiu $v0, %lo(D_800E2790) # addiu $v0, $v0, 0x2790 -/* 0A0FF4 800A03F4 904C0000 */ lbu $t4, ($v0) -/* 0A0FF8 800A03F8 240D0001 */ li $t5, 1 -/* 0A0FFC 800A03FC 01AC7023 */ subu $t6, $t5, $t4 -/* 0A1000 800A0400 31C400FF */ andi $a0, $t6, 0xff -/* 0A1004 800A0404 2484014F */ addiu $a0, $a0, 0x14f -/* 0A1008 800A0408 3098FFFF */ andi $t8, $a0, 0xffff -/* 0A100C 800A040C A04E0000 */ sb $t6, ($v0) -/* 0A1010 800A0410 03002025 */ move $a0, $t8 -/* 0A1014 800A0414 0C000741 */ jal func_80001D04 -/* 0A1018 800A0418 00002825 */ move $a1, $zero -/* 0A101C 800A041C 3C02800E */ lui $v0, %hi(D_800E2790) # $v0, 0x800e -/* 0A1020 800A0420 24422790 */ addiu $v0, %lo(D_800E2790) # addiu $v0, $v0, 0x2790 -/* 0A1024 800A0424 904F0000 */ lbu $t7, ($v0) -/* 0A1028 800A0428 24190078 */ li $t9, 120 -/* 0A102C 800A042C 11E00004 */ beqz $t7, .L800A0440 -/* 0A1030 800A0430 3C01800E */ lui $at, 0x800e -/* 0A1034 800A0434 3C01800E */ lui $at, %hi(D_800E27B8) # $at, 0x800e -/* 0A1038 800A0438 10000034 */ b .L800A050C -/* 0A103C 800A043C A03927B8 */ sb $t9, %lo(D_800E27B8)($at) -.L800A0440: -/* 0A1040 800A0440 10000032 */ b .L800A050C -/* 0A1044 800A0444 A02027B8 */ sb $zero, %lo(D_800E27B8)($at) -.L800A0448: -/* 0A1048 800A0448 8C846D10 */ lw $a0, 0x6d10($a0) -/* 0A104C 800A044C 0C01A955 */ jal func_8006A554 -/* 0A1050 800A0450 00000000 */ nop -/* 0A1054 800A0454 30480004 */ andi $t0, $v0, 4 -/* 0A1058 800A0458 1100002C */ beqz $t0, .L800A050C -/* 0A105C 800A045C 00000000 */ nop -/* 0A1060 800A0460 8FA90028 */ lw $t1, 0x28($sp) -/* 0A1064 800A0464 3C0B8012 */ lui $t3, %hi(D_80126D60) # $t3, 0x8012 -/* 0A1068 800A0468 812A01D8 */ lb $t2, 0x1d8($t1) -/* 0A106C 800A046C 00000000 */ nop -/* 0A1070 800A0470 15400026 */ bnez $t2, .L800A050C -/* 0A1074 800A0474 00000000 */ nop -/* 0A1078 800A0478 8D6B6D60 */ lw $t3, %lo(D_80126D60)($t3) -/* 0A107C 800A047C 3C0E8012 */ lui $t6, %hi(D_80126D34) # $t6, 0x8012 -/* 0A1080 800A0480 816D004C */ lb $t5, 0x4c($t3) -/* 0A1084 800A0484 00000000 */ nop -/* 0A1088 800A0488 31AC0040 */ andi $t4, $t5, 0x40 -/* 0A108C 800A048C 1580001F */ bnez $t4, .L800A050C -/* 0A1090 800A0490 00000000 */ nop -/* 0A1094 800A0494 91CE6D34 */ lbu $t6, %lo(D_80126D34)($t6) -/* 0A1098 800A0498 3C188012 */ lui $t8, %hi(D_80126D0C) # $t8, 0x8012 -/* 0A109C 800A049C 11C0001B */ beqz $t6, .L800A050C -/* 0A10A0 800A04A0 3C19800E */ lui $t9, %hi(D_800E2794) # $t9, 0x800e -/* 0A10A4 800A04A4 8F186D0C */ lw $t8, %lo(D_80126D0C)($t8) -/* 0A10A8 800A04A8 85280000 */ lh $t0, ($t1) -/* 0A10AC 800A04AC 27392794 */ addiu $t9, %lo(D_800E2794) # addiu $t9, $t9, 0x2794 -/* 0A10B0 800A04B0 00187880 */ sll $t7, $t8, 2 -/* 0A10B4 800A04B4 01F91821 */ addu $v1, $t7, $t9 -/* 0A10B8 800A04B8 00681021 */ addu $v0, $v1, $t0 -/* 0A10BC 800A04BC 90440000 */ lbu $a0, ($v0) -/* 0A10C0 800A04C0 00000000 */ nop -/* 0A10C4 800A04C4 28810003 */ slti $at, $a0, 3 -/* 0A10C8 800A04C8 10200003 */ beqz $at, .L800A04D8 -/* 0A10CC 800A04CC 248A0001 */ addiu $t2, $a0, 1 -/* 0A10D0 800A04D0 10000002 */ b .L800A04DC -/* 0A10D4 800A04D4 A04A0000 */ sb $t2, ($v0) -.L800A04D8: -/* 0A10D8 800A04D8 A0400000 */ sb $zero, ($v0) -.L800A04DC: -/* 0A10DC 800A04DC 8FAB0028 */ lw $t3, 0x28($sp) -/* 0A10E0 800A04E0 240F0150 */ li $t7, 336 -/* 0A10E4 800A04E4 856D0000 */ lh $t5, ($t3) -/* 0A10E8 800A04E8 00002825 */ move $a1, $zero -/* 0A10EC 800A04EC 006D6021 */ addu $t4, $v1, $t5 -/* 0A10F0 800A04F0 918E0000 */ lbu $t6, ($t4) -/* 0A10F4 800A04F4 00000000 */ nop -/* 0A10F8 800A04F8 2DD80001 */ sltiu $t8, $t6, 1 -/* 0A10FC 800A04FC 01F82023 */ subu $a0, $t7, $t8 -/* 0A1100 800A0500 3099FFFF */ andi $t9, $a0, 0xffff -/* 0A1104 800A0504 0C000741 */ jal func_80001D04 -/* 0A1108 800A0508 03202025 */ move $a0, $t9 -.L800A050C: -/* 0A110C 800A050C 3C048012 */ lui $a0, %hi(D_80126D10) # $a0, 0x8012 -/* 0A1110 800A0510 8C846D10 */ lw $a0, %lo(D_80126D10)($a0) -/* 0A1114 800A0514 0C01A955 */ jal func_8006A554 -/* 0A1118 800A0518 00000000 */ nop -/* 0A111C 800A051C 3C068012 */ lui $a2, %hi(D_80126CD0) # $a2, 0x8012 -/* 0A1120 800A0520 30490001 */ andi $t1, $v0, 1 -/* 0A1124 800A0524 11200020 */ beqz $t1, .L800A05A8 -/* 0A1128 800A0528 24C66CD0 */ addiu $a2, %lo(D_80126CD0) # addiu $a2, $a2, 0x6cd0 -/* 0A112C 800A052C 8FA80028 */ lw $t0, 0x28($sp) -/* 0A1130 800A0530 3C0B8012 */ lui $t3, %hi(D_80126D34) # $t3, 0x8012 -/* 0A1134 800A0534 810A01D8 */ lb $t2, 0x1d8($t0) -/* 0A1138 800A0538 00000000 */ nop -/* 0A113C 800A053C 1540001A */ bnez $t2, .L800A05A8 -/* 0A1140 800A0540 00000000 */ nop -/* 0A1144 800A0544 916B6D34 */ lbu $t3, %lo(D_80126D34)($t3) -/* 0A1148 800A0548 00000000 */ nop -/* 0A114C 800A054C 11600016 */ beqz $t3, .L800A05A8 -/* 0A1150 800A0550 00000000 */ nop -/* 0A1154 800A0554 80CD0000 */ lb $t5, ($a2) -/* 0A1158 800A0558 3C0C8012 */ lui $t4, %hi(D_80126D0C) # $t4, 0x8012 -/* 0A115C 800A055C 15A00012 */ bnez $t5, .L800A05A8 -/* 0A1160 800A0560 3C0E800E */ lui $t6, %hi(D_800E27A4) # $t6, 0x800e -/* 0A1164 800A0564 8D8C6D0C */ lw $t4, %lo(D_80126D0C)($t4) -/* 0A1168 800A0568 25CE27A4 */ addiu $t6, %lo(D_800E27A4) # addiu $t6, $t6, 0x27a4 -/* 0A116C 800A056C 018E1021 */ addu $v0, $t4, $t6 -/* 0A1170 800A0570 804F0000 */ lb $t7, ($v0) -/* 0A1174 800A0574 24180001 */ li $t8, 1 -/* 0A1178 800A0578 030FC823 */ subu $t9, $t8, $t7 -/* 0A117C 800A057C A0590000 */ sb $t9, ($v0) -/* 0A1180 800A0580 80490000 */ lb $t1, ($v0) -/* 0A1184 800A0584 00002825 */ move $a1, $zero -/* 0A1188 800A0588 15200005 */ bnez $t1, .L800A05A0 -/* 0A118C 800A058C 2404005E */ li $a0, 94 -/* 0A1190 800A0590 0C000741 */ jal func_80001D04 -/* 0A1194 800A0594 2404005D */ li $a0, 93 -/* 0A1198 800A0598 10000003 */ b .L800A05A8 -/* 0A119C 800A059C 00000000 */ nop -.L800A05A0: -/* 0A11A0 800A05A0 0C000741 */ jal func_80001D04 -/* 0A11A4 800A05A4 00002825 */ move $a1, $zero -.L800A05A8: -/* 0A11A8 800A05A8 3C088012 */ lui $t0, %hi(D_80126CD4) # $t0, 0x8012 -/* 0A11AC 800A05AC 81086CD4 */ lb $t0, %lo(D_80126CD4)($t0) -/* 0A11B0 800A05B0 00000000 */ nop -/* 0A11B4 800A05B4 15000024 */ bnez $t0, .L800A0648 -/* 0A11B8 800A05B8 3C0A8012 */ lui $t2, %hi(D_80126D60) # $t2, 0x8012 -/* 0A11BC 800A05BC 8D4A6D60 */ lw $t2, %lo(D_80126D60)($t2) -/* 0A11C0 800A05C0 2403007F */ li $v1, 127 -/* 0A11C4 800A05C4 8142004C */ lb $v0, 0x4c($t2) -/* 0A11C8 800A05C8 00000000 */ nop -/* 0A11CC 800A05CC 304B0040 */ andi $t3, $v0, 0x40 -/* 0A11D0 800A05D0 15600006 */ bnez $t3, .L800A05EC -/* 0A11D4 800A05D4 00000000 */ nop -/* 0A11D8 800A05D8 10400004 */ beqz $v0, .L800A05EC -/* 0A11DC 800A05DC 24010003 */ li $at, 3 -/* 0A11E0 800A05E0 10410002 */ beq $v0, $at, .L800A05EC -/* 0A11E4 800A05E4 24010008 */ li $at, 8 -/* 0A11E8 800A05E8 1441000D */ bne $v0, $at, .L800A0620 -.L800A05EC: -/* 0A11EC 800A05EC 3C02800E */ lui $v0, %hi(D_800E2770) # $v0, 0x800e -/* 0A11F0 800A05F0 24422770 */ addiu $v0, %lo(D_800E2770) # addiu $v0, $v0, 0x2770 -/* 0A11F4 800A05F4 A0430002 */ sb $v1, 2($v0) -/* 0A11F8 800A05F8 0C000611 */ jal func_80001844 -/* 0A11FC 800A05FC A0430012 */ sb $v1, 0x12($v0) -/* 0A1200 800A0600 0C0004BA */ jal func_800012E8 -/* 0A1204 800A0604 00000000 */ nop -/* 0A1208 800A0608 0C0002CD */ jal func_80000B34 -/* 0A120C 800A060C 2404001E */ li $a0, 30 -/* 0A1210 800A0610 0C000C63 */ jal func_8000318C -/* 0A1214 800A0614 2404000C */ li $a0, 12 -/* 0A1218 800A0618 10000005 */ b .L800A0630 -/* 0A121C 800A061C 00000000 */ nop -.L800A0620: -/* 0A1220 800A0620 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0A1224 800A0624 44816000 */ mtc1 $at, $f12 -/* 0A1228 800A0628 0C01AF44 */ jal func_8006BD10 -/* 0A122C 800A062C 00000000 */ nop -.L800A0630: -/* 0A1230 800A0630 3C028012 */ lui $v0, %hi(D_80126CD4) # $v0, 0x8012 -/* 0A1234 800A0634 24426CD4 */ addiu $v0, %lo(D_80126CD4) # addiu $v0, $v0, 0x6cd4 -/* 0A1238 800A0638 804D0000 */ lb $t5, ($v0) -/* 0A123C 800A063C 00000000 */ nop -/* 0A1240 800A0640 25AC0001 */ addiu $t4, $t5, 1 -/* 0A1244 800A0644 A04C0000 */ sb $t4, ($v0) -.L800A0648: -/* 0A1248 800A0648 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A124C 800A064C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A1250 800A0650 8C820000 */ lw $v0, ($a0) -/* 0A1254 800A0654 3C18E700 */ lui $t8, 0xe700 -/* 0A1258 800A0658 244E0008 */ addiu $t6, $v0, 8 -/* 0A125C 800A065C AC8E0000 */ sw $t6, ($a0) -/* 0A1260 800A0660 AC400004 */ sw $zero, 4($v0) -/* 0A1264 800A0664 0C01E037 */ jal func_800780DC -/* 0A1268 800A0668 AC580000 */ sw $t8, ($v0) -/* 0A126C 800A066C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A1270 800A0670 0C01E015 */ jal func_80078054 -/* 0A1274 800A0674 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A1278 800A0678 0C01EB8A */ jal func_8007AE28 -/* 0A127C 800A067C 2404FFFF */ li $a0, -1 -/* 0A1280 800A0680 0C01EB83 */ jal func_8007AE0C -/* 0A1284 800A0684 24040002 */ li $a0, 2 -/* 0A1288 800A0688 0C01EFC7 */ jal func_8007BF1C -/* 0A128C 800A068C 00002025 */ move $a0, $zero -/* 0A1290 800A0690 0C019944 */ jal func_80066510 -/* 0A1294 800A0694 00000000 */ nop -/* 0A1298 800A0698 14400066 */ bnez $v0, .L800A0834 -/* 0A129C 800A069C 3C0F8012 */ lui $t7, %hi(D_80126D34) # $t7, 0x8012 -/* 0A12A0 800A06A0 91EF6D34 */ lbu $t7, %lo(D_80126D34)($t7) -/* 0A12A4 800A06A4 8FB90028 */ lw $t9, 0x28($sp) -/* 0A12A8 800A06A8 15E00062 */ bnez $t7, .L800A0834 -/* 0A12AC 800A06AC 00000000 */ nop -/* 0A12B0 800A06B0 87290000 */ lh $t1, ($t9) -/* 0A12B4 800A06B4 3C088012 */ lui $t0, %hi(D_80126D35) # $t0, 0x8012 -/* 0A12B8 800A06B8 1520005E */ bnez $t1, .L800A0834 -/* 0A12BC 800A06BC 00000000 */ nop -/* 0A12C0 800A06C0 91086D35 */ lbu $t0, %lo(D_80126D35)($t0) -/* 0A12C4 800A06C4 3C028012 */ lui $v0, %hi(D_80126D2C) # $v0, 0x8012 -/* 0A12C8 800A06C8 11000039 */ beqz $t0, .L800A07B0 -/* 0A12CC 800A06CC 3C098012 */ lui $t1, %hi(D_80126CD4) # $t1, 0x8012 -/* 0A12D0 800A06D0 24426D2C */ addiu $v0, %lo(D_80126D2C) # addiu $v0, $v0, 0x6d2c -/* 0A12D4 800A06D4 84440000 */ lh $a0, ($v0) -/* 0A12D8 800A06D8 0C01C1F1 */ jal func_800707C4 -/* 0A12DC 800A06DC 00000000 */ nop -/* 0A12E0 800A06E0 3C048012 */ lui $a0, %hi(D_80126D30) # $a0, 0x8012 -/* 0A12E4 800A06E4 24846D30 */ addiu $a0, %lo(D_80126D30) # addiu $a0, $a0, 0x6d30 -/* 0A12E8 800A06E8 C4820000 */ lwc1 $f2, ($a0) -/* 0A12EC 800A06EC 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 0A12F0 800A06F0 46020102 */ mul.s $f4, $f0, $f2 -/* 0A12F4 800A06F4 44813000 */ mtc1 $at, $f6 -/* 0A12F8 800A06F8 3C028012 */ lui $v0, %hi(D_80126D2C) # $v0, 0x8012 -/* 0A12FC 800A06FC 8FAC0040 */ lw $t4, 0x40($sp) -/* 0A1300 800A0700 46062202 */ mul.s $f8, $f4, $f6 -/* 0A1304 800A0704 24426D2C */ addiu $v0, %lo(D_80126D2C) # addiu $v0, $v0, 0x6d2c -/* 0A1308 800A0708 000C72C0 */ sll $t6, $t4, 0xb -/* 0A130C 800A070C 444AF800 */ cfc1 $t2, $31 -/* 0A1310 800A0710 00000000 */ nop -/* 0A1314 800A0714 35410003 */ ori $at, $t2, 3 -/* 0A1318 800A0718 38210002 */ xori $at, $at, 2 -/* 0A131C 800A071C 44C1F800 */ ctc1 $at, $31 -/* 0A1320 800A0720 3C018012 */ lui $at, %hi(D_80126D28) # $at, 0x8012 -/* 0A1324 800A0724 460042A4 */ cvt.w.s $f10, $f8 -/* 0A1328 800A0728 440B5000 */ mfc1 $t3, $f10 -/* 0A132C 800A072C 44CAF800 */ ctc1 $t2, $31 -/* 0A1330 800A0730 AC2B6D28 */ sw $t3, %lo(D_80126D28)($at) -/* 0A1334 800A0734 944D0000 */ lhu $t5, ($v0) -/* 0A1338 800A0738 34018000 */ li $at, 32768 -/* 0A133C 800A073C 01AEC021 */ addu $t8, $t5, $t6 -/* 0A1340 800A0740 3303FFFF */ andi $v1, $t8, 0xffff -/* 0A1344 800A0744 0061082A */ slt $at, $v1, $at -/* 0A1348 800A0748 1420003A */ bnez $at, .L800A0834 -/* 0A134C 800A074C A4580000 */ sh $t8, ($v0) -/* 0A1350 800A0750 24018000 */ li $at, -32768 -/* 0A1354 800A0754 00617821 */ addu $t7, $v1, $at -/* 0A1358 800A0758 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 0A135C 800A075C 44818000 */ mtc1 $at, $f16 -/* 0A1360 800A0760 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 -/* 0A1364 800A0764 46101483 */ div.s $f18, $f2, $f16 -/* 0A1368 800A0768 44812800 */ mtc1 $at, $f5 -/* 0A136C 800A076C 44802000 */ mtc1 $zero, $f4 -/* 0A1370 800A0770 3C038012 */ lui $v1, %hi(D_80126D24) # $v1, 0x8012 -/* 0A1374 800A0774 A44F0000 */ sh $t7, ($v0) -/* 0A1378 800A0778 24636D24 */ addiu $v1, %lo(D_80126D24) # addiu $v1, $v1, 0x6d24 -/* 0A137C 800A077C 3C018012 */ lui $at, %hi(D_80126D34) # $at, 0x8012 -/* 0A1380 800A0780 24190001 */ li $t9, 1 -/* 0A1384 800A0784 E4920000 */ swc1 $f18, ($a0) -/* 0A1388 800A0788 C4860000 */ lwc1 $f6, ($a0) -/* 0A138C 800A078C 00000000 */ nop -/* 0A1390 800A0790 46003221 */ cvt.d.s $f8, $f6 -/* 0A1394 800A0794 4624403E */ c.le.d $f8, $f4 -/* 0A1398 800A0798 00000000 */ nop -/* 0A139C 800A079C 45000025 */ bc1f .L800A0834 -/* 0A13A0 800A07A0 00000000 */ nop -/* 0A13A4 800A07A4 A0396D34 */ sb $t9, %lo(D_80126D34)($at) -/* 0A13A8 800A07A8 10000022 */ b .L800A0834 -/* 0A13AC 800A07AC AC600000 */ sw $zero, ($v1) -.L800A07B0: -/* 0A13B0 800A07B0 81296CD4 */ lb $t1, %lo(D_80126CD4)($t1) -/* 0A13B4 800A07B4 24010001 */ li $at, 1 -/* 0A13B8 800A07B8 15210008 */ bne $t1, $at, .L800A07DC -/* 0A13BC 800A07BC 24040016 */ li $a0, 22 -/* 0A13C0 800A07C0 0C000741 */ jal func_80001D04 -/* 0A13C4 800A07C4 00002825 */ move $a1, $zero -/* 0A13C8 800A07C8 3C088012 */ lui $t0, %hi(D_80126CD4) # $t0, 0x8012 -/* 0A13CC 800A07CC 81086CD4 */ lb $t0, %lo(D_80126CD4)($t0) -/* 0A13D0 800A07D0 3C018012 */ lui $at, %hi(D_80126CD4) # $at, 0x8012 -/* 0A13D4 800A07D4 250A0001 */ addiu $t2, $t0, 1 -/* 0A13D8 800A07D8 A02A6CD4 */ sb $t2, %lo(D_80126CD4)($at) -.L800A07DC: -/* 0A13DC 800A07DC 8FAC0040 */ lw $t4, 0x40($sp) -/* 0A13E0 800A07E0 3C038012 */ lui $v1, %hi(D_80126D24) # $v1, 0x8012 -/* 0A13E4 800A07E4 000C6880 */ sll $t5, $t4, 2 -/* 0A13E8 800A07E8 24636D24 */ addiu $v1, %lo(D_80126D24) # addiu $v1, $v1, 0x6d24 -/* 0A13EC 800A07EC 01AC6823 */ subu $t5, $t5, $t4 -/* 0A13F0 800A07F0 8C6B0000 */ lw $t3, ($v1) -/* 0A13F4 800A07F4 000D6880 */ sll $t5, $t5, 2 -/* 0A13F8 800A07F8 01AC6821 */ addu $t5, $t5, $t4 -/* 0A13FC 800A07FC 016D1023 */ subu $v0, $t3, $t5 -/* 0A1400 800A0800 04410003 */ bgez $v0, .L800A0810 -/* 0A1404 800A0804 AC620000 */ sw $v0, ($v1) -/* 0A1408 800A0808 AC600000 */ sw $zero, ($v1) -/* 0A140C 800A080C 00001025 */ move $v0, $zero -.L800A0810: -/* 0A1410 800A0810 14400008 */ bnez $v0, .L800A0834 -/* 0A1414 800A0814 24180001 */ li $t8, 1 -/* 0A1418 800A0818 3C018012 */ lui $at, %hi(D_80126D35) # $at, 0x8012 -/* 0A141C 800A081C A0386D35 */ sb $t8, %lo(D_80126D35)($at) -/* 0A1420 800A0820 24040017 */ li $a0, 23 -/* 0A1424 800A0824 0C000741 */ jal func_80001D04 -/* 0A1428 800A0828 00002825 */ move $a1, $zero -/* 0A142C 800A082C 3C018012 */ lui $at, %hi(D_80126D28) # $at, 0x8012 -/* 0A1430 800A0830 AC206D28 */ sw $zero, %lo(D_80126D28)($at) -.L800A0834: -/* 0A1434 800A0834 3C058012 */ lui $a1, %hi(D_80126CFC) # $a1, 0x8012 -/* 0A1438 800A0838 24A56CFC */ addiu $a1, %lo(D_80126CFC) # addiu $a1, $a1, 0x6cfc -/* 0A143C 800A083C 8CA20000 */ lw $v0, ($a1) -/* 0A1440 800A0840 3C19FA00 */ lui $t9, 0xfa00 -/* 0A1444 800A0844 244F0008 */ addiu $t7, $v0, 8 -/* 0A1448 800A0848 ACAF0000 */ sw $t7, ($a1) -/* 0A144C 800A084C 2409FFFF */ li $t1, -1 -/* 0A1450 800A0850 AC490004 */ sw $t1, 4($v0) -/* 0A1454 800A0854 AC590000 */ sw $t9, ($v0) -/* 0A1458 800A0858 8FA4003C */ lw $a0, 0x3c($sp) -/* 0A145C 800A085C 0C029E98 */ jal func_800A7A60 -/* 0A1460 800A0860 00000000 */ nop -/* 0A1464 800A0864 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A1468 800A0868 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A146C 800A086C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A1470 800A0870 0C019FCB */ jal func_80067F2C -/* 0A1474 800A0874 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A1478 800A0878 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A147C 800A087C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A1480 800A0880 8C820000 */ lw $v0, ($a0) -/* 0A1484 800A0884 3C0AFB00 */ lui $t2, 0xfb00 -/* 0A1488 800A0888 24480008 */ addiu $t0, $v0, 8 -/* 0A148C 800A088C AC880000 */ sw $t0, ($a0) -/* 0A1490 800A0890 240CFF00 */ li $t4, -256 -/* 0A1494 800A0894 AC4C0004 */ sw $t4, 4($v0) -/* 0A1498 800A0898 0C0044E7 */ jal func_8001139C -/* 0A149C 800A089C AC4A0000 */ sw $t2, ($v0) -/* 0A14A0 800A08A0 00022043 */ sra $a0, $v0, 1 -/* 0A14A4 800A08A4 0C003936 */ jal func_8000E4D8 -/* 0A14A8 800A08A8 AFA4002C */ sw $a0, 0x2c($sp) -/* 0A14AC 800A08AC 8FA4002C */ lw $a0, 0x2c($sp) -/* 0A14B0 800A08B0 10400007 */ beqz $v0, .L800A08D0 -/* 0A14B4 800A08B4 00000000 */ nop -/* 0A14B8 800A08B8 8FA5003C */ lw $a1, 0x3c($sp) -/* 0A14BC 800A08BC 8FA60040 */ lw $a2, 0x40($sp) -/* 0A14C0 800A08C0 0C0289DF */ jal func_800A277C -/* 0A14C4 800A08C4 00000000 */ nop -/* 0A14C8 800A08C8 1000004F */ b .L800A0A08 -/* 0A14CC 800A08CC 8FAB0028 */ lw $t3, 0x28($sp) -.L800A08D0: -/* 0A14D0 800A08D0 0C007910 */ jal func_8001E440 -/* 0A14D4 800A08D4 AFA4002C */ sw $a0, 0x2c($sp) -/* 0A14D8 800A08D8 8FA4002C */ lw $a0, 0x2c($sp) -/* 0A14DC 800A08DC 2401000A */ li $at, 10 -/* 0A14E0 800A08E0 1441000A */ bne $v0, $at, .L800A090C -/* 0A14E4 800A08E4 00000000 */ nop -/* 0A14E8 800A08E8 0C01A142 */ jal func_80068508 -/* 0A14EC 800A08EC 24040001 */ li $a0, 1 -/* 0A14F0 800A08F0 8FA40028 */ lw $a0, 0x28($sp) -/* 0A14F4 800A08F4 0C029C63 */ jal func_800A718C -/* 0A14F8 800A08F8 00000000 */ nop -/* 0A14FC 800A08FC 0C01A142 */ jal func_80068508 -/* 0A1500 800A0900 00002025 */ move $a0, $zero -/* 0A1504 800A0904 10000040 */ b .L800A0A08 -/* 0A1508 800A0908 8FAB0028 */ lw $t3, 0x28($sp) -.L800A090C: -/* 0A150C 800A090C 0C01AF66 */ jal func_8006BD98 -/* 0A1510 800A0910 AFA4002C */ sw $a0, 0x2c($sp) -/* 0A1514 800A0914 8FA4002C */ lw $a0, 0x2c($sp) -/* 0A1518 800A0918 1040000D */ beqz $v0, .L800A0950 -/* 0A151C 800A091C 24010003 */ li $at, 3 -/* 0A1520 800A0920 1041000B */ beq $v0, $at, .L800A0950 -/* 0A1524 800A0924 24010008 */ li $at, 8 -/* 0A1528 800A0928 1041001A */ beq $v0, $at, .L800A0994 -/* 0A152C 800A092C 24010040 */ li $at, 64 -/* 0A1530 800A0930 10410024 */ beq $v0, $at, .L800A09C4 -/* 0A1534 800A0934 24010041 */ li $at, 65 -/* 0A1538 800A0938 1041001C */ beq $v0, $at, .L800A09AC -/* 0A153C 800A093C 24010042 */ li $at, 66 -/* 0A1540 800A0940 10410027 */ beq $v0, $at, .L800A09E0 -/* 0A1544 800A0944 8FA5003C */ lw $a1, 0x3c($sp) -/* 0A1548 800A0948 1000002B */ b .L800A09F8 -/* 0A154C 800A094C 8FA4003C */ lw $a0, 0x3c($sp) -.L800A0950: -/* 0A1550 800A0950 0C008D07 */ jal func_8002341C -/* 0A1554 800A0954 AFA4002C */ sw $a0, 0x2c($sp) -/* 0A1558 800A0958 8FA4002C */ lw $a0, 0x2c($sp) -/* 0A155C 800A095C 10400008 */ beqz $v0, .L800A0980 -/* 0A1560 800A0960 8FA5003C */ lw $a1, 0x3c($sp) -/* 0A1564 800A0964 8FA5003C */ lw $a1, 0x3c($sp) -/* 0A1568 800A0968 8FA60040 */ lw $a2, 0x40($sp) -/* 0A156C 800A096C 0C02898F */ jal func_800A263C -/* 0A1570 800A0970 00000000 */ nop -/* 0A1574 800A0974 10000024 */ b .L800A0A08 -/* 0A1578 800A0978 8FAB0028 */ lw $t3, 0x28($sp) -/* 0A157C 800A097C 8FA5003C */ lw $a1, 0x3c($sp) -.L800A0980: -/* 0A1580 800A0980 8FA60040 */ lw $a2, 0x40($sp) -/* 0A1584 800A0984 0C028370 */ jal func_800A0DC0 -/* 0A1588 800A0988 00000000 */ nop -/* 0A158C 800A098C 1000001E */ b .L800A0A08 -/* 0A1590 800A0990 8FAB0028 */ lw $t3, 0x28($sp) -.L800A0994: -/* 0A1594 800A0994 8FA5003C */ lw $a1, 0x3c($sp) -/* 0A1598 800A0998 8FA60040 */ lw $a2, 0x40($sp) -/* 0A159C 800A099C 0C028963 */ jal func_800A258C -/* 0A15A0 800A09A0 00000000 */ nop -/* 0A15A4 800A09A4 10000018 */ b .L800A0A08 -/* 0A15A8 800A09A8 8FAB0028 */ lw $t3, 0x28($sp) -.L800A09AC: -/* 0A15AC 800A09AC 8FA5003C */ lw $a1, 0x3c($sp) -/* 0A15B0 800A09B0 8FA60040 */ lw $a2, 0x40($sp) -/* 0A15B4 800A09B4 0C028492 */ jal func_800A1248 -/* 0A15B8 800A09B8 00000000 */ nop -/* 0A15BC 800A09BC 10000012 */ b .L800A0A08 -/* 0A15C0 800A09C0 8FAB0028 */ lw $t3, 0x28($sp) -.L800A09C4: -/* 0A15C4 800A09C4 8FA5003C */ lw $a1, 0x3c($sp) -/* 0A15C8 800A09C8 8FA60040 */ lw $a2, 0x40($sp) -/* 0A15CC 800A09CC 0C028701 */ jal func_800A1C04 -/* 0A15D0 800A09D0 00000000 */ nop -/* 0A15D4 800A09D4 1000000C */ b .L800A0A08 -/* 0A15D8 800A09D8 8FAB0028 */ lw $t3, 0x28($sp) -/* 0A15DC 800A09DC 8FA5003C */ lw $a1, 0x3c($sp) -.L800A09E0: -/* 0A15E0 800A09E0 8FA60040 */ lw $a2, 0x40($sp) -/* 0A15E4 800A09E4 0C02850A */ jal func_800A1428 -/* 0A15E8 800A09E8 00000000 */ nop -/* 0A15EC 800A09EC 10000006 */ b .L800A0A08 -/* 0A15F0 800A09F0 8FAB0028 */ lw $t3, 0x28($sp) -/* 0A15F4 800A09F4 8FA4003C */ lw $a0, 0x3c($sp) -.L800A09F8: -/* 0A15F8 800A09F8 8FA50040 */ lw $a1, 0x40($sp) -/* 0A15FC 800A09FC 0C0289B2 */ jal func_800A26C8 -/* 0A1600 800A0A00 00000000 */ nop -/* 0A1604 800A0A04 8FAB0028 */ lw $t3, 0x28($sp) -.L800A0A08: -/* 0A1608 800A0A08 24010001 */ li $at, 1 -/* 0A160C 800A0A0C 816D01D8 */ lb $t5, 0x1d8($t3) -/* 0A1610 800A0A10 00000000 */ nop -/* 0A1614 800A0A14 15A1002C */ bne $t5, $at, .L800A0AC8 -/* 0A1618 800A0A18 00000000 */ nop -/* 0A161C 800A0A1C 0C01A142 */ jal func_80068508 -/* 0A1620 800A0A20 24040001 */ li $a0, 1 -/* 0A1624 800A0A24 0C003936 */ jal func_8000E4D8 -/* 0A1628 800A0A28 00000000 */ nop -/* 0A162C 800A0A2C 10400007 */ beqz $v0, .L800A0A4C -/* 0A1630 800A0A30 00000000 */ nop -/* 0A1634 800A0A34 8FA40028 */ lw $a0, 0x28($sp) -/* 0A1638 800A0A38 8FA50040 */ lw $a1, 0x40($sp) -/* 0A163C 800A0A3C 0C029B8C */ jal func_800A6E30 -/* 0A1640 800A0A40 00000000 */ nop -/* 0A1644 800A0A44 1000001E */ b .L800A0AC0 -/* 0A1648 800A0A48 00000000 */ nop -.L800A0A4C: -/* 0A164C 800A0A4C 0C019884 */ jal func_80066210 -/* 0A1650 800A0A50 00000000 */ nop -/* 0A1654 800A0A54 14400017 */ bnez $v0, .L800A0AB4 -/* 0A1658 800A0A58 8FA40028 */ lw $a0, 0x28($sp) -/* 0A165C 800A0A5C 8FAE0028 */ lw $t6, 0x28($sp) -/* 0A1660 800A0A60 24010001 */ li $at, 1 -/* 0A1664 800A0A64 85D801AC */ lh $t8, 0x1ac($t6) -/* 0A1668 800A0A68 00000000 */ nop -/* 0A166C 800A0A6C 17010011 */ bne $t8, $at, .L800A0AB4 -/* 0A1670 800A0A70 8FA40028 */ lw $a0, 0x28($sp) -/* 0A1674 800A0A74 0C027B20 */ jal func_8009EC80 -/* 0A1678 800A0A78 00000000 */ nop -/* 0A167C 800A0A7C 10400007 */ beqz $v0, .L800A0A9C -/* 0A1680 800A0A80 8FA40028 */ lw $a0, 0x28($sp) -/* 0A1684 800A0A84 0C01AF66 */ jal func_8006BD98 -/* 0A1688 800A0A88 00000000 */ nop -/* 0A168C 800A0A8C 24010008 */ li $at, 8 -/* 0A1690 800A0A90 14410008 */ bne $v0, $at, .L800A0AB4 -/* 0A1694 800A0A94 8FA40028 */ lw $a0, 0x28($sp) -/* 0A1698 800A0A98 8FA40028 */ lw $a0, 0x28($sp) -.L800A0A9C: -/* 0A169C 800A0A9C 8FA50040 */ lw $a1, 0x40($sp) -/* 0A16A0 800A0AA0 0C02925F */ jal func_800A497C -/* 0A16A4 800A0AA4 00000000 */ nop -/* 0A16A8 800A0AA8 10000005 */ b .L800A0AC0 -/* 0A16AC 800A0AAC 00000000 */ nop -/* 0A16B0 800A0AB0 8FA40028 */ lw $a0, 0x28($sp) -.L800A0AB4: -/* 0A16B4 800A0AB4 8FA50040 */ lw $a1, 0x40($sp) -/* 0A16B8 800A0AB8 0C029895 */ jal func_800A6254 -/* 0A16BC 800A0ABC 00000000 */ nop -.L800A0AC0: -/* 0A16C0 800A0AC0 0C01A142 */ jal func_80068508 -/* 0A16C4 800A0AC4 00002025 */ move $a0, $zero -.L800A0AC8: -/* 0A16C8 800A0AC8 3C018012 */ lui $at, %hi(D_80126CD1) # $at, 0x8012 -/* 0A16CC 800A0ACC A0206CD1 */ sb $zero, %lo(D_80126CD1)($at) -/* 0A16D0 800A0AD0 0C01EFC7 */ jal func_8007BF1C -/* 0A16D4 800A0AD4 24040001 */ li $a0, 1 -/* 0A16D8 800A0AD8 3C028012 */ lui $v0, %hi(D_80127180) # $v0, 0x8012 -/* 0A16DC 800A0ADC 8C427180 */ lw $v0, %lo(D_80127180)($v0) -/* 0A16E0 800A0AE0 3C058012 */ lui $a1, %hi(D_80126D80) # $a1, 0x8012 -/* 0A16E4 800A0AE4 10400011 */ beqz $v0, .L800A0B2C -/* 0A16E8 800A0AE8 24A56D80 */ addiu $a1, %lo(D_80126D80) # addiu $a1, $a1, 0x6d80 -/* 0A16EC 800A0AEC 000278C0 */ sll $t7, $v0, 3 -/* 0A16F0 800A0AF0 00AFC821 */ addu $t9, $a1, $t7 -/* 0A16F4 800A0AF4 AF200000 */ sw $zero, ($t9) -/* 0A16F8 800A0AF8 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A16FC 800A0AFC 240900FF */ li $t1, 255 -/* 0A1700 800A0B00 240800FF */ li $t0, 255 -/* 0A1704 800A0B04 240A00FF */ li $t2, 255 -/* 0A1708 800A0B08 240C00FF */ li $t4, 255 -/* 0A170C 800A0B0C AFAC001C */ sw $t4, 0x1c($sp) -/* 0A1710 800A0B10 AFAA0018 */ sw $t2, 0x18($sp) -/* 0A1714 800A0B14 AFA80014 */ sw $t0, 0x14($sp) -/* 0A1718 800A0B18 AFA90010 */ sw $t1, 0x10($sp) -/* 0A171C 800A0B1C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A1720 800A0B20 00003025 */ move $a2, $zero -/* 0A1724 800A0B24 0C01E2AE */ jal func_80078AB8 -/* 0A1728 800A0B28 00003825 */ move $a3, $zero -.L800A0B2C: -/* 0A172C 800A0B2C 3C0B8012 */ lui $t3, %hi(D_80126CFC) # $t3, 0x8012 -/* 0A1730 800A0B30 8D6B6CFC */ lw $t3, %lo(D_80126CFC)($t3) -/* 0A1734 800A0B34 8FAD0030 */ lw $t5, 0x30($sp) -/* 0A1738 800A0B38 3C0E8012 */ lui $t6, %hi(D_80126D00) # $t6, 0x8012 -/* 0A173C 800A0B3C ADAB0000 */ sw $t3, ($t5) -/* 0A1740 800A0B40 8FB80034 */ lw $t8, 0x34($sp) -/* 0A1744 800A0B44 8DCE6D00 */ lw $t6, %lo(D_80126D00)($t6) -/* 0A1748 800A0B48 3C0F8012 */ lui $t7, %hi(D_80126D04) # $t7, 0x8012 -/* 0A174C 800A0B4C AF0E0000 */ sw $t6, ($t8) -/* 0A1750 800A0B50 8FB90038 */ lw $t9, 0x38($sp) -/* 0A1754 800A0B54 8DEF6D04 */ lw $t7, %lo(D_80126D04)($t7) -/* 0A1758 800A0B58 2404FFFF */ li $a0, -1 -/* 0A175C 800A0B5C 0C01EB8A */ jal func_8007AE28 -/* 0A1760 800A0B60 AF2F0000 */ sw $t7, ($t9) -.L800A0B64: -/* 0A1764 800A0B64 8FBF0024 */ lw $ra, 0x24($sp) -.L800A0B68: -/* 0A1768 800A0B68 27BD0030 */ addiu $sp, $sp, 0x30 -/* 0A176C 800A0B6C 03E00008 */ jr $ra -/* 0A1770 800A0B70 00000000 */ nop - -glabel func_800A0B74 -/* 0A1774 800A0B74 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0A1778 800A0B78 AFB10018 */ sw $s1, 0x18($sp) -/* 0A177C 800A0B7C AFB00014 */ sw $s0, 0x14($sp) -/* 0A1780 800A0B80 3C10800E */ lui $s0, %hi(D_800E2770) # $s0, 0x800e -/* 0A1784 800A0B84 3C11800E */ lui $s1, %hi(D_800E2790) # $s1, 0x800e -/* 0A1788 800A0B88 AFBF001C */ sw $ra, 0x1c($sp) -/* 0A178C 800A0B8C 26312790 */ addiu $s1, %lo(D_800E2790) # addiu $s1, $s1, 0x2790 -/* 0A1790 800A0B90 26102770 */ addiu $s0, %lo(D_800E2770) # addiu $s0, $s0, 0x2770 -.L800A0B94: -/* 0A1794 800A0B94 8E040004 */ lw $a0, 4($s0) -/* 0A1798 800A0B98 00000000 */ nop -/* 0A179C 800A0B9C 10800005 */ beqz $a0, .L800A0BB4 -/* 0A17A0 800A0BA0 00000000 */ nop -/* 0A17A4 800A0BA4 0C001223 */ jal func_8000488C -/* 0A17A8 800A0BA8 00000000 */ nop -/* 0A17AC 800A0BAC AE000004 */ sw $zero, 4($s0) -/* 0A17B0 800A0BB0 A2000002 */ sb $zero, 2($s0) -.L800A0BB4: -/* 0A17B4 800A0BB4 26100010 */ addiu $s0, $s0, 0x10 -/* 0A17B8 800A0BB8 1611FFF6 */ bne $s0, $s1, .L800A0B94 -/* 0A17BC 800A0BBC 00000000 */ nop -/* 0A17C0 800A0BC0 8FBF001C */ lw $ra, 0x1c($sp) -/* 0A17C4 800A0BC4 8FB00014 */ lw $s0, 0x14($sp) -/* 0A17C8 800A0BC8 8FB10018 */ lw $s1, 0x18($sp) -/* 0A17CC 800A0BCC 03E00008 */ jr $ra -/* 0A17D0 800A0BD0 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_800A0BD4 -/* 0A17D4 800A0BD4 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0A17D8 800A0BD8 3C038012 */ lui $v1, %hi(D_80126D74) # $v1, 0x8012 -/* 0A17DC 800A0BDC 24636D74 */ addiu $v1, %lo(D_80126D74) # addiu $v1, $v1, 0x6d74 -/* 0A17E0 800A0BE0 8C620000 */ lw $v0, ($v1) -/* 0A17E4 800A0BE4 AFB1001C */ sw $s1, 0x1c($sp) -/* 0A17E8 800A0BE8 00808825 */ move $s1, $a0 -/* 0A17EC 800A0BEC AFBF002C */ sw $ra, 0x2c($sp) -/* 0A17F0 800A0BF0 AFB40028 */ sw $s4, 0x28($sp) -/* 0A17F4 800A0BF4 AFB30024 */ sw $s3, 0x24($sp) -/* 0A17F8 800A0BF8 AFB20020 */ sw $s2, 0x20($sp) -/* 0A17FC 800A0BFC 1840000D */ blez $v0, .L800A0C34 -/* 0A1800 800A0C00 AFB00018 */ sw $s0, 0x18($sp) -/* 0A1804 800A0C04 00447023 */ subu $t6, $v0, $a0 -/* 0A1808 800A0C08 1DC0000A */ bgtz $t6, .L800A0C34 -/* 0A180C 800A0C0C AC6E0000 */ sw $t6, ($v1) -/* 0A1810 800A0C10 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A1814 800A0C14 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -/* 0A1818 800A0C18 8CB80000 */ lw $t8, ($a1) -/* 0A181C 800A0C1C AC600000 */ sw $zero, ($v1) -/* 0A1820 800A0C20 17000004 */ bnez $t8, .L800A0C34 -/* 0A1824 800A0C24 3C048012 */ lui $a0, %hi(D_80126D7C) # $a0, 0x8012 -/* 0A1828 800A0C28 94846D7C */ lhu $a0, %lo(D_80126D7C)($a0) -/* 0A182C 800A0C2C 0C000741 */ jal func_80001D04 -/* 0A1830 800A0C30 00000000 */ nop -.L800A0C34: -/* 0A1834 800A0C34 3C10800E */ lui $s0, %hi(D_800E2770) # $s0, 0x800e -/* 0A1838 800A0C38 3C13800E */ lui $s3, %hi(D_800E2790) # $s3, 0x800e -/* 0A183C 800A0C3C 26732790 */ addiu $s3, %lo(D_800E2790) # addiu $s3, $s3, 0x2790 -/* 0A1840 800A0C40 26102770 */ addiu $s0, %lo(D_800E2770) # addiu $s0, $s0, 0x2770 -/* 0A1844 800A0C44 2414007F */ li $s4, 127 -/* 0A1848 800A0C48 2412007F */ li $s2, 127 -.L800A0C4C: -/* 0A184C 800A0C4C 92060002 */ lbu $a2, 2($s0) -/* 0A1850 800A0C50 00000000 */ nop -/* 0A1854 800A0C54 10C0002C */ beqz $a2, .L800A0D08 -/* 0A1858 800A0C58 00000000 */ nop -/* 0A185C 800A0C5C 8E050004 */ lw $a1, 4($s0) -/* 0A1860 800A0C60 00000000 */ nop -/* 0A1864 800A0C64 14A00007 */ bnez $a1, .L800A0C84 -/* 0A1868 800A0C68 00000000 */ nop -/* 0A186C 800A0C6C 96040000 */ lhu $a0, ($s0) -/* 0A1870 800A0C70 0C000741 */ jal func_80001D04 -/* 0A1874 800A0C74 26050004 */ addiu $a1, $s0, 4 -/* 0A1878 800A0C78 92060002 */ lbu $a2, 2($s0) -/* 0A187C 800A0C7C 8E050004 */ lw $a1, 4($s0) -/* 0A1880 800A0C80 00000000 */ nop -.L800A0C84: -/* 0A1884 800A0C84 96040000 */ lhu $a0, ($s0) -/* 0A1888 800A0C88 0C0007EE */ jal func_80001FB8 -/* 0A188C 800A0C8C 00000000 */ nop -/* 0A1890 800A0C90 82040003 */ lb $a0, 3($s0) -/* 0A1894 800A0C94 00000000 */ nop -/* 0A1898 800A0C98 1880000D */ blez $a0, .L800A0CD0 -/* 0A189C 800A0C9C 00000000 */ nop -/* 0A18A0 800A0CA0 00910019 */ multu $a0, $s1 -/* 0A18A4 800A0CA4 92030002 */ lbu $v1, 2($s0) -/* 0A18A8 800A0CA8 00001012 */ mflo $v0 -/* 0A18AC 800A0CAC 0242C823 */ subu $t9, $s2, $v0 -/* 0A18B0 800A0CB0 0323082A */ slt $at, $t9, $v1 -/* 0A18B4 800A0CB4 14200003 */ bnez $at, .L800A0CC4 -/* 0A18B8 800A0CB8 00624021 */ addu $t0, $v1, $v0 -/* 0A18BC 800A0CBC 10000019 */ b .L800A0D24 -/* 0A18C0 800A0CC0 A2080002 */ sb $t0, 2($s0) -.L800A0CC4: -/* 0A18C4 800A0CC4 A2000003 */ sb $zero, 3($s0) -/* 0A18C8 800A0CC8 10000016 */ b .L800A0D24 -/* 0A18CC 800A0CCC A2140002 */ sb $s4, 2($s0) -.L800A0CD0: -/* 0A18D0 800A0CD0 04810014 */ bgez $a0, .L800A0D24 -/* 0A18D4 800A0CD4 00000000 */ nop -/* 0A18D8 800A0CD8 00910019 */ multu $a0, $s1 -/* 0A18DC 800A0CDC 92030002 */ lbu $v1, 2($s0) -/* 0A18E0 800A0CE0 00001012 */ mflo $v0 -/* 0A18E4 800A0CE4 00024823 */ negu $t1, $v0 -/* 0A18E8 800A0CE8 0123082A */ slt $at, $t1, $v1 -/* 0A18EC 800A0CEC 10200003 */ beqz $at, .L800A0CFC -/* 0A18F0 800A0CF0 00625021 */ addu $t2, $v1, $v0 -/* 0A18F4 800A0CF4 1000000B */ b .L800A0D24 -/* 0A18F8 800A0CF8 A20A0002 */ sb $t2, 2($s0) -.L800A0CFC: -/* 0A18FC 800A0CFC A2000003 */ sb $zero, 3($s0) -/* 0A1900 800A0D00 10000008 */ b .L800A0D24 -/* 0A1904 800A0D04 A2000002 */ sb $zero, 2($s0) -.L800A0D08: -/* 0A1908 800A0D08 8E050004 */ lw $a1, 4($s0) -/* 0A190C 800A0D0C 00000000 */ nop -/* 0A1910 800A0D10 10A00004 */ beqz $a1, .L800A0D24 -/* 0A1914 800A0D14 00000000 */ nop -/* 0A1918 800A0D18 0C001223 */ jal func_8000488C -/* 0A191C 800A0D1C 00A02025 */ move $a0, $a1 -/* 0A1920 800A0D20 AE000004 */ sw $zero, 4($s0) -.L800A0D24: -/* 0A1924 800A0D24 26100010 */ addiu $s0, $s0, 0x10 -/* 0A1928 800A0D28 1613FFC8 */ bne $s0, $s3, .L800A0C4C -/* 0A192C 800A0D2C 00000000 */ nop -/* 0A1930 800A0D30 3C038012 */ lui $v1, %hi(D_80126D70) # $v1, 0x8012 -/* 0A1934 800A0D34 24636D70 */ addiu $v1, %lo(D_80126D70) # addiu $v1, $v1, 0x6d70 -/* 0A1938 800A0D38 906B0000 */ lbu $t3, ($v1) -/* 0A193C 800A0D3C 3C0C800E */ lui $t4, %hi(D_800E2772) # $t4, 0x800e -/* 0A1940 800A0D40 11600018 */ beqz $t3, .L800A0DA4 -/* 0A1944 800A0D44 8FBF002C */ lw $ra, 0x2c($sp) -/* 0A1948 800A0D48 918C2772 */ lbu $t4, %lo(D_800E2772)($t4) -/* 0A194C 800A0D4C 3C028012 */ lui $v0, %hi(D_80126D37) # $v0, 0x8012 -/* 0A1950 800A0D50 15800014 */ bnez $t4, .L800A0DA4 -/* 0A1954 800A0D54 8FBF002C */ lw $ra, 0x2c($sp) -/* 0A1958 800A0D58 A0600000 */ sb $zero, ($v1) -/* 0A195C 800A0D5C 90426D37 */ lbu $v0, %lo(D_80126D37)($v0) -/* 0A1960 800A0D60 24010001 */ li $at, 1 -/* 0A1964 800A0D64 14410006 */ bne $v0, $at, .L800A0D80 -/* 0A1968 800A0D68 24010002 */ li $at, 2 -/* 0A196C 800A0D6C 0C000C63 */ jal func_8000318C -/* 0A1970 800A0D70 24040008 */ li $a0, 8 -/* 0A1974 800A0D74 1000000B */ b .L800A0DA4 -/* 0A1978 800A0D78 8FBF002C */ lw $ra, 0x2c($sp) -/* 0A197C 800A0D7C 24010002 */ li $at, 2 -.L800A0D80: -/* 0A1980 800A0D80 14410005 */ bne $v0, $at, .L800A0D98 -/* 0A1984 800A0D84 00000000 */ nop -/* 0A1988 800A0D88 0C000C63 */ jal func_8000318C -/* 0A198C 800A0D8C 2404000C */ li $a0, 12 -/* 0A1990 800A0D90 10000004 */ b .L800A0DA4 -/* 0A1994 800A0D94 8FBF002C */ lw $ra, 0x2c($sp) -.L800A0D98: -/* 0A1998 800A0D98 0C000C63 */ jal func_8000318C -/* 0A199C 800A0D9C 24040010 */ li $a0, 16 -/* 0A19A0 800A0DA0 8FBF002C */ lw $ra, 0x2c($sp) -.L800A0DA4: -/* 0A19A4 800A0DA4 8FB00018 */ lw $s0, 0x18($sp) -/* 0A19A8 800A0DA8 8FB1001C */ lw $s1, 0x1c($sp) -/* 0A19AC 800A0DAC 8FB20020 */ lw $s2, 0x20($sp) -/* 0A19B0 800A0DB0 8FB30024 */ lw $s3, 0x24($sp) -/* 0A19B4 800A0DB4 8FB40028 */ lw $s4, 0x28($sp) -/* 0A19B8 800A0DB8 03E00008 */ jr $ra -/* 0A19BC 800A0DBC 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_800A0DC0 -/* 0A19C0 800A0DC0 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0A19C4 800A0DC4 AFBF001C */ sw $ra, 0x1c($sp) -/* 0A19C8 800A0DC8 AFB10018 */ sw $s1, 0x18($sp) -/* 0A19CC 800A0DCC AFB00014 */ sw $s0, 0x14($sp) -/* 0A19D0 800A0DD0 AFA40020 */ sw $a0, 0x20($sp) -/* 0A19D4 800A0DD4 AFA50024 */ sw $a1, 0x24($sp) -/* 0A19D8 800A0DD8 8CB10064 */ lw $s1, 0x64($a1) -/* 0A19DC 800A0DDC 00C08025 */ move $s0, $a2 -/* 0A19E0 800A0DE0 0C01A142 */ jal func_80068508 -/* 0A19E4 800A0DE4 24040001 */ li $a0, 1 -/* 0A19E8 800A0DE8 02202025 */ move $a0, $s1 -/* 0A19EC 800A0DEC 0C0283AD */ jal func_800A0EB4 -/* 0A19F0 800A0DF0 02002825 */ move $a1, $s0 -/* 0A19F4 800A0DF4 02202025 */ move $a0, $s1 -/* 0A19F8 800A0DF8 0C029699 */ jal func_800A5A64 -/* 0A19FC 800A0DFC 02002825 */ move $a1, $s0 -/* 0A1A00 800A0E00 8FA40020 */ lw $a0, 0x20($sp) -/* 0A1A04 800A0E04 0C028F39 */ jal func_800A3CE4 -/* 0A1A08 800A0E08 02002825 */ move $a1, $s0 -/* 0A1A0C 800A0E0C 3C0F8012 */ lui $t7, %hi(D_80126D60) # $t7, 0x8012 -/* 0A1A10 800A0E10 8DEF6D60 */ lw $t7, %lo(D_80126D60)($t7) -/* 0A1A14 800A0E14 02202025 */ move $a0, $s1 -/* 0A1A18 800A0E18 81F8004C */ lb $t8, 0x4c($t7) -/* 0A1A1C 800A0E1C 00000000 */ nop -/* 0A1A20 800A0E20 17000003 */ bnez $t8, .L800A0E30 -/* 0A1A24 800A0E24 00000000 */ nop -/* 0A1A28 800A0E28 0C0293D4 */ jal func_800A4F50 -/* 0A1A2C 800A0E2C 02002825 */ move $a1, $s0 -.L800A0E30: -/* 0A1A30 800A0E30 02202025 */ move $a0, $s1 -/* 0A1A34 800A0E34 0C029055 */ jal func_800A4154 -/* 0A1A38 800A0E38 02002825 */ move $a1, $s0 -/* 0A1A3C 800A0E3C 02202025 */ move $a0, $s1 -/* 0A1A40 800A0E40 0C029EDA */ jal func_800A7B68 -/* 0A1A44 800A0E44 02002825 */ move $a1, $s0 -/* 0A1A48 800A0E48 02202025 */ move $a0, $s1 -/* 0A1A4C 800A0E4C 0C029311 */ jal func_800A4C44 -/* 0A1A50 800A0E50 02002825 */ move $a1, $s0 -/* 0A1A54 800A0E54 8FA40024 */ lw $a0, 0x24($sp) -/* 0A1A58 800A0E58 0C028E21 */ jal func_800A3884 -/* 0A1A5C 800A0E5C 02002825 */ move $a1, $s0 -/* 0A1A60 800A0E60 3C198012 */ lui $t9, %hi(D_80127188) # $t9, 0x8012 -/* 0A1A64 800A0E64 93397188 */ lbu $t9, %lo(D_80127188)($t9) -/* 0A1A68 800A0E68 00000000 */ nop -/* 0A1A6C 800A0E6C 13200008 */ beqz $t9, .L800A0E90 -/* 0A1A70 800A0E70 8FA40024 */ lw $a0, 0x24($sp) -/* 0A1A74 800A0E74 822801D8 */ lb $t0, 0x1d8($s1) -/* 0A1A78 800A0E78 02202025 */ move $a0, $s1 -/* 0A1A7C 800A0E7C 15000003 */ bnez $t0, .L800A0E8C -/* 0A1A80 800A0E80 00000000 */ nop -/* 0A1A84 800A0E84 0C0291E8 */ jal func_800A47A0 -/* 0A1A88 800A0E88 02002825 */ move $a1, $s0 -.L800A0E8C: -/* 0A1A8C 800A0E8C 8FA40024 */ lw $a0, 0x24($sp) -.L800A0E90: -/* 0A1A90 800A0E90 0C029D48 */ jal func_800A7520 -/* 0A1A94 800A0E94 02002825 */ move $a1, $s0 -/* 0A1A98 800A0E98 0C01A142 */ jal func_80068508 -/* 0A1A9C 800A0E9C 00002025 */ move $a0, $zero -/* 0A1AA0 800A0EA0 8FBF001C */ lw $ra, 0x1c($sp) -/* 0A1AA4 800A0EA4 8FB00014 */ lw $s0, 0x14($sp) -/* 0A1AA8 800A0EA8 8FB10018 */ lw $s1, 0x18($sp) -/* 0A1AAC 800A0EAC 03E00008 */ jr $ra -/* 0A1AB0 800A0EB0 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_800A0EB4 -/* 0A1AB4 800A0EB4 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0A1AB8 800A0EB8 3C0E800E */ lui $t6, %hi(D_800E2790) # $t6, 0x800e -/* 0A1ABC 800A0EBC 91CE2790 */ lbu $t6, %lo(D_800E2790)($t6) -/* 0A1AC0 800A0EC0 AFBF001C */ sw $ra, 0x1c($sp) -/* 0A1AC4 800A0EC4 AFB00018 */ sw $s0, 0x18($sp) -/* 0A1AC8 800A0EC8 AFA40020 */ sw $a0, 0x20($sp) -/* 0A1ACC 800A0ECC 11C000DA */ beqz $t6, .L800A1238 -/* 0A1AD0 800A0ED0 AFA50024 */ sw $a1, 0x24($sp) -/* 0A1AD4 800A0ED4 808201F9 */ lb $v0, 0x1f9($a0) -/* 0A1AD8 800A0ED8 00000000 */ nop -/* 0A1ADC 800A0EDC 18400085 */ blez $v0, .L800A10F4 -/* 0A1AE0 800A0EE0 8FB90020 */ lw $t9, 0x20($sp) -/* 0A1AE4 800A0EE4 908301F8 */ lbu $v1, 0x1f8($a0) -/* 0A1AE8 800A0EE8 0045C823 */ subu $t9, $v0, $a1 -/* 0A1AEC 800A0EEC 1060007B */ beqz $v1, .L800A10DC -/* 0A1AF0 800A0EF0 A09901F9 */ sb $t9, 0x1f9($a0) -/* 0A1AF4 800A0EF4 3C108012 */ lui $s0, %hi(D_80126CDC) # $s0, 0x8012 -/* 0A1AF8 800A0EF8 8E106CDC */ lw $s0, %lo(D_80126CDC)($s0) -/* 0A1AFC 800A0EFC 2469FFFF */ addiu $t1, $v1, -1 -/* 0A1B00 800A0F00 2D210008 */ sltiu $at, $t1, 8 -/* 0A1B04 800A0F04 1020002D */ beqz $at, .L800A0FBC -/* 0A1B08 800A0F08 26100420 */ addiu $s0, $s0, 0x420 -/* 0A1B0C 800A0F0C 00094880 */ sll $t1, $t1, 2 -/* 0A1B10 800A0F10 3C01800F */ lui $at, 0x800f -/* 0A1B14 800A0F14 00290821 */ addu $at, $at, $t1 -/* 0A1B18 800A0F18 8C2986F8 */ lw $t1, -0x7908($at) -/* 0A1B1C 800A0F1C 00000000 */ nop -/* 0A1B20 800A0F20 01200008 */ jr $t1 -/* 0A1B24 800A0F24 00000000 */ nop -/* 0A1B28 800A0F28 240A0021 */ li $t2, 33 -/* 0A1B2C 800A0F2C A60A0006 */ sh $t2, 6($s0) -/* 0A1B30 800A0F30 10000025 */ b .L800A0FC8 -/* 0A1B34 800A0F34 A6000000 */ sh $zero, ($s0) -/* 0A1B38 800A0F38 240B0020 */ li $t3, 32 -/* 0A1B3C 800A0F3C A60B0006 */ sh $t3, 6($s0) -/* 0A1B40 800A0F40 10000021 */ b .L800A0FC8 -/* 0A1B44 800A0F44 A6000000 */ sh $zero, ($s0) -/* 0A1B48 800A0F48 240C001F */ li $t4, 31 -/* 0A1B4C 800A0F4C A60C0006 */ sh $t4, 6($s0) -/* 0A1B50 800A0F50 1000001D */ b .L800A0FC8 -/* 0A1B54 800A0F54 A6000000 */ sh $zero, ($s0) -/* 0A1B58 800A0F58 24028000 */ li $v0, -32768 -/* 0A1B5C 800A0F5C 240D0021 */ li $t5, 33 -/* 0A1B60 800A0F60 A60D0006 */ sh $t5, 6($s0) -/* 0A1B64 800A0F64 10000018 */ b .L800A0FC8 -/* 0A1B68 800A0F68 A6020000 */ sh $v0, ($s0) -/* 0A1B6C 800A0F6C 24028000 */ li $v0, -32768 -/* 0A1B70 800A0F70 240E0020 */ li $t6, 32 -/* 0A1B74 800A0F74 A60E0006 */ sh $t6, 6($s0) -/* 0A1B78 800A0F78 10000013 */ b .L800A0FC8 -/* 0A1B7C 800A0F7C A6020000 */ sh $v0, ($s0) -/* 0A1B80 800A0F80 24028000 */ li $v0, -32768 -/* 0A1B84 800A0F84 2418001F */ li $t8, 31 -/* 0A1B88 800A0F88 A6180006 */ sh $t8, 6($s0) -/* 0A1B8C 800A0F8C 1000000E */ b .L800A0FC8 -/* 0A1B90 800A0F90 A6020000 */ sh $v0, ($s0) -/* 0A1B94 800A0F94 24028000 */ li $v0, -32768 -/* 0A1B98 800A0F98 2419001E */ li $t9, 30 -/* 0A1B9C 800A0F9C A6190006 */ sh $t9, 6($s0) -/* 0A1BA0 800A0FA0 A6020000 */ sh $v0, ($s0) -/* 0A1BA4 800A0FA4 10000008 */ b .L800A0FC8 -/* 0A1BA8 800A0FA8 A6020002 */ sh $v0, 2($s0) -/* 0A1BAC 800A0FAC 240F001E */ li $t7, 30 -/* 0A1BB0 800A0FB0 A60F0006 */ sh $t7, 6($s0) -/* 0A1BB4 800A0FB4 10000004 */ b .L800A0FC8 -/* 0A1BB8 800A0FB8 A6000000 */ sh $zero, ($s0) -.L800A0FBC: -/* 0A1BBC 800A0FBC 2409001D */ li $t1, 29 -/* 0A1BC0 800A0FC0 A6090006 */ sh $t1, 6($s0) -/* 0A1BC4 800A0FC4 A6000000 */ sh $zero, ($s0) -.L800A0FC8: -/* 0A1BC8 800A0FC8 0C0270C3 */ jal func_8009C30C -/* 0A1BCC 800A0FCC 00000000 */ nop -/* 0A1BD0 800A0FD0 304A0004 */ andi $t2, $v0, 4 -/* 0A1BD4 800A0FD4 1140000C */ beqz $t2, .L800A1008 -/* 0A1BD8 800A0FD8 3C188012 */ lui $t8, %hi(D_80126D0C) # $t8, 0x8012 -/* 0A1BDC 800A0FDC 8FA80020 */ lw $t0, 0x20($sp) -/* 0A1BE0 800A0FE0 00000000 */ nop -/* 0A1BE4 800A0FE4 910B01F8 */ lbu $t3, 0x1f8($t0) -/* 0A1BE8 800A0FE8 00000000 */ nop -/* 0A1BEC 800A0FEC 2961001E */ slti $at, $t3, 0x1e -/* 0A1BF0 800A0FF0 10200005 */ beqz $at, .L800A1008 -/* 0A1BF4 800A0FF4 00000000 */ nop -/* 0A1BF8 800A0FF8 860C0000 */ lh $t4, ($s0) -/* 0A1BFC 800A0FFC 340D8000 */ li $t5, 32768 -/* 0A1C00 800A1000 01AC7023 */ subu $t6, $t5, $t4 -/* 0A1C04 800A1004 A60E0000 */ sh $t6, ($s0) -.L800A1008: -/* 0A1C08 800A1008 8F186D0C */ lw $t8, %lo(D_80126D0C)($t8) -/* 0A1C0C 800A100C 8FA80020 */ lw $t0, 0x20($sp) -/* 0A1C10 800A1010 17000032 */ bnez $t8, .L800A10DC -/* 0A1C14 800A1014 00000000 */ nop -/* 0A1C18 800A1018 811901D8 */ lb $t9, 0x1d8($t0) -/* 0A1C1C 800A101C 00000000 */ nop -/* 0A1C20 800A1020 1720002E */ bnez $t9, .L800A10DC -/* 0A1C24 800A1024 00000000 */ nop -/* 0A1C28 800A1028 910F01F8 */ lbu $t7, 0x1f8($t0) -/* 0A1C2C 800A102C 3C09800E */ lui $t1, %hi(D_800E27B8) # $t1, 0x800e -/* 0A1C30 800A1030 11E0002A */ beqz $t7, .L800A10DC -/* 0A1C34 800A1034 00000000 */ nop -/* 0A1C38 800A1038 912927B8 */ lbu $t1, %lo(D_800E27B8)($t1) -/* 0A1C3C 800A103C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A1C40 800A1040 15200026 */ bnez $t1, .L800A10DC -/* 0A1C44 800A1044 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A1C48 800A1048 8C820000 */ lw $v0, ($a0) -/* 0A1C4C 800A104C 3C0BFA00 */ lui $t3, 0xfa00 -/* 0A1C50 800A1050 244A0008 */ addiu $t2, $v0, 8 -/* 0A1C54 800A1054 AC8A0000 */ sw $t2, ($a0) -/* 0A1C58 800A1058 240DFFA0 */ li $t5, -96 -/* 0A1C5C 800A105C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A1C60 800A1060 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A1C64 800A1064 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A1C68 800A1068 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A1C6C 800A106C 02003825 */ move $a3, $s0 -/* 0A1C70 800A1070 AC4D0004 */ sw $t5, 4($v0) -/* 0A1C74 800A1074 0C02A980 */ jal func_800AA600 -/* 0A1C78 800A1078 AC4B0000 */ sw $t3, ($v0) -/* 0A1C7C 800A107C C604000C */ lwc1 $f4, 0xc($s0) -/* 0A1C80 800A1080 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A1C84 800A1084 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A1C88 800A1088 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A1C8C 800A108C 46002187 */ neg.s $f6, $f4 -/* 0A1C90 800A1090 E606000C */ swc1 $f6, 0xc($s0) -/* 0A1C94 800A1094 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A1C98 800A1098 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A1C9C 800A109C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A1CA0 800A10A0 0C02A980 */ jal func_800AA600 -/* 0A1CA4 800A10A4 02003825 */ move $a3, $s0 -/* 0A1CA8 800A10A8 C608000C */ lwc1 $f8, 0xc($s0) -/* 0A1CAC 800A10AC 3C058012 */ lui $a1, %hi(D_80126CFC) # $a1, 0x8012 -/* 0A1CB0 800A10B0 46004287 */ neg.s $f10, $f8 -/* 0A1CB4 800A10B4 24A56CFC */ addiu $a1, %lo(D_80126CFC) # addiu $a1, $a1, 0x6cfc -/* 0A1CB8 800A10B8 E60A000C */ swc1 $f10, 0xc($s0) -/* 0A1CBC 800A10BC A6000002 */ sh $zero, 2($s0) -/* 0A1CC0 800A10C0 8CA20000 */ lw $v0, ($a1) -/* 0A1CC4 800A10C4 3C0EFA00 */ lui $t6, 0xfa00 -/* 0A1CC8 800A10C8 244C0008 */ addiu $t4, $v0, 8 -/* 0A1CCC 800A10CC ACAC0000 */ sw $t4, ($a1) -/* 0A1CD0 800A10D0 2418FFFF */ li $t8, -1 -/* 0A1CD4 800A10D4 AC580004 */ sw $t8, 4($v0) -/* 0A1CD8 800A10D8 AC4E0000 */ sw $t6, ($v0) -.L800A10DC: -/* 0A1CDC 800A10DC 3C02800E */ lui $v0, %hi(D_800E27B8) # $v0, 0x800e -/* 0A1CE0 800A10E0 904227B8 */ lbu $v0, %lo(D_800E27B8)($v0) -/* 0A1CE4 800A10E4 3C058012 */ lui $a1, %hi(D_80126CFC) # $a1, 0x8012 -/* 0A1CE8 800A10E8 10000007 */ b .L800A1108 -/* 0A1CEC 800A10EC 24A56CFC */ addiu $a1, %lo(D_80126CFC) # addiu $a1, $a1, 0x6cfc -/* 0A1CF0 800A10F0 8FB90020 */ lw $t9, 0x20($sp) -.L800A10F4: -/* 0A1CF4 800A10F4 3C02800E */ lui $v0, %hi(D_800E27B8) # $v0, 0x800e -/* 0A1CF8 800A10F8 A32001F9 */ sb $zero, 0x1f9($t9) -/* 0A1CFC 800A10FC 3C058012 */ lui $a1, %hi(D_80126CFC) # $a1, 0x8012 -/* 0A1D00 800A1100 904227B8 */ lbu $v0, %lo(D_800E27B8)($v0) -/* 0A1D04 800A1104 24A56CFC */ addiu $a1, %lo(D_80126CFC) # addiu $a1, $a1, 0x6cfc -.L800A1108: -/* 0A1D08 800A1108 1040004B */ beqz $v0, .L800A1238 -/* 0A1D0C 800A110C 304F0020 */ andi $t7, $v0, 0x20 -/* 0A1D10 800A1110 11E0003F */ beqz $t7, .L800A1210 -/* 0A1D14 800A1114 00402025 */ move $a0, $v0 -/* 0A1D18 800A1118 8CA20000 */ lw $v0, ($a1) -/* 0A1D1C 800A111C 3C0AFA00 */ lui $t2, 0xfa00 -/* 0A1D20 800A1120 24490008 */ addiu $t1, $v0, 8 -/* 0A1D24 800A1124 ACA90000 */ sw $t1, ($a1) -/* 0A1D28 800A1128 240BFFA0 */ li $t3, -96 -/* 0A1D2C 800A112C 3C108012 */ lui $s0, %hi(D_80126CDC) # $s0, 0x8012 -/* 0A1D30 800A1130 AC4B0004 */ sw $t3, 4($v0) -/* 0A1D34 800A1134 AC4A0000 */ sw $t2, ($v0) -/* 0A1D38 800A1138 8E106CDC */ lw $s0, %lo(D_80126CDC)($s0) -/* 0A1D3C 800A113C 240D001D */ li $t5, 29 -/* 0A1D40 800A1140 26100420 */ addiu $s0, $s0, 0x420 -/* 0A1D44 800A1144 A6000000 */ sh $zero, ($s0) -/* 0A1D48 800A1148 A6000002 */ sh $zero, 2($s0) -/* 0A1D4C 800A114C 0C0270C3 */ jal func_8009C30C -/* 0A1D50 800A1150 A60D0006 */ sh $t5, 6($s0) -/* 0A1D54 800A1154 304C0004 */ andi $t4, $v0, 4 -/* 0A1D58 800A1158 1180000C */ beqz $t4, .L800A118C -/* 0A1D5C 800A115C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A1D60 800A1160 8FAE0020 */ lw $t6, 0x20($sp) -/* 0A1D64 800A1164 00000000 */ nop -/* 0A1D68 800A1168 91D801F8 */ lbu $t8, 0x1f8($t6) -/* 0A1D6C 800A116C 00000000 */ nop -/* 0A1D70 800A1170 2B01001E */ slti $at, $t8, 0x1e -/* 0A1D74 800A1174 10200005 */ beqz $at, .L800A118C -/* 0A1D78 800A1178 00000000 */ nop -/* 0A1D7C 800A117C 86190000 */ lh $t9, ($s0) -/* 0A1D80 800A1180 340F8000 */ li $t7, 32768 -/* 0A1D84 800A1184 01F94823 */ subu $t1, $t7, $t9 -/* 0A1D88 800A1188 A6090000 */ sh $t1, ($s0) -.L800A118C: -/* 0A1D8C 800A118C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A1D90 800A1190 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A1D94 800A1194 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A1D98 800A1198 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A1D9C 800A119C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A1DA0 800A11A0 0C02A980 */ jal func_800AA600 -/* 0A1DA4 800A11A4 02003825 */ move $a3, $s0 -/* 0A1DA8 800A11A8 C610000C */ lwc1 $f16, 0xc($s0) -/* 0A1DAC 800A11AC 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A1DB0 800A11B0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A1DB4 800A11B4 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A1DB8 800A11B8 46008487 */ neg.s $f18, $f16 -/* 0A1DBC 800A11BC E612000C */ swc1 $f18, 0xc($s0) -/* 0A1DC0 800A11C0 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A1DC4 800A11C4 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A1DC8 800A11C8 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A1DCC 800A11CC 0C02A980 */ jal func_800AA600 -/* 0A1DD0 800A11D0 02003825 */ move $a3, $s0 -/* 0A1DD4 800A11D4 C604000C */ lwc1 $f4, 0xc($s0) -/* 0A1DD8 800A11D8 3C028012 */ lui $v0, %hi(D_80126CFC) # $v0, 0x8012 -/* 0A1DDC 800A11DC 46002187 */ neg.s $f6, $f4 -/* 0A1DE0 800A11E0 E606000C */ swc1 $f6, 0xc($s0) -/* 0A1DE4 800A11E4 8C426CFC */ lw $v0, %lo(D_80126CFC)($v0) -/* 0A1DE8 800A11E8 3C018012 */ lui $at, %hi(D_80126CFC) # $at, 0x8012 -/* 0A1DEC 800A11EC 244A0008 */ addiu $t2, $v0, 8 -/* 0A1DF0 800A11F0 AC2A6CFC */ sw $t2, %lo(D_80126CFC)($at) -/* 0A1DF4 800A11F4 3C0BFA00 */ lui $t3, 0xfa00 -/* 0A1DF8 800A11F8 240DFFFF */ li $t5, -1 -/* 0A1DFC 800A11FC 3C04800E */ lui $a0, %hi(D_800E27B8) # $a0, 0x800e -/* 0A1E00 800A1200 AC4D0004 */ sw $t5, 4($v0) -/* 0A1E04 800A1204 AC4B0000 */ sw $t3, ($v0) -/* 0A1E08 800A1208 908427B8 */ lbu $a0, %lo(D_800E27B8)($a0) -/* 0A1E0C 800A120C 00000000 */ nop -.L800A1210: -/* 0A1E10 800A1210 8FAC0024 */ lw $t4, 0x24($sp) -/* 0A1E14 800A1214 00000000 */ nop -/* 0A1E18 800A1218 0184082A */ slt $at, $t4, $a0 -/* 0A1E1C 800A121C 10200004 */ beqz $at, .L800A1230 -/* 0A1E20 800A1220 008C7023 */ subu $t6, $a0, $t4 -/* 0A1E24 800A1224 3C01800E */ lui $at, %hi(D_800E27B8) # $at, 0x800e -/* 0A1E28 800A1228 10000003 */ b .L800A1238 -/* 0A1E2C 800A122C A02E27B8 */ sb $t6, %lo(D_800E27B8)($at) -.L800A1230: -/* 0A1E30 800A1230 3C01800E */ lui $at, %hi(D_800E27B8) # $at, 0x800e -/* 0A1E34 800A1234 A02027B8 */ sb $zero, %lo(D_800E27B8)($at) -.L800A1238: -/* 0A1E38 800A1238 8FBF001C */ lw $ra, 0x1c($sp) -/* 0A1E3C 800A123C 8FB00018 */ lw $s0, 0x18($sp) -/* 0A1E40 800A1240 03E00008 */ jr $ra -/* 0A1E44 800A1244 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_800A1248 -/* 0A1E48 800A1248 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 0A1E4C 800A124C AFBF002C */ sw $ra, 0x2c($sp) -/* 0A1E50 800A1250 AFB30028 */ sw $s3, 0x28($sp) -/* 0A1E54 800A1254 AFB20024 */ sw $s2, 0x24($sp) -/* 0A1E58 800A1258 AFB10020 */ sw $s1, 0x20($sp) -/* 0A1E5C 800A125C AFB0001C */ sw $s0, 0x1c($sp) -/* 0A1E60 800A1260 E7B50010 */ swc1 $f21, 0x10($sp) -/* 0A1E64 800A1264 E7B40014 */ swc1 $f20, 0x14($sp) -/* 0A1E68 800A1268 AFA5004C */ sw $a1, 0x4c($sp) -/* 0A1E6C 800A126C AFA60050 */ sw $a2, 0x50($sp) -/* 0A1E70 800A1270 8CA70064 */ lw $a3, 0x64($a1) -/* 0A1E74 800A1274 00808025 */ move $s0, $a0 -/* 0A1E78 800A1278 27A4003C */ addiu $a0, $sp, 0x3c -/* 0A1E7C 800A127C 0C006E9D */ jal func_8001BA74 -/* 0A1E80 800A1280 AFA70044 */ sw $a3, 0x44($sp) -/* 0A1E84 800A1284 00409025 */ move $s2, $v0 -/* 0A1E88 800A1288 0C01A142 */ jal func_80068508 -/* 0A1E8C 800A128C 24040001 */ li $a0, 1 -/* 0A1E90 800A1290 8FA50050 */ lw $a1, 0x50($sp) -/* 0A1E94 800A1294 0C028F39 */ jal func_800A3CE4 -/* 0A1E98 800A1298 02002025 */ move $a0, $s0 -/* 0A1E9C 800A129C 3C028012 */ lui $v0, %hi(D_80126D37) # $v0, 0x8012 -/* 0A1EA0 800A12A0 90426D37 */ lbu $v0, %lo(D_80126D37)($v0) -/* 0A1EA4 800A12A4 8FA70044 */ lw $a3, 0x44($sp) -/* 0A1EA8 800A12A8 24130001 */ li $s3, 1 -/* 0A1EAC 800A12AC 10530007 */ beq $v0, $s3, .L800A12CC -/* 0A1EB0 800A12B0 24010003 */ li $at, 3 -/* 0A1EB4 800A12B4 10410041 */ beq $v0, $at, .L800A13BC -/* 0A1EB8 800A12B8 24010004 */ li $at, 4 -/* 0A1EBC 800A12BC 1041003F */ beq $v0, $at, .L800A13BC -/* 0A1EC0 800A12C0 00000000 */ nop -/* 0A1EC4 800A12C4 10000040 */ b .L800A13C8 -/* 0A1EC8 800A12C8 8FA8004C */ lw $t0, 0x4c($sp) -.L800A12CC: -/* 0A1ECC 800A12CC 8FAF003C */ lw $t7, 0x3c($sp) -/* 0A1ED0 800A12D0 00008825 */ move $s1, $zero -/* 0A1ED4 800A12D4 19E00029 */ blez $t7, .L800A137C -/* 0A1ED8 800A12D8 02408025 */ move $s0, $s2 -/* 0A1EDC 800A12DC 3C01425C */ li $at, 0x425C0000 # 55.000000 -/* 0A1EE0 800A12E0 3C128012 */ lui $s2, %hi(D_80126CDC) # $s2, 0x8012 -/* 0A1EE4 800A12E4 4481A000 */ mtc1 $at, $f20 -/* 0A1EE8 800A12E8 26526CDC */ addiu $s2, %lo(D_80126CDC) # addiu $s2, $s2, 0x6cdc -.L800A12EC: -/* 0A1EEC 800A12EC 8E180000 */ lw $t8, ($s0) -/* 0A1EF0 800A12F0 00000000 */ nop -/* 0A1EF4 800A12F4 8F040064 */ lw $a0, 0x64($t8) -/* 0A1EF8 800A12F8 0C02917C */ jal func_800A45F0 -/* 0A1EFC 800A12FC 00000000 */ nop -/* 0A1F00 800A1300 1633000D */ bne $s1, $s3, .L800A1338 -/* 0A1F04 800A1304 00000000 */ nop -/* 0A1F08 800A1308 8E420000 */ lw $v0, ($s2) -/* 0A1F0C 800A130C 00000000 */ nop -/* 0A1F10 800A1310 C444064C */ lwc1 $f4, 0x64c($v0) -/* 0A1F14 800A1314 00000000 */ nop -/* 0A1F18 800A1318 46142180 */ add.s $f6, $f4, $f20 -/* 0A1F1C 800A131C E446064C */ swc1 $f6, 0x64c($v0) -/* 0A1F20 800A1320 8E420000 */ lw $v0, ($s2) -/* 0A1F24 800A1324 00000000 */ nop -/* 0A1F28 800A1328 C448040C */ lwc1 $f8, 0x40c($v0) -/* 0A1F2C 800A132C 00000000 */ nop -/* 0A1F30 800A1330 46144280 */ add.s $f10, $f8, $f20 -/* 0A1F34 800A1334 E44A040C */ swc1 $f10, 0x40c($v0) -.L800A1338: -/* 0A1F38 800A1338 8E420000 */ lw $v0, ($s2) -/* 0A1F3C 800A133C 26310001 */ addiu $s1, $s1, 1 -/* 0A1F40 800A1340 C450064C */ lwc1 $f16, 0x64c($v0) -/* 0A1F44 800A1344 26100004 */ addiu $s0, $s0, 4 -/* 0A1F48 800A1348 46148480 */ add.s $f18, $f16, $f20 -/* 0A1F4C 800A134C E452064C */ swc1 $f18, 0x64c($v0) -/* 0A1F50 800A1350 8E420000 */ lw $v0, ($s2) -/* 0A1F54 800A1354 00000000 */ nop -/* 0A1F58 800A1358 C444040C */ lwc1 $f4, 0x40c($v0) -/* 0A1F5C 800A135C 00000000 */ nop -/* 0A1F60 800A1360 46142180 */ add.s $f6, $f4, $f20 -/* 0A1F64 800A1364 E446040C */ swc1 $f6, 0x40c($v0) -/* 0A1F68 800A1368 8FB9003C */ lw $t9, 0x3c($sp) -/* 0A1F6C 800A136C 00000000 */ nop -/* 0A1F70 800A1370 0239082A */ slt $at, $s1, $t9 -/* 0A1F74 800A1374 1420FFDD */ bnez $at, .L800A12EC -/* 0A1F78 800A1378 00000000 */ nop -.L800A137C: -/* 0A1F7C 800A137C 3C128012 */ lui $s2, %hi(D_80126CDC) # $s2, 0x8012 -/* 0A1F80 800A1380 26526CDC */ addiu $s2, %lo(D_80126CDC) # addiu $s2, $s2, 0x6cdc -/* 0A1F84 800A1384 8E420000 */ lw $v0, ($s2) -/* 0A1F88 800A1388 3C01800F */ lui $at, %hi(D_800E8718) # $at, 0x800f -/* 0A1F8C 800A138C C4208718 */ lwc1 $f0, %lo(D_800E8718)($at) -/* 0A1F90 800A1390 C448064C */ lwc1 $f8, 0x64c($v0) -/* 0A1F94 800A1394 00000000 */ nop -/* 0A1F98 800A1398 46004281 */ sub.s $f10, $f8, $f0 -/* 0A1F9C 800A139C E44A064C */ swc1 $f10, 0x64c($v0) -/* 0A1FA0 800A13A0 8E420000 */ lw $v0, ($s2) -/* 0A1FA4 800A13A4 00000000 */ nop -/* 0A1FA8 800A13A8 C450040C */ lwc1 $f16, 0x40c($v0) -/* 0A1FAC 800A13AC 00000000 */ nop -/* 0A1FB0 800A13B0 46008481 */ sub.s $f18, $f16, $f0 -/* 0A1FB4 800A13B4 10000003 */ b .L800A13C4 -/* 0A1FB8 800A13B8 E452040C */ swc1 $f18, 0x40c($v0) -.L800A13BC: -/* 0A1FBC 800A13BC 0C02917C */ jal func_800A45F0 -/* 0A1FC0 800A13C0 00E02025 */ move $a0, $a3 -.L800A13C4: -/* 0A1FC4 800A13C4 8FA8004C */ lw $t0, 0x4c($sp) -.L800A13C8: -/* 0A1FC8 800A13C8 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A1FCC 800A13CC 8D070064 */ lw $a3, 0x64($t0) -/* 0A1FD0 800A13D0 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A1FD4 800A13D4 0C01ECF4 */ jal func_8007B3D0 -/* 0A1FD8 800A13D8 AFA70044 */ sw $a3, 0x44($sp) -/* 0A1FDC 800A13DC 8FA40044 */ lw $a0, 0x44($sp) -/* 0A1FE0 800A13E0 8FA50050 */ lw $a1, 0x50($sp) -/* 0A1FE4 800A13E4 0C029055 */ jal func_800A4154 -/* 0A1FE8 800A13E8 00000000 */ nop -/* 0A1FEC 800A13EC 8FA4004C */ lw $a0, 0x4c($sp) -/* 0A1FF0 800A13F0 8FA50050 */ lw $a1, 0x50($sp) -/* 0A1FF4 800A13F4 0C029D48 */ jal func_800A7520 -/* 0A1FF8 800A13F8 00000000 */ nop -/* 0A1FFC 800A13FC 0C01A142 */ jal func_80068508 -/* 0A2000 800A1400 00002025 */ move $a0, $zero -/* 0A2004 800A1404 8FBF002C */ lw $ra, 0x2c($sp) -/* 0A2008 800A1408 C7B50010 */ lwc1 $f21, 0x10($sp) -/* 0A200C 800A140C C7B40014 */ lwc1 $f20, 0x14($sp) -/* 0A2010 800A1410 8FB0001C */ lw $s0, 0x1c($sp) -/* 0A2014 800A1414 8FB10020 */ lw $s1, 0x20($sp) -/* 0A2018 800A1418 8FB20024 */ lw $s2, 0x24($sp) -/* 0A201C 800A141C 8FB30028 */ lw $s3, 0x28($sp) -/* 0A2020 800A1420 03E00008 */ jr $ra -/* 0A2024 800A1424 27BD0048 */ addiu $sp, $sp, 0x48 - -glabel func_800A1428 -/* 0A2028 800A1428 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0A202C 800A142C AFBF0014 */ sw $ra, 0x14($sp) -/* 0A2030 800A1430 AFA40018 */ sw $a0, 0x18($sp) -/* 0A2034 800A1434 AFA5001C */ sw $a1, 0x1c($sp) -/* 0A2038 800A1438 AFA60020 */ sw $a2, 0x20($sp) -/* 0A203C 800A143C 8CA20064 */ lw $v0, 0x64($a1) -/* 0A2040 800A1440 00000000 */ nop -/* 0A2044 800A1444 804F01D8 */ lb $t7, 0x1d8($v0) -/* 0A2048 800A1448 00000000 */ nop -/* 0A204C 800A144C 15E00025 */ bnez $t7, .L800A14E4 -/* 0A2050 800A1450 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A2054 800A1454 0C01A142 */ jal func_80068508 -/* 0A2058 800A1458 24040001 */ li $a0, 1 -/* 0A205C 800A145C 8FA40018 */ lw $a0, 0x18($sp) -/* 0A2060 800A1460 8FA50020 */ lw $a1, 0x20($sp) -/* 0A2064 800A1464 0C028F39 */ jal func_800A3CE4 -/* 0A2068 800A1468 00000000 */ nop -/* 0A206C 800A146C 8FA4001C */ lw $a0, 0x1c($sp) -/* 0A2070 800A1470 8FA50020 */ lw $a1, 0x20($sp) -/* 0A2074 800A1474 0C029D48 */ jal func_800A7520 -/* 0A2078 800A1478 00000000 */ nop -/* 0A207C 800A147C 3C038012 */ lui $v1, %hi(D_80126CDC) # $v1, 0x8012 -/* 0A2080 800A1480 8FA50020 */ lw $a1, 0x20($sp) -/* 0A2084 800A1484 8C636CDC */ lw $v1, %lo(D_80126CDC)($v1) -/* 0A2088 800A1488 2418007F */ li $t8, 127 -/* 0A208C 800A148C 8064067A */ lb $a0, 0x67a($v1) -/* 0A2090 800A1490 00051040 */ sll $v0, $a1, 1 -/* 0A2094 800A1494 0302C823 */ subu $t9, $t8, $v0 -/* 0A2098 800A1498 0324082A */ slt $at, $t9, $a0 -/* 0A209C 800A149C 14200004 */ bnez $at, .L800A14B0 -/* 0A20A0 800A14A0 3C0B8012 */ lui $t3, %hi(D_80126D37) # $t3, 0x8012 -/* 0A20A4 800A14A4 00824021 */ addu $t0, $a0, $v0 -/* 0A20A8 800A14A8 10000004 */ b .L800A14BC -/* 0A20AC 800A14AC A068067A */ sb $t0, 0x67a($v1) -.L800A14B0: -/* 0A20B0 800A14B0 00824821 */ addu $t1, $a0, $v0 -/* 0A20B4 800A14B4 252AFF01 */ addiu $t2, $t1, -0xff -/* 0A20B8 800A14B8 A06A067A */ sb $t2, 0x67a($v1) -.L800A14BC: -/* 0A20BC 800A14BC 916B6D37 */ lbu $t3, %lo(D_80126D37)($t3) -/* 0A20C0 800A14C0 24010002 */ li $at, 2 -/* 0A20C4 800A14C4 11610004 */ beq $t3, $at, .L800A14D8 -/* 0A20C8 800A14C8 00000000 */ nop -/* 0A20CC 800A14CC 8FA4001C */ lw $a0, 0x1c($sp) -/* 0A20D0 800A14D0 0C02853C */ jal func_800A14F0 -/* 0A20D4 800A14D4 00000000 */ nop -.L800A14D8: -/* 0A20D8 800A14D8 0C01A142 */ jal func_80068508 -/* 0A20DC 800A14DC 00002025 */ move $a0, $zero -/* 0A20E0 800A14E0 8FBF0014 */ lw $ra, 0x14($sp) -.L800A14E4: -/* 0A20E4 800A14E4 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0A20E8 800A14E8 03E00008 */ jr $ra -/* 0A20EC 800A14EC 00000000 */ nop - -glabel func_800A14F0 -/* 0A20F0 800A14F0 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 0A20F4 800A14F4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0A20F8 800A14F8 AFA40060 */ sw $a0, 0x60($sp) -/* 0A20FC 800A14FC AFA50064 */ sw $a1, 0x64($sp) -/* 0A2100 800A1500 0C006E9D */ jal func_8001BA74 -/* 0A2104 800A1504 27A40050 */ addiu $a0, $sp, 0x50 -/* 0A2108 800A1508 3C0E8012 */ lui $t6, %hi(D_80126D37) # $t6, 0x8012 -/* 0A210C 800A150C 91CE6D37 */ lbu $t6, %lo(D_80126D37)($t6) -/* 0A2110 800A1510 8FAB0060 */ lw $t3, 0x60($sp) -/* 0A2114 800A1514 240C0002 */ li $t4, 2 -/* 0A2118 800A1518 158E005C */ bne $t4, $t6, .L800A168C -/* 0A211C 800A151C 00405025 */ move $t2, $v0 -/* 0A2120 800A1520 8FAF0050 */ lw $t7, 0x50($sp) -/* 0A2124 800A1524 00003025 */ move $a2, $zero -/* 0A2128 800A1528 19E00056 */ blez $t7, .L800A1684 -/* 0A212C 800A152C 00003825 */ move $a3, $zero -/* 0A2130 800A1530 31E30003 */ andi $v1, $t7, 3 -/* 0A2134 800A1534 10600017 */ beqz $v1, .L800A1594 -/* 0A2138 800A1538 00604825 */ move $t1, $v1 -/* 0A213C 800A153C 0000C080 */ sll $t8, $zero, 2 -/* 0A2140 800A1540 00582821 */ addu $a1, $v0, $t8 -/* 0A2144 800A1544 2408FFFF */ li $t0, -1 -.L800A1548: -/* 0A2148 800A1548 8CB90000 */ lw $t9, ($a1) -/* 0A214C 800A154C 24E70001 */ addiu $a3, $a3, 1 -/* 0A2150 800A1550 8F230064 */ lw $v1, 0x64($t9) -/* 0A2154 800A1554 00000000 */ nop -/* 0A2158 800A1558 846D0000 */ lh $t5, ($v1) -/* 0A215C 800A155C 00000000 */ nop -/* 0A2160 800A1560 110D0006 */ beq $t0, $t5, .L800A157C -/* 0A2164 800A1564 00000000 */ nop -/* 0A2168 800A1568 806E01D8 */ lb $t6, 0x1d8($v1) -/* 0A216C 800A156C 00000000 */ nop -/* 0A2170 800A1570 11C00002 */ beqz $t6, .L800A157C -/* 0A2174 800A1574 00000000 */ nop -/* 0A2178 800A1578 24C60001 */ addiu $a2, $a2, 1 -.L800A157C: -/* 0A217C 800A157C 1527FFF2 */ bne $t1, $a3, .L800A1548 -/* 0A2180 800A1580 24A50004 */ addiu $a1, $a1, 4 -/* 0A2184 800A1584 8FAF0050 */ lw $t7, 0x50($sp) -/* 0A2188 800A1588 00000000 */ nop -/* 0A218C 800A158C 10EF003D */ beq $a3, $t7, .L800A1684 -/* 0A2190 800A1590 00000000 */ nop -.L800A1594: -/* 0A2194 800A1594 8FB80050 */ lw $t8, 0x50($sp) -/* 0A2198 800A1598 00076880 */ sll $t5, $a3, 2 -/* 0A219C 800A159C 0018C880 */ sll $t9, $t8, 2 -/* 0A21A0 800A15A0 03224821 */ addu $t1, $t9, $v0 -/* 0A21A4 800A15A4 004D2821 */ addu $a1, $v0, $t5 -/* 0A21A8 800A15A8 2408FFFF */ li $t0, -1 -.L800A15AC: -/* 0A21AC 800A15AC 8CAE0000 */ lw $t6, ($a1) -/* 0A21B0 800A15B0 00000000 */ nop -/* 0A21B4 800A15B4 8DC30064 */ lw $v1, 0x64($t6) -/* 0A21B8 800A15B8 00000000 */ nop -/* 0A21BC 800A15BC 846F0000 */ lh $t7, ($v1) -/* 0A21C0 800A15C0 00000000 */ nop -/* 0A21C4 800A15C4 110F0006 */ beq $t0, $t7, .L800A15E0 -/* 0A21C8 800A15C8 00000000 */ nop -/* 0A21CC 800A15CC 807801D8 */ lb $t8, 0x1d8($v1) -/* 0A21D0 800A15D0 00000000 */ nop -/* 0A21D4 800A15D4 13000002 */ beqz $t8, .L800A15E0 -/* 0A21D8 800A15D8 00000000 */ nop -/* 0A21DC 800A15DC 24C60001 */ addiu $a2, $a2, 1 -.L800A15E0: -/* 0A21E0 800A15E0 8CB90004 */ lw $t9, 4($a1) -/* 0A21E4 800A15E4 00000000 */ nop -/* 0A21E8 800A15E8 8F240064 */ lw $a0, 0x64($t9) -/* 0A21EC 800A15EC 00000000 */ nop -/* 0A21F0 800A15F0 848D0000 */ lh $t5, ($a0) -/* 0A21F4 800A15F4 00000000 */ nop -/* 0A21F8 800A15F8 110D0006 */ beq $t0, $t5, .L800A1614 -/* 0A21FC 800A15FC 00000000 */ nop -/* 0A2200 800A1600 808E01D8 */ lb $t6, 0x1d8($a0) -/* 0A2204 800A1604 00000000 */ nop -/* 0A2208 800A1608 11C00002 */ beqz $t6, .L800A1614 -/* 0A220C 800A160C 00000000 */ nop -/* 0A2210 800A1610 24C60001 */ addiu $a2, $a2, 1 -.L800A1614: -/* 0A2214 800A1614 8CAF0008 */ lw $t7, 8($a1) -/* 0A2218 800A1618 00000000 */ nop -/* 0A221C 800A161C 8DE40064 */ lw $a0, 0x64($t7) -/* 0A2220 800A1620 00000000 */ nop -/* 0A2224 800A1624 84980000 */ lh $t8, ($a0) -/* 0A2228 800A1628 00000000 */ nop -/* 0A222C 800A162C 11180006 */ beq $t0, $t8, .L800A1648 -/* 0A2230 800A1630 00000000 */ nop -/* 0A2234 800A1634 809901D8 */ lb $t9, 0x1d8($a0) -/* 0A2238 800A1638 00000000 */ nop -/* 0A223C 800A163C 13200002 */ beqz $t9, .L800A1648 -/* 0A2240 800A1640 00000000 */ nop -/* 0A2244 800A1644 24C60001 */ addiu $a2, $a2, 1 -.L800A1648: -/* 0A2248 800A1648 8CAD000C */ lw $t5, 0xc($a1) -/* 0A224C 800A164C 24A50010 */ addiu $a1, $a1, 0x10 -/* 0A2250 800A1650 8DA40064 */ lw $a0, 0x64($t5) -/* 0A2254 800A1654 00000000 */ nop -/* 0A2258 800A1658 848E0000 */ lh $t6, ($a0) -/* 0A225C 800A165C 00000000 */ nop -/* 0A2260 800A1660 110E0006 */ beq $t0, $t6, .L800A167C -/* 0A2264 800A1664 00000000 */ nop -/* 0A2268 800A1668 808F01D8 */ lb $t7, 0x1d8($a0) -/* 0A226C 800A166C 00000000 */ nop -/* 0A2270 800A1670 11E00002 */ beqz $t7, .L800A167C -/* 0A2274 800A1674 00000000 */ nop -/* 0A2278 800A1678 24C60001 */ addiu $a2, $a2, 1 -.L800A167C: -/* 0A227C 800A167C 14A9FFCB */ bne $a1, $t1, .L800A15AC -/* 0A2280 800A1680 00000000 */ nop -.L800A1684: -/* 0A2284 800A1684 10CC00C4 */ beq $a2, $t4, .L800A1998 -/* 0A2288 800A1688 8FBF0014 */ lw $ra, 0x14($sp) -.L800A168C: -/* 0A228C 800A168C 11600004 */ beqz $t3, .L800A16A0 -/* 0A2290 800A1690 24040001 */ li $a0, 1 -/* 0A2294 800A1694 8D690064 */ lw $t1, 0x64($t3) -/* 0A2298 800A1698 10000006 */ b .L800A16B4 -/* 0A229C 800A169C 8FB90050 */ lw $t9, 0x50($sp) -.L800A16A0: -/* 0A22A0 800A16A0 8C580000 */ lw $t8, ($v0) -/* 0A22A4 800A16A4 00000000 */ nop -/* 0A22A8 800A16A8 8F090064 */ lw $t1, 0x64($t8) -/* 0A22AC 800A16AC 00000000 */ nop -/* 0A22B0 800A16B0 8FB90050 */ lw $t9, 0x50($sp) -.L800A16B4: -/* 0A22B4 800A16B4 24010004 */ li $at, 4 -/* 0A22B8 800A16B8 172100B6 */ bne $t9, $at, .L800A1994 -/* 0A22BC 800A16BC 00003825 */ move $a3, $zero -/* 0A22C0 800A16C0 AFA90054 */ sw $t1, 0x54($sp) -/* 0A22C4 800A16C4 0C01A142 */ jal func_80068508 -/* 0A22C8 800A16C8 AFAA005C */ sw $t2, 0x5c($sp) -/* 0A22CC 800A16CC 444DF800 */ cfc1 $t5, $31 -/* 0A22D0 800A16D0 3C068012 */ lui $a2, %hi(D_80126CDC) # $a2, 0x8012 -/* 0A22D4 800A16D4 24C66CDC */ addiu $a2, %lo(D_80126CDC) # addiu $a2, $a2, 0x6cdc -/* 0A22D8 800A16D8 8CC20000 */ lw $v0, ($a2) -/* 0A22DC 800A16DC 35A10003 */ ori $at, $t5, 3 -/* 0A22E0 800A16E0 38210002 */ xori $at, $at, 2 -/* 0A22E4 800A16E4 44C1F800 */ ctc1 $at, $31 -/* 0A22E8 800A16E8 C444064C */ lwc1 $f4, 0x64c($v0) -/* 0A22EC 800A16EC 8FA90054 */ lw $t1, 0x54($sp) -/* 0A22F0 800A16F0 460021A4 */ cvt.w.s $f6, $f4 -/* 0A22F4 800A16F4 8FA8005C */ lw $t0, 0x5c($sp) -/* 0A22F8 800A16F8 44CDF800 */ ctc1 $t5, $31 -/* 0A22FC 800A16FC 44193000 */ mfc1 $t9, $f6 -/* 0A2300 800A1700 00003825 */ move $a3, $zero -/* 0A2304 800A1704 444FF800 */ cfc1 $t7, $31 -/* 0A2308 800A1708 AFB90044 */ sw $t9, 0x44($sp) -/* 0A230C 800A170C 35E10003 */ ori $at, $t7, 3 -/* 0A2310 800A1710 38210002 */ xori $at, $at, 2 -/* 0A2314 800A1714 44C1F800 */ ctc1 $at, $31 -/* 0A2318 800A1718 C4480650 */ lwc1 $f8, 0x650($v0) -/* 0A231C 800A171C 44998000 */ mtc1 $t9, $f16 -/* 0A2320 800A1720 460042A4 */ cvt.w.s $f10, $f8 -/* 0A2324 800A1724 35A10003 */ ori $at, $t5, 3 -/* 0A2328 800A1728 44CFF800 */ ctc1 $t7, $31 -/* 0A232C 800A172C 440F5000 */ mfc1 $t7, $f10 -/* 0A2330 800A1730 468083A0 */ cvt.s.w $f14, $f16 -/* 0A2334 800A1734 AFAF003C */ sw $t7, 0x3c($sp) -/* 0A2338 800A1738 C452066C */ lwc1 $f18, 0x66c($v0) -/* 0A233C 800A173C 38210002 */ xori $at, $at, 2 -/* 0A2340 800A1740 460E9101 */ sub.s $f4, $f18, $f14 -/* 0A2344 800A1744 448F4000 */ mtc1 $t7, $f8 -/* 0A2348 800A1748 44C1F800 */ ctc1 $at, $31 -/* 0A234C 800A174C 00000000 */ nop -/* 0A2350 800A1750 460021A4 */ cvt.w.s $f6, $f4 -/* 0A2354 800A1754 44CDF800 */ ctc1 $t5, $31 -/* 0A2358 800A1758 440E3000 */ mfc1 $t6, $f6 -/* 0A235C 800A175C 468042A0 */ cvt.s.w $f10, $f8 -/* 0A2360 800A1760 AFAE0040 */ sw $t6, 0x40($sp) -/* 0A2364 800A1764 448E3000 */ mtc1 $t6, $f6 -/* 0A2368 800A1768 E7AA001C */ swc1 $f10, 0x1c($sp) -/* 0A236C 800A176C C4500670 */ lwc1 $f16, 0x670($v0) -/* 0A2370 800A1770 00000000 */ nop -/* 0A2374 800A1774 460A8481 */ sub.s $f18, $f16, $f10 -/* 0A2378 800A1778 4458F800 */ cfc1 $t8, $31 -/* 0A237C 800A177C 00000000 */ nop -/* 0A2380 800A1780 37010003 */ ori $at, $t8, 3 -/* 0A2384 800A1784 38210002 */ xori $at, $at, 2 -/* 0A2388 800A1788 44C1F800 */ ctc1 $at, $31 -/* 0A238C 800A178C 3C01425C */ li $at, 0x425C0000 # 55.000000 -/* 0A2390 800A1790 46009124 */ cvt.w.s $f4, $f18 -/* 0A2394 800A1794 44811000 */ mtc1 $at, $f2 -/* 0A2398 800A1798 3C01800F */ lui $at, %hi(D_800E8724) # $at, 0x800f -/* 0A239C 800A179C 44192000 */ mfc1 $t9, $f4 -/* 0A23A0 800A17A0 44D8F800 */ ctc1 $t8, $31 -/* 0A23A4 800A17A4 C4218720 */ lwc1 $f1, %lo(D_800E8720)($at) -/* 0A23A8 800A17A8 C4208724 */ lwc1 $f0, %lo(D_800E8724)($at) -/* 0A23AC 800A17AC AFB90038 */ sw $t9, 0x38($sp) -/* 0A23B0 800A17B0 46803320 */ cvt.s.w $f12, $f6 -.L800A17B4: -/* 0A23B4 800A17B4 8D0D0000 */ lw $t5, ($t0) -/* 0A23B8 800A17B8 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 -/* 0A23BC 800A17BC 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) -/* 0A23C0 800A17C0 8DA20064 */ lw $v0, 0x64($t5) -/* 0A23C4 800A17C4 28610003 */ slti $at, $v1, 3 -/* 0A23C8 800A17C8 14200006 */ bnez $at, .L800A17E4 -/* 0A23CC 800A17CC 00402025 */ move $a0, $v0 -/* 0A23D0 800A17D0 844F0000 */ lh $t7, ($v0) -/* 0A23D4 800A17D4 85380000 */ lh $t8, ($t1) -/* 0A23D8 800A17D8 00000000 */ nop -/* 0A23DC 800A17DC 15F80017 */ bne $t7, $t8, .L800A183C -/* 0A23E0 800A17E0 2419FFFE */ li $t9, -2 -.L800A17E4: -/* 0A23E4 800A17E4 8FA50064 */ lw $a1, 0x64($sp) -/* 0A23E8 800A17E8 AFA7002C */ sw $a3, 0x2c($sp) -/* 0A23EC 800A17EC AFA80028 */ sw $t0, 0x28($sp) -/* 0A23F0 800A17F0 AFA90054 */ sw $t1, 0x54($sp) -/* 0A23F4 800A17F4 E7AC0018 */ swc1 $f12, 0x18($sp) -/* 0A23F8 800A17F8 0C028669 */ jal func_800A19A4 -/* 0A23FC 800A17FC E7AE0020 */ swc1 $f14, 0x20($sp) -/* 0A2400 800A1800 3C01800F */ lui $at, %hi(D_800E872C) # $at, 0x800f -/* 0A2404 800A1804 C4218728 */ lwc1 $f1, %lo(D_800E8728)($at) -/* 0A2408 800A1808 C420872C */ lwc1 $f0, %lo(D_800E872C)($at) -/* 0A240C 800A180C 3C01425C */ li $at, 0x425C0000 # 55.000000 -/* 0A2410 800A1810 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 -/* 0A2414 800A1814 3C068012 */ lui $a2, %hi(D_80126CDC) # $a2, 0x8012 -/* 0A2418 800A1818 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) -/* 0A241C 800A181C 44811000 */ mtc1 $at, $f2 -/* 0A2420 800A1820 8FA7002C */ lw $a3, 0x2c($sp) -/* 0A2424 800A1824 8FA80028 */ lw $t0, 0x28($sp) -/* 0A2428 800A1828 8FA90054 */ lw $t1, 0x54($sp) -/* 0A242C 800A182C C7AC0018 */ lwc1 $f12, 0x18($sp) -/* 0A2430 800A1830 C7AE0020 */ lwc1 $f14, 0x20($sp) -/* 0A2434 800A1834 24C66CDC */ addiu $a2, %lo(D_80126CDC) # addiu $a2, $a2, 0x6cdc -/* 0A2438 800A1838 2419FFFE */ li $t9, -2 -.L800A183C: -/* 0A243C 800A183C 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e -/* 0A2440 800A1840 AC392834 */ sw $t9, %lo(D_800E2834)($at) -/* 0A2444 800A1844 8CC20000 */ lw $v0, ($a2) -/* 0A2448 800A1848 24010001 */ li $at, 1 -/* 0A244C 800A184C 1461000A */ bne $v1, $at, .L800A1878 -/* 0A2450 800A1850 24E70004 */ addiu $a3, $a3, 4 -/* 0A2454 800A1854 3C014288 */ li $at, 0x42880000 # 68.000000 -/* 0A2458 800A1858 44818000 */ mtc1 $at, $f16 -/* 0A245C 800A185C C448064C */ lwc1 $f8, 0x64c($v0) -/* 0A2460 800A1860 00000000 */ nop -/* 0A2464 800A1864 46104280 */ add.s $f10, $f8, $f16 -/* 0A2468 800A1868 E44A064C */ swc1 $f10, 0x64c($v0) -/* 0A246C 800A186C 8CC20000 */ lw $v0, ($a2) -/* 0A2470 800A1870 1000002B */ b .L800A1920 -/* 0A2474 800A1874 C452064C */ lwc1 $f18, 0x64c($v0) -.L800A1878: -/* 0A2478 800A1878 24010002 */ li $at, 2 -/* 0A247C 800A187C 14610027 */ bne $v1, $at, .L800A191C -/* 0A2480 800A1880 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 -/* 0A2484 800A1884 E44E064C */ swc1 $f14, 0x64c($v0) -/* 0A2488 800A1888 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) -/* 0A248C 800A188C 00000000 */ nop -/* 0A2490 800A1890 15C00014 */ bnez $t6, .L800A18E4 -/* 0A2494 800A1894 00000000 */ nop -/* 0A2498 800A1898 8CC20000 */ lw $v0, ($a2) -/* 0A249C 800A189C 00000000 */ nop -/* 0A24A0 800A18A0 C4520650 */ lwc1 $f18, 0x650($v0) -/* 0A24A4 800A18A4 00000000 */ nop -/* 0A24A8 800A18A8 46009121 */ cvt.d.s $f4, $f18 -/* 0A24AC 800A18AC 46202180 */ add.d $f6, $f4, $f0 -/* 0A24B0 800A18B0 46203220 */ cvt.s.d $f8, $f6 -/* 0A24B4 800A18B4 E4480650 */ swc1 $f8, 0x650($v0) -/* 0A24B8 800A18B8 8CC20000 */ lw $v0, ($a2) -/* 0A24BC 800A18BC 00000000 */ nop -/* 0A24C0 800A18C0 C4500670 */ lwc1 $f16, 0x670($v0) -/* 0A24C4 800A18C4 00000000 */ nop -/* 0A24C8 800A18C8 460082A1 */ cvt.d.s $f10, $f16 -/* 0A24CC 800A18CC 46205480 */ add.d $f18, $f10, $f0 -/* 0A24D0 800A18D0 46209120 */ cvt.s.d $f4, $f18 -/* 0A24D4 800A18D4 E4440670 */ swc1 $f4, 0x670($v0) -/* 0A24D8 800A18D8 8CC20000 */ lw $v0, ($a2) -/* 0A24DC 800A18DC 10000010 */ b .L800A1920 -/* 0A24E0 800A18E0 C452064C */ lwc1 $f18, 0x64c($v0) -.L800A18E4: -/* 0A24E4 800A18E4 8CC20000 */ lw $v0, ($a2) -/* 0A24E8 800A18E8 00000000 */ nop -/* 0A24EC 800A18EC C4460650 */ lwc1 $f6, 0x650($v0) -/* 0A24F0 800A18F0 00000000 */ nop -/* 0A24F4 800A18F4 46023200 */ add.s $f8, $f6, $f2 -/* 0A24F8 800A18F8 E4480650 */ swc1 $f8, 0x650($v0) -/* 0A24FC 800A18FC 8CC20000 */ lw $v0, ($a2) -/* 0A2500 800A1900 00000000 */ nop -/* 0A2504 800A1904 C4500670 */ lwc1 $f16, 0x670($v0) -/* 0A2508 800A1908 00000000 */ nop -/* 0A250C 800A190C 46028280 */ add.s $f10, $f16, $f2 -/* 0A2510 800A1910 E44A0670 */ swc1 $f10, 0x670($v0) -/* 0A2514 800A1914 8CC20000 */ lw $v0, ($a2) -/* 0A2518 800A1918 00000000 */ nop -.L800A191C: -/* 0A251C 800A191C C452064C */ lwc1 $f18, 0x64c($v0) -.L800A1920: -/* 0A2520 800A1920 24010010 */ li $at, 16 -/* 0A2524 800A1924 460C9100 */ add.s $f4, $f18, $f12 -/* 0A2528 800A1928 25080004 */ addiu $t0, $t0, 4 -/* 0A252C 800A192C 14E1FFA1 */ bne $a3, $at, .L800A17B4 -/* 0A2530 800A1930 E444066C */ swc1 $f4, 0x66c($v0) -/* 0A2534 800A1934 8CCD0000 */ lw $t5, ($a2) -/* 0A2538 800A1938 00002025 */ move $a0, $zero -/* 0A253C 800A193C E5AE064C */ swc1 $f14, 0x64c($t5) -/* 0A2540 800A1940 8FB80040 */ lw $t8, 0x40($sp) -/* 0A2544 800A1944 8FAF0044 */ lw $t7, 0x44($sp) -/* 0A2548 800A1948 8CCE0000 */ lw $t6, ($a2) -/* 0A254C 800A194C 01F8C821 */ addu $t9, $t7, $t8 -/* 0A2550 800A1950 44993000 */ mtc1 $t9, $f6 -/* 0A2554 800A1954 00000000 */ nop -/* 0A2558 800A1958 46803220 */ cvt.s.w $f8, $f6 -/* 0A255C 800A195C E5C8066C */ swc1 $f8, 0x66c($t6) -/* 0A2560 800A1960 8CCD0000 */ lw $t5, ($a2) -/* 0A2564 800A1964 C7B0001C */ lwc1 $f16, 0x1c($sp) -/* 0A2568 800A1968 00000000 */ nop -/* 0A256C 800A196C E5B00650 */ swc1 $f16, 0x650($t5) -/* 0A2570 800A1970 8FB80038 */ lw $t8, 0x38($sp) -/* 0A2574 800A1974 8FAF003C */ lw $t7, 0x3c($sp) -/* 0A2578 800A1978 8CCE0000 */ lw $t6, ($a2) -/* 0A257C 800A197C 01F8C821 */ addu $t9, $t7, $t8 -/* 0A2580 800A1980 44995000 */ mtc1 $t9, $f10 -/* 0A2584 800A1984 00000000 */ nop -/* 0A2588 800A1988 468054A0 */ cvt.s.w $f18, $f10 -/* 0A258C 800A198C 0C01A142 */ jal func_80068508 -/* 0A2590 800A1990 E5D20670 */ swc1 $f18, 0x670($t6) -.L800A1994: -/* 0A2594 800A1994 8FBF0014 */ lw $ra, 0x14($sp) -.L800A1998: -/* 0A2598 800A1998 27BD0060 */ addiu $sp, $sp, 0x60 -/* 0A259C 800A199C 03E00008 */ jr $ra -/* 0A25A0 800A19A0 00000000 */ nop - -glabel func_800A19A4 -/* 0A25A4 800A19A4 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 0A25A8 800A19A8 AFB20028 */ sw $s2, 0x28($sp) -/* 0A25AC 800A19AC 444EF800 */ cfc1 $t6, $31 -/* 0A25B0 800A19B0 3C128012 */ lui $s2, %hi(D_80126CDC) # $s2, 0x8012 -/* 0A25B4 800A19B4 26526CDC */ addiu $s2, %lo(D_80126CDC) # addiu $s2, $s2, 0x6cdc -/* 0A25B8 800A19B8 8E420000 */ lw $v0, ($s2) -/* 0A25BC 800A19BC 35C10003 */ ori $at, $t6, 3 -/* 0A25C0 800A19C0 AFBF003C */ sw $ra, 0x3c($sp) -/* 0A25C4 800A19C4 AFB60038 */ sw $s6, 0x38($sp) -/* 0A25C8 800A19C8 AFB50034 */ sw $s5, 0x34($sp) -/* 0A25CC 800A19CC AFB40030 */ sw $s4, 0x30($sp) -/* 0A25D0 800A19D0 AFB3002C */ sw $s3, 0x2c($sp) -/* 0A25D4 800A19D4 AFB10024 */ sw $s1, 0x24($sp) -/* 0A25D8 800A19D8 AFB00020 */ sw $s0, 0x20($sp) -/* 0A25DC 800A19DC E7B50018 */ swc1 $f21, 0x18($sp) -/* 0A25E0 800A19E0 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 0A25E4 800A19E4 AFA50054 */ sw $a1, 0x54($sp) -/* 0A25E8 800A19E8 38210002 */ xori $at, $at, 2 -/* 0A25EC 800A19EC 44C1F800 */ ctc1 $at, $31 -/* 0A25F0 800A19F0 C444066C */ lwc1 $f4, 0x66c($v0) -/* 0A25F4 800A19F4 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 -/* 0A25F8 800A19F8 460021A4 */ cvt.w.s $f6, $f4 -/* 0A25FC 800A19FC 3C018012 */ lui $at, %hi(D_80126CD5) # $at, 0x8012 -/* 0A2600 800A1A00 440F3000 */ mfc1 $t7, $f6 -/* 0A2604 800A1A04 24080001 */ li $t0, 1 -/* 0A2608 800A1A08 AFAF0040 */ sw $t7, 0x40($sp) -/* 0A260C 800A1A0C 80980003 */ lb $t8, 3($a0) -/* 0A2610 800A1A10 44CEF800 */ ctc1 $t6, $31 -/* 0A2614 800A1A14 27190038 */ addiu $t9, $t8, 0x38 -/* 0A2618 800A1A18 A4590646 */ sh $t9, 0x646($v0) -/* 0A261C 800A1A1C 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) -/* 0A2620 800A1A20 A0286CD5 */ sb $t0, %lo(D_80126CD5)($at) -/* 0A2624 800A1A24 28610003 */ slti $at, $v1, 3 -/* 0A2628 800A1A28 14200008 */ bnez $at, .L800A1A4C -/* 0A262C 800A1A2C 00809825 */ move $s3, $a0 -/* 0A2630 800A1A30 24110003 */ li $s1, 3 -/* 0A2634 800A1A34 1623000F */ bne $s1, $v1, .L800A1A74 -/* 0A2638 800A1A38 00000000 */ nop -/* 0A263C 800A1A3C 84890000 */ lh $t1, ($a0) -/* 0A2640 800A1A40 2401FFFF */ li $at, -1 -/* 0A2644 800A1A44 1521000B */ bne $t1, $at, .L800A1A74 -/* 0A2648 800A1A48 00000000 */ nop -.L800A1A4C: -/* 0A264C 800A1A4C 8E470000 */ lw $a3, ($s2) -/* 0A2650 800A1A50 3C148012 */ lui $s4, 0x8012 -/* 0A2654 800A1A54 3C158012 */ lui $s5, 0x8012 -/* 0A2658 800A1A58 3C168012 */ lui $s6, 0x8012 -/* 0A265C 800A1A5C 26C66D04 */ addiu $a2, $s6, 0x6d04 -/* 0A2660 800A1A60 26A56D00 */ addiu $a1, $s5, 0x6d00 -/* 0A2664 800A1A64 26846CFC */ addiu $a0, $s4, 0x6cfc -/* 0A2668 800A1A68 24110003 */ li $s1, 3 -/* 0A266C 800A1A6C 0C02A980 */ jal func_800AA600 -/* 0A2670 800A1A70 24E70640 */ addiu $a3, $a3, 0x640 -.L800A1A74: -/* 0A2674 800A1A74 8E4A0000 */ lw $t2, ($s2) -/* 0A2678 800A1A78 3C148012 */ lui $s4, %hi(D_80126CFC) # $s4, 0x8012 -/* 0A267C 800A1A7C 8142067A */ lb $v0, 0x67a($t2) -/* 0A2680 800A1A80 3C158012 */ lui $s5, %hi(D_80126D00) # $s5, 0x8012 -/* 0A2684 800A1A84 3C168012 */ lui $s6, %hi(D_80126D04) # $s6, 0x8012 -/* 0A2688 800A1A88 26D66D04 */ addiu $s6, %lo(D_80126D04) # addiu $s6, $s6, 0x6d04 -/* 0A268C 800A1A8C 26B56D00 */ addiu $s5, %lo(D_80126D00) # addiu $s5, $s5, 0x6d00 -/* 0A2690 800A1A90 04410005 */ bgez $v0, .L800A1AA8 -/* 0A2694 800A1A94 26946CFC */ addiu $s4, %lo(D_80126CFC) # addiu $s4, $s4, 0x6cfc -/* 0A2698 800A1A98 00025840 */ sll $t3, $v0, 1 -/* 0A269C 800A1A9C 256C0100 */ addiu $t4, $t3, 0x100 -/* 0A26A0 800A1AA0 10000005 */ b .L800A1AB8 -/* 0A26A4 800A1AA4 AFAC0044 */ sw $t4, 0x44($sp) -.L800A1AA8: -/* 0A26A8 800A1AA8 00026840 */ sll $t5, $v0, 1 -/* 0A26AC 800A1AAC 240E00FF */ li $t6, 255 -/* 0A26B0 800A1AB0 01CD7823 */ subu $t7, $t6, $t5 -/* 0A26B4 800A1AB4 AFAF0044 */ sw $t7, 0x44($sp) -.L800A1AB8: -/* 0A26B8 800A1AB8 8FB80044 */ lw $t8, 0x44($sp) -/* 0A26BC 800A1ABC 241900FE */ li $t9, 254 -/* 0A26C0 800A1AC0 2B0100FF */ slti $at, $t8, 0xff -/* 0A26C4 800A1AC4 14200002 */ bnez $at, .L800A1AD0 -/* 0A26C8 800A1AC8 00000000 */ nop -/* 0A26CC 800A1ACC AFB90044 */ sw $t9, 0x44($sp) -.L800A1AD0: -/* 0A26D0 800A1AD0 82680193 */ lb $t0, 0x193($s3) -/* 0A26D4 800A1AD4 00008025 */ move $s0, $zero -/* 0A26D8 800A1AD8 19000016 */ blez $t0, .L800A1B34 -/* 0A26DC 800A1ADC 3C014140 */ li $at, 0x41400000 # 12.000000 -/* 0A26E0 800A1AE0 4481A000 */ mtc1 $at, $f20 -/* 0A26E4 800A1AE4 00000000 */ nop -.L800A1AE8: -/* 0A26E8 800A1AE8 8E470000 */ lw $a3, ($s2) -/* 0A26EC 800A1AEC 02802025 */ move $a0, $s4 -/* 0A26F0 800A1AF0 02A02825 */ move $a1, $s5 -/* 0A26F4 800A1AF4 02C03025 */ move $a2, $s6 -/* 0A26F8 800A1AF8 0C02A980 */ jal func_800AA600 -/* 0A26FC 800A1AFC 24E70660 */ addiu $a3, $a3, 0x660 -/* 0A2700 800A1B00 8E420000 */ lw $v0, ($s2) -/* 0A2704 800A1B04 26100001 */ addiu $s0, $s0, 1 -/* 0A2708 800A1B08 C448066C */ lwc1 $f8, 0x66c($v0) -/* 0A270C 800A1B0C 00000000 */ nop -/* 0A2710 800A1B10 46144280 */ add.s $f10, $f8, $f20 -/* 0A2714 800A1B14 E44A066C */ swc1 $f10, 0x66c($v0) -/* 0A2718 800A1B18 82690193 */ lb $t1, 0x193($s3) -/* 0A271C 800A1B1C 00000000 */ nop -/* 0A2720 800A1B20 0209082A */ slt $at, $s0, $t1 -/* 0A2724 800A1B24 10200004 */ beqz $at, .L800A1B38 -/* 0A2728 800A1B28 3C014140 */ lui $at, 0x4140 -/* 0A272C 800A1B2C 1611FFEE */ bne $s0, $s1, .L800A1AE8 -/* 0A2730 800A1B30 00000000 */ nop -.L800A1B34: -/* 0A2734 800A1B34 3C014140 */ li $at, 0x41400000 # 12.000000 -.L800A1B38: -/* 0A2738 800A1B38 8FAA0044 */ lw $t2, 0x44($sp) -/* 0A273C 800A1B3C 4481A000 */ mtc1 $at, $f20 -/* 0A2740 800A1B40 2401FF00 */ li $at, -256 -/* 0A2744 800A1B44 01415825 */ or $t3, $t2, $at -/* 0A2748 800A1B48 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e -/* 0A274C 800A1B4C AC2B2834 */ sw $t3, %lo(D_800E2834)($at) -/* 0A2750 800A1B50 826C01CF */ lb $t4, 0x1cf($s3) -/* 0A2754 800A1B54 02008825 */ move $s1, $s0 -/* 0A2758 800A1B58 19800017 */ blez $t4, .L800A1BB8 -/* 0A275C 800A1B5C 00008025 */ move $s0, $zero -/* 0A2760 800A1B60 2A210003 */ slti $at, $s1, 3 -/* 0A2764 800A1B64 10200015 */ beqz $at, .L800A1BBC -/* 0A2768 800A1B68 8FAD0040 */ lw $t5, 0x40($sp) -.L800A1B6C: -/* 0A276C 800A1B6C 8E470000 */ lw $a3, ($s2) -/* 0A2770 800A1B70 02802025 */ move $a0, $s4 -/* 0A2774 800A1B74 02A02825 */ move $a1, $s5 -/* 0A2778 800A1B78 02C03025 */ move $a2, $s6 -/* 0A277C 800A1B7C 0C02A980 */ jal func_800AA600 -/* 0A2780 800A1B80 24E70660 */ addiu $a3, $a3, 0x660 -/* 0A2784 800A1B84 8E420000 */ lw $v0, ($s2) -/* 0A2788 800A1B88 26100001 */ addiu $s0, $s0, 1 -/* 0A278C 800A1B8C C450066C */ lwc1 $f16, 0x66c($v0) -/* 0A2790 800A1B90 26310001 */ addiu $s1, $s1, 1 -/* 0A2794 800A1B94 46148480 */ add.s $f18, $f16, $f20 -/* 0A2798 800A1B98 E452066C */ swc1 $f18, 0x66c($v0) -/* 0A279C 800A1B9C 826E01CF */ lb $t6, 0x1cf($s3) -/* 0A27A0 800A1BA0 00000000 */ nop -/* 0A27A4 800A1BA4 020E082A */ slt $at, $s0, $t6 -/* 0A27A8 800A1BA8 10200003 */ beqz $at, .L800A1BB8 -/* 0A27AC 800A1BAC 2A210003 */ slti $at, $s1, 3 -/* 0A27B0 800A1BB0 1420FFEE */ bnez $at, .L800A1B6C -/* 0A27B4 800A1BB4 00000000 */ nop -.L800A1BB8: -/* 0A27B8 800A1BB8 8FAD0040 */ lw $t5, 0x40($sp) -.L800A1BBC: -/* 0A27BC 800A1BBC 8E4F0000 */ lw $t7, ($s2) -/* 0A27C0 800A1BC0 448D2000 */ mtc1 $t5, $f4 -/* 0A27C4 800A1BC4 3C018012 */ lui $at, %hi(D_80126CD5) # $at, 0x8012 -/* 0A27C8 800A1BC8 468021A0 */ cvt.s.w $f6, $f4 -/* 0A27CC 800A1BCC E5E6066C */ swc1 $f6, 0x66c($t7) -/* 0A27D0 800A1BD0 8FBF003C */ lw $ra, 0x3c($sp) -/* 0A27D4 800A1BD4 8FB60038 */ lw $s6, 0x38($sp) -/* 0A27D8 800A1BD8 8FB50034 */ lw $s5, 0x34($sp) -/* 0A27DC 800A1BDC 8FB40030 */ lw $s4, 0x30($sp) -/* 0A27E0 800A1BE0 8FB3002C */ lw $s3, 0x2c($sp) -/* 0A27E4 800A1BE4 8FB20028 */ lw $s2, 0x28($sp) -/* 0A27E8 800A1BE8 8FB10024 */ lw $s1, 0x24($sp) -/* 0A27EC 800A1BEC 8FB00020 */ lw $s0, 0x20($sp) -/* 0A27F0 800A1BF0 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 0A27F4 800A1BF4 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 0A27F8 800A1BF8 A0206CD5 */ sb $zero, %lo(D_80126CD5)($at) -/* 0A27FC 800A1BFC 03E00008 */ jr $ra -/* 0A2800 800A1C00 27BD0050 */ addiu $sp, $sp, 0x50 - -glabel func_800A1C04 -/* 0A2804 800A1C04 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 0A2808 800A1C08 3C0F8012 */ lui $t7, %hi(D_80126D37) # $t7, 0x8012 -/* 0A280C 800A1C0C 91EF6D37 */ lbu $t7, %lo(D_80126D37)($t7) -/* 0A2810 800A1C10 AFBF0014 */ sw $ra, 0x14($sp) -/* 0A2814 800A1C14 AFA40040 */ sw $a0, 0x40($sp) -/* 0A2818 800A1C18 AFA50044 */ sw $a1, 0x44($sp) -/* 0A281C 800A1C1C AFA60048 */ sw $a2, 0x48($sp) -/* 0A2820 800A1C20 8CA70064 */ lw $a3, 0x64($a1) -/* 0A2824 800A1C24 24010001 */ li $at, 1 -/* 0A2828 800A1C28 15E10005 */ bne $t7, $at, .L800A1C40 -/* 0A282C 800A1C2C 24040001 */ li $a0, 1 -/* 0A2830 800A1C30 80F801D8 */ lb $t8, 0x1d8($a3) -/* 0A2834 800A1C34 00000000 */ nop -/* 0A2838 800A1C38 17000080 */ bnez $t8, .L800A1E3C -/* 0A283C 800A1C3C 8FBF0014 */ lw $ra, 0x14($sp) -.L800A1C40: -/* 0A2840 800A1C40 0C01A142 */ jal func_80068508 -/* 0A2844 800A1C44 AFA70038 */ sw $a3, 0x38($sp) -/* 0A2848 800A1C48 8FA40040 */ lw $a0, 0x40($sp) -/* 0A284C 800A1C4C 8FA50048 */ lw $a1, 0x48($sp) -/* 0A2850 800A1C50 0C028F39 */ jal func_800A3CE4 -/* 0A2854 800A1C54 00000000 */ nop -/* 0A2858 800A1C58 8FA40044 */ lw $a0, 0x44($sp) -/* 0A285C 800A1C5C 8FA50048 */ lw $a1, 0x48($sp) -/* 0A2860 800A1C60 0C029D48 */ jal func_800A7520 -/* 0A2864 800A1C64 00000000 */ nop -/* 0A2868 800A1C68 0C006E9D */ jal func_8001BA74 -/* 0A286C 800A1C6C 27A40034 */ addiu $a0, $sp, 0x34 -/* 0A2870 800A1C70 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 -/* 0A2874 800A1C74 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) -/* 0A2878 800A1C78 8FA70038 */ lw $a3, 0x38($sp) -/* 0A287C 800A1C7C 24010001 */ li $at, 1 -/* 0A2880 800A1C80 10610005 */ beq $v1, $at, .L800A1C98 -/* 0A2884 800A1C84 240A0002 */ li $t2, 2 -/* 0A2888 800A1C88 106A000A */ beq $v1, $t2, .L800A1CB4 -/* 0A288C 800A1C8C 8FB90034 */ lw $t9, 0x34($sp) -/* 0A2890 800A1C90 10000065 */ b .L800A1E28 -/* 0A2894 800A1C94 8FA50048 */ lw $a1, 0x48($sp) -.L800A1C98: -/* 0A2898 800A1C98 8FA40044 */ lw $a0, 0x44($sp) -/* 0A289C 800A1C9C 8FA50048 */ lw $a1, 0x48($sp) -/* 0A28A0 800A1CA0 0C028792 */ jal func_800A1E48 -/* 0A28A4 800A1CA4 00000000 */ nop -/* 0A28A8 800A1CA8 10000061 */ b .L800A1E30 -/* 0A28AC 800A1CAC 00000000 */ nop -/* 0A28B0 800A1CB0 8FB90034 */ lw $t9, 0x34($sp) -.L800A1CB4: -/* 0A28B4 800A1CB4 00002825 */ move $a1, $zero -/* 0A28B8 800A1CB8 1B200056 */ blez $t9, .L800A1E14 -/* 0A28BC 800A1CBC 00003025 */ move $a2, $zero -/* 0A28C0 800A1CC0 33230003 */ andi $v1, $t9, 3 -/* 0A28C4 800A1CC4 10600017 */ beqz $v1, .L800A1D24 -/* 0A28C8 800A1CC8 00604825 */ move $t1, $v1 -/* 0A28CC 800A1CCC 00005880 */ sll $t3, $zero, 2 -/* 0A28D0 800A1CD0 004B2021 */ addu $a0, $v0, $t3 -/* 0A28D4 800A1CD4 2408FFFF */ li $t0, -1 -.L800A1CD8: -/* 0A28D8 800A1CD8 8C8C0000 */ lw $t4, ($a0) -/* 0A28DC 800A1CDC 24C60001 */ addiu $a2, $a2, 1 -/* 0A28E0 800A1CE0 8D830064 */ lw $v1, 0x64($t4) -/* 0A28E4 800A1CE4 00000000 */ nop -/* 0A28E8 800A1CE8 846D0000 */ lh $t5, ($v1) -/* 0A28EC 800A1CEC 00000000 */ nop -/* 0A28F0 800A1CF0 110D0006 */ beq $t0, $t5, .L800A1D0C -/* 0A28F4 800A1CF4 00000000 */ nop -/* 0A28F8 800A1CF8 806E01D8 */ lb $t6, 0x1d8($v1) -/* 0A28FC 800A1CFC 00000000 */ nop -/* 0A2900 800A1D00 11C00002 */ beqz $t6, .L800A1D0C -/* 0A2904 800A1D04 00000000 */ nop -/* 0A2908 800A1D08 24A50001 */ addiu $a1, $a1, 1 -.L800A1D0C: -/* 0A290C 800A1D0C 1526FFF2 */ bne $t1, $a2, .L800A1CD8 -/* 0A2910 800A1D10 24840004 */ addiu $a0, $a0, 4 -/* 0A2914 800A1D14 8FAF0034 */ lw $t7, 0x34($sp) -/* 0A2918 800A1D18 00000000 */ nop -/* 0A291C 800A1D1C 10CF003D */ beq $a2, $t7, .L800A1E14 -/* 0A2920 800A1D20 00000000 */ nop -.L800A1D24: -/* 0A2924 800A1D24 8FB80034 */ lw $t8, 0x34($sp) -/* 0A2928 800A1D28 00065880 */ sll $t3, $a2, 2 -/* 0A292C 800A1D2C 0018C880 */ sll $t9, $t8, 2 -/* 0A2930 800A1D30 03224821 */ addu $t1, $t9, $v0 -/* 0A2934 800A1D34 004B2021 */ addu $a0, $v0, $t3 -/* 0A2938 800A1D38 2408FFFF */ li $t0, -1 -.L800A1D3C: -/* 0A293C 800A1D3C 8C8C0000 */ lw $t4, ($a0) -/* 0A2940 800A1D40 00000000 */ nop -/* 0A2944 800A1D44 8D830064 */ lw $v1, 0x64($t4) -/* 0A2948 800A1D48 00000000 */ nop -/* 0A294C 800A1D4C 846D0000 */ lh $t5, ($v1) -/* 0A2950 800A1D50 00000000 */ nop -/* 0A2954 800A1D54 110D0006 */ beq $t0, $t5, .L800A1D70 -/* 0A2958 800A1D58 00000000 */ nop -/* 0A295C 800A1D5C 806E01D8 */ lb $t6, 0x1d8($v1) -/* 0A2960 800A1D60 00000000 */ nop -/* 0A2964 800A1D64 11C00002 */ beqz $t6, .L800A1D70 -/* 0A2968 800A1D68 00000000 */ nop -/* 0A296C 800A1D6C 24A50001 */ addiu $a1, $a1, 1 -.L800A1D70: -/* 0A2970 800A1D70 8C8F0004 */ lw $t7, 4($a0) -/* 0A2974 800A1D74 00000000 */ nop -/* 0A2978 800A1D78 8DE70064 */ lw $a3, 0x64($t7) -/* 0A297C 800A1D7C 00000000 */ nop -/* 0A2980 800A1D80 84F80000 */ lh $t8, ($a3) -/* 0A2984 800A1D84 00000000 */ nop -/* 0A2988 800A1D88 11180006 */ beq $t0, $t8, .L800A1DA4 -/* 0A298C 800A1D8C 00000000 */ nop -/* 0A2990 800A1D90 80F901D8 */ lb $t9, 0x1d8($a3) -/* 0A2994 800A1D94 00000000 */ nop -/* 0A2998 800A1D98 13200002 */ beqz $t9, .L800A1DA4 -/* 0A299C 800A1D9C 00000000 */ nop -/* 0A29A0 800A1DA0 24A50001 */ addiu $a1, $a1, 1 -.L800A1DA4: -/* 0A29A4 800A1DA4 8C8B0008 */ lw $t3, 8($a0) -/* 0A29A8 800A1DA8 00000000 */ nop -/* 0A29AC 800A1DAC 8D670064 */ lw $a3, 0x64($t3) -/* 0A29B0 800A1DB0 00000000 */ nop -/* 0A29B4 800A1DB4 84EC0000 */ lh $t4, ($a3) -/* 0A29B8 800A1DB8 00000000 */ nop -/* 0A29BC 800A1DBC 110C0006 */ beq $t0, $t4, .L800A1DD8 -/* 0A29C0 800A1DC0 00000000 */ nop -/* 0A29C4 800A1DC4 80ED01D8 */ lb $t5, 0x1d8($a3) -/* 0A29C8 800A1DC8 00000000 */ nop -/* 0A29CC 800A1DCC 11A00002 */ beqz $t5, .L800A1DD8 -/* 0A29D0 800A1DD0 00000000 */ nop -/* 0A29D4 800A1DD4 24A50001 */ addiu $a1, $a1, 1 -.L800A1DD8: -/* 0A29D8 800A1DD8 8C8E000C */ lw $t6, 0xc($a0) -/* 0A29DC 800A1DDC 24840010 */ addiu $a0, $a0, 0x10 -/* 0A29E0 800A1DE0 8DC70064 */ lw $a3, 0x64($t6) -/* 0A29E4 800A1DE4 00000000 */ nop -/* 0A29E8 800A1DE8 84EF0000 */ lh $t7, ($a3) -/* 0A29EC 800A1DEC 00000000 */ nop -/* 0A29F0 800A1DF0 110F0006 */ beq $t0, $t7, .L800A1E0C -/* 0A29F4 800A1DF4 00000000 */ nop -/* 0A29F8 800A1DF8 80F801D8 */ lb $t8, 0x1d8($a3) -/* 0A29FC 800A1DFC 00000000 */ nop -/* 0A2A00 800A1E00 13000002 */ beqz $t8, .L800A1E0C -/* 0A2A04 800A1E04 00000000 */ nop -/* 0A2A08 800A1E08 24A50001 */ addiu $a1, $a1, 1 -.L800A1E0C: -/* 0A2A0C 800A1E0C 1489FFCB */ bne $a0, $t1, .L800A1D3C -/* 0A2A10 800A1E10 00000000 */ nop -.L800A1E14: -/* 0A2A14 800A1E14 14AA0006 */ bne $a1, $t2, .L800A1E30 -/* 0A2A18 800A1E18 00000000 */ nop -/* 0A2A1C 800A1E1C 10000007 */ b .L800A1E3C -/* 0A2A20 800A1E20 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A2A24 800A1E24 8FA50048 */ lw $a1, 0x48($sp) -.L800A1E28: -/* 0A2A28 800A1E28 0C029055 */ jal func_800A4154 -/* 0A2A2C 800A1E2C 00E02025 */ move $a0, $a3 -.L800A1E30: -/* 0A2A30 800A1E30 0C01A142 */ jal func_80068508 -/* 0A2A34 800A1E34 00002025 */ move $a0, $zero -/* 0A2A38 800A1E38 8FBF0014 */ lw $ra, 0x14($sp) -.L800A1E3C: -/* 0A2A3C 800A1E3C 27BD0040 */ addiu $sp, $sp, 0x40 -/* 0A2A40 800A1E40 03E00008 */ jr $ra -/* 0A2A44 800A1E44 00000000 */ nop - -glabel func_800A1E48 -/* 0A2A48 800A1E48 27BDFF78 */ addiu $sp, $sp, -0x88 -/* 0A2A4C 800A1E4C AFB00020 */ sw $s0, 0x20($sp) -/* 0A2A50 800A1E50 00808025 */ move $s0, $a0 -/* 0A2A54 800A1E54 AFBF0044 */ sw $ra, 0x44($sp) -/* 0A2A58 800A1E58 AFBE0040 */ sw $fp, 0x40($sp) -/* 0A2A5C 800A1E5C AFB7003C */ sw $s7, 0x3c($sp) -/* 0A2A60 800A1E60 AFB60038 */ sw $s6, 0x38($sp) -/* 0A2A64 800A1E64 AFB50034 */ sw $s5, 0x34($sp) -/* 0A2A68 800A1E68 AFB40030 */ sw $s4, 0x30($sp) -/* 0A2A6C 800A1E6C AFB3002C */ sw $s3, 0x2c($sp) -/* 0A2A70 800A1E70 AFB20028 */ sw $s2, 0x28($sp) -/* 0A2A74 800A1E74 AFB10024 */ sw $s1, 0x24($sp) -/* 0A2A78 800A1E78 E7B50018 */ swc1 $f21, 0x18($sp) -/* 0A2A7C 800A1E7C E7B4001C */ swc1 $f20, 0x1c($sp) -/* 0A2A80 800A1E80 AFA5008C */ sw $a1, 0x8c($sp) -/* 0A2A84 800A1E84 0C006E9D */ jal func_8001BA74 -/* 0A2A88 800A1E88 27A40078 */ addiu $a0, $sp, 0x78 -/* 0A2A8C 800A1E8C 12000004 */ beqz $s0, .L800A1EA0 -/* 0A2A90 800A1E90 0040A825 */ move $s5, $v0 -/* 0A2A94 800A1E94 8E070064 */ lw $a3, 0x64($s0) -/* 0A2A98 800A1E98 10000006 */ b .L800A1EB4 -/* 0A2A9C 800A1E9C 24040001 */ li $a0, 1 -.L800A1EA0: -/* 0A2AA0 800A1EA0 8C4E0000 */ lw $t6, ($v0) -/* 0A2AA4 800A1EA4 00000000 */ nop -/* 0A2AA8 800A1EA8 8DC70064 */ lw $a3, 0x64($t6) -/* 0A2AAC 800A1EAC 00000000 */ nop -/* 0A2AB0 800A1EB0 24040001 */ li $a0, 1 -.L800A1EB4: -/* 0A2AB4 800A1EB4 0C01A142 */ jal func_80068508 -/* 0A2AB8 800A1EB8 AFA7007C */ sw $a3, 0x7c($sp) -/* 0A2ABC 800A1EBC 8FAF0078 */ lw $t7, 0x78($sp) -/* 0A2AC0 800A1EC0 8FA7007C */ lw $a3, 0x7c($sp) -/* 0A2AC4 800A1EC4 24010004 */ li $at, 4 -/* 0A2AC8 800A1EC8 15E100FA */ bne $t7, $at, .L800A22B4 -/* 0A2ACC 800A1ECC 3C108012 */ lui $s0, %hi(D_80126CDC) # $s0, 0x8012 -/* 0A2AD0 800A1ED0 4458F800 */ cfc1 $t8, $31 -/* 0A2AD4 800A1ED4 26106CDC */ addiu $s0, %lo(D_80126CDC) # addiu $s0, $s0, 0x6cdc -/* 0A2AD8 800A1ED8 8E020000 */ lw $v0, ($s0) -/* 0A2ADC 800A1EDC 37010003 */ ori $at, $t8, 3 -/* 0A2AE0 800A1EE0 38210002 */ xori $at, $at, 2 -/* 0A2AE4 800A1EE4 44C1F800 */ ctc1 $at, $31 -/* 0A2AE8 800A1EE8 C444064C */ lwc1 $f4, 0x64c($v0) -/* 0A2AEC 800A1EEC C4480650 */ lwc1 $f8, 0x650($v0) -/* 0A2AF0 800A1EF0 460021A4 */ cvt.w.s $f6, $f4 -/* 0A2AF4 800A1EF4 02A09825 */ move $s3, $s5 -/* 0A2AF8 800A1EF8 44D8F800 */ ctc1 $t8, $31 -/* 0A2AFC 800A1EFC 44143000 */ mfc1 $s4, $f6 -/* 0A2B00 800A1F00 3C158012 */ lui $s5, %hi(D_80126D37) # $s5, 0x8012 -/* 0A2B04 800A1F04 4459F800 */ cfc1 $t9, $31 -/* 0A2B08 800A1F08 00008825 */ move $s1, $zero -/* 0A2B0C 800A1F0C 37210003 */ ori $at, $t9, 3 -/* 0A2B10 800A1F10 38210002 */ xori $at, $at, 2 -/* 0A2B14 800A1F14 44C1F800 */ ctc1 $at, $31 -/* 0A2B18 800A1F18 3C01800F */ lui $at, %hi(D_800E8734) # $at, 0x800f -/* 0A2B1C 800A1F1C 460042A4 */ cvt.w.s $f10, $f8 -/* 0A2B20 800A1F20 C4358730 */ lwc1 $f21, %lo(D_800E8730)($at) -/* 0A2B24 800A1F24 44D9F800 */ ctc1 $t9, $31 -/* 0A2B28 800A1F28 44085000 */ mfc1 $t0, $f10 -/* 0A2B2C 800A1F2C C4348734 */ lwc1 $f20, %lo(D_800E8734)($at) -/* 0A2B30 800A1F30 26B56D37 */ addiu $s5, %lo(D_80126D37) # addiu $s5, $s5, 0x6d37 -/* 0A2B34 800A1F34 00009025 */ move $s2, $zero -/* 0A2B38 800A1F38 241E0002 */ li $fp, 2 -/* 0A2B3C 800A1F3C 24170010 */ li $s7, 16 -/* 0A2B40 800A1F40 24160001 */ li $s6, 1 -/* 0A2B44 800A1F44 AFB40070 */ sw $s4, 0x70($sp) -.L800A1F48: -/* 0A2B48 800A1F48 44948000 */ mtc1 $s4, $f16 -/* 0A2B4C 800A1F4C 8E020000 */ lw $v0, ($s0) -/* 0A2B50 800A1F50 468084A0 */ cvt.s.w $f18, $f16 -/* 0A2B54 800A1F54 C44C064C */ lwc1 $f12, 0x64c($v0) -/* 0A2B58 800A1F58 02285821 */ addu $t3, $s1, $t0 -/* 0A2B5C 800A1F5C 460C9101 */ sub.s $f4, $f18, $f12 -/* 0A2B60 800A1F60 448B4000 */ mtc1 $t3, $f8 -/* 0A2B64 800A1F64 444AF800 */ cfc1 $t2, $31 -/* 0A2B68 800A1F68 C4500650 */ lwc1 $f16, 0x650($v0) -/* 0A2B6C 800A1F6C 35410003 */ ori $at, $t2, 3 -/* 0A2B70 800A1F70 38210002 */ xori $at, $at, 2 -/* 0A2B74 800A1F74 44C1F800 */ ctc1 $at, $31 -/* 0A2B78 800A1F78 8E690000 */ lw $t1, ($s3) -/* 0A2B7C 800A1F7C 460021A4 */ cvt.w.s $f6, $f4 -/* 0A2B80 800A1F80 8D240064 */ lw $a0, 0x64($t1) -/* 0A2B84 800A1F84 44CAF800 */ ctc1 $t2, $31 -/* 0A2B88 800A1F88 44053000 */ mfc1 $a1, $f6 -/* 0A2B8C 800A1F8C 468042A0 */ cvt.s.w $f10, $f8 -/* 0A2B90 800A1F90 44853000 */ mtc1 $a1, $f6 -/* 0A2B94 800A1F94 46105481 */ sub.s $f18, $f10, $f16 -/* 0A2B98 800A1F98 444CF800 */ cfc1 $t4, $31 -/* 0A2B9C 800A1F9C 00000000 */ nop -/* 0A2BA0 800A1FA0 35810003 */ ori $at, $t4, 3 -/* 0A2BA4 800A1FA4 38210002 */ xori $at, $at, 2 -/* 0A2BA8 800A1FA8 44C1F800 */ ctc1 $at, $31 -/* 0A2BAC 800A1FAC 00000000 */ nop -/* 0A2BB0 800A1FB0 46009124 */ cvt.w.s $f4, $f18 -/* 0A2BB4 800A1FB4 44CCF800 */ ctc1 $t4, $31 -/* 0A2BB8 800A1FB8 44062000 */ mfc1 $a2, $f4 -/* 0A2BBC 800A1FBC 46803020 */ cvt.s.w $f0, $f6 -/* 0A2BC0 800A1FC0 44865000 */ mtc1 $a2, $f10 -/* 0A2BC4 800A1FC4 46006200 */ add.s $f8, $f12, $f0 -/* 0A2BC8 800A1FC8 E448064C */ swc1 $f8, 0x64c($v0) -/* 0A2BCC 800A1FCC 8E020000 */ lw $v0, ($s0) -/* 0A2BD0 800A1FD0 468050A0 */ cvt.s.w $f2, $f10 -/* 0A2BD4 800A1FD4 C4500650 */ lwc1 $f16, 0x650($v0) -/* 0A2BD8 800A1FD8 00000000 */ nop -/* 0A2BDC 800A1FDC 46028480 */ add.s $f18, $f16, $f2 -/* 0A2BE0 800A1FE0 E4520650 */ swc1 $f18, 0x650($v0) -/* 0A2BE4 800A1FE4 8E020000 */ lw $v0, ($s0) -/* 0A2BE8 800A1FE8 00000000 */ nop -/* 0A2BEC 800A1FEC C444068C */ lwc1 $f4, 0x68c($v0) -/* 0A2BF0 800A1FF0 00000000 */ nop -/* 0A2BF4 800A1FF4 46002180 */ add.s $f6, $f4, $f0 -/* 0A2BF8 800A1FF8 E446068C */ swc1 $f6, 0x68c($v0) -/* 0A2BFC 800A1FFC 8E020000 */ lw $v0, ($s0) -/* 0A2C00 800A2000 00000000 */ nop -/* 0A2C04 800A2004 C4480690 */ lwc1 $f8, 0x690($v0) -/* 0A2C08 800A2008 00000000 */ nop -/* 0A2C0C 800A200C 46024281 */ sub.s $f10, $f8, $f2 -/* 0A2C10 800A2010 E44A0690 */ swc1 $f10, 0x690($v0) -/* 0A2C14 800A2014 8E020000 */ lw $v0, ($s0) -/* 0A2C18 800A2018 00000000 */ nop -/* 0A2C1C 800A201C C45006AC */ lwc1 $f16, 0x6ac($v0) -/* 0A2C20 800A2020 00000000 */ nop -/* 0A2C24 800A2024 46008480 */ add.s $f18, $f16, $f0 -/* 0A2C28 800A2028 E45206AC */ swc1 $f18, 0x6ac($v0) -/* 0A2C2C 800A202C 8E020000 */ lw $v0, ($s0) -/* 0A2C30 800A2030 00000000 */ nop -/* 0A2C34 800A2034 C44406B0 */ lwc1 $f4, 0x6b0($v0) -/* 0A2C38 800A2038 00000000 */ nop -/* 0A2C3C 800A203C 46022180 */ add.s $f6, $f4, $f2 -/* 0A2C40 800A2040 E44606B0 */ swc1 $f6, 0x6b0($v0) -/* 0A2C44 800A2044 8E020000 */ lw $v0, ($s0) -/* 0A2C48 800A2048 00000000 */ nop -/* 0A2C4C 800A204C C44806CC */ lwc1 $f8, 0x6cc($v0) -/* 0A2C50 800A2050 00000000 */ nop -/* 0A2C54 800A2054 46004280 */ add.s $f10, $f8, $f0 -/* 0A2C58 800A2058 E44A06CC */ swc1 $f10, 0x6cc($v0) -/* 0A2C5C 800A205C 8E020000 */ lw $v0, ($s0) -/* 0A2C60 800A2060 00000000 */ nop -/* 0A2C64 800A2064 C45006D0 */ lwc1 $f16, 0x6d0($v0) -/* 0A2C68 800A2068 00000000 */ nop -/* 0A2C6C 800A206C 46028480 */ add.s $f18, $f16, $f2 -/* 0A2C70 800A2070 E45206D0 */ swc1 $f18, 0x6d0($v0) -/* 0A2C74 800A2074 8E020000 */ lw $v0, ($s0) -/* 0A2C78 800A2078 00000000 */ nop -/* 0A2C7C 800A207C C44406EC */ lwc1 $f4, 0x6ec($v0) -/* 0A2C80 800A2080 00000000 */ nop -/* 0A2C84 800A2084 46002180 */ add.s $f6, $f4, $f0 -/* 0A2C88 800A2088 E44606EC */ swc1 $f6, 0x6ec($v0) -/* 0A2C8C 800A208C 8E020000 */ lw $v0, ($s0) -/* 0A2C90 800A2090 00000000 */ nop -/* 0A2C94 800A2094 C44806F0 */ lwc1 $f8, 0x6f0($v0) -/* 0A2C98 800A2098 00000000 */ nop -/* 0A2C9C 800A209C 46024280 */ add.s $f10, $f8, $f2 -/* 0A2CA0 800A20A0 E44A06F0 */ swc1 $f10, 0x6f0($v0) -/* 0A2CA4 800A20A4 92A30000 */ lbu $v1, ($s5) -/* 0A2CA8 800A20A8 8FA5008C */ lw $a1, 0x8c($sp) -/* 0A2CAC 800A20AC 28610003 */ slti $at, $v1, 3 -/* 0A2CB0 800A20B0 14200006 */ bnez $at, .L800A20CC -/* 0A2CB4 800A20B4 00000000 */ nop -/* 0A2CB8 800A20B8 848D0000 */ lh $t5, ($a0) -/* 0A2CBC 800A20BC 84EE0000 */ lh $t6, ($a3) -/* 0A2CC0 800A20C0 00000000 */ nop -/* 0A2CC4 800A20C4 15AE0008 */ bne $t5, $t6, .L800A20E8 -/* 0A2CC8 800A20C8 00000000 */ nop -.L800A20CC: -/* 0A2CCC 800A20CC AFA7007C */ sw $a3, 0x7c($sp) -/* 0A2CD0 800A20D0 0C0288BD */ jal func_800A22F4 -/* 0A2CD4 800A20D4 AFA8006C */ sw $t0, 0x6c($sp) -/* 0A2CD8 800A20D8 8FA7007C */ lw $a3, 0x7c($sp) -/* 0A2CDC 800A20DC 8FA8006C */ lw $t0, 0x6c($sp) -/* 0A2CE0 800A20E0 92A30000 */ lbu $v1, ($s5) -/* 0A2CE4 800A20E4 00000000 */ nop -.L800A20E8: -/* 0A2CE8 800A20E8 16C30003 */ bne $s6, $v1, .L800A20F8 -/* 0A2CEC 800A20EC 26520004 */ addiu $s2, $s2, 4 -/* 0A2CF0 800A20F0 10000017 */ b .L800A2150 -/* 0A2CF4 800A20F4 26940044 */ addiu $s4, $s4, 0x44 -.L800A20F8: -/* 0A2CF8 800A20F8 17C30015 */ bne $fp, $v1, .L800A2150 -/* 0A2CFC 800A20FC 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 -/* 0A2D00 800A2100 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) -/* 0A2D04 800A2104 00000000 */ nop -/* 0A2D08 800A2108 15E00010 */ bnez $t7, .L800A214C -/* 0A2D0C 800A210C 00000000 */ nop -/* 0A2D10 800A2110 44918000 */ mtc1 $s1, $f16 -/* 0A2D14 800A2114 00000000 */ nop -/* 0A2D18 800A2118 468084A1 */ cvt.d.w $f18, $f16 -/* 0A2D1C 800A211C 46349100 */ add.d $f4, $f18, $f20 -/* 0A2D20 800A2120 4458F800 */ cfc1 $t8, $31 -/* 0A2D24 800A2124 00000000 */ nop -/* 0A2D28 800A2128 37010003 */ ori $at, $t8, 3 -/* 0A2D2C 800A212C 38210002 */ xori $at, $at, 2 -/* 0A2D30 800A2130 44C1F800 */ ctc1 $at, $31 -/* 0A2D34 800A2134 00000000 */ nop -/* 0A2D38 800A2138 462021A4 */ cvt.w.d $f6, $f4 -/* 0A2D3C 800A213C 44113000 */ mfc1 $s1, $f6 -/* 0A2D40 800A2140 44D8F800 */ ctc1 $t8, $31 -/* 0A2D44 800A2144 10000002 */ b .L800A2150 -/* 0A2D48 800A2148 00000000 */ nop -.L800A214C: -/* 0A2D4C 800A214C 26310037 */ addiu $s1, $s1, 0x37 -.L800A2150: -/* 0A2D50 800A2150 1657FF7D */ bne $s2, $s7, .L800A1F48 -/* 0A2D54 800A2154 26730004 */ addiu $s3, $s3, 4 -/* 0A2D58 800A2158 8FB90070 */ lw $t9, 0x70($sp) -/* 0A2D5C 800A215C 8E020000 */ lw $v0, ($s0) -/* 0A2D60 800A2160 44994000 */ mtc1 $t9, $f8 -/* 0A2D64 800A2164 C44C064C */ lwc1 $f12, 0x64c($v0) -/* 0A2D68 800A2168 468042A0 */ cvt.s.w $f10, $f8 -/* 0A2D6C 800A216C 44882000 */ mtc1 $t0, $f4 -/* 0A2D70 800A2170 C4480650 */ lwc1 $f8, 0x650($v0) -/* 0A2D74 800A2174 460C5401 */ sub.s $f16, $f10, $f12 -/* 0A2D78 800A2178 4449F800 */ cfc1 $t1, $31 -/* 0A2D7C 800A217C 00000000 */ nop -/* 0A2D80 800A2180 35210003 */ ori $at, $t1, 3 -/* 0A2D84 800A2184 38210002 */ xori $at, $at, 2 -/* 0A2D88 800A2188 44C1F800 */ ctc1 $at, $31 -/* 0A2D8C 800A218C 00000000 */ nop -/* 0A2D90 800A2190 460084A4 */ cvt.w.s $f18, $f16 -/* 0A2D94 800A2194 44C9F800 */ ctc1 $t1, $31 -/* 0A2D98 800A2198 44059000 */ mfc1 $a1, $f18 -/* 0A2D9C 800A219C 468021A0 */ cvt.s.w $f6, $f4 -/* 0A2DA0 800A21A0 44859000 */ mtc1 $a1, $f18 -/* 0A2DA4 800A21A4 46083281 */ sub.s $f10, $f6, $f8 -/* 0A2DA8 800A21A8 444AF800 */ cfc1 $t2, $31 -/* 0A2DAC 800A21AC 00000000 */ nop -/* 0A2DB0 800A21B0 35410003 */ ori $at, $t2, 3 -/* 0A2DB4 800A21B4 38210002 */ xori $at, $at, 2 -/* 0A2DB8 800A21B8 44C1F800 */ ctc1 $at, $31 -/* 0A2DBC 800A21BC 00000000 */ nop -/* 0A2DC0 800A21C0 46005424 */ cvt.w.s $f16, $f10 -/* 0A2DC4 800A21C4 44CAF800 */ ctc1 $t2, $31 -/* 0A2DC8 800A21C8 44068000 */ mfc1 $a2, $f16 -/* 0A2DCC 800A21CC 46809020 */ cvt.s.w $f0, $f18 -/* 0A2DD0 800A21D0 44863000 */ mtc1 $a2, $f6 -/* 0A2DD4 800A21D4 46006100 */ add.s $f4, $f12, $f0 -/* 0A2DD8 800A21D8 E444064C */ swc1 $f4, 0x64c($v0) -/* 0A2DDC 800A21DC 8E020000 */ lw $v0, ($s0) -/* 0A2DE0 800A21E0 468030A0 */ cvt.s.w $f2, $f6 -/* 0A2DE4 800A21E4 C4480650 */ lwc1 $f8, 0x650($v0) -/* 0A2DE8 800A21E8 00000000 */ nop -/* 0A2DEC 800A21EC 46024280 */ add.s $f10, $f8, $f2 -/* 0A2DF0 800A21F0 E44A0650 */ swc1 $f10, 0x650($v0) -/* 0A2DF4 800A21F4 8E020000 */ lw $v0, ($s0) -/* 0A2DF8 800A21F8 00000000 */ nop -/* 0A2DFC 800A21FC C450068C */ lwc1 $f16, 0x68c($v0) -/* 0A2E00 800A2200 00000000 */ nop -/* 0A2E04 800A2204 46008480 */ add.s $f18, $f16, $f0 -/* 0A2E08 800A2208 E452068C */ swc1 $f18, 0x68c($v0) -/* 0A2E0C 800A220C 8E020000 */ lw $v0, ($s0) -/* 0A2E10 800A2210 00000000 */ nop -/* 0A2E14 800A2214 C4440690 */ lwc1 $f4, 0x690($v0) -/* 0A2E18 800A2218 00000000 */ nop -/* 0A2E1C 800A221C 46022181 */ sub.s $f6, $f4, $f2 -/* 0A2E20 800A2220 E4460690 */ swc1 $f6, 0x690($v0) -/* 0A2E24 800A2224 8E020000 */ lw $v0, ($s0) -/* 0A2E28 800A2228 00000000 */ nop -/* 0A2E2C 800A222C C44806AC */ lwc1 $f8, 0x6ac($v0) -/* 0A2E30 800A2230 00000000 */ nop -/* 0A2E34 800A2234 46004280 */ add.s $f10, $f8, $f0 -/* 0A2E38 800A2238 E44A06AC */ swc1 $f10, 0x6ac($v0) -/* 0A2E3C 800A223C 8E020000 */ lw $v0, ($s0) -/* 0A2E40 800A2240 00000000 */ nop -/* 0A2E44 800A2244 C45006B0 */ lwc1 $f16, 0x6b0($v0) -/* 0A2E48 800A2248 00000000 */ nop -/* 0A2E4C 800A224C 46028480 */ add.s $f18, $f16, $f2 -/* 0A2E50 800A2250 E45206B0 */ swc1 $f18, 0x6b0($v0) -/* 0A2E54 800A2254 8E020000 */ lw $v0, ($s0) -/* 0A2E58 800A2258 00000000 */ nop -/* 0A2E5C 800A225C C44406CC */ lwc1 $f4, 0x6cc($v0) -/* 0A2E60 800A2260 00000000 */ nop -/* 0A2E64 800A2264 46002180 */ add.s $f6, $f4, $f0 -/* 0A2E68 800A2268 E44606CC */ swc1 $f6, 0x6cc($v0) -/* 0A2E6C 800A226C 8E020000 */ lw $v0, ($s0) -/* 0A2E70 800A2270 00000000 */ nop -/* 0A2E74 800A2274 C44806D0 */ lwc1 $f8, 0x6d0($v0) -/* 0A2E78 800A2278 00000000 */ nop -/* 0A2E7C 800A227C 46024280 */ add.s $f10, $f8, $f2 -/* 0A2E80 800A2280 E44A06D0 */ swc1 $f10, 0x6d0($v0) -/* 0A2E84 800A2284 8E020000 */ lw $v0, ($s0) -/* 0A2E88 800A2288 00000000 */ nop -/* 0A2E8C 800A228C C45006EC */ lwc1 $f16, 0x6ec($v0) -/* 0A2E90 800A2290 00000000 */ nop -/* 0A2E94 800A2294 46008480 */ add.s $f18, $f16, $f0 -/* 0A2E98 800A2298 E45206EC */ swc1 $f18, 0x6ec($v0) -/* 0A2E9C 800A229C 8E020000 */ lw $v0, ($s0) -/* 0A2EA0 800A22A0 00000000 */ nop -/* 0A2EA4 800A22A4 C44406F0 */ lwc1 $f4, 0x6f0($v0) -/* 0A2EA8 800A22A8 00000000 */ nop -/* 0A2EAC 800A22AC 46022180 */ add.s $f6, $f4, $f2 -/* 0A2EB0 800A22B0 E44606F0 */ swc1 $f6, 0x6f0($v0) -.L800A22B4: -/* 0A2EB4 800A22B4 0C01A142 */ jal func_80068508 -/* 0A2EB8 800A22B8 00002025 */ move $a0, $zero -/* 0A2EBC 800A22BC 8FBF0044 */ lw $ra, 0x44($sp) -/* 0A2EC0 800A22C0 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 0A2EC4 800A22C4 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 0A2EC8 800A22C8 8FB00020 */ lw $s0, 0x20($sp) -/* 0A2ECC 800A22CC 8FB10024 */ lw $s1, 0x24($sp) -/* 0A2ED0 800A22D0 8FB20028 */ lw $s2, 0x28($sp) -/* 0A2ED4 800A22D4 8FB3002C */ lw $s3, 0x2c($sp) -/* 0A2ED8 800A22D8 8FB40030 */ lw $s4, 0x30($sp) -/* 0A2EDC 800A22DC 8FB50034 */ lw $s5, 0x34($sp) -/* 0A2EE0 800A22E0 8FB60038 */ lw $s6, 0x38($sp) -/* 0A2EE4 800A22E4 8FB7003C */ lw $s7, 0x3c($sp) -/* 0A2EE8 800A22E8 8FBE0040 */ lw $fp, 0x40($sp) -/* 0A2EEC 800A22EC 03E00008 */ jr $ra -/* 0A2EF0 800A22F0 27BD0088 */ addiu $sp, $sp, 0x88 - -glabel func_800A22F4 -/* 0A2EF4 800A22F4 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0A2EF8 800A22F8 AFB00018 */ sw $s0, 0x18($sp) -/* 0A2EFC 800A22FC 3C108012 */ lui $s0, %hi(D_80126CDC) # $s0, 0x8012 -/* 0A2F00 800A2300 AFBF001C */ sw $ra, 0x1c($sp) -/* 0A2F04 800A2304 AFA40020 */ sw $a0, 0x20($sp) -/* 0A2F08 800A2308 AFA50024 */ sw $a1, 0x24($sp) -/* 0A2F0C 800A230C 808F0003 */ lb $t7, 3($a0) -/* 0A2F10 800A2310 26106CDC */ addiu $s0, %lo(D_80126CDC) # addiu $s0, $s0, 0x6cdc -/* 0A2F14 800A2314 8E190000 */ lw $t9, ($s0) -/* 0A2F18 800A2318 25F80038 */ addiu $t8, $t7, 0x38 -/* 0A2F1C 800A231C 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 -/* 0A2F20 800A2320 A7380646 */ sh $t8, 0x646($t9) -/* 0A2F24 800A2324 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) -/* 0A2F28 800A2328 00807025 */ move $t6, $a0 -/* 0A2F2C 800A232C 28610003 */ slti $at, $v1, 3 -/* 0A2F30 800A2330 14200009 */ bnez $at, .L800A2358 -/* 0A2F34 800A2334 24010003 */ li $at, 3 -/* 0A2F38 800A2338 1461001C */ bne $v1, $at, .L800A23AC -/* 0A2F3C 800A233C 8FAB0020 */ lw $t3, 0x20($sp) -/* 0A2F40 800A2340 8FA80020 */ lw $t0, 0x20($sp) -/* 0A2F44 800A2344 2401FFFF */ li $at, -1 -/* 0A2F48 800A2348 85090000 */ lh $t1, ($t0) -/* 0A2F4C 800A234C 00000000 */ nop -/* 0A2F50 800A2350 15210016 */ bne $t1, $at, .L800A23AC -/* 0A2F54 800A2354 8FAB0020 */ lw $t3, 0x20($sp) -.L800A2358: -/* 0A2F58 800A2358 240A0001 */ li $t2, 1 -/* 0A2F5C 800A235C 3C018012 */ lui $at, %hi(D_80126CD5) # $at, 0x8012 -/* 0A2F60 800A2360 A02A6CD5 */ sb $t2, %lo(D_80126CD5)($at) -/* 0A2F64 800A2364 8E070000 */ lw $a3, ($s0) -/* 0A2F68 800A2368 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A2F6C 800A236C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A2F70 800A2370 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A2F74 800A2374 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A2F78 800A2378 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A2F7C 800A237C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A2F80 800A2380 0C02A980 */ jal func_800AA600 -/* 0A2F84 800A2384 24E70640 */ addiu $a3, $a3, 0x640 -/* 0A2F88 800A2388 3C018012 */ lui $at, %hi(D_80126CD5) # $at, 0x8012 -/* 0A2F8C 800A238C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A2F90 800A2390 A0206CD5 */ sb $zero, %lo(D_80126CD5)($at) -/* 0A2F94 800A2394 0C01E015 */ jal func_80078054 -/* 0A2F98 800A2398 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A2F9C 800A239C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A2FA0 800A23A0 0C01ECF4 */ jal func_8007B3D0 -/* 0A2FA4 800A23A4 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A2FA8 800A23A8 8FAB0020 */ lw $t3, 0x20($sp) -.L800A23AC: -/* 0A2FAC 800A23AC 2403000A */ li $v1, 10 -/* 0A2FB0 800A23B0 81620185 */ lb $v0, 0x185($t3) -/* 0A2FB4 800A23B4 00000000 */ nop -/* 0A2FB8 800A23B8 2841000A */ slti $at, $v0, 0xa -/* 0A2FBC 800A23BC 10200010 */ beqz $at, .L800A2400 -/* 0A2FC0 800A23C0 00000000 */ nop -/* 0A2FC4 800A23C4 8E0C0000 */ lw $t4, ($s0) -/* 0A2FC8 800A23C8 3C0D8012 */ lui $t5, %hi(D_80126D37) # $t5, 0x8012 -/* 0A2FCC 800A23CC A58206D8 */ sh $v0, 0x6d8($t4) -/* 0A2FD0 800A23D0 91AD6D37 */ lbu $t5, %lo(D_80126D37)($t5) -/* 0A2FD4 800A23D4 24010002 */ li $at, 2 -/* 0A2FD8 800A23D8 15A1002F */ bne $t5, $at, .L800A2498 -/* 0A2FDC 800A23DC 00000000 */ nop -/* 0A2FE0 800A23E0 8E020000 */ lw $v0, ($s0) -/* 0A2FE4 800A23E4 3C0140C0 */ li $at, 0x40C00000 # 6.000000 -/* 0A2FE8 800A23E8 44813000 */ mtc1 $at, $f6 -/* 0A2FEC 800A23EC C44406CC */ lwc1 $f4, 0x6cc($v0) -/* 0A2FF0 800A23F0 00000000 */ nop -/* 0A2FF4 800A23F4 46062200 */ add.s $f8, $f4, $f6 -/* 0A2FF8 800A23F8 10000027 */ b .L800A2498 -/* 0A2FFC 800A23FC E44806CC */ swc1 $f8, 0x6cc($v0) -.L800A2400: -/* 0A3000 800A2400 0043001A */ div $zero, $v0, $v1 -/* 0A3004 800A2404 8E0F0000 */ lw $t7, ($s0) -/* 0A3008 800A2408 14600002 */ bnez $v1, .L800A2414 -/* 0A300C 800A240C 00000000 */ nop -/* 0A3010 800A2410 0007000D */ break 7 -.L800A2414: -/* 0A3014 800A2414 2401FFFF */ li $at, -1 -/* 0A3018 800A2418 14610004 */ bne $v1, $at, .L800A242C -/* 0A301C 800A241C 3C018000 */ lui $at, 0x8000 -/* 0A3020 800A2420 14410002 */ bne $v0, $at, .L800A242C -/* 0A3024 800A2424 00000000 */ nop -/* 0A3028 800A2428 0006000D */ break 6 -.L800A242C: -/* 0A302C 800A242C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A3030 800A2430 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A3034 800A2434 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A3038 800A2438 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A303C 800A243C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A3040 800A2440 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A3044 800A2444 00007012 */ mflo $t6 -/* 0A3048 800A2448 A5EE06D8 */ sh $t6, 0x6d8($t7) -/* 0A304C 800A244C 8FB80020 */ lw $t8, 0x20($sp) -/* 0A3050 800A2450 8E090000 */ lw $t1, ($s0) -/* 0A3054 800A2454 83190185 */ lb $t9, 0x185($t8) -/* 0A3058 800A2458 00000000 */ nop -/* 0A305C 800A245C 0323001A */ div $zero, $t9, $v1 -/* 0A3060 800A2460 14600002 */ bnez $v1, .L800A246C -/* 0A3064 800A2464 00000000 */ nop -/* 0A3068 800A2468 0007000D */ break 7 -.L800A246C: -/* 0A306C 800A246C 2401FFFF */ li $at, -1 -/* 0A3070 800A2470 14610004 */ bne $v1, $at, .L800A2484 -/* 0A3074 800A2474 3C018000 */ lui $at, 0x8000 -/* 0A3078 800A2478 17210002 */ bne $t9, $at, .L800A2484 -/* 0A307C 800A247C 00000000 */ nop -/* 0A3080 800A2480 0006000D */ break 6 -.L800A2484: -/* 0A3084 800A2484 00004010 */ mfhi $t0 -/* 0A3088 800A2488 A52806F8 */ sh $t0, 0x6f8($t1) -/* 0A308C 800A248C 8E070000 */ lw $a3, ($s0) -/* 0A3090 800A2490 0C02A980 */ jal func_800AA600 -/* 0A3094 800A2494 24E706E0 */ addiu $a3, $a3, 0x6e0 -.L800A2498: -/* 0A3098 800A2498 8E070000 */ lw $a3, ($s0) -/* 0A309C 800A249C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A30A0 800A24A0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A30A4 800A24A4 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A30A8 800A24A8 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A30AC 800A24AC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A30B0 800A24B0 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A30B4 800A24B4 0C02A980 */ jal func_800AA600 -/* 0A30B8 800A24B8 24E706C0 */ addiu $a3, $a3, 0x6c0 -/* 0A30BC 800A24BC 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 -/* 0A30C0 800A24C0 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) -/* 0A30C4 800A24C4 24040002 */ li $a0, 2 -/* 0A30C8 800A24C8 14830011 */ bne $a0, $v1, .L800A2510 -/* 0A30CC 800A24CC 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A30D0 800A24D0 8FAA0020 */ lw $t2, 0x20($sp) -/* 0A30D4 800A24D4 00000000 */ nop -/* 0A30D8 800A24D8 814B0185 */ lb $t3, 0x185($t2) -/* 0A30DC 800A24DC 00000000 */ nop -/* 0A30E0 800A24E0 2961000A */ slti $at, $t3, 0xa -/* 0A30E4 800A24E4 1020000A */ beqz $at, .L800A2510 -/* 0A30E8 800A24E8 00000000 */ nop -/* 0A30EC 800A24EC 8E020000 */ lw $v0, ($s0) -/* 0A30F0 800A24F0 3C0140C0 */ li $at, 0x40C00000 # 6.000000 -/* 0A30F4 800A24F4 44818000 */ mtc1 $at, $f16 -/* 0A30F8 800A24F8 C44A06CC */ lwc1 $f10, 0x6cc($v0) -/* 0A30FC 800A24FC 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 -/* 0A3100 800A2500 46105481 */ sub.s $f18, $f10, $f16 -/* 0A3104 800A2504 E45206CC */ swc1 $f18, 0x6cc($v0) -/* 0A3108 800A2508 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) -/* 0A310C 800A250C 00000000 */ nop -.L800A2510: -/* 0A3110 800A2510 1083001A */ beq $a0, $v1, .L800A257C -/* 0A3114 800A2514 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A3118 800A2518 8E070000 */ lw $a3, ($s0) -/* 0A311C 800A251C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A3120 800A2520 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A3124 800A2524 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A3128 800A2528 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A312C 800A252C 0C02A980 */ jal func_800AA600 -/* 0A3130 800A2530 24E706A0 */ addiu $a3, $a3, 0x6a0 -/* 0A3134 800A2534 0C01EFC7 */ jal func_8007BF1C -/* 0A3138 800A2538 24040001 */ li $a0, 1 -/* 0A313C 800A253C 240C0001 */ li $t4, 1 -/* 0A3140 800A2540 3C018012 */ lui $at, %hi(D_80126CD5) # $at, 0x8012 -/* 0A3144 800A2544 A02C6CD5 */ sb $t4, %lo(D_80126CD5)($at) -/* 0A3148 800A2548 8E070000 */ lw $a3, ($s0) -/* 0A314C 800A254C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A3150 800A2550 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A3154 800A2554 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A3158 800A2558 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A315C 800A255C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A3160 800A2560 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A3164 800A2564 0C02A980 */ jal func_800AA600 -/* 0A3168 800A2568 24E70680 */ addiu $a3, $a3, 0x680 -/* 0A316C 800A256C 3C018012 */ lui $at, %hi(D_80126CD5) # $at, 0x8012 -/* 0A3170 800A2570 A0206CD5 */ sb $zero, %lo(D_80126CD5)($at) -/* 0A3174 800A2574 0C01EFC7 */ jal func_8007BF1C -/* 0A3178 800A2578 00002025 */ move $a0, $zero -.L800A257C: -/* 0A317C 800A257C 8FBF001C */ lw $ra, 0x1c($sp) -/* 0A3180 800A2580 8FB00018 */ lw $s0, 0x18($sp) -/* 0A3184 800A2584 03E00008 */ jr $ra -/* 0A3188 800A2588 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_800A258C -/* 0A318C 800A258C 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0A3190 800A2590 AFBF001C */ sw $ra, 0x1c($sp) -/* 0A3194 800A2594 AFB10018 */ sw $s1, 0x18($sp) -/* 0A3198 800A2598 AFB00014 */ sw $s0, 0x14($sp) -/* 0A319C 800A259C AFA40020 */ sw $a0, 0x20($sp) -/* 0A31A0 800A25A0 AFA50024 */ sw $a1, 0x24($sp) -/* 0A31A4 800A25A4 8CB10064 */ lw $s1, 0x64($a1) -/* 0A31A8 800A25A8 00C08025 */ move $s0, $a2 -/* 0A31AC 800A25AC 0C01A142 */ jal func_80068508 -/* 0A31B0 800A25B0 24040001 */ li $a0, 1 -/* 0A31B4 800A25B4 02202025 */ move $a0, $s1 -/* 0A31B8 800A25B8 0C029699 */ jal func_800A5A64 -/* 0A31BC 800A25BC 02002825 */ move $a1, $s0 -/* 0A31C0 800A25C0 8FA40020 */ lw $a0, 0x20($sp) -/* 0A31C4 800A25C4 0C028F39 */ jal func_800A3CE4 -/* 0A31C8 800A25C8 02002825 */ move $a1, $s0 -/* 0A31CC 800A25CC 02202025 */ move $a0, $s1 -/* 0A31D0 800A25D0 0C029EDA */ jal func_800A7B68 -/* 0A31D4 800A25D4 02002825 */ move $a1, $s0 -/* 0A31D8 800A25D8 8FA40024 */ lw $a0, 0x24($sp) -/* 0A31DC 800A25DC 0C029D48 */ jal func_800A7520 -/* 0A31E0 800A25E0 02002825 */ move $a1, $s0 -/* 0A31E4 800A25E4 0C01AF6C */ jal func_8006BDB0 -/* 0A31E8 800A25E8 00000000 */ nop -/* 0A31EC 800A25EC 804F004B */ lb $t7, 0x4b($v0) -/* 0A31F0 800A25F0 02202025 */ move $a0, $s1 -/* 0A31F4 800A25F4 29E10002 */ slti $at, $t7, 2 -/* 0A31F8 800A25F8 14200003 */ bnez $at, .L800A2608 -/* 0A31FC 800A25FC 00000000 */ nop -/* 0A3200 800A2600 0C0293D4 */ jal func_800A4F50 -/* 0A3204 800A2604 02002825 */ move $a1, $s0 -.L800A2608: -/* 0A3208 800A2608 8FA40024 */ lw $a0, 0x24($sp) -/* 0A320C 800A260C 0C028E21 */ jal func_800A3884 -/* 0A3210 800A2610 02002825 */ move $a1, $s0 -/* 0A3214 800A2614 02202025 */ move $a0, $s1 -/* 0A3218 800A2618 0C029311 */ jal func_800A4C44 -/* 0A321C 800A261C 02002825 */ move $a1, $s0 -/* 0A3220 800A2620 0C01A142 */ jal func_80068508 -/* 0A3224 800A2624 00002025 */ move $a0, $zero -/* 0A3228 800A2628 8FBF001C */ lw $ra, 0x1c($sp) -/* 0A322C 800A262C 8FB00014 */ lw $s0, 0x14($sp) -/* 0A3230 800A2630 8FB10018 */ lw $s1, 0x18($sp) -/* 0A3234 800A2634 03E00008 */ jr $ra -/* 0A3238 800A2638 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_800A263C -/* 0A323C 800A263C 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0A3240 800A2640 AFBF001C */ sw $ra, 0x1c($sp) -/* 0A3244 800A2644 AFB10018 */ sw $s1, 0x18($sp) -/* 0A3248 800A2648 AFB00014 */ sw $s0, 0x14($sp) -/* 0A324C 800A264C AFA40020 */ sw $a0, 0x20($sp) -/* 0A3250 800A2650 AFA50024 */ sw $a1, 0x24($sp) -/* 0A3254 800A2654 8CB00064 */ lw $s0, 0x64($a1) -/* 0A3258 800A2658 00C08825 */ move $s1, $a2 -/* 0A325C 800A265C 0C01A142 */ jal func_80068508 -/* 0A3260 800A2660 24040001 */ li $a0, 1 -/* 0A3264 800A2664 02002025 */ move $a0, $s0 -/* 0A3268 800A2668 0C029699 */ jal func_800A5A64 -/* 0A326C 800A266C 02202825 */ move $a1, $s1 -/* 0A3270 800A2670 02002025 */ move $a0, $s0 -/* 0A3274 800A2674 0C0293D4 */ jal func_800A4F50 -/* 0A3278 800A2678 02202825 */ move $a1, $s1 -/* 0A327C 800A267C 02002025 */ move $a0, $s0 -/* 0A3280 800A2680 0C029311 */ jal func_800A4C44 -/* 0A3284 800A2684 02202825 */ move $a1, $s1 -/* 0A3288 800A2688 02002025 */ move $a0, $s0 -/* 0A328C 800A268C 0C029EDA */ jal func_800A7B68 -/* 0A3290 800A2690 02202825 */ move $a1, $s1 -/* 0A3294 800A2694 8FA40020 */ lw $a0, 0x20($sp) -/* 0A3298 800A2698 0C028F39 */ jal func_800A3CE4 -/* 0A329C 800A269C 02202825 */ move $a1, $s1 -/* 0A32A0 800A26A0 8FA40024 */ lw $a0, 0x24($sp) -/* 0A32A4 800A26A4 0C028E21 */ jal func_800A3884 -/* 0A32A8 800A26A8 02202825 */ move $a1, $s1 -/* 0A32AC 800A26AC 0C01A142 */ jal func_80068508 -/* 0A32B0 800A26B0 00002025 */ move $a0, $zero -/* 0A32B4 800A26B4 8FBF001C */ lw $ra, 0x1c($sp) -/* 0A32B8 800A26B8 8FB00014 */ lw $s0, 0x14($sp) -/* 0A32BC 800A26BC 8FB10018 */ lw $s1, 0x18($sp) -/* 0A32C0 800A26C0 03E00008 */ jr $ra -/* 0A32C4 800A26C4 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_800A26C8 -/* 0A32C8 800A26C8 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0A32CC 800A26CC AFBF0014 */ sw $ra, 0x14($sp) -/* 0A32D0 800A26D0 AFA40020 */ sw $a0, 0x20($sp) -/* 0A32D4 800A26D4 0C019884 */ jal func_80066210 -/* 0A32D8 800A26D8 AFA50024 */ sw $a1, 0x24($sp) -/* 0A32DC 800A26DC 14400024 */ bnez $v0, .L800A2770 -/* 0A32E0 800A26E0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A32E4 800A26E4 8FAE0020 */ lw $t6, 0x20($sp) -/* 0A32E8 800A26E8 24040001 */ li $a0, 1 -/* 0A32EC 800A26EC 8DCF0064 */ lw $t7, 0x64($t6) -/* 0A32F0 800A26F0 0C01A142 */ jal func_80068508 -/* 0A32F4 800A26F4 AFAF001C */ sw $t7, 0x1c($sp) -/* 0A32F8 800A26F8 8FA4001C */ lw $a0, 0x1c($sp) -/* 0A32FC 800A26FC 0C029C63 */ jal func_800A718C -/* 0A3300 800A2700 00000000 */ nop -/* 0A3304 800A2704 8FA40020 */ lw $a0, 0x20($sp) -/* 0A3308 800A2708 8FA50024 */ lw $a1, 0x24($sp) -/* 0A330C 800A270C 0C028E21 */ jal func_800A3884 -/* 0A3310 800A2710 00000000 */ nop -/* 0A3314 800A2714 0C027B20 */ jal func_8009EC80 -/* 0A3318 800A2718 00000000 */ nop -/* 0A331C 800A271C 10400011 */ beqz $v0, .L800A2764 -/* 0A3320 800A2720 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 -/* 0A3324 800A2724 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) -/* 0A3328 800A2728 00000000 */ nop -/* 0A332C 800A272C 24E70720 */ addiu $a3, $a3, 0x720 -/* 0A3330 800A2730 0C01BAA4 */ jal func_8006EA90 -/* 0A3334 800A2734 AFA70018 */ sw $a3, 0x18($sp) -/* 0A3338 800A2738 80580071 */ lb $t8, 0x71($v0) -/* 0A333C 800A273C 8FA70018 */ lw $a3, 0x18($sp) -/* 0A3340 800A2740 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A3344 800A2744 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A3348 800A2748 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A334C 800A274C 27190038 */ addiu $t9, $t8, 0x38 -/* 0A3350 800A2750 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A3354 800A2754 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A3358 800A2758 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A335C 800A275C 0C02A980 */ jal func_800AA600 -/* 0A3360 800A2760 A4F90006 */ sh $t9, 6($a3) -.L800A2764: -/* 0A3364 800A2764 0C01A142 */ jal func_80068508 -/* 0A3368 800A2768 00002025 */ move $a0, $zero -/* 0A336C 800A276C 8FBF0014 */ lw $ra, 0x14($sp) -.L800A2770: -/* 0A3370 800A2770 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0A3374 800A2774 03E00008 */ jr $ra -/* 0A3378 800A2778 00000000 */ nop - -glabel func_800A277C -/* 0A337C 800A277C 27BDFF40 */ addiu $sp, $sp, -0xc0 -/* 0A3380 800A2780 AFB00020 */ sw $s0, 0x20($sp) -/* 0A3384 800A2784 3C108012 */ lui $s0, %hi(D_80126CF4) # $s0, 0x8012 -/* 0A3388 800A2788 AFBF002C */ sw $ra, 0x2c($sp) -/* 0A338C 800A278C AFB20028 */ sw $s2, 0x28($sp) -/* 0A3390 800A2790 AFB10024 */ sw $s1, 0x24($sp) -/* 0A3394 800A2794 AFA400C0 */ sw $a0, 0xc0($sp) -/* 0A3398 800A2798 AFA500C4 */ sw $a1, 0xc4($sp) -/* 0A339C 800A279C AFA600C8 */ sw $a2, 0xc8($sp) -/* 0A33A0 800A27A0 8CAF0064 */ lw $t7, 0x64($a1) -/* 0A33A4 800A27A4 26106CF4 */ addiu $s0, %lo(D_80126CF4) # addiu $s0, $s0, 0x6cf4 -/* 0A33A8 800A27A8 8E030000 */ lw $v1, ($s0) -/* 0A33AC 800A27AC AFAF00A0 */ sw $t7, 0xa0($sp) -/* 0A33B0 800A27B0 8C780050 */ lw $t8, 0x50($v1) -/* 0A33B4 800A27B4 00004825 */ move $t1, $zero -/* 0A33B8 800A27B8 1700001E */ bnez $t8, .L800A2834 -/* 0A33BC 800A27BC 3C198012 */ lui $t9, %hi(D_80126CF0) # $t9, 0x8012 -/* 0A33C0 800A27C0 8F396CF0 */ lw $t9, %lo(D_80126CF0)($t9) -/* 0A33C4 800A27C4 240C0008 */ li $t4, 8 -/* 0A33C8 800A27C8 872B0028 */ lh $t3, 0x28($t9) -/* 0A33CC 800A27CC A3AC0091 */ sb $t4, 0x91($sp) -/* 0A33D0 800A27D0 A7A00092 */ sh $zero, 0x92($sp) -/* 0A33D4 800A27D4 A7A00094 */ sh $zero, 0x94($sp) -/* 0A33D8 800A27D8 A7A00096 */ sh $zero, 0x96($sp) -/* 0A33DC 800A27DC AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A33E0 800A27E0 27A40090 */ addiu $a0, $sp, 0x90 -/* 0A33E4 800A27E4 00002825 */ move $a1, $zero -/* 0A33E8 800A27E8 0C003A95 */ jal func_8000EA54 -/* 0A33EC 800A27EC A3AB0090 */ sb $t3, 0x90($sp) -/* 0A33F0 800A27F0 8E0D0000 */ lw $t5, ($s0) -/* 0A33F4 800A27F4 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A33F8 800A27F8 3C118012 */ lui $s1, %hi(D_80126CDC) # $s1, 0x8012 -/* 0A33FC 800A27FC 26316CDC */ addiu $s1, %lo(D_80126CDC) # addiu $s1, $s1, 0x6cdc -/* 0A3400 800A2800 ADA20050 */ sw $v0, 0x50($t5) -/* 0A3404 800A2804 8E2F0000 */ lw $t7, ($s1) -/* 0A3408 800A2808 240E8000 */ li $t6, -32768 -/* 0A340C 800A280C A5EE0340 */ sh $t6, 0x340($t7) -/* 0A3410 800A2810 8E030000 */ lw $v1, ($s0) -/* 0A3414 800A2814 00000000 */ nop -/* 0A3418 800A2818 8C640050 */ lw $a0, 0x50($v1) -/* 0A341C 800A281C 00000000 */ nop -/* 0A3420 800A2820 10800004 */ beqz $a0, .L800A2834 -/* 0A3424 800A2824 00000000 */ nop -/* 0A3428 800A2828 A4800018 */ sh $zero, 0x18($a0) -/* 0A342C 800A282C 8E030000 */ lw $v1, ($s0) -/* 0A3430 800A2830 00000000 */ nop -.L800A2834: -/* 0A3434 800A2834 8C780088 */ lw $t8, 0x88($v1) -/* 0A3438 800A2838 3C118012 */ lui $s1, %hi(D_80126CDC) # $s1, 0x8012 -/* 0A343C 800A283C 17000016 */ bnez $t8, .L800A2898 -/* 0A3440 800A2840 26316CDC */ addiu $s1, %lo(D_80126CDC) # addiu $s1, $s1, 0x6cdc -/* 0A3444 800A2844 3C198012 */ lui $t9, %hi(D_80126CF0) # $t9, 0x8012 -/* 0A3448 800A2848 8F396CF0 */ lw $t9, %lo(D_80126CF0)($t9) -/* 0A344C 800A284C 240C0008 */ li $t4, 8 -/* 0A3450 800A2850 872B0044 */ lh $t3, 0x44($t9) -/* 0A3454 800A2854 A3AC0089 */ sb $t4, 0x89($sp) -/* 0A3458 800A2858 A7A0008A */ sh $zero, 0x8a($sp) -/* 0A345C 800A285C A7A0008C */ sh $zero, 0x8c($sp) -/* 0A3460 800A2860 A7A0008E */ sh $zero, 0x8e($sp) -/* 0A3464 800A2864 AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A3468 800A2868 27A40088 */ addiu $a0, $sp, 0x88 -/* 0A346C 800A286C 00002825 */ move $a1, $zero -/* 0A3470 800A2870 0C003A95 */ jal func_8000EA54 -/* 0A3474 800A2874 A3AB0088 */ sb $t3, 0x88($sp) -/* 0A3478 800A2878 8E0D0000 */ lw $t5, ($s0) -/* 0A347C 800A287C 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A3480 800A2880 ADA20088 */ sw $v0, 0x88($t5) -/* 0A3484 800A2884 8E2F0000 */ lw $t7, ($s1) -/* 0A3488 800A2888 240E8000 */ li $t6, -32768 -/* 0A348C 800A288C A5EE0440 */ sh $t6, 0x440($t7) -/* 0A3490 800A2890 8E030000 */ lw $v1, ($s0) -/* 0A3494 800A2894 00000000 */ nop -.L800A2898: -/* 0A3498 800A2898 8C700050 */ lw $s0, 0x50($v1) -/* 0A349C 800A289C 3C128012 */ lui $s2, %hi(D_80126D67) # $s2, 0x8012 -/* 0A34A0 800A28A0 12000384 */ beqz $s0, .L800A36B4 -/* 0A34A4 800A28A4 26526D67 */ addiu $s2, %lo(D_80126D67) # addiu $s2, $s2, 0x6d67 -/* 0A34A8 800A28A8 92580000 */ lbu $t8, ($s2) -/* 0A34AC 800A28AC 8E190068 */ lw $t9, 0x68($s0) -/* 0A34B0 800A28B0 A218003B */ sb $t8, 0x3b($s0) -/* 0A34B4 800A28B4 8F2A0000 */ lw $t2, ($t9) -/* 0A34B8 800A28B8 8FAB00C8 */ lw $t3, 0xc8($sp) -/* 0A34BC 800A28BC AFAA0098 */ sw $t2, 0x98($sp) -/* 0A34C0 800A28C0 8D4D0000 */ lw $t5, ($t2) -/* 0A34C4 800A28C4 240100FF */ li $at, 255 -/* 0A34C8 800A28C8 A5AB0052 */ sh $t3, 0x52($t5) -/* 0A34CC 800A28CC 92420000 */ lbu $v0, ($s2) -/* 0A34D0 800A28D0 00000000 */ nop -/* 0A34D4 800A28D4 104100A4 */ beq $v0, $at, .L800A2B68 -/* 0A34D8 800A28D8 24010004 */ li $at, 4 -/* 0A34DC 800A28DC 1441000D */ bne $v0, $at, .L800A2914 -/* 0A34E0 800A28E0 00000000 */ nop -/* 0A34E4 800A28E4 0C0044E7 */ jal func_8001139C -/* 0A34E8 800A28E8 AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A34EC 800A28EC 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A34F0 800A28F0 14400006 */ bnez $v0, .L800A290C -/* 0A34F4 800A28F4 240E0010 */ li $t6, 16 -/* 0A34F8 800A28F8 0C000572 */ jal func_800015C8 -/* 0A34FC 800A28FC AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A3500 800A2900 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A3504 800A2904 14400003 */ bnez $v0, .L800A2914 -/* 0A3508 800A2908 240E0010 */ li $t6, 16 -.L800A290C: -/* 0A350C 800A290C 10000091 */ b .L800A2B54 -/* 0A3510 800A2910 A60E0018 */ sh $t6, 0x18($s0) -.L800A2914: -/* 0A3514 800A2914 924F0000 */ lbu $t7, ($s2) -/* 0A3518 800A2918 24010004 */ li $at, 4 -/* 0A351C 800A291C 15E10042 */ bne $t7, $at, .L800A2A28 -/* 0A3520 800A2920 00000000 */ nop -/* 0A3524 800A2924 0C00057E */ jal func_800015F8 -/* 0A3528 800A2928 AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A352C 800A292C 8FB80098 */ lw $t8, 0x98($sp) -/* 0A3530 800A2930 924C0000 */ lbu $t4, ($s2) -/* 0A3534 800A2934 8F190000 */ lw $t9, ($t8) -/* 0A3538 800A2938 000C58C0 */ sll $t3, $t4, 3 -/* 0A353C 800A293C 8F2A0044 */ lw $t2, 0x44($t9) -/* 0A3540 800A2940 3C01BFF0 */ li $at, 0xBFF00000 # -1.875000 -/* 0A3544 800A2944 014B6821 */ addu $t5, $t2, $t3 -/* 0A3548 800A2948 8DA20004 */ lw $v0, 4($t5) -/* 0A354C 800A294C 44812800 */ mtc1 $at, $f5 -/* 0A3550 800A2950 44802000 */ mtc1 $zero, $f4 -/* 0A3554 800A2954 46000321 */ cvt.d.s $f12, $f0 -/* 0A3558 800A2958 462C2032 */ c.eq.d $f4, $f12 -/* 0A355C 800A295C 2442FFFF */ addiu $v0, $v0, -1 -/* 0A3560 800A2960 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A3564 800A2964 00027100 */ sll $t6, $v0, 4 -/* 0A3568 800A2968 45000003 */ bc1f .L800A2978 -/* 0A356C 800A296C 01C01025 */ move $v0, $t6 -/* 0A3570 800A2970 10000078 */ b .L800A2B54 -/* 0A3574 800A2974 A6000018 */ sh $zero, 0x18($s0) -.L800A2978: -/* 0A3578 800A2978 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 0A357C 800A297C 44819800 */ mtc1 $at, $f19 -/* 0A3580 800A2980 44809000 */ mtc1 $zero, $f18 -/* 0A3584 800A2984 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 0A3588 800A2988 462C903C */ c.lt.d $f18, $f12 -/* 0A358C 800A298C 00000000 */ nop -/* 0A3590 800A2990 45000015 */ bc1f .L800A29E8 -/* 0A3594 800A2994 00000000 */ nop -/* 0A3598 800A2998 46326181 */ sub.d $f6, $f12, $f18 -/* 0A359C 800A299C 44825000 */ mtc1 $v0, $f10 -/* 0A35A0 800A29A0 462033A0 */ cvt.s.d $f14, $f6 -/* 0A35A4 800A29A4 460070A1 */ cvt.d.s $f2, $f14 -/* 0A35A8 800A29A8 46221200 */ add.d $f8, $f2, $f2 -/* 0A35AC 800A29AC 46805420 */ cvt.s.w $f16, $f10 -/* 0A35B0 800A29B0 462043A0 */ cvt.s.d $f14, $f8 -/* 0A35B4 800A29B4 46107102 */ mul.s $f4, $f14, $f16 -/* 0A35B8 800A29B8 46048181 */ sub.s $f6, $f16, $f4 -/* 0A35BC 800A29BC 444FF800 */ cfc1 $t7, $31 -/* 0A35C0 800A29C0 00000000 */ nop -/* 0A35C4 800A29C4 35E10003 */ ori $at, $t7, 3 -/* 0A35C8 800A29C8 38210002 */ xori $at, $at, 2 -/* 0A35CC 800A29CC 44C1F800 */ ctc1 $at, $31 -/* 0A35D0 800A29D0 00000000 */ nop -/* 0A35D4 800A29D4 46003224 */ cvt.w.s $f8, $f6 -/* 0A35D8 800A29D8 44184000 */ mfc1 $t8, $f8 -/* 0A35DC 800A29DC 44CFF800 */ ctc1 $t7, $31 -/* 0A35E0 800A29E0 1000005C */ b .L800A2B54 -/* 0A35E4 800A29E4 A6180018 */ sh $t8, 0x18($s0) -.L800A29E8: -/* 0A35E8 800A29E8 44815000 */ mtc1 $at, $f10 -/* 0A35EC 800A29EC 44822000 */ mtc1 $v0, $f4 -/* 0A35F0 800A29F0 460A0382 */ mul.s $f14, $f0, $f10 -/* 0A35F4 800A29F4 468021A0 */ cvt.s.w $f6, $f4 -/* 0A35F8 800A29F8 460E3202 */ mul.s $f8, $f6, $f14 -/* 0A35FC 800A29FC 4459F800 */ cfc1 $t9, $31 -/* 0A3600 800A2A00 00000000 */ nop -/* 0A3604 800A2A04 37210003 */ ori $at, $t9, 3 -/* 0A3608 800A2A08 38210002 */ xori $at, $at, 2 -/* 0A360C 800A2A0C 44C1F800 */ ctc1 $at, $31 -/* 0A3610 800A2A10 00000000 */ nop -/* 0A3614 800A2A14 460042A4 */ cvt.w.s $f10, $f8 -/* 0A3618 800A2A18 440C5000 */ mfc1 $t4, $f10 -/* 0A361C 800A2A1C 44D9F800 */ ctc1 $t9, $31 -/* 0A3620 800A2A20 1000004C */ b .L800A2B54 -/* 0A3624 800A2A24 A60C0018 */ sh $t4, 0x18($s0) -.L800A2A28: -/* 0A3628 800A2A28 0C01BAA8 */ jal func_8006EAA0 -/* 0A362C 800A2A2C AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A3630 800A2A30 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A3634 800A2A34 14400047 */ bnez $v0, .L800A2B54 -/* 0A3638 800A2A38 3C058012 */ lui $a1, %hi(D_80126D69) # $a1, 0x8012 -/* 0A363C 800A2A3C 24A56D69 */ addiu $a1, %lo(D_80126D69) # addiu $a1, $a1, 0x6d69 -/* 0A3640 800A2A40 80A20000 */ lb $v0, ($a1) -/* 0A3644 800A2A44 8FAC00C8 */ lw $t4, 0xc8($sp) -/* 0A3648 800A2A48 04410012 */ bgez $v0, .L800A2A94 -/* 0A364C 800A2A4C 00000000 */ nop -/* 0A3650 800A2A50 8FAA00C8 */ lw $t2, 0xc8($sp) -/* 0A3654 800A2A54 86040018 */ lh $a0, 0x18($s0) -/* 0A3658 800A2A58 01420019 */ multu $t2, $v0 -/* 0A365C 800A2A5C 240E0001 */ li $t6, 1 -/* 0A3660 800A2A60 00001812 */ mflo $v1 -/* 0A3664 800A2A64 00035823 */ negu $t3, $v1 -/* 0A3668 800A2A68 0164082A */ slt $at, $t3, $a0 -/* 0A366C 800A2A6C 10200003 */ beqz $at, .L800A2A7C -/* 0A3670 800A2A70 00836821 */ addu $t5, $a0, $v1 -/* 0A3674 800A2A74 10000037 */ b .L800A2B54 -/* 0A3678 800A2A78 A60D0018 */ sh $t5, 0x18($s0) -.L800A2A7C: -/* 0A367C 800A2A7C A60E0018 */ sh $t6, 0x18($s0) -/* 0A3680 800A2A80 80AF0000 */ lb $t7, ($a1) -/* 0A3684 800A2A84 00000000 */ nop -/* 0A3688 800A2A88 000FC023 */ negu $t8, $t7 -/* 0A368C 800A2A8C 10000031 */ b .L800A2B54 -/* 0A3690 800A2A90 A0B80000 */ sb $t8, ($a1) -.L800A2A94: -/* 0A3694 800A2A94 01820019 */ multu $t4, $v0 -/* 0A3698 800A2A98 86190018 */ lh $t9, 0x18($s0) -/* 0A369C 800A2A9C 00005012 */ mflo $t2 -/* 0A36A0 800A2AA0 032A5821 */ addu $t3, $t9, $t2 -/* 0A36A4 800A2AA4 A60B0018 */ sh $t3, 0x18($s0) -/* 0A36A8 800A2AA8 8FAD0098 */ lw $t5, 0x98($sp) -/* 0A36AC 800A2AAC 92580000 */ lbu $t8, ($s2) -/* 0A36B0 800A2AB0 8DAE0000 */ lw $t6, ($t5) -/* 0A36B4 800A2AB4 001860C0 */ sll $t4, $t8, 3 -/* 0A36B8 800A2AB8 8DCF0044 */ lw $t7, 0x44($t6) -/* 0A36BC 800A2ABC 860B0018 */ lh $t3, 0x18($s0) -/* 0A36C0 800A2AC0 01ECC821 */ addu $t9, $t7, $t4 -/* 0A36C4 800A2AC4 8F230004 */ lw $v1, 4($t9) -/* 0A36C8 800A2AC8 3C0D8012 */ lui $t5, %hi(D_80126D68) # $t5, 0x8012 -/* 0A36CC 800A2ACC 2463FFFF */ addiu $v1, $v1, -1 -/* 0A36D0 800A2AD0 00035100 */ sll $t2, $v1, 4 -/* 0A36D4 800A2AD4 016A082A */ slt $at, $t3, $t2 -/* 0A36D8 800A2AD8 1420001F */ bnez $at, .L800A2B58 -/* 0A36DC 800A2ADC 02002025 */ move $a0, $s0 -/* 0A36E0 800A2AE0 91AD6D68 */ lbu $t5, %lo(D_80126D68)($t5) -/* 0A36E4 800A2AE4 00000000 */ nop -/* 0A36E8 800A2AE8 11A00007 */ beqz $t5, .L800A2B08 -/* 0A36EC 800A2AEC 00000000 */ nop -/* 0A36F0 800A2AF0 80AE0000 */ lb $t6, ($a1) -/* 0A36F4 800A2AF4 254FFFFF */ addiu $t7, $t2, -1 -/* 0A36F8 800A2AF8 000EC023 */ negu $t8, $t6 -/* 0A36FC 800A2AFC A0B80000 */ sb $t8, ($a1) -/* 0A3700 800A2B00 10000014 */ b .L800A2B54 -/* 0A3704 800A2B04 A60F0018 */ sh $t7, 0x18($s0) -.L800A2B08: -/* 0A3708 800A2B08 A6000018 */ sh $zero, 0x18($s0) -/* 0A370C 800A2B0C 8FAC00A0 */ lw $t4, 0xa0($sp) -/* 0A3710 800A2B10 00000000 */ nop -/* 0A3714 800A2B14 919901FC */ lbu $t9, 0x1fc($t4) -/* 0A3718 800A2B18 00000000 */ nop -/* 0A371C 800A2B1C 1720000E */ bnez $t9, .L800A2B58 -/* 0A3720 800A2B20 02002025 */ move $a0, $s0 -/* 0A3724 800A2B24 818A01D8 */ lb $t2, 0x1d8($t4) -/* 0A3728 800A2B28 24040004 */ li $a0, 4 -/* 0A372C 800A2B2C 15400009 */ bnez $t2, .L800A2B54 -/* 0A3730 800A2B30 00002825 */ move $a1, $zero -/* 0A3734 800A2B34 240B0001 */ li $t3, 1 -/* 0A3738 800A2B38 AFAB0010 */ sw $t3, 0x10($sp) -/* 0A373C 800A2B3C 24060004 */ li $a2, 4 -/* 0A3740 800A2B40 24070001 */ li $a3, 1 -/* 0A3744 800A2B44 0C028DB3 */ jal func_800A36CC -/* 0A3748 800A2B48 AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A374C 800A2B4C 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A3750 800A2B50 00000000 */ nop -.L800A2B54: -/* 0A3754 800A2B54 02002025 */ move $a0, $s0 -.L800A2B58: -/* 0A3758 800A2B58 0C01874C */ jal func_80061D30 -/* 0A375C 800A2B5C AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A3760 800A2B60 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A3764 800A2B64 00000000 */ nop -.L800A2B68: -/* 0A3768 800A2B68 8E270000 */ lw $a3, ($s1) -/* 0A376C 800A2B6C 3C128012 */ lui $s2, %hi(D_80126CFC) # $s2, 0x8012 -/* 0A3770 800A2B70 26526CFC */ addiu $s2, %lo(D_80126CFC) # addiu $s2, $s2, 0x6cfc -/* 0A3774 800A2B74 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A3778 800A2B78 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A377C 800A2B7C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A3780 800A2B80 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A3784 800A2B84 02402025 */ move $a0, $s2 -/* 0A3788 800A2B88 AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A378C 800A2B8C 0C02A980 */ jal func_800AA600 -/* 0A3790 800A2B90 24E70340 */ addiu $a3, $a3, 0x340 -/* 0A3794 800A2B94 8FA500A0 */ lw $a1, 0xa0($sp) -/* 0A3798 800A2B98 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A379C 800A2B9C 80A30193 */ lb $v1, 0x193($a1) -/* 0A37A0 800A2BA0 00004025 */ move $t0, $zero -/* 0A37A4 800A2BA4 0460000C */ bltz $v1, .L800A2BD8 -/* 0A37A8 800A2BA8 3C188000 */ lui $t8, %hi(D_80000300) # $t8, 0x8000 -/* 0A37AC 800A2BAC 00086880 */ sll $t5, $t0, 2 -/* 0A37B0 800A2BB0 00AD8021 */ addu $s0, $a1, $t5 -/* 0A37B4 800A2BB4 24020005 */ li $v0, 5 -.L800A2BB8: -/* 0A37B8 800A2BB8 8E0E0128 */ lw $t6, 0x128($s0) -/* 0A37BC 800A2BBC 25080001 */ addiu $t0, $t0, 1 -/* 0A37C0 800A2BC0 0068082A */ slt $at, $v1, $t0 -/* 0A37C4 800A2BC4 26100004 */ addiu $s0, $s0, 4 -/* 0A37C8 800A2BC8 14200003 */ bnez $at, .L800A2BD8 -/* 0A37CC 800A2BCC 012E4821 */ addu $t1, $t1, $t6 -/* 0A37D0 800A2BD0 1502FFF9 */ bne $t0, $v0, .L800A2BB8 -/* 0A37D4 800A2BD4 00000000 */ nop -.L800A2BD8: -/* 0A37D8 800A2BD8 8F180300 */ lw $t8, %lo(D_80000300)($t8) -/* 0A37DC 800A2BDC 34048CA0 */ li $a0, 36000 -/* 0A37E0 800A2BE0 17000012 */ bnez $t8, .L800A2C2C -/* 0A37E4 800A2BE4 00000000 */ nop -/* 0A37E8 800A2BE8 44892000 */ mtc1 $t1, $f4 -/* 0A37EC 800A2BEC 3C01800F */ lui $at, %hi(D_800E873C) # $at, 0x800f -/* 0A37F0 800A2BF0 468021A0 */ cvt.s.w $f6, $f4 -/* 0A37F4 800A2BF4 C42B8738 */ lwc1 $f11, %lo(D_800E8738)($at) -/* 0A37F8 800A2BF8 C42A873C */ lwc1 $f10, %lo(D_800E873C)($at) -/* 0A37FC 800A2BFC 46003221 */ cvt.d.s $f8, $f6 -/* 0A3800 800A2C00 462A4102 */ mul.d $f4, $f8, $f10 -/* 0A3804 800A2C04 444FF800 */ cfc1 $t7, $31 -/* 0A3808 800A2C08 00000000 */ nop -/* 0A380C 800A2C0C 35E10003 */ ori $at, $t7, 3 -/* 0A3810 800A2C10 38210002 */ xori $at, $at, 2 -/* 0A3814 800A2C14 44C1F800 */ ctc1 $at, $31 -/* 0A3818 800A2C18 00000000 */ nop -/* 0A381C 800A2C1C 462021A4 */ cvt.w.d $f6, $f4 -/* 0A3820 800A2C20 44CFF800 */ ctc1 $t7, $31 -/* 0A3824 800A2C24 44093000 */ mfc1 $t1, $f6 -/* 0A3828 800A2C28 00000000 */ nop -.L800A2C2C: -/* 0A382C 800A2C2C 0C00322D */ jal func_8000C8B4 -/* 0A3830 800A2C30 AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A3834 800A2C34 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A3838 800A2C38 00000000 */ nop -/* 0A383C 800A2C3C 0049082A */ slt $at, $v0, $t1 -/* 0A3840 800A2C40 10200005 */ beqz $at, .L800A2C58 -/* 0A3844 800A2C44 24100444 */ li $s0, 1092 -/* 0A3848 800A2C48 0C00322D */ jal func_8000C8B4 -/* 0A384C 800A2C4C 34048CA0 */ li $a0, 36000 -/* 0A3850 800A2C50 00404825 */ move $t1, $v0 -/* 0A3854 800A2C54 24100444 */ li $s0, 1092 -.L800A2C58: -/* 0A3858 800A2C58 01300019 */ multu $t1, $s0 -/* 0A385C 800A2C5C 8E2A0000 */ lw $t2, ($s1) -/* 0A3860 800A2C60 0000C812 */ mflo $t9 -/* 0A3864 800A2C64 272C7FF8 */ addiu $t4, $t9, 0x7ff8 -/* 0A3868 800A2C68 A54C0444 */ sh $t4, 0x444($t2) -/* 0A386C 800A2C6C 0C00382C */ jal func_8000E0B0 -/* 0A3870 800A2C70 AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A3874 800A2C74 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A3878 800A2C78 1C40000D */ bgtz $v0, .L800A2CB0 -/* 0A387C 800A2C7C 2403003C */ li $v1, 60 -/* 0A3880 800A2C80 8E270000 */ lw $a3, ($s1) -/* 0A3884 800A2C84 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A3888 800A2C88 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A388C 800A2C8C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A3890 800A2C90 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A3894 800A2C94 02402025 */ move $a0, $s2 -/* 0A3898 800A2C98 AFA900A8 */ sw $t1, 0xa8($sp) -/* 0A389C 800A2C9C 0C02A980 */ jal func_800AA600 -/* 0A38A0 800A2CA0 24E70440 */ addiu $a3, $a3, 0x440 -/* 0A38A4 800A2CA4 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0A38A8 800A2CA8 00000000 */ nop -/* 0A38AC 800A2CAC 2403003C */ li $v1, 60 -.L800A2CB0: -/* 0A38B0 800A2CB0 0123001A */ div $zero, $t1, $v1 -/* 0A38B4 800A2CB4 8E380000 */ lw $t8, ($s1) -/* 0A38B8 800A2CB8 14600002 */ bnez $v1, .L800A2CC4 -/* 0A38BC 800A2CBC 00000000 */ nop -/* 0A38C0 800A2CC0 0007000D */ break 7 -.L800A2CC4: -/* 0A38C4 800A2CC4 2401FFFF */ li $at, -1 -/* 0A38C8 800A2CC8 14610004 */ bne $v1, $at, .L800A2CDC -/* 0A38CC 800A2CCC 3C018000 */ lui $at, 0x8000 -/* 0A38D0 800A2CD0 15210002 */ bne $t1, $at, .L800A2CDC -/* 0A38D4 800A2CD4 00000000 */ nop -/* 0A38D8 800A2CD8 0006000D */ break 6 -.L800A2CDC: -/* 0A38DC 800A2CDC 00005812 */ mflo $t3 -/* 0A38E0 800A2CE0 256D001E */ addiu $t5, $t3, 0x1e -/* 0A38E4 800A2CE4 00000000 */ nop -/* 0A38E8 800A2CE8 01A3001A */ div $zero, $t5, $v1 -/* 0A38EC 800A2CEC 14600002 */ bnez $v1, .L800A2CF8 -/* 0A38F0 800A2CF0 00000000 */ nop -/* 0A38F4 800A2CF4 0007000D */ break 7 -.L800A2CF8: -/* 0A38F8 800A2CF8 2401FFFF */ li $at, -1 -/* 0A38FC 800A2CFC 14610004 */ bne $v1, $at, .L800A2D10 -/* 0A3900 800A2D00 3C018000 */ lui $at, 0x8000 -/* 0A3904 800A2D04 15A10002 */ bne $t5, $at, .L800A2D10 -/* 0A3908 800A2D08 00000000 */ nop -/* 0A390C 800A2D0C 0006000D */ break 6 -.L800A2D10: -/* 0A3910 800A2D10 3C0141E0 */ li $at, 0x41E00000 # 28.000000 -/* 0A3914 800A2D14 44815000 */ mtc1 $at, $f10 -/* 0A3918 800A2D18 00004810 */ mfhi $t1 -/* 0A391C 800A2D1C 00000000 */ nop -/* 0A3920 800A2D20 00000000 */ nop -/* 0A3924 800A2D24 01300019 */ multu $t1, $s0 -/* 0A3928 800A2D28 00007012 */ mflo $t6 -/* 0A392C 800A2D2C A70E0444 */ sh $t6, 0x444($t8) -/* 0A3930 800A2D30 8E220000 */ lw $v0, ($s1) -/* 0A3934 800A2D34 00000000 */ nop -/* 0A3938 800A2D38 C4480350 */ lwc1 $f8, 0x350($v0) -/* 0A393C 800A2D3C 00000000 */ nop -/* 0A3940 800A2D40 460A4100 */ add.s $f4, $f8, $f10 -/* 0A3944 800A2D44 0C00382C */ jal func_8000E0B0 -/* 0A3948 800A2D48 E4440450 */ swc1 $f4, 0x450($v0) -/* 0A394C 800A2D4C 1C40000A */ bgtz $v0, .L800A2D78 -/* 0A3950 800A2D50 8FAF0098 */ lw $t7, 0x98($sp) -/* 0A3954 800A2D54 8E270000 */ lw $a3, ($s1) -/* 0A3958 800A2D58 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A395C 800A2D5C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A3960 800A2D60 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A3964 800A2D64 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A3968 800A2D68 02402025 */ move $a0, $s2 -/* 0A396C 800A2D6C 0C02A980 */ jal func_800AA600 -/* 0A3970 800A2D70 24E70440 */ addiu $a3, $a3, 0x440 -/* 0A3974 800A2D74 8FAF0098 */ lw $t7, 0x98($sp) -.L800A2D78: -/* 0A3978 800A2D78 24040001 */ li $a0, 1 -/* 0A397C 800A2D7C 0C01A142 */ jal func_80068508 -/* 0A3980 800A2D80 A1E00020 */ sb $zero, 0x20($t7) -/* 0A3984 800A2D84 8FA400A0 */ lw $a0, 0xa0($sp) -/* 0A3988 800A2D88 8FA500C8 */ lw $a1, 0xc8($sp) -/* 0A398C 800A2D8C 0C0283AD */ jal func_800A0EB4 -/* 0A3990 800A2D90 00000000 */ nop -/* 0A3994 800A2D94 8FA900A0 */ lw $t1, 0xa0($sp) -/* 0A3998 800A2D98 00000000 */ nop -/* 0A399C 800A2D9C 813901D8 */ lb $t9, 0x1d8($t1) -/* 0A39A0 800A2DA0 00000000 */ nop -/* 0A39A4 800A2DA4 172000CC */ bnez $t9, .L800A30D8 -/* 0A39A8 800A2DA8 00000000 */ nop -/* 0A39AC 800A2DAC 444AF800 */ cfc1 $t2, $31 -/* 0A39B0 800A2DB0 8E2C0000 */ lw $t4, ($s1) -/* 0A39B4 800A2DB4 35410003 */ ori $at, $t2, 3 -/* 0A39B8 800A2DB8 38210002 */ xori $at, $at, 2 -/* 0A39BC 800A2DBC 44C1F800 */ ctc1 $at, $31 -/* 0A39C0 800A2DC0 C58602F0 */ lwc1 $f6, 0x2f0($t4) -/* 0A39C4 800A2DC4 00004025 */ move $t0, $zero -/* 0A39C8 800A2DC8 46003224 */ cvt.w.s $f8, $f6 -/* 0A39CC 800A2DCC 3C0E8012 */ lui $t6, %hi(D_80126D60) # $t6, 0x8012 -/* 0A39D0 800A2DD0 440B4000 */ mfc1 $t3, $f8 -/* 0A39D4 800A2DD4 44CAF800 */ ctc1 $t2, $31 -/* 0A39D8 800A2DD8 AFAB00B8 */ sw $t3, 0xb8($sp) -/* 0A39DC 800A2DDC 812D0194 */ lb $t5, 0x194($t1) -/* 0A39E0 800A2DE0 00000000 */ nop -/* 0A39E4 800A2DE4 19A00067 */ blez $t5, .L800A2F84 -/* 0A39E8 800A2DE8 00086880 */ sll $t5, $t0, 2 -/* 0A39EC 800A2DEC 8DCE6D60 */ lw $t6, %lo(D_80126D60)($t6) -/* 0A39F0 800A2DF0 00001080 */ sll $v0, $zero, 2 -/* 0A39F4 800A2DF4 81D8004B */ lb $t8, 0x4b($t6) -/* 0A39F8 800A2DF8 01228021 */ addu $s0, $t1, $v0 -/* 0A39FC 800A2DFC 1B000060 */ blez $t8, .L800A2F80 -/* 0A3A00 800A2E00 3C0F800E */ lui $t7, %hi(D_800E27AC) # $t7, 0x800e -/* 0A3A04 800A2E04 25EF27AC */ addiu $t7, %lo(D_800E27AC) # addiu $t7, $t7, 0x27ac -/* 0A3A08 800A2E08 004FC821 */ addu $t9, $v0, $t7 -/* 0A3A0C 800A2E0C AFB9003C */ sw $t9, 0x3c($sp) -.L800A2E10: -/* 0A3A10 800A2E10 8E040128 */ lw $a0, 0x128($s0) -/* 0A3A14 800A2E14 AFA800BC */ sw $t0, 0xbc($sp) -/* 0A3A18 800A2E18 27A500B4 */ addiu $a1, $sp, 0xb4 -/* 0A3A1C 800A2E1C 27A600B0 */ addiu $a2, $sp, 0xb0 -/* 0A3A20 800A2E20 0C0165E4 */ jal func_80059790 -/* 0A3A24 800A2E24 27A700AC */ addiu $a3, $sp, 0xac -/* 0A3A28 800A2E28 8FAC003C */ lw $t4, 0x3c($sp) -/* 0A3A2C 800A2E2C 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e -/* 0A3A30 800A2E30 8D8A0000 */ lw $t2, ($t4) -/* 0A3A34 800A2E34 444DF800 */ cfc1 $t5, $31 -/* 0A3A38 800A2E38 AC2A2834 */ sw $t2, %lo(D_800E2834)($at) -/* 0A3A3C 800A2E3C 8E2B0000 */ lw $t3, ($s1) -/* 0A3A40 800A2E40 35A10003 */ ori $at, $t5, 3 -/* 0A3A44 800A2E44 38210002 */ xori $at, $at, 2 -/* 0A3A48 800A2E48 44C1F800 */ ctc1 $at, $31 -/* 0A3A4C 800A2E4C C56A02EC */ lwc1 $f10, 0x2ec($t3) -/* 0A3A50 800A2E50 8FAE00AC */ lw $t6, 0xac($sp) -/* 0A3A54 800A2E54 46005124 */ cvt.w.s $f4, $f10 -/* 0A3A58 800A2E58 8FA500B8 */ lw $a1, 0xb8($sp) -/* 0A3A5C 800A2E5C 44042000 */ mfc1 $a0, $f4 -/* 0A3A60 800A2E60 8FA600B4 */ lw $a2, 0xb4($sp) -/* 0A3A64 800A2E64 8FA700B0 */ lw $a3, 0xb0($sp) -/* 0A3A68 800A2E68 24180001 */ li $t8, 1 -/* 0A3A6C 800A2E6C 44CDF800 */ ctc1 $t5, $31 -/* 0A3A70 800A2E70 AFB80014 */ sw $t8, 0x14($sp) -/* 0A3A74 800A2E74 0C029FEF */ jal func_800A7FBC -/* 0A3A78 800A2E78 AFAE0010 */ sw $t6, 0x10($sp) -/* 0A3A7C 800A2E7C 240FFFFE */ li $t7, -2 -/* 0A3A80 800A2E80 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e -/* 0A3A84 800A2E84 AC2F2834 */ sw $t7, %lo(D_800E2834)($at) -/* 0A3A88 800A2E88 8FB900B8 */ lw $t9, 0xb8($sp) -/* 0A3A8C 800A2E8C 8E430000 */ lw $v1, ($s2) -/* 0A3A90 800A2E90 272C000C */ addiu $t4, $t9, 0xc -/* 0A3A94 800A2E94 246A0008 */ addiu $t2, $v1, 8 -/* 0A3A98 800A2E98 8FA800BC */ lw $t0, 0xbc($sp) -/* 0A3A9C 800A2E9C AFAC00B8 */ sw $t4, 0xb8($sp) -/* 0A3AA0 800A2EA0 AE4A0000 */ sw $t2, ($s2) -/* 0A3AA4 800A2EA4 3C0BFA00 */ lui $t3, 0xfa00 -/* 0A3AA8 800A2EA8 240DFFFF */ li $t5, -1 -/* 0A3AAC 800A2EAC AC6D0004 */ sw $t5, 4($v1) -/* 0A3AB0 800A2EB0 AC6B0000 */ sw $t3, ($v1) -/* 0A3AB4 800A2EB4 8E2E0000 */ lw $t6, ($s1) -/* 0A3AB8 800A2EB8 25090001 */ addiu $t1, $t0, 1 -/* 0A3ABC 800A2EBC A5C90338 */ sh $t1, 0x338($t6) -/* 0A3AC0 800A2EC0 8E270000 */ lw $a3, ($s1) -/* 0A3AC4 800A2EC4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A3AC8 800A2EC8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A3ACC 800A2ECC 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A3AD0 800A2ED0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A3AD4 800A2ED4 AFA90050 */ sw $t1, 0x50($sp) -/* 0A3AD8 800A2ED8 02402025 */ move $a0, $s2 -/* 0A3ADC 800A2EDC 0C02A980 */ jal func_800AA600 -/* 0A3AE0 800A2EE0 24E70320 */ addiu $a3, $a3, 0x320 -/* 0A3AE4 800A2EE4 8E270000 */ lw $a3, ($s1) -/* 0A3AE8 800A2EE8 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A3AEC 800A2EEC 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A3AF0 800A2EF0 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A3AF4 800A2EF4 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A3AF8 800A2EF8 02402025 */ move $a0, $s2 -/* 0A3AFC 800A2EFC 0C02A980 */ jal func_800AA600 -/* 0A3B00 800A2F00 24E70300 */ addiu $a3, $a3, 0x300 -/* 0A3B04 800A2F04 8E220000 */ lw $v0, ($s1) -/* 0A3B08 800A2F08 3C014140 */ li $at, 0x41400000 # 12.000000 -/* 0A3B0C 800A2F0C 44810000 */ mtc1 $at, $f0 -/* 0A3B10 800A2F10 C4460330 */ lwc1 $f6, 0x330($v0) -/* 0A3B14 800A2F14 26100004 */ addiu $s0, $s0, 4 -/* 0A3B18 800A2F18 46003200 */ add.s $f8, $f6, $f0 -/* 0A3B1C 800A2F1C 3C0A8012 */ lui $t2, %hi(D_80126D60) # $t2, 0x8012 -/* 0A3B20 800A2F20 E4480330 */ swc1 $f8, 0x330($v0) -/* 0A3B24 800A2F24 8E220000 */ lw $v0, ($s1) -/* 0A3B28 800A2F28 00000000 */ nop -/* 0A3B2C 800A2F2C C44A0310 */ lwc1 $f10, 0x310($v0) -/* 0A3B30 800A2F30 00000000 */ nop -/* 0A3B34 800A2F34 46005100 */ add.s $f4, $f10, $f0 -/* 0A3B38 800A2F38 E4440310 */ swc1 $f4, 0x310($v0) -/* 0A3B3C 800A2F3C 8FB8003C */ lw $t8, 0x3c($sp) -/* 0A3B40 800A2F40 8FB900A0 */ lw $t9, 0xa0($sp) -/* 0A3B44 800A2F44 270F0004 */ addiu $t7, $t8, 4 -/* 0A3B48 800A2F48 AFAF003C */ sw $t7, 0x3c($sp) -/* 0A3B4C 800A2F4C 8FA80050 */ lw $t0, 0x50($sp) -/* 0A3B50 800A2F50 832C0194 */ lb $t4, 0x194($t9) -/* 0A3B54 800A2F54 00000000 */ nop -/* 0A3B58 800A2F58 010C082A */ slt $at, $t0, $t4 -/* 0A3B5C 800A2F5C 10200009 */ beqz $at, .L800A2F84 -/* 0A3B60 800A2F60 00086880 */ sll $t5, $t0, 2 -/* 0A3B64 800A2F64 8D4A6D60 */ lw $t2, %lo(D_80126D60)($t2) -/* 0A3B68 800A2F68 00000000 */ nop -/* 0A3B6C 800A2F6C 814B004B */ lb $t3, 0x4b($t2) -/* 0A3B70 800A2F70 00000000 */ nop -/* 0A3B74 800A2F74 010B082A */ slt $at, $t0, $t3 -/* 0A3B78 800A2F78 1420FFA5 */ bnez $at, .L800A2E10 -/* 0A3B7C 800A2F7C 00000000 */ nop -.L800A2F80: -/* 0A3B80 800A2F80 00086880 */ sll $t5, $t0, 2 -.L800A2F84: -/* 0A3B84 800A2F84 01A86823 */ subu $t5, $t5, $t0 -/* 0A3B88 800A2F88 000D6880 */ sll $t5, $t5, 2 -/* 0A3B8C 800A2F8C 448D3000 */ mtc1 $t5, $f6 -/* 0A3B90 800A2F90 8E220000 */ lw $v0, ($s1) -/* 0A3B94 800A2F94 46803020 */ cvt.s.w $f0, $f6 -/* 0A3B98 800A2F98 C4480330 */ lwc1 $f8, 0x330($v0) -/* 0A3B9C 800A2F9C 8FA900A0 */ lw $t1, 0xa0($sp) -/* 0A3BA0 800A2FA0 46004281 */ sub.s $f10, $f8, $f0 -/* 0A3BA4 800A2FA4 3C108012 */ lui $s0, %hi(D_80126D4C) # $s0, 0x8012 -/* 0A3BA8 800A2FA8 E44A0330 */ swc1 $f10, 0x330($v0) -/* 0A3BAC 800A2FAC 8E220000 */ lw $v0, ($s1) -/* 0A3BB0 800A2FB0 26106D4C */ addiu $s0, %lo(D_80126D4C) # addiu $s0, $s0, 0x6d4c -/* 0A3BB4 800A2FB4 C4440310 */ lwc1 $f4, 0x310($v0) -/* 0A3BB8 800A2FB8 00000000 */ nop -/* 0A3BBC 800A2FBC 46002181 */ sub.s $f6, $f4, $f0 -/* 0A3BC0 800A2FC0 E4460310 */ swc1 $f6, 0x310($v0) -/* 0A3BC4 800A2FC4 912E01EF */ lbu $t6, 0x1ef($t1) -/* 0A3BC8 800A2FC8 00000000 */ nop -/* 0A3BCC 800A2FCC 31D80004 */ andi $t8, $t6, 4 -/* 0A3BD0 800A2FD0 13000010 */ beqz $t8, .L800A3014 -/* 0A3BD4 800A2FD4 00000000 */ nop -/* 0A3BD8 800A2FD8 8E0F0000 */ lw $t7, ($s0) -/* 0A3BDC 800A2FDC 24040007 */ li $a0, 7 -/* 0A3BE0 800A2FE0 1DE0000C */ bgtz $t7, .L800A3014 -/* 0A3BE4 800A2FE4 24050003 */ li $a1, 3 -/* 0A3BE8 800A2FE8 00003025 */ move $a2, $zero -/* 0A3BEC 800A2FEC 24070004 */ li $a3, 4 -/* 0A3BF0 800A2FF0 0C028DB3 */ jal func_800A36CC -/* 0A3BF4 800A2FF4 AFA00010 */ sw $zero, 0x10($sp) -/* 0A3BF8 800A2FF8 8FA900A0 */ lw $t1, 0xa0($sp) -/* 0A3BFC 800A2FFC 2419003C */ li $t9, 60 -/* 0A3C00 800A3000 AE190000 */ sw $t9, ($s0) -/* 0A3C04 800A3004 912A01EF */ lbu $t2, 0x1ef($t1) -/* 0A3C08 800A3008 00000000 */ nop -/* 0A3C0C 800A300C 314BFFFB */ andi $t3, $t2, 0xfffb -/* 0A3C10 800A3010 A12B01EF */ sb $t3, 0x1ef($t1) -.L800A3014: -/* 0A3C14 800A3014 3C108012 */ lui $s0, %hi(D_80126D4C) # $s0, 0x8012 -/* 0A3C18 800A3018 26106D4C */ addiu $s0, %lo(D_80126D4C) # addiu $s0, $s0, 0x6d4c -/* 0A3C1C 800A301C 8E020000 */ lw $v0, ($s0) -/* 0A3C20 800A3020 8FAD00C8 */ lw $t5, 0xc8($sp) -/* 0A3C24 800A3024 18400006 */ blez $v0, .L800A3040 -/* 0A3C28 800A3028 004D7023 */ subu $t6, $v0, $t5 -/* 0A3C2C 800A302C AE0E0000 */ sw $t6, ($s0) -/* 0A3C30 800A3030 05C10003 */ bgez $t6, .L800A3040 -/* 0A3C34 800A3034 01C01025 */ move $v0, $t6 -/* 0A3C38 800A3038 AE000000 */ sw $zero, ($s0) -/* 0A3C3C 800A303C 00001025 */ move $v0, $zero -.L800A3040: -/* 0A3C40 800A3040 14400025 */ bnez $v0, .L800A30D8 -/* 0A3C44 800A3044 00000000 */ nop -/* 0A3C48 800A3048 813801D8 */ lb $t8, 0x1d8($t1) -/* 0A3C4C 800A304C 240FFF9C */ li $t7, -100 -/* 0A3C50 800A3050 17000021 */ bnez $t8, .L800A30D8 -/* 0A3C54 800A3054 3C198012 */ lui $t9, %hi(D_80126D40) # $t9, 0x8012 -/* 0A3C58 800A3058 AE0F0000 */ sw $t7, ($s0) -/* 0A3C5C 800A305C 8F396D40 */ lw $t9, %lo(D_80126D40)($t9) -/* 0A3C60 800A3060 3C108012 */ lui $s0, %hi(D_80126D64) # $s0, 0x8012 -/* 0A3C64 800A3064 1720001C */ bnez $t9, .L800A30D8 -/* 0A3C68 800A3068 26106D64 */ addiu $s0, %lo(D_80126D64) # addiu $s0, $s0, 0x6d64 -/* 0A3C6C 800A306C 92050000 */ lbu $a1, ($s0) -/* 0A3C70 800A3070 00002025 */ move $a0, $zero -/* 0A3C74 800A3074 0C01BE53 */ jal func_8006F94C -/* 0A3C78 800A3078 24A50002 */ addiu $a1, $a1, 2 -/* 0A3C7C 800A307C 3C118012 */ lui $s1, %hi(D_80126D48) # $s1, 0x8012 -/* 0A3C80 800A3080 26316D48 */ addiu $s1, %lo(D_80126D48) # addiu $s1, $s1, 0x6d48 -/* 0A3C84 800A3084 962A0000 */ lhu $t2, ($s1) -/* 0A3C88 800A3088 2443014B */ addiu $v1, $v0, 0x14b -/* 0A3C8C 800A308C 306BFFFF */ andi $t3, $v1, 0xffff -/* 0A3C90 800A3090 154B000A */ bne $t2, $t3, .L800A30BC -/* 0A3C94 800A3094 3064FFFF */ andi $a0, $v1, 0xffff -.L800A3098: -/* 0A3C98 800A3098 92050000 */ lbu $a1, ($s0) -/* 0A3C9C 800A309C 00002025 */ move $a0, $zero -/* 0A3CA0 800A30A0 0C01BE53 */ jal func_8006F94C -/* 0A3CA4 800A30A4 24A50002 */ addiu $a1, $a1, 2 -/* 0A3CA8 800A30A8 962C0000 */ lhu $t4, ($s1) -/* 0A3CAC 800A30AC 2443014B */ addiu $v1, $v0, 0x14b -/* 0A3CB0 800A30B0 306DFFFF */ andi $t5, $v1, 0xffff -/* 0A3CB4 800A30B4 118DFFF8 */ beq $t4, $t5, .L800A3098 -/* 0A3CB8 800A30B8 3064FFFF */ andi $a0, $v1, 0xffff -.L800A30BC: -/* 0A3CBC 800A30BC 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A3CC0 800A30C0 A6240000 */ sh $a0, ($s1) -/* 0A3CC4 800A30C4 0C000741 */ jal func_80001D04 -/* 0A3CC8 800A30C8 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -/* 0A3CCC 800A30CC 240E0001 */ li $t6, 1 -/* 0A3CD0 800A30D0 8FA900A0 */ lw $t1, 0xa0($sp) -/* 0A3CD4 800A30D4 A20E0000 */ sb $t6, ($s0) -.L800A30D8: -/* 0A3CD8 800A30D8 81230193 */ lb $v1, 0x193($t1) -/* 0A3CDC 800A30DC 3C118012 */ lui $s1, %hi(D_80126D48) # $s1, 0x8012 -/* 0A3CE0 800A30E0 18600041 */ blez $v1, .L800A31E8 -/* 0A3CE4 800A30E4 26316D48 */ addiu $s1, %lo(D_80126D48) # addiu $s1, $s1, 0x6d48 -/* 0A3CE8 800A30E8 3C188012 */ lui $t8, %hi(D_80126D60) # $t8, 0x8012 -/* 0A3CEC 800A30EC 8F186D60 */ lw $t8, %lo(D_80126D60)($t8) -/* 0A3CF0 800A30F0 0003C880 */ sll $t9, $v1, 2 -/* 0A3CF4 800A30F4 830F004B */ lb $t7, 0x4b($t8) -/* 0A3CF8 800A30F8 01395021 */ addu $t2, $t1, $t9 -/* 0A3CFC 800A30FC 006F082A */ slt $at, $v1, $t7 -/* 0A3D00 800A3100 10200039 */ beqz $at, .L800A31E8 -/* 0A3D04 800A3104 00000000 */ nop -/* 0A3D08 800A3108 8D4B0128 */ lw $t3, 0x128($t2) -/* 0A3D0C 800A310C 3C0C8012 */ lui $t4, %hi(D_80126D40) # $t4, 0x8012 -/* 0A3D10 800A3110 29610014 */ slti $at, $t3, 0x14 -/* 0A3D14 800A3114 10200034 */ beqz $at, .L800A31E8 -/* 0A3D18 800A3118 00000000 */ nop -/* 0A3D1C 800A311C 8D8C6D40 */ lw $t4, %lo(D_80126D40)($t4) -/* 0A3D20 800A3120 00000000 */ nop -/* 0A3D24 800A3124 15800030 */ bnez $t4, .L800A31E8 -/* 0A3D28 800A3128 00000000 */ nop -/* 0A3D2C 800A312C 812D01D6 */ lb $t5, 0x1d6($t1) -/* 0A3D30 800A3130 00000000 */ nop -/* 0A3D34 800A3134 29A10003 */ slti $at, $t5, 3 -/* 0A3D38 800A3138 1020002B */ beqz $at, .L800A31E8 -/* 0A3D3C 800A313C 00000000 */ nop -/* 0A3D40 800A3140 0C01BAA4 */ jal func_8006EA90 -/* 0A3D44 800A3144 00000000 */ nop -/* 0A3D48 800A3148 3C108012 */ lui $s0, %hi(D_80127184) # $s0, 0x8012 -/* 0A3D4C 800A314C 26107184 */ addiu $s0, %lo(D_80127184) # addiu $s0, $s0, 0x7184 -/* 0A3D50 800A3150 0C01AF62 */ jal func_8006BD88 -/* 0A3D54 800A3154 AE020000 */ sw $v0, ($s0) -/* 0A3D58 800A3158 8FAE00A0 */ lw $t6, 0xa0($sp) -/* 0A3D5C 800A315C 8E190000 */ lw $t9, ($s0) -/* 0A3D60 800A3160 81C30193 */ lb $v1, 0x193($t6) -/* 0A3D64 800A3164 81CA01D6 */ lb $t2, 0x1d6($t6) -/* 0A3D68 800A3168 0003C080 */ sll $t8, $v1, 2 -/* 0A3D6C 800A316C 000A5880 */ sll $t3, $t2, 2 -/* 0A3D70 800A3170 01D87821 */ addu $t7, $t6, $t8 -/* 0A3D74 800A3174 032B6021 */ addu $t4, $t9, $t3 -/* 0A3D78 800A3178 8D8D0024 */ lw $t5, 0x24($t4) -/* 0A3D7C 800A317C 8DE40124 */ lw $a0, 0x124($t7) -/* 0A3D80 800A3180 0002C040 */ sll $t8, $v0, 1 -/* 0A3D84 800A3184 01B87821 */ addu $t7, $t5, $t8 -/* 0A3D88 800A3188 95EA0000 */ lhu $t2, ($t7) -/* 0A3D8C 800A318C 2465FFFF */ addiu $a1, $v1, -1 -/* 0A3D90 800A3190 008A082A */ slt $at, $a0, $t2 -/* 0A3D94 800A3194 10200014 */ beqz $at, .L800A31E8 -/* 0A3D98 800A3198 00000000 */ nop -/* 0A3D9C 800A319C 18A0000D */ blez $a1, .L800A31D4 -/* 0A3DA0 800A31A0 00804825 */ move $t1, $a0 -/* 0A3DA4 800A31A4 00001025 */ move $v0, $zero -/* 0A3DA8 800A31A8 01C08025 */ move $s0, $t6 -/* 0A3DAC 800A31AC 00051880 */ sll $v1, $a1, 2 -.L800A31B0: -/* 0A3DB0 800A31B0 8E190128 */ lw $t9, 0x128($s0) -/* 0A3DB4 800A31B4 24420004 */ addiu $v0, $v0, 4 -/* 0A3DB8 800A31B8 0139082A */ slt $at, $t1, $t9 -/* 0A3DBC 800A31BC 14200003 */ bnez $at, .L800A31CC -/* 0A3DC0 800A31C0 0043082A */ slt $at, $v0, $v1 -/* 0A3DC4 800A31C4 00004825 */ move $t1, $zero -/* 0A3DC8 800A31C8 0043082A */ slt $at, $v0, $v1 -.L800A31CC: -/* 0A3DCC 800A31CC 1420FFF8 */ bnez $at, .L800A31B0 -/* 0A3DD0 800A31D0 26100004 */ addiu $s0, $s0, 4 -.L800A31D4: -/* 0A3DD4 800A31D4 11200004 */ beqz $t1, .L800A31E8 -/* 0A3DD8 800A31D8 24040144 */ li $a0, 324 -/* 0A3DDC 800A31DC 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A3DE0 800A31E0 0C000741 */ jal func_80001D04 -/* 0A3DE4 800A31E4 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -.L800A31E8: -/* 0A3DE8 800A31E8 0C006CA2 */ jal func_8001B288 -/* 0A3DEC 800A31EC 00000000 */ nop -/* 0A3DF0 800A31F0 1040004F */ beqz $v0, .L800A3330 -/* 0A3DF4 800A31F4 8FAA00A0 */ lw $t2, 0xa0($sp) -/* 0A3DF8 800A31F8 0C006CB8 */ jal func_8001B2E0 -/* 0A3DFC 800A31FC 00000000 */ nop -/* 0A3E00 800A3200 1040004A */ beqz $v0, .L800A332C -/* 0A3E04 800A3204 00408025 */ move $s0, $v0 -/* 0A3E08 800A3208 0C0044E7 */ jal func_8001139C -/* 0A3E0C 800A320C 00000000 */ nop -/* 0A3E10 800A3210 14400047 */ bnez $v0, .L800A3330 -/* 0A3E14 800A3214 8FAA00A0 */ lw $t2, 0xa0($sp) -/* 0A3E18 800A3218 8FAB00A0 */ lw $t3, 0xa0($sp) -/* 0A3E1C 800A321C 8FAD00C4 */ lw $t5, 0xc4($sp) -/* 0A3E20 800A3220 816C01D8 */ lb $t4, 0x1d8($t3) -/* 0A3E24 800A3224 00000000 */ nop -/* 0A3E28 800A3228 15800041 */ bnez $t4, .L800A3330 -/* 0A3E2C 800A322C 8FAA00A0 */ lw $t2, 0xa0($sp) -/* 0A3E30 800A3230 C608000C */ lwc1 $f8, 0xc($s0) -/* 0A3E34 800A3234 C5AA000C */ lwc1 $f10, 0xc($t5) -/* 0A3E38 800A3238 C6040010 */ lwc1 $f4, 0x10($s0) -/* 0A3E3C 800A323C C5A60010 */ lwc1 $f6, 0x10($t5) -/* 0A3E40 800A3240 460A4001 */ sub.s $f0, $f8, $f10 -/* 0A3E44 800A3244 C5AA0014 */ lwc1 $f10, 0x14($t5) -/* 0A3E48 800A3248 46062081 */ sub.s $f2, $f4, $f6 -/* 0A3E4C 800A324C C6080014 */ lwc1 $f8, 0x14($s0) -/* 0A3E50 800A3250 46000102 */ mul.s $f4, $f0, $f0 -/* 0A3E54 800A3254 460A4381 */ sub.s $f14, $f8, $f10 -/* 0A3E58 800A3258 46021182 */ mul.s $f6, $f2, $f2 -/* 0A3E5C 800A325C 00000000 */ nop -/* 0A3E60 800A3260 460E7282 */ mul.s $f10, $f14, $f14 -/* 0A3E64 800A3264 46062200 */ add.s $f8, $f4, $f6 -/* 0A3E68 800A3268 0C0326B4 */ jal sqrtf -/* 0A3E6C 800A326C 460A4300 */ add.s $f12, $f8, $f10 -/* 0A3E70 800A3270 3C014416 */ li $at, 0x44160000 # 600.000000 -/* 0A3E74 800A3274 44812000 */ mtc1 $at, $f4 -/* 0A3E78 800A3278 3C188012 */ lui $t8, %hi(D_80126D40) # $t8, 0x8012 -/* 0A3E7C 800A327C 4604003C */ c.lt.s $f0, $f4 -/* 0A3E80 800A3280 00000000 */ nop -/* 0A3E84 800A3284 45000020 */ bc1f .L800A3308 -/* 0A3E88 800A3288 00000000 */ nop -/* 0A3E8C 800A328C 8F186D40 */ lw $t8, %lo(D_80126D40)($t8) -/* 0A3E90 800A3290 3C108012 */ lui $s0, %hi(D_80126D50) # $s0, 0x8012 -/* 0A3E94 800A3294 1700001C */ bnez $t8, .L800A3308 -/* 0A3E98 800A3298 26106D50 */ addiu $s0, %lo(D_80126D50) # addiu $s0, $s0, 0x6d50 -/* 0A3E9C 800A329C 8E0F0000 */ lw $t7, ($s0) -/* 0A3EA0 800A32A0 00002025 */ move $a0, $zero -/* 0A3EA4 800A32A4 15E00018 */ bnez $t7, .L800A3308 -/* 0A3EA8 800A32A8 00000000 */ nop -/* 0A3EAC 800A32AC 0C01BE53 */ jal func_8006F94C -/* 0A3EB0 800A32B0 24050002 */ li $a1, 2 -/* 0A3EB4 800A32B4 962A0000 */ lhu $t2, ($s1) -/* 0A3EB8 800A32B8 24430147 */ addiu $v1, $v0, 0x147 -/* 0A3EBC 800A32BC 306EFFFF */ andi $t6, $v1, 0xffff -/* 0A3EC0 800A32C0 154E0009 */ bne $t2, $t6, .L800A32E8 -/* 0A3EC4 800A32C4 3064FFFF */ andi $a0, $v1, 0xffff -.L800A32C8: -/* 0A3EC8 800A32C8 00002025 */ move $a0, $zero -/* 0A3ECC 800A32CC 0C01BE53 */ jal func_8006F94C -/* 0A3ED0 800A32D0 24050002 */ li $a1, 2 -/* 0A3ED4 800A32D4 96390000 */ lhu $t9, ($s1) -/* 0A3ED8 800A32D8 24430147 */ addiu $v1, $v0, 0x147 -/* 0A3EDC 800A32DC 306BFFFF */ andi $t3, $v1, 0xffff -/* 0A3EE0 800A32E0 132BFFF9 */ beq $t9, $t3, .L800A32C8 -/* 0A3EE4 800A32E4 3064FFFF */ andi $a0, $v1, 0xffff -.L800A32E8: -/* 0A3EE8 800A32E8 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A3EEC 800A32EC A6240000 */ sh $a0, ($s1) -/* 0A3EF0 800A32F0 0C000741 */ jal func_80001D04 -/* 0A3EF4 800A32F4 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -/* 0A3EF8 800A32F8 24040078 */ li $a0, 120 -/* 0A3EFC 800A32FC 0C01BE53 */ jal func_8006F94C -/* 0A3F00 800A3300 240504B0 */ li $a1, 1200 -/* 0A3F04 800A3304 AE020000 */ sw $v0, ($s0) -.L800A3308: -/* 0A3F08 800A3308 3C108012 */ lui $s0, %hi(D_80126D50) # $s0, 0x8012 -/* 0A3F0C 800A330C 26106D50 */ addiu $s0, %lo(D_80126D50) # addiu $s0, $s0, 0x6d50 -/* 0A3F10 800A3310 8E0C0000 */ lw $t4, ($s0) -/* 0A3F14 800A3314 8FAD00C8 */ lw $t5, 0xc8($sp) -/* 0A3F18 800A3318 00000000 */ nop -/* 0A3F1C 800A331C 018DC023 */ subu $t8, $t4, $t5 -/* 0A3F20 800A3320 07010002 */ bgez $t8, .L800A332C -/* 0A3F24 800A3324 AE180000 */ sw $t8, ($s0) -/* 0A3F28 800A3328 AE000000 */ sw $zero, ($s0) -.L800A332C: -/* 0A3F2C 800A332C 8FAA00A0 */ lw $t2, 0xa0($sp) -.L800A3330: -/* 0A3F30 800A3330 8FAC00A0 */ lw $t4, 0xa0($sp) -/* 0A3F34 800A3334 81430193 */ lb $v1, 0x193($t2) -/* 0A3F38 800A3338 00000000 */ nop -/* 0A3F3C 800A333C 00037080 */ sll $t6, $v1, 2 -/* 0A3F40 800A3340 014EC821 */ addu $t9, $t2, $t6 -/* 0A3F44 800A3344 8F2B0128 */ lw $t3, 0x128($t9) -/* 0A3F48 800A3348 00000000 */ nop -/* 0A3F4C 800A334C 2961001E */ slti $at, $t3, 0x1e -/* 0A3F50 800A3350 1020000A */ beqz $at, .L800A337C -/* 0A3F54 800A3354 00000000 */ nop -/* 0A3F58 800A3358 10600008 */ beqz $v1, .L800A337C -/* 0A3F5C 800A335C 24040005 */ li $a0, 5 -/* 0A3F60 800A3360 24050001 */ li $a1, 1 -/* 0A3F64 800A3364 24060002 */ li $a2, 2 -/* 0A3F68 800A3368 24070002 */ li $a3, 2 -/* 0A3F6C 800A336C 0C028DB3 */ jal func_800A36CC -/* 0A3F70 800A3370 AFA00010 */ sw $zero, 0x10($sp) -/* 0A3F74 800A3374 10000016 */ b .L800A33D0 -/* 0A3F78 800A3378 8FA400A0 */ lw $a0, 0xa0($sp) -.L800A337C: -/* 0A3F7C 800A337C 818D01D3 */ lb $t5, 0x1d3($t4) -/* 0A3F80 800A3380 8FB800A0 */ lw $t8, 0xa0($sp) -/* 0A3F84 800A3384 19A00008 */ blez $t5, .L800A33A8 -/* 0A3F88 800A3388 24040006 */ li $a0, 6 -/* 0A3F8C 800A338C 24050002 */ li $a1, 2 -/* 0A3F90 800A3390 24060003 */ li $a2, 3 -/* 0A3F94 800A3394 24070002 */ li $a3, 2 -/* 0A3F98 800A3398 0C028DB3 */ jal func_800A36CC -/* 0A3F9C 800A339C AFA00010 */ sw $zero, 0x10($sp) -/* 0A3FA0 800A33A0 1000000B */ b .L800A33D0 -/* 0A3FA4 800A33A4 8FA400A0 */ lw $a0, 0xa0($sp) -.L800A33A8: -/* 0A3FA8 800A33A8 930F01FC */ lbu $t7, 0x1fc($t8) -/* 0A3FAC 800A33AC 24040006 */ li $a0, 6 -/* 0A3FB0 800A33B0 29E10079 */ slti $at, $t7, 0x79 -/* 0A3FB4 800A33B4 14200005 */ bnez $at, .L800A33CC -/* 0A3FB8 800A33B8 24050003 */ li $a1, 3 -/* 0A3FBC 800A33BC 24060001 */ li $a2, 1 -/* 0A3FC0 800A33C0 24070004 */ li $a3, 4 -/* 0A3FC4 800A33C4 0C028DB3 */ jal func_800A36CC -/* 0A3FC8 800A33C8 AFA00010 */ sw $zero, 0x10($sp) -.L800A33CC: -/* 0A3FCC 800A33CC 8FA400A0 */ lw $a0, 0xa0($sp) -.L800A33D0: -/* 0A3FD0 800A33D0 8FA500C8 */ lw $a1, 0xc8($sp) -/* 0A3FD4 800A33D4 0C0293D4 */ jal func_800A4F50 -/* 0A3FD8 800A33D8 00000000 */ nop -/* 0A3FDC 800A33DC 8FA400A0 */ lw $a0, 0xa0($sp) -/* 0A3FE0 800A33E0 8FA500C8 */ lw $a1, 0xc8($sp) -/* 0A3FE4 800A33E4 0C029EDA */ jal func_800A7B68 -/* 0A3FE8 800A33E8 00000000 */ nop -/* 0A3FEC 800A33EC 8FA400A0 */ lw $a0, 0xa0($sp) -/* 0A3FF0 800A33F0 8FA500C8 */ lw $a1, 0xc8($sp) -/* 0A3FF4 800A33F4 0C029055 */ jal func_800A4154 -/* 0A3FF8 800A33F8 00000000 */ nop -/* 0A3FFC 800A33FC 8FA400A0 */ lw $a0, 0xa0($sp) -/* 0A4000 800A3400 8FA500C8 */ lw $a1, 0xc8($sp) -/* 0A4004 800A3404 0C029699 */ jal func_800A5A64 -/* 0A4008 800A3408 00000000 */ nop -/* 0A400C 800A340C 8FA400C0 */ lw $a0, 0xc0($sp) -/* 0A4010 800A3410 8FA500C8 */ lw $a1, 0xc8($sp) -/* 0A4014 800A3414 0C028F39 */ jal func_800A3CE4 -/* 0A4018 800A3418 00000000 */ nop -/* 0A401C 800A341C 8FA400C4 */ lw $a0, 0xc4($sp) -/* 0A4020 800A3420 8FA500C8 */ lw $a1, 0xc8($sp) -/* 0A4024 800A3424 0C028E21 */ jal func_800A3884 -/* 0A4028 800A3428 00000000 */ nop -/* 0A402C 800A342C 0C00382C */ jal func_8000E0B0 -/* 0A4030 800A3430 00000000 */ nop -/* 0A4034 800A3434 1840009D */ blez $v0, .L800A36AC -/* 0A4038 800A3438 00000000 */ nop -/* 0A403C 800A343C 0C00382C */ jal func_8000E0B0 -/* 0A4040 800A3440 00000000 */ nop -/* 0A4044 800A3444 24010001 */ li $at, 1 -/* 0A4048 800A3448 10410008 */ beq $v0, $at, .L800A346C -/* 0A404C 800A344C 24010002 */ li $at, 2 -/* 0A4050 800A3450 10410010 */ beq $v0, $at, .L800A3494 -/* 0A4054 800A3454 3C0B800F */ lui $t3, %hi(D_800E8658) # $t3, 0x800f -/* 0A4058 800A3458 24010003 */ li $at, 3 -/* 0A405C 800A345C 10410016 */ beq $v0, $at, .L800A34B8 -/* 0A4060 800A3460 3C18800F */ lui $t8, %hi(D_800E8670) # $t8, 0x800f -/* 0A4064 800A3464 1000001C */ b .L800A34D8 -/* 0A4068 800A3468 00000000 */ nop -.L800A346C: -/* 0A406C 800A346C 3C0A800F */ lui $t2, %hi(D_800E8640) # $t2, 0x800f -/* 0A4070 800A3470 3C0E800F */ lui $t6, %hi(D_800E8648) # $t6, 0x800f -/* 0A4074 800A3474 3C19800F */ lui $t9, %hi(D_800E8650) # $t9, 0x800f -/* 0A4078 800A3478 254A8640 */ addiu $t2, %lo(D_800E8640) # addiu $t2, $t2, -0x79c0 -/* 0A407C 800A347C 25CE8648 */ addiu $t6, %lo(D_800E8648) # addiu $t6, $t6, -0x79b8 -/* 0A4080 800A3480 27398650 */ addiu $t9, %lo(D_800E8650) # addiu $t9, $t9, -0x79b0 -/* 0A4084 800A3484 AFAA0060 */ sw $t2, 0x60($sp) -/* 0A4088 800A3488 AFAE005C */ sw $t6, 0x5c($sp) -/* 0A408C 800A348C 10000012 */ b .L800A34D8 -/* 0A4090 800A3490 AFB90058 */ sw $t9, 0x58($sp) -.L800A3494: -/* 0A4094 800A3494 3C0C800F */ lui $t4, %hi(D_800E8664) # $t4, 0x800f -/* 0A4098 800A3498 3C0D800F */ lui $t5, %hi(D_800E8668) # $t5, 0x800f -/* 0A409C 800A349C 256B8658 */ addiu $t3, %lo(D_800E8658) # addiu $t3, $t3, -0x79a8 -/* 0A40A0 800A34A0 258C8664 */ addiu $t4, %lo(D_800E8664) # addiu $t4, $t4, -0x799c -/* 0A40A4 800A34A4 25AD8668 */ addiu $t5, %lo(D_800E8668) # addiu $t5, $t5, -0x7998 -/* 0A40A8 800A34A8 AFAB0060 */ sw $t3, 0x60($sp) -/* 0A40AC 800A34AC AFAC005C */ sw $t4, 0x5c($sp) -/* 0A40B0 800A34B0 10000009 */ b .L800A34D8 -/* 0A40B4 800A34B4 AFAD0058 */ sw $t5, 0x58($sp) -.L800A34B8: -/* 0A40B8 800A34B8 3C0F800F */ lui $t7, %hi(D_800E867C) # $t7, 0x800f -/* 0A40BC 800A34BC 3C0A800F */ lui $t2, %hi(D_800E8680) # $t2, 0x800f -/* 0A40C0 800A34C0 27188670 */ addiu $t8, %lo(D_800E8670) # addiu $t8, $t8, -0x7990 -/* 0A40C4 800A34C4 25EF867C */ addiu $t7, %lo(D_800E867C) # addiu $t7, $t7, -0x7984 -/* 0A40C8 800A34C8 254A8680 */ addiu $t2, %lo(D_800E8680) # addiu $t2, $t2, -0x7980 -/* 0A40CC 800A34CC AFB80060 */ sw $t8, 0x60($sp) -/* 0A40D0 800A34D0 AFAF005C */ sw $t7, 0x5c($sp) -/* 0A40D4 800A34D4 AFAA0058 */ sw $t2, 0x58($sp) -.L800A34D8: -/* 0A40D8 800A34D8 0C031059 */ jal func_800C4164 -/* 0A40DC 800A34DC 24040001 */ li $a0, 1 -/* 0A40E0 800A34E0 0C0310BB */ jal func_800C42EC -/* 0A40E4 800A34E4 00002025 */ move $a0, $zero -/* 0A40E8 800A34E8 240E00FF */ li $t6, 255 -/* 0A40EC 800A34EC AFAE0010 */ sw $t6, 0x10($sp) -/* 0A40F0 800A34F0 00002025 */ move $a0, $zero -/* 0A40F4 800A34F4 00002825 */ move $a1, $zero -/* 0A40F8 800A34F8 00003025 */ move $a2, $zero -/* 0A40FC 800A34FC 0C0310E1 */ jal func_800C4384 -/* 0A4100 800A3500 240700FF */ li $a3, 255 -/* 0A4104 800A3504 3C108012 */ lui $s0, %hi(D_8012718C) # $s0, 0x8012 -/* 0A4108 800A3508 3C118012 */ lui $s1, %hi(D_80126D24) # $s1, 0x8012 -/* 0A410C 800A350C 26316D24 */ addiu $s1, %lo(D_80126D24) # addiu $s1, $s1, 0x6d24 -/* 0A4110 800A3510 2610718C */ addiu $s0, %lo(D_8012718C) # addiu $s0, $s0, 0x718c -/* 0A4114 800A3514 8E190000 */ lw $t9, ($s0) -/* 0A4118 800A3518 8E2B0000 */ lw $t3, ($s1) -/* 0A411C 800A351C 3C0D8012 */ lui $t5, %hi(D_80126D28) # $t5, 0x8012 -/* 0A4120 800A3520 8DAD6D28 */ lw $t5, %lo(D_80126D28)($t5) -/* 0A4124 800A3524 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 -/* 0A4128 800A3528 8CC67190 */ lw $a2, %lo(D_80127190)($a2) -/* 0A412C 800A352C 032B6021 */ addu $t4, $t9, $t3 -/* 0A4130 800A3530 8FA70060 */ lw $a3, 0x60($sp) -/* 0A4134 800A3534 2418000C */ li $t8, 12 -/* 0A4138 800A3538 018D2821 */ addu $a1, $t4, $t5 -/* 0A413C 800A353C 24A50001 */ addiu $a1, $a1, 1 -/* 0A4140 800A3540 AFB80010 */ sw $t8, 0x10($sp) -/* 0A4144 800A3544 02402025 */ move $a0, $s2 -/* 0A4148 800A3548 0C031110 */ jal func_800C4440 -/* 0A414C 800A354C 24C60001 */ addiu $a2, $a2, 1 -/* 0A4150 800A3550 8E0F0000 */ lw $t7, ($s0) -/* 0A4154 800A3554 8E2A0000 */ lw $t2, ($s1) -/* 0A4158 800A3558 3C198012 */ lui $t9, %hi(D_80126D28) # $t9, 0x8012 -/* 0A415C 800A355C 8F396D28 */ lw $t9, %lo(D_80126D28)($t9) -/* 0A4160 800A3560 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 -/* 0A4164 800A3564 8CC67190 */ lw $a2, %lo(D_80127190)($a2) -/* 0A4168 800A3568 01EA7021 */ addu $t6, $t7, $t2 -/* 0A416C 800A356C 8FA7005C */ lw $a3, 0x5c($sp) -/* 0A4170 800A3570 240B000C */ li $t3, 12 -/* 0A4174 800A3574 01D92821 */ addu $a1, $t6, $t9 -/* 0A4178 800A3578 24A50001 */ addiu $a1, $a1, 1 -/* 0A417C 800A357C AFAB0010 */ sw $t3, 0x10($sp) -/* 0A4180 800A3580 02402025 */ move $a0, $s2 -/* 0A4184 800A3584 0C031110 */ jal func_800C4440 -/* 0A4188 800A3588 24C6000F */ addiu $a2, $a2, 0xf -/* 0A418C 800A358C 8E0C0000 */ lw $t4, ($s0) -/* 0A4190 800A3590 8E2D0000 */ lw $t5, ($s1) -/* 0A4194 800A3594 3C0F8012 */ lui $t7, %hi(D_80126D28) # $t7, 0x8012 -/* 0A4198 800A3598 8DEF6D28 */ lw $t7, %lo(D_80126D28)($t7) -/* 0A419C 800A359C 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 -/* 0A41A0 800A35A0 8CC67190 */ lw $a2, %lo(D_80127190)($a2) -/* 0A41A4 800A35A4 018DC021 */ addu $t8, $t4, $t5 -/* 0A41A8 800A35A8 8FA70058 */ lw $a3, 0x58($sp) -/* 0A41AC 800A35AC 240A000C */ li $t2, 12 -/* 0A41B0 800A35B0 030F2821 */ addu $a1, $t8, $t7 -/* 0A41B4 800A35B4 24A50001 */ addiu $a1, $a1, 1 -/* 0A41B8 800A35B8 AFAA0010 */ sw $t2, 0x10($sp) -/* 0A41BC 800A35BC 02402025 */ move $a0, $s2 -/* 0A41C0 800A35C0 0C031110 */ jal func_800C4440 -/* 0A41C4 800A35C4 24C6001D */ addiu $a2, $a2, 0x1d -/* 0A41C8 800A35C8 3C028012 */ lui $v0, %hi(D_80127194) # $v0, 0x8012 -/* 0A41CC 800A35CC 8C427194 */ lw $v0, %lo(D_80127194)($v0) -/* 0A41D0 800A35D0 24070080 */ li $a3, 128 -/* 0A41D4 800A35D4 904E0013 */ lbu $t6, 0x13($v0) -/* 0A41D8 800A35D8 90440010 */ lbu $a0, 0x10($v0) -/* 0A41DC 800A35DC 90450011 */ lbu $a1, 0x11($v0) -/* 0A41E0 800A35E0 90460012 */ lbu $a2, 0x12($v0) -/* 0A41E4 800A35E4 0C0310E1 */ jal func_800C4384 -/* 0A41E8 800A35E8 AFAE0010 */ sw $t6, 0x10($sp) -/* 0A41EC 800A35EC 8E190000 */ lw $t9, ($s0) -/* 0A41F0 800A35F0 8E2B0000 */ lw $t3, ($s1) -/* 0A41F4 800A35F4 3C0D8012 */ lui $t5, %hi(D_80126D28) # $t5, 0x8012 -/* 0A41F8 800A35F8 8DAD6D28 */ lw $t5, %lo(D_80126D28)($t5) -/* 0A41FC 800A35FC 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 -/* 0A4200 800A3600 8CC67190 */ lw $a2, %lo(D_80127190)($a2) -/* 0A4204 800A3604 8FA70060 */ lw $a3, 0x60($sp) -/* 0A4208 800A3608 2418000C */ li $t8, 12 -/* 0A420C 800A360C 032B6021 */ addu $t4, $t9, $t3 -/* 0A4210 800A3610 AFB80010 */ sw $t8, 0x10($sp) -/* 0A4214 800A3614 02402025 */ move $a0, $s2 -/* 0A4218 800A3618 0C031110 */ jal func_800C4440 -/* 0A421C 800A361C 018D2821 */ addu $a1, $t4, $t5 -/* 0A4220 800A3620 8E0F0000 */ lw $t7, ($s0) -/* 0A4224 800A3624 8E2A0000 */ lw $t2, ($s1) -/* 0A4228 800A3628 3C198012 */ lui $t9, %hi(D_80126D28) # $t9, 0x8012 -/* 0A422C 800A362C 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 -/* 0A4230 800A3630 8CC67190 */ lw $a2, %lo(D_80127190)($a2) -/* 0A4234 800A3634 8F396D28 */ lw $t9, %lo(D_80126D28)($t9) -/* 0A4238 800A3638 8FA7005C */ lw $a3, 0x5c($sp) -/* 0A423C 800A363C 240B000C */ li $t3, 12 -/* 0A4240 800A3640 01EA7021 */ addu $t6, $t7, $t2 -/* 0A4244 800A3644 AFAB0010 */ sw $t3, 0x10($sp) -/* 0A4248 800A3648 02402025 */ move $a0, $s2 -/* 0A424C 800A364C 24C6000E */ addiu $a2, $a2, 0xe -/* 0A4250 800A3650 0C031110 */ jal func_800C4440 -/* 0A4254 800A3654 01D92821 */ addu $a1, $t6, $t9 -/* 0A4258 800A3658 8E0C0000 */ lw $t4, ($s0) -/* 0A425C 800A365C 8E2D0000 */ lw $t5, ($s1) -/* 0A4260 800A3660 3C0F8012 */ lui $t7, %hi(D_80126D28) # $t7, 0x8012 -/* 0A4264 800A3664 3C068012 */ lui $a2, %hi(D_80127190) # $a2, 0x8012 -/* 0A4268 800A3668 8CC67190 */ lw $a2, %lo(D_80127190)($a2) -/* 0A426C 800A366C 8DEF6D28 */ lw $t7, %lo(D_80126D28)($t7) -/* 0A4270 800A3670 8FA70058 */ lw $a3, 0x58($sp) -/* 0A4274 800A3674 240A000C */ li $t2, 12 -/* 0A4278 800A3678 018DC021 */ addu $t8, $t4, $t5 -/* 0A427C 800A367C AFAA0010 */ sw $t2, 0x10($sp) -/* 0A4280 800A3680 02402025 */ move $a0, $s2 -/* 0A4284 800A3684 24C6001C */ addiu $a2, $a2, 0x1c -/* 0A4288 800A3688 0C031110 */ jal func_800C4440 -/* 0A428C 800A368C 030F2821 */ addu $a1, $t8, $t7 -/* 0A4290 800A3690 3C048012 */ lui $a0, %hi(D_80127194) # $a0, 0x8012 -/* 0A4294 800A3694 8C847194 */ lw $a0, %lo(D_80127194)($a0) -/* 0A4298 800A3698 8FA500C8 */ lw $a1, 0xc8($sp) -/* 0A429C 800A369C 0C01FC93 */ jal func_8007F24C -/* 0A42A0 800A36A0 00000000 */ nop -/* 0A42A4 800A36A4 0C031059 */ jal func_800C4164 -/* 0A42A8 800A36A8 00002025 */ move $a0, $zero -.L800A36AC: -/* 0A42AC 800A36AC 0C01A142 */ jal func_80068508 -/* 0A42B0 800A36B0 00002025 */ move $a0, $zero -.L800A36B4: -/* 0A42B4 800A36B4 8FBF002C */ lw $ra, 0x2c($sp) -/* 0A42B8 800A36B8 8FB00020 */ lw $s0, 0x20($sp) -/* 0A42BC 800A36BC 8FB10024 */ lw $s1, 0x24($sp) -/* 0A42C0 800A36C0 8FB20028 */ lw $s2, 0x28($sp) -/* 0A42C4 800A36C4 03E00008 */ jr $ra -/* 0A42C8 800A36C8 27BD00C0 */ addiu $sp, $sp, 0xc0 - -glabel func_800A36CC -/* 0A42CC 800A36CC 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0A42D0 800A36D0 AFBF001C */ sw $ra, 0x1c($sp) -/* 0A42D4 800A36D4 AFB10018 */ sw $s1, 0x18($sp) -/* 0A42D8 800A36D8 AFB00014 */ sw $s0, 0x14($sp) -/* 0A42DC 800A36DC 309000FF */ andi $s0, $a0, 0xff -/* 0A42E0 800A36E0 30B100FF */ andi $s1, $a1, 0xff -/* 0A42E4 800A36E4 AFA40020 */ sw $a0, 0x20($sp) -/* 0A42E8 800A36E8 AFA50024 */ sw $a1, 0x24($sp) -/* 0A42EC 800A36EC AFA60028 */ sw $a2, 0x28($sp) -/* 0A42F0 800A36F0 0C003936 */ jal func_8000E4D8 -/* 0A42F4 800A36F4 AFA7002C */ sw $a3, 0x2c($sp) -/* 0A42F8 800A36F8 10400058 */ beqz $v0, .L800A385C -/* 0A42FC 800A36FC 3C0E8012 */ lui $t6, %hi(D_80126CF4) # $t6, 0x8012 -/* 0A4300 800A3700 8DCE6CF4 */ lw $t6, %lo(D_80126CF4)($t6) -/* 0A4304 800A3704 00000000 */ nop -/* 0A4308 800A3708 8DC20050 */ lw $v0, 0x50($t6) -/* 0A430C 800A370C 00000000 */ nop -/* 0A4310 800A3710 10400053 */ beqz $v0, .L800A3860 -/* 0A4314 800A3714 8FBF001C */ lw $ra, 0x1c($sp) -/* 0A4318 800A3718 8C4F0068 */ lw $t7, 0x68($v0) -/* 0A431C 800A371C 3C1F8012 */ lui $ra, %hi(D_80126D65) # $ra, 0x8012 -/* 0A4320 800A3720 8DE50000 */ lw $a1, ($t7) -/* 0A4324 800A3724 27FF6D65 */ addiu $ra, %lo(D_80126D65) # addiu $ra, $ra, 0x6d65 -/* 0A4328 800A3728 8CA30000 */ lw $v1, ($a1) -/* 0A432C 800A372C 00004025 */ move $t0, $zero -/* 0A4330 800A3730 84670028 */ lh $a3, 0x28($v1) -/* 0A4334 800A3734 00002025 */ move $a0, $zero -/* 0A4338 800A3738 18E00039 */ blez $a3, .L800A3820 -/* 0A433C 800A373C 3C0D8012 */ lui $t5, %hi(D_80126D66) # $t5, 0x8012 -/* 0A4340 800A3740 3C0CFF7E */ lui $t4, (0xFF7EFFFF >> 16) # lui $t4, 0xff7e -/* 0A4344 800A3744 358CFFFF */ ori $t4, (0xFF7EFFFF & 0xFFFF) # ori $t4, $t4, 0xffff -/* 0A4348 800A3748 25AD6D66 */ addiu $t5, %lo(D_80126D66) # addiu $t5, $t5, 0x6d66 -/* 0A434C 800A374C 240B0001 */ li $t3, 1 -/* 0A4350 800A3750 3C0A0081 */ lui $t2, 0x81 -/* 0A4354 800A3754 24090004 */ li $t1, 4 -.L800A3758: -/* 0A4358 800A3758 8C780038 */ lw $t8, 0x38($v1) -/* 0A435C 800A375C 91B90000 */ lbu $t9, ($t5) -/* 0A4360 800A3760 03041021 */ addu $v0, $t8, $a0 -/* 0A4364 800A3764 90460000 */ lbu $a2, ($v0) -/* 0A4368 800A3768 25080001 */ addiu $t0, $t0, 1 -/* 0A436C 800A376C 17260020 */ bne $t9, $a2, .L800A37F0 -/* 0A4370 800A3770 00000000 */ nop -/* 0A4374 800A3774 1530000D */ bne $t1, $s0, .L800A37AC -/* 0A4378 800A3778 A0500000 */ sb $s0, ($v0) -/* 0A437C 800A377C 8CAE0000 */ lw $t6, ($a1) -/* 0A4380 800A3780 00000000 */ nop -/* 0A4384 800A3784 8DCF0038 */ lw $t7, 0x38($t6) -/* 0A4388 800A3788 00000000 */ nop -/* 0A438C 800A378C 01E41021 */ addu $v0, $t7, $a0 -/* 0A4390 800A3790 8C580008 */ lw $t8, 8($v0) -/* 0A4394 800A3794 00000000 */ nop -/* 0A4398 800A3798 030AC825 */ or $t9, $t8, $t2 -/* 0A439C 800A379C AC590008 */ sw $t9, 8($v0) -/* 0A43A0 800A37A0 8CAE0000 */ lw $t6, ($a1) -/* 0A43A4 800A37A4 1000000D */ b .L800A37DC -/* 0A43A8 800A37A8 A5CB0050 */ sh $t3, 0x50($t6) -.L800A37AC: -/* 0A43AC 800A37AC 8CAF0000 */ lw $t7, ($a1) -/* 0A43B0 800A37B0 00000000 */ nop -/* 0A43B4 800A37B4 8DF80038 */ lw $t8, 0x38($t7) -/* 0A43B8 800A37B8 00000000 */ nop -/* 0A43BC 800A37BC 03041021 */ addu $v0, $t8, $a0 -/* 0A43C0 800A37C0 8C590008 */ lw $t9, 8($v0) -/* 0A43C4 800A37C4 00000000 */ nop -/* 0A43C8 800A37C8 032C7024 */ and $t6, $t9, $t4 -/* 0A43CC 800A37CC AC4E0008 */ sw $t6, 8($v0) -/* 0A43D0 800A37D0 8CAF0000 */ lw $t7, ($a1) -/* 0A43D4 800A37D4 00000000 */ nop -/* 0A43D8 800A37D8 A5E00050 */ sh $zero, 0x50($t7) -.L800A37DC: -/* 0A43DC 800A37DC 8CA30000 */ lw $v1, ($a1) -/* 0A43E0 800A37E0 00000000 */ nop -/* 0A43E4 800A37E4 84670028 */ lh $a3, 0x28($v1) -/* 0A43E8 800A37E8 1000000B */ b .L800A3818 -/* 0A43EC 800A37EC 0107082A */ slt $at, $t0, $a3 -.L800A37F0: -/* 0A43F0 800A37F0 93F80000 */ lbu $t8, ($ra) -/* 0A43F4 800A37F4 00000000 */ nop -/* 0A43F8 800A37F8 17060007 */ bne $t8, $a2, .L800A3818 -/* 0A43FC 800A37FC 0107082A */ slt $at, $t0, $a3 -/* 0A4400 800A3800 A0510000 */ sb $s1, ($v0) -/* 0A4404 800A3804 8CA30000 */ lw $v1, ($a1) -/* 0A4408 800A3808 00000000 */ nop -/* 0A440C 800A380C 84670028 */ lh $a3, 0x28($v1) -/* 0A4410 800A3810 00000000 */ nop -/* 0A4414 800A3814 0107082A */ slt $at, $t0, $a3 -.L800A3818: -/* 0A4418 800A3818 1420FFCF */ bnez $at, .L800A3758 -/* 0A441C 800A381C 2484000C */ addiu $a0, $a0, 0xc -.L800A3820: -/* 0A4420 800A3820 3C0D8012 */ lui $t5, %hi(D_80126D66) # $t5, 0x8012 -/* 0A4424 800A3824 3C1F8012 */ lui $ra, %hi(D_80126D65) # $ra, 0x8012 -/* 0A4428 800A3828 93B9002B */ lbu $t9, 0x2b($sp) -/* 0A442C 800A382C 27FF6D65 */ addiu $ra, %lo(D_80126D65) # addiu $ra, $ra, 0x6d65 -/* 0A4430 800A3830 25AD6D66 */ addiu $t5, %lo(D_80126D66) # addiu $t5, $t5, 0x6d66 -/* 0A4434 800A3834 A1B00000 */ sb $s0, ($t5) -/* 0A4438 800A3838 A3F10000 */ sb $s1, ($ra) -/* 0A443C 800A383C 3C018012 */ lui $at, %hi(D_80126D67) # $at, 0x8012 -/* 0A4440 800A3840 93AE002F */ lbu $t6, 0x2f($sp) -/* 0A4444 800A3844 A0396D67 */ sb $t9, %lo(D_80126D67)($at) -/* 0A4448 800A3848 3C018012 */ lui $at, %hi(D_80126D69) # $at, 0x8012 -/* 0A444C 800A384C 93AF0033 */ lbu $t7, 0x33($sp) -/* 0A4450 800A3850 A02E6D69 */ sb $t6, %lo(D_80126D69)($at) -/* 0A4454 800A3854 3C018012 */ lui $at, %hi(D_80126D68) # $at, 0x8012 -/* 0A4458 800A3858 A02F6D68 */ sb $t7, %lo(D_80126D68)($at) -.L800A385C: -/* 0A445C 800A385C 8FBF001C */ lw $ra, 0x1c($sp) -.L800A3860: -/* 0A4460 800A3860 8FB00014 */ lw $s0, 0x14($sp) -/* 0A4464 800A3864 8FB10018 */ lw $s1, 0x18($sp) -/* 0A4468 800A3868 03E00008 */ jr $ra -/* 0A446C 800A386C 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_800A3870 -/* 0A4470 800A3870 3C0F8012 */ lui $t7, %hi(D_80126CDC) # $t7, 0x8012 -/* 0A4474 800A3874 8DEF6CDC */ lw $t7, %lo(D_80126CDC)($t7) -/* 0A4478 800A3878 240E6490 */ li $t6, 25744 -/* 0A447C 800A387C 03E00008 */ jr $ra -/* 0A4480 800A3880 A5EE04C4 */ sh $t6, 0x4c4($t7) - -glabel func_800A3884 -/* 0A4484 800A3884 3C0E8012 */ lui $t6, %hi(D_80126D37) # $t6, 0x8012 -/* 0A4488 800A3888 91CE6D37 */ lbu $t6, %lo(D_80126D37)($t6) -/* 0A448C 800A388C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0A4490 800A3890 24010001 */ li $at, 1 -/* 0A4494 800A3894 AFBF0014 */ sw $ra, 0x14($sp) -/* 0A4498 800A3898 15C1010E */ bne $t6, $at, .L800A3CD4 -/* 0A449C 800A389C AFA5002C */ sw $a1, 0x2c($sp) -/* 0A44A0 800A38A0 0C019944 */ jal func_80066510 -/* 0A44A4 800A38A4 AFA40028 */ sw $a0, 0x28($sp) -/* 0A44A8 800A38A8 8FA40028 */ lw $a0, 0x28($sp) -/* 0A44AC 800A38AC 1440010A */ bnez $v0, .L800A3CD8 -/* 0A44B0 800A38B0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A44B4 800A38B4 8C820064 */ lw $v0, 0x64($a0) -/* 0A44B8 800A38B8 00000000 */ nop -/* 0A44BC 800A38BC 804F01D8 */ lb $t7, 0x1d8($v0) -/* 0A44C0 800A38C0 00000000 */ nop -/* 0A44C4 800A38C4 15E00104 */ bnez $t7, .L800A3CD8 -/* 0A44C8 800A38C8 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A44CC 800A38CC 805801D6 */ lb $t8, 0x1d6($v0) -/* 0A44D0 800A38D0 24010002 */ li $at, 2 -/* 0A44D4 800A38D4 1701000F */ bne $t8, $at, .L800A3914 -/* 0A44D8 800A38D8 00000000 */ nop -/* 0A44DC 800A38DC C480001C */ lwc1 $f0, 0x1c($a0) -/* 0A44E0 800A38E0 C4820020 */ lwc1 $f2, 0x20($a0) -/* 0A44E4 800A38E4 46000102 */ mul.s $f4, $f0, $f0 -/* 0A44E8 800A38E8 C48E0024 */ lwc1 $f14, 0x24($a0) -/* 0A44EC 800A38EC AFA20020 */ sw $v0, 0x20($sp) -/* 0A44F0 800A38F0 46021182 */ mul.s $f6, $f2, $f2 -/* 0A44F4 800A38F4 00000000 */ nop -/* 0A44F8 800A38F8 460E7282 */ mul.s $f10, $f14, $f14 -/* 0A44FC 800A38FC 46062200 */ add.s $f8, $f4, $f6 -/* 0A4500 800A3900 0C0326B4 */ jal sqrtf -/* 0A4504 800A3904 460A4300 */ add.s $f12, $f8, $f10 -/* 0A4508 800A3908 8FA20020 */ lw $v0, 0x20($sp) -/* 0A450C 800A390C 1000000A */ b .L800A3938 -/* 0A4510 800A3910 00000000 */ nop -.L800A3914: -/* 0A4514 800A3914 C480001C */ lwc1 $f0, 0x1c($a0) -/* 0A4518 800A3918 C48E0024 */ lwc1 $f14, 0x24($a0) -/* 0A451C 800A391C 46000402 */ mul.s $f16, $f0, $f0 -/* 0A4520 800A3920 AFA20020 */ sw $v0, 0x20($sp) -/* 0A4524 800A3924 460E7482 */ mul.s $f18, $f14, $f14 -/* 0A4528 800A3928 0C0326B4 */ jal sqrtf -/* 0A452C 800A392C 46128300 */ add.s $f12, $f16, $f18 -/* 0A4530 800A3930 8FA20020 */ lw $v0, 0x20($sp) -/* 0A4534 800A3934 00000000 */ nop -.L800A3938: -/* 0A4538 800A3938 3C01800E */ lui $at, %hi(D_800E2838) # $at, 0x800e -/* 0A453C 800A393C C4242838 */ lwc1 $f4, %lo(D_800E2838)($at) -/* 0A4540 800A3940 44806000 */ mtc1 $zero, $f12 -/* 0A4544 800A3944 4600203C */ c.lt.s $f4, $f0 -/* 0A4548 800A3948 3C01800E */ lui $at, %hi(D_800E2838) # $at, 0x800e -/* 0A454C 800A394C 45000002 */ bc1f .L800A3958 -/* 0A4550 800A3950 00000000 */ nop -/* 0A4554 800A3954 E4202838 */ swc1 $f0, %lo(D_800E2838)($at) -.L800A3958: -/* 0A4558 800A3958 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 0A455C 800A395C 44813000 */ mtc1 $at, $f6 -/* 0A4560 800A3960 805901E6 */ lb $t9, 0x1e6($v0) -/* 0A4564 800A3964 46060082 */ mul.s $f2, $f0, $f6 -/* 0A4568 800A3968 13200004 */ beqz $t9, .L800A397C -/* 0A456C 800A396C 3C0140E0 */ li $at, 0x40E00000 # 7.000000 -/* 0A4570 800A3970 44814000 */ mtc1 $at, $f8 -/* 0A4574 800A3974 00000000 */ nop -/* 0A4578 800A3978 46081080 */ add.s $f2, $f2, $f8 -.L800A397C: -/* 0A457C 800A397C 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 0A4580 800A3980 44810000 */ mtc1 $at, $f0 -/* 0A4584 800A3984 3C01800F */ lui $at, %hi(D_800E8740) # $at, 0x800f -/* 0A4588 800A3988 4602003C */ c.lt.s $f0, $f2 -/* 0A458C 800A398C 00000000 */ nop -/* 0A4590 800A3990 45000002 */ bc1f .L800A399C -/* 0A4594 800A3994 00000000 */ nop -/* 0A4598 800A3998 46000086 */ mov.s $f2, $f0 -.L800A399C: -/* 0A459C 800A399C C44A002C */ lwc1 $f10, 0x2c($v0) -/* 0A45A0 800A39A0 00000000 */ nop -/* 0A45A4 800A39A4 460A603C */ c.lt.s $f12, $f10 -/* 0A45A8 800A39A8 00000000 */ nop -/* 0A45AC 800A39AC 45000002 */ bc1f .L800A39B8 -/* 0A45B0 800A39B0 00000000 */ nop -/* 0A45B4 800A39B4 46006086 */ mov.s $f2, $f12 -.L800A39B8: -/* 0A45B8 800A39B8 C42C8740 */ lwc1 $f12, %lo(D_800E8740)($at) -/* 0A45BC 800A39BC 3C014396 */ li $at, 0x43960000 # 300.000000 -/* 0A45C0 800A39C0 46020081 */ sub.s $f2, $f0, $f2 -/* 0A45C4 800A39C4 44818000 */ mtc1 $at, $f16 -/* 0A45C8 800A39C8 00000000 */ nop -/* 0A45CC 800A39CC 46101082 */ mul.s $f2, $f2, $f16 -/* 0A45D0 800A39D0 4602603C */ c.lt.s $f12, $f2 -/* 0A45D4 800A39D4 00000000 */ nop -/* 0A45D8 800A39D8 45000002 */ bc1f .L800A39E4 -/* 0A45DC 800A39DC 00000000 */ nop -/* 0A45E0 800A39E0 46006086 */ mov.s $f2, $f12 -.L800A39E4: -/* 0A45E4 800A39E4 0C01BAA8 */ jal func_8006EAA0 -/* 0A45E8 800A39E8 E7A20024 */ swc1 $f2, 0x24($sp) -/* 0A45EC 800A39EC C7A20024 */ lwc1 $f2, 0x24($sp) -/* 0A45F0 800A39F0 1440002E */ bnez $v0, .L800A3AAC -/* 0A45F4 800A39F4 3C0D8012 */ lui $t5, %hi(D_80126D0C) # $t5, 0x8012 -/* 0A45F8 800A39F8 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 -/* 0A45FC 800A39FC 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) -/* 0A4600 800A3A00 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 0A4604 800A3A04 844804C4 */ lh $t0, 0x4c4($v0) -/* 0A4608 800A3A08 00000000 */ nop -/* 0A460C 800A3A0C 44889000 */ mtc1 $t0, $f18 -/* 0A4610 800A3A10 00000000 */ nop -/* 0A4614 800A3A14 46809020 */ cvt.s.w $f0, $f18 -/* 0A4618 800A3A18 4600103C */ c.lt.s $f2, $f0 -/* 0A461C 800A3A1C 00000000 */ nop -/* 0A4620 800A3A20 45000012 */ bc1f .L800A3A6C -/* 0A4624 800A3A24 00000000 */ nop -/* 0A4628 800A3A28 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 0A462C 800A3A2C 44813000 */ mtc1 $at, $f6 -/* 0A4630 800A3A30 46001101 */ sub.s $f4, $f2, $f0 -/* 0A4634 800A3A34 00000000 */ nop -/* 0A4638 800A3A38 46062203 */ div.s $f8, $f4, $f6 -/* 0A463C 800A3A3C 46080280 */ add.s $f10, $f0, $f8 -/* 0A4640 800A3A40 4449F800 */ cfc1 $t1, $31 -/* 0A4644 800A3A44 00000000 */ nop -/* 0A4648 800A3A48 35210003 */ ori $at, $t1, 3 -/* 0A464C 800A3A4C 38210002 */ xori $at, $at, 2 -/* 0A4650 800A3A50 44C1F800 */ ctc1 $at, $31 -/* 0A4654 800A3A54 00000000 */ nop -/* 0A4658 800A3A58 46005424 */ cvt.w.s $f16, $f10 -/* 0A465C 800A3A5C 440A8000 */ mfc1 $t2, $f16 -/* 0A4660 800A3A60 44C9F800 */ ctc1 $t1, $31 -/* 0A4664 800A3A64 10000011 */ b .L800A3AAC -/* 0A4668 800A3A68 A44A04C4 */ sh $t2, 0x4c4($v0) -.L800A3A6C: -/* 0A466C 800A3A6C 46001481 */ sub.s $f18, $f2, $f0 -/* 0A4670 800A3A70 44812000 */ mtc1 $at, $f4 -/* 0A4674 800A3A74 00000000 */ nop -/* 0A4678 800A3A78 46049183 */ div.s $f6, $f18, $f4 -/* 0A467C 800A3A7C 46060200 */ add.s $f8, $f0, $f6 -/* 0A4680 800A3A80 444BF800 */ cfc1 $t3, $31 -/* 0A4684 800A3A84 00000000 */ nop -/* 0A4688 800A3A88 35610003 */ ori $at, $t3, 3 -/* 0A468C 800A3A8C 38210002 */ xori $at, $at, 2 -/* 0A4690 800A3A90 44C1F800 */ ctc1 $at, $31 -/* 0A4694 800A3A94 00000000 */ nop -/* 0A4698 800A3A98 460042A4 */ cvt.w.s $f10, $f8 -/* 0A469C 800A3A9C 440C5000 */ mfc1 $t4, $f10 -/* 0A46A0 800A3AA0 44CBF800 */ ctc1 $t3, $31 -/* 0A46A4 800A3AA4 A44C04C4 */ sh $t4, 0x4c4($v0) -/* 0A46A8 800A3AA8 00000000 */ nop -.L800A3AAC: -/* 0A46AC 800A3AAC 8DAD6D0C */ lw $t5, %lo(D_80126D0C)($t5) -/* 0A46B0 800A3AB0 3C0E800E */ lui $t6, 0x800e -/* 0A46B4 800A3AB4 01CD7021 */ addu $t6, $t6, $t5 -/* 0A46B8 800A3AB8 81CE27A4 */ lb $t6, 0x27a4($t6) -/* 0A46BC 800A3ABC 3C0F8012 */ lui $t7, %hi(D_80126CD3) # $t7, 0x8012 -/* 0A46C0 800A3AC0 15C00084 */ bnez $t6, .L800A3CD4 -/* 0A46C4 800A3AC4 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A46C8 800A3AC8 81EF6CD3 */ lb $t7, %lo(D_80126CD3)($t7) -/* 0A46CC 800A3ACC 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A46D0 800A3AD0 31F80002 */ andi $t8, $t7, 2 -/* 0A46D4 800A3AD4 1300001F */ beqz $t8, .L800A3B54 -/* 0A46D8 800A3AD8 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A46DC 800A3ADC 3C198012 */ lui $t9, %hi(D_80126CD0) # $t9, 0x8012 -/* 0A46E0 800A3AE0 83396CD0 */ lb $t9, %lo(D_80126CD0)($t9) -/* 0A46E4 800A3AE4 3C088012 */ lui $t0, %hi(D_8012718B) # $t0, 0x8012 -/* 0A46E8 800A3AE8 44998000 */ mtc1 $t9, $f16 -/* 0A46EC 800A3AEC 9108718B */ lbu $t0, %lo(D_8012718B)($t0) -/* 0A46F0 800A3AF0 468084A0 */ cvt.s.w $f18, $f16 -/* 0A46F4 800A3AF4 3C01437F */ li $at, 0x437F0000 # 255.000000 -/* 0A46F8 800A3AF8 44810000 */ mtc1 $at, $f0 -/* 0A46FC 800A3AFC 44883000 */ mtc1 $t0, $f6 -/* 0A4700 800A3B00 46009102 */ mul.s $f4, $f18, $f0 -/* 0A4704 800A3B04 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0A4708 800A3B08 05010004 */ bgez $t0, .L800A3B1C -/* 0A470C 800A3B0C 46803220 */ cvt.s.w $f8, $f6 -/* 0A4710 800A3B10 44815000 */ mtc1 $at, $f10 -/* 0A4714 800A3B14 00000000 */ nop -/* 0A4718 800A3B18 460A4200 */ add.s $f8, $f8, $f10 -.L800A3B1C: -/* 0A471C 800A3B1C 00000000 */ nop -/* 0A4720 800A3B20 46082403 */ div.s $f16, $f4, $f8 -/* 0A4724 800A3B24 46100481 */ sub.s $f18, $f0, $f16 -/* 0A4728 800A3B28 4449F800 */ cfc1 $t1, $31 -/* 0A472C 800A3B2C 00000000 */ nop -/* 0A4730 800A3B30 35210003 */ ori $at, $t1, 3 -/* 0A4734 800A3B34 38210002 */ xori $at, $at, 2 -/* 0A4738 800A3B38 44C1F800 */ ctc1 $at, $31 -/* 0A473C 800A3B3C 00000000 */ nop -/* 0A4740 800A3B40 460091A4 */ cvt.w.s $f6, $f18 -/* 0A4744 800A3B44 440A3000 */ mfc1 $t2, $f6 -/* 0A4748 800A3B48 44C9F800 */ ctc1 $t1, $31 -/* 0A474C 800A3B4C 10000003 */ b .L800A3B5C -/* 0A4750 800A3B50 AFAA001C */ sw $t2, 0x1c($sp) -.L800A3B54: -/* 0A4754 800A3B54 240B00FF */ li $t3, 255 -/* 0A4758 800A3B58 AFAB001C */ sw $t3, 0x1c($sp) -.L800A3B5C: -/* 0A475C 800A3B5C 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 -/* 0A4760 800A3B60 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) -/* 0A4764 800A3B64 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A4768 800A3B68 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A476C 800A3B6C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A4770 800A3B70 0C02A980 */ jal func_800AA600 -/* 0A4774 800A3B74 24E705A0 */ addiu $a3, $a3, 0x5a0 -/* 0A4778 800A3B78 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A477C 800A3B7C 0C01ECF4 */ jal func_8007B3D0 -/* 0A4780 800A3B80 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A4784 800A3B84 0C01EFC7 */ jal func_8007BF1C -/* 0A4788 800A3B88 24040001 */ li $a0, 1 -/* 0A478C 800A3B8C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A4790 800A3B90 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A4794 800A3B94 8C830000 */ lw $v1, ($a0) -/* 0A4798 800A3B98 3C0DFA00 */ lui $t5, 0xfa00 -/* 0A479C 800A3B9C 246C0008 */ addiu $t4, $v1, 8 -/* 0A47A0 800A3BA0 AC8C0000 */ sw $t4, ($a0) -/* 0A47A4 800A3BA4 AC6D0000 */ sw $t5, ($v1) -/* 0A47A8 800A3BA8 8FAE001C */ lw $t6, 0x1c($sp) -/* 0A47AC 800A3BAC 2401FF00 */ li $at, -256 -/* 0A47B0 800A3BB0 31CF00FF */ andi $t7, $t6, 0xff -/* 0A47B4 800A3BB4 01E1C025 */ or $t8, $t7, $at -/* 0A47B8 800A3BB8 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 -/* 0A47BC 800A3BBC AC780004 */ sw $t8, 4($v1) -/* 0A47C0 800A3BC0 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) -/* 0A47C4 800A3BC4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A47C8 800A3BC8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A47CC 800A3BCC 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A47D0 800A3BD0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A47D4 800A3BD4 0C02A980 */ jal func_800AA600 -/* 0A47D8 800A3BD8 24E704C0 */ addiu $a3, $a3, 0x4c0 -/* 0A47DC 800A3BDC 0C01EFC7 */ jal func_8007BF1C -/* 0A47E0 800A3BE0 00002025 */ move $a0, $zero -/* 0A47E4 800A3BE4 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 -/* 0A47E8 800A3BE8 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) -/* 0A47EC 800A3BEC 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A47F0 800A3BF0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A47F4 800A3BF4 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A47F8 800A3BF8 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A47FC 800A3BFC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A4800 800A3C00 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A4804 800A3C04 0C02A980 */ jal func_800AA600 -/* 0A4808 800A3C08 24E704E0 */ addiu $a3, $a3, 0x4e0 -/* 0A480C 800A3C0C 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 -/* 0A4810 800A3C10 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) -/* 0A4814 800A3C14 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A4818 800A3C18 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A481C 800A3C1C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A4820 800A3C20 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A4824 800A3C24 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A4828 800A3C28 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A482C 800A3C2C 0C02A980 */ jal func_800AA600 -/* 0A4830 800A3C30 24E70500 */ addiu $a3, $a3, 0x500 -/* 0A4834 800A3C34 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 -/* 0A4838 800A3C38 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) -/* 0A483C 800A3C3C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A4840 800A3C40 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A4844 800A3C44 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A4848 800A3C48 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A484C 800A3C4C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A4850 800A3C50 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A4854 800A3C54 0C02A980 */ jal func_800AA600 -/* 0A4858 800A3C58 24E70520 */ addiu $a3, $a3, 0x520 -/* 0A485C 800A3C5C 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 -/* 0A4860 800A3C60 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) -/* 0A4864 800A3C64 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A4868 800A3C68 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A486C 800A3C6C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A4870 800A3C70 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A4874 800A3C74 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A4878 800A3C78 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A487C 800A3C7C 0C02A980 */ jal func_800AA600 -/* 0A4880 800A3C80 24E70540 */ addiu $a3, $a3, 0x540 -/* 0A4884 800A3C84 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 -/* 0A4888 800A3C88 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) -/* 0A488C 800A3C8C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A4890 800A3C90 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A4894 800A3C94 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A4898 800A3C98 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A489C 800A3C9C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A48A0 800A3CA0 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A48A4 800A3CA4 0C02A980 */ jal func_800AA600 -/* 0A48A8 800A3CA8 24E70560 */ addiu $a3, $a3, 0x560 -/* 0A48AC 800A3CAC 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 -/* 0A48B0 800A3CB0 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) -/* 0A48B4 800A3CB4 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A48B8 800A3CB8 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A48BC 800A3CBC 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A48C0 800A3CC0 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A48C4 800A3CC4 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A48C8 800A3CC8 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A48CC 800A3CCC 0C02A980 */ jal func_800AA600 -/* 0A48D0 800A3CD0 24E70580 */ addiu $a3, $a3, 0x580 -.L800A3CD4: -/* 0A48D4 800A3CD4 8FBF0014 */ lw $ra, 0x14($sp) -.L800A3CD8: -/* 0A48D8 800A3CD8 27BD0028 */ addiu $sp, $sp, 0x28 -/* 0A48DC 800A3CDC 03E00008 */ jr $ra -/* 0A48E0 800A3CE0 00000000 */ nop - -glabel func_800A3CE4 -/* 0A48E4 800A3CE4 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 0A48E8 800A3CE8 AFBF0024 */ sw $ra, 0x24($sp) -/* 0A48EC 800A3CEC AFA40058 */ sw $a0, 0x58($sp) -/* 0A48F0 800A3CF0 0C01BAA8 */ jal func_8006EAA0 -/* 0A48F4 800A3CF4 AFA5005C */ sw $a1, 0x5c($sp) -/* 0A48F8 800A3CF8 8FA90058 */ lw $t1, 0x58($sp) -/* 0A48FC 800A3CFC 14400111 */ bnez $v0, .L800A4144 -/* 0A4900 800A3D00 3C0F8012 */ lui $t7, %hi(D_80126D0C) # $t7, 0x8012 -/* 0A4904 800A3D04 15200008 */ bnez $t1, .L800A3D28 -/* 0A4908 800A3D08 3C03800E */ lui $v1, %hi(D_800E2770) # $v1, 0x800e -/* 0A490C 800A3D0C 24632770 */ addiu $v1, %lo(D_800E2770) # addiu $v1, $v1, 0x2770 -/* 0A4910 800A3D10 806E000C */ lb $t6, 0xc($v1) -/* 0A4914 800A3D14 2402FFFF */ li $v0, -1 -/* 0A4918 800A3D18 144E0003 */ bne $v0, $t6, .L800A3D28 -/* 0A491C 800A3D1C 00000000 */ nop -/* 0A4920 800A3D20 A0620003 */ sb $v0, 3($v1) -/* 0A4924 800A3D24 A0620013 */ sb $v0, 0x13($v1) -.L800A3D28: -/* 0A4928 800A3D28 8DEF6D0C */ lw $t7, %lo(D_80126D0C)($t7) -/* 0A492C 800A3D2C 24010001 */ li $at, 1 -/* 0A4930 800A3D30 15E10005 */ bne $t7, $at, .L800A3D48 -/* 0A4934 800A3D34 00000000 */ nop -/* 0A4938 800A3D38 0C01EFC7 */ jal func_8007BF1C -/* 0A493C 800A3D3C 24040001 */ li $a0, 1 -/* 0A4940 800A3D40 8FA90058 */ lw $t1, 0x58($sp) -/* 0A4944 800A3D44 00000000 */ nop -.L800A3D48: -/* 0A4948 800A3D48 19200083 */ blez $t1, .L800A3F58 -/* 0A494C 800A3D4C 3C088012 */ lui $t0, 0x8012 -/* 0A4950 800A3D50 3C188012 */ lui $t8, %hi(D_80126D34) # $t8, 0x8012 -/* 0A4954 800A3D54 93186D34 */ lbu $t8, %lo(D_80126D34)($t8) -/* 0A4958 800A3D58 00095A00 */ sll $t3, $t1, 8 -/* 0A495C 800A3D5C 1300002F */ beqz $t8, .L800A3E1C -/* 0A4960 800A3D60 01695823 */ subu $t3, $t3, $t1 -/* 0A4964 800A3D64 24010028 */ li $at, 40 -/* 0A4968 800A3D68 0161001A */ div $zero, $t3, $at -/* 0A496C 800A3D6C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A4970 800A3D70 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A4974 800A3D74 8C820000 */ lw $v0, ($a0) -/* 0A4978 800A3D78 2401FF00 */ li $at, -256 -/* 0A497C 800A3D7C 24590008 */ addiu $t9, $v0, 8 -/* 0A4980 800A3D80 AC990000 */ sw $t9, ($a0) -/* 0A4984 800A3D84 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A4988 800A3D88 3C0AFA00 */ lui $t2, 0xfa00 -/* 0A498C 800A3D8C 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A4990 800A3D90 AC4A0000 */ sw $t2, ($v0) -/* 0A4994 800A3D94 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A4998 800A3D98 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A499C 800A3D9C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A49A0 800A3DA0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A49A4 800A3DA4 00006012 */ mflo $t4 -/* 0A49A8 800A3DA8 318D00FF */ andi $t5, $t4, 0xff -/* 0A49AC 800A3DAC 01A17025 */ or $t6, $t5, $at -/* 0A49B0 800A3DB0 AC4E0004 */ sw $t6, 4($v0) -/* 0A49B4 800A3DB4 8D070000 */ lw $a3, ($t0) -/* 0A49B8 800A3DB8 0C02A980 */ jal func_800AA600 -/* 0A49BC 800A3DBC 24E701A0 */ addiu $a3, $a3, 0x1a0 -/* 0A49C0 800A3DC0 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A49C4 800A3DC4 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A49C8 800A3DC8 8C820000 */ lw $v0, ($a0) -/* 0A49CC 800A3DCC 3C18FA00 */ lui $t8, 0xfa00 -/* 0A49D0 800A3DD0 244F0008 */ addiu $t7, $v0, 8 -/* 0A49D4 800A3DD4 AC8F0000 */ sw $t7, ($a0) -/* 0A49D8 800A3DD8 2419FFFF */ li $t9, -1 -/* 0A49DC 800A3DDC 3C0A8012 */ lui $t2, %hi(D_80126CD4) # $t2, 0x8012 -/* 0A49E0 800A3DE0 AC590004 */ sw $t9, 4($v0) -/* 0A49E4 800A3DE4 AC580000 */ sw $t8, ($v0) -/* 0A49E8 800A3DE8 814A6CD4 */ lb $t2, %lo(D_80126CD4)($t2) -/* 0A49EC 800A3DEC 24010002 */ li $at, 2 -/* 0A49F0 800A3DF0 1541000A */ bne $t2, $at, .L800A3E1C -/* 0A49F4 800A3DF4 24040018 */ li $a0, 24 -/* 0A49F8 800A3DF8 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A49FC 800A3DFC 0C000741 */ jal func_80001D04 -/* 0A4A00 800A3E00 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -/* 0A4A04 800A3E04 3C028012 */ lui $v0, %hi(D_80126CD4) # $v0, 0x8012 -/* 0A4A08 800A3E08 24426CD4 */ addiu $v0, %lo(D_80126CD4) # addiu $v0, $v0, 0x6cd4 -/* 0A4A0C 800A3E0C 804B0000 */ lb $t3, ($v0) -/* 0A4A10 800A3E10 00000000 */ nop -/* 0A4A14 800A3E14 256C0001 */ addiu $t4, $t3, 1 -/* 0A4A18 800A3E18 A04C0000 */ sb $t4, ($v0) -.L800A3E1C: -/* 0A4A1C 800A3E1C 3C0D8012 */ lui $t5, %hi(D_80126D3C) # $t5, 0x8012 -/* 0A4A20 800A3E20 8DAD6D3C */ lw $t5, %lo(D_80126D3C)($t5) -/* 0A4A24 800A3E24 00000000 */ nop -/* 0A4A28 800A3E28 15A000C4 */ bnez $t5, .L800A413C -/* 0A4A2C 800A3E2C 00000000 */ nop -/* 0A4A30 800A3E30 0C008D5A */ jal func_80023568 -/* 0A4A34 800A3E34 00000000 */ nop -/* 0A4A38 800A3E38 144000C0 */ bnez $v0, .L800A413C -/* 0A4A3C 800A3E3C 00000000 */ nop -/* 0A4A40 800A3E40 0C006E9D */ jal func_8001BA74 -/* 0A4A44 800A3E44 27A40038 */ addiu $a0, $sp, 0x38 -/* 0A4A48 800A3E48 8FA50038 */ lw $a1, 0x38($sp) -/* 0A4A4C 800A3E4C AFA20044 */ sw $v0, 0x44($sp) -/* 0A4A50 800A3E50 0C01BE53 */ jal func_8006F94C -/* 0A4A54 800A3E54 24040001 */ li $a0, 1 -/* 0A4A58 800A3E58 8FAE0044 */ lw $t6, 0x44($sp) -/* 0A4A5C 800A3E5C 00027880 */ sll $t7, $v0, 2 -/* 0A4A60 800A3E60 01CFC021 */ addu $t8, $t6, $t7 -/* 0A4A64 800A3E64 8F08FFFC */ lw $t0, -4($t8) -/* 0A4A68 800A3E68 00002025 */ move $a0, $zero -/* 0A4A6C 800A3E6C 8D030064 */ lw $v1, 0x64($t0) -/* 0A4A70 800A3E70 24050064 */ li $a1, 100 -/* 0A4A74 800A3E74 807901D6 */ lb $t9, 0x1d6($v1) -/* 0A4A78 800A3E78 00000000 */ nop -/* 0A4A7C 800A3E7C 172000AF */ bnez $t9, .L800A413C -/* 0A4A80 800A3E80 00000000 */ nop -/* 0A4A84 800A3E84 0C01BE53 */ jal func_8006F94C -/* 0A4A88 800A3E88 AFA80040 */ sw $t0, 0x40($sp) -/* 0A4A8C 800A3E8C 8FA80040 */ lw $t0, 0x40($sp) -/* 0A4A90 800A3E90 28410060 */ slti $at, $v0, 0x60 -/* 0A4A94 800A3E94 142000A9 */ bnez $at, .L800A413C -/* 0A4A98 800A3E98 00002025 */ move $a0, $zero -/* 0A4A9C 800A3E9C 24050007 */ li $a1, 7 -/* 0A4AA0 800A3EA0 0C01BE53 */ jal func_8006F94C -/* 0A4AA4 800A3EA4 AFA80040 */ sw $t0, 0x40($sp) -/* 0A4AA8 800A3EA8 44822000 */ mtc1 $v0, $f4 -/* 0A4AAC 800A3EAC 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 0A4AB0 800A3EB0 468021A1 */ cvt.d.w $f6, $f4 -/* 0A4AB4 800A3EB4 44814800 */ mtc1 $at, $f9 -/* 0A4AB8 800A3EB8 44804000 */ mtc1 $zero, $f8 -/* 0A4ABC 800A3EBC 3C01401C */ li $at, 0x401C0000 # 2.437500 -/* 0A4AC0 800A3EC0 46283282 */ mul.d $f10, $f6, $f8 -/* 0A4AC4 800A3EC4 44818800 */ mtc1 $at, $f17 -/* 0A4AC8 800A3EC8 44808000 */ mtc1 $zero, $f16 -/* 0A4ACC 800A3ECC 3C013FF4 */ li $at, 0x3FF40000 # 1.906250 -/* 0A4AD0 800A3ED0 44812800 */ mtc1 $at, $f5 -/* 0A4AD4 800A3ED4 46305483 */ div.d $f18, $f10, $f16 -/* 0A4AD8 800A3ED8 44802000 */ mtc1 $zero, $f4 -/* 0A4ADC 800A3EDC 00002025 */ move $a0, $zero -/* 0A4AE0 800A3EE0 24050007 */ li $a1, 7 -/* 0A4AE4 800A3EE4 46322181 */ sub.d $f6, $f4, $f18 -/* 0A4AE8 800A3EE8 46203220 */ cvt.s.d $f8, $f6 -/* 0A4AEC 800A3EEC 0C01BE53 */ jal func_8006F94C -/* 0A4AF0 800A3EF0 E7A8004C */ swc1 $f8, 0x4c($sp) -/* 0A4AF4 800A3EF4 00025980 */ sll $t3, $v0, 6 -/* 0A4AF8 800A3EF8 01625823 */ subu $t3, $t3, $v0 -/* 0A4AFC 800A3EFC 24010007 */ li $at, 7 -/* 0A4B00 800A3F00 0161001A */ div $zero, $t3, $at -/* 0A4B04 800A3F04 8FA80040 */ lw $t0, 0x40($sp) -/* 0A4B08 800A3F08 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 0A4B0C 800A3F0C 44818000 */ mtc1 $at, $f16 -/* 0A4B10 800A3F10 C7AA004C */ lwc1 $f10, 0x4c($sp) -/* 0A4B14 800A3F14 8D05000C */ lw $a1, 0xc($t0) -/* 0A4B18 800A3F18 8D060010 */ lw $a2, 0x10($t0) -/* 0A4B1C 800A3F1C 8D070014 */ lw $a3, 0x14($t0) -/* 0A4B20 800A3F20 46105102 */ mul.s $f4, $f10, $f16 -/* 0A4B24 800A3F24 3C0E8012 */ lui $t6, %hi(D_80126D3C) # $t6, 0x8012 -/* 0A4B28 800A3F28 25CE6D3C */ addiu $t6, %lo(D_80126D3C) # addiu $t6, $t6, 0x6d3c -/* 0A4B2C 800A3F2C 240A0004 */ li $t2, 4 -/* 0A4B30 800A3F30 AFAA0010 */ sw $t2, 0x10($sp) -/* 0A4B34 800A3F34 AFAE001C */ sw $t6, 0x1c($sp) -/* 0A4B38 800A3F38 E7A40018 */ swc1 $f4, 0x18($sp) -/* 0A4B3C 800A3F3C 2404004C */ li $a0, 76 -/* 0A4B40 800A3F40 00006012 */ mflo $t4 -/* 0A4B44 800A3F44 258D0018 */ addiu $t5, $t4, 0x18 -/* 0A4B48 800A3F48 0C00257A */ jal func_800095E8 -/* 0A4B4C 800A3F4C AFAD0014 */ sw $t5, 0x14($sp) -/* 0A4B50 800A3F50 1000007A */ b .L800A413C -/* 0A4B54 800A3F54 00000000 */ nop -.L800A3F58: -/* 0A4B58 800A3F58 25086CDC */ addiu $t0, $t0, 0x6cdc -/* 0A4B5C 800A3F5C 8D0F0000 */ lw $t7, ($t0) -/* 0A4B60 800A3F60 3C01C348 */ li $at, 0xC3480000 # -200.000000 -/* 0A4B64 800A3F64 44819000 */ mtc1 $at, $f18 -/* 0A4B68 800A3F68 C5E6018C */ lwc1 $f6, 0x18c($t7) -/* 0A4B6C 800A3F6C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A4B70 800A3F70 4606903C */ c.lt.s $f18, $f6 -/* 0A4B74 800A3F74 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A4B78 800A3F78 45000070 */ bc1f .L800A413C -/* 0A4B7C 800A3F7C 3C19FA00 */ lui $t9, 0xfa00 -/* 0A4B80 800A3F80 8C820000 */ lw $v0, ($a0) -/* 0A4B84 800A3F84 240AFFA0 */ li $t2, -96 -/* 0A4B88 800A3F88 24580008 */ addiu $t8, $v0, 8 -/* 0A4B8C 800A3F8C AC980000 */ sw $t8, ($a0) -/* 0A4B90 800A3F90 AC4A0004 */ sw $t2, 4($v0) -/* 0A4B94 800A3F94 AC590000 */ sw $t9, ($v0) -/* 0A4B98 800A3F98 8D070000 */ lw $a3, ($t0) -/* 0A4B9C 800A3F9C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A4BA0 800A3FA0 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A4BA4 800A3FA4 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A4BA8 800A3FA8 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A4BAC 800A3FAC 0C02A980 */ jal func_800AA600 -/* 0A4BB0 800A3FB0 24E70180 */ addiu $a3, $a3, 0x180 -/* 0A4BB4 800A3FB4 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A4BB8 800A3FB8 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A4BBC 800A3FBC 8C820000 */ lw $v0, ($a0) -/* 0A4BC0 800A3FC0 3C0CFA00 */ lui $t4, 0xfa00 -/* 0A4BC4 800A3FC4 244B0008 */ addiu $t3, $v0, 8 -/* 0A4BC8 800A3FC8 AC8B0000 */ sw $t3, ($a0) -/* 0A4BCC 800A3FCC 240DFFFF */ li $t5, -1 -/* 0A4BD0 800A3FD0 3C078012 */ lui $a3, %hi(D_80126D08) # $a3, 0x8012 -/* 0A4BD4 800A3FD4 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A4BD8 800A3FD8 AC4D0004 */ sw $t5, 4($v0) -/* 0A4BDC 800A3FDC AC4C0000 */ sw $t4, ($v0) -/* 0A4BE0 800A3FE0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A4BE4 800A3FE4 24E76D08 */ addiu $a3, %lo(D_80126D08) # addiu $a3, $a3, 0x6d08 -/* 0A4BE8 800A3FE8 8CEF0000 */ lw $t7, ($a3) -/* 0A4BEC 800A3FEC 8D0E0000 */ lw $t6, ($t0) -/* 0A4BF0 800A3FF0 8FB9005C */ lw $t9, 0x5c($sp) -/* 0A4BF4 800A3FF4 01CF2821 */ addu $a1, $t6, $t7 -/* 0A4BF8 800A3FF8 80B8019A */ lb $t8, 0x19a($a1) -/* 0A4BFC 800A3FFC 3C0E8012 */ lui $t6, %hi(D_80126CD4) # $t6, 0x8012 -/* 0A4C00 800A4000 03195021 */ addu $t2, $t8, $t9 -/* 0A4C04 800A4004 A0AA019A */ sb $t2, 0x19a($a1) -/* 0A4C08 800A4008 8CEB0000 */ lw $t3, ($a3) -/* 0A4C0C 800A400C 8D060000 */ lw $a2, ($t0) -/* 0A4C10 800A4010 00000000 */ nop -/* 0A4C14 800A4014 00CB6021 */ addu $t4, $a2, $t3 -/* 0A4C18 800A4018 818D019A */ lb $t5, 0x19a($t4) -/* 0A4C1C 800A401C 00000000 */ nop -/* 0A4C20 800A4020 29A1003C */ slti $at, $t5, 0x3c -/* 0A4C24 800A4024 14200025 */ bnez $at, .L800A40BC -/* 0A4C28 800A4028 00000000 */ nop -/* 0A4C2C 800A402C 81CE6CD4 */ lb $t6, %lo(D_80126CD4)($t6) -/* 0A4C30 800A4030 24010004 */ li $at, 4 -/* 0A4C34 800A4034 15C1001A */ bne $t6, $at, .L800A40A0 -/* 0A4C38 800A4038 8FB9005C */ lw $t9, 0x5c($sp) -/* 0A4C3C 800A403C 0C019884 */ jal func_80066210 -/* 0A4C40 800A4040 00000000 */ nop -/* 0A4C44 800A4044 28410002 */ slti $at, $v0, 2 -/* 0A4C48 800A4048 14200006 */ bnez $at, .L800A4064 -/* 0A4C4C 800A404C 3C013F80 */ lui $at, 0x3f80 -/* 0A4C50 800A4050 0C0002CD */ jal func_80000B34 -/* 0A4C54 800A4054 00002025 */ move $a0, $zero -/* 0A4C58 800A4058 10000006 */ b .L800A4074 -/* 0A4C5C 800A405C 24040016 */ li $a0, 22 -/* 0A4C60 800A4060 3C013F80 */ li $at, 0x3F800000 # 1.000000 -.L800A4064: -/* 0A4C64 800A4064 44816000 */ mtc1 $at, $f12 -/* 0A4C68 800A4068 0C01AF44 */ jal func_8006BD10 -/* 0A4C6C 800A406C 00000000 */ nop -/* 0A4C70 800A4070 24040016 */ li $a0, 22 -.L800A4074: -/* 0A4C74 800A4074 0C000741 */ jal func_80001D04 -/* 0A4C78 800A4078 00002825 */ move $a1, $zero -/* 0A4C7C 800A407C 3C028012 */ lui $v0, %hi(D_80126CD4) # $v0, 0x8012 -/* 0A4C80 800A4080 24426CD4 */ addiu $v0, %lo(D_80126CD4) # addiu $v0, $v0, 0x6cd4 -/* 0A4C84 800A4084 804F0000 */ lb $t7, ($v0) -/* 0A4C88 800A4088 3C068012 */ lui $a2, %hi(D_80126CDC) # $a2, 0x8012 -/* 0A4C8C 800A408C 25F80001 */ addiu $t8, $t7, 1 -/* 0A4C90 800A4090 A0580000 */ sb $t8, ($v0) -/* 0A4C94 800A4094 8CC66CDC */ lw $a2, %lo(D_80126CDC)($a2) -/* 0A4C98 800A4098 00000000 */ nop -/* 0A4C9C 800A409C 8FB9005C */ lw $t9, 0x5c($sp) -.L800A40A0: -/* 0A4CA0 800A40A0 C4C8018C */ lwc1 $f8, 0x18c($a2) -/* 0A4CA4 800A40A4 001950C0 */ sll $t2, $t9, 3 -/* 0A4CA8 800A40A8 448A5000 */ mtc1 $t2, $f10 -/* 0A4CAC 800A40AC 00000000 */ nop -/* 0A4CB0 800A40B0 46805420 */ cvt.s.w $f16, $f10 -/* 0A4CB4 800A40B4 46104101 */ sub.s $f4, $f8, $f16 -/* 0A4CB8 800A40B8 E4C4018C */ swc1 $f4, 0x18c($a2) -.L800A40BC: -/* 0A4CBC 800A40BC 3C0B8012 */ lui $t3, %hi(D_80126CD4) # $t3, 0x8012 -/* 0A4CC0 800A40C0 816B6CD4 */ lb $t3, %lo(D_80126CD4)($t3) -/* 0A4CC4 800A40C4 24010003 */ li $at, 3 -/* 0A4CC8 800A40C8 1561001C */ bne $t3, $at, .L800A413C -/* 0A4CCC 800A40CC 24040019 */ li $a0, 25 -/* 0A4CD0 800A40D0 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A4CD4 800A40D4 0C000741 */ jal func_80001D04 -/* 0A4CD8 800A40D8 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -/* 0A4CDC 800A40DC 0C006D90 */ jal func_8001B640 -/* 0A4CE0 800A40E0 00000000 */ nop -/* 0A4CE4 800A40E4 1040000D */ beqz $v0, .L800A411C -/* 0A4CE8 800A40E8 00000000 */ nop -/* 0A4CEC 800A40EC 0C006D94 */ jal func_8001B650 -/* 0A4CF0 800A40F0 00000000 */ nop -/* 0A4CF4 800A40F4 14400009 */ bnez $v0, .L800A411C -/* 0A4CF8 800A40F8 2404024B */ li $a0, 587 -/* 0A4CFC 800A40FC 3C053FD9 */ lui $a1, (0x3FD9999A >> 16) # lui $a1, 0x3fd9 -/* 0A4D00 800A4100 34A5999A */ ori $a1, (0x3FD9999A & 0xFFFF) # ori $a1, $a1, 0x999a -/* 0A4D04 800A4104 0C029D21 */ jal func_800A7484 -/* 0A4D08 800A4108 00003025 */ move $a2, $zero -/* 0A4D0C 800A410C 3C053FD9 */ lui $a1, (0x3FD9999A >> 16) # lui $a1, 0x3fd9 -/* 0A4D10 800A4110 34A5999A */ ori $a1, (0x3FD9999A & 0xFFFF) # ori $a1, $a1, 0x999a -/* 0A4D14 800A4114 0C030C56 */ jal func_800C3158 -/* 0A4D18 800A4118 24040052 */ li $a0, 82 -.L800A411C: -/* 0A4D1C 800A411C 3C0D8012 */ lui $t5, %hi(D_80126CD4) # $t5, 0x8012 -/* 0A4D20 800A4120 81AD6CD4 */ lb $t5, %lo(D_80126CD4)($t5) -/* 0A4D24 800A4124 240C0001 */ li $t4, 1 -/* 0A4D28 800A4128 3C018012 */ lui $at, %hi(D_80126D70) # $at, 0x8012 -/* 0A4D2C 800A412C A02C6D70 */ sb $t4, %lo(D_80126D70)($at) -/* 0A4D30 800A4130 3C018012 */ lui $at, %hi(D_80126CD4) # $at, 0x8012 -/* 0A4D34 800A4134 25AE0001 */ addiu $t6, $t5, 1 -/* 0A4D38 800A4138 A02E6CD4 */ sb $t6, %lo(D_80126CD4)($at) -.L800A413C: -/* 0A4D3C 800A413C 0C01EFC7 */ jal func_8007BF1C -/* 0A4D40 800A4140 00002025 */ move $a0, $zero -.L800A4144: -/* 0A4D44 800A4144 8FBF0024 */ lw $ra, 0x24($sp) -/* 0A4D48 800A4148 27BD0058 */ addiu $sp, $sp, 0x58 -/* 0A4D4C 800A414C 03E00008 */ jr $ra -/* 0A4D50 800A4150 00000000 */ nop - -glabel func_800A4154 -/* 0A4D54 800A4154 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 0A4D58 800A4158 AFBF001C */ sw $ra, 0x1c($sp) -/* 0A4D5C 800A415C AFB00018 */ sw $s0, 0x18($sp) -/* 0A4D60 800A4160 AFA40040 */ sw $a0, 0x40($sp) -/* 0A4D64 800A4164 AFA50044 */ sw $a1, 0x44($sp) -/* 0A4D68 800A4168 84820000 */ lh $v0, ($a0) -/* 0A4D6C 800A416C 2401FFFF */ li $at, -1 -/* 0A4D70 800A4170 1041002B */ beq $v0, $at, .L800A4220 -/* 0A4D74 800A4174 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 -/* 0A4D78 800A4178 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) -/* 0A4D7C 800A417C 3C19800E */ lui $t9, 0x800e -/* 0A4D80 800A4180 1860000F */ blez $v1, .L800A41C0 -/* 0A4D84 800A4184 00037880 */ sll $t7, $v1, 2 -/* 0A4D88 800A4188 01E2C021 */ addu $t8, $t7, $v0 -/* 0A4D8C 800A418C 0338C821 */ addu $t9, $t9, $t8 -/* 0A4D90 800A4190 93392794 */ lbu $t9, 0x2794($t9) -/* 0A4D94 800A4194 24010002 */ li $at, 2 -/* 0A4D98 800A4198 13210009 */ beq $t9, $at, .L800A41C0 -/* 0A4D9C 800A419C 3C0A8012 */ lui $t2, %hi(D_80126D60) # $t2, 0x8012 -/* 0A4DA0 800A41A0 8D4A6D60 */ lw $t2, %lo(D_80126D60)($t2) -/* 0A4DA4 800A41A4 24010041 */ li $at, 65 -/* 0A4DA8 800A41A8 8142004C */ lb $v0, 0x4c($t2) -/* 0A4DAC 800A41AC 00000000 */ nop -/* 0A4DB0 800A41B0 10410003 */ beq $v0, $at, .L800A41C0 -/* 0A4DB4 800A41B4 24010040 */ li $at, 64 -/* 0A4DB8 800A41B8 1441010A */ bne $v0, $at, .L800A45E4 -/* 0A4DBC 800A41BC 8FBF001C */ lw $ra, 0x1c($sp) -.L800A41C0: -/* 0A4DC0 800A41C0 8FAB0040 */ lw $t3, 0x40($sp) -/* 0A4DC4 800A41C4 00000000 */ nop -/* 0A4DC8 800A41C8 816C01D8 */ lb $t4, 0x1d8($t3) -/* 0A4DCC 800A41CC 00000000 */ nop -/* 0A4DD0 800A41D0 15800104 */ bnez $t4, .L800A45E4 -/* 0A4DD4 800A41D4 8FBF001C */ lw $ra, 0x1c($sp) -/* 0A4DD8 800A41D8 18600011 */ blez $v1, .L800A4220 -/* 0A4DDC 800A41DC 00000000 */ nop -/* 0A4DE0 800A41E0 81620193 */ lb $v0, 0x193($t3) -/* 0A4DE4 800A41E4 00000000 */ nop -/* 0A4DE8 800A41E8 1840000D */ blez $v0, .L800A4220 -/* 0A4DEC 800A41EC 00026880 */ sll $t5, $v0, 2 -/* 0A4DF0 800A41F0 016D7021 */ addu $t6, $t3, $t5 -/* 0A4DF4 800A41F4 8DCF0128 */ lw $t7, 0x128($t6) -/* 0A4DF8 800A41F8 3C188012 */ lui $t8, %hi(D_80126D60) # $t8, 0x8012 -/* 0A4DFC 800A41FC 29E100B4 */ slti $at, $t7, 0xb4 -/* 0A4E00 800A4200 10200007 */ beqz $at, .L800A4220 -/* 0A4E04 800A4204 00000000 */ nop -/* 0A4E08 800A4208 8F186D60 */ lw $t8, %lo(D_80126D60)($t8) -/* 0A4E0C 800A420C 00000000 */ nop -/* 0A4E10 800A4210 8319004C */ lb $t9, 0x4c($t8) -/* 0A4E14 800A4214 00000000 */ nop -/* 0A4E18 800A4218 332A0040 */ andi $t2, $t9, 0x40 -/* 0A4E1C 800A421C 114000F0 */ beqz $t2, .L800A45E0 -.L800A4220: -/* 0A4E20 800A4220 3C108012 */ lui $s0, %hi(D_80126CDC) # $s0, 0x8012 -/* 0A4E24 800A4224 26106CDC */ addiu $s0, %lo(D_80126CDC) # addiu $s0, $s0, 0x6cdc -/* 0A4E28 800A4228 8E070000 */ lw $a3, ($s0) -/* 0A4E2C 800A422C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A4E30 800A4230 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A4E34 800A4234 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A4E38 800A4238 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A4E3C 800A423C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A4E40 800A4240 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A4E44 800A4244 0C02A980 */ jal func_800AA600 -/* 0A4E48 800A4248 24E70240 */ addiu $a3, $a3, 0x240 -/* 0A4E4C 800A424C 8FA60040 */ lw $a2, 0x40($sp) -/* 0A4E50 800A4250 8E020000 */ lw $v0, ($s0) -/* 0A4E54 800A4254 80C40185 */ lb $a0, 0x185($a2) -/* 0A4E58 800A4258 00000000 */ nop -/* 0A4E5C 800A425C AFA4003C */ sw $a0, 0x3c($sp) -/* 0A4E60 800A4260 804500FA */ lb $a1, 0xfa($v0) -/* 0A4E64 800A4264 904300F9 */ lbu $v1, 0xf9($v0) -/* 0A4E68 800A4268 14A0000A */ bnez $a1, .L800A4294 -/* 0A4E6C 800A426C 00000000 */ nop -/* 0A4E70 800A4270 804C00FB */ lb $t4, 0xfb($v0) -/* 0A4E74 800A4274 240B0002 */ li $t3, 2 -/* 0A4E78 800A4278 108C0006 */ beq $a0, $t4, .L800A4294 -/* 0A4E7C 800A427C 00000000 */ nop -/* 0A4E80 800A4280 A04B00FA */ sb $t3, 0xfa($v0) -/* 0A4E84 800A4284 8E0E0000 */ lw $t6, ($s0) -/* 0A4E88 800A4288 80CD0185 */ lb $t5, 0x185($a2) -/* 0A4E8C 800A428C 10000024 */ b .L800A4320 -/* 0A4E90 800A4290 A1CD00FB */ sb $t5, 0xfb($t6) -.L800A4294: -/* 0A4E94 800A4294 10A00022 */ beqz $a1, .L800A4320 -/* 0A4E98 800A4298 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 0A4E9C 800A429C 44812000 */ mtc1 $at, $f4 -/* 0A4EA0 800A42A0 00000000 */ nop -/* 0A4EA4 800A42A4 E4440388 */ swc1 $f4, 0x388($v0) -/* 0A4EA8 800A42A8 8FAF0044 */ lw $t7, 0x44($sp) -/* 0A4EAC 800A42AC 8E020000 */ lw $v0, ($s0) -/* 0A4EB0 800A42B0 000FC080 */ sll $t8, $t7, 2 -/* 0A4EB4 800A42B4 030FC023 */ subu $t8, $t8, $t7 -/* 0A4EB8 800A42B8 0018C080 */ sll $t8, $t8, 2 -/* 0A4EBC 800A42BC 844A00F8 */ lh $t2, 0xf8($v0) -/* 0A4EC0 800A42C0 030FC021 */ addu $t8, $t8, $t7 -/* 0A4EC4 800A42C4 00781821 */ addu $v1, $v1, $t8 -/* 0A4EC8 800A42C8 307900FF */ andi $t9, $v1, 0xff -/* 0A4ECC 800A42CC 314C00FF */ andi $t4, $t2, 0xff -/* 0A4ED0 800A42D0 032C082A */ slt $at, $t9, $t4 -/* 0A4ED4 800A42D4 10200012 */ beqz $at, .L800A4320 -/* 0A4ED8 800A42D8 03201825 */ move $v1, $t9 -/* 0A4EDC 800A42DC 804B00FA */ lb $t3, 0xfa($v0) -/* 0A4EE0 800A42E0 24040001 */ li $a0, 1 -/* 0A4EE4 800A42E4 256DFFFF */ addiu $t5, $t3, -1 -/* 0A4EE8 800A42E8 A04D00FA */ sb $t5, 0xfa($v0) -/* 0A4EEC 800A42EC 8E020000 */ lw $v0, ($s0) -/* 0A4EF0 800A42F0 00000000 */ nop -/* 0A4EF4 800A42F4 804E00FA */ lb $t6, 0xfa($v0) -/* 0A4EF8 800A42F8 00000000 */ nop -/* 0A4EFC 800A42FC 15C00008 */ bnez $t6, .L800A4320 -/* 0A4F00 800A4300 00000000 */ nop -/* 0A4F04 800A4304 A044039B */ sb $a0, 0x39b($v0) -/* 0A4F08 800A4308 8E180000 */ lw $t8, ($s0) -/* 0A4F0C 800A430C 240F0006 */ li $t7, 6 -/* 0A4F10 800A4310 A30F039A */ sb $t7, 0x39a($t8) -/* 0A4F14 800A4314 8E190000 */ lw $t9, ($s0) -/* 0A4F18 800A4318 00001825 */ move $v1, $zero -/* 0A4F1C 800A431C A7240398 */ sh $a0, 0x398($t9) -.L800A4320: -/* 0A4F20 800A4320 14600048 */ bnez $v1, .L800A4444 -/* 0A4F24 800A4324 00601025 */ move $v0, $v1 -/* 0A4F28 800A4328 24040001 */ li $a0, 1 -/* 0A4F2C 800A432C 0C01EFC7 */ jal func_8007BF1C -/* 0A4F30 800A4330 AFA30024 */ sw $v1, 0x24($sp) -/* 0A4F34 800A4334 0C019826 */ jal func_80066098 -/* 0A4F38 800A4338 24040001 */ li $a0, 1 -/* 0A4F3C 800A433C 8E070000 */ lw $a3, ($s0) -/* 0A4F40 800A4340 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A4F44 800A4344 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A4F48 800A4348 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A4F4C 800A434C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A4F50 800A4350 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A4F54 800A4354 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A4F58 800A4358 0C02A980 */ jal func_800AA600 -/* 0A4F5C 800A435C 24E70360 */ addiu $a3, $a3, 0x360 -/* 0A4F60 800A4360 0C019826 */ jal func_80066098 -/* 0A4F64 800A4364 00002025 */ move $a0, $zero -/* 0A4F68 800A4368 0C01EFC7 */ jal func_8007BF1C -/* 0A4F6C 800A436C 00002025 */ move $a0, $zero -/* 0A4F70 800A4370 8FAA0024 */ lw $t2, 0x24($sp) -/* 0A4F74 800A4374 8E0C0000 */ lw $t4, ($s0) -/* 0A4F78 800A4378 00000000 */ nop -/* 0A4F7C 800A437C A58A00F8 */ sh $t2, 0xf8($t4) -/* 0A4F80 800A4380 8E020000 */ lw $v0, ($s0) -/* 0A4F84 800A4384 00000000 */ nop -/* 0A4F88 800A4388 804B039B */ lb $t3, 0x39b($v0) -/* 0A4F8C 800A438C 00000000 */ nop -/* 0A4F90 800A4390 1160004D */ beqz $t3, .L800A44C8 -/* 0A4F94 800A4394 8FA9003C */ lw $t1, 0x3c($sp) -/* 0A4F98 800A4398 804D039A */ lb $t5, 0x39a($v0) -/* 0A4F9C 800A439C 8FAE0044 */ lw $t6, 0x44($sp) -/* 0A4FA0 800A43A0 24040006 */ li $a0, 6 -/* 0A4FA4 800A43A4 01AE7823 */ subu $t7, $t5, $t6 -/* 0A4FA8 800A43A8 A04F039A */ sb $t7, 0x39a($v0) -/* 0A4FAC 800A43AC 8E020000 */ lw $v0, ($s0) -/* 0A4FB0 800A43B0 00000000 */ nop -/* 0A4FB4 800A43B4 8058039A */ lb $t8, 0x39a($v0) -/* 0A4FB8 800A43B8 00000000 */ nop -/* 0A4FBC 800A43BC 07010011 */ bgez $t8, .L800A4404 -/* 0A4FC0 800A43C0 00000000 */ nop -/* 0A4FC4 800A43C4 A044039A */ sb $a0, 0x39a($v0) -/* 0A4FC8 800A43C8 8E020000 */ lw $v0, ($s0) -/* 0A4FCC 800A43CC 00000000 */ nop -/* 0A4FD0 800A43D0 84430398 */ lh $v1, 0x398($v0) -/* 0A4FD4 800A43D4 00000000 */ nop -/* 0A4FD8 800A43D8 14830009 */ bne $a0, $v1, .L800A4400 -/* 0A4FDC 800A43DC 246C0001 */ addiu $t4, $v1, 1 -/* 0A4FE0 800A43E0 A4400398 */ sh $zero, 0x398($v0) -/* 0A4FE4 800A43E4 8E020000 */ lw $v0, ($s0) -/* 0A4FE8 800A43E8 00000000 */ nop -/* 0A4FEC 800A43EC 8059039B */ lb $t9, 0x39b($v0) -/* 0A4FF0 800A43F0 00000000 */ nop -/* 0A4FF4 800A43F4 272AFFFF */ addiu $t2, $t9, -1 -/* 0A4FF8 800A43F8 10000002 */ b .L800A4404 -/* 0A4FFC 800A43FC A04A039B */ sb $t2, 0x39b($v0) -.L800A4400: -/* 0A5000 800A4400 A44C0398 */ sh $t4, 0x398($v0) -.L800A4404: -/* 0A5004 800A4404 0C019826 */ jal func_80066098 -/* 0A5008 800A4408 24040001 */ li $a0, 1 -/* 0A500C 800A440C 8E070000 */ lw $a3, ($s0) -/* 0A5010 800A4410 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A5014 800A4414 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A5018 800A4418 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A501C 800A441C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A5020 800A4420 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A5024 800A4424 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A5028 800A4428 0C02A980 */ jal func_800AA600 -/* 0A502C 800A442C 24E70380 */ addiu $a3, $a3, 0x380 -/* 0A5030 800A4430 0C019826 */ jal func_80066098 -/* 0A5034 800A4434 00002025 */ move $a0, $zero -/* 0A5038 800A4438 8E020000 */ lw $v0, ($s0) -/* 0A503C 800A443C 10000022 */ b .L800A44C8 -/* 0A5040 800A4440 8FA9003C */ lw $t1, 0x3c($sp) -.L800A4444: -/* 0A5044 800A4444 8E0D0000 */ lw $t5, ($s0) -/* 0A5048 800A4448 244B0080 */ addiu $t3, $v0, 0x80 -/* 0A504C 800A444C 00002025 */ move $a0, $zero -/* 0A5050 800A4450 0C01A142 */ jal func_80068508 -/* 0A5054 800A4454 A5AB00F8 */ sh $t3, 0xf8($t5) -/* 0A5058 800A4458 0C01EFC7 */ jal func_8007BF1C -/* 0A505C 800A445C 24040001 */ li $a0, 1 -/* 0A5060 800A4460 0C019826 */ jal func_80066098 -/* 0A5064 800A4464 24040001 */ li $a0, 1 -/* 0A5068 800A4468 8E070000 */ lw $a3, ($s0) -/* 0A506C 800A446C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A5070 800A4470 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A5074 800A4474 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A5078 800A4478 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A507C 800A447C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A5080 800A4480 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A5084 800A4484 0C02A980 */ jal func_800AA600 -/* 0A5088 800A4488 24E700E0 */ addiu $a3, $a3, 0xe0 -/* 0A508C 800A448C 0C01EFC7 */ jal func_8007BF1C -/* 0A5090 800A4490 00002025 */ move $a0, $zero -/* 0A5094 800A4494 0C019826 */ jal func_80066098 -/* 0A5098 800A4498 00002025 */ move $a0, $zero -/* 0A509C 800A449C 0C01A142 */ jal func_80068508 -/* 0A50A0 800A44A0 24040001 */ li $a0, 1 -/* 0A50A4 800A44A4 8E020000 */ lw $v0, ($s0) -/* 0A50A8 800A44A8 00000000 */ nop -/* 0A50AC 800A44AC 844E00F8 */ lh $t6, 0xf8($v0) -/* 0A50B0 800A44B0 00000000 */ nop -/* 0A50B4 800A44B4 25CFFF80 */ addiu $t7, $t6, -0x80 -/* 0A50B8 800A44B8 A44F00F8 */ sh $t7, 0xf8($v0) -/* 0A50BC 800A44BC 8E020000 */ lw $v0, ($s0) -/* 0A50C0 800A44C0 00000000 */ nop -/* 0A50C4 800A44C4 8FA9003C */ lw $t1, 0x3c($sp) -.L800A44C8: -/* 0A50C8 800A44C8 2408000A */ li $t0, 10 -/* 0A50CC 800A44CC 0128001A */ div $zero, $t1, $t0 -/* 0A50D0 800A44D0 15000002 */ bnez $t0, .L800A44DC -/* 0A50D4 800A44D4 00000000 */ nop -/* 0A50D8 800A44D8 0007000D */ break 7 -.L800A44DC: -/* 0A50DC 800A44DC 2401FFFF */ li $at, -1 -/* 0A50E0 800A44E0 15010004 */ bne $t0, $at, .L800A44F4 -/* 0A50E4 800A44E4 3C018000 */ lui $at, 0x8000 -/* 0A50E8 800A44E8 15210002 */ bne $t1, $at, .L800A44F4 -/* 0A50EC 800A44EC 00000000 */ nop -/* 0A50F0 800A44F0 0006000D */ break 6 -.L800A44F4: -/* 0A50F4 800A44F4 00001812 */ mflo $v1 -/* 0A50F8 800A44F8 1060001A */ beqz $v1, .L800A4564 -/* 0A50FC 800A44FC 00000000 */ nop -/* 0A5100 800A4500 0128001A */ div $zero, $t1, $t0 -/* 0A5104 800A4504 A4430118 */ sh $v1, 0x118($v0) -/* 0A5108 800A4508 8E190000 */ lw $t9, ($s0) -/* 0A510C 800A450C 15000002 */ bnez $t0, .L800A4518 -/* 0A5110 800A4510 00000000 */ nop -/* 0A5114 800A4514 0007000D */ break 7 -.L800A4518: -/* 0A5118 800A4518 2401FFFF */ li $at, -1 -/* 0A511C 800A451C 15010004 */ bne $t0, $at, .L800A4530 -/* 0A5120 800A4520 3C018000 */ lui $at, 0x8000 -/* 0A5124 800A4524 15210002 */ bne $t1, $at, .L800A4530 -/* 0A5128 800A4528 00000000 */ nop -/* 0A512C 800A452C 0006000D */ break 6 -.L800A4530: -/* 0A5130 800A4530 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A5134 800A4534 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A5138 800A4538 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A513C 800A453C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A5140 800A4540 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A5144 800A4544 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A5148 800A4548 0000C010 */ mfhi $t8 -/* 0A514C 800A454C A7380138 */ sh $t8, 0x138($t9) -/* 0A5150 800A4550 8E070000 */ lw $a3, ($s0) -/* 0A5154 800A4554 0C02A980 */ jal func_800AA600 -/* 0A5158 800A4558 24E70120 */ addiu $a3, $a3, 0x120 -/* 0A515C 800A455C 1000000F */ b .L800A459C -/* 0A5160 800A4560 8E070000 */ lw $a3, ($s0) -.L800A4564: -/* 0A5164 800A4564 0128001A */ div $zero, $t1, $t0 -/* 0A5168 800A4568 15000002 */ bnez $t0, .L800A4574 -/* 0A516C 800A456C 00000000 */ nop -/* 0A5170 800A4570 0007000D */ break 7 -.L800A4574: -/* 0A5174 800A4574 2401FFFF */ li $at, -1 -/* 0A5178 800A4578 15010004 */ bne $t0, $at, .L800A458C -/* 0A517C 800A457C 3C018000 */ lui $at, 0x8000 -/* 0A5180 800A4580 15210002 */ bne $t1, $at, .L800A458C -/* 0A5184 800A4584 00000000 */ nop -/* 0A5188 800A4588 0006000D */ break 6 -.L800A458C: -/* 0A518C 800A458C 00005010 */ mfhi $t2 -/* 0A5190 800A4590 A44A0118 */ sh $t2, 0x118($v0) -/* 0A5194 800A4594 00000000 */ nop -/* 0A5198 800A4598 8E070000 */ lw $a3, ($s0) -.L800A459C: -/* 0A519C 800A459C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A51A0 800A45A0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A51A4 800A45A4 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A51A8 800A45A8 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A51AC 800A45AC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A51B0 800A45B0 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A51B4 800A45B4 0C02A980 */ jal func_800AA600 -/* 0A51B8 800A45B8 24E70100 */ addiu $a3, $a3, 0x100 -/* 0A51BC 800A45BC 3C038012 */ lui $v1, %hi(D_80126CFC) # $v1, 0x8012 -/* 0A51C0 800A45C0 8C636CFC */ lw $v1, %lo(D_80126CFC)($v1) -/* 0A51C4 800A45C4 3C018012 */ lui $at, %hi(D_80126CFC) # $at, 0x8012 -/* 0A51C8 800A45C8 246C0008 */ addiu $t4, $v1, 8 -/* 0A51CC 800A45CC AC2C6CFC */ sw $t4, %lo(D_80126CFC)($at) -/* 0A51D0 800A45D0 3C0BFA00 */ lui $t3, 0xfa00 -/* 0A51D4 800A45D4 240DFFFF */ li $t5, -1 -/* 0A51D8 800A45D8 AC6D0004 */ sw $t5, 4($v1) -/* 0A51DC 800A45DC AC6B0000 */ sw $t3, ($v1) -.L800A45E0: -/* 0A51E0 800A45E0 8FBF001C */ lw $ra, 0x1c($sp) -.L800A45E4: -/* 0A51E4 800A45E4 8FB00018 */ lw $s0, 0x18($sp) -/* 0A51E8 800A45E8 03E00008 */ jr $ra -/* 0A51EC 800A45EC 27BD0040 */ addiu $sp, $sp, 0x40 - -glabel func_800A45F0 -/* 0A51F0 800A45F0 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 0A51F4 800A45F4 AFB7003C */ sw $s7, 0x3c($sp) -/* 0A51F8 800A45F8 444EF800 */ cfc1 $t6, $31 -/* 0A51FC 800A45FC 3C178012 */ lui $s7, %hi(D_80126CDC) # $s7, 0x8012 -/* 0A5200 800A4600 26F76CDC */ addiu $s7, %lo(D_80126CDC) # addiu $s7, $s7, 0x6cdc -/* 0A5204 800A4604 AFB10024 */ sw $s1, 0x24($sp) -/* 0A5208 800A4608 8EF10000 */ lw $s1, ($s7) -/* 0A520C 800A460C 35C10003 */ ori $at, $t6, 3 -/* 0A5210 800A4610 AFBF0044 */ sw $ra, 0x44($sp) -/* 0A5214 800A4614 AFBE0040 */ sw $fp, 0x40($sp) -/* 0A5218 800A4618 AFB60038 */ sw $s6, 0x38($sp) -/* 0A521C 800A461C AFB50034 */ sw $s5, 0x34($sp) -/* 0A5220 800A4620 AFB40030 */ sw $s4, 0x30($sp) -/* 0A5224 800A4624 AFB3002C */ sw $s3, 0x2c($sp) -/* 0A5228 800A4628 AFB20028 */ sw $s2, 0x28($sp) -/* 0A522C 800A462C AFB00020 */ sw $s0, 0x20($sp) -/* 0A5230 800A4630 E7B50018 */ swc1 $f21, 0x18($sp) -/* 0A5234 800A4634 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 0A5238 800A4638 38210002 */ xori $at, $at, 2 -/* 0A523C 800A463C 44C1F800 */ ctc1 $at, $31 -/* 0A5240 800A4640 C6240410 */ lwc1 $f4, 0x410($s1) -/* 0A5244 800A4644 3C028012 */ lui $v0, %hi(D_80126D37) # $v0, 0x8012 -/* 0A5248 800A4648 460021A4 */ cvt.w.s $f6, $f4 -/* 0A524C 800A464C 90426D37 */ lbu $v0, %lo(D_80126D37)($v0) -/* 0A5250 800A4650 440F3000 */ mfc1 $t7, $f6 -/* 0A5254 800A4654 44CEF800 */ ctc1 $t6, $31 -/* 0A5258 800A4658 28410003 */ slti $at, $v0, 3 -/* 0A525C 800A465C 0080B025 */ move $s6, $a0 -/* 0A5260 800A4660 14200008 */ bnez $at, .L800A4684 -/* 0A5264 800A4664 AFAF0048 */ sw $t7, 0x48($sp) -/* 0A5268 800A4668 24010003 */ li $at, 3 -/* 0A526C 800A466C 14410017 */ bne $v0, $at, .L800A46CC -/* 0A5270 800A4670 3C014040 */ lui $at, 0x4040 -/* 0A5274 800A4674 84980000 */ lh $t8, ($a0) -/* 0A5278 800A4678 2401FFFF */ li $at, -1 -/* 0A527C 800A467C 17010013 */ bne $t8, $at, .L800A46CC -/* 0A5280 800A4680 3C014040 */ lui $at, 0x4040 -.L800A4684: -/* 0A5284 800A4684 82D90003 */ lb $t9, 3($s6) -/* 0A5288 800A4688 3C128012 */ lui $s2, %hi(D_80126CD5) # $s2, 0x8012 -/* 0A528C 800A468C 27280038 */ addiu $t0, $t9, 0x38 -/* 0A5290 800A4690 A6280646 */ sh $t0, 0x646($s1) -/* 0A5294 800A4694 8EE70000 */ lw $a3, ($s7) -/* 0A5298 800A4698 26526CD5 */ addiu $s2, %lo(D_80126CD5) # addiu $s2, $s2, 0x6cd5 -/* 0A529C 800A469C 241E0001 */ li $fp, 1 -/* 0A52A0 800A46A0 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A52A4 800A46A4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A52A8 800A46A8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A52AC 800A46AC A25E0000 */ sb $fp, ($s2) -/* 0A52B0 800A46B0 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A52B4 800A46B4 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A52B8 800A46B8 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A52BC 800A46BC 0C02A980 */ jal func_800AA600 -/* 0A52C0 800A46C0 24E70640 */ addiu $a3, $a3, 0x640 -/* 0A52C4 800A46C4 A2400000 */ sb $zero, ($s2) -/* 0A52C8 800A46C8 3C014040 */ li $at, 0x40400000 # 3.000000 -.L800A46CC: -/* 0A52CC 800A46CC 3C128012 */ lui $s2, %hi(D_80126CD5) # $s2, 0x8012 -/* 0A52D0 800A46D0 3C15800E */ lui $s5, %hi(D_800E2834) # $s5, 0x800e -/* 0A52D4 800A46D4 3C138080 */ lui $s3, (0x80808080 >> 16) # lui $s3, 0x8080 -/* 0A52D8 800A46D8 4481A000 */ mtc1 $at, $f20 -/* 0A52DC 800A46DC 26526CD5 */ addiu $s2, %lo(D_80126CD5) # addiu $s2, $s2, 0x6cd5 -/* 0A52E0 800A46E0 241E0001 */ li $fp, 1 -/* 0A52E4 800A46E4 36738080 */ ori $s3, (0x80808080 & 0xFFFF) # ori $s3, $s3, 0x8080 -/* 0A52E8 800A46E8 26B52834 */ addiu $s5, %lo(D_800E2834) # addiu $s5, $s5, 0x2834 -/* 0A52EC 800A46EC 00008025 */ move $s0, $zero -/* 0A52F0 800A46F0 2414000A */ li $s4, 10 -.L800A46F4: -/* 0A52F4 800A46F4 82C90193 */ lb $t1, 0x193($s6) -/* 0A52F8 800A46F8 8EF10000 */ lw $s1, ($s7) -/* 0A52FC 800A46FC 0209082A */ slt $at, $s0, $t1 -/* 0A5300 800A4700 14200002 */ bnez $at, .L800A470C -/* 0A5304 800A4704 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A5308 800A4708 AEB30000 */ sw $s3, ($s5) -.L800A470C: -/* 0A530C 800A470C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A5310 800A4710 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A5314 800A4714 A25E0000 */ sb $fp, ($s2) -/* 0A5318 800A4718 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A531C 800A471C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A5320 800A4720 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A5324 800A4724 0C02A980 */ jal func_800AA600 -/* 0A5328 800A4728 26270400 */ addiu $a3, $s1, 0x400 -/* 0A532C 800A472C 8EF10000 */ lw $s1, ($s7) -/* 0A5330 800A4730 A2400000 */ sb $zero, ($s2) -/* 0A5334 800A4734 C6280410 */ lwc1 $f8, 0x410($s1) -/* 0A5338 800A4738 26100001 */ addiu $s0, $s0, 1 -/* 0A533C 800A473C 46144281 */ sub.s $f10, $f8, $f20 -/* 0A5340 800A4740 1614FFEC */ bne $s0, $s4, .L800A46F4 -/* 0A5344 800A4744 E62A0410 */ swc1 $f10, 0x410($s1) -/* 0A5348 800A4748 8FAA0048 */ lw $t2, 0x48($sp) -/* 0A534C 800A474C 8EEB0000 */ lw $t3, ($s7) -/* 0A5350 800A4750 448A8000 */ mtc1 $t2, $f16 -/* 0A5354 800A4754 240CFFFE */ li $t4, -2 -/* 0A5358 800A4758 468084A0 */ cvt.s.w $f18, $f16 -/* 0A535C 800A475C E5720410 */ swc1 $f18, 0x410($t3) -/* 0A5360 800A4760 8FBF0044 */ lw $ra, 0x44($sp) -/* 0A5364 800A4764 AEAC0000 */ sw $t4, ($s5) -/* 0A5368 800A4768 A2400000 */ sb $zero, ($s2) -/* 0A536C 800A476C 8FB20028 */ lw $s2, 0x28($sp) -/* 0A5370 800A4770 8FB50034 */ lw $s5, 0x34($sp) -/* 0A5374 800A4774 8FBE0040 */ lw $fp, 0x40($sp) -/* 0A5378 800A4778 8FB7003C */ lw $s7, 0x3c($sp) -/* 0A537C 800A477C 8FB60038 */ lw $s6, 0x38($sp) -/* 0A5380 800A4780 8FB40030 */ lw $s4, 0x30($sp) -/* 0A5384 800A4784 8FB3002C */ lw $s3, 0x2c($sp) -/* 0A5388 800A4788 8FB10024 */ lw $s1, 0x24($sp) -/* 0A538C 800A478C 8FB00020 */ lw $s0, 0x20($sp) -/* 0A5390 800A4790 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 0A5394 800A4794 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 0A5398 800A4798 03E00008 */ jr $ra -/* 0A539C 800A479C 27BD0050 */ addiu $sp, $sp, 0x50 - -glabel func_800A47A0 -/* 0A53A0 800A47A0 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 0A53A4 800A47A4 AFBE0038 */ sw $fp, 0x38($sp) -/* 0A53A8 800A47A8 444EF800 */ cfc1 $t6, $31 -/* 0A53AC 800A47AC 3C1E8012 */ lui $fp, %hi(D_80126CDC) # $fp, 0x8012 -/* 0A53B0 800A47B0 27DE6CDC */ addiu $fp, %lo(D_80126CDC) # addiu $fp, $fp, 0x6cdc -/* 0A53B4 800A47B4 AFB1001C */ sw $s1, 0x1c($sp) -/* 0A53B8 800A47B8 8FD10000 */ lw $s1, ($fp) -/* 0A53BC 800A47BC 35C10003 */ ori $at, $t6, 3 -/* 0A53C0 800A47C0 AFBF003C */ sw $ra, 0x3c($sp) -/* 0A53C4 800A47C4 AFB70034 */ sw $s7, 0x34($sp) -/* 0A53C8 800A47C8 AFB60030 */ sw $s6, 0x30($sp) -/* 0A53CC 800A47CC AFB5002C */ sw $s5, 0x2c($sp) -/* 0A53D0 800A47D0 AFB40028 */ sw $s4, 0x28($sp) -/* 0A53D4 800A47D4 AFB30024 */ sw $s3, 0x24($sp) -/* 0A53D8 800A47D8 AFB20020 */ sw $s2, 0x20($sp) -/* 0A53DC 800A47DC AFB00018 */ sw $s0, 0x18($sp) -/* 0A53E0 800A47E0 AFA5004C */ sw $a1, 0x4c($sp) -/* 0A53E4 800A47E4 38210002 */ xori $at, $at, 2 -/* 0A53E8 800A47E8 44C1F800 */ ctc1 $at, $31 -/* 0A53EC 800A47EC C62405D0 */ lwc1 $f4, 0x5d0($s1) -/* 0A53F0 800A47F0 3C128080 */ lui $s2, (0x80808080 >> 16) # lui $s2, 0x8080 -/* 0A53F4 800A47F4 460021A4 */ cvt.w.s $f6, $f4 -/* 0A53F8 800A47F8 3C138012 */ lui $s3, %hi(D_80126CFC) # $s3, 0x8012 -/* 0A53FC 800A47FC 440F3000 */ mfc1 $t7, $f6 -/* 0A5400 800A4800 44CEF800 */ ctc1 $t6, $31 -/* 0A5404 800A4804 448F4000 */ mtc1 $t7, $f8 -/* 0A5408 800A4808 3C148012 */ lui $s4, %hi(D_80126D00) # $s4, 0x8012 -/* 0A540C 800A480C 468042A0 */ cvt.s.w $f10, $f8 -/* 0A5410 800A4810 3C158012 */ lui $s5, %hi(D_80126D04) # $s5, 0x8012 -/* 0A5414 800A4814 0080B025 */ move $s6, $a0 -/* 0A5418 800A4818 4459F800 */ cfc1 $t9, $31 -/* 0A541C 800A481C E62A05D0 */ swc1 $f10, 0x5d0($s1) -/* 0A5420 800A4820 8FD80000 */ lw $t8, ($fp) -/* 0A5424 800A4824 37210003 */ ori $at, $t9, 3 -/* 0A5428 800A4828 38210002 */ xori $at, $at, 2 -/* 0A542C 800A482C 44C1F800 */ ctc1 $at, $31 -/* 0A5430 800A4830 C71005D0 */ lwc1 $f16, 0x5d0($t8) -/* 0A5434 800A4834 26B56D04 */ addiu $s5, %lo(D_80126D04) # addiu $s5, $s5, 0x6d04 -/* 0A5438 800A4838 460084A4 */ cvt.w.s $f18, $f16 -/* 0A543C 800A483C 26946D00 */ addiu $s4, %lo(D_80126D00) # addiu $s4, $s4, 0x6d00 -/* 0A5440 800A4840 44089000 */ mfc1 $t0, $f18 -/* 0A5444 800A4844 44D9F800 */ ctc1 $t9, $31 -/* 0A5448 800A4848 26736CFC */ addiu $s3, %lo(D_80126CFC) # addiu $s3, $s3, 0x6cfc -/* 0A544C 800A484C 36528080 */ ori $s2, (0x80808080 & 0xFFFF) # ori $s2, $s2, 0x8080 -/* 0A5450 800A4850 00008025 */ move $s0, $zero -/* 0A5454 800A4854 24170008 */ li $s7, 8 -/* 0A5458 800A4858 AFA80040 */ sw $t0, 0x40($sp) -.L800A485C: -/* 0A545C 800A485C 82C90202 */ lb $t1, 0x202($s6) -/* 0A5460 800A4860 8FD10000 */ lw $s1, ($fp) -/* 0A5464 800A4864 0209082A */ slt $at, $s0, $t1 -/* 0A5468 800A4868 14200003 */ bnez $at, .L800A4878 -/* 0A546C 800A486C 02602025 */ move $a0, $s3 -/* 0A5470 800A4870 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e -/* 0A5474 800A4874 AC322834 */ sw $s2, %lo(D_800E2834)($at) -.L800A4878: -/* 0A5478 800A4878 02802825 */ move $a1, $s4 -/* 0A547C 800A487C 02A03025 */ move $a2, $s5 -/* 0A5480 800A4880 0C02A980 */ jal func_800AA600 -/* 0A5484 800A4884 262705C0 */ addiu $a3, $s1, 0x5c0 -/* 0A5488 800A4888 8FD10000 */ lw $s1, ($fp) -/* 0A548C 800A488C 26100001 */ addiu $s0, $s0, 1 -/* 0A5490 800A4890 822A05DC */ lb $t2, 0x5dc($s1) -/* 0A5494 800A4894 C62405D0 */ lwc1 $f4, 0x5d0($s1) -/* 0A5498 800A4898 448A3000 */ mtc1 $t2, $f6 -/* 0A549C 800A489C 00000000 */ nop -/* 0A54A0 800A48A0 46803220 */ cvt.s.w $f8, $f6 -/* 0A54A4 800A48A4 46082281 */ sub.s $f10, $f4, $f8 -/* 0A54A8 800A48A8 1617FFEC */ bne $s0, $s7, .L800A485C -/* 0A54AC 800A48AC E62A05D0 */ swc1 $f10, 0x5d0($s1) -/* 0A54B0 800A48B0 82CB0202 */ lb $t3, 0x202($s6) -/* 0A54B4 800A48B4 00000000 */ nop -/* 0A54B8 800A48B8 16EB001D */ bne $s7, $t3, .L800A4930 -/* 0A54BC 800A48BC 8FA80040 */ lw $t0, 0x40($sp) -/* 0A54C0 800A48C0 8FD10000 */ lw $s1, ($fp) -/* 0A54C4 800A48C4 8FAC004C */ lw $t4, 0x4c($sp) -/* 0A54C8 800A48C8 822205DB */ lb $v0, 0x5db($s1) -/* 0A54CC 800A48CC 00000000 */ nop -/* 0A54D0 800A48D0 2841001E */ slti $at, $v0, 0x1e -/* 0A54D4 800A48D4 10200004 */ beqz $at, .L800A48E8 -/* 0A54D8 800A48D8 004C6821 */ addu $t5, $v0, $t4 -/* 0A54DC 800A48DC A22D05DB */ sb $t5, 0x5db($s1) -/* 0A54E0 800A48E0 8FD10000 */ lw $s1, ($fp) -/* 0A54E4 800A48E4 00000000 */ nop -.L800A48E8: -/* 0A54E8 800A48E8 822E05DA */ lb $t6, 0x5da($s1) -/* 0A54EC 800A48EC 00000000 */ nop -/* 0A54F0 800A48F0 15C0000F */ bnez $t6, .L800A4930 -/* 0A54F4 800A48F4 8FA80040 */ lw $t0, 0x40($sp) -/* 0A54F8 800A48F8 822F05DB */ lb $t7, 0x5db($s1) -/* 0A54FC 800A48FC 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A5500 800A4900 29E1001E */ slti $at, $t7, 0x1e -/* 0A5504 800A4904 14200009 */ bnez $at, .L800A492C -/* 0A5508 800A4908 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -/* 0A550C 800A490C 24180001 */ li $t8, 1 -/* 0A5510 800A4910 A23805DA */ sb $t8, 0x5da($s1) -/* 0A5514 800A4914 8CB90000 */ lw $t9, ($a1) -/* 0A5518 800A4918 00000000 */ nop -/* 0A551C 800A491C 17200004 */ bnez $t9, .L800A4930 -/* 0A5520 800A4920 8FA80040 */ lw $t0, 0x40($sp) -/* 0A5524 800A4924 0C000741 */ jal func_80001D04 -/* 0A5528 800A4928 24040147 */ li $a0, 327 -.L800A492C: -/* 0A552C 800A492C 8FA80040 */ lw $t0, 0x40($sp) -.L800A4930: -/* 0A5530 800A4930 8FC90000 */ lw $t1, ($fp) -/* 0A5534 800A4934 44888000 */ mtc1 $t0, $f16 -/* 0A5538 800A4938 240AFFFE */ li $t2, -2 -/* 0A553C 800A493C 468084A0 */ cvt.s.w $f18, $f16 -/* 0A5540 800A4940 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e -/* 0A5544 800A4944 E53205D0 */ swc1 $f18, 0x5d0($t1) -/* 0A5548 800A4948 8FBF003C */ lw $ra, 0x3c($sp) -/* 0A554C 800A494C 8FBE0038 */ lw $fp, 0x38($sp) -/* 0A5550 800A4950 8FB70034 */ lw $s7, 0x34($sp) -/* 0A5554 800A4954 8FB60030 */ lw $s6, 0x30($sp) -/* 0A5558 800A4958 8FB5002C */ lw $s5, 0x2c($sp) -/* 0A555C 800A495C 8FB40028 */ lw $s4, 0x28($sp) -/* 0A5560 800A4960 8FB30024 */ lw $s3, 0x24($sp) -/* 0A5564 800A4964 8FB20020 */ lw $s2, 0x20($sp) -/* 0A5568 800A4968 8FB1001C */ lw $s1, 0x1c($sp) -/* 0A556C 800A496C 8FB00018 */ lw $s0, 0x18($sp) -/* 0A5570 800A4970 AC2A2834 */ sw $t2, %lo(D_800E2834)($at) -/* 0A5574 800A4974 03E00008 */ jr $ra -/* 0A5578 800A4978 27BD0048 */ addiu $sp, $sp, 0x48 - -glabel func_800A497C -/* 0A557C 800A497C 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0A5580 800A4980 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 -/* 0A5584 800A4984 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) -/* 0A5588 800A4988 AFBF001C */ sw $ra, 0x1c($sp) -/* 0A558C 800A498C AFB00018 */ sw $s0, 0x18($sp) -/* 0A5590 800A4990 AFA40030 */ sw $a0, 0x30($sp) -/* 0A5594 800A4994 A3A00027 */ sb $zero, 0x27($sp) -/* 0A5598 800A4998 24470700 */ addiu $a3, $v0, 0x700 -/* 0A559C 800A499C 80E3001A */ lb $v1, 0x1a($a3) -/* 0A55A0 800A49A0 24040018 */ li $a0, 24 -/* 0A55A4 800A49A4 1060000B */ beqz $v1, .L800A49D4 -/* 0A55A8 800A49A8 24500740 */ addiu $s0, $v0, 0x740 -/* 0A55AC 800A49AC 24010001 */ li $at, 1 -/* 0A55B0 800A49B0 1061001F */ beq $v1, $at, .L800A4A30 -/* 0A55B4 800A49B4 24020002 */ li $v0, 2 -/* 0A55B8 800A49B8 1062005F */ beq $v1, $v0, .L800A4B38 -/* 0A55BC 800A49BC 00055880 */ sll $t3, $a1, 2 -/* 0A55C0 800A49C0 24020003 */ li $v0, 3 -/* 0A55C4 800A49C4 10620074 */ beq $v1, $v0, .L800A4B98 -/* 0A55C8 800A49C8 00000000 */ nop -/* 0A55CC 800A49CC 10000074 */ b .L800A4BA0 -/* 0A55D0 800A49D0 83AD0027 */ lb $t5, 0x27($sp) -.L800A49D4: -/* 0A55D4 800A49D4 0C0002F8 */ jal func_80000BE0 -/* 0A55D8 800A49D8 AFA7002C */ sw $a3, 0x2c($sp) -/* 0A55DC 800A49DC 0C0002CD */ jal func_80000B34 -/* 0A55E0 800A49E0 24040019 */ li $a0, 25 -/* 0A55E4 800A49E4 24040016 */ li $a0, 22 -/* 0A55E8 800A49E8 0C000741 */ jal func_80001D04 -/* 0A55EC 800A49EC 00002825 */ move $a1, $zero -/* 0A55F0 800A49F0 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A55F4 800A49F4 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -/* 0A55F8 800A49F8 0C000741 */ jal func_80001D04 -/* 0A55FC 800A49FC 24040102 */ li $a0, 258 -/* 0A5600 800A4A00 3C02800E */ lui $v0, %hi(D_800E2770) # $v0, 0x800e -/* 0A5604 800A4A04 24422770 */ addiu $v0, %lo(D_800E2770) # addiu $v0, $v0, 0x2770 -/* 0A5608 800A4A08 8FAF0030 */ lw $t7, 0x30($sp) -/* 0A560C 800A4A0C 240E007F */ li $t6, 127 -/* 0A5610 800A4A10 A04E0002 */ sb $t6, 2($v0) -/* 0A5614 800A4A14 A0400003 */ sb $zero, 3($v0) -/* 0A5618 800A4A18 85F80000 */ lh $t8, ($t7) -/* 0A561C 800A4A1C 8FA7002C */ lw $a3, 0x2c($sp) -/* 0A5620 800A4A20 24190001 */ li $t9, 1 -/* 0A5624 800A4A24 A058000C */ sb $t8, 0xc($v0) -/* 0A5628 800A4A28 1000005C */ b .L800A4B9C -/* 0A562C 800A4A2C A0F9001A */ sb $t9, 0x1a($a3) -.L800A4A30: -/* 0A5630 800A4A30 00054080 */ sll $t0, $a1, 2 -/* 0A5634 800A4A34 01054023 */ subu $t0, $t0, $a1 -/* 0A5638 800A4A38 00084080 */ sll $t0, $t0, 2 -/* 0A563C 800A4A3C 01054021 */ addu $t0, $t0, $a1 -/* 0A5640 800A4A40 44882000 */ mtc1 $t0, $f4 -/* 0A5644 800A4A44 C4E6000C */ lwc1 $f6, 0xc($a3) -/* 0A5648 800A4A48 46802020 */ cvt.s.w $f0, $f4 -/* 0A564C 800A4A4C 3C01C1B8 */ li $at, 0xC1B80000 # -23.000000 -/* 0A5650 800A4A50 44811000 */ mtc1 $at, $f2 -/* 0A5654 800A4A54 46003200 */ add.s $f8, $f6, $f0 -/* 0A5658 800A4A58 E4E8000C */ swc1 $f8, 0xc($a3) -/* 0A565C 800A4A5C C4EA000C */ lwc1 $f10, 0xc($a3) -/* 0A5660 800A4A60 00000000 */ nop -/* 0A5664 800A4A64 460A103C */ c.lt.s $f2, $f10 -/* 0A5668 800A4A68 00000000 */ nop -/* 0A566C 800A4A6C 45000002 */ bc1f .L800A4A78 -/* 0A5670 800A4A70 00000000 */ nop -/* 0A5674 800A4A74 E4E2000C */ swc1 $f2, 0xc($a3) -.L800A4A78: -/* 0A5678 800A4A78 C610000C */ lwc1 $f16, 0xc($s0) -/* 0A567C 800A4A7C 3C0141B0 */ li $at, 0x41B00000 # 22.000000 -/* 0A5680 800A4A80 46008481 */ sub.s $f18, $f16, $f0 -/* 0A5684 800A4A84 44816000 */ mtc1 $at, $f12 -/* 0A5688 800A4A88 E612000C */ swc1 $f18, 0xc($s0) -/* 0A568C 800A4A8C C602000C */ lwc1 $f2, 0xc($s0) -/* 0A5690 800A4A90 00000000 */ nop -/* 0A5694 800A4A94 460C103C */ c.lt.s $f2, $f12 -/* 0A5698 800A4A98 00000000 */ nop -/* 0A569C 800A4A9C 45000004 */ bc1f .L800A4AB0 -/* 0A56A0 800A4AA0 00000000 */ nop -/* 0A56A4 800A4AA4 E60C000C */ swc1 $f12, 0xc($s0) -/* 0A56A8 800A4AA8 C602000C */ lwc1 $f2, 0xc($s0) -/* 0A56AC 800A4AAC 00000000 */ nop -.L800A4AB0: -/* 0A56B0 800A4AB0 46026032 */ c.eq.s $f12, $f2 -/* 0A56B4 800A4AB4 24090001 */ li $t1, 1 -/* 0A56B8 800A4AB8 45000038 */ bc1f .L800A4B9C -/* 0A56BC 800A4ABC A3A90027 */ sb $t1, 0x27($sp) -/* 0A56C0 800A4AC0 80EA001B */ lb $t2, 0x1b($a3) -/* 0A56C4 800A4AC4 240DFF88 */ li $t5, -120 -/* 0A56C8 800A4AC8 01455821 */ addu $t3, $t2, $a1 -/* 0A56CC 800A4ACC A0EB001B */ sb $t3, 0x1b($a3) -/* 0A56D0 800A4AD0 80EC001B */ lb $t4, 0x1b($a3) -/* 0A56D4 800A4AD4 00002825 */ move $a1, $zero -/* 0A56D8 800A4AD8 29810078 */ slti $at, $t4, 0x78 -/* 0A56DC 800A4ADC 14200005 */ bnez $at, .L800A4AF4 -/* 0A56E0 800A4AE0 24040016 */ li $a0, 22 -/* 0A56E4 800A4AE4 80EE001C */ lb $t6, 0x1c($a3) -/* 0A56E8 800A4AE8 A0ED001B */ sb $t5, 0x1b($a3) -/* 0A56EC 800A4AEC 25CF0001 */ addiu $t7, $t6, 1 -/* 0A56F0 800A4AF0 A0EF001C */ sb $t7, 0x1c($a3) -.L800A4AF4: -/* 0A56F4 800A4AF4 80F8001C */ lb $t8, 0x1c($a3) -/* 0A56F8 800A4AF8 24020002 */ li $v0, 2 -/* 0A56FC 800A4AFC 14580028 */ bne $v0, $t8, .L800A4BA0 -/* 0A5700 800A4B00 83AD0027 */ lb $t5, 0x27($sp) -/* 0A5704 800A4B04 A0E2001A */ sb $v0, 0x1a($a3) -/* 0A5708 800A4B08 0C000741 */ jal func_80001D04 -/* 0A570C 800A4B0C AFA7002C */ sw $a3, 0x2c($sp) -/* 0A5710 800A4B10 8FB90030 */ lw $t9, 0x30($sp) -/* 0A5714 800A4B14 3C02800E */ lui $v0, %hi(D_800E2770) # $v0, 0x800e -/* 0A5718 800A4B18 24422770 */ addiu $v0, %lo(D_800E2770) # addiu $v0, $v0, 0x2770 -/* 0A571C 800A4B1C 8049000C */ lb $t1, 0xc($v0) -/* 0A5720 800A4B20 87280000 */ lh $t0, ($t9) -/* 0A5724 800A4B24 8FA7002C */ lw $a3, 0x2c($sp) -/* 0A5728 800A4B28 1509001C */ bne $t0, $t1, .L800A4B9C -/* 0A572C 800A4B2C 240AFFFF */ li $t2, -1 -/* 0A5730 800A4B30 1000001A */ b .L800A4B9C -/* 0A5734 800A4B34 A04A0003 */ sb $t2, 3($v0) -.L800A4B38: -/* 0A5738 800A4B38 01655823 */ subu $t3, $t3, $a1 -/* 0A573C 800A4B3C 000B5880 */ sll $t3, $t3, 2 -/* 0A5740 800A4B40 01655821 */ addu $t3, $t3, $a1 -/* 0A5744 800A4B44 448B2000 */ mtc1 $t3, $f4 -/* 0A5748 800A4B48 C4E6000C */ lwc1 $f6, 0xc($a3) -/* 0A574C 800A4B4C 46802020 */ cvt.s.w $f0, $f4 -/* 0A5750 800A4B50 240C0001 */ li $t4, 1 -/* 0A5754 800A4B54 3C014348 */ li $at, 0x43480000 # 200.000000 -/* 0A5758 800A4B58 46003200 */ add.s $f8, $f6, $f0 -/* 0A575C 800A4B5C 44819000 */ mtc1 $at, $f18 -/* 0A5760 800A4B60 E4E8000C */ swc1 $f8, 0xc($a3) -/* 0A5764 800A4B64 C60A000C */ lwc1 $f10, 0xc($s0) -/* 0A5768 800A4B68 24020003 */ li $v0, 3 -/* 0A576C 800A4B6C 46005400 */ add.s $f16, $f10, $f0 -/* 0A5770 800A4B70 E610000C */ swc1 $f16, 0xc($s0) -/* 0A5774 800A4B74 A3AC0027 */ sb $t4, 0x27($sp) -/* 0A5778 800A4B78 C4E4000C */ lwc1 $f4, 0xc($a3) -/* 0A577C 800A4B7C 00000000 */ nop -/* 0A5780 800A4B80 4604903C */ c.lt.s $f18, $f4 -/* 0A5784 800A4B84 00000000 */ nop -/* 0A5788 800A4B88 45000005 */ bc1f .L800A4BA0 -/* 0A578C 800A4B8C 83AD0027 */ lb $t5, 0x27($sp) -/* 0A5790 800A4B90 10000002 */ b .L800A4B9C -/* 0A5794 800A4B94 A0E2001A */ sb $v0, 0x1a($a3) -.L800A4B98: -/* 0A5798 800A4B98 A0E2001A */ sb $v0, 0x1a($a3) -.L800A4B9C: -/* 0A579C 800A4B9C 83AD0027 */ lb $t5, 0x27($sp) -.L800A4BA0: -/* 0A57A0 800A4BA0 00000000 */ nop -/* 0A57A4 800A4BA4 11A0001F */ beqz $t5, .L800A4C24 -/* 0A57A8 800A4BA8 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A57AC 800A4BAC 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A57B0 800A4BB0 8C830000 */ lw $v1, ($a0) -/* 0A57B4 800A4BB4 3C0FFA00 */ lui $t7, 0xfa00 -/* 0A57B8 800A4BB8 246E0008 */ addiu $t6, $v1, 8 -/* 0A57BC 800A4BBC AC8E0000 */ sw $t6, ($a0) -/* 0A57C0 800A4BC0 2418FFD2 */ li $t8, -46 -/* 0A57C4 800A4BC4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A57C8 800A4BC8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A57CC 800A4BCC 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A57D0 800A4BD0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A57D4 800A4BD4 AC780004 */ sw $t8, 4($v1) -/* 0A57D8 800A4BD8 0C02A980 */ jal func_800AA600 -/* 0A57DC 800A4BDC AC6F0000 */ sw $t7, ($v1) -/* 0A57E0 800A4BE0 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A57E4 800A4BE4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A57E8 800A4BE8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A57EC 800A4BEC 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A57F0 800A4BF0 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A57F4 800A4BF4 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A57F8 800A4BF8 0C02A980 */ jal func_800AA600 -/* 0A57FC 800A4BFC 02003825 */ move $a3, $s0 -/* 0A5800 800A4C00 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A5804 800A4C04 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A5808 800A4C08 8C830000 */ lw $v1, ($a0) -/* 0A580C 800A4C0C 3C08FA00 */ lui $t0, 0xfa00 -/* 0A5810 800A4C10 24790008 */ addiu $t9, $v1, 8 -/* 0A5814 800A4C14 AC990000 */ sw $t9, ($a0) -/* 0A5818 800A4C18 2409FFFF */ li $t1, -1 -/* 0A581C 800A4C1C AC690004 */ sw $t1, 4($v1) -/* 0A5820 800A4C20 AC680000 */ sw $t0, ($v1) -.L800A4C24: -/* 0A5824 800A4C24 8FBF001C */ lw $ra, 0x1c($sp) -/* 0A5828 800A4C28 8FB00018 */ lw $s0, 0x18($sp) -/* 0A582C 800A4C2C 03E00008 */ jr $ra -/* 0A5830 800A4C30 27BD0030 */ addiu $sp, $sp, 0x30 - -/* 0A5834 800A4C34 AFA40000 */ sw $a0, ($sp) -/* 0A5838 800A4C38 AFA50004 */ sw $a1, 4($sp) -/* 0A583C 800A4C3C 03E00008 */ jr $ra -/* 0A5840 800A4C40 AFA60008 */ sw $a2, 8($sp) - -glabel func_800A4C44 -/* 0A5844 800A4C44 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0A5848 800A4C48 AFBF0014 */ sw $ra, 0x14($sp) -/* 0A584C 800A4C4C AFA5003C */ sw $a1, 0x3c($sp) -/* 0A5850 800A4C50 808E01D8 */ lb $t6, 0x1d8($a0) -/* 0A5854 800A4C54 00000000 */ nop -/* 0A5858 800A4C58 15C000BA */ bnez $t6, .L800A4F44 -/* 0A585C 800A4C5C 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A5860 800A4C60 848301AE */ lh $v1, 0x1ae($a0) -/* 0A5864 800A4C64 0C0044E7 */ jal func_8001139C -/* 0A5868 800A4C68 AFA30034 */ sw $v1, 0x34($sp) -/* 0A586C 800A4C6C 8FA30034 */ lw $v1, 0x34($sp) -/* 0A5870 800A4C70 1040001B */ beqz $v0, .L800A4CE0 -/* 0A5874 800A4C74 00000000 */ nop -/* 0A5878 800A4C78 0C01AF66 */ jal func_8006BD98 -/* 0A587C 800A4C7C 00000000 */ nop -/* 0A5880 800A4C80 24010008 */ li $at, 8 -/* 0A5884 800A4C84 10410005 */ beq $v0, $at, .L800A4C9C -/* 0A5888 800A4C88 00000000 */ nop -/* 0A588C 800A4C8C 0C008D07 */ jal func_8002341C -/* 0A5890 800A4C90 00000000 */ nop -/* 0A5894 800A4C94 10400003 */ beqz $v0, .L800A4CA4 -/* 0A5898 800A4C98 00000000 */ nop -.L800A4C9C: -/* 0A589C 800A4C9C 10000010 */ b .L800A4CE0 -/* 0A58A0 800A4CA0 24030002 */ li $v1, 2 -.L800A4CA4: -/* 0A58A4 800A4CA4 0C01BAA4 */ jal func_8006EA90 -/* 0A58A8 800A4CA8 00000000 */ nop -/* 0A58AC 800A4CAC 3C0F8012 */ lui $t7, %hi(D_80126D10) # $t7, 0x8012 -/* 0A58B0 800A4CB0 8DEF6D10 */ lw $t7, %lo(D_80126D10)($t7) -/* 0A58B4 800A4CB4 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A58B8 800A4CB8 000FC080 */ sll $t8, $t7, 2 -/* 0A58BC 800A4CBC 030FC023 */ subu $t8, $t8, $t7 -/* 0A58C0 800A4CC0 0018C0C0 */ sll $t8, $t8, 3 -/* 0A58C4 800A4CC4 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A58C8 800A4CC8 0058C821 */ addu $t9, $v0, $t8 -/* 0A58CC 800A4CCC 8323005A */ lb $v1, 0x5a($t9) -/* 0A58D0 800A4CD0 8D090000 */ lw $t1, ($t0) -/* 0A58D4 800A4CD4 00000000 */ nop -/* 0A58D8 800A4CD8 A5230018 */ sh $v1, 0x18($t1) -/* 0A58DC 800A4CDC 24630001 */ addiu $v1, $v1, 1 -.L800A4CE0: -/* 0A58E0 800A4CE0 3C0A8012 */ lui $t2, %hi(D_80126D0C) # $t2, 0x8012 -/* 0A58E4 800A4CE4 8D4A6D0C */ lw $t2, %lo(D_80126D0C)($t2) -/* 0A58E8 800A4CE8 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A58EC 800A4CEC 29410002 */ slti $at, $t2, 2 -/* 0A58F0 800A4CF0 10200017 */ beqz $at, .L800A4D50 -/* 0A58F4 800A4CF4 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A58F8 800A4CF8 28610004 */ slti $at, $v1, 4 -/* 0A58FC 800A4CFC 10200005 */ beqz $at, .L800A4D14 -/* 0A5900 800A4D00 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A5904 800A4D04 8D0C0000 */ lw $t4, ($t0) -/* 0A5908 800A4D08 246BFFFF */ addiu $t3, $v1, -1 -/* 0A590C 800A4D0C 10000004 */ b .L800A4D20 -/* 0A5910 800A4D10 A58B0038 */ sh $t3, 0x38($t4) -.L800A4D14: -/* 0A5914 800A4D14 8D0E0000 */ lw $t6, ($t0) -/* 0A5918 800A4D18 240D0003 */ li $t5, 3 -/* 0A591C 800A4D1C A5CD0038 */ sh $t5, 0x38($t6) -.L800A4D20: -/* 0A5920 800A4D20 8D070000 */ lw $a3, ($t0) -/* 0A5924 800A4D24 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A5928 800A4D28 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A592C 800A4D2C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A5930 800A4D30 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A5934 800A4D34 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A5938 800A4D38 AFA30034 */ sw $v1, 0x34($sp) -/* 0A593C 800A4D3C 0C02A980 */ jal func_800AA600 -/* 0A5940 800A4D40 24E70020 */ addiu $a3, $a3, 0x20 -/* 0A5944 800A4D44 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A5948 800A4D48 8FA30034 */ lw $v1, 0x34($sp) -/* 0A594C 800A4D4C 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -.L800A4D50: -/* 0A5950 800A4D50 8D0F0000 */ lw $t7, ($t0) -/* 0A5954 800A4D54 3C014300 */ li $at, 0x43000000 # 128.000000 -/* 0A5958 800A4D58 81F8001B */ lb $t8, 0x1b($t7) -/* 0A595C 800A4D5C 44813000 */ mtc1 $at, $f6 -/* 0A5960 800A4D60 27190081 */ addiu $t9, $t8, 0x81 -/* 0A5964 800A4D64 44992000 */ mtc1 $t9, $f4 -/* 0A5968 800A4D68 246CFFFF */ addiu $t4, $v1, -1 -/* 0A596C 800A4D6C 46802020 */ cvt.s.w $f0, $f4 -/* 0A5970 800A4D70 AFAC001C */ sw $t4, 0x1c($sp) -/* 0A5974 800A4D74 46060002 */ mul.s $f0, $f0, $f6 -/* 0A5978 800A4D78 4449F800 */ cfc1 $t1, $31 -/* 0A597C 800A4D7C 00000000 */ nop -/* 0A5980 800A4D80 35210003 */ ori $at, $t1, 3 -/* 0A5984 800A4D84 38210002 */ xori $at, $at, 2 -/* 0A5988 800A4D88 44C1F800 */ ctc1 $at, $31 -/* 0A598C 800A4D8C 00000000 */ nop -/* 0A5990 800A4D90 46000224 */ cvt.w.s $f8, $f0 -/* 0A5994 800A4D94 44044000 */ mfc1 $a0, $f8 -/* 0A5998 800A4D98 44C9F800 */ ctc1 $t1, $31 -/* 0A599C 800A4D9C 00045400 */ sll $t2, $a0, 0x10 -/* 0A59A0 800A4DA0 0C01C1F1 */ jal func_800707C4 -/* 0A59A4 800A4DA4 000A2403 */ sra $a0, $t2, 0x10 -/* 0A59A8 800A4DA8 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A59AC 800A4DAC 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A59B0 800A4DB0 8D020000 */ lw $v0, ($t0) -/* 0A59B4 800A4DB4 3C0142FE */ li $at, 0x42FE0000 # 127.000000 -/* 0A59B8 800A4DB8 804D001C */ lb $t5, 0x1c($v0) -/* 0A59BC 800A4DBC 44819000 */ mtc1 $at, $f18 -/* 0A59C0 800A4DC0 448D5000 */ mtc1 $t5, $f10 -/* 0A59C4 800A4DC4 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 0A59C8 800A4DC8 46805420 */ cvt.s.w $f16, $f10 -/* 0A59CC 800A4DCC 44814800 */ mtc1 $at, $f9 -/* 0A59D0 800A4DD0 44804000 */ mtc1 $zero, $f8 -/* 0A59D4 800A4DD4 46128103 */ div.s $f4, $f16, $f18 -/* 0A59D8 800A4DD8 460002A1 */ cvt.d.s $f10, $f0 -/* 0A59DC 800A4DDC 462A4402 */ mul.d $f16, $f8, $f10 -/* 0A59E0 800A4DE0 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 0A59E4 800A4DE4 44819800 */ mtc1 $at, $f19 -/* 0A59E8 800A4DE8 44809000 */ mtc1 $zero, $f18 -/* 0A59EC 800A4DEC 3C0141C0 */ li $at, 0x41C00000 # 24.000000 -/* 0A59F0 800A4DF0 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A59F4 800A4DF4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A59F8 800A4DF8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A59FC 800A4DFC 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A5A00 800A4E00 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A5A04 800A4E04 460021A1 */ cvt.d.s $f6, $f4 -/* 0A5A08 800A4E08 46309100 */ add.d $f4, $f18, $f16 -/* 0A5A0C 800A4E0C 44819000 */ mtc1 $at, $f18 -/* 0A5A10 800A4E10 46243200 */ add.d $f8, $f6, $f4 -/* 0A5A14 800A4E14 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A5A18 800A4E18 462042A0 */ cvt.s.d $f10, $f8 -/* 0A5A1C 800A4E1C E44A0008 */ swc1 $f10, 8($v0) -/* 0A5A20 800A4E20 8D020000 */ lw $v0, ($t0) -/* 0A5A24 800A4E24 00000000 */ nop -/* 0A5A28 800A4E28 C442000C */ lwc1 $f2, 0xc($v0) -/* 0A5A2C 800A4E2C 00000000 */ nop -/* 0A5A30 800A4E30 E7A20030 */ swc1 $f2, 0x30($sp) -/* 0A5A34 800A4E34 C4500008 */ lwc1 $f16, 8($v0) -/* 0A5A38 800A4E38 00000000 */ nop -/* 0A5A3C 800A4E3C 46109182 */ mul.s $f6, $f18, $f16 -/* 0A5A40 800A4E40 46061101 */ sub.s $f4, $f2, $f6 -/* 0A5A44 800A4E44 E444000C */ swc1 $f4, 0xc($v0) -/* 0A5A48 800A4E48 8D070000 */ lw $a3, ($t0) -/* 0A5A4C 800A4E4C 0C02A980 */ jal func_800AA600 -/* 0A5A50 800A4E50 00000000 */ nop -/* 0A5A54 800A4E54 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A5A58 800A4E58 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A5A5C 800A4E5C 8D0E0000 */ lw $t6, ($t0) -/* 0A5A60 800A4E60 C7A80030 */ lwc1 $f8, 0x30($sp) -/* 0A5A64 800A4E64 2405007F */ li $a1, 127 -/* 0A5A68 800A4E68 E5C8000C */ swc1 $f8, 0xc($t6) -/* 0A5A6C 800A4E6C 8D020000 */ lw $v0, ($t0) -/* 0A5A70 800A4E70 8FA4003C */ lw $a0, 0x3c($sp) -/* 0A5A74 800A4E74 804F001A */ lb $t7, 0x1a($v0) -/* 0A5A78 800A4E78 0004C100 */ sll $t8, $a0, 4 -/* 0A5A7C 800A4E7C 11E0000D */ beqz $t7, .L800A4EB4 -/* 0A5A80 800A4E80 00000000 */ nop -/* 0A5A84 800A4E84 8043001B */ lb $v1, 0x1b($v0) -/* 0A5A88 800A4E88 00B8C823 */ subu $t9, $a1, $t8 -/* 0A5A8C 800A4E8C 0079082A */ slt $at, $v1, $t9 -/* 0A5A90 800A4E90 10200005 */ beqz $at, .L800A4EA8 -/* 0A5A94 800A4E94 00784821 */ addu $t1, $v1, $t8 -/* 0A5A98 800A4E98 A049001B */ sb $t1, 0x1b($v0) -/* 0A5A9C 800A4E9C 8D020000 */ lw $v0, ($t0) -/* 0A5AA0 800A4EA0 10000005 */ b .L800A4EB8 -/* 0A5AA4 800A4EA4 8FA4001C */ lw $a0, 0x1c($sp) -.L800A4EA8: -/* 0A5AA8 800A4EA8 A045001B */ sb $a1, 0x1b($v0) -/* 0A5AAC 800A4EAC 8D020000 */ lw $v0, ($t0) -/* 0A5AB0 800A4EB0 00000000 */ nop -.L800A4EB4: -/* 0A5AB4 800A4EB4 8FA4001C */ lw $a0, 0x1c($sp) -.L800A4EB8: -/* 0A5AB8 800A4EB8 844A0018 */ lh $t2, 0x18($v0) -/* 0A5ABC 800A4EBC 2405007F */ li $a1, 127 -/* 0A5AC0 800A4EC0 108A0013 */ beq $a0, $t2, .L800A4F10 -/* 0A5AC4 800A4EC4 00000000 */ nop -/* 0A5AC8 800A4EC8 804B001A */ lb $t3, 0x1a($v0) -/* 0A5ACC 800A4ECC 240DFF81 */ li $t5, -127 -/* 0A5AD0 800A4ED0 11600009 */ beqz $t3, .L800A4EF8 -/* 0A5AD4 800A4ED4 00000000 */ nop -/* 0A5AD8 800A4ED8 8043001B */ lb $v1, 0x1b($v0) -/* 0A5ADC 800A4EDC 00000000 */ nop -/* 0A5AE0 800A4EE0 18600005 */ blez $v1, .L800A4EF8 -/* 0A5AE4 800A4EE4 00036023 */ negu $t4, $v1 -/* 0A5AE8 800A4EE8 A04C001B */ sb $t4, 0x1b($v0) -/* 0A5AEC 800A4EEC 8D020000 */ lw $v0, ($t0) -/* 0A5AF0 800A4EF0 10000008 */ b .L800A4F14 -/* 0A5AF4 800A4EF4 A4440018 */ sh $a0, 0x18($v0) -.L800A4EF8: -/* 0A5AF8 800A4EF8 A04D001B */ sb $t5, 0x1b($v0) -/* 0A5AFC 800A4EFC 8D0F0000 */ lw $t7, ($t0) -/* 0A5B00 800A4F00 240E0001 */ li $t6, 1 -/* 0A5B04 800A4F04 A1EE001A */ sb $t6, 0x1a($t7) -/* 0A5B08 800A4F08 8D020000 */ lw $v0, ($t0) -/* 0A5B0C 800A4F0C 00000000 */ nop -.L800A4F10: -/* 0A5B10 800A4F10 A4440018 */ sh $a0, 0x18($v0) -.L800A4F14: -/* 0A5B14 800A4F14 8D020000 */ lw $v0, ($t0) -/* 0A5B18 800A4F18 00000000 */ nop -/* 0A5B1C 800A4F1C 8058001A */ lb $t8, 0x1a($v0) -/* 0A5B20 800A4F20 00000000 */ nop -/* 0A5B24 800A4F24 13000007 */ beqz $t8, .L800A4F44 -/* 0A5B28 800A4F28 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A5B2C 800A4F2C 8059001B */ lb $t9, 0x1b($v0) -/* 0A5B30 800A4F30 00000000 */ nop -/* 0A5B34 800A4F34 14B90003 */ bne $a1, $t9, .L800A4F44 -/* 0A5B38 800A4F38 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A5B3C 800A4F3C A040001A */ sb $zero, 0x1a($v0) -/* 0A5B40 800A4F40 8FBF0014 */ lw $ra, 0x14($sp) -.L800A4F44: -/* 0A5B44 800A4F44 27BD0038 */ addiu $sp, $sp, 0x38 -/* 0A5B48 800A4F48 03E00008 */ jr $ra -/* 0A5B4C 800A4F4C 00000000 */ nop - -glabel func_800A4F50 -/* 0A5B50 800A4F50 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0A5B54 800A4F54 AFBF0014 */ sw $ra, 0x14($sp) -/* 0A5B58 800A4F58 AFA40018 */ sw $a0, 0x18($sp) -/* 0A5B5C 800A4F5C AFA5001C */ sw $a1, 0x1c($sp) -/* 0A5B60 800A4F60 808F01D8 */ lb $t7, 0x1d8($a0) -/* 0A5B64 800A4F64 3C028012 */ lui $v0, %hi(D_80126D0C) # $v0, 0x8012 -/* 0A5B68 800A4F68 15E00089 */ bnez $t7, .L800A5190 -/* 0A5B6C 800A4F6C 00000000 */ nop -/* 0A5B70 800A4F70 8C426D0C */ lw $v0, %lo(D_80126D0C)($v0) -/* 0A5B74 800A4F74 00000000 */ nop -/* 0A5B78 800A4F78 1840000B */ blez $v0, .L800A4FA8 -/* 0A5B7C 800A4F7C 00000000 */ nop -/* 0A5B80 800A4F80 80830193 */ lb $v1, 0x193($a0) -/* 0A5B84 800A4F84 00000000 */ nop -/* 0A5B88 800A4F88 18600007 */ blez $v1, .L800A4FA8 -/* 0A5B8C 800A4F8C 0003C080 */ sll $t8, $v1, 2 -/* 0A5B90 800A4F90 0098C821 */ addu $t9, $a0, $t8 -/* 0A5B94 800A4F94 8F2B0128 */ lw $t3, 0x128($t9) -/* 0A5B98 800A4F98 00000000 */ nop -/* 0A5B9C 800A4F9C 296100B4 */ slti $at, $t3, 0xb4 -/* 0A5BA0 800A4FA0 1420007B */ bnez $at, .L800A5190 -/* 0A5BA4 800A4FA4 00000000 */ nop -.L800A4FA8: -/* 0A5BA8 800A4FA8 1840000B */ blez $v0, .L800A4FD8 -/* 0A5BAC 800A4FAC 3C198012 */ lui $t9, %hi(D_80126D60) # $t9, 0x8012 -/* 0A5BB0 800A4FB0 8FAD0018 */ lw $t5, 0x18($sp) -/* 0A5BB4 800A4FB4 00026080 */ sll $t4, $v0, 2 -/* 0A5BB8 800A4FB8 85AF0000 */ lh $t7, ($t5) -/* 0A5BBC 800A4FBC 3C18800E */ lui $t8, 0x800e -/* 0A5BC0 800A4FC0 018F7021 */ addu $t6, $t4, $t7 -/* 0A5BC4 800A4FC4 030EC021 */ addu $t8, $t8, $t6 -/* 0A5BC8 800A4FC8 93182794 */ lbu $t8, 0x2794($t8) -/* 0A5BCC 800A4FCC 24010003 */ li $at, 3 -/* 0A5BD0 800A4FD0 1701006F */ bne $t8, $at, .L800A5190 -/* 0A5BD4 800A4FD4 00000000 */ nop -.L800A4FD8: -/* 0A5BD8 800A4FD8 8FAD0018 */ lw $t5, 0x18($sp) -/* 0A5BDC 800A4FDC 8F396D60 */ lw $t9, %lo(D_80126D60)($t9) -/* 0A5BE0 800A4FE0 81AC0194 */ lb $t4, 0x194($t5) -/* 0A5BE4 800A4FE4 832B004B */ lb $t3, 0x4b($t9) -/* 0A5BE8 800A4FE8 258F0001 */ addiu $t7, $t4, 1 -/* 0A5BEC 800A4FEC 156F0029 */ bne $t3, $t7, .L800A5094 -/* 0A5BF0 800A4FF0 28410002 */ slti $at, $v0, 2 -/* 0A5BF4 800A4FF4 10200027 */ beqz $at, .L800A5094 -/* 0A5BF8 800A4FF8 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A5BFC 800A4FFC 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A5C00 800A5000 8D020000 */ lw $v0, ($t0) -/* 0A5C04 800A5004 8FB8001C */ lw $t8, 0x1c($sp) -/* 0A5C08 800A5008 804E021A */ lb $t6, 0x21a($v0) -/* 0A5C0C 800A500C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A5C10 800A5010 01D8C821 */ addu $t9, $t6, $t8 -/* 0A5C14 800A5014 A059021A */ sb $t9, 0x21a($v0) -/* 0A5C18 800A5018 8D020000 */ lw $v0, ($t0) -/* 0A5C1C 800A501C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A5C20 800A5020 804D021A */ lb $t5, 0x21a($v0) -/* 0A5C24 800A5024 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A5C28 800A5028 29A10007 */ slti $at, $t5, 7 -/* 0A5C2C 800A502C 14200015 */ bnez $at, .L800A5084 -/* 0A5C30 800A5030 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A5C34 800A5034 844C0218 */ lh $t4, 0x218($v0) -/* 0A5C38 800A5038 00000000 */ nop -/* 0A5C3C 800A503C 258B0001 */ addiu $t3, $t4, 1 -/* 0A5C40 800A5040 A44B0218 */ sh $t3, 0x218($v0) -/* 0A5C44 800A5044 8D020000 */ lw $v0, ($t0) -/* 0A5C48 800A5048 00000000 */ nop -/* 0A5C4C 800A504C 804F021A */ lb $t7, 0x21a($v0) -/* 0A5C50 800A5050 00000000 */ nop -/* 0A5C54 800A5054 25EEFFFA */ addiu $t6, $t7, -6 -/* 0A5C58 800A5058 A04E021A */ sb $t6, 0x21a($v0) -/* 0A5C5C 800A505C 8D020000 */ lw $v0, ($t0) -/* 0A5C60 800A5060 00000000 */ nop -/* 0A5C64 800A5064 84580218 */ lh $t8, 0x218($v0) -/* 0A5C68 800A5068 00000000 */ nop -/* 0A5C6C 800A506C 2B010005 */ slti $at, $t8, 5 -/* 0A5C70 800A5070 14200004 */ bnez $at, .L800A5084 -/* 0A5C74 800A5074 00000000 */ nop -/* 0A5C78 800A5078 A4400218 */ sh $zero, 0x218($v0) -/* 0A5C7C 800A507C 8D020000 */ lw $v0, ($t0) -/* 0A5C80 800A5080 00000000 */ nop -.L800A5084: -/* 0A5C84 800A5084 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A5C88 800A5088 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A5C8C 800A508C 0C02A980 */ jal func_800AA600 -/* 0A5C90 800A5090 24470200 */ addiu $a3, $v0, 0x200 -.L800A5094: -/* 0A5C94 800A5094 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A5C98 800A5098 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A5C9C 800A509C 8D070000 */ lw $a3, ($t0) -/* 0A5CA0 800A50A0 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A5CA4 800A50A4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A5CA8 800A50A8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A5CAC 800A50AC 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A5CB0 800A50B0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A5CB4 800A50B4 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A5CB8 800A50B8 0C02A980 */ jal func_800AA600 -/* 0A5CBC 800A50BC 24E70060 */ addiu $a3, $a3, 0x60 -/* 0A5CC0 800A50C0 3C0A8012 */ lui $t2, %hi(D_80126D60) # $t2, 0x8012 -/* 0A5CC4 800A50C4 254A6D60 */ addiu $t2, %lo(D_80126D60) # addiu $t2, $t2, 0x6d60 -/* 0A5CC8 800A50C8 8D590000 */ lw $t9, ($t2) -/* 0A5CCC 800A50CC 8FA90018 */ lw $t1, 0x18($sp) -/* 0A5CD0 800A50D0 8322004B */ lb $v0, 0x4b($t9) -/* 0A5CD4 800A50D4 81230194 */ lb $v1, 0x194($t1) -/* 0A5CD8 800A50D8 244DFFFF */ addiu $t5, $v0, -1 -/* 0A5CDC 800A50DC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A5CE0 800A50E0 006D082A */ slt $at, $v1, $t5 -/* 0A5CE4 800A50E4 14200004 */ bnez $at, .L800A50F8 -/* 0A5CE8 800A50E8 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A5CEC 800A50EC 8D0C0000 */ lw $t4, ($t0) -/* 0A5CF0 800A50F0 10000004 */ b .L800A5104 -/* 0A5CF4 800A50F4 A5820098 */ sh $v0, 0x98($t4) -.L800A50F8: -/* 0A5CF8 800A50F8 8D0F0000 */ lw $t7, ($t0) -/* 0A5CFC 800A50FC 246B0001 */ addiu $t3, $v1, 1 -/* 0A5D00 800A5100 A5EB0098 */ sh $t3, 0x98($t7) -.L800A5104: -/* 0A5D04 800A5104 8D4E0000 */ lw $t6, ($t2) -/* 0A5D08 800A5108 8D190000 */ lw $t9, ($t0) -/* 0A5D0C 800A510C 81D8004B */ lb $t8, 0x4b($t6) -/* 0A5D10 800A5110 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A5D14 800A5114 A73800D8 */ sh $t8, 0xd8($t9) -/* 0A5D18 800A5118 8D070000 */ lw $a3, ($t0) -/* 0A5D1C 800A511C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A5D20 800A5120 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A5D24 800A5124 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A5D28 800A5128 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A5D2C 800A512C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A5D30 800A5130 0C02A980 */ jal func_800AA600 -/* 0A5D34 800A5134 24E70080 */ addiu $a3, $a3, 0x80 -/* 0A5D38 800A5138 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A5D3C 800A513C 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A5D40 800A5140 8D070000 */ lw $a3, ($t0) -/* 0A5D44 800A5144 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A5D48 800A5148 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A5D4C 800A514C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A5D50 800A5150 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A5D54 800A5154 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A5D58 800A5158 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A5D5C 800A515C 0C02A980 */ jal func_800AA600 -/* 0A5D60 800A5160 24E700A0 */ addiu $a3, $a3, 0xa0 -/* 0A5D64 800A5164 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A5D68 800A5168 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A5D6C 800A516C 8D070000 */ lw $a3, ($t0) -/* 0A5D70 800A5170 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A5D74 800A5174 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A5D78 800A5178 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A5D7C 800A517C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A5D80 800A5180 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A5D84 800A5184 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A5D88 800A5188 0C02A980 */ jal func_800AA600 -/* 0A5D8C 800A518C 24E700C0 */ addiu $a3, $a3, 0xc0 -.L800A5190: -/* 0A5D90 800A5190 3C0D8012 */ lui $t5, %hi(D_80126D0C) # $t5, 0x8012 -/* 0A5D94 800A5194 8DAD6D0C */ lw $t5, %lo(D_80126D0C)($t5) -/* 0A5D98 800A5198 24010001 */ li $at, 1 -/* 0A5D9C 800A519C 15A10003 */ bne $t5, $at, .L800A51AC -/* 0A5DA0 800A51A0 00000000 */ nop -/* 0A5DA4 800A51A4 0C01EFC7 */ jal func_8007BF1C -/* 0A5DA8 800A51A8 24040001 */ li $a0, 1 -.L800A51AC: -/* 0A5DAC 800A51AC 0C01BAA8 */ jal func_8006EAA0 -/* 0A5DB0 800A51B0 00000000 */ nop -/* 0A5DB4 800A51B4 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A5DB8 800A51B8 8FA90018 */ lw $t1, 0x18($sp) -/* 0A5DBC 800A51BC 14400223 */ bnez $v0, .L800A5A4C -/* 0A5DC0 800A51C0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A5DC4 800A51C4 81230193 */ lb $v1, 0x193($t1) -/* 0A5DC8 800A51C8 00000000 */ nop -/* 0A5DCC 800A51CC 00036080 */ sll $t4, $v1, 2 -/* 0A5DD0 800A51D0 012C5821 */ addu $t3, $t1, $t4 -/* 0A5DD4 800A51D4 8D6F0128 */ lw $t7, 0x128($t3) -/* 0A5DD8 800A51D8 00000000 */ nop -/* 0A5DDC 800A51DC 29E1001E */ slti $at, $t7, 0x1e -/* 0A5DE0 800A51E0 102000BF */ beqz $at, .L800A54E0 -/* 0A5DE4 800A51E4 00000000 */ nop -/* 0A5DE8 800A51E8 8D020000 */ lw $v0, ($t0) -/* 0A5DEC 800A51EC 00000000 */ nop -/* 0A5DF0 800A51F0 804E03DA */ lb $t6, 0x3da($v0) -/* 0A5DF4 800A51F4 00000000 */ nop -/* 0A5DF8 800A51F8 15C000B9 */ bnez $t6, .L800A54E0 -/* 0A5DFC 800A51FC 00000000 */ nop -/* 0A5E00 800A5200 813801D8 */ lb $t8, 0x1d8($t1) -/* 0A5E04 800A5204 24060001 */ li $a2, 1 -/* 0A5E08 800A5208 170000B5 */ bnez $t8, .L800A54E0 -/* 0A5E0C 800A520C 00000000 */ nop -/* 0A5E10 800A5210 14C30058 */ bne $a2, $v1, .L800A5374 -/* 0A5E14 800A5214 3C198012 */ lui $t9, %hi(D_80126D60) # $t9, 0x8012 -/* 0A5E18 800A5218 8F396D60 */ lw $t9, %lo(D_80126D60)($t9) -/* 0A5E1C 800A521C 240C0002 */ li $t4, 2 -/* 0A5E20 800A5220 832D004B */ lb $t5, 0x4b($t9) -/* 0A5E24 800A5224 24040016 */ li $a0, 22 -/* 0A5E28 800A5228 29A10003 */ slti $at, $t5, 3 -/* 0A5E2C 800A522C 14200051 */ bnez $at, .L800A5374 -/* 0A5E30 800A5230 00000000 */ nop -/* 0A5E34 800A5234 A04C03DA */ sb $t4, 0x3da($v0) -/* 0A5E38 800A5238 8D0B0000 */ lw $t3, ($t0) -/* 0A5E3C 800A523C 00002825 */ move $a1, $zero -/* 0A5E40 800A5240 A16603DB */ sb $a2, 0x3db($t3) -/* 0A5E44 800A5244 8D0F0000 */ lw $t7, ($t0) -/* 0A5E48 800A5248 0C000741 */ jal func_80001D04 -/* 0A5E4C 800A524C A1E003DD */ sb $zero, 0x3dd($t7) -/* 0A5E50 800A5250 3C028012 */ lui $v0, %hi(D_80126D0C) # $v0, 0x8012 -/* 0A5E54 800A5254 8C426D0C */ lw $v0, %lo(D_80126D0C)($v0) -/* 0A5E58 800A5258 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A5E5C 800A525C 8FA90018 */ lw $t1, 0x18($sp) -/* 0A5E60 800A5260 10400006 */ beqz $v0, .L800A527C -/* 0A5E64 800A5264 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A5E68 800A5268 24010001 */ li $at, 1 -/* 0A5E6C 800A526C 10410012 */ beq $v0, $at, .L800A52B8 -/* 0A5E70 800A5270 240FFFF0 */ li $t7, -16 -/* 0A5E74 800A5274 1000001E */ b .L800A52F0 -/* 0A5E78 800A5278 24010002 */ li $at, 2 -.L800A527C: -/* 0A5E7C 800A527C 8D180000 */ lw $t8, ($t0) -/* 0A5E80 800A5280 240EFFEB */ li $t6, -21 -/* 0A5E84 800A5284 A30E03DC */ sb $t6, 0x3dc($t8) -/* 0A5E88 800A5288 8D0D0000 */ lw $t5, ($t0) -/* 0A5E8C 800A528C 24190020 */ li $t9, 32 -/* 0A5E90 800A5290 3C01C348 */ li $at, 0xC3480000 # -200.000000 -/* 0A5E94 800A5294 A1B903FC */ sb $t9, 0x3fc($t5) -/* 0A5E98 800A5298 8D0C0000 */ lw $t4, ($t0) -/* 0A5E9C 800A529C 44812000 */ mtc1 $at, $f4 -/* 0A5EA0 800A52A0 3C014353 */ li $at, 0x43530000 # 211.000000 -/* 0A5EA4 800A52A4 E58403CC */ swc1 $f4, 0x3cc($t4) -/* 0A5EA8 800A52A8 8D0B0000 */ lw $t3, ($t0) -/* 0A5EAC 800A52AC 44813000 */ mtc1 $at, $f6 -/* 0A5EB0 800A52B0 1000008B */ b .L800A54E0 -/* 0A5EB4 800A52B4 E56603EC */ swc1 $f6, 0x3ec($t3) -.L800A52B8: -/* 0A5EB8 800A52B8 8D0E0000 */ lw $t6, ($t0) -/* 0A5EBC 800A52BC 2418001B */ li $t8, 27 -/* 0A5EC0 800A52C0 A1CF03DC */ sb $t7, 0x3dc($t6) -/* 0A5EC4 800A52C4 8D190000 */ lw $t9, ($t0) -/* 0A5EC8 800A52C8 3C01C348 */ li $at, 0xC3480000 # -200.000000 -/* 0A5ECC 800A52CC A33803FC */ sb $t8, 0x3fc($t9) -/* 0A5ED0 800A52D0 8D0D0000 */ lw $t5, ($t0) -/* 0A5ED4 800A52D4 44814000 */ mtc1 $at, $f8 -/* 0A5ED8 800A52D8 3C014353 */ li $at, 0x43530000 # 211.000000 -/* 0A5EDC 800A52DC E5A803CC */ swc1 $f8, 0x3cc($t5) -/* 0A5EE0 800A52E0 8D0C0000 */ lw $t4, ($t0) -/* 0A5EE4 800A52E4 44815000 */ mtc1 $at, $f10 -/* 0A5EE8 800A52E8 1000007D */ b .L800A54E0 -/* 0A5EEC 800A52EC E58A03EC */ swc1 $f10, 0x3ec($t4) -.L800A52F0: -/* 0A5EF0 800A52F0 85220000 */ lh $v0, ($t1) -/* 0A5EF4 800A52F4 240CFFA6 */ li $t4, -90 -/* 0A5EF8 800A52F8 10400011 */ beqz $v0, .L800A5340 -/* 0A5EFC 800A52FC 240FFFC5 */ li $t7, -59 -/* 0A5F00 800A5300 1041000F */ beq $v0, $at, .L800A5340 -/* 0A5F04 800A5304 240B003C */ li $t3, 60 -/* 0A5F08 800A5308 8D0F0000 */ lw $t7, ($t0) -/* 0A5F0C 800A530C 240E005B */ li $t6, 91 -/* 0A5F10 800A5310 A1EB03DC */ sb $t3, 0x3dc($t7) -/* 0A5F14 800A5314 8D180000 */ lw $t8, ($t0) -/* 0A5F18 800A5318 3C01C28C */ li $at, 0xC28C0000 # -70.000000 -/* 0A5F1C 800A531C A30E03FC */ sb $t6, 0x3fc($t8) -/* 0A5F20 800A5320 8D190000 */ lw $t9, ($t0) -/* 0A5F24 800A5324 44818000 */ mtc1 $at, $f16 -/* 0A5F28 800A5328 3C01435D */ li $at, 0x435D0000 # 221.000000 -/* 0A5F2C 800A532C E73003CC */ swc1 $f16, 0x3cc($t9) -/* 0A5F30 800A5330 8D0D0000 */ lw $t5, ($t0) -/* 0A5F34 800A5334 44819000 */ mtc1 $at, $f18 -/* 0A5F38 800A5338 10000069 */ b .L800A54E0 -/* 0A5F3C 800A533C E5B203EC */ swc1 $f18, 0x3ec($t5) -.L800A5340: -/* 0A5F40 800A5340 8D0B0000 */ lw $t3, ($t0) -/* 0A5F44 800A5344 3C01C35C */ li $at, 0xC35C0000 # -220.000000 -/* 0A5F48 800A5348 A16C03DC */ sb $t4, 0x3dc($t3) -/* 0A5F4C 800A534C 8D0E0000 */ lw $t6, ($t0) -/* 0A5F50 800A5350 44812000 */ mtc1 $at, $f4 -/* 0A5F54 800A5354 A1CF03FC */ sb $t7, 0x3fc($t6) -/* 0A5F58 800A5358 8D180000 */ lw $t8, ($t0) -/* 0A5F5C 800A535C 3C01428E */ li $at, 0x428E0000 # 71.000000 -/* 0A5F60 800A5360 E70403CC */ swc1 $f4, 0x3cc($t8) -/* 0A5F64 800A5364 8D190000 */ lw $t9, ($t0) -/* 0A5F68 800A5368 44813000 */ mtc1 $at, $f6 -/* 0A5F6C 800A536C 1000005C */ b .L800A54E0 -/* 0A5F70 800A5370 E72603EC */ swc1 $f6, 0x3ec($t9) -.L800A5374: -/* 0A5F74 800A5374 3C0D8012 */ lui $t5, %hi(D_80126D60) # $t5, 0x8012 -/* 0A5F78 800A5378 8DAD6D60 */ lw $t5, %lo(D_80126D60)($t5) -/* 0A5F7C 800A537C 246B0001 */ addiu $t3, $v1, 1 -/* 0A5F80 800A5380 81AC004B */ lb $t4, 0x4b($t5) -/* 0A5F84 800A5384 00000000 */ nop -/* 0A5F88 800A5388 158B0055 */ bne $t4, $t3, .L800A54E0 -/* 0A5F8C 800A538C 00000000 */ nop -/* 0A5F90 800A5390 10600053 */ beqz $v1, .L800A54E0 -/* 0A5F94 800A5394 240F0003 */ li $t7, 3 -/* 0A5F98 800A5398 A04F03DA */ sb $t7, 0x3da($v0) -/* 0A5F9C 800A539C 8D180000 */ lw $t8, ($t0) -/* 0A5FA0 800A53A0 240EFFFF */ li $t6, -1 -/* 0A5FA4 800A53A4 A30E03DB */ sb $t6, 0x3db($t8) -/* 0A5FA8 800A53A8 8D190000 */ lw $t9, ($t0) -/* 0A5FAC 800A53AC 24040016 */ li $a0, 22 -/* 0A5FB0 800A53B0 00002825 */ move $a1, $zero -/* 0A5FB4 800A53B4 0C000741 */ jal func_80001D04 -/* 0A5FB8 800A53B8 A32003DD */ sb $zero, 0x3dd($t9) -/* 0A5FBC 800A53BC 3C028012 */ lui $v0, %hi(D_80126D0C) # $v0, 0x8012 -/* 0A5FC0 800A53C0 8C426D0C */ lw $v0, %lo(D_80126D0C)($v0) -/* 0A5FC4 800A53C4 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A5FC8 800A53C8 8FA90018 */ lw $t1, 0x18($sp) -/* 0A5FCC 800A53CC 10400006 */ beqz $v0, .L800A53E8 -/* 0A5FD0 800A53D0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A5FD4 800A53D4 24010001 */ li $at, 1 -/* 0A5FD8 800A53D8 10410012 */ beq $v0, $at, .L800A5424 -/* 0A5FDC 800A53DC 24190029 */ li $t9, 41 -/* 0A5FE0 800A53E0 1000001E */ b .L800A545C -/* 0A5FE4 800A53E4 24010002 */ li $at, 2 -.L800A53E8: -/* 0A5FE8 800A53E8 8D0C0000 */ lw $t4, ($t0) -/* 0A5FEC 800A53EC 240D0033 */ li $t5, 51 -/* 0A5FF0 800A53F0 A18D03DC */ sb $t5, 0x3dc($t4) -/* 0A5FF4 800A53F4 8D0F0000 */ lw $t7, ($t0) -/* 0A5FF8 800A53F8 240BFFD7 */ li $t3, -41 -/* 0A5FFC 800A53FC 3C014352 */ li $at, 0x43520000 # 210.000000 -/* 0A6000 800A5400 A1EB03BC */ sb $t3, 0x3bc($t7) -/* 0A6004 800A5404 8D0E0000 */ lw $t6, ($t0) -/* 0A6008 800A5408 44814000 */ mtc1 $at, $f8 -/* 0A600C 800A540C 3C01C348 */ li $at, 0xC3480000 # -200.000000 -/* 0A6010 800A5410 E5C803CC */ swc1 $f8, 0x3cc($t6) -/* 0A6014 800A5414 8D180000 */ lw $t8, ($t0) -/* 0A6018 800A5418 44815000 */ mtc1 $at, $f10 -/* 0A601C 800A541C 10000030 */ b .L800A54E0 -/* 0A6020 800A5420 E70A03AC */ swc1 $f10, 0x3ac($t8) -.L800A5424: -/* 0A6024 800A5424 8D0D0000 */ lw $t5, ($t0) -/* 0A6028 800A5428 240CFFE1 */ li $t4, -31 -/* 0A602C 800A542C A1B903DC */ sb $t9, 0x3dc($t5) -/* 0A6030 800A5430 8D0B0000 */ lw $t3, ($t0) -/* 0A6034 800A5434 3C014352 */ li $at, 0x43520000 # 210.000000 -/* 0A6038 800A5438 A16C03BC */ sb $t4, 0x3bc($t3) -/* 0A603C 800A543C 8D0F0000 */ lw $t7, ($t0) -/* 0A6040 800A5440 44818000 */ mtc1 $at, $f16 -/* 0A6044 800A5444 3C01C348 */ li $at, 0xC3480000 # -200.000000 -/* 0A6048 800A5448 E5F003CC */ swc1 $f16, 0x3cc($t7) -/* 0A604C 800A544C 8D0E0000 */ lw $t6, ($t0) -/* 0A6050 800A5450 44819000 */ mtc1 $at, $f18 -/* 0A6054 800A5454 10000022 */ b .L800A54E0 -/* 0A6058 800A5458 E5D203AC */ swc1 $f18, 0x3ac($t6) -.L800A545C: -/* 0A605C 800A545C 85220000 */ lh $v0, ($t1) -/* 0A6060 800A5460 240EFFCE */ li $t6, -50 -/* 0A6064 800A5464 10400011 */ beqz $v0, .L800A54AC -/* 0A6068 800A5468 2419FF9C */ li $t9, -100 -/* 0A606C 800A546C 1041000F */ beq $v0, $at, .L800A54AC -/* 0A6070 800A5470 24180064 */ li $t8, 100 -/* 0A6074 800A5474 8D190000 */ lw $t9, ($t0) -/* 0A6078 800A5478 240D0032 */ li $t5, 50 -/* 0A607C 800A547C A33803DC */ sb $t8, 0x3dc($t9) -/* 0A6080 800A5480 8D0C0000 */ lw $t4, ($t0) -/* 0A6084 800A5484 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 0A6088 800A5488 A18D03BC */ sb $t5, 0x3bc($t4) -/* 0A608C 800A548C 8D0B0000 */ lw $t3, ($t0) -/* 0A6090 800A5490 44812000 */ mtc1 $at, $f4 -/* 0A6094 800A5494 3C01C248 */ li $at, 0xC2480000 # -50.000000 -/* 0A6098 800A5498 E56403CC */ swc1 $f4, 0x3cc($t3) -/* 0A609C 800A549C 8D0F0000 */ lw $t7, ($t0) -/* 0A60A0 800A54A0 44813000 */ mtc1 $at, $f6 -/* 0A60A4 800A54A4 1000000E */ b .L800A54E0 -/* 0A60A8 800A54A8 E5E603AC */ swc1 $f6, 0x3ac($t7) -.L800A54AC: -/* 0A60AC 800A54AC 8D180000 */ lw $t8, ($t0) -/* 0A60B0 800A54B0 3C014248 */ li $at, 0x42480000 # 50.000000 -/* 0A60B4 800A54B4 A30E03DC */ sb $t6, 0x3dc($t8) -/* 0A60B8 800A54B8 8D0D0000 */ lw $t5, ($t0) -/* 0A60BC 800A54BC 44814000 */ mtc1 $at, $f8 -/* 0A60C0 800A54C0 A1B903BC */ sb $t9, 0x3bc($t5) -/* 0A60C4 800A54C4 8D0C0000 */ lw $t4, ($t0) -/* 0A60C8 800A54C8 3C01C348 */ li $at, 0xC3480000 # -200.000000 -/* 0A60CC 800A54CC E58803CC */ swc1 $f8, 0x3cc($t4) -/* 0A60D0 800A54D0 8D0B0000 */ lw $t3, ($t0) -/* 0A60D4 800A54D4 44815000 */ mtc1 $at, $f10 -/* 0A60D8 800A54D8 00000000 */ nop -/* 0A60DC 800A54DC E56A03AC */ swc1 $f10, 0x3ac($t3) -.L800A54E0: -/* 0A60E0 800A54E0 8D020000 */ lw $v0, ($t0) -/* 0A60E4 800A54E4 24060001 */ li $a2, 1 -/* 0A60E8 800A54E8 804303DA */ lb $v1, 0x3da($v0) -/* 0A60EC 800A54EC 24010002 */ li $at, 2 -/* 0A60F0 800A54F0 10600156 */ beqz $v1, .L800A5A4C -/* 0A60F4 800A54F4 00000000 */ nop -/* 0A60F8 800A54F8 146100AA */ bne $v1, $at, .L800A57A4 -/* 0A60FC 800A54FC 24010003 */ li $at, 3 -/* 0A6100 800A5500 804303DB */ lb $v1, 0x3db($v0) -/* 0A6104 800A5504 8FA4001C */ lw $a0, 0x1c($sp) -/* 0A6108 800A5508 14C30063 */ bne $a2, $v1, .L800A5698 -/* 0A610C 800A550C 2401FFFF */ li $at, -1 -/* 0A6110 800A5510 00047880 */ sll $t7, $a0, 2 -/* 0A6114 800A5514 01E47823 */ subu $t7, $t7, $a0 -/* 0A6118 800A5518 804303DC */ lb $v1, 0x3dc($v0) -/* 0A611C 800A551C 000F7880 */ sll $t7, $t7, 2 -/* 0A6120 800A5520 01E47821 */ addu $t7, $t7, $a0 -/* 0A6124 800A5524 006F7023 */ subu $t6, $v1, $t7 -/* 0A6128 800A5528 448E8000 */ mtc1 $t6, $f16 -/* 0A612C 800A552C C44003CC */ lwc1 $f0, 0x3cc($v0) -/* 0A6130 800A5530 468084A0 */ cvt.s.w $f18, $f16 -/* 0A6134 800A5534 01E02025 */ move $a0, $t7 -/* 0A6138 800A5538 240FFFFF */ li $t7, -1 -/* 0A613C 800A553C 4612003C */ c.lt.s $f0, $f18 -/* 0A6140 800A5540 00002825 */ move $a1, $zero -/* 0A6144 800A5544 45000007 */ bc1f .L800A5564 -/* 0A6148 800A5548 00000000 */ nop -/* 0A614C 800A554C 44842000 */ mtc1 $a0, $f4 -/* 0A6150 800A5550 00000000 */ nop -/* 0A6154 800A5554 468021A0 */ cvt.s.w $f6, $f4 -/* 0A6158 800A5558 46060200 */ add.s $f8, $f0, $f6 -/* 0A615C 800A555C 10000005 */ b .L800A5574 -/* 0A6160 800A5560 E44803CC */ swc1 $f8, 0x3cc($v0) -.L800A5564: -/* 0A6164 800A5564 44835000 */ mtc1 $v1, $f10 -/* 0A6168 800A5568 00000000 */ nop -/* 0A616C 800A556C 46805420 */ cvt.s.w $f16, $f10 -/* 0A6170 800A5570 E45003CC */ swc1 $f16, 0x3cc($v0) -.L800A5574: -/* 0A6174 800A5574 8D020000 */ lw $v0, ($t0) -/* 0A6178 800A5578 00000000 */ nop -/* 0A617C 800A557C 804303FC */ lb $v1, 0x3fc($v0) -/* 0A6180 800A5580 C44003EC */ lwc1 $f0, 0x3ec($v0) -/* 0A6184 800A5584 0064C021 */ addu $t8, $v1, $a0 -/* 0A6188 800A5588 44989000 */ mtc1 $t8, $f18 -/* 0A618C 800A558C 00000000 */ nop -/* 0A6190 800A5590 46809120 */ cvt.s.w $f4, $f18 -/* 0A6194 800A5594 4600203C */ c.lt.s $f4, $f0 -/* 0A6198 800A5598 00000000 */ nop -/* 0A619C 800A559C 45000007 */ bc1f .L800A55BC -/* 0A61A0 800A55A0 00000000 */ nop -/* 0A61A4 800A55A4 44843000 */ mtc1 $a0, $f6 -/* 0A61A8 800A55A8 00000000 */ nop -/* 0A61AC 800A55AC 46803220 */ cvt.s.w $f8, $f6 -/* 0A61B0 800A55B0 46080281 */ sub.s $f10, $f0, $f8 -/* 0A61B4 800A55B4 10000005 */ b .L800A55CC -/* 0A61B8 800A55B8 E44A03EC */ swc1 $f10, 0x3ec($v0) -.L800A55BC: -/* 0A61BC 800A55BC 44838000 */ mtc1 $v1, $f16 -/* 0A61C0 800A55C0 00000000 */ nop -/* 0A61C4 800A55C4 468084A0 */ cvt.s.w $f18, $f16 -/* 0A61C8 800A55C8 E45203EC */ swc1 $f18, 0x3ec($v0) -.L800A55CC: -/* 0A61CC 800A55CC 81390193 */ lb $t9, 0x193($t1) -/* 0A61D0 800A55D0 24040016 */ li $a0, 22 -/* 0A61D4 800A55D4 00196880 */ sll $t5, $t9, 2 -/* 0A61D8 800A55D8 012D6021 */ addu $t4, $t1, $t5 -/* 0A61DC 800A55DC 8D8B0128 */ lw $t3, 0x128($t4) -/* 0A61E0 800A55E0 00000000 */ nop -/* 0A61E4 800A55E4 2961003C */ slti $at, $t3, 0x3c -/* 0A61E8 800A55E8 14200007 */ bnez $at, .L800A5608 -/* 0A61EC 800A55EC 00000000 */ nop -/* 0A61F0 800A55F0 8D0E0000 */ lw $t6, ($t0) -/* 0A61F4 800A55F4 0C000741 */ jal func_80001D04 -/* 0A61F8 800A55F8 A1CF03DB */ sb $t7, 0x3db($t6) -/* 0A61FC 800A55FC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A6200 800A5600 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A6204 800A5604 24060001 */ li $a2, 1 -.L800A5608: -/* 0A6208 800A5608 8D020000 */ lw $v0, ($t0) -/* 0A620C 800A560C 00000000 */ nop -/* 0A6210 800A5610 805803DC */ lb $t8, 0x3dc($v0) -/* 0A6214 800A5614 C44403CC */ lwc1 $f4, 0x3cc($v0) -/* 0A6218 800A5618 44983000 */ mtc1 $t8, $f6 -/* 0A621C 800A561C 00000000 */ nop -/* 0A6220 800A5620 46803220 */ cvt.s.w $f8, $f6 -/* 0A6224 800A5624 46082032 */ c.eq.s $f4, $f8 -/* 0A6228 800A5628 00000000 */ nop -/* 0A622C 800A562C 45000037 */ bc1f .L800A570C -/* 0A6230 800A5630 00000000 */ nop -/* 0A6234 800A5634 805903FC */ lb $t9, 0x3fc($v0) -/* 0A6238 800A5638 C44A03EC */ lwc1 $f10, 0x3ec($v0) -/* 0A623C 800A563C 44998000 */ mtc1 $t9, $f16 -/* 0A6240 800A5640 00000000 */ nop -/* 0A6244 800A5644 468084A0 */ cvt.s.w $f18, $f16 -/* 0A6248 800A5648 46125032 */ c.eq.s $f10, $f18 -/* 0A624C 800A564C 00000000 */ nop -/* 0A6250 800A5650 4500002E */ bc1f .L800A570C -/* 0A6254 800A5654 00000000 */ nop -/* 0A6258 800A5658 804D03DD */ lb $t5, 0x3dd($v0) -/* 0A625C 800A565C 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A6260 800A5660 15A0002A */ bnez $t5, .L800A570C -/* 0A6264 800A5664 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -/* 0A6268 800A5668 8CAC0000 */ lw $t4, ($a1) -/* 0A626C 800A566C 00000000 */ nop -/* 0A6270 800A5670 15800007 */ bnez $t4, .L800A5690 -/* 0A6274 800A5674 00000000 */ nop -/* 0A6278 800A5678 0C000741 */ jal func_80001D04 -/* 0A627C 800A567C 24040100 */ li $a0, 256 -/* 0A6280 800A5680 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A6284 800A5684 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A6288 800A5688 8D020000 */ lw $v0, ($t0) -/* 0A628C 800A568C 24060001 */ li $a2, 1 -.L800A5690: -/* 0A6290 800A5690 1000001E */ b .L800A570C -/* 0A6294 800A5694 A04603DD */ sb $a2, 0x3dd($v0) -.L800A5698: -/* 0A6298 800A5698 1461001C */ bne $v1, $at, .L800A570C -/* 0A629C 800A569C 00000000 */ nop -/* 0A62A0 800A56A0 8FAB001C */ lw $t3, 0x1c($sp) -/* 0A62A4 800A56A4 C44403CC */ lwc1 $f4, 0x3cc($v0) -/* 0A62A8 800A56A8 000B7880 */ sll $t7, $t3, 2 -/* 0A62AC 800A56AC 01EB7823 */ subu $t7, $t7, $t3 -/* 0A62B0 800A56B0 000F7880 */ sll $t7, $t7, 2 -/* 0A62B4 800A56B4 01EB7821 */ addu $t7, $t7, $t3 -/* 0A62B8 800A56B8 448F3000 */ mtc1 $t7, $f6 -/* 0A62BC 800A56BC 3C01C348 */ li $at, 0xC3480000 # -200.000000 -/* 0A62C0 800A56C0 46803020 */ cvt.s.w $f0, $f6 -/* 0A62C4 800A56C4 44813000 */ mtc1 $at, $f6 -/* 0A62C8 800A56C8 46002201 */ sub.s $f8, $f4, $f0 -/* 0A62CC 800A56CC E44803CC */ swc1 $f8, 0x3cc($v0) -/* 0A62D0 800A56D0 8D020000 */ lw $v0, ($t0) -/* 0A62D4 800A56D4 00000000 */ nop -/* 0A62D8 800A56D8 C45003EC */ lwc1 $f16, 0x3ec($v0) -/* 0A62DC 800A56DC 00000000 */ nop -/* 0A62E0 800A56E0 46008280 */ add.s $f10, $f16, $f0 -/* 0A62E4 800A56E4 E44A03EC */ swc1 $f10, 0x3ec($v0) -/* 0A62E8 800A56E8 8D020000 */ lw $v0, ($t0) -/* 0A62EC 800A56EC 00000000 */ nop -/* 0A62F0 800A56F0 C45203CC */ lwc1 $f18, 0x3cc($v0) -/* 0A62F4 800A56F4 00000000 */ nop -/* 0A62F8 800A56F8 4606903C */ c.lt.s $f18, $f6 -/* 0A62FC 800A56FC 00000000 */ nop -/* 0A6300 800A5700 45000002 */ bc1f .L800A570C -/* 0A6304 800A5704 00000000 */ nop -/* 0A6308 800A5708 A04003DA */ sb $zero, 0x3da($v0) -.L800A570C: -/* 0A630C 800A570C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A6310 800A5710 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A6314 800A5714 8C820000 */ lw $v0, ($a0) -/* 0A6318 800A5718 3C18FA00 */ lui $t8, 0xfa00 -/* 0A631C 800A571C 244E0008 */ addiu $t6, $v0, 8 -/* 0A6320 800A5720 AC8E0000 */ sw $t6, ($a0) -/* 0A6324 800A5724 2419FFA0 */ li $t9, -96 -/* 0A6328 800A5728 AC590004 */ sw $t9, 4($v0) -/* 0A632C 800A572C AC580000 */ sw $t8, ($v0) -/* 0A6330 800A5730 8D070000 */ lw $a3, ($t0) -/* 0A6334 800A5734 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A6338 800A5738 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A633C 800A573C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A6340 800A5740 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A6344 800A5744 0C02A980 */ jal func_800AA600 -/* 0A6348 800A5748 24E703E0 */ addiu $a3, $a3, 0x3e0 -/* 0A634C 800A574C 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A6350 800A5750 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A6354 800A5754 8D070000 */ lw $a3, ($t0) -/* 0A6358 800A5758 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A635C 800A575C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A6360 800A5760 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A6364 800A5764 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A6368 800A5768 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A636C 800A576C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A6370 800A5770 0C02A980 */ jal func_800AA600 -/* 0A6374 800A5774 24E703C0 */ addiu $a3, $a3, 0x3c0 -/* 0A6378 800A5778 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A637C 800A577C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A6380 800A5780 8C820000 */ lw $v0, ($a0) -/* 0A6384 800A5784 3C0CFA00 */ lui $t4, 0xfa00 -/* 0A6388 800A5788 244D0008 */ addiu $t5, $v0, 8 -/* 0A638C 800A578C AC8D0000 */ sw $t5, ($a0) -/* 0A6390 800A5790 240BFFFF */ li $t3, -1 -/* 0A6394 800A5794 AC4B0004 */ sw $t3, 4($v0) -/* 0A6398 800A5798 100000AC */ b .L800A5A4C -/* 0A639C 800A579C AC4C0000 */ sw $t4, ($v0) -/* 0A63A0 800A57A0 24010003 */ li $at, 3 -.L800A57A4: -/* 0A63A4 800A57A4 146100A9 */ bne $v1, $at, .L800A5A4C -/* 0A63A8 800A57A8 00000000 */ nop -/* 0A63AC 800A57AC 804303DB */ lb $v1, 0x3db($v0) -/* 0A63B0 800A57B0 2401FFFF */ li $at, -1 -/* 0A63B4 800A57B4 14610064 */ bne $v1, $at, .L800A5948 -/* 0A63B8 800A57B8 00000000 */ nop -/* 0A63BC 800A57BC 8FA4001C */ lw $a0, 0x1c($sp) -/* 0A63C0 800A57C0 804303DC */ lb $v1, 0x3dc($v0) -/* 0A63C4 800A57C4 00047880 */ sll $t7, $a0, 2 -/* 0A63C8 800A57C8 01E47823 */ subu $t7, $t7, $a0 -/* 0A63CC 800A57CC 000F7880 */ sll $t7, $t7, 2 -/* 0A63D0 800A57D0 01E47821 */ addu $t7, $t7, $a0 -/* 0A63D4 800A57D4 006F7021 */ addu $t6, $v1, $t7 -/* 0A63D8 800A57D8 448E2000 */ mtc1 $t6, $f4 -/* 0A63DC 800A57DC C44003CC */ lwc1 $f0, 0x3cc($v0) -/* 0A63E0 800A57E0 46802220 */ cvt.s.w $f8, $f4 -/* 0A63E4 800A57E4 01E02025 */ move $a0, $t7 -/* 0A63E8 800A57E8 00002825 */ move $a1, $zero -/* 0A63EC 800A57EC 4600403C */ c.lt.s $f8, $f0 -/* 0A63F0 800A57F0 00000000 */ nop -/* 0A63F4 800A57F4 45000007 */ bc1f .L800A5814 -/* 0A63F8 800A57F8 00000000 */ nop -/* 0A63FC 800A57FC 44848000 */ mtc1 $a0, $f16 -/* 0A6400 800A5800 00000000 */ nop -/* 0A6404 800A5804 468082A0 */ cvt.s.w $f10, $f16 -/* 0A6408 800A5808 460A0481 */ sub.s $f18, $f0, $f10 -/* 0A640C 800A580C 10000005 */ b .L800A5824 -/* 0A6410 800A5810 E45203CC */ swc1 $f18, 0x3cc($v0) -.L800A5814: -/* 0A6414 800A5814 44833000 */ mtc1 $v1, $f6 -/* 0A6418 800A5818 00000000 */ nop -/* 0A641C 800A581C 46803120 */ cvt.s.w $f4, $f6 -/* 0A6420 800A5820 E44403CC */ swc1 $f4, 0x3cc($v0) -.L800A5824: -/* 0A6424 800A5824 8D020000 */ lw $v0, ($t0) -/* 0A6428 800A5828 00000000 */ nop -/* 0A642C 800A582C 804303BC */ lb $v1, 0x3bc($v0) -/* 0A6430 800A5830 C44003AC */ lwc1 $f0, 0x3ac($v0) -/* 0A6434 800A5834 0064C023 */ subu $t8, $v1, $a0 -/* 0A6438 800A5838 44984000 */ mtc1 $t8, $f8 -/* 0A643C 800A583C 00000000 */ nop -/* 0A6440 800A5840 46804420 */ cvt.s.w $f16, $f8 -/* 0A6444 800A5844 4610003C */ c.lt.s $f0, $f16 -/* 0A6448 800A5848 00000000 */ nop -/* 0A644C 800A584C 45000007 */ bc1f .L800A586C -/* 0A6450 800A5850 00000000 */ nop -/* 0A6454 800A5854 44845000 */ mtc1 $a0, $f10 -/* 0A6458 800A5858 00000000 */ nop -/* 0A645C 800A585C 468054A0 */ cvt.s.w $f18, $f10 -/* 0A6460 800A5860 46120180 */ add.s $f6, $f0, $f18 -/* 0A6464 800A5864 10000005 */ b .L800A587C -/* 0A6468 800A5868 E44603AC */ swc1 $f6, 0x3ac($v0) -.L800A586C: -/* 0A646C 800A586C 44832000 */ mtc1 $v1, $f4 -/* 0A6470 800A5870 00000000 */ nop -/* 0A6474 800A5874 46802220 */ cvt.s.w $f8, $f4 -/* 0A6478 800A5878 E44803AC */ swc1 $f8, 0x3ac($v0) -.L800A587C: -/* 0A647C 800A587C 81390193 */ lb $t9, 0x193($t1) -/* 0A6480 800A5880 24040016 */ li $a0, 22 -/* 0A6484 800A5884 00196880 */ sll $t5, $t9, 2 -/* 0A6488 800A5888 012D6021 */ addu $t4, $t1, $t5 -/* 0A648C 800A588C 8D8B0128 */ lw $t3, 0x128($t4) -/* 0A6490 800A5890 00000000 */ nop -/* 0A6494 800A5894 2961003C */ slti $at, $t3, 0x3c -/* 0A6498 800A5898 14200007 */ bnez $at, .L800A58B8 -/* 0A649C 800A589C 00000000 */ nop -/* 0A64A0 800A58A0 8D0F0000 */ lw $t7, ($t0) -/* 0A64A4 800A58A4 0C000741 */ jal func_80001D04 -/* 0A64A8 800A58A8 A1E603DB */ sb $a2, 0x3db($t7) -/* 0A64AC 800A58AC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A64B0 800A58B0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A64B4 800A58B4 24060001 */ li $a2, 1 -.L800A58B8: -/* 0A64B8 800A58B8 8D020000 */ lw $v0, ($t0) -/* 0A64BC 800A58BC 00000000 */ nop -/* 0A64C0 800A58C0 804E03DC */ lb $t6, 0x3dc($v0) -/* 0A64C4 800A58C4 C45003CC */ lwc1 $f16, 0x3cc($v0) -/* 0A64C8 800A58C8 448E5000 */ mtc1 $t6, $f10 -/* 0A64CC 800A58CC 00000000 */ nop -/* 0A64D0 800A58D0 468054A0 */ cvt.s.w $f18, $f10 -/* 0A64D4 800A58D4 46128032 */ c.eq.s $f16, $f18 -/* 0A64D8 800A58D8 00000000 */ nop -/* 0A64DC 800A58DC 45000037 */ bc1f .L800A59BC -/* 0A64E0 800A58E0 00000000 */ nop -/* 0A64E4 800A58E4 805803BC */ lb $t8, 0x3bc($v0) -/* 0A64E8 800A58E8 C44603AC */ lwc1 $f6, 0x3ac($v0) -/* 0A64EC 800A58EC 44982000 */ mtc1 $t8, $f4 -/* 0A64F0 800A58F0 00000000 */ nop -/* 0A64F4 800A58F4 46802220 */ cvt.s.w $f8, $f4 -/* 0A64F8 800A58F8 46083032 */ c.eq.s $f6, $f8 -/* 0A64FC 800A58FC 00000000 */ nop -/* 0A6500 800A5900 4500002E */ bc1f .L800A59BC -/* 0A6504 800A5904 00000000 */ nop -/* 0A6508 800A5908 805903DD */ lb $t9, 0x3dd($v0) -/* 0A650C 800A590C 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A6510 800A5910 1720002A */ bnez $t9, .L800A59BC -/* 0A6514 800A5914 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -/* 0A6518 800A5918 8CAD0000 */ lw $t5, ($a1) -/* 0A651C 800A591C 00000000 */ nop -/* 0A6520 800A5920 15A00007 */ bnez $t5, .L800A5940 -/* 0A6524 800A5924 00000000 */ nop -/* 0A6528 800A5928 0C000741 */ jal func_80001D04 -/* 0A652C 800A592C 24040101 */ li $a0, 257 -/* 0A6530 800A5930 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A6534 800A5934 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A6538 800A5938 8D020000 */ lw $v0, ($t0) -/* 0A653C 800A593C 24060001 */ li $a2, 1 -.L800A5940: -/* 0A6540 800A5940 1000001E */ b .L800A59BC -/* 0A6544 800A5944 A04603DD */ sb $a2, 0x3dd($v0) -.L800A5948: -/* 0A6548 800A5948 14C3001C */ bne $a2, $v1, .L800A59BC -/* 0A654C 800A594C 00000000 */ nop -/* 0A6550 800A5950 8FAC001C */ lw $t4, 0x1c($sp) -/* 0A6554 800A5954 C45003CC */ lwc1 $f16, 0x3cc($v0) -/* 0A6558 800A5958 000C5880 */ sll $t3, $t4, 2 -/* 0A655C 800A595C 016C5823 */ subu $t3, $t3, $t4 -/* 0A6560 800A5960 000B5880 */ sll $t3, $t3, 2 -/* 0A6564 800A5964 016C5821 */ addu $t3, $t3, $t4 -/* 0A6568 800A5968 448B5000 */ mtc1 $t3, $f10 -/* 0A656C 800A596C 3C014348 */ li $at, 0x43480000 # 200.000000 -/* 0A6570 800A5970 46805020 */ cvt.s.w $f0, $f10 -/* 0A6574 800A5974 44814000 */ mtc1 $at, $f8 -/* 0A6578 800A5978 46008480 */ add.s $f18, $f16, $f0 -/* 0A657C 800A597C E45203CC */ swc1 $f18, 0x3cc($v0) -/* 0A6580 800A5980 8D020000 */ lw $v0, ($t0) -/* 0A6584 800A5984 00000000 */ nop -/* 0A6588 800A5988 C44403AC */ lwc1 $f4, 0x3ac($v0) -/* 0A658C 800A598C 00000000 */ nop -/* 0A6590 800A5990 46002181 */ sub.s $f6, $f4, $f0 -/* 0A6594 800A5994 E44603AC */ swc1 $f6, 0x3ac($v0) -/* 0A6598 800A5998 8D020000 */ lw $v0, ($t0) -/* 0A659C 800A599C 00000000 */ nop -/* 0A65A0 800A59A0 C44A03CC */ lwc1 $f10, 0x3cc($v0) -/* 0A65A4 800A59A4 00000000 */ nop -/* 0A65A8 800A59A8 460A403C */ c.lt.s $f8, $f10 -/* 0A65AC 800A59AC 00000000 */ nop -/* 0A65B0 800A59B0 45000002 */ bc1f .L800A59BC -/* 0A65B4 800A59B4 00000000 */ nop -/* 0A65B8 800A59B8 A04003DA */ sb $zero, 0x3da($v0) -.L800A59BC: -/* 0A65BC 800A59BC 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A65C0 800A59C0 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A65C4 800A59C4 8C820000 */ lw $v0, ($a0) -/* 0A65C8 800A59C8 3C0EFA00 */ lui $t6, 0xfa00 -/* 0A65CC 800A59CC 244F0008 */ addiu $t7, $v0, 8 -/* 0A65D0 800A59D0 AC8F0000 */ sw $t7, ($a0) -/* 0A65D4 800A59D4 2418FFA0 */ li $t8, -96 -/* 0A65D8 800A59D8 AC580004 */ sw $t8, 4($v0) -/* 0A65DC 800A59DC AC4E0000 */ sw $t6, ($v0) -/* 0A65E0 800A59E0 8D070000 */ lw $a3, ($t0) -/* 0A65E4 800A59E4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A65E8 800A59E8 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A65EC 800A59EC 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A65F0 800A59F0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A65F4 800A59F4 0C02A980 */ jal func_800AA600 -/* 0A65F8 800A59F8 24E703A0 */ addiu $a3, $a3, 0x3a0 -/* 0A65FC 800A59FC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A6600 800A5A00 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A6604 800A5A04 8D070000 */ lw $a3, ($t0) -/* 0A6608 800A5A08 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A660C 800A5A0C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A6610 800A5A10 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A6614 800A5A14 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A6618 800A5A18 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A661C 800A5A1C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A6620 800A5A20 0C02A980 */ jal func_800AA600 -/* 0A6624 800A5A24 24E703C0 */ addiu $a3, $a3, 0x3c0 -/* 0A6628 800A5A28 3C028012 */ lui $v0, %hi(D_80126CFC) # $v0, 0x8012 -/* 0A662C 800A5A2C 8C426CFC */ lw $v0, %lo(D_80126CFC)($v0) -/* 0A6630 800A5A30 3C018012 */ lui $at, %hi(D_80126CFC) # $at, 0x8012 -/* 0A6634 800A5A34 24590008 */ addiu $t9, $v0, 8 -/* 0A6638 800A5A38 AC396CFC */ sw $t9, %lo(D_80126CFC)($at) -/* 0A663C 800A5A3C 3C0DFA00 */ lui $t5, 0xfa00 -/* 0A6640 800A5A40 240CFFFF */ li $t4, -1 -/* 0A6644 800A5A44 AC4C0004 */ sw $t4, 4($v0) -/* 0A6648 800A5A48 AC4D0000 */ sw $t5, ($v0) -.L800A5A4C: -/* 0A664C 800A5A4C 0C01EFC7 */ jal func_8007BF1C -/* 0A6650 800A5A50 00002025 */ move $a0, $zero -/* 0A6654 800A5A54 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A6658 800A5A58 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0A665C 800A5A5C 03E00008 */ jr $ra -/* 0A6660 800A5A60 00000000 */ nop - -glabel func_800A5A64 -/* 0A6664 800A5A64 3C0E8012 */ lui $t6, %hi(D_80126D0C) # $t6, 0x8012 -/* 0A6668 800A5A68 8DCE6D0C */ lw $t6, %lo(D_80126D0C)($t6) -/* 0A666C 800A5A6C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0A6670 800A5A70 24060001 */ li $a2, 1 -/* 0A6674 800A5A74 AFBF0014 */ sw $ra, 0x14($sp) -/* 0A6678 800A5A78 AFA40018 */ sw $a0, 0x18($sp) -/* 0A667C 800A5A7C 14CE0003 */ bne $a2, $t6, .L800A5A8C -/* 0A6680 800A5A80 AFA5001C */ sw $a1, 0x1c($sp) -/* 0A6684 800A5A84 0C01EFC7 */ jal func_8007BF1C -/* 0A6688 800A5A88 00C02025 */ move $a0, $a2 -.L800A5A8C: -/* 0A668C 800A5A8C 8FAF0018 */ lw $t7, 0x18($sp) -/* 0A6690 800A5A90 3C198012 */ lui $t9, %hi(D_80126D0C) # $t9, 0x8012 -/* 0A6694 800A5A94 91F801FC */ lbu $t8, 0x1fc($t7) -/* 0A6698 800A5A98 00000000 */ nop -/* 0A669C 800A5A9C 2B010079 */ slti $at, $t8, 0x79 -/* 0A66A0 800A5AA0 14200047 */ bnez $at, .L800A5BC0 -/* 0A66A4 800A5AA4 00000000 */ nop -/* 0A66A8 800A5AA8 8F396D0C */ lw $t9, %lo(D_80126D0C)($t9) -/* 0A66AC 800A5AAC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A66B0 800A5AB0 1720000C */ bnez $t9, .L800A5AE4 -/* 0A66B4 800A5AB4 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A66B8 800A5AB8 8D020000 */ lw $v0, ($t0) -/* 0A66BC 800A5ABC 00000000 */ nop -/* 0A66C0 800A5AC0 8049047C */ lb $t1, 0x47c($v0) -/* 0A66C4 800A5AC4 C444046C */ lwc1 $f4, 0x46c($v0) -/* 0A66C8 800A5AC8 44893000 */ mtc1 $t1, $f6 -/* 0A66CC 800A5ACC 00000000 */ nop -/* 0A66D0 800A5AD0 46803220 */ cvt.s.w $f8, $f6 -/* 0A66D4 800A5AD4 46082032 */ c.eq.s $f4, $f8 -/* 0A66D8 800A5AD8 00000000 */ nop -/* 0A66DC 800A5ADC 45000038 */ bc1f .L800A5BC0 -/* 0A66E0 800A5AE0 00000000 */ nop -.L800A5AE4: -/* 0A66E4 800A5AE4 0C01BAA8 */ jal func_8006EAA0 -/* 0A66E8 800A5AE8 00000000 */ nop -/* 0A66EC 800A5AEC 14400034 */ bnez $v0, .L800A5BC0 -/* 0A66F0 800A5AF0 3C038012 */ lui $v1, %hi(D_80126D38) # $v1, 0x8012 -/* 0A66F4 800A5AF4 24636D38 */ addiu $v1, %lo(D_80126D38) # addiu $v1, $v1, 0x6d38 -/* 0A66F8 800A5AF8 90620000 */ lbu $v0, ($v1) -/* 0A66FC 800A5AFC 3C078012 */ lui $a3, %hi(D_80126D6C) # $a3, 0x8012 -/* 0A6700 800A5B00 14400004 */ bnez $v0, .L800A5B14 -/* 0A6704 800A5B04 24E76D6C */ addiu $a3, %lo(D_80126D6C) # addiu $a3, $a3, 0x6d6c -/* 0A6708 800A5B08 8CEA0000 */ lw $t2, ($a3) -/* 0A670C 800A5B0C 00000000 */ nop -/* 0A6710 800A5B10 15400024 */ bnez $t2, .L800A5BA4 -.L800A5B14: -/* 0A6714 800A5B14 3C068012 */ lui $a2, %hi(D_80126D40) # $a2, 0x8012 -/* 0A6718 800A5B18 24C66D40 */ addiu $a2, %lo(D_80126D40) # addiu $a2, $a2, 0x6d40 -/* 0A671C 800A5B1C 8CCB0000 */ lw $t3, ($a2) -/* 0A6720 800A5B20 3C078012 */ lui $a3, %hi(D_80126D6C) # $a3, 0x8012 -/* 0A6724 800A5B24 1560001F */ bnez $t3, .L800A5BA4 -/* 0A6728 800A5B28 24E76D6C */ addiu $a3, %lo(D_80126D6C) # addiu $a3, $a3, 0x6d6c -/* 0A672C 800A5B2C 14400009 */ bnez $v0, .L800A5B54 -/* 0A6730 800A5B30 24040001 */ li $a0, 1 -/* 0A6734 800A5B34 0C01BE53 */ jal func_8006F94C -/* 0A6738 800A5B38 2405000A */ li $a1, 10 -/* 0A673C 800A5B3C 3C038012 */ lui $v1, %hi(D_80126D38) # $v1, 0x8012 -/* 0A6740 800A5B40 3C068012 */ lui $a2, %hi(D_80126D40) # $a2, 0x8012 -/* 0A6744 800A5B44 28410008 */ slti $at, $v0, 8 -/* 0A6748 800A5B48 24C66D40 */ addiu $a2, %lo(D_80126D40) # addiu $a2, $a2, 0x6d40 -/* 0A674C 800A5B4C 1420000E */ bnez $at, .L800A5B88 -/* 0A6750 800A5B50 24636D38 */ addiu $v1, %lo(D_80126D38) # addiu $v1, $v1, 0x6d38 -.L800A5B54: -/* 0A6754 800A5B54 A0600000 */ sb $zero, ($v1) -/* 0A6758 800A5B58 24040066 */ li $a0, 102 -/* 0A675C 800A5B5C 0C000741 */ jal func_80001D04 -/* 0A6760 800A5B60 00C02825 */ move $a1, $a2 -/* 0A6764 800A5B64 24040001 */ li $a0, 1 -/* 0A6768 800A5B68 0C01BE53 */ jal func_8006F94C -/* 0A676C 800A5B6C 240501E0 */ li $a1, 480 -/* 0A6770 800A5B70 244C0078 */ addiu $t4, $v0, 0x78 -/* 0A6774 800A5B74 3C018012 */ lui $at, %hi(D_80126D6C) # $at, 0x8012 -/* 0A6778 800A5B78 3C078012 */ lui $a3, %hi(D_80126D6C) # $a3, 0x8012 -/* 0A677C 800A5B7C 24E76D6C */ addiu $a3, %lo(D_80126D6C) # addiu $a3, $a3, 0x6d6c -/* 0A6780 800A5B80 10000008 */ b .L800A5BA4 -/* 0A6784 800A5B84 AC2C6D6C */ sw $t4, %lo(D_80126D6C)($at) -.L800A5B88: -/* 0A6788 800A5B88 240D0001 */ li $t5, 1 -/* 0A678C 800A5B8C A06D0000 */ sb $t5, ($v1) -/* 0A6790 800A5B90 24040067 */ li $a0, 103 -/* 0A6794 800A5B94 0C000741 */ jal func_80001D04 -/* 0A6798 800A5B98 00C02825 */ move $a1, $a2 -/* 0A679C 800A5B9C 3C078012 */ lui $a3, %hi(D_80126D6C) # $a3, 0x8012 -/* 0A67A0 800A5BA0 24E76D6C */ addiu $a3, %lo(D_80126D6C) # addiu $a3, $a3, 0x6d6c -.L800A5BA4: -/* 0A67A4 800A5BA4 8CEE0000 */ lw $t6, ($a3) -/* 0A67A8 800A5BA8 8FAF001C */ lw $t7, 0x1c($sp) -/* 0A67AC 800A5BAC 00000000 */ nop -/* 0A67B0 800A5BB0 01CFC023 */ subu $t8, $t6, $t7 -/* 0A67B4 800A5BB4 07010002 */ bgez $t8, .L800A5BC0 -/* 0A67B8 800A5BB8 ACF80000 */ sw $t8, ($a3) -/* 0A67BC 800A5BBC ACE00000 */ sw $zero, ($a3) -.L800A5BC0: -/* 0A67C0 800A5BC0 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A67C4 800A5BC4 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A67C8 800A5BC8 8D020000 */ lw $v0, ($t0) -/* 0A67CC 800A5BCC 8FB80018 */ lw $t8, 0x18($sp) -/* 0A67D0 800A5BD0 8043047A */ lb $v1, 0x47a($v0) -/* 0A67D4 800A5BD4 24060001 */ li $a2, 1 -/* 0A67D8 800A5BD8 10600084 */ beqz $v1, .L800A5DEC -/* 0A67DC 800A5BDC 00000000 */ nop -/* 0A67E0 800A5BE0 14C300C7 */ bne $a2, $v1, .L800A5F00 -/* 0A67E4 800A5BE4 00000000 */ nop -/* 0A67E8 800A5BE8 8043047B */ lb $v1, 0x47b($v0) -/* 0A67EC 800A5BEC 8FA9001C */ lw $t1, 0x1c($sp) -/* 0A67F0 800A5BF0 14C30037 */ bne $a2, $v1, .L800A5CD0 -/* 0A67F4 800A5BF4 2401FFFF */ li $at, -1 -/* 0A67F8 800A5BF8 00095080 */ sll $t2, $t1, 2 -/* 0A67FC 800A5BFC 01495023 */ subu $t2, $t2, $t1 -/* 0A6800 800A5C00 000A5080 */ sll $t2, $t2, 2 -/* 0A6804 800A5C04 01495021 */ addu $t2, $t2, $t1 -/* 0A6808 800A5C08 448A5000 */ mtc1 $t2, $f10 -/* 0A680C 800A5C0C C450046C */ lwc1 $f16, 0x46c($v0) -/* 0A6810 800A5C10 46805020 */ cvt.s.w $f0, $f10 -/* 0A6814 800A5C14 240FFFFF */ li $t7, -1 -/* 0A6818 800A5C18 24040016 */ li $a0, 22 -/* 0A681C 800A5C1C 46008480 */ add.s $f18, $f16, $f0 -/* 0A6820 800A5C20 00002825 */ move $a1, $zero -/* 0A6824 800A5C24 E452046C */ swc1 $f18, 0x46c($v0) -/* 0A6828 800A5C28 8D020000 */ lw $v0, ($t0) -/* 0A682C 800A5C2C 00000000 */ nop -/* 0A6830 800A5C30 804B047C */ lb $t3, 0x47c($v0) -/* 0A6834 800A5C34 C444046C */ lwc1 $f4, 0x46c($v0) -/* 0A6838 800A5C38 448B3000 */ mtc1 $t3, $f6 -/* 0A683C 800A5C3C 00000000 */ nop -/* 0A6840 800A5C40 468030A0 */ cvt.s.w $f2, $f6 -/* 0A6844 800A5C44 4604103C */ c.lt.s $f2, $f4 -/* 0A6848 800A5C48 00000000 */ nop -/* 0A684C 800A5C4C 45000004 */ bc1f .L800A5C60 -/* 0A6850 800A5C50 00000000 */ nop -/* 0A6854 800A5C54 E442046C */ swc1 $f2, 0x46c($v0) -/* 0A6858 800A5C58 8D020000 */ lw $v0, ($t0) -/* 0A685C 800A5C5C 00000000 */ nop -.L800A5C60: -/* 0A6860 800A5C60 C448048C */ lwc1 $f8, 0x48c($v0) -/* 0A6864 800A5C64 00000000 */ nop -/* 0A6868 800A5C68 46004281 */ sub.s $f10, $f8, $f0 -/* 0A686C 800A5C6C E44A048C */ swc1 $f10, 0x48c($v0) -/* 0A6870 800A5C70 8D020000 */ lw $v0, ($t0) -/* 0A6874 800A5C74 00000000 */ nop -/* 0A6878 800A5C78 804C049C */ lb $t4, 0x49c($v0) -/* 0A687C 800A5C7C C452048C */ lwc1 $f18, 0x48c($v0) -/* 0A6880 800A5C80 448C8000 */ mtc1 $t4, $f16 -/* 0A6884 800A5C84 00000000 */ nop -/* 0A6888 800A5C88 468080A0 */ cvt.s.w $f2, $f16 -/* 0A688C 800A5C8C 4602903C */ c.lt.s $f18, $f2 -/* 0A6890 800A5C90 00000000 */ nop -/* 0A6894 800A5C94 45000003 */ bc1f .L800A5CA4 -/* 0A6898 800A5C98 8FAD0018 */ lw $t5, 0x18($sp) -/* 0A689C 800A5C9C E442048C */ swc1 $f2, 0x48c($v0) -/* 0A68A0 800A5CA0 8FAD0018 */ lw $t5, 0x18($sp) -.L800A5CA4: -/* 0A68A4 800A5CA4 00000000 */ nop -/* 0A68A8 800A5CA8 91AE01FC */ lbu $t6, 0x1fc($t5) -/* 0A68AC 800A5CAC 00000000 */ nop -/* 0A68B0 800A5CB0 29C1005B */ slti $at, $t6, 0x5b -/* 0A68B4 800A5CB4 10200023 */ beqz $at, .L800A5D44 -/* 0A68B8 800A5CB8 00000000 */ nop -/* 0A68BC 800A5CBC 8D180000 */ lw $t8, ($t0) -/* 0A68C0 800A5CC0 0C000741 */ jal func_80001D04 -/* 0A68C4 800A5CC4 A30F047B */ sb $t7, 0x47b($t8) -/* 0A68C8 800A5CC8 1000001E */ b .L800A5D44 -/* 0A68CC 800A5CCC 00000000 */ nop -.L800A5CD0: -/* 0A68D0 800A5CD0 1461001C */ bne $v1, $at, .L800A5D44 -/* 0A68D4 800A5CD4 00000000 */ nop -/* 0A68D8 800A5CD8 8FB9001C */ lw $t9, 0x1c($sp) -/* 0A68DC 800A5CDC C444046C */ lwc1 $f4, 0x46c($v0) -/* 0A68E0 800A5CE0 00194880 */ sll $t1, $t9, 2 -/* 0A68E4 800A5CE4 01394823 */ subu $t1, $t1, $t9 -/* 0A68E8 800A5CE8 00094880 */ sll $t1, $t1, 2 -/* 0A68EC 800A5CEC 01394821 */ addu $t1, $t1, $t9 -/* 0A68F0 800A5CF0 44893000 */ mtc1 $t1, $f6 -/* 0A68F4 800A5CF4 3C01C348 */ li $at, 0xC3480000 # -200.000000 -/* 0A68F8 800A5CF8 46803020 */ cvt.s.w $f0, $f6 -/* 0A68FC 800A5CFC 44813000 */ mtc1 $at, $f6 -/* 0A6900 800A5D00 46002201 */ sub.s $f8, $f4, $f0 -/* 0A6904 800A5D04 E448046C */ swc1 $f8, 0x46c($v0) -/* 0A6908 800A5D08 8D020000 */ lw $v0, ($t0) -/* 0A690C 800A5D0C 00000000 */ nop -/* 0A6910 800A5D10 C44A048C */ lwc1 $f10, 0x48c($v0) -/* 0A6914 800A5D14 00000000 */ nop -/* 0A6918 800A5D18 46005400 */ add.s $f16, $f10, $f0 -/* 0A691C 800A5D1C E450048C */ swc1 $f16, 0x48c($v0) -/* 0A6920 800A5D20 8D020000 */ lw $v0, ($t0) -/* 0A6924 800A5D24 00000000 */ nop -/* 0A6928 800A5D28 C452046C */ lwc1 $f18, 0x46c($v0) -/* 0A692C 800A5D2C 00000000 */ nop -/* 0A6930 800A5D30 4606903C */ c.lt.s $f18, $f6 -/* 0A6934 800A5D34 00000000 */ nop -/* 0A6938 800A5D38 45000002 */ bc1f .L800A5D44 -/* 0A693C 800A5D3C 00000000 */ nop -/* 0A6940 800A5D40 A040047A */ sb $zero, 0x47a($v0) -.L800A5D44: -/* 0A6944 800A5D44 0C01BAA8 */ jal func_8006EAA0 -/* 0A6948 800A5D48 00000000 */ nop -/* 0A694C 800A5D4C 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A6950 800A5D50 1440006B */ bnez $v0, .L800A5F00 -/* 0A6954 800A5D54 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A6958 800A5D58 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A695C 800A5D5C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A6960 800A5D60 8C830000 */ lw $v1, ($a0) -/* 0A6964 800A5D64 3C0BFA00 */ lui $t3, 0xfa00 -/* 0A6968 800A5D68 246A0008 */ addiu $t2, $v1, 8 -/* 0A696C 800A5D6C AC8A0000 */ sw $t2, ($a0) -/* 0A6970 800A5D70 240CFFA0 */ li $t4, -96 -/* 0A6974 800A5D74 AC6C0004 */ sw $t4, 4($v1) -/* 0A6978 800A5D78 AC6B0000 */ sw $t3, ($v1) -/* 0A697C 800A5D7C 8D070000 */ lw $a3, ($t0) -/* 0A6980 800A5D80 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A6984 800A5D84 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A6988 800A5D88 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A698C 800A5D8C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A6990 800A5D90 0C02A980 */ jal func_800AA600 -/* 0A6994 800A5D94 24E70460 */ addiu $a3, $a3, 0x460 -/* 0A6998 800A5D98 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A699C 800A5D9C 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A69A0 800A5DA0 8D070000 */ lw $a3, ($t0) -/* 0A69A4 800A5DA4 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A69A8 800A5DA8 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A69AC 800A5DAC 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A69B0 800A5DB0 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A69B4 800A5DB4 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A69B8 800A5DB8 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A69BC 800A5DBC 0C02A980 */ jal func_800AA600 -/* 0A69C0 800A5DC0 24E70480 */ addiu $a3, $a3, 0x480 -/* 0A69C4 800A5DC4 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A69C8 800A5DC8 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A69CC 800A5DCC 8C830000 */ lw $v1, ($a0) -/* 0A69D0 800A5DD0 3C0EFA00 */ lui $t6, 0xfa00 -/* 0A69D4 800A5DD4 246D0008 */ addiu $t5, $v1, 8 -/* 0A69D8 800A5DD8 AC8D0000 */ sw $t5, ($a0) -/* 0A69DC 800A5DDC 240FFFFF */ li $t7, -1 -/* 0A69E0 800A5DE0 AC6F0004 */ sw $t7, 4($v1) -/* 0A69E4 800A5DE4 10000046 */ b .L800A5F00 -/* 0A69E8 800A5DE8 AC6E0000 */ sw $t6, ($v1) -.L800A5DEC: -/* 0A69EC 800A5DEC 931901FC */ lbu $t9, 0x1fc($t8) -/* 0A69F0 800A5DF0 00000000 */ nop -/* 0A69F4 800A5DF4 2B210079 */ slti $at, $t9, 0x79 -/* 0A69F8 800A5DF8 14200041 */ bnez $at, .L800A5F00 -/* 0A69FC 800A5DFC 00000000 */ nop -/* 0A6A00 800A5E00 A046047A */ sb $a2, 0x47a($v0) -/* 0A6A04 800A5E04 8D090000 */ lw $t1, ($t0) -/* 0A6A08 800A5E08 240AFFE1 */ li $t2, -31 -/* 0A6A0C 800A5E0C A126047B */ sb $a2, 0x47b($t1) -/* 0A6A10 800A5E10 8D0B0000 */ lw $t3, ($t0) -/* 0A6A14 800A5E14 240C0034 */ li $t4, 52 -/* 0A6A18 800A5E18 A16A047C */ sb $t2, 0x47c($t3) -/* 0A6A1C 800A5E1C 8D0D0000 */ lw $t5, ($t0) -/* 0A6A20 800A5E20 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 -/* 0A6A24 800A5E24 A1AC049C */ sb $t4, 0x49c($t5) -/* 0A6A28 800A5E28 8D0E0000 */ lw $t6, ($t0) -/* 0A6A2C 800A5E2C 240FFFEB */ li $t7, -21 -/* 0A6A30 800A5E30 A1C0047D */ sb $zero, 0x47d($t6) -/* 0A6A34 800A5E34 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) -/* 0A6A38 800A5E38 00000000 */ nop -/* 0A6A3C 800A5E3C 14C30007 */ bne $a2, $v1, .L800A5E5C -/* 0A6A40 800A5E40 28610002 */ slti $at, $v1, 2 -/* 0A6A44 800A5E44 8D180000 */ lw $t8, ($t0) -/* 0A6A48 800A5E48 2419002A */ li $t9, 42 -/* 0A6A4C 800A5E4C A30F047C */ sb $t7, 0x47c($t8) -/* 0A6A50 800A5E50 8D090000 */ lw $t1, ($t0) -/* 0A6A54 800A5E54 10000017 */ b .L800A5EB4 -/* 0A6A58 800A5E58 A139049C */ sb $t9, 0x49c($t1) -.L800A5E5C: -/* 0A6A5C 800A5E5C 14200015 */ bnez $at, .L800A5EB4 -/* 0A6A60 800A5E60 00000000 */ nop -/* 0A6A64 800A5E64 8FAA0018 */ lw $t2, 0x18($sp) -/* 0A6A68 800A5E68 24010002 */ li $at, 2 -/* 0A6A6C 800A5E6C 85420000 */ lh $v0, ($t2) -/* 0A6A70 800A5E70 240BFF9C */ li $t3, -100 -/* 0A6A74 800A5E74 10400003 */ beqz $v0, .L800A5E84 -/* 0A6A78 800A5E78 00000000 */ nop -/* 0A6A7C 800A5E7C 14410007 */ bne $v0, $at, .L800A5E9C -/* 0A6A80 800A5E80 00000000 */ nop -.L800A5E84: -/* 0A6A84 800A5E84 8D0C0000 */ lw $t4, ($t0) -/* 0A6A88 800A5E88 240DFFC9 */ li $t5, -55 -/* 0A6A8C 800A5E8C A18B047C */ sb $t3, 0x47c($t4) -/* 0A6A90 800A5E90 8D0E0000 */ lw $t6, ($t0) -/* 0A6A94 800A5E94 10000007 */ b .L800A5EB4 -/* 0A6A98 800A5E98 A1CD049C */ sb $t5, 0x49c($t6) -.L800A5E9C: -/* 0A6A9C 800A5E9C 8D180000 */ lw $t8, ($t0) -/* 0A6AA0 800A5EA0 240F003B */ li $t7, 59 -/* 0A6AA4 800A5EA4 A30F047C */ sb $t7, 0x47c($t8) -/* 0A6AA8 800A5EA8 8D090000 */ lw $t1, ($t0) -/* 0A6AAC 800A5EAC 24190068 */ li $t9, 104 -/* 0A6AB0 800A5EB0 A139049C */ sb $t9, 0x49c($t1) -.L800A5EB4: -/* 0A6AB4 800A5EB4 8D020000 */ lw $v0, ($t0) -/* 0A6AB8 800A5EB8 24040016 */ li $a0, 22 -/* 0A6ABC 800A5EBC 804A049C */ lb $t2, 0x49c($v0) -/* 0A6AC0 800A5EC0 00002825 */ move $a1, $zero -/* 0A6AC4 800A5EC4 254B00C8 */ addiu $t3, $t2, 0xc8 -/* 0A6AC8 800A5EC8 448B2000 */ mtc1 $t3, $f4 -/* 0A6ACC 800A5ECC 00000000 */ nop -/* 0A6AD0 800A5ED0 46802220 */ cvt.s.w $f8, $f4 -/* 0A6AD4 800A5ED4 E448048C */ swc1 $f8, 0x48c($v0) -/* 0A6AD8 800A5ED8 8D020000 */ lw $v0, ($t0) -/* 0A6ADC 800A5EDC 00000000 */ nop -/* 0A6AE0 800A5EE0 804C049C */ lb $t4, 0x49c($v0) -/* 0A6AE4 800A5EE4 00000000 */ nop -/* 0A6AE8 800A5EE8 258DFF38 */ addiu $t5, $t4, -0xc8 -/* 0A6AEC 800A5EEC 448D5000 */ mtc1 $t5, $f10 -/* 0A6AF0 800A5EF0 00000000 */ nop -/* 0A6AF4 800A5EF4 46805420 */ cvt.s.w $f16, $f10 -/* 0A6AF8 800A5EF8 0C000741 */ jal func_80001D04 -/* 0A6AFC 800A5EFC E450046C */ swc1 $f16, 0x46c($v0) -.L800A5F00: -/* 0A6B00 800A5F00 0C01EFC7 */ jal func_8007BF1C -/* 0A6B04 800A5F04 00002025 */ move $a0, $zero -/* 0A6B08 800A5F08 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A6B0C 800A5F0C 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0A6B10 800A5F10 03E00008 */ jr $ra -/* 0A6B14 800A5F14 00000000 */ nop - -glabel func_800A5F18 -/* 0A6B18 800A5F18 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0A6B1C 800A5F1C 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 -/* 0A6B20 800A5F20 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) -/* 0A6B24 800A5F24 AFA40028 */ sw $a0, 0x28($sp) -/* 0A6B28 800A5F28 AFBF001C */ sw $ra, 0x1c($sp) -/* 0A6B2C 800A5F2C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A6B30 800A5F30 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A6B34 800A5F34 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A6B38 800A5F38 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A6B3C 800A5F3C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A6B40 800A5F40 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A6B44 800A5F44 0C02A980 */ jal func_800AA600 -/* 0A6B48 800A5F48 24E705E0 */ addiu $a3, $a3, 0x5e0 -/* 0A6B4C 800A5F4C 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 -/* 0A6B50 800A5F50 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) -/* 0A6B54 800A5F54 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A6B58 800A5F58 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A6B5C 800A5F5C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A6B60 800A5F60 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A6B64 800A5F64 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A6B68 800A5F68 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A6B6C 800A5F6C 0C02A980 */ jal func_800AA600 -/* 0A6B70 800A5F70 24E70600 */ addiu $a3, $a3, 0x600 -/* 0A6B74 800A5F74 0C01AF66 */ jal func_8006BD98 -/* 0A6B78 800A5F78 00000000 */ nop -/* 0A6B7C 800A5F7C 304E0040 */ andi $t6, $v0, 0x40 -/* 0A6B80 800A5F80 15C000B1 */ bnez $t6, .L800A6248 -/* 0A6B84 800A5F84 8FBF001C */ lw $ra, 0x1c($sp) -/* 0A6B88 800A5F88 0C027B20 */ jal func_8009EC80 -/* 0A6B8C 800A5F8C 00000000 */ nop -/* 0A6B90 800A5F90 144000AD */ bnez $v0, .L800A6248 -/* 0A6B94 800A5F94 8FBF001C */ lw $ra, 0x1c($sp) -/* 0A6B98 800A5F98 0C006E9D */ jal func_8001BA74 -/* 0A6B9C 800A5F9C 27A40024 */ addiu $a0, $sp, 0x24 -/* 0A6BA0 800A5FA0 3C0F8012 */ lui $t7, %hi(D_80126D37) # $t7, 0x8012 -/* 0A6BA4 800A5FA4 91EF6D37 */ lbu $t7, %lo(D_80126D37)($t7) -/* 0A6BA8 800A5FA8 00000000 */ nop -/* 0A6BAC 800A5FAC 29E10002 */ slti $at, $t7, 2 -/* 0A6BB0 800A5FB0 142000A5 */ bnez $at, .L800A6248 -/* 0A6BB4 800A5FB4 8FBF001C */ lw $ra, 0x1c($sp) -/* 0A6BB8 800A5FB8 0C027B20 */ jal func_8009EC80 -/* 0A6BBC 800A5FBC 00000000 */ nop -/* 0A6BC0 800A5FC0 10400005 */ beqz $v0, .L800A5FD8 -/* 0A6BC4 800A5FC4 00000000 */ nop -/* 0A6BC8 800A5FC8 0C01BAAC */ jal func_8006EAB0 -/* 0A6BCC 800A5FCC 00000000 */ nop -/* 0A6BD0 800A5FD0 1440009D */ bnez $v0, .L800A6248 -/* 0A6BD4 800A5FD4 8FBF001C */ lw $ra, 0x1c($sp) -.L800A5FD8: -/* 0A6BD8 800A5FD8 0C0310BB */ jal func_800C42EC -/* 0A6BDC 800A5FDC 00002025 */ move $a0, $zero -/* 0A6BE0 800A5FE0 8FB90028 */ lw $t9, 0x28($sp) -/* 0A6BE4 800A5FE4 8FB80024 */ lw $t8, 0x24($sp) -/* 0A6BE8 800A5FE8 872801AC */ lh $t0, 0x1ac($t9) -/* 0A6BEC 800A5FEC 3C028012 */ lui $v0, 0x8012 -/* 0A6BF0 800A5FF0 13080078 */ beq $t8, $t0, .L800A61D4 -/* 0A6BF4 800A5FF4 3C01420C */ li $at, 0x420C0000 # 35.000000 -/* 0A6BF8 800A5FF8 240900FF */ li $t1, 255 -/* 0A6BFC 800A5FFC AFA90010 */ sw $t1, 0x10($sp) -/* 0A6C00 800A6000 240400FF */ li $a0, 255 -/* 0A6C04 800A6004 240500FF */ li $a1, 255 -/* 0A6C08 800A6008 240600FF */ li $a2, 255 -/* 0A6C0C 800A600C 0C0310E1 */ jal func_800C4384 -/* 0A6C10 800A6010 00003825 */ move $a3, $zero -/* 0A6C14 800A6014 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 -/* 0A6C18 800A6018 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) -/* 0A6C1C 800A601C 3C014220 */ li $at, 0x42200000 # 40.000000 -/* 0A6C20 800A6020 44813000 */ mtc1 $at, $f6 -/* 0A6C24 800A6024 C444016C */ lwc1 $f4, 0x16c($v0) -/* 0A6C28 800A6028 C4500170 */ lwc1 $f16, 0x170($v0) -/* 0A6C2C 800A602C 46062201 */ sub.s $f8, $f4, $f6 -/* 0A6C30 800A6030 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A6C34 800A6034 444AF800 */ cfc1 $t2, $31 -/* 0A6C38 800A6038 3C07800F */ lui $a3, %hi(D_800E8688) # $a3, 0x800f -/* 0A6C3C 800A603C 35410003 */ ori $at, $t2, 3 -/* 0A6C40 800A6040 38210002 */ xori $at, $at, 2 -/* 0A6C44 800A6044 44C1F800 */ ctc1 $at, $31 -/* 0A6C48 800A6048 24E78688 */ addiu $a3, %lo(D_800E8688) # addiu $a3, $a3, -0x7978 -/* 0A6C4C 800A604C 460042A4 */ cvt.w.s $f10, $f8 -/* 0A6C50 800A6050 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A6C54 800A6054 44CAF800 */ ctc1 $t2, $31 -/* 0A6C58 800A6058 44055000 */ mfc1 $a1, $f10 -/* 0A6C5C 800A605C AFA00010 */ sw $zero, 0x10($sp) -/* 0A6C60 800A6060 444BF800 */ cfc1 $t3, $31 -/* 0A6C64 800A6064 00000000 */ nop -/* 0A6C68 800A6068 35610003 */ ori $at, $t3, 3 -/* 0A6C6C 800A606C 38210002 */ xori $at, $at, 2 -/* 0A6C70 800A6070 44C1F800 */ ctc1 $at, $31 -/* 0A6C74 800A6074 00000000 */ nop -/* 0A6C78 800A6078 460084A4 */ cvt.w.s $f18, $f16 -/* 0A6C7C 800A607C 44069000 */ mfc1 $a2, $f18 -/* 0A6C80 800A6080 44CBF800 */ ctc1 $t3, $31 -/* 0A6C84 800A6084 0C031110 */ jal func_800C4440 -/* 0A6C88 800A6088 00000000 */ nop -/* 0A6C8C 800A608C 444CF800 */ cfc1 $t4, $31 -/* 0A6C90 800A6090 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 -/* 0A6C94 800A6094 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) -/* 0A6C98 800A6098 35810003 */ ori $at, $t4, 3 -/* 0A6C9C 800A609C 38210002 */ xori $at, $at, 2 -/* 0A6CA0 800A60A0 44C1F800 */ ctc1 $at, $31 -/* 0A6CA4 800A60A4 C444016C */ lwc1 $f4, 0x16c($v0) -/* 0A6CA8 800A60A8 C4480170 */ lwc1 $f8, 0x170($v0) -/* 0A6CAC 800A60AC 460021A4 */ cvt.w.s $f6, $f4 -/* 0A6CB0 800A60B0 804E017C */ lb $t6, 0x17c($v0) -/* 0A6CB4 800A60B4 44CCF800 */ ctc1 $t4, $31 -/* 0A6CB8 800A60B8 8046017A */ lb $a2, 0x17a($v0) -/* 0A6CBC 800A60BC 8047017B */ lb $a3, 0x17b($v0) -/* 0A6CC0 800A60C0 444DF800 */ cfc1 $t5, $31 -/* 0A6CC4 800A60C4 44043000 */ mfc1 $a0, $f6 -/* 0A6CC8 800A60C8 35A10003 */ ori $at, $t5, 3 -/* 0A6CCC 800A60CC 38210002 */ xori $at, $at, 2 -/* 0A6CD0 800A60D0 44C1F800 */ ctc1 $at, $31 -/* 0A6CD4 800A60D4 240F0001 */ li $t7, 1 -/* 0A6CD8 800A60D8 460042A4 */ cvt.w.s $f10, $f8 -/* 0A6CDC 800A60DC AFAF0014 */ sw $t7, 0x14($sp) -/* 0A6CE0 800A60E0 44055000 */ mfc1 $a1, $f10 -/* 0A6CE4 800A60E4 44CDF800 */ ctc1 $t5, $31 -/* 0A6CE8 800A60E8 0C029FEF */ jal func_800A7FBC -/* 0A6CEC 800A60EC AFAE0010 */ sw $t6, 0x10($sp) -/* 0A6CF0 800A60F0 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 -/* 0A6CF4 800A60F4 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) -/* 0A6CF8 800A60F8 3C014220 */ li $at, 0x42200000 # 40.000000 -/* 0A6CFC 800A60FC 44819000 */ mtc1 $at, $f18 -/* 0A6D00 800A6100 C45002EC */ lwc1 $f16, 0x2ec($v0) -/* 0A6D04 800A6104 C44802F0 */ lwc1 $f8, 0x2f0($v0) -/* 0A6D08 800A6108 46128101 */ sub.s $f4, $f16, $f18 -/* 0A6D0C 800A610C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A6D10 800A6110 4459F800 */ cfc1 $t9, $31 -/* 0A6D14 800A6114 3C07800F */ lui $a3, %hi(D_800E8690) # $a3, 0x800f -/* 0A6D18 800A6118 37210003 */ ori $at, $t9, 3 -/* 0A6D1C 800A611C 38210002 */ xori $at, $at, 2 -/* 0A6D20 800A6120 44C1F800 */ ctc1 $at, $31 -/* 0A6D24 800A6124 24E78690 */ addiu $a3, %lo(D_800E8690) # addiu $a3, $a3, -0x7970 -/* 0A6D28 800A6128 460021A4 */ cvt.w.s $f6, $f4 -/* 0A6D2C 800A612C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A6D30 800A6130 44D9F800 */ ctc1 $t9, $31 -/* 0A6D34 800A6134 44053000 */ mfc1 $a1, $f6 -/* 0A6D38 800A6138 AFA00010 */ sw $zero, 0x10($sp) -/* 0A6D3C 800A613C 4458F800 */ cfc1 $t8, $31 -/* 0A6D40 800A6140 00000000 */ nop -/* 0A6D44 800A6144 37010003 */ ori $at, $t8, 3 -/* 0A6D48 800A6148 38210002 */ xori $at, $at, 2 -/* 0A6D4C 800A614C 44C1F800 */ ctc1 $at, $31 -/* 0A6D50 800A6150 00000000 */ nop -/* 0A6D54 800A6154 460042A4 */ cvt.w.s $f10, $f8 -/* 0A6D58 800A6158 44065000 */ mfc1 $a2, $f10 -/* 0A6D5C 800A615C 44D8F800 */ ctc1 $t8, $31 -/* 0A6D60 800A6160 0C031110 */ jal func_800C4440 -/* 0A6D64 800A6164 00000000 */ nop -/* 0A6D68 800A6168 4448F800 */ cfc1 $t0, $31 -/* 0A6D6C 800A616C 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 -/* 0A6D70 800A6170 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) -/* 0A6D74 800A6174 35010003 */ ori $at, $t0, 3 -/* 0A6D78 800A6178 38210002 */ xori $at, $at, 2 -/* 0A6D7C 800A617C 44C1F800 */ ctc1 $at, $31 -/* 0A6D80 800A6180 C45002EC */ lwc1 $f16, 0x2ec($v0) -/* 0A6D84 800A6184 C44402F0 */ lwc1 $f4, 0x2f0($v0) -/* 0A6D88 800A6188 460084A4 */ cvt.w.s $f18, $f16 -/* 0A6D8C 800A618C 804A02FC */ lb $t2, 0x2fc($v0) -/* 0A6D90 800A6190 44C8F800 */ ctc1 $t0, $31 -/* 0A6D94 800A6194 804602FA */ lb $a2, 0x2fa($v0) -/* 0A6D98 800A6198 804702FB */ lb $a3, 0x2fb($v0) -/* 0A6D9C 800A619C 4449F800 */ cfc1 $t1, $31 -/* 0A6DA0 800A61A0 44049000 */ mfc1 $a0, $f18 -/* 0A6DA4 800A61A4 35210003 */ ori $at, $t1, 3 -/* 0A6DA8 800A61A8 38210002 */ xori $at, $at, 2 -/* 0A6DAC 800A61AC 44C1F800 */ ctc1 $at, $31 -/* 0A6DB0 800A61B0 240B0001 */ li $t3, 1 -/* 0A6DB4 800A61B4 460021A4 */ cvt.w.s $f6, $f4 -/* 0A6DB8 800A61B8 AFAB0014 */ sw $t3, 0x14($sp) -/* 0A6DBC 800A61BC 44053000 */ mfc1 $a1, $f6 -/* 0A6DC0 800A61C0 44C9F800 */ ctc1 $t1, $31 -/* 0A6DC4 800A61C4 0C029FEF */ jal func_800A7FBC -/* 0A6DC8 800A61C8 AFAA0010 */ sw $t2, 0x10($sp) -/* 0A6DCC 800A61CC 1000001E */ b .L800A6248 -/* 0A6DD0 800A61D0 8FBF001C */ lw $ra, 0x1c($sp) -.L800A61D4: -/* 0A6DD4 800A61D4 8C426CDC */ lw $v0, 0x6cdc($v0) -/* 0A6DD8 800A61D8 44815000 */ mtc1 $at, $f10 -/* 0A6DDC 800A61DC C448016C */ lwc1 $f8, 0x16c($v0) -/* 0A6DE0 800A61E0 C4440170 */ lwc1 $f4, 0x170($v0) -/* 0A6DE4 800A61E4 460A4401 */ sub.s $f16, $f8, $f10 -/* 0A6DE8 800A61E8 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A6DEC 800A61EC 444CF800 */ cfc1 $t4, $31 -/* 0A6DF0 800A61F0 3C07800F */ lui $a3, %hi(D_800E8694) # $a3, 0x800f -/* 0A6DF4 800A61F4 35810003 */ ori $at, $t4, 3 -/* 0A6DF8 800A61F8 38210002 */ xori $at, $at, 2 -/* 0A6DFC 800A61FC 44C1F800 */ ctc1 $at, $31 -/* 0A6E00 800A6200 24E78694 */ addiu $a3, %lo(D_800E8694) # addiu $a3, $a3, -0x796c -/* 0A6E04 800A6204 460084A4 */ cvt.w.s $f18, $f16 -/* 0A6E08 800A6208 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A6E0C 800A620C 44CCF800 */ ctc1 $t4, $31 -/* 0A6E10 800A6210 44059000 */ mfc1 $a1, $f18 -/* 0A6E14 800A6214 AFA00010 */ sw $zero, 0x10($sp) -/* 0A6E18 800A6218 444DF800 */ cfc1 $t5, $31 -/* 0A6E1C 800A621C 00000000 */ nop -/* 0A6E20 800A6220 35A10003 */ ori $at, $t5, 3 -/* 0A6E24 800A6224 38210002 */ xori $at, $at, 2 -/* 0A6E28 800A6228 44C1F800 */ ctc1 $at, $31 -/* 0A6E2C 800A622C 00000000 */ nop -/* 0A6E30 800A6230 460021A4 */ cvt.w.s $f6, $f4 -/* 0A6E34 800A6234 44063000 */ mfc1 $a2, $f6 -/* 0A6E38 800A6238 44CDF800 */ ctc1 $t5, $31 -/* 0A6E3C 800A623C 0C031110 */ jal func_800C4440 -/* 0A6E40 800A6240 00000000 */ nop -/* 0A6E44 800A6244 8FBF001C */ lw $ra, 0x1c($sp) -.L800A6248: -/* 0A6E48 800A6248 27BD0028 */ addiu $sp, $sp, 0x28 -/* 0A6E4C 800A624C 03E00008 */ jr $ra -/* 0A6E50 800A6250 00000000 */ nop - -glabel func_800A6254 -/* 0A6E54 800A6254 27BDFF90 */ addiu $sp, $sp, -0x70 -/* 0A6E58 800A6258 AFBF0014 */ sw $ra, 0x14($sp) -/* 0A6E5C 800A625C AFA50074 */ sw $a1, 0x74($sp) -/* 0A6E60 800A6260 0C01AF66 */ jal func_8006BD98 -/* 0A6E64 800A6264 AFA40070 */ sw $a0, 0x70($sp) -/* 0A6E68 800A6268 0C027B20 */ jal func_8009EC80 -/* 0A6E6C 800A626C AFA2005C */ sw $v0, 0x5c($sp) -/* 0A6E70 800A6270 8FA70070 */ lw $a3, 0x70($sp) -/* 0A6E74 800A6274 10400049 */ beqz $v0, .L800A639C -/* 0A6E78 800A6278 00000000 */ nop -/* 0A6E7C 800A627C 0C01BAAC */ jal func_8006EAB0 -/* 0A6E80 800A6280 AFA70070 */ sw $a3, 0x70($sp) -/* 0A6E84 800A6284 8FA70070 */ lw $a3, 0x70($sp) -/* 0A6E88 800A6288 10400044 */ beqz $v0, .L800A639C -/* 0A6E8C 800A628C 3C0E8012 */ lui $t6, %hi(D_80127189) # $t6, 0x8012 -/* 0A6E90 800A6290 91CE7189 */ lbu $t6, %lo(D_80127189)($t6) -/* 0A6E94 800A6294 00000000 */ nop -/* 0A6E98 800A6298 15C00040 */ bnez $t6, .L800A639C -/* 0A6E9C 800A629C 00000000 */ nop -/* 0A6EA0 800A62A0 0C003861 */ jal func_8000E184 -/* 0A6EA4 800A62A4 AFA70070 */ sw $a3, 0x70($sp) -/* 0A6EA8 800A62A8 8FA70070 */ lw $a3, 0x70($sp) -/* 0A6EAC 800A62AC 1040001B */ beqz $v0, .L800A631C -/* 0A6EB0 800A62B0 3C098012 */ lui $t1, %hi(D_80126CDC) # $t1, 0x8012 -/* 0A6EB4 800A62B4 25296CDC */ addiu $t1, %lo(D_80126CDC) # addiu $t1, $t1, 0x6cdc -/* 0A6EB8 800A62B8 8D220000 */ lw $v0, ($t1) -/* 0A6EBC 800A62BC 3C0142D8 */ li $at, 0x42D80000 # 108.000000 -/* 0A6EC0 800A62C0 44810000 */ mtc1 $at, $f0 -/* 0A6EC4 800A62C4 C44405F0 */ lwc1 $f4, 0x5f0($v0) -/* 0A6EC8 800A62C8 00000000 */ nop -/* 0A6ECC 800A62CC 46002181 */ sub.s $f6, $f4, $f0 -/* 0A6ED0 800A62D0 E44605F0 */ swc1 $f6, 0x5f0($v0) -/* 0A6ED4 800A62D4 8D220000 */ lw $v0, ($t1) -/* 0A6ED8 800A62D8 00000000 */ nop -/* 0A6EDC 800A62DC C4480610 */ lwc1 $f8, 0x610($v0) -/* 0A6EE0 800A62E0 00000000 */ nop -/* 0A6EE4 800A62E4 46004281 */ sub.s $f10, $f8, $f0 -/* 0A6EE8 800A62E8 E44A0610 */ swc1 $f10, 0x610($v0) -/* 0A6EEC 800A62EC 8D220000 */ lw $v0, ($t1) -/* 0A6EF0 800A62F0 00000000 */ nop -/* 0A6EF4 800A62F4 C4440170 */ lwc1 $f4, 0x170($v0) -/* 0A6EF8 800A62F8 00000000 */ nop -/* 0A6EFC 800A62FC 46002181 */ sub.s $f6, $f4, $f0 -/* 0A6F00 800A6300 E4460170 */ swc1 $f6, 0x170($v0) -/* 0A6F04 800A6304 8D220000 */ lw $v0, ($t1) -/* 0A6F08 800A6308 00000000 */ nop -/* 0A6F0C 800A630C C44802F0 */ lwc1 $f8, 0x2f0($v0) -/* 0A6F10 800A6310 00000000 */ nop -/* 0A6F14 800A6314 46004281 */ sub.s $f10, $f8, $f0 -/* 0A6F18 800A6318 E44A02F0 */ swc1 $f10, 0x2f0($v0) -.L800A631C: -/* 0A6F1C 800A631C 3C098012 */ lui $t1, %hi(D_80126CDC) # $t1, 0x8012 -/* 0A6F20 800A6320 25296CDC */ addiu $t1, %lo(D_80126CDC) # addiu $t1, $t1, 0x6cdc -/* 0A6F24 800A6324 8D220000 */ lw $v0, ($t1) -/* 0A6F28 800A6328 3C01420C */ li $at, 0x420C0000 # 35.000000 -/* 0A6F2C 800A632C 44810000 */ mtc1 $at, $f0 -/* 0A6F30 800A6330 C44405F0 */ lwc1 $f4, 0x5f0($v0) -/* 0A6F34 800A6334 3C03800E */ lui $v1, %hi(D_800E2770) # $v1, 0x800e -/* 0A6F38 800A6338 46002180 */ add.s $f6, $f4, $f0 -/* 0A6F3C 800A633C 24632770 */ addiu $v1, %lo(D_800E2770) # addiu $v1, $v1, 0x2770 -/* 0A6F40 800A6340 E44605F0 */ swc1 $f6, 0x5f0($v0) -/* 0A6F44 800A6344 8D220000 */ lw $v0, ($t1) -/* 0A6F48 800A6348 3C018012 */ lui $at, %hi(D_80127189) # $at, 0x8012 -/* 0A6F4C 800A634C C4480610 */ lwc1 $f8, 0x610($v0) -/* 0A6F50 800A6350 24180001 */ li $t8, 1 -/* 0A6F54 800A6354 46004280 */ add.s $f10, $f8, $f0 -/* 0A6F58 800A6358 E44A0610 */ swc1 $f10, 0x610($v0) -/* 0A6F5C 800A635C 8D220000 */ lw $v0, ($t1) -/* 0A6F60 800A6360 00000000 */ nop -/* 0A6F64 800A6364 C4440170 */ lwc1 $f4, 0x170($v0) -/* 0A6F68 800A6368 00000000 */ nop -/* 0A6F6C 800A636C 46002180 */ add.s $f6, $f4, $f0 -/* 0A6F70 800A6370 E4460170 */ swc1 $f6, 0x170($v0) -/* 0A6F74 800A6374 8D220000 */ lw $v0, ($t1) -/* 0A6F78 800A6378 00000000 */ nop -/* 0A6F7C 800A637C C44802F0 */ lwc1 $f8, 0x2f0($v0) -/* 0A6F80 800A6380 00000000 */ nop -/* 0A6F84 800A6384 46004280 */ add.s $f10, $f8, $f0 -/* 0A6F88 800A6388 E44A02F0 */ swc1 $f10, 0x2f0($v0) -/* 0A6F8C 800A638C 84EF0000 */ lh $t7, ($a3) -/* 0A6F90 800A6390 00000000 */ nop -/* 0A6F94 800A6394 A06F000C */ sb $t7, 0xc($v1) -/* 0A6F98 800A6398 A0387189 */ sb $t8, %lo(D_80127189)($at) -.L800A639C: -/* 0A6F9C 800A639C 3C098012 */ lui $t1, %hi(D_80126CDC) # $t1, 0x8012 -/* 0A6FA0 800A63A0 25296CDC */ addiu $t1, %lo(D_80126CDC) # addiu $t1, $t1, 0x6cdc -/* 0A6FA4 800A63A4 8D220000 */ lw $v0, ($t1) -/* 0A6FA8 800A63A8 3C03800E */ lui $v1, %hi(D_800E2770) # $v1, 0x800e -/* 0A6FAC 800A63AC 905905FA */ lbu $t9, 0x5fa($v0) -/* 0A6FB0 800A63B0 24632770 */ addiu $v1, %lo(D_800E2770) # addiu $v1, $v1, 0x2770 -/* 0A6FB4 800A63B4 2F210005 */ sltiu $at, $t9, 5 -/* 0A6FB8 800A63B8 10200278 */ beqz $at, .L800A6D9C -/* 0A6FBC 800A63BC 0019C880 */ sll $t9, $t9, 2 -/* 0A6FC0 800A63C0 3C01800F */ lui $at, 0x800f -/* 0A6FC4 800A63C4 00390821 */ addu $at, $at, $t9 -/* 0A6FC8 800A63C8 8C398744 */ lw $t9, -0x78bc($at) -/* 0A6FCC 800A63CC 00000000 */ nop -/* 0A6FD0 800A63D0 03200008 */ jr $t9 -/* 0A6FD4 800A63D4 00000000 */ nop -/* 0A6FD8 800A63D8 8FAA005C */ lw $t2, 0x5c($sp) -/* 0A6FDC 800A63DC 240C007F */ li $t4, 127 -/* 0A6FE0 800A63E0 314B0040 */ andi $t3, $t2, 0x40 -/* 0A6FE4 800A63E4 1560000D */ bnez $t3, .L800A641C -/* 0A6FE8 800A63E8 24040016 */ li $a0, 22 -/* 0A6FEC 800A63EC A06C0002 */ sb $t4, 2($v1) -/* 0A6FF0 800A63F0 A0600003 */ sb $zero, 3($v1) -/* 0A6FF4 800A63F4 84ED0000 */ lh $t5, ($a3) -/* 0A6FF8 800A63F8 AFA70070 */ sw $a3, 0x70($sp) -/* 0A6FFC 800A63FC 00002825 */ move $a1, $zero -/* 0A7000 800A6400 0C000741 */ jal func_80001D04 -/* 0A7004 800A6404 A06D000C */ sb $t5, 0xc($v1) -/* 0A7008 800A6408 3C098012 */ lui $t1, %hi(D_80126CDC) # $t1, 0x8012 -/* 0A700C 800A640C 25296CDC */ addiu $t1, %lo(D_80126CDC) # addiu $t1, $t1, 0x6cdc -/* 0A7010 800A6410 8D220000 */ lw $v0, ($t1) -/* 0A7014 800A6414 8FA70070 */ lw $a3, 0x70($sp) -/* 0A7018 800A6418 00000000 */ nop -.L800A641C: -/* 0A701C 800A641C 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 -/* 0A7020 800A6420 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) -/* 0A7024 800A6424 240EFFEC */ li $t6, -20 -/* 0A7028 800A6428 10600006 */ beqz $v1, .L800A6444 -/* 0A702C 800A642C 24060002 */ li $a2, 2 -/* 0A7030 800A6430 24080001 */ li $t0, 1 -/* 0A7034 800A6434 10680004 */ beq $v1, $t0, .L800A6448 -/* 0A7038 800A6438 00000000 */ nop -/* 0A703C 800A643C 10000009 */ b .L800A6464 -/* 0A7040 800A6440 24060002 */ li $a2, 2 -.L800A6444: -/* 0A7044 800A6444 24080001 */ li $t0, 1 -.L800A6448: -/* 0A7048 800A6448 A04E05FD */ sb $t6, 0x5fd($v0) -/* 0A704C 800A644C 8D2F0000 */ lw $t7, ($t1) -/* 0A7050 800A6450 2403FFF1 */ li $v1, -15 -/* 0A7054 800A6454 A1E3017D */ sb $v1, 0x17d($t7) -/* 0A7058 800A6458 8D380000 */ lw $t8, ($t1) -/* 0A705C 800A645C 10000016 */ b .L800A64B8 -/* 0A7060 800A6460 A30302FD */ sb $v1, 0x2fd($t8) -.L800A6464: -/* 0A7064 800A6464 84E30000 */ lh $v1, ($a3) -/* 0A7068 800A6468 2419FFA6 */ li $t9, -90 -/* 0A706C 800A646C 10600003 */ beqz $v1, .L800A647C -/* 0A7070 800A6470 00000000 */ nop -/* 0A7074 800A6474 14C30009 */ bne $a2, $v1, .L800A649C -/* 0A7078 800A6478 240C0037 */ li $t4, 55 -.L800A647C: -/* 0A707C 800A647C A05905FD */ sb $t9, 0x5fd($v0) -/* 0A7080 800A6480 8D2A0000 */ lw $t2, ($t1) -/* 0A7084 800A6484 2403FFAB */ li $v1, -85 -/* 0A7088 800A6488 A143017D */ sb $v1, 0x17d($t2) -/* 0A708C 800A648C 8D2B0000 */ lw $t3, ($t1) -/* 0A7090 800A6490 24060002 */ li $a2, 2 -/* 0A7094 800A6494 10000008 */ b .L800A64B8 -/* 0A7098 800A6498 A16302FD */ sb $v1, 0x2fd($t3) -.L800A649C: -/* 0A709C 800A649C A04C05FD */ sb $t4, 0x5fd($v0) -/* 0A70A0 800A64A0 8D2D0000 */ lw $t5, ($t1) -/* 0A70A4 800A64A4 2403003C */ li $v1, 60 -/* 0A70A8 800A64A8 A1A3017D */ sb $v1, 0x17d($t5) -/* 0A70AC 800A64AC 8D2E0000 */ lw $t6, ($t1) -/* 0A70B0 800A64B0 00000000 */ nop -/* 0A70B4 800A64B4 A1C302FD */ sb $v1, 0x2fd($t6) -.L800A64B8: -/* 0A70B8 800A64B8 3C048000 */ lui $a0, %hi(D_80000300) # $a0, 0x8000 -/* 0A70BC 800A64BC 24840300 */ addiu $a0, %lo(D_80000300) # addiu $a0, $a0, 0x300 -/* 0A70C0 800A64C0 8C8F0000 */ lw $t7, ($a0) -/* 0A70C4 800A64C4 00000000 */ nop -/* 0A70C8 800A64C8 15E00013 */ bnez $t7, .L800A6518 -/* 0A70CC 800A64CC 00000000 */ nop -/* 0A70D0 800A64D0 8D220000 */ lw $v0, ($t1) -/* 0A70D4 800A64D4 00000000 */ nop -/* 0A70D8 800A64D8 805805FD */ lb $t8, 0x5fd($v0) -/* 0A70DC 800A64DC 00000000 */ nop -/* 0A70E0 800A64E0 2719FFFC */ addiu $t9, $t8, -4 -/* 0A70E4 800A64E4 A05905FD */ sb $t9, 0x5fd($v0) -/* 0A70E8 800A64E8 8D220000 */ lw $v0, ($t1) -/* 0A70EC 800A64EC 00000000 */ nop -/* 0A70F0 800A64F0 804A017D */ lb $t2, 0x17d($v0) -/* 0A70F4 800A64F4 00000000 */ nop -/* 0A70F8 800A64F8 254BFFFC */ addiu $t3, $t2, -4 -/* 0A70FC 800A64FC A04B017D */ sb $t3, 0x17d($v0) -/* 0A7100 800A6500 8D220000 */ lw $v0, ($t1) -/* 0A7104 800A6504 00000000 */ nop -/* 0A7108 800A6508 804C02FD */ lb $t4, 0x2fd($v0) -/* 0A710C 800A650C 00000000 */ nop -/* 0A7110 800A6510 258DFFFC */ addiu $t5, $t4, -4 -/* 0A7114 800A6514 A04D02FD */ sb $t5, 0x2fd($v0) -.L800A6518: -/* 0A7118 800A6518 84E201AC */ lh $v0, 0x1ac($a3) -/* 0A711C 800A651C 00000000 */ nop -/* 0A7120 800A6520 28410004 */ slti $at, $v0, 4 -/* 0A7124 800A6524 10200004 */ beqz $at, .L800A6538 -/* 0A7128 800A6528 244EFFFF */ addiu $t6, $v0, -1 -/* 0A712C 800A652C 8D2F0000 */ lw $t7, ($t1) -/* 0A7130 800A6530 10000004 */ b .L800A6544 -/* 0A7134 800A6534 A5EE0618 */ sh $t6, 0x618($t7) -.L800A6538: -/* 0A7138 800A6538 8D390000 */ lw $t9, ($t1) -/* 0A713C 800A653C 24180003 */ li $t8, 3 -/* 0A7140 800A6540 A7380618 */ sh $t8, 0x618($t9) -.L800A6544: -/* 0A7144 800A6544 84EA01AC */ lh $t2, 0x1ac($a3) -/* 0A7148 800A6548 8D2C0000 */ lw $t4, ($t1) -/* 0A714C 800A654C 254BFFFF */ addiu $t3, $t2, -1 -/* 0A7150 800A6550 A58B05F8 */ sh $t3, 0x5f8($t4) -/* 0A7154 800A6554 8D2D0000 */ lw $t5, ($t1) -/* 0A7158 800A6558 3C028012 */ lui $v0, %hi(D_80126D37) # $v0, 0x8012 -/* 0A715C 800A655C A1A805FA */ sb $t0, 0x5fa($t5) -/* 0A7160 800A6560 90426D37 */ lbu $v0, %lo(D_80126D37)($v0) -/* 0A7164 800A6564 3C0143B4 */ li $at, 0x43B40000 # 360.000000 -/* 0A7168 800A6568 10460008 */ beq $v0, $a2, .L800A658C -/* 0A716C 800A656C 00000000 */ nop -/* 0A7170 800A6570 24010003 */ li $at, 3 -/* 0A7174 800A6574 10410054 */ beq $v0, $at, .L800A66C8 -/* 0A7178 800A6578 24010004 */ li $at, 4 -/* 0A717C 800A657C 10410052 */ beq $v0, $at, .L800A66C8 -/* 0A7180 800A6580 00000000 */ nop -/* 0A7184 800A6584 100000A8 */ b .L800A6828 -/* 0A7188 800A6588 00000000 */ nop -.L800A658C: -/* 0A718C 800A658C 44816000 */ mtc1 $at, $f12 -/* 0A7190 800A6590 84E30000 */ lh $v1, ($a3) -/* 0A7194 800A6594 3C01C220 */ li $at, 0xC2200000 # -40.000000 -/* 0A7198 800A6598 44817000 */ mtc1 $at, $f14 -/* 0A719C 800A659C 14600007 */ bnez $v1, .L800A65BC -/* 0A71A0 800A65A0 3C014337 */ li $at, 0x43370000 # 183.000000 -/* 0A71A4 800A65A4 3C014296 */ li $at, 0x42960000 # 75.000000 -/* 0A71A8 800A65A8 44810000 */ mtc1 $at, $f0 -/* 0A71AC 800A65AC 3C0142B4 */ li $at, 0x42B40000 # 90.000000 -/* 0A71B0 800A65B0 44811000 */ mtc1 $at, $f2 -/* 0A71B4 800A65B4 10000006 */ b .L800A65D0 -/* 0A71B8 800A65B8 8C8E0000 */ lw $t6, ($a0) -.L800A65BC: -/* 0A71BC 800A65BC 44810000 */ mtc1 $at, $f0 -/* 0A71C0 800A65C0 3C014346 */ li $at, 0x43460000 # 198.000000 -/* 0A71C4 800A65C4 44811000 */ mtc1 $at, $f2 -/* 0A71C8 800A65C8 00000000 */ nop -/* 0A71CC 800A65CC 8C8E0000 */ lw $t6, ($a0) -.L800A65D0: -/* 0A71D0 800A65D0 3C01800F */ lui $at, %hi(D_800E875C) # $at, 0x800f -/* 0A71D4 800A65D4 15C0002D */ bnez $t6, .L800A668C -/* 0A71D8 800A65D8 00000000 */ nop -/* 0A71DC 800A65DC C4318758 */ lwc1 $f17, %lo(D_800E8758)($at) -/* 0A71E0 800A65E0 C430875C */ lwc1 $f16, %lo(D_800E875C)($at) -/* 0A71E4 800A65E4 46000121 */ cvt.d.s $f4, $f0 -/* 0A71E8 800A65E8 46302182 */ mul.d $f6, $f4, $f16 -/* 0A71EC 800A65EC 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 0A71F0 800A65F0 44819000 */ mtc1 $at, $f18 -/* 0A71F4 800A65F4 46001221 */ cvt.d.s $f8, $f2 -/* 0A71F8 800A65F8 3C0143B4 */ li $at, 0x43B40000 # 360.000000 -/* 0A71FC 800A65FC 46304282 */ mul.d $f10, $f8, $f16 -/* 0A7200 800A6600 44812000 */ mtc1 $at, $f4 -/* 0A7204 800A6604 46203020 */ cvt.s.d $f0, $f6 -/* 0A7208 800A6608 3C01C220 */ li $at, 0xC2200000 # -40.000000 -/* 0A720C 800A660C 44813000 */ mtc1 $at, $f6 -/* 0A7210 800A6610 462050A0 */ cvt.s.d $f2, $f10 -/* 0A7214 800A6614 46122301 */ sub.s $f12, $f4, $f18 -/* 0A7218 800A6618 46123381 */ sub.s $f14, $f6, $f18 -/* 0A721C 800A661C 444FF800 */ cfc1 $t7, $31 -/* 0A7220 800A6620 00000000 */ nop -/* 0A7224 800A6624 35E10003 */ ori $at, $t7, 3 -/* 0A7228 800A6628 38210002 */ xori $at, $at, 2 -/* 0A722C 800A662C 44C1F800 */ ctc1 $at, $31 -/* 0A7230 800A6630 00000000 */ nop -/* 0A7234 800A6634 46000224 */ cvt.w.s $f8, $f0 -/* 0A7238 800A6638 44184000 */ mfc1 $t8, $f8 -/* 0A723C 800A663C 44CFF800 */ ctc1 $t7, $31 -/* 0A7240 800A6640 44985000 */ mtc1 $t8, $f10 -/* 0A7244 800A6644 00000000 */ nop -/* 0A7248 800A6648 46805020 */ cvt.s.w $f0, $f10 -/* 0A724C 800A664C 4459F800 */ cfc1 $t9, $31 -/* 0A7250 800A6650 00000000 */ nop -/* 0A7254 800A6654 37210003 */ ori $at, $t9, 3 -/* 0A7258 800A6658 38210002 */ xori $at, $at, 2 -/* 0A725C 800A665C 44C1F800 */ ctc1 $at, $31 -/* 0A7260 800A6660 3C014110 */ li $at, 0x41100000 # 9.000000 -/* 0A7264 800A6664 46001124 */ cvt.w.s $f4, $f2 -/* 0A7268 800A6668 440A2000 */ mfc1 $t2, $f4 -/* 0A726C 800A666C 44D9F800 */ ctc1 $t9, $31 -/* 0A7270 800A6670 448A3000 */ mtc1 $t2, $f6 -/* 0A7274 800A6674 14600005 */ bnez $v1, .L800A668C -/* 0A7278 800A6678 468030A0 */ cvt.s.w $f2, $f6 -/* 0A727C 800A667C 44818000 */ mtc1 $at, $f16 -/* 0A7280 800A6680 00000000 */ nop -/* 0A7284 800A6684 46100001 */ sub.s $f0, $f0, $f16 -/* 0A7288 800A6688 46101081 */ sub.s $f2, $f2, $f16 -.L800A668C: -/* 0A728C 800A668C 8D2B0000 */ lw $t3, ($t1) -/* 0A7290 800A6690 3C028012 */ lui $v0, %hi(D_80126D37) # $v0, 0x8012 -/* 0A7294 800A6694 E56C016C */ swc1 $f12, 0x16c($t3) -/* 0A7298 800A6698 8D2C0000 */ lw $t4, ($t1) -/* 0A729C 800A669C 00000000 */ nop -/* 0A72A0 800A66A0 E5800170 */ swc1 $f0, 0x170($t4) -/* 0A72A4 800A66A4 8D2D0000 */ lw $t5, ($t1) -/* 0A72A8 800A66A8 00000000 */ nop -/* 0A72AC 800A66AC E5AE02EC */ swc1 $f14, 0x2ec($t5) -/* 0A72B0 800A66B0 8D2E0000 */ lw $t6, ($t1) -/* 0A72B4 800A66B4 00000000 */ nop -/* 0A72B8 800A66B8 E5C202F0 */ swc1 $f2, 0x2f0($t6) -/* 0A72BC 800A66BC 90426D37 */ lbu $v0, %lo(D_80126D37)($v0) -/* 0A72C0 800A66C0 10000059 */ b .L800A6828 -/* 0A72C4 800A66C4 00000000 */ nop -.L800A66C8: -/* 0A72C8 800A66C8 84E30000 */ lh $v1, ($a3) -/* 0A72CC 800A66CC 00000000 */ nop -/* 0A72D0 800A66D0 28610002 */ slti $at, $v1, 2 -/* 0A72D4 800A66D4 10200006 */ beqz $at, .L800A66F0 -/* 0A72D8 800A66D8 3C014296 */ li $at, 0x42960000 # 75.000000 -/* 0A72DC 800A66DC 44810000 */ mtc1 $at, $f0 -/* 0A72E0 800A66E0 3C0142B4 */ li $at, 0x42B40000 # 90.000000 -/* 0A72E4 800A66E4 44811000 */ mtc1 $at, $f2 -/* 0A72E8 800A66E8 10000006 */ b .L800A6704 -/* 0A72EC 800A66EC 00000000 */ nop -.L800A66F0: -/* 0A72F0 800A66F0 3C014337 */ li $at, 0x43370000 # 183.000000 -/* 0A72F4 800A66F4 44810000 */ mtc1 $at, $f0 -/* 0A72F8 800A66F8 3C014346 */ li $at, 0x43460000 # 198.000000 -/* 0A72FC 800A66FC 44811000 */ mtc1 $at, $f2 -/* 0A7300 800A6700 00000000 */ nop -.L800A6704: -/* 0A7304 800A6704 10600003 */ beqz $v1, .L800A6714 -/* 0A7308 800A6708 3C01428C */ li $at, 0x428C0000 # 70.000000 -/* 0A730C 800A670C 14C30006 */ bne $a2, $v1, .L800A6728 -/* 0A7310 800A6710 00000000 */ nop -.L800A6714: -/* 0A7314 800A6714 44816000 */ mtc1 $at, $f12 -/* 0A7318 800A6718 3C01C366 */ li $at, 0xC3660000 # -230.000000 -/* 0A731C 800A671C 44817000 */ mtc1 $at, $f14 -/* 0A7320 800A6720 10000007 */ b .L800A6740 -/* 0A7324 800A6724 8C8F0000 */ lw $t7, ($a0) -.L800A6728: -/* 0A7328 800A6728 3C014366 */ li $at, 0x43660000 # 230.000000 -/* 0A732C 800A672C 44816000 */ mtc1 $at, $f12 -/* 0A7330 800A6730 3C01C28C */ li $at, 0xC28C0000 # -70.000000 -/* 0A7334 800A6734 44817000 */ mtc1 $at, $f14 -/* 0A7338 800A6738 00000000 */ nop -/* 0A733C 800A673C 8C8F0000 */ lw $t7, ($a0) -.L800A6740: -/* 0A7340 800A6740 3C01800F */ lui $at, %hi(D_800E8764) # $at, 0x800f -/* 0A7344 800A6744 15E0002A */ bnez $t7, .L800A67F0 -/* 0A7348 800A6748 00000000 */ nop -/* 0A734C 800A674C C4318760 */ lwc1 $f17, %lo(D_800E8760)($at) -/* 0A7350 800A6750 C4308764 */ lwc1 $f16, %lo(D_800E8764)($at) -/* 0A7354 800A6754 46000221 */ cvt.d.s $f8, $f0 -/* 0A7358 800A6758 46304282 */ mul.d $f10, $f8, $f16 -/* 0A735C 800A675C 46001121 */ cvt.d.s $f4, $f2 -/* 0A7360 800A6760 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 0A7364 800A6764 44819000 */ mtc1 $at, $f18 -/* 0A7368 800A6768 46302182 */ mul.d $f6, $f4, $f16 -/* 0A736C 800A676C 46205020 */ cvt.s.d $f0, $f10 -/* 0A7370 800A6770 462030A0 */ cvt.s.d $f2, $f6 -/* 0A7374 800A6774 46126301 */ sub.s $f12, $f12, $f18 -/* 0A7378 800A6778 46127381 */ sub.s $f14, $f14, $f18 -/* 0A737C 800A677C 4458F800 */ cfc1 $t8, $31 -/* 0A7380 800A6780 00000000 */ nop -/* 0A7384 800A6784 37010003 */ ori $at, $t8, 3 -/* 0A7388 800A6788 38210002 */ xori $at, $at, 2 -/* 0A738C 800A678C 44C1F800 */ ctc1 $at, $31 -/* 0A7390 800A6790 00000000 */ nop -/* 0A7394 800A6794 46000224 */ cvt.w.s $f8, $f0 -/* 0A7398 800A6798 44194000 */ mfc1 $t9, $f8 -/* 0A739C 800A679C 44D8F800 */ ctc1 $t8, $31 -/* 0A73A0 800A67A0 44995000 */ mtc1 $t9, $f10 -/* 0A73A4 800A67A4 00000000 */ nop -/* 0A73A8 800A67A8 46805020 */ cvt.s.w $f0, $f10 -/* 0A73AC 800A67AC 444AF800 */ cfc1 $t2, $31 -/* 0A73B0 800A67B0 00000000 */ nop -/* 0A73B4 800A67B4 35410003 */ ori $at, $t2, 3 -/* 0A73B8 800A67B8 38210002 */ xori $at, $at, 2 -/* 0A73BC 800A67BC 44C1F800 */ ctc1 $at, $31 -/* 0A73C0 800A67C0 28610002 */ slti $at, $v1, 2 -/* 0A73C4 800A67C4 46001124 */ cvt.w.s $f4, $f2 -/* 0A73C8 800A67C8 440B2000 */ mfc1 $t3, $f4 -/* 0A73CC 800A67CC 44CAF800 */ ctc1 $t2, $31 -/* 0A73D0 800A67D0 448B3000 */ mtc1 $t3, $f6 -/* 0A73D4 800A67D4 10200006 */ beqz $at, .L800A67F0 -/* 0A73D8 800A67D8 468030A0 */ cvt.s.w $f2, $f6 -/* 0A73DC 800A67DC 3C014110 */ li $at, 0x41100000 # 9.000000 -/* 0A73E0 800A67E0 44818000 */ mtc1 $at, $f16 -/* 0A73E4 800A67E4 00000000 */ nop -/* 0A73E8 800A67E8 46100001 */ sub.s $f0, $f0, $f16 -/* 0A73EC 800A67EC 46101081 */ sub.s $f2, $f2, $f16 -.L800A67F0: -/* 0A73F0 800A67F0 8D2C0000 */ lw $t4, ($t1) -/* 0A73F4 800A67F4 3C028012 */ lui $v0, %hi(D_8012004B) # $v0, 0x8012 -/* 0A73F8 800A67F8 E58C016C */ swc1 $f12, 0x16c($t4) -/* 0A73FC 800A67FC 8D2D0000 */ lw $t5, ($t1) -/* 0A7400 800A6800 00000000 */ nop -/* 0A7404 800A6804 E5A00170 */ swc1 $f0, 0x170($t5) -/* 0A7408 800A6808 8D2E0000 */ lw $t6, ($t1) -/* 0A740C 800A680C 00000000 */ nop -/* 0A7410 800A6810 E5CE02EC */ swc1 $f14, 0x2ec($t6) -/* 0A7414 800A6814 8D2F0000 */ lw $t7, ($t1) -/* 0A7418 800A6818 00000000 */ nop -/* 0A741C 800A681C E5E202F0 */ swc1 $f2, 0x2f0($t7) -/* 0A7420 800A6820 90426D37 */ lbu $v0, %lo(D_80126D37)($v0) -/* 0A7424 800A6824 00000000 */ nop -.L800A6828: -/* 0A7428 800A6828 1102015F */ beq $t0, $v0, .L800A6DA8 -/* 0A742C 800A682C 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A7430 800A6830 0C01AF6C */ jal func_8006BDB0 -/* 0A7434 800A6834 AFA70070 */ sw $a3, 0x70($sp) -/* 0A7438 800A6838 8FA70070 */ lw $a3, 0x70($sp) -/* 0A743C 800A683C 00004025 */ move $t0, $zero -/* 0A7440 800A6840 8CF80128 */ lw $t8, 0x128($a3) -/* 0A7444 800A6844 00001825 */ move $v1, $zero -/* 0A7448 800A6848 AFB80044 */ sw $t8, 0x44($sp) -/* 0A744C 800A684C 8059004B */ lb $t9, %lo(D_8012004B)($v0) -/* 0A7450 800A6850 27A6003C */ addiu $a2, $sp, 0x3c -/* 0A7454 800A6854 1B20000E */ blez $t9, .L800A6890 -/* 0A7458 800A6858 8FA40044 */ lw $a0, 0x44($sp) -/* 0A745C 800A685C 8045004B */ lb $a1, %lo(D_8012004B)($v0) -/* 0A7460 800A6860 00E02025 */ move $a0, $a3 -.L800A6864: -/* 0A7464 800A6864 8C820128 */ lw $v0, 0x128($a0) -/* 0A7468 800A6868 8FAA0044 */ lw $t2, 0x44($sp) -/* 0A746C 800A686C 24630001 */ addiu $v1, $v1, 1 -/* 0A7470 800A6870 004A082A */ slt $at, $v0, $t2 -/* 0A7474 800A6874 10200002 */ beqz $at, .L800A6880 -/* 0A7478 800A6878 01024021 */ addu $t0, $t0, $v0 -/* 0A747C 800A687C AFA20044 */ sw $v0, 0x44($sp) -.L800A6880: -/* 0A7480 800A6880 0065082A */ slt $at, $v1, $a1 -/* 0A7484 800A6884 1420FFF7 */ bnez $at, .L800A6864 -/* 0A7488 800A6888 24840004 */ addiu $a0, $a0, 4 -/* 0A748C 800A688C 8FA40044 */ lw $a0, 0x44($sp) -.L800A6890: -/* 0A7490 800A6890 27A50040 */ addiu $a1, $sp, 0x40 -/* 0A7494 800A6894 27A70038 */ addiu $a3, $sp, 0x38 -/* 0A7498 800A6898 0C0165E4 */ jal func_80059790 -/* 0A749C 800A689C AFA80048 */ sw $t0, 0x48($sp) -/* 0A74A0 800A68A0 3C098012 */ lui $t1, %hi(D_80126CDC) # $t1, 0x8012 -/* 0A74A4 800A68A4 25296CDC */ addiu $t1, %lo(D_80126CDC) # addiu $t1, $t1, 0x6cdc -/* 0A74A8 800A68A8 8D2C0000 */ lw $t4, ($t1) -/* 0A74AC 800A68AC 8FAB0040 */ lw $t3, 0x40($sp) -/* 0A74B0 800A68B0 27A50040 */ addiu $a1, $sp, 0x40 -/* 0A74B4 800A68B4 A18B02FA */ sb $t3, 0x2fa($t4) -/* 0A74B8 800A68B8 8D2E0000 */ lw $t6, ($t1) -/* 0A74BC 800A68BC 8FAD003C */ lw $t5, 0x3c($sp) -/* 0A74C0 800A68C0 27A6003C */ addiu $a2, $sp, 0x3c -/* 0A74C4 800A68C4 A1CD02FB */ sb $t5, 0x2fb($t6) -/* 0A74C8 800A68C8 8D380000 */ lw $t8, ($t1) -/* 0A74CC 800A68CC 8FAF0038 */ lw $t7, 0x38($sp) -/* 0A74D0 800A68D0 27A70038 */ addiu $a3, $sp, 0x38 -/* 0A74D4 800A68D4 A30F02FC */ sb $t7, 0x2fc($t8) -/* 0A74D8 800A68D8 8FA40048 */ lw $a0, 0x48($sp) -/* 0A74DC 800A68DC 0C0165E4 */ jal func_80059790 -/* 0A74E0 800A68E0 00000000 */ nop -/* 0A74E4 800A68E4 3C098012 */ lui $t1, %hi(D_80126CDC) # $t1, 0x8012 -/* 0A74E8 800A68E8 25296CDC */ addiu $t1, %lo(D_80126CDC) # addiu $t1, $t1, 0x6cdc -/* 0A74EC 800A68EC 8D2A0000 */ lw $t2, ($t1) -/* 0A74F0 800A68F0 8FB90040 */ lw $t9, 0x40($sp) -/* 0A74F4 800A68F4 00000000 */ nop -/* 0A74F8 800A68F8 A159017A */ sb $t9, 0x17a($t2) -/* 0A74FC 800A68FC 8D2C0000 */ lw $t4, ($t1) -/* 0A7500 800A6900 8FAB003C */ lw $t3, 0x3c($sp) -/* 0A7504 800A6904 00000000 */ nop -/* 0A7508 800A6908 A18B017B */ sb $t3, 0x17b($t4) -/* 0A750C 800A690C 8D2E0000 */ lw $t6, ($t1) -/* 0A7510 800A6910 8FAD0038 */ lw $t5, 0x38($sp) -/* 0A7514 800A6914 10000123 */ b .L800A6DA4 -/* 0A7518 800A6918 A1CD017C */ sb $t5, 0x17c($t6) -/* 0A751C 800A691C 8FA40074 */ lw $a0, 0x74($sp) -/* 0A7520 800A6920 804505FD */ lb $a1, 0x5fd($v0) -/* 0A7524 800A6924 00047880 */ sll $t7, $a0, 2 -/* 0A7528 800A6928 01E47823 */ subu $t7, $t7, $a0 -/* 0A752C 800A692C 000F7880 */ sll $t7, $t7, 2 -/* 0A7530 800A6930 01E47821 */ addu $t7, $t7, $a0 -/* 0A7534 800A6934 00AFC023 */ subu $t8, $a1, $t7 -/* 0A7538 800A6938 271900A0 */ addiu $t9, $t8, 0xa0 -/* 0A753C 800A693C 44994000 */ mtc1 $t9, $f8 -/* 0A7540 800A6940 C44205EC */ lwc1 $f2, 0x5ec($v0) -/* 0A7544 800A6944 468042A0 */ cvt.s.w $f10, $f8 -/* 0A7548 800A6948 24060001 */ li $a2, 1 -/* 0A754C 800A694C 01E02025 */ move $a0, $t7 -/* 0A7550 800A6950 460A103C */ c.lt.s $f2, $f10 -/* 0A7554 800A6954 01E01825 */ move $v1, $t7 -/* 0A7558 800A6958 45000003 */ bc1f .L800A6968 -/* 0A755C 800A695C 24AA00A0 */ addiu $t2, $a1, 0xa0 -/* 0A7560 800A6960 1000000F */ b .L800A69A0 -/* 0A7564 800A6964 00003025 */ move $a2, $zero -.L800A6968: -/* 0A7568 800A6968 448A2000 */ mtc1 $t2, $f4 -/* 0A756C 800A696C 00000000 */ nop -/* 0A7570 800A6970 468021A0 */ cvt.s.w $f6, $f4 -/* 0A7574 800A6974 46023201 */ sub.s $f8, $f6, $f2 -/* 0A7578 800A6978 444BF800 */ cfc1 $t3, $31 -/* 0A757C 800A697C 00000000 */ nop -/* 0A7580 800A6980 35610003 */ ori $at, $t3, 3 -/* 0A7584 800A6984 38210002 */ xori $at, $at, 2 -/* 0A7588 800A6988 44C1F800 */ ctc1 $at, $31 -/* 0A758C 800A698C 00000000 */ nop -/* 0A7590 800A6990 460042A4 */ cvt.w.s $f10, $f8 -/* 0A7594 800A6994 44CBF800 */ ctc1 $t3, $31 -/* 0A7598 800A6998 44035000 */ mfc1 $v1, $f10 -/* 0A759C 800A699C 00000000 */ nop -.L800A69A0: -/* 0A75A0 800A69A0 44832000 */ mtc1 $v1, $f4 -/* 0A75A4 800A69A4 3C0C8012 */ lui $t4, %hi(D_80126D37) # $t4, 0x8012 -/* 0A75A8 800A69A8 46802020 */ cvt.s.w $f0, $f4 -/* 0A75AC 800A69AC 24080001 */ li $t0, 1 -/* 0A75B0 800A69B0 46001180 */ add.s $f6, $f2, $f0 -/* 0A75B4 800A69B4 E44605EC */ swc1 $f6, 0x5ec($v0) -/* 0A75B8 800A69B8 8D220000 */ lw $v0, ($t1) -/* 0A75BC 800A69BC 00000000 */ nop -/* 0A75C0 800A69C0 C448060C */ lwc1 $f8, 0x60c($v0) -/* 0A75C4 800A69C4 00000000 */ nop -/* 0A75C8 800A69C8 46004280 */ add.s $f10, $f8, $f0 -/* 0A75CC 800A69CC E44A060C */ swc1 $f10, 0x60c($v0) -/* 0A75D0 800A69D0 918C6D37 */ lbu $t4, %lo(D_80126D37)($t4) -/* 0A75D4 800A69D4 00000000 */ nop -/* 0A75D8 800A69D8 110C0045 */ beq $t0, $t4, .L800A6AF0 -/* 0A75DC 800A69DC 00000000 */ nop -/* 0A75E0 800A69E0 8D220000 */ lw $v0, ($t1) -/* 0A75E4 800A69E4 00801825 */ move $v1, $a0 -/* 0A75E8 800A69E8 8045017D */ lb $a1, 0x17d($v0) -/* 0A75EC 800A69EC C440016C */ lwc1 $f0, 0x16c($v0) -/* 0A75F0 800A69F0 00A46821 */ addu $t5, $a1, $a0 -/* 0A75F4 800A69F4 25AE00A0 */ addiu $t6, $t5, 0xa0 -/* 0A75F8 800A69F8 448E2000 */ mtc1 $t6, $f4 -/* 0A75FC 800A69FC 24AF00A0 */ addiu $t7, $a1, 0xa0 -/* 0A7600 800A6A00 468021A0 */ cvt.s.w $f6, $f4 -/* 0A7604 800A6A04 4600303C */ c.lt.s $f6, $f0 -/* 0A7608 800A6A08 00000000 */ nop -/* 0A760C 800A6A0C 45000003 */ bc1f .L800A6A1C -/* 0A7610 800A6A10 00000000 */ nop -/* 0A7614 800A6A14 1000000F */ b .L800A6A54 -/* 0A7618 800A6A18 00003025 */ move $a2, $zero -.L800A6A1C: -/* 0A761C 800A6A1C 448F4000 */ mtc1 $t7, $f8 -/* 0A7620 800A6A20 00000000 */ nop -/* 0A7624 800A6A24 468042A0 */ cvt.s.w $f10, $f8 -/* 0A7628 800A6A28 460A0101 */ sub.s $f4, $f0, $f10 -/* 0A762C 800A6A2C 4458F800 */ cfc1 $t8, $31 -/* 0A7630 800A6A30 00000000 */ nop -/* 0A7634 800A6A34 37010003 */ ori $at, $t8, 3 -/* 0A7638 800A6A38 38210002 */ xori $at, $at, 2 -/* 0A763C 800A6A3C 44C1F800 */ ctc1 $at, $31 -/* 0A7640 800A6A40 00000000 */ nop -/* 0A7644 800A6A44 460021A4 */ cvt.w.s $f6, $f4 -/* 0A7648 800A6A48 44D8F800 */ ctc1 $t8, $31 -/* 0A764C 800A6A4C 44033000 */ mfc1 $v1, $f6 -/* 0A7650 800A6A50 00000000 */ nop -.L800A6A54: -/* 0A7654 800A6A54 44834000 */ mtc1 $v1, $f8 -/* 0A7658 800A6A58 00801825 */ move $v1, $a0 -/* 0A765C 800A6A5C 468042A0 */ cvt.s.w $f10, $f8 -/* 0A7660 800A6A60 460A0101 */ sub.s $f4, $f0, $f10 -/* 0A7664 800A6A64 E444016C */ swc1 $f4, 0x16c($v0) -/* 0A7668 800A6A68 8D220000 */ lw $v0, ($t1) -/* 0A766C 800A6A6C 00000000 */ nop -/* 0A7670 800A6A70 804502FD */ lb $a1, 0x2fd($v0) -/* 0A7674 800A6A74 C44202EC */ lwc1 $f2, 0x2ec($v0) -/* 0A7678 800A6A78 00A4C823 */ subu $t9, $a1, $a0 -/* 0A767C 800A6A7C 272A00A0 */ addiu $t2, $t9, 0xa0 -/* 0A7680 800A6A80 448A3000 */ mtc1 $t2, $f6 -/* 0A7684 800A6A84 24AB00A0 */ addiu $t3, $a1, 0xa0 -/* 0A7688 800A6A88 46803220 */ cvt.s.w $f8, $f6 -/* 0A768C 800A6A8C 4608103C */ c.lt.s $f2, $f8 -/* 0A7690 800A6A90 00000000 */ nop -/* 0A7694 800A6A94 45000003 */ bc1f .L800A6AA4 -/* 0A7698 800A6A98 00000000 */ nop -/* 0A769C 800A6A9C 1000000F */ b .L800A6ADC -/* 0A76A0 800A6AA0 00003025 */ move $a2, $zero -.L800A6AA4: -/* 0A76A4 800A6AA4 448B5000 */ mtc1 $t3, $f10 -/* 0A76A8 800A6AA8 00000000 */ nop -/* 0A76AC 800A6AAC 46805120 */ cvt.s.w $f4, $f10 -/* 0A76B0 800A6AB0 46022181 */ sub.s $f6, $f4, $f2 -/* 0A76B4 800A6AB4 444CF800 */ cfc1 $t4, $31 -/* 0A76B8 800A6AB8 00000000 */ nop -/* 0A76BC 800A6ABC 35810003 */ ori $at, $t4, 3 -/* 0A76C0 800A6AC0 38210002 */ xori $at, $at, 2 -/* 0A76C4 800A6AC4 44C1F800 */ ctc1 $at, $31 -/* 0A76C8 800A6AC8 00000000 */ nop -/* 0A76CC 800A6ACC 46003224 */ cvt.w.s $f8, $f6 -/* 0A76D0 800A6AD0 44CCF800 */ ctc1 $t4, $31 -/* 0A76D4 800A6AD4 44034000 */ mfc1 $v1, $f8 -/* 0A76D8 800A6AD8 00000000 */ nop -.L800A6ADC: -/* 0A76DC 800A6ADC 44835000 */ mtc1 $v1, $f10 -/* 0A76E0 800A6AE0 00000000 */ nop -/* 0A76E4 800A6AE4 46805120 */ cvt.s.w $f4, $f10 -/* 0A76E8 800A6AE8 46041180 */ add.s $f6, $f2, $f4 -/* 0A76EC 800A6AEC E44602EC */ swc1 $f6, 0x2ec($v0) -.L800A6AF0: -/* 0A76F0 800A6AF0 10C00032 */ beqz $a2, .L800A6BBC -/* 0A76F4 800A6AF4 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A76F8 800A6AF8 8D2D0000 */ lw $t5, ($t1) -/* 0A76FC 800A6AFC 24060002 */ li $a2, 2 -/* 0A7700 800A6B00 A1A605FA */ sb $a2, 0x5fa($t5) -/* 0A7704 800A6B04 8D2F0000 */ lw $t7, ($t1) -/* 0A7708 800A6B08 240EFF88 */ li $t6, -120 -/* 0A770C 800A6B0C A1EE05FB */ sb $t6, 0x5fb($t7) -/* 0A7710 800A6B10 8D380000 */ lw $t8, ($t1) -/* 0A7714 800A6B14 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -/* 0A7718 800A6B18 A30005FC */ sb $zero, 0x5fc($t8) -/* 0A771C 800A6B1C 8CB90000 */ lw $t9, ($a1) -/* 0A7720 800A6B20 8FAA005C */ lw $t2, 0x5c($sp) -/* 0A7724 800A6B24 17200025 */ bnez $t9, .L800A6BBC -/* 0A7728 800A6B28 24010040 */ li $at, 64 -/* 0A772C 800A6B2C 1541001A */ bne $t2, $at, .L800A6B98 -/* 0A7730 800A6B30 00000000 */ nop -/* 0A7734 800A6B34 84E301AC */ lh $v1, 0x1ac($a3) -/* 0A7738 800A6B38 24040146 */ li $a0, 326 -/* 0A773C 800A6B3C 10680007 */ beq $v1, $t0, .L800A6B5C -/* 0A7740 800A6B40 00000000 */ nop -/* 0A7744 800A6B44 10660005 */ beq $v1, $a2, .L800A6B5C -/* 0A7748 800A6B48 24010003 */ li $at, 3 -/* 0A774C 800A6B4C 10610008 */ beq $v1, $at, .L800A6B70 -/* 0A7750 800A6B50 2404014C */ li $a0, 332 -/* 0A7754 800A6B54 1000000B */ b .L800A6B84 -/* 0A7758 800A6B58 2404014D */ li $a0, 333 -.L800A6B5C: -/* 0A775C 800A6B5C 0C000741 */ jal func_80001D04 -/* 0A7760 800A6B60 AFA70070 */ sw $a3, 0x70($sp) -/* 0A7764 800A6B64 8FA70070 */ lw $a3, 0x70($sp) -/* 0A7768 800A6B68 10000014 */ b .L800A6BBC -/* 0A776C 800A6B6C 00000000 */ nop -.L800A6B70: -/* 0A7770 800A6B70 0C000741 */ jal func_80001D04 -/* 0A7774 800A6B74 AFA70070 */ sw $a3, 0x70($sp) -/* 0A7778 800A6B78 8FA70070 */ lw $a3, 0x70($sp) -/* 0A777C 800A6B7C 1000000F */ b .L800A6BBC -/* 0A7780 800A6B80 00000000 */ nop -.L800A6B84: -/* 0A7784 800A6B84 0C000741 */ jal func_80001D04 -/* 0A7788 800A6B88 AFA70070 */ sw $a3, 0x70($sp) -/* 0A778C 800A6B8C 8FA70070 */ lw $a3, 0x70($sp) -/* 0A7790 800A6B90 1000000A */ b .L800A6BBC -/* 0A7794 800A6B94 00000000 */ nop -.L800A6B98: -/* 0A7798 800A6B98 0C006D90 */ jal func_8001B640 -/* 0A779C 800A6B9C AFA70070 */ sw $a3, 0x70($sp) -/* 0A77A0 800A6BA0 8FA70070 */ lw $a3, 0x70($sp) -/* 0A77A4 800A6BA4 14400005 */ bnez $v0, .L800A6BBC -/* 0A77A8 800A6BA8 00E02025 */ move $a0, $a3 -/* 0A77AC 800A6BAC 0C029B6D */ jal func_800A6DB4 -/* 0A77B0 800A6BB0 AFA70070 */ sw $a3, 0x70($sp) -/* 0A77B4 800A6BB4 8FA70070 */ lw $a3, 0x70($sp) -/* 0A77B8 800A6BB8 00000000 */ nop -.L800A6BBC: -/* 0A77BC 800A6BBC 0C0297C6 */ jal func_800A5F18 -/* 0A77C0 800A6BC0 00E02025 */ move $a0, $a3 -/* 0A77C4 800A6BC4 10000078 */ b .L800A6DA8 -/* 0A77C8 800A6BC8 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A77CC 800A6BCC 804B05FB */ lb $t3, 0x5fb($v0) -/* 0A77D0 800A6BD0 8FAC0074 */ lw $t4, 0x74($sp) -/* 0A77D4 800A6BD4 240FFF88 */ li $t7, -120 -/* 0A77D8 800A6BD8 016C6821 */ addu $t5, $t3, $t4 -/* 0A77DC 800A6BDC A04D05FB */ sb $t5, 0x5fb($v0) -/* 0A77E0 800A6BE0 8D220000 */ lw $v0, ($t1) -/* 0A77E4 800A6BE4 3C0B8012 */ lui $t3, %hi(D_80126D37) # $t3, 0x8012 -/* 0A77E8 800A6BE8 804E05FB */ lb $t6, 0x5fb($v0) -/* 0A77EC 800A6BEC 00000000 */ nop -/* 0A77F0 800A6BF0 29C10078 */ slti $at, $t6, 0x78 -/* 0A77F4 800A6BF4 1420000A */ bnez $at, .L800A6C20 -/* 0A77F8 800A6BF8 00000000 */ nop -/* 0A77FC 800A6BFC A04F05FB */ sb $t7, 0x5fb($v0) -/* 0A7800 800A6C00 8D220000 */ lw $v0, ($t1) -/* 0A7804 800A6C04 00000000 */ nop -/* 0A7808 800A6C08 805805FC */ lb $t8, 0x5fc($v0) -/* 0A780C 800A6C0C 00000000 */ nop -/* 0A7810 800A6C10 27190001 */ addiu $t9, $t8, 1 -/* 0A7814 800A6C14 A05905FC */ sb $t9, 0x5fc($v0) -/* 0A7818 800A6C18 8D220000 */ lw $v0, ($t1) -/* 0A781C 800A6C1C 00000000 */ nop -.L800A6C20: -/* 0A7820 800A6C20 804A05FC */ lb $t2, 0x5fc($v0) -/* 0A7824 800A6C24 24060002 */ li $a2, 2 -/* 0A7828 800A6C28 14CA001A */ bne $a2, $t2, .L800A6C94 -/* 0A782C 800A6C2C 00000000 */ nop -/* 0A7830 800A6C30 916B6D37 */ lbu $t3, %lo(D_80126D37)($t3) -/* 0A7834 800A6C34 24080001 */ li $t0, 1 -/* 0A7838 800A6C38 110B000B */ beq $t0, $t3, .L800A6C68 -/* 0A783C 800A6C3C 240C0003 */ li $t4, 3 -/* 0A7840 800A6C40 0C027B20 */ jal func_8009EC80 -/* 0A7844 800A6C44 AFA70070 */ sw $a3, 0x70($sp) -/* 0A7848 800A6C48 8FA70070 */ lw $a3, 0x70($sp) -/* 0A784C 800A6C4C 3C098012 */ lui $t1, %hi(D_80126CDC) # $t1, 0x8012 -/* 0A7850 800A6C50 1040000D */ beqz $v0, .L800A6C88 -/* 0A7854 800A6C54 25296CDC */ addiu $t1, %lo(D_80126CDC) # addiu $t1, $t1, 0x6cdc -/* 0A7858 800A6C58 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 -/* 0A785C 800A6C5C 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) -/* 0A7860 800A6C60 00000000 */ nop -/* 0A7864 800A6C64 240C0003 */ li $t4, 3 -.L800A6C68: -/* 0A7868 800A6C68 A04C05FA */ sb $t4, 0x5fa($v0) -/* 0A786C 800A6C6C AFA70070 */ sw $a3, 0x70($sp) -/* 0A7870 800A6C70 24040016 */ li $a0, 22 -/* 0A7874 800A6C74 0C000741 */ jal func_80001D04 -/* 0A7878 800A6C78 00002825 */ move $a1, $zero -/* 0A787C 800A6C7C 8FA70070 */ lw $a3, 0x70($sp) -/* 0A7880 800A6C80 10000004 */ b .L800A6C94 -/* 0A7884 800A6C84 00000000 */ nop -.L800A6C88: -/* 0A7888 800A6C88 8D2E0000 */ lw $t6, ($t1) -/* 0A788C 800A6C8C 240D0004 */ li $t5, 4 -/* 0A7890 800A6C90 A1CD05FA */ sb $t5, 0x5fa($t6) -.L800A6C94: -/* 0A7894 800A6C94 0C0297C6 */ jal func_800A5F18 -/* 0A7898 800A6C98 00E02025 */ move $a0, $a3 -/* 0A789C 800A6C9C 10000042 */ b .L800A6DA8 -/* 0A78A0 800A6CA0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A78A4 800A6CA4 8FAF005C */ lw $t7, 0x5c($sp) -/* 0A78A8 800A6CA8 24010040 */ li $at, 64 -/* 0A78AC 800A6CAC 15E10003 */ bne $t7, $at, .L800A6CBC -/* 0A78B0 800A6CB0 24180004 */ li $t8, 4 -/* 0A78B4 800A6CB4 10000028 */ b .L800A6D58 -/* 0A78B8 800A6CB8 A05805FA */ sb $t8, 0x5fa($v0) -.L800A6CBC: -/* 0A78BC 800A6CBC 8FB90074 */ lw $t9, 0x74($sp) -/* 0A78C0 800A6CC0 C44A05EC */ lwc1 $f10, 0x5ec($v0) -/* 0A78C4 800A6CC4 00195080 */ sll $t2, $t9, 2 -/* 0A78C8 800A6CC8 01595023 */ subu $t2, $t2, $t9 -/* 0A78CC 800A6CCC 000A5080 */ sll $t2, $t2, 2 -/* 0A78D0 800A6CD0 01595021 */ addu $t2, $t2, $t9 -/* 0A78D4 800A6CD4 448A4000 */ mtc1 $t2, $f8 -/* 0A78D8 800A6CD8 3C01C348 */ li $at, 0xC3480000 # -200.000000 -/* 0A78DC 800A6CDC 46804020 */ cvt.s.w $f0, $f8 -/* 0A78E0 800A6CE0 240B0004 */ li $t3, 4 -/* 0A78E4 800A6CE4 46005101 */ sub.s $f4, $f10, $f0 -/* 0A78E8 800A6CE8 E44405EC */ swc1 $f4, 0x5ec($v0) -/* 0A78EC 800A6CEC 8D220000 */ lw $v0, ($t1) -/* 0A78F0 800A6CF0 44812000 */ mtc1 $at, $f4 -/* 0A78F4 800A6CF4 C446060C */ lwc1 $f6, 0x60c($v0) -/* 0A78F8 800A6CF8 00000000 */ nop -/* 0A78FC 800A6CFC 46003201 */ sub.s $f8, $f6, $f0 -/* 0A7900 800A6D00 E448060C */ swc1 $f8, 0x60c($v0) -/* 0A7904 800A6D04 8D220000 */ lw $v0, ($t1) -/* 0A7908 800A6D08 00000000 */ nop -/* 0A790C 800A6D0C C44A05EC */ lwc1 $f10, 0x5ec($v0) -/* 0A7910 800A6D10 00000000 */ nop -/* 0A7914 800A6D14 4604503C */ c.lt.s $f10, $f4 -/* 0A7918 800A6D18 00000000 */ nop -/* 0A791C 800A6D1C 45000004 */ bc1f .L800A6D30 -/* 0A7920 800A6D20 00000000 */ nop -/* 0A7924 800A6D24 A04B05FA */ sb $t3, 0x5fa($v0) -/* 0A7928 800A6D28 8D220000 */ lw $v0, ($t1) -/* 0A792C 800A6D2C 00000000 */ nop -.L800A6D30: -/* 0A7930 800A6D30 C446016C */ lwc1 $f6, 0x16c($v0) -/* 0A7934 800A6D34 00000000 */ nop -/* 0A7938 800A6D38 46003200 */ add.s $f8, $f6, $f0 -/* 0A793C 800A6D3C E448016C */ swc1 $f8, 0x16c($v0) -/* 0A7940 800A6D40 8D220000 */ lw $v0, ($t1) -/* 0A7944 800A6D44 00000000 */ nop -/* 0A7948 800A6D48 C44A02EC */ lwc1 $f10, 0x2ec($v0) -/* 0A794C 800A6D4C 00000000 */ nop -/* 0A7950 800A6D50 46005100 */ add.s $f4, $f10, $f0 -/* 0A7954 800A6D54 E44402EC */ swc1 $f4, 0x2ec($v0) -.L800A6D58: -/* 0A7958 800A6D58 0C0297C6 */ jal func_800A5F18 -/* 0A795C 800A6D5C 00E02025 */ move $a0, $a3 -/* 0A7960 800A6D60 10000011 */ b .L800A6DA8 -/* 0A7964 800A6D64 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A7968 800A6D68 84EC0000 */ lh $t4, ($a3) -/* 0A796C 800A6D6C 806D000C */ lb $t5, 0xc($v1) -/* 0A7970 800A6D70 240F0005 */ li $t7, 5 -/* 0A7974 800A6D74 158D0003 */ bne $t4, $t5, .L800A6D84 -/* 0A7978 800A6D78 00E02025 */ move $a0, $a3 -/* 0A797C 800A6D7C 240EFFFF */ li $t6, -1 -/* 0A7980 800A6D80 A06E0003 */ sb $t6, 3($v1) -.L800A6D84: -/* 0A7984 800A6D84 A04F05FA */ sb $t7, 0x5fa($v0) -/* 0A7988 800A6D88 8D380000 */ lw $t8, ($t1) -/* 0A798C 800A6D8C 0C0297C6 */ jal func_800A5F18 -/* 0A7990 800A6D90 A30005FB */ sb $zero, 0x5fb($t8) -/* 0A7994 800A6D94 10000004 */ b .L800A6DA8 -/* 0A7998 800A6D98 8FBF0014 */ lw $ra, 0x14($sp) -.L800A6D9C: -/* 0A799C 800A6D9C 0C0297C6 */ jal func_800A5F18 -/* 0A79A0 800A6DA0 00E02025 */ move $a0, $a3 -.L800A6DA4: -/* 0A79A4 800A6DA4 8FBF0014 */ lw $ra, 0x14($sp) -.L800A6DA8: -/* 0A79A8 800A6DA8 27BD0070 */ addiu $sp, $sp, 0x70 -/* 0A79AC 800A6DAC 03E00008 */ jr $ra -/* 0A79B0 800A6DB0 00000000 */ nop - -glabel func_800A6DB4 -/* 0A79B4 800A6DB4 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0A79B8 800A6DB8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0A79BC 800A6DBC 0C01BAA4 */ jal func_8006EA90 -/* 0A79C0 800A6DC0 AFA40018 */ sw $a0, 0x18($sp) -/* 0A79C4 800A6DC4 8FA30018 */ lw $v1, 0x18($sp) -/* 0A79C8 800A6DC8 00000000 */ nop -/* 0A79CC 800A6DCC 10600015 */ beqz $v1, .L800A6E24 -/* 0A79D0 800A6DD0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A79D4 800A6DD4 846E0000 */ lh $t6, ($v1) -/* 0A79D8 800A6DD8 24040102 */ li $a0, 258 -/* 0A79DC 800A6DDC 000E7880 */ sll $t7, $t6, 2 -/* 0A79E0 800A6DE0 01EE7823 */ subu $t7, $t7, $t6 -/* 0A79E4 800A6DE4 000F78C0 */ sll $t7, $t7, 3 -/* 0A79E8 800A6DE8 004FC021 */ addu $t8, $v0, $t7 -/* 0A79EC 800A6DEC 83190058 */ lb $t9, 0x58($t8) -/* 0A79F0 800A6DF0 3C058012 */ lui $a1, 0x8012 -/* 0A79F4 800A6DF4 33280080 */ andi $t0, $t9, 0x80 -/* 0A79F8 800A6DF8 11000007 */ beqz $t0, .L800A6E18 -/* 0A79FC 800A6DFC 00000000 */ nop -/* 0A7A00 800A6E00 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A7A04 800A6E04 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -/* 0A7A08 800A6E08 0C000741 */ jal func_80001D04 -/* 0A7A0C 800A6E0C 24040145 */ li $a0, 325 -/* 0A7A10 800A6E10 10000004 */ b .L800A6E24 -/* 0A7A14 800A6E14 8FBF0014 */ lw $ra, 0x14($sp) -.L800A6E18: -/* 0A7A18 800A6E18 0C000741 */ jal func_80001D04 -/* 0A7A1C 800A6E1C 24A56D40 */ addiu $a1, $a1, 0x6d40 -/* 0A7A20 800A6E20 8FBF0014 */ lw $ra, 0x14($sp) -.L800A6E24: -/* 0A7A24 800A6E24 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0A7A28 800A6E28 03E00008 */ jr $ra -/* 0A7A2C 800A6E2C 00000000 */ nop - -glabel func_800A6E30 -/* 0A7A30 800A6E30 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A7A34 800A6E34 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A7A38 800A6E38 8D020000 */ lw $v0, ($t0) -/* 0A7A3C 800A6E3C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0A7A40 800A6E40 AFBF0014 */ sw $ra, 0x14($sp) -/* 0A7A44 800A6E44 904E01DA */ lbu $t6, 0x1da($v0) -/* 0A7A48 800A6E48 00803025 */ move $a2, $a0 -/* 0A7A4C 800A6E4C 2DC10005 */ sltiu $at, $t6, 5 -/* 0A7A50 800A6E50 102000CA */ beqz $at, .L800A717C -/* 0A7A54 800A6E54 000E7080 */ sll $t6, $t6, 2 -/* 0A7A58 800A6E58 3C01800F */ lui $at, 0x800f -/* 0A7A5C 800A6E5C 002E0821 */ addu $at, $at, $t6 -/* 0A7A60 800A6E60 8C2E8768 */ lw $t6, -0x7898($at) -/* 0A7A64 800A6E64 00000000 */ nop -/* 0A7A68 800A6E68 01C00008 */ jr $t6 -/* 0A7A6C 800A6E6C 00000000 */ nop -/* 0A7A70 800A6E70 3C03800E */ lui $v1, %hi(D_800E2770) # $v1, 0x800e -/* 0A7A74 800A6E74 24632770 */ addiu $v1, %lo(D_800E2770) # addiu $v1, $v1, 0x2770 -/* 0A7A78 800A6E78 240F007F */ li $t7, 127 -/* 0A7A7C 800A6E7C A06F0002 */ sb $t7, 2($v1) -/* 0A7A80 800A6E80 A0600003 */ sb $zero, 3($v1) -/* 0A7A84 800A6E84 84D80000 */ lh $t8, ($a2) -/* 0A7A88 800A6E88 AFA60018 */ sw $a2, 0x18($sp) -/* 0A7A8C 800A6E8C 24040016 */ li $a0, 22 -/* 0A7A90 800A6E90 00002825 */ move $a1, $zero -/* 0A7A94 800A6E94 0C000741 */ jal func_80001D04 -/* 0A7A98 800A6E98 A078000C */ sb $t8, 0xc($v1) -/* 0A7A9C 800A6E9C 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 -/* 0A7AA0 800A6EA0 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) -/* 0A7AA4 800A6EA4 8FA60018 */ lw $a2, 0x18($sp) -/* 0A7AA8 800A6EA8 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A7AAC 800A6EAC 10600003 */ beqz $v1, .L800A6EBC -/* 0A7AB0 800A6EB0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A7AB4 800A6EB4 24010001 */ li $at, 1 -/* 0A7AB8 800A6EB8 14610008 */ bne $v1, $at, .L800A6EDC -.L800A6EBC: -/* 0A7ABC 800A6EBC 3C01C348 */ li $at, 0xC3480000 # -200.000000 -/* 0A7AC0 800A6EC0 44812000 */ mtc1 $at, $f4 -/* 0A7AC4 800A6EC4 8D190000 */ lw $t9, ($t0) -/* 0A7AC8 800A6EC8 00000000 */ nop -/* 0A7ACC 800A6ECC E72401CC */ swc1 $f4, 0x1cc($t9) -/* 0A7AD0 800A6ED0 8D090000 */ lw $t1, ($t0) -/* 0A7AD4 800A6ED4 10000015 */ b .L800A6F2C -/* 0A7AD8 800A6ED8 A12001DD */ sb $zero, 0x1dd($t1) -.L800A6EDC: -/* 0A7ADC 800A6EDC 84C20000 */ lh $v0, ($a2) -/* 0A7AE0 800A6EE0 24010002 */ li $at, 2 -/* 0A7AE4 800A6EE4 10400003 */ beqz $v0, .L800A6EF4 -/* 0A7AE8 800A6EE8 240AFFB0 */ li $t2, -80 -/* 0A7AEC 800A6EEC 14410008 */ bne $v0, $at, .L800A6F10 -/* 0A7AF0 800A6EF0 240D0050 */ li $t5, 80 -.L800A6EF4: -/* 0A7AF4 800A6EF4 8D0B0000 */ lw $t3, ($t0) -/* 0A7AF8 800A6EF8 3C01C348 */ li $at, 0xC3480000 # -200.000000 -/* 0A7AFC 800A6EFC A16A01DD */ sb $t2, 0x1dd($t3) -/* 0A7B00 800A6F00 8D0C0000 */ lw $t4, ($t0) -/* 0A7B04 800A6F04 44813000 */ mtc1 $at, $f6 -/* 0A7B08 800A6F08 10000008 */ b .L800A6F2C -/* 0A7B0C 800A6F0C E58601CC */ swc1 $f6, 0x1cc($t4) -.L800A6F10: -/* 0A7B10 800A6F10 8D0E0000 */ lw $t6, ($t0) -/* 0A7B14 800A6F14 3C01C220 */ li $at, 0xC2200000 # -40.000000 -/* 0A7B18 800A6F18 A1CD01DD */ sb $t5, 0x1dd($t6) -/* 0A7B1C 800A6F1C 8D0F0000 */ lw $t7, ($t0) -/* 0A7B20 800A6F20 44814000 */ mtc1 $at, $f8 -/* 0A7B24 800A6F24 00000000 */ nop -/* 0A7B28 800A6F28 E5E801CC */ swc1 $f8, 0x1cc($t7) -.L800A6F2C: -/* 0A7B2C 800A6F2C 8D190000 */ lw $t9, ($t0) -/* 0A7B30 800A6F30 24180001 */ li $t8, 1 -/* 0A7B34 800A6F34 10000091 */ b .L800A717C -/* 0A7B38 800A6F38 A33801DA */ sb $t8, 0x1da($t9) -/* 0A7B3C 800A6F3C 00051880 */ sll $v1, $a1, 2 -/* 0A7B40 800A6F40 00651823 */ subu $v1, $v1, $a1 -/* 0A7B44 800A6F44 804401DD */ lb $a0, 0x1dd($v0) -/* 0A7B48 800A6F48 00031880 */ sll $v1, $v1, 2 -/* 0A7B4C 800A6F4C 00651821 */ addu $v1, $v1, $a1 -/* 0A7B50 800A6F50 00834823 */ subu $t1, $a0, $v1 -/* 0A7B54 800A6F54 44895000 */ mtc1 $t1, $f10 -/* 0A7B58 800A6F58 C44001CC */ lwc1 $f0, 0x1cc($v0) -/* 0A7B5C 800A6F5C 46805420 */ cvt.s.w $f16, $f10 -/* 0A7B60 800A6F60 4610003C */ c.lt.s $f0, $f16 -/* 0A7B64 800A6F64 00000000 */ nop -/* 0A7B68 800A6F68 45000007 */ bc1f .L800A6F88 -/* 0A7B6C 800A6F6C 00000000 */ nop -/* 0A7B70 800A6F70 44839000 */ mtc1 $v1, $f18 -/* 0A7B74 800A6F74 00000000 */ nop -/* 0A7B78 800A6F78 46809120 */ cvt.s.w $f4, $f18 -/* 0A7B7C 800A6F7C 46040180 */ add.s $f6, $f0, $f4 -/* 0A7B80 800A6F80 10000019 */ b .L800A6FE8 -/* 0A7B84 800A6F84 E44601CC */ swc1 $f6, 0x1cc($v0) -.L800A6F88: -/* 0A7B88 800A6F88 44844000 */ mtc1 $a0, $f8 -/* 0A7B8C 800A6F8C 240A0002 */ li $t2, 2 -/* 0A7B90 800A6F90 468042A0 */ cvt.s.w $f10, $f8 -/* 0A7B94 800A6F94 240CFF88 */ li $t4, -120 -/* 0A7B98 800A6F98 3C0E8012 */ lui $t6, %hi(D_80126D40) # $t6, 0x8012 -/* 0A7B9C 800A6F9C E44A01CC */ swc1 $f10, 0x1cc($v0) -/* 0A7BA0 800A6FA0 8D0B0000 */ lw $t3, ($t0) -/* 0A7BA4 800A6FA4 3C0F8012 */ lui $t7, %hi(D_80126D71) # $t7, 0x8012 -/* 0A7BA8 800A6FA8 A16A01DA */ sb $t2, 0x1da($t3) -/* 0A7BAC 800A6FAC 8D0D0000 */ lw $t5, ($t0) -/* 0A7BB0 800A6FB0 00000000 */ nop -/* 0A7BB4 800A6FB4 A1AC01DB */ sb $t4, 0x1db($t5) -/* 0A7BB8 800A6FB8 8DCE6D40 */ lw $t6, %lo(D_80126D40)($t6) -/* 0A7BBC 800A6FBC 00000000 */ nop -/* 0A7BC0 800A6FC0 15C00009 */ bnez $t6, .L800A6FE8 -/* 0A7BC4 800A6FC4 00000000 */ nop -/* 0A7BC8 800A6FC8 91EF6D71 */ lbu $t7, %lo(D_80126D71)($t7) -/* 0A7BCC 800A6FCC 00000000 */ nop -/* 0A7BD0 800A6FD0 15E00005 */ bnez $t7, .L800A6FE8 -/* 0A7BD4 800A6FD4 00000000 */ nop -/* 0A7BD8 800A6FD8 0C029B6D */ jal func_800A6DB4 -/* 0A7BDC 800A6FDC 00C02025 */ move $a0, $a2 -/* 0A7BE0 800A6FE0 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A7BE4 800A6FE4 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -.L800A6FE8: -/* 0A7BE8 800A6FE8 8D070000 */ lw $a3, ($t0) -/* 0A7BEC 800A6FEC 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A7BF0 800A6FF0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A7BF4 800A6FF4 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A7BF8 800A6FF8 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A7BFC 800A6FFC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A7C00 800A7000 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A7C04 800A7004 0C02A980 */ jal func_800AA600 -/* 0A7C08 800A7008 24E701C0 */ addiu $a3, $a3, 0x1c0 -/* 0A7C0C 800A700C 1000005C */ b .L800A7180 -/* 0A7C10 800A7010 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A7C14 800A7014 805801DB */ lb $t8, 0x1db($v0) -/* 0A7C18 800A7018 240A0003 */ li $t2, 3 -/* 0A7C1C 800A701C 0305C821 */ addu $t9, $t8, $a1 -/* 0A7C20 800A7020 A05901DB */ sb $t9, 0x1db($v0) -/* 0A7C24 800A7024 8D020000 */ lw $v0, ($t0) -/* 0A7C28 800A7028 3C038012 */ lui $v1, %hi(D_80126D0C) # $v1, 0x8012 -/* 0A7C2C 800A702C 804901DB */ lb $t1, 0x1db($v0) -/* 0A7C30 800A7030 24040016 */ li $a0, 22 -/* 0A7C34 800A7034 29210078 */ slti $at, $t1, 0x78 -/* 0A7C38 800A7038 1420001C */ bnez $at, .L800A70AC -/* 0A7C3C 800A703C 00000000 */ nop -/* 0A7C40 800A7040 A04A01DA */ sb $t2, 0x1da($v0) -/* 0A7C44 800A7044 8C636D0C */ lw $v1, %lo(D_80126D0C)($v1) -/* 0A7C48 800A7048 24010001 */ li $at, 1 -/* 0A7C4C 800A704C 10600003 */ beqz $v1, .L800A705C -/* 0A7C50 800A7050 240B0038 */ li $t3, 56 -/* 0A7C54 800A7054 14610004 */ bne $v1, $at, .L800A7068 -/* 0A7C58 800A7058 00000000 */ nop -.L800A705C: -/* 0A7C5C 800A705C 8D0C0000 */ lw $t4, ($t0) -/* 0A7C60 800A7060 1000000D */ b .L800A7098 -/* 0A7C64 800A7064 A18B01DD */ sb $t3, 0x1dd($t4) -.L800A7068: -/* 0A7C68 800A7068 84C20000 */ lh $v0, ($a2) -/* 0A7C6C 800A706C 24010002 */ li $at, 2 -/* 0A7C70 800A7070 10400003 */ beqz $v0, .L800A7080 -/* 0A7C74 800A7074 240D0038 */ li $t5, 56 -/* 0A7C78 800A7078 14410004 */ bne $v0, $at, .L800A708C -/* 0A7C7C 800A707C 00000000 */ nop -.L800A7080: -/* 0A7C80 800A7080 8D0E0000 */ lw $t6, ($t0) -/* 0A7C84 800A7084 10000004 */ b .L800A7098 -/* 0A7C88 800A7088 A1CD01DD */ sb $t5, 0x1dd($t6) -.L800A708C: -/* 0A7C8C 800A708C 8D180000 */ lw $t8, ($t0) -/* 0A7C90 800A7090 240FFFD8 */ li $t7, -40 -/* 0A7C94 800A7094 A30F01DD */ sb $t7, 0x1dd($t8) -.L800A7098: -/* 0A7C98 800A7098 0C000741 */ jal func_80001D04 -/* 0A7C9C 800A709C 00002825 */ move $a1, $zero -/* 0A7CA0 800A70A0 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 -/* 0A7CA4 800A70A4 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) -/* 0A7CA8 800A70A8 00000000 */ nop -.L800A70AC: -/* 0A7CAC 800A70AC 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A7CB0 800A70B0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A7CB4 800A70B4 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A7CB8 800A70B8 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A7CBC 800A70BC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A7CC0 800A70C0 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A7CC4 800A70C4 0C02A980 */ jal func_800AA600 -/* 0A7CC8 800A70C8 244701C0 */ addiu $a3, $v0, 0x1c0 -/* 0A7CCC 800A70CC 1000002C */ b .L800A7180 -/* 0A7CD0 800A70D0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A7CD4 800A70D4 0005C880 */ sll $t9, $a1, 2 -/* 0A7CD8 800A70D8 0325C823 */ subu $t9, $t9, $a1 -/* 0A7CDC 800A70DC 0019C880 */ sll $t9, $t9, 2 -/* 0A7CE0 800A70E0 0325C821 */ addu $t9, $t9, $a1 -/* 0A7CE4 800A70E4 44999000 */ mtc1 $t9, $f18 -/* 0A7CE8 800A70E8 C45001CC */ lwc1 $f16, 0x1cc($v0) -/* 0A7CEC 800A70EC 46809120 */ cvt.s.w $f4, $f18 -/* 0A7CF0 800A70F0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A7CF4 800A70F4 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A7CF8 800A70F8 46048181 */ sub.s $f6, $f16, $f4 -/* 0A7CFC 800A70FC 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A7D00 800A7100 E44601CC */ swc1 $f6, 0x1cc($v0) -/* 0A7D04 800A7104 8D020000 */ lw $v0, ($t0) -/* 0A7D08 800A7108 240A0004 */ li $t2, 4 -/* 0A7D0C 800A710C 804901DD */ lb $t1, 0x1dd($v0) -/* 0A7D10 800A7110 C44801CC */ lwc1 $f8, 0x1cc($v0) -/* 0A7D14 800A7114 44895000 */ mtc1 $t1, $f10 -/* 0A7D18 800A7118 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A7D1C 800A711C 468054A0 */ cvt.s.w $f18, $f10 -/* 0A7D20 800A7120 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A7D24 800A7124 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A7D28 800A7128 4612403C */ c.lt.s $f8, $f18 -/* 0A7D2C 800A712C 00000000 */ nop -/* 0A7D30 800A7130 45000005 */ bc1f .L800A7148 -/* 0A7D34 800A7134 00000000 */ nop -/* 0A7D38 800A7138 A04A01DA */ sb $t2, 0x1da($v0) -/* 0A7D3C 800A713C 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 -/* 0A7D40 800A7140 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) -/* 0A7D44 800A7144 00000000 */ nop -.L800A7148: -/* 0A7D48 800A7148 0C02A980 */ jal func_800AA600 -/* 0A7D4C 800A714C 244701C0 */ addiu $a3, $v0, 0x1c0 -/* 0A7D50 800A7150 1000000B */ b .L800A7180 -/* 0A7D54 800A7154 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A7D58 800A7158 3C03800E */ lui $v1, %hi(D_800E2770) # $v1, 0x800e -/* 0A7D5C 800A715C 24632770 */ addiu $v1, %lo(D_800E2770) # addiu $v1, $v1, 0x2770 -/* 0A7D60 800A7160 240BFFFF */ li $t3, -1 -/* 0A7D64 800A7164 A06B0003 */ sb $t3, 3($v1) -/* 0A7D68 800A7168 240C0005 */ li $t4, 5 -/* 0A7D6C 800A716C A04C01DA */ sb $t4, 0x1da($v0) -/* 0A7D70 800A7170 8D0D0000 */ lw $t5, ($t0) -/* 0A7D74 800A7174 00000000 */ nop -/* 0A7D78 800A7178 A1A001DB */ sb $zero, 0x1db($t5) -.L800A717C: -/* 0A7D7C 800A717C 8FBF0014 */ lw $ra, 0x14($sp) -.L800A7180: -/* 0A7D80 800A7180 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0A7D84 800A7184 03E00008 */ jr $ra -/* 0A7D88 800A7188 00000000 */ nop - -glabel func_800A718C -/* 0A7D8C 800A718C 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0A7D90 800A7190 AFBF0014 */ sw $ra, 0x14($sp) -/* 0A7D94 800A7194 0C01BAA4 */ jal func_8006EA90 -/* 0A7D98 800A7198 AFA40030 */ sw $a0, 0x30($sp) -/* 0A7D9C 800A719C 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 -/* 0A7DA0 800A71A0 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) -/* 0A7DA4 800A71A4 00402025 */ move $a0, $v0 -/* 0A7DA8 800A71A8 15C00003 */ bnez $t6, .L800A71B8 -/* 0A7DAC 800A71AC 240F0286 */ li $t7, 646 -/* 0A7DB0 800A71B0 10000003 */ b .L800A71C0 -/* 0A7DB4 800A71B4 AFAF0020 */ sw $t7, 0x20($sp) -.L800A71B8: -/* 0A7DB8 800A71B8 24180348 */ li $t8, 840 -/* 0A7DBC 800A71BC AFB80020 */ sw $t8, 0x20($sp) -.L800A71C0: -/* 0A7DC0 800A71C0 8C590010 */ lw $t9, 0x10($v0) -/* 0A7DC4 800A71C4 00000000 */ nop -/* 0A7DC8 800A71C8 332A0004 */ andi $t2, $t9, 4 -/* 0A7DCC 800A71CC 11400004 */ beqz $t2, .L800A71E0 -/* 0A7DD0 800A71D0 3C0C8012 */ lui $t4, %hi(D_80126CDC) # $t4, 0x8012 -/* 0A7DD4 800A71D4 8D8C6CDC */ lw $t4, %lo(D_80126CDC)($t4) -/* 0A7DD8 800A71D8 240B0045 */ li $t3, 69 -/* 0A7DDC 800A71DC A58B0266 */ sh $t3, 0x266($t4) -.L800A71E0: -/* 0A7DE0 800A71E0 0C007910 */ jal func_8001E440 -/* 0A7DE4 800A71E4 AFA4001C */ sw $a0, 0x1c($sp) -/* 0A7DE8 800A71E8 8FA4001C */ lw $a0, 0x1c($sp) -/* 0A7DEC 800A71EC 2401000A */ li $at, 10 -/* 0A7DF0 800A71F0 1441000D */ bne $v0, $at, .L800A7228 -/* 0A7DF4 800A71F4 00000000 */ nop -/* 0A7DF8 800A71F8 0C006B95 */ jal func_8001AE54 -/* 0A7DFC 800A71FC AFA4001C */ sw $a0, 0x1c($sp) -/* 0A7E00 800A7200 8FAD0020 */ lw $t5, 0x20($sp) -/* 0A7E04 800A7204 8FA4001C */ lw $a0, 0x1c($sp) -/* 0A7E08 800A7208 004D082B */ sltu $at, $v0, $t5 -/* 0A7E0C 800A720C 10200006 */ beqz $at, .L800A7228 -/* 0A7E10 800A7210 00000000 */ nop -/* 0A7E14 800A7214 8C8E0000 */ lw $t6, ($a0) -/* 0A7E18 800A7218 00000000 */ nop -/* 0A7E1C 800A721C 85C30000 */ lh $v1, ($t6) -/* 0A7E20 800A7220 1000001D */ b .L800A7298 -/* 0A7E24 800A7224 2463FFFF */ addiu $v1, $v1, -1 -.L800A7228: -/* 0A7E28 800A7228 8C8F0000 */ lw $t7, ($a0) -/* 0A7E2C 800A722C 00000000 */ nop -/* 0A7E30 800A7230 85E30000 */ lh $v1, ($t7) -/* 0A7E34 800A7234 0C007910 */ jal func_8001E440 -/* 0A7E38 800A7238 AFA3002C */ sw $v1, 0x2c($sp) -/* 0A7E3C 800A723C 8FA3002C */ lw $v1, 0x2c($sp) -/* 0A7E40 800A7240 2401000A */ li $at, 10 -/* 0A7E44 800A7244 14410014 */ bne $v0, $at, .L800A7298 -/* 0A7E48 800A7248 00000000 */ nop -/* 0A7E4C 800A724C 0C006B95 */ jal func_8001AE54 -/* 0A7E50 800A7250 AFA3002C */ sw $v1, 0x2c($sp) -/* 0A7E54 800A7254 8FB80020 */ lw $t8, 0x20($sp) -/* 0A7E58 800A7258 8FA3002C */ lw $v1, 0x2c($sp) -/* 0A7E5C 800A725C 27190008 */ addiu $t9, $t8, 8 -/* 0A7E60 800A7260 0059082B */ sltu $at, $v0, $t9 -/* 0A7E64 800A7264 1020000C */ beqz $at, .L800A7298 -/* 0A7E68 800A7268 00000000 */ nop -/* 0A7E6C 800A726C 3C058012 */ lui $a1, %hi(D_80126D44) # $a1, 0x8012 -/* 0A7E70 800A7270 24A56D44 */ addiu $a1, %lo(D_80126D44) # addiu $a1, $a1, 0x6d44 -/* 0A7E74 800A7274 8CAA0000 */ lw $t2, ($a1) -/* 0A7E78 800A7278 00000000 */ nop -/* 0A7E7C 800A727C 15400006 */ bnez $t2, .L800A7298 -/* 0A7E80 800A7280 00000000 */ nop -/* 0A7E84 800A7284 240400FE */ li $a0, 254 -/* 0A7E88 800A7288 0C000741 */ jal func_80001D04 -/* 0A7E8C 800A728C AFA3002C */ sw $v1, 0x2c($sp) -/* 0A7E90 800A7290 8FA3002C */ lw $v1, 0x2c($sp) -/* 0A7E94 800A7294 00000000 */ nop -.L800A7298: -/* 0A7E98 800A7298 04610002 */ bgez $v1, .L800A72A4 -/* 0A7E9C 800A729C 2409000A */ li $t1, 10 -/* 0A7EA0 800A72A0 00001825 */ move $v1, $zero -.L800A72A4: -/* 0A7EA4 800A72A4 0069001A */ div $zero, $v1, $t1 -/* 0A7EA8 800A72A8 15200002 */ bnez $t1, .L800A72B4 -/* 0A7EAC 800A72AC 00000000 */ nop -/* 0A7EB0 800A72B0 0007000D */ break 7 -.L800A72B4: -/* 0A7EB4 800A72B4 2401FFFF */ li $at, -1 -/* 0A7EB8 800A72B8 15210004 */ bne $t1, $at, .L800A72CC -/* 0A7EBC 800A72BC 3C018000 */ lui $at, 0x8000 -/* 0A7EC0 800A72C0 14610002 */ bne $v1, $at, .L800A72CC -/* 0A7EC4 800A72C4 00000000 */ nop -/* 0A7EC8 800A72C8 0006000D */ break 6 -.L800A72CC: -/* 0A7ECC 800A72CC 00001012 */ mflo $v0 -/* 0A7ED0 800A72D0 1040001D */ beqz $v0, .L800A7348 -/* 0A7ED4 800A72D4 00000000 */ nop -/* 0A7ED8 800A72D8 0069001A */ div $zero, $v1, $t1 -/* 0A7EDC 800A72DC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A7EE0 800A72E0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A7EE4 800A72E4 8D0B0000 */ lw $t3, ($t0) -/* 0A7EE8 800A72E8 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A7EEC 800A72EC A56202B8 */ sh $v0, 0x2b8($t3) -/* 0A7EF0 800A72F0 8D0D0000 */ lw $t5, ($t0) -/* 0A7EF4 800A72F4 15200002 */ bnez $t1, .L800A7300 -/* 0A7EF8 800A72F8 00000000 */ nop -/* 0A7EFC 800A72FC 0007000D */ break 7 -.L800A7300: -/* 0A7F00 800A7300 2401FFFF */ li $at, -1 -/* 0A7F04 800A7304 15210004 */ bne $t1, $at, .L800A7318 -/* 0A7F08 800A7308 3C018000 */ lui $at, 0x8000 -/* 0A7F0C 800A730C 14610002 */ bne $v1, $at, .L800A7318 -/* 0A7F10 800A7310 00000000 */ nop -/* 0A7F14 800A7314 0006000D */ break 6 -.L800A7318: -/* 0A7F18 800A7318 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A7F1C 800A731C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A7F20 800A7320 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A7F24 800A7324 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A7F28 800A7328 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A7F2C 800A732C 00006010 */ mfhi $t4 -/* 0A7F30 800A7330 A5AC02D8 */ sh $t4, 0x2d8($t5) -/* 0A7F34 800A7334 8D070000 */ lw $a3, ($t0) -/* 0A7F38 800A7338 0C02A980 */ jal func_800AA600 -/* 0A7F3C 800A733C 24E702C0 */ addiu $a3, $a3, 0x2c0 -/* 0A7F40 800A7340 10000010 */ b .L800A7384 -/* 0A7F44 800A7344 00000000 */ nop -.L800A7348: -/* 0A7F48 800A7348 0069001A */ div $zero, $v1, $t1 -/* 0A7F4C 800A734C 3C0F8012 */ lui $t7, %hi(D_80126CDC) # $t7, 0x8012 -/* 0A7F50 800A7350 8DEF6CDC */ lw $t7, %lo(D_80126CDC)($t7) -/* 0A7F54 800A7354 15200002 */ bnez $t1, .L800A7360 -/* 0A7F58 800A7358 00000000 */ nop -/* 0A7F5C 800A735C 0007000D */ break 7 -.L800A7360: -/* 0A7F60 800A7360 2401FFFF */ li $at, -1 -/* 0A7F64 800A7364 15210004 */ bne $t1, $at, .L800A7378 -/* 0A7F68 800A7368 3C018000 */ lui $at, 0x8000 -/* 0A7F6C 800A736C 14610002 */ bne $v1, $at, .L800A7378 -/* 0A7F70 800A7370 00000000 */ nop -/* 0A7F74 800A7374 0006000D */ break 6 -.L800A7378: -/* 0A7F78 800A7378 00007010 */ mfhi $t6 -/* 0A7F7C 800A737C A5EE02B8 */ sh $t6, 0x2b8($t7) -/* 0A7F80 800A7380 00000000 */ nop -.L800A7384: -/* 0A7F84 800A7384 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 -/* 0A7F88 800A7388 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) -/* 0A7F8C 800A738C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A7F90 800A7390 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A7F94 800A7394 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A7F98 800A7398 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A7F9C 800A739C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A7FA0 800A73A0 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A7FA4 800A73A4 0C02A980 */ jal func_800AA600 -/* 0A7FA8 800A73A8 24E702A0 */ addiu $a3, $a3, 0x2a0 -/* 0A7FAC 800A73AC 0C019826 */ jal func_80066098 -/* 0A7FB0 800A73B0 24040001 */ li $a0, 1 -/* 0A7FB4 800A73B4 3C188000 */ lui $t8, %hi(D_80000300) # $t8, 0x8000 -/* 0A7FB8 800A73B8 8F180300 */ lw $t8, %lo(D_80000300)($t8) -/* 0A7FBC 800A73BC 00000000 */ nop -/* 0A7FC0 800A73C0 17000003 */ bnez $t8, .L800A73D0 -/* 0A7FC4 800A73C4 00000000 */ nop -/* 0A7FC8 800A73C8 0C01EFC7 */ jal func_8007BF1C -/* 0A7FCC 800A73CC 24040001 */ li $a0, 1 -.L800A73D0: -/* 0A7FD0 800A73D0 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 -/* 0A7FD4 800A73D4 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) -/* 0A7FD8 800A73D8 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A7FDC 800A73DC 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A7FE0 800A73E0 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A7FE4 800A73E4 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A7FE8 800A73E8 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A7FEC 800A73EC 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A7FF0 800A73F0 0C02A980 */ jal func_800AA600 -/* 0A7FF4 800A73F4 24E70260 */ addiu $a3, $a3, 0x260 -/* 0A7FF8 800A73F8 0C01EFC7 */ jal func_8007BF1C -/* 0A7FFC 800A73FC 00002025 */ move $a0, $zero -/* 0A8000 800A7400 0C019826 */ jal func_80066098 -/* 0A8004 800A7404 00002025 */ move $a0, $zero -/* 0A8008 800A7408 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 -/* 0A800C 800A740C 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) -/* 0A8010 800A7410 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A8014 800A7414 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A8018 800A7418 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A801C 800A741C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A8020 800A7420 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A8024 800A7424 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A8028 800A7428 0C02A980 */ jal func_800AA600 -/* 0A802C 800A742C 24E70280 */ addiu $a3, $a3, 0x280 -/* 0A8030 800A7430 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A8034 800A7434 27BD0030 */ addiu $sp, $sp, 0x30 -/* 0A8038 800A7438 03E00008 */ jr $ra -/* 0A803C 800A743C 00000000 */ nop - -/* 0A8040 800A7440 3C0E8012 */ lui $t6, %hi(D_80126D40) # $t6, 0x8012 -/* 0A8044 800A7444 8DCE6D40 */ lw $t6, %lo(D_80126D40)($t6) -/* 0A8048 800A7448 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0A804C 800A744C AFBF0014 */ sw $ra, 0x14($sp) -/* 0A8050 800A7450 15C00008 */ bnez $t6, .L800A7474 -/* 0A8054 800A7454 AFA40018 */ sw $a0, 0x18($sp) -/* 0A8058 800A7458 0C01BAA8 */ jal func_8006EAA0 -/* 0A805C 800A745C 00000000 */ nop -/* 0A8060 800A7460 14400004 */ bnez $v0, .L800A7474 -/* 0A8064 800A7464 3C058012 */ lui $a1, %hi(D_80126D40) # $a1, 0x8012 -/* 0A8068 800A7468 97A4001A */ lhu $a0, 0x1a($sp) -/* 0A806C 800A746C 0C000741 */ jal func_80001D04 -/* 0A8070 800A7470 24A56D40 */ addiu $a1, %lo(D_80126D40) # addiu $a1, $a1, 0x6d40 -.L800A7474: -/* 0A8074 800A7474 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A8078 800A7478 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0A807C 800A747C 03E00008 */ jr $ra -/* 0A8080 800A7480 00000000 */ nop - -glabel func_800A7484 -/* 0A8084 800A7484 3C028012 */ lui $v0, %hi(D_80126D74) # $v0, 0x8012 -/* 0A8088 800A7488 24426D74 */ addiu $v0, %lo(D_80126D74) # addiu $v0, $v0, 0x6d74 -/* 0A808C 800A748C 8C4F0000 */ lw $t7, ($v0) -/* 0A8090 800A7490 44856000 */ mtc1 $a1, $f12 -/* 0A8094 800A7494 AFA40000 */ sw $a0, ($sp) -/* 0A8098 800A7498 15E00012 */ bnez $t7, .L800A74E4 -/* 0A809C 800A749C 308EFFFF */ andi $t6, $a0, 0xffff -/* 0A80A0 800A74A0 3C018012 */ lui $at, %hi(D_80126D7C) # $at, 0x8012 -/* 0A80A4 800A74A4 A42E6D7C */ sh $t6, %lo(D_80126D7C)($at) -/* 0A80A8 800A74A8 3C014270 */ li $at, 0x42700000 # 60.000000 -/* 0A80AC 800A74AC 44812000 */ mtc1 $at, $f4 -/* 0A80B0 800A74B0 00000000 */ nop -/* 0A80B4 800A74B4 46046182 */ mul.s $f6, $f12, $f4 -/* 0A80B8 800A74B8 4458F800 */ cfc1 $t8, $31 -/* 0A80BC 800A74BC 00000000 */ nop -/* 0A80C0 800A74C0 37010003 */ ori $at, $t8, 3 -/* 0A80C4 800A74C4 38210002 */ xori $at, $at, 2 -/* 0A80C8 800A74C8 44C1F800 */ ctc1 $at, $31 -/* 0A80CC 800A74CC 3C018012 */ lui $at, %hi(D_80126D78) # $at, 0x8012 -/* 0A80D0 800A74D0 46003224 */ cvt.w.s $f8, $f6 -/* 0A80D4 800A74D4 44194000 */ mfc1 $t9, $f8 -/* 0A80D8 800A74D8 44D8F800 */ ctc1 $t8, $31 -/* 0A80DC 800A74DC AC590000 */ sw $t9, ($v0) -/* 0A80E0 800A74E0 AC266D78 */ sw $a2, %lo(D_80126D78)($at) -.L800A74E4: -/* 0A80E4 800A74E4 03E00008 */ jr $ra -/* 0A80E8 800A74E8 00000000 */ nop - -glabel func_800A74EC -/* 0A80EC 800A74EC 3C0F8012 */ lui $t7, %hi(D_80126D7C) # $t7, 0x8012 -/* 0A80F0 800A74F0 95EF6D7C */ lhu $t7, %lo(D_80126D7C)($t7) -/* 0A80F4 800A74F4 308EFFFF */ andi $t6, $a0, 0xffff -/* 0A80F8 800A74F8 15EE0007 */ bne $t7, $t6, .L800A7518 -/* 0A80FC 800A74FC AFA40000 */ sw $a0, ($sp) -/* 0A8100 800A7500 3C188012 */ lui $t8, %hi(D_80126D78) # $t8, 0x8012 -/* 0A8104 800A7504 8F186D78 */ lw $t8, %lo(D_80126D78)($t8) -/* 0A8108 800A7508 3C018012 */ lui $at, %hi(D_80126D74) # $at, 0x8012 -/* 0A810C 800A750C 14B80002 */ bne $a1, $t8, .L800A7518 -/* 0A8110 800A7510 00000000 */ nop -/* 0A8114 800A7514 AC206D74 */ sw $zero, %lo(D_80126D74)($at) -.L800A7518: -/* 0A8118 800A7518 03E00008 */ jr $ra -/* 0A811C 800A751C 00000000 */ nop - -glabel func_800A7520 -/* 0A8120 800A7520 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0A8124 800A7524 AFBF0014 */ sw $ra, 0x14($sp) -/* 0A8128 800A7528 AFA50024 */ sw $a1, 0x24($sp) -/* 0A812C 800A752C 8C890064 */ lw $t1, 0x64($a0) -/* 0A8130 800A7530 24040001 */ li $a0, 1 -/* 0A8134 800A7534 812E01D8 */ lb $t6, 0x1d8($t1) -/* 0A8138 800A7538 00000000 */ nop -/* 0A813C 800A753C 15C00145 */ bnez $t6, .L800A7A54 -/* 0A8140 800A7540 8FBF0014 */ lw $ra, 0x14($sp) -/* 0A8144 800A7544 0C019826 */ jal func_80066098 -/* 0A8148 800A7548 AFA9001C */ sw $t1, 0x1c($sp) -/* 0A814C 800A754C 8FA9001C */ lw $t1, 0x1c($sp) -/* 0A8150 800A7550 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A8154 800A7554 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A8158 800A7558 8D020000 */ lw $v0, ($t0) -/* 0A815C 800A755C 812F0172 */ lb $t7, 0x172($t1) -/* 0A8160 800A7560 81230174 */ lb $v1, 0x174($t1) -/* 0A8164 800A7564 8059005D */ lb $t9, 0x5d($v0) -/* 0A8168 800A7568 000FC080 */ sll $t8, $t7, 2 -/* 0A816C 800A756C 030FC023 */ subu $t8, $t8, $t7 -/* 0A8170 800A7570 10790013 */ beq $v1, $t9, .L800A75C0 -/* 0A8174 800A7574 03032021 */ addu $a0, $t8, $v1 -/* 0A8178 800A7578 14600004 */ bnez $v1, .L800A758C -/* 0A817C 800A757C 3C0B8012 */ lui $t3, %hi(D_80126D37) # $t3, 0x8012 -/* 0A8180 800A7580 240A0078 */ li $t2, 120 -/* 0A8184 800A7584 10000008 */ b .L800A75A8 -/* 0A8188 800A7588 A04A005C */ sb $t2, 0x5c($v0) -.L800A758C: -/* 0A818C 800A758C 916B6D37 */ lbu $t3, %lo(D_80126D37)($t3) -/* 0A8190 800A7590 24010001 */ li $at, 1 -/* 0A8194 800A7594 15610003 */ bne $t3, $at, .L800A75A4 -/* 0A8198 800A7598 240C0078 */ li $t4, 120 -/* 0A819C 800A759C 10000002 */ b .L800A75A8 -/* 0A81A0 800A75A0 A040005C */ sb $zero, 0x5c($v0) -.L800A75A4: -/* 0A81A4 800A75A4 A04C005C */ sb $t4, 0x5c($v0) -.L800A75A8: -/* 0A81A8 800A75A8 812D0174 */ lb $t5, 0x174($t1) -/* 0A81AC 800A75AC 8D0E0000 */ lw $t6, ($t0) -/* 0A81B0 800A75B0 00000000 */ nop -/* 0A81B4 800A75B4 A1CD005D */ sb $t5, 0x5d($t6) -/* 0A81B8 800A75B8 8D020000 */ lw $v0, ($t0) -/* 0A81BC 800A75BC 00000000 */ nop -.L800A75C0: -/* 0A81C0 800A75C0 812F0173 */ lb $t7, 0x173($t1) -/* 0A81C4 800A75C4 00000000 */ nop -/* 0A81C8 800A75C8 19E000DD */ blez $t7, .L800A7940 -/* 0A81CC 800A75CC 00000000 */ nop -/* 0A81D0 800A75D0 8043005B */ lb $v1, 0x5b($v0) -/* 0A81D4 800A75D4 00000000 */ nop -/* 0A81D8 800A75D8 28610010 */ slti $at, $v1, 0x10 -/* 0A81DC 800A75DC 10200016 */ beqz $at, .L800A7638 -/* 0A81E0 800A75E0 00000000 */ nop -/* 0A81E4 800A75E4 85380170 */ lh $t8, 0x170($t1) -/* 0A81E8 800A75E8 0003CB00 */ sll $t9, $v1, 0xc -/* 0A81EC 800A75EC 17000012 */ bnez $t8, .L800A7638 -/* 0A81F0 800A75F0 00000000 */ nop -/* 0A81F4 800A75F4 A4590044 */ sh $t9, 0x44($v0) -/* 0A81F8 800A75F8 8D020000 */ lw $v0, ($t0) -/* 0A81FC 800A75FC 3C01800F */ lui $at, %hi(D_800E8784) # $at, 0x800f -/* 0A8200 800A7600 804A005B */ lb $t2, 0x5b($v0) -/* 0A8204 800A7604 C4298780 */ lwc1 $f9, %lo(D_800E8780)($at) -/* 0A8208 800A7608 448A2000 */ mtc1 $t2, $f4 -/* 0A820C 800A760C C4288784 */ lwc1 $f8, %lo(D_800E8784)($at) -/* 0A8210 800A7610 468021A1 */ cvt.d.w $f6, $f4 -/* 0A8214 800A7614 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 0A8218 800A7618 44818800 */ mtc1 $at, $f17 -/* 0A821C 800A761C 46283282 */ mul.d $f10, $f6, $f8 -/* 0A8220 800A7620 44808000 */ mtc1 $zero, $f16 -/* 0A8224 800A7624 00000000 */ nop -/* 0A8228 800A7628 46305480 */ add.d $f18, $f10, $f16 -/* 0A822C 800A762C 46209120 */ cvt.s.d $f4, $f18 -/* 0A8230 800A7630 10000007 */ b .L800A7650 -/* 0A8234 800A7634 E4440048 */ swc1 $f4, 0x48($v0) -.L800A7638: -/* 0A8238 800A7638 A4400044 */ sh $zero, 0x44($v0) -/* 0A823C 800A763C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0A8240 800A7640 44813000 */ mtc1 $at, $f6 -/* 0A8244 800A7644 8D0B0000 */ lw $t3, ($t0) -/* 0A8248 800A7648 00000000 */ nop -/* 0A824C 800A764C E5660048 */ swc1 $f6, 0x48($t3) -.L800A7650: -/* 0A8250 800A7650 8D0C0000 */ lw $t4, ($t0) -/* 0A8254 800A7654 24190010 */ li $t9, 16 -/* 0A8258 800A7658 A5840058 */ sh $a0, 0x58($t4) -/* 0A825C 800A765C 8D020000 */ lw $v0, ($t0) -/* 0A8260 800A7660 8FAE0024 */ lw $t6, 0x24($sp) -/* 0A8264 800A7664 804D005B */ lb $t5, 0x5b($v0) -/* 0A8268 800A7668 00000000 */ nop -/* 0A826C 800A766C 01AE7821 */ addu $t7, $t5, $t6 -/* 0A8270 800A7670 A04F005B */ sb $t7, 0x5b($v0) -/* 0A8274 800A7674 8D020000 */ lw $v0, ($t0) -/* 0A8278 800A7678 00000000 */ nop -/* 0A827C 800A767C 8058005B */ lb $t8, 0x5b($v0) -/* 0A8280 800A7680 00000000 */ nop -/* 0A8284 800A7684 2B010011 */ slti $at, $t8, 0x11 -/* 0A8288 800A7688 14200040 */ bnez $at, .L800A778C -/* 0A828C 800A768C 00000000 */ nop -/* 0A8290 800A7690 A059005B */ sb $t9, 0x5b($v0) -/* 0A8294 800A7694 8D020000 */ lw $v0, ($t0) -/* 0A8298 800A7698 8FAB0024 */ lw $t3, 0x24($sp) -/* 0A829C 800A769C 804A005C */ lb $t2, 0x5c($v0) -/* 0A82A0 800A76A0 240D0078 */ li $t5, 120 -/* 0A82A4 800A76A4 014B6021 */ addu $t4, $t2, $t3 -/* 0A82A8 800A76A8 A04C005C */ sb $t4, 0x5c($v0) -/* 0A82AC 800A76AC 8D020000 */ lw $v0, ($t0) -/* 0A82B0 800A76B0 3C0E8012 */ lui $t6, %hi(D_80126D0C) # $t6, 0x8012 -/* 0A82B4 800A76B4 8043005C */ lb $v1, 0x5c($v0) -/* 0A82B8 800A76B8 00000000 */ nop -/* 0A82BC 800A76BC 28610079 */ slti $at, $v1, 0x79 -/* 0A82C0 800A76C0 14200005 */ bnez $at, .L800A76D8 -/* 0A82C4 800A76C4 00000000 */ nop -/* 0A82C8 800A76C8 A04D005C */ sb $t5, 0x5c($v0) -/* 0A82CC 800A76CC 8D020000 */ lw $v0, ($t0) -/* 0A82D0 800A76D0 1000002E */ b .L800A778C -/* 0A82D4 800A76D4 00000000 */ nop -.L800A76D8: -/* 0A82D8 800A76D8 8DCE6D0C */ lw $t6, %lo(D_80126D0C)($t6) -/* 0A82DC 800A76DC 00000000 */ nop -/* 0A82E0 800A76E0 15C0002A */ bnez $t6, .L800A778C -/* 0A82E4 800A76E4 00000000 */ nop -/* 0A82E8 800A76E8 44834000 */ mtc1 $v1, $f8 -/* 0A82EC 800A76EC 3C01800F */ lui $at, %hi(D_800E878C) # $at, 0x800f -/* 0A82F0 800A76F0 468042A0 */ cvt.s.w $f10, $f8 -/* 0A82F4 800A76F4 C4338788 */ lwc1 $f19, %lo(D_800E8788)($at) -/* 0A82F8 800A76F8 C432878C */ lwc1 $f18, %lo(D_800E878C)($at) -/* 0A82FC 800A76FC 46005421 */ cvt.d.s $f16, $f10 -/* 0A8300 800A7700 46328102 */ mul.d $f4, $f16, $f18 -/* 0A8304 800A7704 3C014010 */ li $at, 0x40100000 # 2.250000 -/* 0A8308 800A7708 44813800 */ mtc1 $at, $f7 -/* 0A830C 800A770C 44803000 */ mtc1 $zero, $f6 -/* 0A8310 800A7710 AFA9001C */ sw $t1, 0x1c($sp) -/* 0A8314 800A7714 46262202 */ mul.d $f8, $f4, $f6 -/* 0A8318 800A7718 444FF800 */ cfc1 $t7, $31 -/* 0A831C 800A771C 00000000 */ nop -/* 0A8320 800A7720 35E10003 */ ori $at, $t7, 3 -/* 0A8324 800A7724 38210002 */ xori $at, $at, 2 -/* 0A8328 800A7728 44C1F800 */ ctc1 $at, $31 -/* 0A832C 800A772C 00000000 */ nop -/* 0A8330 800A7730 462042A4 */ cvt.w.d $f10, $f8 -/* 0A8334 800A7734 44045000 */ mfc1 $a0, $f10 -/* 0A8338 800A7738 44CFF800 */ ctc1 $t7, $31 -/* 0A833C 800A773C 0004C400 */ sll $t8, $a0, 0x10 -/* 0A8340 800A7740 0C01C1F1 */ jal func_800707C4 -/* 0A8344 800A7744 00182403 */ sra $a0, $t8, 0x10 -/* 0A8348 800A7748 3C01800F */ lui $at, %hi(D_800E8794) # $at, 0x800f -/* 0A834C 800A774C C4318790 */ lwc1 $f17, %lo(D_800E8790)($at) -/* 0A8350 800A7750 C4308794 */ lwc1 $f16, %lo(D_800E8794)($at) -/* 0A8354 800A7754 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A8358 800A7758 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A835C 800A775C 460004A1 */ cvt.d.s $f18, $f0 -/* 0A8360 800A7760 46328102 */ mul.d $f4, $f16, $f18 -/* 0A8364 800A7764 8D020000 */ lw $v0, ($t0) -/* 0A8368 800A7768 8FA9001C */ lw $t1, 0x1c($sp) -/* 0A836C 800A776C C4460048 */ lwc1 $f6, 0x48($v0) -/* 0A8370 800A7770 00000000 */ nop -/* 0A8374 800A7774 46003221 */ cvt.d.s $f8, $f6 -/* 0A8378 800A7778 46244280 */ add.d $f10, $f8, $f4 -/* 0A837C 800A777C 46205420 */ cvt.s.d $f16, $f10 -/* 0A8380 800A7780 E4500048 */ swc1 $f16, 0x48($v0) -/* 0A8384 800A7784 8D020000 */ lw $v0, ($t0) -/* 0A8388 800A7788 00000000 */ nop -.L800A778C: -/* 0A838C 800A778C 3C0A8012 */ lui $t2, %hi(D_80126D0C) # $t2, 0x8012 -/* 0A8390 800A7790 8D4A6D0C */ lw $t2, %lo(D_80126D0C)($t2) -/* 0A8394 800A7794 44808000 */ mtc1 $zero, $f16 -/* 0A8398 800A7798 1940000A */ blez $t2, .L800A77C4 -/* 0A839C 800A779C 3C013FE8 */ li $at, 0x3FE80000 # 1.812500 -/* 0A83A0 800A77A0 C4520048 */ lwc1 $f18, 0x48($v0) -/* 0A83A4 800A77A4 44814800 */ mtc1 $at, $f9 -/* 0A83A8 800A77A8 44804000 */ mtc1 $zero, $f8 -/* 0A83AC 800A77AC 460091A1 */ cvt.d.s $f6, $f18 -/* 0A83B0 800A77B0 46283102 */ mul.d $f4, $f6, $f8 -/* 0A83B4 800A77B4 462022A0 */ cvt.s.d $f10, $f4 -/* 0A83B8 800A77B8 E44A0048 */ swc1 $f10, 0x48($v0) -/* 0A83BC 800A77BC 8D020000 */ lw $v0, ($t0) -/* 0A83C0 800A77C0 00000000 */ nop -.L800A77C4: -/* 0A83C4 800A77C4 C4520048 */ lwc1 $f18, 0x48($v0) -/* 0A83C8 800A77C8 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 0A83CC 800A77CC 44818800 */ mtc1 $at, $f17 -/* 0A83D0 800A77D0 460091A1 */ cvt.d.s $f6, $f18 -/* 0A83D4 800A77D4 46268032 */ c.eq.d $f16, $f6 -/* 0A83D8 800A77D8 24040001 */ li $a0, 1 -/* 0A83DC 800A77DC 45010008 */ bc1t .L800A7800 -/* 0A83E0 800A77E0 00000000 */ nop -/* 0A83E4 800A77E4 0C01EFC7 */ jal func_8007BF1C -/* 0A83E8 800A77E8 AFA9001C */ sw $t1, 0x1c($sp) -/* 0A83EC 800A77EC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A83F0 800A77F0 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A83F4 800A77F4 8D020000 */ lw $v0, ($t0) -/* 0A83F8 800A77F8 8FA9001C */ lw $t1, 0x1c($sp) -/* 0A83FC 800A77FC 00000000 */ nop -.L800A7800: -/* 0A8400 800A7800 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A8404 800A7804 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A8408 800A7808 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A840C 800A780C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A8410 800A7810 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A8414 800A7814 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A8418 800A7818 24470040 */ addiu $a3, $v0, 0x40 -/* 0A841C 800A781C 0C02A980 */ jal func_800AA600 -/* 0A8420 800A7820 AFA9001C */ sw $t1, 0x1c($sp) -/* 0A8424 800A7824 0C01EFC7 */ jal func_8007BF1C -/* 0A8428 800A7828 00002025 */ move $a0, $zero -/* 0A842C 800A782C 8FA9001C */ lw $t1, 0x1c($sp) -/* 0A8430 800A7830 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A8434 800A7834 81230173 */ lb $v1, 0x173($t1) -/* 0A8438 800A7838 25086CDC */ addiu $t0, %lo(D_80126CDC) # addiu $t0, $t0, 0x6cdc -/* 0A843C 800A783C 28610004 */ slti $at, $v1, 4 -/* 0A8440 800A7840 14200006 */ bnez $at, .L800A785C -/* 0A8444 800A7844 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A8448 800A7848 8D0C0000 */ lw $t4, ($t0) -/* 0A844C 800A784C 240BFF80 */ li $t3, -128 -/* 0A8450 800A7850 A18B063A */ sb $t3, 0x63a($t4) -/* 0A8454 800A7854 81230173 */ lb $v1, 0x173($t1) -/* 0A8458 800A7858 00000000 */ nop -.L800A785C: -/* 0A845C 800A785C 28610003 */ slti $at, $v1, 3 -/* 0A8460 800A7860 10200009 */ beqz $at, .L800A7888 -/* 0A8464 800A7864 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A8468 800A7868 8D020000 */ lw $v0, ($t0) -/* 0A846C 800A786C 8FAE0024 */ lw $t6, 0x24($sp) -/* 0A8470 800A7870 804D063A */ lb $t5, 0x63a($v0) -/* 0A8474 800A7874 00000000 */ nop -/* 0A8478 800A7878 01AE7823 */ subu $t7, $t5, $t6 -/* 0A847C 800A787C A04F063A */ sb $t7, 0x63a($v0) -/* 0A8480 800A7880 81230173 */ lb $v1, 0x173($t1) -/* 0A8484 800A7884 00000000 */ nop -.L800A7888: -/* 0A8488 800A7888 28610003 */ slti $at, $v1, 3 -/* 0A848C 800A788C 10200010 */ beqz $at, .L800A78D0 -/* 0A8490 800A7890 3C0DFA00 */ lui $t5, 0xfa00 -/* 0A8494 800A7894 8D180000 */ lw $t8, ($t0) -/* 0A8498 800A7898 00000000 */ nop -/* 0A849C 800A789C 8319063A */ lb $t9, 0x63a($t8) -/* 0A84A0 800A78A0 00000000 */ nop -/* 0A84A4 800A78A4 272A0080 */ addiu $t2, $t9, 0x80 -/* 0A84A8 800A78A8 05410004 */ bgez $t2, .L800A78BC -/* 0A84AC 800A78AC 314B001F */ andi $t3, $t2, 0x1f -/* 0A84B0 800A78B0 11600002 */ beqz $t3, .L800A78BC -/* 0A84B4 800A78B4 00000000 */ nop -/* 0A84B8 800A78B8 256BFFE0 */ addiu $t3, $t3, -0x20 -.L800A78BC: -/* 0A84BC 800A78BC 29610014 */ slti $at, $t3, 0x14 -/* 0A84C0 800A78C0 1020001D */ beqz $at, .L800A7938 -/* 0A84C4 800A78C4 24010001 */ li $at, 1 -/* 0A84C8 800A78C8 1061001B */ beq $v1, $at, .L800A7938 -/* 0A84CC 800A78CC 00000000 */ nop -.L800A78D0: -/* 0A84D0 800A78D0 8C820000 */ lw $v0, ($a0) -/* 0A84D4 800A78D4 240EFFA0 */ li $t6, -96 -/* 0A84D8 800A78D8 244C0008 */ addiu $t4, $v0, 8 -/* 0A84DC 800A78DC AC8C0000 */ sw $t4, ($a0) -/* 0A84E0 800A78E0 AC4E0004 */ sw $t6, 4($v0) -/* 0A84E4 800A78E4 AC4D0000 */ sw $t5, ($v0) -/* 0A84E8 800A78E8 812F0173 */ lb $t7, 0x173($t1) -/* 0A84EC 800A78EC 8D190000 */ lw $t9, ($t0) -/* 0A84F0 800A78F0 25F8FFFF */ addiu $t8, $t7, -1 -/* 0A84F4 800A78F4 A7380638 */ sh $t8, 0x638($t9) -/* 0A84F8 800A78F8 8D070000 */ lw $a3, ($t0) -/* 0A84FC 800A78FC 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A8500 800A7900 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A8504 800A7904 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A8508 800A7908 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A850C 800A790C 0C02A980 */ jal func_800AA600 -/* 0A8510 800A7910 24E70620 */ addiu $a3, $a3, 0x620 -/* 0A8514 800A7914 3C058012 */ lui $a1, %hi(D_80126CFC) # $a1, 0x8012 -/* 0A8518 800A7918 24A56CFC */ addiu $a1, %lo(D_80126CFC) # addiu $a1, $a1, 0x6cfc -/* 0A851C 800A791C 8CA20000 */ lw $v0, ($a1) -/* 0A8520 800A7920 3C0BFA00 */ lui $t3, 0xfa00 -/* 0A8524 800A7924 244A0008 */ addiu $t2, $v0, 8 -/* 0A8528 800A7928 ACAA0000 */ sw $t2, ($a1) -/* 0A852C 800A792C 240CFFFF */ li $t4, -1 -/* 0A8530 800A7930 AC4C0004 */ sw $t4, 4($v0) -/* 0A8534 800A7934 AC4B0000 */ sw $t3, ($v0) -.L800A7938: -/* 0A8538 800A7938 1000003A */ b .L800A7A24 -/* 0A853C 800A793C 00000000 */ nop -.L800A7940: -/* 0A8540 800A7940 8043005B */ lb $v1, 0x5b($v0) -/* 0A8544 800A7944 00000000 */ nop -/* 0A8548 800A7948 18600036 */ blez $v1, .L800A7A24 -/* 0A854C 800A794C 00036B00 */ sll $t5, $v1, 0xc -/* 0A8550 800A7950 A44D0044 */ sh $t5, 0x44($v0) -/* 0A8554 800A7954 8D020000 */ lw $v0, ($t0) -/* 0A8558 800A7958 3C01800F */ lui $at, %hi(D_800E879C) # $at, 0x800f -/* 0A855C 800A795C 804E005B */ lb $t6, 0x5b($v0) -/* 0A8560 800A7960 C42B8798 */ lwc1 $f11, %lo(D_800E8798)($at) -/* 0A8564 800A7964 448E4000 */ mtc1 $t6, $f8 -/* 0A8568 800A7968 C42A879C */ lwc1 $f10, %lo(D_800E879C)($at) -/* 0A856C 800A796C 46804121 */ cvt.d.w $f4, $f8 -/* 0A8570 800A7970 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 0A8574 800A7974 44818800 */ mtc1 $at, $f17 -/* 0A8578 800A7978 462A2482 */ mul.d $f18, $f4, $f10 -/* 0A857C 800A797C 44808000 */ mtc1 $zero, $f16 -/* 0A8580 800A7980 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A8584 800A7984 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A8588 800A7988 3C0C8012 */ lui $t4, %hi(D_80126D0C) # $t4, 0x8012 -/* 0A858C 800A798C 46309180 */ add.d $f6, $f18, $f16 -/* 0A8590 800A7990 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 0A8594 800A7994 46203220 */ cvt.s.d $f8, $f6 -/* 0A8598 800A7998 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A859C 800A799C E4480048 */ swc1 $f8, 0x48($v0) -/* 0A85A0 800A79A0 8D020000 */ lw $v0, ($t0) -/* 0A85A4 800A79A4 8FB80024 */ lw $t8, 0x24($sp) -/* 0A85A8 800A79A8 804F005B */ lb $t7, 0x5b($v0) -/* 0A85AC 800A79AC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A85B0 800A79B0 01F8C823 */ subu $t9, $t7, $t8 -/* 0A85B4 800A79B4 A059005B */ sb $t9, 0x5b($v0) -/* 0A85B8 800A79B8 8D0A0000 */ lw $t2, ($t0) -/* 0A85BC 800A79BC 00000000 */ nop -/* 0A85C0 800A79C0 A5440058 */ sh $a0, 0x58($t2) -/* 0A85C4 800A79C4 8D020000 */ lw $v0, ($t0) -/* 0A85C8 800A79C8 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A85CC 800A79CC 804B005B */ lb $t3, 0x5b($v0) -/* 0A85D0 800A79D0 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A85D4 800A79D4 05610005 */ bgez $t3, .L800A79EC -/* 0A85D8 800A79D8 00000000 */ nop -/* 0A85DC 800A79DC A040005B */ sb $zero, 0x5b($v0) -/* 0A85E0 800A79E0 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 -/* 0A85E4 800A79E4 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) -/* 0A85E8 800A79E8 00000000 */ nop -.L800A79EC: -/* 0A85EC 800A79EC 8D8C6D0C */ lw $t4, %lo(D_80126D0C)($t4) -/* 0A85F0 800A79F0 00000000 */ nop -/* 0A85F4 800A79F4 11800009 */ beqz $t4, .L800A7A1C -/* 0A85F8 800A79F8 00000000 */ nop -/* 0A85FC 800A79FC C4440048 */ lwc1 $f4, 0x48($v0) -/* 0A8600 800A7A00 44815000 */ mtc1 $at, $f10 -/* 0A8604 800A7A04 00000000 */ nop -/* 0A8608 800A7A08 460A2483 */ div.s $f18, $f4, $f10 -/* 0A860C 800A7A0C E4520048 */ swc1 $f18, 0x48($v0) -/* 0A8610 800A7A10 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 -/* 0A8614 800A7A14 8C426CDC */ lw $v0, %lo(D_80126CDC)($v0) -/* 0A8618 800A7A18 00000000 */ nop -.L800A7A1C: -/* 0A861C 800A7A1C 0C02A980 */ jal func_800AA600 -/* 0A8620 800A7A20 24470040 */ addiu $a3, $v0, 0x40 -.L800A7A24: -/* 0A8624 800A7A24 3C058012 */ lui $a1, %hi(D_80126CFC) # $a1, 0x8012 -/* 0A8628 800A7A28 24A56CFC */ addiu $a1, %lo(D_80126CFC) # addiu $a1, $a1, 0x6cfc -/* 0A862C 800A7A2C 8CA20000 */ lw $v0, ($a1) -/* 0A8630 800A7A30 3C0EFA00 */ lui $t6, 0xfa00 -/* 0A8634 800A7A34 244D0008 */ addiu $t5, $v0, 8 -/* 0A8638 800A7A38 ACAD0000 */ sw $t5, ($a1) -/* 0A863C 800A7A3C 240FFFFF */ li $t7, -1 -/* 0A8640 800A7A40 00002025 */ move $a0, $zero -/* 0A8644 800A7A44 AC4F0004 */ sw $t7, 4($v0) -/* 0A8648 800A7A48 0C019826 */ jal func_80066098 -/* 0A864C 800A7A4C AC4E0000 */ sw $t6, ($v0) -/* 0A8650 800A7A50 8FBF0014 */ lw $ra, 0x14($sp) -.L800A7A54: -/* 0A8654 800A7A54 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0A8658 800A7A58 03E00008 */ jr $ra -/* 0A865C 800A7A5C 00000000 */ nop - -glabel func_800A7A60 -/* 0A8660 800A7A60 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0A8664 800A7A64 AFBF001C */ sw $ra, 0x1c($sp) -/* 0A8668 800A7A68 8C830064 */ lw $v1, 0x64($a0) -/* 0A866C 800A7A6C 00000000 */ nop -/* 0A8670 800A7A70 8C6E0140 */ lw $t6, 0x140($v1) -/* 0A8674 800A7A74 00000000 */ nop -/* 0A8678 800A7A78 11C00038 */ beqz $t6, .L800A7B5C -/* 0A867C 800A7A7C 8FBF001C */ lw $ra, 0x1c($sp) -/* 0A8680 800A7A80 0C019888 */ jal func_80066220 -/* 0A8684 800A7A84 AFA30024 */ sw $v1, 0x24($sp) -/* 0A8688 800A7A88 8FA30024 */ lw $v1, 0x24($sp) -/* 0A868C 800A7A8C 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 -/* 0A8690 800A7A90 846F0000 */ lh $t7, ($v1) -/* 0A8694 800A7A94 00000000 */ nop -/* 0A8698 800A7A98 144F0030 */ bne $v0, $t7, .L800A7B5C -/* 0A869C 800A7A9C 8FBF001C */ lw $ra, 0x1c($sp) -/* 0A86A0 800A7AA0 8C780140 */ lw $t8, 0x140($v1) -/* 0A86A4 800A7AA4 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) -/* 0A86A8 800A7AA8 C704000C */ lwc1 $f4, 0xc($t8) -/* 0A86AC 800A7AAC 84E60226 */ lh $a2, 0x226($a3) -/* 0A86B0 800A7AB0 E4E4022C */ swc1 $f4, 0x22c($a3) -/* 0A86B4 800A7AB4 8C790140 */ lw $t9, 0x140($v1) -/* 0A86B8 800A7AB8 3C098012 */ lui $t1, %hi(D_80126CF4) # $t1, 0x8012 -/* 0A86BC 800A7ABC C7260010 */ lwc1 $f6, 0x10($t9) -/* 0A86C0 800A7AC0 00065080 */ sll $t2, $a2, 2 -/* 0A86C4 800A7AC4 E4E60230 */ swc1 $f6, 0x230($a3) -/* 0A86C8 800A7AC8 8C680140 */ lw $t0, 0x140($v1) -/* 0A86CC 800A7ACC 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A86D0 800A7AD0 C5080014 */ lwc1 $f8, 0x14($t0) -/* 0A86D4 800A7AD4 3C0C8012 */ lui $t4, %hi(D_80126CD8) # $t4, 0x8012 -/* 0A86D8 800A7AD8 E4E80234 */ swc1 $f8, 0x234($a3) -/* 0A86DC 800A7ADC 8D296CF4 */ lw $t1, %lo(D_80126CF4)($t1) -/* 0A86E0 800A7AE0 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A86E4 800A7AE4 012A5821 */ addu $t3, $t1, $t2 -/* 0A86E8 800A7AE8 8D620000 */ lw $v0, ($t3) -/* 0A86EC 800A7AEC 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A86F0 800A7AF0 10400019 */ beqz $v0, .L800A7B58 -/* 0A86F4 800A7AF4 24E70220 */ addiu $a3, $a3, 0x220 -/* 0A86F8 800A7AF8 8D8C6CD8 */ lw $t4, %lo(D_80126CD8)($t4) -/* 0A86FC 800A7AFC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A8700 800A7B00 01866821 */ addu $t5, $t4, $a2 -/* 0A8704 800A7B04 A1A00000 */ sb $zero, ($t5) -/* 0A8708 800A7B08 AFA70028 */ sw $a3, 0x28($sp) -/* 0A870C 800A7B0C 0C019B37 */ jal func_80066CDC -/* 0A8710 800A7B10 AFA2002C */ sw $v0, 0x2c($sp) -/* 0A8714 800A7B14 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A8718 800A7B18 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A871C 800A7B1C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A8720 800A7B20 0C01A102 */ jal func_80068408 -/* 0A8724 800A7B24 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A8728 800A7B28 8FA2002C */ lw $v0, 0x2c($sp) -/* 0A872C 800A7B2C 8FA70028 */ lw $a3, 0x28($sp) -/* 0A8730 800A7B30 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A8734 800A7B34 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A8738 800A7B38 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A873C 800A7B3C 240E0100 */ li $t6, 256 -/* 0A8740 800A7B40 AFAE0014 */ sw $t6, 0x14($sp) -/* 0A8744 800A7B44 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A8748 800A7B48 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A874C 800A7B4C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A8750 800A7B50 0C01A145 */ jal func_80068514 -/* 0A8754 800A7B54 AFA20010 */ sw $v0, 0x10($sp) -.L800A7B58: -/* 0A8758 800A7B58 8FBF001C */ lw $ra, 0x1c($sp) -.L800A7B5C: -/* 0A875C 800A7B5C 27BD0030 */ addiu $sp, $sp, 0x30 -/* 0A8760 800A7B60 03E00008 */ jr $ra -/* 0A8764 800A7B64 00000000 */ nop - -glabel func_800A7B68 -/* 0A8768 800A7B68 3C078012 */ lui $a3, %hi(D_80126D0C) # $a3, 0x8012 -/* 0A876C 800A7B6C 8CE76D0C */ lw $a3, %lo(D_80126D0C)($a3) -/* 0A8770 800A7B70 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 0A8774 800A7B74 AFBF0024 */ sw $ra, 0x24($sp) -/* 0A8778 800A7B78 AFB00020 */ sw $s0, 0x20($sp) -/* 0A877C 800A7B7C AFA50064 */ sw $a1, 0x64($sp) -/* 0A8780 800A7B80 10E00016 */ beqz $a3, .L800A7BDC -/* 0A8784 800A7B84 00803025 */ move $a2, $a0 -/* 0A8788 800A7B88 848F0000 */ lh $t7, ($a0) -/* 0A878C 800A7B8C 00077080 */ sll $t6, $a3, 2 -/* 0A8790 800A7B90 3C19800E */ lui $t9, 0x800e -/* 0A8794 800A7B94 01CFC021 */ addu $t8, $t6, $t7 -/* 0A8798 800A7B98 0338C821 */ addu $t9, $t9, $t8 -/* 0A879C 800A7B9C 93392794 */ lbu $t9, 0x2794($t9) -/* 0A87A0 800A7BA0 24010001 */ li $at, 1 -/* 0A87A4 800A7BA4 1321000D */ beq $t9, $at, .L800A7BDC -/* 0A87A8 800A7BA8 00000000 */ nop -/* 0A87AC 800A7BAC 18E00100 */ blez $a3, .L800A7FB0 -/* 0A87B0 800A7BB0 8FBF0024 */ lw $ra, 0x24($sp) -/* 0A87B4 800A7BB4 80820193 */ lb $v0, 0x193($a0) -/* 0A87B8 800A7BB8 00000000 */ nop -/* 0A87BC 800A7BBC 184000FB */ blez $v0, .L800A7FAC -/* 0A87C0 800A7BC0 00025880 */ sll $t3, $v0, 2 -/* 0A87C4 800A7BC4 008B6021 */ addu $t4, $a0, $t3 -/* 0A87C8 800A7BC8 8D8D0128 */ lw $t5, 0x128($t4) -/* 0A87CC 800A7BCC 00000000 */ nop -/* 0A87D0 800A7BD0 29A100B4 */ slti $at, $t5, 0xb4 -/* 0A87D4 800A7BD4 102000F6 */ beqz $at, .L800A7FB0 -/* 0A87D8 800A7BD8 8FBF0024 */ lw $ra, 0x24($sp) -.L800A7BDC: -/* 0A87DC 800A7BDC 80CA01D8 */ lb $t2, 0x1d8($a2) -/* 0A87E0 800A7BE0 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A87E4 800A7BE4 154000F2 */ bnez $t2, .L800A7FB0 -/* 0A87E8 800A7BE8 8FBF0024 */ lw $ra, 0x24($sp) -/* 0A87EC 800A7BEC 8D086CDC */ lw $t0, %lo(D_80126CDC)($t0) -/* 0A87F0 800A7BF0 80C20193 */ lb $v0, 0x193($a2) -/* 0A87F4 800A7BF4 8109015A */ lb $t1, 0x15a($t0) -/* 0A87F8 800A7BF8 18400014 */ blez $v0, .L800A7C4C -/* 0A87FC 800A7BFC 2529007F */ addiu $t1, $t1, 0x7f -/* 0A8800 800A7C00 00027080 */ sll $t6, $v0, 2 -/* 0A8804 800A7C04 00CE1821 */ addu $v1, $a2, $t6 -/* 0A8808 800A7C08 8C6F0128 */ lw $t7, 0x128($v1) -/* 0A880C 800A7C0C 3C188012 */ lui $t8, %hi(D_80126D60) # $t8, 0x8012 -/* 0A8810 800A7C10 29E100B4 */ slti $at, $t7, 0xb4 -/* 0A8814 800A7C14 1020000D */ beqz $at, .L800A7C4C -/* 0A8818 800A7C18 00000000 */ nop -/* 0A881C 800A7C1C 8F186D60 */ lw $t8, %lo(D_80126D60)($t8) -/* 0A8820 800A7C20 240B0001 */ li $t3, 1 -/* 0A8824 800A7C24 8319004B */ lb $t9, 0x4b($t8) -/* 0A8828 800A7C28 00000000 */ nop -/* 0A882C 800A7C2C 0059082A */ slt $at, $v0, $t9 -/* 0A8830 800A7C30 10200006 */ beqz $at, .L800A7C4C -/* 0A8834 800A7C34 00000000 */ nop -/* 0A8838 800A7C38 8C700124 */ lw $s0, 0x124($v1) -/* 0A883C 800A7C3C 15200028 */ bnez $t1, .L800A7CE0 -/* 0A8840 800A7C40 AFAB0048 */ sw $t3, 0x48($sp) -/* 0A8844 800A7C44 10000026 */ b .L800A7CE0 -/* 0A8848 800A7C48 240900B4 */ li $t1, 180 -.L800A7C4C: -/* 0A884C 800A7C4C 80C50194 */ lb $a1, 0x194($a2) -/* 0A8850 800A7C50 00008025 */ move $s0, $zero -/* 0A8854 800A7C54 04A00011 */ bltz $a1, .L800A7C9C -/* 0A8858 800A7C58 00001025 */ move $v0, $zero -/* 0A885C 800A7C5C 3C0C8012 */ lui $t4, %hi(D_80126D60) # $t4, 0x8012 -/* 0A8860 800A7C60 8D8C6D60 */ lw $t4, %lo(D_80126D60)($t4) -/* 0A8864 800A7C64 00026880 */ sll $t5, $v0, 2 -/* 0A8868 800A7C68 8184004B */ lb $a0, 0x4b($t4) -/* 0A886C 800A7C6C 00CD1821 */ addu $v1, $a2, $t5 -/* 0A8870 800A7C70 1880000A */ blez $a0, .L800A7C9C -/* 0A8874 800A7C74 00000000 */ nop -.L800A7C78: -/* 0A8878 800A7C78 8C6E0128 */ lw $t6, 0x128($v1) -/* 0A887C 800A7C7C 24420001 */ addiu $v0, $v0, 1 -/* 0A8880 800A7C80 00A2082A */ slt $at, $a1, $v0 -/* 0A8884 800A7C84 24630004 */ addiu $v1, $v1, 4 -/* 0A8888 800A7C88 14200004 */ bnez $at, .L800A7C9C -/* 0A888C 800A7C8C 020E8021 */ addu $s0, $s0, $t6 -/* 0A8890 800A7C90 0044082A */ slt $at, $v0, $a0 -/* 0A8894 800A7C94 1420FFF8 */ bnez $at, .L800A7C78 -/* 0A8898 800A7C98 00000000 */ nop -.L800A7C9C: -/* 0A889C 800A7C9C 2E030001 */ sltiu $v1, $s0, 1 -/* 0A88A0 800A7CA0 14600009 */ bnez $v1, .L800A7CC8 -/* 0A88A4 800A7CA4 00000000 */ nop -/* 0A88A8 800A7CA8 000A182B */ sltu $v1, $zero, $t2 -/* 0A88AC 800A7CAC 14600006 */ bnez $v1, .L800A7CC8 -/* 0A88B0 800A7CB0 00000000 */ nop -/* 0A88B4 800A7CB4 0C01BAA8 */ jal func_8006EAA0 -/* 0A88B8 800A7CB8 00000000 */ nop -/* 0A88BC 800A7CBC 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A88C0 800A7CC0 8D086CDC */ lw $t0, %lo(D_80126CDC)($t0) -/* 0A88C4 800A7CC4 0002182B */ sltu $v1, $zero, $v0 -.L800A7CC8: -/* 0A88C8 800A7CC8 AFA30048 */ sw $v1, 0x48($sp) -/* 0A88CC 800A7CCC 240FFF81 */ li $t7, -127 -/* 0A88D0 800A7CD0 A10F015A */ sb $t7, 0x15a($t0) -/* 0A88D4 800A7CD4 3C078012 */ lui $a3, %hi(D_80126D0C) # $a3, 0x8012 -/* 0A88D8 800A7CD8 8CE76D0C */ lw $a3, %lo(D_80126D0C)($a3) -/* 0A88DC 800A7CDC 00004825 */ move $t1, $zero -.L800A7CE0: -/* 0A88E0 800A7CE0 14E0000D */ bnez $a3, .L800A7D18 -/* 0A88E4 800A7CE4 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0A88E8 800A7CE8 3C078012 */ lui $a3, %hi(D_80126CDC) # $a3, 0x8012 -/* 0A88EC 800A7CEC 8CE76CDC */ lw $a3, %lo(D_80126CDC)($a3) -/* 0A88F0 800A7CF0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A88F4 800A7CF4 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A88F8 800A7CF8 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A88FC 800A7CFC 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A8900 800A7D00 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0A8904 800A7D04 AFA90044 */ sw $t1, 0x44($sp) -/* 0A8908 800A7D08 0C02A980 */ jal func_800AA600 -/* 0A890C 800A7D0C 24E70140 */ addiu $a3, $a3, 0x140 -/* 0A8910 800A7D10 8FA90044 */ lw $t1, 0x44($sp) -/* 0A8914 800A7D14 00000000 */ nop -.L800A7D18: -/* 0A8918 800A7D18 34048CA0 */ li $a0, 36000 -/* 0A891C 800A7D1C 0C00322D */ jal func_8000C8B4 -/* 0A8920 800A7D20 AFA90044 */ sw $t1, 0x44($sp) -/* 0A8924 800A7D24 8FA90044 */ lw $t1, 0x44($sp) -/* 0A8928 800A7D28 0050082A */ slt $at, $v0, $s0 -/* 0A892C 800A7D2C 10200005 */ beqz $at, .L800A7D44 -/* 0A8930 800A7D30 34048CA0 */ li $a0, 36000 -/* 0A8934 800A7D34 0C00322D */ jal func_8000C8B4 -/* 0A8938 800A7D38 AFA90044 */ sw $t1, 0x44($sp) -/* 0A893C 800A7D3C 8FA90044 */ lw $t1, 0x44($sp) -/* 0A8940 800A7D40 00408025 */ move $s0, $v0 -.L800A7D44: -/* 0A8944 800A7D44 02002025 */ move $a0, $s0 -/* 0A8948 800A7D48 27A50054 */ addiu $a1, $sp, 0x54 -/* 0A894C 800A7D4C 27A60050 */ addiu $a2, $sp, 0x50 -/* 0A8950 800A7D50 27A7004C */ addiu $a3, $sp, 0x4c -/* 0A8954 800A7D54 0C0165E4 */ jal func_80059790 -/* 0A8958 800A7D58 AFA90044 */ sw $t1, 0x44($sp) -/* 0A895C 800A7D5C 8FB80048 */ lw $t8, 0x48($sp) -/* 0A8960 800A7D60 8FA90044 */ lw $t1, 0x44($sp) -/* 0A8964 800A7D64 17000006 */ bnez $t8, .L800A7D80 -/* 0A8968 800A7D68 34048CA0 */ li $a0, 36000 -/* 0A896C 800A7D6C 0C00322D */ jal func_8000C8B4 -/* 0A8970 800A7D70 AFA90044 */ sw $t1, 0x44($sp) -/* 0A8974 800A7D74 8FA90044 */ lw $t1, 0x44($sp) -/* 0A8978 800A7D78 14500028 */ bne $v0, $s0, .L800A7E1C -/* 0A897C 800A7D7C 8FAB004C */ lw $t3, 0x4c($sp) -.L800A7D80: -/* 0A8980 800A7D80 8FB90064 */ lw $t9, 0x64($sp) -/* 0A8984 800A7D84 3C108012 */ lui $s0, %hi(D_80126D36) # $s0, 0x8012 -/* 0A8988 800A7D88 0329082A */ slt $at, $t9, $t1 -/* 0A898C 800A7D8C 10200003 */ beqz $at, .L800A7D9C -/* 0A8990 800A7D90 26106D36 */ addiu $s0, %lo(D_80126D36) # addiu $s0, $s0, 0x6d36 -/* 0A8994 800A7D94 10000002 */ b .L800A7DA0 -/* 0A8998 800A7D98 01394823 */ subu $t1, $t1, $t9 -.L800A7D9C: -/* 0A899C 800A7D9C 00004825 */ move $t1, $zero -.L800A7DA0: -/* 0A89A0 800A7DA0 2401001E */ li $at, 30 -/* 0A89A4 800A7DA4 0121001A */ div $zero, $t1, $at -/* 0A89A8 800A7DA8 3C0C8012 */ lui $t4, %hi(D_80126CDC) # $t4, 0x8012 -/* 0A89AC 800A7DAC 8D8C6CDC */ lw $t4, %lo(D_80126CDC)($t4) -/* 0A89B0 800A7DB0 252BFF81 */ addiu $t3, $t1, -0x7f -/* 0A89B4 800A7DB4 240E0001 */ li $t6, 1 -/* 0A89B8 800A7DB8 A18B015A */ sb $t3, 0x15a($t4) -/* 0A89BC 800A7DBC 00006810 */ mfhi $t5 -/* 0A89C0 800A7DC0 29A10015 */ slti $at, $t5, 0x15 -/* 0A89C4 800A7DC4 14200005 */ bnez $at, .L800A7DDC -/* 0A89C8 800A7DC8 00000000 */ nop -/* 0A89CC 800A7DCC 3C108012 */ lui $s0, %hi(D_80126D36) # $s0, 0x8012 -/* 0A89D0 800A7DD0 26106D36 */ addiu $s0, %lo(D_80126D36) # addiu $s0, $s0, 0x6d36 -/* 0A89D4 800A7DD4 10000075 */ b .L800A7FAC -/* 0A89D8 800A7DD8 A20E0000 */ sb $t6, ($s0) -.L800A7DDC: -/* 0A89DC 800A7DDC 920F0000 */ lbu $t7, ($s0) -/* 0A89E0 800A7DE0 3C188012 */ lui $t8, %hi(D_80126D0C) # $t8, 0x8012 -/* 0A89E4 800A7DE4 11E00008 */ beqz $t7, .L800A7E08 -/* 0A89E8 800A7DE8 00000000 */ nop -/* 0A89EC 800A7DEC 8F186D0C */ lw $t8, %lo(D_80126D0C)($t8) -/* 0A89F0 800A7DF0 240400FE */ li $a0, 254 -/* 0A89F4 800A7DF4 17000003 */ bnez $t8, .L800A7E04 -/* 0A89F8 800A7DF8 00000000 */ nop -/* 0A89FC 800A7DFC 0C000741 */ jal func_80001D04 -/* 0A8A00 800A7E00 00002825 */ move $a1, $zero -.L800A7E04: -/* 0A8A04 800A7E04 A2000000 */ sb $zero, ($s0) -.L800A7E08: -/* 0A8A08 800A7E08 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A8A0C 800A7E0C 8D086CDC */ lw $t0, %lo(D_80126CDC)($t0) -/* 0A8A10 800A7E10 10000028 */ b .L800A7EB4 -/* 0A8A14 800A7E14 00000000 */ nop -/* 0A8A18 800A7E18 8FAB004C */ lw $t3, 0x4c($sp) -.L800A7E1C: -/* 0A8A1C 800A7E1C 2402000A */ li $v0, 10 -/* 0A8A20 800A7E20 0162001A */ div $zero, $t3, $v0 -/* 0A8A24 800A7E24 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A8A28 800A7E28 8D086CDC */ lw $t0, %lo(D_80126CDC)($t0) -/* 0A8A2C 800A7E2C 00000000 */ nop -/* 0A8A30 800A7E30 8119015B */ lb $t9, 0x15b($t0) -/* 0A8A34 800A7E34 14400002 */ bnez $v0, .L800A7E40 -/* 0A8A38 800A7E38 00000000 */ nop -/* 0A8A3C 800A7E3C 0007000D */ break 7 -.L800A7E40: -/* 0A8A40 800A7E40 2401FFFF */ li $at, -1 -/* 0A8A44 800A7E44 14410004 */ bne $v0, $at, .L800A7E58 -/* 0A8A48 800A7E48 3C018000 */ lui $at, 0x8000 -/* 0A8A4C 800A7E4C 15610002 */ bne $t3, $at, .L800A7E58 -/* 0A8A50 800A7E50 00000000 */ nop -/* 0A8A54 800A7E54 0006000D */ break 6 -.L800A7E58: -/* 0A8A58 800A7E58 00006012 */ mflo $t4 -/* 0A8A5C 800A7E5C 00000000 */ nop -/* 0A8A60 800A7E60 00000000 */ nop -/* 0A8A64 800A7E64 01820019 */ multu $t4, $v0 -/* 0A8A68 800A7E68 00006812 */ mflo $t5 -/* 0A8A6C 800A7E6C 032D7021 */ addu $t6, $t9, $t5 -/* 0A8A70 800A7E70 AFAE004C */ sw $t6, 0x4c($sp) -/* 0A8A74 800A7E74 810F015B */ lb $t7, 0x15b($t0) -/* 0A8A78 800A7E78 00000000 */ nop -/* 0A8A7C 800A7E7C 25F80001 */ addiu $t8, $t7, 1 -/* 0A8A80 800A7E80 A118015B */ sb $t8, 0x15b($t0) -/* 0A8A84 800A7E84 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A8A88 800A7E88 8D086CDC */ lw $t0, %lo(D_80126CDC)($t0) -/* 0A8A8C 800A7E8C 00000000 */ nop -/* 0A8A90 800A7E90 810B015B */ lb $t3, 0x15b($t0) -/* 0A8A94 800A7E94 00000000 */ nop -/* 0A8A98 800A7E98 2961000A */ slti $at, $t3, 0xa -/* 0A8A9C 800A7E9C 14200005 */ bnez $at, .L800A7EB4 -/* 0A8AA0 800A7EA0 00000000 */ nop -/* 0A8AA4 800A7EA4 A100015B */ sb $zero, 0x15b($t0) -/* 0A8AA8 800A7EA8 3C088012 */ lui $t0, %hi(D_80126CDC) # $t0, 0x8012 -/* 0A8AAC 800A7EAC 8D086CDC */ lw $t0, %lo(D_80126CDC)($t0) -/* 0A8AB0 800A7EB0 00000000 */ nop -.L800A7EB4: -/* 0A8AB4 800A7EB4 3C0C8012 */ lui $t4, %hi(D_80126D37) # $t4, 0x8012 -/* 0A8AB8 800A7EB8 918C6D37 */ lbu $t4, %lo(D_80126D37)($t4) -/* 0A8ABC 800A7EBC 24010001 */ li $at, 1 -/* 0A8AC0 800A7EC0 1581001A */ bne $t4, $at, .L800A7F2C -/* 0A8AC4 800A7EC4 00000000 */ nop -/* 0A8AC8 800A7EC8 4459F800 */ cfc1 $t9, $31 -/* 0A8ACC 800A7ECC C504016C */ lwc1 $f4, 0x16c($t0) -/* 0A8AD0 800A7ED0 37210003 */ ori $at, $t9, 3 -/* 0A8AD4 800A7ED4 38210002 */ xori $at, $at, 2 -/* 0A8AD8 800A7ED8 44C1F800 */ ctc1 $at, $31 -/* 0A8ADC 800A7EDC C5080170 */ lwc1 $f8, 0x170($t0) -/* 0A8AE0 800A7EE0 460021A4 */ cvt.w.s $f6, $f4 -/* 0A8AE4 800A7EE4 8FAE004C */ lw $t6, 0x4c($sp) -/* 0A8AE8 800A7EE8 44D9F800 */ ctc1 $t9, $31 -/* 0A8AEC 800A7EEC 44043000 */ mfc1 $a0, $f6 -/* 0A8AF0 800A7EF0 8FA60054 */ lw $a2, 0x54($sp) -/* 0A8AF4 800A7EF4 444DF800 */ cfc1 $t5, $31 -/* 0A8AF8 800A7EF8 8FA70050 */ lw $a3, 0x50($sp) -/* 0A8AFC 800A7EFC 35A10003 */ ori $at, $t5, 3 -/* 0A8B00 800A7F00 38210002 */ xori $at, $at, 2 -/* 0A8B04 800A7F04 44C1F800 */ ctc1 $at, $31 -/* 0A8B08 800A7F08 AFA00014 */ sw $zero, 0x14($sp) -/* 0A8B0C 800A7F0C 460042A4 */ cvt.w.s $f10, $f8 -/* 0A8B10 800A7F10 AFAE0010 */ sw $t6, 0x10($sp) -/* 0A8B14 800A7F14 44055000 */ mfc1 $a1, $f10 -/* 0A8B18 800A7F18 44CDF800 */ ctc1 $t5, $31 -/* 0A8B1C 800A7F1C 0C029FEF */ jal func_800A7FBC -/* 0A8B20 800A7F20 00000000 */ nop -/* 0A8B24 800A7F24 10000018 */ b .L800A7F88 -/* 0A8B28 800A7F28 00000000 */ nop -.L800A7F2C: -/* 0A8B2C 800A7F2C 444FF800 */ cfc1 $t7, $31 -/* 0A8B30 800A7F30 C510016C */ lwc1 $f16, 0x16c($t0) -/* 0A8B34 800A7F34 35E10003 */ ori $at, $t7, 3 -/* 0A8B38 800A7F38 38210002 */ xori $at, $at, 2 -/* 0A8B3C 800A7F3C 44C1F800 */ ctc1 $at, $31 -/* 0A8B40 800A7F40 C5040170 */ lwc1 $f4, 0x170($t0) -/* 0A8B44 800A7F44 460084A4 */ cvt.w.s $f18, $f16 -/* 0A8B48 800A7F48 8FAB004C */ lw $t3, 0x4c($sp) -/* 0A8B4C 800A7F4C 44CFF800 */ ctc1 $t7, $31 -/* 0A8B50 800A7F50 44049000 */ mfc1 $a0, $f18 -/* 0A8B54 800A7F54 8FA60054 */ lw $a2, 0x54($sp) -/* 0A8B58 800A7F58 4458F800 */ cfc1 $t8, $31 -/* 0A8B5C 800A7F5C 8FA70050 */ lw $a3, 0x50($sp) -/* 0A8B60 800A7F60 37010003 */ ori $at, $t8, 3 -/* 0A8B64 800A7F64 38210002 */ xori $at, $at, 2 -/* 0A8B68 800A7F68 44C1F800 */ ctc1 $at, $31 -/* 0A8B6C 800A7F6C 240C0001 */ li $t4, 1 -/* 0A8B70 800A7F70 460021A4 */ cvt.w.s $f6, $f4 -/* 0A8B74 800A7F74 AFAC0014 */ sw $t4, 0x14($sp) -/* 0A8B78 800A7F78 44053000 */ mfc1 $a1, $f6 -/* 0A8B7C 800A7F7C 44D8F800 */ ctc1 $t8, $31 -/* 0A8B80 800A7F80 0C029FEF */ jal func_800A7FBC -/* 0A8B84 800A7F84 AFAB0010 */ sw $t3, 0x10($sp) -.L800A7F88: -/* 0A8B88 800A7F88 3C038012 */ lui $v1, %hi(D_80126CFC) # $v1, 0x8012 -/* 0A8B8C 800A7F8C 8C636CFC */ lw $v1, %lo(D_80126CFC)($v1) -/* 0A8B90 800A7F90 3C018012 */ lui $at, %hi(D_80126CFC) # $at, 0x8012 -/* 0A8B94 800A7F94 24790008 */ addiu $t9, $v1, 8 -/* 0A8B98 800A7F98 AC396CFC */ sw $t9, %lo(D_80126CFC)($at) -/* 0A8B9C 800A7F9C 3C0DFA00 */ lui $t5, 0xfa00 -/* 0A8BA0 800A7FA0 240EFFFF */ li $t6, -1 -/* 0A8BA4 800A7FA4 AC6E0004 */ sw $t6, 4($v1) -/* 0A8BA8 800A7FA8 AC6D0000 */ sw $t5, ($v1) -.L800A7FAC: -/* 0A8BAC 800A7FAC 8FBF0024 */ lw $ra, 0x24($sp) -.L800A7FB0: -/* 0A8BB0 800A7FB0 8FB00020 */ lw $s0, 0x20($sp) -/* 0A8BB4 800A7FB4 03E00008 */ jr $ra -/* 0A8BB8 800A7FB8 27BD0060 */ addiu $sp, $sp, 0x60 - -glabel func_800A7FBC -/* 0A8BBC 800A7FBC 27BDFF80 */ addiu $sp, $sp, -0x80 -/* 0A8BC0 800A7FC0 44842000 */ mtc1 $a0, $f4 -/* 0A8BC4 800A7FC4 44854000 */ mtc1 $a1, $f8 -/* 0A8BC8 800A7FC8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0A8BCC 800A7FCC 468021A0 */ cvt.s.w $f6, $f4 -/* 0A8BD0 800A7FD0 44818000 */ mtc1 $at, $f16 -/* 0A8BD4 800A7FD4 44809000 */ mtc1 $zero, $f18 -/* 0A8BD8 800A7FD8 468042A0 */ cvt.s.w $f10, $f8 -/* 0A8BDC 800A7FDC 8FAE0094 */ lw $t6, 0x94($sp) -/* 0A8BE0 800A7FE0 AFBF0034 */ sw $ra, 0x34($sp) -/* 0A8BE4 800A7FE4 AFB50030 */ sw $s5, 0x30($sp) -/* 0A8BE8 800A7FE8 AFB4002C */ sw $s4, 0x2c($sp) -/* 0A8BEC 800A7FEC AFB30028 */ sw $s3, 0x28($sp) -/* 0A8BF0 800A7FF0 AFB20024 */ sw $s2, 0x24($sp) -/* 0A8BF4 800A7FF4 AFB10020 */ sw $s1, 0x20($sp) -/* 0A8BF8 800A7FF8 AFB0001C */ sw $s0, 0x1c($sp) -/* 0A8BFC 800A7FFC E7B50010 */ swc1 $f21, 0x10($sp) -/* 0A8C00 800A8000 E7B40014 */ swc1 $f20, 0x14($sp) -/* 0A8C04 800A8004 AFA60088 */ sw $a2, 0x88($sp) -/* 0A8C08 800A8008 AFA7008C */ sw $a3, 0x8c($sp) -/* 0A8C0C 800A800C E7A6006C */ swc1 $f6, 0x6c($sp) -/* 0A8C10 800A8010 E7AA0070 */ swc1 $f10, 0x70($sp) -/* 0A8C14 800A8014 A7A00064 */ sh $zero, 0x64($sp) -/* 0A8C18 800A8018 A7A00062 */ sh $zero, 0x62($sp) -/* 0A8C1C 800A801C A7A00060 */ sh $zero, 0x60($sp) -/* 0A8C20 800A8020 E7B00068 */ swc1 $f16, 0x68($sp) -/* 0A8C24 800A8024 15C0000A */ bnez $t6, .L800A8050 -/* 0A8C28 800A8028 E7B20074 */ swc1 $f18, 0x74($sp) -/* 0A8C2C 800A802C 240F000A */ li $t7, 10 -/* 0A8C30 800A8030 2418000B */ li $t8, 11 -/* 0A8C34 800A8034 2402000B */ li $v0, 11 -/* 0A8C38 800A8038 2403000A */ li $v1, 10 -/* 0A8C3C 800A803C AFAF0054 */ sw $t7, 0x54($sp) -/* 0A8C40 800A8040 24080002 */ li $t0, 2 -/* 0A8C44 800A8044 24140009 */ li $s4, 9 -/* 0A8C48 800A8048 10000009 */ b .L800A8070 -/* 0A8C4C 800A804C AFB80048 */ sw $t8, 0x48($sp) -.L800A8050: -/* 0A8C50 800A8050 24190007 */ li $t9, 7 -/* 0A8C54 800A8054 2409000C */ li $t1, 12 -/* 0A8C58 800A8058 2402000A */ li $v0, 10 -/* 0A8C5C 800A805C 24030008 */ li $v1, 8 -/* 0A8C60 800A8060 AFB90054 */ sw $t9, 0x54($sp) -/* 0A8C64 800A8064 00004025 */ move $t0, $zero -/* 0A8C68 800A8068 2414000A */ li $s4, 10 -/* 0A8C6C 800A806C AFA90048 */ sw $t1, 0x48($sp) -.L800A8070: -/* 0A8C70 800A8070 8FAA0088 */ lw $t2, 0x88($sp) -/* 0A8C74 800A8074 2415000A */ li $s5, 10 -/* 0A8C78 800A8078 0155001A */ div $zero, $t2, $s5 -/* 0A8C7C 800A807C 3C108012 */ lui $s0, %hi(D_80126CFC) # $s0, 0x8012 -/* 0A8C80 800A8080 3C118012 */ lui $s1, %hi(D_80126D00) # $s1, 0x8012 -/* 0A8C84 800A8084 3C128012 */ lui $s2, %hi(D_80126D04) # $s2, 0x8012 -/* 0A8C88 800A8088 26526D04 */ addiu $s2, %lo(D_80126D04) # addiu $s2, $s2, 0x6d04 -/* 0A8C8C 800A808C 26316D00 */ addiu $s1, %lo(D_80126D00) # addiu $s1, $s1, 0x6d00 -/* 0A8C90 800A8090 26106CFC */ addiu $s0, %lo(D_80126CFC) # addiu $s0, $s0, 0x6cfc -/* 0A8C94 800A8094 27B30060 */ addiu $s3, $sp, 0x60 -/* 0A8C98 800A8098 A7B40066 */ sh $s4, 0x66($sp) -/* 0A8C9C 800A809C 16A00002 */ bnez $s5, .L800A80A8 -/* 0A8CA0 800A80A0 00000000 */ nop -/* 0A8CA4 800A80A4 0007000D */ break 7 -.L800A80A8: -/* 0A8CA8 800A80A8 2401FFFF */ li $at, -1 -/* 0A8CAC 800A80AC 16A10004 */ bne $s5, $at, .L800A80C0 -/* 0A8CB0 800A80B0 3C018000 */ lui $at, 0x8000 -/* 0A8CB4 800A80B4 15410002 */ bne $t2, $at, .L800A80C0 -/* 0A8CB8 800A80B8 00000000 */ nop -/* 0A8CBC 800A80BC 0006000D */ break 6 -.L800A80C0: -/* 0A8CC0 800A80C0 02603825 */ move $a3, $s3 -/* 0A8CC4 800A80C4 02002025 */ move $a0, $s0 -/* 0A8CC8 800A80C8 02202825 */ move $a1, $s1 -/* 0A8CCC 800A80CC 02403025 */ move $a2, $s2 -/* 0A8CD0 800A80D0 AFA2005C */ sw $v0, 0x5c($sp) -/* 0A8CD4 800A80D4 AFA30058 */ sw $v1, 0x58($sp) -/* 0A8CD8 800A80D8 AFA80050 */ sw $t0, 0x50($sp) -/* 0A8CDC 800A80DC 00005812 */ mflo $t3 -/* 0A8CE0 800A80E0 A7AB0078 */ sh $t3, 0x78($sp) -/* 0A8CE4 800A80E4 0C02A980 */ jal func_800AA600 -/* 0A8CE8 800A80E8 00000000 */ nop -/* 0A8CEC 800A80EC 8FAC0088 */ lw $t4, 0x88($sp) -/* 0A8CF0 800A80F0 8FA2005C */ lw $v0, 0x5c($sp) -/* 0A8CF4 800A80F4 0195001A */ div $zero, $t4, $s5 -/* 0A8CF8 800A80F8 44822000 */ mtc1 $v0, $f4 -/* 0A8CFC 800A80FC C7A6006C */ lwc1 $f6, 0x6c($sp) -/* 0A8D00 800A8100 46802020 */ cvt.s.w $f0, $f4 -/* 0A8D04 800A8104 8FA30058 */ lw $v1, 0x58($sp) -/* 0A8D08 800A8108 8FA80050 */ lw $t0, 0x50($sp) -/* 0A8D0C 800A810C 46003200 */ add.s $f8, $f6, $f0 -/* 0A8D10 800A8110 E7A00044 */ swc1 $f0, 0x44($sp) -/* 0A8D14 800A8114 E7A8006C */ swc1 $f8, 0x6c($sp) -/* 0A8D18 800A8118 16A00002 */ bnez $s5, .L800A8124 -/* 0A8D1C 800A811C 00000000 */ nop -/* 0A8D20 800A8120 0007000D */ break 7 -.L800A8124: -/* 0A8D24 800A8124 2401FFFF */ li $at, -1 -/* 0A8D28 800A8128 16A10004 */ bne $s5, $at, .L800A813C -/* 0A8D2C 800A812C 3C018000 */ lui $at, 0x8000 -/* 0A8D30 800A8130 15810002 */ bne $t4, $at, .L800A813C -/* 0A8D34 800A8134 00000000 */ nop -/* 0A8D38 800A8138 0006000D */ break 6 -.L800A813C: -/* 0A8D3C 800A813C 02002025 */ move $a0, $s0 -/* 0A8D40 800A8140 02202825 */ move $a1, $s1 -/* 0A8D44 800A8144 02403025 */ move $a2, $s2 -/* 0A8D48 800A8148 02603825 */ move $a3, $s3 -/* 0A8D4C 800A814C 00006810 */ mfhi $t5 -/* 0A8D50 800A8150 A7AD0078 */ sh $t5, 0x78($sp) -/* 0A8D54 800A8154 0C02A980 */ jal func_800AA600 -/* 0A8D58 800A8158 00000000 */ nop -/* 0A8D5C 800A815C 8FA30058 */ lw $v1, 0x58($sp) -/* 0A8D60 800A8160 8FA80050 */ lw $t0, 0x50($sp) -/* 0A8D64 800A8164 44835000 */ mtc1 $v1, $f10 -/* 0A8D68 800A8168 44882000 */ mtc1 $t0, $f4 -/* 0A8D6C 800A816C 46805020 */ cvt.s.w $f0, $f10 -/* 0A8D70 800A8170 C7B0006C */ lwc1 $f16, 0x6c($sp) -/* 0A8D74 800A8174 C7A60070 */ lwc1 $f6, 0x70($sp) -/* 0A8D78 800A8178 46802520 */ cvt.s.w $f20, $f4 -/* 0A8D7C 800A817C 8FAE0048 */ lw $t6, 0x48($sp) -/* 0A8D80 800A8180 A7A00078 */ sh $zero, 0x78($sp) -/* 0A8D84 800A8184 46008480 */ add.s $f18, $f16, $f0 -/* 0A8D88 800A8188 E7A00040 */ swc1 $f0, 0x40($sp) -/* 0A8D8C 800A818C 46143200 */ add.s $f8, $f6, $f20 -/* 0A8D90 800A8190 E7B2006C */ swc1 $f18, 0x6c($sp) -/* 0A8D94 800A8194 E7A80070 */ swc1 $f8, 0x70($sp) -/* 0A8D98 800A8198 02002025 */ move $a0, $s0 -/* 0A8D9C 800A819C 02202825 */ move $a1, $s1 -/* 0A8DA0 800A81A0 02403025 */ move $a2, $s2 -/* 0A8DA4 800A81A4 02603825 */ move $a3, $s3 -/* 0A8DA8 800A81A8 0C02A980 */ jal func_800AA600 -/* 0A8DAC 800A81AC A7AE0066 */ sh $t6, 0x66($sp) -/* 0A8DB0 800A81B0 8FB8008C */ lw $t8, 0x8c($sp) -/* 0A8DB4 800A81B4 8FAF0054 */ lw $t7, 0x54($sp) -/* 0A8DB8 800A81B8 0315001A */ div $zero, $t8, $s5 -/* 0A8DBC 800A81BC 448F5000 */ mtc1 $t7, $f10 -/* 0A8DC0 800A81C0 C7B0006C */ lwc1 $f16, 0x6c($sp) -/* 0A8DC4 800A81C4 46805020 */ cvt.s.w $f0, $f10 -/* 0A8DC8 800A81C8 C7A40070 */ lwc1 $f4, 0x70($sp) -/* 0A8DCC 800A81CC A7B40066 */ sh $s4, 0x66($sp) -/* 0A8DD0 800A81D0 46008480 */ add.s $f18, $f16, $f0 -/* 0A8DD4 800A81D4 E7A00038 */ swc1 $f0, 0x38($sp) -/* 0A8DD8 800A81D8 46142181 */ sub.s $f6, $f4, $f20 -/* 0A8DDC 800A81DC E7B2006C */ swc1 $f18, 0x6c($sp) -/* 0A8DE0 800A81E0 E7A60070 */ swc1 $f6, 0x70($sp) -/* 0A8DE4 800A81E4 16A00002 */ bnez $s5, .L800A81F0 -/* 0A8DE8 800A81E8 00000000 */ nop -/* 0A8DEC 800A81EC 0007000D */ break 7 -.L800A81F0: -/* 0A8DF0 800A81F0 2401FFFF */ li $at, -1 -/* 0A8DF4 800A81F4 16A10004 */ bne $s5, $at, .L800A8208 -/* 0A8DF8 800A81F8 3C018000 */ lui $at, 0x8000 -/* 0A8DFC 800A81FC 17010002 */ bne $t8, $at, .L800A8208 -/* 0A8E00 800A8200 00000000 */ nop -/* 0A8E04 800A8204 0006000D */ break 6 -.L800A8208: -/* 0A8E08 800A8208 02002025 */ move $a0, $s0 -/* 0A8E0C 800A820C 02202825 */ move $a1, $s1 -/* 0A8E10 800A8210 02403025 */ move $a2, $s2 -/* 0A8E14 800A8214 02603825 */ move $a3, $s3 -/* 0A8E18 800A8218 0000C812 */ mflo $t9 -/* 0A8E1C 800A821C A7B90078 */ sh $t9, 0x78($sp) -/* 0A8E20 800A8220 0C02A980 */ jal func_800AA600 -/* 0A8E24 800A8224 00000000 */ nop -/* 0A8E28 800A8228 8FA9008C */ lw $t1, 0x8c($sp) -/* 0A8E2C 800A822C C7A8006C */ lwc1 $f8, 0x6c($sp) -/* 0A8E30 800A8230 0135001A */ div $zero, $t1, $s5 -/* 0A8E34 800A8234 C7AA0044 */ lwc1 $f10, 0x44($sp) -/* 0A8E38 800A8238 02002025 */ move $a0, $s0 -/* 0A8E3C 800A823C 460A4400 */ add.s $f16, $f8, $f10 -/* 0A8E40 800A8240 02202825 */ move $a1, $s1 -/* 0A8E44 800A8244 E7B0006C */ swc1 $f16, 0x6c($sp) -/* 0A8E48 800A8248 16A00002 */ bnez $s5, .L800A8254 -/* 0A8E4C 800A824C 00000000 */ nop -/* 0A8E50 800A8250 0007000D */ break 7 -.L800A8254: -/* 0A8E54 800A8254 2401FFFF */ li $at, -1 -/* 0A8E58 800A8258 16A10004 */ bne $s5, $at, .L800A826C -/* 0A8E5C 800A825C 3C018000 */ lui $at, 0x8000 -/* 0A8E60 800A8260 15210002 */ bne $t1, $at, .L800A826C -/* 0A8E64 800A8264 00000000 */ nop -/* 0A8E68 800A8268 0006000D */ break 6 -.L800A826C: -/* 0A8E6C 800A826C 02403025 */ move $a2, $s2 -/* 0A8E70 800A8270 02603825 */ move $a3, $s3 -/* 0A8E74 800A8274 00005010 */ mfhi $t2 -/* 0A8E78 800A8278 A7AA0078 */ sh $t2, 0x78($sp) -/* 0A8E7C 800A827C 0C02A980 */ jal func_800AA600 -/* 0A8E80 800A8280 00000000 */ nop -/* 0A8E84 800A8284 C7B2006C */ lwc1 $f18, 0x6c($sp) -/* 0A8E88 800A8288 C7A40040 */ lwc1 $f4, 0x40($sp) -/* 0A8E8C 800A828C C7A80070 */ lwc1 $f8, 0x70($sp) -/* 0A8E90 800A8290 8FAB0048 */ lw $t3, 0x48($sp) -/* 0A8E94 800A8294 46049180 */ add.s $f6, $f18, $f4 -/* 0A8E98 800A8298 A7A00078 */ sh $zero, 0x78($sp) -/* 0A8E9C 800A829C 46144280 */ add.s $f10, $f8, $f20 -/* 0A8EA0 800A82A0 E7A6006C */ swc1 $f6, 0x6c($sp) -/* 0A8EA4 800A82A4 E7AA0070 */ swc1 $f10, 0x70($sp) -/* 0A8EA8 800A82A8 02002025 */ move $a0, $s0 -/* 0A8EAC 800A82AC 02202825 */ move $a1, $s1 -/* 0A8EB0 800A82B0 02403025 */ move $a2, $s2 -/* 0A8EB4 800A82B4 02603825 */ move $a3, $s3 -/* 0A8EB8 800A82B8 0C02A980 */ jal func_800AA600 -/* 0A8EBC 800A82BC A7AB0066 */ sh $t3, 0x66($sp) -/* 0A8EC0 800A82C0 8FAC0090 */ lw $t4, 0x90($sp) -/* 0A8EC4 800A82C4 C7B0006C */ lwc1 $f16, 0x6c($sp) -/* 0A8EC8 800A82C8 0195001A */ div $zero, $t4, $s5 -/* 0A8ECC 800A82CC C7B20038 */ lwc1 $f18, 0x38($sp) -/* 0A8ED0 800A82D0 C7A60070 */ lwc1 $f6, 0x70($sp) -/* 0A8ED4 800A82D4 46128100 */ add.s $f4, $f16, $f18 -/* 0A8ED8 800A82D8 A7B40066 */ sh $s4, 0x66($sp) -/* 0A8EDC 800A82DC 46143201 */ sub.s $f8, $f6, $f20 -/* 0A8EE0 800A82E0 E7A4006C */ swc1 $f4, 0x6c($sp) -/* 0A8EE4 800A82E4 E7A80070 */ swc1 $f8, 0x70($sp) -/* 0A8EE8 800A82E8 16A00002 */ bnez $s5, .L800A82F4 -/* 0A8EEC 800A82EC 00000000 */ nop -/* 0A8EF0 800A82F0 0007000D */ break 7 -.L800A82F4: -/* 0A8EF4 800A82F4 2401FFFF */ li $at, -1 -/* 0A8EF8 800A82F8 16A10004 */ bne $s5, $at, .L800A830C -/* 0A8EFC 800A82FC 3C018000 */ lui $at, 0x8000 -/* 0A8F00 800A8300 15810002 */ bne $t4, $at, .L800A830C -/* 0A8F04 800A8304 00000000 */ nop -/* 0A8F08 800A8308 0006000D */ break 6 -.L800A830C: -/* 0A8F0C 800A830C 02002025 */ move $a0, $s0 -/* 0A8F10 800A8310 02202825 */ move $a1, $s1 -/* 0A8F14 800A8314 02403025 */ move $a2, $s2 -/* 0A8F18 800A8318 02603825 */ move $a3, $s3 -/* 0A8F1C 800A831C 00006812 */ mflo $t5 -/* 0A8F20 800A8320 A7AD0078 */ sh $t5, 0x78($sp) -/* 0A8F24 800A8324 0C02A980 */ jal func_800AA600 -/* 0A8F28 800A8328 00000000 */ nop -/* 0A8F2C 800A832C 8FAE0090 */ lw $t6, 0x90($sp) -/* 0A8F30 800A8330 C7AA006C */ lwc1 $f10, 0x6c($sp) -/* 0A8F34 800A8334 01D5001A */ div $zero, $t6, $s5 -/* 0A8F38 800A8338 C7B00044 */ lwc1 $f16, 0x44($sp) -/* 0A8F3C 800A833C 02002025 */ move $a0, $s0 -/* 0A8F40 800A8340 46105480 */ add.s $f18, $f10, $f16 -/* 0A8F44 800A8344 02202825 */ move $a1, $s1 -/* 0A8F48 800A8348 E7B2006C */ swc1 $f18, 0x6c($sp) -/* 0A8F4C 800A834C 16A00002 */ bnez $s5, .L800A8358 -/* 0A8F50 800A8350 00000000 */ nop -/* 0A8F54 800A8354 0007000D */ break 7 -.L800A8358: -/* 0A8F58 800A8358 2401FFFF */ li $at, -1 -/* 0A8F5C 800A835C 16A10004 */ bne $s5, $at, .L800A8370 -/* 0A8F60 800A8360 3C018000 */ lui $at, 0x8000 -/* 0A8F64 800A8364 15C10002 */ bne $t6, $at, .L800A8370 -/* 0A8F68 800A8368 00000000 */ nop -/* 0A8F6C 800A836C 0006000D */ break 6 -.L800A8370: -/* 0A8F70 800A8370 02403025 */ move $a2, $s2 -/* 0A8F74 800A8374 02603825 */ move $a3, $s3 -/* 0A8F78 800A8378 00007810 */ mfhi $t7 -/* 0A8F7C 800A837C A7AF0078 */ sh $t7, 0x78($sp) -/* 0A8F80 800A8380 0C02A980 */ jal func_800AA600 -/* 0A8F84 800A8384 00000000 */ nop -/* 0A8F88 800A8388 8FBF0034 */ lw $ra, 0x34($sp) -/* 0A8F8C 800A838C C7B50010 */ lwc1 $f21, 0x10($sp) -/* 0A8F90 800A8390 C7B40014 */ lwc1 $f20, 0x14($sp) -/* 0A8F94 800A8394 8FB0001C */ lw $s0, 0x1c($sp) -/* 0A8F98 800A8398 8FB10020 */ lw $s1, 0x20($sp) -/* 0A8F9C 800A839C 8FB20024 */ lw $s2, 0x24($sp) -/* 0A8FA0 800A83A0 8FB30028 */ lw $s3, 0x28($sp) -/* 0A8FA4 800A83A4 8FB4002C */ lw $s4, 0x2c($sp) -/* 0A8FA8 800A83A8 8FB50030 */ lw $s5, 0x30($sp) -/* 0A8FAC 800A83AC 03E00008 */ jr $ra -/* 0A8FB0 800A83B0 27BD0080 */ addiu $sp, $sp, 0x80 - -glabel func_800A83B4 -/* 0A8FB4 800A83B4 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0A8FB8 800A83B8 AFBF0024 */ sw $ra, 0x24($sp) -/* 0A8FBC 800A83BC AFB00020 */ sw $s0, 0x20($sp) -/* 0A8FC0 800A83C0 8C8E0038 */ lw $t6, 0x38($a0) -/* 0A8FC4 800A83C4 3C018012 */ lui $at, %hi(D_80126D54) # $at, 0x8012 -/* 0A8FC8 800A83C8 000EC402 */ srl $t8, $t6, 0x10 -/* 0A8FCC 800A83CC A0386D54 */ sb $t8, %lo(D_80126D54)($at) -/* 0A8FD0 800A83D0 8C990038 */ lw $t9, 0x38($a0) -/* 0A8FD4 800A83D4 3C018012 */ lui $at, %hi(D_80126D55) # $at, 0x8012 -/* 0A8FD8 800A83D8 00194A02 */ srl $t1, $t9, 8 -/* 0A8FDC 800A83DC A0296D55 */ sb $t1, %lo(D_80126D55)($at) -/* 0A8FE0 800A83E0 8C8B0038 */ lw $t3, 0x38($a0) -/* 0A8FE4 800A83E4 3C018012 */ lui $at, %hi(D_80126D56) # $at, 0x8012 -/* 0A8FE8 800A83E8 00808025 */ move $s0, $a0 -/* 0A8FEC 800A83EC A02B6D56 */ sb $t3, %lo(D_80126D56)($at) -/* 0A8FF0 800A83F0 8C840020 */ lw $a0, 0x20($a0) -/* 0A8FF4 800A83F4 27A7002C */ addiu $a3, $sp, 0x2c -/* 0A8FF8 800A83F8 3C058012 */ lui $a1, %hi(D_80126D1C) # $a1, 0x8012 -/* 0A8FFC 800A83FC 3C068012 */ lui $a2, %hi(D_80126D20) # $a2, 0x8012 -/* 0A9000 800A8400 24C66D20 */ addiu $a2, %lo(D_80126D20) # addiu $a2, $a2, 0x6d20 -/* 0A9004 800A8404 24A56D1C */ addiu $a1, %lo(D_80126D1C) # addiu $a1, $a1, 0x6d1c -/* 0A9008 800A8408 AFA70010 */ sw $a3, 0x10($sp) -/* 0A900C 800A840C 0C01F238 */ jal func_8007C8E0 -/* 0A9010 800A8410 AFA70014 */ sw $a3, 0x14($sp) -/* 0A9014 800A8414 8E040020 */ lw $a0, 0x20($s0) -/* 0A9018 800A8418 3C068012 */ lui $a2, %hi(D_80126D14) # $a2, 0x8012 -/* 0A901C 800A841C 3C078012 */ lui $a3, %hi(D_80126D18) # $a3, 0x8012 -/* 0A9020 800A8420 27AC002C */ addiu $t4, $sp, 0x2c -/* 0A9024 800A8424 AFAC0010 */ sw $t4, 0x10($sp) -/* 0A9028 800A8428 24E76D18 */ addiu $a3, %lo(D_80126D18) # addiu $a3, $a3, 0x6d18 -/* 0A902C 800A842C 24C66D14 */ addiu $a2, %lo(D_80126D14) # addiu $a2, $a2, 0x6d14 -/* 0A9030 800A8430 0C01F29A */ jal func_8007CA68 -/* 0A9034 800A8434 00002825 */ move $a1, $zero -/* 0A9038 800A8438 8E040020 */ lw $a0, 0x20($s0) -/* 0A903C 800A843C 0C01F04B */ jal func_8007C12C -/* 0A9040 800A8440 24050001 */ li $a1, 1 -/* 0A9044 800A8444 AE020020 */ sw $v0, 0x20($s0) -/* 0A9048 800A8448 8FBF0024 */ lw $ra, 0x24($sp) -/* 0A904C 800A844C 8FB00020 */ lw $s0, 0x20($sp) -/* 0A9050 800A8450 03E00008 */ jr $ra -/* 0A9054 800A8454 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_800A8458 -/* 0A9058 800A8458 3C0E8012 */ lui $t6, %hi(D_80126D0C) # $t6, 0x8012 -/* 0A905C 800A845C 8DCE6D0C */ lw $t6, %lo(D_80126D0C)($t6) -/* 0A9060 800A8460 3C02800E */ lui $v0, 0x800e -/* 0A9064 800A8464 004E1021 */ addu $v0, $v0, $t6 -/* 0A9068 800A8468 804227A4 */ lb $v0, 0x27a4($v0) -/* 0A906C 800A846C 03E00008 */ jr $ra -/* 0A9070 800A8470 00000000 */ nop - -glabel func_800A8474 -/* 0A9074 800A8474 27BDFEA0 */ addiu $sp, $sp, -0x160 -/* 0A9078 800A8478 AFBF003C */ sw $ra, 0x3c($sp) -/* 0A907C 800A847C AFA40160 */ sw $a0, 0x160($sp) -/* 0A9080 800A8480 AFB40038 */ sw $s4, 0x38($sp) -/* 0A9084 800A8484 AFB30034 */ sw $s3, 0x34($sp) -/* 0A9088 800A8488 AFB20030 */ sw $s2, 0x30($sp) -/* 0A908C 800A848C AFB1002C */ sw $s1, 0x2c($sp) -/* 0A9090 800A8490 AFB00028 */ sw $s0, 0x28($sp) -/* 0A9094 800A8494 AFA50164 */ sw $a1, 0x164($sp) -/* 0A9098 800A8498 AFA60168 */ sw $a2, 0x168($sp) -/* 0A909C 800A849C AFA7016C */ sw $a3, 0x16c($sp) -/* 0A90A0 800A84A0 0C0282F5 */ jal func_800A0BD4 -/* 0A90A4 800A84A4 00E02025 */ move $a0, $a3 -/* 0A90A8 800A84A8 3C108012 */ lui $s0, %hi(D_80126CD8) # $s0, 0x8012 -/* 0A90AC 800A84AC 26106CD8 */ addiu $s0, %lo(D_80126CD8) # addiu $s0, $s0, 0x6cd8 -/* 0A90B0 800A84B0 8E0E0000 */ lw $t6, ($s0) -/* 0A90B4 800A84B4 3C0A8012 */ lui $t2, %hi(D_80126CD3) # $t2, 0x8012 -/* 0A90B8 800A84B8 A1C00001 */ sb $zero, 1($t6) -/* 0A90BC 800A84BC 8E0F0000 */ lw $t7, ($s0) -/* 0A90C0 800A84C0 3C018012 */ lui $at, %hi(D_80127180) # $at, 0x8012 -/* 0A90C4 800A84C4 A1E00017 */ sb $zero, 0x17($t7) -/* 0A90C8 800A84C8 8E180000 */ lw $t8, ($s0) -/* 0A90CC 800A84CC 3C0C8012 */ lui $t4, %hi(D_80126CD0) # $t4, 0x8012 -/* 0A90D0 800A84D0 A3000008 */ sb $zero, 8($t8) -/* 0A90D4 800A84D4 8E190000 */ lw $t9, ($s0) -/* 0A90D8 800A84D8 241800FF */ li $t8, 255 -/* 0A90DC 800A84DC A3200011 */ sb $zero, 0x11($t9) -/* 0A90E0 800A84E0 814A6CD3 */ lb $t2, %lo(D_80126CD3)($t2) -/* 0A90E4 800A84E4 AC207180 */ sw $zero, %lo(D_80127180)($at) -/* 0A90E8 800A84E8 314B0002 */ andi $t3, $t2, 2 -/* 0A90EC 800A84EC 1160001E */ beqz $t3, .L800A8568 -/* 0A90F0 800A84F0 3C198012 */ lui $t9, %hi(D_80126CF8) # $t9, 0x8012 -/* 0A90F4 800A84F4 818C6CD0 */ lb $t4, %lo(D_80126CD0)($t4) -/* 0A90F8 800A84F8 3C0D8012 */ lui $t5, %hi(D_8012718B) # $t5, 0x8012 -/* 0A90FC 800A84FC 448C2000 */ mtc1 $t4, $f4 -/* 0A9100 800A8500 91AD718B */ lbu $t5, %lo(D_8012718B)($t5) -/* 0A9104 800A8504 468021A0 */ cvt.s.w $f6, $f4 -/* 0A9108 800A8508 3C01437F */ li $at, 0x437F0000 # 255.000000 -/* 0A910C 800A850C 44810000 */ mtc1 $at, $f0 -/* 0A9110 800A8510 448D5000 */ mtc1 $t5, $f10 -/* 0A9114 800A8514 46003202 */ mul.s $f8, $f6, $f0 -/* 0A9118 800A8518 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0A911C 800A851C 05A10004 */ bgez $t5, .L800A8530 -/* 0A9120 800A8520 46805420 */ cvt.s.w $f16, $f10 -/* 0A9124 800A8524 44819000 */ mtc1 $at, $f18 -/* 0A9128 800A8528 00000000 */ nop -/* 0A912C 800A852C 46128400 */ add.s $f16, $f16, $f18 -.L800A8530: -/* 0A9130 800A8530 00000000 */ nop -/* 0A9134 800A8534 46104103 */ div.s $f4, $f8, $f16 -/* 0A9138 800A8538 46040181 */ sub.s $f6, $f0, $f4 -/* 0A913C 800A853C 444EF800 */ cfc1 $t6, $31 -/* 0A9140 800A8540 00000000 */ nop -/* 0A9144 800A8544 35C10003 */ ori $at, $t6, 3 -/* 0A9148 800A8548 38210002 */ xori $at, $at, 2 -/* 0A914C 800A854C 44C1F800 */ ctc1 $at, $31 -/* 0A9150 800A8550 00000000 */ nop -/* 0A9154 800A8554 460032A4 */ cvt.w.s $f10, $f6 -/* 0A9158 800A8558 440F5000 */ mfc1 $t7, $f10 -/* 0A915C 800A855C 44CEF800 */ ctc1 $t6, $31 -/* 0A9160 800A8560 10000002 */ b .L800A856C -/* 0A9164 800A8564 AFAF010C */ sw $t7, 0x10c($sp) -.L800A8568: -/* 0A9168 800A8568 AFB8010C */ sw $t8, 0x10c($sp) -.L800A856C: -/* 0A916C 800A856C 8F396CF8 */ lw $t9, %lo(D_80126CF8)($t9) -/* 0A9170 800A8570 00001825 */ move $v1, $zero -/* 0A9174 800A8574 1B200058 */ blez $t9, .L800A86D8 -/* 0A9178 800A8578 00008825 */ move $s1, $zero -/* 0A917C 800A857C 3C058012 */ lui $a1, %hi(D_80126CF4) # $a1, 0x8012 -/* 0A9180 800A8580 24A56CF4 */ addiu $a1, %lo(D_80126CF4) # addiu $a1, $a1, 0x6cf4 -/* 0A9184 800A8584 3413C000 */ li $s3, 49152 -/* 0A9188 800A8588 24120028 */ li $s2, 40 -.L800A858C: -/* 0A918C 800A858C 8CAA0000 */ lw $t2, ($a1) -/* 0A9190 800A8590 00000000 */ nop -/* 0A9194 800A8594 01515821 */ addu $t3, $t2, $s1 -/* 0A9198 800A8598 8D6C0000 */ lw $t4, ($t3) -/* 0A919C 800A859C 00000000 */ nop -/* 0A91A0 800A85A0 11800047 */ beqz $t4, .L800A86C0 -/* 0A91A4 800A85A4 00000000 */ nop -/* 0A91A8 800A85A8 10720045 */ beq $v1, $s2, .L800A86C0 -/* 0A91AC 800A85AC 00000000 */ nop -/* 0A91B0 800A85B0 8E0D0000 */ lw $t5, ($s0) -/* 0A91B4 800A85B4 3C0B8012 */ lui $t3, %hi(D_80126CF0) # $t3, 0x8012 -/* 0A91B8 800A85B8 01A31021 */ addu $v0, $t5, $v1 -/* 0A91BC 800A85BC 904E0000 */ lbu $t6, ($v0) -/* 0A91C0 800A85C0 00000000 */ nop -/* 0A91C4 800A85C4 25CF0001 */ addiu $t7, $t6, 1 -/* 0A91C8 800A85C8 A04F0000 */ sb $t7, ($v0) -/* 0A91CC 800A85CC 8E180000 */ lw $t8, ($s0) -/* 0A91D0 800A85D0 00000000 */ nop -/* 0A91D4 800A85D4 0303C821 */ addu $t9, $t8, $v1 -/* 0A91D8 800A85D8 932A0000 */ lbu $t2, ($t9) -/* 0A91DC 800A85DC 00000000 */ nop -/* 0A91E0 800A85E0 2941003D */ slti $at, $t2, 0x3d -/* 0A91E4 800A85E4 14200036 */ bnez $at, .L800A86C0 -/* 0A91E8 800A85E8 00000000 */ nop -/* 0A91EC 800A85EC 8D6B6CF0 */ lw $t3, %lo(D_80126CF0)($t3) -/* 0A91F0 800A85F0 00036040 */ sll $t4, $v1, 1 -/* 0A91F4 800A85F4 016C6821 */ addu $t5, $t3, $t4 -/* 0A91F8 800A85F8 85A20000 */ lh $v0, ($t5) -/* 0A91FC 800A85FC 00000000 */ nop -/* 0A9200 800A8600 304EC000 */ andi $t6, $v0, 0xc000 -/* 0A9204 800A8604 166E000A */ bne $s3, $t6, .L800A8630 -/* 0A9208 800A8608 30598000 */ andi $t9, $v0, 0x8000 -/* 0A920C 800A860C 8CAF0000 */ lw $t7, ($a1) -/* 0A9210 800A8610 00000000 */ nop -/* 0A9214 800A8614 01F1C021 */ addu $t8, $t7, $s1 -/* 0A9218 800A8618 8F040000 */ lw $a0, ($t8) -/* 0A921C 800A861C 0C01ECAF */ jal func_8007B2BC -/* 0A9220 800A8620 AFA30144 */ sw $v1, 0x144($sp) -/* 0A9224 800A8624 8FA30144 */ lw $v1, 0x144($sp) -/* 0A9228 800A8628 1000001F */ b .L800A86A8 -/* 0A922C 800A862C 00000000 */ nop -.L800A8630: -/* 0A9230 800A8630 1320000A */ beqz $t9, .L800A865C -/* 0A9234 800A8634 304C4000 */ andi $t4, $v0, 0x4000 -/* 0A9238 800A8638 8CAA0000 */ lw $t2, ($a1) -/* 0A923C 800A863C 00000000 */ nop -/* 0A9240 800A8640 01515821 */ addu $t3, $t2, $s1 -/* 0A9244 800A8644 8D640000 */ lw $a0, ($t3) -/* 0A9248 800A8648 0C01F32C */ jal func_8007CCB0 -/* 0A924C 800A864C AFA30144 */ sw $v1, 0x144($sp) -/* 0A9250 800A8650 8FA30144 */ lw $v1, 0x144($sp) -/* 0A9254 800A8654 10000014 */ b .L800A86A8 -/* 0A9258 800A8658 00000000 */ nop -.L800A865C: -/* 0A925C 800A865C 1180000A */ beqz $t4, .L800A8688 -/* 0A9260 800A8660 00000000 */ nop -/* 0A9264 800A8664 8CAD0000 */ lw $t5, ($a1) -/* 0A9268 800A8668 00000000 */ nop -/* 0A926C 800A866C 01B17021 */ addu $t6, $t5, $s1 -/* 0A9270 800A8670 8DC40000 */ lw $a0, ($t6) -/* 0A9274 800A8674 0C003FEE */ jal func_8000FFB8 -/* 0A9278 800A8678 AFA30144 */ sw $v1, 0x144($sp) -/* 0A927C 800A867C 8FA30144 */ lw $v1, 0x144($sp) -/* 0A9280 800A8680 10000009 */ b .L800A86A8 -/* 0A9284 800A8684 00000000 */ nop -.L800A8688: -/* 0A9288 800A8688 8CAF0000 */ lw $t7, ($a1) -/* 0A928C 800A868C 00000000 */ nop -/* 0A9290 800A8690 01F1C021 */ addu $t8, $t7, $s1 -/* 0A9294 800A8694 8F040000 */ lw $a0, ($t8) -/* 0A9298 800A8698 0C017FD0 */ jal func_8005FF40 -/* 0A929C 800A869C AFA30144 */ sw $v1, 0x144($sp) -/* 0A92A0 800A86A0 8FA30144 */ lw $v1, 0x144($sp) -/* 0A92A4 800A86A4 00000000 */ nop -.L800A86A8: -/* 0A92A8 800A86A8 3C198012 */ lui $t9, %hi(D_80126CF4) # $t9, 0x8012 -/* 0A92AC 800A86AC 8F396CF4 */ lw $t9, %lo(D_80126CF4)($t9) -/* 0A92B0 800A86B0 3C058012 */ lui $a1, %hi(D_80126CF4) # $a1, 0x8012 -/* 0A92B4 800A86B4 03315021 */ addu $t2, $t9, $s1 -/* 0A92B8 800A86B8 AD400000 */ sw $zero, ($t2) -/* 0A92BC 800A86BC 24A56CF4 */ addiu $a1, %lo(D_80126CF4) # addiu $a1, $a1, 0x6cf4 -.L800A86C0: -/* 0A92C0 800A86C0 3C0B8012 */ lui $t3, %hi(D_80126CF8) # $t3, 0x8012 -/* 0A92C4 800A86C4 8D6B6CF8 */ lw $t3, %lo(D_80126CF8)($t3) -/* 0A92C8 800A86C8 24630001 */ addiu $v1, $v1, 1 -/* 0A92CC 800A86CC 006B082A */ slt $at, $v1, $t3 -/* 0A92D0 800A86D0 1420FFAE */ bnez $at, .L800A858C -/* 0A92D4 800A86D4 26310004 */ addiu $s1, $s1, 4 -.L800A86D8: -/* 0A92D8 800A86D8 0C01AF6C */ jal func_8006BDB0 -/* 0A92DC 800A86DC 00000000 */ nop -/* 0A92E0 800A86E0 3C018012 */ lui $at, %hi(D_80126D60) # $at, 0x8012 -/* 0A92E4 800A86E4 AC226D60 */ sw $v0, %lo(D_80126D60)($at) -/* 0A92E8 800A86E8 0C006EA4 */ jal func_8001BA90 -/* 0A92EC 800A86EC 27A40140 */ addiu $a0, $sp, 0x140 -/* 0A92F0 800A86F0 8FAC0160 */ lw $t4, 0x160($sp) -/* 0A92F4 800A86F4 AFA20150 */ sw $v0, 0x150($sp) -/* 0A92F8 800A86F8 8D8D0000 */ lw $t5, ($t4) -/* 0A92FC 800A86FC 3C148012 */ lui $s4, %hi(D_80126CFC) # $s4, 0x8012 -/* 0A9300 800A8700 8FAE0164 */ lw $t6, 0x164($sp) -/* 0A9304 800A8704 26946CFC */ addiu $s4, %lo(D_80126CFC) # addiu $s4, $s4, 0x6cfc -/* 0A9308 800A8708 AE8D0000 */ sw $t5, ($s4) -/* 0A930C 800A870C 8DCF0000 */ lw $t7, ($t6) -/* 0A9310 800A8710 8FB80168 */ lw $t8, 0x168($sp) -/* 0A9314 800A8714 3C018012 */ lui $at, %hi(D_80126D00) # $at, 0x8012 -/* 0A9318 800A8718 AC2F6D00 */ sw $t7, %lo(D_80126D00)($at) -/* 0A931C 800A871C 8F190000 */ lw $t9, ($t8) -/* 0A9320 800A8720 3C0A8012 */ lui $t2, %hi(D_80126D60) # $t2, 0x8012 -/* 0A9324 800A8724 8D4A6D60 */ lw $t2, %lo(D_80126D60)($t2) -/* 0A9328 800A8728 3C018012 */ lui $at, %hi(D_80126D04) # $at, 0x8012 -/* 0A932C 800A872C AC396D04 */ sw $t9, %lo(D_80126D04)($at) -/* 0A9330 800A8730 8143004C */ lb $v1, 0x4c($t2) -/* 0A9334 800A8734 24010042 */ li $at, 66 -/* 0A9338 800A8738 146100D4 */ bne $v1, $at, .L800A8A8C -/* 0A933C 800A873C 24010040 */ li $at, 64 -/* 0A9340 800A8740 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 -/* 0A9344 800A8744 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) -/* 0A9348 800A8748 24010002 */ li $at, 2 -/* 0A934C 800A874C 1461000E */ bne $v1, $at, .L800A8788 -/* 0A9350 800A8750 3C0B8012 */ lui $t3, %hi(D_80126D0C) # $t3, 0x8012 -/* 0A9354 800A8754 8D6B6D0C */ lw $t3, %lo(D_80126D0C)($t3) -/* 0A9358 800A8758 3C0C800E */ lui $t4, 0x800e -/* 0A935C 800A875C 018B6021 */ addu $t4, $t4, $t3 -/* 0A9360 800A8760 818C27A4 */ lb $t4, 0x27a4($t4) -/* 0A9364 800A8764 8FA5016C */ lw $a1, 0x16c($sp) -/* 0A9368 800A8768 15800008 */ bnez $t4, .L800A878C -/* 0A936C 800A876C 24010003 */ li $at, 3 -/* 0A9370 800A8770 0C02853C */ jal func_800A14F0 -/* 0A9374 800A8774 00002025 */ move $a0, $zero -/* 0A9378 800A8778 0C01ECF4 */ jal func_8007B3D0 -/* 0A937C 800A877C 02802025 */ move $a0, $s4 -/* 0A9380 800A8780 100003CC */ b .L800A96B4 -/* 0A9384 800A8784 00000000 */ nop -.L800A8788: -/* 0A9388 800A8788 24010003 */ li $at, 3 -.L800A878C: -/* 0A938C 800A878C 146100BC */ bne $v1, $at, .L800A8A80 -/* 0A9390 800A8790 00000000 */ nop -/* 0A9394 800A8794 8FAD0140 */ lw $t5, 0x140($sp) -/* 0A9398 800A8798 00003025 */ move $a2, $zero -/* 0A939C 800A879C 19A00042 */ blez $t5, .L800A88A8 -/* 0A93A0 800A87A0 00002825 */ move $a1, $zero -/* 0A93A4 800A87A4 31A80003 */ andi $t0, $t5, 3 -/* 0A93A8 800A87A8 11000013 */ beqz $t0, .L800A87F8 -/* 0A93AC 800A87AC 01003825 */ move $a3, $t0 -/* 0A93B0 800A87B0 00007080 */ sll $t6, $zero, 2 -/* 0A93B4 800A87B4 004E2021 */ addu $a0, $v0, $t6 -/* 0A93B8 800A87B8 2413FFFF */ li $s3, -1 -.L800A87BC: -/* 0A93BC 800A87BC 8C8F0000 */ lw $t7, ($a0) -/* 0A93C0 800A87C0 24A50001 */ addiu $a1, $a1, 1 -/* 0A93C4 800A87C4 8DE30064 */ lw $v1, 0x64($t7) -/* 0A93C8 800A87C8 00000000 */ nop -/* 0A93CC 800A87CC 84780000 */ lh $t8, ($v1) -/* 0A93D0 800A87D0 00000000 */ nop -/* 0A93D4 800A87D4 16780002 */ bne $s3, $t8, .L800A87E0 -/* 0A93D8 800A87D8 00000000 */ nop -/* 0A93DC 800A87DC 00603025 */ move $a2, $v1 -.L800A87E0: -/* 0A93E0 800A87E0 14E5FFF6 */ bne $a3, $a1, .L800A87BC -/* 0A93E4 800A87E4 24840004 */ addiu $a0, $a0, 4 -/* 0A93E8 800A87E8 8FB90140 */ lw $t9, 0x140($sp) -/* 0A93EC 800A87EC 00000000 */ nop -/* 0A93F0 800A87F0 10B9002D */ beq $a1, $t9, .L800A88A8 -/* 0A93F4 800A87F4 00000000 */ nop -.L800A87F8: -/* 0A93F8 800A87F8 8FAA0140 */ lw $t2, 0x140($sp) -/* 0A93FC 800A87FC 00056080 */ sll $t4, $a1, 2 -/* 0A9400 800A8800 000A5880 */ sll $t3, $t2, 2 -/* 0A9404 800A8804 01623821 */ addu $a3, $t3, $v0 -/* 0A9408 800A8808 004C2021 */ addu $a0, $v0, $t4 -/* 0A940C 800A880C 2413FFFF */ li $s3, -1 -.L800A8810: -/* 0A9410 800A8810 8C8D0000 */ lw $t5, ($a0) -/* 0A9414 800A8814 00000000 */ nop -/* 0A9418 800A8818 8DA30064 */ lw $v1, 0x64($t5) -/* 0A941C 800A881C 00000000 */ nop -/* 0A9420 800A8820 846E0000 */ lh $t6, ($v1) -/* 0A9424 800A8824 00000000 */ nop -/* 0A9428 800A8828 166E0002 */ bne $s3, $t6, .L800A8834 -/* 0A942C 800A882C 00000000 */ nop -/* 0A9430 800A8830 00603025 */ move $a2, $v1 -.L800A8834: -/* 0A9434 800A8834 8C8F0004 */ lw $t7, 4($a0) -/* 0A9438 800A8838 00000000 */ nop -/* 0A943C 800A883C 8DE30064 */ lw $v1, 0x64($t7) -/* 0A9440 800A8840 00000000 */ nop -/* 0A9444 800A8844 84780000 */ lh $t8, ($v1) -/* 0A9448 800A8848 00000000 */ nop -/* 0A944C 800A884C 16780002 */ bne $s3, $t8, .L800A8858 -/* 0A9450 800A8850 00000000 */ nop -/* 0A9454 800A8854 00603025 */ move $a2, $v1 -.L800A8858: -/* 0A9458 800A8858 8C990008 */ lw $t9, 8($a0) -/* 0A945C 800A885C 00000000 */ nop -/* 0A9460 800A8860 8F230064 */ lw $v1, 0x64($t9) -/* 0A9464 800A8864 00000000 */ nop -/* 0A9468 800A8868 846A0000 */ lh $t2, ($v1) -/* 0A946C 800A886C 00000000 */ nop -/* 0A9470 800A8870 166A0002 */ bne $s3, $t2, .L800A887C -/* 0A9474 800A8874 00000000 */ nop -/* 0A9478 800A8878 00603025 */ move $a2, $v1 -.L800A887C: -/* 0A947C 800A887C 8C8B000C */ lw $t3, 0xc($a0) -/* 0A9480 800A8880 24840010 */ addiu $a0, $a0, 0x10 -/* 0A9484 800A8884 8D630064 */ lw $v1, 0x64($t3) -/* 0A9488 800A8888 00000000 */ nop -/* 0A948C 800A888C 846C0000 */ lh $t4, ($v1) -/* 0A9490 800A8890 00000000 */ nop -/* 0A9494 800A8894 166C0002 */ bne $s3, $t4, .L800A88A0 -/* 0A9498 800A8898 00000000 */ nop -/* 0A949C 800A889C 00603025 */ move $a2, $v1 -.L800A88A0: -/* 0A94A0 800A88A0 1487FFDB */ bne $a0, $a3, .L800A8810 -/* 0A94A4 800A88A4 00000000 */ nop -.L800A88A8: -/* 0A94A8 800A88A8 10C00075 */ beqz $a2, .L800A8A80 -/* 0A94AC 800A88AC 3C128012 */ lui $s2, %hi(D_80126CDC) # $s2, 0x8012 -/* 0A94B0 800A88B0 444DF800 */ cfc1 $t5, $31 -/* 0A94B4 800A88B4 26526CDC */ addiu $s2, %lo(D_80126CDC) # addiu $s2, $s2, 0x6cdc -/* 0A94B8 800A88B8 8E420000 */ lw $v0, ($s2) -/* 0A94BC 800A88BC 35A10003 */ ori $at, $t5, 3 -/* 0A94C0 800A88C0 38210002 */ xori $at, $at, 2 -/* 0A94C4 800A88C4 44C1F800 */ ctc1 $at, $31 -/* 0A94C8 800A88C8 C452064C */ lwc1 $f18, 0x64c($v0) -/* 0A94CC 800A88CC C4500650 */ lwc1 $f16, 0x650($v0) -/* 0A94D0 800A88D0 46009224 */ cvt.w.s $f8, $f18 -/* 0A94D4 800A88D4 C446066C */ lwc1 $f6, 0x66c($v0) -/* 0A94D8 800A88D8 44CDF800 */ ctc1 $t5, $31 -/* 0A94DC 800A88DC C4520670 */ lwc1 $f18, 0x670($v0) -/* 0A94E0 800A88E0 44104000 */ mfc1 $s0, $f8 -/* 0A94E4 800A88E4 444EF800 */ cfc1 $t6, $31 -/* 0A94E8 800A88E8 3C0C8000 */ lui $t4, %hi(D_80000300) # $t4, 0x8000 -/* 0A94EC 800A88EC 35C10003 */ ori $at, $t6, 3 -/* 0A94F0 800A88F0 38210002 */ xori $at, $at, 2 -/* 0A94F4 800A88F4 44C1F800 */ ctc1 $at, $31 -/* 0A94F8 800A88F8 00C02025 */ move $a0, $a2 -/* 0A94FC 800A88FC 46008124 */ cvt.w.s $f4, $f16 -/* 0A9500 800A8900 44CEF800 */ ctc1 $t6, $31 -/* 0A9504 800A8904 44112000 */ mfc1 $s1, $f4 -/* 0A9508 800A8908 00000000 */ nop -/* 0A950C 800A890C 444FF800 */ cfc1 $t7, $31 -/* 0A9510 800A8910 00000000 */ nop -/* 0A9514 800A8914 35E10003 */ ori $at, $t7, 3 -/* 0A9518 800A8918 38210002 */ xori $at, $at, 2 -/* 0A951C 800A891C 44C1F800 */ ctc1 $at, $31 -/* 0A9520 800A8920 00000000 */ nop -/* 0A9524 800A8924 460032A4 */ cvt.w.s $f10, $f6 -/* 0A9528 800A8928 44CFF800 */ ctc1 $t7, $31 -/* 0A952C 800A892C 44035000 */ mfc1 $v1, $f10 -/* 0A9530 800A8930 00000000 */ nop -/* 0A9534 800A8934 4458F800 */ cfc1 $t8, $31 -/* 0A9538 800A8938 00000000 */ nop -/* 0A953C 800A893C 37010003 */ ori $at, $t8, 3 -/* 0A9540 800A8940 38210002 */ xori $at, $at, 2 -/* 0A9544 800A8944 44C1F800 */ ctc1 $at, $31 -/* 0A9548 800A8948 3C014361 */ li $at, 0x43610000 # 225.000000 -/* 0A954C 800A894C 44818000 */ mtc1 $at, $f16 -/* 0A9550 800A8950 3C01435D */ li $at, 0x435D0000 # 221.000000 -/* 0A9554 800A8954 E450064C */ swc1 $f16, 0x64c($v0) -/* 0A9558 800A8958 8E590000 */ lw $t9, ($s2) -/* 0A955C 800A895C 44812000 */ mtc1 $at, $f4 -/* 0A9560 800A8960 3C014345 */ li $at, 0x43450000 # 197.000000 -/* 0A9564 800A8964 E724066C */ swc1 $f4, 0x66c($t9) -/* 0A9568 800A8968 8E4A0000 */ lw $t2, ($s2) -/* 0A956C 800A896C 44813000 */ mtc1 $at, $f6 -/* 0A9570 800A8970 3C014325 */ li $at, 0x43250000 # 165.000000 -/* 0A9574 800A8974 E5460670 */ swc1 $f6, 0x670($t2) -/* 0A9578 800A8978 8E4B0000 */ lw $t3, ($s2) -/* 0A957C 800A897C 44815000 */ mtc1 $at, $f10 -/* 0A9580 800A8980 46009224 */ cvt.w.s $f8, $f18 -/* 0A9584 800A8984 E56A0650 */ swc1 $f10, 0x650($t3) -/* 0A9588 800A8988 8D8C0300 */ lw $t4, %lo(D_80000300)($t4) -/* 0A958C 800A898C 44074000 */ mfc1 $a3, $f8 -/* 0A9590 800A8990 44D8F800 */ ctc1 $t8, $31 -/* 0A9594 800A8994 15800020 */ bnez $t4, .L800A8A18 -/* 0A9598 800A8998 3C01800F */ li $at, 0x800F0000 # -0.000000 -/* 0A959C 800A899C C42187A0 */ lwc1 $f1, %lo(D_800E87A0)($at) -/* 0A95A0 800A89A0 C42087A4 */ lwc1 $f0, %lo(D_800E87A4)($at) -/* 0A95A4 800A89A4 8E420000 */ lw $v0, ($s2) -/* 0A95A8 800A89A8 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 0A95AC 800A89AC 44814000 */ mtc1 $at, $f8 -/* 0A95B0 800A89B0 C452064C */ lwc1 $f18, 0x64c($v0) -/* 0A95B4 800A89B4 44813000 */ mtc1 $at, $f6 -/* 0A95B8 800A89B8 46089401 */ sub.s $f16, $f18, $f8 -/* 0A95BC 800A89BC E450064C */ swc1 $f16, 0x64c($v0) -/* 0A95C0 800A89C0 8E420000 */ lw $v0, ($s2) -/* 0A95C4 800A89C4 00000000 */ nop -/* 0A95C8 800A89C8 C444066C */ lwc1 $f4, 0x66c($v0) -/* 0A95CC 800A89CC 00000000 */ nop -/* 0A95D0 800A89D0 46062281 */ sub.s $f10, $f4, $f6 -/* 0A95D4 800A89D4 E44A066C */ swc1 $f10, 0x66c($v0) -/* 0A95D8 800A89D8 8E420000 */ lw $v0, ($s2) -/* 0A95DC 800A89DC 00000000 */ nop -/* 0A95E0 800A89E0 C4520650 */ lwc1 $f18, 0x650($v0) -/* 0A95E4 800A89E4 00000000 */ nop -/* 0A95E8 800A89E8 46009221 */ cvt.d.s $f8, $f18 -/* 0A95EC 800A89EC 46204402 */ mul.d $f16, $f8, $f0 -/* 0A95F0 800A89F0 46208120 */ cvt.s.d $f4, $f16 -/* 0A95F4 800A89F4 E4440650 */ swc1 $f4, 0x650($v0) -/* 0A95F8 800A89F8 8E420000 */ lw $v0, ($s2) -/* 0A95FC 800A89FC 00000000 */ nop -/* 0A9600 800A8A00 C4460670 */ lwc1 $f6, 0x670($v0) -/* 0A9604 800A8A04 00000000 */ nop -/* 0A9608 800A8A08 460032A1 */ cvt.d.s $f10, $f6 -/* 0A960C 800A8A0C 46205482 */ mul.d $f18, $f10, $f0 -/* 0A9610 800A8A10 46209220 */ cvt.s.d $f8, $f18 -/* 0A9614 800A8A14 E4480670 */ swc1 $f8, 0x670($v0) -.L800A8A18: -/* 0A9618 800A8A18 8FA5016C */ lw $a1, 0x16c($sp) -/* 0A961C 800A8A1C AFA300F4 */ sw $v1, 0xf4($sp) -/* 0A9620 800A8A20 0C028669 */ jal func_800A19A4 -/* 0A9624 800A8A24 AFA700F0 */ sw $a3, 0xf0($sp) -/* 0A9628 800A8A28 44908000 */ mtc1 $s0, $f16 -/* 0A962C 800A8A2C 240DFFFE */ li $t5, -2 -/* 0A9630 800A8A30 3C01800E */ lui $at, %hi(D_800E2834) # $at, 0x800e -/* 0A9634 800A8A34 46808120 */ cvt.s.w $f4, $f16 -/* 0A9638 800A8A38 AC2D2834 */ sw $t5, %lo(D_800E2834)($at) -/* 0A963C 800A8A3C 8FA300F4 */ lw $v1, 0xf4($sp) -/* 0A9640 800A8A40 8E4E0000 */ lw $t6, ($s2) -/* 0A9644 800A8A44 44913000 */ mtc1 $s1, $f6 -/* 0A9648 800A8A48 8FA700F0 */ lw $a3, 0xf0($sp) -/* 0A964C 800A8A4C 468032A0 */ cvt.s.w $f10, $f6 -/* 0A9650 800A8A50 E5C4064C */ swc1 $f4, 0x64c($t6) -/* 0A9654 800A8A54 8E4F0000 */ lw $t7, ($s2) -/* 0A9658 800A8A58 44839000 */ mtc1 $v1, $f18 -/* 0A965C 800A8A5C E5EA0650 */ swc1 $f10, 0x650($t7) -/* 0A9660 800A8A60 46809220 */ cvt.s.w $f8, $f18 -/* 0A9664 800A8A64 8E580000 */ lw $t8, ($s2) -/* 0A9668 800A8A68 44878000 */ mtc1 $a3, $f16 -/* 0A966C 800A8A6C E708066C */ swc1 $f8, 0x66c($t8) -/* 0A9670 800A8A70 46808120 */ cvt.s.w $f4, $f16 -/* 0A9674 800A8A74 8E590000 */ lw $t9, ($s2) -/* 0A9678 800A8A78 00000000 */ nop -/* 0A967C 800A8A7C E7240670 */ swc1 $f4, 0x670($t9) -.L800A8A80: -/* 0A9680 800A8A80 1000030C */ b .L800A96B4 -/* 0A9684 800A8A84 00000000 */ nop -/* 0A9688 800A8A88 24010040 */ li $at, 64 -.L800A8A8C: -/* 0A968C 800A8A8C 146101B2 */ bne $v1, $at, .L800A9158 -/* 0A9690 800A8A90 24010041 */ li $at, 65 -/* 0A9694 800A8A94 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 -/* 0A9698 800A8A98 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) -/* 0A969C 800A8A9C 24010002 */ li $at, 2 -/* 0A96A0 800A8AA0 1461001B */ bne $v1, $at, .L800A8B10 -/* 0A96A4 800A8AA4 3C0A8012 */ lui $t2, %hi(D_80126D0C) # $t2, 0x8012 -/* 0A96A8 800A8AA8 8D4A6D0C */ lw $t2, %lo(D_80126D0C)($t2) -/* 0A96AC 800A8AAC 3C0B800E */ lui $t3, 0x800e -/* 0A96B0 800A8AB0 016A5821 */ addu $t3, $t3, $t2 -/* 0A96B4 800A8AB4 816B27A4 */ lb $t3, 0x27a4($t3) -/* 0A96B8 800A8AB8 00000000 */ nop -/* 0A96BC 800A8ABC 15600015 */ bnez $t3, .L800A8B14 -/* 0A96C0 800A8AC0 24010003 */ li $at, 3 -/* 0A96C4 800A8AC4 0C01A142 */ jal func_80068508 -/* 0A96C8 800A8AC8 24040001 */ li $a0, 1 -/* 0A96CC 800A8ACC 0C01EFC7 */ jal func_8007BF1C -/* 0A96D0 800A8AD0 00002025 */ move $a0, $zero -/* 0A96D4 800A8AD4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A96D8 800A8AD8 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A96DC 800A8ADC 0C019FCB */ jal func_80067F2C -/* 0A96E0 800A8AE0 02802025 */ move $a0, $s4 -/* 0A96E4 800A8AE4 8FA5016C */ lw $a1, 0x16c($sp) -/* 0A96E8 800A8AE8 0C028792 */ jal func_800A1E48 -/* 0A96EC 800A8AEC 00002025 */ move $a0, $zero -/* 0A96F0 800A8AF0 0C01A142 */ jal func_80068508 -/* 0A96F4 800A8AF4 00002025 */ move $a0, $zero -/* 0A96F8 800A8AF8 0C01ECF4 */ jal func_8007B3D0 -/* 0A96FC 800A8AFC 02802025 */ move $a0, $s4 -/* 0A9700 800A8B00 0C01EFC7 */ jal func_8007BF1C -/* 0A9704 800A8B04 24040001 */ li $a0, 1 -/* 0A9708 800A8B08 100002EA */ b .L800A96B4 -/* 0A970C 800A8B0C 00000000 */ nop -.L800A8B10: -/* 0A9710 800A8B10 24010003 */ li $at, 3 -.L800A8B14: -/* 0A9714 800A8B14 1461018D */ bne $v1, $at, .L800A914C -/* 0A9718 800A8B18 00000000 */ nop -/* 0A971C 800A8B1C 8FAC0140 */ lw $t4, 0x140($sp) -/* 0A9720 800A8B20 00008025 */ move $s0, $zero -/* 0A9724 800A8B24 19800042 */ blez $t4, .L800A8C30 -/* 0A9728 800A8B28 00002825 */ move $a1, $zero -/* 0A972C 800A8B2C 31880003 */ andi $t0, $t4, 3 -/* 0A9730 800A8B30 11000013 */ beqz $t0, .L800A8B80 -/* 0A9734 800A8B34 01003025 */ move $a2, $t0 -/* 0A9738 800A8B38 00006880 */ sll $t5, $zero, 2 -/* 0A973C 800A8B3C 004D2021 */ addu $a0, $v0, $t5 -/* 0A9740 800A8B40 2413FFFF */ li $s3, -1 -.L800A8B44: -/* 0A9744 800A8B44 8C8E0000 */ lw $t6, ($a0) -/* 0A9748 800A8B48 24A50001 */ addiu $a1, $a1, 1 -/* 0A974C 800A8B4C 8DC30064 */ lw $v1, 0x64($t6) -/* 0A9750 800A8B50 00000000 */ nop -/* 0A9754 800A8B54 846F0000 */ lh $t7, ($v1) -/* 0A9758 800A8B58 00000000 */ nop -/* 0A975C 800A8B5C 166F0002 */ bne $s3, $t7, .L800A8B68 -/* 0A9760 800A8B60 00000000 */ nop -/* 0A9764 800A8B64 00608025 */ move $s0, $v1 -.L800A8B68: -/* 0A9768 800A8B68 14C5FFF6 */ bne $a2, $a1, .L800A8B44 -/* 0A976C 800A8B6C 24840004 */ addiu $a0, $a0, 4 -/* 0A9770 800A8B70 8FB80140 */ lw $t8, 0x140($sp) -/* 0A9774 800A8B74 00000000 */ nop -/* 0A9778 800A8B78 10B8002D */ beq $a1, $t8, .L800A8C30 -/* 0A977C 800A8B7C 00000000 */ nop -.L800A8B80: -/* 0A9780 800A8B80 8FB90140 */ lw $t9, 0x140($sp) -/* 0A9784 800A8B84 00055880 */ sll $t3, $a1, 2 -/* 0A9788 800A8B88 00195080 */ sll $t2, $t9, 2 -/* 0A978C 800A8B8C 01423021 */ addu $a2, $t2, $v0 -/* 0A9790 800A8B90 004B2021 */ addu $a0, $v0, $t3 -/* 0A9794 800A8B94 2413FFFF */ li $s3, -1 -.L800A8B98: -/* 0A9798 800A8B98 8C8C0000 */ lw $t4, ($a0) -/* 0A979C 800A8B9C 00000000 */ nop -/* 0A97A0 800A8BA0 8D830064 */ lw $v1, 0x64($t4) -/* 0A97A4 800A8BA4 00000000 */ nop -/* 0A97A8 800A8BA8 846D0000 */ lh $t5, ($v1) -/* 0A97AC 800A8BAC 00000000 */ nop -/* 0A97B0 800A8BB0 166D0002 */ bne $s3, $t5, .L800A8BBC -/* 0A97B4 800A8BB4 00000000 */ nop -/* 0A97B8 800A8BB8 00608025 */ move $s0, $v1 -.L800A8BBC: -/* 0A97BC 800A8BBC 8C8E0004 */ lw $t6, 4($a0) -/* 0A97C0 800A8BC0 00000000 */ nop -/* 0A97C4 800A8BC4 8DC30064 */ lw $v1, 0x64($t6) -/* 0A97C8 800A8BC8 00000000 */ nop -/* 0A97CC 800A8BCC 846F0000 */ lh $t7, ($v1) -/* 0A97D0 800A8BD0 00000000 */ nop -/* 0A97D4 800A8BD4 166F0002 */ bne $s3, $t7, .L800A8BE0 -/* 0A97D8 800A8BD8 00000000 */ nop -/* 0A97DC 800A8BDC 00608025 */ move $s0, $v1 -.L800A8BE0: -/* 0A97E0 800A8BE0 8C980008 */ lw $t8, 8($a0) -/* 0A97E4 800A8BE4 00000000 */ nop -/* 0A97E8 800A8BE8 8F030064 */ lw $v1, 0x64($t8) -/* 0A97EC 800A8BEC 00000000 */ nop -/* 0A97F0 800A8BF0 84790000 */ lh $t9, ($v1) -/* 0A97F4 800A8BF4 00000000 */ nop -/* 0A97F8 800A8BF8 16790002 */ bne $s3, $t9, .L800A8C04 -/* 0A97FC 800A8BFC 00000000 */ nop -/* 0A9800 800A8C00 00608025 */ move $s0, $v1 -.L800A8C04: -/* 0A9804 800A8C04 8C8A000C */ lw $t2, 0xc($a0) -/* 0A9808 800A8C08 24840010 */ addiu $a0, $a0, 0x10 -/* 0A980C 800A8C0C 8D430064 */ lw $v1, 0x64($t2) -/* 0A9810 800A8C10 00000000 */ nop -/* 0A9814 800A8C14 846B0000 */ lh $t3, ($v1) -/* 0A9818 800A8C18 00000000 */ nop -/* 0A981C 800A8C1C 166B0002 */ bne $s3, $t3, .L800A8C28 -/* 0A9820 800A8C20 00000000 */ nop -/* 0A9824 800A8C24 00608025 */ move $s0, $v1 -.L800A8C28: -/* 0A9828 800A8C28 1486FFDB */ bne $a0, $a2, .L800A8B98 -/* 0A982C 800A8C2C 00000000 */ nop -.L800A8C30: -/* 0A9830 800A8C30 12000146 */ beqz $s0, .L800A914C -/* 0A9834 800A8C34 3C128012 */ lui $s2, %hi(D_80126CDC) # $s2, 0x8012 -/* 0A9838 800A8C38 444DF800 */ cfc1 $t5, $31 -/* 0A983C 800A8C3C 3C0C8012 */ lui $t4, %hi(D_80126CEC) # $t4, 0x8012 -/* 0A9840 800A8C40 8D8C6CEC */ lw $t4, %lo(D_80126CEC)($t4) -/* 0A9844 800A8C44 26526CDC */ addiu $s2, %lo(D_80126CDC) # addiu $s2, $s2, 0x6cdc -/* 0A9848 800A8C48 35A10003 */ ori $at, $t5, 3 -/* 0A984C 800A8C4C 38210002 */ xori $at, $at, 2 -/* 0A9850 800A8C50 AE4C0000 */ sw $t4, ($s2) -/* 0A9854 800A8C54 44C1F800 */ ctc1 $at, $31 -/* 0A9858 800A8C58 C586064C */ lwc1 $f6, 0x64c($t4) -/* 0A985C 800A8C5C 00002025 */ move $a0, $zero -/* 0A9860 800A8C60 460032A4 */ cvt.w.s $f10, $f6 -/* 0A9864 800A8C64 44CDF800 */ ctc1 $t5, $31 -/* 0A9868 800A8C68 440E5000 */ mfc1 $t6, $f10 -/* 0A986C 800A8C6C 00000000 */ nop -/* 0A9870 800A8C70 444FF800 */ cfc1 $t7, $31 -/* 0A9874 800A8C74 AFAE00E4 */ sw $t6, 0xe4($sp) -/* 0A9878 800A8C78 35E10003 */ ori $at, $t7, 3 -/* 0A987C 800A8C7C 38210002 */ xori $at, $at, 2 -/* 0A9880 800A8C80 44C1F800 */ ctc1 $at, $31 -/* 0A9884 800A8C84 C5920650 */ lwc1 $f18, 0x650($t4) -/* 0A9888 800A8C88 00000000 */ nop -/* 0A988C 800A8C8C 46009224 */ cvt.w.s $f8, $f18 -/* 0A9890 800A8C90 44184000 */ mfc1 $t8, $f8 -/* 0A9894 800A8C94 44CFF800 */ ctc1 $t7, $31 -/* 0A9898 800A8C98 0C01EFC7 */ jal func_8007BF1C -/* 0A989C 800A8C9C AFB800E0 */ sw $t8, 0xe0($sp) -/* 0A98A0 800A8CA0 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A98A4 800A8CA4 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A98A8 800A8CA8 0C019FCB */ jal func_80067F2C -/* 0A98AC 800A8CAC 02802025 */ move $a0, $s4 -/* 0A98B0 800A8CB0 0C01A142 */ jal func_80068508 -/* 0A98B4 800A8CB4 24040001 */ li $a0, 1 -/* 0A98B8 800A8CB8 3C014361 */ li $at, 0x43610000 # 225.000000 -/* 0A98BC 800A8CBC 44818000 */ mtc1 $at, $f16 -/* 0A98C0 800A8CC0 8E590000 */ lw $t9, ($s2) -/* 0A98C4 800A8CC4 3C0A8000 */ lui $t2, %hi(D_80000300) # $t2, 0x8000 -/* 0A98C8 800A8CC8 E730064C */ swc1 $f16, 0x64c($t9) -/* 0A98CC 800A8CCC 8D4A0300 */ lw $t2, %lo(D_80000300)($t2) -/* 0A98D0 800A8CD0 3C0D8000 */ lui $t5, %hi(D_80000300) # $t5, 0x8000 -/* 0A98D4 800A8CD4 15400006 */ bnez $t2, .L800A8CF0 -/* 0A98D8 800A8CD8 3C118012 */ lui $s1, %hi(D_80126CD5) # $s1, 0x8012 -/* 0A98DC 800A8CDC 3C01800F */ li $at, 0x800F0000 # -0.000000 -/* 0A98E0 800A8CE0 C42487A8 */ lwc1 $f4, %lo(D_800E87A8)($at) -/* 0A98E4 800A8CE4 8E4B0000 */ lw $t3, ($s2) -/* 0A98E8 800A8CE8 10000006 */ b .L800A8D04 -/* 0A98EC 800A8CEC E5640650 */ swc1 $f4, 0x650($t3) -.L800A8CF0: -/* 0A98F0 800A8CF0 3C014325 */ li $at, 0x43250000 # 165.000000 -/* 0A98F4 800A8CF4 44813000 */ mtc1 $at, $f6 -/* 0A98F8 800A8CF8 8E4C0000 */ lw $t4, ($s2) -/* 0A98FC 800A8CFC 00000000 */ nop -/* 0A9900 800A8D00 E5860650 */ swc1 $f6, 0x650($t4) -.L800A8D04: -/* 0A9904 800A8D04 8DAD0300 */ lw $t5, %lo(D_80000300)($t5) -/* 0A9908 800A8D08 26316CD5 */ addiu $s1, %lo(D_80126CD5) # addiu $s1, $s1, 0x6cd5 -/* 0A990C 800A8D0C 15A00020 */ bnez $t5, .L800A8D90 -/* 0A9910 800A8D10 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0A9914 800A8D14 8E420000 */ lw $v0, ($s2) -/* 0A9918 800A8D18 3C014284 */ li $at, 0x42840000 # 66.000000 -/* 0A991C 800A8D1C 44815000 */ mtc1 $at, $f10 -/* 0A9920 800A8D20 C44C036C */ lwc1 $f12, 0x36c($v0) -/* 0A9924 800A8D24 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 0A9928 800A8D28 44814000 */ mtc1 $at, $f8 -/* 0A992C 800A8D2C 460C5481 */ sub.s $f18, $f10, $f12 -/* 0A9930 800A8D30 C44A0370 */ lwc1 $f10, 0x370($v0) -/* 0A9934 800A8D34 46089401 */ sub.s $f16, $f18, $f8 -/* 0A9938 800A8D38 444EF800 */ cfc1 $t6, $31 -/* 0A993C 800A8D3C 00000000 */ nop -/* 0A9940 800A8D40 35C10003 */ ori $at, $t6, 3 -/* 0A9944 800A8D44 38210002 */ xori $at, $at, 2 -/* 0A9948 800A8D48 44C1F800 */ ctc1 $at, $31 -/* 0A994C 800A8D4C 3C01C2E4 */ li $at, 0xC2E40000 # -114.000000 -/* 0A9950 800A8D50 46008124 */ cvt.w.s $f4, $f16 -/* 0A9954 800A8D54 44813000 */ mtc1 $at, $f6 -/* 0A9958 800A8D58 44CEF800 */ ctc1 $t6, $31 -/* 0A995C 800A8D5C 44042000 */ mfc1 $a0, $f4 -/* 0A9960 800A8D60 460A3481 */ sub.s $f18, $f6, $f10 -/* 0A9964 800A8D64 444FF800 */ cfc1 $t7, $31 -/* 0A9968 800A8D68 00000000 */ nop -/* 0A996C 800A8D6C 35E10003 */ ori $at, $t7, 3 -/* 0A9970 800A8D70 38210002 */ xori $at, $at, 2 -/* 0A9974 800A8D74 44C1F800 */ ctc1 $at, $31 -/* 0A9978 800A8D78 00000000 */ nop -/* 0A997C 800A8D7C 46009224 */ cvt.w.s $f8, $f18 -/* 0A9980 800A8D80 44034000 */ mfc1 $v1, $f8 -/* 0A9984 800A8D84 44CFF800 */ ctc1 $t7, $31 -/* 0A9988 800A8D88 1000001D */ b .L800A8E00 -/* 0A998C 800A8D8C 44842000 */ mtc1 $a0, $f4 -.L800A8D90: -/* 0A9990 800A8D90 8E420000 */ lw $v0, ($s2) -/* 0A9994 800A8D94 3C014284 */ li $at, 0x42840000 # 66.000000 -/* 0A9998 800A8D98 44818000 */ mtc1 $at, $f16 -/* 0A999C 800A8D9C C44C036C */ lwc1 $f12, 0x36c($v0) -/* 0A99A0 800A8DA0 C4520370 */ lwc1 $f18, 0x370($v0) -/* 0A99A4 800A8DA4 460C8101 */ sub.s $f4, $f16, $f12 -/* 0A99A8 800A8DA8 4458F800 */ cfc1 $t8, $31 -/* 0A99AC 800A8DAC 00000000 */ nop -/* 0A99B0 800A8DB0 37010003 */ ori $at, $t8, 3 -/* 0A99B4 800A8DB4 38210002 */ xori $at, $at, 2 -/* 0A99B8 800A8DB8 44C1F800 */ ctc1 $at, $31 -/* 0A99BC 800A8DBC 3C01C2C8 */ li $at, 0xC2C80000 # -100.000000 -/* 0A99C0 800A8DC0 460021A4 */ cvt.w.s $f6, $f4 -/* 0A99C4 800A8DC4 44815000 */ mtc1 $at, $f10 -/* 0A99C8 800A8DC8 44D8F800 */ ctc1 $t8, $31 -/* 0A99CC 800A8DCC 44043000 */ mfc1 $a0, $f6 -/* 0A99D0 800A8DD0 46125201 */ sub.s $f8, $f10, $f18 -/* 0A99D4 800A8DD4 4459F800 */ cfc1 $t9, $31 -/* 0A99D8 800A8DD8 00000000 */ nop -/* 0A99DC 800A8DDC 37210003 */ ori $at, $t9, 3 -/* 0A99E0 800A8DE0 38210002 */ xori $at, $at, 2 -/* 0A99E4 800A8DE4 44C1F800 */ ctc1 $at, $31 -/* 0A99E8 800A8DE8 00000000 */ nop -/* 0A99EC 800A8DEC 46004424 */ cvt.w.s $f16, $f8 -/* 0A99F0 800A8DF0 44D9F800 */ ctc1 $t9, $31 -/* 0A99F4 800A8DF4 44038000 */ mfc1 $v1, $f16 -/* 0A99F8 800A8DF8 00000000 */ nop -/* 0A99FC 800A8DFC 44842000 */ mtc1 $a0, $f4 -.L800A8E00: -/* 0A9A00 800A8E00 44835000 */ mtc1 $v1, $f10 -/* 0A9A04 800A8E04 46802020 */ cvt.s.w $f0, $f4 -/* 0A9A08 800A8E08 246A0001 */ addiu $t2, $v1, 1 -/* 0A9A0C 800A8E0C 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 -/* 0A9A10 800A8E10 46006180 */ add.s $f6, $f12, $f0 -/* 0A9A14 800A8E14 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0A9A18 800A8E18 E446036C */ swc1 $f6, 0x36c($v0) -/* 0A9A1C 800A8E1C 8E420000 */ lw $v0, ($s2) -/* 0A9A20 800A8E20 468050A0 */ cvt.s.w $f2, $f10 -/* 0A9A24 800A8E24 C4520370 */ lwc1 $f18, 0x370($v0) -/* 0A9A28 800A8E28 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 0A9A2C 800A8E2C 46029200 */ add.s $f8, $f18, $f2 -/* 0A9A30 800A8E30 240F0001 */ li $t7, 1 -/* 0A9A34 800A8E34 E4480370 */ swc1 $f8, 0x370($v0) -/* 0A9A38 800A8E38 8E420000 */ lw $v0, ($s2) -/* 0A9A3C 800A8E3C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0A9A40 800A8E40 C45000EC */ lwc1 $f16, 0xec($v0) -/* 0A9A44 800A8E44 02802025 */ move $a0, $s4 -/* 0A9A48 800A8E48 46008100 */ add.s $f4, $f16, $f0 -/* 0A9A4C 800A8E4C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0A9A50 800A8E50 E44400EC */ swc1 $f4, 0xec($v0) -/* 0A9A54 800A8E54 8E420000 */ lw $v0, ($s2) -/* 0A9A58 800A8E58 00000000 */ nop -/* 0A9A5C 800A8E5C C44600F0 */ lwc1 $f6, 0xf0($v0) -/* 0A9A60 800A8E60 00000000 */ nop -/* 0A9A64 800A8E64 46023280 */ add.s $f10, $f6, $f2 -/* 0A9A68 800A8E68 E44A00F0 */ swc1 $f10, 0xf0($v0) -/* 0A9A6C 800A8E6C 8E420000 */ lw $v0, ($s2) -/* 0A9A70 800A8E70 00000000 */ nop -/* 0A9A74 800A8E74 C452038C */ lwc1 $f18, 0x38c($v0) -/* 0A9A78 800A8E78 00000000 */ nop -/* 0A9A7C 800A8E7C 46009200 */ add.s $f8, $f18, $f0 -/* 0A9A80 800A8E80 448A9000 */ mtc1 $t2, $f18 -/* 0A9A84 800A8E84 E448038C */ swc1 $f8, 0x38c($v0) -/* 0A9A88 800A8E88 8E420000 */ lw $v0, ($s2) -/* 0A9A8C 800A8E8C 468093A0 */ cvt.s.w $f14, $f18 -/* 0A9A90 800A8E90 C4500390 */ lwc1 $f16, 0x390($v0) -/* 0A9A94 800A8E94 00000000 */ nop -/* 0A9A98 800A8E98 46028100 */ add.s $f4, $f16, $f2 -/* 0A9A9C 800A8E9C E4440390 */ swc1 $f4, 0x390($v0) -/* 0A9AA0 800A8EA0 8E420000 */ lw $v0, ($s2) -/* 0A9AA4 800A8EA4 00000000 */ nop -/* 0A9AA8 800A8EA8 C446010C */ lwc1 $f6, 0x10c($v0) -/* 0A9AAC 800A8EAC 00000000 */ nop -/* 0A9AB0 800A8EB0 46003280 */ add.s $f10, $f6, $f0 -/* 0A9AB4 800A8EB4 E44A010C */ swc1 $f10, 0x10c($v0) -/* 0A9AB8 800A8EB8 8E420000 */ lw $v0, ($s2) -/* 0A9ABC 800A8EBC 00000000 */ nop -/* 0A9AC0 800A8EC0 C4480110 */ lwc1 $f8, 0x110($v0) -/* 0A9AC4 800A8EC4 00000000 */ nop -/* 0A9AC8 800A8EC8 460E4401 */ sub.s $f16, $f8, $f14 -/* 0A9ACC 800A8ECC E4500110 */ swc1 $f16, 0x110($v0) -/* 0A9AD0 800A8ED0 8E420000 */ lw $v0, ($s2) -/* 0A9AD4 800A8ED4 00000000 */ nop -/* 0A9AD8 800A8ED8 C444012C */ lwc1 $f4, 0x12c($v0) -/* 0A9ADC 800A8EDC 00000000 */ nop -/* 0A9AE0 800A8EE0 46002180 */ add.s $f6, $f4, $f0 -/* 0A9AE4 800A8EE4 E446012C */ swc1 $f6, 0x12c($v0) -/* 0A9AE8 800A8EE8 8E420000 */ lw $v0, ($s2) -/* 0A9AEC 800A8EEC 00000000 */ nop -/* 0A9AF0 800A8EF0 C44A0130 */ lwc1 $f10, 0x130($v0) -/* 0A9AF4 800A8EF4 00000000 */ nop -/* 0A9AF8 800A8EF8 460E5481 */ sub.s $f18, $f10, $f14 -/* 0A9AFC 800A8EFC E4520130 */ swc1 $f18, 0x130($v0) -/* 0A9B00 800A8F00 8E420000 */ lw $v0, ($s2) -/* 0A9B04 800A8F04 00000000 */ nop -/* 0A9B08 800A8F08 C448024C */ lwc1 $f8, 0x24c($v0) -/* 0A9B0C 800A8F0C 00000000 */ nop -/* 0A9B10 800A8F10 46004400 */ add.s $f16, $f8, $f0 -/* 0A9B14 800A8F14 E450024C */ swc1 $f16, 0x24c($v0) -/* 0A9B18 800A8F18 8E420000 */ lw $v0, ($s2) -/* 0A9B1C 800A8F1C 00000000 */ nop -/* 0A9B20 800A8F20 C4440250 */ lwc1 $f4, 0x250($v0) -/* 0A9B24 800A8F24 00000000 */ nop -/* 0A9B28 800A8F28 46022181 */ sub.s $f6, $f4, $f2 -/* 0A9B2C 800A8F2C E4460250 */ swc1 $f6, 0x250($v0) -/* 0A9B30 800A8F30 820B0003 */ lb $t3, 3($s0) -/* 0A9B34 800A8F34 8E4D0000 */ lw $t5, ($s2) -/* 0A9B38 800A8F38 256C0038 */ addiu $t4, $t3, 0x38 -/* 0A9B3C 800A8F3C A5AC0646 */ sh $t4, 0x646($t5) -/* 0A9B40 800A8F40 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) -/* 0A9B44 800A8F44 00000000 */ nop -/* 0A9B48 800A8F48 15C0000D */ bnez $t6, .L800A8F80 -/* 0A9B4C 800A8F4C 00000000 */ nop -/* 0A9B50 800A8F50 8E420000 */ lw $v0, ($s2) -/* 0A9B54 800A8F54 44819000 */ mtc1 $at, $f18 -/* 0A9B58 800A8F58 C44A064C */ lwc1 $f10, 0x64c($v0) -/* 0A9B5C 800A8F5C 44812000 */ mtc1 $at, $f4 -/* 0A9B60 800A8F60 46125201 */ sub.s $f8, $f10, $f18 -/* 0A9B64 800A8F64 E448064C */ swc1 $f8, 0x64c($v0) -/* 0A9B68 800A8F68 8E420000 */ lw $v0, ($s2) -/* 0A9B6C 800A8F6C 00000000 */ nop -/* 0A9B70 800A8F70 C450066C */ lwc1 $f16, 0x66c($v0) -/* 0A9B74 800A8F74 00000000 */ nop -/* 0A9B78 800A8F78 46048181 */ sub.s $f6, $f16, $f4 -/* 0A9B7C 800A8F7C E446066C */ swc1 $f6, 0x66c($v0) -.L800A8F80: -/* 0A9B80 800A8F80 8E470000 */ lw $a3, ($s2) -/* 0A9B84 800A8F84 A22F0000 */ sb $t7, ($s1) -/* 0A9B88 800A8F88 E7A0004C */ swc1 $f0, 0x4c($sp) -/* 0A9B8C 800A8F8C E7A20048 */ swc1 $f2, 0x48($sp) -/* 0A9B90 800A8F90 E7AE0044 */ swc1 $f14, 0x44($sp) -/* 0A9B94 800A8F94 0C02A980 */ jal func_800AA600 -/* 0A9B98 800A8F98 24E70640 */ addiu $a3, $a3, 0x640 -/* 0A9B9C 800A8F9C 8E420000 */ lw $v0, ($s2) -/* 0A9BA0 800A8FA0 A2200000 */ sb $zero, ($s1) -/* 0A9BA4 800A8FA4 805800FB */ lb $t8, 0xfb($v0) -/* 0A9BA8 800A8FA8 C7A0004C */ lwc1 $f0, 0x4c($sp) -/* 0A9BAC 800A8FAC C7A20048 */ lwc1 $f2, 0x48($sp) -/* 0A9BB0 800A8FB0 C7AE0044 */ lwc1 $f14, 0x44($sp) -/* 0A9BB4 800A8FB4 17000006 */ bnez $t8, .L800A8FD0 -/* 0A9BB8 800A8FB8 02002025 */ move $a0, $s0 -/* 0A9BBC 800A8FBC 82030185 */ lb $v1, 0x185($s0) -/* 0A9BC0 800A8FC0 2401000A */ li $at, 10 -/* 0A9BC4 800A8FC4 14610003 */ bne $v1, $at, .L800A8FD4 -/* 0A9BC8 800A8FC8 8FA5016C */ lw $a1, 0x16c($sp) -/* 0A9BCC 800A8FCC A04300FB */ sb $v1, 0xfb($v0) -.L800A8FD0: -/* 0A9BD0 800A8FD0 8FA5016C */ lw $a1, 0x16c($sp) -.L800A8FD4: -/* 0A9BD4 800A8FD4 E7A0004C */ swc1 $f0, 0x4c($sp) -/* 0A9BD8 800A8FD8 E7A20048 */ swc1 $f2, 0x48($sp) -/* 0A9BDC 800A8FDC 0C029055 */ jal func_800A4154 -/* 0A9BE0 800A8FE0 E7AE0044 */ swc1 $f14, 0x44($sp) -/* 0A9BE4 800A8FE4 8E420000 */ lw $v0, ($s2) -/* 0A9BE8 800A8FE8 C7A0004C */ lwc1 $f0, 0x4c($sp) -/* 0A9BEC 800A8FEC C44A036C */ lwc1 $f10, 0x36c($v0) -/* 0A9BF0 800A8FF0 C7A20048 */ lwc1 $f2, 0x48($sp) -/* 0A9BF4 800A8FF4 46005481 */ sub.s $f18, $f10, $f0 -/* 0A9BF8 800A8FF8 C7AE0044 */ lwc1 $f14, 0x44($sp) -/* 0A9BFC 800A8FFC E452036C */ swc1 $f18, 0x36c($v0) -/* 0A9C00 800A9000 8E420000 */ lw $v0, ($s2) -/* 0A9C04 800A9004 24040001 */ li $a0, 1 -/* 0A9C08 800A9008 C4480370 */ lwc1 $f8, 0x370($v0) -/* 0A9C0C 800A900C 00000000 */ nop -/* 0A9C10 800A9010 46024401 */ sub.s $f16, $f8, $f2 -/* 0A9C14 800A9014 E4500370 */ swc1 $f16, 0x370($v0) -/* 0A9C18 800A9018 8E420000 */ lw $v0, ($s2) -/* 0A9C1C 800A901C 00000000 */ nop -/* 0A9C20 800A9020 C44400EC */ lwc1 $f4, 0xec($v0) -/* 0A9C24 800A9024 00000000 */ nop -/* 0A9C28 800A9028 46002181 */ sub.s $f6, $f4, $f0 -/* 0A9C2C 800A902C E44600EC */ swc1 $f6, 0xec($v0) -/* 0A9C30 800A9030 8E420000 */ lw $v0, ($s2) -/* 0A9C34 800A9034 00000000 */ nop -/* 0A9C38 800A9038 C44A00F0 */ lwc1 $f10, 0xf0($v0) -/* 0A9C3C 800A903C 00000000 */ nop -/* 0A9C40 800A9040 46025481 */ sub.s $f18, $f10, $f2 -/* 0A9C44 800A9044 E45200F0 */ swc1 $f18, 0xf0($v0) -/* 0A9C48 800A9048 8E420000 */ lw $v0, ($s2) -/* 0A9C4C 800A904C 00000000 */ nop -/* 0A9C50 800A9050 C448038C */ lwc1 $f8, 0x38c($v0) -/* 0A9C54 800A9054 00000000 */ nop -/* 0A9C58 800A9058 46004401 */ sub.s $f16, $f8, $f0 -/* 0A9C5C 800A905C E450038C */ swc1 $f16, 0x38c($v0) -/* 0A9C60 800A9060 8E420000 */ lw $v0, ($s2) -/* 0A9C64 800A9064 00000000 */ nop -/* 0A9C68 800A9068 C4440390 */ lwc1 $f4, 0x390($v0) -/* 0A9C6C 800A906C 00000000 */ nop -/* 0A9C70 800A9070 46022181 */ sub.s $f6, $f4, $f2 -/* 0A9C74 800A9074 E4460390 */ swc1 $f6, 0x390($v0) -/* 0A9C78 800A9078 8E420000 */ lw $v0, ($s2) -/* 0A9C7C 800A907C 00000000 */ nop -/* 0A9C80 800A9080 C44A010C */ lwc1 $f10, 0x10c($v0) -/* 0A9C84 800A9084 00000000 */ nop -/* 0A9C88 800A9088 46005481 */ sub.s $f18, $f10, $f0 -/* 0A9C8C 800A908C E452010C */ swc1 $f18, 0x10c($v0) -/* 0A9C90 800A9090 8E420000 */ lw $v0, ($s2) -/* 0A9C94 800A9094 00000000 */ nop -/* 0A9C98 800A9098 C4480110 */ lwc1 $f8, 0x110($v0) -/* 0A9C9C 800A909C 00000000 */ nop -/* 0A9CA0 800A90A0 460E4400 */ add.s $f16, $f8, $f14 -/* 0A9CA4 800A90A4 E4500110 */ swc1 $f16, 0x110($v0) -/* 0A9CA8 800A90A8 8E420000 */ lw $v0, ($s2) -/* 0A9CAC 800A90AC 00000000 */ nop -/* 0A9CB0 800A90B0 C444012C */ lwc1 $f4, 0x12c($v0) -/* 0A9CB4 800A90B4 00000000 */ nop -/* 0A9CB8 800A90B8 46002181 */ sub.s $f6, $f4, $f0 -/* 0A9CBC 800A90BC E446012C */ swc1 $f6, 0x12c($v0) -/* 0A9CC0 800A90C0 8E420000 */ lw $v0, ($s2) -/* 0A9CC4 800A90C4 00000000 */ nop -/* 0A9CC8 800A90C8 C44A0130 */ lwc1 $f10, 0x130($v0) -/* 0A9CCC 800A90CC 00000000 */ nop -/* 0A9CD0 800A90D0 460E5480 */ add.s $f18, $f10, $f14 -/* 0A9CD4 800A90D4 E4520130 */ swc1 $f18, 0x130($v0) -/* 0A9CD8 800A90D8 8E420000 */ lw $v0, ($s2) -/* 0A9CDC 800A90DC 00000000 */ nop -/* 0A9CE0 800A90E0 C448024C */ lwc1 $f8, 0x24c($v0) -/* 0A9CE4 800A90E4 00000000 */ nop -/* 0A9CE8 800A90E8 46004401 */ sub.s $f16, $f8, $f0 -/* 0A9CEC 800A90EC E450024C */ swc1 $f16, 0x24c($v0) -/* 0A9CF0 800A90F0 8E420000 */ lw $v0, ($s2) -/* 0A9CF4 800A90F4 00000000 */ nop -/* 0A9CF8 800A90F8 C4440250 */ lwc1 $f4, 0x250($v0) -/* 0A9CFC 800A90FC 00000000 */ nop -/* 0A9D00 800A9100 46022180 */ add.s $f6, $f4, $f2 -/* 0A9D04 800A9104 E4460250 */ swc1 $f6, 0x250($v0) -/* 0A9D08 800A9108 8FB900E4 */ lw $t9, 0xe4($sp) -/* 0A9D0C 800A910C 8E4A0000 */ lw $t2, ($s2) -/* 0A9D10 800A9110 44995000 */ mtc1 $t9, $f10 -/* 0A9D14 800A9114 00000000 */ nop -/* 0A9D18 800A9118 468054A0 */ cvt.s.w $f18, $f10 -/* 0A9D1C 800A911C E552064C */ swc1 $f18, 0x64c($t2) -/* 0A9D20 800A9120 8FAB00E0 */ lw $t3, 0xe0($sp) -/* 0A9D24 800A9124 8E4C0000 */ lw $t4, ($s2) -/* 0A9D28 800A9128 448B4000 */ mtc1 $t3, $f8 -/* 0A9D2C 800A912C 00000000 */ nop -/* 0A9D30 800A9130 46804420 */ cvt.s.w $f16, $f8 -/* 0A9D34 800A9134 0C01EFC7 */ jal func_8007BF1C -/* 0A9D38 800A9138 E5900650 */ swc1 $f16, 0x650($t4) -/* 0A9D3C 800A913C 0C01ECF4 */ jal func_8007B3D0 -/* 0A9D40 800A9140 02802025 */ move $a0, $s4 -/* 0A9D44 800A9144 0C01A142 */ jal func_80068508 -/* 0A9D48 800A9148 00002025 */ move $a0, $zero -.L800A914C: -/* 0A9D4C 800A914C 10000159 */ b .L800A96B4 -/* 0A9D50 800A9150 00000000 */ nop -/* 0A9D54 800A9154 24010041 */ li $at, 65 -.L800A9158: -/* 0A9D58 800A9158 14610156 */ bne $v1, $at, .L800A96B4 -/* 0A9D5C 800A915C 3C038012 */ lui $v1, %hi(D_80126D37) # $v1, 0x8012 -/* 0A9D60 800A9160 90636D37 */ lbu $v1, %lo(D_80126D37)($v1) -/* 0A9D64 800A9164 24010002 */ li $at, 2 -/* 0A9D68 800A9168 1461007C */ bne $v1, $at, .L800A935C -/* 0A9D6C 800A916C 3C0D8012 */ lui $t5, %hi(D_80126D0C) # $t5, 0x8012 -/* 0A9D70 800A9170 8DAD6D0C */ lw $t5, %lo(D_80126D0C)($t5) -/* 0A9D74 800A9174 3C0E800E */ lui $t6, 0x800e -/* 0A9D78 800A9178 01CD7021 */ addu $t6, $t6, $t5 -/* 0A9D7C 800A917C 81CE27A4 */ lb $t6, 0x27a4($t6) -/* 0A9D80 800A9180 3C128012 */ lui $s2, %hi(D_80126CDC) # $s2, 0x8012 -/* 0A9D84 800A9184 15C00075 */ bnez $t6, .L800A935C -/* 0A9D88 800A9188 26526CDC */ addiu $s2, %lo(D_80126CDC) # addiu $s2, $s2, 0x6cdc -/* 0A9D8C 800A918C 444FF800 */ cfc1 $t7, $31 -/* 0A9D90 800A9190 8E420000 */ lw $v0, ($s2) -/* 0A9D94 800A9194 35E10003 */ ori $at, $t7, 3 -/* 0A9D98 800A9198 38210002 */ xori $at, $at, 2 -/* 0A9D9C 800A919C 44C1F800 */ ctc1 $at, $31 -/* 0A9DA0 800A91A0 C444064C */ lwc1 $f4, 0x64c($v0) -/* 0A9DA4 800A91A4 C44A0650 */ lwc1 $f10, 0x650($v0) -/* 0A9DA8 800A91A8 460021A4 */ cvt.w.s $f6, $f4 -/* 0A9DAC 800A91AC C448040C */ lwc1 $f8, 0x40c($v0) -/* 0A9DB0 800A91B0 44CFF800 */ ctc1 $t7, $31 -/* 0A9DB4 800A91B4 C4440410 */ lwc1 $f4, 0x410($v0) -/* 0A9DB8 800A91B8 44103000 */ mfc1 $s0, $f6 -/* 0A9DBC 800A91BC 4458F800 */ cfc1 $t8, $31 -/* 0A9DC0 800A91C0 27A400CC */ addiu $a0, $sp, 0xcc -/* 0A9DC4 800A91C4 37010003 */ ori $at, $t8, 3 -/* 0A9DC8 800A91C8 38210002 */ xori $at, $at, 2 -/* 0A9DCC 800A91CC 44C1F800 */ ctc1 $at, $31 -/* 0A9DD0 800A91D0 00000000 */ nop -/* 0A9DD4 800A91D4 460054A4 */ cvt.w.s $f18, $f10 -/* 0A9DD8 800A91D8 44D8F800 */ ctc1 $t8, $31 -/* 0A9DDC 800A91DC 44119000 */ mfc1 $s1, $f18 -/* 0A9DE0 800A91E0 00000000 */ nop -/* 0A9DE4 800A91E4 4459F800 */ cfc1 $t9, $31 -/* 0A9DE8 800A91E8 00000000 */ nop -/* 0A9DEC 800A91EC 37210003 */ ori $at, $t9, 3 -/* 0A9DF0 800A91F0 38210002 */ xori $at, $at, 2 -/* 0A9DF4 800A91F4 44C1F800 */ ctc1 $at, $31 -/* 0A9DF8 800A91F8 00000000 */ nop -/* 0A9DFC 800A91FC 46004424 */ cvt.w.s $f16, $f8 -/* 0A9E00 800A9200 44D9F800 */ ctc1 $t9, $31 -/* 0A9E04 800A9204 44138000 */ mfc1 $s3, $f16 -/* 0A9E08 800A9208 00000000 */ nop -/* 0A9E0C 800A920C 444AF800 */ cfc1 $t2, $31 -/* 0A9E10 800A9210 00000000 */ nop -/* 0A9E14 800A9214 35410003 */ ori $at, $t2, 3 -/* 0A9E18 800A9218 38210002 */ xori $at, $at, 2 -/* 0A9E1C 800A921C 44C1F800 */ ctc1 $at, $31 -/* 0A9E20 800A9220 00000000 */ nop -/* 0A9E24 800A9224 460021A4 */ cvt.w.s $f6, $f4 -/* 0A9E28 800A9228 440B3000 */ mfc1 $t3, $f6 -/* 0A9E2C 800A922C 44CAF800 */ ctc1 $t2, $31 -/* 0A9E30 800A9230 0C006E9D */ jal func_8001BA74 -/* 0A9E34 800A9234 AFAB00BC */ sw $t3, 0xbc($sp) -/* 0A9E38 800A9238 8FAC00CC */ lw $t4, 0xcc($sp) -/* 0A9E3C 800A923C 00001825 */ move $v1, $zero -/* 0A9E40 800A9240 19800032 */ blez $t4, .L800A930C -/* 0A9E44 800A9244 00403025 */ move $a2, $v0 -.L800A9248: -/* 0A9E48 800A9248 8CCD0000 */ lw $t5, ($a2) -/* 0A9E4C 800A924C 00000000 */ nop -/* 0A9E50 800A9250 8DA40064 */ lw $a0, 0x64($t5) -/* 0A9E54 800A9254 AFA60054 */ sw $a2, 0x54($sp) -/* 0A9E58 800A9258 0C02917C */ jal func_800A45F0 -/* 0A9E5C 800A925C AFA300D0 */ sw $v1, 0xd0($sp) -/* 0A9E60 800A9260 3C01800F */ li $at, 0x800F0000 # -0.000000 -/* 0A9E64 800A9264 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 -/* 0A9E68 800A9268 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) -/* 0A9E6C 800A926C C42187B8 */ lwc1 $f1, %lo(D_800E87B8)($at) -/* 0A9E70 800A9270 C42087BC */ lwc1 $f0, %lo(D_800E87BC)($at) -/* 0A9E74 800A9274 8FA300D0 */ lw $v1, 0xd0($sp) -/* 0A9E78 800A9278 8FA60054 */ lw $a2, 0x54($sp) -/* 0A9E7C 800A927C 15C00012 */ bnez $t6, .L800A92C8 -/* 0A9E80 800A9280 3C01425C */ li $at, 0x425C0000 # 55.000000 -/* 0A9E84 800A9284 8E420000 */ lw $v0, ($s2) -/* 0A9E88 800A9288 00000000 */ nop -/* 0A9E8C 800A928C C44A0650 */ lwc1 $f10, 0x650($v0) -/* 0A9E90 800A9290 00000000 */ nop -/* 0A9E94 800A9294 460054A1 */ cvt.d.s $f18, $f10 -/* 0A9E98 800A9298 46209200 */ add.d $f8, $f18, $f0 -/* 0A9E9C 800A929C 46204420 */ cvt.s.d $f16, $f8 -/* 0A9EA0 800A92A0 E4500650 */ swc1 $f16, 0x650($v0) -/* 0A9EA4 800A92A4 8E420000 */ lw $v0, ($s2) -/* 0A9EA8 800A92A8 00000000 */ nop -/* 0A9EAC 800A92AC C4440410 */ lwc1 $f4, 0x410($v0) -/* 0A9EB0 800A92B0 00000000 */ nop -/* 0A9EB4 800A92B4 460021A1 */ cvt.d.s $f6, $f4 -/* 0A9EB8 800A92B8 46203280 */ add.d $f10, $f6, $f0 -/* 0A9EBC 800A92BC 462054A0 */ cvt.s.d $f18, $f10 -/* 0A9EC0 800A92C0 1000000D */ b .L800A92F8 -/* 0A9EC4 800A92C4 E4520410 */ swc1 $f18, 0x410($v0) -.L800A92C8: -/* 0A9EC8 800A92C8 8E420000 */ lw $v0, ($s2) -/* 0A9ECC 800A92CC 44818000 */ mtc1 $at, $f16 -/* 0A9ED0 800A92D0 C4480650 */ lwc1 $f8, 0x650($v0) -/* 0A9ED4 800A92D4 44815000 */ mtc1 $at, $f10 -/* 0A9ED8 800A92D8 46104100 */ add.s $f4, $f8, $f16 -/* 0A9EDC 800A92DC E4440650 */ swc1 $f4, 0x650($v0) -/* 0A9EE0 800A92E0 8E420000 */ lw $v0, ($s2) -/* 0A9EE4 800A92E4 00000000 */ nop -/* 0A9EE8 800A92E8 C4460410 */ lwc1 $f6, 0x410($v0) -/* 0A9EEC 800A92EC 00000000 */ nop -/* 0A9EF0 800A92F0 460A3480 */ add.s $f18, $f6, $f10 -/* 0A9EF4 800A92F4 E4520410 */ swc1 $f18, 0x410($v0) -.L800A92F8: -/* 0A9EF8 800A92F8 8FAF00CC */ lw $t7, 0xcc($sp) -/* 0A9EFC 800A92FC 24630001 */ addiu $v1, $v1, 1 -/* 0A9F00 800A9300 006F082A */ slt $at, $v1, $t7 -/* 0A9F04 800A9304 1420FFD0 */ bnez $at, .L800A9248 -/* 0A9F08 800A9308 24C60004 */ addiu $a2, $a2, 4 -.L800A930C: -/* 0A9F0C 800A930C 44904000 */ mtc1 $s0, $f8 -/* 0A9F10 800A9310 8E580000 */ lw $t8, ($s2) -/* 0A9F14 800A9314 46804420 */ cvt.s.w $f16, $f8 -/* 0A9F18 800A9318 44912000 */ mtc1 $s1, $f4 -/* 0A9F1C 800A931C 44935000 */ mtc1 $s3, $f10 -/* 0A9F20 800A9320 468021A0 */ cvt.s.w $f6, $f4 -/* 0A9F24 800A9324 E710064C */ swc1 $f16, 0x64c($t8) -/* 0A9F28 800A9328 8E590000 */ lw $t9, ($s2) -/* 0A9F2C 800A932C 468054A0 */ cvt.s.w $f18, $f10 -/* 0A9F30 800A9330 E7260650 */ swc1 $f6, 0x650($t9) -/* 0A9F34 800A9334 8E4A0000 */ lw $t2, ($s2) -/* 0A9F38 800A9338 00000000 */ nop -/* 0A9F3C 800A933C E552040C */ swc1 $f18, 0x40c($t2) -/* 0A9F40 800A9340 8FAB00BC */ lw $t3, 0xbc($sp) -/* 0A9F44 800A9344 8E4C0000 */ lw $t4, ($s2) -/* 0A9F48 800A9348 448B4000 */ mtc1 $t3, $f8 -/* 0A9F4C 800A934C 00000000 */ nop -/* 0A9F50 800A9350 46804420 */ cvt.s.w $f16, $f8 -/* 0A9F54 800A9354 100000D7 */ b .L800A96B4 -/* 0A9F58 800A9358 E5900410 */ swc1 $f16, 0x410($t4) -.L800A935C: -/* 0A9F5C 800A935C 24010003 */ li $at, 3 -/* 0A9F60 800A9360 146100D4 */ bne $v1, $at, .L800A96B4 -/* 0A9F64 800A9364 00000000 */ nop -/* 0A9F68 800A9368 8FAD0140 */ lw $t5, 0x140($sp) -/* 0A9F6C 800A936C 00003025 */ move $a2, $zero -/* 0A9F70 800A9370 19A00042 */ blez $t5, .L800A947C -/* 0A9F74 800A9374 00002825 */ move $a1, $zero -/* 0A9F78 800A9378 31A80003 */ andi $t0, $t5, 3 -/* 0A9F7C 800A937C 11000013 */ beqz $t0, .L800A93CC -/* 0A9F80 800A9380 01003825 */ move $a3, $t0 -/* 0A9F84 800A9384 00007080 */ sll $t6, $zero, 2 -/* 0A9F88 800A9388 004E2021 */ addu $a0, $v0, $t6 -/* 0A9F8C 800A938C 2413FFFF */ li $s3, -1 -.L800A9390: -/* 0A9F90 800A9390 8C8F0000 */ lw $t7, ($a0) -/* 0A9F94 800A9394 24A50001 */ addiu $a1, $a1, 1 -/* 0A9F98 800A9398 8DE30064 */ lw $v1, 0x64($t7) -/* 0A9F9C 800A939C 00000000 */ nop -/* 0A9FA0 800A93A0 84780000 */ lh $t8, ($v1) -/* 0A9FA4 800A93A4 00000000 */ nop -/* 0A9FA8 800A93A8 16780002 */ bne $s3, $t8, .L800A93B4 -/* 0A9FAC 800A93AC 00000000 */ nop -/* 0A9FB0 800A93B0 00603025 */ move $a2, $v1 -.L800A93B4: -/* 0A9FB4 800A93B4 14E5FFF6 */ bne $a3, $a1, .L800A9390 -/* 0A9FB8 800A93B8 24840004 */ addiu $a0, $a0, 4 -/* 0A9FBC 800A93BC 8FB90140 */ lw $t9, 0x140($sp) -/* 0A9FC0 800A93C0 00000000 */ nop -/* 0A9FC4 800A93C4 10B9002D */ beq $a1, $t9, .L800A947C -/* 0A9FC8 800A93C8 00000000 */ nop -.L800A93CC: -/* 0A9FCC 800A93CC 8FAA0140 */ lw $t2, 0x140($sp) -/* 0A9FD0 800A93D0 00056080 */ sll $t4, $a1, 2 -/* 0A9FD4 800A93D4 000A5880 */ sll $t3, $t2, 2 -/* 0A9FD8 800A93D8 01623821 */ addu $a3, $t3, $v0 -/* 0A9FDC 800A93DC 004C2021 */ addu $a0, $v0, $t4 -/* 0A9FE0 800A93E0 2413FFFF */ li $s3, -1 -.L800A93E4: -/* 0A9FE4 800A93E4 8C8D0000 */ lw $t5, ($a0) -/* 0A9FE8 800A93E8 00000000 */ nop -/* 0A9FEC 800A93EC 8DA30064 */ lw $v1, 0x64($t5) -/* 0A9FF0 800A93F0 00000000 */ nop -/* 0A9FF4 800A93F4 846E0000 */ lh $t6, ($v1) -/* 0A9FF8 800A93F8 00000000 */ nop -/* 0A9FFC 800A93FC 166E0002 */ bne $s3, $t6, .L800A9408 -/* 0AA000 800A9400 00000000 */ nop -/* 0AA004 800A9404 00603025 */ move $a2, $v1 -.L800A9408: -/* 0AA008 800A9408 8C8F0004 */ lw $t7, 4($a0) -/* 0AA00C 800A940C 00000000 */ nop -/* 0AA010 800A9410 8DE30064 */ lw $v1, 0x64($t7) -/* 0AA014 800A9414 00000000 */ nop -/* 0AA018 800A9418 84780000 */ lh $t8, ($v1) -/* 0AA01C 800A941C 00000000 */ nop -/* 0AA020 800A9420 16780002 */ bne $s3, $t8, .L800A942C -/* 0AA024 800A9424 00000000 */ nop -/* 0AA028 800A9428 00603025 */ move $a2, $v1 -.L800A942C: -/* 0AA02C 800A942C 8C990008 */ lw $t9, 8($a0) -/* 0AA030 800A9430 00000000 */ nop -/* 0AA034 800A9434 8F230064 */ lw $v1, 0x64($t9) -/* 0AA038 800A9438 00000000 */ nop -/* 0AA03C 800A943C 846A0000 */ lh $t2, ($v1) -/* 0AA040 800A9440 00000000 */ nop -/* 0AA044 800A9444 166A0002 */ bne $s3, $t2, .L800A9450 -/* 0AA048 800A9448 00000000 */ nop -/* 0AA04C 800A944C 00603025 */ move $a2, $v1 -.L800A9450: -/* 0AA050 800A9450 8C8B000C */ lw $t3, 0xc($a0) -/* 0AA054 800A9454 24840010 */ addiu $a0, $a0, 0x10 -/* 0AA058 800A9458 8D630064 */ lw $v1, 0x64($t3) -/* 0AA05C 800A945C 00000000 */ nop -/* 0AA060 800A9460 846C0000 */ lh $t4, ($v1) -/* 0AA064 800A9464 00000000 */ nop -/* 0AA068 800A9468 166C0002 */ bne $s3, $t4, .L800A9474 -/* 0AA06C 800A946C 00000000 */ nop -/* 0AA070 800A9470 00603025 */ move $a2, $v1 -.L800A9474: -/* 0AA074 800A9474 1487FFDB */ bne $a0, $a3, .L800A93E4 -/* 0AA078 800A9478 00000000 */ nop -.L800A947C: -/* 0AA07C 800A947C 10C0008D */ beqz $a2, .L800A96B4 -/* 0AA080 800A9480 3C128012 */ lui $s2, %hi(D_80126CDC) # $s2, 0x8012 -/* 0AA084 800A9484 444DF800 */ cfc1 $t5, $31 -/* 0AA088 800A9488 26526CDC */ addiu $s2, %lo(D_80126CDC) # addiu $s2, $s2, 0x6cdc -/* 0AA08C 800A948C 8E420000 */ lw $v0, ($s2) -/* 0AA090 800A9490 35A10003 */ ori $at, $t5, 3 -/* 0AA094 800A9494 38210002 */ xori $at, $at, 2 -/* 0AA098 800A9498 44C1F800 */ ctc1 $at, $31 -/* 0AA09C 800A949C C444064C */ lwc1 $f4, 0x64c($v0) -/* 0AA0A0 800A94A0 C44A0650 */ lwc1 $f10, 0x650($v0) -/* 0AA0A4 800A94A4 460021A4 */ cvt.w.s $f6, $f4 -/* 0AA0A8 800A94A8 C448040C */ lwc1 $f8, 0x40c($v0) -/* 0AA0AC 800A94AC 44CDF800 */ ctc1 $t5, $31 -/* 0AA0B0 800A94B0 C4440410 */ lwc1 $f4, 0x410($v0) -/* 0AA0B4 800A94B4 44103000 */ mfc1 $s0, $f6 -/* 0AA0B8 800A94B8 444EF800 */ cfc1 $t6, $31 -/* 0AA0BC 800A94BC 3C0C8000 */ lui $t4, %hi(D_80000300) # $t4, 0x8000 -/* 0AA0C0 800A94C0 35C10003 */ ori $at, $t6, 3 -/* 0AA0C4 800A94C4 38210002 */ xori $at, $at, 2 -/* 0AA0C8 800A94C8 44C1F800 */ ctc1 $at, $31 -/* 0AA0CC 800A94CC 00C02025 */ move $a0, $a2 -/* 0AA0D0 800A94D0 460054A4 */ cvt.w.s $f18, $f10 -/* 0AA0D4 800A94D4 44CEF800 */ ctc1 $t6, $31 -/* 0AA0D8 800A94D8 44119000 */ mfc1 $s1, $f18 -/* 0AA0DC 800A94DC 00000000 */ nop -/* 0AA0E0 800A94E0 444FF800 */ cfc1 $t7, $31 -/* 0AA0E4 800A94E4 00000000 */ nop -/* 0AA0E8 800A94E8 35E10003 */ ori $at, $t7, 3 -/* 0AA0EC 800A94EC 38210002 */ xori $at, $at, 2 -/* 0AA0F0 800A94F0 44C1F800 */ ctc1 $at, $31 -/* 0AA0F4 800A94F4 00000000 */ nop -/* 0AA0F8 800A94F8 46004424 */ cvt.w.s $f16, $f8 -/* 0AA0FC 800A94FC 44CFF800 */ ctc1 $t7, $31 -/* 0AA100 800A9500 44038000 */ mfc1 $v1, $f16 -/* 0AA104 800A9504 00000000 */ nop -/* 0AA108 800A9508 4458F800 */ cfc1 $t8, $31 -/* 0AA10C 800A950C 00000000 */ nop -/* 0AA110 800A9510 37010003 */ ori $at, $t8, 3 -/* 0AA114 800A9514 38210002 */ xori $at, $at, 2 -/* 0AA118 800A9518 44C1F800 */ ctc1 $at, $31 -/* 0AA11C 800A951C 3C014361 */ li $at, 0x43610000 # 225.000000 -/* 0AA120 800A9520 44815000 */ mtc1 $at, $f10 -/* 0AA124 800A9524 3C014325 */ li $at, 0x43250000 # 165.000000 -/* 0AA128 800A9528 E44A064C */ swc1 $f10, 0x64c($v0) -/* 0AA12C 800A952C 8E590000 */ lw $t9, ($s2) -/* 0AA130 800A9530 44819000 */ mtc1 $at, $f18 -/* 0AA134 800A9534 3C014351 */ li $at, 0x43510000 # 209.000000 -/* 0AA138 800A9538 E7320650 */ swc1 $f18, 0x650($t9) -/* 0AA13C 800A953C 8E4A0000 */ lw $t2, ($s2) -/* 0AA140 800A9540 44814000 */ mtc1 $at, $f8 -/* 0AA144 800A9544 3C014341 */ li $at, 0x43410000 # 193.000000 -/* 0AA148 800A9548 E548040C */ swc1 $f8, 0x40c($t2) -/* 0AA14C 800A954C 8E4B0000 */ lw $t3, ($s2) -/* 0AA150 800A9550 44818000 */ mtc1 $at, $f16 -/* 0AA154 800A9554 460021A4 */ cvt.w.s $f6, $f4 -/* 0AA158 800A9558 E5700410 */ swc1 $f16, 0x410($t3) -/* 0AA15C 800A955C 8D8C0300 */ lw $t4, %lo(D_80000300)($t4) -/* 0AA160 800A9560 44053000 */ mfc1 $a1, $f6 -/* 0AA164 800A9564 44D8F800 */ ctc1 $t8, $31 -/* 0AA168 800A9568 1580003C */ bnez $t4, .L800A965C -/* 0AA16C 800A956C 3C01800F */ li $at, 0x800F0000 # -0.000000 -/* 0AA170 800A9570 C42187C0 */ lwc1 $f1, %lo(D_800E87C0)($at) -/* 0AA174 800A9574 C42087C4 */ lwc1 $f0, %lo(D_800E87C4)($at) -/* 0AA178 800A9578 8E420000 */ lw $v0, ($s2) -/* 0AA17C 800A957C 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 0AA180 800A9580 44813000 */ mtc1 $at, $f6 -/* 0AA184 800A9584 C444064C */ lwc1 $f4, 0x64c($v0) -/* 0AA188 800A9588 44814000 */ mtc1 $at, $f8 -/* 0AA18C 800A958C 46062281 */ sub.s $f10, $f4, $f6 -/* 0AA190 800A9590 E44A064C */ swc1 $f10, 0x64c($v0) -/* 0AA194 800A9594 8E420000 */ lw $v0, ($s2) -/* 0AA198 800A9598 00000000 */ nop -/* 0AA19C 800A959C C452040C */ lwc1 $f18, 0x40c($v0) -/* 0AA1A0 800A95A0 00000000 */ nop -/* 0AA1A4 800A95A4 46089401 */ sub.s $f16, $f18, $f8 -/* 0AA1A8 800A95A8 E450040C */ swc1 $f16, 0x40c($v0) -/* 0AA1AC 800A95AC 8E420000 */ lw $v0, ($s2) -/* 0AA1B0 800A95B0 00000000 */ nop -/* 0AA1B4 800A95B4 C4440650 */ lwc1 $f4, 0x650($v0) -/* 0AA1B8 800A95B8 00000000 */ nop -/* 0AA1BC 800A95BC 460021A1 */ cvt.d.s $f6, $f4 -/* 0AA1C0 800A95C0 46203282 */ mul.d $f10, $f6, $f0 -/* 0AA1C4 800A95C4 462054A0 */ cvt.s.d $f18, $f10 -/* 0AA1C8 800A95C8 E4520650 */ swc1 $f18, 0x650($v0) -/* 0AA1CC 800A95CC 8E420000 */ lw $v0, ($s2) -/* 0AA1D0 800A95D0 00000000 */ nop -/* 0AA1D4 800A95D4 C4480410 */ lwc1 $f8, 0x410($v0) -/* 0AA1D8 800A95D8 00000000 */ nop -/* 0AA1DC 800A95DC 46004421 */ cvt.d.s $f16, $f8 -/* 0AA1E0 800A95E0 46208102 */ mul.d $f4, $f16, $f0 -/* 0AA1E4 800A95E4 462021A0 */ cvt.s.d $f6, $f4 -/* 0AA1E8 800A95E8 444DF800 */ cfc1 $t5, $31 -/* 0AA1EC 800A95EC E4460410 */ swc1 $f6, 0x410($v0) -/* 0AA1F0 800A95F0 8E420000 */ lw $v0, ($s2) -/* 0AA1F4 800A95F4 35A10003 */ ori $at, $t5, 3 -/* 0AA1F8 800A95F8 38210002 */ xori $at, $at, 2 -/* 0AA1FC 800A95FC 44C1F800 */ ctc1 $at, $31 -/* 0AA200 800A9600 C44A0650 */ lwc1 $f10, 0x650($v0) -/* 0AA204 800A9604 00000000 */ nop -/* 0AA208 800A9608 460054A4 */ cvt.w.s $f18, $f10 -/* 0AA20C 800A960C 440E9000 */ mfc1 $t6, $f18 -/* 0AA210 800A9610 44CDF800 */ ctc1 $t5, $31 -/* 0AA214 800A9614 448E4000 */ mtc1 $t6, $f8 -/* 0AA218 800A9618 00000000 */ nop -/* 0AA21C 800A961C 46804420 */ cvt.s.w $f16, $f8 -/* 0AA220 800A9620 444FF800 */ cfc1 $t7, $31 -/* 0AA224 800A9624 E4500650 */ swc1 $f16, 0x650($v0) -/* 0AA228 800A9628 8E420000 */ lw $v0, ($s2) -/* 0AA22C 800A962C 35E10003 */ ori $at, $t7, 3 -/* 0AA230 800A9630 38210002 */ xori $at, $at, 2 -/* 0AA234 800A9634 44C1F800 */ ctc1 $at, $31 -/* 0AA238 800A9638 C4440410 */ lwc1 $f4, 0x410($v0) -/* 0AA23C 800A963C 00000000 */ nop -/* 0AA240 800A9640 460021A4 */ cvt.w.s $f6, $f4 -/* 0AA244 800A9644 44183000 */ mfc1 $t8, $f6 -/* 0AA248 800A9648 44CFF800 */ ctc1 $t7, $31 -/* 0AA24C 800A964C 44985000 */ mtc1 $t8, $f10 -/* 0AA250 800A9650 00000000 */ nop -/* 0AA254 800A9654 468054A0 */ cvt.s.w $f18, $f10 -/* 0AA258 800A9658 E4520410 */ swc1 $f18, 0x410($v0) -.L800A965C: -/* 0AA25C 800A965C AFA300A8 */ sw $v1, 0xa8($sp) -/* 0AA260 800A9660 0C02917C */ jal func_800A45F0 -/* 0AA264 800A9664 AFA500A4 */ sw $a1, 0xa4($sp) -/* 0AA268 800A9668 44904000 */ mtc1 $s0, $f8 -/* 0AA26C 800A966C 8FA300A8 */ lw $v1, 0xa8($sp) -/* 0AA270 800A9670 46804420 */ cvt.s.w $f16, $f8 -/* 0AA274 800A9674 8E590000 */ lw $t9, ($s2) -/* 0AA278 800A9678 44912000 */ mtc1 $s1, $f4 -/* 0AA27C 800A967C 8FA500A4 */ lw $a1, 0xa4($sp) -/* 0AA280 800A9680 468021A0 */ cvt.s.w $f6, $f4 -/* 0AA284 800A9684 E730064C */ swc1 $f16, 0x64c($t9) -/* 0AA288 800A9688 8E4A0000 */ lw $t2, ($s2) -/* 0AA28C 800A968C 44835000 */ mtc1 $v1, $f10 -/* 0AA290 800A9690 E5460650 */ swc1 $f6, 0x650($t2) -/* 0AA294 800A9694 468054A0 */ cvt.s.w $f18, $f10 -/* 0AA298 800A9698 8E4B0000 */ lw $t3, ($s2) -/* 0AA29C 800A969C 44854000 */ mtc1 $a1, $f8 -/* 0AA2A0 800A96A0 E572040C */ swc1 $f18, 0x40c($t3) -/* 0AA2A4 800A96A4 46804420 */ cvt.s.w $f16, $f8 -/* 0AA2A8 800A96A8 8E4C0000 */ lw $t4, ($s2) -/* 0AA2AC 800A96AC 00000000 */ nop -/* 0AA2B0 800A96B0 E5900410 */ swc1 $f16, 0x410($t4) -.L800A96B4: -/* 0AA2B4 800A96B4 3C028012 */ lui $v0, %hi(D_80127180) # $v0, 0x8012 -/* 0AA2B8 800A96B8 8C427180 */ lw $v0, %lo(D_80127180)($v0) -/* 0AA2BC 800A96BC 3C128012 */ lui $s2, %hi(D_80126CDC) # $s2, 0x8012 -/* 0AA2C0 800A96C0 26526CDC */ addiu $s2, %lo(D_80126CDC) # addiu $s2, $s2, 0x6cdc -/* 0AA2C4 800A96C4 10400012 */ beqz $v0, .L800A9710 -/* 0AA2C8 800A96C8 2413FFFF */ li $s3, -1 -/* 0AA2CC 800A96CC 3C058012 */ lui $a1, %hi(D_80126D80) # $a1, 0x8012 -/* 0AA2D0 800A96D0 24A56D80 */ addiu $a1, %lo(D_80126D80) # addiu $a1, $a1, 0x6d80 -/* 0AA2D4 800A96D4 000268C0 */ sll $t5, $v0, 3 -/* 0AA2D8 800A96D8 00AD7021 */ addu $t6, $a1, $t5 -/* 0AA2DC 800A96DC ADC00000 */ sw $zero, ($t6) -/* 0AA2E0 800A96E0 240F00FF */ li $t7, 255 -/* 0AA2E4 800A96E4 241800FF */ li $t8, 255 -/* 0AA2E8 800A96E8 241900FF */ li $t9, 255 -/* 0AA2EC 800A96EC 240A00FF */ li $t2, 255 -/* 0AA2F0 800A96F0 AFAA001C */ sw $t2, 0x1c($sp) -/* 0AA2F4 800A96F4 AFB90018 */ sw $t9, 0x18($sp) -/* 0AA2F8 800A96F8 AFB80014 */ sw $t8, 0x14($sp) -/* 0AA2FC 800A96FC AFAF0010 */ sw $t7, 0x10($sp) -/* 0AA300 800A9700 02802025 */ move $a0, $s4 -/* 0AA304 800A9704 00003025 */ move $a2, $zero -/* 0AA308 800A9708 0C01E2AE */ jal func_80078AB8 -/* 0AA30C 800A970C 00003825 */ move $a3, $zero -.L800A9710: -/* 0AA310 800A9710 8E8B0000 */ lw $t3, ($s4) -/* 0AA314 800A9714 8FAC0160 */ lw $t4, 0x160($sp) -/* 0AA318 800A9718 3C0D8012 */ lui $t5, %hi(D_80126D00) # $t5, 0x8012 -/* 0AA31C 800A971C AD8B0000 */ sw $t3, ($t4) -/* 0AA320 800A9720 8FAE0164 */ lw $t6, 0x164($sp) -/* 0AA324 800A9724 8DAD6D00 */ lw $t5, %lo(D_80126D00)($t5) -/* 0AA328 800A9728 3C0F8012 */ lui $t7, %hi(D_80126D04) # $t7, 0x8012 -/* 0AA32C 800A972C ADCD0000 */ sw $t5, ($t6) -/* 0AA330 800A9730 8FB80168 */ lw $t8, 0x168($sp) -/* 0AA334 800A9734 8DEF6D04 */ lw $t7, %lo(D_80126D04)($t7) -/* 0AA338 800A9738 3C198012 */ lui $t9, %hi(D_80126D60) # $t9, 0x8012 -/* 0AA33C 800A973C AF0F0000 */ sw $t7, ($t8) -/* 0AA340 800A9740 8F396D60 */ lw $t9, %lo(D_80126D60)($t9) -/* 0AA344 800A9744 00000000 */ nop -/* 0AA348 800A9748 932A00BC */ lbu $t2, 0xbc($t9) -/* 0AA34C 800A974C 00000000 */ nop -/* 0AA350 800A9750 314B0001 */ andi $t3, $t2, 1 -/* 0AA354 800A9754 1560031E */ bnez $t3, .L800AA3D0 -/* 0AA358 800A9758 8FBF003C */ lw $ra, 0x3c($sp) -/* 0AA35C 800A975C 8FAC0140 */ lw $t4, 0x140($sp) -/* 0AA360 800A9760 24040001 */ li $a0, 1 -/* 0AA364 800A9764 19800060 */ blez $t4, .L800A98E8 -/* 0AA368 800A9768 00001825 */ move $v1, $zero -/* 0AA36C 800A976C 31880003 */ andi $t0, $t4, 3 -/* 0AA370 800A9770 11000019 */ beqz $t0, .L800A97D8 -/* 0AA374 800A9774 01003025 */ move $a2, $t0 -/* 0AA378 800A9778 8FAD0150 */ lw $t5, 0x150($sp) -/* 0AA37C 800A977C 00007080 */ sll $t6, $zero, 2 -/* 0AA380 800A9780 01AE8021 */ addu $s0, $t5, $t6 -.L800A9784: -/* 0AA384 800A9784 8E0F0000 */ lw $t7, ($s0) -/* 0AA388 800A9788 24630001 */ addiu $v1, $v1, 1 -/* 0AA38C 800A978C 8DE20064 */ lw $v0, 0x64($t7) -/* 0AA390 800A9790 00000000 */ nop -/* 0AA394 800A9794 1040000A */ beqz $v0, .L800A97C0 -/* 0AA398 800A9798 00000000 */ nop -/* 0AA39C 800A979C 84580000 */ lh $t8, ($v0) -/* 0AA3A0 800A97A0 00000000 */ nop -/* 0AA3A4 800A97A4 12780006 */ beq $s3, $t8, .L800A97C0 -/* 0AA3A8 800A97A8 00000000 */ nop -/* 0AA3AC 800A97AC 805901D8 */ lb $t9, 0x1d8($v0) -/* 0AA3B0 800A97B0 00000000 */ nop -/* 0AA3B4 800A97B4 17200002 */ bnez $t9, .L800A97C0 -/* 0AA3B8 800A97B8 00000000 */ nop -/* 0AA3BC 800A97BC 00002025 */ move $a0, $zero -.L800A97C0: -/* 0AA3C0 800A97C0 14C3FFF0 */ bne $a2, $v1, .L800A9784 -/* 0AA3C4 800A97C4 26100004 */ addiu $s0, $s0, 4 -/* 0AA3C8 800A97C8 8FAA0140 */ lw $t2, 0x140($sp) -/* 0AA3CC 800A97CC 00000000 */ nop -/* 0AA3D0 800A97D0 106A0045 */ beq $v1, $t2, .L800A98E8 -/* 0AA3D4 800A97D4 00000000 */ nop -.L800A97D8: -/* 0AA3D8 800A97D8 8FA60140 */ lw $a2, 0x140($sp) -/* 0AA3DC 800A97DC 8FAB0150 */ lw $t3, 0x150($sp) -/* 0AA3E0 800A97E0 00038880 */ sll $s1, $v1, 2 -/* 0AA3E4 800A97E4 00066080 */ sll $t4, $a2, 2 -/* 0AA3E8 800A97E8 01803025 */ move $a2, $t4 -/* 0AA3EC 800A97EC 01718021 */ addu $s0, $t3, $s1 -.L800A97F0: -/* 0AA3F0 800A97F0 8E0D0000 */ lw $t5, ($s0) -/* 0AA3F4 800A97F4 26310010 */ addiu $s1, $s1, 0x10 -/* 0AA3F8 800A97F8 8DA20064 */ lw $v0, 0x64($t5) -/* 0AA3FC 800A97FC 00000000 */ nop -/* 0AA400 800A9800 1040000A */ beqz $v0, .L800A982C -/* 0AA404 800A9804 00000000 */ nop -/* 0AA408 800A9808 844E0000 */ lh $t6, ($v0) -/* 0AA40C 800A980C 00000000 */ nop -/* 0AA410 800A9810 126E0006 */ beq $s3, $t6, .L800A982C -/* 0AA414 800A9814 00000000 */ nop -/* 0AA418 800A9818 804F01D8 */ lb $t7, 0x1d8($v0) -/* 0AA41C 800A981C 00000000 */ nop -/* 0AA420 800A9820 15E00002 */ bnez $t7, .L800A982C -/* 0AA424 800A9824 00000000 */ nop -/* 0AA428 800A9828 00002025 */ move $a0, $zero -.L800A982C: -/* 0AA42C 800A982C 8E180004 */ lw $t8, 4($s0) -/* 0AA430 800A9830 00000000 */ nop -/* 0AA434 800A9834 8F050064 */ lw $a1, 0x64($t8) -/* 0AA438 800A9838 00000000 */ nop -/* 0AA43C 800A983C 10A0000A */ beqz $a1, .L800A9868 -/* 0AA440 800A9840 00000000 */ nop -/* 0AA444 800A9844 84B90000 */ lh $t9, ($a1) -/* 0AA448 800A9848 00000000 */ nop -/* 0AA44C 800A984C 12790006 */ beq $s3, $t9, .L800A9868 -/* 0AA450 800A9850 00000000 */ nop -/* 0AA454 800A9854 80AA01D8 */ lb $t2, 0x1d8($a1) -/* 0AA458 800A9858 00000000 */ nop -/* 0AA45C 800A985C 15400002 */ bnez $t2, .L800A9868 -/* 0AA460 800A9860 00000000 */ nop -/* 0AA464 800A9864 00002025 */ move $a0, $zero -.L800A9868: -/* 0AA468 800A9868 8E0B0008 */ lw $t3, 8($s0) -/* 0AA46C 800A986C 00000000 */ nop -/* 0AA470 800A9870 8D650064 */ lw $a1, 0x64($t3) -/* 0AA474 800A9874 00000000 */ nop -/* 0AA478 800A9878 10A0000A */ beqz $a1, .L800A98A4 -/* 0AA47C 800A987C 00000000 */ nop -/* 0AA480 800A9880 84AC0000 */ lh $t4, ($a1) -/* 0AA484 800A9884 00000000 */ nop -/* 0AA488 800A9888 126C0006 */ beq $s3, $t4, .L800A98A4 -/* 0AA48C 800A988C 00000000 */ nop -/* 0AA490 800A9890 80AD01D8 */ lb $t5, 0x1d8($a1) -/* 0AA494 800A9894 00000000 */ nop -/* 0AA498 800A9898 15A00002 */ bnez $t5, .L800A98A4 -/* 0AA49C 800A989C 00000000 */ nop -/* 0AA4A0 800A98A0 00002025 */ move $a0, $zero -.L800A98A4: -/* 0AA4A4 800A98A4 8E0E000C */ lw $t6, 0xc($s0) -/* 0AA4A8 800A98A8 00000000 */ nop -/* 0AA4AC 800A98AC 8DC50064 */ lw $a1, 0x64($t6) -/* 0AA4B0 800A98B0 00000000 */ nop -/* 0AA4B4 800A98B4 10A0000A */ beqz $a1, .L800A98E0 -/* 0AA4B8 800A98B8 00000000 */ nop -/* 0AA4BC 800A98BC 84AF0000 */ lh $t7, ($a1) -/* 0AA4C0 800A98C0 00000000 */ nop -/* 0AA4C4 800A98C4 126F0006 */ beq $s3, $t7, .L800A98E0 -/* 0AA4C8 800A98C8 00000000 */ nop -/* 0AA4CC 800A98CC 80B801D8 */ lb $t8, 0x1d8($a1) -/* 0AA4D0 800A98D0 00000000 */ nop -/* 0AA4D4 800A98D4 17000002 */ bnez $t8, .L800A98E0 -/* 0AA4D8 800A98D8 00000000 */ nop -/* 0AA4DC 800A98DC 00002025 */ move $a0, $zero -.L800A98E0: -/* 0AA4E0 800A98E0 1626FFC3 */ bne $s1, $a2, .L800A97F0 -/* 0AA4E4 800A98E4 26100010 */ addiu $s0, $s0, 0x10 -.L800A98E8: -/* 0AA4E8 800A98E8 3C198012 */ lui $t9, %hi(D_80126D0C) # $t9, 0x8012 -/* 0AA4EC 800A98EC 8F396D0C */ lw $t9, %lo(D_80126D0C)($t9) -/* 0AA4F0 800A98F0 24010002 */ li $at, 2 -/* 0AA4F4 800A98F4 17210006 */ bne $t9, $at, .L800A9910 -/* 0AA4F8 800A98F8 00000000 */ nop -/* 0AA4FC 800A98FC 0C01BAAC */ jal func_8006EAB0 -/* 0AA500 800A9900 A3A40113 */ sb $a0, 0x113($sp) -/* 0AA504 800A9904 93A40113 */ lbu $a0, 0x113($sp) -/* 0AA508 800A9908 144002B1 */ bnez $v0, .L800AA3D0 -/* 0AA50C 800A990C 8FBF003C */ lw $ra, 0x3c($sp) -.L800A9910: -/* 0AA510 800A9910 0C019944 */ jal func_80066510 -/* 0AA514 800A9914 A3A40113 */ sb $a0, 0x113($sp) -/* 0AA518 800A9918 93A40113 */ lbu $a0, 0x113($sp) -/* 0AA51C 800A991C 144002AC */ bnez $v0, .L800AA3D0 -/* 0AA520 800A9920 8FBF003C */ lw $ra, 0x3c($sp) -/* 0AA524 800A9924 148002A9 */ bnez $a0, .L800AA3CC -/* 0AA528 800A9928 3C0A8012 */ lui $t2, %hi(D_80126D0C) # $t2, 0x8012 -/* 0AA52C 800A992C 8D4A6D0C */ lw $t2, %lo(D_80126D0C)($t2) -/* 0AA530 800A9930 3C0B800E */ lui $t3, 0x800e -/* 0AA534 800A9934 016A5821 */ addu $t3, $t3, $t2 -/* 0AA538 800A9938 816B27A4 */ lb $t3, 0x27a4($t3) -/* 0AA53C 800A993C 24010001 */ li $at, 1 -/* 0AA540 800A9940 11610003 */ beq $t3, $at, .L800A9950 -/* 0AA544 800A9944 00000000 */ nop -/* 0AA548 800A9948 100002A1 */ b .L800AA3D0 -/* 0AA54C 800A994C 8FBF003C */ lw $ra, 0x3c($sp) -.L800A9950: -/* 0AA550 800A9950 0C01ECF4 */ jal func_8007B3D0 -/* 0AA554 800A9954 02802025 */ move $a0, $s4 -/* 0AA558 800A9958 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0AA55C 800A995C 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0AA560 800A9960 0C019FCB */ jal func_80067F2C -/* 0AA564 800A9964 02802025 */ move $a0, $s4 -/* 0AA568 800A9968 0C00B1F1 */ jal func_8002C7C4 -/* 0AA56C 800A996C 00000000 */ nop -/* 0AA570 800A9970 10400296 */ beqz $v0, .L800AA3CC -/* 0AA574 800A9974 AFA20158 */ sw $v0, 0x158($sp) -/* 0AA578 800A9978 0C01A748 */ jal func_80069D20 -/* 0AA57C 800A997C 00000000 */ nop -/* 0AA580 800A9980 00408825 */ move $s1, $v0 -/* 0AA584 800A9984 0C01A142 */ jal func_80068508 -/* 0AA588 800A9988 24040001 */ li $a0, 1 -/* 0AA58C 800A998C 8FAC0158 */ lw $t4, 0x158($sp) -/* 0AA590 800A9990 3C028012 */ lui $v0, %hi(D_80126D0C) # $v0, 0x8012 -/* 0AA594 800A9994 8C426D0C */ lw $v0, %lo(D_80126D0C)($v0) -/* 0AA598 800A9998 8D8D0020 */ lw $t5, 0x20($t4) -/* 0AA59C 800A999C 24010001 */ li $at, 1 -/* 0AA5A0 800A99A0 1041000E */ beq $v0, $at, .L800A99DC -/* 0AA5A4 800A99A4 AFAD0154 */ sw $t5, 0x154($sp) -/* 0AA5A8 800A99A8 24010002 */ li $at, 2 -/* 0AA5AC 800A99AC 10410019 */ beq $v0, $at, .L800A9A14 -/* 0AA5B0 800A99B0 24010003 */ li $at, 3 -/* 0AA5B4 800A99B4 1041004E */ beq $v0, $at, .L800A9AF0 -/* 0AA5B8 800A99B8 3C108012 */ lui $s0, 0x8012 -/* 0AA5BC 800A99BC 3C108012 */ lui $s0, %hi(D_80126D5C) # $s0, 0x8012 -/* 0AA5C0 800A99C0 240E0087 */ li $t6, 135 -/* 0AA5C4 800A99C4 3C018012 */ lui $at, %hi(D_80126D58) # $at, 0x8012 -/* 0AA5C8 800A99C8 AC2E6D58 */ sw $t6, %lo(D_80126D58)($at) -/* 0AA5CC 800A99CC 26106D5C */ addiu $s0, %lo(D_80126D5C) # addiu $s0, $s0, 0x6d5c -/* 0AA5D0 800A99D0 240FFF9E */ li $t7, -98 -/* 0AA5D4 800A99D4 10000058 */ b .L800A9B38 -/* 0AA5D8 800A99D8 AE0F0000 */ sw $t7, ($s0) -.L800A99DC: -/* 0AA5DC 800A99DC 3C198012 */ lui $t9, %hi(D_80126D20) # $t9, 0x8012 -/* 0AA5E0 800A99E0 8F396D20 */ lw $t9, %lo(D_80126D20)($t9) -/* 0AA5E4 800A99E4 24180087 */ li $t8, 135 -/* 0AA5E8 800A99E8 3C018012 */ lui $at, %hi(D_80126D58) # $at, 0x8012 -/* 0AA5EC 800A99EC AC386D58 */ sw $t8, %lo(D_80126D58)($at) -/* 0AA5F0 800A99F0 00195023 */ negu $t2, $t9 -/* 0AA5F4 800A99F4 3C108012 */ lui $s0, %hi(D_80126D5C) # $s0, 0x8012 -/* 0AA5F8 800A99F8 26106D5C */ addiu $s0, %lo(D_80126D5C) # addiu $s0, $s0, 0x6d5c -/* 0AA5FC 800A99FC 05410003 */ bgez $t2, .L800A9A0C -/* 0AA600 800A9A00 000A5843 */ sra $t3, $t2, 1 -/* 0AA604 800A9A04 25410001 */ addiu $at, $t2, 1 -/* 0AA608 800A9A08 00015843 */ sra $t3, $at, 1 -.L800A9A0C: -/* 0AA60C 800A9A0C 1000004A */ b .L800A9B38 -/* 0AA610 800A9A10 AE0B0000 */ sw $t3, ($s0) -.L800A9A14: -/* 0AA614 800A9A14 0C01AF66 */ jal func_8006BD98 -/* 0AA618 800A9A18 00000000 */ nop -/* 0AA61C 800A9A1C 24010042 */ li $at, 66 -/* 0AA620 800A9A20 1041000B */ beq $v0, $at, .L800A9A50 -/* 0AA624 800A9A24 00000000 */ nop -/* 0AA628 800A9A28 0C01AF66 */ jal func_8006BD98 -/* 0AA62C 800A9A2C 00000000 */ nop -/* 0AA630 800A9A30 24010040 */ li $at, 64 -/* 0AA634 800A9A34 10410006 */ beq $v0, $at, .L800A9A50 -/* 0AA638 800A9A38 00000000 */ nop -/* 0AA63C 800A9A3C 0C01AF66 */ jal func_8006BD98 -/* 0AA640 800A9A40 00000000 */ nop -/* 0AA644 800A9A44 24010041 */ li $at, 65 -/* 0AA648 800A9A48 14410015 */ bne $v0, $at, .L800A9AA0 -/* 0AA64C 800A9A4C 3C108012 */ lui $s0, 0x8012 -.L800A9A50: -/* 0AA650 800A9A50 3C0C8012 */ lui $t4, %hi(D_80126D1C) # $t4, 0x8012 -/* 0AA654 800A9A54 8D8C6D1C */ lw $t4, %lo(D_80126D1C)($t4) -/* 0AA658 800A9A58 3C0F8012 */ lui $t7, %hi(D_80126D20) # $t7, 0x8012 -/* 0AA65C 800A9A5C 8DEF6D20 */ lw $t7, %lo(D_80126D20)($t7) -/* 0AA660 800A9A60 3C108012 */ lui $s0, %hi(D_80126D5C) # $s0, 0x8012 -/* 0AA664 800A9A64 000FC023 */ negu $t8, $t7 -/* 0AA668 800A9A68 26106D5C */ addiu $s0, %lo(D_80126D5C) # addiu $s0, $s0, 0x6d5c -/* 0AA66C 800A9A6C 05810003 */ bgez $t4, .L800A9A7C -/* 0AA670 800A9A70 000C6843 */ sra $t5, $t4, 1 -/* 0AA674 800A9A74 25810001 */ addiu $at, $t4, 1 -/* 0AA678 800A9A78 00016843 */ sra $t5, $at, 1 -.L800A9A7C: -/* 0AA67C 800A9A7C 3C018012 */ lui $at, %hi(D_80126D58) # $at, 0x8012 -/* 0AA680 800A9A80 25AEFFF8 */ addiu $t6, $t5, -8 -/* 0AA684 800A9A84 AC2E6D58 */ sw $t6, %lo(D_80126D58)($at) -/* 0AA688 800A9A88 07010003 */ bgez $t8, .L800A9A98 -/* 0AA68C 800A9A8C 0018C843 */ sra $t9, $t8, 1 -/* 0AA690 800A9A90 27010001 */ addiu $at, $t8, 1 -/* 0AA694 800A9A94 0001C843 */ sra $t9, $at, 1 -.L800A9A98: -/* 0AA698 800A9A98 10000027 */ b .L800A9B38 -/* 0AA69C 800A9A9C AE190000 */ sw $t9, ($s0) -.L800A9AA0: -/* 0AA6A0 800A9AA0 3C0A8012 */ lui $t2, %hi(D_80126D1C) # $t2, 0x8012 -/* 0AA6A4 800A9AA4 8D4A6D1C */ lw $t2, %lo(D_80126D1C)($t2) -/* 0AA6A8 800A9AA8 3C0D8012 */ lui $t5, %hi(D_80126D20) # $t5, 0x8012 -/* 0AA6AC 800A9AAC 8DAD6D20 */ lw $t5, %lo(D_80126D20)($t5) -/* 0AA6B0 800A9AB0 240FFFC4 */ li $t7, -60 -/* 0AA6B4 800A9AB4 26106D5C */ addiu $s0, $s0, 0x6d5c -/* 0AA6B8 800A9AB8 05410003 */ bgez $t2, .L800A9AC8 -/* 0AA6BC 800A9ABC 000A5843 */ sra $t3, $t2, 1 -/* 0AA6C0 800A9AC0 25410001 */ addiu $at, $t2, 1 -/* 0AA6C4 800A9AC4 00015843 */ sra $t3, $at, 1 -.L800A9AC8: -/* 0AA6C8 800A9AC8 3C018012 */ lui $at, %hi(D_80126D58) # $at, 0x8012 -/* 0AA6CC 800A9ACC 256C0048 */ addiu $t4, $t3, 0x48 -/* 0AA6D0 800A9AD0 AC2C6D58 */ sw $t4, %lo(D_80126D58)($at) -/* 0AA6D4 800A9AD4 05A10003 */ bgez $t5, .L800A9AE4 -/* 0AA6D8 800A9AD8 000D7043 */ sra $t6, $t5, 1 -/* 0AA6DC 800A9ADC 25A10001 */ addiu $at, $t5, 1 -/* 0AA6E0 800A9AE0 00017043 */ sra $t6, $at, 1 -.L800A9AE4: -/* 0AA6E4 800A9AE4 01EEC023 */ subu $t8, $t7, $t6 -/* 0AA6E8 800A9AE8 10000013 */ b .L800A9B38 -/* 0AA6EC 800A9AEC AE180000 */ sw $t8, ($s0) -.L800A9AF0: -/* 0AA6F0 800A9AF0 3C198012 */ lui $t9, %hi(D_80126D1C) # $t9, 0x8012 -/* 0AA6F4 800A9AF4 8F396D1C */ lw $t9, %lo(D_80126D1C)($t9) -/* 0AA6F8 800A9AF8 3C0C8012 */ lui $t4, %hi(D_80126D20) # $t4, 0x8012 -/* 0AA6FC 800A9AFC 8D8C6D20 */ lw $t4, %lo(D_80126D20)($t4) -/* 0AA700 800A9B00 26106D5C */ addiu $s0, $s0, 0x6d5c -/* 0AA704 800A9B04 07210003 */ bgez $t9, .L800A9B14 -/* 0AA708 800A9B08 00195043 */ sra $t2, $t9, 1 -/* 0AA70C 800A9B0C 27210001 */ addiu $at, $t9, 1 -/* 0AA710 800A9B10 00015043 */ sra $t2, $at, 1 -.L800A9B14: -/* 0AA714 800A9B14 3C018012 */ lui $at, %hi(D_80126D58) # $at, 0x8012 -/* 0AA718 800A9B18 254BFFF8 */ addiu $t3, $t2, -8 -/* 0AA71C 800A9B1C AC2B6D58 */ sw $t3, %lo(D_80126D58)($at) -/* 0AA720 800A9B20 000C6823 */ negu $t5, $t4 -/* 0AA724 800A9B24 05A10003 */ bgez $t5, .L800A9B34 -/* 0AA728 800A9B28 000D7843 */ sra $t7, $t5, 1 -/* 0AA72C 800A9B2C 25A10001 */ addiu $at, $t5, 1 -/* 0AA730 800A9B30 00017843 */ sra $t7, $at, 1 -.L800A9B34: -/* 0AA734 800A9B34 AE0F0000 */ sw $t7, ($s0) -.L800A9B38: -/* 0AA738 800A9B38 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 -/* 0AA73C 800A9B3C 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) -/* 0AA740 800A9B40 00000000 */ nop -/* 0AA744 800A9B44 15C00013 */ bnez $t6, .L800A9B94 -/* 0AA748 800A9B48 00000000 */ nop -/* 0AA74C 800A9B4C 8E180000 */ lw $t8, ($s0) -/* 0AA750 800A9B50 3C01800F */ lui $at, %hi(D_800E87CC) # $at, 0x800f -/* 0AA754 800A9B54 44982000 */ mtc1 $t8, $f4 -/* 0AA758 800A9B58 C42B87C8 */ lwc1 $f11, %lo(D_800E87C8)($at) -/* 0AA75C 800A9B5C 468021A1 */ cvt.d.w $f6, $f4 -/* 0AA760 800A9B60 C42A87CC */ lwc1 $f10, %lo(D_800E87CC)($at) -/* 0AA764 800A9B64 00000000 */ nop -/* 0AA768 800A9B68 462A3482 */ mul.d $f18, $f6, $f10 -/* 0AA76C 800A9B6C 4459F800 */ cfc1 $t9, $31 -/* 0AA770 800A9B70 00000000 */ nop -/* 0AA774 800A9B74 37210003 */ ori $at, $t9, 3 -/* 0AA778 800A9B78 38210002 */ xori $at, $at, 2 -/* 0AA77C 800A9B7C 44C1F800 */ ctc1 $at, $31 -/* 0AA780 800A9B80 00000000 */ nop -/* 0AA784 800A9B84 46209224 */ cvt.w.d $f8, $f18 -/* 0AA788 800A9B88 44D9F800 */ ctc1 $t9, $31 -/* 0AA78C 800A9B8C E6080000 */ swc1 $f8, ($s0) -/* 0AA790 800A9B90 00000000 */ nop -.L800A9B94: -/* 0AA794 800A9B94 0C01EFC7 */ jal func_8007BF1C -/* 0AA798 800A9B98 00002025 */ move $a0, $zero -/* 0AA79C 800A9B9C 8E0E0000 */ lw $t6, ($s0) -/* 0AA7A0 800A9BA0 3C0A8012 */ lui $t2, %hi(D_80126D58) # $t2, 0x8012 -/* 0AA7A4 800A9BA4 8D4A6D58 */ lw $t2, %lo(D_80126D58)($t2) -/* 0AA7A8 800A9BA8 448E9000 */ mtc1 $t6, $f18 -/* 0AA7AC 800A9BAC 3C0B8012 */ lui $t3, %hi(D_80126D24) # $t3, 0x8012 -/* 0AA7B0 800A9BB0 8D6B6D24 */ lw $t3, %lo(D_80126D24)($t3) -/* 0AA7B4 800A9BB4 468094A0 */ cvt.s.w $f18, $f18 -/* 0AA7B8 800A9BB8 3C0D8012 */ lui $t5, %hi(D_80126D28) # $t5, 0x8012 -/* 0AA7BC 800A9BBC 8DAD6D28 */ lw $t5, %lo(D_80126D28)($t5) -/* 0AA7C0 800A9BC0 014B6021 */ addu $t4, $t2, $t3 -/* 0AA7C4 800A9BC4 018D7821 */ addu $t7, $t4, $t5 -/* 0AA7C8 800A9BC8 448F8000 */ mtc1 $t7, $f16 -/* 0AA7CC 800A9BCC 3C188000 */ lui $t8, %hi(D_80000300) # $t8, 0x8000 -/* 0AA7D0 800A9BD0 46808020 */ cvt.s.w $f0, $f16 -/* 0AA7D4 800A9BD4 8F180300 */ lw $t8, %lo(D_80000300)($t8) -/* 0AA7D8 800A9BD8 E7B20130 */ swc1 $f18, 0x130($sp) -/* 0AA7DC 800A9BDC 17000006 */ bnez $t8, .L800A9BF8 -/* 0AA7E0 800A9BE0 E7A0012C */ swc1 $f0, 0x12c($sp) -/* 0AA7E4 800A9BE4 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 0AA7E8 800A9BE8 44815000 */ mtc1 $at, $f10 -/* 0AA7EC 800A9BEC 00000000 */ nop -/* 0AA7F0 800A9BF0 460A0001 */ sub.s $f0, $f0, $f10 -/* 0AA7F4 800A9BF4 E7A0012C */ swc1 $f0, 0x12c($sp) -.L800A9BF8: -/* 0AA7F8 800A9BF8 86390004 */ lh $t9, 4($s1) -/* 0AA7FC 800A9BFC A7A00122 */ sh $zero, 0x122($sp) -/* 0AA800 800A9C00 00195023 */ negu $t2, $t9 -/* 0AA804 800A9C04 0C0270C3 */ jal func_8009C30C -/* 0AA808 800A9C08 A7AA0124 */ sh $t2, 0x124($sp) -/* 0AA80C 800A9C0C 304B0004 */ andi $t3, $v0, 4 -/* 0AA810 800A9C10 1160000B */ beqz $t3, .L800A9C40 -/* 0AA814 800A9C14 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0AA818 800A9C18 3C0D8012 */ lui $t5, %hi(D_80126D1C) # $t5, 0x8012 -/* 0AA81C 800A9C1C 8DAD6D1C */ lw $t5, %lo(D_80126D1C)($t5) -/* 0AA820 800A9C20 C7A0012C */ lwc1 $f0, 0x12c($sp) -/* 0AA824 800A9C24 448D9000 */ mtc1 $t5, $f18 -/* 0AA828 800A9C28 240C8000 */ li $t4, -32768 -/* 0AA82C 800A9C2C 46809220 */ cvt.s.w $f8, $f18 -/* 0AA830 800A9C30 A7AC0120 */ sh $t4, 0x120($sp) -/* 0AA834 800A9C34 46080001 */ sub.s $f0, $f0, $f8 -/* 0AA838 800A9C38 10000002 */ b .L800A9C44 -/* 0AA83C 800A9C3C E7A0012C */ swc1 $f0, 0x12c($sp) -.L800A9C40: -/* 0AA840 800A9C40 A7A00120 */ sh $zero, 0x120($sp) -.L800A9C44: -/* 0AA844 800A9C44 44812000 */ mtc1 $at, $f4 -/* 0AA848 800A9C48 8FAF010C */ lw $t7, 0x10c($sp) -/* 0AA84C 800A9C4C 44808000 */ mtc1 $zero, $f16 -/* 0AA850 800A9C50 29E100A1 */ slti $at, $t7, 0xa1 -/* 0AA854 800A9C54 A7A00138 */ sh $zero, 0x138($sp) -/* 0AA858 800A9C58 E7A40128 */ swc1 $f4, 0x128($sp) -/* 0AA85C 800A9C5C AFAF0108 */ sw $t7, 0x108($sp) -/* 0AA860 800A9C60 14200003 */ bnez $at, .L800A9C70 -/* 0AA864 800A9C64 E7B00134 */ swc1 $f16, 0x134($sp) -/* 0AA868 800A9C68 240E00A0 */ li $t6, 160 -/* 0AA86C 800A9C6C AFAE010C */ sw $t6, 0x10c($sp) -.L800A9C70: -/* 0AA870 800A9C70 3C188012 */ lui $t8, %hi(D_80126D37) # $t8, 0x8012 -/* 0AA874 800A9C74 93186D37 */ lbu $t8, %lo(D_80126D37)($t8) -/* 0AA878 800A9C78 24010003 */ li $at, 3 -/* 0AA87C 800A9C7C 1701000C */ bne $t8, $at, .L800A9CB0 -/* 0AA880 800A9C80 02802025 */ move $a0, $s4 -/* 0AA884 800A9C84 8E880000 */ lw $t0, ($s4) -/* 0AA888 800A9C88 3C0AFA00 */ lui $t2, 0xfa00 -/* 0AA88C 800A9C8C 25190008 */ addiu $t9, $t0, 8 -/* 0AA890 800A9C90 AE990000 */ sw $t9, ($s4) -/* 0AA894 800A9C94 AD0A0000 */ sw $t2, ($t0) -/* 0AA898 800A9C98 8FAB010C */ lw $t3, 0x10c($sp) -/* 0AA89C 800A9C9C 2401FF00 */ li $at, -256 -/* 0AA8A0 800A9CA0 316C00FF */ andi $t4, $t3, 0xff -/* 0AA8A4 800A9CA4 01816825 */ or $t5, $t4, $at -/* 0AA8A8 800A9CA8 10000015 */ b .L800A9D00 -/* 0AA8AC 800A9CAC AD0D0004 */ sw $t5, 4($t0) -.L800A9CB0: -/* 0AA8B0 800A9CB0 8E880000 */ lw $t0, ($s4) -/* 0AA8B4 800A9CB4 3C0EFA00 */ lui $t6, 0xfa00 -/* 0AA8B8 800A9CB8 250F0008 */ addiu $t7, $t0, 8 -/* 0AA8BC 800A9CBC AE8F0000 */ sw $t7, ($s4) -/* 0AA8C0 800A9CC0 3C0B8012 */ lui $t3, %hi(D_80126D55) # $t3, 0x8012 -/* 0AA8C4 800A9CC4 AD0E0000 */ sw $t6, ($t0) -/* 0AA8C8 800A9CC8 916C6D55 */ lbu $t4, %lo(D_80126D55)($t3) -/* 0AA8CC 800A9CCC 3C188012 */ lui $t8, %hi(D_80126D54) # $t8, 0x8012 -/* 0AA8D0 800A9CD0 93196D54 */ lbu $t9, %lo(D_80126D54)($t8) -/* 0AA8D4 800A9CD4 3C0E8012 */ lui $t6, %hi(D_80126D56) # $t6, 0x8012 -/* 0AA8D8 800A9CD8 000C6C00 */ sll $t5, $t4, 0x10 -/* 0AA8DC 800A9CDC 91D86D56 */ lbu $t8, %lo(D_80126D56)($t6) -/* 0AA8E0 800A9CE0 00195600 */ sll $t2, $t9, 0x18 -/* 0AA8E4 800A9CE4 8FAC010C */ lw $t4, 0x10c($sp) -/* 0AA8E8 800A9CE8 014D7825 */ or $t7, $t2, $t5 -/* 0AA8EC 800A9CEC 0018CA00 */ sll $t9, $t8, 8 -/* 0AA8F0 800A9CF0 01F95825 */ or $t3, $t7, $t9 -/* 0AA8F4 800A9CF4 318A00FF */ andi $t2, $t4, 0xff -/* 0AA8F8 800A9CF8 016A6825 */ or $t5, $t3, $t2 -/* 0AA8FC 800A9CFC AD0D0004 */ sw $t5, 4($t0) -.L800A9D00: -/* 0AA900 800A9D00 8FAE0154 */ lw $t6, 0x154($sp) -/* 0AA904 800A9D04 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0AA908 800A9D08 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0AA90C 800A9D0C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0AA910 800A9D10 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0AA914 800A9D14 27A70120 */ addiu $a3, $sp, 0x120 -/* 0AA918 800A9D18 AFA00014 */ sw $zero, 0x14($sp) -/* 0AA91C 800A9D1C 0C01A2FD */ jal func_80068BF4 -/* 0AA920 800A9D20 AFAE0010 */ sw $t6, 0x10($sp) -/* 0AA924 800A9D24 8FA20158 */ lw $v0, 0x158($sp) -/* 0AA928 800A9D28 24010168 */ li $at, 360 -/* 0AA92C 800A9D2C 8458003E */ lh $t8, 0x3e($v0) -/* 0AA930 800A9D30 844F003C */ lh $t7, 0x3c($v0) -/* 0AA934 800A9D34 844C0046 */ lh $t4, 0x46($v0) -/* 0AA938 800A9D38 844B0044 */ lh $t3, 0x44($v0) -/* 0AA93C 800A9D3C 030FC823 */ subu $t9, $t8, $t7 -/* 0AA940 800A9D40 018B5023 */ subu $t2, $t4, $t3 -/* 0AA944 800A9D44 448A9000 */ mtc1 $t2, $f18 -/* 0AA948 800A9D48 44993000 */ mtc1 $t9, $f6 -/* 0AA94C 800A9D4C 46809220 */ cvt.s.w $f8, $f18 -/* 0AA950 800A9D50 468032A0 */ cvt.s.w $f10, $f6 -/* 0AA954 800A9D54 00000000 */ nop -/* 0AA958 800A9D58 46085403 */ div.s $f16, $f10, $f8 -/* 0AA95C 800A9D5C E7B0011C */ swc1 $f16, 0x11c($sp) -/* 0AA960 800A9D60 94440024 */ lhu $a0, 0x24($v0) -/* 0AA964 800A9D64 00000000 */ nop -/* 0AA968 800A9D68 00046C00 */ sll $t5, $a0, 0x10 -/* 0AA96C 800A9D6C 01A46823 */ subu $t5, $t5, $a0 -/* 0AA970 800A9D70 01A1001A */ div $zero, $t5, $at -/* 0AA974 800A9D74 00007012 */ mflo $t6 -/* 0AA978 800A9D78 000EC400 */ sll $t8, $t6, 0x10 -/* 0AA97C 800A9D7C 0C01C1FE */ jal func_800707F8 -/* 0AA980 800A9D80 00182403 */ sra $a0, $t8, 0x10 -/* 0AA984 800A9D84 8FB90158 */ lw $t9, 0x158($sp) -/* 0AA988 800A9D88 E7A00118 */ swc1 $f0, 0x118($sp) -/* 0AA98C 800A9D8C 97240024 */ lhu $a0, 0x24($t9) -/* 0AA990 800A9D90 24010168 */ li $at, 360 -/* 0AA994 800A9D94 00046400 */ sll $t4, $a0, 0x10 -/* 0AA998 800A9D98 01846023 */ subu $t4, $t4, $a0 -/* 0AA99C 800A9D9C 0181001A */ div $zero, $t4, $at -/* 0AA9A0 800A9DA0 00005812 */ mflo $t3 -/* 0AA9A4 800A9DA4 000B5400 */ sll $t2, $t3, 0x10 -/* 0AA9A8 800A9DA8 0C01C1F1 */ jal func_800707C4 -/* 0AA9AC 800A9DAC 000A2403 */ sra $a0, $t2, 0x10 -/* 0AA9B0 800A9DB0 0C003936 */ jal func_8000E4D8 -/* 0AA9B4 800A9DB4 E7A00114 */ swc1 $f0, 0x114($sp) -/* 0AA9B8 800A9DB8 10400043 */ beqz $v0, .L800A9EC8 -/* 0AA9BC 800A9DBC 00000000 */ nop -/* 0AA9C0 800A9DC0 0C006CA2 */ jal func_8001B288 -/* 0AA9C4 800A9DC4 00000000 */ nop -/* 0AA9C8 800A9DC8 1040003F */ beqz $v0, .L800A9EC8 -/* 0AA9CC 800A9DCC 00000000 */ nop -/* 0AA9D0 800A9DD0 0C006CB8 */ jal func_8001B2E0 -/* 0AA9D4 800A9DD4 00000000 */ nop -/* 0AA9D8 800A9DD8 1040003B */ beqz $v0, .L800A9EC8 -/* 0AA9DC 800A9DDC 00408025 */ move $s0, $v0 -/* 0AA9E0 800A9DE0 C7A4011C */ lwc1 $f4, 0x11c($sp) -/* 0AA9E4 800A9DE4 C44C000C */ lwc1 $f12, 0xc($v0) -/* 0AA9E8 800A9DE8 C44E0014 */ lwc1 $f14, 0x14($v0) -/* 0AA9EC 800A9DEC 8FA60114 */ lw $a2, 0x114($sp) -/* 0AA9F0 800A9DF0 8FA70118 */ lw $a3, 0x118($sp) -/* 0AA9F4 800A9DF4 0C02A8FB */ jal func_800AA3EC -/* 0AA9F8 800A9DF8 E7A40010 */ swc1 $f4, 0x10($sp) -/* 0AA9FC 800A9DFC 8E580000 */ lw $t8, ($s2) -/* 0AAA00 800A9E00 240E000E */ li $t6, 14 -/* 0AAA04 800A9E04 A70E01E6 */ sh $t6, 0x1e6($t8) -/* 0AAA08 800A9E08 8E4F0000 */ lw $t7, ($s2) -/* 0AAA0C 800A9E0C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0AAA10 800A9E10 A5E001E4 */ sh $zero, 0x1e4($t7) -/* 0AAA14 800A9E14 8E590000 */ lw $t9, ($s2) -/* 0AAA18 800A9E18 44813000 */ mtc1 $at, $f6 -/* 0AAA1C 800A9E1C 3C0EFA00 */ lui $t6, 0xfa00 -/* 0AAA20 800A9E20 E72601E8 */ swc1 $f6, 0x1e8($t9) -/* 0AAA24 800A9E24 920B0039 */ lbu $t3, 0x39($s0) -/* 0AAA28 800A9E28 8FAC0108 */ lw $t4, 0x108($sp) -/* 0AAA2C 800A9E2C 448B4000 */ mtc1 $t3, $f8 -/* 0AAA30 800A9E30 448C9000 */ mtc1 $t4, $f18 -/* 0AAA34 800A9E34 46804420 */ cvt.s.w $f16, $f8 -/* 0AAA38 800A9E38 44804000 */ mtc1 $zero, $f8 -/* 0AAA3C 800A9E3C 05610005 */ bgez $t3, .L800A9E54 -/* 0AAA40 800A9E40 468092A0 */ cvt.s.w $f10, $f18 -/* 0AAA44 800A9E44 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0AAA48 800A9E48 44812000 */ mtc1 $at, $f4 -/* 0AAA4C 800A9E4C 00000000 */ nop -/* 0AAA50 800A9E50 46048400 */ add.s $f16, $f16, $f4 -.L800A9E54: -/* 0AAA54 800A9E54 46105182 */ mul.s $f6, $f10, $f16 -/* 0AAA58 800A9E58 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0AAA5C 800A9E5C 44814800 */ mtc1 $at, $f9 -/* 0AAA60 800A9E60 8E880000 */ lw $t0, ($s4) -/* 0AAA64 800A9E64 460034A1 */ cvt.d.s $f18, $f6 -/* 0AAA68 800A9E68 46289102 */ mul.d $f4, $f18, $f8 -/* 0AAA6C 800A9E6C 250D0008 */ addiu $t5, $t0, 8 -/* 0AAA70 800A9E70 AE8D0000 */ sw $t5, ($s4) -/* 0AAA74 800A9E74 AD0E0000 */ sw $t6, ($t0) -/* 0AAA78 800A9E78 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0AAA7C 800A9E7C 444AF800 */ cfc1 $t2, $31 -/* 0AAA80 800A9E80 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0AAA84 800A9E84 35410003 */ ori $at, $t2, 3 -/* 0AAA88 800A9E88 38210002 */ xori $at, $at, 2 -/* 0AAA8C 800A9E8C 44C1F800 */ ctc1 $at, $31 -/* 0AAA90 800A9E90 3C013C3C */ lui $at, (0x3C3C3C00 >> 16) # lui $at, 0x3c3c -/* 0AAA94 800A9E94 462022A4 */ cvt.w.d $f10, $f4 -/* 0AAA98 800A9E98 34213C00 */ ori $at, (0x3C3C3C00 & 0xFFFF) # ori $at, $at, 0x3c00 -/* 0AAA9C 800A9E9C 44035000 */ mfc1 $v1, $f10 -/* 0AAAA0 800A9EA0 44CAF800 */ ctc1 $t2, $31 -/* 0AAAA4 800A9EA4 307800FF */ andi $t8, $v1, 0xff -/* 0AAAA8 800A9EA8 03017825 */ or $t7, $t8, $at -/* 0AAAAC 800A9EAC AD0F0004 */ sw $t7, 4($t0) -/* 0AAAB0 800A9EB0 8E470000 */ lw $a3, ($s2) -/* 0AAAB4 800A9EB4 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0AAAB8 800A9EB8 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0AAABC 800A9EBC 02802025 */ move $a0, $s4 -/* 0AAAC0 800A9EC0 0C02A980 */ jal func_800AA600 -/* 0AAAC4 800A9EC4 24E701E0 */ addiu $a3, $a3, 0x1e0 -.L800A9EC8: -/* 0AAAC8 800A9EC8 0C006D90 */ jal func_8001B640 -/* 0AAACC 800A9ECC 00000000 */ nop -/* 0AAAD0 800A9ED0 10400045 */ beqz $v0, .L800A9FE8 -/* 0AAAD4 800A9ED4 00408025 */ move $s0, $v0 -/* 0AAAD8 800A9ED8 8FB90108 */ lw $t9, 0x108($sp) -/* 0AAADC 800A9EDC C7B0011C */ lwc1 $f16, 0x11c($sp) -/* 0AAAE0 800A9EE0 44993000 */ mtc1 $t9, $f6 -/* 0AAAE4 800A9EE4 C44C000C */ lwc1 $f12, 0xc($v0) -/* 0AAAE8 800A9EE8 468034A0 */ cvt.s.w $f18, $f6 -/* 0AAAEC 800A9EEC C44E0014 */ lwc1 $f14, 0x14($v0) -/* 0AAAF0 800A9EF0 8FA60114 */ lw $a2, 0x114($sp) -/* 0AAAF4 800A9EF4 8FA70118 */ lw $a3, 0x118($sp) -/* 0AAAF8 800A9EF8 E7B20054 */ swc1 $f18, 0x54($sp) -/* 0AAAFC 800A9EFC 0C02A8FB */ jal func_800AA3EC -/* 0AAB00 800A9F00 E7B00010 */ swc1 $f16, 0x10($sp) -/* 0AAB04 800A9F04 8E4C0000 */ lw $t4, ($s2) -/* 0AAB08 800A9F08 3C09800E */ lui $t1, %hi(D_800E27BC) # $t1, 0x800e -/* 0AAB0C 800A9F0C A58001E4 */ sh $zero, 0x1e4($t4) -/* 0AAB10 800A9F10 920B0039 */ lbu $t3, 0x39($s0) -/* 0AAB14 800A9F14 C7A80054 */ lwc1 $f8, 0x54($sp) -/* 0AAB18 800A9F18 448B2000 */ mtc1 $t3, $f4 -/* 0AAB1C 800A9F1C 252927BC */ addiu $t1, %lo(D_800E27BC) # addiu $t1, $t1, 0x27bc -/* 0AAB20 800A9F20 05610005 */ bgez $t3, .L800A9F38 -/* 0AAB24 800A9F24 468022A0 */ cvt.s.w $f10, $f4 -/* 0AAB28 800A9F28 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0AAB2C 800A9F2C 44818000 */ mtc1 $at, $f16 -/* 0AAB30 800A9F30 00000000 */ nop -/* 0AAB34 800A9F34 46105280 */ add.s $f10, $f10, $f16 -.L800A9F38: -/* 0AAB38 800A9F38 460A4182 */ mul.s $f6, $f8, $f10 -/* 0AAB3C 800A9F3C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0AAB40 800A9F40 44812800 */ mtc1 $at, $f5 -/* 0AAB44 800A9F44 44802000 */ mtc1 $zero, $f4 -/* 0AAB48 800A9F48 460034A1 */ cvt.d.s $f18, $f6 -/* 0AAB4C 800A9F4C 46249402 */ mul.d $f16, $f18, $f4 -/* 0AAB50 800A9F50 8E880000 */ lw $t0, ($s4) -/* 0AAB54 800A9F54 3C0EFA00 */ lui $t6, 0xfa00 -/* 0AAB58 800A9F58 250D0008 */ addiu $t5, $t0, 8 -/* 0AAB5C 800A9F5C AE8D0000 */ sw $t5, ($s4) -/* 0AAB60 800A9F60 444AF800 */ cfc1 $t2, $31 -/* 0AAB64 800A9F64 AD0E0000 */ sw $t6, ($t0) -/* 0AAB68 800A9F68 35410003 */ ori $at, $t2, 3 -/* 0AAB6C 800A9F6C 38210002 */ xori $at, $at, 2 -/* 0AAB70 800A9F70 44C1F800 */ ctc1 $at, $31 -/* 0AAB74 800A9F74 912F001A */ lbu $t7, 0x1a($t1) -/* 0AAB78 800A9F78 46208224 */ cvt.w.d $f8, $f16 -/* 0AAB7C 800A9F7C 912B0018 */ lbu $t3, 0x18($t1) -/* 0AAB80 800A9F80 91380019 */ lbu $t8, 0x19($t1) -/* 0AAB84 800A9F84 44CAF800 */ ctc1 $t2, $31 -/* 0AAB88 800A9F88 000FCA00 */ sll $t9, $t7, 8 -/* 0AAB8C 800A9F8C 44034000 */ mfc1 $v1, $f8 -/* 0AAB90 800A9F90 000B5600 */ sll $t2, $t3, 0x18 -/* 0AAB94 800A9F94 032A6825 */ or $t5, $t9, $t2 -/* 0AAB98 800A9F98 00187C00 */ sll $t7, $t8, 0x10 -/* 0AAB9C 800A9F9C 01AF6025 */ or $t4, $t5, $t7 -/* 0AABA0 800A9FA0 306B00FF */ andi $t3, $v1, 0xff -/* 0AABA4 800A9FA4 018BC825 */ or $t9, $t4, $t3 -/* 0AABA8 800A9FA8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0AABAC 800A9FAC AD190004 */ sw $t9, 4($t0) -/* 0AABB0 800A9FB0 8E4A0000 */ lw $t2, ($s2) -/* 0AABB4 800A9FB4 44815000 */ mtc1 $at, $f10 -/* 0AABB8 800A9FB8 240E000E */ li $t6, 14 -/* 0AABBC 800A9FBC E54A01E8 */ swc1 $f10, 0x1e8($t2) -/* 0AABC0 800A9FC0 8E580000 */ lw $t8, ($s2) -/* 0AABC4 800A9FC4 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0AABC8 800A9FC8 A70E01E6 */ sh $t6, 0x1e6($t8) -/* 0AABCC 800A9FCC 8E470000 */ lw $a3, ($s2) -/* 0AABD0 800A9FD0 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0AABD4 800A9FD4 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0AABD8 800A9FD8 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0AABDC 800A9FDC 02802025 */ move $a0, $s4 -/* 0AABE0 800A9FE0 0C02A980 */ jal func_800AA600 -/* 0AABE4 800A9FE4 24E701E0 */ addiu $a3, $a3, 0x1e0 -.L800A9FE8: -/* 0AABE8 800A9FE8 3C0D8012 */ lui $t5, %hi(D_80126D60) # $t5, 0x8012 -/* 0AABEC 800A9FEC 8DAD6D60 */ lw $t5, %lo(D_80126D60)($t5) -/* 0AABF0 800A9FF0 24010005 */ li $at, 5 -/* 0AABF4 800A9FF4 81AF004C */ lb $t7, 0x4c($t5) -/* 0AABF8 800A9FF8 00000000 */ nop -/* 0AABFC 800A9FFC 15E10029 */ bne $t7, $at, .L800AA0A4 -/* 0AAC00 800AA000 8FA20140 */ lw $v0, 0x140($sp) -/* 0AAC04 800AA004 0C00631B */ jal func_80018C6C -/* 0AAC08 800AA008 00000000 */ nop -/* 0AAC0C 800AA00C 10400024 */ beqz $v0, .L800AA0A0 -/* 0AAC10 800AA010 00000000 */ nop -/* 0AAC14 800AA014 8E4B0000 */ lw $t3, ($s2) -/* 0AAC18 800AA018 240C000E */ li $t4, 14 -/* 0AAC1C 800AA01C A56C01E6 */ sh $t4, 0x1e6($t3) -/* 0AAC20 800AA020 C7A6011C */ lwc1 $f6, 0x11c($sp) -/* 0AAC24 800AA024 8FA70118 */ lw $a3, 0x118($sp) -/* 0AAC28 800AA028 8FA60114 */ lw $a2, 0x114($sp) -/* 0AAC2C 800AA02C C44E0014 */ lwc1 $f14, 0x14($v0) -/* 0AAC30 800AA030 C44C000C */ lwc1 $f12, 0xc($v0) -/* 0AAC34 800AA034 0C02A8FB */ jal func_800AA3EC -/* 0AAC38 800AA038 E7A60010 */ swc1 $f6, 0x10($sp) -/* 0AAC3C 800AA03C 8E590000 */ lw $t9, ($s2) -/* 0AAC40 800AA040 3C0EFA00 */ lui $t6, 0xfa00 -/* 0AAC44 800AA044 A72001E4 */ sh $zero, 0x1e4($t9) -/* 0AAC48 800AA048 8E880000 */ lw $t0, ($s4) -/* 0AAC4C 800AA04C 3C01FF00 */ lui $at, (0xFF00FF00 >> 16) # lui $at, 0xff00 -/* 0AAC50 800AA050 250A0008 */ addiu $t2, $t0, 8 -/* 0AAC54 800AA054 AE8A0000 */ sw $t2, ($s4) -/* 0AAC58 800AA058 AD0E0000 */ sw $t6, ($t0) -/* 0AAC5C 800AA05C 8FB80108 */ lw $t8, 0x108($sp) -/* 0AAC60 800AA060 3421FF00 */ ori $at, (0xFF00FF00 & 0xFFFF) # ori $at, $at, 0xff00 -/* 0AAC64 800AA064 330D00FF */ andi $t5, $t8, 0xff -/* 0AAC68 800AA068 01A17825 */ or $t7, $t5, $at -/* 0AAC6C 800AA06C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0AAC70 800AA070 AD0F0004 */ sw $t7, 4($t0) -/* 0AAC74 800AA074 8E4C0000 */ lw $t4, ($s2) -/* 0AAC78 800AA078 44819000 */ mtc1 $at, $f18 -/* 0AAC7C 800AA07C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0AAC80 800AA080 E59201E8 */ swc1 $f18, 0x1e8($t4) -/* 0AAC84 800AA084 8E470000 */ lw $a3, ($s2) -/* 0AAC88 800AA088 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0AAC8C 800AA08C 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0AAC90 800AA090 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0AAC94 800AA094 02802025 */ move $a0, $s4 -/* 0AAC98 800AA098 0C02A980 */ jal func_800AA600 -/* 0AAC9C 800AA09C 24E701E0 */ addiu $a3, $a3, 0x1e0 -.L800AA0A0: -/* 0AACA0 800AA0A0 8FA20140 */ lw $v0, 0x140($sp) -.L800AA0A4: -/* 0AACA4 800AA0A4 8FAB0150 */ lw $t3, 0x150($sp) -/* 0AACA8 800AA0A8 2442FFFF */ addiu $v0, $v0, -1 -/* 0AACAC 800AA0AC 044000B1 */ bltz $v0, .L800AA374 -/* 0AACB0 800AA0B0 00028880 */ sll $s1, $v0, 2 -/* 0AACB4 800AA0B4 01718021 */ addu $s0, $t3, $s1 -.L800AA0B8: -/* 0AACB8 800AA0B8 8E020000 */ lw $v0, ($s0) -/* 0AACBC 800AA0BC 8FA60114 */ lw $a2, 0x114($sp) -/* 0AACC0 800AA0C0 8C450064 */ lw $a1, 0x64($v0) -/* 0AACC4 800AA0C4 8FA70118 */ lw $a3, 0x118($sp) -/* 0AACC8 800AA0C8 10A000A7 */ beqz $a1, .L800AA368 -/* 0AACCC 800AA0CC 00000000 */ nop -/* 0AACD0 800AA0D0 8FB90108 */ lw $t9, 0x108($sp) -/* 0AACD4 800AA0D4 C44C000C */ lwc1 $f12, 0xc($v0) -/* 0AACD8 800AA0D8 C44E0014 */ lwc1 $f14, 0x14($v0) -/* 0AACDC 800AA0DC C7A4011C */ lwc1 $f4, 0x11c($sp) -/* 0AACE0 800AA0E0 332A00FF */ andi $t2, $t9, 0xff -/* 0AACE4 800AA0E4 AFAA0048 */ sw $t2, 0x48($sp) -/* 0AACE8 800AA0E8 AFA50148 */ sw $a1, 0x148($sp) -/* 0AACEC 800AA0EC 0C02A8FB */ jal func_800AA3EC -/* 0AACF0 800AA0F0 E7A40010 */ swc1 $f4, 0x10($sp) -/* 0AACF4 800AA0F4 8FA50148 */ lw $a1, 0x148($sp) -/* 0AACF8 800AA0F8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0AACFC 800AA0FC 84AE0000 */ lh $t6, ($a1) -/* 0AAD00 800AA100 00000000 */ nop -/* 0AAD04 800AA104 126E0027 */ beq $s3, $t6, .L800AA1A4 -/* 0AAD08 800AA108 00000000 */ nop -/* 0AAD0C 800AA10C 8E420000 */ lw $v0, ($s2) -/* 0AAD10 800AA110 44814000 */ mtc1 $at, $f8 -/* 0AAD14 800AA114 C45001F0 */ lwc1 $f16, 0x1f0($v0) -/* 0AAD18 800AA118 2418001B */ li $t8, 27 -/* 0AAD1C 800AA11C 46088281 */ sub.s $f10, $f16, $f8 -/* 0AAD20 800AA120 24010168 */ li $at, 360 -/* 0AAD24 800AA124 E44A01F0 */ swc1 $f10, 0x1f0($v0) -/* 0AAD28 800AA128 8E4D0000 */ lw $t5, ($s2) -/* 0AAD2C 800AA12C 00000000 */ nop -/* 0AAD30 800AA130 A5B801E6 */ sh $t8, 0x1e6($t5) -/* 0AAD34 800AA134 8FAB0158 */ lw $t3, 0x158($sp) -/* 0AAD38 800AA138 8E0F0000 */ lw $t7, ($s0) -/* 0AAD3C 800AA13C 95790024 */ lhu $t9, 0x24($t3) -/* 0AAD40 800AA140 85EC0000 */ lh $t4, ($t7) -/* 0AAD44 800AA144 00195400 */ sll $t2, $t9, 0x10 -/* 0AAD48 800AA148 01595023 */ subu $t2, $t2, $t9 -/* 0AAD4C 800AA14C 0141001A */ div $zero, $t2, $at -/* 0AAD50 800AA150 8E4F0000 */ lw $t7, ($s2) -/* 0AAD54 800AA154 00007012 */ mflo $t6 -/* 0AAD58 800AA158 018E6823 */ subu $t5, $t4, $t6 -/* 0AAD5C 800AA15C A5ED01E4 */ sh $t5, 0x1e4($t7) -/* 0AAD60 800AA160 0C0270C3 */ jal func_8009C30C -/* 0AAD64 800AA164 AFA50148 */ sw $a1, 0x148($sp) -/* 0AAD68 800AA168 8FA50148 */ lw $a1, 0x148($sp) -/* 0AAD6C 800AA16C 304B0004 */ andi $t3, $v0, 4 -/* 0AAD70 800AA170 11600007 */ beqz $t3, .L800AA190 -/* 0AAD74 800AA174 24040001 */ li $a0, 1 -/* 0AAD78 800AA178 8E420000 */ lw $v0, ($s2) -/* 0AAD7C 800AA17C 340AFFFF */ li $t2, 65535 -/* 0AAD80 800AA180 845901E4 */ lh $t9, 0x1e4($v0) -/* 0AAD84 800AA184 00000000 */ nop -/* 0AAD88 800AA188 01596023 */ subu $t4, $t2, $t9 -/* 0AAD8C 800AA18C A44C01E4 */ sh $t4, 0x1e4($v0) -.L800AA190: -/* 0AAD90 800AA190 0C01EFC7 */ jal func_8007BF1C -/* 0AAD94 800AA194 AFA50148 */ sw $a1, 0x148($sp) -/* 0AAD98 800AA198 8FA50148 */ lw $a1, 0x148($sp) -/* 0AAD9C 800AA19C 10000007 */ b .L800AA1BC -/* 0AADA0 800AA1A0 00000000 */ nop -.L800AA1A4: -/* 0AADA4 800AA1A4 8E4E0000 */ lw $t6, ($s2) -/* 0AADA8 800AA1A8 2418000E */ li $t8, 14 -/* 0AADAC 800AA1AC A5C001E4 */ sh $zero, 0x1e4($t6) -/* 0AADB0 800AA1B0 8E4D0000 */ lw $t5, ($s2) -/* 0AADB4 800AA1B4 00000000 */ nop -/* 0AADB8 800AA1B8 A5B801E6 */ sh $t8, 0x1e6($t5) -.L800AA1BC: -/* 0AADBC 800AA1BC 0C008D07 */ jal func_8002341C -/* 0AADC0 800AA1C0 AFA50148 */ sw $a1, 0x148($sp) -/* 0AADC4 800AA1C4 8FA50148 */ lw $a1, 0x148($sp) -/* 0AADC8 800AA1C8 1040000F */ beqz $v0, .L800AA208 -/* 0AADCC 800AA1CC 3C18FA00 */ lui $t8, 0xfa00 -/* 0AADD0 800AA1D0 80AF01D6 */ lb $t7, 0x1d6($a1) -/* 0AADD4 800AA1D4 2401000A */ li $at, 10 -/* 0AADD8 800AA1D8 15E1000B */ bne $t7, $at, .L800AA208 -/* 0AADDC 800AA1DC 3C0AFA00 */ lui $t2, 0xfa00 -/* 0AADE0 800AA1E0 8E880000 */ lw $t0, ($s4) -/* 0AADE4 800AA1E4 3C01FF00 */ lui $at, (0xFF00FF00 >> 16) # lui $at, 0xff00 -/* 0AADE8 800AA1E8 250B0008 */ addiu $t3, $t0, 8 -/* 0AADEC 800AA1EC AE8B0000 */ sw $t3, ($s4) -/* 0AADF0 800AA1F0 AD0A0000 */ sw $t2, ($t0) -/* 0AADF4 800AA1F4 8FB90048 */ lw $t9, 0x48($sp) -/* 0AADF8 800AA1F8 3421FF00 */ ori $at, (0xFF00FF00 & 0xFFFF) # ori $at, $at, 0xff00 -/* 0AADFC 800AA1FC 03216025 */ or $t4, $t9, $at -/* 0AAE00 800AA200 10000016 */ b .L800AA25C -/* 0AAE04 800AA204 AD0C0004 */ sw $t4, 4($t0) -.L800AA208: -/* 0AAE08 800AA208 8E880000 */ lw $t0, ($s4) -/* 0AAE0C 800AA20C 3C0B800E */ lui $t3, %hi(D_800E27BC) # $t3, 0x800e -/* 0AAE10 800AA210 250E0008 */ addiu $t6, $t0, 8 -/* 0AAE14 800AA214 AE8E0000 */ sw $t6, ($s4) -/* 0AAE18 800AA218 AD180000 */ sw $t8, ($t0) -/* 0AAE1C 800AA21C 80AD0003 */ lb $t5, 3($a1) -/* 0AAE20 800AA220 256B27BC */ addiu $t3, %lo(D_800E27BC) # addiu $t3, $t3, 0x27bc -/* 0AAE24 800AA224 000D7880 */ sll $t7, $t5, 2 -/* 0AAE28 800AA228 01ED7823 */ subu $t7, $t7, $t5 -/* 0AAE2C 800AA22C 01EB1021 */ addu $v0, $t7, $t3 -/* 0AAE30 800AA230 90590002 */ lbu $t9, 2($v0) -/* 0AAE34 800AA234 90580000 */ lbu $t8, ($v0) -/* 0AAE38 800AA238 904A0001 */ lbu $t2, 1($v0) -/* 0AAE3C 800AA23C 00196200 */ sll $t4, $t9, 8 -/* 0AAE40 800AA240 00186E00 */ sll $t5, $t8, 0x18 -/* 0AAE44 800AA244 8FB80048 */ lw $t8, 0x48($sp) -/* 0AAE48 800AA248 018D7825 */ or $t7, $t4, $t5 -/* 0AAE4C 800AA24C 000ACC00 */ sll $t9, $t2, 0x10 -/* 0AAE50 800AA250 01F97025 */ or $t6, $t7, $t9 -/* 0AAE54 800AA254 01D86025 */ or $t4, $t6, $t8 -/* 0AAE58 800AA258 AD0C0004 */ sw $t4, 4($t0) -.L800AA25C: -/* 0AAE5C 800AA25C 0C01AF66 */ jal func_8006BD98 -/* 0AAE60 800AA260 AFA50148 */ sw $a1, 0x148($sp) -/* 0AAE64 800AA264 8FA50148 */ lw $a1, 0x148($sp) -/* 0AAE68 800AA268 304D0040 */ andi $t5, $v0, 0x40 -/* 0AAE6C 800AA26C 11A00005 */ beqz $t5, .L800AA284 -/* 0AAE70 800AA270 3C0A8000 */ lui $t2, %hi(D_80000300) # $t2, 0x8000 -/* 0AAE74 800AA274 80AB01D8 */ lb $t3, 0x1d8($a1) -/* 0AAE78 800AA278 00000000 */ nop -/* 0AAE7C 800AA27C 15600038 */ bnez $t3, .L800AA360 -/* 0AAE80 800AA280 00000000 */ nop -.L800AA284: -/* 0AAE84 800AA284 8D4A0300 */ lw $t2, %lo(D_80000300)($t2) -/* 0AAE88 800AA288 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 0AAE8C 800AA28C 15400007 */ bnez $t2, .L800AA2AC -/* 0AAE90 800AA290 00000000 */ nop -/* 0AAE94 800AA294 8E420000 */ lw $v0, ($s2) -/* 0AAE98 800AA298 44819000 */ mtc1 $at, $f18 -/* 0AAE9C 800AA29C C44601EC */ lwc1 $f6, 0x1ec($v0) -/* 0AAEA0 800AA2A0 00000000 */ nop -/* 0AAEA4 800AA2A4 46123101 */ sub.s $f4, $f6, $f18 -/* 0AAEA8 800AA2A8 E44401EC */ swc1 $f4, 0x1ec($v0) -.L800AA2AC: -/* 0AAEAC 800AA2AC 0C01AF66 */ jal func_8006BD98 -/* 0AAEB0 800AA2B0 AFA50148 */ sw $a1, 0x148($sp) -/* 0AAEB4 800AA2B4 8FA50148 */ lw $a1, 0x148($sp) -/* 0AAEB8 800AA2B8 24010040 */ li $at, 64 -/* 0AAEBC 800AA2BC 1441001C */ bne $v0, $at, .L800AA330 -/* 0AAEC0 800AA2C0 02802025 */ move $a0, $s4 -/* 0AAEC4 800AA2C4 80A20212 */ lb $v0, 0x212($a1) -/* 0AAEC8 800AA2C8 3C01800F */ lui $at, %hi(D_800E87D0) # $at, 0x800f -/* 0AAECC 800AA2CC 1040000A */ beqz $v0, .L800AA2F8 -/* 0AAED0 800AA2D0 00000000 */ nop -/* 0AAED4 800AA2D4 24010001 */ li $at, 1 -/* 0AAED8 800AA2D8 1041000B */ beq $v0, $at, .L800AA308 -/* 0AAEDC 800AA2DC 24010002 */ li $at, 2 -/* 0AAEE0 800AA2E0 1041000E */ beq $v0, $at, .L800AA31C -/* 0AAEE4 800AA2E4 24010003 */ li $at, 3 -/* 0AAEE8 800AA2E8 1041000C */ beq $v0, $at, .L800AA31C -/* 0AAEEC 800AA2EC 00000000 */ nop -/* 0AAEF0 800AA2F0 10000015 */ b .L800AA348 -/* 0AAEF4 800AA2F4 8E470000 */ lw $a3, ($s2) -.L800AA2F8: -/* 0AAEF8 800AA2F8 C43087D0 */ lwc1 $f16, %lo(D_800E87D0)($at) -/* 0AAEFC 800AA2FC 8E4F0000 */ lw $t7, ($s2) -/* 0AAF00 800AA300 10000010 */ b .L800AA344 -/* 0AAF04 800AA304 E5F001E8 */ swc1 $f16, 0x1e8($t7) -.L800AA308: -/* 0AAF08 800AA308 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0AAF0C 800AA30C 44814000 */ mtc1 $at, $f8 -/* 0AAF10 800AA310 8E590000 */ lw $t9, ($s2) -/* 0AAF14 800AA314 1000000B */ b .L800AA344 -/* 0AAF18 800AA318 E72801E8 */ swc1 $f8, 0x1e8($t9) -.L800AA31C: -/* 0AAF1C 800AA31C 3C01800F */ lui $at, %hi(D_800E87D4) # $at, 0x800f -/* 0AAF20 800AA320 C42A87D4 */ lwc1 $f10, %lo(D_800E87D4)($at) -/* 0AAF24 800AA324 8E4E0000 */ lw $t6, ($s2) -/* 0AAF28 800AA328 10000006 */ b .L800AA344 -/* 0AAF2C 800AA32C E5CA01E8 */ swc1 $f10, 0x1e8($t6) -.L800AA330: -/* 0AAF30 800AA330 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0AAF34 800AA334 44813000 */ mtc1 $at, $f6 -/* 0AAF38 800AA338 8E580000 */ lw $t8, ($s2) -/* 0AAF3C 800AA33C 00000000 */ nop -/* 0AAF40 800AA340 E70601E8 */ swc1 $f6, 0x1e8($t8) -.L800AA344: -/* 0AAF44 800AA344 8E470000 */ lw $a3, ($s2) -.L800AA348: -/* 0AAF48 800AA348 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0AAF4C 800AA34C 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0AAF50 800AA350 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0AAF54 800AA354 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0AAF58 800AA358 0C02A980 */ jal func_800AA600 -/* 0AAF5C 800AA35C 24E701E0 */ addiu $a3, $a3, 0x1e0 -.L800AA360: -/* 0AAF60 800AA360 0C01EFC7 */ jal func_8007BF1C -/* 0AAF64 800AA364 00002025 */ move $a0, $zero -.L800AA368: -/* 0AAF68 800AA368 2631FFFC */ addiu $s1, $s1, -4 -/* 0AAF6C 800AA36C 0621FF52 */ bgez $s1, .L800AA0B8 -/* 0AAF70 800AA370 2610FFFC */ addiu $s0, $s0, -4 -.L800AA374: -/* 0AAF74 800AA374 8E880000 */ lw $t0, ($s4) -/* 0AAF78 800AA378 3C0DE700 */ lui $t5, 0xe700 -/* 0AAF7C 800AA37C 250C0008 */ addiu $t4, $t0, 8 -/* 0AAF80 800AA380 AE8C0000 */ sw $t4, ($s4) -/* 0AAF84 800AA384 00002025 */ move $a0, $zero -/* 0AAF88 800AA388 AD000004 */ sw $zero, 4($t0) -/* 0AAF8C 800AA38C 0C01A142 */ jal func_80068508 -/* 0AAF90 800AA390 AD0D0000 */ sw $t5, ($t0) -/* 0AAF94 800AA394 0C01EFC7 */ jal func_8007BF1C -/* 0AAF98 800AA398 24040001 */ li $a0, 1 -/* 0AAF9C 800AA39C 8E8B0000 */ lw $t3, ($s4) -/* 0AAFA0 800AA3A0 8FAA0160 */ lw $t2, 0x160($sp) -/* 0AAFA4 800AA3A4 3C0F8012 */ lui $t7, %hi(D_80126D00) # $t7, 0x8012 -/* 0AAFA8 800AA3A8 AD4B0000 */ sw $t3, ($t2) -/* 0AAFAC 800AA3AC 8FB90164 */ lw $t9, 0x164($sp) -/* 0AAFB0 800AA3B0 8DEF6D00 */ lw $t7, %lo(D_80126D00)($t7) -/* 0AAFB4 800AA3B4 3C0E8012 */ lui $t6, %hi(D_80126D04) # $t6, 0x8012 -/* 0AAFB8 800AA3B8 AF2F0000 */ sw $t7, ($t9) -/* 0AAFBC 800AA3BC 8FB80168 */ lw $t8, 0x168($sp) -/* 0AAFC0 800AA3C0 8DCE6D04 */ lw $t6, %lo(D_80126D04)($t6) -/* 0AAFC4 800AA3C4 00000000 */ nop -/* 0AAFC8 800AA3C8 AF0E0000 */ sw $t6, ($t8) -.L800AA3CC: -/* 0AAFCC 800AA3CC 8FBF003C */ lw $ra, 0x3c($sp) -.L800AA3D0: -/* 0AAFD0 800AA3D0 8FB00028 */ lw $s0, 0x28($sp) -/* 0AAFD4 800AA3D4 8FB1002C */ lw $s1, 0x2c($sp) -/* 0AAFD8 800AA3D8 8FB20030 */ lw $s2, 0x30($sp) -/* 0AAFDC 800AA3DC 8FB30034 */ lw $s3, 0x34($sp) -/* 0AAFE0 800AA3E0 8FB40038 */ lw $s4, 0x38($sp) -/* 0AAFE4 800AA3E4 03E00008 */ jr $ra -/* 0AAFE8 800AA3E8 27BD0160 */ addiu $sp, $sp, 0x160 - -glabel func_800AA3EC -/* 0AAFEC 800AA3EC 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0AAFF0 800AA3F0 AFBF0014 */ sw $ra, 0x14($sp) -/* 0AAFF4 800AA3F4 E7AC0030 */ swc1 $f12, 0x30($sp) -/* 0AAFF8 800AA3F8 E7AE0034 */ swc1 $f14, 0x34($sp) -/* 0AAFFC 800AA3FC AFA60038 */ sw $a2, 0x38($sp) -/* 0AB000 800AA400 0C00B1F1 */ jal func_8002C7C4 -/* 0AB004 800AA404 AFA7003C */ sw $a3, 0x3c($sp) -/* 0AB008 800AA408 3C014270 */ li $at, 0x42700000 # 60.000000 -/* 0AB00C 800AA40C 44812000 */ mtc1 $at, $f4 -/* 0AB010 800AA410 C7A60040 */ lwc1 $f6, 0x40($sp) -/* 0AB014 800AA414 8443003C */ lh $v1, 0x3c($v0) -/* 0AB018 800AA418 46062202 */ mul.s $f8, $f4, $f6 -/* 0AB01C 800AA41C 44832000 */ mtc1 $v1, $f4 -/* 0AB020 800AA420 C44A0028 */ lwc1 $f10, 0x28($v0) -/* 0AB024 800AA424 844E003E */ lh $t6, 0x3e($v0) -/* 0AB028 800AA428 468021A0 */ cvt.s.w $f6, $f4 -/* 0AB02C 800AA42C C7B20030 */ lwc1 $f18, 0x30($sp) -/* 0AB030 800AA430 01C33023 */ subu $a2, $t6, $v1 -/* 0AB034 800AA434 460A4402 */ mul.s $f16, $f8, $f10 -/* 0AB038 800AA438 46069201 */ sub.s $f8, $f18, $f6 -/* 0AB03C 800AA43C 44862000 */ mtc1 $a2, $f4 -/* 0AB040 800AA440 84440044 */ lh $a0, 0x44($v0) -/* 0AB044 800AA444 46088282 */ mul.s $f10, $f16, $f8 -/* 0AB048 800AA448 3C01C270 */ li $at, 0xC2700000 # -60.000000 -/* 0AB04C 800AA44C 44818000 */ mtc1 $at, $f16 -/* 0AB050 800AA450 C446002C */ lwc1 $f6, 0x2c($v0) -/* 0AB054 800AA454 468024A0 */ cvt.s.w $f18, $f4 -/* 0AB058 800AA458 844F0046 */ lh $t7, 0x46($v0) -/* 0AB05C 800AA45C C7A40034 */ lwc1 $f4, 0x34($sp) -/* 0AB060 800AA460 46125003 */ div.s $f0, $f10, $f18 -/* 0AB064 800AA464 44845000 */ mtc1 $a0, $f10 -/* 0AB068 800AA468 46103202 */ mul.s $f8, $f6, $f16 -/* 0AB06C 800AA46C 01E43823 */ subu $a3, $t7, $a0 -/* 0AB070 800AA470 AFA2002C */ sw $v0, 0x2c($sp) -/* 0AB074 800AA474 468054A0 */ cvt.s.w $f18, $f10 -/* 0AB078 800AA478 44875000 */ mtc1 $a3, $f10 -/* 0AB07C 800AA47C 46122181 */ sub.s $f6, $f4, $f18 -/* 0AB080 800AA480 E7A00020 */ swc1 $f0, 0x20($sp) -/* 0AB084 800AA484 46064402 */ mul.s $f16, $f8, $f6 -/* 0AB088 800AA488 46805120 */ cvt.s.w $f4, $f10 -/* 0AB08C 800AA48C 00000000 */ nop -/* 0AB090 800AA490 46048083 */ div.s $f2, $f16, $f4 -/* 0AB094 800AA494 0C0270C3 */ jal func_8009C30C -/* 0AB098 800AA498 E7A2001C */ swc1 $f2, 0x1c($sp) -/* 0AB09C 800AA49C 8FA5002C */ lw $a1, 0x2c($sp) -/* 0AB0A0 800AA4A0 C7A00020 */ lwc1 $f0, 0x20($sp) -/* 0AB0A4 800AA4A4 C7A2001C */ lwc1 $f2, 0x1c($sp) -/* 0AB0A8 800AA4A8 C7AC003C */ lwc1 $f12, 0x3c($sp) -/* 0AB0AC 800AA4AC C7AE0038 */ lwc1 $f14, 0x38($sp) -/* 0AB0B0 800AA4B0 30580004 */ andi $t8, $v0, 4 -/* 0AB0B4 800AA4B4 13000028 */ beqz $t8, .L800AA558 -/* 0AB0B8 800AA4B8 00000000 */ nop -/* 0AB0BC 800AA4BC 460C0482 */ mul.s $f18, $f0, $f12 -/* 0AB0C0 800AA4C0 3C198012 */ lui $t9, %hi(D_80126D58) # $t9, 0x8012 -/* 0AB0C4 800AA4C4 8F396D58 */ lw $t9, %lo(D_80126D58)($t9) -/* 0AB0C8 800AA4C8 84A80034 */ lh $t0, 0x34($a1) -/* 0AB0CC 800AA4CC 460E1202 */ mul.s $f8, $f2, $f14 -/* 0AB0D0 800AA4D0 44995000 */ mtc1 $t9, $f10 -/* 0AB0D4 800AA4D4 3C098012 */ lui $t1, %hi(D_80126D1C) # $t1, 0x8012 -/* 0AB0D8 800AA4D8 8D296D1C */ lw $t1, %lo(D_80126D1C)($t1) -/* 0AB0DC 800AA4DC 46805420 */ cvt.s.w $f16, $f10 -/* 0AB0E0 800AA4E0 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 -/* 0AB0E4 800AA4E4 24426CDC */ addiu $v0, %lo(D_80126CDC) # addiu $v0, $v0, 0x6cdc -/* 0AB0E8 800AA4E8 46089180 */ add.s $f6, $f18, $f8 -/* 0AB0EC 800AA4EC 44889000 */ mtc1 $t0, $f18 -/* 0AB0F0 800AA4F0 46068101 */ sub.s $f4, $f16, $f6 -/* 0AB0F4 800AA4F4 44898000 */ mtc1 $t1, $f16 -/* 0AB0F8 800AA4F8 46809220 */ cvt.s.w $f8, $f18 -/* 0AB0FC 800AA4FC 8C4A0000 */ lw $t2, ($v0) -/* 0AB100 800AA500 3C0C8012 */ lui $t4, %hi(D_80126D5C) # $t4, 0x8012 -/* 0AB104 800AA504 468081A0 */ cvt.s.w $f6, $f16 -/* 0AB108 800AA508 3C0E8012 */ lui $t6, %hi(D_80126D20) # $t6, 0x8012 -/* 0AB10C 800AA50C 46082280 */ add.s $f10, $f4, $f8 -/* 0AB110 800AA510 46065481 */ sub.s $f18, $f10, $f6 -/* 0AB114 800AA514 E55201EC */ swc1 $f18, 0x1ec($t2) -/* 0AB118 800AA518 460E0402 */ mul.s $f16, $f0, $f14 -/* 0AB11C 800AA51C 8D8C6D5C */ lw $t4, %lo(D_80126D5C)($t4) -/* 0AB120 800AA520 84AB0036 */ lh $t3, 0x36($a1) -/* 0AB124 800AA524 8DCE6D20 */ lw $t6, %lo(D_80126D20)($t6) -/* 0AB128 800AA528 460C1282 */ mul.s $f10, $f2, $f12 -/* 0AB12C 800AA52C 016C6821 */ addu $t5, $t3, $t4 -/* 0AB130 800AA530 448D2000 */ mtc1 $t5, $f4 -/* 0AB134 800AA534 8C4F0000 */ lw $t7, ($v0) -/* 0AB138 800AA538 46802220 */ cvt.s.w $f8, $f4 -/* 0AB13C 800AA53C 448E2000 */ mtc1 $t6, $f4 -/* 0AB140 800AA540 460A8181 */ sub.s $f6, $f16, $f10 -/* 0AB144 800AA544 46802420 */ cvt.s.w $f16, $f4 -/* 0AB148 800AA548 46064481 */ sub.s $f18, $f8, $f6 -/* 0AB14C 800AA54C 46109280 */ add.s $f10, $f18, $f16 -/* 0AB150 800AA550 10000027 */ b .L800AA5F0 -/* 0AB154 800AA554 E5EA01F0 */ swc1 $f10, 0x1f0($t7) -.L800AA558: -/* 0AB158 800AA558 460C0202 */ mul.s $f8, $f0, $f12 -/* 0AB15C 800AA55C 3C188012 */ lui $t8, %hi(D_80126D58) # $t8, 0x8012 -/* 0AB160 800AA560 8F186D58 */ lw $t8, %lo(D_80126D58)($t8) -/* 0AB164 800AA564 84B90030 */ lh $t9, 0x30($a1) -/* 0AB168 800AA568 460E1182 */ mul.s $f6, $f2, $f14 -/* 0AB16C 800AA56C 44989000 */ mtc1 $t8, $f18 -/* 0AB170 800AA570 3C088012 */ lui $t0, %hi(D_80126D1C) # $t0, 0x8012 -/* 0AB174 800AA574 8D086D1C */ lw $t0, %lo(D_80126D1C)($t0) -/* 0AB178 800AA578 46809420 */ cvt.s.w $f16, $f18 -/* 0AB17C 800AA57C 3C028012 */ lui $v0, %hi(D_80126CDC) # $v0, 0x8012 -/* 0AB180 800AA580 24426CDC */ addiu $v0, %lo(D_80126CDC) # addiu $v0, $v0, 0x6cdc -/* 0AB184 800AA584 46064100 */ add.s $f4, $f8, $f6 -/* 0AB188 800AA588 44994000 */ mtc1 $t9, $f8 -/* 0AB18C 800AA58C 46048280 */ add.s $f10, $f16, $f4 -/* 0AB190 800AA590 44888000 */ mtc1 $t0, $f16 -/* 0AB194 800AA594 468041A0 */ cvt.s.w $f6, $f8 -/* 0AB198 800AA598 8C490000 */ lw $t1, ($v0) -/* 0AB19C 800AA59C 3C0B8012 */ lui $t3, %hi(D_80126D5C) # $t3, 0x8012 -/* 0AB1A0 800AA5A0 46808120 */ cvt.s.w $f4, $f16 -/* 0AB1A4 800AA5A4 3C0D8012 */ lui $t5, %hi(D_80126D20) # $t5, 0x8012 -/* 0AB1A8 800AA5A8 46065480 */ add.s $f18, $f10, $f6 -/* 0AB1AC 800AA5AC 46049201 */ sub.s $f8, $f18, $f4 -/* 0AB1B0 800AA5B0 E52801EC */ swc1 $f8, 0x1ec($t1) -/* 0AB1B4 800AA5B4 460E0402 */ mul.s $f16, $f0, $f14 -/* 0AB1B8 800AA5B8 8D6B6D5C */ lw $t3, %lo(D_80126D5C)($t3) -/* 0AB1BC 800AA5BC 84AA0032 */ lh $t2, 0x32($a1) -/* 0AB1C0 800AA5C0 8DAD6D20 */ lw $t5, %lo(D_80126D20)($t5) -/* 0AB1C4 800AA5C4 460C1482 */ mul.s $f18, $f2, $f12 -/* 0AB1C8 800AA5C8 014B6021 */ addu $t4, $t2, $t3 -/* 0AB1CC 800AA5CC 448C5000 */ mtc1 $t4, $f10 -/* 0AB1D0 800AA5D0 8C4E0000 */ lw $t6, ($v0) -/* 0AB1D4 800AA5D4 468051A0 */ cvt.s.w $f6, $f10 -/* 0AB1D8 800AA5D8 448D5000 */ mtc1 $t5, $f10 -/* 0AB1DC 800AA5DC 46128101 */ sub.s $f4, $f16, $f18 -/* 0AB1E0 800AA5E0 46805420 */ cvt.s.w $f16, $f10 -/* 0AB1E4 800AA5E4 46043201 */ sub.s $f8, $f6, $f4 -/* 0AB1E8 800AA5E8 46104480 */ add.s $f18, $f8, $f16 -/* 0AB1EC 800AA5EC E5D201F0 */ swc1 $f18, 0x1f0($t6) -.L800AA5F0: -/* 0AB1F0 800AA5F0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0AB1F4 800AA5F4 27BD0030 */ addiu $sp, $sp, 0x30 -/* 0AB1F8 800AA5F8 03E00008 */ jr $ra -/* 0AB1FC 800AA5FC 00000000 */ nop - -glabel func_800AA600 -/* 0AB200 800AA600 27BDFF48 */ addiu $sp, $sp, -0xb8 -/* 0AB204 800AA604 AFBF002C */ sw $ra, 0x2c($sp) -/* 0AB208 800AA608 AFB00028 */ sw $s0, 0x28($sp) -/* 0AB20C 800AA60C AFA400B8 */ sw $a0, 0xb8($sp) -/* 0AB210 800AA610 AFA500BC */ sw $a1, 0xbc($sp) -/* 0AB214 800AA614 AFA600C0 */ sw $a2, 0xc0($sp) -/* 0AB218 800AA618 84E80006 */ lh $t0, 6($a3) -/* 0AB21C 800AA61C 3C038012 */ lui $v1, %hi(D_80126CF0) # $v1, 0x8012 -/* 0AB220 800AA620 8C636CF0 */ lw $v1, %lo(D_80126CF0)($v1) -/* 0AB224 800AA624 00087040 */ sll $t6, $t0, 1 -/* 0AB228 800AA628 006E7821 */ addu $t7, $v1, $t6 -/* 0AB22C 800AA62C 85F80000 */ lh $t8, ($t7) -/* 0AB230 800AA630 340AC000 */ li $t2, 49152 -/* 0AB234 800AA634 3302C000 */ andi $v0, $t8, 0xc000 -/* 0AB238 800AA638 00E08025 */ move $s0, $a3 -/* 0AB23C 800AA63C 15420007 */ bne $t2, $v0, .L800AA65C -/* 0AB240 800AA640 AFB80038 */ sw $t8, 0x38($sp) -/* 0AB244 800AA644 3C0B8012 */ lui $t3, %hi(D_80126CD0) # $t3, 0x8012 -/* 0AB248 800AA648 816B6CD0 */ lb $t3, %lo(D_80126CD0)($t3) -/* 0AB24C 800AA64C 00000000 */ nop -/* 0AB250 800AA650 000B6023 */ negu $t4, $t3 -/* 0AB254 800AA654 10000005 */ b .L800AA66C -/* 0AB258 800AA658 AFAC00A4 */ sw $t4, 0xa4($sp) -.L800AA65C: -/* 0AB25C 800AA65C 3C0D8012 */ lui $t5, %hi(D_80126CD0) # $t5, 0x8012 -/* 0AB260 800AA660 81AD6CD0 */ lb $t5, %lo(D_80126CD0)($t5) -/* 0AB264 800AA664 00000000 */ nop -/* 0AB268 800AA668 AFAD00A4 */ sw $t5, 0xa4($sp) -.L800AA66C: -/* 0AB26C 800AA66C 3C098012 */ lui $t1, %hi(D_80126CF4) # $t1, 0x8012 -/* 0AB270 800AA670 25296CF4 */ addiu $t1, %lo(D_80126CF4) # addiu $t1, $t1, 0x6cf4 -/* 0AB274 800AA674 8D2E0000 */ lw $t6, ($t1) -/* 0AB278 800AA678 00087880 */ sll $t7, $t0, 2 -/* 0AB27C 800AA67C 01CFC021 */ addu $t8, $t6, $t7 -/* 0AB280 800AA680 8F190000 */ lw $t9, ($t8) -/* 0AB284 800AA684 00000000 */ nop -/* 0AB288 800AA688 1720004A */ bnez $t9, .L800AA7B4 -/* 0AB28C 800AA68C 00000000 */ nop -/* 0AB290 800AA690 1542000F */ bne $t2, $v0, .L800AA6D0 -/* 0AB294 800AA694 8FB80038 */ lw $t8, 0x38($sp) -/* 0AB298 800AA698 8FA40038 */ lw $a0, 0x38($sp) -/* 0AB29C 800AA69C 00000000 */ nop -/* 0AB2A0 800AA6A0 308B3FFF */ andi $t3, $a0, 0x3fff -/* 0AB2A4 800AA6A4 0C01EB9D */ jal func_8007AE74 -/* 0AB2A8 800AA6A8 01602025 */ move $a0, $t3 -/* 0AB2AC 800AA6AC 3C098012 */ lui $t1, %hi(D_80126CF4) # $t1, 0x8012 -/* 0AB2B0 800AA6B0 860D0006 */ lh $t5, 6($s0) -/* 0AB2B4 800AA6B4 25296CF4 */ addiu $t1, %lo(D_80126CF4) # addiu $t1, $t1, 0x6cf4 -/* 0AB2B8 800AA6B8 8D2C0000 */ lw $t4, ($t1) -/* 0AB2BC 800AA6BC 000D7080 */ sll $t6, $t5, 2 -/* 0AB2C0 800AA6C0 018E7821 */ addu $t7, $t4, $t6 -/* 0AB2C4 800AA6C4 10000034 */ b .L800AA798 -/* 0AB2C8 800AA6C8 ADE20000 */ sw $v0, ($t7) -/* 0AB2CC 800AA6CC 8FB80038 */ lw $t8, 0x38($sp) -.L800AA6D0: -/* 0AB2D0 800AA6D0 8FAF0038 */ lw $t7, 0x38($sp) -/* 0AB2D4 800AA6D4 33198000 */ andi $t9, $t8, 0x8000 -/* 0AB2D8 800AA6D8 1320000B */ beqz $t9, .L800AA708 -/* 0AB2DC 800AA6DC 33043FFF */ andi $a0, $t8, 0x3fff -/* 0AB2E0 800AA6E0 0C01F04B */ jal func_8007C12C -/* 0AB2E4 800AA6E4 24050001 */ li $a1, 1 -/* 0AB2E8 800AA6E8 3C098012 */ lui $t1, %hi(D_80126CF4) # $t1, 0x8012 -/* 0AB2EC 800AA6EC 860D0006 */ lh $t5, 6($s0) -/* 0AB2F0 800AA6F0 25296CF4 */ addiu $t1, %lo(D_80126CF4) # addiu $t1, $t1, 0x6cf4 -/* 0AB2F4 800AA6F4 8D2B0000 */ lw $t3, ($t1) -/* 0AB2F8 800AA6F8 000D6080 */ sll $t4, $t5, 2 -/* 0AB2FC 800AA6FC 016C7021 */ addu $t6, $t3, $t4 -/* 0AB300 800AA700 10000025 */ b .L800AA798 -/* 0AB304 800AA704 ADC20000 */ sw $v0, ($t6) -.L800AA708: -/* 0AB308 800AA708 31F94000 */ andi $t9, $t7, 0x4000 -/* 0AB30C 800AA70C 13200018 */ beqz $t9, .L800AA770 -/* 0AB310 800AA710 01E0C025 */ move $t8, $t7 -/* 0AB314 800AA714 A3B8009C */ sb $t8, 0x9c($sp) -/* 0AB318 800AA718 860D0006 */ lh $t5, 6($s0) -/* 0AB31C 800AA71C 27A4009C */ addiu $a0, $sp, 0x9c -/* 0AB320 800AA720 000D5840 */ sll $t3, $t5, 1 -/* 0AB324 800AA724 006B6021 */ addu $t4, $v1, $t3 -/* 0AB328 800AA728 858E0000 */ lh $t6, ($t4) -/* 0AB32C 800AA72C A7A0009E */ sh $zero, 0x9e($sp) -/* 0AB330 800AA730 31D90100 */ andi $t9, $t6, 0x100 -/* 0AB334 800AA734 00197843 */ sra $t7, $t9, 1 -/* 0AB338 800AA738 35F80008 */ ori $t8, $t7, 8 -/* 0AB33C 800AA73C A3B8009D */ sb $t8, 0x9d($sp) -/* 0AB340 800AA740 A7A000A0 */ sh $zero, 0xa0($sp) -/* 0AB344 800AA744 A7A000A2 */ sh $zero, 0xa2($sp) -/* 0AB348 800AA748 0C003A95 */ jal func_8000EA54 -/* 0AB34C 800AA74C 00002825 */ move $a1, $zero -/* 0AB350 800AA750 3C098012 */ lui $t1, %hi(D_80126CF4) # $t1, 0x8012 -/* 0AB354 800AA754 860B0006 */ lh $t3, 6($s0) -/* 0AB358 800AA758 25296CF4 */ addiu $t1, %lo(D_80126CF4) # addiu $t1, $t1, 0x6cf4 -/* 0AB35C 800AA75C 8D2D0000 */ lw $t5, ($t1) -/* 0AB360 800AA760 000B6080 */ sll $t4, $t3, 2 -/* 0AB364 800AA764 01AC7021 */ addu $t6, $t5, $t4 -/* 0AB368 800AA768 1000000B */ b .L800AA798 -/* 0AB36C 800AA76C ADC20000 */ sw $v0, ($t6) -.L800AA770: -/* 0AB370 800AA770 8FA40038 */ lw $a0, 0x38($sp) -/* 0AB374 800AA774 0C017E67 */ jal func_8005F99C -/* 0AB378 800AA778 00002825 */ move $a1, $zero -/* 0AB37C 800AA77C 3C098012 */ lui $t1, %hi(D_80126CF4) # $t1, 0x8012 -/* 0AB380 800AA780 860F0006 */ lh $t7, 6($s0) -/* 0AB384 800AA784 25296CF4 */ addiu $t1, %lo(D_80126CF4) # addiu $t1, $t1, 0x6cf4 -/* 0AB388 800AA788 8D390000 */ lw $t9, ($t1) -/* 0AB38C 800AA78C 000FC080 */ sll $t8, $t7, 2 -/* 0AB390 800AA790 03385821 */ addu $t3, $t9, $t8 -/* 0AB394 800AA794 AD620000 */ sw $v0, ($t3) -.L800AA798: -/* 0AB398 800AA798 86080006 */ lh $t0, 6($s0) -/* 0AB39C 800AA79C 8D2D0000 */ lw $t5, ($t1) -/* 0AB3A0 800AA7A0 00086080 */ sll $t4, $t0, 2 -/* 0AB3A4 800AA7A4 01AC7021 */ addu $t6, $t5, $t4 -/* 0AB3A8 800AA7A8 8DCF0000 */ lw $t7, ($t6) -/* 0AB3AC 800AA7AC 00000000 */ nop -/* 0AB3B0 800AA7B0 11E00203 */ beqz $t7, .L800AAFC0 -.L800AA7B4: -/* 0AB3B4 800AA7B4 3C198012 */ lui $t9, %hi(D_80126CD8) # $t9, 0x8012 -/* 0AB3B8 800AA7B8 8F396CD8 */ lw $t9, %lo(D_80126CD8)($t9) -/* 0AB3BC 800AA7BC 3C018012 */ lui $at, %hi(D_80126CFC) # $at, 0x8012 -/* 0AB3C0 800AA7C0 0328C021 */ addu $t8, $t9, $t0 -/* 0AB3C4 800AA7C4 A3000000 */ sb $zero, ($t8) -/* 0AB3C8 800AA7C8 8FAB00B8 */ lw $t3, 0xb8($sp) -/* 0AB3CC 800AA7CC 8FAC00BC */ lw $t4, 0xbc($sp) -/* 0AB3D0 800AA7D0 8D6D0000 */ lw $t5, ($t3) -/* 0AB3D4 800AA7D4 8FAF00C0 */ lw $t7, 0xc0($sp) -/* 0AB3D8 800AA7D8 AC2D6CFC */ sw $t5, %lo(D_80126CFC)($at) -/* 0AB3DC 800AA7DC 8D8E0000 */ lw $t6, ($t4) -/* 0AB3E0 800AA7E0 3C018012 */ lui $at, %hi(D_80126D00) # $at, 0x8012 -/* 0AB3E4 800AA7E4 AC2E6D00 */ sw $t6, %lo(D_80126D00)($at) -/* 0AB3E8 800AA7E8 8DF90000 */ lw $t9, ($t7) -/* 0AB3EC 800AA7EC 3C018012 */ lui $at, %hi(D_80126D04) # $at, 0x8012 -/* 0AB3F0 800AA7F0 AC396D04 */ sw $t9, %lo(D_80126D04)($at) -/* 0AB3F4 800AA7F4 86080006 */ lh $t0, 6($s0) -/* 0AB3F8 800AA7F8 24010028 */ li $at, 40 -/* 0AB3FC 800AA7FC 11010021 */ beq $t0, $at, .L800AA884 -/* 0AB400 800AA800 340AC000 */ li $t2, 49152 -/* 0AB404 800AA804 2401000E */ li $at, 14 -/* 0AB408 800AA808 11010014 */ beq $t0, $at, .L800AA85C -/* 0AB40C 800AA80C 3C0C8012 */ lui $t4, %hi(D_80126D24) # $t4, 0x8012 -/* 0AB410 800AA810 2401001B */ li $at, 27 -/* 0AB414 800AA814 11010011 */ beq $t0, $at, .L800AA85C -/* 0AB418 800AA818 2901002F */ slti $at, $t0, 0x2f -/* 0AB41C 800AA81C 14200002 */ bnez $at, .L800AA828 -/* 0AB420 800AA820 29010036 */ slti $at, $t0, 0x36 -/* 0AB424 800AA824 1420000D */ bnez $at, .L800AA85C -.L800AA828: -/* 0AB428 800AA828 2401002E */ li $at, 46 -/* 0AB42C 800AA82C 1101000B */ beq $t0, $at, .L800AA85C -/* 0AB430 800AA830 3C188012 */ lui $t8, %hi(D_80126CD3) # $t8, 0x8012 -/* 0AB434 800AA834 83186CD3 */ lb $t8, %lo(D_80126CD3)($t8) -/* 0AB438 800AA838 8FAD00A4 */ lw $t5, 0xa4($sp) -/* 0AB43C 800AA83C 330B0001 */ andi $t3, $t8, 1 -/* 0AB440 800AA840 11600006 */ beqz $t3, .L800AA85C -/* 0AB444 800AA844 00000000 */ nop -/* 0AB448 800AA848 448D3000 */ mtc1 $t5, $f6 -/* 0AB44C 800AA84C C6040010 */ lwc1 $f4, 0x10($s0) -/* 0AB450 800AA850 46803220 */ cvt.s.w $f8, $f6 -/* 0AB454 800AA854 46082280 */ add.s $f10, $f4, $f8 -/* 0AB458 800AA858 E60A0010 */ swc1 $f10, 0x10($s0) -.L800AA85C: -/* 0AB45C 800AA85C 3C0E8012 */ lui $t6, %hi(D_80126D28) # $t6, 0x8012 -/* 0AB460 800AA860 8DCE6D28 */ lw $t6, %lo(D_80126D28)($t6) -/* 0AB464 800AA864 8D8C6D24 */ lw $t4, %lo(D_80126D24)($t4) -/* 0AB468 800AA868 C606000C */ lwc1 $f6, 0xc($s0) -/* 0AB46C 800AA86C 018E7821 */ addu $t7, $t4, $t6 -/* 0AB470 800AA870 448F8000 */ mtc1 $t7, $f16 -/* 0AB474 800AA874 86080006 */ lh $t0, 6($s0) -/* 0AB478 800AA878 468084A0 */ cvt.s.w $f18, $f16 -/* 0AB47C 800AA87C 46123100 */ add.s $f4, $f6, $f18 -/* 0AB480 800AA880 E604000C */ swc1 $f4, 0xc($s0) -.L800AA884: -/* 0AB484 800AA884 3C198012 */ lui $t9, %hi(D_80126CF0) # $t9, 0x8012 -/* 0AB488 800AA888 8F396CF0 */ lw $t9, %lo(D_80126CF0)($t9) -/* 0AB48C 800AA88C 0008C040 */ sll $t8, $t0, 1 -/* 0AB490 800AA890 03385821 */ addu $t3, $t9, $t8 -/* 0AB494 800AA894 85620000 */ lh $v0, ($t3) -/* 0AB498 800AA898 2901002F */ slti $at, $t0, 0x2f -/* 0AB49C 800AA89C 304DC000 */ andi $t5, $v0, 0xc000 -/* 0AB4A0 800AA8A0 154D0140 */ bne $t2, $t5, .L800AADA4 -/* 0AB4A4 800AA8A4 30598000 */ andi $t9, $v0, 0x8000 -/* 0AB4A8 800AA8A8 14200095 */ bnez $at, .L800AAB00 -/* 0AB4AC 800AA8AC 3C198012 */ lui $t9, 0x8012 -/* 0AB4B0 800AA8B0 29010036 */ slti $at, $t0, 0x36 -/* 0AB4B4 800AA8B4 10200092 */ beqz $at, .L800AAB00 -/* 0AB4B8 800AA8B8 3C048000 */ lui $a0, %hi(D_80000300) # $a0, 0x8000 -/* 0AB4BC 800AA8BC 8C840300 */ lw $a0, %lo(D_80000300)($a0) -/* 0AB4C0 800AA8C0 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 0AB4C4 800AA8C4 14800009 */ bnez $a0, .L800AA8EC -/* 0AB4C8 800AA8C8 3C0C8012 */ lui $t4, %hi(D_80126CD3) # $t4, 0x8012 -/* 0AB4CC 800AA8CC C6080010 */ lwc1 $f8, 0x10($s0) -/* 0AB4D0 800AA8D0 44815000 */ mtc1 $at, $f10 -/* 0AB4D4 800AA8D4 3C048000 */ lui $a0, %hi(D_80000300) # $a0, 0x8000 -/* 0AB4D8 800AA8D8 460A4401 */ sub.s $f16, $f8, $f10 -/* 0AB4DC 800AA8DC 86080006 */ lh $t0, 6($s0) -/* 0AB4E0 800AA8E0 E6100010 */ swc1 $f16, 0x10($s0) -/* 0AB4E4 800AA8E4 8C840300 */ lw $a0, %lo(D_80000300)($a0) -/* 0AB4E8 800AA8E8 00000000 */ nop -.L800AA8EC: -/* 0AB4EC 800AA8EC 818C6CD3 */ lb $t4, %lo(D_80126CD3)($t4) -/* 0AB4F0 800AA8F0 3C01437F */ li $at, 0x437F0000 # 255.000000 -/* 0AB4F4 800AA8F4 318E0002 */ andi $t6, $t4, 2 -/* 0AB4F8 800AA8F8 11C0001E */ beqz $t6, .L800AA974 -/* 0AB4FC 800AA8FC 240300FF */ li $v1, 255 -/* 0AB500 800AA900 3C0F8012 */ lui $t7, %hi(D_80126CD0) # $t7, 0x8012 -/* 0AB504 800AA904 81EF6CD0 */ lb $t7, %lo(D_80126CD0)($t7) -/* 0AB508 800AA908 3C198012 */ lui $t9, %hi(D_80126CD5) # $t9, 0x8012 -/* 0AB50C 800AA90C 448F3000 */ mtc1 $t7, $f6 -/* 0AB510 800AA910 9339718B */ lbu $t9, %lo(D_8012718B)($t9) -/* 0AB514 800AA914 468034A0 */ cvt.s.w $f18, $f6 -/* 0AB518 800AA918 44810000 */ mtc1 $at, $f0 -/* 0AB51C 800AA91C 44994000 */ mtc1 $t9, $f8 -/* 0AB520 800AA920 46009102 */ mul.s $f4, $f18, $f0 -/* 0AB524 800AA924 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0AB528 800AA928 07210004 */ bgez $t9, .L800AA93C -/* 0AB52C 800AA92C 468042A0 */ cvt.s.w $f10, $f8 -/* 0AB530 800AA930 44818000 */ mtc1 $at, $f16 -/* 0AB534 800AA934 00000000 */ nop -/* 0AB538 800AA938 46105280 */ add.s $f10, $f10, $f16 -.L800AA93C: -/* 0AB53C 800AA93C 00000000 */ nop -/* 0AB540 800AA940 460A2183 */ div.s $f6, $f4, $f10 -/* 0AB544 800AA944 46060481 */ sub.s $f18, $f0, $f6 -/* 0AB548 800AA948 4458F800 */ cfc1 $t8, $31 -/* 0AB54C 800AA94C 00000000 */ nop -/* 0AB550 800AA950 37010003 */ ori $at, $t8, 3 -/* 0AB554 800AA954 38210002 */ xori $at, $at, 2 -/* 0AB558 800AA958 44C1F800 */ ctc1 $at, $31 -/* 0AB55C 800AA95C 00000000 */ nop -/* 0AB560 800AA960 46009224 */ cvt.w.s $f8, $f18 -/* 0AB564 800AA964 44034000 */ mfc1 $v1, $f8 -/* 0AB568 800AA968 44D8F800 */ ctc1 $t8, $31 -/* 0AB56C 800AA96C 10000002 */ b .L800AA978 -/* 0AB570 800AA970 8D2B0000 */ lw $t3, ($t1) -.L800AA974: -/* 0AB574 800AA974 8D2B0000 */ lw $t3, ($t1) -.L800AA978: -/* 0AB578 800AA978 00086880 */ sll $t5, $t0, 2 -/* 0AB57C 800AA97C 016D6021 */ addu $t4, $t3, $t5 -/* 0AB580 800AA980 8D820000 */ lw $v0, ($t4) -/* 0AB584 800AA984 860E0018 */ lh $t6, 0x18($s0) -/* 0AB588 800AA988 844F0016 */ lh $t7, 0x16($v0) -/* 0AB58C 800AA98C 4458F800 */ cfc1 $t8, $31 -/* 0AB590 800AA990 01CF0019 */ multu $t6, $t7 -/* 0AB594 800AA994 37010003 */ ori $at, $t8, 3 -/* 0AB598 800AA998 38210002 */ xori $at, $at, 2 -/* 0AB59C 800AA99C 44C1F800 */ ctc1 $at, $31 -/* 0AB5A0 800AA9A0 240E00FF */ li $t6, 255 -/* 0AB5A4 800AA9A4 27A50088 */ addiu $a1, $sp, 0x88 -/* 0AB5A8 800AA9A8 00003025 */ move $a2, $zero -/* 0AB5AC 800AA9AC 00003825 */ move $a3, $zero -/* 0AB5B0 800AA9B0 0000C812 */ mflo $t9 -/* 0AB5B4 800AA9B4 00591021 */ addu $v0, $v0, $t9 -/* 0AB5B8 800AA9B8 AFA20088 */ sw $v0, 0x88($sp) -/* 0AB5BC 800AA9BC C610000C */ lwc1 $f16, 0xc($s0) -/* 0AB5C0 800AA9C0 00000000 */ nop -/* 0AB5C4 800AA9C4 46008124 */ cvt.w.s $f4, $f16 -/* 0AB5C8 800AA9C8 44D8F800 */ ctc1 $t8, $31 -/* 0AB5CC 800AA9CC 440B2000 */ mfc1 $t3, $f4 -/* 0AB5D0 800AA9D0 00000000 */ nop -/* 0AB5D4 800AA9D4 444DF800 */ cfc1 $t5, $31 -/* 0AB5D8 800AA9D8 A7AB008C */ sh $t3, 0x8c($sp) -/* 0AB5DC 800AA9DC 35A10003 */ ori $at, $t5, 3 -/* 0AB5E0 800AA9E0 38210002 */ xori $at, $at, 2 -/* 0AB5E4 800AA9E4 44C1F800 */ ctc1 $at, $31 -/* 0AB5E8 800AA9E8 C60A0010 */ lwc1 $f10, 0x10($s0) -/* 0AB5EC 800AA9EC AFA00090 */ sw $zero, 0x90($sp) -/* 0AB5F0 800AA9F0 460051A4 */ cvt.w.s $f6, $f10 -/* 0AB5F4 800AA9F4 440C3000 */ mfc1 $t4, $f6 -/* 0AB5F8 800AA9F8 44CDF800 */ ctc1 $t5, $31 -/* 0AB5FC 800AA9FC 1480002C */ bnez $a0, .L800AAAB0 -/* 0AB600 800AAA00 A7AC008E */ sh $t4, 0x8e($sp) -/* 0AB604 800AAA04 860E0006 */ lh $t6, 6($s0) -/* 0AB608 800AAA08 24010035 */ li $at, 53 -/* 0AB60C 800AAA0C 15C1001A */ bne $t6, $at, .L800AAA78 -/* 0AB610 800AAA10 3C048012 */ lui $a0, 0x8012 -/* 0AB614 800AAA14 240100FF */ li $at, 255 -/* 0AB618 800AAA18 14610003 */ bne $v1, $at, .L800AAA28 -/* 0AB61C 800AAA1C 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0AB620 800AAA20 10000003 */ b .L800AAA30 -/* 0AB624 800AAA24 2402FFFE */ li $v0, -2 -.L800AAA28: -/* 0AB628 800AAA28 2401FF00 */ li $at, -256 -/* 0AB62C 800AAA2C 00611025 */ or $v0, $v1, $at -.L800AAA30: -/* 0AB630 800AAA30 A7A0008C */ sh $zero, 0x8c($sp) -/* 0AB634 800AAA34 A7A0008E */ sh $zero, 0x8e($sp) -/* 0AB638 800AAA38 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0AB63C 800AAA3C 44819000 */ mtc1 $at, $f18 -/* 0AB640 800AAA40 8E070010 */ lw $a3, 0x10($s0) -/* 0AB644 800AAA44 8E06000C */ lw $a2, 0xc($s0) -/* 0AB648 800AAA48 3C01800F */ lui $at, %hi(D_800E87D8) # $at, 0x800f -/* 0AB64C 800AAA4C C42887D8 */ lwc1 $f8, %lo(D_800E87D8)($at) -/* 0AB650 800AAA50 240F0001 */ li $t7, 1 -/* 0AB654 800AAA54 AFAF001C */ sw $t7, 0x1c($sp) -/* 0AB658 800AAA58 AFA20018 */ sw $v0, 0x18($sp) -/* 0AB65C 800AAA5C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0AB660 800AAA60 27A50088 */ addiu $a1, $sp, 0x88 -/* 0AB664 800AAA64 E7B20010 */ swc1 $f18, 0x10($sp) -/* 0AB668 800AAA68 0C01E340 */ jal func_80078D00 -/* 0AB66C 800AAA6C E7A80014 */ swc1 $f8, 0x14($sp) -/* 0AB670 800AAA70 10000018 */ b .L800AAAD4 -/* 0AB674 800AAA74 00000000 */ nop -.L800AAA78: -/* 0AB678 800AAA78 241900FF */ li $t9, 255 -/* 0AB67C 800AAA7C 241800FF */ li $t8, 255 -/* 0AB680 800AAA80 240B00FF */ li $t3, 255 -/* 0AB684 800AAA84 AFAB0018 */ sw $t3, 0x18($sp) -/* 0AB688 800AAA88 AFB80014 */ sw $t8, 0x14($sp) -/* 0AB68C 800AAA8C AFB90010 */ sw $t9, 0x10($sp) -/* 0AB690 800AAA90 24846CFC */ addiu $a0, $a0, 0x6cfc -/* 0AB694 800AAA94 27A50088 */ addiu $a1, $sp, 0x88 -/* 0AB698 800AAA98 00003025 */ move $a2, $zero -/* 0AB69C 800AAA9C 00003825 */ move $a3, $zero -/* 0AB6A0 800AAAA0 0C01E2AE */ jal func_80078AB8 -/* 0AB6A4 800AAAA4 AFA3001C */ sw $v1, 0x1c($sp) -/* 0AB6A8 800AAAA8 1000000A */ b .L800AAAD4 -/* 0AB6AC 800AAAAC 00000000 */ nop -.L800AAAB0: -/* 0AB6B0 800AAAB0 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0AB6B4 800AAAB4 240D00FF */ li $t5, 255 -/* 0AB6B8 800AAAB8 240C00FF */ li $t4, 255 -/* 0AB6BC 800AAABC AFAC0014 */ sw $t4, 0x14($sp) -/* 0AB6C0 800AAAC0 AFAD0010 */ sw $t5, 0x10($sp) -/* 0AB6C4 800AAAC4 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0AB6C8 800AAAC8 AFAE0018 */ sw $t6, 0x18($sp) -/* 0AB6CC 800AAACC 0C01E2AE */ jal func_80078AB8 -/* 0AB6D0 800AAAD0 AFA3001C */ sw $v1, 0x1c($sp) -.L800AAAD4: -/* 0AB6D4 800AAAD4 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 -/* 0AB6D8 800AAAD8 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) -/* 0AB6DC 800AAADC 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 0AB6E0 800AAAE0 15E00107 */ bnez $t7, .L800AAF00 -/* 0AB6E4 800AAAE4 00000000 */ nop -/* 0AB6E8 800AAAE8 C6100010 */ lwc1 $f16, 0x10($s0) -/* 0AB6EC 800AAAEC 44812000 */ mtc1 $at, $f4 -/* 0AB6F0 800AAAF0 00000000 */ nop -/* 0AB6F4 800AAAF4 46048280 */ add.s $f10, $f16, $f4 -/* 0AB6F8 800AAAF8 10000101 */ b .L800AAF00 -/* 0AB6FC 800AAAFC E60A0010 */ swc1 $f10, 0x10($s0) -.L800AAB00: -/* 0AB700 800AAB00 83396CD5 */ lb $t9, %lo(D_80126CD5)($t9) -/* 0AB704 800AAB04 3C188000 */ lui $t8, %hi(D_80000300) # $t8, 0x8000 -/* 0AB708 800AAB08 13200028 */ beqz $t9, .L800AABAC -/* 0AB70C 800AAB0C 3C013FF0 */ lui $at, 0x3ff0 -/* 0AB710 800AAB10 8F180300 */ lw $t8, %lo(D_80000300)($t8) -/* 0AB714 800AAB14 00000000 */ nop -/* 0AB718 800AAB18 17000024 */ bnez $t8, .L800AABAC -/* 0AB71C 800AAB1C 00000000 */ nop -/* 0AB720 800AAB20 8D2B0000 */ lw $t3, ($t1) -/* 0AB724 800AAB24 00086880 */ sll $t5, $t0, 2 -/* 0AB728 800AAB28 016D6021 */ addu $t4, $t3, $t5 -/* 0AB72C 800AAB2C 8D820000 */ lw $v0, ($t4) -/* 0AB730 800AAB30 860E0018 */ lh $t6, 0x18($s0) -/* 0AB734 800AAB34 844F0016 */ lh $t7, 0x16($v0) -/* 0AB738 800AAB38 A7A00074 */ sh $zero, 0x74($sp) -/* 0AB73C 800AAB3C 01CF0019 */ multu $t6, $t7 -/* 0AB740 800AAB40 A7A00076 */ sh $zero, 0x76($sp) -/* 0AB744 800AAB44 AFA00078 */ sw $zero, 0x78($sp) -/* 0AB748 800AAB48 3C01800F */ li $at, 0x800F0000 # -0.000000 -/* 0AB74C 800AAB4C C43387E0 */ lwc1 $f19, %lo(D_800E87E0)($at) -/* 0AB750 800AAB50 C43287E4 */ lwc1 $f18, %lo(D_800E87E4)($at) -/* 0AB754 800AAB54 3C18800E */ lui $t8, %hi(D_800E2834) # $t8, 0x800e -/* 0AB758 800AAB58 8F182834 */ lw $t8, %lo(D_800E2834)($t8) -/* 0AB75C 800AAB5C 240B0001 */ li $t3, 1 -/* 0AB760 800AAB60 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0AB764 800AAB64 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0AB768 800AAB68 27A50070 */ addiu $a1, $sp, 0x70 -/* 0AB76C 800AAB6C 0000C812 */ mflo $t9 -/* 0AB770 800AAB70 00591021 */ addu $v0, $v0, $t9 -/* 0AB774 800AAB74 AFA20070 */ sw $v0, 0x70($sp) -/* 0AB778 800AAB78 C6000008 */ lwc1 $f0, 8($s0) -/* 0AB77C 800AAB7C 8E070010 */ lw $a3, 0x10($s0) -/* 0AB780 800AAB80 460001A1 */ cvt.d.s $f6, $f0 -/* 0AB784 800AAB84 46323202 */ mul.d $f8, $f6, $f18 -/* 0AB788 800AAB88 8E06000C */ lw $a2, 0xc($s0) -/* 0AB78C 800AAB8C AFAB001C */ sw $t3, 0x1c($sp) -/* 0AB790 800AAB90 AFB80018 */ sw $t8, 0x18($sp) -/* 0AB794 800AAB94 E7A00010 */ swc1 $f0, 0x10($sp) -/* 0AB798 800AAB98 46204420 */ cvt.s.d $f16, $f8 -/* 0AB79C 800AAB9C 0C01E340 */ jal func_80078D00 -/* 0AB7A0 800AABA0 E7B00014 */ swc1 $f16, 0x14($sp) -/* 0AB7A4 800AABA4 100000D7 */ b .L800AAF04 -/* 0AB7A8 800AABA8 86080006 */ lh $t0, 6($s0) -.L800AABAC: -/* 0AB7AC 800AABAC C60A0008 */ lwc1 $f10, 8($s0) -/* 0AB7B0 800AABB0 44812800 */ mtc1 $at, $f5 -/* 0AB7B4 800AABB4 44802000 */ mtc1 $zero, $f4 -/* 0AB7B8 800AABB8 460051A1 */ cvt.d.s $f6, $f10 -/* 0AB7BC 800AABBC 46262032 */ c.eq.d $f4, $f6 -/* 0AB7C0 800AABC0 00000000 */ nop -/* 0AB7C4 800AABC4 45000057 */ bc1f .L800AAD24 -/* 0AB7C8 800AABC8 00000000 */ nop -/* 0AB7CC 800AABCC 8D2D0000 */ lw $t5, ($t1) -/* 0AB7D0 800AABD0 00086080 */ sll $t4, $t0, 2 -/* 0AB7D4 800AABD4 01AC7021 */ addu $t6, $t5, $t4 -/* 0AB7D8 800AABD8 8DC30000 */ lw $v1, ($t6) -/* 0AB7DC 800AABDC 860F0018 */ lh $t7, 0x18($s0) -/* 0AB7E0 800AABE0 84790016 */ lh $t9, 0x16($v1) -/* 0AB7E4 800AABE4 3C02800E */ lui $v0, %hi(D_800E2834) # $v0, 0x800e -/* 0AB7E8 800AABE8 01F90019 */ multu $t7, $t9 -/* 0AB7EC 800AABEC 8C422834 */ lw $v0, %lo(D_800E2834)($v0) -/* 0AB7F0 800AABF0 2401FFFE */ li $at, -2 -/* 0AB7F4 800AABF4 3C058012 */ lui $a1, %hi(D_80127180) # $a1, 0x8012 -/* 0AB7F8 800AABF8 3C0D8012 */ lui $t5, %hi(D_80126D80) # $t5, 0x8012 -/* 0AB7FC 800AABFC 24A57180 */ addiu $a1, %lo(D_80127180) # addiu $a1, $a1, 0x7180 -/* 0AB800 800AAC00 25AD6D80 */ addiu $t5, %lo(D_80126D80) # addiu $t5, $t5, 0x6d80 -/* 0AB804 800AAC04 0000C012 */ mflo $t8 -/* 0AB808 800AAC08 00781821 */ addu $v1, $v1, $t8 -/* 0AB80C 800AAC0C 1441001B */ bne $v0, $at, .L800AAC7C -/* 0AB810 800AAC10 00000000 */ nop -/* 0AB814 800AAC14 8CA40000 */ lw $a0, ($a1) -/* 0AB818 800AAC18 444CF800 */ cfc1 $t4, $31 -/* 0AB81C 800AAC1C 000458C0 */ sll $t3, $a0, 3 -/* 0AB820 800AAC20 016D1021 */ addu $v0, $t3, $t5 -/* 0AB824 800AAC24 35810003 */ ori $at, $t4, 3 -/* 0AB828 800AAC28 AC430000 */ sw $v1, ($v0) -/* 0AB82C 800AAC2C 38210002 */ xori $at, $at, 2 -/* 0AB830 800AAC30 44C1F800 */ ctc1 $at, $31 -/* 0AB834 800AAC34 C612000C */ lwc1 $f18, 0xc($s0) -/* 0AB838 800AAC38 24980001 */ addiu $t8, $a0, 1 -/* 0AB83C 800AAC3C 46009224 */ cvt.w.s $f8, $f18 -/* 0AB840 800AAC40 44CCF800 */ ctc1 $t4, $31 -/* 0AB844 800AAC44 440E4000 */ mfc1 $t6, $f8 -/* 0AB848 800AAC48 00000000 */ nop -/* 0AB84C 800AAC4C 444FF800 */ cfc1 $t7, $31 -/* 0AB850 800AAC50 A44E0004 */ sh $t6, 4($v0) -/* 0AB854 800AAC54 35E10003 */ ori $at, $t7, 3 -/* 0AB858 800AAC58 38210002 */ xori $at, $at, 2 -/* 0AB85C 800AAC5C 44C1F800 */ ctc1 $at, $31 -/* 0AB860 800AAC60 C6100010 */ lwc1 $f16, 0x10($s0) -/* 0AB864 800AAC64 ACB80000 */ sw $t8, ($a1) -/* 0AB868 800AAC68 460082A4 */ cvt.w.s $f10, $f16 -/* 0AB86C 800AAC6C 44195000 */ mfc1 $t9, $f10 -/* 0AB870 800AAC70 44CFF800 */ ctc1 $t7, $31 -/* 0AB874 800AAC74 100000A2 */ b .L800AAF00 -/* 0AB878 800AAC78 A4590006 */ sh $t9, 6($v0) -.L800AAC7C: -/* 0AB87C 800AAC7C 444BF800 */ cfc1 $t3, $31 -/* 0AB880 800AAC80 AFA30058 */ sw $v1, 0x58($sp) -/* 0AB884 800AAC84 35610003 */ ori $at, $t3, 3 -/* 0AB888 800AAC88 38210002 */ xori $at, $at, 2 -/* 0AB88C 800AAC8C 44C1F800 */ ctc1 $at, $31 -/* 0AB890 800AAC90 C604000C */ lwc1 $f4, 0xc($s0) -/* 0AB894 800AAC94 00027E02 */ srl $t7, $v0, 0x18 -/* 0AB898 800AAC98 460021A4 */ cvt.w.s $f6, $f4 -/* 0AB89C 800AAC9C 0002C402 */ srl $t8, $v0, 0x10 -/* 0AB8A0 800AACA0 44CBF800 */ ctc1 $t3, $31 -/* 0AB8A4 800AACA4 440D3000 */ mfc1 $t5, $f6 -/* 0AB8A8 800AACA8 330B00FF */ andi $t3, $t8, 0xff -/* 0AB8AC 800AACAC 444CF800 */ cfc1 $t4, $31 -/* 0AB8B0 800AACB0 A7AD005C */ sh $t5, 0x5c($sp) -/* 0AB8B4 800AACB4 35810003 */ ori $at, $t4, 3 -/* 0AB8B8 800AACB8 38210002 */ xori $at, $at, 2 -/* 0AB8BC 800AACBC 44C1F800 */ ctc1 $at, $31 -/* 0AB8C0 800AACC0 C6120010 */ lwc1 $f18, 0x10($s0) -/* 0AB8C4 800AACC4 00026A02 */ srl $t5, $v0, 8 -/* 0AB8C8 800AACC8 46009224 */ cvt.w.s $f8, $f18 -/* 0AB8CC 800AACCC 31F900FF */ andi $t9, $t7, 0xff -/* 0AB8D0 800AACD0 440E4000 */ mfc1 $t6, $f8 -/* 0AB8D4 800AACD4 44CCF800 */ ctc1 $t4, $31 -/* 0AB8D8 800AACD8 A7AE005E */ sh $t6, 0x5e($sp) -/* 0AB8DC 800AACDC 304E00FF */ andi $t6, $v0, 0xff -/* 0AB8E0 800AACE0 31AC00FF */ andi $t4, $t5, 0xff -/* 0AB8E4 800AACE4 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0AB8E8 800AACE8 AFA00060 */ sw $zero, 0x60($sp) -/* 0AB8EC 800AACEC 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0AB8F0 800AACF0 AFAC0018 */ sw $t4, 0x18($sp) -/* 0AB8F4 800AACF4 AFAE001C */ sw $t6, 0x1c($sp) -/* 0AB8F8 800AACF8 AFB90010 */ sw $t9, 0x10($sp) -/* 0AB8FC 800AACFC AFAB0014 */ sw $t3, 0x14($sp) -/* 0AB900 800AAD00 27A50058 */ addiu $a1, $sp, 0x58 -/* 0AB904 800AAD04 00003025 */ move $a2, $zero -/* 0AB908 800AAD08 0C01E2AE */ jal func_80078AB8 -/* 0AB90C 800AAD0C 00003825 */ move $a3, $zero -/* 0AB910 800AAD10 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0AB914 800AAD14 0C01ECF4 */ jal func_8007B3D0 -/* 0AB918 800AAD18 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0AB91C 800AAD1C 10000079 */ b .L800AAF04 -/* 0AB920 800AAD20 86080006 */ lh $t0, 6($s0) -.L800AAD24: -/* 0AB924 800AAD24 8D2F0000 */ lw $t7, ($t1) -/* 0AB928 800AAD28 0008C880 */ sll $t9, $t0, 2 -/* 0AB92C 800AAD2C 01F9C021 */ addu $t8, $t7, $t9 -/* 0AB930 800AAD30 8F020000 */ lw $v0, ($t8) -/* 0AB934 800AAD34 860B0018 */ lh $t3, 0x18($s0) -/* 0AB938 800AAD38 844D0016 */ lh $t5, 0x16($v0) -/* 0AB93C 800AAD3C A7A0004C */ sh $zero, 0x4c($sp) -/* 0AB940 800AAD40 016D0019 */ multu $t3, $t5 -/* 0AB944 800AAD44 A7A0004E */ sh $zero, 0x4e($sp) -/* 0AB948 800AAD48 AFA00050 */ sw $zero, 0x50($sp) -/* 0AB94C 800AAD4C 3C0E800E */ lui $t6, %hi(D_800E2834) # $t6, 0x800e -/* 0AB950 800AAD50 8DCE2834 */ lw $t6, %lo(D_800E2834)($t6) -/* 0AB954 800AAD54 240F0001 */ li $t7, 1 -/* 0AB958 800AAD58 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0AB95C 800AAD5C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0AB960 800AAD60 27A50048 */ addiu $a1, $sp, 0x48 -/* 0AB964 800AAD64 00006012 */ mflo $t4 -/* 0AB968 800AAD68 004C1021 */ addu $v0, $v0, $t4 -/* 0AB96C 800AAD6C AFA20048 */ sw $v0, 0x48($sp) -/* 0AB970 800AAD70 C6000008 */ lwc1 $f0, 8($s0) -/* 0AB974 800AAD74 8E070010 */ lw $a3, 0x10($s0) -/* 0AB978 800AAD78 8E06000C */ lw $a2, 0xc($s0) -/* 0AB97C 800AAD7C AFAF001C */ sw $t7, 0x1c($sp) -/* 0AB980 800AAD80 AFAE0018 */ sw $t6, 0x18($sp) -/* 0AB984 800AAD84 E7A00014 */ swc1 $f0, 0x14($sp) -/* 0AB988 800AAD88 0C01E340 */ jal func_80078D00 -/* 0AB98C 800AAD8C E7A00010 */ swc1 $f0, 0x10($sp) -/* 0AB990 800AAD90 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0AB994 800AAD94 0C01ECF4 */ jal func_8007B3D0 -/* 0AB998 800AAD98 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0AB99C 800AAD9C 10000059 */ b .L800AAF04 -/* 0AB9A0 800AADA0 86080006 */ lh $t0, 6($s0) -.L800AADA4: -/* 0AB9A4 800AADA4 13200020 */ beqz $t9, .L800AAE28 -/* 0AB9A8 800AADA8 304E4000 */ andi $t6, $v0, 0x4000 -/* 0AB9AC 800AADAC 0C01A748 */ jal func_80069D20 -/* 0AB9B0 800AADB0 00000000 */ nop -/* 0AB9B4 800AADB4 3C098012 */ lui $t1, %hi(D_80126CF4) # $t1, 0x8012 -/* 0AB9B8 800AADB8 AFA200A8 */ sw $v0, 0xa8($sp) -/* 0AB9BC 800AADBC 860B0006 */ lh $t3, 6($s0) -/* 0AB9C0 800AADC0 25296CF4 */ addiu $t1, %lo(D_80126CF4) # addiu $t1, $t1, 0x6cf4 -/* 0AB9C4 800AADC4 8D380000 */ lw $t8, ($t1) -/* 0AB9C8 800AADC8 000B6880 */ sll $t5, $t3, 2 -/* 0AB9CC 800AADCC 860E0004 */ lh $t6, 4($s0) -/* 0AB9D0 800AADD0 844F0004 */ lh $t7, 4($v0) -/* 0AB9D4 800AADD4 030D6021 */ addu $t4, $t8, $t5 -/* 0AB9D8 800AADD8 8D830000 */ lw $v1, ($t4) -/* 0AB9DC 800AADDC 01CFC823 */ subu $t9, $t6, $t7 -/* 0AB9E0 800AADE0 A6190004 */ sh $t9, 4($s0) -/* 0AB9E4 800AADE4 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0AB9E8 800AADE8 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0AB9EC 800AADEC 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0AB9F0 800AADF0 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0AB9F4 800AADF4 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0AB9F8 800AADF8 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0AB9FC 800AADFC AFA00014 */ sw $zero, 0x14($sp) -/* 0ABA00 800AAE00 02003825 */ move $a3, $s0 -/* 0ABA04 800AAE04 0C01A2FD */ jal func_80068BF4 -/* 0ABA08 800AAE08 AFA30010 */ sw $v1, 0x10($sp) -/* 0ABA0C 800AAE0C 8FB800A8 */ lw $t8, 0xa8($sp) -/* 0ABA10 800AAE10 860B0004 */ lh $t3, 4($s0) -/* 0ABA14 800AAE14 870D0004 */ lh $t5, 4($t8) -/* 0ABA18 800AAE18 00000000 */ nop -/* 0ABA1C 800AAE1C 016D6021 */ addu $t4, $t3, $t5 -/* 0ABA20 800AAE20 10000037 */ b .L800AAF00 -/* 0ABA24 800AAE24 A60C0004 */ sh $t4, 4($s0) -.L800AAE28: -/* 0ABA28 800AAE28 11C0001F */ beqz $t6, .L800AAEA8 -/* 0ABA2C 800AAE2C 3C048012 */ lui $a0, 0x8012 -/* 0ABA30 800AAE30 8D2F0000 */ lw $t7, ($t1) -/* 0ABA34 800AAE34 0008C880 */ sll $t9, $t0, 2 -/* 0ABA38 800AAE38 01F9C021 */ addu $t8, $t7, $t9 -/* 0ABA3C 800AAE3C 8F070000 */ lw $a3, ($t8) -/* 0ABA40 800AAE40 860B0000 */ lh $t3, ($s0) -/* 0ABA44 800AAE44 240E00FF */ li $t6, 255 -/* 0ABA48 800AAE48 A4EB0000 */ sh $t3, ($a3) -/* 0ABA4C 800AAE4C 860D0002 */ lh $t5, 2($s0) -/* 0ABA50 800AAE50 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0ABA54 800AAE54 A4ED0002 */ sh $t5, 2($a3) -/* 0ABA58 800AAE58 860C0004 */ lh $t4, 4($s0) -/* 0ABA5C 800AAE5C 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0ABA60 800AAE60 A4EC0004 */ sh $t4, 4($a3) -/* 0ABA64 800AAE64 C610000C */ lwc1 $f16, 0xc($s0) -/* 0ABA68 800AAE68 3C068012 */ lui $a2, %hi(D_80126D04) # $a2, 0x8012 -/* 0ABA6C 800AAE6C E4F0000C */ swc1 $f16, 0xc($a3) -/* 0ABA70 800AAE70 C60A0010 */ lwc1 $f10, 0x10($s0) -/* 0ABA74 800AAE74 24C66D04 */ addiu $a2, %lo(D_80126D04) # addiu $a2, $a2, 0x6d04 -/* 0ABA78 800AAE78 E4EA0010 */ swc1 $f10, 0x10($a3) -/* 0ABA7C 800AAE7C C6040014 */ lwc1 $f4, 0x14($s0) -/* 0ABA80 800AAE80 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0ABA84 800AAE84 E4E40014 */ swc1 $f4, 0x14($a3) -/* 0ABA88 800AAE88 C6060008 */ lwc1 $f6, 8($s0) -/* 0ABA8C 800AAE8C 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -/* 0ABA90 800AAE90 A0E0003A */ sb $zero, 0x3a($a3) -/* 0ABA94 800AAE94 A0EE0039 */ sb $t6, 0x39($a3) -/* 0ABA98 800AAE98 0C004B57 */ jal func_80012D5C -/* 0ABA9C 800AAE9C E4E60008 */ swc1 $f6, 8($a3) -/* 0ABAA0 800AAEA0 10000018 */ b .L800AAF04 -/* 0ABAA4 800AAEA4 86080006 */ lh $t0, 6($s0) -.L800AAEA8: -/* 0ABAA8 800AAEA8 44809000 */ mtc1 $zero, $f18 -/* 0ABAAC 800AAEAC 3C058012 */ lui $a1, %hi(D_80126D00) # $a1, 0x8012 -/* 0ABAB0 800AAEB0 24A56D00 */ addiu $a1, %lo(D_80126D00) # addiu $a1, $a1, 0x6d00 -/* 0ABAB4 800AAEB4 24846CFC */ addiu $a0, $a0, 0x6cfc -/* 0ABAB8 800AAEB8 02003025 */ move $a2, $s0 -/* 0ABABC 800AAEBC 3C073F80 */ lui $a3, 0x3f80 -/* 0ABAC0 800AAEC0 0C01A521 */ jal func_80069484 -/* 0ABAC4 800AAEC4 E7B20010 */ swc1 $f18, 0x10($sp) -/* 0ABAC8 800AAEC8 3C098012 */ lui $t1, %hi(D_80126CF4) # $t1, 0x8012 -/* 0ABACC 800AAECC 86190006 */ lh $t9, 6($s0) -/* 0ABAD0 800AAED0 25296CF4 */ addiu $t1, %lo(D_80126CF4) # addiu $t1, $t1, 0x6cf4 -/* 0ABAD4 800AAED4 8D2F0000 */ lw $t7, ($t1) -/* 0ABAD8 800AAED8 0019C080 */ sll $t8, $t9, 2 -/* 0ABADC 800AAEDC 01F85821 */ addu $t3, $t7, $t8 -/* 0ABAE0 800AAEE0 8D620000 */ lw $v0, ($t3) -/* 0ABAE4 800AAEE4 00000000 */ nop -/* 0ABAE8 800AAEE8 8C440000 */ lw $a0, ($v0) -/* 0ABAEC 800AAEEC 0C02ABF4 */ jal func_800AAFD0 -/* 0ABAF0 800AAEF0 00000000 */ nop -/* 0ABAF4 800AAEF4 3C048012 */ lui $a0, %hi(D_80126CFC) # $a0, 0x8012 -/* 0ABAF8 800AAEF8 0C01A690 */ jal func_80069A40 -/* 0ABAFC 800AAEFC 24846CFC */ addiu $a0, %lo(D_80126CFC) # addiu $a0, $a0, 0x6cfc -.L800AAF00: -/* 0ABB00 800AAF00 86080006 */ lh $t0, 6($s0) -.L800AAF04: -/* 0ABB04 800AAF04 24010028 */ li $at, 40 -/* 0ABB08 800AAF08 11010021 */ beq $t0, $at, .L800AAF90 -/* 0ABB0C 800AAF0C 3C0B8012 */ lui $t3, %hi(D_80126CFC) # $t3, 0x8012 -/* 0ABB10 800AAF10 2401000E */ li $at, 14 -/* 0ABB14 800AAF14 11010014 */ beq $t0, $at, .L800AAF68 -/* 0ABB18 800AAF18 3C198012 */ lui $t9, %hi(D_80126D24) # $t9, 0x8012 -/* 0ABB1C 800AAF1C 2401001B */ li $at, 27 -/* 0ABB20 800AAF20 11010011 */ beq $t0, $at, .L800AAF68 -/* 0ABB24 800AAF24 2901002F */ slti $at, $t0, 0x2f -/* 0ABB28 800AAF28 14200002 */ bnez $at, .L800AAF34 -/* 0ABB2C 800AAF2C 29010036 */ slti $at, $t0, 0x36 -/* 0ABB30 800AAF30 1420000D */ bnez $at, .L800AAF68 -.L800AAF34: -/* 0ABB34 800AAF34 2401002E */ li $at, 46 -/* 0ABB38 800AAF38 1101000B */ beq $t0, $at, .L800AAF68 -/* 0ABB3C 800AAF3C 3C0D8012 */ lui $t5, %hi(D_80126CD3) # $t5, 0x8012 -/* 0ABB40 800AAF40 81AD6CD3 */ lb $t5, %lo(D_80126CD3)($t5) -/* 0ABB44 800AAF44 8FAE00A4 */ lw $t6, 0xa4($sp) -/* 0ABB48 800AAF48 31AC0001 */ andi $t4, $t5, 1 -/* 0ABB4C 800AAF4C 11800006 */ beqz $t4, .L800AAF68 -/* 0ABB50 800AAF50 00000000 */ nop -/* 0ABB54 800AAF54 448E8000 */ mtc1 $t6, $f16 -/* 0ABB58 800AAF58 C6080010 */ lwc1 $f8, 0x10($s0) -/* 0ABB5C 800AAF5C 468082A0 */ cvt.s.w $f10, $f16 -/* 0ABB60 800AAF60 460A4101 */ sub.s $f4, $f8, $f10 -/* 0ABB64 800AAF64 E6040010 */ swc1 $f4, 0x10($s0) -.L800AAF68: -/* 0ABB68 800AAF68 3C0F8012 */ lui $t7, %hi(D_80126D28) # $t7, 0x8012 -/* 0ABB6C 800AAF6C 8DEF6D28 */ lw $t7, %lo(D_80126D28)($t7) -/* 0ABB70 800AAF70 8F396D24 */ lw $t9, %lo(D_80126D24)($t9) -/* 0ABB74 800AAF74 C610000C */ lwc1 $f16, 0xc($s0) -/* 0ABB78 800AAF78 032FC021 */ addu $t8, $t9, $t7 -/* 0ABB7C 800AAF7C 44983000 */ mtc1 $t8, $f6 -/* 0ABB80 800AAF80 00000000 */ nop -/* 0ABB84 800AAF84 468034A0 */ cvt.s.w $f18, $f6 -/* 0ABB88 800AAF88 46128201 */ sub.s $f8, $f16, $f18 -/* 0ABB8C 800AAF8C E608000C */ swc1 $f8, 0xc($s0) -.L800AAF90: -/* 0ABB90 800AAF90 8D6B6CFC */ lw $t3, %lo(D_80126CFC)($t3) -/* 0ABB94 800AAF94 8FAD00B8 */ lw $t5, 0xb8($sp) -/* 0ABB98 800AAF98 3C0C8012 */ lui $t4, %hi(D_80126D00) # $t4, 0x8012 -/* 0ABB9C 800AAF9C ADAB0000 */ sw $t3, ($t5) -/* 0ABBA0 800AAFA0 8FAE00BC */ lw $t6, 0xbc($sp) -/* 0ABBA4 800AAFA4 8D8C6D00 */ lw $t4, %lo(D_80126D00)($t4) -/* 0ABBA8 800AAFA8 3C198012 */ lui $t9, %hi(D_80126D04) # $t9, 0x8012 -/* 0ABBAC 800AAFAC ADCC0000 */ sw $t4, ($t6) -/* 0ABBB0 800AAFB0 8FAF00C0 */ lw $t7, 0xc0($sp) -/* 0ABBB4 800AAFB4 8F396D04 */ lw $t9, %lo(D_80126D04)($t9) -/* 0ABBB8 800AAFB8 00000000 */ nop -/* 0ABBBC 800AAFBC ADF90000 */ sw $t9, ($t7) -.L800AAFC0: -/* 0ABBC0 800AAFC0 8FBF002C */ lw $ra, 0x2c($sp) -/* 0ABBC4 800AAFC4 8FB00028 */ lw $s0, 0x28($sp) -/* 0ABBC8 800AAFC8 03E00008 */ jr $ra -/* 0ABBCC 800AAFCC 27BD00B8 */ addiu $sp, $sp, 0xb8 - -glabel func_800AAFD0 -/* 0ABBD0 800AAFD0 27BDFF98 */ addiu $sp, $sp, -0x68 -/* 0ABBD4 800AAFD4 AFBF003C */ sw $ra, 0x3c($sp) -/* 0ABBD8 800AAFD8 AFBE0038 */ sw $fp, 0x38($sp) -/* 0ABBDC 800AAFDC AFB70034 */ sw $s7, 0x34($sp) -/* 0ABBE0 800AAFE0 AFB60030 */ sw $s6, 0x30($sp) -/* 0ABBE4 800AAFE4 AFB5002C */ sw $s5, 0x2c($sp) -/* 0ABBE8 800AAFE8 AFB40028 */ sw $s4, 0x28($sp) -/* 0ABBEC 800AAFEC AFB30024 */ sw $s3, 0x24($sp) -/* 0ABBF0 800AAFF0 AFB20020 */ sw $s2, 0x20($sp) -/* 0ABBF4 800AAFF4 AFB1001C */ sw $s1, 0x1c($sp) -/* 0ABBF8 800AAFF8 AFB00018 */ sw $s0, 0x18($sp) -/* 0ABBFC 800AAFFC 84850028 */ lh $a1, 0x28($a0) -/* 0ABC00 800AB000 00809825 */ move $s3, $a0 -/* 0ABC04 800AB004 18A00057 */ blez $a1, .L800AB164 -/* 0ABC08 800AB008 0000B825 */ move $s7, $zero -/* 0ABC0C 800AB00C 3C128012 */ lui $s2, %hi(D_80126CFC) # $s2, 0x8012 -/* 0ABC10 800AB010 26526CFC */ addiu $s2, %lo(D_80126CFC) # addiu $s2, $s2, 0x6cfc -/* 0ABC14 800AB014 0000F025 */ move $fp, $zero -.L800AB018: -/* 0ABC18 800AB018 8E6E0038 */ lw $t6, 0x38($s3) -/* 0ABC1C 800AB01C 24160001 */ li $s6, 1 -/* 0ABC20 800AB020 01DE1021 */ addu $v0, $t6, $fp -/* 0ABC24 800AB024 8C470008 */ lw $a3, 8($v0) -/* 0ABC28 800AB028 240100FF */ li $at, 255 -/* 0ABC2C 800AB02C 30EF0100 */ andi $t7, $a3, 0x100 -/* 0ABC30 800AB030 15E00048 */ bnez $t7, .L800AB154 -/* 0ABC34 800AB034 00000000 */ nop -/* 0ABC38 800AB038 84430002 */ lh $v1, 2($v0) -/* 0ABC3C 800AB03C 84440004 */ lh $a0, 4($v0) -/* 0ABC40 800AB040 00035880 */ sll $t3, $v1, 2 -/* 0ABC44 800AB044 8458000E */ lh $t8, 0xe($v0) -/* 0ABC48 800AB048 84590010 */ lh $t9, 0x10($v0) -/* 0ABC4C 800AB04C 8E6A0004 */ lw $t2, 4($s3) -/* 0ABC50 800AB050 8E6C0008 */ lw $t4, 8($s3) -/* 0ABC54 800AB054 90450000 */ lbu $a1, ($v0) -/* 0ABC58 800AB058 01635821 */ addu $t3, $t3, $v1 -/* 0ABC5C 800AB05C 000B5840 */ sll $t3, $t3, 1 -/* 0ABC60 800AB060 00046900 */ sll $t5, $a0, 4 -/* 0ABC64 800AB064 03038023 */ subu $s0, $t8, $v1 -/* 0ABC68 800AB068 0324A023 */ subu $s4, $t9, $a0 -/* 0ABC6C 800AB06C 014BA821 */ addu $s5, $t2, $t3 -/* 0ABC70 800AB070 14A10003 */ bne $a1, $at, .L800AB080 -/* 0ABC74 800AB074 018D4021 */ addu $t0, $t4, $t5 -/* 0ABC78 800AB078 10000006 */ b .L800AB094 -/* 0ABC7C 800AB07C 00008825 */ move $s1, $zero -.L800AB080: -/* 0ABC80 800AB080 8E6E0000 */ lw $t6, ($s3) -/* 0ABC84 800AB084 000578C0 */ sll $t7, $a1, 3 -/* 0ABC88 800AB088 01CFC021 */ addu $t8, $t6, $t7 -/* 0ABC8C 800AB08C 8F110000 */ lw $s1, ($t8) -/* 0ABC90 800AB090 00000000 */ nop -.L800AB094: -/* 0ABC94 800AB094 2401FFFD */ li $at, -3 -/* 0ABC98 800AB098 00E13024 */ and $a2, $a3, $at -/* 0ABC9C 800AB09C 02402025 */ move $a0, $s2 -/* 0ABCA0 800AB0A0 02202825 */ move $a1, $s1 -/* 0ABCA4 800AB0A4 0C01ED32 */ jal func_8007B4C8 -/* 0ABCA8 800AB0A8 AFA80044 */ sw $t0, 0x44($sp) -/* 0ABCAC 800AB0AC 8E430000 */ lw $v1, ($s2) -/* 0ABCB0 800AB0B0 3C098000 */ lui $t1, 0x8000 -/* 0ABCB4 800AB0B4 02A92021 */ addu $a0, $s5, $t1 -/* 0ABCB8 800AB0B8 260AFFFF */ addiu $t2, $s0, -1 -/* 0ABCBC 800AB0BC 24790008 */ addiu $t9, $v1, 8 -/* 0ABCC0 800AB0C0 AE590000 */ sw $t9, ($s2) -/* 0ABCC4 800AB0C4 000A58C0 */ sll $t3, $t2, 3 -/* 0ABCC8 800AB0C8 308C0006 */ andi $t4, $a0, 6 -/* 0ABCCC 800AB0CC 016C6825 */ or $t5, $t3, $t4 -/* 0ABCD0 800AB0D0 0010C8C0 */ sll $t9, $s0, 3 -/* 0ABCD4 800AB0D4 03305021 */ addu $t2, $t9, $s0 -/* 0ABCD8 800AB0D8 000A5840 */ sll $t3, $t2, 1 -/* 0ABCDC 800AB0DC 31AE00FF */ andi $t6, $t5, 0xff -/* 0ABCE0 800AB0E0 000E7C00 */ sll $t7, $t6, 0x10 -/* 0ABCE4 800AB0E4 256C0008 */ addiu $t4, $t3, 8 -/* 0ABCE8 800AB0E8 3C010400 */ lui $at, 0x400 -/* 0ABCEC 800AB0EC 8FA80044 */ lw $t0, 0x44($sp) -/* 0ABCF0 800AB0F0 01E1C025 */ or $t8, $t7, $at -/* 0ABCF4 800AB0F4 318DFFFF */ andi $t5, $t4, 0xffff -/* 0ABCF8 800AB0F8 030D7025 */ or $t6, $t8, $t5 -/* 0ABCFC 800AB0FC AC6E0000 */ sw $t6, ($v1) -/* 0ABD00 800AB100 16200002 */ bnez $s1, .L800AB10C -/* 0ABD04 800AB104 AC640004 */ sw $a0, 4($v1) -/* 0ABD08 800AB108 0000B025 */ move $s6, $zero -.L800AB10C: -/* 0ABD0C 800AB10C 2699FFFF */ addiu $t9, $s4, -1 -/* 0ABD10 800AB110 8E430000 */ lw $v1, ($s2) -/* 0ABD14 800AB114 00195100 */ sll $t2, $t9, 4 -/* 0ABD18 800AB118 01565825 */ or $t3, $t2, $s6 -/* 0ABD1C 800AB11C 316C00FF */ andi $t4, $t3, 0xff -/* 0ABD20 800AB120 246F0008 */ addiu $t7, $v1, 8 -/* 0ABD24 800AB124 AE4F0000 */ sw $t7, ($s2) -/* 0ABD28 800AB128 000CC400 */ sll $t8, $t4, 0x10 -/* 0ABD2C 800AB12C 3C010500 */ lui $at, 0x500 -/* 0ABD30 800AB130 00147100 */ sll $t6, $s4, 4 -/* 0ABD34 800AB134 31CFFFFF */ andi $t7, $t6, 0xffff -/* 0ABD38 800AB138 03016825 */ or $t5, $t8, $at -/* 0ABD3C 800AB13C 01AFC825 */ or $t9, $t5, $t7 -/* 0ABD40 800AB140 01095021 */ addu $t2, $t0, $t1 -/* 0ABD44 800AB144 AC6A0004 */ sw $t2, 4($v1) -/* 0ABD48 800AB148 AC790000 */ sw $t9, ($v1) -/* 0ABD4C 800AB14C 86650028 */ lh $a1, 0x28($s3) -/* 0ABD50 800AB150 00000000 */ nop -.L800AB154: -/* 0ABD54 800AB154 26F70001 */ addiu $s7, $s7, 1 -/* 0ABD58 800AB158 02E5082A */ slt $at, $s7, $a1 -/* 0ABD5C 800AB15C 1420FFAE */ bnez $at, .L800AB018 -/* 0ABD60 800AB160 27DE000C */ addiu $fp, $fp, 0xc -.L800AB164: -/* 0ABD64 800AB164 8FBF003C */ lw $ra, 0x3c($sp) -/* 0ABD68 800AB168 8FB00018 */ lw $s0, 0x18($sp) -/* 0ABD6C 800AB16C 8FB1001C */ lw $s1, 0x1c($sp) -/* 0ABD70 800AB170 8FB20020 */ lw $s2, 0x20($sp) -/* 0ABD74 800AB174 8FB30024 */ lw $s3, 0x24($sp) -/* 0ABD78 800AB178 8FB40028 */ lw $s4, 0x28($sp) -/* 0ABD7C 800AB17C 8FB5002C */ lw $s5, 0x2c($sp) -/* 0ABD80 800AB180 8FB60030 */ lw $s6, 0x30($sp) -/* 0ABD84 800AB184 8FB70034 */ lw $s7, 0x34($sp) -/* 0ABD88 800AB188 8FBE0038 */ lw $fp, 0x38($sp) -/* 0ABD8C 800AB18C 03E00008 */ jr $ra -/* 0ABD90 800AB190 27BD0068 */ addiu $sp, $sp, 0x68 - -glabel func_800AB194 -/* 0ABD94 800AB194 240E0001 */ li $t6, 1 -/* 0ABD98 800AB198 3C018012 */ lui $at, %hi(D_80126CD1) # $at, 0x8012 -/* 0ABD9C 800AB19C A02E6CD1 */ sb $t6, %lo(D_80126CD1)($at) -/* 0ABDA0 800AB1A0 3C018012 */ lui $at, 0x8012 -/* 0ABDA4 800AB1A4 03E00008 */ jr $ra -/* 0ABDA8 800AB1A8 A0246CD3 */ sb $a0, 0x6cd3($at) - -glabel func_800AB1AC -/* 0ABDAC 800AB1AC 3C0E8012 */ lui $t6, %hi(D_8012718B) # $t6, 0x8012 -/* 0ABDB0 800AB1B0 91CE718B */ lbu $t6, %lo(D_8012718B)($t6) -/* 0ABDB4 800AB1B4 3C018012 */ lui $at, %hi(D_80126CD0) # $at, 0x8012 -/* 0ABDB8 800AB1B8 A02E6CD0 */ sb $t6, %lo(D_80126CD0)($at) -/* 0ABDBC 800AB1BC 3C018012 */ lui $at, 0x8012 -/* 0ABDC0 800AB1C0 03E00008 */ jr $ra -/* 0ABDC4 800AB1C4 A0246CD3 */ sb $a0, 0x6cd3($at) - -/* 0ABDC8 800AB1C8 3C018012 */ lui $at, 0x8012 -/* 0ABDCC 800AB1CC 03E00008 */ jr $ra -/* 0ABDD0 800AB1D0 A0206CD4 */ sb $zero, 0x6cd4($at) - -glabel func_800AB1D4 -/* 0ABDD4 800AB1D4 240F0001 */ li $t7, 1 -/* 0ABDD8 800AB1D8 01E4C023 */ subu $t8, $t7, $a0 -/* 0ABDDC 800AB1DC 3C018012 */ lui $at, 0x8012 -/* 0ABDE0 800AB1E0 AFA40000 */ sw $a0, ($sp) -/* 0ABDE4 800AB1E4 03E00008 */ jr $ra -/* 0ABDE8 800AB1E8 A0386CD2 */ sb $t8, 0x6cd2($at) - -/* 0ABDEC 800AB1EC 00000000 */ nop -glabel func_800AB1F0 -/* 0ABDF0 800AB1F0 3C03800E */ lui $v1, %hi(D_800E28D8) # $v1, 0x800e -/* 0ABDF4 800AB1F4 246328D8 */ addiu $v1, %lo(D_800E28D8) # addiu $v1, $v1, 0x28d8 -/* 0ABDF8 800AB1F8 AC600000 */ sw $zero, ($v1) -/* 0ABDFC 800AB1FC AC600004 */ sw $zero, 4($v1) -/* 0ABE00 800AB200 3C01800E */ lui $at, %hi(D_800E28D4) # $at, 0x800e -/* 0ABE04 800AB204 AC2028D4 */ sw $zero, %lo(D_800E28D4)($at) -/* 0ABE08 800AB208 3C028012 */ lui $v0, %hi(D_80127C00) # $v0, 0x8012 -/* 0ABE0C 800AB20C 3C018012 */ lui $at, %hi(D_80127BB0) # $at, 0x8012 -/* 0ABE10 800AB210 240E0006 */ li $t6, 6 -/* 0ABE14 800AB214 24427C00 */ addiu $v0, %lo(D_80127C00) # addiu $v0, $v0, 0x7c00 -/* 0ABE18 800AB218 AC207BB0 */ sw $zero, %lo(D_80127BB0)($at) -/* 0ABE1C 800AB21C 000EC080 */ sll $t8, $t6, 2 -/* 0ABE20 800AB220 AC4E0000 */ sw $t6, ($v0) -/* 0ABE24 800AB224 AC580000 */ sw $t8, ($v0) -/* 0ABE28 800AB228 00184043 */ sra $t0, $t8, 1 -/* 0ABE2C 800AB22C 3C018012 */ lui $at, %hi(D_80127C04) # $at, 0x8012 -/* 0ABE30 800AB230 3C04800E */ lui $a0, %hi(D_800E2914) # $a0, 0x800e -/* 0ABE34 800AB234 AC287C04 */ sw $t0, %lo(D_80127C04)($at) -/* 0ABE38 800AB238 24842914 */ addiu $a0, %lo(D_800E2914) # addiu $a0, $a0, 0x2914 -/* 0ABE3C 800AB23C AC800000 */ sw $zero, ($a0) -/* 0ABE40 800AB240 AC800004 */ sw $zero, 4($a0) -/* 0ABE44 800AB244 3C01800E */ lui $at, %hi(D_800E290C) # $at, 0x800e -/* 0ABE48 800AB248 3C058012 */ lui $a1, %hi(D_80127BF8) # $a1, 0x8012 -/* 0ABE4C 800AB24C AC20290C */ sw $zero, %lo(D_800E290C)($at) -/* 0ABE50 800AB250 24A57BF8 */ addiu $a1, %lo(D_80127BF8) # addiu $a1, $a1, 0x7bf8 -/* 0ABE54 800AB254 2406FFFF */ li $a2, -1 -/* 0ABE58 800AB258 2409FE00 */ li $t1, -512 -/* 0ABE5C 800AB25C A4A60000 */ sh $a2, ($a1) -/* 0ABE60 800AB260 A4A90002 */ sh $t1, 2($a1) -/* 0ABE64 800AB264 3C01800E */ lui $at, %hi(D_800E2A80) # $at, 0x800e -/* 0ABE68 800AB268 AC202A80 */ sw $zero, %lo(D_800E2A80)($at) -/* 0ABE6C 800AB26C 3C01800E */ lui $at, %hi(D_800E2A84) # $at, 0x800e -/* 0ABE70 800AB270 240A0001 */ li $t2, 1 -/* 0ABE74 800AB274 AC2A2A84 */ sw $t2, %lo(D_800E2A84)($at) -/* 0ABE78 800AB278 3C07800E */ lui $a3, %hi(D_800E291C) # $a3, 0x800e -/* 0ABE7C 800AB27C 3C01800E */ lui $at, %hi(D_800E2A88) # $at, 0x800e -/* 0ABE80 800AB280 24E7291C */ addiu $a3, %lo(D_800E291C) # addiu $a3, $a3, 0x291c -/* 0ABE84 800AB284 AC202A88 */ sw $zero, %lo(D_800E2A88)($at) -/* 0ABE88 800AB288 8CEB0000 */ lw $t3, ($a3) -/* 0ABE8C 800AB28C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0ABE90 800AB290 15600018 */ bnez $t3, .L800AB2F4 -/* 0ABE94 800AB294 AFBF0014 */ sw $ra, 0x14($sp) -/* 0ABE98 800AB298 0C01DB16 */ jal func_80076C58 -/* 0ABE9C 800AB29C 24040013 */ li $a0, 19 -/* 0ABEA0 800AB2A0 3C04800E */ lui $a0, %hi(D_800E2920) # $a0, 0x800e -/* 0ABEA4 800AB2A4 3C07800E */ lui $a3, %hi(D_800E291C) # $a3, 0x800e -/* 0ABEA8 800AB2A8 24E7291C */ addiu $a3, %lo(D_800E291C) # addiu $a3, $a3, 0x291c -/* 0ABEAC 800AB2AC 24842920 */ addiu $a0, %lo(D_800E2920) # addiu $a0, $a0, 0x2920 -/* 0ABEB0 800AB2B0 00006080 */ sll $t4, $zero, 2 -/* 0ABEB4 800AB2B4 ACE20000 */ sw $v0, ($a3) -/* 0ABEB8 800AB2B8 AC800000 */ sw $zero, ($a0) -/* 0ABEBC 800AB2BC 004C6821 */ addu $t5, $v0, $t4 -/* 0ABEC0 800AB2C0 8DAE0000 */ lw $t6, ($t5) -/* 0ABEC4 800AB2C4 2406FFFF */ li $a2, -1 -/* 0ABEC8 800AB2C8 00402825 */ move $a1, $v0 -/* 0ABECC 800AB2CC 10CE0009 */ beq $a2, $t6, .L800AB2F4 -/* 0ABED0 800AB2D0 00001825 */ move $v1, $zero -/* 0ABED4 800AB2D4 246F0001 */ addiu $t7, $v1, 1 -.L800AB2D8: -/* 0ABED8 800AB2D8 000FC080 */ sll $t8, $t7, 2 -/* 0ABEDC 800AB2DC 00B8C821 */ addu $t9, $a1, $t8 -/* 0ABEE0 800AB2E0 AC8F0000 */ sw $t7, ($a0) -/* 0ABEE4 800AB2E4 8F280000 */ lw $t0, ($t9) -/* 0ABEE8 800AB2E8 01E01825 */ move $v1, $t7 -/* 0ABEEC 800AB2EC 14C8FFFA */ bne $a2, $t0, .L800AB2D8 -/* 0ABEF0 800AB2F0 246F0001 */ addiu $t7, $v1, 1 -.L800AB2F4: -/* 0ABEF4 800AB2F4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0ABEF8 800AB2F8 3C018012 */ lui $at, %hi(D_80127C08) # $at, 0x8012 -/* 0ABEFC 800AB2FC AC207C08 */ sw $zero, %lo(D_80127C08)($at) -/* 0ABF00 800AB300 03E00008 */ jr $ra -/* 0ABF04 800AB304 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_800AB308 -/* 0ABF08 800AB308 3C028012 */ lui $v0, %hi(D_80127BF8) # $v0, 0x8012 -/* 0ABF0C 800AB30C 24427BF8 */ addiu $v0, %lo(D_80127BF8) # addiu $v0, $v0, 0x7bf8 -/* 0ABF10 800AB310 84480002 */ lh $t0, 2($v0) -/* 0ABF14 800AB314 84490000 */ lh $t1, ($v0) -/* 0ABF18 800AB318 00047400 */ sll $t6, $a0, 0x10 -/* 0ABF1C 800AB31C 0005C400 */ sll $t8, $a1, 0x10 -/* 0ABF20 800AB320 0018CC03 */ sra $t9, $t8, 0x10 -/* 0ABF24 800AB324 000E7C03 */ sra $t7, $t6, 0x10 -/* 0ABF28 800AB328 AFA40000 */ sw $a0, ($sp) -/* 0ABF2C 800AB32C AFA50004 */ sw $a1, 4($sp) -/* 0ABF30 800AB330 0109082A */ slt $at, $t0, $t1 -/* 0ABF34 800AB334 03202825 */ move $a1, $t9 -/* 0ABF38 800AB338 10200004 */ beqz $at, .L800AB34C -/* 0ABF3C 800AB33C 01E02025 */ move $a0, $t7 -/* 0ABF40 800AB340 A44F0000 */ sh $t7, ($v0) -/* 0ABF44 800AB344 03E00008 */ jr $ra -/* 0ABF48 800AB348 A4590002 */ sh $t9, 2($v0) - -.L800AB34C: -/* 0ABF4C 800AB34C A4450000 */ sh $a1, ($v0) -/* 0ABF50 800AB350 A4440002 */ sh $a0, 2($v0) -/* 0ABF54 800AB354 03E00008 */ jr $ra -/* 0ABF58 800AB358 00000000 */ nop - -glabel func_800AB35C -/* 0ABF5C 800AB35C 3C04800E */ lui $a0, %hi(D_800E290C) # $a0, 0x800e -/* 0ABF60 800AB360 8C84290C */ lw $a0, %lo(D_800E290C)($a0) -/* 0ABF64 800AB364 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0ABF68 800AB368 10800005 */ beqz $a0, .L800AB380 -/* 0ABF6C 800AB36C AFBF0014 */ sw $ra, 0x14($sp) -/* 0ABF70 800AB370 0C01C450 */ jal func_80071140 -/* 0ABF74 800AB374 00000000 */ nop -/* 0ABF78 800AB378 3C01800E */ lui $at, %hi(D_800E290C) # $at, 0x800e -/* 0ABF7C 800AB37C AC20290C */ sw $zero, %lo(D_800E290C)($at) -.L800AB380: -/* 0ABF80 800AB380 3C02800E */ lui $v0, %hi(D_800E2914) # $v0, 0x800e -/* 0ABF84 800AB384 24422914 */ addiu $v0, %lo(D_800E2914) # addiu $v0, $v0, 0x2914 -/* 0ABF88 800AB388 8C440000 */ lw $a0, ($v0) -/* 0ABF8C 800AB38C 00000000 */ nop -/* 0ABF90 800AB390 10800006 */ beqz $a0, .L800AB3AC -/* 0ABF94 800AB394 00000000 */ nop -/* 0ABF98 800AB398 0C01C450 */ jal func_80071140 -/* 0ABF9C 800AB39C 00000000 */ nop -/* 0ABFA0 800AB3A0 3C02800E */ lui $v0, %hi(D_800E2914) # $v0, 0x800e -/* 0ABFA4 800AB3A4 24422914 */ addiu $v0, %lo(D_800E2914) # addiu $v0, $v0, 0x2914 -/* 0ABFA8 800AB3A8 AC400000 */ sw $zero, ($v0) -.L800AB3AC: -/* 0ABFAC 800AB3AC 8C440004 */ lw $a0, 4($v0) -/* 0ABFB0 800AB3B0 00000000 */ nop -/* 0ABFB4 800AB3B4 10800006 */ beqz $a0, .L800AB3D0 -/* 0ABFB8 800AB3B8 00000000 */ nop -/* 0ABFBC 800AB3BC 0C01C450 */ jal func_80071140 -/* 0ABFC0 800AB3C0 00000000 */ nop -/* 0ABFC4 800AB3C4 3C02800E */ lui $v0, %hi(D_800E2914) # $v0, 0x800e -/* 0ABFC8 800AB3C8 24422914 */ addiu $v0, %lo(D_800E2914) # addiu $v0, $v0, 0x2914 -/* 0ABFCC 800AB3CC AC400004 */ sw $zero, 4($v0) -.L800AB3D0: -/* 0ABFD0 800AB3D0 3C04800E */ lui $a0, %hi(D_800E28D4) # $a0, 0x800e -/* 0ABFD4 800AB3D4 8C8428D4 */ lw $a0, %lo(D_800E28D4)($a0) -/* 0ABFD8 800AB3D8 00000000 */ nop -/* 0ABFDC 800AB3DC 10800005 */ beqz $a0, .L800AB3F4 -/* 0ABFE0 800AB3E0 00000000 */ nop -/* 0ABFE4 800AB3E4 0C01C450 */ jal func_80071140 -/* 0ABFE8 800AB3E8 00000000 */ nop -/* 0ABFEC 800AB3EC 3C01800E */ lui $at, %hi(D_800E28D4) # $at, 0x800e -/* 0ABFF0 800AB3F0 AC2028D4 */ sw $zero, %lo(D_800E28D4)($at) -.L800AB3F4: -/* 0ABFF4 800AB3F4 3C02800E */ lui $v0, %hi(D_800E28D8) # $v0, 0x800e -/* 0ABFF8 800AB3F8 244228D8 */ addiu $v0, %lo(D_800E28D8) # addiu $v0, $v0, 0x28d8 -/* 0ABFFC 800AB3FC 8C440000 */ lw $a0, ($v0) -/* 0AC000 800AB400 00000000 */ nop -/* 0AC004 800AB404 10800006 */ beqz $a0, .L800AB420 -/* 0AC008 800AB408 00000000 */ nop -/* 0AC00C 800AB40C 0C01C450 */ jal func_80071140 -/* 0AC010 800AB410 00000000 */ nop -/* 0AC014 800AB414 3C02800E */ lui $v0, %hi(D_800E28D8) # $v0, 0x800e -/* 0AC018 800AB418 244228D8 */ addiu $v0, %lo(D_800E28D8) # addiu $v0, $v0, 0x28d8 -/* 0AC01C 800AB41C AC400000 */ sw $zero, ($v0) -.L800AB420: -/* 0AC020 800AB420 8C440008 */ lw $a0, 8($v0) -/* 0AC024 800AB424 00000000 */ nop -/* 0AC028 800AB428 10800006 */ beqz $a0, .L800AB444 -/* 0AC02C 800AB42C 00000000 */ nop -/* 0AC030 800AB430 0C01ECAF */ jal func_8007B2BC -/* 0AC034 800AB434 00000000 */ nop -/* 0AC038 800AB438 3C02800E */ lui $v0, %hi(D_800E28D8) # $v0, 0x800e -/* 0AC03C 800AB43C 244228D8 */ addiu $v0, %lo(D_800E28D8) # addiu $v0, $v0, 0x28d8 -/* 0AC040 800AB440 AC400008 */ sw $zero, 8($v0) -.L800AB444: -/* 0AC044 800AB444 3C04800E */ lui $a0, %hi(D_800E2910) # $a0, 0x800e -/* 0AC048 800AB448 8C842910 */ lw $a0, %lo(D_800E2910)($a0) -/* 0AC04C 800AB44C 00000000 */ nop -/* 0AC050 800AB450 10800005 */ beqz $a0, .L800AB468 -/* 0AC054 800AB454 00000000 */ nop -/* 0AC058 800AB458 0C01C450 */ jal func_80071140 -/* 0AC05C 800AB45C 00000000 */ nop -/* 0AC060 800AB460 3C01800E */ lui $at, %hi(D_800E2910) # $at, 0x800e -/* 0AC064 800AB464 AC202910 */ sw $zero, %lo(D_800E2910)($at) -.L800AB468: -/* 0AC068 800AB468 3C01800E */ lui $at, %hi(D_800E2A88) # $at, 0x800e -/* 0AC06C 800AB46C AC202A88 */ sw $zero, %lo(D_800E2A88)($at) -/* 0AC070 800AB470 3C01800E */ lui $at, %hi(D_800E2A80) # $at, 0x800e -/* 0AC074 800AB474 3C0F800E */ lui $t7, %hi(D_800E2C5C) # $t7, 0x800e -/* 0AC078 800AB478 8DEF2C5C */ lw $t7, %lo(D_800E2C5C)($t7) -/* 0AC07C 800AB47C AC202A80 */ sw $zero, %lo(D_800E2A80)($at) -/* 0AC080 800AB480 3C01800E */ lui $at, %hi(D_800E2A84) # $at, 0x800e -/* 0AC084 800AB484 240E0001 */ li $t6, 1 -/* 0AC088 800AB488 11E00003 */ beqz $t7, .L800AB498 -/* 0AC08C 800AB48C AC2E2A84 */ sw $t6, %lo(D_800E2A84)($at) -/* 0AC090 800AB490 0C02B488 */ jal func_800AD220 -/* 0AC094 800AB494 00000000 */ nop -.L800AB498: -/* 0AC098 800AB498 8FBF0014 */ lw $ra, 0x14($sp) -/* 0AC09C 800AB49C 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0AC0A0 800AB4A0 03E00008 */ jr $ra -/* 0AC0A4 800AB4A4 00000000 */ nop - -glabel func_800AB4A8 -/* 0AC0A8 800AB4A8 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0AC0AC 800AB4AC AFBF0034 */ sw $ra, 0x34($sp) -/* 0AC0B0 800AB4B0 AFB40028 */ sw $s4, 0x28($sp) -/* 0AC0B4 800AB4B4 AFB20020 */ sw $s2, 0x20($sp) -/* 0AC0B8 800AB4B8 AFB1001C */ sw $s1, 0x1c($sp) -/* 0AC0BC 800AB4BC AFB00018 */ sw $s0, 0x18($sp) -/* 0AC0C0 800AB4C0 00C08025 */ move $s0, $a2 -/* 0AC0C4 800AB4C4 00808825 */ move $s1, $a0 -/* 0AC0C8 800AB4C8 00E09025 */ move $s2, $a3 -/* 0AC0CC 800AB4CC 00A0A025 */ move $s4, $a1 -/* 0AC0D0 800AB4D0 AFB60030 */ sw $s6, 0x30($sp) -/* 0AC0D4 800AB4D4 AFB5002C */ sw $s5, 0x2c($sp) -/* 0AC0D8 800AB4D8 0C02ACD7 */ jal func_800AB35C -/* 0AC0DC 800AB4DC AFB30024 */ sw $s3, 0x24($sp) -/* 0AC0E0 800AB4E0 3C028012 */ lui $v0, %hi(D_80127BB8) # $v0, 0x8012 -/* 0AC0E4 800AB4E4 24427BB8 */ addiu $v0, %lo(D_80127BB8) # addiu $v0, $v0, 0x7bb8 -/* 0AC0E8 800AB4E8 8FA30048 */ lw $v1, 0x48($sp) -/* 0AC0EC 800AB4EC 8FA6004C */ lw $a2, 0x4c($sp) -/* 0AC0F0 800AB4F0 8FA70050 */ lw $a3, 0x50($sp) -/* 0AC0F4 800AB4F4 2A210002 */ slti $at, $s1, 2 -/* 0AC0F8 800AB4F8 AC50000C */ sw $s0, 0xc($v0) -/* 0AC0FC 800AB4FC AC400010 */ sw $zero, 0x10($v0) -/* 0AC100 800AB500 AC500014 */ sw $s0, 0x14($v0) -/* 0AC104 800AB504 AC520018 */ sw $s2, 0x18($v0) -/* 0AC108 800AB508 AC40001C */ sw $zero, 0x1c($v0) -/* 0AC10C 800AB50C AC520020 */ sw $s2, 0x20($v0) -/* 0AC110 800AB510 AC400028 */ sw $zero, 0x28($v0) -/* 0AC114 800AB514 AC400004 */ sw $zero, 4($v0) -/* 0AC118 800AB518 AC400034 */ sw $zero, 0x34($v0) -/* 0AC11C 800AB51C AC40003C */ sw $zero, 0x3c($v0) -/* 0AC120 800AB520 AC430024 */ sw $v1, 0x24($v0) -/* 0AC124 800AB524 AC43002C */ sw $v1, 0x2c($v0) -/* 0AC128 800AB528 AC460000 */ sw $a2, ($v0) -/* 0AC12C 800AB52C AC460008 */ sw $a2, 8($v0) -/* 0AC130 800AB530 AC470030 */ sw $a3, 0x30($v0) -/* 0AC134 800AB534 14200002 */ bnez $at, .L800AB540 -/* 0AC138 800AB538 AC470038 */ sw $a3, 0x38($v0) -/* 0AC13C 800AB53C 24110001 */ li $s1, 1 -.L800AB540: -/* 0AC140 800AB540 00117080 */ sll $t6, $s1, 2 -/* 0AC144 800AB544 01D17023 */ subu $t6, $t6, $s1 -/* 0AC148 800AB548 000E7080 */ sll $t6, $t6, 2 -/* 0AC14C 800AB54C 01D17023 */ subu $t6, $t6, $s1 -/* 0AC150 800AB550 3C0F800E */ lui $t7, %hi(D_800E2850) # $t7, 0x800e -/* 0AC154 800AB554 25EF2850 */ addiu $t7, %lo(D_800E2850) # addiu $t7, $t7, 0x2850 -/* 0AC158 800AB558 000E7080 */ sll $t6, $t6, 2 -/* 0AC15C 800AB55C 01CF8021 */ addu $s0, $t6, $t7 -/* 0AC160 800AB560 8E180008 */ lw $t8, 8($s0) -/* 0AC164 800AB564 24010001 */ li $at, 1 -/* 0AC168 800AB568 17010006 */ bne $t8, $at, .L800AB584 -/* 0AC16C 800AB56C 3C16FFAA */ lui $s6, (0xFFAA55FF >> 16) # lui $s6, 0xffaa -/* 0AC170 800AB570 24C40001 */ addiu $a0, $a2, 1 -/* 0AC174 800AB574 0C02B451 */ jal func_800AD144 -/* 0AC178 800AB578 24E50001 */ addiu $a1, $a3, 1 -/* 0AC17C 800AB57C 10000164 */ b .L800ABB10 -/* 0AC180 800AB580 8FBF0034 */ lw $ra, 0x34($sp) -.L800AB584: -/* 0AC184 800AB584 8E040004 */ lw $a0, 4($s0) -/* 0AC188 800AB588 36D655FF */ ori $s6, (0xFFAA55FF & 0xFFFF) # ori $s6, $s6, 0x55ff -/* 0AC18C 800AB58C 0004C880 */ sll $t9, $a0, 2 -/* 0AC190 800AB590 0324C823 */ subu $t9, $t9, $a0 -/* 0AC194 800AB594 00192080 */ sll $a0, $t9, 2 -/* 0AC198 800AB598 0C01C327 */ jal func_80070C9C -/* 0AC19C 800AB59C 02C02825 */ move $a1, $s6 -/* 0AC1A0 800AB5A0 3C15800E */ lui $s5, %hi(D_800E28D8) # $s5, 0x800e -/* 0AC1A4 800AB5A4 26B528D8 */ addiu $s5, %lo(D_800E28D8) # addiu $s5, $s5, 0x28d8 -/* 0AC1A8 800AB5A8 8E090004 */ lw $t1, 4($s0) -/* 0AC1AC 800AB5AC 8E0B0010 */ lw $t3, 0x10($s0) -/* 0AC1B0 800AB5B0 86180024 */ lh $t8, 0x24($s0) -/* 0AC1B4 800AB5B4 86190026 */ lh $t9, 0x26($s0) -/* 0AC1B8 800AB5B8 8E0D0018 */ lw $t5, 0x18($s0) -/* 0AC1BC 800AB5BC 8E0A000C */ lw $t2, 0xc($s0) -/* 0AC1C0 800AB5C0 8E0C0014 */ lw $t4, 0x14($s0) -/* 0AC1C4 800AB5C4 AEA90004 */ sw $t1, 4($s5) -/* 0AC1C8 800AB5C8 AEAB0010 */ sw $t3, 0x10($s5) -/* 0AC1CC 800AB5CC A6B80024 */ sh $t8, 0x24($s5) -/* 0AC1D0 800AB5D0 A6B90026 */ sh $t9, 0x26($s5) -/* 0AC1D4 800AB5D4 86A90024 */ lh $t1, 0x24($s5) -/* 0AC1D8 800AB5D8 86AB0026 */ lh $t3, 0x26($s5) -/* 0AC1DC 800AB5DC AEAD0018 */ sw $t5, 0x18($s5) -/* 0AC1E0 800AB5E0 8E0E001C */ lw $t6, 0x1c($s0) -/* 0AC1E4 800AB5E4 8E0F0020 */ lw $t7, 0x20($s0) -/* 0AC1E8 800AB5E8 8E0D0008 */ lw $t5, 8($s0) -/* 0AC1EC 800AB5EC AEAA000C */ sw $t2, 0xc($s5) -/* 0AC1F0 800AB5F0 AEAC0014 */ sw $t4, 0x14($s5) -/* 0AC1F4 800AB5F4 00095040 */ sll $t2, $t1, 1 -/* 0AC1F8 800AB5F8 000B6040 */ sll $t4, $t3, 1 -/* 0AC1FC 800AB5FC AEA20000 */ sw $v0, ($s5) -/* 0AC200 800AB600 A6AA0028 */ sh $t2, 0x28($s5) -/* 0AC204 800AB604 A6AC002A */ sh $t4, 0x2a($s5) -/* 0AC208 800AB608 AEAE001C */ sw $t6, 0x1c($s5) -/* 0AC20C 800AB60C 15A00003 */ bnez $t5, .L800AB61C -/* 0AC210 800AB610 AEAF0020 */ sw $t7, 0x20($s5) -/* 0AC214 800AB614 0C02AECD */ jal func_800ABB34 -/* 0AC218 800AB618 00000000 */ nop -.L800AB61C: -/* 0AC21C 800AB61C 3C138012 */ lui $s3, %hi(D_80127BB0) # $s3, 0x8012 -/* 0AC220 800AB620 26737BB0 */ addiu $s3, %lo(D_80127BB0) # addiu $s3, $s3, 0x7bb0 -/* 0AC224 800AB624 AE740000 */ sw $s4, ($s3) -/* 0AC228 800AB628 00142040 */ sll $a0, $s4, 1 -/* 0AC22C 800AB62C 0C01C327 */ jal func_80070C9C -/* 0AC230 800AB630 02C02825 */ move $a1, $s6 -/* 0AC234 800AB634 3C01800E */ lui $at, %hi(D_800E2910) # $at, 0x800e -/* 0AC238 800AB638 AC222910 */ sw $v0, %lo(D_800E2910)($at) -/* 0AC23C 800AB63C 00142100 */ sll $a0, $s4, 4 -/* 0AC240 800AB640 0C01C327 */ jal func_80070C9C -/* 0AC244 800AB644 02C02825 */ move $a1, $s6 -/* 0AC248 800AB648 8E6E0000 */ lw $t6, ($s3) -/* 0AC24C 800AB64C 3C12800E */ lui $s2, %hi(D_800E28D4) # $s2, 0x800e -/* 0AC250 800AB650 265228D4 */ addiu $s2, %lo(D_800E28D4) # addiu $s2, $s2, 0x28d4 -/* 0AC254 800AB654 AE420000 */ sw $v0, ($s2) -/* 0AC258 800AB658 19C0003F */ blez $t6, .L800AB758 -/* 0AC25C 800AB65C 00008825 */ move $s1, $zero -/* 0AC260 800AB660 00008025 */ move $s0, $zero -.L800AB664: -/* 0AC264 800AB664 8EA50018 */ lw $a1, 0x18($s5) -/* 0AC268 800AB668 0C01BE53 */ jal func_8006F94C -/* 0AC26C 800AB66C 00002025 */ move $a0, $zero -/* 0AC270 800AB670 8E4F0000 */ lw $t7, ($s2) -/* 0AC274 800AB674 00002025 */ move $a0, $zero -/* 0AC278 800AB678 01F0C021 */ addu $t8, $t7, $s0 -/* 0AC27C 800AB67C AF020000 */ sw $v0, ($t8) -/* 0AC280 800AB680 8EA5001C */ lw $a1, 0x1c($s5) -/* 0AC284 800AB684 0C01BE53 */ jal func_8006F94C -/* 0AC288 800AB688 00000000 */ nop -/* 0AC28C 800AB68C 8E590000 */ lw $t9, ($s2) -/* 0AC290 800AB690 00002025 */ move $a0, $zero -/* 0AC294 800AB694 03304821 */ addu $t1, $t9, $s0 -/* 0AC298 800AB698 AD220004 */ sw $v0, 4($t1) -/* 0AC29C 800AB69C 8EA50020 */ lw $a1, 0x20($s5) -/* 0AC2A0 800AB6A0 0C01BE53 */ jal func_8006F94C -/* 0AC2A4 800AB6A4 00000000 */ nop -/* 0AC2A8 800AB6A8 8E4A0000 */ lw $t2, ($s2) -/* 0AC2AC 800AB6AC 00002025 */ move $a0, $zero -/* 0AC2B0 800AB6B0 01505821 */ addu $t3, $t2, $s0 -/* 0AC2B4 800AB6B4 AD620008 */ sw $v0, 8($t3) -/* 0AC2B8 800AB6B8 0C01BE53 */ jal func_8006F94C -/* 0AC2BC 800AB6BC 24050020 */ li $a1, 32 -/* 0AC2C0 800AB6C0 8E4F0000 */ lw $t7, ($s2) -/* 0AC2C4 800AB6C4 244C0005 */ addiu $t4, $v0, 5 -/* 0AC2C8 800AB6C8 240D0001 */ li $t5, 1 -/* 0AC2CC 800AB6CC 018D7004 */ sllv $t6, $t5, $t4 -/* 0AC2D0 800AB6D0 01F0C021 */ addu $t8, $t7, $s0 -/* 0AC2D4 800AB6D4 A30E000C */ sb $t6, 0xc($t8) -/* 0AC2D8 800AB6D8 00002025 */ move $a0, $zero -/* 0AC2DC 800AB6DC 0C01BE53 */ jal func_8006F94C -/* 0AC2E0 800AB6E0 24050020 */ li $a1, 32 -/* 0AC2E4 800AB6E4 8E4B0000 */ lw $t3, ($s2) -/* 0AC2E8 800AB6E8 24590005 */ addiu $t9, $v0, 5 -/* 0AC2EC 800AB6EC 24090001 */ li $t1, 1 -/* 0AC2F0 800AB6F0 03295004 */ sllv $t2, $t1, $t9 -/* 0AC2F4 800AB6F4 01706821 */ addu $t5, $t3, $s0 -/* 0AC2F8 800AB6F8 A1AA000D */ sb $t2, 0xd($t5) -/* 0AC2FC 800AB6FC 00002025 */ move $a0, $zero -/* 0AC300 800AB700 0C01BE53 */ jal func_8006F94C -/* 0AC304 800AB704 24050020 */ li $a1, 32 -/* 0AC308 800AB708 8E580000 */ lw $t8, ($s2) -/* 0AC30C 800AB70C 244C0005 */ addiu $t4, $v0, 5 -/* 0AC310 800AB710 240F0001 */ li $t7, 1 -/* 0AC314 800AB714 018F7004 */ sllv $t6, $t7, $t4 -/* 0AC318 800AB718 03104821 */ addu $t1, $t8, $s0 -/* 0AC31C 800AB71C A12E000E */ sb $t6, 0xe($t1) -/* 0AC320 800AB720 8EA50004 */ lw $a1, 4($s5) -/* 0AC324 800AB724 00002025 */ move $a0, $zero -/* 0AC328 800AB728 0C01BE53 */ jal func_8006F94C -/* 0AC32C 800AB72C 24A5FFFF */ addiu $a1, $a1, -1 -/* 0AC330 800AB730 8E590000 */ lw $t9, ($s2) -/* 0AC334 800AB734 26310001 */ addiu $s1, $s1, 1 -/* 0AC338 800AB738 03305821 */ addu $t3, $t9, $s0 -/* 0AC33C 800AB73C A162000F */ sb $v0, 0xf($t3) -/* 0AC340 800AB740 8E6A0000 */ lw $t2, ($s3) -/* 0AC344 800AB744 26100010 */ addiu $s0, $s0, 0x10 -/* 0AC348 800AB748 022A082A */ slt $at, $s1, $t2 -/* 0AC34C 800AB74C 1420FFC5 */ bnez $at, .L800AB664 -/* 0AC350 800AB750 00000000 */ nop -/* 0AC354 800AB754 00008825 */ move $s1, $zero -.L800AB758: -/* 0AC358 800AB758 00148080 */ sll $s0, $s4, 2 -/* 0AC35C 800AB75C 00109080 */ sll $s2, $s0, 2 -/* 0AC360 800AB760 02509021 */ addu $s2, $s2, $s0 -/* 0AC364 800AB764 00129040 */ sll $s2, $s2, 1 -/* 0AC368 800AB768 02402025 */ move $a0, $s2 -/* 0AC36C 800AB76C 0C01C327 */ jal func_80070C9C -/* 0AC370 800AB770 02C02825 */ move $a1, $s6 -/* 0AC374 800AB774 3C13800E */ lui $s3, %hi(D_800E2914) # $s3, 0x800e -/* 0AC378 800AB778 26732914 */ addiu $s3, %lo(D_800E2914) # addiu $s3, $s3, 0x2914 -/* 0AC37C 800AB77C AE620000 */ sw $v0, ($s3) -/* 0AC380 800AB780 02402025 */ move $a0, $s2 -/* 0AC384 800AB784 0C01C327 */ jal func_80070C9C -/* 0AC388 800AB788 02C02825 */ move $a1, $s6 -/* 0AC38C 800AB78C 3C07800E */ lui $a3, %hi(D_800E2914) # $a3, 0x800e -/* 0AC390 800AB790 3C08800E */ lui $t0, %hi(D_800E291C) # $t0, 0x800e -/* 0AC394 800AB794 3C03800E */ lui $v1, %hi(D_800E2904) # $v1, 0x800e -/* 0AC398 800AB798 AE620004 */ sw $v0, 4($s3) -/* 0AC39C 800AB79C 24632904 */ addiu $v1, %lo(D_800E2904) # addiu $v1, $v1, 0x2904 -/* 0AC3A0 800AB7A0 2508291C */ addiu $t0, %lo(D_800E291C) # addiu $t0, $t0, 0x291c -/* 0AC3A4 800AB7A4 24E72914 */ addiu $a3, %lo(D_800E2914) # addiu $a3, $a3, 0x2914 -/* 0AC3A8 800AB7A8 240400FF */ li $a0, 255 -.L800AB7AC: -/* 0AC3AC 800AB7AC 8CED0000 */ lw $t5, ($a3) -/* 0AC3B0 800AB7B0 1A000063 */ blez $s0, .L800AB940 -/* 0AC3B4 800AB7B4 AC6D0000 */ sw $t5, ($v1) -/* 0AC3B8 800AB7B8 32060003 */ andi $a2, $s0, 3 -/* 0AC3BC 800AB7BC 10C00017 */ beqz $a2, .L800AB81C -/* 0AC3C0 800AB7C0 00C02825 */ move $a1, $a2 -/* 0AC3C4 800AB7C4 00111080 */ sll $v0, $s1, 2 -/* 0AC3C8 800AB7C8 00511021 */ addu $v0, $v0, $s1 -/* 0AC3CC 800AB7CC 00021040 */ sll $v0, $v0, 1 -.L800AB7D0: -/* 0AC3D0 800AB7D0 8C6F0000 */ lw $t7, ($v1) -/* 0AC3D4 800AB7D4 26310001 */ addiu $s1, $s1, 1 -/* 0AC3D8 800AB7D8 01E26021 */ addu $t4, $t7, $v0 -/* 0AC3DC 800AB7DC A1840006 */ sb $a0, 6($t4) -/* 0AC3E0 800AB7E0 8C780000 */ lw $t8, ($v1) -/* 0AC3E4 800AB7E4 00000000 */ nop -/* 0AC3E8 800AB7E8 03027021 */ addu $t6, $t8, $v0 -/* 0AC3EC 800AB7EC A1C40007 */ sb $a0, 7($t6) -/* 0AC3F0 800AB7F0 8C690000 */ lw $t1, ($v1) -/* 0AC3F4 800AB7F4 00000000 */ nop -/* 0AC3F8 800AB7F8 0122C821 */ addu $t9, $t1, $v0 -/* 0AC3FC 800AB7FC A3240008 */ sb $a0, 8($t9) -/* 0AC400 800AB800 8C6B0000 */ lw $t3, ($v1) -/* 0AC404 800AB804 00000000 */ nop -/* 0AC408 800AB808 01625021 */ addu $t2, $t3, $v0 -/* 0AC40C 800AB80C A1440009 */ sb $a0, 9($t2) -/* 0AC410 800AB810 14B1FFEF */ bne $a1, $s1, .L800AB7D0 -/* 0AC414 800AB814 2442000A */ addiu $v0, $v0, 0xa -/* 0AC418 800AB818 12300048 */ beq $s1, $s0, .L800AB93C -.L800AB81C: -/* 0AC41C 800AB81C 00111080 */ sll $v0, $s1, 2 -/* 0AC420 800AB820 00102880 */ sll $a1, $s0, 2 -/* 0AC424 800AB824 00B02821 */ addu $a1, $a1, $s0 -/* 0AC428 800AB828 00511021 */ addu $v0, $v0, $s1 -/* 0AC42C 800AB82C 00021040 */ sll $v0, $v0, 1 -/* 0AC430 800AB830 00052840 */ sll $a1, $a1, 1 -.L800AB834: -/* 0AC434 800AB834 8C6D0000 */ lw $t5, ($v1) -/* 0AC438 800AB838 00000000 */ nop -/* 0AC43C 800AB83C 01A27821 */ addu $t7, $t5, $v0 -/* 0AC440 800AB840 A1E40006 */ sb $a0, 6($t7) -/* 0AC444 800AB844 8C6C0000 */ lw $t4, ($v1) -/* 0AC448 800AB848 00000000 */ nop -/* 0AC44C 800AB84C 0182C021 */ addu $t8, $t4, $v0 -/* 0AC450 800AB850 A3040007 */ sb $a0, 7($t8) -/* 0AC454 800AB854 8C6E0000 */ lw $t6, ($v1) -/* 0AC458 800AB858 00000000 */ nop -/* 0AC45C 800AB85C 01C24821 */ addu $t1, $t6, $v0 -/* 0AC460 800AB860 A1240008 */ sb $a0, 8($t1) -/* 0AC464 800AB864 8C790000 */ lw $t9, ($v1) -/* 0AC468 800AB868 00000000 */ nop -/* 0AC46C 800AB86C 03225821 */ addu $t3, $t9, $v0 -/* 0AC470 800AB870 A1640009 */ sb $a0, 9($t3) -/* 0AC474 800AB874 8C6A0000 */ lw $t2, ($v1) -/* 0AC478 800AB878 00000000 */ nop -/* 0AC47C 800AB87C 01426821 */ addu $t5, $t2, $v0 -/* 0AC480 800AB880 A1A40010 */ sb $a0, 0x10($t5) -/* 0AC484 800AB884 8C6F0000 */ lw $t7, ($v1) -/* 0AC488 800AB888 00000000 */ nop -/* 0AC48C 800AB88C 01E26021 */ addu $t4, $t7, $v0 -/* 0AC490 800AB890 A1840011 */ sb $a0, 0x11($t4) -/* 0AC494 800AB894 8C780000 */ lw $t8, ($v1) -/* 0AC498 800AB898 00000000 */ nop -/* 0AC49C 800AB89C 03027021 */ addu $t6, $t8, $v0 -/* 0AC4A0 800AB8A0 A1C40012 */ sb $a0, 0x12($t6) -/* 0AC4A4 800AB8A4 8C690000 */ lw $t1, ($v1) -/* 0AC4A8 800AB8A8 00000000 */ nop -/* 0AC4AC 800AB8AC 0122C821 */ addu $t9, $t1, $v0 -/* 0AC4B0 800AB8B0 A3240013 */ sb $a0, 0x13($t9) -/* 0AC4B4 800AB8B4 8C6B0000 */ lw $t3, ($v1) -/* 0AC4B8 800AB8B8 00000000 */ nop -/* 0AC4BC 800AB8BC 01625021 */ addu $t2, $t3, $v0 -/* 0AC4C0 800AB8C0 A144001A */ sb $a0, 0x1a($t2) -/* 0AC4C4 800AB8C4 8C6D0000 */ lw $t5, ($v1) -/* 0AC4C8 800AB8C8 00000000 */ nop -/* 0AC4CC 800AB8CC 01A27821 */ addu $t7, $t5, $v0 -/* 0AC4D0 800AB8D0 A1E4001B */ sb $a0, 0x1b($t7) -/* 0AC4D4 800AB8D4 8C6C0000 */ lw $t4, ($v1) -/* 0AC4D8 800AB8D8 00000000 */ nop -/* 0AC4DC 800AB8DC 0182C021 */ addu $t8, $t4, $v0 -/* 0AC4E0 800AB8E0 A304001C */ sb $a0, 0x1c($t8) -/* 0AC4E4 800AB8E4 8C6E0000 */ lw $t6, ($v1) -/* 0AC4E8 800AB8E8 00000000 */ nop -/* 0AC4EC 800AB8EC 01C24821 */ addu $t1, $t6, $v0 -/* 0AC4F0 800AB8F0 A124001D */ sb $a0, 0x1d($t1) -/* 0AC4F4 800AB8F4 8C790000 */ lw $t9, ($v1) -/* 0AC4F8 800AB8F8 00000000 */ nop -/* 0AC4FC 800AB8FC 03225821 */ addu $t3, $t9, $v0 -/* 0AC500 800AB900 A1640024 */ sb $a0, 0x24($t3) -/* 0AC504 800AB904 8C6A0000 */ lw $t2, ($v1) -/* 0AC508 800AB908 00000000 */ nop -/* 0AC50C 800AB90C 01426821 */ addu $t5, $t2, $v0 -/* 0AC510 800AB910 A1A40025 */ sb $a0, 0x25($t5) -/* 0AC514 800AB914 8C6F0000 */ lw $t7, ($v1) -/* 0AC518 800AB918 00000000 */ nop -/* 0AC51C 800AB91C 01E26021 */ addu $t4, $t7, $v0 -/* 0AC520 800AB920 A1840026 */ sb $a0, 0x26($t4) -/* 0AC524 800AB924 8C780000 */ lw $t8, ($v1) -/* 0AC528 800AB928 00000000 */ nop -/* 0AC52C 800AB92C 03027021 */ addu $t6, $t8, $v0 -/* 0AC530 800AB930 24420028 */ addiu $v0, $v0, 0x28 -/* 0AC534 800AB934 1445FFBF */ bne $v0, $a1, .L800AB834 -/* 0AC538 800AB938 A1C40027 */ sb $a0, 0x27($t6) -.L800AB93C: -/* 0AC53C 800AB93C 00008825 */ move $s1, $zero -.L800AB940: -/* 0AC540 800AB940 24E70004 */ addiu $a3, $a3, 4 -/* 0AC544 800AB944 00E8082B */ sltu $at, $a3, $t0 -/* 0AC548 800AB948 1420FF98 */ bnez $at, .L800AB7AC -/* 0AC54C 800AB94C 00000000 */ nop -/* 0AC550 800AB950 8EA20008 */ lw $v0, 8($s5) -/* 0AC554 800AB954 3C148012 */ lui $s4, %hi(D_80127C04) # $s4, 0x8012 -/* 0AC558 800AB958 90520000 */ lbu $s2, ($v0) -/* 0AC55C 800AB95C 90530001 */ lbu $s3, 1($v0) -/* 0AC560 800AB960 26947C04 */ addiu $s4, %lo(D_80127C04) # addiu $s4, $s4, 0x7c04 -/* 0AC564 800AB964 8E840000 */ lw $a0, ($s4) -/* 0AC568 800AB968 00124940 */ sll $t1, $s2, 5 -/* 0AC56C 800AB96C 00135140 */ sll $t2, $s3, 5 -/* 0AC570 800AB970 2532FFFF */ addiu $s2, $t1, -1 -/* 0AC574 800AB974 2553FFFF */ addiu $s3, $t2, -1 -/* 0AC578 800AB978 0012CC00 */ sll $t9, $s2, 0x10 -/* 0AC57C 800AB97C 00136C00 */ sll $t5, $s3, 0x10 -/* 0AC580 800AB980 00046100 */ sll $t4, $a0, 4 -/* 0AC584 800AB984 00199403 */ sra $s2, $t9, 0x10 -/* 0AC588 800AB988 000D9C03 */ sra $s3, $t5, 0x10 -/* 0AC58C 800AB98C 01802025 */ move $a0, $t4 -/* 0AC590 800AB990 0C01C327 */ jal func_80070C9C -/* 0AC594 800AB994 02C02825 */ move $a1, $s6 -/* 0AC598 800AB998 8E980000 */ lw $t8, ($s4) -/* 0AC59C 800AB99C 3C03800E */ lui $v1, %hi(D_800E290C) # $v1, 0x800e -/* 0AC5A0 800AB9A0 2463290C */ addiu $v1, %lo(D_800E290C) # addiu $v1, $v1, 0x290c -/* 0AC5A4 800AB9A4 1B000057 */ blez $t8, .L800ABB04 -/* 0AC5A8 800AB9A8 AC620000 */ sw $v0, ($v1) -/* 0AC5AC 800AB9AC 00008025 */ move $s0, $zero -.L800AB9B0: -/* 0AC5B0 800AB9B0 8C6E0000 */ lw $t6, ($v1) -/* 0AC5B4 800AB9B4 00112040 */ sll $a0, $s1, 1 -/* 0AC5B8 800AB9B8 01D04821 */ addu $t1, $t6, $s0 -/* 0AC5BC 800AB9BC A1200000 */ sb $zero, ($t1) -/* 0AC5C0 800AB9C0 8C790000 */ lw $t9, ($v1) -/* 0AC5C4 800AB9C4 24820003 */ addiu $v0, $a0, 3 -/* 0AC5C8 800AB9C8 03305821 */ addu $t3, $t9, $s0 -/* 0AC5CC 800AB9CC A1620001 */ sb $v0, 1($t3) -/* 0AC5D0 800AB9D0 8C6A0000 */ lw $t2, ($v1) -/* 0AC5D4 800AB9D4 24850001 */ addiu $a1, $a0, 1 -/* 0AC5D8 800AB9D8 01506821 */ addu $t5, $t2, $s0 -/* 0AC5DC 800AB9DC A5A00004 */ sh $zero, 4($t5) -/* 0AC5E0 800AB9E0 8C6F0000 */ lw $t7, ($v1) -/* 0AC5E4 800AB9E4 26310002 */ addiu $s1, $s1, 2 -/* 0AC5E8 800AB9E8 01F06021 */ addu $t4, $t7, $s0 -/* 0AC5EC 800AB9EC A5930006 */ sh $s3, 6($t4) -/* 0AC5F0 800AB9F0 8C780000 */ lw $t8, ($v1) -/* 0AC5F4 800AB9F4 00000000 */ nop -/* 0AC5F8 800AB9F8 03107021 */ addu $t6, $t8, $s0 -/* 0AC5FC 800AB9FC A1C50002 */ sb $a1, 2($t6) -/* 0AC600 800ABA00 8C690000 */ lw $t1, ($v1) -/* 0AC604 800ABA04 00000000 */ nop -/* 0AC608 800ABA08 0130C821 */ addu $t9, $t1, $s0 -/* 0AC60C 800ABA0C A7320008 */ sh $s2, 8($t9) -/* 0AC610 800ABA10 8C6B0000 */ lw $t3, ($v1) -/* 0AC614 800ABA14 00000000 */ nop -/* 0AC618 800ABA18 01705021 */ addu $t2, $t3, $s0 -/* 0AC61C 800ABA1C A540000A */ sh $zero, 0xa($t2) -/* 0AC620 800ABA20 8C6D0000 */ lw $t5, ($v1) -/* 0AC624 800ABA24 00000000 */ nop -/* 0AC628 800ABA28 01B07821 */ addu $t7, $t5, $s0 -/* 0AC62C 800ABA2C A1E40003 */ sb $a0, 3($t7) -/* 0AC630 800ABA30 8C6C0000 */ lw $t4, ($v1) -/* 0AC634 800ABA34 00000000 */ nop -/* 0AC638 800ABA38 0190C021 */ addu $t8, $t4, $s0 -/* 0AC63C 800ABA3C A700000C */ sh $zero, 0xc($t8) -/* 0AC640 800ABA40 8C6E0000 */ lw $t6, ($v1) -/* 0AC644 800ABA44 00000000 */ nop -/* 0AC648 800ABA48 01D04821 */ addu $t1, $t6, $s0 -/* 0AC64C 800ABA4C A520000E */ sh $zero, 0xe($t1) -/* 0AC650 800ABA50 8C790000 */ lw $t9, ($v1) -/* 0AC654 800ABA54 24890002 */ addiu $t1, $a0, 2 -/* 0AC658 800ABA58 03305821 */ addu $t3, $t9, $s0 -/* 0AC65C 800ABA5C A1600010 */ sb $zero, 0x10($t3) -/* 0AC660 800ABA60 8C6A0000 */ lw $t2, ($v1) -/* 0AC664 800ABA64 00000000 */ nop -/* 0AC668 800ABA68 01506821 */ addu $t5, $t2, $s0 -/* 0AC66C 800ABA6C A1A20011 */ sb $v0, 0x11($t5) -/* 0AC670 800ABA70 8C6F0000 */ lw $t7, ($v1) -/* 0AC674 800ABA74 00000000 */ nop -/* 0AC678 800ABA78 01F06021 */ addu $t4, $t7, $s0 -/* 0AC67C 800ABA7C A5800014 */ sh $zero, 0x14($t4) -/* 0AC680 800ABA80 8C780000 */ lw $t8, ($v1) -/* 0AC684 800ABA84 00000000 */ nop -/* 0AC688 800ABA88 03107021 */ addu $t6, $t8, $s0 -/* 0AC68C 800ABA8C A5D30016 */ sh $s3, 0x16($t6) -/* 0AC690 800ABA90 8C790000 */ lw $t9, ($v1) -/* 0AC694 800ABA94 00000000 */ nop -/* 0AC698 800ABA98 03305821 */ addu $t3, $t9, $s0 -/* 0AC69C 800ABA9C A1690012 */ sb $t1, 0x12($t3) -/* 0AC6A0 800ABAA0 8C6A0000 */ lw $t2, ($v1) -/* 0AC6A4 800ABAA4 00000000 */ nop -/* 0AC6A8 800ABAA8 01506821 */ addu $t5, $t2, $s0 -/* 0AC6AC 800ABAAC A5B20018 */ sh $s2, 0x18($t5) -/* 0AC6B0 800ABAB0 8C6F0000 */ lw $t7, ($v1) -/* 0AC6B4 800ABAB4 00000000 */ nop -/* 0AC6B8 800ABAB8 01F06021 */ addu $t4, $t7, $s0 -/* 0AC6BC 800ABABC A593001A */ sh $s3, 0x1a($t4) -/* 0AC6C0 800ABAC0 8C780000 */ lw $t8, ($v1) -/* 0AC6C4 800ABAC4 00000000 */ nop -/* 0AC6C8 800ABAC8 03107021 */ addu $t6, $t8, $s0 -/* 0AC6CC 800ABACC A1C50013 */ sb $a1, 0x13($t6) -/* 0AC6D0 800ABAD0 8C790000 */ lw $t9, ($v1) -/* 0AC6D4 800ABAD4 00000000 */ nop -/* 0AC6D8 800ABAD8 03304821 */ addu $t1, $t9, $s0 -/* 0AC6DC 800ABADC A532001C */ sh $s2, 0x1c($t1) -/* 0AC6E0 800ABAE0 8C6B0000 */ lw $t3, ($v1) -/* 0AC6E4 800ABAE4 00000000 */ nop -/* 0AC6E8 800ABAE8 01705021 */ addu $t2, $t3, $s0 -/* 0AC6EC 800ABAEC A540001E */ sh $zero, 0x1e($t2) -/* 0AC6F0 800ABAF0 8E8D0000 */ lw $t5, ($s4) -/* 0AC6F4 800ABAF4 26100020 */ addiu $s0, $s0, 0x20 -/* 0AC6F8 800ABAF8 022D082A */ slt $at, $s1, $t5 -/* 0AC6FC 800ABAFC 1420FFAC */ bnez $at, .L800AB9B0 -/* 0AC700 800ABB00 00000000 */ nop -.L800ABB04: -/* 0AC704 800ABB04 3C018012 */ lui $at, %hi(D_80127C08) # $at, 0x8012 -/* 0AC708 800ABB08 AC207C08 */ sw $zero, %lo(D_80127C08)($at) -/* 0AC70C 800ABB0C 8FBF0034 */ lw $ra, 0x34($sp) -.L800ABB10: -/* 0AC710 800ABB10 8FB00018 */ lw $s0, 0x18($sp) -/* 0AC714 800ABB14 8FB1001C */ lw $s1, 0x1c($sp) -/* 0AC718 800ABB18 8FB20020 */ lw $s2, 0x20($sp) -/* 0AC71C 800ABB1C 8FB30024 */ lw $s3, 0x24($sp) -/* 0AC720 800ABB20 8FB40028 */ lw $s4, 0x28($sp) -/* 0AC724 800ABB24 8FB5002C */ lw $s5, 0x2c($sp) -/* 0AC728 800ABB28 8FB60030 */ lw $s6, 0x30($sp) -/* 0AC72C 800ABB2C 03E00008 */ jr $ra -/* 0AC730 800ABB30 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_800ABB34 -/* 0AC734 800ABB34 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0AC738 800ABB38 AFB40028 */ sw $s4, 0x28($sp) -/* 0AC73C 800ABB3C 3C14800E */ lui $s4, %hi(D_800E28D8) # $s4, 0x800e -/* 0AC740 800ABB40 269428D8 */ addiu $s4, %lo(D_800E28D8) # addiu $s4, $s4, 0x28d8 -/* 0AC744 800ABB44 8E820004 */ lw $v0, 4($s4) -/* 0AC748 800ABB48 3C0E0001 */ lui $t6, 1 -/* 0AC74C 800ABB4C 01C2001A */ div $zero, $t6, $v0 -/* 0AC750 800ABB50 AFB5002C */ sw $s5, 0x2c($sp) -/* 0AC754 800ABB54 AFB60030 */ sw $s6, 0x30($sp) -/* 0AC758 800ABB58 AFB20020 */ sw $s2, 0x20($sp) -/* 0AC75C 800ABB5C AFB1001C */ sw $s1, 0x1c($sp) -/* 0AC760 800ABB60 AFB00018 */ sw $s0, 0x18($sp) -/* 0AC764 800ABB64 AFBF0034 */ sw $ra, 0x34($sp) -/* 0AC768 800ABB68 AFB30024 */ sw $s3, 0x24($sp) -/* 0AC76C 800ABB6C 14400002 */ bnez $v0, .L800ABB78 -/* 0AC770 800ABB70 00000000 */ nop -/* 0AC774 800ABB74 0007000D */ break 7 -.L800ABB78: -/* 0AC778 800ABB78 2401FFFF */ li $at, -1 -/* 0AC77C 800ABB7C 14410004 */ bne $v0, $at, .L800ABB90 -/* 0AC780 800ABB80 3C018000 */ lui $at, 0x8000 -/* 0AC784 800ABB84 15C10002 */ bne $t6, $at, .L800ABB90 -/* 0AC788 800ABB88 00000000 */ nop -/* 0AC78C 800ABB8C 0006000D */ break 6 -.L800ABB90: -/* 0AC790 800ABB90 00008825 */ move $s1, $zero -/* 0AC794 800ABB94 00008025 */ move $s0, $zero -/* 0AC798 800ABB98 00009025 */ move $s2, $zero -/* 0AC79C 800ABB9C 3C16FFFC */ lui $s6, 0xfffc -/* 0AC7A0 800ABBA0 0000A812 */ mflo $s5 -/* 0AC7A4 800ABBA4 1840001C */ blez $v0, .L800ABC18 -.L800ABBA8: -/* 0AC7A8 800ABBA8 02209825 */ move $s3, $s1 -/* 0AC7AC 800ABBAC 00137C00 */ sll $t7, $s3, 0x10 -/* 0AC7B0 800ABBB0 000F9C03 */ sra $s3, $t7, 0x10 -/* 0AC7B4 800ABBB4 00132400 */ sll $a0, $s3, 0x10 -/* 0AC7B8 800ABBB8 0004CC03 */ sra $t9, $a0, 0x10 -/* 0AC7BC 800ABBBC 0C01C20B */ jal func_8007082C -/* 0AC7C0 800ABBC0 03202025 */ move $a0, $t9 -/* 0AC7C4 800ABBC4 8E890000 */ lw $t1, ($s4) -/* 0AC7C8 800ABBC8 000240C0 */ sll $t0, $v0, 3 -/* 0AC7CC 800ABBCC 01305021 */ addu $t2, $t1, $s0 -/* 0AC7D0 800ABBD0 AD480000 */ sw $t0, ($t2) -/* 0AC7D4 800ABBD4 8E8B0000 */ lw $t3, ($s4) -/* 0AC7D8 800ABBD8 00132400 */ sll $a0, $s3, 0x10 -/* 0AC7DC 800ABBDC 00046C03 */ sra $t5, $a0, 0x10 -/* 0AC7E0 800ABBE0 01706021 */ addu $t4, $t3, $s0 -/* 0AC7E4 800ABBE4 AD960004 */ sw $s6, 4($t4) -/* 0AC7E8 800ABBE8 0C01C20C */ jal func_80070830 -/* 0AC7EC 800ABBEC 01A02025 */ move $a0, $t5 -/* 0AC7F0 800ABBF0 8E8F0000 */ lw $t7, ($s4) -/* 0AC7F4 800ABBF4 00027040 */ sll $t6, $v0, 1 -/* 0AC7F8 800ABBF8 01F0C021 */ addu $t8, $t7, $s0 -/* 0AC7FC 800ABBFC AF0E0008 */ sw $t6, 8($t8) -/* 0AC800 800ABC00 8E990004 */ lw $t9, 4($s4) -/* 0AC804 800ABC04 26520001 */ addiu $s2, $s2, 1 -/* 0AC808 800ABC08 0259082A */ slt $at, $s2, $t9 -/* 0AC80C 800ABC0C 2610000C */ addiu $s0, $s0, 0xc -/* 0AC810 800ABC10 1420FFE5 */ bnez $at, .L800ABBA8 -/* 0AC814 800ABC14 02358821 */ addu $s1, $s1, $s5 -.L800ABC18: -/* 0AC818 800ABC18 3C09800E */ lui $t1, %hi(D_800E291C) # $t1, 0x800e -/* 0AC81C 800ABC1C 8D29291C */ lw $t1, %lo(D_800E291C)($t1) -/* 0AC820 800ABC20 00000000 */ nop -/* 0AC824 800ABC24 8D240000 */ lw $a0, ($t1) -/* 0AC828 800ABC28 0C01EB9D */ jal func_8007AE74 -/* 0AC82C 800ABC2C 00000000 */ nop -/* 0AC830 800ABC30 8FBF0034 */ lw $ra, 0x34($sp) -/* 0AC834 800ABC34 AE820008 */ sw $v0, 8($s4) -/* 0AC838 800ABC38 8FB40028 */ lw $s4, 0x28($sp) -/* 0AC83C 800ABC3C 8FB00018 */ lw $s0, 0x18($sp) -/* 0AC840 800ABC40 8FB1001C */ lw $s1, 0x1c($sp) -/* 0AC844 800ABC44 8FB20020 */ lw $s2, 0x20($sp) -/* 0AC848 800ABC48 8FB30024 */ lw $s3, 0x24($sp) -/* 0AC84C 800ABC4C 8FB5002C */ lw $s5, 0x2c($sp) -/* 0AC850 800ABC50 8FB60030 */ lw $s6, 0x30($sp) -/* 0AC854 800ABC54 03E00008 */ jr $ra -/* 0AC858 800ABC58 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_800ABC5C -/* 0AC85C 800ABC5C 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0AC860 800ABC60 AFB00018 */ sw $s0, 0x18($sp) -/* 0AC864 800ABC64 8FB00034 */ lw $s0, 0x34($sp) -/* 0AC868 800ABC68 AFBF001C */ sw $ra, 0x1c($sp) -/* 0AC86C 800ABC6C 1A00007A */ blez $s0, .L800ABE58 -/* 0AC870 800ABC70 3C028012 */ lui $v0, %hi(D_80127BB8) # $v0, 0x8012 -/* 0AC874 800ABC74 24427BB8 */ addiu $v0, %lo(D_80127BB8) # addiu $v0, $v0, 0x7bb8 -/* 0AC878 800ABC78 8C4E0014 */ lw $t6, 0x14($v0) -/* 0AC87C 800ABC7C 00000000 */ nop -/* 0AC880 800ABC80 148E0011 */ bne $a0, $t6, .L800ABCC8 -/* 0AC884 800ABC84 00000000 */ nop -/* 0AC888 800ABC88 8C4F0020 */ lw $t7, 0x20($v0) -/* 0AC88C 800ABC8C 00000000 */ nop -/* 0AC890 800ABC90 14AF000D */ bne $a1, $t7, .L800ABCC8 -/* 0AC894 800ABC94 00000000 */ nop -/* 0AC898 800ABC98 8C58002C */ lw $t8, 0x2c($v0) -/* 0AC89C 800ABC9C 00000000 */ nop -/* 0AC8A0 800ABCA0 14D80009 */ bne $a2, $t8, .L800ABCC8 -/* 0AC8A4 800ABCA4 00000000 */ nop -/* 0AC8A8 800ABCA8 8C590000 */ lw $t9, ($v0) -/* 0AC8AC 800ABCAC 8FA30030 */ lw $v1, 0x30($sp) -/* 0AC8B0 800ABCB0 14F90005 */ bne $a3, $t9, .L800ABCC8 -/* 0AC8B4 800ABCB4 00000000 */ nop -/* 0AC8B8 800ABCB8 8C480030 */ lw $t0, 0x30($v0) -/* 0AC8BC 800ABCBC 00000000 */ nop -/* 0AC8C0 800ABCC0 10680065 */ beq $v1, $t0, .L800ABE58 -/* 0AC8C4 800ABCC4 00000000 */ nop -.L800ABCC8: -/* 0AC8C8 800ABCC8 8C49000C */ lw $t1, 0xc($v0) -/* 0AC8CC 800ABCCC 8C4C0018 */ lw $t4, 0x18($v0) -/* 0AC8D0 800ABCD0 00895023 */ subu $t2, $a0, $t1 -/* 0AC8D4 800ABCD4 0150001A */ div $zero, $t2, $s0 -/* 0AC8D8 800ABCD8 00AC6823 */ subu $t5, $a1, $t4 -/* 0AC8DC 800ABCDC 8C4F0024 */ lw $t7, 0x24($v0) -/* 0AC8E0 800ABCE0 AC440014 */ sw $a0, 0x14($v0) -/* 0AC8E4 800ABCE4 00CFC023 */ subu $t8, $a2, $t7 -/* 0AC8E8 800ABCE8 AC450020 */ sw $a1, 0x20($v0) -/* 0AC8EC 800ABCEC AC46002C */ sw $a2, 0x2c($v0) -/* 0AC8F0 800ABCF0 3C08800E */ lui $t0, %hi(D_800E2C5C) # $t0, 0x800e -/* 0AC8F4 800ABCF4 8FA30030 */ lw $v1, 0x30($sp) -/* 0AC8F8 800ABCF8 16000002 */ bnez $s0, .L800ABD04 -/* 0AC8FC 800ABCFC 00000000 */ nop -/* 0AC900 800ABD00 0007000D */ break 7 -.L800ABD04: -/* 0AC904 800ABD04 2401FFFF */ li $at, -1 -/* 0AC908 800ABD08 16010004 */ bne $s0, $at, .L800ABD1C -/* 0AC90C 800ABD0C 3C018000 */ lui $at, 0x8000 -/* 0AC910 800ABD10 15410002 */ bne $t2, $at, .L800ABD1C -/* 0AC914 800ABD14 00000000 */ nop -/* 0AC918 800ABD18 0006000D */ break 6 -.L800ABD1C: -/* 0AC91C 800ABD1C 00005812 */ mflo $t3 -/* 0AC920 800ABD20 AC4B0010 */ sw $t3, 0x10($v0) -/* 0AC924 800ABD24 00000000 */ nop -/* 0AC928 800ABD28 01B0001A */ div $zero, $t5, $s0 -/* 0AC92C 800ABD2C 16000002 */ bnez $s0, .L800ABD38 -/* 0AC930 800ABD30 00000000 */ nop -/* 0AC934 800ABD34 0007000D */ break 7 -.L800ABD38: -/* 0AC938 800ABD38 2401FFFF */ li $at, -1 -/* 0AC93C 800ABD3C 16010004 */ bne $s0, $at, .L800ABD50 -/* 0AC940 800ABD40 3C018000 */ lui $at, 0x8000 -/* 0AC944 800ABD44 15A10002 */ bne $t5, $at, .L800ABD50 -/* 0AC948 800ABD48 00000000 */ nop -/* 0AC94C 800ABD4C 0006000D */ break 6 -.L800ABD50: -/* 0AC950 800ABD50 00007012 */ mflo $t6 -/* 0AC954 800ABD54 AC4E001C */ sw $t6, 0x1c($v0) -/* 0AC958 800ABD58 00000000 */ nop -/* 0AC95C 800ABD5C 0310001A */ div $zero, $t8, $s0 -/* 0AC960 800ABD60 16000002 */ bnez $s0, .L800ABD6C -/* 0AC964 800ABD64 00000000 */ nop -/* 0AC968 800ABD68 0007000D */ break 7 -.L800ABD6C: -/* 0AC96C 800ABD6C 2401FFFF */ li $at, -1 -/* 0AC970 800ABD70 16010004 */ bne $s0, $at, .L800ABD84 -/* 0AC974 800ABD74 3C018000 */ lui $at, 0x8000 -/* 0AC978 800ABD78 17010002 */ bne $t8, $at, .L800ABD84 -/* 0AC97C 800ABD7C 00000000 */ nop -/* 0AC980 800ABD80 0006000D */ break 6 -.L800ABD84: -/* 0AC984 800ABD84 0000C812 */ mflo $t9 -/* 0AC988 800ABD88 AC590028 */ sw $t9, 0x28($v0) -/* 0AC98C 800ABD8C 8D082C5C */ lw $t0, %lo(D_800E2C5C)($t0) -/* 0AC990 800ABD90 00000000 */ nop -/* 0AC994 800ABD94 15000023 */ bnez $t0, .L800ABE24 -/* 0AC998 800ABD98 00000000 */ nop -/* 0AC99C 800ABD9C 8C490000 */ lw $t1, ($v0) -/* 0AC9A0 800ABDA0 8C4C0030 */ lw $t4, 0x30($v0) -/* 0AC9A4 800ABDA4 00E95023 */ subu $t2, $a3, $t1 -/* 0AC9A8 800ABDA8 0150001A */ div $zero, $t2, $s0 -/* 0AC9AC 800ABDAC 006C6823 */ subu $t5, $v1, $t4 -/* 0AC9B0 800ABDB0 16000002 */ bnez $s0, .L800ABDBC -/* 0AC9B4 800ABDB4 00000000 */ nop -/* 0AC9B8 800ABDB8 0007000D */ break 7 -.L800ABDBC: -/* 0AC9BC 800ABDBC 2401FFFF */ li $at, -1 -/* 0AC9C0 800ABDC0 16010004 */ bne $s0, $at, .L800ABDD4 -/* 0AC9C4 800ABDC4 3C018000 */ lui $at, 0x8000 -/* 0AC9C8 800ABDC8 15410002 */ bne $t2, $at, .L800ABDD4 -/* 0AC9CC 800ABDCC 00000000 */ nop -/* 0AC9D0 800ABDD0 0006000D */ break 6 -.L800ABDD4: -/* 0AC9D4 800ABDD4 AC470008 */ sw $a3, 8($v0) -/* 0AC9D8 800ABDD8 AC430038 */ sw $v1, 0x38($v0) -/* 0AC9DC 800ABDDC AC50003C */ sw $s0, 0x3c($v0) -/* 0AC9E0 800ABDE0 00005812 */ mflo $t3 -/* 0AC9E4 800ABDE4 AC4B0004 */ sw $t3, 4($v0) -/* 0AC9E8 800ABDE8 00000000 */ nop -/* 0AC9EC 800ABDEC 01B0001A */ div $zero, $t5, $s0 -/* 0AC9F0 800ABDF0 16000002 */ bnez $s0, .L800ABDFC -/* 0AC9F4 800ABDF4 00000000 */ nop -/* 0AC9F8 800ABDF8 0007000D */ break 7 -.L800ABDFC: -/* 0AC9FC 800ABDFC 2401FFFF */ li $at, -1 -/* 0ACA00 800ABE00 16010004 */ bne $s0, $at, .L800ABE14 -/* 0ACA04 800ABE04 3C018000 */ lui $at, 0x8000 -/* 0ACA08 800ABE08 15A10002 */ bne $t5, $at, .L800ABE14 -/* 0ACA0C 800ABE0C 00000000 */ nop -/* 0ACA10 800ABE10 0006000D */ break 6 -.L800ABE14: -/* 0ACA14 800ABE14 00007012 */ mflo $t6 -/* 0ACA18 800ABE18 AC4E0034 */ sw $t6, 0x34($v0) -/* 0ACA1C 800ABE1C 1000000F */ b .L800ABE5C -/* 0ACA20 800ABE20 8FBF001C */ lw $ra, 0x1c($sp) -.L800ABE24: -/* 0ACA24 800ABE24 44902000 */ mtc1 $s0, $f4 -/* 0ACA28 800ABE28 3C014270 */ li $at, 0x42700000 # 60.000000 -/* 0ACA2C 800ABE2C 468021A0 */ cvt.s.w $f6, $f4 -/* 0ACA30 800ABE30 44814000 */ mtc1 $at, $f8 -/* 0ACA34 800ABE34 AC470000 */ sw $a3, ($v0) -/* 0ACA38 800ABE38 46083283 */ div.s $f10, $f6, $f8 -/* 0ACA3C 800ABE3C AC430030 */ sw $v1, 0x30($v0) -/* 0ACA40 800ABE40 AC40003C */ sw $zero, 0x3c($v0) -/* 0ACA44 800ABE44 24E40001 */ addiu $a0, $a3, 1 -/* 0ACA48 800ABE48 24650001 */ addiu $a1, $v1, 1 -/* 0ACA4C 800ABE4C 44065000 */ mfc1 $a2, $f10 -/* 0ACA50 800ABE50 0C02B4B1 */ jal func_800AD2C4 -/* 0ACA54 800ABE54 00000000 */ nop -.L800ABE58: -/* 0ACA58 800ABE58 8FBF001C */ lw $ra, 0x1c($sp) -.L800ABE5C: -/* 0ACA5C 800ABE5C 8FB00018 */ lw $s0, 0x18($sp) -/* 0ACA60 800ABE60 03E00008 */ jr $ra -/* 0ACA64 800ABE64 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_800ABE68 -/* 0ACA68 800ABE68 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0ACA6C 800ABE6C AFBF0014 */ sw $ra, 0x14($sp) -/* 0ACA70 800ABE70 AFA40018 */ sw $a0, 0x18($sp) -/* 0ACA74 800ABE74 AFA5001C */ sw $a1, 0x1c($sp) -/* 0ACA78 800ABE78 AFA60020 */ sw $a2, 0x20($sp) -/* 0ACA7C 800ABE7C AFA70024 */ sw $a3, 0x24($sp) -/* 0ACA80 800ABE80 8C8F0000 */ lw $t7, ($a0) -/* 0ACA84 800ABE84 3C018012 */ lui $at, %hi(D_80127C0C) # $at, 0x8012 -/* 0ACA88 800ABE88 AC2F7C0C */ sw $t7, %lo(D_80127C0C)($at) -/* 0ACA8C 800ABE8C 8CB90000 */ lw $t9, ($a1) -/* 0ACA90 800ABE90 3C018012 */ lui $at, %hi(D_80127C10) # $at, 0x8012 -/* 0ACA94 800ABE94 AC397C10 */ sw $t9, %lo(D_80127C10)($at) -/* 0ACA98 800ABE98 8CC90000 */ lw $t1, ($a2) -/* 0ACA9C 800ABE9C 3C018012 */ lui $at, %hi(D_80127C14) # $at, 0x8012 -/* 0ACAA0 800ABEA0 AC297C14 */ sw $t1, %lo(D_80127C14)($at) -/* 0ACAA4 800ABEA4 8CEB0000 */ lw $t3, ($a3) -/* 0ACAA8 800ABEA8 3C018012 */ lui $at, %hi(D_80127C18) # $at, 0x8012 -/* 0ACAAC 800ABEAC 0C01A748 */ jal func_80069D20 -/* 0ACAB0 800ABEB0 AC2B7C18 */ sw $t3, %lo(D_80127C18)($at) -/* 0ACAB4 800ABEB4 3C018012 */ lui $at, %hi(D_80127C1C) # $at, 0x8012 -/* 0ACAB8 800ABEB8 0C01A76F */ jal func_80069DBC -/* 0ACABC 800ABEBC AC227C1C */ sw $v0, %lo(D_80127C1C)($at) -/* 0ACAC0 800ABEC0 3C0C800E */ lui $t4, %hi(D_800E2C5C) # $t4, 0x800e -/* 0ACAC4 800ABEC4 8D8C2C5C */ lw $t4, %lo(D_800E2C5C)($t4) -/* 0ACAC8 800ABEC8 3C018012 */ lui $at, %hi(D_80127C20) # $at, 0x8012 -/* 0ACACC 800ABECC 11800006 */ beqz $t4, .L800ABEE8 -/* 0ACAD0 800ABED0 AC227C20 */ sw $v0, %lo(D_80127C20)($at) -/* 0ACAD4 800ABED4 8FA40028 */ lw $a0, 0x28($sp) -/* 0ACAD8 800ABED8 0C02B52E */ jal func_800AD4B8 -/* 0ACADC 800ABEDC 00000000 */ nop -/* 0ACAE0 800ABEE0 10000064 */ b .L800AC074 -/* 0ACAE4 800ABEE4 00000000 */ nop -.L800ABEE8: -/* 0ACAE8 800ABEE8 3C028012 */ lui $v0, %hi(D_80127BB8) # $v0, 0x8012 -/* 0ACAEC 800ABEEC 24427BB8 */ addiu $v0, %lo(D_80127BB8) # addiu $v0, $v0, 0x7bb8 -/* 0ACAF0 800ABEF0 8C43003C */ lw $v1, 0x3c($v0) -/* 0ACAF4 800ABEF4 8FA40028 */ lw $a0, 0x28($sp) -/* 0ACAF8 800ABEF8 1860002F */ blez $v1, .L800ABFB8 -/* 0ACAFC 800ABEFC 0083082A */ slt $at, $a0, $v1 -/* 0ACB00 800ABF00 10200022 */ beqz $at, .L800ABF8C -/* 0ACB04 800ABF04 00000000 */ nop -/* 0ACB08 800ABF08 8C4E0004 */ lw $t6, 4($v0) -/* 0ACB0C 800ABF0C 8C480010 */ lw $t0, 0x10($v0) -/* 0ACB10 800ABF10 01C40019 */ multu $t6, $a0 -/* 0ACB14 800ABF14 8C4C001C */ lw $t4, 0x1c($v0) -/* 0ACB18 800ABF18 8C4D0000 */ lw $t5, ($v0) -/* 0ACB1C 800ABF1C 8C59000C */ lw $t9, 0xc($v0) -/* 0ACB20 800ABF20 8C4B0018 */ lw $t3, 0x18($v0) -/* 0ACB24 800ABF24 00007812 */ mflo $t7 -/* 0ACB28 800ABF28 01AFC021 */ addu $t8, $t5, $t7 -/* 0ACB2C 800ABF2C AC580000 */ sw $t8, ($v0) -/* 0ACB30 800ABF30 01040019 */ multu $t0, $a0 -/* 0ACB34 800ABF34 8C580028 */ lw $t8, 0x28($v0) -/* 0ACB38 800ABF38 8C4F0024 */ lw $t7, 0x24($v0) -/* 0ACB3C 800ABF3C 00004812 */ mflo $t1 -/* 0ACB40 800ABF40 03295021 */ addu $t2, $t9, $t1 -/* 0ACB44 800ABF44 AC4A000C */ sw $t2, 0xc($v0) -/* 0ACB48 800ABF48 01840019 */ multu $t4, $a0 -/* 0ACB4C 800ABF4C 8C4A0034 */ lw $t2, 0x34($v0) -/* 0ACB50 800ABF50 8C490030 */ lw $t1, 0x30($v0) -/* 0ACB54 800ABF54 00007012 */ mflo $t6 -/* 0ACB58 800ABF58 016E6821 */ addu $t5, $t3, $t6 -/* 0ACB5C 800ABF5C 00647023 */ subu $t6, $v1, $a0 -/* 0ACB60 800ABF60 03040019 */ multu $t8, $a0 -/* 0ACB64 800ABF64 AC4D0018 */ sw $t5, 0x18($v0) -/* 0ACB68 800ABF68 AC4E003C */ sw $t6, 0x3c($v0) -/* 0ACB6C 800ABF6C 00004012 */ mflo $t0 -/* 0ACB70 800ABF70 01E8C821 */ addu $t9, $t7, $t0 -/* 0ACB74 800ABF74 AC590024 */ sw $t9, 0x24($v0) -/* 0ACB78 800ABF78 01440019 */ multu $t2, $a0 -/* 0ACB7C 800ABF7C 00006012 */ mflo $t4 -/* 0ACB80 800ABF80 012C5821 */ addu $t3, $t1, $t4 -/* 0ACB84 800ABF84 1000000C */ b .L800ABFB8 -/* 0ACB88 800ABF88 AC4B0030 */ sw $t3, 0x30($v0) -.L800ABF8C: -/* 0ACB8C 800ABF8C 8C4D0008 */ lw $t5, 8($v0) -/* 0ACB90 800ABF90 8C580014 */ lw $t8, 0x14($v0) -/* 0ACB94 800ABF94 8C4F0020 */ lw $t7, 0x20($v0) -/* 0ACB98 800ABF98 8C48002C */ lw $t0, 0x2c($v0) -/* 0ACB9C 800ABF9C 8C590038 */ lw $t9, 0x38($v0) -/* 0ACBA0 800ABFA0 AC40003C */ sw $zero, 0x3c($v0) -/* 0ACBA4 800ABFA4 AC4D0000 */ sw $t5, ($v0) -/* 0ACBA8 800ABFA8 AC58000C */ sw $t8, 0xc($v0) -/* 0ACBAC 800ABFAC AC4F0018 */ sw $t7, 0x18($v0) -/* 0ACBB0 800ABFB0 AC480024 */ sw $t0, 0x24($v0) -/* 0ACBB4 800ABFB4 AC590030 */ sw $t9, 0x30($v0) -.L800ABFB8: -/* 0ACBB8 800ABFB8 3C0A8012 */ lui $t2, %hi(D_80127BB0) # $t2, 0x8012 -/* 0ACBBC 800ABFBC 8D4A7BB0 */ lw $t2, %lo(D_80127BB0)($t2) -/* 0ACBC0 800ABFC0 8C490000 */ lw $t1, ($v0) -/* 0ACBC4 800ABFC4 3C058012 */ lui $a1, %hi(D_80127BF8) # $a1, 0x8012 -/* 0ACBC8 800ABFC8 01490019 */ multu $t2, $t1 -/* 0ACBCC 800ABFCC 3C018012 */ lui $at, %hi(D_80127BB4) # $at, 0x8012 -/* 0ACBD0 800ABFD0 24A57BF8 */ addiu $a1, %lo(D_80127BF8) # addiu $a1, $a1, 0x7bf8 -/* 0ACBD4 800ABFD4 8FA40028 */ lw $a0, 0x28($sp) -/* 0ACBD8 800ABFD8 00006012 */ mflo $t4 -/* 0ACBDC 800ABFDC 000C5C03 */ sra $t3, $t4, 0x10 -/* 0ACBE0 800ABFE0 AC2B7BB4 */ sw $t3, %lo(D_80127BB4)($at) -/* 0ACBE4 800ABFE4 84AE0002 */ lh $t6, 2($a1) -/* 0ACBE8 800ABFE8 84A30000 */ lh $v1, ($a1) -/* 0ACBEC 800ABFEC 8C580030 */ lw $t8, 0x30($v0) -/* 0ACBF0 800ABFF0 01C36823 */ subu $t5, $t6, $v1 -/* 0ACBF4 800ABFF4 01B80019 */ multu $t5, $t8 -/* 0ACBF8 800ABFF8 00007812 */ mflo $t7 -/* 0ACBFC 800ABFFC 006F4021 */ addu $t0, $v1, $t7 -/* 0ACC00 800AC000 0008CC03 */ sra $t9, $t0, 0x10 -/* 0ACC04 800AC004 0C02B032 */ jal func_800AC0C8 -/* 0ACC08 800AC008 ACB90004 */ sw $t9, 4($a1) -/* 0ACC0C 800AC00C 3C0A8012 */ lui $t2, %hi(D_80127BB4) # $t2, 0x8012 -/* 0ACC10 800AC010 8D4A7BB4 */ lw $t2, %lo(D_80127BB4)($t2) -/* 0ACC14 800AC014 3C058012 */ lui $a1, %hi(D_80127BF8) # $a1, 0x8012 -/* 0ACC18 800AC018 19400016 */ blez $t2, .L800AC074 -/* 0ACC1C 800AC01C 24A57BF8 */ addiu $a1, %lo(D_80127BF8) # addiu $a1, $a1, 0x7bf8 -/* 0ACC20 800AC020 8CA90004 */ lw $t1, 4($a1) -/* 0ACC24 800AC024 84AC0000 */ lh $t4, ($a1) -/* 0ACC28 800AC028 3C0B8012 */ lui $t3, %hi(D_80127C08) # $t3, 0x8012 -/* 0ACC2C 800AC02C 012C082A */ slt $at, $t1, $t4 -/* 0ACC30 800AC030 10200010 */ beqz $at, .L800AC074 -/* 0ACC34 800AC034 3C0D800E */ lui $t5, 0x800e -/* 0ACC38 800AC038 8D6B7C08 */ lw $t3, %lo(D_80127C08)($t3) -/* 0ACC3C 800AC03C 3C01800E */ lui $at, %hi(D_800E2904) # $at, 0x800e -/* 0ACC40 800AC040 000B7080 */ sll $t6, $t3, 2 -/* 0ACC44 800AC044 01AE6821 */ addu $t5, $t5, $t6 -/* 0ACC48 800AC048 8DAD2914 */ lw $t5, 0x2914($t5) -/* 0ACC4C 800AC04C 0C02B087 */ jal func_800AC21C -/* 0ACC50 800AC050 AC2D2904 */ sw $t5, %lo(D_800E2904)($at) -/* 0ACC54 800AC054 0C02B169 */ jal func_800AC5A4 -/* 0ACC58 800AC058 00000000 */ nop -/* 0ACC5C 800AC05C 3C028012 */ lui $v0, %hi(D_80127C08) # $v0, 0x8012 -/* 0ACC60 800AC060 24427C08 */ addiu $v0, %lo(D_80127C08) # addiu $v0, $v0, 0x7c08 -/* 0ACC64 800AC064 8C580000 */ lw $t8, ($v0) -/* 0ACC68 800AC068 240F0001 */ li $t7, 1 -/* 0ACC6C 800AC06C 01F84023 */ subu $t0, $t7, $t8 -/* 0ACC70 800AC070 AC480000 */ sw $t0, ($v0) -.L800AC074: -/* 0ACC74 800AC074 3C198012 */ lui $t9, %hi(D_80127C0C) # $t9, 0x8012 -/* 0ACC78 800AC078 8F397C0C */ lw $t9, %lo(D_80127C0C)($t9) -/* 0ACC7C 800AC07C 8FAA0018 */ lw $t2, 0x18($sp) -/* 0ACC80 800AC080 3C098012 */ lui $t1, %hi(D_80127C10) # $t1, 0x8012 -/* 0ACC84 800AC084 AD590000 */ sw $t9, ($t2) -/* 0ACC88 800AC088 8FAC001C */ lw $t4, 0x1c($sp) -/* 0ACC8C 800AC08C 8D297C10 */ lw $t1, %lo(D_80127C10)($t1) -/* 0ACC90 800AC090 3C0B8012 */ lui $t3, %hi(D_80127C14) # $t3, 0x8012 -/* 0ACC94 800AC094 AD890000 */ sw $t1, ($t4) -/* 0ACC98 800AC098 8FAE0020 */ lw $t6, 0x20($sp) -/* 0ACC9C 800AC09C 8D6B7C14 */ lw $t3, %lo(D_80127C14)($t3) -/* 0ACCA0 800AC0A0 3C0D8012 */ lui $t5, %hi(D_80127C18) # $t5, 0x8012 -/* 0ACCA4 800AC0A4 ADCB0000 */ sw $t3, ($t6) -/* 0ACCA8 800AC0A8 8FAF0024 */ lw $t7, 0x24($sp) -/* 0ACCAC 800AC0AC 8DAD7C18 */ lw $t5, %lo(D_80127C18)($t5) -/* 0ACCB0 800AC0B0 00000000 */ nop -/* 0ACCB4 800AC0B4 ADED0000 */ sw $t5, ($t7) -/* 0ACCB8 800AC0B8 8FBF0014 */ lw $ra, 0x14($sp) -/* 0ACCBC 800AC0BC 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0ACCC0 800AC0C0 03E00008 */ jr $ra -/* 0ACCC4 800AC0C4 00000000 */ nop - -glabel func_800AC0C8 -/* 0ACCC8 800AC0C8 3C098012 */ lui $t1, %hi(D_80127BB0) # $t1, 0x8012 -/* 0ACCCC 800AC0CC 25297BB0 */ addiu $t1, %lo(D_80127BB0) # addiu $t1, $t1, 0x7bb0 -/* 0ACCD0 800AC0D0 8D2E0000 */ lw $t6, ($t1) -/* 0ACCD4 800AC0D4 00803025 */ move $a2, $a0 -/* 0ACCD8 800AC0D8 19C0004E */ blez $t6, .L800AC214 -/* 0ACCDC 800AC0DC 00001025 */ move $v0, $zero -/* 0ACCE0 800AC0E0 3C0D8012 */ lui $t5, %hi(D_80127BB8) # $t5, 0x8012 -/* 0ACCE4 800AC0E4 3C0C800E */ lui $t4, %hi(D_800E28D8) # $t4, 0x800e -/* 0ACCE8 800AC0E8 3C0A800E */ lui $t2, %hi(D_800E28D4) # $t2, 0x800e -/* 0ACCEC 800AC0EC 254A28D4 */ addiu $t2, %lo(D_800E28D4) # addiu $t2, $t2, 0x28d4 -/* 0ACCF0 800AC0F0 258C28D8 */ addiu $t4, %lo(D_800E28D8) # addiu $t4, $t4, 0x28d8 -/* 0ACCF4 800AC0F4 25AD7BB8 */ addiu $t5, %lo(D_80127BB8) # addiu $t5, $t5, 0x7bb8 -/* 0ACCF8 800AC0F8 00002025 */ move $a0, $zero -/* 0ACCFC 800AC0FC 240B000C */ li $t3, 12 -.L800AC100: -/* 0ACD00 800AC100 8D4F0000 */ lw $t7, ($t2) -/* 0ACD04 800AC104 8D8E0000 */ lw $t6, ($t4) -/* 0ACD08 800AC108 01E42821 */ addu $a1, $t7, $a0 -/* 0ACD0C 800AC10C 90B8000F */ lbu $t8, 0xf($a1) -/* 0ACD10 800AC110 00000000 */ nop -/* 0ACD14 800AC114 030B0019 */ multu $t8, $t3 -/* 0ACD18 800AC118 8DB8000C */ lw $t8, 0xc($t5) -/* 0ACD1C 800AC11C 0000C812 */ mflo $t9 -/* 0ACD20 800AC120 032E1821 */ addu $v1, $t9, $t6 -/* 0ACD24 800AC124 8C6F0000 */ lw $t7, ($v1) -/* 0ACD28 800AC128 0018C840 */ sll $t9, $t8, 1 -/* 0ACD2C 800AC12C 01F97021 */ addu $t6, $t7, $t9 -/* 0ACD30 800AC130 01C60019 */ multu $t6, $a2 -/* 0ACD34 800AC134 8CB90000 */ lw $t9, ($a1) -/* 0ACD38 800AC138 0000C012 */ mflo $t8 -/* 0ACD3C 800AC13C 00187843 */ sra $t7, $t8, 1 -/* 0ACD40 800AC140 8D980018 */ lw $t8, 0x18($t4) -/* 0ACD44 800AC144 032F7021 */ addu $t6, $t9, $t7 -/* 0ACD48 800AC148 01D8C824 */ and $t9, $t6, $t8 -/* 0ACD4C 800AC14C ACB90000 */ sw $t9, ($a1) -/* 0ACD50 800AC150 8D4F0000 */ lw $t7, ($t2) -/* 0ACD54 800AC154 8DB80018 */ lw $t8, 0x18($t5) -/* 0ACD58 800AC158 8C6E0004 */ lw $t6, 4($v1) -/* 0ACD5C 800AC15C 01E42821 */ addu $a1, $t7, $a0 -/* 0ACD60 800AC160 0018C840 */ sll $t9, $t8, 1 -/* 0ACD64 800AC164 01D97821 */ addu $t7, $t6, $t9 -/* 0ACD68 800AC168 01E60019 */ multu $t7, $a2 -/* 0ACD6C 800AC16C 8CB90004 */ lw $t9, 4($a1) -/* 0ACD70 800AC170 0000C012 */ mflo $t8 -/* 0ACD74 800AC174 00187043 */ sra $t6, $t8, 1 -/* 0ACD78 800AC178 8D98001C */ lw $t8, 0x1c($t4) -/* 0ACD7C 800AC17C 032E7821 */ addu $t7, $t9, $t6 -/* 0ACD80 800AC180 01F8C824 */ and $t9, $t7, $t8 -/* 0ACD84 800AC184 ACB90004 */ sw $t9, 4($a1) -/* 0ACD88 800AC188 8D4E0000 */ lw $t6, ($t2) -/* 0ACD8C 800AC18C 8DB80024 */ lw $t8, 0x24($t5) -/* 0ACD90 800AC190 8C6F0008 */ lw $t7, 8($v1) -/* 0ACD94 800AC194 01C42821 */ addu $a1, $t6, $a0 -/* 0ACD98 800AC198 0018C840 */ sll $t9, $t8, 1 -/* 0ACD9C 800AC19C 01F97021 */ addu $t6, $t7, $t9 -/* 0ACDA0 800AC1A0 01C60019 */ multu $t6, $a2 -/* 0ACDA4 800AC1A4 8CB90008 */ lw $t9, 8($a1) -/* 0ACDA8 800AC1A8 0000C012 */ mflo $t8 -/* 0ACDAC 800AC1AC 00187843 */ sra $t7, $t8, 1 -/* 0ACDB0 800AC1B0 8D980020 */ lw $t8, 0x20($t4) -/* 0ACDB4 800AC1B4 032F7021 */ addu $t6, $t9, $t7 -/* 0ACDB8 800AC1B8 01D8C824 */ and $t9, $t6, $t8 -/* 0ACDBC 800AC1BC ACB90008 */ sw $t9, 8($a1) -/* 0ACDC0 800AC1C0 8D4F0000 */ lw $t7, ($t2) -/* 0ACDC4 800AC1C4 00000000 */ nop -/* 0ACDC8 800AC1C8 01E42821 */ addu $a1, $t7, $a0 -/* 0ACDCC 800AC1CC 90AE000F */ lbu $t6, 0xf($a1) -/* 0ACDD0 800AC1D0 00000000 */ nop -/* 0ACDD4 800AC1D4 25D80001 */ addiu $t8, $t6, 1 -/* 0ACDD8 800AC1D8 A0B8000F */ sb $t8, 0xf($a1) -/* 0ACDDC 800AC1DC 8D590000 */ lw $t9, ($t2) -/* 0ACDE0 800AC1E0 8D880004 */ lw $t0, 4($t4) -/* 0ACDE4 800AC1E4 03242821 */ addu $a1, $t9, $a0 -/* 0ACDE8 800AC1E8 90A7000F */ lbu $a3, 0xf($a1) -/* 0ACDEC 800AC1EC 00000000 */ nop -/* 0ACDF0 800AC1F0 00E8082A */ slt $at, $a3, $t0 -/* 0ACDF4 800AC1F4 14200002 */ bnez $at, .L800AC200 -/* 0ACDF8 800AC1F8 00E87823 */ subu $t7, $a3, $t0 -/* 0ACDFC 800AC1FC A0AF000F */ sb $t7, 0xf($a1) -.L800AC200: -/* 0ACE00 800AC200 8D2E0000 */ lw $t6, ($t1) -/* 0ACE04 800AC204 24420001 */ addiu $v0, $v0, 1 -/* 0ACE08 800AC208 004E082A */ slt $at, $v0, $t6 -/* 0ACE0C 800AC20C 1420FFBC */ bnez $at, .L800AC100 -/* 0ACE10 800AC210 24840010 */ addiu $a0, $a0, 0x10 -.L800AC214: -/* 0ACE14 800AC214 03E00008 */ jr $ra -/* 0ACE18 800AC218 00000000 */ nop - -glabel func_800AC21C -/* 0ACE1C 800AC21C 27BDFF88 */ addiu $sp, $sp, -0x78 -/* 0ACE20 800AC220 3C028012 */ lui $v0, %hi(D_80127C1C) # $v0, 0x8012 -/* 0ACE24 800AC224 8C427C1C */ lw $v0, %lo(D_80127C1C)($v0) -/* 0ACE28 800AC228 AFBF0044 */ sw $ra, 0x44($sp) -/* 0ACE2C 800AC22C AFBE0040 */ sw $fp, 0x40($sp) -/* 0ACE30 800AC230 AFB7003C */ sw $s7, 0x3c($sp) -/* 0ACE34 800AC234 AFB60038 */ sw $s6, 0x38($sp) -/* 0ACE38 800AC238 AFB50034 */ sw $s5, 0x34($sp) -/* 0ACE3C 800AC23C AFB40030 */ sw $s4, 0x30($sp) -/* 0ACE40 800AC240 AFB3002C */ sw $s3, 0x2c($sp) -/* 0ACE44 800AC244 AFB20028 */ sw $s2, 0x28($sp) -/* 0ACE48 800AC248 AFB10024 */ sw $s1, 0x24($sp) -/* 0ACE4C 800AC24C AFB00020 */ sw $s0, 0x20($sp) -/* 0ACE50 800AC250 E7B50018 */ swc1 $f21, 0x18($sp) -/* 0ACE54 800AC254 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 0ACE58 800AC258 3C014780 */ li $at, 0x47800000 # 65536.000000 -/* 0ACE5C 800AC25C 44810000 */ mtc1 $at, $f0 -/* 0ACE60 800AC260 C444000C */ lwc1 $f4, 0xc($v0) -/* 0ACE64 800AC264 C44A0010 */ lwc1 $f10, 0x10($v0) -/* 0ACE68 800AC268 46002182 */ mul.s $f6, $f4, $f0 -/* 0ACE6C 800AC26C C4440014 */ lwc1 $f4, 0x14($v0) -/* 0ACE70 800AC270 3C14800E */ lui $s4, %hi(D_800E2908) # $s4, 0x800e -/* 0ACE74 800AC274 26942908 */ addiu $s4, %lo(D_800E2908) # addiu $s4, $s4, 0x2908 -/* 0ACE78 800AC278 444EF800 */ cfc1 $t6, $31 -/* 0ACE7C 800AC27C AE800000 */ sw $zero, ($s4) -/* 0ACE80 800AC280 35C10003 */ ori $at, $t6, 3 -/* 0ACE84 800AC284 38210002 */ xori $at, $at, 2 -/* 0ACE88 800AC288 44C1F800 */ ctc1 $at, $31 -/* 0ACE8C 800AC28C 3C198012 */ lui $t9, %hi(D_80127BB4) # $t9, 0x8012 -/* 0ACE90 800AC290 46003224 */ cvt.w.s $f8, $f6 -/* 0ACE94 800AC294 8F397BB4 */ lw $t9, %lo(D_80127BB4)($t9) -/* 0ACE98 800AC298 44CEF800 */ ctc1 $t6, $31 -/* 0ACE9C 800AC29C 44034000 */ mfc1 $v1, $f8 -/* 0ACEA0 800AC2A0 46005402 */ mul.s $f16, $f10, $f0 -/* 0ACEA4 800AC2A4 3C11800E */ lui $s1, %hi(D_800E2904) # $s1, 0x800e -/* 0ACEA8 800AC2A8 8E312904 */ lw $s1, %lo(D_800E2904)($s1) -/* 0ACEAC 800AC2AC 3C168012 */ lui $s6, %hi(D_80127BF8) # $s6, 0x8012 -/* 0ACEB0 800AC2B0 444FF800 */ cfc1 $t7, $31 -/* 0ACEB4 800AC2B4 3C17800E */ lui $s7, %hi(D_800E28D4) # $s7, 0x800e -/* 0ACEB8 800AC2B8 35E10003 */ ori $at, $t7, 3 -/* 0ACEBC 800AC2BC 38210002 */ xori $at, $at, 2 -/* 0ACEC0 800AC2C0 44C1F800 */ ctc1 $at, $31 -/* 0ACEC4 800AC2C4 3C1E8012 */ lui $fp, %hi(D_80127C20) # $fp, 0x8012 -/* 0ACEC8 800AC2C8 460084A4 */ cvt.w.s $f18, $f16 -/* 0ACECC 800AC2CC 27DE7C20 */ addiu $fp, %lo(D_80127C20) # addiu $fp, $fp, 0x7c20 -/* 0ACED0 800AC2D0 44CFF800 */ ctc1 $t7, $31 -/* 0ACED4 800AC2D4 44079000 */ mfc1 $a3, $f18 -/* 0ACED8 800AC2D8 46002182 */ mul.s $f6, $f4, $f0 -/* 0ACEDC 800AC2DC 26F728D4 */ addiu $s7, %lo(D_800E28D4) # addiu $s7, $s7, 0x28d4 -/* 0ACEE0 800AC2E0 26D67BF8 */ addiu $s6, %lo(D_80127BF8) # addiu $s6, $s6, 0x7bf8 -/* 0ACEE4 800AC2E4 3C10800E */ lui $s0, %hi(D_800E28D8) # $s0, 0x800e -/* 0ACEE8 800AC2E8 4458F800 */ cfc1 $t8, $31 -/* 0ACEEC 800AC2EC 00009025 */ move $s2, $zero -/* 0ACEF0 800AC2F0 37010003 */ ori $at, $t8, 3 -/* 0ACEF4 800AC2F4 38210002 */ xori $at, $at, 2 -/* 0ACEF8 800AC2F8 44C1F800 */ ctc1 $at, $31 -/* 0ACEFC 800AC2FC 3C013780 */ li $at, 0x37800000 # 0.000015 -/* 0ACF00 800AC300 46003224 */ cvt.w.s $f8, $f6 -/* 0ACF04 800AC304 00009825 */ move $s3, $zero -/* 0ACF08 800AC308 44084000 */ mfc1 $t0, $f8 -/* 0ACF0C 800AC30C 44D8F800 */ ctc1 $t8, $31 -/* 0ACF10 800AC310 1B200096 */ blez $t9, .L800AC56C -/* 0ACF14 800AC314 27B50064 */ addiu $s5, $sp, 0x64 -/* 0ACF18 800AC318 4481A000 */ mtc1 $at, $f20 -/* 0ACF1C 800AC31C AFA30058 */ sw $v1, 0x58($sp) -/* 0ACF20 800AC320 AFA70054 */ sw $a3, 0x54($sp) -/* 0ACF24 800AC324 AFA80050 */ sw $t0, 0x50($sp) -/* 0ACF28 800AC328 261028D8 */ addiu $s0, %lo(D_800E28D8) # addiu $s0, $s0, 0x28d8 -.L800AC32C: -/* 0ACF2C 800AC32C 8EE90000 */ lw $t1, ($s7) -/* 0ACF30 800AC330 8FA30058 */ lw $v1, 0x58($sp) -/* 0ACF34 800AC334 01331021 */ addu $v0, $t1, $s3 -/* 0ACF38 800AC338 8C4A0000 */ lw $t2, ($v0) -/* 0ACF3C 800AC33C 8E0C0018 */ lw $t4, 0x18($s0) -/* 0ACF40 800AC340 8E0E000C */ lw $t6, 0xc($s0) -/* 0ACF44 800AC344 01435823 */ subu $t3, $t2, $v1 -/* 0ACF48 800AC348 016C6824 */ and $t5, $t3, $t4 -/* 0ACF4C 800AC34C 01AE7821 */ addu $t7, $t5, $t6 -/* 0ACF50 800AC350 448F5000 */ mtc1 $t7, $f10 -/* 0ACF54 800AC354 8FA70054 */ lw $a3, 0x54($sp) -/* 0ACF58 800AC358 46805420 */ cvt.s.w $f16, $f10 -/* 0ACF5C 800AC35C 8E09001C */ lw $t1, 0x1c($s0) -/* 0ACF60 800AC360 8E0B0010 */ lw $t3, 0x10($s0) -/* 0ACF64 800AC364 46148482 */ mul.s $f18, $f16, $f20 -/* 0ACF68 800AC368 8FA80050 */ lw $t0, 0x50($sp) -/* 0ACF6C 800AC36C 8E0F0020 */ lw $t7, 0x20($s0) -/* 0ACF70 800AC370 8FC40000 */ lw $a0, ($fp) -/* 0ACF74 800AC374 E7B20064 */ swc1 $f18, 0x64($sp) -/* 0ACF78 800AC378 8C580004 */ lw $t8, 4($v0) -/* 0ACF7C 800AC37C 02A02825 */ move $a1, $s5 -/* 0ACF80 800AC380 0307C823 */ subu $t9, $t8, $a3 -/* 0ACF84 800AC384 03295024 */ and $t2, $t9, $t1 -/* 0ACF88 800AC388 014B6021 */ addu $t4, $t2, $t3 -/* 0ACF8C 800AC38C 448C2000 */ mtc1 $t4, $f4 -/* 0ACF90 800AC390 8E190014 */ lw $t9, 0x14($s0) -/* 0ACF94 800AC394 468021A0 */ cvt.s.w $f6, $f4 -/* 0ACF98 800AC398 02A03025 */ move $a2, $s5 -/* 0ACF9C 800AC39C 46143202 */ mul.s $f8, $f6, $f20 -/* 0ACFA0 800AC3A0 E7A80068 */ swc1 $f8, 0x68($sp) -/* 0ACFA4 800AC3A4 8C4D0008 */ lw $t5, 8($v0) -/* 0ACFA8 800AC3A8 00000000 */ nop -/* 0ACFAC 800AC3AC 01A87023 */ subu $t6, $t5, $t0 -/* 0ACFB0 800AC3B0 01CFC024 */ and $t8, $t6, $t7 -/* 0ACFB4 800AC3B4 03194821 */ addu $t1, $t8, $t9 -/* 0ACFB8 800AC3B8 44895000 */ mtc1 $t1, $f10 -/* 0ACFBC 800AC3BC 00000000 */ nop -/* 0ACFC0 800AC3C0 46805420 */ cvt.s.w $f16, $f10 -/* 0ACFC4 800AC3C4 46148482 */ mul.s $f18, $f16, $f20 -/* 0ACFC8 800AC3C8 0C01BDBB */ jal func_8006F6EC -/* 0ACFCC 800AC3CC E7B2006C */ swc1 $f18, 0x6c($sp) -/* 0ACFD0 800AC3D0 444AF800 */ cfc1 $t2, $31 -/* 0ACFD4 800AC3D4 C7A4006C */ lwc1 $f4, 0x6c($sp) -/* 0ACFD8 800AC3D8 35410003 */ ori $at, $t2, 3 -/* 0ACFDC 800AC3DC 38210002 */ xori $at, $at, 2 -/* 0ACFE0 800AC3E0 44C1F800 */ ctc1 $at, $31 -/* 0ACFE4 800AC3E4 86CD0000 */ lh $t5, ($s6) -/* 0ACFE8 800AC3E8 460021A4 */ cvt.w.s $f6, $f4 -/* 0ACFEC 800AC3EC 44023000 */ mfc1 $v0, $f6 -/* 0ACFF0 800AC3F0 44CAF800 */ ctc1 $t2, $31 -/* 0ACFF4 800AC3F4 00025C00 */ sll $t3, $v0, 0x10 -/* 0ACFF8 800AC3F8 000B6403 */ sra $t4, $t3, 0x10 -/* 0ACFFC 800AC3FC 018D082A */ slt $at, $t4, $t5 -/* 0AD000 800AC400 10200054 */ beqz $at, .L800AC554 -/* 0AD004 800AC404 A7AC0074 */ sh $t4, 0x74($sp) -/* 0AD008 800AC408 8ECE0004 */ lw $t6, 4($s6) -/* 0AD00C 800AC40C A7AC0074 */ sh $t4, 0x74($sp) -/* 0AD010 800AC410 01CC082A */ slt $at, $t6, $t4 -/* 0AD014 800AC414 1020004F */ beqz $at, .L800AC554 -/* 0AD018 800AC418 00000000 */ nop -/* 0AD01C 800AC41C 444FF800 */ cfc1 $t7, $31 -/* 0AD020 800AC420 C7A80064 */ lwc1 $f8, 0x64($sp) -/* 0AD024 800AC424 35E10003 */ ori $at, $t7, 3 -/* 0AD028 800AC428 38210002 */ xori $at, $at, 2 -/* 0AD02C 800AC42C 44C1F800 */ ctc1 $at, $31 -/* 0AD030 800AC430 C7B00068 */ lwc1 $f16, 0x68($sp) -/* 0AD034 800AC434 460042A4 */ cvt.w.s $f10, $f8 -/* 0AD038 800AC438 860A0024 */ lh $t2, 0x24($s0) -/* 0AD03C 800AC43C 44CFF800 */ ctc1 $t7, $31 -/* 0AD040 800AC440 440C5000 */ mfc1 $t4, $f10 -/* 0AD044 800AC444 26310028 */ addiu $s1, $s1, 0x28 -/* 0AD048 800AC448 4459F800 */ cfc1 $t9, $31 -/* 0AD04C 800AC44C A7AC0070 */ sh $t4, 0x70($sp) -/* 0AD050 800AC450 37210003 */ ori $at, $t9, 3 -/* 0AD054 800AC454 38210002 */ xori $at, $at, 2 -/* 0AD058 800AC458 44C1F800 */ ctc1 $at, $31 -/* 0AD05C 800AC45C 018A6823 */ subu $t5, $t4, $t2 -/* 0AD060 800AC460 460084A4 */ cvt.w.s $f18, $f16 -/* 0AD064 800AC464 44099000 */ mfc1 $t1, $f18 -/* 0AD068 800AC468 44D9F800 */ ctc1 $t9, $31 -/* 0AD06C 800AC46C A7A90072 */ sh $t1, 0x72($sp) -/* 0AD070 800AC470 A62DFFD8 */ sh $t5, -0x28($s1) -/* 0AD074 800AC474 860F0026 */ lh $t7, 0x26($s0) -/* 0AD078 800AC478 87AE0072 */ lh $t6, 0x72($sp) -/* 0AD07C 800AC47C 00000000 */ nop -/* 0AD080 800AC480 01CFC821 */ addu $t9, $t6, $t7 -/* 0AD084 800AC484 A639FFDA */ sh $t9, -0x26($s1) -/* 0AD088 800AC488 87A90074 */ lh $t1, 0x74($sp) -/* 0AD08C 800AC48C 00000000 */ nop -/* 0AD090 800AC490 A629FFDC */ sh $t1, -0x24($s1) -/* 0AD094 800AC494 860B0024 */ lh $t3, 0x24($s0) -/* 0AD098 800AC498 87B80070 */ lh $t8, 0x70($sp) -/* 0AD09C 800AC49C 00000000 */ nop -/* 0AD0A0 800AC4A0 030B6021 */ addu $t4, $t8, $t3 -/* 0AD0A4 800AC4A4 A62CFFE2 */ sh $t4, -0x1e($s1) -/* 0AD0A8 800AC4A8 860D0026 */ lh $t5, 0x26($s0) -/* 0AD0AC 800AC4AC 87AA0072 */ lh $t2, 0x72($sp) -/* 0AD0B0 800AC4B0 00000000 */ nop -/* 0AD0B4 800AC4B4 014D7021 */ addu $t6, $t2, $t5 -/* 0AD0B8 800AC4B8 A62EFFE4 */ sh $t6, -0x1c($s1) -/* 0AD0BC 800AC4BC 87AF0074 */ lh $t7, 0x74($sp) -/* 0AD0C0 800AC4C0 00000000 */ nop -/* 0AD0C4 800AC4C4 A62FFFE6 */ sh $t7, -0x1a($s1) -/* 0AD0C8 800AC4C8 86090024 */ lh $t1, 0x24($s0) -/* 0AD0CC 800AC4CC 87B90070 */ lh $t9, 0x70($sp) -/* 0AD0D0 800AC4D0 00000000 */ nop -/* 0AD0D4 800AC4D4 0329C021 */ addu $t8, $t9, $t1 -/* 0AD0D8 800AC4D8 A638FFEC */ sh $t8, -0x14($s1) -/* 0AD0DC 800AC4DC 860C0026 */ lh $t4, 0x26($s0) -/* 0AD0E0 800AC4E0 87AB0072 */ lh $t3, 0x72($sp) -/* 0AD0E4 800AC4E4 00000000 */ nop -/* 0AD0E8 800AC4E8 016C5023 */ subu $t2, $t3, $t4 -/* 0AD0EC 800AC4EC A62AFFEE */ sh $t2, -0x12($s1) -/* 0AD0F0 800AC4F0 87AD0074 */ lh $t5, 0x74($sp) -/* 0AD0F4 800AC4F4 00000000 */ nop -/* 0AD0F8 800AC4F8 A62DFFF0 */ sh $t5, -0x10($s1) -/* 0AD0FC 800AC4FC 860F0024 */ lh $t7, 0x24($s0) -/* 0AD100 800AC500 87AE0070 */ lh $t6, 0x70($sp) -/* 0AD104 800AC504 00000000 */ nop -/* 0AD108 800AC508 01CFC823 */ subu $t9, $t6, $t7 -/* 0AD10C 800AC50C A639FFF6 */ sh $t9, -0xa($s1) -/* 0AD110 800AC510 86180026 */ lh $t8, 0x26($s0) -/* 0AD114 800AC514 87A90072 */ lh $t1, 0x72($sp) -/* 0AD118 800AC518 3C0E800E */ lui $t6, %hi(D_800E2910) # $t6, 0x800e -/* 0AD11C 800AC51C 01385823 */ subu $t3, $t1, $t8 -/* 0AD120 800AC520 A62BFFF8 */ sh $t3, -8($s1) -/* 0AD124 800AC524 87AC0074 */ lh $t4, 0x74($sp) -/* 0AD128 800AC528 00000000 */ nop -/* 0AD12C 800AC52C A62CFFFA */ sh $t4, -6($s1) -/* 0AD130 800AC530 8E8A0000 */ lw $t2, ($s4) -/* 0AD134 800AC534 00000000 */ nop -/* 0AD138 800AC538 254D0004 */ addiu $t5, $t2, 4 -/* 0AD13C 800AC53C AE8D0000 */ sw $t5, ($s4) -/* 0AD140 800AC540 8DCE2910 */ lw $t6, %lo(D_800E2910)($t6) -/* 0AD144 800AC544 000DC883 */ sra $t9, $t5, 2 -/* 0AD148 800AC548 00194840 */ sll $t1, $t9, 1 -/* 0AD14C 800AC54C 01C9C021 */ addu $t8, $t6, $t1 -/* 0AD150 800AC550 A7120000 */ sh $s2, ($t8) -.L800AC554: -/* 0AD154 800AC554 3C0B8012 */ lui $t3, %hi(D_80127BB4) # $t3, 0x8012 -/* 0AD158 800AC558 8D6B7BB4 */ lw $t3, %lo(D_80127BB4)($t3) -/* 0AD15C 800AC55C 26520001 */ addiu $s2, $s2, 1 -/* 0AD160 800AC560 024B082A */ slt $at, $s2, $t3 -/* 0AD164 800AC564 1420FF71 */ bnez $at, .L800AC32C -/* 0AD168 800AC568 26730010 */ addiu $s3, $s3, 0x10 -.L800AC56C: -/* 0AD16C 800AC56C 8FBF0044 */ lw $ra, 0x44($sp) -/* 0AD170 800AC570 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 0AD174 800AC574 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 0AD178 800AC578 8FB00020 */ lw $s0, 0x20($sp) -/* 0AD17C 800AC57C 8FB10024 */ lw $s1, 0x24($sp) -/* 0AD180 800AC580 8FB20028 */ lw $s2, 0x28($sp) -/* 0AD184 800AC584 8FB3002C */ lw $s3, 0x2c($sp) -/* 0AD188 800AC588 8FB40030 */ lw $s4, 0x30($sp) -/* 0AD18C 800AC58C 8FB50034 */ lw $s5, 0x34($sp) -/* 0AD190 800AC590 8FB60038 */ lw $s6, 0x38($sp) -/* 0AD194 800AC594 8FB7003C */ lw $s7, 0x3c($sp) -/* 0AD198 800AC598 8FBE0040 */ lw $fp, 0x40($sp) -/* 0AD19C 800AC59C 03E00008 */ jr $ra -/* 0AD1A0 800AC5A0 27BD0078 */ addiu $sp, $sp, 0x78 - -glabel func_800AC5A4 -/* 0AD1A4 800AC5A4 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0AD1A8 800AC5A8 AFB10018 */ sw $s1, 0x18($sp) -/* 0AD1AC 800AC5AC 3C11800E */ lui $s1, %hi(D_800E28D8) # $s1, 0x800e -/* 0AD1B0 800AC5B0 263128D8 */ addiu $s1, %lo(D_800E28D8) # addiu $s1, $s1, 0x28d8 -/* 0AD1B4 800AC5B4 8E2E0008 */ lw $t6, 8($s1) -/* 0AD1B8 800AC5B8 AFBF002C */ sw $ra, 0x2c($sp) -/* 0AD1BC 800AC5BC AFB50028 */ sw $s5, 0x28($sp) -/* 0AD1C0 800AC5C0 AFB40024 */ sw $s4, 0x24($sp) -/* 0AD1C4 800AC5C4 AFB30020 */ sw $s3, 0x20($sp) -/* 0AD1C8 800AC5C8 AFB2001C */ sw $s2, 0x1c($sp) -/* 0AD1CC 800AC5CC 11C00097 */ beqz $t6, .L800AC82C -/* 0AD1D0 800AC5D0 AFB00014 */ sw $s0, 0x14($sp) -/* 0AD1D4 800AC5D4 3C13800E */ lui $s3, %hi(D_800E2908) # $s3, 0x800e -/* 0AD1D8 800AC5D8 26732908 */ addiu $s3, %lo(D_800E2908) # addiu $s3, $s3, 0x2908 -/* 0AD1DC 800AC5DC 8E790000 */ lw $t9, ($s3) -/* 0AD1E0 800AC5E0 3C148012 */ lui $s4, %hi(D_80127C00) # $s4, 0x8012 -/* 0AD1E4 800AC5E4 3C158012 */ lui $s5, %hi(D_80127C04) # $s5, 0x8012 -/* 0AD1E8 800AC5E8 26B57C04 */ addiu $s5, %lo(D_80127C04) # addiu $s5, $s5, 0x7c04 -/* 0AD1EC 800AC5EC 26947C00 */ addiu $s4, %lo(D_80127C00) # addiu $s4, $s4, 0x7c00 -/* 0AD1F0 800AC5F0 240F0004 */ li $t7, 4 -/* 0AD1F4 800AC5F4 24180002 */ li $t8, 2 -/* 0AD1F8 800AC5F8 2B210004 */ slti $at, $t9, 4 -/* 0AD1FC 800AC5FC AE8F0000 */ sw $t7, ($s4) -/* 0AD200 800AC600 1420008A */ bnez $at, .L800AC82C -/* 0AD204 800AC604 AEB80000 */ sw $t8, ($s5) -/* 0AD208 800AC608 0C01A76C */ jal func_80069DB0 -/* 0AD20C 800AC60C AFA00034 */ sw $zero, 0x34($sp) -/* 0AD210 800AC610 3C108012 */ lui $s0, %hi(D_80127C0C) # $s0, 0x8012 -/* 0AD214 800AC614 26107C0C */ addiu $s0, %lo(D_80127C0C) # addiu $s0, $s0, 0x7c0c -/* 0AD218 800AC618 8E030000 */ lw $v1, ($s0) -/* 0AD21C 800AC61C 3C0B8000 */ lui $t3, 0x8000 -/* 0AD220 800AC620 246E0008 */ addiu $t6, $v1, 8 -/* 0AD224 800AC624 AE0E0000 */ sw $t6, ($s0) -/* 0AD228 800AC628 3C0F0100 */ lui $t7, (0x01000040 >> 16) # lui $t7, 0x100 -/* 0AD22C 800AC62C 35EF0040 */ ori $t7, (0x01000040 & 0xFFFF) # ori $t7, $t7, 0x40 -/* 0AD230 800AC630 004BC021 */ addu $t8, $v0, $t3 -/* 0AD234 800AC634 AC780004 */ sw $t8, 4($v1) -/* 0AD238 800AC638 AC6F0000 */ sw $t7, ($v1) -/* 0AD23C 800AC63C 8E030000 */ lw $v1, ($s0) -/* 0AD240 800AC640 3C0EBC00 */ lui $t6, (0xBC00000A >> 16) # lui $t6, 0xbc00 -/* 0AD244 800AC644 24790008 */ addiu $t9, $v1, 8 -/* 0AD248 800AC648 AE190000 */ sw $t9, ($s0) -/* 0AD24C 800AC64C 35CE000A */ ori $t6, (0xBC00000A & 0xFFFF) # ori $t6, $t6, 0xa -/* 0AD250 800AC650 AC6E0000 */ sw $t6, ($v1) -/* 0AD254 800AC654 AC600004 */ sw $zero, 4($v1) -/* 0AD258 800AC658 8E250008 */ lw $a1, 8($s1) -/* 0AD25C 800AC65C 02002025 */ move $a0, $s0 -/* 0AD260 800AC660 0C01ED32 */ jal func_8007B4C8 -/* 0AD264 800AC664 24060002 */ li $a2, 2 -/* 0AD268 800AC668 8E820000 */ lw $v0, ($s4) -/* 0AD26C 800AC66C 8E690000 */ lw $t1, ($s3) -/* 0AD270 800AC670 8FA80034 */ lw $t0, 0x34($sp) -/* 0AD274 800AC674 0049082A */ slt $at, $v0, $t1 -/* 0AD278 800AC678 10200038 */ beqz $at, .L800AC75C -/* 0AD27C 800AC67C 3C0B8000 */ lui $t3, 0x8000 -/* 0AD280 800AC680 3C12800E */ lui $s2, %hi(D_800E290C) # $s2, 0x800e -/* 0AD284 800AC684 3C0D800E */ lui $t5, %hi(D_800E2904) # $t5, 0x800e -/* 0AD288 800AC688 25AD2904 */ addiu $t5, %lo(D_800E2904) # addiu $t5, $t5, 0x2904 -/* 0AD28C 800AC68C 2652290C */ addiu $s2, %lo(D_800E290C) # addiu $s2, $s2, 0x290c -/* 0AD290 800AC690 3C110500 */ lui $s1, 0x500 -/* 0AD294 800AC694 3C1F0400 */ lui $ra, 0x400 -/* 0AD298 800AC698 240C000A */ li $t4, 10 -.L800AC69C: -/* 0AD29C 800AC69C 010C0019 */ multu $t0, $t4 -/* 0AD2A0 800AC6A0 8DB80000 */ lw $t8, ($t5) -/* 0AD2A4 800AC6A4 8E030000 */ lw $v1, ($s0) -/* 0AD2A8 800AC6A8 244EFFFF */ addiu $t6, $v0, -1 -/* 0AD2AC 800AC6AC 24790008 */ addiu $t9, $v1, 8 -/* 0AD2B0 800AC6B0 AE190000 */ sw $t9, ($s0) -/* 0AD2B4 800AC6B4 00007812 */ mflo $t7 -/* 0AD2B8 800AC6B8 01F85021 */ addu $t2, $t7, $t8 -/* 0AD2BC 800AC6BC 014B3821 */ addu $a3, $t2, $t3 -/* 0AD2C0 800AC6C0 30F80006 */ andi $t8, $a3, 6 -/* 0AD2C4 800AC6C4 000E78C0 */ sll $t7, $t6, 3 -/* 0AD2C8 800AC6C8 01F8C825 */ or $t9, $t7, $t8 -/* 0AD2CC 800AC6CC 332E00FF */ andi $t6, $t9, 0xff -/* 0AD2D0 800AC6D0 000E7C00 */ sll $t7, $t6, 0x10 -/* 0AD2D4 800AC6D4 0002C8C0 */ sll $t9, $v0, 3 -/* 0AD2D8 800AC6D8 03227021 */ addu $t6, $t9, $v0 -/* 0AD2DC 800AC6DC 01FFC025 */ or $t8, $t7, $ra -/* 0AD2E0 800AC6E0 000E7840 */ sll $t7, $t6, 1 -/* 0AD2E4 800AC6E4 25F90008 */ addiu $t9, $t7, 8 -/* 0AD2E8 800AC6E8 332EFFFF */ andi $t6, $t9, 0xffff -/* 0AD2EC 800AC6EC 030E7825 */ or $t7, $t8, $t6 -/* 0AD2F0 800AC6F0 AC6F0000 */ sw $t7, ($v1) -/* 0AD2F4 800AC6F4 AC670004 */ sw $a3, 4($v1) -/* 0AD2F8 800AC6F8 8EA60000 */ lw $a2, ($s5) -/* 0AD2FC 800AC6FC 8E030000 */ lw $v1, ($s0) -/* 0AD300 800AC700 24D8FFFF */ addiu $t8, $a2, -1 -/* 0AD304 800AC704 00187100 */ sll $t6, $t8, 4 -/* 0AD308 800AC708 24790008 */ addiu $t9, $v1, 8 -/* 0AD30C 800AC70C AE190000 */ sw $t9, ($s0) -/* 0AD310 800AC710 35CF0001 */ ori $t7, $t6, 1 -/* 0AD314 800AC714 31F900FF */ andi $t9, $t7, 0xff -/* 0AD318 800AC718 0019C400 */ sll $t8, $t9, 0x10 -/* 0AD31C 800AC71C 00067900 */ sll $t7, $a2, 4 -/* 0AD320 800AC720 31F9FFFF */ andi $t9, $t7, 0xffff -/* 0AD324 800AC724 03117025 */ or $t6, $t8, $s1 -/* 0AD328 800AC728 01D9C025 */ or $t8, $t6, $t9 -/* 0AD32C 800AC72C AC780000 */ sw $t8, ($v1) -/* 0AD330 800AC730 8E4F0000 */ lw $t7, ($s2) -/* 0AD334 800AC734 00000000 */ nop -/* 0AD338 800AC738 01EB7021 */ addu $t6, $t7, $t3 -/* 0AD33C 800AC73C AC6E0004 */ sw $t6, 4($v1) -/* 0AD340 800AC740 8E820000 */ lw $v0, ($s4) -/* 0AD344 800AC744 8E690000 */ lw $t1, ($s3) -/* 0AD348 800AC748 01024021 */ addu $t0, $t0, $v0 -/* 0AD34C 800AC74C 0102C821 */ addu $t9, $t0, $v0 -/* 0AD350 800AC750 0329082A */ slt $at, $t9, $t1 -/* 0AD354 800AC754 1420FFD1 */ bnez $at, .L800AC69C -/* 0AD358 800AC758 00000000 */ nop -.L800AC75C: -/* 0AD35C 800AC75C 240C000A */ li $t4, 10 -/* 0AD360 800AC760 010C0019 */ multu $t0, $t4 -/* 0AD364 800AC764 3C0D800E */ lui $t5, %hi(D_800E2904) # $t5, 0x800e -/* 0AD368 800AC768 25AD2904 */ addiu $t5, %lo(D_800E2904) # addiu $t5, $t5, 0x2904 -/* 0AD36C 800AC76C 8DAF0000 */ lw $t7, ($t5) -/* 0AD370 800AC770 8E030000 */ lw $v1, ($s0) -/* 0AD374 800AC774 01281023 */ subu $v0, $t1, $t0 -/* 0AD378 800AC778 2459FFFF */ addiu $t9, $v0, -1 -/* 0AD37C 800AC77C 246E0008 */ addiu $t6, $v1, 8 -/* 0AD380 800AC780 AE0E0000 */ sw $t6, ($s0) -/* 0AD384 800AC784 3C1F0400 */ lui $ra, 0x400 -/* 0AD388 800AC788 3C110500 */ lui $s1, 0x500 -/* 0AD38C 800AC78C 3C12800E */ lui $s2, %hi(D_800E290C) # $s2, 0x800e -/* 0AD390 800AC790 0000C012 */ mflo $t8 -/* 0AD394 800AC794 030F5021 */ addu $t2, $t8, $t7 -/* 0AD398 800AC798 014B3821 */ addu $a3, $t2, $t3 -/* 0AD39C 800AC79C 30EF0006 */ andi $t7, $a3, 6 -/* 0AD3A0 800AC7A0 0019C0C0 */ sll $t8, $t9, 3 -/* 0AD3A4 800AC7A4 030F7025 */ or $t6, $t8, $t7 -/* 0AD3A8 800AC7A8 31D900FF */ andi $t9, $t6, 0xff -/* 0AD3AC 800AC7AC 0019C400 */ sll $t8, $t9, 0x10 -/* 0AD3B0 800AC7B0 000270C0 */ sll $t6, $v0, 3 -/* 0AD3B4 800AC7B4 01C2C821 */ addu $t9, $t6, $v0 -/* 0AD3B8 800AC7B8 031F7825 */ or $t7, $t8, $ra -/* 0AD3BC 800AC7BC 0019C040 */ sll $t8, $t9, 1 -/* 0AD3C0 800AC7C0 270E0008 */ addiu $t6, $t8, 8 -/* 0AD3C4 800AC7C4 31D9FFFF */ andi $t9, $t6, 0xffff -/* 0AD3C8 800AC7C8 01F9C025 */ or $t8, $t7, $t9 -/* 0AD3CC 800AC7CC AC780000 */ sw $t8, ($v1) -/* 0AD3D0 800AC7D0 AC670004 */ sw $a3, 4($v1) -/* 0AD3D4 800AC7D4 8E6F0000 */ lw $t7, ($s3) -/* 0AD3D8 800AC7D8 8E030000 */ lw $v1, ($s0) -/* 0AD3DC 800AC7DC 01E83023 */ subu $a2, $t7, $t0 -/* 0AD3E0 800AC7E0 0006C843 */ sra $t9, $a2, 1 -/* 0AD3E4 800AC7E4 246E0008 */ addiu $t6, $v1, 8 -/* 0AD3E8 800AC7E8 AE0E0000 */ sw $t6, ($s0) -/* 0AD3EC 800AC7EC 2738FFFF */ addiu $t8, $t9, -1 -/* 0AD3F0 800AC7F0 00187100 */ sll $t6, $t8, 4 -/* 0AD3F4 800AC7F4 35CF0001 */ ori $t7, $t6, 1 -/* 0AD3F8 800AC7F8 03203025 */ move $a2, $t9 -/* 0AD3FC 800AC7FC 31F900FF */ andi $t9, $t7, 0xff -/* 0AD400 800AC800 0019C400 */ sll $t8, $t9, 0x10 -/* 0AD404 800AC804 00067900 */ sll $t7, $a2, 4 -/* 0AD408 800AC808 31F9FFFF */ andi $t9, $t7, 0xffff -/* 0AD40C 800AC80C 03117025 */ or $t6, $t8, $s1 -/* 0AD410 800AC810 01D9C025 */ or $t8, $t6, $t9 -/* 0AD414 800AC814 2652290C */ addiu $s2, %lo(D_800E290C) # addiu $s2, $s2, 0x290c -/* 0AD418 800AC818 AC780000 */ sw $t8, ($v1) -/* 0AD41C 800AC81C 8E4F0000 */ lw $t7, ($s2) -/* 0AD420 800AC820 00000000 */ nop -/* 0AD424 800AC824 01EB7021 */ addu $t6, $t7, $t3 -/* 0AD428 800AC828 AC6E0004 */ sw $t6, 4($v1) -.L800AC82C: -/* 0AD42C 800AC82C 8FBF002C */ lw $ra, 0x2c($sp) -/* 0AD430 800AC830 8FB00014 */ lw $s0, 0x14($sp) -/* 0AD434 800AC834 8FB10018 */ lw $s1, 0x18($sp) -/* 0AD438 800AC838 8FB2001C */ lw $s2, 0x1c($sp) -/* 0AD43C 800AC83C 8FB30020 */ lw $s3, 0x20($sp) -/* 0AD440 800AC840 8FB40024 */ lw $s4, 0x24($sp) -/* 0AD444 800AC844 8FB50028 */ lw $s5, 0x28($sp) -/* 0AD448 800AC848 03E00008 */ jr $ra -/* 0AD44C 800AC84C 27BD0038 */ addiu $sp, $sp, 0x38 - -/* 0AD450 800AC850 240E0001 */ li $t6, 1 -/* 0AD454 800AC854 3C01800E */ lui $at, 0x800e -/* 0AD458 800AC858 03E00008 */ jr $ra -/* 0AD45C 800AC85C AC2E2A84 */ sw $t6, 0x2a84($at) - -/* 0AD460 800AC860 3C0E800E */ lui $t6, %hi(D_800E2A80) # $t6, 0x800e -/* 0AD464 800AC864 8DCE2A80 */ lw $t6, %lo(D_800E2A80)($t6) -/* 0AD468 800AC868 3C01800E */ lui $at, %hi(D_800E2A84) # $at, 0x800e -/* 0AD46C 800AC86C 11C00002 */ beqz $t6, .L800AC878 -/* 0AD470 800AC870 00000000 */ nop -/* 0AD474 800AC874 AC202A84 */ sw $zero, %lo(D_800E2A84)($at) -.L800AC878: -/* 0AD478 800AC878 03E00008 */ jr $ra -/* 0AD47C 800AC87C 00000000 */ nop - -glabel func_800AC880 -/* 0AD480 800AC880 3C02800E */ lui $v0, %hi(D_800E2A80) # $v0, 0x800e -/* 0AD484 800AC884 24422A80 */ addiu $v0, %lo(D_800E2A80) # addiu $v0, $v0, 0x2a80 -/* 0AD488 800AC888 8C4E0000 */ lw $t6, ($v0) -/* 0AD48C 800AC88C 240F0001 */ li $t7, 1 -/* 0AD490 800AC890 148E0003 */ bne $a0, $t6, .L800AC8A0 -/* 0AD494 800AC894 3C01800E */ lui $at, %hi(D_800E2A84) # $at, 0x800e -/* 0AD498 800AC898 AC400000 */ sw $zero, ($v0) -/* 0AD49C 800AC89C AC2F2A84 */ sw $t7, %lo(D_800E2A84)($at) -.L800AC8A0: -/* 0AD4A0 800AC8A0 03E00008 */ jr $ra -/* 0AD4A4 800AC8A4 00000000 */ nop - -glabel func_800AC8A8 -/* 0AD4A8 800AC8A8 3C05800E */ lui $a1, %hi(D_800E2A80) # $a1, 0x800e -/* 0AD4AC 800AC8AC 24A52A80 */ addiu $a1, %lo(D_800E2A80) # addiu $a1, $a1, 0x2a80 -/* 0AD4B0 800AC8B0 ACA40000 */ sw $a0, ($a1) -/* 0AD4B4 800AC8B4 3C01800E */ lui $at, %hi(D_800E2A84) # $at, 0x800e -/* 0AD4B8 800AC8B8 AC202A84 */ sw $zero, %lo(D_800E2A84)($at) -/* 0AD4BC 800AC8BC 8CAE0000 */ lw $t6, ($a1) -/* 0AD4C0 800AC8C0 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0AD4C4 800AC8C4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0AD4C8 800AC8C8 8DC3003C */ lw $v1, 0x3c($t6) -/* 0AD4CC 800AC8CC 24060001 */ li $a2, 1 -/* 0AD4D0 800AC8D0 9062000C */ lbu $v0, 0xc($v1) -/* 0AD4D4 800AC8D4 3C058012 */ lui $a1, %hi(D_80127C30) # $a1, 0x8012 -/* 0AD4D8 800AC8D8 1046000A */ beq $v0, $a2, .L800AC904 -/* 0AD4DC 800AC8DC 24A57C30 */ addiu $a1, %lo(D_80127C30) # addiu $a1, $a1, 0x7c30 -/* 0AD4E0 800AC8E0 24010002 */ li $at, 2 -/* 0AD4E4 800AC8E4 1041000C */ beq $v0, $at, .L800AC918 -/* 0AD4E8 800AC8E8 3C18800E */ lui $t8, %hi(D_800E29E0) # $t8, 0x800e -/* 0AD4EC 800AC8EC 24010003 */ li $at, 3 -/* 0AD4F0 800AC8F0 1041000D */ beq $v0, $at, .L800AC928 -/* 0AD4F4 800AC8F4 3C19800E */ lui $t9, %hi(D_800E2A30) # $t9, 0x800e -/* 0AD4F8 800AC8F8 3C018012 */ lui $at, %hi(D_80127C24) # $at, 0x8012 -/* 0AD4FC 800AC8FC 1000000D */ b .L800AC934 -/* 0AD500 800AC900 AC207C24 */ sw $zero, %lo(D_80127C24)($at) -.L800AC904: -/* 0AD504 800AC904 3C0F800E */ lui $t7, %hi(D_800E29A0) # $t7, 0x800e -/* 0AD508 800AC908 25EF29A0 */ addiu $t7, %lo(D_800E29A0) # addiu $t7, $t7, 0x29a0 -/* 0AD50C 800AC90C 3C018012 */ lui $at, %hi(D_80127C24) # $at, 0x8012 -/* 0AD510 800AC910 10000008 */ b .L800AC934 -/* 0AD514 800AC914 AC2F7C24 */ sw $t7, %lo(D_80127C24)($at) -.L800AC918: -/* 0AD518 800AC918 271829E0 */ addiu $t8, %lo(D_800E29E0) # addiu $t8, $t8, 0x29e0 -/* 0AD51C 800AC91C 3C018012 */ lui $at, %hi(D_80127C24) # $at, 0x8012 -/* 0AD520 800AC920 10000004 */ b .L800AC934 -/* 0AD524 800AC924 AC387C24 */ sw $t8, %lo(D_80127C24)($at) -.L800AC928: -/* 0AD528 800AC928 27392A30 */ addiu $t9, %lo(D_800E2A30) # addiu $t9, $t9, 0x2a30 -/* 0AD52C 800AC92C 3C018012 */ lui $at, %hi(D_80127C24) # $at, 0x8012 -/* 0AD530 800AC930 AC397C24 */ sw $t9, %lo(D_80127C24)($at) -.L800AC934: -/* 0AD534 800AC934 9062000D */ lbu $v0, 0xd($v1) -/* 0AD538 800AC938 44800000 */ mtc1 $zero, $f0 -/* 0AD53C 800AC93C 1046000A */ beq $v0, $a2, .L800AC968 -/* 0AD540 800AC940 27A4001C */ addiu $a0, $sp, 0x1c -/* 0AD544 800AC944 24010002 */ li $at, 2 -/* 0AD548 800AC948 1041000C */ beq $v0, $at, .L800AC97C -/* 0AD54C 800AC94C 3C09800E */ lui $t1, %hi(D_800E29E0) # $t1, 0x800e -/* 0AD550 800AC950 24010003 */ li $at, 3 -/* 0AD554 800AC954 1041000D */ beq $v0, $at, .L800AC98C -/* 0AD558 800AC958 3C0A800E */ lui $t2, %hi(D_800E2A30) # $t2, 0x800e -/* 0AD55C 800AC95C 3C018012 */ lui $at, %hi(D_80127C28) # $at, 0x8012 -/* 0AD560 800AC960 1000000D */ b .L800AC998 -/* 0AD564 800AC964 AC207C28 */ sw $zero, %lo(D_80127C28)($at) -.L800AC968: -/* 0AD568 800AC968 3C08800E */ lui $t0, %hi(D_800E29A0) # $t0, 0x800e -/* 0AD56C 800AC96C 250829A0 */ addiu $t0, %lo(D_800E29A0) # addiu $t0, $t0, 0x29a0 -/* 0AD570 800AC970 3C018012 */ lui $at, %hi(D_80127C28) # $at, 0x8012 -/* 0AD574 800AC974 10000008 */ b .L800AC998 -/* 0AD578 800AC978 AC287C28 */ sw $t0, %lo(D_80127C28)($at) -.L800AC97C: -/* 0AD57C 800AC97C 252929E0 */ addiu $t1, %lo(D_800E29E0) # addiu $t1, $t1, 0x29e0 -/* 0AD580 800AC980 3C018012 */ lui $at, %hi(D_80127C28) # $at, 0x8012 -/* 0AD584 800AC984 10000004 */ b .L800AC998 -/* 0AD588 800AC988 AC297C28 */ sw $t1, %lo(D_80127C28)($at) -.L800AC98C: -/* 0AD58C 800AC98C 254A2A30 */ addiu $t2, %lo(D_800E2A30) # addiu $t2, $t2, 0x2a30 -/* 0AD590 800AC990 3C018012 */ lui $at, %hi(D_80127C28) # $at, 0x8012 -/* 0AD594 800AC994 AC2A7C28 */ sw $t2, %lo(D_80127C28)($at) -.L800AC998: -/* 0AD598 800AC998 906B000E */ lbu $t3, 0xe($v1) -/* 0AD59C 800AC99C 3C0C800E */ lui $t4, %hi(D_800E2980) # $t4, 0x800e -/* 0AD5A0 800AC9A0 14CB0005 */ bne $a2, $t3, .L800AC9B8 -/* 0AD5A4 800AC9A4 3C018012 */ lui $at, 0x8012 -/* 0AD5A8 800AC9A8 258C2980 */ addiu $t4, %lo(D_800E2980) # addiu $t4, $t4, 0x2980 -/* 0AD5AC 800AC9AC 3C018012 */ lui $at, %hi(D_80127C2C) # $at, 0x8012 -/* 0AD5B0 800AC9B0 10000002 */ b .L800AC9BC -/* 0AD5B4 800AC9B4 AC2C7C2C */ sw $t4, %lo(D_80127C2C)($at) -.L800AC9B8: -/* 0AD5B8 800AC9B8 AC207C2C */ sw $zero, %lo(D_80127C2C)($at) -.L800AC9BC: -/* 0AD5BC 800AC9BC 846D000A */ lh $t5, 0xa($v1) -/* 0AD5C0 800AC9C0 3C01BF80 */ li $at, 0xBF800000 # -1.000000 -/* 0AD5C4 800AC9C4 A7AD001C */ sh $t5, 0x1c($sp) -/* 0AD5C8 800AC9C8 846E0008 */ lh $t6, 8($v1) -/* 0AD5CC 800AC9CC 44812000 */ mtc1 $at, $f4 -/* 0AD5D0 800AC9D0 A7A00020 */ sh $zero, 0x20($sp) -/* 0AD5D4 800AC9D4 E4A00000 */ swc1 $f0, ($a1) -/* 0AD5D8 800AC9D8 E4A00004 */ swc1 $f0, 4($a1) -/* 0AD5DC 800AC9DC A7AE001E */ sh $t6, 0x1e($sp) -/* 0AD5E0 800AC9E0 0C01C124 */ jal func_80070490 -/* 0AD5E4 800AC9E4 E4A40008 */ swc1 $f4, 8($a1) -/* 0AD5E8 800AC9E8 3C058012 */ lui $a1, %hi(D_80127C30) # $a1, 0x8012 -/* 0AD5EC 800AC9EC 24A57C30 */ addiu $a1, %lo(D_80127C30) # addiu $a1, $a1, 0x7c30 -/* 0AD5F0 800AC9F0 C4A60000 */ lwc1 $f6, ($a1) -/* 0AD5F4 800AC9F4 C4AA0004 */ lwc1 $f10, 4($a1) -/* 0AD5F8 800AC9F8 C4B20008 */ lwc1 $f18, 8($a1) -/* 0AD5FC 800AC9FC 8FBF0014 */ lw $ra, 0x14($sp) -/* 0AD600 800ACA00 46003207 */ neg.s $f8, $f6 -/* 0AD604 800ACA04 46005407 */ neg.s $f16, $f10 -/* 0AD608 800ACA08 46009107 */ neg.s $f4, $f18 -/* 0AD60C 800ACA0C E4A80000 */ swc1 $f8, ($a1) -/* 0AD610 800ACA10 E4B00004 */ swc1 $f16, 4($a1) -/* 0AD614 800ACA14 E4A40008 */ swc1 $f4, 8($a1) -/* 0AD618 800ACA18 03E00008 */ jr $ra -/* 0AD61C 800ACA1C 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_800ACA20 -/* 0AD620 800ACA20 27BDFF10 */ addiu $sp, $sp, -0xf0 -/* 0AD624 800ACA24 AFB60050 */ sw $s6, 0x50($sp) -/* 0AD628 800ACA28 3C16800E */ lui $s6, %hi(D_800E2A80) # $s6, 0x800e -/* 0AD62C 800ACA2C 26D62A80 */ addiu $s6, %lo(D_800E2A80) # addiu $s6, $s6, 0x2a80 -/* 0AD630 800ACA30 8ECF0000 */ lw $t7, ($s6) -/* 0AD634 800ACA34 AFB70054 */ sw $s7, 0x54($sp) -/* 0AD638 800ACA38 AFB5004C */ sw $s5, 0x4c($sp) -/* 0AD63C 800ACA3C AFB1003C */ sw $s1, 0x3c($sp) -/* 0AD640 800ACA40 AFB00038 */ sw $s0, 0x38($sp) -/* 0AD644 800ACA44 00E08025 */ move $s0, $a3 -/* 0AD648 800ACA48 00808825 */ move $s1, $a0 -/* 0AD64C 800ACA4C 00A0A825 */ move $s5, $a1 -/* 0AD650 800ACA50 00C0B825 */ move $s7, $a2 -/* 0AD654 800ACA54 AFBF005C */ sw $ra, 0x5c($sp) -/* 0AD658 800ACA58 AFBE0058 */ sw $fp, 0x58($sp) -/* 0AD65C 800ACA5C AFB40048 */ sw $s4, 0x48($sp) -/* 0AD660 800ACA60 AFB30044 */ sw $s3, 0x44($sp) -/* 0AD664 800ACA64 AFB20040 */ sw $s2, 0x40($sp) -/* 0AD668 800ACA68 E7B90030 */ swc1 $f25, 0x30($sp) -/* 0AD66C 800ACA6C E7B80034 */ swc1 $f24, 0x34($sp) -/* 0AD670 800ACA70 E7B70028 */ swc1 $f23, 0x28($sp) -/* 0AD674 800ACA74 E7B6002C */ swc1 $f22, 0x2c($sp) -/* 0AD678 800ACA78 E7B50020 */ swc1 $f21, 0x20($sp) -/* 0AD67C 800ACA7C 11E00126 */ beqz $t7, .L800ACF18 -/* 0AD680 800ACA80 E7B40024 */ swc1 $f20, 0x24($sp) -/* 0AD684 800ACA84 3C19800E */ lui $t9, %hi(D_800E2A84) # $t9, 0x800e -/* 0AD688 800ACA88 8F392A84 */ lw $t9, %lo(D_800E2A84)($t9) -/* 0AD68C 800ACA8C 00000000 */ nop -/* 0AD690 800ACA90 17200122 */ bnez $t9, .L800ACF1C -/* 0AD694 800ACA94 8FBF005C */ lw $ra, 0x5c($sp) -/* 0AD698 800ACA98 0C019884 */ jal func_80066210 -/* 0AD69C 800ACA9C 00000000 */ nop -/* 0AD6A0 800ACAA0 1440011D */ bnez $v0, .L800ACF18 -/* 0AD6A4 800ACAA4 3C01BF80 */ li $at, 0xBF800000 # -1.000000 -/* 0AD6A8 800ACAA8 8ECE0000 */ lw $t6, ($s6) -/* 0AD6AC 800ACAAC 4480A000 */ mtc1 $zero, $f20 -/* 0AD6B0 800ACAB0 8DCB003C */ lw $t3, 0x3c($t6) -/* 0AD6B4 800ACAB4 44815000 */ mtc1 $at, $f10 -/* 0AD6B8 800ACAB8 E7B400D8 */ swc1 $f20, 0xd8($sp) -/* 0AD6BC 800ACABC E7B400DC */ swc1 $f20, 0xdc($sp) -/* 0AD6C0 800ACAC0 AFAB0098 */ sw $t3, 0x98($sp) -/* 0AD6C4 800ACAC4 0C01A769 */ jal func_80069DA4 -/* 0AD6C8 800ACAC8 E7AA00E0 */ swc1 $f10, 0xe0($sp) -/* 0AD6CC 800ACACC 27A500D8 */ addiu $a1, $sp, 0xd8 -/* 0AD6D0 800ACAD0 00A03025 */ move $a2, $a1 -/* 0AD6D4 800ACAD4 0C01BDBB */ jal func_8006F6EC -/* 0AD6D8 800ACAD8 00402025 */ move $a0, $v0 -/* 0AD6DC 800ACADC 3C1E8012 */ lui $fp, %hi(D_80127C30) # $fp, 0x8012 -/* 0AD6E0 800ACAE0 27DE7C30 */ addiu $fp, %lo(D_80127C30) # addiu $fp, $fp, 0x7c30 -/* 0AD6E4 800ACAE4 C7C60000 */ lwc1 $f6, ($fp) -/* 0AD6E8 800ACAE8 C7A400D8 */ lwc1 $f4, 0xd8($sp) -/* 0AD6EC 800ACAEC C7CA0004 */ lwc1 $f10, 4($fp) -/* 0AD6F0 800ACAF0 46043202 */ mul.s $f8, $f6, $f4 -/* 0AD6F4 800ACAF4 C7A600DC */ lwc1 $f6, 0xdc($sp) -/* 0AD6F8 800ACAF8 02202025 */ move $a0, $s1 -/* 0AD6FC 800ACAFC 02A02825 */ move $a1, $s5 -/* 0AD700 800ACB00 46065102 */ mul.s $f4, $f10, $f6 -/* 0AD704 800ACB04 C7A600E0 */ lwc1 $f6, 0xe0($sp) -/* 0AD708 800ACB08 46044280 */ add.s $f10, $f8, $f4 -/* 0AD70C 800ACB0C C7C80008 */ lwc1 $f8, 8($fp) -/* 0AD710 800ACB10 00000000 */ nop -/* 0AD714 800ACB14 46083102 */ mul.s $f4, $f6, $f8 -/* 0AD718 800ACB18 460A2480 */ add.s $f18, $f4, $f10 -/* 0AD71C 800ACB1C 4612A03C */ c.lt.s $f20, $f18 -/* 0AD720 800ACB20 00000000 */ nop -/* 0AD724 800ACB24 450000FD */ bc1f .L800ACF1C -/* 0AD728 800ACB28 8FBF005C */ lw $ra, 0x5c($sp) -/* 0AD72C 800ACB2C 0C019B37 */ jal func_80066CDC -/* 0AD730 800ACB30 E7B200C8 */ swc1 $f18, 0xc8($sp) -/* 0AD734 800ACB34 02202025 */ move $a0, $s1 -/* 0AD738 800ACB38 0C01A102 */ jal func_80068408 -/* 0AD73C 800ACB3C 02A02825 */ move $a1, $s5 -/* 0AD740 800ACB40 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 0AD744 800ACB44 4481C000 */ mtc1 $at, $f24 -/* 0AD748 800ACB48 3C014380 */ li $at, 0x43800000 # 256.000000 -/* 0AD74C 800ACB4C 44813000 */ mtc1 $at, $f6 -/* 0AD750 800ACB50 C7CC0000 */ lwc1 $f12, ($fp) -/* 0AD754 800ACB54 C604000C */ lwc1 $f4, 0xc($s0) -/* 0AD758 800ACB58 46066202 */ mul.s $f8, $f12, $f6 -/* 0AD75C 800ACB5C 44813000 */ mtc1 $at, $f6 -/* 0AD760 800ACB60 C7CE0004 */ lwc1 $f14, 4($fp) -/* 0AD764 800ACB64 C7C20008 */ lwc1 $f2, 8($fp) -/* 0AD768 800ACB68 46044280 */ add.s $f10, $f8, $f4 -/* 0AD76C 800ACB6C C7B200C8 */ lwc1 $f18, 0xc8($sp) -/* 0AD770 800ACB70 46067202 */ mul.s $f8, $f14, $f6 -/* 0AD774 800ACB74 E7AA00CC */ swc1 $f10, 0xcc($sp) -/* 0AD778 800ACB78 C6040010 */ lwc1 $f4, 0x10($s0) -/* 0AD77C 800ACB7C 44813000 */ mtc1 $at, $f6 -/* 0AD780 800ACB80 46044280 */ add.s $f10, $f8, $f4 -/* 0AD784 800ACB84 00009025 */ move $s2, $zero -/* 0AD788 800ACB88 46061202 */ mul.s $f8, $f2, $f6 -/* 0AD78C 800ACB8C E7AA00D0 */ swc1 $f10, 0xd0($sp) -/* 0AD790 800ACB90 C6040014 */ lwc1 $f4, 0x14($s0) -/* 0AD794 800ACB94 C7A600D8 */ lwc1 $f6, 0xd8($sp) -/* 0AD798 800ACB98 46129502 */ mul.s $f20, $f18, $f18 -/* 0AD79C 800ACB9C 46044280 */ add.s $f10, $f8, $f4 -/* 0AD7A0 800ACBA0 A7A000A4 */ sh $zero, 0xa4($sp) -/* 0AD7A4 800ACBA4 E7AA00D4 */ swc1 $f10, 0xd4($sp) -/* 0AD7A8 800ACBA8 4614A582 */ mul.s $f22, $f20, $f20 -/* 0AD7AC 800ACBAC C7AA00DC */ lwc1 $f10, 0xdc($sp) -/* 0AD7B0 800ACBB0 A7A000A6 */ sh $zero, 0xa6($sp) -/* 0AD7B4 800ACBB4 A7A000A8 */ sh $zero, 0xa8($sp) -/* 0AD7B8 800ACBB8 4612C402 */ mul.s $f16, $f24, $f18 -/* 0AD7BC 800ACBBC 3C14FA00 */ lui $s4, 0xfa00 -/* 0AD7C0 800ACBC0 27B300A4 */ addiu $s3, $sp, 0xa4 -/* 0AD7C4 800ACBC4 24020001 */ li $v0, 1 -/* 0AD7C8 800ACBC8 46068202 */ mul.s $f8, $f16, $f6 -/* 0AD7CC 800ACBCC 460C4101 */ sub.s $f4, $f8, $f12 -/* 0AD7D0 800ACBD0 460A8182 */ mul.s $f6, $f16, $f10 -/* 0AD7D4 800ACBD4 E7A400D8 */ swc1 $f4, 0xd8($sp) -/* 0AD7D8 800ACBD8 C7A400E0 */ lwc1 $f4, 0xe0($sp) -/* 0AD7DC 800ACBDC 00000000 */ nop -/* 0AD7E0 800ACBE0 46048282 */ mul.s $f10, $f16, $f4 -/* 0AD7E4 800ACBE4 460E3201 */ sub.s $f8, $f6, $f14 -/* 0AD7E8 800ACBE8 E7A800DC */ swc1 $f8, 0xdc($sp) -/* 0AD7EC 800ACBEC 46025181 */ sub.s $f6, $f10, $f2 -/* 0AD7F0 800ACBF0 E7A600E0 */ swc1 $f6, 0xe0($sp) -.L800ACBF4: -/* 0AD7F4 800ACBF4 16400004 */ bnez $s2, .L800ACC08 -/* 0AD7F8 800ACBF8 3C108012 */ lui $s0, %hi(D_80127C2C) # $s0, 0x8012 -/* 0AD7FC 800ACBFC 8E107C2C */ lw $s0, %lo(D_80127C2C)($s0) -/* 0AD800 800ACC00 10000009 */ b .L800ACC28 -/* 0AD804 800ACC04 00000000 */ nop -.L800ACC08: -/* 0AD808 800ACC08 16420005 */ bne $s2, $v0, .L800ACC20 -/* 0AD80C 800ACC0C 3C108012 */ lui $s0, 0x8012 -/* 0AD810 800ACC10 3C108012 */ lui $s0, %hi(D_80127C24) # $s0, 0x8012 -/* 0AD814 800ACC14 8E107C24 */ lw $s0, %lo(D_80127C24)($s0) -/* 0AD818 800ACC18 10000003 */ b .L800ACC28 -/* 0AD81C 800ACC1C 00000000 */ nop -.L800ACC20: -/* 0AD820 800ACC20 8E107C28 */ lw $s0, 0x7c28($s0) -/* 0AD824 800ACC24 00000000 */ nop -.L800ACC28: -/* 0AD828 800ACC28 12000058 */ beqz $s0, .L800ACD8C -/* 0AD82C 800ACC2C 00000000 */ nop -/* 0AD830 800ACC30 8E0D0000 */ lw $t5, ($s0) -/* 0AD834 800ACC34 00000000 */ nop -/* 0AD838 800ACC38 19A00054 */ blez $t5, .L800ACD8C -/* 0AD83C 800ACC3C 00000000 */ nop -.L800ACC40: -/* 0AD840 800ACC40 C7A800CC */ lwc1 $f8, 0xcc($sp) -/* 0AD844 800ACC44 C7A400D0 */ lwc1 $f4, 0xd0($sp) -/* 0AD848 800ACC48 C7AA00D4 */ lwc1 $f10, 0xd4($sp) -/* 0AD84C 800ACC4C E7A800B0 */ swc1 $f8, 0xb0($sp) -/* 0AD850 800ACC50 E7A400B4 */ swc1 $f4, 0xb4($sp) -/* 0AD854 800ACC54 12400016 */ beqz $s2, .L800ACCB0 -/* 0AD858 800ACC58 E7AA00B8 */ swc1 $f10, 0xb8($sp) -/* 0AD85C 800ACC5C C606000C */ lwc1 $f6, 0xc($s0) -/* 0AD860 800ACC60 E7A80060 */ swc1 $f8, 0x60($sp) -/* 0AD864 800ACC64 C7A800D8 */ lwc1 $f8, 0xd8($sp) -/* 0AD868 800ACC68 00000000 */ nop -/* 0AD86C 800ACC6C 46083182 */ mul.s $f6, $f6, $f8 -/* 0AD870 800ACC70 C7A80060 */ lwc1 $f8, 0x60($sp) -/* 0AD874 800ACC74 00000000 */ nop -/* 0AD878 800ACC78 46064200 */ add.s $f8, $f8, $f6 -/* 0AD87C 800ACC7C E7A800B0 */ swc1 $f8, 0xb0($sp) -/* 0AD880 800ACC80 C606000C */ lwc1 $f6, 0xc($s0) -/* 0AD884 800ACC84 C7A800DC */ lwc1 $f8, 0xdc($sp) -/* 0AD888 800ACC88 00000000 */ nop -/* 0AD88C 800ACC8C 46083182 */ mul.s $f6, $f6, $f8 -/* 0AD890 800ACC90 46062200 */ add.s $f8, $f4, $f6 -/* 0AD894 800ACC94 C7A600E0 */ lwc1 $f6, 0xe0($sp) -/* 0AD898 800ACC98 E7A800B4 */ swc1 $f8, 0xb4($sp) -/* 0AD89C 800ACC9C C604000C */ lwc1 $f4, 0xc($s0) -/* 0AD8A0 800ACCA0 00000000 */ nop -/* 0AD8A4 800ACCA4 46062202 */ mul.s $f8, $f4, $f6 -/* 0AD8A8 800ACCA8 46085100 */ add.s $f4, $f10, $f8 -/* 0AD8AC 800ACCAC E7A400B8 */ swc1 $f4, 0xb8($sp) -.L800ACCB0: -/* 0AD8B0 800ACCB0 C6060008 */ lwc1 $f6, 8($s0) -/* 0AD8B4 800ACCB4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0AD8B8 800ACCB8 46143282 */ mul.s $f10, $f6, $f20 -/* 0AD8BC 800ACCBC E7AA00AC */ swc1 $f10, 0xac($sp) -/* 0AD8C0 800ACCC0 8E220000 */ lw $v0, ($s1) -/* 0AD8C4 800ACCC4 00000000 */ nop -/* 0AD8C8 800ACCC8 24580008 */ addiu $t8, $v0, 8 -/* 0AD8CC 800ACCCC AE380000 */ sw $t8, ($s1) -/* 0AD8D0 800ACCD0 AC540000 */ sw $s4, ($v0) -/* 0AD8D4 800ACCD4 920B0005 */ lbu $t3, 5($s0) -/* 0AD8D8 800ACCD8 920F0004 */ lbu $t7, 4($s0) -/* 0AD8DC 800ACCDC 000B6C00 */ sll $t5, $t3, 0x10 -/* 0AD8E0 800ACCE0 000FCE00 */ sll $t9, $t7, 0x18 -/* 0AD8E4 800ACCE4 032DC025 */ or $t8, $t9, $t5 -/* 0AD8E8 800ACCE8 92190007 */ lbu $t9, 7($s0) -/* 0AD8EC 800ACCEC 920F0006 */ lbu $t7, 6($s0) -/* 0AD8F0 800ACCF0 44994000 */ mtc1 $t9, $f8 -/* 0AD8F4 800ACCF4 000F7200 */ sll $t6, $t7, 8 -/* 0AD8F8 800ACCF8 030E5825 */ or $t3, $t8, $t6 -/* 0AD8FC 800ACCFC 07210004 */ bgez $t9, .L800ACD10 -/* 0AD900 800ACD00 46804120 */ cvt.s.w $f4, $f8 -/* 0AD904 800ACD04 44813000 */ mtc1 $at, $f6 -/* 0AD908 800ACD08 00000000 */ nop -/* 0AD90C 800ACD0C 46062100 */ add.s $f4, $f4, $f6 -.L800ACD10: -/* 0AD910 800ACD10 46162282 */ mul.s $f10, $f4, $f22 -/* 0AD914 800ACD14 02202025 */ move $a0, $s1 -/* 0AD918 800ACD18 02A02825 */ move $a1, $s5 -/* 0AD91C 800ACD1C 02E03025 */ move $a2, $s7 -/* 0AD920 800ACD20 444DF800 */ cfc1 $t5, $31 -/* 0AD924 800ACD24 02603825 */ move $a3, $s3 -/* 0AD928 800ACD28 35A10003 */ ori $at, $t5, 3 -/* 0AD92C 800ACD2C 38210002 */ xori $at, $at, 2 -/* 0AD930 800ACD30 44C1F800 */ ctc1 $at, $31 -/* 0AD934 800ACD34 00000000 */ nop -/* 0AD938 800ACD38 46005224 */ cvt.w.s $f8, $f10 -/* 0AD93C 800ACD3C 440C4000 */ mfc1 $t4, $f8 -/* 0AD940 800ACD40 44CDF800 */ ctc1 $t5, $31 -/* 0AD944 800ACD44 318F00FF */ andi $t7, $t4, 0xff -/* 0AD948 800ACD48 016FC025 */ or $t8, $t3, $t7 -/* 0AD94C 800ACD4C AC580004 */ sw $t8, 4($v0) -/* 0AD950 800ACD50 8ECE0000 */ lw $t6, ($s6) -/* 0AD954 800ACD54 8E0D0000 */ lw $t5, ($s0) -/* 0AD958 800ACD58 8DD90068 */ lw $t9, 0x68($t6) -/* 0AD95C 800ACD5C 000D6080 */ sll $t4, $t5, 2 -/* 0AD960 800ACD60 032C5821 */ addu $t3, $t9, $t4 -/* 0AD964 800ACD64 8D6F0000 */ lw $t7, ($t3) -/* 0AD968 800ACD68 24180104 */ li $t8, 260 -/* 0AD96C 800ACD6C AFB80014 */ sw $t8, 0x14($sp) -/* 0AD970 800ACD70 0C01A145 */ jal func_80068514 -/* 0AD974 800ACD74 AFAF0010 */ sw $t7, 0x10($sp) -/* 0AD978 800ACD78 8E0E0010 */ lw $t6, 0x10($s0) -/* 0AD97C 800ACD7C 26100010 */ addiu $s0, $s0, 0x10 -/* 0AD980 800ACD80 1DC0FFAF */ bgtz $t6, .L800ACC40 -/* 0AD984 800ACD84 00000000 */ nop -/* 0AD988 800ACD88 24020001 */ li $v0, 1 -.L800ACD8C: -/* 0AD98C 800ACD8C 16420019 */ bne $s2, $v0, .L800ACDF4 -/* 0AD990 800ACD90 24010003 */ li $at, 3 -/* 0AD994 800ACD94 C7CC0000 */ lwc1 $f12, ($fp) -/* 0AD998 800ACD98 C7A600D8 */ lwc1 $f6, 0xd8($sp) -/* 0AD99C 800ACD9C C7CE0004 */ lwc1 $f14, 4($fp) -/* 0AD9A0 800ACDA0 460C3102 */ mul.s $f4, $f6, $f12 -/* 0AD9A4 800ACDA4 C7AA00DC */ lwc1 $f10, 0xdc($sp) -/* 0AD9A8 800ACDA8 C7C20008 */ lwc1 $f2, 8($fp) -/* 0AD9AC 800ACDAC E7A60060 */ swc1 $f6, 0x60($sp) -/* 0AD9B0 800ACDB0 460E5202 */ mul.s $f8, $f10, $f14 -/* 0AD9B4 800ACDB4 46082100 */ add.s $f4, $f4, $f8 -/* 0AD9B8 800ACDB8 C7A800E0 */ lwc1 $f8, 0xe0($sp) -/* 0AD9BC 800ACDBC 00000000 */ nop -/* 0AD9C0 800ACDC0 46081182 */ mul.s $f6, $f2, $f8 -/* 0AD9C4 800ACDC4 46043180 */ add.s $f6, $f6, $f4 -/* 0AD9C8 800ACDC8 46183002 */ mul.s $f0, $f6, $f24 -/* 0AD9CC 800ACDCC C7A60060 */ lwc1 $f6, 0x60($sp) -/* 0AD9D0 800ACDD0 460C0102 */ mul.s $f4, $f0, $f12 -/* 0AD9D4 800ACDD4 46062101 */ sub.s $f4, $f4, $f6 -/* 0AD9D8 800ACDD8 460E0182 */ mul.s $f6, $f0, $f14 -/* 0AD9DC 800ACDDC E7A400D8 */ swc1 $f4, 0xd8($sp) -/* 0AD9E0 800ACDE0 460A3101 */ sub.s $f4, $f6, $f10 -/* 0AD9E4 800ACDE4 46020182 */ mul.s $f6, $f0, $f2 -/* 0AD9E8 800ACDE8 E7A400DC */ swc1 $f4, 0xdc($sp) -/* 0AD9EC 800ACDEC 46083281 */ sub.s $f10, $f6, $f8 -/* 0AD9F0 800ACDF0 E7AA00E0 */ swc1 $f10, 0xe0($sp) -.L800ACDF4: -/* 0AD9F4 800ACDF4 26520001 */ addiu $s2, $s2, 1 -/* 0AD9F8 800ACDF8 1641FF7E */ bne $s2, $at, .L800ACBF4 -/* 0AD9FC 800ACDFC 00000000 */ nop -/* 0ADA00 800ACE00 0C01E948 */ jal func_8007A520 -/* 0ADA04 800ACE04 00000000 */ nop -/* 0ADA08 800ACE08 8E230000 */ lw $v1, ($s1) -/* 0ADA0C 800ACE0C 8FAA0098 */ lw $t2, 0x98($sp) -/* 0ADA10 800ACE10 00602025 */ move $a0, $v1 -/* 0ADA14 800ACE14 3C0C800E */ lui $t4, %hi(D_800E2928) # $t4, 0x800e -/* 0ADA18 800ACE18 258C2928 */ addiu $t4, %lo(D_800E2928) # addiu $t4, $t4, 0x2928 -/* 0ADA1C 800ACE1C 3C190600 */ lui $t9, 0x600 -/* 0ADA20 800ACE20 24630008 */ addiu $v1, $v1, 8 -/* 0ADA24 800ACE24 00024403 */ sra $t0, $v0, 0x10 -/* 0ADA28 800ACE28 AC990000 */ sw $t9, ($a0) -/* 0ADA2C 800ACE2C AC8C0004 */ sw $t4, 4($a0) -/* 0ADA30 800ACE30 00602825 */ move $a1, $v1 -/* 0ADA34 800ACE34 310DFFFF */ andi $t5, $t0, 0xffff -/* 0ADA38 800ACE38 ACB40000 */ sw $s4, ($a1) -/* 0ADA3C 800ACE3C 01A04025 */ move $t0, $t5 -/* 0ADA40 800ACE40 914D0011 */ lbu $t5, 0x11($t2) -/* 0ADA44 800ACE44 914F0010 */ lbu $t7, 0x10($t2) -/* 0ADA48 800ACE48 000DCC00 */ sll $t9, $t5, 0x10 -/* 0ADA4C 800ACE4C 000FC600 */ sll $t8, $t7, 0x18 -/* 0ADA50 800ACE50 03196025 */ or $t4, $t8, $t9 -/* 0ADA54 800ACE54 91580013 */ lbu $t8, 0x13($t2) -/* 0ADA58 800ACE58 914F0012 */ lbu $t7, 0x12($t2) -/* 0ADA5C 800ACE5C 44982000 */ mtc1 $t8, $f4 -/* 0ADA60 800ACE60 000F7200 */ sll $t6, $t7, 8 -/* 0ADA64 800ACE64 3049FFFF */ andi $t1, $v0, 0xffff -/* 0ADA68 800ACE68 018E6825 */ or $t5, $t4, $t6 -/* 0ADA6C 800ACE6C 24630008 */ addiu $v1, $v1, 8 -/* 0ADA70 800ACE70 07010005 */ bgez $t8, .L800ACE88 -/* 0ADA74 800ACE74 468021A0 */ cvt.s.w $f6, $f4 -/* 0ADA78 800ACE78 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0ADA7C 800ACE7C 44814000 */ mtc1 $at, $f8 -/* 0ADA80 800ACE80 00000000 */ nop -/* 0ADA84 800ACE84 46083180 */ add.s $f6, $f6, $f8 -.L800ACE88: -/* 0ADA88 800ACE88 46163282 */ mul.s $f10, $f6, $f22 -/* 0ADA8C 800ACE8C 00603025 */ move $a2, $v1 -/* 0ADA90 800ACE90 3C0EFCFF */ lui $t6, (0xFCFFFFFF >> 16) # lui $t6, 0xfcff -/* 0ADA94 800ACE94 3C18FFFD */ lui $t8, (0xFFFDF6FB >> 16) # lui $t8, 0xfffd -/* 0ADA98 800ACE98 4459F800 */ cfc1 $t9, $31 -/* 0ADA9C 800ACE9C 3718F6FB */ ori $t8, (0xFFFDF6FB & 0xFFFF) # ori $t8, $t8, 0xf6fb -/* 0ADAA0 800ACEA0 37210003 */ ori $at, $t9, 3 -/* 0ADAA4 800ACEA4 38210002 */ xori $at, $at, 2 -/* 0ADAA8 800ACEA8 44C1F800 */ ctc1 $at, $31 -/* 0ADAAC 800ACEAC 35CEFFFF */ ori $t6, (0xFCFFFFFF & 0xFFFF) # ori $t6, $t6, 0xffff -/* 0ADAB0 800ACEB0 46005124 */ cvt.w.s $f4, $f10 -/* 0ADAB4 800ACEB4 24670008 */ addiu $a3, $v1, 8 -/* 0ADAB8 800ACEB8 440B2000 */ mfc1 $t3, $f4 -/* 0ADABC 800ACEBC 44D9F800 */ ctc1 $t9, $31 -/* 0ADAC0 800ACEC0 316F00FF */ andi $t7, $t3, 0xff -/* 0ADAC4 800ACEC4 01AF6025 */ or $t4, $t5, $t7 -/* 0ADAC8 800ACEC8 ACAC0004 */ sw $t4, 4($a1) -/* 0ADACC 800ACECC 313903FF */ andi $t9, $t1, 0x3ff -/* 0ADAD0 800ACED0 ACD80004 */ sw $t8, 4($a2) -/* 0ADAD4 800ACED4 ACCE0000 */ sw $t6, ($a2) -/* 0ADAD8 800ACED8 00195B80 */ sll $t3, $t9, 0xe -/* 0ADADC 800ACEDC 310F03FF */ andi $t7, $t0, 0x3ff -/* 0ADAE0 800ACEE0 3C01F600 */ lui $at, 0xf600 -/* 0ADAE4 800ACEE4 01616825 */ or $t5, $t3, $at -/* 0ADAE8 800ACEE8 000F6080 */ sll $t4, $t7, 2 -/* 0ADAEC 800ACEEC 01AC7025 */ or $t6, $t5, $t4 -/* 0ADAF0 800ACEF0 24E20008 */ addiu $v0, $a3, 8 -/* 0ADAF4 800ACEF4 ACEE0000 */ sw $t6, ($a3) -/* 0ADAF8 800ACEF8 ACE00004 */ sw $zero, 4($a3) -/* 0ADAFC 800ACEFC 3C18E700 */ lui $t8, 0xe700 -/* 0ADB00 800ACF00 AC580000 */ sw $t8, ($v0) -/* 0ADB04 800ACF04 AC400004 */ sw $zero, 4($v0) -/* 0ADB08 800ACF08 24430008 */ addiu $v1, $v0, 8 -/* 0ADB0C 800ACF0C AE230000 */ sw $v1, ($s1) -/* 0ADB10 800ACF10 0C01ECF4 */ jal func_8007B3D0 -/* 0ADB14 800ACF14 02202025 */ move $a0, $s1 -.L800ACF18: -/* 0ADB18 800ACF18 8FBF005C */ lw $ra, 0x5c($sp) -.L800ACF1C: -/* 0ADB1C 800ACF1C C7B50020 */ lwc1 $f21, 0x20($sp) -/* 0ADB20 800ACF20 C7B40024 */ lwc1 $f20, 0x24($sp) -/* 0ADB24 800ACF24 C7B70028 */ lwc1 $f23, 0x28($sp) -/* 0ADB28 800ACF28 C7B6002C */ lwc1 $f22, 0x2c($sp) -/* 0ADB2C 800ACF2C C7B90030 */ lwc1 $f25, 0x30($sp) -/* 0ADB30 800ACF30 C7B80034 */ lwc1 $f24, 0x34($sp) -/* 0ADB34 800ACF34 8FB00038 */ lw $s0, 0x38($sp) -/* 0ADB38 800ACF38 8FB1003C */ lw $s1, 0x3c($sp) -/* 0ADB3C 800ACF3C 8FB20040 */ lw $s2, 0x40($sp) -/* 0ADB40 800ACF40 8FB30044 */ lw $s3, 0x44($sp) -/* 0ADB44 800ACF44 8FB40048 */ lw $s4, 0x48($sp) -/* 0ADB48 800ACF48 8FB5004C */ lw $s5, 0x4c($sp) -/* 0ADB4C 800ACF4C 8FB60050 */ lw $s6, 0x50($sp) -/* 0ADB50 800ACF50 8FB70054 */ lw $s7, 0x54($sp) -/* 0ADB54 800ACF54 8FBE0058 */ lw $fp, 0x58($sp) -/* 0ADB58 800ACF58 03E00008 */ jr $ra -/* 0ADB5C 800ACF5C 27BD00F0 */ addiu $sp, $sp, 0xf0 - -glabel func_800ACF60 -/* 0ADB60 800ACF60 3C03800E */ lui $v1, %hi(D_800E2A88) # $v1, 0x800e -/* 0ADB64 800ACF64 24632A88 */ addiu $v1, %lo(D_800E2A88) # addiu $v1, $v1, 0x2a88 -/* 0ADB68 800ACF68 8C620000 */ lw $v0, ($v1) -/* 0ADB6C 800ACF6C 00000000 */ nop -/* 0ADB70 800ACF70 28410010 */ slti $at, $v0, 0x10 -/* 0ADB74 800ACF74 10200006 */ beqz $at, .L800ACF90 -/* 0ADB78 800ACF78 00027080 */ sll $t6, $v0, 2 -/* 0ADB7C 800ACF7C 3C018012 */ lui $at, 0x8012 -/* 0ADB80 800ACF80 002E0821 */ addu $at, $at, $t6 -/* 0ADB84 800ACF84 AC247C40 */ sw $a0, 0x7c40($at) -/* 0ADB88 800ACF88 244F0001 */ addiu $t7, $v0, 1 -/* 0ADB8C 800ACF8C AC6F0000 */ sw $t7, ($v1) -.L800ACF90: -/* 0ADB90 800ACF90 03E00008 */ jr $ra -/* 0ADB94 800ACF94 00000000 */ nop - -glabel func_800ACF98 -/* 0ADB98 800ACF98 3C07800E */ lui $a3, %hi(D_800E2A88) # $a3, 0x800e -/* 0ADB9C 800ACF9C 24E72A88 */ addiu $a3, %lo(D_800E2A88) # addiu $a3, $a3, 0x2a88 -/* 0ADBA0 800ACFA0 8CE50000 */ lw $a1, ($a3) -/* 0ADBA4 800ACFA4 00001025 */ move $v0, $zero -/* 0ADBA8 800ACFA8 18A0000E */ blez $a1, .L800ACFE4 -/* 0ADBAC 800ACFAC 00001825 */ move $v1, $zero -/* 0ADBB0 800ACFB0 3C0F8012 */ lui $t7, %hi(D_80127C40) # $t7, 0x8012 -/* 0ADBB4 800ACFB4 25EF7C40 */ addiu $t7, %lo(D_80127C40) # addiu $t7, $t7, 0x7c40 -/* 0ADBB8 800ACFB8 00007080 */ sll $t6, $zero, 2 -/* 0ADBBC 800ACFBC 01CF3021 */ addu $a2, $t6, $t7 -.L800ACFC0: -/* 0ADBC0 800ACFC0 8CD80000 */ lw $t8, ($a2) -/* 0ADBC4 800ACFC4 24630001 */ addiu $v1, $v1, 1 -/* 0ADBC8 800ACFC8 14980002 */ bne $a0, $t8, .L800ACFD4 -/* 0ADBCC 800ACFCC 0065082A */ slt $at, $v1, $a1 -/* 0ADBD0 800ACFD0 24020001 */ li $v0, 1 -.L800ACFD4: -/* 0ADBD4 800ACFD4 10200003 */ beqz $at, .L800ACFE4 -/* 0ADBD8 800ACFD8 24C60004 */ addiu $a2, $a2, 4 -/* 0ADBDC 800ACFDC 1040FFF8 */ beqz $v0, .L800ACFC0 -/* 0ADBE0 800ACFE0 00000000 */ nop -.L800ACFE4: -/* 0ADBE4 800ACFE4 10400010 */ beqz $v0, .L800AD028 -/* 0ADBE8 800ACFE8 24B9FFFF */ addiu $t9, $a1, -1 -/* 0ADBEC 800ACFEC 2463FFFF */ addiu $v1, $v1, -1 -/* 0ADBF0 800ACFF0 0079082A */ slt $at, $v1, $t9 -/* 0ADBF4 800ACFF4 1020000C */ beqz $at, .L800AD028 -/* 0ADBF8 800ACFF8 ACF90000 */ sw $t9, ($a3) -/* 0ADBFC 800ACFFC 3C098012 */ lui $t1, %hi(D_80127C40) # $t1, 0x8012 -/* 0ADC00 800AD000 25297C40 */ addiu $t1, %lo(D_80127C40) # addiu $t1, $t1, 0x7c40 -/* 0ADC04 800AD004 00034080 */ sll $t0, $v1, 2 -/* 0ADC08 800AD008 00195080 */ sll $t2, $t9, 2 -/* 0ADC0C 800AD00C 01491021 */ addu $v0, $t2, $t1 -/* 0ADC10 800AD010 01093021 */ addu $a2, $t0, $t1 -.L800AD014: -/* 0ADC14 800AD014 8CCB0004 */ lw $t3, 4($a2) -/* 0ADC18 800AD018 24C60004 */ addiu $a2, $a2, 4 -/* 0ADC1C 800AD01C 00C2082B */ sltu $at, $a2, $v0 -/* 0ADC20 800AD020 1420FFFC */ bnez $at, .L800AD014 -/* 0ADC24 800AD024 ACCBFFFC */ sw $t3, -4($a2) -.L800AD028: -/* 0ADC28 800AD028 03E00008 */ jr $ra -/* 0ADC2C 800AD02C 00000000 */ nop - -glabel func_800AD030 -/* 0ADC30 800AD030 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0ADC34 800AD034 AFB60030 */ sw $s6, 0x30($sp) -/* 0ADC38 800AD038 3C16800E */ lui $s6, %hi(D_800E2A88) # $s6, 0x800e -/* 0ADC3C 800AD03C 26D62A88 */ addiu $s6, %lo(D_800E2A88) # addiu $s6, $s6, 0x2a88 -/* 0ADC40 800AD040 AFB5002C */ sw $s5, 0x2c($sp) -/* 0ADC44 800AD044 8EC20000 */ lw $v0, ($s6) -/* 0ADC48 800AD048 3C15800E */ lui $s5, %hi(D_800E2A84) # $s5, 0x800e -/* 0ADC4C 800AD04C 26B52A84 */ addiu $s5, %lo(D_800E2A84) # addiu $s5, $s5, 0x2a84 -/* 0ADC50 800AD050 AFB30024 */ sw $s3, 0x24($sp) -/* 0ADC54 800AD054 00809825 */ move $s3, $a0 -/* 0ADC58 800AD058 AFBF0034 */ sw $ra, 0x34($sp) -/* 0ADC5C 800AD05C AFB40028 */ sw $s4, 0x28($sp) -/* 0ADC60 800AD060 AFB20020 */ sw $s2, 0x20($sp) -/* 0ADC64 800AD064 AFB1001C */ sw $s1, 0x1c($sp) -/* 0ADC68 800AD068 AFB00018 */ sw $s0, 0x18($sp) -/* 0ADC6C 800AD06C 1840002B */ blez $v0, .L800AD11C -/* 0ADC70 800AD070 AEA00000 */ sw $zero, ($s5) -/* 0ADC74 800AD074 3C0E800E */ lui $t6, %hi(D_800E2A80) # $t6, 0x800e -/* 0ADC78 800AD078 8DCE2A80 */ lw $t6, %lo(D_800E2A80)($t6) -/* 0ADC7C 800AD07C 00000000 */ nop -/* 0ADC80 800AD080 11C00027 */ beqz $t6, .L800AD120 -/* 0ADC84 800AD084 8FBF0034 */ lw $ra, 0x34($sp) -/* 0ADC88 800AD088 18400024 */ blez $v0, .L800AD11C -/* 0ADC8C 800AD08C 00008825 */ move $s1, $zero -/* 0ADC90 800AD090 3C108012 */ lui $s0, %hi(D_80127C40) # $s0, 0x8012 -/* 0ADC94 800AD094 26107C40 */ addiu $s0, %lo(D_80127C40) # addiu $s0, $s0, 0x7c40 -/* 0ADC98 800AD098 24140001 */ li $s4, 1 -.L800AD09C: -/* 0ADC9C 800AD09C 8E020000 */ lw $v0, ($s0) -/* 0ADCA0 800AD0A0 C664000C */ lwc1 $f4, 0xc($s3) -/* 0ADCA4 800AD0A4 C446000C */ lwc1 $f6, 0xc($v0) -/* 0ADCA8 800AD0A8 C6680010 */ lwc1 $f8, 0x10($s3) -/* 0ADCAC 800AD0AC 46062001 */ sub.s $f0, $f4, $f6 -/* 0ADCB0 800AD0B0 C44A0010 */ lwc1 $f10, 0x10($v0) -/* 0ADCB4 800AD0B4 46000102 */ mul.s $f4, $f0, $f0 -/* 0ADCB8 800AD0B8 460A4081 */ sub.s $f2, $f8, $f10 -/* 0ADCBC 800AD0BC C6700014 */ lwc1 $f16, 0x14($s3) -/* 0ADCC0 800AD0C0 C4520014 */ lwc1 $f18, 0x14($v0) -/* 0ADCC4 800AD0C4 46021182 */ mul.s $f6, $f2, $f2 -/* 0ADCC8 800AD0C8 46128381 */ sub.s $f14, $f16, $f18 -/* 0ADCCC 800AD0CC 8C52003C */ lw $s2, 0x3c($v0) -/* 0ADCD0 800AD0D0 460E7282 */ mul.s $f10, $f14, $f14 -/* 0ADCD4 800AD0D4 46062200 */ add.s $f8, $f4, $f6 -/* 0ADCD8 800AD0D8 0C0326B4 */ jal sqrtf -/* 0ADCDC 800AD0DC 460A4300 */ add.s $f12, $f8, $f10 -/* 0ADCE0 800AD0E0 864F0008 */ lh $t7, 8($s2) -/* 0ADCE4 800AD0E4 00000000 */ nop -/* 0ADCE8 800AD0E8 448F8000 */ mtc1 $t7, $f16 -/* 0ADCEC 800AD0EC 00000000 */ nop -/* 0ADCF0 800AD0F0 468084A0 */ cvt.s.w $f18, $f16 -/* 0ADCF4 800AD0F4 4612003C */ c.lt.s $f0, $f18 -/* 0ADCF8 800AD0F8 00000000 */ nop -/* 0ADCFC 800AD0FC 45000002 */ bc1f .L800AD108 -/* 0ADD00 800AD100 00000000 */ nop -/* 0ADD04 800AD104 AEB40000 */ sw $s4, ($s5) -.L800AD108: -/* 0ADD08 800AD108 8ED80000 */ lw $t8, ($s6) -/* 0ADD0C 800AD10C 26310001 */ addiu $s1, $s1, 1 -/* 0ADD10 800AD110 0238082A */ slt $at, $s1, $t8 -/* 0ADD14 800AD114 1420FFE1 */ bnez $at, .L800AD09C -/* 0ADD18 800AD118 26100004 */ addiu $s0, $s0, 4 -.L800AD11C: -/* 0ADD1C 800AD11C 8FBF0034 */ lw $ra, 0x34($sp) -.L800AD120: -/* 0ADD20 800AD120 8FB00018 */ lw $s0, 0x18($sp) -/* 0ADD24 800AD124 8FB1001C */ lw $s1, 0x1c($sp) -/* 0ADD28 800AD128 8FB20020 */ lw $s2, 0x20($sp) -/* 0ADD2C 800AD12C 8FB30024 */ lw $s3, 0x24($sp) -/* 0ADD30 800AD130 8FB40028 */ lw $s4, 0x28($sp) -/* 0ADD34 800AD134 8FB5002C */ lw $s5, 0x2c($sp) -/* 0ADD38 800AD138 8FB60030 */ lw $s6, 0x30($sp) -/* 0ADD3C 800AD13C 03E00008 */ jr $ra -/* 0ADD40 800AD140 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_800AD144 -/* 0ADD44 800AD144 3C02800E */ lui $v0, %hi(D_800E2C60) # $v0, 0x800e -/* 0ADD48 800AD148 24422C60 */ addiu $v0, %lo(D_800E2C60) # addiu $v0, $v0, 0x2c60 -/* 0ADD4C 800AD14C AC440000 */ sw $a0, ($v0) -/* 0ADD50 800AD150 3C01800E */ lui $at, %hi(D_800E2C64) # $at, 0x800e -/* 0ADD54 800AD154 AC202C64 */ sw $zero, %lo(D_800E2C64)($at) -/* 0ADD58 800AD158 8C4E0000 */ lw $t6, ($v0) -/* 0ADD5C 800AD15C 3C01800E */ lui $at, %hi(D_800E2C68) # $at, 0x800e -/* 0ADD60 800AD160 3C03800E */ lui $v1, %hi(D_800E2C6C) # $v1, 0x800e -/* 0ADD64 800AD164 AC2E2C68 */ sw $t6, %lo(D_800E2C68)($at) -/* 0ADD68 800AD168 24632C6C */ addiu $v1, %lo(D_800E2C6C) # addiu $v1, $v1, 0x2c6c -/* 0ADD6C 800AD16C AC650000 */ sw $a1, ($v1) -/* 0ADD70 800AD170 3C01800E */ lui $at, %hi(D_800E2C70) # $at, 0x800e -/* 0ADD74 800AD174 AC202C70 */ sw $zero, %lo(D_800E2C70)($at) -/* 0ADD78 800AD178 8C6F0000 */ lw $t7, ($v1) -/* 0ADD7C 800AD17C 3C01800E */ lui $at, %hi(D_800E2C74) # $at, 0x800e -/* 0ADD80 800AD180 AC2F2C74 */ sw $t7, %lo(D_800E2C74)($at) -/* 0ADD84 800AD184 3C01800E */ lui $at, %hi(D_800E2C78) # $at, 0x800e -/* 0ADD88 800AD188 AC202C78 */ sw $zero, %lo(D_800E2C78)($at) -/* 0ADD8C 800AD18C 3C01800E */ lui $at, %hi(D_800E2C7C) # $at, 0x800e -/* 0ADD90 800AD190 AC202C7C */ sw $zero, %lo(D_800E2C7C)($at) -/* 0ADD94 800AD194 3C01800E */ lui $at, %hi(D_800E2C80) # $at, 0x800e -/* 0ADD98 800AD198 AC202C80 */ sw $zero, %lo(D_800E2C80)($at) -/* 0ADD9C 800AD19C 3C01800E */ lui $at, %hi(D_800E2C84) # $at, 0x800e -/* 0ADDA0 800AD1A0 AC202C84 */ sw $zero, %lo(D_800E2C84)($at) -/* 0ADDA4 800AD1A4 3C18800E */ lui $t8, %hi(D_800E291C) # $t8, 0x800e -/* 0ADDA8 800AD1A8 8F18291C */ lw $t8, %lo(D_800E291C)($t8) -/* 0ADDAC 800AD1AC 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0ADDB0 800AD1B0 3C01800E */ lui $at, %hi(D_800E2C90) # $at, 0x800e -/* 0ADDB4 800AD1B4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0ADDB8 800AD1B8 AC202C90 */ sw $zero, %lo(D_800E2C90)($at) -/* 0ADDBC 800AD1BC 8F040004 */ lw $a0, 4($t8) -/* 0ADDC0 800AD1C0 0C01EB9D */ jal func_8007AE74 -/* 0ADDC4 800AD1C4 00000000 */ nop -/* 0ADDC8 800AD1C8 3C19800E */ lui $t9, %hi(D_800E291C) # $t9, 0x800e -/* 0ADDCC 800AD1CC 8F39291C */ lw $t9, %lo(D_800E291C)($t9) -/* 0ADDD0 800AD1D0 3C01800E */ lui $at, %hi(D_800E2C38) # $at, 0x800e -/* 0ADDD4 800AD1D4 AC222C38 */ sw $v0, %lo(D_800E2C38)($at) -/* 0ADDD8 800AD1D8 8F240004 */ lw $a0, 4($t9) -/* 0ADDDC 800AD1DC 0C01EB9D */ jal func_8007AE74 -/* 0ADDE0 800AD1E0 00000000 */ nop -/* 0ADDE4 800AD1E4 3C08800E */ lui $t0, %hi(D_800E291C) # $t0, 0x800e -/* 0ADDE8 800AD1E8 8D08291C */ lw $t0, %lo(D_800E291C)($t0) -/* 0ADDEC 800AD1EC 3C01800E */ lui $at, %hi(D_800E2C50) # $at, 0x800e -/* 0ADDF0 800AD1F0 AC222C50 */ sw $v0, %lo(D_800E2C50)($at) -/* 0ADDF4 800AD1F4 8D04000C */ lw $a0, 0xc($t0) -/* 0ADDF8 800AD1F8 0C01F04B */ jal func_8007C12C -/* 0ADDFC 800AD1FC 00002825 */ move $a1, $zero -/* 0ADE00 800AD200 3C01800E */ lui $at, %hi(D_800E2C8C) # $at, 0x800e -/* 0ADE04 800AD204 8FBF0014 */ lw $ra, 0x14($sp) -/* 0ADE08 800AD208 AC222C8C */ sw $v0, %lo(D_800E2C8C)($at) -/* 0ADE0C 800AD20C 3C01800E */ lui $at, %hi(D_800E2C5C) # $at, 0x800e -/* 0ADE10 800AD210 24090001 */ li $t1, 1 -/* 0ADE14 800AD214 AC292C5C */ sw $t1, %lo(D_800E2C5C)($at) -/* 0ADE18 800AD218 03E00008 */ jr $ra -/* 0ADE1C 800AD21C 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_800AD220 -/* 0ADE20 800AD220 3C04800E */ lui $a0, %hi(D_800E2C38) # $a0, 0x800e -/* 0ADE24 800AD224 8C842C38 */ lw $a0, %lo(D_800E2C38)($a0) -/* 0ADE28 800AD228 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0ADE2C 800AD22C 10800005 */ beqz $a0, .L800AD244 -/* 0ADE30 800AD230 AFBF0014 */ sw $ra, 0x14($sp) -/* 0ADE34 800AD234 0C01ECAF */ jal func_8007B2BC -/* 0ADE38 800AD238 00000000 */ nop -/* 0ADE3C 800AD23C 3C01800E */ lui $at, %hi(D_800E2C88) # $at, 0x800e -/* 0ADE40 800AD240 AC202C88 */ sw $zero, %lo(D_800E2C88)($at) -.L800AD244: -/* 0ADE44 800AD244 3C04800E */ lui $a0, %hi(D_800E2C50) # $a0, 0x800e -/* 0ADE48 800AD248 8C842C50 */ lw $a0, %lo(D_800E2C50)($a0) -/* 0ADE4C 800AD24C 00000000 */ nop -/* 0ADE50 800AD250 10800005 */ beqz $a0, .L800AD268 -/* 0ADE54 800AD254 00000000 */ nop -/* 0ADE58 800AD258 0C01ECAF */ jal func_8007B2BC -/* 0ADE5C 800AD25C 00000000 */ nop -/* 0ADE60 800AD260 3C01800E */ lui $at, %hi(D_800E2C88) # $at, 0x800e -/* 0ADE64 800AD264 AC202C88 */ sw $zero, %lo(D_800E2C88)($at) -.L800AD268: -/* 0ADE68 800AD268 3C04800E */ lui $a0, %hi(D_800E2C8C) # $a0, 0x800e -/* 0ADE6C 800AD26C 8C842C8C */ lw $a0, %lo(D_800E2C8C)($a0) -/* 0ADE70 800AD270 00000000 */ nop -/* 0ADE74 800AD274 10800005 */ beqz $a0, .L800AD28C -/* 0ADE78 800AD278 00000000 */ nop -/* 0ADE7C 800AD27C 0C01F32C */ jal func_8007CCB0 -/* 0ADE80 800AD280 00000000 */ nop -/* 0ADE84 800AD284 3C01800E */ lui $at, %hi(D_800E2C8C) # $at, 0x800e -/* 0ADE88 800AD288 AC202C8C */ sw $zero, %lo(D_800E2C8C)($at) -.L800AD28C: -/* 0ADE8C 800AD28C 3C04800E */ lui $a0, %hi(D_800E2C94) # $a0, 0x800e -/* 0ADE90 800AD290 8C842C94 */ lw $a0, %lo(D_800E2C94)($a0) -/* 0ADE94 800AD294 00000000 */ nop -/* 0ADE98 800AD298 10800006 */ beqz $a0, .L800AD2B4 -/* 0ADE9C 800AD29C 8FBF0014 */ lw $ra, 0x14($sp) -/* 0ADEA0 800AD2A0 0C0025BE */ jal func_800096F8 -/* 0ADEA4 800AD2A4 00000000 */ nop -/* 0ADEA8 800AD2A8 3C01800E */ lui $at, %hi(D_800E2C94) # $at, 0x800e -/* 0ADEAC 800AD2AC AC202C94 */ sw $zero, %lo(D_800E2C94)($at) -/* 0ADEB0 800AD2B0 8FBF0014 */ lw $ra, 0x14($sp) -.L800AD2B4: -/* 0ADEB4 800AD2B4 3C01800E */ lui $at, %hi(D_800E2C5C) # $at, 0x800e -/* 0ADEB8 800AD2B8 AC202C5C */ sw $zero, %lo(D_800E2C5C)($at) -/* 0ADEBC 800AD2BC 03E00008 */ jr $ra -/* 0ADEC0 800AD2C0 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_800AD2C4 -/* 0ADEC4 800AD2C4 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 -/* 0ADEC8 800AD2C8 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) -/* 0ADECC 800AD2CC 44866000 */ mtc1 $a2, $f12 -/* 0ADED0 800AD2D0 15C00012 */ bnez $t6, .L800AD31C -/* 0ADED4 800AD2D4 3C06800E */ lui $a2, %hi(D_800E2C68) # $a2, 0x800e -/* 0ADED8 800AD2D8 3C014049 */ li $at, 0x40490000 # 3.140625 -/* 0ADEDC 800AD2DC 44813800 */ mtc1 $at, $f7 -/* 0ADEE0 800AD2E0 44803000 */ mtc1 $zero, $f6 -/* 0ADEE4 800AD2E4 46006121 */ cvt.d.s $f4, $f12 -/* 0ADEE8 800AD2E8 46262202 */ mul.d $f8, $f4, $f6 -/* 0ADEEC 800AD2EC 3C03800E */ lui $v1, %hi(D_800E2C78) # $v1, 0x800e -/* 0ADEF0 800AD2F0 24632C78 */ addiu $v1, %lo(D_800E2C78) # addiu $v1, $v1, 0x2c78 -/* 0ADEF4 800AD2F4 444FF800 */ cfc1 $t7, $31 -/* 0ADEF8 800AD2F8 00000000 */ nop -/* 0ADEFC 800AD2FC 35E10003 */ ori $at, $t7, 3 -/* 0ADF00 800AD300 38210002 */ xori $at, $at, 2 -/* 0ADF04 800AD304 44C1F800 */ ctc1 $at, $31 -/* 0ADF08 800AD308 00000000 */ nop -/* 0ADF0C 800AD30C 462042A4 */ cvt.w.d $f10, $f8 -/* 0ADF10 800AD310 44CFF800 */ ctc1 $t7, $31 -/* 0ADF14 800AD314 10000012 */ b .L800AD360 -/* 0ADF18 800AD318 E46A0000 */ swc1 $f10, ($v1) -.L800AD31C: -/* 0ADF1C 800AD31C 3C01404E */ li $at, 0x404E0000 # 3.218750 -/* 0ADF20 800AD320 44819800 */ mtc1 $at, $f19 -/* 0ADF24 800AD324 44809000 */ mtc1 $zero, $f18 -/* 0ADF28 800AD328 46006421 */ cvt.d.s $f16, $f12 -/* 0ADF2C 800AD32C 46328102 */ mul.d $f4, $f16, $f18 -/* 0ADF30 800AD330 3C03800E */ lui $v1, %hi(D_800E2C78) # $v1, 0x800e -/* 0ADF34 800AD334 24632C78 */ addiu $v1, %lo(D_800E2C78) # addiu $v1, $v1, 0x2c78 -/* 0ADF38 800AD338 4458F800 */ cfc1 $t8, $31 -/* 0ADF3C 800AD33C 00000000 */ nop -/* 0ADF40 800AD340 37010003 */ ori $at, $t8, 3 -/* 0ADF44 800AD344 38210002 */ xori $at, $at, 2 -/* 0ADF48 800AD348 44C1F800 */ ctc1 $at, $31 -/* 0ADF4C 800AD34C 00000000 */ nop -/* 0ADF50 800AD350 462021A4 */ cvt.w.d $f6, $f4 -/* 0ADF54 800AD354 44D8F800 */ ctc1 $t8, $31 -/* 0ADF58 800AD358 E4660000 */ swc1 $f6, ($v1) -/* 0ADF5C 800AD35C 00000000 */ nop -.L800AD360: -/* 0ADF60 800AD360 24C62C68 */ addiu $a2, %lo(D_800E2C68) # addiu $a2, $a2, 0x2c68 -/* 0ADF64 800AD364 ACC40000 */ sw $a0, ($a2) -/* 0ADF68 800AD368 3C08800E */ lui $t0, %hi(D_800E2C60) # $t0, 0x800e -/* 0ADF6C 800AD36C 8D082C60 */ lw $t0, %lo(D_800E2C60)($t0) -/* 0ADF70 800AD370 8C620000 */ lw $v0, ($v1) -/* 0ADF74 800AD374 00884823 */ subu $t1, $a0, $t0 -/* 0ADF78 800AD378 0122001A */ div $zero, $t1, $v0 -/* 0ADF7C 800AD37C 3C07800E */ lui $a3, %hi(D_800E2C74) # $a3, 0x800e -/* 0ADF80 800AD380 24E72C74 */ addiu $a3, %lo(D_800E2C74) # addiu $a3, $a3, 0x2c74 -/* 0ADF84 800AD384 3C0C800E */ lui $t4, %hi(D_800E2C6C) # $t4, 0x800e -/* 0ADF88 800AD388 0080C825 */ move $t9, $a0 -/* 0ADF8C 800AD38C 14400002 */ bnez $v0, .L800AD398 -/* 0ADF90 800AD390 00000000 */ nop -/* 0ADF94 800AD394 0007000D */ break 7 -.L800AD398: -/* 0ADF98 800AD398 2401FFFF */ li $at, -1 -/* 0ADF9C 800AD39C 14410004 */ bne $v0, $at, .L800AD3B0 -/* 0ADFA0 800AD3A0 3C018000 */ lui $at, 0x8000 -/* 0ADFA4 800AD3A4 15210002 */ bne $t1, $at, .L800AD3B0 -/* 0ADFA8 800AD3A8 00000000 */ nop -/* 0ADFAC 800AD3AC 0006000D */ break 6 -.L800AD3B0: -/* 0ADFB0 800AD3B0 3C01800E */ lui $at, %hi(D_800E2C64) # $at, 0x800e -/* 0ADFB4 800AD3B4 00A05825 */ move $t3, $a1 -/* 0ADFB8 800AD3B8 00005012 */ mflo $t2 -/* 0ADFBC 800AD3BC AC2A2C64 */ sw $t2, %lo(D_800E2C64)($at) -/* 0ADFC0 800AD3C0 ACE50000 */ sw $a1, ($a3) -/* 0ADFC4 800AD3C4 8D8C2C6C */ lw $t4, %lo(D_800E2C6C)($t4) -/* 0ADFC8 800AD3C8 00000000 */ nop -/* 0ADFCC 800AD3CC 00AC6823 */ subu $t5, $a1, $t4 -/* 0ADFD0 800AD3D0 01A2001A */ div $zero, $t5, $v0 -/* 0ADFD4 800AD3D4 14400002 */ bnez $v0, .L800AD3E0 -/* 0ADFD8 800AD3D8 00000000 */ nop -/* 0ADFDC 800AD3DC 0007000D */ break 7 -.L800AD3E0: -/* 0ADFE0 800AD3E0 2401FFFF */ li $at, -1 -/* 0ADFE4 800AD3E4 14410004 */ bne $v0, $at, .L800AD3F8 -/* 0ADFE8 800AD3E8 3C018000 */ lui $at, 0x8000 -/* 0ADFEC 800AD3EC 15A10002 */ bne $t5, $at, .L800AD3F8 -/* 0ADFF0 800AD3F0 00000000 */ nop -/* 0ADFF4 800AD3F4 0006000D */ break 6 -.L800AD3F8: -/* 0ADFF8 800AD3F8 3C01800E */ lui $at, %hi(D_800E2C70) # $at, 0x800e -/* 0ADFFC 800AD3FC 00007012 */ mflo $t6 -/* 0AE000 800AD400 AC2E2C70 */ sw $t6, %lo(D_800E2C70)($at) -/* 0AE004 800AD404 03E00008 */ jr $ra -/* 0AE008 800AD408 00000000 */ nop - -glabel func_800AD40C -/* 0AE00C 800AD40C 3C0E800E */ lui $t6, %hi(D_800E2C5C) # $t6, 0x800e -/* 0AE010 800AD410 8DCE2C5C */ lw $t6, %lo(D_800E2C5C)($t6) -/* 0AE014 800AD414 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0AE018 800AD418 11C00020 */ beqz $t6, .L800AD49C -/* 0AE01C 800AD41C AFBF001C */ sw $ra, 0x1c($sp) -/* 0AE020 800AD420 0C019884 */ jal func_80066210 -/* 0AE024 800AD424 00000000 */ nop -/* 0AE028 800AD428 1440001C */ bnez $v0, .L800AD49C -/* 0AE02C 800AD42C 00002025 */ move $a0, $zero -/* 0AE030 800AD430 3C02800E */ lui $v0, %hi(D_800E2C60) # $v0, 0x800e -/* 0AE034 800AD434 8C422C60 */ lw $v0, %lo(D_800E2C60)($v0) -/* 0AE038 800AD438 240A000F */ li $t2, 15 -/* 0AE03C 800AD43C 00020823 */ negu $at, $v0 -/* 0AE040 800AD440 00011880 */ sll $v1, $at, 2 -/* 0AE044 800AD444 00611821 */ addu $v1, $v1, $at -/* 0AE048 800AD448 00031880 */ sll $v1, $v1, 2 -/* 0AE04C 800AD44C 00014080 */ sll $t0, $at, 2 -/* 0AE050 800AD450 00611823 */ subu $v1, $v1, $at -/* 0AE054 800AD454 01014021 */ addu $t0, $t0, $at -/* 0AE058 800AD458 00031840 */ sll $v1, $v1, 1 -/* 0AE05C 800AD45C 00084080 */ sll $t0, $t0, 2 -/* 0AE060 800AD460 00037C03 */ sra $t7, $v1, 0x10 -/* 0AE064 800AD464 0008C403 */ sra $t8, $t0, 0x10 -/* 0AE068 800AD468 25E303FA */ addiu $v1, $t7, 0x3fa -/* 0AE06C 800AD46C 270803FF */ addiu $t0, $t8, 0x3ff -/* 0AE070 800AD470 00083400 */ sll $a2, $t0, 0x10 -/* 0AE074 800AD474 00032C00 */ sll $a1, $v1, 0x10 -/* 0AE078 800AD478 0005CC03 */ sra $t9, $a1, 0x10 -/* 0AE07C 800AD47C 00064C03 */ sra $t1, $a2, 0x10 -/* 0AE080 800AD480 240B0024 */ li $t3, 36 -/* 0AE084 800AD484 AFAB0014 */ sw $t3, 0x14($sp) -/* 0AE088 800AD488 01203025 */ move $a2, $t1 -/* 0AE08C 800AD48C 03202825 */ move $a1, $t9 -/* 0AE090 800AD490 AFAA0010 */ sw $t2, 0x10($sp) -/* 0AE094 800AD494 0C00C199 */ jal func_80030664 -/* 0AE098 800AD498 2407001C */ li $a3, 28 -.L800AD49C: -/* 0AE09C 800AD49C 8FBF001C */ lw $ra, 0x1c($sp) -/* 0AE0A0 800AD4A0 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0AE0A4 800AD4A4 03E00008 */ jr $ra -/* 0AE0A8 800AD4A8 00000000 */ nop - -/* 0AE0AC 800AD4AC 3C01800E */ lui $at, 0x800e -/* 0AE0B0 800AD4B0 03E00008 */ jr $ra -/* 0AE0B4 800AD4B4 AC242C6C */ sw $a0, 0x2c6c($at) - -glabel func_800AD4B8 -/* 0AE0B8 800AD4B8 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0AE0BC 800AD4BC AFBF0024 */ sw $ra, 0x24($sp) -/* 0AE0C0 800AD4C0 AFB2001C */ sw $s2, 0x1c($sp) -/* 0AE0C4 800AD4C4 00809025 */ move $s2, $a0 -/* 0AE0C8 800AD4C8 AFB30020 */ sw $s3, 0x20($sp) -/* 0AE0CC 800AD4CC AFB10018 */ sw $s1, 0x18($sp) -/* 0AE0D0 800AD4D0 0C019884 */ jal func_80066210 -/* 0AE0D4 800AD4D4 AFB00014 */ sw $s0, 0x14($sp) -/* 0AE0D8 800AD4D8 14400058 */ bnez $v0, .L800AD63C -/* 0AE0DC 800AD4DC 3C0E800E */ lui $t6, %hi(D_800E2C5C) # $t6, 0x800e -/* 0AE0E0 800AD4E0 8DCE2C5C */ lw $t6, %lo(D_800E2C5C)($t6) -/* 0AE0E4 800AD4E4 3C03800E */ lui $v1, %hi(D_800E2C78) # $v1, 0x800e -/* 0AE0E8 800AD4E8 11C00054 */ beqz $t6, .L800AD63C -/* 0AE0EC 800AD4EC 24632C78 */ addiu $v1, %lo(D_800E2C78) # addiu $v1, $v1, 0x2c78 -/* 0AE0F0 800AD4F0 8C620000 */ lw $v0, ($v1) -/* 0AE0F4 800AD4F4 00000000 */ nop -/* 0AE0F8 800AD4F8 18400023 */ blez $v0, .L800AD588 -/* 0AE0FC 800AD4FC 0242082A */ slt $at, $s2, $v0 -/* 0AE100 800AD500 10200017 */ beqz $at, .L800AD560 -/* 0AE104 800AD504 3C04800E */ lui $a0, 0x800e -/* 0AE108 800AD508 00527823 */ subu $t7, $v0, $s2 -/* 0AE10C 800AD50C AC6F0000 */ sw $t7, ($v1) -/* 0AE110 800AD510 3C19800E */ lui $t9, %hi(D_800E2C64) # $t9, 0x800e -/* 0AE114 800AD514 8F392C64 */ lw $t9, %lo(D_800E2C64)($t9) -/* 0AE118 800AD518 3C10800E */ lui $s0, %hi(D_800E2C60) # $s0, 0x800e -/* 0AE11C 800AD51C 03320019 */ multu $t9, $s2 -/* 0AE120 800AD520 26102C60 */ addiu $s0, %lo(D_800E2C60) # addiu $s0, $s0, 0x2c60 -/* 0AE124 800AD524 8E180000 */ lw $t8, ($s0) -/* 0AE128 800AD528 3C0B800E */ lui $t3, %hi(D_800E2C70) # $t3, 0x800e -/* 0AE12C 800AD52C 3C04800E */ lui $a0, %hi(D_800E2C6C) # $a0, 0x800e -/* 0AE130 800AD530 24842C6C */ addiu $a0, %lo(D_800E2C6C) # addiu $a0, $a0, 0x2c6c -/* 0AE134 800AD534 8C8A0000 */ lw $t2, ($a0) -/* 0AE138 800AD538 00004012 */ mflo $t0 -/* 0AE13C 800AD53C 03084821 */ addu $t1, $t8, $t0 -/* 0AE140 800AD540 AE090000 */ sw $t1, ($s0) -/* 0AE144 800AD544 8D6B2C70 */ lw $t3, %lo(D_800E2C70)($t3) -/* 0AE148 800AD548 00000000 */ nop -/* 0AE14C 800AD54C 01720019 */ multu $t3, $s2 -/* 0AE150 800AD550 00006012 */ mflo $t4 -/* 0AE154 800AD554 014C6821 */ addu $t5, $t2, $t4 -/* 0AE158 800AD558 1000000B */ b .L800AD588 -/* 0AE15C 800AD55C AC8D0000 */ sw $t5, ($a0) -.L800AD560: -/* 0AE160 800AD560 AC600000 */ sw $zero, ($v1) -/* 0AE164 800AD564 3C0E800E */ lui $t6, %hi(D_800E2C68) # $t6, 0x800e -/* 0AE168 800AD568 8DCE2C68 */ lw $t6, %lo(D_800E2C68)($t6) -/* 0AE16C 800AD56C 3C10800E */ lui $s0, %hi(D_800E2C60) # $s0, 0x800e -/* 0AE170 800AD570 26102C60 */ addiu $s0, %lo(D_800E2C60) # addiu $s0, $s0, 0x2c60 -/* 0AE174 800AD574 3C0F800E */ lui $t7, %hi(D_800E2C74) # $t7, 0x800e -/* 0AE178 800AD578 AE0E0000 */ sw $t6, ($s0) -/* 0AE17C 800AD57C 8DEF2C74 */ lw $t7, %lo(D_800E2C74)($t7) -/* 0AE180 800AD580 24842C6C */ addiu $a0, $a0, 0x2c6c -/* 0AE184 800AD584 AC8F0000 */ sw $t7, ($a0) -.L800AD588: -/* 0AE188 800AD588 3C10800E */ lui $s0, %hi(D_800E2C60) # $s0, 0x800e -/* 0AE18C 800AD58C 26102C60 */ addiu $s0, %lo(D_800E2C60) # addiu $s0, $s0, 0x2c60 -/* 0AE190 800AD590 0C02B6F2 */ jal func_800ADBC8 -/* 0AE194 800AD594 02402025 */ move $a0, $s2 -/* 0AE198 800AD598 0C02B596 */ jal func_800AD658 -/* 0AE19C 800AD59C 02402025 */ move $a0, $s2 -/* 0AE1A0 800AD5A0 0C02B6AE */ jal func_800ADAB8 -/* 0AE1A4 800AD5A4 02402025 */ move $a0, $s2 -/* 0AE1A8 800AD5A8 8E190000 */ lw $t9, ($s0) -/* 0AE1AC 800AD5AC 3C138012 */ lui $s3, %hi(D_80127C0C) # $s3, 0x8012 -/* 0AE1B0 800AD5B0 2B210100 */ slti $at, $t9, 0x100 -/* 0AE1B4 800AD5B4 14200021 */ bnez $at, .L800AD63C -/* 0AE1B8 800AD5B8 26737C0C */ addiu $s3, %lo(D_80127C0C) # addiu $s3, $s3, 0x7c0c -/* 0AE1BC 800AD5BC 3C058012 */ lui $a1, %hi(D_80127C10) # $a1, 0x8012 -/* 0AE1C0 800AD5C0 24A57C10 */ addiu $a1, %lo(D_80127C10) # addiu $a1, $a1, 0x7c10 -/* 0AE1C4 800AD5C4 0C019FCB */ jal func_80067F2C -/* 0AE1C8 800AD5C8 02602025 */ move $a0, $s3 -/* 0AE1CC 800AD5CC 3C10800E */ lui $s0, %hi(D_800E2C2C) # $s0, 0x800e -/* 0AE1D0 800AD5D0 3C11800E */ lui $s1, %hi(D_800E2C5C) # $s1, 0x800e -/* 0AE1D4 800AD5D4 26312C5C */ addiu $s1, %lo(D_800E2C5C) # addiu $s1, $s1, 0x2c5c -/* 0AE1D8 800AD5D8 26102C2C */ addiu $s0, %lo(D_800E2C2C) # addiu $s0, $s0, 0x2c2c -/* 0AE1DC 800AD5DC 02002025 */ move $a0, $s0 -.L800AD5E0: -/* 0AE1E0 800AD5E0 0C02B72F */ jal func_800ADCBC -/* 0AE1E4 800AD5E4 02402825 */ move $a1, $s2 -/* 0AE1E8 800AD5E8 26100018 */ addiu $s0, $s0, 0x18 -/* 0AE1EC 800AD5EC 1611FFFC */ bne $s0, $s1, .L800AD5E0 -/* 0AE1F0 800AD5F0 02002025 */ move $a0, $s0 -/* 0AE1F4 800AD5F4 8E620000 */ lw $v0, ($s3) -/* 0AE1F8 800AD5F8 3C08FA00 */ lui $t0, 0xfa00 -/* 0AE1FC 800AD5FC 24580008 */ addiu $t8, $v0, 8 -/* 0AE200 800AD600 AE780000 */ sw $t8, ($s3) -/* 0AE204 800AD604 2409FFFF */ li $t1, -1 -/* 0AE208 800AD608 AC490004 */ sw $t1, 4($v0) -/* 0AE20C 800AD60C AC480000 */ sw $t0, ($v0) -/* 0AE210 800AD610 8E620000 */ lw $v0, ($s3) -/* 0AE214 800AD614 3C0AFB00 */ lui $t2, 0xfb00 -/* 0AE218 800AD618 244B0008 */ addiu $t3, $v0, 8 -/* 0AE21C 800AD61C AE6B0000 */ sw $t3, ($s3) -/* 0AE220 800AD620 240CFF00 */ li $t4, -256 -/* 0AE224 800AD624 02602025 */ move $a0, $s3 -/* 0AE228 800AD628 AC4C0004 */ sw $t4, 4($v0) -/* 0AE22C 800AD62C 0C01ECF4 */ jal func_8007B3D0 -/* 0AE230 800AD630 AC4A0000 */ sw $t2, ($v0) -/* 0AE234 800AD634 0C01A0AB */ jal func_800682AC -/* 0AE238 800AD638 02602025 */ move $a0, $s3 -.L800AD63C: -/* 0AE23C 800AD63C 8FBF0024 */ lw $ra, 0x24($sp) -/* 0AE240 800AD640 8FB00014 */ lw $s0, 0x14($sp) -/* 0AE244 800AD644 8FB10018 */ lw $s1, 0x18($sp) -/* 0AE248 800AD648 8FB2001C */ lw $s2, 0x1c($sp) -/* 0AE24C 800AD64C 8FB30020 */ lw $s3, 0x20($sp) -/* 0AE250 800AD650 03E00008 */ jr $ra -/* 0AE254 800AD654 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_800AD658 -/* 0AE258 800AD658 27BDFF80 */ addiu $sp, $sp, -0x80 -/* 0AE25C 800AD65C 3C0E800E */ lui $t6, %hi(D_800E2C8C) # $t6, 0x800e -/* 0AE260 800AD660 8DCE2C8C */ lw $t6, %lo(D_800E2C8C)($t6) -/* 0AE264 800AD664 AFB20028 */ sw $s2, 0x28($sp) -/* 0AE268 800AD668 AFBF002C */ sw $ra, 0x2c($sp) -/* 0AE26C 800AD66C AFB10024 */ sw $s1, 0x24($sp) -/* 0AE270 800AD670 AFB00020 */ sw $s0, 0x20($sp) -/* 0AE274 800AD674 AFA40080 */ sw $a0, 0x80($sp) -/* 0AE278 800AD678 11C00109 */ beqz $t6, .L800ADAA0 -/* 0AE27C 800AD67C 24120001 */ li $s2, 1 -/* 0AE280 800AD680 3C0F800E */ lui $t7, %hi(D_800E2C6C) # $t7, 0x800e -/* 0AE284 800AD684 8DEF2C6C */ lw $t7, %lo(D_800E2C6C)($t7) -/* 0AE288 800AD688 3C19800E */ lui $t9, %hi(D_800E2C60) # $t9, 0x800e -/* 0AE28C 800AD68C 8F392C60 */ lw $t9, %lo(D_800E2C60)($t9) -/* 0AE290 800AD690 000FC083 */ sra $t8, $t7, 2 -/* 0AE294 800AD694 03190019 */ multu $t8, $t9 -/* 0AE298 800AD698 00002025 */ move $a0, $zero -/* 0AE29C 800AD69C 00001012 */ mflo $v0 -/* 0AE2A0 800AD6A0 00024383 */ sra $t0, $v0, 0xe -/* 0AE2A4 800AD6A4 29014001 */ slti $at, $t0, 0x4001 -/* 0AE2A8 800AD6A8 142000C0 */ bnez $at, .L800AD9AC -/* 0AE2AC 800AD6AC 00000000 */ nop -/* 0AE2B0 800AD6B0 0C006EC6 */ jal func_8001BB18 -/* 0AE2B4 800AD6B4 AFA8007C */ sw $t0, 0x7c($sp) -/* 0AE2B8 800AD6B8 3C06800E */ lui $a2, %hi(D_800E2C84) # $a2, 0x800e -/* 0AE2BC 800AD6BC 24C62C84 */ addiu $a2, %lo(D_800E2C84) # addiu $a2, $a2, 0x2c84 -/* 0AE2C0 800AD6C0 8CC90000 */ lw $t1, ($a2) -/* 0AE2C4 800AD6C4 8FAA0080 */ lw $t2, 0x80($sp) -/* 0AE2C8 800AD6C8 AFA20050 */ sw $v0, 0x50($sp) -/* 0AE2CC 800AD6CC 012A5823 */ subu $t3, $t1, $t2 -/* 0AE2D0 800AD6D0 1D6000B6 */ bgtz $t3, .L800AD9AC -/* 0AE2D4 800AD6D4 ACCB0000 */ sw $t3, ($a2) -/* 0AE2D8 800AD6D8 104000B4 */ beqz $v0, .L800AD9AC -/* 0AE2DC 800AD6DC 00001825 */ move $v1, $zero -/* 0AE2E0 800AD6E0 000068C0 */ sll $t5, $zero, 3 -/* 0AE2E4 800AD6E4 01A06823 */ subu $t5, $t5, $zero -/* 0AE2E8 800AD6E8 3C0E800E */ lui $t6, %hi(D_800E2B4C) # $t6, 0x800e -/* 0AE2EC 800AD6EC 25CE2B4C */ addiu $t6, %lo(D_800E2B4C) # addiu $t6, $t6, 0x2b4c -/* 0AE2F0 800AD6F0 000D6880 */ sll $t5, $t5, 2 -/* 0AE2F4 800AD6F4 2411FFFF */ li $s1, -1 -/* 0AE2F8 800AD6F8 01AE8021 */ addu $s0, $t5, $t6 -.L800AD6FC: -/* 0AE2FC 800AD6FC 860F0006 */ lh $t7, 6($s0) -/* 0AE300 800AD700 00000000 */ nop -/* 0AE304 800AD704 15E00002 */ bnez $t7, .L800AD710 -/* 0AE308 800AD708 00000000 */ nop -/* 0AE30C 800AD70C 00608825 */ move $s1, $v1 -.L800AD710: -/* 0AE310 800AD710 24630001 */ addiu $v1, $v1, 1 -/* 0AE314 800AD714 28610008 */ slti $at, $v1, 8 -/* 0AE318 800AD718 10200003 */ beqz $at, .L800AD728 -/* 0AE31C 800AD71C 2610001C */ addiu $s0, $s0, 0x1c -/* 0AE320 800AD720 0620FFF6 */ bltz $s1, .L800AD6FC -/* 0AE324 800AD724 00000000 */ nop -.L800AD728: -/* 0AE328 800AD728 062000A0 */ bltz $s1, .L800AD9AC -/* 0AE32C 800AD72C 2404E000 */ li $a0, -8192 -/* 0AE330 800AD730 0C01BE53 */ jal func_8006F94C -/* 0AE334 800AD734 24052000 */ li $a1, 8192 -/* 0AE338 800AD738 8FB80050 */ lw $t8, 0x50($sp) -/* 0AE33C 800AD73C 34018000 */ li $at, 32768 -/* 0AE340 800AD740 87190000 */ lh $t9, ($t8) -/* 0AE344 800AD744 24040032 */ li $a0, 50 -/* 0AE348 800AD748 00594021 */ addu $t0, $v0, $t9 -/* 0AE34C 800AD74C 01014821 */ addu $t1, $t0, $at -/* 0AE350 800AD750 AFA9006C */ sw $t1, 0x6c($sp) -/* 0AE354 800AD754 0C01BE53 */ jal func_8006F94C -/* 0AE358 800AD758 240501F4 */ li $a1, 500 -/* 0AE35C 800AD75C 44822000 */ mtc1 $v0, $f4 -/* 0AE360 800AD760 87B0006E */ lh $s0, 0x6e($sp) -/* 0AE364 800AD764 468021A0 */ cvt.s.w $f6, $f4 -/* 0AE368 800AD768 00102400 */ sll $a0, $s0, 0x10 -/* 0AE36C 800AD76C 00045403 */ sra $t2, $a0, 0x10 -/* 0AE370 800AD770 E7A6005C */ swc1 $f6, 0x5c($sp) -/* 0AE374 800AD774 0C01C1F1 */ jal func_800707C4 -/* 0AE378 800AD778 01402025 */ move $a0, $t2 -/* 0AE37C 800AD77C C7A8005C */ lwc1 $f8, 0x5c($sp) -/* 0AE380 800AD780 8FAB0050 */ lw $t3, 0x50($sp) -/* 0AE384 800AD784 46080282 */ mul.s $f10, $f0, $f8 -/* 0AE388 800AD788 C570000C */ lwc1 $f16, 0xc($t3) -/* 0AE38C 800AD78C 00102400 */ sll $a0, $s0, 0x10 -/* 0AE390 800AD790 00046403 */ sra $t4, $a0, 0x10 -/* 0AE394 800AD794 46105480 */ add.s $f18, $f10, $f16 -/* 0AE398 800AD798 01802025 */ move $a0, $t4 -/* 0AE39C 800AD79C 0C01C1FE */ jal func_800707F8 -/* 0AE3A0 800AD7A0 E7B20058 */ swc1 $f18, 0x58($sp) -/* 0AE3A4 800AD7A4 C7A4005C */ lwc1 $f4, 0x5c($sp) -/* 0AE3A8 800AD7A8 8FA20050 */ lw $v0, 0x50($sp) -/* 0AE3AC 800AD7AC 46040182 */ mul.s $f6, $f0, $f4 -/* 0AE3B0 800AD7B0 C4480014 */ lwc1 $f8, 0x14($v0) -/* 0AE3B4 800AD7B4 C7AC0058 */ lwc1 $f12, 0x58($sp) -/* 0AE3B8 800AD7B8 C44E0010 */ lwc1 $f14, 0x10($v0) -/* 0AE3BC 800AD7BC 46083080 */ add.s $f2, $f6, $f8 -/* 0AE3C0 800AD7C0 44061000 */ mfc1 $a2, $f2 -/* 0AE3C4 800AD7C4 0C00A7C6 */ jal func_80029F18 -/* 0AE3C8 800AD7C8 E7A20054 */ swc1 $f2, 0x54($sp) -/* 0AE3CC 800AD7CC 8FA50058 */ lw $a1, 0x58($sp) -/* 0AE3D0 800AD7D0 8FA60054 */ lw $a2, 0x54($sp) -/* 0AE3D4 800AD7D4 00402025 */ move $a0, $v0 -/* 0AE3D8 800AD7D8 0C00AC3D */ jal func_8002B0F4 -/* 0AE3DC 800AD7DC 27A7004C */ addiu $a3, $sp, 0x4c -/* 0AE3E0 800AD7E0 10400072 */ beqz $v0, .L800AD9AC -/* 0AE3E4 800AD7E4 3C01447A */ li $at, 0x447A0000 # 1000.000000 -/* 0AE3E8 800AD7E8 44811000 */ mtc1 $at, $f2 -/* 0AE3EC 800AD7EC 28410002 */ slti $at, $v0, 2 -/* 0AE3F0 800AD7F0 1420002D */ bnez $at, .L800AD8A8 -/* 0AE3F4 800AD7F4 00001825 */ move $v1, $zero -/* 0AE3F8 800AD7F8 2444FFFF */ addiu $a0, $v0, -1 -/* 0AE3FC 800AD7FC 1880001A */ blez $a0, .L800AD868 -/* 0AE400 800AD800 00000000 */ nop -/* 0AE404 800AD804 8FAE004C */ lw $t6, 0x4c($sp) -/* 0AE408 800AD808 8FAD0050 */ lw $t5, 0x50($sp) -/* 0AE40C 800AD80C 8DCF0000 */ lw $t7, ($t6) -/* 0AE410 800AD810 C5A00010 */ lwc1 $f0, 0x10($t5) -/* 0AE414 800AD814 C5EA0000 */ lwc1 $f10, ($t7) -/* 0AE418 800AD818 00000000 */ nop -/* 0AE41C 800AD81C 460A003C */ c.lt.s $f0, $f10 -/* 0AE420 800AD820 00000000 */ nop -/* 0AE424 800AD824 45000010 */ bc1f .L800AD868 -/* 0AE428 800AD828 00000000 */ nop -.L800AD82C: -/* 0AE42C 800AD82C 24630001 */ addiu $v1, $v1, 1 -/* 0AE430 800AD830 0064082A */ slt $at, $v1, $a0 -/* 0AE434 800AD834 1020000C */ beqz $at, .L800AD868 -/* 0AE438 800AD838 00000000 */ nop -/* 0AE43C 800AD83C 8FB8004C */ lw $t8, 0x4c($sp) -/* 0AE440 800AD840 0003C880 */ sll $t9, $v1, 2 -/* 0AE444 800AD844 03194021 */ addu $t0, $t8, $t9 -/* 0AE448 800AD848 8D090000 */ lw $t1, ($t0) -/* 0AE44C 800AD84C 00000000 */ nop -/* 0AE450 800AD850 C5300000 */ lwc1 $f16, ($t1) -/* 0AE454 800AD854 00000000 */ nop -/* 0AE458 800AD858 4610003C */ c.lt.s $f0, $f16 -/* 0AE45C 800AD85C 00000000 */ nop -/* 0AE460 800AD860 4501FFF2 */ bc1t .L800AD82C -/* 0AE464 800AD864 00000000 */ nop -.L800AD868: -/* 0AE468 800AD868 1860000F */ blez $v1, .L800AD8A8 -/* 0AE46C 800AD86C 00035880 */ sll $t3, $v1, 2 -/* 0AE470 800AD870 8FAA004C */ lw $t2, 0x4c($sp) -/* 0AE474 800AD874 8FAE0050 */ lw $t6, 0x50($sp) -/* 0AE478 800AD878 014B6021 */ addu $t4, $t2, $t3 -/* 0AE47C 800AD87C 8D8D0000 */ lw $t5, ($t4) -/* 0AE480 800AD880 C5C40010 */ lwc1 $f4, 0x10($t6) -/* 0AE484 800AD884 C5B20000 */ lwc1 $f18, ($t5) -/* 0AE488 800AD888 44803000 */ mtc1 $zero, $f6 -/* 0AE48C 800AD88C 46122081 */ sub.s $f2, $f4, $f18 -/* 0AE490 800AD890 2463FFFF */ addiu $v1, $v1, -1 -/* 0AE494 800AD894 4606103C */ c.lt.s $f2, $f6 -/* 0AE498 800AD898 00000000 */ nop -/* 0AE49C 800AD89C 45000002 */ bc1f .L800AD8A8 -/* 0AE4A0 800AD8A0 00000000 */ nop -/* 0AE4A4 800AD8A4 46001087 */ neg.s $f2, $f2 -.L800AD8A8: -/* 0AE4A8 800AD8A8 8FAF004C */ lw $t7, 0x4c($sp) -/* 0AE4AC 800AD8AC 0003C080 */ sll $t8, $v1, 2 -/* 0AE4B0 800AD8B0 01F81021 */ addu $v0, $t7, $t8 -/* 0AE4B4 800AD8B4 8C480000 */ lw $t0, ($v0) -/* 0AE4B8 800AD8B8 8FB90050 */ lw $t9, 0x50($sp) -/* 0AE4BC 800AD8BC C50A0000 */ lwc1 $f10, ($t0) -/* 0AE4C0 800AD8C0 C7280010 */ lwc1 $f8, 0x10($t9) -/* 0AE4C4 800AD8C4 44808000 */ mtc1 $zero, $f16 -/* 0AE4C8 800AD8C8 460A4001 */ sub.s $f0, $f8, $f10 -/* 0AE4CC 800AD8CC 3C0A800E */ lui $t2, %hi(D_800E2B4C) # $t2, 0x800e -/* 0AE4D0 800AD8D0 4610003C */ c.lt.s $f0, $f16 -/* 0AE4D4 800AD8D4 3C014348 */ li $at, 0x43480000 # 200.000000 -/* 0AE4D8 800AD8D8 45000002 */ bc1f .L800AD8E4 -/* 0AE4DC 800AD8DC 254A2B4C */ addiu $t2, %lo(D_800E2B4C) # addiu $t2, $t2, 0x2b4c -/* 0AE4E0 800AD8E0 46000007 */ neg.s $f0, $f0 -.L800AD8E4: -/* 0AE4E4 800AD8E4 4602003C */ c.lt.s $f0, $f2 -/* 0AE4E8 800AD8E8 C7A60058 */ lwc1 $f6, 0x58($sp) -/* 0AE4EC 800AD8EC 4500000A */ bc1f .L800AD918 -/* 0AE4F0 800AD8F0 240C0001 */ li $t4, 1 -/* 0AE4F4 800AD8F4 3C014348 */ li $at, 0x43480000 # 200.000000 -/* 0AE4F8 800AD8F8 44812000 */ mtc1 $at, $f4 -/* 0AE4FC 800AD8FC 00000000 */ nop -/* 0AE500 800AD900 4600203C */ c.lt.s $f4, $f0 -/* 0AE504 800AD904 00000000 */ nop -/* 0AE508 800AD908 4500000A */ bc1f .L800AD934 -/* 0AE50C 800AD90C 00000000 */ nop -/* 0AE510 800AD910 10000008 */ b .L800AD934 -/* 0AE514 800AD914 2411FFFF */ li $s1, -1 -.L800AD918: -/* 0AE518 800AD918 44819000 */ mtc1 $at, $f18 -/* 0AE51C 800AD91C 24420004 */ addiu $v0, $v0, 4 -/* 0AE520 800AD920 4602903C */ c.lt.s $f18, $f2 -/* 0AE524 800AD924 00000000 */ nop -/* 0AE528 800AD928 45000002 */ bc1f .L800AD934 -/* 0AE52C 800AD92C 00000000 */ nop -/* 0AE530 800AD930 2411FFFF */ li $s1, -1 -.L800AD934: -/* 0AE534 800AD934 0620001D */ bltz $s1, .L800AD9AC -/* 0AE538 800AD938 001148C0 */ sll $t1, $s1, 3 -/* 0AE53C 800AD93C 01314823 */ subu $t1, $t1, $s1 -/* 0AE540 800AD940 00094880 */ sll $t1, $t1, 2 -/* 0AE544 800AD944 012A8021 */ addu $s0, $t1, $t2 -/* 0AE548 800AD948 E606000C */ swc1 $f6, 0xc($s0) -/* 0AE54C 800AD94C 8C4B0000 */ lw $t3, ($v0) -/* 0AE550 800AD950 8FA3007C */ lw $v1, 0x7c($sp) -/* 0AE554 800AD954 C5680000 */ lwc1 $f8, ($t3) -/* 0AE558 800AD958 C7AA0054 */ lwc1 $f10, 0x54($sp) -/* 0AE55C 800AD95C 00036A83 */ sra $t5, $v1, 0xa -/* 0AE560 800AD960 A6000018 */ sh $zero, 0x18($s0) -/* 0AE564 800AD964 A60C0006 */ sh $t4, 6($s0) -/* 0AE568 800AD968 01A01825 */ move $v1, $t5 -/* 0AE56C 800AD96C 25A500BF */ addiu $a1, $t5, 0xbf -/* 0AE570 800AD970 AFAD0030 */ sw $t5, 0x30($sp) -/* 0AE574 800AD974 24040080 */ li $a0, 128 -/* 0AE578 800AD978 E6080010 */ swc1 $f8, 0x10($s0) -/* 0AE57C 800AD97C 0C01BE53 */ jal func_8006F94C -/* 0AE580 800AD980 E60A0014 */ swc1 $f10, 0x14($s0) -/* 0AE584 800AD984 3C04800E */ lui $a0, %hi(D_800E2C84) # $a0, 0x800e -/* 0AE588 800AD988 24842C84 */ addiu $a0, %lo(D_800E2C84) # addiu $a0, $a0, 0x2c84 -/* 0AE58C 800AD98C 8FA30030 */ lw $v1, 0x30($sp) -/* 0AE590 800AD990 8C8E0000 */ lw $t6, ($a0) -/* 0AE594 800AD994 A602001A */ sh $v0, 0x1a($s0) -/* 0AE598 800AD998 01C37823 */ subu $t7, $t6, $v1 -/* 0AE59C 800AD99C 25F80040 */ addiu $t8, $t7, 0x40 -/* 0AE5A0 800AD9A0 07010002 */ bgez $t8, .L800AD9AC -/* 0AE5A4 800AD9A4 AC980000 */ sw $t8, ($a0) -/* 0AE5A8 800AD9A8 AC800000 */ sw $zero, ($a0) -.L800AD9AC: -/* 0AE5AC 800AD9AC 3C10800E */ lui $s0, %hi(D_800E2B4C) # $s0, 0x800e -/* 0AE5B0 800AD9B0 3C118012 */ lui $s1, %hi(D_80127C0C) # $s1, 0x8012 -/* 0AE5B4 800AD9B4 26317C0C */ addiu $s1, %lo(D_80127C0C) # addiu $s1, $s1, 0x7c0c -/* 0AE5B8 800AD9B8 26102B4C */ addiu $s0, %lo(D_800E2B4C) # addiu $s0, $s0, 0x2b4c -.L800AD9BC: -/* 0AE5BC 800AD9BC 86080006 */ lh $t0, 6($s0) -/* 0AE5C0 800AD9C0 8FAA0080 */ lw $t2, 0x80($sp) -/* 0AE5C4 800AD9C4 1100002A */ beqz $t0, .L800ADA70 -/* 0AE5C8 800AD9C8 00000000 */ nop -/* 0AE5CC 800AD9CC 86090018 */ lh $t1, 0x18($s0) -/* 0AE5D0 800AD9D0 000A5900 */ sll $t3, $t2, 4 -/* 0AE5D4 800AD9D4 012B6021 */ addu $t4, $t1, $t3 -/* 0AE5D8 800AD9D8 A60C0018 */ sh $t4, 0x18($s0) -/* 0AE5DC 800AD9DC 860D0018 */ lh $t5, 0x18($s0) -/* 0AE5E0 800AD9E0 3C08FA00 */ lui $t0, 0xfa00 -/* 0AE5E4 800AD9E4 29A10100 */ slti $at, $t5, 0x100 -/* 0AE5E8 800AD9E8 14200003 */ bnez $at, .L800AD9F8 -/* 0AE5EC 800AD9EC 02202025 */ move $a0, $s1 -/* 0AE5F0 800AD9F0 1000001F */ b .L800ADA70 -/* 0AE5F4 800AD9F4 A6000006 */ sh $zero, 6($s0) -.L800AD9F8: -/* 0AE5F8 800AD9F8 12400009 */ beqz $s2, .L800ADA20 -/* 0AE5FC 800AD9FC 3C01C0C0 */ lui $at, (0xC0C0FF00 >> 16) # lui $at, 0xc0c0 -/* 0AE600 800ADA00 8E220000 */ lw $v0, ($s1) -/* 0AE604 800ADA04 3C0FFB00 */ lui $t7, 0xfb00 -/* 0AE608 800ADA08 244E0008 */ addiu $t6, $v0, 8 -/* 0AE60C 800ADA0C AE2E0000 */ sw $t6, ($s1) -/* 0AE610 800ADA10 2418FF00 */ li $t8, -256 -/* 0AE614 800ADA14 00009025 */ move $s2, $zero -/* 0AE618 800ADA18 AC580004 */ sw $t8, 4($v0) -/* 0AE61C 800ADA1C AC4F0000 */ sw $t7, ($v0) -.L800ADA20: -/* 0AE620 800ADA20 8E220000 */ lw $v0, ($s1) -/* 0AE624 800ADA24 3421FF00 */ ori $at, (0xC0C0FF00 & 0xFFFF) # ori $at, $at, 0xff00 -/* 0AE628 800ADA28 24590008 */ addiu $t9, $v0, 8 -/* 0AE62C 800ADA2C AE390000 */ sw $t9, ($s1) -/* 0AE630 800ADA30 AC480000 */ sw $t0, ($v0) -/* 0AE634 800ADA34 860A001A */ lh $t2, 0x1a($s0) -/* 0AE638 800ADA38 3C0C800E */ lui $t4, %hi(D_800E2C8C) # $t4, 0x800e -/* 0AE63C 800ADA3C 314900FF */ andi $t1, $t2, 0xff -/* 0AE640 800ADA40 01215825 */ or $t3, $t1, $at -/* 0AE644 800ADA44 AC4B0004 */ sw $t3, 4($v0) -/* 0AE648 800ADA48 8D8C2C8C */ lw $t4, %lo(D_800E2C8C)($t4) -/* 0AE64C 800ADA4C 3C058012 */ lui $a1, %hi(D_80127C10) # $a1, 0x8012 -/* 0AE650 800ADA50 3C068012 */ lui $a2, %hi(D_80127C14) # $a2, 0x8012 -/* 0AE654 800ADA54 240D010E */ li $t5, 270 -/* 0AE658 800ADA58 AFAD0014 */ sw $t5, 0x14($sp) -/* 0AE65C 800ADA5C 24C67C14 */ addiu $a2, %lo(D_80127C14) # addiu $a2, $a2, 0x7c14 -/* 0AE660 800ADA60 24A57C10 */ addiu $a1, %lo(D_80127C10) # addiu $a1, $a1, 0x7c10 -/* 0AE664 800ADA64 02003825 */ move $a3, $s0 -/* 0AE668 800ADA68 0C01A145 */ jal func_80068514 -/* 0AE66C 800ADA6C AFAC0010 */ sw $t4, 0x10($sp) -.L800ADA70: -/* 0AE670 800ADA70 3C0E800E */ lui $t6, %hi(D_800E2C2C) # $t6, 0x800e -/* 0AE674 800ADA74 25CE2C2C */ addiu $t6, %lo(D_800E2C2C) # addiu $t6, $t6, 0x2c2c -/* 0AE678 800ADA78 2610001C */ addiu $s0, $s0, 0x1c -/* 0AE67C 800ADA7C 160EFFCF */ bne $s0, $t6, .L800AD9BC -/* 0AE680 800ADA80 00000000 */ nop -/* 0AE684 800ADA84 8E220000 */ lw $v0, ($s1) -/* 0AE688 800ADA88 3C18FA00 */ lui $t8, 0xfa00 -/* 0AE68C 800ADA8C 244F0008 */ addiu $t7, $v0, 8 -/* 0AE690 800ADA90 AE2F0000 */ sw $t7, ($s1) -/* 0AE694 800ADA94 2419FFFF */ li $t9, -1 -/* 0AE698 800ADA98 AC590004 */ sw $t9, 4($v0) -/* 0AE69C 800ADA9C AC580000 */ sw $t8, ($v0) -.L800ADAA0: -/* 0AE6A0 800ADAA0 8FBF002C */ lw $ra, 0x2c($sp) -/* 0AE6A4 800ADAA4 8FB00020 */ lw $s0, 0x20($sp) -/* 0AE6A8 800ADAA8 8FB10024 */ lw $s1, 0x24($sp) -/* 0AE6AC 800ADAAC 8FB20028 */ lw $s2, 0x28($sp) -/* 0AE6B0 800ADAB0 03E00008 */ jr $ra -/* 0AE6B4 800ADAB4 27BD0080 */ addiu $sp, $sp, 0x80 - -glabel func_800ADAB8 -/* 0AE6B8 800ADAB8 3C06800E */ lui $a2, %hi(D_800E2C80) # $a2, 0x800e -/* 0AE6BC 800ADABC 24C62C80 */ addiu $a2, %lo(D_800E2C80) # addiu $a2, $a2, 0x2c80 -/* 0AE6C0 800ADAC0 8CC20000 */ lw $v0, ($a2) -/* 0AE6C4 800ADAC4 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0AE6C8 800ADAC8 18400016 */ blez $v0, .L800ADB24 -/* 0AE6CC 800ADACC AFBF0014 */ sw $ra, 0x14($sp) -/* 0AE6D0 800ADAD0 00447023 */ subu $t6, $v0, $a0 -/* 0AE6D4 800ADAD4 1DC00038 */ bgtz $t6, .L800ADBB8 -/* 0AE6D8 800ADAD8 ACCE0000 */ sw $t6, ($a2) -/* 0AE6DC 800ADADC 3C18800E */ lui $t8, %hi(D_800E2C6C) # $t8, 0x800e -/* 0AE6E0 800ADAE0 8F182C6C */ lw $t8, %lo(D_800E2C6C)($t8) -/* 0AE6E4 800ADAE4 34018001 */ li $at, 32769 -/* 0AE6E8 800ADAE8 0301082A */ slt $at, $t8, $at -/* 0AE6EC 800ADAEC 14200008 */ bnez $at, .L800ADB10 -/* 0AE6F0 800ADAF0 24040027 */ li $a0, 39 -/* 0AE6F4 800ADAF4 0C030063 */ jal func_800C018C -/* 0AE6F8 800ADAF8 00000000 */ nop -/* 0AE6FC 800ADAFC 14400003 */ bnez $v0, .L800ADB0C -/* 0AE700 800ADB00 3C04800E */ lui $a0, %hi(D_800E2C98) # $a0, 0x800e -/* 0AE704 800ADB04 0C030076 */ jal func_800C01D8 -/* 0AE708 800ADB08 24842C98 */ addiu $a0, %lo(D_800E2C98) # addiu $a0, $a0, 0x2c98 -.L800ADB0C: -/* 0AE70C 800ADB0C 24040027 */ li $a0, 39 -.L800ADB10: -/* 0AE710 800ADB10 0C000741 */ jal func_80001D04 -/* 0AE714 800ADB14 00002825 */ move $a1, $zero -/* 0AE718 800ADB18 3C01800E */ lui $at, %hi(D_800E2C80) # $at, 0x800e -/* 0AE71C 800ADB1C 10000026 */ b .L800ADBB8 -/* 0AE720 800ADB20 AC202C80 */ sw $zero, %lo(D_800E2C80)($at) -.L800ADB24: -/* 0AE724 800ADB24 3C19800E */ lui $t9, %hi(D_800E2C60) # $t9, 0x800e -/* 0AE728 800ADB28 8F392C60 */ lw $t9, %lo(D_800E2C60)($t9) -/* 0AE72C 800ADB2C 3401BB80 */ li $at, 48000 -/* 0AE730 800ADB30 0321082A */ slt $at, $t9, $at -/* 0AE734 800ADB34 14200020 */ bnez $at, .L800ADBB8 -/* 0AE738 800ADB38 3C03800E */ lui $v1, %hi(D_800E2C7C) # $v1, 0x800e -/* 0AE73C 800ADB3C 24632C7C */ addiu $v1, %lo(D_800E2C7C) # addiu $v1, $v1, 0x2c7c -/* 0AE740 800ADB40 8C620000 */ lw $v0, ($v1) -/* 0AE744 800ADB44 00002825 */ move $a1, $zero -/* 0AE748 800ADB48 18400003 */ blez $v0, .L800ADB58 -/* 0AE74C 800ADB4C 00444023 */ subu $t0, $v0, $a0 -/* 0AE750 800ADB50 10000019 */ b .L800ADBB8 -/* 0AE754 800ADB54 AC680000 */ sw $t0, ($v1) -.L800ADB58: -/* 0AE758 800ADB58 0C000741 */ jal func_80001D04 -/* 0AE75C 800ADB5C 2404023F */ li $a0, 575 -/* 0AE760 800ADB60 3C09800E */ lui $t1, %hi(D_800E2C60) # $t1, 0x800e -/* 0AE764 800ADB64 8D292C60 */ lw $t1, %lo(D_800E2C60)($t1) -/* 0AE768 800ADB68 3C01FFFF */ lui $at, (0xFFFF4480 >> 16) # lui $at, 0xffff -/* 0AE76C 800ADB6C 34214480 */ ori $at, (0xFFFF4480 & 0xFFFF) # ori $at, $at, 0x4480 -/* 0AE770 800ADB70 01215021 */ addu $t2, $t1, $at -/* 0AE774 800ADB74 000A5943 */ sra $t3, $t2, 5 -/* 0AE778 800ADB78 240C0258 */ li $t4, 600 -/* 0AE77C 800ADB7C 018B6823 */ subu $t5, $t4, $t3 -/* 0AE780 800ADB80 3C01800E */ lui $at, %hi(D_800E2C80) # $at, 0x800e -/* 0AE784 800ADB84 AC2D2C80 */ sw $t5, %lo(D_800E2C80)($at) -/* 0AE788 800ADB88 24040384 */ li $a0, 900 -/* 0AE78C 800ADB8C 0C01BE53 */ jal func_8006F94C -/* 0AE790 800ADB90 24050474 */ li $a1, 1140 -/* 0AE794 800ADB94 3C0E800E */ lui $t6, %hi(D_800E2C60) # $t6, 0x800e -/* 0AE798 800ADB98 8DCE2C60 */ lw $t6, %lo(D_800E2C60)($t6) -/* 0AE79C 800ADB9C 3C01FFFF */ lui $at, (0xFFFF4480 >> 16) # lui $at, 0xffff -/* 0AE7A0 800ADBA0 34214480 */ ori $at, (0xFFFF4480 & 0xFFFF) # ori $at, $at, 0x4480 -/* 0AE7A4 800ADBA4 01C17821 */ addu $t7, $t6, $at -/* 0AE7A8 800ADBA8 000FC143 */ sra $t8, $t7, 5 -/* 0AE7AC 800ADBAC 0058C823 */ subu $t9, $v0, $t8 -/* 0AE7B0 800ADBB0 3C01800E */ lui $at, %hi(D_800E2C7C) # $at, 0x800e -/* 0AE7B4 800ADBB4 AC392C7C */ sw $t9, %lo(D_800E2C7C)($at) -.L800ADBB8: -/* 0AE7B8 800ADBB8 8FBF0014 */ lw $ra, 0x14($sp) -/* 0AE7BC 800ADBBC 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0AE7C0 800ADBC0 03E00008 */ jr $ra -/* 0AE7C4 800ADBC4 00000000 */ nop - -glabel func_800ADBC8 -/* 0AE7C8 800ADBC8 3C0E800E */ lui $t6, %hi(D_800E2C60) # $t6, 0x800e -/* 0AE7CC 800ADBCC 8DCE2C60 */ lw $t6, %lo(D_800E2C60)($t6) -/* 0AE7D0 800ADBD0 3C014490 */ li $at, 0x44900000 # 1152.000000 -/* 0AE7D4 800ADBD4 000E7983 */ sra $t7, $t6, 6 -/* 0AE7D8 800ADBD8 448F3000 */ mtc1 $t7, $f6 -/* 0AE7DC 800ADBDC 44812000 */ mtc1 $at, $f4 -/* 0AE7E0 800ADBE0 46803220 */ cvt.s.w $f8, $f6 -/* 0AE7E4 800ADBE4 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0AE7E8 800ADBE8 3C188012 */ lui $t8, %hi(D_80127C1C) # $t8, 0x8012 -/* 0AE7EC 800ADBEC 46082281 */ sub.s $f10, $f4, $f8 -/* 0AE7F0 800ADBF0 8F187C1C */ lw $t8, %lo(D_80127C1C)($t8) -/* 0AE7F4 800ADBF4 AFBF001C */ sw $ra, 0x1c($sp) -/* 0AE7F8 800ADBF8 AFA40038 */ sw $a0, 0x38($sp) -/* 0AE7FC 800ADBFC E7AA0028 */ swc1 $f10, 0x28($sp) -/* 0AE800 800ADC00 87040000 */ lh $a0, ($t8) -/* 0AE804 800ADC04 0C01C1F1 */ jal func_800707C4 -/* 0AE808 800ADC08 00000000 */ nop -/* 0AE80C 800ADC0C C7A60028 */ lwc1 $f6, 0x28($sp) -/* 0AE810 800ADC10 3C198012 */ lui $t9, %hi(D_80127C1C) # $t9, 0x8012 -/* 0AE814 800ADC14 46060302 */ mul.s $f12, $f0, $f6 -/* 0AE818 800ADC18 8F397C1C */ lw $t9, %lo(D_80127C1C)($t9) -/* 0AE81C 800ADC1C 00000000 */ nop -/* 0AE820 800ADC20 87240000 */ lh $a0, ($t9) -/* 0AE824 800ADC24 0C01C1FE */ jal func_800707F8 -/* 0AE828 800ADC28 E7AC0024 */ swc1 $f12, 0x24($sp) -/* 0AE82C 800ADC2C C7A40028 */ lwc1 $f4, 0x28($sp) -/* 0AE830 800ADC30 3C028012 */ lui $v0, %hi(D_80127C1C) # $v0, 0x8012 -/* 0AE834 800ADC34 46040082 */ mul.s $f2, $f0, $f4 -/* 0AE838 800ADC38 C7AC0024 */ lwc1 $f12, 0x24($sp) -/* 0AE83C 800ADC3C 8C427C1C */ lw $v0, %lo(D_80127C1C)($v0) -/* 0AE840 800ADC40 3C03800E */ lui $v1, %hi(D_800E2C94) # $v1, 0x800e -/* 0AE844 800ADC44 460C1281 */ sub.s $f10, $f2, $f12 -/* 0AE848 800ADC48 C448000C */ lwc1 $f8, 0xc($v0) -/* 0AE84C 800ADC4C 24632C94 */ addiu $v1, %lo(D_800E2C94) # addiu $v1, $v1, 0x2c94 -/* 0AE850 800ADC50 8C640000 */ lw $a0, ($v1) -/* 0AE854 800ADC54 C4460014 */ lwc1 $f6, 0x14($v0) -/* 0AE858 800ADC58 46001107 */ neg.s $f4, $f2 -/* 0AE85C 800ADC5C 460A4380 */ add.s $f14, $f8, $f10 -/* 0AE860 800ADC60 C4500010 */ lwc1 $f16, 0x10($v0) -/* 0AE864 800ADC64 460C2201 */ sub.s $f8, $f4, $f12 -/* 0AE868 800ADC68 10800008 */ beqz $a0, .L800ADC8C -/* 0AE86C 800ADC6C 46083480 */ add.s $f18, $f6, $f8 -/* 0AE870 800ADC70 44057000 */ mfc1 $a1, $f14 -/* 0AE874 800ADC74 44068000 */ mfc1 $a2, $f16 -/* 0AE878 800ADC78 44079000 */ mfc1 $a3, $f18 -/* 0AE87C 800ADC7C 0C0025B6 */ jal func_800096D8 -/* 0AE880 800ADC80 00000000 */ nop -/* 0AE884 800ADC84 1000000A */ b .L800ADCB0 -/* 0AE888 800ADC88 8FBF001C */ lw $ra, 0x1c($sp) -.L800ADC8C: -/* 0AE88C 800ADC8C 44057000 */ mfc1 $a1, $f14 -/* 0AE890 800ADC90 44068000 */ mfc1 $a2, $f16 -/* 0AE894 800ADC94 44079000 */ mfc1 $a3, $f18 -/* 0AE898 800ADC98 24080001 */ li $t0, 1 -/* 0AE89C 800ADC9C AFA80010 */ sw $t0, 0x10($sp) -/* 0AE8A0 800ADCA0 2404023E */ li $a0, 574 -/* 0AE8A4 800ADCA4 0C002556 */ jal func_80009558 -/* 0AE8A8 800ADCA8 AFA30014 */ sw $v1, 0x14($sp) -/* 0AE8AC 800ADCAC 8FBF001C */ lw $ra, 0x1c($sp) -.L800ADCB0: -/* 0AE8B0 800ADCB0 27BD0038 */ addiu $sp, $sp, 0x38 -/* 0AE8B4 800ADCB4 03E00008 */ jr $ra -/* 0AE8B8 800ADCB8 00000000 */ nop - -glabel func_800ADCBC -/* 0AE8BC 800ADCBC 27BDFF60 */ addiu $sp, $sp, -0xa0 -/* 0AE8C0 800ADCC0 AFBF0044 */ sw $ra, 0x44($sp) -/* 0AE8C4 800ADCC4 AFB30040 */ sw $s3, 0x40($sp) -/* 0AE8C8 800ADCC8 AFB2003C */ sw $s2, 0x3c($sp) -/* 0AE8CC 800ADCCC AFB10038 */ sw $s1, 0x38($sp) -/* 0AE8D0 800ADCD0 AFB00034 */ sw $s0, 0x34($sp) -/* 0AE8D4 800ADCD4 E7BB0028 */ swc1 $f27, 0x28($sp) -/* 0AE8D8 800ADCD8 E7BA002C */ swc1 $f26, 0x2c($sp) -/* 0AE8DC 800ADCDC E7B90020 */ swc1 $f25, 0x20($sp) -/* 0AE8E0 800ADCE0 E7B80024 */ swc1 $f24, 0x24($sp) -/* 0AE8E4 800ADCE4 E7B70018 */ swc1 $f23, 0x18($sp) -/* 0AE8E8 800ADCE8 E7B6001C */ swc1 $f22, 0x1c($sp) -/* 0AE8EC 800ADCEC E7B50010 */ swc1 $f21, 0x10($sp) -/* 0AE8F0 800ADCF0 E7B40014 */ swc1 $f20, 0x14($sp) -/* 0AE8F4 800ADCF4 AFA500A4 */ sw $a1, 0xa4($sp) -/* 0AE8F8 800ADCF8 8C82000C */ lw $v0, 0xc($a0) -/* 0AE8FC 800ADCFC 00808025 */ move $s0, $a0 -/* 0AE900 800ADD00 1040014A */ beqz $v0, .L800AE22C -/* 0AE904 800ADD04 8FBF0044 */ lw $ra, 0x44($sp) -/* 0AE908 800ADD08 90510000 */ lbu $s1, ($v0) -/* 0AE90C 800ADD0C 90520001 */ lbu $s2, 1($v0) -/* 0AE910 800ADD10 00117140 */ sll $t6, $s1, 5 -/* 0AE914 800ADD14 00127940 */ sll $t7, $s2, 5 -/* 0AE918 800ADD18 000E1840 */ sll $v1, $t6, 1 -/* 0AE91C 800ADD1C 000FC040 */ sll $t8, $t7, 1 -/* 0AE920 800ADD20 2463FFFF */ addiu $v1, $v1, -1 -/* 0AE924 800ADD24 2719FFFF */ addiu $t9, $t8, -1 -/* 0AE928 800ADD28 AFA3008C */ sw $v1, 0x8c($sp) -/* 0AE92C 800ADD2C AFB90088 */ sw $t9, 0x88($sp) -/* 0AE930 800ADD30 848D0008 */ lh $t5, 8($a0) -/* 0AE934 800ADD34 00409825 */ move $s3, $v0 -/* 0AE938 800ADD38 01A50019 */ multu $t5, $a1 -/* 0AE93C 800ADD3C 01C08825 */ move $s1, $t6 -/* 0AE940 800ADD40 01E09025 */ move $s2, $t7 -/* 0AE944 800ADD44 AFA3004C */ sw $v1, 0x4c($sp) -/* 0AE948 800ADD48 00002012 */ mflo $a0 -/* 0AE94C 800ADD4C 0C00322D */ jal func_8000C8B4 -/* 0AE950 800ADD50 00000000 */ nop -/* 0AE954 800ADD54 860F0000 */ lh $t7, ($s0) -/* 0AE958 800ADD58 8FA3004C */ lw $v1, 0x4c($sp) -/* 0AE95C 800ADD5C 004FC021 */ addu $t8, $v0, $t7 -/* 0AE960 800ADD60 0303C824 */ and $t9, $t8, $v1 -/* 0AE964 800ADD64 A6190000 */ sh $t9, ($s0) -/* 0AE968 800ADD68 8FAE00A4 */ lw $t6, 0xa4($sp) -/* 0AE96C 800ADD6C 860D000A */ lh $t5, 0xa($s0) -/* 0AE970 800ADD70 00000000 */ nop -/* 0AE974 800ADD74 01AE0019 */ multu $t5, $t6 -/* 0AE978 800ADD78 00002012 */ mflo $a0 -/* 0AE97C 800ADD7C 0C00322D */ jal func_8000C8B4 -/* 0AE980 800ADD80 00000000 */ nop -/* 0AE984 800ADD84 860E0004 */ lh $t6, 4($s0) -/* 0AE988 800ADD88 860F0002 */ lh $t7, 2($s0) -/* 0AE98C 800ADD8C 01D10019 */ multu $t6, $s1 -/* 0AE990 800ADD90 8FB90088 */ lw $t9, 0x88($sp) -/* 0AE994 800ADD94 004FC021 */ addu $t8, $v0, $t7 -/* 0AE998 800ADD98 03196824 */ and $t5, $t8, $t9 -/* 0AE99C 800ADD9C 86180006 */ lh $t8, 6($s0) -/* 0AE9A0 800ADDA0 A60D0002 */ sh $t5, 2($s0) -/* 0AE9A4 800ADDA4 3C0D800E */ lui $t5, %hi(D_800E2C6C) # $t5, 0x800e -/* 0AE9A8 800ADDA8 8DAD2C6C */ lw $t5, %lo(D_800E2C6C)($t5) -/* 0AE9AC 800ADDAC 3C028012 */ lui $v0, %hi(D_80127C1C) # $v0, 0x8012 -/* 0AE9B0 800ADDB0 000D7083 */ sra $t6, $t5, 2 -/* 0AE9B4 800ADDB4 00008812 */ mflo $s1 -/* 0AE9B8 800ADDB8 00117A03 */ sra $t7, $s1, 8 -/* 0AE9BC 800ADDBC 01E08825 */ move $s1, $t7 -/* 0AE9C0 800ADDC0 03120019 */ multu $t8, $s2 -/* 0AE9C4 800ADDC4 3C0F800E */ lui $t7, %hi(D_800E2C60) # $t7, 0x800e -/* 0AE9C8 800ADDC8 8DEF2C60 */ lw $t7, %lo(D_800E2C60)($t7) -/* 0AE9CC 800ADDCC 00009012 */ mflo $s2 -/* 0AE9D0 800ADDD0 0012CA03 */ sra $t9, $s2, 8 -/* 0AE9D4 800ADDD4 03209025 */ move $s2, $t9 -/* 0AE9D8 800ADDD8 01CF0019 */ multu $t6, $t7 -/* 0AE9DC 800ADDDC 92190016 */ lbu $t9, 0x16($s0) -/* 0AE9E0 800ADDE0 00117080 */ sll $t6, $s1, 2 -/* 0AE9E4 800ADDE4 00001812 */ mflo $v1 -/* 0AE9E8 800ADDE8 0003C383 */ sra $t8, $v1, 0xe -/* 0AE9EC 800ADDEC 00000000 */ nop -/* 0AE9F0 800ADDF0 03380019 */ multu $t9, $t8 -/* 0AE9F4 800ADDF4 00001812 */ mflo $v1 -/* 0AE9F8 800ADDF8 00036C03 */ sra $t5, $v1, 0x10 -/* 0AE9FC 800ADDFC 19A0010A */ blez $t5, .L800AE228 -/* 0AEA00 800ADE00 01A01825 */ move $v1, $t5 -/* 0AEA04 800ADE04 8C427C1C */ lw $v0, %lo(D_80127C1C)($v0) -/* 0AEA08 800ADE08 01D17023 */ subu $t6, $t6, $s1 -/* 0AEA0C 800ADE0C 844F0000 */ lh $t7, ($v0) -/* 0AEA10 800ADE10 000E7040 */ sll $t6, $t6, 1 -/* 0AEA14 800ADE14 01CF0019 */ multu $t6, $t7 -/* 0AEA18 800ADE18 860D0000 */ lh $t5, ($s0) -/* 0AEA1C 800ADE1C 860A0002 */ lh $t2, 2($s0) -/* 0AEA20 800ADE20 8FAF008C */ lw $t7, 0x8c($sp) -/* 0AEA24 800ADE24 84440004 */ lh $a0, 4($v0) -/* 0AEA28 800ADE28 AFA30084 */ sw $v1, 0x84($sp) -/* 0AEA2C 800ADE2C 024A9021 */ addu $s2, $s2, $t2 -/* 0AEA30 800ADE30 AFAA0098 */ sw $t2, 0x98($sp) -/* 0AEA34 800ADE34 0000C012 */ mflo $t8 -/* 0AEA38 800ADE38 0018CC03 */ sra $t9, $t8, 0x10 -/* 0AEA3C 800ADE3C 01B97021 */ addu $t6, $t5, $t9 -/* 0AEA40 800ADE40 01CF4024 */ and $t0, $t6, $t7 -/* 0AEA44 800ADE44 02288821 */ addu $s1, $s1, $t0 -/* 0AEA48 800ADE48 0C01C1F1 */ jal func_800707C4 -/* 0AEA4C 800ADE4C AFA8009C */ sw $t0, 0x9c($sp) -/* 0AEA50 800ADE50 3C188012 */ lui $t8, %hi(D_80127C1C) # $t8, 0x8012 -/* 0AEA54 800ADE54 8F187C1C */ lw $t8, %lo(D_80127C1C)($t8) -/* 0AEA58 800ADE58 00000000 */ nop -/* 0AEA5C 800ADE5C 87040004 */ lh $a0, 4($t8) -/* 0AEA60 800ADE60 0C01C1FE */ jal func_800707F8 -/* 0AEA64 800ADE64 E7A0007C */ swc1 $f0, 0x7c($sp) -/* 0AEA68 800ADE68 3C01800E */ lui $at, %hi(D_800E2A8C) # $at, 0x800e -/* 0AEA6C 800ADE6C C42C2A8C */ lwc1 $f12, %lo(D_800E2A8C)($at) -/* 0AEA70 800ADE70 3C01800E */ lui $at, %hi(D_800E2A9C) # $at, 0x800e -/* 0AEA74 800ADE74 46006102 */ mul.s $f4, $f12, $f0 -/* 0AEA78 800ADE78 C7A2007C */ lwc1 $f2, 0x7c($sp) -/* 0AEA7C 800ADE7C C42E2A90 */ lwc1 $f14, %lo(D_800E2A90)($at) -/* 0AEA80 800ADE80 C4302A94 */ lwc1 $f16, %lo(D_800E2A94)($at) -/* 0AEA84 800ADE84 46027182 */ mul.s $f6, $f14, $f2 -/* 0AEA88 800ADE88 C4322A98 */ lwc1 $f18, %lo(D_800E2A98)($at) -/* 0AEA8C 800ADE8C C4342A9C */ lwc1 $f20, %lo(D_800E2A9C)($at) -/* 0AEA90 800ADE90 3C01800E */ lui $at, %hi(D_800E2AA8) # $at, 0x800e -/* 0AEA94 800ADE94 46062201 */ sub.s $f8, $f4, $f6 -/* 0AEA98 800ADE98 C4362AA0 */ lwc1 $f22, %lo(D_800E2AA0)($at) -/* 0AEA9C 800ADE9C 444EF800 */ cfc1 $t6, $31 -/* 0AEAA0 800ADEA0 C4382AA4 */ lwc1 $f24, %lo(D_800E2AA4)($at) -/* 0AEAA4 800ADEA4 C43A2AA8 */ lwc1 $f26, %lo(D_800E2AA8)($at) -/* 0AEAA8 800ADEA8 35C10003 */ ori $at, $t6, 3 -/* 0AEAAC 800ADEAC 38210002 */ xori $at, $at, 2 -/* 0AEAB0 800ADEB0 44C1F800 */ ctc1 $at, $31 -/* 0AEAB4 800ADEB4 3C09800E */ lui $t1, %hi(D_800E2C90) # $t1, 0x800e -/* 0AEAB8 800ADEB8 460042A4 */ cvt.w.s $f10, $f8 -/* 0AEABC 800ADEBC 25292C90 */ addiu $t1, %lo(D_800E2C90) # addiu $t1, $t1, 0x2c90 -/* 0AEAC0 800ADEC0 44CEF800 */ ctc1 $t6, $31 -/* 0AEAC4 800ADEC4 440F5000 */ mfc1 $t7, $f10 -/* 0AEAC8 800ADEC8 46026102 */ mul.s $f4, $f12, $f2 -/* 0AEACC 800ADECC 8D2D0000 */ lw $t5, ($t1) -/* 0AEAD0 800ADED0 3C0B800E */ lui $t3, %hi(D_800E2AAC) # $t3, 0x800e -/* 0AEAD4 800ADED4 000DC880 */ sll $t9, $t5, 2 -/* 0AEAD8 800ADED8 46007182 */ mul.s $f6, $f14, $f0 -/* 0AEADC 800ADEDC 032DC821 */ addu $t9, $t9, $t5 -/* 0AEAE0 800ADEE0 256B2AAC */ addiu $t3, %lo(D_800E2AAC) # addiu $t3, $t3, 0x2aac -/* 0AEAE4 800ADEE4 0019C840 */ sll $t9, $t9, 1 -/* 0AEAE8 800ADEE8 46062200 */ add.s $f8, $f4, $f6 -/* 0AEAEC 800ADEEC 01791021 */ addu $v0, $t3, $t9 -/* 0AEAF0 800ADEF0 4458F800 */ cfc1 $t8, $31 -/* 0AEAF4 800ADEF4 A44F0000 */ sh $t7, ($v0) -/* 0AEAF8 800ADEF8 37010003 */ ori $at, $t8, 3 -/* 0AEAFC 800ADEFC 38210002 */ xori $at, $at, 2 -/* 0AEB00 800ADF00 44C1F800 */ ctc1 $at, $31 -/* 0AEB04 800ADF04 3C0C8012 */ lui $t4, %hi(D_80127C18) # $t4, 0x8012 -/* 0AEB08 800ADF08 460042A4 */ cvt.w.s $f10, $f8 -/* 0AEB0C 800ADF0C 258C7C18 */ addiu $t4, %lo(D_80127C18) # addiu $t4, $t4, 0x7c18 -/* 0AEB10 800ADF10 44D8F800 */ ctc1 $t8, $31 -/* 0AEB14 800ADF14 440D5000 */ mfc1 $t5, $f10 -/* 0AEB18 800ADF18 46008102 */ mul.s $f4, $f16, $f0 -/* 0AEB1C 800ADF1C A44D0002 */ sh $t5, 2($v0) -/* 0AEB20 800ADF20 8FAA0098 */ lw $t2, 0x98($sp) -/* 0AEB24 800ADF24 8FA30084 */ lw $v1, 0x84($sp) -/* 0AEB28 800ADF28 46029182 */ mul.s $f6, $f18, $f2 -/* 0AEB2C 800ADF2C 8FA8009C */ lw $t0, 0x9c($sp) -/* 0AEB30 800ADF30 27A40068 */ addiu $a0, $sp, 0x68 -/* 0AEB34 800ADF34 00002825 */ move $a1, $zero -/* 0AEB38 800ADF38 46062201 */ sub.s $f8, $f4, $f6 -/* 0AEB3C 800ADF3C 4459F800 */ cfc1 $t9, $31 -/* 0AEB40 800ADF40 00000000 */ nop -/* 0AEB44 800ADF44 37210003 */ ori $at, $t9, 3 -/* 0AEB48 800ADF48 38210002 */ xori $at, $at, 2 -/* 0AEB4C 800ADF4C 44C1F800 */ ctc1 $at, $31 -/* 0AEB50 800ADF50 00000000 */ nop -/* 0AEB54 800ADF54 460042A4 */ cvt.w.s $f10, $f8 -/* 0AEB58 800ADF58 44D9F800 */ ctc1 $t9, $31 -/* 0AEB5C 800ADF5C 440E5000 */ mfc1 $t6, $f10 -/* 0AEB60 800ADF60 46028102 */ mul.s $f4, $f16, $f2 -/* 0AEB64 800ADF64 A44E000A */ sh $t6, 0xa($v0) -/* 0AEB68 800ADF68 46009182 */ mul.s $f6, $f18, $f0 -/* 0AEB6C 800ADF6C 46062200 */ add.s $f8, $f4, $f6 -/* 0AEB70 800ADF70 444FF800 */ cfc1 $t7, $31 -/* 0AEB74 800ADF74 00000000 */ nop -/* 0AEB78 800ADF78 35E10003 */ ori $at, $t7, 3 -/* 0AEB7C 800ADF7C 38210002 */ xori $at, $at, 2 -/* 0AEB80 800ADF80 44C1F800 */ ctc1 $at, $31 -/* 0AEB84 800ADF84 00000000 */ nop -/* 0AEB88 800ADF88 460042A4 */ cvt.w.s $f10, $f8 -/* 0AEB8C 800ADF8C 44CFF800 */ ctc1 $t7, $31 -/* 0AEB90 800ADF90 44185000 */ mfc1 $t8, $f10 -/* 0AEB94 800ADF94 4600A102 */ mul.s $f4, $f20, $f0 -/* 0AEB98 800ADF98 A458000C */ sh $t8, 0xc($v0) -/* 0AEB9C 800ADF9C 4602B182 */ mul.s $f6, $f22, $f2 -/* 0AEBA0 800ADFA0 46062201 */ sub.s $f8, $f4, $f6 -/* 0AEBA4 800ADFA4 444DF800 */ cfc1 $t5, $31 -/* 0AEBA8 800ADFA8 00000000 */ nop -/* 0AEBAC 800ADFAC 35A10003 */ ori $at, $t5, 3 -/* 0AEBB0 800ADFB0 38210002 */ xori $at, $at, 2 -/* 0AEBB4 800ADFB4 44C1F800 */ ctc1 $at, $31 -/* 0AEBB8 800ADFB8 00000000 */ nop -/* 0AEBBC 800ADFBC 460042A4 */ cvt.w.s $f10, $f8 -/* 0AEBC0 800ADFC0 44CDF800 */ ctc1 $t5, $31 -/* 0AEBC4 800ADFC4 44195000 */ mfc1 $t9, $f10 -/* 0AEBC8 800ADFC8 4602A102 */ mul.s $f4, $f20, $f2 -/* 0AEBCC 800ADFCC A4590014 */ sh $t9, 0x14($v0) -/* 0AEBD0 800ADFD0 4600B182 */ mul.s $f6, $f22, $f0 -/* 0AEBD4 800ADFD4 46062200 */ add.s $f8, $f4, $f6 -/* 0AEBD8 800ADFD8 444EF800 */ cfc1 $t6, $31 -/* 0AEBDC 800ADFDC 00000000 */ nop -/* 0AEBE0 800ADFE0 35C10003 */ ori $at, $t6, 3 -/* 0AEBE4 800ADFE4 38210002 */ xori $at, $at, 2 -/* 0AEBE8 800ADFE8 44C1F800 */ ctc1 $at, $31 -/* 0AEBEC 800ADFEC 00000000 */ nop -/* 0AEBF0 800ADFF0 460042A4 */ cvt.w.s $f10, $f8 -/* 0AEBF4 800ADFF4 44CEF800 */ ctc1 $t6, $31 -/* 0AEBF8 800ADFF8 440F5000 */ mfc1 $t7, $f10 -/* 0AEBFC 800ADFFC 4600C102 */ mul.s $f4, $f24, $f0 -/* 0AEC00 800AE000 A44F0016 */ sh $t7, 0x16($v0) -/* 0AEC04 800AE004 3C0F8012 */ lui $t7, %hi(D_80127C0C) # $t7, 0x8012 -/* 0AEC08 800AE008 4602D182 */ mul.s $f6, $f26, $f2 -/* 0AEC0C 800AE00C 46062201 */ sub.s $f8, $f4, $f6 -/* 0AEC10 800AE010 4458F800 */ cfc1 $t8, $31 -/* 0AEC14 800AE014 00000000 */ nop -/* 0AEC18 800AE018 37010003 */ ori $at, $t8, 3 -/* 0AEC1C 800AE01C 38210002 */ xori $at, $at, 2 -/* 0AEC20 800AE020 44C1F800 */ ctc1 $at, $31 -/* 0AEC24 800AE024 00000000 */ nop -/* 0AEC28 800AE028 460042A4 */ cvt.w.s $f10, $f8 -/* 0AEC2C 800AE02C 44D8F800 */ ctc1 $t8, $31 -/* 0AEC30 800AE030 440D5000 */ mfc1 $t5, $f10 -/* 0AEC34 800AE034 4602C102 */ mul.s $f4, $f24, $f2 -/* 0AEC38 800AE038 A44D001E */ sh $t5, 0x1e($v0) -/* 0AEC3C 800AE03C 3C184000 */ lui $t8, (0x40000102 >> 16) # lui $t8, 0x4000 -/* 0AEC40 800AE040 3C0D4002 */ lui $t5, (0x40020300 >> 16) # lui $t5, 0x4002 -/* 0AEC44 800AE044 4600D182 */ mul.s $f6, $f26, $f0 -/* 0AEC48 800AE048 37180102 */ ori $t8, (0x40000102 & 0xFFFF) # ori $t8, $t8, 0x102 -/* 0AEC4C 800AE04C 35AD0300 */ ori $t5, (0x40020300 & 0xFFFF) # ori $t5, $t5, 0x300 -/* 0AEC50 800AE050 46062200 */ add.s $f8, $f4, $f6 -/* 0AEC54 800AE054 4459F800 */ cfc1 $t9, $31 -/* 0AEC58 800AE058 00000000 */ nop -/* 0AEC5C 800AE05C 37210003 */ ori $at, $t9, 3 -/* 0AEC60 800AE060 38210002 */ xori $at, $at, 2 -/* 0AEC64 800AE064 44C1F800 */ ctc1 $at, $31 -/* 0AEC68 800AE068 00000000 */ nop -/* 0AEC6C 800AE06C 460042A4 */ cvt.w.s $f10, $f8 -/* 0AEC70 800AE070 440E5000 */ mfc1 $t6, $f10 -/* 0AEC74 800AE074 44D9F800 */ ctc1 $t9, $31 -/* 0AEC78 800AE078 A44E0020 */ sh $t6, 0x20($v0) -/* 0AEC7C 800AE07C 8DEF7C0C */ lw $t7, %lo(D_80127C0C)($t7) -/* 0AEC80 800AE080 8D820000 */ lw $v0, ($t4) -/* 0AEC84 800AE084 AFAF0068 */ sw $t7, 0x68($sp) -/* 0AEC88 800AE088 AC580000 */ sw $t8, ($v0) -/* 0AEC8C 800AE08C A4480004 */ sh $t0, 4($v0) -/* 0AEC90 800AE090 A44A0006 */ sh $t2, 6($v0) -/* 0AEC94 800AE094 A4510008 */ sh $s1, 8($v0) -/* 0AEC98 800AE098 A44A000A */ sh $t2, 0xa($v0) -/* 0AEC9C 800AE09C A451000C */ sh $s1, 0xc($v0) -/* 0AECA0 800AE0A0 A452000E */ sh $s2, 0xe($v0) -/* 0AECA4 800AE0A4 AC4D0010 */ sw $t5, 0x10($v0) -/* 0AECA8 800AE0A8 A4510014 */ sh $s1, 0x14($v0) -/* 0AECAC 800AE0AC A4520016 */ sh $s2, 0x16($v0) -/* 0AECB0 800AE0B0 A4480018 */ sh $t0, 0x18($v0) -/* 0AECB4 800AE0B4 A452001A */ sh $s2, 0x1a($v0) -/* 0AECB8 800AE0B8 A448001C */ sh $t0, 0x1c($v0) -/* 0AECBC 800AE0BC A44A001E */ sh $t2, 0x1e($v0) -/* 0AECC0 800AE0C0 92190010 */ lbu $t9, 0x10($s0) -/* 0AECC4 800AE0C4 920F0011 */ lbu $t7, 0x11($s0) -/* 0AECC8 800AE0C8 00197600 */ sll $t6, $t9, 0x18 -/* 0AECCC 800AE0CC 92190012 */ lbu $t9, 0x12($s0) -/* 0AECD0 800AE0D0 000FC400 */ sll $t8, $t7, 0x10 -/* 0AECD4 800AE0D4 01D86825 */ or $t5, $t6, $t8 -/* 0AECD8 800AE0D8 00197A00 */ sll $t7, $t9, 8 -/* 0AECDC 800AE0DC 92180013 */ lbu $t8, 0x13($s0) -/* 0AECE0 800AE0E0 01AF7025 */ or $t6, $t5, $t7 -/* 0AECE4 800AE0E4 920D0014 */ lbu $t5, 0x14($s0) -/* 0AECE8 800AE0E8 0018CE00 */ sll $t9, $t8, 0x18 -/* 0AECEC 800AE0EC 92180015 */ lbu $t8, 0x15($s0) -/* 0AECF0 800AE0F0 000D7C00 */ sll $t7, $t5, 0x10 -/* 0AECF4 800AE0F4 01C33025 */ or $a2, $t6, $v1 -/* 0AECF8 800AE0F8 032F7025 */ or $t6, $t9, $t7 -/* 0AECFC 800AE0FC 24420020 */ addiu $v0, $v0, 0x20 -/* 0AED00 800AE100 00186A00 */ sll $t5, $t8, 8 -/* 0AED04 800AE104 01CD3825 */ or $a3, $t6, $t5 -/* 0AED08 800AE108 0C01FD65 */ jal func_8007F594 -/* 0AED0C 800AE10C AFA20064 */ sw $v0, 0x64($sp) -/* 0AED10 800AE110 8FA30068 */ lw $v1, 0x68($sp) -/* 0AED14 800AE114 3C010700 */ lui $at, 0x700 -/* 0AED18 800AE118 246F0008 */ addiu $t7, $v1, 8 -/* 0AED1C 800AE11C AFAF0068 */ sw $t7, 0x68($sp) -/* 0AED20 800AE120 8664000A */ lh $a0, 0xa($s3) -/* 0AED24 800AE124 8FA20064 */ lw $v0, 0x64($sp) -/* 0AED28 800AE128 309800FF */ andi $t8, $a0, 0xff -/* 0AED2C 800AE12C 00187400 */ sll $t6, $t8, 0x10 -/* 0AED30 800AE130 0004C8C0 */ sll $t9, $a0, 3 -/* 0AED34 800AE134 332FFFFF */ andi $t7, $t9, 0xffff -/* 0AED38 800AE138 01C16825 */ or $t5, $t6, $at -/* 0AED3C 800AE13C 01AFC025 */ or $t8, $t5, $t7 -/* 0AED40 800AE140 AC780000 */ sw $t8, ($v1) -/* 0AED44 800AE144 8E6E000C */ lw $t6, 0xc($s3) -/* 0AED48 800AE148 3C088000 */ lui $t0, 0x8000 -/* 0AED4C 800AE14C 3C09800E */ lui $t1, %hi(D_800E2C90) # $t1, 0x800e -/* 0AED50 800AE150 01C8C821 */ addu $t9, $t6, $t0 -/* 0AED54 800AE154 25292C90 */ addiu $t1, %lo(D_800E2C90) # addiu $t1, $t1, 0x2c90 -/* 0AED58 800AE158 AC790004 */ sw $t9, 4($v1) -/* 0AED5C 800AE15C 8D380000 */ lw $t8, ($t1) -/* 0AED60 800AE160 240A000A */ li $t2, 10 -/* 0AED64 800AE164 030A0019 */ multu $t8, $t2 -/* 0AED68 800AE168 8FA50068 */ lw $a1, 0x68($sp) -/* 0AED6C 800AE16C 3C0B800E */ lui $t3, %hi(D_800E2AAC) # $t3, 0x800e -/* 0AED70 800AE170 256B2AAC */ addiu $t3, %lo(D_800E2AAC) # addiu $t3, $t3, 0x2aac -/* 0AED74 800AE174 24AF0008 */ addiu $t7, $a1, 8 -/* 0AED78 800AE178 AFAF0068 */ sw $t7, 0x68($sp) -/* 0AED7C 800AE17C 3C010400 */ lui $at, 0x400 -/* 0AED80 800AE180 3C0C8012 */ lui $t4, %hi(D_80127C18) # $t4, 0x8012 -/* 0AED84 800AE184 258C7C18 */ addiu $t4, %lo(D_80127C18) # addiu $t4, $t4, 0x7c18 -/* 0AED88 800AE188 00007012 */ mflo $t6 -/* 0AED8C 800AE18C 016EC821 */ addu $t9, $t3, $t6 -/* 0AED90 800AE190 03286821 */ addu $t5, $t9, $t0 -/* 0AED94 800AE194 31AF0006 */ andi $t7, $t5, 6 -/* 0AED98 800AE198 35F80018 */ ori $t8, $t7, 0x18 -/* 0AED9C 800AE19C 330E00FF */ andi $t6, $t8, 0xff -/* 0AEDA0 800AE1A0 000ECC00 */ sll $t9, $t6, 0x10 -/* 0AEDA4 800AE1A4 03216825 */ or $t5, $t9, $at -/* 0AEDA8 800AE1A8 35AF0050 */ ori $t7, $t5, 0x50 -/* 0AEDAC 800AE1AC ACAF0000 */ sw $t7, ($a1) -/* 0AEDB0 800AE1B0 8D380000 */ lw $t8, ($t1) -/* 0AEDB4 800AE1B4 3C018012 */ lui $at, %hi(D_80127C0C) # $at, 0x8012 -/* 0AEDB8 800AE1B8 030A0019 */ multu $t8, $t2 -/* 0AEDBC 800AE1BC 00007012 */ mflo $t6 -/* 0AEDC0 800AE1C0 016EC821 */ addu $t9, $t3, $t6 -/* 0AEDC4 800AE1C4 03286821 */ addu $t5, $t9, $t0 -/* 0AEDC8 800AE1C8 ACAD0004 */ sw $t5, 4($a1) -/* 0AEDCC 800AE1CC 8FAF0068 */ lw $t7, 0x68($sp) -/* 0AEDD0 800AE1D0 3C0E0511 */ lui $t6, (0x05110020 >> 16) # lui $t6, 0x511 -/* 0AEDD4 800AE1D4 25F80008 */ addiu $t8, $t7, 8 -/* 0AEDD8 800AE1D8 AFB80068 */ sw $t8, 0x68($sp) -/* 0AEDDC 800AE1DC 35CE0020 */ ori $t6, (0x05110020 & 0xFFFF) # ori $t6, $t6, 0x20 -/* 0AEDE0 800AE1E0 ADEE0000 */ sw $t6, ($t7) -/* 0AEDE4 800AE1E4 8D990000 */ lw $t9, ($t4) -/* 0AEDE8 800AE1E8 3C0EE700 */ lui $t6, 0xe700 -/* 0AEDEC 800AE1EC 03286821 */ addu $t5, $t9, $t0 -/* 0AEDF0 800AE1F0 ADED0004 */ sw $t5, 4($t7) -/* 0AEDF4 800AE1F4 8FAF0068 */ lw $t7, 0x68($sp) -/* 0AEDF8 800AE1F8 00000000 */ nop -/* 0AEDFC 800AE1FC 25F80008 */ addiu $t8, $t7, 8 -/* 0AEE00 800AE200 AFB80068 */ sw $t8, 0x68($sp) -/* 0AEE04 800AE204 ADE00004 */ sw $zero, 4($t7) -/* 0AEE08 800AE208 ADEE0000 */ sw $t6, ($t7) -/* 0AEE0C 800AE20C 8D390000 */ lw $t9, ($t1) -/* 0AEE10 800AE210 8FB80068 */ lw $t8, 0x68($sp) -/* 0AEE14 800AE214 272D0004 */ addiu $t5, $t9, 4 -/* 0AEE18 800AE218 31AF000F */ andi $t7, $t5, 0xf -/* 0AEE1C 800AE21C AD2F0000 */ sw $t7, ($t1) -/* 0AEE20 800AE220 AC387C0C */ sw $t8, %lo(D_80127C0C)($at) -/* 0AEE24 800AE224 AD820000 */ sw $v0, ($t4) -.L800AE228: -/* 0AEE28 800AE228 8FBF0044 */ lw $ra, 0x44($sp) -.L800AE22C: -/* 0AEE2C 800AE22C C7B50010 */ lwc1 $f21, 0x10($sp) -/* 0AEE30 800AE230 C7B40014 */ lwc1 $f20, 0x14($sp) -/* 0AEE34 800AE234 C7B70018 */ lwc1 $f23, 0x18($sp) -/* 0AEE38 800AE238 C7B6001C */ lwc1 $f22, 0x1c($sp) -/* 0AEE3C 800AE23C C7B90020 */ lwc1 $f25, 0x20($sp) -/* 0AEE40 800AE240 C7B80024 */ lwc1 $f24, 0x24($sp) -/* 0AEE44 800AE244 C7BB0028 */ lwc1 $f27, 0x28($sp) -/* 0AEE48 800AE248 C7BA002C */ lwc1 $f26, 0x2c($sp) -/* 0AEE4C 800AE24C 8FB00034 */ lw $s0, 0x34($sp) -/* 0AEE50 800AE250 8FB10038 */ lw $s1, 0x38($sp) -/* 0AEE54 800AE254 8FB2003C */ lw $s2, 0x3c($sp) -/* 0AEE58 800AE258 8FB30040 */ lw $s3, 0x40($sp) -/* 0AEE5C 800AE25C 03E00008 */ jr $ra -/* 0AEE60 800AE260 27BD00A0 */ addiu $sp, $sp, 0xa0 - -/* 0AEE64 800AE264 00000000 */ nop -/* 0AEE68 800AE268 00000000 */ nop -/* 0AEE6C 800AE26C 00000000 */ nop diff --git a/asm/unknown_0B8920.s b/asm/unknown_0B8920.s deleted file mode 100755 index f08269e3..00000000 --- a/asm/unknown_0B8920.s +++ /dev/null @@ -1,16997 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_800B7D20 -/* 0B8920 800B7D20 3C04800E */ lui $a0, %hi(D_800E3040) # $a0, 0x800e -/* 0B8924 800B7D24 8C843040 */ lw $a0, %lo(D_800E3040)($a0) -/* 0B8928 800B7D28 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0B892C 800B7D2C 10800005 */ beqz $a0, .L800B7D44 -/* 0B8930 800B7D30 AFBF0014 */ sw $ra, 0x14($sp) -/* 0B8934 800B7D34 0C01C450 */ jal func_80071140 -/* 0B8938 800B7D38 00000000 */ nop -/* 0B893C 800B7D3C 3C01800E */ lui $at, %hi(D_800E3040) # $at, 0x800e -/* 0B8940 800B7D40 AC203040 */ sw $zero, %lo(D_800E3040)($at) -.L800B7D44: -/* 0B8944 800B7D44 3C04800E */ lui $a0, %hi(D_800E3044) # $a0, 0x800e -/* 0B8948 800B7D48 8C843044 */ lw $a0, %lo(D_800E3044)($a0) -/* 0B894C 800B7D4C 00000000 */ nop -/* 0B8950 800B7D50 10800005 */ beqz $a0, .L800B7D68 -/* 0B8954 800B7D54 00000000 */ nop -/* 0B8958 800B7D58 0C01C450 */ jal func_80071140 -/* 0B895C 800B7D5C 00000000 */ nop -/* 0B8960 800B7D60 3C01800E */ lui $at, %hi(D_800E3044) # $at, 0x800e -/* 0B8964 800B7D64 AC203044 */ sw $zero, %lo(D_800E3044)($at) -.L800B7D68: -/* 0B8968 800B7D68 3C04800E */ lui $a0, %hi(D_800E3048) # $a0, 0x800e -/* 0B896C 800B7D6C 8C843048 */ lw $a0, %lo(D_800E3048)($a0) -/* 0B8970 800B7D70 00000000 */ nop -/* 0B8974 800B7D74 10800005 */ beqz $a0, .L800B7D8C -/* 0B8978 800B7D78 00000000 */ nop -/* 0B897C 800B7D7C 0C01C450 */ jal func_80071140 -/* 0B8980 800B7D80 00000000 */ nop -/* 0B8984 800B7D84 3C01800E */ lui $at, %hi(D_800E3048) # $at, 0x800e -/* 0B8988 800B7D88 AC203048 */ sw $zero, %lo(D_800E3048)($at) -.L800B7D8C: -/* 0B898C 800B7D8C 3C04800E */ lui $a0, %hi(D_800E304C) # $a0, 0x800e -/* 0B8990 800B7D90 8C84304C */ lw $a0, %lo(D_800E304C)($a0) -/* 0B8994 800B7D94 00000000 */ nop -/* 0B8998 800B7D98 10800005 */ beqz $a0, .L800B7DB0 -/* 0B899C 800B7D9C 00000000 */ nop -/* 0B89A0 800B7DA0 0C01C450 */ jal func_80071140 -/* 0B89A4 800B7DA4 00000000 */ nop -/* 0B89A8 800B7DA8 3C01800E */ lui $at, %hi(D_800E304C) # $at, 0x800e -/* 0B89AC 800B7DAC AC20304C */ sw $zero, %lo(D_800E304C)($at) -.L800B7DB0: -/* 0B89B0 800B7DB0 3C04800E */ lui $a0, %hi(D_800E3070) # $a0, 0x800e -/* 0B89B4 800B7DB4 8C843070 */ lw $a0, %lo(D_800E3070)($a0) -/* 0B89B8 800B7DB8 00000000 */ nop -/* 0B89BC 800B7DBC 10800005 */ beqz $a0, .L800B7DD4 -/* 0B89C0 800B7DC0 00000000 */ nop -/* 0B89C4 800B7DC4 0C01C450 */ jal func_80071140 -/* 0B89C8 800B7DC8 00000000 */ nop -/* 0B89CC 800B7DCC 3C01800E */ lui $at, %hi(D_800E3070) # $at, 0x800e -/* 0B89D0 800B7DD0 AC203070 */ sw $zero, %lo(D_800E3070)($at) -.L800B7DD4: -/* 0B89D4 800B7DD4 3C04800E */ lui $a0, %hi(D_800E3080) # $a0, 0x800e -/* 0B89D8 800B7DD8 8C843080 */ lw $a0, %lo(D_800E3080)($a0) -/* 0B89DC 800B7DDC 00000000 */ nop -/* 0B89E0 800B7DE0 10800005 */ beqz $a0, .L800B7DF8 -/* 0B89E4 800B7DE4 00000000 */ nop -/* 0B89E8 800B7DE8 0C01C450 */ jal func_80071140 -/* 0B89EC 800B7DEC 00000000 */ nop -/* 0B89F0 800B7DF0 3C01800E */ lui $at, %hi(D_800E3080) # $at, 0x800e -/* 0B89F4 800B7DF4 AC203080 */ sw $zero, %lo(D_800E3080)($at) -.L800B7DF8: -/* 0B89F8 800B7DF8 3C04800E */ lui $a0, %hi(D_800E30D0) # $a0, 0x800e -/* 0B89FC 800B7DFC 8C8430D0 */ lw $a0, %lo(D_800E30D0)($a0) -/* 0B8A00 800B7E00 00000000 */ nop -/* 0B8A04 800B7E04 10800005 */ beqz $a0, .L800B7E1C -/* 0B8A08 800B7E08 00000000 */ nop -/* 0B8A0C 800B7E0C 0C01ECAF */ jal func_8007B2BC -/* 0B8A10 800B7E10 00000000 */ nop -/* 0B8A14 800B7E14 3C01800E */ lui $at, %hi(D_800E30D0) # $at, 0x800e -/* 0B8A18 800B7E18 AC2030D0 */ sw $zero, %lo(D_800E30D0)($at) -.L800B7E1C: -/* 0B8A1C 800B7E1C 3C04800E */ lui $a0, %hi(D_800E30D4) # $a0, 0x800e -/* 0B8A20 800B7E20 8C8430D4 */ lw $a0, %lo(D_800E30D4)($a0) -/* 0B8A24 800B7E24 00000000 */ nop -/* 0B8A28 800B7E28 10800005 */ beqz $a0, .L800B7E40 -/* 0B8A2C 800B7E2C 00000000 */ nop -/* 0B8A30 800B7E30 0C01C450 */ jal func_80071140 -/* 0B8A34 800B7E34 00000000 */ nop -/* 0B8A38 800B7E38 3C01800E */ lui $at, %hi(D_800E30D4) # $at, 0x800e -/* 0B8A3C 800B7E3C AC2030D4 */ sw $zero, %lo(D_800E30D4)($at) -.L800B7E40: -/* 0B8A40 800B7E40 3C04800E */ lui $a0, %hi(D_800E30D8) # $a0, 0x800e -/* 0B8A44 800B7E44 8C8430D8 */ lw $a0, %lo(D_800E30D8)($a0) -/* 0B8A48 800B7E48 00000000 */ nop -/* 0B8A4C 800B7E4C 10800005 */ beqz $a0, .L800B7E64 -/* 0B8A50 800B7E50 00000000 */ nop -/* 0B8A54 800B7E54 0C01C450 */ jal func_80071140 -/* 0B8A58 800B7E58 00000000 */ nop -/* 0B8A5C 800B7E5C 3C01800E */ lui $at, %hi(D_800E30D8) # $at, 0x800e -/* 0B8A60 800B7E60 AC2030D8 */ sw $zero, %lo(D_800E30D8)($at) -.L800B7E64: -/* 0B8A64 800B7E64 3C04800E */ lui $a0, %hi(D_800E3178) # $a0, 0x800e -/* 0B8A68 800B7E68 8C843178 */ lw $a0, %lo(D_800E3178)($a0) -/* 0B8A6C 800B7E6C 00000000 */ nop -/* 0B8A70 800B7E70 10800005 */ beqz $a0, .L800B7E88 -/* 0B8A74 800B7E74 00000000 */ nop -/* 0B8A78 800B7E78 0C01C450 */ jal func_80071140 -/* 0B8A7C 800B7E7C 00000000 */ nop -/* 0B8A80 800B7E80 3C01800E */ lui $at, %hi(D_800E3178) # $at, 0x800e -/* 0B8A84 800B7E84 AC203178 */ sw $zero, %lo(D_800E3178)($at) -.L800B7E88: -/* 0B8A88 800B7E88 3C01800E */ lui $at, %hi(D_800E3190) # $at, 0x800e -/* 0B8A8C 800B7E8C AC203190 */ sw $zero, %lo(D_800E3190)($at) -/* 0B8A90 800B7E90 3C01800E */ lui $at, %hi(D_800E3194) # $at, 0x800e -/* 0B8A94 800B7E94 AC203194 */ sw $zero, %lo(D_800E3194)($at) -/* 0B8A98 800B7E98 3C01800E */ lui $at, %hi(D_800E3184) # $at, 0x800e -/* 0B8A9C 800B7E9C 8FBF0014 */ lw $ra, 0x14($sp) -/* 0B8AA0 800B7EA0 AC203184 */ sw $zero, %lo(D_800E3184)($at) -/* 0B8AA4 800B7EA4 3C01800E */ lui $at, %hi(D_800E3188) # $at, 0x800e -/* 0B8AA8 800B7EA8 AC203188 */ sw $zero, %lo(D_800E3188)($at) -/* 0B8AAC 800B7EAC 03E00008 */ jr $ra -/* 0B8AB0 800B7EB0 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_800B7EB4 -/* 0B8AB4 800B7EB4 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0B8AB8 800B7EB8 AFBF0024 */ sw $ra, 0x24($sp) -/* 0B8ABC 800B7EBC AFB20020 */ sw $s2, 0x20($sp) -/* 0B8AC0 800B7EC0 AFB1001C */ sw $s1, 0x1c($sp) -/* 0B8AC4 800B7EC4 0C02DF48 */ jal func_800B7D20 -/* 0B8AC8 800B7EC8 AFB00018 */ sw $s0, 0x18($sp) -/* 0B8ACC 800B7ECC 3C128013 */ lui $s2, %hi(D_80129FC8) # $s2, 0x8013 -/* 0B8AD0 800B7ED0 26529FC8 */ addiu $s2, %lo(D_80129FC8) # addiu $s2, $s2, -0x6038 -/* 0B8AD4 800B7ED4 8E440020 */ lw $a0, 0x20($s2) -/* 0B8AD8 800B7ED8 3C1100FF */ lui $s1, (0x00FFFFFF >> 16) # lui $s1, 0xff -/* 0B8ADC 800B7EDC 3631FFFF */ ori $s1, (0x00FFFFFF & 0xFFFF) # ori $s1, $s1, 0xffff -/* 0B8AE0 800B7EE0 00047080 */ sll $t6, $a0, 2 -/* 0B8AE4 800B7EE4 01C02025 */ move $a0, $t6 -/* 0B8AE8 800B7EE8 0C01C327 */ jal func_80070C9C -/* 0B8AEC 800B7EEC 02202825 */ move $a1, $s1 -/* 0B8AF0 800B7EF0 3C01800E */ lui $at, %hi(D_800E3040) # $at, 0x800e -/* 0B8AF4 800B7EF4 AC223040 */ sw $v0, %lo(D_800E3040)($at) -/* 0B8AF8 800B7EF8 8E430004 */ lw $v1, 4($s2) -/* 0B8AFC 800B7EFC 02202825 */ move $a1, $s1 -/* 0B8B00 800B7F00 00037880 */ sll $t7, $v1, 2 -/* 0B8B04 800B7F04 01E30019 */ multu $t7, $v1 -/* 0B8B08 800B7F08 00002012 */ mflo $a0 -/* 0B8B0C 800B7F0C 0C01C327 */ jal func_80070C9C -/* 0B8B10 800B7F10 00000000 */ nop -/* 0B8B14 800B7F14 3C01800E */ lui $at, %hi(D_800E3044) # $at, 0x800e -/* 0B8B18 800B7F18 AC223044 */ sw $v0, %lo(D_800E3044)($at) -/* 0B8B1C 800B7F1C 8E430000 */ lw $v1, ($s2) -/* 0B8B20 800B7F20 02202825 */ move $a1, $s1 -/* 0B8B24 800B7F24 24630001 */ addiu $v1, $v1, 1 -/* 0B8B28 800B7F28 0003C080 */ sll $t8, $v1, 2 -/* 0B8B2C 800B7F2C 03030019 */ multu $t8, $v1 -/* 0B8B30 800B7F30 00002012 */ mflo $a0 -/* 0B8B34 800B7F34 0C01C327 */ jal func_80070C9C -/* 0B8B38 800B7F38 00000000 */ nop -/* 0B8B3C 800B7F3C 3C01800E */ lui $at, %hi(D_800E3048) # $at, 0x800e -/* 0B8B40 800B7F40 AC223048 */ sw $v0, %lo(D_800E3048)($at) -/* 0B8B44 800B7F44 8E430000 */ lw $v1, ($s2) -/* 0B8B48 800B7F48 241F0009 */ li $ra, 9 -/* 0B8B4C 800B7F4C 24630001 */ addiu $v1, $v1, 1 -/* 0B8B50 800B7F50 0003C880 */ sll $t9, $v1, 2 -/* 0B8B54 800B7F54 03230019 */ multu $t9, $v1 -/* 0B8B58 800B7F58 02202825 */ move $a1, $s1 -/* 0B8B5C 800B7F5C 00008012 */ mflo $s0 -/* 0B8B60 800B7F60 00000000 */ nop -/* 0B8B64 800B7F64 00000000 */ nop -/* 0B8B68 800B7F68 021F0019 */ multu $s0, $ra -/* 0B8B6C 800B7F6C 00002012 */ mflo $a0 -/* 0B8B70 800B7F70 0C01C327 */ jal func_80070C9C -/* 0B8B74 800B7F74 00000000 */ nop -/* 0B8B78 800B7F78 3C04800E */ lui $a0, %hi(D_800E304C) # $a0, 0x800e -/* 0B8B7C 800B7F7C 2484304C */ addiu $a0, %lo(D_800E304C) # addiu $a0, $a0, 0x304c -/* 0B8B80 800B7F80 3C03800E */ lui $v1, %hi(D_800E3050) # $v1, 0x800e -/* 0B8B84 800B7F84 00104080 */ sll $t0, $s0, 2 -/* 0B8B88 800B7F88 AC820000 */ sw $v0, ($a0) -/* 0B8B8C 800B7F8C 241F0009 */ li $ra, 9 -/* 0B8B90 800B7F90 01104023 */ subu $t0, $t0, $s0 -/* 0B8B94 800B7F94 24633050 */ addiu $v1, %lo(D_800E3050) # addiu $v1, $v1, 0x3050 -/* 0B8B98 800B7F98 24050001 */ li $a1, 1 -/* 0B8B9C 800B7F9C 02003025 */ move $a2, $s0 -/* 0B8BA0 800B7FA0 00105080 */ sll $t2, $s0, 2 -/* 0B8BA4 800B7FA4 00103840 */ sll $a3, $s0, 1 -/* 0B8BA8 800B7FA8 00105880 */ sll $t3, $s0, 2 -/* 0B8BAC 800B7FAC 00106080 */ sll $t4, $s0, 2 -/* 0B8BB0 800B7FB0 00104880 */ sll $t1, $s0, 2 -/* 0B8BB4 800B7FB4 00106880 */ sll $t5, $s0, 2 -.L800B7FB8: -/* 0B8BB8 800B7FB8 8C8E0000 */ lw $t6, ($a0) -/* 0B8BBC 800B7FBC 24A50004 */ addiu $a1, $a1, 4 -/* 0B8BC0 800B7FC0 01C67821 */ addu $t7, $t6, $a2 -/* 0B8BC4 800B7FC4 AC6F0000 */ sw $t7, ($v1) -/* 0B8BC8 800B7FC8 8C980000 */ lw $t8, ($a0) -/* 0B8BCC 800B7FCC 00CA3021 */ addu $a2, $a2, $t2 -/* 0B8BD0 800B7FD0 0307C821 */ addu $t9, $t8, $a3 -/* 0B8BD4 800B7FD4 AC790004 */ sw $t9, 4($v1) -/* 0B8BD8 800B7FD8 8C8E0000 */ lw $t6, ($a0) -/* 0B8BDC 800B7FDC 00EB3821 */ addu $a3, $a3, $t3 -/* 0B8BE0 800B7FE0 01C87821 */ addu $t7, $t6, $t0 -/* 0B8BE4 800B7FE4 AC6F0008 */ sw $t7, 8($v1) -/* 0B8BE8 800B7FE8 8C980000 */ lw $t8, ($a0) -/* 0B8BEC 800B7FEC 010C4021 */ addu $t0, $t0, $t4 -/* 0B8BF0 800B7FF0 0309C821 */ addu $t9, $t8, $t1 -/* 0B8BF4 800B7FF4 AC79000C */ sw $t9, 0xc($v1) -/* 0B8BF8 800B7FF8 012D4821 */ addu $t1, $t1, $t5 -/* 0B8BFC 800B7FFC 14BFFFEE */ bne $a1, $ra, .L800B7FB8 -/* 0B8C00 800B8000 24630010 */ addiu $v1, $v1, 0x10 -/* 0B8C04 800B8004 8E430000 */ lw $v1, ($s2) -/* 0B8C08 800B8008 3C0F8013 */ lui $t7, %hi(D_8012A078) # $t7, 0x8013 -/* 0B8C0C 800B800C 24630001 */ addiu $v1, $v1, 1 -/* 0B8C10 800B8010 00037140 */ sll $t6, $v1, 5 -/* 0B8C14 800B8014 01C37023 */ subu $t6, $t6, $v1 -/* 0B8C18 800B8018 000E7080 */ sll $t6, $t6, 2 -/* 0B8C1C 800B801C 01C37021 */ addu $t6, $t6, $v1 -/* 0B8C20 800B8020 000E7040 */ sll $t6, $t6, 1 -/* 0B8C24 800B8024 01C30019 */ multu $t6, $v1 -/* 0B8C28 800B8028 8DEFA078 */ lw $t7, %lo(D_8012A078)($t7) -/* 0B8C2C 800B802C 24010002 */ li $at, 2 -/* 0B8C30 800B8030 00008012 */ mflo $s0 -/* 0B8C34 800B8034 00102040 */ sll $a0, $s0, 1 -/* 0B8C38 800B8038 11E10009 */ beq $t7, $at, .L800B8060 -/* 0B8C3C 800B803C 00000000 */ nop -/* 0B8C40 800B8040 0C01C327 */ jal func_80070C9C -/* 0B8C44 800B8044 02202825 */ move $a1, $s1 -/* 0B8C48 800B8048 3C03800E */ lui $v1, %hi(D_800E3070) # $v1, 0x800e -/* 0B8C4C 800B804C 24633070 */ addiu $v1, %lo(D_800E3070) # addiu $v1, $v1, 0x3070 -/* 0B8C50 800B8050 0050C821 */ addu $t9, $v0, $s0 -/* 0B8C54 800B8054 AC620000 */ sw $v0, ($v1) -/* 0B8C58 800B8058 1000000D */ b .L800B8090 -/* 0B8C5C 800B805C AC790004 */ sw $t9, 4($v1) -.L800B8060: -/* 0B8C60 800B8060 00102080 */ sll $a0, $s0, 2 -/* 0B8C64 800B8064 0C01C327 */ jal func_80070C9C -/* 0B8C68 800B8068 02202825 */ move $a1, $s1 -/* 0B8C6C 800B806C 3C03800E */ lui $v1, %hi(D_800E3070) # $v1, 0x800e -/* 0B8C70 800B8070 24633070 */ addiu $v1, %lo(D_800E3070) # addiu $v1, $v1, 0x3070 -/* 0B8C74 800B8074 00507821 */ addu $t7, $v0, $s0 -/* 0B8C78 800B8078 AC6F0004 */ sw $t7, 4($v1) -/* 0B8C7C 800B807C 01F0C821 */ addu $t9, $t7, $s0 -/* 0B8C80 800B8080 03307821 */ addu $t7, $t9, $s0 -/* 0B8C84 800B8084 AC620000 */ sw $v0, ($v1) -/* 0B8C88 800B8088 AC790008 */ sw $t9, 8($v1) -/* 0B8C8C 800B808C AC6F000C */ sw $t7, 0xc($v1) -.L800B8090: -/* 0B8C90 800B8090 8E420000 */ lw $v0, ($s2) -/* 0B8C94 800B8094 3C198013 */ lui $t9, %hi(D_8012A078) # $t9, 0x8013 -/* 0B8C98 800B8098 0002C140 */ sll $t8, $v0, 5 -/* 0B8C9C 800B809C 03020019 */ multu $t8, $v0 -/* 0B8CA0 800B80A0 8F39A078 */ lw $t9, %lo(D_8012A078)($t9) -/* 0B8CA4 800B80A4 24010002 */ li $at, 2 -/* 0B8CA8 800B80A8 00008012 */ mflo $s0 -/* 0B8CAC 800B80AC 00102040 */ sll $a0, $s0, 1 -/* 0B8CB0 800B80B0 13210009 */ beq $t9, $at, .L800B80D8 -/* 0B8CB4 800B80B4 00000000 */ nop -/* 0B8CB8 800B80B8 0C01C327 */ jal func_80070C9C -/* 0B8CBC 800B80BC 02202825 */ move $a1, $s1 -/* 0B8CC0 800B80C0 3C03800E */ lui $v1, %hi(D_800E3080) # $v1, 0x800e -/* 0B8CC4 800B80C4 24633080 */ addiu $v1, %lo(D_800E3080) # addiu $v1, $v1, 0x3080 -/* 0B8CC8 800B80C8 00507821 */ addu $t7, $v0, $s0 -/* 0B8CCC 800B80CC AC620000 */ sw $v0, ($v1) -/* 0B8CD0 800B80D0 1000000D */ b .L800B8108 -/* 0B8CD4 800B80D4 AC6F0004 */ sw $t7, 4($v1) -.L800B80D8: -/* 0B8CD8 800B80D8 00102080 */ sll $a0, $s0, 2 -/* 0B8CDC 800B80DC 0C01C327 */ jal func_80070C9C -/* 0B8CE0 800B80E0 02202825 */ move $a1, $s1 -/* 0B8CE4 800B80E4 3C03800E */ lui $v1, %hi(D_800E3080) # $v1, 0x800e -/* 0B8CE8 800B80E8 24633080 */ addiu $v1, %lo(D_800E3080) # addiu $v1, $v1, 0x3080 -/* 0B8CEC 800B80EC 0050C821 */ addu $t9, $v0, $s0 -/* 0B8CF0 800B80F0 AC790004 */ sw $t9, 4($v1) -/* 0B8CF4 800B80F4 03307821 */ addu $t7, $t9, $s0 -/* 0B8CF8 800B80F8 01F0C821 */ addu $t9, $t7, $s0 -/* 0B8CFC 800B80FC AC620000 */ sw $v0, ($v1) -/* 0B8D00 800B8100 AC6F0008 */ sw $t7, 8($v1) -/* 0B8D04 800B8104 AC79000C */ sw $t9, 0xc($v1) -.L800B8108: -/* 0B8D08 800B8108 8E44002C */ lw $a0, 0x2c($s2) -/* 0B8D0C 800B810C 0C01EB9D */ jal func_8007AE74 -/* 0B8D10 800B8110 00000000 */ nop -/* 0B8D14 800B8114 8FBF0024 */ lw $ra, 0x24($sp) -/* 0B8D18 800B8118 3C01800E */ lui $at, %hi(D_800E30D0) # $at, 0x800e -/* 0B8D1C 800B811C 8FB00018 */ lw $s0, 0x18($sp) -/* 0B8D20 800B8120 8FB1001C */ lw $s1, 0x1c($sp) -/* 0B8D24 800B8124 8FB20020 */ lw $s2, 0x20($sp) -/* 0B8D28 800B8128 AC2230D0 */ sw $v0, %lo(D_800E30D0)($at) -/* 0B8D2C 800B812C 03E00008 */ jr $ra -/* 0B8D30 800B8130 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_800B8134 -/* 0B8D34 800B8134 3C028013 */ lui $v0, %hi(D_8012A078) # $v0, 0x8013 -/* 0B8D38 800B8138 8C42A078 */ lw $v0, %lo(D_8012A078)($v0) -/* 0B8D3C 800B813C 24030002 */ li $v1, 2 -/* 0B8D40 800B8140 10620006 */ beq $v1, $v0, .L800B815C -/* 0B8D44 800B8144 3C058013 */ lui $a1, 0x8013 -/* 0B8D48 800B8148 908E0056 */ lbu $t6, 0x56($a0) -/* 0B8D4C 800B814C 3C058013 */ lui $a1, %hi(D_80129FC8) # $a1, 0x8013 -/* 0B8D50 800B8150 24A59FC8 */ addiu $a1, %lo(D_80129FC8) # addiu $a1, $a1, -0x6038 -/* 0B8D54 800B8154 10000004 */ b .L800B8168 -/* 0B8D58 800B8158 ACAE0000 */ sw $t6, ($a1) -.L800B815C: -/* 0B8D5C 800B815C 24A59FC8 */ addiu $a1, $a1, -0x6038 -/* 0B8D60 800B8160 240F0004 */ li $t7, 4 -/* 0B8D64 800B8164 ACAF0000 */ sw $t7, ($a1) -.L800B8168: -/* 0B8D68 800B8168 90980057 */ lbu $t8, 0x57($a0) -/* 0B8D6C 800B816C 3C013B80 */ li $at, 0x3B800000 # 0.003906 -/* 0B8D70 800B8170 ACB80004 */ sw $t8, 4($a1) -/* 0B8D74 800B8174 90990058 */ lbu $t9, 0x58($a0) -/* 0B8D78 800B8178 44810000 */ mtc1 $at, $f0 -/* 0B8D7C 800B817C ACB90008 */ sw $t9, 8($a1) -/* 0B8D80 800B8180 8488005A */ lh $t0, 0x5a($a0) -/* 0B8D84 800B8184 2401FFFE */ li $at, -2 -/* 0B8D88 800B8188 44882000 */ mtc1 $t0, $f4 -/* 0B8D8C 800B818C 24080003 */ li $t0, 3 -/* 0B8D90 800B8190 468021A0 */ cvt.s.w $f6, $f4 -/* 0B8D94 800B8194 46003202 */ mul.s $f8, $f6, $f0 -/* 0B8D98 800B8198 E4A8000C */ swc1 $f8, 0xc($a1) -/* 0B8D9C 800B819C 90890059 */ lbu $t1, 0x59($a0) -/* 0B8DA0 800B81A0 00000000 */ nop -/* 0B8DA4 800B81A4 00095200 */ sll $t2, $t1, 8 -/* 0B8DA8 800B81A8 ACAA0010 */ sw $t2, 0x10($a1) -/* 0B8DAC 800B81AC 908B005C */ lbu $t3, 0x5c($a0) -/* 0B8DB0 800B81B0 00000000 */ nop -/* 0B8DB4 800B81B4 ACAB0014 */ sw $t3, 0x14($a1) -/* 0B8DB8 800B81B8 848C005E */ lh $t4, 0x5e($a0) -/* 0B8DBC 800B81BC 00000000 */ nop -/* 0B8DC0 800B81C0 448C5000 */ mtc1 $t4, $f10 -/* 0B8DC4 800B81C4 00000000 */ nop -/* 0B8DC8 800B81C8 46805420 */ cvt.s.w $f16, $f10 -/* 0B8DCC 800B81CC 46008482 */ mul.s $f18, $f16, $f0 -/* 0B8DD0 800B81D0 E4B20018 */ swc1 $f18, 0x18($a1) -/* 0B8DD4 800B81D4 908D005D */ lbu $t5, 0x5d($a0) -/* 0B8DD8 800B81D8 00000000 */ nop -/* 0B8DDC 800B81DC 000D7200 */ sll $t6, $t5, 8 -/* 0B8DE0 800B81E0 ACAE001C */ sw $t6, 0x1c($a1) -/* 0B8DE4 800B81E4 848F0060 */ lh $t7, 0x60($a0) -/* 0B8DE8 800B81E8 00000000 */ nop -/* 0B8DEC 800B81EC 01E1C024 */ and $t8, $t7, $at -/* 0B8DF0 800B81F0 10620004 */ beq $v1, $v0, .L800B8204 -/* 0B8DF4 800B81F4 ACB80020 */ sw $t8, 0x20($a1) -/* 0B8DF8 800B81F8 8499006E */ lh $t9, 0x6e($a0) -/* 0B8DFC 800B81FC 10000002 */ b .L800B8208 -/* 0B8E00 800B8200 ACB90024 */ sw $t9, 0x24($a1) -.L800B8204: -/* 0B8E04 800B8204 ACA80024 */ sw $t0, 0x24($a1) -.L800B8208: -/* 0B8E08 800B8208 90890071 */ lbu $t1, 0x71($a0) -/* 0B8E0C 800B820C 00000000 */ nop -/* 0B8E10 800B8210 ACA90028 */ sw $t1, 0x28($a1) -/* 0B8E14 800B8214 848A0068 */ lh $t2, 0x68($a0) -/* 0B8E18 800B8218 00000000 */ nop -/* 0B8E1C 800B821C 314BFFFF */ andi $t3, $t2, 0xffff -/* 0B8E20 800B8220 ACAB002C */ sw $t3, 0x2c($a1) -/* 0B8E24 800B8224 908C006A */ lbu $t4, 0x6a($a0) -/* 0B8E28 800B8228 00000000 */ nop -/* 0B8E2C 800B822C ACAC0030 */ sw $t4, 0x30($a1) -/* 0B8E30 800B8230 908D006B */ lbu $t5, 0x6b($a0) -/* 0B8E34 800B8234 00000000 */ nop -/* 0B8E38 800B8238 ACAD0034 */ sw $t5, 0x34($a1) -/* 0B8E3C 800B823C 808E006C */ lb $t6, 0x6c($a0) -/* 0B8E40 800B8240 00000000 */ nop -/* 0B8E44 800B8244 ACAE0038 */ sw $t6, 0x38($a1) -/* 0B8E48 800B8248 808F006D */ lb $t7, 0x6d($a0) -/* 0B8E4C 800B824C 00000000 */ nop -/* 0B8E50 800B8250 ACAF003C */ sw $t7, 0x3c($a1) -/* 0B8E54 800B8254 84980062 */ lh $t8, 0x62($a0) -/* 0B8E58 800B8258 00000000 */ nop -/* 0B8E5C 800B825C 44982000 */ mtc1 $t8, $f4 -/* 0B8E60 800B8260 00000000 */ nop -/* 0B8E64 800B8264 468021A0 */ cvt.s.w $f6, $f4 -/* 0B8E68 800B8268 46003202 */ mul.s $f8, $f6, $f0 -/* 0B8E6C 800B826C E4A80040 */ swc1 $f8, 0x40($a1) -/* 0B8E70 800B8270 84990064 */ lh $t9, 0x64($a0) -/* 0B8E74 800B8274 00000000 */ nop -/* 0B8E78 800B8278 44995000 */ mtc1 $t9, $f10 -/* 0B8E7C 800B827C 00000000 */ nop -/* 0B8E80 800B8280 46805420 */ cvt.s.w $f16, $f10 -/* 0B8E84 800B8284 46008482 */ mul.s $f18, $f16, $f0 -/* 0B8E88 800B8288 E4B20044 */ swc1 $f18, 0x44($a1) -/* 0B8E8C 800B828C 84880066 */ lh $t0, 0x66($a0) -/* 0B8E90 800B8290 00000000 */ nop -/* 0B8E94 800B8294 44882000 */ mtc1 $t0, $f4 -/* 0B8E98 800B8298 00000000 */ nop -/* 0B8E9C 800B829C 468021A0 */ cvt.s.w $f6, $f4 -/* 0B8EA0 800B82A0 46003202 */ mul.s $f8, $f6, $f0 -/* 0B8EA4 800B82A4 E4A80048 */ swc1 $f8, 0x48($a1) -/* 0B8EA8 800B82A8 90890070 */ lbu $t1, 0x70($a0) -/* 0B8EAC 800B82AC 03E00008 */ jr $ra -/* 0B8EB0 800B82B0 ACA9004C */ sw $t1, 0x4c($a1) - -glabel func_800B82B4 -/* 0B8EB4 800B82B4 27BDFF90 */ addiu $sp, $sp, -0x70 -/* 0B8EB8 800B82B8 AFBF0044 */ sw $ra, 0x44($sp) -/* 0B8EBC 800B82BC AFB3002C */ sw $s3, 0x2c($sp) -/* 0B8EC0 800B82C0 AFB00020 */ sw $s0, 0x20($sp) -/* 0B8EC4 800B82C4 AFA40070 */ sw $a0, 0x70($sp) -/* 0B8EC8 800B82C8 3C018013 */ lui $at, %hi(D_8012A078) # $at, 0x8013 -/* 0B8ECC 800B82CC 00A08025 */ move $s0, $a1 -/* 0B8ED0 800B82D0 00C09825 */ move $s3, $a2 -/* 0B8ED4 800B82D4 AFBE0040 */ sw $fp, 0x40($sp) -/* 0B8ED8 800B82D8 AFB7003C */ sw $s7, 0x3c($sp) -/* 0B8EDC 800B82DC AFB60038 */ sw $s6, 0x38($sp) -/* 0B8EE0 800B82E0 AFB50034 */ sw $s5, 0x34($sp) -/* 0B8EE4 800B82E4 AFB40030 */ sw $s4, 0x30($sp) -/* 0B8EE8 800B82E8 AFB20028 */ sw $s2, 0x28($sp) -/* 0B8EEC 800B82EC AFB10024 */ sw $s1, 0x24($sp) -/* 0B8EF0 800B82F0 E7B50018 */ swc1 $f21, 0x18($sp) -/* 0B8EF4 800B82F4 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 0B8EF8 800B82F8 AC26A078 */ sw $a2, %lo(D_8012A078)($at) -/* 0B8EFC 800B82FC 0C02E04D */ jal func_800B8134 -/* 0B8F00 800B8300 00A02025 */ move $a0, $a1 -/* 0B8F04 800B8304 0C02DFAD */ jal func_800B7EB4 -/* 0B8F08 800B8308 00000000 */ nop -/* 0B8F0C 800B830C 8FA40070 */ lw $a0, 0x70($sp) -/* 0B8F10 800B8310 0C02EF77 */ jal func_800BBDDC -/* 0B8F14 800B8314 02002825 */ move $a1, $s0 -/* 0B8F18 800B8318 3C0E8013 */ lui $t6, %hi(D_8012A0A8) # $t6, 0x8013 -/* 0B8F1C 800B831C 8DCEA0A8 */ lw $t6, %lo(D_8012A0A8)($t6) -/* 0B8F20 800B8320 3C058013 */ lui $a1, %hi(D_8012A0A0) # $a1, 0x8013 -/* 0B8F24 800B8324 448E2000 */ mtc1 $t6, $f4 -/* 0B8F28 800B8328 24A5A0A0 */ addiu $a1, %lo(D_8012A0A0) # addiu $a1, $a1, -0x5f60 -/* 0B8F2C 800B832C 468021A0 */ cvt.s.w $f6, $f4 -/* 0B8F30 800B8330 3C0F8013 */ lui $t7, %hi(D_8012A0AC) # $t7, 0x8013 -/* 0B8F34 800B8334 3C148013 */ lui $s4, %hi(D_80129FC8) # $s4, 0x8013 -/* 0B8F38 800B8338 E4A60000 */ swc1 $f6, ($a1) -/* 0B8F3C 800B833C 8DEFA0AC */ lw $t7, %lo(D_8012A0AC)($t7) -/* 0B8F40 800B8340 26949FC8 */ addiu $s4, %lo(D_80129FC8) # addiu $s4, $s4, -0x6038 -/* 0B8F44 800B8344 8E820000 */ lw $v0, ($s4) -/* 0B8F48 800B8348 448F4000 */ mtc1 $t7, $f8 -/* 0B8F4C 800B834C 44828000 */ mtc1 $v0, $f16 -/* 0B8F50 800B8350 468042A0 */ cvt.s.w $f10, $f8 -/* 0B8F54 800B8354 3C068013 */ lui $a2, %hi(D_8012A0A4) # $a2, 0x8013 -/* 0B8F58 800B8358 24C6A0A4 */ addiu $a2, %lo(D_8012A0A4) # addiu $a2, $a2, -0x5f5c -/* 0B8F5C 800B835C 46808020 */ cvt.s.w $f0, $f16 -/* 0B8F60 800B8360 E4CA0000 */ swc1 $f10, ($a2) -/* 0B8F64 800B8364 C4B20000 */ lwc1 $f18, ($a1) -/* 0B8F68 800B8368 C4C60000 */ lwc1 $f6, ($a2) -/* 0B8F6C 800B836C 46009103 */ div.s $f4, $f18, $f0 -/* 0B8F70 800B8370 3C118013 */ lui $s1, %hi(D_8012A0B8) # $s1, 0x8013 -/* 0B8F74 800B8374 3C128013 */ lui $s2, %hi(D_8012A0BC) # $s2, 0x8013 -/* 0B8F78 800B8378 2652A0BC */ addiu $s2, %lo(D_8012A0BC) # addiu $s2, $s2, -0x5f44 -/* 0B8F7C 800B837C 2631A0B8 */ addiu $s1, %lo(D_8012A0B8) # addiu $s1, $s1, -0x5f48 -/* 0B8F80 800B8380 3C018013 */ lui $at, %hi(D_8012A084) # $at, 0x8013 -/* 0B8F84 800B8384 3C038013 */ lui $v1, %hi(D_8012A080) # $v1, 0x8013 -/* 0B8F88 800B8388 0000B825 */ move $s7, $zero -/* 0B8F8C 800B838C 46003203 */ div.s $f8, $f6, $f0 -/* 0B8F90 800B8390 E6240000 */ swc1 $f4, ($s1) -/* 0B8F94 800B8394 E6480000 */ swc1 $f8, ($s2) -/* 0B8F98 800B8398 AC20A084 */ sw $zero, %lo(D_8012A084)($at) -/* 0B8F9C 800B839C 3C018013 */ lui $at, %hi(D_8012A088) # $at, 0x8013 -/* 0B8FA0 800B83A0 8C63A080 */ lw $v1, %lo(D_8012A080)($v1) -/* 0B8FA4 800B83A4 AC20A088 */ sw $zero, %lo(D_8012A088)($at) -/* 0B8FA8 800B83A8 8E990030 */ lw $t9, 0x30($s4) -/* 0B8FAC 800B83AC 90780000 */ lbu $t8, ($v1) -/* 0B8FB0 800B83B0 00000000 */ nop -/* 0B8FB4 800B83B4 03190019 */ multu $t8, $t9 -/* 0B8FB8 800B83B8 00005012 */ mflo $t2 -/* 0B8FBC 800B83BC 000A5940 */ sll $t3, $t2, 5 -/* 0B8FC0 800B83C0 00000000 */ nop -/* 0B8FC4 800B83C4 0162001A */ div $zero, $t3, $v0 -/* 0B8FC8 800B83C8 14400002 */ bnez $v0, .L800B83D4 -/* 0B8FCC 800B83CC 00000000 */ nop -/* 0B8FD0 800B83D0 0007000D */ break 7 -.L800B83D4: -/* 0B8FD4 800B83D4 2401FFFF */ li $at, -1 -/* 0B8FD8 800B83D8 14410004 */ bne $v0, $at, .L800B83EC -/* 0B8FDC 800B83DC 3C018000 */ lui $at, 0x8000 -/* 0B8FE0 800B83E0 15610002 */ bne $t3, $at, .L800B83EC -/* 0B8FE4 800B83E4 00000000 */ nop -/* 0B8FE8 800B83E8 0006000D */ break 6 -.L800B83EC: -/* 0B8FEC 800B83EC 3C018013 */ lui $at, %hi(D_8012A08C) # $at, 0x8013 -/* 0B8FF0 800B83F0 00006012 */ mflo $t4 -/* 0B8FF4 800B83F4 AC2CA08C */ sw $t4, %lo(D_8012A08C)($at) -/* 0B8FF8 800B83F8 8E8E0034 */ lw $t6, 0x34($s4) -/* 0B8FFC 800B83FC 906D0001 */ lbu $t5, 1($v1) -/* 0B9000 800B8400 00000000 */ nop -/* 0B9004 800B8404 01AE0019 */ multu $t5, $t6 -/* 0B9008 800B8408 00007812 */ mflo $t7 -/* 0B900C 800B840C 000FC140 */ sll $t8, $t7, 5 -/* 0B9010 800B8410 00000000 */ nop -/* 0B9014 800B8414 0302001A */ div $zero, $t8, $v0 -/* 0B9018 800B8418 14400002 */ bnez $v0, .L800B8424 -/* 0B901C 800B841C 00000000 */ nop -/* 0B9020 800B8420 0007000D */ break 7 -.L800B8424: -/* 0B9024 800B8424 2401FFFF */ li $at, -1 -/* 0B9028 800B8428 14410004 */ bne $v0, $at, .L800B843C -/* 0B902C 800B842C 3C018000 */ lui $at, 0x8000 -/* 0B9030 800B8430 17010002 */ bne $t8, $at, .L800B843C -/* 0B9034 800B8434 00000000 */ nop -/* 0B9038 800B8438 0006000D */ break 6 -.L800B843C: -/* 0B903C 800B843C 3C018013 */ lui $at, %hi(D_8012A090) # $at, 0x8013 -/* 0B9040 800B8440 0000C812 */ mflo $t9 -/* 0B9044 800B8444 AC39A090 */ sw $t9, %lo(D_8012A090)($at) -/* 0B9048 800B8448 906A0000 */ lbu $t2, ($v1) -/* 0B904C 800B844C 3C018013 */ lui $at, %hi(D_8012A094) # $at, 0x8013 -/* 0B9050 800B8450 000A5940 */ sll $t3, $t2, 5 -/* 0B9054 800B8454 256CFFFF */ addiu $t4, $t3, -1 -/* 0B9058 800B8458 AC2CA094 */ sw $t4, %lo(D_8012A094)($at) -/* 0B905C 800B845C 906D0001 */ lbu $t5, 1($v1) -/* 0B9060 800B8460 3C018013 */ lui $at, %hi(D_8012A098) # $at, 0x8013 -/* 0B9064 800B8464 000D7140 */ sll $t6, $t5, 5 -/* 0B9068 800B8468 25CFFFFF */ addiu $t7, $t6, -1 -/* 0B906C 800B846C AC2FA098 */ sw $t7, %lo(D_8012A098)($at) -/* 0B9070 800B8470 3C018013 */ lui $at, %hi(D_8012A09C) # $at, 0x8013 -/* 0B9074 800B8474 AC20A09C */ sw $zero, %lo(D_8012A09C)($at) -/* 0B9078 800B8478 8E980008 */ lw $t8, 8($s4) -/* 0B907C 800B847C 8E840020 */ lw $a0, 0x20($s4) -/* 0B9080 800B8480 0018CC00 */ sll $t9, $t8, 0x10 -/* 0B9084 800B8484 0324001A */ div $zero, $t9, $a0 -/* 0B9088 800B8488 8E8B0014 */ lw $t3, 0x14($s4) -/* 0B908C 800B848C 8E960010 */ lw $s6, 0x10($s4) -/* 0B9090 800B8490 000B6400 */ sll $t4, $t3, 0x10 -/* 0B9094 800B8494 14800002 */ bnez $a0, .L800B84A0 -/* 0B9098 800B8498 00000000 */ nop -/* 0B909C 800B849C 0007000D */ break 7 -.L800B84A0: -/* 0B90A0 800B84A0 2401FFFF */ li $at, -1 -/* 0B90A4 800B84A4 14810004 */ bne $a0, $at, .L800B84B8 -/* 0B90A8 800B84A8 3C018000 */ lui $at, 0x8000 -/* 0B90AC 800B84AC 17210002 */ bne $t9, $at, .L800B84B8 -/* 0B90B0 800B84B0 00000000 */ nop -/* 0B90B4 800B84B4 0006000D */ break 6 -.L800B84B8: -/* 0B90B8 800B84B8 8E9E001C */ lw $fp, 0x1c($s4) -/* 0B90BC 800B84BC 00005012 */ mflo $t2 -/* 0B90C0 800B84C0 AFAA0054 */ sw $t2, 0x54($sp) -/* 0B90C4 800B84C4 00000000 */ nop -/* 0B90C8 800B84C8 0184001A */ div $zero, $t4, $a0 -/* 0B90CC 800B84CC 14800002 */ bnez $a0, .L800B84D8 -/* 0B90D0 800B84D0 00000000 */ nop -/* 0B90D4 800B84D4 0007000D */ break 7 -.L800B84D8: -/* 0B90D8 800B84D8 2401FFFF */ li $at, -1 -/* 0B90DC 800B84DC 14810004 */ bne $a0, $at, .L800B84F0 -/* 0B90E0 800B84E0 3C018000 */ lui $at, 0x8000 -/* 0B90E4 800B84E4 15810002 */ bne $t4, $at, .L800B84F0 -/* 0B90E8 800B84E8 00000000 */ nop -/* 0B90EC 800B84EC 0006000D */ break 6 -.L800B84F0: -/* 0B90F0 800B84F0 3C01800F */ lui $at, %hi(D_800E92A0) # $at, 0x800f -/* 0B90F4 800B84F4 C42A92A0 */ lwc1 $f10, %lo(D_800E92A0)($at) -/* 0B90F8 800B84F8 3C018013 */ lui $at, %hi(D_8012A01C) # $at, 0x8013 -/* 0B90FC 800B84FC E42AA01C */ swc1 $f10, %lo(D_8012A01C)($at) -/* 0B9100 800B8500 3C01800F */ lui $at, %hi(D_800E92A4) # $at, 0x800f -/* 0B9104 800B8504 C43092A4 */ lwc1 $f16, %lo(D_800E92A4)($at) -/* 0B9108 800B8508 3C018013 */ lui $at, %hi(D_8012A020) # $at, 0x8013 -/* 0B910C 800B850C E430A020 */ swc1 $f16, %lo(D_8012A020)($at) -/* 0B9110 800B8510 00006812 */ mflo $t5 -/* 0B9114 800B8514 AFAD004C */ sw $t5, 0x4c($sp) -/* 0B9118 800B8518 1880003F */ blez $a0, .L800B8618 -/* 0B911C 800B851C 3C15800E */ lui $s5, %hi(D_800E3040) # $s5, 0x800e -/* 0B9120 800B8520 26B53040 */ addiu $s5, %lo(D_800E3040) # addiu $s5, $s5, 0x3040 -/* 0B9124 800B8524 00008025 */ move $s0, $zero -.L800B8528: -/* 0B9128 800B8528 00162400 */ sll $a0, $s6, 0x10 -/* 0B912C 800B852C 00047403 */ sra $t6, $a0, 0x10 -/* 0B9130 800B8530 0C01C1F1 */ jal func_800707C4 -/* 0B9134 800B8534 01C02025 */ move $a0, $t6 -/* 0B9138 800B8538 001E2400 */ sll $a0, $fp, 0x10 -/* 0B913C 800B853C 00047C03 */ sra $t7, $a0, 0x10 -/* 0B9140 800B8540 01E02025 */ move $a0, $t7 -/* 0B9144 800B8544 0C01C1F1 */ jal func_800707C4 -/* 0B9148 800B8548 46000506 */ mov.s $f20, $f0 -/* 0B914C 800B854C C6920018 */ lwc1 $f18, 0x18($s4) -/* 0B9150 800B8550 C686000C */ lwc1 $f6, 0xc($s4) -/* 0B9154 800B8554 46120102 */ mul.s $f4, $f0, $f18 -/* 0B9158 800B8558 8EB80000 */ lw $t8, ($s5) -/* 0B915C 800B855C 3C038013 */ lui $v1, %hi(D_8012A01C) # $v1, 0x8013 -/* 0B9160 800B8560 0310C821 */ addu $t9, $t8, $s0 -/* 0B9164 800B8564 4606A202 */ mul.s $f8, $f20, $f6 -/* 0B9168 800B8568 26F70001 */ addiu $s7, $s7, 1 -/* 0B916C 800B856C 2463A01C */ addiu $v1, %lo(D_8012A01C) # addiu $v1, $v1, -0x5fe4 -/* 0B9170 800B8570 46082280 */ add.s $f10, $f4, $f8 -/* 0B9174 800B8574 E72A0000 */ swc1 $f10, ($t9) -/* 0B9178 800B8578 8E8A0028 */ lw $t2, 0x28($s4) -/* 0B917C 800B857C 00000000 */ nop -/* 0B9180 800B8580 11400008 */ beqz $t2, .L800B85A4 -/* 0B9184 800B8584 00000000 */ nop -/* 0B9188 800B8588 8EAB0000 */ lw $t3, ($s5) -/* 0B918C 800B858C 00000000 */ nop -/* 0B9190 800B8590 01701021 */ addu $v0, $t3, $s0 -/* 0B9194 800B8594 C4400000 */ lwc1 $f0, ($v0) -/* 0B9198 800B8598 00000000 */ nop -/* 0B919C 800B859C 46000400 */ add.s $f16, $f0, $f0 -/* 0B91A0 800B85A0 E4500000 */ swc1 $f16, ($v0) -.L800B85A4: -/* 0B91A4 800B85A4 8EAC0000 */ lw $t4, ($s5) -/* 0B91A8 800B85A8 C4720000 */ lwc1 $f18, ($v1) -/* 0B91AC 800B85AC 01901021 */ addu $v0, $t4, $s0 -/* 0B91B0 800B85B0 C4400000 */ lwc1 $f0, ($v0) -/* 0B91B4 800B85B4 26100004 */ addiu $s0, $s0, 4 -/* 0B91B8 800B85B8 4612003C */ c.lt.s $f0, $f18 -/* 0B91BC 800B85BC 00000000 */ nop -/* 0B91C0 800B85C0 45000004 */ bc1f .L800B85D4 -/* 0B91C4 800B85C4 00000000 */ nop -/* 0B91C8 800B85C8 E4600000 */ swc1 $f0, ($v1) -/* 0B91CC 800B85CC C4400000 */ lwc1 $f0, ($v0) -/* 0B91D0 800B85D0 00000000 */ nop -.L800B85D4: -/* 0B91D4 800B85D4 3C028013 */ lui $v0, %hi(D_8012A020) # $v0, 0x8013 -/* 0B91D8 800B85D8 2442A020 */ addiu $v0, %lo(D_8012A020) # addiu $v0, $v0, -0x5fe0 -/* 0B91DC 800B85DC C4460000 */ lwc1 $f6, ($v0) -/* 0B91E0 800B85E0 00000000 */ nop -/* 0B91E4 800B85E4 4600303C */ c.lt.s $f6, $f0 -/* 0B91E8 800B85E8 00000000 */ nop -/* 0B91EC 800B85EC 45000002 */ bc1f .L800B85F8 -/* 0B91F0 800B85F0 00000000 */ nop -/* 0B91F4 800B85F4 E4400000 */ swc1 $f0, ($v0) -.L800B85F8: -/* 0B91F8 800B85F8 8E8F0020 */ lw $t7, 0x20($s4) -/* 0B91FC 800B85FC 8FAD0054 */ lw $t5, 0x54($sp) -/* 0B9200 800B8600 8FAE004C */ lw $t6, 0x4c($sp) -/* 0B9204 800B8604 02EF082A */ slt $at, $s7, $t7 -/* 0B9208 800B8608 02CDB021 */ addu $s6, $s6, $t5 -/* 0B920C 800B860C 1420FFC6 */ bnez $at, .L800B8528 -/* 0B9210 800B8610 03CEF021 */ addu $fp, $fp, $t6 -/* 0B9214 800B8614 0000B825 */ move $s7, $zero -.L800B8618: -/* 0B9218 800B8618 0C01BE46 */ jal func_8006F918 -/* 0B921C 800B861C 00000000 */ nop -/* 0B9220 800B8620 3C045741 */ lui $a0, %hi(D_57410001) # $a0, 0x5741 -/* 0B9224 800B8624 0C01BE43 */ jal func_8006F90C -/* 0B9228 800B8628 34845646 */ ori $a0, (0x57415646 & 0xFFFF) # ori $a0, $a0, 0x5646 -/* 0B922C 800B862C 8E830004 */ lw $v1, 4($s4) -/* 0B9230 800B8630 0000A825 */ move $s5, $zero -/* 0B9234 800B8634 18600020 */ blez $v1, .L800B86B8 -/* 0B9238 800B8638 00000000 */ nop -/* 0B923C 800B863C 3C1E800E */ lui $fp, %hi(D_800E3044) # $fp, 0x800e -/* 0B9240 800B8640 27DE3044 */ addiu $fp, %lo(D_800E3044) # addiu $fp, $fp, 0x3044 -.L800B8644: -/* 0B9244 800B8644 18600016 */ blez $v1, .L800B86A0 -/* 0B9248 800B8648 00008025 */ move $s0, $zero -/* 0B924C 800B864C 0015B080 */ sll $s6, $s5, 2 -.L800B8650: -/* 0B9250 800B8650 8E850020 */ lw $a1, 0x20($s4) -/* 0B9254 800B8654 00002025 */ move $a0, $zero -/* 0B9258 800B8658 0C01BE53 */ jal func_8006F94C -/* 0B925C 800B865C 24A5FFFF */ addiu $a1, $a1, -1 -/* 0B9260 800B8660 8FD80000 */ lw $t8, ($fp) -/* 0B9264 800B8664 00002025 */ move $a0, $zero -/* 0B9268 800B8668 0316C821 */ addu $t9, $t8, $s6 -/* 0B926C 800B866C A7220000 */ sh $v0, ($t9) -/* 0B9270 800B8670 8E850020 */ lw $a1, 0x20($s4) -/* 0B9274 800B8674 0C01BE53 */ jal func_8006F94C -/* 0B9278 800B8678 24A5FFFF */ addiu $a1, $a1, -1 -/* 0B927C 800B867C 8FCA0000 */ lw $t2, ($fp) -/* 0B9280 800B8680 26100001 */ addiu $s0, $s0, 1 -/* 0B9284 800B8684 01565821 */ addu $t3, $t2, $s6 -/* 0B9288 800B8688 A5620002 */ sh $v0, 2($t3) -/* 0B928C 800B868C 8E830004 */ lw $v1, 4($s4) -/* 0B9290 800B8690 26D60004 */ addiu $s6, $s6, 4 -/* 0B9294 800B8694 0203082A */ slt $at, $s0, $v1 -/* 0B9298 800B8698 1420FFED */ bnez $at, .L800B8650 -/* 0B929C 800B869C 26B50001 */ addiu $s5, $s5, 1 -.L800B86A0: -/* 0B92A0 800B86A0 26F70001 */ addiu $s7, $s7, 1 -/* 0B92A4 800B86A4 02E3082A */ slt $at, $s7, $v1 -/* 0B92A8 800B86A8 1420FFE6 */ bnez $at, .L800B8644 -/* 0B92AC 800B86AC 00000000 */ nop -/* 0B92B0 800B86B0 0000B825 */ move $s7, $zero -/* 0B92B4 800B86B4 0000A825 */ move $s5, $zero -.L800B86B8: -/* 0B92B8 800B86B8 0C01BE4B */ jal func_8006F92C -/* 0B92BC 800B86BC 00000000 */ nop -/* 0B92C0 800B86C0 24010002 */ li $at, 2 -/* 0B92C4 800B86C4 12610003 */ beq $s3, $at, .L800B86D4 -/* 0B92C8 800B86C8 00003025 */ move $a2, $zero -/* 0B92CC 800B86CC 10000002 */ b .L800B86D8 -/* 0B92D0 800B86D0 24130002 */ li $s3, 2 -.L800B86D4: -/* 0B92D4 800B86D4 24130004 */ li $s3, 4 -.L800B86D8: -/* 0B92D8 800B86D8 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 0B92DC 800B86DC 44810800 */ mtc1 $at, $f1 -/* 0B92E0 800B86E0 8E820000 */ lw $v0, ($s4) -/* 0B92E4 800B86E4 44800000 */ mtc1 $zero, $f0 -/* 0B92E8 800B86E8 240500FF */ li $a1, 255 -.L800B86EC: -/* 0B92EC 800B86EC 0440005C */ bltz $v0, .L800B8860 -/* 0B92F0 800B86F0 24C60001 */ addiu $a2, $a2, 1 -.L800B86F4: -/* 0B92F4 800B86F4 04400055 */ bltz $v0, .L800B884C -/* 0B92F8 800B86F8 00008025 */ move $s0, $zero -.L800B86FC: -/* 0B92FC 800B86FC 1A60004F */ blez $s3, .L800B883C -/* 0B9300 800B8700 00002025 */ move $a0, $zero -/* 0B9304 800B8704 4490A000 */ mtc1 $s0, $f20 -/* 0B9308 800B8708 44979000 */ mtc1 $s7, $f18 -/* 0B930C 800B870C 4680A0A0 */ cvt.s.w $f2, $f20 -/* 0B9310 800B8710 00151880 */ sll $v1, $s5, 2 -/* 0B9314 800B8714 3C02800E */ lui $v0, %hi(D_800E3070) # $v0, 0x800e -/* 0B9318 800B8718 46809320 */ cvt.s.w $f12, $f18 -/* 0B931C 800B871C 00751821 */ addu $v1, $v1, $s5 -/* 0B9320 800B8720 24423070 */ addiu $v0, %lo(D_800E3070) # addiu $v0, $v0, 0x3070 -/* 0B9324 800B8724 00031840 */ sll $v1, $v1, 1 -.L800B8728: -/* 0B9328 800B8728 C62A0000 */ lwc1 $f10, ($s1) -/* 0B932C 800B872C 8C4E0000 */ lw $t6, ($v0) -/* 0B9330 800B8730 460A1402 */ mul.s $f16, $f2, $f10 -/* 0B9334 800B8734 01C37821 */ addu $t7, $t6, $v1 -/* 0B9338 800B8738 24840001 */ addiu $a0, %lo(D_57410001) # addiu $a0, $a0, 1 -/* 0B933C 800B873C 460084A1 */ cvt.d.s $f18, $f16 -/* 0B9340 800B8740 46209180 */ add.d $f6, $f18, $f0 -/* 0B9344 800B8744 444CF800 */ cfc1 $t4, $31 -/* 0B9348 800B8748 00000000 */ nop -/* 0B934C 800B874C 35810003 */ ori $at, $t4, 3 -/* 0B9350 800B8750 38210002 */ xori $at, $at, 2 -/* 0B9354 800B8754 44C1F800 */ ctc1 $at, $31 -/* 0B9358 800B8758 00000000 */ nop -/* 0B935C 800B875C 46203124 */ cvt.w.d $f4, $f6 -/* 0B9360 800B8760 440D2000 */ mfc1 $t5, $f4 -/* 0B9364 800B8764 44CCF800 */ ctc1 $t4, $31 -/* 0B9368 800B8768 A5ED0000 */ sh $t5, ($t7) -/* 0B936C 800B876C C6480000 */ lwc1 $f8, ($s2) -/* 0B9370 800B8770 8C4A0000 */ lw $t2, ($v0) -/* 0B9374 800B8774 46086282 */ mul.s $f10, $f12, $f8 -/* 0B9378 800B8778 01435821 */ addu $t3, $t2, $v1 -/* 0B937C 800B877C 46005421 */ cvt.d.s $f16, $f10 -/* 0B9380 800B8780 46208480 */ add.d $f18, $f16, $f0 -/* 0B9384 800B8784 4458F800 */ cfc1 $t8, $31 -/* 0B9388 800B8788 00000000 */ nop -/* 0B938C 800B878C 37010003 */ ori $at, $t8, 3 -/* 0B9390 800B8790 38210002 */ xori $at, $at, 2 -/* 0B9394 800B8794 44C1F800 */ ctc1 $at, $31 -/* 0B9398 800B8798 00000000 */ nop -/* 0B939C 800B879C 462091A4 */ cvt.w.d $f6, $f18 -/* 0B93A0 800B87A0 44193000 */ mfc1 $t9, $f6 -/* 0B93A4 800B87A4 44D8F800 */ ctc1 $t8, $31 -/* 0B93A8 800B87A8 A5790004 */ sh $t9, 4($t3) -/* 0B93AC 800B87AC 8E8C004C */ lw $t4, 0x4c($s4) -/* 0B93B0 800B87B0 00000000 */ nop -/* 0B93B4 800B87B4 1580000E */ bnez $t4, .L800B87F0 -/* 0B93B8 800B87B8 00000000 */ nop -/* 0B93BC 800B87BC 8C4E0000 */ lw $t6, ($v0) -/* 0B93C0 800B87C0 00000000 */ nop -/* 0B93C4 800B87C4 01C36821 */ addu $t5, $t6, $v1 -/* 0B93C8 800B87C8 A1A50006 */ sb $a1, 6($t5) -/* 0B93CC 800B87CC 8C4F0000 */ lw $t7, ($v0) -/* 0B93D0 800B87D0 00000000 */ nop -/* 0B93D4 800B87D4 01E3C021 */ addu $t8, $t7, $v1 -/* 0B93D8 800B87D8 A3050007 */ sb $a1, 7($t8) -/* 0B93DC 800B87DC 8C4A0000 */ lw $t2, ($v0) -/* 0B93E0 800B87E0 00000000 */ nop -/* 0B93E4 800B87E4 0143C821 */ addu $t9, $t2, $v1 -/* 0B93E8 800B87E8 1000000D */ b .L800B8820 -/* 0B93EC 800B87EC A3250008 */ sb $a1, 8($t9) -.L800B87F0: -/* 0B93F0 800B87F0 8C4B0000 */ lw $t3, ($v0) -/* 0B93F4 800B87F4 00000000 */ nop -/* 0B93F8 800B87F8 01636021 */ addu $t4, $t3, $v1 -/* 0B93FC 800B87FC A1800006 */ sb $zero, 6($t4) -/* 0B9400 800B8800 8C4E0000 */ lw $t6, ($v0) -/* 0B9404 800B8804 00000000 */ nop -/* 0B9408 800B8808 01C36821 */ addu $t5, $t6, $v1 -/* 0B940C 800B880C A1A00007 */ sb $zero, 7($t5) -/* 0B9410 800B8810 8C4F0000 */ lw $t7, ($v0) -/* 0B9414 800B8814 00000000 */ nop -/* 0B9418 800B8818 01E3C021 */ addu $t8, $t7, $v1 -/* 0B941C 800B881C A3000008 */ sb $zero, 8($t8) -.L800B8820: -/* 0B9420 800B8820 8C4A0000 */ lw $t2, ($v0) -/* 0B9424 800B8824 24420004 */ addiu $v0, $v0, 4 -/* 0B9428 800B8828 0143C821 */ addu $t9, $t2, $v1 -/* 0B942C 800B882C 1493FFBE */ bne $a0, $s3, .L800B8728 -/* 0B9430 800B8830 A3250009 */ sb $a1, 9($t9) -/* 0B9434 800B8834 8E820000 */ lw $v0, ($s4) -/* 0B9438 800B8838 00000000 */ nop -.L800B883C: -/* 0B943C 800B883C 26100001 */ addiu $s0, $s0, 1 -/* 0B9440 800B8840 0050082A */ slt $at, $v0, $s0 -/* 0B9444 800B8844 1020FFAD */ beqz $at, .L800B86FC -/* 0B9448 800B8848 26B50001 */ addiu $s5, $s5, 1 -.L800B884C: -/* 0B944C 800B884C 26F70001 */ addiu $s7, $s7, 1 -/* 0B9450 800B8850 0057082A */ slt $at, $v0, $s7 -/* 0B9454 800B8854 1020FFA7 */ beqz $at, .L800B86F4 -/* 0B9458 800B8858 00000000 */ nop -/* 0B945C 800B885C 0000B825 */ move $s7, $zero -.L800B8860: -/* 0B9460 800B8860 28C10019 */ slti $at, $a2, 0x19 -/* 0B9464 800B8864 1420FFA1 */ bnez $at, .L800B86EC -/* 0B9468 800B8868 00000000 */ nop -/* 0B946C 800B886C 1840003C */ blez $v0, .L800B8960 -/* 0B9470 800B8870 0000A825 */ move $s5, $zero -/* 0B9474 800B8874 24060040 */ li $a2, 64 -.L800B8878: -/* 0B9478 800B8878 18400035 */ blez $v0, .L800B8950 -/* 0B947C 800B887C 00008025 */ move $s0, $zero -.L800B8880: -/* 0B9480 800B8880 1A60002F */ blez $s3, .L800B8940 -/* 0B9484 800B8884 00002025 */ move $a0, $zero -/* 0B9488 800B8888 3C03800E */ lui $v1, %hi(D_800E3080) # $v1, 0x800e -/* 0B948C 800B888C 24633080 */ addiu $v1, %lo(D_800E3080) # addiu $v1, $v1, 0x3080 -/* 0B9490 800B8890 26050001 */ addiu $a1, $s0, 1 -/* 0B9494 800B8894 00151100 */ sll $v0, $s5, 4 -.L800B8898: -/* 0B9498 800B8898 8C6B0000 */ lw $t3, ($v1) -/* 0B949C 800B889C 24840001 */ addiu $a0, $a0, 1 -/* 0B94A0 800B88A0 01626021 */ addu $t4, $t3, $v0 -/* 0B94A4 800B88A4 A1860000 */ sb $a2, ($t4) -/* 0B94A8 800B88A8 8C6E0000 */ lw $t6, ($v1) -/* 0B94AC 800B88AC 24630004 */ addiu $v1, $v1, 4 -/* 0B94B0 800B88B0 01C26821 */ addu $t5, $t6, $v0 -/* 0B94B4 800B88B4 A1B00001 */ sb $s0, 1($t5) -/* 0B94B8 800B88B8 8E8F0000 */ lw $t7, ($s4) -/* 0B94BC 800B88BC 8C79FFFC */ lw $t9, -4($v1) -/* 0B94C0 800B88C0 020FC021 */ addu $t8, $s0, $t7 -/* 0B94C4 800B88C4 270A0001 */ addiu $t2, $t8, 1 -/* 0B94C8 800B88C8 03225821 */ addu $t3, $t9, $v0 -/* 0B94CC 800B88CC A16A0002 */ sb $t2, 2($t3) -/* 0B94D0 800B88D0 8C6CFFFC */ lw $t4, -4($v1) -/* 0B94D4 800B88D4 26B50000 */ addiu $s5, $s5, 0 -/* 0B94D8 800B88D8 01827021 */ addu $t6, $t4, $v0 -/* 0B94DC 800B88DC A1C50003 */ sb $a1, 3($t6) -/* 0B94E0 800B88E0 8C6DFFFC */ lw $t5, -4($v1) -/* 0B94E4 800B88E4 24420010 */ addiu $v0, $v0, 0x10 -/* 0B94E8 800B88E8 01A27821 */ addu $t7, $t5, $v0 -/* 0B94EC 800B88EC A1E60000 */ sb $a2, ($t7) -/* 0B94F0 800B88F0 8C78FFFC */ lw $t8, -4($v1) -/* 0B94F4 800B88F4 00000000 */ nop -/* 0B94F8 800B88F8 0302C821 */ addu $t9, $t8, $v0 -/* 0B94FC 800B88FC A3250001 */ sb $a1, 1($t9) -/* 0B9500 800B8900 8E8A0000 */ lw $t2, ($s4) -/* 0B9504 800B8904 8C6EFFFC */ lw $t6, -4($v1) -/* 0B9508 800B8908 020A5821 */ addu $t3, $s0, $t2 -/* 0B950C 800B890C 256C0001 */ addiu $t4, $t3, 1 -/* 0B9510 800B8910 01C26821 */ addu $t5, $t6, $v0 -/* 0B9514 800B8914 A1AC0002 */ sb $t4, 2($t5) -/* 0B9518 800B8918 8E8F0000 */ lw $t7, ($s4) -/* 0B951C 800B891C 8C6AFFFC */ lw $t2, -4($v1) -/* 0B9520 800B8920 020FC021 */ addu $t8, $s0, $t7 -/* 0B9524 800B8924 27190002 */ addiu $t9, $t8, 2 -/* 0B9528 800B8928 01425821 */ addu $t3, $t2, $v0 -/* 0B952C 800B892C A1790003 */ sb $t9, 3($t3) -/* 0B9530 800B8930 1493FFD9 */ bne $a0, $s3, .L800B8898 -/* 0B9534 800B8934 2442FFF0 */ addiu $v0, $v0, -0x10 -/* 0B9538 800B8938 8E820000 */ lw $v0, ($s4) -/* 0B953C 800B893C 00000000 */ nop -.L800B8940: -/* 0B9540 800B8940 26100001 */ addiu $s0, $s0, 1 -/* 0B9544 800B8944 0202082A */ slt $at, $s0, $v0 -/* 0B9548 800B8948 1420FFCD */ bnez $at, .L800B8880 -/* 0B954C 800B894C 26B50002 */ addiu $s5, $s5, 2 -.L800B8950: -/* 0B9550 800B8950 26F70001 */ addiu $s7, $s7, 1 -/* 0B9554 800B8954 02E2082A */ slt $at, $s7, $v0 -/* 0B9558 800B8958 1420FFC7 */ bnez $at, .L800B8878 -/* 0B955C 800B895C 00000000 */ nop -.L800B8960: -/* 0B9560 800B8960 0C02F1B2 */ jal func_800BC6C8 -/* 0B9564 800B8964 00000000 */ nop -/* 0B9568 800B8968 8E820000 */ lw $v0, ($s4) -/* 0B956C 800B896C 3C048013 */ lui $a0, %hi(D_8012A028) # $a0, 0x8013 -/* 0B9570 800B8970 244E0001 */ addiu $t6, $v0, 1 -/* 0B9574 800B8974 01C20019 */ multu $t6, $v0 -/* 0B9578 800B8978 00024080 */ sll $t0, $v0, 2 -/* 0B957C 800B897C 3C07800E */ lui $a3, %hi(D_800E3070) # $a3, 0x800e -/* 0B9580 800B8980 3C09800E */ lui $t1, %hi(D_800E3078) # $t1, 0x800e -/* 0B9584 800B8984 01024021 */ addu $t0, $t0, $v0 -/* 0B9588 800B8988 00084040 */ sll $t0, $t0, 1 -/* 0B958C 800B898C 25293078 */ addiu $t1, %lo(D_800E3078) # addiu $t1, $t1, 0x3078 -/* 0B9590 800B8990 24E73070 */ addiu $a3, %lo(D_800E3070) # addiu $a3, $a3, 0x3070 -/* 0B9594 800B8994 2484A028 */ addiu $a0, %lo(D_8012A028) # addiu $a0, $a0, -0x5fd8 -/* 0B9598 800B8998 0000A812 */ mflo $s5 -/* 0B959C 800B899C 00151880 */ sll $v1, $s5, 2 -/* 0B95A0 800B89A0 00751821 */ addu $v1, $v1, $s5 -/* 0B95A4 800B89A4 00031840 */ sll $v1, $v1, 1 -.L800B89A8: -/* 0B95A8 800B89A8 8CE50000 */ lw $a1, ($a3) -/* 0B95AC 800B89AC 24E70004 */ addiu $a3, $a3, 4 -/* 0B95B0 800B89B0 84AC0000 */ lh $t4, ($a1) -/* 0B95B4 800B89B4 A4800002 */ sh $zero, 2($a0) -/* 0B95B8 800B89B8 A48C0000 */ sh $t4, ($a0) -/* 0B95BC 800B89BC 84AD0004 */ lh $t5, 4($a1) -/* 0B95C0 800B89C0 00A81021 */ addu $v0, $a1, $t0 -/* 0B95C4 800B89C4 A48D0004 */ sh $t5, 4($a0) -/* 0B95C8 800B89C8 90AF0006 */ lbu $t7, 6($a1) -/* 0B95CC 800B89CC 00A33021 */ addu $a2, $a1, $v1 -/* 0B95D0 800B89D0 A08F0006 */ sb $t7, 6($a0) -/* 0B95D4 800B89D4 90B80007 */ lbu $t8, 7($a1) -/* 0B95D8 800B89D8 24840028 */ addiu $a0, $a0, 0x28 -/* 0B95DC 800B89DC A098FFDF */ sb $t8, -0x21($a0) -/* 0B95E0 800B89E0 90AA0008 */ lbu $t2, 8($a1) -/* 0B95E4 800B89E4 00000000 */ nop -/* 0B95E8 800B89E8 A08AFFE0 */ sb $t2, -0x20($a0) -/* 0B95EC 800B89EC 90B90009 */ lbu $t9, 9($a1) -/* 0B95F0 800B89F0 00000000 */ nop -/* 0B95F4 800B89F4 A099FFE1 */ sb $t9, -0x1f($a0) -/* 0B95F8 800B89F8 844B0000 */ lh $t3, ($v0) -/* 0B95FC 800B89FC A480FFE4 */ sh $zero, -0x1c($a0) -/* 0B9600 800B8A00 A48BFFE2 */ sh $t3, -0x1e($a0) -/* 0B9604 800B8A04 844E0004 */ lh $t6, 4($v0) -/* 0B9608 800B8A08 00000000 */ nop -/* 0B960C 800B8A0C A48EFFE6 */ sh $t6, -0x1a($a0) -/* 0B9610 800B8A10 904C0006 */ lbu $t4, 6($v0) -/* 0B9614 800B8A14 00000000 */ nop -/* 0B9618 800B8A18 A08CFFE8 */ sb $t4, -0x18($a0) -/* 0B961C 800B8A1C 904D0007 */ lbu $t5, 7($v0) -/* 0B9620 800B8A20 00000000 */ nop -/* 0B9624 800B8A24 A08DFFE9 */ sb $t5, -0x17($a0) -/* 0B9628 800B8A28 904F0008 */ lbu $t7, 8($v0) -/* 0B962C 800B8A2C 00000000 */ nop -/* 0B9630 800B8A30 A08FFFEA */ sb $t7, -0x16($a0) -/* 0B9634 800B8A34 90580009 */ lbu $t8, 9($v0) -/* 0B9638 800B8A38 00157880 */ sll $t7, $s5, 2 -/* 0B963C 800B8A3C A098FFEB */ sb $t8, -0x15($a0) -/* 0B9640 800B8A40 84CA0000 */ lh $t2, ($a2) -/* 0B9644 800B8A44 A480FFEE */ sh $zero, -0x12($a0) -/* 0B9648 800B8A48 A48AFFEC */ sh $t2, -0x14($a0) -/* 0B964C 800B8A4C 84D90004 */ lh $t9, 4($a2) -/* 0B9650 800B8A50 01F57821 */ addu $t7, $t7, $s5 -/* 0B9654 800B8A54 A499FFF0 */ sh $t9, -0x10($a0) -/* 0B9658 800B8A58 90CB0006 */ lbu $t3, 6($a2) -/* 0B965C 800B8A5C 000F7840 */ sll $t7, $t7, 1 -/* 0B9660 800B8A60 A08BFFF2 */ sb $t3, -0xe($a0) -/* 0B9664 800B8A64 90CE0007 */ lbu $t6, 7($a2) -/* 0B9668 800B8A68 00AFC021 */ addu $t8, $a1, $t7 -/* 0B966C 800B8A6C A08EFFF3 */ sb $t6, -0xd($a0) -/* 0B9670 800B8A70 90CC0008 */ lbu $t4, 8($a2) -/* 0B9674 800B8A74 03081021 */ addu $v0, $t8, $t0 -/* 0B9678 800B8A78 A08CFFF4 */ sb $t4, -0xc($a0) -/* 0B967C 800B8A7C 90CD0009 */ lbu $t5, 9($a2) -/* 0B9680 800B8A80 00000000 */ nop -/* 0B9684 800B8A84 A08DFFF5 */ sb $t5, -0xb($a0) -/* 0B9688 800B8A88 844A0000 */ lh $t2, ($v0) -/* 0B968C 800B8A8C A480FFF8 */ sh $zero, -8($a0) -/* 0B9690 800B8A90 A48AFFF6 */ sh $t2, -0xa($a0) -/* 0B9694 800B8A94 84590004 */ lh $t9, 4($v0) -/* 0B9698 800B8A98 00000000 */ nop -/* 0B969C 800B8A9C A499FFFA */ sh $t9, -6($a0) -/* 0B96A0 800B8AA0 904B0006 */ lbu $t3, 6($v0) -/* 0B96A4 800B8AA4 00000000 */ nop -/* 0B96A8 800B8AA8 A08BFFFC */ sb $t3, -4($a0) -/* 0B96AC 800B8AAC 904E0007 */ lbu $t6, 7($v0) -/* 0B96B0 800B8AB0 00000000 */ nop -/* 0B96B4 800B8AB4 A08EFFFD */ sb $t6, -3($a0) -/* 0B96B8 800B8AB8 904C0008 */ lbu $t4, 8($v0) -/* 0B96BC 800B8ABC 00000000 */ nop -/* 0B96C0 800B8AC0 A08CFFFE */ sb $t4, -2($a0) -/* 0B96C4 800B8AC4 904D0009 */ lbu $t5, 9($v0) -/* 0B96C8 800B8AC8 14E9FFB7 */ bne $a3, $t1, .L800B89A8 -/* 0B96CC 800B8ACC A08DFFFF */ sb $t5, -1($a0) -/* 0B96D0 800B8AD0 8FA40070 */ lw $a0, 0x70($sp) -/* 0B96D4 800B8AD4 0C02F31C */ jal func_800BCC70 -/* 0B96D8 800B8AD8 00000000 */ nop -/* 0B96DC 800B8ADC 8E8F0024 */ lw $t7, 0x24($s4) -/* 0B96E0 800B8AE0 24010003 */ li $at, 3 -/* 0B96E4 800B8AE4 15E1000A */ bne $t7, $at, .L800B8B10 -/* 0B96E8 800B8AE8 24190005 */ li $t9, 5 -/* 0B96EC 800B8AEC 3C18800E */ lui $t8, %hi(D_800E30E8) # $t8, 0x800e -/* 0B96F0 800B8AF0 271830E8 */ addiu $t8, %lo(D_800E30E8) # addiu $t8, $t8, 0x30e8 -/* 0B96F4 800B8AF4 3C01800E */ lui $at, %hi(D_800E30E0) # $at, 0x800e -/* 0B96F8 800B8AF8 AC3830E0 */ sw $t8, %lo(D_800E30E0)($at) -/* 0B96FC 800B8AFC 3C0A800E */ lui $t2, %hi(D_800E30FC) # $t2, 0x800e -/* 0B9700 800B8B00 254A30FC */ addiu $t2, %lo(D_800E30FC) # addiu $t2, $t2, 0x30fc -/* 0B9704 800B8B04 3C01800E */ lui $at, %hi(D_800E30E4) # $at, 0x800e -/* 0B9708 800B8B08 1000000A */ b .L800B8B34 -/* 0B970C 800B8B0C AC2A30E4 */ sw $t2, %lo(D_800E30E4)($at) -.L800B8B10: -/* 0B9710 800B8B10 3C0B800E */ lui $t3, %hi(D_800E3110) # $t3, 0x800e -/* 0B9714 800B8B14 AE990024 */ sw $t9, 0x24($s4) -/* 0B9718 800B8B18 256B3110 */ addiu $t3, %lo(D_800E3110) # addiu $t3, $t3, 0x3110 -/* 0B971C 800B8B1C 3C01800E */ lui $at, %hi(D_800E30E0) # $at, 0x800e -/* 0B9720 800B8B20 AC2B30E0 */ sw $t3, %lo(D_800E30E0)($at) -/* 0B9724 800B8B24 3C0E800E */ lui $t6, %hi(D_800E3144) # $t6, 0x800e -/* 0B9728 800B8B28 25CE3144 */ addiu $t6, %lo(D_800E3144) # addiu $t6, $t6, 0x3144 -/* 0B972C 800B8B2C 3C01800E */ lui $at, %hi(D_800E30E4) # $at, 0x800e -/* 0B9730 800B8B30 AC2E30E4 */ sw $t6, %lo(D_800E30E4)($at) -.L800B8B34: -/* 0B9734 800B8B34 3C01800E */ lui $at, %hi(D_800E3188) # $at, 0x800e -/* 0B9738 800B8B38 AC203188 */ sw $zero, %lo(D_800E3188)($at) -/* 0B973C 800B8B3C 3C018013 */ lui $at, %hi(D_8012A728) # $at, 0x8013 -/* 0B9740 800B8B40 AC20A728 */ sw $zero, %lo(D_8012A728)($at) -/* 0B9744 800B8B44 3C01800E */ lui $at, %hi(D_800E3198) # $at, 0x800e -/* 0B9748 800B8B48 8FBF0044 */ lw $ra, 0x44($sp) -/* 0B974C 800B8B4C AC203198 */ sw $zero, %lo(D_800E3198)($at) -/* 0B9750 800B8B50 3C018013 */ lui $at, %hi(D_8012A018) # $at, 0x8013 -/* 0B9754 800B8B54 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 0B9758 800B8B58 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 0B975C 800B8B5C 8FB00020 */ lw $s0, 0x20($sp) -/* 0B9760 800B8B60 8FB10024 */ lw $s1, 0x24($sp) -/* 0B9764 800B8B64 8FB20028 */ lw $s2, 0x28($sp) -/* 0B9768 800B8B68 8FB3002C */ lw $s3, 0x2c($sp) -/* 0B976C 800B8B6C 8FB40030 */ lw $s4, 0x30($sp) -/* 0B9770 800B8B70 8FB50034 */ lw $s5, 0x34($sp) -/* 0B9774 800B8B74 8FB60038 */ lw $s6, 0x38($sp) -/* 0B9778 800B8B78 8FB7003C */ lw $s7, 0x3c($sp) -/* 0B977C 800B8B7C 8FBE0040 */ lw $fp, 0x40($sp) -/* 0B9780 800B8B80 AC20A018 */ sw $zero, %lo(D_8012A018)($at) -/* 0B9784 800B8B84 03E00008 */ jr $ra -/* 0B9788 800B8B88 27BD0070 */ addiu $sp, $sp, 0x70 - -glabel func_800B8B8C -/* 0B978C 800B8B8C 3C01800E */ lui $at, %hi(D_800E30DC) # $at, 0x800e -/* 0B9790 800B8B90 3C048013 */ lui $a0, %hi(D_8012A0D8) # $a0, 0x8013 -/* 0B9794 800B8B94 3C058013 */ lui $a1, %hi(D_8012A0DC) # $a1, 0x8013 -/* 0B9798 800B8B98 AC2030DC */ sw $zero, %lo(D_800E30DC)($at) -/* 0B979C 800B8B9C 24A5A0DC */ addiu $a1, %lo(D_8012A0DC) # addiu $a1, $a1, -0x5f24 -/* 0B97A0 800B8BA0 2484A0D8 */ addiu $a0, %lo(D_8012A0D8) # addiu $a0, $a0, -0x5f28 -/* 0B97A4 800B8BA4 8C8E0000 */ lw $t6, ($a0) -/* 0B97A8 800B8BA8 8CAF0000 */ lw $t7, ($a1) -/* 0B97AC 800B8BAC 3C06800E */ lui $a2, %hi(D_800E30D4) # $a2, 0x800e -/* 0B97B0 800B8BB0 01CF0019 */ multu $t6, $t7 -/* 0B97B4 800B8BB4 24C630D4 */ addiu $a2, %lo(D_800E30D4) # addiu $a2, $a2, 0x30d4 -/* 0B97B8 800B8BB8 00001025 */ move $v0, $zero -/* 0B97BC 800B8BBC 00001825 */ move $v1, $zero -/* 0B97C0 800B8BC0 0000C012 */ mflo $t8 -/* 0B97C4 800B8BC4 1B00000D */ blez $t8, .L800B8BFC -/* 0B97C8 800B8BC8 00000000 */ nop -.L800B8BCC: -/* 0B97CC 800B8BCC 8CD90000 */ lw $t9, ($a2) -/* 0B97D0 800B8BD0 24420001 */ addiu $v0, $v0, 1 -/* 0B97D4 800B8BD4 03234021 */ addu $t0, $t9, $v1 -/* 0B97D8 800B8BD8 AD000000 */ sw $zero, ($t0) -/* 0B97DC 800B8BDC 8CAA0000 */ lw $t2, ($a1) -/* 0B97E0 800B8BE0 8C890000 */ lw $t1, ($a0) -/* 0B97E4 800B8BE4 24630004 */ addiu $v1, $v1, 4 -/* 0B97E8 800B8BE8 012A0019 */ multu $t1, $t2 -/* 0B97EC 800B8BEC 00005812 */ mflo $t3 -/* 0B97F0 800B8BF0 004B082A */ slt $at, $v0, $t3 -/* 0B97F4 800B8BF4 1420FFF5 */ bnez $at, .L800B8BCC -/* 0B97F8 800B8BF8 00000000 */ nop -.L800B8BFC: -/* 0B97FC 800B8BFC 03E00008 */ jr $ra -/* 0B9800 800B8C00 00000000 */ nop - -glabel func_800B8C04 -/* 0B9804 800B8C04 3C0A8013 */ lui $t2, %hi(D_8012A0D0) # $t2, 0x8013 -/* 0B9808 800B8C08 8D4AA0D0 */ lw $t2, %lo(D_8012A0D0)($t2) -/* 0B980C 800B8C0C 3C088013 */ lui $t0, %hi(D_8012A0A8) # $t0, 0x8013 -/* 0B9810 800B8C10 8D08A0A8 */ lw $t0, %lo(D_8012A0A8)($t0) -/* 0B9814 800B8C14 008A7023 */ subu $t6, $a0, $t2 -/* 0B9818 800B8C18 01C8001A */ div $zero, $t6, $t0 -/* 0B981C 800B8C1C 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 0B9820 800B8C20 AFA50054 */ sw $a1, 0x54($sp) -/* 0B9824 800B8C24 3C0C8013 */ lui $t4, %hi(D_8012A0D4) # $t4, 0x8013 -/* 0B9828 800B8C28 8D8CA0D4 */ lw $t4, %lo(D_8012A0D4)($t4) -/* 0B982C 800B8C2C 3C098013 */ lui $t1, %hi(D_8012A0AC) # $t1, 0x8013 -/* 0B9830 800B8C30 8D29A0AC */ lw $t1, %lo(D_8012A0AC)($t1) -/* 0B9834 800B8C34 00CC7823 */ subu $t7, $a2, $t4 -/* 0B9838 800B8C38 AFB70034 */ sw $s7, 0x34($sp) -/* 0B983C 800B8C3C AFB00018 */ sw $s0, 0x18($sp) -/* 0B9840 800B8C40 2418FFFF */ li $t8, -1 -/* 0B9844 800B8C44 00808025 */ move $s0, $a0 -/* 0B9848 800B8C48 AFB60030 */ sw $s6, 0x30($sp) -/* 0B984C 800B8C4C AFA7005C */ sw $a3, 0x5c($sp) -/* 0B9850 800B8C50 3C048013 */ lui $a0, %hi(D_8012A720) # $a0, 0x8013 -/* 0B9854 800B8C54 2419FFFF */ li $t9, -1 -/* 0B9858 800B8C58 3C038013 */ lui $v1, %hi(D_8012A600) # $v1, 0x8013 -/* 0B985C 800B8C5C AFBF003C */ sw $ra, 0x3c($sp) -/* 0B9860 800B8C60 AFBE0038 */ sw $fp, 0x38($sp) -/* 0B9864 800B8C64 AFB5002C */ sw $s5, 0x2c($sp) -/* 0B9868 800B8C68 AFB40028 */ sw $s4, 0x28($sp) -/* 0B986C 800B8C6C AFB30024 */ sw $s3, 0x24($sp) -/* 0B9870 800B8C70 AFB20020 */ sw $s2, 0x20($sp) -/* 0B9874 800B8C74 AFB1001C */ sw $s1, 0x1c($sp) -/* 0B9878 800B8C78 15000002 */ bnez $t0, .L800B8C84 -/* 0B987C 800B8C7C 00000000 */ nop -/* 0B9880 800B8C80 0007000D */ break 7 -.L800B8C84: -/* 0B9884 800B8C84 2401FFFF */ li $at, -1 -/* 0B9888 800B8C88 15010004 */ bne $t0, $at, .L800B8C9C -/* 0B988C 800B8C8C 3C018000 */ lui $at, 0x8000 -/* 0B9890 800B8C90 15C10002 */ bne $t6, $at, .L800B8C9C -/* 0B9894 800B8C94 00000000 */ nop -/* 0B9898 800B8C98 0006000D */ break 6 -.L800B8C9C: -/* 0B989C 800B8C9C 00002812 */ mflo $a1 -/* 0B98A0 800B8CA0 2463A600 */ addiu $v1, %lo(D_8012A600) # addiu $v1, $v1, -0x5a00 -/* 0B98A4 800B8CA4 2484A720 */ addiu $a0, %lo(D_8012A720) # addiu $a0, $a0, -0x58e0 -/* 0B98A8 800B8CA8 01E9001A */ div $zero, $t7, $t1 -/* 0B98AC 800B8CAC 15200002 */ bnez $t1, .L800B8CB8 -/* 0B98B0 800B8CB0 00000000 */ nop -/* 0B98B4 800B8CB4 0007000D */ break 7 -.L800B8CB8: -/* 0B98B8 800B8CB8 2401FFFF */ li $at, -1 -/* 0B98BC 800B8CBC 15210004 */ bne $t1, $at, .L800B8CD0 -/* 0B98C0 800B8CC0 3C018000 */ lui $at, 0x8000 -/* 0B98C4 800B8CC4 15E10002 */ bne $t7, $at, .L800B8CD0 -/* 0B98C8 800B8CC8 00000000 */ nop -/* 0B98CC 800B8CCC 0006000D */ break 6 -.L800B8CD0: -/* 0B98D0 800B8CD0 3C018013 */ lui $at, %hi(D_8012A5E8) # $at, 0x8013 -/* 0B98D4 800B8CD4 A438A5E8 */ sh $t8, %lo(D_8012A5E8)($at) -/* 0B98D8 800B8CD8 3C018013 */ lui $at, %hi(D_8012A5F4) # $at, 0x8013 -/* 0B98DC 800B8CDC A439A5F4 */ sh $t9, %lo(D_8012A5F4)($at) -/* 0B98E0 800B8CE0 2402FFFF */ li $v0, -1 -/* 0B98E4 800B8CE4 3C0B8013 */ lui $t3, %hi(D_80129FC8) # $t3, 0x8013 -/* 0B98E8 800B8CE8 00003825 */ move $a3, $zero -/* 0B98EC 800B8CEC 0000B025 */ move $s6, $zero -/* 0B98F0 800B8CF0 0000B812 */ mflo $s7 -/* 0B98F4 800B8CF4 00000000 */ nop -/* 0B98F8 800B8CF8 00000000 */ nop -.L800B8CFC: -/* 0B98FC 800B8CFC 24630030 */ addiu $v1, $v1, 0x30 -/* 0B9900 800B8D00 A462FFD0 */ sh $v0, -0x30($v1) -/* 0B9904 800B8D04 A462FFDC */ sh $v0, -0x24($v1) -/* 0B9908 800B8D08 A462FFE8 */ sh $v0, -0x18($v1) -/* 0B990C 800B8D0C 1464FFFB */ bne $v1, $a0, .L800B8CFC -/* 0B9910 800B8D10 A462FFF4 */ sh $v0, -0xc($v1) -/* 0B9914 800B8D14 256B9FC8 */ addiu $t3, %lo(D_80129FC8) # addiu $t3, $t3, -0x6038 -/* 0B9918 800B8D18 8D6E0028 */ lw $t6, 0x28($t3) -/* 0B991C 800B8D1C 00000000 */ nop -/* 0B9920 800B8D20 11C000C8 */ beqz $t6, .L800B9044 -/* 0B9924 800B8D24 00000000 */ nop -/* 0B9928 800B8D28 00A80019 */ multu $a1, $t0 -/* 0B992C 800B8D2C 3C12800E */ lui $s2, %hi(D_800E317C) # $s2, 0x800e -/* 0B9930 800B8D30 00001825 */ move $v1, $zero -/* 0B9934 800B8D34 0000A025 */ move $s4, $zero -/* 0B9938 800B8D38 2652317C */ addiu $s2, %lo(D_800E317C) # addiu $s2, $s2, 0x317c -/* 0B993C 800B8D3C 2411000C */ li $s1, 12 -/* 0B9940 800B8D40 241F001C */ li $ra, 28 -/* 0B9944 800B8D44 00007812 */ mflo $t7 -/* 0B9948 800B8D48 020FC023 */ subu $t8, $s0, $t7 -/* 0B994C 800B8D4C 030A8023 */ subu $s0, $t8, $t2 -/* 0B9950 800B8D50 02E90019 */ multu $s7, $t1 -/* 0B9954 800B8D54 00087843 */ sra $t7, $t0, 1 -/* 0B9958 800B8D58 01F0082A */ slt $at, $t7, $s0 -/* 0B995C 800B8D5C 3C108013 */ lui $s0, %hi(D_8012A5E8) # $s0, 0x8013 -/* 0B9960 800B8D60 0009C043 */ sra $t8, $t1, 1 -/* 0B9964 800B8D64 2610A5E8 */ addiu $s0, %lo(D_8012A5E8) # addiu $s0, $s0, -0x5a18 -/* 0B9968 800B8D68 0000C812 */ mflo $t9 -/* 0B996C 800B8D6C 00D97023 */ subu $t6, $a2, $t9 -/* 0B9970 800B8D70 10200003 */ beqz $at, .L800B8D80 -/* 0B9974 800B8D74 01CC3023 */ subu $a2, $t6, $t4 -/* 0B9978 800B8D78 10000002 */ b .L800B8D84 -/* 0B997C 800B8D7C 24030008 */ li $v1, 8 -.L800B8D80: -/* 0B9980 800B8D80 AFA00040 */ sw $zero, 0x40($sp) -.L800B8D84: -/* 0B9984 800B8D84 0306082A */ slt $at, $t8, $a2 -/* 0B9988 800B8D88 10200003 */ beqz $at, .L800B8D98 -/* 0B998C 800B8D8C 00000000 */ nop -/* 0B9990 800B8D90 10000001 */ b .L800B8D98 -/* 0B9994 800B8D94 24140010 */ li $s4, 16 -.L800B8D98: -/* 0B9998 800B8D98 8D640024 */ lw $a0, 0x24($t3) -/* 0B999C 800B8D9C 00000000 */ nop -/* 0B99A0 800B8DA0 00041043 */ sra $v0, $a0, 1 -/* 0B99A4 800B8DA4 0002C8C0 */ sll $t9, $v0, 3 -/* 0B99A8 800B8DA8 00791823 */ subu $v1, $v1, $t9 -/* 0B99AC 800B8DAC 04610004 */ bgez $v1, .L800B8DC0 -/* 0B99B0 800B8DB0 00027100 */ sll $t6, $v0, 4 -.L800B8DB4: -/* 0B99B4 800B8DB4 24630010 */ addiu $v1, $v1, 0x10 -/* 0B99B8 800B8DB8 0460FFFE */ bltz $v1, .L800B8DB4 -/* 0B99BC 800B8DBC 24A5FFFF */ addiu $a1, $a1, -1 -.L800B8DC0: -/* 0B99C0 800B8DC0 028EA023 */ subu $s4, $s4, $t6 -/* 0B99C4 800B8DC4 06810004 */ bgez $s4, .L800B8DD8 -/* 0B99C8 800B8DC8 00000000 */ nop -.L800B8DCC: -/* 0B99CC 800B8DCC 26940020 */ addiu $s4, $s4, 0x20 -/* 0B99D0 800B8DD0 0680FFFE */ bltz $s4, .L800B8DCC -/* 0B99D4 800B8DD4 26F7FFFF */ addiu $s7, $s7, -1 -.L800B8DD8: -/* 0B99D8 800B8DD8 18800103 */ blez $a0, .L800B91E8 -/* 0B99DC 800B8DDC 0000B025 */ move $s6, $zero -/* 0B99E0 800B8DE0 3C1E8013 */ lui $fp, %hi(D_8012A0D8) # $fp, 0x8013 -/* 0B99E4 800B8DE4 27DEA0D8 */ addiu $fp, %lo(D_8012A0D8) # addiu $fp, $fp, -0x5f28 -/* 0B99E8 800B8DE8 AFA5004C */ sw $a1, 0x4c($sp) -.L800B8DEC: -/* 0B99EC 800B8DEC 06E00089 */ bltz $s7, .L800B9014 -/* 0B99F0 800B8DF0 AFA30040 */ sw $v1, 0x40($sp) -/* 0B99F4 800B8DF4 3C0F8013 */ lui $t7, %hi(D_8012A0DC) # $t7, 0x8013 -/* 0B99F8 800B8DF8 8DEFA0DC */ lw $t7, %lo(D_8012A0DC)($t7) -/* 0B99FC 800B8DFC AFA30040 */ sw $v1, 0x40($sp) -/* 0B9A00 800B8E00 02EF082A */ slt $at, $s7, $t7 -/* 0B9A04 800B8E04 10200083 */ beqz $at, .L800B9014 -/* 0B9A08 800B8E08 00000000 */ nop -/* 0B9A0C 800B8E0C 8FD80000 */ lw $t8, ($fp) -/* 0B9A10 800B8E10 8FB3004C */ lw $s3, 0x4c($sp) -/* 0B9A14 800B8E14 02F80019 */ multu $s7, $t8 -/* 0B9A18 800B8E18 00606825 */ move $t5, $v1 -/* 0B9A1C 800B8E1C 0000A825 */ move $s5, $zero -/* 0B9A20 800B8E20 0000C812 */ mflo $t9 -/* 0B9A24 800B8E24 03335021 */ addu $t2, $t9, $s3 -/* 0B9A28 800B8E28 1880007A */ blez $a0, .L800B9014 -/* 0B9A2C 800B8E2C 00000000 */ nop -.L800B8E30: -/* 0B9A30 800B8E30 0660006D */ bltz $s3, .L800B8FE8 -/* 0B9A34 800B8E34 00000000 */ nop -/* 0B9A38 800B8E38 8FCE0000 */ lw $t6, ($fp) -/* 0B9A3C 800B8E3C 00177880 */ sll $t7, $s7, 2 -/* 0B9A40 800B8E40 026E082A */ slt $at, $s3, $t6 -/* 0B9A44 800B8E44 10200068 */ beqz $at, .L800B8FE8 -/* 0B9A48 800B8E48 3C188013 */ lui $t8, 0x8013 -/* 0B9A4C 800B8E4C 030FC021 */ addu $t8, $t8, $t7 -/* 0B9A50 800B8E50 8F18A0E8 */ lw $t8, -0x5f18($t8) -/* 0B9A54 800B8E54 24190001 */ li $t9, 1 -/* 0B9A58 800B8E58 02797004 */ sllv $t6, $t9, $s3 -/* 0B9A5C 800B8E5C 030E7824 */ and $t7, $t8, $t6 -/* 0B9A60 800B8E60 11E00061 */ beqz $t7, .L800B8FE8 -/* 0B9A64 800B8E64 00000000 */ nop -/* 0B9A68 800B8E68 02C40019 */ multu $s6, $a0 -/* 0B9A6C 800B8E6C 3C19800E */ lui $t9, %hi(D_800E30D4) # $t9, 0x800e -/* 0B9A70 800B8E70 8F3930D4 */ lw $t9, %lo(D_800E30D4)($t9) -/* 0B9A74 800B8E74 000AC080 */ sll $t8, $t2, 2 -/* 0B9A78 800B8E78 3C0E800E */ lui $t6, %hi(D_800E30E0) # $t6, 0x800e -/* 0B9A7C 800B8E7C 03381821 */ addu $v1, $t9, $t8 -/* 0B9A80 800B8E80 8DCE30E0 */ lw $t6, %lo(D_800E30E0)($t6) -/* 0B9A84 800B8E84 01B46021 */ addu $t4, $t5, $s4 -/* 0B9A88 800B8E88 3C088013 */ lui $t0, %hi(D_8012A0E0) # $t0, 0x8013 -/* 0B9A8C 800B8E8C 00001025 */ move $v0, $zero -/* 0B9A90 800B8E90 3C09800E */ lui $t1, %hi(D_800E30D8) # $t1, 0x800e -/* 0B9A94 800B8E94 00007812 */ mflo $t7 -/* 0B9A98 800B8E98 000FC840 */ sll $t9, $t7, 1 -/* 0B9A9C 800B8E9C 00157840 */ sll $t7, $s5, 1 -/* 0B9AA0 800B8EA0 01D9C021 */ addu $t8, $t6, $t9 -/* 0B9AA4 800B8EA4 030F7021 */ addu $t6, $t8, $t7 -/* 0B9AA8 800B8EA8 85D90000 */ lh $t9, ($t6) -/* 0B9AAC 800B8EAC 8C6F0000 */ lw $t7, ($v1) -/* 0B9AB0 800B8EB0 0199C004 */ sllv $t8, $t9, $t4 -/* 0B9AB4 800B8EB4 01F87025 */ or $t6, $t7, $t8 -/* 0B9AB8 800B8EB8 AC6E0000 */ sw $t6, ($v1) -/* 0B9ABC 800B8EBC 8D08A0E0 */ lw $t0, %lo(D_8012A0E0)($t0) -/* 0B9AC0 800B8EC0 00000000 */ nop -/* 0B9AC4 800B8EC4 19000048 */ blez $t0, .L800B8FE8 -/* 0B9AC8 800B8EC8 00000000 */ nop -/* 0B9ACC 800B8ECC 8D2930D8 */ lw $t1, %lo(D_800E30D8)($t1) -/* 0B9AD0 800B8ED0 00000000 */ nop -.L800B8ED4: -/* 0B9AD4 800B8ED4 005F0019 */ multu $v0, $ra -/* 0B9AD8 800B8ED8 0000C812 */ mflo $t9 -/* 0B9ADC 800B8EDC 01393021 */ addu $a2, $t1, $t9 -/* 0B9AE0 800B8EE0 8CCF000C */ lw $t7, 0xc($a2) -/* 0B9AE4 800B8EE4 00000000 */ nop -/* 0B9AE8 800B8EE8 154F003B */ bne $t2, $t7, .L800B8FD8 -/* 0B9AEC 800B8EEC 00000000 */ nop -/* 0B9AF0 800B8EF0 00F10019 */ multu $a3, $s1 -/* 0B9AF4 800B8EF4 8E590000 */ lw $t9, ($s2) -/* 0B9AF8 800B8EF8 000C70C3 */ sra $t6, $t4, 3 -/* 0B9AFC 800B8EFC 24E70001 */ addiu $a3, $a3, 1 -/* 0B9B00 800B8F00 0000C012 */ mflo $t8 -/* 0B9B04 800B8F04 02181821 */ addu $v1, $s0, $t8 -/* 0B9B08 800B8F08 A4620000 */ sh $v0, ($v1) -/* 0B9B0C 800B8F0C 00590019 */ multu $v0, $t9 -/* 0B9B10 800B8F10 A46E0002 */ sh $t6, 2($v1) -/* 0B9B14 800B8F14 00007812 */ mflo $t7 -/* 0B9B18 800B8F18 AC6F0008 */ sw $t7, 8($v1) -/* 0B9B1C 800B8F1C 84D80012 */ lh $t8, 0x12($a2) -/* 0B9B20 800B8F20 11A00013 */ beqz $t5, .L800B8F70 -/* 0B9B24 800B8F24 A4780004 */ sh $t8, 4($v1) -/* 0B9B28 800B8F28 8D650000 */ lw $a1, ($t3) -/* 0B9B2C 800B8F2C 8D640004 */ lw $a0, 4($t3) -/* 0B9B30 800B8F30 01E5C821 */ addu $t9, $t7, $a1 -/* 0B9B34 800B8F34 846F0004 */ lh $t7, 4($v1) -/* 0B9B38 800B8F38 AC790008 */ sw $t9, 8($v1) -/* 0B9B3C 800B8F3C 01E5C021 */ addu $t8, $t7, $a1 -/* 0B9B40 800B8F40 A4780004 */ sh $t8, 4($v1) -/* 0B9B44 800B8F44 84620004 */ lh $v0, 4($v1) -/* 0B9B48 800B8F48 00000000 */ nop -/* 0B9B4C 800B8F4C 0044082A */ slt $at, $v0, $a0 -/* 0B9B50 800B8F50 14200007 */ bnez $at, .L800B8F70 -/* 0B9B54 800B8F54 00447023 */ subu $t6, $v0, $a0 -.L800B8F58: -/* 0B9B58 800B8F58 A46E0004 */ sh $t6, 4($v1) -/* 0B9B5C 800B8F5C 84620004 */ lh $v0, 4($v1) -/* 0B9B60 800B8F60 00000000 */ nop -/* 0B9B64 800B8F64 0044082A */ slt $at, $v0, $a0 -/* 0B9B68 800B8F68 1020FFFB */ beqz $at, .L800B8F58 -/* 0B9B6C 800B8F6C 00447023 */ subu $t6, $v0, $a0 -.L800B8F70: -/* 0B9B70 800B8F70 84D90010 */ lh $t9, 0x10($a2) -/* 0B9B74 800B8F74 12800017 */ beqz $s4, .L800B8FD4 -/* 0B9B78 800B8F78 A4790006 */ sh $t9, 6($v1) -/* 0B9B7C 800B8F7C 8D650000 */ lw $a1, ($t3) -/* 0B9B80 800B8F80 8C6F0008 */ lw $t7, 8($v1) -/* 0B9B84 800B8F84 0005C040 */ sll $t8, $a1, 1 -/* 0B9B88 800B8F88 270E0001 */ addiu $t6, $t8, 1 -/* 0B9B8C 800B8F8C 01C50019 */ multu $t6, $a1 -/* 0B9B90 800B8F90 846E0006 */ lh $t6, 6($v1) -/* 0B9B94 800B8F94 8D640004 */ lw $a0, 4($t3) -/* 0B9B98 800B8F98 0000C812 */ mflo $t9 -/* 0B9B9C 800B8F9C 01F9C021 */ addu $t8, $t7, $t9 -/* 0B9BA0 800B8FA0 01C57821 */ addu $t7, $t6, $a1 -/* 0B9BA4 800B8FA4 A46F0006 */ sh $t7, 6($v1) -/* 0B9BA8 800B8FA8 84620006 */ lh $v0, 6($v1) -/* 0B9BAC 800B8FAC AC780008 */ sw $t8, 8($v1) -/* 0B9BB0 800B8FB0 0044082A */ slt $at, $v0, $a0 -/* 0B9BB4 800B8FB4 14200007 */ bnez $at, .L800B8FD4 -/* 0B9BB8 800B8FB8 0044C823 */ subu $t9, $v0, $a0 -.L800B8FBC: -/* 0B9BBC 800B8FBC A4790006 */ sh $t9, 6($v1) -/* 0B9BC0 800B8FC0 84620006 */ lh $v0, 6($v1) -/* 0B9BC4 800B8FC4 00000000 */ nop -/* 0B9BC8 800B8FC8 0044082A */ slt $at, $v0, $a0 -/* 0B9BCC 800B8FCC 1020FFFB */ beqz $at, .L800B8FBC -/* 0B9BD0 800B8FD0 0044C823 */ subu $t9, $v0, $a0 -.L800B8FD4: -/* 0B9BD4 800B8FD4 24027FFF */ li $v0, 32767 -.L800B8FD8: -/* 0B9BD8 800B8FD8 24420001 */ addiu $v0, $v0, 1 -/* 0B9BDC 800B8FDC 0048082A */ slt $at, $v0, $t0 -/* 0B9BE0 800B8FE0 1420FFBC */ bnez $at, .L800B8ED4 -/* 0B9BE4 800B8FE4 00000000 */ nop -.L800B8FE8: -/* 0B9BE8 800B8FE8 25AD0008 */ addiu $t5, $t5, 8 -/* 0B9BEC 800B8FEC 29A10009 */ slti $at, $t5, 9 -/* 0B9BF0 800B8FF0 8D640024 */ lw $a0, 0x24($t3) -/* 0B9BF4 800B8FF4 14200004 */ bnez $at, .L800B9008 -/* 0B9BF8 800B8FF8 26B50001 */ addiu $s5, $s5, 1 -/* 0B9BFC 800B8FFC 25ADFFF0 */ addiu $t5, $t5, -0x10 -/* 0B9C00 800B9000 26730001 */ addiu $s3, $s3, 1 -/* 0B9C04 800B9004 254A0001 */ addiu $t2, $t2, 1 -.L800B9008: -/* 0B9C08 800B9008 02A4082A */ slt $at, $s5, $a0 -/* 0B9C0C 800B900C 1420FF88 */ bnez $at, .L800B8E30 -/* 0B9C10 800B9010 00000000 */ nop -.L800B9014: -/* 0B9C14 800B9014 26940010 */ addiu $s4, $s4, 0x10 -/* 0B9C18 800B9018 8FA30040 */ lw $v1, 0x40($sp) -/* 0B9C1C 800B901C 2A810011 */ slti $at, $s4, 0x11 -/* 0B9C20 800B9020 14200003 */ bnez $at, .L800B9030 -/* 0B9C24 800B9024 26D60001 */ addiu $s6, $s6, 1 -/* 0B9C28 800B9028 2694FFE0 */ addiu $s4, $s4, -0x20 -/* 0B9C2C 800B902C 26F70001 */ addiu $s7, $s7, 1 -.L800B9030: -/* 0B9C30 800B9030 02C4082A */ slt $at, $s6, $a0 -/* 0B9C34 800B9034 1420FF6D */ bnez $at, .L800B8DEC -/* 0B9C38 800B9038 00000000 */ nop -/* 0B9C3C 800B903C 1000006B */ b .L800B91EC -/* 0B9C40 800B9040 8FA4005C */ lw $a0, 0x5c($sp) -.L800B9044: -/* 0B9C44 800B9044 8D640024 */ lw $a0, 0x24($t3) -/* 0B9C48 800B9048 00003825 */ move $a3, $zero -/* 0B9C4C 800B904C 00041043 */ sra $v0, $a0, 1 -/* 0B9C50 800B9050 00A22823 */ subu $a1, $a1, $v0 -/* 0B9C54 800B9054 18800064 */ blez $a0, .L800B91E8 -/* 0B9C58 800B9058 02E2B823 */ subu $s7, $s7, $v0 -/* 0B9C5C 800B905C 3C1E8013 */ lui $fp, %hi(D_8012A0D8) # $fp, 0x8013 -/* 0B9C60 800B9060 3C12800E */ lui $s2, %hi(D_800E317C) # $s2, 0x800e -/* 0B9C64 800B9064 3C108013 */ lui $s0, %hi(D_8012A5E8) # $s0, 0x8013 -/* 0B9C68 800B9068 2610A5E8 */ addiu $s0, %lo(D_8012A5E8) # addiu $s0, $s0, -0x5a18 -/* 0B9C6C 800B906C 2652317C */ addiu $s2, %lo(D_800E317C) # addiu $s2, $s2, 0x317c -/* 0B9C70 800B9070 27DEA0D8 */ addiu $fp, %lo(D_8012A0D8) # addiu $fp, $fp, -0x5f28 -/* 0B9C74 800B9074 AFA5004C */ sw $a1, 0x4c($sp) -/* 0B9C78 800B9078 2411000C */ li $s1, 12 -/* 0B9C7C 800B907C 241F001C */ li $ra, 28 -.L800B9080: -/* 0B9C80 800B9080 06E00055 */ bltz $s7, .L800B91D8 -/* 0B9C84 800B9084 3C188013 */ lui $t8, %hi(D_8012A0DC) # $t8, 0x8013 -/* 0B9C88 800B9088 8F18A0DC */ lw $t8, %lo(D_8012A0DC)($t8) -/* 0B9C8C 800B908C 00000000 */ nop -/* 0B9C90 800B9090 02F8082A */ slt $at, $s7, $t8 -/* 0B9C94 800B9094 10200050 */ beqz $at, .L800B91D8 -/* 0B9C98 800B9098 00000000 */ nop -/* 0B9C9C 800B909C 8FCF0000 */ lw $t7, ($fp) -/* 0B9CA0 800B90A0 8FB3004C */ lw $s3, 0x4c($sp) -/* 0B9CA4 800B90A4 02EF0019 */ multu $s7, $t7 -/* 0B9CA8 800B90A8 0000A825 */ move $s5, $zero -/* 0B9CAC 800B90AC 0000C812 */ mflo $t9 -/* 0B9CB0 800B90B0 03335021 */ addu $t2, $t9, $s3 -/* 0B9CB4 800B90B4 18800048 */ blez $a0, .L800B91D8 -/* 0B9CB8 800B90B8 00000000 */ nop -.L800B90BC: -/* 0B9CBC 800B90BC 06600040 */ bltz $s3, .L800B91C0 -/* 0B9CC0 800B90C0 00000000 */ nop -/* 0B9CC4 800B90C4 8FD80000 */ lw $t8, ($fp) -/* 0B9CC8 800B90C8 00177880 */ sll $t7, $s7, 2 -/* 0B9CCC 800B90CC 0278082A */ slt $at, $s3, $t8 -/* 0B9CD0 800B90D0 1020003B */ beqz $at, .L800B91C0 -/* 0B9CD4 800B90D4 3C198013 */ lui $t9, 0x8013 -/* 0B9CD8 800B90D8 032FC821 */ addu $t9, $t9, $t7 -/* 0B9CDC 800B90DC 8F39A0E8 */ lw $t9, -0x5f18($t9) -/* 0B9CE0 800B90E0 240E0001 */ li $t6, 1 -/* 0B9CE4 800B90E4 026EC004 */ sllv $t8, $t6, $s3 -/* 0B9CE8 800B90E8 03387824 */ and $t7, $t9, $t8 -/* 0B9CEC 800B90EC 11E00034 */ beqz $t7, .L800B91C0 -/* 0B9CF0 800B90F0 00000000 */ nop -/* 0B9CF4 800B90F4 02C40019 */ multu $s6, $a0 -/* 0B9CF8 800B90F8 3C0E800E */ lui $t6, %hi(D_800E30E0) # $t6, 0x800e -/* 0B9CFC 800B90FC 8DCE30E0 */ lw $t6, %lo(D_800E30E0)($t6) -/* 0B9D00 800B9100 3C088013 */ lui $t0, %hi(D_8012A0E0) # $t0, 0x8013 -/* 0B9D04 800B9104 00001025 */ move $v0, $zero -/* 0B9D08 800B9108 3C09800E */ lui $t1, %hi(D_800E30D8) # $t1, 0x800e -/* 0B9D0C 800B910C 0000C812 */ mflo $t9 -/* 0B9D10 800B9110 0019C040 */ sll $t8, $t9, 1 -/* 0B9D14 800B9114 0015C840 */ sll $t9, $s5, 1 -/* 0B9D18 800B9118 01D87821 */ addu $t7, $t6, $t8 -/* 0B9D1C 800B911C 01F97021 */ addu $t6, $t7, $t9 -/* 0B9D20 800B9120 3C0F800E */ lui $t7, %hi(D_800E30D4) # $t7, 0x800e -/* 0B9D24 800B9124 8DEF30D4 */ lw $t7, %lo(D_800E30D4)($t7) -/* 0B9D28 800B9128 85D80000 */ lh $t8, ($t6) -/* 0B9D2C 800B912C 000AC880 */ sll $t9, $t2, 2 -/* 0B9D30 800B9130 01F97021 */ addu $t6, $t7, $t9 -/* 0B9D34 800B9134 ADD80000 */ sw $t8, ($t6) -/* 0B9D38 800B9138 8D08A0E0 */ lw $t0, %lo(D_8012A0E0)($t0) -/* 0B9D3C 800B913C 00000000 */ nop -/* 0B9D40 800B9140 1900001F */ blez $t0, .L800B91C0 -/* 0B9D44 800B9144 00000000 */ nop -/* 0B9D48 800B9148 8D2930D8 */ lw $t1, %lo(D_800E30D8)($t1) -/* 0B9D4C 800B914C 00000000 */ nop -.L800B9150: -/* 0B9D50 800B9150 005F0019 */ multu $v0, $ra -/* 0B9D54 800B9154 00007812 */ mflo $t7 -/* 0B9D58 800B9158 012F3021 */ addu $a2, $t1, $t7 -/* 0B9D5C 800B915C 8CD9000C */ lw $t9, 0xc($a2) -/* 0B9D60 800B9160 00000000 */ nop -/* 0B9D64 800B9164 15590012 */ bne $t2, $t9, .L800B91B0 -/* 0B9D68 800B9168 00000000 */ nop -/* 0B9D6C 800B916C 00F10019 */ multu $a3, $s1 -/* 0B9D70 800B9170 8E590000 */ lw $t9, ($s2) -/* 0B9D74 800B9174 24E70001 */ addiu $a3, $a3, 1 -/* 0B9D78 800B9178 0000C012 */ mflo $t8 -/* 0B9D7C 800B917C 02181821 */ addu $v1, $s0, $t8 -/* 0B9D80 800B9180 A4620000 */ sh $v0, ($v1) -/* 0B9D84 800B9184 00590019 */ multu $v0, $t9 -/* 0B9D88 800B9188 A4600002 */ sh $zero, 2($v1) -/* 0B9D8C 800B918C 84CE0012 */ lh $t6, 0x12($a2) -/* 0B9D90 800B9190 24027FFF */ li $v0, 32767 -/* 0B9D94 800B9194 A46E0004 */ sh $t6, 4($v1) -/* 0B9D98 800B9198 84CF0010 */ lh $t7, 0x10($a2) -/* 0B9D9C 800B919C 00000000 */ nop -/* 0B9DA0 800B91A0 A46F0006 */ sh $t7, 6($v1) -/* 0B9DA4 800B91A4 0000C012 */ mflo $t8 -/* 0B9DA8 800B91A8 AC780008 */ sw $t8, 8($v1) -/* 0B9DAC 800B91AC 00000000 */ nop -.L800B91B0: -/* 0B9DB0 800B91B0 24420001 */ addiu $v0, $v0, 1 -/* 0B9DB4 800B91B4 0048082A */ slt $at, $v0, $t0 -/* 0B9DB8 800B91B8 1420FFE5 */ bnez $at, .L800B9150 -/* 0B9DBC 800B91BC 00000000 */ nop -.L800B91C0: -/* 0B9DC0 800B91C0 8D640024 */ lw $a0, 0x24($t3) -/* 0B9DC4 800B91C4 26B50001 */ addiu $s5, $s5, 1 -/* 0B9DC8 800B91C8 02A4082A */ slt $at, $s5, $a0 -/* 0B9DCC 800B91CC 26730001 */ addiu $s3, $s3, 1 -/* 0B9DD0 800B91D0 1420FFBA */ bnez $at, .L800B90BC -/* 0B9DD4 800B91D4 254A0001 */ addiu $t2, $t2, 1 -.L800B91D8: -/* 0B9DD8 800B91D8 26D60001 */ addiu $s6, $s6, 1 -/* 0B9DDC 800B91DC 02C4082A */ slt $at, $s6, $a0 -/* 0B9DE0 800B91E0 1420FFA7 */ bnez $at, .L800B9080 -/* 0B9DE4 800B91E4 26F70001 */ addiu $s7, $s7, 1 -.L800B91E8: -/* 0B9DE8 800B91E8 8FA4005C */ lw $a0, 0x5c($sp) -.L800B91EC: -/* 0B9DEC 800B91EC 8FA50060 */ lw $a1, 0x60($sp) -/* 0B9DF0 800B91F0 0C02E8A2 */ jal func_800BA288 -/* 0B9DF4 800B91F4 00000000 */ nop -/* 0B9DF8 800B91F8 8FBF003C */ lw $ra, 0x3c($sp) -/* 0B9DFC 800B91FC 8FB00018 */ lw $s0, 0x18($sp) -/* 0B9E00 800B9200 8FB1001C */ lw $s1, 0x1c($sp) -/* 0B9E04 800B9204 8FB20020 */ lw $s2, 0x20($sp) -/* 0B9E08 800B9208 8FB30024 */ lw $s3, 0x24($sp) -/* 0B9E0C 800B920C 8FB40028 */ lw $s4, 0x28($sp) -/* 0B9E10 800B9210 8FB5002C */ lw $s5, 0x2c($sp) -/* 0B9E14 800B9214 8FB60030 */ lw $s6, 0x30($sp) -/* 0B9E18 800B9218 8FB70034 */ lw $s7, 0x34($sp) -/* 0B9E1C 800B921C 8FBE0038 */ lw $fp, 0x38($sp) -/* 0B9E20 800B9220 03E00008 */ jr $ra -/* 0B9E24 800B9224 27BD0050 */ addiu $sp, $sp, 0x50 - -glabel func_800B9228 -/* 0B9E28 800B9228 3C058013 */ lui $a1, %hi(D_8012A0E0) # $a1, 0x8013 -/* 0B9E2C 800B922C 8CA5A0E0 */ lw $a1, %lo(D_8012A0E0)($a1) -/* 0B9E30 800B9230 00001025 */ move $v0, $zero -/* 0B9E34 800B9234 18A00013 */ blez $a1, .L800B9284 -/* 0B9E38 800B9238 00001825 */ move $v1, $zero -/* 0B9E3C 800B923C 3C06800E */ lui $a2, %hi(D_800E30D8) # $a2, 0x800e -/* 0B9E40 800B9240 8CC630D8 */ lw $a2, %lo(D_800E30D8)($a2) -/* 0B9E44 800B9244 2407001C */ li $a3, 28 -/* 0B9E48 800B9248 8CCE0000 */ lw $t6, ($a2) -/* 0B9E4C 800B924C 00000000 */ nop -/* 0B9E50 800B9250 108E000C */ beq $a0, $t6, .L800B9284 -/* 0B9E54 800B9254 00000000 */ nop -.L800B9258: -/* 0B9E58 800B9258 24420001 */ addiu $v0, $v0, 1 -/* 0B9E5C 800B925C 0045082A */ slt $at, $v0, $a1 -/* 0B9E60 800B9260 10200008 */ beqz $at, .L800B9284 -/* 0B9E64 800B9264 00000000 */ nop -/* 0B9E68 800B9268 00470019 */ multu $v0, $a3 -/* 0B9E6C 800B926C 00007812 */ mflo $t7 -/* 0B9E70 800B9270 00CFC021 */ addu $t8, $a2, $t7 -/* 0B9E74 800B9274 8F190000 */ lw $t9, ($t8) -/* 0B9E78 800B9278 00000000 */ nop -/* 0B9E7C 800B927C 1499FFF6 */ bne $a0, $t9, .L800B9258 -/* 0B9E80 800B9280 00000000 */ nop -.L800B9284: -/* 0B9E84 800B9284 2407001C */ li $a3, 28 -/* 0B9E88 800B9288 00470019 */ multu $v0, $a3 -/* 0B9E8C 800B928C 3C08800E */ lui $t0, %hi(D_800E30D8) # $t0, 0x800e -/* 0B9E90 800B9290 8D0830D8 */ lw $t0, %lo(D_800E30D8)($t0) -/* 0B9E94 800B9294 3C0D800E */ lui $t5, %hi(D_800E30D4) # $t5, 0x800e -/* 0B9E98 800B9298 8DAD30D4 */ lw $t5, %lo(D_800E30D4)($t5) -/* 0B9E9C 800B929C 3C05800E */ lui $a1, %hi(D_800E30DC) # $a1, 0x800e -/* 0B9EA0 800B92A0 24A530DC */ addiu $a1, %lo(D_800E30DC) # addiu $a1, $a1, 0x30dc -/* 0B9EA4 800B92A4 3C018013 */ lui $at, 0x8013 -/* 0B9EA8 800B92A8 00004812 */ mflo $t1 -/* 0B9EAC 800B92AC 01095021 */ addu $t2, $t0, $t1 -/* 0B9EB0 800B92B0 8D4B000C */ lw $t3, 0xc($t2) -/* 0B9EB4 800B92B4 00000000 */ nop -/* 0B9EB8 800B92B8 000B6080 */ sll $t4, $t3, 2 -/* 0B9EBC 800B92BC 01AC7021 */ addu $t6, $t5, $t4 -/* 0B9EC0 800B92C0 8DCF0000 */ lw $t7, ($t6) -/* 0B9EC4 800B92C4 00000000 */ nop -/* 0B9EC8 800B92C8 11E00008 */ beqz $t7, .L800B92EC -/* 0B9ECC 800B92CC 00000000 */ nop -/* 0B9ED0 800B92D0 8CA40000 */ lw $a0, ($a1) -/* 0B9ED4 800B92D4 24030001 */ li $v1, 1 -/* 0B9ED8 800B92D8 0004C040 */ sll $t8, $a0, 1 -/* 0B9EDC 800B92DC 00380821 */ addu $at, $at, $t8 -/* 0B9EE0 800B92E0 A422A1E8 */ sh $v0, -0x5e18($at) -/* 0B9EE4 800B92E4 24990001 */ addiu $t9, $a0, 1 -/* 0B9EE8 800B92E8 ACB90000 */ sw $t9, ($a1) -.L800B92EC: -/* 0B9EEC 800B92EC 03E00008 */ jr $ra -/* 0B9EF0 800B92F0 00601025 */ move $v0, $v1 - -glabel func_800B92F4 -/* 0B9EF4 800B92F4 27BDFF50 */ addiu $sp, $sp, -0xb0 -/* 0B9EF8 800B92F8 AFB5003C */ sw $s5, 0x3c($sp) -/* 0B9EFC 800B92FC 3C158013 */ lui $s5, %hi(D_80129FC8) # $s5, 0x8013 -/* 0B9F00 800B9300 26B59FC8 */ addiu $s5, %lo(D_80129FC8) # addiu $s5, $s5, -0x6038 -/* 0B9F04 800B9304 8EA30000 */ lw $v1, ($s5) -/* 0B9F08 800B9308 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0B9F0C 800B930C 24620001 */ addiu $v0, $v1, 1 -/* 0B9F10 800B9310 00420019 */ multu $v0, $v0 -/* 0B9F14 800B9314 44812000 */ mtc1 $at, $f4 -/* 0B9F18 800B9318 3C01437F */ li $at, 0x437F0000 # 255.000000 -/* 0B9F1C 800B931C 000478C0 */ sll $t7, $a0, 3 -/* 0B9F20 800B9320 3C18800E */ lui $t8, %hi(D_800E30D8) # $t8, 0x800e -/* 0B9F24 800B9324 44815000 */ mtc1 $at, $f10 -/* 0B9F28 800B9328 C6A60044 */ lwc1 $f6, 0x44($s5) -/* 0B9F2C 800B932C 8F1830D8 */ lw $t8, %lo(D_800E30D8)($t8) -/* 0B9F30 800B9330 01E47823 */ subu $t7, $t7, $a0 -/* 0B9F34 800B9334 3C0A8013 */ lui $t2, %hi(D_8012A5E8) # $t2, 0x8013 -/* 0B9F38 800B9338 854AA5E8 */ lh $t2, %lo(D_8012A5E8)($t2) -/* 0B9F3C 800B933C 000F7880 */ sll $t7, $t7, 2 -/* 0B9F40 800B9340 46062201 */ sub.s $f8, $f4, $f6 -/* 0B9F44 800B9344 E7B70020 */ swc1 $f23, 0x20($sp) -/* 0B9F48 800B9348 E7B60024 */ swc1 $f22, 0x24($sp) -/* 0B9F4C 800B934C 00004812 */ mflo $t1 -/* 0B9F50 800B9350 2401FFFF */ li $at, -1 -/* 0B9F54 800B9354 01F8C821 */ addu $t9, $t7, $t8 -/* 0B9F58 800B9358 AFBF004C */ sw $ra, 0x4c($sp) -/* 0B9F5C 800B935C AFBE0048 */ sw $fp, 0x48($sp) -/* 0B9F60 800B9360 AFB70044 */ sw $s7, 0x44($sp) -/* 0B9F64 800B9364 AFB60040 */ sw $s6, 0x40($sp) -/* 0B9F68 800B9368 AFB40038 */ sw $s4, 0x38($sp) -/* 0B9F6C 800B936C AFB30034 */ sw $s3, 0x34($sp) -/* 0B9F70 800B9370 AFB20030 */ sw $s2, 0x30($sp) -/* 0B9F74 800B9374 AFB1002C */ sw $s1, 0x2c($sp) -/* 0B9F78 800B9378 AFB00028 */ sw $s0, 0x28($sp) -/* 0B9F7C 800B937C E7B50018 */ swc1 $f21, 0x18($sp) -/* 0B9F80 800B9380 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 0B9F84 800B9384 AFA400B0 */ sw $a0, 0xb0($sp) -/* 0B9F88 800B9388 AFA500B4 */ sw $a1, 0xb4($sp) -/* 0B9F8C 800B938C AFB9006C */ sw $t9, 0x6c($sp) -/* 0B9F90 800B9390 AFA90090 */ sw $t1, 0x90($sp) -/* 0B9F94 800B9394 114100F4 */ beq $t2, $at, .L800B9768 -/* 0B9F98 800B9398 460A4583 */ div.s $f22, $f8, $f10 -/* 0B9F9C 800B939C 3C0B8013 */ lui $t3, %hi(D_8012A5E8) # $t3, 0x8013 -/* 0B9FA0 800B93A0 256BA5E8 */ addiu $t3, %lo(D_8012A5E8) # addiu $t3, $t3, -0x5a18 -/* 0B9FA4 800B93A4 3C168013 */ lui $s6, %hi(D_8012A5E8) # $s6, 0x8013 -/* 0B9FA8 800B93A8 85620000 */ lh $v0, ($t3) -/* 0B9FAC 800B93AC 26D6A5E8 */ addiu $s6, %lo(D_8012A5E8) # addiu $s6, $s6, -0x5a18 -/* 0B9FB0 800B93B0 241E00FF */ li $fp, 255 -.L800B93B4: -/* 0B9FB4 800B93B4 8FAC00B0 */ lw $t4, 0xb0($sp) -/* 0B9FB8 800B93B8 8FAE006C */ lw $t6, 0x6c($sp) -/* 0B9FBC 800B93BC 158200E6 */ bne $t4, $v0, .L800B9758 -/* 0B9FC0 800B93C0 3C0D800E */ lui $t5, %hi(D_800E30D4) # $t5, 0x800e -/* 0B9FC4 800B93C4 3C098013 */ lui $t1, %hi(D_8012A018) # $t1, 0x8013 -/* 0B9FC8 800B93C8 8D29A018 */ lw $t1, %lo(D_8012A018)($t1) -/* 0B9FCC 800B93CC 8FAB00B4 */ lw $t3, 0xb4($sp) -/* 0B9FD0 800B93D0 8DCF000C */ lw $t7, 0xc($t6) -/* 0B9FD4 800B93D4 8DAD30D4 */ lw $t5, %lo(D_800E30D4)($t5) -/* 0B9FD8 800B93D8 00095080 */ sll $t2, $t1, 2 -/* 0B9FDC 800B93DC 000B6080 */ sll $t4, $t3, 2 -/* 0B9FE0 800B93E0 014C7021 */ addu $t6, $t2, $t4 -/* 0B9FE4 800B93E4 3C06800E */ lui $a2, 0x800e -/* 0B9FE8 800B93E8 000FC080 */ sll $t8, $t7, 2 -/* 0B9FEC 800B93EC 8EA50028 */ lw $a1, 0x28($s5) -/* 0B9FF0 800B93F0 00CE3021 */ addu $a2, $a2, $t6 -/* 0B9FF4 800B93F4 3C07800E */ lui $a3, %hi(D_800E30E4) # $a3, 0x800e -/* 0B9FF8 800B93F8 01B8C821 */ addu $t9, $t5, $t8 -/* 0B9FFC 800B93FC 8F240000 */ lw $a0, ($t9) -/* 0BA000 800B9400 8CE730E4 */ lw $a3, %lo(D_800E30E4)($a3) -/* 0BA004 800B9404 8CC63070 */ lw $a2, 0x3070($a2) -/* 0BA008 800B9408 AFA000AC */ sw $zero, 0xac($sp) -/* 0BA00C 800B940C 10A00014 */ beqz $a1, .L800B9460 -/* 0BA010 800B9410 0000B825 */ move $s7, $zero -/* 0BA014 800B9414 86C20002 */ lh $v0, 2($s6) -/* 0BA018 800B9418 00000000 */ nop -/* 0BA01C 800B941C 30490001 */ andi $t1, $v0, 1 -/* 0BA020 800B9420 01230019 */ multu $t1, $v1 -/* 0BA024 800B9424 304A0002 */ andi $t2, $v0, 2 -/* 0BA028 800B9428 000A6043 */ sra $t4, $t2, 1 -/* 0BA02C 800B942C 000278C0 */ sll $t7, $v0, 3 -/* 0BA030 800B9430 01E46806 */ srlv $t5, $a0, $t7 -/* 0BA034 800B9434 31B800FF */ andi $t8, $t5, 0xff -/* 0BA038 800B9438 2719FFFF */ addiu $t9, $t8, -1 -/* 0BA03C 800B943C AFB90098 */ sw $t9, 0x98($sp) -/* 0BA040 800B9440 00005812 */ mflo $t3 -/* 0BA044 800B9444 AFAB008C */ sw $t3, 0x8c($sp) -/* 0BA048 800B9448 00000000 */ nop -/* 0BA04C 800B944C 01830019 */ multu $t4, $v1 -/* 0BA050 800B9450 00007012 */ mflo $t6 -/* 0BA054 800B9454 AFAE0088 */ sw $t6, 0x88($sp) -/* 0BA058 800B9458 10000007 */ b .L800B9478 -/* 0BA05C 800B945C 8FB80090 */ lw $t8, 0x90($sp) -.L800B9460: -/* 0BA060 800B9460 308F00FF */ andi $t7, $a0, 0xff -/* 0BA064 800B9464 25EDFFFF */ addiu $t5, $t7, -1 -/* 0BA068 800B9468 AFAD0098 */ sw $t5, 0x98($sp) -/* 0BA06C 800B946C AFA0008C */ sw $zero, 0x8c($sp) -/* 0BA070 800B9470 AFA00088 */ sw $zero, 0x88($sp) -/* 0BA074 800B9474 8FB80090 */ lw $t8, 0x90($sp) -.L800B9478: -/* 0BA078 800B9478 8FB90098 */ lw $t9, 0x98($sp) -/* 0BA07C 800B947C 86C40006 */ lh $a0, 6($s6) -/* 0BA080 800B9480 03190019 */ multu $t8, $t9 -/* 0BA084 800B9484 00196040 */ sll $t4, $t9, 1 -/* 0BA088 800B9488 00EC7021 */ addu $t6, $a3, $t4 -/* 0BA08C 800B948C 00004812 */ mflo $t1 -/* 0BA090 800B9490 00095880 */ sll $t3, $t1, 2 -/* 0BA094 800B9494 01695821 */ addu $t3, $t3, $t1 -/* 0BA098 800B9498 000B5840 */ sll $t3, $t3, 1 -/* 0BA09C 800B949C 00CB5021 */ addu $t2, $a2, $t3 -/* 0BA0A0 800B94A0 AFAA0070 */ sw $t2, 0x70($sp) -/* 0BA0A4 800B94A4 85CF0000 */ lh $t7, ($t6) -/* 0BA0A8 800B94A8 046000AB */ bltz $v1, .L800B9758 -/* 0BA0AC 800B94AC AFAF0098 */ sw $t7, 0x98($sp) -/* 0BA0B0 800B94B0 8EA20004 */ lw $v0, 4($s5) -/* 0BA0B4 800B94B4 00000000 */ nop -.L800B94B8: -/* 0BA0B8 800B94B8 00820019 */ multu $a0, $v0 -/* 0BA0BC 800B94BC 86D10004 */ lh $s1, 4($s6) -/* 0BA0C0 800B94C0 3C0B800E */ lui $t3, %hi(D_800E304C) # $t3, 0x800e -/* 0BA0C4 800B94C4 256B304C */ addiu $t3, %lo(D_800E304C) # addiu $t3, $t3, 0x304c -/* 0BA0C8 800B94C8 00009825 */ move $s3, $zero -/* 0BA0CC 800B94CC 0017A080 */ sll $s4, $s7, 2 -/* 0BA0D0 800B94D0 00006812 */ mflo $t5 -/* 0BA0D4 800B94D4 01B19021 */ addu $s2, $t5, $s1 -/* 0BA0D8 800B94D8 0460008E */ bltz $v1, .L800B9714 -/* 0BA0DC 800B94DC 00176880 */ sll $t5, $s7, 2 -/* 0BA0E0 800B94E0 8FB900B4 */ lw $t9, 0xb4($sp) -/* 0BA0E4 800B94E4 8FB80098 */ lw $t8, 0x98($sp) -/* 0BA0E8 800B94E8 8FAA006C */ lw $t2, 0x6c($sp) -/* 0BA0EC 800B94EC 8FAF0070 */ lw $t7, 0x70($sp) -/* 0BA0F0 800B94F0 01B76821 */ addu $t5, $t5, $s7 -/* 0BA0F4 800B94F4 00196043 */ sra $t4, $t9, 1 -/* 0BA0F8 800B94F8 000C7080 */ sll $t6, $t4, 2 -/* 0BA0FC 800B94FC 000D6840 */ sll $t5, $t5, 1 -/* 0BA100 800B9500 00184880 */ sll $t1, $t8, 2 -/* 0BA104 800B9504 012B3821 */ addu $a3, $t1, $t3 -/* 0BA108 800B9508 AFA40084 */ sw $a0, 0x84($sp) -/* 0BA10C 800B950C 014E4021 */ addu $t0, $t2, $t6 -/* 0BA110 800B9510 01ED8021 */ addu $s0, $t7, $t5 -.L800B9514: -/* 0BA114 800B9514 3C18800E */ lui $t8, %hi(D_800E3044) # $t8, 0x800e -/* 0BA118 800B9518 8F183044 */ lw $t8, %lo(D_800E3044)($t8) -/* 0BA11C 800B951C 00124880 */ sll $t1, $s2, 2 -/* 0BA120 800B9520 03091821 */ addu $v1, $t8, $t1 -/* 0BA124 800B9524 3C02800E */ lui $v0, %hi(D_800E3040) # $v0, 0x800e -/* 0BA128 800B9528 8C423040 */ lw $v0, %lo(D_800E3040)($v0) -/* 0BA12C 800B952C 846B0002 */ lh $t3, 2($v1) -/* 0BA130 800B9530 846A0000 */ lh $t2, ($v1) -/* 0BA134 800B9534 000BC880 */ sll $t9, $t3, 2 -/* 0BA138 800B9538 000A7080 */ sll $t6, $t2, 2 -/* 0BA13C 800B953C 004E7821 */ addu $t7, $v0, $t6 -/* 0BA140 800B9540 00596021 */ addu $t4, $v0, $t9 -/* 0BA144 800B9544 C5900000 */ lwc1 $f16, ($t4) -/* 0BA148 800B9548 C5F20000 */ lwc1 $f18, ($t7) -/* 0BA14C 800B954C C6A60040 */ lwc1 $f6, 0x40($s5) -/* 0BA150 800B9550 46128100 */ add.s $f4, $f16, $f18 -/* 0BA154 800B9554 3C0D800E */ lui $t5, %hi(D_800E3188) # $t5, 0x800e -/* 0BA158 800B9558 8DAD3188 */ lw $t5, %lo(D_800E3188)($t5) -/* 0BA15C 800B955C 46062502 */ mul.s $f20, $f4, $f6 -/* 0BA160 800B9560 19A0000D */ blez $t5, .L800B9598 -/* 0BA164 800B9564 00000000 */ nop -/* 0BA168 800B9568 8FB8008C */ lw $t8, 0x8c($sp) -/* 0BA16C 800B956C 8FA900AC */ lw $t1, 0xac($sp) -/* 0BA170 800B9570 8FAB0088 */ lw $t3, 0x88($sp) -/* 0BA174 800B9574 8FA400B0 */ lw $a0, 0xb0($sp) -/* 0BA178 800B9578 AFA7005C */ sw $a3, 0x5c($sp) -/* 0BA17C 800B957C AFA80050 */ sw $t0, 0x50($sp) -/* 0BA180 800B9580 02782821 */ addu $a1, $s3, $t8 -/* 0BA184 800B9584 0C02FBF1 */ jal func_800BEFC4 -/* 0BA188 800B9588 012B3021 */ addu $a2, $t1, $t3 -/* 0BA18C 800B958C 8FA7005C */ lw $a3, 0x5c($sp) -/* 0BA190 800B9590 8FA80050 */ lw $t0, 0x50($sp) -/* 0BA194 800B9594 4600A500 */ add.s $f20, $f20, $f0 -.L800B9598: -/* 0BA198 800B9598 3C0A800E */ lui $t2, %hi(D_800E3178) # $t2, 0x800e -/* 0BA19C 800B959C 8D4A3178 */ lw $t2, %lo(D_800E3178)($t2) -/* 0BA1A0 800B95A0 8EC30008 */ lw $v1, 8($s6) -/* 0BA1A4 800B95A4 8CF90000 */ lw $t9, ($a3) -/* 0BA1A8 800B95A8 006A7021 */ addu $t6, $v1, $t2 -/* 0BA1AC 800B95AC 91C20000 */ lbu $v0, ($t6) -/* 0BA1B0 800B95B0 03346021 */ addu $t4, $t9, $s4 -/* 0BA1B4 800B95B4 C5880000 */ lwc1 $f8, ($t4) -/* 0BA1B8 800B95B8 00027840 */ sll $t7, $v0, 1 -/* 0BA1BC 800B95BC 29E100FF */ slti $at, $t7, 0xff -/* 0BA1C0 800B95C0 246D0001 */ addiu $t5, $v1, 1 -/* 0BA1C4 800B95C4 4608A502 */ mul.s $f20, $f20, $f8 -/* 0BA1C8 800B95C8 AECD0008 */ sw $t5, 8($s6) -/* 0BA1CC 800B95CC 10200008 */ beqz $at, .L800B95F0 -/* 0BA1D0 800B95D0 01E01025 */ move $v0, $t7 -/* 0BA1D4 800B95D4 44828000 */ mtc1 $v0, $f16 -/* 0BA1D8 800B95D8 C6AA0044 */ lwc1 $f10, 0x44($s5) -/* 0BA1DC 800B95DC 468084A0 */ cvt.s.w $f18, $f16 -/* 0BA1E0 800B95E0 46169102 */ mul.s $f4, $f18, $f22 -/* 0BA1E4 800B95E4 46045180 */ add.s $f6, $f10, $f4 -/* 0BA1E8 800B95E8 4606A502 */ mul.s $f20, $f20, $f6 -/* 0BA1EC 800B95EC 00000000 */ nop -.L800B95F0: -/* 0BA1F0 800B95F0 C6A80048 */ lwc1 $f8, 0x48($s5) -/* 0BA1F4 800B95F4 26F70001 */ addiu $s7, $s7, 1 -/* 0BA1F8 800B95F8 4608A402 */ mul.s $f16, $f20, $f8 -/* 0BA1FC 800B95FC 26940004 */ addiu $s4, $s4, 4 -/* 0BA200 800B9600 26310001 */ addiu $s1, $s1, 1 -/* 0BA204 800B9604 4458F800 */ cfc1 $t8, $31 -/* 0BA208 800B9608 00000000 */ nop -/* 0BA20C 800B960C 37010003 */ ori $at, $t8, 3 -/* 0BA210 800B9610 38210002 */ xori $at, $at, 2 -/* 0BA214 800B9614 44C1F800 */ ctc1 $at, $31 -/* 0BA218 800B9618 00000000 */ nop -/* 0BA21C 800B961C 460084A4 */ cvt.w.s $f18, $f16 -/* 0BA220 800B9620 44099000 */ mfc1 $t1, $f18 -/* 0BA224 800B9624 44D8F800 */ ctc1 $t8, $31 -/* 0BA228 800B9628 00491021 */ addu $v0, $v0, $t1 -/* 0BA22C 800B962C 28410100 */ slti $at, $v0, 0x100 -/* 0BA230 800B9630 14200003 */ bnez $at, .L800B9640 -/* 0BA234 800B9634 00000000 */ nop -/* 0BA238 800B9638 10000004 */ b .L800B964C -/* 0BA23C 800B963C 03C01025 */ move $v0, $fp -.L800B9640: -/* 0BA240 800B9640 04410002 */ bgez $v0, .L800B964C -/* 0BA244 800B9644 00000000 */ nop -/* 0BA248 800B9648 00001025 */ move $v0, $zero -.L800B964C: -/* 0BA24C 800B964C 86D90002 */ lh $t9, 2($s6) -/* 0BA250 800B9650 03C25823 */ subu $t3, $fp, $v0 -/* 0BA254 800B9654 01196021 */ addu $t4, $t0, $t9 -/* 0BA258 800B9658 918A0014 */ lbu $t2, 0x14($t4) -/* 0BA25C 800B965C 444DF800 */ cfc1 $t5, $31 -/* 0BA260 800B9660 016A0019 */ multu $t3, $t2 -/* 0BA264 800B9664 35A10003 */ ori $at, $t5, 3 -/* 0BA268 800B9668 38210002 */ xori $at, $at, 2 -/* 0BA26C 800B966C 44C1F800 */ ctc1 $at, $31 -/* 0BA270 800B9670 00000000 */ nop -/* 0BA274 800B9674 4600A2A4 */ cvt.w.s $f10, $f20 -/* 0BA278 800B9678 44185000 */ mfc1 $t8, $f10 -/* 0BA27C 800B967C 44CDF800 */ ctc1 $t5, $31 -/* 0BA280 800B9680 A6180002 */ sh $t8, 2($s0) -/* 0BA284 800B9684 00007012 */ mflo $t6 -/* 0BA288 800B9688 000E79C3 */ sra $t7, $t6, 7 -/* 0BA28C 800B968C 004F1021 */ addu $v0, $v0, $t7 -/* 0BA290 800B9690 284100C0 */ slti $at, $v0, 0xc0 -/* 0BA294 800B9694 10200003 */ beqz $at, .L800B96A4 -/* 0BA298 800B9698 03C21823 */ subu $v1, $fp, $v0 -/* 0BA29C 800B969C 10000003 */ b .L800B96AC -/* 0BA2A0 800B96A0 03C01825 */ move $v1, $fp -.L800B96A4: -/* 0BA2A4 800B96A4 00034880 */ sll $t1, $v1, 2 -/* 0BA2A8 800B96A8 312300FF */ andi $v1, $t1, 0xff -.L800B96AC: -/* 0BA2AC 800B96AC 28410040 */ slti $at, $v0, 0x40 -/* 0BA2B0 800B96B0 A2030006 */ sb $v1, 6($s0) -/* 0BA2B4 800B96B4 A2030007 */ sb $v1, 7($s0) -/* 0BA2B8 800B96B8 10200005 */ beqz $at, .L800B96D0 -/* 0BA2BC 800B96BC A2030008 */ sb $v1, 8($s0) -/* 0BA2C0 800B96C0 00021880 */ sll $v1, $v0, 2 -/* 0BA2C4 800B96C4 306C00FF */ andi $t4, $v1, 0xff -/* 0BA2C8 800B96C8 10000002 */ b .L800B96D4 -/* 0BA2CC 800B96CC 01801825 */ move $v1, $t4 -.L800B96D0: -/* 0BA2D0 800B96D0 03C01825 */ move $v1, $fp -.L800B96D4: -/* 0BA2D4 800B96D4 A2030009 */ sb $v1, 9($s0) -/* 0BA2D8 800B96D8 8EA20004 */ lw $v0, 4($s5) -/* 0BA2DC 800B96DC 2610000A */ addiu $s0, $s0, 0xa -/* 0BA2E0 800B96E0 0222082A */ slt $at, $s1, $v0 -/* 0BA2E4 800B96E4 14200003 */ bnez $at, .L800B96F4 -/* 0BA2E8 800B96E8 26520001 */ addiu $s2, $s2, 1 -/* 0BA2EC 800B96EC 02228823 */ subu $s1, $s1, $v0 -/* 0BA2F0 800B96F0 02429023 */ subu $s2, $s2, $v0 -.L800B96F4: -/* 0BA2F4 800B96F4 8EA30000 */ lw $v1, ($s5) -/* 0BA2F8 800B96F8 26730001 */ addiu $s3, $s3, 1 -/* 0BA2FC 800B96FC 0073082A */ slt $at, $v1, $s3 -/* 0BA300 800B9700 1020FF84 */ beqz $at, .L800B9514 -/* 0BA304 800B9704 00000000 */ nop -/* 0BA308 800B9708 8EA50028 */ lw $a1, 0x28($s5) -/* 0BA30C 800B970C 8FA40084 */ lw $a0, 0x84($sp) -/* 0BA310 800B9710 00000000 */ nop -.L800B9714: -/* 0BA314 800B9714 24840001 */ addiu $a0, $a0, 1 -/* 0BA318 800B9718 0082082A */ slt $at, $a0, $v0 -/* 0BA31C 800B971C 14200002 */ bnez $at, .L800B9728 -/* 0BA320 800B9720 00000000 */ nop -/* 0BA324 800B9724 00822023 */ subu $a0, $a0, $v0 -.L800B9728: -/* 0BA328 800B9728 10A00006 */ beqz $a1, .L800B9744 -/* 0BA32C 800B972C 8FAE00AC */ lw $t6, 0xac($sp) -/* 0BA330 800B9730 8ECB0008 */ lw $t3, 8($s6) -/* 0BA334 800B9734 00000000 */ nop -/* 0BA338 800B9738 01635021 */ addu $t2, $t3, $v1 -/* 0BA33C 800B973C AECA0008 */ sw $t2, 8($s6) -/* 0BA340 800B9740 8FAE00AC */ lw $t6, 0xac($sp) -.L800B9744: -/* 0BA344 800B9744 00000000 */ nop -/* 0BA348 800B9748 25CF0001 */ addiu $t7, $t6, 1 -/* 0BA34C 800B974C 006F082A */ slt $at, $v1, $t7 -/* 0BA350 800B9750 1020FF59 */ beqz $at, .L800B94B8 -/* 0BA354 800B9754 AFAF00AC */ sw $t7, 0xac($sp) -.L800B9758: -/* 0BA358 800B9758 86C2000C */ lh $v0, 0xc($s6) -/* 0BA35C 800B975C 2401FFFF */ li $at, -1 -/* 0BA360 800B9760 1441FF14 */ bne $v0, $at, .L800B93B4 -/* 0BA364 800B9764 26D6000C */ addiu $s6, $s6, 0xc -.L800B9768: -/* 0BA368 800B9768 8FBF004C */ lw $ra, 0x4c($sp) -/* 0BA36C 800B976C C7B50018 */ lwc1 $f21, 0x18($sp) -/* 0BA370 800B9770 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 0BA374 800B9774 C7B70020 */ lwc1 $f23, 0x20($sp) -/* 0BA378 800B9778 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 0BA37C 800B977C 8FB00028 */ lw $s0, 0x28($sp) -/* 0BA380 800B9780 8FB1002C */ lw $s1, 0x2c($sp) -/* 0BA384 800B9784 8FB20030 */ lw $s2, 0x30($sp) -/* 0BA388 800B9788 8FB30034 */ lw $s3, 0x34($sp) -/* 0BA38C 800B978C 8FB40038 */ lw $s4, 0x38($sp) -/* 0BA390 800B9790 8FB5003C */ lw $s5, 0x3c($sp) -/* 0BA394 800B9794 8FB60040 */ lw $s6, 0x40($sp) -/* 0BA398 800B9798 8FB70044 */ lw $s7, 0x44($sp) -/* 0BA39C 800B979C 8FBE0048 */ lw $fp, 0x48($sp) -/* 0BA3A0 800B97A0 03E00008 */ jr $ra -/* 0BA3A4 800B97A4 27BD00B0 */ addiu $sp, $sp, 0xb0 - -glabel func_800B97A8 -/* 0BA3A8 800B97A8 27BDFF48 */ addiu $sp, $sp, -0xb8 -/* 0BA3AC 800B97AC AFB50054 */ sw $s5, 0x54($sp) -/* 0BA3B0 800B97B0 3C158013 */ lui $s5, %hi(D_80129FC8) # $s5, 0x8013 -/* 0BA3B4 800B97B4 26B59FC8 */ addiu $s5, %lo(D_80129FC8) # addiu $s5, $s5, -0x6038 -/* 0BA3B8 800B97B8 8EA20000 */ lw $v0, ($s5) -/* 0BA3BC 800B97BC 3C018013 */ lui $at, %hi(D_8012A020) # $at, 0x8013 -/* 0BA3C0 800B97C0 24430001 */ addiu $v1, $v0, 1 -/* 0BA3C4 800B97C4 00630019 */ multu $v1, $v1 -/* 0BA3C8 800B97C8 C420A020 */ lwc1 $f0, %lo(D_8012A020)($at) -/* 0BA3CC 800B97CC 3C018013 */ lui $at, %hi(D_8012A01C) # $at, 0x8013 -/* 0BA3D0 800B97D0 C422A01C */ lwc1 $f2, %lo(D_8012A01C)($at) -/* 0BA3D4 800B97D4 46000100 */ add.s $f4, $f0, $f0 -/* 0BA3D8 800B97D8 E7BB0030 */ swc1 $f27, 0x30($sp) -/* 0BA3DC 800B97DC 46021300 */ add.s $f12, $f2, $f2 -/* 0BA3E0 800B97E0 E7BA0034 */ swc1 $f26, 0x34($sp) -/* 0BA3E4 800B97E4 E7B60024 */ swc1 $f22, 0x24($sp) -/* 0BA3E8 800B97E8 4480B000 */ mtc1 $zero, $f22 -/* 0BA3EC 800B97EC 460C2681 */ sub.s $f26, $f4, $f12 -/* 0BA3F0 800B97F0 0004C0C0 */ sll $t8, $a0, 3 -/* 0BA3F4 800B97F4 3C19800E */ lui $t9, %hi(D_800E30D8) # $t9, 0x800e -/* 0BA3F8 800B97F8 8F3930D8 */ lw $t9, %lo(D_800E30D8)($t9) -/* 0BA3FC 800B97FC 0304C023 */ subu $t8, $t8, $a0 -/* 0BA400 800B9800 4616D03E */ c.le.s $f26, $f22 -/* 0BA404 800B9804 0018C080 */ sll $t8, $t8, 2 -/* 0BA408 800B9808 00007012 */ mflo $t6 -/* 0BA40C 800B980C 03194821 */ addu $t1, $t8, $t9 -/* 0BA410 800B9810 AFBF0064 */ sw $ra, 0x64($sp) -/* 0BA414 800B9814 AFBE0060 */ sw $fp, 0x60($sp) -/* 0BA418 800B9818 AFB7005C */ sw $s7, 0x5c($sp) -/* 0BA41C 800B981C AFB60058 */ sw $s6, 0x58($sp) -/* 0BA420 800B9820 AFB40050 */ sw $s4, 0x50($sp) -/* 0BA424 800B9824 AFB3004C */ sw $s3, 0x4c($sp) -/* 0BA428 800B9828 AFB20048 */ sw $s2, 0x48($sp) -/* 0BA42C 800B982C AFB10044 */ sw $s1, 0x44($sp) -/* 0BA430 800B9830 AFB00040 */ sw $s0, 0x40($sp) -/* 0BA434 800B9834 E7BD0038 */ swc1 $f29, 0x38($sp) -/* 0BA438 800B9838 E7BC003C */ swc1 $f28, 0x3c($sp) -/* 0BA43C 800B983C E7B90028 */ swc1 $f25, 0x28($sp) -/* 0BA440 800B9840 E7B8002C */ swc1 $f24, 0x2c($sp) -/* 0BA444 800B9844 E7B70020 */ swc1 $f23, 0x20($sp) -/* 0BA448 800B9848 E7B50018 */ swc1 $f21, 0x18($sp) -/* 0BA44C 800B984C E7B4001C */ swc1 $f20, 0x1c($sp) -/* 0BA450 800B9850 AFA400B8 */ sw $a0, 0xb8($sp) -/* 0BA454 800B9854 AFA500BC */ sw $a1, 0xbc($sp) -/* 0BA458 800B9858 00003825 */ move $a3, $zero -/* 0BA45C 800B985C AFAE00A0 */ sw $t6, 0xa0($sp) -/* 0BA460 800B9860 45000005 */ bc1f .L800B9878 -/* 0BA464 800B9864 AFA90078 */ sw $t1, 0x78($sp) -/* 0BA468 800B9868 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0BA46C 800B986C 4481C000 */ mtc1 $at, $f24 -/* 0BA470 800B9870 10000005 */ b .L800B9888 -/* 0BA474 800B9874 4600B706 */ mov.s $f28, $f22 -.L800B9878: -/* 0BA478 800B9878 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0BA47C 800B987C 4481C000 */ mtc1 $at, $f24 -/* 0BA480 800B9880 00000000 */ nop -/* 0BA484 800B9884 461AC703 */ div.s $f28, $f24, $f26 -.L800B9888: -/* 0BA488 800B9888 3C0A8013 */ lui $t2, %hi(D_8012A5E8) # $t2, 0x8013 -/* 0BA48C 800B988C 854AA5E8 */ lh $t2, %lo(D_8012A5E8)($t2) -/* 0BA490 800B9890 2401FFFF */ li $at, -1 -/* 0BA494 800B9894 114100CA */ beq $t2, $at, .L800B9BC0 -/* 0BA498 800B9898 46006686 */ mov.s $f26, $f12 -/* 0BA49C 800B989C 00075880 */ sll $t3, $a3, 2 -/* 0BA4A0 800B98A0 01675823 */ subu $t3, $t3, $a3 -/* 0BA4A4 800B98A4 3C0C8013 */ lui $t4, %hi(D_8012A5E8) # $t4, 0x8013 -/* 0BA4A8 800B98A8 258CA5E8 */ addiu $t4, %lo(D_8012A5E8) # addiu $t4, $t4, -0x5a18 -/* 0BA4AC 800B98AC 000B5880 */ sll $t3, $t3, 2 -/* 0BA4B0 800B98B0 016C3021 */ addu $a2, $t3, $t4 -/* 0BA4B4 800B98B4 84C30000 */ lh $v1, ($a2) -/* 0BA4B8 800B98B8 00000000 */ nop -.L800B98BC: -/* 0BA4BC 800B98BC 8FAD00B8 */ lw $t5, 0xb8($sp) -/* 0BA4C0 800B98C0 8FAF0078 */ lw $t7, 0x78($sp) -/* 0BA4C4 800B98C4 15A300BA */ bne $t5, $v1, .L800B9BB0 -/* 0BA4C8 800B98C8 3C0E800E */ lui $t6, %hi(D_800E30D4) # $t6, 0x800e -/* 0BA4CC 800B98CC 3C0A8013 */ lui $t2, %hi(D_8012A018) # $t2, 0x8013 -/* 0BA4D0 800B98D0 8D4AA018 */ lw $t2, %lo(D_8012A018)($t2) -/* 0BA4D4 800B98D4 8FAC00BC */ lw $t4, 0xbc($sp) -/* 0BA4D8 800B98D8 8DF8000C */ lw $t8, 0xc($t7) -/* 0BA4DC 800B98DC 8DCE30D4 */ lw $t6, %lo(D_800E30D4)($t6) -/* 0BA4E0 800B98E0 000A5880 */ sll $t3, $t2, 2 -/* 0BA4E4 800B98E4 000C6880 */ sll $t5, $t4, 2 -/* 0BA4E8 800B98E8 016D7821 */ addu $t7, $t3, $t5 -/* 0BA4EC 800B98EC 3C07800E */ lui $a3, 0x800e -/* 0BA4F0 800B98F0 0018C880 */ sll $t9, $t8, 2 -/* 0BA4F4 800B98F4 8EA50028 */ lw $a1, 0x28($s5) -/* 0BA4F8 800B98F8 00EF3821 */ addu $a3, $a3, $t7 -/* 0BA4FC 800B98FC 3C08800E */ lui $t0, %hi(D_800E30E4) # $t0, 0x800e -/* 0BA500 800B9900 01D94821 */ addu $t1, $t6, $t9 -/* 0BA504 800B9904 8D240000 */ lw $a0, ($t1) -/* 0BA508 800B9908 8D0830E4 */ lw $t0, %lo(D_800E30E4)($t0) -/* 0BA50C 800B990C 8CE73070 */ lw $a3, 0x3070($a3) -/* 0BA510 800B9910 0000F025 */ move $fp, $zero -/* 0BA514 800B9914 10A00014 */ beqz $a1, .L800B9968 -/* 0BA518 800B9918 0000B025 */ move $s6, $zero -/* 0BA51C 800B991C 84C30002 */ lh $v1, 2($a2) -/* 0BA520 800B9920 00000000 */ nop -/* 0BA524 800B9924 306A0001 */ andi $t2, $v1, 1 -/* 0BA528 800B9928 01420019 */ multu $t2, $v0 -/* 0BA52C 800B992C 306B0002 */ andi $t3, $v1, 2 -/* 0BA530 800B9930 000B6843 */ sra $t5, $t3, 1 -/* 0BA534 800B9934 0003C0C0 */ sll $t8, $v1, 3 -/* 0BA538 800B9938 03047006 */ srlv $t6, $a0, $t8 -/* 0BA53C 800B993C 31D900FF */ andi $t9, $t6, 0xff -/* 0BA540 800B9940 2729FFFF */ addiu $t1, $t9, -1 -/* 0BA544 800B9944 AFA900A8 */ sw $t1, 0xa8($sp) -/* 0BA548 800B9948 00006012 */ mflo $t4 -/* 0BA54C 800B994C AFAC009C */ sw $t4, 0x9c($sp) -/* 0BA550 800B9950 00000000 */ nop -/* 0BA554 800B9954 01A20019 */ multu $t5, $v0 -/* 0BA558 800B9958 00007812 */ mflo $t7 -/* 0BA55C 800B995C AFAF0098 */ sw $t7, 0x98($sp) -/* 0BA560 800B9960 10000007 */ b .L800B9980 -/* 0BA564 800B9964 8FB900A0 */ lw $t9, 0xa0($sp) -.L800B9968: -/* 0BA568 800B9968 309800FF */ andi $t8, $a0, 0xff -/* 0BA56C 800B996C 270EFFFF */ addiu $t6, $t8, -1 -/* 0BA570 800B9970 AFAE00A8 */ sw $t6, 0xa8($sp) -/* 0BA574 800B9974 AFA0009C */ sw $zero, 0x9c($sp) -/* 0BA578 800B9978 AFA00098 */ sw $zero, 0x98($sp) -/* 0BA57C 800B997C 8FB900A0 */ lw $t9, 0xa0($sp) -.L800B9980: -/* 0BA580 800B9980 8FA900A8 */ lw $t1, 0xa8($sp) -/* 0BA584 800B9984 84C40006 */ lh $a0, 6($a2) -/* 0BA588 800B9988 03290019 */ multu $t9, $t1 -/* 0BA58C 800B998C 00096840 */ sll $t5, $t1, 1 -/* 0BA590 800B9990 010D7821 */ addu $t7, $t0, $t5 -/* 0BA594 800B9994 00005012 */ mflo $t2 -/* 0BA598 800B9998 000A6080 */ sll $t4, $t2, 2 -/* 0BA59C 800B999C 018A6021 */ addu $t4, $t4, $t2 -/* 0BA5A0 800B99A0 000C6040 */ sll $t4, $t4, 1 -/* 0BA5A4 800B99A4 00EC5821 */ addu $t3, $a3, $t4 -/* 0BA5A8 800B99A8 AFAB007C */ sw $t3, 0x7c($sp) -/* 0BA5AC 800B99AC 85F80000 */ lh $t8, ($t7) -/* 0BA5B0 800B99B0 0440007F */ bltz $v0, .L800B9BB0 -/* 0BA5B4 800B99B4 AFB800A8 */ sw $t8, 0xa8($sp) -/* 0BA5B8 800B99B8 8EA30004 */ lw $v1, 4($s5) -/* 0BA5BC 800B99BC 00000000 */ nop -.L800B99C0: -/* 0BA5C0 800B99C0 00830019 */ multu $a0, $v1 -/* 0BA5C4 800B99C4 84D10004 */ lh $s1, 4($a2) -/* 0BA5C8 800B99C8 00164880 */ sll $t1, $s6, 2 -/* 0BA5CC 800B99CC 01364821 */ addu $t1, $t1, $s6 -/* 0BA5D0 800B99D0 3C0C800E */ lui $t4, %hi(D_800E304C) # $t4, 0x800e -/* 0BA5D4 800B99D4 258C304C */ addiu $t4, %lo(D_800E304C) # addiu $t4, $t4, 0x304c -/* 0BA5D8 800B99D8 00094840 */ sll $t1, $t1, 1 -/* 0BA5DC 800B99DC 00009825 */ move $s3, $zero -/* 0BA5E0 800B99E0 0016A080 */ sll $s4, $s6, 2 -/* 0BA5E4 800B99E4 00007012 */ mflo $t6 -/* 0BA5E8 800B99E8 01D19021 */ addu $s2, $t6, $s1 -/* 0BA5EC 800B99EC 04400063 */ bltz $v0, .L800B9B7C -/* 0BA5F0 800B99F0 00000000 */ nop -/* 0BA5F4 800B99F4 8FB900A8 */ lw $t9, 0xa8($sp) -/* 0BA5F8 800B99F8 8FAB007C */ lw $t3, 0x7c($sp) -/* 0BA5FC 800B99FC 00195080 */ sll $t2, $t9, 2 -/* 0BA600 800B9A00 014CB821 */ addu $s7, $t2, $t4 -/* 0BA604 800B9A04 AFA6006C */ sw $a2, 0x6c($sp) -/* 0BA608 800B9A08 AFA40094 */ sw $a0, 0x94($sp) -/* 0BA60C 800B9A0C 01698021 */ addu $s0, $t3, $t1 -.L800B9A10: -/* 0BA610 800B9A10 3C0D800E */ lui $t5, %hi(D_800E3044) # $t5, 0x800e -/* 0BA614 800B9A14 8DAD3044 */ lw $t5, %lo(D_800E3044)($t5) -/* 0BA618 800B9A18 00127880 */ sll $t7, $s2, 2 -/* 0BA61C 800B9A1C 01AF1821 */ addu $v1, $t5, $t7 -/* 0BA620 800B9A20 3C02800E */ lui $v0, %hi(D_800E3040) # $v0, 0x800e -/* 0BA624 800B9A24 8C423040 */ lw $v0, %lo(D_800E3040)($v0) -/* 0BA628 800B9A28 84780002 */ lh $t8, 2($v1) -/* 0BA62C 800B9A2C 846A0000 */ lh $t2, ($v1) -/* 0BA630 800B9A30 00187080 */ sll $t6, $t8, 2 -/* 0BA634 800B9A34 000A6080 */ sll $t4, $t2, 2 -/* 0BA638 800B9A38 004C5821 */ addu $t3, $v0, $t4 -/* 0BA63C 800B9A3C 004EC821 */ addu $t9, $v0, $t6 -/* 0BA640 800B9A40 C7260000 */ lwc1 $f6, ($t9) -/* 0BA644 800B9A44 C5680000 */ lwc1 $f8, ($t3) -/* 0BA648 800B9A48 C6B00040 */ lwc1 $f16, 0x40($s5) -/* 0BA64C 800B9A4C 46083280 */ add.s $f10, $f6, $f8 -/* 0BA650 800B9A50 3C09800E */ lui $t1, %hi(D_800E3188) # $t1, 0x800e -/* 0BA654 800B9A54 8D293188 */ lw $t1, %lo(D_800E3188)($t1) -/* 0BA658 800B9A58 46105502 */ mul.s $f20, $f10, $f16 -/* 0BA65C 800B9A5C 19200008 */ blez $t1, .L800B9A80 -/* 0BA660 800B9A60 00000000 */ nop -/* 0BA664 800B9A64 8FAD009C */ lw $t5, 0x9c($sp) -/* 0BA668 800B9A68 8FAF0098 */ lw $t7, 0x98($sp) -/* 0BA66C 800B9A6C 8FA400B8 */ lw $a0, 0xb8($sp) -/* 0BA670 800B9A70 026D2821 */ addu $a1, $s3, $t5 -/* 0BA674 800B9A74 0C02FBF1 */ jal func_800BEFC4 -/* 0BA678 800B9A78 03CF3021 */ addu $a2, $fp, $t7 -/* 0BA67C 800B9A7C 4600A500 */ add.s $f20, $f20, $f0 -.L800B9A80: -/* 0BA680 800B9A80 8EF80000 */ lw $t8, ($s7) -/* 0BA684 800B9A84 00000000 */ nop -/* 0BA688 800B9A88 03147021 */ addu $t6, $t8, $s4 -/* 0BA68C 800B9A8C C5D20000 */ lwc1 $f18, ($t6) -/* 0BA690 800B9A90 00000000 */ nop -/* 0BA694 800B9A94 4612A502 */ mul.s $f20, $f20, $f18 -/* 0BA698 800B9A98 4459F800 */ cfc1 $t9, $31 -/* 0BA69C 800B9A9C 00000000 */ nop -/* 0BA6A0 800B9AA0 37210003 */ ori $at, $t9, 3 -/* 0BA6A4 800B9AA4 38210002 */ xori $at, $at, 2 -/* 0BA6A8 800B9AA8 44C1F800 */ ctc1 $at, $31 -/* 0BA6AC 800B9AAC 00000000 */ nop -/* 0BA6B0 800B9AB0 4600A124 */ cvt.w.s $f4, $f20 -/* 0BA6B4 800B9AB4 44D9F800 */ ctc1 $t9, $31 -/* 0BA6B8 800B9AB8 440A2000 */ mfc1 $t2, $f4 -/* 0BA6BC 800B9ABC 461AA181 */ sub.s $f6, $f20, $f26 -/* 0BA6C0 800B9AC0 A60A0002 */ sh $t2, 2($s0) -/* 0BA6C4 800B9AC4 461C3502 */ mul.s $f20, $f6, $f28 -/* 0BA6C8 800B9AC8 4614C03C */ c.lt.s $f24, $f20 -/* 0BA6CC 800B9ACC 00000000 */ nop -/* 0BA6D0 800B9AD0 45000003 */ bc1f .L800B9AE0 -/* 0BA6D4 800B9AD4 00000000 */ nop -/* 0BA6D8 800B9AD8 10000006 */ b .L800B9AF4 -/* 0BA6DC 800B9ADC 4600C506 */ mov.s $f20, $f24 -.L800B9AE0: -/* 0BA6E0 800B9AE0 4616A03C */ c.lt.s $f20, $f22 -/* 0BA6E4 800B9AE4 00000000 */ nop -/* 0BA6E8 800B9AE8 45000002 */ bc1f .L800B9AF4 -/* 0BA6EC 800B9AEC 00000000 */ nop -/* 0BA6F0 800B9AF0 4600B506 */ mov.s $f20, $f22 -.L800B9AF4: -/* 0BA6F4 800B9AF4 4614B202 */ mul.s $f8, $f22, $f20 -/* 0BA6F8 800B9AF8 240B00FF */ li $t3, 255 -/* 0BA6FC 800B9AFC A20B0009 */ sb $t3, 9($s0) -/* 0BA700 800B9B00 26310001 */ addiu $s1, $s1, 1 -/* 0BA704 800B9B04 444CF800 */ cfc1 $t4, $31 -/* 0BA708 800B9B08 26D60001 */ addiu $s6, $s6, 1 -/* 0BA70C 800B9B0C 35810003 */ ori $at, $t4, 3 -/* 0BA710 800B9B10 38210002 */ xori $at, $at, 2 -/* 0BA714 800B9B14 44C1F800 */ ctc1 $at, $31 -/* 0BA718 800B9B18 26940004 */ addiu $s4, $s4, 4 -/* 0BA71C 800B9B1C 460042A4 */ cvt.w.s $f10, $f8 -/* 0BA720 800B9B20 2610000A */ addiu $s0, $s0, 0xa -/* 0BA724 800B9B24 44025000 */ mfc1 $v0, $f10 -/* 0BA728 800B9B28 44CCF800 */ ctc1 $t4, $31 -/* 0BA72C 800B9B2C 244200FF */ addiu $v0, $v0, 0xff -/* 0BA730 800B9B30 A202FFFC */ sb $v0, -4($s0) -/* 0BA734 800B9B34 A202FFFD */ sb $v0, -3($s0) -/* 0BA738 800B9B38 A202FFFE */ sb $v0, -2($s0) -/* 0BA73C 800B9B3C 8EA30004 */ lw $v1, 4($s5) -/* 0BA740 800B9B40 26520001 */ addiu $s2, $s2, 1 -/* 0BA744 800B9B44 0223082A */ slt $at, $s1, $v1 -/* 0BA748 800B9B48 14200003 */ bnez $at, .L800B9B58 -/* 0BA74C 800B9B4C 00000000 */ nop -/* 0BA750 800B9B50 02238823 */ subu $s1, $s1, $v1 -/* 0BA754 800B9B54 02439023 */ subu $s2, $s2, $v1 -.L800B9B58: -/* 0BA758 800B9B58 8EA20000 */ lw $v0, ($s5) -/* 0BA75C 800B9B5C 26730001 */ addiu $s3, $s3, 1 -/* 0BA760 800B9B60 0053082A */ slt $at, $v0, $s3 -/* 0BA764 800B9B64 1020FFAA */ beqz $at, .L800B9A10 -/* 0BA768 800B9B68 00000000 */ nop -/* 0BA76C 800B9B6C 8EA50028 */ lw $a1, 0x28($s5) -/* 0BA770 800B9B70 8FA6006C */ lw $a2, 0x6c($sp) -/* 0BA774 800B9B74 8FA40094 */ lw $a0, 0x94($sp) -/* 0BA778 800B9B78 00000000 */ nop -.L800B9B7C: -/* 0BA77C 800B9B7C 24840001 */ addiu $a0, $a0, 1 -/* 0BA780 800B9B80 0083082A */ slt $at, $a0, $v1 -/* 0BA784 800B9B84 14200002 */ bnez $at, .L800B9B90 -/* 0BA788 800B9B88 27DE0001 */ addiu $fp, $fp, 1 -/* 0BA78C 800B9B8C 00832023 */ subu $a0, $a0, $v1 -.L800B9B90: -/* 0BA790 800B9B90 10A00005 */ beqz $a1, .L800B9BA8 -/* 0BA794 800B9B94 005E082A */ slt $at, $v0, $fp -/* 0BA798 800B9B98 8CC90008 */ lw $t1, 8($a2) -/* 0BA79C 800B9B9C 00000000 */ nop -/* 0BA7A0 800B9BA0 01226821 */ addu $t5, $t1, $v0 -/* 0BA7A4 800B9BA4 ACCD0008 */ sw $t5, 8($a2) -.L800B9BA8: -/* 0BA7A8 800B9BA8 1020FF85 */ beqz $at, .L800B99C0 -/* 0BA7AC 800B9BAC 00000000 */ nop -.L800B9BB0: -/* 0BA7B0 800B9BB0 84C3000C */ lh $v1, 0xc($a2) -/* 0BA7B4 800B9BB4 2401FFFF */ li $at, -1 -/* 0BA7B8 800B9BB8 1461FF40 */ bne $v1, $at, .L800B98BC -/* 0BA7BC 800B9BBC 24C6000C */ addiu $a2, $a2, 0xc -.L800B9BC0: -/* 0BA7C0 800B9BC0 8FBF0064 */ lw $ra, 0x64($sp) -/* 0BA7C4 800B9BC4 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 0BA7C8 800B9BC8 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 0BA7CC 800B9BCC C7B70020 */ lwc1 $f23, 0x20($sp) -/* 0BA7D0 800B9BD0 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 0BA7D4 800B9BD4 C7B90028 */ lwc1 $f25, 0x28($sp) -/* 0BA7D8 800B9BD8 C7B8002C */ lwc1 $f24, 0x2c($sp) -/* 0BA7DC 800B9BDC C7BB0030 */ lwc1 $f27, 0x30($sp) -/* 0BA7E0 800B9BE0 C7BA0034 */ lwc1 $f26, 0x34($sp) -/* 0BA7E4 800B9BE4 C7BD0038 */ lwc1 $f29, 0x38($sp) -/* 0BA7E8 800B9BE8 C7BC003C */ lwc1 $f28, 0x3c($sp) -/* 0BA7EC 800B9BEC 8FB00040 */ lw $s0, 0x40($sp) -/* 0BA7F0 800B9BF0 8FB10044 */ lw $s1, 0x44($sp) -/* 0BA7F4 800B9BF4 8FB20048 */ lw $s2, 0x48($sp) -/* 0BA7F8 800B9BF8 8FB3004C */ lw $s3, 0x4c($sp) -/* 0BA7FC 800B9BFC 8FB40050 */ lw $s4, 0x50($sp) -/* 0BA800 800B9C00 8FB50054 */ lw $s5, 0x54($sp) -/* 0BA804 800B9C04 8FB60058 */ lw $s6, 0x58($sp) -/* 0BA808 800B9C08 8FB7005C */ lw $s7, 0x5c($sp) -/* 0BA80C 800B9C0C 8FBE0060 */ lw $fp, 0x60($sp) -/* 0BA810 800B9C10 03E00008 */ jr $ra -/* 0BA814 800B9C14 27BD00B8 */ addiu $sp, $sp, 0xb8 - -glabel func_800B9C18 -/* 0BA818 800B9C18 3C098013 */ lui $t1, %hi(D_8012A018) # $t1, 0x8013 -/* 0BA81C 800B9C1C 2529A018 */ addiu $t1, %lo(D_8012A018) # addiu $t1, $t1, -0x5fe8 -/* 0BA820 800B9C20 3C0B8013 */ lui $t3, %hi(D_80129FC8) # $t3, 0x8013 -/* 0BA824 800B9C24 8D2E0000 */ lw $t6, ($t1) -/* 0BA828 800B9C28 256B9FC8 */ addiu $t3, %lo(D_80129FC8) # addiu $t3, $t3, -0x6038 -/* 0BA82C 800B9C2C 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 0BA830 800B9C30 8D620004 */ lw $v0, 4($t3) -/* 0BA834 800B9C34 240F0001 */ li $t7, 1 -/* 0BA838 800B9C38 AFB1001C */ sw $s1, 0x1c($sp) -/* 0BA83C 800B9C3C 01EEC023 */ subu $t8, $t7, $t6 -/* 0BA840 800B9C40 00808825 */ move $s1, $a0 -/* 0BA844 800B9C44 AFBF0024 */ sw $ra, 0x24($sp) -/* 0BA848 800B9C48 AFB20020 */ sw $s2, 0x20($sp) -/* 0BA84C 800B9C4C AFB00018 */ sw $s0, 0x18($sp) -/* 0BA850 800B9C50 AD380000 */ sw $t8, ($t1) -/* 0BA854 800B9C54 00005025 */ move $t2, $zero -/* 0BA858 800B9C58 1840003B */ blez $v0, .L800B9D48 -/* 0BA85C 800B9C5C 00004025 */ move $t0, $zero -/* 0BA860 800B9C60 3C06800E */ lui $a2, %hi(D_800E3044) # $a2, 0x800e -/* 0BA864 800B9C64 24C63044 */ addiu $a2, %lo(D_800E3044) # addiu $a2, $a2, 0x3044 -.L800B9C68: -/* 0BA868 800B9C68 18400033 */ blez $v0, .L800B9D38 -/* 0BA86C 800B9C6C 00003825 */ move $a3, $zero -/* 0BA870 800B9C70 8CD90000 */ lw $t9, ($a2) -/* 0BA874 800B9C74 00082880 */ sll $a1, $t0, 2 -/* 0BA878 800B9C78 03251821 */ addu $v1, $t9, $a1 -.L800B9C7C: -/* 0BA87C 800B9C7C 846F0000 */ lh $t7, ($v1) -/* 0BA880 800B9C80 24E70001 */ addiu $a3, $a3, 1 -/* 0BA884 800B9C84 01F17021 */ addu $t6, $t7, $s1 -/* 0BA888 800B9C88 A46E0000 */ sh $t6, ($v1) -/* 0BA88C 800B9C8C 8CD80000 */ lw $t8, ($a2) -/* 0BA890 800B9C90 8D620020 */ lw $v0, 0x20($t3) -/* 0BA894 800B9C94 03051821 */ addu $v1, $t8, $a1 -/* 0BA898 800B9C98 84640000 */ lh $a0, ($v1) -/* 0BA89C 800B9C9C 25080001 */ addiu $t0, $t0, 1 -/* 0BA8A0 800B9CA0 0082082A */ slt $at, $a0, $v0 -/* 0BA8A4 800B9CA4 1420000A */ bnez $at, .L800B9CD0 -/* 0BA8A8 800B9CA8 0082C823 */ subu $t9, $a0, $v0 -.L800B9CAC: -/* 0BA8AC 800B9CAC A4790000 */ sh $t9, ($v1) -/* 0BA8B0 800B9CB0 8CCF0000 */ lw $t7, ($a2) -/* 0BA8B4 800B9CB4 8D620020 */ lw $v0, 0x20($t3) -/* 0BA8B8 800B9CB8 01E51821 */ addu $v1, $t7, $a1 -/* 0BA8BC 800B9CBC 84640000 */ lh $a0, ($v1) -/* 0BA8C0 800B9CC0 00000000 */ nop -/* 0BA8C4 800B9CC4 0082082A */ slt $at, $a0, $v0 -/* 0BA8C8 800B9CC8 1020FFF8 */ beqz $at, .L800B9CAC -/* 0BA8CC 800B9CCC 0082C823 */ subu $t9, $a0, $v0 -.L800B9CD0: -/* 0BA8D0 800B9CD0 846E0002 */ lh $t6, 2($v1) -/* 0BA8D4 800B9CD4 00000000 */ nop -/* 0BA8D8 800B9CD8 01D1C021 */ addu $t8, $t6, $s1 -/* 0BA8DC 800B9CDC A4780002 */ sh $t8, 2($v1) -/* 0BA8E0 800B9CE0 8CD90000 */ lw $t9, ($a2) -/* 0BA8E4 800B9CE4 8D620020 */ lw $v0, 0x20($t3) -/* 0BA8E8 800B9CE8 03251821 */ addu $v1, $t9, $a1 -/* 0BA8EC 800B9CEC 84640002 */ lh $a0, 2($v1) -/* 0BA8F0 800B9CF0 00000000 */ nop -/* 0BA8F4 800B9CF4 0082082A */ slt $at, $a0, $v0 -/* 0BA8F8 800B9CF8 1420000A */ bnez $at, .L800B9D24 -/* 0BA8FC 800B9CFC 00827823 */ subu $t7, $a0, $v0 -.L800B9D00: -/* 0BA900 800B9D00 A46F0002 */ sh $t7, 2($v1) -/* 0BA904 800B9D04 8CCE0000 */ lw $t6, ($a2) -/* 0BA908 800B9D08 8D620020 */ lw $v0, 0x20($t3) -/* 0BA90C 800B9D0C 01C51821 */ addu $v1, $t6, $a1 -/* 0BA910 800B9D10 84640002 */ lh $a0, 2($v1) -/* 0BA914 800B9D14 00000000 */ nop -/* 0BA918 800B9D18 0082082A */ slt $at, $a0, $v0 -/* 0BA91C 800B9D1C 1020FFF8 */ beqz $at, .L800B9D00 -/* 0BA920 800B9D20 00827823 */ subu $t7, $a0, $v0 -.L800B9D24: -/* 0BA924 800B9D24 8D620004 */ lw $v0, 4($t3) -/* 0BA928 800B9D28 24A50004 */ addiu $a1, $a1, 4 -/* 0BA92C 800B9D2C 00E2082A */ slt $at, $a3, $v0 -/* 0BA930 800B9D30 1420FFD2 */ bnez $at, .L800B9C7C -/* 0BA934 800B9D34 24630004 */ addiu $v1, $v1, 4 -.L800B9D38: -/* 0BA938 800B9D38 254A0001 */ addiu $t2, $t2, 1 -/* 0BA93C 800B9D3C 0142082A */ slt $at, $t2, $v0 -/* 0BA940 800B9D40 1420FFC9 */ bnez $at, .L800B9C68 -/* 0BA944 800B9D44 00000000 */ nop -.L800B9D48: -/* 0BA948 800B9D48 3C05800E */ lui $a1, %hi(D_800E30D0) # $a1, 0x800e -/* 0BA94C 800B9D4C 8CA530D0 */ lw $a1, %lo(D_800E30D0)($a1) -/* 0BA950 800B9D50 3C048013 */ lui $a0, %hi(D_8012A09C) # $a0, 0x8013 -/* 0BA954 800B9D54 94B90014 */ lhu $t9, 0x14($a1) -/* 0BA958 800B9D58 2484A09C */ addiu $a0, %lo(D_8012A09C) # addiu $a0, $a0, -0x5f64 -/* 0BA95C 800B9D5C 03310019 */ multu $t9, $s1 -/* 0BA960 800B9D60 8C980000 */ lw $t8, ($a0) -/* 0BA964 800B9D64 3C08800E */ lui $t0, %hi(D_800E3048) # $t0, 0x800e -/* 0BA968 800B9D68 3C078013 */ lui $a3, %hi(D_8012A090) # $a3, 0x8013 -/* 0BA96C 800B9D6C 24E7A090 */ addiu $a3, %lo(D_8012A090) # addiu $a3, $a3, -0x5f70 -/* 0BA970 800B9D70 25083048 */ addiu $t0, %lo(D_800E3048) # addiu $t0, $t0, 0x3048 -/* 0BA974 800B9D74 00006825 */ move $t5, $zero -/* 0BA978 800B9D78 00007812 */ mflo $t7 -/* 0BA97C 800B9D7C 030F1021 */ addu $v0, $t8, $t7 -/* 0BA980 800B9D80 04410003 */ bgez $v0, .L800B9D90 -/* 0BA984 800B9D84 AC820000 */ sw $v0, ($a0) -/* 0BA988 800B9D88 1000000C */ b .L800B9DBC -/* 0BA98C 800B9D8C AC800000 */ sw $zero, ($a0) -.L800B9D90: -/* 0BA990 800B9D90 94A30012 */ lhu $v1, 0x12($a1) -/* 0BA994 800B9D94 00000000 */ nop -/* 0BA998 800B9D98 0043082A */ slt $at, $v0, $v1 -/* 0BA99C 800B9D9C 14200007 */ bnez $at, .L800B9DBC -/* 0BA9A0 800B9DA0 0043C823 */ subu $t9, $v0, $v1 -.L800B9DA4: -/* 0BA9A4 800B9DA4 AC990000 */ sw $t9, ($a0) -/* 0BA9A8 800B9DA8 94A30012 */ lhu $v1, 0x12($a1) -/* 0BA9AC 800B9DAC 03201025 */ move $v0, $t9 -/* 0BA9B0 800B9DB0 0323082A */ slt $at, $t9, $v1 -/* 0BA9B4 800B9DB4 1020FFFB */ beqz $at, .L800B9DA4 -/* 0BA9B8 800B9DB8 0043C823 */ subu $t9, $v0, $v1 -.L800B9DBC: -/* 0BA9BC 800B9DBC 8D780038 */ lw $t8, 0x38($t3) -/* 0BA9C0 800B9DC0 3C0A8013 */ lui $t2, %hi(D_8012A084) # $t2, 0x8013 -/* 0BA9C4 800B9DC4 03110019 */ multu $t8, $s1 -/* 0BA9C8 800B9DC8 254AA084 */ addiu $t2, %lo(D_8012A084) # addiu $t2, $t2, -0x5f7c -/* 0BA9CC 800B9DCC 8D4E0000 */ lw $t6, ($t2) -/* 0BA9D0 800B9DD0 3C188013 */ lui $t8, %hi(D_8012A094) # $t8, 0x8013 -/* 0BA9D4 800B9DD4 8F18A094 */ lw $t8, %lo(D_8012A094)($t8) -/* 0BA9D8 800B9DD8 3C028013 */ lui $v0, %hi(D_8012A088) # $v0, 0x8013 -/* 0BA9DC 800B9DDC 2442A088 */ addiu $v0, %lo(D_8012A088) # addiu $v0, $v0, -0x5f78 -/* 0BA9E0 800B9DE0 8D640000 */ lw $a0, ($t3) -/* 0BA9E4 800B9DE4 3C058013 */ lui $a1, %hi(D_8012A08C) # $a1, 0x8013 -/* 0BA9E8 800B9DE8 24A5A08C */ addiu $a1, %lo(D_8012A08C) # addiu $a1, $a1, -0x5f74 -/* 0BA9EC 800B9DEC 00009025 */ move $s2, $zero -/* 0BA9F0 800B9DF0 00008025 */ move $s0, $zero -/* 0BA9F4 800B9DF4 00007812 */ mflo $t7 -/* 0BA9F8 800B9DF8 01EEC821 */ addu $t9, $t7, $t6 -/* 0BA9FC 800B9DFC 8D6E003C */ lw $t6, 0x3c($t3) -/* 0BAA00 800B9E00 03387824 */ and $t7, $t9, $t8 -/* 0BAA04 800B9E04 01D10019 */ multu $t6, $s1 -/* 0BAA08 800B9E08 8C580000 */ lw $t8, ($v0) -/* 0BAA0C 800B9E0C AD4F0000 */ sw $t7, ($t2) -/* 0BAA10 800B9E10 3C0E8013 */ lui $t6, %hi(D_8012A098) # $t6, 0x8013 -/* 0BAA14 800B9E14 8DCEA098 */ lw $t6, %lo(D_8012A098)($t6) -/* 0BAA18 800B9E18 0000C812 */ mflo $t9 -/* 0BAA1C 800B9E1C 03387821 */ addu $t7, $t9, $t8 -/* 0BAA20 800B9E20 01EE3024 */ and $a2, $t7, $t6 -/* 0BAA24 800B9E24 0480001A */ bltz $a0, .L800B9E90 -/* 0BAA28 800B9E28 AC460000 */ sw $a2, ($v0) -.L800B9E2C: -/* 0BAA2C 800B9E2C 8D430000 */ lw $v1, ($t2) -/* 0BAA30 800B9E30 04800010 */ bltz $a0, .L800B9E74 -/* 0BAA34 800B9E34 00006025 */ move $t4, $zero -/* 0BAA38 800B9E38 00101080 */ sll $v0, $s0, 2 -.L800B9E3C: -/* 0BAA3C 800B9E3C 8D180000 */ lw $t8, ($t0) -/* 0BAA40 800B9E40 258C0001 */ addiu $t4, $t4, 1 -/* 0BAA44 800B9E44 03027821 */ addu $t7, $t8, $v0 -/* 0BAA48 800B9E48 A5E30000 */ sh $v1, ($t7) -/* 0BAA4C 800B9E4C 8D0E0000 */ lw $t6, ($t0) -/* 0BAA50 800B9E50 26100001 */ addiu $s0, $s0, 1 -/* 0BAA54 800B9E54 01C2C821 */ addu $t9, $t6, $v0 -/* 0BAA58 800B9E58 A7260002 */ sh $a2, 2($t9) -/* 0BAA5C 800B9E5C 8D640000 */ lw $a0, ($t3) -/* 0BAA60 800B9E60 8CB80000 */ lw $t8, ($a1) -/* 0BAA64 800B9E64 008C082A */ slt $at, $a0, $t4 -/* 0BAA68 800B9E68 24420004 */ addiu $v0, $v0, 4 -/* 0BAA6C 800B9E6C 1020FFF3 */ beqz $at, .L800B9E3C -/* 0BAA70 800B9E70 00781821 */ addu $v1, $v1, $t8 -.L800B9E74: -/* 0BAA74 800B9E74 8CEF0000 */ lw $t7, ($a3) -/* 0BAA78 800B9E78 26520001 */ addiu $s2, $s2, 1 -/* 0BAA7C 800B9E7C 0092082A */ slt $at, $a0, $s2 -/* 0BAA80 800B9E80 1020FFEA */ beqz $at, .L800B9E2C -/* 0BAA84 800B9E84 00CF3021 */ addu $a2, $a2, $t7 -/* 0BAA88 800B9E88 00009025 */ move $s2, $zero -/* 0BAA8C 800B9E8C 00008025 */ move $s0, $zero -.L800B9E90: -/* 0BAA90 800B9E90 3C0E8013 */ lui $t6, %hi(D_8012A078) # $t6, 0x8013 -/* 0BAA94 800B9E94 8DCEA078 */ lw $t6, %lo(D_8012A078)($t6) -/* 0BAA98 800B9E98 3C08800E */ lui $t0, %hi(D_800E3048) # $t0, 0x800e -/* 0BAA9C 800B9E9C 24010002 */ li $at, 2 -/* 0BAAA0 800B9EA0 11C10003 */ beq $t6, $at, .L800B9EB0 -/* 0BAAA4 800B9EA4 25083048 */ addiu $t0, %lo(D_800E3048) # addiu $t0, $t0, 0x3048 -/* 0BAAA8 800B9EA8 10000002 */ b .L800B9EB4 -/* 0BAAAC 800B9EAC 240A0001 */ li $t2, 1 -.L800B9EB0: -/* 0BAAB0 800B9EB0 240A0002 */ li $t2, 2 -.L800B9EB4: -/* 0BAAB4 800B9EB4 249F0001 */ addiu $ra, $a0, 1 -/* 0BAAB8 800B9EB8 1880009F */ blez $a0, .L800BA138 -/* 0BAABC 800B9EBC AFBF0028 */ sw $ra, 0x28($sp) -/* 0BAAC0 800B9EC0 3C06800E */ lui $a2, %hi(D_800E3080) # $a2, 0x800e -/* 0BAAC4 800B9EC4 24C63080 */ addiu $a2, %lo(D_800E3080) # addiu $a2, $a2, 0x3080 -.L800B9EC8: -/* 0BAAC8 800B9EC8 18800094 */ blez $a0, .L800BA11C -/* 0BAACC 800B9ECC 00006025 */ move $t4, $zero -.L800B9ED0: -/* 0BAAD0 800B9ED0 1940008C */ blez $t2, .L800BA104 -/* 0BAAD4 800B9ED4 00003825 */ move $a3, $zero -/* 0BAAD8 800B9ED8 00101900 */ sll $v1, $s0, 4 -/* 0BAADC 800B9EDC 000D2080 */ sll $a0, $t5, 2 -/* 0BAAE0 800B9EE0 001F2880 */ sll $a1, $ra, 2 -.L800B9EE4: -/* 0BAAE4 800B9EE4 8D180000 */ lw $t8, ($t0) -/* 0BAAE8 800B9EE8 8D390000 */ lw $t9, ($t1) -/* 0BAAEC 800B9EEC 03047821 */ addu $t7, $t8, $a0 -/* 0BAAF0 800B9EF0 85EE0000 */ lh $t6, ($t7) -/* 0BAAF4 800B9EF4 0019C080 */ sll $t8, $t9, 2 -/* 0BAAF8 800B9EF8 00D87821 */ addu $t7, $a2, $t8 -/* 0BAAFC 800B9EFC 000710C0 */ sll $v0, $a3, 3 -/* 0BAB00 800B9F00 01E2C821 */ addu $t9, $t7, $v0 -/* 0BAB04 800B9F04 8F380000 */ lw $t8, ($t9) -/* 0BAB08 800B9F08 24E70001 */ addiu $a3, $a3, 1 -/* 0BAB0C 800B9F0C 03037821 */ addu $t7, $t8, $v1 -/* 0BAB10 800B9F10 A5EE0004 */ sh $t6, 4($t7) -/* 0BAB14 800B9F14 8D190000 */ lw $t9, ($t0) -/* 0BAB18 800B9F18 8D2F0000 */ lw $t7, ($t1) -/* 0BAB1C 800B9F1C 0324C021 */ addu $t8, $t9, $a0 -/* 0BAB20 800B9F20 870E0006 */ lh $t6, 6($t8) -/* 0BAB24 800B9F24 000FC880 */ sll $t9, $t7, 2 -/* 0BAB28 800B9F28 00D9C021 */ addu $t8, $a2, $t9 -/* 0BAB2C 800B9F2C 03027821 */ addu $t7, $t8, $v0 -/* 0BAB30 800B9F30 8DF90000 */ lw $t9, ($t7) -/* 0BAB34 800B9F34 00000000 */ nop -/* 0BAB38 800B9F38 0323C021 */ addu $t8, $t9, $v1 -/* 0BAB3C 800B9F3C A70E0006 */ sh $t6, 6($t8) -/* 0BAB40 800B9F40 8D0F0000 */ lw $t7, ($t0) -/* 0BAB44 800B9F44 8D380000 */ lw $t8, ($t1) -/* 0BAB48 800B9F48 01E5C821 */ addu $t9, $t7, $a1 -/* 0BAB4C 800B9F4C 872E0000 */ lh $t6, ($t9) -/* 0BAB50 800B9F50 00187880 */ sll $t7, $t8, 2 -/* 0BAB54 800B9F54 00CFC821 */ addu $t9, $a2, $t7 -/* 0BAB58 800B9F58 0322C021 */ addu $t8, $t9, $v0 -/* 0BAB5C 800B9F5C 8F0F0000 */ lw $t7, ($t8) -/* 0BAB60 800B9F60 00000000 */ nop -/* 0BAB64 800B9F64 01E3C821 */ addu $t9, $t7, $v1 -/* 0BAB68 800B9F68 A72E0008 */ sh $t6, 8($t9) -/* 0BAB6C 800B9F6C 8D180000 */ lw $t8, ($t0) -/* 0BAB70 800B9F70 8D390000 */ lw $t9, ($t1) -/* 0BAB74 800B9F74 03057821 */ addu $t7, $t8, $a1 -/* 0BAB78 800B9F78 85EE0002 */ lh $t6, 2($t7) -/* 0BAB7C 800B9F7C 0019C080 */ sll $t8, $t9, 2 -/* 0BAB80 800B9F80 00D87821 */ addu $t7, $a2, $t8 -/* 0BAB84 800B9F84 01E2C821 */ addu $t9, $t7, $v0 -/* 0BAB88 800B9F88 8F380000 */ lw $t8, ($t9) -/* 0BAB8C 800B9F8C 00000000 */ nop -/* 0BAB90 800B9F90 03037821 */ addu $t7, $t8, $v1 -/* 0BAB94 800B9F94 A5EE000A */ sh $t6, 0xa($t7) -/* 0BAB98 800B9F98 8D190000 */ lw $t9, ($t0) -/* 0BAB9C 800B9F9C 8D2F0000 */ lw $t7, ($t1) -/* 0BABA0 800B9FA0 0324C021 */ addu $t8, $t9, $a0 -/* 0BABA4 800B9FA4 870E0004 */ lh $t6, 4($t8) -/* 0BABA8 800B9FA8 000FC880 */ sll $t9, $t7, 2 -/* 0BABAC 800B9FAC 00D9C021 */ addu $t8, $a2, $t9 -/* 0BABB0 800B9FB0 03027821 */ addu $t7, $t8, $v0 -/* 0BABB4 800B9FB4 8DF90000 */ lw $t9, ($t7) -/* 0BABB8 800B9FB8 00000000 */ nop -/* 0BABBC 800B9FBC 0323C021 */ addu $t8, $t9, $v1 -/* 0BABC0 800B9FC0 A70E000C */ sh $t6, 0xc($t8) -/* 0BABC4 800B9FC4 8D0F0000 */ lw $t7, ($t0) -/* 0BABC8 800B9FC8 8D380000 */ lw $t8, ($t1) -/* 0BABCC 800B9FCC 01E4C821 */ addu $t9, $t7, $a0 -/* 0BABD0 800B9FD0 872E0006 */ lh $t6, 6($t9) -/* 0BABD4 800B9FD4 00187880 */ sll $t7, $t8, 2 -/* 0BABD8 800B9FD8 00CFC821 */ addu $t9, $a2, $t7 -/* 0BABDC 800B9FDC 0322C021 */ addu $t8, $t9, $v0 -/* 0BABE0 800B9FE0 8F0F0000 */ lw $t7, ($t8) -/* 0BABE4 800B9FE4 00000000 */ nop -/* 0BABE8 800B9FE8 01E3C821 */ addu $t9, $t7, $v1 -/* 0BABEC 800B9FEC A72E000E */ sh $t6, 0xe($t9) -/* 0BABF0 800B9FF0 8D180000 */ lw $t8, ($t0) -/* 0BABF4 800B9FF4 8D390000 */ lw $t9, ($t1) -/* 0BABF8 800B9FF8 03047821 */ addu $t7, $t8, $a0 -/* 0BABFC 800B9FFC 85EE0004 */ lh $t6, 4($t7) -/* 0BAC00 800BA000 0019C080 */ sll $t8, $t9, 2 -/* 0BAC04 800BA004 00D87821 */ addu $t7, $a2, $t8 -/* 0BAC08 800BA008 01E2C821 */ addu $t9, $t7, $v0 -/* 0BAC0C 800BA00C 8F380000 */ lw $t8, ($t9) -/* 0BAC10 800BA010 00000000 */ nop -/* 0BAC14 800BA014 03037821 */ addu $t7, $t8, $v1 -/* 0BAC18 800BA018 A5EE0014 */ sh $t6, 0x14($t7) -/* 0BAC1C 800BA01C 8D190000 */ lw $t9, ($t0) -/* 0BAC20 800BA020 8D2F0000 */ lw $t7, ($t1) -/* 0BAC24 800BA024 0324C021 */ addu $t8, $t9, $a0 -/* 0BAC28 800BA028 870E0006 */ lh $t6, 6($t8) -/* 0BAC2C 800BA02C 000FC880 */ sll $t9, $t7, 2 -/* 0BAC30 800BA030 00D9C021 */ addu $t8, $a2, $t9 -/* 0BAC34 800BA034 03027821 */ addu $t7, $t8, $v0 -/* 0BAC38 800BA038 8DF90000 */ lw $t9, ($t7) -/* 0BAC3C 800BA03C 00000000 */ nop -/* 0BAC40 800BA040 0323C021 */ addu $t8, $t9, $v1 -/* 0BAC44 800BA044 A70E0016 */ sh $t6, 0x16($t8) -/* 0BAC48 800BA048 8D0F0000 */ lw $t7, ($t0) -/* 0BAC4C 800BA04C 8D380000 */ lw $t8, ($t1) -/* 0BAC50 800BA050 01E5C821 */ addu $t9, $t7, $a1 -/* 0BAC54 800BA054 872E0000 */ lh $t6, ($t9) -/* 0BAC58 800BA058 00187880 */ sll $t7, $t8, 2 -/* 0BAC5C 800BA05C 00CFC821 */ addu $t9, $a2, $t7 -/* 0BAC60 800BA060 0322C021 */ addu $t8, $t9, $v0 -/* 0BAC64 800BA064 8F0F0000 */ lw $t7, ($t8) -/* 0BAC68 800BA068 00000000 */ nop -/* 0BAC6C 800BA06C 01E3C821 */ addu $t9, $t7, $v1 -/* 0BAC70 800BA070 A72E0018 */ sh $t6, 0x18($t9) -/* 0BAC74 800BA074 8D180000 */ lw $t8, ($t0) -/* 0BAC78 800BA078 8D390000 */ lw $t9, ($t1) -/* 0BAC7C 800BA07C 03057821 */ addu $t7, $t8, $a1 -/* 0BAC80 800BA080 85EE0006 */ lh $t6, 6($t7) -/* 0BAC84 800BA084 0019C080 */ sll $t8, $t9, 2 -/* 0BAC88 800BA088 00D87821 */ addu $t7, $a2, $t8 -/* 0BAC8C 800BA08C 01E2C821 */ addu $t9, $t7, $v0 -/* 0BAC90 800BA090 8F380000 */ lw $t8, ($t9) -/* 0BAC94 800BA094 00000000 */ nop -/* 0BAC98 800BA098 03037821 */ addu $t7, $t8, $v1 -/* 0BAC9C 800BA09C A5EE001A */ sh $t6, 0x1a($t7) -/* 0BACA0 800BA0A0 8D190000 */ lw $t9, ($t0) -/* 0BACA4 800BA0A4 8D2F0000 */ lw $t7, ($t1) -/* 0BACA8 800BA0A8 0325C021 */ addu $t8, $t9, $a1 -/* 0BACAC 800BA0AC 870E0004 */ lh $t6, 4($t8) -/* 0BACB0 800BA0B0 000FC880 */ sll $t9, $t7, 2 -/* 0BACB4 800BA0B4 00D9C021 */ addu $t8, $a2, $t9 -/* 0BACB8 800BA0B8 03027821 */ addu $t7, $t8, $v0 -/* 0BACBC 800BA0BC 8DF90000 */ lw $t9, ($t7) -/* 0BACC0 800BA0C0 00000000 */ nop -/* 0BACC4 800BA0C4 0323C021 */ addu $t8, $t9, $v1 -/* 0BACC8 800BA0C8 A70E001C */ sh $t6, 0x1c($t8) -/* 0BACCC 800BA0CC 8D0F0000 */ lw $t7, ($t0) -/* 0BACD0 800BA0D0 8D380000 */ lw $t8, ($t1) -/* 0BACD4 800BA0D4 01E5C821 */ addu $t9, $t7, $a1 -/* 0BACD8 800BA0D8 872E0006 */ lh $t6, 6($t9) -/* 0BACDC 800BA0DC 00187880 */ sll $t7, $t8, 2 -/* 0BACE0 800BA0E0 00CFC821 */ addu $t9, $a2, $t7 -/* 0BACE4 800BA0E4 0322C021 */ addu $t8, $t9, $v0 -/* 0BACE8 800BA0E8 8F0F0000 */ lw $t7, ($t8) -/* 0BACEC 800BA0EC 00000000 */ nop -/* 0BACF0 800BA0F0 01E3C821 */ addu $t9, $t7, $v1 -/* 0BACF4 800BA0F4 14EAFF7B */ bne $a3, $t2, .L800B9EE4 -/* 0BACF8 800BA0F8 A72E001E */ sh $t6, 0x1e($t9) -/* 0BACFC 800BA0FC 8D640000 */ lw $a0, ($t3) -/* 0BAD00 800BA100 00000000 */ nop -.L800BA104: -/* 0BAD04 800BA104 258C0001 */ addiu $t4, $t4, 1 -/* 0BAD08 800BA108 0184082A */ slt $at, $t4, $a0 -/* 0BAD0C 800BA10C 25AD0001 */ addiu $t5, $t5, 1 -/* 0BAD10 800BA110 27FF0001 */ addiu $ra, $ra, 1 -/* 0BAD14 800BA114 1420FF6E */ bnez $at, .L800B9ED0 -/* 0BAD18 800BA118 26100002 */ addiu $s0, $s0, 2 -.L800BA11C: -/* 0BAD1C 800BA11C 26520001 */ addiu $s2, $s2, 1 -/* 0BAD20 800BA120 0244082A */ slt $at, $s2, $a0 -/* 0BAD24 800BA124 25AD0001 */ addiu $t5, $t5, 1 -/* 0BAD28 800BA128 1420FF67 */ bnez $at, .L800B9EC8 -/* 0BAD2C 800BA12C 27FF0001 */ addiu $ra, $ra, 1 -/* 0BAD30 800BA130 24980001 */ addiu $t8, $a0, 1 -/* 0BAD34 800BA134 AFB80028 */ sw $t8, 0x28($sp) -.L800BA138: -/* 0BAD38 800BA138 8D2E0000 */ lw $t6, ($t1) -/* 0BAD3C 800BA13C 3C18800E */ lui $t8, %hi(D_800E3090) # $t8, 0x800e -/* 0BAD40 800BA140 27183090 */ addiu $t8, %lo(D_800E3090) # addiu $t8, $t8, 0x3090 -/* 0BAD44 800BA144 000EC940 */ sll $t9, $t6, 5 -/* 0BAD48 800BA148 03381021 */ addu $v0, $t9, $t8 -/* 0BAD4C 800BA14C 8FB90028 */ lw $t9, 0x28($sp) -/* 0BAD50 800BA150 8D030000 */ lw $v1, ($t0) -/* 0BAD54 800BA154 03240019 */ multu $t9, $a0 -/* 0BAD58 800BA158 846F0000 */ lh $t7, ($v1) -/* 0BAD5C 800BA15C 00045080 */ sll $t2, $a0, 2 -/* 0BAD60 800BA160 A44F0004 */ sh $t7, 4($v0) -/* 0BAD64 800BA164 846E0002 */ lh $t6, 2($v1) -/* 0BAD68 800BA168 006A3021 */ addu $a2, $v1, $t2 -/* 0BAD6C 800BA16C A44E0006 */ sh $t6, 6($v0) -/* 0BAD70 800BA170 00003812 */ mflo $a3 -/* 0BAD74 800BA174 0007C080 */ sll $t8, $a3, 2 -/* 0BAD78 800BA178 00782821 */ addu $a1, $v1, $t8 -/* 0BAD7C 800BA17C 84AF0000 */ lh $t7, ($a1) -/* 0BAD80 800BA180 00000000 */ nop -/* 0BAD84 800BA184 A44F0008 */ sh $t7, 8($v0) -/* 0BAD88 800BA188 84AE0002 */ lh $t6, 2($a1) -/* 0BAD8C 800BA18C 00000000 */ nop -/* 0BAD90 800BA190 A44E000A */ sh $t6, 0xa($v0) -/* 0BAD94 800BA194 84D90000 */ lh $t9, ($a2) -/* 0BAD98 800BA198 00000000 */ nop -/* 0BAD9C 800BA19C A459000C */ sh $t9, 0xc($v0) -/* 0BADA0 800BA1A0 84D80002 */ lh $t8, 2($a2) -/* 0BADA4 800BA1A4 00000000 */ nop -/* 0BADA8 800BA1A8 A458000E */ sh $t8, 0xe($v0) -/* 0BADAC 800BA1AC 84CF0000 */ lh $t7, ($a2) -/* 0BADB0 800BA1B0 00000000 */ nop -/* 0BADB4 800BA1B4 A44F0014 */ sh $t7, 0x14($v0) -/* 0BADB8 800BA1B8 84CE0002 */ lh $t6, 2($a2) -/* 0BADBC 800BA1BC 00077880 */ sll $t7, $a3, 2 -/* 0BADC0 800BA1C0 A44E0016 */ sh $t6, 0x16($v0) -/* 0BADC4 800BA1C4 84B90000 */ lh $t9, ($a1) -/* 0BADC8 800BA1C8 006F7021 */ addu $t6, $v1, $t7 -/* 0BADCC 800BA1CC A4590018 */ sh $t9, 0x18($v0) -/* 0BADD0 800BA1D0 84B80002 */ lh $t8, 2($a1) -/* 0BADD4 800BA1D4 01CA6021 */ addu $t4, $t6, $t2 -/* 0BADD8 800BA1D8 A458001A */ sh $t8, 0x1a($v0) -/* 0BADDC 800BA1DC 85990000 */ lh $t9, ($t4) -/* 0BADE0 800BA1E0 3C0F800E */ lui $t7, %hi(D_800E3188) # $t7, 0x800e -/* 0BADE4 800BA1E4 A459001C */ sh $t9, 0x1c($v0) -/* 0BADE8 800BA1E8 85980002 */ lh $t8, 2($t4) -/* 0BADEC 800BA1EC 00000000 */ nop -/* 0BADF0 800BA1F0 A458001E */ sh $t8, 0x1e($v0) -/* 0BADF4 800BA1F4 8DEF3188 */ lw $t7, %lo(D_800E3188)($t7) -/* 0BADF8 800BA1F8 00000000 */ nop -/* 0BADFC 800BA1FC 19E00005 */ blez $t7, .L800BA214 -/* 0BAE00 800BA200 00000000 */ nop -/* 0BAE04 800BA204 0C02FFA6 */ jal func_800BFE98 -/* 0BAE08 800BA208 02202025 */ move $a0, $s1 -/* 0BAE0C 800BA20C 3C0B8013 */ lui $t3, %hi(D_80129FC8) # $t3, 0x8013 -/* 0BAE10 800BA210 256B9FC8 */ addiu $t3, %lo(D_80129FC8) # addiu $t3, $t3, -0x6038 -.L800BA214: -/* 0BAE14 800BA214 3C038013 */ lui $v1, %hi(D_8012A728) # $v1, 0x8013 -/* 0BAE18 800BA218 2463A728 */ addiu $v1, %lo(D_8012A728) # addiu $v1, $v1, -0x58d8 -/* 0BAE1C 800BA21C 8C620000 */ lw $v0, ($v1) -/* 0BAE20 800BA220 00000000 */ nop -/* 0BAE24 800BA224 18400012 */ blez $v0, .L800BA270 -/* 0BAE28 800BA228 0222082A */ slt $at, $s1, $v0 -/* 0BAE2C 800BA22C 1020000C */ beqz $at, .L800BA260 -/* 0BAE30 800BA230 00000000 */ nop -/* 0BAE34 800BA234 44912000 */ mtc1 $s1, $f4 -/* 0BAE38 800BA238 3C018013 */ lui $at, %hi(D_8012A724) # $at, 0x8013 -/* 0BAE3C 800BA23C 468021A0 */ cvt.s.w $f6, $f4 -/* 0BAE40 800BA240 C428A724 */ lwc1 $f8, %lo(D_8012A724)($at) -/* 0BAE44 800BA244 C5700040 */ lwc1 $f16, 0x40($t3) -/* 0BAE48 800BA248 46083282 */ mul.s $f10, $f6, $f8 -/* 0BAE4C 800BA24C 00517023 */ subu $t6, $v0, $s1 -/* 0BAE50 800BA250 AC6E0000 */ sw $t6, ($v1) -/* 0BAE54 800BA254 460A8480 */ add.s $f18, $f16, $f10 -/* 0BAE58 800BA258 10000005 */ b .L800BA270 -/* 0BAE5C 800BA25C E5720040 */ swc1 $f18, 0x40($t3) -.L800BA260: -/* 0BAE60 800BA260 3C018013 */ lui $at, %hi(D_8012A720) # $at, 0x8013 -/* 0BAE64 800BA264 C424A720 */ lwc1 $f4, %lo(D_8012A720)($at) -/* 0BAE68 800BA268 AC600000 */ sw $zero, ($v1) -/* 0BAE6C 800BA26C E5640040 */ swc1 $f4, 0x40($t3) -.L800BA270: -/* 0BAE70 800BA270 8FBF0024 */ lw $ra, 0x24($sp) -/* 0BAE74 800BA274 8FB00018 */ lw $s0, 0x18($sp) -/* 0BAE78 800BA278 8FB1001C */ lw $s1, 0x1c($sp) -/* 0BAE7C 800BA27C 8FB20020 */ lw $s2, 0x20($sp) -/* 0BAE80 800BA280 03E00008 */ jr $ra -/* 0BAE84 800BA284 27BD0060 */ addiu $sp, $sp, 0x60 - -glabel func_800BA288 -/* 0BAE88 800BA288 3C038013 */ lui $v1, %hi(D_8012A0E0) # $v1, 0x8013 -/* 0BAE8C 800BA28C 8C63A0E0 */ lw $v1, %lo(D_8012A0E0)($v1) -/* 0BAE90 800BA290 27BDFFF0 */ addiu $sp, $sp, -0x10 -/* 0BAE94 800BA294 AFB00008 */ sw $s0, 8($sp) -/* 0BAE98 800BA298 000570C0 */ sll $t6, $a1, 3 -/* 0BAE9C 800BA29C 00808025 */ move $s0, $a0 -/* 0BAEA0 800BA2A0 AFB1000C */ sw $s1, 0xc($sp) -/* 0BAEA4 800BA2A4 01C02825 */ move $a1, $t6 -/* 0BAEA8 800BA2A8 1860007F */ blez $v1, .L800BA4A8 -/* 0BAEAC 800BA2AC 00001025 */ move $v0, $zero -/* 0BAEB0 800BA2B0 3C0C800E */ lui $t4, %hi(D_800E30D4) # $t4, 0x800e -/* 0BAEB4 800BA2B4 3C0B8013 */ lui $t3, %hi(D_80129FC8) # $t3, 0x8013 -/* 0BAEB8 800BA2B8 3C0A8013 */ lui $t2, %hi(D_8012A0E8) # $t2, 0x8013 -/* 0BAEBC 800BA2BC 3C09800E */ lui $t1, %hi(D_800E30D8) # $t1, 0x800e -/* 0BAEC0 800BA2C0 252930D8 */ addiu $t1, %lo(D_800E30D8) # addiu $t1, $t1, 0x30d8 -/* 0BAEC4 800BA2C4 254AA0E8 */ addiu $t2, %lo(D_8012A0E8) # addiu $t2, $t2, -0x5f18 -/* 0BAEC8 800BA2C8 256B9FC8 */ addiu $t3, %lo(D_80129FC8) # addiu $t3, $t3, -0x6038 -/* 0BAECC 800BA2CC 258C30D4 */ addiu $t4, %lo(D_800E30D4) # addiu $t4, $t4, 0x30d4 -/* 0BAED0 800BA2D0 00003025 */ move $a2, $zero -/* 0BAED4 800BA2D4 24110080 */ li $s1, 128 -/* 0BAED8 800BA2D8 240D0004 */ li $t5, 4 -.L800BA2DC: -/* 0BAEDC 800BA2DC 8D240000 */ lw $a0, ($t1) -/* 0BAEE0 800BA2E0 24180001 */ li $t8, 1 -/* 0BAEE4 800BA2E4 00863821 */ addu $a3, $a0, $a2 -/* 0BAEE8 800BA2E8 90EF000A */ lbu $t7, 0xa($a3) -/* 0BAEEC 800BA2EC 90EE000B */ lbu $t6, 0xb($a3) -/* 0BAEF0 800BA2F0 01F8C804 */ sllv $t9, $t8, $t7 -/* 0BAEF4 800BA2F4 000EC080 */ sll $t8, $t6, 2 -/* 0BAEF8 800BA2F8 01587821 */ addu $t7, $t2, $t8 -/* 0BAEFC 800BA2FC 8DEE0000 */ lw $t6, ($t7) -/* 0BAF00 800BA300 00000000 */ nop -/* 0BAF04 800BA304 032EC024 */ and $t8, $t9, $t6 -/* 0BAF08 800BA308 13000063 */ beqz $t8, .L800BA498 -/* 0BAF0C 800BA30C 00000000 */ nop -/* 0BAF10 800BA310 8D6F0028 */ lw $t7, 0x28($t3) -/* 0BAF14 800BA314 00001825 */ move $v1, $zero -/* 0BAF18 800BA318 11E00035 */ beqz $t7, .L800BA3F0 -/* 0BAF1C 800BA31C 00000000 */ nop -.L800BA320: -/* 0BAF20 800BA320 8D240000 */ lw $a0, ($t1) -/* 0BAF24 800BA324 8D990000 */ lw $t9, ($t4) -/* 0BAF28 800BA328 00867021 */ addu $t6, $a0, $a2 -/* 0BAF2C 800BA32C 8DD8000C */ lw $t8, 0xc($t6) -/* 0BAF30 800BA330 00000000 */ nop -/* 0BAF34 800BA334 00187880 */ sll $t7, $t8, 2 -/* 0BAF38 800BA338 032F7021 */ addu $t6, $t9, $t7 -/* 0BAF3C 800BA33C 8DD80000 */ lw $t8, ($t6) -/* 0BAF40 800BA340 240F00FF */ li $t7, 255 -/* 0BAF44 800BA344 0003C8C0 */ sll $t9, $v1, 3 -/* 0BAF48 800BA348 032F7004 */ sllv $t6, $t7, $t9 -/* 0BAF4C 800BA34C 030E7824 */ and $t7, $t8, $t6 -/* 0BAF50 800BA350 11E00011 */ beqz $t7, .L800BA398 -/* 0BAF54 800BA354 0002C0C0 */ sll $t8, $v0, 3 -/* 0BAF58 800BA358 0002C8C0 */ sll $t9, $v0, 3 -/* 0BAF5C 800BA35C 0322C823 */ subu $t9, $t9, $v0 -/* 0BAF60 800BA360 0019C880 */ sll $t9, $t9, 2 -/* 0BAF64 800BA364 0099C021 */ addu $t8, $a0, $t9 -/* 0BAF68 800BA368 00107080 */ sll $t6, $s0, 2 -/* 0BAF6C 800BA36C 030E7821 */ addu $t7, $t8, $t6 -/* 0BAF70 800BA370 01E33821 */ addu $a3, $t7, $v1 -/* 0BAF74 800BA374 90E80014 */ lbu $t0, 0x14($a3) -/* 0BAF78 800BA378 00000000 */ nop -/* 0BAF7C 800BA37C 00A8082A */ slt $at, $a1, $t0 -/* 0BAF80 800BA380 10200003 */ beqz $at, .L800BA390 -/* 0BAF84 800BA384 0105C823 */ subu $t9, $t0, $a1 -/* 0BAF88 800BA388 10000012 */ b .L800BA3D4 -/* 0BAF8C 800BA38C A0F90014 */ sb $t9, 0x14($a3) -.L800BA390: -/* 0BAF90 800BA390 10000010 */ b .L800BA3D4 -/* 0BAF94 800BA394 A0E00014 */ sb $zero, 0x14($a3) -.L800BA398: -/* 0BAF98 800BA398 0302C023 */ subu $t8, $t8, $v0 -/* 0BAF9C 800BA39C 0018C080 */ sll $t8, $t8, 2 -/* 0BAFA0 800BA3A0 00987021 */ addu $t6, $a0, $t8 -/* 0BAFA4 800BA3A4 00107880 */ sll $t7, $s0, 2 -/* 0BAFA8 800BA3A8 01CFC821 */ addu $t9, $t6, $t7 -/* 0BAFAC 800BA3AC 03233821 */ addu $a3, $t9, $v1 -/* 0BAFB0 800BA3B0 90F80014 */ lbu $t8, 0x14($a3) -/* 0BAFB4 800BA3B4 00000000 */ nop -/* 0BAFB8 800BA3B8 03054021 */ addu $t0, $t8, $a1 -/* 0BAFBC 800BA3BC 29010080 */ slti $at, $t0, 0x80 -/* 0BAFC0 800BA3C0 10200003 */ beqz $at, .L800BA3D0 -/* 0BAFC4 800BA3C4 00000000 */ nop -/* 0BAFC8 800BA3C8 10000002 */ b .L800BA3D4 -/* 0BAFCC 800BA3CC A0E80014 */ sb $t0, 0x14($a3) -.L800BA3D0: -/* 0BAFD0 800BA3D0 A0F10014 */ sb $s1, 0x14($a3) -.L800BA3D4: -/* 0BAFD4 800BA3D4 24630001 */ addiu $v1, $v1, 1 -/* 0BAFD8 800BA3D8 146DFFD1 */ bne $v1, $t5, .L800BA320 -/* 0BAFDC 800BA3DC 00000000 */ nop -/* 0BAFE0 800BA3E0 3C038013 */ lui $v1, %hi(D_8012A0E0) # $v1, 0x8013 -/* 0BAFE4 800BA3E4 8C63A0E0 */ lw $v1, %lo(D_8012A0E0)($v1) -/* 0BAFE8 800BA3E8 1000002C */ b .L800BA49C -/* 0BAFEC 800BA3EC 24420001 */ addiu $v0, $v0, 1 -.L800BA3F0: -/* 0BAFF0 800BA3F0 8CEF000C */ lw $t7, 0xc($a3) -/* 0BAFF4 800BA3F4 8D8E0000 */ lw $t6, ($t4) -/* 0BAFF8 800BA3F8 000FC880 */ sll $t9, $t7, 2 -/* 0BAFFC 800BA3FC 01D9C021 */ addu $t8, $t6, $t9 -/* 0BB000 800BA400 8F0F0000 */ lw $t7, ($t8) -/* 0BB004 800BA404 00101880 */ sll $v1, $s0, 2 -/* 0BB008 800BA408 11E00010 */ beqz $t7, .L800BA44C -/* 0BB00C 800BA40C 000270C0 */ sll $t6, $v0, 3 -/* 0BB010 800BA410 01C27023 */ subu $t6, $t6, $v0 -/* 0BB014 800BA414 000E7080 */ sll $t6, $t6, 2 -/* 0BB018 800BA418 008EC821 */ addu $t9, $a0, $t6 -/* 0BB01C 800BA41C 03233821 */ addu $a3, $t9, $v1 -/* 0BB020 800BA420 90E80014 */ lbu $t0, 0x14($a3) -/* 0BB024 800BA424 3C038013 */ lui $v1, %hi(D_8012A0E0) # $v1, 0x8013 -/* 0BB028 800BA428 00A8082A */ slt $at, $a1, $t0 -/* 0BB02C 800BA42C 10200003 */ beqz $at, .L800BA43C -/* 0BB030 800BA430 0105C023 */ subu $t8, $t0, $a1 -/* 0BB034 800BA434 10000002 */ b .L800BA440 -/* 0BB038 800BA438 A0F80014 */ sb $t8, 0x14($a3) -.L800BA43C: -/* 0BB03C 800BA43C A0E00014 */ sb $zero, 0x14($a3) -.L800BA440: -/* 0BB040 800BA440 8C63A0E0 */ lw $v1, %lo(D_8012A0E0)($v1) -/* 0BB044 800BA444 10000015 */ b .L800BA49C -/* 0BB048 800BA448 24420001 */ addiu $v0, $v0, 1 -.L800BA44C: -/* 0BB04C 800BA44C 000278C0 */ sll $t7, $v0, 3 -/* 0BB050 800BA450 01E27823 */ subu $t7, $t7, $v0 -/* 0BB054 800BA454 000F7880 */ sll $t7, $t7, 2 -/* 0BB058 800BA458 008F7021 */ addu $t6, $a0, $t7 -/* 0BB05C 800BA45C 01C33821 */ addu $a3, $t6, $v1 -/* 0BB060 800BA460 90F90014 */ lbu $t9, 0x14($a3) -/* 0BB064 800BA464 3C038013 */ lui $v1, 0x8013 -/* 0BB068 800BA468 03254021 */ addu $t0, $t9, $a1 -/* 0BB06C 800BA46C 29010080 */ slti $at, $t0, 0x80 -/* 0BB070 800BA470 10200006 */ beqz $at, .L800BA48C -/* 0BB074 800BA474 00000000 */ nop -/* 0BB078 800BA478 A0E80014 */ sb $t0, 0x14($a3) -/* 0BB07C 800BA47C 3C038013 */ lui $v1, %hi(D_8012A0E0) # $v1, 0x8013 -/* 0BB080 800BA480 8C63A0E0 */ lw $v1, %lo(D_8012A0E0)($v1) -/* 0BB084 800BA484 10000005 */ b .L800BA49C -/* 0BB088 800BA488 24420001 */ addiu $v0, $v0, 1 -.L800BA48C: -/* 0BB08C 800BA48C A0F10014 */ sb $s1, 0x14($a3) -/* 0BB090 800BA490 8C63A0E0 */ lw $v1, -0x5f20($v1) -/* 0BB094 800BA494 00000000 */ nop -.L800BA498: -/* 0BB098 800BA498 24420001 */ addiu $v0, $v0, 1 -.L800BA49C: -/* 0BB09C 800BA49C 0043082A */ slt $at, $v0, $v1 -/* 0BB0A0 800BA4A0 1420FF8E */ bnez $at, .L800BA2DC -/* 0BB0A4 800BA4A4 24C6001C */ addiu $a2, $a2, 0x1c -.L800BA4A8: -/* 0BB0A8 800BA4A8 8FB00008 */ lw $s0, 8($sp) -/* 0BB0AC 800BA4AC 8FB1000C */ lw $s1, 0xc($sp) -/* 0BB0B0 800BA4B0 03E00008 */ jr $ra -/* 0BB0B4 800BA4B4 27BD0010 */ addiu $sp, $sp, 0x10 - -glabel func_800BA4B8 -/* 0BB0B8 800BA4B8 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 0BB0BC 800BA4BC AFA50064 */ sw $a1, 0x64($sp) -/* 0BB0C0 800BA4C0 90880000 */ lbu $t0, ($a0) -/* 0BB0C4 800BA4C4 24010010 */ li $at, 16 -/* 0BB0C8 800BA4C8 00803825 */ move $a3, $a0 -/* 0BB0CC 800BA4CC 15010006 */ bne $t0, $at, .L800BA4E8 -/* 0BB0D0 800BA4D0 00003025 */ move $a2, $zero -/* 0BB0D4 800BA4D4 10A00002 */ beqz $a1, .L800BA4E0 -/* 0BB0D8 800BA4D8 240C0004 */ li $t4, 4 -/* 0BB0DC 800BA4DC 24060180 */ li $a2, 384 -.L800BA4E0: -/* 0BB0E0 800BA4E0 10000010 */ b .L800BA524 -/* 0BB0E4 800BA4E4 AFAC005C */ sw $t4, 0x5c($sp) -.L800BA4E8: -/* 0BB0E8 800BA4E8 24010020 */ li $at, 32 -/* 0BB0EC 800BA4EC 15010009 */ bne $t0, $at, .L800BA514 -/* 0BB0F0 800BA4F0 8FB80064 */ lw $t8, 0x64($sp) -/* 0BB0F4 800BA4F4 8FAF0064 */ lw $t7, 0x64($sp) -/* 0BB0F8 800BA4F8 240C0005 */ li $t4, 5 -/* 0BB0FC 800BA4FC 11E00002 */ beqz $t7, .L800BA508 -/* 0BB100 800BA500 00000000 */ nop -/* 0BB104 800BA504 24060100 */ li $a2, 256 -.L800BA508: -/* 0BB108 800BA508 10000006 */ b .L800BA524 -/* 0BB10C 800BA50C AFAC005C */ sw $t4, 0x5c($sp) -/* 0BB110 800BA510 8FB80064 */ lw $t8, 0x64($sp) -.L800BA514: -/* 0BB114 800BA514 24080003 */ li $t0, 3 -/* 0BB118 800BA518 13000002 */ beqz $t8, .L800BA524 -/* 0BB11C 800BA51C 00000000 */ nop -/* 0BB120 800BA520 24060180 */ li $a2, 384 -.L800BA524: -/* 0BB124 800BA524 90F90002 */ lbu $t9, 2($a3) -/* 0BB128 800BA528 8FAC005C */ lw $t4, 0x5c($sp) -/* 0BB12C 800BA52C 332E000F */ andi $t6, $t9, 0xf -/* 0BB130 800BA530 15C00073 */ bnez $t6, .L800BA700 -/* 0BB134 800BA534 3C038013 */ lui $v1, 0x8013 -/* 0BB138 800BA538 3C038013 */ lui $v1, %hi(D_80129FC0) # $v1, 0x8013 -/* 0BB13C 800BA53C 24639FC0 */ addiu $v1, %lo(D_80129FC0) # addiu $v1, $v1, -0x6040 -/* 0BB140 800BA540 8C620000 */ lw $v0, ($v1) -/* 0BB144 800BA544 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 -/* 0BB148 800BA548 244F0008 */ addiu $t7, $v0, 8 -/* 0BB14C 800BA54C AC6F0000 */ sw $t7, ($v1) -/* 0BB150 800BA550 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 -/* 0BB154 800BA554 AFA20050 */ sw $v0, 0x50($sp) -/* 0BB158 800BA558 00E17021 */ addu $t6, $a3, $at -/* 0BB15C 800BA55C 3C18FD18 */ lui $t8, 0xfd18 -/* 0BB160 800BA560 AC580000 */ sw $t8, ($v0) -/* 0BB164 800BA564 AC4E0004 */ sw $t6, 4($v0) -/* 0BB168 800BA568 8C620000 */ lw $v0, ($v1) -/* 0BB16C 800BA56C 3C01F518 */ lui $at, 0xf518 -/* 0BB170 800BA570 30C901FF */ andi $t1, $a2, 0x1ff -/* 0BB174 800BA574 0121C025 */ or $t8, $t1, $at -/* 0BB178 800BA578 3184000F */ andi $a0, $t4, 0xf -/* 0BB17C 800BA57C 244F0008 */ addiu $t7, $v0, 8 -/* 0BB180 800BA580 01080019 */ multu $t0, $t0 -/* 0BB184 800BA584 AC6F0000 */ sw $t7, ($v1) -/* 0BB188 800BA588 00045380 */ sll $t2, $a0, 0xe -/* 0BB18C 800BA58C 3C010700 */ lui $at, 0x700 -/* 0BB190 800BA590 0141C825 */ or $t9, $t2, $at -/* 0BB194 800BA594 00045900 */ sll $t3, $a0, 4 -/* 0BB198 800BA598 AFA2004C */ sw $v0, 0x4c($sp) -/* 0BB19C 800BA59C 032B7825 */ or $t7, $t9, $t3 -/* 0BB1A0 800BA5A0 AC4F0004 */ sw $t7, 4($v0) -/* 0BB1A4 800BA5A4 AC580000 */ sw $t8, ($v0) -/* 0BB1A8 800BA5A8 8C620000 */ lw $v0, ($v1) -/* 0BB1AC 800BA5AC 3C19E600 */ lui $t9, 0xe600 -/* 0BB1B0 800BA5B0 24580008 */ addiu $t8, $v0, 8 -/* 0BB1B4 800BA5B4 AC780000 */ sw $t8, ($v1) -/* 0BB1B8 800BA5B8 AFA20048 */ sw $v0, 0x48($sp) -/* 0BB1BC 800BA5BC AC400004 */ sw $zero, 4($v0) -/* 0BB1C0 800BA5C0 AC590000 */ sw $t9, ($v0) -/* 0BB1C4 800BA5C4 8C6D0000 */ lw $t5, ($v1) -/* 0BB1C8 800BA5C8 00002812 */ mflo $a1 -/* 0BB1CC 800BA5CC 24A5FFFF */ addiu $a1, $a1, -1 -/* 0BB1D0 800BA5D0 25AE0008 */ addiu $t6, $t5, 8 -/* 0BB1D4 800BA5D4 AC6E0000 */ sw $t6, ($v1) -/* 0BB1D8 800BA5D8 2CA107FF */ sltiu $at, $a1, 0x7ff -/* 0BB1DC 800BA5DC 3C18F300 */ lui $t8, 0xf300 -/* 0BB1E0 800BA5E0 10200003 */ beqz $at, .L800BA5F0 -/* 0BB1E4 800BA5E4 ADB80000 */ sw $t8, ($t5) -/* 0BB1E8 800BA5E8 10000002 */ b .L800BA5F4 -/* 0BB1EC 800BA5EC 00A06025 */ move $t4, $a1 -.L800BA5F0: -/* 0BB1F0 800BA5F0 240C07FF */ li $t4, 2047 -.L800BA5F4: -/* 0BB1F4 800BA5F4 00081080 */ sll $v0, $t0, 2 -/* 0BB1F8 800BA5F8 0002C8C2 */ srl $t9, $v0, 3 -/* 0BB1FC 800BA5FC 17200003 */ bnez $t9, .L800BA60C -/* 0BB200 800BA600 03201025 */ move $v0, $t9 -/* 0BB204 800BA604 10000002 */ b .L800BA610 -/* 0BB208 800BA608 24070001 */ li $a3, 1 -.L800BA60C: -/* 0BB20C 800BA60C 00403825 */ move $a3, $v0 -.L800BA610: -/* 0BB210 800BA610 14400003 */ bnez $v0, .L800BA620 -/* 0BB214 800BA614 24EF07FF */ addiu $t7, $a3, 0x7ff -/* 0BB218 800BA618 10000002 */ b .L800BA624 -/* 0BB21C 800BA61C 24060001 */ li $a2, 1 -.L800BA620: -/* 0BB220 800BA620 00403025 */ move $a2, $v0 -.L800BA624: -/* 0BB224 800BA624 01E6001B */ divu $zero, $t7, $a2 -/* 0BB228 800BA628 318F0FFF */ andi $t7, $t4, 0xfff -/* 0BB22C 800BA62C 3C010700 */ lui $at, 0x700 -/* 0BB230 800BA630 2505FFFF */ addiu $a1, $t0, -1 -/* 0BB234 800BA634 14C00002 */ bnez $a2, .L800BA640 -/* 0BB238 800BA638 00000000 */ nop -/* 0BB23C 800BA63C 0007000D */ break 7 -.L800BA640: -/* 0BB240 800BA640 00007012 */ mflo $t6 -/* 0BB244 800BA644 31D80FFF */ andi $t8, $t6, 0xfff -/* 0BB248 800BA648 0301C825 */ or $t9, $t8, $at -/* 0BB24C 800BA64C 000F7300 */ sll $t6, $t7, 0xc -/* 0BB250 800BA650 032EC025 */ or $t8, $t9, $t6 -/* 0BB254 800BA654 ADB80004 */ sw $t8, 4($t5) -/* 0BB258 800BA658 8C620000 */ lw $v0, ($v1) -/* 0BB25C 800BA65C 3C19E700 */ lui $t9, 0xe700 -/* 0BB260 800BA660 244F0008 */ addiu $t7, $v0, 8 -/* 0BB264 800BA664 AC6F0000 */ sw $t7, ($v1) -/* 0BB268 800BA668 AFA20040 */ sw $v0, 0x40($sp) -/* 0BB26C 800BA66C AC400004 */ sw $zero, 4($v0) -/* 0BB270 800BA670 AC590000 */ sw $t9, ($v0) -/* 0BB274 800BA674 8C620000 */ lw $v0, ($v1) -/* 0BB278 800BA678 00087840 */ sll $t7, $t0, 1 -/* 0BB27C 800BA67C 25F90007 */ addiu $t9, $t7, 7 -/* 0BB280 800BA680 24580008 */ addiu $t8, $v0, 8 -/* 0BB284 800BA684 AC780000 */ sw $t8, ($v1) -/* 0BB288 800BA688 001970C2 */ srl $t6, $t9, 3 -/* 0BB28C 800BA68C 31D801FF */ andi $t8, $t6, 0x1ff -/* 0BB290 800BA690 00187A40 */ sll $t7, $t8, 9 -/* 0BB294 800BA694 3C01F518 */ lui $at, 0xf518 -/* 0BB298 800BA698 01E1C825 */ or $t9, $t7, $at -/* 0BB29C 800BA69C 03297025 */ or $t6, $t9, $t1 -/* 0BB2A0 800BA6A0 AFA2003C */ sw $v0, 0x3c($sp) -/* 0BB2A4 800BA6A4 AC4E0000 */ sw $t6, ($v0) -/* 0BB2A8 800BA6A8 8FA40064 */ lw $a0, 0x64($sp) -/* 0BB2AC 800BA6AC 0005C080 */ sll $t8, $a1, 2 -/* 0BB2B0 800BA6B0 308F0007 */ andi $t7, $a0, 7 -/* 0BB2B4 800BA6B4 000FCE00 */ sll $t9, $t7, 0x18 -/* 0BB2B8 800BA6B8 032A7025 */ or $t6, $t9, $t2 -/* 0BB2BC 800BA6BC 01CB7825 */ or $t7, $t6, $t3 -/* 0BB2C0 800BA6C0 AC4F0004 */ sw $t7, 4($v0) -/* 0BB2C4 800BA6C4 8C620000 */ lw $v0, ($v1) -/* 0BB2C8 800BA6C8 03202025 */ move $a0, $t9 -/* 0BB2CC 800BA6CC 24590008 */ addiu $t9, $v0, 8 -/* 0BB2D0 800BA6D0 AC790000 */ sw $t9, ($v1) -/* 0BB2D4 800BA6D4 33190FFF */ andi $t9, $t8, 0xfff -/* 0BB2D8 800BA6D8 3C0EF200 */ lui $t6, 0xf200 -/* 0BB2DC 800BA6DC AFA20038 */ sw $v0, 0x38($sp) -/* 0BB2E0 800BA6E0 AC4E0000 */ sw $t6, ($v0) -/* 0BB2E4 800BA6E4 00197300 */ sll $t6, $t9, 0xc -/* 0BB2E8 800BA6E8 008EC025 */ or $t8, $a0, $t6 -/* 0BB2EC 800BA6EC 03202825 */ move $a1, $t9 -/* 0BB2F0 800BA6F0 0319C825 */ or $t9, $t8, $t9 -/* 0BB2F4 800BA6F4 AC590004 */ sw $t9, 4($v0) -/* 0BB2F8 800BA6F8 10000078 */ b .L800BA8DC -/* 0BB2FC 800BA6FC 00407825 */ move $t7, $v0 -.L800BA700: -/* 0BB300 800BA700 24639FC0 */ addiu $v1, $v1, -0x6040 -/* 0BB304 800BA704 8C620000 */ lw $v0, ($v1) -/* 0BB308 800BA708 3C018000 */ lui $at, (0x80000020 >> 16) # lui $at, 0x8000 -/* 0BB30C 800BA70C 244E0008 */ addiu $t6, $v0, 8 -/* 0BB310 800BA710 AC6E0000 */ sw $t6, ($v1) -/* 0BB314 800BA714 34210020 */ ori $at, (0x80000020 & 0xFFFF) # ori $at, $at, 0x20 -/* 0BB318 800BA718 AFA20034 */ sw $v0, 0x34($sp) -/* 0BB31C 800BA71C 00E17821 */ addu $t7, $a3, $at -/* 0BB320 800BA720 3C18FD10 */ lui $t8, 0xfd10 -/* 0BB324 800BA724 AC580000 */ sw $t8, ($v0) -/* 0BB328 800BA728 AC4F0004 */ sw $t7, 4($v0) -/* 0BB32C 800BA72C 8C620000 */ lw $v0, ($v1) -/* 0BB330 800BA730 3C01F510 */ lui $at, 0xf510 -/* 0BB334 800BA734 30C901FF */ andi $t1, $a2, 0x1ff -/* 0BB338 800BA738 0121C025 */ or $t8, $t1, $at -/* 0BB33C 800BA73C 244E0008 */ addiu $t6, $v0, 8 -/* 0BB340 800BA740 AC6E0000 */ sw $t6, ($v1) -/* 0BB344 800BA744 3184000F */ andi $a0, $t4, 0xf -/* 0BB348 800BA748 AFA20030 */ sw $v0, 0x30($sp) -/* 0BB34C 800BA74C 00045380 */ sll $t2, $a0, 0xe -/* 0BB350 800BA750 3C010700 */ lui $at, 0x700 -/* 0BB354 800BA754 AC580000 */ sw $t8, ($v0) -/* 0BB358 800BA758 8FB80030 */ lw $t8, 0x30($sp) -/* 0BB35C 800BA75C 0141C825 */ or $t9, $t2, $at -/* 0BB360 800BA760 00045900 */ sll $t3, $a0, 4 -/* 0BB364 800BA764 01080019 */ multu $t0, $t0 -/* 0BB368 800BA768 032B7025 */ or $t6, $t9, $t3 -/* 0BB36C 800BA76C AF0E0004 */ sw $t6, 4($t8) -/* 0BB370 800BA770 8C620000 */ lw $v0, ($v1) -/* 0BB374 800BA774 3C19E600 */ lui $t9, 0xe600 -/* 0BB378 800BA778 244F0008 */ addiu $t7, $v0, 8 -/* 0BB37C 800BA77C AC6F0000 */ sw $t7, ($v1) -/* 0BB380 800BA780 AFA2002C */ sw $v0, 0x2c($sp) -/* 0BB384 800BA784 AC590000 */ sw $t9, ($v0) -/* 0BB388 800BA788 8FB8002C */ lw $t8, 0x2c($sp) -/* 0BB38C 800BA78C 3C19F300 */ lui $t9, 0xf300 -/* 0BB390 800BA790 AF000004 */ sw $zero, 4($t8) -/* 0BB394 800BA794 8C6D0000 */ lw $t5, ($v1) -/* 0BB398 800BA798 00002812 */ mflo $a1 -/* 0BB39C 800BA79C 24A5FFFF */ addiu $a1, $a1, -1 -/* 0BB3A0 800BA7A0 25AF0008 */ addiu $t7, $t5, 8 -/* 0BB3A4 800BA7A4 AC6F0000 */ sw $t7, ($v1) -/* 0BB3A8 800BA7A8 2CA107FF */ sltiu $at, $a1, 0x7ff -/* 0BB3AC 800BA7AC 10200003 */ beqz $at, .L800BA7BC -/* 0BB3B0 800BA7B0 ADB90000 */ sw $t9, ($t5) -/* 0BB3B4 800BA7B4 10000002 */ b .L800BA7C0 -/* 0BB3B8 800BA7B8 00A06025 */ move $t4, $a1 -.L800BA7BC: -/* 0BB3BC 800BA7BC 240C07FF */ li $t4, 2047 -.L800BA7C0: -/* 0BB3C0 800BA7C0 00087040 */ sll $t6, $t0, 1 -/* 0BB3C4 800BA7C4 000EC0C2 */ srl $t8, $t6, 3 -/* 0BB3C8 800BA7C8 03001025 */ move $v0, $t8 -/* 0BB3CC 800BA7CC 17000003 */ bnez $t8, .L800BA7DC -/* 0BB3D0 800BA7D0 AFAE0000 */ sw $t6, ($sp) -/* 0BB3D4 800BA7D4 10000002 */ b .L800BA7E0 -/* 0BB3D8 800BA7D8 24070001 */ li $a3, 1 -.L800BA7DC: -/* 0BB3DC 800BA7DC 00403825 */ move $a3, $v0 -.L800BA7E0: -/* 0BB3E0 800BA7E0 14400003 */ bnez $v0, .L800BA7F0 -/* 0BB3E4 800BA7E4 24EF07FF */ addiu $t7, $a3, 0x7ff -/* 0BB3E8 800BA7E8 10000002 */ b .L800BA7F4 -/* 0BB3EC 800BA7EC 24060001 */ li $a2, 1 -.L800BA7F0: -/* 0BB3F0 800BA7F0 00403025 */ move $a2, $v0 -.L800BA7F4: -/* 0BB3F4 800BA7F4 01E6001B */ divu $zero, $t7, $a2 -/* 0BB3F8 800BA7F8 318F0FFF */ andi $t7, $t4, 0xfff -/* 0BB3FC 800BA7FC 3C010700 */ lui $at, 0x700 -/* 0BB400 800BA800 2505FFFF */ addiu $a1, $t0, -1 -/* 0BB404 800BA804 14C00002 */ bnez $a2, .L800BA810 -/* 0BB408 800BA808 00000000 */ nop -/* 0BB40C 800BA80C 0007000D */ break 7 -.L800BA810: -/* 0BB410 800BA810 0000C812 */ mflo $t9 -/* 0BB414 800BA814 332E0FFF */ andi $t6, $t9, 0xfff -/* 0BB418 800BA818 01C1C025 */ or $t8, $t6, $at -/* 0BB41C 800BA81C 000FCB00 */ sll $t9, $t7, 0xc -/* 0BB420 800BA820 03197025 */ or $t6, $t8, $t9 -/* 0BB424 800BA824 ADAE0004 */ sw $t6, 4($t5) -/* 0BB428 800BA828 8C620000 */ lw $v0, ($v1) -/* 0BB42C 800BA82C 3C18E700 */ lui $t8, 0xe700 -/* 0BB430 800BA830 244F0008 */ addiu $t7, $v0, 8 -/* 0BB434 800BA834 AC6F0000 */ sw $t7, ($v1) -/* 0BB438 800BA838 AFA20024 */ sw $v0, 0x24($sp) -/* 0BB43C 800BA83C AC580000 */ sw $t8, ($v0) -/* 0BB440 800BA840 8FAE0024 */ lw $t6, 0x24($sp) -/* 0BB444 800BA844 3C01F510 */ lui $at, 0xf510 -/* 0BB448 800BA848 ADC00004 */ sw $zero, 4($t6) -/* 0BB44C 800BA84C 8C620000 */ lw $v0, ($v1) -/* 0BB450 800BA850 8FB80000 */ lw $t8, ($sp) -/* 0BB454 800BA854 244F0008 */ addiu $t7, $v0, 8 -/* 0BB458 800BA858 27190007 */ addiu $t9, $t8, 7 -/* 0BB45C 800BA85C 001970C2 */ srl $t6, $t9, 3 -/* 0BB460 800BA860 AC6F0000 */ sw $t7, ($v1) -/* 0BB464 800BA864 31CF01FF */ andi $t7, $t6, 0x1ff -/* 0BB468 800BA868 000FC240 */ sll $t8, $t7, 9 -/* 0BB46C 800BA86C 0301C825 */ or $t9, $t8, $at -/* 0BB470 800BA870 03297025 */ or $t6, $t9, $t1 -/* 0BB474 800BA874 AFA20020 */ sw $v0, 0x20($sp) -/* 0BB478 800BA878 AC4E0000 */ sw $t6, ($v0) -/* 0BB47C 800BA87C 8FA40064 */ lw $a0, 0x64($sp) -/* 0BB480 800BA880 00000000 */ nop -/* 0BB484 800BA884 30980007 */ andi $t8, $a0, 7 -/* 0BB488 800BA888 0018CE00 */ sll $t9, $t8, 0x18 -/* 0BB48C 800BA88C 8FB80020 */ lw $t8, 0x20($sp) -/* 0BB490 800BA890 032A7025 */ or $t6, $t9, $t2 -/* 0BB494 800BA894 01CB7825 */ or $t7, $t6, $t3 -/* 0BB498 800BA898 AF0F0004 */ sw $t7, 4($t8) -/* 0BB49C 800BA89C 8C620000 */ lw $v0, ($v1) -/* 0BB4A0 800BA8A0 03202025 */ move $a0, $t9 -/* 0BB4A4 800BA8A4 24590008 */ addiu $t9, $v0, 8 -/* 0BB4A8 800BA8A8 AC790000 */ sw $t9, ($v1) -/* 0BB4AC 800BA8AC 0005C080 */ sll $t8, $a1, 2 -/* 0BB4B0 800BA8B0 3C0EF200 */ lui $t6, 0xf200 -/* 0BB4B4 800BA8B4 AFA2001C */ sw $v0, 0x1c($sp) -/* 0BB4B8 800BA8B8 33190FFF */ andi $t9, $t8, 0xfff -/* 0BB4BC 800BA8BC AC4E0000 */ sw $t6, ($v0) -/* 0BB4C0 800BA8C0 00197300 */ sll $t6, $t9, 0xc -/* 0BB4C4 800BA8C4 008E7825 */ or $t7, $a0, $t6 -/* 0BB4C8 800BA8C8 01F9C025 */ or $t8, $t7, $t9 -/* 0BB4CC 800BA8CC 03202825 */ move $a1, $t9 -/* 0BB4D0 800BA8D0 8FB9001C */ lw $t9, 0x1c($sp) -/* 0BB4D4 800BA8D4 00000000 */ nop -/* 0BB4D8 800BA8D8 AF380004 */ sw $t8, 4($t9) -.L800BA8DC: -/* 0BB4DC 800BA8DC 03E00008 */ jr $ra -/* 0BB4E0 800BA8E0 27BD0060 */ addiu $sp, $sp, 0x60 - -glabel func_800BA8E4 -/* 0BB4E4 800BA8E4 27BDFEE0 */ addiu $sp, $sp, -0x120 -/* 0BB4E8 800BA8E8 24010001 */ li $at, 1 -/* 0BB4EC 800BA8EC AFBF005C */ sw $ra, 0x5c($sp) -/* 0BB4F0 800BA8F0 AFBE0058 */ sw $fp, 0x58($sp) -/* 0BB4F4 800BA8F4 AFB70054 */ sw $s7, 0x54($sp) -/* 0BB4F8 800BA8F8 AFB60050 */ sw $s6, 0x50($sp) -/* 0BB4FC 800BA8FC AFB5004C */ sw $s5, 0x4c($sp) -/* 0BB500 800BA900 AFB40048 */ sw $s4, 0x48($sp) -/* 0BB504 800BA904 AFB30044 */ sw $s3, 0x44($sp) -/* 0BB508 800BA908 AFB20040 */ sw $s2, 0x40($sp) -/* 0BB50C 800BA90C AFB1003C */ sw $s1, 0x3c($sp) -/* 0BB510 800BA910 AFB00038 */ sw $s0, 0x38($sp) -/* 0BB514 800BA914 E7B90030 */ swc1 $f25, 0x30($sp) -/* 0BB518 800BA918 E7B80034 */ swc1 $f24, 0x34($sp) -/* 0BB51C 800BA91C E7B70028 */ swc1 $f23, 0x28($sp) -/* 0BB520 800BA920 E7B6002C */ swc1 $f22, 0x2c($sp) -/* 0BB524 800BA924 E7B50020 */ swc1 $f21, 0x20($sp) -/* 0BB528 800BA928 E7B40024 */ swc1 $f20, 0x24($sp) -/* 0BB52C 800BA92C AFA40120 */ sw $a0, 0x120($sp) -/* 0BB530 800BA930 14C10006 */ bne $a2, $at, .L800BA94C -/* 0BB534 800BA934 AFA50124 */ sw $a1, 0x124($sp) -/* 0BB538 800BA938 3C0E8013 */ lui $t6, %hi(D_8012A078) # $t6, 0x8013 -/* 0BB53C 800BA93C 8DCEA078 */ lw $t6, %lo(D_8012A078)($t6) -/* 0BB540 800BA940 24010002 */ li $at, 2 -/* 0BB544 800BA944 11C10003 */ beq $t6, $at, .L800BA954 -/* 0BB548 800BA948 240F0002 */ li $t7, 2 -.L800BA94C: -/* 0BB54C 800BA94C 10000002 */ b .L800BA958 -/* 0BB550 800BA950 AFA00128 */ sw $zero, 0x128($sp) -.L800BA954: -/* 0BB554 800BA954 AFAF0128 */ sw $t7, 0x128($sp) -.L800BA958: -/* 0BB558 800BA958 3C18800E */ lui $t8, %hi(D_800E30DC) # $t8, 0x800e -/* 0BB55C 800BA95C 8F1830DC */ lw $t8, %lo(D_800E30DC)($t8) -/* 0BB560 800BA960 3C118013 */ lui $s1, %hi(D_80129FC0) # $s1, 0x8013 -/* 0BB564 800BA964 1B00024F */ blez $t8, .L800BB2A4 -/* 0BB568 800BA968 26319FC0 */ addiu $s1, %lo(D_80129FC0) # addiu $s1, $s1, -0x6040 -/* 0BB56C 800BA96C 8FB90120 */ lw $t9, 0x120($sp) -/* 0BB570 800BA970 8FAF0124 */ lw $t7, 0x124($sp) -/* 0BB574 800BA974 8F2E0000 */ lw $t6, ($t9) -/* 0BB578 800BA978 3C018013 */ lui $at, %hi(D_80129FC4) # $at, 0x8013 -/* 0BB57C 800BA97C AE2E0000 */ sw $t6, ($s1) -/* 0BB580 800BA980 8DF80000 */ lw $t8, ($t7) -/* 0BB584 800BA984 AFA000DC */ sw $zero, 0xdc($sp) -/* 0BB588 800BA988 02202025 */ move $a0, $s1 -/* 0BB58C 800BA98C 0C01ECF4 */ jal func_8007B3D0 -/* 0BB590 800BA990 AC389FC4 */ sw $t8, %lo(D_80129FC4)($at) -/* 0BB594 800BA994 8E270000 */ lw $a3, ($s1) -/* 0BB598 800BA998 3C1F8013 */ lui $ra, %hi(D_80129FC8) # $ra, 0x8013 -/* 0BB59C 800BA99C 24F90008 */ addiu $t9, $a3, 8 -/* 0BB5A0 800BA9A0 AE390000 */ sw $t9, ($s1) -/* 0BB5A4 800BA9A4 3C0EB700 */ lui $t6, 0xb700 -/* 0BB5A8 800BA9A8 240F0001 */ li $t7, 1 -/* 0BB5AC 800BA9AC 27FF9FC8 */ addiu $ra, %lo(D_80129FC8) # addiu $ra, $ra, -0x6038 -/* 0BB5B0 800BA9B0 ACEF0004 */ sw $t7, 4($a3) -/* 0BB5B4 800BA9B4 ACEE0000 */ sw $t6, ($a3) -/* 0BB5B8 800BA9B8 8FF8004C */ lw $t8, 0x4c($ra) -/* 0BB5BC 800BA9BC 3C190001 */ lui $t9, 1 -/* 0BB5C0 800BA9C0 1300006F */ beqz $t8, .L800BAB80 -/* 0BB5C4 800BA9C4 3C0F8013 */ lui $t7, 0x8013 -/* 0BB5C8 800BA9C8 8E270000 */ lw $a3, ($s1) -/* 0BB5CC 800BA9CC 3C0EB600 */ lui $t6, 0xb600 -/* 0BB5D0 800BA9D0 24F90008 */ addiu $t9, $a3, 8 -/* 0BB5D4 800BA9D4 AE390000 */ sw $t9, ($s1) -/* 0BB5D8 800BA9D8 3C0F0001 */ lui $t7, 1 -/* 0BB5DC 800BA9DC 3C058013 */ lui $a1, %hi(D_8012A09C) # $a1, 0x8013 -/* 0BB5E0 800BA9E0 ACEF0004 */ sw $t7, 4($a3) -/* 0BB5E4 800BA9E4 ACEE0000 */ sw $t6, ($a3) -/* 0BB5E8 800BA9E8 8CA5A09C */ lw $a1, %lo(D_8012A09C)($a1) -/* 0BB5EC 800BA9EC 3C04800E */ lui $a0, %hi(D_800E30D0) # $a0, 0x800e -/* 0BB5F0 800BA9F0 8C8430D0 */ lw $a0, %lo(D_800E30D0)($a0) -/* 0BB5F4 800BA9F4 0005C200 */ sll $t8, $a1, 8 -/* 0BB5F8 800BA9F8 0C01ED1B */ jal func_8007B46C -/* 0BB5FC 800BA9FC 03002825 */ move $a1, $t8 -/* 0BB600 800BAA00 3C198013 */ lui $t9, %hi(D_8012A07C) # $t9, 0x8013 -/* 0BB604 800BAA04 8F39A07C */ lw $t9, %lo(D_8012A07C)($t9) -/* 0BB608 800BAA08 3C048013 */ lui $a0, %hi(D_8012A080) # $a0, 0x8013 -/* 0BB60C 800BAA0C 93250007 */ lbu $a1, 7($t9) -/* 0BB610 800BAA10 8C84A080 */ lw $a0, %lo(D_8012A080)($a0) -/* 0BB614 800BAA14 00057380 */ sll $t6, $a1, 0xe -/* 0BB618 800BAA18 00408025 */ move $s0, $v0 -/* 0BB61C 800BAA1C 0C01ED1B */ jal func_8007B46C -/* 0BB620 800BAA20 01C02825 */ move $a1, $t6 -/* 0BB624 800BAA24 00409025 */ move $s2, $v0 -/* 0BB628 800BAA28 02002025 */ move $a0, $s0 -/* 0BB62C 800BAA2C 0C02E92E */ jal func_800BA4B8 -/* 0BB630 800BAA30 24050001 */ li $a1, 1 -/* 0BB634 800BAA34 02402025 */ move $a0, $s2 -/* 0BB638 800BAA38 0C02E92E */ jal func_800BA4B8 -/* 0BB63C 800BAA3C 00002825 */ move $a1, $zero -/* 0BB640 800BAA40 8E270000 */ lw $a3, ($s1) -/* 0BB644 800BAA44 3C18FC22 */ lui $t8, (0xFC2266AC >> 16) # lui $t8, 0xfc22 -/* 0BB648 800BAA48 24EF0008 */ addiu $t7, $a3, 8 -/* 0BB64C 800BAA4C AE2F0000 */ sw $t7, ($s1) -/* 0BB650 800BAA50 3C191010 */ lui $t9, (0x1010923F >> 16) # lui $t9, 0x1010 -/* 0BB654 800BAA54 3739923F */ ori $t9, (0x1010923F & 0xFFFF) # ori $t9, $t9, 0x923f -/* 0BB658 800BAA58 371866AC */ ori $t8, (0xFC2266AC & 0xFFFF) # ori $t8, $t8, 0x66ac -/* 0BB65C 800BAA5C ACF80000 */ sw $t8, ($a3) -/* 0BB660 800BAA60 ACF90004 */ sw $t9, 4($a3) -/* 0BB664 800BAA64 920E0002 */ lbu $t6, 2($s0) -/* 0BB668 800BAA68 3C1F8013 */ lui $ra, %hi(D_80129FC8) # $ra, 0x8013 -/* 0BB66C 800BAA6C 31CF000F */ andi $t7, $t6, 0xf -/* 0BB670 800BAA70 15E00010 */ bnez $t7, .L800BAAB4 -/* 0BB674 800BAA74 27FF9FC8 */ addiu $ra, %lo(D_80129FC8) # addiu $ra, $ra, -0x6038 -/* 0BB678 800BAA78 0C019884 */ jal func_80066210 -/* 0BB67C 800BAA7C 00000000 */ nop -/* 0BB680 800BAA80 3C1F8013 */ lui $ra, %hi(D_80129FC8) # $ra, 0x8013 -/* 0BB684 800BAA84 1C40000B */ bgtz $v0, .L800BAAB4 -/* 0BB688 800BAA88 27FF9FC8 */ addiu $ra, %lo(D_80129FC8) # addiu $ra, $ra, -0x6038 -/* 0BB68C 800BAA8C 8E270000 */ lw $a3, ($s1) -/* 0BB690 800BAA90 3C19EF18 */ lui $t9, (0xEF182C0F >> 16) # lui $t9, 0xef18 -/* 0BB694 800BAA94 3C0E0010 */ lui $t6, (0x001045D8 >> 16) # lui $t6, 0x10 -/* 0BB698 800BAA98 24F80008 */ addiu $t8, $a3, 8 -/* 0BB69C 800BAA9C AE380000 */ sw $t8, ($s1) -/* 0BB6A0 800BAAA0 35CE45D8 */ ori $t6, (0x001045D8 & 0xFFFF) # ori $t6, $t6, 0x45d8 -/* 0BB6A4 800BAAA4 37392C0F */ ori $t9, (0xEF182C0F & 0xFFFF) # ori $t9, $t9, 0x2c0f -/* 0BB6A8 800BAAA8 ACF90000 */ sw $t9, ($a3) -/* 0BB6AC 800BAAAC 1000000A */ b .L800BAAD8 -/* 0BB6B0 800BAAB0 ACEE0004 */ sw $t6, 4($a3) -.L800BAAB4: -/* 0BB6B4 800BAAB4 8E270000 */ lw $a3, ($s1) -/* 0BB6B8 800BAAB8 3C18EF18 */ lui $t8, (0xEF182C0F >> 16) # lui $t8, 0xef18 -/* 0BB6BC 800BAABC 24EF0008 */ addiu $t7, $a3, 8 -/* 0BB6C0 800BAAC0 AE2F0000 */ sw $t7, ($s1) -/* 0BB6C4 800BAAC4 3C190011 */ lui $t9, (0x00112078 >> 16) # lui $t9, 0x11 -/* 0BB6C8 800BAAC8 37392078 */ ori $t9, (0x00112078 & 0xFFFF) # ori $t9, $t9, 0x2078 -/* 0BB6CC 800BAACC 37182C0F */ ori $t8, (0xEF182C0F & 0xFFFF) # ori $t8, $t8, 0x2c0f -/* 0BB6D0 800BAAD0 ACF80000 */ sw $t8, ($a3) -/* 0BB6D4 800BAAD4 ACF90004 */ sw $t9, 4($a3) -.L800BAAD8: -/* 0BB6D8 800BAAD8 8E270000 */ lw $a3, ($s1) -/* 0BB6DC 800BAADC 2403FF00 */ li $v1, -256 -/* 0BB6E0 800BAAE0 24EE0008 */ addiu $t6, $a3, 8 -/* 0BB6E4 800BAAE4 AE2E0000 */ sw $t6, ($s1) -/* 0BB6E8 800BAAE8 3C09800E */ lui $t1, %hi(D_800E3180) # $t1, 0x800e -/* 0BB6EC 800BAAEC 3C0FFA00 */ lui $t7, 0xfa00 -/* 0BB6F0 800BAAF0 25293180 */ addiu $t1, %lo(D_800E3180) # addiu $t1, $t1, 0x3180 -/* 0BB6F4 800BAAF4 ACEF0000 */ sw $t7, ($a3) -/* 0BB6F8 800BAAF8 ACE30004 */ sw $v1, 4($a3) -/* 0BB6FC 800BAAFC 8D380000 */ lw $t8, ($t1) -/* 0BB700 800BAB00 00000000 */ nop -/* 0BB704 800BAB04 13000016 */ beqz $t8, .L800BAB60 -/* 0BB708 800BAB08 00000000 */ nop -/* 0BB70C 800BAB0C 8E270000 */ lw $a3, ($s1) -/* 0BB710 800BAB10 3C0EFB00 */ lui $t6, 0xfb00 -/* 0BB714 800BAB14 24F90008 */ addiu $t9, $a3, 8 -/* 0BB718 800BAB18 AE390000 */ sw $t9, ($s1) -/* 0BB71C 800BAB1C ACEE0000 */ sw $t6, ($a3) -/* 0BB720 800BAB20 8D220000 */ lw $v0, ($t1) -/* 0BB724 800BAB24 3C128000 */ lui $s2, 0x8000 -/* 0BB728 800BAB28 90580010 */ lbu $t8, 0x10($v0) -/* 0BB72C 800BAB2C 904F0011 */ lbu $t7, 0x11($v0) -/* 0BB730 800BAB30 0018CE00 */ sll $t9, $t8, 0x18 -/* 0BB734 800BAB34 000FC400 */ sll $t8, $t7, 0x10 -/* 0BB738 800BAB38 03387025 */ or $t6, $t9, $t8 -/* 0BB73C 800BAB3C 90590012 */ lbu $t9, 0x12($v0) -/* 0BB740 800BAB40 00000000 */ nop -/* 0BB744 800BAB44 0019C200 */ sll $t8, $t9, 8 -/* 0BB748 800BAB48 01D87825 */ or $t7, $t6, $t8 -/* 0BB74C 800BAB4C 904E0013 */ lbu $t6, 0x13($v0) -/* 0BB750 800BAB50 00000000 */ nop -/* 0BB754 800BAB54 01EEC025 */ or $t8, $t7, $t6 -/* 0BB758 800BAB58 10000061 */ b .L800BACE0 -/* 0BB75C 800BAB5C ACF80004 */ sw $t8, 4($a3) -.L800BAB60: -/* 0BB760 800BAB60 8E270000 */ lw $a3, ($s1) -/* 0BB764 800BAB64 3C0FFB00 */ lui $t7, %hi(D_FAFFA07C) # $t7, 0xfb00 -/* 0BB768 800BAB68 24F90008 */ addiu $t9, $a3, 8 -/* 0BB76C 800BAB6C AE390000 */ sw $t9, ($s1) -/* 0BB770 800BAB70 ACE30004 */ sw $v1, 4($a3) -/* 0BB774 800BAB74 ACEF0000 */ sw $t7, ($a3) -/* 0BB778 800BAB78 10000059 */ b .L800BACE0 -/* 0BB77C 800BAB7C 3C128000 */ lui $s2, 0x8000 -.L800BAB80: -/* 0BB780 800BAB80 8E270000 */ lw $a3, ($s1) -/* 0BB784 800BAB84 3C18B700 */ lui $t8, 0xb700 -/* 0BB788 800BAB88 24EE0008 */ addiu $t6, $a3, 8 -/* 0BB78C 800BAB8C AE2E0000 */ sw $t6, ($s1) -/* 0BB790 800BAB90 ACF90004 */ sw $t9, 4($a3) -/* 0BB794 800BAB94 ACF80000 */ sw $t8, ($a3) -/* 0BB798 800BAB98 8DEFA07C */ lw $t7, %lo(D_FAFFA07C)($t7) -/* 0BB79C 800BAB9C 3C048013 */ lui $a0, %hi(D_8012A080) # $a0, 0x8013 -/* 0BB7A0 800BABA0 91E50007 */ lbu $a1, 7($t7) -/* 0BB7A4 800BABA4 8C84A080 */ lw $a0, %lo(D_8012A080)($a0) -/* 0BB7A8 800BABA8 00057380 */ sll $t6, $a1, 0xe -/* 0BB7AC 800BABAC 0C01ED1B */ jal func_8007B46C -/* 0BB7B0 800BABB0 01C02825 */ move $a1, $t6 -/* 0BB7B4 800BABB4 8E270000 */ lw $a3, ($s1) -/* 0BB7B8 800BABB8 3C010700 */ lui $at, 0x700 -/* 0BB7BC 800BABBC 24F80008 */ addiu $t8, $a3, 8 -/* 0BB7C0 800BABC0 AE380000 */ sw $t8, ($s1) -/* 0BB7C4 800BABC4 8444000A */ lh $a0, 0xa($v0) -/* 0BB7C8 800BABC8 3C128000 */ lui $s2, 0x8000 -/* 0BB7CC 800BABCC 309900FF */ andi $t9, $a0, 0xff -/* 0BB7D0 800BABD0 00197C00 */ sll $t7, $t9, 0x10 -/* 0BB7D4 800BABD4 0004C0C0 */ sll $t8, $a0, 3 -/* 0BB7D8 800BABD8 3319FFFF */ andi $t9, $t8, 0xffff -/* 0BB7DC 800BABDC 01E17025 */ or $t6, $t7, $at -/* 0BB7E0 800BABE0 01D97825 */ or $t7, $t6, $t9 -/* 0BB7E4 800BABE4 ACEF0000 */ sw $t7, ($a3) -/* 0BB7E8 800BABE8 8C58000C */ lw $t8, 0xc($v0) -/* 0BB7EC 800BABEC 3C0FFC56 */ lui $t7, (0xFC567E04 >> 16) # lui $t7, 0xfc56 -/* 0BB7F0 800BABF0 03127021 */ addu $t6, $t8, $s2 -/* 0BB7F4 800BABF4 ACEE0004 */ sw $t6, 4($a3) -/* 0BB7F8 800BABF8 8E270000 */ lw $a3, ($s1) -/* 0BB7FC 800BABFC 3C181FFC */ lui $t8, (0x1FFCF7F8 >> 16) # lui $t8, 0x1ffc -/* 0BB800 800BAC00 24F90008 */ addiu $t9, $a3, 8 -/* 0BB804 800BAC04 AE390000 */ sw $t9, ($s1) -/* 0BB808 800BAC08 3718F7F8 */ ori $t8, (0x1FFCF7F8 & 0xFFFF) # ori $t8, $t8, 0xf7f8 -/* 0BB80C 800BAC0C 35EF7E04 */ ori $t7, (0xFC567E04 & 0xFFFF) # ori $t7, $t7, 0x7e04 -/* 0BB810 800BAC10 ACEF0000 */ sw $t7, ($a3) -/* 0BB814 800BAC14 ACF80004 */ sw $t8, 4($a3) -/* 0BB818 800BAC18 8E270000 */ lw $a3, ($s1) -/* 0BB81C 800BAC1C 3C0FC811 */ lui $t7, (0xC8112078 >> 16) # lui $t7, 0xc811 -/* 0BB820 800BAC20 24EE0008 */ addiu $t6, $a3, 8 -/* 0BB824 800BAC24 AE2E0000 */ sw $t6, ($s1) -/* 0BB828 800BAC28 3C19EF18 */ lui $t9, (0xEF182C0F >> 16) # lui $t9, 0xef18 -/* 0BB82C 800BAC2C 37392C0F */ ori $t9, (0xEF182C0F & 0xFFFF) # ori $t9, $t9, 0x2c0f -/* 0BB830 800BAC30 35EF2078 */ ori $t7, (0xC8112078 & 0xFFFF) # ori $t7, $t7, 0x2078 -/* 0BB834 800BAC34 ACEF0004 */ sw $t7, 4($a3) -/* 0BB838 800BAC38 ACF90000 */ sw $t9, ($a3) -/* 0BB83C 800BAC3C 8E270000 */ lw $a3, ($s1) -/* 0BB840 800BAC40 3C09800E */ lui $t1, %hi(D_800E3180) # $t1, 0x800e -/* 0BB844 800BAC44 24F80008 */ addiu $t8, $a3, 8 -/* 0BB848 800BAC48 AE380000 */ sw $t8, ($s1) -/* 0BB84C 800BAC4C 2419FFFF */ li $t9, -1 -/* 0BB850 800BAC50 3C0EFA00 */ lui $t6, 0xfa00 -/* 0BB854 800BAC54 25293180 */ addiu $t1, %lo(D_800E3180) # addiu $t1, $t1, 0x3180 -/* 0BB858 800BAC58 ACEE0000 */ sw $t6, ($a3) -/* 0BB85C 800BAC5C ACF90004 */ sw $t9, 4($a3) -/* 0BB860 800BAC60 8D2F0000 */ lw $t7, ($t1) -/* 0BB864 800BAC64 3C1F8013 */ lui $ra, %hi(D_80129FC8) # $ra, 0x8013 -/* 0BB868 800BAC68 11E00016 */ beqz $t7, .L800BACC4 -/* 0BB86C 800BAC6C 27FF9FC8 */ addiu $ra, %lo(D_80129FC8) # addiu $ra, $ra, -0x6038 -/* 0BB870 800BAC70 8E270000 */ lw $a3, ($s1) -/* 0BB874 800BAC74 3C0EFB00 */ lui $t6, 0xfb00 -/* 0BB878 800BAC78 24F80008 */ addiu $t8, $a3, 8 -/* 0BB87C 800BAC7C AE380000 */ sw $t8, ($s1) -/* 0BB880 800BAC80 ACEE0000 */ sw $t6, ($a3) -/* 0BB884 800BAC84 8D220000 */ lw $v0, ($t1) -/* 0BB888 800BAC88 00000000 */ nop -/* 0BB88C 800BAC8C 904F0010 */ lbu $t7, 0x10($v0) -/* 0BB890 800BAC90 90590011 */ lbu $t9, 0x11($v0) -/* 0BB894 800BAC94 000FC600 */ sll $t8, $t7, 0x18 -/* 0BB898 800BAC98 00197C00 */ sll $t7, $t9, 0x10 -/* 0BB89C 800BAC9C 030F7025 */ or $t6, $t8, $t7 -/* 0BB8A0 800BACA0 90580012 */ lbu $t8, 0x12($v0) -/* 0BB8A4 800BACA4 00000000 */ nop -/* 0BB8A8 800BACA8 00187A00 */ sll $t7, $t8, 8 -/* 0BB8AC 800BACAC 01CFC825 */ or $t9, $t6, $t7 -/* 0BB8B0 800BACB0 904E0013 */ lbu $t6, 0x13($v0) -/* 0BB8B4 800BACB4 00000000 */ nop -/* 0BB8B8 800BACB8 032E7825 */ or $t7, $t9, $t6 -/* 0BB8BC 800BACBC 10000008 */ b .L800BACE0 -/* 0BB8C0 800BACC0 ACEF0004 */ sw $t7, 4($a3) -.L800BACC4: -/* 0BB8C4 800BACC4 8E270000 */ lw $a3, ($s1) -/* 0BB8C8 800BACC8 2403FF00 */ li $v1, -256 -/* 0BB8CC 800BACCC 24F80008 */ addiu $t8, $a3, 8 -/* 0BB8D0 800BACD0 AE380000 */ sw $t8, ($s1) -/* 0BB8D4 800BACD4 3C19FB00 */ lui $t9, 0xfb00 -/* 0BB8D8 800BACD8 ACF90000 */ sw $t9, ($a3) -/* 0BB8DC 800BACDC ACE30004 */ sw $v1, 4($a3) -.L800BACE0: -/* 0BB8E0 800BACE0 8FEE0028 */ lw $t6, 0x28($ra) -/* 0BB8E4 800BACE4 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0BB8E8 800BACE8 11C00007 */ beqz $t6, .L800BAD08 -/* 0BB8EC 800BACEC 3C0F800E */ lui $t7, %hi(D_800E30DC) # $t7, 0x800e -/* 0BB8F0 800BACF0 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 0BB8F4 800BACF4 4481A000 */ mtc1 $at, $f20 -/* 0BB8F8 800BACF8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0BB8FC 800BACFC 4481C000 */ mtc1 $at, $f24 -/* 0BB900 800BAD00 10000005 */ b .L800BAD18 -/* 0BB904 800BAD04 E7B400EC */ swc1 $f20, 0xec($sp) -.L800BAD08: -/* 0BB908 800BAD08 4481C000 */ mtc1 $at, $f24 -/* 0BB90C 800BAD0C 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 0BB910 800BAD10 4481A000 */ mtc1 $at, $f20 -/* 0BB914 800BAD14 E7B800EC */ swc1 $f24, 0xec($sp) -.L800BAD18: -/* 0BB918 800BAD18 8DEF30DC */ lw $t7, %lo(D_800E30DC)($t7) -/* 0BB91C 800BAD1C A7A000E8 */ sh $zero, 0xe8($sp) -/* 0BB920 800BAD20 A7A000E6 */ sh $zero, 0xe6($sp) -/* 0BB924 800BAD24 19E00146 */ blez $t7, .L800BB240 -/* 0BB928 800BAD28 A7A000E4 */ sh $zero, 0xe4($sp) -/* 0BB92C 800BAD2C 8FB800DC */ lw $t8, 0xdc($sp) -/* 0BB930 800BAD30 3C0E8013 */ lui $t6, %hi(D_8012A1E8) # $t6, 0x8013 -/* 0BB934 800BAD34 25CEA1E8 */ addiu $t6, %lo(D_8012A1E8) # addiu $t6, $t6, -0x5e18 -/* 0BB938 800BAD38 0018C840 */ sll $t9, $t8, 1 -/* 0BB93C 800BAD3C 032E8021 */ addu $s0, $t9, $t6 -/* 0BB940 800BAD40 3C17800E */ lui $s7, %hi(D_800E3080) # $s7, 0x800e -/* 0BB944 800BAD44 3C15800E */ lui $s5, %hi(D_800E3070) # $s5, 0x800e -/* 0BB948 800BAD48 3C138013 */ lui $s3, %hi(D_8012A018) # $s3, 0x8013 -/* 0BB94C 800BAD4C 4480B000 */ mtc1 $zero, $f22 -/* 0BB950 800BAD50 2673A018 */ addiu $s3, %lo(D_8012A018) # addiu $s3, $s3, -0x5fe8 -/* 0BB954 800BAD54 26B53070 */ addiu $s5, %lo(D_800E3070) # addiu $s5, $s5, 0x3070 -/* 0BB958 800BAD58 26F73080 */ addiu $s7, %lo(D_800E3080) # addiu $s7, $s7, 0x3080 -/* 0BB95C 800BAD5C AFB00074 */ sw $s0, 0x74($sp) -/* 0BB960 800BAD60 2416000A */ li $s6, 10 -/* 0BB964 800BAD64 3C140400 */ lui $s4, 0x400 -.L800BAD68: -/* 0BB968 800BAD68 8FEF004C */ lw $t7, 0x4c($ra) -/* 0BB96C 800BAD6C 8FB00074 */ lw $s0, 0x74($sp) -/* 0BB970 800BAD70 11E00008 */ beqz $t7, .L800BAD94 -/* 0BB974 800BAD74 00000000 */ nop -/* 0BB978 800BAD78 86040000 */ lh $a0, ($s0) -/* 0BB97C 800BAD7C 8FA50128 */ lw $a1, 0x128($sp) -/* 0BB980 800BAD80 0C02E4BD */ jal func_800B92F4 -/* 0BB984 800BAD84 00000000 */ nop -/* 0BB988 800BAD88 3C1F8013 */ lui $ra, %hi(D_80129FC8) # $ra, 0x8013 -/* 0BB98C 800BAD8C 10000007 */ b .L800BADAC -/* 0BB990 800BAD90 27FF9FC8 */ addiu $ra, %lo(D_80129FC8) # addiu $ra, $ra, -0x6038 -.L800BAD94: -/* 0BB994 800BAD94 86040000 */ lh $a0, ($s0) -/* 0BB998 800BAD98 8FA50128 */ lw $a1, 0x128($sp) -/* 0BB99C 800BAD9C 0C02E5EA */ jal func_800B97A8 -/* 0BB9A0 800BADA0 00000000 */ nop -/* 0BB9A4 800BADA4 3C1F8013 */ lui $ra, %hi(D_80129FC8) # $ra, 0x8013 -/* 0BB9A8 800BADA8 27FF9FC8 */ addiu $ra, %lo(D_80129FC8) # addiu $ra, $ra, -0x6038 -.L800BADAC: -/* 0BB9AC 800BADAC 86180000 */ lh $t8, ($s0) -/* 0BB9B0 800BADB0 3C0E800E */ lui $t6, %hi(D_800E30D8) # $t6, 0x800e -/* 0BB9B4 800BADB4 0018C8C0 */ sll $t9, $t8, 3 -/* 0BB9B8 800BADB8 8DCE30D8 */ lw $t6, %lo(D_800E30D8)($t6) -/* 0BB9BC 800BADBC 0338C823 */ subu $t9, $t9, $t8 -/* 0BB9C0 800BADC0 0019C880 */ sll $t9, $t9, 2 -/* 0BB9C4 800BADC4 032E1021 */ addu $v0, $t9, $t6 -/* 0BB9C8 800BADC8 844F0004 */ lh $t7, 4($v0) -/* 0BB9CC 800BADCC 3C0E800E */ lui $t6, %hi(D_800E30D4) # $t6, 0x800e -/* 0BB9D0 800BADD0 448F2000 */ mtc1 $t7, $f4 -/* 0BB9D4 800BADD4 8DCE30D4 */ lw $t6, %lo(D_800E30D4)($t6) -/* 0BB9D8 800BADD8 468021A0 */ cvt.s.w $f6, $f4 -/* 0BB9DC 800BADDC 3C058013 */ lui $a1, %hi(D_80129FC4) # $a1, 0x8013 -/* 0BB9E0 800BADE0 24A59FC4 */ addiu $a1, %lo(D_80129FC4) # addiu $a1, $a1, -0x603c -/* 0BB9E4 800BADE4 E7A600F0 */ swc1 $f6, 0xf0($sp) -/* 0BB9E8 800BADE8 84580006 */ lh $t8, 6($v0) -/* 0BB9EC 800BADEC 02202025 */ move $a0, $s1 -/* 0BB9F0 800BADF0 44984000 */ mtc1 $t8, $f8 -/* 0BB9F4 800BADF4 27A600E4 */ addiu $a2, $sp, 0xe4 -/* 0BB9F8 800BADF8 468042A0 */ cvt.s.w $f10, $f8 -/* 0BB9FC 800BADFC E7AA00F4 */ swc1 $f10, 0xf4($sp) -/* 0BBA00 800BAE00 84590008 */ lh $t9, 8($v0) -/* 0BBA04 800BAE04 00000000 */ nop -/* 0BBA08 800BAE08 44998000 */ mtc1 $t9, $f16 -/* 0BBA0C 800BAE0C 00000000 */ nop -/* 0BBA10 800BAE10 468084A0 */ cvt.s.w $f18, $f16 -/* 0BBA14 800BAE14 E7B200F8 */ swc1 $f18, 0xf8($sp) -/* 0BBA18 800BAE18 8C4F000C */ lw $t7, 0xc($v0) -/* 0BBA1C 800BAE1C 00000000 */ nop -/* 0BBA20 800BAE20 000FC080 */ sll $t8, $t7, 2 -/* 0BBA24 800BAE24 01D8C821 */ addu $t9, $t6, $t8 -/* 0BBA28 800BAE28 8F2F0000 */ lw $t7, ($t9) -/* 0BBA2C 800BAE2C 8FEE0028 */ lw $t6, 0x28($ra) -/* 0BBA30 800BAE30 AFAF0104 */ sw $t7, 0x104($sp) -/* 0BBA34 800BAE34 11C000A4 */ beqz $t6, .L800BB0C8 -/* 0BBA38 800BAE38 00000000 */ nop -/* 0BBA3C 800BAE3C AFA0011C */ sw $zero, 0x11c($sp) -/* 0BBA40 800BAE40 AFA200E0 */ sw $v0, 0xe0($sp) -/* 0BBA44 800BAE44 AFB00074 */ sw $s0, 0x74($sp) -.L800BAE48: -/* 0BBA48 800BAE48 8FA200E0 */ lw $v0, 0xe0($sp) -/* 0BBA4C 800BAE4C 0000F025 */ move $fp, $zero -/* 0BBA50 800BAE50 84580004 */ lh $t8, 4($v0) -/* 0BBA54 800BAE54 00000000 */ nop -/* 0BBA58 800BAE58 44982000 */ mtc1 $t8, $f4 -/* 0BBA5C 800BAE5C 00000000 */ nop -/* 0BBA60 800BAE60 468021A0 */ cvt.s.w $f6, $f4 -/* 0BBA64 800BAE64 E7A600F0 */ swc1 $f6, 0xf0($sp) -.L800BAE68: -/* 0BBA68 800BAE68 3C058013 */ lui $a1, %hi(D_80129FC4) # $a1, 0x8013 -/* 0BBA6C 800BAE6C 4407C000 */ mfc1 $a3, $f24 -/* 0BBA70 800BAE70 24A59FC4 */ addiu $a1, %lo(D_80129FC4) # addiu $a1, $a1, -0x603c -/* 0BBA74 800BAE74 02202025 */ move $a0, $s1 -/* 0BBA78 800BAE78 27A600E4 */ addiu $a2, $sp, 0xe4 -/* 0BBA7C 800BAE7C 0C01A521 */ jal func_80069484 -/* 0BBA80 800BAE80 E7B60010 */ swc1 $f22, 0x10($sp) -/* 0BBA84 800BAE84 8FA50104 */ lw $a1, 0x104($sp) -/* 0BBA88 800BAE88 3C1F8013 */ lui $ra, %hi(D_80129FC8) # $ra, 0x8013 -/* 0BBA8C 800BAE8C 30B900FF */ andi $t9, $a1, 0xff -/* 0BBA90 800BAE90 1320004B */ beqz $t9, .L800BAFC0 -/* 0BBA94 800BAE94 27FF9FC8 */ addiu $ra, %lo(D_80129FC8) # addiu $ra, $ra, -0x6038 -/* 0BBA98 800BAE98 8FE60000 */ lw $a2, ($ra) -/* 0BBA9C 800BAE9C 272FFFFF */ addiu $t7, $t9, -1 -/* 0BBAA0 800BAEA0 24C30001 */ addiu $v1, $a2, 1 -/* 0BBAA4 800BAEA4 01E30019 */ multu $t7, $v1 -/* 0BBAA8 800BAEA8 00031040 */ sll $v0, $v1, 1 -/* 0BBAAC 800BAEAC 0002C8C0 */ sll $t9, $v0, 3 -/* 0BBAB0 800BAEB0 03226021 */ addu $t4, $t9, $v0 -/* 0BBAB4 800BAEB4 244BFFFF */ addiu $t3, $v0, -1 -/* 0BBAB8 800BAEB8 000BC0C0 */ sll $t8, $t3, 3 -/* 0BBABC 800BAEBC 000C7840 */ sll $t7, $t4, 1 -/* 0BBAC0 800BAEC0 25EC0008 */ addiu $t4, $t7, 8 -/* 0BBAC4 800BAEC4 03005825 */ move $t3, $t8 -/* 0BBAC8 800BAEC8 00062040 */ sll $a0, $a2, 1 -/* 0BBACC 800BAECC 2498FFFF */ addiu $t8, $a0, -1 -/* 0BBAD0 800BAED0 0018C900 */ sll $t9, $t8, 4 -/* 0BBAD4 800BAED4 00007012 */ mflo $t6 -/* 0BBAD8 800BAED8 372F0001 */ ori $t7, $t9, 1 -/* 0BBADC 800BAEDC 3C010500 */ lui $at, 0x500 -/* 0BBAE0 800BAEE0 01C30019 */ multu $t6, $v1 -/* 0BBAE4 800BAEE4 318EFFFF */ andi $t6, $t4, 0xffff -/* 0BBAE8 800BAEE8 01C06025 */ move $t4, $t6 -/* 0BBAEC 800BAEEC 31EE00FF */ andi $t6, $t7, 0xff -/* 0BBAF0 800BAEF0 000EC400 */ sll $t8, $t6, 0x10 -/* 0BBAF4 800BAEF4 00047900 */ sll $t7, $a0, 4 -/* 0BBAF8 800BAEF8 31EEFFFF */ andi $t6, $t7, 0xffff -/* 0BBAFC 800BAEFC 0301C825 */ or $t9, $t8, $at -/* 0BBB00 800BAF00 032E6825 */ or $t5, $t9, $t6 -/* 0BBB04 800BAF04 00008025 */ move $s0, $zero -/* 0BBB08 800BAF08 00004012 */ mflo $t0 -/* 0BBB0C 800BAF0C 18C00052 */ blez $a2, .L800BB058 -/* 0BBB10 800BAF10 00000000 */ nop -.L800BAF14: -/* 0BBB14 800BAF14 01160019 */ multu $t0, $s6 -/* 0BBB18 800BAF18 8E780000 */ lw $t8, ($s3) -/* 0BBB1C 800BAF1C 8FAF0128 */ lw $t7, 0x128($sp) -/* 0BBB20 800BAF20 8E270000 */ lw $a3, ($s1) -/* 0BBB24 800BAF24 030F2021 */ addu $a0, $t8, $t7 -/* 0BBB28 800BAF28 0004C880 */ sll $t9, $a0, 2 -/* 0BBB2C 800BAF2C 02B97021 */ addu $t6, $s5, $t9 -/* 0BBB30 800BAF30 8DD80000 */ lw $t8, ($t6) -/* 0BBB34 800BAF34 02F9C821 */ addu $t9, $s7, $t9 -/* 0BBB38 800BAF38 8F2E0000 */ lw $t6, ($t9) -/* 0BBB3C 800BAF3C 00007812 */ mflo $t7 -/* 0BBB40 800BAF40 030F4821 */ addu $t1, $t8, $t7 -/* 0BBB44 800BAF44 0006C040 */ sll $t8, $a2, 1 -/* 0BBB48 800BAF48 02180019 */ multu $s0, $t8 -/* 0BBB4C 800BAF4C 01322821 */ addu $a1, $t1, $s2 -/* 0BBB50 800BAF50 24F80008 */ addiu $t8, $a3, 8 -/* 0BBB54 800BAF54 AE380000 */ sw $t8, ($s1) -/* 0BBB58 800BAF58 ACE50004 */ sw $a1, 4($a3) -/* 0BBB5C 800BAF5C 26100001 */ addiu $s0, $s0, 1 -/* 0BBB60 800BAF60 00007812 */ mflo $t7 -/* 0BBB64 800BAF64 000FC900 */ sll $t9, $t7, 4 -/* 0BBB68 800BAF68 30AF0006 */ andi $t7, $a1, 6 -/* 0BBB6C 800BAF6C 01D95021 */ addu $t2, $t6, $t9 -/* 0BBB70 800BAF70 016F7025 */ or $t6, $t3, $t7 -/* 0BBB74 800BAF74 31D900FF */ andi $t9, $t6, 0xff -/* 0BBB78 800BAF78 0019C400 */ sll $t8, $t9, 0x10 -/* 0BBB7C 800BAF7C 03147825 */ or $t7, $t8, $s4 -/* 0BBB80 800BAF80 01EC7025 */ or $t6, $t7, $t4 -/* 0BBB84 800BAF84 ACEE0000 */ sw $t6, ($a3) -/* 0BBB88 800BAF88 8E270000 */ lw $a3, ($s1) -/* 0BBB8C 800BAF8C 0152C021 */ addu $t8, $t2, $s2 -/* 0BBB90 800BAF90 24F90008 */ addiu $t9, $a3, 8 -/* 0BBB94 800BAF94 AE390000 */ sw $t9, ($s1) -/* 0BBB98 800BAF98 ACF80004 */ sw $t8, 4($a3) -/* 0BBB9C 800BAF9C ACED0000 */ sw $t5, ($a3) -/* 0BBBA0 800BAFA0 8FE60000 */ lw $a2, ($ra) -/* 0BBBA4 800BAFA4 00000000 */ nop -/* 0BBBA8 800BAFA8 0206082A */ slt $at, $s0, $a2 -/* 0BBBAC 800BAFAC 01064021 */ addu $t0, $t0, $a2 -/* 0BBBB0 800BAFB0 1420FFD8 */ bnez $at, .L800BAF14 -/* 0BBBB4 800BAFB4 25080001 */ addiu $t0, $t0, 1 -/* 0BBBB8 800BAFB8 10000027 */ b .L800BB058 -/* 0BBBBC 800BAFBC 00000000 */ nop -.L800BAFC0: -/* 0BBBC0 800BAFC0 8E6E0000 */ lw $t6, ($s3) -/* 0BBBC4 800BAFC4 24050028 */ li $a1, 40 -/* 0BBBC8 800BAFC8 01C50019 */ multu $t6, $a1 -/* 0BBBCC 800BAFCC 8E270000 */ lw $a3, ($s1) -/* 0BBBD0 800BAFD0 3C048013 */ lui $a0, %hi(D_8012A028) # $a0, 0x8013 -/* 0BBBD4 800BAFD4 2484A028 */ addiu $a0, %lo(D_8012A028) # addiu $a0, $a0, -0x5fd8 -/* 0BBBD8 800BAFD8 24EF0008 */ addiu $t7, $a3, 8 -/* 0BBBDC 800BAFDC AE2F0000 */ sw $t7, ($s1) -/* 0BBBE0 800BAFE0 0000C812 */ mflo $t9 -/* 0BBBE4 800BAFE4 0099C021 */ addu $t8, $a0, $t9 -/* 0BBBE8 800BAFE8 03127821 */ addu $t7, $t8, $s2 -/* 0BBBEC 800BAFEC 31EE0006 */ andi $t6, $t7, 6 -/* 0BBBF0 800BAFF0 35D90018 */ ori $t9, $t6, 0x18 -/* 0BBBF4 800BAFF4 333800FF */ andi $t8, $t9, 0xff -/* 0BBBF8 800BAFF8 00187C00 */ sll $t7, $t8, 0x10 -/* 0BBBFC 800BAFFC 01F47025 */ or $t6, $t7, $s4 -/* 0BBC00 800BB000 35D90050 */ ori $t9, $t6, 0x50 -/* 0BBC04 800BB004 ACF90000 */ sw $t9, ($a3) -/* 0BBC08 800BB008 8E780000 */ lw $t8, ($s3) -/* 0BBC0C 800BB00C 00000000 */ nop -/* 0BBC10 800BB010 03050019 */ multu $t8, $a1 -/* 0BBC14 800BB014 00007812 */ mflo $t7 -/* 0BBC18 800BB018 008F7021 */ addu $t6, $a0, $t7 -/* 0BBC1C 800BB01C 01D2C821 */ addu $t9, $t6, $s2 -/* 0BBC20 800BB020 ACF90004 */ sw $t9, 4($a3) -/* 0BBC24 800BB024 8E270000 */ lw $a3, ($s1) -/* 0BBC28 800BB028 3C0F0511 */ lui $t7, (0x05110020 >> 16) # lui $t7, 0x511 -/* 0BBC2C 800BB02C 24F80008 */ addiu $t8, $a3, 8 -/* 0BBC30 800BB030 AE380000 */ sw $t8, ($s1) -/* 0BBC34 800BB034 35EF0020 */ ori $t7, (0x05110020 & 0xFFFF) # ori $t7, $t7, 0x20 -/* 0BBC38 800BB038 ACEF0000 */ sw $t7, ($a3) -/* 0BBC3C 800BB03C 8E790000 */ lw $t9, ($s3) -/* 0BBC40 800BB040 3C0E800E */ lui $t6, %hi(D_800E3090) # $t6, 0x800e -/* 0BBC44 800BB044 0019C140 */ sll $t8, $t9, 5 -/* 0BBC48 800BB048 03127821 */ addu $t7, $t8, $s2 -/* 0BBC4C 800BB04C 25CE3090 */ addiu $t6, %lo(D_800E3090) # addiu $t6, $t6, 0x3090 -/* 0BBC50 800BB050 01EEC821 */ addu $t9, $t7, $t6 -/* 0BBC54 800BB054 ACF90004 */ sw $t9, 4($a3) -.L800BB058: -/* 0BBC58 800BB058 0C01A690 */ jal func_80069A40 -/* 0BBC5C 800BB05C 02202025 */ move $a0, $s1 -/* 0BBC60 800BB060 3C018013 */ lui $at, %hi(D_8012A0A0) # $at, 0x8013 -/* 0BBC64 800BB064 C42AA0A0 */ lwc1 $f10, %lo(D_8012A0A0)($at) -/* 0BBC68 800BB068 8FB80104 */ lw $t8, 0x104($sp) -/* 0BBC6C 800BB06C 46145402 */ mul.s $f16, $f10, $f20 -/* 0BBC70 800BB070 C7A800F0 */ lwc1 $f8, 0xf0($sp) -/* 0BBC74 800BB074 27DE0001 */ addiu $fp, $fp, 1 -/* 0BBC78 800BB078 24030002 */ li $v1, 2 -/* 0BBC7C 800BB07C 46104480 */ add.s $f18, $f8, $f16 -/* 0BBC80 800BB080 3C1F8013 */ lui $ra, %hi(D_80129FC8) # $ra, 0x8013 -/* 0BBC84 800BB084 00187A03 */ sra $t7, $t8, 8 -/* 0BBC88 800BB088 27FF9FC8 */ addiu $ra, %lo(D_80129FC8) # addiu $ra, $ra, -0x6038 -/* 0BBC8C 800BB08C AFAF0104 */ sw $t7, 0x104($sp) -/* 0BBC90 800BB090 17C3FF75 */ bne $fp, $v1, .L800BAE68 -/* 0BBC94 800BB094 E7B200F0 */ swc1 $f18, 0xf0($sp) -/* 0BBC98 800BB098 3C018013 */ lui $at, %hi(D_8012A0A4) # $at, 0x8013 -/* 0BBC9C 800BB09C C426A0A4 */ lwc1 $f6, %lo(D_8012A0A4)($at) -/* 0BBCA0 800BB0A0 8FA2011C */ lw $v0, 0x11c($sp) -/* 0BBCA4 800BB0A4 46143282 */ mul.s $f10, $f6, $f20 -/* 0BBCA8 800BB0A8 C7A400F8 */ lwc1 $f4, 0xf8($sp) -/* 0BBCAC 800BB0AC 24420001 */ addiu $v0, $v0, 1 -/* 0BBCB0 800BB0B0 AFA2011C */ sw $v0, 0x11c($sp) -/* 0BBCB4 800BB0B4 460A2200 */ add.s $f8, $f4, $f10 -/* 0BBCB8 800BB0B8 1443FF63 */ bne $v0, $v1, .L800BAE48 -/* 0BBCBC 800BB0BC E7A800F8 */ swc1 $f8, 0xf8($sp) -/* 0BBCC0 800BB0C0 10000056 */ b .L800BB21C -/* 0BBCC4 800BB0C4 8FAE00DC */ lw $t6, 0xdc($sp) -.L800BB0C8: -/* 0BBCC8 800BB0C8 AFB00074 */ sw $s0, 0x74($sp) -/* 0BBCCC 800BB0CC 4407C000 */ mfc1 $a3, $f24 -/* 0BBCD0 800BB0D0 00008025 */ move $s0, $zero -/* 0BBCD4 800BB0D4 0C01A521 */ jal func_80069484 -/* 0BBCD8 800BB0D8 E7B60010 */ swc1 $f22, 0x10($sp) -/* 0BBCDC 800BB0DC 3C1F8013 */ lui $ra, %hi(D_80129FC8) # $ra, 0x8013 -/* 0BBCE0 800BB0E0 8FAE0104 */ lw $t6, 0x104($sp) -/* 0BBCE4 800BB0E4 27FF9FC8 */ addiu $ra, %lo(D_80129FC8) # addiu $ra, $ra, -0x6038 -/* 0BBCE8 800BB0E8 8FE60000 */ lw $a2, ($ra) -/* 0BBCEC 800BB0EC 31D900FF */ andi $t9, $t6, 0xff -/* 0BBCF0 800BB0F0 2738FFFF */ addiu $t8, $t9, -1 -/* 0BBCF4 800BB0F4 24C30001 */ addiu $v1, $a2, 1 -/* 0BBCF8 800BB0F8 03030019 */ multu $t8, $v1 -/* 0BBCFC 800BB0FC 00031040 */ sll $v0, $v1, 1 -/* 0BBD00 800BB100 0002C8C0 */ sll $t9, $v0, 3 -/* 0BBD04 800BB104 03226021 */ addu $t4, $t9, $v0 -/* 0BBD08 800BB108 244BFFFF */ addiu $t3, $v0, -1 -/* 0BBD0C 800BB10C 000B70C0 */ sll $t6, $t3, 3 -/* 0BBD10 800BB110 000CC040 */ sll $t8, $t4, 1 -/* 0BBD14 800BB114 270C0008 */ addiu $t4, $t8, 8 -/* 0BBD18 800BB118 01C05825 */ move $t3, $t6 -/* 0BBD1C 800BB11C 00062040 */ sll $a0, $a2, 1 -/* 0BBD20 800BB120 248EFFFF */ addiu $t6, $a0, -1 -/* 0BBD24 800BB124 000EC900 */ sll $t9, $t6, 4 -/* 0BBD28 800BB128 00007812 */ mflo $t7 -/* 0BBD2C 800BB12C 37380001 */ ori $t8, $t9, 1 -/* 0BBD30 800BB130 3C010500 */ lui $at, 0x500 -/* 0BBD34 800BB134 01E30019 */ multu $t7, $v1 -/* 0BBD38 800BB138 318FFFFF */ andi $t7, $t4, 0xffff -/* 0BBD3C 800BB13C 01E06025 */ move $t4, $t7 -/* 0BBD40 800BB140 330F00FF */ andi $t7, $t8, 0xff -/* 0BBD44 800BB144 000F7400 */ sll $t6, $t7, 0x10 -/* 0BBD48 800BB148 0004C100 */ sll $t8, $a0, 4 -/* 0BBD4C 800BB14C 330FFFFF */ andi $t7, $t8, 0xffff -/* 0BBD50 800BB150 01C1C825 */ or $t9, $t6, $at -/* 0BBD54 800BB154 00004012 */ mflo $t0 -/* 0BBD58 800BB158 18C0002B */ blez $a2, .L800BB208 -/* 0BBD5C 800BB15C 00000000 */ nop -/* 0BBD60 800BB160 8FBE0128 */ lw $fp, 0x128($sp) -/* 0BBD64 800BB164 032F6825 */ or $t5, $t9, $t7 -.L800BB168: -/* 0BBD68 800BB168 01160019 */ multu $t0, $s6 -/* 0BBD6C 800BB16C 8E6E0000 */ lw $t6, ($s3) -/* 0BBD70 800BB170 8E270000 */ lw $a3, ($s1) -/* 0BBD74 800BB174 01DE2021 */ addu $a0, $t6, $fp -/* 0BBD78 800BB178 0004C080 */ sll $t8, $a0, 2 -/* 0BBD7C 800BB17C 02B8C821 */ addu $t9, $s5, $t8 -/* 0BBD80 800BB180 8F2F0000 */ lw $t7, ($t9) -/* 0BBD84 800BB184 02F8C021 */ addu $t8, $s7, $t8 -/* 0BBD88 800BB188 8F190000 */ lw $t9, ($t8) -/* 0BBD8C 800BB18C 00007012 */ mflo $t6 -/* 0BBD90 800BB190 01EE4821 */ addu $t1, $t7, $t6 -/* 0BBD94 800BB194 00067840 */ sll $t7, $a2, 1 -/* 0BBD98 800BB198 020F0019 */ multu $s0, $t7 -/* 0BBD9C 800BB19C 01322821 */ addu $a1, $t1, $s2 -/* 0BBDA0 800BB1A0 24EF0008 */ addiu $t7, $a3, 8 -/* 0BBDA4 800BB1A4 AE2F0000 */ sw $t7, ($s1) -/* 0BBDA8 800BB1A8 ACE50004 */ sw $a1, 4($a3) -/* 0BBDAC 800BB1AC 26100001 */ addiu $s0, $s0, 1 -/* 0BBDB0 800BB1B0 00007012 */ mflo $t6 -/* 0BBDB4 800BB1B4 000EC100 */ sll $t8, $t6, 4 -/* 0BBDB8 800BB1B8 30AE0006 */ andi $t6, $a1, 6 -/* 0BBDBC 800BB1BC 03385021 */ addu $t2, $t9, $t8 -/* 0BBDC0 800BB1C0 016EC825 */ or $t9, $t3, $t6 -/* 0BBDC4 800BB1C4 333800FF */ andi $t8, $t9, 0xff -/* 0BBDC8 800BB1C8 00187C00 */ sll $t7, $t8, 0x10 -/* 0BBDCC 800BB1CC 01F47025 */ or $t6, $t7, $s4 -/* 0BBDD0 800BB1D0 01CCC825 */ or $t9, $t6, $t4 -/* 0BBDD4 800BB1D4 ACF90000 */ sw $t9, ($a3) -/* 0BBDD8 800BB1D8 8E270000 */ lw $a3, ($s1) -/* 0BBDDC 800BB1DC 01527821 */ addu $t7, $t2, $s2 -/* 0BBDE0 800BB1E0 24F80008 */ addiu $t8, $a3, 8 -/* 0BBDE4 800BB1E4 AE380000 */ sw $t8, ($s1) -/* 0BBDE8 800BB1E8 ACEF0004 */ sw $t7, 4($a3) -/* 0BBDEC 800BB1EC ACED0000 */ sw $t5, ($a3) -/* 0BBDF0 800BB1F0 8FE60000 */ lw $a2, ($ra) -/* 0BBDF4 800BB1F4 00000000 */ nop -/* 0BBDF8 800BB1F8 0206082A */ slt $at, $s0, $a2 -/* 0BBDFC 800BB1FC 01064021 */ addu $t0, $t0, $a2 -/* 0BBE00 800BB200 1420FFD9 */ bnez $at, .L800BB168 -/* 0BBE04 800BB204 25080001 */ addiu $t0, $t0, 1 -.L800BB208: -/* 0BBE08 800BB208 0C01A690 */ jal func_80069A40 -/* 0BBE0C 800BB20C 02202025 */ move $a0, $s1 -/* 0BBE10 800BB210 3C1F8013 */ lui $ra, %hi(D_80129FC8) # $ra, 0x8013 -/* 0BBE14 800BB214 27FF9FC8 */ addiu $ra, %lo(D_80129FC8) # addiu $ra, $ra, -0x6038 -/* 0BBE18 800BB218 8FAE00DC */ lw $t6, 0xdc($sp) -.L800BB21C: -/* 0BBE1C 800BB21C 8FB80074 */ lw $t8, 0x74($sp) -/* 0BBE20 800BB220 25D90001 */ addiu $t9, $t6, 1 -/* 0BBE24 800BB224 3C0E800E */ lui $t6, %hi(D_800E30DC) # $t6, 0x800e -/* 0BBE28 800BB228 8DCE30DC */ lw $t6, %lo(D_800E30DC)($t6) -/* 0BBE2C 800BB22C 270F0002 */ addiu $t7, $t8, 2 -/* 0BBE30 800BB230 032E082A */ slt $at, $t9, $t6 -/* 0BBE34 800BB234 AFAF0074 */ sw $t7, 0x74($sp) -/* 0BBE38 800BB238 1420FECB */ bnez $at, .L800BAD68 -/* 0BBE3C 800BB23C AFB900DC */ sw $t9, 0xdc($sp) -.L800BB240: -/* 0BBE40 800BB240 8FF8004C */ lw $t8, 0x4c($ra) -/* 0BBE44 800BB244 3C19B700 */ lui $t9, 0xb700 -/* 0BBE48 800BB248 1300000E */ beqz $t8, .L800BB284 -/* 0BBE4C 800BB24C 00000000 */ nop -/* 0BBE50 800BB250 8E270000 */ lw $a3, ($s1) -/* 0BBE54 800BB254 3C0E0001 */ lui $t6, 1 -/* 0BBE58 800BB258 24EF0008 */ addiu $t7, $a3, 8 -/* 0BBE5C 800BB25C AE2F0000 */ sw $t7, ($s1) -/* 0BBE60 800BB260 ACEE0004 */ sw $t6, 4($a3) -/* 0BBE64 800BB264 ACF90000 */ sw $t9, ($a3) -/* 0BBE68 800BB268 8E270000 */ lw $a3, ($s1) -/* 0BBE6C 800BB26C 2419FFFF */ li $t9, -1 -/* 0BBE70 800BB270 24F80008 */ addiu $t8, $a3, 8 -/* 0BBE74 800BB274 AE380000 */ sw $t8, ($s1) -/* 0BBE78 800BB278 3C0FFA00 */ lui $t7, 0xfa00 -/* 0BBE7C 800BB27C ACEF0000 */ sw $t7, ($a3) -/* 0BBE80 800BB280 ACF90004 */ sw $t9, 4($a3) -.L800BB284: -/* 0BBE84 800BB284 8E2E0000 */ lw $t6, ($s1) -/* 0BBE88 800BB288 8FB80120 */ lw $t8, 0x120($sp) -/* 0BBE8C 800BB28C 3C0F8013 */ lui $t7, %hi(D_80129FC4) # $t7, 0x8013 -/* 0BBE90 800BB290 AF0E0000 */ sw $t6, ($t8) -/* 0BBE94 800BB294 8FB90124 */ lw $t9, 0x124($sp) -/* 0BBE98 800BB298 8DEF9FC4 */ lw $t7, %lo(D_80129FC4)($t7) -/* 0BBE9C 800BB29C 00000000 */ nop -/* 0BBEA0 800BB2A0 AF2F0000 */ sw $t7, ($t9) -.L800BB2A4: -/* 0BBEA4 800BB2A4 8FBF005C */ lw $ra, 0x5c($sp) -/* 0BBEA8 800BB2A8 3C01800E */ lui $at, %hi(D_800E30DC) # $at, 0x800e -/* 0BBEAC 800BB2AC C7B50020 */ lwc1 $f21, 0x20($sp) -/* 0BBEB0 800BB2B0 C7B40024 */ lwc1 $f20, 0x24($sp) -/* 0BBEB4 800BB2B4 C7B70028 */ lwc1 $f23, 0x28($sp) -/* 0BBEB8 800BB2B8 C7B6002C */ lwc1 $f22, 0x2c($sp) -/* 0BBEBC 800BB2BC C7B90030 */ lwc1 $f25, 0x30($sp) -/* 0BBEC0 800BB2C0 C7B80034 */ lwc1 $f24, 0x34($sp) -/* 0BBEC4 800BB2C4 8FB00038 */ lw $s0, 0x38($sp) -/* 0BBEC8 800BB2C8 8FB1003C */ lw $s1, 0x3c($sp) -/* 0BBECC 800BB2CC 8FB20040 */ lw $s2, 0x40($sp) -/* 0BBED0 800BB2D0 8FB30044 */ lw $s3, 0x44($sp) -/* 0BBED4 800BB2D4 8FB40048 */ lw $s4, 0x48($sp) -/* 0BBED8 800BB2D8 8FB5004C */ lw $s5, 0x4c($sp) -/* 0BBEDC 800BB2DC 8FB60050 */ lw $s6, 0x50($sp) -/* 0BBEE0 800BB2E0 8FB70054 */ lw $s7, 0x54($sp) -/* 0BBEE4 800BB2E4 8FBE0058 */ lw $fp, 0x58($sp) -/* 0BBEE8 800BB2E8 AC2030DC */ sw $zero, %lo(D_800E30DC)($at) -/* 0BBEEC 800BB2EC 03E00008 */ jr $ra -/* 0BBEF0 800BB2F0 27BD0120 */ addiu $sp, $sp, 0x120 - -glabel func_800BB2F4 -/* 0BBEF4 800BB2F4 27BDFF58 */ addiu $sp, $sp, -0xa8 -/* 0BBEF8 800BB2F8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0BBEFC 800BB2FC AFA400A8 */ sw $a0, 0xa8($sp) -/* 0BBF00 800BB300 AFA500AC */ sw $a1, 0xac($sp) -/* 0BBF04 800BB304 AFA600B0 */ sw $a2, 0xb0($sp) -/* 0BBF08 800BB308 04800007 */ bltz $a0, .L800BB328 -/* 0BBF0C 800BB30C AFA700B4 */ sw $a3, 0xb4($sp) -/* 0BBF10 800BB310 3C0F8013 */ lui $t7, %hi(D_8012A0E0) # $t7, 0x8013 -/* 0BBF14 800BB314 8DEFA0E0 */ lw $t7, %lo(D_8012A0E0)($t7) -/* 0BBF18 800BB318 00000000 */ nop -/* 0BBF1C 800BB31C 008F082A */ slt $at, $a0, $t7 -/* 0BBF20 800BB320 14200003 */ bnez $at, .L800BB330 -/* 0BBF24 800BB324 8FB800A8 */ lw $t8, 0xa8($sp) -.L800BB328: -/* 0BBF28 800BB328 AFA000A8 */ sw $zero, 0xa8($sp) -/* 0BBF2C 800BB32C 8FB800A8 */ lw $t8, 0xa8($sp) -.L800BB330: -/* 0BBF30 800BB330 3C19800E */ lui $t9, %hi(D_800E30D8) # $t9, 0x800e -/* 0BBF34 800BB334 001870C0 */ sll $t6, $t8, 3 -/* 0BBF38 800BB338 8F3930D8 */ lw $t9, %lo(D_800E30D8)($t9) -/* 0BBF3C 800BB33C 01D87023 */ subu $t6, $t6, $t8 -/* 0BBF40 800BB340 000E7080 */ sll $t6, $t6, 2 -/* 0BBF44 800BB344 032E2821 */ addu $a1, $t9, $t6 -/* 0BBF48 800BB348 3C19800E */ lui $t9, %hi(D_800E317C) # $t9, 0x800e -/* 0BBF4C 800BB34C 8F39317C */ lw $t9, %lo(D_800E317C)($t9) -/* 0BBF50 800BB350 84AF0006 */ lh $t7, 6($a1) -/* 0BBF54 800BB354 03190019 */ multu $t8, $t9 -/* 0BBF58 800BB358 448F5000 */ mtc1 $t7, $f10 -/* 0BBF5C 800BB35C 3C018013 */ lui $at, %hi(D_8012A0BC) # $at, 0x8013 -/* 0BBF60 800BB360 46805120 */ cvt.s.w $f4, $f10 -/* 0BBF64 800BB364 C426A0BC */ lwc1 $f6, %lo(D_8012A0BC)($at) -/* 0BBF68 800BB368 3C018013 */ li $at, 0x80130000 # -0.000000 -/* 0BBF6C 800BB36C C428A0B8 */ lwc1 $f8, %lo(D_8012A0B8)($at) -/* 0BBF70 800BB370 3C098013 */ lui $t1, %hi(D_80129FC8) # $t1, 0x8013 -/* 0BBF74 800BB374 25299FC8 */ addiu $t1, %lo(D_80129FC8) # addiu $t1, $t1, -0x6038 -/* 0BBF78 800BB378 E7A40078 */ swc1 $f4, 0x78($sp) -/* 0BBF7C 800BB37C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0BBF80 800BB380 44815000 */ mtc1 $at, $f10 -/* 0BBF84 800BB384 C5240044 */ lwc1 $f4, 0x44($t1) -/* 0BBF88 800BB388 3C0142FE */ li $at, 0x42FE0000 # 127.000000 -/* 0BBF8C 800BB38C 46045281 */ sub.s $f10, $f10, $f4 -/* 0BBF90 800BB390 44812000 */ mtc1 $at, $f4 -/* 0BBF94 800BB394 8D2F0028 */ lw $t7, 0x28($t1) -/* 0BBF98 800BB398 00007012 */ mflo $t6 -/* 0BBF9C 800BB39C AFAE0058 */ sw $t6, 0x58($sp) -/* 0BBFA0 800BB3A0 E7A60090 */ swc1 $f6, 0x90($sp) -/* 0BBFA4 800BB3A4 E7A80094 */ swc1 $f8, 0x94($sp) -/* 0BBFA8 800BB3A8 11E0000D */ beqz $t7, .L800BB3E0 -/* 0BBFAC 800BB3AC 46045403 */ div.s $f16, $f10, $f4 -/* 0BBFB0 800BB3B0 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 0BBFB4 800BB3B4 44815000 */ mtc1 $at, $f10 -/* 0BBFB8 800BB3B8 8D380000 */ lw $t8, ($t1) -/* 0BBFBC 800BB3BC 460A3102 */ mul.s $f4, $f6, $f10 -/* 0BBFC0 800BB3C0 44813000 */ mtc1 $at, $f6 -/* 0BBFC4 800BB3C4 0018C840 */ sll $t9, $t8, 1 -/* 0BBFC8 800BB3C8 272E0001 */ addiu $t6, $t9, 1 -/* 0BBFCC 800BB3CC 46064282 */ mul.s $f10, $f8, $f6 -/* 0BBFD0 800BB3D0 E7A40090 */ swc1 $f4, 0x90($sp) -/* 0BBFD4 800BB3D4 AFAE0060 */ sw $t6, 0x60($sp) -/* 0BBFD8 800BB3D8 10000005 */ b .L800BB3F0 -/* 0BBFDC 800BB3DC E7AA0094 */ swc1 $f10, 0x94($sp) -.L800BB3E0: -/* 0BBFE0 800BB3E0 8D2F0000 */ lw $t7, ($t1) -/* 0BBFE4 800BB3E4 00000000 */ nop -/* 0BBFE8 800BB3E8 25F80001 */ addiu $t8, $t7, 1 -/* 0BBFEC 800BB3EC AFB80060 */ sw $t8, 0x60($sp) -.L800BB3F0: -/* 0BBFF0 800BB3F0 84B90004 */ lh $t9, 4($a1) -/* 0BBFF4 800BB3F4 C7A400AC */ lwc1 $f4, 0xac($sp) -/* 0BBFF8 800BB3F8 44994000 */ mtc1 $t9, $f8 -/* 0BBFFC 800BB3FC 3C018013 */ lui $at, %hi(D_8012A0A0) # $at, 0x8013 -/* 0BC000 800BB400 468041A0 */ cvt.s.w $f6, $f8 -/* 0BC004 800BB404 44804000 */ mtc1 $zero, $f8 -/* 0BC008 800BB408 46062281 */ sub.s $f10, $f4, $f6 -/* 0BC00C 800BB40C 4608503C */ c.lt.s $f10, $f8 -/* 0BC010 800BB410 E7AA00AC */ swc1 $f10, 0xac($sp) -/* 0BC014 800BB414 45000004 */ bc1f .L800BB428 -/* 0BC018 800BB418 00000000 */ nop -/* 0BC01C 800BB41C 44802000 */ mtc1 $zero, $f4 -/* 0BC020 800BB420 1000000C */ b .L800BB454 -/* 0BC024 800BB424 E7A400AC */ swc1 $f4, 0xac($sp) -.L800BB428: -/* 0BC028 800BB428 C420A0A0 */ lwc1 $f0, %lo(D_8012A0A0)($at) -/* 0BC02C 800BB42C C7A600AC */ lwc1 $f6, 0xac($sp) -/* 0BC030 800BB430 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0BC034 800BB434 4606003E */ c.le.s $f0, $f6 -/* 0BC038 800BB438 00000000 */ nop -/* 0BC03C 800BB43C 45000005 */ bc1f .L800BB454 -/* 0BC040 800BB440 00000000 */ nop -/* 0BC044 800BB444 44815000 */ mtc1 $at, $f10 -/* 0BC048 800BB448 00000000 */ nop -/* 0BC04C 800BB44C 460A0201 */ sub.s $f8, $f0, $f10 -/* 0BC050 800BB450 E7A800AC */ swc1 $f8, 0xac($sp) -.L800BB454: -/* 0BC054 800BB454 84AE0008 */ lh $t6, 8($a1) -/* 0BC058 800BB458 C7A400B0 */ lwc1 $f4, 0xb0($sp) -/* 0BC05C 800BB45C 448E3000 */ mtc1 $t6, $f6 -/* 0BC060 800BB460 3C018013 */ lui $at, %hi(D_8012A0A4) # $at, 0x8013 -/* 0BC064 800BB464 468032A0 */ cvt.s.w $f10, $f6 -/* 0BC068 800BB468 44803000 */ mtc1 $zero, $f6 -/* 0BC06C 800BB46C 460A2201 */ sub.s $f8, $f4, $f10 -/* 0BC070 800BB470 4606403C */ c.lt.s $f8, $f6 -/* 0BC074 800BB474 E7A800B0 */ swc1 $f8, 0xb0($sp) -/* 0BC078 800BB478 45000004 */ bc1f .L800BB48C -/* 0BC07C 800BB47C 00000000 */ nop -/* 0BC080 800BB480 44802000 */ mtc1 $zero, $f4 -/* 0BC084 800BB484 1000000C */ b .L800BB4B8 -/* 0BC088 800BB488 E7A400B0 */ swc1 $f4, 0xb0($sp) -.L800BB48C: -/* 0BC08C 800BB48C C420A0A4 */ lwc1 $f0, %lo(D_8012A0A4)($at) -/* 0BC090 800BB490 C7AA00B0 */ lwc1 $f10, 0xb0($sp) -/* 0BC094 800BB494 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0BC098 800BB498 460A003E */ c.le.s $f0, $f10 -/* 0BC09C 800BB49C 00000000 */ nop -/* 0BC0A0 800BB4A0 45000005 */ bc1f .L800BB4B8 -/* 0BC0A4 800BB4A4 00000000 */ nop -/* 0BC0A8 800BB4A8 44814000 */ mtc1 $at, $f8 -/* 0BC0AC 800BB4AC 00000000 */ nop -/* 0BC0B0 800BB4B0 46080181 */ sub.s $f6, $f0, $f8 -/* 0BC0B4 800BB4B4 E7A600B0 */ swc1 $f6, 0xb0($sp) -.L800BB4B8: -/* 0BC0B8 800BB4B8 C7A400AC */ lwc1 $f4, 0xac($sp) -/* 0BC0BC 800BB4BC C7AA0094 */ lwc1 $f10, 0x94($sp) -/* 0BC0C0 800BB4C0 E7A40018 */ swc1 $f4, 0x18($sp) -/* 0BC0C4 800BB4C4 460A2203 */ div.s $f8, $f4, $f10 -/* 0BC0C8 800BB4C8 8D230004 */ lw $v1, 4($t1) -/* 0BC0CC 800BB4CC 3C0A800E */ lui $t2, 0x800e -/* 0BC0D0 800BB4D0 444FF800 */ cfc1 $t7, $31 -/* 0BC0D4 800BB4D4 00000000 */ nop -/* 0BC0D8 800BB4D8 35E10003 */ ori $at, $t7, 3 -/* 0BC0DC 800BB4DC 38210002 */ xori $at, $at, 2 -/* 0BC0E0 800BB4E0 44C1F800 */ ctc1 $at, $31 -/* 0BC0E4 800BB4E4 00000000 */ nop -/* 0BC0E8 800BB4E8 460041A4 */ cvt.w.s $f6, $f8 -/* 0BC0EC 800BB4EC C7A800B0 */ lwc1 $f8, 0xb0($sp) -/* 0BC0F0 800BB4F0 44023000 */ mfc1 $v0, $f6 -/* 0BC0F4 800BB4F4 44CFF800 */ ctc1 $t7, $31 -/* 0BC0F8 800BB4F8 C7A60090 */ lwc1 $f6, 0x90($sp) -/* 0BC0FC 800BB4FC AFA20070 */ sw $v0, 0x70($sp) -/* 0BC100 800BB500 46064103 */ div.s $f4, $f8, $f6 -/* 0BC104 800BB504 4458F800 */ cfc1 $t8, $31 -/* 0BC108 800BB508 00000000 */ nop -/* 0BC10C 800BB50C 37010003 */ ori $at, $t8, 3 -/* 0BC110 800BB510 38210002 */ xori $at, $at, 2 -/* 0BC114 800BB514 44C1F800 */ ctc1 $at, $31 -/* 0BC118 800BB518 00000000 */ nop -/* 0BC11C 800BB51C 46002124 */ cvt.w.s $f4, $f4 -/* 0BC120 800BB520 44042000 */ mfc1 $a0, $f4 -/* 0BC124 800BB524 44822000 */ mtc1 $v0, $f4 -/* 0BC128 800BB528 44D8F800 */ ctc1 $t8, $31 -/* 0BC12C 800BB52C AFA4006C */ sw $a0, 0x6c($sp) -/* 0BC130 800BB530 46802120 */ cvt.s.w $f4, $f4 -/* 0BC134 800BB534 8FB8006C */ lw $t8, 0x6c($sp) -/* 0BC138 800BB538 460A2102 */ mul.s $f4, $f4, $f10 -/* 0BC13C 800BB53C C7AA0018 */ lwc1 $f10, 0x18($sp) -/* 0BC140 800BB540 00000000 */ nop -/* 0BC144 800BB544 46045281 */ sub.s $f10, $f10, $f4 -/* 0BC148 800BB548 44842000 */ mtc1 $a0, $f4 -/* 0BC14C 800BB54C E7AA00AC */ swc1 $f10, 0xac($sp) -/* 0BC150 800BB550 468022A0 */ cvt.s.w $f10, $f4 -/* 0BC154 800BB554 46065102 */ mul.s $f4, $f10, $f6 -/* 0BC158 800BB558 46044281 */ sub.s $f10, $f8, $f4 -/* 0BC15C 800BB55C C7A80090 */ lwc1 $f8, 0x90($sp) -/* 0BC160 800BB560 E7AA00B0 */ swc1 $f10, 0xb0($sp) -/* 0BC164 800BB564 84B90012 */ lh $t9, 0x12($a1) -/* 0BC168 800BB568 C7A600B0 */ lwc1 $f6, 0xb0($sp) -/* 0BC16C 800BB56C 03224021 */ addu $t0, $t9, $v0 -/* 0BC170 800BB570 0103082A */ slt $at, $t0, $v1 -/* 0BC174 800BB574 14200005 */ bnez $at, .L800BB58C -/* 0BC178 800BB578 00000000 */ nop -.L800BB57C: -/* 0BC17C 800BB57C 01034023 */ subu $t0, $t0, $v1 -/* 0BC180 800BB580 0103082A */ slt $at, $t0, $v1 -/* 0BC184 800BB584 1020FFFD */ beqz $at, .L800BB57C -/* 0BC188 800BB588 00000000 */ nop -.L800BB58C: -/* 0BC18C 800BB58C 84AF0010 */ lh $t7, 0x10($a1) -/* 0BC190 800BB590 251F0001 */ addiu $ra, $t0, 1 -/* 0BC194 800BB594 01F83821 */ addu $a3, $t7, $t8 -/* 0BC198 800BB598 00E3082A */ slt $at, $a3, $v1 -/* 0BC19C 800BB59C 14200005 */ bnez $at, .L800BB5B4 -/* 0BC1A0 800BB5A0 3C05800E */ lui $a1, 0x800e -.L800BB5A4: -/* 0BC1A4 800BB5A4 00E33823 */ subu $a3, $a3, $v1 -/* 0BC1A8 800BB5A8 00E3082A */ slt $at, $a3, $v1 -/* 0BC1AC 800BB5AC 1020FFFD */ beqz $at, .L800BB5A4 -/* 0BC1B0 800BB5B0 00000000 */ nop -.L800BB5B4: -/* 0BC1B4 800BB5B4 46083032 */ c.eq.s $f6, $f8 -/* 0BC1B8 800BB5B8 00001025 */ move $v0, $zero -/* 0BC1BC 800BB5BC 4501000C */ bc1t .L800BB5F0 -/* 0BC1C0 800BB5C0 03E3082A */ slt $at, $ra, $v1 -/* 0BC1C4 800BB5C4 46064281 */ sub.s $f10, $f8, $f6 -/* 0BC1C8 800BB5C8 C7A400AC */ lwc1 $f4, 0xac($sp) -/* 0BC1CC 800BB5CC 46085183 */ div.s $f6, $f10, $f8 -/* 0BC1D0 800BB5D0 C7AA0094 */ lwc1 $f10, 0x94($sp) -/* 0BC1D4 800BB5D4 00000000 */ nop -/* 0BC1D8 800BB5D8 460A3202 */ mul.s $f8, $f6, $f10 -/* 0BC1DC 800BB5DC 4608203C */ c.lt.s $f4, $f8 -/* 0BC1E0 800BB5E0 00000000 */ nop -/* 0BC1E4 800BB5E4 45000002 */ bc1f .L800BB5F0 -/* 0BC1E8 800BB5E8 00000000 */ nop -/* 0BC1EC 800BB5EC 24020001 */ li $v0, 1 -.L800BB5F0: -/* 0BC1F0 800BB5F0 104000DF */ beqz $v0, .L800BB970 -/* 0BC1F4 800BB5F4 00000000 */ nop -/* 0BC1F8 800BB5F8 00E30019 */ multu $a3, $v1 -/* 0BC1FC 800BB5FC 3C0A800E */ lui $t2, %hi(D_800E3044) # $t2, 0x800e -/* 0BC200 800BB600 8D4A3044 */ lw $t2, %lo(D_800E3044)($t2) -/* 0BC204 800BB604 3C05800E */ lui $a1, %hi(D_800E3040) # $a1, 0x800e -/* 0BC208 800BB608 8CA53040 */ lw $a1, %lo(D_800E3040)($a1) -/* 0BC20C 800BB60C C52E0040 */ lwc1 $f14, 0x40($t1) -/* 0BC210 800BB610 3C0B800E */ lui $t3, %hi(D_800E3188) # $t3, 0x800e -/* 0BC214 800BB614 8D6B3188 */ lw $t3, %lo(D_800E3188)($t3) -/* 0BC218 800BB618 8FA6006C */ lw $a2, 0x6c($sp) -/* 0BC21C 800BB61C 0000C812 */ mflo $t9 -/* 0BC220 800BB620 03282021 */ addu $a0, $t9, $t0 -/* 0BC224 800BB624 00047080 */ sll $t6, $a0, 2 -/* 0BC228 800BB628 014E1021 */ addu $v0, $t2, $t6 -/* 0BC22C 800BB62C 844F0002 */ lh $t7, 2($v0) -/* 0BC230 800BB630 844E0000 */ lh $t6, ($v0) -/* 0BC234 800BB634 000FC080 */ sll $t8, $t7, 2 -/* 0BC238 800BB638 00B8C821 */ addu $t9, $a1, $t8 -/* 0BC23C 800BB63C 000E7880 */ sll $t7, $t6, 2 -/* 0BC240 800BB640 00AFC021 */ addu $t8, $a1, $t7 -/* 0BC244 800BB644 C70A0000 */ lwc1 $f10, ($t8) -/* 0BC248 800BB648 C7260000 */ lwc1 $f6, ($t9) -/* 0BC24C 800BB64C 8FA400A8 */ lw $a0, 0xa8($sp) -/* 0BC250 800BB650 460A3100 */ add.s $f4, $f6, $f10 -/* 0BC254 800BB654 460E2202 */ mul.s $f8, $f4, $f14 -/* 0BC258 800BB658 19600016 */ blez $t3, .L800BB6B4 -/* 0BC25C 800BB65C E7A800A0 */ swc1 $f8, 0xa0($sp) -/* 0BC260 800BB660 8FA50070 */ lw $a1, 0x70($sp) -/* 0BC264 800BB664 AFA70064 */ sw $a3, 0x64($sp) -/* 0BC268 800BB668 AFA80068 */ sw $t0, 0x68($sp) -/* 0BC26C 800BB66C 0C02FBF1 */ jal func_800BEFC4 -/* 0BC270 800BB670 E7B0008C */ swc1 $f16, 0x8c($sp) -/* 0BC274 800BB674 C7A600A0 */ lwc1 $f6, 0xa0($sp) -/* 0BC278 800BB678 3C038013 */ lui $v1, %hi(D_80129FCC) # $v1, 0x8013 -/* 0BC27C 800BB67C 46003280 */ add.s $f10, $f6, $f0 -/* 0BC280 800BB680 3C05800E */ lui $a1, %hi(D_800E3040) # $a1, 0x800e -/* 0BC284 800BB684 3C0A800E */ lui $t2, %hi(D_800E3044) # $t2, 0x800e -/* 0BC288 800BB688 3C018013 */ lui $at, %hi(D_8012A008) # $at, 0x8013 -/* 0BC28C 800BB68C 3C0B800E */ lui $t3, %hi(D_800E3188) # $t3, 0x800e -/* 0BC290 800BB690 8D6B3188 */ lw $t3, %lo(D_800E3188)($t3) -/* 0BC294 800BB694 C42EA008 */ lwc1 $f14, %lo(D_8012A008)($at) -/* 0BC298 800BB698 8D4A3044 */ lw $t2, %lo(D_800E3044)($t2) -/* 0BC29C 800BB69C 8CA53040 */ lw $a1, %lo(D_800E3040)($a1) -/* 0BC2A0 800BB6A0 8C639FCC */ lw $v1, %lo(D_80129FCC)($v1) -/* 0BC2A4 800BB6A4 8FA70064 */ lw $a3, 0x64($sp) -/* 0BC2A8 800BB6A8 8FA80068 */ lw $t0, 0x68($sp) -/* 0BC2AC 800BB6AC C7B0008C */ lwc1 $f16, 0x8c($sp) -/* 0BC2B0 800BB6B0 E7AA00A0 */ swc1 $f10, 0xa0($sp) -.L800BB6B4: -/* 0BC2B4 800BB6B4 8FAF006C */ lw $t7, 0x6c($sp) -/* 0BC2B8 800BB6B8 8FB80060 */ lw $t8, 0x60($sp) -/* 0BC2BC 800BB6BC 8FB90058 */ lw $t9, 0x58($sp) -/* 0BC2C0 800BB6C0 01F80019 */ multu $t7, $t8 -/* 0BC2C4 800BB6C4 8FAE0070 */ lw $t6, 0x70($sp) -/* 0BC2C8 800BB6C8 3C0C800E */ lui $t4, %hi(D_800E3178) # $t4, 0x800e -/* 0BC2CC 800BB6CC 032E6821 */ addu $t5, $t9, $t6 -/* 0BC2D0 800BB6D0 8D8C3178 */ lw $t4, %lo(D_800E3178)($t4) -/* 0BC2D4 800BB6D4 24E90001 */ addiu $t1, $a3, 1 -/* 0BC2D8 800BB6D8 0000C812 */ mflo $t9 -/* 0BC2DC 800BB6DC 01B9F821 */ addu $ra, $t5, $t9 -/* 0BC2E0 800BB6E0 019F7021 */ addu $t6, $t4, $ra -/* 0BC2E4 800BB6E4 91C20000 */ lbu $v0, ($t6) -/* 0BC2E8 800BB6E8 00000000 */ nop -/* 0BC2EC 800BB6EC 2841007F */ slti $at, $v0, 0x7f -/* 0BC2F0 800BB6F0 1020000B */ beqz $at, .L800BB720 -/* 0BC2F4 800BB6F4 0123082A */ slt $at, $t1, $v1 -/* 0BC2F8 800BB6F8 44824000 */ mtc1 $v0, $f8 -/* 0BC2FC 800BB6FC 3C018013 */ lui $at, %hi(D_8012A00C) # $at, 0x8013 -/* 0BC300 800BB700 468041A0 */ cvt.s.w $f6, $f8 -/* 0BC304 800BB704 C424A00C */ lwc1 $f4, %lo(D_8012A00C)($at) -/* 0BC308 800BB708 46103282 */ mul.s $f10, $f6, $f16 -/* 0BC30C 800BB70C C7A600A0 */ lwc1 $f6, 0xa0($sp) -/* 0BC310 800BB710 460A2200 */ add.s $f8, $f4, $f10 -/* 0BC314 800BB714 46083102 */ mul.s $f4, $f6, $f8 -/* 0BC318 800BB718 E7A400A0 */ swc1 $f4, 0xa0($sp) -/* 0BC31C 800BB71C 0123082A */ slt $at, $t1, $v1 -.L800BB720: -/* 0BC320 800BB720 14200003 */ bnez $at, .L800BB730 -/* 0BC324 800BB724 00000000 */ nop -/* 0BC328 800BB728 10000005 */ b .L800BB740 -/* 0BC32C 800BB72C 01002025 */ move $a0, $t0 -.L800BB730: -/* 0BC330 800BB730 01230019 */ multu $t1, $v1 -/* 0BC334 800BB734 00007812 */ mflo $t7 -/* 0BC338 800BB738 01E82021 */ addu $a0, $t7, $t0 -/* 0BC33C 800BB73C 00000000 */ nop -.L800BB740: -/* 0BC340 800BB740 0004C080 */ sll $t8, $a0, 2 -/* 0BC344 800BB744 01581021 */ addu $v0, $t2, $t8 -/* 0BC348 800BB748 84590002 */ lh $t9, 2($v0) -/* 0BC34C 800BB74C 84580000 */ lh $t8, ($v0) -/* 0BC350 800BB750 00197080 */ sll $t6, $t9, 2 -/* 0BC354 800BB754 00AE7821 */ addu $t7, $a1, $t6 -/* 0BC358 800BB758 0018C880 */ sll $t9, $t8, 2 -/* 0BC35C 800BB75C 00B97021 */ addu $t6, $a1, $t9 -/* 0BC360 800BB760 C5C60000 */ lwc1 $f6, ($t6) -/* 0BC364 800BB764 C5EA0000 */ lwc1 $f10, ($t7) -/* 0BC368 800BB768 8FA6006C */ lw $a2, 0x6c($sp) -/* 0BC36C 800BB76C 46065200 */ add.s $f8, $f10, $f6 -/* 0BC370 800BB770 8FA400A8 */ lw $a0, 0xa8($sp) -/* 0BC374 800BB774 460E4302 */ mul.s $f12, $f8, $f14 -/* 0BC378 800BB778 1960001C */ blez $t3, .L800BB7EC -/* 0BC37C 800BB77C 24C60001 */ addiu $a2, $a2, 1 -/* 0BC380 800BB780 8FA50070 */ lw $a1, 0x70($sp) -/* 0BC384 800BB784 AFBF0034 */ sw $ra, 0x34($sp) -/* 0BC388 800BB788 AFA70064 */ sw $a3, 0x64($sp) -/* 0BC38C 800BB78C AFA80068 */ sw $t0, 0x68($sp) -/* 0BC390 800BB790 AFAD0038 */ sw $t5, 0x38($sp) -/* 0BC394 800BB794 E7AC009C */ swc1 $f12, 0x9c($sp) -/* 0BC398 800BB798 0C02FBF1 */ jal func_800BEFC4 -/* 0BC39C 800BB79C E7B0008C */ swc1 $f16, 0x8c($sp) -/* 0BC3A0 800BB7A0 C7AC009C */ lwc1 $f12, 0x9c($sp) -/* 0BC3A4 800BB7A4 3C038013 */ lui $v1, %hi(D_80129FCC) # $v1, 0x8013 -/* 0BC3A8 800BB7A8 3C05800E */ lui $a1, %hi(D_800E3040) # $a1, 0x800e -/* 0BC3AC 800BB7AC 3C0A800E */ lui $t2, %hi(D_800E3044) # $t2, 0x800e -/* 0BC3B0 800BB7B0 3C018013 */ lui $at, %hi(D_8012A008) # $at, 0x8013 -/* 0BC3B4 800BB7B4 3C0B800E */ lui $t3, %hi(D_800E3188) # $t3, 0x800e -/* 0BC3B8 800BB7B8 3C0C800E */ lui $t4, %hi(D_800E3178) # $t4, 0x800e -/* 0BC3BC 800BB7BC 8D8C3178 */ lw $t4, %lo(D_800E3178)($t4) -/* 0BC3C0 800BB7C0 8D6B3188 */ lw $t3, %lo(D_800E3188)($t3) -/* 0BC3C4 800BB7C4 C42EA008 */ lwc1 $f14, %lo(D_8012A008)($at) -/* 0BC3C8 800BB7C8 8D4A3044 */ lw $t2, %lo(D_800E3044)($t2) -/* 0BC3CC 800BB7CC 8CA53040 */ lw $a1, %lo(D_800E3040)($a1) -/* 0BC3D0 800BB7D0 8C639FCC */ lw $v1, %lo(D_80129FCC)($v1) -/* 0BC3D4 800BB7D4 8FA70064 */ lw $a3, 0x64($sp) -/* 0BC3D8 800BB7D8 8FA80068 */ lw $t0, 0x68($sp) -/* 0BC3DC 800BB7DC 8FAD0038 */ lw $t5, 0x38($sp) -/* 0BC3E0 800BB7E0 8FBF0034 */ lw $ra, 0x34($sp) -/* 0BC3E4 800BB7E4 C7B0008C */ lwc1 $f16, 0x8c($sp) -/* 0BC3E8 800BB7E8 46006300 */ add.s $f12, $f12, $f0 -.L800BB7EC: -/* 0BC3EC 800BB7EC 8FAF006C */ lw $t7, 0x6c($sp) -/* 0BC3F0 800BB7F0 8FB90060 */ lw $t9, 0x60($sp) -/* 0BC3F4 800BB7F4 25F80001 */ addiu $t8, $t7, 1 -/* 0BC3F8 800BB7F8 03190019 */ multu $t8, $t9 -/* 0BC3FC 800BB7FC 25190001 */ addiu $t9, $t0, 1 -/* 0BC400 800BB800 00007012 */ mflo $t6 -/* 0BC404 800BB804 01AE7821 */ addu $t7, $t5, $t6 -/* 0BC408 800BB808 018FC021 */ addu $t8, $t4, $t7 -/* 0BC40C 800BB80C 00E30019 */ multu $a3, $v1 -/* 0BC410 800BB810 93020000 */ lbu $v0, ($t8) -/* 0BC414 800BB814 00000000 */ nop -/* 0BC418 800BB818 2841007F */ slti $at, $v0, 0x7f -/* 0BC41C 800BB81C 00003012 */ mflo $a2 -/* 0BC420 800BB820 01062021 */ addu $a0, $t0, $a2 -/* 0BC424 800BB824 10200009 */ beqz $at, .L800BB84C -/* 0BC428 800BB828 24840001 */ addiu $a0, $a0, 1 -/* 0BC42C 800BB82C 44825000 */ mtc1 $v0, $f10 -/* 0BC430 800BB830 3C018013 */ li $at, 0x80130000 # -0.000000 -/* 0BC434 800BB834 468051A0 */ cvt.s.w $f6, $f10 -/* 0BC438 800BB838 C424A00C */ lwc1 $f4, %lo(D_8012A00C)($at) -/* 0BC43C 800BB83C 46103202 */ mul.s $f8, $f6, $f16 -/* 0BC440 800BB840 46082280 */ add.s $f10, $f4, $f8 -/* 0BC444 800BB844 460A6302 */ mul.s $f12, $f12, $f10 -/* 0BC448 800BB848 00000000 */ nop -.L800BB84C: -/* 0BC44C 800BB84C 0323082A */ slt $at, $t9, $v1 -/* 0BC450 800BB850 14200003 */ bnez $at, .L800BB860 -/* 0BC454 800BB854 00000000 */ nop -/* 0BC458 800BB858 10000001 */ b .L800BB860 -/* 0BC45C 800BB85C 00C02025 */ move $a0, $a2 -.L800BB860: -/* 0BC460 800BB860 00047080 */ sll $t6, $a0, 2 -/* 0BC464 800BB864 014E1021 */ addu $v0, $t2, $t6 -/* 0BC468 800BB868 844F0002 */ lh $t7, 2($v0) -/* 0BC46C 800BB86C 844E0000 */ lh $t6, ($v0) -/* 0BC470 800BB870 000FC080 */ sll $t8, $t7, 2 -/* 0BC474 800BB874 00B8C821 */ addu $t9, $a1, $t8 -/* 0BC478 800BB878 000E7880 */ sll $t7, $t6, 2 -/* 0BC47C 800BB87C 00AFC021 */ addu $t8, $a1, $t7 -/* 0BC480 800BB880 C7040000 */ lwc1 $f4, ($t8) -/* 0BC484 800BB884 C7260000 */ lwc1 $f6, ($t9) -/* 0BC488 800BB888 8FA50070 */ lw $a1, 0x70($sp) -/* 0BC48C 800BB88C 46043200 */ add.s $f8, $f6, $f4 -/* 0BC490 800BB890 8FA400A8 */ lw $a0, 0xa8($sp) -/* 0BC494 800BB894 460E4082 */ mul.s $f2, $f8, $f14 -/* 0BC498 800BB898 1960000E */ blez $t3, .L800BB8D4 -/* 0BC49C 800BB89C 24A50001 */ addiu $a1, $a1, 1 -/* 0BC4A0 800BB8A0 8FA6006C */ lw $a2, 0x6c($sp) -/* 0BC4A4 800BB8A4 AFBF0034 */ sw $ra, 0x34($sp) -/* 0BC4A8 800BB8A8 E7A20098 */ swc1 $f2, 0x98($sp) -/* 0BC4AC 800BB8AC E7AC009C */ swc1 $f12, 0x9c($sp) -/* 0BC4B0 800BB8B0 0C02FBF1 */ jal func_800BEFC4 -/* 0BC4B4 800BB8B4 E7B0008C */ swc1 $f16, 0x8c($sp) -/* 0BC4B8 800BB8B8 C7A20098 */ lwc1 $f2, 0x98($sp) -/* 0BC4BC 800BB8BC 3C0C800E */ lui $t4, %hi(D_800E3178) # $t4, 0x800e -/* 0BC4C0 800BB8C0 8D8C3178 */ lw $t4, %lo(D_800E3178)($t4) -/* 0BC4C4 800BB8C4 8FBF0034 */ lw $ra, 0x34($sp) -/* 0BC4C8 800BB8C8 C7AC009C */ lwc1 $f12, 0x9c($sp) -/* 0BC4CC 800BB8CC C7B0008C */ lwc1 $f16, 0x8c($sp) -/* 0BC4D0 800BB8D0 46001080 */ add.s $f2, $f2, $f0 -.L800BB8D4: -/* 0BC4D4 800BB8D4 019FC821 */ addu $t9, $t4, $ra -/* 0BC4D8 800BB8D8 93220001 */ lbu $v0, 1($t9) -/* 0BC4DC 800BB8DC 3C038013 */ lui $v1, %hi(D_80129FF0) # $v1, 0x8013 -/* 0BC4E0 800BB8E0 8C639FF0 */ lw $v1, %lo(D_80129FF0)($v1) -/* 0BC4E4 800BB8E4 2841007F */ slti $at, $v0, 0x7f -/* 0BC4E8 800BB8E8 10200009 */ beqz $at, .L800BB910 -/* 0BC4EC 800BB8EC 00000000 */ nop -/* 0BC4F0 800BB8F0 44823000 */ mtc1 $v0, $f6 -/* 0BC4F4 800BB8F4 3C018013 */ li $at, 0x80130000 # -0.000000 -/* 0BC4F8 800BB8F8 46803120 */ cvt.s.w $f4, $f6 -/* 0BC4FC 800BB8FC C42AA00C */ lwc1 $f10, %lo(D_8012A00C)($at) -/* 0BC500 800BB900 46102202 */ mul.s $f8, $f4, $f16 -/* 0BC504 800BB904 46085180 */ add.s $f6, $f10, $f8 -/* 0BC508 800BB908 46061082 */ mul.s $f2, $f2, $f6 -/* 0BC50C 800BB90C 00000000 */ nop -.L800BB910: -/* 0BC510 800BB910 1060000A */ beqz $v1, .L800BB93C -/* 0BC514 800BB914 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 0BC518 800BB918 C7A400A0 */ lwc1 $f4, 0xa0($sp) -/* 0BC51C 800BB91C 44815000 */ mtc1 $at, $f10 -/* 0BC520 800BB920 44813000 */ mtc1 $at, $f6 -/* 0BC524 800BB924 460A2202 */ mul.s $f8, $f4, $f10 -/* 0BC528 800BB928 44812000 */ mtc1 $at, $f4 -/* 0BC52C 800BB92C 46066302 */ mul.s $f12, $f12, $f6 -/* 0BC530 800BB930 E7A800A0 */ swc1 $f8, 0xa0($sp) -/* 0BC534 800BB934 46041082 */ mul.s $f2, $f2, $f4 -/* 0BC538 800BB938 00000000 */ nop -.L800BB93C: -/* 0BC53C 800BB93C C7A800A0 */ lwc1 $f8, 0xa0($sp) -/* 0BC540 800BB940 44805000 */ mtc1 $zero, $f10 -/* 0BC544 800BB944 C7A40090 */ lwc1 $f4, 0x90($sp) -/* 0BC548 800BB948 46024181 */ sub.s $f6, $f8, $f2 -/* 0BC54C 800BB94C E7AA00A4 */ swc1 $f10, 0xa4($sp) -/* 0BC550 800BB950 46043382 */ mul.s $f14, $f6, $f4 -/* 0BC554 800BB954 C7AA0094 */ lwc1 $f10, 0x94($sp) -/* 0BC558 800BB958 00000000 */ nop -/* 0BC55C 800BB95C 460A2402 */ mul.s $f16, $f4, $f10 -/* 0BC560 800BB960 460C4181 */ sub.s $f6, $f8, $f12 -/* 0BC564 800BB964 460A3482 */ mul.s $f18, $f6, $f10 -/* 0BC568 800BB968 100000E5 */ b .L800BBD00 -/* 0BC56C 800BB96C E7B00084 */ swc1 $f16, 0x84($sp) -.L800BB970: -/* 0BC570 800BB970 14200005 */ bnez $at, .L800BB988 -/* 0BC574 800BB974 00000000 */ nop -/* 0BC578 800BB978 00E30019 */ multu $a3, $v1 -/* 0BC57C 800BB97C 00002012 */ mflo $a0 -/* 0BC580 800BB980 10000005 */ b .L800BB998 -/* 0BC584 800BB984 00000000 */ nop -.L800BB988: -/* 0BC588 800BB988 00E30019 */ multu $a3, $v1 -/* 0BC58C 800BB98C 00007012 */ mflo $t6 -/* 0BC590 800BB990 010E2021 */ addu $a0, $t0, $t6 -/* 0BC594 800BB994 24840001 */ addiu $a0, $a0, 1 -.L800BB998: -/* 0BC598 800BB998 8D4A3044 */ lw $t2, 0x3044($t2) -/* 0BC59C 800BB99C 00047880 */ sll $t7, $a0, 2 -/* 0BC5A0 800BB9A0 014F1021 */ addu $v0, $t2, $t7 -/* 0BC5A4 800BB9A4 84580002 */ lh $t8, 2($v0) -/* 0BC5A8 800BB9A8 844F0000 */ lh $t7, ($v0) -/* 0BC5AC 800BB9AC 8CA53040 */ lw $a1, 0x3040($a1) -/* 0BC5B0 800BB9B0 0018C880 */ sll $t9, $t8, 2 -/* 0BC5B4 800BB9B4 000FC080 */ sll $t8, $t7, 2 -/* 0BC5B8 800BB9B8 00B97021 */ addu $t6, $a1, $t9 -/* 0BC5BC 800BB9BC 00B8C821 */ addu $t9, $a1, $t8 -/* 0BC5C0 800BB9C0 C7280000 */ lwc1 $f8, ($t9) -/* 0BC5C4 800BB9C4 C5C40000 */ lwc1 $f4, ($t6) -/* 0BC5C8 800BB9C8 C52E0040 */ lwc1 $f14, 0x40($t1) -/* 0BC5CC 800BB9CC 46082180 */ add.s $f6, $f4, $f8 -/* 0BC5D0 800BB9D0 3C0B800E */ lui $t3, %hi(D_800E3188) # $t3, 0x800e -/* 0BC5D4 800BB9D4 460E3282 */ mul.s $f10, $f6, $f14 -/* 0BC5D8 800BB9D8 8D6B3188 */ lw $t3, %lo(D_800E3188)($t3) -/* 0BC5DC 800BB9DC 8FA400A8 */ lw $a0, 0xa8($sp) -/* 0BC5E0 800BB9E0 1960001A */ blez $t3, .L800BBA4C -/* 0BC5E4 800BB9E4 E7AA00A0 */ swc1 $f10, 0xa0($sp) -/* 0BC5E8 800BB9E8 8FA50070 */ lw $a1, 0x70($sp) -/* 0BC5EC 800BB9EC 8FA6006C */ lw $a2, 0x6c($sp) -/* 0BC5F0 800BB9F0 AFBF0024 */ sw $ra, 0x24($sp) -/* 0BC5F4 800BB9F4 AFA70064 */ sw $a3, 0x64($sp) -/* 0BC5F8 800BB9F8 AFA80068 */ sw $t0, 0x68($sp) -/* 0BC5FC 800BB9FC E7B0008C */ swc1 $f16, 0x8c($sp) -/* 0BC600 800BBA00 0C02FBF1 */ jal func_800BEFC4 -/* 0BC604 800BBA04 24A50001 */ addiu $a1, $a1, 1 -/* 0BC608 800BBA08 C7A400A0 */ lwc1 $f4, 0xa0($sp) -/* 0BC60C 800BBA0C 3C038013 */ lui $v1, %hi(D_80129FCC) # $v1, 0x8013 -/* 0BC610 800BBA10 46002200 */ add.s $f8, $f4, $f0 -/* 0BC614 800BBA14 3C05800E */ lui $a1, %hi(D_800E3040) # $a1, 0x800e -/* 0BC618 800BBA18 3C0A800E */ lui $t2, %hi(D_800E3044) # $t2, 0x800e -/* 0BC61C 800BBA1C 3C018013 */ lui $at, %hi(D_8012A008) # $at, 0x8013 -/* 0BC620 800BBA20 3C0B800E */ lui $t3, %hi(D_800E3188) # $t3, 0x800e -/* 0BC624 800BBA24 8D6B3188 */ lw $t3, %lo(D_800E3188)($t3) -/* 0BC628 800BBA28 C42EA008 */ lwc1 $f14, %lo(D_8012A008)($at) -/* 0BC62C 800BBA2C 8D4A3044 */ lw $t2, %lo(D_800E3044)($t2) -/* 0BC630 800BBA30 8CA53040 */ lw $a1, %lo(D_800E3040)($a1) -/* 0BC634 800BBA34 8C639FCC */ lw $v1, %lo(D_80129FCC)($v1) -/* 0BC638 800BBA38 8FA70064 */ lw $a3, 0x64($sp) -/* 0BC63C 800BBA3C 8FA80068 */ lw $t0, 0x68($sp) -/* 0BC640 800BBA40 8FBF0024 */ lw $ra, 0x24($sp) -/* 0BC644 800BBA44 C7B0008C */ lwc1 $f16, 0x8c($sp) -/* 0BC648 800BBA48 E7A800A0 */ swc1 $f8, 0xa0($sp) -.L800BBA4C: -/* 0BC64C 800BBA4C 8FB8006C */ lw $t8, 0x6c($sp) -/* 0BC650 800BBA50 8FB90060 */ lw $t9, 0x60($sp) -/* 0BC654 800BBA54 8FAE0058 */ lw $t6, 0x58($sp) -/* 0BC658 800BBA58 03190019 */ multu $t8, $t9 -/* 0BC65C 800BBA5C 8FAF0070 */ lw $t7, 0x70($sp) -/* 0BC660 800BBA60 3C0C800E */ lui $t4, %hi(D_800E3178) # $t4, 0x800e -/* 0BC664 800BBA64 01CF6821 */ addu $t5, $t6, $t7 -/* 0BC668 800BBA68 8D8C3178 */ lw $t4, %lo(D_800E3178)($t4) -/* 0BC66C 800BBA6C 24E90001 */ addiu $t1, $a3, 1 -/* 0BC670 800BBA70 00007012 */ mflo $t6 -/* 0BC674 800BBA74 01AE7821 */ addu $t7, $t5, $t6 -/* 0BC678 800BBA78 018FC021 */ addu $t8, $t4, $t7 -/* 0BC67C 800BBA7C 93020001 */ lbu $v0, 1($t8) -/* 0BC680 800BBA80 00000000 */ nop -/* 0BC684 800BBA84 2841007F */ slti $at, $v0, 0x7f -/* 0BC688 800BBA88 1020000B */ beqz $at, .L800BBAB8 -/* 0BC68C 800BBA8C 0123082A */ slt $at, $t1, $v1 -/* 0BC690 800BBA90 44825000 */ mtc1 $v0, $f10 -/* 0BC694 800BBA94 3C018013 */ lui $at, %hi(D_8012A00C) # $at, 0x8013 -/* 0BC698 800BBA98 46805120 */ cvt.s.w $f4, $f10 -/* 0BC69C 800BBA9C C426A00C */ lwc1 $f6, %lo(D_8012A00C)($at) -/* 0BC6A0 800BBAA0 46102202 */ mul.s $f8, $f4, $f16 -/* 0BC6A4 800BBAA4 C7A400A0 */ lwc1 $f4, 0xa0($sp) -/* 0BC6A8 800BBAA8 46083280 */ add.s $f10, $f6, $f8 -/* 0BC6AC 800BBAAC 460A2182 */ mul.s $f6, $f4, $f10 -/* 0BC6B0 800BBAB0 E7A600A0 */ swc1 $f6, 0xa0($sp) -/* 0BC6B4 800BBAB4 0123082A */ slt $at, $t1, $v1 -.L800BBAB8: -/* 0BC6B8 800BBAB8 14200003 */ bnez $at, .L800BBAC8 -/* 0BC6BC 800BBABC 00000000 */ nop -/* 0BC6C0 800BBAC0 10000005 */ b .L800BBAD8 -/* 0BC6C4 800BBAC4 01002025 */ move $a0, $t0 -.L800BBAC8: -/* 0BC6C8 800BBAC8 01230019 */ multu $t1, $v1 -/* 0BC6CC 800BBACC 0000C812 */ mflo $t9 -/* 0BC6D0 800BBAD0 03282021 */ addu $a0, $t9, $t0 -/* 0BC6D4 800BBAD4 00000000 */ nop -.L800BBAD8: -/* 0BC6D8 800BBAD8 00047080 */ sll $t6, $a0, 2 -/* 0BC6DC 800BBADC 014E1021 */ addu $v0, $t2, $t6 -/* 0BC6E0 800BBAE0 844F0002 */ lh $t7, 2($v0) -/* 0BC6E4 800BBAE4 844E0000 */ lh $t6, ($v0) -/* 0BC6E8 800BBAE8 000FC080 */ sll $t8, $t7, 2 -/* 0BC6EC 800BBAEC 00B8C821 */ addu $t9, $a1, $t8 -/* 0BC6F0 800BBAF0 000E7880 */ sll $t7, $t6, 2 -/* 0BC6F4 800BBAF4 00AFC021 */ addu $t8, $a1, $t7 -/* 0BC6F8 800BBAF8 C7040000 */ lwc1 $f4, ($t8) -/* 0BC6FC 800BBAFC C7280000 */ lwc1 $f8, ($t9) -/* 0BC700 800BBB00 8FA6006C */ lw $a2, 0x6c($sp) -/* 0BC704 800BBB04 46044280 */ add.s $f10, $f8, $f4 -/* 0BC708 800BBB08 8FA400A8 */ lw $a0, 0xa8($sp) -/* 0BC70C 800BBB0C 460E5302 */ mul.s $f12, $f10, $f14 -/* 0BC710 800BBB10 1960001A */ blez $t3, .L800BBB7C -/* 0BC714 800BBB14 24C60001 */ addiu $a2, $a2, 1 -/* 0BC718 800BBB18 8FA50070 */ lw $a1, 0x70($sp) -/* 0BC71C 800BBB1C AFBF0024 */ sw $ra, 0x24($sp) -/* 0BC720 800BBB20 AFA9004C */ sw $t1, 0x4c($sp) -/* 0BC724 800BBB24 AFAD0038 */ sw $t5, 0x38($sp) -/* 0BC728 800BBB28 E7AC009C */ swc1 $f12, 0x9c($sp) -/* 0BC72C 800BBB2C 0C02FBF1 */ jal func_800BEFC4 -/* 0BC730 800BBB30 E7B0008C */ swc1 $f16, 0x8c($sp) -/* 0BC734 800BBB34 C7AC009C */ lwc1 $f12, 0x9c($sp) -/* 0BC738 800BBB38 3C038013 */ lui $v1, %hi(D_80129FCC) # $v1, 0x8013 -/* 0BC73C 800BBB3C 3C05800E */ lui $a1, %hi(D_800E3040) # $a1, 0x800e -/* 0BC740 800BBB40 3C0A800E */ lui $t2, %hi(D_800E3044) # $t2, 0x800e -/* 0BC744 800BBB44 3C018013 */ lui $at, %hi(D_8012A008) # $at, 0x8013 -/* 0BC748 800BBB48 3C0B800E */ lui $t3, %hi(D_800E3188) # $t3, 0x800e -/* 0BC74C 800BBB4C 3C0C800E */ lui $t4, %hi(D_800E3178) # $t4, 0x800e -/* 0BC750 800BBB50 8D8C3178 */ lw $t4, %lo(D_800E3178)($t4) -/* 0BC754 800BBB54 8D6B3188 */ lw $t3, %lo(D_800E3188)($t3) -/* 0BC758 800BBB58 C42EA008 */ lwc1 $f14, %lo(D_8012A008)($at) -/* 0BC75C 800BBB5C 8D4A3044 */ lw $t2, %lo(D_800E3044)($t2) -/* 0BC760 800BBB60 8CA53040 */ lw $a1, %lo(D_800E3040)($a1) -/* 0BC764 800BBB64 8C639FCC */ lw $v1, %lo(D_80129FCC)($v1) -/* 0BC768 800BBB68 8FA9004C */ lw $t1, 0x4c($sp) -/* 0BC76C 800BBB6C 8FAD0038 */ lw $t5, 0x38($sp) -/* 0BC770 800BBB70 8FBF0024 */ lw $ra, 0x24($sp) -/* 0BC774 800BBB74 C7B0008C */ lwc1 $f16, 0x8c($sp) -/* 0BC778 800BBB78 46006300 */ add.s $f12, $f12, $f0 -.L800BBB7C: -/* 0BC77C 800BBB7C 8FA6006C */ lw $a2, 0x6c($sp) -/* 0BC780 800BBB80 8FB90060 */ lw $t9, 0x60($sp) -/* 0BC784 800BBB84 24C60001 */ addiu $a2, $a2, 1 -/* 0BC788 800BBB88 00D90019 */ multu $a2, $t9 -/* 0BC78C 800BBB8C 03E02025 */ move $a0, $ra -/* 0BC790 800BBB90 00007012 */ mflo $t6 -/* 0BC794 800BBB94 01AE3821 */ addu $a3, $t5, $t6 -/* 0BC798 800BBB98 01877821 */ addu $t7, $t4, $a3 -/* 0BC79C 800BBB9C 91E20000 */ lbu $v0, ($t7) -/* 0BC7A0 800BBBA0 00000000 */ nop -/* 0BC7A4 800BBBA4 2841007F */ slti $at, $v0, 0x7f -/* 0BC7A8 800BBBA8 1020000A */ beqz $at, .L800BBBD4 -/* 0BC7AC 800BBBAC 03E3082A */ slt $at, $ra, $v1 -/* 0BC7B0 800BBBB0 44824000 */ mtc1 $v0, $f8 -/* 0BC7B4 800BBBB4 3C018013 */ li $at, 0x80130000 # -0.000000 -/* 0BC7B8 800BBBB8 46804120 */ cvt.s.w $f4, $f8 -/* 0BC7BC 800BBBBC C426A00C */ lwc1 $f6, %lo(D_8012A00C)($at) -/* 0BC7C0 800BBBC0 46102282 */ mul.s $f10, $f4, $f16 -/* 0BC7C4 800BBBC4 460A3200 */ add.s $f8, $f6, $f10 -/* 0BC7C8 800BBBC8 46086302 */ mul.s $f12, $f12, $f8 -/* 0BC7CC 800BBBCC 00000000 */ nop -/* 0BC7D0 800BBBD0 03E3082A */ slt $at, $ra, $v1 -.L800BBBD4: -/* 0BC7D4 800BBBD4 14200003 */ bnez $at, .L800BBBE4 -/* 0BC7D8 800BBBD8 00000000 */ nop -/* 0BC7DC 800BBBDC 10000001 */ b .L800BBBE4 -/* 0BC7E0 800BBBE0 00002025 */ move $a0, $zero -.L800BBBE4: -/* 0BC7E4 800BBBE4 0123082A */ slt $at, $t1, $v1 -/* 0BC7E8 800BBBE8 10200006 */ beqz $at, .L800BBC04 -/* 0BC7EC 800BBBEC 0004C880 */ sll $t9, $a0, 2 -/* 0BC7F0 800BBBF0 01230019 */ multu $t1, $v1 -/* 0BC7F4 800BBBF4 0000C012 */ mflo $t8 -/* 0BC7F8 800BBBF8 00982021 */ addu $a0, $a0, $t8 -/* 0BC7FC 800BBBFC 00000000 */ nop -/* 0BC800 800BBC00 0004C880 */ sll $t9, $a0, 2 -.L800BBC04: -/* 0BC804 800BBC04 01591021 */ addu $v0, $t2, $t9 -/* 0BC808 800BBC08 844E0002 */ lh $t6, 2($v0) -/* 0BC80C 800BBC0C 84590000 */ lh $t9, ($v0) -/* 0BC810 800BBC10 000E7880 */ sll $t7, $t6, 2 -/* 0BC814 800BBC14 00AFC021 */ addu $t8, $a1, $t7 -/* 0BC818 800BBC18 00197080 */ sll $t6, $t9, 2 -/* 0BC81C 800BBC1C 00AE7821 */ addu $t7, $a1, $t6 -/* 0BC820 800BBC20 C5E60000 */ lwc1 $f6, ($t7) -/* 0BC824 800BBC24 C7040000 */ lwc1 $f4, ($t8) -/* 0BC828 800BBC28 8FA50070 */ lw $a1, 0x70($sp) -/* 0BC82C 800BBC2C 46062280 */ add.s $f10, $f4, $f6 -/* 0BC830 800BBC30 8FA400A8 */ lw $a0, 0xa8($sp) -/* 0BC834 800BBC34 460E5082 */ mul.s $f2, $f10, $f14 -/* 0BC838 800BBC38 1960000D */ blez $t3, .L800BBC70 -/* 0BC83C 800BBC3C 24A50001 */ addiu $a1, $a1, 1 -/* 0BC840 800BBC40 AFA70028 */ sw $a3, 0x28($sp) -/* 0BC844 800BBC44 E7A20098 */ swc1 $f2, 0x98($sp) -/* 0BC848 800BBC48 E7AC009C */ swc1 $f12, 0x9c($sp) -/* 0BC84C 800BBC4C 0C02FBF1 */ jal func_800BEFC4 -/* 0BC850 800BBC50 E7B0008C */ swc1 $f16, 0x8c($sp) -/* 0BC854 800BBC54 C7A20098 */ lwc1 $f2, 0x98($sp) -/* 0BC858 800BBC58 3C0C800E */ lui $t4, %hi(D_800E3178) # $t4, 0x800e -/* 0BC85C 800BBC5C 8D8C3178 */ lw $t4, %lo(D_800E3178)($t4) -/* 0BC860 800BBC60 8FA70028 */ lw $a3, 0x28($sp) -/* 0BC864 800BBC64 C7AC009C */ lwc1 $f12, 0x9c($sp) -/* 0BC868 800BBC68 C7B0008C */ lwc1 $f16, 0x8c($sp) -/* 0BC86C 800BBC6C 46001080 */ add.s $f2, $f2, $f0 -.L800BBC70: -/* 0BC870 800BBC70 0187C021 */ addu $t8, $t4, $a3 -/* 0BC874 800BBC74 93020001 */ lbu $v0, 1($t8) -/* 0BC878 800BBC78 3C038013 */ lui $v1, %hi(D_80129FF0) # $v1, 0x8013 -/* 0BC87C 800BBC7C 8C639FF0 */ lw $v1, %lo(D_80129FF0)($v1) -/* 0BC880 800BBC80 2841007F */ slti $at, $v0, 0x7f -/* 0BC884 800BBC84 10200009 */ beqz $at, .L800BBCAC -/* 0BC888 800BBC88 00000000 */ nop -/* 0BC88C 800BBC8C 44822000 */ mtc1 $v0, $f4 -/* 0BC890 800BBC90 3C018013 */ li $at, 0x80130000 # -0.000000 -/* 0BC894 800BBC94 468021A0 */ cvt.s.w $f6, $f4 -/* 0BC898 800BBC98 C428A00C */ lwc1 $f8, %lo(D_8012A00C)($at) -/* 0BC89C 800BBC9C 46103282 */ mul.s $f10, $f6, $f16 -/* 0BC8A0 800BBCA0 460A4100 */ add.s $f4, $f8, $f10 -/* 0BC8A4 800BBCA4 46041082 */ mul.s $f2, $f2, $f4 -/* 0BC8A8 800BBCA8 00000000 */ nop -.L800BBCAC: -/* 0BC8AC 800BBCAC 1060000A */ beqz $v1, .L800BBCD8 -/* 0BC8B0 800BBCB0 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 0BC8B4 800BBCB4 C7A600A0 */ lwc1 $f6, 0xa0($sp) -/* 0BC8B8 800BBCB8 44814000 */ mtc1 $at, $f8 -/* 0BC8BC 800BBCBC 44812000 */ mtc1 $at, $f4 -/* 0BC8C0 800BBCC0 46083282 */ mul.s $f10, $f6, $f8 -/* 0BC8C4 800BBCC4 44813000 */ mtc1 $at, $f6 -/* 0BC8C8 800BBCC8 46046302 */ mul.s $f12, $f12, $f4 -/* 0BC8CC 800BBCCC E7AA00A0 */ swc1 $f10, 0xa0($sp) -/* 0BC8D0 800BBCD0 46061082 */ mul.s $f2, $f2, $f6 -/* 0BC8D4 800BBCD4 00000000 */ nop -.L800BBCD8: -/* 0BC8D8 800BBCD8 46026281 */ sub.s $f10, $f12, $f2 -/* 0BC8DC 800BBCDC C7A40090 */ lwc1 $f4, 0x90($sp) -/* 0BC8E0 800BBCE0 C7A80094 */ lwc1 $f8, 0x94($sp) -/* 0BC8E4 800BBCE4 46045382 */ mul.s $f14, $f10, $f4 -/* 0BC8E8 800BBCE8 C7A600A0 */ lwc1 $f6, 0xa0($sp) -/* 0BC8EC 800BBCEC E7A800A4 */ swc1 $f8, 0xa4($sp) -/* 0BC8F0 800BBCF0 46082402 */ mul.s $f16, $f4, $f8 -/* 0BC8F4 800BBCF4 46023281 */ sub.s $f10, $f6, $f2 -/* 0BC8F8 800BBCF8 46085482 */ mul.s $f18, $f10, $f8 -/* 0BC8FC 800BBCFC E7B00084 */ swc1 $f16, 0x84($sp) -.L800BBD00: -/* 0BC900 800BBD00 460E7102 */ mul.s $f4, $f14, $f14 -/* 0BC904 800BBD04 E7AE0088 */ swc1 $f14, 0x88($sp) -/* 0BC908 800BBD08 E7B0004C */ swc1 $f16, 0x4c($sp) -/* 0BC90C 800BBD0C E7B20080 */ swc1 $f18, 0x80($sp) -/* 0BC910 800BBD10 46108182 */ mul.s $f6, $f16, $f16 -/* 0BC914 800BBD14 00000000 */ nop -/* 0BC918 800BBD18 46129202 */ mul.s $f8, $f18, $f18 -/* 0BC91C 800BBD1C 46062280 */ add.s $f10, $f4, $f6 -/* 0BC920 800BBD20 0C0326B4 */ jal sqrtf -/* 0BC924 800BBD24 46085300 */ add.s $f12, $f10, $f8 -/* 0BC928 800BBD28 44801800 */ mtc1 $zero, $f3 -/* 0BC92C 800BBD2C 44801000 */ mtc1 $zero, $f2 -/* 0BC930 800BBD30 46000121 */ cvt.d.s $f4, $f0 -/* 0BC934 800BBD34 46241032 */ c.eq.d $f2, $f4 -/* 0BC938 800BBD38 C7AE0088 */ lwc1 $f14, 0x88($sp) -/* 0BC93C 800BBD3C C7B0004C */ lwc1 $f16, 0x4c($sp) -/* 0BC940 800BBD40 C7B20080 */ lwc1 $f18, 0x80($sp) -/* 0BC944 800BBD44 4501001B */ bc1t .L800BBDB4 -/* 0BC948 800BBD48 8FB900B4 */ lw $t9, 0xb4($sp) -/* 0BC94C 800BBD4C 460081A1 */ cvt.d.s $f6, $f16 -/* 0BC950 800BBD50 46261032 */ c.eq.d $f2, $f6 -/* 0BC954 800BBD54 00000000 */ nop -/* 0BC958 800BBD58 45010015 */ bc1t .L800BBDB0 -/* 0BC95C 800BBD5C 00000000 */ nop -/* 0BC960 800BBD60 46007383 */ div.s $f14, $f14, $f0 -/* 0BC964 800BBD64 C7AA00AC */ lwc1 $f10, 0xac($sp) -/* 0BC968 800BBD68 C7A400B0 */ lwc1 $f4, 0xb0($sp) -/* 0BC96C 800BBD6C 46009483 */ div.s $f18, $f18, $f0 -/* 0BC970 800BBD70 460A7202 */ mul.s $f8, $f14, $f10 -/* 0BC974 800BBD74 00000000 */ nop -/* 0BC978 800BBD78 46008083 */ div.s $f2, $f16, $f0 -/* 0BC97C 800BBD7C 46049182 */ mul.s $f6, $f18, $f4 -/* 0BC980 800BBD80 C7A400A4 */ lwc1 $f4, 0xa4($sp) -/* 0BC984 800BBD84 46064280 */ add.s $f10, $f8, $f6 -/* 0BC988 800BBD88 C7A600A0 */ lwc1 $f6, 0xa0($sp) -/* 0BC98C 800BBD8C 460E2202 */ mul.s $f8, $f4, $f14 -/* 0BC990 800BBD90 E7A20084 */ swc1 $f2, 0x84($sp) -/* 0BC994 800BBD94 46023102 */ mul.s $f4, $f6, $f2 -/* 0BC998 800BBD98 46044180 */ add.s $f6, $f8, $f4 -/* 0BC99C 800BBD9C 46065201 */ sub.s $f8, $f10, $f6 -/* 0BC9A0 800BBDA0 C7AA0078 */ lwc1 $f10, 0x78($sp) -/* 0BC9A4 800BBDA4 46024103 */ div.s $f4, $f8, $f2 -/* 0BC9A8 800BBDA8 46045181 */ sub.s $f6, $f10, $f4 -/* 0BC9AC 800BBDAC E7A60078 */ swc1 $f6, 0x78($sp) -.L800BBDB0: -/* 0BC9B0 800BBDB0 8FB900B4 */ lw $t9, 0xb4($sp) -.L800BBDB4: -/* 0BC9B4 800BBDB4 C7A20084 */ lwc1 $f2, 0x84($sp) -/* 0BC9B8 800BBDB8 13200005 */ beqz $t9, .L800BBDD0 -/* 0BC9BC 800BBDBC 8FBF0014 */ lw $ra, 0x14($sp) -/* 0BC9C0 800BBDC0 E72E0000 */ swc1 $f14, ($t9) -/* 0BC9C4 800BBDC4 E7220004 */ swc1 $f2, 4($t9) -/* 0BC9C8 800BBDC8 E7320008 */ swc1 $f18, 8($t9) -/* 0BC9CC 800BBDCC 8FBF0014 */ lw $ra, 0x14($sp) -.L800BBDD0: -/* 0BC9D0 800BBDD0 C7A00078 */ lwc1 $f0, 0x78($sp) -/* 0BC9D4 800BBDD4 03E00008 */ jr $ra -/* 0BC9D8 800BBDD8 27BD00A8 */ addiu $sp, $sp, 0xa8 - -glabel func_800BBDDC -/* 0BC9DC 800BBDDC 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0BC9E0 800BBDE0 AFBF0014 */ sw $ra, 0x14($sp) -/* 0BC9E4 800BBDE4 0C02EF82 */ jal func_800BBE08 -/* 0BC9E8 800BBDE8 AFA40018 */ sw $a0, 0x18($sp) -/* 0BC9EC 800BBDEC 8FA40018 */ lw $a0, 0x18($sp) -/* 0BC9F0 800BBDF0 0C02EFDE */ jal func_800BBF78 -/* 0BC9F4 800BBDF4 00000000 */ nop -/* 0BC9F8 800BBDF8 8FBF0014 */ lw $ra, 0x14($sp) -/* 0BC9FC 800BBDFC 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0BCA00 800BBE00 03E00008 */ jr $ra -/* 0BCA04 800BBE04 00000000 */ nop - -glabel func_800BBE08 -/* 0BCA08 800BBE08 27BDFFF0 */ addiu $sp, $sp, -0x10 -/* 0BCA0C 800BBE0C AFB1000C */ sw $s1, 0xc($sp) -/* 0BCA10 800BBE10 AFB00008 */ sw $s0, 8($sp) -/* 0BCA14 800BBE14 8486001A */ lh $a2, 0x1a($a0) -/* 0BCA18 800BBE18 00001025 */ move $v0, $zero -/* 0BCA1C 800BBE1C 18C00023 */ blez $a2, .L800BBEAC -/* 0BCA20 800BBE20 00001825 */ move $v1, $zero -/* 0BCA24 800BBE24 8C8E0004 */ lw $t6, 4($a0) -/* 0BCA28 800BBE28 00007980 */ sll $t7, $zero, 6 -/* 0BCA2C 800BBE2C 3C110100 */ lui $s1, (0x01002100 >> 16) # lui $s1, 0x100 -/* 0BCA30 800BBE30 3C100100 */ lui $s0, (0x01002000 >> 16) # lui $s0, 0x100 -/* 0BCA34 800BBE34 36102000 */ ori $s0, (0x01002000 & 0xFFFF) # ori $s0, $s0, 0x2000 -/* 0BCA38 800BBE38 36312100 */ ori $s1, (0x01002100 & 0xFFFF) # ori $s1, $s1, 0x2100 -/* 0BCA3C 800BBE3C 01CF4021 */ addu $t0, $t6, $t7 -/* 0BCA40 800BBE40 01003825 */ move $a3, $t0 -.L800BBE44: -/* 0BCA44 800BBE44 14400013 */ bnez $v0, .L800BBE94 -/* 0BCA48 800BBE48 00004825 */ move $t1, $zero -/* 0BCA4C 800BBE4C 84EA0020 */ lh $t2, 0x20($a3) -/* 0BCA50 800BBE50 00006080 */ sll $t4, $zero, 2 -/* 0BCA54 800BBE54 1940000F */ blez $t2, .L800BBE94 -/* 0BCA58 800BBE58 01806023 */ subu $t4, $t4, $zero -/* 0BCA5C 800BBE5C 8CEB000C */ lw $t3, 0xc($a3) -/* 0BCA60 800BBE60 000C6080 */ sll $t4, $t4, 2 -/* 0BCA64 800BBE64 016C6821 */ addu $t5, $t3, $t4 -.L800BBE68: -/* 0BCA68 800BBE68 8DB80008 */ lw $t8, 8($t5) -/* 0BCA6C 800BBE6C 25290001 */ addiu $t1, $t1, 1 -/* 0BCA70 800BBE70 0311C824 */ and $t9, $t8, $s1 -/* 0BCA74 800BBE74 16190002 */ bne $s0, $t9, .L800BBE80 -/* 0BCA78 800BBE78 25AD000C */ addiu $t5, $t5, 0xc -/* 0BCA7C 800BBE7C 016C1021 */ addu $v0, $t3, $t4 -.L800BBE80: -/* 0BCA80 800BBE80 14400004 */ bnez $v0, .L800BBE94 -/* 0BCA84 800BBE84 258C000C */ addiu $t4, $t4, 0xc -/* 0BCA88 800BBE88 012A082A */ slt $at, $t1, $t2 -/* 0BCA8C 800BBE8C 1420FFF6 */ bnez $at, .L800BBE68 -/* 0BCA90 800BBE90 00000000 */ nop -.L800BBE94: -/* 0BCA94 800BBE94 24630001 */ addiu $v1, $v1, 1 -/* 0BCA98 800BBE98 14400004 */ bnez $v0, .L800BBEAC -/* 0BCA9C 800BBE9C 25080044 */ addiu $t0, $t0, 0x44 -/* 0BCAA0 800BBEA0 0066082A */ slt $at, $v1, $a2 -/* 0BCAA4 800BBEA4 1420FFE7 */ bnez $at, .L800BBE44 -/* 0BCAA8 800BBEA8 01003825 */ move $a3, $t0 -.L800BBEAC: -/* 0BCAAC 800BBEAC 14400003 */ bnez $v0, .L800BBEBC -/* 0BCAB0 800BBEB0 2463FFFF */ addiu $v1, $v1, -1 -/* 0BCAB4 800BBEB4 10000001 */ b .L800BBEBC -/* 0BCAB8 800BBEB8 00001825 */ move $v1, $zero -.L800BBEBC: -/* 0BCABC 800BBEBC 00037880 */ sll $t7, $v1, 2 -/* 0BCAC0 800BBEC0 8C8E0008 */ lw $t6, 8($a0) -/* 0BCAC4 800BBEC4 01E37823 */ subu $t7, $t7, $v1 -/* 0BCAC8 800BBEC8 000F7880 */ sll $t7, $t7, 2 -/* 0BCACC 800BBECC 01CF3021 */ addu $a2, $t6, $t7 -/* 0BCAD0 800BBED0 84D80006 */ lh $t8, 6($a2) -/* 0BCAD4 800BBED4 84D90000 */ lh $t9, ($a2) -/* 0BCAD8 800BBED8 3C018013 */ lui $at, %hi(D_8012A0A8) # $at, 0x8013 -/* 0BCADC 800BBEDC 03197023 */ subu $t6, $t8, $t9 -/* 0BCAE0 800BBEE0 AC2EA0A8 */ sw $t6, %lo(D_8012A0A8)($at) -/* 0BCAE4 800BBEE4 84D80004 */ lh $t8, 4($a2) -/* 0BCAE8 800BBEE8 84CF000A */ lh $t7, 0xa($a2) -/* 0BCAEC 800BBEEC 3C018013 */ lui $at, %hi(D_8012A0AC) # $at, 0x8013 -/* 0BCAF0 800BBEF0 01F8C823 */ subu $t9, $t7, $t8 -/* 0BCAF4 800BBEF4 AC39A0AC */ sw $t9, %lo(D_8012A0AC)($at) -/* 0BCAF8 800BBEF8 84CE0000 */ lh $t6, ($a2) -/* 0BCAFC 800BBEFC 3C018013 */ lui $at, %hi(D_8012A0B0) # $at, 0x8013 -/* 0BCB00 800BBF00 AC2EA0B0 */ sw $t6, %lo(D_8012A0B0)($at) -/* 0BCB04 800BBF04 84CF0004 */ lh $t7, 4($a2) -/* 0BCB08 800BBF08 3C018013 */ lui $at, %hi(D_8012A0B4) # $at, 0x8013 -/* 0BCB0C 800BBF0C AC2FA0B4 */ sw $t7, %lo(D_8012A0B4)($at) -/* 0BCB10 800BBF10 3C018013 */ lui $at, %hi(D_8012A07C) # $at, 0x8013 -/* 0BCB14 800BBF14 AC22A07C */ sw $v0, %lo(D_8012A07C)($at) -/* 0BCB18 800BBF18 90590000 */ lbu $t9, ($v0) -/* 0BCB1C 800BBF1C 8C980000 */ lw $t8, ($a0) -/* 0BCB20 800BBF20 001970C0 */ sll $t6, $t9, 3 -/* 0BCB24 800BBF24 030E7821 */ addu $t7, $t8, $t6 -/* 0BCB28 800BBF28 8DF90000 */ lw $t9, ($t7) -/* 0BCB2C 800BBF2C 3C018013 */ lui $at, %hi(D_8012A080) # $at, 0x8013 -/* 0BCB30 800BBF30 AC39A080 */ sw $t9, %lo(D_8012A080)($at) -/* 0BCB34 800BBF34 8C470008 */ lw $a3, 8($v0) -/* 0BCB38 800BBF38 3C017000 */ lui $at, 0x7000 -/* 0BCB3C 800BBF3C 00E1C024 */ and $t8, $a3, $at -/* 0BCB40 800BBF40 00187702 */ srl $t6, $t8, 0x1c -/* 0BCB44 800BBF44 19C00007 */ blez $t6, .L800BBF64 -/* 0BCB48 800BBF48 3C01800E */ lui $at, 0x800e -/* 0BCB4C 800BBF4C 000E7880 */ sll $t7, $t6, 2 -/* 0BCB50 800BBF50 00AFC821 */ addu $t9, $a1, $t7 -/* 0BCB54 800BBF54 8F380070 */ lw $t8, 0x70($t9) -/* 0BCB58 800BBF58 3C01800E */ lui $at, %hi(D_800E3180) # $at, 0x800e -/* 0BCB5C 800BBF5C 10000002 */ b .L800BBF68 -/* 0BCB60 800BBF60 AC383180 */ sw $t8, %lo(D_800E3180)($at) -.L800BBF64: -/* 0BCB64 800BBF64 AC203180 */ sw $zero, %lo(D_800E3180)($at) -.L800BBF68: -/* 0BCB68 800BBF68 8FB00008 */ lw $s0, 8($sp) -/* 0BCB6C 800BBF6C 8FB1000C */ lw $s1, 0xc($sp) -/* 0BCB70 800BBF70 03E00008 */ jr $ra -/* 0BCB74 800BBF74 27BD0010 */ addiu $sp, $sp, 0x10 - -glabel func_800BBF78 -/* 0BCB78 800BBF78 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 0BCB7C 800BBF7C AFBF003C */ sw $ra, 0x3c($sp) -/* 0BCB80 800BBF80 AFBE0038 */ sw $fp, 0x38($sp) -/* 0BCB84 800BBF84 AFB70034 */ sw $s7, 0x34($sp) -/* 0BCB88 800BBF88 AFB60030 */ sw $s6, 0x30($sp) -/* 0BCB8C 800BBF8C AFB5002C */ sw $s5, 0x2c($sp) -/* 0BCB90 800BBF90 AFB40028 */ sw $s4, 0x28($sp) -/* 0BCB94 800BBF94 AFB30024 */ sw $s3, 0x24($sp) -/* 0BCB98 800BBF98 AFB20020 */ sw $s2, 0x20($sp) -/* 0BCB9C 800BBF9C AFB1001C */ sw $s1, 0x1c($sp) -/* 0BCBA0 800BBFA0 AFB00018 */ sw $s0, 0x18($sp) -/* 0BCBA4 800BBFA4 8C8E0004 */ lw $t6, 4($a0) -/* 0BCBA8 800BBFA8 3C0F8013 */ lui $t7, %hi(D_80129FC8) # $t7, 0x8013 -/* 0BCBAC 800BBFAC 3C188013 */ lui $t8, %hi(D_80129FF0) # $t8, 0x8013 -/* 0BCBB0 800BBFB0 8DEF9FC8 */ lw $t7, %lo(D_80129FC8)($t7) -/* 0BCBB4 800BBFB4 8F189FF0 */ lw $t8, %lo(D_80129FF0)($t8) -/* 0BCBB8 800BBFB8 AFAE0040 */ sw $t6, 0x40($sp) -/* 0BCBBC 800BBFBC 8C940008 */ lw $s4, 8($a0) -/* 0BCBC0 800BBFC0 00809825 */ move $s3, $a0 -/* 0BCBC4 800BBFC4 13000003 */ beqz $t8, .L800BBFD4 -/* 0BCBC8 800BBFC8 AFAF0044 */ sw $t7, 0x44($sp) -/* 0BCBCC 800BBFCC 000FC840 */ sll $t9, $t7, 1 -/* 0BCBD0 800BBFD0 AFB90044 */ sw $t9, 0x44($sp) -.L800BBFD4: -/* 0BCBD4 800BBFD4 868E0000 */ lh $t6, ($s4) -/* 0BCBD8 800BBFD8 3C038013 */ lui $v1, %hi(D_8012A0C0) # $v1, 0x8013 -/* 0BCBDC 800BBFDC 2463A0C0 */ addiu $v1, %lo(D_8012A0C0) # addiu $v1, $v1, -0x5f40 -/* 0BCBE0 800BBFE0 AC6E0000 */ sw $t6, ($v1) -/* 0BCBE4 800BBFE4 86980006 */ lh $t8, 6($s4) -/* 0BCBE8 800BBFE8 3C048013 */ lui $a0, %hi(D_8012A0C8) # $a0, 0x8013 -/* 0BCBEC 800BBFEC 2484A0C8 */ addiu $a0, %lo(D_8012A0C8) # addiu $a0, $a0, -0x5f38 -/* 0BCBF0 800BBFF0 AC980000 */ sw $t8, ($a0) -/* 0BCBF4 800BBFF4 868F0004 */ lh $t7, 4($s4) -/* 0BCBF8 800BBFF8 3C068013 */ lui $a2, %hi(D_8012A0C4) # $a2, 0x8013 -/* 0BCBFC 800BBFFC 24C6A0C4 */ addiu $a2, %lo(D_8012A0C4) # addiu $a2, $a2, -0x5f3c -/* 0BCC00 800BC000 ACCF0000 */ sw $t7, ($a2) -/* 0BCC04 800BC004 8699000A */ lh $t9, 0xa($s4) -/* 0BCC08 800BC008 3C098013 */ lui $t1, %hi(D_8012A0CC) # $t1, 0x8013 -/* 0BCC0C 800BC00C 2529A0CC */ addiu $t1, %lo(D_8012A0CC) # addiu $t1, $t1, -0x5f34 -/* 0BCC10 800BC010 AD390000 */ sw $t9, ($t1) -/* 0BCC14 800BC014 866E001A */ lh $t6, 0x1a($s3) -/* 0BCC18 800BC018 241F0001 */ li $ra, 1 -/* 0BCC1C 800BC01C 29C10002 */ slti $at, $t6, 2 -/* 0BCC20 800BC020 14200022 */ bnez $at, .L800BC0AC -/* 0BCC24 800BC024 3C168013 */ lui $s6, %hi(D_8012A0D0) # $s6, 0x8013 -/* 0BCC28 800BC028 2690000C */ addiu $s0, $s4, 0xc -.L800BC02C: -/* 0BCC2C 800BC02C 86020000 */ lh $v0, ($s0) -/* 0BCC30 800BC030 8C780000 */ lw $t8, ($v1) -/* 0BCC34 800BC034 8C870000 */ lw $a3, ($a0) -/* 0BCC38 800BC038 8CC50000 */ lw $a1, ($a2) -/* 0BCC3C 800BC03C 8D280000 */ lw $t0, ($t1) -/* 0BCC40 800BC040 0058082A */ slt $at, $v0, $t8 -/* 0BCC44 800BC044 10200002 */ beqz $at, .L800BC050 -/* 0BCC48 800BC048 00000000 */ nop -/* 0BCC4C 800BC04C AC620000 */ sw $v0, ($v1) -.L800BC050: -/* 0BCC50 800BC050 86020006 */ lh $v0, 6($s0) -/* 0BCC54 800BC054 00000000 */ nop -/* 0BCC58 800BC058 00E2082A */ slt $at, $a3, $v0 -/* 0BCC5C 800BC05C 10200002 */ beqz $at, .L800BC068 -/* 0BCC60 800BC060 00000000 */ nop -/* 0BCC64 800BC064 AC820000 */ sw $v0, ($a0) -.L800BC068: -/* 0BCC68 800BC068 86020004 */ lh $v0, 4($s0) -/* 0BCC6C 800BC06C 00000000 */ nop -/* 0BCC70 800BC070 0045082A */ slt $at, $v0, $a1 -/* 0BCC74 800BC074 10200002 */ beqz $at, .L800BC080 -/* 0BCC78 800BC078 00000000 */ nop -/* 0BCC7C 800BC07C ACC20000 */ sw $v0, ($a2) -.L800BC080: -/* 0BCC80 800BC080 8602000A */ lh $v0, 0xa($s0) -/* 0BCC84 800BC084 00000000 */ nop -/* 0BCC88 800BC088 0102082A */ slt $at, $t0, $v0 -/* 0BCC8C 800BC08C 10200002 */ beqz $at, .L800BC098 -/* 0BCC90 800BC090 00000000 */ nop -/* 0BCC94 800BC094 AD220000 */ sw $v0, ($t1) -.L800BC098: -/* 0BCC98 800BC098 866F001A */ lh $t7, 0x1a($s3) -/* 0BCC9C 800BC09C 27FF0001 */ addiu $ra, $ra, 1 -/* 0BCCA0 800BC0A0 03EF082A */ slt $at, $ra, $t7 -/* 0BCCA4 800BC0A4 1420FFE1 */ bnez $at, .L800BC02C -/* 0BCCA8 800BC0A8 2610000C */ addiu $s0, $s0, 0xc -.L800BC0AC: -/* 0BCCAC 800BC0AC 3C198013 */ lui $t9, %hi(D_8012A0B0) # $t9, 0x8013 -/* 0BCCB0 800BC0B0 8F24A0B0 */ lw $a0, %lo(D_8012A0B0)($t9) -/* 0BCCB4 800BC0B4 26D6A0D0 */ addiu $s6, %lo(D_8012A0D0) # addiu $s6, $s6, -0x5f30 -/* 0BCCB8 800BC0B8 AEC40000 */ sw $a0, ($s6) -/* 0BCCBC 800BC0BC 8C620000 */ lw $v0, ($v1) -/* 0BCCC0 800BC0C0 3C078013 */ lui $a3, %hi(D_8012A0C8) # $a3, 0x8013 -/* 0BCCC4 800BC0C4 3C058013 */ lui $a1, %hi(D_8012A0C4) # $a1, 0x8013 -/* 0BCCC8 800BC0C8 3C088013 */ lui $t0, %hi(D_8012A0CC) # $t0, 0x8013 -/* 0BCCCC 800BC0CC 8D08A0CC */ lw $t0, %lo(D_8012A0CC)($t0) -/* 0BCCD0 800BC0D0 8CA5A0C4 */ lw $a1, %lo(D_8012A0C4)($a1) -/* 0BCCD4 800BC0D4 8CE7A0C8 */ lw $a3, %lo(D_8012A0C8)($a3) -/* 0BCCD8 800BC0D8 0044082A */ slt $at, $v0, $a0 -/* 0BCCDC 800BC0DC 10200009 */ beqz $at, .L800BC104 -/* 0BCCE0 800BC0E0 3C158013 */ lui $s5, %hi(D_8012A0D4) # $s5, 0x8013 -/* 0BCCE4 800BC0E4 3C068013 */ lui $a2, %hi(D_8012A0A8) # $a2, 0x8013 -/* 0BCCE8 800BC0E8 8CC6A0A8 */ lw $a2, %lo(D_8012A0A8)($a2) -/* 0BCCEC 800BC0EC 00000000 */ nop -.L800BC0F0: -/* 0BCCF0 800BC0F0 00867023 */ subu $t6, $a0, $a2 -/* 0BCCF4 800BC0F4 004E082A */ slt $at, $v0, $t6 -/* 0BCCF8 800BC0F8 AECE0000 */ sw $t6, ($s6) -/* 0BCCFC 800BC0FC 1420FFFC */ bnez $at, .L800BC0F0 -/* 0BCD00 800BC100 01C02025 */ move $a0, $t6 -.L800BC104: -/* 0BCD04 800BC104 3C188013 */ lui $t8, %hi(D_8012A0B4) # $t8, 0x8013 -/* 0BCD08 800BC108 8F18A0B4 */ lw $t8, %lo(D_8012A0B4)($t8) -/* 0BCD0C 800BC10C 26B5A0D4 */ addiu $s5, %lo(D_8012A0D4) # addiu $s5, $s5, -0x5f2c -/* 0BCD10 800BC110 3C068013 */ lui $a2, %hi(D_8012A0A8) # $a2, 0x8013 -/* 0BCD14 800BC114 AEB80000 */ sw $t8, ($s5) -/* 0BCD18 800BC118 8CC6A0A8 */ lw $a2, %lo(D_8012A0A8)($a2) -/* 0BCD1C 800BC11C 00B8082A */ slt $at, $a1, $t8 -/* 0BCD20 800BC120 10200009 */ beqz $at, .L800BC148 -/* 0BCD24 800BC124 03001025 */ move $v0, $t8 -/* 0BCD28 800BC128 3C038013 */ lui $v1, %hi(D_8012A0AC) # $v1, 0x8013 -/* 0BCD2C 800BC12C 8C63A0AC */ lw $v1, %lo(D_8012A0AC)($v1) -/* 0BCD30 800BC130 00000000 */ nop -.L800BC134: -/* 0BCD34 800BC134 00437823 */ subu $t7, $v0, $v1 -/* 0BCD38 800BC138 00AF082A */ slt $at, $a1, $t7 -/* 0BCD3C 800BC13C AEAF0000 */ sw $t7, ($s5) -/* 0BCD40 800BC140 1420FFFC */ bnez $at, .L800BC134 -/* 0BCD44 800BC144 01E01025 */ move $v0, $t7 -.L800BC148: -/* 0BCD48 800BC148 00E4C823 */ subu $t9, $a3, $a0 -/* 0BCD4C 800BC14C 0326001A */ div $zero, $t9, $a2 -/* 0BCD50 800BC150 3C1E8013 */ lui $fp, %hi(D_8012A0AC) # $fp, 0x8013 -/* 0BCD54 800BC154 27DEA0AC */ addiu $fp, %lo(D_8012A0AC) # addiu $fp, $fp, -0x5f54 -/* 0BCD58 800BC158 01027823 */ subu $t7, $t0, $v0 -/* 0BCD5C 800BC15C 3C178013 */ lui $s7, %hi(D_8012A0D8) # $s7, 0x8013 -/* 0BCD60 800BC160 26F7A0D8 */ addiu $s7, %lo(D_8012A0D8) # addiu $s7, $s7, -0x5f28 -/* 0BCD64 800BC164 3C12800E */ lui $s2, %hi(D_800E30D4) # $s2, 0x800e -/* 0BCD68 800BC168 265230D4 */ addiu $s2, %lo(D_800E30D4) # addiu $s2, $s2, 0x30d4 -/* 0BCD6C 800BC16C 8E450000 */ lw $a1, ($s2) -/* 0BCD70 800BC170 3C10800E */ lui $s0, %hi(D_800E318C) # $s0, 0x800e -/* 0BCD74 800BC174 3C118013 */ lui $s1, %hi(D_8012A0DC) # $s1, 0x8013 -/* 0BCD78 800BC178 2631A0DC */ addiu $s1, %lo(D_8012A0DC) # addiu $s1, $s1, -0x5f24 -/* 0BCD7C 800BC17C 2610318C */ addiu $s0, %lo(D_800E318C) # addiu $s0, $s0, 0x318c -/* 0BCD80 800BC180 14C00002 */ bnez $a2, .L800BC18C -/* 0BCD84 800BC184 00000000 */ nop -/* 0BCD88 800BC188 0007000D */ break 7 -.L800BC18C: -/* 0BCD8C 800BC18C 2401FFFF */ li $at, -1 -/* 0BCD90 800BC190 14C10004 */ bne $a2, $at, .L800BC1A4 -/* 0BCD94 800BC194 3C018000 */ lui $at, 0x8000 -/* 0BCD98 800BC198 17210002 */ bne $t9, $at, .L800BC1A4 -/* 0BCD9C 800BC19C 00000000 */ nop -/* 0BCDA0 800BC1A0 0006000D */ break 6 -.L800BC1A4: -/* 0BCDA4 800BC1A4 8FD90000 */ lw $t9, ($fp) -/* 0BCDA8 800BC1A8 00007012 */ mflo $t6 -/* 0BCDAC 800BC1AC 25D80001 */ addiu $t8, $t6, 1 -/* 0BCDB0 800BC1B0 AEF80000 */ sw $t8, ($s7) -/* 0BCDB4 800BC1B4 01F9001A */ div $zero, $t7, $t9 -/* 0BCDB8 800BC1B8 8EE30000 */ lw $v1, ($s7) -/* 0BCDBC 800BC1BC 17200002 */ bnez $t9, .L800BC1C8 -/* 0BCDC0 800BC1C0 00000000 */ nop -/* 0BCDC4 800BC1C4 0007000D */ break 7 -.L800BC1C8: -/* 0BCDC8 800BC1C8 2401FFFF */ li $at, -1 -/* 0BCDCC 800BC1CC 17210004 */ bne $t9, $at, .L800BC1E0 -/* 0BCDD0 800BC1D0 3C018000 */ lui $at, 0x8000 -/* 0BCDD4 800BC1D4 15E10002 */ bne $t7, $at, .L800BC1E0 -/* 0BCDD8 800BC1D8 00000000 */ nop -/* 0BCDDC 800BC1DC 0006000D */ break 6 -.L800BC1E0: -/* 0BCDE0 800BC1E0 8FAF0044 */ lw $t7, 0x44($sp) -/* 0BCDE4 800BC1E4 00007012 */ mflo $t6 -/* 0BCDE8 800BC1E8 25D80001 */ addiu $t8, $t6, 1 -/* 0BCDEC 800BC1EC AE380000 */ sw $t8, ($s1) -/* 0BCDF0 800BC1F0 01E30019 */ multu $t7, $v1 -/* 0BCDF4 800BC1F4 0000C812 */ mflo $t9 -/* 0BCDF8 800BC1F8 272E0001 */ addiu $t6, $t9, 1 -/* 0BCDFC 800BC1FC 10A00005 */ beqz $a1, .L800BC214 -/* 0BCE00 800BC200 AE0E0000 */ sw $t6, ($s0) -/* 0BCE04 800BC204 0C01C450 */ jal func_80071140 -/* 0BCE08 800BC208 00A02025 */ move $a0, $a1 -/* 0BCE0C 800BC20C 8EE30000 */ lw $v1, ($s7) -/* 0BCE10 800BC210 00000000 */ nop -.L800BC214: -/* 0BCE14 800BC214 8E380000 */ lw $t8, ($s1) -/* 0BCE18 800BC218 3C0500FF */ lui $a1, (0x00FFFFFF >> 16) # lui $a1, 0xff -/* 0BCE1C 800BC21C 00780019 */ multu $v1, $t8 -/* 0BCE20 800BC220 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 0BCE24 800BC224 00002012 */ mflo $a0 -/* 0BCE28 800BC228 00047880 */ sll $t7, $a0, 2 -/* 0BCE2C 800BC22C 0C01C327 */ jal func_80070C9C -/* 0BCE30 800BC230 01E02025 */ move $a0, $t7 -/* 0BCE34 800BC234 AE420000 */ sw $v0, ($s2) -/* 0BCE38 800BC238 3C04800E */ lui $a0, %hi(D_800E30D8) # $a0, 0x800e -/* 0BCE3C 800BC23C 8C8430D8 */ lw $a0, %lo(D_800E30D8)($a0) -/* 0BCE40 800BC240 00000000 */ nop -/* 0BCE44 800BC244 10800003 */ beqz $a0, .L800BC254 -/* 0BCE48 800BC248 00000000 */ nop -/* 0BCE4C 800BC24C 0C01C450 */ jal func_80071140 -/* 0BCE50 800BC250 00000000 */ nop -.L800BC254: -/* 0BCE54 800BC254 8679001A */ lh $t9, 0x1a($s3) -/* 0BCE58 800BC258 8E180000 */ lw $t8, ($s0) -/* 0BCE5C 800BC25C 001970C0 */ sll $t6, $t9, 3 -/* 0BCE60 800BC260 01D97023 */ subu $t6, $t6, $t9 -/* 0BCE64 800BC264 000E7080 */ sll $t6, $t6, 2 -/* 0BCE68 800BC268 001878C0 */ sll $t7, $t8, 3 -/* 0BCE6C 800BC26C 01CF2021 */ addu $a0, $t6, $t7 -/* 0BCE70 800BC270 3C0500FF */ lui $a1, (0x00FFFFFF >> 16) # lui $a1, 0xff -/* 0BCE74 800BC274 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 0BCE78 800BC278 0C01C327 */ jal func_80070C9C -/* 0BCE7C 800BC27C 24840880 */ addiu $a0, $a0, 0x880 -/* 0BCE80 800BC280 3C01800E */ lui $at, %hi(D_800E30D8) # $at, 0x800e -/* 0BCE84 800BC284 AC2230D8 */ sw $v0, %lo(D_800E30D8)($at) -/* 0BCE88 800BC288 8678001A */ lh $t8, 0x1a($s3) -/* 0BCE8C 800BC28C 3C19800E */ lui $t9, %hi(D_800E30D8) # $t9, 0x800e -/* 0BCE90 800BC290 001870C0 */ sll $t6, $t8, 3 -/* 0BCE94 800BC294 8F3930D8 */ lw $t9, %lo(D_800E30D8)($t9) -/* 0BCE98 800BC298 01D87023 */ subu $t6, $t6, $t8 -/* 0BCE9C 800BC29C 000E7080 */ sll $t6, $t6, 2 -/* 0BCEA0 800BC2A0 3C05800E */ lui $a1, %hi(D_800E3190) # $a1, 0x800e -/* 0BCEA4 800BC2A4 032E7821 */ addu $t7, $t9, $t6 -/* 0BCEA8 800BC2A8 24A53190 */ addiu $a1, %lo(D_800E3190) # addiu $a1, $a1, 0x3190 -/* 0BCEAC 800BC2AC 3C04800E */ lui $a0, %hi(D_800E3194) # $a0, 0x800e -/* 0BCEB0 800BC2B0 25F90800 */ addiu $t9, $t7, 0x800 -/* 0BCEB4 800BC2B4 8E180000 */ lw $t8, ($s0) -/* 0BCEB8 800BC2B8 24843194 */ addiu $a0, %lo(D_800E3194) # addiu $a0, $a0, 0x3194 -/* 0BCEBC 800BC2BC ACAF0000 */ sw $t7, ($a1) -/* 0BCEC0 800BC2C0 3C03800E */ lui $v1, %hi(D_800E3184) # $v1, 0x800e -/* 0BCEC4 800BC2C4 AC990000 */ sw $t9, ($a0) -/* 0BCEC8 800BC2C8 272F0080 */ addiu $t7, $t9, 0x80 -/* 0BCECC 800BC2CC 24633184 */ addiu $v1, %lo(D_800E3184) # addiu $v1, $v1, 0x3184 -/* 0BCED0 800BC2D0 0018C8C0 */ sll $t9, $t8, 3 -/* 0BCED4 800BC2D4 AC6F0000 */ sw $t7, ($v1) -/* 0BCED8 800BC2D8 1B20000C */ blez $t9, .L800BC30C -/* 0BCEDC 800BC2DC 0000F825 */ move $ra, $zero -/* 0BCEE0 800BC2E0 240200FF */ li $v0, 255 -.L800BC2E4: -/* 0BCEE4 800BC2E4 8C6E0000 */ lw $t6, ($v1) -/* 0BCEE8 800BC2E8 00000000 */ nop -/* 0BCEEC 800BC2EC 01DF7821 */ addu $t7, $t6, $ra -/* 0BCEF0 800BC2F0 A1E20000 */ sb $v0, ($t7) -/* 0BCEF4 800BC2F4 8E180000 */ lw $t8, ($s0) -/* 0BCEF8 800BC2F8 27FF0001 */ addiu $ra, $ra, 1 -/* 0BCEFC 800BC2FC 0018C8C0 */ sll $t9, $t8, 3 -/* 0BCF00 800BC300 03F9082A */ slt $at, $ra, $t9 -/* 0BCF04 800BC304 1420FFF7 */ bnez $at, .L800BC2E4 -/* 0BCF08 800BC308 00000000 */ nop -.L800BC30C: -/* 0BCF0C 800BC30C 00001025 */ move $v0, $zero -.L800BC310: -/* 0BCF10 800BC310 8C8E0000 */ lw $t6, ($a0) -/* 0BCF14 800BC314 00000000 */ nop -/* 0BCF18 800BC318 01C27821 */ addu $t7, $t6, $v0 -/* 0BCF1C 800BC31C 24420004 */ addiu $v0, $v0, 4 -/* 0BCF20 800BC320 28410080 */ slti $at, $v0, 0x80 -/* 0BCF24 800BC324 1420FFFA */ bnez $at, .L800BC310 -/* 0BCF28 800BC328 ADE00000 */ sw $zero, ($t7) -/* 0BCF2C 800BC32C 3C01800E */ lui $at, %hi(D_800E3188) # $at, 0x800e -/* 0BCF30 800BC330 AC203188 */ sw $zero, %lo(D_800E3188)($at) -/* 0BCF34 800BC334 8E390000 */ lw $t9, ($s1) -/* 0BCF38 800BC338 8EF80000 */ lw $t8, ($s7) -/* 0BCF3C 800BC33C 02808025 */ move $s0, $s4 -/* 0BCF40 800BC340 03190019 */ multu $t8, $t9 -/* 0BCF44 800BC344 3C038013 */ lui $v1, %hi(D_8012A1E8) # $v1, 0x8013 -/* 0BCF48 800BC348 3C148013 */ lui $s4, %hi(D_8012A0A8) # $s4, 0x8013 -/* 0BCF4C 800BC34C 0000F825 */ move $ra, $zero -/* 0BCF50 800BC350 00001025 */ move $v0, $zero -/* 0BCF54 800BC354 2463A1E8 */ addiu $v1, %lo(D_8012A1E8) # addiu $v1, $v1, -0x5e18 -/* 0BCF58 800BC358 2694A0A8 */ addiu $s4, %lo(D_8012A0A8) # addiu $s4, $s4, -0x5f58 -/* 0BCF5C 800BC35C 240C000A */ li $t4, 10 -/* 0BCF60 800BC360 3C0B0040 */ lui $t3, 0x40 -/* 0BCF64 800BC364 24050080 */ li $a1, 128 -/* 0BCF68 800BC368 00007012 */ mflo $t6 -/* 0BCF6C 800BC36C 19C0000D */ blez $t6, .L800BC3A4 -/* 0BCF70 800BC370 00000000 */ nop -.L800BC374: -/* 0BCF74 800BC374 8E4F0000 */ lw $t7, ($s2) -/* 0BCF78 800BC378 27FF0001 */ addiu $ra, $ra, 1 -/* 0BCF7C 800BC37C 01E2C021 */ addu $t8, $t7, $v0 -/* 0BCF80 800BC380 AF000000 */ sw $zero, ($t8) -/* 0BCF84 800BC384 8E2E0000 */ lw $t6, ($s1) -/* 0BCF88 800BC388 8EF90000 */ lw $t9, ($s7) -/* 0BCF8C 800BC38C 24420004 */ addiu $v0, $v0, 4 -/* 0BCF90 800BC390 032E0019 */ multu $t9, $t6 -/* 0BCF94 800BC394 00007812 */ mflo $t7 -/* 0BCF98 800BC398 03EF082A */ slt $at, $ra, $t7 -/* 0BCF9C 800BC39C 1420FFF5 */ bnez $at, .L800BC374 -/* 0BCFA0 800BC3A0 00000000 */ nop -.L800BC3A4: -/* 0BCFA4 800BC3A4 3C028013 */ lui $v0, %hi(D_8012A0E8) # $v0, 0x8013 -/* 0BCFA8 800BC3A8 2442A0E8 */ addiu $v0, %lo(D_8012A0E8) # addiu $v0, $v0, -0x5f18 -.L800BC3AC: -/* 0BCFAC 800BC3AC 24420004 */ addiu $v0, $v0, 4 -/* 0BCFB0 800BC3B0 0043082B */ sltu $at, $v0, $v1 -/* 0BCFB4 800BC3B4 1420FFFD */ bnez $at, .L800BC3AC -/* 0BCFB8 800BC3B8 AC40FFFC */ sw $zero, -4($v0) -/* 0BCFBC 800BC3BC 8679001A */ lh $t9, 0x1a($s3) -/* 0BCFC0 800BC3C0 3C028013 */ lui $v0, %hi(D_8012A0E0) # $v0, 0x8013 -/* 0BCFC4 800BC3C4 2442A0E0 */ addiu $v0, %lo(D_8012A0E0) # addiu $v0, $v0, -0x5f20 -/* 0BCFC8 800BC3C8 0000F825 */ move $ra, $zero -/* 0BCFCC 800BC3CC 1B2000B2 */ blez $t9, .L800BC698 -/* 0BCFD0 800BC3D0 AC590000 */ sw $t9, ($v0) -/* 0BCFD4 800BC3D4 8FAE0040 */ lw $t6, 0x40($sp) -/* 0BCFD8 800BC3D8 00009025 */ move $s2, $zero -/* 0BCFDC 800BC3DC 01C04025 */ move $t0, $t6 -/* 0BCFE0 800BC3E0 01C09825 */ move $s3, $t6 -.L800BC3E4: -/* 0BCFE4 800BC3E4 8EC40000 */ lw $a0, ($s6) -/* 0BCFE8 800BC3E8 860F0000 */ lh $t7, ($s0) -/* 0BCFEC 800BC3EC 8E860000 */ lw $a2, ($s4) -/* 0BCFF0 800BC3F0 01E44823 */ subu $t1, $t7, $a0 -/* 0BCFF4 800BC3F4 25290008 */ addiu $t1, $t1, 8 -/* 0BCFF8 800BC3F8 0126001A */ div $zero, $t1, $a2 -/* 0BCFFC 800BC3FC 8EA20000 */ lw $v0, ($s5) -/* 0BD000 800BC400 86180004 */ lh $t8, 4($s0) -/* 0BD004 800BC404 8FC30000 */ lw $v1, ($fp) -/* 0BD008 800BC408 03025023 */ subu $t2, $t8, $v0 -/* 0BD00C 800BC40C 254A0008 */ addiu $t2, $t2, 8 -/* 0BD010 800BC410 14C00002 */ bnez $a2, .L800BC41C -/* 0BD014 800BC414 00000000 */ nop -/* 0BD018 800BC418 0007000D */ break 7 -.L800BC41C: -/* 0BD01C 800BC41C 2401FFFF */ li $at, -1 -/* 0BD020 800BC420 14C10004 */ bne $a2, $at, .L800BC434 -/* 0BD024 800BC424 3C018000 */ lui $at, 0x8000 -/* 0BD028 800BC428 15210002 */ bne $t1, $at, .L800BC434 -/* 0BD02C 800BC42C 00000000 */ nop -/* 0BD030 800BC430 0006000D */ break 6 -.L800BC434: -/* 0BD034 800BC434 AFA00058 */ sw $zero, 0x58($sp) -/* 0BD038 800BC438 850D0020 */ lh $t5, 0x20($t0) -/* 0BD03C 800BC43C 27FF0001 */ addiu $ra, $ra, 1 -/* 0BD040 800BC440 2610000C */ addiu $s0, $s0, 0xc -/* 0BD044 800BC444 00003825 */ move $a3, $zero -/* 0BD048 800BC448 0000C812 */ mflo $t9 -/* 0BD04C 800BC44C 00000000 */ nop -/* 0BD050 800BC450 00000000 */ nop -/* 0BD054 800BC454 03260019 */ multu $t9, $a2 -/* 0BD058 800BC458 00007012 */ mflo $t6 -/* 0BD05C 800BC45C 01C44821 */ addu $t1, $t6, $a0 -/* 0BD060 800BC460 00000000 */ nop -/* 0BD064 800BC464 0143001A */ div $zero, $t2, $v1 -/* 0BD068 800BC468 14600002 */ bnez $v1, .L800BC474 -/* 0BD06C 800BC46C 00000000 */ nop -/* 0BD070 800BC470 0007000D */ break 7 -.L800BC474: -/* 0BD074 800BC474 2401FFFF */ li $at, -1 -/* 0BD078 800BC478 14610004 */ bne $v1, $at, .L800BC48C -/* 0BD07C 800BC47C 3C018000 */ lui $at, 0x8000 -/* 0BD080 800BC480 15410002 */ bne $t2, $at, .L800BC48C -/* 0BD084 800BC484 00000000 */ nop -/* 0BD088 800BC488 0006000D */ break 6 -.L800BC48C: -/* 0BD08C 800BC48C 00007812 */ mflo $t7 -/* 0BD090 800BC490 00000000 */ nop -/* 0BD094 800BC494 00000000 */ nop -/* 0BD098 800BC498 01E30019 */ multu $t7, $v1 -/* 0BD09C 800BC49C 0000C012 */ mflo $t8 -/* 0BD0A0 800BC4A0 03025021 */ addu $t2, $t8, $v0 -/* 0BD0A4 800BC4A4 19A00017 */ blez $t5, .L800BC504 -/* 0BD0A8 800BC4A8 00000000 */ nop -/* 0BD0AC 800BC4AC 000D3080 */ sll $a2, $t5, 2 -/* 0BD0B0 800BC4B0 00CD3023 */ subu $a2, $a2, $t5 -/* 0BD0B4 800BC4B4 8D02000C */ lw $v0, 0xc($t0) -/* 0BD0B8 800BC4B8 00063080 */ sll $a2, $a2, 2 -/* 0BD0BC 800BC4BC 00001825 */ move $v1, $zero -.L800BC4C0: -/* 0BD0C0 800BC4C0 8C440008 */ lw $a0, 8($v0) -/* 0BD0C4 800BC4C4 2463000C */ addiu $v1, $v1, 0xc -/* 0BD0C8 800BC4C8 30992000 */ andi $t9, $a0, 0x2000 -/* 0BD0CC 800BC4CC 1320000B */ beqz $t9, .L800BC4FC -/* 0BD0D0 800BC4D0 0066082A */ slt $at, $v1, $a2 -/* 0BD0D4 800BC4D4 008B7024 */ and $t6, $a0, $t3 -/* 0BD0D8 800BC4D8 11C00008 */ beqz $t6, .L800BC4FC -/* 0BD0DC 800BC4DC 00000000 */ nop -/* 0BD0E0 800BC4E0 84580002 */ lh $t8, 2($v0) -/* 0BD0E4 800BC4E4 8D0F0000 */ lw $t7, ($t0) -/* 0BD0E8 800BC4E8 030C0019 */ multu $t8, $t4 -/* 0BD0EC 800BC4EC 0000C812 */ mflo $t9 -/* 0BD0F0 800BC4F0 01F97021 */ addu $t6, $t7, $t9 -/* 0BD0F4 800BC4F4 85C70002 */ lh $a3, 2($t6) -/* 0BD0F8 800BC4F8 00000000 */ nop -.L800BC4FC: -/* 0BD0FC 800BC4FC 1420FFF0 */ bnez $at, .L800BC4C0 -/* 0BD100 800BC500 2442000C */ addiu $v0, $v0, 0xc -.L800BC504: -/* 0BD104 800BC504 3C18800E */ lui $t8, %hi(D_800E30D8) # $t8, 0x800e -/* 0BD108 800BC508 8F1830D8 */ lw $t8, %lo(D_800E30D8)($t8) -/* 0BD10C 800BC50C 25080044 */ addiu $t0, $t0, 0x44 -/* 0BD110 800BC510 02582021 */ addu $a0, $s2, $t8 -/* 0BD114 800BC514 AC930000 */ sw $s3, ($a0) -/* 0BD118 800BC518 A4890004 */ sh $t1, 4($a0) -/* 0BD11C 800BC51C A4870006 */ sh $a3, 6($a0) -/* 0BD120 800BC520 A48A0008 */ sh $t2, 8($a0) -/* 0BD124 800BC524 8ECF0000 */ lw $t7, ($s6) -/* 0BD128 800BC528 8E8E0000 */ lw $t6, ($s4) -/* 0BD12C 800BC52C 012FC823 */ subu $t9, $t1, $t7 -/* 0BD130 800BC530 032E001A */ div $zero, $t9, $t6 -/* 0BD134 800BC534 15C00002 */ bnez $t6, .L800BC540 -/* 0BD138 800BC538 00000000 */ nop -/* 0BD13C 800BC53C 0007000D */ break 7 -.L800BC540: -/* 0BD140 800BC540 2401FFFF */ li $at, -1 -/* 0BD144 800BC544 15C10004 */ bne $t6, $at, .L800BC558 -/* 0BD148 800BC548 3C018000 */ lui $at, 0x8000 -/* 0BD14C 800BC54C 17210002 */ bne $t9, $at, .L800BC558 -/* 0BD150 800BC550 00000000 */ nop -/* 0BD154 800BC554 0006000D */ break 6 -.L800BC558: -/* 0BD158 800BC558 0000C012 */ mflo $t8 -/* 0BD15C 800BC55C A098000A */ sb $t8, 0xa($a0) -/* 0BD160 800BC560 8EAF0000 */ lw $t7, ($s5) -/* 0BD164 800BC564 8FCE0000 */ lw $t6, ($fp) -/* 0BD168 800BC568 014FC823 */ subu $t9, $t2, $t7 -/* 0BD16C 800BC56C 032E001A */ div $zero, $t9, $t6 -/* 0BD170 800BC570 9086000A */ lbu $a2, 0xa($a0) -/* 0BD174 800BC574 15C00002 */ bnez $t6, .L800BC580 -/* 0BD178 800BC578 00000000 */ nop -/* 0BD17C 800BC57C 0007000D */ break 7 -.L800BC580: -/* 0BD180 800BC580 2401FFFF */ li $at, -1 -/* 0BD184 800BC584 15C10004 */ bne $t6, $at, .L800BC598 -/* 0BD188 800BC588 3C018000 */ lui $at, 0x8000 -/* 0BD18C 800BC58C 17210002 */ bne $t9, $at, .L800BC598 -/* 0BD190 800BC590 00000000 */ nop -/* 0BD194 800BC594 0006000D */ break 6 -.L800BC598: -/* 0BD198 800BC598 0000C012 */ mflo $t8 -/* 0BD19C 800BC59C A098000B */ sb $t8, 0xb($a0) -/* 0BD1A0 800BC5A0 8EEF0000 */ lw $t7, ($s7) -/* 0BD1A4 800BC5A4 331100FF */ andi $s1, $t8, 0xff -/* 0BD1A8 800BC5A8 022F0019 */ multu $s1, $t7 -/* 0BD1AC 800BC5AC A4800012 */ sh $zero, 0x12($a0) -/* 0BD1B0 800BC5B0 A4800010 */ sh $zero, 0x10($a0) -/* 0BD1B4 800BC5B4 02206825 */ move $t5, $s1 -/* 0BD1B8 800BC5B8 0000C812 */ mflo $t9 -/* 0BD1BC 800BC5BC 00D97021 */ addu $t6, $a2, $t9 -/* 0BD1C0 800BC5C0 AC8E000C */ sw $t6, 0xc($a0) -/* 0BD1C4 800BC5C4 8118FFE7 */ lb $t8, -0x19($t0) -/* 0BD1C8 800BC5C8 8FAF0044 */ lw $t7, 0x44($sp) -/* 0BD1CC 800BC5CC 13000024 */ beqz $t8, .L800BC660 -/* 0BD1D0 800BC5D0 00000000 */ nop -/* 0BD1D4 800BC5D4 00CF0019 */ multu $a2, $t7 -/* 0BD1D8 800BC5D8 3C038013 */ lui $v1, %hi(D_80129FCC) # $v1, 0x8013 -/* 0BD1DC 800BC5DC 8C639FCC */ lw $v1, %lo(D_80129FCC)($v1) -/* 0BD1E0 800BC5E0 3C188013 */ lui $t8, %hi(D_8012A0E8) # $t8, 0x8013 -/* 0BD1E4 800BC5E4 2718A0E8 */ addiu $t8, %lo(D_8012A0E8) # addiu $t8, $t8, -0x5f18 -/* 0BD1E8 800BC5E8 00117080 */ sll $t6, $s1, 2 -/* 0BD1EC 800BC5EC 00001012 */ mflo $v0 -/* 0BD1F0 800BC5F0 0043082A */ slt $at, $v0, $v1 -/* 0BD1F4 800BC5F4 14200005 */ bnez $at, .L800BC60C -/* 0BD1F8 800BC5F8 00000000 */ nop -.L800BC5FC: -/* 0BD1FC 800BC5FC 00431023 */ subu $v0, $v0, $v1 -/* 0BD200 800BC600 0043082A */ slt $at, $v0, $v1 -/* 0BD204 800BC604 1020FFFD */ beqz $at, .L800BC5FC -/* 0BD208 800BC608 00000000 */ nop -.L800BC60C: -/* 0BD20C 800BC60C A4820012 */ sh $v0, 0x12($a0) -/* 0BD210 800BC610 8FB90044 */ lw $t9, 0x44($sp) -/* 0BD214 800BC614 3C038013 */ lui $v1, %hi(D_80129FCC) # $v1, 0x8013 -/* 0BD218 800BC618 01B90019 */ multu $t5, $t9 -/* 0BD21C 800BC61C 8C639FCC */ lw $v1, %lo(D_80129FCC)($v1) -/* 0BD220 800BC620 00001012 */ mflo $v0 -/* 0BD224 800BC624 0043082A */ slt $at, $v0, $v1 -/* 0BD228 800BC628 14200005 */ bnez $at, .L800BC640 -/* 0BD22C 800BC62C 00000000 */ nop -.L800BC630: -/* 0BD230 800BC630 00431023 */ subu $v0, $v0, $v1 -/* 0BD234 800BC634 0043082A */ slt $at, $v0, $v1 -/* 0BD238 800BC638 1020FFFD */ beqz $at, .L800BC630 -/* 0BD23C 800BC63C 00000000 */ nop -.L800BC640: -/* 0BD240 800BC640 01D81821 */ addu $v1, $t6, $t8 -/* 0BD244 800BC644 9099000A */ lbu $t9, 0xa($a0) -/* 0BD248 800BC648 A4820010 */ sh $v0, 0x10($a0) -/* 0BD24C 800BC64C 8C6F0000 */ lw $t7, ($v1) -/* 0BD250 800BC650 240E0001 */ li $t6, 1 -/* 0BD254 800BC654 032EC004 */ sllv $t8, $t6, $t9 -/* 0BD258 800BC658 01F87025 */ or $t6, $t7, $t8 -/* 0BD25C 800BC65C AC6E0000 */ sw $t6, ($v1) -.L800BC660: -/* 0BD260 800BC660 3C198013 */ lui $t9, %hi(D_8012A0E0) # $t9, 0x8013 -/* 0BD264 800BC664 A0850015 */ sb $a1, 0x15($a0) -/* 0BD268 800BC668 A0850019 */ sb $a1, 0x19($a0) -/* 0BD26C 800BC66C A0850016 */ sb $a1, 0x16($a0) -/* 0BD270 800BC670 A085001A */ sb $a1, 0x1a($a0) -/* 0BD274 800BC674 A0850017 */ sb $a1, 0x17($a0) -/* 0BD278 800BC678 A085001B */ sb $a1, 0x1b($a0) -/* 0BD27C 800BC67C A0850014 */ sb $a1, 0x14($a0) -/* 0BD280 800BC680 A0850018 */ sb $a1, 0x18($a0) -/* 0BD284 800BC684 8F39A0E0 */ lw $t9, %lo(D_8012A0E0)($t9) -/* 0BD288 800BC688 2652001C */ addiu $s2, $s2, 0x1c -/* 0BD28C 800BC68C 03F9082A */ slt $at, $ra, $t9 -/* 0BD290 800BC690 1420FF54 */ bnez $at, .L800BC3E4 -/* 0BD294 800BC694 26730044 */ addiu $s3, $s3, 0x44 -.L800BC698: -/* 0BD298 800BC698 8FBF003C */ lw $ra, 0x3c($sp) -/* 0BD29C 800BC69C 8FB00018 */ lw $s0, 0x18($sp) -/* 0BD2A0 800BC6A0 8FB1001C */ lw $s1, 0x1c($sp) -/* 0BD2A4 800BC6A4 8FB20020 */ lw $s2, 0x20($sp) -/* 0BD2A8 800BC6A8 8FB30024 */ lw $s3, 0x24($sp) -/* 0BD2AC 800BC6AC 8FB40028 */ lw $s4, 0x28($sp) -/* 0BD2B0 800BC6B0 8FB5002C */ lw $s5, 0x2c($sp) -/* 0BD2B4 800BC6B4 8FB60030 */ lw $s6, 0x30($sp) -/* 0BD2B8 800BC6B8 8FB70034 */ lw $s7, 0x34($sp) -/* 0BD2BC 800BC6BC 8FBE0038 */ lw $fp, 0x38($sp) -/* 0BD2C0 800BC6C0 03E00008 */ jr $ra -/* 0BD2C4 800BC6C4 27BD0060 */ addiu $sp, $sp, 0x60 - -glabel func_800BC6C8 -/* 0BD2C8 800BC6C8 3C0A8013 */ lui $t2, %hi(D_80129FC8) # $t2, 0x8013 -/* 0BD2CC 800BC6CC 254A9FC8 */ addiu $t2, %lo(D_80129FC8) # addiu $t2, $t2, -0x6038 -/* 0BD2D0 800BC6D0 8D460000 */ lw $a2, ($t2) -/* 0BD2D4 800BC6D4 240E4000 */ li $t6, 16384 -/* 0BD2D8 800BC6D8 01C6001A */ div $zero, $t6, $a2 -/* 0BD2DC 800BC6DC 27BDFDB8 */ addiu $sp, $sp, -0x248 -/* 0BD2E0 800BC6E0 AFB00018 */ sw $s0, 0x18($sp) -/* 0BD2E4 800BC6E4 AFBF001C */ sw $ra, 0x1c($sp) -/* 0BD2E8 800BC6E8 14C00002 */ bnez $a2, .L800BC6F4 -/* 0BD2EC 800BC6EC 00000000 */ nop -/* 0BD2F0 800BC6F0 0007000D */ break 7 -.L800BC6F4: -/* 0BD2F4 800BC6F4 2401FFFF */ li $at, -1 -/* 0BD2F8 800BC6F8 14C10004 */ bne $a2, $at, .L800BC70C -/* 0BD2FC 800BC6FC 3C018000 */ lui $at, 0x8000 -/* 0BD300 800BC700 15C10002 */ bne $t6, $at, .L800BC70C -/* 0BD304 800BC704 00000000 */ nop -/* 0BD308 800BC708 0006000D */ break 6 -.L800BC70C: -/* 0BD30C 800BC70C 00008025 */ move $s0, $zero -/* 0BD310 800BC710 00005825 */ move $t3, $zero -/* 0BD314 800BC714 00001012 */ mflo $v0 -/* 0BD318 800BC718 18C00015 */ blez $a2, .L800BC770 -/* 0BD31C 800BC71C 27A50034 */ addiu $a1, $sp, 0x34 -.L800BC720: -/* 0BD320 800BC720 00102400 */ sll $a0, $s0, 0x10 -/* 0BD324 800BC724 00047C03 */ sra $t7, $a0, 0x10 -/* 0BD328 800BC728 01E02025 */ move $a0, $t7 -/* 0BD32C 800BC72C AFA20234 */ sw $v0, 0x234($sp) -/* 0BD330 800BC730 AFA50028 */ sw $a1, 0x28($sp) -/* 0BD334 800BC734 0C01C1F1 */ jal func_800707C4 -/* 0BD338 800BC738 AFAB0244 */ sw $t3, 0x244($sp) -/* 0BD33C 800BC73C 3C0A8013 */ lui $t2, %hi(D_80129FC8) # $t2, 0x8013 -/* 0BD340 800BC740 8FAB0244 */ lw $t3, 0x244($sp) -/* 0BD344 800BC744 254A9FC8 */ addiu $t2, %lo(D_80129FC8) # addiu $t2, $t2, -0x6038 -/* 0BD348 800BC748 8D460000 */ lw $a2, ($t2) -/* 0BD34C 800BC74C 8FA50028 */ lw $a1, 0x28($sp) -/* 0BD350 800BC750 8FA20234 */ lw $v0, 0x234($sp) -/* 0BD354 800BC754 256B0001 */ addiu $t3, $t3, 1 -/* 0BD358 800BC758 0166082A */ slt $at, $t3, $a2 -/* 0BD35C 800BC75C E4A00000 */ swc1 $f0, ($a1) -/* 0BD360 800BC760 24A50004 */ addiu $a1, $a1, 4 -/* 0BD364 800BC764 1420FFEE */ bnez $at, .L800BC720 -/* 0BD368 800BC768 02028021 */ addu $s0, $s0, $v0 -/* 0BD36C 800BC76C 00005825 */ move $t3, $zero -.L800BC770: -/* 0BD370 800BC770 44802000 */ mtc1 $zero, $f4 -/* 0BD374 800BC774 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0BD378 800BC778 44810000 */ mtc1 $at, $f0 -/* 0BD37C 800BC77C 27AC0034 */ addiu $t4, $sp, 0x34 -/* 0BD380 800BC780 0006C080 */ sll $t8, $a2, 2 -/* 0BD384 800BC784 0198C821 */ addu $t9, $t4, $t8 -/* 0BD388 800BC788 E7A40034 */ swc1 $f4, 0x34($sp) -/* 0BD38C 800BC78C 00004025 */ move $t0, $zero -/* 0BD390 800BC790 04C00015 */ bltz $a2, .L800BC7E8 -/* 0BD394 800BC794 E7200000 */ swc1 $f0, ($t9) -/* 0BD398 800BC798 3C09800E */ lui $t1, %hi(D_800E304C) # $t1, 0x800e -/* 0BD39C 800BC79C 2529304C */ addiu $t1, %lo(D_800E304C) # addiu $t1, $t1, 0x304c -.L800BC7A0: -/* 0BD3A0 800BC7A0 04C0000B */ bltz $a2, .L800BC7D0 -/* 0BD3A4 800BC7A4 00001825 */ move $v1, $zero -/* 0BD3A8 800BC7A8 00081080 */ sll $v0, $t0, 2 -.L800BC7AC: -/* 0BD3AC 800BC7AC 8D2D0010 */ lw $t5, 0x10($t1) -/* 0BD3B0 800BC7B0 24630001 */ addiu $v1, $v1, 1 -/* 0BD3B4 800BC7B4 01A27021 */ addu $t6, $t5, $v0 -/* 0BD3B8 800BC7B8 E5C00000 */ swc1 $f0, ($t6) -/* 0BD3BC 800BC7BC 8D460000 */ lw $a2, ($t2) -/* 0BD3C0 800BC7C0 24420004 */ addiu $v0, $v0, 4 -/* 0BD3C4 800BC7C4 00C3082A */ slt $at, $a2, $v1 -/* 0BD3C8 800BC7C8 1020FFF8 */ beqz $at, .L800BC7AC -/* 0BD3CC 800BC7CC 25080001 */ addiu $t0, $t0, 1 -.L800BC7D0: -/* 0BD3D0 800BC7D0 256B0001 */ addiu $t3, $t3, 1 -/* 0BD3D4 800BC7D4 00CB082A */ slt $at, $a2, $t3 -/* 0BD3D8 800BC7D8 1020FFF1 */ beqz $at, .L800BC7A0 -/* 0BD3DC 800BC7DC 00000000 */ nop -/* 0BD3E0 800BC7E0 00005825 */ move $t3, $zero -/* 0BD3E4 800BC7E4 00004025 */ move $t0, $zero -.L800BC7E8: -/* 0BD3E8 800BC7E8 3C09800E */ lui $t1, %hi(D_800E304C) # $t1, 0x800e -/* 0BD3EC 800BC7EC 04C00016 */ bltz $a2, .L800BC848 -/* 0BD3F0 800BC7F0 2529304C */ addiu $t1, %lo(D_800E304C) # addiu $t1, $t1, 0x304c -.L800BC7F4: -/* 0BD3F4 800BC7F4 04C0000E */ bltz $a2, .L800BC830 -/* 0BD3F8 800BC7F8 00001825 */ move $v1, $zero -/* 0BD3FC 800BC7FC 000B7880 */ sll $t7, $t3, 2 -/* 0BD400 800BC800 018F2821 */ addu $a1, $t4, $t7 -/* 0BD404 800BC804 00081080 */ sll $v0, $t0, 2 -.L800BC808: -/* 0BD408 800BC808 8D380004 */ lw $t8, 4($t1) -/* 0BD40C 800BC80C C4A60000 */ lwc1 $f6, ($a1) -/* 0BD410 800BC810 0302C821 */ addu $t9, $t8, $v0 -/* 0BD414 800BC814 E7260000 */ swc1 $f6, ($t9) -/* 0BD418 800BC818 8D460000 */ lw $a2, ($t2) -/* 0BD41C 800BC81C 24630001 */ addiu $v1, $v1, 1 -/* 0BD420 800BC820 00C3082A */ slt $at, $a2, $v1 -/* 0BD424 800BC824 24420004 */ addiu $v0, $v0, 4 -/* 0BD428 800BC828 1020FFF7 */ beqz $at, .L800BC808 -/* 0BD42C 800BC82C 25080001 */ addiu $t0, $t0, 1 -.L800BC830: -/* 0BD430 800BC830 256B0001 */ addiu $t3, $t3, 1 -/* 0BD434 800BC834 00CB082A */ slt $at, $a2, $t3 -/* 0BD438 800BC838 1020FFEE */ beqz $at, .L800BC7F4 -/* 0BD43C 800BC83C 00000000 */ nop -/* 0BD440 800BC840 00005825 */ move $t3, $zero -/* 0BD444 800BC844 00004025 */ move $t0, $zero -.L800BC848: -/* 0BD448 800BC848 04C00016 */ bltz $a2, .L800BC8A4 -/* 0BD44C 800BC84C 00000000 */ nop -.L800BC850: -/* 0BD450 800BC850 04C0000E */ bltz $a2, .L800BC88C -/* 0BD454 800BC854 00001825 */ move $v1, $zero -/* 0BD458 800BC858 00081080 */ sll $v0, $t0, 2 -/* 0BD45C 800BC85C 27A40034 */ addiu $a0, $sp, 0x34 -.L800BC860: -/* 0BD460 800BC860 8D2D000C */ lw $t5, 0xc($t1) -/* 0BD464 800BC864 C4880000 */ lwc1 $f8, ($a0) -/* 0BD468 800BC868 01A27021 */ addu $t6, $t5, $v0 -/* 0BD46C 800BC86C E5C80000 */ swc1 $f8, ($t6) -/* 0BD470 800BC870 8D460000 */ lw $a2, ($t2) -/* 0BD474 800BC874 24630001 */ addiu $v1, $v1, 1 -/* 0BD478 800BC878 00C3082A */ slt $at, $a2, $v1 -/* 0BD47C 800BC87C 24420004 */ addiu $v0, $v0, 4 -/* 0BD480 800BC880 25080001 */ addiu $t0, $t0, 1 -/* 0BD484 800BC884 1020FFF6 */ beqz $at, .L800BC860 -/* 0BD488 800BC888 24840004 */ addiu $a0, $a0, 4 -.L800BC88C: -/* 0BD48C 800BC88C 256B0001 */ addiu $t3, $t3, 1 -/* 0BD490 800BC890 00CB082A */ slt $at, $a2, $t3 -/* 0BD494 800BC894 1020FFEE */ beqz $at, .L800BC850 -/* 0BD498 800BC898 00000000 */ nop -/* 0BD49C 800BC89C 00005825 */ move $t3, $zero -/* 0BD4A0 800BC8A0 00004025 */ move $t0, $zero -.L800BC8A4: -/* 0BD4A4 800BC8A4 04C0001A */ bltz $a2, .L800BC910 -/* 0BD4A8 800BC8A8 00000000 */ nop -.L800BC8AC: -/* 0BD4AC 800BC8AC 04C00012 */ bltz $a2, .L800BC8F8 -/* 0BD4B0 800BC8B0 00001825 */ move $v1, $zero -/* 0BD4B4 800BC8B4 00081080 */ sll $v0, $t0, 2 -/* 0BD4B8 800BC8B8 00002025 */ move $a0, $zero -.L800BC8BC: -/* 0BD4BC 800BC8BC 00067880 */ sll $t7, $a2, 2 -/* 0BD4C0 800BC8C0 018FC021 */ addu $t8, $t4, $t7 -/* 0BD4C4 800BC8C4 0004C823 */ negu $t9, $a0 -/* 0BD4C8 800BC8C8 8D2E0014 */ lw $t6, 0x14($t1) -/* 0BD4CC 800BC8CC 03196821 */ addu $t5, $t8, $t9 -/* 0BD4D0 800BC8D0 C5AA0000 */ lwc1 $f10, ($t5) -/* 0BD4D4 800BC8D4 01C27821 */ addu $t7, $t6, $v0 -/* 0BD4D8 800BC8D8 E5EA0000 */ swc1 $f10, ($t7) -/* 0BD4DC 800BC8DC 8D460000 */ lw $a2, ($t2) -/* 0BD4E0 800BC8E0 24630001 */ addiu $v1, $v1, 1 -/* 0BD4E4 800BC8E4 00C3082A */ slt $at, $a2, $v1 -/* 0BD4E8 800BC8E8 24420004 */ addiu $v0, $v0, 4 -/* 0BD4EC 800BC8EC 24840004 */ addiu $a0, $a0, 4 -/* 0BD4F0 800BC8F0 1020FFF2 */ beqz $at, .L800BC8BC -/* 0BD4F4 800BC8F4 25080001 */ addiu $t0, $t0, 1 -.L800BC8F8: -/* 0BD4F8 800BC8F8 256B0001 */ addiu $t3, $t3, 1 -/* 0BD4FC 800BC8FC 00CB082A */ slt $at, $a2, $t3 -/* 0BD500 800BC900 1020FFEA */ beqz $at, .L800BC8AC -/* 0BD504 800BC904 00000000 */ nop -/* 0BD508 800BC908 00005825 */ move $t3, $zero -/* 0BD50C 800BC90C 00004025 */ move $t0, $zero -.L800BC910: -/* 0BD510 800BC910 04C00018 */ bltz $a2, .L800BC974 -/* 0BD514 800BC914 00000000 */ nop -.L800BC918: -/* 0BD518 800BC918 04C00011 */ bltz $a2, .L800BC960 -/* 0BD51C 800BC91C 00001825 */ move $v1, $zero -/* 0BD520 800BC920 000B3880 */ sll $a3, $t3, 2 -/* 0BD524 800BC924 00081080 */ sll $v0, $t0, 2 -.L800BC928: -/* 0BD528 800BC928 0006C080 */ sll $t8, $a2, 2 -/* 0BD52C 800BC92C 0198C821 */ addu $t9, $t4, $t8 -/* 0BD530 800BC930 00076823 */ negu $t5, $a3 -/* 0BD534 800BC934 8D2F001C */ lw $t7, 0x1c($t1) -/* 0BD538 800BC938 032D7021 */ addu $t6, $t9, $t5 -/* 0BD53C 800BC93C C5D00000 */ lwc1 $f16, ($t6) -/* 0BD540 800BC940 01E2C021 */ addu $t8, $t7, $v0 -/* 0BD544 800BC944 E7100000 */ swc1 $f16, ($t8) -/* 0BD548 800BC948 8D460000 */ lw $a2, ($t2) -/* 0BD54C 800BC94C 24630001 */ addiu $v1, $v1, 1 -/* 0BD550 800BC950 00C3082A */ slt $at, $a2, $v1 -/* 0BD554 800BC954 24420004 */ addiu $v0, $v0, 4 -/* 0BD558 800BC958 1020FFF3 */ beqz $at, .L800BC928 -/* 0BD55C 800BC95C 25080001 */ addiu $t0, $t0, 1 -.L800BC960: -/* 0BD560 800BC960 256B0001 */ addiu $t3, $t3, 1 -/* 0BD564 800BC964 00CB082A */ slt $at, $a2, $t3 -/* 0BD568 800BC968 1020FFEB */ beqz $at, .L800BC918 -/* 0BD56C 800BC96C 00000000 */ nop -/* 0BD570 800BC970 00005825 */ move $t3, $zero -.L800BC974: -/* 0BD574 800BC974 04C00026 */ bltz $a2, .L800BCA10 -/* 0BD578 800BC978 00CB082A */ slt $at, $a2, $t3 -.L800BC97C: -/* 0BD57C 800BC97C 1420001F */ bnez $at, .L800BC9FC -/* 0BD580 800BC980 01601825 */ move $v1, $t3 -/* 0BD584 800BC984 000B3880 */ sll $a3, $t3, 2 -/* 0BD588 800BC988 27B90034 */ addiu $t9, $sp, 0x34 -/* 0BD58C 800BC98C 00F92821 */ addu $a1, $a3, $t9 -/* 0BD590 800BC990 00032080 */ sll $a0, $v1, 2 -/* 0BD594 800BC994 24CE0001 */ addiu $t6, $a2, 1 -.L800BC998: -/* 0BD598 800BC998 016E0019 */ multu $t3, $t6 -/* 0BD59C 800BC99C 8D2D0000 */ lw $t5, ($t1) -/* 0BD5A0 800BC9A0 C4B20000 */ lwc1 $f18, ($a1) -/* 0BD5A4 800BC9A4 00007812 */ mflo $t7 -/* 0BD5A8 800BC9A8 000FC080 */ sll $t8, $t7, 2 -/* 0BD5AC 800BC9AC 01B8C821 */ addu $t9, $t5, $t8 -/* 0BD5B0 800BC9B0 03247021 */ addu $t6, $t9, $a0 -/* 0BD5B4 800BC9B4 E5D20000 */ swc1 $f18, ($t6) -/* 0BD5B8 800BC9B8 8D4D0000 */ lw $t5, ($t2) -/* 0BD5BC 800BC9BC 8D2F0000 */ lw $t7, ($t1) -/* 0BD5C0 800BC9C0 25B80001 */ addiu $t8, $t5, 1 -/* 0BD5C4 800BC9C4 00780019 */ multu $v1, $t8 -/* 0BD5C8 800BC9C8 C4A40000 */ lwc1 $f4, ($a1) -/* 0BD5CC 800BC9CC 24630001 */ addiu $v1, $v1, 1 -/* 0BD5D0 800BC9D0 24840004 */ addiu $a0, $a0, 4 -/* 0BD5D4 800BC9D4 0000C812 */ mflo $t9 -/* 0BD5D8 800BC9D8 00197080 */ sll $t6, $t9, 2 -/* 0BD5DC 800BC9DC 01EE6821 */ addu $t5, $t7, $t6 -/* 0BD5E0 800BC9E0 01A7C021 */ addu $t8, $t5, $a3 -/* 0BD5E4 800BC9E4 E7040000 */ swc1 $f4, ($t8) -/* 0BD5E8 800BC9E8 8D460000 */ lw $a2, ($t2) -/* 0BD5EC 800BC9EC 00000000 */ nop -/* 0BD5F0 800BC9F0 00C3082A */ slt $at, $a2, $v1 -/* 0BD5F4 800BC9F4 1020FFE8 */ beqz $at, .L800BC998 -/* 0BD5F8 800BC9F8 24CE0001 */ addiu $t6, $a2, 1 -.L800BC9FC: -/* 0BD5FC 800BC9FC 256B0001 */ addiu $t3, $t3, 1 -/* 0BD600 800BCA00 00CB082A */ slt $at, $a2, $t3 -/* 0BD604 800BCA04 1020FFDD */ beqz $at, .L800BC97C -/* 0BD608 800BCA08 00CB082A */ slt $at, $a2, $t3 -/* 0BD60C 800BCA0C 00005825 */ move $t3, $zero -.L800BCA10: -/* 0BD610 800BCA10 04C0002C */ bltz $a2, .L800BCAC4 -/* 0BD614 800BCA14 00CB082A */ slt $at, $a2, $t3 -.L800BCA18: -/* 0BD618 800BCA18 14200025 */ bnez $at, .L800BCAB0 -/* 0BD61C 800BCA1C 01601825 */ move $v1, $t3 -/* 0BD620 800BCA20 000B3880 */ sll $a3, $t3, 2 -/* 0BD624 800BCA24 27B90034 */ addiu $t9, $sp, 0x34 -/* 0BD628 800BCA28 00F92821 */ addu $a1, $a3, $t9 -/* 0BD62C 800BCA2C 00032080 */ sll $a0, $v1, 2 -/* 0BD630 800BCA30 24CE0001 */ addiu $t6, $a2, 1 -.L800BCA34: -/* 0BD634 800BCA34 016E0019 */ multu $t3, $t6 -/* 0BD638 800BCA38 8D2F0008 */ lw $t7, 8($t1) -/* 0BD63C 800BCA3C 00067080 */ sll $t6, $a2, 2 -/* 0BD640 800BCA40 C4A60000 */ lwc1 $f6, ($a1) -/* 0BD644 800BCA44 00006812 */ mflo $t5 -/* 0BD648 800BCA48 000DC080 */ sll $t8, $t5, 2 -/* 0BD64C 800BCA4C 01F8C821 */ addu $t9, $t7, $t8 -/* 0BD650 800BCA50 032E6821 */ addu $t5, $t9, $t6 -/* 0BD654 800BCA54 00047823 */ negu $t7, $a0 -/* 0BD658 800BCA58 01AFC021 */ addu $t8, $t5, $t7 -/* 0BD65C 800BCA5C E7060000 */ swc1 $f6, ($t8) -/* 0BD660 800BCA60 8D460000 */ lw $a2, ($t2) -/* 0BD664 800BCA64 8D390008 */ lw $t9, 8($t1) -/* 0BD668 800BCA68 24CE0001 */ addiu $t6, $a2, 1 -/* 0BD66C 800BCA6C 006E0019 */ multu $v1, $t6 -/* 0BD670 800BCA70 00067080 */ sll $t6, $a2, 2 -/* 0BD674 800BCA74 C4A80000 */ lwc1 $f8, ($a1) -/* 0BD678 800BCA78 24630001 */ addiu $v1, $v1, 1 -/* 0BD67C 800BCA7C 24840004 */ addiu $a0, $a0, 4 -/* 0BD680 800BCA80 00006812 */ mflo $t5 -/* 0BD684 800BCA84 000D7880 */ sll $t7, $t5, 2 -/* 0BD688 800BCA88 032FC021 */ addu $t8, $t9, $t7 -/* 0BD68C 800BCA8C 030E6821 */ addu $t5, $t8, $t6 -/* 0BD690 800BCA90 0007C823 */ negu $t9, $a3 -/* 0BD694 800BCA94 01B97821 */ addu $t7, $t5, $t9 -/* 0BD698 800BCA98 E5E80000 */ swc1 $f8, ($t7) -/* 0BD69C 800BCA9C 8D460000 */ lw $a2, ($t2) -/* 0BD6A0 800BCAA0 00000000 */ nop -/* 0BD6A4 800BCAA4 00C3082A */ slt $at, $a2, $v1 -/* 0BD6A8 800BCAA8 1020FFE2 */ beqz $at, .L800BCA34 -/* 0BD6AC 800BCAAC 24CE0001 */ addiu $t6, $a2, 1 -.L800BCAB0: -/* 0BD6B0 800BCAB0 256B0001 */ addiu $t3, $t3, 1 -/* 0BD6B4 800BCAB4 00CB082A */ slt $at, $a2, $t3 -/* 0BD6B8 800BCAB8 1020FFD7 */ beqz $at, .L800BCA18 -/* 0BD6BC 800BCABC 00CB082A */ slt $at, $a2, $t3 -/* 0BD6C0 800BCAC0 00005825 */ move $t3, $zero -.L800BCAC4: -/* 0BD6C4 800BCAC4 04C00030 */ bltz $a2, .L800BCB88 -/* 0BD6C8 800BCAC8 00CB082A */ slt $at, $a2, $t3 -.L800BCACC: -/* 0BD6CC 800BCACC 14200029 */ bnez $at, .L800BCB74 -/* 0BD6D0 800BCAD0 01601825 */ move $v1, $t3 -/* 0BD6D4 800BCAD4 000B3880 */ sll $a3, $t3, 2 -/* 0BD6D8 800BCAD8 27B80034 */ addiu $t8, $sp, 0x34 -/* 0BD6DC 800BCADC 00F82821 */ addu $a1, $a3, $t8 -/* 0BD6E0 800BCAE0 00032080 */ sll $a0, $v1, 2 -/* 0BD6E4 800BCAE4 24C20001 */ addiu $v0, $a2, 1 -.L800BCAE8: -/* 0BD6E8 800BCAE8 00C20019 */ multu $a2, $v0 -/* 0BD6EC 800BCAEC 8D2E0018 */ lw $t6, 0x18($t1) -/* 0BD6F0 800BCAF0 C4AA0000 */ lwc1 $f10, ($a1) -/* 0BD6F4 800BCAF4 00006812 */ mflo $t5 -/* 0BD6F8 800BCAF8 000DC880 */ sll $t9, $t5, 2 -/* 0BD6FC 800BCAFC 01D97821 */ addu $t7, $t6, $t9 -/* 0BD700 800BCB00 01620019 */ multu $t3, $v0 -/* 0BD704 800BCB04 0000C012 */ mflo $t8 -/* 0BD708 800BCB08 00180823 */ negu $at, $t8 -/* 0BD70C 800BCB0C 00016880 */ sll $t5, $at, 2 -/* 0BD710 800BCB10 01ED7021 */ addu $t6, $t7, $t5 -/* 0BD714 800BCB14 01C4C821 */ addu $t9, $t6, $a0 -/* 0BD718 800BCB18 E72A0000 */ swc1 $f10, ($t9) -/* 0BD71C 800BCB1C 8D460000 */ lw $a2, ($t2) -/* 0BD720 800BCB20 8D380018 */ lw $t8, 0x18($t1) -/* 0BD724 800BCB24 24C20001 */ addiu $v0, $a2, 1 -/* 0BD728 800BCB28 00C20019 */ multu $a2, $v0 -/* 0BD72C 800BCB2C C4B00000 */ lwc1 $f16, ($a1) -/* 0BD730 800BCB30 24840004 */ addiu $a0, $a0, 4 -/* 0BD734 800BCB34 00007812 */ mflo $t7 -/* 0BD738 800BCB38 000F6880 */ sll $t5, $t7, 2 -/* 0BD73C 800BCB3C 030D7021 */ addu $t6, $t8, $t5 -/* 0BD740 800BCB40 00620019 */ multu $v1, $v0 -/* 0BD744 800BCB44 24630001 */ addiu $v1, $v1, 1 -/* 0BD748 800BCB48 0000C812 */ mflo $t9 -/* 0BD74C 800BCB4C 00190823 */ negu $at, $t9 -/* 0BD750 800BCB50 00017880 */ sll $t7, $at, 2 -/* 0BD754 800BCB54 01CFC021 */ addu $t8, $t6, $t7 -/* 0BD758 800BCB58 03076821 */ addu $t5, $t8, $a3 -/* 0BD75C 800BCB5C E5B00000 */ swc1 $f16, ($t5) -/* 0BD760 800BCB60 8D460000 */ lw $a2, ($t2) -/* 0BD764 800BCB64 00000000 */ nop -/* 0BD768 800BCB68 00C3082A */ slt $at, $a2, $v1 -/* 0BD76C 800BCB6C 1020FFDE */ beqz $at, .L800BCAE8 -/* 0BD770 800BCB70 24C20001 */ addiu $v0, $a2, 1 -.L800BCB74: -/* 0BD774 800BCB74 256B0001 */ addiu $t3, $t3, 1 -/* 0BD778 800BCB78 00CB082A */ slt $at, $a2, $t3 -/* 0BD77C 800BCB7C 1020FFD3 */ beqz $at, .L800BCACC -/* 0BD780 800BCB80 00CB082A */ slt $at, $a2, $t3 -/* 0BD784 800BCB84 00005825 */ move $t3, $zero -.L800BCB88: -/* 0BD788 800BCB88 04C00035 */ bltz $a2, .L800BCC60 -/* 0BD78C 800BCB8C 00CB082A */ slt $at, $a2, $t3 -.L800BCB90: -/* 0BD790 800BCB90 1420002F */ bnez $at, .L800BCC50 -/* 0BD794 800BCB94 01601825 */ move $v1, $t3 -/* 0BD798 800BCB98 000B3880 */ sll $a3, $t3, 2 -/* 0BD79C 800BCB9C 27B90034 */ addiu $t9, $sp, 0x34 -/* 0BD7A0 800BCBA0 00F92821 */ addu $a1, $a3, $t9 -/* 0BD7A4 800BCBA4 00032080 */ sll $a0, $v1, 2 -/* 0BD7A8 800BCBA8 24C20001 */ addiu $v0, $a2, 1 -.L800BCBAC: -/* 0BD7AC 800BCBAC 00C20019 */ multu $a2, $v0 -/* 0BD7B0 800BCBB0 8D2E0020 */ lw $t6, 0x20($t1) -/* 0BD7B4 800BCBB4 C4B20000 */ lwc1 $f18, ($a1) -/* 0BD7B8 800BCBB8 00007812 */ mflo $t7 -/* 0BD7BC 800BCBBC 000FC080 */ sll $t8, $t7, 2 -/* 0BD7C0 800BCBC0 01D86821 */ addu $t5, $t6, $t8 -/* 0BD7C4 800BCBC4 01620019 */ multu $t3, $v0 -/* 0BD7C8 800BCBC8 0006C080 */ sll $t8, $a2, 2 -/* 0BD7CC 800BCBCC 0000C812 */ mflo $t9 -/* 0BD7D0 800BCBD0 00190823 */ negu $at, $t9 -/* 0BD7D4 800BCBD4 00017880 */ sll $t7, $at, 2 -/* 0BD7D8 800BCBD8 01AF7021 */ addu $t6, $t5, $t7 -/* 0BD7DC 800BCBDC 01D8C821 */ addu $t9, $t6, $t8 -/* 0BD7E0 800BCBE0 00046823 */ negu $t5, $a0 -/* 0BD7E4 800BCBE4 032D7821 */ addu $t7, $t9, $t5 -/* 0BD7E8 800BCBE8 E5F20000 */ swc1 $f18, ($t7) -/* 0BD7EC 800BCBEC 8D460000 */ lw $a2, ($t2) -/* 0BD7F0 800BCBF0 8D2E0020 */ lw $t6, 0x20($t1) -/* 0BD7F4 800BCBF4 24C20001 */ addiu $v0, $a2, 1 -/* 0BD7F8 800BCBF8 00C20019 */ multu $a2, $v0 -/* 0BD7FC 800BCBFC C4A40000 */ lwc1 $f4, ($a1) -/* 0BD800 800BCC00 24840004 */ addiu $a0, $a0, 4 -/* 0BD804 800BCC04 0000C012 */ mflo $t8 -/* 0BD808 800BCC08 0018C880 */ sll $t9, $t8, 2 -/* 0BD80C 800BCC0C 01D96821 */ addu $t5, $t6, $t9 -/* 0BD810 800BCC10 00620019 */ multu $v1, $v0 -/* 0BD814 800BCC14 0006C880 */ sll $t9, $a2, 2 -/* 0BD818 800BCC18 24630001 */ addiu $v1, $v1, 1 -/* 0BD81C 800BCC1C 00007812 */ mflo $t7 -/* 0BD820 800BCC20 000F0823 */ negu $at, $t7 -/* 0BD824 800BCC24 0001C080 */ sll $t8, $at, 2 -/* 0BD828 800BCC28 01B87021 */ addu $t6, $t5, $t8 -/* 0BD82C 800BCC2C 01D97821 */ addu $t7, $t6, $t9 -/* 0BD830 800BCC30 00076823 */ negu $t5, $a3 -/* 0BD834 800BCC34 01EDC021 */ addu $t8, $t7, $t5 -/* 0BD838 800BCC38 E7040000 */ swc1 $f4, ($t8) -/* 0BD83C 800BCC3C 8D460000 */ lw $a2, ($t2) -/* 0BD840 800BCC40 00000000 */ nop -/* 0BD844 800BCC44 00C3082A */ slt $at, $a2, $v1 -/* 0BD848 800BCC48 1020FFD8 */ beqz $at, .L800BCBAC -/* 0BD84C 800BCC4C 24C20001 */ addiu $v0, $a2, 1 -.L800BCC50: -/* 0BD850 800BCC50 256B0001 */ addiu $t3, $t3, 1 -/* 0BD854 800BCC54 00CB082A */ slt $at, $a2, $t3 -/* 0BD858 800BCC58 1020FFCD */ beqz $at, .L800BCB90 -/* 0BD85C 800BCC5C 00CB082A */ slt $at, $a2, $t3 -.L800BCC60: -/* 0BD860 800BCC60 8FBF001C */ lw $ra, 0x1c($sp) -/* 0BD864 800BCC64 8FB00018 */ lw $s0, 0x18($sp) -/* 0BD868 800BCC68 03E00008 */ jr $ra -/* 0BD86C 800BCC6C 27BD0248 */ addiu $sp, $sp, 0x248 - -glabel func_800BCC70 -/* 0BD870 800BCC70 27BDFE70 */ addiu $sp, $sp, -0x190 -/* 0BD874 800BCC74 AFBE0060 */ sw $fp, 0x60($sp) -/* 0BD878 800BCC78 3C1E8013 */ lui $fp, %hi(D_80129FC8) # $fp, 0x8013 -/* 0BD87C 800BCC7C 27DE9FC8 */ addiu $fp, %lo(D_80129FC8) # addiu $fp, $fp, -0x6038 -/* 0BD880 800BCC80 8FCE0028 */ lw $t6, 0x28($fp) -/* 0BD884 800BCC84 AFB40050 */ sw $s4, 0x50($sp) -/* 0BD888 800BCC88 8FD40000 */ lw $s4, ($fp) -/* 0BD88C 800BCC8C AFBF0064 */ sw $ra, 0x64($sp) -/* 0BD890 800BCC90 AFB7005C */ sw $s7, 0x5c($sp) -/* 0BD894 800BCC94 AFB60058 */ sw $s6, 0x58($sp) -/* 0BD898 800BCC98 AFB50054 */ sw $s5, 0x54($sp) -/* 0BD89C 800BCC9C AFB3004C */ sw $s3, 0x4c($sp) -/* 0BD8A0 800BCCA0 AFB20048 */ sw $s2, 0x48($sp) -/* 0BD8A4 800BCCA4 AFB10044 */ sw $s1, 0x44($sp) -/* 0BD8A8 800BCCA8 AFB00040 */ sw $s0, 0x40($sp) -/* 0BD8AC 800BCCAC E7BD0038 */ swc1 $f29, 0x38($sp) -/* 0BD8B0 800BCCB0 E7BC003C */ swc1 $f28, 0x3c($sp) -/* 0BD8B4 800BCCB4 E7BB0030 */ swc1 $f27, 0x30($sp) -/* 0BD8B8 800BCCB8 E7BA0034 */ swc1 $f26, 0x34($sp) -/* 0BD8BC 800BCCBC E7B90028 */ swc1 $f25, 0x28($sp) -/* 0BD8C0 800BCCC0 E7B8002C */ swc1 $f24, 0x2c($sp) -/* 0BD8C4 800BCCC4 E7B70020 */ swc1 $f23, 0x20($sp) -/* 0BD8C8 800BCCC8 E7B60024 */ swc1 $f22, 0x24($sp) -/* 0BD8CC 800BCCCC E7B50018 */ swc1 $f21, 0x18($sp) -/* 0BD8D0 800BCCD0 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 0BD8D4 800BCCD4 11C00003 */ beqz $t6, .L800BCCE4 -/* 0BD8D8 800BCCD8 AFA40190 */ sw $a0, 0x190($sp) -/* 0BD8DC 800BCCDC 00147840 */ sll $t7, $s4, 1 -/* 0BD8E0 800BCCE0 01E0A025 */ move $s4, $t7 -.L800BCCE4: -/* 0BD8E4 800BCCE4 26980001 */ addiu $t8, $s4, 1 -/* 0BD8E8 800BCCE8 03180019 */ multu $t8, $t8 -/* 0BD8EC 800BCCEC 3C11800E */ lui $s1, %hi(D_800E3178) # $s1, 0x800e -/* 0BD8F0 800BCCF0 3C01800E */ lui $at, %hi(D_800E317C) # $at, 0x800e -/* 0BD8F4 800BCCF4 26313178 */ addiu $s1, %lo(D_800E3178) # addiu $s1, $s1, 0x3178 -/* 0BD8F8 800BCCF8 AFB80090 */ sw $t8, 0x90($sp) -/* 0BD8FC 800BCCFC 00007012 */ mflo $t6 -/* 0BD900 800BCD00 AC2E317C */ sw $t6, %lo(D_800E317C)($at) -/* 0BD904 800BCD04 8E240000 */ lw $a0, ($s1) -/* 0BD908 800BCD08 00000000 */ nop -/* 0BD90C 800BCD0C 10800004 */ beqz $a0, .L800BCD20 -/* 0BD910 800BCD10 8FAF0190 */ lw $t7, 0x190($sp) -/* 0BD914 800BCD14 0C01C450 */ jal func_80071140 -/* 0BD918 800BCD18 00000000 */ nop -/* 0BD91C 800BCD1C 8FAF0190 */ lw $t7, 0x190($sp) -.L800BCD20: -/* 0BD920 800BCD20 3C19800E */ lui $t9, %hi(D_800E317C) # $t9, 0x800e -/* 0BD924 800BCD24 8F39317C */ lw $t9, %lo(D_800E317C)($t9) -/* 0BD928 800BCD28 85F8001A */ lh $t8, 0x1a($t7) -/* 0BD92C 800BCD2C 3C1000FF */ lui $s0, (0x00FFFFFF >> 16) # lui $s0, 0xff -/* 0BD930 800BCD30 03190019 */ multu $t8, $t9 -/* 0BD934 800BCD34 3610FFFF */ ori $s0, (0x00FFFFFF & 0xFFFF) # ori $s0, $s0, 0xffff -/* 0BD938 800BCD38 02002825 */ move $a1, $s0 -/* 0BD93C 800BCD3C 00002012 */ mflo $a0 -/* 0BD940 800BCD40 0C01C327 */ jal func_80070C9C -/* 0BD944 800BCD44 00000000 */ nop -/* 0BD948 800BCD48 8FAE0190 */ lw $t6, 0x190($sp) -/* 0BD94C 800BCD4C AE220000 */ sw $v0, ($s1) -/* 0BD950 800BCD50 85C4001A */ lh $a0, 0x1a($t6) -/* 0BD954 800BCD54 02002825 */ move $a1, $s0 -/* 0BD958 800BCD58 00047880 */ sll $t7, $a0, 2 -/* 0BD95C 800BCD5C 0C01C327 */ jal func_80070C9C -/* 0BD960 800BCD60 01E02025 */ move $a0, $t7 -/* 0BD964 800BCD64 3C188013 */ lui $t8, %hi(D_8012A0D8) # $t8, 0x8013 -/* 0BD968 800BCD68 3C198013 */ lui $t9, %hi(D_8012A0DC) # $t9, 0x8013 -/* 0BD96C 800BCD6C 8F39A0DC */ lw $t9, %lo(D_8012A0DC)($t9) -/* 0BD970 800BCD70 8F18A0D8 */ lw $t8, %lo(D_8012A0D8)($t8) -/* 0BD974 800BCD74 AFA200A0 */ sw $v0, 0xa0($sp) -/* 0BD978 800BCD78 03190019 */ multu $t8, $t9 -/* 0BD97C 800BCD7C 02002825 */ move $a1, $s0 -/* 0BD980 800BCD80 00002012 */ mflo $a0 -/* 0BD984 800BCD84 000470C0 */ sll $t6, $a0, 3 -/* 0BD988 800BCD88 0C01C327 */ jal func_80070C9C -/* 0BD98C 800BCD8C 01C02025 */ move $a0, $t6 -/* 0BD990 800BCD90 00142080 */ sll $a0, $s4, 2 -/* 0BD994 800BCD94 AFA200A4 */ sw $v0, 0xa4($sp) -/* 0BD998 800BCD98 24840004 */ addiu $a0, $a0, 4 -/* 0BD99C 800BCD9C 0C01C327 */ jal func_80070C9C -/* 0BD9A0 800BCDA0 02002825 */ move $a1, $s0 -/* 0BD9A4 800BCDA4 3C0F8013 */ lui $t7, %hi(D_8012A0D8) # $t7, 0x8013 -/* 0BD9A8 800BCDA8 3C188013 */ lui $t8, %hi(D_8012A0DC) # $t8, 0x8013 -/* 0BD9AC 800BCDAC 8F18A0DC */ lw $t8, %lo(D_8012A0DC)($t8) -/* 0BD9B0 800BCDB0 8DEFA0D8 */ lw $t7, %lo(D_8012A0D8)($t7) -/* 0BD9B4 800BCDB4 8FA300A4 */ lw $v1, 0xa4($sp) -/* 0BD9B8 800BCDB8 01F80019 */ multu $t7, $t8 -/* 0BD9BC 800BCDBC AFA200A8 */ sw $v0, 0xa8($sp) -/* 0BD9C0 800BCDC0 00003825 */ move $a3, $zero -/* 0BD9C4 800BCDC4 2404FFFF */ li $a0, -1 -/* 0BD9C8 800BCDC8 26850001 */ addiu $a1, $s4, 1 -/* 0BD9CC 800BCDCC 0000C812 */ mflo $t9 -/* 0BD9D0 800BCDD0 1B20000E */ blez $t9, .L800BCE0C -/* 0BD9D4 800BCDD4 240EFFFF */ li $t6, -1 -.L800BCDD8: -/* 0BD9D8 800BCDD8 AC6E0000 */ sw $t6, ($v1) -/* 0BD9DC 800BCDDC AC640004 */ sw $a0, 4($v1) -/* 0BD9E0 800BCDE0 3C0F8013 */ lui $t7, %hi(D_8012A0D8) # $t7, 0x8013 -/* 0BD9E4 800BCDE4 3C188013 */ lui $t8, %hi(D_8012A0DC) # $t8, 0x8013 -/* 0BD9E8 800BCDE8 8F18A0DC */ lw $t8, %lo(D_8012A0DC)($t8) -/* 0BD9EC 800BCDEC 8DEFA0D8 */ lw $t7, %lo(D_8012A0D8)($t7) -/* 0BD9F0 800BCDF0 24E70001 */ addiu $a3, $a3, 1 -/* 0BD9F4 800BCDF4 01F80019 */ multu $t7, $t8 -/* 0BD9F8 800BCDF8 24630008 */ addiu $v1, $v1, 8 -/* 0BD9FC 800BCDFC 0000C812 */ mflo $t9 -/* 0BDA00 800BCE00 00F9082A */ slt $at, $a3, $t9 -/* 0BDA04 800BCE04 1420FFF4 */ bnez $at, .L800BCDD8 -/* 0BDA08 800BCE08 240EFFFF */ li $t6, -1 -.L800BCE0C: -/* 0BDA0C 800BCE0C 0680004F */ bltz $s4, .L800BCF4C -/* 0BDA10 800BCE10 00005025 */ move $t2, $zero -/* 0BDA14 800BCE14 30AE0003 */ andi $t6, $a1, 3 -/* 0BDA18 800BCE18 11C00022 */ beqz $t6, .L800BCEA4 -/* 0BDA1C 800BCE1C 01C02025 */ move $a0, $t6 -/* 0BDA20 800BCE20 44942000 */ mtc1 $s4, $f4 -/* 0BDA24 800BCE24 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 0BDA28 800BCE28 000A7880 */ sll $t7, $t2, 2 -/* 0BDA2C 800BCE2C 44811000 */ mtc1 $at, $f2 -/* 0BDA30 800BCE30 004F1821 */ addu $v1, $v0, $t7 -/* 0BDA34 800BCE34 46802020 */ cvt.s.w $f0, $f4 -/* 0BDA38 800BCE38 000AC040 */ sll $t8, $t2, 1 -/* 0BDA3C 800BCE3C 0298C823 */ subu $t9, $s4, $t8 -/* 0BDA40 800BCE40 44993000 */ mtc1 $t9, $f6 -/* 0BDA44 800BCE44 2484FFFF */ addiu $a0, $a0, -1 -/* 0BDA48 800BCE48 108A000C */ beq $a0, $t2, .L800BCE7C -/* 0BDA4C 800BCE4C 46803220 */ cvt.s.w $f8, $f6 -.L800BCE50: -/* 0BDA50 800BCE50 00000000 */ nop -/* 0BDA54 800BCE54 46004283 */ div.s $f10, $f8, $f0 -/* 0BDA58 800BCE58 254A0001 */ addiu $t2, $t2, 1 -/* 0BDA5C 800BCE5C 000AC040 */ sll $t8, $t2, 1 -/* 0BDA60 800BCE60 0298C823 */ subu $t9, $s4, $t8 -/* 0BDA64 800BCE64 44993000 */ mtc1 $t9, $f6 -/* 0BDA68 800BCE68 24630004 */ addiu $v1, $v1, 4 -/* 0BDA6C 800BCE6C 46803220 */ cvt.s.w $f8, $f6 -/* 0BDA70 800BCE70 46025402 */ mul.s $f16, $f10, $f2 -/* 0BDA74 800BCE74 148AFFF6 */ bne $a0, $t2, .L800BCE50 -/* 0BDA78 800BCE78 E470FFFC */ swc1 $f16, -4($v1) -.L800BCE7C: -/* 0BDA7C 800BCE7C 00000000 */ nop -/* 0BDA80 800BCE80 46004283 */ div.s $f10, $f8, $f0 -/* 0BDA84 800BCE84 24840001 */ addiu $a0, $a0, 1 -/* 0BDA88 800BCE88 254A0001 */ addiu $t2, $t2, 1 -/* 0BDA8C 800BCE8C 24630004 */ addiu $v1, $v1, 4 -/* 0BDA90 800BCE90 46025402 */ mul.s $f16, $f10, $f2 -/* 0BDA94 800BCE94 E470FFFC */ swc1 $f16, -4($v1) -/* 0BDA98 800BCE98 268E0001 */ addiu $t6, $s4, 1 -/* 0BDA9C 800BCE9C 11CA002B */ beq $t6, $t2, .L800BCF4C -/* 0BDAA0 800BCEA0 00000000 */ nop -.L800BCEA4: -/* 0BDAA4 800BCEA4 44949000 */ mtc1 $s4, $f18 -/* 0BDAA8 800BCEA8 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 0BDAAC 800BCEAC 000A7880 */ sll $t7, $t2, 2 -/* 0BDAB0 800BCEB0 44811000 */ mtc1 $at, $f2 -/* 0BDAB4 800BCEB4 004F1821 */ addu $v1, $v0, $t7 -/* 0BDAB8 800BCEB8 46809020 */ cvt.s.w $f0, $f18 -.L800BCEBC: -/* 0BDABC 800BCEBC 000AC040 */ sll $t8, $t2, 1 -/* 0BDAC0 800BCEC0 0298C823 */ subu $t9, $s4, $t8 -/* 0BDAC4 800BCEC4 44992000 */ mtc1 $t9, $f4 -/* 0BDAC8 800BCEC8 254E0001 */ addiu $t6, $t2, 1 -/* 0BDACC 800BCECC 468021A0 */ cvt.s.w $f6, $f4 -/* 0BDAD0 800BCED0 000E7840 */ sll $t7, $t6, 1 -/* 0BDAD4 800BCED4 028FC023 */ subu $t8, $s4, $t7 -/* 0BDAD8 800BCED8 44988000 */ mtc1 $t8, $f16 -/* 0BDADC 800BCEDC 46003203 */ div.s $f8, $f6, $f0 -/* 0BDAE0 800BCEE0 468084A0 */ cvt.s.w $f18, $f16 -/* 0BDAE4 800BCEE4 25590002 */ addiu $t9, $t2, 2 -/* 0BDAE8 800BCEE8 00197040 */ sll $t6, $t9, 1 -/* 0BDAEC 800BCEEC 028E7823 */ subu $t7, $s4, $t6 -/* 0BDAF0 800BCEF0 25580003 */ addiu $t8, $t2, 3 -/* 0BDAF4 800BCEF4 0018C840 */ sll $t9, $t8, 1 -/* 0BDAF8 800BCEF8 02997023 */ subu $t6, $s4, $t9 -/* 0BDAFC 800BCEFC 254A0004 */ addiu $t2, $t2, 4 -/* 0BDB00 800BCF00 24630010 */ addiu $v1, $v1, 0x10 -/* 0BDB04 800BCF04 46009103 */ div.s $f4, $f18, $f0 -/* 0BDB08 800BCF08 46024282 */ mul.s $f10, $f8, $f2 -/* 0BDB0C 800BCF0C 448F4000 */ mtc1 $t7, $f8 -/* 0BDB10 800BCF10 268F0001 */ addiu $t7, $s4, 1 -/* 0BDB14 800BCF14 E46AFFF0 */ swc1 $f10, -0x10($v1) -/* 0BDB18 800BCF18 468042A0 */ cvt.s.w $f10, $f8 -/* 0BDB1C 800BCF1C 46022182 */ mul.s $f6, $f4, $f2 -/* 0BDB20 800BCF20 448E2000 */ mtc1 $t6, $f4 -/* 0BDB24 800BCF24 46005403 */ div.s $f16, $f10, $f0 -/* 0BDB28 800BCF28 E466FFF4 */ swc1 $f6, -0xc($v1) -/* 0BDB2C 800BCF2C 468021A0 */ cvt.s.w $f6, $f4 -/* 0BDB30 800BCF30 00000000 */ nop -/* 0BDB34 800BCF34 46003203 */ div.s $f8, $f6, $f0 -/* 0BDB38 800BCF38 46028482 */ mul.s $f18, $f16, $f2 -/* 0BDB3C 800BCF3C E472FFF8 */ swc1 $f18, -8($v1) -/* 0BDB40 800BCF40 46024282 */ mul.s $f10, $f8, $f2 -/* 0BDB44 800BCF44 15EAFFDD */ bne $t7, $t2, .L800BCEBC -/* 0BDB48 800BCF48 E46AFFFC */ swc1 $f10, -4($v1) -.L800BCF4C: -/* 0BDB4C 800BCF4C 44948000 */ mtc1 $s4, $f16 -/* 0BDB50 800BCF50 3C018013 */ lui $at, %hi(D_8012A0A0) # $at, 0x8013 -/* 0BDB54 800BCF54 C432A0A0 */ lwc1 $f18, %lo(D_8012A0A0)($at) -/* 0BDB58 800BCF58 8FB80190 */ lw $t8, 0x190($sp) -/* 0BDB5C 800BCF5C 46808020 */ cvt.s.w $f0, $f16 -/* 0BDB60 800BCF60 3C018013 */ lui $at, %hi(D_8012A0A4) # $at, 0x8013 -/* 0BDB64 800BCF64 AFA0018C */ sw $zero, 0x18c($sp) -/* 0BDB68 800BCF68 C424A0A4 */ lwc1 $f4, %lo(D_8012A0A4)($at) -/* 0BDB6C 800BCF6C 8702001A */ lh $v0, 0x1a($t8) -/* 0BDB70 800BCF70 0000A825 */ move $s5, $zero -/* 0BDB74 800BCF74 46009683 */ div.s $f26, $f18, $f0 -/* 0BDB78 800BCF78 184000BE */ blez $v0, .L800BD274 -/* 0BDB7C 800BCF7C 46002703 */ div.s $f28, $f4, $f0 -/* 0BDB80 800BCF80 3C06800E */ lui $a2, %hi(D_800E30D8) # $a2, 0x800e -/* 0BDB84 800BCF84 24C630D8 */ addiu $a2, %lo(D_800E30D8) # addiu $a2, $a2, 0x30d8 -/* 0BDB88 800BCF88 AFA00080 */ sw $zero, 0x80($sp) -/* 0BDB8C 800BCF8C 27B000AC */ addiu $s0, $sp, 0xac -.L800BCF90: -/* 0BDB90 800BCF90 8CD90000 */ lw $t9, ($a2) -/* 0BDB94 800BCF94 8FAE0080 */ lw $t6, 0x80($sp) -/* 0BDB98 800BCF98 240F0001 */ li $t7, 1 -/* 0BDB9C 800BCF9C 032E2821 */ addu $a1, $t9, $t6 -/* 0BDBA0 800BCFA0 90A4000B */ lbu $a0, 0xb($a1) -/* 0BDBA4 800BCFA4 3C0E8013 */ lui $t6, 0x8013 -/* 0BDBA8 800BCFA8 0004C880 */ sll $t9, $a0, 2 -/* 0BDBAC 800BCFAC 90A3000A */ lbu $v1, 0xa($a1) -/* 0BDBB0 800BCFB0 01D97021 */ addu $t6, $t6, $t9 -/* 0BDBB4 800BCFB4 8DCEA0E8 */ lw $t6, -0x5f18($t6) -/* 0BDBB8 800BCFB8 006FC004 */ sllv $t8, $t7, $v1 -/* 0BDBBC 800BCFBC 030E7824 */ and $t7, $t8, $t6 -/* 0BDBC0 800BCFC0 11E00091 */ beqz $t7, .L800BD208 -/* 0BDBC4 800BCFC4 3C0E800E */ lui $t6, 0x800e -/* 0BDBC8 800BCFC8 3C0E8013 */ lui $t6, %hi(D_8012A0D8) # $t6, 0x8013 -/* 0BDBCC 800BCFCC 8DCEA0D8 */ lw $t6, %lo(D_8012A0D8)($t6) -/* 0BDBD0 800BCFD0 8FB800A4 */ lw $t8, 0xa4($sp) -/* 0BDBD4 800BCFD4 008E0019 */ multu $a0, $t6 -/* 0BDBD8 800BCFD8 8FB9018C */ lw $t9, 0x18c($sp) -/* 0BDBDC 800BCFDC 00001025 */ move $v0, $zero -/* 0BDBE0 800BCFE0 00007812 */ mflo $t7 -/* 0BDBE4 800BCFE4 000F70C0 */ sll $t6, $t7, 3 -/* 0BDBE8 800BCFE8 030E7821 */ addu $t7, $t8, $t6 -/* 0BDBEC 800BCFEC 0003C0C0 */ sll $t8, $v1, 3 -/* 0BDBF0 800BCFF0 01F87021 */ addu $t6, $t7, $t8 -/* 0BDBF4 800BCFF4 ADD90000 */ sw $t9, ($t6) -/* 0BDBF8 800BCFF8 8FB80080 */ lw $t8, 0x80($sp) -/* 0BDBFC 800BCFFC 8CCF0000 */ lw $t7, ($a2) -/* 0BDC00 800BD000 3C0E8013 */ lui $t6, %hi(D_8012A0D8) # $t6, 0x8013 -/* 0BDC04 800BD004 01F82821 */ addu $a1, $t7, $t8 -/* 0BDC08 800BD008 90B9000B */ lbu $t9, 0xb($a1) -/* 0BDC0C 800BD00C 8DCEA0D8 */ lw $t6, %lo(D_8012A0D8)($t6) -/* 0BDC10 800BD010 00000000 */ nop -/* 0BDC14 800BD014 032E0019 */ multu $t9, $t6 -/* 0BDC18 800BD018 8FB900A4 */ lw $t9, 0xa4($sp) -/* 0BDC1C 800BD01C 00007812 */ mflo $t7 -/* 0BDC20 800BD020 000FC0C0 */ sll $t8, $t7, 3 -/* 0BDC24 800BD024 90AF000A */ lbu $t7, 0xa($a1) -/* 0BDC28 800BD028 03387021 */ addu $t6, $t9, $t8 -/* 0BDC2C 800BD02C 000FC8C0 */ sll $t9, $t7, 3 -/* 0BDC30 800BD030 01D9C021 */ addu $t8, $t6, $t9 -/* 0BDC34 800BD034 AF150004 */ sw $s5, 4($t8) -/* 0BDC38 800BD038 8FAE0080 */ lw $t6, 0x80($sp) -/* 0BDC3C 800BD03C 8CCF0000 */ lw $t7, ($a2) -/* 0BDC40 800BD040 00000000 */ nop -/* 0BDC44 800BD044 01EE2821 */ addu $a1, $t7, $t6 -/* 0BDC48 800BD048 84B90006 */ lh $t9, 6($a1) -/* 0BDC4C 800BD04C 84B80008 */ lh $t8, 8($a1) -/* 0BDC50 800BD050 44993000 */ mtc1 $t9, $f6 -/* 0BDC54 800BD054 44984000 */ mtc1 $t8, $f8 -/* 0BDC58 800BD058 46803520 */ cvt.s.w $f20, $f6 -/* 0BDC5C 800BD05C 06800065 */ bltz $s4, .L800BD1F4 -/* 0BDC60 800BD060 46804620 */ cvt.s.w $f24, $f8 -.L800BD064: -/* 0BDC64 800BD064 8CCF0000 */ lw $t7, ($a2) -/* 0BDC68 800BD068 8FAE0080 */ lw $t6, 0x80($sp) -/* 0BDC6C 800BD06C 00000000 */ nop -/* 0BDC70 800BD070 01EEC821 */ addu $t9, $t7, $t6 -/* 0BDC74 800BD074 87380004 */ lh $t8, 4($t9) -/* 0BDC78 800BD078 00000000 */ nop -/* 0BDC7C 800BD07C 44985000 */ mtc1 $t8, $f10 -/* 0BDC80 800BD080 06800058 */ bltz $s4, .L800BD1E4 -/* 0BDC84 800BD084 468055A0 */ cvt.s.w $f22, $f10 -/* 0BDC88 800BD088 AFA20184 */ sw $v0, 0x184($sp) -/* 0BDC8C 800BD08C 8FAF0184 */ lw $t7, 0x184($sp) -/* 0BDC90 800BD090 8FB70090 */ lw $s7, 0x90($sp) -/* 0BDC94 800BD094 8FB300A8 */ lw $s3, 0xa8($sp) -/* 0BDC98 800BD098 000F7080 */ sll $t6, $t7, 2 -/* 0BDC9C 800BD09C 0017C880 */ sll $t9, $s7, 2 -/* 0BDCA0 800BD0A0 0320B825 */ move $s7, $t9 -/* 0BDCA4 800BD0A4 00009025 */ move $s2, $zero -/* 0BDCA8 800BD0A8 026EB021 */ addu $s6, $s3, $t6 -.L800BD0AC: -/* 0BDCAC 800BD0AC C6700000 */ lwc1 $f16, ($s3) -/* 0BDCB0 800BD0B0 C6C40000 */ lwc1 $f4, ($s6) -/* 0BDCB4 800BD0B4 46168480 */ add.s $f18, $f16, $f22 -/* 0BDCB8 800BD0B8 8FA4018C */ lw $a0, 0x18c($sp) -/* 0BDCBC 800BD0BC 46182180 */ add.s $f6, $f4, $f24 -/* 0BDCC0 800BD0C0 44059000 */ mfc1 $a1, $f18 -/* 0BDCC4 800BD0C4 44063000 */ mfc1 $a2, $f6 -/* 0BDCC8 800BD0C8 0C00AEAC */ jal func_8002BAB0 -/* 0BDCCC 800BD0CC 02003825 */ move $a3, $s0 -/* 0BDCD0 800BD0D0 14400003 */ bnez $v0, .L800BD0E0 -/* 0BDCD4 800BD0D4 26520004 */ addiu $s2, $s2, 4 -/* 0BDCD8 800BD0D8 10000038 */ b .L800BD1BC -/* 0BDCDC 800BD0DC 240600FF */ li $a2, 255 -.L800BD0E0: -/* 0BDCE0 800BD0E0 2444FFFF */ addiu $a0, $v0, -1 -/* 0BDCE4 800BD0E4 18800012 */ blez $a0, .L800BD130 -/* 0BDCE8 800BD0E8 00001825 */ move $v1, $zero -/* 0BDCEC 800BD0EC C7A800AC */ lwc1 $f8, 0xac($sp) -/* 0BDCF0 800BD0F0 00000000 */ nop -/* 0BDCF4 800BD0F4 4608A03E */ c.le.s $f20, $f8 -/* 0BDCF8 800BD0F8 00000000 */ nop -/* 0BDCFC 800BD0FC 4500000D */ bc1f .L800BD134 -/* 0BDD00 800BD100 00037080 */ sll $t6, $v1, 2 -.L800BD104: -/* 0BDD04 800BD104 24630001 */ addiu $v1, $v1, 1 -/* 0BDD08 800BD108 0064082A */ slt $at, $v1, $a0 -/* 0BDD0C 800BD10C 10200008 */ beqz $at, .L800BD130 -/* 0BDD10 800BD110 0003C080 */ sll $t8, $v1, 2 -/* 0BDD14 800BD114 02187821 */ addu $t7, $s0, $t8 -/* 0BDD18 800BD118 C5EA0000 */ lwc1 $f10, ($t7) -/* 0BDD1C 800BD11C 00000000 */ nop -/* 0BDD20 800BD120 460AA03E */ c.le.s $f20, $f10 -/* 0BDD24 800BD124 00000000 */ nop -/* 0BDD28 800BD128 4501FFF6 */ bc1t .L800BD104 -/* 0BDD2C 800BD12C 00000000 */ nop -.L800BD130: -/* 0BDD30 800BD130 00037080 */ sll $t6, $v1, 2 -.L800BD134: -/* 0BDD34 800BD134 020EC821 */ addu $t9, $s0, $t6 -/* 0BDD38 800BD138 C7200000 */ lwc1 $f0, ($t9) -/* 0BDD3C 800BD13C 00000000 */ nop -/* 0BDD40 800BD140 4600A03C */ c.lt.s $f20, $f0 -/* 0BDD44 800BD144 00000000 */ nop -/* 0BDD48 800BD148 45000003 */ bc1f .L800BD158 -/* 0BDD4C 800BD14C 00000000 */ nop -/* 0BDD50 800BD150 1000001A */ b .L800BD1BC -/* 0BDD54 800BD154 00003025 */ move $a2, $zero -.L800BD158: -/* 0BDD58 800BD158 4600A032 */ c.eq.s $f20, $f0 -/* 0BDD5C 800BD15C 00000000 */ nop -/* 0BDD60 800BD160 45000003 */ bc1f .L800BD170 -/* 0BDD64 800BD164 00000000 */ nop -/* 0BDD68 800BD168 10000014 */ b .L800BD1BC -/* 0BDD6C 800BD16C 240600FF */ li $a2, 255 -.L800BD170: -/* 0BDD70 800BD170 4600A401 */ sub.s $f16, $f20, $f0 -/* 0BDD74 800BD174 C7D20048 */ lwc1 $f18, 0x48($fp) -/* 0BDD78 800BD178 00000000 */ nop -/* 0BDD7C 800BD17C 46128102 */ mul.s $f4, $f16, $f18 -/* 0BDD80 800BD180 4458F800 */ cfc1 $t8, $31 -/* 0BDD84 800BD184 00000000 */ nop -/* 0BDD88 800BD188 37010003 */ ori $at, $t8, 3 -/* 0BDD8C 800BD18C 38210002 */ xori $at, $at, 2 -/* 0BDD90 800BD190 44C1F800 */ ctc1 $at, $31 -/* 0BDD94 800BD194 00000000 */ nop -/* 0BDD98 800BD198 460021A4 */ cvt.w.s $f6, $f4 -/* 0BDD9C 800BD19C 44063000 */ mfc1 $a2, $f6 -/* 0BDDA0 800BD1A0 44D8F800 */ ctc1 $t8, $31 -/* 0BDDA4 800BD1A4 28C10200 */ slti $at, $a2, 0x200 -/* 0BDDA8 800BD1A8 14200003 */ bnez $at, .L800BD1B8 -/* 0BDDAC 800BD1AC 00067843 */ sra $t7, $a2, 1 -/* 0BDDB0 800BD1B0 240601FF */ li $a2, 511 -/* 0BDDB4 800BD1B4 00067843 */ sra $t7, $a2, 1 -.L800BD1B8: -/* 0BDDB8 800BD1B8 01E03025 */ move $a2, $t7 -.L800BD1BC: -/* 0BDDBC 800BD1BC 8E2E0000 */ lw $t6, ($s1) -/* 0BDDC0 800BD1C0 26730004 */ addiu $s3, $s3, 4 -/* 0BDDC4 800BD1C4 01D5C821 */ addu $t9, $t6, $s5 -/* 0BDDC8 800BD1C8 A3260000 */ sb $a2, ($t9) -/* 0BDDCC 800BD1CC 26B50001 */ addiu $s5, $s5, 1 -/* 0BDDD0 800BD1D0 16F2FFB6 */ bne $s7, $s2, .L800BD0AC -/* 0BDDD4 800BD1D4 461AB580 */ add.s $f22, $f22, $f26 -/* 0BDDD8 800BD1D8 3C06800E */ lui $a2, %hi(D_800E30D8) # $a2, 0x800e -/* 0BDDDC 800BD1DC 8FA20184 */ lw $v0, 0x184($sp) -/* 0BDDE0 800BD1E0 24C630D8 */ addiu $a2, %lo(D_800E30D8) # addiu $a2, $a2, 0x30d8 -.L800BD1E4: -/* 0BDDE4 800BD1E4 8FB80090 */ lw $t8, 0x90($sp) -/* 0BDDE8 800BD1E8 24420001 */ addiu $v0, $v0, 1 -/* 0BDDEC 800BD1EC 1702FF9D */ bne $t8, $v0, .L800BD064 -/* 0BDDF0 800BD1F0 461CC600 */ add.s $f24, $f24, $f28 -.L800BD1F4: -/* 0BDDF4 800BD1F4 8FAF0190 */ lw $t7, 0x190($sp) -/* 0BDDF8 800BD1F8 00000000 */ nop -/* 0BDDFC 800BD1FC 85E2001A */ lh $v0, 0x1a($t7) -/* 0BDE00 800BD200 10000014 */ b .L800BD254 -/* 0BDE04 800BD204 8FB9018C */ lw $t9, 0x18c($sp) -.L800BD208: -/* 0BDE08 800BD208 8DCE317C */ lw $t6, 0x317c($t6) -/* 0BDE0C 800BD20C 00005025 */ move $t2, $zero -/* 0BDE10 800BD210 19C00010 */ blez $t6, .L800BD254 -/* 0BDE14 800BD214 8FB9018C */ lw $t9, 0x18c($sp) -.L800BD218: -/* 0BDE18 800BD218 8E380000 */ lw $t8, ($s1) -/* 0BDE1C 800BD21C 241900FF */ li $t9, 255 -/* 0BDE20 800BD220 03157821 */ addu $t7, $t8, $s5 -/* 0BDE24 800BD224 A1F90000 */ sb $t9, ($t7) -/* 0BDE28 800BD228 3C0E800E */ lui $t6, %hi(D_800E317C) # $t6, 0x800e -/* 0BDE2C 800BD22C 8DCE317C */ lw $t6, %lo(D_800E317C)($t6) -/* 0BDE30 800BD230 254A0001 */ addiu $t2, $t2, 1 -/* 0BDE34 800BD234 014E082A */ slt $at, $t2, $t6 -/* 0BDE38 800BD238 1420FFF7 */ bnez $at, .L800BD218 -/* 0BDE3C 800BD23C 26B50001 */ addiu $s5, $s5, 1 -/* 0BDE40 800BD240 8FB80190 */ lw $t8, 0x190($sp) -/* 0BDE44 800BD244 00000000 */ nop -/* 0BDE48 800BD248 8702001A */ lh $v0, 0x1a($t8) -/* 0BDE4C 800BD24C 00000000 */ nop -/* 0BDE50 800BD250 8FB9018C */ lw $t9, 0x18c($sp) -.L800BD254: -/* 0BDE54 800BD254 8FAE0080 */ lw $t6, 0x80($sp) -/* 0BDE58 800BD258 272F0001 */ addiu $t7, $t9, 1 -/* 0BDE5C 800BD25C 01E2082A */ slt $at, $t7, $v0 -/* 0BDE60 800BD260 25D8001C */ addiu $t8, $t6, 0x1c -/* 0BDE64 800BD264 AFB80080 */ sw $t8, 0x80($sp) -/* 0BDE68 800BD268 1420FF49 */ bnez $at, .L800BCF90 -/* 0BDE6C 800BD26C AFAF018C */ sw $t7, 0x18c($sp) -/* 0BDE70 800BD270 AFA0018C */ sw $zero, 0x18c($sp) -.L800BD274: -/* 0BDE74 800BD274 3C038013 */ lui $v1, %hi(D_8012A0DC) # $v1, 0x8013 -/* 0BDE78 800BD278 8C63A0DC */ lw $v1, %lo(D_8012A0DC)($v1) -/* 0BDE7C 800BD27C AFA00184 */ sw $zero, 0x184($sp) -/* 0BDE80 800BD280 186000FC */ blez $v1, .L800BD674 -/* 0BDE84 800BD284 3C048013 */ lui $a0, %hi(D_8012A0D8) # $a0, 0x8013 -/* 0BDE88 800BD288 8C84A0D8 */ lw $a0, %lo(D_8012A0D8)($a0) -/* 0BDE8C 800BD28C 00000000 */ nop -.L800BD290: -/* 0BDE90 800BD290 188000EE */ blez $a0, .L800BD64C -/* 0BDE94 800BD294 00005025 */ move $t2, $zero -/* 0BDE98 800BD298 8FA500A4 */ lw $a1, 0xa4($sp) -/* 0BDE9C 800BD29C 00005825 */ move $t3, $zero -/* 0BDEA0 800BD2A0 2406FFFF */ li $a2, -1 -.L800BD2A4: -/* 0BDEA4 800BD2A4 8FB90184 */ lw $t9, 0x184($sp) -/* 0BDEA8 800BD2A8 00000000 */ nop -/* 0BDEAC 800BD2AC 03240019 */ multu $t9, $a0 -/* 0BDEB0 800BD2B0 00007012 */ mflo $t6 -/* 0BDEB4 800BD2B4 000EC0C0 */ sll $t8, $t6, 3 -/* 0BDEB8 800BD2B8 00B87821 */ addu $t7, $a1, $t8 -/* 0BDEBC 800BD2BC 01EB7021 */ addu $t6, $t7, $t3 -/* 0BDEC0 800BD2C0 8DCC0004 */ lw $t4, 4($t6) -/* 0BDEC4 800BD2C4 3C188013 */ lui $t8, %hi(D_8012A0DC) # $t8, 0x8013 -/* 0BDEC8 800BD2C8 118600D8 */ beq $t4, $a2, .L800BD62C -/* 0BDECC 800BD2CC 00000000 */ nop -/* 0BDED0 800BD2D0 8F18A0DC */ lw $t8, %lo(D_8012A0DC)($t8) -/* 0BDED4 800BD2D4 272E0001 */ addiu $t6, $t9, 1 -/* 0BDED8 800BD2D8 270FFFFF */ addiu $t7, $t8, -1 -/* 0BDEDC 800BD2DC 032F082A */ slt $at, $t9, $t7 -/* 0BDEE0 800BD2E0 10200066 */ beqz $at, .L800BD47C -/* 0BDEE4 800BD2E4 248FFFFF */ addiu $t7, $a0, -1 -/* 0BDEE8 800BD2E8 01C40019 */ multu $t6, $a0 -/* 0BDEEC 800BD2EC 0000C012 */ mflo $t8 -/* 0BDEF0 800BD2F0 001878C0 */ sll $t7, $t8, 3 -/* 0BDEF4 800BD2F4 00AFC821 */ addu $t9, $a1, $t7 -/* 0BDEF8 800BD2F8 032B7021 */ addu $t6, $t9, $t3 -/* 0BDEFC 800BD2FC 8DC20004 */ lw $v0, 4($t6) -/* 0BDF00 800BD300 8FB80090 */ lw $t8, 0x90($sp) -/* 0BDF04 800BD304 1046005D */ beq $v0, $a2, .L800BD47C -/* 0BDF08 800BD308 248FFFFF */ addiu $t7, $a0, -1 -/* 0BDF0C 800BD30C 03140019 */ multu $t8, $s4 -/* 0BDF10 800BD310 24430001 */ addiu $v1, $v0, 1 -/* 0BDF14 800BD314 2682FFFF */ addiu $v0, $s4, -1 -/* 0BDF18 800BD318 2689FFFF */ addiu $t1, $s4, -1 -/* 0BDF1C 800BD31C 30590003 */ andi $t9, $v0, 3 -/* 0BDF20 800BD320 00003825 */ move $a3, $zero -/* 0BDF24 800BD324 00007812 */ mflo $t7 -/* 0BDF28 800BD328 01EC2821 */ addu $a1, $t7, $t4 -/* 0BDF2C 800BD32C 19200052 */ blez $t1, .L800BD478 -/* 0BDF30 800BD330 24A50001 */ addiu $a1, $a1, 1 -/* 0BDF34 800BD334 13200013 */ beqz $t9, .L800BD384 -/* 0BDF38 800BD338 03204025 */ move $t0, $t9 -.L800BD33C: -/* 0BDF3C 800BD33C 8E240000 */ lw $a0, ($s1) -/* 0BDF40 800BD340 24E70001 */ addiu $a3, $a3, 1 -/* 0BDF44 800BD344 00851021 */ addu $v0, $a0, $a1 -/* 0BDF48 800BD348 00837021 */ addu $t6, $a0, $v1 -/* 0BDF4C 800BD34C 91D80000 */ lbu $t8, ($t6) -/* 0BDF50 800BD350 904F0000 */ lbu $t7, ($v0) -/* 0BDF54 800BD354 24A50001 */ addiu $a1, $a1, 1 -/* 0BDF58 800BD358 030F3021 */ addu $a2, $t8, $t7 -/* 0BDF5C 800BD35C 0006C843 */ sra $t9, $a2, 1 -/* 0BDF60 800BD360 A0590000 */ sb $t9, ($v0) -/* 0BDF64 800BD364 8E2E0000 */ lw $t6, ($s1) -/* 0BDF68 800BD368 00000000 */ nop -/* 0BDF6C 800BD36C 01C3C021 */ addu $t8, $t6, $v1 -/* 0BDF70 800BD370 A3190000 */ sb $t9, ($t8) -/* 0BDF74 800BD374 1507FFF1 */ bne $t0, $a3, .L800BD33C -/* 0BDF78 800BD378 24630001 */ addiu $v1, $v1, 1 -/* 0BDF7C 800BD37C 10E9003B */ beq $a3, $t1, .L800BD46C -/* 0BDF80 800BD380 00000000 */ nop -.L800BD384: -/* 0BDF84 800BD384 8E240000 */ lw $a0, ($s1) -/* 0BDF88 800BD388 24E70004 */ addiu $a3, $a3, 4 -/* 0BDF8C 800BD38C 00851021 */ addu $v0, $a0, $a1 -/* 0BDF90 800BD390 00837821 */ addu $t7, $a0, $v1 -/* 0BDF94 800BD394 91F90000 */ lbu $t9, ($t7) -/* 0BDF98 800BD398 904E0000 */ lbu $t6, ($v0) -/* 0BDF9C 800BD39C 24A50001 */ addiu $a1, $a1, 1 -/* 0BDFA0 800BD3A0 032E3021 */ addu $a2, $t9, $t6 -/* 0BDFA4 800BD3A4 0006C043 */ sra $t8, $a2, 1 -/* 0BDFA8 800BD3A8 A0580000 */ sb $t8, ($v0) -/* 0BDFAC 800BD3AC 8E2F0000 */ lw $t7, ($s1) -/* 0BDFB0 800BD3B0 00000000 */ nop -/* 0BDFB4 800BD3B4 01E3C821 */ addu $t9, $t7, $v1 -/* 0BDFB8 800BD3B8 A3380000 */ sb $t8, ($t9) -/* 0BDFBC 800BD3BC 8E240000 */ lw $a0, ($s1) -/* 0BDFC0 800BD3C0 24630001 */ addiu $v1, $v1, 1 -/* 0BDFC4 800BD3C4 00837021 */ addu $t6, $a0, $v1 -/* 0BDFC8 800BD3C8 00851021 */ addu $v0, $a0, $a1 -/* 0BDFCC 800BD3CC 904F0000 */ lbu $t7, ($v0) -/* 0BDFD0 800BD3D0 91D80000 */ lbu $t8, ($t6) -/* 0BDFD4 800BD3D4 24A50001 */ addiu $a1, $a1, 1 -/* 0BDFD8 800BD3D8 030F3021 */ addu $a2, $t8, $t7 -/* 0BDFDC 800BD3DC 0006C843 */ sra $t9, $a2, 1 -/* 0BDFE0 800BD3E0 A0590000 */ sb $t9, ($v0) -/* 0BDFE4 800BD3E4 8E2E0000 */ lw $t6, ($s1) -/* 0BDFE8 800BD3E8 00000000 */ nop -/* 0BDFEC 800BD3EC 01C3C021 */ addu $t8, $t6, $v1 -/* 0BDFF0 800BD3F0 A3190000 */ sb $t9, ($t8) -/* 0BDFF4 800BD3F4 8E240000 */ lw $a0, ($s1) -/* 0BDFF8 800BD3F8 24630001 */ addiu $v1, $v1, 1 -/* 0BDFFC 800BD3FC 00837821 */ addu $t7, $a0, $v1 -/* 0BE000 800BD400 00851021 */ addu $v0, $a0, $a1 -/* 0BE004 800BD404 904E0000 */ lbu $t6, ($v0) -/* 0BE008 800BD408 91F90000 */ lbu $t9, ($t7) -/* 0BE00C 800BD40C 24A50001 */ addiu $a1, $a1, 1 -/* 0BE010 800BD410 032E3021 */ addu $a2, $t9, $t6 -/* 0BE014 800BD414 0006C043 */ sra $t8, $a2, 1 -/* 0BE018 800BD418 A0580000 */ sb $t8, ($v0) -/* 0BE01C 800BD41C 8E2F0000 */ lw $t7, ($s1) -/* 0BE020 800BD420 00000000 */ nop -/* 0BE024 800BD424 01E3C821 */ addu $t9, $t7, $v1 -/* 0BE028 800BD428 A3380000 */ sb $t8, ($t9) -/* 0BE02C 800BD42C 8E240000 */ lw $a0, ($s1) -/* 0BE030 800BD430 24630001 */ addiu $v1, $v1, 1 -/* 0BE034 800BD434 00837021 */ addu $t6, $a0, $v1 -/* 0BE038 800BD438 00851021 */ addu $v0, $a0, $a1 -/* 0BE03C 800BD43C 904F0000 */ lbu $t7, ($v0) -/* 0BE040 800BD440 91D80000 */ lbu $t8, ($t6) -/* 0BE044 800BD444 24A50001 */ addiu $a1, $a1, 1 -/* 0BE048 800BD448 030F3021 */ addu $a2, $t8, $t7 -/* 0BE04C 800BD44C 0006C843 */ sra $t9, $a2, 1 -/* 0BE050 800BD450 A0590000 */ sb $t9, ($v0) -/* 0BE054 800BD454 8E2E0000 */ lw $t6, ($s1) -/* 0BE058 800BD458 00000000 */ nop -/* 0BE05C 800BD45C 01C3C021 */ addu $t8, $t6, $v1 -/* 0BE060 800BD460 A3190000 */ sb $t9, ($t8) -/* 0BE064 800BD464 14E9FFC7 */ bne $a3, $t1, .L800BD384 -/* 0BE068 800BD468 24630001 */ addiu $v1, $v1, 1 -.L800BD46C: -/* 0BE06C 800BD46C 3C048013 */ lui $a0, %hi(D_8012A0D8) # $a0, 0x8013 -/* 0BE070 800BD470 8C84A0D8 */ lw $a0, %lo(D_8012A0D8)($a0) -/* 0BE074 800BD474 2406FFFF */ li $a2, -1 -.L800BD478: -/* 0BE078 800BD478 248FFFFF */ addiu $t7, $a0, -1 -.L800BD47C: -/* 0BE07C 800BD47C 8FA500A4 */ lw $a1, 0xa4($sp) -/* 0BE080 800BD480 014F082A */ slt $at, $t2, $t7 -/* 0BE084 800BD484 10200069 */ beqz $at, .L800BD62C -/* 0BE088 800BD488 00000000 */ nop -/* 0BE08C 800BD48C 8FB90184 */ lw $t9, 0x184($sp) -/* 0BE090 800BD490 00003825 */ move $a3, $zero -/* 0BE094 800BD494 03240019 */ multu $t9, $a0 -/* 0BE098 800BD498 2689FFFF */ addiu $t1, $s4, -1 -/* 0BE09C 800BD49C 00007012 */ mflo $t6 -/* 0BE0A0 800BD4A0 000EC0C0 */ sll $t8, $t6, 3 -/* 0BE0A4 800BD4A4 00B87821 */ addu $t7, $a1, $t8 -/* 0BE0A8 800BD4A8 01EBC821 */ addu $t9, $t7, $t3 -/* 0BE0AC 800BD4AC 8F22000C */ lw $v0, 0xc($t9) -/* 0BE0B0 800BD4B0 00147040 */ sll $t6, $s4, 1 -/* 0BE0B4 800BD4B4 1046005D */ beq $v0, $a2, .L800BD62C -/* 0BE0B8 800BD4B8 01CC2821 */ addu $a1, $t6, $t4 -/* 0BE0BC 800BD4BC 00541821 */ addu $v1, $v0, $s4 -/* 0BE0C0 800BD4C0 24A50001 */ addiu $a1, $a1, 1 -/* 0BE0C4 800BD4C4 19200059 */ blez $t1, .L800BD62C -/* 0BE0C8 800BD4C8 24630001 */ addiu $v1, $v1, 1 -/* 0BE0CC 800BD4CC 2682FFFF */ addiu $v0, $s4, -1 -/* 0BE0D0 800BD4D0 30580003 */ andi $t8, $v0, 3 -/* 0BE0D4 800BD4D4 13000014 */ beqz $t8, .L800BD528 -/* 0BE0D8 800BD4D8 03004025 */ move $t0, $t8 -.L800BD4DC: -/* 0BE0DC 800BD4DC 8E240000 */ lw $a0, ($s1) -/* 0BE0E0 800BD4E0 24E70001 */ addiu $a3, $a3, 1 -/* 0BE0E4 800BD4E4 00851021 */ addu $v0, $a0, $a1 -/* 0BE0E8 800BD4E8 00837821 */ addu $t7, $a0, $v1 -/* 0BE0EC 800BD4EC 91F90000 */ lbu $t9, ($t7) -/* 0BE0F0 800BD4F0 904E0000 */ lbu $t6, ($v0) -/* 0BE0F4 800BD4F4 00B42821 */ addu $a1, $a1, $s4 -/* 0BE0F8 800BD4F8 032E3021 */ addu $a2, $t9, $t6 -/* 0BE0FC 800BD4FC 0006C043 */ sra $t8, $a2, 1 -/* 0BE100 800BD500 A0580000 */ sb $t8, ($v0) -/* 0BE104 800BD504 8E2F0000 */ lw $t7, ($s1) -/* 0BE108 800BD508 24A50001 */ addiu $a1, $a1, 1 -/* 0BE10C 800BD50C 01E3C821 */ addu $t9, $t7, $v1 -/* 0BE110 800BD510 00741821 */ addu $v1, $v1, $s4 -/* 0BE114 800BD514 24630001 */ addiu $v1, $v1, 1 -/* 0BE118 800BD518 1507FFF0 */ bne $t0, $a3, .L800BD4DC -/* 0BE11C 800BD51C A3380000 */ sb $t8, ($t9) -/* 0BE120 800BD520 10E9003F */ beq $a3, $t1, .L800BD620 -/* 0BE124 800BD524 00000000 */ nop -.L800BD528: -/* 0BE128 800BD528 8E240000 */ lw $a0, ($s1) -/* 0BE12C 800BD52C 24E70004 */ addiu $a3, $a3, 4 -/* 0BE130 800BD530 00851021 */ addu $v0, $a0, $a1 -/* 0BE134 800BD534 00837021 */ addu $t6, $a0, $v1 -/* 0BE138 800BD538 91D80000 */ lbu $t8, ($t6) -/* 0BE13C 800BD53C 904F0000 */ lbu $t7, ($v0) -/* 0BE140 800BD540 00B42821 */ addu $a1, $a1, $s4 -/* 0BE144 800BD544 030F3021 */ addu $a2, $t8, $t7 -/* 0BE148 800BD548 0006C843 */ sra $t9, $a2, 1 -/* 0BE14C 800BD54C A0590000 */ sb $t9, ($v0) -/* 0BE150 800BD550 8E2E0000 */ lw $t6, ($s1) -/* 0BE154 800BD554 24A50001 */ addiu $a1, $a1, 1 -/* 0BE158 800BD558 01C3C021 */ addu $t8, $t6, $v1 -/* 0BE15C 800BD55C A3190000 */ sb $t9, ($t8) -/* 0BE160 800BD560 8E240000 */ lw $a0, ($s1) -/* 0BE164 800BD564 00741821 */ addu $v1, $v1, $s4 -/* 0BE168 800BD568 24630001 */ addiu $v1, $v1, 1 -/* 0BE16C 800BD56C 00837821 */ addu $t7, $a0, $v1 -/* 0BE170 800BD570 00851021 */ addu $v0, $a0, $a1 -/* 0BE174 800BD574 904E0000 */ lbu $t6, ($v0) -/* 0BE178 800BD578 91F90000 */ lbu $t9, ($t7) -/* 0BE17C 800BD57C 00B42821 */ addu $a1, $a1, $s4 -/* 0BE180 800BD580 032E3021 */ addu $a2, $t9, $t6 -/* 0BE184 800BD584 0006C043 */ sra $t8, $a2, 1 -/* 0BE188 800BD588 A0580000 */ sb $t8, ($v0) -/* 0BE18C 800BD58C 8E2F0000 */ lw $t7, ($s1) -/* 0BE190 800BD590 24A50001 */ addiu $a1, $a1, 1 -/* 0BE194 800BD594 01E3C821 */ addu $t9, $t7, $v1 -/* 0BE198 800BD598 A3380000 */ sb $t8, ($t9) -/* 0BE19C 800BD59C 8E240000 */ lw $a0, ($s1) -/* 0BE1A0 800BD5A0 00741821 */ addu $v1, $v1, $s4 -/* 0BE1A4 800BD5A4 24630001 */ addiu $v1, $v1, 1 -/* 0BE1A8 800BD5A8 00837021 */ addu $t6, $a0, $v1 -/* 0BE1AC 800BD5AC 00851021 */ addu $v0, $a0, $a1 -/* 0BE1B0 800BD5B0 904F0000 */ lbu $t7, ($v0) -/* 0BE1B4 800BD5B4 91D80000 */ lbu $t8, ($t6) -/* 0BE1B8 800BD5B8 00B42821 */ addu $a1, $a1, $s4 -/* 0BE1BC 800BD5BC 030F3021 */ addu $a2, $t8, $t7 -/* 0BE1C0 800BD5C0 0006C843 */ sra $t9, $a2, 1 -/* 0BE1C4 800BD5C4 A0590000 */ sb $t9, ($v0) -/* 0BE1C8 800BD5C8 8E2E0000 */ lw $t6, ($s1) -/* 0BE1CC 800BD5CC 24A50001 */ addiu $a1, $a1, 1 -/* 0BE1D0 800BD5D0 01C3C021 */ addu $t8, $t6, $v1 -/* 0BE1D4 800BD5D4 A3190000 */ sb $t9, ($t8) -/* 0BE1D8 800BD5D8 8E240000 */ lw $a0, ($s1) -/* 0BE1DC 800BD5DC 00741821 */ addu $v1, $v1, $s4 -/* 0BE1E0 800BD5E0 24630001 */ addiu $v1, $v1, 1 -/* 0BE1E4 800BD5E4 00837821 */ addu $t7, $a0, $v1 -/* 0BE1E8 800BD5E8 00851021 */ addu $v0, $a0, $a1 -/* 0BE1EC 800BD5EC 904E0000 */ lbu $t6, ($v0) -/* 0BE1F0 800BD5F0 91F90000 */ lbu $t9, ($t7) -/* 0BE1F4 800BD5F4 00B42821 */ addu $a1, $a1, $s4 -/* 0BE1F8 800BD5F8 032E3021 */ addu $a2, $t9, $t6 -/* 0BE1FC 800BD5FC 0006C043 */ sra $t8, $a2, 1 -/* 0BE200 800BD600 A0580000 */ sb $t8, ($v0) -/* 0BE204 800BD604 8E2F0000 */ lw $t7, ($s1) -/* 0BE208 800BD608 24A50001 */ addiu $a1, $a1, 1 -/* 0BE20C 800BD60C 01E3C821 */ addu $t9, $t7, $v1 -/* 0BE210 800BD610 00741821 */ addu $v1, $v1, $s4 -/* 0BE214 800BD614 24630001 */ addiu $v1, $v1, 1 -/* 0BE218 800BD618 14E9FFC3 */ bne $a3, $t1, .L800BD528 -/* 0BE21C 800BD61C A3380000 */ sb $t8, ($t9) -.L800BD620: -/* 0BE220 800BD620 3C048013 */ lui $a0, %hi(D_8012A0D8) # $a0, 0x8013 -/* 0BE224 800BD624 8C84A0D8 */ lw $a0, %lo(D_8012A0D8)($a0) -/* 0BE228 800BD628 2406FFFF */ li $a2, -1 -.L800BD62C: -/* 0BE22C 800BD62C 254A0001 */ addiu $t2, $t2, 1 -/* 0BE230 800BD630 0144082A */ slt $at, $t2, $a0 -/* 0BE234 800BD634 8FA500A4 */ lw $a1, 0xa4($sp) -/* 0BE238 800BD638 1420FF1A */ bnez $at, .L800BD2A4 -/* 0BE23C 800BD63C 256B0008 */ addiu $t3, $t3, 8 -/* 0BE240 800BD640 3C038013 */ lui $v1, %hi(D_8012A0DC) # $v1, 0x8013 -/* 0BE244 800BD644 8C63A0DC */ lw $v1, %lo(D_8012A0DC)($v1) -/* 0BE248 800BD648 00000000 */ nop -.L800BD64C: -/* 0BE24C 800BD64C 8FAE0184 */ lw $t6, 0x184($sp) -/* 0BE250 800BD650 00000000 */ nop -/* 0BE254 800BD654 25D80001 */ addiu $t8, $t6, 1 -/* 0BE258 800BD658 0303082A */ slt $at, $t8, $v1 -/* 0BE25C 800BD65C 1420FF0C */ bnez $at, .L800BD290 -/* 0BE260 800BD660 AFB80184 */ sw $t8, 0x184($sp) -/* 0BE264 800BD664 8FAF0190 */ lw $t7, 0x190($sp) -/* 0BE268 800BD668 00000000 */ nop -/* 0BE26C 800BD66C 85E2001A */ lh $v0, 0x1a($t7) -/* 0BE270 800BD670 00000000 */ nop -.L800BD674: -/* 0BE274 800BD674 18400031 */ blez $v0, .L800BD73C -/* 0BE278 800BD678 00006025 */ move $t4, $zero -/* 0BE27C 800BD67C 8FB90090 */ lw $t9, 0x90($sp) -/* 0BE280 800BD680 3C03800E */ lui $v1, %hi(D_800E317C) # $v1, 0x800e -/* 0BE284 800BD684 03390019 */ multu $t9, $t9 -/* 0BE288 800BD688 8FA800A0 */ lw $t0, 0xa0($sp) -/* 0BE28C 800BD68C 8FA40190 */ lw $a0, 0x190($sp) -/* 0BE290 800BD690 2463317C */ addiu $v1, %lo(D_800E317C) # addiu $v1, $v1, 0x317c -/* 0BE294 800BD694 0000F812 */ mflo $ra -/* 0BE298 800BD698 00000000 */ nop -/* 0BE29C 800BD69C 00000000 */ nop -/* 0BE2A0 800BD6A0 03340019 */ multu $t9, $s4 -/* 0BE2A4 800BD6A4 00006812 */ mflo $t5 -/* 0BE2A8 800BD6A8 00000000 */ nop -/* 0BE2AC 800BD6AC 00000000 */ nop -.L800BD6B0: -/* 0BE2B0 800BD6B0 8E2E0000 */ lw $t6, ($s1) -/* 0BE2B4 800BD6B4 0194C821 */ addu $t9, $t4, $s4 -/* 0BE2B8 800BD6B8 01CCC021 */ addu $t8, $t6, $t4 -/* 0BE2BC 800BD6BC 930F0000 */ lbu $t7, ($t8) -/* 0BE2C0 800BD6C0 25080004 */ addiu $t0, $t0, 4 -/* 0BE2C4 800BD6C4 A10FFFFC */ sb $t7, -4($t0) -/* 0BE2C8 800BD6C8 8E2E0000 */ lw $t6, ($s1) -/* 0BE2CC 800BD6CC 00000000 */ nop -/* 0BE2D0 800BD6D0 032EC021 */ addu $t8, $t9, $t6 -/* 0BE2D4 800BD6D4 930F0000 */ lbu $t7, ($t8) -/* 0BE2D8 800BD6D8 01ACC821 */ addu $t9, $t5, $t4 -/* 0BE2DC 800BD6DC A10FFFFD */ sb $t7, -3($t0) -/* 0BE2E0 800BD6E0 8E2E0000 */ lw $t6, ($s1) -/* 0BE2E4 800BD6E4 00000000 */ nop -/* 0BE2E8 800BD6E8 032EC021 */ addu $t8, $t9, $t6 -/* 0BE2EC 800BD6EC 930F0000 */ lbu $t7, ($t8) -/* 0BE2F0 800BD6F0 03ECC821 */ addu $t9, $ra, $t4 -/* 0BE2F4 800BD6F4 A10FFFFE */ sb $t7, -2($t0) -/* 0BE2F8 800BD6F8 8E2E0000 */ lw $t6, ($s1) -/* 0BE2FC 800BD6FC 00000000 */ nop -/* 0BE300 800BD700 032EC021 */ addu $t8, $t9, $t6 -/* 0BE304 800BD704 930FFFFF */ lbu $t7, -1($t8) -/* 0BE308 800BD708 00000000 */ nop -/* 0BE30C 800BD70C A10FFFFF */ sb $t7, -1($t0) -/* 0BE310 800BD710 8FB9018C */ lw $t9, 0x18c($sp) -/* 0BE314 800BD714 8C780000 */ lw $t8, ($v1) -/* 0BE318 800BD718 272E0001 */ addiu $t6, $t9, 1 -/* 0BE31C 800BD71C AFAE018C */ sw $t6, 0x18c($sp) -/* 0BE320 800BD720 8482001A */ lh $v0, 0x1a($a0) -/* 0BE324 800BD724 01986021 */ addu $t4, $t4, $t8 -/* 0BE328 800BD728 01C2082A */ slt $at, $t6, $v0 -/* 0BE32C 800BD72C 1420FFE0 */ bnez $at, .L800BD6B0 -/* 0BE330 800BD730 00000000 */ nop -/* 0BE334 800BD734 AFA0018C */ sw $zero, 0x18c($sp) -/* 0BE338 800BD738 00006025 */ move $t4, $zero -.L800BD73C: -/* 0BE33C 800BD73C 3C03800E */ lui $v1, %hi(D_800E317C) # $v1, 0x800e -/* 0BE340 800BD740 18400130 */ blez $v0, .L800BDC04 -/* 0BE344 800BD744 2463317C */ addiu $v1, %lo(D_800E317C) # addiu $v1, $v1, 0x317c -/* 0BE348 800BD748 AFA00080 */ sw $zero, 0x80($sp) -/* 0BE34C 800BD74C 27A90160 */ addiu $t1, $sp, 0x160 -.L800BD750: -/* 0BE350 800BD750 3C0F800E */ lui $t7, %hi(D_800E30D8) # $t7, 0x800e -/* 0BE354 800BD754 8DEF30D8 */ lw $t7, %lo(D_800E30D8)($t7) -/* 0BE358 800BD758 8FB90080 */ lw $t9, 0x80($sp) -/* 0BE35C 800BD75C 3C048013 */ lui $a0, %hi(D_8012A0D8) # $a0, 0x8013 -/* 0BE360 800BD760 01F92821 */ addu $a1, $t7, $t9 -/* 0BE364 800BD764 90AE000B */ lbu $t6, 0xb($a1) -/* 0BE368 800BD768 8C84A0D8 */ lw $a0, %lo(D_8012A0D8)($a0) -/* 0BE36C 800BD76C 90B8000A */ lbu $t8, 0xa($a1) -/* 0BE370 800BD770 01C40019 */ multu $t6, $a0 -/* 0BE374 800BD774 8FB900A4 */ lw $t9, 0xa4($sp) -/* 0BE378 800BD778 2401FFFF */ li $at, -1 -/* 0BE37C 800BD77C 00007812 */ mflo $t7 -/* 0BE380 800BD780 030FA821 */ addu $s5, $t8, $t7 -/* 0BE384 800BD784 001570C0 */ sll $t6, $s5, 3 -/* 0BE388 800BD788 032E3021 */ addu $a2, $t9, $t6 -/* 0BE38C 800BD78C 8CD80000 */ lw $t8, ($a2) -/* 0BE390 800BD790 8FAF0090 */ lw $t7, 0x90($sp) -/* 0BE394 800BD794 13010111 */ beq $t8, $at, .L800BDBDC -/* 0BE398 800BD798 00000000 */ nop -/* 0BE39C 800BD79C 01EF0019 */ multu $t7, $t7 -/* 0BE3A0 800BD7A0 8FAE018C */ lw $t6, 0x18c($sp) -/* 0BE3A4 800BD7A4 3C0B8013 */ lui $t3, %hi(D_8012A0DC) # $t3, 0x8013 -/* 0BE3A8 800BD7A8 8D6BA0DC */ lw $t3, %lo(D_8012A0DC)($t3) -/* 0BE3AC 800BD7AC 8FB900A0 */ lw $t9, 0xa0($sp) -/* 0BE3B0 800BD7B0 000EC080 */ sll $t8, $t6, 2 -/* 0BE3B4 800BD7B4 248AFFFF */ addiu $t2, $a0, -1 -/* 0BE3B8 800BD7B8 27A20140 */ addiu $v0, $sp, 0x140 -/* 0BE3BC 800BD7BC 2403FFFF */ li $v1, -1 -/* 0BE3C0 800BD7C0 256BFFFF */ addiu $t3, $t3, -1 -/* 0BE3C4 800BD7C4 03384021 */ addu $t0, $t9, $t8 -/* 0BE3C8 800BD7C8 0000F812 */ mflo $ra -/* 0BE3CC 800BD7CC 00000000 */ nop -/* 0BE3D0 800BD7D0 00000000 */ nop -/* 0BE3D4 800BD7D4 01F40019 */ multu $t7, $s4 -/* 0BE3D8 800BD7D8 00006812 */ mflo $t5 -/* 0BE3DC 800BD7DC 00000000 */ nop -/* 0BE3E0 800BD7E0 00000000 */ nop -.L800BD7E4: -/* 0BE3E4 800BD7E4 24420004 */ addiu $v0, $v0, 4 -/* 0BE3E8 800BD7E8 0049082B */ sltu $at, $v0, $t1 -/* 0BE3EC 800BD7EC 1420FFFD */ bnez $at, .L800BD7E4 -/* 0BE3F0 800BD7F0 AC43FFFC */ sw $v1, -4($v0) -/* 0BE3F4 800BD7F4 90AF000B */ lbu $t7, 0xb($a1) -/* 0BE3F8 800BD7F8 00000000 */ nop -/* 0BE3FC 800BD7FC 19E0001D */ blez $t7, .L800BD874 -/* 0BE400 800BD800 00000000 */ nop -/* 0BE404 800BD804 90AE000A */ lbu $t6, 0xa($a1) -/* 0BE408 800BD808 8FB900A4 */ lw $t9, 0xa4($sp) -/* 0BE40C 800BD80C 19C00008 */ blez $t6, .L800BD830 -/* 0BE410 800BD810 0015C0C0 */ sll $t8, $s5, 3 -/* 0BE414 800BD814 03387821 */ addu $t7, $t9, $t8 -/* 0BE418 800BD818 000470C0 */ sll $t6, $a0, 3 -/* 0BE41C 800BD81C 000EC823 */ negu $t9, $t6 -/* 0BE420 800BD820 01F9C021 */ addu $t8, $t7, $t9 -/* 0BE424 800BD824 8F0EFFF8 */ lw $t6, -8($t8) -/* 0BE428 800BD828 00000000 */ nop -/* 0BE42C 800BD82C AFAE0140 */ sw $t6, 0x140($sp) -.L800BD830: -/* 0BE430 800BD830 8FAF00A4 */ lw $t7, 0xa4($sp) -/* 0BE434 800BD834 0015C8C0 */ sll $t9, $s5, 3 -/* 0BE438 800BD838 000470C0 */ sll $t6, $a0, 3 -/* 0BE43C 800BD83C 01F9C021 */ addu $t8, $t7, $t9 -/* 0BE440 800BD840 000E7823 */ negu $t7, $t6 -/* 0BE444 800BD844 030F1021 */ addu $v0, $t8, $t7 -/* 0BE448 800BD848 8C590000 */ lw $t9, ($v0) -/* 0BE44C 800BD84C 00000000 */ nop -/* 0BE450 800BD850 AFB90144 */ sw $t9, 0x144($sp) -/* 0BE454 800BD854 90AE000A */ lbu $t6, 0xa($a1) -/* 0BE458 800BD858 00000000 */ nop -/* 0BE45C 800BD85C 01CA082A */ slt $at, $t6, $t2 -/* 0BE460 800BD860 10200004 */ beqz $at, .L800BD874 -/* 0BE464 800BD864 00000000 */ nop -/* 0BE468 800BD868 8C580008 */ lw $t8, 8($v0) -/* 0BE46C 800BD86C 00000000 */ nop -/* 0BE470 800BD870 AFB80148 */ sw $t8, 0x148($sp) -.L800BD874: -/* 0BE474 800BD874 90A3000A */ lbu $v1, 0xa($a1) -/* 0BE478 800BD878 00000000 */ nop -/* 0BE47C 800BD87C 18600007 */ blez $v1, .L800BD89C -/* 0BE480 800BD880 006A082A */ slt $at, $v1, $t2 -/* 0BE484 800BD884 8CCFFFF8 */ lw $t7, -8($a2) -/* 0BE488 800BD888 00000000 */ nop -/* 0BE48C 800BD88C AFAF014C */ sw $t7, 0x14c($sp) -/* 0BE490 800BD890 90A3000A */ lbu $v1, 0xa($a1) -/* 0BE494 800BD894 00000000 */ nop -/* 0BE498 800BD898 006A082A */ slt $at, $v1, $t2 -.L800BD89C: -/* 0BE49C 800BD89C 10200004 */ beqz $at, .L800BD8B0 -/* 0BE4A0 800BD8A0 000418C0 */ sll $v1, $a0, 3 -/* 0BE4A4 800BD8A4 8CD90008 */ lw $t9, 8($a2) -/* 0BE4A8 800BD8A8 00000000 */ nop -/* 0BE4AC 800BD8AC AFB90150 */ sw $t9, 0x150($sp) -.L800BD8B0: -/* 0BE4B0 800BD8B0 90AE000B */ lbu $t6, 0xb($a1) -/* 0BE4B4 800BD8B4 8FB800A4 */ lw $t8, 0xa4($sp) -/* 0BE4B8 800BD8B8 01CB082A */ slt $at, $t6, $t3 -/* 0BE4BC 800BD8BC 10200015 */ beqz $at, .L800BD914 -/* 0BE4C0 800BD8C0 00000000 */ nop -/* 0BE4C4 800BD8C4 90B9000A */ lbu $t9, 0xa($a1) -/* 0BE4C8 800BD8C8 001578C0 */ sll $t7, $s5, 3 -/* 0BE4CC 800BD8CC 1B200005 */ blez $t9, .L800BD8E4 -/* 0BE4D0 800BD8D0 030F1021 */ addu $v0, $t8, $t7 -/* 0BE4D4 800BD8D4 00437021 */ addu $t6, $v0, $v1 -/* 0BE4D8 800BD8D8 8DD8FFF8 */ lw $t8, -8($t6) -/* 0BE4DC 800BD8DC 00000000 */ nop -/* 0BE4E0 800BD8E0 AFB80154 */ sw $t8, 0x154($sp) -.L800BD8E4: -/* 0BE4E4 800BD8E4 00432021 */ addu $a0, $v0, $v1 -/* 0BE4E8 800BD8E8 8C8F0000 */ lw $t7, ($a0) -/* 0BE4EC 800BD8EC 00000000 */ nop -/* 0BE4F0 800BD8F0 AFAF0158 */ sw $t7, 0x158($sp) -/* 0BE4F4 800BD8F4 90B9000A */ lbu $t9, 0xa($a1) -/* 0BE4F8 800BD8F8 00000000 */ nop -/* 0BE4FC 800BD8FC 032A082A */ slt $at, $t9, $t2 -/* 0BE500 800BD900 10200005 */ beqz $at, .L800BD918 -/* 0BE504 800BD904 8FB80140 */ lw $t8, 0x140($sp) -/* 0BE508 800BD908 8C8E0008 */ lw $t6, 8($a0) -/* 0BE50C 800BD90C 00000000 */ nop -/* 0BE510 800BD910 AFAE015C */ sw $t6, 0x15c($sp) -.L800BD914: -/* 0BE514 800BD914 8FB80140 */ lw $t8, 0x140($sp) -.L800BD918: -/* 0BE518 800BD918 2404FFFF */ li $a0, -1 -/* 0BE51C 800BD91C 91060000 */ lbu $a2, ($t0) -/* 0BE520 800BD920 10980007 */ beq $a0, $t8, .L800BD940 -/* 0BE524 800BD924 24070001 */ li $a3, 1 -/* 0BE528 800BD928 8FA300A0 */ lw $v1, 0xa0($sp) -/* 0BE52C 800BD92C 00187880 */ sll $t7, $t8, 2 -/* 0BE530 800BD930 006FC821 */ addu $t9, $v1, $t7 -/* 0BE534 800BD934 932E0003 */ lbu $t6, 3($t9) -/* 0BE538 800BD938 24070002 */ li $a3, 2 -/* 0BE53C 800BD93C 00CE3021 */ addu $a2, $a2, $t6 -.L800BD940: -/* 0BE540 800BD940 8FB80144 */ lw $t8, 0x144($sp) -/* 0BE544 800BD944 8FA300A0 */ lw $v1, 0xa0($sp) -/* 0BE548 800BD948 10980006 */ beq $a0, $t8, .L800BD964 -/* 0BE54C 800BD94C 00000000 */ nop -/* 0BE550 800BD950 00187880 */ sll $t7, $t8, 2 -/* 0BE554 800BD954 006FC821 */ addu $t9, $v1, $t7 -/* 0BE558 800BD958 932E0002 */ lbu $t6, 2($t9) -/* 0BE55C 800BD95C 24E70001 */ addiu $a3, $a3, 1 -/* 0BE560 800BD960 00CE3021 */ addu $a2, $a2, $t6 -.L800BD964: -/* 0BE564 800BD964 8FB8014C */ lw $t8, 0x14c($sp) -/* 0BE568 800BD968 00000000 */ nop -/* 0BE56C 800BD96C 10980006 */ beq $a0, $t8, .L800BD988 -/* 0BE570 800BD970 00000000 */ nop -/* 0BE574 800BD974 00187880 */ sll $t7, $t8, 2 -/* 0BE578 800BD978 006FC821 */ addu $t9, $v1, $t7 -/* 0BE57C 800BD97C 932E0001 */ lbu $t6, 1($t9) -/* 0BE580 800BD980 24E70001 */ addiu $a3, $a3, 1 -/* 0BE584 800BD984 00CE3021 */ addu $a2, $a2, $t6 -.L800BD988: -/* 0BE588 800BD988 00C7001A */ div $zero, $a2, $a3 -/* 0BE58C 800BD98C 8E2F0000 */ lw $t7, ($s1) -/* 0BE590 800BD990 14E00002 */ bnez $a3, .L800BD99C -/* 0BE594 800BD994 00000000 */ nop -/* 0BE598 800BD998 0007000D */ break 7 -.L800BD99C: -/* 0BE59C 800BD99C 2401FFFF */ li $at, -1 -/* 0BE5A0 800BD9A0 14E10004 */ bne $a3, $at, .L800BD9B4 -/* 0BE5A4 800BD9A4 3C018000 */ lui $at, 0x8000 -/* 0BE5A8 800BD9A8 14C10002 */ bne $a2, $at, .L800BD9B4 -/* 0BE5AC 800BD9AC 00000000 */ nop -/* 0BE5B0 800BD9B0 0006000D */ break 6 -.L800BD9B4: -/* 0BE5B4 800BD9B4 01ECC821 */ addu $t9, $t7, $t4 -/* 0BE5B8 800BD9B8 24070001 */ li $a3, 1 -/* 0BE5BC 800BD9BC 0000C012 */ mflo $t8 -/* 0BE5C0 800BD9C0 A3380000 */ sb $t8, ($t9) -/* 0BE5C4 800BD9C4 8FAE0144 */ lw $t6, 0x144($sp) -/* 0BE5C8 800BD9C8 91060001 */ lbu $a2, 1($t0) -/* 0BE5CC 800BD9CC 108E0006 */ beq $a0, $t6, .L800BD9E8 -/* 0BE5D0 800BD9D0 00000000 */ nop -/* 0BE5D4 800BD9D4 000E7880 */ sll $t7, $t6, 2 -/* 0BE5D8 800BD9D8 006FC021 */ addu $t8, $v1, $t7 -/* 0BE5DC 800BD9DC 93190003 */ lbu $t9, 3($t8) -/* 0BE5E0 800BD9E0 24070002 */ li $a3, 2 -/* 0BE5E4 800BD9E4 00D93021 */ addu $a2, $a2, $t9 -.L800BD9E8: -/* 0BE5E8 800BD9E8 8FAE0148 */ lw $t6, 0x148($sp) -/* 0BE5EC 800BD9EC 00000000 */ nop -/* 0BE5F0 800BD9F0 108E0006 */ beq $a0, $t6, .L800BDA0C -/* 0BE5F4 800BD9F4 00000000 */ nop -/* 0BE5F8 800BD9F8 000E7880 */ sll $t7, $t6, 2 -/* 0BE5FC 800BD9FC 006FC021 */ addu $t8, $v1, $t7 -/* 0BE600 800BDA00 93190002 */ lbu $t9, 2($t8) -/* 0BE604 800BDA04 24E70001 */ addiu $a3, $a3, 1 -/* 0BE608 800BDA08 00D93021 */ addu $a2, $a2, $t9 -.L800BDA0C: -/* 0BE60C 800BDA0C 8FAE0150 */ lw $t6, 0x150($sp) -/* 0BE610 800BDA10 00000000 */ nop -/* 0BE614 800BDA14 108E0006 */ beq $a0, $t6, .L800BDA30 -/* 0BE618 800BDA18 00000000 */ nop -/* 0BE61C 800BDA1C 000E7880 */ sll $t7, $t6, 2 -/* 0BE620 800BDA20 006FC021 */ addu $t8, $v1, $t7 -/* 0BE624 800BDA24 93190000 */ lbu $t9, ($t8) -/* 0BE628 800BDA28 24E70001 */ addiu $a3, $a3, 1 -/* 0BE62C 800BDA2C 00D93021 */ addu $a2, $a2, $t9 -.L800BDA30: -/* 0BE630 800BDA30 00C7001A */ div $zero, $a2, $a3 -/* 0BE634 800BDA34 8E2F0000 */ lw $t7, ($s1) -/* 0BE638 800BDA38 14E00002 */ bnez $a3, .L800BDA44 -/* 0BE63C 800BDA3C 00000000 */ nop -/* 0BE640 800BDA40 0007000D */ break 7 -.L800BDA44: -/* 0BE644 800BDA44 2401FFFF */ li $at, -1 -/* 0BE648 800BDA48 14E10004 */ bne $a3, $at, .L800BDA5C -/* 0BE64C 800BDA4C 3C018000 */ lui $at, 0x8000 -/* 0BE650 800BDA50 14C10002 */ bne $a2, $at, .L800BDA5C -/* 0BE654 800BDA54 00000000 */ nop -/* 0BE658 800BDA58 0006000D */ break 6 -.L800BDA5C: -/* 0BE65C 800BDA5C 01ECC021 */ addu $t8, $t7, $t4 -/* 0BE660 800BDA60 0314C821 */ addu $t9, $t8, $s4 -/* 0BE664 800BDA64 24070001 */ li $a3, 1 -/* 0BE668 800BDA68 00007012 */ mflo $t6 -/* 0BE66C 800BDA6C A32E0000 */ sb $t6, ($t9) -/* 0BE670 800BDA70 8FAF014C */ lw $t7, 0x14c($sp) -/* 0BE674 800BDA74 91060002 */ lbu $a2, 2($t0) -/* 0BE678 800BDA78 108F0006 */ beq $a0, $t7, .L800BDA94 -/* 0BE67C 800BDA7C 00000000 */ nop -/* 0BE680 800BDA80 000FC080 */ sll $t8, $t7, 2 -/* 0BE684 800BDA84 00787021 */ addu $t6, $v1, $t8 -/* 0BE688 800BDA88 91D90003 */ lbu $t9, 3($t6) -/* 0BE68C 800BDA8C 24070002 */ li $a3, 2 -/* 0BE690 800BDA90 00D93021 */ addu $a2, $a2, $t9 -.L800BDA94: -/* 0BE694 800BDA94 8FAF0154 */ lw $t7, 0x154($sp) -/* 0BE698 800BDA98 00000000 */ nop -/* 0BE69C 800BDA9C 108F0006 */ beq $a0, $t7, .L800BDAB8 -/* 0BE6A0 800BDAA0 00000000 */ nop -/* 0BE6A4 800BDAA4 000FC080 */ sll $t8, $t7, 2 -/* 0BE6A8 800BDAA8 00787021 */ addu $t6, $v1, $t8 -/* 0BE6AC 800BDAAC 91D90001 */ lbu $t9, 1($t6) -/* 0BE6B0 800BDAB0 24E70001 */ addiu $a3, $a3, 1 -/* 0BE6B4 800BDAB4 00D93021 */ addu $a2, $a2, $t9 -.L800BDAB8: -/* 0BE6B8 800BDAB8 8FAF0158 */ lw $t7, 0x158($sp) -/* 0BE6BC 800BDABC 00000000 */ nop -/* 0BE6C0 800BDAC0 108F0006 */ beq $a0, $t7, .L800BDADC -/* 0BE6C4 800BDAC4 00000000 */ nop -/* 0BE6C8 800BDAC8 000FC080 */ sll $t8, $t7, 2 -/* 0BE6CC 800BDACC 00787021 */ addu $t6, $v1, $t8 -/* 0BE6D0 800BDAD0 91D90000 */ lbu $t9, ($t6) -/* 0BE6D4 800BDAD4 24E70001 */ addiu $a3, $a3, 1 -/* 0BE6D8 800BDAD8 00D93021 */ addu $a2, $a2, $t9 -.L800BDADC: -/* 0BE6DC 800BDADC 00C7001A */ div $zero, $a2, $a3 -/* 0BE6E0 800BDAE0 8E380000 */ lw $t8, ($s1) -/* 0BE6E4 800BDAE4 14E00002 */ bnez $a3, .L800BDAF0 -/* 0BE6E8 800BDAE8 00000000 */ nop -/* 0BE6EC 800BDAEC 0007000D */ break 7 -.L800BDAF0: -/* 0BE6F0 800BDAF0 2401FFFF */ li $at, -1 -/* 0BE6F4 800BDAF4 14E10004 */ bne $a3, $at, .L800BDB08 -/* 0BE6F8 800BDAF8 3C018000 */ lui $at, 0x8000 -/* 0BE6FC 800BDAFC 14C10002 */ bne $a2, $at, .L800BDB08 -/* 0BE700 800BDB00 00000000 */ nop -/* 0BE704 800BDB04 0006000D */ break 6 -.L800BDB08: -/* 0BE708 800BDB08 030C7021 */ addu $t6, $t8, $t4 -/* 0BE70C 800BDB0C 01CDC821 */ addu $t9, $t6, $t5 -/* 0BE710 800BDB10 24070001 */ li $a3, 1 -/* 0BE714 800BDB14 00007812 */ mflo $t7 -/* 0BE718 800BDB18 A32F0000 */ sb $t7, ($t9) -/* 0BE71C 800BDB1C 8FB80150 */ lw $t8, 0x150($sp) -/* 0BE720 800BDB20 91060003 */ lbu $a2, 3($t0) -/* 0BE724 800BDB24 10980006 */ beq $a0, $t8, .L800BDB40 -/* 0BE728 800BDB28 00000000 */ nop -/* 0BE72C 800BDB2C 00187080 */ sll $t6, $t8, 2 -/* 0BE730 800BDB30 006E7821 */ addu $t7, $v1, $t6 -/* 0BE734 800BDB34 91F90002 */ lbu $t9, 2($t7) -/* 0BE738 800BDB38 24070002 */ li $a3, 2 -/* 0BE73C 800BDB3C 00D93021 */ addu $a2, $a2, $t9 -.L800BDB40: -/* 0BE740 800BDB40 8FB80158 */ lw $t8, 0x158($sp) -/* 0BE744 800BDB44 00000000 */ nop -/* 0BE748 800BDB48 10980006 */ beq $a0, $t8, .L800BDB64 -/* 0BE74C 800BDB4C 00000000 */ nop -/* 0BE750 800BDB50 00187080 */ sll $t6, $t8, 2 -/* 0BE754 800BDB54 006E7821 */ addu $t7, $v1, $t6 -/* 0BE758 800BDB58 91F90001 */ lbu $t9, 1($t7) -/* 0BE75C 800BDB5C 24E70001 */ addiu $a3, $a3, 1 -/* 0BE760 800BDB60 00D93021 */ addu $a2, $a2, $t9 -.L800BDB64: -/* 0BE764 800BDB64 8FB8015C */ lw $t8, 0x15c($sp) -/* 0BE768 800BDB68 00000000 */ nop -/* 0BE76C 800BDB6C 10980006 */ beq $a0, $t8, .L800BDB88 -/* 0BE770 800BDB70 00000000 */ nop -/* 0BE774 800BDB74 00187080 */ sll $t6, $t8, 2 -/* 0BE778 800BDB78 006E7821 */ addu $t7, $v1, $t6 -/* 0BE77C 800BDB7C 91F90000 */ lbu $t9, ($t7) -/* 0BE780 800BDB80 24E70001 */ addiu $a3, $a3, 1 -/* 0BE784 800BDB84 00D93021 */ addu $a2, $a2, $t9 -.L800BDB88: -/* 0BE788 800BDB88 00C7001A */ div $zero, $a2, $a3 -/* 0BE78C 800BDB8C 8E2E0000 */ lw $t6, ($s1) -/* 0BE790 800BDB90 3C03800E */ lui $v1, %hi(D_800E317C) # $v1, 0x800e -/* 0BE794 800BDB94 01CC7821 */ addu $t7, $t6, $t4 -/* 0BE798 800BDB98 01FFC821 */ addu $t9, $t7, $ra -/* 0BE79C 800BDB9C 2463317C */ addiu $v1, %lo(D_800E317C) # addiu $v1, $v1, 0x317c -/* 0BE7A0 800BDBA0 14E00002 */ bnez $a3, .L800BDBAC -/* 0BE7A4 800BDBA4 00000000 */ nop -/* 0BE7A8 800BDBA8 0007000D */ break 7 -.L800BDBAC: -/* 0BE7AC 800BDBAC 2401FFFF */ li $at, -1 -/* 0BE7B0 800BDBB0 14E10004 */ bne $a3, $at, .L800BDBC4 -/* 0BE7B4 800BDBB4 3C018000 */ lui $at, 0x8000 -/* 0BE7B8 800BDBB8 14C10002 */ bne $a2, $at, .L800BDBC4 -/* 0BE7BC 800BDBBC 00000000 */ nop -/* 0BE7C0 800BDBC0 0006000D */ break 6 -.L800BDBC4: -/* 0BE7C4 800BDBC4 0000C012 */ mflo $t8 -/* 0BE7C8 800BDBC8 A338FFFF */ sb $t8, -1($t9) -/* 0BE7CC 800BDBCC 8FAE0190 */ lw $t6, 0x190($sp) -/* 0BE7D0 800BDBD0 00000000 */ nop -/* 0BE7D4 800BDBD4 85C2001A */ lh $v0, 0x1a($t6) -/* 0BE7D8 800BDBD8 00000000 */ nop -.L800BDBDC: -/* 0BE7DC 800BDBDC 8FAF018C */ lw $t7, 0x18c($sp) -/* 0BE7E0 800BDBE0 8FB90080 */ lw $t9, 0x80($sp) -/* 0BE7E4 800BDBE4 25F80001 */ addiu $t8, $t7, 1 -/* 0BE7E8 800BDBE8 8C6F0000 */ lw $t7, ($v1) -/* 0BE7EC 800BDBEC 0302082A */ slt $at, $t8, $v0 -/* 0BE7F0 800BDBF0 272E001C */ addiu $t6, $t9, 0x1c -/* 0BE7F4 800BDBF4 AFAE0080 */ sw $t6, 0x80($sp) -/* 0BE7F8 800BDBF8 AFB8018C */ sw $t8, 0x18c($sp) -/* 0BE7FC 800BDBFC 1420FED4 */ bnez $at, .L800BD750 -/* 0BE800 800BDC00 018F6021 */ addu $t4, $t4, $t7 -.L800BDC04: -/* 0BE804 800BDC04 8FA400A8 */ lw $a0, 0xa8($sp) -/* 0BE808 800BDC08 0C01C450 */ jal func_80071140 -/* 0BE80C 800BDC0C 00000000 */ nop -/* 0BE810 800BDC10 8FA400A4 */ lw $a0, 0xa4($sp) -/* 0BE814 800BDC14 0C01C450 */ jal func_80071140 -/* 0BE818 800BDC18 00000000 */ nop -/* 0BE81C 800BDC1C 8FA400A0 */ lw $a0, 0xa0($sp) -/* 0BE820 800BDC20 0C01C450 */ jal func_80071140 -/* 0BE824 800BDC24 00000000 */ nop -/* 0BE828 800BDC28 8FBF0064 */ lw $ra, 0x64($sp) -/* 0BE82C 800BDC2C C7B50018 */ lwc1 $f21, 0x18($sp) -/* 0BE830 800BDC30 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 0BE834 800BDC34 C7B70020 */ lwc1 $f23, 0x20($sp) -/* 0BE838 800BDC38 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 0BE83C 800BDC3C C7B90028 */ lwc1 $f25, 0x28($sp) -/* 0BE840 800BDC40 C7B8002C */ lwc1 $f24, 0x2c($sp) -/* 0BE844 800BDC44 C7BB0030 */ lwc1 $f27, 0x30($sp) -/* 0BE848 800BDC48 C7BA0034 */ lwc1 $f26, 0x34($sp) -/* 0BE84C 800BDC4C C7BD0038 */ lwc1 $f29, 0x38($sp) -/* 0BE850 800BDC50 C7BC003C */ lwc1 $f28, 0x3c($sp) -/* 0BE854 800BDC54 8FB00040 */ lw $s0, 0x40($sp) -/* 0BE858 800BDC58 8FB10044 */ lw $s1, 0x44($sp) -/* 0BE85C 800BDC5C 8FB20048 */ lw $s2, 0x48($sp) -/* 0BE860 800BDC60 8FB3004C */ lw $s3, 0x4c($sp) -/* 0BE864 800BDC64 8FB40050 */ lw $s4, 0x50($sp) -/* 0BE868 800BDC68 8FB50054 */ lw $s5, 0x54($sp) -/* 0BE86C 800BDC6C 8FB60058 */ lw $s6, 0x58($sp) -/* 0BE870 800BDC70 8FB7005C */ lw $s7, 0x5c($sp) -/* 0BE874 800BDC74 8FBE0060 */ lw $fp, 0x60($sp) -/* 0BE878 800BDC78 03E00008 */ jr $ra -/* 0BE87C 800BDC7C 27BD0190 */ addiu $sp, $sp, 0x190 - -glabel func_800BDC80 -/* 0BE880 800BDC80 27BDFC90 */ addiu $sp, $sp, -0x370 -/* 0BE884 800BDC84 3C0E800E */ lui $t6, %hi(D_800E317C) # $t6, 0x800e -/* 0BE888 800BDC88 8DCE317C */ lw $t6, %lo(D_800E317C)($t6) -/* 0BE88C 800BDC8C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0BE890 800BDC90 008E0019 */ multu $a0, $t6 -/* 0BE894 800BDC94 44810000 */ mtc1 $at, $f0 -/* 0BE898 800BDC98 44876000 */ mtc1 $a3, $f12 -/* 0BE89C 800BDC9C 3C078013 */ lui $a3, %hi(D_80129FC8) # $a3, 0x8013 -/* 0BE8A0 800BDCA0 3C018013 */ lui $at, %hi(D_8012A0B8) # $at, 0x8013 -/* 0BE8A4 800BDCA4 C424A0B8 */ lwc1 $f4, %lo(D_8012A0B8)($at) -/* 0BE8A8 800BDCA8 24E79FC8 */ addiu $a3, %lo(D_80129FC8) # addiu $a3, $a3, -0x6038 -/* 0BE8AC 800BDCAC C4E80044 */ lwc1 $f8, 0x44($a3) -/* 0BE8B0 800BDCB0 3C018013 */ lui $at, %hi(D_8012A0BC) # $at, 0x8013 -/* 0BE8B4 800BDCB4 C426A0BC */ lwc1 $f6, %lo(D_8012A0BC)($at) -/* 0BE8B8 800BDCB8 46080281 */ sub.s $f10, $f0, $f8 -/* 0BE8BC 800BDCBC 3C0142FE */ li $at, 0x42FE0000 # 127.000000 -/* 0BE8C0 800BDCC0 44814000 */ mtc1 $at, $f8 -/* 0BE8C4 800BDCC4 8CEF0028 */ lw $t7, 0x28($a3) -/* 0BE8C8 800BDCC8 AFB00048 */ sw $s0, 0x48($sp) -/* 0BE8CC 800BDCCC E7B90028 */ swc1 $f25, 0x28($sp) -/* 0BE8D0 800BDCD0 E7B8002C */ swc1 $f24, 0x2c($sp) -/* 0BE8D4 800BDCD4 00004012 */ mflo $t0 -/* 0BE8D8 800BDCD8 00808025 */ move $s0, $a0 -/* 0BE8DC 800BDCDC AFBF006C */ sw $ra, 0x6c($sp) -/* 0BE8E0 800BDCE0 AFBE0068 */ sw $fp, 0x68($sp) -/* 0BE8E4 800BDCE4 AFB70064 */ sw $s7, 0x64($sp) -/* 0BE8E8 800BDCE8 AFB60060 */ sw $s6, 0x60($sp) -/* 0BE8EC 800BDCEC AFB5005C */ sw $s5, 0x5c($sp) -/* 0BE8F0 800BDCF0 AFB40058 */ sw $s4, 0x58($sp) -/* 0BE8F4 800BDCF4 AFB30054 */ sw $s3, 0x54($sp) -/* 0BE8F8 800BDCF8 AFB20050 */ sw $s2, 0x50($sp) -/* 0BE8FC 800BDCFC AFB1004C */ sw $s1, 0x4c($sp) -/* 0BE900 800BDD00 E7BF0040 */ swc1 $f31, 0x40($sp) -/* 0BE904 800BDD04 E7BE0044 */ swc1 $f30, 0x44($sp) -/* 0BE908 800BDD08 E7BD0038 */ swc1 $f29, 0x38($sp) -/* 0BE90C 800BDD0C E7BC003C */ swc1 $f28, 0x3c($sp) -/* 0BE910 800BDD10 E7BB0030 */ swc1 $f27, 0x30($sp) -/* 0BE914 800BDD14 E7BA0034 */ swc1 $f26, 0x34($sp) -/* 0BE918 800BDD18 E7B70020 */ swc1 $f23, 0x20($sp) -/* 0BE91C 800BDD1C E7B60024 */ swc1 $f22, 0x24($sp) -/* 0BE920 800BDD20 E7B50018 */ swc1 $f21, 0x18($sp) -/* 0BE924 800BDD24 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 0BE928 800BDD28 AFA50374 */ sw $a1, 0x374($sp) -/* 0BE92C 800BDD2C AFA60378 */ sw $a2, 0x378($sp) -/* 0BE930 800BDD30 E7A400CC */ swc1 $f4, 0xcc($sp) -/* 0BE934 800BDD34 E7A600C8 */ swc1 $f6, 0xc8($sp) -/* 0BE938 800BDD38 11E00012 */ beqz $t7, .L800BDD84 -/* 0BE93C 800BDD3C 46085603 */ div.s $f24, $f10, $f8 -/* 0BE940 800BDD40 4480F000 */ mtc1 $zero, $f30 -/* 0BE944 800BDD44 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 0BE948 800BDD48 4481F800 */ mtc1 $at, $f31 -/* 0BE94C 800BDD4C 46002721 */ cvt.d.s $f28, $f4 -/* 0BE950 800BDD50 463EE702 */ mul.d $f28, $f28, $f30 -/* 0BE954 800BDD54 8CF80000 */ lw $t8, ($a3) -/* 0BE958 800BDD58 460036A1 */ cvt.d.s $f26, $f6 -/* 0BE95C 800BDD5C 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 0BE960 800BDD60 4481B000 */ mtc1 $at, $f22 -/* 0BE964 800BDD64 463ED782 */ mul.d $f30, $f26, $f30 -/* 0BE968 800BDD68 4620E120 */ cvt.s.d $f4, $f28 -/* 0BE96C 800BDD6C 0018C840 */ sll $t9, $t8, 1 -/* 0BE970 800BDD70 E7A400CC */ swc1 $f4, 0xcc($sp) -/* 0BE974 800BDD74 AFB9036C */ sw $t9, 0x36c($sp) -/* 0BE978 800BDD78 4620F120 */ cvt.s.d $f4, $f30 -/* 0BE97C 800BDD7C 10000004 */ b .L800BDD90 -/* 0BE980 800BDD80 E7A400C8 */ swc1 $f4, 0xc8($sp) -.L800BDD84: -/* 0BE984 800BDD84 8CEA0000 */ lw $t2, ($a3) -/* 0BE988 800BDD88 46000586 */ mov.s $f22, $f0 -/* 0BE98C 800BDD8C AFAA036C */ sw $t2, 0x36c($sp) -.L800BDD90: -/* 0BE990 800BDD90 001058C0 */ sll $t3, $s0, 3 -/* 0BE994 800BDD94 01705823 */ subu $t3, $t3, $s0 -/* 0BE998 800BDD98 3C0C800E */ lui $t4, %hi(D_800E30D8) # $t4, 0x800e -/* 0BE99C 800BDD9C 8D8C30D8 */ lw $t4, %lo(D_800E30D8)($t4) -/* 0BE9A0 800BDDA0 000B5880 */ sll $t3, $t3, 2 -/* 0BE9A4 800BDDA4 AFAB00AC */ sw $t3, 0xac($sp) -/* 0BE9A8 800BDDA8 018B3021 */ addu $a2, $t4, $t3 -/* 0BE9AC 800BDDAC 84CE0004 */ lh $t6, 4($a2) -/* 0BE9B0 800BDDB0 84C90008 */ lh $t1, 8($a2) -/* 0BE9B4 800BDDB4 448E3000 */ mtc1 $t6, $f6 -/* 0BE9B8 800BDDB8 44895000 */ mtc1 $t1, $f10 -/* 0BE9BC 800BDDBC 46803020 */ cvt.s.w $f0, $f6 -/* 0BE9C0 800BDDC0 44804000 */ mtc1 $zero, $f8 -/* 0BE9C4 800BDDC4 C7AE0380 */ lwc1 $f14, 0x380($sp) -/* 0BE9C8 800BDDC8 46006301 */ sub.s $f12, $f12, $f0 -/* 0BE9CC 800BDDCC C7B00384 */ lwc1 $f16, 0x384($sp) -/* 0BE9D0 800BDDD0 468050A0 */ cvt.s.w $f2, $f10 -/* 0BE9D4 800BDDD4 C7B20388 */ lwc1 $f18, 0x388($sp) -/* 0BE9D8 800BDDD8 C7A400CC */ lwc1 $f4, 0xcc($sp) -/* 0BE9DC 800BDDDC 4608603C */ c.lt.s $f12, $f8 -/* 0BE9E0 800BDDE0 46027381 */ sub.s $f14, $f14, $f2 -/* 0BE9E4 800BDDE4 46008401 */ sub.s $f16, $f16, $f0 -/* 0BE9E8 800BDDE8 45000003 */ bc1f .L800BDDF8 -/* 0BE9EC 800BDDEC 46029481 */ sub.s $f18, $f18, $f2 -/* 0BE9F0 800BDDF0 1000000E */ b .L800BDE2C -/* 0BE9F4 800BDDF4 AFA00368 */ sw $zero, 0x368($sp) -.L800BDDF8: -/* 0BE9F8 800BDDF8 00000000 */ nop -/* 0BE9FC 800BDDFC 46046183 */ div.s $f6, $f12, $f4 -/* 0BEA00 800BDE00 444FF800 */ cfc1 $t7, $31 -/* 0BEA04 800BDE04 00000000 */ nop -/* 0BEA08 800BDE08 35E10003 */ ori $at, $t7, 3 -/* 0BEA0C 800BDE0C 38210002 */ xori $at, $at, 2 -/* 0BEA10 800BDE10 44C1F800 */ ctc1 $at, $31 -/* 0BEA14 800BDE14 00000000 */ nop -/* 0BEA18 800BDE18 460032A4 */ cvt.w.s $f10, $f6 -/* 0BEA1C 800BDE1C 44185000 */ mfc1 $t8, $f10 -/* 0BEA20 800BDE20 44CFF800 */ ctc1 $t7, $31 -/* 0BEA24 800BDE24 AFB80368 */ sw $t8, 0x368($sp) -/* 0BEA28 800BDE28 00000000 */ nop -.L800BDE2C: -/* 0BEA2C 800BDE2C 44804000 */ mtc1 $zero, $f8 -/* 0BEA30 800BDE30 C7A400C8 */ lwc1 $f4, 0xc8($sp) -/* 0BEA34 800BDE34 4608703C */ c.lt.s $f14, $f8 -/* 0BEA38 800BDE38 00000000 */ nop -/* 0BEA3C 800BDE3C 45000004 */ bc1f .L800BDE50 -/* 0BEA40 800BDE40 00000000 */ nop -/* 0BEA44 800BDE44 1000000E */ b .L800BDE80 -/* 0BEA48 800BDE48 AFA00364 */ sw $zero, 0x364($sp) -/* 0BEA4C 800BDE4C 00000000 */ nop -.L800BDE50: -/* 0BEA50 800BDE50 46047183 */ div.s $f6, $f14, $f4 -/* 0BEA54 800BDE54 4459F800 */ cfc1 $t9, $31 -/* 0BEA58 800BDE58 00000000 */ nop -/* 0BEA5C 800BDE5C 37210003 */ ori $at, $t9, 3 -/* 0BEA60 800BDE60 38210002 */ xori $at, $at, 2 -/* 0BEA64 800BDE64 44C1F800 */ ctc1 $at, $31 -/* 0BEA68 800BDE68 00000000 */ nop -/* 0BEA6C 800BDE6C 460032A4 */ cvt.w.s $f10, $f6 -/* 0BEA70 800BDE70 440A5000 */ mfc1 $t2, $f10 -/* 0BEA74 800BDE74 44D9F800 */ ctc1 $t9, $31 -/* 0BEA78 800BDE78 AFAA0364 */ sw $t2, 0x364($sp) -/* 0BEA7C 800BDE7C 00000000 */ nop -.L800BDE80: -/* 0BEA80 800BDE80 3C018013 */ lui $at, %hi(D_8012A0A0) # $at, 0x8013 -/* 0BEA84 800BDE84 C428A0A0 */ lwc1 $f8, %lo(D_8012A0A0)($at) -/* 0BEA88 800BDE88 8FAB036C */ lw $t3, 0x36c($sp) -/* 0BEA8C 800BDE8C 4610403E */ c.le.s $f8, $f16 -/* 0BEA90 800BDE90 C7A400CC */ lwc1 $f4, 0xcc($sp) -/* 0BEA94 800BDE94 45000004 */ bc1f .L800BDEA8 -/* 0BEA98 800BDE98 00000000 */ nop -/* 0BEA9C 800BDE9C 1000000E */ b .L800BDED8 -/* 0BEAA0 800BDEA0 AFAB0358 */ sw $t3, 0x358($sp) -/* 0BEAA4 800BDEA4 00000000 */ nop -.L800BDEA8: -/* 0BEAA8 800BDEA8 46048183 */ div.s $f6, $f16, $f4 -/* 0BEAAC 800BDEAC 444CF800 */ cfc1 $t4, $31 -/* 0BEAB0 800BDEB0 00000000 */ nop -/* 0BEAB4 800BDEB4 35810003 */ ori $at, $t4, 3 -/* 0BEAB8 800BDEB8 38210002 */ xori $at, $at, 2 -/* 0BEABC 800BDEBC 44C1F800 */ ctc1 $at, $31 -/* 0BEAC0 800BDEC0 00000000 */ nop -/* 0BEAC4 800BDEC4 460032A4 */ cvt.w.s $f10, $f6 -/* 0BEAC8 800BDEC8 440D5000 */ mfc1 $t5, $f10 -/* 0BEACC 800BDECC 44CCF800 */ ctc1 $t4, $31 -/* 0BEAD0 800BDED0 25AE0001 */ addiu $t6, $t5, 1 -/* 0BEAD4 800BDED4 AFAE0358 */ sw $t6, 0x358($sp) -.L800BDED8: -/* 0BEAD8 800BDED8 3C018013 */ lui $at, %hi(D_8012A0A4) # $at, 0x8013 -/* 0BEADC 800BDEDC C428A0A4 */ lwc1 $f8, %lo(D_8012A0A4)($at) -/* 0BEAE0 800BDEE0 8FAF036C */ lw $t7, 0x36c($sp) -/* 0BEAE4 800BDEE4 4612403E */ c.le.s $f8, $f18 -/* 0BEAE8 800BDEE8 C7A400CC */ lwc1 $f4, 0xcc($sp) -/* 0BEAEC 800BDEEC 45000004 */ bc1f .L800BDF00 -/* 0BEAF0 800BDEF0 00000000 */ nop -/* 0BEAF4 800BDEF4 1000000E */ b .L800BDF30 -/* 0BEAF8 800BDEF8 AFAF0354 */ sw $t7, 0x354($sp) -/* 0BEAFC 800BDEFC 00000000 */ nop -.L800BDF00: -/* 0BEB00 800BDF00 46049183 */ div.s $f6, $f18, $f4 -/* 0BEB04 800BDF04 4458F800 */ cfc1 $t8, $31 -/* 0BEB08 800BDF08 00000000 */ nop -/* 0BEB0C 800BDF0C 37010003 */ ori $at, $t8, 3 -/* 0BEB10 800BDF10 38210002 */ xori $at, $at, 2 -/* 0BEB14 800BDF14 44C1F800 */ ctc1 $at, $31 -/* 0BEB18 800BDF18 00000000 */ nop -/* 0BEB1C 800BDF1C 460032A4 */ cvt.w.s $f10, $f6 -/* 0BEB20 800BDF20 44195000 */ mfc1 $t9, $f10 -/* 0BEB24 800BDF24 44D8F800 */ ctc1 $t8, $31 -/* 0BEB28 800BDF28 272A0001 */ addiu $t2, $t9, 1 -/* 0BEB2C 800BDF2C AFAA0354 */ sw $t2, 0x354($sp) -.L800BDF30: -/* 0BEB30 800BDF30 84CB0012 */ lh $t3, 0x12($a2) -/* 0BEB34 800BDF34 8FAC0368 */ lw $t4, 0x368($sp) -/* 0BEB38 800BDF38 8CE40004 */ lw $a0, 4($a3) -/* 0BEB3C 800BDF3C 016C1821 */ addu $v1, $t3, $t4 -/* 0BEB40 800BDF40 0064082A */ slt $at, $v1, $a0 -/* 0BEB44 800BDF44 14200005 */ bnez $at, .L800BDF5C -/* 0BEB48 800BDF48 00000000 */ nop -.L800BDF4C: -/* 0BEB4C 800BDF4C 00641823 */ subu $v1, $v1, $a0 -/* 0BEB50 800BDF50 0064082A */ slt $at, $v1, $a0 -/* 0BEB54 800BDF54 1020FFFD */ beqz $at, .L800BDF4C -/* 0BEB58 800BDF58 00000000 */ nop -.L800BDF5C: -/* 0BEB5C 800BDF5C 84CD0010 */ lh $t5, 0x10($a2) -/* 0BEB60 800BDF60 8FAE0364 */ lw $t6, 0x364($sp) -/* 0BEB64 800BDF64 8FAF0364 */ lw $t7, 0x364($sp) -/* 0BEB68 800BDF68 01AE1021 */ addu $v0, $t5, $t6 -/* 0BEB6C 800BDF6C 0044082A */ slt $at, $v0, $a0 -/* 0BEB70 800BDF70 14200006 */ bnez $at, .L800BDF8C -/* 0BEB74 800BDF74 8FB80354 */ lw $t8, 0x354($sp) -.L800BDF78: -/* 0BEB78 800BDF78 00441023 */ subu $v0, $v0, $a0 -/* 0BEB7C 800BDF7C 0044082A */ slt $at, $v0, $a0 -/* 0BEB80 800BDF80 1020FFFD */ beqz $at, .L800BDF78 -/* 0BEB84 800BDF84 00000000 */ nop -/* 0BEB88 800BDF88 8FB80354 */ lw $t8, 0x354($sp) -.L800BDF8C: -/* 0BEB8C 800BDF8C 01E0B025 */ move $s6, $t7 -/* 0BEB90 800BDF90 030F082A */ slt $at, $t8, $t7 -/* 0BEB94 800BDF94 14200076 */ bnez $at, .L800BE170 -/* 0BEB98 800BDF98 0000B825 */ move $s7, $zero -/* 0BEB9C 800BDF9C 8FAB036C */ lw $t3, 0x36c($sp) -/* 0BEBA0 800BDFA0 8FB90368 */ lw $t9, 0x368($sp) -/* 0BEBA4 800BDFA4 01EB0019 */ multu $t7, $t3 -/* 0BEBA8 800BDFA8 01195021 */ addu $t2, $t0, $t9 -/* 0BEBAC 800BDFAC 270E0001 */ addiu $t6, $t8, 1 -/* 0BEBB0 800BDFB0 3C1E800E */ lui $fp, %hi(D_800E3040) # $fp, 0x800e -/* 0BEBB4 800BDFB4 27DE3040 */ addiu $fp, %lo(D_800E3040) # addiu $fp, $fp, 0x3040 -/* 0BEBB8 800BDFB8 AFAE0090 */ sw $t6, 0x90($sp) -/* 0BEBBC 800BDFBC AFA2034C */ sw $v0, 0x34c($sp) -/* 0BEBC0 800BDFC0 AFA30350 */ sw $v1, 0x350($sp) -/* 0BEBC4 800BDFC4 AFB00370 */ sw $s0, 0x370($sp) -/* 0BEBC8 800BDFC8 03204025 */ move $t0, $t9 -/* 0BEBCC 800BDFCC 00006012 */ mflo $t4 -/* 0BEBD0 800BDFD0 014C6821 */ addu $t5, $t2, $t4 -/* 0BEBD4 800BDFD4 AFAD00A4 */ sw $t5, 0xa4($sp) -.L800BDFD8: -/* 0BEBD8 800BDFD8 8FA2034C */ lw $v0, 0x34c($sp) -/* 0BEBDC 800BDFDC 8FAB0358 */ lw $t3, 0x358($sp) -/* 0BEBE0 800BDFE0 00440019 */ multu $v0, $a0 -/* 0BEBE4 800BDFE4 8FA500A4 */ lw $a1, 0xa4($sp) -/* 0BEBE8 800BDFE8 00175040 */ sll $t2, $s7, 1 -/* 0BEBEC 800BDFEC 27AC00D8 */ addiu $t4, $sp, 0xd8 -/* 0BEBF0 800BDFF0 0168082A */ slt $at, $t3, $t0 -/* 0BEBF4 800BDFF4 00608025 */ move $s0, $v1 -/* 0BEBF8 800BDFF8 014C9821 */ addu $s3, $t2, $t4 -/* 0BEBFC 800BDFFC 01008825 */ move $s1, $t0 -/* 0BEC00 800BE000 25750001 */ addiu $s5, $t3, 1 -/* 0BEC04 800BE004 00A0A025 */ move $s4, $a1 -/* 0BEC08 800BE008 00007812 */ mflo $t7 -/* 0BEC0C 800BE00C 01E39021 */ addu $s2, $t7, $v1 -/* 0BEC10 800BE010 14200049 */ bnez $at, .L800BE138 -.L800BE014: -/* 0BEC14 800BE014 3C0D800E */ lui $t5, %hi(D_800E3044) # $t5, 0x800e -/* 0BEC18 800BE018 8DAD3044 */ lw $t5, %lo(D_800E3044)($t5) -/* 0BEC1C 800BE01C 0012C080 */ sll $t8, $s2, 2 -/* 0BEC20 800BE020 01B81821 */ addu $v1, $t5, $t8 -/* 0BEC24 800BE024 846E0002 */ lh $t6, 2($v1) -/* 0BEC28 800BE028 846A0000 */ lh $t2, ($v1) -/* 0BEC2C 800BE02C 8FC20000 */ lw $v0, ($fp) -/* 0BEC30 800BE030 000EC880 */ sll $t9, $t6, 2 -/* 0BEC34 800BE034 000A6080 */ sll $t4, $t2, 2 -/* 0BEC38 800BE038 004C5821 */ addu $t3, $v0, $t4 -/* 0BEC3C 800BE03C 00597821 */ addu $t7, $v0, $t9 -/* 0BEC40 800BE040 C5E80000 */ lwc1 $f8, ($t7) -/* 0BEC44 800BE044 C5640000 */ lwc1 $f4, ($t3) -/* 0BEC48 800BE048 C4EA0040 */ lwc1 $f10, 0x40($a3) -/* 0BEC4C 800BE04C 46044180 */ add.s $f6, $f8, $f4 -/* 0BEC50 800BE050 3C0D800E */ lui $t5, %hi(D_800E3188) # $t5, 0x800e -/* 0BEC54 800BE054 8DAD3188 */ lw $t5, %lo(D_800E3188)($t5) -/* 0BEC58 800BE058 460A3502 */ mul.s $f20, $f6, $f10 -/* 0BEC5C 800BE05C 19A0000C */ blez $t5, .L800BE090 -/* 0BEC60 800BE060 02202825 */ move $a1, $s1 -/* 0BEC64 800BE064 8FA40370 */ lw $a0, 0x370($sp) -/* 0BEC68 800BE068 0C02FBF1 */ jal func_800BEFC4 -/* 0BEC6C 800BE06C 02C03025 */ move $a2, $s6 -/* 0BEC70 800BE070 3C078013 */ lui $a3, %hi(D_80129FC8) # $a3, 0x8013 -/* 0BEC74 800BE074 3C18800E */ lui $t8, %hi(D_800E30D8) # $t8, 0x800e -/* 0BEC78 800BE078 8F1830D8 */ lw $t8, %lo(D_800E30D8)($t8) -/* 0BEC7C 800BE07C 8FAE00AC */ lw $t6, 0xac($sp) -/* 0BEC80 800BE080 24E79FC8 */ addiu $a3, %lo(D_80129FC8) # addiu $a3, $a3, -0x6038 -/* 0BEC84 800BE084 8CE40004 */ lw $a0, 4($a3) -/* 0BEC88 800BE088 4600A500 */ add.s $f20, $f20, $f0 -/* 0BEC8C 800BE08C 030E3021 */ addu $a2, $t8, $t6 -.L800BE090: -/* 0BEC90 800BE090 3C19800E */ lui $t9, %hi(D_800E3178) # $t9, 0x800e -/* 0BEC94 800BE094 8F393178 */ lw $t9, %lo(D_800E3178)($t9) -/* 0BEC98 800BE098 26310001 */ addiu $s1, $s1, 1 -/* 0BEC9C 800BE09C 03347821 */ addu $t7, $t9, $s4 -/* 0BECA0 800BE0A0 91E20000 */ lbu $v0, ($t7) -/* 0BECA4 800BE0A4 26F70001 */ addiu $s7, $s7, 1 -/* 0BECA8 800BE0A8 2841007F */ slti $at, $v0, 0x7f -/* 0BECAC 800BE0AC 10200008 */ beqz $at, .L800BE0D0 -/* 0BECB0 800BE0B0 00000000 */ nop -/* 0BECB4 800BE0B4 44822000 */ mtc1 $v0, $f4 -/* 0BECB8 800BE0B8 C4E80044 */ lwc1 $f8, 0x44($a3) -/* 0BECBC 800BE0BC 468021A0 */ cvt.s.w $f6, $f4 -/* 0BECC0 800BE0C0 46183282 */ mul.s $f10, $f6, $f24 -/* 0BECC4 800BE0C4 460A4100 */ add.s $f4, $f8, $f10 -/* 0BECC8 800BE0C8 4604A502 */ mul.s $f20, $f20, $f4 -/* 0BECCC 800BE0CC 00000000 */ nop -.L800BE0D0: -/* 0BECD0 800BE0D0 4616A182 */ mul.s $f6, $f20, $f22 -/* 0BECD4 800BE0D4 84CA0006 */ lh $t2, 6($a2) -/* 0BECD8 800BE0D8 26100001 */ addiu $s0, $s0, 1 -/* 0BECDC 800BE0DC 26730002 */ addiu $s3, $s3, 2 -/* 0BECE0 800BE0E0 444CF800 */ cfc1 $t4, $31 -/* 0BECE4 800BE0E4 26940001 */ addiu $s4, $s4, 1 -/* 0BECE8 800BE0E8 35810003 */ ori $at, $t4, 3 -/* 0BECEC 800BE0EC 38210002 */ xori $at, $at, 2 -/* 0BECF0 800BE0F0 44C1F800 */ ctc1 $at, $31 -/* 0BECF4 800BE0F4 0204082A */ slt $at, $s0, $a0 -/* 0BECF8 800BE0F8 46003224 */ cvt.w.s $f8, $f6 -/* 0BECFC 800BE0FC 26520001 */ addiu $s2, $s2, 1 -/* 0BED00 800BE100 44184000 */ mfc1 $t8, $f8 -/* 0BED04 800BE104 44CCF800 */ ctc1 $t4, $31 -/* 0BED08 800BE108 01587021 */ addu $t6, $t2, $t8 -/* 0BED0C 800BE10C 14200003 */ bnez $at, .L800BE11C -/* 0BED10 800BE110 A66EFFFE */ sh $t6, -2($s3) -/* 0BED14 800BE114 02048023 */ subu $s0, $s0, $a0 -/* 0BED18 800BE118 02449023 */ subu $s2, $s2, $a0 -.L800BE11C: -/* 0BED1C 800BE11C 16B1FFBD */ bne $s5, $s1, .L800BE014 -/* 0BED20 800BE120 00000000 */ nop -/* 0BED24 800BE124 8FA80368 */ lw $t0, 0x368($sp) -/* 0BED28 800BE128 8FA500A4 */ lw $a1, 0xa4($sp) -/* 0BED2C 800BE12C 8FA30350 */ lw $v1, 0x350($sp) -/* 0BED30 800BE130 8FA2034C */ lw $v0, 0x34c($sp) -/* 0BED34 800BE134 00000000 */ nop -.L800BE138: -/* 0BED38 800BE138 24420001 */ addiu $v0, $v0, 1 -/* 0BED3C 800BE13C 0044082A */ slt $at, $v0, $a0 -/* 0BED40 800BE140 14200002 */ bnez $at, .L800BE14C -/* 0BED44 800BE144 26D60001 */ addiu $s6, $s6, 1 -/* 0BED48 800BE148 00441023 */ subu $v0, $v0, $a0 -.L800BE14C: -/* 0BED4C 800BE14C 8FB9036C */ lw $t9, 0x36c($sp) -/* 0BED50 800BE150 8FAF0090 */ lw $t7, 0x90($sp) -/* 0BED54 800BE154 00B92821 */ addu $a1, $a1, $t9 -/* 0BED58 800BE158 AFA500A4 */ sw $a1, 0xa4($sp) -/* 0BED5C 800BE15C 15F6FF9E */ bne $t7, $s6, .L800BDFD8 -/* 0BED60 800BE160 AFA2034C */ sw $v0, 0x34c($sp) -/* 0BED64 800BE164 84C90008 */ lh $t1, 8($a2) -/* 0BED68 800BE168 8FB60364 */ lw $s6, 0x364($sp) -/* 0BED6C 800BE16C 0000B825 */ move $s7, $zero -.L800BE170: -/* 0BED70 800BE170 8FB80364 */ lw $t8, 0x364($sp) -/* 0BED74 800BE174 C7A600C8 */ lwc1 $f6, 0xc8($sp) -/* 0BED78 800BE178 44985000 */ mtc1 $t8, $f10 -/* 0BED7C 800BE17C 8FAC0358 */ lw $t4, 0x358($sp) -/* 0BED80 800BE180 46805120 */ cvt.s.w $f4, $f10 -/* 0BED84 800BE184 8FAB0368 */ lw $t3, 0x368($sp) -/* 0BED88 800BE188 46062202 */ mul.s $f8, $f4, $f6 -/* 0BED8C 800BE18C 018B6823 */ subu $t5, $t4, $t3 -/* 0BED90 800BE190 25AA0001 */ addiu $t2, $t5, 1 -/* 0BED94 800BE194 AFAA036C */ sw $t2, 0x36c($sp) -/* 0BED98 800BE198 444EF800 */ cfc1 $t6, $31 -/* 0BED9C 800BE19C 00000000 */ nop -/* 0BEDA0 800BE1A0 35C10003 */ ori $at, $t6, 3 -/* 0BEDA4 800BE1A4 38210002 */ xori $at, $at, 2 -/* 0BEDA8 800BE1A8 44C1F800 */ ctc1 $at, $31 -/* 0BEDAC 800BE1AC 00000000 */ nop -/* 0BEDB0 800BE1B0 460042A4 */ cvt.w.s $f10, $f8 -/* 0BEDB4 800BE1B4 440C5000 */ mfc1 $t4, $f10 -/* 0BEDB8 800BE1B8 44CEF800 */ ctc1 $t6, $31 -/* 0BEDBC 800BE1BC 8FAE0354 */ lw $t6, 0x354($sp) -/* 0BEDC0 800BE1C0 012C2821 */ addu $a1, $t1, $t4 -/* 0BEDC4 800BE1C4 00056C00 */ sll $t5, $a1, 0x10 -/* 0BEDC8 800BE1C8 030E082A */ slt $at, $t8, $t6 -/* 0BEDCC 800BE1CC 10200108 */ beqz $at, .L800BE5F0 -/* 0BEDD0 800BE1D0 000D2C03 */ sra $a1, $t5, 0x10 -/* 0BEDD4 800BE1D4 448B2000 */ mtc1 $t3, $f4 -/* 0BEDD8 800BE1D8 C7A800CC */ lwc1 $f8, 0xcc($sp) -/* 0BEDDC 800BE1DC 468021A0 */ cvt.s.w $f6, $f4 -/* 0BEDE0 800BE1E0 46083282 */ mul.s $f10, $f6, $f8 -/* 0BEDE4 800BE1E4 4459F800 */ cfc1 $t9, $31 -/* 0BEDE8 800BE1E8 00000000 */ nop -/* 0BEDEC 800BE1EC 37210003 */ ori $at, $t9, 3 -/* 0BEDF0 800BE1F0 38210002 */ xori $at, $at, 2 -/* 0BEDF4 800BE1F4 44C1F800 */ ctc1 $at, $31 -/* 0BEDF8 800BE1F8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0BEDFC 800BE1FC 46005124 */ cvt.w.s $f4, $f10 -/* 0BEE00 800BE200 4481F000 */ mtc1 $at, $f30 -/* 0BEE04 800BE204 440F2000 */ mfc1 $t7, $f4 -/* 0BEE08 800BE208 44D9F800 */ ctc1 $t9, $31 -/* 0BEE0C 800BE20C 000F6400 */ sll $t4, $t7, 0x10 -/* 0BEE10 800BE210 000C6C03 */ sra $t5, $t4, 0x10 -/* 0BEE14 800BE214 AFAD0098 */ sw $t5, 0x98($sp) -.L800BE218: -/* 0BEE18 800BE218 26C20001 */ addiu $v0, $s6, 1 -/* 0BEE1C 800BE21C 44823000 */ mtc1 $v0, $f6 -/* 0BEE20 800BE220 C7AA00C8 */ lwc1 $f10, 0xc8($sp) -/* 0BEE24 800BE224 46803220 */ cvt.s.w $f8, $f6 -/* 0BEE28 800BE228 3C0A800E */ lui $t2, %hi(D_800E30D8) # $t2, 0x800e -/* 0BEE2C 800BE22C 8D4A30D8 */ lw $t2, %lo(D_800E30D8)($t2) -/* 0BEE30 800BE230 460A4102 */ mul.s $f4, $f8, $f10 -/* 0BEE34 800BE234 8FB800AC */ lw $t8, 0xac($sp) -/* 0BEE38 800BE238 00000000 */ nop -/* 0BEE3C 800BE23C 01583021 */ addu $a2, $t2, $t8 -/* 0BEE40 800BE240 444EF800 */ cfc1 $t6, $31 -/* 0BEE44 800BE244 84CC0008 */ lh $t4, 8($a2) -/* 0BEE48 800BE248 35C10003 */ ori $at, $t6, 3 -/* 0BEE4C 800BE24C 38210002 */ xori $at, $at, 2 -/* 0BEE50 800BE250 44C1F800 */ ctc1 $at, $31 -/* 0BEE54 800BE254 84D80004 */ lh $t8, 4($a2) -/* 0BEE58 800BE258 460021A4 */ cvt.w.s $f6, $f4 -/* 0BEE5C 800BE25C 440F3000 */ mfc1 $t7, $f6 -/* 0BEE60 800BE260 44CEF800 */ ctc1 $t6, $31 -/* 0BEE64 800BE264 018FF021 */ addu $fp, $t4, $t7 -/* 0BEE68 800BE268 8FAE0098 */ lw $t6, 0x98($sp) -/* 0BEE6C 800BE26C 8FAF0358 */ lw $t7, 0x358($sp) -/* 0BEE70 800BE270 8FAC0368 */ lw $t4, 0x368($sp) -/* 0BEE74 800BE274 030E9821 */ addu $s3, $t8, $t6 -/* 0BEE78 800BE278 001E6C00 */ sll $t5, $fp, 0x10 -/* 0BEE7C 800BE27C 00135C00 */ sll $t3, $s3, 0x10 -/* 0BEE80 800BE280 018F082A */ slt $at, $t4, $t7 -/* 0BEE84 800BE284 000DF403 */ sra $fp, $t5, 0x10 -/* 0BEE88 800BE288 000B9C03 */ sra $s3, $t3, 0x10 -/* 0BEE8C 800BE28C 102000D2 */ beqz $at, .L800BE5D8 -/* 0BEE90 800BE290 01808825 */ move $s1, $t4 -/* 0BEE94 800BE294 8FB90364 */ lw $t9, 0x364($sp) -/* 0BEE98 800BE298 8FAF036C */ lw $t7, 0x36c($sp) -/* 0BEE9C 800BE29C 02D93023 */ subu $a2, $s6, $t9 -/* 0BEEA0 800BE2A0 00CF0019 */ multu $a2, $t7 -/* 0BEEA4 800BE2A4 00175080 */ sll $t2, $s7, 2 -/* 0BEEA8 800BE2A8 8FAD0374 */ lw $t5, 0x374($sp) -/* 0BEEAC 800BE2AC 01575021 */ addu $t2, $t2, $s7 -/* 0BEEB0 800BE2B0 000A5080 */ sll $t2, $t2, 2 -/* 0BEEB4 800BE2B4 01AA8021 */ addu $s0, $t5, $t2 -/* 0BEEB8 800BE2B8 24CA0001 */ addiu $t2, $a2, 1 -/* 0BEEBC 800BE2BC 018CC023 */ subu $t8, $t4, $t4 -/* 0BEEC0 800BE2C0 00187040 */ sll $t6, $t8, 1 -/* 0BEEC4 800BE2C4 AFA200A4 */ sw $v0, 0xa4($sp) -/* 0BEEC8 800BE2C8 27AB00D8 */ addiu $t3, $sp, 0xd8 -/* 0BEECC 800BE2CC C7A000CC */ lwc1 $f0, 0xcc($sp) -/* 0BEED0 800BE2D0 00003812 */ mflo $a3 -/* 0BEED4 800BE2D4 01CB1021 */ addu $v0, $t6, $t3 -/* 0BEED8 800BE2D8 00076840 */ sll $t5, $a3, 1 -/* 0BEEDC 800BE2DC 014F0019 */ multu $t2, $t7 -/* 0BEEE0 800BE2E0 460A0682 */ mul.s $f26, $f0, $f10 -/* 0BEEE4 800BE2E4 000C0823 */ negu $at, $t4 -/* 0BEEE8 800BE2E8 00015840 */ sll $t3, $at, 1 -/* 0BEEEC 800BE2EC 01A03825 */ move $a3, $t5 -/* 0BEEF0 800BE2F0 004DA021 */ addu $s4, $v0, $t5 -/* 0BEEF4 800BE2F4 000C7040 */ sll $t6, $t4, 1 -/* 0BEEF8 800BE2F8 01CBC821 */ addu $t9, $t6, $t3 -/* 0BEEFC 800BE2FC 27AD00D8 */ addiu $t5, $sp, 0xd8 -/* 0BEF00 800BE300 032D4821 */ addu $t1, $t9, $t5 -/* 0BEF04 800BE304 461AD702 */ mul.s $f28, $f26, $f26 -/* 0BEF08 800BE308 01271821 */ addu $v1, $t1, $a3 -/* 0BEF0C 800BE30C 00004012 */ mflo $t0 -/* 0BEF10 800BE310 0008C040 */ sll $t8, $t0, 1 -/* 0BEF14 800BE314 0058A821 */ addu $s5, $v0, $t8 -/* 0BEF18 800BE318 01382021 */ addu $a0, $t1, $t8 -.L800BE31C: -/* 0BEF1C 800BE31C 26360001 */ addiu $s6, $s1, 1 -/* 0BEF20 800BE320 44964000 */ mtc1 $s6, $f8 -/* 0BEF24 800BE324 C7A000CC */ lwc1 $f0, 0xcc($sp) -/* 0BEF28 800BE328 46804120 */ cvt.s.w $f4, $f8 -/* 0BEF2C 800BE32C 3C0A800E */ lui $t2, %hi(D_800E30D8) # $t2, 0x800e -/* 0BEF30 800BE330 8D4A30D8 */ lw $t2, %lo(D_800E30D8)($t2) -/* 0BEF34 800BE334 46002182 */ mul.s $f6, $f4, $f0 -/* 0BEF38 800BE338 8FAF00AC */ lw $t7, 0xac($sp) -/* 0BEF3C 800BE33C C7A200C8 */ lwc1 $f2, 0xc8($sp) -/* 0BEF40 800BE340 014FC021 */ addu $t8, $t2, $t7 -/* 0BEF44 800BE344 444EF800 */ cfc1 $t6, $31 -/* 0BEF48 800BE348 870C0004 */ lh $t4, 4($t8) -/* 0BEF4C 800BE34C 35C10003 */ ori $at, $t6, 3 -/* 0BEF50 800BE350 38210002 */ xori $at, $at, 2 -/* 0BEF54 800BE354 44C1F800 */ ctc1 $at, $31 -/* 0BEF58 800BE358 A6130000 */ sh $s3, ($s0) -/* 0BEF5C 800BE35C 460032A4 */ cvt.w.s $f10, $f6 -/* 0BEF60 800BE360 A6130006 */ sh $s3, 6($s0) -/* 0BEF64 800BE364 440D5000 */ mfc1 $t5, $f10 -/* 0BEF68 800BE368 44CEF800 */ ctc1 $t6, $31 -/* 0BEF6C 800BE36C 018D9021 */ addu $s2, $t4, $t5 -/* 0BEF70 800BE370 00125400 */ sll $t2, $s2, 0x10 -/* 0BEF74 800BE374 000A9403 */ sra $s2, $t2, 0x10 -/* 0BEF78 800BE378 A612000C */ sh $s2, 0xc($s0) -/* 0BEF7C 800BE37C 86980000 */ lh $t8, ($s4) -/* 0BEF80 800BE380 00000000 */ nop -/* 0BEF84 800BE384 A6180002 */ sh $t8, 2($s0) -/* 0BEF88 800BE388 86AE0000 */ lh $t6, ($s5) -/* 0BEF8C 800BE38C 86020002 */ lh $v0, 2($s0) -/* 0BEF90 800BE390 A60E0008 */ sh $t6, 8($s0) -/* 0BEF94 800BE394 846B0002 */ lh $t3, 2($v1) -/* 0BEF98 800BE398 860D0008 */ lh $t5, 8($s0) -/* 0BEF9C 800BE39C A60B000E */ sh $t3, 0xe($s0) -/* 0BEFA0 800BE3A0 8619000E */ lh $t9, 0xe($s0) -/* 0BEFA4 800BE3A4 004D5023 */ subu $t2, $v0, $t5 -/* 0BEFA8 800BE3A8 00596023 */ subu $t4, $v0, $t9 -/* 0BEFAC 800BE3AC 448C4000 */ mtc1 $t4, $f8 -/* 0BEFB0 800BE3B0 448A3000 */ mtc1 $t2, $f6 -/* 0BEFB4 800BE3B4 46804120 */ cvt.s.w $f4, $f8 -/* 0BEFB8 800BE3B8 A6050004 */ sh $a1, 4($s0) -/* 0BEFBC 800BE3BC A61E000A */ sh $fp, 0xa($s0) -/* 0BEFC0 800BE3C0 46022502 */ mul.s $f20, $f4, $f2 -/* 0BEFC4 800BE3C4 A6050010 */ sh $a1, 0x10($s0) -/* 0BEFC8 800BE3C8 A7A50332 */ sh $a1, 0x332($sp) -/* 0BEFCC 800BE3CC AFA40074 */ sw $a0, 0x74($sp) -/* 0BEFD0 800BE3D0 468032A0 */ cvt.s.w $f10, $f6 -/* 0BEFD4 800BE3D4 AFA30078 */ sw $v1, 0x78($sp) -/* 0BEFD8 800BE3D8 46005582 */ mul.s $f22, $f10, $f0 -/* 0BEFDC 800BE3DC 00000000 */ nop -/* 0BEFE0 800BE3E0 4614A202 */ mul.s $f8, $f20, $f20 -/* 0BEFE4 800BE3E4 00000000 */ nop -/* 0BEFE8 800BE3E8 4616B182 */ mul.s $f6, $f22, $f22 -/* 0BEFEC 800BE3EC 461C4100 */ add.s $f4, $f8, $f28 -/* 0BEFF0 800BE3F0 0C0326B4 */ jal sqrtf -/* 0BEFF4 800BE3F4 46062300 */ add.s $f12, $f4, $f6 -/* 0BEFF8 800BE3F8 44805000 */ mtc1 $zero, $f10 -/* 0BEFFC 800BE3FC 8FA30078 */ lw $v1, 0x78($sp) -/* 0BF000 800BE400 4600503C */ c.lt.s $f10, $f0 -/* 0BF004 800BE404 8FA40074 */ lw $a0, 0x74($sp) -/* 0BF008 800BE408 87A50332 */ lh $a1, 0x332($sp) -/* 0BF00C 800BE40C 4500001E */ bc1f .L800BE488 -/* 0BF010 800BE410 00000000 */ nop -/* 0BF014 800BE414 4600F603 */ div.s $f24, $f30, $f0 -/* 0BF018 800BE418 8FAF0378 */ lw $t7, 0x378($sp) -/* 0BF01C 800BE41C 0017C100 */ sll $t8, $s7, 4 -/* 0BF020 800BE420 01F81021 */ addu $v0, $t7, $t8 -/* 0BF024 800BE424 26F70001 */ addiu $s7, $s7, 1 -/* 0BF028 800BE428 26100014 */ addiu $s0, $s0, 0x14 -/* 0BF02C 800BE42C 4618A082 */ mul.s $f2, $f20, $f24 -/* 0BF030 800BE430 00000000 */ nop -/* 0BF034 800BE434 4618D382 */ mul.s $f14, $f26, $f24 -/* 0BF038 800BE438 E4420000 */ swc1 $f2, ($v0) -/* 0BF03C 800BE43C 4618B302 */ mul.s $f12, $f22, $f24 -/* 0BF040 800BE440 E44E0004 */ swc1 $f14, 4($v0) -/* 0BF044 800BE444 E44C0008 */ swc1 $f12, 8($v0) -/* 0BF048 800BE448 860EFFEC */ lh $t6, -0x14($s0) -/* 0BF04C 800BE44C 860BFFEE */ lh $t3, -0x12($s0) -/* 0BF050 800BE450 448E4000 */ mtc1 $t6, $f8 -/* 0BF054 800BE454 448B5000 */ mtc1 $t3, $f10 -/* 0BF058 800BE458 46804120 */ cvt.s.w $f4, $f8 -/* 0BF05C 800BE45C 8619FFF0 */ lh $t9, -0x10($s0) -/* 0BF060 800BE460 46022182 */ mul.s $f6, $f4, $f2 -/* 0BF064 800BE464 46805220 */ cvt.s.w $f8, $f10 -/* 0BF068 800BE468 460E4102 */ mul.s $f4, $f8, $f14 -/* 0BF06C 800BE46C 44994000 */ mtc1 $t9, $f8 -/* 0BF070 800BE470 46043280 */ add.s $f10, $f6, $f4 -/* 0BF074 800BE474 468041A0 */ cvt.s.w $f6, $f8 -/* 0BF078 800BE478 46066102 */ mul.s $f4, $f12, $f6 -/* 0BF07C 800BE47C 460A2200 */ add.s $f8, $f4, $f10 -/* 0BF080 800BE480 46004187 */ neg.s $f6, $f8 -/* 0BF084 800BE484 E446000C */ swc1 $f6, 0xc($v0) -.L800BE488: -/* 0BF088 800BE488 A6120000 */ sh $s2, ($s0) -/* 0BF08C 800BE48C A6130006 */ sh $s3, 6($s0) -/* 0BF090 800BE490 A612000C */ sh $s2, 0xc($s0) -/* 0BF094 800BE494 868C0002 */ lh $t4, 2($s4) -/* 0BF098 800BE498 00000000 */ nop -/* 0BF09C 800BE49C A60C0002 */ sh $t4, 2($s0) -/* 0BF0A0 800BE4A0 86AD0000 */ lh $t5, ($s5) -/* 0BF0A4 800BE4A4 860E0002 */ lh $t6, 2($s0) -/* 0BF0A8 800BE4A8 A60D0008 */ sh $t5, 8($s0) -/* 0BF0AC 800BE4AC 848A0002 */ lh $t2, 2($a0) -/* 0BF0B0 800BE4B0 860F0008 */ lh $t7, 8($s0) -/* 0BF0B4 800BE4B4 A60A000E */ sh $t2, 0xe($s0) -/* 0BF0B8 800BE4B8 8602000E */ lh $v0, 0xe($s0) -/* 0BF0BC 800BE4BC A6050004 */ sh $a1, 4($s0) -/* 0BF0C0 800BE4C0 01E2C023 */ subu $t8, $t7, $v0 -/* 0BF0C4 800BE4C4 44982000 */ mtc1 $t8, $f4 -/* 0BF0C8 800BE4C8 A61E000A */ sh $fp, 0xa($s0) -/* 0BF0CC 800BE4CC 468022A0 */ cvt.s.w $f10, $f4 -/* 0BF0D0 800BE4D0 A61E0010 */ sh $fp, 0x10($s0) -/* 0BF0D4 800BE4D4 C7A800C8 */ lwc1 $f8, 0xc8($sp) -/* 0BF0D8 800BE4D8 01C25823 */ subu $t3, $t6, $v0 -/* 0BF0DC 800BE4DC 448B3000 */ mtc1 $t3, $f6 -/* 0BF0E0 800BE4E0 46085502 */ mul.s $f20, $f10, $f8 -/* 0BF0E4 800BE4E4 C7AA00CC */ lwc1 $f10, 0xcc($sp) -/* 0BF0E8 800BE4E8 A7A50332 */ sh $a1, 0x332($sp) -/* 0BF0EC 800BE4EC AFA40074 */ sw $a0, 0x74($sp) -/* 0BF0F0 800BE4F0 46803120 */ cvt.s.w $f4, $f6 -/* 0BF0F4 800BE4F4 AFA30078 */ sw $v1, 0x78($sp) -/* 0BF0F8 800BE4F8 460A2582 */ mul.s $f22, $f4, $f10 -/* 0BF0FC 800BE4FC 00000000 */ nop -/* 0BF100 800BE500 4614A202 */ mul.s $f8, $f20, $f20 -/* 0BF104 800BE504 00000000 */ nop -/* 0BF108 800BE508 4616B102 */ mul.s $f4, $f22, $f22 -/* 0BF10C 800BE50C 461C4180 */ add.s $f6, $f8, $f28 -/* 0BF110 800BE510 0C0326B4 */ jal sqrtf -/* 0BF114 800BE514 46043300 */ add.s $f12, $f6, $f4 -/* 0BF118 800BE518 44805000 */ mtc1 $zero, $f10 -/* 0BF11C 800BE51C 8FA30078 */ lw $v1, 0x78($sp) -/* 0BF120 800BE520 4600503C */ c.lt.s $f10, $f0 -/* 0BF124 800BE524 8FA40074 */ lw $a0, 0x74($sp) -/* 0BF128 800BE528 87A50332 */ lh $a1, 0x332($sp) -/* 0BF12C 800BE52C 4500001F */ bc1f .L800BE5AC -/* 0BF130 800BE530 00129C00 */ sll $s3, $s2, 0x10 -/* 0BF134 800BE534 00000000 */ nop -/* 0BF138 800BE538 4600F603 */ div.s $f24, $f30, $f0 -/* 0BF13C 800BE53C 8FB90378 */ lw $t9, 0x378($sp) -/* 0BF140 800BE540 00176100 */ sll $t4, $s7, 4 -/* 0BF144 800BE544 032C1021 */ addu $v0, $t9, $t4 -/* 0BF148 800BE548 26F70001 */ addiu $s7, $s7, 1 -/* 0BF14C 800BE54C 26100014 */ addiu $s0, $s0, 0x14 -/* 0BF150 800BE550 4618A082 */ mul.s $f2, $f20, $f24 -/* 0BF154 800BE554 00000000 */ nop -/* 0BF158 800BE558 4618D382 */ mul.s $f14, $f26, $f24 -/* 0BF15C 800BE55C E4420000 */ swc1 $f2, ($v0) -/* 0BF160 800BE560 4618B302 */ mul.s $f12, $f22, $f24 -/* 0BF164 800BE564 E44E0004 */ swc1 $f14, 4($v0) -/* 0BF168 800BE568 E44C0008 */ swc1 $f12, 8($v0) -/* 0BF16C 800BE56C 860DFFEC */ lh $t5, -0x14($s0) -/* 0BF170 800BE570 860AFFEE */ lh $t2, -0x12($s0) -/* 0BF174 800BE574 448D4000 */ mtc1 $t5, $f8 -/* 0BF178 800BE578 448A5000 */ mtc1 $t2, $f10 -/* 0BF17C 800BE57C 468041A0 */ cvt.s.w $f6, $f8 -/* 0BF180 800BE580 860FFFF0 */ lh $t7, -0x10($s0) -/* 0BF184 800BE584 46023102 */ mul.s $f4, $f6, $f2 -/* 0BF188 800BE588 46805220 */ cvt.s.w $f8, $f10 -/* 0BF18C 800BE58C 460E4182 */ mul.s $f6, $f8, $f14 -/* 0BF190 800BE590 448F4000 */ mtc1 $t7, $f8 -/* 0BF194 800BE594 46062280 */ add.s $f10, $f4, $f6 -/* 0BF198 800BE598 46804120 */ cvt.s.w $f4, $f8 -/* 0BF19C 800BE59C 46046182 */ mul.s $f6, $f12, $f4 -/* 0BF1A0 800BE5A0 460A3200 */ add.s $f8, $f6, $f10 -/* 0BF1A4 800BE5A4 46004107 */ neg.s $f4, $f8 -/* 0BF1A8 800BE5A8 E444000C */ swc1 $f4, 0xc($v0) -.L800BE5AC: -/* 0BF1AC 800BE5AC 8FAE0358 */ lw $t6, 0x358($sp) -/* 0BF1B0 800BE5B0 0013C403 */ sra $t8, $s3, 0x10 -/* 0BF1B4 800BE5B4 02C08825 */ move $s1, $s6 -/* 0BF1B8 800BE5B8 26940002 */ addiu $s4, $s4, 2 -/* 0BF1BC 800BE5BC 26B50002 */ addiu $s5, $s5, 2 -/* 0BF1C0 800BE5C0 24630002 */ addiu $v1, $v1, 2 -/* 0BF1C4 800BE5C4 24840002 */ addiu $a0, $a0, 2 -/* 0BF1C8 800BE5C8 16CEFF54 */ bne $s6, $t6, .L800BE31C -/* 0BF1CC 800BE5CC 03009825 */ move $s3, $t8 -/* 0BF1D0 800BE5D0 8FA200A4 */ lw $v0, 0xa4($sp) -/* 0BF1D4 800BE5D4 00000000 */ nop -.L800BE5D8: -/* 0BF1D8 800BE5D8 8FB90354 */ lw $t9, 0x354($sp) -/* 0BF1DC 800BE5DC 001E2C00 */ sll $a1, $fp, 0x10 -/* 0BF1E0 800BE5E0 00055C03 */ sra $t3, $a1, 0x10 -/* 0BF1E4 800BE5E4 0040B025 */ move $s6, $v0 -/* 0BF1E8 800BE5E8 1459FF0B */ bne $v0, $t9, .L800BE218 -/* 0BF1EC 800BE5EC 01602825 */ move $a1, $t3 -.L800BE5F0: -/* 0BF1F0 800BE5F0 8FBF006C */ lw $ra, 0x6c($sp) -/* 0BF1F4 800BE5F4 02E01025 */ move $v0, $s7 -/* 0BF1F8 800BE5F8 8FB70064 */ lw $s7, 0x64($sp) -/* 0BF1FC 800BE5FC C7B50018 */ lwc1 $f21, 0x18($sp) -/* 0BF200 800BE600 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 0BF204 800BE604 C7B70020 */ lwc1 $f23, 0x20($sp) -/* 0BF208 800BE608 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 0BF20C 800BE60C C7B90028 */ lwc1 $f25, 0x28($sp) -/* 0BF210 800BE610 C7B8002C */ lwc1 $f24, 0x2c($sp) -/* 0BF214 800BE614 C7BB0030 */ lwc1 $f27, 0x30($sp) -/* 0BF218 800BE618 C7BA0034 */ lwc1 $f26, 0x34($sp) -/* 0BF21C 800BE61C C7BD0038 */ lwc1 $f29, 0x38($sp) -/* 0BF220 800BE620 C7BC003C */ lwc1 $f28, 0x3c($sp) -/* 0BF224 800BE624 C7BF0040 */ lwc1 $f31, 0x40($sp) -/* 0BF228 800BE628 C7BE0044 */ lwc1 $f30, 0x44($sp) -/* 0BF22C 800BE62C 8FB00048 */ lw $s0, 0x48($sp) -/* 0BF230 800BE630 8FB1004C */ lw $s1, 0x4c($sp) -/* 0BF234 800BE634 8FB20050 */ lw $s2, 0x50($sp) -/* 0BF238 800BE638 8FB30054 */ lw $s3, 0x54($sp) -/* 0BF23C 800BE63C 8FB40058 */ lw $s4, 0x58($sp) -/* 0BF240 800BE640 8FB5005C */ lw $s5, 0x5c($sp) -/* 0BF244 800BE644 8FB60060 */ lw $s6, 0x60($sp) -/* 0BF248 800BE648 8FBE0068 */ lw $fp, 0x68($sp) -/* 0BF24C 800BE64C 03E00008 */ jr $ra -/* 0BF250 800BE650 27BD0370 */ addiu $sp, $sp, 0x370 - -glabel func_800BE654 -/* 0BF254 800BE654 27BDFF18 */ addiu $sp, $sp, -0xe8 -/* 0BF258 800BE658 3C0E800E */ lui $t6, %hi(D_800E3040) # $t6, 0x800e -/* 0BF25C 800BE65C 8DCE3040 */ lw $t6, %lo(D_800E3040)($t6) -/* 0BF260 800BE660 E7B80024 */ swc1 $f24, 0x24($sp) -/* 0BF264 800BE664 4486C000 */ mtc1 $a2, $f24 -/* 0BF268 800BE668 00803025 */ move $a2, $a0 -/* 0BF26C 800BE66C AFBF002C */ sw $ra, 0x2c($sp) -/* 0BF270 800BE670 E7B90020 */ swc1 $f25, 0x20($sp) -/* 0BF274 800BE674 E7B70018 */ swc1 $f23, 0x18($sp) -/* 0BF278 800BE678 E7B6001C */ swc1 $f22, 0x1c($sp) -/* 0BF27C 800BE67C E7B50010 */ swc1 $f21, 0x10($sp) -/* 0BF280 800BE680 E7B40014 */ swc1 $f20, 0x14($sp) -/* 0BF284 800BE684 AFA400E8 */ sw $a0, 0xe8($sp) -/* 0BF288 800BE688 AFA500EC */ sw $a1, 0xec($sp) -/* 0BF28C 800BE68C 24080080 */ li $t0, 128 -/* 0BF290 800BE690 11C001FE */ beqz $t6, .L800BEE8C -/* 0BF294 800BE694 00005025 */ move $t2, $zero -/* 0BF298 800BE698 048001FC */ bltz $a0, .L800BEE8C -/* 0BF29C 800BE69C 3C0F8013 */ lui $t7, %hi(D_8012A0E0) # $t7, 0x8013 -/* 0BF2A0 800BE6A0 8DEFA0E0 */ lw $t7, %lo(D_8012A0E0)($t7) -/* 0BF2A4 800BE6A4 3C0500FF */ li $a1, 0x00FF0000 # 0.000000 -/* 0BF2A8 800BE6A8 008F082A */ slt $at, $a0, $t7 -/* 0BF2AC 800BE6AC 102001F7 */ beqz $at, .L800BEE8C -/* 0BF2B0 800BE6B0 3C048013 */ lui $a0, %hi(D_80129FE8) # $a0, 0x8013 -/* 0BF2B4 800BE6B4 8C849FE8 */ lw $a0, %lo(D_80129FE8)($a0) -/* 0BF2B8 800BE6B8 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 0BF2BC 800BE6BC 0004C043 */ sra $t8, $a0, 1 -/* 0BF2C0 800BE6C0 2704000E */ addiu $a0, $t8, 0xe -/* 0BF2C4 800BE6C4 AFA600E8 */ sw $a2, 0xe8($sp) -/* 0BF2C8 800BE6C8 0C01C327 */ jal func_80070C9C -/* 0BF2CC 800BE6CC A7A800A6 */ sh $t0, 0xa6($sp) -/* 0BF2D0 800BE6D0 8FBF00E8 */ lw $ra, 0xe8($sp) -/* 0BF2D4 800BE6D4 3C0D800E */ lui $t5, %hi(D_800E30D8) # $t5, 0x800e -/* 0BF2D8 800BE6D8 25AD30D8 */ addiu $t5, %lo(D_800E30D8) # addiu $t5, $t5, 0x30d8 -/* 0BF2DC 800BE6DC 001F48C0 */ sll $t1, $ra, 3 -/* 0BF2E0 800BE6E0 8DB90000 */ lw $t9, ($t5) -/* 0BF2E4 800BE6E4 013F4823 */ subu $t1, $t1, $ra -/* 0BF2E8 800BE6E8 00094880 */ sll $t1, $t1, 2 -/* 0BF2EC 800BE6EC 03297021 */ addu $t6, $t9, $t1 -/* 0BF2F0 800BE6F0 85CF0006 */ lh $t7, 6($t6) -/* 0BF2F4 800BE6F4 87A800A6 */ lh $t0, 0xa6($sp) -/* 0BF2F8 800BE6F8 24180001 */ li $t8, 1 -/* 0BF2FC 800BE6FC A0400002 */ sb $zero, 2($v0) -/* 0BF300 800BE700 A0580003 */ sb $t8, 3($v0) -/* 0BF304 800BE704 A4400004 */ sh $zero, 4($v0) -/* 0BF308 800BE708 3C198013 */ lui $t9, %hi(D_80129FE8) # $t9, 0x8013 -/* 0BF30C 800BE70C A44F0000 */ sh $t7, ($v0) -/* 0BF310 800BE710 8F399FE8 */ lw $t9, %lo(D_80129FE8)($t9) -/* 0BF314 800BE714 3C0E800E */ lui $t6, %hi(D_800E317C) # $t6, 0x800e -/* 0BF318 800BE718 A4590006 */ sh $t9, 6($v0) -/* 0BF31C 800BE71C 8DCE317C */ lw $t6, %lo(D_800E317C)($t6) -/* 0BF320 800BE720 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0BF324 800BE724 03EE0019 */ multu $ra, $t6 -/* 0BF328 800BE728 44816000 */ mtc1 $at, $f12 -/* 0BF32C 800BE72C 3C018013 */ lui $at, %hi(D_8012A0BC) # $at, 0x8013 -/* 0BF330 800BE730 C434A0BC */ lwc1 $f20, %lo(D_8012A0BC)($at) -/* 0BF334 800BE734 3C018013 */ lui $at, %hi(D_8012A0B8) # $at, 0x8013 -/* 0BF338 800BE738 C436A0B8 */ lwc1 $f22, %lo(D_8012A0B8)($at) -/* 0BF33C 800BE73C 3C018013 */ lui $at, %hi(D_8012A00C) # $at, 0x8013 -/* 0BF340 800BE740 C424A00C */ lwc1 $f4, %lo(D_8012A00C)($at) -/* 0BF344 800BE744 3C0142FE */ li $at, 0x42FE0000 # 127.000000 -/* 0BF348 800BE748 3C188013 */ lui $t8, %hi(D_80129FF0) # $t8, 0x8013 -/* 0BF34C 800BE74C 44814000 */ mtc1 $at, $f8 -/* 0BF350 800BE750 8F189FF0 */ lw $t8, %lo(D_80129FF0)($t8) -/* 0BF354 800BE754 46046181 */ sub.s $f6, $f12, $f4 -/* 0BF358 800BE758 00007812 */ mflo $t7 -/* 0BF35C 800BE75C 00405025 */ move $t2, $v0 -/* 0BF360 800BE760 AFAF00B0 */ sw $t7, 0xb0($sp) -/* 0BF364 800BE764 1300000B */ beqz $t8, .L800BE794 -/* 0BF368 800BE768 46083083 */ div.s $f2, $f6, $f8 -/* 0BF36C 800BE76C 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 0BF370 800BE770 44810000 */ mtc1 $at, $f0 -/* 0BF374 800BE774 3C0C8013 */ lui $t4, %hi(D_80129FC8) # $t4, 0x8013 -/* 0BF378 800BE778 4600A502 */ mul.s $f20, $f20, $f0 -/* 0BF37C 800BE77C 8D8C9FC8 */ lw $t4, %lo(D_80129FC8)($t4) -/* 0BF380 800BE780 00000000 */ nop -/* 0BF384 800BE784 000CC840 */ sll $t9, $t4, 1 -/* 0BF388 800BE788 4600B582 */ mul.s $f22, $f22, $f0 -/* 0BF38C 800BE78C 10000005 */ b .L800BE7A4 -/* 0BF390 800BE790 272C0001 */ addiu $t4, $t9, 1 -.L800BE794: -/* 0BF394 800BE794 3C0C8013 */ lui $t4, %hi(D_80129FC8) # $t4, 0x8013 -/* 0BF398 800BE798 8D8C9FC8 */ lw $t4, %lo(D_80129FC8)($t4) -/* 0BF39C 800BE79C 00000000 */ nop -/* 0BF3A0 800BE7A0 258C0001 */ addiu $t4, $t4, 1 -.L800BE7A4: -/* 0BF3A4 800BE7A4 8DAE0000 */ lw $t6, ($t5) -/* 0BF3A8 800BE7A8 C7B000EC */ lwc1 $f16, 0xec($sp) -/* 0BF3AC 800BE7AC 01C93821 */ addu $a3, $t6, $t1 -/* 0BF3B0 800BE7B0 84EF0004 */ lh $t7, 4($a3) -/* 0BF3B4 800BE7B4 44807000 */ mtc1 $zero, $f14 -/* 0BF3B8 800BE7B8 448F5000 */ mtc1 $t7, $f10 -/* 0BF3BC 800BE7BC 3C018013 */ lui $at, %hi(D_8012A0A0) # $at, 0x8013 -/* 0BF3C0 800BE7C0 46805120 */ cvt.s.w $f4, $f10 -/* 0BF3C4 800BE7C4 46048401 */ sub.s $f16, $f16, $f4 -/* 0BF3C8 800BE7C8 460E803C */ c.lt.s $f16, $f14 -/* 0BF3CC 800BE7CC 00000000 */ nop -/* 0BF3D0 800BE7D0 45000003 */ bc1f .L800BE7E0 -/* 0BF3D4 800BE7D4 00000000 */ nop -/* 0BF3D8 800BE7D8 1000000D */ b .L800BE810 -/* 0BF3DC 800BE7DC 46007406 */ mov.s $f16, $f14 -.L800BE7E0: -/* 0BF3E0 800BE7E0 C420A0A0 */ lwc1 $f0, %lo(D_8012A0A0)($at) -/* 0BF3E4 800BE7E4 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0BF3E8 800BE7E8 4610003E */ c.le.s $f0, $f16 -/* 0BF3EC 800BE7EC E7B000EC */ swc1 $f16, 0xec($sp) -/* 0BF3F0 800BE7F0 45000007 */ bc1f .L800BE810 -/* 0BF3F4 800BE7F4 00000000 */ nop -/* 0BF3F8 800BE7F8 44813000 */ mtc1 $at, $f6 -/* 0BF3FC 800BE7FC 00000000 */ nop -/* 0BF400 800BE800 46060201 */ sub.s $f8, $f0, $f6 -/* 0BF404 800BE804 E7A800EC */ swc1 $f8, 0xec($sp) -/* 0BF408 800BE808 C7B000EC */ lwc1 $f16, 0xec($sp) -/* 0BF40C 800BE80C 00000000 */ nop -.L800BE810: -/* 0BF410 800BE810 84F80008 */ lh $t8, 8($a3) -/* 0BF414 800BE814 3C018013 */ lui $at, %hi(D_8012A0A4) # $at, 0x8013 -/* 0BF418 800BE818 44985000 */ mtc1 $t8, $f10 -/* 0BF41C 800BE81C 46168203 */ div.s $f8, $f16, $f22 -/* 0BF420 800BE820 46805120 */ cvt.s.w $f4, $f10 -/* 0BF424 800BE824 4604C601 */ sub.s $f24, $f24, $f4 -/* 0BF428 800BE828 460EC03C */ c.lt.s $f24, $f14 -/* 0BF42C 800BE82C 00000000 */ nop -/* 0BF430 800BE830 45000003 */ bc1f .L800BE840 -/* 0BF434 800BE834 00000000 */ nop -/* 0BF438 800BE838 1000000A */ b .L800BE864 -/* 0BF43C 800BE83C 46007606 */ mov.s $f24, $f14 -.L800BE840: -/* 0BF440 800BE840 C420A0A4 */ lwc1 $f0, %lo(D_8012A0A4)($at) -/* 0BF444 800BE844 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0BF448 800BE848 4618003E */ c.le.s $f0, $f24 -/* 0BF44C 800BE84C 00000000 */ nop -/* 0BF450 800BE850 45000004 */ bc1f .L800BE864 -/* 0BF454 800BE854 00000000 */ nop -/* 0BF458 800BE858 44813000 */ mtc1 $at, $f6 -/* 0BF45C 800BE85C 00000000 */ nop -/* 0BF460 800BE860 46060601 */ sub.s $f24, $f0, $f6 -.L800BE864: -/* 0BF464 800BE864 4459F800 */ cfc1 $t9, $31 -/* 0BF468 800BE868 3C038013 */ lui $v1, %hi(D_80129FCC) # $v1, 0x8013 -/* 0BF46C 800BE86C 37210003 */ ori $at, $t9, 3 -/* 0BF470 800BE870 38210002 */ xori $at, $at, 2 -/* 0BF474 800BE874 44C1F800 */ ctc1 $at, $31 -/* 0BF478 800BE878 00000000 */ nop -/* 0BF47C 800BE87C 460042A4 */ cvt.w.s $f10, $f8 -/* 0BF480 800BE880 44D9F800 */ ctc1 $t9, $31 -/* 0BF484 800BE884 44055000 */ mfc1 $a1, $f10 -/* 0BF488 800BE888 4614C103 */ div.s $f4, $f24, $f20 -/* 0BF48C 800BE88C 44854000 */ mtc1 $a1, $f8 -/* 0BF490 800BE890 AFA500C4 */ sw $a1, 0xc4($sp) -/* 0BF494 800BE894 A45F000C */ sh $ra, 0xc($v0) -/* 0BF498 800BE898 A4450008 */ sh $a1, 8($v0) -/* 0BF49C 800BE89C 27BF0050 */ addiu $ra, $sp, 0x50 -/* 0BF4A0 800BE8A0 444EF800 */ cfc1 $t6, $31 -/* 0BF4A4 800BE8A4 00000000 */ nop -/* 0BF4A8 800BE8A8 35C10003 */ ori $at, $t6, 3 -/* 0BF4AC 800BE8AC 38210002 */ xori $at, $at, 2 -/* 0BF4B0 800BE8B0 44C1F800 */ ctc1 $at, $31 -/* 0BF4B4 800BE8B4 00000000 */ nop -/* 0BF4B8 800BE8B8 460021A4 */ cvt.w.s $f6, $f4 -/* 0BF4BC 800BE8BC 440B3000 */ mfc1 $t3, $f6 -/* 0BF4C0 800BE8C0 44CEF800 */ ctc1 $t6, $31 -/* 0BF4C4 800BE8C4 448B3000 */ mtc1 $t3, $f6 -/* 0BF4C8 800BE8C8 468042A0 */ cvt.s.w $f10, $f8 -/* 0BF4CC 800BE8CC A44B000A */ sh $t3, 0xa($v0) -/* 0BF4D0 800BE8D0 8DAF0000 */ lw $t7, ($t5) -/* 0BF4D4 800BE8D4 46165102 */ mul.s $f4, $f10, $f22 -/* 0BF4D8 800BE8D8 01E93821 */ addu $a3, $t7, $t1 -/* 0BF4DC 800BE8DC 84F80012 */ lh $t8, 0x12($a3) -/* 0BF4E0 800BE8E0 8FB900C4 */ lw $t9, 0xc4($sp) -/* 0BF4E4 800BE8E4 46803220 */ cvt.s.w $f8, $f6 -/* 0BF4E8 800BE8E8 8C639FCC */ lw $v1, %lo(D_80129FCC)($v1) -/* 0BF4EC 800BE8EC 03192021 */ addu $a0, $t8, $t9 -/* 0BF4F0 800BE8F0 46144282 */ mul.s $f10, $f8, $f20 -/* 0BF4F4 800BE8F4 0083082A */ slt $at, $a0, $v1 -/* 0BF4F8 800BE8F8 27AD0080 */ addiu $t5, $sp, 0x80 -/* 0BF4FC 800BE8FC 46048401 */ sub.s $f16, $f16, $f4 -/* 0BF500 800BE900 14200005 */ bnez $at, .L800BE918 -/* 0BF504 800BE904 460AC601 */ sub.s $f24, $f24, $f10 -.L800BE908: -/* 0BF508 800BE908 00832023 */ subu $a0, $a0, $v1 -/* 0BF50C 800BE90C 0083082A */ slt $at, $a0, $v1 -/* 0BF510 800BE910 1020FFFD */ beqz $at, .L800BE908 -/* 0BF514 800BE914 00000000 */ nop -.L800BE918: -/* 0BF518 800BE918 84EE0010 */ lh $t6, 0x10($a3) -/* 0BF51C 800BE91C 24860001 */ addiu $a2, $a0, 1 -/* 0BF520 800BE920 01CB1021 */ addu $v0, $t6, $t3 -/* 0BF524 800BE924 0043082A */ slt $at, $v0, $v1 -/* 0BF528 800BE928 14200005 */ bnez $at, .L800BE940 -/* 0BF52C 800BE92C 00000000 */ nop -.L800BE930: -/* 0BF530 800BE930 00431023 */ subu $v0, $v0, $v1 -/* 0BF534 800BE934 0043082A */ slt $at, $v0, $v1 -/* 0BF538 800BE938 1020FFFD */ beqz $at, .L800BE930 -/* 0BF53C 800BE93C 00000000 */ nop -.L800BE940: -/* 0BF540 800BE940 4614C032 */ c.eq.s $f24, $f20 -/* 0BF544 800BE944 00004825 */ move $t1, $zero -/* 0BF548 800BE948 4501000A */ bc1t .L800BE974 -/* 0BF54C 800BE94C 00C3082A */ slt $at, $a2, $v1 -/* 0BF550 800BE950 4618A101 */ sub.s $f4, $f20, $f24 -/* 0BF554 800BE954 00000000 */ nop -/* 0BF558 800BE958 46142183 */ div.s $f6, $f4, $f20 -/* 0BF55C 800BE95C 46163202 */ mul.s $f8, $f6, $f22 -/* 0BF560 800BE960 4608803C */ c.lt.s $f16, $f8 -/* 0BF564 800BE964 00000000 */ nop -/* 0BF568 800BE968 45000002 */ bc1f .L800BE974 -/* 0BF56C 800BE96C 00000000 */ nop -/* 0BF570 800BE970 24090001 */ li $t1, 1 -.L800BE974: -/* 0BF574 800BE974 11200025 */ beqz $t1, .L800BEA0C -/* 0BF578 800BE978 24450001 */ addiu $a1, $v0, 1 -/* 0BF57C 800BE97C 00430019 */ multu $v0, $v1 -/* 0BF580 800BE980 24450001 */ addiu $a1, $v0, 1 -/* 0BF584 800BE984 00A3082A */ slt $at, $a1, $v1 -/* 0BF588 800BE988 24990001 */ addiu $t9, $a0, 1 -/* 0BF58C 800BE98C 00003012 */ mflo $a2 -/* 0BF590 800BE990 00C43821 */ addu $a3, $a2, $a0 -/* 0BF594 800BE994 14200003 */ bnez $at, .L800BE9A4 -/* 0BF598 800BE998 AFA70080 */ sw $a3, 0x80($sp) -/* 0BF59C 800BE99C 10000005 */ b .L800BE9B4 -/* 0BF5A0 800BE9A0 AFA40084 */ sw $a0, 0x84($sp) -.L800BE9A4: -/* 0BF5A4 800BE9A4 00A30019 */ multu $a1, $v1 -/* 0BF5A8 800BE9A8 00007812 */ mflo $t7 -/* 0BF5AC 800BE9AC 01E4C021 */ addu $t8, $t7, $a0 -/* 0BF5B0 800BE9B0 AFB80084 */ sw $t8, 0x84($sp) -.L800BE9B4: -/* 0BF5B4 800BE9B4 0323082A */ slt $at, $t9, $v1 -/* 0BF5B8 800BE9B8 14200003 */ bnez $at, .L800BE9C8 -/* 0BF5BC 800BE9BC 24E20001 */ addiu $v0, $a3, 1 -/* 0BF5C0 800BE9C0 10000002 */ b .L800BE9CC -/* 0BF5C4 800BE9C4 AFA60088 */ sw $a2, 0x88($sp) -.L800BE9C8: -/* 0BF5C8 800BE9C8 AFA20088 */ sw $v0, 0x88($sp) -.L800BE9CC: -/* 0BF5CC 800BE9CC 016C0019 */ multu $t3, $t4 -/* 0BF5D0 800BE9D0 25790001 */ addiu $t9, $t3, 1 -/* 0BF5D4 800BE9D4 8FAE00B0 */ lw $t6, 0xb0($sp) -/* 0BF5D8 800BE9D8 8FAF00C4 */ lw $t7, 0xc4($sp) -/* 0BF5DC 800BE9DC E7AE00E4 */ swc1 $f14, 0xe4($sp) -/* 0BF5E0 800BE9E0 01CF1021 */ addu $v0, $t6, $t7 -/* 0BF5E4 800BE9E4 0000C012 */ mflo $t8 -/* 0BF5E8 800BE9E8 00581821 */ addu $v1, $v0, $t8 -/* 0BF5EC 800BE9EC 24780001 */ addiu $t8, $v1, 1 -/* 0BF5F0 800BE9F0 032C0019 */ multu $t9, $t4 -/* 0BF5F4 800BE9F4 AFA3005C */ sw $v1, 0x5c($sp) -/* 0BF5F8 800BE9F8 AFB80064 */ sw $t8, 0x64($sp) -/* 0BF5FC 800BE9FC 00007012 */ mflo $t6 -/* 0BF600 800BEA00 004E7821 */ addu $t7, $v0, $t6 -/* 0BF604 800BEA04 10000032 */ b .L800BEAD0 -/* 0BF608 800BEA08 AFAF0060 */ sw $t7, 0x60($sp) -.L800BEA0C: -/* 0BF60C 800BEA0C 14200006 */ bnez $at, .L800BEA28 -/* 0BF610 800BEA10 00000000 */ nop -/* 0BF614 800BEA14 00430019 */ multu $v0, $v1 -/* 0BF618 800BEA18 0000C812 */ mflo $t9 -/* 0BF61C 800BEA1C AFB90080 */ sw $t9, 0x80($sp) -/* 0BF620 800BEA20 10000007 */ b .L800BEA40 -/* 0BF624 800BEA24 00A3082A */ slt $at, $a1, $v1 -.L800BEA28: -/* 0BF628 800BEA28 00430019 */ multu $v0, $v1 -/* 0BF62C 800BEA2C 00007012 */ mflo $t6 -/* 0BF630 800BEA30 008E7821 */ addu $t7, $a0, $t6 -/* 0BF634 800BEA34 25F80001 */ addiu $t8, $t7, 1 -/* 0BF638 800BEA38 AFB80080 */ sw $t8, 0x80($sp) -/* 0BF63C 800BEA3C 00A3082A */ slt $at, $a1, $v1 -.L800BEA40: -/* 0BF640 800BEA40 14200003 */ bnez $at, .L800BEA50 -/* 0BF644 800BEA44 00C01025 */ move $v0, $a2 -/* 0BF648 800BEA48 10000005 */ b .L800BEA60 -/* 0BF64C 800BEA4C AFA40084 */ sw $a0, 0x84($sp) -.L800BEA50: -/* 0BF650 800BEA50 00A30019 */ multu $a1, $v1 -/* 0BF654 800BEA54 0000C812 */ mflo $t9 -/* 0BF658 800BEA58 03247021 */ addu $t6, $t9, $a0 -/* 0BF65C 800BEA5C AFAE0084 */ sw $t6, 0x84($sp) -.L800BEA60: -/* 0BF660 800BEA60 00C3082A */ slt $at, $a2, $v1 -/* 0BF664 800BEA64 14200003 */ bnez $at, .L800BEA74 -/* 0BF668 800BEA68 00000000 */ nop -/* 0BF66C 800BEA6C 10000001 */ b .L800BEA74 -/* 0BF670 800BEA70 00001025 */ move $v0, $zero -.L800BEA74: -/* 0BF674 800BEA74 00A3082A */ slt $at, $a1, $v1 -/* 0BF678 800BEA78 10200005 */ beqz $at, .L800BEA90 -/* 0BF67C 800BEA7C AFA20088 */ sw $v0, 0x88($sp) -/* 0BF680 800BEA80 00A30019 */ multu $a1, $v1 -/* 0BF684 800BEA84 00007812 */ mflo $t7 -/* 0BF688 800BEA88 004F1021 */ addu $v0, $v0, $t7 -/* 0BF68C 800BEA8C AFA20088 */ sw $v0, 0x88($sp) -.L800BEA90: -/* 0BF690 800BEA90 016C0019 */ multu $t3, $t4 -/* 0BF694 800BEA94 8FB800C4 */ lw $t8, 0xc4($sp) -/* 0BF698 800BEA98 8FB900B0 */ lw $t9, 0xb0($sp) -/* 0BF69C 800BEA9C E7B600E4 */ swc1 $f22, 0xe4($sp) -/* 0BF6A0 800BEAA0 03191021 */ addu $v0, $t8, $t9 -/* 0BF6A4 800BEAA4 25790001 */ addiu $t9, $t3, 1 -/* 0BF6A8 800BEAA8 00007012 */ mflo $t6 -/* 0BF6AC 800BEAAC 004E7821 */ addu $t7, $v0, $t6 -/* 0BF6B0 800BEAB0 25F80001 */ addiu $t8, $t7, 1 -/* 0BF6B4 800BEAB4 032C0019 */ multu $t9, $t4 -/* 0BF6B8 800BEAB8 AFB8005C */ sw $t8, 0x5c($sp) -/* 0BF6BC 800BEABC 00007012 */ mflo $t6 -/* 0BF6C0 800BEAC0 004E1821 */ addu $v1, $v0, $t6 -/* 0BF6C4 800BEAC4 246F0001 */ addiu $t7, $v1, 1 -/* 0BF6C8 800BEAC8 AFA30060 */ sw $v1, 0x60($sp) -/* 0BF6CC 800BEACC AFAF0064 */ sw $t7, 0x64($sp) -.L800BEAD0: -/* 0BF6D0 800BEAD0 3C0B800E */ lui $t3, %hi(D_800E3044) # $t3, 0x800e -/* 0BF6D4 800BEAD4 3C0C800E */ lui $t4, %hi(D_800E3178) # $t4, 0x800e -/* 0BF6D8 800BEAD8 AFA900AC */ sw $t1, 0xac($sp) -/* 0BF6DC 800BEADC 8D8C3178 */ lw $t4, %lo(D_800E3178)($t4) -/* 0BF6E0 800BEAE0 8D6B3044 */ lw $t3, %lo(D_800E3044)($t3) -/* 0BF6E4 800BEAE4 27A90068 */ addiu $t1, $sp, 0x68 -/* 0BF6E8 800BEAE8 00003825 */ move $a3, $zero -/* 0BF6EC 800BEAEC 00071080 */ sll $v0, $a3, 2 -.L800BEAF0: -/* 0BF6F0 800BEAF0 01A27021 */ addu $t6, $t5, $v0 -/* 0BF6F4 800BEAF4 8DCF0000 */ lw $t7, ($t6) -/* 0BF6F8 800BEAF8 0007C8C0 */ sll $t9, $a3, 3 -/* 0BF6FC 800BEAFC 000FC080 */ sll $t8, $t7, 2 -/* 0BF700 800BEB00 01782021 */ addu $a0, $t3, $t8 -/* 0BF704 800BEB04 01391821 */ addu $v1, $t1, $t9 -/* 0BF708 800BEB08 84990000 */ lh $t9, ($a0) -/* 0BF70C 800BEB0C 03E22821 */ addu $a1, $ra, $v0 -/* 0BF710 800BEB10 AC790000 */ sw $t9, ($v1) -/* 0BF714 800BEB14 848E0002 */ lh $t6, 2($a0) -/* 0BF718 800BEB18 E4AC0000 */ swc1 $f12, ($a1) -/* 0BF71C 800BEB1C 03A27821 */ addu $t7, $sp, $v0 -/* 0BF720 800BEB20 AC6E0004 */ sw $t6, 4($v1) -/* 0BF724 800BEB24 8DEF005C */ lw $t7, 0x5c($t7) -/* 0BF728 800BEB28 24E70001 */ addiu $a3, $a3, 1 -/* 0BF72C 800BEB2C 01ECC021 */ addu $t8, $t7, $t4 -/* 0BF730 800BEB30 93060000 */ lbu $a2, ($t8) -/* 0BF734 800BEB34 0007CC00 */ sll $t9, $a3, 0x10 -/* 0BF738 800BEB38 28C1007F */ slti $at, $a2, 0x7f -/* 0BF73C 800BEB3C 1020000A */ beqz $at, .L800BEB68 -/* 0BF740 800BEB40 00193C03 */ sra $a3, $t9, 0x10 -/* 0BF744 800BEB44 44862000 */ mtc1 $a2, $f4 -/* 0BF748 800BEB48 3C018013 */ lui $at, %hi(D_8012A00C) # $at, 0x8013 -/* 0BF74C 800BEB4C 468021A0 */ cvt.s.w $f6, $f4 -/* 0BF750 800BEB50 C42AA00C */ lwc1 $f10, %lo(D_8012A00C)($at) -/* 0BF754 800BEB54 46023202 */ mul.s $f8, $f6, $f2 -/* 0BF758 800BEB58 C4A60000 */ lwc1 $f6, ($a1) -/* 0BF75C 800BEB5C 46085100 */ add.s $f4, $f10, $f8 -/* 0BF760 800BEB60 46043282 */ mul.s $f10, $f6, $f4 -/* 0BF764 800BEB64 E4AA0000 */ swc1 $f10, ($a1) -.L800BEB68: -/* 0BF768 800BEB68 28E10003 */ slti $at, $a3, 3 -/* 0BF76C 800BEB6C 1420FFE0 */ bnez $at, .L800BEAF0 -/* 0BF770 800BEB70 00071080 */ sll $v0, $a3, 2 -/* 0BF774 800BEB74 3C0F8013 */ lui $t7, %hi(D_80129FF0) # $t7, 0x8013 -/* 0BF778 800BEB78 8DEF9FF0 */ lw $t7, %lo(D_80129FF0)($t7) -/* 0BF77C 800BEB7C 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 0BF780 800BEB80 11E00013 */ beqz $t7, .L800BEBD0 -/* 0BF784 800BEB84 3C188013 */ lui $t8, %hi(D_80129FE8) # $t8, 0x8013 -/* 0BF788 800BEB88 C7A80050 */ lwc1 $f8, 0x50($sp) -/* 0BF78C 800BEB8C 44810800 */ mtc1 $at, $f1 -/* 0BF790 800BEB90 44800000 */ mtc1 $zero, $f0 -/* 0BF794 800BEB94 460041A1 */ cvt.d.s $f6, $f8 -/* 0BF798 800BEB98 46203102 */ mul.d $f4, $f6, $f0 -/* 0BF79C 800BEB9C C7A80054 */ lwc1 $f8, 0x54($sp) -/* 0BF7A0 800BEBA0 00000000 */ nop -/* 0BF7A4 800BEBA4 460041A1 */ cvt.d.s $f6, $f8 -/* 0BF7A8 800BEBA8 C7A80058 */ lwc1 $f8, 0x58($sp) -/* 0BF7AC 800BEBAC 462022A0 */ cvt.s.d $f10, $f4 -/* 0BF7B0 800BEBB0 46203102 */ mul.d $f4, $f6, $f0 -/* 0BF7B4 800BEBB4 E7AA0050 */ swc1 $f10, 0x50($sp) -/* 0BF7B8 800BEBB8 460041A1 */ cvt.d.s $f6, $f8 -/* 0BF7BC 800BEBBC 462022A0 */ cvt.s.d $f10, $f4 -/* 0BF7C0 800BEBC0 46203102 */ mul.d $f4, $f6, $f0 -/* 0BF7C4 800BEBC4 E7AA0054 */ swc1 $f10, 0x54($sp) -/* 0BF7C8 800BEBC8 462022A0 */ cvt.s.d $f10, $f4 -/* 0BF7CC 800BEBCC E7AA0058 */ swc1 $f10, 0x58($sp) -.L800BEBD0: -/* 0BF7D0 800BEBD0 8F189FE8 */ lw $t8, %lo(D_80129FE8)($t8) -/* 0BF7D4 800BEBD4 00003825 */ move $a3, $zero -/* 0BF7D8 800BEBD8 0018C843 */ sra $t9, $t8, 1 -/* 0BF7DC 800BEBDC 1B2000AC */ blez $t9, .L800BEE90 -/* 0BF7E0 800BEBE0 8FBF002C */ lw $ra, 0x2c($sp) -/* 0BF7E4 800BEBE4 4616A482 */ mul.s $f18, $f20, $f22 -/* 0BF7E8 800BEBE8 E7B000EC */ swc1 $f16, 0xec($sp) -/* 0BF7EC 800BEBEC 46129202 */ mul.s $f8, $f18, $f18 -/* 0BF7F0 800BEBF0 E7A80040 */ swc1 $f8, 0x40($sp) -/* 0BF7F4 800BEBF4 8FAE0068 */ lw $t6, 0x68($sp) -.L800BEBF8: -/* 0BF7F8 800BEBF8 3C02800E */ lui $v0, %hi(D_800E3040) # $v0, 0x800e -/* 0BF7FC 800BEBFC 8C423040 */ lw $v0, %lo(D_800E3040)($v0) -/* 0BF800 800BEC00 8FB9006C */ lw $t9, 0x6c($sp) -/* 0BF804 800BEC04 000E7880 */ sll $t7, $t6, 2 -/* 0BF808 800BEC08 004FC021 */ addu $t8, $v0, $t7 -/* 0BF80C 800BEC0C 00197080 */ sll $t6, $t9, 2 -/* 0BF810 800BEC10 C7060000 */ lwc1 $f6, ($t8) -/* 0BF814 800BEC14 004E7821 */ addu $t7, $v0, $t6 -/* 0BF818 800BEC18 C5E40000 */ lwc1 $f4, ($t7) -/* 0BF81C 800BEC1C 8FB80070 */ lw $t8, 0x70($sp) -/* 0BF820 800BEC20 8FAF0074 */ lw $t7, 0x74($sp) -/* 0BF824 800BEC24 0018C880 */ sll $t9, $t8, 2 -/* 0BF828 800BEC28 46043280 */ add.s $f10, $f6, $f4 -/* 0BF82C 800BEC2C 00597021 */ addu $t6, $v0, $t9 -/* 0BF830 800BEC30 C7A80050 */ lwc1 $f8, 0x50($sp) -/* 0BF834 800BEC34 000FC080 */ sll $t8, $t7, 2 -/* 0BF838 800BEC38 C5C60000 */ lwc1 $f6, ($t6) -/* 0BF83C 800BEC3C 0058C821 */ addu $t9, $v0, $t8 -/* 0BF840 800BEC40 460A4402 */ mul.s $f16, $f8, $f10 -/* 0BF844 800BEC44 C7240000 */ lwc1 $f4, ($t9) -/* 0BF848 800BEC48 8FAE0078 */ lw $t6, 0x78($sp) -/* 0BF84C 800BEC4C 8FB9007C */ lw $t9, 0x7c($sp) -/* 0BF850 800BEC50 000E7880 */ sll $t7, $t6, 2 -/* 0BF854 800BEC54 C7AA0054 */ lwc1 $f10, 0x54($sp) -/* 0BF858 800BEC58 46043200 */ add.s $f8, $f6, $f4 -/* 0BF85C 800BEC5C 004FC021 */ addu $t8, $v0, $t7 -/* 0BF860 800BEC60 00197080 */ sll $t6, $t9, 2 -/* 0BF864 800BEC64 46085302 */ mul.s $f12, $f10, $f8 -/* 0BF868 800BEC68 004E7821 */ addu $t7, $v0, $t6 -/* 0BF86C 800BEC6C C5E40000 */ lwc1 $f4, ($t7) -/* 0BF870 800BEC70 C7060000 */ lwc1 $f6, ($t8) -/* 0BF874 800BEC74 C7A80058 */ lwc1 $f8, 0x58($sp) -/* 0BF878 800BEC78 46043280 */ add.s $f10, $f6, $f4 -/* 0BF87C 800BEC7C 8FB800AC */ lw $t8, 0xac($sp) -/* 0BF880 800BEC80 460A4002 */ mul.s $f0, $f8, $f10 -/* 0BF884 800BEC84 13000007 */ beqz $t8, .L800BECA4 -/* 0BF888 800BEC88 00000000 */ nop -/* 0BF88C 800BEC8C 46008181 */ sub.s $f6, $f16, $f0 -/* 0BF890 800BEC90 46143082 */ mul.s $f2, $f6, $f20 -/* 0BF894 800BEC94 460C8101 */ sub.s $f4, $f16, $f12 -/* 0BF898 800BEC98 46162382 */ mul.s $f14, $f4, $f22 -/* 0BF89C 800BEC9C 10000006 */ b .L800BECB8 -/* 0BF8A0 800BECA0 00000000 */ nop -.L800BECA4: -/* 0BF8A4 800BECA4 46006201 */ sub.s $f8, $f12, $f0 -/* 0BF8A8 800BECA8 46144082 */ mul.s $f2, $f8, $f20 -/* 0BF8AC 800BECAC 46008281 */ sub.s $f10, $f16, $f0 -/* 0BF8B0 800BECB0 46165382 */ mul.s $f14, $f10, $f22 -/* 0BF8B4 800BECB4 00000000 */ nop -.L800BECB8: -/* 0BF8B8 800BECB8 46021182 */ mul.s $f6, $f2, $f2 -/* 0BF8BC 800BECBC C7A40040 */ lwc1 $f4, 0x40($sp) -/* 0BF8C0 800BECC0 A7A700A2 */ sh $a3, 0xa2($sp) -/* 0BF8C4 800BECC4 A7A800A6 */ sh $t0, 0xa6($sp) -/* 0BF8C8 800BECC8 460E7282 */ mul.s $f10, $f14, $f14 -/* 0BF8CC 800BECCC 46043200 */ add.s $f8, $f6, $f4 -/* 0BF8D0 800BECD0 AFAA004C */ sw $t2, 0x4c($sp) -/* 0BF8D4 800BECD4 E7A2009C */ swc1 $f2, 0x9c($sp) -/* 0BF8D8 800BECD8 460A4300 */ add.s $f12, $f8, $f10 -/* 0BF8DC 800BECDC E7AE0094 */ swc1 $f14, 0x94($sp) -/* 0BF8E0 800BECE0 E7B000E0 */ swc1 $f16, 0xe0($sp) -/* 0BF8E4 800BECE4 0C0326B4 */ jal sqrtf -/* 0BF8E8 800BECE8 E7B20044 */ swc1 $f18, 0x44($sp) -/* 0BF8EC 800BECEC C7A2009C */ lwc1 $f2, 0x9c($sp) -/* 0BF8F0 800BECF0 C7AE0094 */ lwc1 $f14, 0x94($sp) -/* 0BF8F4 800BECF4 46001083 */ div.s $f2, $f2, $f0 -/* 0BF8F8 800BECF8 C7B20044 */ lwc1 $f18, 0x44($sp) -/* 0BF8FC 800BECFC C7A600EC */ lwc1 $f6, 0xec($sp) -/* 0BF900 800BED00 C7B000E0 */ lwc1 $f16, 0xe0($sp) -/* 0BF904 800BED04 3C014180 */ li $at, 0x41800000 # 16.000000 -/* 0BF908 800BED08 87A800A6 */ lh $t0, 0xa6($sp) -/* 0BF90C 800BED0C 87A700A2 */ lh $a3, 0xa2($sp) -/* 0BF910 800BED10 8FAA004C */ lw $t2, 0x4c($sp) -/* 0BF914 800BED14 27A90068 */ addiu $t1, $sp, 0x68 -/* 0BF918 800BED18 00001825 */ move $v1, $zero -/* 0BF91C 800BED1C 3C048013 */ lui $a0, %hi(D_80129FE8) # $a0, 0x8013 -/* 0BF920 800BED20 00087023 */ negu $t6, $t0 -/* 0BF924 800BED24 46007383 */ div.s $f14, $f14, $f0 -/* 0BF928 800BED28 46061102 */ mul.s $f4, $f2, $f6 -/* 0BF92C 800BED2C C7A600E4 */ lwc1 $f6, 0xe4($sp) -/* 0BF930 800BED30 46009303 */ div.s $f12, $f18, $f0 -/* 0BF934 800BED34 46187202 */ mul.s $f8, $f14, $f24 -/* 0BF938 800BED38 46082280 */ add.s $f10, $f4, $f8 -/* 0BF93C 800BED3C 46023102 */ mul.s $f4, $f6, $f2 -/* 0BF940 800BED40 00000000 */ nop -/* 0BF944 800BED44 460C8202 */ mul.s $f8, $f16, $f12 -/* 0BF948 800BED48 46082180 */ add.s $f6, $f4, $f8 -/* 0BF94C 800BED4C 44814000 */ mtc1 $at, $f8 -/* 0BF950 800BED50 46065101 */ sub.s $f4, $f10, $f6 -/* 0BF954 800BED54 46082282 */ mul.s $f10, $f4, $f8 -/* 0BF958 800BED58 00000000 */ nop -/* 0BF95C 800BED5C 460C5183 */ div.s $f6, $f10, $f12 -/* 0BF960 800BED60 4459F800 */ cfc1 $t9, $31 -/* 0BF964 800BED64 00000000 */ nop -/* 0BF968 800BED68 37210003 */ ori $at, $t9, 3 -/* 0BF96C 800BED6C 38210002 */ xori $at, $at, 2 -/* 0BF970 800BED70 44C1F800 */ ctc1 $at, $31 -/* 0BF974 800BED74 00000000 */ nop -/* 0BF978 800BED78 46003124 */ cvt.w.s $f4, $f6 -/* 0BF97C 800BED7C 44022000 */ mfc1 $v0, $f4 -/* 0BF980 800BED80 44D9F800 */ ctc1 $t9, $31 -/* 0BF984 800BED84 00021023 */ negu $v0, $v0 -/* 0BF988 800BED88 0048082A */ slt $at, $v0, $t0 -/* 0BF98C 800BED8C 10200004 */ beqz $at, .L800BEDA0 -/* 0BF990 800BED90 00403025 */ move $a2, $v0 -/* 0BF994 800BED94 004E082A */ slt $at, $v0, $t6 -/* 0BF998 800BED98 1020001D */ beqz $at, .L800BEE10 -/* 0BF99C 800BED9C 00000000 */ nop -.L800BEDA0: -/* 0BF9A0 800BEDA0 01084021 */ addu $t0, $t0, $t0 -/* 0BF9A4 800BEDA4 00087C00 */ sll $t7, $t0, 0x10 -/* 0BF9A8 800BEDA8 000FC403 */ sra $t8, $t7, 0x10 -/* 0BF9AC 800BEDAC 24630001 */ addiu $v1, $v1, 1 -/* 0BF9B0 800BEDB0 0003CC00 */ sll $t9, $v1, 0x10 -/* 0BF9B4 800BEDB4 00D8082A */ slt $at, $a2, $t8 -/* 0BF9B8 800BEDB8 03004025 */ move $t0, $t8 -/* 0BF9BC 800BEDBC 1020FFF8 */ beqz $at, .L800BEDA0 -/* 0BF9C0 800BEDC0 00191C03 */ sra $v1, $t9, 0x10 -/* 0BF9C4 800BEDC4 00187823 */ negu $t7, $t8 -/* 0BF9C8 800BEDC8 00CF082A */ slt $at, $a2, $t7 -/* 0BF9CC 800BEDCC 1420FFF4 */ bnez $at, .L800BEDA0 -/* 0BF9D0 800BEDD0 00000000 */ nop -/* 0BF9D4 800BEDD4 18E0000A */ blez $a3, .L800BEE00 -/* 0BF9D8 800BEDD8 00002825 */ move $a1, $zero -.L800BEDDC: -/* 0BF9DC 800BEDDC 01451021 */ addu $v0, $t2, $a1 -/* 0BF9E0 800BEDE0 24A50001 */ addiu $a1, $a1, 1 -/* 0BF9E4 800BEDE4 8058000E */ lb $t8, 0xe($v0) -/* 0BF9E8 800BEDE8 00057400 */ sll $t6, $a1, 0x10 -/* 0BF9EC 800BEDEC 000E2C03 */ sra $a1, $t6, 0x10 -/* 0BF9F0 800BEDF0 00A7082A */ slt $at, $a1, $a3 -/* 0BF9F4 800BEDF4 0078C807 */ srav $t9, $t8, $v1 -/* 0BF9F8 800BEDF8 1420FFF8 */ bnez $at, .L800BEDDC -/* 0BF9FC 800BEDFC A059000E */ sb $t9, 0xe($v0) -.L800BEE00: -/* 0BFA00 800BEE00 91580002 */ lbu $t8, 2($t2) -/* 0BFA04 800BEE04 00000000 */ nop -/* 0BFA08 800BEE08 0303C821 */ addu $t9, $t8, $v1 -/* 0BFA0C 800BEE0C A1590002 */ sb $t9, 2($t2) -.L800BEE10: -/* 0BFA10 800BEE10 914E0002 */ lbu $t6, 2($t2) -/* 0BFA14 800BEE14 0147C021 */ addu $t8, $t2, $a3 -/* 0BFA18 800BEE18 01C67807 */ srav $t7, $a2, $t6 -/* 0BFA1C 800BEE1C A30F000E */ sb $t7, 0xe($t8) -/* 0BFA20 800BEE20 8C849FE8 */ lw $a0, %lo(D_80129FE8)($a0) -/* 0BFA24 800BEE24 00002825 */ move $a1, $zero -/* 0BFA28 800BEE28 0005C880 */ sll $t9, $a1, 2 -.L800BEE2C: -/* 0BFA2C 800BEE2C 01391821 */ addu $v1, $t1, $t9 -/* 0BFA30 800BEE30 8C6E0000 */ lw $t6, ($v1) -/* 0BFA34 800BEE34 24A50001 */ addiu $a1, $a1, 1 -/* 0BFA38 800BEE38 25C20002 */ addiu $v0, $t6, 2 -/* 0BFA3C 800BEE3C 0044082A */ slt $at, $v0, $a0 -/* 0BFA40 800BEE40 14200006 */ bnez $at, .L800BEE5C -/* 0BFA44 800BEE44 AC620000 */ sw $v0, ($v1) -.L800BEE48: -/* 0BFA48 800BEE48 0044C023 */ subu $t8, $v0, $a0 -/* 0BFA4C 800BEE4C 0304082A */ slt $at, $t8, $a0 -/* 0BFA50 800BEE50 AC780000 */ sw $t8, ($v1) -/* 0BFA54 800BEE54 1020FFFC */ beqz $at, .L800BEE48 -/* 0BFA58 800BEE58 03001025 */ move $v0, $t8 -.L800BEE5C: -/* 0BFA5C 800BEE5C 0005CC00 */ sll $t9, $a1, 0x10 -/* 0BFA60 800BEE60 00192C03 */ sra $a1, $t9, 0x10 -/* 0BFA64 800BEE64 28A10006 */ slti $at, $a1, 6 -/* 0BFA68 800BEE68 1420FFF0 */ bnez $at, .L800BEE2C -/* 0BFA6C 800BEE6C 0005C880 */ sll $t9, $a1, 2 -/* 0BFA70 800BEE70 24E70001 */ addiu $a3, $a3, 1 -/* 0BFA74 800BEE74 00077C00 */ sll $t7, $a3, 0x10 -/* 0BFA78 800BEE78 000F3C03 */ sra $a3, $t7, 0x10 -/* 0BFA7C 800BEE7C 0004C843 */ sra $t9, $a0, 1 -/* 0BFA80 800BEE80 00F9082A */ slt $at, $a3, $t9 -/* 0BFA84 800BEE84 1420FF5C */ bnez $at, .L800BEBF8 -/* 0BFA88 800BEE88 8FAE0068 */ lw $t6, 0x68($sp) -.L800BEE8C: -/* 0BFA8C 800BEE8C 8FBF002C */ lw $ra, 0x2c($sp) -.L800BEE90: -/* 0BFA90 800BEE90 C7B50010 */ lwc1 $f21, 0x10($sp) -/* 0BFA94 800BEE94 C7B40014 */ lwc1 $f20, 0x14($sp) -/* 0BFA98 800BEE98 C7B70018 */ lwc1 $f23, 0x18($sp) -/* 0BFA9C 800BEE9C C7B6001C */ lwc1 $f22, 0x1c($sp) -/* 0BFAA0 800BEEA0 C7B90020 */ lwc1 $f25, 0x20($sp) -/* 0BFAA4 800BEEA4 C7B80024 */ lwc1 $f24, 0x24($sp) -/* 0BFAA8 800BEEA8 27BD00E8 */ addiu $sp, $sp, 0xe8 -/* 0BFAAC 800BEEAC 03E00008 */ jr $ra -/* 0BFAB0 800BEEB0 01401025 */ move $v0, $t2 - -glabel func_800BEEB4 -/* 0BFAB4 800BEEB4 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0BFAB8 800BEEB8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0BFABC 800BEEBC 948E0004 */ lhu $t6, 4($a0) -/* 0BFAC0 800BEEC0 94830006 */ lhu $v1, 6($a0) -/* 0BFAC4 800BEEC4 01C57821 */ addu $t7, $t6, $a1 -/* 0BFAC8 800BEEC8 31E2FFFF */ andi $v0, $t7, 0xffff -/* 0BFACC 800BEECC 0043082A */ slt $at, $v0, $v1 -/* 0BFAD0 800BEED0 00803825 */ move $a3, $a0 -/* 0BFAD4 800BEED4 14200006 */ bnez $at, .L800BEEF0 -/* 0BFAD8 800BEED8 A48F0004 */ sh $t7, 4($a0) -.L800BEEDC: -/* 0BFADC 800BEEDC 0043C023 */ subu $t8, $v0, $v1 -/* 0BFAE0 800BEEE0 3302FFFF */ andi $v0, $t8, 0xffff -/* 0BFAE4 800BEEE4 0043082A */ slt $at, $v0, $v1 -/* 0BFAE8 800BEEE8 1020FFFC */ beqz $at, .L800BEEDC -/* 0BFAEC 800BEEEC A4F80004 */ sh $t8, 4($a3) -.L800BEEF0: -/* 0BFAF0 800BEEF0 0002C843 */ sra $t9, $v0, 1 -/* 0BFAF4 800BEEF4 00F92021 */ addu $a0, $a3, $t9 -/* 0BFAF8 800BEEF8 8088000E */ lb $t0, 0xe($a0) -/* 0BFAFC 800BEEFC 30490001 */ andi $t1, $v0, 1 -/* 0BFB00 800BEF00 11200012 */ beqz $t1, .L800BEF4C -/* 0BFB04 800BEF04 244A0001 */ addiu $t2, $v0, 1 -/* 0BFB08 800BEF08 0143082A */ slt $at, $t2, $v1 -/* 0BFB0C 800BEF0C 14200004 */ bnez $at, .L800BEF20 -/* 0BFB10 800BEF10 00000000 */ nop -/* 0BFB14 800BEF14 80EB000E */ lb $t3, 0xe($a3) -/* 0BFB18 800BEF18 10000004 */ b .L800BEF2C -/* 0BFB1C 800BEF1C 010B4021 */ addu $t0, $t0, $t3 -.L800BEF20: -/* 0BFB20 800BEF20 808C000F */ lb $t4, 0xf($a0) -/* 0BFB24 800BEF24 00000000 */ nop -/* 0BFB28 800BEF28 010C4021 */ addu $t0, $t0, $t4 -.L800BEF2C: -/* 0BFB2C 800BEF2C 90E20002 */ lbu $v0, 2($a3) -/* 0BFB30 800BEF30 00087043 */ sra $t6, $t0, 1 -/* 0BFB34 800BEF34 18400003 */ blez $v0, .L800BEF44 -/* 0BFB38 800BEF38 244D001F */ addiu $t5, $v0, 0x1f -/* 0BFB3C 800BEF3C 10000006 */ b .L800BEF58 -/* 0BFB40 800BEF40 01A84004 */ sllv $t0, $t0, $t5 -.L800BEF44: -/* 0BFB44 800BEF44 10000004 */ b .L800BEF58 -/* 0BFB48 800BEF48 01C04025 */ move $t0, $t6 -.L800BEF4C: -/* 0BFB4C 800BEF4C 90EF0002 */ lbu $t7, 2($a3) -/* 0BFB50 800BEF50 00000000 */ nop -/* 0BFB54 800BEF54 01E84004 */ sllv $t0, $t0, $t7 -.L800BEF58: -/* 0BFB58 800BEF58 44882000 */ mtc1 $t0, $f4 -/* 0BFB5C 800BEF5C 84F80000 */ lh $t8, ($a3) -/* 0BFB60 800BEF60 468021A0 */ cvt.s.w $f6, $f4 -/* 0BFB64 800BEF64 3C013FB0 */ li $at, 0x3FB00000 # 1.375000 -/* 0BFB68 800BEF68 44815800 */ mtc1 $at, $f11 -/* 0BFB6C 800BEF6C 44805000 */ mtc1 $zero, $f10 -/* 0BFB70 800BEF70 44989000 */ mtc1 $t8, $f18 -/* 0BFB74 800BEF74 46003221 */ cvt.d.s $f8, $f6 -/* 0BFB78 800BEF78 462A4402 */ mul.d $f16, $f8, $f10 -/* 0BFB7C 800BEF7C 46809120 */ cvt.s.w $f4, $f18 -/* 0BFB80 800BEF80 3C018013 */ lui $at, %hi(D_8012A008) # $at, 0x8013 -/* 0BFB84 800BEF84 C42AA008 */ lwc1 $f10, %lo(D_8012A008)($at) -/* 0BFB88 800BEF88 94E4000C */ lhu $a0, 0xc($a3) -/* 0BFB8C 800BEF8C 460021A1 */ cvt.d.s $f6, $f4 -/* 0BFB90 800BEF90 46268200 */ add.d $f8, $f16, $f6 -/* 0BFB94 800BEF94 94E50008 */ lhu $a1, 8($a3) -/* 0BFB98 800BEF98 462040A0 */ cvt.s.d $f2, $f8 -/* 0BFB9C 800BEF9C 94E6000A */ lhu $a2, 0xa($a3) -/* 0BFBA0 800BEFA0 460A1082 */ mul.s $f2, $f2, $f10 -/* 0BFBA4 800BEFA4 0C02FBF1 */ jal func_800BEFC4 -/* 0BFBA8 800BEFA8 E7A20018 */ swc1 $f2, 0x18($sp) -/* 0BFBAC 800BEFAC C7A20018 */ lwc1 $f2, 0x18($sp) -/* 0BFBB0 800BEFB0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0BFBB4 800BEFB4 46001080 */ add.s $f2, $f2, $f0 -/* 0BFBB8 800BEFB8 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0BFBBC 800BEFBC 03E00008 */ jr $ra -/* 0BFBC0 800BEFC0 46001006 */ mov.s $f0, $f2 - -glabel func_800BEFC4 -/* 0BFBC4 800BEFC4 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 0BFBC8 800BEFC8 3C0E800E */ lui $t6, %hi(D_800E3188) # $t6, 0x800e -/* 0BFBCC 800BEFCC 44801000 */ mtc1 $zero, $f2 -/* 0BFBD0 800BEFD0 8DCE3188 */ lw $t6, %lo(D_800E3188)($t6) -/* 0BFBD4 800BEFD4 AFB10048 */ sw $s1, 0x48($sp) -/* 0BFBD8 800BEFD8 AFB00044 */ sw $s0, 0x44($sp) -/* 0BFBDC 800BEFDC E7BD0030 */ swc1 $f29, 0x30($sp) -/* 0BFBE0 800BEFE0 E7BC0034 */ swc1 $f28, 0x34($sp) -/* 0BFBE4 800BEFE4 00A08025 */ move $s0, $a1 -/* 0BFBE8 800BEFE8 00C08825 */ move $s1, $a2 -/* 0BFBEC 800BEFEC AFBF005C */ sw $ra, 0x5c($sp) -/* 0BFBF0 800BEFF0 AFB50058 */ sw $s5, 0x58($sp) -/* 0BFBF4 800BEFF4 AFB40054 */ sw $s4, 0x54($sp) -/* 0BFBF8 800BEFF8 AFB30050 */ sw $s3, 0x50($sp) -/* 0BFBFC 800BEFFC AFB2004C */ sw $s2, 0x4c($sp) -/* 0BFC00 800BF000 E7BF0038 */ swc1 $f31, 0x38($sp) -/* 0BFC04 800BF004 E7BE003C */ swc1 $f30, 0x3c($sp) -/* 0BFC08 800BF008 E7BB0028 */ swc1 $f27, 0x28($sp) -/* 0BFC0C 800BF00C E7BA002C */ swc1 $f26, 0x2c($sp) -/* 0BFC10 800BF010 E7B90020 */ swc1 $f25, 0x20($sp) -/* 0BFC14 800BF014 E7B80024 */ swc1 $f24, 0x24($sp) -/* 0BFC18 800BF018 E7B70018 */ swc1 $f23, 0x18($sp) -/* 0BFC1C 800BF01C E7B6001C */ swc1 $f22, 0x1c($sp) -/* 0BFC20 800BF020 E7B50010 */ swc1 $f21, 0x10($sp) -/* 0BFC24 800BF024 E7B40014 */ swc1 $f20, 0x14($sp) -/* 0BFC28 800BF028 1DC00003 */ bgtz $t6, .L800BF038 -/* 0BFC2C 800BF02C 46001706 */ mov.s $f28, $f2 -/* 0BFC30 800BF030 100000D7 */ b .L800BF390 -/* 0BFC34 800BF034 46001006 */ mov.s $f0, $f2 -.L800BF038: -/* 0BFC38 800BF038 3C028013 */ lui $v0, %hi(D_80129FC8) # $v0, 0x8013 -/* 0BFC3C 800BF03C 3C018013 */ lui $at, %hi(D_8012A0B8) # $at, 0x8013 -/* 0BFC40 800BF040 24429FC8 */ addiu $v0, %lo(D_80129FC8) # addiu $v0, $v0, -0x6038 -/* 0BFC44 800BF044 C420A0B8 */ lwc1 $f0, %lo(D_8012A0B8)($at) -/* 0BFC48 800BF048 8C4F0028 */ lw $t7, 0x28($v0) -/* 0BFC4C 800BF04C 3C018013 */ lui $at, %hi(D_8012A0BC) # $at, 0x8013 -/* 0BFC50 800BF050 8C430000 */ lw $v1, ($v0) -/* 0BFC54 800BF054 C422A0BC */ lwc1 $f2, %lo(D_8012A0BC)($at) -/* 0BFC58 800BF058 11E00008 */ beqz $t7, .L800BF07C -/* 0BFC5C 800BF05C 3C19800E */ lui $t9, %hi(D_800E30D8) # $t9, 0x800e -/* 0BFC60 800BF060 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 0BFC64 800BF064 44816000 */ mtc1 $at, $f12 -/* 0BFC68 800BF068 0003C040 */ sll $t8, $v1, 1 -/* 0BFC6C 800BF06C 460C0002 */ mul.s $f0, $f0, $f12 -/* 0BFC70 800BF070 03001825 */ move $v1, $t8 -/* 0BFC74 800BF074 460C1082 */ mul.s $f2, $f2, $f12 -/* 0BFC78 800BF078 00000000 */ nop -.L800BF07C: -/* 0BFC7C 800BF07C 000440C0 */ sll $t0, $a0, 3 -/* 0BFC80 800BF080 8F3930D8 */ lw $t9, %lo(D_800E30D8)($t9) -/* 0BFC84 800BF084 01044023 */ subu $t0, $t0, $a0 -/* 0BFC88 800BF088 00084080 */ sll $t0, $t0, 2 -/* 0BFC8C 800BF08C 03283021 */ addu $a2, $t9, $t0 -/* 0BFC90 800BF090 90C9000A */ lbu $t1, 0xa($a2) -/* 0BFC94 800BF094 3C0C800E */ lui $t4, %hi(D_800E3184) # $t4, 0x800e -/* 0BFC98 800BF098 01230019 */ multu $t1, $v1 -/* 0BFC9C 800BF09C 8D8C3184 */ lw $t4, %lo(D_800E3184)($t4) -/* 0BFCA0 800BF0A0 241500FF */ li $s5, 255 -/* 0BFCA4 800BF0A4 00005012 */ mflo $t2 -/* 0BFCA8 800BF0A8 01502821 */ addu $a1, $t2, $s0 -/* 0BFCAC 800BF0AC 000558C0 */ sll $t3, $a1, 3 -/* 0BFCB0 800BF0B0 016C3821 */ addu $a3, $t3, $t4 -/* 0BFCB4 800BF0B4 90ED0000 */ lbu $t5, ($a3) -/* 0BFCB8 800BF0B8 00000000 */ nop -/* 0BFCBC 800BF0BC 12AD00B3 */ beq $s5, $t5, .L800BF38C -/* 0BFCC0 800BF0C0 00000000 */ nop -/* 0BFCC4 800BF0C4 90CE000B */ lbu $t6, 0xb($a2) -/* 0BFCC8 800BF0C8 44854000 */ mtc1 $a1, $f8 -/* 0BFCCC 800BF0CC 01C30019 */ multu $t6, $v1 -/* 0BFCD0 800BF0D0 3C188013 */ lui $t8, %hi(D_8012A0D0) # $t8, 0x8013 -/* 0BFCD4 800BF0D4 468042A0 */ cvt.s.w $f10, $f8 -/* 0BFCD8 800BF0D8 8F18A0D0 */ lw $t8, %lo(D_8012A0D0)($t8) -/* 0BFCDC 800BF0DC 3C198013 */ lui $t9, %hi(D_8012A0D4) # $t9, 0x8013 -/* 0BFCE0 800BF0E0 44982000 */ mtc1 $t8, $f4 -/* 0BFCE4 800BF0E4 46005402 */ mul.s $f16, $f10, $f0 -/* 0BFCE8 800BF0E8 8F39A0D4 */ lw $t9, %lo(D_8012A0D4)($t9) -/* 0BFCEC 800BF0EC 3C14800E */ lui $s4, %hi(D_800E3190) # $s4, 0x800e -/* 0BFCF0 800BF0F0 44999000 */ mtc1 $t9, $f18 -/* 0BFCF4 800BF0F4 468021A0 */ cvt.s.w $f6, $f4 -/* 0BFCF8 800BF0F8 4480D000 */ mtc1 $zero, $f26 -/* 0BFCFC 800BF0FC 00007812 */ mflo $t7 -/* 0BFD00 800BF100 01F12021 */ addu $a0, $t7, $s1 -/* 0BFD04 800BF104 44844000 */ mtc1 $a0, $f8 -/* 0BFD08 800BF108 46103780 */ add.s $f30, $f6, $f16 -/* 0BFD0C 800BF10C 00009825 */ move $s3, $zero -/* 0BFD10 800BF110 468042A0 */ cvt.s.w $f10, $f8 -/* 0BFD14 800BF114 26943190 */ addiu $s4, %lo(D_800E3190) # addiu $s4, $s4, 0x3190 -/* 0BFD18 800BF118 00E09025 */ move $s2, $a3 -/* 0BFD1C 800BF11C 46025182 */ mul.s $f6, $f10, $f2 -/* 0BFD20 800BF120 31A200FF */ andi $v0, $t5, 0xff -/* 0BFD24 800BF124 46809120 */ cvt.s.w $f4, $f18 -/* 0BFD28 800BF128 46062600 */ add.s $f24, $f4, $f6 -.L800BF12C: -/* 0BFD2C 800BF12C 8E890000 */ lw $t1, ($s4) -/* 0BFD30 800BF130 00024180 */ sll $t0, $v0, 6 -/* 0BFD34 800BF134 01098821 */ addu $s1, $t0, $t1 -/* 0BFD38 800BF138 C6300000 */ lwc1 $f16, ($s1) -/* 0BFD3C 800BF13C 00000000 */ nop -/* 0BFD40 800BF140 4618803E */ c.le.s $f16, $f24 -/* 0BFD44 800BF144 00000000 */ nop -/* 0BFD48 800BF148 45000088 */ bc1f .L800BF36C -/* 0BFD4C 800BF14C 00000000 */ nop -/* 0BFD50 800BF150 C6320004 */ lwc1 $f18, 4($s1) -/* 0BFD54 800BF154 00000000 */ nop -/* 0BFD58 800BF158 4612C03E */ c.le.s $f24, $f18 -/* 0BFD5C 800BF15C 00000000 */ nop -/* 0BFD60 800BF160 45000082 */ bc1f .L800BF36C -/* 0BFD64 800BF164 00000000 */ nop -/* 0BFD68 800BF168 C6280008 */ lwc1 $f8, 8($s1) -/* 0BFD6C 800BF16C C62A000C */ lwc1 $f10, 0xc($s1) -/* 0BFD70 800BF170 4608F501 */ sub.s $f20, $f30, $f8 -/* 0BFD74 800BF174 C6300014 */ lwc1 $f16, 0x14($s1) -/* 0BFD78 800BF178 4614A102 */ mul.s $f4, $f20, $f20 -/* 0BFD7C 800BF17C 460AC581 */ sub.s $f22, $f24, $f10 -/* 0BFD80 800BF180 4616B182 */ mul.s $f6, $f22, $f22 -/* 0BFD84 800BF184 46062300 */ add.s $f12, $f4, $f6 -/* 0BFD88 800BF188 4610603C */ c.lt.s $f12, $f16 -/* 0BFD8C 800BF18C 00000000 */ nop -/* 0BFD90 800BF190 45000076 */ bc1f .L800BF36C -/* 0BFD94 800BF194 00000000 */ nop -/* 0BFD98 800BF198 0C0326B4 */ jal sqrtf -/* 0BFD9C 800BF19C 00000000 */ nop -/* 0BFDA0 800BF1A0 922A0030 */ lbu $t2, 0x30($s1) -/* 0BFDA4 800BF1A4 9630001A */ lhu $s0, 0x1a($s1) -/* 0BFDA8 800BF1A8 11400021 */ beqz $t2, .L800BF230 -/* 0BFDAC 800BF1AC 46000086 */ mov.s $f2, $f0 -/* 0BFDB0 800BF1B0 461AA03C */ c.lt.s $f20, $f26 -/* 0BFDB4 800BF1B4 00000000 */ nop -/* 0BFDB8 800BF1B8 4500000F */ bc1f .L800BF1F8 -/* 0BFDBC 800BF1BC 00000000 */ nop -/* 0BFDC0 800BF1C0 C6320020 */ lwc1 $f18, 0x20($s1) -/* 0BFDC4 800BF1C4 00000000 */ nop -/* 0BFDC8 800BF1C8 4612A202 */ mul.s $f8, $f20, $f18 -/* 0BFDCC 800BF1CC 444BF800 */ cfc1 $t3, $31 -/* 0BFDD0 800BF1D0 00000000 */ nop -/* 0BFDD4 800BF1D4 35610003 */ ori $at, $t3, 3 -/* 0BFDD8 800BF1D8 38210002 */ xori $at, $at, 2 -/* 0BFDDC 800BF1DC 44C1F800 */ ctc1 $at, $31 -/* 0BFDE0 800BF1E0 00000000 */ nop -/* 0BFDE4 800BF1E4 460042A4 */ cvt.w.s $f10, $f8 -/* 0BFDE8 800BF1E8 440C5000 */ mfc1 $t4, $f10 -/* 0BFDEC 800BF1EC 44CBF800 */ ctc1 $t3, $31 -/* 0BFDF0 800BF1F0 10000041 */ b .L800BF2F8 -/* 0BFDF4 800BF1F4 020C8023 */ subu $s0, $s0, $t4 -.L800BF1F8: -/* 0BFDF8 800BF1F8 C6240020 */ lwc1 $f4, 0x20($s1) -/* 0BFDFC 800BF1FC 00000000 */ nop -/* 0BFE00 800BF200 4604A182 */ mul.s $f6, $f20, $f4 -/* 0BFE04 800BF204 444DF800 */ cfc1 $t5, $31 -/* 0BFE08 800BF208 00000000 */ nop -/* 0BFE0C 800BF20C 35A10003 */ ori $at, $t5, 3 -/* 0BFE10 800BF210 38210002 */ xori $at, $at, 2 -/* 0BFE14 800BF214 44C1F800 */ ctc1 $at, $31 -/* 0BFE18 800BF218 00000000 */ nop -/* 0BFE1C 800BF21C 46003424 */ cvt.w.s $f16, $f6 -/* 0BFE20 800BF220 440E8000 */ mfc1 $t6, $f16 -/* 0BFE24 800BF224 44CDF800 */ ctc1 $t5, $31 -/* 0BFE28 800BF228 10000033 */ b .L800BF2F8 -/* 0BFE2C 800BF22C 020E8021 */ addu $s0, $s0, $t6 -.L800BF230: -/* 0BFE30 800BF230 922F0031 */ lbu $t7, 0x31($s1) -/* 0BFE34 800BF234 00000000 */ nop -/* 0BFE38 800BF238 11E00021 */ beqz $t7, .L800BF2C0 -/* 0BFE3C 800BF23C 00000000 */ nop -/* 0BFE40 800BF240 461AA03C */ c.lt.s $f20, $f26 -/* 0BFE44 800BF244 00000000 */ nop -/* 0BFE48 800BF248 4500000F */ bc1f .L800BF288 -/* 0BFE4C 800BF24C 00000000 */ nop -/* 0BFE50 800BF250 C6320020 */ lwc1 $f18, 0x20($s1) -/* 0BFE54 800BF254 00000000 */ nop -/* 0BFE58 800BF258 4612B202 */ mul.s $f8, $f22, $f18 -/* 0BFE5C 800BF25C 4458F800 */ cfc1 $t8, $31 -/* 0BFE60 800BF260 00000000 */ nop -/* 0BFE64 800BF264 37010003 */ ori $at, $t8, 3 -/* 0BFE68 800BF268 38210002 */ xori $at, $at, 2 -/* 0BFE6C 800BF26C 44C1F800 */ ctc1 $at, $31 -/* 0BFE70 800BF270 00000000 */ nop -/* 0BFE74 800BF274 460042A4 */ cvt.w.s $f10, $f8 -/* 0BFE78 800BF278 44195000 */ mfc1 $t9, $f10 -/* 0BFE7C 800BF27C 44D8F800 */ ctc1 $t8, $31 -/* 0BFE80 800BF280 1000001D */ b .L800BF2F8 -/* 0BFE84 800BF284 02198023 */ subu $s0, $s0, $t9 -.L800BF288: -/* 0BFE88 800BF288 C6240020 */ lwc1 $f4, 0x20($s1) -/* 0BFE8C 800BF28C 00000000 */ nop -/* 0BFE90 800BF290 4604B182 */ mul.s $f6, $f22, $f4 -/* 0BFE94 800BF294 4448F800 */ cfc1 $t0, $31 -/* 0BFE98 800BF298 00000000 */ nop -/* 0BFE9C 800BF29C 35010003 */ ori $at, $t0, 3 -/* 0BFEA0 800BF2A0 38210002 */ xori $at, $at, 2 -/* 0BFEA4 800BF2A4 44C1F800 */ ctc1 $at, $31 -/* 0BFEA8 800BF2A8 00000000 */ nop -/* 0BFEAC 800BF2AC 46003424 */ cvt.w.s $f16, $f6 -/* 0BFEB0 800BF2B0 44098000 */ mfc1 $t1, $f16 -/* 0BFEB4 800BF2B4 44C8F800 */ ctc1 $t0, $31 -/* 0BFEB8 800BF2B8 1000000F */ b .L800BF2F8 -/* 0BFEBC 800BF2BC 02098021 */ addu $s0, $s0, $t1 -.L800BF2C0: -/* 0BFEC0 800BF2C0 C6320020 */ lwc1 $f18, 0x20($s1) -/* 0BFEC4 800BF2C4 00000000 */ nop -/* 0BFEC8 800BF2C8 46120202 */ mul.s $f8, $f0, $f18 -/* 0BFECC 800BF2CC 444AF800 */ cfc1 $t2, $31 -/* 0BFED0 800BF2D0 00000000 */ nop -/* 0BFED4 800BF2D4 35410003 */ ori $at, $t2, 3 -/* 0BFED8 800BF2D8 38210002 */ xori $at, $at, 2 -/* 0BFEDC 800BF2DC 44C1F800 */ ctc1 $at, $31 -/* 0BFEE0 800BF2E0 00000000 */ nop -/* 0BFEE4 800BF2E4 460042A4 */ cvt.w.s $f10, $f8 -/* 0BFEE8 800BF2E8 440B5000 */ mfc1 $t3, $f10 -/* 0BFEEC 800BF2EC 44CAF800 */ ctc1 $t2, $31 -/* 0BFEF0 800BF2F0 020B8021 */ addu $s0, $s0, $t3 -/* 0BFEF4 800BF2F4 00000000 */ nop -.L800BF2F8: -/* 0BFEF8 800BF2F8 3C014780 */ li $at, 0x47800000 # 65536.000000 -/* 0BFEFC 800BF2FC 44812000 */ mtc1 $at, $f4 -/* 0BFF00 800BF300 C6300010 */ lwc1 $f16, 0x10($s1) -/* 0BFF04 800BF304 46041182 */ mul.s $f6, $f2, $f4 -/* 0BFF08 800BF308 00000000 */ nop -/* 0BFF0C 800BF30C 46103483 */ div.s $f18, $f6, $f16 -/* 0BFF10 800BF310 444CF800 */ cfc1 $t4, $31 -/* 0BFF14 800BF314 00000000 */ nop -/* 0BFF18 800BF318 35810003 */ ori $at, $t4, 3 -/* 0BFF1C 800BF31C 38210002 */ xori $at, $at, 2 -/* 0BFF20 800BF320 44C1F800 */ ctc1 $at, $31 -/* 0BFF24 800BF324 00000000 */ nop -/* 0BFF28 800BF328 46009224 */ cvt.w.s $f8, $f18 -/* 0BFF2C 800BF32C 44044000 */ mfc1 $a0, $f8 -/* 0BFF30 800BF330 44CCF800 */ ctc1 $t4, $31 -/* 0BFF34 800BF334 00046C00 */ sll $t5, $a0, 0x10 -/* 0BFF38 800BF338 0C01C1FE */ jal func_800707F8 -/* 0BFF3C 800BF33C 000D2403 */ sra $a0, $t5, 0x10 -/* 0BFF40 800BF340 00102400 */ sll $a0, $s0, 0x10 -/* 0BFF44 800BF344 00047C03 */ sra $t7, $a0, 0x10 -/* 0BFF48 800BF348 46000506 */ mov.s $f20, $f0 -/* 0BFF4C 800BF34C 0C01C1F1 */ jal func_800707C4 -/* 0BFF50 800BF350 01E02025 */ move $a0, $t7 -/* 0BFF54 800BF354 C62A0024 */ lwc1 $f10, 0x24($s1) -/* 0BFF58 800BF358 00000000 */ nop -/* 0BFF5C 800BF35C 46005102 */ mul.s $f4, $f10, $f0 -/* 0BFF60 800BF360 00000000 */ nop -/* 0BFF64 800BF364 46142182 */ mul.s $f6, $f4, $f20 -/* 0BFF68 800BF368 4606E700 */ add.s $f28, $f28, $f6 -.L800BF36C: -/* 0BFF6C 800BF36C 26730001 */ addiu $s3, $s3, 1 -/* 0BFF70 800BF370 2A610008 */ slti $at, $s3, 8 -/* 0BFF74 800BF374 10200005 */ beqz $at, .L800BF38C -/* 0BFF78 800BF378 26520001 */ addiu $s2, $s2, 1 -/* 0BFF7C 800BF37C 92420000 */ lbu $v0, ($s2) -/* 0BFF80 800BF380 00000000 */ nop -/* 0BFF84 800BF384 16A2FF69 */ bne $s5, $v0, .L800BF12C -/* 0BFF88 800BF388 00000000 */ nop -.L800BF38C: -/* 0BFF8C 800BF38C 4600E006 */ mov.s $f0, $f28 -.L800BF390: -/* 0BFF90 800BF390 8FBF005C */ lw $ra, 0x5c($sp) -/* 0BFF94 800BF394 C7B50010 */ lwc1 $f21, 0x10($sp) -/* 0BFF98 800BF398 C7B40014 */ lwc1 $f20, 0x14($sp) -/* 0BFF9C 800BF39C C7B70018 */ lwc1 $f23, 0x18($sp) -/* 0BFFA0 800BF3A0 C7B6001C */ lwc1 $f22, 0x1c($sp) -/* 0BFFA4 800BF3A4 C7B90020 */ lwc1 $f25, 0x20($sp) -/* 0BFFA8 800BF3A8 C7B80024 */ lwc1 $f24, 0x24($sp) -/* 0BFFAC 800BF3AC C7BB0028 */ lwc1 $f27, 0x28($sp) -/* 0BFFB0 800BF3B0 C7BA002C */ lwc1 $f26, 0x2c($sp) -/* 0BFFB4 800BF3B4 C7BD0030 */ lwc1 $f29, 0x30($sp) -/* 0BFFB8 800BF3B8 C7BC0034 */ lwc1 $f28, 0x34($sp) -/* 0BFFBC 800BF3BC C7BF0038 */ lwc1 $f31, 0x38($sp) -/* 0BFFC0 800BF3C0 C7BE003C */ lwc1 $f30, 0x3c($sp) -/* 0BFFC4 800BF3C4 8FB00044 */ lw $s0, 0x44($sp) -/* 0BFFC8 800BF3C8 8FB10048 */ lw $s1, 0x48($sp) -/* 0BFFCC 800BF3CC 8FB2004C */ lw $s2, 0x4c($sp) -/* 0BFFD0 800BF3D0 8FB30050 */ lw $s3, 0x50($sp) -/* 0BFFD4 800BF3D4 8FB40054 */ lw $s4, 0x54($sp) -/* 0BFFD8 800BF3D8 8FB50058 */ lw $s5, 0x58($sp) -/* 0BFFDC 800BF3DC 03E00008 */ jr $ra -/* 0BFFE0 800BF3E0 27BD0060 */ addiu $sp, $sp, 0x60 - -glabel func_800BF3E4 -/* 0BFFE4 800BF3E4 3C0E800E */ lui $t6, %hi(D_800E3190) # $t6, 0x800e -/* 0BFFE8 800BF3E8 8DCE3190 */ lw $t6, %lo(D_800E3190)($t6) -/* 0BFFEC 800BF3EC 00802825 */ move $a1, $a0 -/* 0BFFF0 800BF3F0 11C0004A */ beqz $t6, .L800BF51C -/* 0BFFF4 800BF3F4 3C08800E */ lui $t0, %hi(D_800E3188) # $t0, 0x800e -/* 0BFFF8 800BF3F8 25083188 */ addiu $t0, %lo(D_800E3188) # addiu $t0, $t0, 0x3188 -/* 0BFFFC 800BF3FC 8D040000 */ lw $a0, ($t0) -/* 0C0000 800BF400 00001025 */ move $v0, $zero -/* 0C0004 800BF404 1880000E */ blez $a0, .L800BF440 -/* 0C0008 800BF408 00001825 */ move $v1, $zero -/* 0C000C 800BF40C 3C0F800E */ lui $t7, %hi(D_800E3194) # $t7, 0x800e -/* 0C0010 800BF410 8DEF3194 */ lw $t7, %lo(D_800E3194)($t7) -/* 0C0014 800BF414 0000C080 */ sll $t8, $zero, 2 -/* 0C0018 800BF418 01F83021 */ addu $a2, $t7, $t8 -.L800BF41C: -/* 0C001C 800BF41C 8CD90000 */ lw $t9, ($a2) -/* 0C0020 800BF420 24420001 */ addiu $v0, $v0, 1 -/* 0C0024 800BF424 14B90002 */ bne $a1, $t9, .L800BF430 -/* 0C0028 800BF428 0044082A */ slt $at, $v0, $a0 -/* 0C002C 800BF42C 2403FFFF */ li $v1, -1 -.L800BF430: -/* 0C0030 800BF430 10200003 */ beqz $at, .L800BF440 -/* 0C0034 800BF434 24C60004 */ addiu $a2, $a2, 4 -/* 0C0038 800BF438 1060FFF8 */ beqz $v1, .L800BF41C -/* 0C003C 800BF43C 00000000 */ nop -.L800BF440: -/* 0C0040 800BF440 10600036 */ beqz $v1, .L800BF51C -/* 0C0044 800BF444 3C09800E */ lui $t1, %hi(D_800E318C) # $t1, 0x800e -/* 0C0048 800BF448 2529318C */ addiu $t1, %lo(D_800E318C) # addiu $t1, $t1, 0x318c -/* 0C004C 800BF44C 8D2D0000 */ lw $t5, ($t1) -/* 0C0050 800BF450 2442FFFF */ addiu $v0, $v0, -1 -/* 0C0054 800BF454 19A00028 */ blez $t5, .L800BF4F8 -/* 0C0058 800BF458 00001825 */ move $v1, $zero -/* 0C005C 800BF45C 3C0A800E */ lui $t2, %hi(D_800E3184) # $t2, 0x800e -/* 0C0060 800BF460 254A3184 */ addiu $t2, %lo(D_800E3184) # addiu $t2, $t2, 0x3184 -/* 0C0064 800BF464 240C00FF */ li $t4, 255 -/* 0C0068 800BF468 240B00FF */ li $t3, 255 -.L800BF46C: -/* 0C006C 800BF46C 8D4F0000 */ lw $t7, ($t2) -/* 0C0070 800BF470 000370C0 */ sll $t6, $v1, 3 -/* 0C0074 800BF474 01CF2821 */ addu $a1, $t6, $t7 -/* 0C0078 800BF478 90B80000 */ lbu $t8, ($a1) -/* 0C007C 800BF47C 00002025 */ move $a0, $zero -/* 0C0080 800BF480 11780018 */ beq $t3, $t8, .L800BF4E4 -/* 0C0084 800BF484 00000000 */ nop -/* 0C0088 800BF488 90A70000 */ lbu $a3, ($a1) -/* 0C008C 800BF48C 00A03021 */ addu $a2, $a1, $zero -.L800BF490: -/* 0C0090 800BF490 1447000C */ bne $v0, $a3, .L800BF4C4 -/* 0C0094 800BF494 28810007 */ slti $at, $a0, 7 -/* 0C0098 800BF498 10200007 */ beqz $at, .L800BF4B8 -/* 0C009C 800BF49C 00000000 */ nop -.L800BF4A0: -/* 0C00A0 800BF4A0 90D90001 */ lbu $t9, 1($a2) -/* 0C00A4 800BF4A4 24840001 */ addiu $a0, $a0, 1 -/* 0C00A8 800BF4A8 28810007 */ slti $at, $a0, 7 -/* 0C00AC 800BF4AC 24C60001 */ addiu $a2, $a2, 1 -/* 0C00B0 800BF4B0 1420FFFB */ bnez $at, .L800BF4A0 -/* 0C00B4 800BF4B4 A0D9FFFF */ sb $t9, -1($a2) -.L800BF4B8: -/* 0C00B8 800BF4B8 A0CC0000 */ sb $t4, ($a2) -/* 0C00BC 800BF4BC 24840001 */ addiu $a0, $a0, 1 -/* 0C00C0 800BF4C0 24C60001 */ addiu $a2, $a2, 1 -.L800BF4C4: -/* 0C00C4 800BF4C4 24840001 */ addiu $a0, $a0, 1 -/* 0C00C8 800BF4C8 28810008 */ slti $at, $a0, 8 -/* 0C00CC 800BF4CC 10200005 */ beqz $at, .L800BF4E4 -/* 0C00D0 800BF4D0 24C60001 */ addiu $a2, $a2, 1 -/* 0C00D4 800BF4D4 90C70000 */ lbu $a3, ($a2) -/* 0C00D8 800BF4D8 00000000 */ nop -/* 0C00DC 800BF4DC 1567FFEC */ bne $t3, $a3, .L800BF490 -/* 0C00E0 800BF4E0 00000000 */ nop -.L800BF4E4: -/* 0C00E4 800BF4E4 8D2D0000 */ lw $t5, ($t1) -/* 0C00E8 800BF4E8 24630001 */ addiu $v1, $v1, 1 -/* 0C00EC 800BF4EC 006D082A */ slt $at, $v1, $t5 -/* 0C00F0 800BF4F0 1420FFDE */ bnez $at, .L800BF46C -/* 0C00F4 800BF4F4 00000000 */ nop -.L800BF4F8: -/* 0C00F8 800BF4F8 3C0E800E */ lui $t6, %hi(D_800E3194) # $t6, 0x800e -/* 0C00FC 800BF4FC 8DCE3194 */ lw $t6, %lo(D_800E3194)($t6) -/* 0C0100 800BF500 00037880 */ sll $t7, $v1, 2 -/* 0C0104 800BF504 01CFC021 */ addu $t8, $t6, $t7 -/* 0C0108 800BF508 AF000000 */ sw $zero, ($t8) -/* 0C010C 800BF50C 8D190000 */ lw $t9, ($t0) -/* 0C0110 800BF510 00000000 */ nop -/* 0C0114 800BF514 272DFFFF */ addiu $t5, $t9, -1 -/* 0C0118 800BF518 AD0D0000 */ sw $t5, ($t0) -.L800BF51C: -/* 0C011C 800BF51C 03E00008 */ jr $ra -/* 0C0120 800BF520 00000000 */ nop - -glabel func_800BF524 -/* 0C0124 800BF524 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0C0128 800BF528 AFBF002C */ sw $ra, 0x2c($sp) -/* 0C012C 800BF52C 8C82003C */ lw $v0, 0x3c($a0) -/* 0C0130 800BF530 3C013FB0 */ li $at, 0x3FB00000 # 1.375000 -/* 0C0134 800BF534 904E0010 */ lbu $t6, 0x10($v0) -/* 0C0138 800BF538 44810800 */ mtc1 $at, $f1 -/* 0C013C 800BF53C 11C00002 */ beqz $t6, .L800BF548 -/* 0C0140 800BF540 00001825 */ move $v1, $zero -/* 0C0144 800BF544 24030001 */ li $v1, 1 -.L800BF548: -/* 0C0148 800BF548 904F0011 */ lbu $t7, 0x11($v0) -/* 0C014C 800BF54C 44800000 */ mtc1 $zero, $f0 -/* 0C0150 800BF550 11E00002 */ beqz $t7, .L800BF55C -/* 0C0154 800BF554 34780002 */ ori $t8, $v1, 2 -/* 0C0158 800BF558 03001825 */ move $v1, $t8 -.L800BF55C: -/* 0C015C 800BF55C 9459000A */ lhu $t9, 0xa($v0) -/* 0C0160 800BF560 8C85000C */ lw $a1, 0xc($a0) -/* 0C0164 800BF564 44992000 */ mtc1 $t9, $f4 -/* 0C0168 800BF568 8C860014 */ lw $a2, 0x14($a0) -/* 0C016C 800BF56C 07210005 */ bgez $t9, .L800BF584 -/* 0C0170 800BF570 46802120 */ cvt.s.w $f4, $f4 -/* 0C0174 800BF574 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0C0178 800BF578 44813000 */ mtc1 $at, $f6 -/* 0C017C 800BF57C 00000000 */ nop -/* 0C0180 800BF580 46062100 */ add.s $f4, $f4, $f6 -.L800BF584: -/* 0C0184 800BF584 90480009 */ lbu $t0, 9($v0) -/* 0C0188 800BF588 44072000 */ mfc1 $a3, $f4 -/* 0C018C 800BF58C 00084A00 */ sll $t1, $t0, 8 -/* 0C0190 800BF590 AFA90010 */ sw $t1, 0x10($sp) -/* 0C0194 800BF594 904A0008 */ lbu $t2, 8($v0) -/* 0C0198 800BF598 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0C019C 800BF59C 448A4000 */ mtc1 $t2, $f8 -/* 0C01A0 800BF5A0 05410004 */ bgez $t2, .L800BF5B4 -/* 0C01A4 800BF5A4 468042A0 */ cvt.s.w $f10, $f8 -/* 0C01A8 800BF5A8 44818000 */ mtc1 $at, $f16 -/* 0C01AC 800BF5AC 00000000 */ nop -/* 0C01B0 800BF5B0 46105280 */ add.s $f10, $f10, $f16 -.L800BF5B4: -/* 0C01B4 800BF5B4 460054A1 */ cvt.d.s $f18, $f10 -/* 0C01B8 800BF5B8 46209102 */ mul.d $f4, $f18, $f0 -/* 0C01BC 800BF5BC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0C01C0 800BF5C0 462021A0 */ cvt.s.d $f6, $f4 -/* 0C01C4 800BF5C4 E7A60014 */ swc1 $f6, 0x14($sp) -/* 0C01C8 800BF5C8 944B000E */ lhu $t3, 0xe($v0) -/* 0C01CC 800BF5CC 00000000 */ nop -/* 0C01D0 800BF5D0 448B4000 */ mtc1 $t3, $f8 -/* 0C01D4 800BF5D4 05610004 */ bgez $t3, .L800BF5E8 -/* 0C01D8 800BF5D8 46804420 */ cvt.s.w $f16, $f8 -/* 0C01DC 800BF5DC 44815000 */ mtc1 $at, $f10 -/* 0C01E0 800BF5E0 00000000 */ nop -/* 0C01E4 800BF5E4 460A8400 */ add.s $f16, $f16, $f10 -.L800BF5E8: -/* 0C01E8 800BF5E8 E7B00018 */ swc1 $f16, 0x18($sp) -/* 0C01EC 800BF5EC 944C000C */ lhu $t4, 0xc($v0) -/* 0C01F0 800BF5F0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0C01F4 800BF5F4 448C9000 */ mtc1 $t4, $f18 -/* 0C01F8 800BF5F8 05810004 */ bgez $t4, .L800BF60C -/* 0C01FC 800BF5FC 46809120 */ cvt.s.w $f4, $f18 -/* 0C0200 800BF600 44813000 */ mtc1 $at, $f6 -/* 0C0204 800BF604 00000000 */ nop -/* 0C0208 800BF608 46062100 */ add.s $f4, $f4, $f6 -.L800BF60C: -/* 0C020C 800BF60C 46002221 */ cvt.d.s $f8, $f4 -/* 0C0210 800BF610 46204282 */ mul.d $f10, $f8, $f0 -/* 0C0214 800BF614 AFA30020 */ sw $v1, 0x20($sp) -/* 0C0218 800BF618 46205420 */ cvt.s.d $f16, $f10 -/* 0C021C 800BF61C 0C02FD8D */ jal func_800BF634 -/* 0C0220 800BF620 E7B0001C */ swc1 $f16, 0x1c($sp) -/* 0C0224 800BF624 8FBF002C */ lw $ra, 0x2c($sp) -/* 0C0228 800BF628 27BD0030 */ addiu $sp, $sp, 0x30 -/* 0C022C 800BF62C 03E00008 */ jr $ra -/* 0C0230 800BF630 00000000 */ nop - -glabel func_800BF634 -/* 0C0234 800BF634 3C03800E */ lui $v1, %hi(D_800E3190) # $v1, 0x800e -/* 0C0238 800BF638 24633190 */ addiu $v1, %lo(D_800E3190) # addiu $v1, $v1, 0x3190 -/* 0C023C 800BF63C 8C6E0000 */ lw $t6, ($v1) -/* 0C0240 800BF640 44856000 */ mtc1 $a1, $f12 -/* 0C0244 800BF644 44877000 */ mtc1 $a3, $f14 -/* 0C0248 800BF648 00803825 */ move $a3, $a0 -/* 0C024C 800BF64C AFA40000 */ sw $a0, ($sp) -/* 0C0250 800BF650 AFA60008 */ sw $a2, 8($sp) -/* 0C0254 800BF654 11C000E5 */ beqz $t6, .L800BF9EC -/* 0C0258 800BF658 00002825 */ move $a1, $zero -/* 0C025C 800BF65C 3C0F800E */ lui $t7, %hi(D_800E3194) # $t7, 0x800e -/* 0C0260 800BF660 8DEF3194 */ lw $t7, %lo(D_800E3194)($t7) -/* 0C0264 800BF664 0000C080 */ sll $t8, $zero, 2 -/* 0C0268 800BF668 00001025 */ move $v0, $zero -/* 0C026C 800BF66C 00002025 */ move $a0, $zero -/* 0C0270 800BF670 01F83021 */ addu $a2, $t7, $t8 -.L800BF674: -/* 0C0274 800BF674 8CD90000 */ lw $t9, ($a2) -/* 0C0278 800BF678 24420001 */ addiu $v0, $v0, 1 -/* 0C027C 800BF67C 17200002 */ bnez $t9, .L800BF688 -/* 0C0280 800BF680 28410020 */ slti $at, $v0, 0x20 -/* 0C0284 800BF684 2404FFFF */ li $a0, -1 -.L800BF688: -/* 0C0288 800BF688 10200003 */ beqz $at, .L800BF698 -/* 0C028C 800BF68C 24C60004 */ addiu $a2, $a2, 4 -/* 0C0290 800BF690 1080FFF8 */ beqz $a0, .L800BF674 -/* 0C0294 800BF694 00000000 */ nop -.L800BF698: -/* 0C0298 800BF698 108000D4 */ beqz $a0, .L800BF9EC -/* 0C029C 800BF69C 2442FFFF */ addiu $v0, $v0, -1 -/* 0C02A0 800BF6A0 3C0B800E */ lui $t3, %hi(D_800E3194) # $t3, 0x800e -/* 0C02A4 800BF6A4 8D6B3194 */ lw $t3, %lo(D_800E3194)($t3) -/* 0C02A8 800BF6A8 00026080 */ sll $t4, $v0, 2 -/* 0C02AC 800BF6AC 3C04800E */ lui $a0, %hi(D_800E3188) # $a0, 0x800e -/* 0C02B0 800BF6B0 016C6821 */ addu $t5, $t3, $t4 -/* 0C02B4 800BF6B4 24843188 */ addiu $a0, %lo(D_800E3188) # addiu $a0, $a0, 0x3188 -/* 0C02B8 800BF6B8 ADA70000 */ sw $a3, ($t5) -/* 0C02BC 800BF6BC 8C8E0000 */ lw $t6, ($a0) -/* 0C02C0 800BF6C0 3C188013 */ lui $t8, %hi(D_80129FF0) # $t8, 0x8013 -/* 0C02C4 800BF6C4 25CF0001 */ addiu $t7, $t6, 1 -/* 0C02C8 800BF6C8 AC8F0000 */ sw $t7, ($a0) -/* 0C02CC 800BF6CC 8F189FF0 */ lw $t8, %lo(D_80129FF0)($t8) -/* 0C02D0 800BF6D0 3C018013 */ lui $at, %hi(D_8012A0B8) # $at, 0x8013 -/* 0C02D4 800BF6D4 C420A0B8 */ lwc1 $f0, %lo(D_8012A0B8)($at) -/* 0C02D8 800BF6D8 13000006 */ beqz $t8, .L800BF6F4 -/* 0C02DC 800BF6DC 3C198013 */ lui $t9, %hi(D_8012A0D0) # $t9, 0x8013 -/* 0C02E0 800BF6E0 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 0C02E4 800BF6E4 44812000 */ mtc1 $at, $f4 -/* 0C02E8 800BF6E8 00000000 */ nop -/* 0C02EC 800BF6EC 46040002 */ mul.s $f0, $f0, $f4 -/* 0C02F0 800BF6F0 00000000 */ nop -.L800BF6F4: -/* 0C02F4 800BF6F4 8F39A0D0 */ lw $t9, %lo(D_8012A0D0)($t9) -/* 0C02F8 800BF6F8 460E6201 */ sub.s $f8, $f12, $f14 -/* 0C02FC 800BF6FC 44993000 */ mtc1 $t9, $f6 -/* 0C0300 800BF700 3C05800E */ lui $a1, %hi(D_800E318C) # $a1, 0x800e -/* 0C0304 800BF704 468030A0 */ cvt.s.w $f2, $f6 -/* 0C0308 800BF708 8CA5318C */ lw $a1, %lo(D_800E318C)($a1) -/* 0C030C 800BF70C 46024281 */ sub.s $f10, $f8, $f2 -/* 0C0310 800BF710 00000000 */ nop -/* 0C0314 800BF714 46005403 */ div.s $f16, $f10, $f0 -/* 0C0318 800BF718 444BF800 */ cfc1 $t3, $31 -/* 0C031C 800BF71C 00000000 */ nop -/* 0C0320 800BF720 35610003 */ ori $at, $t3, 3 -/* 0C0324 800BF724 38210002 */ xori $at, $at, 2 -/* 0C0328 800BF728 44C1F800 */ ctc1 $at, $31 -/* 0C032C 800BF72C 00000000 */ nop -/* 0C0330 800BF730 460084A4 */ cvt.w.s $f18, $f16 -/* 0C0334 800BF734 44049000 */ mfc1 $a0, $f18 -/* 0C0338 800BF738 44CBF800 */ ctc1 $t3, $31 -/* 0C033C 800BF73C 0085082A */ slt $at, $a0, $a1 -/* 0C0340 800BF740 14200003 */ bnez $at, .L800BF750 -/* 0C0344 800BF744 00000000 */ nop -/* 0C0348 800BF748 03E00008 */ jr $ra -/* 0C034C 800BF74C 00001025 */ move $v0, $zero - -.L800BF750: -/* 0C0350 800BF750 460E6100 */ add.s $f4, $f12, $f14 -/* 0C0354 800BF754 46022181 */ sub.s $f6, $f4, $f2 -/* 0C0358 800BF758 00000000 */ nop -/* 0C035C 800BF75C 46003203 */ div.s $f8, $f6, $f0 -/* 0C0360 800BF760 444CF800 */ cfc1 $t4, $31 -/* 0C0364 800BF764 00000000 */ nop -/* 0C0368 800BF768 35810003 */ ori $at, $t4, 3 -/* 0C036C 800BF76C 38210002 */ xori $at, $at, 2 -/* 0C0370 800BF770 44C1F800 */ ctc1 $at, $31 -/* 0C0374 800BF774 00000000 */ nop -/* 0C0378 800BF778 460042A4 */ cvt.w.s $f10, $f8 -/* 0C037C 800BF77C 44065000 */ mfc1 $a2, $f10 -/* 0C0380 800BF780 44CCF800 */ ctc1 $t4, $31 -/* 0C0384 800BF784 04C10003 */ bgez $a2, .L800BF794 -/* 0C0388 800BF788 00C5082A */ slt $at, $a2, $a1 -/* 0C038C 800BF78C 03E00008 */ jr $ra -/* 0C0390 800BF790 00001025 */ move $v0, $zero - -.L800BF794: -/* 0C0394 800BF794 04810002 */ bgez $a0, .L800BF7A0 -/* 0C0398 800BF798 00026180 */ sll $t4, $v0, 6 -/* 0C039C 800BF79C 00002025 */ move $a0, $zero -.L800BF7A0: -/* 0C03A0 800BF7A0 14200002 */ bnez $at, .L800BF7AC -/* 0C03A4 800BF7A4 240A00FF */ li $t2, 255 -/* 0C03A8 800BF7A8 24A6FFFF */ addiu $a2, $a1, -1 -.L800BF7AC: -/* 0C03AC 800BF7AC 00C4082A */ slt $at, $a2, $a0 -/* 0C03B0 800BF7B0 14200017 */ bnez $at, .L800BF810 -/* 0C03B4 800BF7B4 00802825 */ move $a1, $a0 -/* 0C03B8 800BF7B8 3C09800E */ lui $t1, %hi(D_800E3184) # $t1, 0x800e -/* 0C03BC 800BF7BC 25293184 */ addiu $t1, %lo(D_800E3184) # addiu $t1, $t1, 0x3184 -/* 0C03C0 800BF7C0 24C80001 */ addiu $t0, $a2, 1 -.L800BF7C4: -/* 0C03C4 800BF7C4 8D2E0000 */ lw $t6, ($t1) -/* 0C03C8 800BF7C8 000568C0 */ sll $t5, $a1, 3 -/* 0C03CC 800BF7CC 01AE2021 */ addu $a0, $t5, $t6 -/* 0C03D0 800BF7D0 908F0007 */ lbu $t7, 7($a0) -/* 0C03D4 800BF7D4 24A50001 */ addiu $a1, $a1, 1 -/* 0C03D8 800BF7D8 154F000B */ bne $t2, $t7, .L800BF808 -/* 0C03DC 800BF7DC 00000000 */ nop -/* 0C03E0 800BF7E0 90980000 */ lbu $t8, ($a0) -/* 0C03E4 800BF7E4 00003025 */ move $a2, $zero -/* 0C03E8 800BF7E8 11580005 */ beq $t2, $t8, .L800BF800 -/* 0C03EC 800BF7EC 00803825 */ move $a3, $a0 -.L800BF7F0: -/* 0C03F0 800BF7F0 90F90001 */ lbu $t9, 1($a3) -/* 0C03F4 800BF7F4 24C60001 */ addiu $a2, $a2, 1 -/* 0C03F8 800BF7F8 1559FFFD */ bne $t2, $t9, .L800BF7F0 -/* 0C03FC 800BF7FC 24E70001 */ addiu $a3, $a3, 1 -.L800BF800: -/* 0C0400 800BF800 00865821 */ addu $t3, $a0, $a2 -/* 0C0404 800BF804 A1620000 */ sb $v0, ($t3) -.L800BF808: -/* 0C0408 800BF808 1505FFEE */ bne $t0, $a1, .L800BF7C4 -/* 0C040C 800BF80C 00000000 */ nop -.L800BF810: -/* 0C0410 800BF810 C7B00008 */ lwc1 $f16, 8($sp) -/* 0C0414 800BF814 8C6D0000 */ lw $t5, ($v1) -/* 0C0418 800BF818 460E8481 */ sub.s $f18, $f16, $f14 -/* 0C041C 800BF81C 018D2821 */ addu $a1, $t4, $t5 -/* 0C0420 800BF820 E4B20000 */ swc1 $f18, ($a1) -/* 0C0424 800BF824 C7A40008 */ lwc1 $f4, 8($sp) -/* 0C0428 800BF828 E4AC0008 */ swc1 $f12, 8($a1) -/* 0C042C 800BF82C 460E2180 */ add.s $f6, $f4, $f14 -/* 0C0430 800BF830 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 -/* 0C0434 800BF834 E4A60004 */ swc1 $f6, 4($a1) -/* 0C0438 800BF838 460E7282 */ mul.s $f10, $f14, $f14 -/* 0C043C 800BF83C C7A80008 */ lwc1 $f8, 8($sp) -/* 0C0440 800BF840 E4AE0010 */ swc1 $f14, 0x10($a1) -/* 0C0444 800BF844 A4A20018 */ sh $v0, 0x18($a1) -/* 0C0448 800BF848 E4AA0014 */ swc1 $f10, 0x14($a1) -/* 0C044C 800BF84C E4A8000C */ swc1 $f8, 0xc($a1) -/* 0C0450 800BF850 8FAE0010 */ lw $t6, 0x10($sp) -/* 0C0454 800BF854 3C01800F */ lui $at, 0x800f -/* 0C0458 800BF858 A4AE001A */ sh $t6, 0x1a($a1) -/* 0C045C 800BF85C 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) -/* 0C0460 800BF860 C7A00014 */ lwc1 $f0, 0x14($sp) -/* 0C0464 800BF864 15E0002B */ bnez $t7, .L800BF914 -/* 0C0468 800BF868 00000000 */ nop -/* 0C046C 800BF86C 3C01800F */ lui $at, %hi(D_800E92AC) # $at, 0x800f -/* 0C0470 800BF870 C7A00014 */ lwc1 $f0, 0x14($sp) -/* 0C0474 800BF874 C43392A8 */ lwc1 $f19, %lo(D_800E92A8)($at) -/* 0C0478 800BF878 C43292AC */ lwc1 $f18, %lo(D_800E92AC)($at) -/* 0C047C 800BF87C 46000421 */ cvt.d.s $f16, $f0 -/* 0C0480 800BF880 46328102 */ mul.d $f4, $f16, $f18 -/* 0C0484 800BF884 24190001 */ li $t9, 1 -/* 0C0488 800BF888 3C0141E0 */ li $at, 0x41E00000 # 28.000000 -/* 0C048C 800BF88C 4458F800 */ cfc1 $t8, $31 -/* 0C0490 800BF890 44D9F800 */ ctc1 $t9, $31 -/* 0C0494 800BF894 00000000 */ nop -/* 0C0498 800BF898 462021A4 */ cvt.w.d $f6, $f4 -/* 0C049C 800BF89C 4459F800 */ cfc1 $t9, $31 -/* 0C04A0 800BF8A0 00000000 */ nop -/* 0C04A4 800BF8A4 33390078 */ andi $t9, $t9, 0x78 -/* 0C04A8 800BF8A8 13200013 */ beqz $t9, .L800BF8F8 -/* 0C04AC 800BF8AC 00000000 */ nop -/* 0C04B0 800BF8B0 44813800 */ mtc1 $at, $f7 -/* 0C04B4 800BF8B4 44803000 */ mtc1 $zero, $f6 -/* 0C04B8 800BF8B8 24190001 */ li $t9, 1 -/* 0C04BC 800BF8BC 46262181 */ sub.d $f6, $f4, $f6 -/* 0C04C0 800BF8C0 3C018000 */ lui $at, %hi(D_7FFF92B4) # $at, 0x8000 -/* 0C04C4 800BF8C4 44D9F800 */ ctc1 $t9, $31 -/* 0C04C8 800BF8C8 00000000 */ nop -/* 0C04CC 800BF8CC 462031A4 */ cvt.w.d $f6, $f6 -/* 0C04D0 800BF8D0 4459F800 */ cfc1 $t9, $31 -/* 0C04D4 800BF8D4 00000000 */ nop -/* 0C04D8 800BF8D8 33390078 */ andi $t9, $t9, 0x78 -/* 0C04DC 800BF8DC 17200004 */ bnez $t9, .L800BF8F0 -/* 0C04E0 800BF8E0 00000000 */ nop -/* 0C04E4 800BF8E4 44193000 */ mfc1 $t9, $f6 -/* 0C04E8 800BF8E8 10000007 */ b .L800BF908 -/* 0C04EC 800BF8EC 0321C825 */ or $t9, $t9, $at -.L800BF8F0: -/* 0C04F0 800BF8F0 10000005 */ b .L800BF908 -/* 0C04F4 800BF8F4 2419FFFF */ li $t9, -1 -.L800BF8F8: -/* 0C04F8 800BF8F8 44193000 */ mfc1 $t9, $f6 -/* 0C04FC 800BF8FC 00000000 */ nop -/* 0C0500 800BF900 0720FFFB */ bltz $t9, .L800BF8F0 -/* 0C0504 800BF904 00000000 */ nop -.L800BF908: -/* 0C0508 800BF908 44D8F800 */ ctc1 $t8, $31 -/* 0C050C 800BF90C 10000029 */ b .L800BF9B4 -/* 0C0510 800BF910 ACB9001C */ sw $t9, 0x1c($a1) -.L800BF914: -/* 0C0514 800BF914 C42B92B0 */ lwc1 $f11, %lo(D_7FFF92B0)($at) -/* 0C0518 800BF918 C42A92B4 */ lwc1 $f10, %lo(D_7FFF92B4)($at) -/* 0C051C 800BF91C 46000221 */ cvt.d.s $f8, $f0 -/* 0C0520 800BF920 462A4402 */ mul.d $f16, $f8, $f10 -/* 0C0524 800BF924 240C0001 */ li $t4, 1 -/* 0C0528 800BF928 3C0141E0 */ li $at, 0x41E00000 # 28.000000 -/* 0C052C 800BF92C 444BF800 */ cfc1 $t3, $31 -/* 0C0530 800BF930 44CCF800 */ ctc1 $t4, $31 -/* 0C0534 800BF934 00000000 */ nop -/* 0C0538 800BF938 462084A4 */ cvt.w.d $f18, $f16 -/* 0C053C 800BF93C 444CF800 */ cfc1 $t4, $31 -/* 0C0540 800BF940 00000000 */ nop -/* 0C0544 800BF944 318C0078 */ andi $t4, $t4, 0x78 -/* 0C0548 800BF948 11800013 */ beqz $t4, .L800BF998 -/* 0C054C 800BF94C 00000000 */ nop -/* 0C0550 800BF950 44819800 */ mtc1 $at, $f19 -/* 0C0554 800BF954 44809000 */ mtc1 $zero, $f18 -/* 0C0558 800BF958 240C0001 */ li $t4, 1 -/* 0C055C 800BF95C 46328481 */ sub.d $f18, $f16, $f18 -/* 0C0560 800BF960 3C018000 */ lui $at, 0x8000 -/* 0C0564 800BF964 44CCF800 */ ctc1 $t4, $31 -/* 0C0568 800BF968 00000000 */ nop -/* 0C056C 800BF96C 462094A4 */ cvt.w.d $f18, $f18 -/* 0C0570 800BF970 444CF800 */ cfc1 $t4, $31 -/* 0C0574 800BF974 00000000 */ nop -/* 0C0578 800BF978 318C0078 */ andi $t4, $t4, 0x78 -/* 0C057C 800BF97C 15800004 */ bnez $t4, .L800BF990 -/* 0C0580 800BF980 00000000 */ nop -/* 0C0584 800BF984 440C9000 */ mfc1 $t4, $f18 -/* 0C0588 800BF988 10000007 */ b .L800BF9A8 -/* 0C058C 800BF98C 01816025 */ or $t4, $t4, $at -.L800BF990: -/* 0C0590 800BF990 10000005 */ b .L800BF9A8 -/* 0C0594 800BF994 240CFFFF */ li $t4, -1 -.L800BF998: -/* 0C0598 800BF998 440C9000 */ mfc1 $t4, $f18 -/* 0C059C 800BF99C 00000000 */ nop -/* 0C05A0 800BF9A0 0580FFFB */ bltz $t4, .L800BF990 -/* 0C05A4 800BF9A4 00000000 */ nop -.L800BF9A8: -/* 0C05A8 800BF9A8 44CBF800 */ ctc1 $t3, $31 -/* 0C05AC 800BF9AC ACAC001C */ sw $t4, 0x1c($a1) -/* 0C05B0 800BF9B0 00000000 */ nop -.L800BF9B4: -/* 0C05B4 800BF9B4 3C014780 */ li $at, 0x47800000 # 65536.000000 -/* 0C05B8 800BF9B8 C7A20018 */ lwc1 $f2, 0x18($sp) -/* 0C05BC 800BF9BC 44812000 */ mtc1 $at, $f4 -/* 0C05C0 800BF9C0 8FA20020 */ lw $v0, 0x20($sp) -/* 0C05C4 800BF9C4 46022183 */ div.s $f6, $f4, $f2 -/* 0C05C8 800BF9C8 304D0001 */ andi $t5, $v0, 1 -/* 0C05CC 800BF9CC 304E0002 */ andi $t6, $v0, 2 -/* 0C05D0 800BF9D0 E4A60020 */ swc1 $f6, 0x20($a1) -/* 0C05D4 800BF9D4 C7A8001C */ lwc1 $f8, 0x1c($sp) -/* 0C05D8 800BF9D8 E4A00028 */ swc1 $f0, 0x28($a1) -/* 0C05DC 800BF9DC A0AD0030 */ sb $t5, 0x30($a1) -/* 0C05E0 800BF9E0 A0AE0031 */ sb $t6, 0x31($a1) -/* 0C05E4 800BF9E4 E4A2002C */ swc1 $f2, 0x2c($a1) -/* 0C05E8 800BF9E8 E4A80024 */ swc1 $f8, 0x24($a1) -.L800BF9EC: -/* 0C05EC 800BF9EC 00A01025 */ move $v0, $a1 -/* 0C05F0 800BF9F0 03E00008 */ jr $ra -/* 0C05F4 800BF9F4 00000000 */ nop - -/* 0C05F8 800BF9F8 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0C05FC 800BF9FC E7B4000C */ swc1 $f20, 0xc($sp) -/* 0C0600 800BFA00 4486A000 */ mtc1 $a2, $f20 -/* 0C0604 800BFA04 AFB10014 */ sw $s1, 0x14($sp) -/* 0C0608 800BFA08 AFB00010 */ sw $s0, 0x10($sp) -/* 0C060C 800BFA0C E7B50008 */ swc1 $f21, 8($sp) -/* 0C0610 800BFA10 1080008A */ beqz $a0, .L800BFC3C -/* 0C0614 800BFA14 AFA50034 */ sw $a1, 0x34($sp) -/* 0C0618 800BFA18 3C0E8013 */ lui $t6, %hi(D_80129FF0) # $t6, 0x8013 -/* 0C061C 800BFA1C 8DCE9FF0 */ lw $t6, %lo(D_80129FF0)($t6) -/* 0C0620 800BFA20 3C018013 */ lui $at, %hi(D_8012A0B8) # $at, 0x8013 -/* 0C0624 800BFA24 C420A0B8 */ lwc1 $f0, %lo(D_8012A0B8)($at) -/* 0C0628 800BFA28 11C00006 */ beqz $t6, .L800BFA44 -/* 0C062C 800BFA2C 00001025 */ move $v0, $zero -/* 0C0630 800BFA30 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 0C0634 800BFA34 44812000 */ mtc1 $at, $f4 -/* 0C0638 800BFA38 00000000 */ nop -/* 0C063C 800BFA3C 46040002 */ mul.s $f0, $f0, $f4 -/* 0C0640 800BFA40 00000000 */ nop -.L800BFA44: -/* 0C0644 800BFA44 3C0D800E */ lui $t5, %hi(D_800E3184) # $t5, 0x800e -/* 0C0648 800BFA48 3C0C800E */ lui $t4, %hi(D_800E318C) # $t4, 0x800e -/* 0C064C 800BFA4C 3C0B8013 */ lui $t3, %hi(D_8012A0D0) # $t3, 0x8013 -/* 0C0650 800BFA50 94830018 */ lhu $v1, 0x18($a0) -/* 0C0654 800BFA54 8FA8001C */ lw $t0, 0x1c($sp) -/* 0C0658 800BFA58 256BA0D0 */ addiu $t3, %lo(D_8012A0D0) # addiu $t3, $t3, -0x5f30 -/* 0C065C 800BFA5C 258C318C */ addiu $t4, %lo(D_800E318C) # addiu $t4, $t4, 0x318c -/* 0C0660 800BFA60 25AD3184 */ addiu $t5, %lo(D_800E3184) # addiu $t5, $t5, 0x3184 -/* 0C0664 800BFA64 241100FF */ li $s1, 255 -/* 0C0668 800BFA68 241000FF */ li $s0, 255 -.L800BFA6C: -/* 0C066C 800BFA6C 8D6F0000 */ lw $t7, ($t3) -/* 0C0670 800BFA70 C4820008 */ lwc1 $f2, 8($a0) -/* 0C0674 800BFA74 448F3000 */ mtc1 $t7, $f6 -/* 0C0678 800BFA78 C48C0010 */ lwc1 $f12, 0x10($a0) -/* 0C067C 800BFA7C 468033A0 */ cvt.s.w $f14, $f6 -/* 0C0680 800BFA80 8D870000 */ lw $a3, ($t4) -/* 0C0684 800BFA84 24050001 */ li $a1, 1 -/* 0C0688 800BFA88 460C1201 */ sub.s $f8, $f2, $f12 -/* 0C068C 800BFA8C 460E4281 */ sub.s $f10, $f8, $f14 -/* 0C0690 800BFA90 00000000 */ nop -/* 0C0694 800BFA94 46005403 */ div.s $f16, $f10, $f0 -/* 0C0698 800BFA98 4458F800 */ cfc1 $t8, $31 -/* 0C069C 800BFA9C 00000000 */ nop -/* 0C06A0 800BFAA0 37010003 */ ori $at, $t8, 3 -/* 0C06A4 800BFAA4 38210002 */ xori $at, $at, 2 -/* 0C06A8 800BFAA8 44C1F800 */ ctc1 $at, $31 -/* 0C06AC 800BFAAC 00000000 */ nop -/* 0C06B0 800BFAB0 460084A4 */ cvt.w.s $f18, $f16 -/* 0C06B4 800BFAB4 44069000 */ mfc1 $a2, $f18 -/* 0C06B8 800BFAB8 44D8F800 */ ctc1 $t8, $31 -/* 0C06BC 800BFABC 00C7082A */ slt $at, $a2, $a3 -/* 0C06C0 800BFAC0 14200003 */ bnez $at, .L800BFAD0 -/* 0C06C4 800BFAC4 00000000 */ nop -/* 0C06C8 800BFAC8 10000004 */ b .L800BFADC -/* 0C06CC 800BFACC 00002825 */ move $a1, $zero -.L800BFAD0: -/* 0C06D0 800BFAD0 04C10002 */ bgez $a2, .L800BFADC -/* 0C06D4 800BFAD4 00000000 */ nop -/* 0C06D8 800BFAD8 00003025 */ move $a2, $zero -.L800BFADC: -/* 0C06DC 800BFADC 10A00015 */ beqz $a1, .L800BFB34 -/* 0C06E0 800BFAE0 00000000 */ nop -/* 0C06E4 800BFAE4 460C1100 */ add.s $f4, $f2, $f12 -/* 0C06E8 800BFAE8 460E2181 */ sub.s $f6, $f4, $f14 -/* 0C06EC 800BFAEC 00000000 */ nop -/* 0C06F0 800BFAF0 46003203 */ div.s $f8, $f6, $f0 -/* 0C06F4 800BFAF4 4459F800 */ cfc1 $t9, $31 -/* 0C06F8 800BFAF8 00000000 */ nop -/* 0C06FC 800BFAFC 37210003 */ ori $at, $t9, 3 -/* 0C0700 800BFB00 38210002 */ xori $at, $at, 2 -/* 0C0704 800BFB04 44C1F800 */ ctc1 $at, $31 -/* 0C0708 800BFB08 00000000 */ nop -/* 0C070C 800BFB0C 460042A4 */ cvt.w.s $f10, $f8 -/* 0C0710 800BFB10 44085000 */ mfc1 $t0, $f10 -/* 0C0714 800BFB14 44D9F800 */ ctc1 $t9, $31 -/* 0C0718 800BFB18 05010003 */ bgez $t0, .L800BFB28 -/* 0C071C 800BFB1C 0107082A */ slt $at, $t0, $a3 -/* 0C0720 800BFB20 10000004 */ b .L800BFB34 -/* 0C0724 800BFB24 00002825 */ move $a1, $zero -.L800BFB28: -/* 0C0728 800BFB28 14200002 */ bnez $at, .L800BFB34 -/* 0C072C 800BFB2C 00000000 */ nop -/* 0C0730 800BFB30 24E8FFFF */ addiu $t0, $a3, -1 -.L800BFB34: -/* 0C0734 800BFB34 10A0002E */ beqz $a1, .L800BFBF0 -/* 0C0738 800BFB38 0106082A */ slt $at, $t0, $a2 -/* 0C073C 800BFB3C 1420002C */ bnez $at, .L800BFBF0 -/* 0C0740 800BFB40 00C02825 */ move $a1, $a2 -/* 0C0744 800BFB44 250A0001 */ addiu $t2, $t0, 1 -.L800BFB48: -/* 0C0748 800BFB48 8DAF0000 */ lw $t7, ($t5) -/* 0C074C 800BFB4C 000570C0 */ sll $t6, $a1, 3 -/* 0C0750 800BFB50 00003825 */ move $a3, $zero -/* 0C0754 800BFB54 1040000F */ beqz $v0, .L800BFB94 -/* 0C0758 800BFB58 01CF3021 */ addu $a2, $t6, $t7 -/* 0C075C 800BFB5C 90D80007 */ lbu $t8, 7($a2) -/* 0C0760 800BFB60 00000000 */ nop -/* 0C0764 800BFB64 1618001F */ bne $s0, $t8, .L800BFBE4 -/* 0C0768 800BFB68 00000000 */ nop -/* 0C076C 800BFB6C 90D90000 */ lbu $t9, ($a2) -/* 0C0770 800BFB70 00000000 */ nop -/* 0C0774 800BFB74 12190005 */ beq $s0, $t9, .L800BFB8C -/* 0C0778 800BFB78 00000000 */ nop -.L800BFB7C: -/* 0C077C 800BFB7C 90CE0001 */ lbu $t6, 1($a2) -/* 0C0780 800BFB80 24C60001 */ addiu $a2, $a2, 1 -/* 0C0784 800BFB84 160EFFFD */ bne $s0, $t6, .L800BFB7C -/* 0C0788 800BFB88 00000000 */ nop -.L800BFB8C: -/* 0C078C 800BFB8C 10000015 */ b .L800BFBE4 -/* 0C0790 800BFB90 A0C30000 */ sb $v1, ($a2) -.L800BFB94: -/* 0C0794 800BFB94 00C74821 */ addu $t1, $a2, $a3 -.L800BFB98: -/* 0C0798 800BFB98 912F0000 */ lbu $t7, ($t1) -/* 0C079C 800BFB9C 28E10007 */ slti $at, $a3, 7 -/* 0C07A0 800BFBA0 146F000C */ bne $v1, $t7, .L800BFBD4 -/* 0C07A4 800BFBA4 00000000 */ nop -/* 0C07A8 800BFBA8 10200007 */ beqz $at, .L800BFBC8 -/* 0C07AC 800BFBAC 00000000 */ nop -.L800BFBB0: -/* 0C07B0 800BFBB0 91380001 */ lbu $t8, 1($t1) -/* 0C07B4 800BFBB4 24E70001 */ addiu $a3, $a3, 1 -/* 0C07B8 800BFBB8 28E10007 */ slti $at, $a3, 7 -/* 0C07BC 800BFBBC 25290001 */ addiu $t1, $t1, 1 -/* 0C07C0 800BFBC0 1420FFFB */ bnez $at, .L800BFBB0 -/* 0C07C4 800BFBC4 A138FFFF */ sb $t8, -1($t1) -.L800BFBC8: -/* 0C07C8 800BFBC8 A1310000 */ sb $s1, ($t1) -/* 0C07CC 800BFBCC 24E70001 */ addiu $a3, $a3, 1 -/* 0C07D0 800BFBD0 25290001 */ addiu $t1, $t1, 1 -.L800BFBD4: -/* 0C07D4 800BFBD4 24E70001 */ addiu $a3, $a3, 1 -/* 0C07D8 800BFBD8 28E10008 */ slti $at, $a3, 8 -/* 0C07DC 800BFBDC 1420FFEE */ bnez $at, .L800BFB98 -/* 0C07E0 800BFBE0 25290001 */ addiu $t1, $t1, 1 -.L800BFBE4: -/* 0C07E4 800BFBE4 24A50001 */ addiu $a1, $a1, 1 -/* 0C07E8 800BFBE8 1545FFD7 */ bne $t2, $a1, .L800BFB48 -/* 0C07EC 800BFBEC 00000000 */ nop -.L800BFBF0: -/* 0C07F0 800BFBF0 1440000E */ bnez $v0, .L800BFC2C -/* 0C07F4 800BFBF4 24010002 */ li $at, 2 -/* 0C07F8 800BFBF8 C4920008 */ lwc1 $f18, 8($a0) -/* 0C07FC 800BFBFC C7B00034 */ lwc1 $f16, 0x34($sp) -/* 0C0800 800BFC00 C48E000C */ lwc1 $f14, 0xc($a0) -/* 0C0804 800BFC04 46109400 */ add.s $f16, $f18, $f16 -/* 0C0808 800BFC08 C4920000 */ lwc1 $f18, ($a0) -/* 0C080C 800BFC0C C48C0004 */ lwc1 $f12, 4($a0) -/* 0C0810 800BFC10 46147380 */ add.s $f14, $f14, $f20 -/* 0C0814 800BFC14 E4900008 */ swc1 $f16, 8($a0) -/* 0C0818 800BFC18 46149480 */ add.s $f18, $f18, $f20 -/* 0C081C 800BFC1C E48E000C */ swc1 $f14, 0xc($a0) -/* 0C0820 800BFC20 46146300 */ add.s $f12, $f12, $f20 -/* 0C0824 800BFC24 E4920000 */ swc1 $f18, ($a0) -/* 0C0828 800BFC28 E48C0004 */ swc1 $f12, 4($a0) -.L800BFC2C: -/* 0C082C 800BFC2C 24420001 */ addiu $v0, $v0, 1 -/* 0C0830 800BFC30 1441FF8E */ bne $v0, $at, .L800BFA6C -/* 0C0834 800BFC34 00000000 */ nop -/* 0C0838 800BFC38 AFA8001C */ sw $t0, 0x1c($sp) -.L800BFC3C: -/* 0C083C 800BFC3C C7B50008 */ lwc1 $f21, 8($sp) -/* 0C0840 800BFC40 C7B4000C */ lwc1 $f20, 0xc($sp) -/* 0C0844 800BFC44 8FB00010 */ lw $s0, 0x10($sp) -/* 0C0848 800BFC48 8FB10014 */ lw $s1, 0x14($sp) -/* 0C084C 800BFC4C 03E00008 */ jr $ra -/* 0C0850 800BFC50 27BD0030 */ addiu $sp, $sp, 0x30 - -/* 0C0854 800BFC54 44856000 */ mtc1 $a1, $f12 -/* 0C0858 800BFC58 44867000 */ mtc1 $a2, $f14 -/* 0C085C 800BFC5C 1080008C */ beqz $a0, .L800BFE90 -/* 0C0860 800BFC60 AFA7000C */ sw $a3, 0xc($sp) -/* 0C0864 800BFC64 C4840010 */ lwc1 $f4, 0x10($a0) -/* 0C0868 800BFC68 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 0C086C 800BFC6C 460C2180 */ add.s $f6, $f4, $f12 -/* 0C0870 800BFC70 44818800 */ mtc1 $at, $f17 -/* 0C0874 800BFC74 E4860010 */ swc1 $f6, 0x10($a0) -/* 0C0878 800BFC78 C4800010 */ lwc1 $f0, 0x10($a0) -/* 0C087C 800BFC7C 44808000 */ mtc1 $zero, $f16 -/* 0C0880 800BFC80 46000221 */ cvt.d.s $f8, $f0 -/* 0C0884 800BFC84 4630403C */ c.lt.d $f8, $f16 -/* 0C0888 800BFC88 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0C088C 800BFC8C 45000006 */ bc1f .L800BFCA8 -/* 0C0890 800BFC90 00000000 */ nop -/* 0C0894 800BFC94 44815000 */ mtc1 $at, $f10 -/* 0C0898 800BFC98 00000000 */ nop -/* 0C089C 800BFC9C E48A0010 */ swc1 $f10, 0x10($a0) -/* 0C08A0 800BFCA0 C4800010 */ lwc1 $f0, 0x10($a0) -/* 0C08A4 800BFCA4 00000000 */ nop -.L800BFCA8: -/* 0C08A8 800BFCA8 C482000C */ lwc1 $f2, 0xc($a0) -/* 0C08AC 800BFCAC C4860028 */ lwc1 $f6, 0x28($a0) -/* 0C08B0 800BFCB0 46001481 */ sub.s $f18, $f2, $f0 -/* 0C08B4 800BFCB4 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 -/* 0C08B8 800BFCB8 46001100 */ add.s $f4, $f2, $f0 -/* 0C08BC 800BFCBC E4920000 */ swc1 $f18, ($a0) -/* 0C08C0 800BFCC0 460E3200 */ add.s $f8, $f6, $f14 -/* 0C08C4 800BFCC4 E4840004 */ swc1 $f4, 4($a0) -/* 0C08C8 800BFCC8 E4880028 */ swc1 $f8, 0x28($a0) -/* 0C08CC 800BFCCC 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) -/* 0C08D0 800BFCD0 3C01800F */ lui $at, 0x800f -/* 0C08D4 800BFCD4 15C0002B */ bnez $t6, .L800BFD84 -/* 0C08D8 800BFCD8 00000000 */ nop -/* 0C08DC 800BFCDC 3C01800F */ lui $at, %hi(D_800E92BC) # $at, 0x800f -/* 0C08E0 800BFCE0 C48A0028 */ lwc1 $f10, 0x28($a0) -/* 0C08E4 800BFCE4 C42592B8 */ lwc1 $f5, %lo(D_800E92B8)($at) -/* 0C08E8 800BFCE8 C42492BC */ lwc1 $f4, %lo(D_800E92BC)($at) -/* 0C08EC 800BFCEC 460054A1 */ cvt.d.s $f18, $f10 -/* 0C08F0 800BFCF0 46249182 */ mul.d $f6, $f18, $f4 -/* 0C08F4 800BFCF4 24180001 */ li $t8, 1 -/* 0C08F8 800BFCF8 3C0141E0 */ li $at, 0x41E00000 # 28.000000 -/* 0C08FC 800BFCFC 444FF800 */ cfc1 $t7, $31 -/* 0C0900 800BFD00 44D8F800 */ ctc1 $t8, $31 -/* 0C0904 800BFD04 00000000 */ nop -/* 0C0908 800BFD08 46203224 */ cvt.w.d $f8, $f6 -/* 0C090C 800BFD0C 4458F800 */ cfc1 $t8, $31 -/* 0C0910 800BFD10 00000000 */ nop -/* 0C0914 800BFD14 33180078 */ andi $t8, $t8, 0x78 -/* 0C0918 800BFD18 13000013 */ beqz $t8, .L800BFD68 -/* 0C091C 800BFD1C 00000000 */ nop -/* 0C0920 800BFD20 44814800 */ mtc1 $at, $f9 -/* 0C0924 800BFD24 44804000 */ mtc1 $zero, $f8 -/* 0C0928 800BFD28 24180001 */ li $t8, 1 -/* 0C092C 800BFD2C 46283201 */ sub.d $f8, $f6, $f8 -/* 0C0930 800BFD30 3C018000 */ lui $at, %hi(D_7FFF92C4) # $at, 0x8000 -/* 0C0934 800BFD34 44D8F800 */ ctc1 $t8, $31 -/* 0C0938 800BFD38 00000000 */ nop -/* 0C093C 800BFD3C 46204224 */ cvt.w.d $f8, $f8 -/* 0C0940 800BFD40 4458F800 */ cfc1 $t8, $31 -/* 0C0944 800BFD44 00000000 */ nop -/* 0C0948 800BFD48 33180078 */ andi $t8, $t8, 0x78 -/* 0C094C 800BFD4C 17000004 */ bnez $t8, .L800BFD60 -/* 0C0950 800BFD50 00000000 */ nop -/* 0C0954 800BFD54 44184000 */ mfc1 $t8, $f8 -/* 0C0958 800BFD58 10000007 */ b .L800BFD78 -/* 0C095C 800BFD5C 0301C025 */ or $t8, $t8, $at -.L800BFD60: -/* 0C0960 800BFD60 10000005 */ b .L800BFD78 -/* 0C0964 800BFD64 2418FFFF */ li $t8, -1 -.L800BFD68: -/* 0C0968 800BFD68 44184000 */ mfc1 $t8, $f8 -/* 0C096C 800BFD6C 00000000 */ nop -/* 0C0970 800BFD70 0700FFFB */ bltz $t8, .L800BFD60 -/* 0C0974 800BFD74 00000000 */ nop -.L800BFD78: -/* 0C0978 800BFD78 44CFF800 */ ctc1 $t7, $31 -/* 0C097C 800BFD7C 1000002A */ b .L800BFE28 -/* 0C0980 800BFD80 AC98001C */ sw $t8, 0x1c($a0) -.L800BFD84: -/* 0C0984 800BFD84 C48A0028 */ lwc1 $f10, 0x28($a0) -/* 0C0988 800BFD88 C42592C0 */ lwc1 $f5, %lo(D_7FFF92C0)($at) -/* 0C098C 800BFD8C C42492C4 */ lwc1 $f4, %lo(D_7FFF92C4)($at) -/* 0C0990 800BFD90 460054A1 */ cvt.d.s $f18, $f10 -/* 0C0994 800BFD94 46249182 */ mul.d $f6, $f18, $f4 -/* 0C0998 800BFD98 24080001 */ li $t0, 1 -/* 0C099C 800BFD9C 3C0141E0 */ li $at, 0x41E00000 # 28.000000 -/* 0C09A0 800BFDA0 4459F800 */ cfc1 $t9, $31 -/* 0C09A4 800BFDA4 44C8F800 */ ctc1 $t0, $31 -/* 0C09A8 800BFDA8 00000000 */ nop -/* 0C09AC 800BFDAC 46203224 */ cvt.w.d $f8, $f6 -/* 0C09B0 800BFDB0 4448F800 */ cfc1 $t0, $31 -/* 0C09B4 800BFDB4 00000000 */ nop -/* 0C09B8 800BFDB8 31080078 */ andi $t0, $t0, 0x78 -/* 0C09BC 800BFDBC 11000013 */ beqz $t0, .L800BFE0C -/* 0C09C0 800BFDC0 00000000 */ nop -/* 0C09C4 800BFDC4 44814800 */ mtc1 $at, $f9 -/* 0C09C8 800BFDC8 44804000 */ mtc1 $zero, $f8 -/* 0C09CC 800BFDCC 24080001 */ li $t0, 1 -/* 0C09D0 800BFDD0 46283201 */ sub.d $f8, $f6, $f8 -/* 0C09D4 800BFDD4 3C018000 */ lui $at, 0x8000 -/* 0C09D8 800BFDD8 44C8F800 */ ctc1 $t0, $31 -/* 0C09DC 800BFDDC 00000000 */ nop -/* 0C09E0 800BFDE0 46204224 */ cvt.w.d $f8, $f8 -/* 0C09E4 800BFDE4 4448F800 */ cfc1 $t0, $31 -/* 0C09E8 800BFDE8 00000000 */ nop -/* 0C09EC 800BFDEC 31080078 */ andi $t0, $t0, 0x78 -/* 0C09F0 800BFDF0 15000004 */ bnez $t0, .L800BFE04 -/* 0C09F4 800BFDF4 00000000 */ nop -/* 0C09F8 800BFDF8 44084000 */ mfc1 $t0, $f8 -/* 0C09FC 800BFDFC 10000007 */ b .L800BFE1C -/* 0C0A00 800BFE00 01014025 */ or $t0, $t0, $at -.L800BFE04: -/* 0C0A04 800BFE04 10000005 */ b .L800BFE1C -/* 0C0A08 800BFE08 2408FFFF */ li $t0, -1 -.L800BFE0C: -/* 0C0A0C 800BFE0C 44084000 */ mfc1 $t0, $f8 -/* 0C0A10 800BFE10 00000000 */ nop -/* 0C0A14 800BFE14 0500FFFB */ bltz $t0, .L800BFE04 -/* 0C0A18 800BFE18 00000000 */ nop -.L800BFE1C: -/* 0C0A1C 800BFE1C 44D9F800 */ ctc1 $t9, $31 -/* 0C0A20 800BFE20 AC88001C */ sw $t0, 0x1c($a0) -/* 0C0A24 800BFE24 00000000 */ nop -.L800BFE28: -/* 0C0A28 800BFE28 C48A002C */ lwc1 $f10, 0x2c($a0) -/* 0C0A2C 800BFE2C C7B2000C */ lwc1 $f18, 0xc($sp) -/* 0C0A30 800BFE30 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0C0A34 800BFE34 46125100 */ add.s $f4, $f10, $f18 -/* 0C0A38 800BFE38 E484002C */ swc1 $f4, 0x2c($a0) -/* 0C0A3C 800BFE3C C480002C */ lwc1 $f0, 0x2c($a0) -/* 0C0A40 800BFE40 00000000 */ nop -/* 0C0A44 800BFE44 460001A1 */ cvt.d.s $f6, $f0 -/* 0C0A48 800BFE48 4630303C */ c.lt.d $f6, $f16 -/* 0C0A4C 800BFE4C 00000000 */ nop -/* 0C0A50 800BFE50 45000006 */ bc1f .L800BFE6C -/* 0C0A54 800BFE54 00000000 */ nop -/* 0C0A58 800BFE58 44814000 */ mtc1 $at, $f8 -/* 0C0A5C 800BFE5C 00000000 */ nop -/* 0C0A60 800BFE60 E488002C */ swc1 $f8, 0x2c($a0) -/* 0C0A64 800BFE64 C480002C */ lwc1 $f0, 0x2c($a0) -/* 0C0A68 800BFE68 00000000 */ nop -.L800BFE6C: -/* 0C0A6C 800BFE6C 3C014780 */ li $at, 0x47800000 # 65536.000000 -/* 0C0A70 800BFE70 44815000 */ mtc1 $at, $f10 -/* 0C0A74 800BFE74 C4840024 */ lwc1 $f4, 0x24($a0) -/* 0C0A78 800BFE78 46005483 */ div.s $f18, $f10, $f0 -/* 0C0A7C 800BFE7C E4920020 */ swc1 $f18, 0x20($a0) -/* 0C0A80 800BFE80 C7A60010 */ lwc1 $f6, 0x10($sp) -/* 0C0A84 800BFE84 00000000 */ nop -/* 0C0A88 800BFE88 46062200 */ add.s $f8, $f4, $f6 -/* 0C0A8C 800BFE8C E4880024 */ swc1 $f8, 0x24($a0) -.L800BFE90: -/* 0C0A90 800BFE90 03E00008 */ jr $ra -/* 0C0A94 800BFE94 00000000 */ nop - -glabel func_800BFE98 -/* 0C0A98 800BFE98 3C09800E */ lui $t1, %hi(D_800E3190) # $t1, 0x800e -/* 0C0A9C 800BFE9C 3C08800E */ lui $t0, %hi(D_800E3194) # $t0, 0x800e -/* 0C0AA0 800BFEA0 00803825 */ move $a3, $a0 -/* 0C0AA4 800BFEA4 25083194 */ addiu $t0, %lo(D_800E3194) # addiu $t0, $t0, 0x3194 -/* 0C0AA8 800BFEA8 25293190 */ addiu $t1, %lo(D_800E3190) # addiu $t1, $t1, 0x3190 -/* 0C0AAC 800BFEAC 00001025 */ move $v0, $zero -/* 0C0AB0 800BFEB0 00001825 */ move $v1, $zero -/* 0C0AB4 800BFEB4 240A0020 */ li $t2, 32 -.L800BFEB8: -/* 0C0AB8 800BFEB8 8D0E0000 */ lw $t6, ($t0) -/* 0C0ABC 800BFEBC 00000000 */ nop -/* 0C0AC0 800BFEC0 01C32021 */ addu $a0, $t6, $v1 -/* 0C0AC4 800BFEC4 8C8F0000 */ lw $t7, ($a0) -/* 0C0AC8 800BFEC8 00000000 */ nop -/* 0C0ACC 800BFECC 11E0000E */ beqz $t7, .L800BFF08 -/* 0C0AD0 800BFED0 00000000 */ nop -/* 0C0AD4 800BFED4 8D380000 */ lw $t8, ($t1) -/* 0C0AD8 800BFED8 0002C980 */ sll $t9, $v0, 6 -/* 0C0ADC 800BFEDC 03193021 */ addu $a2, $t8, $t9 -/* 0C0AE0 800BFEE0 8CCB001C */ lw $t3, 0x1c($a2) -/* 0C0AE4 800BFEE4 94CC001A */ lhu $t4, 0x1a($a2) -/* 0C0AE8 800BFEE8 01670019 */ multu $t3, $a3 -/* 0C0AEC 800BFEEC 00002812 */ mflo $a1 -/* 0C0AF0 800BFEF0 00056902 */ srl $t5, $a1, 4 -/* 0C0AF4 800BFEF4 018D7021 */ addu $t6, $t4, $t5 -/* 0C0AF8 800BFEF8 A4CE001A */ sh $t6, 0x1a($a2) -/* 0C0AFC 800BFEFC 8D0F0000 */ lw $t7, ($t0) -/* 0C0B00 800BFF00 00000000 */ nop -/* 0C0B04 800BFF04 01E32021 */ addu $a0, $t7, $v1 -.L800BFF08: -/* 0C0B08 800BFF08 8C980004 */ lw $t8, 4($a0) -/* 0C0B0C 800BFF0C 00000000 */ nop -/* 0C0B10 800BFF10 1300000E */ beqz $t8, .L800BFF4C -/* 0C0B14 800BFF14 00000000 */ nop -/* 0C0B18 800BFF18 8D390000 */ lw $t9, ($t1) -/* 0C0B1C 800BFF1C 00025980 */ sll $t3, $v0, 6 -/* 0C0B20 800BFF20 032B3021 */ addu $a2, $t9, $t3 -/* 0C0B24 800BFF24 8CCC005C */ lw $t4, 0x5c($a2) -/* 0C0B28 800BFF28 94CD005A */ lhu $t5, 0x5a($a2) -/* 0C0B2C 800BFF2C 01870019 */ multu $t4, $a3 -/* 0C0B30 800BFF30 00002812 */ mflo $a1 -/* 0C0B34 800BFF34 00057102 */ srl $t6, $a1, 4 -/* 0C0B38 800BFF38 01AE7821 */ addu $t7, $t5, $t6 -/* 0C0B3C 800BFF3C A4CF005A */ sh $t7, 0x5a($a2) -/* 0C0B40 800BFF40 8D180000 */ lw $t8, ($t0) -/* 0C0B44 800BFF44 00000000 */ nop -/* 0C0B48 800BFF48 03032021 */ addu $a0, $t8, $v1 -.L800BFF4C: -/* 0C0B4C 800BFF4C 8C990008 */ lw $t9, 8($a0) -/* 0C0B50 800BFF50 00000000 */ nop -/* 0C0B54 800BFF54 1320000E */ beqz $t9, .L800BFF90 -/* 0C0B58 800BFF58 00000000 */ nop -/* 0C0B5C 800BFF5C 8D2B0000 */ lw $t3, ($t1) -/* 0C0B60 800BFF60 00026180 */ sll $t4, $v0, 6 -/* 0C0B64 800BFF64 016C3021 */ addu $a2, $t3, $t4 -/* 0C0B68 800BFF68 8CCD009C */ lw $t5, 0x9c($a2) -/* 0C0B6C 800BFF6C 94CE009A */ lhu $t6, 0x9a($a2) -/* 0C0B70 800BFF70 01A70019 */ multu $t5, $a3 -/* 0C0B74 800BFF74 00002812 */ mflo $a1 -/* 0C0B78 800BFF78 00057902 */ srl $t7, $a1, 4 -/* 0C0B7C 800BFF7C 01CFC021 */ addu $t8, $t6, $t7 -/* 0C0B80 800BFF80 A4D8009A */ sh $t8, 0x9a($a2) -/* 0C0B84 800BFF84 8D190000 */ lw $t9, ($t0) -/* 0C0B88 800BFF88 00000000 */ nop -/* 0C0B8C 800BFF8C 03232021 */ addu $a0, $t9, $v1 -.L800BFF90: -/* 0C0B90 800BFF90 8C8B000C */ lw $t3, 0xc($a0) -/* 0C0B94 800BFF94 00000000 */ nop -/* 0C0B98 800BFF98 1160000B */ beqz $t3, .L800BFFC8 -/* 0C0B9C 800BFF9C 00000000 */ nop -/* 0C0BA0 800BFFA0 8D2C0000 */ lw $t4, ($t1) -/* 0C0BA4 800BFFA4 00026980 */ sll $t5, $v0, 6 -/* 0C0BA8 800BFFA8 018D3021 */ addu $a2, $t4, $t5 -/* 0C0BAC 800BFFAC 8CCE00DC */ lw $t6, 0xdc($a2) -/* 0C0BB0 800BFFB0 94CF00DA */ lhu $t7, 0xda($a2) -/* 0C0BB4 800BFFB4 01C70019 */ multu $t6, $a3 -/* 0C0BB8 800BFFB8 00002812 */ mflo $a1 -/* 0C0BBC 800BFFBC 0005C102 */ srl $t8, $a1, 4 -/* 0C0BC0 800BFFC0 01F8C821 */ addu $t9, $t7, $t8 -/* 0C0BC4 800BFFC4 A4D900DA */ sh $t9, 0xda($a2) -.L800BFFC8: -/* 0C0BC8 800BFFC8 24420004 */ addiu $v0, $v0, 4 -/* 0C0BCC 800BFFCC 144AFFBA */ bne $v0, $t2, .L800BFEB8 -/* 0C0BD0 800BFFD0 24630010 */ addiu $v1, $v1, 0x10 -/* 0C0BD4 800BFFD4 03E00008 */ jr $ra -/* 0C0BD8 800BFFD8 00000000 */ nop - -glabel func_800BFFDC -/* 0C0BDC 800BFFDC 3C0E800E */ lui $t6, %hi(D_800E3198) # $t6, 0x800e -/* 0C0BE0 800BFFE0 8DCE3198 */ lw $t6, %lo(D_800E3198)($t6) -/* 0C0BE4 800BFFE4 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 0C0BE8 800BFFE8 AFB00018 */ sw $s0, 0x18($sp) -/* 0C0BEC 800BFFEC 00808025 */ move $s0, $a0 -/* 0C0BF0 800BFFF0 108E005B */ beq $a0, $t6, .L800C0160 -/* 0C0BF4 800BFFF4 AFBF001C */ sw $ra, 0x1c($sp) -/* 0C0BF8 800BFFF8 0C006E9D */ jal func_8001BA74 -/* 0C0BFC 800BFFFC 27A40050 */ addiu $a0, $sp, 0x50 -/* 0C0C00 800C0000 8FA50050 */ lw $a1, 0x50($sp) -/* 0C0C04 800C0004 00000000 */ nop -/* 0C0C08 800C0008 18A00056 */ blez $a1, .L800C0164 -/* 0C0C0C 800C000C 8FBF001C */ lw $ra, 0x1c($sp) -/* 0C0C10 800C0010 18A00012 */ blez $a1, .L800C005C -/* 0C0C14 800C0014 00003025 */ move $a2, $zero -/* 0C0C18 800C0018 00057880 */ sll $t7, $a1, 2 -/* 0C0C1C 800C001C 0000C080 */ sll $t8, $zero, 2 -/* 0C0C20 800C0020 00581821 */ addu $v1, $v0, $t8 -/* 0C0C24 800C0024 01E23821 */ addu $a3, $t7, $v0 -.L800C0028: -/* 0C0C28 800C0028 8C650000 */ lw $a1, ($v1) -/* 0C0C2C 800C002C 24630004 */ addiu $v1, $v1, 4 -/* 0C0C30 800C0030 8CA40064 */ lw $a0, 0x64($a1) -/* 0C0C34 800C0034 0067082B */ sltu $at, $v1, $a3 -/* 0C0C38 800C0038 84990000 */ lh $t9, ($a0) -/* 0C0C3C 800C003C 00000000 */ nop -/* 0C0C40 800C0040 17200002 */ bnez $t9, .L800C004C -/* 0C0C44 800C0044 00000000 */ nop -/* 0C0C48 800C0048 00A03025 */ move $a2, $a1 -.L800C004C: -/* 0C0C4C 800C004C 10200003 */ beqz $at, .L800C005C -/* 0C0C50 800C0050 00000000 */ nop -/* 0C0C54 800C0054 10C0FFF4 */ beqz $a2, .L800C0028 -/* 0C0C58 800C0058 00000000 */ nop -.L800C005C: -/* 0C0C5C 800C005C 10C00041 */ beqz $a2, .L800C0164 -/* 0C0C60 800C0060 8FBF001C */ lw $ra, 0x1c($sp) -/* 0C0C64 800C0064 8E02003C */ lw $v0, 0x3c($s0) -/* 0C0C68 800C0068 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0C0C6C 800C006C 94480008 */ lhu $t0, 8($v0) -/* 0C0C70 800C0070 3C038013 */ lui $v1, %hi(D_8012A720) # $v1, 0x8013 -/* 0C0C74 800C0074 44882000 */ mtc1 $t0, $f4 -/* 0C0C78 800C0078 05010004 */ bgez $t0, .L800C008C -/* 0C0C7C 800C007C 46802020 */ cvt.s.w $f0, $f4 -/* 0C0C80 800C0080 44813000 */ mtc1 $at, $f6 -/* 0C0C84 800C0084 00000000 */ nop -/* 0C0C88 800C0088 46060000 */ add.s $f0, $f0, $f6 -.L800C008C: -/* 0C0C8C 800C008C C4C8000C */ lwc1 $f8, 0xc($a2) -/* 0C0C90 800C0090 C60A000C */ lwc1 $f10, 0xc($s0) -/* 0C0C94 800C0094 46000002 */ mul.s $f0, $f0, $f0 -/* 0C0C98 800C0098 460A4081 */ sub.s $f2, $f8, $f10 -/* 0C0C9C 800C009C C4D00010 */ lwc1 $f16, 0x10($a2) -/* 0C0CA0 800C00A0 C6120010 */ lwc1 $f18, 0x10($s0) -/* 0C0CA4 800C00A4 46021202 */ mul.s $f8, $f2, $f2 -/* 0C0CA8 800C00A8 46128301 */ sub.s $f12, $f16, $f18 -/* 0C0CAC 800C00AC C4C40014 */ lwc1 $f4, 0x14($a2) -/* 0C0CB0 800C00B0 C6060014 */ lwc1 $f6, 0x14($s0) -/* 0C0CB4 800C00B4 460C6282 */ mul.s $f10, $f12, $f12 -/* 0C0CB8 800C00B8 46062381 */ sub.s $f14, $f4, $f6 -/* 0C0CBC 800C00BC 460E7482 */ mul.s $f18, $f14, $f14 -/* 0C0CC0 800C00C0 460A4400 */ add.s $f16, $f8, $f10 -/* 0C0CC4 800C00C4 46128100 */ add.s $f4, $f16, $f18 -/* 0C0CC8 800C00C8 4600203C */ c.lt.s $f4, $f0 -/* 0C0CCC 800C00CC 00000000 */ nop -/* 0C0CD0 800C00D0 45000024 */ bc1f .L800C0164 -/* 0C0CD4 800C00D4 8FBF001C */ lw $ra, 0x1c($sp) -/* 0C0CD8 800C00D8 9449000A */ lhu $t1, 0xa($v0) -/* 0C0CDC 800C00DC 2463A720 */ addiu $v1, %lo(D_8012A720) # addiu $v1, $v1, -0x58e0 -/* 0C0CE0 800C00E0 44893000 */ mtc1 $t1, $f6 -/* 0C0CE4 800C00E4 05210005 */ bgez $t1, .L800C00FC -/* 0C0CE8 800C00E8 46803220 */ cvt.s.w $f8, $f6 -/* 0C0CEC 800C00EC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0C0CF0 800C00F0 44815000 */ mtc1 $at, $f10 -/* 0C0CF4 800C00F4 00000000 */ nop -/* 0C0CF8 800C00F8 460A4200 */ add.s $f8, $f8, $f10 -.L800C00FC: -/* 0C0CFC 800C00FC 3C013B80 */ li $at, 0x3B800000 # 0.003906 -/* 0C0D00 800C0100 44818000 */ mtc1 $at, $f16 -/* 0C0D04 800C0104 3C018013 */ lui $at, %hi(D_8012A008) # $at, 0x8013 -/* 0C0D08 800C0108 46104482 */ mul.s $f18, $f8, $f16 -/* 0C0D0C 800C010C E4720000 */ swc1 $f18, ($v1) -/* 0C0D10 800C0110 944A000C */ lhu $t2, 0xc($v0) -/* 0C0D14 800C0114 C426A008 */ lwc1 $f6, %lo(D_8012A008)($at) -/* 0C0D18 800C0118 C4640000 */ lwc1 $f4, ($v1) -/* 0C0D1C 800C011C 448A4000 */ mtc1 $t2, $f8 -/* 0C0D20 800C0120 46062281 */ sub.s $f10, $f4, $f6 -/* 0C0D24 800C0124 05410005 */ bgez $t2, .L800C013C -/* 0C0D28 800C0128 46804420 */ cvt.s.w $f16, $f8 -/* 0C0D2C 800C012C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0C0D30 800C0130 44819000 */ mtc1 $at, $f18 -/* 0C0D34 800C0134 00000000 */ nop -/* 0C0D38 800C0138 46128400 */ add.s $f16, $f16, $f18 -.L800C013C: -/* 0C0D3C 800C013C 00000000 */ nop -/* 0C0D40 800C0140 46105103 */ div.s $f4, $f10, $f16 -/* 0C0D44 800C0144 3C018013 */ lui $at, %hi(D_8012A724) # $at, 0x8013 -/* 0C0D48 800C0148 E424A724 */ swc1 $f4, %lo(D_8012A724)($at) -/* 0C0D4C 800C014C 944B000C */ lhu $t3, 0xc($v0) -/* 0C0D50 800C0150 3C018013 */ lui $at, %hi(D_8012A728) # $at, 0x8013 -/* 0C0D54 800C0154 AC2BA728 */ sw $t3, %lo(D_8012A728)($at) -/* 0C0D58 800C0158 3C01800E */ lui $at, %hi(D_800E3198) # $at, 0x800e -/* 0C0D5C 800C015C AC303198 */ sw $s0, %lo(D_800E3198)($at) -.L800C0160: -/* 0C0D60 800C0160 8FBF001C */ lw $ra, 0x1c($sp) -.L800C0164: -/* 0C0D64 800C0164 8FB00018 */ lw $s0, 0x18($sp) -/* 0C0D68 800C0168 03E00008 */ jr $ra -/* 0C0D6C 800C016C 27BD0058 */ addiu $sp, $sp, 0x58 - -glabel func_800C0170 -/* 0C0D70 800C0170 240E0001 */ li $t6, 1 -/* 0C0D74 800C0174 3C01800E */ lui $at, 0x800e -/* 0C0D78 800C0178 03E00008 */ jr $ra -/* 0C0D7C 800C017C AC2E31A0 */ sw $t6, 0x31a0($at) - -glabel func_800C0180 -/* 0C0D80 800C0180 3C01800E */ lui $at, 0x800e -/* 0C0D84 800C0184 03E00008 */ jr $ra -/* 0C0D88 800C0188 AC2031A0 */ sw $zero, 0x31a0($at) - -glabel func_800C018C -/* 0C0D8C 800C018C 3C02800E */ lui $v0, %hi(D_800E31B0) # $v0, 0x800e -/* 0C0D90 800C0190 944231B0 */ lhu $v0, %lo(D_800E31B0)($v0) -/* 0C0D94 800C0194 00000000 */ nop -/* 0C0D98 800C0198 0002702B */ sltu $t6, $zero, $v0 -/* 0C0D9C 800C019C 15C0000C */ bnez $t6, .L800C01D0 -/* 0C0DA0 800C01A0 01C01025 */ move $v0, $t6 -/* 0C0DA4 800C01A4 3C02800E */ lui $v0, %hi(D_800E31B4) # $v0, 0x800e -/* 0C0DA8 800C01A8 944231B4 */ lhu $v0, %lo(D_800E31B4)($v0) -/* 0C0DAC 800C01AC 00000000 */ nop -/* 0C0DB0 800C01B0 0002782B */ sltu $t7, $zero, $v0 -/* 0C0DB4 800C01B4 11E00006 */ beqz $t7, .L800C01D0 -/* 0C0DB8 800C01B8 01E01025 */ move $v0, $t7 -/* 0C0DBC 800C01BC 3C02800E */ lui $v0, %hi(D_800E31BC) # $v0, 0x800e -/* 0C0DC0 800C01C0 804231BC */ lb $v0, %lo(D_800E31BC)($v0) -/* 0C0DC4 800C01C4 00000000 */ nop -/* 0C0DC8 800C01C8 0002C02B */ sltu $t8, $zero, $v0 -/* 0C0DCC 800C01CC 03001025 */ move $v0, $t8 -.L800C01D0: -/* 0C0DD0 800C01D0 03E00008 */ jr $ra -/* 0C0DD4 800C01D4 00000000 */ nop - -glabel func_800C01D8 -/* 0C0DD8 800C01D8 3C0E800E */ lui $t6, %hi(D_800E31A0) # $t6, 0x800e -/* 0C0DDC 800C01DC 8DCE31A0 */ lw $t6, %lo(D_800E31A0)($t6) -/* 0C0DE0 800C01E0 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0C0DE4 800C01E4 11C00003 */ beqz $t6, .L800C01F4 -/* 0C0DE8 800C01E8 AFBF002C */ sw $ra, 0x2c($sp) -/* 0C0DEC 800C01EC 100000A5 */ b .L800C0484 -/* 0C0DF0 800C01F0 00001025 */ move $v0, $zero -.L800C01F4: -/* 0C0DF4 800C01F4 0C0301C9 */ jal func_800C0724 -/* 0C0DF8 800C01F8 AFA40030 */ sw $a0, 0x30($sp) -/* 0C0DFC 800C01FC 8FA40030 */ lw $a0, 0x30($sp) -/* 0C0E00 800C0200 3C03800E */ lui $v1, %hi(D_800E31BC) # $v1, 0x800e -/* 0C0E04 800C0204 14800003 */ bnez $a0, .L800C0214 -/* 0C0E08 800C0208 246331BC */ addiu $v1, %lo(D_800E31BC) # addiu $v1, $v1, 0x31bc -/* 0C0E0C 800C020C 1000009D */ b .L800C0484 -/* 0C0E10 800C0210 00001025 */ move $v0, $zero -.L800C0214: -/* 0C0E14 800C0214 948F0004 */ lhu $t7, 4($a0) -/* 0C0E18 800C0218 3C06800E */ lui $a2, %hi(D_800E31B0) # $a2, 0x800e -/* 0C0E1C 800C021C 24C631B0 */ addiu $a2, %lo(D_800E31B0) # addiu $a2, $a2, 0x31b0 -/* 0C0E20 800C0220 A4CF0000 */ sh $t7, ($a2) -/* 0C0E24 800C0224 94980004 */ lhu $t8, 4($a0) -/* 0C0E28 800C0228 3C01800E */ lui $at, %hi(D_800E31B8) # $at, 0x800e -/* 0C0E2C 800C022C A43831B8 */ sh $t8, %lo(D_800E31B8)($at) -/* 0C0E30 800C0230 94990006 */ lhu $t9, 6($a0) -/* 0C0E34 800C0234 3C01800E */ lui $at, %hi(D_800E31B4) # $at, 0x800e -/* 0C0E38 800C0238 A43931B4 */ sh $t9, %lo(D_800E31B4)($at) -/* 0C0E3C 800C023C 90820000 */ lbu $v0, ($a0) -/* 0C0E40 800C0240 3C078013 */ lui $a3, %hi(D_8012A730) # $a3, 0x8013 -/* 0C0E44 800C0244 30480080 */ andi $t0, $v0, 0x80 -/* 0C0E48 800C0248 2D090001 */ sltiu $t1, $t0, 1 -/* 0C0E4C 800C024C A0690000 */ sb $t1, ($v1) -/* 0C0E50 800C0250 908A0000 */ lbu $t2, ($a0) -/* 0C0E54 800C0254 24E7A730 */ addiu $a3, %lo(D_8012A730) # addiu $a3, $a3, -0x58d0 -/* 0C0E58 800C0258 314B003F */ andi $t3, $t2, 0x3f -/* 0C0E5C 800C025C ACEB0000 */ sw $t3, ($a3) -/* 0C0E60 800C0260 908C0000 */ lbu $t4, ($a0) -/* 0C0E64 800C0264 3C01800E */ lui $at, %hi(D_800E31A8) # $at, 0x800e -/* 0C0E68 800C0268 318D0040 */ andi $t5, $t4, 0x40 -/* 0C0E6C 800C026C AC2D31A8 */ sw $t5, %lo(D_800E31A8)($at) -/* 0C0E70 800C0270 806E0000 */ lb $t6, ($v1) -/* 0C0E74 800C0274 3C05800E */ lui $a1, %hi(D_800E31A4) # $a1, 0x800e -/* 0C0E78 800C0278 24A531A4 */ addiu $a1, %lo(D_800E31A4) # addiu $a1, $a1, 0x31a4 -/* 0C0E7C 800C027C 15C00003 */ bnez $t6, .L800C028C -/* 0C0E80 800C0280 ACA00000 */ sw $zero, ($a1) -/* 0C0E84 800C0284 24180002 */ li $t8, 2 -/* 0C0E88 800C0288 ACB80000 */ sw $t8, ($a1) -.L800C028C: -/* 0C0E8C 800C028C 94D90000 */ lhu $t9, ($a2) -/* 0C0E90 800C0290 3C028013 */ lui $v0, %hi(D_8012A734) # $v0, 0x8013 -/* 0C0E94 800C0294 1B200078 */ blez $t9, .L800C0478 -/* 0C0E98 800C0298 2442A734 */ addiu $v0, %lo(D_8012A734) # addiu $v0, $v0, -0x58cc -/* 0C0E9C 800C029C 90480000 */ lbu $t0, ($v0) -/* 0C0EA0 800C02A0 3C038013 */ lui $v1, %hi(D_8012A735) # $v1, 0x8013 -/* 0C0EA4 800C02A4 3C018013 */ lui $at, %hi(D_8012A738) # $at, 0x8013 -/* 0C0EA8 800C02A8 2463A735 */ addiu $v1, %lo(D_8012A735) # addiu $v1, $v1, -0x58cb -/* 0C0EAC 800C02AC AC28A738 */ sw $t0, %lo(D_8012A738)($at) -/* 0C0EB0 800C02B0 90690000 */ lbu $t1, ($v1) -/* 0C0EB4 800C02B4 3C058013 */ lui $a1, %hi(D_8012A736) # $a1, 0x8013 -/* 0C0EB8 800C02B8 3C018013 */ lui $at, %hi(D_8012A73C) # $at, 0x8013 -/* 0C0EBC 800C02BC 24A5A736 */ addiu $a1, %lo(D_8012A736) # addiu $a1, $a1, -0x58ca -/* 0C0EC0 800C02C0 AC29A73C */ sw $t1, %lo(D_8012A73C)($at) -/* 0C0EC4 800C02C4 90AA0000 */ lbu $t2, ($a1) -/* 0C0EC8 800C02C8 3C018013 */ lui $at, %hi(D_8012A740) # $at, 0x8013 -/* 0C0ECC 800C02CC AC2AA740 */ sw $t2, %lo(D_8012A740)($at) -/* 0C0ED0 800C02D0 908B0001 */ lbu $t3, 1($a0) -/* 0C0ED4 800C02D4 8CEE0000 */ lw $t6, ($a3) -/* 0C0ED8 800C02D8 A04B0000 */ sb $t3, ($v0) -/* 0C0EDC 800C02DC 908C0002 */ lbu $t4, 2($a0) -/* 0C0EE0 800C02E0 2DC10007 */ sltiu $at, $t6, 7 -/* 0C0EE4 800C02E4 A06C0000 */ sb $t4, ($v1) -/* 0C0EE8 800C02E8 908D0003 */ lbu $t5, 3($a0) -/* 0C0EEC 800C02EC 10200062 */ beqz $at, .L800C0478 -/* 0C0EF0 800C02F0 A0AD0000 */ sb $t5, ($a1) -/* 0C0EF4 800C02F4 000E7080 */ sll $t6, $t6, 2 -/* 0C0EF8 800C02F8 3C01800F */ lui $at, 0x800f -/* 0C0EFC 800C02FC 002E0821 */ addu $at, $at, $t6 -/* 0C0F00 800C0300 8C2E92D0 */ lw $t6, -0x6d30($at) -/* 0C0F04 800C0304 00000000 */ nop -/* 0C0F08 800C0308 01C00008 */ jr $t6 -/* 0C0F0C 800C030C 00000000 */ nop -/* 0C0F10 800C0310 0C0301E0 */ jal func_800C0780 -/* 0C0F14 800C0314 00000000 */ nop -/* 0C0F18 800C0318 10000057 */ b .L800C0478 -/* 0C0F1C 800C031C 00000000 */ nop -/* 0C0F20 800C0320 3C02800E */ lui $v0, %hi(D_800E32D0) # $v0, 0x800e -/* 0C0F24 800C0324 3C0F800E */ lui $t7, %hi(D_800E32A0) # $t7, 0x800e -/* 0C0F28 800C0328 3C18800E */ lui $t8, %hi(D_800E32AC) # $t8, 0x800e -/* 0C0F2C 800C032C 3C19800E */ lui $t9, %hi(D_800E32B8) # $t9, 0x800e -/* 0C0F30 800C0330 244232D0 */ addiu $v0, %lo(D_800E32D0) # addiu $v0, $v0, 0x32d0 -/* 0C0F34 800C0334 273932B8 */ addiu $t9, %lo(D_800E32B8) # addiu $t9, $t9, 0x32b8 -/* 0C0F38 800C0338 271832AC */ addiu $t8, %lo(D_800E32AC) # addiu $t8, $t8, 0x32ac -/* 0C0F3C 800C033C 25EF32A0 */ addiu $t7, %lo(D_800E32A0) # addiu $t7, $t7, 0x32a0 -/* 0C0F40 800C0340 3C07800E */ lui $a3, %hi(D_800E3230) # $a3, 0x800e -/* 0C0F44 800C0344 24E73230 */ addiu $a3, %lo(D_800E3230) # addiu $a3, $a3, 0x3230 -/* 0C0F48 800C0348 AFAF0010 */ sw $t7, 0x10($sp) -/* 0C0F4C 800C034C AFB80014 */ sw $t8, 0x14($sp) -/* 0C0F50 800C0350 AFB90020 */ sw $t9, 0x20($sp) -/* 0C0F54 800C0354 AFA20018 */ sw $v0, 0x18($sp) -/* 0C0F58 800C0358 AFA2001C */ sw $v0, 0x1c($sp) -/* 0C0F5C 800C035C 2405000C */ li $a1, 12 -/* 0C0F60 800C0360 0C0302C0 */ jal func_800C0B00 -/* 0C0F64 800C0364 24060008 */ li $a2, 8 -/* 0C0F68 800C0368 10000043 */ b .L800C0478 -/* 0C0F6C 800C036C 00000000 */ nop -/* 0C0F70 800C0370 3C02800E */ lui $v0, %hi(D_800E32D0) # $v0, 0x800e -/* 0C0F74 800C0374 3C08800E */ lui $t0, %hi(D_800E32A0) # $t0, 0x800e -/* 0C0F78 800C0378 3C09800E */ lui $t1, %hi(D_800E32AC) # $t1, 0x800e -/* 0C0F7C 800C037C 3C0A800E */ lui $t2, %hi(D_800E32B8) # $t2, 0x800e -/* 0C0F80 800C0380 244232D0 */ addiu $v0, %lo(D_800E32D0) # addiu $v0, $v0, 0x32d0 -/* 0C0F84 800C0384 254A32B8 */ addiu $t2, %lo(D_800E32B8) # addiu $t2, $t2, 0x32b8 -/* 0C0F88 800C0388 252932AC */ addiu $t1, %lo(D_800E32AC) # addiu $t1, $t1, 0x32ac -/* 0C0F8C 800C038C 250832A0 */ addiu $t0, %lo(D_800E32A0) # addiu $t0, $t0, 0x32a0 -/* 0C0F90 800C0390 3C07800E */ lui $a3, %hi(D_800E3268) # $a3, 0x800e -/* 0C0F94 800C0394 24E73268 */ addiu $a3, %lo(D_800E3268) # addiu $a3, $a3, 0x3268 -/* 0C0F98 800C0398 AFA80010 */ sw $t0, 0x10($sp) -/* 0C0F9C 800C039C AFA90014 */ sw $t1, 0x14($sp) -/* 0C0FA0 800C03A0 AFAA0020 */ sw $t2, 0x20($sp) -/* 0C0FA4 800C03A4 AFA20018 */ sw $v0, 0x18($sp) -/* 0C0FA8 800C03A8 AFA2001C */ sw $v0, 0x1c($sp) -/* 0C0FAC 800C03AC 2405000C */ li $a1, 12 -/* 0C0FB0 800C03B0 0C0302C0 */ jal func_800C0B00 -/* 0C0FB4 800C03B4 24060008 */ li $a2, 8 -/* 0C0FB8 800C03B8 1000002F */ b .L800C0478 -/* 0C0FBC 800C03BC 00000000 */ nop -/* 0C0FC0 800C03C0 0C030575 */ jal func_800C15D4 -/* 0C0FC4 800C03C4 00000000 */ nop -/* 0C0FC8 800C03C8 1000002B */ b .L800C0478 -/* 0C0FCC 800C03CC 00000000 */ nop -/* 0C0FD0 800C03D0 3C02800E */ lui $v0, %hi(D_800E34F8) # $v0, 0x800e -/* 0C0FD4 800C03D4 3C0B800E */ lui $t3, %hi(D_800E349C) # $t3, 0x800e -/* 0C0FD8 800C03D8 3C0C800E */ lui $t4, %hi(D_800E3440) # $t4, 0x800e -/* 0C0FDC 800C03DC 3C0D800E */ lui $t5, %hi(D_800E3554) # $t5, 0x800e -/* 0C0FE0 800C03E0 244234F8 */ addiu $v0, %lo(D_800E34F8) # addiu $v0, $v0, 0x34f8 -/* 0C0FE4 800C03E4 25AD3554 */ addiu $t5, %lo(D_800E3554) # addiu $t5, $t5, 0x3554 -/* 0C0FE8 800C03E8 258C3440 */ addiu $t4, %lo(D_800E3440) # addiu $t4, $t4, 0x3440 -/* 0C0FEC 800C03EC 256B349C */ addiu $t3, %lo(D_800E349C) # addiu $t3, $t3, 0x349c -/* 0C0FF0 800C03F0 3C07800E */ lui $a3, %hi(D_800E3344) # $a3, 0x800e -/* 0C0FF4 800C03F4 24E73344 */ addiu $a3, %lo(D_800E3344) # addiu $a3, $a3, 0x3344 -/* 0C0FF8 800C03F8 AFAB0010 */ sw $t3, 0x10($sp) -/* 0C0FFC 800C03FC AFAC0014 */ sw $t4, 0x14($sp) -/* 0C1000 800C0400 AFAD0020 */ sw $t5, 0x20($sp) -/* 0C1004 800C0404 AFA20018 */ sw $v0, 0x18($sp) -/* 0C1008 800C0408 AFA2001C */ sw $v0, 0x1c($sp) -/* 0C100C 800C040C 2405005C */ li $a1, 92 -/* 0C1010 800C0410 0C0302C0 */ jal func_800C0B00 -/* 0C1014 800C0414 24060050 */ li $a2, 80 -/* 0C1018 800C0418 10000017 */ b .L800C0478 -/* 0C101C 800C041C 00000000 */ nop -/* 0C1020 800C0420 3C02800E */ lui $v0, %hi(D_800E3338) # $v0, 0x800e -/* 0C1024 800C0424 3C0E800E */ lui $t6, %hi(D_800E330C) # $t6, 0x800e -/* 0C1028 800C0428 3C0F800E */ lui $t7, %hi(D_800E3318) # $t7, 0x800e -/* 0C102C 800C042C 3C18800E */ lui $t8, %hi(D_800E3324) # $t8, 0x800e -/* 0C1030 800C0430 24423338 */ addiu $v0, %lo(D_800E3338) # addiu $v0, $v0, 0x3338 -/* 0C1034 800C0434 27183324 */ addiu $t8, %lo(D_800E3324) # addiu $t8, $t8, 0x3324 -/* 0C1038 800C0438 25EF3318 */ addiu $t7, %lo(D_800E3318) # addiu $t7, $t7, 0x3318 -/* 0C103C 800C043C 25CE330C */ addiu $t6, %lo(D_800E330C) # addiu $t6, $t6, 0x330c -/* 0C1040 800C0440 3C07800E */ lui $a3, %hi(D_800E32DC) # $a3, 0x800e -/* 0C1044 800C0444 24E732DC */ addiu $a3, %lo(D_800E32DC) # addiu $a3, $a3, 0x32dc -/* 0C1048 800C0448 AFAE0010 */ sw $t6, 0x10($sp) -/* 0C104C 800C044C AFAF0014 */ sw $t7, 0x14($sp) -/* 0C1050 800C0450 AFB80020 */ sw $t8, 0x20($sp) -/* 0C1054 800C0454 AFA20018 */ sw $v0, 0x18($sp) -/* 0C1058 800C0458 AFA2001C */ sw $v0, 0x1c($sp) -/* 0C105C 800C045C 2405000A */ li $a1, 10 -/* 0C1060 800C0460 0C0302C0 */ jal func_800C0B00 -/* 0C1064 800C0464 24060006 */ li $a2, 6 -/* 0C1068 800C0468 10000003 */ b .L800C0478 -/* 0C106C 800C046C 00000000 */ nop -/* 0C1070 800C0470 0C030990 */ jal func_800C2640 -/* 0C1074 800C0474 00000000 */ nop -.L800C0478: -/* 0C1078 800C0478 3C02800E */ lui $v0, %hi(D_800E31AC) # $v0, 0x800e -/* 0C107C 800C047C 8C4231AC */ lw $v0, %lo(D_800E31AC)($v0) -/* 0C1080 800C0480 00000000 */ nop -.L800C0484: -/* 0C1084 800C0484 8FBF002C */ lw $ra, 0x2c($sp) -/* 0C1088 800C0488 27BD0030 */ addiu $sp, $sp, 0x30 -/* 0C108C 800C048C 03E00008 */ jr $ra -/* 0C1090 800C0490 00000000 */ nop - -glabel func_800C0494 -/* 0C1094 800C0494 3C03800E */ lui $v1, %hi(D_800E31A4) # $v1, 0x800e -/* 0C1098 800C0498 246331A4 */ addiu $v1, %lo(D_800E31A4) # addiu $v1, $v1, 0x31a4 -/* 0C109C 800C049C 8C620000 */ lw $v0, ($v1) -/* 0C10A0 800C04A0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C10A4 800C04A4 10400005 */ beqz $v0, .L800C04BC -/* 0C10A8 800C04A8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0C10AC 800C04AC 244EFFFF */ addiu $t6, $v0, -1 -/* 0C10B0 800C04B0 AC6E0000 */ sw $t6, ($v1) -/* 0C10B4 800C04B4 10000005 */ b .L800C04CC -/* 0C10B8 800C04B8 00002025 */ move $a0, $zero -.L800C04BC: -/* 0C10BC 800C04BC 28810006 */ slti $at, $a0, 6 -/* 0C10C0 800C04C0 14200002 */ bnez $at, .L800C04CC -/* 0C10C4 800C04C4 00000000 */ nop -/* 0C10C8 800C04C8 24040005 */ li $a0, 5 -.L800C04CC: -/* 0C10CC 800C04CC 3C03800E */ lui $v1, %hi(D_800E31AC) # $v1, 0x800e -/* 0C10D0 800C04D0 246331AC */ addiu $v1, %lo(D_800E31AC) # addiu $v1, $v1, 0x31ac -/* 0C10D4 800C04D4 8C6F0000 */ lw $t7, ($v1) -/* 0C10D8 800C04D8 00000000 */ nop -/* 0C10DC 800C04DC 11E00036 */ beqz $t7, .L800C05B8 -/* 0C10E0 800C04E0 3C02800E */ lui $v0, %hi(D_800E31B0) # $v0, 0x800e -/* 0C10E4 800C04E4 944231B0 */ lhu $v0, %lo(D_800E31B0)($v0) -/* 0C10E8 800C04E8 2418FFFF */ li $t8, -1 -/* 0C10EC 800C04EC 14400002 */ bnez $v0, .L800C04F8 -/* 0C10F0 800C04F0 3C19800E */ lui $t9, %hi(D_800E31B4) # $t9, 0x800e -/* 0C10F4 800C04F4 AC780000 */ sw $t8, ($v1) -.L800C04F8: -/* 0C10F8 800C04F8 1440000A */ bnez $v0, .L800C0524 -/* 0C10FC 800C04FC 3C0B8013 */ lui $t3, %hi(D_8012A730) # $t3, 0x8013 -/* 0C1100 800C0500 973931B4 */ lhu $t9, %lo(D_800E31B4)($t9) -/* 0C1104 800C0504 00000000 */ nop -/* 0C1108 800C0508 17200006 */ bnez $t9, .L800C0524 -/* 0C110C 800C050C 00000000 */ nop -/* 0C1110 800C0510 0C0301C9 */ jal func_800C0724 -/* 0C1114 800C0514 00000000 */ nop -/* 0C1118 800C0518 3C03800E */ lui $v1, %hi(D_800E31AC) # $v1, 0x800e -/* 0C111C 800C051C 10000026 */ b .L800C05B8 -/* 0C1120 800C0520 246331AC */ addiu $v1, %lo(D_800E31AC) # addiu $v1, $v1, 0x31ac -.L800C0524: -/* 0C1124 800C0524 18400006 */ blez $v0, .L800C0540 -/* 0C1128 800C0528 3C02800E */ lui $v0, %hi(D_800E31D0) # $v0, 0x800e -/* 0C112C 800C052C 244231D0 */ addiu $v0, %lo(D_800E31D0) # addiu $v0, $v0, 0x31d0 -/* 0C1130 800C0530 8C480000 */ lw $t0, ($v0) -/* 0C1134 800C0534 24090001 */ li $t1, 1 -/* 0C1138 800C0538 01285023 */ subu $t2, $t1, $t0 -/* 0C113C 800C053C AC4A0000 */ sw $t2, ($v0) -.L800C0540: -/* 0C1140 800C0540 8D6BA730 */ lw $t3, %lo(D_8012A730)($t3) -/* 0C1144 800C0544 00000000 */ nop -/* 0C1148 800C0548 2D610007 */ sltiu $at, $t3, 7 -/* 0C114C 800C054C 1020001A */ beqz $at, .L800C05B8 -/* 0C1150 800C0550 000B5880 */ sll $t3, $t3, 2 -/* 0C1154 800C0554 3C01800F */ lui $at, 0x800f -/* 0C1158 800C0558 002B0821 */ addu $at, $at, $t3 -/* 0C115C 800C055C 8C2B92EC */ lw $t3, -0x6d14($at) -/* 0C1160 800C0560 00000000 */ nop -/* 0C1164 800C0564 01600008 */ jr $t3 -/* 0C1168 800C0568 00000000 */ nop -/* 0C116C 800C056C 0C03020D */ jal func_800C0834 -/* 0C1170 800C0570 00000000 */ nop -/* 0C1174 800C0574 3C03800E */ lui $v1, %hi(D_800E31AC) # $v1, 0x800e -/* 0C1178 800C0578 1000000F */ b .L800C05B8 -/* 0C117C 800C057C 246331AC */ addiu $v1, %lo(D_800E31AC) # addiu $v1, $v1, 0x31ac -/* 0C1180 800C0580 0C03044C */ jal func_800C1130 -/* 0C1184 800C0584 00000000 */ nop -/* 0C1188 800C0588 3C03800E */ lui $v1, %hi(D_800E31AC) # $v1, 0x800e -/* 0C118C 800C058C 1000000A */ b .L800C05B8 -/* 0C1190 800C0590 246331AC */ addiu $v1, %lo(D_800E31AC) # addiu $v1, $v1, 0x31ac -/* 0C1194 800C0594 0C0307BA */ jal func_800C1EE8 -/* 0C1198 800C0598 00000000 */ nop -/* 0C119C 800C059C 3C03800E */ lui $v1, %hi(D_800E31AC) # $v1, 0x800e -/* 0C11A0 800C05A0 10000005 */ b .L800C05B8 -/* 0C11A4 800C05A4 246331AC */ addiu $v1, %lo(D_800E31AC) # addiu $v1, $v1, 0x31ac -/* 0C11A8 800C05A8 0C0309E8 */ jal func_800C27A0 -/* 0C11AC 800C05AC 00000000 */ nop -/* 0C11B0 800C05B0 3C03800E */ lui $v1, %hi(D_800E31AC) # $v1, 0x800e -/* 0C11B4 800C05B4 246331AC */ addiu $v1, %lo(D_800E31AC) # addiu $v1, $v1, 0x31ac -.L800C05B8: -/* 0C11B8 800C05B8 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C11BC 800C05BC 8C620000 */ lw $v0, ($v1) -/* 0C11C0 800C05C0 03E00008 */ jr $ra -/* 0C11C4 800C05C4 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_800C05C8 -/* 0C11C8 800C05C8 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0C11CC 800C05CC 3C0E800E */ lui $t6, %hi(D_800E31AC) # $t6, 0x800e -/* 0C11D0 800C05D0 8DCE31AC */ lw $t6, %lo(D_800E31AC)($t6) -/* 0C11D4 800C05D4 AFB10018 */ sw $s1, 0x18($sp) -/* 0C11D8 800C05D8 AFB00014 */ sw $s0, 0x14($sp) -/* 0C11DC 800C05DC 00808025 */ move $s0, $a0 -/* 0C11E0 800C05E0 00A08825 */ move $s1, $a1 -/* 0C11E4 800C05E4 11C0004A */ beqz $t6, .L800C0710 -/* 0C11E8 800C05E8 AFBF001C */ sw $ra, 0x1c($sp) -/* 0C11EC 800C05EC 3C0F8000 */ lui $t7, %hi(D_80000300) # $t7, 0x8000 -/* 0C11F0 800C05F0 8DEF0300 */ lw $t7, %lo(D_80000300)($t7) -/* 0C11F4 800C05F4 3C01800F */ lui $at, 0x800f -/* 0C11F8 800C05F8 15E00008 */ bnez $t7, .L800C061C -/* 0C11FC 800C05FC 00000000 */ nop -/* 0C1200 800C0600 3C01800F */ lui $at, %hi(D_800E930C) # $at, 0x800f -/* 0C1204 800C0604 C42C9308 */ lwc1 $f12, %lo(D_800E9308)($at) -/* 0C1208 800C0608 0C019FC8 */ jal func_80067F20 -/* 0C120C 800C060C AFA60028 */ sw $a2, 0x28($sp) -/* 0C1210 800C0610 8FA60028 */ lw $a2, 0x28($sp) -/* 0C1214 800C0614 10000007 */ b .L800C0634 -/* 0C1218 800C0618 02002025 */ move $a0, $s0 -.L800C061C: -/* 0C121C 800C061C C42C930C */ lwc1 $f12, %lo(D_800E930C)($at) -/* 0C1220 800C0620 0C019FC8 */ jal func_80067F20 -/* 0C1224 800C0624 AFA60028 */ sw $a2, 0x28($sp) -/* 0C1228 800C0628 8FA60028 */ lw $a2, 0x28($sp) -/* 0C122C 800C062C 00000000 */ nop -/* 0C1230 800C0630 02002025 */ move $a0, $s0 -.L800C0634: -/* 0C1234 800C0634 02202825 */ move $a1, $s1 -/* 0C1238 800C0638 0C019FCB */ jal func_80067F2C -/* 0C123C 800C063C AFA60028 */ sw $a2, 0x28($sp) -/* 0C1240 800C0640 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0C1244 800C0644 44816000 */ mtc1 $at, $f12 -/* 0C1248 800C0648 0C019FC8 */ jal func_80067F20 -/* 0C124C 800C064C 00000000 */ nop -/* 0C1250 800C0650 3C188013 */ lui $t8, %hi(D_8012A730) # $t8, 0x8013 -/* 0C1254 800C0654 8F18A730 */ lw $t8, %lo(D_8012A730)($t8) -/* 0C1258 800C0658 8FA60028 */ lw $a2, 0x28($sp) -/* 0C125C 800C065C 2F010007 */ sltiu $at, $t8, 7 -/* 0C1260 800C0660 10200028 */ beqz $at, .L800C0704 -/* 0C1264 800C0664 0018C080 */ sll $t8, $t8, 2 -/* 0C1268 800C0668 3C01800F */ lui $at, 0x800f -/* 0C126C 800C066C 00380821 */ addu $at, $at, $t8 -/* 0C1270 800C0670 8C389310 */ lw $t8, -0x6cf0($at) -/* 0C1274 800C0674 00000000 */ nop -/* 0C1278 800C0678 03000008 */ jr $t8 -/* 0C127C 800C067C 00000000 */ nop -/* 0C1280 800C0680 02002025 */ move $a0, $s0 -/* 0C1284 800C0684 0C030282 */ jal func_800C0A08 -/* 0C1288 800C0688 02202825 */ move $a1, $s1 -/* 0C128C 800C068C 1000001E */ b .L800C0708 -/* 0C1290 800C0690 02002025 */ move $a0, $s0 -/* 0C1294 800C0694 02002025 */ move $a0, $s0 -/* 0C1298 800C0698 0C0304F9 */ jal func_800C13E4 -/* 0C129C 800C069C 02202825 */ move $a1, $s1 -/* 0C12A0 800C06A0 10000019 */ b .L800C0708 -/* 0C12A4 800C06A4 02002025 */ move $a0, $s0 -/* 0C12A8 800C06A8 02002025 */ move $a0, $s0 -/* 0C12AC 800C06AC 0C030537 */ jal func_800C14DC -/* 0C12B0 800C06B0 02202825 */ move $a1, $s1 -/* 0C12B4 800C06B4 10000014 */ b .L800C0708 -/* 0C12B8 800C06B8 02002025 */ move $a0, $s0 -/* 0C12BC 800C06BC 02002025 */ move $a0, $s0 -/* 0C12C0 800C06C0 0C03089D */ jal func_800C2274 -/* 0C12C4 800C06C4 02202825 */ move $a1, $s1 -/* 0C12C8 800C06C8 1000000F */ b .L800C0708 -/* 0C12CC 800C06CC 02002025 */ move $a0, $s0 -/* 0C12D0 800C06D0 02002025 */ move $a0, $s0 -/* 0C12D4 800C06D4 0C0308FE */ jal func_800C23F8 -/* 0C12D8 800C06D8 02202825 */ move $a1, $s1 -/* 0C12DC 800C06DC 1000000A */ b .L800C0708 -/* 0C12E0 800C06E0 02002025 */ move $a0, $s0 -/* 0C12E4 800C06E4 02002025 */ move $a0, $s0 -/* 0C12E8 800C06E8 0C030952 */ jal func_800C2548 -/* 0C12EC 800C06EC 02202825 */ move $a1, $s1 -/* 0C12F0 800C06F0 10000005 */ b .L800C0708 -/* 0C12F4 800C06F4 02002025 */ move $a0, $s0 -/* 0C12F8 800C06F8 02002025 */ move $a0, $s0 -/* 0C12FC 800C06FC 0C030A3A */ jal func_800C28E8 -/* 0C1300 800C0700 02202825 */ move $a1, $s1 -.L800C0704: -/* 0C1304 800C0704 02002025 */ move $a0, $s0 -.L800C0708: -/* 0C1308 800C0708 0C019B37 */ jal func_80066CDC -/* 0C130C 800C070C 02202825 */ move $a1, $s1 -.L800C0710: -/* 0C1310 800C0710 8FBF001C */ lw $ra, 0x1c($sp) -/* 0C1314 800C0714 8FB00014 */ lw $s0, 0x14($sp) -/* 0C1318 800C0718 8FB10018 */ lw $s1, 0x18($sp) -/* 0C131C 800C071C 03E00008 */ jr $ra -/* 0C1320 800C0720 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_800C0724 -/* 0C1324 800C0724 3C02800E */ lui $v0, %hi(D_800E31C0) # $v0, 0x800e -/* 0C1328 800C0728 244231C0 */ addiu $v0, %lo(D_800E31C0) # addiu $v0, $v0, 0x31c0 -/* 0C132C 800C072C 8C440000 */ lw $a0, ($v0) -/* 0C1330 800C0730 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C1334 800C0734 1080000B */ beqz $a0, .L800C0764 -/* 0C1338 800C0738 AFBF0014 */ sw $ra, 0x14($sp) -/* 0C133C 800C073C 0C01C450 */ jal func_80071140 -/* 0C1340 800C0740 00000000 */ nop -/* 0C1344 800C0744 3C02800E */ lui $v0, %hi(D_800E31C0) # $v0, 0x800e -/* 0C1348 800C0748 3C03800E */ lui $v1, %hi(D_800E31C8) # $v1, 0x800e -/* 0C134C 800C074C 246331C8 */ addiu $v1, %lo(D_800E31C8) # addiu $v1, $v1, 0x31c8 -/* 0C1350 800C0750 244231C0 */ addiu $v0, %lo(D_800E31C0) # addiu $v0, $v0, 0x31c0 -/* 0C1354 800C0754 AC400000 */ sw $zero, ($v0) -/* 0C1358 800C0758 AC400004 */ sw $zero, 4($v0) -/* 0C135C 800C075C AC600000 */ sw $zero, ($v1) -/* 0C1360 800C0760 AC600004 */ sw $zero, 4($v1) -.L800C0764: -/* 0C1364 800C0764 3C01800E */ lui $at, %hi(D_800E31AC) # $at, 0x800e -/* 0C1368 800C0768 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C136C 800C076C AC2031AC */ sw $zero, %lo(D_800E31AC)($at) -/* 0C1370 800C0770 3C01800E */ lui $at, %hi(D_800E31D0) # $at, 0x800e -/* 0C1374 800C0774 AC2031D0 */ sw $zero, %lo(D_800E31D0)($at) -/* 0C1378 800C0778 03E00008 */ jr $ra -/* 0C137C 800C077C 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_800C0780 -/* 0C1380 800C0780 908E0000 */ lbu $t6, ($a0) -/* 0C1384 800C0784 3C018013 */ lui $at, 0x8013 -/* 0C1388 800C0788 31CF0080 */ andi $t7, $t6, 0x80 -/* 0C138C 800C078C 11E00015 */ beqz $t7, .L800C07E4 -/* 0C1390 800C0790 24080001 */ li $t0, 1 -/* 0C1394 800C0794 3C01437F */ li $at, 0x437F0000 # 255.000000 -/* 0C1398 800C0798 44812000 */ mtc1 $at, $f4 -/* 0C139C 800C079C 3C18800E */ lui $t8, %hi(D_800E31B0) # $t8, 0x800e -/* 0C13A0 800C07A0 971831B0 */ lhu $t8, %lo(D_800E31B0)($t8) -/* 0C13A4 800C07A4 3C018013 */ lui $at, %hi(D_8012A750) # $at, 0x8013 -/* 0C13A8 800C07A8 E424A750 */ swc1 $f4, %lo(D_8012A750)($at) -/* 0C13AC 800C07AC 44984000 */ mtc1 $t8, $f8 -/* 0C13B0 800C07B0 3C01C37F */ li $at, 0xC37F0000 # -255.000000 -/* 0C13B4 800C07B4 44813000 */ mtc1 $at, $f6 -/* 0C13B8 800C07B8 07010005 */ bgez $t8, .L800C07D0 -/* 0C13BC 800C07BC 468042A0 */ cvt.s.w $f10, $f8 -/* 0C13C0 800C07C0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0C13C4 800C07C4 44818000 */ mtc1 $at, $f16 -/* 0C13C8 800C07C8 00000000 */ nop -/* 0C13CC 800C07CC 46105280 */ add.s $f10, $f10, $f16 -.L800C07D0: -/* 0C13D0 800C07D0 00000000 */ nop -/* 0C13D4 800C07D4 460A3483 */ div.s $f18, $f6, $f10 -/* 0C13D8 800C07D8 3C018013 */ lui $at, %hi(D_8012A750) # $at, 0x8013 -/* 0C13DC 800C07DC 10000012 */ b .L800C0828 -/* 0C13E0 800C07E0 E432A754 */ swc1 $f18, %lo(D_8012A754)($at) -.L800C07E4: -/* 0C13E4 800C07E4 44802000 */ mtc1 $zero, $f4 -/* 0C13E8 800C07E8 3C19800E */ lui $t9, %hi(D_800E31B0) # $t9, 0x800e -/* 0C13EC 800C07EC 973931B0 */ lhu $t9, %lo(D_800E31B0)($t9) -/* 0C13F0 800C07F0 E424A750 */ swc1 $f4, %lo(D_8012A750)($at) -/* 0C13F4 800C07F4 44998000 */ mtc1 $t9, $f16 -/* 0C13F8 800C07F8 3C01437F */ li $at, 0x437F0000 # 255.000000 -/* 0C13FC 800C07FC 44814000 */ mtc1 $at, $f8 -/* 0C1400 800C0800 07210005 */ bgez $t9, .L800C0818 -/* 0C1404 800C0804 468081A0 */ cvt.s.w $f6, $f16 -/* 0C1408 800C0808 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0C140C 800C080C 44815000 */ mtc1 $at, $f10 -/* 0C1410 800C0810 00000000 */ nop -/* 0C1414 800C0814 460A3180 */ add.s $f6, $f6, $f10 -.L800C0818: -/* 0C1418 800C0818 00000000 */ nop -/* 0C141C 800C081C 46064483 */ div.s $f18, $f8, $f6 -/* 0C1420 800C0820 3C018013 */ lui $at, %hi(D_8012A754) # $at, 0x8013 -/* 0C1424 800C0824 E432A754 */ swc1 $f18, %lo(D_8012A754)($at) -.L800C0828: -/* 0C1428 800C0828 3C01800E */ lui $at, 0x800e -/* 0C142C 800C082C 03E00008 */ jr $ra -/* 0C1430 800C0830 AC2831AC */ sw $t0, 0x31ac($at) - -glabel func_800C0834 -/* 0C1434 800C0834 3C01437F */ li $at, 0x437F0000 # 255.000000 -/* 0C1438 800C0838 3C0C8013 */ lui $t4, %hi(D_8012A754) # $t4, 0x8013 -/* 0C143C 800C083C 3C0B800E */ lui $t3, %hi(D_800E31B8) # $t3, 0x800e -/* 0C1440 800C0840 3C0A800E */ lui $t2, %hi(D_800E31A8) # $t2, 0x800e -/* 0C1444 800C0844 3C09800E */ lui $t1, %hi(D_800E31B4) # $t1, 0x800e -/* 0C1448 800C0848 3C078013 */ lui $a3, %hi(D_8012A737) # $a3, 0x8013 -/* 0C144C 800C084C 3C068013 */ lui $a2, %hi(D_8012A750) # $a2, 0x8013 -/* 0C1450 800C0850 3C05800E */ lui $a1, %hi(D_800E31B0) # $a1, 0x800e -/* 0C1454 800C0854 44816000 */ mtc1 $at, $f12 -/* 0C1458 800C0858 44801000 */ mtc1 $zero, $f2 -/* 0C145C 800C085C 24A531B0 */ addiu $a1, %lo(D_800E31B0) # addiu $a1, $a1, 0x31b0 -/* 0C1460 800C0860 24C6A750 */ addiu $a2, %lo(D_8012A750) # addiu $a2, $a2, -0x58b0 -/* 0C1464 800C0864 24E7A737 */ addiu $a3, %lo(D_8012A737) # addiu $a3, $a3, -0x58c9 -/* 0C1468 800C0868 252931B4 */ addiu $t1, %lo(D_800E31B4) # addiu $t1, $t1, 0x31b4 -/* 0C146C 800C086C 254A31A8 */ addiu $t2, %lo(D_800E31A8) # addiu $t2, $t2, 0x31a8 -/* 0C1470 800C0870 256B31B8 */ addiu $t3, %lo(D_800E31B8) # addiu $t3, $t3, 0x31b8 -/* 0C1474 800C0874 258CA754 */ addiu $t4, %lo(D_8012A754) # addiu $t4, $t4, -0x58ac -/* 0C1478 800C0878 3408FFFF */ li $t0, 65535 -.L800C087C: -/* 0C147C 800C087C 94A30000 */ lhu $v1, ($a1) -/* 0C1480 800C0880 24020001 */ li $v0, 1 -/* 0C1484 800C0884 18600047 */ blez $v1, .L800C09A4 -/* 0C1488 800C0888 0083082A */ slt $at, $a0, $v1 -/* 0C148C 800C088C C5800000 */ lwc1 $f0, ($t4) -/* 0C1490 800C0890 1020000A */ beqz $at, .L800C08BC -/* 0C1494 800C0894 24180001 */ li $t8, 1 -/* 0C1498 800C0898 44843000 */ mtc1 $a0, $f6 -/* 0C149C 800C089C C4C40000 */ lwc1 $f4, ($a2) -/* 0C14A0 800C08A0 46803220 */ cvt.s.w $f8, $f6 -/* 0C14A4 800C08A4 00647023 */ subu $t6, $v1, $a0 -/* 0C14A8 800C08A8 A4AE0000 */ sh $t6, ($a1) -/* 0C14AC 800C08AC 46080282 */ mul.s $f10, $f0, $f8 -/* 0C14B0 800C08B0 460A2400 */ add.s $f16, $f4, $f10 -/* 0C14B4 800C08B4 10000009 */ b .L800C08DC -/* 0C14B8 800C08B8 E4D00000 */ swc1 $f16, ($a2) -.L800C08BC: -/* 0C14BC 800C08BC 4602003C */ c.lt.s $f0, $f2 -/* 0C14C0 800C08C0 00832023 */ subu $a0, $a0, $v1 -/* 0C14C4 800C08C4 45000003 */ bc1f .L800C08D4 -/* 0C14C8 800C08C8 00001025 */ move $v0, $zero -/* 0C14CC 800C08CC 10000002 */ b .L800C08D8 -/* 0C14D0 800C08D0 E4C20000 */ swc1 $f2, ($a2) -.L800C08D4: -/* 0C14D4 800C08D4 E4CC0000 */ swc1 $f12, ($a2) -.L800C08D8: -/* 0C14D8 800C08D8 A4A00000 */ sh $zero, ($a1) -.L800C08DC: -/* 0C14DC 800C08DC C4C00000 */ lwc1 $f0, ($a2) -/* 0C14E0 800C08E0 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 0C14E4 800C08E4 4602003C */ c.lt.s $f0, $f2 -/* 0C14E8 800C08E8 00000000 */ nop -/* 0C14EC 800C08EC 45000005 */ bc1f .L800C0904 -/* 0C14F0 800C08F0 00000000 */ nop -/* 0C14F4 800C08F4 E4C20000 */ swc1 $f2, ($a2) -/* 0C14F8 800C08F8 C4C00000 */ lwc1 $f0, ($a2) -/* 0C14FC 800C08FC 10000009 */ b .L800C0924 -/* 0C1500 800C0900 444FF800 */ cfc1 $t7, $31 -.L800C0904: -/* 0C1504 800C0904 4600603C */ c.lt.s $f12, $f0 -/* 0C1508 800C0908 00000000 */ nop -/* 0C150C 800C090C 45000004 */ bc1f .L800C0920 -/* 0C1510 800C0910 00000000 */ nop -/* 0C1514 800C0914 E4CC0000 */ swc1 $f12, ($a2) -/* 0C1518 800C0918 C4C00000 */ lwc1 $f0, ($a2) -/* 0C151C 800C091C 00000000 */ nop -.L800C0920: -/* 0C1520 800C0920 444FF800 */ cfc1 $t7, $31 -.L800C0924: -/* 0C1524 800C0924 44D8F800 */ ctc1 $t8, $31 -/* 0C1528 800C0928 00000000 */ nop -/* 0C152C 800C092C 460004A4 */ cvt.w.s $f18, $f0 -/* 0C1530 800C0930 4458F800 */ cfc1 $t8, $31 -/* 0C1534 800C0934 00000000 */ nop -/* 0C1538 800C0938 33180078 */ andi $t8, $t8, 0x78 -/* 0C153C 800C093C 13000012 */ beqz $t8, .L800C0988 -/* 0C1540 800C0940 00000000 */ nop -/* 0C1544 800C0944 44819000 */ mtc1 $at, $f18 -/* 0C1548 800C0948 24180001 */ li $t8, 1 -/* 0C154C 800C094C 46120481 */ sub.s $f18, $f0, $f18 -/* 0C1550 800C0950 3C018000 */ lui $at, 0x8000 -/* 0C1554 800C0954 44D8F800 */ ctc1 $t8, $31 -/* 0C1558 800C0958 00000000 */ nop -/* 0C155C 800C095C 460094A4 */ cvt.w.s $f18, $f18 -/* 0C1560 800C0960 4458F800 */ cfc1 $t8, $31 -/* 0C1564 800C0964 00000000 */ nop -/* 0C1568 800C0968 33180078 */ andi $t8, $t8, 0x78 -/* 0C156C 800C096C 17000004 */ bnez $t8, .L800C0980 -/* 0C1570 800C0970 00000000 */ nop -/* 0C1574 800C0974 44189000 */ mfc1 $t8, $f18 -/* 0C1578 800C0978 10000007 */ b .L800C0998 -/* 0C157C 800C097C 0301C025 */ or $t8, $t8, $at -.L800C0980: -/* 0C1580 800C0980 10000005 */ b .L800C0998 -/* 0C1584 800C0984 2418FFFF */ li $t8, -1 -.L800C0988: -/* 0C1588 800C0988 44189000 */ mfc1 $t8, $f18 -/* 0C158C 800C098C 00000000 */ nop -/* 0C1590 800C0990 0700FFFB */ bltz $t8, .L800C0980 -/* 0C1594 800C0994 00000000 */ nop -.L800C0998: -/* 0C1598 800C0998 44CFF800 */ ctc1 $t7, $31 -/* 0C159C 800C099C 10000014 */ b .L800C09F0 -/* 0C15A0 800C09A0 A0F80000 */ sb $t8, ($a3) -.L800C09A4: -/* 0C15A4 800C09A4 95230000 */ lhu $v1, ($t1) -/* 0C15A8 800C09A8 00000000 */ nop -/* 0C15AC 800C09AC 11030010 */ beq $t0, $v1, .L800C09F0 -/* 0C15B0 800C09B0 0083082A */ slt $at, $a0, $v1 -/* 0C15B4 800C09B4 10200003 */ beqz $at, .L800C09C4 -/* 0C15B8 800C09B8 0064C823 */ subu $t9, $v1, $a0 -/* 0C15BC 800C09BC 1000000C */ b .L800C09F0 -/* 0C15C0 800C09C0 A5390000 */ sh $t9, ($t1) -.L800C09C4: -/* 0C15C4 800C09C4 8D4D0000 */ lw $t5, ($t2) -/* 0C15C8 800C09C8 00832023 */ subu $a0, $a0, $v1 -/* 0C15CC 800C09CC 11A00008 */ beqz $t5, .L800C09F0 -/* 0C15D0 800C09D0 A5200000 */ sh $zero, ($t1) -/* 0C15D4 800C09D4 C5860000 */ lwc1 $f6, ($t4) -/* 0C15D8 800C09D8 956E0000 */ lhu $t6, ($t3) -/* 0C15DC 800C09DC 46003207 */ neg.s $f8, $f6 -/* 0C15E0 800C09E0 AD400000 */ sw $zero, ($t2) -/* 0C15E4 800C09E4 E5880000 */ swc1 $f8, ($t4) -/* 0C15E8 800C09E8 00001025 */ move $v0, $zero -/* 0C15EC 800C09EC A4AE0000 */ sh $t6, ($a1) -.L800C09F0: -/* 0C15F0 800C09F0 14400003 */ bnez $v0, .L800C0A00 -/* 0C15F4 800C09F4 00000000 */ nop -/* 0C15F8 800C09F8 1C80FFA0 */ bgtz $a0, .L800C087C -/* 0C15FC 800C09FC 00000000 */ nop -.L800C0A00: -/* 0C1600 800C0A00 03E00008 */ jr $ra -/* 0C1604 800C0A04 00000000 */ nop - -glabel func_800C0A08 -/* 0C1608 800C0A08 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C160C 800C0A0C AFBF0014 */ sw $ra, 0x14($sp) -/* 0C1610 800C0A10 AFA5001C */ sw $a1, 0x1c($sp) -/* 0C1614 800C0A14 AFA60020 */ sw $a2, 0x20($sp) -/* 0C1618 800C0A18 0C01E948 */ jal func_8007A520 -/* 0C161C 800C0A1C AFA40018 */ sw $a0, 0x18($sp) -/* 0C1620 800C0A20 8FA40018 */ lw $a0, 0x18($sp) -/* 0C1624 800C0A24 3C18800E */ lui $t8, %hi(D_800E31D8) # $t8, 0x800e -/* 0C1628 800C0A28 8C830000 */ lw $v1, ($a0) -/* 0C162C 800C0A2C 271831D8 */ addiu $t8, %lo(D_800E31D8) # addiu $t8, $t8, 0x31d8 -/* 0C1630 800C0A30 246E0008 */ addiu $t6, $v1, 8 -/* 0C1634 800C0A34 AC8E0000 */ sw $t6, ($a0) -/* 0C1638 800C0A38 3C0F0600 */ lui $t7, 0x600 -/* 0C163C 800C0A3C AC6F0000 */ sw $t7, ($v1) -/* 0C1640 800C0A40 AC780004 */ sw $t8, 4($v1) -/* 0C1644 800C0A44 8C830000 */ lw $v1, ($a0) -/* 0C1648 800C0A48 3C09FA00 */ lui $t1, 0xfa00 -/* 0C164C 800C0A4C 24790008 */ addiu $t9, $v1, 8 -/* 0C1650 800C0A50 AC990000 */ sw $t9, ($a0) -/* 0C1654 800C0A54 3C0D8013 */ lui $t5, %hi(D_8012A735) # $t5, 0x8013 -/* 0C1658 800C0A58 AC690000 */ sw $t1, ($v1) -/* 0C165C 800C0A5C 91AEA735 */ lbu $t6, %lo(D_8012A735)($t5) -/* 0C1660 800C0A60 3C0A8013 */ lui $t2, %hi(D_8012A734) # $t2, 0x8013 -/* 0C1664 800C0A64 914BA734 */ lbu $t3, %lo(D_8012A734)($t2) -/* 0C1668 800C0A68 3C198013 */ lui $t9, %hi(D_8012A736) # $t9, 0x8013 -/* 0C166C 800C0A6C 9329A736 */ lbu $t1, %lo(D_8012A736)($t9) -/* 0C1670 800C0A70 000E7C00 */ sll $t7, $t6, 0x10 -/* 0C1674 800C0A74 3C0D8013 */ lui $t5, %hi(D_8012A737) # $t5, 0x8013 -/* 0C1678 800C0A78 000B6600 */ sll $t4, $t3, 0x18 -/* 0C167C 800C0A7C 91AEA737 */ lbu $t6, %lo(D_8012A737)($t5) -/* 0C1680 800C0A80 018FC025 */ or $t8, $t4, $t7 -/* 0C1684 800C0A84 00095200 */ sll $t2, $t1, 8 -/* 0C1688 800C0A88 030A5825 */ or $t3, $t8, $t2 -/* 0C168C 800C0A8C 016E6025 */ or $t4, $t3, $t6 -/* 0C1690 800C0A90 AC6C0004 */ sw $t4, 4($v1) -/* 0C1694 800C0A94 8C830000 */ lw $v1, ($a0) -/* 0C1698 800C0A98 3C09FFFD */ lui $t1, (0xFFFDF6FB >> 16) # lui $t1, 0xfffd -/* 0C169C 800C0A9C 246F0008 */ addiu $t7, $v1, 8 -/* 0C16A0 800C0AA0 3C19FCFF */ lui $t9, (0xFCFFFFFF >> 16) # lui $t9, 0xfcff -/* 0C16A4 800C0AA4 AC8F0000 */ sw $t7, ($a0) -/* 0C16A8 800C0AA8 3739FFFF */ ori $t9, (0xFCFFFFFF & 0xFFFF) # ori $t9, $t9, 0xffff -/* 0C16AC 800C0AAC 3529F6FB */ ori $t1, (0xFFFDF6FB & 0xFFFF) # ori $t1, $t1, 0xf6fb -/* 0C16B0 800C0AB0 AC690004 */ sw $t1, 4($v1) -/* 0C16B4 800C0AB4 AC790000 */ sw $t9, ($v1) -/* 0C16B8 800C0AB8 8C830000 */ lw $v1, ($a0) -/* 0C16BC 800C0ABC 00027C03 */ sra $t7, $v0, 0x10 -/* 0C16C0 800C0AC0 304D03FF */ andi $t5, $v0, 0x3ff -/* 0C16C4 800C0AC4 000D5B80 */ sll $t3, $t5, 0xe -/* 0C16C8 800C0AC8 31F903FF */ andi $t9, $t7, 0x3ff -/* 0C16CC 800C0ACC 3C01F600 */ lui $at, 0xf600 -/* 0C16D0 800C0AD0 24780008 */ addiu $t8, $v1, 8 -/* 0C16D4 800C0AD4 01617025 */ or $t6, $t3, $at -/* 0C16D8 800C0AD8 00194880 */ sll $t1, $t9, 2 -/* 0C16DC 800C0ADC AC980000 */ sw $t8, ($a0) -/* 0C16E0 800C0AE0 01C9C025 */ or $t8, $t6, $t1 -/* 0C16E4 800C0AE4 AC780000 */ sw $t8, ($v1) -/* 0C16E8 800C0AE8 0C01ECF4 */ jal func_8007B3D0 -/* 0C16EC 800C0AEC AC600004 */ sw $zero, 4($v1) -/* 0C16F0 800C0AF0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C16F4 800C0AF4 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0C16F8 800C0AF8 03E00008 */ jr $ra -/* 0C16FC 800C0AFC 00000000 */ nop - -glabel func_800C0B00 -/* 0C1700 800C0B00 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 0C1704 800C0B04 00051880 */ sll $v1, $a1, 2 -/* 0C1708 800C0B08 00054880 */ sll $t1, $a1, 2 -/* 0C170C 800C0B0C 01254823 */ subu $t1, $t1, $a1 -/* 0C1710 800C0B10 00651821 */ addu $v1, $v1, $a1 -/* 0C1714 800C0B14 AFB00018 */ sw $s0, 0x18($sp) -/* 0C1718 800C0B18 00031840 */ sll $v1, $v1, 1 -/* 0C171C 800C0B1C 00094880 */ sll $t1, $t1, 2 -/* 0C1720 800C0B20 00064100 */ sll $t0, $a2, 4 -/* 0C1724 800C0B24 00A08025 */ move $s0, $a1 -/* 0C1728 800C0B28 00687021 */ addu $t6, $v1, $t0 -/* 0C172C 800C0B2C 0009C080 */ sll $t8, $t1, 2 -/* 0C1730 800C0B30 AFBF0024 */ sw $ra, 0x24($sp) -/* 0C1734 800C0B34 AFB20020 */ sw $s2, 0x20($sp) -/* 0C1738 800C0B38 AFB1001C */ sw $s1, 0x1c($sp) -/* 0C173C 800C0B3C AFA40050 */ sw $a0, 0x50($sp) -/* 0C1740 800C0B40 0309C023 */ subu $t8, $t8, $t1 -/* 0C1744 800C0B44 000E7840 */ sll $t7, $t6, 1 -/* 0C1748 800C0B48 3C05FFFF */ lui $a1, (0xFFFF00FF >> 16) # lui $a1, 0xffff -/* 0C174C 800C0B4C 00C08825 */ move $s1, $a2 -/* 0C1750 800C0B50 00E09025 */ move $s2, $a3 -/* 0C1754 800C0B54 34A500FF */ ori $a1, (0xFFFF00FF & 0xFFFF) # ori $a1, $a1, 0xff -/* 0C1758 800C0B58 01F82021 */ addu $a0, $t7, $t8 -/* 0C175C 800C0B5C AFA8002C */ sw $t0, 0x2c($sp) -/* 0C1760 800C0B60 AFA90028 */ sw $t1, 0x28($sp) -/* 0C1764 800C0B64 0C01C327 */ jal func_80070C9C -/* 0C1768 800C0B68 AFA30030 */ sw $v1, 0x30($sp) -/* 0C176C 800C0B6C 8FA30030 */ lw $v1, 0x30($sp) -/* 0C1770 800C0B70 3C04800E */ lui $a0, %hi(D_800E31C0) # $a0, 0x800e -/* 0C1774 800C0B74 248431C0 */ addiu $a0, %lo(D_800E31C0) # addiu $a0, $a0, 0x31c0 -/* 0C1778 800C0B78 AC820000 */ sw $v0, ($a0) -/* 0C177C 800C0B7C 3C01800E */ lui $at, %hi(D_800E31C4) # $at, 0x800e -/* 0C1780 800C0B80 00436021 */ addu $t4, $v0, $v1 -/* 0C1784 800C0B84 AC2C31C4 */ sw $t4, %lo(D_800E31C4)($at) -/* 0C1788 800C0B88 8C8D0004 */ lw $t5, 4($a0) -/* 0C178C 800C0B8C 3C05800E */ lui $a1, %hi(D_800E31C8) # $a1, 0x800e -/* 0C1790 800C0B90 3C01800E */ lui $at, %hi(D_800E31CC) # $at, 0x800e -/* 0C1794 800C0B94 01A37021 */ addu $t6, $t5, $v1 -/* 0C1798 800C0B98 24A531C8 */ addiu $a1, %lo(D_800E31C8) # addiu $a1, $a1, 0x31c8 -/* 0C179C 800C0B9C AC2E31C8 */ sw $t6, %lo(D_800E31C8)($at) -/* 0C17A0 800C0BA0 8FA8002C */ lw $t0, 0x2c($sp) -/* 0C17A4 800C0BA4 8CAF0000 */ lw $t7, ($a1) -/* 0C17A8 800C0BA8 3C068013 */ lui $a2, %hi(D_8012A770) # $a2, 0x8013 -/* 0C17AC 800C0BAC 01E8C021 */ addu $t8, $t7, $t0 -/* 0C17B0 800C0BB0 AC3831CC */ sw $t8, %lo(D_800E31CC)($at) -/* 0C17B4 800C0BB4 8CB90004 */ lw $t9, 4($a1) -/* 0C17B8 800C0BB8 3C018013 */ lui $at, %hi(D_8012A770) # $at, 0x8013 -/* 0C17BC 800C0BBC 03286021 */ addu $t4, $t9, $t0 -/* 0C17C0 800C0BC0 24C6A770 */ addiu $a2, %lo(D_8012A770) # addiu $a2, $a2, -0x5890 -/* 0C17C4 800C0BC4 AC2CA770 */ sw $t4, %lo(D_8012A770)($at) -/* 0C17C8 800C0BC8 8FA90028 */ lw $t1, 0x28($sp) -/* 0C17CC 800C0BCC 8CCD0000 */ lw $t5, ($a2) -/* 0C17D0 800C0BD0 3C0B8013 */ lui $t3, %hi(D_8012A774) # $t3, 0x8013 -/* 0C17D4 800C0BD4 3C018013 */ lui $at, %hi(D_8012A774) # $at, 0x8013 -/* 0C17D8 800C0BD8 01A97021 */ addu $t6, $t5, $t1 -/* 0C17DC 800C0BDC 256BA774 */ addiu $t3, %lo(D_8012A774) # addiu $t3, $t3, -0x588c -/* 0C17E0 800C0BE0 AC2EA774 */ sw $t6, %lo(D_8012A774)($at) -/* 0C17E4 800C0BE4 8D6F0000 */ lw $t7, ($t3) -/* 0C17E8 800C0BE8 8FB90050 */ lw $t9, 0x50($sp) -/* 0C17EC 800C0BEC 3C018013 */ lui $at, %hi(D_8012A778) # $at, 0x8013 -/* 0C17F0 800C0BF0 01E9C021 */ addu $t8, $t7, $t1 -/* 0C17F4 800C0BF4 AC38A778 */ sw $t8, %lo(D_8012A778)($at) -/* 0C17F8 800C0BF8 932C0000 */ lbu $t4, ($t9) -/* 0C17FC 800C0BFC 8FA20060 */ lw $v0, 0x60($sp) -/* 0C1800 800C0C00 318D0080 */ andi $t5, $t4, 0x80 -/* 0C1804 800C0C04 11A00008 */ beqz $t5, .L800C0C28 -/* 0C1808 800C0C08 3C09800E */ lui $t1, %hi(D_800E31B0) # $t1, 0x800e -/* 0C180C 800C0C0C 8FAE0064 */ lw $t6, 0x64($sp) -/* 0C1810 800C0C10 AFA20064 */ sw $v0, 0x64($sp) -/* 0C1814 800C0C14 8FA20068 */ lw $v0, 0x68($sp) -/* 0C1818 800C0C18 8FAF006C */ lw $t7, 0x6c($sp) -/* 0C181C 800C0C1C AFAE0060 */ sw $t6, 0x60($sp) -/* 0C1820 800C0C20 AFA2006C */ sw $v0, 0x6c($sp) -/* 0C1824 800C0C24 AFAF0068 */ sw $t7, 0x68($sp) -.L800C0C28: -/* 0C1828 800C0C28 1A00008C */ blez $s0, .L800C0E5C -/* 0C182C 800C0C2C 00005025 */ move $t2, $zero -/* 0C1830 800C0C30 3C038013 */ lui $v1, %hi(D_8012A778) # $v1, 0x8013 -/* 0C1834 800C0C34 8FA40060 */ lw $a0, 0x60($sp) -/* 0C1838 800C0C38 8FA70068 */ lw $a3, 0x68($sp) -/* 0C183C 800C0C3C 8FA50064 */ lw $a1, 0x64($sp) -/* 0C1840 800C0C40 8FA8006C */ lw $t0, 0x6c($sp) -/* 0C1844 800C0C44 2463A778 */ addiu $v1, %lo(D_8012A778) # addiu $v1, $v1, -0x5888 -/* 0C1848 800C0C48 00001025 */ move $v0, $zero -/* 0C184C 800C0C4C 252931B0 */ addiu $t1, %lo(D_800E31B0) # addiu $t1, $t1, 0x31b0 -.L800C0C50: -/* 0C1850 800C0C50 90980000 */ lbu $t8, ($a0) -/* 0C1854 800C0C54 8CCE0000 */ lw $t6, ($a2) -/* 0C1858 800C0C58 0018C840 */ sll $t9, $t8, 1 -/* 0C185C 800C0C5C 02596021 */ addu $t4, $s2, $t9 -/* 0C1860 800C0C60 858D0000 */ lh $t5, ($t4) -/* 0C1864 800C0C64 01C27821 */ addu $t7, $t6, $v0 -/* 0C1868 800C0C68 448D2000 */ mtc1 $t5, $f4 -/* 0C186C 800C0C6C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0C1870 800C0C70 468021A0 */ cvt.s.w $f6, $f4 -/* 0C1874 800C0C74 E5E60000 */ swc1 $f6, ($t7) -/* 0C1878 800C0C78 90980000 */ lbu $t8, ($a0) -/* 0C187C 800C0C7C 8CCE0000 */ lw $t6, ($a2) -/* 0C1880 800C0C80 0018C840 */ sll $t9, $t8, 1 -/* 0C1884 800C0C84 02596021 */ addu $t4, $s2, $t9 -/* 0C1888 800C0C88 858D0002 */ lh $t5, 2($t4) -/* 0C188C 800C0C8C 01C27821 */ addu $t7, $t6, $v0 -/* 0C1890 800C0C90 448D4000 */ mtc1 $t5, $f8 -/* 0C1894 800C0C94 00000000 */ nop -/* 0C1898 800C0C98 468042A0 */ cvt.s.w $f10, $f8 -/* 0C189C 800C0C9C E5EA0004 */ swc1 $f10, 4($t7) -/* 0C18A0 800C0CA0 90F80000 */ lbu $t8, ($a3) -/* 0C18A4 800C0CA4 00000000 */ nop -/* 0C18A8 800C0CA8 44988000 */ mtc1 $t8, $f16 -/* 0C18AC 800C0CAC 07010004 */ bgez $t8, .L800C0CC0 -/* 0C18B0 800C0CB0 468084A0 */ cvt.s.w $f18, $f16 -/* 0C18B4 800C0CB4 44812000 */ mtc1 $at, $f4 -/* 0C18B8 800C0CB8 00000000 */ nop -/* 0C18BC 800C0CBC 46049480 */ add.s $f18, $f18, $f4 -.L800C0CC0: -/* 0C18C0 800C0CC0 8CD90000 */ lw $t9, ($a2) -/* 0C18C4 800C0CC4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0C18C8 800C0CC8 03226021 */ addu $t4, $t9, $v0 -/* 0C18CC 800C0CCC E5920008 */ swc1 $f18, 8($t4) -/* 0C18D0 800C0CD0 90AD0000 */ lbu $t5, ($a1) -/* 0C18D4 800C0CD4 8C790000 */ lw $t9, ($v1) -/* 0C18D8 800C0CD8 000D7040 */ sll $t6, $t5, 1 -/* 0C18DC 800C0CDC 024E7821 */ addu $t7, $s2, $t6 -/* 0C18E0 800C0CE0 85F80000 */ lh $t8, ($t7) -/* 0C18E4 800C0CE4 03226021 */ addu $t4, $t9, $v0 -/* 0C18E8 800C0CE8 44983000 */ mtc1 $t8, $f6 -/* 0C18EC 800C0CEC 00000000 */ nop -/* 0C18F0 800C0CF0 46803220 */ cvt.s.w $f8, $f6 -/* 0C18F4 800C0CF4 E5880000 */ swc1 $f8, ($t4) -/* 0C18F8 800C0CF8 90AD0000 */ lbu $t5, ($a1) -/* 0C18FC 800C0CFC 8C790000 */ lw $t9, ($v1) -/* 0C1900 800C0D00 000D7040 */ sll $t6, $t5, 1 -/* 0C1904 800C0D04 024E7821 */ addu $t7, $s2, $t6 -/* 0C1908 800C0D08 85F80002 */ lh $t8, 2($t7) -/* 0C190C 800C0D0C 03226021 */ addu $t4, $t9, $v0 -/* 0C1910 800C0D10 44985000 */ mtc1 $t8, $f10 -/* 0C1914 800C0D14 00000000 */ nop -/* 0C1918 800C0D18 46805420 */ cvt.s.w $f16, $f10 -/* 0C191C 800C0D1C E5900004 */ swc1 $f16, 4($t4) -/* 0C1920 800C0D20 910D0000 */ lbu $t5, ($t0) -/* 0C1924 800C0D24 00000000 */ nop -/* 0C1928 800C0D28 448D2000 */ mtc1 $t5, $f4 -/* 0C192C 800C0D2C 05A10004 */ bgez $t5, .L800C0D40 -/* 0C1930 800C0D30 468024A0 */ cvt.s.w $f18, $f4 -/* 0C1934 800C0D34 44813000 */ mtc1 $at, $f6 -/* 0C1938 800C0D38 00000000 */ nop -/* 0C193C 800C0D3C 46069480 */ add.s $f18, $f18, $f6 -.L800C0D40: -/* 0C1940 800C0D40 8C6E0000 */ lw $t6, ($v1) -/* 0C1944 800C0D44 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0C1948 800C0D48 01C27821 */ addu $t7, $t6, $v0 -/* 0C194C 800C0D4C E5F20008 */ swc1 $f18, 8($t7) -/* 0C1950 800C0D50 8CCC0000 */ lw $t4, ($a2) -/* 0C1954 800C0D54 8C780000 */ lw $t8, ($v1) -/* 0C1958 800C0D58 952E0000 */ lhu $t6, ($t1) -/* 0C195C 800C0D5C 01826821 */ addu $t5, $t4, $v0 -/* 0C1960 800C0D60 0302C821 */ addu $t9, $t8, $v0 -/* 0C1964 800C0D64 C7280000 */ lwc1 $f8, ($t9) -/* 0C1968 800C0D68 C5AA0000 */ lwc1 $f10, ($t5) -/* 0C196C 800C0D6C 448E2000 */ mtc1 $t6, $f4 -/* 0C1970 800C0D70 460A4401 */ sub.s $f16, $f8, $f10 -/* 0C1974 800C0D74 05C10004 */ bgez $t6, .L800C0D88 -/* 0C1978 800C0D78 468021A0 */ cvt.s.w $f6, $f4 -/* 0C197C 800C0D7C 44819000 */ mtc1 $at, $f18 -/* 0C1980 800C0D80 00000000 */ nop -/* 0C1984 800C0D84 46123180 */ add.s $f6, $f6, $f18 -.L800C0D88: -/* 0C1988 800C0D88 00000000 */ nop -/* 0C198C 800C0D8C 46068203 */ div.s $f8, $f16, $f6 -/* 0C1990 800C0D90 8D6F0000 */ lw $t7, ($t3) -/* 0C1994 800C0D94 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0C1998 800C0D98 01E2C021 */ addu $t8, $t7, $v0 -/* 0C199C 800C0D9C E7080000 */ swc1 $f8, ($t8) -/* 0C19A0 800C0DA0 8CCD0000 */ lw $t5, ($a2) -/* 0C19A4 800C0DA4 8C790000 */ lw $t9, ($v1) -/* 0C19A8 800C0DA8 952F0000 */ lhu $t7, ($t1) -/* 0C19AC 800C0DAC 01A27021 */ addu $t6, $t5, $v0 -/* 0C19B0 800C0DB0 03226021 */ addu $t4, $t9, $v0 -/* 0C19B4 800C0DB4 C58A0004 */ lwc1 $f10, 4($t4) -/* 0C19B8 800C0DB8 C5C40004 */ lwc1 $f4, 4($t6) -/* 0C19BC 800C0DBC 448F8000 */ mtc1 $t7, $f16 -/* 0C19C0 800C0DC0 46045481 */ sub.s $f18, $f10, $f4 -/* 0C19C4 800C0DC4 05E10004 */ bgez $t7, .L800C0DD8 -/* 0C19C8 800C0DC8 468081A0 */ cvt.s.w $f6, $f16 -/* 0C19CC 800C0DCC 44814000 */ mtc1 $at, $f8 -/* 0C19D0 800C0DD0 00000000 */ nop -/* 0C19D4 800C0DD4 46083180 */ add.s $f6, $f6, $f8 -.L800C0DD8: -/* 0C19D8 800C0DD8 00000000 */ nop -/* 0C19DC 800C0DDC 46069283 */ div.s $f10, $f18, $f6 -/* 0C19E0 800C0DE0 8D780000 */ lw $t8, ($t3) -/* 0C19E4 800C0DE4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0C19E8 800C0DE8 0302C821 */ addu $t9, $t8, $v0 -/* 0C19EC 800C0DEC E72A0004 */ swc1 $f10, 4($t9) -/* 0C19F0 800C0DF0 8CCE0000 */ lw $t6, ($a2) -/* 0C19F4 800C0DF4 8C6C0000 */ lw $t4, ($v1) -/* 0C19F8 800C0DF8 95380000 */ lhu $t8, ($t1) -/* 0C19FC 800C0DFC 01C27821 */ addu $t7, $t6, $v0 -/* 0C1A00 800C0E00 01826821 */ addu $t5, $t4, $v0 -/* 0C1A04 800C0E04 C5A40008 */ lwc1 $f4, 8($t5) -/* 0C1A08 800C0E08 C5F00008 */ lwc1 $f16, 8($t7) -/* 0C1A0C 800C0E0C 44989000 */ mtc1 $t8, $f18 -/* 0C1A10 800C0E10 46102201 */ sub.s $f8, $f4, $f16 -/* 0C1A14 800C0E14 07010004 */ bgez $t8, .L800C0E28 -/* 0C1A18 800C0E18 468091A0 */ cvt.s.w $f6, $f18 -/* 0C1A1C 800C0E1C 44815000 */ mtc1 $at, $f10 -/* 0C1A20 800C0E20 00000000 */ nop -/* 0C1A24 800C0E24 460A3180 */ add.s $f6, $f6, $f10 -.L800C0E28: -/* 0C1A28 800C0E28 00000000 */ nop -/* 0C1A2C 800C0E2C 46064103 */ div.s $f4, $f8, $f6 -/* 0C1A30 800C0E30 8D790000 */ lw $t9, ($t3) -/* 0C1A34 800C0E34 254A0001 */ addiu $t2, $t2, 1 -/* 0C1A38 800C0E38 03226021 */ addu $t4, $t9, $v0 -/* 0C1A3C 800C0E3C 2442000C */ addiu $v0, $v0, 0xc -/* 0C1A40 800C0E40 24840001 */ addiu $a0, $a0, 1 -/* 0C1A44 800C0E44 24E70001 */ addiu $a3, $a3, 1 -/* 0C1A48 800C0E48 24A50001 */ addiu $a1, $a1, 1 -/* 0C1A4C 800C0E4C 25080001 */ addiu $t0, $t0, 1 -/* 0C1A50 800C0E50 1550FF7F */ bne $t2, $s0, .L800C0C50 -/* 0C1A54 800C0E54 E5840008 */ swc1 $f4, 8($t4) -/* 0C1A58 800C0E58 00005025 */ move $t2, $zero -.L800C0E5C: -/* 0C1A5C 800C0E5C 3C088013 */ lui $t0, %hi(D_8012A736) # $t0, 0x8013 -/* 0C1A60 800C0E60 3C078013 */ lui $a3, %hi(D_8012A735) # $a3, 0x8013 -/* 0C1A64 800C0E64 3C068013 */ lui $a2, %hi(D_8012A734) # $a2, 0x8013 -/* 0C1A68 800C0E68 24C6A734 */ addiu $a2, %lo(D_8012A734) # addiu $a2, $a2, -0x58cc -/* 0C1A6C 800C0E6C 24E7A735 */ addiu $a3, %lo(D_8012A735) # addiu $a3, $a3, -0x58cb -/* 0C1A70 800C0E70 2508A736 */ addiu $t0, %lo(D_8012A736) # addiu $t0, $t0, -0x58ca -/* 0C1A74 800C0E74 2404FFF0 */ li $a0, -16 -.L800C0E78: -/* 0C1A78 800C0E78 1A000065 */ blez $s0, .L800C1010 -/* 0C1A7C 800C0E7C 00002825 */ move $a1, $zero -/* 0C1A80 800C0E80 3C0E800E */ lui $t6, %hi(D_800E31C0) # $t6, 0x800e -/* 0C1A84 800C0E84 25CE31C0 */ addiu $t6, %lo(D_800E31C0) # addiu $t6, $t6, 0x31c0 -/* 0C1A88 800C0E88 000A6880 */ sll $t5, $t2, 2 -/* 0C1A8C 800C0E8C 320B0003 */ andi $t3, $s0, 3 -/* 0C1A90 800C0E90 11600017 */ beqz $t3, .L800C0EF0 -/* 0C1A94 800C0E94 01AE1821 */ addu $v1, $t5, $t6 -/* 0C1A98 800C0E98 00001025 */ move $v0, $zero -/* 0C1A9C 800C0E9C 000210C0 */ sll $v0, $v0, 3 -/* 0C1AA0 800C0EA0 01604825 */ move $t1, $t3 -.L800C0EA4: -/* 0C1AA4 800C0EA4 8C6F0000 */ lw $t7, ($v1) -/* 0C1AA8 800C0EA8 24A50001 */ addiu $a1, $a1, 1 -/* 0C1AAC 800C0EAC 01E2C021 */ addu $t8, $t7, $v0 -/* 0C1AB0 800C0EB0 A7040004 */ sh $a0, 4($t8) -/* 0C1AB4 800C0EB4 8C6C0000 */ lw $t4, ($v1) -/* 0C1AB8 800C0EB8 90D90000 */ lbu $t9, ($a2) -/* 0C1ABC 800C0EBC 01826821 */ addu $t5, $t4, $v0 -/* 0C1AC0 800C0EC0 A1B90006 */ sb $t9, 6($t5) -/* 0C1AC4 800C0EC4 8C6F0000 */ lw $t7, ($v1) -/* 0C1AC8 800C0EC8 90EE0000 */ lbu $t6, ($a3) -/* 0C1ACC 800C0ECC 01E2C021 */ addu $t8, $t7, $v0 -/* 0C1AD0 800C0ED0 A30E0007 */ sb $t6, 7($t8) -/* 0C1AD4 800C0ED4 8C790000 */ lw $t9, ($v1) -/* 0C1AD8 800C0ED8 910C0000 */ lbu $t4, ($t0) -/* 0C1ADC 800C0EDC 03226821 */ addu $t5, $t9, $v0 -/* 0C1AE0 800C0EE0 2442000A */ addiu $v0, $v0, 0xa -/* 0C1AE4 800C0EE4 1525FFEF */ bne $t1, $a1, .L800C0EA4 -/* 0C1AE8 800C0EE8 A1AC0008 */ sb $t4, 8($t5) -/* 0C1AEC 800C0EEC 10B00048 */ beq $a1, $s0, .L800C1010 -.L800C0EF0: -/* 0C1AF0 800C0EF0 00051080 */ sll $v0, $a1, 2 -/* 0C1AF4 800C0EF4 00104880 */ sll $t1, $s0, 2 -/* 0C1AF8 800C0EF8 01304821 */ addu $t1, $t1, $s0 -/* 0C1AFC 800C0EFC 00451021 */ addu $v0, $v0, $a1 -/* 0C1B00 800C0F00 00021040 */ sll $v0, $v0, 1 -/* 0C1B04 800C0F04 00094840 */ sll $t1, $t1, 1 -.L800C0F08: -/* 0C1B08 800C0F08 8C6F0000 */ lw $t7, ($v1) -/* 0C1B0C 800C0F0C 00000000 */ nop -/* 0C1B10 800C0F10 01E27021 */ addu $t6, $t7, $v0 -/* 0C1B14 800C0F14 A5C40004 */ sh $a0, 4($t6) -/* 0C1B18 800C0F18 8C790000 */ lw $t9, ($v1) -/* 0C1B1C 800C0F1C 90D80000 */ lbu $t8, ($a2) -/* 0C1B20 800C0F20 03226021 */ addu $t4, $t9, $v0 -/* 0C1B24 800C0F24 A1980006 */ sb $t8, 6($t4) -/* 0C1B28 800C0F28 8C6F0000 */ lw $t7, ($v1) -/* 0C1B2C 800C0F2C 90ED0000 */ lbu $t5, ($a3) -/* 0C1B30 800C0F30 01E27021 */ addu $t6, $t7, $v0 -/* 0C1B34 800C0F34 A1CD0007 */ sb $t5, 7($t6) -/* 0C1B38 800C0F38 8C780000 */ lw $t8, ($v1) -/* 0C1B3C 800C0F3C 91190000 */ lbu $t9, ($t0) -/* 0C1B40 800C0F40 03026021 */ addu $t4, $t8, $v0 -/* 0C1B44 800C0F44 A1990008 */ sb $t9, 8($t4) -/* 0C1B48 800C0F48 8C6F0000 */ lw $t7, ($v1) -/* 0C1B4C 800C0F4C 00000000 */ nop -/* 0C1B50 800C0F50 01E26821 */ addu $t5, $t7, $v0 -/* 0C1B54 800C0F54 A5A4000E */ sh $a0, 0xe($t5) -/* 0C1B58 800C0F58 8C780000 */ lw $t8, ($v1) -/* 0C1B5C 800C0F5C 90CE0000 */ lbu $t6, ($a2) -/* 0C1B60 800C0F60 0302C821 */ addu $t9, $t8, $v0 -/* 0C1B64 800C0F64 A32E0010 */ sb $t6, 0x10($t9) -/* 0C1B68 800C0F68 8C6F0000 */ lw $t7, ($v1) -/* 0C1B6C 800C0F6C 90EC0000 */ lbu $t4, ($a3) -/* 0C1B70 800C0F70 01E26821 */ addu $t5, $t7, $v0 -/* 0C1B74 800C0F74 A1AC0011 */ sb $t4, 0x11($t5) -/* 0C1B78 800C0F78 8C6E0000 */ lw $t6, ($v1) -/* 0C1B7C 800C0F7C 91180000 */ lbu $t8, ($t0) -/* 0C1B80 800C0F80 01C2C821 */ addu $t9, $t6, $v0 -/* 0C1B84 800C0F84 A3380012 */ sb $t8, 0x12($t9) -/* 0C1B88 800C0F88 8C6F0000 */ lw $t7, ($v1) -/* 0C1B8C 800C0F8C 00000000 */ nop -/* 0C1B90 800C0F90 01E26021 */ addu $t4, $t7, $v0 -/* 0C1B94 800C0F94 A5840018 */ sh $a0, 0x18($t4) -/* 0C1B98 800C0F98 8C6E0000 */ lw $t6, ($v1) -/* 0C1B9C 800C0F9C 90CD0000 */ lbu $t5, ($a2) -/* 0C1BA0 800C0FA0 01C2C021 */ addu $t8, $t6, $v0 -/* 0C1BA4 800C0FA4 A30D001A */ sb $t5, 0x1a($t8) -/* 0C1BA8 800C0FA8 8C6F0000 */ lw $t7, ($v1) -/* 0C1BAC 800C0FAC 90F90000 */ lbu $t9, ($a3) -/* 0C1BB0 800C0FB0 01E26021 */ addu $t4, $t7, $v0 -/* 0C1BB4 800C0FB4 A199001B */ sb $t9, 0x1b($t4) -/* 0C1BB8 800C0FB8 8C6D0000 */ lw $t5, ($v1) -/* 0C1BBC 800C0FBC 910E0000 */ lbu $t6, ($t0) -/* 0C1BC0 800C0FC0 01A2C021 */ addu $t8, $t5, $v0 -/* 0C1BC4 800C0FC4 A30E001C */ sb $t6, 0x1c($t8) -/* 0C1BC8 800C0FC8 8C6F0000 */ lw $t7, ($v1) -/* 0C1BCC 800C0FCC 00000000 */ nop -/* 0C1BD0 800C0FD0 01E2C821 */ addu $t9, $t7, $v0 -/* 0C1BD4 800C0FD4 A7240022 */ sh $a0, 0x22($t9) -/* 0C1BD8 800C0FD8 8C6D0000 */ lw $t5, ($v1) -/* 0C1BDC 800C0FDC 90CC0000 */ lbu $t4, ($a2) -/* 0C1BE0 800C0FE0 01A27021 */ addu $t6, $t5, $v0 -/* 0C1BE4 800C0FE4 A1CC0024 */ sb $t4, 0x24($t6) -/* 0C1BE8 800C0FE8 8C6F0000 */ lw $t7, ($v1) -/* 0C1BEC 800C0FEC 90F80000 */ lbu $t8, ($a3) -/* 0C1BF0 800C0FF0 01E2C821 */ addu $t9, $t7, $v0 -/* 0C1BF4 800C0FF4 A3380025 */ sb $t8, 0x25($t9) -/* 0C1BF8 800C0FF8 8C6C0000 */ lw $t4, ($v1) -/* 0C1BFC 800C0FFC 910D0000 */ lbu $t5, ($t0) -/* 0C1C00 800C1000 01827021 */ addu $t6, $t4, $v0 -/* 0C1C04 800C1004 24420028 */ addiu $v0, $v0, 0x28 -/* 0C1C08 800C1008 1449FFBF */ bne $v0, $t1, .L800C0F08 -/* 0C1C0C 800C100C A1CD0026 */ sb $t5, 0x26($t6) -.L800C1010: -/* 0C1C10 800C1010 254A0001 */ addiu $t2, $t2, 1 -/* 0C1C14 800C1014 29410002 */ slti $at, $t2, 2 -/* 0C1C18 800C1018 1420FF97 */ bnez $at, .L800C0E78 -/* 0C1C1C 800C101C 00000000 */ nop -/* 0C1C20 800C1020 8FA70070 */ lw $a3, 0x70($sp) -/* 0C1C24 800C1024 00005025 */ move $t2, $zero -/* 0C1C28 800C1028 24080002 */ li $t0, 2 -/* 0C1C2C 800C102C 24060040 */ li $a2, 64 -.L800C1030: -/* 0C1C30 800C1030 1A200031 */ blez $s1, .L800C10F8 -/* 0C1C34 800C1034 00002825 */ move $a1, $zero -/* 0C1C38 800C1038 3C18800E */ lui $t8, %hi(D_800E31C8) # $t8, 0x800e -/* 0C1C3C 800C103C 271831C8 */ addiu $t8, %lo(D_800E31C8) # addiu $t8, $t8, 0x31c8 -/* 0C1C40 800C1040 000A7880 */ sll $t7, $t2, 2 -/* 0C1C44 800C1044 01F81821 */ addu $v1, $t7, $t8 -/* 0C1C48 800C1048 00001025 */ move $v0, $zero -/* 0C1C4C 800C104C 00E02025 */ move $a0, $a3 -.L800C1050: -/* 0C1C50 800C1050 8C790000 */ lw $t9, ($v1) -/* 0C1C54 800C1054 24A50001 */ addiu $a1, $a1, 1 -/* 0C1C58 800C1058 03226021 */ addu $t4, $t9, $v0 -/* 0C1C5C 800C105C A1860000 */ sb $a2, ($t4) -/* 0C1C60 800C1060 8C6E0000 */ lw $t6, ($v1) -/* 0C1C64 800C1064 908D0000 */ lbu $t5, ($a0) -/* 0C1C68 800C1068 01C27821 */ addu $t7, $t6, $v0 -/* 0C1C6C 800C106C A1ED0001 */ sb $t5, 1($t7) -/* 0C1C70 800C1070 8C780000 */ lw $t8, ($v1) -/* 0C1C74 800C1074 24840003 */ addiu $a0, $a0, 3 -/* 0C1C78 800C1078 0302C821 */ addu $t9, $t8, $v0 -/* 0C1C7C 800C107C A7200004 */ sh $zero, 4($t9) -/* 0C1C80 800C1080 8C6C0000 */ lw $t4, ($v1) -/* 0C1C84 800C1084 00000000 */ nop -/* 0C1C88 800C1088 01827021 */ addu $t6, $t4, $v0 -/* 0C1C8C 800C108C A5C00006 */ sh $zero, 6($t6) -/* 0C1C90 800C1090 8C6F0000 */ lw $t7, ($v1) -/* 0C1C94 800C1094 908DFFFE */ lbu $t5, -2($a0) -/* 0C1C98 800C1098 01E2C021 */ addu $t8, $t7, $v0 -/* 0C1C9C 800C109C A30D0002 */ sb $t5, 2($t8) -/* 0C1CA0 800C10A0 8C790000 */ lw $t9, ($v1) -/* 0C1CA4 800C10A4 00000000 */ nop -/* 0C1CA8 800C10A8 03226021 */ addu $t4, $t9, $v0 -/* 0C1CAC 800C10AC A5800008 */ sh $zero, 8($t4) -/* 0C1CB0 800C10B0 8C6E0000 */ lw $t6, ($v1) -/* 0C1CB4 800C10B4 00000000 */ nop -/* 0C1CB8 800C10B8 01C27821 */ addu $t7, $t6, $v0 -/* 0C1CBC 800C10BC A5E0000A */ sh $zero, 0xa($t7) -/* 0C1CC0 800C10C0 8C780000 */ lw $t8, ($v1) -/* 0C1CC4 800C10C4 908DFFFF */ lbu $t5, -1($a0) -/* 0C1CC8 800C10C8 0302C821 */ addu $t9, $t8, $v0 -/* 0C1CCC 800C10CC A32D0003 */ sb $t5, 3($t9) -/* 0C1CD0 800C10D0 8C6C0000 */ lw $t4, ($v1) -/* 0C1CD4 800C10D4 00000000 */ nop -/* 0C1CD8 800C10D8 01827021 */ addu $t6, $t4, $v0 -/* 0C1CDC 800C10DC A5C0000C */ sh $zero, 0xc($t6) -/* 0C1CE0 800C10E0 8C6F0000 */ lw $t7, ($v1) -/* 0C1CE4 800C10E4 00000000 */ nop -/* 0C1CE8 800C10E8 01E2C021 */ addu $t8, $t7, $v0 -/* 0C1CEC 800C10EC 24420010 */ addiu $v0, $v0, 0x10 -/* 0C1CF0 800C10F0 14B1FFD7 */ bne $a1, $s1, .L800C1050 -/* 0C1CF4 800C10F4 A700000E */ sh $zero, 0xe($t8) -.L800C10F8: -/* 0C1CF8 800C10F8 254A0001 */ addiu $t2, $t2, 1 -/* 0C1CFC 800C10FC 1548FFCC */ bne $t2, $t0, .L800C1030 -/* 0C1D00 800C1100 00000000 */ nop -/* 0C1D04 800C1104 240D0001 */ li $t5, 1 -/* 0C1D08 800C1108 3C01800E */ lui $at, %hi(D_800E31AC) # $at, 0x800e -/* 0C1D0C 800C110C AC2D31AC */ sw $t5, %lo(D_800E31AC)($at) -/* 0C1D10 800C1110 3C018013 */ lui $at, %hi(D_8012A77C) # $at, 0x8013 -/* 0C1D14 800C1114 8FBF0024 */ lw $ra, 0x24($sp) -/* 0C1D18 800C1118 AC30A77C */ sw $s0, %lo(D_8012A77C)($at) -/* 0C1D1C 800C111C 8FB00018 */ lw $s0, 0x18($sp) -/* 0C1D20 800C1120 8FB1001C */ lw $s1, 0x1c($sp) -/* 0C1D24 800C1124 8FB20020 */ lw $s2, 0x20($sp) -/* 0C1D28 800C1128 03E00008 */ jr $ra -/* 0C1D2C 800C112C 27BD0050 */ addiu $sp, $sp, 0x50 - -glabel func_800C1130 -/* 0C1D30 800C1130 3C07800E */ lui $a3, %hi(D_800E31B0) # $a3, 0x800e -/* 0C1D34 800C1134 24E731B0 */ addiu $a3, %lo(D_800E31B0) # addiu $a3, $a3, 0x31b0 -/* 0C1D38 800C1138 44842000 */ mtc1 $a0, $f4 -/* 0C1D3C 800C113C 94E20000 */ lhu $v0, ($a3) -/* 0C1D40 800C1140 3C03800E */ lui $v1, %hi(D_800E0001) # $v1, 0x800e -/* 0C1D44 800C1144 1840009B */ blez $v0, .L800C13B4 -/* 0C1D48 800C1148 46802020 */ cvt.s.w $f0, $f4 -/* 0C1D4C 800C114C 0082082A */ slt $at, $a0, $v0 -/* 0C1D50 800C1150 10200034 */ beqz $at, .L800C1224 -/* 0C1D54 800C1154 3C088013 */ lui $t0, %hi(D_8012A77C) # $t0, 0x8013 -/* 0C1D58 800C1158 2508A77C */ addiu $t0, %lo(D_8012A77C) # addiu $t0, $t0, -0x5884 -/* 0C1D5C 800C115C 8D050000 */ lw $a1, ($t0) -/* 0C1D60 800C1160 00001825 */ move $v1, $zero -/* 0C1D64 800C1164 18A0002A */ blez $a1, .L800C1210 -/* 0C1D68 800C1168 3C0A8013 */ lui $t2, %hi(D_8012A774) # $t2, 0x8013 -/* 0C1D6C 800C116C 3C098013 */ lui $t1, %hi(D_8012A770) # $t1, 0x8013 -/* 0C1D70 800C1170 2529A770 */ addiu $t1, %lo(D_8012A770) # addiu $t1, $t1, -0x5890 -/* 0C1D74 800C1174 00001025 */ move $v0, $zero -/* 0C1D78 800C1178 254AA774 */ addiu $t2, %lo(D_8012A774) # addiu $t2, $t2, -0x588c -.L800C117C: -/* 0C1D7C 800C117C 8D4F0000 */ lw $t7, ($t2) -/* 0C1D80 800C1180 8D2E0000 */ lw $t6, ($t1) -/* 0C1D84 800C1184 01E2C021 */ addu $t8, $t7, $v0 -/* 0C1D88 800C1188 C7080000 */ lwc1 $f8, ($t8) -/* 0C1D8C 800C118C 01C23021 */ addu $a2, $t6, $v0 -/* 0C1D90 800C1190 46080282 */ mul.s $f10, $f0, $f8 -/* 0C1D94 800C1194 C4C60000 */ lwc1 $f6, ($a2) -/* 0C1D98 800C1198 24630001 */ addiu $v1, %lo(D_800E0001) # addiu $v1, $v1, 1 -/* 0C1D9C 800C119C 460A3400 */ add.s $f16, $f6, $f10 -/* 0C1DA0 800C11A0 E4D00000 */ swc1 $f16, ($a2) -/* 0C1DA4 800C11A4 8D4B0000 */ lw $t3, ($t2) -/* 0C1DA8 800C11A8 8D390000 */ lw $t9, ($t1) -/* 0C1DAC 800C11AC 01626021 */ addu $t4, $t3, $v0 -/* 0C1DB0 800C11B0 C5840004 */ lwc1 $f4, 4($t4) -/* 0C1DB4 800C11B4 03223021 */ addu $a2, $t9, $v0 -/* 0C1DB8 800C11B8 46040202 */ mul.s $f8, $f0, $f4 -/* 0C1DBC 800C11BC C4D20004 */ lwc1 $f18, 4($a2) -/* 0C1DC0 800C11C0 00000000 */ nop -/* 0C1DC4 800C11C4 46089180 */ add.s $f6, $f18, $f8 -/* 0C1DC8 800C11C8 E4C60004 */ swc1 $f6, 4($a2) -/* 0C1DCC 800C11CC 8D4E0000 */ lw $t6, ($t2) -/* 0C1DD0 800C11D0 8D2D0000 */ lw $t5, ($t1) -/* 0C1DD4 800C11D4 01C27821 */ addu $t7, $t6, $v0 -/* 0C1DD8 800C11D8 C5F00008 */ lwc1 $f16, 8($t7) -/* 0C1DDC 800C11DC 01A23021 */ addu $a2, $t5, $v0 -/* 0C1DE0 800C11E0 46100102 */ mul.s $f4, $f0, $f16 -/* 0C1DE4 800C11E4 C4CA0008 */ lwc1 $f10, 8($a2) -/* 0C1DE8 800C11E8 2442000C */ addiu $v0, $v0, 0xc -/* 0C1DEC 800C11EC 46045480 */ add.s $f18, $f10, $f4 -/* 0C1DF0 800C11F0 E4D20008 */ swc1 $f18, 8($a2) -/* 0C1DF4 800C11F4 8D050000 */ lw $a1, ($t0) -/* 0C1DF8 800C11F8 00000000 */ nop -/* 0C1DFC 800C11FC 0065082A */ slt $at, $v1, $a1 -/* 0C1E00 800C1200 1420FFDE */ bnez $at, .L800C117C -/* 0C1E04 800C1204 00000000 */ nop -/* 0C1E08 800C1208 94E20000 */ lhu $v0, ($a3) -/* 0C1E0C 800C120C 00001825 */ move $v1, $zero -.L800C1210: -/* 0C1E10 800C1210 3C098013 */ lui $t1, %hi(D_8012A770) # $t1, 0x8013 -/* 0C1E14 800C1214 0044C023 */ subu $t8, $v0, $a0 -/* 0C1E18 800C1218 2529A770 */ addiu $t1, %lo(D_8012A770) # addiu $t1, $t1, -0x5890 -/* 0C1E1C 800C121C 10000026 */ b .L800C12B8 -/* 0C1E20 800C1220 A4F80000 */ sh $t8, ($a3) -.L800C1224: -/* 0C1E24 800C1224 3C088013 */ lui $t0, %hi(D_8012A77C) # $t0, 0x8013 -/* 0C1E28 800C1228 2508A77C */ addiu $t0, %lo(D_8012A77C) # addiu $t0, $t0, -0x5884 -/* 0C1E2C 800C122C 8D050000 */ lw $a1, ($t0) -/* 0C1E30 800C1230 00001825 */ move $v1, $zero -/* 0C1E34 800C1234 18A0001D */ blez $a1, .L800C12AC -/* 0C1E38 800C1238 3C098013 */ lui $t1, %hi(D_8012A770) # $t1, 0x8013 -/* 0C1E3C 800C123C 3C048013 */ lui $a0, %hi(D_8012A778) # $a0, 0x8013 -/* 0C1E40 800C1240 2484A778 */ addiu $a0, %lo(D_8012A778) # addiu $a0, $a0, -0x5888 -/* 0C1E44 800C1244 2529A770 */ addiu $t1, %lo(D_8012A770) # addiu $t1, $t1, -0x5890 -/* 0C1E48 800C1248 00001025 */ move $v0, $zero -.L800C124C: -/* 0C1E4C 800C124C 8C990000 */ lw $t9, ($a0) -/* 0C1E50 800C1250 8D2C0000 */ lw $t4, ($t1) -/* 0C1E54 800C1254 03225821 */ addu $t3, $t9, $v0 -/* 0C1E58 800C1258 C5680000 */ lwc1 $f8, ($t3) -/* 0C1E5C 800C125C 01826821 */ addu $t5, $t4, $v0 -/* 0C1E60 800C1260 E5A80000 */ swc1 $f8, ($t5) -/* 0C1E64 800C1264 8C8E0000 */ lw $t6, ($a0) -/* 0C1E68 800C1268 8D380000 */ lw $t8, ($t1) -/* 0C1E6C 800C126C 01C27821 */ addu $t7, $t6, $v0 -/* 0C1E70 800C1270 C5E60004 */ lwc1 $f6, 4($t7) -/* 0C1E74 800C1274 0302C821 */ addu $t9, $t8, $v0 -/* 0C1E78 800C1278 E7260004 */ swc1 $f6, 4($t9) -/* 0C1E7C 800C127C 8C8B0000 */ lw $t3, ($a0) -/* 0C1E80 800C1280 8D2D0000 */ lw $t5, ($t1) -/* 0C1E84 800C1284 01626021 */ addu $t4, $t3, $v0 -/* 0C1E88 800C1288 C5900008 */ lwc1 $f16, 8($t4) -/* 0C1E8C 800C128C 01A27021 */ addu $t6, $t5, $v0 -/* 0C1E90 800C1290 E5D00008 */ swc1 $f16, 8($t6) -/* 0C1E94 800C1294 8D050000 */ lw $a1, ($t0) -/* 0C1E98 800C1298 24630001 */ addiu $v1, $v1, 1 -/* 0C1E9C 800C129C 0065082A */ slt $at, $v1, $a1 -/* 0C1EA0 800C12A0 1420FFEA */ bnez $at, .L800C124C -/* 0C1EA4 800C12A4 2442000C */ addiu $v0, $v0, 0xc -/* 0C1EA8 800C12A8 00001825 */ move $v1, $zero -.L800C12AC: -/* 0C1EAC 800C12AC 3C098013 */ lui $t1, %hi(D_8012A770) # $t1, 0x8013 -/* 0C1EB0 800C12B0 2529A770 */ addiu $t1, %lo(D_8012A770) # addiu $t1, $t1, -0x5890 -/* 0C1EB4 800C12B4 A4E00000 */ sh $zero, ($a3) -.L800C12B8: -/* 0C1EB8 800C12B8 18A00048 */ blez $a1, .L800C13DC -/* 0C1EBC 800C12BC 00001025 */ move $v0, $zero -/* 0C1EC0 800C12C0 3C06800E */ lui $a2, %hi(D_800E31D0) # $a2, 0x800e -/* 0C1EC4 800C12C4 3C05800E */ lui $a1, %hi(D_800E31C0) # $a1, 0x800e -/* 0C1EC8 800C12C8 24A531C0 */ addiu $a1, %lo(D_800E31C0) # addiu $a1, $a1, 0x31c0 -/* 0C1ECC 800C12CC 24C631D0 */ addiu $a2, %lo(D_800E31D0) # addiu $a2, $a2, 0x31d0 -/* 0C1ED0 800C12D0 00002025 */ move $a0, $zero -.L800C12D4: -/* 0C1ED4 800C12D4 4459F800 */ cfc1 $t9, $31 -/* 0C1ED8 800C12D8 8D2F0000 */ lw $t7, ($t1) -/* 0C1EDC 800C12DC 37210003 */ ori $at, $t9, 3 -/* 0C1EE0 800C12E0 38210002 */ xori $at, $at, 2 -/* 0C1EE4 800C12E4 01E2C021 */ addu $t8, $t7, $v0 -/* 0C1EE8 800C12E8 C70A0000 */ lwc1 $f10, ($t8) -/* 0C1EEC 800C12EC 44C1F800 */ ctc1 $at, $31 -/* 0C1EF0 800C12F0 8CCC0000 */ lw $t4, ($a2) -/* 0C1EF4 800C12F4 46005124 */ cvt.w.s $f4, $f10 -/* 0C1EF8 800C12F8 000C6880 */ sll $t5, $t4, 2 -/* 0C1EFC 800C12FC 00AD7021 */ addu $t6, $a1, $t5 -/* 0C1F00 800C1300 44D9F800 */ ctc1 $t9, $31 -/* 0C1F04 800C1304 8DCF0000 */ lw $t7, ($t6) -/* 0C1F08 800C1308 440B2000 */ mfc1 $t3, $f4 -/* 0C1F0C 800C130C 01E4C021 */ addu $t8, $t7, $a0 -/* 0C1F10 800C1310 444DF800 */ cfc1 $t5, $31 -/* 0C1F14 800C1314 A70B0000 */ sh $t3, ($t8) -/* 0C1F18 800C1318 8D390000 */ lw $t9, ($t1) -/* 0C1F1C 800C131C 35A10003 */ ori $at, $t5, 3 -/* 0C1F20 800C1320 38210002 */ xori $at, $at, 2 -/* 0C1F24 800C1324 03226021 */ addu $t4, $t9, $v0 -/* 0C1F28 800C1328 C5920004 */ lwc1 $f18, 4($t4) -/* 0C1F2C 800C132C 44C1F800 */ ctc1 $at, $31 -/* 0C1F30 800C1330 8CCF0000 */ lw $t7, ($a2) -/* 0C1F34 800C1334 46009224 */ cvt.w.s $f8, $f18 -/* 0C1F38 800C1338 000F5880 */ sll $t3, $t7, 2 -/* 0C1F3C 800C133C 00ABC021 */ addu $t8, $a1, $t3 -/* 0C1F40 800C1340 44CDF800 */ ctc1 $t5, $31 -/* 0C1F44 800C1344 8F190000 */ lw $t9, ($t8) -/* 0C1F48 800C1348 440E4000 */ mfc1 $t6, $f8 -/* 0C1F4C 800C134C 03246021 */ addu $t4, $t9, $a0 -/* 0C1F50 800C1350 444BF800 */ cfc1 $t3, $31 -/* 0C1F54 800C1354 A58E0002 */ sh $t6, 2($t4) -/* 0C1F58 800C1358 8D2D0000 */ lw $t5, ($t1) -/* 0C1F5C 800C135C 35610003 */ ori $at, $t3, 3 -/* 0C1F60 800C1360 8CD90000 */ lw $t9, ($a2) -/* 0C1F64 800C1364 38210002 */ xori $at, $at, 2 -/* 0C1F68 800C1368 01A27821 */ addu $t7, $t5, $v0 -/* 0C1F6C 800C136C C5E60008 */ lwc1 $f6, 8($t7) -/* 0C1F70 800C1370 44C1F800 */ ctc1 $at, $31 -/* 0C1F74 800C1374 00197080 */ sll $t6, $t9, 2 -/* 0C1F78 800C1378 46003424 */ cvt.w.s $f16, $f6 -/* 0C1F7C 800C137C 00AE6021 */ addu $t4, $a1, $t6 -/* 0C1F80 800C1380 8D8D0000 */ lw $t5, ($t4) -/* 0C1F84 800C1384 44188000 */ mfc1 $t8, $f16 -/* 0C1F88 800C1388 01A47821 */ addu $t7, $t5, $a0 -/* 0C1F8C 800C138C 44CBF800 */ ctc1 $t3, $31 -/* 0C1F90 800C1390 A1F80009 */ sb $t8, 9($t7) -/* 0C1F94 800C1394 8D0B0000 */ lw $t3, ($t0) -/* 0C1F98 800C1398 24630001 */ addiu $v1, $v1, 1 -/* 0C1F9C 800C139C 006B082A */ slt $at, $v1, $t3 -/* 0C1FA0 800C13A0 2484000A */ addiu $a0, $a0, 0xa -/* 0C1FA4 800C13A4 1420FFCB */ bnez $at, .L800C12D4 -/* 0C1FA8 800C13A8 2442000C */ addiu $v0, $v0, 0xc -/* 0C1FAC 800C13AC 03E00008 */ jr $ra -/* 0C1FB0 800C13B0 00000000 */ nop - -.L800C13B4: -/* 0C1FB4 800C13B4 246331B4 */ addiu $v1, $v1, 0x31b4 -/* 0C1FB8 800C13B8 94620000 */ lhu $v0, ($v1) -/* 0C1FBC 800C13BC 3401FFFF */ li $at, 65535 -/* 0C1FC0 800C13C0 10410006 */ beq $v0, $at, .L800C13DC -/* 0C1FC4 800C13C4 0082082A */ slt $at, $a0, $v0 -/* 0C1FC8 800C13C8 10200003 */ beqz $at, .L800C13D8 -/* 0C1FCC 800C13CC 0044C823 */ subu $t9, $v0, $a0 -/* 0C1FD0 800C13D0 03E00008 */ jr $ra -/* 0C1FD4 800C13D4 A4790000 */ sh $t9, ($v1) - -.L800C13D8: -/* 0C1FD8 800C13D8 A4600000 */ sh $zero, ($v1) -.L800C13DC: -/* 0C1FDC 800C13DC 03E00008 */ jr $ra -/* 0C1FE0 800C13E0 00000000 */ nop - -glabel func_800C13E4 -/* 0C1FE4 800C13E4 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C1FE8 800C13E8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0C1FEC 800C13EC AFA5001C */ sw $a1, 0x1c($sp) -/* 0C1FF0 800C13F0 AFA60020 */ sw $a2, 0x20($sp) -/* 0C1FF4 800C13F4 0C01ECF4 */ jal func_8007B3D0 -/* 0C1FF8 800C13F8 AFA40018 */ sw $a0, 0x18($sp) -/* 0C1FFC 800C13FC 8FA40018 */ lw $a0, 0x18($sp) -/* 0C2000 800C1400 3C18800E */ lui $t8, %hi(D_800E3648) # $t8, 0x800e -/* 0C2004 800C1404 8C820000 */ lw $v0, ($a0) -/* 0C2008 800C1408 27183648 */ addiu $t8, %lo(D_800E3648) # addiu $t8, $t8, 0x3648 -/* 0C200C 800C140C 244E0008 */ addiu $t6, $v0, 8 -/* 0C2010 800C1410 AC8E0000 */ sw $t6, ($a0) -/* 0C2014 800C1414 3C0F0600 */ lui $t7, 0x600 -/* 0C2018 800C1418 AC4F0000 */ sw $t7, ($v0) -/* 0C201C 800C141C AC580004 */ sw $t8, 4($v0) -/* 0C2020 800C1420 8C820000 */ lw $v0, ($a0) -/* 0C2024 800C1424 3C07800E */ lui $a3, %hi(D_800E31D0) # $a3, 0x800e -/* 0C2028 800C1428 24590008 */ addiu $t9, $v0, 8 -/* 0C202C 800C142C 24E731D0 */ addiu $a3, %lo(D_800E31D0) # addiu $a3, $a3, 0x31d0 -/* 0C2030 800C1430 AC990000 */ sw $t9, ($a0) -/* 0C2034 800C1434 8CEA0000 */ lw $t2, ($a3) -/* 0C2038 800C1438 3C09800E */ lui $t1, %hi(D_800E31C0) # $t1, 0x800e -/* 0C203C 800C143C 252931C0 */ addiu $t1, %lo(D_800E31C0) # addiu $t1, $t1, 0x31c0 -/* 0C2040 800C1440 000A5880 */ sll $t3, $t2, 2 -/* 0C2044 800C1444 012B6021 */ addu $t4, $t1, $t3 -/* 0C2048 800C1448 8D8D0000 */ lw $t5, ($t4) -/* 0C204C 800C144C 3C088000 */ lui $t0, 0x8000 -/* 0C2050 800C1450 01A87021 */ addu $t6, $t5, $t0 -/* 0C2054 800C1454 31CF0006 */ andi $t7, $t6, 6 -/* 0C2058 800C1458 35F80058 */ ori $t8, $t7, 0x58 -/* 0C205C 800C145C 331900FF */ andi $t9, $t8, 0xff -/* 0C2060 800C1460 00195400 */ sll $t2, $t9, 0x10 -/* 0C2064 800C1464 3C010400 */ lui $at, 0x400 -/* 0C2068 800C1468 01415825 */ or $t3, $t2, $at -/* 0C206C 800C146C 356C00E0 */ ori $t4, $t3, 0xe0 -/* 0C2070 800C1470 AC4C0000 */ sw $t4, ($v0) -/* 0C2074 800C1474 8CED0000 */ lw $t5, ($a3) -/* 0C2078 800C1478 3C0B0570 */ lui $t3, (0x05700080 >> 16) # lui $t3, 0x570 -/* 0C207C 800C147C 000D7080 */ sll $t6, $t5, 2 -/* 0C2080 800C1480 012E7821 */ addu $t7, $t1, $t6 -/* 0C2084 800C1484 8DF80000 */ lw $t8, ($t7) -/* 0C2088 800C1488 356B0080 */ ori $t3, (0x05700080 & 0xFFFF) # ori $t3, $t3, 0x80 -/* 0C208C 800C148C 0308C821 */ addu $t9, $t8, $t0 -/* 0C2090 800C1490 AC590004 */ sw $t9, 4($v0) -/* 0C2094 800C1494 8C820000 */ lw $v0, ($a0) -/* 0C2098 800C1498 3C0E800E */ lui $t6, 0x800e -/* 0C209C 800C149C 244A0008 */ addiu $t2, $v0, 8 -/* 0C20A0 800C14A0 AC8A0000 */ sw $t2, ($a0) -/* 0C20A4 800C14A4 AC4B0000 */ sw $t3, ($v0) -/* 0C20A8 800C14A8 8CEC0000 */ lw $t4, ($a3) -/* 0C20AC 800C14AC 00000000 */ nop -/* 0C20B0 800C14B0 000C6880 */ sll $t5, $t4, 2 -/* 0C20B4 800C14B4 01CD7021 */ addu $t6, $t6, $t5 -/* 0C20B8 800C14B8 8DCE31C8 */ lw $t6, 0x31c8($t6) -/* 0C20BC 800C14BC 00000000 */ nop -/* 0C20C0 800C14C0 01C87821 */ addu $t7, $t6, $t0 -/* 0C20C4 800C14C4 0C01ECF4 */ jal func_8007B3D0 -/* 0C20C8 800C14C8 AC4F0004 */ sw $t7, 4($v0) -/* 0C20CC 800C14CC 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C20D0 800C14D0 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0C20D4 800C14D4 03E00008 */ jr $ra -/* 0C20D8 800C14D8 00000000 */ nop - -glabel func_800C14DC -/* 0C20DC 800C14DC 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C20E0 800C14E0 AFBF0014 */ sw $ra, 0x14($sp) -/* 0C20E4 800C14E4 AFA5001C */ sw $a1, 0x1c($sp) -/* 0C20E8 800C14E8 AFA60020 */ sw $a2, 0x20($sp) -/* 0C20EC 800C14EC 0C01ECF4 */ jal func_8007B3D0 -/* 0C20F0 800C14F0 AFA40018 */ sw $a0, 0x18($sp) -/* 0C20F4 800C14F4 8FA40018 */ lw $a0, 0x18($sp) -/* 0C20F8 800C14F8 3C18800E */ lui $t8, %hi(D_800E3648) # $t8, 0x800e -/* 0C20FC 800C14FC 8C820000 */ lw $v0, ($a0) -/* 0C2100 800C1500 27183648 */ addiu $t8, %lo(D_800E3648) # addiu $t8, $t8, 0x3648 -/* 0C2104 800C1504 244E0008 */ addiu $t6, $v0, 8 -/* 0C2108 800C1508 AC8E0000 */ sw $t6, ($a0) -/* 0C210C 800C150C 3C0F0600 */ lui $t7, 0x600 -/* 0C2110 800C1510 AC4F0000 */ sw $t7, ($v0) -/* 0C2114 800C1514 AC580004 */ sw $t8, 4($v0) -/* 0C2118 800C1518 8C820000 */ lw $v0, ($a0) -/* 0C211C 800C151C 3C07800E */ lui $a3, %hi(D_800E31D0) # $a3, 0x800e -/* 0C2120 800C1520 24590008 */ addiu $t9, $v0, 8 -/* 0C2124 800C1524 24E731D0 */ addiu $a3, %lo(D_800E31D0) # addiu $a3, $a3, 0x31d0 -/* 0C2128 800C1528 AC990000 */ sw $t9, ($a0) -/* 0C212C 800C152C 8CEA0000 */ lw $t2, ($a3) -/* 0C2130 800C1530 3C09800E */ lui $t1, %hi(D_800E31C0) # $t1, 0x800e -/* 0C2134 800C1534 252931C0 */ addiu $t1, %lo(D_800E31C0) # addiu $t1, $t1, 0x31c0 -/* 0C2138 800C1538 000A5880 */ sll $t3, $t2, 2 -/* 0C213C 800C153C 012B6021 */ addu $t4, $t1, $t3 -/* 0C2140 800C1540 8D8D0000 */ lw $t5, ($t4) -/* 0C2144 800C1544 3C088000 */ lui $t0, 0x8000 -/* 0C2148 800C1548 01A87021 */ addu $t6, $t5, $t0 -/* 0C214C 800C154C 31CF0006 */ andi $t7, $t6, 6 -/* 0C2150 800C1550 35F80058 */ ori $t8, $t7, 0x58 -/* 0C2154 800C1554 331900FF */ andi $t9, $t8, 0xff -/* 0C2158 800C1558 00195400 */ sll $t2, $t9, 0x10 -/* 0C215C 800C155C 3C010400 */ lui $at, 0x400 -/* 0C2160 800C1560 01415825 */ or $t3, $t2, $at -/* 0C2164 800C1564 356C00E0 */ ori $t4, $t3, 0xe0 -/* 0C2168 800C1568 AC4C0000 */ sw $t4, ($v0) -/* 0C216C 800C156C 8CED0000 */ lw $t5, ($a3) -/* 0C2170 800C1570 3C0B0570 */ lui $t3, (0x05700080 >> 16) # lui $t3, 0x570 -/* 0C2174 800C1574 000D7080 */ sll $t6, $t5, 2 -/* 0C2178 800C1578 012E7821 */ addu $t7, $t1, $t6 -/* 0C217C 800C157C 8DF80000 */ lw $t8, ($t7) -/* 0C2180 800C1580 356B0080 */ ori $t3, (0x05700080 & 0xFFFF) # ori $t3, $t3, 0x80 -/* 0C2184 800C1584 0308C821 */ addu $t9, $t8, $t0 -/* 0C2188 800C1588 AC590004 */ sw $t9, 4($v0) -/* 0C218C 800C158C 8C820000 */ lw $v0, ($a0) -/* 0C2190 800C1590 3C0E800E */ lui $t6, 0x800e -/* 0C2194 800C1594 244A0008 */ addiu $t2, $v0, 8 -/* 0C2198 800C1598 AC8A0000 */ sw $t2, ($a0) -/* 0C219C 800C159C AC4B0000 */ sw $t3, ($v0) -/* 0C21A0 800C15A0 8CEC0000 */ lw $t4, ($a3) -/* 0C21A4 800C15A4 00000000 */ nop -/* 0C21A8 800C15A8 000C6880 */ sll $t5, $t4, 2 -/* 0C21AC 800C15AC 01CD7021 */ addu $t6, $t6, $t5 -/* 0C21B0 800C15B0 8DCE31C8 */ lw $t6, 0x31c8($t6) -/* 0C21B4 800C15B4 00000000 */ nop -/* 0C21B8 800C15B8 01C87821 */ addu $t7, $t6, $t0 -/* 0C21BC 800C15BC 0C01ECF4 */ jal func_8007B3D0 -/* 0C21C0 800C15C0 AC4F0004 */ sw $t7, 4($v0) -/* 0C21C4 800C15C4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C21C8 800C15C8 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0C21CC 800C15CC 03E00008 */ jr $ra -/* 0C21D0 800C15D0 00000000 */ nop - -glabel func_800C15D4 -/* 0C21D4 800C15D4 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0C21D8 800C15D8 AFBF0034 */ sw $ra, 0x34($sp) -/* 0C21DC 800C15DC AFA40038 */ sw $a0, 0x38($sp) -/* 0C21E0 800C15E0 3C05FFFF */ lui $a1, (0xFFFF00FF >> 16) # lui $a1, 0xffff -/* 0C21E4 800C15E4 AFB50030 */ sw $s5, 0x30($sp) -/* 0C21E8 800C15E8 AFB4002C */ sw $s4, 0x2c($sp) -/* 0C21EC 800C15EC AFB30028 */ sw $s3, 0x28($sp) -/* 0C21F0 800C15F0 AFB20024 */ sw $s2, 0x24($sp) -/* 0C21F4 800C15F4 AFB10020 */ sw $s1, 0x20($sp) -/* 0C21F8 800C15F8 AFB0001C */ sw $s0, 0x1c($sp) -/* 0C21FC 800C15FC E7B50010 */ swc1 $f21, 0x10($sp) -/* 0C2200 800C1600 E7B40014 */ swc1 $f20, 0x14($sp) -/* 0C2204 800C1604 34A500FF */ ori $a1, (0xFFFF00FF & 0xFFFF) # ori $a1, $a1, 0xff -/* 0C2208 800C1608 0C01C327 */ jal func_80070C9C -/* 0C220C 800C160C 24040DA0 */ li $a0, 3488 -/* 0C2210 800C1610 3C04800E */ lui $a0, %hi(D_800E31C0) # $a0, 0x800e -/* 0C2214 800C1614 3C05800E */ lui $a1, %hi(D_800E31C8) # $a1, 0x800e -/* 0C2218 800C1618 244F02D0 */ addiu $t7, $v0, 0x2d0 -/* 0C221C 800C161C 24A531C8 */ addiu $a1, %lo(D_800E31C8) # addiu $a1, $a1, 0x31c8 -/* 0C2220 800C1620 248431C0 */ addiu $a0, %lo(D_800E31C0) # addiu $a0, $a0, 0x31c0 -/* 0C2224 800C1624 25F902D0 */ addiu $t9, $t7, 0x2d0 -/* 0C2228 800C1628 272D0400 */ addiu $t5, $t9, 0x400 -/* 0C222C 800C162C AC820000 */ sw $v0, ($a0) -/* 0C2230 800C1630 AC8F0004 */ sw $t7, 4($a0) -/* 0C2234 800C1634 ACB90000 */ sw $t9, ($a1) -/* 0C2238 800C1638 ACAD0004 */ sw $t5, 4($a1) -/* 0C223C 800C163C 3C058013 */ lui $a1, %hi(D_8012A735) # $a1, 0x8013 -/* 0C2240 800C1640 3C048013 */ lui $a0, %hi(D_8012A734) # $a0, 0x8013 -/* 0C2244 800C1644 3C03800E */ lui $v1, %hi(D_800E31C0) # $v1, 0x800e -/* 0C2248 800C1648 3C0A800E */ lui $t2, %hi(D_800E31C8) # $t2, 0x800e -/* 0C224C 800C164C 3C068013 */ lui $a2, %hi(D_8012A736) # $a2, 0x8013 -/* 0C2250 800C1650 24C6A736 */ addiu $a2, %lo(D_8012A736) # addiu $a2, $a2, -0x58ca -/* 0C2254 800C1654 254A31C8 */ addiu $t2, %lo(D_800E31C8) # addiu $t2, $t2, 0x31c8 -/* 0C2258 800C1658 246331C0 */ addiu $v1, %lo(D_800E31C0) # addiu $v1, $v1, 0x31c0 -/* 0C225C 800C165C 2484A734 */ addiu $a0, %lo(D_8012A734) # addiu $a0, $a0, -0x58cc -/* 0C2260 800C1660 24A5A735 */ addiu $a1, %lo(D_8012A735) # addiu $a1, $a1, -0x58cb -/* 0C2264 800C1664 240902D0 */ li $t1, 720 -/* 0C2268 800C1668 240800FF */ li $t0, 255 -/* 0C226C 800C166C 00001025 */ move $v0, $zero -.L800C1670: -/* 0C2270 800C1670 8C6F0000 */ lw $t7, ($v1) -/* 0C2274 800C1674 908E0000 */ lbu $t6, ($a0) -/* 0C2278 800C1678 01E2C021 */ addu $t8, $t7, $v0 -/* 0C227C 800C167C A30E0006 */ sb $t6, 6($t8) -/* 0C2280 800C1680 8C6C0000 */ lw $t4, ($v1) -/* 0C2284 800C1684 90B90000 */ lbu $t9, ($a1) -/* 0C2288 800C1688 01826821 */ addu $t5, $t4, $v0 -/* 0C228C 800C168C A1B90007 */ sb $t9, 7($t5) -/* 0C2290 800C1690 8C6E0000 */ lw $t6, ($v1) -/* 0C2294 800C1694 90CF0000 */ lbu $t7, ($a2) -/* 0C2298 800C1698 01C2C021 */ addu $t8, $t6, $v0 -/* 0C229C 800C169C A30F0008 */ sb $t7, 8($t8) -/* 0C22A0 800C16A0 8C6C0000 */ lw $t4, ($v1) -/* 0C22A4 800C16A4 00000000 */ nop -/* 0C22A8 800C16A8 0182C821 */ addu $t9, $t4, $v0 -/* 0C22AC 800C16AC A3280009 */ sb $t0, 9($t9) -/* 0C22B0 800C16B0 8C6E0000 */ lw $t6, ($v1) -/* 0C22B4 800C16B4 908D0000 */ lbu $t5, ($a0) -/* 0C22B8 800C16B8 01C27821 */ addu $t7, $t6, $v0 -/* 0C22BC 800C16BC A1ED0010 */ sb $t5, 0x10($t7) -/* 0C22C0 800C16C0 8C6C0000 */ lw $t4, ($v1) -/* 0C22C4 800C16C4 90B80000 */ lbu $t8, ($a1) -/* 0C22C8 800C16C8 0182C821 */ addu $t9, $t4, $v0 -/* 0C22CC 800C16CC A3380011 */ sb $t8, 0x11($t9) -/* 0C22D0 800C16D0 8C6D0000 */ lw $t5, ($v1) -/* 0C22D4 800C16D4 90CE0000 */ lbu $t6, ($a2) -/* 0C22D8 800C16D8 01A27821 */ addu $t7, $t5, $v0 -/* 0C22DC 800C16DC A1EE0012 */ sb $t6, 0x12($t7) -/* 0C22E0 800C16E0 8C6C0000 */ lw $t4, ($v1) -/* 0C22E4 800C16E4 00000000 */ nop -/* 0C22E8 800C16E8 0182C021 */ addu $t8, $t4, $v0 -/* 0C22EC 800C16EC A3080013 */ sb $t0, 0x13($t8) -/* 0C22F0 800C16F0 8C6D0000 */ lw $t5, ($v1) -/* 0C22F4 800C16F4 90990000 */ lbu $t9, ($a0) -/* 0C22F8 800C16F8 01A27021 */ addu $t6, $t5, $v0 -/* 0C22FC 800C16FC A1D9001A */ sb $t9, 0x1a($t6) -/* 0C2300 800C1700 8C6C0000 */ lw $t4, ($v1) -/* 0C2304 800C1704 90AF0000 */ lbu $t7, ($a1) -/* 0C2308 800C1708 0182C021 */ addu $t8, $t4, $v0 -/* 0C230C 800C170C A30F001B */ sb $t7, 0x1b($t8) -/* 0C2310 800C1710 8C790000 */ lw $t9, ($v1) -/* 0C2314 800C1714 90CD0000 */ lbu $t5, ($a2) -/* 0C2318 800C1718 03227021 */ addu $t6, $t9, $v0 -/* 0C231C 800C171C A1CD001C */ sb $t5, 0x1c($t6) -/* 0C2320 800C1720 8C6C0000 */ lw $t4, ($v1) -/* 0C2324 800C1724 00000000 */ nop -/* 0C2328 800C1728 01827821 */ addu $t7, $t4, $v0 -/* 0C232C 800C172C A1E8001D */ sb $t0, 0x1d($t7) -/* 0C2330 800C1730 8C790000 */ lw $t9, ($v1) -/* 0C2334 800C1734 90980000 */ lbu $t8, ($a0) -/* 0C2338 800C1738 03226821 */ addu $t5, $t9, $v0 -/* 0C233C 800C173C A1B80024 */ sb $t8, 0x24($t5) -/* 0C2340 800C1740 8C6C0000 */ lw $t4, ($v1) -/* 0C2344 800C1744 90AE0000 */ lbu $t6, ($a1) -/* 0C2348 800C1748 01827821 */ addu $t7, $t4, $v0 -/* 0C234C 800C174C A1EE0025 */ sb $t6, 0x25($t7) -/* 0C2350 800C1750 8C780000 */ lw $t8, ($v1) -/* 0C2354 800C1754 90D90000 */ lbu $t9, ($a2) -/* 0C2358 800C1758 03026821 */ addu $t5, $t8, $v0 -/* 0C235C 800C175C A1B90026 */ sb $t9, 0x26($t5) -/* 0C2360 800C1760 8C6C0000 */ lw $t4, ($v1) -/* 0C2364 800C1764 00000000 */ nop -/* 0C2368 800C1768 01827021 */ addu $t6, $t4, $v0 -/* 0C236C 800C176C 24420028 */ addiu $v0, $v0, 0x28 -/* 0C2370 800C1770 1449FFBF */ bne $v0, $t1, .L800C1670 -/* 0C2374 800C1774 A1C80027 */ sb $t0, 0x27($t6) -/* 0C2378 800C1778 24630004 */ addiu $v1, $v1, 4 -/* 0C237C 800C177C 006A082B */ sltu $at, $v1, $t2 -/* 0C2380 800C1780 1420FFBB */ bnez $at, .L800C1670 -/* 0C2384 800C1784 00001025 */ move $v0, $zero -/* 0C2388 800C1788 3C03800E */ lui $v1, %hi(D_800E31C0) # $v1, 0x800e -/* 0C238C 800C178C 3C0A800E */ lui $t2, %hi(D_800E31C8) # $t2, 0x800e -/* 0C2390 800C1790 254A31C8 */ addiu $t2, %lo(D_800E31C8) # addiu $t2, $t2, 0x31c8 -/* 0C2394 800C1794 246331C0 */ addiu $v1, %lo(D_800E31C0) # addiu $v1, $v1, 0x31c0 -/* 0C2398 800C1798 24090009 */ li $t1, 9 -/* 0C239C 800C179C 2408000A */ li $t0, 10 -.L800C17A0: -/* 0C23A0 800C17A0 8C6F0000 */ lw $t7, ($v1) -/* 0C23A4 800C17A4 24070001 */ li $a3, 1 -/* 0C23A8 800C17A8 A1E000C7 */ sb $zero, 0xc7($t7) -/* 0C23AC 800C17AC 8C780000 */ lw $t8, ($v1) -/* 0C23B0 800C17B0 00000000 */ nop -/* 0C23B4 800C17B4 A300022F */ sb $zero, 0x22f($t8) -.L800C17B8: -/* 0C23B8 800C17B8 0007C840 */ sll $t9, $a3, 1 -/* 0C23BC 800C17BC 03280019 */ multu $t9, $t0 -/* 0C23C0 800C17C0 24F80001 */ addiu $t8, $a3, 1 -/* 0C23C4 800C17C4 0018C840 */ sll $t9, $t8, 1 -/* 0C23C8 800C17C8 24F80002 */ addiu $t8, $a3, 2 -/* 0C23CC 800C17CC 8C6D0000 */ lw $t5, ($v1) -/* 0C23D0 800C17D0 00001012 */ mflo $v0 -/* 0C23D4 800C17D4 01A26021 */ addu $t4, $t5, $v0 -/* 0C23D8 800C17D8 A18000C7 */ sb $zero, 0xc7($t4) -/* 0C23DC 800C17DC 03280019 */ multu $t9, $t0 -/* 0C23E0 800C17E0 0018C840 */ sll $t9, $t8, 1 -/* 0C23E4 800C17E4 8C6E0000 */ lw $t6, ($v1) -/* 0C23E8 800C17E8 24F80003 */ addiu $t8, $a3, 3 -/* 0C23EC 800C17EC 01C27821 */ addu $t7, $t6, $v0 -/* 0C23F0 800C17F0 A1E0022F */ sb $zero, 0x22f($t7) -/* 0C23F4 800C17F4 8C6D0000 */ lw $t5, ($v1) -/* 0C23F8 800C17F8 24E70004 */ addiu $a3, $a3, 4 -/* 0C23FC 800C17FC 00002012 */ mflo $a0 -/* 0C2400 800C1800 01A46021 */ addu $t4, $t5, $a0 -/* 0C2404 800C1804 A18000C7 */ sb $zero, 0xc7($t4) -/* 0C2408 800C1808 03280019 */ multu $t9, $t0 -/* 0C240C 800C180C 8C6E0000 */ lw $t6, ($v1) -/* 0C2410 800C1810 0018C840 */ sll $t9, $t8, 1 -/* 0C2414 800C1814 01C47821 */ addu $t7, $t6, $a0 -/* 0C2418 800C1818 A1E0022F */ sb $zero, 0x22f($t7) -/* 0C241C 800C181C 8C6D0000 */ lw $t5, ($v1) -/* 0C2420 800C1820 00002812 */ mflo $a1 -/* 0C2424 800C1824 01A56021 */ addu $t4, $t5, $a1 -/* 0C2428 800C1828 A18000C7 */ sb $zero, 0xc7($t4) -/* 0C242C 800C182C 03280019 */ multu $t9, $t0 -/* 0C2430 800C1830 8C6E0000 */ lw $t6, ($v1) -/* 0C2434 800C1834 00000000 */ nop -/* 0C2438 800C1838 01C57821 */ addu $t7, $t6, $a1 -/* 0C243C 800C183C A1E0022F */ sb $zero, 0x22f($t7) -/* 0C2440 800C1840 8C6D0000 */ lw $t5, ($v1) -/* 0C2444 800C1844 00003012 */ mflo $a2 -/* 0C2448 800C1848 01A66021 */ addu $t4, $t5, $a2 -/* 0C244C 800C184C A18000C7 */ sb $zero, 0xc7($t4) -/* 0C2450 800C1850 8C6E0000 */ lw $t6, ($v1) -/* 0C2454 800C1854 00000000 */ nop -/* 0C2458 800C1858 01C67821 */ addu $t7, $t6, $a2 -/* 0C245C 800C185C 14E9FFD6 */ bne $a3, $t1, .L800C17B8 -/* 0C2460 800C1860 A1E0022F */ sb $zero, 0x22f($t7) -/* 0C2464 800C1864 24630004 */ addiu $v1, $v1, 4 -/* 0C2468 800C1868 006A082B */ sltu $at, $v1, $t2 -/* 0C246C 800C186C 1420FFCC */ bnez $at, .L800C17A0 -/* 0C2470 800C1870 00000000 */ nop -/* 0C2474 800C1874 3C014370 */ li $at, 0x43700000 # 240.000000 -/* 0C2478 800C1878 3C12800E */ lui $s2, %hi(D_800E31C8) # $s2, 0x800e -/* 0C247C 800C187C 4481A000 */ mtc1 $at, $f20 -/* 0C2480 800C1880 0000A825 */ move $s5, $zero -/* 0C2484 800C1884 265231C8 */ addiu $s2, %lo(D_800E31C8) # addiu $s2, $s2, 0x31c8 -/* 0C2488 800C1888 0000A025 */ move $s4, $zero -/* 0C248C 800C188C 2410FFF0 */ li $s0, -16 -.L800C1890: -/* 0C2490 800C1890 00159C00 */ sll $s3, $s5, 0x10 -/* 0C2494 800C1894 0013C403 */ sra $t8, $s3, 0x10 -/* 0C2498 800C1898 00182400 */ sll $a0, $t8, 0x10 -/* 0C249C 800C189C 0004CC03 */ sra $t9, $a0, 0x10 -/* 0C24A0 800C18A0 03202025 */ move $a0, $t9 -/* 0C24A4 800C18A4 0C01C1F1 */ jal func_800707C4 -/* 0C24A8 800C18A8 03009825 */ move $s3, $t8 -/* 0C24AC 800C18AC 46140102 */ mul.s $f4, $f0, $f20 -/* 0C24B0 800C18B0 00132400 */ sll $a0, $s3, 0x10 -/* 0C24B4 800C18B4 00047C03 */ sra $t7, $a0, 0x10 -/* 0C24B8 800C18B8 01E02025 */ move $a0, $t7 -/* 0C24BC 800C18BC 444DF800 */ cfc1 $t5, $31 -/* 0C24C0 800C18C0 00000000 */ nop -/* 0C24C4 800C18C4 35A10003 */ ori $at, $t5, 3 -/* 0C24C8 800C18C8 38210002 */ xori $at, $at, 2 -/* 0C24CC 800C18CC 44C1F800 */ ctc1 $at, $31 -/* 0C24D0 800C18D0 00000000 */ nop -/* 0C24D4 800C18D4 460021A4 */ cvt.w.s $f6, $f4 -/* 0C24D8 800C18D8 44113000 */ mfc1 $s1, $f6 -/* 0C24DC 800C18DC 44CDF800 */ ctc1 $t5, $31 -/* 0C24E0 800C18E0 00116400 */ sll $t4, $s1, 0x10 -/* 0C24E4 800C18E4 0C01C1FE */ jal func_800707F8 -/* 0C24E8 800C18E8 000C8C03 */ sra $s1, $t4, 0x10 -/* 0C24EC 800C18EC 3C014334 */ li $at, 0x43340000 # 180.000000 -/* 0C24F0 800C18F0 44814000 */ mtc1 $at, $f8 -/* 0C24F4 800C18F4 00141840 */ sll $v1, $s4, 1 -/* 0C24F8 800C18F8 46080282 */ mul.s $f10, $f0, $f8 -/* 0C24FC 800C18FC 0003C080 */ sll $t8, $v1, 2 -/* 0C2500 800C1900 0303C021 */ addu $t8, $t8, $v1 -/* 0C2504 800C1904 3C02800E */ lui $v0, %hi(D_800E31C0) # $v0, 0x800e -/* 0C2508 800C1908 4459F800 */ cfc1 $t9, $31 -/* 0C250C 800C190C 244231C0 */ addiu $v0, %lo(D_800E31C0) # addiu $v0, $v0, 0x31c0 -/* 0C2510 800C1910 37210003 */ ori $at, $t9, 3 -/* 0C2514 800C1914 38210002 */ xori $at, $at, 2 -/* 0C2518 800C1918 44C1F800 */ ctc1 $at, $31 -/* 0C251C 800C191C 00181840 */ sll $v1, $t8, 1 -/* 0C2520 800C1920 46005424 */ cvt.w.s $f16, $f10 -/* 0C2524 800C1924 00112823 */ negu $a1, $s1 -/* 0C2528 800C1928 44048000 */ mfc1 $a0, $f16 -/* 0C252C 800C192C 44D9F800 */ ctc1 $t9, $31 -/* 0C2530 800C1930 00046C00 */ sll $t5, $a0, 0x10 -/* 0C2534 800C1934 000D2403 */ sra $a0, $t5, 0x10 -.L800C1938: -/* 0C2538 800C1938 8C4E0000 */ lw $t6, ($v0) -/* 0C253C 800C193C 24420004 */ addiu $v0, $v0, 4 -/* 0C2540 800C1940 01C37821 */ addu $t7, $t6, $v1 -/* 0C2544 800C1944 A5F10000 */ sh $s1, ($t7) -/* 0C2548 800C1948 8C58FFFC */ lw $t8, -4($v0) -/* 0C254C 800C194C 00000000 */ nop -/* 0C2550 800C1950 0303C821 */ addu $t9, $t8, $v1 -/* 0C2554 800C1954 A7240002 */ sh $a0, 2($t9) -/* 0C2558 800C1958 8C4DFFFC */ lw $t5, -4($v0) -/* 0C255C 800C195C 00000000 */ nop -/* 0C2560 800C1960 01A36021 */ addu $t4, $t5, $v1 -/* 0C2564 800C1964 A5900004 */ sh $s0, 4($t4) -/* 0C2568 800C1968 8C4EFFFC */ lw $t6, -4($v0) -/* 0C256C 800C196C 00000000 */ nop -/* 0C2570 800C1970 01C37821 */ addu $t7, $t6, $v1 -/* 0C2574 800C1974 A5F0000E */ sh $s0, 0xe($t7) -/* 0C2578 800C1978 8C58FFFC */ lw $t8, -4($v0) -/* 0C257C 800C197C 00000000 */ nop -/* 0C2580 800C1980 0303C821 */ addu $t9, $t8, $v1 -/* 0C2584 800C1984 A73000B8 */ sh $s0, 0xb8($t9) -/* 0C2588 800C1988 8C4DFFFC */ lw $t5, -4($v0) -/* 0C258C 800C198C 00000000 */ nop -/* 0C2590 800C1990 01A36021 */ addu $t4, $t5, $v1 -/* 0C2594 800C1994 A59000C2 */ sh $s0, 0xc2($t4) -/* 0C2598 800C1998 8C4EFFFC */ lw $t6, -4($v0) -/* 0C259C 800C199C 00000000 */ nop -/* 0C25A0 800C19A0 01C37821 */ addu $t7, $t6, $v1 -/* 0C25A4 800C19A4 A5E50168 */ sh $a1, 0x168($t7) -/* 0C25A8 800C19A8 8C58FFFC */ lw $t8, -4($v0) -/* 0C25AC 800C19AC 00000000 */ nop -/* 0C25B0 800C19B0 0303C821 */ addu $t9, $t8, $v1 -/* 0C25B4 800C19B4 A724016A */ sh $a0, 0x16a($t9) -/* 0C25B8 800C19B8 8C4DFFFC */ lw $t5, -4($v0) -/* 0C25BC 800C19BC 00000000 */ nop -/* 0C25C0 800C19C0 01A36021 */ addu $t4, $t5, $v1 -/* 0C25C4 800C19C4 A590016C */ sh $s0, 0x16c($t4) -/* 0C25C8 800C19C8 8C4EFFFC */ lw $t6, -4($v0) -/* 0C25CC 800C19CC 00000000 */ nop -/* 0C25D0 800C19D0 01C37821 */ addu $t7, $t6, $v1 -/* 0C25D4 800C19D4 A5F00176 */ sh $s0, 0x176($t7) -/* 0C25D8 800C19D8 8C58FFFC */ lw $t8, -4($v0) -/* 0C25DC 800C19DC 00000000 */ nop -/* 0C25E0 800C19E0 0303C821 */ addu $t9, $t8, $v1 -/* 0C25E4 800C19E4 A7300220 */ sh $s0, 0x220($t9) -/* 0C25E8 800C19E8 8C4DFFFC */ lw $t5, -4($v0) -/* 0C25EC 800C19EC 00000000 */ nop -/* 0C25F0 800C19F0 01A36021 */ addu $t4, $t5, $v1 -/* 0C25F4 800C19F4 1452FFD0 */ bne $v0, $s2, .L800C1938 -/* 0C25F8 800C19F8 A590022A */ sh $s0, 0x22a($t4) -/* 0C25FC 800C19FC 26940001 */ addiu $s4, $s4, 1 -/* 0C2600 800C1A00 2A810009 */ slti $at, $s4, 9 -/* 0C2604 800C1A04 1420FFA2 */ bnez $at, .L800C1890 -/* 0C2608 800C1A08 26B51000 */ addiu $s5, $s5, 0x1000 -/* 0C260C 800C1A0C 8FAE0038 */ lw $t6, 0x38($sp) -/* 0C2610 800C1A10 3C03800E */ lui $v1, %hi(D_800E31C8) # $v1, 0x800e -/* 0C2614 800C1A14 91CF0000 */ lbu $t7, ($t6) -/* 0C2618 800C1A18 246331C8 */ addiu $v1, %lo(D_800E31C8) # addiu $v1, $v1, 0x31c8 -/* 0C261C 800C1A1C 31F80080 */ andi $t8, $t7, 0x80 -/* 0C2620 800C1A20 1300001D */ beqz $t8, .L800C1A98 -/* 0C2624 800C1A24 3C06800E */ lui $a2, %hi(D_800E31D0) # $a2, 0x800e -/* 0C2628 800C1A28 3C014334 */ li $at, 0x43340000 # 180.000000 -/* 0C262C 800C1A2C 3C19800E */ lui $t9, %hi(D_800E31B0) # $t9, 0x800e -/* 0C2630 800C1A30 44801000 */ mtc1 $zero, $f2 -/* 0C2634 800C1A34 973931B0 */ lhu $t9, %lo(D_800E31B0)($t9) -/* 0C2638 800C1A38 44816000 */ mtc1 $at, $f12 -/* 0C263C 800C1A3C 3C018013 */ lui $at, %hi(D_8012A758) # $at, 0x8013 -/* 0C2640 800C1A40 44999000 */ mtc1 $t9, $f18 -/* 0C2644 800C1A44 E422A758 */ swc1 $f2, %lo(D_8012A758)($at) -/* 0C2648 800C1A48 3C018013 */ lui $at, %hi(D_8012A75C) # $at, 0x8013 -/* 0C264C 800C1A4C E422A75C */ swc1 $f2, %lo(D_8012A75C)($at) -/* 0C2650 800C1A50 07210005 */ bgez $t9, .L800C1A68 -/* 0C2654 800C1A54 46809020 */ cvt.s.w $f0, $f18 -/* 0C2658 800C1A58 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0C265C 800C1A5C 44812000 */ mtc1 $at, $f4 -/* 0C2660 800C1A60 00000000 */ nop -/* 0C2664 800C1A64 46040000 */ add.s $f0, $f0, $f4 -.L800C1A68: -/* 0C2668 800C1A68 00000000 */ nop -/* 0C266C 800C1A6C 4600A183 */ div.s $f6, $f20, $f0 -/* 0C2670 800C1A70 3C018013 */ lui $at, %hi(D_8012A760) # $at, 0x8013 -/* 0C2674 800C1A74 46006203 */ div.s $f8, $f12, $f0 -/* 0C2678 800C1A78 E426A760 */ swc1 $f6, %lo(D_8012A760)($at) -/* 0C267C 800C1A7C 3C018013 */ lui $at, %hi(D_8012A764) # $at, 0x8013 -/* 0C2680 800C1A80 E428A764 */ swc1 $f8, %lo(D_8012A764)($at) -/* 0C2684 800C1A84 3C018013 */ lui $at, %hi(D_8012A768) # $at, 0x8013 -/* 0C2688 800C1A88 E434A768 */ swc1 $f20, %lo(D_8012A768)($at) -/* 0C268C 800C1A8C 3C018013 */ lui $at, %hi(D_8012A76C) # $at, 0x8013 -/* 0C2690 800C1A90 1000001E */ b .L800C1B0C -/* 0C2694 800C1A94 E42CA76C */ swc1 $f12, %lo(D_8012A76C)($at) -.L800C1A98: -/* 0C2698 800C1A98 3C014334 */ li $at, 0x43340000 # 180.000000 -/* 0C269C 800C1A9C 3C0D800E */ lui $t5, %hi(D_800E31B0) # $t5, 0x800e -/* 0C26A0 800C1AA0 44816000 */ mtc1 $at, $f12 -/* 0C26A4 800C1AA4 95AD31B0 */ lhu $t5, %lo(D_800E31B0)($t5) -/* 0C26A8 800C1AA8 3C018013 */ lui $at, %hi(D_8012A758) # $at, 0x8013 -/* 0C26AC 800C1AAC 448D5000 */ mtc1 $t5, $f10 -/* 0C26B0 800C1AB0 E434A758 */ swc1 $f20, %lo(D_8012A758)($at) -/* 0C26B4 800C1AB4 44801000 */ mtc1 $zero, $f2 -/* 0C26B8 800C1AB8 3C018013 */ lui $at, %hi(D_8012A75C) # $at, 0x8013 -/* 0C26BC 800C1ABC E42CA75C */ swc1 $f12, %lo(D_8012A75C)($at) -/* 0C26C0 800C1AC0 05A10005 */ bgez $t5, .L800C1AD8 -/* 0C26C4 800C1AC4 46805020 */ cvt.s.w $f0, $f10 -/* 0C26C8 800C1AC8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0C26CC 800C1ACC 44818000 */ mtc1 $at, $f16 -/* 0C26D0 800C1AD0 00000000 */ nop -/* 0C26D4 800C1AD4 46100000 */ add.s $f0, $f0, $f16 -.L800C1AD8: -/* 0C26D8 800C1AD8 4600A487 */ neg.s $f18, $f20 -/* 0C26DC 800C1ADC 00000000 */ nop -/* 0C26E0 800C1AE0 46009103 */ div.s $f4, $f18, $f0 -/* 0C26E4 800C1AE4 46006187 */ neg.s $f6, $f12 -/* 0C26E8 800C1AE8 3C018013 */ lui $at, %hi(D_8012A760) # $at, 0x8013 -/* 0C26EC 800C1AEC 46003203 */ div.s $f8, $f6, $f0 -/* 0C26F0 800C1AF0 E424A760 */ swc1 $f4, %lo(D_8012A760)($at) -/* 0C26F4 800C1AF4 3C018013 */ lui $at, %hi(D_8012A764) # $at, 0x8013 -/* 0C26F8 800C1AF8 E428A764 */ swc1 $f8, %lo(D_8012A764)($at) -/* 0C26FC 800C1AFC 3C018013 */ lui $at, %hi(D_8012A768) # $at, 0x8013 -/* 0C2700 800C1B00 E422A768 */ swc1 $f2, %lo(D_8012A768)($at) -/* 0C2704 800C1B04 3C018013 */ lui $at, %hi(D_8012A76C) # $at, 0x8013 -/* 0C2708 800C1B08 E422A76C */ swc1 $f2, %lo(D_8012A76C)($at) -.L800C1B0C: -/* 0C270C 800C1B0C 24C631D0 */ addiu $a2, %lo(D_800E31D0) # addiu $a2, $a2, 0x31d0 -/* 0C2710 800C1B10 24050400 */ li $a1, 1024 -/* 0C2714 800C1B14 24040040 */ li $a0, 64 -/* 0C2718 800C1B18 00001025 */ move $v0, $zero -.L800C1B1C: -/* 0C271C 800C1B1C 8C6C0000 */ lw $t4, ($v1) -/* 0C2720 800C1B20 00000000 */ nop -/* 0C2724 800C1B24 01827021 */ addu $t6, $t4, $v0 -/* 0C2728 800C1B28 A1C40000 */ sb $a0, ($t6) -/* 0C272C 800C1B2C 8C6F0000 */ lw $t7, ($v1) -/* 0C2730 800C1B30 00000000 */ nop -/* 0C2734 800C1B34 01E2C021 */ addu $t8, $t7, $v0 -/* 0C2738 800C1B38 A7000004 */ sh $zero, 4($t8) -/* 0C273C 800C1B3C 8C790000 */ lw $t9, ($v1) -/* 0C2740 800C1B40 00000000 */ nop -/* 0C2744 800C1B44 03226821 */ addu $t5, $t9, $v0 -/* 0C2748 800C1B48 A5A00006 */ sh $zero, 6($t5) -/* 0C274C 800C1B4C 8C6C0000 */ lw $t4, ($v1) -/* 0C2750 800C1B50 00000000 */ nop -/* 0C2754 800C1B54 01827021 */ addu $t6, $t4, $v0 -/* 0C2758 800C1B58 A5C00008 */ sh $zero, 8($t6) -/* 0C275C 800C1B5C 8C6F0000 */ lw $t7, ($v1) -/* 0C2760 800C1B60 00000000 */ nop -/* 0C2764 800C1B64 01E2C021 */ addu $t8, $t7, $v0 -/* 0C2768 800C1B68 A700000A */ sh $zero, 0xa($t8) -/* 0C276C 800C1B6C 8C790000 */ lw $t9, ($v1) -/* 0C2770 800C1B70 00000000 */ nop -/* 0C2774 800C1B74 03226821 */ addu $t5, $t9, $v0 -/* 0C2778 800C1B78 A5A0000C */ sh $zero, 0xc($t5) -/* 0C277C 800C1B7C 8C6C0000 */ lw $t4, ($v1) -/* 0C2780 800C1B80 00000000 */ nop -/* 0C2784 800C1B84 01827021 */ addu $t6, $t4, $v0 -/* 0C2788 800C1B88 A5C0000E */ sh $zero, 0xe($t6) -/* 0C278C 800C1B8C 8C6F0000 */ lw $t7, ($v1) -/* 0C2790 800C1B90 00000000 */ nop -/* 0C2794 800C1B94 01E2C021 */ addu $t8, $t7, $v0 -/* 0C2798 800C1B98 A3040010 */ sb $a0, 0x10($t8) -/* 0C279C 800C1B9C 8C790000 */ lw $t9, ($v1) -/* 0C27A0 800C1BA0 00000000 */ nop -/* 0C27A4 800C1BA4 03226821 */ addu $t5, $t9, $v0 -/* 0C27A8 800C1BA8 A5A00014 */ sh $zero, 0x14($t5) -/* 0C27AC 800C1BAC 8C6C0000 */ lw $t4, ($v1) -/* 0C27B0 800C1BB0 00000000 */ nop -/* 0C27B4 800C1BB4 01827021 */ addu $t6, $t4, $v0 -/* 0C27B8 800C1BB8 A5C00016 */ sh $zero, 0x16($t6) -/* 0C27BC 800C1BBC 8C6F0000 */ lw $t7, ($v1) -/* 0C27C0 800C1BC0 00000000 */ nop -/* 0C27C4 800C1BC4 01E2C021 */ addu $t8, $t7, $v0 -/* 0C27C8 800C1BC8 A7000018 */ sh $zero, 0x18($t8) -/* 0C27CC 800C1BCC 8C790000 */ lw $t9, ($v1) -/* 0C27D0 800C1BD0 00000000 */ nop -/* 0C27D4 800C1BD4 03226821 */ addu $t5, $t9, $v0 -/* 0C27D8 800C1BD8 A5A0001A */ sh $zero, 0x1a($t5) -/* 0C27DC 800C1BDC 8C6C0000 */ lw $t4, ($v1) -/* 0C27E0 800C1BE0 00000000 */ nop -/* 0C27E4 800C1BE4 01827021 */ addu $t6, $t4, $v0 -/* 0C27E8 800C1BE8 A5C0001C */ sh $zero, 0x1c($t6) -/* 0C27EC 800C1BEC 8C6F0000 */ lw $t7, ($v1) -/* 0C27F0 800C1BF0 00000000 */ nop -/* 0C27F4 800C1BF4 01E2C021 */ addu $t8, $t7, $v0 -/* 0C27F8 800C1BF8 A700001E */ sh $zero, 0x1e($t8) -/* 0C27FC 800C1BFC 8C790000 */ lw $t9, ($v1) -/* 0C2800 800C1C00 00000000 */ nop -/* 0C2804 800C1C04 03226821 */ addu $t5, $t9, $v0 -/* 0C2808 800C1C08 A1A40020 */ sb $a0, 0x20($t5) -/* 0C280C 800C1C0C 8C6C0000 */ lw $t4, ($v1) -/* 0C2810 800C1C10 00000000 */ nop -/* 0C2814 800C1C14 01827021 */ addu $t6, $t4, $v0 -/* 0C2818 800C1C18 A5C00024 */ sh $zero, 0x24($t6) -/* 0C281C 800C1C1C 8C6F0000 */ lw $t7, ($v1) -/* 0C2820 800C1C20 00000000 */ nop -/* 0C2824 800C1C24 01E2C021 */ addu $t8, $t7, $v0 -/* 0C2828 800C1C28 A7000026 */ sh $zero, 0x26($t8) -/* 0C282C 800C1C2C 8C790000 */ lw $t9, ($v1) -/* 0C2830 800C1C30 00000000 */ nop -/* 0C2834 800C1C34 03226821 */ addu $t5, $t9, $v0 -/* 0C2838 800C1C38 A5A00028 */ sh $zero, 0x28($t5) -/* 0C283C 800C1C3C 8C6C0000 */ lw $t4, ($v1) -/* 0C2840 800C1C40 00000000 */ nop -/* 0C2844 800C1C44 01827021 */ addu $t6, $t4, $v0 -/* 0C2848 800C1C48 A5C0002A */ sh $zero, 0x2a($t6) -/* 0C284C 800C1C4C 8C6F0000 */ lw $t7, ($v1) -/* 0C2850 800C1C50 00000000 */ nop -/* 0C2854 800C1C54 01E2C021 */ addu $t8, $t7, $v0 -/* 0C2858 800C1C58 A700002C */ sh $zero, 0x2c($t8) -/* 0C285C 800C1C5C 8C790000 */ lw $t9, ($v1) -/* 0C2860 800C1C60 00000000 */ nop -/* 0C2864 800C1C64 03226821 */ addu $t5, $t9, $v0 -/* 0C2868 800C1C68 A5A0002E */ sh $zero, 0x2e($t5) -/* 0C286C 800C1C6C 8C6C0000 */ lw $t4, ($v1) -/* 0C2870 800C1C70 00000000 */ nop -/* 0C2874 800C1C74 01827021 */ addu $t6, $t4, $v0 -/* 0C2878 800C1C78 A1C40030 */ sb $a0, 0x30($t6) -/* 0C287C 800C1C7C 8C6F0000 */ lw $t7, ($v1) -/* 0C2880 800C1C80 00000000 */ nop -/* 0C2884 800C1C84 01E2C021 */ addu $t8, $t7, $v0 -/* 0C2888 800C1C88 A7000034 */ sh $zero, 0x34($t8) -/* 0C288C 800C1C8C 8C790000 */ lw $t9, ($v1) -/* 0C2890 800C1C90 00000000 */ nop -/* 0C2894 800C1C94 03226821 */ addu $t5, $t9, $v0 -/* 0C2898 800C1C98 A5A00036 */ sh $zero, 0x36($t5) -/* 0C289C 800C1C9C 8C6C0000 */ lw $t4, ($v1) -/* 0C28A0 800C1CA0 00000000 */ nop -/* 0C28A4 800C1CA4 01827021 */ addu $t6, $t4, $v0 -/* 0C28A8 800C1CA8 A5C00038 */ sh $zero, 0x38($t6) -/* 0C28AC 800C1CAC 8C6F0000 */ lw $t7, ($v1) -/* 0C28B0 800C1CB0 00000000 */ nop -/* 0C28B4 800C1CB4 01E2C021 */ addu $t8, $t7, $v0 -/* 0C28B8 800C1CB8 A700003A */ sh $zero, 0x3a($t8) -/* 0C28BC 800C1CBC 8C790000 */ lw $t9, ($v1) -/* 0C28C0 800C1CC0 00000000 */ nop -/* 0C28C4 800C1CC4 03226821 */ addu $t5, $t9, $v0 -/* 0C28C8 800C1CC8 A5A0003C */ sh $zero, 0x3c($t5) -/* 0C28CC 800C1CCC 8C6C0000 */ lw $t4, ($v1) -/* 0C28D0 800C1CD0 00000000 */ nop -/* 0C28D4 800C1CD4 01827021 */ addu $t6, $t4, $v0 -/* 0C28D8 800C1CD8 24420040 */ addiu $v0, $v0, 0x40 -/* 0C28DC 800C1CDC 1445FF8F */ bne $v0, $a1, .L800C1B1C -/* 0C28E0 800C1CE0 A5C0003E */ sh $zero, 0x3e($t6) -/* 0C28E4 800C1CE4 24630004 */ addiu $v1, $v1, 4 -/* 0C28E8 800C1CE8 0066082B */ sltu $at, $v1, $a2 -/* 0C28EC 800C1CEC 1420FF8B */ bnez $at, .L800C1B1C -/* 0C28F0 800C1CF0 00001025 */ move $v0, $zero -/* 0C28F4 800C1CF4 3C0A800E */ lui $t2, %hi(D_800E31D0) # $t2, 0x800e -/* 0C28F8 800C1CF8 254A31D0 */ addiu $t2, %lo(D_800E31D0) # addiu $t2, $t2, 0x31d0 -/* 0C28FC 800C1CFC 0000A025 */ move $s4, $zero -/* 0C2900 800C1D00 240B0008 */ li $t3, 8 -/* 0C2904 800C1D04 00142040 */ sll $a0, $s4, 1 -.L800C1D08: -/* 0C2908 800C1D08 3C02800E */ lui $v0, %hi(D_800E31C8) # $v0, 0x800e -/* 0C290C 800C1D0C 244231C8 */ addiu $v0, %lo(D_800E31C8) # addiu $v0, $v0, 0x31c8 -/* 0C2910 800C1D10 00041900 */ sll $v1, $a0, 4 -/* 0C2914 800C1D14 24860001 */ addiu $a2, $a0, 1 -/* 0C2918 800C1D18 24850003 */ addiu $a1, $a0, 3 -/* 0C291C 800C1D1C 24880002 */ addiu $t0, $a0, 2 -.L800C1D20: -/* 0C2920 800C1D20 8C4F0000 */ lw $t7, ($v0) -/* 0C2924 800C1D24 24420004 */ addiu $v0, $v0, 4 -/* 0C2928 800C1D28 01E3C021 */ addu $t8, $t7, $v1 -/* 0C292C 800C1D2C A3040001 */ sb $a0, 1($t8) -/* 0C2930 800C1D30 8C59FFFC */ lw $t9, -4($v0) -/* 0C2934 800C1D34 00000000 */ nop -/* 0C2938 800C1D38 03236821 */ addu $t5, $t9, $v1 -/* 0C293C 800C1D3C A1A60002 */ sb $a2, 2($t5) -/* 0C2940 800C1D40 8C4CFFFC */ lw $t4, -4($v0) -/* 0C2944 800C1D44 00000000 */ nop -/* 0C2948 800C1D48 01837021 */ addu $t6, $t4, $v1 -/* 0C294C 800C1D4C A1C50003 */ sb $a1, 3($t6) -/* 0C2950 800C1D50 8C4FFFFC */ lw $t7, -4($v0) -/* 0C2954 800C1D54 00000000 */ nop -/* 0C2958 800C1D58 01E3C021 */ addu $t8, $t7, $v1 -/* 0C295C 800C1D5C A3040011 */ sb $a0, 0x11($t8) -/* 0C2960 800C1D60 8C59FFFC */ lw $t9, -4($v0) -/* 0C2964 800C1D64 00000000 */ nop -/* 0C2968 800C1D68 03236821 */ addu $t5, $t9, $v1 -/* 0C296C 800C1D6C A1A50012 */ sb $a1, 0x12($t5) -/* 0C2970 800C1D70 8C4CFFFC */ lw $t4, -4($v0) -/* 0C2974 800C1D74 00000000 */ nop -/* 0C2978 800C1D78 01837021 */ addu $t6, $t4, $v1 -/* 0C297C 800C1D7C A1C80013 */ sb $t0, 0x13($t6) -/* 0C2980 800C1D80 8C4FFFFC */ lw $t7, -4($v0) -/* 0C2984 800C1D84 00000000 */ nop -/* 0C2988 800C1D88 01E3C021 */ addu $t8, $t7, $v1 -/* 0C298C 800C1D8C A3040101 */ sb $a0, 0x101($t8) -/* 0C2990 800C1D90 8C59FFFC */ lw $t9, -4($v0) -/* 0C2994 800C1D94 00000000 */ nop -/* 0C2998 800C1D98 03236821 */ addu $t5, $t9, $v1 -/* 0C299C 800C1D9C A1A60102 */ sb $a2, 0x102($t5) -/* 0C29A0 800C1DA0 8C4CFFFC */ lw $t4, -4($v0) -/* 0C29A4 800C1DA4 00000000 */ nop -/* 0C29A8 800C1DA8 01837021 */ addu $t6, $t4, $v1 -/* 0C29AC 800C1DAC A1C50103 */ sb $a1, 0x103($t6) -/* 0C29B0 800C1DB0 8C4FFFFC */ lw $t7, -4($v0) -/* 0C29B4 800C1DB4 00000000 */ nop -/* 0C29B8 800C1DB8 01E3C021 */ addu $t8, $t7, $v1 -/* 0C29BC 800C1DBC A3040111 */ sb $a0, 0x111($t8) -/* 0C29C0 800C1DC0 8C59FFFC */ lw $t9, -4($v0) -/* 0C29C4 800C1DC4 00000000 */ nop -/* 0C29C8 800C1DC8 03236821 */ addu $t5, $t9, $v1 -/* 0C29CC 800C1DCC A1A50112 */ sb $a1, 0x112($t5) -/* 0C29D0 800C1DD0 8C4CFFFC */ lw $t4, -4($v0) -/* 0C29D4 800C1DD4 00000000 */ nop -/* 0C29D8 800C1DD8 01837021 */ addu $t6, $t4, $v1 -/* 0C29DC 800C1DDC A1C80113 */ sb $t0, 0x113($t6) -/* 0C29E0 800C1DE0 8C4FFFFC */ lw $t7, -4($v0) -/* 0C29E4 800C1DE4 00000000 */ nop -/* 0C29E8 800C1DE8 01E3C021 */ addu $t8, $t7, $v1 -/* 0C29EC 800C1DEC A3040201 */ sb $a0, 0x201($t8) -/* 0C29F0 800C1DF0 8C59FFFC */ lw $t9, -4($v0) -/* 0C29F4 800C1DF4 00000000 */ nop -/* 0C29F8 800C1DF8 03236821 */ addu $t5, $t9, $v1 -/* 0C29FC 800C1DFC A1A60202 */ sb $a2, 0x202($t5) -/* 0C2A00 800C1E00 8C4CFFFC */ lw $t4, -4($v0) -/* 0C2A04 800C1E04 00000000 */ nop -/* 0C2A08 800C1E08 01837021 */ addu $t6, $t4, $v1 -/* 0C2A0C 800C1E0C A1C50203 */ sb $a1, 0x203($t6) -/* 0C2A10 800C1E10 8C4FFFFC */ lw $t7, -4($v0) -/* 0C2A14 800C1E14 00000000 */ nop -/* 0C2A18 800C1E18 01E3C021 */ addu $t8, $t7, $v1 -/* 0C2A1C 800C1E1C A3040211 */ sb $a0, 0x211($t8) -/* 0C2A20 800C1E20 8C59FFFC */ lw $t9, -4($v0) -/* 0C2A24 800C1E24 00000000 */ nop -/* 0C2A28 800C1E28 03236821 */ addu $t5, $t9, $v1 -/* 0C2A2C 800C1E2C A1A50212 */ sb $a1, 0x212($t5) -/* 0C2A30 800C1E30 8C4CFFFC */ lw $t4, -4($v0) -/* 0C2A34 800C1E34 00000000 */ nop -/* 0C2A38 800C1E38 01837021 */ addu $t6, $t4, $v1 -/* 0C2A3C 800C1E3C A1C80213 */ sb $t0, 0x213($t6) -/* 0C2A40 800C1E40 8C4FFFFC */ lw $t7, -4($v0) -/* 0C2A44 800C1E44 00000000 */ nop -/* 0C2A48 800C1E48 01E3C021 */ addu $t8, $t7, $v1 -/* 0C2A4C 800C1E4C A3040301 */ sb $a0, 0x301($t8) -/* 0C2A50 800C1E50 8C59FFFC */ lw $t9, -4($v0) -/* 0C2A54 800C1E54 00000000 */ nop -/* 0C2A58 800C1E58 03236821 */ addu $t5, $t9, $v1 -/* 0C2A5C 800C1E5C A1A60302 */ sb $a2, 0x302($t5) -/* 0C2A60 800C1E60 8C4CFFFC */ lw $t4, -4($v0) -/* 0C2A64 800C1E64 00000000 */ nop -/* 0C2A68 800C1E68 01837021 */ addu $t6, $t4, $v1 -/* 0C2A6C 800C1E6C A1C50303 */ sb $a1, 0x303($t6) -/* 0C2A70 800C1E70 8C4FFFFC */ lw $t7, -4($v0) -/* 0C2A74 800C1E74 00000000 */ nop -/* 0C2A78 800C1E78 01E3C021 */ addu $t8, $t7, $v1 -/* 0C2A7C 800C1E7C A3040311 */ sb $a0, 0x311($t8) -/* 0C2A80 800C1E80 8C59FFFC */ lw $t9, -4($v0) -/* 0C2A84 800C1E84 00000000 */ nop -/* 0C2A88 800C1E88 03236821 */ addu $t5, $t9, $v1 -/* 0C2A8C 800C1E8C A1A50312 */ sb $a1, 0x312($t5) -/* 0C2A90 800C1E90 8C4CFFFC */ lw $t4, -4($v0) -/* 0C2A94 800C1E94 00000000 */ nop -/* 0C2A98 800C1E98 01837021 */ addu $t6, $t4, $v1 -/* 0C2A9C 800C1E9C 144AFFA0 */ bne $v0, $t2, .L800C1D20 -/* 0C2AA0 800C1EA0 A1C80313 */ sb $t0, 0x313($t6) -/* 0C2AA4 800C1EA4 26940001 */ addiu $s4, $s4, 1 -/* 0C2AA8 800C1EA8 168BFF97 */ bne $s4, $t3, .L800C1D08 -/* 0C2AAC 800C1EAC 00142040 */ sll $a0, $s4, 1 -/* 0C2AB0 800C1EB0 8FBF0034 */ lw $ra, 0x34($sp) -/* 0C2AB4 800C1EB4 240F0001 */ li $t7, 1 -/* 0C2AB8 800C1EB8 3C01800E */ lui $at, %hi(D_800E31AC) # $at, 0x800e -/* 0C2ABC 800C1EBC C7B50010 */ lwc1 $f21, 0x10($sp) -/* 0C2AC0 800C1EC0 C7B40014 */ lwc1 $f20, 0x14($sp) -/* 0C2AC4 800C1EC4 8FB0001C */ lw $s0, 0x1c($sp) -/* 0C2AC8 800C1EC8 8FB10020 */ lw $s1, 0x20($sp) -/* 0C2ACC 800C1ECC 8FB20024 */ lw $s2, 0x24($sp) -/* 0C2AD0 800C1ED0 8FB30028 */ lw $s3, 0x28($sp) -/* 0C2AD4 800C1ED4 8FB4002C */ lw $s4, 0x2c($sp) -/* 0C2AD8 800C1ED8 8FB50030 */ lw $s5, 0x30($sp) -/* 0C2ADC 800C1EDC AC2F31AC */ sw $t7, %lo(D_800E31AC)($at) -/* 0C2AE0 800C1EE0 03E00008 */ jr $ra -/* 0C2AE4 800C1EE4 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_800C1EE8 -/* 0C2AE8 800C1EE8 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 0C2AEC 800C1EEC 3C03800E */ lui $v1, %hi(D_800E31B0) # $v1, 0x800e -/* 0C2AF0 800C1EF0 246331B0 */ addiu $v1, %lo(D_800E31B0) # addiu $v1, $v1, 0x31b0 -/* 0C2AF4 800C1EF4 44842000 */ mtc1 $a0, $f4 -/* 0C2AF8 800C1EF8 94620000 */ lhu $v0, ($v1) -/* 0C2AFC 800C1EFC AFBF004C */ sw $ra, 0x4c($sp) -/* 0C2B00 800C1F00 AFBE0048 */ sw $fp, 0x48($sp) -/* 0C2B04 800C1F04 AFB70044 */ sw $s7, 0x44($sp) -/* 0C2B08 800C1F08 AFB60040 */ sw $s6, 0x40($sp) -/* 0C2B0C 800C1F0C AFB5003C */ sw $s5, 0x3c($sp) -/* 0C2B10 800C1F10 AFB40038 */ sw $s4, 0x38($sp) -/* 0C2B14 800C1F14 AFB30034 */ sw $s3, 0x34($sp) -/* 0C2B18 800C1F18 AFB20030 */ sw $s2, 0x30($sp) -/* 0C2B1C 800C1F1C AFB1002C */ sw $s1, 0x2c($sp) -/* 0C2B20 800C1F20 AFB00028 */ sw $s0, 0x28($sp) -/* 0C2B24 800C1F24 E7B70020 */ swc1 $f23, 0x20($sp) -/* 0C2B28 800C1F28 E7B60024 */ swc1 $f22, 0x24($sp) -/* 0C2B2C 800C1F2C E7B50018 */ swc1 $f21, 0x18($sp) -/* 0C2B30 800C1F30 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 0C2B34 800C1F34 184000B4 */ blez $v0, .L800C2208 -/* 0C2B38 800C1F38 46802020 */ cvt.s.w $f0, $f4 -/* 0C2B3C 800C1F3C 0082082A */ slt $at, $a0, $v0 -/* 0C2B40 800C1F40 10200014 */ beqz $at, .L800C1F94 -/* 0C2B44 800C1F44 00009825 */ move $s3, $zero -/* 0C2B48 800C1F48 3C018013 */ lui $at, %hi(D_8012A760) # $at, 0x8013 -/* 0C2B4C 800C1F4C C428A760 */ lwc1 $f8, %lo(D_8012A760)($at) -/* 0C2B50 800C1F50 3C178013 */ lui $s7, %hi(D_8012A758) # $s7, 0x8013 -/* 0C2B54 800C1F54 46080282 */ mul.s $f10, $f0, $f8 -/* 0C2B58 800C1F58 26F7A758 */ addiu $s7, %lo(D_8012A758) # addiu $s7, $s7, -0x58a8 -/* 0C2B5C 800C1F5C C6E60000 */ lwc1 $f6, ($s7) -/* 0C2B60 800C1F60 3C018013 */ lui $at, %hi(D_8012A764) # $at, 0x8013 -/* 0C2B64 800C1F64 460A3400 */ add.s $f16, $f6, $f10 -/* 0C2B68 800C1F68 3C1E8013 */ lui $fp, %hi(D_8012A75C) # $fp, 0x8013 -/* 0C2B6C 800C1F6C E6F00000 */ swc1 $f16, ($s7) -/* 0C2B70 800C1F70 C424A764 */ lwc1 $f4, %lo(D_8012A764)($at) -/* 0C2B74 800C1F74 27DEA75C */ addiu $fp, %lo(D_8012A75C) # addiu $fp, $fp, -0x58a4 -/* 0C2B78 800C1F78 46040202 */ mul.s $f8, $f0, $f4 -/* 0C2B7C 800C1F7C C7D20000 */ lwc1 $f18, ($fp) -/* 0C2B80 800C1F80 00447023 */ subu $t6, $v0, $a0 -/* 0C2B84 800C1F84 A46E0000 */ sh $t6, ($v1) -/* 0C2B88 800C1F88 46089180 */ add.s $f6, $f18, $f8 -/* 0C2B8C 800C1F8C 1000000C */ b .L800C1FC0 -/* 0C2B90 800C1F90 E7C60000 */ swc1 $f6, ($fp) -.L800C1F94: -/* 0C2B94 800C1F94 3C018013 */ lui $at, %hi(D_8012A768) # $at, 0x8013 -/* 0C2B98 800C1F98 C42AA768 */ lwc1 $f10, %lo(D_8012A768)($at) -/* 0C2B9C 800C1F9C 3C178013 */ lui $s7, %hi(D_8012A758) # $s7, 0x8013 -/* 0C2BA0 800C1FA0 26F7A758 */ addiu $s7, %lo(D_8012A758) # addiu $s7, $s7, -0x58a8 -/* 0C2BA4 800C1FA4 3C018013 */ lui $at, %hi(D_8012A76C) # $at, 0x8013 -/* 0C2BA8 800C1FA8 E6EA0000 */ swc1 $f10, ($s7) -/* 0C2BAC 800C1FAC C430A76C */ lwc1 $f16, %lo(D_8012A76C)($at) -/* 0C2BB0 800C1FB0 3C1E8013 */ lui $fp, %hi(D_8012A75C) # $fp, 0x8013 -/* 0C2BB4 800C1FB4 27DEA75C */ addiu $fp, %lo(D_8012A75C) # addiu $fp, $fp, -0x58a4 -/* 0C2BB8 800C1FB8 A4600000 */ sh $zero, ($v1) -/* 0C2BBC 800C1FBC E7D00000 */ swc1 $f16, ($fp) -.L800C1FC0: -/* 0C2BC0 800C1FC0 3C01800F */ lui $at, %hi(D_800E932C) # $at, 0x800f -/* 0C2BC4 800C1FC4 3C11800E */ lui $s1, %hi(D_800E31D0) # $s1, 0x800e -/* 0C2BC8 800C1FC8 3C10800E */ lui $s0, %hi(D_800E31C0) # $s0, 0x800e -/* 0C2BCC 800C1FCC C436932C */ lwc1 $f22, %lo(D_800E932C)($at) -/* 0C2BD0 800C1FD0 261031C0 */ addiu $s0, %lo(D_800E31C0) # addiu $s0, $s0, 0x31c0 -/* 0C2BD4 800C1FD4 263131D0 */ addiu $s1, %lo(D_800E31D0) # addiu $s1, $s1, 0x31d0 -/* 0C2BD8 800C1FD8 00009025 */ move $s2, $zero -/* 0C2BDC 800C1FDC 24160009 */ li $s6, 9 -/* 0C2BE0 800C1FE0 2415000A */ li $s5, 10 -.L800C1FE4: -/* 0C2BE4 800C1FE4 0013A400 */ sll $s4, $s3, 0x10 -/* 0C2BE8 800C1FE8 00147C03 */ sra $t7, $s4, 0x10 -/* 0C2BEC 800C1FEC 000F2400 */ sll $a0, $t7, 0x10 -/* 0C2BF0 800C1FF0 0004C403 */ sra $t8, $a0, 0x10 -/* 0C2BF4 800C1FF4 03002025 */ move $a0, $t8 -/* 0C2BF8 800C1FF8 0C01C1F1 */ jal func_800707C4 -/* 0C2BFC 800C1FFC 01E0A025 */ move $s4, $t7 -/* 0C2C00 800C2000 C6E40000 */ lwc1 $f4, ($s7) -/* 0C2C04 800C2004 00142400 */ sll $a0, $s4, 0x10 -/* 0C2C08 800C2008 0004CC03 */ sra $t9, $a0, 0x10 -/* 0C2C0C 800C200C 46040502 */ mul.s $f20, $f0, $f4 -/* 0C2C10 800C2010 0C01C1FE */ jal func_800707F8 -/* 0C2C14 800C2014 03202025 */ move $a0, $t9 -/* 0C2C18 800C2018 C7D20000 */ lwc1 $f18, ($fp) -/* 0C2C1C 800C201C 00124040 */ sll $t0, $s2, 1 -/* 0C2C20 800C2020 46120082 */ mul.s $f2, $f0, $f18 -/* 0C2C24 800C2024 8E2A0000 */ lw $t2, ($s1) -/* 0C2C28 800C2028 01150019 */ multu $t0, $s5 -/* 0C2C2C 800C202C 000A5880 */ sll $t3, $t2, 2 -/* 0C2C30 800C2030 4616A202 */ mul.s $f8, $f20, $f22 -/* 0C2C34 800C2034 020B6021 */ addu $t4, $s0, $t3 -/* 0C2C38 800C2038 8D8D0000 */ lw $t5, ($t4) -/* 0C2C3C 800C203C 26520001 */ addiu $s2, $s2, 1 -/* 0C2C40 800C2040 4449F800 */ cfc1 $t1, $31 -/* 0C2C44 800C2044 26731000 */ addiu $s3, $s3, 0x1000 -/* 0C2C48 800C2048 35210003 */ ori $at, $t1, 3 -/* 0C2C4C 800C204C 38210002 */ xori $at, $at, 2 -/* 0C2C50 800C2050 44C1F800 */ ctc1 $at, $31 -/* 0C2C54 800C2054 00000000 */ nop -/* 0C2C58 800C2058 460041A4 */ cvt.w.s $f6, $f8 -/* 0C2C5C 800C205C 00001012 */ mflo $v0 -/* 0C2C60 800C2060 44C9F800 */ ctc1 $t1, $31 -/* 0C2C64 800C2064 44043000 */ mfc1 $a0, $f6 -/* 0C2C68 800C2068 46161282 */ mul.s $f10, $f2, $f22 -/* 0C2C6C 800C206C 01A27021 */ addu $t6, $t5, $v0 -/* 0C2C70 800C2070 A5C4000A */ sh $a0, 0xa($t6) -/* 0C2C74 800C2074 8E380000 */ lw $t8, ($s1) -/* 0C2C78 800C2078 444FF800 */ cfc1 $t7, $31 -/* 0C2C7C 800C207C 0018C880 */ sll $t9, $t8, 2 -/* 0C2C80 800C2080 35E10003 */ ori $at, $t7, 3 -/* 0C2C84 800C2084 38210002 */ xori $at, $at, 2 -/* 0C2C88 800C2088 44C1F800 */ ctc1 $at, $31 -/* 0C2C8C 800C208C 02194021 */ addu $t0, $s0, $t9 -/* 0C2C90 800C2090 46005424 */ cvt.w.s $f16, $f10 -/* 0C2C94 800C2094 8D090000 */ lw $t1, ($t0) -/* 0C2C98 800C2098 44038000 */ mfc1 $v1, $f16 -/* 0C2C9C 800C209C 01225021 */ addu $t2, $t1, $v0 -/* 0C2CA0 800C20A0 A543000C */ sh $v1, 0xc($t2) -/* 0C2CA4 800C20A4 8E2C0000 */ lw $t4, ($s1) -/* 0C2CA8 800C20A8 44CFF800 */ ctc1 $t7, $31 -/* 0C2CAC 800C20AC 000C6880 */ sll $t5, $t4, 2 -/* 0C2CB0 800C20B0 020D7021 */ addu $t6, $s0, $t5 -/* 0C2CB4 800C20B4 8DCF0000 */ lw $t7, ($t6) -/* 0C2CB8 800C20B8 00043823 */ negu $a3, $a0 -/* 0C2CBC 800C20BC 01E2C021 */ addu $t8, $t7, $v0 -/* 0C2CC0 800C20C0 A7070172 */ sh $a3, 0x172($t8) -/* 0C2CC4 800C20C4 8E390000 */ lw $t9, ($s1) -/* 0C2CC8 800C20C8 00000000 */ nop -/* 0C2CCC 800C20CC 00194080 */ sll $t0, $t9, 2 -/* 0C2CD0 800C20D0 02084821 */ addu $t1, $s0, $t0 -/* 0C2CD4 800C20D4 8D2A0000 */ lw $t2, ($t1) -/* 0C2CD8 800C20D8 00000000 */ nop -/* 0C2CDC 800C20DC 01425821 */ addu $t3, $t2, $v0 -/* 0C2CE0 800C20E0 A5630174 */ sh $v1, 0x174($t3) -/* 0C2CE4 800C20E4 8E2C0000 */ lw $t4, ($s1) -/* 0C2CE8 800C20E8 00000000 */ nop -/* 0C2CEC 800C20EC 000C6880 */ sll $t5, $t4, 2 -/* 0C2CF0 800C20F0 020D7021 */ addu $t6, $s0, $t5 -/* 0C2CF4 800C20F4 8DCF0000 */ lw $t7, ($t6) -/* 0C2CF8 800C20F8 00000000 */ nop -/* 0C2CFC 800C20FC 01E2C021 */ addu $t8, $t7, $v0 -/* 0C2D00 800C2100 A70400B4 */ sh $a0, 0xb4($t8) -/* 0C2D04 800C2104 8E390000 */ lw $t9, ($s1) -/* 0C2D08 800C2108 00000000 */ nop -/* 0C2D0C 800C210C 00194080 */ sll $t0, $t9, 2 -/* 0C2D10 800C2110 02084821 */ addu $t1, $s0, $t0 -/* 0C2D14 800C2114 8D2A0000 */ lw $t2, ($t1) -/* 0C2D18 800C2118 00000000 */ nop -/* 0C2D1C 800C211C 01425821 */ addu $t3, $t2, $v0 -/* 0C2D20 800C2120 A56300B6 */ sh $v1, 0xb6($t3) -/* 0C2D24 800C2124 8E2C0000 */ lw $t4, ($s1) -/* 0C2D28 800C2128 00000000 */ nop -/* 0C2D2C 800C212C 000C6880 */ sll $t5, $t4, 2 -/* 0C2D30 800C2130 020D7021 */ addu $t6, $s0, $t5 -/* 0C2D34 800C2134 8DCF0000 */ lw $t7, ($t6) -/* 0C2D38 800C2138 444CF800 */ cfc1 $t4, $31 -/* 0C2D3C 800C213C 01E2C021 */ addu $t8, $t7, $v0 -/* 0C2D40 800C2140 A707021C */ sh $a3, 0x21c($t8) -/* 0C2D44 800C2144 8E390000 */ lw $t9, ($s1) -/* 0C2D48 800C2148 35810003 */ ori $at, $t4, 3 -/* 0C2D4C 800C214C 00194080 */ sll $t0, $t9, 2 -/* 0C2D50 800C2150 02084821 */ addu $t1, $s0, $t0 -/* 0C2D54 800C2154 8D2A0000 */ lw $t2, ($t1) -/* 0C2D58 800C2158 38210002 */ xori $at, $at, 2 -/* 0C2D5C 800C215C 44C1F800 */ ctc1 $at, $31 -/* 0C2D60 800C2160 01425821 */ addu $t3, $t2, $v0 -/* 0C2D64 800C2164 A563021E */ sh $v1, 0x21e($t3) -/* 0C2D68 800C2168 8E2D0000 */ lw $t5, ($s1) -/* 0C2D6C 800C216C 4600A124 */ cvt.w.s $f4, $f20 -/* 0C2D70 800C2170 000D7080 */ sll $t6, $t5, 2 -/* 0C2D74 800C2174 44CCF800 */ ctc1 $t4, $31 -/* 0C2D78 800C2178 020E7821 */ addu $t7, $s0, $t6 -/* 0C2D7C 800C217C 8DF80000 */ lw $t8, ($t7) -/* 0C2D80 800C2180 44052000 */ mfc1 $a1, $f4 -/* 0C2D84 800C2184 4448F800 */ cfc1 $t0, $31 -/* 0C2D88 800C2188 0302C821 */ addu $t9, $t8, $v0 -/* 0C2D8C 800C218C A72500BE */ sh $a1, 0xbe($t9) -/* 0C2D90 800C2190 35010003 */ ori $at, $t0, 3 -/* 0C2D94 800C2194 8E290000 */ lw $t1, ($s1) -/* 0C2D98 800C2198 38210002 */ xori $at, $at, 2 -/* 0C2D9C 800C219C 44C1F800 */ ctc1 $at, $31 -/* 0C2DA0 800C21A0 00095080 */ sll $t2, $t1, 2 -/* 0C2DA4 800C21A4 460014A4 */ cvt.w.s $f18, $f2 -/* 0C2DA8 800C21A8 020A5821 */ addu $t3, $s0, $t2 -/* 0C2DAC 800C21AC 8D6C0000 */ lw $t4, ($t3) -/* 0C2DB0 800C21B0 44069000 */ mfc1 $a2, $f18 -/* 0C2DB4 800C21B4 01826821 */ addu $t5, $t4, $v0 -/* 0C2DB8 800C21B8 A5A600C0 */ sh $a2, 0xc0($t5) -/* 0C2DBC 800C21BC 8E390000 */ lw $t9, ($s1) -/* 0C2DC0 800C21C0 44C8F800 */ ctc1 $t0, $31 -/* 0C2DC4 800C21C4 00194080 */ sll $t0, $t9, 2 -/* 0C2DC8 800C21C8 02084821 */ addu $t1, $s0, $t0 -/* 0C2DCC 800C21CC 8D2A0000 */ lw $t2, ($t1) -/* 0C2DD0 800C21D0 0005C023 */ negu $t8, $a1 -/* 0C2DD4 800C21D4 01425821 */ addu $t3, $t2, $v0 -/* 0C2DD8 800C21D8 A5780226 */ sh $t8, 0x226($t3) -/* 0C2DDC 800C21DC 8E2C0000 */ lw $t4, ($s1) -/* 0C2DE0 800C21E0 00000000 */ nop -/* 0C2DE4 800C21E4 000C6880 */ sll $t5, $t4, 2 -/* 0C2DE8 800C21E8 020D7021 */ addu $t6, $s0, $t5 -/* 0C2DEC 800C21EC 8DCF0000 */ lw $t7, ($t6) -/* 0C2DF0 800C21F0 00000000 */ nop -/* 0C2DF4 800C21F4 01E2C821 */ addu $t9, $t7, $v0 -/* 0C2DF8 800C21F8 1656FF7A */ bne $s2, $s6, .L800C1FE4 -/* 0C2DFC 800C21FC A7260228 */ sh $a2, 0x228($t9) -/* 0C2E00 800C2200 1000000D */ b .L800C2238 -/* 0C2E04 800C2204 8FBF004C */ lw $ra, 0x4c($sp) -.L800C2208: -/* 0C2E08 800C2208 3C03800E */ lui $v1, %hi(D_800E31B4) # $v1, 0x800e -/* 0C2E0C 800C220C 246331B4 */ addiu $v1, %lo(D_800E31B4) # addiu $v1, $v1, 0x31b4 -/* 0C2E10 800C2210 94620000 */ lhu $v0, ($v1) -/* 0C2E14 800C2214 3401FFFF */ li $at, 65535 -/* 0C2E18 800C2218 10410006 */ beq $v0, $at, .L800C2234 -/* 0C2E1C 800C221C 0082082A */ slt $at, $a0, $v0 -/* 0C2E20 800C2220 10200003 */ beqz $at, .L800C2230 -/* 0C2E24 800C2224 00444023 */ subu $t0, $v0, $a0 -/* 0C2E28 800C2228 10000002 */ b .L800C2234 -/* 0C2E2C 800C222C A4680000 */ sh $t0, ($v1) -.L800C2230: -/* 0C2E30 800C2230 A4600000 */ sh $zero, ($v1) -.L800C2234: -/* 0C2E34 800C2234 8FBF004C */ lw $ra, 0x4c($sp) -.L800C2238: -/* 0C2E38 800C2238 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 0C2E3C 800C223C C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 0C2E40 800C2240 C7B70020 */ lwc1 $f23, 0x20($sp) -/* 0C2E44 800C2244 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 0C2E48 800C2248 8FB00028 */ lw $s0, 0x28($sp) -/* 0C2E4C 800C224C 8FB1002C */ lw $s1, 0x2c($sp) -/* 0C2E50 800C2250 8FB20030 */ lw $s2, 0x30($sp) -/* 0C2E54 800C2254 8FB30034 */ lw $s3, 0x34($sp) -/* 0C2E58 800C2258 8FB40038 */ lw $s4, 0x38($sp) -/* 0C2E5C 800C225C 8FB5003C */ lw $s5, 0x3c($sp) -/* 0C2E60 800C2260 8FB60040 */ lw $s6, 0x40($sp) -/* 0C2E64 800C2264 8FB70044 */ lw $s7, 0x44($sp) -/* 0C2E68 800C2268 8FBE0048 */ lw $fp, 0x48($sp) -/* 0C2E6C 800C226C 03E00008 */ jr $ra -/* 0C2E70 800C2270 27BD0050 */ addiu $sp, $sp, 0x50 - -glabel func_800C2274 -/* 0C2E74 800C2274 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C2E78 800C2278 AFBF0014 */ sw $ra, 0x14($sp) -/* 0C2E7C 800C227C AFA40018 */ sw $a0, 0x18($sp) -/* 0C2E80 800C2280 AFA5001C */ sw $a1, 0x1c($sp) -/* 0C2E84 800C2284 0C01ECF4 */ jal func_8007B3D0 -/* 0C2E88 800C2288 AFA60020 */ sw $a2, 0x20($sp) -/* 0C2E8C 800C228C 3C03800E */ lui $v1, %hi(D_800E31D0) # $v1, 0x800e -/* 0C2E90 800C2290 8C6331D0 */ lw $v1, %lo(D_800E31D0)($v1) -/* 0C2E94 800C2294 8FAE0018 */ lw $t6, 0x18($sp) -/* 0C2E98 800C2298 3C07800E */ lui $a3, 0x800e -/* 0C2E9C 800C229C 00037880 */ sll $t7, $v1, 2 -/* 0C2EA0 800C22A0 8DC20000 */ lw $v0, ($t6) -/* 0C2EA4 800C22A4 00EF3821 */ addu $a3, $a3, $t7 -/* 0C2EA8 800C22A8 3C08800E */ lui $t0, 0x800e -/* 0C2EAC 800C22AC 8CE731C0 */ lw $a3, 0x31c0($a3) -/* 0C2EB0 800C22B0 010F4021 */ addu $t0, $t0, $t7 -/* 0C2EB4 800C22B4 8D0831C8 */ lw $t0, 0x31c8($t0) -/* 0C2EB8 800C22B8 3C19800E */ lui $t9, %hi(D_800E3648) # $t9, 0x800e -/* 0C2EBC 800C22BC 00402025 */ move $a0, $v0 -/* 0C2EC0 800C22C0 27393648 */ addiu $t9, %lo(D_800E3648) # addiu $t9, $t9, 0x3648 -/* 0C2EC4 800C22C4 3C180600 */ lui $t8, 0x600 -/* 0C2EC8 800C22C8 AC980000 */ sw $t8, ($a0) -/* 0C2ECC 800C22CC AC990004 */ sw $t9, 4($a0) -/* 0C2ED0 800C22D0 3C068000 */ lui $a2, 0x8000 -/* 0C2ED4 800C22D4 00E62021 */ addu $a0, $a3, $a2 -/* 0C2ED8 800C22D8 308B0006 */ andi $t3, $a0, 6 -/* 0C2EDC 800C22DC 356C0088 */ ori $t4, $t3, 0x88 -/* 0C2EE0 800C22E0 318D00FF */ andi $t5, $t4, 0xff -/* 0C2EE4 800C22E4 24430008 */ addiu $v1, $v0, 8 -/* 0C2EE8 800C22E8 3C090400 */ lui $t1, 0x400 -/* 0C2EEC 800C22EC AC640004 */ sw $a0, 4($v1) -/* 0C2EF0 800C22F0 000D7400 */ sll $t6, $t5, 0x10 -/* 0C2EF4 800C22F4 24E700B4 */ addiu $a3, $a3, 0xb4 -/* 0C2EF8 800C22F8 00E62021 */ addu $a0, $a3, $a2 -/* 0C2EFC 800C22FC 01C97825 */ or $t7, $t6, $t1 -/* 0C2F00 800C2300 308B0006 */ andi $t3, $a0, 6 -/* 0C2F04 800C2304 35F8014C */ ori $t8, $t7, 0x14c -/* 0C2F08 800C2308 24650008 */ addiu $a1, $v1, 8 -/* 0C2F0C 800C230C 356C0088 */ ori $t4, $t3, 0x88 -/* 0C2F10 800C2310 3C0A05F0 */ lui $t2, (0x05F00100 >> 16) # lui $t2, 0x5f0 -/* 0C2F14 800C2314 AC780000 */ sw $t8, ($v1) -/* 0C2F18 800C2318 354A0100 */ ori $t2, (0x05F00100 & 0xFFFF) # ori $t2, $t2, 0x100 -/* 0C2F1C 800C231C 318D00FF */ andi $t5, $t4, 0xff -/* 0C2F20 800C2320 0106C821 */ addu $t9, $t0, $a2 -/* 0C2F24 800C2324 000D7400 */ sll $t6, $t5, 0x10 -/* 0C2F28 800C2328 ACB90004 */ sw $t9, 4($a1) -/* 0C2F2C 800C232C ACAA0000 */ sw $t2, ($a1) -/* 0C2F30 800C2330 24A20008 */ addiu $v0, $a1, 8 -/* 0C2F34 800C2334 AC440004 */ sw $a0, 4($v0) -/* 0C2F38 800C2338 01C97825 */ or $t7, $t6, $t1 -/* 0C2F3C 800C233C 24E700B4 */ addiu $a3, $a3, 0xb4 -/* 0C2F40 800C2340 00E62021 */ addu $a0, $a3, $a2 -/* 0C2F44 800C2344 35F8014C */ ori $t8, $t7, 0x14c -/* 0C2F48 800C2348 24450008 */ addiu $a1, $v0, 8 -/* 0C2F4C 800C234C AC580000 */ sw $t8, ($v0) -/* 0C2F50 800C2350 308B0006 */ andi $t3, $a0, 6 -/* 0C2F54 800C2354 25080100 */ addiu $t0, $t0, 0x100 -/* 0C2F58 800C2358 0106C821 */ addu $t9, $t0, $a2 -/* 0C2F5C 800C235C 356C0088 */ ori $t4, $t3, 0x88 -/* 0C2F60 800C2360 318D00FF */ andi $t5, $t4, 0xff -/* 0C2F64 800C2364 ACB90004 */ sw $t9, 4($a1) -/* 0C2F68 800C2368 ACAA0000 */ sw $t2, ($a1) -/* 0C2F6C 800C236C 24A30008 */ addiu $v1, $a1, 8 -/* 0C2F70 800C2370 AC640004 */ sw $a0, 4($v1) -/* 0C2F74 800C2374 000D7400 */ sll $t6, $t5, 0x10 -/* 0C2F78 800C2378 24E700B4 */ addiu $a3, $a3, 0xb4 -/* 0C2F7C 800C237C 00E62021 */ addu $a0, $a3, $a2 -/* 0C2F80 800C2380 01C97825 */ or $t7, $t6, $t1 -/* 0C2F84 800C2384 35F8014C */ ori $t8, $t7, 0x14c -/* 0C2F88 800C2388 308B0006 */ andi $t3, $a0, 6 -/* 0C2F8C 800C238C 356C0088 */ ori $t4, $t3, 0x88 -/* 0C2F90 800C2390 AC780000 */ sw $t8, ($v1) -/* 0C2F94 800C2394 24620008 */ addiu $v0, $v1, 8 -/* 0C2F98 800C2398 25080100 */ addiu $t0, $t0, 0x100 -/* 0C2F9C 800C239C 0106C821 */ addu $t9, $t0, $a2 -/* 0C2FA0 800C23A0 318D00FF */ andi $t5, $t4, 0xff -/* 0C2FA4 800C23A4 000D7400 */ sll $t6, $t5, 0x10 -/* 0C2FA8 800C23A8 AC590004 */ sw $t9, 4($v0) -/* 0C2FAC 800C23AC 24430008 */ addiu $v1, $v0, 8 -/* 0C2FB0 800C23B0 01C97825 */ or $t7, $t6, $t1 -/* 0C2FB4 800C23B4 AC4A0000 */ sw $t2, ($v0) -/* 0C2FB8 800C23B8 35F8014C */ ori $t8, $t7, 0x14c -/* 0C2FBC 800C23BC AC780000 */ sw $t8, ($v1) -/* 0C2FC0 800C23C0 AC640004 */ sw $a0, 4($v1) -/* 0C2FC4 800C23C4 24650008 */ addiu $a1, $v1, 8 -/* 0C2FC8 800C23C8 25080100 */ addiu $t0, $t0, 0x100 -/* 0C2FCC 800C23CC 0106C821 */ addu $t9, $t0, $a2 -/* 0C2FD0 800C23D0 ACB90004 */ sw $t9, 4($a1) -/* 0C2FD4 800C23D4 ACAA0000 */ sw $t2, ($a1) -/* 0C2FD8 800C23D8 8FA40018 */ lw $a0, 0x18($sp) -/* 0C2FDC 800C23DC 24A20008 */ addiu $v0, $a1, 8 -/* 0C2FE0 800C23E0 0C01ECF4 */ jal func_8007B3D0 -/* 0C2FE4 800C23E4 AC820000 */ sw $v0, ($a0) -/* 0C2FE8 800C23E8 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C2FEC 800C23EC 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0C2FF0 800C23F0 03E00008 */ jr $ra -/* 0C2FF4 800C23F4 00000000 */ nop - -glabel func_800C23F8 -/* 0C2FF8 800C23F8 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0C2FFC 800C23FC AFBF001C */ sw $ra, 0x1c($sp) -/* 0C3000 800C2400 AFB00018 */ sw $s0, 0x18($sp) -/* 0C3004 800C2404 AFA40020 */ sw $a0, 0x20($sp) -/* 0C3008 800C2408 AFA50024 */ sw $a1, 0x24($sp) -/* 0C300C 800C240C 0C01ECF4 */ jal func_8007B3D0 -/* 0C3010 800C2410 AFA60028 */ sw $a2, 0x28($sp) -/* 0C3014 800C2414 3C03800E */ lui $v1, %hi(D_800E31D0) # $v1, 0x800e -/* 0C3018 800C2418 8FAE0020 */ lw $t6, 0x20($sp) -/* 0C301C 800C241C 8C6331D0 */ lw $v1, %lo(D_800E31D0)($v1) -/* 0C3020 800C2420 8DC20000 */ lw $v0, ($t6) -/* 0C3024 800C2424 00037880 */ sll $t7, $v1, 2 -/* 0C3028 800C2428 3C06800E */ lui $a2, 0x800e -/* 0C302C 800C242C 3C07800E */ lui $a3, 0x800e -/* 0C3030 800C2430 00CF3021 */ addu $a2, $a2, $t7 -/* 0C3034 800C2434 00EF3821 */ addu $a3, $a3, $t7 -/* 0C3038 800C2438 00402025 */ move $a0, $v0 -/* 0C303C 800C243C 8CC631C0 */ lw $a2, 0x31c0($a2) -/* 0C3040 800C2440 8CE731C8 */ lw $a3, 0x31c8($a3) -/* 0C3044 800C2444 3C19800E */ lui $t9, %hi(D_800E3648) # $t9, 0x800e -/* 0C3048 800C2448 27393648 */ addiu $t9, %lo(D_800E3648) # addiu $t9, $t9, 0x3648 -/* 0C304C 800C244C 3C180600 */ lui $t8, 0x600 -/* 0C3050 800C2450 3C1005D0 */ lui $s0, (0x05D000E0 >> 16) # lui $s0, 0x5d0 -/* 0C3054 800C2454 3C0D05B0 */ lui $t5, (0x05B000C0 >> 16) # lui $t5, 0x5b0 -/* 0C3058 800C2458 AC980000 */ sw $t8, ($a0) -/* 0C305C 800C245C AC990004 */ sw $t9, 4($a0) -/* 0C3060 800C2460 35AD00C0 */ ori $t5, (0x05B000C0 & 0xFFFF) # ori $t5, $t5, 0xc0 -/* 0C3064 800C2464 361000E0 */ ori $s0, (0x05D000E0 & 0xFFFF) # ori $s0, $s0, 0xe0 -/* 0C3068 800C2468 00004025 */ move $t0, $zero -/* 0C306C 800C246C 241F0006 */ li $ra, 6 -/* 0C3070 800C2470 240C0004 */ li $t4, 4 -/* 0C3074 800C2474 240B0001 */ li $t3, 1 -/* 0C3078 800C2478 3C0A0400 */ lui $t2, 0x400 -/* 0C307C 800C247C 3C098000 */ lui $t1, 0x8000 -/* 0C3080 800C2480 24420008 */ addiu $v0, $v0, 8 -.L800C2484: -/* 0C3084 800C2484 110B0003 */ beq $t0, $t3, .L800C2494 -/* 0C3088 800C2488 00401825 */ move $v1, $v0 -/* 0C308C 800C248C 150C0013 */ bne $t0, $t4, .L800C24DC -/* 0C3090 800C2490 00C92021 */ addu $a0, $a2, $t1 -.L800C2494: -/* 0C3094 800C2494 00C92021 */ addu $a0, $a2, $t1 -/* 0C3098 800C2498 308E0006 */ andi $t6, $a0, 6 -/* 0C309C 800C249C 35CF0068 */ ori $t7, $t6, 0x68 -/* 0C30A0 800C24A0 31F800FF */ andi $t8, $t7, 0xff -/* 0C30A4 800C24A4 0018CC00 */ sll $t9, $t8, 0x10 -/* 0C30A8 800C24A8 032A7025 */ or $t6, $t9, $t2 -/* 0C30AC 800C24AC 24420008 */ addiu $v0, $v0, 8 -/* 0C30B0 800C24B0 35CF0104 */ ori $t7, $t6, 0x104 -/* 0C30B4 800C24B4 00402825 */ move $a1, $v0 -/* 0C30B8 800C24B8 AC6F0000 */ sw $t7, ($v1) -/* 0C30BC 800C24BC AC640004 */ sw $a0, 4($v1) -/* 0C30C0 800C24C0 00E9C021 */ addu $t8, $a3, $t1 -/* 0C30C4 800C24C4 ACB80004 */ sw $t8, 4($a1) -/* 0C30C8 800C24C8 ACAD0000 */ sw $t5, ($a1) -/* 0C30CC 800C24CC 24420008 */ addiu $v0, $v0, 8 -/* 0C30D0 800C24D0 24C6008C */ addiu $a2, $a2, 0x8c -/* 0C30D4 800C24D4 10000012 */ b .L800C2520 -/* 0C30D8 800C24D8 24E700C0 */ addiu $a3, $a3, 0xc0 -.L800C24DC: -/* 0C30DC 800C24DC 30990006 */ andi $t9, $a0, 6 -/* 0C30E0 800C24E0 372E0078 */ ori $t6, $t9, 0x78 -/* 0C30E4 800C24E4 31CF00FF */ andi $t7, $t6, 0xff -/* 0C30E8 800C24E8 000FC400 */ sll $t8, $t7, 0x10 -/* 0C30EC 800C24EC 00401825 */ move $v1, $v0 -/* 0C30F0 800C24F0 24420008 */ addiu $v0, $v0, 8 -/* 0C30F4 800C24F4 030AC825 */ or $t9, $t8, $t2 -/* 0C30F8 800C24F8 372E0128 */ ori $t6, $t9, 0x128 -/* 0C30FC 800C24FC 00402825 */ move $a1, $v0 -/* 0C3100 800C2500 AC6E0000 */ sw $t6, ($v1) -/* 0C3104 800C2504 AC640004 */ sw $a0, 4($v1) -/* 0C3108 800C2508 00E97821 */ addu $t7, $a3, $t1 -/* 0C310C 800C250C ACAF0004 */ sw $t7, 4($a1) -/* 0C3110 800C2510 ACB00000 */ sw $s0, ($a1) -/* 0C3114 800C2514 24420008 */ addiu $v0, $v0, 8 -/* 0C3118 800C2518 24C600A0 */ addiu $a2, $a2, 0xa0 -/* 0C311C 800C251C 24E700E0 */ addiu $a3, $a3, 0xe0 -.L800C2520: -/* 0C3120 800C2520 25080001 */ addiu $t0, $t0, 1 -/* 0C3124 800C2524 151FFFD7 */ bne $t0, $ra, .L800C2484 -/* 0C3128 800C2528 00000000 */ nop -/* 0C312C 800C252C 8FA40020 */ lw $a0, 0x20($sp) -/* 0C3130 800C2530 0C01ECF4 */ jal func_8007B3D0 -/* 0C3134 800C2534 AC820000 */ sw $v0, ($a0) -/* 0C3138 800C2538 8FBF001C */ lw $ra, 0x1c($sp) -/* 0C313C 800C253C 8FB00018 */ lw $s0, 0x18($sp) -/* 0C3140 800C2540 03E00008 */ jr $ra -/* 0C3144 800C2544 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_800C2548 -/* 0C3148 800C2548 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C314C 800C254C AFBF0014 */ sw $ra, 0x14($sp) -/* 0C3150 800C2550 AFA5001C */ sw $a1, 0x1c($sp) -/* 0C3154 800C2554 AFA60020 */ sw $a2, 0x20($sp) -/* 0C3158 800C2558 0C01ECF4 */ jal func_8007B3D0 -/* 0C315C 800C255C AFA40018 */ sw $a0, 0x18($sp) -/* 0C3160 800C2560 8FA40018 */ lw $a0, 0x18($sp) -/* 0C3164 800C2564 3C18800E */ lui $t8, %hi(D_800E3648) # $t8, 0x800e -/* 0C3168 800C2568 8C820000 */ lw $v0, ($a0) -/* 0C316C 800C256C 27183648 */ addiu $t8, %lo(D_800E3648) # addiu $t8, $t8, 0x3648 -/* 0C3170 800C2570 244E0008 */ addiu $t6, $v0, 8 -/* 0C3174 800C2574 AC8E0000 */ sw $t6, ($a0) -/* 0C3178 800C2578 3C0F0600 */ lui $t7, 0x600 -/* 0C317C 800C257C AC4F0000 */ sw $t7, ($v0) -/* 0C3180 800C2580 AC580004 */ sw $t8, 4($v0) -/* 0C3184 800C2584 8C820000 */ lw $v0, ($a0) -/* 0C3188 800C2588 3C07800E */ lui $a3, %hi(D_800E31D0) # $a3, 0x800e -/* 0C318C 800C258C 24590008 */ addiu $t9, $v0, 8 -/* 0C3190 800C2590 24E731D0 */ addiu $a3, %lo(D_800E31D0) # addiu $a3, $a3, 0x31d0 -/* 0C3194 800C2594 AC990000 */ sw $t9, ($a0) -/* 0C3198 800C2598 8CEA0000 */ lw $t2, ($a3) -/* 0C319C 800C259C 3C09800E */ lui $t1, %hi(D_800E31C0) # $t1, 0x800e -/* 0C31A0 800C25A0 252931C0 */ addiu $t1, %lo(D_800E31C0) # addiu $t1, $t1, 0x31c0 -/* 0C31A4 800C25A4 000A5880 */ sll $t3, $t2, 2 -/* 0C31A8 800C25A8 012B6021 */ addu $t4, $t1, $t3 -/* 0C31AC 800C25AC 8D8D0000 */ lw $t5, ($t4) -/* 0C31B0 800C25B0 3C088000 */ lui $t0, 0x8000 -/* 0C31B4 800C25B4 01A87021 */ addu $t6, $t5, $t0 -/* 0C31B8 800C25B8 31CF0006 */ andi $t7, $t6, 6 -/* 0C31BC 800C25BC 35F80048 */ ori $t8, $t7, 0x48 -/* 0C31C0 800C25C0 331900FF */ andi $t9, $t8, 0xff -/* 0C31C4 800C25C4 00195400 */ sll $t2, $t9, 0x10 -/* 0C31C8 800C25C8 3C010400 */ lui $at, 0x400 -/* 0C31CC 800C25CC 01415825 */ or $t3, $t2, $at -/* 0C31D0 800C25D0 356C00BC */ ori $t4, $t3, 0xbc -/* 0C31D4 800C25D4 AC4C0000 */ sw $t4, ($v0) -/* 0C31D8 800C25D8 8CED0000 */ lw $t5, ($a3) -/* 0C31DC 800C25DC 3C0B0550 */ lui $t3, (0x05500060 >> 16) # lui $t3, 0x550 -/* 0C31E0 800C25E0 000D7080 */ sll $t6, $t5, 2 -/* 0C31E4 800C25E4 012E7821 */ addu $t7, $t1, $t6 -/* 0C31E8 800C25E8 8DF80000 */ lw $t8, ($t7) -/* 0C31EC 800C25EC 356B0060 */ ori $t3, (0x05500060 & 0xFFFF) # ori $t3, $t3, 0x60 -/* 0C31F0 800C25F0 0308C821 */ addu $t9, $t8, $t0 -/* 0C31F4 800C25F4 AC590004 */ sw $t9, 4($v0) -/* 0C31F8 800C25F8 8C820000 */ lw $v0, ($a0) -/* 0C31FC 800C25FC 3C0E800E */ lui $t6, 0x800e -/* 0C3200 800C2600 244A0008 */ addiu $t2, $v0, 8 -/* 0C3204 800C2604 AC8A0000 */ sw $t2, ($a0) -/* 0C3208 800C2608 AC4B0000 */ sw $t3, ($v0) -/* 0C320C 800C260C 8CEC0000 */ lw $t4, ($a3) -/* 0C3210 800C2610 00000000 */ nop -/* 0C3214 800C2614 000C6880 */ sll $t5, $t4, 2 -/* 0C3218 800C2618 01CD7021 */ addu $t6, $t6, $t5 -/* 0C321C 800C261C 8DCE31C8 */ lw $t6, 0x31c8($t6) -/* 0C3220 800C2620 00000000 */ nop -/* 0C3224 800C2624 01C87821 */ addu $t7, $t6, $t0 -/* 0C3228 800C2628 0C01ECF4 */ jal func_8007B3D0 -/* 0C322C 800C262C AC4F0004 */ sw $t7, 4($v0) -/* 0C3230 800C2630 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C3234 800C2634 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0C3238 800C2638 03E00008 */ jr $ra -/* 0C323C 800C263C 00000000 */ nop - -glabel func_800C2640 -/* 0C3240 800C2640 AFA40000 */ sw $a0, ($sp) -/* 0C3244 800C2644 3C048013 */ lui $a0, %hi(D_8012A73C) # $a0, 0x8013 -/* 0C3248 800C2648 3C038013 */ lui $v1, %hi(D_8012A738) # $v1, 0x8013 -/* 0C324C 800C264C 3C058013 */ lui $a1, %hi(D_8012A740) # $a1, 0x8013 -/* 0C3250 800C2650 24A5A740 */ addiu $a1, %lo(D_8012A740) # addiu $a1, $a1, -0x58c0 -/* 0C3254 800C2654 2463A738 */ addiu $v1, %lo(D_8012A738) # addiu $v1, $v1, -0x58c8 -/* 0C3258 800C2658 2484A73C */ addiu $a0, %lo(D_8012A73C) # addiu $a0, $a0, -0x58c4 -/* 0C325C 800C265C 8C6E0000 */ lw $t6, ($v1) -/* 0C3260 800C2660 8C980000 */ lw $t8, ($a0) -/* 0C3264 800C2664 8CA80000 */ lw $t0, ($a1) -/* 0C3268 800C2668 000E7C00 */ sll $t7, $t6, 0x10 -/* 0C326C 800C266C 0018CC00 */ sll $t9, $t8, 0x10 -/* 0C3270 800C2670 00084C00 */ sll $t1, $t0, 0x10 -/* 0C3274 800C2674 AC6F0000 */ sw $t7, ($v1) -/* 0C3278 800C2678 AC990000 */ sw $t9, ($a0) -/* 0C327C 800C267C ACA90000 */ sw $t1, ($a1) -/* 0C3280 800C2680 240A00FF */ li $t2, 255 -/* 0C3284 800C2684 3C018013 */ lui $at, %hi(D_8012A737) # $at, 0x8013 -/* 0C3288 800C2688 A02AA737 */ sb $t2, %lo(D_8012A737)($at) -/* 0C328C 800C268C 3C01437F */ li $at, 0x437F0000 # 255.000000 -/* 0C3290 800C2690 44812000 */ mtc1 $at, $f4 -/* 0C3294 800C2694 3C018013 */ lui $at, %hi(D_8012A750) # $at, 0x8013 -/* 0C3298 800C2698 44803000 */ mtc1 $zero, $f6 -/* 0C329C 800C269C E424A750 */ swc1 $f4, %lo(D_8012A750)($at) -/* 0C32A0 800C26A0 3C018013 */ lui $at, %hi(D_8012A754) # $at, 0x8013 -/* 0C32A4 800C26A4 3C0B8013 */ lui $t3, %hi(D_8012A734) # $t3, 0x8013 -/* 0C32A8 800C26A8 916BA734 */ lbu $t3, %lo(D_8012A734)($t3) -/* 0C32AC 800C26AC E426A754 */ swc1 $f6, %lo(D_8012A754)($at) -/* 0C32B0 800C26B0 8C6D0000 */ lw $t5, ($v1) -/* 0C32B4 800C26B4 3C02800E */ lui $v0, %hi(D_800E31B0) # $v0, 0x800e -/* 0C32B8 800C26B8 944231B0 */ lhu $v0, %lo(D_800E31B0)($v0) -/* 0C32BC 800C26BC 000B6400 */ sll $t4, $t3, 0x10 -/* 0C32C0 800C26C0 018D7023 */ subu $t6, $t4, $t5 -/* 0C32C4 800C26C4 01C2001A */ div $zero, $t6, $v0 -/* 0C32C8 800C26C8 3C188013 */ lui $t8, %hi(D_8012A735) # $t8, 0x8013 -/* 0C32CC 800C26CC 14400002 */ bnez $v0, .L800C26D8 -/* 0C32D0 800C26D0 00000000 */ nop -/* 0C32D4 800C26D4 0007000D */ break 7 -.L800C26D8: -/* 0C32D8 800C26D8 2401FFFF */ li $at, -1 -/* 0C32DC 800C26DC 14410004 */ bne $v0, $at, .L800C26F0 -/* 0C32E0 800C26E0 3C018000 */ lui $at, 0x8000 -/* 0C32E4 800C26E4 15C10002 */ bne $t6, $at, .L800C26F0 -/* 0C32E8 800C26E8 00000000 */ nop -/* 0C32EC 800C26EC 0006000D */ break 6 -.L800C26F0: -/* 0C32F0 800C26F0 3C018013 */ lui $at, %hi(D_8012A744) # $at, 0x8013 -/* 0C32F4 800C26F4 9318A735 */ lbu $t8, %lo(D_8012A735)($t8) -/* 0C32F8 800C26F8 3C0B8013 */ lui $t3, %hi(D_8012A736) # $t3, 0x8013 -/* 0C32FC 800C26FC 0018CC00 */ sll $t9, $t8, 0x10 -/* 0C3300 800C2700 916BA736 */ lbu $t3, %lo(D_8012A736)($t3) -/* 0C3304 800C2704 24180001 */ li $t8, 1 -/* 0C3308 800C2708 000B6400 */ sll $t4, $t3, 0x10 -/* 0C330C 800C270C 00007812 */ mflo $t7 -/* 0C3310 800C2710 AC2FA744 */ sw $t7, %lo(D_8012A744)($at) -/* 0C3314 800C2714 8C880000 */ lw $t0, ($a0) -/* 0C3318 800C2718 00000000 */ nop -/* 0C331C 800C271C 03284823 */ subu $t1, $t9, $t0 -/* 0C3320 800C2720 0122001A */ div $zero, $t1, $v0 -/* 0C3324 800C2724 14400002 */ bnez $v0, .L800C2730 -/* 0C3328 800C2728 00000000 */ nop -/* 0C332C 800C272C 0007000D */ break 7 -.L800C2730: -/* 0C3330 800C2730 2401FFFF */ li $at, -1 -/* 0C3334 800C2734 14410004 */ bne $v0, $at, .L800C2748 -/* 0C3338 800C2738 3C018000 */ lui $at, 0x8000 -/* 0C333C 800C273C 15210002 */ bne $t1, $at, .L800C2748 -/* 0C3340 800C2740 00000000 */ nop -/* 0C3344 800C2744 0006000D */ break 6 -.L800C2748: -/* 0C3348 800C2748 3C018013 */ lui $at, %hi(D_8012A748) # $at, 0x8013 -/* 0C334C 800C274C 00005012 */ mflo $t2 -/* 0C3350 800C2750 AC2AA748 */ sw $t2, %lo(D_8012A748)($at) -/* 0C3354 800C2754 8CAD0000 */ lw $t5, ($a1) -/* 0C3358 800C2758 00000000 */ nop -/* 0C335C 800C275C 018D7023 */ subu $t6, $t4, $t5 -/* 0C3360 800C2760 01C2001A */ div $zero, $t6, $v0 -/* 0C3364 800C2764 14400002 */ bnez $v0, .L800C2770 -/* 0C3368 800C2768 00000000 */ nop -/* 0C336C 800C276C 0007000D */ break 7 -.L800C2770: -/* 0C3370 800C2770 2401FFFF */ li $at, -1 -/* 0C3374 800C2774 14410004 */ bne $v0, $at, .L800C2788 -/* 0C3378 800C2778 3C018000 */ lui $at, 0x8000 -/* 0C337C 800C277C 15C10002 */ bne $t6, $at, .L800C2788 -/* 0C3380 800C2780 00000000 */ nop -/* 0C3384 800C2784 0006000D */ break 6 -.L800C2788: -/* 0C3388 800C2788 3C018013 */ lui $at, %hi(D_8012A74C) # $at, 0x8013 -/* 0C338C 800C278C 00007812 */ mflo $t7 -/* 0C3390 800C2790 AC2FA74C */ sw $t7, %lo(D_8012A74C)($at) -/* 0C3394 800C2794 3C01800E */ lui $at, 0x800e -/* 0C3398 800C2798 03E00008 */ jr $ra -/* 0C339C 800C279C AC3831AC */ sw $t8, 0x31ac($at) - -glabel func_800C27A0 -/* 0C33A0 800C27A0 27BDFFF0 */ addiu $sp, $sp, -0x10 -/* 0C33A4 800C27A4 AFB2000C */ sw $s2, 0xc($sp) -/* 0C33A8 800C27A8 AFB00004 */ sw $s0, 4($sp) -/* 0C33AC 800C27AC AFB10008 */ sw $s1, 8($sp) -/* 0C33B0 800C27B0 3C108013 */ lui $s0, %hi(D_8012A736) # $s0, 0x8013 -/* 0C33B4 800C27B4 3C12800E */ lui $s2, %hi(D_800E31B4) # $s2, 0x800e -/* 0C33B8 800C27B8 3C0D8013 */ lui $t5, %hi(D_8012A735) # $t5, 0x8013 -/* 0C33BC 800C27BC 3C0C8013 */ lui $t4, %hi(D_8012A734) # $t4, 0x8013 -/* 0C33C0 800C27C0 3C0B8013 */ lui $t3, %hi(D_8012A74C) # $t3, 0x8013 -/* 0C33C4 800C27C4 3C0A8013 */ lui $t2, %hi(D_8012A740) # $t2, 0x8013 -/* 0C33C8 800C27C8 3C098013 */ lui $t1, %hi(D_8012A748) # $t1, 0x8013 -/* 0C33CC 800C27CC 3C088013 */ lui $t0, %hi(D_8012A73C) # $t0, 0x8013 -/* 0C33D0 800C27D0 3C078013 */ lui $a3, %hi(D_8012A744) # $a3, 0x8013 -/* 0C33D4 800C27D4 3C068013 */ lui $a2, %hi(D_8012A738) # $a2, 0x8013 -/* 0C33D8 800C27D8 3C05800E */ lui $a1, %hi(D_800E31B0) # $a1, 0x800e -/* 0C33DC 800C27DC 24A531B0 */ addiu $a1, %lo(D_800E31B0) # addiu $a1, $a1, 0x31b0 -/* 0C33E0 800C27E0 24C6A738 */ addiu $a2, %lo(D_8012A738) # addiu $a2, $a2, -0x58c8 -/* 0C33E4 800C27E4 24E7A744 */ addiu $a3, %lo(D_8012A744) # addiu $a3, $a3, -0x58bc -/* 0C33E8 800C27E8 2508A73C */ addiu $t0, %lo(D_8012A73C) # addiu $t0, $t0, -0x58c4 -/* 0C33EC 800C27EC 2529A748 */ addiu $t1, %lo(D_8012A748) # addiu $t1, $t1, -0x58b8 -/* 0C33F0 800C27F0 254AA740 */ addiu $t2, %lo(D_8012A740) # addiu $t2, $t2, -0x58c0 -/* 0C33F4 800C27F4 256BA74C */ addiu $t3, %lo(D_8012A74C) # addiu $t3, $t3, -0x58b4 -/* 0C33F8 800C27F8 258CA734 */ addiu $t4, %lo(D_8012A734) # addiu $t4, $t4, -0x58cc -/* 0C33FC 800C27FC 25ADA735 */ addiu $t5, %lo(D_8012A735) # addiu $t5, $t5, -0x58cb -/* 0C3400 800C2800 265231B4 */ addiu $s2, %lo(D_800E31B4) # addiu $s2, $s2, 0x31b4 -/* 0C3404 800C2804 2610A736 */ addiu $s0, %lo(D_8012A736) # addiu $s0, $s0, -0x58ca -/* 0C3408 800C2808 3411FFFF */ li $s1, 65535 -/* 0C340C 800C280C 24020001 */ li $v0, 1 -.L800C2810: -/* 0C3410 800C2810 94A30000 */ lhu $v1, ($a1) -/* 0C3414 800C2814 00000000 */ nop -/* 0C3418 800C2818 18600024 */ blez $v1, .L800C28AC -/* 0C341C 800C281C 00000000 */ nop -/* 0C3420 800C2820 8CEF0000 */ lw $t7, ($a3) -/* 0C3424 800C2824 8CCE0000 */ lw $t6, ($a2) -/* 0C3428 800C2828 01E40019 */ multu $t7, $a0 -/* 0C342C 800C282C 8D0F0000 */ lw $t7, ($t0) -/* 0C3430 800C2830 0083082A */ slt $at, $a0, $v1 -/* 0C3434 800C2834 0000C012 */ mflo $t8 -/* 0C3438 800C2838 01D8C821 */ addu $t9, $t6, $t8 -/* 0C343C 800C283C 8D2E0000 */ lw $t6, ($t1) -/* 0C3440 800C2840 ACD90000 */ sw $t9, ($a2) -/* 0C3444 800C2844 01C40019 */ multu $t6, $a0 -/* 0C3448 800C2848 8D4E0000 */ lw $t6, ($t2) -/* 0C344C 800C284C 0000C012 */ mflo $t8 -/* 0C3450 800C2850 01F8C821 */ addu $t9, $t7, $t8 -/* 0C3454 800C2854 8D6F0000 */ lw $t7, ($t3) -/* 0C3458 800C2858 AD190000 */ sw $t9, ($t0) -/* 0C345C 800C285C 01E40019 */ multu $t7, $a0 -/* 0C3460 800C2860 0000C012 */ mflo $t8 -/* 0C3464 800C2864 01D8C821 */ addu $t9, $t6, $t8 -/* 0C3468 800C2868 1420000D */ bnez $at, .L800C28A0 -/* 0C346C 800C286C AD590000 */ sw $t9, ($t2) -/* 0C3470 800C2870 918F0000 */ lbu $t7, ($t4) -/* 0C3474 800C2874 91B80000 */ lbu $t8, ($t5) -/* 0C3478 800C2878 000F7400 */ sll $t6, $t7, 0x10 -/* 0C347C 800C287C 920F0000 */ lbu $t7, ($s0) -/* 0C3480 800C2880 ACCE0000 */ sw $t6, ($a2) -/* 0C3484 800C2884 0018CC00 */ sll $t9, $t8, 0x10 -/* 0C3488 800C2888 000F7400 */ sll $t6, $t7, 0x10 -/* 0C348C 800C288C AD190000 */ sw $t9, ($t0) -/* 0C3490 800C2890 AD4E0000 */ sw $t6, ($t2) -/* 0C3494 800C2894 00832023 */ subu $a0, $a0, $v1 -/* 0C3498 800C2898 1000000C */ b .L800C28CC -/* 0C349C 800C289C A4A00000 */ sh $zero, ($a1) -.L800C28A0: -/* 0C34A0 800C28A0 0064C023 */ subu $t8, $v1, $a0 -/* 0C34A4 800C28A4 10000009 */ b .L800C28CC -/* 0C34A8 800C28A8 A4B80000 */ sh $t8, ($a1) -.L800C28AC: -/* 0C34AC 800C28AC 96430000 */ lhu $v1, ($s2) -/* 0C34B0 800C28B0 00000000 */ nop -/* 0C34B4 800C28B4 12230005 */ beq $s1, $v1, .L800C28CC -/* 0C34B8 800C28B8 0064C823 */ subu $t9, $v1, $a0 -/* 0C34BC 800C28BC 332FFFFF */ andi $t7, $t9, 0xffff -/* 0C34C0 800C28C0 1DE00002 */ bgtz $t7, .L800C28CC -/* 0C34C4 800C28C4 A6590000 */ sh $t9, ($s2) -/* 0C34C8 800C28C8 A6400000 */ sh $zero, ($s2) -.L800C28CC: -/* 0C34CC 800C28CC 1040FFD0 */ beqz $v0, .L800C2810 -/* 0C34D0 800C28D0 00000000 */ nop -/* 0C34D4 800C28D4 8FB00004 */ lw $s0, 4($sp) -/* 0C34D8 800C28D8 8FB10008 */ lw $s1, 8($sp) -/* 0C34DC 800C28DC 8FB2000C */ lw $s2, 0xc($sp) -/* 0C34E0 800C28E0 03E00008 */ jr $ra -/* 0C34E4 800C28E4 27BD0010 */ addiu $sp, $sp, 0x10 - -glabel func_800C28E8 -/* 0C34E8 800C28E8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C34EC 800C28EC AFBF0014 */ sw $ra, 0x14($sp) -/* 0C34F0 800C28F0 AFA5001C */ sw $a1, 0x1c($sp) -/* 0C34F4 800C28F4 AFA60020 */ sw $a2, 0x20($sp) -/* 0C34F8 800C28F8 0C01E948 */ jal func_8007A520 -/* 0C34FC 800C28FC AFA40018 */ sw $a0, 0x18($sp) -/* 0C3500 800C2900 8FA40018 */ lw $a0, 0x18($sp) -/* 0C3504 800C2904 3C18800E */ lui $t8, %hi(D_800E31D8) # $t8, 0x800e -/* 0C3508 800C2908 8C830000 */ lw $v1, ($a0) -/* 0C350C 800C290C 271831D8 */ addiu $t8, %lo(D_800E31D8) # addiu $t8, $t8, 0x31d8 -/* 0C3510 800C2910 246E0008 */ addiu $t6, $v1, 8 -/* 0C3514 800C2914 AC8E0000 */ sw $t6, ($a0) -/* 0C3518 800C2918 3C0F0600 */ lui $t7, 0x600 -/* 0C351C 800C291C AC6F0000 */ sw $t7, ($v1) -/* 0C3520 800C2920 AC780004 */ sw $t8, 4($v1) -/* 0C3524 800C2924 8C830000 */ lw $v1, ($a0) -/* 0C3528 800C2928 3C09FA00 */ lui $t1, 0xfa00 -/* 0C352C 800C292C 24790008 */ addiu $t9, $v1, 8 -/* 0C3530 800C2930 AC990000 */ sw $t9, ($a0) -/* 0C3534 800C2934 3C0A8013 */ lui $t2, %hi(D_8012A738) # $t2, 0x8013 -/* 0C3538 800C2938 AC690000 */ sw $t1, ($v1) -/* 0C353C 800C293C 8D4AA738 */ lw $t2, %lo(D_8012A738)($t2) -/* 0C3540 800C2940 3C0E8013 */ lui $t6, %hi(D_8012A73C) # $t6, 0x8013 -/* 0C3544 800C2944 000A6403 */ sra $t4, $t2, 0x10 -/* 0C3548 800C2948 8DCEA73C */ lw $t6, %lo(D_8012A73C)($t6) -/* 0C354C 800C294C 3C0A8013 */ lui $t2, %hi(D_8012A740) # $t2, 0x8013 -/* 0C3550 800C2950 8D4AA740 */ lw $t2, %lo(D_8012A740)($t2) -/* 0C3554 800C2954 000E7C03 */ sra $t7, $t6, 0x10 -/* 0C3558 800C2958 31F800FF */ andi $t8, $t7, 0xff -/* 0C355C 800C295C 000C6E00 */ sll $t5, $t4, 0x18 -/* 0C3560 800C2960 000A5C03 */ sra $t3, $t2, 0x10 -/* 0C3564 800C2964 316C00FF */ andi $t4, $t3, 0xff -/* 0C3568 800C2968 0018CC00 */ sll $t9, $t8, 0x10 -/* 0C356C 800C296C 01B94825 */ or $t1, $t5, $t9 -/* 0C3570 800C2970 000C7200 */ sll $t6, $t4, 8 -/* 0C3574 800C2974 012E7825 */ or $t7, $t1, $t6 -/* 0C3578 800C2978 35F800FF */ ori $t8, $t7, 0xff -/* 0C357C 800C297C AC780004 */ sw $t8, 4($v1) -/* 0C3580 800C2980 8C830000 */ lw $v1, ($a0) -/* 0C3584 800C2984 3C19FCFF */ lui $t9, (0xFCFFFFFF >> 16) # lui $t9, 0xfcff -/* 0C3588 800C2988 246D0008 */ addiu $t5, $v1, 8 -/* 0C358C 800C298C 3C0AFFFD */ lui $t2, (0xFFFDF6FB >> 16) # lui $t2, 0xfffd -/* 0C3590 800C2990 AC8D0000 */ sw $t5, ($a0) -/* 0C3594 800C2994 354AF6FB */ ori $t2, (0xFFFDF6FB & 0xFFFF) # ori $t2, $t2, 0xf6fb -/* 0C3598 800C2998 3739FFFF */ ori $t9, (0xFCFFFFFF & 0xFFFF) # ori $t9, $t9, 0xffff -/* 0C359C 800C299C AC790000 */ sw $t9, ($v1) -/* 0C35A0 800C29A0 AC6A0004 */ sw $t2, 4($v1) -/* 0C35A4 800C29A4 8C830000 */ lw $v1, ($a0) -/* 0C35A8 800C29A8 00026C03 */ sra $t5, $v0, 0x10 -/* 0C35AC 800C29AC 304903FF */ andi $t1, $v0, 0x3ff -/* 0C35B0 800C29B0 00097380 */ sll $t6, $t1, 0xe -/* 0C35B4 800C29B4 31B903FF */ andi $t9, $t5, 0x3ff -/* 0C35B8 800C29B8 3C01F600 */ lui $at, 0xf600 -/* 0C35BC 800C29BC 246B0008 */ addiu $t3, $v1, 8 -/* 0C35C0 800C29C0 01C17825 */ or $t7, $t6, $at -/* 0C35C4 800C29C4 00195080 */ sll $t2, $t9, 2 -/* 0C35C8 800C29C8 AC8B0000 */ sw $t3, ($a0) -/* 0C35CC 800C29CC 01EA5825 */ or $t3, $t7, $t2 -/* 0C35D0 800C29D0 AC6B0000 */ sw $t3, ($v1) -/* 0C35D4 800C29D4 0C01ECF4 */ jal func_8007B3D0 -/* 0C35D8 800C29D8 AC600004 */ sw $zero, 4($v1) -/* 0C35DC 800C29DC 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C35E0 800C29E0 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0C35E4 800C29E4 03E00008 */ jr $ra -/* 0C35E8 800C29E8 00000000 */ nop - -/* 0C35EC 800C29EC 00000000 */ nop -glabel func_800C29F0 -/* 0C35F0 800C29F0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C35F4 800C29F4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0C35F8 800C29F8 3C0500FF */ lui $a1, (0x00FF00FF >> 16) # lui $a1, 0xff -/* 0C35FC 800C29FC 34A500FF */ ori $a1, (0x00FF00FF & 0xFFFF) # ori $a1, $a1, 0xff -/* 0C3600 800C2A00 0C01C327 */ jal func_80070C9C -/* 0C3604 800C2A04 24040780 */ li $a0, 1920 -/* 0C3608 800C2A08 3C038013 */ lui $v1, %hi(D_8012A7C8) # $v1, 0x8013 -/* 0C360C 800C2A0C 2463A7C8 */ addiu $v1, %lo(D_8012A7C8) # addiu $v1, $v1, -0x5838 -/* 0C3610 800C2A10 244F03C0 */ addiu $t7, $v0, 0x3c0 -/* 0C3614 800C2A14 AC620000 */ sw $v0, ($v1) -/* 0C3618 800C2A18 AC6F0004 */ sw $t7, 4($v1) -/* 0C361C 800C2A1C 3C018013 */ lui $at, %hi(D_8012A7D4) # $at, 0x8013 -/* 0C3620 800C2A20 AC20A7D4 */ sw $zero, %lo(D_8012A7D4)($at) -/* 0C3624 800C2A24 3C018013 */ lui $at, %hi(D_8012A7B6) # $at, 0x8013 -/* 0C3628 800C2A28 A420A7B6 */ sh $zero, %lo(D_8012A7B6)($at) -/* 0C362C 800C2A2C 3C018013 */ lui $at, %hi(D_8012A7A8) # $at, 0x8013 -/* 0C3630 800C2A30 A420A7A8 */ sh $zero, %lo(D_8012A7A8)($at) -/* 0C3634 800C2A34 24040020 */ li $a0, 32 -/* 0C3638 800C2A38 3C018013 */ lui $at, %hi(D_8012A7AA) # $at, 0x8013 -/* 0C363C 800C2A3C A424A7AA */ sh $a0, %lo(D_8012A7AA)($at) -/* 0C3640 800C2A40 3C018013 */ lui $at, %hi(D_8012A7BA) # $at, 0x8013 -/* 0C3644 800C2A44 A420A7BA */ sh $zero, %lo(D_8012A7BA)($at) -/* 0C3648 800C2A48 3C018013 */ lui $at, %hi(D_8012A7AE) # $at, 0x8013 -/* 0C364C 800C2A4C 3C198000 */ lui $t9, %hi(D_80000300) # $t9, 0x8000 -/* 0C3650 800C2A50 8F390300 */ lw $t9, %lo(D_80000300)($t9) -/* 0C3654 800C2A54 A424A7AE */ sh $a0, %lo(D_8012A7AE)($at) -/* 0C3658 800C2A58 3C018013 */ lui $at, %hi(D_8012A7B2) # $at, 0x8013 -/* 0C365C 800C2A5C 24180120 */ li $t8, 288 -/* 0C3660 800C2A60 17200008 */ bnez $t9, .L800C2A84 -/* 0C3664 800C2A64 A438A7B2 */ sh $t8, %lo(D_8012A7B2)($at) -/* 0C3668 800C2A68 240800E0 */ li $t0, 224 -/* 0C366C 800C2A6C 3C018013 */ lui $at, %hi(D_8012A7B0) # $at, 0x8013 -/* 0C3670 800C2A70 A428A7B0 */ sh $t0, %lo(D_8012A7B0)($at) -/* 0C3674 800C2A74 3C018013 */ lui $at, %hi(D_8012A7B4) # $at, 0x8013 -/* 0C3678 800C2A78 240900F8 */ li $t1, 248 -/* 0C367C 800C2A7C 10000007 */ b .L800C2A9C -/* 0C3680 800C2A80 A429A7B4 */ sh $t1, %lo(D_8012A7B4)($at) -.L800C2A84: -/* 0C3684 800C2A84 240A00CA */ li $t2, 202 -/* 0C3688 800C2A88 3C018013 */ lui $at, %hi(D_8012A7B0) # $at, 0x8013 -/* 0C368C 800C2A8C A42AA7B0 */ sh $t2, %lo(D_8012A7B0)($at) -/* 0C3690 800C2A90 3C018013 */ lui $at, %hi(D_8012A7B4) # $at, 0x8013 -/* 0C3694 800C2A94 240B00DE */ li $t3, 222 -/* 0C3698 800C2A98 A42BA7B4 */ sh $t3, %lo(D_8012A7B4)($at) -.L800C2A9C: -/* 0C369C 800C2A9C 0C0315B4 */ jal func_800C56D0 -/* 0C36A0 800C2AA0 24040006 */ li $a0, 6 -/* 0C36A4 800C2AA4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C36A8 800C2AA8 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0C36AC 800C2AAC 03E00008 */ jr $ra -/* 0C36B0 800C2AB0 00000000 */ nop - -glabel func_800C2AB4 -/* 0C36B4 800C2AB4 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C36B8 800C2AB8 3C048013 */ lui $a0, %hi(D_8012A7C8) # $a0, 0x8013 -/* 0C36BC 800C2ABC AFBF0014 */ sw $ra, 0x14($sp) -/* 0C36C0 800C2AC0 8C84A7C8 */ lw $a0, %lo(D_8012A7C8)($a0) -/* 0C36C4 800C2AC4 0C01C450 */ jal func_80071140 -/* 0C36C8 800C2AC8 00000000 */ nop -/* 0C36CC 800C2ACC 3C018013 */ lui $at, %hi(D_8012A7B6) # $at, 0x8013 -/* 0C36D0 800C2AD0 A420A7B6 */ sh $zero, %lo(D_8012A7B6)($at) -/* 0C36D4 800C2AD4 0C031588 */ jal func_800C5620 -/* 0C36D8 800C2AD8 24040006 */ li $a0, 6 -/* 0C36DC 800C2ADC 0C031525 */ jal func_800C5494 -/* 0C36E0 800C2AE0 24040006 */ li $a0, 6 -/* 0C36E4 800C2AE4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C36E8 800C2AE8 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0C36EC 800C2AEC 03E00008 */ jr $ra -/* 0C36F0 800C2AF0 00000000 */ nop - -glabel func_800C2AF4 -/* 0C36F4 800C2AF4 3C01800E */ lui $at, 0x800e -/* 0C36F8 800C2AF8 03E00008 */ jr $ra -/* 0C36FC 800C2AFC AC243680 */ sw $a0, 0x3680($at) - -glabel func_800C2B00 -/* 0C3700 800C2B00 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 0C3704 800C2B04 AFBF0044 */ sw $ra, 0x44($sp) -/* 0C3708 800C2B08 AFBE0040 */ sw $fp, 0x40($sp) -/* 0C370C 800C2B0C AFB7003C */ sw $s7, 0x3c($sp) -/* 0C3710 800C2B10 AFB60038 */ sw $s6, 0x38($sp) -/* 0C3714 800C2B14 AFB50034 */ sw $s5, 0x34($sp) -/* 0C3718 800C2B18 AFB40030 */ sw $s4, 0x30($sp) -/* 0C371C 800C2B1C AFB3002C */ sw $s3, 0x2c($sp) -/* 0C3720 800C2B20 AFB20028 */ sw $s2, 0x28($sp) -/* 0C3724 800C2B24 AFB10024 */ sw $s1, 0x24($sp) -/* 0C3728 800C2B28 AFB00020 */ sw $s0, 0x20($sp) -/* 0C372C 800C2B2C 0C031525 */ jal func_800C5494 -/* 0C3730 800C2B30 24040006 */ li $a0, 6 -/* 0C3734 800C2B34 3C118013 */ lui $s1, %hi(D_8012A7B4) # $s1, 0x8013 -/* 0C3738 800C2B38 2631A7B4 */ addiu $s1, %lo(D_8012A7B4) # addiu $s1, $s1, -0x584c -/* 0C373C 800C2B3C 3C108013 */ lui $s0, %hi(D_8012A7B0) # $s0, 0x8013 -/* 0C3740 800C2B40 3C158013 */ lui $s5, %hi(D_8012A7AE) # $s5, 0x8013 -/* 0C3744 800C2B44 3C168013 */ lui $s6, %hi(D_8012A7B2) # $s6, 0x8013 -/* 0C3748 800C2B48 862E0000 */ lh $t6, ($s1) -/* 0C374C 800C2B4C 26D6A7B2 */ addiu $s6, %lo(D_8012A7B2) # addiu $s6, $s6, -0x584e -/* 0C3750 800C2B50 26B5A7AE */ addiu $s5, %lo(D_8012A7AE) # addiu $s5, $s5, -0x5852 -/* 0C3754 800C2B54 2610A7B0 */ addiu $s0, %lo(D_8012A7B0) # addiu $s0, $s0, -0x5850 -/* 0C3758 800C2B58 86060000 */ lh $a2, ($s0) -/* 0C375C 800C2B5C 86A50000 */ lh $a1, ($s5) -/* 0C3760 800C2B60 86C70000 */ lh $a3, ($s6) -/* 0C3764 800C2B64 24040006 */ li $a0, 6 -/* 0C3768 800C2B68 0C0313B7 */ jal func_800C4EDC -/* 0C376C 800C2B6C AFAE0010 */ sw $t6, 0x10($sp) -/* 0C3770 800C2B70 3C178013 */ lui $s7, %hi(D_8012A7A8) # $s7, 0x8013 -/* 0C3774 800C2B74 26F7A7A8 */ addiu $s7, %lo(D_8012A7A8) # addiu $s7, $s7, -0x5858 -/* 0C3778 800C2B78 86EF0000 */ lh $t7, ($s7) -/* 0C377C 800C2B7C 24040006 */ li $a0, 6 -/* 0C3780 800C2B80 000FC080 */ sll $t8, $t7, 2 -/* 0C3784 800C2B84 030FC021 */ addu $t8, $t8, $t7 -/* 0C3788 800C2B88 0018C140 */ sll $t8, $t8, 5 -/* 0C378C 800C2B8C 0018CA03 */ sra $t9, $t8, 8 -/* 0C3790 800C2B90 AFB90010 */ sw $t9, 0x10($sp) -/* 0C3794 800C2B94 24050040 */ li $a1, 64 -/* 0C3798 800C2B98 24060060 */ li $a2, 96 -/* 0C379C 800C2B9C 0C0313EF */ jal func_800C4FBC -/* 0C37A0 800C2BA0 24070060 */ li $a3, 96 -/* 0C37A4 800C2BA4 24040006 */ li $a0, 6 -/* 0C37A8 800C2BA8 00002825 */ move $a1, $zero -/* 0C37AC 800C2BAC 00003025 */ move $a2, $zero -/* 0C37B0 800C2BB0 00003825 */ move $a3, $zero -/* 0C37B4 800C2BB4 0C031414 */ jal func_800C5050 -/* 0C37B8 800C2BB8 AFA00010 */ sw $zero, 0x10($sp) -/* 0C37BC 800C2BBC 3C1E8013 */ lui $fp, %hi(D_8012A7B8) # $fp, 0x8013 -/* 0C37C0 800C2BC0 27DEA7B8 */ addiu $fp, %lo(D_8012A7B8) # addiu $fp, $fp, -0x5848 -/* 0C37C4 800C2BC4 87C20000 */ lh $v0, ($fp) -/* 0C37C8 800C2BC8 86280000 */ lh $t0, ($s1) -/* 0C37CC 800C2BCC 86090000 */ lh $t1, ($s0) -/* 0C37D0 800C2BD0 00025880 */ sll $t3, $v0, 2 -/* 0C37D4 800C2BD4 01625823 */ subu $t3, $t3, $v0 -/* 0C37D8 800C2BD8 000B5880 */ sll $t3, $t3, 2 -/* 0C37DC 800C2BDC 01095023 */ subu $t2, $t0, $t1 -/* 0C37E0 800C2BE0 014B6023 */ subu $t4, $t2, $t3 -/* 0C37E4 800C2BE4 00026840 */ sll $t5, $v0, 1 -/* 0C37E8 800C2BE8 018D9823 */ subu $s3, $t4, $t5 -/* 0C37EC 800C2BEC 26730002 */ addiu $s3, $s3, 2 -/* 0C37F0 800C2BF0 00137043 */ sra $t6, $s3, 1 -/* 0C37F4 800C2BF4 01C09825 */ move $s3, $t6 -/* 0C37F8 800C2BF8 1840004E */ blez $v0, .L800C2D34 -/* 0C37FC 800C2BFC 0000A025 */ move $s4, $zero -/* 0C3800 800C2C00 3C128013 */ lui $s2, %hi(D_8012A7C0) # $s2, 0x8013 -/* 0C3804 800C2C04 2652A7C0 */ addiu $s2, %lo(D_8012A7C0) # addiu $s2, $s2, -0x5840 -.L800C2C08: -/* 0C3808 800C2C08 8E4F0000 */ lw $t7, ($s2) -/* 0C380C 800C2C0C 24040006 */ li $a0, 6 -/* 0C3810 800C2C10 91E50005 */ lbu $a1, 5($t7) -/* 0C3814 800C2C14 0C0313DF */ jal func_800C4F7C -/* 0C3818 800C2C18 00000000 */ nop -/* 0C381C 800C2C1C 8E420000 */ lw $v0, ($s2) -/* 0C3820 800C2C20 24010004 */ li $at, 4 -/* 0C3824 800C2C24 90500006 */ lbu $s0, 6($v0) -/* 0C3828 800C2C28 240B00FF */ li $t3, 255 -/* 0C382C 800C2C2C 16010009 */ bne $s0, $at, .L800C2C54 -/* 0C3830 800C2C30 24010001 */ li $at, 1 -/* 0C3834 800C2C34 86D80000 */ lh $t8, ($s6) -/* 0C3838 800C2C38 86B90000 */ lh $t9, ($s5) -/* 0C383C 800C2C3C 00000000 */ nop -/* 0C3840 800C2C40 03198823 */ subu $s1, $t8, $t9 -/* 0C3844 800C2C44 00114043 */ sra $t0, $s1, 1 -/* 0C3848 800C2C48 1000000A */ b .L800C2C74 -/* 0C384C 800C2C4C 01008825 */ move $s1, $t0 -/* 0C3850 800C2C50 24010001 */ li $at, 1 -.L800C2C54: -/* 0C3854 800C2C54 16010007 */ bne $s0, $at, .L800C2C74 -/* 0C3858 800C2C58 24110008 */ li $s1, 8 -/* 0C385C 800C2C5C 86C90000 */ lh $t1, ($s6) -/* 0C3860 800C2C60 86AA0000 */ lh $t2, ($s5) -/* 0C3864 800C2C64 00000000 */ nop -/* 0C3868 800C2C68 012A8823 */ subu $s1, $t1, $t2 -/* 0C386C 800C2C6C 10000001 */ b .L800C2C74 -/* 0C3870 800C2C70 2631FFF8 */ addiu $s1, $s1, -8 -.L800C2C74: -/* 0C3874 800C2C74 90450001 */ lbu $a1, 1($v0) -/* 0C3878 800C2C78 90460002 */ lbu $a2, 2($v0) -/* 0C387C 800C2C7C 90470003 */ lbu $a3, 3($v0) -/* 0C3880 800C2C80 AFAB0010 */ sw $t3, 0x10($sp) -/* 0C3884 800C2C84 904C0004 */ lbu $t4, 4($v0) -/* 0C3888 800C2C88 86ED0000 */ lh $t5, ($s7) -/* 0C388C 800C2C8C 24040006 */ li $a0, 6 -/* 0C3890 800C2C90 018D0019 */ multu $t4, $t5 -/* 0C3894 800C2C94 00007012 */ mflo $t6 -/* 0C3898 800C2C98 000E7A03 */ sra $t7, $t6, 8 -/* 0C389C 800C2C9C 0C031400 */ jal func_800C5000 -/* 0C38A0 800C2CA0 AFAF0014 */ sw $t7, 0x14($sp) -/* 0C38A4 800C2CA4 8E470000 */ lw $a3, ($s2) -/* 0C38A8 800C2CA8 24180001 */ li $t8, 1 -/* 0C38AC 800C2CAC AFB80010 */ sw $t8, 0x10($sp) -/* 0C38B0 800C2CB0 24040006 */ li $a0, 6 -/* 0C38B4 800C2CB4 02202825 */ move $a1, $s1 -/* 0C38B8 800C2CB8 02603025 */ move $a2, $s3 -/* 0C38BC 800C2CBC AFB00014 */ sw $s0, 0x14($sp) -/* 0C38C0 800C2CC0 0C03145A */ jal func_800C5168 -/* 0C38C4 800C2CC4 24E70008 */ addiu $a3, $a3, 8 -/* 0C38C8 800C2CC8 86E80000 */ lh $t0, ($s7) -/* 0C38CC 800C2CCC 241900FF */ li $t9, 255 -/* 0C38D0 800C2CD0 00084A00 */ sll $t1, $t0, 8 -/* 0C38D4 800C2CD4 01284823 */ subu $t1, $t1, $t0 -/* 0C38D8 800C2CD8 00095203 */ sra $t2, $t1, 8 -/* 0C38DC 800C2CDC AFAA0014 */ sw $t2, 0x14($sp) -/* 0C38E0 800C2CE0 AFB90010 */ sw $t9, 0x10($sp) -/* 0C38E4 800C2CE4 24040006 */ li $a0, 6 -/* 0C38E8 800C2CE8 00002825 */ move $a1, $zero -/* 0C38EC 800C2CEC 00003025 */ move $a2, $zero -/* 0C38F0 800C2CF0 0C031400 */ jal func_800C5000 -/* 0C38F4 800C2CF4 00003825 */ move $a3, $zero -/* 0C38F8 800C2CF8 8E470000 */ lw $a3, ($s2) -/* 0C38FC 800C2CFC 240B0001 */ li $t3, 1 -/* 0C3900 800C2D00 AFAB0010 */ sw $t3, 0x10($sp) -/* 0C3904 800C2D04 24040006 */ li $a0, 6 -/* 0C3908 800C2D08 26250001 */ addiu $a1, $s1, 1 -/* 0C390C 800C2D0C 26660001 */ addiu $a2, $s3, 1 -/* 0C3910 800C2D10 AFB00014 */ sw $s0, 0x14($sp) -/* 0C3914 800C2D14 0C03145A */ jal func_800C5168 -/* 0C3918 800C2D18 24E70008 */ addiu $a3, $a3, 8 -/* 0C391C 800C2D1C 87CC0000 */ lh $t4, ($fp) -/* 0C3920 800C2D20 26940001 */ addiu $s4, $s4, 1 -/* 0C3924 800C2D24 028C082A */ slt $at, $s4, $t4 -/* 0C3928 800C2D28 26520004 */ addiu $s2, $s2, 4 -/* 0C392C 800C2D2C 1420FFB6 */ bnez $at, .L800C2C08 -/* 0C3930 800C2D30 2673000E */ addiu $s3, $s3, 0xe -.L800C2D34: -/* 0C3934 800C2D34 0C03157D */ jal func_800C55F4 -/* 0C3938 800C2D38 24040006 */ li $a0, 6 -/* 0C393C 800C2D3C 8FBF0044 */ lw $ra, 0x44($sp) -/* 0C3940 800C2D40 8FB00020 */ lw $s0, 0x20($sp) -/* 0C3944 800C2D44 8FB10024 */ lw $s1, 0x24($sp) -/* 0C3948 800C2D48 8FB20028 */ lw $s2, 0x28($sp) -/* 0C394C 800C2D4C 8FB3002C */ lw $s3, 0x2c($sp) -/* 0C3950 800C2D50 8FB40030 */ lw $s4, 0x30($sp) -/* 0C3954 800C2D54 8FB50034 */ lw $s5, 0x34($sp) -/* 0C3958 800C2D58 8FB60038 */ lw $s6, 0x38($sp) -/* 0C395C 800C2D5C 8FB7003C */ lw $s7, 0x3c($sp) -/* 0C3960 800C2D60 8FBE0040 */ lw $fp, 0x40($sp) -/* 0C3964 800C2D64 03E00008 */ jr $ra -/* 0C3968 800C2D68 27BD0048 */ addiu $sp, $sp, 0x48 - -glabel func_800C2D6C -/* 0C396C 800C2D6C 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 0C3970 800C2D70 AFB1001C */ sw $s1, 0x1c($sp) -/* 0C3974 800C2D74 3C118013 */ lui $s1, %hi(D_8012A7D0) # $s1, 0x8013 -/* 0C3978 800C2D78 AFB40028 */ sw $s4, 0x28($sp) -/* 0C397C 800C2D7C AFB30024 */ sw $s3, 0x24($sp) -/* 0C3980 800C2D80 3C138013 */ lui $s3, %hi(D_8012A7B8) # $s3, 0x8013 -/* 0C3984 800C2D84 3C148013 */ lui $s4, %hi(D_8012A7AC) # $s4, 0x8013 -/* 0C3988 800C2D88 2631A7D0 */ addiu $s1, %lo(D_8012A7D0) # addiu $s1, $s1, -0x5830 -/* 0C398C 800C2D8C AFB00018 */ sw $s0, 0x18($sp) -/* 0C3990 800C2D90 8E300000 */ lw $s0, ($s1) -/* 0C3994 800C2D94 2694A7AC */ addiu $s4, %lo(D_8012A7AC) # addiu $s4, $s4, -0x5854 -/* 0C3998 800C2D98 2673A7B8 */ addiu $s3, %lo(D_8012A7B8) # addiu $s3, $s3, -0x5848 -/* 0C399C 800C2D9C AFBF003C */ sw $ra, 0x3c($sp) -/* 0C39A0 800C2DA0 AFBE0038 */ sw $fp, 0x38($sp) -/* 0C39A4 800C2DA4 AFB70034 */ sw $s7, 0x34($sp) -/* 0C39A8 800C2DA8 AFB60030 */ sw $s6, 0x30($sp) -/* 0C39AC 800C2DAC AFB5002C */ sw $s5, 0x2c($sp) -/* 0C39B0 800C2DB0 AFB20020 */ sw $s2, 0x20($sp) -/* 0C39B4 800C2DB4 A6600000 */ sh $zero, ($s3) -/* 0C39B8 800C2DB8 A6800000 */ sh $zero, ($s4) -/* 0C39BC 800C2DBC 92020000 */ lbu $v0, ($s0) -/* 0C39C0 800C2DC0 00009025 */ move $s2, $zero -/* 0C39C4 800C2DC4 10400044 */ beqz $v0, .L800C2ED8 -/* 0C39C8 800C2DC8 241E000A */ li $fp, 10 -/* 0C39CC 800C2DCC 3C168013 */ lui $s6, %hi(D_8012A7C0) # $s6, 0x8013 -/* 0C39D0 800C2DD0 3C158013 */ lui $s5, %hi(D_8012A7BA) # $s5, 0x8013 -/* 0C39D4 800C2DD4 86650000 */ lh $a1, ($s3) -/* 0C39D8 800C2DD8 26B5A7BA */ addiu $s5, %lo(D_8012A7BA) # addiu $s5, $s5, -0x5846 -/* 0C39DC 800C2DDC 26D6A7C0 */ addiu $s6, %lo(D_8012A7C0) # addiu $s6, $s6, -0x5840 -/* 0C39E0 800C2DE0 24170006 */ li $s7, 6 -/* 0C39E4 800C2DE4 00057880 */ sll $t7, $a1, 2 -.L800C2DE8: -/* 0C39E8 800C2DE8 244EFFFF */ addiu $t6, $v0, -1 -/* 0C39EC 800C2DEC 02CFC021 */ addu $t8, $s6, $t7 -/* 0C39F0 800C2DF0 A6AE0000 */ sh $t6, ($s5) -/* 0C39F4 800C2DF4 AF100000 */ sw $s0, ($t8) -/* 0C39F8 800C2DF8 92190007 */ lbu $t9, 7($s0) -/* 0C39FC 800C2DFC 00000000 */ nop -/* 0C3A00 800C2E00 03370019 */ multu $t9, $s7 -/* 0C3A04 800C2E04 00002012 */ mflo $a0 -/* 0C3A08 800C2E08 0C00322D */ jal func_8000C8B4 -/* 0C3A0C 800C2E0C 00000000 */ nop -/* 0C3A10 800C2E10 8E280000 */ lw $t0, ($s1) -/* 0C3A14 800C2E14 A6820000 */ sh $v0, ($s4) -/* 0C3A18 800C2E18 25100008 */ addiu $s0, $t0, 8 -/* 0C3A1C 800C2E1C AE300000 */ sw $s0, ($s1) -/* 0C3A20 800C2E20 92030000 */ lbu $v1, ($s0) -/* 0C3A24 800C2E24 00000000 */ nop -/* 0C3A28 800C2E28 306A0080 */ andi $t2, $v1, 0x80 -.L800C2E2C: -/* 0C3A2C 800C2E2C 11400004 */ beqz $t2, .L800C2E40 -/* 0C3A30 800C2E30 260C0001 */ addiu $t4, $s0, 1 -/* 0C3A34 800C2E34 260B0002 */ addiu $t3, $s0, 2 -/* 0C3A38 800C2E38 10000002 */ b .L800C2E44 -/* 0C3A3C 800C2E3C AE2B0000 */ sw $t3, ($s1) -.L800C2E40: -/* 0C3A40 800C2E40 AE2C0000 */ sw $t4, ($s1) -.L800C2E44: -/* 0C3A44 800C2E44 8E300000 */ lw $s0, ($s1) -/* 0C3A48 800C2E48 00000000 */ nop -/* 0C3A4C 800C2E4C 92030000 */ lbu $v1, ($s0) -/* 0C3A50 800C2E50 00000000 */ nop -/* 0C3A54 800C2E54 1460FFF5 */ bnez $v1, .L800C2E2C -/* 0C3A58 800C2E58 306A0080 */ andi $t2, $v1, 0x80 -/* 0C3A5C 800C2E5C 866D0000 */ lh $t5, ($s3) -/* 0C3A60 800C2E60 260F0001 */ addiu $t7, $s0, 1 -/* 0C3A64 800C2E64 25AE0001 */ addiu $t6, $t5, 1 -/* 0C3A68 800C2E68 A66E0000 */ sh $t6, ($s3) -/* 0C3A6C 800C2E6C 86650000 */ lh $a1, ($s3) -/* 0C3A70 800C2E70 00000000 */ nop -/* 0C3A74 800C2E74 28A10002 */ slti $at, $a1, 2 -/* 0C3A78 800C2E78 14200002 */ bnez $at, .L800C2E84 -/* 0C3A7C 800C2E7C 00000000 */ nop -/* 0C3A80 800C2E80 24120001 */ li $s2, 1 -.L800C2E84: -/* 0C3A84 800C2E84 AE2F0000 */ sw $t7, ($s1) -/* 0C3A88 800C2E88 91E20000 */ lbu $v0, ($t7) -/* 0C3A8C 800C2E8C 01E08025 */ move $s0, $t7 -/* 0C3A90 800C2E90 17C20006 */ bne $fp, $v0, .L800C2EAC -/* 0C3A94 800C2E94 00401825 */ move $v1, $v0 -/* 0C3A98 800C2E98 25F00001 */ addiu $s0, $t7, 1 -/* 0C3A9C 800C2E9C AE300000 */ sw $s0, ($s1) -/* 0C3AA0 800C2EA0 92020000 */ lbu $v0, ($s0) -/* 0C3AA4 800C2EA4 10000008 */ b .L800C2EC8 -/* 0C3AA8 800C2EA8 00000000 */ nop -.L800C2EAC: -/* 0C3AAC 800C2EAC 2401000C */ li $at, 12 -/* 0C3AB0 800C2EB0 14610005 */ bne $v1, $at, .L800C2EC8 -/* 0C3AB4 800C2EB4 26190001 */ addiu $t9, $s0, 1 -/* 0C3AB8 800C2EB8 AE390000 */ sw $t9, ($s1) -/* 0C3ABC 800C2EBC 93220000 */ lbu $v0, ($t9) -/* 0C3AC0 800C2EC0 24120001 */ li $s2, 1 -/* 0C3AC4 800C2EC4 03208025 */ move $s0, $t9 -.L800C2EC8: -/* 0C3AC8 800C2EC8 10400003 */ beqz $v0, .L800C2ED8 -/* 0C3ACC 800C2ECC 00000000 */ nop -/* 0C3AD0 800C2ED0 1240FFC5 */ beqz $s2, .L800C2DE8 -/* 0C3AD4 800C2ED4 00057880 */ sll $t7, $a1, 2 -.L800C2ED8: -/* 0C3AD8 800C2ED8 86680000 */ lh $t0, ($s3) -/* 0C3ADC 800C2EDC 24090001 */ li $t1, 1 -/* 0C3AE0 800C2EE0 19000002 */ blez $t0, .L800C2EEC -/* 0C3AE4 800C2EE4 3C018013 */ lui $at, %hi(D_8012A7B6) # $at, 0x8013 -/* 0C3AE8 800C2EE8 A429A7B6 */ sh $t1, %lo(D_8012A7B6)($at) -.L800C2EEC: -/* 0C3AEC 800C2EEC 8FBF003C */ lw $ra, 0x3c($sp) -/* 0C3AF0 800C2EF0 8FB00018 */ lw $s0, 0x18($sp) -/* 0C3AF4 800C2EF4 8FB1001C */ lw $s1, 0x1c($sp) -/* 0C3AF8 800C2EF8 8FB20020 */ lw $s2, 0x20($sp) -/* 0C3AFC 800C2EFC 8FB30024 */ lw $s3, 0x24($sp) -/* 0C3B00 800C2F00 8FB40028 */ lw $s4, 0x28($sp) -/* 0C3B04 800C2F04 8FB5002C */ lw $s5, 0x2c($sp) -/* 0C3B08 800C2F08 8FB60030 */ lw $s6, 0x30($sp) -/* 0C3B0C 800C2F0C 8FB70034 */ lw $s7, 0x34($sp) -/* 0C3B10 800C2F10 8FBE0038 */ lw $fp, 0x38($sp) -/* 0C3B14 800C2F14 03E00008 */ jr $ra -/* 0C3B18 800C2F18 27BD0040 */ addiu $sp, $sp, 0x40 - -glabel func_800C2F1C -/* 0C3B1C 800C2F1C 3C0E800E */ lui $t6, %hi(D_800E3680) # $t6, 0x800e -/* 0C3B20 800C2F20 8DCE3680 */ lw $t6, %lo(D_800E3680)($t6) -/* 0C3B24 800C2F24 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C3B28 800C2F28 AFBF0014 */ sw $ra, 0x14($sp) -/* 0C3B2C 800C2F2C 15C00004 */ bnez $t6, .L800C2F40 -/* 0C3B30 800C2F30 00802825 */ move $a1, $a0 -/* 0C3B34 800C2F34 3C078013 */ lui $a3, %hi(D_8012A7B6) # $a3, 0x8013 -/* 0C3B38 800C2F38 24E7A7B6 */ addiu $a3, %lo(D_8012A7B6) # addiu $a3, $a3, -0x584a -/* 0C3B3C 800C2F3C A4E00000 */ sh $zero, ($a3) -.L800C2F40: -/* 0C3B40 800C2F40 3C078013 */ lui $a3, %hi(D_8012A7B6) # $a3, 0x8013 -/* 0C3B44 800C2F44 24E7A7B6 */ addiu $a3, %lo(D_8012A7B6) # addiu $a3, $a3, -0x584a -/* 0C3B48 800C2F48 84E40000 */ lh $a0, ($a3) -/* 0C3B4C 800C2F4C 3C068013 */ lui $a2, %hi(D_8012A7AC) # $a2, 0x8013 -/* 0C3B50 800C2F50 10800035 */ beqz $a0, .L800C3028 -/* 0C3B54 800C2F54 24C6A7AC */ addiu $a2, %lo(D_8012A7AC) # addiu $a2, $a2, -0x5854 -/* 0C3B58 800C2F58 84C30000 */ lh $v1, ($a2) -/* 0C3B5C 800C2F5C 3C0B8013 */ lui $t3, %hi(D_8012A7AA) # $t3, 0x8013 -/* 0C3B60 800C2F60 1C600018 */ bgtz $v1, .L800C2FC4 -/* 0C3B64 800C2F64 00657823 */ subu $t7, $v1, $a1 -/* 0C3B68 800C2F68 3C188013 */ lui $t8, %hi(D_8012A7AA) # $t8, 0x8013 -/* 0C3B6C 800C2F6C 8718A7AA */ lh $t8, %lo(D_8012A7AA)($t8) -/* 0C3B70 800C2F70 3C028013 */ lui $v0, %hi(D_8012A7A8) # $v0, 0x8013 -/* 0C3B74 800C2F74 00B80019 */ multu $a1, $t8 -/* 0C3B78 800C2F78 2442A7A8 */ addiu $v0, %lo(D_8012A7A8) # addiu $v0, $v0, -0x5858 -/* 0C3B7C 800C2F7C 844F0000 */ lh $t7, ($v0) -/* 0C3B80 800C2F80 0000C812 */ mflo $t9 -/* 0C3B84 800C2F84 01F94023 */ subu $t0, $t7, $t9 -/* 0C3B88 800C2F88 A4480000 */ sh $t0, ($v0) -/* 0C3B8C 800C2F8C 84490000 */ lh $t1, ($v0) -/* 0C3B90 800C2F90 00000000 */ nop -/* 0C3B94 800C2F94 05210024 */ bgez $t1, .L800C3028 -/* 0C3B98 800C2F98 00000000 */ nop -/* 0C3B9C 800C2F9C A4400000 */ sh $zero, ($v0) -/* 0C3BA0 800C2FA0 A4E00000 */ sh $zero, ($a3) -/* 0C3BA4 800C2FA4 0C031588 */ jal func_800C5620 -/* 0C3BA8 800C2FA8 24040006 */ li $a0, 6 -/* 0C3BAC 800C2FAC 0C031525 */ jal func_800C5494 -/* 0C3BB0 800C2FB0 24040006 */ li $a0, 6 -/* 0C3BB4 800C2FB4 3C048013 */ lui $a0, %hi(D_8012A7B6) # $a0, 0x8013 -/* 0C3BB8 800C2FB8 8484A7B6 */ lh $a0, %lo(D_8012A7B6)($a0) -/* 0C3BBC 800C2FBC 1000001A */ b .L800C3028 -/* 0C3BC0 800C2FC0 00000000 */ nop -.L800C2FC4: -/* 0C3BC4 800C2FC4 856BA7AA */ lh $t3, %lo(D_8012A7AA)($t3) -/* 0C3BC8 800C2FC8 3C028013 */ lui $v0, %hi(D_8012A7A8) # $v0, 0x8013 -/* 0C3BCC 800C2FCC 00AB0019 */ multu $a1, $t3 -/* 0C3BD0 800C2FD0 2442A7A8 */ addiu $v0, %lo(D_8012A7A8) # addiu $v0, $v0, -0x5858 -/* 0C3BD4 800C2FD4 844A0000 */ lh $t2, ($v0) -/* 0C3BD8 800C2FD8 24180100 */ li $t8, 256 -/* 0C3BDC 800C2FDC 00006012 */ mflo $t4 -/* 0C3BE0 800C2FE0 014C6821 */ addu $t5, $t2, $t4 -/* 0C3BE4 800C2FE4 A44D0000 */ sh $t5, ($v0) -/* 0C3BE8 800C2FE8 844E0000 */ lh $t6, ($v0) -/* 0C3BEC 800C2FEC 00000000 */ nop -/* 0C3BF0 800C2FF0 29C10101 */ slti $at, $t6, 0x101 -/* 0C3BF4 800C2FF4 14200002 */ bnez $at, .L800C3000 -/* 0C3BF8 800C2FF8 00000000 */ nop -/* 0C3BFC 800C2FFC A4580000 */ sh $t8, ($v0) -.L800C3000: -/* 0C3C00 800C3000 A4CF0000 */ sh $t7, ($a2) -/* 0C3C04 800C3004 84D90000 */ lh $t9, ($a2) -/* 0C3C08 800C3008 00000000 */ nop -/* 0C3C0C 800C300C 1F200006 */ bgtz $t9, .L800C3028 -/* 0C3C10 800C3010 00000000 */ nop -/* 0C3C14 800C3014 0C030B5B */ jal func_800C2D6C -/* 0C3C18 800C3018 00000000 */ nop -/* 0C3C1C 800C301C 3C048013 */ lui $a0, %hi(D_8012A7B6) # $a0, 0x8013 -/* 0C3C20 800C3020 8484A7B6 */ lh $a0, %lo(D_8012A7B6)($a0) -/* 0C3C24 800C3024 00000000 */ nop -.L800C3028: -/* 0C3C28 800C3028 10800004 */ beqz $a0, .L800C303C -/* 0C3C2C 800C302C 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C3C30 800C3030 0C030AC0 */ jal func_800C2B00 -/* 0C3C34 800C3034 00000000 */ nop -/* 0C3C38 800C3038 8FBF0014 */ lw $ra, 0x14($sp) -.L800C303C: -/* 0C3C3C 800C303C 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0C3C40 800C3040 03E00008 */ jr $ra -/* 0C3C44 800C3044 00000000 */ nop - -glabel func_800C3048 -/* 0C3C48 800C3048 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C3C4C 800C304C AFBF0014 */ sw $ra, 0x14($sp) -/* 0C3C50 800C3050 240EFFFF */ li $t6, -1 -/* 0C3C54 800C3054 3C018013 */ lui $at, %hi(D_8012A78C) # $at, 0x8013 -/* 0C3C58 800C3058 3C0500FF */ lui $a1, (0x00FF00FF >> 16) # lui $a1, 0xff -/* 0C3C5C 800C305C A42EA78C */ sh $t6, %lo(D_8012A78C)($at) -/* 0C3C60 800C3060 34A500FF */ ori $a1, (0x00FF00FF & 0xFFFF) # ori $a1, $a1, 0xff -/* 0C3C64 800C3064 0C01C327 */ jal func_80070C9C -/* 0C3C68 800C3068 24040800 */ li $a0, 2048 -/* 0C3C6C 800C306C 3C038013 */ lui $v1, %hi(D_8012A798) # $v1, 0x8013 -/* 0C3C70 800C3070 2463A798 */ addiu $v1, %lo(D_8012A798) # addiu $v1, $v1, -0x5868 -/* 0C3C74 800C3074 3C048013 */ lui $a0, %hi(D_8012A780) # $a0, 0x8013 -/* 0C3C78 800C3078 24580080 */ addiu $t8, $v0, 0x80 -/* 0C3C7C 800C307C 2484A780 */ addiu $a0, %lo(D_8012A780) # addiu $a0, $a0, -0x5880 -/* 0C3C80 800C3080 270803C0 */ addiu $t0, $t8, 0x3c0 -/* 0C3C84 800C3084 AC820000 */ sw $v0, ($a0) -/* 0C3C88 800C3088 AC780000 */ sw $t8, ($v1) -/* 0C3C8C 800C308C AC680004 */ sw $t0, 4($v1) -/* 0C3C90 800C3090 3C018013 */ lui $at, %hi(D_8012A7A4) # $at, 0x8013 -/* 0C3C94 800C3094 0C030A7C */ jal func_800C29F0 -/* 0C3C98 800C3098 AC20A7A4 */ sw $zero, %lo(D_8012A7A4)($at) -/* 0C3C9C 800C309C 0C01DBCC */ jal func_80076F30 -/* 0C3CA0 800C30A0 24040007 */ li $a0, 7 -/* 0C3CA4 800C30A4 00024883 */ sra $t1, $v0, 2 -/* 0C3CA8 800C30A8 252AFFFE */ addiu $t2, $t1, -2 -/* 0C3CAC 800C30AC 3C018013 */ lui $at, %hi(D_8012A790) # $at, 0x8013 -/* 0C3CB0 800C30B0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C3CB4 800C30B4 A42AA790 */ sh $t2, %lo(D_8012A790)($at) -/* 0C3CB8 800C30B8 3C01800E */ lui $at, %hi(D_800E3670) # $at, 0x800e -/* 0C3CBC 800C30BC 240B0001 */ li $t3, 1 -/* 0C3CC0 800C30C0 A02B3670 */ sb $t3, %lo(D_800E3670)($at) -/* 0C3CC4 800C30C4 03E00008 */ jr $ra -/* 0C3CC8 800C30C8 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_800C30CC -/* 0C3CCC 800C30CC 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0C3CD0 800C30D0 AFB10018 */ sw $s1, 0x18($sp) -/* 0C3CD4 800C30D4 3C11800E */ lui $s1, %hi(D_800E3670) # $s1, 0x800e -/* 0C3CD8 800C30D8 26313670 */ addiu $s1, %lo(D_800E3670) # addiu $s1, $s1, 0x3670 -/* 0C3CDC 800C30DC 822E0000 */ lb $t6, ($s1) -/* 0C3CE0 800C30E0 AFBF001C */ sw $ra, 0x1c($sp) -/* 0C3CE4 800C30E4 11C00011 */ beqz $t6, .L800C312C -/* 0C3CE8 800C30E8 AFB00014 */ sw $s0, 0x14($sp) -/* 0C3CEC 800C30EC 3C048013 */ lui $a0, %hi(D_8012A780) # $a0, 0x8013 -/* 0C3CF0 800C30F0 8C84A780 */ lw $a0, %lo(D_8012A780)($a0) -/* 0C3CF4 800C30F4 0C01C450 */ jal func_80071140 -/* 0C3CF8 800C30F8 00000000 */ nop -/* 0C3CFC 800C30FC A2200000 */ sb $zero, ($s1) -/* 0C3D00 800C3100 3C018013 */ lui $at, %hi(D_8012A789) # $at, 0x8013 -/* 0C3D04 800C3104 A020A789 */ sb $zero, %lo(D_8012A789)($at) -/* 0C3D08 800C3108 2411000A */ li $s1, 10 -/* 0C3D0C 800C310C 00008025 */ move $s0, $zero -.L800C3110: -/* 0C3D10 800C3110 0C0273EC */ jal func_8009CFB0 -/* 0C3D14 800C3114 00000000 */ nop -/* 0C3D18 800C3118 26100001 */ addiu $s0, $s0, 1 -/* 0C3D1C 800C311C 1611FFFC */ bne $s0, $s1, .L800C3110 -/* 0C3D20 800C3120 00000000 */ nop -/* 0C3D24 800C3124 0C030AAD */ jal func_800C2AB4 -/* 0C3D28 800C3128 00000000 */ nop -.L800C312C: -/* 0C3D2C 800C312C 8FBF001C */ lw $ra, 0x1c($sp) -/* 0C3D30 800C3130 8FB00014 */ lw $s0, 0x14($sp) -/* 0C3D34 800C3134 8FB10018 */ lw $s1, 0x18($sp) -/* 0C3D38 800C3138 03E00008 */ jr $ra -/* 0C3D3C 800C313C 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_800C3140 -/* 0C3D40 800C3140 3C01800E */ lui $at, 0x800e -/* 0C3D44 800C3144 03E00008 */ jr $ra -/* 0C3D48 800C3148 A4243674 */ sh $a0, 0x3674($at) - -glabel func_800C314C -/* 0C3D4C 800C314C 3C01800E */ lui $at, 0x800e -/* 0C3D50 800C3150 03E00008 */ jr $ra -/* 0C3D54 800C3154 AC203678 */ sw $zero, 0x3678($at) - -glabel func_800C3158 -/* 0C3D58 800C3158 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 -/* 0C3D5C 800C315C 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) -/* 0C3D60 800C3160 44856000 */ mtc1 $a1, $f12 -/* 0C3D64 800C3164 15C00010 */ bnez $t6, .L800C31A8 -/* 0C3D68 800C3168 3C01404E */ lui $at, 0x404e -/* 0C3D6C 800C316C 3C014049 */ li $at, 0x40490000 # 3.140625 -/* 0C3D70 800C3170 44813800 */ mtc1 $at, $f7 -/* 0C3D74 800C3174 44803000 */ mtc1 $zero, $f6 -/* 0C3D78 800C3178 46006121 */ cvt.d.s $f4, $f12 -/* 0C3D7C 800C317C 46262202 */ mul.d $f8, $f4, $f6 -/* 0C3D80 800C3180 444FF800 */ cfc1 $t7, $31 -/* 0C3D84 800C3184 00000000 */ nop -/* 0C3D88 800C3188 35E10003 */ ori $at, $t7, 3 -/* 0C3D8C 800C318C 38210002 */ xori $at, $at, 2 -/* 0C3D90 800C3190 44C1F800 */ ctc1 $at, $31 -/* 0C3D94 800C3194 3C01800E */ li $at, 0x800E0000 # -0.000000 -/* 0C3D98 800C3198 462042A4 */ cvt.w.d $f10, $f8 -/* 0C3D9C 800C319C 44CFF800 */ ctc1 $t7, $31 -/* 0C3DA0 800C31A0 1000000F */ b .L800C31E0 -/* 0C3DA4 800C31A4 E42A3678 */ swc1 $f10, %lo(D_800E3678)($at) -.L800C31A8: -/* 0C3DA8 800C31A8 44819800 */ mtc1 $at, $f19 -/* 0C3DAC 800C31AC 44809000 */ mtc1 $zero, $f18 -/* 0C3DB0 800C31B0 46006421 */ cvt.d.s $f16, $f12 -/* 0C3DB4 800C31B4 46328102 */ mul.d $f4, $f16, $f18 -/* 0C3DB8 800C31B8 4458F800 */ cfc1 $t8, $31 -/* 0C3DBC 800C31BC 00000000 */ nop -/* 0C3DC0 800C31C0 37010003 */ ori $at, $t8, 3 -/* 0C3DC4 800C31C4 38210002 */ xori $at, $at, 2 -/* 0C3DC8 800C31C8 44C1F800 */ ctc1 $at, $31 -/* 0C3DCC 800C31CC 3C01800E */ lui $at, %hi(D_800E3678) # $at, 0x800e -/* 0C3DD0 800C31D0 462021A4 */ cvt.w.d $f6, $f4 -/* 0C3DD4 800C31D4 44D8F800 */ ctc1 $t8, $31 -/* 0C3DD8 800C31D8 E4263678 */ swc1 $f6, %lo(D_800E3678)($at) -/* 0C3DDC 800C31DC 00000000 */ nop -.L800C31E0: -/* 0C3DE0 800C31E0 3C01800E */ lui $at, 0x800e -/* 0C3DE4 800C31E4 03E00008 */ jr $ra -/* 0C3DE8 800C31E8 AC24367C */ sw $a0, 0x367c($at) - -glabel func_800C31EC -/* 0C3DEC 800C31EC 3C0E800E */ lui $t6, %hi(D_800E3670) # $t6, 0x800e -/* 0C3DF0 800C31F0 81CE3670 */ lb $t6, %lo(D_800E3670)($t6) -/* 0C3DF4 800C31F4 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0C3DF8 800C31F8 AFB00018 */ sw $s0, 0x18($sp) -/* 0C3DFC 800C31FC 00808025 */ move $s0, $a0 -/* 0C3E00 800C3200 11C00078 */ beqz $t6, .L800C33E4 -/* 0C3E04 800C3204 AFBF001C */ sw $ra, 0x1c($sp) -/* 0C3E08 800C3208 04800076 */ bltz $a0, .L800C33E4 -/* 0C3E0C 800C320C 3C0F8013 */ lui $t7, %hi(D_8012A790) # $t7, 0x8013 -/* 0C3E10 800C3210 85EFA790 */ lh $t7, %lo(D_8012A790)($t7) -/* 0C3E14 800C3214 00000000 */ nop -/* 0C3E18 800C3218 008F082A */ slt $at, $a0, $t7 -/* 0C3E1C 800C321C 10200072 */ beqz $at, .L800C33E8 -/* 0C3E20 800C3220 24190001 */ li $t9, 1 -/* 0C3E24 800C3224 0C027AC8 */ jal func_8009EB20 -/* 0C3E28 800C3228 00000000 */ nop -/* 0C3E2C 800C322C 24010001 */ li $at, 1 -/* 0C3E30 800C3230 10410008 */ beq $v0, $at, .L800C3254 -/* 0C3E34 800C3234 24040007 */ li $a0, 7 -/* 0C3E38 800C3238 24010002 */ li $at, 2 -/* 0C3E3C 800C323C 10410007 */ beq $v0, $at, .L800C325C -/* 0C3E40 800C3240 24010003 */ li $at, 3 -/* 0C3E44 800C3244 10410007 */ beq $v0, $at, .L800C3264 -/* 0C3E48 800C3248 00000000 */ nop -/* 0C3E4C 800C324C 10000007 */ b .L800C326C -/* 0C3E50 800C3250 2401FFFE */ li $at, -2 -.L800C3254: -/* 0C3E54 800C3254 10000004 */ b .L800C3268 -/* 0C3E58 800C3258 26100055 */ addiu $s0, $s0, 0x55 -.L800C325C: -/* 0C3E5C 800C325C 10000002 */ b .L800C3268 -/* 0C3E60 800C3260 261000AA */ addiu $s0, $s0, 0xaa -.L800C3264: -/* 0C3E64 800C3264 261000FF */ addiu $s0, $s0, 0xff -.L800C3268: -/* 0C3E68 800C3268 2401FFFE */ li $at, -2 -.L800C326C: -/* 0C3E6C 800C326C 02013024 */ and $a2, $s0, $at -/* 0C3E70 800C3270 3C058013 */ lui $a1, %hi(D_8012A780) # $a1, 0x8013 -/* 0C3E74 800C3274 8CA5A780 */ lw $a1, %lo(D_8012A780)($a1) -/* 0C3E78 800C3278 0006C080 */ sll $t8, $a2, 2 -/* 0C3E7C 800C327C 03003025 */ move $a2, $t8 -/* 0C3E80 800C3280 0C01DB9A */ jal func_80076E68 -/* 0C3E84 800C3284 24070010 */ li $a3, 16 -/* 0C3E88 800C3288 3C048013 */ lui $a0, %hi(D_8012A780) # $a0, 0x8013 -/* 0C3E8C 800C328C 8C84A780 */ lw $a0, %lo(D_8012A780)($a0) -/* 0C3E90 800C3290 32190001 */ andi $t9, $s0, 1 -/* 0C3E94 800C3294 00195080 */ sll $t2, $t9, 2 -/* 0C3E98 800C3298 008A1821 */ addu $v1, $a0, $t2 -/* 0C3E9C 800C329C 8C680000 */ lw $t0, ($v1) -/* 0C3EA0 800C32A0 3C0500FF */ lui $a1, (0x00FFFFFF >> 16) # lui $a1, 0xff -/* 0C3EA4 800C32A4 8C6B0004 */ lw $t3, 4($v1) -/* 0C3EA8 800C32A8 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 0C3EAC 800C32AC 3C01FF00 */ lui $at, 0xff00 -/* 0C3EB0 800C32B0 01014824 */ and $t1, $t0, $at -/* 0C3EB4 800C32B4 01056824 */ and $t5, $t0, $a1 -/* 0C3EB8 800C32B8 01656024 */ and $t4, $t3, $a1 -/* 0C3EBC 800C32BC 11200019 */ beqz $t1, .L800C3324 -/* 0C3EC0 800C32C0 018D3823 */ subu $a3, $t4, $t5 -/* 0C3EC4 800C32C4 3C108013 */ lui $s0, %hi(D_8012A7D4) # $s0, 0x8013 -/* 0C3EC8 800C32C8 2610A7D4 */ addiu $s0, %lo(D_8012A7D4) # addiu $s0, $s0, -0x582c -/* 0C3ECC 800C32CC 8E0E0000 */ lw $t6, ($s0) -/* 0C3ED0 800C32D0 3C058013 */ lui $a1, 0x8013 -/* 0C3ED4 800C32D4 000E7880 */ sll $t7, $t6, 2 -/* 0C3ED8 800C32D8 00AF2821 */ addu $a1, $a1, $t7 -/* 0C3EDC 800C32DC 8CA5A7C8 */ lw $a1, -0x5838($a1) -/* 0C3EE0 800C32E0 24040006 */ li $a0, 6 -/* 0C3EE4 800C32E4 0C01DB9A */ jal func_80076E68 -/* 0C3EE8 800C32E8 01093026 */ xor $a2, $t0, $t1 -/* 0C3EEC 800C32EC 8E180000 */ lw $t8, ($s0) -/* 0C3EF0 800C32F0 3C0A8013 */ lui $t2, 0x8013 -/* 0C3EF4 800C32F4 0018C880 */ sll $t9, $t8, 2 -/* 0C3EF8 800C32F8 01595021 */ addu $t2, $t2, $t9 -/* 0C3EFC 800C32FC 8D4AA7C8 */ lw $t2, -0x5838($t2) -/* 0C3F00 800C3300 3C018013 */ lui $at, %hi(D_8012A7D0) # $at, 0x8013 -/* 0C3F04 800C3304 0C030B5B */ jal func_800C2D6C -/* 0C3F08 800C3308 AC2AA7D0 */ sw $t2, %lo(D_8012A7D0)($at) -/* 0C3F0C 800C330C 8E0B0000 */ lw $t3, ($s0) -/* 0C3F10 800C3310 00000000 */ nop -/* 0C3F14 800C3314 256C0001 */ addiu $t4, $t3, 1 -/* 0C3F18 800C3318 318D0001 */ andi $t5, $t4, 1 -/* 0C3F1C 800C331C 10000034 */ b .L800C33F0 -/* 0C3F20 800C3320 AE0D0000 */ sw $t5, ($s0) -.L800C3324: -/* 0C3F24 800C3324 3C108013 */ lui $s0, %hi(D_8012A7A4) # $s0, 0x8013 -/* 0C3F28 800C3328 2610A7A4 */ addiu $s0, %lo(D_8012A7A4) # addiu $s0, $s0, -0x585c -/* 0C3F2C 800C332C 8E0E0000 */ lw $t6, ($s0) -/* 0C3F30 800C3330 3C058013 */ lui $a1, 0x8013 -/* 0C3F34 800C3334 000E7880 */ sll $t7, $t6, 2 -/* 0C3F38 800C3338 00AF2821 */ addu $a1, $a1, $t7 -/* 0C3F3C 800C333C 8CA5A798 */ lw $a1, -0x5868($a1) -/* 0C3F40 800C3340 24040006 */ li $a0, 6 -/* 0C3F44 800C3344 01093026 */ xor $a2, $t0, $t1 -/* 0C3F48 800C3348 0C01DB9A */ jal func_80076E68 -/* 0C3F4C 800C334C AFA70024 */ sw $a3, 0x24($sp) -/* 0C3F50 800C3350 8E030000 */ lw $v1, ($s0) -/* 0C3F54 800C3354 3C198013 */ lui $t9, 0x8013 -/* 0C3F58 800C3358 0003C080 */ sll $t8, $v1, 2 -/* 0C3F5C 800C335C 0338C821 */ addu $t9, $t9, $t8 -/* 0C3F60 800C3360 8F39A798 */ lw $t9, -0x5868($t9) -/* 0C3F64 800C3364 3C048013 */ lui $a0, %hi(D_8012A7A0) # $a0, 0x8013 -/* 0C3F68 800C3368 246A0001 */ addiu $t2, $v1, 1 -/* 0C3F6C 800C336C 2484A7A0 */ addiu $a0, %lo(D_8012A7A0) # addiu $a0, $a0, -0x5860 -/* 0C3F70 800C3370 314B0001 */ andi $t3, $t2, 1 -/* 0C3F74 800C3374 AE0B0000 */ sw $t3, ($s0) -/* 0C3F78 800C3378 3C018013 */ lui $at, %hi(D_8012A788) # $at, 0x8013 -/* 0C3F7C 800C337C AC990000 */ sw $t9, ($a0) -/* 0C3F80 800C3380 A020A788 */ sb $zero, %lo(D_8012A788)($at) -/* 0C3F84 800C3384 3C018013 */ lui $at, %hi(D_8012A786) # $at, 0x8013 -/* 0C3F88 800C3388 A020A786 */ sb $zero, %lo(D_8012A786)($at) -/* 0C3F8C 800C338C 3C018013 */ lui $at, %hi(D_8012A784) # $at, 0x8013 -/* 0C3F90 800C3390 A020A784 */ sb $zero, %lo(D_8012A784)($at) -/* 0C3F94 800C3394 3C018013 */ lui $at, %hi(D_8012A787) # $at, 0x8013 -/* 0C3F98 800C3398 240C0001 */ li $t4, 1 -/* 0C3F9C 800C339C A02CA787 */ sb $t4, %lo(D_8012A787)($at) -/* 0C3FA0 800C33A0 8FA70024 */ lw $a3, 0x24($sp) -/* 0C3FA4 800C33A4 8C8E0000 */ lw $t6, ($a0) -/* 0C3FA8 800C33A8 3C058013 */ lui $a1, %hi(D_8012A789) # $a1, 0x8013 -/* 0C3FAC 800C33AC 240D0002 */ li $t5, 2 -/* 0C3FB0 800C33B0 01C77821 */ addu $t7, $t6, $a3 -/* 0C3FB4 800C33B4 24A5A789 */ addiu $a1, %lo(D_8012A789) # addiu $a1, $a1, -0x5877 -/* 0C3FB8 800C33B8 A1ED0000 */ sb $t5, ($t7) -/* 0C3FBC 800C33BC 90B80000 */ lbu $t8, ($a1) -/* 0C3FC0 800C33C0 00000000 */ nop -/* 0C3FC4 800C33C4 1700000A */ bnez $t8, .L800C33F0 -/* 0C3FC8 800C33C8 3C018013 */ lui $at, %hi(D_8012A78E) # $at, 0x8013 -/* 0C3FCC 800C33CC A420A78E */ sh $zero, %lo(D_8012A78E)($at) -/* 0C3FD0 800C33D0 24020001 */ li $v0, 1 -/* 0C3FD4 800C33D4 3C018013 */ lui $at, %hi(D_8012A78A) # $at, 0x8013 -/* 0C3FD8 800C33D8 A022A78A */ sb $v0, %lo(D_8012A78A)($at) -/* 0C3FDC 800C33DC 10000004 */ b .L800C33F0 -/* 0C3FE0 800C33E0 A0A20000 */ sb $v0, ($a1) -.L800C33E4: -/* 0C3FE4 800C33E4 24190001 */ li $t9, 1 -.L800C33E8: -/* 0C3FE8 800C33E8 3C018013 */ lui $at, %hi(D_8012A784) # $at, 0x8013 -/* 0C3FEC 800C33EC A039A784 */ sb $t9, %lo(D_8012A784)($at) -.L800C33F0: -/* 0C3FF0 800C33F0 8FBF001C */ lw $ra, 0x1c($sp) -/* 0C3FF4 800C33F4 8FB00018 */ lw $s0, 0x18($sp) -/* 0C3FF8 800C33F8 03E00008 */ jr $ra -/* 0C3FFC 800C33FC 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_800C3400 -/* 0C4000 800C3400 3C0E800E */ lui $t6, %hi(D_800E3670) # $t6, 0x800e -/* 0C4004 800C3404 81CE3670 */ lb $t6, %lo(D_800E3670)($t6) -/* 0C4008 800C3408 00001825 */ move $v1, $zero -/* 0C400C 800C340C 11C0000A */ beqz $t6, .L800C3438 -/* 0C4010 800C3410 3C0F8013 */ lui $t7, %hi(D_8012A789) # $t7, 0x8013 -/* 0C4014 800C3414 91EFA789 */ lbu $t7, %lo(D_8012A789)($t7) -/* 0C4018 800C3418 3C188013 */ lui $t8, %hi(D_8012A788) # $t8, 0x8013 -/* 0C401C 800C341C 11E00006 */ beqz $t7, .L800C3438 -/* 0C4020 800C3420 00000000 */ nop -/* 0C4024 800C3424 8318A788 */ lb $t8, %lo(D_8012A788)($t8) -/* 0C4028 800C3428 24030001 */ li $v1, 1 -/* 0C402C 800C342C 13000002 */ beqz $t8, .L800C3438 -/* 0C4030 800C3430 00000000 */ nop -/* 0C4034 800C3434 24030002 */ li $v1, 2 -.L800C3438: -/* 0C4038 800C3438 03E00008 */ jr $ra -/* 0C403C 800C343C 00601025 */ move $v0, $v1 - -glabel func_800C3440 -/* 0C4040 800C3440 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0C4044 800C3444 3C0E800E */ lui $t6, %hi(D_800E3670) # $t6, 0x800e -/* 0C4048 800C3448 81CE3670 */ lb $t6, %lo(D_800E3670)($t6) -/* 0C404C 800C344C AFBF001C */ sw $ra, 0x1c($sp) -/* 0C4050 800C3450 AFB10018 */ sw $s1, 0x18($sp) -/* 0C4054 800C3454 AFB00014 */ sw $s0, 0x14($sp) -/* 0C4058 800C3458 11C0003D */ beqz $t6, .L800C3550 -/* 0C405C 800C345C AFA40020 */ sw $a0, 0x20($sp) -/* 0C4060 800C3460 0C01BAA8 */ jal func_8006EAA0 -/* 0C4064 800C3464 00000000 */ nop -/* 0C4068 800C3468 1440000D */ bnez $v0, .L800C34A0 -/* 0C406C 800C346C 3C10800E */ lui $s0, %hi(D_800E3678) # $s0, 0x800e -/* 0C4070 800C3470 26103678 */ addiu $s0, %lo(D_800E3678) # addiu $s0, $s0, 0x3678 -/* 0C4074 800C3474 8E020000 */ lw $v0, ($s0) -/* 0C4078 800C3478 8FAF0020 */ lw $t7, 0x20($sp) -/* 0C407C 800C347C 18400008 */ blez $v0, .L800C34A0 -/* 0C4080 800C3480 004FC023 */ subu $t8, $v0, $t7 -/* 0C4084 800C3484 1F000006 */ bgtz $t8, .L800C34A0 -/* 0C4088 800C3488 AE180000 */ sw $t8, ($s0) -/* 0C408C 800C348C 3C04800E */ lui $a0, %hi(D_800E367C) # $a0, 0x800e -/* 0C4090 800C3490 8C84367C */ lw $a0, %lo(D_800E367C)($a0) -/* 0C4094 800C3494 0C030C7B */ jal func_800C31EC -/* 0C4098 800C3498 00000000 */ nop -/* 0C409C 800C349C AE000000 */ sw $zero, ($s0) -.L800C34A0: -/* 0C40A0 800C34A0 8FA40020 */ lw $a0, 0x20($sp) -/* 0C40A4 800C34A4 0C030BC7 */ jal func_800C2F1C -/* 0C40A8 800C34A8 00000000 */ nop -/* 0C40AC 800C34AC 3C088013 */ lui $t0, %hi(D_8012A789) # $t0, 0x8013 -/* 0C40B0 800C34B0 9108A789 */ lbu $t0, %lo(D_8012A789)($t0) -/* 0C40B4 800C34B4 00000000 */ nop -/* 0C40B8 800C34B8 11000026 */ beqz $t0, .L800C3554 -/* 0C40BC 800C34BC 8FBF001C */ lw $ra, 0x1c($sp) -/* 0C40C0 800C34C0 0C0168EC */ jal func_8005A3B0 -/* 0C40C4 800C34C4 00000000 */ nop -/* 0C40C8 800C34C8 3C118013 */ lui $s1, %hi(D_8012A786) # $s1, 0x8013 -/* 0C40CC 800C34CC 2631A786 */ addiu $s1, %lo(D_8012A786) # addiu $s1, $s1, -0x587a -/* 0C40D0 800C34D0 82220000 */ lb $v0, ($s1) -/* 0C40D4 800C34D4 3C108013 */ lui $s0, %hi(D_8012A785) # $s0, 0x8013 -/* 0C40D8 800C34D8 1040001B */ beqz $v0, .L800C3548 -/* 0C40DC 800C34DC 2610A785 */ addiu $s0, %lo(D_8012A785) # addiu $s0, $s0, -0x587b -/* 0C40E0 800C34E0 82090000 */ lb $t1, ($s0) -/* 0C40E4 800C34E4 8FAA0020 */ lw $t2, 0x20($sp) -/* 0C40E8 800C34E8 00000000 */ nop -/* 0C40EC 800C34EC 012A5823 */ subu $t3, $t1, $t2 -/* 0C40F0 800C34F0 A20B0000 */ sb $t3, ($s0) -/* 0C40F4 800C34F4 820C0000 */ lb $t4, ($s0) -/* 0C40F8 800C34F8 00000000 */ nop -/* 0C40FC 800C34FC 0581000E */ bgez $t4, .L800C3538 -/* 0C4100 800C3500 00000000 */ nop -.L800C3504: -/* 0C4104 800C3504 0C00322D */ jal func_8000C8B4 -/* 0C4108 800C3508 2404003C */ li $a0, 60 -/* 0C410C 800C350C 820D0000 */ lb $t5, ($s0) -/* 0C4110 800C3510 822F0000 */ lb $t7, ($s1) -/* 0C4114 800C3514 01A27021 */ addu $t6, $t5, $v0 -/* 0C4118 800C3518 A20E0000 */ sb $t6, ($s0) -/* 0C411C 800C351C 82190000 */ lb $t9, ($s0) -/* 0C4120 800C3520 25F8FFFF */ addiu $t8, $t7, -1 -/* 0C4124 800C3524 0720FFF7 */ bltz $t9, .L800C3504 -/* 0C4128 800C3528 A2380000 */ sb $t8, ($s1) -/* 0C412C 800C352C 3C028013 */ lui $v0, %hi(D_8012A786) # $v0, 0x8013 -/* 0C4130 800C3530 8042A786 */ lb $v0, %lo(D_8012A786)($v0) -/* 0C4134 800C3534 00000000 */ nop -.L800C3538: -/* 0C4138 800C3538 1C400003 */ bgtz $v0, .L800C3548 -/* 0C413C 800C353C 24080001 */ li $t0, 1 -/* 0C4140 800C3540 3C018013 */ lui $at, %hi(D_8012A784) # $at, 0x8013 -/* 0C4144 800C3544 A028A784 */ sb $t0, %lo(D_8012A784)($at) -.L800C3548: -/* 0C4148 800C3548 0C0273FB */ jal func_8009CFEC -/* 0C414C 800C354C 24040003 */ li $a0, 3 -.L800C3550: -/* 0C4150 800C3550 8FBF001C */ lw $ra, 0x1c($sp) -.L800C3554: -/* 0C4154 800C3554 8FB00014 */ lw $s0, 0x14($sp) -/* 0C4158 800C3558 8FB10018 */ lw $s1, 0x18($sp) -/* 0C415C 800C355C 03E00008 */ jr $ra -/* 0C4160 800C3560 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_800C3564 -/* 0C4164 800C3564 27BDFF78 */ addiu $sp, $sp, -0x88 -/* 0C4168 800C3568 AFBF002C */ sw $ra, 0x2c($sp) -/* 0C416C 800C356C 240E000A */ li $t6, 10 -/* 0C4170 800C3570 240F000F */ li $t7, 15 -/* 0C4174 800C3574 241800B4 */ li $t8, 180 -/* 0C4178 800C3578 2419007D */ li $t9, 125 -/* 0C417C 800C357C 24080004 */ li $t0, 4 -/* 0C4180 800C3580 24090005 */ li $t1, 5 -/* 0C4184 800C3584 240A000A */ li $t2, 10 -/* 0C4188 800C3588 240B000F */ li $t3, 15 -/* 0C418C 800C358C 240C007D */ li $t4, 125 -/* 0C4190 800C3590 AFB30028 */ sw $s3, 0x28($sp) -/* 0C4194 800C3594 AFB20024 */ sw $s2, 0x24($sp) -/* 0C4198 800C3598 AFB10020 */ sw $s1, 0x20($sp) -/* 0C419C 800C359C AFB0001C */ sw $s0, 0x1c($sp) -/* 0C41A0 800C35A0 AFA00040 */ sw $zero, 0x40($sp) -/* 0C41A4 800C35A4 AFB90050 */ sw $t9, 0x50($sp) -/* 0C41A8 800C35A8 AFB8004C */ sw $t8, 0x4c($sp) -/* 0C41AC 800C35AC AFAF0048 */ sw $t7, 0x48($sp) -/* 0C41B0 800C35B0 AFAE0044 */ sw $t6, 0x44($sp) -/* 0C41B4 800C35B4 AFA80064 */ sw $t0, 0x64($sp) -/* 0C41B8 800C35B8 AFA00054 */ sw $zero, 0x54($sp) -/* 0C41BC 800C35BC AFA00058 */ sw $zero, 0x58($sp) -/* 0C41C0 800C35C0 AFA0005C */ sw $zero, 0x5c($sp) -/* 0C41C4 800C35C4 AFA00060 */ sw $zero, 0x60($sp) -/* 0C41C8 800C35C8 AFAB0070 */ sw $t3, 0x70($sp) -/* 0C41CC 800C35CC AFAA006C */ sw $t2, 0x6c($sp) -/* 0C41D0 800C35D0 AFA90068 */ sw $t1, 0x68($sp) -/* 0C41D4 800C35D4 AFAC0010 */ sw $t4, 0x10($sp) -/* 0C41D8 800C35D8 24040001 */ li $a0, 1 -/* 0C41DC 800C35DC 2405000A */ li $a1, 10 -/* 0C41E0 800C35E0 2406000F */ li $a2, 15 -/* 0C41E4 800C35E4 0C0313B7 */ jal func_800C4EDC -/* 0C41E8 800C35E8 240700B4 */ li $a3, 180 -/* 0C41EC 800C35EC 8FA50040 */ lw $a1, 0x40($sp) -/* 0C41F0 800C35F0 0C0313DF */ jal func_800C4F7C -/* 0C41F4 800C35F4 24040001 */ li $a0, 1 -/* 0C41F8 800C35F8 240D0080 */ li $t5, 128 -/* 0C41FC 800C35FC AFAD0010 */ sw $t5, 0x10($sp) -/* 0C4200 800C3600 24040001 */ li $a0, 1 -/* 0C4204 800C3604 00002825 */ move $a1, $zero -/* 0C4208 800C3608 24060010 */ li $a2, 16 -/* 0C420C 800C360C 0C0313EF */ jal func_800C4FBC -/* 0C4210 800C3610 24070010 */ li $a3, 16 -/* 0C4214 800C3614 8FAE0060 */ lw $t6, 0x60($sp) -/* 0C4218 800C3618 8FA50054 */ lw $a1, 0x54($sp) -/* 0C421C 800C361C 8FA60058 */ lw $a2, 0x58($sp) -/* 0C4220 800C3620 8FA7005C */ lw $a3, 0x5c($sp) -/* 0C4224 800C3624 240F00FF */ li $t7, 255 -/* 0C4228 800C3628 AFAF0014 */ sw $t7, 0x14($sp) -/* 0C422C 800C362C 24040001 */ li $a0, 1 -/* 0C4230 800C3630 0C031400 */ jal func_800C5000 -/* 0C4234 800C3634 AFAE0010 */ sw $t6, 0x10($sp) -/* 0C4238 800C3638 3C048013 */ lui $a0, %hi(D_8012A78E) # $a0, 0x8013 -/* 0C423C 800C363C 8484A78E */ lh $a0, %lo(D_8012A78E)($a0) -/* 0C4240 800C3640 00008825 */ move $s1, $zero -/* 0C4244 800C3644 10800023 */ beqz $a0, .L800C36D4 -/* 0C4248 800C3648 00003025 */ move $a2, $zero -/* 0C424C 800C364C 3C028013 */ lui $v0, %hi(D_8012A7A0) # $v0, 0x8013 -/* 0C4250 800C3650 8C42A7A0 */ lw $v0, %lo(D_8012A7A0)($v0) -/* 0C4254 800C3654 24120002 */ li $s2, 2 -/* 0C4258 800C3658 90580000 */ lbu $t8, ($v0) -/* 0C425C 800C365C 00408021 */ addu $s0, $v0, $zero -/* 0C4260 800C3660 1258001C */ beq $s2, $t8, .L800C36D4 -/* 0C4264 800C3664 330300FF */ andi $v1, $t8, 0xff -/* 0C4268 800C3668 27B30040 */ addiu $s3, $sp, 0x40 -/* 0C426C 800C366C 28610003 */ slti $at, $v1, 3 -.L800C3670: -/* 0C4270 800C3670 1420000E */ bnez $at, .L800C36AC -/* 0C4274 800C3674 2861000D */ slti $at, $v1, 0xd -/* 0C4278 800C3678 1020000C */ beqz $at, .L800C36AC -/* 0C427C 800C367C 02602825 */ move $a1, $s3 -/* 0C4280 800C3680 02202025 */ move $a0, $s1 -/* 0C4284 800C3684 0C030E2D */ jal func_800C38B4 -/* 0C4288 800C3688 AFA6007C */ sw $a2, 0x7c($sp) -/* 0C428C 800C368C 3C198013 */ lui $t9, %hi(D_8012A7A0) # $t9, 0x8013 -/* 0C4290 800C3690 8F39A7A0 */ lw $t9, %lo(D_8012A7A0)($t9) -/* 0C4294 800C3694 3C048013 */ lui $a0, %hi(D_8012A78E) # $a0, 0x8013 -/* 0C4298 800C3698 03228021 */ addu $s0, $t9, $v0 -/* 0C429C 800C369C 92030000 */ lbu $v1, ($s0) -/* 0C42A0 800C36A0 8484A78E */ lh $a0, %lo(D_8012A78E)($a0) -/* 0C42A4 800C36A4 8FA6007C */ lw $a2, 0x7c($sp) -/* 0C42A8 800C36A8 00408825 */ move $s1, $v0 -.L800C36AC: -/* 0C42AC 800C36AC 24010001 */ li $at, 1 -/* 0C42B0 800C36B0 14610002 */ bne $v1, $at, .L800C36BC -/* 0C42B4 800C36B4 26310001 */ addiu $s1, $s1, 1 -/* 0C42B8 800C36B8 24C60001 */ addiu $a2, $a2, 1 -.L800C36BC: -/* 0C42BC 800C36BC 10C40005 */ beq $a2, $a0, .L800C36D4 -/* 0C42C0 800C36C0 26100001 */ addiu $s0, $s0, 1 -/* 0C42C4 800C36C4 92030000 */ lbu $v1, ($s0) -/* 0C42C8 800C36C8 00000000 */ nop -/* 0C42CC 800C36CC 1643FFE8 */ bne $s2, $v1, .L800C3670 -/* 0C42D0 800C36D0 28610003 */ slti $at, $v1, 3 -.L800C36D4: -/* 0C42D4 800C36D4 3C088013 */ lui $t0, %hi(D_8012A7A0) # $t0, 0x8013 -/* 0C42D8 800C36D8 8D08A7A0 */ lw $t0, %lo(D_8012A7A0)($t0) -/* 0C42DC 800C36DC 27B30040 */ addiu $s3, $sp, 0x40 -/* 0C42E0 800C36E0 01114821 */ addu $t1, $t0, $s1 -/* 0C42E4 800C36E4 91230000 */ lbu $v1, ($t1) -/* 0C42E8 800C36E8 00000000 */ nop -/* 0C42EC 800C36EC 28610003 */ slti $at, $v1, 3 -/* 0C42F0 800C36F0 14200006 */ bnez $at, .L800C370C -/* 0C42F4 800C36F4 2861000D */ slti $at, $v1, 0xd -/* 0C42F8 800C36F8 10200004 */ beqz $at, .L800C370C -/* 0C42FC 800C36FC 02202025 */ move $a0, $s1 -/* 0C4300 800C3700 0C030E2D */ jal func_800C38B4 -/* 0C4304 800C3704 02602825 */ move $a1, $s3 -/* 0C4308 800C3708 00408825 */ move $s1, $v0 -.L800C370C: -/* 0C430C 800C370C 24120001 */ li $s2, 1 -.L800C3710: -/* 0C4310 800C3710 3C0A8013 */ lui $t2, %hi(D_8012A7A0) # $t2, 0x8013 -/* 0C4314 800C3714 8D4AA7A0 */ lw $t2, %lo(D_8012A7A0)($t2) -/* 0C4318 800C3718 8FAB0064 */ lw $t3, 0x64($sp) -/* 0C431C 800C371C 24040001 */ li $a0, 1 -/* 0C4320 800C3720 15600004 */ bnez $t3, .L800C3734 -/* 0C4324 800C3724 01518021 */ addu $s0, $t2, $s1 -/* 0C4328 800C3728 8FA50068 */ lw $a1, 0x68($sp) -/* 0C432C 800C372C 10000007 */ b .L800C374C -/* 0C4330 800C3730 00000000 */ nop -.L800C3734: -/* 0C4334 800C3734 8FAC004C */ lw $t4, 0x4c($sp) -/* 0C4338 800C3738 8FAD0044 */ lw $t5, 0x44($sp) -/* 0C433C 800C373C 00000000 */ nop -/* 0C4340 800C3740 018D2823 */ subu $a1, $t4, $t5 -/* 0C4344 800C3744 00057043 */ sra $t6, $a1, 1 -/* 0C4348 800C3748 01C02825 */ move $a1, $t6 -.L800C374C: -/* 0C434C 800C374C 3C0F800E */ lui $t7, %hi(D_800E3674) # $t7, 0x800e -/* 0C4350 800C3750 85EF3674 */ lh $t7, %lo(D_800E3674)($t7) -/* 0C4354 800C3754 8FB80064 */ lw $t8, 0x64($sp) -/* 0C4358 800C3758 8FA6006C */ lw $a2, 0x6c($sp) -/* 0C435C 800C375C 02003825 */ move $a3, $s0 -/* 0C4360 800C3760 AFAF0010 */ sw $t7, 0x10($sp) -/* 0C4364 800C3764 0C03145A */ jal func_800C5168 -/* 0C4368 800C3768 AFB80014 */ sw $t8, 0x14($sp) -/* 0C436C 800C376C 8FB9006C */ lw $t9, 0x6c($sp) -/* 0C4370 800C3770 8FA80070 */ lw $t0, 0x70($sp) -/* 0C4374 800C3774 3C0A8013 */ lui $t2, %hi(D_8012A7A0) # $t2, 0x8013 -/* 0C4378 800C3778 8D4AA7A0 */ lw $t2, %lo(D_8012A7A0)($t2) -/* 0C437C 800C377C 03284821 */ addu $t1, $t9, $t0 -/* 0C4380 800C3780 AFA9006C */ sw $t1, 0x6c($sp) -/* 0C4384 800C3784 01518021 */ addu $s0, $t2, $s1 -/* 0C4388 800C3788 92030000 */ lbu $v1, ($s0) -/* 0C438C 800C378C 00000000 */ nop -/* 0C4390 800C3790 18600005 */ blez $v1, .L800C37A8 -/* 0C4394 800C3794 00000000 */ nop -.L800C3798: -/* 0C4398 800C3798 92030001 */ lbu $v1, 1($s0) -/* 0C439C 800C379C 26310001 */ addiu $s1, $s1, 1 -/* 0C43A0 800C37A0 1C60FFFD */ bgtz $v1, .L800C3798 -/* 0C43A4 800C37A4 26100001 */ addiu $s0, $s0, 1 -.L800C37A8: -/* 0C43A8 800C37A8 14600006 */ bnez $v1, .L800C37C4 -/* 0C43AC 800C37AC 28610003 */ slti $at, $v1, 3 -.L800C37B0: -/* 0C43B0 800C37B0 92030001 */ lbu $v1, 1($s0) -/* 0C43B4 800C37B4 26310001 */ addiu $s1, $s1, 1 -/* 0C43B8 800C37B8 1060FFFD */ beqz $v1, .L800C37B0 -/* 0C43BC 800C37BC 26100001 */ addiu $s0, $s0, 1 -/* 0C43C0 800C37C0 28610003 */ slti $at, $v1, 3 -.L800C37C4: -/* 0C43C4 800C37C4 10200003 */ beqz $at, .L800C37D4 -/* 0C43C8 800C37C8 28610003 */ slti $at, $v1, 3 -/* 0C43CC 800C37CC 00009025 */ move $s2, $zero -/* 0C43D0 800C37D0 28610003 */ slti $at, $v1, 3 -.L800C37D4: -/* 0C43D4 800C37D4 14200006 */ bnez $at, .L800C37F0 -/* 0C43D8 800C37D8 2861000D */ slti $at, $v1, 0xd -/* 0C43DC 800C37DC 10200004 */ beqz $at, .L800C37F0 -/* 0C43E0 800C37E0 02202025 */ move $a0, $s1 -/* 0C43E4 800C37E4 0C030E2D */ jal func_800C38B4 -/* 0C43E8 800C37E8 02602825 */ move $a1, $s3 -/* 0C43EC 800C37EC 00408825 */ move $s1, $v0 -.L800C37F0: -/* 0C43F0 800C37F0 1640FFC7 */ bnez $s2, .L800C3710 -/* 0C43F4 800C37F4 00000000 */ nop -/* 0C43F8 800C37F8 0C01A955 */ jal func_8006A554 -/* 0C43FC 800C37FC 00002025 */ move $a0, $zero -/* 0C4400 800C3800 3C0B8013 */ lui $t3, %hi(D_8012A787) # $t3, 0x8013 -/* 0C4404 800C3804 816BA787 */ lb $t3, %lo(D_8012A787)($t3) -/* 0C4408 800C3808 00401825 */ move $v1, $v0 -/* 0C440C 800C380C 15600002 */ bnez $t3, .L800C3818 -/* 0C4410 800C3810 3C108013 */ lui $s0, %hi(D_8012A78A) # $s0, 0x8013 -/* 0C4414 800C3814 00001825 */ move $v1, $zero -.L800C3818: -/* 0C4418 800C3818 2610A78A */ addiu $s0, %lo(D_8012A78A) # addiu $s0, $s0, -0x5876 -/* 0C441C 800C381C 920C0000 */ lbu $t4, ($s0) -/* 0C4420 800C3820 306D8000 */ andi $t5, $v1, 0x8000 -/* 0C4424 800C3824 1580001B */ bnez $t4, .L800C3894 -/* 0C4428 800C3828 8FBF002C */ lw $ra, 0x2c($sp) -/* 0C442C 800C382C 15A00004 */ bnez $t5, .L800C3840 -/* 0C4430 800C3830 3C0E8013 */ lui $t6, %hi(D_8012A784) # $t6, 0x8013 -/* 0C4434 800C3834 81CEA784 */ lb $t6, %lo(D_8012A784)($t6) -/* 0C4438 800C3838 00000000 */ nop -/* 0C443C 800C383C 11C00014 */ beqz $t6, .L800C3890 -.L800C3840: -/* 0C4440 800C3840 3C0F8013 */ lui $t7, %hi(D_8012A7A0) # $t7, 0x8013 -/* 0C4444 800C3844 8DEFA7A0 */ lw $t7, %lo(D_8012A7A0)($t7) -/* 0C4448 800C3848 24010001 */ li $at, 1 -/* 0C444C 800C384C 01F1C021 */ addu $t8, $t7, $s1 -/* 0C4450 800C3850 93190000 */ lbu $t9, ($t8) -/* 0C4454 800C3854 3C088013 */ lui $t0, %hi(D_8012A78E) # $t0, 0x8013 -/* 0C4458 800C3858 17210006 */ bne $t9, $at, .L800C3874 -/* 0C445C 800C385C 24040003 */ li $a0, 3 -/* 0C4460 800C3860 8508A78E */ lh $t0, %lo(D_8012A78E)($t0) -/* 0C4464 800C3864 3C018013 */ lui $at, %hi(D_8012A78E) # $at, 0x8013 -/* 0C4468 800C3868 25090001 */ addiu $t1, $t0, 1 -/* 0C446C 800C386C 10000004 */ b .L800C3880 -/* 0C4470 800C3870 A429A78E */ sh $t1, %lo(D_8012A78E)($at) -.L800C3874: -/* 0C4474 800C3874 3C018013 */ lui $at, %hi(D_8012A789) # $at, 0x8013 -/* 0C4478 800C3878 0C0273DA */ jal func_8009CF68 -/* 0C447C 800C387C A020A789 */ sb $zero, %lo(D_8012A789)($at) -.L800C3880: -/* 0C4480 800C3880 3C018013 */ lui $at, %hi(D_8012A784) # $at, 0x8013 -/* 0C4484 800C3884 A020A784 */ sb $zero, %lo(D_8012A784)($at) -/* 0C4488 800C3888 3C018013 */ lui $at, %hi(D_8012A786) # $at, 0x8013 -/* 0C448C 800C388C A020A786 */ sb $zero, %lo(D_8012A786)($at) -.L800C3890: -/* 0C4490 800C3890 8FBF002C */ lw $ra, 0x2c($sp) -.L800C3894: -/* 0C4494 800C3894 A2000000 */ sb $zero, ($s0) -/* 0C4498 800C3898 8FB0001C */ lw $s0, 0x1c($sp) -/* 0C449C 800C389C 8FB10020 */ lw $s1, 0x20($sp) -/* 0C44A0 800C38A0 8FB20024 */ lw $s2, 0x24($sp) -/* 0C44A4 800C38A4 8FB30028 */ lw $s3, 0x28($sp) -/* 0C44A8 800C38A8 27BD0088 */ addiu $sp, $sp, 0x88 -/* 0C44AC 800C38AC 03E00008 */ jr $ra -/* 0C44B0 800C38B0 24020001 */ li $v0, 1 - -glabel func_800C38B4 -/* 0C44B4 800C38B4 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 0C44B8 800C38B8 AFB3002C */ sw $s3, 0x2c($sp) -/* 0C44BC 800C38BC 3C138013 */ lui $s3, %hi(D_8012A7A0) # $s3, 0x8013 -/* 0C44C0 800C38C0 2673A7A0 */ addiu $s3, %lo(D_8012A7A0) # addiu $s3, $s3, -0x5860 -/* 0C44C4 800C38C4 8E6E0000 */ lw $t6, ($s3) -/* 0C44C8 800C38C8 AFB00020 */ sw $s0, 0x20($sp) -/* 0C44CC 800C38CC AFBF0044 */ sw $ra, 0x44($sp) -/* 0C44D0 800C38D0 AFBE0040 */ sw $fp, 0x40($sp) -/* 0C44D4 800C38D4 AFB7003C */ sw $s7, 0x3c($sp) -/* 0C44D8 800C38D8 AFB60038 */ sw $s6, 0x38($sp) -/* 0C44DC 800C38DC AFB50034 */ sw $s5, 0x34($sp) -/* 0C44E0 800C38E0 AFB40030 */ sw $s4, 0x30($sp) -/* 0C44E4 800C38E4 AFB20028 */ sw $s2, 0x28($sp) -/* 0C44E8 800C38E8 AFB10024 */ sw $s1, 0x24($sp) -/* 0C44EC 800C38EC 01C48021 */ addu $s0, $t6, $a0 -/* 0C44F0 800C38F0 92020000 */ lbu $v0, ($s0) -/* 0C44F4 800C38F4 00808825 */ move $s1, $a0 -/* 0C44F8 800C38F8 28410003 */ slti $at, $v0, 3 -/* 0C44FC 800C38FC 142000B2 */ bnez $at, .L800C3BC8 -/* 0C4500 800C3900 00A09025 */ move $s2, $a1 -/* 0C4504 800C3904 2841000D */ slti $at, $v0, 0xd -/* 0C4508 800C3908 102000AF */ beqz $at, .L800C3BC8 -/* 0C450C 800C390C 241E0004 */ li $fp, 4 -/* 0C4510 800C3910 3C178013 */ lui $s7, %hi(D_8012A785) # $s7, 0x8013 -/* 0C4514 800C3914 3C168013 */ lui $s6, %hi(D_8012A787) # $s6, 0x8013 -/* 0C4518 800C3918 3C158013 */ lui $s5, %hi(D_8012A788) # $s5, 0x8013 -/* 0C451C 800C391C 3C148013 */ lui $s4, %hi(D_8012A786) # $s4, 0x8013 -/* 0C4520 800C3920 2694A786 */ addiu $s4, %lo(D_8012A786) # addiu $s4, $s4, -0x587a -/* 0C4524 800C3924 26B5A788 */ addiu $s5, %lo(D_8012A788) # addiu $s5, $s5, -0x5878 -/* 0C4528 800C3928 26D6A787 */ addiu $s6, %lo(D_8012A787) # addiu $s6, $s6, -0x5879 -/* 0C452C 800C392C 26F7A785 */ addiu $s7, %lo(D_8012A785) # addiu $s7, $s7, -0x587b -/* 0C4530 800C3930 244FFFFD */ addiu $t7, $v0, -3 -.L800C3934: -/* 0C4534 800C3934 2DE1000A */ sltiu $at, $t7, 0xa -/* 0C4538 800C3938 1020009E */ beqz $at, .L800C3BB4 -/* 0C453C 800C393C 000F7880 */ sll $t7, $t7, 2 -/* 0C4540 800C3940 3C01800F */ lui $at, 0x800f -/* 0C4544 800C3944 002F0821 */ addu $at, $at, $t7 -/* 0C4548 800C3948 8C2F9330 */ lw $t7, -0x6cd0($at) -/* 0C454C 800C394C 00000000 */ nop -/* 0C4550 800C3950 01E00008 */ jr $t7 -/* 0C4554 800C3954 00000000 */ nop -/* 0C4558 800C3958 92050001 */ lbu $a1, 1($s0) -/* 0C455C 800C395C 26310002 */ addiu $s1, $s1, 2 -/* 0C4560 800C3960 24040001 */ li $a0, 1 -/* 0C4564 800C3964 0C0313DF */ jal func_800C4F7C -/* 0C4568 800C3968 AE450000 */ sw $a1, ($s2) -/* 0C456C 800C396C 8E790000 */ lw $t9, ($s3) -/* 0C4570 800C3970 00000000 */ nop -/* 0C4574 800C3974 03318021 */ addu $s0, $t9, $s1 -/* 0C4578 800C3978 92020000 */ lbu $v0, ($s0) -/* 0C457C 800C397C 1000008E */ b .L800C3BB8 -/* 0C4580 800C3980 28410003 */ slti $at, $v0, 3 -/* 0C4584 800C3984 92090001 */ lbu $t1, 1($s0) -/* 0C4588 800C3988 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 -/* 0C458C 800C398C AE490004 */ sw $t1, 4($s2) -/* 0C4590 800C3990 8E6A0000 */ lw $t2, ($s3) -/* 0C4594 800C3994 240100F0 */ li $at, 240 -/* 0C4598 800C3998 022A5821 */ addu $t3, $s1, $t2 -/* 0C459C 800C399C 916D0002 */ lbu $t5, 2($t3) -/* 0C45A0 800C39A0 00000000 */ nop -/* 0C45A4 800C39A4 AE4D0008 */ sw $t5, 8($s2) -/* 0C45A8 800C39A8 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) -/* 0C45AC 800C39AC 000D7940 */ sll $t7, $t5, 5 -/* 0C45B0 800C39B0 15C00007 */ bnez $t6, .L800C39D0 -/* 0C45B4 800C39B4 01ED7821 */ addu $t7, $t7, $t5 -/* 0C45B8 800C39B8 000F78C0 */ sll $t7, $t7, 3 -/* 0C45BC 800C39BC 01E1001A */ div $zero, $t7, $at -/* 0C45C0 800C39C0 00003012 */ mflo $a2 -/* 0C45C4 800C39C4 AE460008 */ sw $a2, 8($s2) -/* 0C45C8 800C39C8 10000003 */ b .L800C39D8 -/* 0C45CC 800C39CC 00CD1023 */ subu $v0, $a2, $t5 -.L800C39D0: -/* 0C45D0 800C39D0 8E460008 */ lw $a2, 8($s2) -/* 0C45D4 800C39D4 00001025 */ move $v0, $zero -.L800C39D8: -/* 0C45D8 800C39D8 8E790000 */ lw $t9, ($s3) -/* 0C45DC 800C39DC 8E450004 */ lw $a1, 4($s2) -/* 0C45E0 800C39E0 02394021 */ addu $t0, $s1, $t9 -/* 0C45E4 800C39E4 910A0003 */ lbu $t2, 3($t0) -/* 0C45E8 800C39E8 24040001 */ li $a0, 1 -/* 0C45EC 800C39EC 25470041 */ addiu $a3, $t2, 0x41 -/* 0C45F0 800C39F0 AE47000C */ sw $a3, 0xc($s2) -/* 0C45F4 800C39F4 8E6C0000 */ lw $t4, ($s3) -/* 0C45F8 800C39F8 00000000 */ nop -/* 0C45FC 800C39FC 022C6821 */ addu $t5, $s1, $t4 -/* 0C4600 800C3A00 91AF0004 */ lbu $t7, 4($t5) -/* 0C4604 800C3A04 26310005 */ addiu $s1, $s1, 5 -/* 0C4608 800C3A08 01E2C021 */ addu $t8, $t7, $v0 -/* 0C460C 800C3A0C AE580010 */ sw $t8, 0x10($s2) -/* 0C4610 800C3A10 0C0313B7 */ jal func_800C4EDC -/* 0C4614 800C3A14 AFB80010 */ sw $t8, 0x10($sp) -/* 0C4618 800C3A18 8E680000 */ lw $t0, ($s3) -/* 0C461C 800C3A1C 00000000 */ nop -/* 0C4620 800C3A20 01118021 */ addu $s0, $t0, $s1 -/* 0C4624 800C3A24 92020000 */ lbu $v0, ($s0) -/* 0C4628 800C3A28 10000063 */ b .L800C3BB8 -/* 0C462C 800C3A2C 28410003 */ slti $at, $v0, 3 -/* 0C4630 800C3A30 92050001 */ lbu $a1, 1($s0) -/* 0C4634 800C3A34 24040001 */ li $a0, 1 -/* 0C4638 800C3A38 AE450014 */ sw $a1, 0x14($s2) -/* 0C463C 800C3A3C 8E6A0000 */ lw $t2, ($s3) -/* 0C4640 800C3A40 00000000 */ nop -/* 0C4644 800C3A44 022A5821 */ addu $t3, $s1, $t2 -/* 0C4648 800C3A48 91660002 */ lbu $a2, 2($t3) -/* 0C464C 800C3A4C 240A00FF */ li $t2, 255 -/* 0C4650 800C3A50 AE460018 */ sw $a2, 0x18($s2) -/* 0C4654 800C3A54 8E6D0000 */ lw $t5, ($s3) -/* 0C4658 800C3A58 00000000 */ nop -/* 0C465C 800C3A5C 022D7021 */ addu $t6, $s1, $t5 -/* 0C4660 800C3A60 91C70003 */ lbu $a3, 3($t6) -/* 0C4664 800C3A64 00000000 */ nop -/* 0C4668 800C3A68 AE47001C */ sw $a3, 0x1c($s2) -/* 0C466C 800C3A6C 8E780000 */ lw $t8, ($s3) -/* 0C4670 800C3A70 00000000 */ nop -/* 0C4674 800C3A74 0238C821 */ addu $t9, $s1, $t8 -/* 0C4678 800C3A78 93280004 */ lbu $t0, 4($t9) -/* 0C467C 800C3A7C 26310005 */ addiu $s1, $s1, 5 -/* 0C4680 800C3A80 AE480020 */ sw $t0, 0x20($s2) -/* 0C4684 800C3A84 AFAA0014 */ sw $t2, 0x14($sp) -/* 0C4688 800C3A88 0C031400 */ jal func_800C5000 -/* 0C468C 800C3A8C AFA80010 */ sw $t0, 0x10($sp) -/* 0C4690 800C3A90 8E6B0000 */ lw $t3, ($s3) -/* 0C4694 800C3A94 00000000 */ nop -/* 0C4698 800C3A98 01718021 */ addu $s0, $t3, $s1 -/* 0C469C 800C3A9C 92020000 */ lbu $v0, ($s0) -/* 0C46A0 800C3AA0 10000045 */ b .L800C3BB8 -/* 0C46A4 800C3AA4 28410003 */ slti $at, $v0, 3 -/* 0C46A8 800C3AA8 920C0001 */ lbu $t4, 1($s0) -/* 0C46AC 800C3AAC 00000000 */ nop -/* 0C46B0 800C3AB0 15800003 */ bnez $t4, .L800C3AC0 -/* 0C46B4 800C3AB4 00000000 */ nop -/* 0C46B8 800C3AB8 10000002 */ b .L800C3AC4 -/* 0C46BC 800C3ABC AE5E0024 */ sw $fp, 0x24($s2) -.L800C3AC0: -/* 0C46C0 800C3AC0 AE400024 */ sw $zero, 0x24($s2) -.L800C3AC4: -/* 0C46C4 800C3AC4 8E6D0000 */ lw $t5, ($s3) -/* 0C46C8 800C3AC8 26310002 */ addiu $s1, $s1, 2 -/* 0C46CC 800C3ACC 01B18021 */ addu $s0, $t5, $s1 -/* 0C46D0 800C3AD0 92020000 */ lbu $v0, ($s0) -/* 0C46D4 800C3AD4 10000038 */ b .L800C3BB8 -/* 0C46D8 800C3AD8 28410003 */ slti $at, $v0, 3 -/* 0C46DC 800C3ADC 920E0001 */ lbu $t6, 1($s0) -/* 0C46E0 800C3AE0 26310002 */ addiu $s1, $s1, 2 -/* 0C46E4 800C3AE4 AE4E0028 */ sw $t6, 0x28($s2) -/* 0C46E8 800C3AE8 8E6F0000 */ lw $t7, ($s3) -/* 0C46EC 800C3AEC 00000000 */ nop -/* 0C46F0 800C3AF0 01F18021 */ addu $s0, $t7, $s1 -/* 0C46F4 800C3AF4 92020000 */ lbu $v0, ($s0) -/* 0C46F8 800C3AF8 1000002F */ b .L800C3BB8 -/* 0C46FC 800C3AFC 28410003 */ slti $at, $v0, 3 -/* 0C4700 800C3B00 8E58002C */ lw $t8, 0x2c($s2) -/* 0C4704 800C3B04 92190001 */ lbu $t9, 1($s0) -/* 0C4708 800C3B08 26310002 */ addiu $s1, $s1, 2 -/* 0C470C 800C3B0C 03194021 */ addu $t0, $t8, $t9 -/* 0C4710 800C3B10 AE48002C */ sw $t0, 0x2c($s2) -/* 0C4714 800C3B14 8E690000 */ lw $t1, ($s3) -/* 0C4718 800C3B18 00000000 */ nop -/* 0C471C 800C3B1C 01318021 */ addu $s0, $t1, $s1 -/* 0C4720 800C3B20 92020000 */ lbu $v0, ($s0) -/* 0C4724 800C3B24 10000024 */ b .L800C3BB8 -/* 0C4728 800C3B28 28410003 */ slti $at, $v0, 3 -/* 0C472C 800C3B2C 920A0001 */ lbu $t2, 1($s0) -/* 0C4730 800C3B30 26310002 */ addiu $s1, $s1, 2 -/* 0C4734 800C3B34 AE4A0030 */ sw $t2, 0x30($s2) -/* 0C4738 800C3B38 8E6B0000 */ lw $t3, ($s3) -/* 0C473C 800C3B3C 00000000 */ nop -/* 0C4740 800C3B40 01718021 */ addu $s0, $t3, $s1 -/* 0C4744 800C3B44 92020000 */ lbu $v0, ($s0) -/* 0C4748 800C3B48 1000001B */ b .L800C3BB8 -/* 0C474C 800C3B4C 28410003 */ slti $at, $v0, 3 -/* 0C4750 800C3B50 828C0000 */ lb $t4, ($s4) -/* 0C4754 800C3B54 2404003C */ li $a0, 60 -/* 0C4758 800C3B58 15800007 */ bnez $t4, .L800C3B78 -/* 0C475C 800C3B5C 00000000 */ nop -/* 0C4760 800C3B60 920E0001 */ lbu $t6, 1($s0) -/* 0C4764 800C3B64 0C00322D */ jal func_8000C8B4 -/* 0C4768 800C3B68 A28E0000 */ sb $t6, ($s4) -/* 0C476C 800C3B6C 8E6F0000 */ lw $t7, ($s3) -/* 0C4770 800C3B70 A2E20000 */ sb $v0, ($s7) -/* 0C4774 800C3B74 01F18021 */ addu $s0, $t7, $s1 -.L800C3B78: -/* 0C4778 800C3B78 92020002 */ lbu $v0, 2($s0) -/* 0C477C 800C3B7C 26310002 */ addiu $s1, $s1, 2 -/* 0C4780 800C3B80 1000000C */ b .L800C3BB4 -/* 0C4784 800C3B84 26100002 */ addiu $s0, $s0, 2 -/* 0C4788 800C3B88 92180001 */ lbu $t8, 1($s0) -/* 0C478C 800C3B8C 26310002 */ addiu $s1, $s1, 2 -/* 0C4790 800C3B90 A2D80000 */ sb $t8, ($s6) -/* 0C4794 800C3B94 92020002 */ lbu $v0, 2($s0) -/* 0C4798 800C3B98 10000006 */ b .L800C3BB4 -/* 0C479C 800C3B9C 26100002 */ addiu $s0, $s0, 2 -/* 0C47A0 800C3BA0 92190001 */ lbu $t9, 1($s0) -/* 0C47A4 800C3BA4 26310002 */ addiu $s1, $s1, 2 -/* 0C47A8 800C3BA8 A2B90000 */ sb $t9, ($s5) -/* 0C47AC 800C3BAC 92020002 */ lbu $v0, 2($s0) -/* 0C47B0 800C3BB0 26100002 */ addiu $s0, $s0, 2 -.L800C3BB4: -/* 0C47B4 800C3BB4 28410003 */ slti $at, $v0, 3 -.L800C3BB8: -/* 0C47B8 800C3BB8 14200003 */ bnez $at, .L800C3BC8 -/* 0C47BC 800C3BBC 2841000D */ slti $at, $v0, 0xd -/* 0C47C0 800C3BC0 1420FF5C */ bnez $at, .L800C3934 -/* 0C47C4 800C3BC4 244FFFFD */ addiu $t7, $v0, -3 -.L800C3BC8: -/* 0C47C8 800C3BC8 8FBF0044 */ lw $ra, 0x44($sp) -/* 0C47CC 800C3BCC 02201025 */ move $v0, $s1 -/* 0C47D0 800C3BD0 8FB10024 */ lw $s1, 0x24($sp) -/* 0C47D4 800C3BD4 8FB00020 */ lw $s0, 0x20($sp) -/* 0C47D8 800C3BD8 8FB20028 */ lw $s2, 0x28($sp) -/* 0C47DC 800C3BDC 8FB3002C */ lw $s3, 0x2c($sp) -/* 0C47E0 800C3BE0 8FB40030 */ lw $s4, 0x30($sp) -/* 0C47E4 800C3BE4 8FB50034 */ lw $s5, 0x34($sp) -/* 0C47E8 800C3BE8 8FB60038 */ lw $s6, 0x38($sp) -/* 0C47EC 800C3BEC 8FB7003C */ lw $s7, 0x3c($sp) -/* 0C47F0 800C3BF0 8FBE0040 */ lw $fp, 0x40($sp) -/* 0C47F4 800C3BF4 03E00008 */ jr $ra -/* 0C47F8 800C3BF8 27BD0048 */ addiu $sp, $sp, 0x48 - -/* 0C47FC 800C3BFC 00000000 */ nop -glabel func_800C3C00 -/* 0C4800 800C3C00 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C4804 800C3C04 AFBF0014 */ sw $ra, 0x14($sp) -/* 0C4808 800C3C08 0C01DB16 */ jal func_80076C58 -/* 0C480C 800C3C0C 2404002C */ li $a0, 44 -/* 0C4810 800C3C10 3C038013 */ lui $v1, %hi(D_8012A7E4) # $v1, 0x8013 -/* 0C4814 800C3C14 2463A7E4 */ addiu $v1, %lo(D_8012A7E4) # addiu $v1, $v1, -0x581c -/* 0C4818 800C3C18 AC620000 */ sw $v0, ($v1) -/* 0C481C 800C3C1C 8C4E0000 */ lw $t6, ($v0) -/* 0C4820 800C3C20 3C048013 */ lui $a0, %hi(D_8012A7E0) # $a0, 0x8013 -/* 0C4824 800C3C24 2484A7E0 */ addiu $a0, %lo(D_8012A7E0) # addiu $a0, $a0, -0x5820 -/* 0C4828 800C3C28 244F0004 */ addiu $t7, $v0, 4 -/* 0C482C 800C3C2C AC6F0000 */ sw $t7, ($v1) -/* 0C4830 800C3C30 00002825 */ move $a1, $zero -/* 0C4834 800C3C34 19C0000B */ blez $t6, .L800C3C64 -/* 0C4838 800C3C38 AC8E0000 */ sw $t6, ($a0) -/* 0C483C 800C3C3C 00001025 */ move $v0, $zero -.L800C3C40: -/* 0C4840 800C3C40 8C790000 */ lw $t9, ($v1) -/* 0C4844 800C3C44 24A50001 */ addiu $a1, $a1, 1 -/* 0C4848 800C3C48 03225821 */ addu $t3, $t9, $v0 -/* 0C484C 800C3C4C A1600028 */ sb $zero, 0x28($t3) -/* 0C4850 800C3C50 8C8C0000 */ lw $t4, ($a0) -/* 0C4854 800C3C54 24420400 */ addiu $v0, $v0, 0x400 -/* 0C4858 800C3C58 00AC082A */ slt $at, $a1, $t4 -/* 0C485C 800C3C5C 1420FFF8 */ bnez $at, .L800C3C40 -/* 0C4860 800C3C60 00000000 */ nop -.L800C3C64: -/* 0C4864 800C3C64 3C05FFFF */ lui $a1, %hi(D_FFFF0028) # $a1, 0xffff -/* 0C4868 800C3C68 34A500FF */ ori $a1, (0xFFFF00FF & 0xFFFF) # ori $a1, $a1, 0xff -/* 0C486C 800C3C6C 0C01C327 */ jal func_80070C9C -/* 0C4870 800C3C70 24040940 */ li $a0, 2368 -/* 0C4874 800C3C74 3C068013 */ lui $a2, %hi(D_8012A7E8) # $a2, 0x8013 -/* 0C4878 800C3C78 24C6A7E8 */ addiu $a2, %lo(D_8012A7E8) # addiu $a2, $a2, -0x5818 -/* 0C487C 800C3C7C 3C038013 */ lui $v1, %hi(D_8012A7EC) # $v1, 0x8013 -/* 0C4880 800C3C80 244E0140 */ addiu $t6, $v0, 0x140 -/* 0C4884 800C3C84 2463A7EC */ addiu $v1, %lo(D_8012A7EC) # addiu $v1, $v1, -0x5814 -/* 0C4888 800C3C88 ACC20000 */ sw $v0, ($a2) -/* 0C488C 800C3C8C AC6E0000 */ sw $t6, ($v1) -/* 0C4890 800C3C90 2402013F */ li $v0, 319 -/* 0C4894 800C3C94 00002825 */ move $a1, $zero -/* 0C4898 800C3C98 240A4000 */ li $t2, 16384 -/* 0C489C 800C3C9C 240900F0 */ li $t1, 240 -/* 0C48A0 800C3CA0 24080140 */ li $t0, 320 -/* 0C48A4 800C3CA4 240700EF */ li $a3, 239 -/* 0C48A8 800C3CA8 240400FF */ li $a0, 255 -.L800C3CAC: -/* 0C48AC 800C3CAC 8CCF0000 */ lw $t7, ($a2) -/* 0C48B0 800C3CB0 00000000 */ nop -/* 0C48B4 800C3CB4 01E5C021 */ addu $t8, $t7, $a1 -/* 0C48B8 800C3CB8 A7000000 */ sh $zero, ($t8) -/* 0C48BC 800C3CBC 8CD90000 */ lw $t9, ($a2) -/* 0C48C0 800C3CC0 00000000 */ nop -/* 0C48C4 800C3CC4 03255821 */ addu $t3, $t9, $a1 -/* 0C48C8 800C3CC8 A5600002 */ sh $zero, 2($t3) -/* 0C48CC 800C3CCC 8CCC0000 */ lw $t4, ($a2) -/* 0C48D0 800C3CD0 00000000 */ nop -/* 0C48D4 800C3CD4 01856821 */ addu $t5, $t4, $a1 -/* 0C48D8 800C3CD8 A5A00004 */ sh $zero, 4($t5) -/* 0C48DC 800C3CDC 8CCE0000 */ lw $t6, ($a2) -/* 0C48E0 800C3CE0 00000000 */ nop -/* 0C48E4 800C3CE4 01C57821 */ addu $t7, $t6, $a1 -/* 0C48E8 800C3CE8 A5E00006 */ sh $zero, 6($t7) -/* 0C48EC 800C3CEC 8CD80000 */ lw $t8, ($a2) -/* 0C48F0 800C3CF0 00000000 */ nop -/* 0C48F4 800C3CF4 0305C821 */ addu $t9, $t8, $a1 -/* 0C48F8 800C3CF8 A7220008 */ sh $v0, 8($t9) -/* 0C48FC 800C3CFC 8CCB0000 */ lw $t3, ($a2) -/* 0C4900 800C3D00 00000000 */ nop -/* 0C4904 800C3D04 01656021 */ addu $t4, $t3, $a1 -/* 0C4908 800C3D08 A587000A */ sh $a3, 0xa($t4) -/* 0C490C 800C3D0C 8CCD0000 */ lw $t5, ($a2) -/* 0C4910 800C3D10 00000000 */ nop -/* 0C4914 800C3D14 01A57021 */ addu $t6, $t5, $a1 -/* 0C4918 800C3D18 A5C8000C */ sh $t0, 0xc($t6) -/* 0C491C 800C3D1C 8CCF0000 */ lw $t7, ($a2) -/* 0C4920 800C3D20 00000000 */ nop -/* 0C4924 800C3D24 01E5C021 */ addu $t8, $t7, $a1 -/* 0C4928 800C3D28 A709000E */ sh $t1, 0xe($t8) -/* 0C492C 800C3D2C 8CD90000 */ lw $t9, ($a2) -/* 0C4930 800C3D30 00000000 */ nop -/* 0C4934 800C3D34 03255821 */ addu $t3, $t9, $a1 -/* 0C4938 800C3D38 A1640010 */ sb $a0, 0x10($t3) -/* 0C493C 800C3D3C 8CCC0000 */ lw $t4, ($a2) -/* 0C4940 800C3D40 00000000 */ nop -/* 0C4944 800C3D44 01856821 */ addu $t5, $t4, $a1 -/* 0C4948 800C3D48 A1A40011 */ sb $a0, 0x11($t5) -/* 0C494C 800C3D4C 8CCE0000 */ lw $t6, ($a2) -/* 0C4950 800C3D50 00000000 */ nop -/* 0C4954 800C3D54 01C57821 */ addu $t7, $t6, $a1 -/* 0C4958 800C3D58 A1E40012 */ sb $a0, 0x12($t7) -/* 0C495C 800C3D5C 8CD80000 */ lw $t8, ($a2) -/* 0C4960 800C3D60 00000000 */ nop -/* 0C4964 800C3D64 0305C821 */ addu $t9, $t8, $a1 -/* 0C4968 800C3D68 A3200013 */ sb $zero, 0x13($t9) -/* 0C496C 800C3D6C 8CCB0000 */ lw $t3, ($a2) -/* 0C4970 800C3D70 00000000 */ nop -/* 0C4974 800C3D74 01656021 */ addu $t4, $t3, $a1 -/* 0C4978 800C3D78 A1840014 */ sb $a0, 0x14($t4) -/* 0C497C 800C3D7C 8CCD0000 */ lw $t5, ($a2) -/* 0C4980 800C3D80 00000000 */ nop -/* 0C4984 800C3D84 01A57021 */ addu $t6, $t5, $a1 -/* 0C4988 800C3D88 A1C40015 */ sb $a0, 0x15($t6) -/* 0C498C 800C3D8C 8CCF0000 */ lw $t7, ($a2) -/* 0C4990 800C3D90 00000000 */ nop -/* 0C4994 800C3D94 01E5C021 */ addu $t8, $t7, $a1 -/* 0C4998 800C3D98 A3040016 */ sb $a0, 0x16($t8) -/* 0C499C 800C3D9C 8CD90000 */ lw $t9, ($a2) -/* 0C49A0 800C3DA0 00000000 */ nop -/* 0C49A4 800C3DA4 03255821 */ addu $t3, $t9, $a1 -/* 0C49A8 800C3DA8 A1600017 */ sb $zero, 0x17($t3) -/* 0C49AC 800C3DAC 8CCC0000 */ lw $t4, ($a2) -/* 0C49B0 800C3DB0 00000000 */ nop -/* 0C49B4 800C3DB4 01856821 */ addu $t5, $t4, $a1 -/* 0C49B8 800C3DB8 A1A40018 */ sb $a0, 0x18($t5) -/* 0C49BC 800C3DBC 8CCE0000 */ lw $t6, ($a2) -/* 0C49C0 800C3DC0 00000000 */ nop -/* 0C49C4 800C3DC4 01C57821 */ addu $t7, $t6, $a1 -/* 0C49C8 800C3DC8 A1E40019 */ sb $a0, 0x19($t7) -/* 0C49CC 800C3DCC 8CD80000 */ lw $t8, ($a2) -/* 0C49D0 800C3DD0 00000000 */ nop -/* 0C49D4 800C3DD4 0305C821 */ addu $t9, $t8, $a1 -/* 0C49D8 800C3DD8 A324001A */ sb $a0, 0x1a($t9) -/* 0C49DC 800C3DDC 8CCB0000 */ lw $t3, ($a2) -/* 0C49E0 800C3DE0 00000000 */ nop -/* 0C49E4 800C3DE4 01656021 */ addu $t4, $t3, $a1 -/* 0C49E8 800C3DE8 A180001B */ sb $zero, 0x1b($t4) -/* 0C49EC 800C3DEC 8CCD0000 */ lw $t5, ($a2) -/* 0C49F0 800C3DF0 00000000 */ nop -/* 0C49F4 800C3DF4 01A57021 */ addu $t6, $t5, $a1 -/* 0C49F8 800C3DF8 A1C4001C */ sb $a0, 0x1c($t6) -/* 0C49FC 800C3DFC 8CCF0000 */ lw $t7, ($a2) -/* 0C4A00 800C3E00 00000000 */ nop -/* 0C4A04 800C3E04 01E5C021 */ addu $t8, $t7, $a1 -/* 0C4A08 800C3E08 10A00006 */ beqz $a1, .L800C3E24 -/* 0C4A0C 800C3E0C A304001D */ sb $a0, 0x1d($t8) -/* 0C4A10 800C3E10 8CD90000 */ lw $t9, ($a2) -/* 0C4A14 800C3E14 00000000 */ nop -/* 0C4A18 800C3E18 03255821 */ addu $t3, $t9, $a1 -/* 0C4A1C 800C3E1C 10000005 */ b .L800C3E34 -/* 0C4A20 800C3E20 A56A001E */ sh $t2, 0x1e($t3) -.L800C3E24: -/* 0C4A24 800C3E24 8CCC0000 */ lw $t4, ($a2) -/* 0C4A28 800C3E28 00000000 */ nop -/* 0C4A2C 800C3E2C 01856821 */ addu $t5, $t4, $a1 -/* 0C4A30 800C3E30 A5A0001E */ sh $zero, 0x1e($t5) -.L800C3E34: -/* 0C4A34 800C3E34 8CCE0000 */ lw $t6, ($a2) -/* 0C4A38 800C3E38 00000000 */ nop -/* 0C4A3C 800C3E3C 01C57821 */ addu $t7, $t6, $a1 -/* 0C4A40 800C3E40 A5E00020 */ sh $zero, 0x20($t7) -/* 0C4A44 800C3E44 8CD80000 */ lw $t8, ($a2) -/* 0C4A48 800C3E48 00000000 */ nop -/* 0C4A4C 800C3E4C 0305C821 */ addu $t9, $t8, $a1 -/* 0C4A50 800C3E50 A7200022 */ sh $zero, 0x22($t9) -/* 0C4A54 800C3E54 8CCB0000 */ lw $t3, ($a2) -/* 0C4A58 800C3E58 00000000 */ nop -/* 0C4A5C 800C3E5C 01656021 */ addu $t4, $t3, $a1 -/* 0C4A60 800C3E60 24A50028 */ addiu $a1, %lo(D_FFFF0028) # addiu $a1, $a1, 0x28 -/* 0C4A64 800C3E64 28A10140 */ slti $at, $a1, 0x140 -/* 0C4A68 800C3E68 1420FF90 */ bnez $at, .L800C3CAC -/* 0C4A6C 800C3E6C AD800024 */ sw $zero, 0x24($t4) -/* 0C4A70 800C3E70 00001025 */ move $v0, $zero -/* 0C4A74 800C3E74 24050800 */ li $a1, 2048 -.L800C3E78: -/* 0C4A78 800C3E78 8C6D0000 */ lw $t5, ($v1) -/* 0C4A7C 800C3E7C 00000000 */ nop -/* 0C4A80 800C3E80 01A27021 */ addu $t6, $t5, $v0 -/* 0C4A84 800C3E84 A1C40001 */ sb $a0, 1($t6) -/* 0C4A88 800C3E88 8C6F0000 */ lw $t7, ($v1) -/* 0C4A8C 800C3E8C 00000000 */ nop -/* 0C4A90 800C3E90 01E2C021 */ addu $t8, $t7, $v0 -/* 0C4A94 800C3E94 AF000004 */ sw $zero, 4($t8) -/* 0C4A98 800C3E98 8C790000 */ lw $t9, ($v1) -/* 0C4A9C 800C3E9C 00000000 */ nop -/* 0C4AA0 800C3EA0 03225821 */ addu $t3, $t9, $v0 -/* 0C4AA4 800C3EA4 A1640010 */ sb $a0, 0x10($t3) -/* 0C4AA8 800C3EA8 8C6C0000 */ lw $t4, ($v1) -/* 0C4AAC 800C3EAC 00000000 */ nop -/* 0C4AB0 800C3EB0 01826821 */ addu $t5, $t4, $v0 -/* 0C4AB4 800C3EB4 A1A40011 */ sb $a0, 0x11($t5) -/* 0C4AB8 800C3EB8 8C6E0000 */ lw $t6, ($v1) -/* 0C4ABC 800C3EBC 00000000 */ nop -/* 0C4AC0 800C3EC0 01C27821 */ addu $t7, $t6, $v0 -/* 0C4AC4 800C3EC4 A1E40012 */ sb $a0, 0x12($t7) -/* 0C4AC8 800C3EC8 8C780000 */ lw $t8, ($v1) -/* 0C4ACC 800C3ECC 00000000 */ nop -/* 0C4AD0 800C3ED0 0302C821 */ addu $t9, $t8, $v0 -/* 0C4AD4 800C3ED4 A3200013 */ sb $zero, 0x13($t9) -/* 0C4AD8 800C3ED8 8C6B0000 */ lw $t3, ($v1) -/* 0C4ADC 800C3EDC 00000000 */ nop -/* 0C4AE0 800C3EE0 01626021 */ addu $t4, $t3, $v0 -/* 0C4AE4 800C3EE4 A1840014 */ sb $a0, 0x14($t4) -/* 0C4AE8 800C3EE8 8C6D0000 */ lw $t5, ($v1) -/* 0C4AEC 800C3EEC 00000000 */ nop -/* 0C4AF0 800C3EF0 01A27021 */ addu $t6, $t5, $v0 -/* 0C4AF4 800C3EF4 A1C40015 */ sb $a0, 0x15($t6) -/* 0C4AF8 800C3EF8 8C6F0000 */ lw $t7, ($v1) -/* 0C4AFC 800C3EFC 00000000 */ nop -/* 0C4B00 800C3F00 01E2C021 */ addu $t8, $t7, $v0 -/* 0C4B04 800C3F04 A3040016 */ sb $a0, 0x16($t8) -/* 0C4B08 800C3F08 8C790000 */ lw $t9, ($v1) -/* 0C4B0C 800C3F0C 00000000 */ nop -/* 0C4B10 800C3F10 03225821 */ addu $t3, $t9, $v0 -/* 0C4B14 800C3F14 A1600017 */ sb $zero, 0x17($t3) -/* 0C4B18 800C3F18 8C6C0000 */ lw $t4, ($v1) -/* 0C4B1C 800C3F1C 00000000 */ nop -/* 0C4B20 800C3F20 01826821 */ addu $t5, $t4, $v0 -/* 0C4B24 800C3F24 ADA0001C */ sw $zero, 0x1c($t5) -/* 0C4B28 800C3F28 8C6E0000 */ lw $t6, ($v1) -/* 0C4B2C 800C3F2C 00000000 */ nop -/* 0C4B30 800C3F30 01C27821 */ addu $t7, $t6, $v0 -/* 0C4B34 800C3F34 A1E40021 */ sb $a0, 0x21($t7) -/* 0C4B38 800C3F38 8C780000 */ lw $t8, ($v1) -/* 0C4B3C 800C3F3C 00000000 */ nop -/* 0C4B40 800C3F40 0302C821 */ addu $t9, $t8, $v0 -/* 0C4B44 800C3F44 AF200024 */ sw $zero, 0x24($t9) -/* 0C4B48 800C3F48 8C6B0000 */ lw $t3, ($v1) -/* 0C4B4C 800C3F4C 00000000 */ nop -/* 0C4B50 800C3F50 01626021 */ addu $t4, $t3, $v0 -/* 0C4B54 800C3F54 A1840030 */ sb $a0, 0x30($t4) -/* 0C4B58 800C3F58 8C6D0000 */ lw $t5, ($v1) -/* 0C4B5C 800C3F5C 00000000 */ nop -/* 0C4B60 800C3F60 01A27021 */ addu $t6, $t5, $v0 -/* 0C4B64 800C3F64 A1C40031 */ sb $a0, 0x31($t6) -/* 0C4B68 800C3F68 8C6F0000 */ lw $t7, ($v1) -/* 0C4B6C 800C3F6C 00000000 */ nop -/* 0C4B70 800C3F70 01E2C021 */ addu $t8, $t7, $v0 -/* 0C4B74 800C3F74 A3040032 */ sb $a0, 0x32($t8) -/* 0C4B78 800C3F78 8C790000 */ lw $t9, ($v1) -/* 0C4B7C 800C3F7C 00000000 */ nop -/* 0C4B80 800C3F80 03225821 */ addu $t3, $t9, $v0 -/* 0C4B84 800C3F84 A1600033 */ sb $zero, 0x33($t3) -/* 0C4B88 800C3F88 8C6C0000 */ lw $t4, ($v1) -/* 0C4B8C 800C3F8C 00000000 */ nop -/* 0C4B90 800C3F90 01826821 */ addu $t5, $t4, $v0 -/* 0C4B94 800C3F94 A1A40034 */ sb $a0, 0x34($t5) -/* 0C4B98 800C3F98 8C6E0000 */ lw $t6, ($v1) -/* 0C4B9C 800C3F9C 00000000 */ nop -/* 0C4BA0 800C3FA0 01C27821 */ addu $t7, $t6, $v0 -/* 0C4BA4 800C3FA4 A1E40035 */ sb $a0, 0x35($t7) -/* 0C4BA8 800C3FA8 8C780000 */ lw $t8, ($v1) -/* 0C4BAC 800C3FAC 00000000 */ nop -/* 0C4BB0 800C3FB0 0302C821 */ addu $t9, $t8, $v0 -/* 0C4BB4 800C3FB4 A3240036 */ sb $a0, 0x36($t9) -/* 0C4BB8 800C3FB8 8C6B0000 */ lw $t3, ($v1) -/* 0C4BBC 800C3FBC 00000000 */ nop -/* 0C4BC0 800C3FC0 01626021 */ addu $t4, $t3, $v0 -/* 0C4BC4 800C3FC4 A1800037 */ sb $zero, 0x37($t4) -/* 0C4BC8 800C3FC8 8C6D0000 */ lw $t5, ($v1) -/* 0C4BCC 800C3FCC 00000000 */ nop -/* 0C4BD0 800C3FD0 01A27021 */ addu $t6, $t5, $v0 -/* 0C4BD4 800C3FD4 ADC0003C */ sw $zero, 0x3c($t6) -/* 0C4BD8 800C3FD8 8C6F0000 */ lw $t7, ($v1) -/* 0C4BDC 800C3FDC 00000000 */ nop -/* 0C4BE0 800C3FE0 01E2C021 */ addu $t8, $t7, $v0 -/* 0C4BE4 800C3FE4 A3040041 */ sb $a0, 0x41($t8) -/* 0C4BE8 800C3FE8 8C790000 */ lw $t9, ($v1) -/* 0C4BEC 800C3FEC 00000000 */ nop -/* 0C4BF0 800C3FF0 03225821 */ addu $t3, $t9, $v0 -/* 0C4BF4 800C3FF4 AD600044 */ sw $zero, 0x44($t3) -/* 0C4BF8 800C3FF8 8C6C0000 */ lw $t4, ($v1) -/* 0C4BFC 800C3FFC 00000000 */ nop -/* 0C4C00 800C4000 01826821 */ addu $t5, $t4, $v0 -/* 0C4C04 800C4004 A1A40050 */ sb $a0, 0x50($t5) -/* 0C4C08 800C4008 8C6E0000 */ lw $t6, ($v1) -/* 0C4C0C 800C400C 00000000 */ nop -/* 0C4C10 800C4010 01C27821 */ addu $t7, $t6, $v0 -/* 0C4C14 800C4014 A1E40051 */ sb $a0, 0x51($t7) -/* 0C4C18 800C4018 8C780000 */ lw $t8, ($v1) -/* 0C4C1C 800C401C 00000000 */ nop -/* 0C4C20 800C4020 0302C821 */ addu $t9, $t8, $v0 -/* 0C4C24 800C4024 A3240052 */ sb $a0, 0x52($t9) -/* 0C4C28 800C4028 8C6B0000 */ lw $t3, ($v1) -/* 0C4C2C 800C402C 00000000 */ nop -/* 0C4C30 800C4030 01626021 */ addu $t4, $t3, $v0 -/* 0C4C34 800C4034 A1800053 */ sb $zero, 0x53($t4) -/* 0C4C38 800C4038 8C6D0000 */ lw $t5, ($v1) -/* 0C4C3C 800C403C 00000000 */ nop -/* 0C4C40 800C4040 01A27021 */ addu $t6, $t5, $v0 -/* 0C4C44 800C4044 A1C40054 */ sb $a0, 0x54($t6) -/* 0C4C48 800C4048 8C6F0000 */ lw $t7, ($v1) -/* 0C4C4C 800C404C 00000000 */ nop -/* 0C4C50 800C4050 01E2C021 */ addu $t8, $t7, $v0 -/* 0C4C54 800C4054 A3040055 */ sb $a0, 0x55($t8) -/* 0C4C58 800C4058 8C790000 */ lw $t9, ($v1) -/* 0C4C5C 800C405C 00000000 */ nop -/* 0C4C60 800C4060 03225821 */ addu $t3, $t9, $v0 -/* 0C4C64 800C4064 A1640056 */ sb $a0, 0x56($t3) -/* 0C4C68 800C4068 8C6C0000 */ lw $t4, ($v1) -/* 0C4C6C 800C406C 00000000 */ nop -/* 0C4C70 800C4070 01826821 */ addu $t5, $t4, $v0 -/* 0C4C74 800C4074 A1A00057 */ sb $zero, 0x57($t5) -/* 0C4C78 800C4078 8C6E0000 */ lw $t6, ($v1) -/* 0C4C7C 800C407C 00000000 */ nop -/* 0C4C80 800C4080 01C27821 */ addu $t7, $t6, $v0 -/* 0C4C84 800C4084 ADE0005C */ sw $zero, 0x5c($t7) -/* 0C4C88 800C4088 8C780000 */ lw $t8, ($v1) -/* 0C4C8C 800C408C 00000000 */ nop -/* 0C4C90 800C4090 0302C821 */ addu $t9, $t8, $v0 -/* 0C4C94 800C4094 A3240061 */ sb $a0, 0x61($t9) -/* 0C4C98 800C4098 8C6B0000 */ lw $t3, ($v1) -/* 0C4C9C 800C409C 00000000 */ nop -/* 0C4CA0 800C40A0 01626021 */ addu $t4, $t3, $v0 -/* 0C4CA4 800C40A4 AD800064 */ sw $zero, 0x64($t4) -/* 0C4CA8 800C40A8 8C6D0000 */ lw $t5, ($v1) -/* 0C4CAC 800C40AC 00000000 */ nop -/* 0C4CB0 800C40B0 01A27021 */ addu $t6, $t5, $v0 -/* 0C4CB4 800C40B4 A1C40070 */ sb $a0, 0x70($t6) -/* 0C4CB8 800C40B8 8C6F0000 */ lw $t7, ($v1) -/* 0C4CBC 800C40BC 00000000 */ nop -/* 0C4CC0 800C40C0 01E2C021 */ addu $t8, $t7, $v0 -/* 0C4CC4 800C40C4 A3040071 */ sb $a0, 0x71($t8) -/* 0C4CC8 800C40C8 8C790000 */ lw $t9, ($v1) -/* 0C4CCC 800C40CC 00000000 */ nop -/* 0C4CD0 800C40D0 03225821 */ addu $t3, $t9, $v0 -/* 0C4CD4 800C40D4 A1640072 */ sb $a0, 0x72($t3) -/* 0C4CD8 800C40D8 8C6C0000 */ lw $t4, ($v1) -/* 0C4CDC 800C40DC 00000000 */ nop -/* 0C4CE0 800C40E0 01826821 */ addu $t5, $t4, $v0 -/* 0C4CE4 800C40E4 A1A00073 */ sb $zero, 0x73($t5) -/* 0C4CE8 800C40E8 8C6E0000 */ lw $t6, ($v1) -/* 0C4CEC 800C40EC 00000000 */ nop -/* 0C4CF0 800C40F0 01C27821 */ addu $t7, $t6, $v0 -/* 0C4CF4 800C40F4 A1E40074 */ sb $a0, 0x74($t7) -/* 0C4CF8 800C40F8 8C780000 */ lw $t8, ($v1) -/* 0C4CFC 800C40FC 00000000 */ nop -/* 0C4D00 800C4100 0302C821 */ addu $t9, $t8, $v0 -/* 0C4D04 800C4104 A3240075 */ sb $a0, 0x75($t9) -/* 0C4D08 800C4108 8C6B0000 */ lw $t3, ($v1) -/* 0C4D0C 800C410C 00000000 */ nop -/* 0C4D10 800C4110 01626021 */ addu $t4, $t3, $v0 -/* 0C4D14 800C4114 A1840076 */ sb $a0, 0x76($t4) -/* 0C4D18 800C4118 8C6D0000 */ lw $t5, ($v1) -/* 0C4D1C 800C411C 00000000 */ nop -/* 0C4D20 800C4120 01A27021 */ addu $t6, $t5, $v0 -/* 0C4D24 800C4124 A1C00077 */ sb $zero, 0x77($t6) -/* 0C4D28 800C4128 8C6F0000 */ lw $t7, ($v1) -/* 0C4D2C 800C412C 00000000 */ nop -/* 0C4D30 800C4130 01E2C021 */ addu $t8, $t7, $v0 -/* 0C4D34 800C4134 24420080 */ addiu $v0, $v0, 0x80 -/* 0C4D38 800C4138 1445FF4F */ bne $v0, $a1, .L800C3E78 -/* 0C4D3C 800C413C AF00007C */ sw $zero, 0x7c($t8) -/* 0C4D40 800C4140 0C03105C */ jal func_800C4170 -/* 0C4D44 800C4144 00002025 */ move $a0, $zero -/* 0C4D48 800C4148 0C03105C */ jal func_800C4170 -/* 0C4D4C 800C414C 24040001 */ li $a0, 1 -/* 0C4D50 800C4150 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C4D54 800C4154 3C018013 */ lui $at, %hi(D_8012A7F0) # $at, 0x8013 -/* 0C4D58 800C4158 AC20A7F0 */ sw $zero, %lo(D_8012A7F0)($at) -/* 0C4D5C 800C415C 03E00008 */ jr $ra -/* 0C4D60 800C4160 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_800C4164 -/* 0C4D64 800C4164 3C018013 */ lui $at, 0x8013 -/* 0C4D68 800C4168 03E00008 */ jr $ra -/* 0C4D6C 800C416C AC24A7F0 */ sw $a0, -0x5810($at) - -glabel func_800C4170 -/* 0C4D70 800C4170 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0C4D74 800C4174 3C0E8013 */ lui $t6, %hi(D_8012A7E0) # $t6, 0x8013 -/* 0C4D78 800C4178 8DCEA7E0 */ lw $t6, %lo(D_8012A7E0)($t6) -/* 0C4D7C 800C417C AFBF0024 */ sw $ra, 0x24($sp) -/* 0C4D80 800C4180 008E082A */ slt $at, $a0, $t6 -/* 0C4D84 800C4184 AFB30020 */ sw $s3, 0x20($sp) -/* 0C4D88 800C4188 AFB2001C */ sw $s2, 0x1c($sp) -/* 0C4D8C 800C418C AFB10018 */ sw $s1, 0x18($sp) -/* 0C4D90 800C4190 1020001F */ beqz $at, .L800C4210 -/* 0C4D94 800C4194 AFB00014 */ sw $s0, 0x14($sp) -/* 0C4D98 800C4198 3C188013 */ lui $t8, %hi(D_8012A7E4) # $t8, 0x8013 -/* 0C4D9C 800C419C 8F18A7E4 */ lw $t8, %lo(D_8012A7E4)($t8) -/* 0C4DA0 800C41A0 00047A80 */ sll $t7, $a0, 0xa -/* 0C4DA4 800C41A4 01F81021 */ addu $v0, $t7, $t8 -/* 0C4DA8 800C41A8 90590028 */ lbu $t9, 0x28($v0) -/* 0C4DAC 800C41AC 24010001 */ li $at, 1 -/* 0C4DB0 800C41B0 27280001 */ addiu $t0, $t9, 1 -/* 0C4DB4 800C41B4 310900FF */ andi $t1, $t0, 0xff -/* 0C4DB8 800C41B8 15210015 */ bne $t1, $at, .L800C4210 -/* 0C4DBC 800C41BC A0480028 */ sb $t0, 0x28($v0) -/* 0C4DC0 800C41C0 844A0040 */ lh $t2, 0x40($v0) -/* 0C4DC4 800C41C4 2413FFFF */ li $s3, -1 -/* 0C4DC8 800C41C8 126A0011 */ beq $s3, $t2, .L800C4210 -/* 0C4DCC 800C41CC 00008040 */ sll $s0, $zero, 1 -/* 0C4DD0 800C41D0 00508821 */ addu $s1, $v0, $s0 -/* 0C4DD4 800C41D4 00005880 */ sll $t3, $zero, 2 -/* 0C4DD8 800C41D8 86240040 */ lh $a0, 0x40($s1) -/* 0C4DDC 800C41DC 004B9021 */ addu $s2, $v0, $t3 -.L800C41E0: -/* 0C4DE0 800C41E0 0C01EB9D */ jal func_8007AE74 -/* 0C4DE4 800C41E4 00000000 */ nop -/* 0C4DE8 800C41E8 26100002 */ addiu $s0, $s0, 2 -/* 0C4DEC 800C41EC 2A010040 */ slti $at, $s0, 0x40 -/* 0C4DF0 800C41F0 AE420080 */ sw $v0, 0x80($s2) -/* 0C4DF4 800C41F4 26310002 */ addiu $s1, $s1, 2 -/* 0C4DF8 800C41F8 10200005 */ beqz $at, .L800C4210 -/* 0C4DFC 800C41FC 26520004 */ addiu $s2, $s2, 4 -/* 0C4E00 800C4200 86240040 */ lh $a0, 0x40($s1) -/* 0C4E04 800C4204 00000000 */ nop -/* 0C4E08 800C4208 1664FFF5 */ bne $s3, $a0, .L800C41E0 -/* 0C4E0C 800C420C 00000000 */ nop -.L800C4210: -/* 0C4E10 800C4210 8FBF0024 */ lw $ra, 0x24($sp) -/* 0C4E14 800C4214 8FB00014 */ lw $s0, 0x14($sp) -/* 0C4E18 800C4218 8FB10018 */ lw $s1, 0x18($sp) -/* 0C4E1C 800C421C 8FB2001C */ lw $s2, 0x1c($sp) -/* 0C4E20 800C4220 8FB30020 */ lw $s3, 0x20($sp) -/* 0C4E24 800C4224 03E00008 */ jr $ra -/* 0C4E28 800C4228 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_800C422C -/* 0C4E2C 800C422C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0C4E30 800C4230 3C0E8013 */ lui $t6, %hi(D_8012A7E0) # $t6, 0x8013 -/* 0C4E34 800C4234 8DCEA7E0 */ lw $t6, %lo(D_8012A7E0)($t6) -/* 0C4E38 800C4238 AFBF0024 */ sw $ra, 0x24($sp) -/* 0C4E3C 800C423C 008E082A */ slt $at, $a0, $t6 -/* 0C4E40 800C4240 AFB30020 */ sw $s3, 0x20($sp) -/* 0C4E44 800C4244 AFB2001C */ sw $s2, 0x1c($sp) -/* 0C4E48 800C4248 AFB10018 */ sw $s1, 0x18($sp) -/* 0C4E4C 800C424C 10200020 */ beqz $at, .L800C42D0 -/* 0C4E50 800C4250 AFB00014 */ sw $s0, 0x14($sp) -/* 0C4E54 800C4254 3C188013 */ lui $t8, %hi(D_8012A7E4) # $t8, 0x8013 -/* 0C4E58 800C4258 8F18A7E4 */ lw $t8, %lo(D_8012A7E4)($t8) -/* 0C4E5C 800C425C 00047A80 */ sll $t7, $a0, 0xa -/* 0C4E60 800C4260 01F89021 */ addu $s2, $t7, $t8 -/* 0C4E64 800C4264 92420028 */ lbu $v0, 0x28($s2) -/* 0C4E68 800C4268 00000000 */ nop -/* 0C4E6C 800C426C 18400018 */ blez $v0, .L800C42D0 -/* 0C4E70 800C4270 2459FFFF */ addiu $t9, $v0, -1 -/* 0C4E74 800C4274 332800FF */ andi $t0, $t9, 0xff -/* 0C4E78 800C4278 15000015 */ bnez $t0, .L800C42D0 -/* 0C4E7C 800C427C A2590028 */ sb $t9, 0x28($s2) -/* 0C4E80 800C4280 86490040 */ lh $t1, 0x40($s2) -/* 0C4E84 800C4284 2413FFFF */ li $s3, -1 -/* 0C4E88 800C4288 12690011 */ beq $s3, $t1, .L800C42D0 -/* 0C4E8C 800C428C 00008825 */ move $s1, $zero -/* 0C4E90 800C4290 00005080 */ sll $t2, $zero, 2 -/* 0C4E94 800C4294 024A8021 */ addu $s0, $s2, $t2 -.L800C4298: -/* 0C4E98 800C4298 8E040080 */ lw $a0, 0x80($s0) -/* 0C4E9C 800C429C 0C01ECAF */ jal func_8007B2BC -/* 0C4EA0 800C42A0 00000000 */ nop -/* 0C4EA4 800C42A4 26310001 */ addiu $s1, $s1, 1 -/* 0C4EA8 800C42A8 2A210020 */ slti $at, $s1, 0x20 -/* 0C4EAC 800C42AC AE000080 */ sw $zero, 0x80($s0) -/* 0C4EB0 800C42B0 10200007 */ beqz $at, .L800C42D0 -/* 0C4EB4 800C42B4 26100004 */ addiu $s0, $s0, 4 -/* 0C4EB8 800C42B8 00115840 */ sll $t3, $s1, 1 -/* 0C4EBC 800C42BC 024B6021 */ addu $t4, $s2, $t3 -/* 0C4EC0 800C42C0 858D0040 */ lh $t5, 0x40($t4) -/* 0C4EC4 800C42C4 00000000 */ nop -/* 0C4EC8 800C42C8 166DFFF3 */ bne $s3, $t5, .L800C4298 -/* 0C4ECC 800C42CC 00000000 */ nop -.L800C42D0: -/* 0C4ED0 800C42D0 8FBF0024 */ lw $ra, 0x24($sp) -/* 0C4ED4 800C42D4 8FB00014 */ lw $s0, 0x14($sp) -/* 0C4ED8 800C42D8 8FB10018 */ lw $s1, 0x18($sp) -/* 0C4EDC 800C42DC 8FB2001C */ lw $s2, 0x1c($sp) -/* 0C4EE0 800C42E0 8FB30020 */ lw $s3, 0x20($sp) -/* 0C4EE4 800C42E4 03E00008 */ jr $ra -/* 0C4EE8 800C42E8 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_800C42EC -/* 0C4EEC 800C42EC 3C0E8013 */ lui $t6, %hi(D_8012A7E0) # $t6, 0x8013 -/* 0C4EF0 800C42F0 8DCEA7E0 */ lw $t6, %lo(D_8012A7E0)($t6) -/* 0C4EF4 800C42F4 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 -/* 0C4EF8 800C42F8 008E082A */ slt $at, $a0, $t6 -/* 0C4EFC 800C42FC 10200004 */ beqz $at, .L800C4310 -/* 0C4F00 800C4300 00000000 */ nop -/* 0C4F04 800C4304 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) -/* 0C4F08 800C4308 00000000 */ nop -/* 0C4F0C 800C430C A1E4001D */ sb $a0, 0x1d($t7) -.L800C4310: -/* 0C4F10 800C4310 03E00008 */ jr $ra -/* 0C4F14 800C4314 00000000 */ nop - -/* 0C4F18 800C4318 3C0F8013 */ lui $t7, %hi(D_8012A7E0) # $t7, 0x8013 -/* 0C4F1C 800C431C 8DEFA7E0 */ lw $t7, %lo(D_8012A7E0)($t7) -/* 0C4F20 800C4320 AFA50004 */ sw $a1, 4($sp) -/* 0C4F24 800C4324 008F082A */ slt $at, $a0, $t7 -/* 0C4F28 800C4328 10200014 */ beqz $at, .L800C437C -/* 0C4F2C 800C432C 30AE00FF */ andi $t6, $a1, 0xff -/* 0C4F30 800C4330 3C198013 */ lui $t9, %hi(D_8012A7E4) # $t9, 0x8013 -/* 0C4F34 800C4334 8F39A7E4 */ lw $t9, %lo(D_8012A7E4)($t9) -/* 0C4F38 800C4338 0004C280 */ sll $t8, $a0, 0xa -/* 0C4F3C 800C433C 03191821 */ addu $v1, $t8, $t9 -/* 0C4F40 800C4340 90680028 */ lbu $t0, 0x28($v1) -/* 0C4F44 800C4344 25C5FFE0 */ addiu $a1, $t6, -0x20 -/* 0C4F48 800C4348 1100000C */ beqz $t0, .L800C437C -/* 0C4F4C 800C434C 30A900FF */ andi $t1, $a1, 0xff -/* 0C4F50 800C4350 000950C0 */ sll $t2, $t1, 3 -/* 0C4F54 800C4354 006A5821 */ addu $t3, $v1, $t2 -/* 0C4F58 800C4358 91640100 */ lbu $a0, 0x100($t3) -/* 0C4F5C 800C435C 240100FF */ li $at, 255 -/* 0C4F60 800C4360 10810006 */ beq $a0, $at, .L800C437C -/* 0C4F64 800C4364 00001025 */ move $v0, $zero -/* 0C4F68 800C4368 00046080 */ sll $t4, $a0, 2 -/* 0C4F6C 800C436C 006C6821 */ addu $t5, $v1, $t4 -/* 0C4F70 800C4370 8DA20080 */ lw $v0, 0x80($t5) -/* 0C4F74 800C4374 03E00008 */ jr $ra -/* 0C4F78 800C4378 00000000 */ nop - -.L800C437C: -/* 0C4F7C 800C437C 03E00008 */ jr $ra -/* 0C4F80 800C4380 00000000 */ nop - -glabel func_800C4384 -/* 0C4F84 800C4384 3C028013 */ lui $v0, %hi(D_8012A7E8) # $v0, 0x8013 -/* 0C4F88 800C4388 2442A7E8 */ addiu $v0, %lo(D_8012A7E8) # addiu $v0, $v0, -0x5818 -/* 0C4F8C 800C438C 8C4E0000 */ lw $t6, ($v0) -/* 0C4F90 800C4390 00000000 */ nop -/* 0C4F94 800C4394 A1C40014 */ sb $a0, 0x14($t6) -/* 0C4F98 800C4398 8C4F0000 */ lw $t7, ($v0) -/* 0C4F9C 800C439C 00000000 */ nop -/* 0C4FA0 800C43A0 A1E50015 */ sb $a1, 0x15($t7) -/* 0C4FA4 800C43A4 8C580000 */ lw $t8, ($v0) -/* 0C4FA8 800C43A8 00000000 */ nop -/* 0C4FAC 800C43AC A3060016 */ sb $a2, 0x16($t8) -/* 0C4FB0 800C43B0 8C590000 */ lw $t9, ($v0) -/* 0C4FB4 800C43B4 00000000 */ nop -/* 0C4FB8 800C43B8 A3270017 */ sb $a3, 0x17($t9) -/* 0C4FBC 800C43BC 8C490000 */ lw $t1, ($v0) -/* 0C4FC0 800C43C0 8FA80010 */ lw $t0, 0x10($sp) -/* 0C4FC4 800C43C4 03E00008 */ jr $ra -/* 0C4FC8 800C43C8 A128001C */ sb $t0, 0x1c($t1) - -glabel func_800C43CC -/* 0C4FCC 800C43CC 3C028013 */ lui $v0, %hi(D_8012A7E8) # $v0, 0x8013 -/* 0C4FD0 800C43D0 2442A7E8 */ addiu $v0, %lo(D_8012A7E8) # addiu $v0, $v0, -0x5818 -/* 0C4FD4 800C43D4 8C4E0000 */ lw $t6, ($v0) -/* 0C4FD8 800C43D8 00000000 */ nop -/* 0C4FDC 800C43DC A1C40018 */ sb $a0, 0x18($t6) -/* 0C4FE0 800C43E0 8C4F0000 */ lw $t7, ($v0) -/* 0C4FE4 800C43E4 00000000 */ nop -/* 0C4FE8 800C43E8 A1E50019 */ sb $a1, 0x19($t7) -/* 0C4FEC 800C43EC 8C580000 */ lw $t8, ($v0) -/* 0C4FF0 800C43F0 00000000 */ nop -/* 0C4FF4 800C43F4 A306001A */ sb $a2, 0x1a($t8) -/* 0C4FF8 800C43F8 8C590000 */ lw $t9, ($v0) -/* 0C4FFC 800C43FC 03E00008 */ jr $ra -/* 0C5000 800C4400 A327001B */ sb $a3, 0x1b($t9) - -/* 0C5004 800C4404 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0C5008 800C4408 00C03825 */ move $a3, $a2 -/* 0C500C 800C440C 00A03025 */ move $a2, $a1 -/* 0C5010 800C4410 AFA50024 */ sw $a1, 0x24($sp) -/* 0C5014 800C4414 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0C5018 800C4418 44812000 */ mtc1 $at, $f4 -/* 0C501C 800C441C 3C058013 */ lui $a1, %hi(D_8012A7E8) # $a1, 0x8013 -/* 0C5020 800C4420 AFBF001C */ sw $ra, 0x1c($sp) -/* 0C5024 800C4424 8CA5A7E8 */ lw $a1, %lo(D_8012A7E8)($a1) -/* 0C5028 800C4428 0C031169 */ jal func_800C45A4 -/* 0C502C 800C442C E7A40010 */ swc1 $f4, 0x10($sp) -/* 0C5030 800C4430 8FBF001C */ lw $ra, 0x1c($sp) -/* 0C5034 800C4434 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0C5038 800C4438 03E00008 */ jr $ra -/* 0C503C 800C443C 00000000 */ nop - -glabel func_800C4440 -/* 0C5040 800C4440 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0C5044 800C4444 AFB00020 */ sw $s0, 0x20($sp) -/* 0C5048 800C4448 3C108013 */ lui $s0, %hi(D_8012A7E8) # $s0, 0x8013 -/* 0C504C 800C444C 24028000 */ li $v0, -32768 -/* 0C5050 800C4450 8E10A7E8 */ lw $s0, %lo(D_8012A7E8)($s0) -/* 0C5054 800C4454 AFBF0024 */ sw $ra, 0x24($sp) -/* 0C5058 800C4458 14A20006 */ bne $a1, $v0, .L800C4474 -/* 0C505C 800C445C AFA70034 */ sw $a3, 0x34($sp) -/* 0C5060 800C4460 860E000C */ lh $t6, 0xc($s0) -/* 0C5064 800C4464 00000000 */ nop -/* 0C5068 800C4468 000E7843 */ sra $t7, $t6, 1 -/* 0C506C 800C446C 10000002 */ b .L800C4478 -/* 0C5070 800C4470 A60F0000 */ sh $t7, ($s0) -.L800C4474: -/* 0C5074 800C4474 A6050000 */ sh $a1, ($s0) -.L800C4478: -/* 0C5078 800C4478 14C20006 */ bne $a2, $v0, .L800C4494 -/* 0C507C 800C447C 02002825 */ move $a1, $s0 -/* 0C5080 800C4480 8618000E */ lh $t8, 0xe($s0) -/* 0C5084 800C4484 00000000 */ nop -/* 0C5088 800C4488 0018C843 */ sra $t9, $t8, 1 -/* 0C508C 800C448C 10000002 */ b .L800C4498 -/* 0C5090 800C4490 A6190002 */ sh $t9, 2($s0) -.L800C4494: -/* 0C5094 800C4494 A6060002 */ sh $a2, 2($s0) -.L800C4498: -/* 0C5098 800C4498 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0C509C 800C449C 44812000 */ mtc1 $at, $f4 -/* 0C50A0 800C44A0 8FA60034 */ lw $a2, 0x34($sp) -/* 0C50A4 800C44A4 8FA70038 */ lw $a3, 0x38($sp) -/* 0C50A8 800C44A8 0C031169 */ jal func_800C45A4 -/* 0C50AC 800C44AC E7A40010 */ swc1 $f4, 0x10($sp) -/* 0C50B0 800C44B0 8FBF0024 */ lw $ra, 0x24($sp) -/* 0C50B4 800C44B4 8FB00020 */ lw $s0, 0x20($sp) -/* 0C50B8 800C44B8 03E00008 */ jr $ra -/* 0C50BC 800C44BC 27BD0028 */ addiu $sp, $sp, 0x28 - -/* 0C50C0 800C44C0 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0C50C4 800C44C4 AFBF001C */ sw $ra, 0x1c($sp) -/* 0C50C8 800C44C8 04A0000D */ bltz $a1, .L800C4500 -/* 0C50CC 800C44CC AFA50024 */ sw $a1, 0x24($sp) -/* 0C50D0 800C44D0 28A10008 */ slti $at, $a1, 8 -/* 0C50D4 800C44D4 1020000A */ beqz $at, .L800C4500 -/* 0C50D8 800C44D8 00057880 */ sll $t7, $a1, 2 -/* 0C50DC 800C44DC 3C188013 */ lui $t8, %hi(D_8012A7E8) # $t8, 0x8013 -/* 0C50E0 800C44E0 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0C50E4 800C44E4 8F18A7E8 */ lw $t8, %lo(D_8012A7E8)($t8) -/* 0C50E8 800C44E8 44812000 */ mtc1 $at, $f4 -/* 0C50EC 800C44EC 01E57821 */ addu $t7, $t7, $a1 -/* 0C50F0 800C44F0 000F78C0 */ sll $t7, $t7, 3 -/* 0C50F4 800C44F4 01F82821 */ addu $a1, $t7, $t8 -/* 0C50F8 800C44F8 0C031169 */ jal func_800C45A4 -/* 0C50FC 800C44FC E7A40010 */ swc1 $f4, 0x10($sp) -.L800C4500: -/* 0C5100 800C4500 8FBF001C */ lw $ra, 0x1c($sp) -/* 0C5104 800C4504 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0C5108 800C4508 03E00008 */ jr $ra -/* 0C510C 800C450C 00000000 */ nop - -/* 0C5110 800C4510 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0C5114 800C4514 AFBF001C */ sw $ra, 0x1c($sp) -/* 0C5118 800C4518 04A0001E */ bltz $a1, .L800C4594 -/* 0C511C 800C451C AFA50024 */ sw $a1, 0x24($sp) -/* 0C5120 800C4520 28A10008 */ slti $at, $a1, 8 -/* 0C5124 800C4524 1020001B */ beqz $at, .L800C4594 -/* 0C5128 800C4528 24028000 */ li $v0, -32768 -/* 0C512C 800C452C 00057880 */ sll $t7, $a1, 2 -/* 0C5130 800C4530 3C188013 */ lui $t8, %hi(D_8012A7E8) # $t8, 0x8013 -/* 0C5134 800C4534 8F18A7E8 */ lw $t8, %lo(D_8012A7E8)($t8) -/* 0C5138 800C4538 01E57821 */ addu $t7, $t7, $a1 -/* 0C513C 800C453C 000F78C0 */ sll $t7, $t7, 3 -/* 0C5140 800C4540 14C20006 */ bne $a2, $v0, .L800C455C -/* 0C5144 800C4544 01F82821 */ addu $a1, $t7, $t8 -/* 0C5148 800C4548 84B9000C */ lh $t9, 0xc($a1) -/* 0C514C 800C454C 00000000 */ nop -/* 0C5150 800C4550 00194043 */ sra $t0, $t9, 1 -/* 0C5154 800C4554 10000002 */ b .L800C4560 -/* 0C5158 800C4558 A4A80000 */ sh $t0, ($a1) -.L800C455C: -/* 0C515C 800C455C A4A60000 */ sh $a2, ($a1) -.L800C4560: -/* 0C5160 800C4560 14E20006 */ bne $a3, $v0, .L800C457C -/* 0C5164 800C4564 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0C5168 800C4568 84A9000E */ lh $t1, 0xe($a1) -/* 0C516C 800C456C 00000000 */ nop -/* 0C5170 800C4570 00095043 */ sra $t2, $t1, 1 -/* 0C5174 800C4574 10000002 */ b .L800C4580 -/* 0C5178 800C4578 A4AA0002 */ sh $t2, 2($a1) -.L800C457C: -/* 0C517C 800C457C A4A70002 */ sh $a3, 2($a1) -.L800C4580: -/* 0C5180 800C4580 44812000 */ mtc1 $at, $f4 -/* 0C5184 800C4584 8FA60030 */ lw $a2, 0x30($sp) -/* 0C5188 800C4588 8FA70034 */ lw $a3, 0x34($sp) -/* 0C518C 800C458C 0C031169 */ jal func_800C45A4 -/* 0C5190 800C4590 E7A40010 */ swc1 $f4, 0x10($sp) -.L800C4594: -/* 0C5194 800C4594 8FBF001C */ lw $ra, 0x1c($sp) -/* 0C5198 800C4598 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0C519C 800C459C 03E00008 */ jr $ra -/* 0C51A0 800C45A0 00000000 */ nop - -glabel func_800C45A4 -/* 0C51A4 800C45A4 27BDFF78 */ addiu $sp, $sp, -0x88 -/* 0C51A8 800C45A8 AFB50028 */ sw $s5, 0x28($sp) -/* 0C51AC 800C45AC AFB40024 */ sw $s4, 0x24($sp) -/* 0C51B0 800C45B0 AFB30020 */ sw $s3, 0x20($sp) -/* 0C51B4 800C45B4 AFB2001C */ sw $s2, 0x1c($sp) -/* 0C51B8 800C45B8 AFB10018 */ sw $s1, 0x18($sp) -/* 0C51BC 800C45BC 00808825 */ move $s1, $a0 -/* 0C51C0 800C45C0 00A09025 */ move $s2, $a1 -/* 0C51C4 800C45C4 00E09825 */ move $s3, $a3 -/* 0C51C8 800C45C8 AFBF002C */ sw $ra, 0x2c($sp) -/* 0C51CC 800C45CC AFB00014 */ sw $s0, 0x14($sp) -/* 0C51D0 800C45D0 AFA60090 */ sw $a2, 0x90($sp) -/* 0C51D4 800C45D4 2415FFFF */ li $s5, -1 -/* 0C51D8 800C45D8 10C001E8 */ beqz $a2, .L800C4D7C -/* 0C51DC 800C45DC 2414FFFF */ li $s4, -1 -/* 0C51E0 800C45E0 90AF001D */ lbu $t7, 0x1d($a1) -/* 0C51E4 800C45E4 3C198013 */ lui $t9, %hi(D_8012A7E4) # $t9, 0x8013 -/* 0C51E8 800C45E8 8F39A7E4 */ lw $t9, %lo(D_8012A7E4)($t9) -/* 0C51EC 800C45EC 8C830000 */ lw $v1, ($a0) -/* 0C51F0 800C45F0 000FC280 */ sll $t8, $t7, 0xa -/* 0C51F4 800C45F4 84B00000 */ lh $s0, ($a1) -/* 0C51F8 800C45F8 84BF0002 */ lh $ra, 2($a1) -/* 0C51FC 800C45FC 03195821 */ addu $t3, $t8, $t9 -/* 0C5200 800C4600 246E0008 */ addiu $t6, $v1, 8 -/* 0C5204 800C4604 AC8E0000 */ sw $t6, ($a0) -/* 0C5208 800C4608 3C18800E */ lui $t8, %hi(D_800E3690) # $t8, 0x800e -/* 0C520C 800C460C 27183690 */ addiu $t8, %lo(D_800E3690) # addiu $t8, $t8, 0x3690 -/* 0C5210 800C4610 3C0F0600 */ lui $t7, 0x600 -/* 0C5214 800C4614 3C198013 */ lui $t9, %hi(D_8012A7E8) # $t9, 0x8013 -/* 0C5218 800C4618 AC6F0000 */ sw $t7, ($v1) -/* 0C521C 800C461C AC780004 */ sw $t8, 4($v1) -/* 0C5220 800C4620 8F39A7E8 */ lw $t9, %lo(D_8012A7E8)($t9) -/* 0C5224 800C4624 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 0C5228 800C4628 10B9005B */ beq $a1, $t9, .L800C4798 -/* 0C522C 800C462C 326E0005 */ andi $t6, $s3, 5 -/* 0C5230 800C4630 84A4000A */ lh $a0, 0xa($a1) -/* 0C5234 800C4634 84A50006 */ lh $a1, 6($a1) -/* 0C5238 800C4638 44810000 */ mtc1 $at, $f0 -/* 0C523C 800C463C 00857023 */ subu $t6, $a0, $a1 -/* 0C5240 800C4640 25CF0001 */ addiu $t7, $t6, 1 -/* 0C5244 800C4644 448F2000 */ mtc1 $t7, $f4 -/* 0C5248 800C4648 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 0C524C 800C464C 468021A0 */ cvt.s.w $f6, $f4 -/* 0C5250 800C4650 44814000 */ mtc1 $at, $f8 -/* 0C5254 800C4654 C7B00098 */ lwc1 $f16, 0x98($sp) -/* 0C5258 800C4658 46083283 */ div.s $f10, $f6, $f8 -/* 0C525C 800C465C 8E270000 */ lw $a3, ($s1) -/* 0C5260 800C4660 00A43021 */ addu $a2, $a1, $a0 -/* 0C5264 800C4664 24EE0008 */ addiu $t6, $a3, 8 -/* 0C5268 800C4668 AE2E0000 */ sw $t6, ($s1) -/* 0C526C 800C466C 864F0004 */ lh $t7, 4($s2) -/* 0C5270 800C4670 0006C843 */ sra $t9, $a2, 1 -/* 0C5274 800C4674 448F3000 */ mtc1 $t7, $f6 -/* 0C5278 800C4678 03203025 */ move $a2, $t9 -/* 0C527C 800C467C 46105482 */ mul.s $f18, $f10, $f16 -/* 0C5280 800C4680 4458F800 */ cfc1 $t8, $31 -/* 0C5284 800C4684 00000000 */ nop -/* 0C5288 800C4688 37010003 */ ori $at, $t8, 3 -/* 0C528C 800C468C 38210002 */ xori $at, $at, 2 -/* 0C5290 800C4690 44C1F800 */ ctc1 $at, $31 -/* 0C5294 800C4694 37010003 */ ori $at, $t8, 3 -/* 0C5298 800C4698 46009124 */ cvt.w.s $f4, $f18 -/* 0C529C 800C469C 38210002 */ xori $at, $at, 2 -/* 0C52A0 800C46A0 44D8F800 */ ctc1 $t8, $31 -/* 0C52A4 800C46A4 44022000 */ mfc1 $v0, $f4 -/* 0C52A8 800C46A8 46803220 */ cvt.s.w $f8, $f6 -/* 0C52AC 800C46AC 46004282 */ mul.s $f10, $f8, $f0 -/* 0C52B0 800C46B0 44C1F800 */ ctc1 $at, $31 -/* 0C52B4 800C46B4 3C01ED00 */ lui $at, 0xed00 -/* 0C52B8 800C46B8 46005424 */ cvt.w.s $f16, $f10 -/* 0C52BC 800C46BC 44198000 */ mfc1 $t9, $f16 -/* 0C52C0 800C46C0 44D8F800 */ ctc1 $t8, $31 -/* 0C52C4 800C46C4 332E0FFF */ andi $t6, $t9, 0xfff -/* 0C52C8 800C46C8 00C2C823 */ subu $t9, $a2, $v0 -/* 0C52CC 800C46CC 44999000 */ mtc1 $t9, $f18 -/* 0C52D0 800C46D0 000E7B00 */ sll $t7, $t6, 0xc -/* 0C52D4 800C46D4 46809120 */ cvt.s.w $f4, $f18 -/* 0C52D8 800C46D8 01E1C025 */ or $t8, $t7, $at -/* 0C52DC 800C46DC 46002182 */ mul.s $f6, $f4, $f0 -/* 0C52E0 800C46E0 444EF800 */ cfc1 $t6, $31 -/* 0C52E4 800C46E4 00000000 */ nop -/* 0C52E8 800C46E8 35C10003 */ ori $at, $t6, 3 -/* 0C52EC 800C46EC 38210002 */ xori $at, $at, 2 -/* 0C52F0 800C46F0 44C1F800 */ ctc1 $at, $31 -/* 0C52F4 800C46F4 00000000 */ nop -/* 0C52F8 800C46F8 46003224 */ cvt.w.s $f8, $f6 -/* 0C52FC 800C46FC 440F4000 */ mfc1 $t7, $f8 -/* 0C5300 800C4700 44CEF800 */ ctc1 $t6, $31 -/* 0C5304 800C4704 31F90FFF */ andi $t9, $t7, 0xfff -/* 0C5308 800C4708 03197025 */ or $t6, $t8, $t9 -/* 0C530C 800C470C ACEE0000 */ sw $t6, ($a3) -/* 0C5310 800C4710 864F0008 */ lh $t7, 8($s2) -/* 0C5314 800C4714 00000000 */ nop -/* 0C5318 800C4718 448F5000 */ mtc1 $t7, $f10 -/* 0C531C 800C471C 00000000 */ nop -/* 0C5320 800C4720 46805420 */ cvt.s.w $f16, $f10 -/* 0C5324 800C4724 46008482 */ mul.s $f18, $f16, $f0 -/* 0C5328 800C4728 4458F800 */ cfc1 $t8, $31 -/* 0C532C 800C472C 00000000 */ nop -/* 0C5330 800C4730 37010003 */ ori $at, $t8, 3 -/* 0C5334 800C4734 38210002 */ xori $at, $at, 2 -/* 0C5338 800C4738 44C1F800 */ ctc1 $at, $31 -/* 0C533C 800C473C 00000000 */ nop -/* 0C5340 800C4740 46009124 */ cvt.w.s $f4, $f18 -/* 0C5344 800C4744 44D8F800 */ ctc1 $t8, $31 -/* 0C5348 800C4748 00C2C021 */ addu $t8, $a2, $v0 -/* 0C534C 800C474C 44983000 */ mtc1 $t8, $f6 -/* 0C5350 800C4750 44192000 */ mfc1 $t9, $f4 -/* 0C5354 800C4754 46803220 */ cvt.s.w $f8, $f6 -/* 0C5358 800C4758 332E0FFF */ andi $t6, $t9, 0xfff -/* 0C535C 800C475C 000E7B00 */ sll $t7, $t6, 0xc -/* 0C5360 800C4760 46004282 */ mul.s $f10, $f8, $f0 -/* 0C5364 800C4764 4459F800 */ cfc1 $t9, $31 -/* 0C5368 800C4768 00000000 */ nop -/* 0C536C 800C476C 37210003 */ ori $at, $t9, 3 -/* 0C5370 800C4770 38210002 */ xori $at, $at, 2 -/* 0C5374 800C4774 44C1F800 */ ctc1 $at, $31 -/* 0C5378 800C4778 00000000 */ nop -/* 0C537C 800C477C 46005424 */ cvt.w.s $f16, $f10 -/* 0C5380 800C4780 440E8000 */ mfc1 $t6, $f16 -/* 0C5384 800C4784 44D9F800 */ ctc1 $t9, $31 -/* 0C5388 800C4788 31D80FFF */ andi $t8, $t6, 0xfff -/* 0C538C 800C478C 01F8C825 */ or $t9, $t7, $t8 -/* 0C5390 800C4790 ACF90004 */ sw $t9, 4($a3) -/* 0C5394 800C4794 326E0005 */ andi $t6, $s3, 5 -.L800C4798: -/* 0C5398 800C4798 11C00010 */ beqz $t6, .L800C47DC -/* 0C539C 800C479C 02002825 */ move $a1, $s0 -/* 0C53A0 800C47A0 9246001D */ lbu $a2, 0x1d($s2) -/* 0C53A4 800C47A4 AFBF007C */ sw $ra, 0x7c($sp) -/* 0C53A8 800C47A8 8FA40090 */ lw $a0, 0x90($sp) -/* 0C53AC 800C47AC 0C031368 */ jal func_800C4DA0 -/* 0C53B0 800C47B0 AFAB0034 */ sw $t3, 0x34($sp) -/* 0C53B4 800C47B4 8FAB0034 */ lw $t3, 0x34($sp) -/* 0C53B8 800C47B8 8FBF007C */ lw $ra, 0x7c($sp) -/* 0C53BC 800C47BC 326F0001 */ andi $t7, $s3, 1 -/* 0C53C0 800C47C0 11E00004 */ beqz $t7, .L800C47D4 -/* 0C53C4 800C47C4 0040A825 */ move $s5, $v0 -/* 0C53C8 800C47C8 02028023 */ subu $s0, $s0, $v0 -/* 0C53CC 800C47CC 10000003 */ b .L800C47DC -/* 0C53D0 800C47D0 26100001 */ addiu $s0, $s0, 1 -.L800C47D4: -/* 0C53D4 800C47D4 0002C043 */ sra $t8, $v0, 1 -/* 0C53D8 800C47D8 02188023 */ subu $s0, $s0, $t8 -.L800C47DC: -/* 0C53DC 800C47DC 32790002 */ andi $t9, $s3, 2 -/* 0C53E0 800C47E0 13200005 */ beqz $t9, .L800C47F8 -/* 0C53E4 800C47E4 326F0008 */ andi $t7, $s3, 8 -/* 0C53E8 800C47E8 956E0022 */ lhu $t6, 0x22($t3) -/* 0C53EC 800C47EC 00000000 */ nop -/* 0C53F0 800C47F0 03EEF823 */ subu $ra, $ra, $t6 -/* 0C53F4 800C47F4 27FF0001 */ addiu $ra, $ra, 1 -.L800C47F8: -/* 0C53F8 800C47F8 11E00005 */ beqz $t7, .L800C4810 -/* 0C53FC 800C47FC 00000000 */ nop -/* 0C5400 800C4800 95780022 */ lhu $t8, 0x22($t3) -/* 0C5404 800C4804 00000000 */ nop -/* 0C5408 800C4808 0018C843 */ sra $t9, $t8, 1 -/* 0C540C 800C480C 03F9F823 */ subu $ra, $ra, $t9 -.L800C4810: -/* 0C5410 800C4810 924E001B */ lbu $t6, 0x1b($s2) -/* 0C5414 800C4814 00000000 */ nop -/* 0C5418 800C4818 11C0004A */ beqz $t6, .L800C4944 -/* 0C541C 800C481C 00000000 */ nop -/* 0C5420 800C4820 8E230000 */ lw $v1, ($s1) -/* 0C5424 800C4824 3C18FB00 */ lui $t8, 0xfb00 -/* 0C5428 800C4828 246F0008 */ addiu $t7, $v1, 8 -/* 0C542C 800C482C AE2F0000 */ sw $t7, ($s1) -/* 0C5430 800C4830 AC780000 */ sw $t8, ($v1) -/* 0C5434 800C4834 924E0018 */ lbu $t6, 0x18($s2) -/* 0C5438 800C4838 92590019 */ lbu $t9, 0x19($s2) -/* 0C543C 800C483C 000E7E00 */ sll $t7, $t6, 0x18 -/* 0C5440 800C4840 00197400 */ sll $t6, $t9, 0x10 -/* 0C5444 800C4844 01EEC025 */ or $t8, $t7, $t6 -/* 0C5448 800C4848 924F001A */ lbu $t7, 0x1a($s2) -/* 0C544C 800C484C 2401FFFF */ li $at, -1 -/* 0C5450 800C4850 000F7200 */ sll $t6, $t7, 8 -/* 0C5454 800C4854 030EC825 */ or $t9, $t8, $t6 -/* 0C5458 800C4858 9258001B */ lbu $t8, 0x1b($s2) -/* 0C545C 800C485C 02002825 */ move $a1, $s0 -/* 0C5460 800C4860 03387025 */ or $t6, $t9, $t8 -/* 0C5464 800C4864 16A10009 */ bne $s5, $at, .L800C488C -/* 0C5468 800C4868 AC6E0004 */ sw $t6, 4($v1) -/* 0C546C 800C486C 9246001D */ lbu $a2, 0x1d($s2) -/* 0C5470 800C4870 AFBF007C */ sw $ra, 0x7c($sp) -/* 0C5474 800C4874 8FA40090 */ lw $a0, 0x90($sp) -/* 0C5478 800C4878 0C031368 */ jal func_800C4DA0 -/* 0C547C 800C487C AFAB0034 */ sw $t3, 0x34($sp) -/* 0C5480 800C4880 8FAB0034 */ lw $t3, 0x34($sp) -/* 0C5484 800C4884 8FBF007C */ lw $ra, 0x7c($sp) -/* 0C5488 800C4888 0040A825 */ move $s5, $v0 -.L800C488C: -/* 0C548C 800C488C 8E230000 */ lw $v1, ($s1) -/* 0C5490 800C4890 956F0022 */ lhu $t7, 0x22($t3) -/* 0C5494 800C4894 24790008 */ addiu $t9, $v1, 8 -/* 0C5498 800C4898 AE390000 */ sw $t9, ($s1) -/* 0C549C 800C489C 3C180702 */ lui $t8, (0x07020010 >> 16) # lui $t8, 0x702 -/* 0C54A0 800C48A0 3C0E000E */ lui $t6, %hi(D_000E36D8) # $t6, 0xe -/* 0C54A4 800C48A4 25CE36D8 */ addiu $t6, %lo(D_000E36D8) # addiu $t6, $t6, 0x36d8 -/* 0C54A8 800C48A8 37180010 */ ori $t8, (0x07020010 & 0xFFFF) # ori $t8, $t8, 0x10 -/* 0C54AC 800C48AC AC780000 */ sw $t8, ($v1) -/* 0C54B0 800C48B0 AC6E0004 */ sw $t6, 4($v1) -/* 0C54B4 800C48B4 8E230000 */ lw $v1, ($s1) -/* 0C54B8 800C48B8 01FF4821 */ addu $t1, $t7, $ra -/* 0C54BC 800C48BC 246F0008 */ addiu $t7, $v1, 8 -/* 0C54C0 800C48C0 AE2F0000 */ sw $t7, ($s1) -/* 0C54C4 800C48C4 86590004 */ lh $t9, 4($s2) -/* 0C54C8 800C48C8 0215C021 */ addu $t8, $s0, $s5 -/* 0C54CC 800C48CC 03387021 */ addu $t6, $t9, $t8 -/* 0C54D0 800C48D0 25CFFFFF */ addiu $t7, $t6, -1 -/* 0C54D4 800C48D4 31F903FF */ andi $t9, $t7, 0x3ff -/* 0C54D8 800C48D8 864F0006 */ lh $t7, 6($s2) -/* 0C54DC 800C48DC 0019C380 */ sll $t8, $t9, 0xe -/* 0C54E0 800C48E0 2529FFFF */ addiu $t1, $t1, -1 -/* 0C54E4 800C48E4 3C01F600 */ lui $at, 0xf600 -/* 0C54E8 800C48E8 03017025 */ or $t6, $t8, $at -/* 0C54EC 800C48EC 012FC821 */ addu $t9, $t1, $t7 -/* 0C54F0 800C48F0 333803FF */ andi $t8, $t9, 0x3ff -/* 0C54F4 800C48F4 00187880 */ sll $t7, $t8, 2 -/* 0C54F8 800C48F8 01CFC825 */ or $t9, $t6, $t7 -/* 0C54FC 800C48FC AC790000 */ sw $t9, ($v1) -/* 0C5500 800C4900 86580004 */ lh $t8, 4($s2) -/* 0C5504 800C4904 00000000 */ nop -/* 0C5508 800C4908 03107021 */ addu $t6, $t8, $s0 -/* 0C550C 800C490C 86580006 */ lh $t8, 6($s2) -/* 0C5510 800C4910 31CF03FF */ andi $t7, $t6, 0x3ff -/* 0C5514 800C4914 000FCB80 */ sll $t9, $t7, 0xe -/* 0C5518 800C4918 03F87021 */ addu $t6, $ra, $t8 -/* 0C551C 800C491C 31CF03FF */ andi $t7, $t6, 0x3ff -/* 0C5520 800C4920 000FC080 */ sll $t8, $t7, 2 -/* 0C5524 800C4924 03387025 */ or $t6, $t9, $t8 -/* 0C5528 800C4928 AC6E0004 */ sw $t6, 4($v1) -/* 0C552C 800C492C 8E230000 */ lw $v1, ($s1) -/* 0C5530 800C4930 3C19E700 */ lui $t9, 0xe700 -/* 0C5534 800C4934 246F0008 */ addiu $t7, $v1, 8 -/* 0C5538 800C4938 AE2F0000 */ sw $t7, ($s1) -/* 0C553C 800C493C AC600004 */ sw $zero, 4($v1) -/* 0C5540 800C4940 AC790000 */ sw $t9, ($v1) -.L800C4944: -/* 0C5544 800C4944 8E230000 */ lw $v1, ($s1) -/* 0C5548 800C4948 3C0EFA00 */ lui $t6, 0xfa00 -/* 0C554C 800C494C 24780008 */ addiu $t8, $v1, 8 -/* 0C5550 800C4950 AE380000 */ sw $t8, ($s1) -/* 0C5554 800C4954 AC6E0000 */ sw $t6, ($v1) -/* 0C5558 800C4958 9259001C */ lbu $t9, 0x1c($s2) -/* 0C555C 800C495C 2401FF00 */ li $at, -256 -/* 0C5560 800C4960 0321C025 */ or $t8, $t9, $at -/* 0C5564 800C4964 AC780004 */ sw $t8, 4($v1) -/* 0C5568 800C4968 8E230000 */ lw $v1, ($s1) -/* 0C556C 800C496C 3C0FFB00 */ lui $t7, 0xfb00 -/* 0C5570 800C4970 246E0008 */ addiu $t6, $v1, 8 -/* 0C5574 800C4974 AE2E0000 */ sw $t6, ($s1) -/* 0C5578 800C4978 AC6F0000 */ sw $t7, ($v1) -/* 0C557C 800C497C 92580014 */ lbu $t8, 0x14($s2) -/* 0C5580 800C4980 92590015 */ lbu $t9, 0x15($s2) -/* 0C5584 800C4984 00187600 */ sll $t6, $t8, 0x18 -/* 0C5588 800C4988 0019C400 */ sll $t8, $t9, 0x10 -/* 0C558C 800C498C 01D87825 */ or $t7, $t6, $t8 -/* 0C5590 800C4990 924E0016 */ lbu $t6, 0x16($s2) -/* 0C5594 800C4994 00000000 */ nop -/* 0C5598 800C4998 000EC200 */ sll $t8, $t6, 8 -/* 0C559C 800C499C 01F8C825 */ or $t9, $t7, $t8 -/* 0C55A0 800C49A0 924F0017 */ lbu $t7, 0x17($s2) -/* 0C55A4 800C49A4 00000000 */ nop -/* 0C55A8 800C49A8 032FC025 */ or $t8, $t9, $t7 -/* 0C55AC 800C49AC AC780004 */ sw $t8, 4($v1) -/* 0C55B0 800C49B0 8E230000 */ lw $v1, ($s1) -/* 0C55B4 800C49B4 3C0F000E */ lui $t7, %hi(D_000E36C8) # $t7, 0xe -/* 0C55B8 800C49B8 246E0008 */ addiu $t6, $v1, 8 -/* 0C55BC 800C49BC AE2E0000 */ sw $t6, ($s1) -/* 0C55C0 800C49C0 3C190702 */ lui $t9, (0x07020010 >> 16) # lui $t9, 0x702 -/* 0C55C4 800C49C4 37390010 */ ori $t9, (0x07020010 & 0xFFFF) # ori $t9, $t9, 0x10 -/* 0C55C8 800C49C8 25EF36C8 */ addiu $t7, %lo(D_000E36C8) # addiu $t7, $t7, 0x36c8 -/* 0C55CC 800C49CC AC6F0004 */ sw $t7, 4($v1) -/* 0C55D0 800C49D0 AC790000 */ sw $t9, ($v1) -/* 0C55D4 800C49D4 8E230000 */ lw $v1, ($s1) -/* 0C55D8 800C49D8 3C0EE700 */ lui $t6, 0xe700 -/* 0C55DC 800C49DC 24780008 */ addiu $t8, $v1, 8 -/* 0C55E0 800C49E0 AE380000 */ sw $t8, ($s1) -/* 0C55E4 800C49E4 AC600004 */ sw $zero, 4($v1) -/* 0C55E8 800C49E8 AC6E0000 */ sw $t6, ($v1) -/* 0C55EC 800C49EC 8FB80090 */ lw $t8, 0x90($sp) -/* 0C55F0 800C49F0 86590020 */ lh $t9, 0x20($s2) -/* 0C55F4 800C49F4 864F0022 */ lh $t7, 0x22($s2) -/* 0C55F8 800C49F8 930E0000 */ lbu $t6, ($t8) -/* 0C55FC 800C49FC 02198021 */ addu $s0, $s0, $t9 -/* 0C5600 800C4A00 11C000C3 */ beqz $t6, .L800C4D10 -/* 0C5604 800C4A04 03EFF821 */ addu $ra, $ra, $t7 -/* 0C5608 800C4A08 8659000A */ lh $t9, 0xa($s2) -/* 0C560C 800C4A0C 8FAD0064 */ lw $t5, 0x64($sp) -/* 0C5610 800C4A10 033F082A */ slt $at, $t9, $ra -/* 0C5614 800C4A14 142000BE */ bnez $at, .L800C4D10 -/* 0C5618 800C4A18 03009821 */ addu $s3, $t8, $zero -/* 0C561C 800C4A1C 8FAC0068 */ lw $t4, 0x68($sp) -/* 0C5620 800C4A20 31C200FF */ andi $v0, $t6, 0xff -/* 0C5624 800C4A24 304400FF */ andi $a0, $v0, 0xff -.L800C4A28: -/* 0C5628 800C4A28 28810021 */ slti $at, $a0, 0x21 -/* 0C562C 800C4A2C 00002825 */ move $a1, $zero -/* 0C5630 800C4A30 00004025 */ move $t0, $zero -/* 0C5634 800C4A34 14200003 */ bnez $at, .L800C4A44 -/* 0C5638 800C4A38 00801825 */ move $v1, $a0 -/* 0C563C 800C4A3C 28610080 */ slti $at, $v1, 0x80 -/* 0C5640 800C4A40 1420002C */ bnez $at, .L800C4AF4 -.L800C4A44: -/* 0C5644 800C4A44 246FFFF7 */ addiu $t7, $v1, -9 -/* 0C5648 800C4A48 2DE10018 */ sltiu $at, $t7, 0x18 -/* 0C564C 800C4A4C 10200026 */ beqz $at, .L800C4AE8 -/* 0C5650 800C4A50 000F7880 */ sll $t7, $t7, 2 -/* 0C5654 800C4A54 3C01800F */ lui $at, 0x800f -/* 0C5658 800C4A58 002F0821 */ addu $at, $at, $t7 -/* 0C565C 800C4A5C 8C2F9360 */ lw $t7, -0x6ca0($at) -/* 0C5660 800C4A60 00000000 */ nop -/* 0C5664 800C4A64 01E00008 */ jr $t7 -/* 0C5668 800C4A68 00000000 */ nop -/* 0C566C 800C4A6C 956E0024 */ lhu $t6, 0x24($t3) -/* 0C5670 800C4A70 10000050 */ b .L800C4BB4 -/* 0C5674 800C4A74 020E8021 */ addu $s0, $s0, $t6 -/* 0C5678 800C4A78 95790022 */ lhu $t9, 0x22($t3) -/* 0C567C 800C4A7C 86500020 */ lh $s0, 0x20($s2) -/* 0C5680 800C4A80 1000004C */ b .L800C4BB4 -/* 0C5684 800C4A84 03F9F821 */ addu $ra, $ra, $t9 -/* 0C5688 800C4A88 864F0020 */ lh $t7, 0x20($s2) -/* 0C568C 800C4A8C 95620026 */ lhu $v0, 0x26($t3) -/* 0C5690 800C4A90 020F7023 */ subu $t6, $s0, $t7 -/* 0C5694 800C4A94 01C2001A */ div $zero, $t6, $v0 -/* 0C5698 800C4A98 0202C021 */ addu $t8, $s0, $v0 -/* 0C569C 800C4A9C 14400002 */ bnez $v0, .L800C4AA8 -/* 0C56A0 800C4AA0 00000000 */ nop -/* 0C56A4 800C4AA4 0007000D */ break 7 -.L800C4AA8: -/* 0C56A8 800C4AA8 2401FFFF */ li $at, -1 -/* 0C56AC 800C4AAC 14410004 */ bne $v0, $at, .L800C4AC0 -/* 0C56B0 800C4AB0 3C018000 */ lui $at, 0x8000 -/* 0C56B4 800C4AB4 15C10002 */ bne $t6, $at, .L800C4AC0 -/* 0C56B8 800C4AB8 00000000 */ nop -/* 0C56BC 800C4ABC 0006000D */ break 6 -.L800C4AC0: -/* 0C56C0 800C4AC0 0000C810 */ mfhi $t9 -/* 0C56C4 800C4AC4 03198023 */ subu $s0, $t8, $t9 -/* 0C56C8 800C4AC8 1000003A */ b .L800C4BB4 -/* 0C56CC 800C4ACC 00000000 */ nop -/* 0C56D0 800C4AD0 956F0022 */ lhu $t7, 0x22($t3) -/* 0C56D4 800C4AD4 10000037 */ b .L800C4BB4 -/* 0C56D8 800C4AD8 03EFF821 */ addu $ra, $ra, $t7 -/* 0C56DC 800C4ADC 86500020 */ lh $s0, 0x20($s2) -/* 0C56E0 800C4AE0 10000034 */ b .L800C4BB4 -/* 0C56E4 800C4AE4 00000000 */ nop -.L800C4AE8: -/* 0C56E8 800C4AE8 956E0024 */ lhu $t6, 0x24($t3) -/* 0C56EC 800C4AEC 10000031 */ b .L800C4BB4 -/* 0C56F0 800C4AF0 020E8021 */ addu $s0, $s0, $t6 -.L800C4AF4: -/* 0C56F4 800C4AF4 2464FFE0 */ addiu $a0, $v1, -0x20 -/* 0C56F8 800C4AF8 309800FF */ andi $t8, $a0, 0xff -/* 0C56FC 800C4AFC 0018C8C0 */ sll $t9, $t8, 3 -/* 0C5700 800C4B00 01791021 */ addu $v0, $t3, $t9 -/* 0C5704 800C4B04 90470100 */ lbu $a3, 0x100($v0) -/* 0C5708 800C4B08 240100FF */ li $at, 255 -/* 0C570C 800C4B0C 10E10029 */ beq $a3, $at, .L800C4BB4 -/* 0C5710 800C4B10 00000000 */ nop -/* 0C5714 800C4B14 12870015 */ beq $s4, $a3, .L800C4B6C -/* 0C5718 800C4B18 24050001 */ li $a1, 1 -/* 0C571C 800C4B1C 00077880 */ sll $t7, $a3, 2 -/* 0C5720 800C4B20 8E230000 */ lw $v1, ($s1) -/* 0C5724 800C4B24 016F7021 */ addu $t6, $t3, $t7 -/* 0C5728 800C4B28 8DC40080 */ lw $a0, 0x80($t6) -/* 0C572C 800C4B2C 24780008 */ addiu $t8, $v1, 8 -/* 0C5730 800C4B30 AE380000 */ sw $t8, ($s1) -/* 0C5734 800C4B34 8486000A */ lh $a2, 0xa($a0) -/* 0C5738 800C4B38 3C010700 */ lui $at, 0x700 -/* 0C573C 800C4B3C 30D900FF */ andi $t9, $a2, 0xff -/* 0C5740 800C4B40 00197C00 */ sll $t7, $t9, 0x10 -/* 0C5744 800C4B44 0006C0C0 */ sll $t8, $a2, 3 -/* 0C5748 800C4B48 3319FFFF */ andi $t9, $t8, 0xffff -/* 0C574C 800C4B4C 01E17025 */ or $t6, $t7, $at -/* 0C5750 800C4B50 01D97825 */ or $t7, $t6, $t9 -/* 0C5754 800C4B54 AC6F0000 */ sw $t7, ($v1) -/* 0C5758 800C4B58 8C98000C */ lw $t8, 0xc($a0) -/* 0C575C 800C4B5C 3C018000 */ lui $at, 0x8000 -/* 0C5760 800C4B60 03017021 */ addu $t6, $t8, $at -/* 0C5764 800C4B64 00E0A025 */ move $s4, $a3 -/* 0C5768 800C4B68 AC6E0004 */ sw $t6, 4($v1) -.L800C4B6C: -/* 0C576C 800C4B6C 90590102 */ lbu $t9, 0x102($v0) -/* 0C5770 800C4B70 00000000 */ nop -/* 0C5774 800C4B74 AFB90058 */ sw $t9, 0x58($sp) -/* 0C5778 800C4B78 904F0103 */ lbu $t7, 0x103($v0) -/* 0C577C 800C4B7C 00000000 */ nop -/* 0C5780 800C4B80 AFAF0054 */ sw $t7, 0x54($sp) -/* 0C5784 800C4B84 90580107 */ lbu $t8, 0x107($v0) -/* 0C5788 800C4B88 904C0104 */ lbu $t4, 0x104($v0) -/* 0C578C 800C4B8C 904D0105 */ lbu $t5, 0x105($v0) -/* 0C5790 800C4B90 90550106 */ lbu $s5, 0x106($v0) -/* 0C5794 800C4B94 AFB8004C */ sw $t8, 0x4c($sp) -/* 0C5798 800C4B98 95630020 */ lhu $v1, 0x20($t3) -/* 0C579C 800C4B9C 00000000 */ nop -/* 0C57A0 800C4BA0 14600004 */ bnez $v1, .L800C4BB4 -/* 0C57A4 800C4BA4 00604025 */ move $t0, $v1 -/* 0C57A8 800C4BA8 90480101 */ lbu $t0, 0x101($v0) -/* 0C57AC 800C4BAC 10000001 */ b .L800C4BB4 -/* 0C57B0 800C4BB0 00000000 */ nop -.L800C4BB4: -/* 0C57B4 800C4BB4 10A00043 */ beqz $a1, .L800C4CC4 -/* 0C57B8 800C4BB8 3C01E400 */ lui $at, 0xe400 -/* 0C57BC 800C4BBC 864E0004 */ lh $t6, 4($s2) -/* 0C57C0 800C4BC0 8FAF0058 */ lw $t7, 0x58($sp) -/* 0C57C4 800C4BC4 01D0C821 */ addu $t9, $t6, $s0 -/* 0C57C8 800C4BC8 864E0006 */ lh $t6, 6($s2) -/* 0C57CC 800C4BCC 032F2821 */ addu $a1, $t9, $t7 -/* 0C57D0 800C4BD0 8FAF0054 */ lw $t7, 0x54($sp) -/* 0C57D4 800C4BD4 01DFC821 */ addu $t9, $t6, $ra -/* 0C57D8 800C4BD8 0005C080 */ sll $t8, $a1, 2 -/* 0C57DC 800C4BDC 032F3021 */ addu $a2, $t9, $t7 -/* 0C57E0 800C4BE0 8FB9004C */ lw $t9, 0x4c($sp) -/* 0C57E4 800C4BE4 03002825 */ move $a1, $t8 -/* 0C57E8 800C4BE8 0006C080 */ sll $t8, $a2, 2 -/* 0C57EC 800C4BEC 00157080 */ sll $t6, $s5, 2 -/* 0C57F0 800C4BF0 00197880 */ sll $t7, $t9, 2 -/* 0C57F4 800C4BF4 03003025 */ move $a2, $t8 -/* 0C57F8 800C4BF8 01C51021 */ addu $v0, $t6, $a1 -/* 0C57FC 800C4BFC 01F81821 */ addu $v1, $t7, $t8 -/* 0C5800 800C4C00 000CC140 */ sll $t8, $t4, 5 -/* 0C5804 800C4C04 000D7140 */ sll $t6, $t5, 5 -/* 0C5808 800C4C08 00405025 */ move $t2, $v0 -/* 0C580C 800C4C0C 00604825 */ move $t1, $v1 -/* 0C5810 800C4C10 03006025 */ move $t4, $t8 -/* 0C5814 800C4C14 04A10006 */ bgez $a1, .L800C4C30 -/* 0C5818 800C4C18 01C06825 */ move $t5, $t6 -/* 0C581C 800C4C1C 18400004 */ blez $v0, .L800C4C30 -/* 0C5820 800C4C20 0005C823 */ negu $t9, $a1 -/* 0C5824 800C4C24 001978C0 */ sll $t7, $t9, 3 -/* 0C5828 800C4C28 030F6021 */ addu $t4, $t8, $t7 -/* 0C582C 800C4C2C 00002825 */ move $a1, $zero -.L800C4C30: -/* 0C5830 800C4C30 04C10006 */ bgez $a2, .L800C4C4C -/* 0C5834 800C4C34 314F0FFF */ andi $t7, $t2, 0xfff -/* 0C5838 800C4C38 18600004 */ blez $v1, .L800C4C4C -/* 0C583C 800C4C3C 0006C023 */ negu $t8, $a2 -/* 0C5840 800C4C40 001870C0 */ sll $t6, $t8, 3 -/* 0C5844 800C4C44 01AE6821 */ addu $t5, $t5, $t6 -/* 0C5848 800C4C48 00003025 */ move $a2, $zero -.L800C4C4C: -/* 0C584C 800C4C4C 8E230000 */ lw $v1, ($s1) -/* 0C5850 800C4C50 000FC300 */ sll $t8, $t7, 0xc -/* 0C5854 800C4C54 24790008 */ addiu $t9, $v1, 8 -/* 0C5858 800C4C58 AE390000 */ sw $t9, ($s1) -/* 0C585C 800C4C5C 31390FFF */ andi $t9, $t1, 0xfff -/* 0C5860 800C4C60 03017025 */ or $t6, $t8, $at -/* 0C5864 800C4C64 01D97825 */ or $t7, $t6, $t9 -/* 0C5868 800C4C68 30B80FFF */ andi $t8, $a1, 0xfff -/* 0C586C 800C4C6C 00187300 */ sll $t6, $t8, 0xc -/* 0C5870 800C4C70 30D90FFF */ andi $t9, $a2, 0xfff -/* 0C5874 800C4C74 AC6F0000 */ sw $t7, ($v1) -/* 0C5878 800C4C78 01D97825 */ or $t7, $t6, $t9 -/* 0C587C 800C4C7C AC6F0004 */ sw $t7, 4($v1) -/* 0C5880 800C4C80 8E230000 */ lw $v1, ($s1) -/* 0C5884 800C4C84 3C0EB300 */ lui $t6, 0xb300 -/* 0C5888 800C4C88 24780008 */ addiu $t8, $v1, 8 -/* 0C588C 800C4C8C AE380000 */ sw $t8, ($s1) -/* 0C5890 800C4C90 31B8FFFF */ andi $t8, $t5, 0xffff -/* 0C5894 800C4C94 000C7C00 */ sll $t7, $t4, 0x10 -/* 0C5898 800C4C98 AC6E0000 */ sw $t6, ($v1) -/* 0C589C 800C4C9C 01F87025 */ or $t6, $t7, $t8 -/* 0C58A0 800C4CA0 AC6E0004 */ sw $t6, 4($v1) -/* 0C58A4 800C4CA4 8E270000 */ lw $a3, ($s1) -/* 0C58A8 800C4CA8 3C180400 */ lui $t8, (0x04000400 >> 16) # lui $t8, 0x400 -/* 0C58AC 800C4CAC 24F90008 */ addiu $t9, $a3, 8 -/* 0C58B0 800C4CB0 AE390000 */ sw $t9, ($s1) -/* 0C58B4 800C4CB4 37180400 */ ori $t8, (0x04000400 & 0xFFFF) # ori $t8, $t8, 0x400 -/* 0C58B8 800C4CB8 3C0FB200 */ lui $t7, 0xb200 -/* 0C58BC 800C4CBC ACEF0000 */ sw $t7, ($a3) -/* 0C58C0 800C4CC0 ACF80004 */ sw $t8, 4($a3) -.L800C4CC4: -/* 0C58C4 800C4CC4 3C0E8013 */ lui $t6, %hi(D_8012A7F0) # $t6, 0x8013 -/* 0C58C8 800C4CC8 8DCEA7F0 */ lw $t6, %lo(D_8012A7F0)($t6) -/* 0C58CC 800C4CCC 00000000 */ nop -/* 0C58D0 800C4CD0 11C00004 */ beqz $t6, .L800C4CE4 -/* 0C58D4 800C4CD4 00000000 */ nop -/* 0C58D8 800C4CD8 11000002 */ beqz $t0, .L800C4CE4 -/* 0C58DC 800C4CDC 00000000 */ nop -/* 0C58E0 800C4CE0 2508FFFF */ addiu $t0, $t0, -1 -.L800C4CE4: -/* 0C58E4 800C4CE4 92620001 */ lbu $v0, 1($s3) -/* 0C58E8 800C4CE8 02088021 */ addu $s0, $s0, $t0 -/* 0C58EC 800C4CEC 10400008 */ beqz $v0, .L800C4D10 -/* 0C58F0 800C4CF0 26730001 */ addiu $s3, $s3, 1 -/* 0C58F4 800C4CF4 8659000A */ lh $t9, 0xa($s2) -/* 0C58F8 800C4CF8 00000000 */ nop -/* 0C58FC 800C4CFC 033F082A */ slt $at, $t9, $ra -/* 0C5900 800C4D00 1020FF49 */ beqz $at, .L800C4A28 -/* 0C5904 800C4D04 304400FF */ andi $a0, $v0, 0xff -/* 0C5908 800C4D08 AFAD0064 */ sw $t5, 0x64($sp) -/* 0C590C 800C4D0C AFAC0068 */ sw $t4, 0x68($sp) -.L800C4D10: -/* 0C5910 800C4D10 864F0020 */ lh $t7, 0x20($s2) -/* 0C5914 800C4D14 864E0022 */ lh $t6, 0x22($s2) -/* 0C5918 800C4D18 020FC023 */ subu $t8, $s0, $t7 -/* 0C591C 800C4D1C 03EEC823 */ subu $t9, $ra, $t6 -/* 0C5920 800C4D20 A6580000 */ sh $t8, ($s2) -/* 0C5924 800C4D24 A6590002 */ sh $t9, 2($s2) -/* 0C5928 800C4D28 8E230000 */ lw $v1, ($s1) -/* 0C592C 800C4D2C 3C18E700 */ lui $t8, 0xe700 -/* 0C5930 800C4D30 246F0008 */ addiu $t7, $v1, 8 -/* 0C5934 800C4D34 AE2F0000 */ sw $t7, ($s1) -/* 0C5938 800C4D38 3C0E8013 */ lui $t6, %hi(D_8012A7E8) # $t6, 0x8013 -/* 0C593C 800C4D3C AC600004 */ sw $zero, 4($v1) -/* 0C5940 800C4D40 AC780000 */ sw $t8, ($v1) -/* 0C5944 800C4D44 8DCEA7E8 */ lw $t6, %lo(D_8012A7E8)($t6) -/* 0C5948 800C4D48 00000000 */ nop -/* 0C594C 800C4D4C 124E0003 */ beq $s2, $t6, .L800C4D5C -/* 0C5950 800C4D50 00000000 */ nop -/* 0C5954 800C4D54 0C019E8F */ jal func_80067A3C -/* 0C5958 800C4D58 02202025 */ move $a0, $s1 -.L800C4D5C: -/* 0C595C 800C4D5C 0C01ECF4 */ jal func_8007B3D0 -/* 0C5960 800C4D60 02202025 */ move $a0, $s1 -/* 0C5964 800C4D64 8E230000 */ lw $v1, ($s1) -/* 0C5968 800C4D68 3C0FE700 */ lui $t7, 0xe700 -/* 0C596C 800C4D6C 24790008 */ addiu $t9, $v1, 8 -/* 0C5970 800C4D70 AE390000 */ sw $t9, ($s1) -/* 0C5974 800C4D74 AC600004 */ sw $zero, 4($v1) -/* 0C5978 800C4D78 AC6F0000 */ sw $t7, ($v1) -.L800C4D7C: -/* 0C597C 800C4D7C 8FBF002C */ lw $ra, 0x2c($sp) -/* 0C5980 800C4D80 8FB00014 */ lw $s0, 0x14($sp) -/* 0C5984 800C4D84 8FB10018 */ lw $s1, 0x18($sp) -/* 0C5988 800C4D88 8FB2001C */ lw $s2, 0x1c($sp) -/* 0C598C 800C4D8C 8FB30020 */ lw $s3, 0x20($sp) -/* 0C5990 800C4D90 8FB40024 */ lw $s4, 0x24($sp) -/* 0C5994 800C4D94 8FB50028 */ lw $s5, 0x28($sp) -/* 0C5998 800C4D98 03E00008 */ jr $ra -/* 0C599C 800C4D9C 27BD0088 */ addiu $sp, $sp, 0x88 - -glabel func_800C4DA0 -/* 0C59A0 800C4DA0 14800003 */ bnez $a0, .L800C4DB0 -/* 0C59A4 800C4DA4 3C188013 */ lui $t8, 0x8013 -/* 0C59A8 800C4DA8 03E00008 */ jr $ra -/* 0C59AC 800C4DAC 00001025 */ move $v0, $zero - -.L800C4DB0: -/* 0C59B0 800C4DB0 04C10006 */ bgez $a2, .L800C4DCC -/* 0C59B4 800C4DB4 00A01825 */ move $v1, $a1 -/* 0C59B8 800C4DB8 3C0E8013 */ lui $t6, %hi(D_8012A7E8) # $t6, 0x8013 -/* 0C59BC 800C4DBC 8DCEA7E8 */ lw $t6, %lo(D_8012A7E8)($t6) -/* 0C59C0 800C4DC0 00000000 */ nop -/* 0C59C4 800C4DC4 91C6001D */ lbu $a2, 0x1d($t6) -/* 0C59C8 800C4DC8 00000000 */ nop -.L800C4DCC: -/* 0C59CC 800C4DCC 8F18A7E4 */ lw $t8, -0x581c($t8) -/* 0C59D0 800C4DD0 90990000 */ lbu $t9, ($a0) -/* 0C59D4 800C4DD4 00067A80 */ sll $t7, $a2, 0xa -/* 0C59D8 800C4DD8 1320003D */ beqz $t9, .L800C4ED0 -/* 0C59DC 800C4DDC 01F81021 */ addu $v0, $t7, $t8 -/* 0C59E0 800C4DE0 3C0A8013 */ lui $t2, %hi(D_8012A7F0) # $t2, 0x8013 -/* 0C59E4 800C4DE4 8D4AA7F0 */ lw $t2, %lo(D_8012A7F0)($t2) -/* 0C59E8 800C4DE8 90880000 */ lbu $t0, ($a0) -/* 0C59EC 800C4DEC 00803825 */ move $a3, $a0 -/* 0C59F0 800C4DF0 240C00FF */ li $t4, 255 -/* 0C59F4 800C4DF4 240B0009 */ li $t3, 9 -/* 0C59F8 800C4DF8 310600FF */ andi $a2, $t0, 0xff -.L800C4DFC: -/* 0C59FC 800C4DFC 28C10021 */ slti $at, $a2, 0x21 -/* 0C5A00 800C4E00 00602025 */ move $a0, $v1 -/* 0C5A04 800C4E04 14200004 */ bnez $at, .L800C4E18 -/* 0C5A08 800C4E08 00C04825 */ move $t1, $a2 -/* 0C5A0C 800C4E0C 28C10080 */ slti $at, $a2, 0x80 -/* 0C5A10 800C4E10 14200017 */ bnez $at, .L800C4E70 -/* 0C5A14 800C4E14 2526FFE0 */ addiu $a2, $t1, -0x20 -.L800C4E18: -/* 0C5A18 800C4E18 15690012 */ bne $t3, $t1, .L800C4E64 -/* 0C5A1C 800C4E1C 00000000 */ nop -/* 0C5A20 800C4E20 94460026 */ lhu $a2, 0x26($v0) -/* 0C5A24 800C4E24 00000000 */ nop -/* 0C5A28 800C4E28 0066001A */ div $zero, $v1, $a2 -/* 0C5A2C 800C4E2C 00666821 */ addu $t5, $v1, $a2 -/* 0C5A30 800C4E30 14C00002 */ bnez $a2, .L800C4E3C -/* 0C5A34 800C4E34 00000000 */ nop -/* 0C5A38 800C4E38 0007000D */ break 7 -.L800C4E3C: -/* 0C5A3C 800C4E3C 2401FFFF */ li $at, -1 -/* 0C5A40 800C4E40 14C10004 */ bne $a2, $at, .L800C4E54 -/* 0C5A44 800C4E44 3C018000 */ lui $at, 0x8000 -/* 0C5A48 800C4E48 14610002 */ bne $v1, $at, .L800C4E54 -/* 0C5A4C 800C4E4C 00000000 */ nop -/* 0C5A50 800C4E50 0006000D */ break 6 -.L800C4E54: -/* 0C5A54 800C4E54 00007010 */ mfhi $t6 -/* 0C5A58 800C4E58 01AE1823 */ subu $v1, $t5, $t6 -/* 0C5A5C 800C4E5C 10000013 */ b .L800C4EAC -/* 0C5A60 800C4E60 00000000 */ nop -.L800C4E64: -/* 0C5A64 800C4E64 944F0024 */ lhu $t7, 0x24($v0) -/* 0C5A68 800C4E68 10000010 */ b .L800C4EAC -/* 0C5A6C 800C4E6C 006F1821 */ addu $v1, $v1, $t7 -.L800C4E70: -/* 0C5A70 800C4E70 30D800FF */ andi $t8, $a2, 0xff -/* 0C5A74 800C4E74 0018C8C0 */ sll $t9, $t8, 3 -/* 0C5A78 800C4E78 00594021 */ addu $t0, $v0, $t9 -/* 0C5A7C 800C4E7C 910D0100 */ lbu $t5, 0x100($t0) -/* 0C5A80 800C4E80 00000000 */ nop -/* 0C5A84 800C4E84 118D0009 */ beq $t4, $t5, .L800C4EAC -/* 0C5A88 800C4E88 00000000 */ nop -/* 0C5A8C 800C4E8C 94460020 */ lhu $a2, 0x20($v0) -/* 0C5A90 800C4E90 00000000 */ nop -/* 0C5A94 800C4E94 14C00004 */ bnez $a2, .L800C4EA8 -/* 0C5A98 800C4E98 00000000 */ nop -/* 0C5A9C 800C4E9C 910E0101 */ lbu $t6, 0x101($t0) -/* 0C5AA0 800C4EA0 10000002 */ b .L800C4EAC -/* 0C5AA4 800C4EA4 006E1821 */ addu $v1, $v1, $t6 -.L800C4EA8: -/* 0C5AA8 800C4EA8 00661821 */ addu $v1, $v1, $a2 -.L800C4EAC: -/* 0C5AAC 800C4EAC 11400004 */ beqz $t2, .L800C4EC0 -/* 0C5AB0 800C4EB0 00000000 */ nop -/* 0C5AB4 800C4EB4 10640002 */ beq $v1, $a0, .L800C4EC0 -/* 0C5AB8 800C4EB8 00000000 */ nop -/* 0C5ABC 800C4EBC 2463FFFF */ addiu $v1, $v1, -1 -.L800C4EC0: -/* 0C5AC0 800C4EC0 90E80001 */ lbu $t0, 1($a3) -/* 0C5AC4 800C4EC4 24E70001 */ addiu $a3, $a3, 1 -/* 0C5AC8 800C4EC8 1500FFCC */ bnez $t0, .L800C4DFC -/* 0C5ACC 800C4ECC 310600FF */ andi $a2, $t0, 0xff -.L800C4ED0: -/* 0C5AD0 800C4ED0 00651023 */ subu $v0, $v1, $a1 -/* 0C5AD4 800C4ED4 03E00008 */ jr $ra -/* 0C5AD8 800C4ED8 00000000 */ nop - -glabel func_800C4EDC -/* 0C5ADC 800C4EDC 18800025 */ blez $a0, .L800C4F74 -/* 0C5AE0 800C4EE0 28810008 */ slti $at, $a0, 8 -/* 0C5AE4 800C4EE4 10200023 */ beqz $at, .L800C4F74 -/* 0C5AE8 800C4EE8 00047080 */ sll $t6, $a0, 2 -/* 0C5AEC 800C4EEC 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 -/* 0C5AF0 800C4EF0 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) -/* 0C5AF4 800C4EF4 01C47021 */ addu $t6, $t6, $a0 -/* 0C5AF8 800C4EF8 000E70C0 */ sll $t6, $t6, 3 -/* 0C5AFC 800C4EFC 00A7082A */ slt $at, $a1, $a3 -/* 0C5B00 800C4F00 01CF1021 */ addu $v0, $t6, $t7 -/* 0C5B04 800C4F04 A4400000 */ sh $zero, ($v0) -/* 0C5B08 800C4F08 10200004 */ beqz $at, .L800C4F1C -/* 0C5B0C 800C4F0C A4400002 */ sh $zero, 2($v0) -/* 0C5B10 800C4F10 A4450004 */ sh $a1, 4($v0) -/* 0C5B14 800C4F14 10000003 */ b .L800C4F24 -/* 0C5B18 800C4F18 A4470008 */ sh $a3, 8($v0) -.L800C4F1C: -/* 0C5B1C 800C4F1C A4450008 */ sh $a1, 8($v0) -/* 0C5B20 800C4F20 A4470004 */ sh $a3, 4($v0) -.L800C4F24: -/* 0C5B24 800C4F24 8FA30010 */ lw $v1, 0x10($sp) -/* 0C5B28 800C4F28 00000000 */ nop -/* 0C5B2C 800C4F2C 00C3082A */ slt $at, $a2, $v1 -/* 0C5B30 800C4F30 10200004 */ beqz $at, .L800C4F44 -/* 0C5B34 800C4F34 00000000 */ nop -/* 0C5B38 800C4F38 A4460006 */ sh $a2, 6($v0) -/* 0C5B3C 800C4F3C 10000003 */ b .L800C4F4C -/* 0C5B40 800C4F40 A443000A */ sh $v1, 0xa($v0) -.L800C4F44: -/* 0C5B44 800C4F44 A446000A */ sh $a2, 0xa($v0) -/* 0C5B48 800C4F48 A4430006 */ sh $v1, 6($v0) -.L800C4F4C: -/* 0C5B4C 800C4F4C 84580008 */ lh $t8, 8($v0) -/* 0C5B50 800C4F50 84590004 */ lh $t9, 4($v0) -/* 0C5B54 800C4F54 844A000A */ lh $t2, 0xa($v0) -/* 0C5B58 800C4F58 844B0006 */ lh $t3, 6($v0) -/* 0C5B5C 800C4F5C 03194023 */ subu $t0, $t8, $t9 -/* 0C5B60 800C4F60 014B6023 */ subu $t4, $t2, $t3 -/* 0C5B64 800C4F64 25090001 */ addiu $t1, $t0, 1 -/* 0C5B68 800C4F68 258D0001 */ addiu $t5, $t4, 1 -/* 0C5B6C 800C4F6C A449000C */ sh $t1, 0xc($v0) -/* 0C5B70 800C4F70 A44D000E */ sh $t5, 0xe($v0) -.L800C4F74: -/* 0C5B74 800C4F74 03E00008 */ jr $ra -/* 0C5B78 800C4F78 00000000 */ nop - -glabel func_800C4F7C -/* 0C5B7C 800C4F7C 0480000D */ bltz $a0, .L800C4FB4 -/* 0C5B80 800C4F80 28810008 */ slti $at, $a0, 8 -/* 0C5B84 800C4F84 1020000B */ beqz $at, .L800C4FB4 -/* 0C5B88 800C4F88 00047080 */ sll $t6, $a0, 2 -/* 0C5B8C 800C4F8C 3C188013 */ lui $t8, %hi(D_8012A7E0) # $t8, 0x8013 -/* 0C5B90 800C4F90 8F18A7E0 */ lw $t8, %lo(D_8012A7E0)($t8) -/* 0C5B94 800C4F94 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 -/* 0C5B98 800C4F98 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) -/* 0C5B9C 800C4F9C 01C47021 */ addu $t6, $t6, $a0 -/* 0C5BA0 800C4FA0 000E70C0 */ sll $t6, $t6, 3 -/* 0C5BA4 800C4FA4 00B8082A */ slt $at, $a1, $t8 -/* 0C5BA8 800C4FA8 10200002 */ beqz $at, .L800C4FB4 -/* 0C5BAC 800C4FAC 01CF1021 */ addu $v0, $t6, $t7 -/* 0C5BB0 800C4FB0 A045001D */ sb $a1, 0x1d($v0) -.L800C4FB4: -/* 0C5BB4 800C4FB4 03E00008 */ jr $ra -/* 0C5BB8 800C4FB8 00000000 */ nop - -glabel func_800C4FBC -/* 0C5BBC 800C4FBC 1880000E */ blez $a0, .L800C4FF8 -/* 0C5BC0 800C4FC0 28810008 */ slti $at, $a0, 8 -/* 0C5BC4 800C4FC4 1020000C */ beqz $at, .L800C4FF8 -/* 0C5BC8 800C4FC8 00047080 */ sll $t6, $a0, 2 -/* 0C5BCC 800C4FCC 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 -/* 0C5BD0 800C4FD0 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) -/* 0C5BD4 800C4FD4 01C47021 */ addu $t6, $t6, $a0 -/* 0C5BD8 800C4FD8 000E70C0 */ sll $t6, $t6, 3 -/* 0C5BDC 800C4FDC 01CF1021 */ addu $v0, $t6, $t7 -/* 0C5BE0 800C4FE0 A0450010 */ sb $a1, 0x10($v0) -/* 0C5BE4 800C4FE4 A0460011 */ sb $a2, 0x11($v0) -/* 0C5BE8 800C4FE8 A0470012 */ sb $a3, 0x12($v0) -/* 0C5BEC 800C4FEC 8FB80010 */ lw $t8, 0x10($sp) -/* 0C5BF0 800C4FF0 00000000 */ nop -/* 0C5BF4 800C4FF4 A0580013 */ sb $t8, 0x13($v0) -.L800C4FF8: -/* 0C5BF8 800C4FF8 03E00008 */ jr $ra -/* 0C5BFC 800C4FFC 00000000 */ nop - -glabel func_800C5000 -/* 0C5C00 800C5000 18800011 */ blez $a0, .L800C5048 -/* 0C5C04 800C5004 28810008 */ slti $at, $a0, 8 -/* 0C5C08 800C5008 1020000F */ beqz $at, .L800C5048 -/* 0C5C0C 800C500C 00047080 */ sll $t6, $a0, 2 -/* 0C5C10 800C5010 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 -/* 0C5C14 800C5014 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) -/* 0C5C18 800C5018 01C47021 */ addu $t6, $t6, $a0 -/* 0C5C1C 800C501C 000E70C0 */ sll $t6, $t6, 3 -/* 0C5C20 800C5020 01CF1021 */ addu $v0, $t6, $t7 -/* 0C5C24 800C5024 A0450014 */ sb $a1, 0x14($v0) -/* 0C5C28 800C5028 A0460015 */ sb $a2, 0x15($v0) -/* 0C5C2C 800C502C A0470016 */ sb $a3, 0x16($v0) -/* 0C5C30 800C5030 8FB80010 */ lw $t8, 0x10($sp) -/* 0C5C34 800C5034 00000000 */ nop -/* 0C5C38 800C5038 A0580017 */ sb $t8, 0x17($v0) -/* 0C5C3C 800C503C 8FB90014 */ lw $t9, 0x14($sp) -/* 0C5C40 800C5040 00000000 */ nop -/* 0C5C44 800C5044 A059001C */ sb $t9, 0x1c($v0) -.L800C5048: -/* 0C5C48 800C5048 03E00008 */ jr $ra -/* 0C5C4C 800C504C 00000000 */ nop - -glabel func_800C5050 -/* 0C5C50 800C5050 1880000E */ blez $a0, .L800C508C -/* 0C5C54 800C5054 28810008 */ slti $at, $a0, 8 -/* 0C5C58 800C5058 1020000C */ beqz $at, .L800C508C -/* 0C5C5C 800C505C 00047080 */ sll $t6, $a0, 2 -/* 0C5C60 800C5060 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 -/* 0C5C64 800C5064 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) -/* 0C5C68 800C5068 01C47021 */ addu $t6, $t6, $a0 -/* 0C5C6C 800C506C 000E70C0 */ sll $t6, $t6, 3 -/* 0C5C70 800C5070 01CF1021 */ addu $v0, $t6, $t7 -/* 0C5C74 800C5074 A0450018 */ sb $a1, 0x18($v0) -/* 0C5C78 800C5078 A0460019 */ sb $a2, 0x19($v0) -/* 0C5C7C 800C507C A047001A */ sb $a3, 0x1a($v0) -/* 0C5C80 800C5080 8FB80010 */ lw $t8, 0x10($sp) -/* 0C5C84 800C5084 00000000 */ nop -/* 0C5C88 800C5088 A058001B */ sb $t8, 0x1b($v0) -.L800C508C: -/* 0C5C8C 800C508C 03E00008 */ jr $ra -/* 0C5C90 800C5090 00000000 */ nop - -/* 0C5C94 800C5094 1880000E */ blez $a0, .L800C50D0 -/* 0C5C98 800C5098 28810008 */ slti $at, $a0, 8 -/* 0C5C9C 800C509C 1020000C */ beqz $at, .L800C50D0 -/* 0C5CA0 800C50A0 00047080 */ sll $t6, $a0, 2 -/* 0C5CA4 800C50A4 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 -/* 0C5CA8 800C50A8 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) -/* 0C5CAC 800C50AC 01C47021 */ addu $t6, $t6, $a0 -/* 0C5CB0 800C50B0 000E70C0 */ sll $t6, $t6, 3 -/* 0C5CB4 800C50B4 01CF1021 */ addu $v0, $t6, $t7 -/* 0C5CB8 800C50B8 84580020 */ lh $t8, 0x20($v0) -/* 0C5CBC 800C50BC 84480022 */ lh $t0, 0x22($v0) -/* 0C5CC0 800C50C0 0305C821 */ addu $t9, $t8, $a1 -/* 0C5CC4 800C50C4 01064821 */ addu $t1, $t0, $a2 -/* 0C5CC8 800C50C8 A4590020 */ sh $t9, 0x20($v0) -/* 0C5CCC 800C50CC A4490022 */ sh $t1, 0x22($v0) -.L800C50D0: -/* 0C5CD0 800C50D0 03E00008 */ jr $ra -/* 0C5CD4 800C50D4 00000000 */ nop - -/* 0C5CD8 800C50D8 1880000A */ blez $a0, .L800C5104 -/* 0C5CDC 800C50DC 28810008 */ slti $at, $a0, 8 -/* 0C5CE0 800C50E0 10200008 */ beqz $at, .L800C5104 -/* 0C5CE4 800C50E4 00047080 */ sll $t6, $a0, 2 -/* 0C5CE8 800C50E8 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 -/* 0C5CEC 800C50EC 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) -/* 0C5CF0 800C50F0 01C47021 */ addu $t6, $t6, $a0 -/* 0C5CF4 800C50F4 000E70C0 */ sll $t6, $t6, 3 -/* 0C5CF8 800C50F8 01CF1021 */ addu $v0, $t6, $t7 -/* 0C5CFC 800C50FC A4400020 */ sh $zero, 0x20($v0) -/* 0C5D00 800C5100 A4400022 */ sh $zero, 0x22($v0) -.L800C5104: -/* 0C5D04 800C5104 03E00008 */ jr $ra -/* 0C5D08 800C5108 00000000 */ nop - -/* 0C5D0C 800C510C 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0C5D10 800C5110 3C0E8013 */ lui $t6, %hi(D_8012A7E8) # $t6, 0x8013 -/* 0C5D14 800C5114 00047880 */ sll $t7, $a0, 2 -/* 0C5D18 800C5118 8DCEA7E8 */ lw $t6, %lo(D_8012A7E8)($t6) -/* 0C5D1C 800C511C AFA7002C */ sw $a3, 0x2c($sp) -/* 0C5D20 800C5120 01E47821 */ addu $t7, $t7, $a0 -/* 0C5D24 800C5124 AFA60028 */ sw $a2, 0x28($sp) -/* 0C5D28 800C5128 000F78C0 */ sll $t7, $t7, 3 -/* 0C5D2C 800C512C AFBF001C */ sw $ra, 0x1c($sp) -/* 0C5D30 800C5130 AFA50024 */ sw $a1, 0x24($sp) -/* 0C5D34 800C5134 01CF1021 */ addu $v0, $t6, $t7 -/* 0C5D38 800C5138 00A03825 */ move $a3, $a1 -/* 0C5D3C 800C513C 8FB80028 */ lw $t8, 0x28($sp) -/* 0C5D40 800C5140 8FB9002C */ lw $t9, 0x2c($sp) -/* 0C5D44 800C5144 84450000 */ lh $a1, ($v0) -/* 0C5D48 800C5148 84460002 */ lh $a2, 2($v0) -/* 0C5D4C 800C514C AFB80010 */ sw $t8, 0x10($sp) -/* 0C5D50 800C5150 0C03145A */ jal func_800C5168 -/* 0C5D54 800C5154 AFB90014 */ sw $t9, 0x14($sp) -/* 0C5D58 800C5158 8FBF001C */ lw $ra, 0x1c($sp) -/* 0C5D5C 800C515C 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0C5D60 800C5160 03E00008 */ jr $ra -/* 0C5D64 800C5164 00000000 */ nop - -glabel func_800C5168 -/* 0C5D68 800C5168 27BDFEB8 */ addiu $sp, $sp, -0x148 -/* 0C5D6C 800C516C AFB00018 */ sw $s0, 0x18($sp) -/* 0C5D70 800C5170 00808025 */ move $s0, $a0 -/* 0C5D74 800C5174 AFBF001C */ sw $ra, 0x1c($sp) -/* 0C5D78 800C5178 AFA5014C */ sw $a1, 0x14c($sp) -/* 0C5D7C 800C517C AFA60150 */ sw $a2, 0x150($sp) -/* 0C5D80 800C5180 14E00003 */ bnez $a3, .L800C5190 -/* 0C5D84 800C5184 AFA70154 */ sw $a3, 0x154($sp) -/* 0C5D88 800C5188 100000A3 */ b .L800C5418 -/* 0C5D8C 800C518C 00001025 */ move $v0, $zero -.L800C5190: -/* 0C5D90 800C5190 3C048013 */ lui $a0, %hi(D_8012A7EC) # $a0, 0x8013 -/* 0C5D94 800C5194 8C84A7EC */ lw $a0, %lo(D_8012A7EC)($a0) -/* 0C5D98 800C5198 00007940 */ sll $t7, $zero, 5 -/* 0C5D9C 800C519C 00001825 */ move $v1, $zero -/* 0C5DA0 800C51A0 00003825 */ move $a3, $zero -/* 0C5DA4 800C51A4 240500FF */ li $a1, 255 -/* 0C5DA8 800C51A8 008F1021 */ addu $v0, $a0, $t7 -.L800C51AC: -/* 0C5DAC 800C51AC 90580001 */ lbu $t8, 1($v0) -/* 0C5DB0 800C51B0 0003C940 */ sll $t9, $v1, 5 -/* 0C5DB4 800C51B4 14B80002 */ bne $a1, $t8, .L800C51C0 -/* 0C5DB8 800C51B8 00000000 */ nop -/* 0C5DBC 800C51BC 03243821 */ addu $a3, $t9, $a0 -.L800C51C0: -/* 0C5DC0 800C51C0 24630001 */ addiu $v1, $v1, 1 -/* 0C5DC4 800C51C4 28610040 */ slti $at, $v1, 0x40 -/* 0C5DC8 800C51C8 10200003 */ beqz $at, .L800C51D8 -/* 0C5DCC 800C51CC 24420020 */ addiu $v0, $v0, 0x20 -/* 0C5DD0 800C51D0 10E0FFF6 */ beqz $a3, .L800C51AC -/* 0C5DD4 800C51D4 00000000 */ nop -.L800C51D8: -/* 0C5DD8 800C51D8 10E0008E */ beqz $a3, .L800C5414 -/* 0C5DDC 800C51DC 240500FF */ li $a1, 255 -/* 0C5DE0 800C51E0 00105080 */ sll $t2, $s0, 2 -/* 0C5DE4 800C51E4 3C0B8013 */ lui $t3, %hi(D_8012A7E8) # $t3, 0x8013 -/* 0C5DE8 800C51E8 8D6BA7E8 */ lw $t3, %lo(D_8012A7E8)($t3) -/* 0C5DEC 800C51EC 8FAC014C */ lw $t4, 0x14c($sp) -/* 0C5DF0 800C51F0 01505021 */ addu $t2, $t2, $s0 -/* 0C5DF4 800C51F4 24028000 */ li $v0, -32768 -/* 0C5DF8 800C51F8 000A50C0 */ sll $t2, $t2, 3 -/* 0C5DFC 800C51FC 15820005 */ bne $t4, $v0, .L800C5214 -/* 0C5E00 800C5200 014B4021 */ addu $t0, $t2, $t3 -/* 0C5E04 800C5204 850D000C */ lh $t5, 0xc($t0) -/* 0C5E08 800C5208 00000000 */ nop -/* 0C5E0C 800C520C 000D7043 */ sra $t6, $t5, 1 -/* 0C5E10 800C5210 AFAE014C */ sw $t6, 0x14c($sp) -.L800C5214: -/* 0C5E14 800C5214 8FAF0150 */ lw $t7, 0x150($sp) -/* 0C5E18 800C5218 3C0B8013 */ lui $t3, %hi(D_8012A7E4) # $t3, 0x8013 -/* 0C5E1C 800C521C 15E20005 */ bne $t7, $v0, .L800C5234 -/* 0C5E20 800C5220 00000000 */ nop -/* 0C5E24 800C5224 8518000E */ lh $t8, 0xe($t0) -/* 0C5E28 800C5228 00000000 */ nop -/* 0C5E2C 800C522C 0018C843 */ sra $t9, $t8, 1 -/* 0C5E30 800C5230 AFB90150 */ sw $t9, 0x150($sp) -.L800C5234: -/* 0C5E34 800C5234 9102001D */ lbu $v0, 0x1d($t0) -/* 0C5E38 800C5238 8FA3015C */ lw $v1, 0x15c($sp) -/* 0C5E3C 800C523C 10A2002F */ beq $a1, $v0, .L800C52FC -/* 0C5E40 800C5240 00025280 */ sll $t2, $v0, 0xa -/* 0C5E44 800C5244 8D6BA7E4 */ lw $t3, %lo(D_8012A7E4)($t3) -/* 0C5E48 800C5248 306C0005 */ andi $t4, $v1, 5 -/* 0C5E4C 800C524C 1180001B */ beqz $t4, .L800C52BC -/* 0C5E50 800C5250 014B4821 */ addu $t1, $t2, $t3 -/* 0C5E54 800C5254 8FA60158 */ lw $a2, 0x158($sp) -/* 0C5E58 800C5258 8FA40154 */ lw $a0, 0x154($sp) -/* 0C5E5C 800C525C 27A50040 */ addiu $a1, $sp, 0x40 -/* 0C5E60 800C5260 AFA7003C */ sw $a3, 0x3c($sp) -/* 0C5E64 800C5264 AFA80030 */ sw $t0, 0x30($sp) -/* 0C5E68 800C5268 0C0317D8 */ jal func_800C5F60 -/* 0C5E6C 800C526C AFA9002C */ sw $t1, 0x2c($sp) -/* 0C5E70 800C5270 8FA80030 */ lw $t0, 0x30($sp) -/* 0C5E74 800C5274 8FA5014C */ lw $a1, 0x14c($sp) -/* 0C5E78 800C5278 9106001D */ lbu $a2, 0x1d($t0) -/* 0C5E7C 800C527C 0C031368 */ jal func_800C4DA0 -/* 0C5E80 800C5280 27A40040 */ addiu $a0, $sp, 0x40 -/* 0C5E84 800C5284 8FA3015C */ lw $v1, 0x15c($sp) -/* 0C5E88 800C5288 8FA4014C */ lw $a0, 0x14c($sp) -/* 0C5E8C 800C528C 8FA7003C */ lw $a3, 0x3c($sp) -/* 0C5E90 800C5290 8FA80030 */ lw $t0, 0x30($sp) -/* 0C5E94 800C5294 8FA9002C */ lw $t1, 0x2c($sp) -/* 0C5E98 800C5298 306D0001 */ andi $t5, $v1, 1 -/* 0C5E9C 800C529C 11A00005 */ beqz $t5, .L800C52B4 -/* 0C5EA0 800C52A0 00027043 */ sra $t6, $v0, 1 -/* 0C5EA4 800C52A4 00822023 */ subu $a0, $a0, $v0 -/* 0C5EA8 800C52A8 24840001 */ addiu $a0, $a0, 1 -/* 0C5EAC 800C52AC 10000003 */ b .L800C52BC -/* 0C5EB0 800C52B0 AFA4014C */ sw $a0, 0x14c($sp) -.L800C52B4: -/* 0C5EB4 800C52B4 008E2023 */ subu $a0, $a0, $t6 -/* 0C5EB8 800C52B8 AFA4014C */ sw $a0, 0x14c($sp) -.L800C52BC: -/* 0C5EBC 800C52BC 306F0002 */ andi $t7, $v1, 2 -/* 0C5EC0 800C52C0 11E00007 */ beqz $t7, .L800C52E0 -/* 0C5EC4 800C52C4 306C0008 */ andi $t4, $v1, 8 -/* 0C5EC8 800C52C8 8FB80150 */ lw $t8, 0x150($sp) -/* 0C5ECC 800C52CC 95390022 */ lhu $t9, 0x22($t1) -/* 0C5ED0 800C52D0 00000000 */ nop -/* 0C5ED4 800C52D4 03195023 */ subu $t2, $t8, $t9 -/* 0C5ED8 800C52D8 254B0001 */ addiu $t3, $t2, 1 -/* 0C5EDC 800C52DC AFAB0150 */ sw $t3, 0x150($sp) -.L800C52E0: -/* 0C5EE0 800C52E0 11800006 */ beqz $t4, .L800C52FC -/* 0C5EE4 800C52E4 00000000 */ nop -/* 0C5EE8 800C52E8 952E0022 */ lhu $t6, 0x22($t1) -/* 0C5EEC 800C52EC 8FAD0150 */ lw $t5, 0x150($sp) -/* 0C5EF0 800C52F0 000E7843 */ sra $t7, $t6, 1 -/* 0C5EF4 800C52F4 01AFC023 */ subu $t8, $t5, $t7 -/* 0C5EF8 800C52F8 AFB80150 */ sw $t8, 0x150($sp) -.L800C52FC: -/* 0C5EFC 800C52FC 8D040024 */ lw $a0, 0x24($t0) -/* 0C5F00 800C5300 8FB00158 */ lw $s0, 0x158($sp) -/* 0C5F04 800C5304 14800004 */ bnez $a0, .L800C5318 -/* 0C5F08 800C5308 25030024 */ addiu $v1, $t0, 0x24 -/* 0C5F0C 800C530C AD070024 */ sw $a3, 0x24($t0) -/* 0C5F10 800C5310 10000014 */ b .L800C5364 -/* 0C5F14 800C5314 ACE0001C */ sw $zero, 0x1c($a3) -.L800C5318: -/* 0C5F18 800C5318 10800010 */ beqz $a0, .L800C535C -/* 0C5F1C 800C531C 00801025 */ move $v0, $a0 -/* 0C5F20 800C5320 90990001 */ lbu $t9, 1($a0) -/* 0C5F24 800C5324 00000000 */ nop -/* 0C5F28 800C5328 0219082A */ slt $at, $s0, $t9 -/* 0C5F2C 800C532C 1020000B */ beqz $at, .L800C535C -/* 0C5F30 800C5330 00000000 */ nop -.L800C5334: -/* 0C5F34 800C5334 2443001C */ addiu $v1, $v0, 0x1c -/* 0C5F38 800C5338 8C42001C */ lw $v0, 0x1c($v0) -/* 0C5F3C 800C533C 00000000 */ nop -/* 0C5F40 800C5340 10400006 */ beqz $v0, .L800C535C -/* 0C5F44 800C5344 00000000 */ nop -/* 0C5F48 800C5348 904A0001 */ lbu $t2, 1($v0) -/* 0C5F4C 800C534C 00000000 */ nop -/* 0C5F50 800C5350 020A082A */ slt $at, $s0, $t2 -/* 0C5F54 800C5354 1420FFF7 */ bnez $at, .L800C5334 -/* 0C5F58 800C5358 00000000 */ nop -.L800C535C: -/* 0C5F5C 800C535C AC670000 */ sw $a3, ($v1) -/* 0C5F60 800C5360 ACE2001C */ sw $v0, 0x1c($a3) -.L800C5364: -/* 0C5F64 800C5364 A0F00001 */ sb $s0, 1($a3) -/* 0C5F68 800C5368 8FAB0154 */ lw $t3, 0x154($sp) -/* 0C5F6C 800C536C 00000000 */ nop -/* 0C5F70 800C5370 ACEB0004 */ sw $t3, 4($a3) -/* 0C5F74 800C5374 8FAC014C */ lw $t4, 0x14c($sp) -/* 0C5F78 800C5378 00000000 */ nop -/* 0C5F7C 800C537C A4EC0008 */ sh $t4, 8($a3) -/* 0C5F80 800C5380 8FAE0150 */ lw $t6, 0x150($sp) -/* 0C5F84 800C5384 A4E0000C */ sh $zero, 0xc($a3) -/* 0C5F88 800C5388 A4E0000E */ sh $zero, 0xe($a3) -/* 0C5F8C 800C538C A4EE000A */ sh $t6, 0xa($a3) -/* 0C5F90 800C5390 910D0014 */ lbu $t5, 0x14($t0) -/* 0C5F94 800C5394 00000000 */ nop -/* 0C5F98 800C5398 A0ED0010 */ sb $t5, 0x10($a3) -/* 0C5F9C 800C539C 910F0015 */ lbu $t7, 0x15($t0) -/* 0C5FA0 800C53A0 00000000 */ nop -/* 0C5FA4 800C53A4 A0EF0011 */ sb $t7, 0x11($a3) -/* 0C5FA8 800C53A8 91180016 */ lbu $t8, 0x16($t0) -/* 0C5FAC 800C53AC 00000000 */ nop -/* 0C5FB0 800C53B0 A0F80012 */ sb $t8, 0x12($a3) -/* 0C5FB4 800C53B4 91190017 */ lbu $t9, 0x17($t0) -/* 0C5FB8 800C53B8 00000000 */ nop -/* 0C5FBC 800C53BC A0F90013 */ sb $t9, 0x13($a3) -/* 0C5FC0 800C53C0 910A0018 */ lbu $t2, 0x18($t0) -/* 0C5FC4 800C53C4 00000000 */ nop -/* 0C5FC8 800C53C8 A0EA0014 */ sb $t2, 0x14($a3) -/* 0C5FCC 800C53CC 910B0019 */ lbu $t3, 0x19($t0) -/* 0C5FD0 800C53D0 00000000 */ nop -/* 0C5FD4 800C53D4 A0EB0015 */ sb $t3, 0x15($a3) -/* 0C5FD8 800C53D8 910C001A */ lbu $t4, 0x1a($t0) -/* 0C5FDC 800C53DC 00000000 */ nop -/* 0C5FE0 800C53E0 A0EC0016 */ sb $t4, 0x16($a3) -/* 0C5FE4 800C53E4 910E001B */ lbu $t6, 0x1b($t0) -/* 0C5FE8 800C53E8 00000000 */ nop -/* 0C5FEC 800C53EC A0EE0017 */ sb $t6, 0x17($a3) -/* 0C5FF0 800C53F0 910D001C */ lbu $t5, 0x1c($t0) -/* 0C5FF4 800C53F4 00000000 */ nop -/* 0C5FF8 800C53F8 A0ED0018 */ sb $t5, 0x18($a3) -/* 0C5FFC 800C53FC 910F001D */ lbu $t7, 0x1d($t0) -/* 0C6000 800C5400 00000000 */ nop -/* 0C6004 800C5404 A0EF0019 */ sb $t7, 0x19($a3) -/* 0C6008 800C5408 9518001E */ lhu $t8, 0x1e($t0) -/* 0C600C 800C540C 00000000 */ nop -/* 0C6010 800C5410 A4F8001A */ sh $t8, 0x1a($a3) -.L800C5414: -/* 0C6014 800C5414 00E01025 */ move $v0, $a3 -.L800C5418: -/* 0C6018 800C5418 8FBF001C */ lw $ra, 0x1c($sp) -/* 0C601C 800C541C 8FB00018 */ lw $s0, 0x18($sp) -/* 0C6020 800C5420 03E00008 */ jr $ra -/* 0C6024 800C5424 27BD0148 */ addiu $sp, $sp, 0x148 - -/* 0C6028 800C5428 00047080 */ sll $t6, $a0, 2 -/* 0C602C 800C542C 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 -/* 0C6030 800C5430 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) -/* 0C6034 800C5434 01C47021 */ addu $t6, $t6, $a0 -/* 0C6038 800C5438 000E70C0 */ sll $t6, $t6, 3 -/* 0C603C 800C543C 01CF1021 */ addu $v0, $t6, $t7 -/* 0C6040 800C5440 8C460024 */ lw $a2, 0x24($v0) -/* 0C6044 800C5444 24430024 */ addiu $v1, $v0, 0x24 -/* 0C6048 800C5448 10C0000A */ beqz $a2, .L800C5474 -/* 0C604C 800C544C 00000000 */ nop -/* 0C6050 800C5450 10C50008 */ beq $a2, $a1, .L800C5474 -/* 0C6054 800C5454 00000000 */ nop -.L800C5458: -/* 0C6058 800C5458 24C3001C */ addiu $v1, $a2, 0x1c -/* 0C605C 800C545C 8CC6001C */ lw $a2, 0x1c($a2) -/* 0C6060 800C5460 00000000 */ nop -/* 0C6064 800C5464 10C00003 */ beqz $a2, .L800C5474 -/* 0C6068 800C5468 00000000 */ nop -/* 0C606C 800C546C 14C5FFFA */ bne $a2, $a1, .L800C5458 -/* 0C6070 800C5470 00000000 */ nop -.L800C5474: -/* 0C6074 800C5474 10C00005 */ beqz $a2, .L800C548C -/* 0C6078 800C5478 00000000 */ nop -/* 0C607C 800C547C 8CD8001C */ lw $t8, 0x1c($a2) -/* 0C6080 800C5480 241900FF */ li $t9, 255 -/* 0C6084 800C5484 AC780000 */ sw $t8, ($v1) -/* 0C6088 800C5488 A0B90001 */ sb $t9, 1($a1) -.L800C548C: -/* 0C608C 800C548C 03E00008 */ jr $ra -/* 0C6090 800C5490 00000000 */ nop - -glabel func_800C5494 -/* 0C6094 800C5494 00047080 */ sll $t6, $a0, 2 -/* 0C6098 800C5498 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 -/* 0C609C 800C549C 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) -/* 0C60A0 800C54A0 01C47021 */ addu $t6, $t6, $a0 -/* 0C60A4 800C54A4 000E70C0 */ sll $t6, $t6, 3 -/* 0C60A8 800C54A8 01CF1021 */ addu $v0, $t6, $t7 -/* 0C60AC 800C54AC 8C430024 */ lw $v1, 0x24($v0) -/* 0C60B0 800C54B0 00000000 */ nop -/* 0C60B4 800C54B4 1060000A */ beqz $v1, .L800C54E0 -/* 0C60B8 800C54B8 00000000 */ nop -/* 0C60BC 800C54BC 10600007 */ beqz $v1, .L800C54DC -/* 0C60C0 800C54C0 00602025 */ move $a0, $v1 -/* 0C60C4 800C54C4 240300FF */ li $v1, 255 -.L800C54C8: -/* 0C60C8 800C54C8 A0830001 */ sb $v1, 1($a0) -/* 0C60CC 800C54CC 8C84001C */ lw $a0, 0x1c($a0) -/* 0C60D0 800C54D0 00000000 */ nop -/* 0C60D4 800C54D4 1480FFFC */ bnez $a0, .L800C54C8 -/* 0C60D8 800C54D8 00000000 */ nop -.L800C54DC: -/* 0C60DC 800C54DC AC400024 */ sw $zero, 0x24($v0) -.L800C54E0: -/* 0C60E0 800C54E0 03E00008 */ jr $ra -/* 0C60E4 800C54E4 00000000 */ nop - -/* 0C60E8 800C54E8 00047080 */ sll $t6, $a0, 2 -/* 0C60EC 800C54EC 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 -/* 0C60F0 800C54F0 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) -/* 0C60F4 800C54F4 01C47021 */ addu $t6, $t6, $a0 -/* 0C60F8 800C54F8 000E70C0 */ sll $t6, $t6, 3 -/* 0C60FC 800C54FC AFA60008 */ sw $a2, 8($sp) -/* 0C6100 800C5500 10A0003A */ beqz $a1, .L800C55EC -/* 0C6104 800C5504 01CF1021 */ addu $v0, $t6, $t7 -/* 0C6108 800C5508 90A30019 */ lbu $v1, 0x19($a1) -/* 0C610C 800C550C 240100FF */ li $at, 255 -/* 0C6110 800C5510 10610036 */ beq $v1, $at, .L800C55EC -/* 0C6114 800C5514 0003C280 */ sll $t8, $v1, 0xa -/* 0C6118 800C5518 3C198013 */ lui $t9, %hi(D_8012A7E4) # $t9, 0x8013 -/* 0C611C 800C551C 8FA60010 */ lw $a2, 0x10($sp) -/* 0C6120 800C5520 8F39A7E4 */ lw $t9, %lo(D_8012A7E4)($t9) -/* 0C6124 800C5524 24010004 */ li $at, 4 -/* 0C6128 800C5528 10C1002E */ beq $a2, $at, .L800C55E4 -/* 0C612C 800C552C 03192021 */ addu $a0, $t8, $t9 -/* 0C6130 800C5530 24010001 */ li $at, 1 -/* 0C6134 800C5534 10C10005 */ beq $a2, $at, .L800C554C -/* 0C6138 800C5538 24010002 */ li $at, 2 -/* 0C613C 800C553C 10C10009 */ beq $a2, $at, .L800C5564 -/* 0C6140 800C5540 00000000 */ nop -/* 0C6144 800C5544 10000020 */ b .L800C55C8 -/* 0C6148 800C5548 84AC000C */ lh $t4, 0xc($a1) -.L800C554C: -/* 0C614C 800C554C 94880022 */ lhu $t0, 0x22($a0) -/* 0C6150 800C5550 00000000 */ nop -/* 0C6154 800C5554 00E80019 */ multu $a3, $t0 -/* 0C6158 800C5558 00003812 */ mflo $a3 -/* 0C615C 800C555C 1000001A */ b .L800C55C8 -/* 0C6160 800C5560 84AC000C */ lh $t4, 0xc($a1) -.L800C5564: -/* 0C6164 800C5564 94830022 */ lhu $v1, 0x22($a0) -/* 0C6168 800C5568 8449000E */ lh $t1, 0xe($v0) -/* 0C616C 800C556C 00000000 */ nop -/* 0C6170 800C5570 0123001A */ div $zero, $t1, $v1 -/* 0C6174 800C5574 14600002 */ bnez $v1, .L800C5580 -/* 0C6178 800C5578 00000000 */ nop -/* 0C617C 800C557C 0007000D */ break 7 -.L800C5580: -/* 0C6180 800C5580 2401FFFF */ li $at, -1 -/* 0C6184 800C5584 14610004 */ bne $v1, $at, .L800C5598 -/* 0C6188 800C5588 3C018000 */ lui $at, 0x8000 -/* 0C618C 800C558C 15210002 */ bne $t1, $at, .L800C5598 -/* 0C6190 800C5590 00000000 */ nop -/* 0C6194 800C5594 0006000D */ break 6 -.L800C5598: -/* 0C6198 800C5598 00005012 */ mflo $t2 -/* 0C619C 800C559C 00000000 */ nop -/* 0C61A0 800C55A0 00000000 */ nop -/* 0C61A4 800C55A4 00EA0019 */ multu $a3, $t2 -/* 0C61A8 800C55A8 00005812 */ mflo $t3 -/* 0C61AC 800C55AC 00000000 */ nop -/* 0C61B0 800C55B0 00000000 */ nop -/* 0C61B4 800C55B4 01630019 */ multu $t3, $v1 -/* 0C61B8 800C55B8 00003812 */ mflo $a3 -/* 0C61BC 800C55BC 00000000 */ nop -/* 0C61C0 800C55C0 00000000 */ nop -/* 0C61C4 800C55C4 84AC000C */ lh $t4, 0xc($a1) -.L800C55C8: -/* 0C61C8 800C55C8 8FAD0008 */ lw $t5, 8($sp) -/* 0C61CC 800C55CC 84AF000E */ lh $t7, 0xe($a1) -/* 0C61D0 800C55D0 018D7021 */ addu $t6, $t4, $t5 -/* 0C61D4 800C55D4 01E7C021 */ addu $t8, $t7, $a3 -/* 0C61D8 800C55D8 A4AE000C */ sh $t6, 0xc($a1) -/* 0C61DC 800C55DC 03E00008 */ jr $ra -/* 0C61E0 800C55E0 A4B8000E */ sh $t8, 0xe($a1) - -.L800C55E4: -/* 0C61E4 800C55E4 A4A0000C */ sh $zero, 0xc($a1) -/* 0C61E8 800C55E8 A4A0000E */ sh $zero, 0xe($a1) -.L800C55EC: -/* 0C61EC 800C55EC 03E00008 */ jr $ra -/* 0C61F0 800C55F0 00000000 */ nop - -glabel func_800C55F4 -/* 0C61F4 800C55F4 3C0E8013 */ lui $t6, %hi(D_8012A7E8) # $t6, 0x8013 -/* 0C61F8 800C55F8 00047880 */ sll $t7, $a0, 2 -/* 0C61FC 800C55FC 8DCEA7E8 */ lw $t6, %lo(D_8012A7E8)($t6) -/* 0C6200 800C5600 01E47821 */ addu $t7, $t7, $a0 -/* 0C6204 800C5604 000F78C0 */ sll $t7, $t7, 3 -/* 0C6208 800C5608 01CF1021 */ addu $v0, $t6, $t7 -/* 0C620C 800C560C 9458001E */ lhu $t8, 0x1e($v0) -/* 0C6210 800C5610 00000000 */ nop -/* 0C6214 800C5614 37198000 */ ori $t9, $t8, 0x8000 -/* 0C6218 800C5618 03E00008 */ jr $ra -/* 0C621C 800C561C A459001E */ sh $t9, 0x1e($v0) - -glabel func_800C5620 -/* 0C6220 800C5620 3C0E8013 */ lui $t6, %hi(D_8012A7E8) # $t6, 0x8013 -/* 0C6224 800C5624 00047880 */ sll $t7, $a0, 2 -/* 0C6228 800C5628 8DCEA7E8 */ lw $t6, %lo(D_8012A7E8)($t6) -/* 0C622C 800C562C 01E47821 */ addu $t7, $t7, $a0 -/* 0C6230 800C5630 000F78C0 */ sll $t7, $t7, 3 -/* 0C6234 800C5634 01CF1021 */ addu $v0, $t6, $t7 -/* 0C6238 800C5638 9458001E */ lhu $t8, 0x1e($v0) -/* 0C623C 800C563C 00000000 */ nop -/* 0C6240 800C5640 33197FFF */ andi $t9, $t8, 0x7fff -/* 0C6244 800C5644 03E00008 */ jr $ra -/* 0C6248 800C5648 A459001E */ sh $t9, 0x1e($v0) - -/* 0C624C 800C564C 3C0E8013 */ lui $t6, %hi(D_8012A7E8) # $t6, 0x8013 -/* 0C6250 800C5650 00047880 */ sll $t7, $a0, 2 -/* 0C6254 800C5654 8DCEA7E8 */ lw $t6, %lo(D_8012A7E8)($t6) -/* 0C6258 800C5658 01E47821 */ addu $t7, $t7, $a0 -/* 0C625C 800C565C 000F78C0 */ sll $t7, $t7, 3 -/* 0C6260 800C5660 01CF1021 */ addu $v0, $t6, $t7 -/* 0C6264 800C5664 9458001E */ lhu $t8, 0x1e($v0) -/* 0C6268 800C5668 00000000 */ nop -/* 0C626C 800C566C 37190001 */ ori $t9, $t8, 1 -/* 0C6270 800C5670 03E00008 */ jr $ra -/* 0C6274 800C5674 A459001E */ sh $t9, 0x1e($v0) - -/* 0C6278 800C5678 3C0E8013 */ lui $t6, %hi(D_8012A7E8) # $t6, 0x8013 -/* 0C627C 800C567C 00047880 */ sll $t7, $a0, 2 -/* 0C6280 800C5680 8DCEA7E8 */ lw $t6, %lo(D_8012A7E8)($t6) -/* 0C6284 800C5684 01E47821 */ addu $t7, $t7, $a0 -/* 0C6288 800C5688 000F78C0 */ sll $t7, $t7, 3 -/* 0C628C 800C568C 01CF1021 */ addu $v0, $t6, $t7 -/* 0C6290 800C5690 9458001E */ lhu $t8, 0x1e($v0) -/* 0C6294 800C5694 00000000 */ nop -/* 0C6298 800C5698 3319FFFE */ andi $t9, $t8, 0xfffe -/* 0C629C 800C569C 03E00008 */ jr $ra -/* 0C62A0 800C56A0 A459001E */ sh $t9, 0x1e($v0) - -/* 0C62A4 800C56A4 3C0E8013 */ lui $t6, %hi(D_8012A7E8) # $t6, 0x8013 -/* 0C62A8 800C56A8 00047880 */ sll $t7, $a0, 2 -/* 0C62AC 800C56AC 8DCEA7E8 */ lw $t6, %lo(D_8012A7E8)($t6) -/* 0C62B0 800C56B0 01E47821 */ addu $t7, $t7, $a0 -/* 0C62B4 800C56B4 000F78C0 */ sll $t7, $t7, 3 -/* 0C62B8 800C56B8 01CF1021 */ addu $v0, $t6, $t7 -/* 0C62BC 800C56BC 9458001E */ lhu $t8, 0x1e($v0) -/* 0C62C0 800C56C0 00000000 */ nop -/* 0C62C4 800C56C4 37194000 */ ori $t9, $t8, 0x4000 -/* 0C62C8 800C56C8 03E00008 */ jr $ra -/* 0C62CC 800C56CC A459001E */ sh $t9, 0x1e($v0) - -glabel func_800C56D0 -/* 0C62D0 800C56D0 3C0E8013 */ lui $t6, %hi(D_8012A7E8) # $t6, 0x8013 -/* 0C62D4 800C56D4 00047880 */ sll $t7, $a0, 2 -/* 0C62D8 800C56D8 8DCEA7E8 */ lw $t6, %lo(D_8012A7E8)($t6) -/* 0C62DC 800C56DC 01E47821 */ addu $t7, $t7, $a0 -/* 0C62E0 800C56E0 000F78C0 */ sll $t7, $t7, 3 -/* 0C62E4 800C56E4 01CF1021 */ addu $v0, $t6, $t7 -/* 0C62E8 800C56E8 9458001E */ lhu $t8, 0x1e($v0) -/* 0C62EC 800C56EC 00000000 */ nop -/* 0C62F0 800C56F0 3319BFFF */ andi $t9, $t8, 0xbfff -/* 0C62F4 800C56F4 03E00008 */ jr $ra -/* 0C62F8 800C56F8 A459001E */ sh $t9, 0x1e($v0) - -glabel func_800C56FC -/* 0C62FC 800C56FC 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0C6300 800C5700 AFB00018 */ sw $s0, 0x18($sp) -/* 0C6304 800C5704 3C10800E */ lui $s0, %hi(D_800E36E8) # $s0, 0x800e -/* 0C6308 800C5708 261036E8 */ addiu $s0, %lo(D_800E36E8) # addiu $s0, $s0, 0x36e8 -/* 0C630C 800C570C 820E0000 */ lb $t6, ($s0) -/* 0C6310 800C5710 AFB60030 */ sw $s6, 0x30($sp) -/* 0C6314 800C5714 AFB5002C */ sw $s5, 0x2c($sp) -/* 0C6318 800C5718 AFB20020 */ sw $s2, 0x20($sp) -/* 0C631C 800C571C 00809025 */ move $s2, $a0 -/* 0C6320 800C5720 00A0A825 */ move $s5, $a1 -/* 0C6324 800C5724 00C0B025 */ move $s6, $a2 -/* 0C6328 800C5728 AFBF0034 */ sw $ra, 0x34($sp) -/* 0C632C 800C572C AFB40028 */ sw $s4, 0x28($sp) -/* 0C6330 800C5730 AFB30024 */ sw $s3, 0x24($sp) -/* 0C6334 800C5734 11C0000E */ beqz $t6, .L800C5770 -/* 0C6338 800C5738 AFB1001C */ sw $s1, 0x1c($sp) -/* 0C633C 800C573C 3C028013 */ lui $v0, %hi(D_8012A7F4) # $v0, 0x8013 -/* 0C6340 800C5740 2442A7F4 */ addiu $v0, %lo(D_8012A7F4) # addiu $v0, $v0, -0x580c -/* 0C6344 800C5744 804F0000 */ lb $t7, ($v0) -/* 0C6348 800C5748 00000000 */ nop -/* 0C634C 800C574C 25F8FFFF */ addiu $t8, $t7, -1 -/* 0C6350 800C5750 A0580000 */ sb $t8, ($v0) -/* 0C6354 800C5754 80590000 */ lb $t9, ($v0) -/* 0C6358 800C5758 00000000 */ nop -/* 0C635C 800C575C 17200004 */ bnez $t9, .L800C5770 -/* 0C6360 800C5760 00000000 */ nop -/* 0C6364 800C5764 0C027A6A */ jal func_8009E9A8 -/* 0C6368 800C5768 00000000 */ nop -/* 0C636C 800C576C A2000000 */ sb $zero, ($s0) -.L800C5770: -/* 0C6370 800C5770 3C138013 */ lui $s3, %hi(D_8012A7E8) # $s3, 0x8013 -/* 0C6374 800C5774 2673A7E8 */ addiu $s3, %lo(D_8012A7E8) # addiu $s3, $s3, -0x5818 -/* 0C6378 800C5778 24100001 */ li $s0, 1 -/* 0C637C 800C577C 24110028 */ li $s1, 40 -/* 0C6380 800C5780 24140008 */ li $s4, 8 -.L800C5784: -/* 0C6384 800C5784 8E680000 */ lw $t0, ($s3) -/* 0C6388 800C5788 00000000 */ nop -/* 0C638C 800C578C 01114821 */ addu $t1, $t0, $s1 -/* 0C6390 800C5790 9522001E */ lhu $v0, 0x1e($t1) -/* 0C6394 800C5794 00000000 */ nop -/* 0C6398 800C5798 304A8000 */ andi $t2, $v0, 0x8000 -/* 0C639C 800C579C 1140000E */ beqz $t2, .L800C57D8 -/* 0C63A0 800C57A0 304B4000 */ andi $t3, $v0, 0x4000 -/* 0C63A4 800C57A4 11600008 */ beqz $t3, .L800C57C8 -/* 0C63A8 800C57A8 02402025 */ move $a0, $s2 -/* 0C63AC 800C57AC 02402025 */ move $a0, $s2 -/* 0C63B0 800C57B0 02A02825 */ move $a1, $s5 -/* 0C63B4 800C57B4 02C03025 */ move $a2, $s6 -/* 0C63B8 800C57B8 0C0316D6 */ jal func_800C5B58 -/* 0C63BC 800C57BC 02003825 */ move $a3, $s0 -/* 0C63C0 800C57C0 10000006 */ b .L800C57DC -/* 0C63C4 800C57C4 26100001 */ addiu $s0, $s0, 1 -.L800C57C8: -/* 0C63C8 800C57C8 00002825 */ move $a1, $zero -/* 0C63CC 800C57CC 00003025 */ move $a2, $zero -/* 0C63D0 800C57D0 0C0316D6 */ jal func_800C5B58 -/* 0C63D4 800C57D4 02003825 */ move $a3, $s0 -.L800C57D8: -/* 0C63D8 800C57D8 26100001 */ addiu $s0, $s0, 1 -.L800C57DC: -/* 0C63DC 800C57DC 1614FFE9 */ bne $s0, $s4, .L800C5784 -/* 0C63E0 800C57E0 26310028 */ addiu $s1, $s1, 0x28 -/* 0C63E4 800C57E4 8FBF0034 */ lw $ra, 0x34($sp) -/* 0C63E8 800C57E8 8FB00018 */ lw $s0, 0x18($sp) -/* 0C63EC 800C57EC 8FB1001C */ lw $s1, 0x1c($sp) -/* 0C63F0 800C57F0 8FB20020 */ lw $s2, 0x20($sp) -/* 0C63F4 800C57F4 8FB30024 */ lw $s3, 0x24($sp) -/* 0C63F8 800C57F8 8FB40028 */ lw $s4, 0x28($sp) -/* 0C63FC 800C57FC 8FB5002C */ lw $s5, 0x2c($sp) -/* 0C6400 800C5800 8FB60030 */ lw $s6, 0x30($sp) -/* 0C6404 800C5804 03E00008 */ jr $ra -/* 0C6408 800C5808 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_800C580C -/* 0C640C 800C580C 8C820000 */ lw $v0, ($a0) -/* 0C6410 800C5810 04A10005 */ bgez $a1, .L800C5828 -/* 0C6414 800C5814 00001825 */ move $v1, $zero -/* 0C6418 800C5818 240E002D */ li $t6, 45 -/* 0C641C 800C581C A04E0000 */ sb $t6, ($v0) -/* 0C6420 800C5820 24420001 */ addiu $v0, $v0, 1 -/* 0C6424 800C5824 00052823 */ negu $a1, $a1 -.L800C5828: -/* 0C6428 800C5828 3C07800E */ lui $a3, %hi(D_800E36EC) # $a3, 0x800e -/* 0C642C 800C582C 8CE736EC */ lw $a3, %lo(D_800E36EC)($a3) -/* 0C6430 800C5830 24060001 */ li $a2, 1 -/* 0C6434 800C5834 00A7082A */ slt $at, $a1, $a3 -/* 0C6438 800C5838 14200015 */ bnez $at, .L800C5890 -/* 0C643C 800C583C 24090030 */ li $t1, 48 -/* 0C6440 800C5840 00A7001A */ div $zero, $a1, $a3 -/* 0C6444 800C5844 24030001 */ li $v1, 1 -/* 0C6448 800C5848 14E00002 */ bnez $a3, .L800C5854 -/* 0C644C 800C584C 00000000 */ nop -/* 0C6450 800C5850 0007000D */ break 7 -.L800C5854: -/* 0C6454 800C5854 2401FFFF */ li $at, -1 -/* 0C6458 800C5858 14E10004 */ bne $a3, $at, .L800C586C -/* 0C645C 800C585C 3C018000 */ lui $at, 0x8000 -/* 0C6460 800C5860 14A10002 */ bne $a1, $at, .L800C586C -/* 0C6464 800C5864 00000000 */ nop -/* 0C6468 800C5868 0006000D */ break 6 -.L800C586C: -/* 0C646C 800C586C 00005812 */ mflo $t3 -/* 0C6470 800C5870 25690030 */ addiu $t1, $t3, 0x30 -/* 0C6474 800C5874 313800FF */ andi $t8, $t1, 0xff -/* 0C6478 800C5878 01670019 */ multu $t3, $a3 -/* 0C647C 800C587C 03004825 */ move $t1, $t8 -/* 0C6480 800C5880 01605025 */ move $t2, $t3 -/* 0C6484 800C5884 00007812 */ mflo $t7 -/* 0C6488 800C5888 00AF2823 */ subu $a1, $a1, $t7 -/* 0C648C 800C588C 00000000 */ nop -.L800C5890: -/* 0C6490 800C5890 10600003 */ beqz $v1, .L800C58A0 -/* 0C6494 800C5894 0006C880 */ sll $t9, $a2, 2 -/* 0C6498 800C5898 A0490000 */ sb $t1, ($v0) -/* 0C649C 800C589C 24420001 */ addiu $v0, $v0, 1 -.L800C58A0: -/* 0C64A0 800C58A0 3C0D800E */ lui $t5, %hi(D_800E36EC) # $t5, 0x800e -/* 0C64A4 800C58A4 25AD36EC */ addiu $t5, %lo(D_800E36EC) # addiu $t5, $t5, 0x36ec -/* 0C64A8 800C58A8 3C0C800E */ lui $t4, %hi(D_800E3710) # $t4, 0x800e -/* 0C64AC 800C58AC 258C3710 */ addiu $t4, %lo(D_800E3710) # addiu $t4, $t4, 0x3710 -/* 0C64B0 800C58B0 032D4021 */ addu $t0, $t9, $t5 -.L800C58B4: -/* 0C64B4 800C58B4 8D060000 */ lw $a2, ($t0) -/* 0C64B8 800C58B8 24090030 */ li $t1, 48 -/* 0C64BC 800C58BC 00A6082A */ slt $at, $a1, $a2 -/* 0C64C0 800C58C0 14200015 */ bnez $at, .L800C5918 -/* 0C64C4 800C58C4 00C03825 */ move $a3, $a2 -/* 0C64C8 800C58C8 00A6001A */ div $zero, $a1, $a2 -/* 0C64CC 800C58CC 24030001 */ li $v1, 1 -/* 0C64D0 800C58D0 14C00002 */ bnez $a2, .L800C58DC -/* 0C64D4 800C58D4 00000000 */ nop -/* 0C64D8 800C58D8 0007000D */ break 7 -.L800C58DC: -/* 0C64DC 800C58DC 2401FFFF */ li $at, -1 -/* 0C64E0 800C58E0 14C10004 */ bne $a2, $at, .L800C58F4 -/* 0C64E4 800C58E4 3C018000 */ lui $at, 0x8000 -/* 0C64E8 800C58E8 14A10002 */ bne $a1, $at, .L800C58F4 -/* 0C64EC 800C58EC 00000000 */ nop -/* 0C64F0 800C58F0 0006000D */ break 6 -.L800C58F4: -/* 0C64F4 800C58F4 00003812 */ mflo $a3 -/* 0C64F8 800C58F8 24E90030 */ addiu $t1, $a3, 0x30 -/* 0C64FC 800C58FC 312F00FF */ andi $t7, $t1, 0xff -/* 0C6500 800C5900 00E60019 */ multu $a3, $a2 -/* 0C6504 800C5904 00E05025 */ move $t2, $a3 -/* 0C6508 800C5908 01E04825 */ move $t1, $t7 -/* 0C650C 800C590C 00007012 */ mflo $t6 -/* 0C6510 800C5910 00AE2823 */ subu $a1, $a1, $t6 -/* 0C6514 800C5914 00000000 */ nop -.L800C5918: -/* 0C6518 800C5918 10600003 */ beqz $v1, .L800C5928 -/* 0C651C 800C591C 00000000 */ nop -/* 0C6520 800C5920 A0490000 */ sb $t1, ($v0) -/* 0C6524 800C5924 24420001 */ addiu $v0, $v0, 1 -.L800C5928: -/* 0C6528 800C5928 8D070004 */ lw $a3, 4($t0) -/* 0C652C 800C592C 24090030 */ li $t1, 48 -/* 0C6530 800C5930 00A7082A */ slt $at, $a1, $a3 -/* 0C6534 800C5934 14200015 */ bnez $at, .L800C598C -/* 0C6538 800C5938 00000000 */ nop -/* 0C653C 800C593C 00A7001A */ div $zero, $a1, $a3 -/* 0C6540 800C5940 24030001 */ li $v1, 1 -/* 0C6544 800C5944 14E00002 */ bnez $a3, .L800C5950 -/* 0C6548 800C5948 00000000 */ nop -/* 0C654C 800C594C 0007000D */ break 7 -.L800C5950: -/* 0C6550 800C5950 2401FFFF */ li $at, -1 -/* 0C6554 800C5954 14E10004 */ bne $a3, $at, .L800C5968 -/* 0C6558 800C5958 3C018000 */ lui $at, 0x8000 -/* 0C655C 800C595C 14A10002 */ bne $a1, $at, .L800C5968 -/* 0C6560 800C5960 00000000 */ nop -/* 0C6564 800C5964 0006000D */ break 6 -.L800C5968: -/* 0C6568 800C5968 00005812 */ mflo $t3 -/* 0C656C 800C596C 25690030 */ addiu $t1, $t3, 0x30 -/* 0C6570 800C5970 313900FF */ andi $t9, $t1, 0xff -/* 0C6574 800C5974 01670019 */ multu $t3, $a3 -/* 0C6578 800C5978 03204825 */ move $t1, $t9 -/* 0C657C 800C597C 01605025 */ move $t2, $t3 -/* 0C6580 800C5980 0000C012 */ mflo $t8 -/* 0C6584 800C5984 00B82823 */ subu $a1, $a1, $t8 -/* 0C6588 800C5988 00000000 */ nop -.L800C598C: -/* 0C658C 800C598C 10600003 */ beqz $v1, .L800C599C -/* 0C6590 800C5990 00000000 */ nop -/* 0C6594 800C5994 A0490000 */ sb $t1, ($v0) -/* 0C6598 800C5998 24420001 */ addiu $v0, $v0, 1 -.L800C599C: -/* 0C659C 800C599C 8D070008 */ lw $a3, 8($t0) -/* 0C65A0 800C59A0 24090030 */ li $t1, 48 -/* 0C65A4 800C59A4 00A7082A */ slt $at, $a1, $a3 -/* 0C65A8 800C59A8 14200015 */ bnez $at, .L800C5A00 -/* 0C65AC 800C59AC 00000000 */ nop -/* 0C65B0 800C59B0 00A7001A */ div $zero, $a1, $a3 -/* 0C65B4 800C59B4 24030001 */ li $v1, 1 -/* 0C65B8 800C59B8 14E00002 */ bnez $a3, .L800C59C4 -/* 0C65BC 800C59BC 00000000 */ nop -/* 0C65C0 800C59C0 0007000D */ break 7 -.L800C59C4: -/* 0C65C4 800C59C4 2401FFFF */ li $at, -1 -/* 0C65C8 800C59C8 14E10004 */ bne $a3, $at, .L800C59DC -/* 0C65CC 800C59CC 3C018000 */ lui $at, 0x8000 -/* 0C65D0 800C59D0 14A10002 */ bne $a1, $at, .L800C59DC -/* 0C65D4 800C59D4 00000000 */ nop -/* 0C65D8 800C59D8 0006000D */ break 6 -.L800C59DC: -/* 0C65DC 800C59DC 00005812 */ mflo $t3 -/* 0C65E0 800C59E0 25690030 */ addiu $t1, $t3, 0x30 -/* 0C65E4 800C59E4 312E00FF */ andi $t6, $t1, 0xff -/* 0C65E8 800C59E8 01670019 */ multu $t3, $a3 -/* 0C65EC 800C59EC 01C04825 */ move $t1, $t6 -/* 0C65F0 800C59F0 01605025 */ move $t2, $t3 -/* 0C65F4 800C59F4 00006812 */ mflo $t5 -/* 0C65F8 800C59F8 00AD2823 */ subu $a1, $a1, $t5 -/* 0C65FC 800C59FC 00000000 */ nop -.L800C5A00: -/* 0C6600 800C5A00 10600003 */ beqz $v1, .L800C5A10 -/* 0C6604 800C5A04 00000000 */ nop -/* 0C6608 800C5A08 A0490000 */ sb $t1, ($v0) -/* 0C660C 800C5A0C 24420001 */ addiu $v0, $v0, 1 -.L800C5A10: -/* 0C6610 800C5A10 8D07000C */ lw $a3, 0xc($t0) -/* 0C6614 800C5A14 25080010 */ addiu $t0, $t0, 0x10 -/* 0C6618 800C5A18 00A7082A */ slt $at, $a1, $a3 -/* 0C661C 800C5A1C 14200015 */ bnez $at, .L800C5A74 -/* 0C6620 800C5A20 24090030 */ li $t1, 48 -/* 0C6624 800C5A24 00A7001A */ div $zero, $a1, $a3 -/* 0C6628 800C5A28 24030001 */ li $v1, 1 -/* 0C662C 800C5A2C 14E00002 */ bnez $a3, .L800C5A38 -/* 0C6630 800C5A30 00000000 */ nop -/* 0C6634 800C5A34 0007000D */ break 7 -.L800C5A38: -/* 0C6638 800C5A38 2401FFFF */ li $at, -1 -/* 0C663C 800C5A3C 14E10004 */ bne $a3, $at, .L800C5A50 -/* 0C6640 800C5A40 3C018000 */ lui $at, 0x8000 -/* 0C6644 800C5A44 14A10002 */ bne $a1, $at, .L800C5A50 -/* 0C6648 800C5A48 00000000 */ nop -/* 0C664C 800C5A4C 0006000D */ break 6 -.L800C5A50: -/* 0C6650 800C5A50 00005812 */ mflo $t3 -/* 0C6654 800C5A54 25690030 */ addiu $t1, $t3, 0x30 -/* 0C6658 800C5A58 313800FF */ andi $t8, $t1, 0xff -/* 0C665C 800C5A5C 01670019 */ multu $t3, $a3 -/* 0C6660 800C5A60 03004825 */ move $t1, $t8 -/* 0C6664 800C5A64 01605025 */ move $t2, $t3 -/* 0C6668 800C5A68 00007812 */ mflo $t7 -/* 0C666C 800C5A6C 00AF2823 */ subu $a1, $a1, $t7 -/* 0C6670 800C5A70 00000000 */ nop -.L800C5A74: -/* 0C6674 800C5A74 10600003 */ beqz $v1, .L800C5A84 -/* 0C6678 800C5A78 00000000 */ nop -/* 0C667C 800C5A7C A0490000 */ sb $t1, ($v0) -/* 0C6680 800C5A80 24420001 */ addiu $v0, $v0, 1 -.L800C5A84: -/* 0C6684 800C5A84 150CFF8B */ bne $t0, $t4, .L800C58B4 -/* 0C6688 800C5A88 00000000 */ nop -/* 0C668C 800C5A8C 24B90030 */ addiu $t9, $a1, 0x30 -/* 0C6690 800C5A90 A0590000 */ sb $t9, ($v0) -/* 0C6694 800C5A94 24420001 */ addiu $v0, $v0, 1 -/* 0C6698 800C5A98 03E00008 */ jr $ra -/* 0C669C 800C5A9C AC820000 */ sw $v0, ($a0) - -glabel func_800C5AA0 -/* 0C66A0 800C5AA0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C66A4 800C5AA4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0C66A8 800C5AA8 AFA40018 */ sw $a0, 0x18($sp) -/* 0C66AC 800C5AAC AFA70024 */ sw $a3, 0x24($sp) -/* 0C66B0 800C5AB0 AFA5001C */ sw $a1, 0x1c($sp) -/* 0C66B4 800C5AB4 0C01E948 */ jal func_8007A520 -/* 0C66B8 800C5AB8 AFA60020 */ sw $a2, 0x20($sp) -/* 0C66BC 800C5ABC 8FA70024 */ lw $a3, 0x24($sp) -/* 0C66C0 800C5AC0 8FA5001C */ lw $a1, 0x1c($sp) -/* 0C66C4 800C5AC4 8FA60020 */ lw $a2, 0x20($sp) -/* 0C66C8 800C5AC8 8FA80018 */ lw $t0, 0x18($sp) -/* 0C66CC 800C5ACC 04E0001E */ bltz $a3, .L800C5B48 -/* 0C66D0 800C5AD0 304EFFFF */ andi $t6, $v0, 0xffff -/* 0C66D4 800C5AD4 00AE082B */ sltu $at, $a1, $t6 -/* 0C66D8 800C5AD8 1020001C */ beqz $at, .L800C5B4C -/* 0C66DC 800C5ADC 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C66E0 800C5AE0 8FA40028 */ lw $a0, 0x28($sp) -/* 0C66E4 800C5AE4 00027C02 */ srl $t7, $v0, 0x10 -/* 0C66E8 800C5AE8 04800017 */ bltz $a0, .L800C5B48 -/* 0C66EC 800C5AEC 00CF082B */ sltu $at, $a2, $t7 -/* 0C66F0 800C5AF0 10200015 */ beqz $at, .L800C5B48 -/* 0C66F4 800C5AF4 30F903FF */ andi $t9, $a3, 0x3ff -/* 0C66F8 800C5AF8 04A10002 */ bgez $a1, .L800C5B04 -/* 0C66FC 800C5AFC 00194B80 */ sll $t1, $t9, 0xe -/* 0C6700 800C5B00 00002825 */ move $a1, $zero -.L800C5B04: -/* 0C6704 800C5B04 04C10002 */ bgez $a2, .L800C5B10 -/* 0C6708 800C5B08 3C01F600 */ lui $at, 0xf600 -/* 0C670C 800C5B0C 00003025 */ move $a2, $zero -.L800C5B10: -/* 0C6710 800C5B10 8D030000 */ lw $v1, ($t0) -/* 0C6714 800C5B14 01215025 */ or $t2, $t1, $at -/* 0C6718 800C5B18 24780008 */ addiu $t8, $v1, 8 -/* 0C671C 800C5B1C AD180000 */ sw $t8, ($t0) -/* 0C6720 800C5B20 30D803FF */ andi $t8, $a2, 0x3ff -/* 0C6724 800C5B24 308B03FF */ andi $t3, $a0, 0x3ff -/* 0C6728 800C5B28 30AE03FF */ andi $t6, $a1, 0x3ff -/* 0C672C 800C5B2C 000E7B80 */ sll $t7, $t6, 0xe -/* 0C6730 800C5B30 000B6080 */ sll $t4, $t3, 2 -/* 0C6734 800C5B34 0018C880 */ sll $t9, $t8, 2 -/* 0C6738 800C5B38 01F94825 */ or $t1, $t7, $t9 -/* 0C673C 800C5B3C 014C6825 */ or $t5, $t2, $t4 -/* 0C6740 800C5B40 AC6D0000 */ sw $t5, ($v1) -/* 0C6744 800C5B44 AC690004 */ sw $t1, 4($v1) -.L800C5B48: -/* 0C6748 800C5B48 8FBF0014 */ lw $ra, 0x14($sp) -.L800C5B4C: -/* 0C674C 800C5B4C 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0C6750 800C5B50 03E00008 */ jr $ra -/* 0C6754 800C5B54 00000000 */ nop - -glabel func_800C5B58 -/* 0C6758 800C5B58 27BDFE80 */ addiu $sp, $sp, -0x180 -/* 0C675C 800C5B5C 00077080 */ sll $t6, $a3, 2 -/* 0C6760 800C5B60 3C0F8013 */ lui $t7, %hi(D_8012A7E8) # $t7, 0x8013 -/* 0C6764 800C5B64 8DEFA7E8 */ lw $t7, %lo(D_8012A7E8)($t7) -/* 0C6768 800C5B68 01C77021 */ addu $t6, $t6, $a3 -/* 0C676C 800C5B6C AFB10028 */ sw $s1, 0x28($sp) -/* 0C6770 800C5B70 000E70C0 */ sll $t6, $t6, 3 -/* 0C6774 800C5B74 AFBF0034 */ sw $ra, 0x34($sp) -/* 0C6778 800C5B78 AFB30030 */ sw $s3, 0x30($sp) -/* 0C677C 800C5B7C AFB2002C */ sw $s2, 0x2c($sp) -/* 0C6780 800C5B80 AFB00024 */ sw $s0, 0x24($sp) -/* 0C6784 800C5B84 E7B50018 */ swc1 $f21, 0x18($sp) -/* 0C6788 800C5B88 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 0C678C 800C5B8C AFA60188 */ sw $a2, 0x188($sp) -/* 0C6790 800C5B90 01CF8821 */ addu $s1, $t6, $t7 -/* 0C6794 800C5B94 92380013 */ lbu $t8, 0x13($s1) -/* 0C6798 800C5B98 00A09025 */ move $s2, $a1 -/* 0C679C 800C5B9C 13000095 */ beqz $t8, .L800C5DF4 -/* 0C67A0 800C5BA0 00809825 */ move $s3, $a0 -/* 0C67A4 800C5BA4 8C820000 */ lw $v0, ($a0) -/* 0C67A8 800C5BA8 3C0B800E */ lui $t3, %hi(D_800E3690) # $t3, 0x800e -/* 0C67AC 800C5BAC 24590008 */ addiu $t9, $v0, 8 -/* 0C67B0 800C5BB0 AC990000 */ sw $t9, ($a0) -/* 0C67B4 800C5BB4 256B3690 */ addiu $t3, %lo(D_800E3690) # addiu $t3, $t3, 0x3690 -/* 0C67B8 800C5BB8 3C0A0600 */ lui $t2, 0x600 -/* 0C67BC 800C5BBC AC4A0000 */ sw $t2, ($v0) -/* 0C67C0 800C5BC0 AC4B0004 */ sw $t3, 4($v0) -/* 0C67C4 800C5BC4 8C820000 */ lw $v0, ($a0) -/* 0C67C8 800C5BC8 3C0D0702 */ lui $t5, (0x07020010 >> 16) # lui $t5, 0x702 -/* 0C67CC 800C5BCC 244C0008 */ addiu $t4, $v0, 8 -/* 0C67D0 800C5BD0 AE6C0000 */ sw $t4, ($s3) -/* 0C67D4 800C5BD4 3C0E000E */ lui $t6, %hi(D_000E36D8) # $t6, 0xe -/* 0C67D8 800C5BD8 25CE36D8 */ addiu $t6, %lo(D_000E36D8) # addiu $t6, $t6, 0x36d8 -/* 0C67DC 800C5BDC 35AD0010 */ ori $t5, (0x07020010 & 0xFFFF) # ori $t5, $t5, 0x10 -/* 0C67E0 800C5BE0 AC4D0000 */ sw $t5, ($v0) -/* 0C67E4 800C5BE4 AC4E0004 */ sw $t6, 4($v0) -/* 0C67E8 800C5BE8 8E620000 */ lw $v0, ($s3) -/* 0C67EC 800C5BEC 3C18FB00 */ lui $t8, 0xfb00 -/* 0C67F0 800C5BF0 244F0008 */ addiu $t7, $v0, 8 -/* 0C67F4 800C5BF4 AE6F0000 */ sw $t7, ($s3) -/* 0C67F8 800C5BF8 AC400004 */ sw $zero, 4($v0) -/* 0C67FC 800C5BFC AC580000 */ sw $t8, ($v0) -/* 0C6800 800C5C00 86290004 */ lh $t1, 4($s1) -/* 0C6804 800C5C04 86280008 */ lh $t0, 8($s1) -/* 0C6808 800C5C08 02602025 */ move $a0, $s3 -/* 0C680C 800C5C0C 0109C823 */ subu $t9, $t0, $t1 -/* 0C6810 800C5C10 2B21000A */ slti $at, $t9, 0xa -/* 0C6814 800C5C14 14200008 */ bnez $at, .L800C5C38 -/* 0C6818 800C5C18 2525FFFE */ addiu $a1, $t1, -2 -/* 0C681C 800C5C1C 8622000A */ lh $v0, 0xa($s1) -/* 0C6820 800C5C20 86300006 */ lh $s0, 6($s1) -/* 0C6824 800C5C24 25270002 */ addiu $a3, $t1, 2 -/* 0C6828 800C5C28 00505023 */ subu $t2, $v0, $s0 -/* 0C682C 800C5C2C 2941000A */ slti $at, $t2, 0xa -/* 0C6830 800C5C30 1020000A */ beqz $at, .L800C5C5C -/* 0C6834 800C5C34 26060002 */ addiu $a2, $s0, 2 -.L800C5C38: -/* 0C6838 800C5C38 862B000A */ lh $t3, 0xa($s1) -/* 0C683C 800C5C3C 86260006 */ lh $a2, 6($s1) -/* 0C6840 800C5C40 256C0002 */ addiu $t4, $t3, 2 -/* 0C6844 800C5C44 AFAC0010 */ sw $t4, 0x10($sp) -/* 0C6848 800C5C48 25070002 */ addiu $a3, $t0, 2 -/* 0C684C 800C5C4C 0C0316A8 */ jal func_800C5AA0 -/* 0C6850 800C5C50 24C6FFFE */ addiu $a2, $a2, -2 -/* 0C6854 800C5C54 10000025 */ b .L800C5CEC -/* 0C6858 800C5C58 8E620000 */ lw $v0, ($s3) -.L800C5C5C: -/* 0C685C 800C5C5C 244DFFFE */ addiu $t5, $v0, -2 -/* 0C6860 800C5C60 AFAD0010 */ sw $t5, 0x10($sp) -/* 0C6864 800C5C64 02602025 */ move $a0, $s3 -/* 0C6868 800C5C68 0C0316A8 */ jal func_800C5AA0 -/* 0C686C 800C5C6C 2525FFFE */ addiu $a1, $t1, -2 -/* 0C6870 800C5C70 86300006 */ lh $s0, 6($s1) -/* 0C6874 800C5C74 86250004 */ lh $a1, 4($s1) -/* 0C6878 800C5C78 86270008 */ lh $a3, 8($s1) -/* 0C687C 800C5C7C 260E0002 */ addiu $t6, $s0, 2 -/* 0C6880 800C5C80 AFAE0010 */ sw $t6, 0x10($sp) -/* 0C6884 800C5C84 02602025 */ move $a0, $s3 -/* 0C6888 800C5C88 2606FFFE */ addiu $a2, $s0, -2 -/* 0C688C 800C5C8C 24A5FFFE */ addiu $a1, $a1, -2 -/* 0C6890 800C5C90 0C0316A8 */ jal func_800C5AA0 -/* 0C6894 800C5C94 24E70002 */ addiu $a3, $a3, 2 -/* 0C6898 800C5C98 86280008 */ lh $t0, 8($s1) -/* 0C689C 800C5C9C 862F000A */ lh $t7, 0xa($s1) -/* 0C68A0 800C5CA0 86260006 */ lh $a2, 6($s1) -/* 0C68A4 800C5CA4 25F8FFFE */ addiu $t8, $t7, -2 -/* 0C68A8 800C5CA8 AFB80010 */ sw $t8, 0x10($sp) -/* 0C68AC 800C5CAC 02602025 */ move $a0, $s3 -/* 0C68B0 800C5CB0 2505FFFE */ addiu $a1, $t0, -2 -/* 0C68B4 800C5CB4 25070002 */ addiu $a3, $t0, 2 -/* 0C68B8 800C5CB8 0C0316A8 */ jal func_800C5AA0 -/* 0C68BC 800C5CBC 24C60002 */ addiu $a2, $a2, 2 -/* 0C68C0 800C5CC0 8622000A */ lh $v0, 0xa($s1) -/* 0C68C4 800C5CC4 86250004 */ lh $a1, 4($s1) -/* 0C68C8 800C5CC8 86270008 */ lh $a3, 8($s1) -/* 0C68CC 800C5CCC 24590002 */ addiu $t9, $v0, 2 -/* 0C68D0 800C5CD0 AFB90010 */ sw $t9, 0x10($sp) -/* 0C68D4 800C5CD4 02602025 */ move $a0, $s3 -/* 0C68D8 800C5CD8 2446FFFE */ addiu $a2, $v0, -2 -/* 0C68DC 800C5CDC 24A5FFFE */ addiu $a1, $a1, -2 -/* 0C68E0 800C5CE0 0C0316A8 */ jal func_800C5AA0 -/* 0C68E4 800C5CE4 24E70002 */ addiu $a3, $a3, 2 -/* 0C68E8 800C5CE8 8E620000 */ lw $v0, ($s3) -.L800C5CEC: -/* 0C68EC 800C5CEC 3C0BE700 */ lui $t3, 0xe700 -/* 0C68F0 800C5CF0 244A0008 */ addiu $t2, $v0, 8 -/* 0C68F4 800C5CF4 AE6A0000 */ sw $t2, ($s3) -/* 0C68F8 800C5CF8 AC400004 */ sw $zero, 4($v0) -/* 0C68FC 800C5CFC AC4B0000 */ sw $t3, ($v0) -/* 0C6900 800C5D00 8E620000 */ lw $v0, ($s3) -/* 0C6904 800C5D04 3C0DFB00 */ lui $t5, 0xfb00 -/* 0C6908 800C5D08 244C0008 */ addiu $t4, $v0, 8 -/* 0C690C 800C5D0C AE6C0000 */ sw $t4, ($s3) -/* 0C6910 800C5D10 AC4D0000 */ sw $t5, ($v0) -/* 0C6914 800C5D14 922F0010 */ lbu $t7, 0x10($s1) -/* 0C6918 800C5D18 922A0011 */ lbu $t2, 0x11($s1) -/* 0C691C 800C5D1C 000FC600 */ sll $t8, $t7, 0x18 -/* 0C6920 800C5D20 922E0012 */ lbu $t6, 0x12($s1) -/* 0C6924 800C5D24 000A5C00 */ sll $t3, $t2, 0x10 -/* 0C6928 800C5D28 030B6025 */ or $t4, $t8, $t3 -/* 0C692C 800C5D2C 92380013 */ lbu $t8, 0x13($s1) -/* 0C6930 800C5D30 000E7A00 */ sll $t7, $t6, 8 -/* 0C6934 800C5D34 018FC825 */ or $t9, $t4, $t7 -/* 0C6938 800C5D38 03385825 */ or $t3, $t9, $t8 -/* 0C693C 800C5D3C 3C0D800E */ lui $t5, %hi(D_800E3710) # $t5, 0x800e -/* 0C6940 800C5D40 AC4B0004 */ sw $t3, 4($v0) -/* 0C6944 800C5D44 81AD3710 */ lb $t5, %lo(D_800E3710)($t5) -/* 0C6948 800C5D48 3C0E800E */ lui $t6, 0x800e -/* 0C694C 800C5D4C 05A00023 */ bltz $t5, .L800C5DDC -/* 0C6950 800C5D50 25D03710 */ addiu $s0, $t6, 0x3710 -/* 0C6954 800C5D54 82020000 */ lb $v0, ($s0) -/* 0C6958 800C5D58 00000000 */ nop -.L800C5D5C: -/* 0C695C 800C5D5C 862C0004 */ lh $t4, 4($s1) -/* 0C6960 800C5D60 820F0001 */ lb $t7, 1($s0) -/* 0C6964 800C5D64 02602025 */ move $a0, $s3 -/* 0C6968 800C5D68 11E00005 */ beqz $t7, .L800C5D80 -/* 0C696C 800C5D6C 004C2821 */ addu $a1, $v0, $t4 -/* 0C6970 800C5D70 820A0002 */ lb $t2, 2($s0) -/* 0C6974 800C5D74 8639000A */ lh $t9, 0xa($s1) -/* 0C6978 800C5D78 10000005 */ b .L800C5D90 -/* 0C697C 800C5D7C 01593021 */ addu $a2, $t2, $t9 -.L800C5D80: -/* 0C6980 800C5D80 82180002 */ lb $t8, 2($s0) -/* 0C6984 800C5D84 862B0006 */ lh $t3, 6($s1) -/* 0C6988 800C5D88 00000000 */ nop -/* 0C698C 800C5D8C 030B3021 */ addu $a2, $t8, $t3 -.L800C5D90: -/* 0C6990 800C5D90 862D0008 */ lh $t5, 8($s1) -/* 0C6994 800C5D94 820E0003 */ lb $t6, 3($s0) -/* 0C6998 800C5D98 01A23823 */ subu $a3, $t5, $v0 -/* 0C699C 800C5D9C 11C00005 */ beqz $t6, .L800C5DB4 -/* 0C69A0 800C5DA0 00000000 */ nop -/* 0C69A4 800C5DA4 820C0004 */ lb $t4, 4($s0) -/* 0C69A8 800C5DA8 862F000A */ lh $t7, 0xa($s1) -/* 0C69AC 800C5DAC 10000005 */ b .L800C5DC4 -/* 0C69B0 800C5DB0 018F1021 */ addu $v0, $t4, $t7 -.L800C5DB4: -/* 0C69B4 800C5DB4 820A0004 */ lb $t2, 4($s0) -/* 0C69B8 800C5DB8 86390006 */ lh $t9, 6($s1) -/* 0C69BC 800C5DBC 00000000 */ nop -/* 0C69C0 800C5DC0 01591021 */ addu $v0, $t2, $t9 -.L800C5DC4: -/* 0C69C4 800C5DC4 0C0316A8 */ jal func_800C5AA0 -/* 0C69C8 800C5DC8 AFA20010 */ sw $v0, 0x10($sp) -/* 0C69CC 800C5DCC 82020005 */ lb $v0, 5($s0) -/* 0C69D0 800C5DD0 26100005 */ addiu $s0, $s0, 5 -/* 0C69D4 800C5DD4 0441FFE1 */ bgez $v0, .L800C5D5C -/* 0C69D8 800C5DD8 00000000 */ nop -.L800C5DDC: -/* 0C69DC 800C5DDC 8E620000 */ lw $v0, ($s3) -/* 0C69E0 800C5DE0 3C0BE700 */ lui $t3, 0xe700 -/* 0C69E4 800C5DE4 24580008 */ addiu $t8, $v0, 8 -/* 0C69E8 800C5DE8 AE780000 */ sw $t8, ($s3) -/* 0C69EC 800C5DEC AC400004 */ sw $zero, 4($v0) -/* 0C69F0 800C5DF0 AC4B0000 */ sw $t3, ($v0) -.L800C5DF4: -/* 0C69F4 800C5DF4 12400015 */ beqz $s2, .L800C5E4C -/* 0C69F8 800C5DF8 00000000 */ nop -/* 0C69FC 800C5DFC 8FAD0188 */ lw $t5, 0x188($sp) -/* 0C6A00 800C5E00 3C10800E */ lui $s0, %hi(D_800E36E8) # $s0, 0x800e -/* 0C6A04 800C5E04 11A00011 */ beqz $t5, .L800C5E4C -/* 0C6A08 800C5E08 261036E8 */ addiu $s0, %lo(D_800E36E8) # addiu $s0, $s0, 0x36e8 -/* 0C6A0C 800C5E0C 820E0000 */ lb $t6, ($s0) -/* 0C6A10 800C5E10 00000000 */ nop -/* 0C6A14 800C5E14 15C00006 */ bnez $t6, .L800C5E30 -/* 0C6A18 800C5E18 240F0002 */ li $t7, 2 -/* 0C6A1C 800C5E1C 0C027A68 */ jal func_8009E9A0 -/* 0C6A20 800C5E20 00000000 */ nop -/* 0C6A24 800C5E24 240C0001 */ li $t4, 1 -/* 0C6A28 800C5E28 A20C0000 */ sb $t4, ($s0) -/* 0C6A2C 800C5E2C 240F0002 */ li $t7, 2 -.L800C5E30: -/* 0C6A30 800C5E30 3C018013 */ lui $at, %hi(D_8012A7F4) # $at, 0x8013 -/* 0C6A34 800C5E34 8FA70188 */ lw $a3, 0x188($sp) -/* 0C6A38 800C5E38 A02FA7F4 */ sb $t7, %lo(D_8012A7F4)($at) -/* 0C6A3C 800C5E3C 02202025 */ move $a0, $s1 -/* 0C6A40 800C5E40 02602825 */ move $a1, $s3 -/* 0C6A44 800C5E44 0C027A6C */ jal func_8009E9B0 -/* 0C6A48 800C5E48 02403025 */ move $a2, $s2 -.L800C5E4C: -/* 0C6A4C 800C5E4C 8E300024 */ lw $s0, 0x24($s1) -/* 0C6A50 800C5E50 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0C6A54 800C5E54 1200003A */ beqz $s0, .L800C5F40 -/* 0C6A58 800C5E58 8FBF0034 */ lw $ra, 0x34($sp) -/* 0C6A5C 800C5E5C 4481A000 */ mtc1 $at, $f20 -/* 0C6A60 800C5E60 27B2006C */ addiu $s2, $sp, 0x6c -.L800C5E64: -/* 0C6A64 800C5E64 860A0008 */ lh $t2, 8($s0) -/* 0C6A68 800C5E68 8619000C */ lh $t9, 0xc($s0) -/* 0C6A6C 800C5E6C 02402825 */ move $a1, $s2 -/* 0C6A70 800C5E70 0159C021 */ addu $t8, $t2, $t9 -/* 0C6A74 800C5E74 A6380000 */ sh $t8, ($s1) -/* 0C6A78 800C5E78 860D000E */ lh $t5, 0xe($s0) -/* 0C6A7C 800C5E7C 860B000A */ lh $t3, 0xa($s0) -/* 0C6A80 800C5E80 00000000 */ nop -/* 0C6A84 800C5E84 016D7021 */ addu $t6, $t3, $t5 -/* 0C6A88 800C5E88 A62E0002 */ sh $t6, 2($s1) -/* 0C6A8C 800C5E8C 920C0010 */ lbu $t4, 0x10($s0) -/* 0C6A90 800C5E90 00000000 */ nop -/* 0C6A94 800C5E94 A22C0014 */ sb $t4, 0x14($s1) -/* 0C6A98 800C5E98 920F0011 */ lbu $t7, 0x11($s0) -/* 0C6A9C 800C5E9C 00000000 */ nop -/* 0C6AA0 800C5EA0 A22F0015 */ sb $t7, 0x15($s1) -/* 0C6AA4 800C5EA4 920A0012 */ lbu $t2, 0x12($s0) -/* 0C6AA8 800C5EA8 00000000 */ nop -/* 0C6AAC 800C5EAC A22A0016 */ sb $t2, 0x16($s1) -/* 0C6AB0 800C5EB0 92190013 */ lbu $t9, 0x13($s0) -/* 0C6AB4 800C5EB4 00000000 */ nop -/* 0C6AB8 800C5EB8 A2390017 */ sb $t9, 0x17($s1) -/* 0C6ABC 800C5EBC 92180014 */ lbu $t8, 0x14($s0) -/* 0C6AC0 800C5EC0 00000000 */ nop -/* 0C6AC4 800C5EC4 A2380018 */ sb $t8, 0x18($s1) -/* 0C6AC8 800C5EC8 920B0015 */ lbu $t3, 0x15($s0) -/* 0C6ACC 800C5ECC 00000000 */ nop -/* 0C6AD0 800C5ED0 A22B0019 */ sb $t3, 0x19($s1) -/* 0C6AD4 800C5ED4 920D0016 */ lbu $t5, 0x16($s0) -/* 0C6AD8 800C5ED8 00000000 */ nop -/* 0C6ADC 800C5EDC A22D001A */ sb $t5, 0x1a($s1) -/* 0C6AE0 800C5EE0 920E0017 */ lbu $t6, 0x17($s0) -/* 0C6AE4 800C5EE4 00000000 */ nop -/* 0C6AE8 800C5EE8 A22E001B */ sb $t6, 0x1b($s1) -/* 0C6AEC 800C5EEC 920C0018 */ lbu $t4, 0x18($s0) -/* 0C6AF0 800C5EF0 00000000 */ nop -/* 0C6AF4 800C5EF4 A22C001C */ sb $t4, 0x1c($s1) -/* 0C6AF8 800C5EF8 920F0019 */ lbu $t7, 0x19($s0) -/* 0C6AFC 800C5EFC 00000000 */ nop -/* 0C6B00 800C5F00 A22F001D */ sb $t7, 0x1d($s1) -/* 0C6B04 800C5F04 92060001 */ lbu $a2, 1($s0) -/* 0C6B08 800C5F08 8E040004 */ lw $a0, 4($s0) -/* 0C6B0C 800C5F0C 0C0317D8 */ jal func_800C5F60 -/* 0C6B10 800C5F10 00000000 */ nop -/* 0C6B14 800C5F14 02602025 */ move $a0, $s3 -/* 0C6B18 800C5F18 02202825 */ move $a1, $s1 -/* 0C6B1C 800C5F1C 02403025 */ move $a2, $s2 -/* 0C6B20 800C5F20 00003825 */ move $a3, $zero -/* 0C6B24 800C5F24 0C031169 */ jal func_800C45A4 -/* 0C6B28 800C5F28 E7B40010 */ swc1 $f20, 0x10($sp) -/* 0C6B2C 800C5F2C 8E10001C */ lw $s0, 0x1c($s0) -/* 0C6B30 800C5F30 00000000 */ nop -/* 0C6B34 800C5F34 1600FFCB */ bnez $s0, .L800C5E64 -/* 0C6B38 800C5F38 00000000 */ nop -/* 0C6B3C 800C5F3C 8FBF0034 */ lw $ra, 0x34($sp) -.L800C5F40: -/* 0C6B40 800C5F40 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 0C6B44 800C5F44 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 0C6B48 800C5F48 8FB00024 */ lw $s0, 0x24($sp) -/* 0C6B4C 800C5F4C 8FB10028 */ lw $s1, 0x28($sp) -/* 0C6B50 800C5F50 8FB2002C */ lw $s2, 0x2c($sp) -/* 0C6B54 800C5F54 8FB30030 */ lw $s3, 0x30($sp) -/* 0C6B58 800C5F58 03E00008 */ jr $ra -/* 0C6B5C 800C5F5C 27BD0180 */ addiu $sp, $sp, 0x180 - -glabel func_800C5F60 -/* 0C6B60 800C5F60 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0C6B64 800C5F64 AFBF0024 */ sw $ra, 0x24($sp) -/* 0C6B68 800C5F68 AFB30020 */ sw $s3, 0x20($sp) -/* 0C6B6C 800C5F6C AFB2001C */ sw $s2, 0x1c($sp) -/* 0C6B70 800C5F70 AFB10018 */ sw $s1, 0x18($sp) -/* 0C6B74 800C5F74 AFB00014 */ sw $s0, 0x14($sp) -/* 0C6B78 800C5F78 AFA5002C */ sw $a1, 0x2c($sp) -/* 0C6B7C 800C5F7C 90820000 */ lbu $v0, ($a0) -/* 0C6B80 800C5F80 00808025 */ move $s0, $a0 -/* 0C6B84 800C5F84 10400014 */ beqz $v0, .L800C5FD8 -/* 0C6B88 800C5F88 00C09825 */ move $s3, $a2 -/* 0C6B8C 800C5F8C 27B2002C */ addiu $s2, $sp, 0x2c -/* 0C6B90 800C5F90 2411007E */ li $s1, 126 -.L800C5F94: -/* 0C6B94 800C5F94 16220005 */ bne $s1, $v0, .L800C5FAC -/* 0C6B98 800C5F98 02402025 */ move $a0, $s2 -/* 0C6B9C 800C5F9C 0C031603 */ jal func_800C580C -/* 0C6BA0 800C5FA0 02602825 */ move $a1, $s3 -/* 0C6BA4 800C5FA4 10000008 */ b .L800C5FC8 -/* 0C6BA8 800C5FA8 26100001 */ addiu $s0, $s0, 1 -.L800C5FAC: -/* 0C6BAC 800C5FAC 8FAE002C */ lw $t6, 0x2c($sp) -/* 0C6BB0 800C5FB0 26100001 */ addiu $s0, $s0, 1 -/* 0C6BB4 800C5FB4 A1C20000 */ sb $v0, ($t6) -/* 0C6BB8 800C5FB8 8FAF002C */ lw $t7, 0x2c($sp) -/* 0C6BBC 800C5FBC 00000000 */ nop -/* 0C6BC0 800C5FC0 25F80001 */ addiu $t8, $t7, 1 -/* 0C6BC4 800C5FC4 AFB8002C */ sw $t8, 0x2c($sp) -.L800C5FC8: -/* 0C6BC8 800C5FC8 92020000 */ lbu $v0, ($s0) -/* 0C6BCC 800C5FCC 00000000 */ nop -/* 0C6BD0 800C5FD0 1440FFF0 */ bnez $v0, .L800C5F94 -/* 0C6BD4 800C5FD4 00000000 */ nop -.L800C5FD8: -/* 0C6BD8 800C5FD8 8FB9002C */ lw $t9, 0x2c($sp) -/* 0C6BDC 800C5FDC 00000000 */ nop -/* 0C6BE0 800C5FE0 A3200000 */ sb $zero, ($t9) -/* 0C6BE4 800C5FE4 8FBF0024 */ lw $ra, 0x24($sp) -/* 0C6BE8 800C5FE8 8FB30020 */ lw $s3, 0x20($sp) -/* 0C6BEC 800C5FEC 8FB2001C */ lw $s2, 0x1c($sp) -/* 0C6BF0 800C5FF0 8FB10018 */ lw $s1, 0x18($sp) -/* 0C6BF4 800C5FF4 8FB00014 */ lw $s0, 0x14($sp) -/* 0C6BF8 800C5FF8 03E00008 */ jr $ra -/* 0C6BFC 800C5FFC 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_800C6000 -/* 0C6C00 800C6000 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0C6C04 800C6004 AFB00020 */ sw $s0, 0x20($sp) -/* 0C6C08 800C6008 3C10800E */ lui $s0, %hi(D_800E3740) # $s0, 0x800e -/* 0C6C0C 800C600C 26103740 */ addiu $s0, %lo(D_800E3740) # addiu $s0, $s0, 0x3740 -/* 0C6C10 800C6010 8E0E0000 */ lw $t6, ($s0) -/* 0C6C14 800C6014 AFBF0024 */ sw $ra, 0x24($sp) -/* 0C6C18 800C6018 AFA40030 */ sw $a0, 0x30($sp) -/* 0C6C1C 800C601C AFA50034 */ sw $a1, 0x34($sp) -/* 0C6C20 800C6020 15C0004F */ bnez $t6, .L800C6160 -/* 0C6C24 800C6024 AFA60038 */ sw $a2, 0x38($sp) -/* 0C6C28 800C6028 00A02025 */ move $a0, $a1 -/* 0C6C2C 800C602C 00C02825 */ move $a1, $a2 -/* 0C6C30 800C6030 0C032208 */ jal osCreateMesgQueue -/* 0C6C34 800C6034 00E03025 */ move $a2, $a3 -/* 0C6C38 800C6038 3C048013 */ lui $a0, %hi(D_8012AAB0) # $a0, 0x8013 -/* 0C6C3C 800C603C 3C058013 */ lui $a1, %hi(D_8012AAC8) # $a1, 0x8013 -/* 0C6C40 800C6040 24A5AAC8 */ addiu $a1, %lo(D_8012AAC8) # addiu $a1, $a1, -0x5538 -/* 0C6C44 800C6044 2484AAB0 */ addiu $a0, %lo(D_8012AAB0) # addiu $a0, $a0, -0x5550 -/* 0C6C48 800C6048 0C032208 */ jal osCreateMesgQueue -/* 0C6C4C 800C604C 24060001 */ li $a2, 1 -/* 0C6C50 800C6050 3C0F800E */ lui $t7, %hi(D_800E4800) # $t7, 0x800e -/* 0C6C54 800C6054 8DEF4800 */ lw $t7, %lo(D_800E4800)($t7) -/* 0C6C58 800C6058 00000000 */ nop -/* 0C6C5C 800C605C 15E00003 */ bnez $t7, .L800C606C -/* 0C6C60 800C6060 00000000 */ nop -/* 0C6C64 800C6064 0C034920 */ jal func_800D2480 -/* 0C6C68 800C6068 00000000 */ nop -.L800C606C: -/* 0C6C6C 800C606C 3C058013 */ lui $a1, %hi(D_8012AAB0) # $a1, 0x8013 -/* 0C6C70 800C6070 3C062222 */ lui $a2, (0x22222222 >> 16) # lui $a2, 0x2222 -/* 0C6C74 800C6074 34C62222 */ ori $a2, (0x22222222 & 0xFFFF) # ori $a2, $a2, 0x2222 -/* 0C6C78 800C6078 24A5AAB0 */ addiu $a1, %lo(D_8012AAB0) # addiu $a1, $a1, -0x5550 -/* 0C6C7C 800C607C 0C0332EC */ jal osSetEventMsg -/* 0C6C80 800C6080 24040008 */ li $a0, 8 -/* 0C6C84 800C6084 2418FFFF */ li $t8, -1 -/* 0C6C88 800C6088 AFB80028 */ sw $t8, 0x28($sp) -/* 0C6C8C 800C608C 0C034950 */ jal func_800D2540 -/* 0C6C90 800C6090 00002025 */ move $a0, $zero -/* 0C6C94 800C6094 8FB90030 */ lw $t9, 0x30($sp) -/* 0C6C98 800C6098 00002025 */ move $a0, $zero -/* 0C6C9C 800C609C 0059082A */ slt $at, $v0, $t9 -/* 0C6CA0 800C60A0 10200003 */ beqz $at, .L800C60B0 -/* 0C6CA4 800C60A4 03202825 */ move $a1, $t9 -/* 0C6CA8 800C60A8 0C033210 */ jal func_800CC840 -/* 0C6CAC 800C60AC AFA20028 */ sw $v0, 0x28($sp) -.L800C60B0: -/* 0C6CB0 800C60B0 0C034958 */ jal __osDisableInt -/* 0C6CB4 800C60B4 00000000 */ nop -/* 0C6CB8 800C60B8 8FA90034 */ lw $t1, 0x34($sp) -/* 0C6CBC 800C60BC 8FAF0030 */ lw $t7, 0x30($sp) -/* 0C6CC0 800C60C0 3C048013 */ lui $a0, %hi(D_8012A800) # $a0, 0x8013 -/* 0C6CC4 800C60C4 3C0A8013 */ lui $t2, %hi(D_8012AAB0) # $t2, 0x8013 -/* 0C6CC8 800C60C8 3C0B8013 */ lui $t3, %hi(D_8012D1E8) # $t3, 0x8013 -/* 0C6CCC 800C60CC 3C0C800D */ lui $t4, %hi(D_800D25A0) # $t4, 0x800d -/* 0C6CD0 800C60D0 3C0D800D */ lui $t5, %hi(D_800D2680) # $t5, 0x800d -/* 0C6CD4 800C60D4 3C0E8013 */ lui $t6, %hi(D_8012AAB0) # $t6, 0x8013 -/* 0C6CD8 800C60D8 2484A800 */ addiu $a0, %lo(D_8012A800) # addiu $a0, $a0, -0x5800 -/* 0C6CDC 800C60DC 24080001 */ li $t0, 1 -/* 0C6CE0 800C60E0 254AAAB0 */ addiu $t2, %lo(D_8012AAB0) # addiu $t2, $t2, -0x5550 -/* 0C6CE4 800C60E4 256BD1E8 */ addiu $t3, %lo(D_8012D1E8) # addiu $t3, $t3, -0x2e18 -/* 0C6CE8 800C60E8 258C25A0 */ addiu $t4, %lo(D_800D25A0) # addiu $t4, $t4, 0x25a0 -/* 0C6CEC 800C60EC 25AD2680 */ addiu $t5, %lo(D_800D2680) # addiu $t5, $t5, 0x2680 -/* 0C6CF0 800C60F0 25CEAAB0 */ addiu $t6, %lo(D_8012AAB0) # addiu $t6, $t6, -0x5550 -/* 0C6CF4 800C60F4 3C06800D */ lui $a2, %hi(D_800D2760) # $a2, 0x800d -/* 0C6CF8 800C60F8 AFA2002C */ sw $v0, 0x2c($sp) -/* 0C6CFC 800C60FC AE080000 */ sw $t0, ($s0) -/* 0C6D00 800C6100 AE040004 */ sw $a0, 4($s0) -/* 0C6D04 800C6104 AE0A000C */ sw $t2, 0xc($s0) -/* 0C6D08 800C6108 AE0B0010 */ sw $t3, 0x10($s0) -/* 0C6D0C 800C610C AE0C0014 */ sw $t4, 0x14($s0) -/* 0C6D10 800C6110 AE0D0018 */ sw $t5, 0x18($s0) -/* 0C6D14 800C6114 24C62760 */ addiu $a2, %lo(D_800D2760) # addiu $a2, $a2, 0x2760 -/* 0C6D18 800C6118 AFAE0010 */ sw $t6, 0x10($sp) -/* 0C6D1C 800C611C 00002825 */ move $a1, $zero -/* 0C6D20 800C6120 02003825 */ move $a3, $s0 -/* 0C6D24 800C6124 AE090008 */ sw $t1, 8($s0) -/* 0C6D28 800C6128 0C032214 */ jal osCreateThread -/* 0C6D2C 800C612C AFAF0014 */ sw $t7, 0x14($sp) -/* 0C6D30 800C6130 3C048013 */ lui $a0, %hi(D_8012A800) # $a0, 0x8013 -/* 0C6D34 800C6134 0C032268 */ jal osStartThread -/* 0C6D38 800C6138 2484A800 */ addiu $a0, %lo(D_8012A800) # addiu $a0, $a0, -0x5800 -/* 0C6D3C 800C613C 8FA4002C */ lw $a0, 0x2c($sp) -/* 0C6D40 800C6140 0C034960 */ jal __osRestoreInt -/* 0C6D44 800C6144 00000000 */ nop -/* 0C6D48 800C6148 8FB80028 */ lw $t8, 0x28($sp) -/* 0C6D4C 800C614C 2401FFFF */ li $at, -1 -/* 0C6D50 800C6150 13010003 */ beq $t8, $at, .L800C6160 -/* 0C6D54 800C6154 00002025 */ move $a0, $zero -/* 0C6D58 800C6158 0C033210 */ jal func_800CC840 -/* 0C6D5C 800C615C 03002825 */ move $a1, $t8 -.L800C6160: -/* 0C6D60 800C6160 8FBF0024 */ lw $ra, 0x24($sp) -/* 0C6D64 800C6164 8FB00020 */ lw $s0, 0x20($sp) -/* 0C6D68 800C6168 03E00008 */ jr $ra -/* 0C6D6C 800C616C 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_800C6170 -/* 0C6D70 800C6170 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C6D74 800C6174 AFBF0014 */ sw $ra, 0x14($sp) -/* 0C6D78 800C6178 24042800 */ li $a0, 10240 -/* 0C6D7C 800C617C 0C01C327 */ jal func_80070C9C -/* 0C6D80 800C6180 240500FF */ li $a1, 255 -/* 0C6D84 800C6184 3C01800E */ lui $at, %hi(D_800E3760) # $at, 0x800e -/* 0C6D88 800C6188 AC223760 */ sw $v0, %lo(D_800E3760)($at) -/* 0C6D8C 800C618C 24040010 */ li $a0, 16 -/* 0C6D90 800C6190 0C01C327 */ jal func_80070C9C -/* 0C6D94 800C6194 240500FF */ li $a1, 255 -/* 0C6D98 800C6198 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C6D9C 800C619C 3C01800E */ lui $at, %hi(D_800E3764) # $at, 0x800e -/* 0C6DA0 800C61A0 AC223764 */ sw $v0, %lo(D_800E3764)($at) -/* 0C6DA4 800C61A4 03E00008 */ jr $ra -/* 0C6DA8 800C61A8 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_800C61AC -/* 0C6DAC 800C61AC 908E0001 */ lbu $t6, 1($a0) -/* 0C6DB0 800C61B0 90830000 */ lbu $v1, ($a0) -/* 0C6DB4 800C61B4 90980002 */ lbu $t8, 2($a0) -/* 0C6DB8 800C61B8 90880003 */ lbu $t0, 3($a0) -/* 0C6DBC 800C61BC 000E7A00 */ sll $t7, $t6, 8 -/* 0C6DC0 800C61C0 006F1825 */ or $v1, $v1, $t7 -/* 0C6DC4 800C61C4 0018CC00 */ sll $t9, $t8, 0x10 -/* 0C6DC8 800C61C8 00791825 */ or $v1, $v1, $t9 -/* 0C6DCC 800C61CC 00084E00 */ sll $t1, $t0, 0x18 -/* 0C6DD0 800C61D0 24840003 */ addiu $a0, $a0, 3 -/* 0C6DD4 800C61D4 03E00008 */ jr $ra -/* 0C6DD8 800C61D8 00691025 */ or $v0, $v1, $t1 - -glabel func_800C61DC -/* 0C6DDC 800C61DC 00A03025 */ move $a2, $a1 -/* 0C6DE0 800C61E0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C6DE4 800C61E4 3C05800E */ lui $a1, %hi(D_800E3764) # $a1, 0x800e -/* 0C6DE8 800C61E8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0C6DEC 800C61EC 8CA53764 */ lw $a1, %lo(D_800E3764)($a1) -/* 0C6DF0 800C61F0 0C01DB9A */ jal func_80076E68 -/* 0C6DF4 800C61F4 24070008 */ li $a3, 8 -/* 0C6DF8 800C61F8 3C04800E */ lui $a0, %hi(D_800E3764) # $a0, 0x800e -/* 0C6DFC 800C61FC 8C843764 */ lw $a0, %lo(D_800E3764)($a0) -/* 0C6E00 800C6200 0C03186B */ jal func_800C61AC -/* 0C6E04 800C6204 00000000 */ nop -/* 0C6E08 800C6208 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C6E0C 800C620C 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0C6E10 800C6210 03E00008 */ jr $ra -/* 0C6E14 800C6214 00000000 */ nop - -glabel func_800C6218 -/* 0C6E18 800C6218 248E0005 */ addiu $t6, $a0, 5 -/* 0C6E1C 800C621C 3C01800E */ lui $at, %hi(D_800E3768) # $at, 0x800e -/* 0C6E20 800C6220 AC2E3768 */ sw $t6, %lo(D_800E3768)($at) -/* 0C6E24 800C6224 3C01800E */ lui $at, %hi(D_800E376C) # $at, 0x800e -/* 0C6E28 800C6228 AC25376C */ sw $a1, %lo(D_800E376C)($at) -/* 0C6E2C 800C622C 3C018013 */ lui $at, %hi(D_8012AAD4) # $at, 0x8013 -/* 0C6E30 800C6230 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C6E34 800C6234 AC20AAD4 */ sw $zero, %lo(D_8012AAD4)($at) -/* 0C6E38 800C6238 AFBF0014 */ sw $ra, 0x14($sp) -/* 0C6E3C 800C623C 3C018013 */ lui $at, %hi(D_8012AAD0) # $at, 0x8013 -/* 0C6E40 800C6240 AFA5001C */ sw $a1, 0x1c($sp) -/* 0C6E44 800C6244 0C031A30 */ jal func_800C68C0 -/* 0C6E48 800C6248 AC20AAD0 */ sw $zero, %lo(D_8012AAD0)($at) -/* 0C6E4C 800C624C 10400006 */ beqz $v0, .L800C6268 -/* 0C6E50 800C6250 8FBF0014 */ lw $ra, 0x14($sp) -.L800C6254: -/* 0C6E54 800C6254 0C031A30 */ jal func_800C68C0 -/* 0C6E58 800C6258 00000000 */ nop -/* 0C6E5C 800C625C 1440FFFD */ bnez $v0, .L800C6254 -/* 0C6E60 800C6260 00000000 */ nop -/* 0C6E64 800C6264 8FBF0014 */ lw $ra, 0x14($sp) -.L800C6268: -/* 0C6E68 800C6268 8FA2001C */ lw $v0, 0x1c($sp) -/* 0C6E6C 800C626C 03E00008 */ jr $ra -/* 0C6E70 800C6270 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_800C6274 -/* 0C6E74 800C6274 27BDFA08 */ addiu $sp, $sp, -0x5f8 -/* 0C6E78 800C6278 AFB20020 */ sw $s2, 0x20($sp) -/* 0C6E7C 800C627C AFB1001C */ sw $s1, 0x1c($sp) -/* 0C6E80 800C6280 27B105B0 */ addiu $s1, $sp, 0x5b0 -/* 0C6E84 800C6284 00809025 */ move $s2, $a0 -/* 0C6E88 800C6288 AFBF003C */ sw $ra, 0x3c($sp) -/* 0C6E8C 800C628C AFA505FC */ sw $a1, 0x5fc($sp) -/* 0C6E90 800C6290 AFBE0038 */ sw $fp, 0x38($sp) -/* 0C6E94 800C6294 AFB70034 */ sw $s7, 0x34($sp) -/* 0C6E98 800C6298 AFB60030 */ sw $s6, 0x30($sp) -/* 0C6E9C 800C629C AFB5002C */ sw $s5, 0x2c($sp) -/* 0C6EA0 800C62A0 AFB40028 */ sw $s4, 0x28($sp) -/* 0C6EA4 800C62A4 AFB30024 */ sw $s3, 0x24($sp) -/* 0C6EA8 800C62A8 AFB00018 */ sw $s0, 0x18($sp) -/* 0C6EAC 800C62AC AFA60600 */ sw $a2, 0x600($sp) -/* 0C6EB0 800C62B0 AFA70604 */ sw $a3, 0x604($sp) -/* 0C6EB4 800C62B4 24050044 */ li $a1, 68 -/* 0C6EB8 800C62B8 0C034138 */ jal func_800D04E0 -/* 0C6EBC 800C62BC 02202025 */ move $a0, $s1 -/* 0C6EC0 800C62C0 8FAE05FC */ lw $t6, 0x5fc($sp) -/* 0C6EC4 800C62C4 0240F025 */ move $fp, $s2 -/* 0C6EC8 800C62C8 31C20003 */ andi $v0, $t6, 3 -/* 0C6ECC 800C62CC 00021023 */ negu $v0, $v0 -/* 0C6ED0 800C62D0 1040000D */ beqz $v0, .L800C6308 -/* 0C6ED4 800C62D4 01C0F825 */ move $ra, $t6 -/* 0C6ED8 800C62D8 004E1821 */ addu $v1, $v0, $t6 -.L800C62DC: -/* 0C6EDC 800C62DC 8FCF0000 */ lw $t7, ($fp) -/* 0C6EE0 800C62E0 27FFFFFF */ addiu $ra, $ra, -1 -/* 0C6EE4 800C62E4 000FC080 */ sll $t8, $t7, 2 -/* 0C6EE8 800C62E8 02381021 */ addu $v0, $s1, $t8 -/* 0C6EEC 800C62EC 8C590000 */ lw $t9, ($v0) -/* 0C6EF0 800C62F0 27DE0004 */ addiu $fp, $fp, 4 -/* 0C6EF4 800C62F4 272E0001 */ addiu $t6, $t9, 1 -/* 0C6EF8 800C62F8 147FFFF8 */ bne $v1, $ra, .L800C62DC -/* 0C6EFC 800C62FC AC4E0000 */ sw $t6, ($v0) -/* 0C6F00 800C6300 13E00023 */ beqz $ra, .L800C6390 -/* 0C6F04 800C6304 8FAF05FC */ lw $t7, 0x5fc($sp) -.L800C6308: -/* 0C6F08 800C6308 8FCF0000 */ lw $t7, ($fp) -/* 0C6F0C 800C630C 27FFFFFC */ addiu $ra, $ra, -4 -/* 0C6F10 800C6310 000FC080 */ sll $t8, $t7, 2 -/* 0C6F14 800C6314 02381021 */ addu $v0, $s1, $t8 -/* 0C6F18 800C6318 8C590000 */ lw $t9, ($v0) -/* 0C6F1C 800C631C 27DE0010 */ addiu $fp, $fp, 0x10 -/* 0C6F20 800C6320 272E0001 */ addiu $t6, $t9, 1 -/* 0C6F24 800C6324 AC4E0000 */ sw $t6, ($v0) -/* 0C6F28 800C6328 8FCFFFF4 */ lw $t7, -0xc($fp) -/* 0C6F2C 800C632C 00000000 */ nop -/* 0C6F30 800C6330 000FC080 */ sll $t8, $t7, 2 -/* 0C6F34 800C6334 02381021 */ addu $v0, $s1, $t8 -/* 0C6F38 800C6338 8C590000 */ lw $t9, ($v0) -/* 0C6F3C 800C633C 00000000 */ nop -/* 0C6F40 800C6340 272E0001 */ addiu $t6, $t9, 1 -/* 0C6F44 800C6344 AC4E0000 */ sw $t6, ($v0) -/* 0C6F48 800C6348 8FCFFFF8 */ lw $t7, -8($fp) -/* 0C6F4C 800C634C 00000000 */ nop -/* 0C6F50 800C6350 000FC080 */ sll $t8, $t7, 2 -/* 0C6F54 800C6354 02381021 */ addu $v0, $s1, $t8 -/* 0C6F58 800C6358 8C590000 */ lw $t9, ($v0) -/* 0C6F5C 800C635C 00000000 */ nop -/* 0C6F60 800C6360 272E0001 */ addiu $t6, $t9, 1 -/* 0C6F64 800C6364 AC4E0000 */ sw $t6, ($v0) -/* 0C6F68 800C6368 8FCFFFFC */ lw $t7, -4($fp) -/* 0C6F6C 800C636C 00000000 */ nop -/* 0C6F70 800C6370 000FC080 */ sll $t8, $t7, 2 -/* 0C6F74 800C6374 02381021 */ addu $v0, $s1, $t8 -/* 0C6F78 800C6378 8C590000 */ lw $t9, ($v0) -/* 0C6F7C 800C637C 00000000 */ nop -/* 0C6F80 800C6380 272E0001 */ addiu $t6, $t9, 1 -/* 0C6F84 800C6384 17E0FFE0 */ bnez $ra, .L800C6308 -/* 0C6F88 800C6388 AC4E0000 */ sw $t6, ($v0) -/* 0C6F8C 800C638C 8FAF05FC */ lw $t7, 0x5fc($sp) -.L800C6390: -/* 0C6F90 800C6390 8FB805B0 */ lw $t8, 0x5b0($sp) -/* 0C6F94 800C6394 8FA50610 */ lw $a1, 0x610($sp) -/* 0C6F98 800C6398 15F80007 */ bne $t7, $t8, .L800C63B8 -/* 0C6F9C 800C639C 24070001 */ li $a3, 1 -/* 0C6FA0 800C63A0 8FA50610 */ lw $a1, 0x610($sp) -/* 0C6FA4 800C63A4 8FB5060C */ lw $s5, 0x60c($sp) -/* 0C6FA8 800C63A8 00000000 */ nop -/* 0C6FAC 800C63AC AEA00000 */ sw $zero, ($s5) -/* 0C6FB0 800C63B0 10000136 */ b .L800C688C -/* 0C6FB4 800C63B4 ACA00000 */ sw $zero, ($a1) -.L800C63B8: -/* 0C6FB8 800C63B8 8CB00000 */ lw $s0, ($a1) -/* 0C6FBC 800C63BC 27A405B4 */ addiu $a0, $sp, 0x5b4 -/* 0C6FC0 800C63C0 24020011 */ li $v0, 17 -.L800C63C4: -/* 0C6FC4 800C63C4 8C990000 */ lw $t9, ($a0) -/* 0C6FC8 800C63C8 00000000 */ nop -/* 0C6FCC 800C63CC 17200005 */ bnez $t9, .L800C63E4 -/* 0C6FD0 800C63D0 0207082B */ sltu $at, $s0, $a3 -/* 0C6FD4 800C63D4 24E70001 */ addiu $a3, $a3, 1 -/* 0C6FD8 800C63D8 14E2FFFA */ bne $a3, $v0, .L800C63C4 -/* 0C6FDC 800C63DC 24840004 */ addiu $a0, $a0, 4 -/* 0C6FE0 800C63E0 0207082B */ sltu $at, $s0, $a3 -.L800C63E4: -/* 0C6FE4 800C63E4 10200002 */ beqz $at, .L800C63F0 -/* 0C6FE8 800C63E8 00E0A025 */ move $s4, $a3 -/* 0C6FEC 800C63EC 00E08025 */ move $s0, $a3 -.L800C63F0: -/* 0C6FF0 800C63F0 241F0010 */ li $ra, 16 -/* 0C6FF4 800C63F4 27A305F0 */ addiu $v1, $sp, 0x5f0 -.L800C63F8: -/* 0C6FF8 800C63F8 8C6E0000 */ lw $t6, ($v1) -/* 0C6FFC 800C63FC 00000000 */ nop -/* 0C7000 800C6400 15C00005 */ bnez $t6, .L800C6418 -/* 0C7004 800C6404 03F0082B */ sltu $at, $ra, $s0 -/* 0C7008 800C6408 27FFFFFF */ addiu $ra, $ra, -1 -/* 0C700C 800C640C 17E0FFFA */ bnez $ra, .L800C63F8 -/* 0C7010 800C6410 2463FFFC */ addiu $v1, $v1, -4 -/* 0C7014 800C6414 03F0082B */ sltu $at, $ra, $s0 -.L800C6418: -/* 0C7018 800C6418 10200002 */ beqz $at, .L800C6424 -/* 0C701C 800C641C AFBF05A8 */ sw $ra, 0x5a8($sp) -/* 0C7020 800C6420 03E08025 */ move $s0, $ra -.L800C6424: -/* 0C7024 800C6424 240F0001 */ li $t7, 1 -/* 0C7028 800C6428 00FF082B */ sltu $at, $a3, $ra -/* 0C702C 800C642C ACB00000 */ sw $s0, ($a1) -/* 0C7030 800C6430 1020000B */ beqz $at, .L800C6460 -/* 0C7034 800C6434 00EF1004 */ sllv $v0, $t7, $a3 -/* 0C7038 800C6438 001FC080 */ sll $t8, $ra, 2 -/* 0C703C 800C643C 27B905B0 */ addiu $t9, $sp, 0x5b0 -/* 0C7040 800C6440 03192821 */ addu $a1, $t8, $t9 -.L800C6444: -/* 0C7044 800C6444 8C8E0000 */ lw $t6, ($a0) -/* 0C7048 800C6448 24840004 */ addiu $a0, $a0, 4 -/* 0C704C 800C644C 004E1023 */ subu $v0, $v0, $t6 -/* 0C7050 800C6450 00027840 */ sll $t7, $v0, 1 -/* 0C7054 800C6454 0085082B */ sltu $at, $a0, $a1 -/* 0C7058 800C6458 1420FFFA */ bnez $at, .L800C6444 -/* 0C705C 800C645C 01E01025 */ move $v0, $t7 -.L800C6460: -/* 0C7060 800C6460 8C640000 */ lw $a0, ($v1) -/* 0C7064 800C6464 27FFFFFF */ addiu $ra, $ra, -1 -/* 0C7068 800C6468 00441023 */ subu $v0, $v0, $a0 -/* 0C706C 800C646C 0082C021 */ addu $t8, $a0, $v0 -/* 0C7070 800C6470 AC780000 */ sw $t8, ($v1) -/* 0C7074 800C6474 AFA00080 */ sw $zero, 0x80($sp) -/* 0C7078 800C6478 00003825 */ move $a3, $zero -/* 0C707C 800C647C 27BE05B4 */ addiu $fp, $sp, 0x5b4 -/* 0C7080 800C6480 27A60084 */ addiu $a2, $sp, 0x84 -/* 0C7084 800C6484 13E00023 */ beqz $ra, .L800C6514 -/* 0C7088 800C6488 2463FFFC */ addiu $v1, $v1, -4 -/* 0C708C 800C648C 33E50003 */ andi $a1, $ra, 3 -/* 0C7090 800C6490 00052823 */ negu $a1, $a1 -/* 0C7094 800C6494 10A0000D */ beqz $a1, .L800C64CC -/* 0C7098 800C6498 00BF1021 */ addu $v0, $a1, $ra -/* 0C709C 800C649C 0002C880 */ sll $t9, $v0, 2 -/* 0C70A0 800C64A0 27AE05B0 */ addiu $t6, $sp, 0x5b0 -/* 0C70A4 800C64A4 032E2021 */ addu $a0, $t9, $t6 -.L800C64A8: -/* 0C70A8 800C64A8 8FCF0000 */ lw $t7, ($fp) -/* 0C70AC 800C64AC 2463FFFC */ addiu $v1, $v1, -4 -/* 0C70B0 800C64B0 00EF3821 */ addu $a3, $a3, $t7 -/* 0C70B4 800C64B4 ACC70000 */ sw $a3, ($a2) -/* 0C70B8 800C64B8 24C60004 */ addiu $a2, $a2, 4 -/* 0C70BC 800C64BC 1483FFFA */ bne $a0, $v1, .L800C64A8 -/* 0C70C0 800C64C0 27DE0004 */ addiu $fp, $fp, 4 -/* 0C70C4 800C64C4 27B805B0 */ addiu $t8, $sp, 0x5b0 -/* 0C70C8 800C64C8 10780012 */ beq $v1, $t8, .L800C6514 -.L800C64CC: -/* 0C70CC 800C64CC 27A205B0 */ addiu $v0, $sp, 0x5b0 -.L800C64D0: -/* 0C70D0 800C64D0 8FD90000 */ lw $t9, ($fp) -/* 0C70D4 800C64D4 2463FFF0 */ addiu $v1, $v1, -0x10 -/* 0C70D8 800C64D8 00F93821 */ addu $a3, $a3, $t9 -/* 0C70DC 800C64DC ACC70000 */ sw $a3, ($a2) -/* 0C70E0 800C64E0 8FCE0004 */ lw $t6, 4($fp) -/* 0C70E4 800C64E4 24C60010 */ addiu $a2, $a2, 0x10 -/* 0C70E8 800C64E8 00EE3821 */ addu $a3, $a3, $t6 -/* 0C70EC 800C64EC ACC7FFF4 */ sw $a3, -0xc($a2) -/* 0C70F0 800C64F0 8FCF0008 */ lw $t7, 8($fp) -/* 0C70F4 800C64F4 27DE0010 */ addiu $fp, $fp, 0x10 -/* 0C70F8 800C64F8 00EF3821 */ addu $a3, $a3, $t7 -/* 0C70FC 800C64FC ACC7FFF8 */ sw $a3, -8($a2) -/* 0C7100 800C6500 8FD8FFFC */ lw $t8, -4($fp) -/* 0C7104 800C6504 00000000 */ nop -/* 0C7108 800C6508 00F83821 */ addu $a3, $a3, $t8 -/* 0C710C 800C650C 1462FFF0 */ bne $v1, $v0, .L800C64D0 -/* 0C7110 800C6510 ACC7FFFC */ sw $a3, -4($a2) -.L800C6514: -/* 0C7114 800C6514 0240F025 */ move $fp, $s2 -/* 0C7118 800C6518 0000F825 */ move $ra, $zero -/* 0C711C 800C651C 27A5007C */ addiu $a1, $sp, 0x7c -/* 0C7120 800C6520 27A400C4 */ addiu $a0, $sp, 0xc4 -.L800C6524: -/* 0C7124 800C6524 8FC70000 */ lw $a3, ($fp) -/* 0C7128 800C6528 27DE0004 */ addiu $fp, $fp, 4 -/* 0C712C 800C652C 10E00009 */ beqz $a3, .L800C6554 -/* 0C7130 800C6530 0007C880 */ sll $t9, $a3, 2 -/* 0C7134 800C6534 00B91021 */ addu $v0, $a1, $t9 -/* 0C7138 800C6538 8C430000 */ lw $v1, ($v0) -/* 0C713C 800C653C 00000000 */ nop -/* 0C7140 800C6540 00037080 */ sll $t6, $v1, 2 -/* 0C7144 800C6544 008E7821 */ addu $t7, $a0, $t6 -/* 0C7148 800C6548 ADFF0000 */ sw $ra, ($t7) -/* 0C714C 800C654C 24780001 */ addiu $t8, $v1, 1 -/* 0C7150 800C6550 AC580000 */ sw $t8, ($v0) -.L800C6554: -/* 0C7154 800C6554 8FB905FC */ lw $t9, 0x5fc($sp) -/* 0C7158 800C6558 27FF0001 */ addiu $ra, $ra, 1 -/* 0C715C 800C655C 03F9082B */ sltu $at, $ra, $t9 -/* 0C7160 800C6560 1420FFF0 */ bnez $at, .L800C6524 -/* 0C7164 800C6564 00000000 */ nop -/* 0C7168 800C6568 8FAE05A8 */ lw $t6, 0x5a8($sp) -/* 0C716C 800C656C 0000F825 */ move $ra, $zero -/* 0C7170 800C6570 01D4082A */ slt $at, $t6, $s4 -/* 0C7174 800C6574 AFA0007C */ sw $zero, 0x7c($sp) -/* 0C7178 800C6578 0080F025 */ move $fp, $a0 -/* 0C717C 800C657C 240CFFFF */ li $t4, -1 -/* 0C7180 800C6580 00105023 */ negu $t2, $s0 -/* 0C7184 800C6584 AFA00544 */ sw $zero, 0x544($sp) -/* 0C7188 800C6588 00003025 */ move $a2, $zero -/* 0C718C 800C658C 142000BF */ bnez $at, .L800C688C -/* 0C7190 800C6590 00004025 */ move $t0, $zero -/* 0C7194 800C6594 00147880 */ sll $t7, $s4, 2 -/* 0C7198 800C6598 27B805B0 */ addiu $t8, $sp, 0x5b0 -/* 0C719C 800C659C 3C17800E */ lui $s7, %hi(D_800E3760) # $s7, 0x800e -/* 0C71A0 800C65A0 3C128013 */ lui $s2, %hi(D_8012AAD8) # $s2, 0x8013 -/* 0C71A4 800C65A4 8FB5060C */ lw $s5, 0x60c($sp) -/* 0C71A8 800C65A8 2652AAD8 */ addiu $s2, %lo(D_8012AAD8) # addiu $s2, $s2, -0x5528 -/* 0C71AC 800C65AC 26F73760 */ addiu $s7, %lo(D_800E3760) # addiu $s7, $s7, 0x3760 -/* 0C71B0 800C65B0 01F81021 */ addu $v0, $t7, $t8 -/* 0C71B4 800C65B4 27B30584 */ addiu $s3, $sp, 0x584 -.L800C65B8: -/* 0C71B8 800C65B8 8C560000 */ lw $s6, ($v0) -/* 0C71BC 800C65BC 000C6880 */ sll $t5, $t4, 2 -/* 0C71C0 800C65C0 02C02825 */ move $a1, $s6 -/* 0C71C4 800C65C4 12C000AB */ beqz $s6, .L800C6874 -/* 0C71C8 800C65C8 26D6FFFF */ addiu $s6, $s6, -1 -/* 0C71CC 800C65CC 8FAE05FC */ lw $t6, 0x5fc($sp) -/* 0C71D0 800C65D0 27B9007C */ addiu $t9, $sp, 0x7c -/* 0C71D4 800C65D4 000E7880 */ sll $t7, $t6, 2 -/* 0C71D8 800C65D8 01B95821 */ addu $t3, $t5, $t9 -/* 0C71DC 800C65DC 27B800C4 */ addiu $t8, $sp, 0xc4 -/* 0C71E0 800C65E0 01F8C821 */ addu $t9, $t7, $t8 -/* 0C71E4 800C65E4 240F0001 */ li $t7, 1 -/* 0C71E8 800C65E8 268E001F */ addiu $t6, $s4, 0x1f -/* 0C71EC 800C65EC 01CFC004 */ sllv $t8, $t7, $t6 -/* 0C71F0 800C65F0 AFB80040 */ sw $t8, 0x40($sp) -/* 0C71F4 800C65F4 AFB90044 */ sw $t9, 0x44($sp) -/* 0C71F8 800C65F8 AFA2005C */ sw $v0, 0x5c($sp) -.L800C65FC: -/* 0C71FC 800C65FC 01501821 */ addu $v1, $t2, $s0 -/* 0C7200 800C6600 0074082A */ slt $at, $v1, $s4 -/* 0C7204 800C6604 10200047 */ beqz $at, .L800C6724 -/* 0C7208 800C6608 26D10001 */ addiu $s1, $s6, 1 -/* 0C720C 800C660C 27B90544 */ addiu $t9, $sp, 0x544 -/* 0C7210 800C6610 01B94821 */ addu $t1, $t5, $t9 -/* 0C7214 800C6614 8FAF05A8 */ lw $t7, 0x5a8($sp) -.L800C6618: -/* 0C7218 800C6618 258C0001 */ addiu $t4, $t4, 1 -/* 0C721C 800C661C 01E34023 */ subu $t0, $t7, $v1 -/* 0C7220 800C6620 0208082B */ sltu $at, $s0, $t0 -/* 0C7224 800C6624 25AD0004 */ addiu $t5, $t5, 4 -/* 0C7228 800C6628 25290004 */ addiu $t1, $t1, 4 -/* 0C722C 800C662C 256B0004 */ addiu $t3, $t3, 4 -/* 0C7230 800C6630 10200002 */ beqz $at, .L800C663C -/* 0C7234 800C6634 00605025 */ move $t2, $v1 -/* 0C7238 800C6638 02004025 */ move $t0, $s0 -.L800C663C: -/* 0C723C 800C663C 028A1023 */ subu $v0, $s4, $t2 -/* 0C7240 800C6640 240E0001 */ li $t6, 1 -/* 0C7244 800C6644 004E2004 */ sllv $a0, $t6, $v0 -/* 0C7248 800C6648 0224082B */ sltu $at, $s1, $a0 -/* 0C724C 800C664C 10200012 */ beqz $at, .L800C6698 -/* 0C7250 800C6650 00403825 */ move $a3, $v0 -/* 0C7254 800C6654 24470001 */ addiu $a3, $v0, 1 -/* 0C7258 800C6658 00961823 */ subu $v1, $a0, $s6 -/* 0C725C 800C665C 0014C080 */ sll $t8, $s4, 2 -/* 0C7260 800C6660 27B905B0 */ addiu $t9, $sp, 0x5b0 -/* 0C7264 800C6664 00E8082B */ sltu $at, $a3, $t0 -/* 0C7268 800C6668 2463FFFF */ addiu $v1, $v1, -1 -/* 0C726C 800C666C 1020000A */ beqz $at, .L800C6698 -/* 0C7270 800C6670 03193021 */ addu $a2, $t8, $t9 -.L800C6674: -/* 0C7274 800C6674 8CC40004 */ lw $a0, 4($a2) -/* 0C7278 800C6678 00031040 */ sll $v0, $v1, 1 -/* 0C727C 800C667C 0082082B */ sltu $at, $a0, $v0 -/* 0C7280 800C6680 10200005 */ beqz $at, .L800C6698 -/* 0C7284 800C6684 24C60004 */ addiu $a2, $a2, 4 -/* 0C7288 800C6688 24E70001 */ addiu $a3, $a3, 1 -/* 0C728C 800C668C 00E8082B */ sltu $at, $a3, $t0 -/* 0C7290 800C6690 1420FFF8 */ bnez $at, .L800C6674 -/* 0C7294 800C6694 00441823 */ subu $v1, $v0, $a0 -.L800C6698: -/* 0C7298 800C6698 8E430000 */ lw $v1, ($s2) -/* 0C729C 800C669C 240F0001 */ li $t7, 1 -/* 0C72A0 800C66A0 8EF80000 */ lw $t8, ($s7) -/* 0C72A4 800C66A4 00EF4004 */ sllv $t0, $t7, $a3 -/* 0C72A8 800C66A8 000370C0 */ sll $t6, $v1, 3 -/* 0C72AC 800C66AC 0068C821 */ addu $t9, $v1, $t0 -/* 0C72B0 800C66B0 272F0001 */ addiu $t7, $t9, 1 -/* 0C72B4 800C66B4 01D83021 */ addu $a2, $t6, $t8 -/* 0C72B8 800C66B8 AE4F0000 */ sw $t7, ($s2) -/* 0C72BC 800C66BC 24C40008 */ addiu $a0, $a2, 8 -/* 0C72C0 800C66C0 AEA40000 */ sw $a0, ($s5) -/* 0C72C4 800C66C4 ACC00004 */ sw $zero, 4($a2) -/* 0C72C8 800C66C8 24D50004 */ addiu $s5, $a2, 4 -/* 0C72CC 800C66CC 00803025 */ move $a2, $a0 -/* 0C72D0 800C66D0 11800010 */ beqz $t4, .L800C6714 -/* 0C72D4 800C66D4 AD240000 */ sw $a0, ($t1) -/* 0C72D8 800C66D8 AD7F0000 */ sw $ra, ($t3) -/* 0C72DC 800C66DC 24EE0010 */ addiu $t6, $a3, 0x10 -/* 0C72E0 800C66E0 A3AE0584 */ sb $t6, 0x584($sp) -/* 0C72E4 800C66E4 A3B00585 */ sb $s0, 0x585($sp) -/* 0C72E8 800C66E8 AFA40588 */ sw $a0, 0x588($sp) -/* 0C72EC 800C66EC 0150C823 */ subu $t9, $t2, $s0 -/* 0C72F0 800C66F0 8D38FFFC */ lw $t8, -4($t1) -/* 0C72F4 800C66F4 033F7806 */ srlv $t7, $ra, $t9 -/* 0C72F8 800C66F8 8E610000 */ lw $at, ($s3) -/* 0C72FC 800C66FC 000F70C0 */ sll $t6, $t7, 3 -/* 0C7300 800C6700 030EC821 */ addu $t9, $t8, $t6 -/* 0C7304 800C6704 AF210000 */ sw $at, ($t9) -/* 0C7308 800C6708 8E6E0004 */ lw $t6, 4($s3) -/* 0C730C 800C670C 00000000 */ nop -/* 0C7310 800C6710 AF2E0004 */ sw $t6, 4($t9) -.L800C6714: -/* 0C7314 800C6714 01501821 */ addu $v1, $t2, $s0 -/* 0C7318 800C6718 0074082A */ slt $at, $v1, $s4 -/* 0C731C 800C671C 1420FFBE */ bnez $at, .L800C6618 -/* 0C7320 800C6720 8FAF05A8 */ lw $t7, 0x5a8($sp) -.L800C6724: -/* 0C7324 800C6724 8FAF0044 */ lw $t7, 0x44($sp) -/* 0C7328 800C6728 24180001 */ li $t8, 1 -/* 0C732C 800C672C 028A1823 */ subu $v1, $s4, $t2 -/* 0C7330 800C6730 01582804 */ sllv $a1, $t8, $t2 -/* 0C7334 800C6734 03CF082B */ sltu $at, $fp, $t7 -/* 0C7338 800C6738 A3A30585 */ sb $v1, 0x585($sp) -/* 0C733C 800C673C 14200004 */ bnez $at, .L800C6750 -/* 0C7340 800C6740 24A5FFFF */ addiu $a1, $a1, -1 -/* 0C7344 800C6744 24190063 */ li $t9, 99 -/* 0C7348 800C6748 10000021 */ b .L800C67D0 -/* 0C734C 800C674C A3B90584 */ sb $t9, 0x584($sp) -.L800C6750: -/* 0C7350 800C6750 8FC20000 */ lw $v0, ($fp) -/* 0C7354 800C6754 8FAE0600 */ lw $t6, 0x600($sp) -/* 0C7358 800C6758 8FA40600 */ lw $a0, 0x600($sp) -/* 0C735C 800C675C 004E082B */ sltu $at, $v0, $t6 -/* 0C7360 800C6760 1020000B */ beqz $at, .L800C6790 -/* 0C7364 800C6764 2C410100 */ sltiu $at, $v0, 0x100 -/* 0C7368 800C6768 10200004 */ beqz $at, .L800C677C -/* 0C736C 800C676C 240F000F */ li $t7, 15 -/* 0C7370 800C6770 24180010 */ li $t8, 16 -/* 0C7374 800C6774 10000002 */ b .L800C6780 -/* 0C7378 800C6778 A3B80584 */ sb $t8, 0x584($sp) -.L800C677C: -/* 0C737C 800C677C A3AF0584 */ sb $t7, 0x584($sp) -.L800C6780: -/* 0C7380 800C6780 8FD90000 */ lw $t9, ($fp) -/* 0C7384 800C6784 27DE0004 */ addiu $fp, $fp, 4 -/* 0C7388 800C6788 10000011 */ b .L800C67D0 -/* 0C738C 800C678C A7B90588 */ sh $t9, 0x588($sp) -.L800C6790: -/* 0C7390 800C6790 8FB80608 */ lw $t8, 0x608($sp) -/* 0C7394 800C6794 00447023 */ subu $t6, $v0, $a0 -/* 0C7398 800C6798 01D87821 */ addu $t7, $t6, $t8 -/* 0C739C 800C679C 91F90000 */ lbu $t9, ($t7) -/* 0C73A0 800C67A0 8FAE0604 */ lw $t6, 0x604($sp) -/* 0C73A4 800C67A4 A3B90584 */ sb $t9, 0x584($sp) -/* 0C73A8 800C67A8 8FD80000 */ lw $t8, ($fp) -/* 0C73AC 800C67AC 27DE0004 */ addiu $fp, $fp, 4 -/* 0C73B0 800C67B0 00187840 */ sll $t7, $t8, 1 -/* 0C73B4 800C67B4 0004C040 */ sll $t8, $a0, 1 -/* 0C73B8 800C67B8 01CFC821 */ addu $t9, $t6, $t7 -/* 0C73BC 800C67BC 00187023 */ negu $t6, $t8 -/* 0C73C0 800C67C0 032E7821 */ addu $t7, $t9, $t6 -/* 0C73C4 800C67C4 95F80000 */ lhu $t8, ($t7) -/* 0C73C8 800C67C8 00000000 */ nop -/* 0C73CC 800C67CC A7B80588 */ sh $t8, 0x588($sp) -.L800C67D0: -/* 0C73D0 800C67D0 015F3806 */ srlv $a3, $ra, $t2 -/* 0C73D4 800C67D4 00E8082B */ sltu $at, $a3, $t0 -/* 0C73D8 800C67D8 1020000B */ beqz $at, .L800C6808 -/* 0C73DC 800C67DC 24190001 */ li $t9, 1 -/* 0C73E0 800C67E0 00791004 */ sllv $v0, $t9, $v1 -.L800C67E4: -/* 0C73E4 800C67E4 8E610000 */ lw $at, ($s3) -/* 0C73E8 800C67E8 000770C0 */ sll $t6, $a3, 3 -/* 0C73EC 800C67EC 00CE7821 */ addu $t7, $a2, $t6 -/* 0C73F0 800C67F0 ADE10000 */ sw $at, ($t7) -/* 0C73F4 800C67F4 8E790004 */ lw $t9, 4($s3) -/* 0C73F8 800C67F8 00E23821 */ addu $a3, $a3, $v0 -/* 0C73FC 800C67FC 00E8082B */ sltu $at, $a3, $t0 -/* 0C7400 800C6800 1420FFF8 */ bnez $at, .L800C67E4 -/* 0C7404 800C6804 ADF90004 */ sw $t9, 4($t7) -.L800C6808: -/* 0C7408 800C6808 8FA70040 */ lw $a3, 0x40($sp) -/* 0C740C 800C680C 8D620000 */ lw $v0, ($t3) -/* 0C7410 800C6810 03E77024 */ and $t6, $ra, $a3 -/* 0C7414 800C6814 11C00005 */ beqz $t6, .L800C682C -.L800C6818: -/* 0C7418 800C6818 0007C042 */ srl $t8, $a3, 1 -/* 0C741C 800C681C 03E7F826 */ xor $ra, $ra, $a3 -/* 0C7420 800C6820 03F87824 */ and $t7, $ra, $t8 -/* 0C7424 800C6824 15E0FFFC */ bnez $t7, .L800C6818 -/* 0C7428 800C6828 03003825 */ move $a3, $t8 -.L800C682C: -/* 0C742C 800C682C 03E7F826 */ xor $ra, $ra, $a3 -/* 0C7430 800C6830 03E5C824 */ and $t9, $ra, $a1 -/* 0C7434 800C6834 1322000B */ beq $t9, $v0, .L800C6864 -/* 0C7438 800C6838 02C02825 */ move $a1, $s6 -.L800C683C: -/* 0C743C 800C683C 01505023 */ subu $t2, $t2, $s0 -/* 0C7440 800C6840 240E0001 */ li $t6, 1 -/* 0C7444 800C6844 014EC004 */ sllv $t8, $t6, $t2 -/* 0C7448 800C6848 8D6EFFFC */ lw $t6, -4($t3) -/* 0C744C 800C684C 270FFFFF */ addiu $t7, $t8, -1 -/* 0C7450 800C6850 03EFC824 */ and $t9, $ra, $t7 -/* 0C7454 800C6854 258CFFFF */ addiu $t4, $t4, -1 -/* 0C7458 800C6858 25ADFFFC */ addiu $t5, $t5, -4 -/* 0C745C 800C685C 172EFFF7 */ bne $t9, $t6, .L800C683C -/* 0C7460 800C6860 256BFFFC */ addiu $t3, $t3, -4 -.L800C6864: -/* 0C7464 800C6864 16C0FF65 */ bnez $s6, .L800C65FC -/* 0C7468 800C6868 26D6FFFF */ addiu $s6, $s6, -1 -/* 0C746C 800C686C 8FA2005C */ lw $v0, 0x5c($sp) -/* 0C7470 800C6870 00000000 */ nop -.L800C6874: -/* 0C7474 800C6874 8FB805A8 */ lw $t8, 0x5a8($sp) -/* 0C7478 800C6878 26940001 */ addiu $s4, $s4, 1 -/* 0C747C 800C687C 0314082A */ slt $at, $t8, $s4 -/* 0C7480 800C6880 1020FF4D */ beqz $at, .L800C65B8 -/* 0C7484 800C6884 24420004 */ addiu $v0, $v0, 4 -/* 0C7488 800C6888 AFB5060C */ sw $s5, 0x60c($sp) -.L800C688C: -/* 0C748C 800C688C 8FBF003C */ lw $ra, 0x3c($sp) -/* 0C7490 800C6890 8FB00018 */ lw $s0, 0x18($sp) -/* 0C7494 800C6894 8FB1001C */ lw $s1, 0x1c($sp) -/* 0C7498 800C6898 8FB20020 */ lw $s2, 0x20($sp) -/* 0C749C 800C689C 8FB30024 */ lw $s3, 0x24($sp) -/* 0C74A0 800C68A0 8FB40028 */ lw $s4, 0x28($sp) -/* 0C74A4 800C68A4 8FB5002C */ lw $s5, 0x2c($sp) -/* 0C74A8 800C68A8 8FB60030 */ lw $s6, 0x30($sp) -/* 0C74AC 800C68AC 8FB70034 */ lw $s7, 0x34($sp) -/* 0C74B0 800C68B0 8FBE0038 */ lw $fp, 0x38($sp) -/* 0C74B4 800C68B4 03E00008 */ jr $ra -/* 0C74B8 800C68B8 27BD05F8 */ addiu $sp, $sp, 0x5f8 - -/* 0C74BC 800C68BC 00000000 */ nop -glabel func_800C68C0 -/* 0C74C0 800C68C0 3C0B8013 */ lui $t3, %hi(D_8012AAD4) # $t3, 0x8013 -/* 0C74C4 800C68C4 8D6BAAD4 */ lw $t3, %lo(D_8012AAD4)($t3) -/* 0C74C8 800C68C8 3C018013 */ lui $at, %hi(D_8012AAD8) # $at, 0x8013 -/* 0C74CC 800C68CC AC20AAD8 */ sw $zero, %lo(D_8012AAD8)($at) -/* 0C74D0 800C68D0 24080001 */ li $t0, 1 -/* 0C74D4 800C68D4 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0C74D8 800C68D8 3C0C800E */ lui $t4, %hi(D_800E3768) # $t4, 0x800e -/* 0C74DC 800C68DC 3C0A8013 */ lui $t2, %hi(D_8012AAD0) # $t2, 0x8013 -/* 0C74E0 800C68E0 0168082B */ sltu $at, $t3, $t0 -/* 0C74E4 800C68E4 AFBF001C */ sw $ra, 0x1c($sp) -/* 0C74E8 800C68E8 AFB00018 */ sw $s0, 0x18($sp) -/* 0C74EC 800C68EC 8D8C3768 */ lw $t4, %lo(D_800E3768)($t4) -/* 0C74F0 800C68F0 10200008 */ beqz $at, .L800C6914 -/* 0C74F4 800C68F4 8D4AAAD0 */ lw $t2, %lo(D_8012AAD0)($t2) -.L800C68F8: -/* 0C74F8 800C68F8 91820000 */ lbu $v0, ($t4) -/* 0C74FC 800C68FC 258C0001 */ addiu $t4, $t4, 1 -/* 0C7500 800C6900 01621004 */ sllv $v0, $v0, $t3 -/* 0C7504 800C6904 256B0008 */ addiu $t3, $t3, 8 -/* 0C7508 800C6908 0168082A */ slt $at, $t3, $t0 -/* 0C750C 800C690C 1420FFFA */ bnez $at, .L800C68F8 -/* 0C7510 800C6910 01425025 */ or $t2, $t2, $v0 -.L800C6914: -/* 0C7514 800C6914 31500001 */ andi $s0, $t2, 1 -/* 0C7518 800C6918 010A5006 */ srlv $t2, $t2, $t0 -/* 0C751C 800C691C 01685822 */ sub $t3, $t3, $t0 -/* 0C7520 800C6920 24080002 */ li $t0, 2 -/* 0C7524 800C6924 0168082B */ sltu $at, $t3, $t0 -/* 0C7528 800C6928 10200008 */ beqz $at, .L800C694C -/* 0C752C 800C692C 00000000 */ nop -.L800C6930: -/* 0C7530 800C6930 91820000 */ lbu $v0, ($t4) -/* 0C7534 800C6934 258C0001 */ addiu $t4, $t4, 1 -/* 0C7538 800C6938 01621004 */ sllv $v0, $v0, $t3 -/* 0C753C 800C693C 256B0008 */ addiu $t3, $t3, 8 -/* 0C7540 800C6940 0168082A */ slt $at, $t3, $t0 -/* 0C7544 800C6944 1420FFFA */ bnez $at, .L800C6930 -/* 0C7548 800C6948 01425025 */ or $t2, $t2, $v0 -.L800C694C: -/* 0C754C 800C694C 3C01800E */ lui $at, %hi(D_800E3768) # $at, 0x800e -/* 0C7550 800C6950 31490003 */ andi $t1, $t2, 3 -/* 0C7554 800C6954 AC2C3768 */ sw $t4, %lo(D_800E3768)($at) -/* 0C7558 800C6958 010A5006 */ srlv $t2, $t2, $t0 -/* 0C755C 800C695C 3C018013 */ lui $at, %hi(D_8012AAD0) # $at, 0x8013 -/* 0C7560 800C6960 AC2AAAD0 */ sw $t2, %lo(D_8012AAD0)($at) -/* 0C7564 800C6964 01685822 */ sub $t3, $t3, $t0 -/* 0C7568 800C6968 3C018013 */ lui $at, %hi(D_8012AAD4) # $at, 0x8013 -/* 0C756C 800C696C AC2BAAD4 */ sw $t3, %lo(D_8012AAD4)($at) -/* 0C7570 800C6970 24010002 */ li $at, 2 -/* 0C7574 800C6974 1121000B */ beq $t1, $at, .L800C69A4 -/* 0C7578 800C6978 24010001 */ li $at, 1 -/* 0C757C 800C697C 11210005 */ beq $t1, $at, .L800C6994 -/* 0C7580 800C6980 00000000 */ nop -/* 0C7584 800C6984 0C031BCD */ jal func_800C6F34 -/* 0C7588 800C6988 00000000 */ nop -/* 0C758C 800C698C 08031A6B */ j func_800C69AC -/* 0C7590 800C6990 00000000 */ nop - -.L800C6994: -/* 0C7594 800C6994 0C031B77 */ jal func_800C6DDC -/* 0C7598 800C6998 00000000 */ nop -/* 0C759C 800C699C 08031A6B */ j func_800C69AC -/* 0C75A0 800C69A0 00000000 */ nop - -.L800C69A4: -/* 0C75A4 800C69A4 0C031A71 */ jal func_800C69C4 -/* 0C75A8 800C69A8 00000000 */ nop -glabel func_800C69AC -/* 0C75AC 800C69AC 8FBF001C */ lw $ra, 0x1c($sp) -/* 0C75B0 800C69B0 24020001 */ li $v0, 1 -/* 0C75B4 800C69B4 00501022 */ sub $v0, $v0, $s0 -/* 0C75B8 800C69B8 8FB00018 */ lw $s0, 0x18($sp) -/* 0C75BC 800C69BC 03E00008 */ jr $ra -/* 0C75C0 800C69C0 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_800C69C4 -/* 0C75C4 800C69C4 27BDFAC0 */ addiu $sp, $sp, -0x540 -/* 0C75C8 800C69C8 AFB30028 */ sw $s3, 0x28($sp) -/* 0C75CC 800C69CC 3C138013 */ lui $s3, %hi(D_8012AAD4) # $s3, 0x8013 -/* 0C75D0 800C69D0 8E73AAD4 */ lw $s3, %lo(D_8012AAD4)($s3) -/* 0C75D4 800C69D4 AFB4002C */ sw $s4, 0x2c($sp) -/* 0C75D8 800C69D8 AFB20024 */ sw $s2, 0x24($sp) -/* 0C75DC 800C69DC 24080005 */ li $t0, 5 -/* 0C75E0 800C69E0 3C14800E */ lui $s4, %hi(D_800E3768) # $s4, 0x800e -/* 0C75E4 800C69E4 3C128013 */ lui $s2, %hi(D_8012AAD0) # $s2, 0x8013 -/* 0C75E8 800C69E8 0268082B */ sltu $at, $s3, $t0 -/* 0C75EC 800C69EC AFBF0030 */ sw $ra, 0x30($sp) -/* 0C75F0 800C69F0 AFB10020 */ sw $s1, 0x20($sp) -/* 0C75F4 800C69F4 AFB0001C */ sw $s0, 0x1c($sp) -/* 0C75F8 800C69F8 8E943768 */ lw $s4, %lo(D_800E3768)($s4) -/* 0C75FC 800C69FC 10200008 */ beqz $at, .L800C6A20 -/* 0C7600 800C6A00 8E52AAD0 */ lw $s2, %lo(D_8012AAD0)($s2) -.L800C6A04: -/* 0C7604 800C6A04 92820000 */ lbu $v0, ($s4) -/* 0C7608 800C6A08 26940001 */ addiu $s4, $s4, 1 -/* 0C760C 800C6A0C 02621004 */ sllv $v0, $v0, $s3 -/* 0C7610 800C6A10 26730008 */ addiu $s3, $s3, 8 -/* 0C7614 800C6A14 0268082A */ slt $at, $s3, $t0 -/* 0C7618 800C6A18 1420FFFA */ bnez $at, .L800C6A04 -/* 0C761C 800C6A1C 02429025 */ or $s2, $s2, $v0 -.L800C6A20: -/* 0C7620 800C6A20 02689822 */ sub $s3, $s3, $t0 -/* 0C7624 800C6A24 3251001F */ andi $s1, $s2, 0x1f -/* 0C7628 800C6A28 0268082B */ sltu $at, $s3, $t0 -/* 0C762C 800C6A2C 26310101 */ addiu $s1, $s1, 0x101 -/* 0C7630 800C6A30 10200008 */ beqz $at, .L800C6A54 -/* 0C7634 800C6A34 01129006 */ srlv $s2, $s2, $t0 -.L800C6A38: -/* 0C7638 800C6A38 92820000 */ lbu $v0, ($s4) -/* 0C763C 800C6A3C 26940001 */ addiu $s4, $s4, 1 -/* 0C7640 800C6A40 02621004 */ sllv $v0, $v0, $s3 -/* 0C7644 800C6A44 26730008 */ addiu $s3, $s3, 8 -/* 0C7648 800C6A48 0268082A */ slt $at, $s3, $t0 -/* 0C764C 800C6A4C 1420FFFA */ bnez $at, .L800C6A38 -/* 0C7650 800C6A50 02429025 */ or $s2, $s2, $v0 -.L800C6A54: -/* 0C7654 800C6A54 3250001F */ andi $s0, $s2, 0x1f -/* 0C7658 800C6A58 01129006 */ srlv $s2, $s2, $t0 -/* 0C765C 800C6A5C 02689822 */ sub $s3, $s3, $t0 -/* 0C7660 800C6A60 24080004 */ li $t0, 4 -/* 0C7664 800C6A64 0268082B */ sltu $at, $s3, $t0 -/* 0C7668 800C6A68 10200008 */ beqz $at, .L800C6A8C -/* 0C766C 800C6A6C 26100001 */ addiu $s0, $s0, 1 -.L800C6A70: -/* 0C7670 800C6A70 92820000 */ lbu $v0, ($s4) -/* 0C7674 800C6A74 26940001 */ addiu $s4, $s4, 1 -/* 0C7678 800C6A78 02621004 */ sllv $v0, $v0, $s3 -/* 0C767C 800C6A7C 26730008 */ addiu $s3, $s3, 8 -/* 0C7680 800C6A80 0268082A */ slt $at, $s3, $t0 -/* 0C7684 800C6A84 1420FFFA */ bnez $at, .L800C6A70 -/* 0C7688 800C6A88 02429025 */ or $s2, $s2, $v0 -.L800C6A8C: -/* 0C768C 800C6A8C 324A000F */ andi $t2, $s2, 0xf -/* 0C7690 800C6A90 254A0004 */ addiu $t2, $t2, 4 -/* 0C7694 800C6A94 3C19800F */ lui $t9, %hi(D_800E93C0) # $t9, 0x800f -/* 0C7698 800C6A98 01129006 */ srlv $s2, $s2, $t0 -/* 0C769C 800C6A9C 02689822 */ sub $s3, $s3, $t0 -/* 0C76A0 800C6AA0 000A4825 */ or $t1, $zero, $t2 -/* 0C76A4 800C6AA4 273993C0 */ addiu $t9, %lo(D_800E93C0) # addiu $t9, $t9, -0x6c40 -/* 0C76A8 800C6AA8 11400019 */ beqz $t2, .L800C6B10 -/* 0C76AC 800C6AAC 23AF0044 */ addi $t7, $sp, 0x44 -.L800C6AB0: -/* 0C76B0 800C6AB0 24080003 */ li $t0, 3 -/* 0C76B4 800C6AB4 0268082B */ sltu $at, $s3, $t0 -/* 0C76B8 800C6AB8 50200009 */ beql $at, $zero, .L800C6AE0 -/* 0C76BC 800C6ABC 93230000 */ lbu $v1, ($t9) -.L800C6AC0: -/* 0C76C0 800C6AC0 92820000 */ lbu $v0, ($s4) -/* 0C76C4 800C6AC4 26940001 */ addiu $s4, $s4, 1 -/* 0C76C8 800C6AC8 02621004 */ sllv $v0, $v0, $s3 -/* 0C76CC 800C6ACC 26730008 */ addiu $s3, $s3, 8 -/* 0C76D0 800C6AD0 0268082A */ slt $at, $s3, $t0 -/* 0C76D4 800C6AD4 1420FFFA */ bnez $at, .L800C6AC0 -/* 0C76D8 800C6AD8 02429025 */ or $s2, $s2, $v0 -/* 0C76DC 800C6ADC 93230000 */ lbu $v1, ($t9) -.L800C6AE0: -/* 0C76E0 800C6AE0 32420007 */ andi $v0, $s2, 7 -/* 0C76E4 800C6AE4 254AFFFF */ addiu $t2, $t2, -1 -/* 0C76E8 800C6AE8 00031880 */ sll $v1, $v1, 2 -/* 0C76EC 800C6AEC 006F1821 */ addu $v1, $v1, $t7 -/* 0C76F0 800C6AF0 AC620000 */ sw $v0, ($v1) -/* 0C76F4 800C6AF4 01129006 */ srlv $s2, $s2, $t0 -/* 0C76F8 800C6AF8 02689822 */ sub $s3, $s3, $t0 -/* 0C76FC 800C6AFC 1540FFEC */ bnez $t2, .L800C6AB0 -/* 0C7700 800C6B00 27390001 */ addiu $t9, $t9, 1 -/* 0C7704 800C6B04 2D210013 */ sltiu $at, $t1, 0x13 -/* 0C7708 800C6B08 5020000A */ beql $at, $zero, .L800C6B34 -/* 0C770C 800C6B0C 240D0007 */ li $t5, 7 -.L800C6B10: -/* 0C7710 800C6B10 93230000 */ lbu $v1, ($t9) -/* 0C7714 800C6B14 25290001 */ addiu $t1, $t1, 1 -/* 0C7718 800C6B18 29210013 */ slti $at, $t1, 0x13 -/* 0C771C 800C6B1C 00031880 */ sll $v1, $v1, 2 -/* 0C7720 800C6B20 006F1821 */ addu $v1, $v1, $t7 -/* 0C7724 800C6B24 AC600000 */ sw $zero, ($v1) -/* 0C7728 800C6B28 1420FFF9 */ bnez $at, .L800C6B10 -/* 0C772C 800C6B2C 27390001 */ addiu $t9, $t9, 1 -/* 0C7730 800C6B30 240D0007 */ li $t5, 7 -.L800C6B34: -/* 0C7734 800C6B34 23A80034 */ addi $t0, $sp, 0x34 -/* 0C7738 800C6B38 23A90038 */ addi $t1, $sp, 0x38 -/* 0C773C 800C6B3C AFAD0038 */ sw $t5, 0x38($sp) -/* 0C7740 800C6B40 23A40044 */ addi $a0, $sp, 0x44 -/* 0C7744 800C6B44 24050013 */ li $a1, 19 -/* 0C7748 800C6B48 24060013 */ li $a2, 19 -/* 0C774C 800C6B4C 24070000 */ li $a3, 0 -/* 0C7750 800C6B50 AFA00010 */ sw $zero, 0x10($sp) -/* 0C7754 800C6B54 AFA80014 */ sw $t0, 0x14($sp) -/* 0C7758 800C6B58 0C03189D */ jal func_800C6274 -/* 0C775C 800C6B5C AFA90018 */ sw $t1, 0x18($sp) -/* 0C7760 800C6B60 23A90038 */ addi $t1, $sp, 0x38 -/* 0C7764 800C6B64 8D2D0000 */ lw $t5, ($t1) -/* 0C7768 800C6B68 3C02800F */ lui $v0, %hi(D_800E948C) # $v0, 0x800f -/* 0C776C 800C6B6C 2442948C */ addiu $v0, %lo(D_800E948C) # addiu $v0, $v0, -0x6b74 -/* 0C7770 800C6B70 000D1840 */ sll $v1, $t5, 1 -/* 0C7774 800C6B74 23A80034 */ addi $t0, $sp, 0x34 -/* 0C7778 800C6B78 00431020 */ add $v0, $v0, $v1 -/* 0C777C 800C6B7C 8D0E0000 */ lw $t6, ($t0) -/* 0C7780 800C6B80 0230C820 */ add $t9, $s1, $s0 -/* 0C7784 800C6B84 84580000 */ lh $t8, ($v0) -/* 0C7788 800C6B88 23AF0044 */ addi $t7, $sp, 0x44 -/* 0C778C 800C6B8C 240A0000 */ li $t2, 0 -glabel func_800C6B90 -/* 0C7790 800C6B90 1320005F */ beqz $t9, .L800C6D10 -/* 0C7794 800C6B94 026D082B */ sltu $at, $s3, $t5 -/* 0C7798 800C6B98 50200009 */ beql $at, $zero, .L800C6BC0 -/* 0C779C 800C6B9C 02581024 */ and $v0, $s2, $t8 -.L800C6BA0: -/* 0C77A0 800C6BA0 92820000 */ lbu $v0, ($s4) -/* 0C77A4 800C6BA4 26940001 */ addiu $s4, $s4, 1 -/* 0C77A8 800C6BA8 02621004 */ sllv $v0, $v0, $s3 -/* 0C77AC 800C6BAC 26730008 */ addiu $s3, $s3, 8 -/* 0C77B0 800C6BB0 026D082A */ slt $at, $s3, $t5 -/* 0C77B4 800C6BB4 1420FFFA */ bnez $at, .L800C6BA0 -/* 0C77B8 800C6BB8 02429025 */ or $s2, $s2, $v0 -/* 0C77BC 800C6BBC 02581024 */ and $v0, $s2, $t8 -.L800C6BC0: -/* 0C77C0 800C6BC0 000210C0 */ sll $v0, $v0, 3 -/* 0C77C4 800C6BC4 01C24821 */ addu $t1, $t6, $v0 -/* 0C77C8 800C6BC8 95280004 */ lhu $t0, 4($t1) -/* 0C77CC 800C6BCC 91220001 */ lbu $v0, 1($t1) -/* 0C77D0 800C6BD0 29010010 */ slti $at, $t0, 0x10 -/* 0C77D4 800C6BD4 00529006 */ srlv $s2, $s2, $v0 -/* 0C77D8 800C6BD8 1420001C */ bnez $at, .L800C6C4C -/* 0C77DC 800C6BDC 02629822 */ sub $s3, $s3, $v0 -/* 0C77E0 800C6BE0 24010010 */ li $at, 16 -/* 0C77E4 800C6BE4 1101001E */ beq $t0, $at, .L800C6C60 -/* 0C77E8 800C6BE8 24010011 */ li $at, 17 -/* 0C77EC 800C6BEC 51010033 */ beql $t0, $at, .L800C6CBC -/* 0C77F0 800C6BF0 24080003 */ li $t0, 3 -/* 0C77F4 800C6BF4 24080007 */ li $t0, 7 -/* 0C77F8 800C6BF8 0268082B */ sltu $at, $s3, $t0 -/* 0C77FC 800C6BFC 50200009 */ beql $at, $zero, .L800C6C24 -/* 0C7800 800C6C00 3249007F */ andi $t1, $s2, 0x7f -.L800C6C04: -/* 0C7804 800C6C04 92820000 */ lbu $v0, ($s4) -/* 0C7808 800C6C08 26940001 */ addiu $s4, $s4, 1 -/* 0C780C 800C6C0C 02621004 */ sllv $v0, $v0, $s3 -/* 0C7810 800C6C10 26730008 */ addiu $s3, $s3, 8 -/* 0C7814 800C6C14 0268082A */ slt $at, $s3, $t0 -/* 0C7818 800C6C18 1420FFFA */ bnez $at, .L800C6C04 -/* 0C781C 800C6C1C 02429025 */ or $s2, $s2, $v0 -/* 0C7820 800C6C20 3249007F */ andi $t1, $s2, 0x7f -.L800C6C24: -/* 0C7824 800C6C24 2529000B */ addiu $t1, $t1, 0xb -/* 0C7828 800C6C28 01129006 */ srlv $s2, $s2, $t0 -/* 0C782C 800C6C2C 02689822 */ sub $s3, $s3, $t0 -/* 0C7830 800C6C30 0329C823 */ subu $t9, $t9, $t1 -.L800C6C34: -/* 0C7834 800C6C34 2529FFFF */ addiu $t1, $t1, -1 -/* 0C7838 800C6C38 ADE00000 */ sw $zero, ($t7) -/* 0C783C 800C6C3C 1520FFFD */ bnez $t1, .L800C6C34 -/* 0C7840 800C6C40 25EF0004 */ addiu $t7, $t7, 4 -/* 0C7844 800C6C44 08031AE4 */ j func_800C6B90 -/* 0C7848 800C6C48 240A0000 */ li $t2, 0 - -.L800C6C4C: -/* 0C784C 800C6C4C ADE80000 */ sw $t0, ($t7) -/* 0C7850 800C6C50 25EF0004 */ addiu $t7, $t7, 4 -/* 0C7854 800C6C54 2739FFFF */ addiu $t9, $t9, -1 -/* 0C7858 800C6C58 08031AE4 */ j func_800C6B90 -/* 0C785C 800C6C5C 00085025 */ or $t2, $zero, $t0 - -.L800C6C60: -/* 0C7860 800C6C60 24080002 */ li $t0, 2 -/* 0C7864 800C6C64 0268082B */ sltu $at, $s3, $t0 -/* 0C7868 800C6C68 50200009 */ beql $at, $zero, .L800C6C90 -/* 0C786C 800C6C6C 32490003 */ andi $t1, $s2, 3 -.L800C6C70: -/* 0C7870 800C6C70 92820000 */ lbu $v0, ($s4) -/* 0C7874 800C6C74 26940001 */ addiu $s4, $s4, 1 -/* 0C7878 800C6C78 02621004 */ sllv $v0, $v0, $s3 -/* 0C787C 800C6C7C 26730008 */ addiu $s3, $s3, 8 -/* 0C7880 800C6C80 0268082A */ slt $at, $s3, $t0 -/* 0C7884 800C6C84 1420FFFA */ bnez $at, .L800C6C70 -/* 0C7888 800C6C88 02429025 */ or $s2, $s2, $v0 -/* 0C788C 800C6C8C 32490003 */ andi $t1, $s2, 3 -.L800C6C90: -/* 0C7890 800C6C90 21290003 */ addi $t1, $t1, 3 -/* 0C7894 800C6C94 01129006 */ srlv $s2, $s2, $t0 -/* 0C7898 800C6C98 02689822 */ sub $s3, $s3, $t0 -/* 0C789C 800C6C9C 0329C823 */ subu $t9, $t9, $t1 -.L800C6CA0: -/* 0C78A0 800C6CA0 2529FFFF */ addiu $t1, $t1, -1 -/* 0C78A4 800C6CA4 ADEA0000 */ sw $t2, ($t7) -/* 0C78A8 800C6CA8 1520FFFD */ bnez $t1, .L800C6CA0 -/* 0C78AC 800C6CAC 25EF0004 */ addiu $t7, $t7, 4 -/* 0C78B0 800C6CB0 08031AE4 */ j func_800C6B90 -/* 0C78B4 800C6CB4 00000000 */ nop - -/* 0C78B8 800C6CB8 24080003 */ li $t0, 3 -.L800C6CBC: -/* 0C78BC 800C6CBC 0268082B */ sltu $at, $s3, $t0 -/* 0C78C0 800C6CC0 50200009 */ beql $at, $zero, .L800C6CE8 -/* 0C78C4 800C6CC4 32490007 */ andi $t1, $s2, 7 -.L800C6CC8: -/* 0C78C8 800C6CC8 92820000 */ lbu $v0, ($s4) -/* 0C78CC 800C6CCC 26940001 */ addiu $s4, $s4, 1 -/* 0C78D0 800C6CD0 02621004 */ sllv $v0, $v0, $s3 -/* 0C78D4 800C6CD4 26730008 */ addiu $s3, $s3, 8 -/* 0C78D8 800C6CD8 0268082A */ slt $at, $s3, $t0 -/* 0C78DC 800C6CDC 1420FFFA */ bnez $at, .L800C6CC8 -/* 0C78E0 800C6CE0 02429025 */ or $s2, $s2, $v0 -/* 0C78E4 800C6CE4 32490007 */ andi $t1, $s2, 7 -.L800C6CE8: -/* 0C78E8 800C6CE8 21290003 */ addi $t1, $t1, 3 -/* 0C78EC 800C6CEC 01129006 */ srlv $s2, $s2, $t0 -/* 0C78F0 800C6CF0 02689822 */ sub $s3, $s3, $t0 -/* 0C78F4 800C6CF4 0329C823 */ subu $t9, $t9, $t1 -.L800C6CF8: -/* 0C78F8 800C6CF8 2529FFFF */ addiu $t1, $t1, -1 -/* 0C78FC 800C6CFC ADE00000 */ sw $zero, ($t7) -/* 0C7900 800C6D00 1520FFFD */ bnez $t1, .L800C6CF8 -/* 0C7904 800C6D04 25EF0004 */ addiu $t7, $t7, 4 -/* 0C7908 800C6D08 08031AE4 */ j func_800C6B90 -/* 0C790C 800C6D0C 240A0000 */ li $t2, 0 - -.L800C6D10: -/* 0C7910 800C6D10 3C01800E */ lui $at, %hi(D_800E3768) # $at, 0x800e -/* 0C7914 800C6D14 AC343768 */ sw $s4, %lo(D_800E3768)($at) -/* 0C7918 800C6D18 3C018013 */ lui $at, %hi(D_8012AAD0) # $at, 0x8013 -/* 0C791C 800C6D1C 24080009 */ li $t0, 9 -/* 0C7920 800C6D20 AC32AAD0 */ sw $s2, %lo(D_8012AAD0)($at) -/* 0C7924 800C6D24 AFA80038 */ sw $t0, 0x38($sp) -/* 0C7928 800C6D28 3C02800F */ lui $v0, %hi(D_800E9412) # $v0, 0x800f -/* 0C792C 800C6D2C 3C018013 */ lui $at, %hi(D_8012AAD4) # $at, 0x8013 -/* 0C7930 800C6D30 3C07800F */ lui $a3, %hi(D_800E93D4) # $a3, 0x800f -/* 0C7934 800C6D34 24429412 */ addiu $v0, %lo(D_800E9412) # addiu $v0, $v0, -0x6bee -/* 0C7938 800C6D38 23A30034 */ addi $v1, $sp, 0x34 -/* 0C793C 800C6D3C 23A80038 */ addi $t0, $sp, 0x38 -/* 0C7940 800C6D40 AC33AAD4 */ sw $s3, %lo(D_8012AAD4)($at) -/* 0C7944 800C6D44 23A40044 */ addi $a0, $sp, 0x44 -/* 0C7948 800C6D48 00112825 */ or $a1, $zero, $s1 -/* 0C794C 800C6D4C 24060101 */ li $a2, 257 -/* 0C7950 800C6D50 24E793D4 */ addiu $a3, %lo(D_800E93D4) # addiu $a3, $a3, -0x6c2c -/* 0C7954 800C6D54 AFA20010 */ sw $v0, 0x10($sp) -/* 0C7958 800C6D58 AFA30014 */ sw $v1, 0x14($sp) -/* 0C795C 800C6D5C 0C03189D */ jal func_800C6274 -/* 0C7960 800C6D60 AFA80018 */ sw $t0, 0x18($sp) -/* 0C7964 800C6D64 23A40044 */ addi $a0, $sp, 0x44 -/* 0C7968 800C6D68 00111080 */ sll $v0, $s1, 2 -/* 0C796C 800C6D6C 24080006 */ li $t0, 6 -/* 0C7970 800C6D70 00822021 */ addu $a0, $a0, $v0 -/* 0C7974 800C6D74 AFA80040 */ sw $t0, 0x40($sp) -/* 0C7978 800C6D78 3C02800F */ lui $v0, %hi(D_800E946E) # $v0, 0x800f -/* 0C797C 800C6D7C 3C07800F */ lui $a3, %hi(D_800E9432) # $a3, 0x800f -/* 0C7980 800C6D80 2442946E */ addiu $v0, %lo(D_800E946E) # addiu $v0, $v0, -0x6b92 -/* 0C7984 800C6D84 23A3003C */ addi $v1, $sp, 0x3c -/* 0C7988 800C6D88 23A80040 */ addi $t0, $sp, 0x40 -/* 0C798C 800C6D8C 00102825 */ or $a1, $zero, $s0 -/* 0C7990 800C6D90 24060000 */ li $a2, 0 -/* 0C7994 800C6D94 24E79432 */ addiu $a3, %lo(D_800E9432) # addiu $a3, $a3, -0x6bce -/* 0C7998 800C6D98 AFA20010 */ sw $v0, 0x10($sp) -/* 0C799C 800C6D9C AFA30014 */ sw $v1, 0x14($sp) -/* 0C79A0 800C6DA0 0C03189D */ jal func_800C6274 -/* 0C79A4 800C6DA4 AFA80018 */ sw $t0, 0x18($sp) -/* 0C79A8 800C6DA8 8FA40034 */ lw $a0, 0x34($sp) -/* 0C79AC 800C6DAC 8FA5003C */ lw $a1, 0x3c($sp) -/* 0C79B0 800C6DB0 8FA60038 */ lw $a2, 0x38($sp) -/* 0C79B4 800C6DB4 0C031C10 */ jal func_800C7040 -/* 0C79B8 800C6DB8 8FA70040 */ lw $a3, 0x40($sp) -/* 0C79BC 800C6DBC 8FBF0030 */ lw $ra, 0x30($sp) -/* 0C79C0 800C6DC0 8FB4002C */ lw $s4, 0x2c($sp) -/* 0C79C4 800C6DC4 8FB30028 */ lw $s3, 0x28($sp) -/* 0C79C8 800C6DC8 8FB20024 */ lw $s2, 0x24($sp) -/* 0C79CC 800C6DCC 8FB10020 */ lw $s1, 0x20($sp) -/* 0C79D0 800C6DD0 8FB0001C */ lw $s0, 0x1c($sp) -/* 0C79D4 800C6DD4 03E00008 */ jr $ra -/* 0C79D8 800C6DD8 27BD0540 */ addiu $sp, $sp, 0x540 - -glabel func_800C6DDC -/* 0C79DC 800C6DDC 27BDFAD0 */ addiu $sp, $sp, -0x530 -/* 0C79E0 800C6DE0 AFBF001C */ sw $ra, 0x1c($sp) -/* 0C79E4 800C6DE4 23AB0044 */ addi $t3, $sp, 0x44 -/* 0C79E8 800C6DE8 24080024 */ li $t0, 36 -/* 0C79EC 800C6DEC 24090008 */ li $t1, 8 -.L800C6DF0: -/* 0C79F0 800C6DF0 2508FFFF */ addiu $t0, $t0, -1 -/* 0C79F4 800C6DF4 AD690000 */ sw $t1, ($t3) -/* 0C79F8 800C6DF8 AD690004 */ sw $t1, 4($t3) -/* 0C79FC 800C6DFC AD690008 */ sw $t1, 8($t3) -/* 0C7A00 800C6E00 AD69000C */ sw $t1, 0xc($t3) -/* 0C7A04 800C6E04 1500FFFA */ bnez $t0, .L800C6DF0 -/* 0C7A08 800C6E08 256B0010 */ addiu $t3, $t3, 0x10 -/* 0C7A0C 800C6E0C 2408001C */ li $t0, 28 -/* 0C7A10 800C6E10 24090009 */ li $t1, 9 -.L800C6E14: -/* 0C7A14 800C6E14 2508FFFF */ addiu $t0, $t0, -1 -/* 0C7A18 800C6E18 AD690000 */ sw $t1, ($t3) -/* 0C7A1C 800C6E1C AD690004 */ sw $t1, 4($t3) -/* 0C7A20 800C6E20 AD690008 */ sw $t1, 8($t3) -/* 0C7A24 800C6E24 AD69000C */ sw $t1, 0xc($t3) -/* 0C7A28 800C6E28 1500FFFA */ bnez $t0, .L800C6E14 -/* 0C7A2C 800C6E2C 256B0010 */ addiu $t3, $t3, 0x10 -/* 0C7A30 800C6E30 24080006 */ li $t0, 6 -/* 0C7A34 800C6E34 24090007 */ li $t1, 7 -.L800C6E38: -/* 0C7A38 800C6E38 2508FFFF */ addiu $t0, $t0, -1 -/* 0C7A3C 800C6E3C AD690000 */ sw $t1, ($t3) -/* 0C7A40 800C6E40 AD690004 */ sw $t1, 4($t3) -/* 0C7A44 800C6E44 AD690008 */ sw $t1, 8($t3) -/* 0C7A48 800C6E48 AD69000C */ sw $t1, 0xc($t3) -/* 0C7A4C 800C6E4C 1500FFFA */ bnez $t0, .L800C6E38 -/* 0C7A50 800C6E50 256B0010 */ addiu $t3, $t3, 0x10 -/* 0C7A54 800C6E54 24090008 */ li $t1, 8 -/* 0C7A58 800C6E58 AD690000 */ sw $t1, ($t3) -/* 0C7A5C 800C6E5C AD690004 */ sw $t1, 4($t3) -/* 0C7A60 800C6E60 AD690008 */ sw $t1, 8($t3) -/* 0C7A64 800C6E64 AD69000C */ sw $t1, 0xc($t3) -/* 0C7A68 800C6E68 AD690010 */ sw $t1, 0x10($t3) -/* 0C7A6C 800C6E6C AD690014 */ sw $t1, 0x14($t3) -/* 0C7A70 800C6E70 AD690018 */ sw $t1, 0x18($t3) -/* 0C7A74 800C6E74 AD69001C */ sw $t1, 0x1c($t3) -/* 0C7A78 800C6E78 24080007 */ li $t0, 7 -/* 0C7A7C 800C6E7C AFA80038 */ sw $t0, 0x38($sp) -/* 0C7A80 800C6E80 3C02800F */ lui $v0, %hi(D_800E9412) # $v0, 0x800f -/* 0C7A84 800C6E84 3C07800F */ lui $a3, %hi(D_800E93D4) # $a3, 0x800f -/* 0C7A88 800C6E88 24429412 */ addiu $v0, %lo(D_800E9412) # addiu $v0, $v0, -0x6bee -/* 0C7A8C 800C6E8C 23A30020 */ addi $v1, $sp, 0x20 -/* 0C7A90 800C6E90 23A80024 */ addi $t0, $sp, 0x24 -/* 0C7A94 800C6E94 23A40044 */ addi $a0, $sp, 0x44 -/* 0C7A98 800C6E98 24050120 */ li $a1, 288 -/* 0C7A9C 800C6E9C 24060101 */ li $a2, 257 -/* 0C7AA0 800C6EA0 24E793D4 */ addiu $a3, %lo(D_800E93D4) # addiu $a3, $a3, -0x6c2c -/* 0C7AA4 800C6EA4 AFA20010 */ sw $v0, 0x10($sp) -/* 0C7AA8 800C6EA8 AFA30014 */ sw $v1, 0x14($sp) -/* 0C7AAC 800C6EAC 0C03189D */ jal func_800C6274 -/* 0C7AB0 800C6EB0 AFA80018 */ sw $t0, 0x18($sp) -/* 0C7AB4 800C6EB4 23AB0044 */ addi $t3, $sp, 0x44 -/* 0C7AB8 800C6EB8 2408000A */ li $t0, 10 -/* 0C7ABC 800C6EBC 24090005 */ li $t1, 5 -.L800C6EC0: -/* 0C7AC0 800C6EC0 2508FFFF */ addiu $t0, $t0, -1 -/* 0C7AC4 800C6EC4 AD690000 */ sw $t1, ($t3) -/* 0C7AC8 800C6EC8 AD690004 */ sw $t1, 4($t3) -/* 0C7ACC 800C6ECC AD690008 */ sw $t1, 8($t3) -/* 0C7AD0 800C6ED0 1500FFFB */ bnez $t0, .L800C6EC0 -/* 0C7AD4 800C6ED4 256B000C */ addiu $t3, $t3, 0xc -/* 0C7AD8 800C6ED8 3C02800F */ lui $v0, %hi(D_800E946E) # $v0, 0x800f -/* 0C7ADC 800C6EDC 3C07800F */ lui $a3, %hi(D_800E9432) # $a3, 0x800f -/* 0C7AE0 800C6EE0 2442946E */ addiu $v0, %lo(D_800E946E) # addiu $v0, $v0, -0x6b92 -/* 0C7AE4 800C6EE4 23A30028 */ addi $v1, $sp, 0x28 -/* 0C7AE8 800C6EE8 23A8002C */ addi $t0, $sp, 0x2c -/* 0C7AEC 800C6EEC AFA90040 */ sw $t1, 0x40($sp) -/* 0C7AF0 800C6EF0 23A40044 */ addi $a0, $sp, 0x44 -/* 0C7AF4 800C6EF4 2405001E */ li $a1, 30 -/* 0C7AF8 800C6EF8 24060000 */ li $a2, 0 -/* 0C7AFC 800C6EFC 24E79432 */ addiu $a3, %lo(D_800E9432) # addiu $a3, $a3, -0x6bce -/* 0C7B00 800C6F00 AFA20010 */ sw $v0, 0x10($sp) -/* 0C7B04 800C6F04 AFA30014 */ sw $v1, 0x14($sp) -/* 0C7B08 800C6F08 0C03189D */ jal func_800C6274 -/* 0C7B0C 800C6F0C AFA80018 */ sw $t0, 0x18($sp) -/* 0C7B10 800C6F10 8FA40020 */ lw $a0, 0x20($sp) -/* 0C7B14 800C6F14 8FA50028 */ lw $a1, 0x28($sp) -/* 0C7B18 800C6F18 8FA60024 */ lw $a2, 0x24($sp) -/* 0C7B1C 800C6F1C 0C031C10 */ jal func_800C7040 -/* 0C7B20 800C6F20 8FA7002C */ lw $a3, 0x2c($sp) -/* 0C7B24 800C6F24 8FBF001C */ lw $ra, 0x1c($sp) -/* 0C7B28 800C6F28 27BD0530 */ addiu $sp, $sp, 0x530 -/* 0C7B2C 800C6F2C 03E00008 */ jr $ra -/* 0C7B30 800C6F30 00000000 */ nop - -glabel func_800C6F34 -/* 0C7B34 800C6F34 3C0D8013 */ lui $t5, %hi(D_8012AAD4) # $t5, 0x8013 -/* 0C7B38 800C6F38 8DADAAD4 */ lw $t5, %lo(D_8012AAD4)($t5) -/* 0C7B3C 800C6F3C 3C0C8013 */ lui $t4, %hi(D_8012AAD0) # $t4, 0x8013 -/* 0C7B40 800C6F40 8D8CAAD0 */ lw $t4, %lo(D_8012AAD0)($t4) -/* 0C7B44 800C6F44 31A80007 */ andi $t0, $t5, 7 -/* 0C7B48 800C6F48 01A86822 */ sub $t5, $t5, $t0 -/* 0C7B4C 800C6F4C 010C6006 */ srlv $t4, $t4, $t0 -/* 0C7B50 800C6F50 24080010 */ li $t0, 16 -/* 0C7B54 800C6F54 3C0F800E */ lui $t7, %hi(D_800E3768) # $t7, 0x800e -/* 0C7B58 800C6F58 3C0E800E */ lui $t6, %hi(D_800E376C) # $t6, 0x800e -/* 0C7B5C 800C6F5C 01A8082B */ sltu $at, $t5, $t0 -/* 0C7B60 800C6F60 8DEF3768 */ lw $t7, %lo(D_800E3768)($t7) -/* 0C7B64 800C6F64 10200008 */ beqz $at, .L800C6F88 -/* 0C7B68 800C6F68 8DCE376C */ lw $t6, %lo(D_800E376C)($t6) -.L800C6F6C: -/* 0C7B6C 800C6F6C 91E20000 */ lbu $v0, ($t7) -/* 0C7B70 800C6F70 25EF0001 */ addiu $t7, $t7, 1 -/* 0C7B74 800C6F74 01A21004 */ sllv $v0, $v0, $t5 -/* 0C7B78 800C6F78 25AD0008 */ addiu $t5, $t5, 8 -/* 0C7B7C 800C6F7C 01A8082A */ slt $at, $t5, $t0 -/* 0C7B80 800C6F80 1420FFFA */ bnez $at, .L800C6F6C -/* 0C7B84 800C6F84 01826025 */ or $t4, $t4, $v0 -.L800C6F88: -/* 0C7B88 800C6F88 01A86822 */ sub $t5, $t5, $t0 -/* 0C7B8C 800C6F8C 3189FFFF */ andi $t1, $t4, 0xffff -/* 0C7B90 800C6F90 01A8082B */ sltu $at, $t5, $t0 -/* 0C7B94 800C6F94 10200008 */ beqz $at, .L800C6FB8 -/* 0C7B98 800C6F98 010C6006 */ srlv $t4, $t4, $t0 -.L800C6F9C: -/* 0C7B9C 800C6F9C 91E20000 */ lbu $v0, ($t7) -/* 0C7BA0 800C6FA0 25EF0001 */ addiu $t7, $t7, 1 -/* 0C7BA4 800C6FA4 01A21004 */ sllv $v0, $v0, $t5 -/* 0C7BA8 800C6FA8 25AD0008 */ addiu $t5, $t5, 8 -/* 0C7BAC 800C6FAC 01A8082A */ slt $at, $t5, $t0 -/* 0C7BB0 800C6FB0 1420FFFA */ bnez $at, .L800C6F9C -/* 0C7BB4 800C6FB4 01826025 */ or $t4, $t4, $v0 -.L800C6FB8: -/* 0C7BB8 800C6FB8 31220003 */ andi $v0, $t1, 3 -/* 0C7BBC 800C6FBC 010C6006 */ srlv $t4, $t4, $t0 -/* 0C7BC0 800C6FC0 1040000A */ beqz $v0, .L800C6FEC -/* 0C7BC4 800C6FC4 01A86822 */ sub $t5, $t5, $t0 -/* 0C7BC8 800C6FC8 01224822 */ sub $t1, $t1, $v0 -.L800C6FCC: -/* 0C7BCC 800C6FCC 91EA0000 */ lbu $t2, ($t7) -/* 0C7BD0 800C6FD0 2042FFFF */ addi $v0, $v0, -1 -/* 0C7BD4 800C6FD4 21EF0001 */ addi $t7, $t7, 1 -/* 0C7BD8 800C6FD8 21CE0001 */ addi $t6, $t6, 1 -/* 0C7BDC 800C6FDC 1440FFFB */ bnez $v0, .L800C6FCC -/* 0C7BE0 800C6FE0 A1CAFFFF */ sb $t2, -1($t6) -/* 0C7BE4 800C6FE4 1120000D */ beqz $t1, .L800C701C -/* 0C7BE8 800C6FE8 00000000 */ nop -.L800C6FEC: -/* 0C7BEC 800C6FEC 91E20000 */ lbu $v0, ($t7) -/* 0C7BF0 800C6FF0 2529FFFC */ addiu $t1, $t1, -4 -/* 0C7BF4 800C6FF4 25EF0004 */ addiu $t7, $t7, 4 -/* 0C7BF8 800C6FF8 A1C20000 */ sb $v0, ($t6) -/* 0C7BFC 800C6FFC 91E3FFFD */ lbu $v1, -3($t7) -/* 0C7C00 800C7000 25CE0004 */ addiu $t6, $t6, 4 -/* 0C7C04 800C7004 A1C3FFFD */ sb $v1, -3($t6) -/* 0C7C08 800C7008 91EAFFFE */ lbu $t2, -2($t7) -/* 0C7C0C 800C700C A1CAFFFE */ sb $t2, -2($t6) -/* 0C7C10 800C7010 91EBFFFF */ lbu $t3, -1($t7) -/* 0C7C14 800C7014 1520FFF5 */ bnez $t1, .L800C6FEC -/* 0C7C18 800C7018 A1CBFFFF */ sb $t3, -1($t6) -.L800C701C: -/* 0C7C1C 800C701C 3C01800E */ lui $at, %hi(D_800E3768) # $at, 0x800e -/* 0C7C20 800C7020 AC2F3768 */ sw $t7, %lo(D_800E3768)($at) -/* 0C7C24 800C7024 3C01800E */ lui $at, %hi(D_800E376C) # $at, 0x800e -/* 0C7C28 800C7028 AC2E376C */ sw $t6, %lo(D_800E376C)($at) -/* 0C7C2C 800C702C 3C018013 */ lui $at, %hi(D_8012AAD0) # $at, 0x8013 -/* 0C7C30 800C7030 AC2CAAD0 */ sw $t4, %lo(D_8012AAD0)($at) -/* 0C7C34 800C7034 3C018013 */ lui $at, 0x8013 -/* 0C7C38 800C7038 03E00008 */ jr $ra -/* 0C7C3C 800C703C AC2DAAD4 */ sw $t5, -0x552c($at) - -glabel func_800C7040 -/* 0C7C40 800C7040 27BDFFF0 */ addiu $sp, $sp, -0x10 -/* 0C7C44 800C7044 3C0B800F */ lui $t3, %hi(D_800E948C) # $t3, 0x800f -/* 0C7C48 800C7048 AFB20008 */ sw $s2, 8($sp) -/* 0C7C4C 800C704C AFB10004 */ sw $s1, 4($sp) -/* 0C7C50 800C7050 AFB00000 */ sw $s0, ($sp) -/* 0C7C54 800C7054 256B948C */ addiu $t3, %lo(D_800E948C) # addiu $t3, $t3, -0x6b74 -/* 0C7C58 800C7058 00061040 */ sll $v0, $a2, 1 -/* 0C7C5C 800C705C 00074040 */ sll $t0, $a3, 1 -/* 0C7C60 800C7060 3C12800E */ lui $s2, %hi(D_800E3768) # $s2, 0x800e -/* 0C7C64 800C7064 3C11800E */ lui $s1, %hi(D_800E376C) # $s1, 0x800e -/* 0C7C68 800C7068 3C198013 */ lui $t9, %hi(D_8012AAD0) # $t9, 0x8013 -/* 0C7C6C 800C706C 3C108013 */ lui $s0, %hi(D_8012AAD4) # $s0, 0x8013 -/* 0C7C70 800C7070 01621821 */ addu $v1, $t3, $v0 -/* 0C7C74 800C7074 01684821 */ addu $t1, $t3, $t0 -/* 0C7C78 800C7078 8E523768 */ lw $s2, %lo(D_800E3768)($s2) -/* 0C7C7C 800C707C 8E31376C */ lw $s1, %lo(D_800E376C)($s1) -/* 0C7C80 800C7080 8F39AAD0 */ lw $t9, %lo(D_8012AAD0)($t9) -/* 0C7C84 800C7084 8E10AAD4 */ lw $s0, %lo(D_8012AAD4)($s0) -/* 0C7C88 800C7088 946D0000 */ lhu $t5, ($v1) -/* 0C7C8C 800C708C 952C0000 */ lhu $t4, ($t1) -glabel func_800C7090 -/* 0C7C90 800C7090 0206082B */ sltu $at, $s0, $a2 -.L800C7094: -/* 0C7C94 800C7094 50200009 */ beql $at, $zero, .L800C70BC -/* 0C7C98 800C7098 032D1024 */ and $v0, $t9, $t5 -.L800C709C: -/* 0C7C9C 800C709C 92420000 */ lbu $v0, ($s2) -/* 0C7CA0 800C70A0 26520001 */ addiu $s2, $s2, 1 -/* 0C7CA4 800C70A4 02021004 */ sllv $v0, $v0, $s0 -/* 0C7CA8 800C70A8 26100008 */ addiu $s0, $s0, 8 -/* 0C7CAC 800C70AC 0206082A */ slt $at, $s0, $a2 -/* 0C7CB0 800C70B0 1420FFFA */ bnez $at, .L800C709C -/* 0C7CB4 800C70B4 0322C825 */ or $t9, $t9, $v0 -/* 0C7CB8 800C70B8 032D1024 */ and $v0, $t9, $t5 -.L800C70BC: -/* 0C7CBC 800C70BC 000210C0 */ sll $v0, $v0, 3 -/* 0C7CC0 800C70C0 00827821 */ addu $t7, $a0, $v0 -/* 0C7CC4 800C70C4 91F80000 */ lbu $t8, ($t7) -/* 0C7CC8 800C70C8 2B010011 */ slti $at, $t8, 0x11 -/* 0C7CCC 800C70CC 5420001A */ bnezl $at, .L800C7138 -/* 0C7CD0 800C70D0 91E20001 */ lbu $v0, 1($t7) -/* 0C7CD4 800C70D4 81E30001 */ lb $v1, 1($t7) -.L800C70D8: -/* 0C7CD8 800C70D8 2318FFF0 */ addi $t8, $t8, -0x10 -/* 0C7CDC 800C70DC 02038022 */ sub $s0, $s0, $v1 -/* 0C7CE0 800C70E0 0218082B */ sltu $at, $s0, $t8 -/* 0C7CE4 800C70E4 10200008 */ beqz $at, .L800C7108 -/* 0C7CE8 800C70E8 0079C806 */ srlv $t9, $t9, $v1 -.L800C70EC: -/* 0C7CEC 800C70EC 92420000 */ lbu $v0, ($s2) -/* 0C7CF0 800C70F0 26520001 */ addiu $s2, $s2, 1 -/* 0C7CF4 800C70F4 02021004 */ sllv $v0, $v0, $s0 -/* 0C7CF8 800C70F8 26100008 */ addiu $s0, $s0, 8 -/* 0C7CFC 800C70FC 0218082A */ slt $at, $s0, $t8 -/* 0C7D00 800C7100 1420FFFA */ bnez $at, .L800C70EC -/* 0C7D04 800C7104 0322C825 */ or $t9, $t9, $v0 -.L800C7108: -/* 0C7D08 800C7108 00181040 */ sll $v0, $t8, 1 -/* 0C7D0C 800C710C 004B1021 */ addu $v0, $v0, $t3 -/* 0C7D10 800C7110 94490000 */ lhu $t1, ($v0) -/* 0C7D14 800C7114 8DE80004 */ lw $t0, 4($t7) -/* 0C7D18 800C7118 01394824 */ and $t1, $t1, $t9 -/* 0C7D1C 800C711C 000948C0 */ sll $t1, $t1, 3 -/* 0C7D20 800C7120 01097820 */ add $t7, $t0, $t1 -/* 0C7D24 800C7124 91F80000 */ lbu $t8, ($t7) -/* 0C7D28 800C7128 2F010011 */ sltiu $at, $t8, 0x11 -/* 0C7D2C 800C712C 5020FFEA */ beql $at, $zero, .L800C70D8 -/* 0C7D30 800C7130 81E30001 */ lb $v1, 1($t7) -/* 0C7D34 800C7134 91E20001 */ lbu $v0, 1($t7) -.L800C7138: -/* 0C7D38 800C7138 24010010 */ li $at, 16 -/* 0C7D3C 800C713C 0059C806 */ srlv $t9, $t9, $v0 -/* 0C7D40 800C7140 17010005 */ bne $t8, $at, .L800C7158 -/* 0C7D44 800C7144 02028022 */ sub $s0, $s0, $v0 -/* 0C7D48 800C7148 95E20004 */ lhu $v0, 4($t7) -/* 0C7D4C 800C714C 26310001 */ addiu $s1, $s1, 1 -/* 0C7D50 800C7150 08031C24 */ j func_800C7090 -/* 0C7D54 800C7154 A222FFFF */ sb $v0, -1($s1) - -.L800C7158: -/* 0C7D58 800C7158 2401000F */ li $at, 15 -/* 0C7D5C 800C715C 13010068 */ beq $t8, $at, .L800C7300 -/* 0C7D60 800C7160 0218082B */ sltu $at, $s0, $t8 -/* 0C7D64 800C7164 50200009 */ beql $at, $zero, .L800C718C -/* 0C7D68 800C7168 00181040 */ sll $v0, $t8, 1 -.L800C716C: -/* 0C7D6C 800C716C 92420000 */ lbu $v0, ($s2) -/* 0C7D70 800C7170 26520001 */ addiu $s2, $s2, 1 -/* 0C7D74 800C7174 02021004 */ sllv $v0, $v0, $s0 -/* 0C7D78 800C7178 26100008 */ addiu $s0, $s0, 8 -/* 0C7D7C 800C717C 0218082A */ slt $at, $s0, $t8 -/* 0C7D80 800C7180 1420FFFA */ bnez $at, .L800C716C -/* 0C7D84 800C7184 0322C825 */ or $t9, $t9, $v0 -/* 0C7D88 800C7188 00181040 */ sll $v0, $t8, 1 -.L800C718C: -/* 0C7D8C 800C718C 004B1021 */ addu $v0, $v0, $t3 -/* 0C7D90 800C7190 94490000 */ lhu $t1, ($v0) -/* 0C7D94 800C7194 95E80004 */ lhu $t0, 4($t7) -/* 0C7D98 800C7198 02188022 */ sub $s0, $s0, $t8 -/* 0C7D9C 800C719C 0207082B */ sltu $at, $s0, $a3 -/* 0C7DA0 800C71A0 01394824 */ and $t1, $t1, $t9 -/* 0C7DA4 800C71A4 0319C806 */ srlv $t9, $t9, $t8 -/* 0C7DA8 800C71A8 10200008 */ beqz $at, .L800C71CC -/* 0C7DAC 800C71AC 01097021 */ addu $t6, $t0, $t1 -.L800C71B0: -/* 0C7DB0 800C71B0 92420000 */ lbu $v0, ($s2) -/* 0C7DB4 800C71B4 26520001 */ addiu $s2, $s2, 1 -/* 0C7DB8 800C71B8 02021004 */ sllv $v0, $v0, $s0 -/* 0C7DBC 800C71BC 26100008 */ addiu $s0, $s0, 8 -/* 0C7DC0 800C71C0 0207082A */ slt $at, $s0, $a3 -/* 0C7DC4 800C71C4 1420FFFA */ bnez $at, .L800C71B0 -/* 0C7DC8 800C71C8 0322C825 */ or $t9, $t9, $v0 -.L800C71CC: -/* 0C7DCC 800C71CC 01991024 */ and $v0, $t4, $t9 -/* 0C7DD0 800C71D0 000210C0 */ sll $v0, $v0, 3 -/* 0C7DD4 800C71D4 00A27821 */ addu $t7, $a1, $v0 -/* 0C7DD8 800C71D8 91F80000 */ lbu $t8, ($t7) -/* 0C7DDC 800C71DC 2B010011 */ slti $at, $t8, 0x11 -/* 0C7DE0 800C71E0 5420001A */ bnezl $at, .L800C724C -/* 0C7DE4 800C71E4 91E20001 */ lbu $v0, 1($t7) -/* 0C7DE8 800C71E8 91E80001 */ lbu $t0, 1($t7) -.L800C71EC: -/* 0C7DEC 800C71EC 2318FFF0 */ addi $t8, $t8, -0x10 -/* 0C7DF0 800C71F0 02088022 */ sub $s0, $s0, $t0 -/* 0C7DF4 800C71F4 0218082B */ sltu $at, $s0, $t8 -/* 0C7DF8 800C71F8 10200008 */ beqz $at, .L800C721C -/* 0C7DFC 800C71FC 0119C806 */ srlv $t9, $t9, $t0 -.L800C7200: -/* 0C7E00 800C7200 92420000 */ lbu $v0, ($s2) -/* 0C7E04 800C7204 26520001 */ addiu $s2, $s2, 1 -/* 0C7E08 800C7208 02021004 */ sllv $v0, $v0, $s0 -/* 0C7E0C 800C720C 26100008 */ addiu $s0, $s0, 8 -/* 0C7E10 800C7210 0218082A */ slt $at, $s0, $t8 -/* 0C7E14 800C7214 1420FFFA */ bnez $at, .L800C7200 -/* 0C7E18 800C7218 0322C825 */ or $t9, $t9, $v0 -.L800C721C: -/* 0C7E1C 800C721C 00181040 */ sll $v0, $t8, 1 -/* 0C7E20 800C7220 004B1021 */ addu $v0, $v0, $t3 -/* 0C7E24 800C7224 94490000 */ lhu $t1, ($v0) -/* 0C7E28 800C7228 8DE80004 */ lw $t0, 4($t7) -/* 0C7E2C 800C722C 01394824 */ and $t1, $t1, $t9 -/* 0C7E30 800C7230 000948C0 */ sll $t1, $t1, 3 -/* 0C7E34 800C7234 01097821 */ addu $t7, $t0, $t1 -/* 0C7E38 800C7238 91F80000 */ lbu $t8, ($t7) -/* 0C7E3C 800C723C 2F010011 */ sltiu $at, $t8, 0x11 -/* 0C7E40 800C7240 5020FFEA */ beql $at, $zero, .L800C71EC -/* 0C7E44 800C7244 91E80001 */ lbu $t0, 1($t7) -/* 0C7E48 800C7248 91E20001 */ lbu $v0, 1($t7) -.L800C724C: -/* 0C7E4C 800C724C 02028022 */ sub $s0, $s0, $v0 -/* 0C7E50 800C7250 0218082B */ sltu $at, $s0, $t8 -/* 0C7E54 800C7254 10200008 */ beqz $at, .L800C7278 -/* 0C7E58 800C7258 0059C806 */ srlv $t9, $t9, $v0 -.L800C725C: -/* 0C7E5C 800C725C 92420000 */ lbu $v0, ($s2) -/* 0C7E60 800C7260 26520001 */ addiu $s2, $s2, 1 -/* 0C7E64 800C7264 02021004 */ sllv $v0, $v0, $s0 -/* 0C7E68 800C7268 26100008 */ addiu $s0, $s0, 8 -/* 0C7E6C 800C726C 0218082A */ slt $at, $s0, $t8 -/* 0C7E70 800C7270 1420FFFA */ bnez $at, .L800C725C -/* 0C7E74 800C7274 0322C825 */ or $t9, $t9, $v0 -.L800C7278: -/* 0C7E78 800C7278 00181040 */ sll $v0, $t8, 1 -/* 0C7E7C 800C727C 004B1021 */ addu $v0, $v0, $t3 -/* 0C7E80 800C7280 94490000 */ lhu $t1, ($v0) -/* 0C7E84 800C7284 95E30004 */ lhu $v1, 4($t7) -/* 0C7E88 800C7288 31C20003 */ andi $v0, $t6, 3 -/* 0C7E8C 800C728C 01394824 */ and $t1, $t1, $t9 -/* 0C7E90 800C7290 02234022 */ sub $t0, $s1, $v1 -/* 0C7E94 800C7294 01094022 */ sub $t0, $t0, $t1 -/* 0C7E98 800C7298 0319C806 */ srlv $t9, $t9, $t8 -/* 0C7E9C 800C729C 1040000A */ beqz $v0, .L800C72C8 -/* 0C7EA0 800C72A0 02188022 */ sub $s0, $s0, $t8 -/* 0C7EA4 800C72A4 01C27022 */ sub $t6, $t6, $v0 -.L800C72A8: -/* 0C7EA8 800C72A8 910A0000 */ lbu $t2, ($t0) -/* 0C7EAC 800C72AC 2042FFFF */ addi $v0, $v0, -1 -/* 0C7EB0 800C72B0 21080001 */ addi $t0, $t0, 1 -/* 0C7EB4 800C72B4 22310001 */ addi $s1, $s1, 1 -/* 0C7EB8 800C72B8 1440FFFB */ bnez $v0, .L800C72A8 -/* 0C7EBC 800C72BC A22AFFFF */ sb $t2, -1($s1) -/* 0C7EC0 800C72C0 51C0FF74 */ beql $t6, $zero, .L800C7094 -/* 0C7EC4 800C72C4 0206082B */ sltu $at, $s0, $a2 -.L800C72C8: -/* 0C7EC8 800C72C8 91020000 */ lbu $v0, ($t0) -/* 0C7ECC 800C72CC 25CEFFFC */ addiu $t6, $t6, -4 -/* 0C7ED0 800C72D0 25080004 */ addiu $t0, $t0, 4 -/* 0C7ED4 800C72D4 A2220000 */ sb $v0, ($s1) -/* 0C7ED8 800C72D8 9103FFFD */ lbu $v1, -3($t0) -/* 0C7EDC 800C72DC 26310004 */ addiu $s1, $s1, 4 -/* 0C7EE0 800C72E0 A223FFFD */ sb $v1, -3($s1) -/* 0C7EE4 800C72E4 9109FFFE */ lbu $t1, -2($t0) -/* 0C7EE8 800C72E8 A229FFFE */ sb $t1, -2($s1) -/* 0C7EEC 800C72EC 910AFFFF */ lbu $t2, -1($t0) -/* 0C7EF0 800C72F0 15C0FFF5 */ bnez $t6, .L800C72C8 -/* 0C7EF4 800C72F4 A22AFFFF */ sb $t2, -1($s1) -/* 0C7EF8 800C72F8 08031C24 */ j func_800C7090 -/* 0C7EFC 800C72FC 00000000 */ nop - -.L800C7300: -/* 0C7F00 800C7300 3C01800E */ lui $at, %hi(D_800E3768) # $at, 0x800e -/* 0C7F04 800C7304 AC323768 */ sw $s2, %lo(D_800E3768)($at) -/* 0C7F08 800C7308 3C01800E */ lui $at, %hi(D_800E376C) # $at, 0x800e -/* 0C7F0C 800C730C AC31376C */ sw $s1, %lo(D_800E376C)($at) -/* 0C7F10 800C7310 3C018013 */ lui $at, %hi(D_8012AAD0) # $at, 0x8013 -/* 0C7F14 800C7314 AC39AAD0 */ sw $t9, %lo(D_8012AAD0)($at) -/* 0C7F18 800C7318 3C018013 */ lui $at, %hi(D_8012AAD4) # $at, 0x8013 -/* 0C7F1C 800C731C AC30AAD4 */ sw $s0, %lo(D_8012AAD4)($at) -/* 0C7F20 800C7320 8FB20008 */ lw $s2, 8($sp) -/* 0C7F24 800C7324 8FB10004 */ lw $s1, 4($sp) -/* 0C7F28 800C7328 8FB00000 */ lw $s0, ($sp) -/* 0C7F2C 800C732C 03E00008 */ jr $ra -/* 0C7F30 800C7330 27BD0010 */ addiu $sp, $sp, 0x10 - -/* 0C7F34 800C7334 00000000 */ nop -/* 0C7F38 800C7338 00000000 */ nop -/* 0C7F3C 800C733C 00000000 */ nop diff --git a/asm/unknown_0C7F40.s b/asm/unknown_0C7F40.s deleted file mode 100755 index 2c5a8f23..00000000 --- a/asm/unknown_0C7F40.s +++ /dev/null @@ -1,14 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel D_800C7340 -/* 0C7F40 800C7340 03E00008 */ jr $ra -/* 0C7F44 800C7344 00001025 */ move $v0, $zero - -/* 0C7F48 800C7348 00000000 */ nop -/* 0C7F4C 800C734C 00000000 */ nop diff --git a/asm/unknown_0C7F50.s b/asm/unknown_0C7F50.s deleted file mode 100755 index df34b3bb..00000000 --- a/asm/unknown_0C7F50.s +++ /dev/null @@ -1,158 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_800C7350 -/* 0C7F50 800C7350 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0C7F54 800C7354 AFBF001C */ sw $ra, 0x1c($sp) -/* 0C7F58 800C7358 3C048013 */ lui $a0, %hi(D_8012ACA0) # $a0, 0x8013 -/* 0C7F5C 800C735C 3C058013 */ lui $a1, %hi(D_8012ACB8) # $a1, 0x8013 -/* 0C7F60 800C7360 24A5ACB8 */ addiu $a1, %lo(D_8012ACB8) # addiu $a1, $a1, -0x5348 -/* 0C7F64 800C7364 2484ACA0 */ addiu $a0, %lo(D_8012ACA0) # addiu $a0, $a0, -0x5360 -/* 0C7F68 800C7368 0C032208 */ jal osCreateMesgQueue -/* 0C7F6C 800C736C 24060002 */ li $a2, 2 -/* 0C7F70 800C7370 3C0E8013 */ lui $t6, %hi(D_8012CCC0) # $t6, 0x8013 -/* 0C7F74 800C7374 25CECCC0 */ addiu $t6, %lo(D_8012CCC0) # addiu $t6, $t6, -0x3340 -/* 0C7F78 800C7378 3C048013 */ lui $a0, %hi(D_8012AAF0) # $a0, 0x8013 -/* 0C7F7C 800C737C 3C06800C */ lui $a2, %hi(D_800C74A0) # $a2, 0x800c -/* 0C7F80 800C7380 240F0008 */ li $t7, 8 -/* 0C7F84 800C7384 AFAF0014 */ sw $t7, 0x14($sp) -/* 0C7F88 800C7388 24C674A0 */ addiu $a2, %lo(D_800C74A0) # addiu $a2, $a2, 0x74a0 -/* 0C7F8C 800C738C 2484AAF0 */ addiu $a0, %lo(D_8012AAF0) # addiu $a0, $a0, -0x5510 -/* 0C7F90 800C7390 AFAE0010 */ sw $t6, 0x10($sp) -/* 0C7F94 800C7394 2405001E */ li $a1, 30 -/* 0C7F98 800C7398 0C032214 */ jal osCreateThread -/* 0C7F9C 800C739C 00003825 */ move $a3, $zero -/* 0C7FA0 800C73A0 3C048013 */ lui $a0, %hi(D_8012AAF0) # $a0, 0x8013 -/* 0C7FA4 800C73A4 0C032268 */ jal osStartThread -/* 0C7FA8 800C73A8 2484AAF0 */ addiu $a0, %lo(D_8012AAF0) # addiu $a0, $a0, -0x5510 -/* 0C7FAC 800C73AC 8FBF001C */ lw $ra, 0x1c($sp) -/* 0C7FB0 800C73B0 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0C7FB4 800C73B4 03E00008 */ jr $ra -/* 0C7FB8 800C73B8 00000000 */ nop - -glabel func_800C73BC -/* 0C7FBC 800C73BC 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C7FC0 800C73C0 AFBF0014 */ sw $ra, 0x14($sp) -/* 0C7FC4 800C73C4 3C048013 */ lui $a0, %hi(D_8012AAF0) # $a0, 0x8013 -/* 0C7FC8 800C73C8 0C0322BC */ jal func_800C8AF0 -/* 0C7FCC 800C73CC 2484AAF0 */ addiu $a0, %lo(D_8012AAF0) # addiu $a0, $a0, -0x5510 -/* 0C7FD0 800C73D0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C7FD4 800C73D4 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0C7FD8 800C73D8 03E00008 */ jr $ra -/* 0C7FDC 800C73DC 00000000 */ nop - -glabel func_800C73E0 -/* 0C7FE0 800C73E0 3C02800E */ lui $v0, %hi(D_800E3770) # $v0, 0x800e -/* 0C7FE4 800C73E4 8C423770 */ lw $v0, %lo(D_800E3770)($v0) -/* 0C7FE8 800C73E8 03E00008 */ jr $ra -/* 0C7FEC 800C73EC 00000000 */ nop - -glabel func_800C73F0 -/* 0C7FF0 800C73F0 3C0E800E */ lui $t6, %hi(D_800E3770) # $t6, 0x800e -/* 0C7FF4 800C73F4 8DCE3770 */ lw $t6, %lo(D_800E3770)($t6) -/* 0C7FF8 800C73F8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C7FFC 800C73FC 11C0000E */ beqz $t6, .L800C7438 -/* 0C8000 800C7400 AFBF0014 */ sw $ra, 0x14($sp) -/* 0C8004 800C7404 3C03800E */ lui $v1, %hi(D_800E377C) # $v1, 0x800e -/* 0C8008 800C7408 2463377C */ addiu $v1, %lo(D_800E377C) # addiu $v1, $v1, 0x377c -/* 0C800C 800C740C 8C620000 */ lw $v0, ($v1) -/* 0C8010 800C7410 00000000 */ nop -/* 0C8014 800C7414 18400008 */ blez $v0, .L800C7438 -/* 0C8018 800C7418 244FFFFF */ addiu $t7, $v0, -1 -/* 0C801C 800C741C 15E00006 */ bnez $t7, .L800C7438 -/* 0C8020 800C7420 AC6F0000 */ sw $t7, ($v1) -/* 0C8024 800C7424 3C048013 */ lui $a0, %hi(D_8012ACA0) # $a0, 0x8013 -/* 0C8028 800C7428 2484ACA0 */ addiu $a0, %lo(D_8012ACA0) # addiu $a0, $a0, -0x5360 -/* 0C802C 800C742C 2405000A */ li $a1, 10 -/* 0C8030 800C7430 0C03238C */ jal func_800C8E30 -/* 0C8034 800C7434 00003025 */ move $a2, $zero -.L800C7438: -/* 0C8038 800C7438 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C803C 800C743C 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0C8040 800C7440 03E00008 */ jr $ra -/* 0C8044 800C7444 00000000 */ nop - -/* 0C8048 800C7448 3C02800E */ lui $v0, %hi(D_800E377C) # $v0, 0x800e -/* 0C804C 800C744C 8C42377C */ lw $v0, %lo(D_800E377C)($v0) -/* 0C8050 800C7450 03E00008 */ jr $ra -/* 0C8054 800C7454 00000000 */ nop - -glabel func_800C7458 -/* 0C8058 800C7458 3C03800E */ lui $v1, %hi(D_800E3770) # $v1, 0x800e -/* 0C805C 800C745C 24633770 */ addiu $v1, %lo(D_800E3770) # addiu $v1, $v1, 0x3770 -/* 0C8060 800C7460 8C6E0000 */ lw $t6, ($v1) -/* 0C8064 800C7464 240F0004 */ li $t7, 4 -/* 0C8068 800C7468 15C0000A */ bnez $t6, .L800C7494 -/* 0C806C 800C746C 3C01800E */ lui $at, %hi(D_800E377C) # $at, 0x800e -/* 0C8070 800C7470 AC2F377C */ sw $t7, %lo(D_800E377C)($at) -/* 0C8074 800C7474 3C01800E */ lui $at, %hi(D_800E3774) # $at, 0x800e -/* 0C8078 800C7478 AC243774 */ sw $a0, %lo(D_800E3774)($at) -/* 0C807C 800C747C 3C01800E */ lui $at, %hi(D_800E3778) # $at, 0x800e -/* 0C8080 800C7480 AC253778 */ sw $a1, %lo(D_800E3778)($at) -/* 0C8084 800C7484 24180001 */ li $t8, 1 -/* 0C8088 800C7488 AC780000 */ sw $t8, ($v1) -/* 0C808C 800C748C 03E00008 */ jr $ra -/* 0C8090 800C7490 24020001 */ li $v0, 1 - -.L800C7494: -/* 0C8094 800C7494 00001025 */ move $v0, $zero -/* 0C8098 800C7498 03E00008 */ jr $ra -/* 0C809C 800C749C 00000000 */ nop - -glabel D_800C74A0 -/* 0C80A0 800C74A0 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0C80A4 800C74A4 AFB50028 */ sw $s5, 0x28($sp) -/* 0C80A8 800C74A8 AFB40024 */ sw $s4, 0x24($sp) -/* 0C80AC 800C74AC AFB30020 */ sw $s3, 0x20($sp) -/* 0C80B0 800C74B0 AFB00014 */ sw $s0, 0x14($sp) -/* 0C80B4 800C74B4 AFB2001C */ sw $s2, 0x1c($sp) -/* 0C80B8 800C74B8 AFB10018 */ sw $s1, 0x18($sp) -/* 0C80BC 800C74BC 3C108013 */ lui $s0, %hi(D_8012ACA0) # $s0, 0x8013 -/* 0C80C0 800C74C0 3C13800E */ lui $s3, %hi(D_800E3774) # $s3, 0x800e -/* 0C80C4 800C74C4 3C14800E */ lui $s4, %hi(D_800E3778) # $s4, 0x800e -/* 0C80C8 800C74C8 3C15800E */ lui $s5, %hi(D_800E3770) # $s5, 0x800e -/* 0C80CC 800C74CC AFBF002C */ sw $ra, 0x2c($sp) -/* 0C80D0 800C74D0 AFA40038 */ sw $a0, 0x38($sp) -/* 0C80D4 800C74D4 AFA00034 */ sw $zero, 0x34($sp) -/* 0C80D8 800C74D8 26B53770 */ addiu $s5, %lo(D_800E3770) # addiu $s5, $s5, 0x3770 -/* 0C80DC 800C74DC 26943778 */ addiu $s4, %lo(D_800E3778) # addiu $s4, $s4, 0x3778 -/* 0C80E0 800C74E0 26733774 */ addiu $s3, %lo(D_800E3774) # addiu $s3, $s3, 0x3774 -/* 0C80E4 800C74E4 2610ACA0 */ addiu $s0, %lo(D_8012ACA0) # addiu $s0, $s0, -0x5360 -/* 0C80E8 800C74E8 27B10034 */ addiu $s1, $sp, 0x34 -/* 0C80EC 800C74EC 2412000A */ li $s2, 10 -.L800C74F0: -/* 0C80F0 800C74F0 02002025 */ move $a0, $s0 -.L800C74F4: -/* 0C80F4 800C74F4 02202825 */ move $a1, $s1 -/* 0C80F8 800C74F8 0C0322EC */ jal osRecvMesg -/* 0C80FC 800C74FC 24060001 */ li $a2, 1 -/* 0C8100 800C7500 8FAE0034 */ lw $t6, 0x34($sp) -/* 0C8104 800C7504 00000000 */ nop -/* 0C8108 800C7508 15D2FFFA */ bne $t6, $s2, .L800C74F4 -/* 0C810C 800C750C 02002025 */ move $a0, $s0 -/* 0C8110 800C7510 8E640000 */ lw $a0, ($s3) -/* 0C8114 800C7514 8E860000 */ lw $a2, ($s4) -/* 0C8118 800C7518 0C01B8BA */ jal func_8006E2E8 -/* 0C811C 800C751C 2405FFFF */ li $a1, -1 -/* 0C8120 800C7520 1000FFF3 */ b .L800C74F0 -/* 0C8124 800C7524 AEA00000 */ sw $zero, ($s5) -/* 0C8128 800C7528 00000000 */ nop -/* 0C812C 800C752C 00000000 */ nop -/* 0C8130 800C7530 8FBF002C */ lw $ra, 0x2c($sp) -/* 0C8134 800C7534 8FB00014 */ lw $s0, 0x14($sp) -/* 0C8138 800C7538 8FB10018 */ lw $s1, 0x18($sp) -/* 0C813C 800C753C 8FB2001C */ lw $s2, 0x1c($sp) -/* 0C8140 800C7540 8FB30020 */ lw $s3, 0x20($sp) -/* 0C8144 800C7544 8FB40024 */ lw $s4, 0x24($sp) -/* 0C8148 800C7548 8FB50028 */ lw $s5, 0x28($sp) -/* 0C814C 800C754C 03E00008 */ jr $ra -/* 0C8150 800C7550 27BD0038 */ addiu $sp, $sp, 0x38 - -/* 0C8154 800C7554 00000000 */ nop -/* 0C8158 800C7558 00000000 */ nop -/* 0C815C 800C755C 00000000 */ nop diff --git a/asm/unknown_0C81A0.s b/asm/unknown_0C81A0.s deleted file mode 100755 index 53b11d89..00000000 --- a/asm/unknown_0C81A0.s +++ /dev/null @@ -1,179 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -/* 0C81A0 800C75A0 03E00008 */ jr $ra -/* 0C81A4 800C75A4 00000000 */ nop - -/* 0C81A8 800C75A8 03E00008 */ jr $ra -/* 0C81AC 800C75AC 00000000 */ nop - -glabel func_800C75B0 -/* 0C81B0 800C75B0 908E0003 */ lbu $t6, 3($a0) -/* 0C81B4 800C75B4 15C00037 */ bnez $t6, .L800C7694 -/* 0C81B8 800C75B8 00000000 */ nop -/* 0C81BC 800C75BC 848F000E */ lh $t7, 0xe($a0) -/* 0C81C0 800C75C0 24090001 */ li $t1, 1 -/* 0C81C4 800C75C4 A0890003 */ sb $t1, 3($a0) -/* 0C81C8 800C75C8 19E00032 */ blez $t7, .L800C7694 -/* 0C81CC 800C75CC 00001025 */ move $v0, $zero -/* 0C81D0 800C75D0 00801825 */ move $v1, $a0 -/* 0C81D4 800C75D4 240A0001 */ li $t2, 1 -/* 0C81D8 800C75D8 8C780010 */ lw $t8, 0x10($v1) -.L800C75DC: -/* 0C81DC 800C75DC 0305C821 */ addu $t9, $t8, $a1 -/* 0C81E0 800C75E0 AC790010 */ sw $t9, 0x10($v1) -/* 0C81E4 800C75E4 932E000E */ lbu $t6, 0xe($t9) -/* 0C81E8 800C75E8 03203025 */ move $a2, $t9 -/* 0C81EC 800C75EC 55C00024 */ bnezl $t6, .L800C7680 -/* 0C81F0 800C75F0 8498000E */ lh $t8, 0xe($a0) -/* 0C81F4 800C75F4 8F2F0000 */ lw $t7, ($t9) -/* 0C81F8 800C75F8 A329000E */ sb $t1, 0xe($t9) -/* 0C81FC 800C75FC 01E5C021 */ addu $t8, $t7, $a1 -/* 0C8200 800C7600 AF380000 */ sw $t8, ($t9) -/* 0C8204 800C7604 8F390004 */ lw $t9, 4($t9) -/* 0C8208 800C7608 8CCF0008 */ lw $t7, 8($a2) -/* 0C820C 800C760C 03257021 */ addu $t6, $t9, $a1 -/* 0C8210 800C7610 01E5C021 */ addu $t8, $t7, $a1 -/* 0C8214 800C7614 ACCE0004 */ sw $t6, 4($a2) -/* 0C8218 800C7618 ACD80008 */ sw $t8, 8($a2) -/* 0C821C 800C761C 93190009 */ lbu $t9, 9($t8) -/* 0C8220 800C7620 03004025 */ move $t0, $t8 -/* 0C8224 800C7624 57200016 */ bnezl $t9, .L800C7680 -/* 0C8228 800C7628 8498000E */ lh $t8, 0xe($a0) -/* 0C822C 800C762C 8F0E0000 */ lw $t6, ($t8) -/* 0C8230 800C7630 93060008 */ lbu $a2, 8($t8) -/* 0C8234 800C7634 A3090009 */ sb $t1, 9($t8) -/* 0C8238 800C7638 01C77821 */ addu $t7, $t6, $a3 -/* 0C823C 800C763C 14C00009 */ bnez $a2, .L800C7664 -/* 0C8240 800C7640 AF0F0000 */ sw $t7, ($t8) -/* 0C8244 800C7644 8F180010 */ lw $t8, 0x10($t8) -/* 0C8248 800C7648 8D06000C */ lw $a2, 0xc($t0) -/* 0C824C 800C764C 0305C821 */ addu $t9, $t8, $a1 -/* 0C8250 800C7650 10C0000A */ beqz $a2, .L800C767C -/* 0C8254 800C7654 AD190010 */ sw $t9, 0x10($t0) -/* 0C8258 800C7658 00C57021 */ addu $t6, $a2, $a1 -/* 0C825C 800C765C 10000007 */ b .L800C767C -/* 0C8260 800C7660 AD0E000C */ sw $t6, 0xc($t0) -.L800C7664: -/* 0C8264 800C7664 55460006 */ bnel $t2, $a2, .L800C7680 -/* 0C8268 800C7668 8498000E */ lh $t8, 0xe($a0) -/* 0C826C 800C766C 8D06000C */ lw $a2, 0xc($t0) -/* 0C8270 800C7670 10C00002 */ beqz $a2, .L800C767C -/* 0C8274 800C7674 00C57821 */ addu $t7, $a2, $a1 -/* 0C8278 800C7678 AD0F000C */ sw $t7, 0xc($t0) -.L800C767C: -/* 0C827C 800C767C 8498000E */ lh $t8, 0xe($a0) -.L800C7680: -/* 0C8280 800C7680 24420001 */ addiu $v0, $v0, 1 -/* 0C8284 800C7684 24630004 */ addiu $v1, $v1, 4 -/* 0C8288 800C7688 0058082A */ slt $at, $v0, $t8 -/* 0C828C 800C768C 5420FFD3 */ bnezl $at, .L800C75DC -/* 0C8290 800C7690 8C780010 */ lw $t8, 0x10($v1) -.L800C7694: -/* 0C8294 800C7694 03E00008 */ jr $ra -/* 0C8298 800C7698 00000000 */ nop - -/* 0C829C 800C769C 03E00008 */ jr $ra -/* 0C82A0 800C76A0 00000000 */ nop - -glabel func_800C76A4 -/* 0C82A4 800C76A4 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0C82A8 800C76A8 AFBF002C */ sw $ra, 0x2c($sp) -/* 0C82AC 800C76AC AFB40028 */ sw $s4, 0x28($sp) -/* 0C82B0 800C76B0 AFB30024 */ sw $s3, 0x24($sp) -/* 0C82B4 800C76B4 AFB20020 */ sw $s2, 0x20($sp) -/* 0C82B8 800C76B8 AFB1001C */ sw $s1, 0x1c($sp) -/* 0C82BC 800C76BC AFB00018 */ sw $s0, 0x18($sp) -/* 0C82C0 800C76C0 848E0000 */ lh $t6, ($a0) -/* 0C82C4 800C76C4 24014231 */ li $at, 16945 -/* 0C82C8 800C76C8 00808025 */ move $s0, $a0 -/* 0C82CC 800C76CC 15C1002E */ bne $t6, $at, .L800C7788 -/* 0C82D0 800C76D0 00A08825 */ move $s1, $a1 -/* 0C82D4 800C76D4 848F0002 */ lh $t7, 2($a0) -/* 0C82D8 800C76D8 00009825 */ move $s3, $zero -/* 0C82DC 800C76DC 00809025 */ move $s2, $a0 -/* 0C82E0 800C76E0 19E00029 */ blez $t7, .L800C7788 -/* 0C82E4 800C76E4 24140001 */ li $s4, 1 -/* 0C82E8 800C76E8 8E580004 */ lw $t8, 4($s2) -.L800C76EC: -/* 0C82EC 800C76EC 0310C821 */ addu $t9, $t8, $s0 -/* 0C82F0 800C76F0 1320001F */ beqz $t9, .L800C7770 -/* 0C82F4 800C76F4 AE590004 */ sw $t9, 4($s2) -/* 0C82F8 800C76F8 932E0002 */ lbu $t6, 2($t9) -/* 0C82FC 800C76FC 03206825 */ move $t5, $t9 -/* 0C8300 800C7700 55C0001C */ bnezl $t6, .L800C7774 -/* 0C8304 800C7704 86180002 */ lh $t8, 2($s0) -/* 0C8308 800C7708 8F220008 */ lw $v0, 8($t9) -/* 0C830C 800C770C A3340002 */ sb $s4, 2($t9) -/* 0C8310 800C7710 00006025 */ move $t4, $zero -/* 0C8314 800C7714 10400005 */ beqz $v0, .L800C772C -/* 0C8318 800C7718 00502021 */ addu $a0, $v0, $s0 -/* 0C831C 800C771C AF240008 */ sw $a0, 8($t9) -/* 0C8320 800C7720 02002825 */ move $a1, $s0 -/* 0C8324 800C7724 0C031D6C */ jal func_800C75B0 -/* 0C8328 800C7728 02203825 */ move $a3, $s1 -.L800C772C: -/* 0C832C 800C772C 85B80000 */ lh $t8, ($t5) -/* 0C8330 800C7730 01A05825 */ move $t3, $t5 -/* 0C8334 800C7734 5B00000F */ blezl $t8, .L800C7774 -/* 0C8338 800C7738 86180002 */ lh $t8, 2($s0) -/* 0C833C 800C773C 8D79000C */ lw $t9, 0xc($t3) -.L800C7740: -/* 0C8340 800C7740 02002825 */ move $a1, $s0 -/* 0C8344 800C7744 03302021 */ addu $a0, $t9, $s0 -/* 0C8348 800C7748 10800003 */ beqz $a0, .L800C7758 -/* 0C834C 800C774C AD64000C */ sw $a0, 0xc($t3) -/* 0C8350 800C7750 0C031D6C */ jal func_800C75B0 -/* 0C8354 800C7754 02203825 */ move $a3, $s1 -.L800C7758: -/* 0C8358 800C7758 85AF0000 */ lh $t7, ($t5) -/* 0C835C 800C775C 258C0001 */ addiu $t4, $t4, 1 -/* 0C8360 800C7760 256B0004 */ addiu $t3, $t3, 4 -/* 0C8364 800C7764 018F082A */ slt $at, $t4, $t7 -/* 0C8368 800C7768 5420FFF5 */ bnezl $at, .L800C7740 -/* 0C836C 800C776C 8D79000C */ lw $t9, 0xc($t3) -.L800C7770: -/* 0C8370 800C7770 86180002 */ lh $t8, 2($s0) -.L800C7774: -/* 0C8374 800C7774 26730001 */ addiu $s3, $s3, 1 -/* 0C8378 800C7778 26520004 */ addiu $s2, $s2, 4 -/* 0C837C 800C777C 0278082A */ slt $at, $s3, $t8 -/* 0C8380 800C7780 5420FFDA */ bnezl $at, .L800C76EC -/* 0C8384 800C7784 8E580004 */ lw $t8, 4($s2) -.L800C7788: -/* 0C8388 800C7788 8FBF002C */ lw $ra, 0x2c($sp) -/* 0C838C 800C778C 8FB00018 */ lw $s0, 0x18($sp) -/* 0C8390 800C7790 8FB1001C */ lw $s1, 0x1c($sp) -/* 0C8394 800C7794 8FB20020 */ lw $s2, 0x20($sp) -/* 0C8398 800C7798 8FB30024 */ lw $s3, 0x24($sp) -/* 0C839C 800C779C 8FB40028 */ lw $s4, 0x28($sp) -/* 0C83A0 800C77A0 03E00008 */ jr $ra -/* 0C83A4 800C77A4 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_800C77A8 -/* 0C83A8 800C77A8 848E0002 */ lh $t6, 2($a0) -/* 0C83AC 800C77AC 00001025 */ move $v0, $zero -/* 0C83B0 800C77B0 00801825 */ move $v1, $a0 -/* 0C83B4 800C77B4 19C0000A */ blez $t6, .L800C77E0 -/* 0C83B8 800C77B8 00000000 */ nop -/* 0C83BC 800C77BC 8C6F0004 */ lw $t7, 4($v1) -.L800C77C0: -/* 0C83C0 800C77C0 24420001 */ addiu $v0, $v0, 1 -/* 0C83C4 800C77C4 24630008 */ addiu $v1, $v1, 8 -/* 0C83C8 800C77C8 01E5C021 */ addu $t8, $t7, $a1 -/* 0C83CC 800C77CC AC78FFFC */ sw $t8, -4($v1) -/* 0C83D0 800C77D0 84990002 */ lh $t9, 2($a0) -/* 0C83D4 800C77D4 0059082A */ slt $at, $v0, $t9 -/* 0C83D8 800C77D8 5420FFF9 */ bnezl $at, .L800C77C0 -/* 0C83DC 800C77DC 8C6F0004 */ lw $t7, 4($v1) -.L800C77E0: -/* 0C83E0 800C77E0 03E00008 */ jr $ra -/* 0C83E4 800C77E4 00000000 */ nop - -/* 0C83E8 800C77E8 00000000 */ nop -/* 0C83EC 800C77EC 00000000 */ nop diff --git a/asm/unknown_0C8650.s b/asm/unknown_0C8650.s deleted file mode 100755 index 9d213c12..00000000 --- a/asm/unknown_0C8650.s +++ /dev/null @@ -1,14 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_800C7A50 -/* 0C8650 800C7A50 03E00008 */ jr $ra -/* 0C8654 800C7A54 8C82002C */ lw $v0, 0x2c($a0) - -/* 0C8658 800C7A58 00000000 */ nop -/* 0C865C 800C7A5C 00000000 */ nop diff --git a/asm/unknown_0C86A0.s b/asm/unknown_0C86A0.s deleted file mode 100755 index ee557e62..00000000 --- a/asm/unknown_0C86A0.s +++ /dev/null @@ -1,764 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -/* 0C86A0 800C7AA0 8C8E0004 */ lw $t6, 4($a0) -/* 0C86A4 800C7AA4 00803025 */ move $a2, $a0 -/* 0C86A8 800C7AA8 00804025 */ move $t0, $a0 -/* 0C86AC 800C7AAC ACAE0000 */ sw $t6, ($a1) -/* 0C86B0 800C7AB0 8C8F000C */ lw $t7, 0xc($a0) -/* 0C86B4 800C7AB4 00001025 */ move $v0, $zero -/* 0C86B8 800C7AB8 00A01825 */ move $v1, $a1 -/* 0C86BC 800C7ABC ACAF0004 */ sw $t7, 4($a1) -/* 0C86C0 800C7AC0 8C980010 */ lw $t8, 0x10($a0) -/* 0C86C4 800C7AC4 24040010 */ li $a0, 16 -/* 0C86C8 800C7AC8 00A03825 */ move $a3, $a1 -/* 0C86CC 800C7ACC ACB80008 */ sw $t8, 8($a1) -.L800C7AD0: -/* 0C86D0 800C7AD0 8CD90018 */ lw $t9, 0x18($a2) -/* 0C86D4 800C7AD4 24420002 */ addiu $v0, $v0, 2 -/* 0C86D8 800C7AD8 24630008 */ addiu $v1, $v1, 8 -/* 0C86DC 800C7ADC AC790004 */ sw $t9, 4($v1) -/* 0C86E0 800C7AE0 8CC90058 */ lw $t1, 0x58($a2) -/* 0C86E4 800C7AE4 24C60008 */ addiu $a2, $a2, 8 -/* 0C86E8 800C7AE8 24E70002 */ addiu $a3, $a3, 2 -/* 0C86EC 800C7AEC AC690044 */ sw $t1, 0x44($v1) -/* 0C86F0 800C7AF0 910A0098 */ lbu $t2, 0x98($t0) -/* 0C86F4 800C7AF4 25080002 */ addiu $t0, $t0, 2 -/* 0C86F8 800C7AF8 A0EA008A */ sb $t2, 0x8a($a3) -/* 0C86FC 800C7AFC 910B00A6 */ lbu $t3, 0xa6($t0) -/* 0C8700 800C7B00 A0EB009A */ sb $t3, 0x9a($a3) -/* 0C8704 800C7B04 8CCC00B0 */ lw $t4, 0xb0($a2) -/* 0C8708 800C7B08 AC6C00A4 */ sw $t4, 0xa4($v1) -/* 0C870C 800C7B0C 8CCD0014 */ lw $t5, 0x14($a2) -/* 0C8710 800C7B10 AC6D0008 */ sw $t5, 8($v1) -/* 0C8714 800C7B14 8CCE0054 */ lw $t6, 0x54($a2) -/* 0C8718 800C7B18 AC6E0048 */ sw $t6, 0x48($v1) -/* 0C871C 800C7B1C 910F0097 */ lbu $t7, 0x97($t0) -/* 0C8720 800C7B20 A0EF008B */ sb $t7, 0x8b($a3) -/* 0C8724 800C7B24 911800A7 */ lbu $t8, 0xa7($t0) -/* 0C8728 800C7B28 A0F8009B */ sb $t8, 0x9b($a3) -/* 0C872C 800C7B2C 8CD900B4 */ lw $t9, 0xb4($a2) -/* 0C8730 800C7B30 1444FFE7 */ bne $v0, $a0, .L800C7AD0 -/* 0C8734 800C7B34 AC7900A8 */ sw $t9, 0xa8($v1) -/* 0C8738 800C7B38 03E00008 */ jr $ra -/* 0C873C 800C7B3C 00000000 */ nop - -/* 0C8740 800C7B40 8CAE0000 */ lw $t6, ($a1) -/* 0C8744 800C7B44 00801825 */ move $v1, $a0 -/* 0C8748 800C7B48 00803825 */ move $a3, $a0 -/* 0C874C 800C7B4C AC8E0004 */ sw $t6, 4($a0) -/* 0C8750 800C7B50 8CAF0004 */ lw $t7, 4($a1) -/* 0C8754 800C7B54 00001025 */ move $v0, $zero -/* 0C8758 800C7B58 00A03025 */ move $a2, $a1 -/* 0C875C 800C7B5C AC8F000C */ sw $t7, 0xc($a0) -/* 0C8760 800C7B60 8CB80008 */ lw $t8, 8($a1) -/* 0C8764 800C7B64 00A04025 */ move $t0, $a1 -/* 0C8768 800C7B68 AC980010 */ sw $t8, 0x10($a0) -/* 0C876C 800C7B6C 24040010 */ li $a0, 16 -.L800C7B70: -/* 0C8770 800C7B70 8CD9000C */ lw $t9, 0xc($a2) -/* 0C8774 800C7B74 24420002 */ addiu $v0, $v0, 2 -/* 0C8778 800C7B78 24630008 */ addiu $v1, $v1, 8 -/* 0C877C 800C7B7C AC790010 */ sw $t9, 0x10($v1) -/* 0C8780 800C7B80 8CC9004C */ lw $t1, 0x4c($a2) -/* 0C8784 800C7B84 24C60008 */ addiu $a2, $a2, 8 -/* 0C8788 800C7B88 24E70002 */ addiu $a3, $a3, 2 -/* 0C878C 800C7B8C AC690050 */ sw $t1, 0x50($v1) -/* 0C8790 800C7B90 910A008C */ lbu $t2, 0x8c($t0) -/* 0C8794 800C7B94 25080002 */ addiu $t0, $t0, 2 -/* 0C8798 800C7B98 A0EA0096 */ sb $t2, 0x96($a3) -/* 0C879C 800C7B9C 910B009A */ lbu $t3, 0x9a($t0) -/* 0C87A0 800C7BA0 A0EB00A6 */ sb $t3, 0xa6($a3) -/* 0C87A4 800C7BA4 8CCC00A4 */ lw $t4, 0xa4($a2) -/* 0C87A8 800C7BA8 AC6C00B0 */ sw $t4, 0xb0($v1) -/* 0C87AC 800C7BAC 8CCD0008 */ lw $t5, 8($a2) -/* 0C87B0 800C7BB0 AC6D0014 */ sw $t5, 0x14($v1) -/* 0C87B4 800C7BB4 8CCE0048 */ lw $t6, 0x48($a2) -/* 0C87B8 800C7BB8 AC6E0054 */ sw $t6, 0x54($v1) -/* 0C87BC 800C7BBC 910F008B */ lbu $t7, 0x8b($t0) -/* 0C87C0 800C7BC0 A0EF0097 */ sb $t7, 0x97($a3) -/* 0C87C4 800C7BC4 9118009B */ lbu $t8, 0x9b($t0) -/* 0C87C8 800C7BC8 A0F800A7 */ sb $t8, 0xa7($a3) -/* 0C87CC 800C7BCC 8CD900A8 */ lw $t9, 0xa8($a2) -/* 0C87D0 800C7BD0 1444FFE7 */ bne $v0, $a0, .L800C7B70 -/* 0C87D4 800C7BD4 AC7900B4 */ sw $t9, 0xb4($v1) -/* 0C87D8 800C7BD8 03E00008 */ jr $ra -/* 0C87DC 800C7BDC 00000000 */ nop - -glabel func_800C7BE0 -/* 0C87E0 800C7BE0 00851021 */ addu $v0, $a0, $a1 -/* 0C87E4 800C7BE4 904E0098 */ lbu $t6, 0x98($v0) -/* 0C87E8 800C7BE8 00057880 */ sll $t7, $a1, 2 -/* 0C87EC 800C7BEC 008F3021 */ addu $a2, $a0, $t7 -/* 0C87F0 800C7BF0 51C0000D */ beql $t6, $zero, .L800C7C28 -/* 0C87F4 800C7BF4 8CC70018 */ lw $a3, 0x18($a2) -/* 0C87F8 800C7BF8 00057880 */ sll $t7, $a1, 2 -/* 0C87FC 800C7BFC 008F3021 */ addu $a2, $a0, $t7 -/* 0C8800 800C7C00 8CC70058 */ lw $a3, 0x58($a2) -/* 0C8804 800C7C04 90E30000 */ lbu $v1, ($a3) -/* 0C8808 800C7C08 24F80001 */ addiu $t8, $a3, 1 -/* 0C880C 800C7C0C ACD80058 */ sw $t8, 0x58($a2) -/* 0C8810 800C7C10 90590098 */ lbu $t9, 0x98($v0) -/* 0C8814 800C7C14 272EFFFF */ addiu $t6, $t9, -1 -/* 0C8818 800C7C18 A04E0098 */ sb $t6, 0x98($v0) -/* 0C881C 800C7C1C 03E00008 */ jr $ra -/* 0C8820 800C7C20 00601025 */ move $v0, $v1 - -/* 0C8824 800C7C24 8CC70018 */ lw $a3, 0x18($a2) -.L800C7C28: -/* 0C8828 800C7C28 240800FE */ li $t0, 254 -/* 0C882C 800C7C2C 90E30000 */ lbu $v1, ($a3) -/* 0C8830 800C7C30 24F80001 */ addiu $t8, $a3, 1 -/* 0C8834 800C7C34 ACD80018 */ sw $t8, 0x18($a2) -/* 0C8838 800C7C38 15030018 */ bne $t0, $v1, .L800C7C9C -/* 0C883C 800C7C3C 00000000 */ nop -/* 0C8840 800C7C40 93040000 */ lbu $a0, ($t8) -/* 0C8844 800C7C44 27190001 */ addiu $t9, $t8, 1 -/* 0C8848 800C7C48 ACD90018 */ sw $t9, 0x18($a2) -/* 0C884C 800C7C4C 11040013 */ beq $t0, $a0, .L800C7C9C -/* 0C8850 800C7C50 272E0001 */ addiu $t6, $t9, 1 -/* 0C8854 800C7C54 93230000 */ lbu $v1, ($t9) -/* 0C8858 800C7C58 ACCE0018 */ sw $t6, 0x18($a2) -/* 0C885C 800C7C5C 91C50000 */ lbu $a1, ($t6) -/* 0C8860 800C7C60 25CF0001 */ addiu $t7, $t6, 1 -/* 0C8864 800C7C64 0004CA00 */ sll $t9, $a0, 8 -/* 0C8868 800C7C68 ACCF0018 */ sw $t7, 0x18($a2) -/* 0C886C 800C7C6C 03237021 */ addu $t6, $t9, $v1 -/* 0C8870 800C7C70 01EE7823 */ subu $t7, $t7, $t6 -/* 0C8874 800C7C74 25F9FFFC */ addiu $t9, $t7, -4 -/* 0C8878 800C7C78 ACD90058 */ sw $t9, 0x58($a2) -/* 0C887C 800C7C7C A0450098 */ sb $a1, 0x98($v0) -/* 0C8880 800C7C80 8CC70058 */ lw $a3, 0x58($a2) -/* 0C8884 800C7C84 90E30000 */ lbu $v1, ($a3) -/* 0C8888 800C7C88 24F80001 */ addiu $t8, $a3, 1 -/* 0C888C 800C7C8C ACD80058 */ sw $t8, 0x58($a2) -/* 0C8890 800C7C90 904E0098 */ lbu $t6, 0x98($v0) -/* 0C8894 800C7C94 25CFFFFF */ addiu $t7, $t6, -1 -/* 0C8898 800C7C98 A04F0098 */ sb $t7, 0x98($v0) -.L800C7C9C: -/* 0C889C 800C7C9C 03E00008 */ jr $ra -/* 0C88A0 800C7CA0 00601025 */ move $v0, $v1 - -glabel func_800C7CA4 -/* 0C88A4 800C7CA4 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C88A8 800C7CA8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0C88AC 800C7CAC 01402025 */ move $a0, $t2 -/* 0C88B0 800C7CB0 0C031EF8 */ jal func_800C7BE0 -/* 0C88B4 800C7CB4 01602825 */ move $a1, $t3 -/* 0C88B8 800C7CB8 304E0080 */ andi $t6, $v0, 0x80 -/* 0C88BC 800C7CBC 11C0000A */ beqz $t6, .L800C7CE8 -/* 0C88C0 800C7CC0 00404825 */ move $t1, $v0 -/* 0C88C4 800C7CC4 3049007F */ andi $t1, $v0, 0x7f -.L800C7CC8: -/* 0C88C8 800C7CC8 01402025 */ move $a0, $t2 -/* 0C88CC 800C7CCC 0C031EF8 */ jal func_800C7BE0 -/* 0C88D0 800C7CD0 01602825 */ move $a1, $t3 -/* 0C88D4 800C7CD4 000979C0 */ sll $t7, $t1, 7 -/* 0C88D8 800C7CD8 3058007F */ andi $t8, $v0, 0x7f -/* 0C88DC 800C7CDC 30590080 */ andi $t9, $v0, 0x80 -/* 0C88E0 800C7CE0 1720FFF9 */ bnez $t9, .L800C7CC8 -/* 0C88E4 800C7CE4 01F84821 */ addu $t1, $t7, $t8 -.L800C7CE8: -/* 0C88E8 800C7CE8 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C88EC 800C7CEC 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0C88F0 800C7CF0 01201025 */ move $v0, $t1 -/* 0C88F4 800C7CF4 03E00008 */ jr $ra -/* 0C88F8 800C7CF8 00000000 */ nop - -/* 0C88FC 800C7CFC 03E00008 */ jr $ra -/* 0C8900 800C7D00 00000000 */ nop - -glabel func_800C7D04 -/* 0C8904 800C7D04 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0C8908 800C7D08 AFB00018 */ sw $s0, 0x18($sp) -/* 0C890C 800C7D0C 00A08025 */ move $s0, $a1 -/* 0C8910 800C7D10 AFBF001C */ sw $ra, 0x1c($sp) -/* 0C8914 800C7D14 00806025 */ move $t4, $a0 -/* 0C8918 800C7D18 2409FFFF */ li $t1, -1 -/* 0C891C 800C7D1C 8C860010 */ lw $a2, 0x10($a0) -/* 0C8920 800C7D20 24050010 */ li $a1, 16 -/* 0C8924 800C7D24 8FAB0024 */ lw $t3, 0x24($sp) -/* 0C8928 800C7D28 00001025 */ move $v0, $zero -/* 0C892C 800C7D2C 8D8E0004 */ lw $t6, 4($t4) -.L800C7D30: -/* 0C8930 800C7D30 004E7806 */ srlv $t7, $t6, $v0 -/* 0C8934 800C7D34 31F80001 */ andi $t8, $t7, 1 -/* 0C8938 800C7D38 53000010 */ beql $t8, $zero, .L800C7D7C -/* 0C893C 800C7D3C 24420001 */ addiu $v0, $v0, 1 -/* 0C8940 800C7D40 8D8E0014 */ lw $t6, 0x14($t4) -/* 0C8944 800C7D44 0002C880 */ sll $t9, $v0, 2 -/* 0C8948 800C7D48 01991821 */ addu $v1, $t4, $t9 -/* 0C894C 800C7D4C 51C00005 */ beql $t6, $zero, .L800C7D64 -/* 0C8950 800C7D50 8C6400B8 */ lw $a0, 0xb8($v1) -/* 0C8954 800C7D54 8C6F00B8 */ lw $t7, 0xb8($v1) -/* 0C8958 800C7D58 01E6C023 */ subu $t8, $t7, $a2 -/* 0C895C 800C7D5C AC7800B8 */ sw $t8, 0xb8($v1) -/* 0C8960 800C7D60 8C6400B8 */ lw $a0, 0xb8($v1) -.L800C7D64: -/* 0C8964 800C7D64 0089082B */ sltu $at, $a0, $t1 -/* 0C8968 800C7D68 50200004 */ beql $at, $zero, .L800C7D7C -/* 0C896C 800C7D6C 24420001 */ addiu $v0, $v0, 1 -/* 0C8970 800C7D70 00804825 */ move $t1, $a0 -/* 0C8974 800C7D74 00405825 */ move $t3, $v0 -/* 0C8978 800C7D78 24420001 */ addiu $v0, $v0, 1 -.L800C7D7C: -/* 0C897C 800C7D7C 5445FFEC */ bnel $v0, $a1, .L800C7D30 -/* 0C8980 800C7D80 8D8E0004 */ lw $t6, 4($t4) -/* 0C8984 800C7D84 01802025 */ move $a0, $t4 -/* 0C8988 800C7D88 0C031EF8 */ jal func_800C7BE0 -/* 0C898C 800C7D8C 01602825 */ move $a1, $t3 -/* 0C8990 800C7D90 240100FF */ li $at, 255 -/* 0C8994 800C7D94 304A00FF */ andi $t2, $v0, 0xff -/* 0C8998 800C7D98 1441005A */ bne $v0, $at, .L800C7F04 -/* 0C899C 800C7D9C 00401825 */ move $v1, $v0 -/* 0C89A0 800C7DA0 01802025 */ move $a0, $t4 -/* 0C89A4 800C7DA4 0C031EF8 */ jal func_800C7BE0 -/* 0C89A8 800C7DA8 01602825 */ move $a1, $t3 -/* 0C89AC 800C7DAC 24010051 */ li $at, 81 -/* 0C89B0 800C7DB0 304600FF */ andi $a2, $v0, 0xff -/* 0C89B4 800C7DB4 14410014 */ bne $v0, $at, .L800C7E08 -/* 0C89B8 800C7DB8 00401825 */ move $v1, $v0 -/* 0C89BC 800C7DBC 24190003 */ li $t9, 3 -/* 0C89C0 800C7DC0 A6190000 */ sh $t9, ($s0) -/* 0C89C4 800C7DC4 A20A0008 */ sb $t2, 8($s0) -/* 0C89C8 800C7DC8 A2060009 */ sb $a2, 9($s0) -/* 0C89CC 800C7DCC 01802025 */ move $a0, $t4 -/* 0C89D0 800C7DD0 0C031EF8 */ jal func_800C7BE0 -/* 0C89D4 800C7DD4 01602825 */ move $a1, $t3 -/* 0C89D8 800C7DD8 A202000B */ sb $v0, 0xb($s0) -/* 0C89DC 800C7DDC 01802025 */ move $a0, $t4 -/* 0C89E0 800C7DE0 0C031EF8 */ jal func_800C7BE0 -/* 0C89E4 800C7DE4 01602825 */ move $a1, $t3 -/* 0C89E8 800C7DE8 A202000C */ sb $v0, 0xc($s0) -/* 0C89EC 800C7DEC 01802025 */ move $a0, $t4 -/* 0C89F0 800C7DF0 0C031EF8 */ jal func_800C7BE0 -/* 0C89F4 800C7DF4 01602825 */ move $a1, $t3 -/* 0C89F8 800C7DF8 A202000D */ sb $v0, 0xd($s0) -/* 0C89FC 800C7DFC 018B7021 */ addu $t6, $t4, $t3 -/* 0C8A00 800C7E00 10000067 */ b .L800C7FA0 -/* 0C8A04 800C7E04 A1C000A8 */ sb $zero, 0xa8($t6) -.L800C7E08: -/* 0C8A08 800C7E08 2401002F */ li $at, 47 -/* 0C8A0C 800C7E0C 5461000E */ bnel $v1, $at, .L800C7E48 -/* 0C8A10 800C7E10 2401002E */ li $at, 46 -/* 0C8A14 800C7E14 8D8F0004 */ lw $t7, 4($t4) -/* 0C8A18 800C7E18 24180001 */ li $t8, 1 -/* 0C8A1C 800C7E1C 0178C804 */ sllv $t9, $t8, $t3 -/* 0C8A20 800C7E20 01F97026 */ xor $t6, $t7, $t9 -/* 0C8A24 800C7E24 11C00004 */ beqz $t6, .L800C7E38 -/* 0C8A28 800C7E28 AD8E0004 */ sw $t6, 4($t4) -/* 0C8A2C 800C7E2C 240F0012 */ li $t7, 18 -/* 0C8A30 800C7E30 1000005B */ b .L800C7FA0 -/* 0C8A34 800C7E34 A60F0000 */ sh $t7, ($s0) -.L800C7E38: -/* 0C8A38 800C7E38 24190004 */ li $t9, 4 -/* 0C8A3C 800C7E3C 10000058 */ b .L800C7FA0 -/* 0C8A40 800C7E40 A6190000 */ sh $t9, ($s0) -/* 0C8A44 800C7E44 2401002E */ li $at, 46 -.L800C7E48: -/* 0C8A48 800C7E48 1461000B */ bne $v1, $at, .L800C7E78 -/* 0C8A4C 800C7E4C 01802025 */ move $a0, $t4 -/* 0C8A50 800C7E50 0C031EF8 */ jal func_800C7BE0 -/* 0C8A54 800C7E54 01602825 */ move $a1, $t3 -/* 0C8A58 800C7E58 01802025 */ move $a0, $t4 -/* 0C8A5C 800C7E5C 0C031EF8 */ jal func_800C7BE0 -/* 0C8A60 800C7E60 01602825 */ move $a1, $t3 -/* 0C8A64 800C7E64 018B7021 */ addu $t6, $t4, $t3 -/* 0C8A68 800C7E68 A1C000A8 */ sb $zero, 0xa8($t6) -/* 0C8A6C 800C7E6C 24180013 */ li $t8, 19 -/* 0C8A70 800C7E70 1000004B */ b .L800C7FA0 -/* 0C8A74 800C7E74 A6180000 */ sh $t8, ($s0) -.L800C7E78: -/* 0C8A78 800C7E78 2401002D */ li $at, 45 -/* 0C8A7C 800C7E7C 14610048 */ bne $v1, $at, .L800C7FA0 -/* 0C8A80 800C7E80 000B7880 */ sll $t7, $t3, 2 -/* 0C8A84 800C7E84 018F6821 */ addu $t5, $t4, $t7 -/* 0C8A88 800C7E88 8DA20018 */ lw $v0, 0x18($t5) -/* 0C8A8C 800C7E8C 240100FF */ li $at, 255 -/* 0C8A90 800C7E90 90440001 */ lbu $a0, 1($v0) -/* 0C8A94 800C7E94 24420001 */ addiu $v0, $v0, 1 -/* 0C8A98 800C7E98 24590005 */ addiu $t9, $v0, 5 -/* 0C8A9C 800C7E9C 14800004 */ bnez $a0, .L800C7EB0 -/* 0C8AA0 800C7EA0 9045FFFF */ lbu $a1, -1($v0) -/* 0C8AA4 800C7EA4 A0450000 */ sb $a1, ($v0) -/* 0C8AA8 800C7EA8 10000011 */ b .L800C7EF0 -/* 0C8AAC 800C7EAC ADB90018 */ sw $t9, 0x18($t5) -.L800C7EB0: -/* 0C8AB0 800C7EB0 10810002 */ beq $a0, $at, .L800C7EBC -/* 0C8AB4 800C7EB4 248EFFFF */ addiu $t6, $a0, -1 -/* 0C8AB8 800C7EB8 A04E0000 */ sb $t6, ($v0) -.L800C7EBC: -/* 0C8ABC 800C7EBC 904F0002 */ lbu $t7, 2($v0) -/* 0C8AC0 800C7EC0 90430001 */ lbu $v1, 1($v0) -/* 0C8AC4 800C7EC4 904E0003 */ lbu $t6, 3($v0) -/* 0C8AC8 800C7EC8 000FCC00 */ sll $t9, $t7, 0x10 -/* 0C8ACC 800C7ECC 0003C600 */ sll $t8, $v1, 0x18 -/* 0C8AD0 800C7ED0 904F0004 */ lbu $t7, 4($v0) -/* 0C8AD4 800C7ED4 03191821 */ addu $v1, $t8, $t9 -/* 0C8AD8 800C7ED8 000EC200 */ sll $t8, $t6, 8 -/* 0C8ADC 800C7EDC 00781821 */ addu $v1, $v1, $t8 -/* 0C8AE0 800C7EE0 24420005 */ addiu $v0, $v0, 5 -/* 0C8AE4 800C7EE4 006F1821 */ addu $v1, $v1, $t7 -/* 0C8AE8 800C7EE8 0043C823 */ subu $t9, $v0, $v1 -/* 0C8AEC 800C7EEC ADB90018 */ sw $t9, 0x18($t5) -.L800C7EF0: -/* 0C8AF0 800C7EF0 018B7021 */ addu $t6, $t4, $t3 -/* 0C8AF4 800C7EF4 A1C000A8 */ sb $zero, 0xa8($t6) -/* 0C8AF8 800C7EF8 24180014 */ li $t8, 20 -/* 0C8AFC 800C7EFC 10000028 */ b .L800C7FA0 -/* 0C8B00 800C7F00 A6180000 */ sh $t8, ($s0) -.L800C7F04: -/* 0C8B04 800C7F04 240F0001 */ li $t7, 1 -/* 0C8B08 800C7F08 30790080 */ andi $t9, $v1, 0x80 -/* 0C8B0C 800C7F0C 13200009 */ beqz $t9, .L800C7F34 -/* 0C8B10 800C7F10 A60F0000 */ sh $t7, ($s0) -/* 0C8B14 800C7F14 A20A0008 */ sb $t2, 8($s0) -/* 0C8B18 800C7F18 01802025 */ move $a0, $t4 -/* 0C8B1C 800C7F1C 0C031EF8 */ jal func_800C7BE0 -/* 0C8B20 800C7F20 01602825 */ move $a1, $t3 -/* 0C8B24 800C7F24 A2020009 */ sb $v0, 9($s0) -/* 0C8B28 800C7F28 018B7021 */ addu $t6, $t4, $t3 -/* 0C8B2C 800C7F2C 10000005 */ b .L800C7F44 -/* 0C8B30 800C7F30 A1CA00A8 */ sb $t2, 0xa8($t6) -.L800C7F34: -/* 0C8B34 800C7F34 018BC021 */ addu $t8, $t4, $t3 -/* 0C8B38 800C7F38 930F00A8 */ lbu $t7, 0xa8($t8) -/* 0C8B3C 800C7F3C A2020009 */ sb $v0, 9($s0) -/* 0C8B40 800C7F40 A20F0008 */ sb $t7, 8($s0) -.L800C7F44: -/* 0C8B44 800C7F44 92020008 */ lbu $v0, 8($s0) -/* 0C8B48 800C7F48 240100C0 */ li $at, 192 -/* 0C8B4C 800C7F4C 305900F0 */ andi $t9, $v0, 0xf0 -/* 0C8B50 800C7F50 13210012 */ beq $t9, $at, .L800C7F9C -/* 0C8B54 800C7F54 240100D0 */ li $at, 208 -/* 0C8B58 800C7F58 13210010 */ beq $t9, $at, .L800C7F9C -/* 0C8B5C 800C7F5C 01802025 */ move $a0, $t4 -/* 0C8B60 800C7F60 0C031EF8 */ jal func_800C7BE0 -/* 0C8B64 800C7F64 01602825 */ move $a1, $t3 -/* 0C8B68 800C7F68 920E0008 */ lbu $t6, 8($s0) -/* 0C8B6C 800C7F6C 24010090 */ li $at, 144 -/* 0C8B70 800C7F70 A202000A */ sb $v0, 0xa($s0) -/* 0C8B74 800C7F74 31D800F0 */ andi $t8, $t6, 0xf0 -/* 0C8B78 800C7F78 17010009 */ bne $t8, $at, .L800C7FA0 -/* 0C8B7C 800C7F7C 01805025 */ move $t2, $t4 -/* 0C8B80 800C7F80 AFA90028 */ sw $t1, 0x28($sp) -/* 0C8B84 800C7F84 0C031F29 */ jal func_800C7CA4 -/* 0C8B88 800C7F88 AFAB0024 */ sw $t3, 0x24($sp) -/* 0C8B8C 800C7F8C 8FA90028 */ lw $t1, 0x28($sp) -/* 0C8B90 800C7F90 8FAB0024 */ lw $t3, 0x24($sp) -/* 0C8B94 800C7F94 10000002 */ b .L800C7FA0 -/* 0C8B98 800C7F98 AE02000C */ sw $v0, 0xc($s0) -.L800C7F9C: -/* 0C8B9C 800C7F9C A200000A */ sb $zero, 0xa($s0) -.L800C7FA0: -/* 0C8BA0 800C7FA0 AE090004 */ sw $t1, 4($s0) -/* 0C8BA4 800C7FA4 8D8F000C */ lw $t7, 0xc($t4) -/* 0C8BA8 800C7FA8 AD890010 */ sw $t1, 0x10($t4) -/* 0C8BAC 800C7FAC 24010012 */ li $at, 18 -/* 0C8BB0 800C7FB0 01E9C821 */ addu $t9, $t7, $t1 -/* 0C8BB4 800C7FB4 AD99000C */ sw $t9, 0xc($t4) -/* 0C8BB8 800C7FB8 860E0000 */ lh $t6, ($s0) -/* 0C8BBC 800C7FBC 01805025 */ move $t2, $t4 -/* 0C8BC0 800C7FC0 000BC080 */ sll $t8, $t3, 2 -/* 0C8BC4 800C7FC4 51C10007 */ beql $t6, $at, .L800C7FE4 -/* 0C8BC8 800C7FC8 240E0001 */ li $t6, 1 -/* 0C8BCC 800C7FCC 0C031F29 */ jal func_800C7CA4 -/* 0C8BD0 800C7FD0 01986821 */ addu $t5, $t4, $t8 -/* 0C8BD4 800C7FD4 8DAF00B8 */ lw $t7, 0xb8($t5) -/* 0C8BD8 800C7FD8 01E2C821 */ addu $t9, $t7, $v0 -/* 0C8BDC 800C7FDC ADB900B8 */ sw $t9, 0xb8($t5) -/* 0C8BE0 800C7FE0 240E0001 */ li $t6, 1 -.L800C7FE4: -/* 0C8BE4 800C7FE4 AD8E0014 */ sw $t6, 0x14($t4) -/* 0C8BE8 800C7FE8 8FBF001C */ lw $ra, 0x1c($sp) -/* 0C8BEC 800C7FEC 8FB00018 */ lw $s0, 0x18($sp) -/* 0C8BF0 800C7FF0 27BD0030 */ addiu $sp, $sp, 0x30 -/* 0C8BF4 800C7FF4 03E00008 */ jr $ra -/* 0C8BF8 800C7FF8 00000000 */ nop - -glabel func_800C7FFC -/* 0C8BFC 800C7FFC 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0C8C00 800C8000 AFB40028 */ sw $s4, 0x28($sp) -/* 0C8C04 800C8004 AFB30024 */ sw $s3, 0x24($sp) -/* 0C8C08 800C8008 AFB20020 */ sw $s2, 0x20($sp) -/* 0C8C0C 800C800C AFB1001C */ sw $s1, 0x1c($sp) -/* 0C8C10 800C8010 AFB00018 */ sw $s0, 0x18($sp) -/* 0C8C14 800C8014 AFBF002C */ sw $ra, 0x2c($sp) -/* 0C8C18 800C8018 240E0001 */ li $t6, 1 -/* 0C8C1C 800C801C 00808025 */ move $s0, $a0 -/* 0C8C20 800C8020 00A0A025 */ move $s4, $a1 -/* 0C8C24 800C8024 AC850000 */ sw $a1, ($a0) -/* 0C8C28 800C8028 AC800004 */ sw $zero, 4($a0) -/* 0C8C2C 800C802C AC800010 */ sw $zero, 0x10($a0) -/* 0C8C30 800C8030 AC80000C */ sw $zero, 0xc($a0) -/* 0C8C34 800C8034 AC8E0014 */ sw $t6, 0x14($a0) -/* 0C8C38 800C8038 00808825 */ move $s1, $a0 -/* 0C8C3C 800C803C 00009025 */ move $s2, $zero -/* 0C8C40 800C8040 24130010 */ li $s3, 16 -/* 0C8C44 800C8044 00006825 */ move $t5, $zero -/* 0C8C48 800C8048 00806025 */ move $t4, $a0 -.L800C804C: -/* 0C8C4C 800C804C A22000A8 */ sb $zero, 0xa8($s1) -/* 0C8C50 800C8050 AD800058 */ sw $zero, 0x58($t4) -/* 0C8C54 800C8054 A2200098 */ sb $zero, 0x98($s1) -/* 0C8C58 800C8058 8E0F0000 */ lw $t7, ($s0) -/* 0C8C5C 800C805C 240E0001 */ li $t6, 1 -/* 0C8C60 800C8060 01F2C021 */ addu $t8, $t7, $s2 -/* 0C8C64 800C8064 8F020000 */ lw $v0, ($t8) -/* 0C8C68 800C8068 01AE7804 */ sllv $t7, $t6, $t5 -/* 0C8C6C 800C806C 1040000A */ beqz $v0, .L800C8098 -/* 0C8C70 800C8070 02827021 */ addu $t6, $s4, $v0 -/* 0C8C74 800C8074 8E190004 */ lw $t9, 4($s0) -/* 0C8C78 800C8078 02005025 */ move $t2, $s0 -/* 0C8C7C 800C807C 01A05825 */ move $t3, $t5 -/* 0C8C80 800C8080 032FC025 */ or $t8, $t9, $t7 -/* 0C8C84 800C8084 AE180004 */ sw $t8, 4($s0) -/* 0C8C88 800C8088 0C031F29 */ jal func_800C7CA4 -/* 0C8C8C 800C808C AD8E0018 */ sw $t6, 0x18($t4) -/* 0C8C90 800C8090 10000002 */ b .L800C809C -/* 0C8C94 800C8094 AD8200B8 */ sw $v0, 0xb8($t4) -.L800C8098: -/* 0C8C98 800C8098 AD800018 */ sw $zero, 0x18($t4) -.L800C809C: -/* 0C8C9C 800C809C 25AD0001 */ addiu $t5, $t5, 1 -/* 0C8CA0 800C80A0 26310001 */ addiu $s1, $s1, 1 -/* 0C8CA4 800C80A4 26520004 */ addiu $s2, $s2, 4 -/* 0C8CA8 800C80A8 15B3FFE8 */ bne $t5, $s3, .L800C804C -/* 0C8CAC 800C80AC 258C0004 */ addiu $t4, $t4, 4 -/* 0C8CB0 800C80B0 8E190000 */ lw $t9, ($s0) -/* 0C8CB4 800C80B4 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 0C8CB8 800C80B8 44812800 */ mtc1 $at, $f5 -/* 0C8CBC 800C80BC 8F2F0040 */ lw $t7, 0x40($t9) -/* 0C8CC0 800C80C0 44802000 */ mtc1 $zero, $f4 -/* 0C8CC4 800C80C4 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0C8CC8 800C80C8 448F3000 */ mtc1 $t7, $f6 -/* 0C8CCC 800C80CC 05E10004 */ bgez $t7, .L800C80E0 -/* 0C8CD0 800C80D0 46803220 */ cvt.s.w $f8, $f6 -/* 0C8CD4 800C80D4 44815000 */ mtc1 $at, $f10 -/* 0C8CD8 800C80D8 00000000 */ nop -/* 0C8CDC 800C80DC 460A4200 */ add.s $f8, $f8, $f10 -.L800C80E0: -/* 0C8CE0 800C80E0 460041A1 */ cvt.d.s $f6, $f8 -/* 0C8CE4 800C80E4 46262283 */ div.d $f10, $f4, $f6 -/* 0C8CE8 800C80E8 46205220 */ cvt.s.d $f8, $f10 -/* 0C8CEC 800C80EC E6080008 */ swc1 $f8, 8($s0) -/* 0C8CF0 800C80F0 8FBF002C */ lw $ra, 0x2c($sp) -/* 0C8CF4 800C80F4 8FB40028 */ lw $s4, 0x28($sp) -/* 0C8CF8 800C80F8 8FB30024 */ lw $s3, 0x24($sp) -/* 0C8CFC 800C80FC 8FB20020 */ lw $s2, 0x20($sp) -/* 0C8D00 800C8100 8FB1001C */ lw $s1, 0x1c($sp) -/* 0C8D04 800C8104 8FB00018 */ lw $s0, 0x18($sp) -/* 0C8D08 800C8108 03E00008 */ jr $ra -/* 0C8D0C 800C810C 27BD0030 */ addiu $sp, $sp, 0x30 - -/* 0C8D10 800C8110 27BDFEB0 */ addiu $sp, $sp, -0x150 -/* 0C8D14 800C8114 AFB30020 */ sw $s3, 0x20($sp) -/* 0C8D18 800C8118 AFB10018 */ sw $s1, 0x18($sp) -/* 0C8D1C 800C811C 00A08825 */ move $s1, $a1 -/* 0C8D20 800C8120 27B30048 */ addiu $s3, $sp, 0x48 -/* 0C8D24 800C8124 AFBF002C */ sw $ra, 0x2c($sp) -/* 0C8D28 800C8128 AFB50028 */ sw $s5, 0x28($sp) -/* 0C8D2C 800C812C AFB40024 */ sw $s4, 0x24($sp) -/* 0C8D30 800C8130 AFB2001C */ sw $s2, 0x1c($sp) -/* 0C8D34 800C8134 AFB00014 */ sw $s0, 0x14($sp) -/* 0C8D38 800C8138 00803825 */ move $a3, $a0 -/* 0C8D3C 800C813C 00C09025 */ move $s2, $a2 -/* 0C8D40 800C8140 8CE50000 */ lw $a1, ($a3) -/* 0C8D44 800C8144 0C031FFF */ jal func_800C7FFC -/* 0C8D48 800C8148 02602025 */ move $a0, $s3 -/* 0C8D4C 800C814C 24150004 */ li $s5, 4 -/* 0C8D50 800C8150 27B40140 */ addiu $s4, $sp, 0x140 -/* 0C8D54 800C8154 27B00058 */ addiu $s0, $sp, 0x58 -/* 0C8D58 800C8158 8FAE004C */ lw $t6, 0x4c($sp) -.L800C815C: -/* 0C8D5C 800C815C 27A40048 */ addiu $a0, $sp, 0x48 -/* 0C8D60 800C8160 00801825 */ move $v1, $a0 -/* 0C8D64 800C8164 AE2E0000 */ sw $t6, ($s1) -/* 0C8D68 800C8168 8FAF0054 */ lw $t7, 0x54($sp) -/* 0C8D6C 800C816C 02201025 */ move $v0, $s1 -/* 0C8D70 800C8170 02202825 */ move $a1, $s1 -/* 0C8D74 800C8174 AE2F0004 */ sw $t7, 4($s1) -/* 0C8D78 800C8178 8FB80058 */ lw $t8, 0x58($sp) -/* 0C8D7C 800C817C AE380008 */ sw $t8, 8($s1) -.L800C8180: -/* 0C8D80 800C8180 8C680018 */ lw $t0, 0x18($v1) -/* 0C8D84 800C8184 24840004 */ addiu $a0, $a0, 4 -/* 0C8D88 800C8188 24420010 */ addiu $v0, $v0, 0x10 -/* 0C8D8C 800C818C AC48FFFC */ sw $t0, -4($v0) -/* 0C8D90 800C8190 8C690058 */ lw $t1, 0x58($v1) -/* 0C8D94 800C8194 24630010 */ addiu $v1, $v1, 0x10 -/* 0C8D98 800C8198 24A50004 */ addiu $a1, $a1, 4 -/* 0C8D9C 800C819C AC49003C */ sw $t1, 0x3c($v0) -/* 0C8DA0 800C81A0 908A0094 */ lbu $t2, 0x94($a0) -/* 0C8DA4 800C81A4 A0AA0088 */ sb $t2, 0x88($a1) -/* 0C8DA8 800C81A8 908B00A4 */ lbu $t3, 0xa4($a0) -/* 0C8DAC 800C81AC A0AB0098 */ sb $t3, 0x98($a1) -/* 0C8DB0 800C81B0 8C6C00A8 */ lw $t4, 0xa8($v1) -/* 0C8DB4 800C81B4 AC4C009C */ sw $t4, 0x9c($v0) -/* 0C8DB8 800C81B8 8C6D000C */ lw $t5, 0xc($v1) -/* 0C8DBC 800C81BC AC4D0000 */ sw $t5, ($v0) -/* 0C8DC0 800C81C0 8C6E004C */ lw $t6, 0x4c($v1) -/* 0C8DC4 800C81C4 AC4E0040 */ sw $t6, 0x40($v0) -/* 0C8DC8 800C81C8 908F0095 */ lbu $t7, 0x95($a0) -/* 0C8DCC 800C81CC A0AF0089 */ sb $t7, 0x89($a1) -/* 0C8DD0 800C81D0 909800A5 */ lbu $t8, 0xa5($a0) -/* 0C8DD4 800C81D4 A0B80099 */ sb $t8, 0x99($a1) -/* 0C8DD8 800C81D8 8C7900AC */ lw $t9, 0xac($v1) -/* 0C8DDC 800C81DC AC5900A0 */ sw $t9, 0xa0($v0) -/* 0C8DE0 800C81E0 8C680010 */ lw $t0, 0x10($v1) -/* 0C8DE4 800C81E4 AC480004 */ sw $t0, 4($v0) -/* 0C8DE8 800C81E8 8C690050 */ lw $t1, 0x50($v1) -/* 0C8DEC 800C81EC AC490044 */ sw $t1, 0x44($v0) -/* 0C8DF0 800C81F0 908A0096 */ lbu $t2, 0x96($a0) -/* 0C8DF4 800C81F4 A0AA008A */ sb $t2, 0x8a($a1) -/* 0C8DF8 800C81F8 908B00A6 */ lbu $t3, 0xa6($a0) -/* 0C8DFC 800C81FC A0AB009A */ sb $t3, 0x9a($a1) -/* 0C8E00 800C8200 8C6C00B0 */ lw $t4, 0xb0($v1) -/* 0C8E04 800C8204 AC4C00A4 */ sw $t4, 0xa4($v0) -/* 0C8E08 800C8208 8C6D0014 */ lw $t5, 0x14($v1) -/* 0C8E0C 800C820C AC4D0008 */ sw $t5, 8($v0) -/* 0C8E10 800C8210 8C6E0054 */ lw $t6, 0x54($v1) -/* 0C8E14 800C8214 AC4E0048 */ sw $t6, 0x48($v0) -/* 0C8E18 800C8218 908F0097 */ lbu $t7, 0x97($a0) -/* 0C8E1C 800C821C A0AF008B */ sb $t7, 0x8b($a1) -/* 0C8E20 800C8220 909800A7 */ lbu $t8, 0xa7($a0) -/* 0C8E24 800C8224 A0B8009B */ sb $t8, 0x9b($a1) -/* 0C8E28 800C8228 8C7900B4 */ lw $t9, 0xb4($v1) -/* 0C8E2C 800C822C 1490FFD4 */ bne $a0, $s0, .L800C8180 -/* 0C8E30 800C8230 AC5900A8 */ sw $t9, 0xa8($v0) -/* 0C8E34 800C8234 02602025 */ move $a0, $s3 -/* 0C8E38 800C8238 0C031F41 */ jal func_800C7D04 -/* 0C8E3C 800C823C 02802825 */ move $a1, $s4 -/* 0C8E40 800C8240 87A80140 */ lh $t0, 0x140($sp) -/* 0C8E44 800C8244 8FA90054 */ lw $t1, 0x54($sp) -/* 0C8E48 800C8248 11150003 */ beq $t0, $s5, .L800C8258 -/* 0C8E4C 800C824C 0132082B */ sltu $at, $t1, $s2 -/* 0C8E50 800C8250 5420FFC2 */ bnezl $at, .L800C815C -/* 0C8E54 800C8254 8FAE004C */ lw $t6, 0x4c($sp) -.L800C8258: -/* 0C8E58 800C8258 8FBF002C */ lw $ra, 0x2c($sp) -/* 0C8E5C 800C825C 8FB00014 */ lw $s0, 0x14($sp) -/* 0C8E60 800C8260 8FB10018 */ lw $s1, 0x18($sp) -/* 0C8E64 800C8264 8FB2001C */ lw $s2, 0x1c($sp) -/* 0C8E68 800C8268 8FB30020 */ lw $s3, 0x20($sp) -/* 0C8E6C 800C826C 8FB40024 */ lw $s4, 0x24($sp) -/* 0C8E70 800C8270 8FB50028 */ lw $s5, 0x28($sp) -/* 0C8E74 800C8274 03E00008 */ jr $ra -/* 0C8E78 800C8278 27BD0150 */ addiu $sp, $sp, 0x150 - -/* 0C8E7C 800C827C 03E00008 */ jr $ra -/* 0C8E80 800C8280 8C82000C */ lw $v0, 0xc($a0) - -/* 0C8E84 800C8284 8C8E0000 */ lw $t6, ($a0) -/* 0C8E88 800C8288 44856000 */ mtc1 $a1, $f12 -/* 0C8E8C 800C828C 3C01800F */ lui $at, 0x800f -/* 0C8E90 800C8290 8DCF0040 */ lw $t7, 0x40($t6) -/* 0C8E94 800C8294 D42694B0 */ ldc1 $f6, -0x6b50($at) -/* 0C8E98 800C8298 46006121 */ cvt.d.s $f4, $f12 -/* 0C8E9C 800C829C 448F5000 */ mtc1 $t7, $f10 -/* 0C8EA0 800C82A0 46262202 */ mul.d $f8, $f4, $f6 -/* 0C8EA4 800C82A4 3C0141F0 */ li $at, 0x41F00000 # 30.000000 -/* 0C8EA8 800C82A8 05E10005 */ bgez $t7, .L800C82C0 -/* 0C8EAC 800C82AC 46805421 */ cvt.d.w $f16, $f10 -/* 0C8EB0 800C82B0 44819800 */ mtc1 $at, $f19 -/* 0C8EB4 800C82B4 44809000 */ mtc1 $zero, $f18 -/* 0C8EB8 800C82B8 00000000 */ nop -/* 0C8EBC 800C82BC 46328400 */ add.d $f16, $f16, $f18 -.L800C82C0: -/* 0C8EC0 800C82C0 44863000 */ mtc1 $a2, $f6 -/* 0C8EC4 800C82C4 46304102 */ mul.d $f4, $f8, $f16 -/* 0C8EC8 800C82C8 3C0141F0 */ li $at, 0x41F00000 # 30.000000 -/* 0C8ECC 800C82CC 04C10005 */ bgez $a2, .L800C82E4 -/* 0C8ED0 800C82D0 468032A1 */ cvt.d.w $f10, $f6 -/* 0C8ED4 800C82D4 44819800 */ mtc1 $at, $f19 -/* 0C8ED8 800C82D8 44809000 */ mtc1 $zero, $f18 -/* 0C8EDC 800C82DC 00000000 */ nop -/* 0C8EE0 800C82E0 46325280 */ add.d $f10, $f10, $f18 -.L800C82E4: -/* 0C8EE4 800C82E4 462A2203 */ div.d $f8, $f4, $f10 -/* 0C8EE8 800C82E8 24020001 */ li $v0, 1 -/* 0C8EEC 800C82EC 3C0141E0 */ li $at, 0x41E00000 # 28.000000 -/* 0C8EF0 800C82F0 4458F800 */ cfc1 $t8, $31 -/* 0C8EF4 800C82F4 44C2F800 */ ctc1 $v0, $31 -/* 0C8EF8 800C82F8 00000000 */ nop -/* 0C8EFC 800C82FC 46204424 */ cvt.w.d $f16, $f8 -/* 0C8F00 800C8300 4442F800 */ cfc1 $v0, $31 -/* 0C8F04 800C8304 00000000 */ nop -/* 0C8F08 800C8308 30420078 */ andi $v0, $v0, 0x78 -/* 0C8F0C 800C830C 50400016 */ beql $v0, $zero, .L800C8368 -/* 0C8F10 800C8310 44028000 */ mfc1 $v0, $f16 -/* 0C8F14 800C8314 44818800 */ mtc1 $at, $f17 -/* 0C8F18 800C8318 44808000 */ mtc1 $zero, $f16 -/* 0C8F1C 800C831C 24020001 */ li $v0, 1 -/* 0C8F20 800C8320 3C018000 */ lui $at, 0x8000 -/* 0C8F24 800C8324 46304401 */ sub.d $f16, $f8, $f16 -/* 0C8F28 800C8328 44C2F800 */ ctc1 $v0, $31 -/* 0C8F2C 800C832C 00000000 */ nop -/* 0C8F30 800C8330 46208424 */ cvt.w.d $f16, $f16 -/* 0C8F34 800C8334 4442F800 */ cfc1 $v0, $31 -/* 0C8F38 800C8338 00000000 */ nop -/* 0C8F3C 800C833C 30420078 */ andi $v0, $v0, 0x78 -/* 0C8F40 800C8340 54400006 */ bnezl $v0, .L800C835C -/* 0C8F44 800C8344 44D8F800 */ ctc1 $t8, $31 -/* 0C8F48 800C8348 44028000 */ mfc1 $v0, $f16 -/* 0C8F4C 800C834C 44D8F800 */ ctc1 $t8, $31 -/* 0C8F50 800C8350 03E00008 */ jr $ra -/* 0C8F54 800C8354 00411025 */ or $v0, $v0, $at - -/* 0C8F58 800C8358 44D8F800 */ ctc1 $t8, $31 -.L800C835C: -/* 0C8F5C 800C835C 03E00008 */ jr $ra -/* 0C8F60 800C8360 2402FFFF */ li $v0, -1 - -/* 0C8F64 800C8364 44028000 */ mfc1 $v0, $f16 -.L800C8368: -/* 0C8F68 800C8368 00000000 */ nop -/* 0C8F6C 800C836C 0442FFFB */ bltzl $v0, .L800C835C -/* 0C8F70 800C8370 44D8F800 */ ctc1 $t8, $31 -/* 0C8F74 800C8374 44D8F800 */ ctc1 $t8, $31 -/* 0C8F78 800C8378 03E00008 */ jr $ra -/* 0C8F7C 800C837C 00000000 */ nop - -/* 0C8F80 800C8380 44852000 */ mtc1 $a1, $f4 -/* 0C8F84 800C8384 44864000 */ mtc1 $a2, $f8 -/* 0C8F88 800C8388 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0C8F8C 800C838C 468021A0 */ cvt.s.w $f6, $f4 -/* 0C8F90 800C8390 04C10004 */ bgez $a2, .L800C83A4 -/* 0C8F94 800C8394 468042A0 */ cvt.s.w $f10, $f8 -/* 0C8F98 800C8398 44818000 */ mtc1 $at, $f16 -/* 0C8F9C 800C839C 00000000 */ nop -/* 0C8FA0 800C83A0 46105280 */ add.s $f10, $f10, $f16 -.L800C83A4: -/* 0C8FA4 800C83A4 8C8E0000 */ lw $t6, ($a0) -/* 0C8FA8 800C83A8 460A3482 */ mul.s $f18, $f6, $f10 -/* 0C8FAC 800C83AC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0C8FB0 800C83B0 8DCF0040 */ lw $t7, 0x40($t6) -/* 0C8FB4 800C83B4 448F4000 */ mtc1 $t7, $f8 -/* 0C8FB8 800C83B8 46009121 */ cvt.d.s $f4, $f18 -/* 0C8FBC 800C83BC 05E10004 */ bgez $t7, .L800C83D0 -/* 0C8FC0 800C83C0 46804420 */ cvt.s.w $f16, $f8 -/* 0C8FC4 800C83C4 44813000 */ mtc1 $at, $f6 -/* 0C8FC8 800C83C8 00000000 */ nop -/* 0C8FCC 800C83CC 46068400 */ add.s $f16, $f16, $f6 -.L800C83D0: -/* 0C8FD0 800C83D0 3C01800F */ lui $at, 0x800f -/* 0C8FD4 800C83D4 D43294B8 */ ldc1 $f18, -0x6b48($at) -/* 0C8FD8 800C83D8 460082A1 */ cvt.d.s $f10, $f16 -/* 0C8FDC 800C83DC 46325202 */ mul.d $f8, $f10, $f18 -/* 0C8FE0 800C83E0 46282183 */ div.d $f6, $f4, $f8 -/* 0C8FE4 800C83E4 03E00008 */ jr $ra -/* 0C8FE8 800C83E8 46203020 */ cvt.s.d $f0, $f6 - -glabel func_800C83EC -/* 0C8FEC 800C83EC 8C8E0004 */ lw $t6, 4($a0) -/* 0C8FF0 800C83F0 00A04825 */ move $t1, $a1 -/* 0C8FF4 800C83F4 2403FFFF */ li $v1, -1 -/* 0C8FF8 800C83F8 15C00003 */ bnez $t6, .L800C8408 -/* 0C8FFC 800C83FC 8C820010 */ lw $v0, 0x10($a0) -/* 0C9000 800C8400 03E00008 */ jr $ra -/* 0C9004 800C8404 00001025 */ move $v0, $zero - -.L800C8408: -/* 0C9008 800C8408 00003025 */ move $a2, $zero -/* 0C900C 800C840C 240A0010 */ li $t2, 16 -/* 0C9010 800C8410 8C850004 */ lw $a1, 4($a0) -.L800C8414: -/* 0C9014 800C8414 24CE0001 */ addiu $t6, $a2, 1 -/* 0C9018 800C8418 00C57806 */ srlv $t7, $a1, $a2 -/* 0C901C 800C841C 31F80001 */ andi $t8, $t7, 1 -/* 0C9020 800C8420 53000010 */ beql $t8, $zero, .L800C8464 -/* 0C9024 800C8424 01C57806 */ srlv $t7, $a1, $t6 -/* 0C9028 800C8428 8C8B0014 */ lw $t3, 0x14($a0) -/* 0C902C 800C842C 0006C880 */ sll $t9, $a2, 2 -/* 0C9030 800C8430 00993821 */ addu $a3, $a0, $t9 -/* 0C9034 800C8434 51600006 */ beql $t3, $zero, .L800C8450 -/* 0C9038 800C8438 8CE800B8 */ lw $t0, 0xb8($a3) -/* 0C903C 800C843C 8CEC00B8 */ lw $t4, 0xb8($a3) -/* 0C9040 800C8440 01826823 */ subu $t5, $t4, $v0 -/* 0C9044 800C8444 ACED00B8 */ sw $t5, 0xb8($a3) -/* 0C9048 800C8448 8C850004 */ lw $a1, 4($a0) -/* 0C904C 800C844C 8CE800B8 */ lw $t0, 0xb8($a3) -.L800C8450: -/* 0C9050 800C8450 0103082B */ sltu $at, $t0, $v1 -/* 0C9054 800C8454 50200003 */ beql $at, $zero, .L800C8464 -/* 0C9058 800C8458 01C57806 */ srlv $t7, $a1, $t6 -/* 0C905C 800C845C 01001825 */ move $v1, $t0 -/* 0C9060 800C8460 01C57806 */ srlv $t7, $a1, $t6 -.L800C8464: -/* 0C9064 800C8464 31F80001 */ andi $t8, $t7, 1 -/* 0C9068 800C8468 1300000F */ beqz $t8, .L800C84A8 -/* 0C906C 800C846C 24CE0002 */ addiu $t6, $a2, 2 -/* 0C9070 800C8470 8C8B0014 */ lw $t3, 0x14($a0) -/* 0C9074 800C8474 0006C880 */ sll $t9, $a2, 2 -/* 0C9078 800C8478 00993821 */ addu $a3, $a0, $t9 -/* 0C907C 800C847C 51600006 */ beql $t3, $zero, .L800C8498 -/* 0C9080 800C8480 8CE800BC */ lw $t0, 0xbc($a3) -/* 0C9084 800C8484 8CEC00BC */ lw $t4, 0xbc($a3) -/* 0C9088 800C8488 01826823 */ subu $t5, $t4, $v0 -/* 0C908C 800C848C ACED00BC */ sw $t5, 0xbc($a3) -/* 0C9090 800C8490 8C850004 */ lw $a1, 4($a0) -/* 0C9094 800C8494 8CE800BC */ lw $t0, 0xbc($a3) -.L800C8498: -/* 0C9098 800C8498 0103082B */ sltu $at, $t0, $v1 -/* 0C909C 800C849C 50200003 */ beql $at, $zero, .L800C84AC -/* 0C90A0 800C84A0 01C57806 */ srlv $t7, $a1, $t6 -/* 0C90A4 800C84A4 01001825 */ move $v1, $t0 -.L800C84A8: -/* 0C90A8 800C84A8 01C57806 */ srlv $t7, $a1, $t6 -.L800C84AC: -/* 0C90AC 800C84AC 31F80001 */ andi $t8, $t7, 1 -/* 0C90B0 800C84B0 1300000F */ beqz $t8, .L800C84F0 -/* 0C90B4 800C84B4 24CE0003 */ addiu $t6, $a2, 3 -/* 0C90B8 800C84B8 8C8B0014 */ lw $t3, 0x14($a0) -/* 0C90BC 800C84BC 0006C880 */ sll $t9, $a2, 2 -/* 0C90C0 800C84C0 00993821 */ addu $a3, $a0, $t9 -/* 0C90C4 800C84C4 51600006 */ beql $t3, $zero, .L800C84E0 -/* 0C90C8 800C84C8 8CE800C0 */ lw $t0, 0xc0($a3) -/* 0C90CC 800C84CC 8CEC00C0 */ lw $t4, 0xc0($a3) -/* 0C90D0 800C84D0 01826823 */ subu $t5, $t4, $v0 -/* 0C90D4 800C84D4 ACED00C0 */ sw $t5, 0xc0($a3) -/* 0C90D8 800C84D8 8C850004 */ lw $a1, 4($a0) -/* 0C90DC 800C84DC 8CE800C0 */ lw $t0, 0xc0($a3) -.L800C84E0: -/* 0C90E0 800C84E0 0103082B */ sltu $at, $t0, $v1 -/* 0C90E4 800C84E4 50200003 */ beql $at, $zero, .L800C84F4 -/* 0C90E8 800C84E8 01C57806 */ srlv $t7, $a1, $t6 -/* 0C90EC 800C84EC 01001825 */ move $v1, $t0 -.L800C84F0: -/* 0C90F0 800C84F0 01C57806 */ srlv $t7, $a1, $t6 -.L800C84F4: -/* 0C90F4 800C84F4 31F80001 */ andi $t8, $t7, 1 -/* 0C90F8 800C84F8 5300000F */ beql $t8, $zero, .L800C8538 -/* 0C90FC 800C84FC 24C60004 */ addiu $a2, $a2, 4 -/* 0C9100 800C8500 8C8B0014 */ lw $t3, 0x14($a0) -/* 0C9104 800C8504 0006C880 */ sll $t9, $a2, 2 -/* 0C9108 800C8508 00993821 */ addu $a3, $a0, $t9 -/* 0C910C 800C850C 51600005 */ beql $t3, $zero, .L800C8524 -/* 0C9110 800C8510 8CE500C4 */ lw $a1, 0xc4($a3) -/* 0C9114 800C8514 8CEC00C4 */ lw $t4, 0xc4($a3) -/* 0C9118 800C8518 01826823 */ subu $t5, $t4, $v0 -/* 0C911C 800C851C ACED00C4 */ sw $t5, 0xc4($a3) -/* 0C9120 800C8520 8CE500C4 */ lw $a1, 0xc4($a3) -.L800C8524: -/* 0C9124 800C8524 00A3082B */ sltu $at, $a1, $v1 -/* 0C9128 800C8528 50200003 */ beql $at, $zero, .L800C8538 -/* 0C912C 800C852C 24C60004 */ addiu $a2, $a2, 4 -/* 0C9130 800C8530 00A01825 */ move $v1, $a1 -/* 0C9134 800C8534 24C60004 */ addiu $a2, $a2, 4 -.L800C8538: -/* 0C9138 800C8538 54CAFFB6 */ bnel $a2, $t2, .L800C8414 -/* 0C913C 800C853C 8C850004 */ lw $a1, 4($a0) -/* 0C9140 800C8540 AC800014 */ sw $zero, 0x14($a0) -/* 0C9144 800C8544 AD230000 */ sw $v1, ($t1) -/* 0C9148 800C8548 24020001 */ li $v0, 1 -/* 0C914C 800C854C 03E00008 */ jr $ra -/* 0C9150 800C8550 00000000 */ nop - -/* 0C9154 800C8554 00000000 */ nop -/* 0C9158 800C8558 00000000 */ nop -/* 0C915C 800C855C 00000000 */ nop diff --git a/asm/unknown_0C91A0.s b/asm/unknown_0C91A0.s deleted file mode 100755 index 9466c58a..00000000 --- a/asm/unknown_0C91A0.s +++ /dev/null @@ -1,209 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_800C85A0 -/* 0C91A0 800C85A0 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0C91A4 800C85A4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0C91A8 800C85A8 240E000F */ li $t6, 15 -/* 0C91AC 800C85AC A7AE0018 */ sh $t6, 0x18($sp) -/* 0C91B0 800C85B0 27A50018 */ addiu $a1, $sp, 0x18 -/* 0C91B4 800C85B4 24840048 */ addiu $a0, $a0, 0x48 -/* 0C91B8 800C85B8 0C03246B */ jal func_800C91AC -/* 0C91BC 800C85BC 00003025 */ move $a2, $zero -/* 0C91C0 800C85C0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C91C4 800C85C4 27BD0028 */ addiu $sp, $sp, 0x28 -/* 0C91C8 800C85C8 03E00008 */ jr $ra -/* 0C91CC 800C85CC 00000000 */ nop - -glabel func_800C85D0 -/* 0C91D0 800C85D0 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0C91D4 800C85D4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0C91D8 800C85D8 240E0011 */ li $t6, 17 -/* 0C91DC 800C85DC A7AE0018 */ sh $t6, 0x18($sp) -/* 0C91E0 800C85E0 27A50018 */ addiu $a1, $sp, 0x18 -/* 0C91E4 800C85E4 24840048 */ addiu $a0, $a0, 0x48 -/* 0C91E8 800C85E8 0C03246B */ jal func_800C91AC -/* 0C91EC 800C85EC 00003025 */ move $a2, $zero -/* 0C91F0 800C85F0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C91F4 800C85F4 27BD0028 */ addiu $sp, $sp, 0x28 -/* 0C91F8 800C85F8 03E00008 */ jr $ra -/* 0C91FC 800C85FC 00000000 */ nop - -glabel func_800C8600 -/* 0C9200 800C8600 3C0E800E */ lui $t6, %hi(D_800E4878) # $t6, 0x800e -/* 0C9204 800C8604 8DCE4878 */ lw $t6, %lo(D_800E4878)($t6) -/* 0C9208 800C8608 44844000 */ mtc1 $a0, $f8 -/* 0C920C 800C860C 27BDFFF0 */ addiu $sp, $sp, -0x10 -/* 0C9210 800C8610 448E2000 */ mtc1 $t6, $f4 -/* 0C9214 800C8614 468042A0 */ cvt.s.w $f10, $f8 -/* 0C9218 800C8618 04810005 */ bgez $a0, .L800C8630 -/* 0C921C 800C861C 468021A0 */ cvt.s.w $f6, $f4 -/* 0C9220 800C8620 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0C9224 800C8624 44818000 */ mtc1 $at, $f16 -/* 0C9228 800C8628 00000000 */ nop -/* 0C922C 800C862C 46105280 */ add.s $f10, $f10, $f16 -.L800C8630: -/* 0C9230 800C8630 460A3483 */ div.s $f18, $f6, $f10 -/* 0C9234 800C8634 3C013F00 */ li $at, 0x3F000000 # 0.500000 -/* 0C9238 800C8638 44812000 */ mtc1 $at, $f4 -/* 0C923C 800C863C 24050001 */ li $a1, 1 -/* 0C9240 800C8640 46049300 */ add.s $f12, $f18, $f4 -/* 0C9244 800C8644 444FF800 */ cfc1 $t7, $31 -/* 0C9248 800C8648 44C5F800 */ ctc1 $a1, $31 -/* 0C924C 800C864C 00000000 */ nop -/* 0C9250 800C8650 46006224 */ cvt.w.s $f8, $f12 -/* 0C9254 800C8654 4445F800 */ cfc1 $a1, $31 -/* 0C9258 800C8658 00000000 */ nop -/* 0C925C 800C865C 30A10004 */ andi $at, $a1, 4 -/* 0C9260 800C8660 30A50078 */ andi $a1, $a1, 0x78 -/* 0C9264 800C8664 10A00013 */ beqz $a1, .L800C86B4 -/* 0C9268 800C8668 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 0C926C 800C866C 44814000 */ mtc1 $at, $f8 -/* 0C9270 800C8670 24050001 */ li $a1, 1 -/* 0C9274 800C8674 46086201 */ sub.s $f8, $f12, $f8 -/* 0C9278 800C8678 44C5F800 */ ctc1 $a1, $31 -/* 0C927C 800C867C 00000000 */ nop -/* 0C9280 800C8680 46004224 */ cvt.w.s $f8, $f8 -/* 0C9284 800C8684 4445F800 */ cfc1 $a1, $31 -/* 0C9288 800C8688 00000000 */ nop -/* 0C928C 800C868C 30A10004 */ andi $at, $a1, 4 -/* 0C9290 800C8690 30A50078 */ andi $a1, $a1, 0x78 -/* 0C9294 800C8694 14A00005 */ bnez $a1, .L800C86AC -/* 0C9298 800C8698 00000000 */ nop -/* 0C929C 800C869C 44054000 */ mfc1 $a1, $f8 -/* 0C92A0 800C86A0 3C018000 */ lui $at, 0x8000 -/* 0C92A4 800C86A4 10000007 */ b .L800C86C4 -/* 0C92A8 800C86A8 00A12825 */ or $a1, $a1, $at -.L800C86AC: -/* 0C92AC 800C86AC 10000005 */ b .L800C86C4 -/* 0C92B0 800C86B0 2405FFFF */ li $a1, -1 -.L800C86B4: -/* 0C92B4 800C86B4 44054000 */ mfc1 $a1, $f8 -/* 0C92B8 800C86B8 00000000 */ nop -/* 0C92BC 800C86BC 04A0FFFB */ bltz $a1, .L800C86AC -/* 0C92C0 800C86C0 00000000 */ nop -.L800C86C4: -/* 0C92C4 800C86C4 44CFF800 */ ctc1 $t7, $31 -/* 0C92C8 800C86C8 2CA10084 */ sltiu $at, $a1, 0x84 -/* 0C92CC 800C86CC 10200003 */ beqz $at, .L800C86DC -/* 0C92D0 800C86D0 00000000 */ nop -/* 0C92D4 800C86D4 10000020 */ b .L800C8758 -/* 0C92D8 800C86D8 2402FFFF */ li $v0, -1 -.L800C86DC: -/* 0C92DC 800C86DC 24010042 */ li $at, 66 -/* 0C92E0 800C86E0 00A1001B */ divu $zero, $a1, $at -/* 0C92E4 800C86E4 00003012 */ mflo $a2 -/* 0C92E8 800C86E8 30D800FF */ andi $t8, $a2, 0xff -/* 0C92EC 800C86EC 03003025 */ move $a2, $t8 -/* 0C92F0 800C86F0 28C10011 */ slti $at, $a2, 0x11 -/* 0C92F4 800C86F4 14200002 */ bnez $at, .L800C8700 -/* 0C92F8 800C86F8 00000000 */ nop -/* 0C92FC 800C86FC 24060010 */ li $a2, 16 -.L800C8700: -/* 0C9300 800C8700 24B9FFFF */ addiu $t9, $a1, -1 -/* 0C9304 800C8704 3C08A450 */ lui $t0, %hi(D_A4500010) # $t0, 0xa450 -/* 0C9308 800C8708 AD190010 */ sw $t9, %lo(D_A4500010)($t0) -/* 0C930C 800C870C 24C9FFFF */ addiu $t1, $a2, -1 -/* 0C9310 800C8710 3C0AA450 */ lui $t2, %hi(D_A4500014) # $t2, 0xa450 -/* 0C9314 800C8714 AD490014 */ sw $t1, %lo(D_A4500014)($t2) -/* 0C9318 800C8718 240B0001 */ li $t3, 1 -/* 0C931C 800C871C 3C0CA450 */ lui $t4, %hi(D_A4500008) # $t4, 0xa450 -/* 0C9320 800C8720 AD8B0008 */ sw $t3, %lo(D_A4500008)($t4) -/* 0C9324 800C8724 3C0D800E */ lui $t5, %hi(D_800E4878) # $t5, 0x800e -/* 0C9328 800C8728 8DAD4878 */ lw $t5, %lo(D_800E4878)($t5) -/* 0C932C 800C872C 01A5001A */ div $zero, $t5, $a1 -/* 0C9330 800C8730 00001012 */ mflo $v0 -/* 0C9334 800C8734 14A00002 */ bnez $a1, .L800C8740 -/* 0C9338 800C8738 00000000 */ nop -/* 0C933C 800C873C 0007000D */ break 7 -.L800C8740: -/* 0C9340 800C8740 2401FFFF */ li $at, -1 -/* 0C9344 800C8744 14A10004 */ bne $a1, $at, .L800C8758 -/* 0C9348 800C8748 3C018000 */ lui $at, 0x8000 -/* 0C934C 800C874C 15A10002 */ bne $t5, $at, .L800C8758 -/* 0C9350 800C8750 00000000 */ nop -/* 0C9354 800C8754 0006000D */ break 6 -.L800C8758: -/* 0C9358 800C8758 03E00008 */ jr $ra -/* 0C935C 800C875C 27BD0010 */ addiu $sp, $sp, 0x10 - -glabel func_800C8760 -/* 0C9360 800C8760 8C820000 */ lw $v0, ($a0) -/* 0C9364 800C8764 50400004 */ beql $v0, $zero, .L800C8778 -/* 0C9368 800C8768 8C820004 */ lw $v0, 4($a0) -/* 0C936C 800C876C 8C8E0004 */ lw $t6, 4($a0) -/* 0C9370 800C8770 AC4E0004 */ sw $t6, 4($v0) -/* 0C9374 800C8774 8C820004 */ lw $v0, 4($a0) -.L800C8778: -/* 0C9378 800C8778 10400003 */ beqz $v0, .L800C8788 -/* 0C937C 800C877C 00000000 */ nop -/* 0C9380 800C8780 8C8F0000 */ lw $t7, ($a0) -/* 0C9384 800C8784 AC4F0000 */ sw $t7, ($v0) -.L800C8788: -/* 0C9388 800C8788 03E00008 */ jr $ra -/* 0C938C 800C878C 00000000 */ nop - -glabel func_800C8790 -/* 0C9390 800C8790 8CAE0000 */ lw $t6, ($a1) -/* 0C9394 800C8794 AC850004 */ sw $a1, 4($a0) -/* 0C9398 800C8798 AC8E0000 */ sw $t6, ($a0) -/* 0C939C 800C879C 8CA20000 */ lw $v0, ($a1) -/* 0C93A0 800C87A0 10400002 */ beqz $v0, .L800C87AC -/* 0C93A4 800C87A4 00000000 */ nop -/* 0C93A8 800C87A8 AC440004 */ sw $a0, 4($v0) -.L800C87AC: -/* 0C93AC 800C87AC 03E00008 */ jr $ra -/* 0C93B0 800C87B0 ACA40000 */ sw $a0, ($a1) - -glabel func_800C87B4 -/* 0C93B4 800C87B4 3C0E800E */ lui $t6, %hi(D_800E3780) # $t6, 0x800e -/* 0C93B8 800C87B8 8DCE3780 */ lw $t6, %lo(D_800E3780)($t6) -/* 0C93BC 800C87BC 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C93C0 800C87C0 AFBF0014 */ sw $ra, 0x14($sp) -/* 0C93C4 800C87C4 51C00006 */ beql $t6, $zero, .L800C87E0 -/* 0C93C8 800C87C8 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C93CC 800C87CC 0C034B18 */ jal func_800D2C60 -/* 0C93D0 800C87D0 00000000 */ nop -/* 0C93D4 800C87D4 3C01800E */ lui $at, %hi(D_800E3780) # $at, 0x800e -/* 0C93D8 800C87D8 AC203780 */ sw $zero, %lo(D_800E3780)($at) -/* 0C93DC 800C87DC 8FBF0014 */ lw $ra, 0x14($sp) -.L800C87E0: -/* 0C93E0 800C87E0 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0C93E4 800C87E4 03E00008 */ jr $ra -/* 0C93E8 800C87E8 00000000 */ nop - -glabel func_800C87EC -/* 0C93EC 800C87EC 3C02800E */ lui $v0, %hi(D_800E3780) # $v0, 0x800e -/* 0C93F0 800C87F0 24423780 */ addiu $v0, %lo(D_800E3780) # addiu $v0, $v0, 0x3780 -/* 0C93F4 800C87F4 8C4E0000 */ lw $t6, ($v0) -/* 0C93F8 800C87F8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C93FC 800C87FC AFBF0014 */ sw $ra, 0x14($sp) -/* 0C9400 800C8800 55C00004 */ bnezl $t6, .L800C8814 -/* 0C9404 800C8804 8FBF0014 */ lw $ra, 0x14($sp) -/* 0C9408 800C8808 0C01944C */ jal func_80065130 -/* 0C940C 800C880C AC440000 */ sw $a0, ($v0) -/* 0C9410 800C8810 8FBF0014 */ lw $ra, 0x14($sp) -.L800C8814: -/* 0C9414 800C8814 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0C9418 800C8818 03E00008 */ jr $ra -/* 0C941C 800C881C 00000000 */ nop - -glabel osCreateMesgQueue -/* 0C9420 800C8820 3C0E800E */ lui $t6, %hi(D_800E4880) # $t6, 0x800e -/* 0C9424 800C8824 3C0F800E */ lui $t7, %hi(D_800E4880) # $t7, 0x800e -/* 0C9428 800C8828 25CE4880 */ addiu $t6, %lo(D_800E4880) # addiu $t6, $t6, 0x4880 -/* 0C942C 800C882C 25EF4880 */ addiu $t7, %lo(D_800E4880) # addiu $t7, $t7, 0x4880 -/* 0C9430 800C8830 AC8E0000 */ sw $t6, ($a0) -/* 0C9434 800C8834 AC8F0004 */ sw $t7, 4($a0) -/* 0C9438 800C8838 AC800008 */ sw $zero, 8($a0) -/* 0C943C 800C883C AC80000C */ sw $zero, 0xc($a0) -/* 0C9440 800C8840 AC860010 */ sw $a2, 0x10($a0) -/* 0C9444 800C8844 03E00008 */ jr $ra -/* 0C9448 800C8848 AC850014 */ sw $a1, 0x14($a0) - -/* 0C944C 800C884C 00000000 */ nop diff --git a/asm/unknown_0C9C90.s b/asm/unknown_0C9C90.s deleted file mode 100755 index bc183072..00000000 --- a/asm/unknown_0C9C90.s +++ /dev/null @@ -1,419 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_800C9090 -/* 0C9C90 800C9090 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 0C9C94 800C9094 AFB30020 */ sw $s3, 0x20($sp) -/* 0C9C98 800C9098 00059C00 */ sll $s3, $a1, 0x10 -/* 0C9C9C 800C909C AFB2001C */ sw $s2, 0x1c($sp) -/* 0C9CA0 800C90A0 00809025 */ move $s2, $a0 -/* 0C9CA4 800C90A4 00137403 */ sra $t6, $s3, 0x10 -/* 0C9CA8 800C90A8 AFBF0024 */ sw $ra, 0x24($sp) -/* 0C9CAC 800C90AC 01C09825 */ move $s3, $t6 -/* 0C9CB0 800C90B0 AFB10018 */ sw $s1, 0x18($sp) -/* 0C9CB4 800C90B4 AFB00014 */ sw $s0, 0x14($sp) -/* 0C9CB8 800C90B8 AFA50044 */ sw $a1, 0x44($sp) -/* 0C9CBC 800C90BC 0C03268C */ jal func_800C9A30 -/* 0C9CC0 800C90C0 24040001 */ li $a0, 1 -/* 0C9CC4 800C90C4 AFA2002C */ sw $v0, 0x2c($sp) -/* 0C9CC8 800C90C8 8E500008 */ lw $s0, 8($s2) -/* 0C9CCC 800C90CC 12000012 */ beqz $s0, .L800C9118 -/* 0C9CD0 800C90D0 00000000 */ nop -.L800C90D4: -/* 0C9CD4 800C90D4 860F000C */ lh $t7, 0xc($s0) -/* 0C9CD8 800C90D8 8E110000 */ lw $s1, ($s0) -/* 0C9CDC 800C90DC 166F000C */ bne $s3, $t7, .L800C9110 -/* 0C9CE0 800C90E0 00000000 */ nop -/* 0C9CE4 800C90E4 12200005 */ beqz $s1, .L800C90FC -/* 0C9CE8 800C90E8 00000000 */ nop -/* 0C9CEC 800C90EC 8E380008 */ lw $t8, 8($s1) -/* 0C9CF0 800C90F0 8E190008 */ lw $t9, 8($s0) -/* 0C9CF4 800C90F4 03194021 */ addu $t0, $t8, $t9 -/* 0C9CF8 800C90F8 AE280008 */ sw $t0, 8($s1) -.L800C90FC: -/* 0C9CFC 800C90FC 0C0321D8 */ jal func_800C8760 -/* 0C9D00 800C9100 02002025 */ move $a0, $s0 -/* 0C9D04 800C9104 02002025 */ move $a0, $s0 -/* 0C9D08 800C9108 0C0321E4 */ jal func_800C8790 -/* 0C9D0C 800C910C 02402825 */ move $a1, $s2 -.L800C9110: -/* 0C9D10 800C9110 1620FFF0 */ bnez $s1, .L800C90D4 -/* 0C9D14 800C9114 02208025 */ move $s0, $s1 -.L800C9118: -/* 0C9D18 800C9118 0C03268C */ jal func_800C9A30 -/* 0C9D1C 800C911C 8FA4002C */ lw $a0, 0x2c($sp) -/* 0C9D20 800C9120 8FBF0024 */ lw $ra, 0x24($sp) -/* 0C9D24 800C9124 8FB00014 */ lw $s0, 0x14($sp) -/* 0C9D28 800C9128 8FB10018 */ lw $s1, 0x18($sp) -/* 0C9D2C 800C912C 8FB2001C */ lw $s2, 0x1c($sp) -/* 0C9D30 800C9130 8FB30020 */ lw $s3, 0x20($sp) -/* 0C9D34 800C9134 03E00008 */ jr $ra -/* 0C9D38 800C9138 27BD0040 */ addiu $sp, $sp, 0x40 - -/* 0C9D3C 800C913C 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0C9D40 800C9140 AFB20020 */ sw $s2, 0x20($sp) -/* 0C9D44 800C9144 00809025 */ move $s2, $a0 -/* 0C9D48 800C9148 AFBF0024 */ sw $ra, 0x24($sp) -/* 0C9D4C 800C914C AFB1001C */ sw $s1, 0x1c($sp) -/* 0C9D50 800C9150 AFB00018 */ sw $s0, 0x18($sp) -/* 0C9D54 800C9154 0C03268C */ jal func_800C9A30 -/* 0C9D58 800C9158 24040001 */ li $a0, 1 -/* 0C9D5C 800C915C AFA2002C */ sw $v0, 0x2c($sp) -/* 0C9D60 800C9160 8E500008 */ lw $s0, 8($s2) -/* 0C9D64 800C9164 12000009 */ beqz $s0, .L800C918C -/* 0C9D68 800C9168 00000000 */ nop -.L800C916C: -/* 0C9D6C 800C916C 8E110000 */ lw $s1, ($s0) -/* 0C9D70 800C9170 0C0321D8 */ jal func_800C8760 -/* 0C9D74 800C9174 02002025 */ move $a0, $s0 -/* 0C9D78 800C9178 02002025 */ move $a0, $s0 -/* 0C9D7C 800C917C 0C0321E4 */ jal func_800C8790 -/* 0C9D80 800C9180 02402825 */ move $a1, $s2 -/* 0C9D84 800C9184 1620FFF9 */ bnez $s1, .L800C916C -/* 0C9D88 800C9188 02208025 */ move $s0, $s1 -.L800C918C: -/* 0C9D8C 800C918C 0C03268C */ jal func_800C9A30 -/* 0C9D90 800C9190 8FA4002C */ lw $a0, 0x2c($sp) -/* 0C9D94 800C9194 8FBF0024 */ lw $ra, 0x24($sp) -/* 0C9D98 800C9198 8FB00018 */ lw $s0, 0x18($sp) -/* 0C9D9C 800C919C 8FB1001C */ lw $s1, 0x1c($sp) -/* 0C9DA0 800C91A0 8FB20020 */ lw $s2, 0x20($sp) -/* 0C9DA4 800C91A4 03E00008 */ jr $ra -/* 0C9DA8 800C91A8 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_800C91AC -/* 0C9DAC 800C91AC 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0C9DB0 800C91B0 AFBF0014 */ sw $ra, 0x14($sp) -/* 0C9DB4 800C91B4 AFA40030 */ sw $a0, 0x30($sp) -/* 0C9DB8 800C91B8 AFA50034 */ sw $a1, 0x34($sp) -/* 0C9DBC 800C91BC AFA00020 */ sw $zero, 0x20($sp) -/* 0C9DC0 800C91C0 24040001 */ li $a0, 1 -/* 0C9DC4 800C91C4 0C03268C */ jal func_800C9A30 -/* 0C9DC8 800C91C8 AFA60038 */ sw $a2, 0x38($sp) -/* 0C9DCC 800C91CC 8FAE0030 */ lw $t6, 0x30($sp) -/* 0C9DD0 800C91D0 8FA70038 */ lw $a3, 0x38($sp) -/* 0C9DD4 800C91D4 00402825 */ move $a1, $v0 -/* 0C9DD8 800C91D8 8DC80000 */ lw $t0, ($t6) -/* 0C9DDC 800C91DC 15000005 */ bnez $t0, .L800C91F4 -/* 0C9DE0 800C91E0 01002025 */ move $a0, $t0 -/* 0C9DE4 800C91E4 0C03268C */ jal func_800C9A30 -/* 0C9DE8 800C91E8 00402025 */ move $a0, $v0 -/* 0C9DEC 800C91EC 10000035 */ b .L800C92C4 -/* 0C9DF0 800C91F0 8FBF0014 */ lw $ra, 0x14($sp) -.L800C91F4: -/* 0C9DF4 800C91F4 AFA5001C */ sw $a1, 0x1c($sp) -/* 0C9DF8 800C91F8 AFA70038 */ sw $a3, 0x38($sp) -/* 0C9DFC 800C91FC 0C0321D8 */ jal func_800C8760 -/* 0C9E00 800C9200 AFA8002C */ sw $t0, 0x2c($sp) -/* 0C9E04 800C9204 8FA8002C */ lw $t0, 0x2c($sp) -/* 0C9E08 800C9208 8FA40034 */ lw $a0, 0x34($sp) -/* 0C9E0C 800C920C 24060010 */ li $a2, 16 -/* 0C9E10 800C9210 0C034E08 */ jal func_800D3820 -/* 0C9E14 800C9214 2505000C */ addiu $a1, $t0, 0xc -/* 0C9E18 800C9218 8FA70038 */ lw $a3, 0x38($sp) -/* 0C9E1C 800C921C 3C017FFF */ lui $at, (0x7FFFFFFF >> 16) # lui $at, 0x7fff -/* 0C9E20 800C9220 3421FFFF */ ori $at, (0x7FFFFFFF & 0xFFFF) # ori $at, $at, 0xffff -/* 0C9E24 800C9224 14E10003 */ bne $a3, $at, .L800C9234 -/* 0C9E28 800C9228 8FA8002C */ lw $t0, 0x2c($sp) -/* 0C9E2C 800C922C 240FFFFF */ li $t7, -1 -/* 0C9E30 800C9230 AFAF0020 */ sw $t7, 0x20($sp) -.L800C9234: -/* 0C9E34 800C9234 8FA20030 */ lw $v0, 0x30($sp) -/* 0C9E38 800C9238 2401FFF8 */ li $at, -8 -/* 0C9E3C 800C923C 8FB80020 */ lw $t8, 0x20($sp) -/* 0C9E40 800C9240 1041001D */ beq $v0, $at, .L800C92B8 -/* 0C9E44 800C9244 24450008 */ addiu $a1, $v0, 8 -.L800C9248: -/* 0C9E48 800C9248 8CA20000 */ lw $v0, ($a1) -/* 0C9E4C 800C924C 5440000B */ bnezl $v0, .L800C927C -/* 0C9E50 800C9250 8C430008 */ lw $v1, 8($v0) -/* 0C9E54 800C9254 53000004 */ beql $t8, $zero, .L800C9268 -/* 0C9E58 800C9258 AD070008 */ sw $a3, 8($t0) -/* 0C9E5C 800C925C 10000002 */ b .L800C9268 -/* 0C9E60 800C9260 AD000008 */ sw $zero, 8($t0) -/* 0C9E64 800C9264 AD070008 */ sw $a3, 8($t0) -.L800C9268: -/* 0C9E68 800C9268 0C0321E4 */ jal func_800C8790 -/* 0C9E6C 800C926C 01002025 */ move $a0, $t0 -/* 0C9E70 800C9270 10000011 */ b .L800C92B8 -/* 0C9E74 800C9274 00000000 */ nop -/* 0C9E78 800C9278 8C430008 */ lw $v1, 8($v0) -.L800C927C: -/* 0C9E7C 800C927C 00403025 */ move $a2, $v0 -/* 0C9E80 800C9280 00E3082A */ slt $at, $a3, $v1 -/* 0C9E84 800C9284 5020000A */ beql $at, $zero, .L800C92B0 -/* 0C9E88 800C9288 00402825 */ move $a1, $v0 -/* 0C9E8C 800C928C AD070008 */ sw $a3, 8($t0) -/* 0C9E90 800C9290 8CD90008 */ lw $t9, 8($a2) -/* 0C9E94 800C9294 01002025 */ move $a0, $t0 -/* 0C9E98 800C9298 03274823 */ subu $t1, $t9, $a3 -/* 0C9E9C 800C929C 0C0321E4 */ jal func_800C8790 -/* 0C9EA0 800C92A0 ACC90008 */ sw $t1, 8($a2) -/* 0C9EA4 800C92A4 10000004 */ b .L800C92B8 -/* 0C9EA8 800C92A8 00000000 */ nop -/* 0C9EAC 800C92AC 00402825 */ move $a1, $v0 -.L800C92B0: -/* 0C9EB0 800C92B0 1440FFE5 */ bnez $v0, .L800C9248 -/* 0C9EB4 800C92B4 00E33823 */ subu $a3, $a3, $v1 -.L800C92B8: -/* 0C9EB8 800C92B8 0C03268C */ jal func_800C9A30 -/* 0C9EBC 800C92BC 8FA4001C */ lw $a0, 0x1c($sp) -/* 0C9EC0 800C92C0 8FBF0014 */ lw $ra, 0x14($sp) -.L800C92C4: -/* 0C9EC4 800C92C4 27BD0030 */ addiu $sp, $sp, 0x30 -/* 0C9EC8 800C92C8 03E00008 */ jr $ra -/* 0C9ECC 800C92CC 00000000 */ nop - -glabel func_800C92D0 -/* 0C9ED0 800C92D0 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0C9ED4 800C92D4 AFBF001C */ sw $ra, 0x1c($sp) -/* 0C9ED8 800C92D8 AFA40030 */ sw $a0, 0x30($sp) -/* 0C9EDC 800C92DC AFB00018 */ sw $s0, 0x18($sp) -/* 0C9EE0 800C92E0 AFA50034 */ sw $a1, 0x34($sp) -/* 0C9EE4 800C92E4 0C03268C */ jal func_800C9A30 -/* 0C9EE8 800C92E8 24040001 */ li $a0, 1 -/* 0C9EEC 800C92EC 8FAE0030 */ lw $t6, 0x30($sp) -/* 0C9EF0 800C92F0 AFA20024 */ sw $v0, 0x24($sp) -/* 0C9EF4 800C92F4 8FB80034 */ lw $t8, 0x34($sp) -/* 0C9EF8 800C92F8 8DD00008 */ lw $s0, 8($t6) -/* 0C9EFC 800C92FC 00001825 */ move $v1, $zero -/* 0C9F00 800C9300 5200000D */ beql $s0, $zero, .L800C9338 -/* 0C9F04 800C9304 240FFFFF */ li $t7, -1 -/* 0C9F08 800C9308 0C0321D8 */ jal func_800C8760 -/* 0C9F0C 800C930C 02002025 */ move $a0, $s0 -/* 0C9F10 800C9310 2604000C */ addiu $a0, $s0, 0xc -/* 0C9F14 800C9314 8FA50034 */ lw $a1, 0x34($sp) -/* 0C9F18 800C9318 0C034E08 */ jal func_800D3820 -/* 0C9F1C 800C931C 24060010 */ li $a2, 16 -/* 0C9F20 800C9320 02002025 */ move $a0, $s0 -/* 0C9F24 800C9324 0C0321E4 */ jal func_800C8790 -/* 0C9F28 800C9328 8FA50030 */ lw $a1, 0x30($sp) -/* 0C9F2C 800C932C 10000003 */ b .L800C933C -/* 0C9F30 800C9330 8E030008 */ lw $v1, 8($s0) -/* 0C9F34 800C9334 240FFFFF */ li $t7, -1 -.L800C9338: -/* 0C9F38 800C9338 A70F0000 */ sh $t7, ($t8) -.L800C933C: -/* 0C9F3C 800C933C 8FA40024 */ lw $a0, 0x24($sp) -/* 0C9F40 800C9340 0C03268C */ jal func_800C9A30 -/* 0C9F44 800C9344 AFA30028 */ sw $v1, 0x28($sp) -/* 0C9F48 800C9348 8FBF001C */ lw $ra, 0x1c($sp) -/* 0C9F4C 800C934C 8FA20028 */ lw $v0, 0x28($sp) -/* 0C9F50 800C9350 8FB00018 */ lw $s0, 0x18($sp) -/* 0C9F54 800C9354 03E00008 */ jr $ra -/* 0C9F58 800C9358 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_800C935C -/* 0C9F5C 800C935C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0C9F60 800C9360 AFB30020 */ sw $s3, 0x20($sp) -/* 0C9F64 800C9364 AFB2001C */ sw $s2, 0x1c($sp) -/* 0C9F68 800C9368 AFB00014 */ sw $s0, 0x14($sp) -/* 0C9F6C 800C936C AFBF0024 */ sw $ra, 0x24($sp) -/* 0C9F70 800C9370 AFB10018 */ sw $s1, 0x18($sp) -/* 0C9F74 800C9374 00809025 */ move $s2, $a0 -/* 0C9F78 800C9378 00C09825 */ move $s3, $a2 -/* 0C9F7C 800C937C AC800010 */ sw $zero, 0x10($a0) -/* 0C9F80 800C9380 AC800008 */ sw $zero, 8($a0) -/* 0C9F84 800C9384 AC80000C */ sw $zero, 0xc($a0) -/* 0C9F88 800C9388 AC800000 */ sw $zero, ($a0) -/* 0C9F8C 800C938C AC800004 */ sw $zero, 4($a0) -/* 0C9F90 800C9390 18C00008 */ blez $a2, .L800C93B4 -/* 0C9F94 800C9394 00008025 */ move $s0, $zero -/* 0C9F98 800C9398 00A08825 */ move $s1, $a1 -.L800C939C: -/* 0C9F9C 800C939C 02202025 */ move $a0, $s1 -/* 0C9FA0 800C93A0 0C0321E4 */ jal func_800C8790 -/* 0C9FA4 800C93A4 02402825 */ move $a1, $s2 -/* 0C9FA8 800C93A8 26100001 */ addiu $s0, $s0, 1 -/* 0C9FAC 800C93AC 1613FFFB */ bne $s0, $s3, .L800C939C -/* 0C9FB0 800C93B0 2631001C */ addiu $s1, $s1, 0x1c -.L800C93B4: -/* 0C9FB4 800C93B4 8FBF0024 */ lw $ra, 0x24($sp) -/* 0C9FB8 800C93B8 8FB00014 */ lw $s0, 0x14($sp) -/* 0C9FBC 800C93BC 8FB10018 */ lw $s1, 0x18($sp) -/* 0C9FC0 800C93C0 8FB2001C */ lw $s2, 0x1c($sp) -/* 0C9FC4 800C93C4 8FB30020 */ lw $s3, 0x20($sp) -/* 0C9FC8 800C93C8 03E00008 */ jr $ra -/* 0C9FCC 800C93CC 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_800C93D0 -/* 0C9FD0 800C93D0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0C9FD4 800C93D4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0C9FD8 800C93D8 00803025 */ move $a2, $a0 -/* 0C9FDC 800C93DC AFA60018 */ sw $a2, 0x18($sp) -/* 0C9FE0 800C93E0 24040001 */ li $a0, 1 -/* 0C9FE4 800C93E4 0C03268C */ jal func_800C9A30 -/* 0C9FE8 800C93E8 AFA5001C */ sw $a1, 0x1c($sp) -/* 0C9FEC 800C93EC 8FA60018 */ lw $a2, 0x18($sp) -/* 0C9FF0 800C93F0 8FA5001C */ lw $a1, 0x1c($sp) -/* 0C9FF4 800C93F4 00402025 */ move $a0, $v0 -/* 0C9FF8 800C93F8 8CCE0020 */ lw $t6, 0x20($a2) -/* 0C9FFC 800C93FC ACAE0010 */ sw $t6, 0x10($a1) -/* 0CA000 800C9400 8CCF0000 */ lw $t7, ($a2) -/* 0CA004 800C9404 ACAF0000 */ sw $t7, ($a1) -/* 0CA008 800C9408 0C03268C */ jal func_800C9A30 -/* 0CA00C 800C940C ACC50000 */ sw $a1, ($a2) -/* 0CA010 800C9410 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CA014 800C9414 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0CA018 800C9418 03E00008 */ jr $ra -/* 0CA01C 800C941C 00000000 */ nop - -glabel func_800C9420 -/* 0CA020 800C9420 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0CA024 800C9424 AFBF0014 */ sw $ra, 0x14($sp) -/* 0CA028 800C9428 AFA60030 */ sw $a2, 0x30($sp) -/* 0CA02C 800C942C 8C870014 */ lw $a3, 0x14($a0) -/* 0CA030 800C9430 00067400 */ sll $t6, $a2, 0x10 -/* 0CA034 800C9434 000E3403 */ sra $a2, $t6, 0x10 -/* 0CA038 800C9438 00804025 */ move $t0, $a0 -/* 0CA03C 800C943C 10E0000D */ beqz $a3, .L800C9474 -/* 0CA040 800C9440 00001825 */ move $v1, $zero -/* 0CA044 800C9444 ACA70000 */ sw $a3, ($a1) -/* 0CA048 800C9448 AFA80028 */ sw $t0, 0x28($sp) -/* 0CA04C 800C944C AFA70024 */ sw $a3, 0x24($sp) -/* 0CA050 800C9450 AFA0001C */ sw $zero, 0x1c($sp) -/* 0CA054 800C9454 0C0321D8 */ jal func_800C8760 -/* 0CA058 800C9458 00E02025 */ move $a0, $a3 -/* 0CA05C 800C945C 8FA80028 */ lw $t0, 0x28($sp) -/* 0CA060 800C9460 8FA40024 */ lw $a0, 0x24($sp) -/* 0CA064 800C9464 0C0321E4 */ jal func_800C8790 -/* 0CA068 800C9468 2505000C */ addiu $a1, $t0, 0xc -/* 0CA06C 800C946C 10000021 */ b .L800C94F4 -/* 0CA070 800C9470 8FA3001C */ lw $v1, 0x1c($sp) -.L800C9474: -/* 0CA074 800C9474 8D070004 */ lw $a3, 4($t0) -/* 0CA078 800C9478 10E0000C */ beqz $a3, .L800C94AC -/* 0CA07C 800C947C 00E02025 */ move $a0, $a3 -/* 0CA080 800C9480 ACA70000 */ sw $a3, ($a1) -/* 0CA084 800C9484 AFA80028 */ sw $t0, 0x28($sp) -/* 0CA088 800C9488 AFA70024 */ sw $a3, 0x24($sp) -/* 0CA08C 800C948C 0C0321D8 */ jal func_800C8760 -/* 0CA090 800C9490 AFA3001C */ sw $v1, 0x1c($sp) -/* 0CA094 800C9494 8FA80028 */ lw $t0, 0x28($sp) -/* 0CA098 800C9498 8FA40024 */ lw $a0, 0x24($sp) -/* 0CA09C 800C949C 0C0321E4 */ jal func_800C8790 -/* 0CA0A0 800C94A0 2505000C */ addiu $a1, $t0, 0xc -/* 0CA0A4 800C94A4 10000013 */ b .L800C94F4 -/* 0CA0A8 800C94A8 8FA3001C */ lw $v1, 0x1c($sp) -.L800C94AC: -/* 0CA0AC 800C94AC 8D07000C */ lw $a3, 0xc($t0) -/* 0CA0B0 800C94B0 50E00011 */ beql $a3, $zero, .L800C94F8 -/* 0CA0B4 800C94B4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CA0B8 800C94B8 8CF80008 */ lw $t8, 8($a3) -.L800C94BC: -/* 0CA0BC 800C94BC 87190016 */ lh $t9, 0x16($t8) -/* 0CA0C0 800C94C0 00D9082A */ slt $at, $a2, $t9 -/* 0CA0C4 800C94C4 54200009 */ bnezl $at, .L800C94EC -/* 0CA0C8 800C94C8 8CE70000 */ lw $a3, ($a3) -/* 0CA0CC 800C94CC 8CE900D8 */ lw $t1, 0xd8($a3) -/* 0CA0D0 800C94D0 55200006 */ bnezl $t1, .L800C94EC -/* 0CA0D4 800C94D4 8CE70000 */ lw $a3, ($a3) -/* 0CA0D8 800C94D8 ACA70000 */ sw $a3, ($a1) -/* 0CA0DC 800C94DC 8CEA0008 */ lw $t2, 8($a3) -/* 0CA0E0 800C94E0 24030001 */ li $v1, 1 -/* 0CA0E4 800C94E4 85460016 */ lh $a2, 0x16($t2) -/* 0CA0E8 800C94E8 8CE70000 */ lw $a3, ($a3) -.L800C94EC: -/* 0CA0EC 800C94EC 54E0FFF3 */ bnezl $a3, .L800C94BC -/* 0CA0F0 800C94F0 8CF80008 */ lw $t8, 8($a3) -.L800C94F4: -/* 0CA0F4 800C94F4 8FBF0014 */ lw $ra, 0x14($sp) -.L800C94F8: -/* 0CA0F8 800C94F8 27BD0028 */ addiu $sp, $sp, 0x28 -/* 0CA0FC 800C94FC 00601025 */ move $v0, $v1 -/* 0CA100 800C9500 03E00008 */ jr $ra -/* 0CA104 800C9504 00000000 */ nop - -glabel func_800C9508 -/* 0CA108 800C9508 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0CA10C 800C950C AFBF001C */ sw $ra, 0x1c($sp) -/* 0CA110 800C9510 AFB00018 */ sw $s0, 0x18($sp) -/* 0CA114 800C9514 AFA40030 */ sw $a0, 0x30($sp) -/* 0CA118 800C9518 AFA0002C */ sw $zero, 0x2c($sp) -/* 0CA11C 800C951C 84CE0000 */ lh $t6, ($a2) -/* 0CA120 800C9520 00A08025 */ move $s0, $a1 -/* 0CA124 800C9524 A4AE0016 */ sh $t6, 0x16($a1) -/* 0CA128 800C9528 90CF0004 */ lbu $t7, 4($a2) -/* 0CA12C 800C952C ACA0000C */ sw $zero, 0xc($a1) -/* 0CA130 800C9530 A4AF001A */ sh $t7, 0x1a($a1) -/* 0CA134 800C9534 84D80002 */ lh $t8, 2($a2) -/* 0CA138 800C9538 A4A00014 */ sh $zero, 0x14($a1) -/* 0CA13C 800C953C ACA00008 */ sw $zero, 8($a1) -/* 0CA140 800C9540 A4B80018 */ sh $t8, 0x18($a1) -/* 0CA144 800C9544 84C60000 */ lh $a2, ($a2) -/* 0CA148 800C9548 8FA40030 */ lw $a0, 0x30($sp) -/* 0CA14C 800C954C 0C032508 */ jal func_800C9420 -/* 0CA150 800C9550 27A5002C */ addiu $a1, $sp, 0x2c -/* 0CA154 800C9554 8FB9002C */ lw $t9, 0x2c($sp) -/* 0CA158 800C9558 53200035 */ beql $t9, $zero, .L800C9630 -/* 0CA15C 800C955C 8FA2002C */ lw $v0, 0x2c($sp) -/* 0CA160 800C9560 1040002C */ beqz $v0, .L800C9614 -/* 0CA164 800C9564 8F24000C */ lw $a0, 0xc($t9) -/* 0CA168 800C9568 24080200 */ li $t0, 512 -/* 0CA16C 800C956C AF2800D8 */ sw $t0, 0xd8($t9) -/* 0CA170 800C9570 8FA9002C */ lw $t1, 0x2c($sp) -/* 0CA174 800C9574 8D2A0008 */ lw $t2, 8($t1) -/* 0CA178 800C9578 AD400008 */ sw $zero, 8($t2) -/* 0CA17C 800C957C 0C01959A */ jal func_80065668 -/* 0CA180 800C9580 AFA40028 */ sw $a0, 0x28($sp) -/* 0CA184 800C9584 8FAB0030 */ lw $t3, 0x30($sp) -/* 0CA188 800C9588 8FA40028 */ lw $a0, 0x28($sp) -/* 0CA18C 800C958C 240D000B */ li $t5, 11 -/* 0CA190 800C9590 8D6C001C */ lw $t4, 0x1c($t3) -/* 0CA194 800C9594 A44D0008 */ sh $t5, 8($v0) -/* 0CA198 800C9598 AC40000C */ sw $zero, 0xc($v0) -/* 0CA19C 800C959C AC4C0004 */ sw $t4, 4($v0) -/* 0CA1A0 800C95A0 8FAE002C */ lw $t6, 0x2c($sp) -/* 0CA1A4 800C95A4 24050003 */ li $a1, 3 -/* 0CA1A8 800C95A8 00403025 */ move $a2, $v0 -/* 0CA1AC 800C95AC 8DCF00D8 */ lw $t7, 0xd8($t6) -/* 0CA1B0 800C95B0 25F8FFC0 */ addiu $t8, $t7, -0x40 -/* 0CA1B4 800C95B4 AC580010 */ sw $t8, 0x10($v0) -/* 0CA1B8 800C95B8 8C990008 */ lw $t9, 8($a0) -/* 0CA1BC 800C95BC 0320F809 */ jalr $t9 -/* 0CA1C0 800C95C0 00000000 */ nop -/* 0CA1C4 800C95C4 0C01959A */ jal func_80065668 -/* 0CA1C8 800C95C8 00000000 */ nop -/* 0CA1CC 800C95CC 8FA40028 */ lw $a0, 0x28($sp) -/* 0CA1D0 800C95D0 10400012 */ beqz $v0, .L800C961C -/* 0CA1D4 800C95D4 00403025 */ move $a2, $v0 -/* 0CA1D8 800C95D8 8FA80030 */ lw $t0, 0x30($sp) -/* 0CA1DC 800C95DC 8FAA002C */ lw $t2, 0x2c($sp) -/* 0CA1E0 800C95E0 240D000F */ li $t5, 15 -/* 0CA1E4 800C95E4 8D09001C */ lw $t1, 0x1c($t0) -/* 0CA1E8 800C95E8 8D4B00D8 */ lw $t3, 0xd8($t2) -/* 0CA1EC 800C95EC A44D0008 */ sh $t5, 8($v0) -/* 0CA1F0 800C95F0 AC400000 */ sw $zero, ($v0) -/* 0CA1F4 800C95F4 012B6021 */ addu $t4, $t1, $t3 -/* 0CA1F8 800C95F8 AC4C0004 */ sw $t4, 4($v0) -/* 0CA1FC 800C95FC 8C990008 */ lw $t9, 8($a0) -/* 0CA200 800C9600 24050003 */ li $a1, 3 -/* 0CA204 800C9604 0320F809 */ jalr $t9 -/* 0CA208 800C9608 00000000 */ nop -/* 0CA20C 800C960C 10000004 */ b .L800C9620 -/* 0CA210 800C9610 8FAF002C */ lw $t7, 0x2c($sp) -.L800C9614: -/* 0CA214 800C9614 8FAE002C */ lw $t6, 0x2c($sp) -/* 0CA218 800C9618 ADC000D8 */ sw $zero, 0xd8($t6) -.L800C961C: -/* 0CA21C 800C961C 8FAF002C */ lw $t7, 0x2c($sp) -.L800C9620: -/* 0CA220 800C9620 ADF00008 */ sw $s0, 8($t7) -/* 0CA224 800C9624 8FB8002C */ lw $t8, 0x2c($sp) -/* 0CA228 800C9628 AE180008 */ sw $t8, 8($s0) -/* 0CA22C 800C962C 8FA2002C */ lw $v0, 0x2c($sp) -.L800C9630: -/* 0CA230 800C9630 8FBF001C */ lw $ra, 0x1c($sp) -/* 0CA234 800C9634 8FB00018 */ lw $s0, 0x18($sp) -/* 0CA238 800C9638 0002402B */ sltu $t0, $zero, $v0 -/* 0CA23C 800C963C 01001025 */ move $v0, $t0 -/* 0CA240 800C9640 03E00008 */ jr $ra -/* 0CA244 800C9644 27BD0030 */ addiu $sp, $sp, 0x30 - -/* 0CA248 800C9648 00000000 */ nop -/* 0CA24C 800C964C 00000000 */ nop diff --git a/asm/unknown_0CA530.s b/asm/unknown_0CA530.s deleted file mode 100755 index c3bdc2db..00000000 --- a/asm/unknown_0CA530.s +++ /dev/null @@ -1,134 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_800C9930 -/* 0CA530 800C9930 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0CA534 800C9934 AFBF0014 */ sw $ra, 0x14($sp) -/* 0CA538 800C9938 8CA60008 */ lw $a2, 8($a1) -/* 0CA53C 800C993C 00804025 */ move $t0, $a0 -/* 0CA540 800C9940 00A03825 */ move $a3, $a1 -/* 0CA544 800C9944 50C00023 */ beql $a2, $zero, .L800C99D4 -/* 0CA548 800C9948 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CA54C 800C994C 8CCE00D8 */ lw $t6, 0xd8($a2) -/* 0CA550 800C9950 51C0001A */ beql $t6, $zero, .L800C99BC -/* 0CA554 800C9954 01002025 */ move $a0, $t0 -/* 0CA558 800C9958 AFA5001C */ sw $a1, 0x1c($sp) -/* 0CA55C 800C995C 0C01959A */ jal func_80065668 -/* 0CA560 800C9960 AFA40018 */ sw $a0, 0x18($sp) -/* 0CA564 800C9964 8FA7001C */ lw $a3, 0x1c($sp) -/* 0CA568 800C9968 8FA80018 */ lw $t0, 0x18($sp) -/* 0CA56C 800C996C 10400018 */ beqz $v0, .L800C99D0 -/* 0CA570 800C9970 00403025 */ move $a2, $v0 -/* 0CA574 800C9974 8CF80008 */ lw $t8, 8($a3) -/* 0CA578 800C9978 8D0F001C */ lw $t7, 0x1c($t0) -/* 0CA57C 800C997C 24050003 */ li $a1, 3 -/* 0CA580 800C9980 8F1900D8 */ lw $t9, 0xd8($t8) -/* 0CA584 800C9984 A4400008 */ sh $zero, 8($v0) -/* 0CA588 800C9988 01F94821 */ addu $t1, $t7, $t9 -/* 0CA58C 800C998C AC490004 */ sw $t1, 4($v0) -/* 0CA590 800C9990 8CEA0008 */ lw $t2, 8($a3) -/* 0CA594 800C9994 AC4A000C */ sw $t2, 0xc($v0) -/* 0CA598 800C9998 8CEB0008 */ lw $t3, 8($a3) -/* 0CA59C 800C999C 8D64000C */ lw $a0, 0xc($t3) -/* 0CA5A0 800C99A0 AFA7001C */ sw $a3, 0x1c($sp) -/* 0CA5A4 800C99A4 8C990008 */ lw $t9, 8($a0) -/* 0CA5A8 800C99A8 0320F809 */ jalr $t9 -/* 0CA5AC 800C99AC 00000000 */ nop -/* 0CA5B0 800C99B0 10000006 */ b .L800C99CC -/* 0CA5B4 800C99B4 8FA7001C */ lw $a3, 0x1c($sp) -/* 0CA5B8 800C99B8 01002025 */ move $a0, $t0 -.L800C99BC: -/* 0CA5BC 800C99BC 00C02825 */ move $a1, $a2 -/* 0CA5C0 800C99C0 0C0195C7 */ jal func_8006571C -/* 0CA5C4 800C99C4 AFA7001C */ sw $a3, 0x1c($sp) -/* 0CA5C8 800C99C8 8FA7001C */ lw $a3, 0x1c($sp) -.L800C99CC: -/* 0CA5CC 800C99CC ACE00008 */ sw $zero, 8($a3) -.L800C99D0: -/* 0CA5D0 800C99D0 8FBF0014 */ lw $ra, 0x14($sp) -.L800C99D4: -/* 0CA5D4 800C99D4 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0CA5D8 800C99D8 03E00008 */ jr $ra -/* 0CA5DC 800C99DC 00000000 */ nop - -glabel func_800C99E0 -/* 0CA5E0 800C99E0 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0CA5E4 800C99E4 44811000 */ mtc1 $at, $f2 -/* 0CA5E8 800C99E8 04800004 */ bltz $a0, .L800C99FC -/* 0CA5EC 800C99EC 3C01800F */ lui $at, 0x800f -/* 0CA5F0 800C99F0 3C01800F */ lui $at, %hi(D_800E94C4) # $at, 0x800f -/* 0CA5F4 800C99F4 10000003 */ b .L800C9A04 -/* 0CA5F8 800C99F8 C42094C0 */ lwc1 $f0, %lo(D_800E94C0)($at) -.L800C99FC: -/* 0CA5FC 800C99FC C42094C4 */ lwc1 $f0, %lo(D_800E94C4)($at) -/* 0CA600 800C9A00 00042023 */ negu $a0, $a0 -.L800C9A04: -/* 0CA604 800C9A04 10800008 */ beqz $a0, .L800C9A28 -.L800C9A08: -/* 0CA608 800C9A08 308E0001 */ andi $t6, $a0, 1 -/* 0CA60C 800C9A0C 11C00003 */ beqz $t6, .L800C9A1C -/* 0CA610 800C9A10 00047843 */ sra $t7, $a0, 1 -/* 0CA614 800C9A14 46001082 */ mul.s $f2, $f2, $f0 -/* 0CA618 800C9A18 00000000 */ nop -.L800C9A1C: -/* 0CA61C 800C9A1C 46000002 */ mul.s $f0, $f0, $f0 -/* 0CA620 800C9A20 15E0FFF9 */ bnez $t7, .L800C9A08 -/* 0CA624 800C9A24 01E02025 */ move $a0, $t7 -.L800C9A28: -/* 0CA628 800C9A28 03E00008 */ jr $ra -/* 0CA62C 800C9A2C 46001006 */ mov.s $f0, $f2 - -glabel func_800C9A30 -/* 0CA630 800C9A30 400C6000 */ mfc0 $t4, $12 -/* 0CA634 800C9A34 3182FF01 */ andi $v0, $t4, 0xff01 -/* 0CA638 800C9A38 3C08800E */ lui $t0, %hi(D_800E38AC) # $t0, 0x800e -/* 0CA63C 800C9A3C 250838AC */ addiu $t0, %lo(D_800E38AC) # addiu $t0, $t0, 0x38ac -/* 0CA640 800C9A40 8D0B0000 */ lw $t3, ($t0) -/* 0CA644 800C9A44 2401FFFF */ li $at, -1 -/* 0CA648 800C9A48 01614026 */ xor $t0, $t3, $at -/* 0CA64C 800C9A4C 3108FF00 */ andi $t0, $t0, 0xff00 -/* 0CA650 800C9A50 00481025 */ or $v0, $v0, $t0 -/* 0CA654 800C9A54 3C0AA430 */ lui $t2, %hi(D_A430000C) # $t2, 0xa430 -/* 0CA658 800C9A58 8D4A000C */ lw $t2, %lo(D_A430000C)($t2) -/* 0CA65C 800C9A5C 11400005 */ beqz $t2, .L800C9A74 -/* 0CA660 800C9A60 000B4C02 */ srl $t1, $t3, 0x10 -/* 0CA664 800C9A64 2401FFFF */ li $at, -1 -/* 0CA668 800C9A68 01214826 */ xor $t1, $t1, $at -/* 0CA66C 800C9A6C 3129003F */ andi $t1, $t1, 0x3f -/* 0CA670 800C9A70 01495025 */ or $t2, $t2, $t1 -.L800C9A74: -/* 0CA674 800C9A74 000A5400 */ sll $t2, $t2, 0x10 -/* 0CA678 800C9A78 004A1025 */ or $v0, $v0, $t2 -/* 0CA67C 800C9A7C 3C01003F */ lui $at, 0x3f -/* 0CA680 800C9A80 00814024 */ and $t0, $a0, $at -/* 0CA684 800C9A84 010B4024 */ and $t0, $t0, $t3 -/* 0CA688 800C9A88 000843C2 */ srl $t0, $t0, 0xf -/* 0CA68C 800C9A8C 3C0A800F */ lui $t2, 0x800f -/* 0CA690 800C9A90 01485021 */ addu $t2, $t2, $t0 -/* 0CA694 800C9A94 954A94D0 */ lhu $t2, -0x6b30($t2) -/* 0CA698 800C9A98 3C01A430 */ lui $at, %hi(D_A430000C) # $at, 0xa430 -/* 0CA69C 800C9A9C AC2A000C */ sw $t2, %lo(D_A430000C)($at) -/* 0CA6A0 800C9AA0 3088FF01 */ andi $t0, $a0, 0xff01 -/* 0CA6A4 800C9AA4 3169FF00 */ andi $t1, $t3, 0xff00 -/* 0CA6A8 800C9AA8 01094024 */ and $t0, $t0, $t1 -/* 0CA6AC 800C9AAC 3C01FFFF */ lui $at, (0xFFFF00FF >> 16) # lui $at, 0xffff -/* 0CA6B0 800C9AB0 342100FF */ ori $at, (0xFFFF00FF & 0xFFFF) # ori $at, $at, 0xff -/* 0CA6B4 800C9AB4 01816024 */ and $t4, $t4, $at -/* 0CA6B8 800C9AB8 01886025 */ or $t4, $t4, $t0 -/* 0CA6BC 800C9ABC 408C6000 */ mtc0 $t4, $12 -/* 0CA6C0 800C9AC0 00000000 */ nop -/* 0CA6C4 800C9AC4 00000000 */ nop -/* 0CA6C8 800C9AC8 03E00008 */ jr $ra -/* 0CA6CC 800C9ACC 00000000 */ nop - -glabel sqrtf -/* 0CA6D0 800C9AD0 03E00008 */ jr $ra -/* 0CA6D4 800C9AD4 46006004 */ sqrt.s $f0, $f12 - -/* 0CA6D8 800C9AD8 00000000 */ nop -/* 0CA6DC 800C9ADC 00000000 */ nop diff --git a/asm/unknown_0CA9A0.s b/asm/unknown_0CA9A0.s deleted file mode 100755 index 4d297dc2..00000000 --- a/asm/unknown_0CA9A0.s +++ /dev/null @@ -1,2614 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel bcopy -/* 0CA9A0 800C9DA0 10C0001A */ beqz $a2, .L800C9E0C -/* 0CA9A4 800C9DA4 00A03825 */ move $a3, $a1 -/* 0CA9A8 800C9DA8 10850018 */ beq $a0, $a1, .L800C9E0C -/* 0CA9AC 800C9DAC 00A4082A */ slt $at, $a1, $a0 -/* 0CA9B0 800C9DB0 54200008 */ bnezl $at, .L800C9DD4 -/* 0CA9B4 800C9DB4 28C10010 */ slti $at, $a2, 0x10 -/* 0CA9B8 800C9DB8 00861020 */ add $v0, $a0, $a2 -/* 0CA9BC 800C9DBC 00A2082A */ slt $at, $a1, $v0 -/* 0CA9C0 800C9DC0 50200004 */ beql $at, $zero, .L800C9DD4 -/* 0CA9C4 800C9DC4 28C10010 */ slti $at, $a2, 0x10 -/* 0CA9C8 800C9DC8 1000005B */ b .L800C9F38 -/* 0CA9CC 800C9DCC 28C10010 */ slti $at, $a2, 0x10 -/* 0CA9D0 800C9DD0 28C10010 */ slti $at, $a2, 0x10 -.L800C9DD4: -/* 0CA9D4 800C9DD4 14200005 */ bnez $at, .L800C9DEC -/* 0CA9D8 800C9DD8 00000000 */ nop -/* 0CA9DC 800C9DDC 30820003 */ andi $v0, $a0, 3 -/* 0CA9E0 800C9DE0 30A30003 */ andi $v1, $a1, 3 -/* 0CA9E4 800C9DE4 1043000B */ beq $v0, $v1, .L800C9E14 -/* 0CA9E8 800C9DE8 00000000 */ nop -.L800C9DEC: -/* 0CA9EC 800C9DEC 10C00007 */ beqz $a2, .L800C9E0C -/* 0CA9F0 800C9DF0 00000000 */ nop -/* 0CA9F4 800C9DF4 00861821 */ addu $v1, $a0, $a2 -.L800C9DF8: -/* 0CA9F8 800C9DF8 80820000 */ lb $v0, ($a0) -/* 0CA9FC 800C9DFC 24840001 */ addiu $a0, $a0, 1 -/* 0CAA00 800C9E00 24A50001 */ addiu $a1, $a1, 1 -/* 0CAA04 800C9E04 1483FFFC */ bne $a0, $v1, .L800C9DF8 -/* 0CAA08 800C9E08 A0A2FFFF */ sb $v0, -1($a1) -.L800C9E0C: -/* 0CAA0C 800C9E0C 03E00008 */ jr $ra -/* 0CAA10 800C9E10 00E01025 */ move $v0, $a3 - -.L800C9E14: -/* 0CAA14 800C9E14 10400018 */ beqz $v0, .L800C9E78 -/* 0CAA18 800C9E18 24010001 */ li $at, 1 -/* 0CAA1C 800C9E1C 1041000F */ beq $v0, $at, .L800C9E5C -/* 0CAA20 800C9E20 24010002 */ li $at, 2 -/* 0CAA24 800C9E24 50410008 */ beql $v0, $at, .L800C9E48 -/* 0CAA28 800C9E28 84820000 */ lh $v0, ($a0) -/* 0CAA2C 800C9E2C 80820000 */ lb $v0, ($a0) -/* 0CAA30 800C9E30 24840001 */ addiu $a0, $a0, 1 -/* 0CAA34 800C9E34 24A50001 */ addiu $a1, $a1, 1 -/* 0CAA38 800C9E38 24C6FFFF */ addiu $a2, $a2, -1 -/* 0CAA3C 800C9E3C 1000000E */ b .L800C9E78 -/* 0CAA40 800C9E40 A0A2FFFF */ sb $v0, -1($a1) -/* 0CAA44 800C9E44 84820000 */ lh $v0, ($a0) -.L800C9E48: -/* 0CAA48 800C9E48 24840002 */ addiu $a0, $a0, 2 -/* 0CAA4C 800C9E4C 24A50002 */ addiu $a1, $a1, 2 -/* 0CAA50 800C9E50 24C6FFFE */ addiu $a2, $a2, -2 -/* 0CAA54 800C9E54 10000008 */ b .L800C9E78 -/* 0CAA58 800C9E58 A4A2FFFE */ sh $v0, -2($a1) -.L800C9E5C: -/* 0CAA5C 800C9E5C 80820000 */ lb $v0, ($a0) -/* 0CAA60 800C9E60 84830001 */ lh $v1, 1($a0) -/* 0CAA64 800C9E64 24840003 */ addiu $a0, $a0, 3 -/* 0CAA68 800C9E68 24A50003 */ addiu $a1, $a1, 3 -/* 0CAA6C 800C9E6C 24C6FFFD */ addiu $a2, $a2, -3 -/* 0CAA70 800C9E70 A0A2FFFD */ sb $v0, -3($a1) -/* 0CAA74 800C9E74 A4A3FFFE */ sh $v1, -2($a1) -.L800C9E78: -/* 0CAA78 800C9E78 28C10020 */ slti $at, $a2, 0x20 -/* 0CAA7C 800C9E7C 54200016 */ bnezl $at, .L800C9ED8 -/* 0CAA80 800C9E80 28C10010 */ slti $at, $a2, 0x10 -/* 0CAA84 800C9E84 8C820000 */ lw $v0, ($a0) -/* 0CAA88 800C9E88 8C830004 */ lw $v1, 4($a0) -/* 0CAA8C 800C9E8C 8C880008 */ lw $t0, 8($a0) -/* 0CAA90 800C9E90 8C89000C */ lw $t1, 0xc($a0) -/* 0CAA94 800C9E94 8C8A0010 */ lw $t2, 0x10($a0) -/* 0CAA98 800C9E98 8C8B0014 */ lw $t3, 0x14($a0) -/* 0CAA9C 800C9E9C 8C8C0018 */ lw $t4, 0x18($a0) -/* 0CAAA0 800C9EA0 8C8D001C */ lw $t5, 0x1c($a0) -/* 0CAAA4 800C9EA4 24840020 */ addiu $a0, $a0, 0x20 -/* 0CAAA8 800C9EA8 24A50020 */ addiu $a1, $a1, 0x20 -/* 0CAAAC 800C9EAC 24C6FFE0 */ addiu $a2, $a2, -0x20 -/* 0CAAB0 800C9EB0 ACA2FFE0 */ sw $v0, -0x20($a1) -/* 0CAAB4 800C9EB4 ACA3FFE4 */ sw $v1, -0x1c($a1) -/* 0CAAB8 800C9EB8 ACA8FFE8 */ sw $t0, -0x18($a1) -/* 0CAABC 800C9EBC ACA9FFEC */ sw $t1, -0x14($a1) -/* 0CAAC0 800C9EC0 ACAAFFF0 */ sw $t2, -0x10($a1) -/* 0CAAC4 800C9EC4 ACABFFF4 */ sw $t3, -0xc($a1) -/* 0CAAC8 800C9EC8 ACACFFF8 */ sw $t4, -8($a1) -/* 0CAACC 800C9ECC 1000FFEA */ b .L800C9E78 -/* 0CAAD0 800C9ED0 ACADFFFC */ sw $t5, -4($a1) -.L800C9ED4: -/* 0CAAD4 800C9ED4 28C10010 */ slti $at, $a2, 0x10 -.L800C9ED8: -/* 0CAAD8 800C9ED8 5420000E */ bnezl $at, .L800C9F14 -/* 0CAADC 800C9EDC 28C10004 */ slti $at, $a2, 4 -/* 0CAAE0 800C9EE0 8C820000 */ lw $v0, ($a0) -/* 0CAAE4 800C9EE4 8C830004 */ lw $v1, 4($a0) -/* 0CAAE8 800C9EE8 8C880008 */ lw $t0, 8($a0) -/* 0CAAEC 800C9EEC 8C89000C */ lw $t1, 0xc($a0) -/* 0CAAF0 800C9EF0 24840010 */ addiu $a0, $a0, 0x10 -/* 0CAAF4 800C9EF4 24A50010 */ addiu $a1, $a1, 0x10 -/* 0CAAF8 800C9EF8 24C6FFF0 */ addiu $a2, $a2, -0x10 -/* 0CAAFC 800C9EFC ACA2FFF0 */ sw $v0, -0x10($a1) -/* 0CAB00 800C9F00 ACA3FFF4 */ sw $v1, -0xc($a1) -/* 0CAB04 800C9F04 ACA8FFF8 */ sw $t0, -8($a1) -/* 0CAB08 800C9F08 1000FFF2 */ b .L800C9ED4 -/* 0CAB0C 800C9F0C ACA9FFFC */ sw $t1, -4($a1) -.L800C9F10: -/* 0CAB10 800C9F10 28C10004 */ slti $at, $a2, 4 -.L800C9F14: -/* 0CAB14 800C9F14 1420FFB5 */ bnez $at, .L800C9DEC -/* 0CAB18 800C9F18 00000000 */ nop -/* 0CAB1C 800C9F1C 8C820000 */ lw $v0, ($a0) -/* 0CAB20 800C9F20 24840004 */ addiu $a0, $a0, 4 -/* 0CAB24 800C9F24 24A50004 */ addiu $a1, $a1, 4 -/* 0CAB28 800C9F28 24C6FFFC */ addiu $a2, $a2, -4 -/* 0CAB2C 800C9F2C 1000FFF8 */ b .L800C9F10 -/* 0CAB30 800C9F30 ACA2FFFC */ sw $v0, -4($a1) -/* 0CAB34 800C9F34 28C10010 */ slti $at, $a2, 0x10 -.L800C9F38: -/* 0CAB38 800C9F38 00862020 */ add $a0, $a0, $a2 -/* 0CAB3C 800C9F3C 14200005 */ bnez $at, .L800C9F54 -/* 0CAB40 800C9F40 00A62820 */ add $a1, $a1, $a2 -/* 0CAB44 800C9F44 30820003 */ andi $v0, $a0, 3 -/* 0CAB48 800C9F48 30A30003 */ andi $v1, $a1, 3 -/* 0CAB4C 800C9F4C 1043000D */ beq $v0, $v1, .L800C9F84 -/* 0CAB50 800C9F50 00000000 */ nop -.L800C9F54: -/* 0CAB54 800C9F54 10C0FFAD */ beqz $a2, .L800C9E0C -/* 0CAB58 800C9F58 00000000 */ nop -/* 0CAB5C 800C9F5C 2484FFFF */ addiu $a0, $a0, -1 -/* 0CAB60 800C9F60 24A5FFFF */ addiu $a1, $a1, -1 -/* 0CAB64 800C9F64 00861823 */ subu $v1, $a0, $a2 -.L800C9F68: -/* 0CAB68 800C9F68 80820000 */ lb $v0, ($a0) -/* 0CAB6C 800C9F6C 2484FFFF */ addiu $a0, $a0, -1 -/* 0CAB70 800C9F70 24A5FFFF */ addiu $a1, $a1, -1 -/* 0CAB74 800C9F74 1483FFFC */ bne $a0, $v1, .L800C9F68 -/* 0CAB78 800C9F78 A0A20001 */ sb $v0, 1($a1) -/* 0CAB7C 800C9F7C 03E00008 */ jr $ra -/* 0CAB80 800C9F80 00E01025 */ move $v0, $a3 - -.L800C9F84: -/* 0CAB84 800C9F84 10400018 */ beqz $v0, .L800C9FE8 -/* 0CAB88 800C9F88 24010003 */ li $at, 3 -/* 0CAB8C 800C9F8C 1041000F */ beq $v0, $at, .L800C9FCC -/* 0CAB90 800C9F90 24010002 */ li $at, 2 -/* 0CAB94 800C9F94 50410008 */ beql $v0, $at, .L800C9FB8 -/* 0CAB98 800C9F98 8482FFFE */ lh $v0, -2($a0) -/* 0CAB9C 800C9F9C 8082FFFF */ lb $v0, -1($a0) -/* 0CABA0 800C9FA0 2484FFFF */ addiu $a0, $a0, -1 -/* 0CABA4 800C9FA4 24A5FFFF */ addiu $a1, $a1, -1 -/* 0CABA8 800C9FA8 24C6FFFF */ addiu $a2, $a2, -1 -/* 0CABAC 800C9FAC 1000000E */ b .L800C9FE8 -/* 0CABB0 800C9FB0 A0A20000 */ sb $v0, ($a1) -/* 0CABB4 800C9FB4 8482FFFE */ lh $v0, -2($a0) -.L800C9FB8: -/* 0CABB8 800C9FB8 2484FFFE */ addiu $a0, $a0, -2 -/* 0CABBC 800C9FBC 24A5FFFE */ addiu $a1, $a1, -2 -/* 0CABC0 800C9FC0 24C6FFFE */ addiu $a2, $a2, -2 -/* 0CABC4 800C9FC4 10000008 */ b .L800C9FE8 -/* 0CABC8 800C9FC8 A4A20000 */ sh $v0, ($a1) -.L800C9FCC: -/* 0CABCC 800C9FCC 8082FFFF */ lb $v0, -1($a0) -/* 0CABD0 800C9FD0 8483FFFD */ lh $v1, -3($a0) -/* 0CABD4 800C9FD4 2484FFFD */ addiu $a0, $a0, -3 -/* 0CABD8 800C9FD8 24A5FFFD */ addiu $a1, $a1, -3 -/* 0CABDC 800C9FDC 24C6FFFD */ addiu $a2, $a2, -3 -/* 0CABE0 800C9FE0 A0A20002 */ sb $v0, 2($a1) -/* 0CABE4 800C9FE4 A4A30000 */ sh $v1, ($a1) -.L800C9FE8: -/* 0CABE8 800C9FE8 28C10020 */ slti $at, $a2, 0x20 -/* 0CABEC 800C9FEC 54200016 */ bnezl $at, .L800CA048 -/* 0CABF0 800C9FF0 28C10010 */ slti $at, $a2, 0x10 -/* 0CABF4 800C9FF4 8C82FFFC */ lw $v0, -4($a0) -/* 0CABF8 800C9FF8 8C83FFF8 */ lw $v1, -8($a0) -/* 0CABFC 800C9FFC 8C88FFF4 */ lw $t0, -0xc($a0) -/* 0CAC00 800CA000 8C89FFF0 */ lw $t1, -0x10($a0) -/* 0CAC04 800CA004 8C8AFFEC */ lw $t2, -0x14($a0) -/* 0CAC08 800CA008 8C8BFFE8 */ lw $t3, -0x18($a0) -/* 0CAC0C 800CA00C 8C8CFFE4 */ lw $t4, -0x1c($a0) -/* 0CAC10 800CA010 8C8DFFE0 */ lw $t5, -0x20($a0) -/* 0CAC14 800CA014 2484FFE0 */ addiu $a0, $a0, -0x20 -/* 0CAC18 800CA018 24A5FFE0 */ addiu $a1, $a1, -0x20 -/* 0CAC1C 800CA01C 24C6FFE0 */ addiu $a2, $a2, -0x20 -/* 0CAC20 800CA020 ACA2001C */ sw $v0, 0x1c($a1) -/* 0CAC24 800CA024 ACA30018 */ sw $v1, 0x18($a1) -/* 0CAC28 800CA028 ACA80014 */ sw $t0, 0x14($a1) -/* 0CAC2C 800CA02C ACA90010 */ sw $t1, 0x10($a1) -/* 0CAC30 800CA030 ACAA000C */ sw $t2, 0xc($a1) -/* 0CAC34 800CA034 ACAB0008 */ sw $t3, 8($a1) -/* 0CAC38 800CA038 ACAC0004 */ sw $t4, 4($a1) -/* 0CAC3C 800CA03C 1000FFEA */ b .L800C9FE8 -/* 0CAC40 800CA040 ACAD0000 */ sw $t5, ($a1) -.L800CA044: -/* 0CAC44 800CA044 28C10010 */ slti $at, $a2, 0x10 -.L800CA048: -/* 0CAC48 800CA048 5420000E */ bnezl $at, .L800CA084 -/* 0CAC4C 800CA04C 28C10004 */ slti $at, $a2, 4 -/* 0CAC50 800CA050 8C82FFFC */ lw $v0, -4($a0) -/* 0CAC54 800CA054 8C83FFF8 */ lw $v1, -8($a0) -/* 0CAC58 800CA058 8C88FFF4 */ lw $t0, -0xc($a0) -/* 0CAC5C 800CA05C 8C89FFF0 */ lw $t1, -0x10($a0) -/* 0CAC60 800CA060 2484FFF0 */ addiu $a0, $a0, -0x10 -/* 0CAC64 800CA064 24A5FFF0 */ addiu $a1, $a1, -0x10 -/* 0CAC68 800CA068 24C6FFF0 */ addiu $a2, $a2, -0x10 -/* 0CAC6C 800CA06C ACA2000C */ sw $v0, 0xc($a1) -/* 0CAC70 800CA070 ACA30008 */ sw $v1, 8($a1) -/* 0CAC74 800CA074 ACA80004 */ sw $t0, 4($a1) -/* 0CAC78 800CA078 1000FFF2 */ b .L800CA044 -/* 0CAC7C 800CA07C ACA90000 */ sw $t1, ($a1) -.L800CA080: -/* 0CAC80 800CA080 28C10004 */ slti $at, $a2, 4 -.L800CA084: -/* 0CAC84 800CA084 1420FFB3 */ bnez $at, .L800C9F54 -/* 0CAC88 800CA088 00000000 */ nop -/* 0CAC8C 800CA08C 8C82FFFC */ lw $v0, -4($a0) -/* 0CAC90 800CA090 2484FFFC */ addiu $a0, $a0, -4 -/* 0CAC94 800CA094 24A5FFFC */ addiu $a1, $a1, -4 -/* 0CAC98 800CA098 24C6FFFC */ addiu $a2, $a2, -4 -/* 0CAC9C 800CA09C 1000FFF8 */ b .L800CA080 -/* 0CACA0 800CA0A0 ACA20000 */ sw $v0, ($a1) -/* 0CACA4 800CA0A4 00000000 */ nop -/* 0CACA8 800CA0A8 00000000 */ nop -/* 0CACAC 800CA0AC 00000000 */ nop -glabel func_800CA0B0 -/* 0CACB0 800CA0B0 AC800000 */ sw $zero, ($a0) -/* 0CACB4 800CA0B4 AC850004 */ sw $a1, 4($a0) -/* 0CACB8 800CA0B8 AC860008 */ sw $a2, 8($a0) -/* 0CACBC 800CA0BC A480000C */ sh $zero, 0xc($a0) -/* 0CACC0 800CA0C0 A480000E */ sh $zero, 0xe($a0) -/* 0CACC4 800CA0C4 03E00008 */ jr $ra -/* 0CACC8 800CA0C8 AC870010 */ sw $a3, 0x10($a0) - -/* 0CACCC 800CA0CC 00000000 */ nop -glabel D_800CA0D0 -/* 0CACD0 800CA0D0 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 0CACD4 800CA0D4 AFBF001C */ sw $ra, 0x1c($sp) -/* 0CACD8 800CA0D8 AFA40060 */ sw $a0, 0x60($sp) -/* 0CACDC 800CA0DC AFA50064 */ sw $a1, 0x64($sp) -/* 0CACE0 800CA0E0 AFA60068 */ sw $a2, 0x68($sp) -/* 0CACE4 800CA0E4 AFA7006C */ sw $a3, 0x6c($sp) -/* 0CACE8 800CA0E8 8FAE0070 */ lw $t6, 0x70($sp) -/* 0CACEC 800CA0EC 00000000 */ nop -/* 0CACF0 800CA0F0 AFAE005C */ sw $t6, 0x5c($sp) -/* 0CACF4 800CA0F4 8FAF0060 */ lw $t7, 0x60($sp) -/* 0CACF8 800CA0F8 00000000 */ nop -/* 0CACFC 800CA0FC AFAF0058 */ sw $t7, 0x58($sp) -/* 0CAD00 800CA100 8FB8006C */ lw $t8, 0x6c($sp) -/* 0CAD04 800CA104 00000000 */ nop -/* 0CAD08 800CA108 AFB8004C */ sw $t8, 0x4c($sp) -/* 0CAD0C 800CA10C A7A00046 */ sh $zero, 0x46($sp) -/* 0CAD10 800CA110 A7A00056 */ sh $zero, 0x56($sp) -/* 0CAD14 800CA114 8FB90058 */ lw $t9, 0x58($sp) -/* 0CAD18 800CA118 00000000 */ nop -/* 0CAD1C 800CA11C 8F28003C */ lw $t0, 0x3c($t9) -/* 0CAD20 800CA120 00000000 */ nop -/* 0CAD24 800CA124 11000229 */ beqz $t0, .L800CA9CC -/* 0CAD28 800CA128 00000000 */ nop -.L800CA12C: -/* 0CAD2C 800CA12C 8FA9004C */ lw $t1, 0x4c($sp) -/* 0CAD30 800CA130 00000000 */ nop -/* 0CAD34 800CA134 AFA90050 */ sw $t1, 0x50($sp) -/* 0CAD38 800CA138 8FAA0058 */ lw $t2, 0x58($sp) -/* 0CAD3C 800CA13C 00000000 */ nop -/* 0CAD40 800CA140 8D4B003C */ lw $t3, 0x3c($t2) -/* 0CAD44 800CA144 00000000 */ nop -/* 0CAD48 800CA148 8D6C0004 */ lw $t4, 4($t3) -/* 0CAD4C 800CA14C 00000000 */ nop -/* 0CAD50 800CA150 AFAC004C */ sw $t4, 0x4c($sp) -/* 0CAD54 800CA154 8FAD004C */ lw $t5, 0x4c($sp) -/* 0CAD58 800CA158 8FAE0050 */ lw $t6, 0x50($sp) -/* 0CAD5C 800CA15C 00000000 */ nop -/* 0CAD60 800CA160 01AE7823 */ subu $t7, $t5, $t6 -/* 0CAD64 800CA164 AFAF0048 */ sw $t7, 0x48($sp) -/* 0CAD68 800CA168 8FB80048 */ lw $t8, 0x48($sp) -/* 0CAD6C 800CA16C 8FB90068 */ lw $t9, 0x68($sp) -/* 0CAD70 800CA170 00000000 */ nop -/* 0CAD74 800CA174 0338082A */ slt $at, $t9, $t8 -/* 0CAD78 800CA178 10200003 */ beqz $at, .L800CA188 -/* 0CAD7C 800CA17C 00000000 */ nop -/* 0CAD80 800CA180 10000212 */ b .L800CA9CC -/* 0CAD84 800CA184 00000000 */ nop -.L800CA188: -/* 0CAD88 800CA188 8FA80048 */ lw $t0, 0x48($sp) -/* 0CAD8C 800CA18C 00000000 */ nop -/* 0CAD90 800CA190 05000003 */ bltz $t0, .L800CA1A0 -/* 0CAD94 800CA194 00000000 */ nop -/* 0CAD98 800CA198 10000007 */ b .L800CA1B8 -/* 0CAD9C 800CA19C 00000000 */ nop -.L800CA1A0: -/* 0CADA0 800CA1A0 3C04800F */ lui $a0, %hi(D_800E9560) # $a0, 0x800f -/* 0CADA4 800CA1A4 3C05800F */ lui $a1, %hi(D_800E9570) # $a1, 0x800f -/* 0CADA8 800CA1A8 24A59570 */ addiu $a1, %lo(D_800E9570) # addiu $a1, $a1, -0x6a90 -/* 0CADAC 800CA1AC 24849560 */ addiu $a0, %lo(D_800E9560) # addiu $a0, $a0, -0x6aa0 -/* 0CADB0 800CA1B0 0C02DBD0 */ jal func_800B6F40 -/* 0CADB4 800CA1B4 24060068 */ li $a2, 104 -.L800CA1B8: -/* 0CADB8 800CA1B8 8FA90048 */ lw $t1, 0x48($sp) -/* 0CADBC 800CA1BC 00000000 */ nop -/* 0CADC0 800CA1C0 292100A1 */ slti $at, $t1, 0xa1 -/* 0CADC4 800CA1C4 10200003 */ beqz $at, .L800CA1D4 -/* 0CADC8 800CA1C8 00000000 */ nop -/* 0CADCC 800CA1CC 10000007 */ b .L800CA1EC -/* 0CADD0 800CA1D0 00000000 */ nop -.L800CA1D4: -/* 0CADD4 800CA1D4 3C04800F */ lui $a0, %hi(D_800E9578) # $a0, 0x800f -/* 0CADD8 800CA1D8 3C05800F */ lui $a1, %hi(D_800E9598) # $a1, 0x800f -/* 0CADDC 800CA1DC 24A59598 */ addiu $a1, %lo(D_800E9598) # addiu $a1, $a1, -0x6a68 -/* 0CADE0 800CA1E0 24849578 */ addiu $a0, %lo(D_800E9578) # addiu $a0, $a0, -0x6a88 -/* 0CADE4 800CA1E4 0C02DBD0 */ jal func_800B6F40 -/* 0CADE8 800CA1E8 24060069 */ li $a2, 105 -.L800CA1EC: -/* 0CADEC 800CA1EC 8FAA0058 */ lw $t2, 0x58($sp) -/* 0CADF0 800CA1F0 00000000 */ nop -/* 0CADF4 800CA1F4 8D4B003C */ lw $t3, 0x3c($t2) -/* 0CADF8 800CA1F8 00000000 */ nop -/* 0CADFC 800CA1FC 956C0008 */ lhu $t4, 8($t3) -/* 0CAE00 800CA200 00000000 */ nop -/* 0CAE04 800CA204 2D810011 */ sltiu $at, $t4, 0x11 -/* 0CAE08 800CA208 102001AE */ beqz $at, .L800CA8C4 -/* 0CAE0C 800CA20C 00000000 */ nop -/* 0CAE10 800CA210 000C6080 */ sll $t4, $t4, 2 -/* 0CAE14 800CA214 3C01800F */ lui $at, 0x800f -/* 0CAE18 800CA218 002C0821 */ addu $at, $at, $t4 -/* 0CAE1C 800CA21C 8C2C95B0 */ lw $t4, -0x6a50($at) -/* 0CAE20 800CA220 00000000 */ nop -/* 0CAE24 800CA224 01800008 */ jr $t4 -/* 0CAE28 800CA228 00000000 */ nop -/* 0CAE2C 800CA22C 8FAD0058 */ lw $t5, 0x58($sp) -/* 0CAE30 800CA230 00000000 */ nop -/* 0CAE34 800CA234 8DAE003C */ lw $t6, 0x3c($t5) -/* 0CAE38 800CA238 00000000 */ nop -/* 0CAE3C 800CA23C AFAE0038 */ sw $t6, 0x38($sp) -/* 0CAE40 800CA240 8FAF0058 */ lw $t7, 0x58($sp) -/* 0CAE44 800CA244 00000000 */ nop -/* 0CAE48 800CA248 AFAF0034 */ sw $t7, 0x34($sp) -/* 0CAE4C 800CA24C 8FB80038 */ lw $t8, 0x38($sp) -/* 0CAE50 800CA250 00000000 */ nop -/* 0CAE54 800CA254 8719000A */ lh $t9, 0xa($t8) -/* 0CAE58 800CA258 00000000 */ nop -/* 0CAE5C 800CA25C 13200007 */ beqz $t9, .L800CA27C -/* 0CAE60 800CA260 00000000 */ nop -/* 0CAE64 800CA264 8FA80058 */ lw $t0, 0x58($sp) -/* 0CAE68 800CA268 24050008 */ li $a1, 8 -/* 0CAE6C 800CA26C 8D190008 */ lw $t9, 8($t0) -/* 0CAE70 800CA270 00003025 */ move $a2, $zero -/* 0CAE74 800CA274 0320F809 */ jalr $t9 -/* 0CAE78 800CA278 01002025 */ move $a0, $t0 -.L800CA27C: -/* 0CAE7C 800CA27C 8FA90058 */ lw $t1, 0x58($sp) -/* 0CAE80 800CA280 8FAA0038 */ lw $t2, 0x38($sp) -/* 0CAE84 800CA284 8D390008 */ lw $t9, 8($t1) -/* 0CAE88 800CA288 8D460018 */ lw $a2, 0x18($t2) -/* 0CAE8C 800CA28C 24050005 */ li $a1, 5 -/* 0CAE90 800CA290 0320F809 */ jalr $t9 -/* 0CAE94 800CA294 01202025 */ move $a0, $t1 -/* 0CAE98 800CA298 8FAB0058 */ lw $t3, 0x58($sp) -/* 0CAE9C 800CA29C 24050009 */ li $a1, 9 -/* 0CAEA0 800CA2A0 8D790008 */ lw $t9, 8($t3) -/* 0CAEA4 800CA2A4 00003025 */ move $a2, $zero -/* 0CAEA8 800CA2A8 0320F809 */ jalr $t9 -/* 0CAEAC 800CA2AC 01602025 */ move $a0, $t3 -/* 0CAEB0 800CA2B0 8FAD0058 */ lw $t5, 0x58($sp) -/* 0CAEB4 800CA2B4 240C0001 */ li $t4, 1 -/* 0CAEB8 800CA2B8 ADAC0038 */ sw $t4, 0x38($t5) -/* 0CAEBC 800CA2BC 8FAE0058 */ lw $t6, 0x58($sp) -/* 0CAEC0 800CA2C0 00000000 */ nop -/* 0CAEC4 800CA2C4 ADC00030 */ sw $zero, 0x30($t6) -/* 0CAEC8 800CA2C8 8FAF0038 */ lw $t7, 0x38($sp) -/* 0CAECC 800CA2CC 8FA80058 */ lw $t0, 0x58($sp) -/* 0CAED0 800CA2D0 8DF80014 */ lw $t8, 0x14($t7) -/* 0CAED4 800CA2D4 00000000 */ nop -/* 0CAED8 800CA2D8 AD180034 */ sw $t8, 0x34($t0) -/* 0CAEDC 800CA2DC 8FAA0038 */ lw $t2, 0x38($sp) -/* 0CAEE0 800CA2E0 00000000 */ nop -/* 0CAEE4 800CA2E4 85490010 */ lh $t1, 0x10($t2) -/* 0CAEE8 800CA2E8 00000000 */ nop -/* 0CAEEC 800CA2EC 01295821 */ addu $t3, $t1, $t1 -/* 0CAEF0 800CA2F0 05610003 */ bgez $t3, .L800CA300 -/* 0CAEF4 800CA2F4 000BC843 */ sra $t9, $t3, 1 -/* 0CAEF8 800CA2F8 25610001 */ addiu $at, $t3, 1 -/* 0CAEFC 800CA2FC 0001C843 */ sra $t9, $at, 1 -.L800CA300: -/* 0CAF00 800CA300 AFB90030 */ sw $t9, 0x30($sp) -/* 0CAF04 800CA304 8FAC0030 */ lw $t4, 0x30($sp) -/* 0CAF08 800CA308 8FAD0058 */ lw $t5, 0x58($sp) -/* 0CAF0C 800CA30C 00000000 */ nop -/* 0CAF10 800CA310 A5AC001A */ sh $t4, 0x1a($t5) -/* 0CAF14 800CA314 8FAE0038 */ lw $t6, 0x38($sp) -/* 0CAF18 800CA318 8FB80058 */ lw $t8, 0x58($sp) -/* 0CAF1C 800CA31C 91CF0012 */ lbu $t7, 0x12($t6) -/* 0CAF20 800CA320 00000000 */ nop -/* 0CAF24 800CA324 A70F0018 */ sh $t7, 0x18($t8) -/* 0CAF28 800CA328 8FA80038 */ lw $t0, 0x38($sp) -/* 0CAF2C 800CA32C 3C0B800E */ lui $t3, 0x800e -/* 0CAF30 800CA330 910A0013 */ lbu $t2, 0x13($t0) -/* 0CAF34 800CA334 8FB90058 */ lw $t9, 0x58($sp) -/* 0CAF38 800CA338 000A4840 */ sll $t1, $t2, 1 -/* 0CAF3C 800CA33C 01695821 */ addu $t3, $t3, $t1 -/* 0CAF40 800CA340 856B37A0 */ lh $t3, 0x37a0($t3) -/* 0CAF44 800CA344 00000000 */ nop -/* 0CAF48 800CA348 A72B0020 */ sh $t3, 0x20($t9) -/* 0CAF4C 800CA34C 8FAC0038 */ lw $t4, 0x38($sp) -/* 0CAF50 800CA350 3C18800E */ lui $t8, 0x800e -/* 0CAF54 800CA354 918D0013 */ lbu $t5, 0x13($t4) -/* 0CAF58 800CA358 8FA80058 */ lw $t0, 0x58($sp) -/* 0CAF5C 800CA35C 000D7023 */ negu $t6, $t5 -/* 0CAF60 800CA360 000E7840 */ sll $t7, $t6, 1 -/* 0CAF64 800CA364 030FC021 */ addu $t8, $t8, $t7 -/* 0CAF68 800CA368 8718389E */ lh $t8, 0x389e($t8) -/* 0CAF6C 800CA36C 00000000 */ nop -/* 0CAF70 800CA370 A5180022 */ sh $t8, 0x22($t0) -/* 0CAF74 800CA374 8FAA0038 */ lw $t2, 0x38($sp) -/* 0CAF78 800CA378 00000000 */ nop -/* 0CAF7C 800CA37C 8D490014 */ lw $t1, 0x14($t2) -/* 0CAF80 800CA380 00000000 */ nop -/* 0CAF84 800CA384 11200008 */ beqz $t1, .L800CA3A8 -/* 0CAF88 800CA388 00000000 */ nop -/* 0CAF8C 800CA38C 8FB90058 */ lw $t9, 0x58($sp) -/* 0CAF90 800CA390 240B0001 */ li $t3, 1 -/* 0CAF94 800CA394 A72B001C */ sh $t3, 0x1c($t9) -/* 0CAF98 800CA398 8FAD0058 */ lw $t5, 0x58($sp) -/* 0CAF9C 800CA39C 240C0001 */ li $t4, 1 -/* 0CAFA0 800CA3A0 1000001A */ b .L800CA40C -/* 0CAFA4 800CA3A4 A5AC001E */ sh $t4, 0x1e($t5) -.L800CA3A8: -/* 0CAFA8 800CA3A8 8FAE0058 */ lw $t6, 0x58($sp) -/* 0CAFAC 800CA3AC 3C08800E */ lui $t0, 0x800e -/* 0CAFB0 800CA3B0 85CF0018 */ lh $t7, 0x18($t6) -/* 0CAFB4 800CA3B4 85CA001A */ lh $t2, 0x1a($t6) -/* 0CAFB8 800CA3B8 000FC040 */ sll $t8, $t7, 1 -/* 0CAFBC 800CA3BC 01184021 */ addu $t0, $t0, $t8 -/* 0CAFC0 800CA3C0 850837A0 */ lh $t0, 0x37a0($t0) -/* 0CAFC4 800CA3C4 00000000 */ nop -/* 0CAFC8 800CA3C8 010A0019 */ multu $t0, $t2 -/* 0CAFCC 800CA3CC 00004812 */ mflo $t1 -/* 0CAFD0 800CA3D0 00095BC3 */ sra $t3, $t1, 0xf -/* 0CAFD4 800CA3D4 A5CB001C */ sh $t3, 0x1c($t6) -/* 0CAFD8 800CA3D8 8FB90058 */ lw $t9, 0x58($sp) -/* 0CAFDC 800CA3DC 3C18800E */ lui $t8, 0x800e -/* 0CAFE0 800CA3E0 872C0018 */ lh $t4, 0x18($t9) -/* 0CAFE4 800CA3E4 8728001A */ lh $t0, 0x1a($t9) -/* 0CAFE8 800CA3E8 000C6823 */ negu $t5, $t4 -/* 0CAFEC 800CA3EC 000D7840 */ sll $t7, $t5, 1 -/* 0CAFF0 800CA3F0 030FC021 */ addu $t8, $t8, $t7 -/* 0CAFF4 800CA3F4 8718389E */ lh $t8, 0x389e($t8) -/* 0CAFF8 800CA3F8 00000000 */ nop -/* 0CAFFC 800CA3FC 03080019 */ multu $t8, $t0 -/* 0CB000 800CA400 00005012 */ mflo $t2 -/* 0CB004 800CA404 000A4BC3 */ sra $t1, $t2, 0xf -/* 0CB008 800CA408 A729001E */ sh $t1, 0x1e($t9) -.L800CA40C: -/* 0CB00C 800CA40C 8FAB0034 */ lw $t3, 0x34($sp) -/* 0CB010 800CA410 00000000 */ nop -/* 0CB014 800CA414 8D6E0000 */ lw $t6, ($t3) -/* 0CB018 800CA418 00000000 */ nop -/* 0CB01C 800CA41C 11C0000E */ beqz $t6, .L800CA458 -/* 0CB020 800CA420 00000000 */ nop -/* 0CB024 800CA424 8FAC0038 */ lw $t4, 0x38($sp) -/* 0CB028 800CA428 00000000 */ nop -/* 0CB02C 800CA42C C584000C */ lwc1 $f4, 0xc($t4) -/* 0CB030 800CA430 00000000 */ nop -/* 0CB034 800CA434 E7A4002C */ swc1 $f4, 0x2c($sp) -/* 0CB038 800CA438 8FAD0034 */ lw $t5, 0x34($sp) -/* 0CB03C 800CA43C 8FA6002C */ lw $a2, 0x2c($sp) -/* 0CB040 800CA440 8DAF0000 */ lw $t7, ($t5) -/* 0CB044 800CA444 24050007 */ li $a1, 7 -/* 0CB048 800CA448 8DF90008 */ lw $t9, 8($t7) -/* 0CB04C 800CA44C 01E02025 */ move $a0, $t7 -/* 0CB050 800CA450 0320F809 */ jalr $t9 -/* 0CB054 800CA454 00000000 */ nop -.L800CA458: -/* 0CB058 800CA458 10000134 */ b .L800CA92C -/* 0CB05C 800CA45C 00000000 */ nop -/* 0CB060 800CA460 8FB8006C */ lw $t8, 0x6c($sp) -/* 0CB064 800CA464 8FA8005C */ lw $t0, 0x5c($sp) -/* 0CB068 800CA468 8FA40058 */ lw $a0, 0x58($sp) -/* 0CB06C 800CA46C 8FA70048 */ lw $a3, 0x48($sp) -/* 0CB070 800CA470 27A50056 */ addiu $a1, $sp, 0x56 -/* 0CB074 800CA474 27A60046 */ addiu $a2, $sp, 0x46 -/* 0CB078 800CA478 AFB80010 */ sw $t8, 0x10($sp) -/* 0CB07C 800CA47C 0C032B17 */ jal func_800CAC5C -/* 0CB080 800CA480 AFA80014 */ sw $t0, 0x14($sp) -/* 0CB084 800CA484 AFA2005C */ sw $v0, 0x5c($sp) -/* 0CB088 800CA488 8FAA0058 */ lw $t2, 0x58($sp) -/* 0CB08C 800CA48C 8FAB0048 */ lw $t3, 0x48($sp) -/* 0CB090 800CA490 8D490030 */ lw $t1, 0x30($t2) -/* 0CB094 800CA494 00000000 */ nop -/* 0CB098 800CA498 012B7021 */ addu $t6, $t1, $t3 -/* 0CB09C 800CA49C AD4E0030 */ sw $t6, 0x30($t2) -/* 0CB0A0 800CA4A0 8FAC0058 */ lw $t4, 0x58($sp) -/* 0CB0A4 800CA4A4 00000000 */ nop -/* 0CB0A8 800CA4A8 8D8D0030 */ lw $t5, 0x30($t4) -/* 0CB0AC 800CA4AC 8D8F0034 */ lw $t7, 0x34($t4) -/* 0CB0B0 800CA4B0 00000000 */ nop -/* 0CB0B4 800CA4B4 01AF082A */ slt $at, $t5, $t7 -/* 0CB0B8 800CA4B8 14200029 */ bnez $at, .L800CA560 -/* 0CB0BC 800CA4BC 00000000 */ nop -/* 0CB0C0 800CA4C0 8FB90058 */ lw $t9, 0x58($sp) -/* 0CB0C4 800CA4C4 3C09800E */ lui $t1, 0x800e -/* 0CB0C8 800CA4C8 87380018 */ lh $t8, 0x18($t9) -/* 0CB0CC 800CA4CC 872B001A */ lh $t3, 0x1a($t9) -/* 0CB0D0 800CA4D0 00184040 */ sll $t0, $t8, 1 -/* 0CB0D4 800CA4D4 01284821 */ addu $t1, $t1, $t0 -/* 0CB0D8 800CA4D8 852937A0 */ lh $t1, 0x37a0($t1) -/* 0CB0DC 800CA4DC 00000000 */ nop -/* 0CB0E0 800CA4E0 012B0019 */ multu $t1, $t3 -/* 0CB0E4 800CA4E4 00007012 */ mflo $t6 -/* 0CB0E8 800CA4E8 000E53C3 */ sra $t2, $t6, 0xf -/* 0CB0EC 800CA4EC A72A0028 */ sh $t2, 0x28($t9) -/* 0CB0F0 800CA4F0 8FAC0058 */ lw $t4, 0x58($sp) -/* 0CB0F4 800CA4F4 3C08800E */ lui $t0, 0x800e -/* 0CB0F8 800CA4F8 858D0018 */ lh $t5, 0x18($t4) -/* 0CB0FC 800CA4FC 8589001A */ lh $t1, 0x1a($t4) -/* 0CB100 800CA500 000D7823 */ negu $t7, $t5 -/* 0CB104 800CA504 000FC040 */ sll $t8, $t7, 1 -/* 0CB108 800CA508 01184021 */ addu $t0, $t0, $t8 -/* 0CB10C 800CA50C 8508389E */ lh $t0, 0x389e($t0) -/* 0CB110 800CA510 00000000 */ nop -/* 0CB114 800CA514 01090019 */ multu $t0, $t1 -/* 0CB118 800CA518 00005812 */ mflo $t3 -/* 0CB11C 800CA51C 000B73C3 */ sra $t6, $t3, 0xf -/* 0CB120 800CA520 A58E002E */ sh $t6, 0x2e($t4) -/* 0CB124 800CA524 8FAA0058 */ lw $t2, 0x58($sp) -/* 0CB128 800CA528 00000000 */ nop -/* 0CB12C 800CA52C 8D590034 */ lw $t9, 0x34($t2) -/* 0CB130 800CA530 00000000 */ nop -/* 0CB134 800CA534 AD590030 */ sw $t9, 0x30($t2) -/* 0CB138 800CA538 8FAD0058 */ lw $t5, 0x58($sp) -/* 0CB13C 800CA53C 00000000 */ nop -/* 0CB140 800CA540 85AF0028 */ lh $t7, 0x28($t5) -/* 0CB144 800CA544 00000000 */ nop -/* 0CB148 800CA548 A5AF001C */ sh $t7, 0x1c($t5) -/* 0CB14C 800CA54C 8FB80058 */ lw $t8, 0x58($sp) -/* 0CB150 800CA550 00000000 */ nop -/* 0CB154 800CA554 8708002E */ lh $t0, 0x2e($t8) -/* 0CB158 800CA558 10000029 */ b .L800CA600 -/* 0CB15C 800CA55C A708001E */ sh $t0, 0x1e($t8) -.L800CA560: -/* 0CB160 800CA560 8FA90058 */ lw $t1, 0x58($sp) -/* 0CB164 800CA564 00000000 */ nop -/* 0CB168 800CA568 852B001C */ lh $t3, 0x1c($t1) -/* 0CB16C 800CA56C 8D250030 */ lw $a1, 0x30($t1) -/* 0CB170 800CA570 448B3000 */ mtc1 $t3, $f6 -/* 0CB174 800CA574 85260026 */ lh $a2, 0x26($t1) -/* 0CB178 800CA578 95270024 */ lhu $a3, 0x24($t1) -/* 0CB17C 800CA57C 0C032D26 */ jal func_800CB498 -/* 0CB180 800CA580 46803320 */ cvt.s.w $f12, $f6 -/* 0CB184 800CA584 444EF800 */ cfc1 $t6, $31 -/* 0CB188 800CA588 8FB90058 */ lw $t9, 0x58($sp) -/* 0CB18C 800CA58C 35C10003 */ ori $at, $t6, 3 -/* 0CB190 800CA590 38210002 */ xori $at, $at, 2 -/* 0CB194 800CA594 44C1F800 */ ctc1 $at, $31 -/* 0CB198 800CA598 00000000 */ nop -/* 0CB19C 800CA59C 46000224 */ cvt.w.s $f8, $f0 -/* 0CB1A0 800CA5A0 440C4000 */ mfc1 $t4, $f8 -/* 0CB1A4 800CA5A4 44CEF800 */ ctc1 $t6, $31 -/* 0CB1A8 800CA5A8 A72C001C */ sh $t4, 0x1c($t9) -/* 0CB1AC 800CA5AC 00000000 */ nop -/* 0CB1B0 800CA5B0 8FAA0058 */ lw $t2, 0x58($sp) -/* 0CB1B4 800CA5B4 00000000 */ nop -/* 0CB1B8 800CA5B8 854F001E */ lh $t7, 0x1e($t2) -/* 0CB1BC 800CA5BC 8D450030 */ lw $a1, 0x30($t2) -/* 0CB1C0 800CA5C0 448F5000 */ mtc1 $t7, $f10 -/* 0CB1C4 800CA5C4 8546002C */ lh $a2, 0x2c($t2) -/* 0CB1C8 800CA5C8 9547002A */ lhu $a3, 0x2a($t2) -/* 0CB1CC 800CA5CC 0C032D26 */ jal func_800CB498 -/* 0CB1D0 800CA5D0 46805320 */ cvt.s.w $f12, $f10 -/* 0CB1D4 800CA5D4 444DF800 */ cfc1 $t5, $31 -/* 0CB1D8 800CA5D8 8FB80058 */ lw $t8, 0x58($sp) -/* 0CB1DC 800CA5DC 35A10003 */ ori $at, $t5, 3 -/* 0CB1E0 800CA5E0 38210002 */ xori $at, $at, 2 -/* 0CB1E4 800CA5E4 44C1F800 */ ctc1 $at, $31 -/* 0CB1E8 800CA5E8 00000000 */ nop -/* 0CB1EC 800CA5EC 46000424 */ cvt.w.s $f16, $f0 -/* 0CB1F0 800CA5F0 44088000 */ mfc1 $t0, $f16 -/* 0CB1F4 800CA5F4 44CDF800 */ ctc1 $t5, $31 -/* 0CB1F8 800CA5F8 A708001E */ sh $t0, 0x1e($t8) -/* 0CB1FC 800CA5FC 00000000 */ nop -.L800CA600: -/* 0CB200 800CA600 8FAB0058 */ lw $t3, 0x58($sp) -/* 0CB204 800CA604 00000000 */ nop -/* 0CB208 800CA608 8569001C */ lh $t1, 0x1c($t3) -/* 0CB20C 800CA60C 00000000 */ nop -/* 0CB210 800CA610 15200004 */ bnez $t1, .L800CA624 -/* 0CB214 800CA614 00000000 */ nop -/* 0CB218 800CA618 8FAC0058 */ lw $t4, 0x58($sp) -/* 0CB21C 800CA61C 240E0001 */ li $t6, 1 -/* 0CB220 800CA620 A58E001C */ sh $t6, 0x1c($t4) -.L800CA624: -/* 0CB224 800CA624 8FB90058 */ lw $t9, 0x58($sp) -/* 0CB228 800CA628 00000000 */ nop -/* 0CB22C 800CA62C 872F001E */ lh $t7, 0x1e($t9) -/* 0CB230 800CA630 00000000 */ nop -/* 0CB234 800CA634 15E00004 */ bnez $t7, .L800CA648 -/* 0CB238 800CA638 00000000 */ nop -/* 0CB23C 800CA63C 8FAD0058 */ lw $t5, 0x58($sp) -/* 0CB240 800CA640 240A0001 */ li $t2, 1 -/* 0CB244 800CA644 A5AA001E */ sh $t2, 0x1e($t5) -.L800CA648: -/* 0CB248 800CA648 8FA80058 */ lw $t0, 0x58($sp) -/* 0CB24C 800CA64C 2401000C */ li $at, 12 -/* 0CB250 800CA650 8D18003C */ lw $t8, 0x3c($t0) -/* 0CB254 800CA654 00000000 */ nop -/* 0CB258 800CA658 870B0008 */ lh $t3, 8($t8) -/* 0CB25C 800CA65C 00000000 */ nop -/* 0CB260 800CA660 15610008 */ bne $t3, $at, .L800CA684 -/* 0CB264 800CA664 00000000 */ nop -/* 0CB268 800CA668 8FA90058 */ lw $t1, 0x58($sp) -/* 0CB26C 800CA66C 00000000 */ nop -/* 0CB270 800CA670 8D2E003C */ lw $t6, 0x3c($t1) -/* 0CB274 800CA674 00000000 */ nop -/* 0CB278 800CA678 8DCC000C */ lw $t4, 0xc($t6) -/* 0CB27C 800CA67C 00000000 */ nop -/* 0CB280 800CA680 A52C0018 */ sh $t4, 0x18($t1) -.L800CA684: -/* 0CB284 800CA684 8FB90058 */ lw $t9, 0x58($sp) -/* 0CB288 800CA688 2401000B */ li $at, 11 -/* 0CB28C 800CA68C 8F2F003C */ lw $t7, 0x3c($t9) -/* 0CB290 800CA690 00000000 */ nop -/* 0CB294 800CA694 85EA0008 */ lh $t2, 8($t7) -/* 0CB298 800CA698 00000000 */ nop -/* 0CB29C 800CA69C 1541001E */ bne $t2, $at, .L800CA718 -/* 0CB2A0 800CA6A0 00000000 */ nop -/* 0CB2A4 800CA6A4 8FAD0058 */ lw $t5, 0x58($sp) -/* 0CB2A8 800CA6A8 00000000 */ nop -/* 0CB2AC 800CA6AC ADA00030 */ sw $zero, 0x30($t5) -/* 0CB2B0 800CA6B0 8FA80058 */ lw $t0, 0x58($sp) -/* 0CB2B4 800CA6B4 00000000 */ nop -/* 0CB2B8 800CA6B8 8D18003C */ lw $t8, 0x3c($t0) -/* 0CB2BC 800CA6BC 00000000 */ nop -/* 0CB2C0 800CA6C0 8F0B000C */ lw $t3, 0xc($t8) -/* 0CB2C4 800CA6C4 00000000 */ nop -/* 0CB2C8 800CA6C8 AFAB0040 */ sw $t3, 0x40($sp) -/* 0CB2CC 800CA6CC 8FAE0040 */ lw $t6, 0x40($sp) -/* 0CB2D0 800CA6D0 00000000 */ nop -/* 0CB2D4 800CA6D4 01CE6021 */ addu $t4, $t6, $t6 -/* 0CB2D8 800CA6D8 05810003 */ bgez $t4, .L800CA6E8 -/* 0CB2DC 800CA6DC 000C4843 */ sra $t1, $t4, 1 -/* 0CB2E0 800CA6E0 25810001 */ addiu $at, $t4, 1 -/* 0CB2E4 800CA6E4 00014843 */ sra $t1, $at, 1 -.L800CA6E8: -/* 0CB2E8 800CA6E8 AFA90040 */ sw $t1, 0x40($sp) -/* 0CB2EC 800CA6EC 8FB90040 */ lw $t9, 0x40($sp) -/* 0CB2F0 800CA6F0 8FAF0058 */ lw $t7, 0x58($sp) -/* 0CB2F4 800CA6F4 00000000 */ nop -/* 0CB2F8 800CA6F8 A5F9001A */ sh $t9, 0x1a($t7) -/* 0CB2FC 800CA6FC 8FAA0058 */ lw $t2, 0x58($sp) -/* 0CB300 800CA700 00000000 */ nop -/* 0CB304 800CA704 8D4D003C */ lw $t5, 0x3c($t2) -/* 0CB308 800CA708 00000000 */ nop -/* 0CB30C 800CA70C 8DA80010 */ lw $t0, 0x10($t5) -/* 0CB310 800CA710 00000000 */ nop -/* 0CB314 800CA714 AD480034 */ sw $t0, 0x34($t2) -.L800CA718: -/* 0CB318 800CA718 8FB80058 */ lw $t8, 0x58($sp) -/* 0CB31C 800CA71C 24010010 */ li $at, 16 -/* 0CB320 800CA720 8F0B003C */ lw $t3, 0x3c($t8) -/* 0CB324 800CA724 00000000 */ nop -/* 0CB328 800CA728 856E0008 */ lh $t6, 8($t3) -/* 0CB32C 800CA72C 00000000 */ nop -/* 0CB330 800CA730 15C10018 */ bne $t6, $at, .L800CA794 -/* 0CB334 800CA734 00000000 */ nop -/* 0CB338 800CA738 8FAC0058 */ lw $t4, 0x58($sp) -/* 0CB33C 800CA73C 3C0D800E */ lui $t5, 0x800e -/* 0CB340 800CA740 8D89003C */ lw $t1, 0x3c($t4) -/* 0CB344 800CA744 00000000 */ nop -/* 0CB348 800CA748 8D39000C */ lw $t9, 0xc($t1) -/* 0CB34C 800CA74C 00000000 */ nop -/* 0CB350 800CA750 00197840 */ sll $t7, $t9, 1 -/* 0CB354 800CA754 01AF6821 */ addu $t5, $t5, $t7 -/* 0CB358 800CA758 85AD37A0 */ lh $t5, 0x37a0($t5) -/* 0CB35C 800CA75C 00000000 */ nop -/* 0CB360 800CA760 A58D0020 */ sh $t5, 0x20($t4) -/* 0CB364 800CA764 8FA80058 */ lw $t0, 0x58($sp) -/* 0CB368 800CA768 3C09800E */ lui $t1, 0x800e -/* 0CB36C 800CA76C 8D0A003C */ lw $t2, 0x3c($t0) -/* 0CB370 800CA770 00000000 */ nop -/* 0CB374 800CA774 8D58000C */ lw $t8, 0xc($t2) -/* 0CB378 800CA778 00000000 */ nop -/* 0CB37C 800CA77C 00185823 */ negu $t3, $t8 -/* 0CB380 800CA780 000B7040 */ sll $t6, $t3, 1 -/* 0CB384 800CA784 012E4821 */ addu $t1, $t1, $t6 -/* 0CB388 800CA788 8529389E */ lh $t1, 0x389e($t1) -/* 0CB38C 800CA78C 00000000 */ nop -/* 0CB390 800CA790 A5090022 */ sh $t1, 0x22($t0) -.L800CA794: -/* 0CB394 800CA794 8FAF0058 */ lw $t7, 0x58($sp) -/* 0CB398 800CA798 24190001 */ li $t9, 1 -/* 0CB39C 800CA79C ADF90038 */ sw $t9, 0x38($t7) -/* 0CB3A0 800CA7A0 10000062 */ b .L800CA92C -/* 0CB3A4 800CA7A4 00000000 */ nop -/* 0CB3A8 800CA7A8 8FAD0058 */ lw $t5, 0x58($sp) -/* 0CB3AC 800CA7AC 00000000 */ nop -/* 0CB3B0 800CA7B0 8DAC003C */ lw $t4, 0x3c($t5) -/* 0CB3B4 800CA7B4 00000000 */ nop -/* 0CB3B8 800CA7B8 AFAC0028 */ sw $t4, 0x28($sp) -/* 0CB3BC 800CA7BC 8FAA0028 */ lw $t2, 0x28($sp) -/* 0CB3C0 800CA7C0 00000000 */ nop -/* 0CB3C4 800CA7C4 8558000A */ lh $t8, 0xa($t2) -/* 0CB3C8 800CA7C8 00000000 */ nop -/* 0CB3CC 800CA7CC 13000007 */ beqz $t8, .L800CA7EC -/* 0CB3D0 800CA7D0 00000000 */ nop -/* 0CB3D4 800CA7D4 8FAB0058 */ lw $t3, 0x58($sp) -/* 0CB3D8 800CA7D8 24050008 */ li $a1, 8 -/* 0CB3DC 800CA7DC 8D790008 */ lw $t9, 8($t3) -/* 0CB3E0 800CA7E0 00003025 */ move $a2, $zero -/* 0CB3E4 800CA7E4 0320F809 */ jalr $t9 -/* 0CB3E8 800CA7E8 01602025 */ move $a0, $t3 -.L800CA7EC: -/* 0CB3EC 800CA7EC 8FAE0058 */ lw $t6, 0x58($sp) -/* 0CB3F0 800CA7F0 8FA90028 */ lw $t1, 0x28($sp) -/* 0CB3F4 800CA7F4 8DD90008 */ lw $t9, 8($t6) -/* 0CB3F8 800CA7F8 8D26000C */ lw $a2, 0xc($t1) -/* 0CB3FC 800CA7FC 24050005 */ li $a1, 5 -/* 0CB400 800CA800 0320F809 */ jalr $t9 -/* 0CB404 800CA804 01C02025 */ move $a0, $t6 -/* 0CB408 800CA808 8FA80058 */ lw $t0, 0x58($sp) -/* 0CB40C 800CA80C 24050009 */ li $a1, 9 -/* 0CB410 800CA810 8D190008 */ lw $t9, 8($t0) -/* 0CB414 800CA814 00003025 */ move $a2, $zero -/* 0CB418 800CA818 0320F809 */ jalr $t9 -/* 0CB41C 800CA81C 01002025 */ move $a0, $t0 -/* 0CB420 800CA820 10000042 */ b .L800CA92C -/* 0CB424 800CA824 00000000 */ nop -/* 0CB428 800CA828 8FAF006C */ lw $t7, 0x6c($sp) -/* 0CB42C 800CA82C 8FAD005C */ lw $t5, 0x5c($sp) -/* 0CB430 800CA830 8FA40058 */ lw $a0, 0x58($sp) -/* 0CB434 800CA834 8FA70048 */ lw $a3, 0x48($sp) -/* 0CB438 800CA838 27A50056 */ addiu $a1, $sp, 0x56 -/* 0CB43C 800CA83C 27A60046 */ addiu $a2, $sp, 0x46 -/* 0CB440 800CA840 AFAF0010 */ sw $t7, 0x10($sp) -/* 0CB444 800CA844 0C032B17 */ jal func_800CAC5C -/* 0CB448 800CA848 AFAD0014 */ sw $t5, 0x14($sp) -/* 0CB44C 800CA84C AFA2005C */ sw $v0, 0x5c($sp) -/* 0CB450 800CA850 8FAC0058 */ lw $t4, 0x58($sp) -/* 0CB454 800CA854 24050004 */ li $a1, 4 -/* 0CB458 800CA858 8D990008 */ lw $t9, 8($t4) -/* 0CB45C 800CA85C 00003025 */ move $a2, $zero -/* 0CB460 800CA860 0320F809 */ jalr $t9 -/* 0CB464 800CA864 01802025 */ move $a0, $t4 -/* 0CB468 800CA868 10000030 */ b .L800CA92C -/* 0CB46C 800CA86C 00000000 */ nop -/* 0CB470 800CA870 3C0A800E */ lui $t2, %hi(D_800E3780) # $t2, 0x800e -/* 0CB474 800CA874 8D4A3780 */ lw $t2, %lo(D_800E3780)($t2) -/* 0CB478 800CA878 00000000 */ nop -/* 0CB47C 800CA87C AFAA0024 */ sw $t2, 0x24($sp) -/* 0CB480 800CA880 8FB80058 */ lw $t8, 0x58($sp) -/* 0CB484 800CA884 00000000 */ nop -/* 0CB488 800CA888 8F0B003C */ lw $t3, 0x3c($t8) -/* 0CB48C 800CA88C 00000000 */ nop -/* 0CB490 800CA890 AFAB0020 */ sw $t3, 0x20($sp) -/* 0CB494 800CA894 8FA90020 */ lw $t1, 0x20($sp) -/* 0CB498 800CA898 00000000 */ nop -/* 0CB49C 800CA89C 8D2E000C */ lw $t6, 0xc($t1) -/* 0CB4A0 800CA8A0 00000000 */ nop -/* 0CB4A4 800CA8A4 ADC000D8 */ sw $zero, 0xd8($t6) -/* 0CB4A8 800CA8A8 8FA80020 */ lw $t0, 0x20($sp) -/* 0CB4AC 800CA8AC 8FA40024 */ lw $a0, 0x24($sp) -/* 0CB4B0 800CA8B0 8D05000C */ lw $a1, 0xc($t0) -/* 0CB4B4 800CA8B4 0C0195C7 */ jal func_8006571C -/* 0CB4B8 800CA8B8 00000000 */ nop -/* 0CB4BC 800CA8BC 1000001B */ b .L800CA92C -/* 0CB4C0 800CA8C0 00000000 */ nop -.L800CA8C4: -/* 0CB4C4 800CA8C4 8FAF006C */ lw $t7, 0x6c($sp) -/* 0CB4C8 800CA8C8 8FAD005C */ lw $t5, 0x5c($sp) -/* 0CB4CC 800CA8CC 8FA40058 */ lw $a0, 0x58($sp) -/* 0CB4D0 800CA8D0 8FA70048 */ lw $a3, 0x48($sp) -/* 0CB4D4 800CA8D4 27A50056 */ addiu $a1, $sp, 0x56 -/* 0CB4D8 800CA8D8 27A60046 */ addiu $a2, $sp, 0x46 -/* 0CB4DC 800CA8DC AFAF0010 */ sw $t7, 0x10($sp) -/* 0CB4E0 800CA8E0 0C032B17 */ jal func_800CAC5C -/* 0CB4E4 800CA8E4 AFAD0014 */ sw $t5, 0x14($sp) -/* 0CB4E8 800CA8E8 AFA2005C */ sw $v0, 0x5c($sp) -/* 0CB4EC 800CA8EC 8FAC0058 */ lw $t4, 0x58($sp) -/* 0CB4F0 800CA8F0 8FAA0048 */ lw $t2, 0x48($sp) -/* 0CB4F4 800CA8F4 8D990030 */ lw $t9, 0x30($t4) -/* 0CB4F8 800CA8F8 00000000 */ nop -/* 0CB4FC 800CA8FC 032AC021 */ addu $t8, $t9, $t2 -/* 0CB500 800CA900 AD980030 */ sw $t8, 0x30($t4) -/* 0CB504 800CA904 8FAB0058 */ lw $t3, 0x58($sp) -/* 0CB508 800CA908 00000000 */ nop -/* 0CB50C 800CA90C 8D69003C */ lw $t1, 0x3c($t3) -/* 0CB510 800CA910 8D790008 */ lw $t9, 8($t3) -/* 0CB514 800CA914 85250008 */ lh $a1, 8($t1) -/* 0CB518 800CA918 8D26000C */ lw $a2, 0xc($t1) -/* 0CB51C 800CA91C 0320F809 */ jalr $t9 -/* 0CB520 800CA920 01602025 */ move $a0, $t3 -/* 0CB524 800CA924 10000001 */ b .L800CA92C -/* 0CB528 800CA928 00000000 */ nop -.L800CA92C: -/* 0CB52C 800CA92C 8FA80048 */ lw $t0, 0x48($sp) -/* 0CB530 800CA930 87AE0046 */ lh $t6, 0x46($sp) -/* 0CB534 800CA934 00087840 */ sll $t7, $t0, 1 -/* 0CB538 800CA938 01CF6821 */ addu $t5, $t6, $t7 -/* 0CB53C 800CA93C A7AD0046 */ sh $t5, 0x46($sp) -/* 0CB540 800CA940 8FAA0068 */ lw $t2, 0x68($sp) -/* 0CB544 800CA944 8FB80048 */ lw $t8, 0x48($sp) -/* 0CB548 800CA948 00000000 */ nop -/* 0CB54C 800CA94C 01586023 */ subu $t4, $t2, $t8 -/* 0CB550 800CA950 AFAC0068 */ sw $t4, 0x68($sp) -/* 0CB554 800CA954 8FA90058 */ lw $t1, 0x58($sp) -/* 0CB558 800CA958 00000000 */ nop -/* 0CB55C 800CA95C 8D2B003C */ lw $t3, 0x3c($t1) -/* 0CB560 800CA960 00000000 */ nop -/* 0CB564 800CA964 AFAB003C */ sw $t3, 0x3c($sp) -/* 0CB568 800CA968 8FB90058 */ lw $t9, 0x58($sp) -/* 0CB56C 800CA96C 00000000 */ nop -/* 0CB570 800CA970 8F28003C */ lw $t0, 0x3c($t9) -/* 0CB574 800CA974 00000000 */ nop -/* 0CB578 800CA978 8D0E0000 */ lw $t6, ($t0) -/* 0CB57C 800CA97C 00000000 */ nop -/* 0CB580 800CA980 AF2E003C */ sw $t6, 0x3c($t9) -/* 0CB584 800CA984 8FAF0058 */ lw $t7, 0x58($sp) -/* 0CB588 800CA988 00000000 */ nop -/* 0CB58C 800CA98C 8DED003C */ lw $t5, 0x3c($t7) -/* 0CB590 800CA990 00000000 */ nop -/* 0CB594 800CA994 15A00004 */ bnez $t5, .L800CA9A8 -/* 0CB598 800CA998 00000000 */ nop -/* 0CB59C 800CA99C 8FAA0058 */ lw $t2, 0x58($sp) -/* 0CB5A0 800CA9A0 00000000 */ nop -/* 0CB5A4 800CA9A4 AD400040 */ sw $zero, 0x40($t2) -.L800CA9A8: -/* 0CB5A8 800CA9A8 8FA4003C */ lw $a0, 0x3c($sp) -/* 0CB5AC 800CA9AC 0C0195A7 */ jal func_8006569C -/* 0CB5B0 800CA9B0 00000000 */ nop -/* 0CB5B4 800CA9B4 8FB80058 */ lw $t8, 0x58($sp) -/* 0CB5B8 800CA9B8 00000000 */ nop -/* 0CB5BC 800CA9BC 8F0C003C */ lw $t4, 0x3c($t8) -/* 0CB5C0 800CA9C0 00000000 */ nop -/* 0CB5C4 800CA9C4 1580FDD9 */ bnez $t4, .L800CA12C -/* 0CB5C8 800CA9C8 00000000 */ nop -.L800CA9CC: -/* 0CB5CC 800CA9CC 8FA90058 */ lw $t1, 0x58($sp) -/* 0CB5D0 800CA9D0 24010001 */ li $at, 1 -/* 0CB5D4 800CA9D4 8D2B0048 */ lw $t3, 0x48($t1) -/* 0CB5D8 800CA9D8 00000000 */ nop -/* 0CB5DC 800CA9DC 15610011 */ bne $t3, $at, .L800CAA24 -/* 0CB5E0 800CA9E0 00000000 */ nop -/* 0CB5E4 800CA9E4 8FA8006C */ lw $t0, 0x6c($sp) -/* 0CB5E8 800CA9E8 8FAE005C */ lw $t6, 0x5c($sp) -/* 0CB5EC 800CA9EC 8FA40058 */ lw $a0, 0x58($sp) -/* 0CB5F0 800CA9F0 8FA70068 */ lw $a3, 0x68($sp) -/* 0CB5F4 800CA9F4 27A50056 */ addiu $a1, $sp, 0x56 -/* 0CB5F8 800CA9F8 27A60046 */ addiu $a2, $sp, 0x46 -/* 0CB5FC 800CA9FC AFA80010 */ sw $t0, 0x10($sp) -/* 0CB600 800CAA00 0C032B17 */ jal func_800CAC5C -/* 0CB604 800CAA04 AFAE0014 */ sw $t6, 0x14($sp) -/* 0CB608 800CAA08 AFA2005C */ sw $v0, 0x5c($sp) -/* 0CB60C 800CAA0C 8FB90058 */ lw $t9, 0x58($sp) -/* 0CB610 800CAA10 8FAD0068 */ lw $t5, 0x68($sp) -/* 0CB614 800CAA14 8F2F0030 */ lw $t7, 0x30($t9) -/* 0CB618 800CAA18 00000000 */ nop -/* 0CB61C 800CAA1C 01ED5021 */ addu $t2, $t7, $t5 -/* 0CB620 800CAA20 AF2A0030 */ sw $t2, 0x30($t9) -.L800CAA24: -/* 0CB624 800CAA24 8FB80058 */ lw $t8, 0x58($sp) -/* 0CB628 800CAA28 00000000 */ nop -/* 0CB62C 800CAA2C 8F0C0030 */ lw $t4, 0x30($t8) -/* 0CB630 800CAA30 8F090034 */ lw $t1, 0x34($t8) -/* 0CB634 800CAA34 00000000 */ nop -/* 0CB638 800CAA38 012C082A */ slt $at, $t1, $t4 -/* 0CB63C 800CAA3C 10200006 */ beqz $at, .L800CAA58 -/* 0CB640 800CAA40 00000000 */ nop -/* 0CB644 800CAA44 8FAB0058 */ lw $t3, 0x58($sp) -/* 0CB648 800CAA48 00000000 */ nop -/* 0CB64C 800CAA4C 8D680034 */ lw $t0, 0x34($t3) -/* 0CB650 800CAA50 00000000 */ nop -/* 0CB654 800CAA54 AD680030 */ sw $t0, 0x30($t3) -.L800CAA58: -/* 0CB658 800CAA58 8FA2005C */ lw $v0, 0x5c($sp) -/* 0CB65C 800CAA5C 10000003 */ b .L800CAA6C -/* 0CB660 800CAA60 00000000 */ nop -/* 0CB664 800CAA64 10000001 */ b .L800CAA6C -/* 0CB668 800CAA68 00000000 */ nop -.L800CAA6C: -/* 0CB66C 800CAA6C 8FBF001C */ lw $ra, 0x1c($sp) -/* 0CB670 800CAA70 27BD0060 */ addiu $sp, $sp, 0x60 -/* 0CB674 800CAA74 03E00008 */ jr $ra -/* 0CB678 800CAA78 00000000 */ nop - -glabel D_800CAA7C -/* 0CB67C 800CAA7C 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0CB680 800CAA80 AFBF001C */ sw $ra, 0x1c($sp) -/* 0CB684 800CAA84 AFA40030 */ sw $a0, 0x30($sp) -/* 0CB688 800CAA88 AFA50034 */ sw $a1, 0x34($sp) -/* 0CB68C 800CAA8C AFA60038 */ sw $a2, 0x38($sp) -/* 0CB690 800CAA90 AFB00018 */ sw $s0, 0x18($sp) -/* 0CB694 800CAA94 8FAE0030 */ lw $t6, 0x30($sp) -/* 0CB698 800CAA98 00000000 */ nop -/* 0CB69C 800CAA9C AFAE002C */ sw $t6, 0x2c($sp) -/* 0CB6A0 800CAAA0 8FAF0030 */ lw $t7, 0x30($sp) -/* 0CB6A4 800CAAA4 00000000 */ nop -/* 0CB6A8 800CAAA8 AFAF0028 */ sw $t7, 0x28($sp) -/* 0CB6AC 800CAAAC 8FB00034 */ lw $s0, 0x34($sp) -/* 0CB6B0 800CAAB0 24010001 */ li $at, 1 -/* 0CB6B4 800CAAB4 1201004D */ beq $s0, $at, .L800CABEC -/* 0CB6B8 800CAAB8 00000000 */ nop -/* 0CB6BC 800CAABC 24010003 */ li $at, 3 -/* 0CB6C0 800CAAC0 12010009 */ beq $s0, $at, .L800CAAE8 -/* 0CB6C4 800CAAC4 00000000 */ nop -/* 0CB6C8 800CAAC8 24010004 */ li $at, 4 -/* 0CB6CC 800CAACC 1201001B */ beq $s0, $at, .L800CAB3C -/* 0CB6D0 800CAAD0 00000000 */ nop -/* 0CB6D4 800CAAD4 24010009 */ li $at, 9 -/* 0CB6D8 800CAAD8 12010031 */ beq $s0, $at, .L800CABA0 -/* 0CB6DC 800CAADC 00000000 */ nop -/* 0CB6E0 800CAAE0 10000048 */ b .L800CAC04 -/* 0CB6E4 800CAAE4 00000000 */ nop -.L800CAAE8: -/* 0CB6E8 800CAAE8 8FB80028 */ lw $t8, 0x28($sp) -/* 0CB6EC 800CAAEC 00000000 */ nop -/* 0CB6F0 800CAAF0 8F190040 */ lw $t9, 0x40($t8) -/* 0CB6F4 800CAAF4 00000000 */ nop -/* 0CB6F8 800CAAF8 13200006 */ beqz $t9, .L800CAB14 -/* 0CB6FC 800CAAFC 00000000 */ nop -/* 0CB700 800CAB00 8FA90028 */ lw $t1, 0x28($sp) -/* 0CB704 800CAB04 8FA80038 */ lw $t0, 0x38($sp) -/* 0CB708 800CAB08 8D2A0040 */ lw $t2, 0x40($t1) -/* 0CB70C 800CAB0C 10000005 */ b .L800CAB24 -/* 0CB710 800CAB10 AD480000 */ sw $t0, ($t2) -.L800CAB14: -/* 0CB714 800CAB14 8FAB0038 */ lw $t3, 0x38($sp) -/* 0CB718 800CAB18 8FAC0028 */ lw $t4, 0x28($sp) -/* 0CB71C 800CAB1C 00000000 */ nop -/* 0CB720 800CAB20 AD8B003C */ sw $t3, 0x3c($t4) -.L800CAB24: -/* 0CB724 800CAB24 8FAD0038 */ lw $t5, 0x38($sp) -/* 0CB728 800CAB28 8FAE0028 */ lw $t6, 0x28($sp) -/* 0CB72C 800CAB2C 00000000 */ nop -/* 0CB730 800CAB30 ADCD0040 */ sw $t5, 0x40($t6) -/* 0CB734 800CAB34 10000041 */ b .L800CAC3C -/* 0CB738 800CAB38 00000000 */ nop -.L800CAB3C: -/* 0CB73C 800CAB3C 8FB80028 */ lw $t8, 0x28($sp) -/* 0CB740 800CAB40 240F0001 */ li $t7, 1 -/* 0CB744 800CAB44 AF0F0038 */ sw $t7, 0x38($t8) -/* 0CB748 800CAB48 8FB90028 */ lw $t9, 0x28($sp) -/* 0CB74C 800CAB4C 00000000 */ nop -/* 0CB750 800CAB50 AF200048 */ sw $zero, 0x48($t9) -/* 0CB754 800CAB54 8FA80028 */ lw $t0, 0x28($sp) -/* 0CB758 800CAB58 24090001 */ li $t1, 1 -/* 0CB75C 800CAB5C A509001A */ sh $t1, 0x1a($t0) -/* 0CB760 800CAB60 8FAA002C */ lw $t2, 0x2c($sp) -/* 0CB764 800CAB64 00000000 */ nop -/* 0CB768 800CAB68 8D4B0000 */ lw $t3, ($t2) -/* 0CB76C 800CAB6C 00000000 */ nop -/* 0CB770 800CAB70 11600009 */ beqz $t3, .L800CAB98 -/* 0CB774 800CAB74 00000000 */ nop -/* 0CB778 800CAB78 8FAC002C */ lw $t4, 0x2c($sp) -/* 0CB77C 800CAB7C 8FA60038 */ lw $a2, 0x38($sp) -/* 0CB780 800CAB80 8D8D0000 */ lw $t5, ($t4) -/* 0CB784 800CAB84 24050004 */ li $a1, 4 -/* 0CB788 800CAB88 8DB90008 */ lw $t9, 8($t5) -/* 0CB78C 800CAB8C 01A02025 */ move $a0, $t5 -/* 0CB790 800CAB90 0320F809 */ jalr $t9 -/* 0CB794 800CAB94 00000000 */ nop -.L800CAB98: -/* 0CB798 800CAB98 10000028 */ b .L800CAC3C -/* 0CB79C 800CAB9C 00000000 */ nop -.L800CABA0: -/* 0CB7A0 800CABA0 8FAF0028 */ lw $t7, 0x28($sp) -/* 0CB7A4 800CABA4 240E0001 */ li $t6, 1 -/* 0CB7A8 800CABA8 ADEE0048 */ sw $t6, 0x48($t7) -/* 0CB7AC 800CABAC 8FB8002C */ lw $t8, 0x2c($sp) -/* 0CB7B0 800CABB0 00000000 */ nop -/* 0CB7B4 800CABB4 8F090000 */ lw $t1, ($t8) -/* 0CB7B8 800CABB8 00000000 */ nop -/* 0CB7BC 800CABBC 11200009 */ beqz $t1, .L800CABE4 -/* 0CB7C0 800CABC0 00000000 */ nop -/* 0CB7C4 800CABC4 8FA8002C */ lw $t0, 0x2c($sp) -/* 0CB7C8 800CABC8 8FA60038 */ lw $a2, 0x38($sp) -/* 0CB7CC 800CABCC 8D0A0000 */ lw $t2, ($t0) -/* 0CB7D0 800CABD0 24050009 */ li $a1, 9 -/* 0CB7D4 800CABD4 8D590008 */ lw $t9, 8($t2) -/* 0CB7D8 800CABD8 01402025 */ move $a0, $t2 -/* 0CB7DC 800CABDC 0320F809 */ jalr $t9 -/* 0CB7E0 800CABE0 00000000 */ nop -.L800CABE4: -/* 0CB7E4 800CABE4 10000015 */ b .L800CAC3C -/* 0CB7E8 800CABE8 00000000 */ nop -.L800CABEC: -/* 0CB7EC 800CABEC 8FAB0038 */ lw $t3, 0x38($sp) -/* 0CB7F0 800CABF0 8FAC002C */ lw $t4, 0x2c($sp) -/* 0CB7F4 800CABF4 00000000 */ nop -/* 0CB7F8 800CABF8 AD8B0000 */ sw $t3, ($t4) -/* 0CB7FC 800CABFC 1000000F */ b .L800CAC3C -/* 0CB800 800CAC00 00000000 */ nop -.L800CAC04: -/* 0CB804 800CAC04 8FAD002C */ lw $t5, 0x2c($sp) -/* 0CB808 800CAC08 00000000 */ nop -/* 0CB80C 800CAC0C 8DAE0000 */ lw $t6, ($t5) -/* 0CB810 800CAC10 00000000 */ nop -/* 0CB814 800CAC14 11C00009 */ beqz $t6, .L800CAC3C -/* 0CB818 800CAC18 00000000 */ nop -/* 0CB81C 800CAC1C 8FAF002C */ lw $t7, 0x2c($sp) -/* 0CB820 800CAC20 8FA50034 */ lw $a1, 0x34($sp) -/* 0CB824 800CAC24 8DF80000 */ lw $t8, ($t7) -/* 0CB828 800CAC28 8FA60038 */ lw $a2, 0x38($sp) -/* 0CB82C 800CAC2C 8F190008 */ lw $t9, 8($t8) -/* 0CB830 800CAC30 03002025 */ move $a0, $t8 -/* 0CB834 800CAC34 0320F809 */ jalr $t9 -/* 0CB838 800CAC38 00000000 */ nop -.L800CAC3C: -/* 0CB83C 800CAC3C 10000003 */ b .L800CAC4C -/* 0CB840 800CAC40 00001025 */ move $v0, $zero -/* 0CB844 800CAC44 10000001 */ b .L800CAC4C -/* 0CB848 800CAC48 00000000 */ nop -.L800CAC4C: -/* 0CB84C 800CAC4C 8FBF001C */ lw $ra, 0x1c($sp) -/* 0CB850 800CAC50 8FB00018 */ lw $s0, 0x18($sp) -/* 0CB854 800CAC54 03E00008 */ jr $ra -/* 0CB858 800CAC58 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_800CAC5C -/* 0CB85C 800CAC5C 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 0CB860 800CAC60 AFBF001C */ sw $ra, 0x1c($sp) -/* 0CB864 800CAC64 AFA40050 */ sw $a0, 0x50($sp) -/* 0CB868 800CAC68 AFA50054 */ sw $a1, 0x54($sp) -/* 0CB86C 800CAC6C AFA60058 */ sw $a2, 0x58($sp) -/* 0CB870 800CAC70 AFA7005C */ sw $a3, 0x5c($sp) -/* 0CB874 800CAC74 8FAE0064 */ lw $t6, 0x64($sp) -/* 0CB878 800CAC78 00000000 */ nop -/* 0CB87C 800CAC7C AFAE004C */ sw $t6, 0x4c($sp) -/* 0CB880 800CAC80 8FAF0050 */ lw $t7, 0x50($sp) -/* 0CB884 800CAC84 00000000 */ nop -/* 0CB888 800CAC88 AFAF0048 */ sw $t7, 0x48($sp) -/* 0CB88C 800CAC8C 8FB80048 */ lw $t8, 0x48($sp) -/* 0CB890 800CAC90 00000000 */ nop -/* 0CB894 800CAC94 8F190000 */ lw $t9, ($t8) -/* 0CB898 800CAC98 00000000 */ nop -/* 0CB89C 800CAC9C AFB90044 */ sw $t9, 0x44($sp) -/* 0CB8A0 800CACA0 8FA8005C */ lw $t0, 0x5c($sp) -/* 0CB8A4 800CACA4 00000000 */ nop -/* 0CB8A8 800CACA8 15000004 */ bnez $t0, .L800CACBC -/* 0CB8AC 800CACAC 00000000 */ nop -/* 0CB8B0 800CACB0 8FA2004C */ lw $v0, 0x4c($sp) -/* 0CB8B4 800CACB4 1000010F */ b .L800CB0F4 -/* 0CB8B8 800CACB8 00000000 */ nop -.L800CACBC: -/* 0CB8BC 800CACBC 8FA90044 */ lw $t1, 0x44($sp) -/* 0CB8C0 800CACC0 00000000 */ nop -/* 0CB8C4 800CACC4 11200003 */ beqz $t1, .L800CACD4 -/* 0CB8C8 800CACC8 00000000 */ nop -/* 0CB8CC 800CACCC 10000007 */ b .L800CACEC -/* 0CB8D0 800CACD0 00000000 */ nop -.L800CACD4: -/* 0CB8D4 800CACD4 3C04800F */ lui $a0, %hi(D_800E95A0) # $a0, 0x800f -/* 0CB8D8 800CACD8 3C05800F */ lui $a1, %hi(D_800E95A8) # $a1, 0x800f -/* 0CB8DC 800CACDC 24A595A8 */ addiu $a1, %lo(D_800E95A8) # addiu $a1, $a1, -0x6a58 -/* 0CB8E0 800CACE0 248495A0 */ addiu $a0, %lo(D_800E95A0) # addiu $a0, $a0, -0x6a60 -/* 0CB8E4 800CACE4 0C02DBD0 */ jal func_800B6F40 -/* 0CB8E8 800CACE8 24060175 */ li $a2, 373 -.L800CACEC: -/* 0CB8EC 800CACEC 8FAB0064 */ lw $t3, 0x64($sp) -/* 0CB8F0 800CACF0 8FAA0044 */ lw $t2, 0x44($sp) -/* 0CB8F4 800CACF4 AFAB0010 */ sw $t3, 0x10($sp) -/* 0CB8F8 800CACF8 8D590004 */ lw $t9, 4($t2) -/* 0CB8FC 800CACFC 8FA50054 */ lw $a1, 0x54($sp) -/* 0CB900 800CAD00 8FA6005C */ lw $a2, 0x5c($sp) -/* 0CB904 800CAD04 8FA70060 */ lw $a3, 0x60($sp) -/* 0CB908 800CAD08 0320F809 */ jalr $t9 -/* 0CB90C 800CAD0C 01402025 */ move $a0, $t2 -/* 0CB910 800CAD10 AFA2004C */ sw $v0, 0x4c($sp) -/* 0CB914 800CAD14 8FAC004C */ lw $t4, 0x4c($sp) -/* 0CB918 800CAD18 00000000 */ nop -/* 0CB91C 800CAD1C 258D0008 */ addiu $t5, $t4, 8 -/* 0CB920 800CAD20 AFAD004C */ sw $t5, 0x4c($sp) -/* 0CB924 800CAD24 AFAC0040 */ sw $t4, 0x40($sp) -/* 0CB928 800CAD28 8FAE0054 */ lw $t6, 0x54($sp) -/* 0CB92C 800CAD2C 8FA90040 */ lw $t1, 0x40($sp) -/* 0CB930 800CAD30 85CF0000 */ lh $t7, ($t6) -/* 0CB934 800CAD34 3C010800 */ lui $at, 0x800 -/* 0CB938 800CAD38 31F8FFFF */ andi $t8, $t7, 0xffff -/* 0CB93C 800CAD3C 03014025 */ or $t0, $t8, $at -/* 0CB940 800CAD40 AD280000 */ sw $t0, ($t1) -/* 0CB944 800CAD44 8FAB0058 */ lw $t3, 0x58($sp) -/* 0CB948 800CAD48 8FAE005C */ lw $t6, 0x5c($sp) -/* 0CB94C 800CAD4C 856A0000 */ lh $t2, ($t3) -/* 0CB950 800CAD50 000E7840 */ sll $t7, $t6, 1 -/* 0CB954 800CAD54 25590440 */ addiu $t9, $t2, 0x440 -/* 0CB958 800CAD58 332CFFFF */ andi $t4, $t9, 0xffff -/* 0CB95C 800CAD5C 8FA90040 */ lw $t1, 0x40($sp) -/* 0CB960 800CAD60 000C6C00 */ sll $t5, $t4, 0x10 -/* 0CB964 800CAD64 31F8FFFF */ andi $t8, $t7, 0xffff -/* 0CB968 800CAD68 01B84025 */ or $t0, $t5, $t8 -/* 0CB96C 800CAD6C AD280004 */ sw $t0, 4($t1) -/* 0CB970 800CAD70 8FAB004C */ lw $t3, 0x4c($sp) -/* 0CB974 800CAD74 00000000 */ nop -/* 0CB978 800CAD78 256A0008 */ addiu $t2, $t3, 8 -/* 0CB97C 800CAD7C AFAA004C */ sw $t2, 0x4c($sp) -/* 0CB980 800CAD80 AFAB003C */ sw $t3, 0x3c($sp) -/* 0CB984 800CAD84 8FB90058 */ lw $t9, 0x58($sp) -/* 0CB988 800CAD88 8FB8003C */ lw $t8, 0x3c($sp) -/* 0CB98C 800CAD8C 872C0000 */ lh $t4, ($t9) -/* 0CB990 800CAD90 3C010808 */ lui $at, 0x808 -/* 0CB994 800CAD94 258E0580 */ addiu $t6, $t4, 0x580 -/* 0CB998 800CAD98 31CFFFFF */ andi $t7, $t6, 0xffff -/* 0CB99C 800CAD9C 01E16825 */ or $t5, $t7, $at -/* 0CB9A0 800CADA0 AF0D0000 */ sw $t5, ($t8) -/* 0CB9A4 800CADA4 8FA80058 */ lw $t0, 0x58($sp) -/* 0CB9A8 800CADA8 8FAD003C */ lw $t5, 0x3c($sp) -/* 0CB9AC 800CADAC 85090000 */ lh $t1, ($t0) -/* 0CB9B0 800CADB0 00000000 */ nop -/* 0CB9B4 800CADB4 253906C0 */ addiu $t9, $t1, 0x6c0 -/* 0CB9B8 800CADB8 332CFFFF */ andi $t4, $t9, 0xffff -/* 0CB9BC 800CADBC 252B0800 */ addiu $t3, $t1, 0x800 -/* 0CB9C0 800CADC0 316AFFFF */ andi $t2, $t3, 0xffff -/* 0CB9C4 800CADC4 000C7400 */ sll $t6, $t4, 0x10 -/* 0CB9C8 800CADC8 014E7825 */ or $t7, $t2, $t6 -/* 0CB9CC 800CADCC ADAF0004 */ sw $t7, 4($t5) -/* 0CB9D0 800CADD0 8FB80048 */ lw $t8, 0x48($sp) -/* 0CB9D4 800CADD4 00000000 */ nop -/* 0CB9D8 800CADD8 8F080038 */ lw $t0, 0x38($t8) -/* 0CB9DC 800CADDC 00000000 */ nop -/* 0CB9E0 800CADE0 110000A9 */ beqz $t0, .L800CB088 -/* 0CB9E4 800CADE4 00000000 */ nop -/* 0CB9E8 800CADE8 8FAB0048 */ lw $t3, 0x48($sp) -/* 0CB9EC 800CADEC 00000000 */ nop -/* 0CB9F0 800CADF0 AD600038 */ sw $zero, 0x38($t3) -/* 0CB9F4 800CADF4 8FA90048 */ lw $t1, 0x48($sp) -/* 0CB9F8 800CADF8 3C0A800E */ lui $t2, 0x800e -/* 0CB9FC 800CADFC 85390018 */ lh $t9, 0x18($t1) -/* 0CBA00 800CAE00 852E001A */ lh $t6, 0x1a($t1) -/* 0CBA04 800CAE04 00196040 */ sll $t4, $t9, 1 -/* 0CBA08 800CAE08 014C5021 */ addu $t2, $t2, $t4 -/* 0CBA0C 800CAE0C 854A37A0 */ lh $t2, 0x37a0($t2) -/* 0CBA10 800CAE10 00000000 */ nop -/* 0CBA14 800CAE14 014E0019 */ multu $t2, $t6 -/* 0CBA18 800CAE18 00007812 */ mflo $t7 -/* 0CBA1C 800CAE1C 000F6BC3 */ sra $t5, $t7, 0xf -/* 0CBA20 800CAE20 A52D0028 */ sh $t5, 0x28($t1) -/* 0CBA24 800CAE24 8FB80048 */ lw $t8, 0x48($sp) -/* 0CBA28 800CAE28 00000000 */ nop -/* 0CBA2C 800CAE2C 8708001C */ lh $t0, 0x1c($t8) -/* 0CBA30 800CAE30 870B0028 */ lh $t3, 0x28($t8) -/* 0CBA34 800CAE34 8F190034 */ lw $t9, 0x34($t8) -/* 0CBA38 800CAE38 44882000 */ mtc1 $t0, $f4 -/* 0CBA3C 800CAE3C 448B3000 */ mtc1 $t3, $f6 -/* 0CBA40 800CAE40 270C0024 */ addiu $t4, $t8, 0x24 -/* 0CBA44 800CAE44 AFAC0014 */ sw $t4, 0x14($sp) -/* 0CBA48 800CAE48 AFB90010 */ sw $t9, 0x10($sp) -/* 0CBA4C 800CAE4C 46802321 */ cvt.d.w $f12, $f4 -/* 0CBA50 800CAE50 0C032CB5 */ jal func_800CB2D4 -/* 0CBA54 800CAE54 468033A1 */ cvt.d.w $f14, $f6 -/* 0CBA58 800CAE58 8FAA0048 */ lw $t2, 0x48($sp) -/* 0CBA5C 800CAE5C 00000000 */ nop -/* 0CBA60 800CAE60 A5420026 */ sh $v0, 0x26($t2) -/* 0CBA64 800CAE64 8FAE0048 */ lw $t6, 0x48($sp) -/* 0CBA68 800CAE68 3C08800E */ lui $t0, 0x800e -/* 0CBA6C 800CAE6C 85CF0018 */ lh $t7, 0x18($t6) -/* 0CBA70 800CAE70 85CB001A */ lh $t3, 0x1a($t6) -/* 0CBA74 800CAE74 000F6823 */ negu $t5, $t7 -/* 0CBA78 800CAE78 000D4840 */ sll $t1, $t5, 1 -/* 0CBA7C 800CAE7C 01094021 */ addu $t0, $t0, $t1 -/* 0CBA80 800CAE80 8508389E */ lh $t0, 0x389e($t0) -/* 0CBA84 800CAE84 00000000 */ nop -/* 0CBA88 800CAE88 010B0019 */ multu $t0, $t3 -/* 0CBA8C 800CAE8C 0000C812 */ mflo $t9 -/* 0CBA90 800CAE90 0019C3C3 */ sra $t8, $t9, 0xf -/* 0CBA94 800CAE94 A5D8002E */ sh $t8, 0x2e($t6) -/* 0CBA98 800CAE98 8FAC0048 */ lw $t4, 0x48($sp) -/* 0CBA9C 800CAE9C 00000000 */ nop -/* 0CBAA0 800CAEA0 858A001E */ lh $t2, 0x1e($t4) -/* 0CBAA4 800CAEA4 858F002E */ lh $t7, 0x2e($t4) -/* 0CBAA8 800CAEA8 8D8D0034 */ lw $t5, 0x34($t4) -/* 0CBAAC 800CAEAC 448A4000 */ mtc1 $t2, $f8 -/* 0CBAB0 800CAEB0 448F5000 */ mtc1 $t7, $f10 -/* 0CBAB4 800CAEB4 2589002A */ addiu $t1, $t4, 0x2a -/* 0CBAB8 800CAEB8 AFA90014 */ sw $t1, 0x14($sp) -/* 0CBABC 800CAEBC AFAD0010 */ sw $t5, 0x10($sp) -/* 0CBAC0 800CAEC0 46804321 */ cvt.d.w $f12, $f8 -/* 0CBAC4 800CAEC4 0C032CB5 */ jal func_800CB2D4 -/* 0CBAC8 800CAEC8 468053A1 */ cvt.d.w $f14, $f10 -/* 0CBACC 800CAECC 8FA80048 */ lw $t0, 0x48($sp) -/* 0CBAD0 800CAED0 00000000 */ nop -/* 0CBAD4 800CAED4 A502002C */ sh $v0, 0x2c($t0) -/* 0CBAD8 800CAED8 8FAB004C */ lw $t3, 0x4c($sp) -/* 0CBADC 800CAEDC 00000000 */ nop -/* 0CBAE0 800CAEE0 25790008 */ addiu $t9, $t3, 8 -/* 0CBAE4 800CAEE4 AFB9004C */ sw $t9, 0x4c($sp) -/* 0CBAE8 800CAEE8 AFAB0038 */ sw $t3, 0x38($sp) -/* 0CBAEC 800CAEEC 8FB80048 */ lw $t8, 0x48($sp) -/* 0CBAF0 800CAEF0 8FAD0038 */ lw $t5, 0x38($sp) -/* 0CBAF4 800CAEF4 870E001C */ lh $t6, 0x1c($t8) -/* 0CBAF8 800CAEF8 3C010906 */ lui $at, 0x906 -/* 0CBAFC 800CAEFC 31CAFFFF */ andi $t2, $t6, 0xffff -/* 0CBB00 800CAF00 01417825 */ or $t7, $t2, $at -/* 0CBB04 800CAF04 ADAF0000 */ sw $t7, ($t5) -/* 0CBB08 800CAF08 8FAC0038 */ lw $t4, 0x38($sp) -/* 0CBB0C 800CAF0C 00000000 */ nop -/* 0CBB10 800CAF10 AD800004 */ sw $zero, 4($t4) -/* 0CBB14 800CAF14 8FA9004C */ lw $t1, 0x4c($sp) -/* 0CBB18 800CAF18 00000000 */ nop -/* 0CBB1C 800CAF1C 25280008 */ addiu $t0, $t1, 8 -/* 0CBB20 800CAF20 AFA8004C */ sw $t0, 0x4c($sp) -/* 0CBB24 800CAF24 AFA90034 */ sw $t1, 0x34($sp) -/* 0CBB28 800CAF28 8FAB0048 */ lw $t3, 0x48($sp) -/* 0CBB2C 800CAF2C 8FAA0034 */ lw $t2, 0x34($sp) -/* 0CBB30 800CAF30 8579001E */ lh $t9, 0x1e($t3) -/* 0CBB34 800CAF34 3C010904 */ lui $at, 0x904 -/* 0CBB38 800CAF38 3338FFFF */ andi $t8, $t9, 0xffff -/* 0CBB3C 800CAF3C 03017025 */ or $t6, $t8, $at -/* 0CBB40 800CAF40 AD4E0000 */ sw $t6, ($t2) -/* 0CBB44 800CAF44 8FAF0034 */ lw $t7, 0x34($sp) -/* 0CBB48 800CAF48 00000000 */ nop -/* 0CBB4C 800CAF4C ADE00004 */ sw $zero, 4($t7) -/* 0CBB50 800CAF50 8FAD004C */ lw $t5, 0x4c($sp) -/* 0CBB54 800CAF54 00000000 */ nop -/* 0CBB58 800CAF58 25AC0008 */ addiu $t4, $t5, 8 -/* 0CBB5C 800CAF5C AFAC004C */ sw $t4, 0x4c($sp) -/* 0CBB60 800CAF60 AFAD0030 */ sw $t5, 0x30($sp) -/* 0CBB64 800CAF64 8FA90048 */ lw $t1, 0x48($sp) -/* 0CBB68 800CAF68 8FB80030 */ lw $t8, 0x30($sp) -/* 0CBB6C 800CAF6C 85280028 */ lh $t0, 0x28($t1) -/* 0CBB70 800CAF70 3C010902 */ lui $at, 0x902 -/* 0CBB74 800CAF74 310BFFFF */ andi $t3, $t0, 0xffff -/* 0CBB78 800CAF78 0161C825 */ or $t9, $t3, $at -/* 0CBB7C 800CAF7C AF190000 */ sw $t9, ($t8) -/* 0CBB80 800CAF80 8FAE0048 */ lw $t6, 0x48($sp) -/* 0CBB84 800CAF84 8FAB0030 */ lw $t3, 0x30($sp) -/* 0CBB88 800CAF88 85CA0026 */ lh $t2, 0x26($t6) -/* 0CBB8C 800CAF8C 95CC0024 */ lhu $t4, 0x24($t6) -/* 0CBB90 800CAF90 314FFFFF */ andi $t7, $t2, 0xffff -/* 0CBB94 800CAF94 000F6C00 */ sll $t5, $t7, 0x10 -/* 0CBB98 800CAF98 3189FFFF */ andi $t1, $t4, 0xffff -/* 0CBB9C 800CAF9C 01A94025 */ or $t0, $t5, $t1 -/* 0CBBA0 800CAFA0 AD680004 */ sw $t0, 4($t3) -/* 0CBBA4 800CAFA4 8FB9004C */ lw $t9, 0x4c($sp) -/* 0CBBA8 800CAFA8 00000000 */ nop -/* 0CBBAC 800CAFAC 27380008 */ addiu $t8, $t9, 8 -/* 0CBBB0 800CAFB0 AFB8004C */ sw $t8, 0x4c($sp) -/* 0CBBB4 800CAFB4 AFB9002C */ sw $t9, 0x2c($sp) -/* 0CBBB8 800CAFB8 8FAA0048 */ lw $t2, 0x48($sp) -/* 0CBBBC 800CAFBC 8FAD002C */ lw $t5, 0x2c($sp) -/* 0CBBC0 800CAFC0 854F002E */ lh $t7, 0x2e($t2) -/* 0CBBC4 800CAFC4 3C010900 */ lui $at, 0x900 -/* 0CBBC8 800CAFC8 31EEFFFF */ andi $t6, $t7, 0xffff -/* 0CBBCC 800CAFCC 01C16025 */ or $t4, $t6, $at -/* 0CBBD0 800CAFD0 ADAC0000 */ sw $t4, ($t5) -/* 0CBBD4 800CAFD4 8FA90048 */ lw $t1, 0x48($sp) -/* 0CBBD8 800CAFD8 8FAE002C */ lw $t6, 0x2c($sp) -/* 0CBBDC 800CAFDC 8528002C */ lh $t0, 0x2c($t1) -/* 0CBBE0 800CAFE0 9538002A */ lhu $t8, 0x2a($t1) -/* 0CBBE4 800CAFE4 310BFFFF */ andi $t3, $t0, 0xffff -/* 0CBBE8 800CAFE8 000BCC00 */ sll $t9, $t3, 0x10 -/* 0CBBEC 800CAFEC 330AFFFF */ andi $t2, $t8, 0xffff -/* 0CBBF0 800CAFF0 032A7825 */ or $t7, $t9, $t2 -/* 0CBBF4 800CAFF4 ADCF0004 */ sw $t7, 4($t6) -/* 0CBBF8 800CAFF8 8FAC004C */ lw $t4, 0x4c($sp) -/* 0CBBFC 800CAFFC 00000000 */ nop -/* 0CBC00 800CB000 258D0008 */ addiu $t5, $t4, 8 -/* 0CBC04 800CB004 AFAD004C */ sw $t5, 0x4c($sp) -/* 0CBC08 800CB008 AFAC0028 */ sw $t4, 0x28($sp) -/* 0CBC0C 800CB00C 8FA80048 */ lw $t0, 0x48($sp) -/* 0CBC10 800CB010 8FB90028 */ lw $t9, 0x28($sp) -/* 0CBC14 800CB014 850B0020 */ lh $t3, 0x20($t0) -/* 0CBC18 800CB018 3C010908 */ lui $at, 0x908 -/* 0CBC1C 800CB01C 3169FFFF */ andi $t1, $t3, 0xffff -/* 0CBC20 800CB020 0121C025 */ or $t8, $t1, $at -/* 0CBC24 800CB024 AF380000 */ sw $t8, ($t9) -/* 0CBC28 800CB028 8FAA0048 */ lw $t2, 0x48($sp) -/* 0CBC2C 800CB02C 8FAC0028 */ lw $t4, 0x28($sp) -/* 0CBC30 800CB030 854F0022 */ lh $t7, 0x22($t2) -/* 0CBC34 800CB034 00000000 */ nop -/* 0CBC38 800CB038 31EEFFFF */ andi $t6, $t7, 0xffff -/* 0CBC3C 800CB03C AD8E0004 */ sw $t6, 4($t4) -/* 0CBC40 800CB040 8FAD004C */ lw $t5, 0x4c($sp) -/* 0CBC44 800CB044 00000000 */ nop -/* 0CBC48 800CB048 25A80008 */ addiu $t0, $t5, 8 -/* 0CBC4C 800CB04C AFA8004C */ sw $t0, 0x4c($sp) -/* 0CBC50 800CB050 AFAD0024 */ sw $t5, 0x24($sp) -/* 0CBC54 800CB054 8FA90024 */ lw $t1, 0x24($sp) -/* 0CBC58 800CB058 3C0B0309 */ lui $t3, 0x309 -/* 0CBC5C 800CB05C AD2B0000 */ sw $t3, ($t1) -/* 0CBC60 800CB060 8FB80048 */ lw $t8, 0x48($sp) -/* 0CBC64 800CB064 00000000 */ nop -/* 0CBC68 800CB068 8F040014 */ lw $a0, 0x14($t8) -/* 0CBC6C 800CB06C 0C03233C */ jal func_800C8CF0 -/* 0CBC70 800CB070 00000000 */ nop -/* 0CBC74 800CB074 8FB90024 */ lw $t9, 0x24($sp) -/* 0CBC78 800CB078 00000000 */ nop -/* 0CBC7C 800CB07C AF220004 */ sw $v0, 4($t9) -/* 0CBC80 800CB080 10000011 */ b .L800CB0C8 -/* 0CBC84 800CB084 00000000 */ nop -.L800CB088: -/* 0CBC88 800CB088 8FAA004C */ lw $t2, 0x4c($sp) -/* 0CBC8C 800CB08C 00000000 */ nop -/* 0CBC90 800CB090 254F0008 */ addiu $t7, $t2, 8 -/* 0CBC94 800CB094 AFAF004C */ sw $t7, 0x4c($sp) -/* 0CBC98 800CB098 AFAA0020 */ sw $t2, 0x20($sp) -/* 0CBC9C 800CB09C 8FAC0020 */ lw $t4, 0x20($sp) -/* 0CBCA0 800CB0A0 3C0E0308 */ lui $t6, 0x308 -/* 0CBCA4 800CB0A4 AD8E0000 */ sw $t6, ($t4) -/* 0CBCA8 800CB0A8 8FAD0048 */ lw $t5, 0x48($sp) -/* 0CBCAC 800CB0AC 00000000 */ nop -/* 0CBCB0 800CB0B0 8DA40014 */ lw $a0, 0x14($t5) -/* 0CBCB4 800CB0B4 0C03233C */ jal func_800C8CF0 -/* 0CBCB8 800CB0B8 00000000 */ nop -/* 0CBCBC 800CB0BC 8FA80020 */ lw $t0, 0x20($sp) -/* 0CBCC0 800CB0C0 00000000 */ nop -/* 0CBCC4 800CB0C4 AD020004 */ sw $v0, 4($t0) -.L800CB0C8: -/* 0CBCC8 800CB0C8 8FAB0054 */ lw $t3, 0x54($sp) -/* 0CBCCC 800CB0CC 8FB8005C */ lw $t8, 0x5c($sp) -/* 0CBCD0 800CB0D0 85690000 */ lh $t1, ($t3) -/* 0CBCD4 800CB0D4 0018C840 */ sll $t9, $t8, 1 -/* 0CBCD8 800CB0D8 01395021 */ addu $t2, $t1, $t9 -/* 0CBCDC 800CB0DC A56A0000 */ sh $t2, ($t3) -/* 0CBCE0 800CB0E0 8FA2004C */ lw $v0, 0x4c($sp) -/* 0CBCE4 800CB0E4 10000003 */ b .L800CB0F4 -/* 0CBCE8 800CB0E8 00000000 */ nop -/* 0CBCEC 800CB0EC 10000001 */ b .L800CB0F4 -/* 0CBCF0 800CB0F0 00000000 */ nop -.L800CB0F4: -/* 0CBCF4 800CB0F4 8FBF001C */ lw $ra, 0x1c($sp) -/* 0CBCF8 800CB0F8 27BD0050 */ addiu $sp, $sp, 0x50 -/* 0CBCFC 800CB0FC 03E00008 */ jr $ra -/* 0CBD00 800CB100 00000000 */ nop - -/* 0CBD04 800CB104 27BDFFF0 */ addiu $sp, $sp, -0x10 -/* 0CBD08 800CB108 ACC00000 */ sw $zero, ($a2) -/* 0CBD0C 800CB10C 44802800 */ mtc1 $zero, $f5 -/* 0CBD10 800CB110 44802000 */ mtc1 $zero, $f4 -/* 0CBD14 800CB114 00000000 */ nop -/* 0CBD18 800CB118 46246032 */ c.eq.d $f12, $f4 -/* 0CBD1C 800CB11C 00000000 */ nop -/* 0CBD20 800CB120 45000003 */ bc1f .L800CB130 -/* 0CBD24 800CB124 00000000 */ nop -/* 0CBD28 800CB128 10000055 */ b .L800CB280 -/* 0CBD2C 800CB12C 46206006 */ mov.d $f0, $f12 -.L800CB130: -/* 0CBD30 800CB130 44803800 */ mtc1 $zero, $f7 -/* 0CBD34 800CB134 44803000 */ mtc1 $zero, $f6 -/* 0CBD38 800CB138 00000000 */ nop -/* 0CBD3C 800CB13C 462C303C */ c.lt.d $f6, $f12 -/* 0CBD40 800CB140 00000000 */ nop -/* 0CBD44 800CB144 45000004 */ bc1f .L800CB158 -/* 0CBD48 800CB148 00000000 */ nop -/* 0CBD4C 800CB14C E7AD0008 */ swc1 $f13, 8($sp) -/* 0CBD50 800CB150 10000004 */ b .L800CB164 -/* 0CBD54 800CB154 E7AC000C */ swc1 $f12, 0xc($sp) -.L800CB158: -/* 0CBD58 800CB158 46206207 */ neg.d $f8, $f12 -/* 0CBD5C 800CB15C E7A8000C */ swc1 $f8, 0xc($sp) -/* 0CBD60 800CB160 E7A90008 */ swc1 $f9, 8($sp) -.L800CB164: -/* 0CBD64 800CB164 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 0CBD68 800CB168 44818800 */ mtc1 $at, $f17 -/* 0CBD6C 800CB16C C7AB0008 */ lwc1 $f11, 8($sp) -/* 0CBD70 800CB170 C7AA000C */ lwc1 $f10, 0xc($sp) -/* 0CBD74 800CB174 44808000 */ mtc1 $zero, $f16 -/* 0CBD78 800CB178 00000000 */ nop -/* 0CBD7C 800CB17C 462A803E */ c.le.d $f16, $f10 -/* 0CBD80 800CB180 00000000 */ nop -/* 0CBD84 800CB184 45000013 */ bc1f .L800CB1D4 -/* 0CBD88 800CB188 00000000 */ nop -.L800CB18C: -/* 0CBD8C 800CB18C 8CCE0000 */ lw $t6, ($a2) -/* 0CBD90 800CB190 00000000 */ nop -/* 0CBD94 800CB194 25CF0001 */ addiu $t7, $t6, 1 -/* 0CBD98 800CB198 ACCF0000 */ sw $t7, ($a2) -/* 0CBD9C 800CB19C 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 0CBDA0 800CB1A0 44812800 */ mtc1 $at, $f5 -/* 0CBDA4 800CB1A4 C7B30008 */ lwc1 $f19, 8($sp) -/* 0CBDA8 800CB1A8 C7B2000C */ lwc1 $f18, 0xc($sp) -/* 0CBDAC 800CB1AC 44802000 */ mtc1 $zero, $f4 -/* 0CBDB0 800CB1B0 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 0CBDB4 800CB1B4 46249182 */ mul.d $f6, $f18, $f4 -/* 0CBDB8 800CB1B8 44814800 */ mtc1 $at, $f9 -/* 0CBDBC 800CB1BC 44804000 */ mtc1 $zero, $f8 -/* 0CBDC0 800CB1C0 00000000 */ nop -/* 0CBDC4 800CB1C4 4626403E */ c.le.d $f8, $f6 -/* 0CBDC8 800CB1C8 E7A6000C */ swc1 $f6, 0xc($sp) -/* 0CBDCC 800CB1CC 4501FFEF */ bc1t .L800CB18C -/* 0CBDD0 800CB1D0 E7A70008 */ swc1 $f7, 8($sp) -.L800CB1D4: -/* 0CBDD4 800CB1D4 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 0CBDD8 800CB1D8 44818800 */ mtc1 $at, $f17 -/* 0CBDDC 800CB1DC C7AB0008 */ lwc1 $f11, 8($sp) -/* 0CBDE0 800CB1E0 C7AA000C */ lwc1 $f10, 0xc($sp) -/* 0CBDE4 800CB1E4 44808000 */ mtc1 $zero, $f16 -/* 0CBDE8 800CB1E8 00000000 */ nop -/* 0CBDEC 800CB1EC 4630503C */ c.lt.d $f10, $f16 -/* 0CBDF0 800CB1F0 00000000 */ nop -/* 0CBDF4 800CB1F4 4500000F */ bc1f .L800CB234 -/* 0CBDF8 800CB1F8 00000000 */ nop -.L800CB1FC: -/* 0CBDFC 800CB1FC 8CD80000 */ lw $t8, ($a2) -/* 0CBE00 800CB200 00000000 */ nop -/* 0CBE04 800CB204 2719FFFF */ addiu $t9, $t8, -1 -/* 0CBE08 800CB208 ACD90000 */ sw $t9, ($a2) -/* 0CBE0C 800CB20C C7B30008 */ lwc1 $f19, 8($sp) -/* 0CBE10 800CB210 C7B2000C */ lwc1 $f18, 0xc($sp) -/* 0CBE14 800CB214 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 0CBE18 800CB218 44813800 */ mtc1 $at, $f7 -/* 0CBE1C 800CB21C 44803000 */ mtc1 $zero, $f6 -/* 0CBE20 800CB220 46329100 */ add.d $f4, $f18, $f18 -/* 0CBE24 800CB224 4626203C */ c.lt.d $f4, $f6 -/* 0CBE28 800CB228 E7A4000C */ swc1 $f4, 0xc($sp) -/* 0CBE2C 800CB22C 4501FFF3 */ bc1t .L800CB1FC -/* 0CBE30 800CB230 E7A50008 */ swc1 $f5, 8($sp) -.L800CB234: -/* 0CBE34 800CB234 44804800 */ mtc1 $zero, $f9 -/* 0CBE38 800CB238 44804000 */ mtc1 $zero, $f8 -/* 0CBE3C 800CB23C 00000000 */ nop -/* 0CBE40 800CB240 462C403C */ c.lt.d $f8, $f12 -/* 0CBE44 800CB244 00000000 */ nop -/* 0CBE48 800CB248 45000005 */ bc1f .L800CB260 -/* 0CBE4C 800CB24C 00000000 */ nop -/* 0CBE50 800CB250 C7AF0008 */ lwc1 $f15, 8($sp) -/* 0CBE54 800CB254 C7AE000C */ lwc1 $f14, 0xc($sp) -/* 0CBE58 800CB258 10000005 */ b .L800CB270 -/* 0CBE5C 800CB25C 00000000 */ nop -.L800CB260: -/* 0CBE60 800CB260 C7AF0008 */ lwc1 $f15, 8($sp) -/* 0CBE64 800CB264 C7AE000C */ lwc1 $f14, 0xc($sp) -/* 0CBE68 800CB268 00000000 */ nop -/* 0CBE6C 800CB26C 46207387 */ neg.d $f14, $f14 -.L800CB270: -/* 0CBE70 800CB270 10000003 */ b .L800CB280 -/* 0CBE74 800CB274 46207006 */ mov.d $f0, $f14 -/* 0CBE78 800CB278 10000001 */ b .L800CB280 -/* 0CBE7C 800CB27C 00000000 */ nop -.L800CB280: -/* 0CBE80 800CB280 03E00008 */ jr $ra -/* 0CBE84 800CB284 27BD0010 */ addiu $sp, $sp, 0x10 - -/* 0CBE88 800CB288 27BDFFF8 */ addiu $sp, $sp, -8 -/* 0CBE8C 800CB28C 10C0000B */ beqz $a2, .L800CB2BC -/* 0CBE90 800CB290 00000000 */ nop -/* 0CBE94 800CB294 240E0001 */ li $t6, 1 -/* 0CBE98 800CB298 00CE7804 */ sllv $t7, $t6, $a2 -/* 0CBE9C 800CB29C AFAF0004 */ sw $t7, 4($sp) -/* 0CBEA0 800CB2A0 8FB80004 */ lw $t8, 4($sp) -/* 0CBEA4 800CB2A4 00000000 */ nop -/* 0CBEA8 800CB2A8 44982000 */ mtc1 $t8, $f4 -/* 0CBEAC 800CB2AC 00000000 */ nop -/* 0CBEB0 800CB2B0 468021A1 */ cvt.d.w $f6, $f4 -/* 0CBEB4 800CB2B4 46266302 */ mul.d $f12, $f12, $f6 -/* 0CBEB8 800CB2B8 00000000 */ nop -.L800CB2BC: -/* 0CBEBC 800CB2BC 10000003 */ b .L800CB2CC -/* 0CBEC0 800CB2C0 46206006 */ mov.d $f0, $f12 -/* 0CBEC4 800CB2C4 10000001 */ b .L800CB2CC -/* 0CBEC8 800CB2C8 00000000 */ nop -.L800CB2CC: -/* 0CBECC 800CB2CC 03E00008 */ jr $ra -/* 0CBED0 800CB2D0 27BD0008 */ addiu $sp, $sp, 8 - -glabel func_800CB2D4 -/* 0CBED4 800CB2D4 27BDFFF0 */ addiu $sp, $sp, -0x10 -/* 0CBED8 800CB2D8 8FAE0020 */ lw $t6, 0x20($sp) -/* 0CBEDC 800CB2DC 00000000 */ nop -/* 0CBEE0 800CB2E0 15C00011 */ bnez $t6, .L800CB328 -/* 0CBEE4 800CB2E4 00000000 */ nop -/* 0CBEE8 800CB2E8 462E603E */ c.le.d $f12, $f14 -/* 0CBEEC 800CB2EC 00000000 */ nop -/* 0CBEF0 800CB2F0 45000008 */ bc1f .L800CB314 -/* 0CBEF4 800CB2F4 00000000 */ nop -/* 0CBEF8 800CB2F8 8FB80024 */ lw $t8, 0x24($sp) -/* 0CBEFC 800CB2FC 340FFFFF */ li $t7, 65535 -/* 0CBF00 800CB300 A70F0000 */ sh $t7, ($t8) -/* 0CBF04 800CB304 10000062 */ b .L800CB490 -/* 0CBF08 800CB308 24027FFF */ li $v0, 32767 -/* 0CBF0C 800CB30C 10000006 */ b .L800CB328 -/* 0CBF10 800CB310 00000000 */ nop -.L800CB314: -/* 0CBF14 800CB314 8FB90024 */ lw $t9, 0x24($sp) -/* 0CBF18 800CB318 00000000 */ nop -/* 0CBF1C 800CB31C A7200000 */ sh $zero, ($t9) -/* 0CBF20 800CB320 1000005B */ b .L800CB490 -/* 0CBF24 800CB324 24028000 */ li $v0, -32768 -.L800CB328: -/* 0CBF28 800CB328 8FA80020 */ lw $t0, 0x20($sp) -/* 0CBF2C 800CB32C 462C7101 */ sub.d $f4, $f14, $f12 -/* 0CBF30 800CB330 44883000 */ mtc1 $t0, $f6 -/* 0CBF34 800CB334 00000000 */ nop -/* 0CBF38 800CB338 46803220 */ cvt.s.w $f8, $f6 -/* 0CBF3C 800CB33C 460042A1 */ cvt.d.s $f10, $f8 -/* 0CBF40 800CB340 00000000 */ nop -/* 0CBF44 800CB344 462A2403 */ div.d $f16, $f4, $f10 -/* 0CBF48 800CB348 E7B00004 */ swc1 $f16, 4($sp) -/* 0CBF4C 800CB34C E7B10000 */ swc1 $f17, ($sp) -/* 0CBF50 800CB350 3C014020 */ li $at, 0x40200000 # 2.500000 -/* 0CBF54 800CB354 44813800 */ mtc1 $at, $f7 -/* 0CBF58 800CB358 C7B30000 */ lwc1 $f19, ($sp) -/* 0CBF5C 800CB35C C7B20004 */ lwc1 $f18, 4($sp) -/* 0CBF60 800CB360 44803000 */ mtc1 $zero, $f6 -/* 0CBF64 800CB364 00000000 */ nop -/* 0CBF68 800CB368 46269202 */ mul.d $f8, $f18, $f6 -/* 0CBF6C 800CB36C E7A80004 */ swc1 $f8, 4($sp) -/* 0CBF70 800CB370 E7A90000 */ swc1 $f9, ($sp) -/* 0CBF74 800CB374 C7A50000 */ lwc1 $f5, ($sp) -/* 0CBF78 800CB378 C7A40004 */ lwc1 $f4, 4($sp) -/* 0CBF7C 800CB37C 44805800 */ mtc1 $zero, $f11 -/* 0CBF80 800CB380 44805000 */ mtc1 $zero, $f10 -/* 0CBF84 800CB384 00000000 */ nop -/* 0CBF88 800CB388 462A203C */ c.lt.d $f4, $f10 -/* 0CBF8C 800CB38C 00000000 */ nop -/* 0CBF90 800CB390 4500000A */ bc1f .L800CB3BC -/* 0CBF94 800CB394 00000000 */ nop -/* 0CBF98 800CB398 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 0CBF9C 800CB39C 44819800 */ mtc1 $at, $f19 -/* 0CBFA0 800CB3A0 C7B10000 */ lwc1 $f17, ($sp) -/* 0CBFA4 800CB3A4 C7B00004 */ lwc1 $f16, 4($sp) -/* 0CBFA8 800CB3A8 44809000 */ mtc1 $zero, $f18 -/* 0CBFAC 800CB3AC 00000000 */ nop -/* 0CBFB0 800CB3B0 46328181 */ sub.d $f6, $f16, $f18 -/* 0CBFB4 800CB3B4 E7A60004 */ swc1 $f6, 4($sp) -/* 0CBFB8 800CB3B8 E7A70000 */ swc1 $f7, ($sp) -.L800CB3BC: -/* 0CBFBC 800CB3BC 4449F800 */ cfc1 $t1, $31 -/* 0CBFC0 800CB3C0 C7A90000 */ lwc1 $f9, ($sp) -/* 0CBFC4 800CB3C4 35210003 */ ori $at, $t1, 3 -/* 0CBFC8 800CB3C8 38210002 */ xori $at, $at, 2 -/* 0CBFCC 800CB3CC 44C1F800 */ ctc1 $at, $31 -/* 0CBFD0 800CB3D0 C7A80004 */ lwc1 $f8, 4($sp) -/* 0CBFD4 800CB3D4 00000000 */ nop -/* 0CBFD8 800CB3D8 46204124 */ cvt.w.d $f4, $f8 -/* 0CBFDC 800CB3DC 440A2000 */ mfc1 $t2, $f4 -/* 0CBFE0 800CB3E0 44C9F800 */ ctc1 $t1, $31 -/* 0CBFE4 800CB3E4 A7AA000E */ sh $t2, 0xe($sp) -/* 0CBFE8 800CB3E8 00000000 */ nop -/* 0CBFEC 800CB3EC 87AB000E */ lh $t3, 0xe($sp) -/* 0CBFF0 800CB3F0 C7AB0000 */ lwc1 $f11, ($sp) -/* 0CBFF4 800CB3F4 448B8000 */ mtc1 $t3, $f16 -/* 0CBFF8 800CB3F8 C7AA0004 */ lwc1 $f10, 4($sp) -/* 0CBFFC 800CB3FC 468084A0 */ cvt.s.w $f18, $f16 -/* 0CC000 800CB400 3C01800F */ lui $at, %hi(D_800E95FC) # $at, 0x800f -/* 0CC004 800CB404 C42595F8 */ lwc1 $f5, %lo(D_800E95F8)($at) -/* 0CC008 800CB408 460091A1 */ cvt.d.s $f6, $f18 -/* 0CC00C 800CB40C C42495FC */ lwc1 $f4, %lo(D_800E95FC)($at) -/* 0CC010 800CB410 46265201 */ sub.d $f8, $f10, $f6 -/* 0CC014 800CB414 8FB80024 */ lw $t8, 0x24($sp) -/* 0CC018 800CB418 46244402 */ mul.d $f16, $f8, $f4 -/* 0CC01C 800CB41C 444CF800 */ cfc1 $t4, $31 -/* 0CC020 800CB420 00000000 */ nop -/* 0CC024 800CB424 35810003 */ ori $at, $t4, 3 -/* 0CC028 800CB428 38210002 */ xori $at, $at, 2 -/* 0CC02C 800CB42C 44C1F800 */ ctc1 $at, $31 -/* 0CC030 800CB430 00000000 */ nop -/* 0CC034 800CB434 462084A4 */ cvt.w.d $f18, $f16 -/* 0CC038 800CB438 440D9000 */ mfc1 $t5, $f18 -/* 0CC03C 800CB43C 44CCF800 */ ctc1 $t4, $31 -/* 0CC040 800CB440 000D7400 */ sll $t6, $t5, 0x10 -/* 0CC044 800CB444 000E7C03 */ sra $t7, $t6, 0x10 -/* 0CC048 800CB448 A70F0000 */ sh $t7, ($t8) -/* 0CC04C 800CB44C 4459F800 */ cfc1 $t9, $31 -/* 0CC050 800CB450 C7AB0000 */ lwc1 $f11, ($sp) -/* 0CC054 800CB454 37210003 */ ori $at, $t9, 3 -/* 0CC058 800CB458 38210002 */ xori $at, $at, 2 -/* 0CC05C 800CB45C 44C1F800 */ ctc1 $at, $31 -/* 0CC060 800CB460 C7AA0004 */ lwc1 $f10, 4($sp) -/* 0CC064 800CB464 00000000 */ nop -/* 0CC068 800CB468 462051A4 */ cvt.w.d $f6, $f10 -/* 0CC06C 800CB46C 44023000 */ mfc1 $v0, $f6 -/* 0CC070 800CB470 44D9F800 */ ctc1 $t9, $31 -/* 0CC074 800CB474 00024400 */ sll $t0, $v0, 0x10 -/* 0CC078 800CB478 01001025 */ move $v0, $t0 -/* 0CC07C 800CB47C 00024C03 */ sra $t1, $v0, 0x10 -/* 0CC080 800CB480 10000003 */ b .L800CB490 -/* 0CC084 800CB484 01201025 */ move $v0, $t1 -/* 0CC088 800CB488 10000001 */ b .L800CB490 -/* 0CC08C 800CB48C 00000000 */ nop -.L800CB490: -/* 0CC090 800CB490 03E00008 */ jr $ra -/* 0CC094 800CB494 27BD0010 */ addiu $sp, $sp, 0x10 - -glabel func_800CB498 -/* 0CC098 800CB498 00063400 */ sll $a2, $a2, 0x10 -/* 0CC09C 800CB49C 00063403 */ sra $a2, $a2, 0x10 -/* 0CC0A0 800CB4A0 27BDFFF8 */ addiu $sp, $sp, -8 -/* 0CC0A4 800CB4A4 30E7FFFF */ andi $a3, $a3, 0xffff -/* 0CC0A8 800CB4A8 00067400 */ sll $t6, $a2, 0x10 -/* 0CC0AC 800CB4AC 448E2000 */ mtc1 $t6, $f4 -/* 0CC0B0 800CB4B0 44874000 */ mtc1 $a3, $f8 -/* 0CC0B4 800CB4B4 468021A0 */ cvt.s.w $f6, $f4 -/* 0CC0B8 800CB4B8 04E10005 */ bgez $a3, .L800CB4D0 -/* 0CC0BC 800CB4BC 468042A0 */ cvt.s.w $f10, $f8 -/* 0CC0C0 800CB4C0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0CC0C4 800CB4C4 44818000 */ mtc1 $at, $f16 -/* 0CC0C8 800CB4C8 00000000 */ nop -/* 0CC0CC 800CB4CC 46105280 */ add.s $f10, $f10, $f16 -.L800CB4D0: -/* 0CC0D0 800CB4D0 460A3480 */ add.s $f18, $f6, $f10 -/* 0CC0D4 800CB4D4 3C0140F0 */ li $at, 0x40F00000 # 7.500000 -/* 0CC0D8 800CB4D8 44814800 */ mtc1 $at, $f9 -/* 0CC0DC 800CB4DC 44804000 */ mtc1 $zero, $f8 -/* 0CC0E0 800CB4E0 46009121 */ cvt.d.s $f4, $f18 -/* 0CC0E4 800CB4E4 00000000 */ nop -/* 0CC0E8 800CB4E8 46282403 */ div.d $f16, $f4, $f8 -/* 0CC0EC 800CB4EC 462081A0 */ cvt.s.d $f6, $f16 -/* 0CC0F0 800CB4F0 E7A60004 */ swc1 $f6, 4($sp) -/* 0CC0F4 800CB4F4 44859000 */ mtc1 $a1, $f18 -/* 0CC0F8 800CB4F8 C7AA0004 */ lwc1 $f10, 4($sp) -/* 0CC0FC 800CB4FC 46809120 */ cvt.s.w $f4, $f18 -/* 0CC100 800CB500 3C014020 */ li $at, 0x40200000 # 2.500000 -/* 0CC104 800CB504 44813800 */ mtc1 $at, $f7 -/* 0CC108 800CB508 46045202 */ mul.s $f8, $f10, $f4 -/* 0CC10C 800CB50C 44803000 */ mtc1 $zero, $f6 -/* 0CC110 800CB510 460062A1 */ cvt.d.s $f10, $f12 -/* 0CC114 800CB514 46004421 */ cvt.d.s $f16, $f8 -/* 0CC118 800CB518 00000000 */ nop -/* 0CC11C 800CB51C 46268483 */ div.d $f18, $f16, $f6 -/* 0CC120 800CB520 46325100 */ add.d $f4, $f10, $f18 -/* 0CC124 800CB524 46202320 */ cvt.s.d $f12, $f4 -/* 0CC128 800CB528 10000003 */ b .L800CB538 -/* 0CC12C 800CB52C 46006006 */ mov.s $f0, $f12 -/* 0CC130 800CB530 10000001 */ b .L800CB538 -/* 0CC134 800CB534 00000000 */ nop -.L800CB538: -/* 0CC138 800CB538 03E00008 */ jr $ra -/* 0CC13C 800CB53C 27BD0008 */ addiu $sp, $sp, 8 - -glabel D_800CB540 -/* 0CC140 800CB540 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0CC144 800CB544 24010004 */ li $at, 4 -/* 0CC148 800CB548 AFBF0014 */ sw $ra, 0x14($sp) -/* 0CC14C 800CB54C 10A10055 */ beq $a1, $at, .L800CB6A4 -/* 0CC150 800CB550 00803825 */ move $a3, $a0 -/* 0CC154 800CB554 24010005 */ li $at, 5 -/* 0CC158 800CB558 54A1006B */ bnel $a1, $at, .L800CB708 -/* 0CC15C 800CB55C 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CC160 800CB560 AC860028 */ sw $a2, 0x28($a0) -/* 0CC164 800CB564 8CCE0000 */ lw $t6, ($a2) -/* 0CC168 800CB568 AC800038 */ sw $zero, 0x38($a0) -/* 0CC16C 800CB56C 3C0F800D */ lui $t7, %hi(D_800CBBEC) # $t7, 0x800d -/* 0CC170 800CB570 AC8E0044 */ sw $t6, 0x44($a0) -/* 0CC174 800CB574 90C20008 */ lbu $v0, 8($a2) -/* 0CC178 800CB578 50400007 */ beql $v0, $zero, .L800CB598 -/* 0CC17C 800CB57C 8CE20028 */ lw $v0, 0x28($a3) -/* 0CC180 800CB580 24040001 */ li $a0, 1 -/* 0CC184 800CB584 10440034 */ beq $v0, $a0, .L800CB658 -/* 0CC188 800CB588 3C08800D */ lui $t0, %hi(D_800CB714) # $t0, 0x800d -/* 0CC18C 800CB58C 1000005E */ b .L800CB708 -/* 0CC190 800CB590 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CC194 800CB594 8CE20028 */ lw $v0, 0x28($a3) -.L800CB598: -/* 0CC198 800CB598 25EFBBEC */ addiu $t7, %lo(D_800CBBEC) # addiu $t7, $t7, -0x4414 -/* 0CC19C 800CB59C ACEF0004 */ sw $t7, 4($a3) -/* 0CC1A0 800CB5A0 8C580004 */ lw $t8, 4($v0) -/* 0CC1A4 800CB5A4 24050009 */ li $a1, 9 -/* 0CC1A8 800CB5A8 0305001A */ div $zero, $t8, $a1 -/* 0CC1AC 800CB5AC 0000C812 */ mflo $t9 -/* 0CC1B0 800CB5B0 14A00002 */ bnez $a1, .L800CB5BC -/* 0CC1B4 800CB5B4 00000000 */ nop -/* 0CC1B8 800CB5B8 0007000D */ break 7 -.L800CB5BC: -/* 0CC1BC 800CB5BC 2401FFFF */ li $at, -1 -/* 0CC1C0 800CB5C0 14A10004 */ bne $a1, $at, .L800CB5D4 -/* 0CC1C4 800CB5C4 3C018000 */ lui $at, 0x8000 -/* 0CC1C8 800CB5C8 17010002 */ bne $t8, $at, .L800CB5D4 -/* 0CC1CC 800CB5CC 00000000 */ nop -/* 0CC1D0 800CB5D0 0006000D */ break 6 -.L800CB5D4: -/* 0CC1D4 800CB5D4 03250019 */ multu $t9, $a1 -/* 0CC1D8 800CB5D8 00004012 */ mflo $t0 -/* 0CC1DC 800CB5DC AC480004 */ sw $t0, 4($v0) -/* 0CC1E0 800CB5E0 8CE20028 */ lw $v0, 0x28($a3) -/* 0CC1E4 800CB5E4 8C440010 */ lw $a0, 0x10($v0) -/* 0CC1E8 800CB5E8 8C890000 */ lw $t1, ($a0) -/* 0CC1EC 800CB5EC 8C8B0004 */ lw $t3, 4($a0) -/* 0CC1F0 800CB5F0 00095100 */ sll $t2, $t1, 4 -/* 0CC1F4 800CB5F4 014B0019 */ multu $t2, $t3 -/* 0CC1F8 800CB5F8 00006012 */ mflo $t4 -/* 0CC1FC 800CB5FC ACEC002C */ sw $t4, 0x2c($a3) -/* 0CC200 800CB600 8C43000C */ lw $v1, 0xc($v0) -/* 0CC204 800CB604 50600011 */ beql $v1, $zero, .L800CB64C -/* 0CC208 800CB608 ACE00024 */ sw $zero, 0x24($a3) -/* 0CC20C 800CB60C 8C6D0000 */ lw $t5, ($v1) -/* 0CC210 800CB610 8CE50018 */ lw $a1, 0x18($a3) -/* 0CC214 800CB614 24060020 */ li $a2, 32 -/* 0CC218 800CB618 ACED001C */ sw $t5, 0x1c($a3) -/* 0CC21C 800CB61C 8C4E000C */ lw $t6, 0xc($v0) -/* 0CC220 800CB620 8DCF0004 */ lw $t7, 4($t6) -/* 0CC224 800CB624 ACEF0020 */ sw $t7, 0x20($a3) -/* 0CC228 800CB628 8C58000C */ lw $t8, 0xc($v0) -/* 0CC22C 800CB62C 8F190008 */ lw $t9, 8($t8) -/* 0CC230 800CB630 ACF90024 */ sw $t9, 0x24($a3) -/* 0CC234 800CB634 8C44000C */ lw $a0, 0xc($v0) -/* 0CC238 800CB638 0C034E08 */ jal func_800D3820 -/* 0CC23C 800CB63C 2484000C */ addiu $a0, $a0, 0xc -/* 0CC240 800CB640 10000031 */ b .L800CB708 -/* 0CC244 800CB644 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CC248 800CB648 ACE00024 */ sw $zero, 0x24($a3) -.L800CB64C: -/* 0CC24C 800CB64C ACE00020 */ sw $zero, 0x20($a3) -/* 0CC250 800CB650 1000002C */ b .L800CB704 -/* 0CC254 800CB654 ACE0001C */ sw $zero, 0x1c($a3) -.L800CB658: -/* 0CC258 800CB658 8CE20028 */ lw $v0, 0x28($a3) -/* 0CC25C 800CB65C 2508B714 */ addiu $t0, %lo(D_800CB714) # addiu $t0, $t0, -0x48ec -/* 0CC260 800CB660 ACE80004 */ sw $t0, 4($a3) -/* 0CC264 800CB664 8C43000C */ lw $v1, 0xc($v0) -/* 0CC268 800CB668 5060000B */ beql $v1, $zero, .L800CB698 -/* 0CC26C 800CB66C ACE00024 */ sw $zero, 0x24($a3) -/* 0CC270 800CB670 8C690000 */ lw $t1, ($v1) -/* 0CC274 800CB674 ACE9001C */ sw $t1, 0x1c($a3) -/* 0CC278 800CB678 8C4A000C */ lw $t2, 0xc($v0) -/* 0CC27C 800CB67C 8D4B0004 */ lw $t3, 4($t2) -/* 0CC280 800CB680 ACEB0020 */ sw $t3, 0x20($a3) -/* 0CC284 800CB684 8C4C000C */ lw $t4, 0xc($v0) -/* 0CC288 800CB688 8D8D0008 */ lw $t5, 8($t4) -/* 0CC28C 800CB68C 1000001D */ b .L800CB704 -/* 0CC290 800CB690 ACED0024 */ sw $t5, 0x24($a3) -/* 0CC294 800CB694 ACE00024 */ sw $zero, 0x24($a3) -.L800CB698: -/* 0CC298 800CB698 ACE00020 */ sw $zero, 0x20($a3) -/* 0CC29C 800CB69C 10000019 */ b .L800CB704 -/* 0CC2A0 800CB6A0 ACE0001C */ sw $zero, 0x1c($a3) -.L800CB6A4: -/* 0CC2A4 800CB6A4 8CE20028 */ lw $v0, 0x28($a3) -/* 0CC2A8 800CB6A8 24040001 */ li $a0, 1 -/* 0CC2AC 800CB6AC ACE0003C */ sw $zero, 0x3c($a3) -/* 0CC2B0 800CB6B0 ACE40040 */ sw $a0, 0x40($a3) -/* 0CC2B4 800CB6B4 10400013 */ beqz $v0, .L800CB704 -/* 0CC2B8 800CB6B8 ACE00038 */ sw $zero, 0x38($a3) -/* 0CC2BC 800CB6BC 8C4E0000 */ lw $t6, ($v0) -/* 0CC2C0 800CB6C0 ACEE0044 */ sw $t6, 0x44($a3) -/* 0CC2C4 800CB6C4 90430008 */ lbu $v1, 8($v0) -/* 0CC2C8 800CB6C8 14600007 */ bnez $v1, .L800CB6E8 -/* 0CC2CC 800CB6CC 00000000 */ nop -/* 0CC2D0 800CB6D0 8C43000C */ lw $v1, 0xc($v0) -/* 0CC2D4 800CB6D4 5060000C */ beql $v1, $zero, .L800CB708 -/* 0CC2D8 800CB6D8 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CC2DC 800CB6DC 8C6F0008 */ lw $t7, 8($v1) -/* 0CC2E0 800CB6E0 10000008 */ b .L800CB704 -/* 0CC2E4 800CB6E4 ACEF0024 */ sw $t7, 0x24($a3) -.L800CB6E8: -/* 0CC2E8 800CB6E8 54830007 */ bnel $a0, $v1, .L800CB708 -/* 0CC2EC 800CB6EC 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CC2F0 800CB6F0 8C43000C */ lw $v1, 0xc($v0) -/* 0CC2F4 800CB6F4 50600004 */ beql $v1, $zero, .L800CB708 -/* 0CC2F8 800CB6F8 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CC2FC 800CB6FC 8C780008 */ lw $t8, 8($v1) -/* 0CC300 800CB700 ACF80024 */ sw $t8, 0x24($a3) -.L800CB704: -/* 0CC304 800CB704 8FBF0014 */ lw $ra, 0x14($sp) -.L800CB708: -/* 0CC308 800CB708 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0CC30C 800CB70C 03E00008 */ jr $ra -/* 0CC310 800CB710 00000000 */ nop - -glabel D_800CB714 -/* 0CC314 800CB714 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 0CC318 800CB718 8FA80060 */ lw $t0, 0x60($sp) -/* 0CC31C 800CB71C AFB30020 */ sw $s3, 0x20($sp) -/* 0CC320 800CB720 AFB00014 */ sw $s0, 0x14($sp) -/* 0CC324 800CB724 00808025 */ move $s0, $a0 -/* 0CC328 800CB728 00C09825 */ move $s3, $a2 -/* 0CC32C 800CB72C AFBF0024 */ sw $ra, 0x24($sp) -/* 0CC330 800CB730 AFB2001C */ sw $s2, 0x1c($sp) -/* 0CC334 800CB734 AFB10018 */ sw $s1, 0x18($sp) -/* 0CC338 800CB738 AFA7005C */ sw $a3, 0x5c($sp) -/* 0CC33C 800CB73C 00A05025 */ move $t2, $a1 -/* 0CC340 800CB740 14C00003 */ bnez $a2, .L800CB750 -/* 0CC344 800CB744 01004825 */ move $t1, $t0 -/* 0CC348 800CB748 100000D6 */ b .L800CBAA4 -/* 0CC34C 800CB74C 01001025 */ move $v0, $t0 -.L800CB750: -/* 0CC350 800CB750 8E020038 */ lw $v0, 0x38($s0) -/* 0CC354 800CB754 8E030020 */ lw $v1, 0x20($s0) -/* 0CC358 800CB758 00537021 */ addu $t6, $v0, $s3 -/* 0CC35C 800CB75C 006E082B */ sltu $at, $v1, $t6 -/* 0CC360 800CB760 50200084 */ beql $at, $zero, .L800CB974 -/* 0CC364 800CB764 8E020028 */ lw $v0, 0x28($s0) -/* 0CC368 800CB768 8E0F0024 */ lw $t7, 0x24($s0) -/* 0CC36C 800CB76C 00629023 */ subu $s2, $v1, $v0 -/* 0CC370 800CB770 51E00080 */ beql $t7, $zero, .L800CB974 -/* 0CC374 800CB774 8E020028 */ lw $v0, 0x28($s0) -/* 0CC378 800CB778 1A40001E */ blez $s2, .L800CB7F4 -/* 0CC37C 800CB77C 00128840 */ sll $s1, $s2, 1 -/* 0CC380 800CB780 8E040044 */ lw $a0, 0x44($s0) -/* 0CC384 800CB784 8E060034 */ lw $a2, 0x34($s0) -/* 0CC388 800CB788 AFAA0054 */ sw $t2, 0x54($sp) -/* 0CC38C 800CB78C 8E190030 */ lw $t9, 0x30($s0) -/* 0CC390 800CB790 02202825 */ move $a1, $s1 -/* 0CC394 800CB794 0320F809 */ jalr $t9 -/* 0CC398 800CB798 00000000 */ nop -/* 0CC39C 800CB79C 8FAA0054 */ lw $t2, 0x54($sp) -/* 0CC3A0 800CB7A0 30460007 */ andi $a2, $v0, 7 -/* 0CC3A4 800CB7A4 8FA80060 */ lw $t0, 0x60($sp) -/* 0CC3A8 800CB7A8 85580000 */ lh $t8, ($t2) -/* 0CC3AC 800CB7AC 02263821 */ addu $a3, $s1, $a2 -/* 0CC3B0 800CB7B0 30ED0007 */ andi $t5, $a3, 7 -/* 0CC3B4 800CB7B4 00ED7023 */ subu $t6, $a3, $t5 -/* 0CC3B8 800CB7B8 3C010800 */ lui $at, 0x800 -/* 0CC3BC 800CB7BC 330BFFFF */ andi $t3, $t8, 0xffff -/* 0CC3C0 800CB7C0 01616025 */ or $t4, $t3, $at -/* 0CC3C4 800CB7C4 25CF0008 */ addiu $t7, $t6, 8 -/* 0CC3C8 800CB7C8 25090008 */ addiu $t1, $t0, 8 -/* 0CC3CC 800CB7CC 31F9FFFF */ andi $t9, $t7, 0xffff -/* 0CC3D0 800CB7D0 01202025 */ move $a0, $t1 -/* 0CC3D4 800CB7D4 00465823 */ subu $t3, $v0, $a2 -/* 0CC3D8 800CB7D8 3C180400 */ lui $t8, 0x400 -/* 0CC3DC 800CB7DC AD190004 */ sw $t9, 4($t0) -/* 0CC3E0 800CB7E0 AD0C0000 */ sw $t4, ($t0) -/* 0CC3E4 800CB7E4 AC8B0004 */ sw $t3, 4($a0) -/* 0CC3E8 800CB7E8 AC980000 */ sw $t8, ($a0) -/* 0CC3EC 800CB7EC 10000002 */ b .L800CB7F8 -/* 0CC3F0 800CB7F0 25290008 */ addiu $t1, $t1, 8 -.L800CB7F4: -/* 0CC3F4 800CB7F4 00003025 */ move $a2, $zero -.L800CB7F8: -/* 0CC3F8 800CB7F8 854C0000 */ lh $t4, ($t2) -/* 0CC3FC 800CB7FC 0253082A */ slt $at, $s2, $s3 -/* 0CC400 800CB800 01866821 */ addu $t5, $t4, $a2 -/* 0CC404 800CB804 A54D0000 */ sh $t5, ($t2) -/* 0CC408 800CB808 8E0E0028 */ lw $t6, 0x28($s0) -/* 0CC40C 800CB80C 8E02001C */ lw $v0, 0x1c($s0) -/* 0CC410 800CB810 8DCF0000 */ lw $t7, ($t6) -/* 0CC414 800CB814 0002C840 */ sll $t9, $v0, 1 -/* 0CC418 800CB818 AE020038 */ sw $v0, 0x38($s0) -/* 0CC41C 800CB81C 01F9C021 */ addu $t8, $t7, $t9 -/* 0CC420 800CB820 AE180044 */ sw $t8, 0x44($s0) -/* 0CC424 800CB824 10200049 */ beqz $at, .L800CB94C -/* 0CC428 800CB828 85480000 */ lh $t0, ($t2) -/* 0CC42C 800CB82C 8E020024 */ lw $v0, 0x24($s0) -.L800CB830: -/* 0CC430 800CB830 2401FFFF */ li $at, -1 -/* 0CC434 800CB834 01114021 */ addu $t0, $t0, $s1 -/* 0CC438 800CB838 10410004 */ beq $v0, $at, .L800CB84C -/* 0CC43C 800CB83C 02729823 */ subu $s3, $s3, $s2 -/* 0CC440 800CB840 10400002 */ beqz $v0, .L800CB84C -/* 0CC444 800CB844 244BFFFF */ addiu $t3, $v0, -1 -/* 0CC448 800CB848 AE0B0024 */ sw $t3, 0x24($s0) -.L800CB84C: -/* 0CC44C 800CB84C 8E0C0020 */ lw $t4, 0x20($s0) -/* 0CC450 800CB850 8E0D001C */ lw $t5, 0x1c($s0) -/* 0CC454 800CB854 018D1023 */ subu $v0, $t4, $t5 -/* 0CC458 800CB858 0262082B */ sltu $at, $s3, $v0 -/* 0CC45C 800CB85C 10200003 */ beqz $at, .L800CB86C -/* 0CC460 800CB860 00409025 */ move $s2, $v0 -/* 0CC464 800CB864 10000001 */ b .L800CB86C -/* 0CC468 800CB868 02609025 */ move $s2, $s3 -.L800CB86C: -/* 0CC46C 800CB86C 8E040044 */ lw $a0, 0x44($s0) -/* 0CC470 800CB870 8E060034 */ lw $a2, 0x34($s0) -/* 0CC474 800CB874 AFA9004C */ sw $t1, 0x4c($sp) -/* 0CC478 800CB878 AFA8002C */ sw $t0, 0x2c($sp) -/* 0CC47C 800CB87C 8E190030 */ lw $t9, 0x30($s0) -/* 0CC480 800CB880 00128840 */ sll $s1, $s2, 1 -/* 0CC484 800CB884 02202825 */ move $a1, $s1 -/* 0CC488 800CB888 0320F809 */ jalr $t9 -/* 0CC48C 800CB88C 00000000 */ nop -/* 0CC490 800CB890 8FA8002C */ lw $t0, 0x2c($sp) -/* 0CC494 800CB894 30450007 */ andi $a1, $v0, 7 -/* 0CC498 800CB898 8FA9004C */ lw $t1, 0x4c($sp) -/* 0CC49C 800CB89C 31030007 */ andi $v1, $t0, 7 -/* 0CC4A0 800CB8A0 10600004 */ beqz $v1, .L800CB8B4 -/* 0CC4A4 800CB8A4 02253821 */ addu $a3, $s1, $a1 -/* 0CC4A8 800CB8A8 240E0008 */ li $t6, 8 -/* 0CC4AC 800CB8AC 10000002 */ b .L800CB8B8 -/* 0CC4B0 800CB8B0 01C33023 */ subu $a2, $t6, $v1 -.L800CB8B4: -/* 0CC4B4 800CB8B4 00003025 */ move $a2, $zero -.L800CB8B8: -/* 0CC4B8 800CB8B8 01067821 */ addu $t7, $t0, $a2 -/* 0CC4BC 800CB8BC 30EC0007 */ andi $t4, $a3, 7 -/* 0CC4C0 800CB8C0 00EC6823 */ subu $t5, $a3, $t4 -/* 0CC4C4 800CB8C4 31F8FFFF */ andi $t8, $t7, 0xffff -/* 0CC4C8 800CB8C8 01201825 */ move $v1, $t1 -/* 0CC4CC 800CB8CC 3C010800 */ lui $at, 0x800 -/* 0CC4D0 800CB8D0 03015825 */ or $t3, $t8, $at -/* 0CC4D4 800CB8D4 25290008 */ addiu $t1, $t1, 8 -/* 0CC4D8 800CB8D8 25B90008 */ addiu $t9, $t5, 8 -/* 0CC4DC 800CB8DC 332EFFFF */ andi $t6, $t9, 0xffff -/* 0CC4E0 800CB8E0 01202025 */ move $a0, $t1 -/* 0CC4E4 800CB8E4 AC6E0004 */ sw $t6, 4($v1) -/* 0CC4E8 800CB8E8 AC6B0000 */ sw $t3, ($v1) -/* 0CC4EC 800CB8EC 0045C023 */ subu $t8, $v0, $a1 -/* 0CC4F0 800CB8F0 3C0F0400 */ lui $t7, 0x400 -/* 0CC4F4 800CB8F4 AC8F0000 */ sw $t7, ($a0) -/* 0CC4F8 800CB8F8 AC980004 */ sw $t8, 4($a0) -/* 0CC4FC 800CB8FC 14A00002 */ bnez $a1, .L800CB908 -/* 0CC500 800CB900 25290008 */ addiu $t1, $t1, 8 -/* 0CC504 800CB904 10C0000E */ beqz $a2, .L800CB940 -.L800CB908: -/* 0CC508 800CB908 01055821 */ addu $t3, $t0, $a1 -/* 0CC50C 800CB90C 3C0100FF */ lui $at, (0x00FFFFFF >> 16) # lui $at, 0xff -/* 0CC510 800CB910 3421FFFF */ ori $at, (0x00FFFFFF & 0xFFFF) # ori $at, $at, 0xffff -/* 0CC514 800CB914 01666021 */ addu $t4, $t3, $a2 -/* 0CC518 800CB918 01816824 */ and $t5, $t4, $at -/* 0CC51C 800CB91C 01201025 */ move $v0, $t1 -/* 0CC520 800CB920 3C010A00 */ lui $at, 0xa00 -/* 0CC524 800CB924 00087C00 */ sll $t7, $t0, 0x10 -/* 0CC528 800CB928 3238FFFF */ andi $t8, $s1, 0xffff -/* 0CC52C 800CB92C 01F85825 */ or $t3, $t7, $t8 -/* 0CC530 800CB930 01A1C825 */ or $t9, $t5, $at -/* 0CC534 800CB934 AC590000 */ sw $t9, ($v0) -/* 0CC538 800CB938 AC4B0004 */ sw $t3, 4($v0) -/* 0CC53C 800CB93C 25290008 */ addiu $t1, $t1, 8 -.L800CB940: -/* 0CC540 800CB940 0253082A */ slt $at, $s2, $s3 -/* 0CC544 800CB944 5420FFBA */ bnezl $at, .L800CB830 -/* 0CC548 800CB948 8E020024 */ lw $v0, 0x24($s0) -.L800CB94C: -/* 0CC54C 800CB94C 8E0C0038 */ lw $t4, 0x38($s0) -/* 0CC550 800CB950 8E190044 */ lw $t9, 0x44($s0) -/* 0CC554 800CB954 00137040 */ sll $t6, $s3, 1 -/* 0CC558 800CB958 01936821 */ addu $t5, $t4, $s3 -/* 0CC55C 800CB95C 032E7821 */ addu $t7, $t9, $t6 -/* 0CC560 800CB960 AE0D0038 */ sw $t5, 0x38($s0) -/* 0CC564 800CB964 AE0F0044 */ sw $t7, 0x44($s0) -/* 0CC568 800CB968 1000004E */ b .L800CBAA4 -/* 0CC56C 800CB96C 01201025 */ move $v0, $t1 -/* 0CC570 800CB970 8E020028 */ lw $v0, 0x28($s0) -.L800CB974: -/* 0CC574 800CB974 8E040044 */ lw $a0, 0x44($s0) -/* 0CC578 800CB978 00138840 */ sll $s1, $s3, 1 -/* 0CC57C 800CB97C 8C580000 */ lw $t8, ($v0) -/* 0CC580 800CB980 8C4C0004 */ lw $t4, 4($v0) -/* 0CC584 800CB984 00911821 */ addu $v1, $a0, $s1 -/* 0CC588 800CB988 00785823 */ subu $t3, $v1, $t8 -/* 0CC58C 800CB98C 016C9023 */ subu $s2, $t3, $t4 -/* 0CC590 800CB990 06430003 */ bgezl $s2, .L800CB9A0 -/* 0CC594 800CB994 0232082A */ slt $at, $s1, $s2 -/* 0CC598 800CB998 00009025 */ move $s2, $zero -/* 0CC59C 800CB99C 0232082A */ slt $at, $s1, $s2 -.L800CB9A0: -/* 0CC5A0 800CB9A0 50200003 */ beql $at, $zero, .L800CB9B0 -/* 0CC5A4 800CB9A4 0251082A */ slt $at, $s2, $s1 -/* 0CC5A8 800CB9A8 02209025 */ move $s2, $s1 -/* 0CC5AC 800CB9AC 0251082A */ slt $at, $s2, $s1 -.L800CB9B0: -/* 0CC5B0 800CB9B0 5020002C */ beql $at, $zero, .L800CBA64 -/* 0CC5B4 800CB9B4 AE030044 */ sw $v1, 0x44($s0) -/* 0CC5B8 800CB9B8 1A60001F */ blez $s3, .L800CBA38 -/* 0CC5BC 800CB9BC 00003025 */ move $a2, $zero -/* 0CC5C0 800CB9C0 8E060034 */ lw $a2, 0x34($s0) -/* 0CC5C4 800CB9C4 02322823 */ subu $a1, $s1, $s2 -/* 0CC5C8 800CB9C8 AFA50048 */ sw $a1, 0x48($sp) -/* 0CC5CC 800CB9CC AFAA0054 */ sw $t2, 0x54($sp) -/* 0CC5D0 800CB9D0 8E190030 */ lw $t9, 0x30($s0) -/* 0CC5D4 800CB9D4 0320F809 */ jalr $t9 -/* 0CC5D8 800CB9D8 00000000 */ nop -/* 0CC5DC 800CB9DC 8FAA0054 */ lw $t2, 0x54($sp) -/* 0CC5E0 800CB9E0 8FA70048 */ lw $a3, 0x48($sp) -/* 0CC5E4 800CB9E4 30460007 */ andi $a2, $v0, 7 -/* 0CC5E8 800CB9E8 854D0000 */ lh $t5, ($t2) -/* 0CC5EC 800CB9EC 8FA80060 */ lw $t0, 0x60($sp) -/* 0CC5F0 800CB9F0 00E63821 */ addu $a3, $a3, $a2 -/* 0CC5F4 800CB9F4 30F80007 */ andi $t8, $a3, 7 -/* 0CC5F8 800CB9F8 00F85823 */ subu $t3, $a3, $t8 -/* 0CC5FC 800CB9FC 3C010800 */ lui $at, 0x800 -/* 0CC600 800CBA00 31AEFFFF */ andi $t6, $t5, 0xffff -/* 0CC604 800CBA04 01C17825 */ or $t7, $t6, $at -/* 0CC608 800CBA08 256C0008 */ addiu $t4, $t3, 8 -/* 0CC60C 800CBA0C 25090008 */ addiu $t1, $t0, 8 -/* 0CC610 800CBA10 3199FFFF */ andi $t9, $t4, 0xffff -/* 0CC614 800CBA14 01202025 */ move $a0, $t1 -/* 0CC618 800CBA18 00467023 */ subu $t6, $v0, $a2 -/* 0CC61C 800CBA1C 3C0D0400 */ lui $t5, 0x400 -/* 0CC620 800CBA20 AD190004 */ sw $t9, 4($t0) -/* 0CC624 800CBA24 AD0F0000 */ sw $t7, ($t0) -/* 0CC628 800CBA28 AC8E0004 */ sw $t6, 4($a0) -/* 0CC62C 800CBA2C AC8D0000 */ sw $t5, ($a0) -/* 0CC630 800CBA30 10000001 */ b .L800CBA38 -/* 0CC634 800CBA34 25290008 */ addiu $t1, $t1, 8 -.L800CBA38: -/* 0CC638 800CBA38 854F0000 */ lh $t7, ($t2) -/* 0CC63C 800CBA3C 01E6C021 */ addu $t8, $t7, $a2 -/* 0CC640 800CBA40 A5580000 */ sh $t8, ($t2) -/* 0CC644 800CBA44 8E0B0038 */ lw $t3, 0x38($s0) -/* 0CC648 800CBA48 8E190044 */ lw $t9, 0x44($s0) -/* 0CC64C 800CBA4C 01736021 */ addu $t4, $t3, $s3 -/* 0CC650 800CBA50 03316821 */ addu $t5, $t9, $s1 -/* 0CC654 800CBA54 AE0C0038 */ sw $t4, 0x38($s0) -/* 0CC658 800CBA58 10000002 */ b .L800CBA64 -/* 0CC65C 800CBA5C AE0D0044 */ sw $t5, 0x44($s0) -/* 0CC660 800CBA60 AE030044 */ sw $v1, 0x44($s0) -.L800CBA64: -/* 0CC664 800CBA64 1240000E */ beqz $s2, .L800CBAA0 -/* 0CC668 800CBA68 02321823 */ subu $v1, $s1, $s2 -/* 0CC66C 800CBA6C 04610002 */ bgez $v1, .L800CBA78 -/* 0CC670 800CBA70 01201025 */ move $v0, $t1 -/* 0CC674 800CBA74 00001825 */ move $v1, $zero -.L800CBA78: -/* 0CC678 800CBA78 854E0000 */ lh $t6, ($t2) -/* 0CC67C 800CBA7C 3C0100FF */ lui $at, (0x00FFFFFF >> 16) # lui $at, 0xff -/* 0CC680 800CBA80 3421FFFF */ ori $at, (0x00FFFFFF & 0xFFFF) # ori $at, $at, 0xffff -/* 0CC684 800CBA84 01C37821 */ addu $t7, $t6, $v1 -/* 0CC688 800CBA88 01E1C024 */ and $t8, $t7, $at -/* 0CC68C 800CBA8C 3C010200 */ lui $at, 0x200 -/* 0CC690 800CBA90 03015825 */ or $t3, $t8, $at -/* 0CC694 800CBA94 AC4B0000 */ sw $t3, ($v0) -/* 0CC698 800CBA98 AC520004 */ sw $s2, 4($v0) -/* 0CC69C 800CBA9C 25290008 */ addiu $t1, $t1, 8 -.L800CBAA0: -/* 0CC6A0 800CBAA0 01201025 */ move $v0, $t1 -.L800CBAA4: -/* 0CC6A4 800CBAA4 8FBF0024 */ lw $ra, 0x24($sp) -/* 0CC6A8 800CBAA8 8FB00014 */ lw $s0, 0x14($sp) -/* 0CC6AC 800CBAAC 8FB10018 */ lw $s1, 0x18($sp) -/* 0CC6B0 800CBAB0 8FB2001C */ lw $s2, 0x1c($sp) -/* 0CC6B4 800CBAB4 8FB30020 */ lw $s3, 0x20($sp) -/* 0CC6B8 800CBAB8 03E00008 */ jr $ra -/* 0CC6BC 800CBABC 27BD0050 */ addiu $sp, $sp, 0x50 - -glabel func_800CBAC0 -/* 0CC6C0 800CBAC0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0CC6C4 800CBAC4 AFB3002C */ sw $s3, 0x2c($sp) -/* 0CC6C8 800CBAC8 AFB50028 */ sw $s5, 0x28($sp) -/* 0CC6CC 800CBACC 00137400 */ sll $t6, $s3, 0x10 -/* 0CC6D0 800CBAD0 0015C400 */ sll $t8, $s5, 0x10 -/* 0CC6D4 800CBAD4 0018AC03 */ sra $s5, $t8, 0x10 -/* 0CC6D8 800CBAD8 000E9C03 */ sra $s3, $t6, 0x10 -/* 0CC6DC 800CBADC 1A20001A */ blez $s1, .L800CBB48 -/* 0CC6E0 800CBAE0 AFBF0014 */ sw $ra, 0x14($sp) -/* 0CC6E4 800CBAE4 8E590030 */ lw $t9, 0x30($s2) -/* 0CC6E8 800CBAE8 8E440044 */ lw $a0, 0x44($s2) -/* 0CC6EC 800CBAEC 02202825 */ move $a1, $s1 -/* 0CC6F0 800CBAF0 0320F809 */ jalr $t9 -/* 0CC6F4 800CBAF4 8E460034 */ lw $a2, 0x34($s2) -/* 0CC6F8 800CBAF8 30460007 */ andi $a2, $v0, 7 -/* 0CC6FC 800CBAFC 02268821 */ addu $s1, $s1, $a2 -/* 0CC700 800CBB00 326EFFFF */ andi $t6, $s3, 0xffff -/* 0CC704 800CBB04 3C010800 */ lui $at, 0x800 -/* 0CC708 800CBB08 01C17825 */ or $t7, $t6, $at -/* 0CC70C 800CBB0C 32380007 */ andi $t8, $s1, 7 -/* 0CC710 800CBB10 02002025 */ move $a0, $s0 -/* 0CC714 800CBB14 0238C823 */ subu $t9, $s1, $t8 -/* 0CC718 800CBB18 272E0008 */ addiu $t6, $t9, 8 -/* 0CC71C 800CBB1C AC8F0000 */ sw $t7, ($a0) -/* 0CC720 800CBB20 26100008 */ addiu $s0, $s0, 8 -/* 0CC724 800CBB24 31CFFFFF */ andi $t7, $t6, 0xffff -/* 0CC728 800CBB28 02002825 */ move $a1, $s0 -/* 0CC72C 800CBB2C AC8F0004 */ sw $t7, 4($a0) -/* 0CC730 800CBB30 0046C823 */ subu $t9, $v0, $a2 -/* 0CC734 800CBB34 3C180400 */ lui $t8, 0x400 -/* 0CC738 800CBB38 ACB80000 */ sw $t8, ($a1) -/* 0CC73C 800CBB3C ACB90004 */ sw $t9, 4($a1) -/* 0CC740 800CBB40 10000002 */ b .L800CBB4C -/* 0CC744 800CBB44 26100008 */ addiu $s0, $s0, 8 -.L800CBB48: -/* 0CC748 800CBB48 00003025 */ move $a2, $zero -.L800CBB4C: -/* 0CC74C 800CBB4C 328E0002 */ andi $t6, $s4, 2 -/* 0CC750 800CBB50 11C00009 */ beqz $t6, .L800CBB78 -/* 0CC754 800CBB54 02001025 */ move $v0, $s0 -/* 0CC758 800CBB58 3C0F0F00 */ lui $t7, 0xf00 -/* 0CC75C 800CBB5C AC4F0000 */ sw $t7, ($v0) -/* 0CC760 800CBB60 8E580018 */ lw $t8, 0x18($s2) -/* 0CC764 800CBB64 3C011FFF */ lui $at, (0x1FFFFFFF >> 16) # lui $at, 0x1fff -/* 0CC768 800CBB68 3421FFFF */ ori $at, (0x1FFFFFFF & 0xFFFF) # ori $at, $at, 0xffff -/* 0CC76C 800CBB6C 0301C824 */ and $t9, $t8, $at -/* 0CC770 800CBB70 AC590004 */ sw $t9, 4($v0) -/* 0CC774 800CBB74 26100008 */ addiu $s0, $s0, 8 -.L800CBB78: -/* 0CC778 800CBB78 02667021 */ addu $t6, $s3, $a2 -/* 0CC77C 800CBB7C 31CFFFFF */ andi $t7, $t6, 0xffff -/* 0CC780 800CBB80 3C010800 */ lui $at, 0x800 -/* 0CC784 800CBB84 01E1C025 */ or $t8, $t7, $at -/* 0CC788 800CBB88 02001825 */ move $v1, $s0 -/* 0CC78C 800CBB8C AC780000 */ sw $t8, ($v1) -/* 0CC790 800CBB90 00167840 */ sll $t7, $s6, 1 -/* 0CC794 800CBB94 31F8FFFF */ andi $t8, $t7, 0xffff -/* 0CC798 800CBB98 00157400 */ sll $t6, $s5, 0x10 -/* 0CC79C 800CBB9C 01D8C825 */ or $t9, $t6, $t8 -/* 0CC7A0 800CBBA0 328F00FF */ andi $t7, $s4, 0xff -/* 0CC7A4 800CBBA4 26100008 */ addiu $s0, $s0, 8 -/* 0CC7A8 800CBBA8 000F7400 */ sll $t6, $t7, 0x10 -/* 0CC7AC 800CBBAC 3C010100 */ lui $at, 0x100 -/* 0CC7B0 800CBBB0 AC790004 */ sw $t9, 4($v1) -/* 0CC7B4 800CBBB4 01C1C025 */ or $t8, $t6, $at -/* 0CC7B8 800CBBB8 02002025 */ move $a0, $s0 -/* 0CC7BC 800CBBBC AC980000 */ sw $t8, ($a0) -/* 0CC7C0 800CBBC0 8E590014 */ lw $t9, 0x14($s2) -/* 0CC7C4 800CBBC4 3C011FFF */ lui $at, (0x1FFFFFFF >> 16) # lui $at, 0x1fff -/* 0CC7C8 800CBBC8 3421FFFF */ ori $at, (0x1FFFFFFF & 0xFFFF) # ori $at, $at, 0xffff -/* 0CC7CC 800CBBCC 03217824 */ and $t7, $t9, $at -/* 0CC7D0 800CBBD0 AC8F0004 */ sw $t7, 4($a0) -/* 0CC7D4 800CBBD4 AE400040 */ sw $zero, 0x40($s2) -/* 0CC7D8 800CBBD8 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CC7DC 800CBBDC 26100008 */ addiu $s0, $s0, 8 -/* 0CC7E0 800CBBE0 02001025 */ move $v0, $s0 -/* 0CC7E4 800CBBE4 03E00008 */ jr $ra -/* 0CC7E8 800CBBE8 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel D_800CBBEC -/* 0CC7EC 800CBBEC 27BDFF50 */ addiu $sp, $sp, -0xb0 -/* 0CC7F0 800CBBF0 AFB70044 */ sw $s7, 0x44($sp) -/* 0CC7F4 800CBBF4 AFA700BC */ sw $a3, 0xbc($sp) -/* 0CC7F8 800CBBF8 00A03825 */ move $a3, $a1 -/* 0CC7FC 800CBBFC 0080B825 */ move $s7, $a0 -/* 0CC800 800CBC00 AFBF004C */ sw $ra, 0x4c($sp) -/* 0CC804 800CBC04 AFBE0048 */ sw $fp, 0x48($sp) -/* 0CC808 800CBC08 AFB60040 */ sw $s6, 0x40($sp) -/* 0CC80C 800CBC0C AFB5003C */ sw $s5, 0x3c($sp) -/* 0CC810 800CBC10 AFB40038 */ sw $s4, 0x38($sp) -/* 0CC814 800CBC14 AFB30034 */ sw $s3, 0x34($sp) -/* 0CC818 800CBC18 AFB20030 */ sw $s2, 0x30($sp) -/* 0CC81C 800CBC1C AFB1002C */ sw $s1, 0x2c($sp) -/* 0CC820 800CBC20 AFB00028 */ sw $s0, 0x28($sp) -/* 0CC824 800CBC24 AFA500B4 */ sw $a1, 0xb4($sp) -/* 0CC828 800CBC28 00C04025 */ move $t0, $a2 -/* 0CC82C 800CBC2C 14C00003 */ bnez $a2, .L800CBC3C -/* 0CC830 800CBC30 00006825 */ move $t5, $zero -/* 0CC834 800CBC34 10000109 */ b .L800CC05C -/* 0CC838 800CBC38 8FA200C0 */ lw $v0, 0xc0($sp) -.L800CBC3C: -/* 0CC83C 800CBC3C 8EEE002C */ lw $t6, 0x2c($s7) -/* 0CC840 800CBC40 3C0100FF */ lui $at, (0x00FFFFFF >> 16) # lui $at, 0xff -/* 0CC844 800CBC44 3421FFFF */ ori $at, (0x00FFFFFF & 0xFFFF) # ori $at, $at, 0xffff -/* 0CC848 800CBC48 8FA500C0 */ lw $a1, 0xc0($sp) -/* 0CC84C 800CBC4C 01C17824 */ and $t7, $t6, $at -/* 0CC850 800CBC50 3C010B00 */ lui $at, 0xb00 -/* 0CC854 800CBC54 01E1C025 */ or $t8, $t7, $at -/* 0CC858 800CBC58 ACB80000 */ sw $t8, ($a1) -/* 0CC85C 800CBC5C 8EF90028 */ lw $t9, 0x28($s7) -/* 0CC860 800CBC60 3C011FFF */ lui $at, (0x1FFFFFFF >> 16) # lui $at, 0x1fff -/* 0CC864 800CBC64 3421FFFF */ ori $at, (0x1FFFFFFF & 0xFFFF) # ori $at, $at, 0xffff -/* 0CC868 800CBC68 8F2E0010 */ lw $t6, 0x10($t9) -/* 0CC86C 800CBC6C 24AA0008 */ addiu $t2, $a1, 8 -/* 0CC870 800CBC70 00003025 */ move $a2, $zero -/* 0CC874 800CBC74 25CF0008 */ addiu $t7, $t6, 8 -/* 0CC878 800CBC78 01E1C024 */ and $t8, $t7, $at -/* 0CC87C 800CBC7C ACB80004 */ sw $t8, 4($a1) -/* 0CC880 800CBC80 8EE30038 */ lw $v1, 0x38($s7) -/* 0CC884 800CBC84 8EE40020 */ lw $a0, 0x20($s7) -/* 0CC888 800CBC88 01002825 */ move $a1, $t0 -/* 0CC88C 800CBC8C 0068C821 */ addu $t9, $v1, $t0 -/* 0CC890 800CBC90 0099482B */ sltu $t1, $a0, $t9 -/* 0CC894 800CBC94 11200004 */ beqz $t1, .L800CBCA8 -/* 0CC898 800CBC98 240F0010 */ li $t7, 16 -/* 0CC89C 800CBC9C 8EE90024 */ lw $t1, 0x24($s7) -/* 0CC8A0 800CBCA0 0009702B */ sltu $t6, $zero, $t1 -/* 0CC8A4 800CBCA4 01C04825 */ move $t1, $t6 -.L800CBCA8: -/* 0CC8A8 800CBCA8 11200003 */ beqz $t1, .L800CBCB8 -/* 0CC8AC 800CBCAC 24010009 */ li $at, 9 -/* 0CC8B0 800CBCB0 10000001 */ b .L800CBCB8 -/* 0CC8B4 800CBCB4 00832823 */ subu $a1, $a0, $v1 -.L800CBCB8: -/* 0CC8B8 800CBCB8 8EE3003C */ lw $v1, 0x3c($s7) -/* 0CC8BC 800CBCBC 01408025 */ move $s0, $t2 -/* 0CC8C0 800CBCC0 02E09025 */ move $s2, $s7 -/* 0CC8C4 800CBCC4 10600003 */ beqz $v1, .L800CBCD4 -/* 0CC8C8 800CBCC8 00009825 */ move $s3, $zero -/* 0CC8CC 800CBCCC 10000001 */ b .L800CBCD4 -/* 0CC8D0 800CBCD0 01E33023 */ subu $a2, $t7, $v1 -.L800CBCD4: -/* 0CC8D4 800CBCD4 00A62023 */ subu $a0, $a1, $a2 -/* 0CC8D8 800CBCD8 04810002 */ bgez $a0, .L800CBCE4 -/* 0CC8DC 800CBCDC 00000000 */ nop -/* 0CC8E0 800CBCE0 00002025 */ move $a0, $zero -.L800CBCE4: -/* 0CC8E4 800CBCE4 11200081 */ beqz $t1, .L800CBEEC -/* 0CC8E8 800CBCE8 249E000F */ addiu $fp, $a0, 0xf -/* 0CC8EC 800CBCEC 249E000F */ addiu $fp, $a0, 0xf -/* 0CC8F0 800CBCF0 001EC103 */ sra $t8, $fp, 4 -/* 0CC8F4 800CBCF4 84F50000 */ lh $s5, ($a3) -/* 0CC8F8 800CBCF8 8EF40040 */ lw $s4, 0x40($s7) -/* 0CC8FC 800CBCFC 001848C0 */ sll $t1, $t8, 3 -/* 0CC900 800CBD00 01384821 */ addu $t1, $t1, $t8 -/* 0CC904 800CBD04 01208825 */ move $s1, $t1 -/* 0CC908 800CBD08 AFA9005C */ sw $t1, 0x5c($sp) -/* 0CC90C 800CBD0C AFA800B8 */ sw $t0, 0xb8($sp) -/* 0CC910 800CBD10 AFA700B4 */ sw $a3, 0xb4($sp) -/* 0CC914 800CBD14 AFA5008C */ sw $a1, 0x8c($sp) -/* 0CC918 800CBD18 0300F025 */ move $fp, $t8 -/* 0CC91C 800CBD1C 0C032EB0 */ jal func_800CBAC0 -/* 0CC920 800CBD20 0080B025 */ move $s6, $a0 -/* 0CC924 800CBD24 8EE3003C */ lw $v1, 0x3c($s7) -/* 0CC928 800CBD28 8FA5008C */ lw $a1, 0x8c($sp) -/* 0CC92C 800CBD2C 8FA700B4 */ lw $a3, 0xb4($sp) -/* 0CC930 800CBD30 8FA800B8 */ lw $t0, 0xb8($sp) -/* 0CC934 800CBD34 8FA9005C */ lw $t1, 0x5c($sp) -/* 0CC938 800CBD38 10600006 */ beqz $v1, .L800CBD54 -/* 0CC93C 800CBD3C 00405025 */ move $t2, $v0 -/* 0CC940 800CBD40 84F90000 */ lh $t9, ($a3) -/* 0CC944 800CBD44 00037040 */ sll $t6, $v1, 1 -/* 0CC948 800CBD48 032E7821 */ addu $t7, $t9, $t6 -/* 0CC94C 800CBD4C 10000004 */ b .L800CBD60 -/* 0CC950 800CBD50 A4EF0000 */ sh $t7, ($a3) -.L800CBD54: -/* 0CC954 800CBD54 84F80000 */ lh $t8, ($a3) -/* 0CC958 800CBD58 27190020 */ addiu $t9, $t8, 0x20 -/* 0CC95C 800CBD5C A4F90000 */ sh $t9, ($a3) -.L800CBD60: -/* 0CC960 800CBD60 8EE2001C */ lw $v0, 0x1c($s7) -/* 0CC964 800CBD64 8EEF0028 */ lw $t7, 0x28($s7) -/* 0CC968 800CBD68 00A8082A */ slt $at, $a1, $t0 -/* 0CC96C 800CBD6C 304E000F */ andi $t6, $v0, 0xf -/* 0CC970 800CBD70 AEEE003C */ sw $t6, 0x3c($s7) -/* 0CC974 800CBD74 8DF80000 */ lw $t8, ($t7) -/* 0CC978 800CBD78 0002C902 */ srl $t9, $v0, 4 -/* 0CC97C 800CBD7C 001970C0 */ sll $t6, $t9, 3 -/* 0CC980 800CBD80 01D97021 */ addu $t6, $t6, $t9 -/* 0CC984 800CBD84 030E7821 */ addu $t7, $t8, $t6 -/* 0CC988 800CBD88 25F90009 */ addiu $t9, $t7, 9 -/* 0CC98C 800CBD8C AEF90044 */ sw $t9, 0x44($s7) -/* 0CC990 800CBD90 AEE20038 */ sw $v0, 0x38($s7) -/* 0CC994 800CBD94 10200049 */ beqz $at, .L800CBEBC -/* 0CC998 800CBD98 84E60000 */ lh $a2, ($a3) -/* 0CC99C 800CBD9C 00051840 */ sll $v1, $a1, 1 -.L800CBDA0: -/* 0CC9A0 800CBDA0 27D80001 */ addiu $t8, $fp, 1 -/* 0CC9A4 800CBDA4 00187140 */ sll $t6, $t8, 5 -/* 0CC9A8 800CBDA8 8EE20024 */ lw $v0, 0x24($s7) -/* 0CC9AC 800CBDAC 01C63821 */ addu $a3, $t6, $a2 -/* 0CC9B0 800CBDB0 2401FFE0 */ li $at, -32 -/* 0CC9B4 800CBDB4 00E17824 */ and $t7, $a3, $at -/* 0CC9B8 800CBDB8 2401FFFF */ li $at, -1 -/* 0CC9BC 800CBDBC 01054023 */ subu $t0, $t0, $a1 -/* 0CC9C0 800CBDC0 01E03825 */ move $a3, $t7 -/* 0CC9C4 800CBDC4 10410004 */ beq $v0, $at, .L800CBDD8 -/* 0CC9C8 800CBDC8 00C33021 */ addu $a2, $a2, $v1 -/* 0CC9CC 800CBDCC 10400002 */ beqz $v0, .L800CBDD8 -/* 0CC9D0 800CBDD0 2459FFFF */ addiu $t9, $v0, -1 -/* 0CC9D4 800CBDD4 AEF90024 */ sw $t9, 0x24($s7) -.L800CBDD8: -/* 0CC9D8 800CBDD8 8EF80020 */ lw $t8, 0x20($s7) -/* 0CC9DC 800CBDDC 8EEE001C */ lw $t6, 0x1c($s7) -/* 0CC9E0 800CBDE0 01408025 */ move $s0, $t2 -/* 0CC9E4 800CBDE4 02E09025 */ move $s2, $s7 -/* 0CC9E8 800CBDE8 030E1023 */ subu $v0, $t8, $t6 -/* 0CC9EC 800CBDEC 0102082B */ sltu $at, $t0, $v0 -/* 0CC9F0 800CBDF0 10200003 */ beqz $at, .L800CBE00 -/* 0CC9F4 800CBDF4 0007AC00 */ sll $s5, $a3, 0x10 -/* 0CC9F8 800CBDF8 10000002 */ b .L800CBE04 -/* 0CC9FC 800CBDFC 01002825 */ move $a1, $t0 -.L800CBE00: -/* 0CCA00 800CBE00 00402825 */ move $a1, $v0 -.L800CBE04: -/* 0CCA04 800CBE04 8EEF003C */ lw $t7, 0x3c($s7) -/* 0CCA08 800CBE08 0015C403 */ sra $t8, $s5, 0x10 -/* 0CCA0C 800CBE0C 0300A825 */ move $s5, $t8 -/* 0CCA10 800CBE10 00AF2021 */ addu $a0, $a1, $t7 -/* 0CCA14 800CBE14 2484FFF0 */ addiu $a0, $a0, -0x10 -/* 0CCA18 800CBE18 04810002 */ bgez $a0, .L800CBE24 -/* 0CCA1C 800CBE1C 00009825 */ move $s3, $zero -/* 0CCA20 800CBE20 00002025 */ move $a0, $zero -.L800CBE24: -/* 0CCA24 800CBE24 8EF40040 */ lw $s4, 0x40($s7) -/* 0CCA28 800CBE28 249E000F */ addiu $fp, $a0, 0xf -/* 0CCA2C 800CBE2C 001EC903 */ sra $t9, $fp, 4 -/* 0CCA30 800CBE30 001948C0 */ sll $t1, $t9, 3 -/* 0CCA34 800CBE34 01394821 */ addu $t1, $t1, $t9 -/* 0CCA38 800CBE38 368E0002 */ ori $t6, $s4, 2 -/* 0CCA3C 800CBE3C 01C0A025 */ move $s4, $t6 -/* 0CCA40 800CBE40 01208825 */ move $s1, $t1 -/* 0CCA44 800CBE44 AFA9005C */ sw $t1, 0x5c($sp) -/* 0CCA48 800CBE48 0320F025 */ move $fp, $t9 -/* 0CCA4C 800CBE4C AFA800B8 */ sw $t0, 0xb8($sp) -/* 0CCA50 800CBE50 AFA70088 */ sw $a3, 0x88($sp) -/* 0CCA54 800CBE54 AFA60080 */ sw $a2, 0x80($sp) -/* 0CCA58 800CBE58 AFA5008C */ sw $a1, 0x8c($sp) -/* 0CCA5C 800CBE5C 0C032EB0 */ jal func_800CBAC0 -/* 0CCA60 800CBE60 0080B025 */ move $s6, $a0 -/* 0CCA64 800CBE64 8EEF003C */ lw $t7, 0x3c($s7) -/* 0CCA68 800CBE68 8FA70088 */ lw $a3, 0x88($sp) -/* 0CCA6C 800CBE6C 3C0100FF */ lui $at, (0x00FFFFFF >> 16) # lui $at, 0xff -/* 0CCA70 800CBE70 000FC840 */ sll $t9, $t7, 1 -/* 0CCA74 800CBE74 3421FFFF */ ori $at, (0x00FFFFFF & 0xFFFF) # ori $at, $at, 0xffff -/* 0CCA78 800CBE78 0327C021 */ addu $t8, $t9, $a3 -/* 0CCA7C 800CBE7C 03017024 */ and $t6, $t8, $at -/* 0CCA80 800CBE80 8FA5008C */ lw $a1, 0x8c($sp) -/* 0CCA84 800CBE84 3C010A00 */ lui $at, 0xa00 -/* 0CCA88 800CBE88 8FA60080 */ lw $a2, 0x80($sp) -/* 0CCA8C 800CBE8C 01C17825 */ or $t7, $t6, $at -/* 0CCA90 800CBE90 8FA800B8 */ lw $t0, 0xb8($sp) -/* 0CCA94 800CBE94 8FA9005C */ lw $t1, 0x5c($sp) -/* 0CCA98 800CBE98 00051840 */ sll $v1, $a1, 1 -/* 0CCA9C 800CBE9C 306EFFFF */ andi $t6, $v1, 0xffff -/* 0CCAA0 800CBEA0 AC4F0000 */ sw $t7, ($v0) -/* 0CCAA4 800CBEA4 0006C400 */ sll $t8, $a2, 0x10 -/* 0CCAA8 800CBEA8 030E7825 */ or $t7, $t8, $t6 -/* 0CCAAC 800CBEAC 00A8082A */ slt $at, $a1, $t0 -/* 0CCAB0 800CBEB0 AC4F0004 */ sw $t7, 4($v0) -/* 0CCAB4 800CBEB4 1420FFBA */ bnez $at, .L800CBDA0 -/* 0CCAB8 800CBEB8 244A0008 */ addiu $t2, $v0, 8 -.L800CBEBC: -/* 0CCABC 800CBEBC 8EF9003C */ lw $t9, 0x3c($s7) -/* 0CCAC0 800CBEC0 8EEF0038 */ lw $t7, 0x38($s7) -/* 0CCAC4 800CBEC4 01401025 */ move $v0, $t2 -/* 0CCAC8 800CBEC8 0328C021 */ addu $t8, $t9, $t0 -/* 0CCACC 800CBECC 330E000F */ andi $t6, $t8, 0xf -/* 0CCAD0 800CBED0 8EF80044 */ lw $t8, 0x44($s7) -/* 0CCAD4 800CBED4 AEEE003C */ sw $t6, 0x3c($s7) -/* 0CCAD8 800CBED8 01E8C821 */ addu $t9, $t7, $t0 -/* 0CCADC 800CBEDC 03097021 */ addu $t6, $t8, $t1 -/* 0CCAE0 800CBEE0 AEF90038 */ sw $t9, 0x38($s7) -/* 0CCAE4 800CBEE4 1000005D */ b .L800CC05C -/* 0CCAE8 800CBEE8 AEEE0044 */ sw $t6, 0x44($s7) -.L800CBEEC: -/* 0CCAEC 800CBEEC 8EE20028 */ lw $v0, 0x28($s7) -/* 0CCAF0 800CBEF0 001E7903 */ sra $t7, $fp, 4 -/* 0CCAF4 800CBEF4 8EF90044 */ lw $t9, 0x44($s7) -/* 0CCAF8 800CBEF8 000F48C0 */ sll $t1, $t7, 3 -/* 0CCAFC 800CBEFC 8C580000 */ lw $t8, ($v0) -/* 0CCB00 800CBF00 012F4821 */ addu $t1, $t1, $t7 -/* 0CCB04 800CBF04 01E0F025 */ move $fp, $t7 -/* 0CCB08 800CBF08 8C4F0004 */ lw $t7, 4($v0) -/* 0CCB0C 800CBF0C 03295821 */ addu $t3, $t9, $t1 -/* 0CCB10 800CBF10 01787023 */ subu $t6, $t3, $t8 -/* 0CCB14 800CBF14 01CF1823 */ subu $v1, $t6, $t7 -/* 0CCB18 800CBF18 04610002 */ bgez $v1, .L800CBF24 -/* 0CCB1C 800CBF1C 001E2900 */ sll $a1, $fp, 4 -/* 0CCB20 800CBF20 00001825 */ move $v1, $zero -.L800CBF24: -/* 0CCB24 800CBF24 0061001A */ div $zero, $v1, $at -/* 0CCB28 800CBF28 00001012 */ mflo $v0 -/* 0CCB2C 800CBF2C 00022100 */ sll $a0, $v0, 4 -/* 0CCB30 800CBF30 00A66021 */ addu $t4, $a1, $a2 -/* 0CCB34 800CBF34 0184082A */ slt $at, $t4, $a0 -/* 0CCB38 800CBF38 10200002 */ beqz $at, .L800CBF44 -/* 0CCB3C 800CBF3C 01408025 */ move $s0, $t2 -/* 0CCB40 800CBF40 01802025 */ move $a0, $t4 -.L800CBF44: -/* 0CCB44 800CBF44 3098000F */ andi $t8, $a0, 0xf -/* 0CCB48 800CBF48 00987023 */ subu $t6, $a0, $t8 -/* 0CCB4C 800CBF4C 01C8082A */ slt $at, $t6, $t0 -/* 0CCB50 800CBF50 1020002B */ beqz $at, .L800CC000 -/* 0CCB54 800CBF54 01233023 */ subu $a2, $t1, $v1 -/* 0CCB58 800CBF58 84F50000 */ lh $s5, ($a3) -/* 0CCB5C 800CBF5C 8EF40040 */ lw $s4, 0x40($s7) -/* 0CCB60 800CBF60 240D0001 */ li $t5, 1 -/* 0CCB64 800CBF64 AFAD007C */ sw $t5, 0x7c($sp) -/* 0CCB68 800CBF68 AFAC0050 */ sw $t4, 0x50($sp) -/* 0CCB6C 800CBF6C AFA9005C */ sw $t1, 0x5c($sp) -/* 0CCB70 800CBF70 AFA800B8 */ sw $t0, 0xb8($sp) -/* 0CCB74 800CBF74 AFA700B4 */ sw $a3, 0xb4($sp) -/* 0CCB78 800CBF78 AFA40090 */ sw $a0, 0x90($sp) -/* 0CCB7C 800CBF7C 02E09025 */ move $s2, $s7 -/* 0CCB80 800CBF80 00A4B023 */ subu $s6, $a1, $a0 -/* 0CCB84 800CBF84 00C08825 */ move $s1, $a2 -/* 0CCB88 800CBF88 0C032EB0 */ jal func_800CBAC0 -/* 0CCB8C 800CBF8C 00009825 */ move $s3, $zero -/* 0CCB90 800CBF90 8EE3003C */ lw $v1, 0x3c($s7) -/* 0CCB94 800CBF94 8FA40090 */ lw $a0, 0x90($sp) -/* 0CCB98 800CBF98 8FA700B4 */ lw $a3, 0xb4($sp) -/* 0CCB9C 800CBF9C 8FA800B8 */ lw $t0, 0xb8($sp) -/* 0CCBA0 800CBFA0 8FA9005C */ lw $t1, 0x5c($sp) -/* 0CCBA4 800CBFA4 8FAC0050 */ lw $t4, 0x50($sp) -/* 0CCBA8 800CBFA8 8FAD007C */ lw $t5, 0x7c($sp) -/* 0CCBAC 800CBFAC 10600006 */ beqz $v1, .L800CBFC8 -/* 0CCBB0 800CBFB0 00405025 */ move $t2, $v0 -/* 0CCBB4 800CBFB4 84EF0000 */ lh $t7, ($a3) -/* 0CCBB8 800CBFB8 0003C840 */ sll $t9, $v1, 1 -/* 0CCBBC 800CBFBC 01F9C021 */ addu $t8, $t7, $t9 -/* 0CCBC0 800CBFC0 10000004 */ b .L800CBFD4 -/* 0CCBC4 800CBFC4 A4F80000 */ sh $t8, ($a3) -.L800CBFC8: -/* 0CCBC8 800CBFC8 84EE0000 */ lh $t6, ($a3) -/* 0CCBCC 800CBFCC 25CF0020 */ addiu $t7, $t6, 0x20 -/* 0CCBD0 800CBFD0 A4EF0000 */ sh $t7, ($a3) -.L800CBFD4: -/* 0CCBD4 800CBFD4 8EF9003C */ lw $t9, 0x3c($s7) -/* 0CCBD8 800CBFD8 8EEF0038 */ lw $t7, 0x38($s7) -/* 0CCBDC 800CBFDC 0328C021 */ addu $t8, $t9, $t0 -/* 0CCBE0 800CBFE0 330E000F */ andi $t6, $t8, 0xf -/* 0CCBE4 800CBFE4 8EF80044 */ lw $t8, 0x44($s7) -/* 0CCBE8 800CBFE8 AEEE003C */ sw $t6, 0x3c($s7) -/* 0CCBEC 800CBFEC 01E8C821 */ addu $t9, $t7, $t0 -/* 0CCBF0 800CBFF0 03097021 */ addu $t6, $t8, $t1 -/* 0CCBF4 800CBFF4 AEF90038 */ sw $t9, 0x38($s7) -/* 0CCBF8 800CBFF8 10000003 */ b .L800CC008 -/* 0CCBFC 800CBFFC AEEE0044 */ sw $t6, 0x44($s7) -.L800CC000: -/* 0CCC00 800CC000 AEE0003C */ sw $zero, 0x3c($s7) -/* 0CCC04 800CC004 AEEB0044 */ sw $t3, 0x44($s7) -.L800CC008: -/* 0CCC08 800CC008 10800013 */ beqz $a0, .L800CC058 -/* 0CCC0C 800CC00C 01401025 */ move $v0, $t2 -/* 0CCC10 800CC010 11A00005 */ beqz $t5, .L800CC028 -/* 0CCC14 800CC014 AEE0003C */ sw $zero, 0x3c($s7) -/* 0CCC18 800CC018 01841823 */ subu $v1, $t4, $a0 -/* 0CCC1C 800CC01C 00037840 */ sll $t7, $v1, 1 -/* 0CCC20 800CC020 10000002 */ b .L800CC02C -/* 0CCC24 800CC024 01E01825 */ move $v1, $t7 -.L800CC028: -/* 0CCC28 800CC028 00001825 */ move $v1, $zero -.L800CC02C: -/* 0CCC2C 800CC02C 84F90000 */ lh $t9, ($a3) -/* 0CCC30 800CC030 3C0100FF */ lui $at, (0x00FFFFFF >> 16) # lui $at, 0xff -/* 0CCC34 800CC034 3421FFFF */ ori $at, (0x00FFFFFF & 0xFFFF) # ori $at, $at, 0xffff -/* 0CCC38 800CC038 0323C021 */ addu $t8, $t9, $v1 -/* 0CCC3C 800CC03C 03017024 */ and $t6, $t8, $at -/* 0CCC40 800CC040 3C010200 */ lui $at, 0x200 -/* 0CCC44 800CC044 01C17825 */ or $t7, $t6, $at -/* 0CCC48 800CC048 0004C840 */ sll $t9, $a0, 1 -/* 0CCC4C 800CC04C AC590004 */ sw $t9, 4($v0) -/* 0CCC50 800CC050 AC4F0000 */ sw $t7, ($v0) -/* 0CCC54 800CC054 254A0008 */ addiu $t2, $t2, 8 -.L800CC058: -/* 0CCC58 800CC058 01401025 */ move $v0, $t2 -.L800CC05C: -/* 0CCC5C 800CC05C 8FBF004C */ lw $ra, 0x4c($sp) -/* 0CCC60 800CC060 8FB00028 */ lw $s0, 0x28($sp) -/* 0CCC64 800CC064 8FB1002C */ lw $s1, 0x2c($sp) -/* 0CCC68 800CC068 8FB20030 */ lw $s2, 0x30($sp) -/* 0CCC6C 800CC06C 8FB30034 */ lw $s3, 0x34($sp) -/* 0CCC70 800CC070 8FB40038 */ lw $s4, 0x38($sp) -/* 0CCC74 800CC074 8FB5003C */ lw $s5, 0x3c($sp) -/* 0CCC78 800CC078 8FB60040 */ lw $s6, 0x40($sp) -/* 0CCC7C 800CC07C 8FB70044 */ lw $s7, 0x44($sp) -/* 0CCC80 800CC080 8FBE0048 */ lw $fp, 0x48($sp) -/* 0CCC84 800CC084 03E00008 */ jr $ra -/* 0CCC88 800CC088 27BD00B0 */ addiu $sp, $sp, 0xb0 - -/* 0CCC8C 800CC08C 00000000 */ nop -glabel D_800CC090 -/* 0CCC90 800CC090 24AEFFFF */ addiu $t6, $a1, -1 -/* 0CCC94 800CC094 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0CCC98 800CC098 2DC10009 */ sltiu $at, $t6, 9 -/* 0CCC9C 800CC09C AFBF0014 */ sw $ra, 0x14($sp) -/* 0CCCA0 800CC0A0 1020002B */ beqz $at, .L800CC150 -/* 0CCCA4 800CC0A4 00803825 */ move $a3, $a0 -/* 0CCCA8 800CC0A8 000E7080 */ sll $t6, $t6, 2 -/* 0CCCAC 800CC0AC 3C01800F */ lui $at, 0x800f -/* 0CCCB0 800CC0B0 002E0821 */ addu $at, $at, $t6 -/* 0CCCB4 800CC0B4 8C2E9600 */ lw $t6, -0x6a00($at) -/* 0CCCB8 800CC0B8 01C00008 */ jr $t6 -/* 0CCCBC 800CC0BC 00000000 */ nop -/* 0CCCC0 800CC0C0 10000029 */ b .L800CC168 -/* 0CCCC4 800CC0C4 ACE60000 */ sw $a2, ($a3) -/* 0CCCC8 800CC0C8 8CE40000 */ lw $a0, ($a3) -/* 0CCCCC 800CC0CC 44802000 */ mtc1 $zero, $f4 -/* 0CCCD0 800CC0D0 240F0001 */ li $t7, 1 -/* 0CCCD4 800CC0D4 ACEF0024 */ sw $t7, 0x24($a3) -/* 0CCCD8 800CC0D8 ACE00030 */ sw $zero, 0x30($a3) -/* 0CCCDC 800CC0DC ACE0001C */ sw $zero, 0x1c($a3) -/* 0CCCE0 800CC0E0 10800021 */ beqz $a0, .L800CC168 -/* 0CCCE4 800CC0E4 E4E40020 */ swc1 $f4, 0x20($a3) -/* 0CCCE8 800CC0E8 8C990008 */ lw $t9, 8($a0) -/* 0CCCEC 800CC0EC 24050004 */ li $a1, 4 -/* 0CCCF0 800CC0F0 00003025 */ move $a2, $zero -/* 0CCCF4 800CC0F4 0320F809 */ jalr $t9 -/* 0CCCF8 800CC0F8 00000000 */ nop -/* 0CCCFC 800CC0FC 1000001B */ b .L800CC16C -/* 0CCD00 800CC100 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CCD04 800CC104 8CE40000 */ lw $a0, ($a3) -/* 0CCD08 800CC108 24180001 */ li $t8, 1 -/* 0CCD0C 800CC10C ACF80030 */ sw $t8, 0x30($a3) -/* 0CCD10 800CC110 50800016 */ beql $a0, $zero, .L800CC16C -/* 0CCD14 800CC114 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CCD18 800CC118 8C990008 */ lw $t9, 8($a0) -/* 0CCD1C 800CC11C 24050009 */ li $a1, 9 -/* 0CCD20 800CC120 00003025 */ move $a2, $zero -/* 0CCD24 800CC124 0320F809 */ jalr $t9 -/* 0CCD28 800CC128 00000000 */ nop -/* 0CCD2C 800CC12C 1000000F */ b .L800CC16C -/* 0CCD30 800CC130 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CCD34 800CC134 AFA6001C */ sw $a2, 0x1c($sp) -/* 0CCD38 800CC138 C7A6001C */ lwc1 $f6, 0x1c($sp) -/* 0CCD3C 800CC13C 1000000A */ b .L800CC168 -/* 0CCD40 800CC140 E4E60018 */ swc1 $f6, 0x18($a3) -/* 0CCD44 800CC144 24080001 */ li $t0, 1 -/* 0CCD48 800CC148 10000007 */ b .L800CC168 -/* 0CCD4C 800CC14C ACE8001C */ sw $t0, 0x1c($a3) -.L800CC150: -/* 0CCD50 800CC150 8CE40000 */ lw $a0, ($a3) -/* 0CCD54 800CC154 50800005 */ beql $a0, $zero, .L800CC16C -/* 0CCD58 800CC158 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CCD5C 800CC15C 8C990008 */ lw $t9, 8($a0) -/* 0CCD60 800CC160 0320F809 */ jalr $t9 -/* 0CCD64 800CC164 00000000 */ nop -.L800CC168: -/* 0CCD68 800CC168 8FBF0014 */ lw $ra, 0x14($sp) -.L800CC16C: -/* 0CCD6C 800CC16C 27BD0028 */ addiu $sp, $sp, 0x28 -/* 0CCD70 800CC170 00001025 */ move $v0, $zero -/* 0CCD74 800CC174 03E00008 */ jr $ra -/* 0CCD78 800CC178 00000000 */ nop - -glabel D_800CC17C -/* 0CCD7C 800CC17C 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 0CCD80 800CC180 AFBF001C */ sw $ra, 0x1c($sp) -/* 0CCD84 800CC184 AFA50054 */ sw $a1, 0x54($sp) -/* 0CCD88 800CC188 8C890000 */ lw $t1, ($a0) -/* 0CCD8C 800CC18C 240E0140 */ li $t6, 320 -/* 0CCD90 800CC190 00804025 */ move $t0, $a0 -/* 0CCD94 800CC194 00C05025 */ move $t2, $a2 -/* 0CCD98 800CC198 14C00003 */ bnez $a2, .L800CC1A8 -/* 0CCD9C 800CC19C A7AE0046 */ sh $t6, 0x46($sp) -/* 0CCDA0 800CC1A0 10000074 */ b .L800CC374 -/* 0CCDA4 800CC1A4 8FA20060 */ lw $v0, 0x60($sp) -.L800CC1A8: -/* 0CCDA8 800CC1A8 8D0F001C */ lw $t7, 0x1c($t0) -/* 0CCDAC 800CC1AC 8FB80060 */ lw $t8, 0x60($sp) -/* 0CCDB0 800CC1B0 51E0001A */ beql $t7, $zero, .L800CC21C -/* 0CCDB4 800CC1B4 C5020018 */ lwc1 $f2, 0x18($t0) -/* 0CCDB8 800CC1B8 AFB80010 */ sw $t8, 0x10($sp) -/* 0CCDBC 800CC1BC AFAA0058 */ sw $t2, 0x58($sp) -/* 0CCDC0 800CC1C0 8D390004 */ lw $t9, 4($t1) -/* 0CCDC4 800CC1C4 01202025 */ move $a0, $t1 -/* 0CCDC8 800CC1C8 27A50046 */ addiu $a1, $sp, 0x46 -/* 0CCDCC 800CC1CC 0320F809 */ jalr $t9 -/* 0CCDD0 800CC1D0 01403025 */ move $a2, $t2 -/* 0CCDD4 800CC1D4 87AB0046 */ lh $t3, 0x46($sp) -/* 0CCDD8 800CC1D8 3C0100FF */ lui $at, (0x00FFFFFF >> 16) # lui $at, 0xff -/* 0CCDDC 800CC1DC 3421FFFF */ ori $at, (0x00FFFFFF & 0xFFFF) # ori $at, $at, 0xffff -/* 0CCDE0 800CC1E0 01616024 */ and $t4, $t3, $at -/* 0CCDE4 800CC1E4 3C010A00 */ lui $at, 0xa00 -/* 0CCDE8 800CC1E8 8FAA0058 */ lw $t2, 0x58($sp) -/* 0CCDEC 800CC1EC 01816825 */ or $t5, $t4, $at -/* 0CCDF0 800CC1F0 AC4D0000 */ sw $t5, ($v0) -/* 0CCDF4 800CC1F4 8FAE0054 */ lw $t6, 0x54($sp) -/* 0CCDF8 800CC1F8 000A5840 */ sll $t3, $t2, 1 -/* 0CCDFC 800CC1FC 316CFFFF */ andi $t4, $t3, 0xffff -/* 0CCE00 800CC200 85D80000 */ lh $t8, ($t6) -/* 0CCE04 800CC204 24450008 */ addiu $a1, $v0, 8 -/* 0CCE08 800CC208 0018CC00 */ sll $t9, $t8, 0x10 -/* 0CCE0C 800CC20C 032C6825 */ or $t5, $t9, $t4 -/* 0CCE10 800CC210 10000057 */ b .L800CC370 -/* 0CCE14 800CC214 AC4D0004 */ sw $t5, 4($v0) -/* 0CCE18 800CC218 C5020018 */ lwc1 $f2, 0x18($t0) -.L800CC21C: -/* 0CCE1C 800CC21C 3C01800F */ lui $at, 0x800f -/* 0CCE20 800CC220 D4249628 */ ldc1 $f4, -0x69d8($at) -/* 0CCE24 800CC224 460011A1 */ cvt.d.s $f6, $f2 -/* 0CCE28 800CC228 3C01800F */ lui $at, 0x800f -/* 0CCE2C 800CC22C 4626203C */ c.lt.d $f4, $f6 -/* 0CCE30 800CC230 00000000 */ nop -/* 0CCE34 800CC234 45020005 */ bc1fl .L800CC24C -/* 0CCE38 800CC238 3C014700 */ lui $at, %hi(D_46FF9630) # $at, 0x4700 -/* 0CCE3C 800CC23C C4289630 */ lwc1 $f8, %lo(D_46FF9630)($at) -/* 0CCE40 800CC240 E5080018 */ swc1 $f8, 0x18($t0) -/* 0CCE44 800CC244 C5020018 */ lwc1 $f2, 0x18($t0) -/* 0CCE48 800CC248 3C014700 */ li $at, 0x47000000 # 32768.000000 -.L800CC24C: -/* 0CCE4C 800CC24C 44816000 */ mtc1 $at, $f12 -/* 0CCE50 800CC250 01202025 */ move $a0, $t1 -/* 0CCE54 800CC254 27A50046 */ addiu $a1, $sp, 0x46 -/* 0CCE58 800CC258 460C1282 */ mul.s $f10, $f2, $f12 -/* 0CCE5C 800CC25C 4600540D */ trunc.w.s $f16, $f10 -/* 0CCE60 800CC260 440F8000 */ mfc1 $t7, $f16 -/* 0CCE64 800CC264 448A8000 */ mtc1 $t2, $f16 -/* 0CCE68 800CC268 448F9000 */ mtc1 $t7, $f18 -/* 0CCE6C 800CC26C 00000000 */ nop -/* 0CCE70 800CC270 46809120 */ cvt.s.w $f4, $f18 -/* 0CCE74 800CC274 468084A0 */ cvt.s.w $f18, $f16 -/* 0CCE78 800CC278 E5040018 */ swc1 $f4, 0x18($t0) -/* 0CCE7C 800CC27C C5060018 */ lwc1 $f6, 0x18($t0) -/* 0CCE80 800CC280 460C3203 */ div.s $f8, $f6, $f12 -/* 0CCE84 800CC284 C5060020 */ lwc1 $f6, 0x20($t0) -/* 0CCE88 800CC288 E5080018 */ swc1 $f8, 0x18($t0) -/* 0CCE8C 800CC28C C50A0018 */ lwc1 $f10, 0x18($t0) -/* 0CCE90 800CC290 46125102 */ mul.s $f4, $f10, $f18 -/* 0CCE94 800CC294 46043000 */ add.s $f0, $f6, $f4 -/* 0CCE98 800CC298 4600020D */ trunc.w.s $f8, $f0 -/* 0CCE9C 800CC29C 44064000 */ mfc1 $a2, $f8 -/* 0CCEA0 800CC2A0 00000000 */ nop -/* 0CCEA4 800CC2A4 44868000 */ mtc1 $a2, $f16 -/* 0CCEA8 800CC2A8 00000000 */ nop -/* 0CCEAC 800CC2AC 468082A0 */ cvt.s.w $f10, $f16 -/* 0CCEB0 800CC2B0 460A0481 */ sub.s $f18, $f0, $f10 -/* 0CCEB4 800CC2B4 E5120020 */ swc1 $f18, 0x20($t0) -/* 0CCEB8 800CC2B8 8FAB0060 */ lw $t3, 0x60($sp) -/* 0CCEBC 800CC2BC AFAA0058 */ sw $t2, 0x58($sp) -/* 0CCEC0 800CC2C0 AFA80050 */ sw $t0, 0x50($sp) -/* 0CCEC4 800CC2C4 AFAB0010 */ sw $t3, 0x10($sp) -/* 0CCEC8 800CC2C8 8D390004 */ lw $t9, 4($t1) -/* 0CCECC 800CC2CC 0320F809 */ jalr $t9 -/* 0CCED0 800CC2D0 00000000 */ nop -/* 0CCED4 800CC2D4 8FA80050 */ lw $t0, 0x50($sp) -/* 0CCED8 800CC2D8 87AD0046 */ lh $t5, 0x46($sp) -/* 0CCEDC 800CC2DC 3C014700 */ li $at, 0x47000000 # 32768.000000 -/* 0CCEE0 800CC2E0 44812000 */ mtc1 $at, $f4 -/* 0CCEE4 800CC2E4 C5060018 */ lwc1 $f6, 0x18($t0) -/* 0CCEE8 800CC2E8 3C010800 */ lui $at, 0x800 -/* 0CCEEC 800CC2EC 31AEFFFF */ andi $t6, $t5, 0xffff -/* 0CCEF0 800CC2F0 8FAA0058 */ lw $t2, 0x58($sp) -/* 0CCEF4 800CC2F4 01C17825 */ or $t7, $t6, $at -/* 0CCEF8 800CC2F8 AC4F0000 */ sw $t7, ($v0) -/* 0CCEFC 800CC2FC 8FB80054 */ lw $t8, 0x54($sp) -/* 0CCF00 800CC300 46043202 */ mul.s $f8, $f6, $f4 -/* 0CCF04 800CC304 000A6840 */ sll $t5, $t2, 1 -/* 0CCF08 800CC308 87190000 */ lh $t9, ($t8) -/* 0CCF0C 800CC30C 31AEFFFF */ andi $t6, $t5, 0xffff -/* 0CCF10 800CC310 24580008 */ addiu $t8, $v0, 8 -/* 0CCF14 800CC314 00196400 */ sll $t4, $t9, 0x10 -/* 0CCF18 800CC318 018E7825 */ or $t7, $t4, $t6 -/* 0CCF1C 800CC31C 4600440D */ trunc.w.s $f16, $f8 -/* 0CCF20 800CC320 AC4F0004 */ sw $t7, 4($v0) -/* 0CCF24 800CC324 AFB80028 */ sw $t8, 0x28($sp) -/* 0CCF28 800CC328 8D0B0024 */ lw $t3, 0x24($t0) -/* 0CCF2C 800CC32C 44038000 */ mfc1 $v1, $f16 -/* 0CCF30 800CC330 3C010500 */ lui $at, 0x500 -/* 0CCF34 800CC334 317900FF */ andi $t9, $t3, 0xff -/* 0CCF38 800CC338 00196C00 */ sll $t5, $t9, 0x10 -/* 0CCF3C 800CC33C 01A16025 */ or $t4, $t5, $at -/* 0CCF40 800CC340 306EFFFF */ andi $t6, $v1, 0xffff -/* 0CCF44 800CC344 018E7825 */ or $t7, $t4, $t6 -/* 0CCF48 800CC348 AC4F0008 */ sw $t7, 8($v0) -/* 0CCF4C 800CC34C 24450010 */ addiu $a1, $v0, 0x10 -/* 0CCF50 800CC350 8D040014 */ lw $a0, 0x14($t0) -/* 0CCF54 800CC354 0C03233C */ jal func_800C8CF0 -/* 0CCF58 800CC358 AFA50048 */ sw $a1, 0x48($sp) -/* 0CCF5C 800CC35C 8FB80028 */ lw $t8, 0x28($sp) -/* 0CCF60 800CC360 8FA80050 */ lw $t0, 0x50($sp) -/* 0CCF64 800CC364 8FA50048 */ lw $a1, 0x48($sp) -/* 0CCF68 800CC368 AF020004 */ sw $v0, 4($t8) -/* 0CCF6C 800CC36C AD000024 */ sw $zero, 0x24($t0) -.L800CC370: -/* 0CCF70 800CC370 00A01025 */ move $v0, $a1 -.L800CC374: -/* 0CCF74 800CC374 8FBF001C */ lw $ra, 0x1c($sp) -/* 0CCF78 800CC378 27BD0050 */ addiu $sp, $sp, 0x50 -/* 0CCF7C 800CC37C 03E00008 */ jr $ra -/* 0CCF80 800CC380 00000000 */ nop - -/* 0CCF84 800CC384 00000000 */ nop -/* 0CCF88 800CC388 00000000 */ nop -/* 0CCF8C 800CC38C 00000000 */ nop diff --git a/asm/unknown_0CCF90.s b/asm/unknown_0CCF90.s deleted file mode 100755 index f6df4b59..00000000 --- a/asm/unknown_0CCF90.s +++ /dev/null @@ -1,570 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel D_800CC390 -/* 0CCF90 800CC390 24010002 */ li $at, 2 -/* 0CCF94 800CC394 14A10008 */ bne $a1, $at, .L800CC3B8 -/* 0CCF98 800CC398 8C82001C */ lw $v0, 0x1c($a0) -/* 0CCF9C 800CC39C 8C8E0014 */ lw $t6, 0x14($a0) -/* 0CCFA0 800CC3A0 000E7880 */ sll $t7, $t6, 2 -/* 0CCFA4 800CC3A4 004FC021 */ addu $t8, $v0, $t7 -/* 0CCFA8 800CC3A8 AF060000 */ sw $a2, ($t8) -/* 0CCFAC 800CC3AC 8C990014 */ lw $t9, 0x14($a0) -/* 0CCFB0 800CC3B0 27280001 */ addiu $t0, $t9, 1 -/* 0CCFB4 800CC3B4 AC880014 */ sw $t0, 0x14($a0) -.L800CC3B8: -/* 0CCFB8 800CC3B8 03E00008 */ jr $ra -/* 0CCFBC 800CC3BC 00001025 */ move $v0, $zero - -glabel D_800CC3C0 -/* 0CCFC0 800CC3C0 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 0CCFC4 800CC3C4 8FA80058 */ lw $t0, 0x58($sp) -/* 0CCFC8 800CC3C8 AFBF0044 */ sw $ra, 0x44($sp) -/* 0CCFCC 800CC3CC AFBE0040 */ sw $fp, 0x40($sp) -/* 0CCFD0 800CC3D0 AFB7003C */ sw $s7, 0x3c($sp) -/* 0CCFD4 800CC3D4 AFB60038 */ sw $s6, 0x38($sp) -/* 0CCFD8 800CC3D8 AFB50034 */ sw $s5, 0x34($sp) -/* 0CCFDC 800CC3DC AFB40030 */ sw $s4, 0x30($sp) -/* 0CCFE0 800CC3E0 AFB3002C */ sw $s3, 0x2c($sp) -/* 0CCFE4 800CC3E4 AFB20028 */ sw $s2, 0x28($sp) -/* 0CCFE8 800CC3E8 AFB10024 */ sw $s1, 0x24($sp) -/* 0CCFEC 800CC3EC AFB00020 */ sw $s0, 0x20($sp) -/* 0CCFF0 800CC3F0 8C83001C */ lw $v1, 0x1c($a0) -/* 0CCFF4 800CC3F4 3C0E0200 */ lui $t6, (0x02000440 >> 16) # lui $t6, 0x200 -/* 0CCFF8 800CC3F8 00061040 */ sll $v0, $a2, 1 -/* 0CCFFC 800CC3FC 3C0F0200 */ lui $t7, (0x02000580 >> 16) # lui $t7, 0x200 -/* 0CD000 800CC400 35CE0440 */ ori $t6, (0x02000440 & 0xFFFF) # ori $t6, $t6, 0x440 -/* 0CD004 800CC404 35EF0580 */ ori $t7, (0x02000580 & 0xFFFF) # ori $t7, $t7, 0x580 -/* 0CD008 800CC408 AD0E0000 */ sw $t6, ($t0) -/* 0CD00C 800CC40C AD020004 */ sw $v0, 4($t0) -/* 0CD010 800CC410 AD0F0008 */ sw $t7, 8($t0) -/* 0CD014 800CC414 AD02000C */ sw $v0, 0xc($t0) -/* 0CD018 800CC418 8C980014 */ lw $t8, 0x14($a0) -/* 0CD01C 800CC41C 00C0A825 */ move $s5, $a2 -/* 0CD020 800CC420 00A0B825 */ move $s7, $a1 -/* 0CD024 800CC424 00E0F025 */ move $fp, $a3 -/* 0CD028 800CC428 0080A025 */ move $s4, $a0 -/* 0CD02C 800CC42C 00008025 */ move $s0, $zero -/* 0CD030 800CC430 1B00001E */ blez $t8, .L800CC4AC -/* 0CD034 800CC434 25130010 */ addiu $s3, $t0, 0x10 -/* 0CD038 800CC438 3C120C00 */ lui $s2, (0x0C007FFF >> 16) # lui $s2, 0xc00 -/* 0CD03C 800CC43C 36527FFF */ ori $s2, (0x0C007FFF & 0xFFFF) # ori $s2, $s2, 0x7fff -/* 0CD040 800CC440 00608825 */ move $s1, $v1 -/* 0CD044 800CC444 3056FFFF */ andi $s6, $v0, 0xffff -.L800CC448: -/* 0CD048 800CC448 8E240000 */ lw $a0, ($s1) -/* 0CD04C 800CC44C AFB30010 */ sw $s3, 0x10($sp) -/* 0CD050 800CC450 02E02825 */ move $a1, $s7 -/* 0CD054 800CC454 8C990004 */ lw $t9, 4($a0) -/* 0CD058 800CC458 02A03025 */ move $a2, $s5 -/* 0CD05C 800CC45C 03C03825 */ move $a3, $fp -/* 0CD060 800CC460 0320F809 */ jalr $t9 -/* 0CD064 800CC464 00000000 */ nop -/* 0CD068 800CC468 3C0A06C0 */ lui $t2, (0x06C00440 >> 16) # lui $t2, 0x6c0 -/* 0CD06C 800CC46C 3C0B0800 */ lui $t3, (0x08000580 >> 16) # lui $t3, 0x800 -/* 0CD070 800CC470 3C090800 */ lui $t1, 0x800 -/* 0CD074 800CC474 354A0440 */ ori $t2, (0x06C00440 & 0xFFFF) # ori $t2, $t2, 0x440 -/* 0CD078 800CC478 356B0580 */ ori $t3, (0x08000580 & 0xFFFF) # ori $t3, $t3, 0x580 -/* 0CD07C 800CC47C AC490000 */ sw $t1, ($v0) -/* 0CD080 800CC480 AC560004 */ sw $s6, 4($v0) -/* 0CD084 800CC484 AC4A000C */ sw $t2, 0xc($v0) -/* 0CD088 800CC488 AC520008 */ sw $s2, 8($v0) -/* 0CD08C 800CC48C AC4B0014 */ sw $t3, 0x14($v0) -/* 0CD090 800CC490 AC520010 */ sw $s2, 0x10($v0) -/* 0CD094 800CC494 8E8C0014 */ lw $t4, 0x14($s4) -/* 0CD098 800CC498 26100001 */ addiu $s0, $s0, 1 -/* 0CD09C 800CC49C 26310004 */ addiu $s1, $s1, 4 -/* 0CD0A0 800CC4A0 020C082A */ slt $at, $s0, $t4 -/* 0CD0A4 800CC4A4 1420FFE8 */ bnez $at, .L800CC448 -/* 0CD0A8 800CC4A8 24530018 */ addiu $s3, $v0, 0x18 -.L800CC4AC: -/* 0CD0AC 800CC4AC 8FBF0044 */ lw $ra, 0x44($sp) -/* 0CD0B0 800CC4B0 02601025 */ move $v0, $s3 -/* 0CD0B4 800CC4B4 8FB3002C */ lw $s3, 0x2c($sp) -/* 0CD0B8 800CC4B8 8FB00020 */ lw $s0, 0x20($sp) -/* 0CD0BC 800CC4BC 8FB10024 */ lw $s1, 0x24($sp) -/* 0CD0C0 800CC4C0 8FB20028 */ lw $s2, 0x28($sp) -/* 0CD0C4 800CC4C4 8FB40030 */ lw $s4, 0x30($sp) -/* 0CD0C8 800CC4C8 8FB50034 */ lw $s5, 0x34($sp) -/* 0CD0CC 800CC4CC 8FB60038 */ lw $s6, 0x38($sp) -/* 0CD0D0 800CC4D0 8FB7003C */ lw $s7, 0x3c($sp) -/* 0CD0D4 800CC4D4 8FBE0040 */ lw $fp, 0x40($sp) -/* 0CD0D8 800CC4D8 03E00008 */ jr $ra -/* 0CD0DC 800CC4DC 27BD0048 */ addiu $sp, $sp, 0x48 - -glabel D_800CC4E0 -/* 0CD0E0 800CC4E0 24010001 */ li $at, 1 -/* 0CD0E4 800CC4E4 10A10006 */ beq $a1, $at, .L800CC500 -/* 0CD0E8 800CC4E8 00001025 */ move $v0, $zero -/* 0CD0EC 800CC4EC 24010006 */ li $at, 6 -/* 0CD0F0 800CC4F0 50A10006 */ beql $a1, $at, .L800CC50C -/* 0CD0F4 800CC4F4 AC860014 */ sw $a2, 0x14($a0) -/* 0CD0F8 800CC4F8 03E00008 */ jr $ra -/* 0CD0FC 800CC4FC 00001025 */ move $v0, $zero - -.L800CC500: -/* 0CD100 800CC500 03E00008 */ jr $ra -/* 0CD104 800CC504 AC860000 */ sw $a2, ($a0) - -/* 0CD108 800CC508 AC860014 */ sw $a2, 0x14($a0) -.L800CC50C: -/* 0CD10C 800CC50C 03E00008 */ jr $ra -/* 0CD110 800CC510 00001025 */ move $v0, $zero - -glabel D_800CC514 -/* 0CD114 800CC514 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0CD118 800CC518 AFBF001C */ sw $ra, 0x1c($sp) -/* 0CD11C 800CC51C AFA40020 */ sw $a0, 0x20($sp) -/* 0CD120 800CC520 8C840000 */ lw $a0, ($a0) -/* 0CD124 800CC524 8FAF0030 */ lw $t7, 0x30($sp) -/* 0CD128 800CC528 AFA60028 */ sw $a2, 0x28($sp) -/* 0CD12C 800CC52C AFAF0010 */ sw $t7, 0x10($sp) -/* 0CD130 800CC530 8C990004 */ lw $t9, 4($a0) -/* 0CD134 800CC534 0320F809 */ jalr $t9 -/* 0CD138 800CC538 00000000 */ nop -/* 0CD13C 800CC53C 8FA60028 */ lw $a2, 0x28($sp) -/* 0CD140 800CC540 3C030800 */ lui $v1, 0x800 -/* 0CD144 800CC544 3C0A0440 */ lui $t2, (0x04400580 >> 16) # lui $t2, 0x440 -/* 0CD148 800CC548 0006C040 */ sll $t8, $a2, 1 -/* 0CD14C 800CC54C 00065880 */ sll $t3, $a2, 2 -/* 0CD150 800CC550 3308FFFF */ andi $t0, $t8, 0xffff -/* 0CD154 800CC554 354A0580 */ ori $t2, (0x04400580 & 0xFFFF) # ori $t2, $t2, 0x580 -/* 0CD158 800CC558 3C090D00 */ lui $t1, 0xd00 -/* 0CD15C 800CC55C 316CFFFF */ andi $t4, $t3, 0xffff -/* 0CD160 800CC560 3C0D0600 */ lui $t5, 0x600 -/* 0CD164 800CC564 AC480004 */ sw $t0, 4($v0) -/* 0CD168 800CC568 AC430000 */ sw $v1, ($v0) -/* 0CD16C 800CC56C AC490008 */ sw $t1, 8($v0) -/* 0CD170 800CC570 AC4A000C */ sw $t2, 0xc($v0) -/* 0CD174 800CC574 AC4C0014 */ sw $t4, 0x14($v0) -/* 0CD178 800CC578 AC430010 */ sw $v1, 0x10($v0) -/* 0CD17C 800CC57C AC4D0018 */ sw $t5, 0x18($v0) -/* 0CD180 800CC580 8FAE0020 */ lw $t6, 0x20($sp) -/* 0CD184 800CC584 24420020 */ addiu $v0, $v0, 0x20 -/* 0CD188 800CC588 8DCF0014 */ lw $t7, 0x14($t6) -/* 0CD18C 800CC58C AC4FFFFC */ sw $t7, -4($v0) -/* 0CD190 800CC590 8FBF001C */ lw $ra, 0x1c($sp) -/* 0CD194 800CC594 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0CD198 800CC598 03E00008 */ jr $ra -/* 0CD19C 800CC59C 00000000 */ nop - -glabel func_800CC5A0 -/* 0CD1A0 800CC5A0 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 0CD1A4 800CC5A4 AFBF001C */ sw $ra, 0x1c($sp) -/* 0CD1A8 800CC5A8 240E0001 */ li $t6, 1 -/* 0CD1AC 800CC5AC 3C018013 */ lui $at, %hi(D_8012CCC0) # $at, 0x8013 -/* 0CD1B0 800CC5B0 AFB00018 */ sw $s0, 0x18($sp) -/* 0CD1B4 800CC5B4 AFA00038 */ sw $zero, 0x38($sp) -/* 0CD1B8 800CC5B8 0C03515C */ jal func_800D4570 -/* 0CD1BC 800CC5BC AC2ECCC0 */ sw $t6, %lo(D_8012CCC0)($at) -/* 0CD1C0 800CC5C0 00408025 */ move $s0, $v0 -/* 0CD1C4 800CC5C4 3C012000 */ lui $at, 0x2000 -/* 0CD1C8 800CC5C8 0C035158 */ jal func_800D4560 -/* 0CD1CC 800CC5CC 02012025 */ or $a0, $s0, $at -/* 0CD1D0 800CC5D0 3C040100 */ lui $a0, (0x01000800 >> 16) # lui $a0, 0x100 -/* 0CD1D4 800CC5D4 0C035160 */ jal func_800D4580 -/* 0CD1D8 800CC5D8 34840800 */ ori $a0, (0x01000800 & 0xFFFF) # ori $a0, $a0, 0x800 -/* 0CD1DC 800CC5DC 3C041FC0 */ lui $a0, (0x1FC007FC >> 16) # lui $a0, 0x1fc0 -/* 0CD1E0 800CC5E0 348407FC */ ori $a0, (0x1FC007FC & 0xFFFF) # ori $a0, $a0, 0x7fc -/* 0CD1E4 800CC5E4 0C035164 */ jal func_800D4590 -/* 0CD1E8 800CC5E8 27A5003C */ addiu $a1, $sp, 0x3c -/* 0CD1EC 800CC5EC 10400007 */ beqz $v0, .L800CC60C -/* 0CD1F0 800CC5F0 00000000 */ nop -.L800CC5F4: -/* 0CD1F4 800CC5F4 3C041FC0 */ lui $a0, (0x1FC007FC >> 16) # lui $a0, 0x1fc0 -/* 0CD1F8 800CC5F8 348407FC */ ori $a0, (0x1FC007FC & 0xFFFF) # ori $a0, $a0, 0x7fc -/* 0CD1FC 800CC5FC 0C035164 */ jal func_800D4590 -/* 0CD200 800CC600 27A5003C */ addiu $a1, $sp, 0x3c -/* 0CD204 800CC604 1440FFFB */ bnez $v0, .L800CC5F4 -/* 0CD208 800CC608 00000000 */ nop -.L800CC60C: -/* 0CD20C 800CC60C 8FA5003C */ lw $a1, 0x3c($sp) -/* 0CD210 800CC610 3C041FC0 */ lui $a0, (0x1FC007FC >> 16) # lui $a0, 0x1fc0 -/* 0CD214 800CC614 348407FC */ ori $a0, (0x1FC007FC & 0xFFFF) # ori $a0, $a0, 0x7fc -/* 0CD218 800CC618 34AF0008 */ ori $t7, $a1, 8 -/* 0CD21C 800CC61C 0C035178 */ jal func_800D45E0 -/* 0CD220 800CC620 01E02825 */ move $a1, $t7 -/* 0CD224 800CC624 10400009 */ beqz $v0, .L800CC64C -/* 0CD228 800CC628 00000000 */ nop -.L800CC62C: -/* 0CD22C 800CC62C 8FA5003C */ lw $a1, 0x3c($sp) -/* 0CD230 800CC630 3C041FC0 */ lui $a0, (0x1FC007FC >> 16) # lui $a0, 0x1fc0 -/* 0CD234 800CC634 348407FC */ ori $a0, (0x1FC007FC & 0xFFFF) # ori $a0, $a0, 0x7fc -/* 0CD238 800CC638 34B80008 */ ori $t8, $a1, 8 -/* 0CD23C 800CC63C 0C035178 */ jal func_800D45E0 -/* 0CD240 800CC640 03002825 */ move $a1, $t8 -/* 0CD244 800CC644 1440FFF9 */ bnez $v0, .L800CC62C -/* 0CD248 800CC648 00000000 */ nop -.L800CC64C: -/* 0CD24C 800CC64C 3C08800D */ lui $t0, %hi(D_800D2CB0) # $t0, 0x800d -/* 0CD250 800CC650 25082CB0 */ addiu $t0, %lo(D_800D2CB0) # addiu $t0, $t0, 0x2cb0 -/* 0CD254 800CC654 8D010000 */ lw $at, ($t0) -/* 0CD258 800CC658 3C198000 */ lui $t9, %hi(D_8000000C) # $t9, 0x8000 -/* 0CD25C 800CC65C 3C0D800D */ lui $t5, %hi(D_800D2CB0) # $t5, 0x800d -/* 0CD260 800CC660 AF210000 */ sw $at, ($t9) -/* 0CD264 800CC664 8D0B0004 */ lw $t3, 4($t0) -/* 0CD268 800CC668 25AD2CB0 */ addiu $t5, %lo(D_800D2CB0) # addiu $t5, $t5, 0x2cb0 -/* 0CD26C 800CC66C 3C0C8000 */ lui $t4, %hi(D_8000000C) # $t4, 0x8000 -/* 0CD270 800CC670 AF2B0004 */ sw $t3, %lo(D_80000004)($t9) -/* 0CD274 800CC674 8D010008 */ lw $at, 8($t0) -/* 0CD278 800CC678 358C0080 */ ori $t4, (0x80000080 & 0xFFFF) # ori $t4, $t4, 0x80 -/* 0CD27C 800CC67C 3C09800D */ lui $t1, %hi(D_800D2CB0) # $t1, 0x800d -/* 0CD280 800CC680 AF210008 */ sw $at, %lo(D_80000008)($t9) -/* 0CD284 800CC684 8D0B000C */ lw $t3, 0xc($t0) -/* 0CD288 800CC688 25292CB0 */ addiu $t1, %lo(D_800D2CB0) # addiu $t1, $t1, 0x2cb0 -/* 0CD28C 800CC68C 3C0A8000 */ lui $t2, %hi(D_8000000C) # $t2, 0x8000 -/* 0CD290 800CC690 AF2B000C */ sw $t3, %lo(D_8000000C)($t9) -/* 0CD294 800CC694 8DA10000 */ lw $at, ($t5) -/* 0CD298 800CC698 354A0100 */ ori $t2, (0x80000100 & 0xFFFF) # ori $t2, $t2, 0x100 -/* 0CD29C 800CC69C 3C0E800D */ lui $t6, %hi(D_800D2CB0) # $t6, 0x800d -/* 0CD2A0 800CC6A0 AD810000 */ sw $at, ($t4) -/* 0CD2A4 800CC6A4 8DB80004 */ lw $t8, 4($t5) -/* 0CD2A8 800CC6A8 25CE2CB0 */ addiu $t6, %lo(D_800D2CB0) # addiu $t6, $t6, 0x2cb0 -/* 0CD2AC 800CC6AC 3C0F8000 */ lui $t7, %hi(D_8000000C) # $t7, 0x8000 -/* 0CD2B0 800CC6B0 AD980004 */ sw $t8, %lo(D_80000004)($t4) -/* 0CD2B4 800CC6B4 8DA10008 */ lw $at, 8($t5) -/* 0CD2B8 800CC6B8 35EF0180 */ ori $t7, (0x80000180 & 0xFFFF) # ori $t7, $t7, 0x180 -/* 0CD2BC 800CC6BC 3C048000 */ lui $a0, 0x8000 -/* 0CD2C0 800CC6C0 AD810008 */ sw $at, %lo(D_80000008)($t4) -/* 0CD2C4 800CC6C4 8DB8000C */ lw $t8, 0xc($t5) -/* 0CD2C8 800CC6C8 24050190 */ li $a1, 400 -/* 0CD2CC 800CC6CC AD98000C */ sw $t8, %lo(D_8000000C)($t4) -/* 0CD2D0 800CC6D0 8D210000 */ lw $at, ($t1) -/* 0CD2D4 800CC6D4 AD410000 */ sw $at, ($t2) -/* 0CD2D8 800CC6D8 8D2B0004 */ lw $t3, 4($t1) -/* 0CD2DC 800CC6DC AD4B0004 */ sw $t3, %lo(D_80000004)($t2) -/* 0CD2E0 800CC6E0 8D210008 */ lw $at, 8($t1) -/* 0CD2E4 800CC6E4 AD410008 */ sw $at, %lo(D_80000008)($t2) -/* 0CD2E8 800CC6E8 8D2B000C */ lw $t3, 0xc($t1) -/* 0CD2EC 800CC6EC AD4B000C */ sw $t3, %lo(D_8000000C)($t2) -/* 0CD2F0 800CC6F0 8DC10000 */ lw $at, ($t6) -/* 0CD2F4 800CC6F4 ADE10000 */ sw $at, ($t7) -/* 0CD2F8 800CC6F8 8DD80004 */ lw $t8, 4($t6) -/* 0CD2FC 800CC6FC ADF80004 */ sw $t8, %lo(D_80000004)($t7) -/* 0CD300 800CC700 8DC10008 */ lw $at, 8($t6) -/* 0CD304 800CC704 ADE10008 */ sw $at, %lo(D_80000008)($t7) -/* 0CD308 800CC708 8DD8000C */ lw $t8, 0xc($t6) -/* 0CD30C 800CC70C 0C03518C */ jal func_800D4630 -/* 0CD310 800CC710 ADF8000C */ sw $t8, %lo(D_8000000C)($t7) -/* 0CD314 800CC714 3C048000 */ lui $a0, 0x8000 -/* 0CD318 800CC718 0C0351AC */ jal func_800D46B0 -/* 0CD31C 800CC71C 24050190 */ li $a1, 400 -/* 0CD320 800CC720 0C0351CC */ jal func_800D4730 -/* 0CD324 800CC724 00000000 */ nop -/* 0CD328 800CC728 24040004 */ li $a0, 4 -/* 0CD32C 800CC72C 0C0351E4 */ jal func_800D4790 -/* 0CD330 800CC730 27A50038 */ addiu $a1, $sp, 0x38 -/* 0CD334 800CC734 8FA80038 */ lw $t0, 0x38($sp) -/* 0CD338 800CC738 2401FFF0 */ li $at, -16 -/* 0CD33C 800CC73C 0101C824 */ and $t9, $t0, $at -/* 0CD340 800CC740 13200006 */ beqz $t9, .L800CC75C -/* 0CD344 800CC744 AFB90038 */ sw $t9, 0x38($sp) -/* 0CD348 800CC748 3C01800E */ lui $at, %hi(D_800E38A4) # $at, 0x800e -/* 0CD34C 800CC74C 03205825 */ move $t3, $t9 -/* 0CD350 800CC750 240A0000 */ li $t2, 0 -/* 0CD354 800CC754 AC2A38A0 */ sw $t2, %lo(D_800E38A0)($at) -/* 0CD358 800CC758 AC2B38A4 */ sw $t3, %lo(D_800E38A4)($at) -.L800CC75C: -/* 0CD35C 800CC75C 3C04800E */ lui $a0, %hi(D_800E38A0) # $a0, 0x800e -/* 0CD360 800CC760 3C05800E */ lui $a1, %hi(D_800E38A4) # $a1, 0x800e -/* 0CD364 800CC764 8CA538A4 */ lw $a1, %lo(D_800E38A4)($a1) -/* 0CD368 800CC768 8C8438A0 */ lw $a0, %lo(D_800E38A0)($a0) -/* 0CD36C 800CC76C 24060000 */ li $a2, 0 -/* 0CD370 800CC770 0C033AF2 */ jal __ll_mul -/* 0CD374 800CC774 24070003 */ li $a3, 3 -/* 0CD378 800CC778 AFA20020 */ sw $v0, 0x20($sp) -/* 0CD37C 800CC77C AFA30024 */ sw $v1, 0x24($sp) -/* 0CD380 800CC780 8FA50024 */ lw $a1, 0x24($sp) -/* 0CD384 800CC784 8FA40020 */ lw $a0, 0x20($sp) -/* 0CD388 800CC788 24060000 */ li $a2, 0 -/* 0CD38C 800CC78C 0C033AB2 */ jal __ull_div -/* 0CD390 800CC790 24070004 */ li $a3, 4 -/* 0CD394 800CC794 3C098000 */ lui $t1, %hi(D_8000030C) # $t1, 0x8000 -/* 0CD398 800CC798 8D29030C */ lw $t1, %lo(D_8000030C)($t1) -/* 0CD39C 800CC79C 3C01800E */ lui $at, %hi(D_800E38A4) # $at, 0x800e -/* 0CD3A0 800CC7A0 AC2238A0 */ sw $v0, %lo(D_800E38A0)($at) -/* 0CD3A4 800CC7A4 15200005 */ bnez $t1, .L800CC7BC -/* 0CD3A8 800CC7A8 AC2338A4 */ sw $v1, %lo(D_800E38A4)($at) -/* 0CD3AC 800CC7AC 3C048000 */ lui $a0, %hi(D_8000031C) # $a0, 0x8000 -/* 0CD3B0 800CC7B0 2484031C */ addiu $a0, %lo(D_8000031C) # addiu $a0, $a0, 0x31c -/* 0CD3B4 800CC7B4 0C034138 */ jal func_800D04E0 -/* 0CD3B8 800CC7B8 24050040 */ li $a1, 64 -.L800CC7BC: -/* 0CD3BC 800CC7BC 3C0DA460 */ lui $t5, %hi(D_A4600010) # $t5, 0xa460 -/* 0CD3C0 800CC7C0 8DAC0010 */ lw $t4, %lo(D_A4600010)($t5) -/* 0CD3C4 800CC7C4 318F0003 */ andi $t7, $t4, 3 -/* 0CD3C8 800CC7C8 11E00008 */ beqz $t7, .L800CC7EC -/* 0CD3CC 800CC7CC AFAC0030 */ sw $t4, 0x30($sp) -.L800CC7D0: -/* 0CD3D0 800CC7D0 3C0EA460 */ lui $t6, %hi(D_A4600010) # $t6, 0xa460 -/* 0CD3D4 800CC7D4 8DD80010 */ lw $t8, %lo(D_A4600010)($t6) -/* 0CD3D8 800CC7D8 AFB80030 */ sw $t8, 0x30($sp) -/* 0CD3DC 800CC7DC 8FA80030 */ lw $t0, 0x30($sp) -/* 0CD3E0 800CC7E0 31190003 */ andi $t9, $t0, 3 -/* 0CD3E4 800CC7E4 1720FFFA */ bnez $t9, .L800CC7D0 -/* 0CD3E8 800CC7E8 00000000 */ nop -.L800CC7EC: -/* 0CD3EC 800CC7EC 3C0AA500 */ lui $t2, %hi(D_A5000508) # $t2, 0xa500 -/* 0CD3F0 800CC7F0 8D4B0508 */ lw $t3, %lo(D_A5000508)($t2) -/* 0CD3F4 800CC7F4 3169FFFF */ andi $t1, $t3, 0xffff -/* 0CD3F8 800CC7F8 1520000A */ bnez $t1, .L800CC824 -/* 0CD3FC 800CC7FC AFAB0034 */ sw $t3, 0x34($sp) -/* 0CD400 800CC800 240D0001 */ li $t5, 1 -/* 0CD404 800CC804 3C01800E */ lui $at, %hi(D_800E38B0) # $at, 0x800e -/* 0CD408 800CC808 3C05800C */ lui $a1, %hi(D_800C7340) # $a1, 0x800c -/* 0CD40C 800CC80C AC2D38B0 */ sw $t5, %lo(D_800E38B0)($at) -/* 0CD410 800CC810 24A57340 */ addiu $a1, %lo(D_800C7340) # addiu $a1, $a1, 0x7340 -/* 0CD414 800CC814 0C0351FC */ jal func_800D47F0 -/* 0CD418 800CC818 24040001 */ li $a0, 1 -/* 0CD41C 800CC81C 10000003 */ b .L800CC82C -/* 0CD420 800CC820 00000000 */ nop -.L800CC824: -/* 0CD424 800CC824 3C01800E */ lui $at, %hi(D_800E38B0) # $at, 0x800e -/* 0CD428 800CC828 AC2038B0 */ sw $zero, %lo(D_800E38B0)($at) -.L800CC82C: -/* 0CD42C 800CC82C 8FBF001C */ lw $ra, 0x1c($sp) -/* 0CD430 800CC830 8FB00018 */ lw $s0, 0x18($sp) -/* 0CD434 800CC834 27BD0040 */ addiu $sp, $sp, 0x40 -/* 0CD438 800CC838 03E00008 */ jr $ra -/* 0CD43C 800CC83C 00000000 */ nop - -glabel func_800CC840 -/* 0CD440 800CC840 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0CD444 800CC844 AFBF001C */ sw $ra, 0x1c($sp) -/* 0CD448 800CC848 AFA40028 */ sw $a0, 0x28($sp) -/* 0CD44C 800CC84C AFA5002C */ sw $a1, 0x2c($sp) -/* 0CD450 800CC850 0C034958 */ jal __osDisableInt -/* 0CD454 800CC854 AFB00018 */ sw $s0, 0x18($sp) -/* 0CD458 800CC858 8FAE0028 */ lw $t6, 0x28($sp) -/* 0CD45C 800CC85C 00408025 */ move $s0, $v0 -/* 0CD460 800CC860 15C00004 */ bnez $t6, .L800CC874 -/* 0CD464 800CC864 00000000 */ nop -/* 0CD468 800CC868 3C0F800E */ lui $t7, %hi(D_800E4890) # $t7, 0x800e -/* 0CD46C 800CC86C 8DEF4890 */ lw $t7, %lo(D_800E4890)($t7) -/* 0CD470 800CC870 AFAF0028 */ sw $t7, 0x28($sp) -.L800CC874: -/* 0CD474 800CC874 8FB80028 */ lw $t8, 0x28($sp) -/* 0CD478 800CC878 8FA8002C */ lw $t0, 0x2c($sp) -/* 0CD47C 800CC87C 8F190004 */ lw $t9, 4($t8) -/* 0CD480 800CC880 13280020 */ beq $t9, $t0, .L800CC904 -/* 0CD484 800CC884 00000000 */ nop -/* 0CD488 800CC888 AF080004 */ sw $t0, 4($t8) -/* 0CD48C 800CC88C 3C0A800E */ lui $t2, %hi(D_800E4890) # $t2, 0x800e -/* 0CD490 800CC890 8D4A4890 */ lw $t2, %lo(D_800E4890)($t2) -/* 0CD494 800CC894 8FA90028 */ lw $t1, 0x28($sp) -/* 0CD498 800CC898 112A000C */ beq $t1, $t2, .L800CC8CC -/* 0CD49C 800CC89C 00000000 */ nop -/* 0CD4A0 800CC8A0 952B0010 */ lhu $t3, 0x10($t1) -/* 0CD4A4 800CC8A4 24010001 */ li $at, 1 -/* 0CD4A8 800CC8A8 11610008 */ beq $t3, $at, .L800CC8CC -/* 0CD4AC 800CC8AC 00000000 */ nop -/* 0CD4B0 800CC8B0 8D240008 */ lw $a0, 8($t1) -/* 0CD4B4 800CC8B4 0C034B1C */ jal func_800D2C70 -/* 0CD4B8 800CC8B8 01202825 */ move $a1, $t1 -/* 0CD4BC 800CC8BC 8FAC0028 */ lw $t4, 0x28($sp) -/* 0CD4C0 800CC8C0 8D840008 */ lw $a0, 8($t4) -/* 0CD4C4 800CC8C4 0C034CF3 */ jal func_800D33CC -/* 0CD4C8 800CC8C8 01802825 */ move $a1, $t4 -.L800CC8CC: -/* 0CD4CC 800CC8CC 3C0D800E */ lui $t5, %hi(D_800E4890) # $t5, 0x800e -/* 0CD4D0 800CC8D0 3C0F800E */ lui $t7, %hi(D_800E4888) # $t7, 0x800e -/* 0CD4D4 800CC8D4 8DEF4888 */ lw $t7, %lo(D_800E4888)($t7) -/* 0CD4D8 800CC8D8 8DAD4890 */ lw $t5, %lo(D_800E4890)($t5) -/* 0CD4DC 800CC8DC 8DF90004 */ lw $t9, 4($t7) -/* 0CD4E0 800CC8E0 8DAE0004 */ lw $t6, 4($t5) -/* 0CD4E4 800CC8E4 01D9082A */ slt $at, $t6, $t9 -/* 0CD4E8 800CC8E8 10200006 */ beqz $at, .L800CC904 -/* 0CD4EC 800CC8EC 00000000 */ nop -/* 0CD4F0 800CC8F0 24080002 */ li $t0, 2 -/* 0CD4F4 800CC8F4 3C04800E */ lui $a0, %hi(D_800E4888) # $a0, 0x800e -/* 0CD4F8 800CC8F8 A5A80010 */ sh $t0, 0x10($t5) -/* 0CD4FC 800CC8FC 0C034CB3 */ jal __osEnqueueAndYield -/* 0CD500 800CC900 24844888 */ addiu $a0, %lo(D_800E4888) # addiu $a0, $a0, 0x4888 -.L800CC904: -/* 0CD504 800CC904 0C034960 */ jal __osRestoreInt -/* 0CD508 800CC908 02002025 */ move $a0, $s0 -/* 0CD50C 800CC90C 8FBF001C */ lw $ra, 0x1c($sp) -/* 0CD510 800CC910 8FB00018 */ lw $s0, 0x18($sp) -/* 0CD514 800CC914 27BD0028 */ addiu $sp, $sp, 0x28 -/* 0CD518 800CC918 03E00008 */ jr $ra -/* 0CD51C 800CC91C 00000000 */ nop - -glabel func_800CC920 -/* 0CD520 800CC920 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0CD524 800CC924 44867000 */ mtc1 $a2, $f14 -/* 0CD528 800CC928 AFBF0014 */ sw $ra, 0x14($sp) -/* 0CD52C 800CC92C AFA7003C */ sw $a3, 0x3c($sp) -/* 0CD530 800CC930 AFA40030 */ sw $a0, 0x30($sp) -/* 0CD534 800CC934 AFA50034 */ sw $a1, 0x34($sp) -/* 0CD538 800CC938 0C035250 */ jal func_800D4940 -/* 0CD53C 800CC93C E7AE0038 */ swc1 $f14, 0x38($sp) -/* 0CD540 800CC940 C7AE0038 */ lwc1 $f14, 0x38($sp) -/* 0CD544 800CC944 3C01800F */ li $at, 0x800F0000 # -0.000000 -/* 0CD548 800CC948 D4269640 */ ldc1 $f6, -0x69c0($at) -/* 0CD54C 800CC94C 46007121 */ cvt.d.s $f4, $f14 -/* 0CD550 800CC950 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 0CD554 800CC954 46262202 */ mul.d $f8, $f4, $f6 -/* 0CD558 800CC958 44815000 */ mtc1 $at, $f10 -/* 0CD55C 800CC95C 462043A0 */ cvt.s.d $f14, $f8 -/* 0CD560 800CC960 460A7303 */ div.s $f12, $f14, $f10 -/* 0CD564 800CC964 0C0352AC */ jal cosf -/* 0CD568 800CC968 E7AC001C */ swc1 $f12, 0x1c($sp) -/* 0CD56C 800CC96C C7AC001C */ lwc1 $f12, 0x1c($sp) -/* 0CD570 800CC970 0C035308 */ jal sinf -/* 0CD574 800CC974 E7A00020 */ swc1 $f0, 0x20($sp) -/* 0CD578 800CC978 C7A40020 */ lwc1 $f4, 0x20($sp) -/* 0CD57C 800CC97C C7A6003C */ lwc1 $f6, 0x3c($sp) -/* 0CD580 800CC980 C7AE0040 */ lwc1 $f14, 0x40($sp) -/* 0CD584 800CC984 46002083 */ div.s $f2, $f4, $f0 -/* 0CD588 800CC988 C7B00044 */ lwc1 $f16, 0x44($sp) -/* 0CD58C 800CC98C 3C01BF80 */ li $at, 0xBF800000 # -1.000000 -/* 0CD590 800CC990 44812000 */ mtc1 $at, $f4 -/* 0CD594 800CC994 46107480 */ add.s $f18, $f14, $f16 -/* 0CD598 800CC998 8FA20030 */ lw $v0, 0x30($sp) -/* 0CD59C 800CC99C 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 0CD5A0 800CC9A0 46107301 */ sub.s $f12, $f14, $f16 -/* 0CD5A4 800CC9A4 8FA50034 */ lw $a1, 0x34($sp) -/* 0CD5A8 800CC9A8 E444002C */ swc1 $f4, 0x2c($v0) -/* 0CD5AC 800CC9AC 00001825 */ move $v1, $zero -/* 0CD5B0 800CC9B0 24040004 */ li $a0, 4 -/* 0CD5B4 800CC9B4 460C9283 */ div.s $f10, $f18, $f12 -/* 0CD5B8 800CC9B8 E4420014 */ swc1 $f2, 0x14($v0) -/* 0CD5BC 800CC9BC 46061203 */ div.s $f8, $f2, $f6 -/* 0CD5C0 800CC9C0 44813000 */ mtc1 $at, $f6 -/* 0CD5C4 800CC9C4 E44A0028 */ swc1 $f10, 0x28($v0) -/* 0CD5C8 800CC9C8 E4480000 */ swc1 $f8, ($v0) -/* 0CD5CC 800CC9CC 460E3202 */ mul.s $f8, $f6, $f14 -/* 0CD5D0 800CC9D0 44803000 */ mtc1 $zero, $f6 -/* 0CD5D4 800CC9D4 00000000 */ nop -/* 0CD5D8 800CC9D8 E446003C */ swc1 $f6, 0x3c($v0) -/* 0CD5DC 800CC9DC 46104282 */ mul.s $f10, $f8, $f16 -/* 0CD5E0 800CC9E0 460C5103 */ div.s $f4, $f10, $f12 -/* 0CD5E4 800CC9E4 E4440038 */ swc1 $f4, 0x38($v0) -/* 0CD5E8 800CC9E8 C7A00048 */ lwc1 $f0, 0x48($sp) -/* 0CD5EC 800CC9EC C4460000 */ lwc1 $f6, ($v0) -/* 0CD5F0 800CC9F0 24630001 */ addiu $v1, $v1, 1 -/* 0CD5F4 800CC9F4 C4500004 */ lwc1 $f16, 4($v0) -/* 0CD5F8 800CC9F8 46003282 */ mul.s $f10, $f6, $f0 -/* 0CD5FC 800CC9FC C44C0008 */ lwc1 $f12, 8($v0) -/* 0CD600 800CCA00 10640010 */ beq $v1, $a0, .L800CCA44 -/* 0CD604 800CCA04 C44E000C */ lwc1 $f14, 0xc($v0) -.L800CCA08: -/* 0CD608 800CCA08 46008202 */ mul.s $f8, $f16, $f0 -/* 0CD60C 800CCA0C C4460010 */ lwc1 $f6, 0x10($v0) -/* 0CD610 800CCA10 C4500014 */ lwc1 $f16, 0x14($v0) -/* 0CD614 800CCA14 46006102 */ mul.s $f4, $f12, $f0 -/* 0CD618 800CCA18 C44C0018 */ lwc1 $f12, 0x18($v0) -/* 0CD61C 800CCA1C 24630001 */ addiu $v1, $v1, 1 -/* 0CD620 800CCA20 46007082 */ mul.s $f2, $f14, $f0 -/* 0CD624 800CCA24 C44E001C */ lwc1 $f14, 0x1c($v0) -/* 0CD628 800CCA28 E44A0000 */ swc1 $f10, ($v0) -/* 0CD62C 800CCA2C 46003282 */ mul.s $f10, $f6, $f0 -/* 0CD630 800CCA30 E4480004 */ swc1 $f8, 4($v0) -/* 0CD634 800CCA34 E4440008 */ swc1 $f4, 8($v0) -/* 0CD638 800CCA38 24420010 */ addiu $v0, $v0, 0x10 -/* 0CD63C 800CCA3C 1464FFF2 */ bne $v1, $a0, .L800CCA08 -/* 0CD640 800CCA40 E442FFFC */ swc1 $f2, -4($v0) -.L800CCA44: -/* 0CD644 800CCA44 46008202 */ mul.s $f8, $f16, $f0 -/* 0CD648 800CCA48 24420010 */ addiu $v0, $v0, 0x10 -/* 0CD64C 800CCA4C E44AFFF0 */ swc1 $f10, -0x10($v0) -/* 0CD650 800CCA50 46006102 */ mul.s $f4, $f12, $f0 -/* 0CD654 800CCA54 00000000 */ nop -/* 0CD658 800CCA58 46007082 */ mul.s $f2, $f14, $f0 -/* 0CD65C 800CCA5C E448FFF4 */ swc1 $f8, -0xc($v0) -/* 0CD660 800CCA60 E444FFF8 */ swc1 $f4, -8($v0) -/* 0CD664 800CCA64 E442FFFC */ swc1 $f2, -4($v0) -/* 0CD668 800CCA68 10A00035 */ beqz $a1, .L800CCB40 -/* 0CD66C 800CCA6C 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 0CD670 800CCA70 44814800 */ mtc1 $at, $f9 -/* 0CD674 800CCA74 44804000 */ mtc1 $zero, $f8 -/* 0CD678 800CCA78 46009021 */ cvt.d.s $f0, $f18 -/* 0CD67C 800CCA7C 340EFFFF */ li $t6, 65535 -/* 0CD680 800CCA80 4628003E */ c.le.d $f0, $f8 -/* 0CD684 800CCA84 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 0CD688 800CCA88 45020004 */ bc1fl .L800CCA9C -/* 0CD68C 800CCA8C 44815800 */ mtc1 $at, $f11 -/* 0CD690 800CCA90 1000002B */ b .L800CCB40 -/* 0CD694 800CCA94 A4AE0000 */ sh $t6, ($a1) -/* 0CD698 800CCA98 44815800 */ mtc1 $at, $f11 -.L800CCA9C: -/* 0CD69C 800CCA9C 44805000 */ mtc1 $zero, $f10 -/* 0CD6A0 800CCAA0 24180001 */ li $t8, 1 -/* 0CD6A4 800CCAA4 3C0141E0 */ li $at, 0x41E00000 # 28.000000 -/* 0CD6A8 800CCAA8 46205103 */ div.d $f4, $f10, $f0 -/* 0CD6AC 800CCAAC 24080001 */ li $t0, 1 -/* 0CD6B0 800CCAB0 444FF800 */ cfc1 $t7, $31 -/* 0CD6B4 800CCAB4 44D8F800 */ ctc1 $t8, $31 -/* 0CD6B8 800CCAB8 00000000 */ nop -/* 0CD6BC 800CCABC 462021A4 */ cvt.w.d $f6, $f4 -/* 0CD6C0 800CCAC0 4458F800 */ cfc1 $t8, $31 -/* 0CD6C4 800CCAC4 00000000 */ nop -/* 0CD6C8 800CCAC8 33180078 */ andi $t8, $t8, 0x78 -/* 0CD6CC 800CCACC 53000014 */ beql $t8, $zero, .L800CCB20 -/* 0CD6D0 800CCAD0 44183000 */ mfc1 $t8, $f6 -/* 0CD6D4 800CCAD4 44813800 */ mtc1 $at, $f7 -/* 0CD6D8 800CCAD8 44803000 */ mtc1 $zero, $f6 -/* 0CD6DC 800CCADC 24180001 */ li $t8, 1 -/* 0CD6E0 800CCAE0 46262181 */ sub.d $f6, $f4, $f6 -/* 0CD6E4 800CCAE4 44D8F800 */ ctc1 $t8, $31 -/* 0CD6E8 800CCAE8 00000000 */ nop -/* 0CD6EC 800CCAEC 462031A4 */ cvt.w.d $f6, $f6 -/* 0CD6F0 800CCAF0 4458F800 */ cfc1 $t8, $31 -/* 0CD6F4 800CCAF4 00000000 */ nop -/* 0CD6F8 800CCAF8 33180078 */ andi $t8, $t8, 0x78 -/* 0CD6FC 800CCAFC 17000005 */ bnez $t8, .L800CCB14 -/* 0CD700 800CCB00 00000000 */ nop -/* 0CD704 800CCB04 44183000 */ mfc1 $t8, $f6 -/* 0CD708 800CCB08 3C018000 */ lui $at, 0x8000 -/* 0CD70C 800CCB0C 10000007 */ b .L800CCB2C -/* 0CD710 800CCB10 0301C025 */ or $t8, $t8, $at -.L800CCB14: -/* 0CD714 800CCB14 10000005 */ b .L800CCB2C -/* 0CD718 800CCB18 2418FFFF */ li $t8, -1 -/* 0CD71C 800CCB1C 44183000 */ mfc1 $t8, $f6 -.L800CCB20: -/* 0CD720 800CCB20 00000000 */ nop -/* 0CD724 800CCB24 0700FFFB */ bltz $t8, .L800CCB14 -/* 0CD728 800CCB28 00000000 */ nop -.L800CCB2C: -/* 0CD72C 800CCB2C 44CFF800 */ ctc1 $t7, $31 -/* 0CD730 800CCB30 3319FFFF */ andi $t9, $t8, 0xffff -/* 0CD734 800CCB34 1F200002 */ bgtz $t9, .L800CCB40 -/* 0CD738 800CCB38 A4B80000 */ sh $t8, ($a1) -/* 0CD73C 800CCB3C A4A80000 */ sh $t0, ($a1) -.L800CCB40: -/* 0CD740 800CCB40 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CD744 800CCB44 27BD0030 */ addiu $sp, $sp, 0x30 -/* 0CD748 800CCB48 03E00008 */ jr $ra -/* 0CD74C 800CCB4C 00000000 */ nop - -/* 0CD750 800CCB50 27BDFF98 */ addiu $sp, $sp, -0x68 -/* 0CD754 800CCB54 44866000 */ mtc1 $a2, $f12 -/* 0CD758 800CCB58 44877000 */ mtc1 $a3, $f14 -/* 0CD75C 800CCB5C C7A40078 */ lwc1 $f4, 0x78($sp) -/* 0CD760 800CCB60 C7A6007C */ lwc1 $f6, 0x7c($sp) -/* 0CD764 800CCB64 C7A80080 */ lwc1 $f8, 0x80($sp) -/* 0CD768 800CCB68 AFBF0024 */ sw $ra, 0x24($sp) -/* 0CD76C 800CCB6C AFA40068 */ sw $a0, 0x68($sp) -/* 0CD770 800CCB70 44066000 */ mfc1 $a2, $f12 -/* 0CD774 800CCB74 44077000 */ mfc1 $a3, $f14 -/* 0CD778 800CCB78 27A40028 */ addiu $a0, $sp, 0x28 -/* 0CD77C 800CCB7C E7A40010 */ swc1 $f4, 0x10($sp) -/* 0CD780 800CCB80 E7A60014 */ swc1 $f6, 0x14($sp) -/* 0CD784 800CCB84 0C033248 */ jal func_800CC920 -/* 0CD788 800CCB88 E7A80018 */ swc1 $f8, 0x18($sp) -/* 0CD78C 800CCB8C 27A40028 */ addiu $a0, $sp, 0x28 -/* 0CD790 800CCB90 0C035210 */ jal func_800D4840 -/* 0CD794 800CCB94 8FA50068 */ lw $a1, 0x68($sp) -/* 0CD798 800CCB98 8FBF0024 */ lw $ra, 0x24($sp) -/* 0CD79C 800CCB9C 27BD0068 */ addiu $sp, $sp, 0x68 -/* 0CD7A0 800CCBA0 03E00008 */ jr $ra -/* 0CD7A4 800CCBA4 00000000 */ nop - -/* 0CD7A8 800CCBA8 00000000 */ nop -/* 0CD7AC 800CCBAC 00000000 */ nop diff --git a/asm/unknown_0CD820.s b/asm/unknown_0CD820.s deleted file mode 100755 index 031c69d9..00000000 --- a/asm/unknown_0CD820.s +++ /dev/null @@ -1,430 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_800CCC20 -/* 0CD820 800CCC20 27BDFF80 */ addiu $sp, $sp, -0x80 -/* 0CD824 800CCC24 3C0E800E */ lui $t6, %hi(D_800E38C0) # $t6, 0x800e -/* 0CD828 800CCC28 8DCE38C0 */ lw $t6, %lo(D_800E38C0)($t6) -/* 0CD82C 800CCC2C AFBF0024 */ sw $ra, 0x24($sp) -/* 0CD830 800CCC30 AFA40080 */ sw $a0, 0x80($sp) -/* 0CD834 800CCC34 AFA50084 */ sw $a1, 0x84($sp) -/* 0CD838 800CCC38 AFA60088 */ sw $a2, 0x88($sp) -/* 0CD83C 800CCC3C 11C00003 */ beqz $t6, .L800CCC4C -/* 0CD840 800CCC40 AFA00078 */ sw $zero, 0x78($sp) -/* 0CD844 800CCC44 10000070 */ b .L800CCE08 -/* 0CD848 800CCC48 00001025 */ move $v0, $zero -.L800CCC4C: -/* 0CD84C 800CCC4C 240F0001 */ li $t7, 1 -/* 0CD850 800CCC50 3C01800E */ lui $at, %hi(D_800E38C0) # $at, 0x800e -/* 0CD854 800CCC54 0C03486C */ jal func_800D21B0 -/* 0CD858 800CCC58 AC2F38C0 */ sw $t7, %lo(D_800E38C0)($at) -/* 0CD85C 800CCC5C 3C050007 */ lui $a1, (0x0007A120 >> 16) # lui $a1, 7 -/* 0CD860 800CCC60 3C06800E */ lui $a2, %hi(D_800E38A0) # $a2, 0x800e -/* 0CD864 800CCC64 3C07800E */ lui $a3, %hi(D_800E38A4) # $a3, 0x800e -/* 0CD868 800CCC68 AFA20070 */ sw $v0, 0x70($sp) -/* 0CD86C 800CCC6C AFA30074 */ sw $v1, 0x74($sp) -/* 0CD870 800CCC70 8CE738A4 */ lw $a3, %lo(D_800E38A4)($a3) -/* 0CD874 800CCC74 8CC638A0 */ lw $a2, %lo(D_800E38A0)($a2) -/* 0CD878 800CCC78 34A5A120 */ ori $a1, (0x0007A120 & 0xFFFF) # ori $a1, $a1, 0xa120 -/* 0CD87C 800CCC7C 0C033AF2 */ jal __ll_mul -/* 0CD880 800CCC80 24040000 */ li $a0, 0 -/* 0CD884 800CCC84 AFA20030 */ sw $v0, 0x30($sp) -/* 0CD888 800CCC88 AFA30034 */ sw $v1, 0x34($sp) -/* 0CD88C 800CCC8C 3C07000F */ lui $a3, (0x000F4240 >> 16) # lui $a3, 0xf -/* 0CD890 800CCC90 34E74240 */ ori $a3, (0x000F4240 & 0xFFFF) # ori $a3, $a3, 0x4240 -/* 0CD894 800CCC94 8FA50034 */ lw $a1, 0x34($sp) -/* 0CD898 800CCC98 8FA40030 */ lw $a0, 0x30($sp) -/* 0CD89C 800CCC9C 0C033AB2 */ jal __ull_div -/* 0CD8A0 800CCCA0 24060000 */ li $a2, 0 -/* 0CD8A4 800CCCA4 8FB80070 */ lw $t8, 0x70($sp) -/* 0CD8A8 800CCCA8 8FB90074 */ lw $t9, 0x74($sp) -/* 0CD8AC 800CCCAC 0058082B */ sltu $at, $v0, $t8 -/* 0CD8B0 800CCCB0 14200031 */ bnez $at, .L800CCD78 -/* 0CD8B4 800CCCB4 0302082B */ sltu $at, $t8, $v0 -/* 0CD8B8 800CCCB8 14200003 */ bnez $at, .L800CCCC8 -/* 0CD8BC 800CCCBC 0323082B */ sltu $at, $t9, $v1 -/* 0CD8C0 800CCCC0 1020002D */ beqz $at, .L800CCD78 -/* 0CD8C4 800CCCC4 00000000 */ nop -.L800CCCC8: -/* 0CD8C8 800CCCC8 27A40038 */ addiu $a0, $sp, 0x38 -/* 0CD8CC 800CCCCC 27A5007C */ addiu $a1, $sp, 0x7c -/* 0CD8D0 800CCCD0 0C032208 */ jal osCreateMesgQueue -/* 0CD8D4 800CCCD4 24060001 */ li $a2, 1 -/* 0CD8D8 800CCCD8 3C050007 */ lui $a1, (0x0007A120 >> 16) # lui $a1, 7 -/* 0CD8DC 800CCCDC 3C06800E */ lui $a2, %hi(D_800E38A0) # $a2, 0x800e -/* 0CD8E0 800CCCE0 3C07800E */ lui $a3, %hi(D_800E38A4) # $a3, 0x800e -/* 0CD8E4 800CCCE4 8CE738A4 */ lw $a3, %lo(D_800E38A4)($a3) -/* 0CD8E8 800CCCE8 8CC638A0 */ lw $a2, %lo(D_800E38A0)($a2) -/* 0CD8EC 800CCCEC 34A5A120 */ ori $a1, (0x0007A120 & 0xFFFF) # ori $a1, $a1, 0xa120 -/* 0CD8F0 800CCCF0 0C033AF2 */ jal __ll_mul -/* 0CD8F4 800CCCF4 24040000 */ li $a0, 0 -/* 0CD8F8 800CCCF8 AFA20028 */ sw $v0, 0x28($sp) -/* 0CD8FC 800CCCFC AFA3002C */ sw $v1, 0x2c($sp) -/* 0CD900 800CCD00 3C07000F */ lui $a3, (0x000F4240 >> 16) # lui $a3, 0xf -/* 0CD904 800CCD04 34E74240 */ ori $a3, (0x000F4240 & 0xFFFF) # ori $a3, $a3, 0x4240 -/* 0CD908 800CCD08 8FA5002C */ lw $a1, 0x2c($sp) -/* 0CD90C 800CCD0C 8FA40028 */ lw $a0, 0x28($sp) -/* 0CD910 800CCD10 0C033AB2 */ jal __ull_div -/* 0CD914 800CCD14 24060000 */ li $a2, 0 -/* 0CD918 800CCD18 AFA20030 */ sw $v0, 0x30($sp) -/* 0CD91C 800CCD1C AFA30034 */ sw $v1, 0x34($sp) -/* 0CD920 800CCD20 8FA90034 */ lw $t1, 0x34($sp) -/* 0CD924 800CCD24 8FA80030 */ lw $t0, 0x30($sp) -/* 0CD928 800CCD28 8FAA0070 */ lw $t2, 0x70($sp) -/* 0CD92C 800CCD2C 8FAB0074 */ lw $t3, 0x74($sp) -/* 0CD930 800CCD30 240C0000 */ li $t4, 0 -/* 0CD934 800CCD34 240D0000 */ li $t5, 0 -/* 0CD938 800CCD38 27AE0038 */ addiu $t6, $sp, 0x38 -/* 0CD93C 800CCD3C 27AF007C */ addiu $t7, $sp, 0x7c -/* 0CD940 800CCD40 010A3023 */ subu $a2, $t0, $t2 -/* 0CD944 800CCD44 012B082B */ sltu $at, $t1, $t3 -/* 0CD948 800CCD48 00C13023 */ subu $a2, $a2, $at -/* 0CD94C 800CCD4C AFAF001C */ sw $t7, 0x1c($sp) -/* 0CD950 800CCD50 AFAE0018 */ sw $t6, 0x18($sp) -/* 0CD954 800CCD54 AFAD0014 */ sw $t5, 0x14($sp) -/* 0CD958 800CCD58 AFAC0010 */ sw $t4, 0x10($sp) -/* 0CD95C 800CCD5C 27A40050 */ addiu $a0, $sp, 0x50 -/* 0CD960 800CCD60 0C035378 */ jal func_800D4DE0 -/* 0CD964 800CCD64 012B3823 */ subu $a3, $t1, $t3 -/* 0CD968 800CCD68 27A40038 */ addiu $a0, $sp, 0x38 -/* 0CD96C 800CCD6C 27A5007C */ addiu $a1, $sp, 0x7c -/* 0CD970 800CCD70 0C0322EC */ jal osRecvMesg -/* 0CD974 800CCD74 24060001 */ li $a2, 1 -.L800CCD78: -/* 0CD978 800CCD78 24180004 */ li $t8, 4 -/* 0CD97C 800CCD7C 3C018013 */ lui $at, %hi(D_8012CD91) # $at, 0x8013 -/* 0CD980 800CCD80 A038CD91 */ sb $t8, %lo(D_8012CD91)($at) -/* 0CD984 800CCD84 0C0333BA */ jal func_800CCEE8 -/* 0CD988 800CCD88 00002025 */ move $a0, $zero -/* 0CD98C 800CCD8C 3C058013 */ lui $a1, %hi(D_8012CD50) # $a1, 0x8013 -/* 0CD990 800CCD90 24A5CD50 */ addiu $a1, %lo(D_8012CD50) # addiu $a1, $a1, -0x32b0 -/* 0CD994 800CCD94 0C0335B0 */ jal func_800CD6C0 -/* 0CD998 800CCD98 24040001 */ li $a0, 1 -/* 0CD99C 800CCD9C AFA20078 */ sw $v0, 0x78($sp) -/* 0CD9A0 800CCDA0 8FA40080 */ lw $a0, 0x80($sp) -/* 0CD9A4 800CCDA4 27A5007C */ addiu $a1, $sp, 0x7c -/* 0CD9A8 800CCDA8 0C0322EC */ jal osRecvMesg -/* 0CD9AC 800CCDAC 24060001 */ li $a2, 1 -/* 0CD9B0 800CCDB0 3C058013 */ lui $a1, %hi(D_8012CD50) # $a1, 0x8013 -/* 0CD9B4 800CCDB4 24A5CD50 */ addiu $a1, %lo(D_8012CD50) # addiu $a1, $a1, -0x32b0 -/* 0CD9B8 800CCDB8 0C0335B0 */ jal func_800CD6C0 -/* 0CD9BC 800CCDBC 00002025 */ move $a0, $zero -/* 0CD9C0 800CCDC0 AFA20078 */ sw $v0, 0x78($sp) -/* 0CD9C4 800CCDC4 8FA40080 */ lw $a0, 0x80($sp) -/* 0CD9C8 800CCDC8 27A5007C */ addiu $a1, $sp, 0x7c -/* 0CD9CC 800CCDCC 0C0322EC */ jal osRecvMesg -/* 0CD9D0 800CCDD0 24060001 */ li $a2, 1 -/* 0CD9D4 800CCDD4 8FA40084 */ lw $a0, 0x84($sp) -/* 0CD9D8 800CCDD8 0C033386 */ jal func_800CCE18 -/* 0CD9DC 800CCDDC 8FA50088 */ lw $a1, 0x88($sp) -/* 0CD9E0 800CCDE0 3C018013 */ lui $at, %hi(D_8012CD90) # $at, 0x8013 -/* 0CD9E4 800CCDE4 0C033580 */ jal func_800CD600 -/* 0CD9E8 800CCDE8 A020CD90 */ sb $zero, %lo(D_8012CD90)($at) -/* 0CD9EC 800CCDEC 3C048013 */ lui $a0, %hi(D_8012CDB8) # $a0, 0x8013 -/* 0CD9F0 800CCDF0 3C058013 */ lui $a1, %hi(D_8012CDD0) # $a1, 0x8013 -/* 0CD9F4 800CCDF4 24A5CDD0 */ addiu $a1, %lo(D_8012CDD0) # addiu $a1, $a1, -0x3230 -/* 0CD9F8 800CCDF8 2484CDB8 */ addiu $a0, %lo(D_8012CDB8) # addiu $a0, $a0, -0x3248 -/* 0CD9FC 800CCDFC 0C032208 */ jal osCreateMesgQueue -/* 0CDA00 800CCE00 24060001 */ li $a2, 1 -/* 0CDA04 800CCE04 8FA20078 */ lw $v0, 0x78($sp) -.L800CCE08: -/* 0CDA08 800CCE08 8FBF0024 */ lw $ra, 0x24($sp) -/* 0CDA0C 800CCE0C 27BD0080 */ addiu $sp, $sp, 0x80 -/* 0CDA10 800CCE10 03E00008 */ jr $ra -/* 0CDA14 800CCE14 00000000 */ nop - -glabel func_800CCE18 -/* 0CDA18 800CCE18 3C0F8013 */ lui $t7, %hi(D_8012CD91) # $t7, 0x8013 -/* 0CDA1C 800CCE1C 91EFCD91 */ lbu $t7, %lo(D_8012CD91)($t7) -/* 0CDA20 800CCE20 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0CDA24 800CCE24 3C0E8013 */ lui $t6, %hi(D_8012CD50) # $t6, 0x8013 -/* 0CDA28 800CCE28 25CECD50 */ addiu $t6, %lo(D_8012CD50) # addiu $t6, $t6, -0x32b0 -/* 0CDA2C 800CCE2C A3A00007 */ sb $zero, 7($sp) -/* 0CDA30 800CCE30 AFAE0014 */ sw $t6, 0x14($sp) -/* 0CDA34 800CCE34 19E00028 */ blez $t7, .L800CCED8 -/* 0CDA38 800CCE38 AFA00008 */ sw $zero, 8($sp) -.L800CCE3C: -/* 0CDA3C 800CCE3C 8FB90014 */ lw $t9, 0x14($sp) -/* 0CDA40 800CCE40 27B8000C */ addiu $t8, $sp, 0xc -/* 0CDA44 800CCE44 8B210000 */ lwl $at, ($t9) -/* 0CDA48 800CCE48 9B210003 */ lwr $at, 3($t9) -/* 0CDA4C 800CCE4C AF010000 */ sw $at, ($t8) -/* 0CDA50 800CCE50 8B290004 */ lwl $t1, 4($t9) -/* 0CDA54 800CCE54 9B290007 */ lwr $t1, 7($t9) -/* 0CDA58 800CCE58 AF090004 */ sw $t1, 4($t8) -/* 0CDA5C 800CCE5C 93AA000E */ lbu $t2, 0xe($sp) -/* 0CDA60 800CCE60 314B00C0 */ andi $t3, $t2, 0xc0 -/* 0CDA64 800CCE64 000B6103 */ sra $t4, $t3, 4 -/* 0CDA68 800CCE68 A0AC0003 */ sb $t4, 3($a1) -/* 0CDA6C 800CCE6C 90AD0003 */ lbu $t5, 3($a1) -/* 0CDA70 800CCE70 15A0000E */ bnez $t5, .L800CCEAC -/* 0CDA74 800CCE74 00000000 */ nop -/* 0CDA78 800CCE78 93AE0011 */ lbu $t6, 0x11($sp) -/* 0CDA7C 800CCE7C 93A80010 */ lbu $t0, 0x10($sp) -/* 0CDA80 800CCE80 240B0001 */ li $t3, 1 -/* 0CDA84 800CCE84 000E7A00 */ sll $t7, $t6, 8 -/* 0CDA88 800CCE88 01E8C025 */ or $t8, $t7, $t0 -/* 0CDA8C 800CCE8C A4B80000 */ sh $t8, ($a1) -/* 0CDA90 800CCE90 93B90012 */ lbu $t9, 0x12($sp) -/* 0CDA94 800CCE94 A0B90002 */ sb $t9, 2($a1) -/* 0CDA98 800CCE98 8FAA0008 */ lw $t2, 8($sp) -/* 0CDA9C 800CCE9C 93A90007 */ lbu $t1, 7($sp) -/* 0CDAA0 800CCEA0 014B6004 */ sllv $t4, $t3, $t2 -/* 0CDAA4 800CCEA4 012C6825 */ or $t5, $t1, $t4 -/* 0CDAA8 800CCEA8 A3AD0007 */ sb $t5, 7($sp) -.L800CCEAC: -/* 0CDAAC 800CCEAC 8FAE0008 */ lw $t6, 8($sp) -/* 0CDAB0 800CCEB0 3C198013 */ lui $t9, %hi(D_8012CD91) # $t9, 0x8013 -/* 0CDAB4 800CCEB4 9339CD91 */ lbu $t9, %lo(D_8012CD91)($t9) -/* 0CDAB8 800CCEB8 8FA80014 */ lw $t0, 0x14($sp) -/* 0CDABC 800CCEBC 25CF0001 */ addiu $t7, $t6, 1 -/* 0CDAC0 800CCEC0 01F9082A */ slt $at, $t7, $t9 -/* 0CDAC4 800CCEC4 25180008 */ addiu $t8, $t0, 8 -/* 0CDAC8 800CCEC8 AFB80014 */ sw $t8, 0x14($sp) -/* 0CDACC 800CCECC AFAF0008 */ sw $t7, 8($sp) -/* 0CDAD0 800CCED0 1420FFDA */ bnez $at, .L800CCE3C -/* 0CDAD4 800CCED4 24A50004 */ addiu $a1, $a1, 4 -.L800CCED8: -/* 0CDAD8 800CCED8 93AB0007 */ lbu $t3, 7($sp) -/* 0CDADC 800CCEDC 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0CDAE0 800CCEE0 03E00008 */ jr $ra -/* 0CDAE4 800CCEE4 A08B0000 */ sb $t3, ($a0) - -glabel func_800CCEE8 -/* 0CDAE8 800CCEE8 27BDFFF0 */ addiu $sp, $sp, -0x10 -/* 0CDAEC 800CCEEC 308400FF */ andi $a0, $a0, 0xff -/* 0CDAF0 800CCEF0 AFA00000 */ sw $zero, ($sp) -.L800CCEF4: -/* 0CDAF4 800CCEF4 8FAE0000 */ lw $t6, ($sp) -/* 0CDAF8 800CCEF8 8FB80000 */ lw $t8, ($sp) -/* 0CDAFC 800CCEFC 3C018013 */ lui $at, 0x8013 -/* 0CDB00 800CCF00 000E7880 */ sll $t7, $t6, 2 -/* 0CDB04 800CCF04 002F0821 */ addu $at, $at, $t7 -/* 0CDB08 800CCF08 AC20CD50 */ sw $zero, -0x32b0($at) -/* 0CDB0C 800CCF0C 27190001 */ addiu $t9, $t8, 1 -/* 0CDB10 800CCF10 2B210010 */ slti $at, $t9, 0x10 -/* 0CDB14 800CCF14 1420FFF7 */ bnez $at, .L800CCEF4 -/* 0CDB18 800CCF18 AFB90000 */ sw $t9, ($sp) -/* 0CDB1C 800CCF1C 3C198013 */ lui $t9, %hi(D_8012CD91) # $t9, 0x8013 -/* 0CDB20 800CCF20 9339CD91 */ lbu $t9, %lo(D_8012CD91)($t9) -/* 0CDB24 800CCF24 3C098013 */ lui $t1, %hi(D_8012CD50) # $t1, 0x8013 -/* 0CDB28 800CCF28 24080001 */ li $t0, 1 -/* 0CDB2C 800CCF2C 3C018013 */ lui $at, %hi(D_8012CD8C) # $at, 0x8013 -/* 0CDB30 800CCF30 2529CD50 */ addiu $t1, %lo(D_8012CD50) # addiu $t1, $t1, -0x32b0 -/* 0CDB34 800CCF34 240A00FF */ li $t2, 255 -/* 0CDB38 800CCF38 240B0001 */ li $t3, 1 -/* 0CDB3C 800CCF3C 240C0003 */ li $t4, 3 -/* 0CDB40 800CCF40 240D00FF */ li $t5, 255 -/* 0CDB44 800CCF44 240E00FF */ li $t6, 255 -/* 0CDB48 800CCF48 240F00FF */ li $t7, 255 -/* 0CDB4C 800CCF4C 241800FF */ li $t8, 255 -/* 0CDB50 800CCF50 AC28CD8C */ sw $t0, %lo(D_8012CD8C)($at) -/* 0CDB54 800CCF54 AFA9000C */ sw $t1, 0xc($sp) -/* 0CDB58 800CCF58 A3AA0004 */ sb $t2, 4($sp) -/* 0CDB5C 800CCF5C A3AB0005 */ sb $t3, 5($sp) -/* 0CDB60 800CCF60 A3AC0006 */ sb $t4, 6($sp) -/* 0CDB64 800CCF64 A3A40007 */ sb $a0, 7($sp) -/* 0CDB68 800CCF68 A3AD0008 */ sb $t5, 8($sp) -/* 0CDB6C 800CCF6C A3AE0009 */ sb $t6, 9($sp) -/* 0CDB70 800CCF70 A3AF000A */ sb $t7, 0xa($sp) -/* 0CDB74 800CCF74 A3B8000B */ sb $t8, 0xb($sp) -/* 0CDB78 800CCF78 1B200013 */ blez $t9, .L800CCFC8 -/* 0CDB7C 800CCF7C AFA00000 */ sw $zero, ($sp) -.L800CCF80: -/* 0CDB80 800CCF80 27A90004 */ addiu $t1, $sp, 4 -/* 0CDB84 800CCF84 8D210000 */ lw $at, ($t1) -/* 0CDB88 800CCF88 8FA8000C */ lw $t0, 0xc($sp) -/* 0CDB8C 800CCF8C 3C188013 */ lui $t8, %hi(D_8012CD91) # $t8, 0x8013 -/* 0CDB90 800CCF90 A9010000 */ swl $at, ($t0) -/* 0CDB94 800CCF94 B9010003 */ swr $at, 3($t0) -/* 0CDB98 800CCF98 8D2B0004 */ lw $t3, 4($t1) -/* 0CDB9C 800CCF9C A90B0004 */ swl $t3, 4($t0) -/* 0CDBA0 800CCFA0 B90B0007 */ swr $t3, 7($t0) -/* 0CDBA4 800CCFA4 8FAE0000 */ lw $t6, ($sp) -/* 0CDBA8 800CCFA8 9318CD91 */ lbu $t8, %lo(D_8012CD91)($t8) -/* 0CDBAC 800CCFAC 8FAC000C */ lw $t4, 0xc($sp) -/* 0CDBB0 800CCFB0 25CF0001 */ addiu $t7, $t6, 1 -/* 0CDBB4 800CCFB4 01F8082A */ slt $at, $t7, $t8 -/* 0CDBB8 800CCFB8 258D0008 */ addiu $t5, $t4, 8 -/* 0CDBBC 800CCFBC AFAF0000 */ sw $t7, ($sp) -/* 0CDBC0 800CCFC0 1420FFEF */ bnez $at, .L800CCF80 -/* 0CDBC4 800CCFC4 AFAD000C */ sw $t5, 0xc($sp) -.L800CCFC8: -/* 0CDBC8 800CCFC8 8FAA000C */ lw $t2, 0xc($sp) -/* 0CDBCC 800CCFCC 241900FE */ li $t9, 254 -/* 0CDBD0 800CCFD0 27BD0010 */ addiu $sp, $sp, 0x10 -/* 0CDBD4 800CCFD4 03E00008 */ jr $ra -/* 0CDBD8 800CCFD8 A1590000 */ sb $t9, ($t2) - -/* 0CDBDC 800CCFDC 00000000 */ nop -glabel func_800CCFE0 -/* 0CDBE0 800CCFE0 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0CDBE4 800CCFE4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0CDBE8 800CCFE8 AFA40020 */ sw $a0, 0x20($sp) -/* 0CDBEC 800CCFEC 0C033594 */ jal func_800CD650 -/* 0CDBF0 800CCFF0 AFA0001C */ sw $zero, 0x1c($sp) -/* 0CDBF4 800CCFF4 3C0E8013 */ lui $t6, %hi(D_8012CD90) # $t6, 0x8013 -/* 0CDBF8 800CCFF8 91CECD90 */ lbu $t6, %lo(D_8012CD90)($t6) -/* 0CDBFC 800CCFFC 24010001 */ li $at, 1 -/* 0CDC00 800CD000 11C1000C */ beq $t6, $at, .L800CD034 -/* 0CDC04 800CD004 00000000 */ nop -/* 0CDC08 800CD008 0C033453 */ jal func_800CD14C -/* 0CDC0C 800CD00C 00000000 */ nop -/* 0CDC10 800CD010 3C058013 */ lui $a1, %hi(D_8012CD50) # $a1, 0x8013 -/* 0CDC14 800CD014 24A5CD50 */ addiu $a1, %lo(D_8012CD50) # addiu $a1, $a1, -0x32b0 -/* 0CDC18 800CD018 0C0335B0 */ jal func_800CD6C0 -/* 0CDC1C 800CD01C 24040001 */ li $a0, 1 -/* 0CDC20 800CD020 AFA2001C */ sw $v0, 0x1c($sp) -/* 0CDC24 800CD024 8FA40020 */ lw $a0, 0x20($sp) -/* 0CDC28 800CD028 00002825 */ move $a1, $zero -/* 0CDC2C 800CD02C 0C0322EC */ jal osRecvMesg -/* 0CDC30 800CD030 24060001 */ li $a2, 1 -.L800CD034: -/* 0CDC34 800CD034 AFA00018 */ sw $zero, 0x18($sp) -.L800CD038: -/* 0CDC38 800CD038 8FB80018 */ lw $t8, 0x18($sp) -/* 0CDC3C 800CD03C 8FA80018 */ lw $t0, 0x18($sp) -/* 0CDC40 800CD040 3C018013 */ lui $at, 0x8013 -/* 0CDC44 800CD044 0018C880 */ sll $t9, $t8, 2 -/* 0CDC48 800CD048 00390821 */ addu $at, $at, $t9 -/* 0CDC4C 800CD04C 240F00FF */ li $t7, 255 -/* 0CDC50 800CD050 AC2FCD50 */ sw $t7, -0x32b0($at) -/* 0CDC54 800CD054 25090001 */ addiu $t1, $t0, 1 -/* 0CDC58 800CD058 29210010 */ slti $at, $t1, 0x10 -/* 0CDC5C 800CD05C 1420FFF6 */ bnez $at, .L800CD038 -/* 0CDC60 800CD060 AFA90018 */ sw $t1, 0x18($sp) -/* 0CDC64 800CD064 3C018013 */ lui $at, %hi(D_8012CD8C) # $at, 0x8013 -/* 0CDC68 800CD068 3C058013 */ lui $a1, %hi(D_8012CD50) # $a1, 0x8013 -/* 0CDC6C 800CD06C AC20CD8C */ sw $zero, %lo(D_8012CD8C)($at) -/* 0CDC70 800CD070 24A5CD50 */ addiu $a1, %lo(D_8012CD50) # addiu $a1, $a1, -0x32b0 -/* 0CDC74 800CD074 0C0335B0 */ jal func_800CD6C0 -/* 0CDC78 800CD078 00002025 */ move $a0, $zero -/* 0CDC7C 800CD07C 240A0001 */ li $t2, 1 -/* 0CDC80 800CD080 3C018013 */ lui $at, %hi(D_8012CD90) # $at, 0x8013 -/* 0CDC84 800CD084 AFA2001C */ sw $v0, 0x1c($sp) -/* 0CDC88 800CD088 0C0335A5 */ jal func_800CD694 -/* 0CDC8C 800CD08C A02ACD90 */ sb $t2, %lo(D_8012CD90)($at) -/* 0CDC90 800CD090 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CDC94 800CD094 8FA2001C */ lw $v0, 0x1c($sp) -/* 0CDC98 800CD098 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0CDC9C 800CD09C 03E00008 */ jr $ra -/* 0CDCA0 800CD0A0 00000000 */ nop - -glabel func_800CD0A4 -/* 0CDCA4 800CD0A4 3C0F8013 */ lui $t7, %hi(D_8012CD91) # $t7, 0x8013 -/* 0CDCA8 800CD0A8 91EFCD91 */ lbu $t7, %lo(D_8012CD91)($t7) -/* 0CDCAC 800CD0AC 3C0E8013 */ lui $t6, %hi(D_8012CD50) # $t6, 0x8013 -/* 0CDCB0 800CD0B0 27BDFFF0 */ addiu $sp, $sp, -0x10 -/* 0CDCB4 800CD0B4 25CECD50 */ addiu $t6, %lo(D_8012CD50) # addiu $t6, $t6, -0x32b0 -/* 0CDCB8 800CD0B8 AFAE000C */ sw $t6, 0xc($sp) -/* 0CDCBC 800CD0BC 19E00021 */ blez $t7, .L800CD144 -/* 0CDCC0 800CD0C0 AFA00000 */ sw $zero, ($sp) -.L800CD0C4: -/* 0CDCC4 800CD0C4 8FB9000C */ lw $t9, 0xc($sp) -/* 0CDCC8 800CD0C8 27B80004 */ addiu $t8, $sp, 4 -/* 0CDCCC 800CD0CC 8B210000 */ lwl $at, ($t9) -/* 0CDCD0 800CD0D0 9B210003 */ lwr $at, 3($t9) -/* 0CDCD4 800CD0D4 AF010000 */ sw $at, ($t8) -/* 0CDCD8 800CD0D8 8B290004 */ lwl $t1, 4($t9) -/* 0CDCDC 800CD0DC 9B290007 */ lwr $t1, 7($t9) -/* 0CDCE0 800CD0E0 AF090004 */ sw $t1, 4($t8) -/* 0CDCE4 800CD0E4 93AA0006 */ lbu $t2, 6($sp) -/* 0CDCE8 800CD0E8 314B00C0 */ andi $t3, $t2, 0xc0 -/* 0CDCEC 800CD0EC 000B6103 */ sra $t4, $t3, 4 -/* 0CDCF0 800CD0F0 A08C0004 */ sb $t4, 4($a0) -/* 0CDCF4 800CD0F4 908D0004 */ lbu $t5, 4($a0) -/* 0CDCF8 800CD0F8 15A00007 */ bnez $t5, .L800CD118 -/* 0CDCFC 800CD0FC 00000000 */ nop -/* 0CDD00 800CD100 97AE0008 */ lhu $t6, 8($sp) -/* 0CDD04 800CD104 A48E0000 */ sh $t6, ($a0) -/* 0CDD08 800CD108 83AF000A */ lb $t7, 0xa($sp) -/* 0CDD0C 800CD10C A08F0002 */ sb $t7, 2($a0) -/* 0CDD10 800CD110 83A8000B */ lb $t0, 0xb($sp) -/* 0CDD14 800CD114 A0880003 */ sb $t0, 3($a0) -.L800CD118: -/* 0CDD18 800CD118 8FB80000 */ lw $t8, ($sp) -/* 0CDD1C 800CD11C 3C0B8013 */ lui $t3, %hi(D_8012CD91) # $t3, 0x8013 -/* 0CDD20 800CD120 916BCD91 */ lbu $t3, %lo(D_8012CD91)($t3) -/* 0CDD24 800CD124 8FA9000C */ lw $t1, 0xc($sp) -/* 0CDD28 800CD128 27190001 */ addiu $t9, $t8, 1 -/* 0CDD2C 800CD12C 032B082A */ slt $at, $t9, $t3 -/* 0CDD30 800CD130 252A0008 */ addiu $t2, $t1, 8 -/* 0CDD34 800CD134 AFAA000C */ sw $t2, 0xc($sp) -/* 0CDD38 800CD138 AFB90000 */ sw $t9, ($sp) -/* 0CDD3C 800CD13C 1420FFE1 */ bnez $at, .L800CD0C4 -/* 0CDD40 800CD140 24840006 */ addiu $a0, $a0, 6 -.L800CD144: -/* 0CDD44 800CD144 03E00008 */ jr $ra -/* 0CDD48 800CD148 27BD0010 */ addiu $sp, $sp, 0x10 - -glabel func_800CD14C -/* 0CDD4C 800CD14C 27BDFFF0 */ addiu $sp, $sp, -0x10 -/* 0CDD50 800CD150 3C0E8013 */ lui $t6, %hi(D_8012CD50) # $t6, 0x8013 -/* 0CDD54 800CD154 25CECD50 */ addiu $t6, %lo(D_8012CD50) # addiu $t6, $t6, -0x32b0 -/* 0CDD58 800CD158 AFAE000C */ sw $t6, 0xc($sp) -/* 0CDD5C 800CD15C AFA00000 */ sw $zero, ($sp) -.L800CD160: -/* 0CDD60 800CD160 8FAF0000 */ lw $t7, ($sp) -/* 0CDD64 800CD164 8FB90000 */ lw $t9, ($sp) -/* 0CDD68 800CD168 3C018013 */ lui $at, 0x8013 -/* 0CDD6C 800CD16C 000FC080 */ sll $t8, $t7, 2 -/* 0CDD70 800CD170 00380821 */ addu $at, $at, $t8 -/* 0CDD74 800CD174 AC20CD50 */ sw $zero, -0x32b0($at) -/* 0CDD78 800CD178 27280001 */ addiu $t0, $t9, 1 -/* 0CDD7C 800CD17C 29010010 */ slti $at, $t0, 0x10 -/* 0CDD80 800CD180 1420FFF7 */ bnez $at, .L800CD160 -/* 0CDD84 800CD184 AFA80000 */ sw $t0, ($sp) -/* 0CDD88 800CD188 3C198013 */ lui $t9, %hi(D_8012CD91) # $t9, 0x8013 -/* 0CDD8C 800CD18C 9339CD91 */ lbu $t9, %lo(D_8012CD91)($t9) -/* 0CDD90 800CD190 24090001 */ li $t1, 1 -/* 0CDD94 800CD194 3C018013 */ lui $at, %hi(D_8012CD8C) # $at, 0x8013 -/* 0CDD98 800CD198 240A00FF */ li $t2, 255 -/* 0CDD9C 800CD19C 240B0001 */ li $t3, 1 -/* 0CDDA0 800CD1A0 240C0004 */ li $t4, 4 -/* 0CDDA4 800CD1A4 240D0001 */ li $t5, 1 -/* 0CDDA8 800CD1A8 340EFFFF */ li $t6, 65535 -/* 0CDDAC 800CD1AC 240FFFFF */ li $t7, -1 -/* 0CDDB0 800CD1B0 2418FFFF */ li $t8, -1 -/* 0CDDB4 800CD1B4 AC29CD8C */ sw $t1, %lo(D_8012CD8C)($at) -/* 0CDDB8 800CD1B8 A3AA0004 */ sb $t2, 4($sp) -/* 0CDDBC 800CD1BC A3AB0005 */ sb $t3, 5($sp) -/* 0CDDC0 800CD1C0 A3AC0006 */ sb $t4, 6($sp) -/* 0CDDC4 800CD1C4 A3AD0007 */ sb $t5, 7($sp) -/* 0CDDC8 800CD1C8 A7AE0008 */ sh $t6, 8($sp) -/* 0CDDCC 800CD1CC A3AF000A */ sb $t7, 0xa($sp) -/* 0CDDD0 800CD1D0 A3B8000B */ sb $t8, 0xb($sp) -/* 0CDDD4 800CD1D4 1B200013 */ blez $t9, .L800CD224 -/* 0CDDD8 800CD1D8 AFA00000 */ sw $zero, ($sp) -.L800CD1DC: -/* 0CDDDC 800CD1DC 27A90004 */ addiu $t1, $sp, 4 -/* 0CDDE0 800CD1E0 8D210000 */ lw $at, ($t1) -/* 0CDDE4 800CD1E4 8FA8000C */ lw $t0, 0xc($sp) -/* 0CDDE8 800CD1E8 3C188013 */ lui $t8, %hi(D_8012CD91) # $t8, 0x8013 -/* 0CDDEC 800CD1EC A9010000 */ swl $at, ($t0) -/* 0CDDF0 800CD1F0 B9010003 */ swr $at, 3($t0) -/* 0CDDF4 800CD1F4 8D2B0004 */ lw $t3, 4($t1) -/* 0CDDF8 800CD1F8 A90B0004 */ swl $t3, 4($t0) -/* 0CDDFC 800CD1FC B90B0007 */ swr $t3, 7($t0) -/* 0CDE00 800CD200 8FAE0000 */ lw $t6, ($sp) -/* 0CDE04 800CD204 9318CD91 */ lbu $t8, %lo(D_8012CD91)($t8) -/* 0CDE08 800CD208 8FAC000C */ lw $t4, 0xc($sp) -/* 0CDE0C 800CD20C 25CF0001 */ addiu $t7, $t6, 1 -/* 0CDE10 800CD210 01F8082A */ slt $at, $t7, $t8 -/* 0CDE14 800CD214 258D0008 */ addiu $t5, $t4, 8 -/* 0CDE18 800CD218 AFAF0000 */ sw $t7, ($sp) -/* 0CDE1C 800CD21C 1420FFEF */ bnez $at, .L800CD1DC -/* 0CDE20 800CD220 AFAD000C */ sw $t5, 0xc($sp) -.L800CD224: -/* 0CDE24 800CD224 8FAA000C */ lw $t2, 0xc($sp) -/* 0CDE28 800CD228 241900FE */ li $t9, 254 -/* 0CDE2C 800CD22C 27BD0010 */ addiu $sp, $sp, 0x10 -/* 0CDE30 800CD230 03E00008 */ jr $ra -/* 0CDE34 800CD234 A1590000 */ sb $t9, ($t2) - -/* 0CDE38 800CD238 00000000 */ nop -/* 0CDE3C 800CD23C 00000000 */ nop diff --git a/asm/unknown_0CDE90.s b/asm/unknown_0CDE90.s deleted file mode 100755 index b457a6d2..00000000 --- a/asm/unknown_0CDE90.s +++ /dev/null @@ -1,248 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_800CD290 -/* 0CDE90 800CD290 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 0CDE94 800CD294 AFBF0014 */ sw $ra, 0x14($sp) -/* 0CDE98 800CD298 240E0003 */ li $t6, 3 -/* 0CDE9C 800CD29C AFA40040 */ sw $a0, 0x40($sp) -/* 0CDEA0 800CD2A0 AFA50044 */ sw $a1, 0x44($sp) -/* 0CDEA4 800CD2A4 AFA0003C */ sw $zero, 0x3c($sp) -/* 0CDEA8 800CD2A8 A3A0001F */ sb $zero, 0x1f($sp) -/* 0CDEAC 800CD2AC 0C033594 */ jal func_800CD650 -/* 0CDEB0 800CD2B0 AFAE0018 */ sw $t6, 0x18($sp) -.L800CD2B4: -/* 0CDEB4 800CD2B4 0C03350C */ jal func_800CD430 -/* 0CDEB8 800CD2B8 00002025 */ move $a0, $zero -/* 0CDEBC 800CD2BC 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013 -/* 0CDEC0 800CD2C0 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220 -/* 0CDEC4 800CD2C4 0C0335B0 */ jal func_800CD6C0 -/* 0CDEC8 800CD2C8 24040001 */ li $a0, 1 -/* 0CDECC 800CD2CC AFA2003C */ sw $v0, 0x3c($sp) -/* 0CDED0 800CD2D0 8FA40040 */ lw $a0, 0x40($sp) -/* 0CDED4 800CD2D4 27A50038 */ addiu $a1, $sp, 0x38 -/* 0CDED8 800CD2D8 0C0322EC */ jal osRecvMesg -/* 0CDEDC 800CD2DC 24060001 */ li $a2, 1 -/* 0CDEE0 800CD2E0 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013 -/* 0CDEE4 800CD2E4 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220 -/* 0CDEE8 800CD2E8 0C0335B0 */ jal func_800CD6C0 -/* 0CDEEC 800CD2EC 00002025 */ move $a0, $zero -/* 0CDEF0 800CD2F0 AFA2003C */ sw $v0, 0x3c($sp) -/* 0CDEF4 800CD2F4 8FA40040 */ lw $a0, 0x40($sp) -/* 0CDEF8 800CD2F8 27A50038 */ addiu $a1, $sp, 0x38 -/* 0CDEFC 800CD2FC 0C0322EC */ jal osRecvMesg -/* 0CDF00 800CD300 24060001 */ li $a2, 1 -/* 0CDF04 800CD304 27A40037 */ addiu $a0, $sp, 0x37 -/* 0CDF08 800CD308 0C03354B */ jal func_800CD52C -/* 0CDF0C 800CD30C 27A50024 */ addiu $a1, $sp, 0x24 -/* 0CDF10 800CD310 3C0F8013 */ lui $t7, %hi(D_8012CD91) # $t7, 0x8013 -/* 0CDF14 800CD314 91EFCD91 */ lbu $t7, %lo(D_8012CD91)($t7) -/* 0CDF18 800CD318 AFA00020 */ sw $zero, 0x20($sp) -/* 0CDF1C 800CD31C 19E00014 */ blez $t7, .L800CD370 -/* 0CDF20 800CD320 00000000 */ nop -.L800CD324: -/* 0CDF24 800CD324 8FB80020 */ lw $t8, 0x20($sp) -/* 0CDF28 800CD328 0018C880 */ sll $t9, $t8, 2 -/* 0CDF2C 800CD32C 03B94021 */ addu $t0, $sp, $t9 -/* 0CDF30 800CD330 91080026 */ lbu $t0, 0x26($t0) -/* 0CDF34 800CD334 31090004 */ andi $t1, $t0, 4 -/* 0CDF38 800CD338 15200005 */ bnez $t1, .L800CD350 -/* 0CDF3C 800CD33C 00000000 */ nop -/* 0CDF40 800CD340 8FAA0018 */ lw $t2, 0x18($sp) -/* 0CDF44 800CD344 254BFFFF */ addiu $t3, $t2, -1 -/* 0CDF48 800CD348 10000009 */ b .L800CD370 -/* 0CDF4C 800CD34C AFAB0018 */ sw $t3, 0x18($sp) -.L800CD350: -/* 0CDF50 800CD350 8FAC0020 */ lw $t4, 0x20($sp) -/* 0CDF54 800CD354 3C0E8013 */ lui $t6, %hi(D_8012CD91) # $t6, 0x8013 -/* 0CDF58 800CD358 91CECD91 */ lbu $t6, %lo(D_8012CD91)($t6) -/* 0CDF5C 800CD35C 258D0001 */ addiu $t5, $t4, 1 -/* 0CDF60 800CD360 AFAD0020 */ sw $t5, 0x20($sp) -/* 0CDF64 800CD364 01AE082A */ slt $at, $t5, $t6 -/* 0CDF68 800CD368 1420FFEE */ bnez $at, .L800CD324 -/* 0CDF6C 800CD36C 00000000 */ nop -.L800CD370: -/* 0CDF70 800CD370 3C0F8013 */ lui $t7, %hi(D_8012CD91) # $t7, 0x8013 -/* 0CDF74 800CD374 91EFCD91 */ lbu $t7, %lo(D_8012CD91)($t7) -/* 0CDF78 800CD378 8FB80020 */ lw $t8, 0x20($sp) -/* 0CDF7C 800CD37C 15F80002 */ bne $t7, $t8, .L800CD388 -/* 0CDF80 800CD380 00000000 */ nop -/* 0CDF84 800CD384 AFA00018 */ sw $zero, 0x18($sp) -.L800CD388: -/* 0CDF88 800CD388 8FB90018 */ lw $t9, 0x18($sp) -/* 0CDF8C 800CD38C 1F20FFC9 */ bgtz $t9, .L800CD2B4 -/* 0CDF90 800CD390 00000000 */ nop -/* 0CDF94 800CD394 3C088013 */ lui $t0, %hi(D_8012CD91) # $t0, 0x8013 -/* 0CDF98 800CD398 9108CD91 */ lbu $t0, %lo(D_8012CD91)($t0) -/* 0CDF9C 800CD39C AFA00020 */ sw $zero, 0x20($sp) -/* 0CDFA0 800CD3A0 19000019 */ blez $t0, .L800CD408 -/* 0CDFA4 800CD3A4 00000000 */ nop -.L800CD3A8: -/* 0CDFA8 800CD3A8 8FA90020 */ lw $t1, 0x20($sp) -/* 0CDFAC 800CD3AC 27AB0024 */ addiu $t3, $sp, 0x24 -/* 0CDFB0 800CD3B0 00095080 */ sll $t2, $t1, 2 -/* 0CDFB4 800CD3B4 014B6021 */ addu $t4, $t2, $t3 -/* 0CDFB8 800CD3B8 918D0003 */ lbu $t5, 3($t4) -/* 0CDFBC 800CD3BC 15A0000A */ bnez $t5, .L800CD3E8 -/* 0CDFC0 800CD3C0 00000000 */ nop -/* 0CDFC4 800CD3C4 918E0002 */ lbu $t6, 2($t4) -/* 0CDFC8 800CD3C8 31CF0001 */ andi $t7, $t6, 1 -/* 0CDFCC 800CD3CC 11E00006 */ beqz $t7, .L800CD3E8 -/* 0CDFD0 800CD3D0 00000000 */ nop -/* 0CDFD4 800CD3D4 93B8001F */ lbu $t8, 0x1f($sp) -/* 0CDFD8 800CD3D8 24190001 */ li $t9, 1 -/* 0CDFDC 800CD3DC 01394004 */ sllv $t0, $t9, $t1 -/* 0CDFE0 800CD3E0 03085025 */ or $t2, $t8, $t0 -/* 0CDFE4 800CD3E4 A3AA001F */ sb $t2, 0x1f($sp) -.L800CD3E8: -/* 0CDFE8 800CD3E8 8FAB0020 */ lw $t3, 0x20($sp) -/* 0CDFEC 800CD3EC 3C0C8013 */ lui $t4, %hi(D_8012CD91) # $t4, 0x8013 -/* 0CDFF0 800CD3F0 918CCD91 */ lbu $t4, %lo(D_8012CD91)($t4) -/* 0CDFF4 800CD3F4 256D0001 */ addiu $t5, $t3, 1 -/* 0CDFF8 800CD3F8 AFAD0020 */ sw $t5, 0x20($sp) -/* 0CDFFC 800CD3FC 01AC082A */ slt $at, $t5, $t4 -/* 0CE000 800CD400 1420FFE9 */ bnez $at, .L800CD3A8 -/* 0CE004 800CD404 00000000 */ nop -.L800CD408: -/* 0CE008 800CD408 0C0335A5 */ jal func_800CD694 -/* 0CE00C 800CD40C 00000000 */ nop -/* 0CE010 800CD410 93AE001F */ lbu $t6, 0x1f($sp) -/* 0CE014 800CD414 8FAF0044 */ lw $t7, 0x44($sp) -/* 0CE018 800CD418 A1EE0000 */ sb $t6, ($t7) -/* 0CE01C 800CD41C 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CE020 800CD420 8FA2003C */ lw $v0, 0x3c($sp) -/* 0CE024 800CD424 27BD0040 */ addiu $sp, $sp, 0x40 -/* 0CE028 800CD428 03E00008 */ jr $ra -/* 0CE02C 800CD42C 00000000 */ nop - -glabel func_800CD430 -/* 0CE030 800CD430 27BDFFF0 */ addiu $sp, $sp, -0x10 -/* 0CE034 800CD434 308400FF */ andi $a0, $a0, 0xff -/* 0CE038 800CD438 3C018013 */ lui $at, %hi(D_8012CD90) # $at, 0x8013 -/* 0CE03C 800CD43C A024CD90 */ sb $a0, %lo(D_8012CD90)($at) -/* 0CE040 800CD440 AFA00000 */ sw $zero, ($sp) -.L800CD444: -/* 0CE044 800CD444 8FAE0000 */ lw $t6, ($sp) -/* 0CE048 800CD448 8FB80000 */ lw $t8, ($sp) -/* 0CE04C 800CD44C 3C018013 */ lui $at, 0x8013 -/* 0CE050 800CD450 000E7880 */ sll $t7, $t6, 2 -/* 0CE054 800CD454 002F0821 */ addu $at, $at, $t7 -/* 0CE058 800CD458 AC20CDE0 */ sw $zero, -0x3220($at) -/* 0CE05C 800CD45C 27190001 */ addiu $t9, $t8, 1 -/* 0CE060 800CD460 2B210010 */ slti $at, $t9, 0x10 -/* 0CE064 800CD464 1420FFF7 */ bnez $at, .L800CD444 -/* 0CE068 800CD468 AFB90000 */ sw $t9, ($sp) -/* 0CE06C 800CD46C 3C198013 */ lui $t9, %hi(D_8012CD91) # $t9, 0x8013 -/* 0CE070 800CD470 9339CD91 */ lbu $t9, %lo(D_8012CD91)($t9) -/* 0CE074 800CD474 3C098013 */ lui $t1, %hi(D_8012CDE0) # $t1, 0x8013 -/* 0CE078 800CD478 24080001 */ li $t0, 1 -/* 0CE07C 800CD47C 3C018013 */ lui $at, %hi(D_8012CE1C) # $at, 0x8013 -/* 0CE080 800CD480 2529CDE0 */ addiu $t1, %lo(D_8012CDE0) # addiu $t1, $t1, -0x3220 -/* 0CE084 800CD484 240A00FF */ li $t2, 255 -/* 0CE088 800CD488 240B0001 */ li $t3, 1 -/* 0CE08C 800CD48C 240C0003 */ li $t4, 3 -/* 0CE090 800CD490 240D00FF */ li $t5, 255 -/* 0CE094 800CD494 240E00FF */ li $t6, 255 -/* 0CE098 800CD498 240F00FF */ li $t7, 255 -/* 0CE09C 800CD49C 241800FF */ li $t8, 255 -/* 0CE0A0 800CD4A0 AC28CE1C */ sw $t0, %lo(D_8012CE1C)($at) -/* 0CE0A4 800CD4A4 AFA9000C */ sw $t1, 0xc($sp) -/* 0CE0A8 800CD4A8 A3AA0004 */ sb $t2, 4($sp) -/* 0CE0AC 800CD4AC A3AB0005 */ sb $t3, 5($sp) -/* 0CE0B0 800CD4B0 A3AC0006 */ sb $t4, 6($sp) -/* 0CE0B4 800CD4B4 A3A40007 */ sb $a0, 7($sp) -/* 0CE0B8 800CD4B8 A3AD0008 */ sb $t5, 8($sp) -/* 0CE0BC 800CD4BC A3AE0009 */ sb $t6, 9($sp) -/* 0CE0C0 800CD4C0 A3AF000A */ sb $t7, 0xa($sp) -/* 0CE0C4 800CD4C4 A3B8000B */ sb $t8, 0xb($sp) -/* 0CE0C8 800CD4C8 1B200013 */ blez $t9, .L800CD518 -/* 0CE0CC 800CD4CC AFA00000 */ sw $zero, ($sp) -.L800CD4D0: -/* 0CE0D0 800CD4D0 27A90004 */ addiu $t1, $sp, 4 -/* 0CE0D4 800CD4D4 8D210000 */ lw $at, ($t1) -/* 0CE0D8 800CD4D8 8FA8000C */ lw $t0, 0xc($sp) -/* 0CE0DC 800CD4DC 3C188013 */ lui $t8, %hi(D_8012CD91) # $t8, 0x8013 -/* 0CE0E0 800CD4E0 A9010000 */ swl $at, ($t0) -/* 0CE0E4 800CD4E4 B9010003 */ swr $at, 3($t0) -/* 0CE0E8 800CD4E8 8D2B0004 */ lw $t3, 4($t1) -/* 0CE0EC 800CD4EC A90B0004 */ swl $t3, 4($t0) -/* 0CE0F0 800CD4F0 B90B0007 */ swr $t3, 7($t0) -/* 0CE0F4 800CD4F4 8FAE0000 */ lw $t6, ($sp) -/* 0CE0F8 800CD4F8 9318CD91 */ lbu $t8, %lo(D_8012CD91)($t8) -/* 0CE0FC 800CD4FC 8FAC000C */ lw $t4, 0xc($sp) -/* 0CE100 800CD500 25CF0001 */ addiu $t7, $t6, 1 -/* 0CE104 800CD504 01F8082A */ slt $at, $t7, $t8 -/* 0CE108 800CD508 258D0008 */ addiu $t5, $t4, 8 -/* 0CE10C 800CD50C AFAF0000 */ sw $t7, ($sp) -/* 0CE110 800CD510 1420FFEF */ bnez $at, .L800CD4D0 -/* 0CE114 800CD514 AFAD000C */ sw $t5, 0xc($sp) -.L800CD518: -/* 0CE118 800CD518 8FAA000C */ lw $t2, 0xc($sp) -/* 0CE11C 800CD51C 241900FE */ li $t9, 254 -/* 0CE120 800CD520 27BD0010 */ addiu $sp, $sp, 0x10 -/* 0CE124 800CD524 03E00008 */ jr $ra -/* 0CE128 800CD528 A1590000 */ sb $t9, ($t2) - -glabel func_800CD52C -/* 0CE12C 800CD52C 3C0F8013 */ lui $t7, %hi(D_8012CD91) # $t7, 0x8013 -/* 0CE130 800CD530 91EFCD91 */ lbu $t7, %lo(D_8012CD91)($t7) -/* 0CE134 800CD534 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0CE138 800CD538 3C0E8013 */ lui $t6, %hi(D_8012CDE0) # $t6, 0x8013 -/* 0CE13C 800CD53C 25CECDE0 */ addiu $t6, %lo(D_8012CDE0) # addiu $t6, $t6, -0x3220 -/* 0CE140 800CD540 A3A00007 */ sb $zero, 7($sp) -/* 0CE144 800CD544 AFAE0014 */ sw $t6, 0x14($sp) -/* 0CE148 800CD548 19E00028 */ blez $t7, .L800CD5EC -/* 0CE14C 800CD54C AFA00008 */ sw $zero, 8($sp) -.L800CD550: -/* 0CE150 800CD550 8FB90014 */ lw $t9, 0x14($sp) -/* 0CE154 800CD554 27B8000C */ addiu $t8, $sp, 0xc -/* 0CE158 800CD558 8B210000 */ lwl $at, ($t9) -/* 0CE15C 800CD55C 9B210003 */ lwr $at, 3($t9) -/* 0CE160 800CD560 AF010000 */ sw $at, ($t8) -/* 0CE164 800CD564 8B290004 */ lwl $t1, 4($t9) -/* 0CE168 800CD568 9B290007 */ lwr $t1, 7($t9) -/* 0CE16C 800CD56C AF090004 */ sw $t1, 4($t8) -/* 0CE170 800CD570 93AA000E */ lbu $t2, 0xe($sp) -/* 0CE174 800CD574 314B00C0 */ andi $t3, $t2, 0xc0 -/* 0CE178 800CD578 000B6103 */ sra $t4, $t3, 4 -/* 0CE17C 800CD57C A0AC0003 */ sb $t4, 3($a1) -/* 0CE180 800CD580 90AD0003 */ lbu $t5, 3($a1) -/* 0CE184 800CD584 15A0000E */ bnez $t5, .L800CD5C0 -/* 0CE188 800CD588 00000000 */ nop -/* 0CE18C 800CD58C 93AE0011 */ lbu $t6, 0x11($sp) -/* 0CE190 800CD590 93A80010 */ lbu $t0, 0x10($sp) -/* 0CE194 800CD594 240B0001 */ li $t3, 1 -/* 0CE198 800CD598 000E7A00 */ sll $t7, $t6, 8 -/* 0CE19C 800CD59C 01E8C025 */ or $t8, $t7, $t0 -/* 0CE1A0 800CD5A0 A4B80000 */ sh $t8, ($a1) -/* 0CE1A4 800CD5A4 93B90012 */ lbu $t9, 0x12($sp) -/* 0CE1A8 800CD5A8 A0B90002 */ sb $t9, 2($a1) -/* 0CE1AC 800CD5AC 8FAA0008 */ lw $t2, 8($sp) -/* 0CE1B0 800CD5B0 93A90007 */ lbu $t1, 7($sp) -/* 0CE1B4 800CD5B4 014B6004 */ sllv $t4, $t3, $t2 -/* 0CE1B8 800CD5B8 012C6825 */ or $t5, $t1, $t4 -/* 0CE1BC 800CD5BC A3AD0007 */ sb $t5, 7($sp) -.L800CD5C0: -/* 0CE1C0 800CD5C0 8FAE0008 */ lw $t6, 8($sp) -/* 0CE1C4 800CD5C4 3C198013 */ lui $t9, %hi(D_8012CD91) # $t9, 0x8013 -/* 0CE1C8 800CD5C8 9339CD91 */ lbu $t9, %lo(D_8012CD91)($t9) -/* 0CE1CC 800CD5CC 8FA80014 */ lw $t0, 0x14($sp) -/* 0CE1D0 800CD5D0 25CF0001 */ addiu $t7, $t6, 1 -/* 0CE1D4 800CD5D4 01F9082A */ slt $at, $t7, $t9 -/* 0CE1D8 800CD5D8 25180008 */ addiu $t8, $t0, 8 -/* 0CE1DC 800CD5DC AFB80014 */ sw $t8, 0x14($sp) -/* 0CE1E0 800CD5E0 AFAF0008 */ sw $t7, 8($sp) -/* 0CE1E4 800CD5E4 1420FFDA */ bnez $at, .L800CD550 -/* 0CE1E8 800CD5E8 24A50004 */ addiu $a1, $a1, 4 -.L800CD5EC: -/* 0CE1EC 800CD5EC 93AB0007 */ lbu $t3, 7($sp) -/* 0CE1F0 800CD5F0 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0CE1F4 800CD5F4 03E00008 */ jr $ra -/* 0CE1F8 800CD5F8 A08B0000 */ sb $t3, ($a0) - -/* 0CE1FC 800CD5FC 00000000 */ nop diff --git a/asm/unknown_0CE200.s b/asm/unknown_0CE200.s deleted file mode 100755 index f23ae40e..00000000 --- a/asm/unknown_0CE200.s +++ /dev/null @@ -1,115 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_800CD600 -/* 0CE200 800CD600 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0CE204 800CD604 AFBF0014 */ sw $ra, 0x14($sp) -/* 0CE208 800CD608 240E0001 */ li $t6, 1 -/* 0CE20C 800CD60C 3C01800E */ lui $at, %hi(D_800E38D0) # $at, 0x800e -/* 0CE210 800CD610 3C048013 */ lui $a0, %hi(D_8012CE28) # $a0, 0x8013 -/* 0CE214 800CD614 3C058013 */ lui $a1, %hi(D_8012CE20) # $a1, 0x8013 -/* 0CE218 800CD618 AC2E38D0 */ sw $t6, %lo(D_800E38D0)($at) -/* 0CE21C 800CD61C 24A5CE20 */ addiu $a1, %lo(D_8012CE20) # addiu $a1, $a1, -0x31e0 -/* 0CE220 800CD620 2484CE28 */ addiu $a0, %lo(D_8012CE28) # addiu $a0, $a0, -0x31d8 -/* 0CE224 800CD624 0C032208 */ jal osCreateMesgQueue -/* 0CE228 800CD628 24060001 */ li $a2, 1 -/* 0CE22C 800CD62C 3C048013 */ lui $a0, %hi(D_8012CE28) # $a0, 0x8013 -/* 0CE230 800CD630 2484CE28 */ addiu $a0, %lo(D_8012CE28) # addiu $a0, $a0, -0x31d8 -/* 0CE234 800CD634 00002825 */ move $a1, $zero -/* 0CE238 800CD638 0C03238C */ jal func_800C8E30 -/* 0CE23C 800CD63C 00003025 */ move $a2, $zero -/* 0CE240 800CD640 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CE244 800CD644 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0CE248 800CD648 03E00008 */ jr $ra -/* 0CE24C 800CD64C 00000000 */ nop - -glabel func_800CD650 -/* 0CE250 800CD650 3C0E800E */ lui $t6, %hi(D_800E38D0) # $t6, 0x800e -/* 0CE254 800CD654 8DCE38D0 */ lw $t6, %lo(D_800E38D0)($t6) -/* 0CE258 800CD658 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0CE25C 800CD65C AFBF0014 */ sw $ra, 0x14($sp) -/* 0CE260 800CD660 15C00003 */ bnez $t6, .L800CD670 -/* 0CE264 800CD664 00000000 */ nop -/* 0CE268 800CD668 0C033580 */ jal func_800CD600 -/* 0CE26C 800CD66C 00000000 */ nop -.L800CD670: -/* 0CE270 800CD670 3C048013 */ lui $a0, %hi(D_8012CE28) # $a0, 0x8013 -/* 0CE274 800CD674 2484CE28 */ addiu $a0, %lo(D_8012CE28) # addiu $a0, $a0, -0x31d8 -/* 0CE278 800CD678 27A5001C */ addiu $a1, $sp, 0x1c -/* 0CE27C 800CD67C 0C0322EC */ jal osRecvMesg -/* 0CE280 800CD680 24060001 */ li $a2, 1 -/* 0CE284 800CD684 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CE288 800CD688 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0CE28C 800CD68C 03E00008 */ jr $ra -/* 0CE290 800CD690 00000000 */ nop - -glabel func_800CD694 -/* 0CE294 800CD694 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0CE298 800CD698 AFBF0014 */ sw $ra, 0x14($sp) -/* 0CE29C 800CD69C 3C048013 */ lui $a0, %hi(D_8012CE28) # $a0, 0x8013 -/* 0CE2A0 800CD6A0 2484CE28 */ addiu $a0, %lo(D_8012CE28) # addiu $a0, $a0, -0x31d8 -/* 0CE2A4 800CD6A4 00002825 */ move $a1, $zero -/* 0CE2A8 800CD6A8 0C03238C */ jal func_800C8E30 -/* 0CE2AC 800CD6AC 00003025 */ move $a2, $zero -/* 0CE2B0 800CD6B0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CE2B4 800CD6B4 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0CE2B8 800CD6B8 03E00008 */ jr $ra -/* 0CE2BC 800CD6BC 00000000 */ nop - -glabel func_800CD6C0 -/* 0CE2C0 800CD6C0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0CE2C4 800CD6C4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0CE2C8 800CD6C8 AFA40018 */ sw $a0, 0x18($sp) -/* 0CE2CC 800CD6CC 0C0354B0 */ jal func_800D52C0 -/* 0CE2D0 800CD6D0 AFA5001C */ sw $a1, 0x1c($sp) -/* 0CE2D4 800CD6D4 10400003 */ beqz $v0, .L800CD6E4 -/* 0CE2D8 800CD6D8 00000000 */ nop -/* 0CE2DC 800CD6DC 1000001F */ b .L800CD75C -/* 0CE2E0 800CD6E0 2402FFFF */ li $v0, -1 -.L800CD6E4: -/* 0CE2E4 800CD6E4 8FAE0018 */ lw $t6, 0x18($sp) -/* 0CE2E8 800CD6E8 24010001 */ li $at, 1 -/* 0CE2EC 800CD6EC 15C10004 */ bne $t6, $at, .L800CD700 -/* 0CE2F0 800CD6F0 00000000 */ nop -/* 0CE2F4 800CD6F4 8FA4001C */ lw $a0, 0x1c($sp) -/* 0CE2F8 800CD6F8 0C03518C */ jal func_800D4630 -/* 0CE2FC 800CD6FC 24050040 */ li $a1, 64 -.L800CD700: -/* 0CE300 800CD700 0C03233C */ jal func_800C8CF0 -/* 0CE304 800CD704 8FA4001C */ lw $a0, 0x1c($sp) -/* 0CE308 800CD708 3C0FA480 */ lui $t7, 0xa480 -/* 0CE30C 800CD70C ADE20000 */ sw $v0, ($t7) -/* 0CE310 800CD710 8FB80018 */ lw $t8, 0x18($sp) -/* 0CE314 800CD714 17000006 */ bnez $t8, .L800CD730 -/* 0CE318 800CD718 00000000 */ nop -/* 0CE31C 800CD71C 3C191FC0 */ lui $t9, (0x1FC007C0 >> 16) # lui $t9, 0x1fc0 -/* 0CE320 800CD720 373907C0 */ ori $t9, (0x1FC007C0 & 0xFFFF) # ori $t9, $t9, 0x7c0 -/* 0CE324 800CD724 3C08A480 */ lui $t0, %hi(D_A4800004) # $t0, 0xa480 -/* 0CE328 800CD728 10000005 */ b .L800CD740 -/* 0CE32C 800CD72C AD190004 */ sw $t9, %lo(D_A4800004)($t0) -.L800CD730: -/* 0CE330 800CD730 3C091FC0 */ lui $t1, (0x1FC007C0 >> 16) # lui $t1, 0x1fc0 -/* 0CE334 800CD734 352907C0 */ ori $t1, (0x1FC007C0 & 0xFFFF) # ori $t1, $t1, 0x7c0 -/* 0CE338 800CD738 3C0AA480 */ lui $t2, %hi(D_A4800010) # $t2, 0xa480 -/* 0CE33C 800CD73C AD490010 */ sw $t1, %lo(D_A4800010)($t2) -.L800CD740: -/* 0CE340 800CD740 8FAB0018 */ lw $t3, 0x18($sp) -/* 0CE344 800CD744 15600004 */ bnez $t3, .L800CD758 -/* 0CE348 800CD748 00000000 */ nop -/* 0CE34C 800CD74C 8FA4001C */ lw $a0, 0x1c($sp) -/* 0CE350 800CD750 0C0345FC */ jal func_800D17F0 -/* 0CE354 800CD754 24050040 */ li $a1, 64 -.L800CD758: -/* 0CE358 800CD758 00001025 */ move $v0, $zero -.L800CD75C: -/* 0CE35C 800CD75C 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CE360 800CD760 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0CE364 800CD764 03E00008 */ jr $ra -/* 0CE368 800CD768 00000000 */ nop - -/* 0CE36C 800CD76C 00000000 */ nop diff --git a/asm/unknown_0CE370.s b/asm/unknown_0CE370.s deleted file mode 100755 index 55780b18..00000000 --- a/asm/unknown_0CE370.s +++ /dev/null @@ -1,376 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_800CD770 -/* 0CE370 800CD770 27BDFFF0 */ addiu $sp, $sp, -0x10 -/* 0CE374 800CD774 3084FFFF */ andi $a0, $a0, 0xffff -/* 0CE378 800CD778 A3A0000F */ sb $zero, 0xf($sp) -/* 0CE37C 800CD77C AFA00008 */ sw $zero, 8($sp) -.L800CD780: -/* 0CE380 800CD780 93AE000F */ lbu $t6, 0xf($sp) -/* 0CE384 800CD784 31CF0010 */ andi $t7, $t6, 0x10 -/* 0CE388 800CD788 11E00004 */ beqz $t7, .L800CD79C -/* 0CE38C 800CD78C 00000000 */ nop -/* 0CE390 800CD790 24180015 */ li $t8, 21 -/* 0CE394 800CD794 10000002 */ b .L800CD7A0 -/* 0CE398 800CD798 A3B8000E */ sb $t8, 0xe($sp) -.L800CD79C: -/* 0CE39C 800CD79C A3A0000E */ sb $zero, 0xe($sp) -.L800CD7A0: -/* 0CE3A0 800CD7A0 93B9000F */ lbu $t9, 0xf($sp) -/* 0CE3A4 800CD7A4 30890400 */ andi $t1, $a0, 0x400 -/* 0CE3A8 800CD7A8 00194040 */ sll $t0, $t9, 1 -/* 0CE3AC 800CD7AC 11200003 */ beqz $t1, .L800CD7BC -/* 0CE3B0 800CD7B0 A3A8000F */ sb $t0, 0xf($sp) -/* 0CE3B4 800CD7B4 10000002 */ b .L800CD7C0 -/* 0CE3B8 800CD7B8 24050001 */ li $a1, 1 -.L800CD7BC: -/* 0CE3BC 800CD7BC 00002825 */ move $a1, $zero -.L800CD7C0: -/* 0CE3C0 800CD7C0 93AA000F */ lbu $t2, 0xf($sp) -/* 0CE3C4 800CD7C4 8FA80008 */ lw $t0, 8($sp) -/* 0CE3C8 800CD7C8 93AF000E */ lbu $t7, 0xe($sp) -/* 0CE3CC 800CD7CC 30AB00FF */ andi $t3, $a1, 0xff -/* 0CE3D0 800CD7D0 00046840 */ sll $t5, $a0, 1 -/* 0CE3D4 800CD7D4 014B6025 */ or $t4, $t2, $t3 -/* 0CE3D8 800CD7D8 01A02025 */ move $a0, $t5 -/* 0CE3DC 800CD7DC 319800FF */ andi $t8, $t4, 0xff -/* 0CE3E0 800CD7E0 25090001 */ addiu $t1, $t0, 1 -/* 0CE3E4 800CD7E4 29210010 */ slti $at, $t1, 0x10 -/* 0CE3E8 800CD7E8 A3AC000F */ sb $t4, 0xf($sp) -/* 0CE3EC 800CD7EC 308EFFFF */ andi $t6, $a0, 0xffff -/* 0CE3F0 800CD7F0 030FC826 */ xor $t9, $t8, $t7 -/* 0CE3F4 800CD7F4 AFA90008 */ sw $t1, 8($sp) -/* 0CE3F8 800CD7F8 01C02025 */ move $a0, $t6 -/* 0CE3FC 800CD7FC 1420FFE0 */ bnez $at, .L800CD780 -/* 0CE400 800CD800 A3B9000F */ sb $t9, 0xf($sp) -/* 0CE404 800CD804 93A2000F */ lbu $v0, 0xf($sp) -/* 0CE408 800CD808 27BD0010 */ addiu $sp, $sp, 0x10 -/* 0CE40C 800CD80C 304A001F */ andi $t2, $v0, 0x1f -/* 0CE410 800CD810 01401025 */ move $v0, $t2 -/* 0CE414 800CD814 304B00FF */ andi $t3, $v0, 0xff -/* 0CE418 800CD818 03E00008 */ jr $ra -/* 0CE41C 800CD81C 01601025 */ move $v0, $t3 - -glabel func_800CD820 -/* 0CE420 800CD820 27BDFFF0 */ addiu $sp, $sp, -0x10 -/* 0CE424 800CD824 A3A0000F */ sb $zero, 0xf($sp) -/* 0CE428 800CD828 AFA00008 */ sw $zero, 8($sp) -.L800CD82C: -/* 0CE42C 800CD82C 240E0007 */ li $t6, 7 -/* 0CE430 800CD830 AFAE0004 */ sw $t6, 4($sp) -.L800CD834: -/* 0CE434 800CD834 93AF000F */ lbu $t7, 0xf($sp) -/* 0CE438 800CD838 31F80080 */ andi $t8, $t7, 0x80 -/* 0CE43C 800CD83C 13000004 */ beqz $t8, .L800CD850 -/* 0CE440 800CD840 00000000 */ nop -/* 0CE444 800CD844 24190085 */ li $t9, 133 -/* 0CE448 800CD848 10000002 */ b .L800CD854 -/* 0CE44C 800CD84C A3B9000E */ sb $t9, 0xe($sp) -.L800CD850: -/* 0CE450 800CD850 A3A0000E */ sb $zero, 0xe($sp) -.L800CD854: -/* 0CE454 800CD854 93A8000F */ lbu $t0, 0xf($sp) -/* 0CE458 800CD858 8FAA0008 */ lw $t2, 8($sp) -/* 0CE45C 800CD85C 24010020 */ li $at, 32 -/* 0CE460 800CD860 00084840 */ sll $t1, $t0, 1 -/* 0CE464 800CD864 15410004 */ bne $t2, $at, .L800CD878 -/* 0CE468 800CD868 A3A9000F */ sb $t1, 0xf($sp) -/* 0CE46C 800CD86C 312B00FF */ andi $t3, $t1, 0xff -/* 0CE470 800CD870 1000000E */ b .L800CD8AC -/* 0CE474 800CD874 A3AB000F */ sb $t3, 0xf($sp) -.L800CD878: -/* 0CE478 800CD878 8FAD0004 */ lw $t5, 4($sp) -/* 0CE47C 800CD87C 908C0000 */ lbu $t4, ($a0) -/* 0CE480 800CD880 240E0001 */ li $t6, 1 -/* 0CE484 800CD884 01AE7804 */ sllv $t7, $t6, $t5 -/* 0CE488 800CD888 018FC024 */ and $t8, $t4, $t7 -/* 0CE48C 800CD88C 13000003 */ beqz $t8, .L800CD89C -/* 0CE490 800CD890 00000000 */ nop -/* 0CE494 800CD894 10000002 */ b .L800CD8A0 -/* 0CE498 800CD898 24050001 */ li $a1, 1 -.L800CD89C: -/* 0CE49C 800CD89C 00002825 */ move $a1, $zero -.L800CD8A0: -/* 0CE4A0 800CD8A0 93B9000F */ lbu $t9, 0xf($sp) -/* 0CE4A4 800CD8A4 03254025 */ or $t0, $t9, $a1 -/* 0CE4A8 800CD8A8 A3A8000F */ sb $t0, 0xf($sp) -.L800CD8AC: -/* 0CE4AC 800CD8AC 8FAE0004 */ lw $t6, 4($sp) -/* 0CE4B0 800CD8B0 93AA000F */ lbu $t2, 0xf($sp) -/* 0CE4B4 800CD8B4 93A9000E */ lbu $t1, 0xe($sp) -/* 0CE4B8 800CD8B8 25CDFFFF */ addiu $t5, $t6, -1 -/* 0CE4BC 800CD8BC AFAD0004 */ sw $t5, 4($sp) -/* 0CE4C0 800CD8C0 01495826 */ xor $t3, $t2, $t1 -/* 0CE4C4 800CD8C4 05A1FFDB */ bgez $t5, .L800CD834 -/* 0CE4C8 800CD8C8 A3AB000F */ sb $t3, 0xf($sp) -/* 0CE4CC 800CD8CC 8FAC0008 */ lw $t4, 8($sp) -/* 0CE4D0 800CD8D0 24840001 */ addiu $a0, $a0, 1 -/* 0CE4D4 800CD8D4 258F0001 */ addiu $t7, $t4, 1 -/* 0CE4D8 800CD8D8 29E10021 */ slti $at, $t7, 0x21 -/* 0CE4DC 800CD8DC 1420FFD3 */ bnez $at, .L800CD82C -/* 0CE4E0 800CD8E0 AFAF0008 */ sw $t7, 8($sp) -/* 0CE4E4 800CD8E4 93A2000F */ lbu $v0, 0xf($sp) -/* 0CE4E8 800CD8E8 03E00008 */ jr $ra -/* 0CE4EC 800CD8EC 27BD0010 */ addiu $sp, $sp, 0x10 - -glabel func_800CD8F0 -/* 0CE4F0 800CD8F0 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 0CE4F4 800CD8F4 8FB80070 */ lw $t8, 0x70($sp) -/* 0CE4F8 800CD8F8 3C0E8013 */ lui $t6, %hi(D_8012CDE0) # $t6, 0x8013 -/* 0CE4FC 800CD8FC 25CECDE0 */ addiu $t6, %lo(D_8012CDE0) # addiu $t6, $t6, -0x3220 -/* 0CE500 800CD900 240F0002 */ li $t7, 2 -/* 0CE504 800CD904 24010001 */ li $at, 1 -/* 0CE508 800CD908 AFBF001C */ sw $ra, 0x1c($sp) -/* 0CE50C 800CD90C AFA40060 */ sw $a0, 0x60($sp) -/* 0CE510 800CD910 AFA50064 */ sw $a1, 0x64($sp) -/* 0CE514 800CD914 AFA60068 */ sw $a2, 0x68($sp) -/* 0CE518 800CD918 AFA7006C */ sw $a3, 0x6c($sp) -/* 0CE51C 800CD91C AFB00018 */ sw $s0, 0x18($sp) -/* 0CE520 800CD920 AFA0005C */ sw $zero, 0x5c($sp) -/* 0CE524 800CD924 AFAE0054 */ sw $t6, 0x54($sp) -/* 0CE528 800CD928 13010009 */ beq $t8, $at, .L800CD950 -/* 0CE52C 800CD92C AFAF0028 */ sw $t7, 0x28($sp) -/* 0CE530 800CD930 97B9006A */ lhu $t9, 0x6a($sp) -/* 0CE534 800CD934 2B210007 */ slti $at, $t9, 7 -/* 0CE538 800CD938 10200005 */ beqz $at, .L800CD950 -/* 0CE53C 800CD93C 00000000 */ nop -/* 0CE540 800CD940 13200003 */ beqz $t9, .L800CD950 -/* 0CE544 800CD944 00000000 */ nop -/* 0CE548 800CD948 10000070 */ b .L800CDB0C -/* 0CE54C 800CD94C 00001025 */ move $v0, $zero -.L800CD950: -/* 0CE550 800CD950 0C033594 */ jal func_800CD650 -/* 0CE554 800CD954 00000000 */ nop -/* 0CE558 800CD958 24080003 */ li $t0, 3 -/* 0CE55C 800CD95C 3C018013 */ lui $at, %hi(D_8012CD90) # $at, 0x8013 -/* 0CE560 800CD960 A028CD90 */ sb $t0, %lo(D_8012CD90)($at) -/* 0CE564 800CD964 8FA40064 */ lw $a0, 0x64($sp) -/* 0CE568 800CD968 97A5006A */ lhu $a1, 0x6a($sp) -/* 0CE56C 800CD96C 0C0336C8 */ jal func_800CDB20 -/* 0CE570 800CD970 8FA6006C */ lw $a2, 0x6c($sp) -/* 0CE574 800CD974 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013 -/* 0CE578 800CD978 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220 -/* 0CE57C 800CD97C 0C0335B0 */ jal func_800CD6C0 -/* 0CE580 800CD980 24040001 */ li $a0, 1 -/* 0CE584 800CD984 AFA2005C */ sw $v0, 0x5c($sp) -/* 0CE588 800CD988 8FA40060 */ lw $a0, 0x60($sp) -/* 0CE58C 800CD98C 00002825 */ move $a1, $zero -/* 0CE590 800CD990 0C0322EC */ jal osRecvMesg -/* 0CE594 800CD994 24060001 */ li $a2, 1 -.L800CD998: -/* 0CE598 800CD998 AFA00058 */ sw $zero, 0x58($sp) -.L800CD99C: -/* 0CE59C 800CD99C 8FAA0058 */ lw $t2, 0x58($sp) -/* 0CE5A0 800CD9A0 8FAC0058 */ lw $t4, 0x58($sp) -/* 0CE5A4 800CD9A4 3C018013 */ lui $at, 0x8013 -/* 0CE5A8 800CD9A8 000A5880 */ sll $t3, $t2, 2 -/* 0CE5AC 800CD9AC 002B0821 */ addu $at, $at, $t3 -/* 0CE5B0 800CD9B0 240900FF */ li $t1, 255 -/* 0CE5B4 800CD9B4 AC29CDE0 */ sw $t1, -0x3220($at) -/* 0CE5B8 800CD9B8 258D0001 */ addiu $t5, $t4, 1 -/* 0CE5BC 800CD9BC 29A10010 */ slti $at, $t5, 0x10 -/* 0CE5C0 800CD9C0 1420FFF6 */ bnez $at, .L800CD99C -/* 0CE5C4 800CD9C4 AFAD0058 */ sw $t5, 0x58($sp) -/* 0CE5C8 800CD9C8 3C018013 */ lui $at, %hi(D_8012CE1C) # $at, 0x8013 -/* 0CE5CC 800CD9CC 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013 -/* 0CE5D0 800CD9D0 AC20CE1C */ sw $zero, %lo(D_8012CE1C)($at) -/* 0CE5D4 800CD9D4 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220 -/* 0CE5D8 800CD9D8 0C0335B0 */ jal func_800CD6C0 -/* 0CE5DC 800CD9DC 00002025 */ move $a0, $zero -/* 0CE5E0 800CD9E0 AFA2005C */ sw $v0, 0x5c($sp) -/* 0CE5E4 800CD9E4 8FA40060 */ lw $a0, 0x60($sp) -/* 0CE5E8 800CD9E8 00002825 */ move $a1, $zero -/* 0CE5EC 800CD9EC 0C0322EC */ jal osRecvMesg -/* 0CE5F0 800CD9F0 24060001 */ li $a2, 1 -/* 0CE5F4 800CD9F4 8FAF0064 */ lw $t7, 0x64($sp) -/* 0CE5F8 800CD9F8 3C0E8013 */ lui $t6, %hi(D_8012CDE0) # $t6, 0x8013 -/* 0CE5FC 800CD9FC 25CECDE0 */ addiu $t6, %lo(D_8012CDE0) # addiu $t6, $t6, -0x3220 -/* 0CE600 800CDA00 11E0000C */ beqz $t7, .L800CDA34 -/* 0CE604 800CDA04 AFAE0054 */ sw $t6, 0x54($sp) -/* 0CE608 800CDA08 19E0000A */ blez $t7, .L800CDA34 -/* 0CE60C 800CDA0C AFA00058 */ sw $zero, 0x58($sp) -.L800CDA10: -/* 0CE610 800CDA10 8FA80058 */ lw $t0, 0x58($sp) -/* 0CE614 800CDA14 8FA90064 */ lw $t1, 0x64($sp) -/* 0CE618 800CDA18 8FB80054 */ lw $t8, 0x54($sp) -/* 0CE61C 800CDA1C 250A0001 */ addiu $t2, $t0, 1 -/* 0CE620 800CDA20 0149082A */ slt $at, $t2, $t1 -/* 0CE624 800CDA24 27190001 */ addiu $t9, $t8, 1 -/* 0CE628 800CDA28 AFAA0058 */ sw $t2, 0x58($sp) -/* 0CE62C 800CDA2C 1420FFF8 */ bnez $at, .L800CDA10 -/* 0CE630 800CDA30 AFB90054 */ sw $t9, 0x54($sp) -.L800CDA34: -/* 0CE634 800CDA34 8FAC0054 */ lw $t4, 0x54($sp) -/* 0CE638 800CDA38 27AB002C */ addiu $t3, $sp, 0x2c -/* 0CE63C 800CDA3C 258E0024 */ addiu $t6, $t4, 0x24 -.L800CDA40: -/* 0CE640 800CDA40 89810000 */ lwl $at, ($t4) -/* 0CE644 800CDA44 99810003 */ lwr $at, 3($t4) -/* 0CE648 800CDA48 258C000C */ addiu $t4, $t4, 0xc -/* 0CE64C 800CDA4C 256B000C */ addiu $t3, $t3, 0xc -/* 0CE650 800CDA50 AD61FFF4 */ sw $at, -0xc($t3) -/* 0CE654 800CDA54 8981FFF8 */ lwl $at, -8($t4) -/* 0CE658 800CDA58 9981FFFB */ lwr $at, -5($t4) -/* 0CE65C 800CDA5C AD61FFF8 */ sw $at, -8($t3) -/* 0CE660 800CDA60 8981FFFC */ lwl $at, -4($t4) -/* 0CE664 800CDA64 9981FFFF */ lwr $at, -1($t4) -/* 0CE668 800CDA68 158EFFF5 */ bne $t4, $t6, .L800CDA40 -/* 0CE66C 800CDA6C AD61FFFC */ sw $at, -4($t3) -/* 0CE670 800CDA70 89810000 */ lwl $at, ($t4) -/* 0CE674 800CDA74 99810003 */ lwr $at, 3($t4) -/* 0CE678 800CDA78 AD610000 */ sw $at, ($t3) -/* 0CE67C 800CDA7C 93AF002E */ lbu $t7, 0x2e($sp) -/* 0CE680 800CDA80 31F800C0 */ andi $t8, $t7, 0xc0 -/* 0CE684 800CDA84 0018C903 */ sra $t9, $t8, 4 -/* 0CE688 800CDA88 17200013 */ bnez $t9, .L800CDAD8 -/* 0CE68C 800CDA8C AFB9005C */ sw $t9, 0x5c($sp) -/* 0CE690 800CDA90 0C033608 */ jal func_800CD820 -/* 0CE694 800CDA94 8FA4006C */ lw $a0, 0x6c($sp) -/* 0CE698 800CDA98 93A80052 */ lbu $t0, 0x52($sp) -/* 0CE69C 800CDA9C 1048000E */ beq $v0, $t0, .L800CDAD8 -/* 0CE6A0 800CDAA0 00000000 */ nop -/* 0CE6A4 800CDAA4 8FA40060 */ lw $a0, 0x60($sp) -/* 0CE6A8 800CDAA8 0C033B75 */ jal func_800CEDD4 -/* 0CE6AC 800CDAAC 8FA50064 */ lw $a1, 0x64($sp) -/* 0CE6B0 800CDAB0 AFA2005C */ sw $v0, 0x5c($sp) -/* 0CE6B4 800CDAB4 8FAA005C */ lw $t2, 0x5c($sp) -/* 0CE6B8 800CDAB8 11400005 */ beqz $t2, .L800CDAD0 -/* 0CE6BC 800CDABC 00000000 */ nop -/* 0CE6C0 800CDAC0 0C0335A5 */ jal func_800CD694 -/* 0CE6C4 800CDAC4 00000000 */ nop -/* 0CE6C8 800CDAC8 10000010 */ b .L800CDB0C -/* 0CE6CC 800CDACC 8FA2005C */ lw $v0, 0x5c($sp) -.L800CDAD0: -/* 0CE6D0 800CDAD0 24090004 */ li $t1, 4 -/* 0CE6D4 800CDAD4 AFA9005C */ sw $t1, 0x5c($sp) -.L800CDAD8: -/* 0CE6D8 800CDAD8 8FAD005C */ lw $t5, 0x5c($sp) -/* 0CE6DC 800CDADC 24010004 */ li $at, 4 -/* 0CE6E0 800CDAE0 15A10007 */ bne $t5, $at, .L800CDB00 -/* 0CE6E4 800CDAE4 00000000 */ nop -/* 0CE6E8 800CDAE8 8FAE0028 */ lw $t6, 0x28($sp) -/* 0CE6EC 800CDAEC 29D00000 */ slti $s0, $t6, 0 -/* 0CE6F0 800CDAF0 3A100001 */ xori $s0, $s0, 1 -/* 0CE6F4 800CDAF4 25CCFFFF */ addiu $t4, $t6, -1 -/* 0CE6F8 800CDAF8 1600FFA7 */ bnez $s0, .L800CD998 -/* 0CE6FC 800CDAFC AFAC0028 */ sw $t4, 0x28($sp) -.L800CDB00: -/* 0CE700 800CDB00 0C0335A5 */ jal func_800CD694 -/* 0CE704 800CDB04 00000000 */ nop -/* 0CE708 800CDB08 8FA2005C */ lw $v0, 0x5c($sp) -.L800CDB0C: -/* 0CE70C 800CDB0C 8FBF001C */ lw $ra, 0x1c($sp) -/* 0CE710 800CDB10 8FB00018 */ lw $s0, 0x18($sp) -/* 0CE714 800CDB14 27BD0060 */ addiu $sp, $sp, 0x60 -/* 0CE718 800CDB18 03E00008 */ jr $ra -/* 0CE71C 800CDB1C 00000000 */ nop - -glabel func_800CDB20 -/* 0CE720 800CDB20 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 0CE724 800CDB24 3C0E8013 */ lui $t6, %hi(D_8012CDE0) # $t6, 0x8013 -/* 0CE728 800CDB28 25CECDE0 */ addiu $t6, %lo(D_8012CDE0) # addiu $t6, $t6, -0x3220 -/* 0CE72C 800CDB2C AFBF0014 */ sw $ra, 0x14($sp) -/* 0CE730 800CDB30 AFA40048 */ sw $a0, 0x48($sp) -/* 0CE734 800CDB34 AFA5004C */ sw $a1, 0x4c($sp) -/* 0CE738 800CDB38 AFA60050 */ sw $a2, 0x50($sp) -/* 0CE73C 800CDB3C AFAE0044 */ sw $t6, 0x44($sp) -/* 0CE740 800CDB40 AFA00018 */ sw $zero, 0x18($sp) -.L800CDB44: -/* 0CE744 800CDB44 8FAF0018 */ lw $t7, 0x18($sp) -/* 0CE748 800CDB48 8FB90018 */ lw $t9, 0x18($sp) -/* 0CE74C 800CDB4C 3C018013 */ lui $at, 0x8013 -/* 0CE750 800CDB50 000FC080 */ sll $t8, $t7, 2 -/* 0CE754 800CDB54 00380821 */ addu $at, $at, $t8 -/* 0CE758 800CDB58 AC20CDE0 */ sw $zero, -0x3220($at) -/* 0CE75C 800CDB5C 27280001 */ addiu $t0, $t9, 1 -/* 0CE760 800CDB60 29010010 */ slti $at, $t0, 0x10 -/* 0CE764 800CDB64 1420FFF7 */ bnez $at, .L800CDB44 -/* 0CE768 800CDB68 AFA80018 */ sw $t0, 0x18($sp) -/* 0CE76C 800CDB6C 24090001 */ li $t1, 1 -/* 0CE770 800CDB70 3C018013 */ lui $at, %hi(D_8012CE1C) # $at, 0x8013 -/* 0CE774 800CDB74 240A00FF */ li $t2, 255 -/* 0CE778 800CDB78 240B0023 */ li $t3, 35 -/* 0CE77C 800CDB7C 240C0001 */ li $t4, 1 -/* 0CE780 800CDB80 240D0003 */ li $t5, 3 -/* 0CE784 800CDB84 AC29CE1C */ sw $t1, %lo(D_8012CE1C)($at) -/* 0CE788 800CDB88 A3AA001C */ sb $t2, 0x1c($sp) -/* 0CE78C 800CDB8C A3AB001D */ sb $t3, 0x1d($sp) -/* 0CE790 800CDB90 A3AC001E */ sb $t4, 0x1e($sp) -/* 0CE794 800CDB94 A3AD001F */ sb $t5, 0x1f($sp) -/* 0CE798 800CDB98 0C0335DC */ jal func_800CD770 -/* 0CE79C 800CDB9C 97A4004E */ lhu $a0, 0x4e($sp) -/* 0CE7A0 800CDBA0 97AE004E */ lhu $t6, 0x4e($sp) -/* 0CE7A4 800CDBA4 241900FF */ li $t9, 255 -/* 0CE7A8 800CDBA8 A3B90042 */ sb $t9, 0x42($sp) -/* 0CE7AC 800CDBAC 000E7940 */ sll $t7, $t6, 5 -/* 0CE7B0 800CDBB0 004FC025 */ or $t8, $v0, $t7 -/* 0CE7B4 800CDBB4 A7B80020 */ sh $t8, 0x20($sp) -/* 0CE7B8 800CDBB8 AFA00018 */ sw $zero, 0x18($sp) -.L800CDBBC: -/* 0CE7BC 800CDBBC 8FA80050 */ lw $t0, 0x50($sp) -/* 0CE7C0 800CDBC0 8FAA0018 */ lw $t2, 0x18($sp) -/* 0CE7C4 800CDBC4 91090000 */ lbu $t1, ($t0) -/* 0CE7C8 800CDBC8 03AA5821 */ addu $t3, $sp, $t2 -/* 0CE7CC 800CDBCC A1690022 */ sb $t1, 0x22($t3) -/* 0CE7D0 800CDBD0 8FAE0018 */ lw $t6, 0x18($sp) -/* 0CE7D4 800CDBD4 8FAC0050 */ lw $t4, 0x50($sp) -/* 0CE7D8 800CDBD8 25CF0001 */ addiu $t7, $t6, 1 -/* 0CE7DC 800CDBDC 29E10020 */ slti $at, $t7, 0x20 -/* 0CE7E0 800CDBE0 258D0001 */ addiu $t5, $t4, 1 -/* 0CE7E4 800CDBE4 AFAF0018 */ sw $t7, 0x18($sp) -/* 0CE7E8 800CDBE8 1420FFF4 */ bnez $at, .L800CDBBC -/* 0CE7EC 800CDBEC AFAD0050 */ sw $t5, 0x50($sp) -/* 0CE7F0 800CDBF0 8FB80048 */ lw $t8, 0x48($sp) -/* 0CE7F4 800CDBF4 1300000E */ beqz $t8, .L800CDC30 -/* 0CE7F8 800CDBF8 00000000 */ nop -/* 0CE7FC 800CDBFC 1B00000C */ blez $t8, .L800CDC30 -/* 0CE800 800CDC00 AFA00018 */ sw $zero, 0x18($sp) -.L800CDC04: -/* 0CE804 800CDC04 8FB90044 */ lw $t9, 0x44($sp) -/* 0CE808 800CDC08 A3200000 */ sb $zero, ($t9) -/* 0CE80C 800CDC0C 8FAA0018 */ lw $t2, 0x18($sp) -/* 0CE810 800CDC10 8FAC0048 */ lw $t4, 0x48($sp) -/* 0CE814 800CDC14 8FA80044 */ lw $t0, 0x44($sp) -/* 0CE818 800CDC18 254B0001 */ addiu $t3, $t2, 1 -/* 0CE81C 800CDC1C 016C082A */ slt $at, $t3, $t4 -/* 0CE820 800CDC20 25090001 */ addiu $t1, $t0, 1 -/* 0CE824 800CDC24 AFAB0018 */ sw $t3, 0x18($sp) -/* 0CE828 800CDC28 1420FFF6 */ bnez $at, .L800CDC04 -/* 0CE82C 800CDC2C AFA90044 */ sw $t1, 0x44($sp) -.L800CDC30: -/* 0CE830 800CDC30 27AE001C */ addiu $t6, $sp, 0x1c -/* 0CE834 800CDC34 25D80024 */ addiu $t8, $t6, 0x24 -/* 0CE838 800CDC38 8FAD0044 */ lw $t5, 0x44($sp) -.L800CDC3C: -/* 0CE83C 800CDC3C 8DC10000 */ lw $at, ($t6) -/* 0CE840 800CDC40 25CE000C */ addiu $t6, $t6, 0xc -/* 0CE844 800CDC44 25AD000C */ addiu $t5, $t5, 0xc -/* 0CE848 800CDC48 A9A1FFF4 */ swl $at, -0xc($t5) -/* 0CE84C 800CDC4C B9A1FFF7 */ swr $at, -9($t5) -/* 0CE850 800CDC50 8DC1FFF8 */ lw $at, -8($t6) -/* 0CE854 800CDC54 A9A1FFF8 */ swl $at, -8($t5) -/* 0CE858 800CDC58 B9A1FFFB */ swr $at, -5($t5) -/* 0CE85C 800CDC5C 8DC1FFFC */ lw $at, -4($t6) -/* 0CE860 800CDC60 A9A1FFFC */ swl $at, -4($t5) -/* 0CE864 800CDC64 15D8FFF5 */ bne $t6, $t8, .L800CDC3C -/* 0CE868 800CDC68 B9A1FFFF */ swr $at, -1($t5) -/* 0CE86C 800CDC6C 8DC10000 */ lw $at, ($t6) -/* 0CE870 800CDC70 240900FE */ li $t1, 254 -/* 0CE874 800CDC74 A9A10000 */ swl $at, ($t5) -/* 0CE878 800CDC78 B9A10003 */ swr $at, 3($t5) -/* 0CE87C 800CDC7C 8FB90044 */ lw $t9, 0x44($sp) -/* 0CE880 800CDC80 27280028 */ addiu $t0, $t9, 0x28 -/* 0CE884 800CDC84 AFA80044 */ sw $t0, 0x44($sp) -/* 0CE888 800CDC88 A1090000 */ sb $t1, ($t0) -/* 0CE88C 800CDC8C 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CE890 800CDC90 27BD0048 */ addiu $sp, $sp, 0x48 -/* 0CE894 800CDC94 03E00008 */ jr $ra -/* 0CE898 800CDC98 00000000 */ nop - -/* 0CE89C 800CDC9C 00000000 */ nop diff --git a/asm/unknown_0CF330.s b/asm/unknown_0CF330.s deleted file mode 100755 index b14fb2c7..00000000 --- a/asm/unknown_0CF330.s +++ /dev/null @@ -1,913 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_800CE730 -/* 0CF330 800CE730 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0CF334 800CE734 3C0E8013 */ lui $t6, %hi(D_8012CE40) # $t6, 0x8013 -/* 0CF338 800CE738 25CECE40 */ addiu $t6, %lo(D_8012CE40) # addiu $t6, $t6, -0x31c0 -/* 0CF33C 800CE73C 308400FF */ andi $a0, $a0, 0xff -/* 0CF340 800CE740 AFAE0014 */ sw $t6, 0x14($sp) -/* 0CF344 800CE744 AFA00004 */ sw $zero, 4($sp) -.L800CE748: -/* 0CF348 800CE748 8FB80004 */ lw $t8, 4($sp) -/* 0CF34C 800CE74C 8FA80004 */ lw $t0, 4($sp) -/* 0CF350 800CE750 3C018013 */ lui $at, 0x8013 -/* 0CF354 800CE754 0018C880 */ sll $t9, $t8, 2 -/* 0CF358 800CE758 00390821 */ addu $at, $at, $t9 -/* 0CF35C 800CE75C 240F00FF */ li $t7, 255 -/* 0CF360 800CE760 AC2FCE40 */ sw $t7, -0x31c0($at) -/* 0CF364 800CE764 25090001 */ addiu $t1, $t0, 1 -/* 0CF368 800CE768 29210010 */ slti $at, $t1, 0x10 -/* 0CF36C 800CE76C 1420FFF6 */ bnez $at, .L800CE748 -/* 0CF370 800CE770 AFA90004 */ sw $t1, 4($sp) -/* 0CF374 800CE774 240A0001 */ li $t2, 1 -/* 0CF378 800CE778 3C018013 */ lui $at, %hi(D_8012CE7C) # $at, 0x8013 -/* 0CF37C 800CE77C 240B000A */ li $t3, 10 -/* 0CF380 800CE780 240C0001 */ li $t4, 1 -/* 0CF384 800CE784 240D0005 */ li $t5, 5 -/* 0CF388 800CE788 AC2ACE7C */ sw $t2, %lo(D_8012CE7C)($at) -/* 0CF38C 800CE78C A3AB0008 */ sb $t3, 8($sp) -/* 0CF390 800CE790 A3AC0009 */ sb $t4, 9($sp) -/* 0CF394 800CE794 A3AD000A */ sb $t5, 0xa($sp) -/* 0CF398 800CE798 A3A4000B */ sb $a0, 0xb($sp) -/* 0CF39C 800CE79C AFA00004 */ sw $zero, 4($sp) -.L800CE7A0: -/* 0CF3A0 800CE7A0 8FB80004 */ lw $t8, 4($sp) -/* 0CF3A4 800CE7A4 90AE0000 */ lbu $t6, ($a1) -/* 0CF3A8 800CE7A8 24A50001 */ addiu $a1, $a1, 1 -/* 0CF3AC 800CE7AC 03B87821 */ addu $t7, $sp, $t8 -/* 0CF3B0 800CE7B0 A1EE000C */ sb $t6, 0xc($t7) -/* 0CF3B4 800CE7B4 8FB90004 */ lw $t9, 4($sp) -/* 0CF3B8 800CE7B8 27280001 */ addiu $t0, $t9, 1 -/* 0CF3BC 800CE7BC 29010008 */ slti $at, $t0, 8 -/* 0CF3C0 800CE7C0 1420FFF7 */ bnez $at, .L800CE7A0 -/* 0CF3C4 800CE7C4 AFA80004 */ sw $t0, 4($sp) -/* 0CF3C8 800CE7C8 AFA00004 */ sw $zero, 4($sp) -.L800CE7CC: -/* 0CF3CC 800CE7CC 8FA90014 */ lw $t1, 0x14($sp) -/* 0CF3D0 800CE7D0 A1200000 */ sb $zero, ($t1) -/* 0CF3D4 800CE7D4 8FAC0004 */ lw $t4, 4($sp) -/* 0CF3D8 800CE7D8 8FAA0014 */ lw $t2, 0x14($sp) -/* 0CF3DC 800CE7DC 258D0001 */ addiu $t5, $t4, 1 -/* 0CF3E0 800CE7E0 29A10004 */ slti $at, $t5, 4 -/* 0CF3E4 800CE7E4 254B0001 */ addiu $t3, $t2, 1 -/* 0CF3E8 800CE7E8 AFAD0004 */ sw $t5, 4($sp) -/* 0CF3EC 800CE7EC 1420FFF7 */ bnez $at, .L800CE7CC -/* 0CF3F0 800CE7F0 AFAB0014 */ sw $t3, 0x14($sp) -/* 0CF3F4 800CE7F4 27B80008 */ addiu $t8, $sp, 8 -/* 0CF3F8 800CE7F8 8F010000 */ lw $at, ($t8) -/* 0CF3FC 800CE7FC 8FAE0014 */ lw $t6, 0x14($sp) -/* 0CF400 800CE800 240A00FE */ li $t2, 254 -/* 0CF404 800CE804 A9C10000 */ swl $at, ($t6) -/* 0CF408 800CE808 B9C10003 */ swr $at, 3($t6) -/* 0CF40C 800CE80C 8F190004 */ lw $t9, 4($t8) -/* 0CF410 800CE810 A9D90004 */ swl $t9, 4($t6) -/* 0CF414 800CE814 B9D90007 */ swr $t9, 7($t6) -/* 0CF418 800CE818 8F010008 */ lw $at, 8($t8) -/* 0CF41C 800CE81C A9C10008 */ swl $at, 8($t6) -/* 0CF420 800CE820 B9C1000B */ swr $at, 0xb($t6) -/* 0CF424 800CE824 8FA80014 */ lw $t0, 0x14($sp) -/* 0CF428 800CE828 2509000C */ addiu $t1, $t0, 0xc -/* 0CF42C 800CE82C AFA90014 */ sw $t1, 0x14($sp) -/* 0CF430 800CE830 A12A0000 */ sb $t2, ($t1) -/* 0CF434 800CE834 03E00008 */ jr $ra -/* 0CF438 800CE838 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_800CE83C -/* 0CF43C 800CE83C 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0CF440 800CE840 3C0E8013 */ lui $t6, %hi(D_8012CE40) # $t6, 0x8013 -/* 0CF444 800CE844 25CECE40 */ addiu $t6, %lo(D_8012CE40) # addiu $t6, $t6, -0x31c0 -/* 0CF448 800CE848 AFBF0014 */ sw $ra, 0x14($sp) -/* 0CF44C 800CE84C AFA40030 */ sw $a0, 0x30($sp) -/* 0CF450 800CE850 AFA50034 */ sw $a1, 0x34($sp) -/* 0CF454 800CE854 AFA0002C */ sw $zero, 0x2c($sp) -/* 0CF458 800CE858 AFAE0024 */ sw $t6, 0x24($sp) -/* 0CF45C 800CE85C AFA00028 */ sw $zero, 0x28($sp) -.L800CE860: -/* 0CF460 800CE860 8FAF0028 */ lw $t7, 0x28($sp) -/* 0CF464 800CE864 8FB90028 */ lw $t9, 0x28($sp) -/* 0CF468 800CE868 3C018013 */ lui $at, 0x8013 -/* 0CF46C 800CE86C 000FC080 */ sll $t8, $t7, 2 -/* 0CF470 800CE870 00380821 */ addu $at, $at, $t8 -/* 0CF474 800CE874 AC20CE40 */ sw $zero, -0x31c0($at) -/* 0CF478 800CE878 27280001 */ addiu $t0, $t9, 1 -/* 0CF47C 800CE87C 29010010 */ slti $at, $t0, 0x10 -/* 0CF480 800CE880 1420FFF7 */ bnez $at, .L800CE860 -/* 0CF484 800CE884 AFA80028 */ sw $t0, 0x28($sp) -/* 0CF488 800CE888 3C0A8013 */ lui $t2, %hi(D_8012CE40) # $t2, 0x8013 -/* 0CF48C 800CE88C 24090001 */ li $t1, 1 -/* 0CF490 800CE890 3C018013 */ lui $at, %hi(D_8012CE7C) # $at, 0x8013 -/* 0CF494 800CE894 254ACE40 */ addiu $t2, %lo(D_8012CE40) # addiu $t2, $t2, -0x31c0 -/* 0CF498 800CE898 AC29CE7C */ sw $t1, %lo(D_8012CE7C)($at) -/* 0CF49C 800CE89C AFAA0024 */ sw $t2, 0x24($sp) -/* 0CF4A0 800CE8A0 AFA00028 */ sw $zero, 0x28($sp) -.L800CE8A4: -/* 0CF4A4 800CE8A4 8FAB0024 */ lw $t3, 0x24($sp) -/* 0CF4A8 800CE8A8 A1600000 */ sb $zero, ($t3) -/* 0CF4AC 800CE8AC 8FAE0028 */ lw $t6, 0x28($sp) -/* 0CF4B0 800CE8B0 8FAC0024 */ lw $t4, 0x24($sp) -/* 0CF4B4 800CE8B4 25CF0001 */ addiu $t7, $t6, 1 -/* 0CF4B8 800CE8B8 29E10004 */ slti $at, $t7, 4 -/* 0CF4BC 800CE8BC 258D0001 */ addiu $t5, $t4, 1 -/* 0CF4C0 800CE8C0 AFAF0028 */ sw $t7, 0x28($sp) -/* 0CF4C4 800CE8C4 1420FFF7 */ bnez $at, .L800CE8A4 -/* 0CF4C8 800CE8C8 AFAD0024 */ sw $t5, 0x24($sp) -/* 0CF4CC 800CE8CC 241800FF */ li $t8, 255 -/* 0CF4D0 800CE8D0 24190001 */ li $t9, 1 -/* 0CF4D4 800CE8D4 24080003 */ li $t0, 3 -/* 0CF4D8 800CE8D8 240900FF */ li $t1, 255 -/* 0CF4DC 800CE8DC 240A00FF */ li $t2, 255 -/* 0CF4E0 800CE8E0 240B00FF */ li $t3, 255 -/* 0CF4E4 800CE8E4 240C00FF */ li $t4, 255 -/* 0CF4E8 800CE8E8 A3B8001C */ sb $t8, 0x1c($sp) -/* 0CF4EC 800CE8EC A3B9001D */ sb $t9, 0x1d($sp) -/* 0CF4F0 800CE8F0 A3A8001E */ sb $t0, 0x1e($sp) -/* 0CF4F4 800CE8F4 A3A0001F */ sb $zero, 0x1f($sp) -/* 0CF4F8 800CE8F8 A3A90020 */ sb $t1, 0x20($sp) -/* 0CF4FC 800CE8FC A3AA0021 */ sb $t2, 0x21($sp) -/* 0CF500 800CE900 A3AB0022 */ sb $t3, 0x22($sp) -/* 0CF504 800CE904 A3AC0023 */ sb $t4, 0x23($sp) -/* 0CF508 800CE908 27AE001C */ addiu $t6, $sp, 0x1c -/* 0CF50C 800CE90C 8DC10000 */ lw $at, ($t6) -/* 0CF510 800CE910 8FAD0024 */ lw $t5, 0x24($sp) -/* 0CF514 800CE914 240A00FE */ li $t2, 254 -/* 0CF518 800CE918 3C058013 */ lui $a1, %hi(D_8012CE40) # $a1, 0x8013 -/* 0CF51C 800CE91C A9A10000 */ swl $at, ($t5) -/* 0CF520 800CE920 B9A10003 */ swr $at, 3($t5) -/* 0CF524 800CE924 8DD90004 */ lw $t9, 4($t6) -/* 0CF528 800CE928 24A5CE40 */ addiu $a1, %lo(D_8012CE40) # addiu $a1, $a1, -0x31c0 -/* 0CF52C 800CE92C 24040001 */ li $a0, 1 -/* 0CF530 800CE930 A9B90004 */ swl $t9, 4($t5) -/* 0CF534 800CE934 B9B90007 */ swr $t9, 7($t5) -/* 0CF538 800CE938 8FA80024 */ lw $t0, 0x24($sp) -/* 0CF53C 800CE93C 25090008 */ addiu $t1, $t0, 8 -/* 0CF540 800CE940 AFA90024 */ sw $t1, 0x24($sp) -/* 0CF544 800CE944 0C0335B0 */ jal func_800CD6C0 -/* 0CF548 800CE948 A12A0000 */ sb $t2, ($t1) -/* 0CF54C 800CE94C AFA2002C */ sw $v0, 0x2c($sp) -/* 0CF550 800CE950 8FA40030 */ lw $a0, 0x30($sp) -/* 0CF554 800CE954 00002825 */ move $a1, $zero -/* 0CF558 800CE958 0C0322EC */ jal osRecvMesg -/* 0CF55C 800CE95C 24060001 */ li $a2, 1 -/* 0CF560 800CE960 240B0005 */ li $t3, 5 -/* 0CF564 800CE964 3C018013 */ lui $at, %hi(D_8012CD90) # $at, 0x8013 -/* 0CF568 800CE968 3C058013 */ lui $a1, %hi(D_8012CE40) # $a1, 0x8013 -/* 0CF56C 800CE96C A02BCD90 */ sb $t3, %lo(D_8012CD90)($at) -/* 0CF570 800CE970 24A5CE40 */ addiu $a1, %lo(D_8012CE40) # addiu $a1, $a1, -0x31c0 -/* 0CF574 800CE974 0C0335B0 */ jal func_800CD6C0 -/* 0CF578 800CE978 00002025 */ move $a0, $zero -/* 0CF57C 800CE97C AFA2002C */ sw $v0, 0x2c($sp) -/* 0CF580 800CE980 8FA40030 */ lw $a0, 0x30($sp) -/* 0CF584 800CE984 00002825 */ move $a1, $zero -/* 0CF588 800CE988 0C0322EC */ jal osRecvMesg -/* 0CF58C 800CE98C 24060001 */ li $a2, 1 -/* 0CF590 800CE990 8FAC002C */ lw $t4, 0x2c($sp) -/* 0CF594 800CE994 11800003 */ beqz $t4, .L800CE9A4 -/* 0CF598 800CE998 00000000 */ nop -/* 0CF59C 800CE99C 1000002C */ b .L800CEA50 -/* 0CF5A0 800CE9A0 01801025 */ move $v0, $t4 -.L800CE9A4: -/* 0CF5A4 800CE9A4 3C188013 */ lui $t8, %hi(D_8012CE40) # $t8, 0x8013 -/* 0CF5A8 800CE9A8 2718CE40 */ addiu $t8, %lo(D_8012CE40) # addiu $t8, $t8, -0x31c0 -/* 0CF5AC 800CE9AC AFB80024 */ sw $t8, 0x24($sp) -/* 0CF5B0 800CE9B0 AFA00028 */ sw $zero, 0x28($sp) -.L800CE9B4: -/* 0CF5B4 800CE9B4 8FAF0024 */ lw $t7, 0x24($sp) -/* 0CF5B8 800CE9B8 A1E00000 */ sb $zero, ($t7) -/* 0CF5BC 800CE9BC 8FB90028 */ lw $t9, 0x28($sp) -/* 0CF5C0 800CE9C0 8FAD0024 */ lw $t5, 0x24($sp) -/* 0CF5C4 800CE9C4 27280001 */ addiu $t0, $t9, 1 -/* 0CF5C8 800CE9C8 29010004 */ slti $at, $t0, 4 -/* 0CF5CC 800CE9CC 25AE0001 */ addiu $t6, $t5, 1 -/* 0CF5D0 800CE9D0 AFA80028 */ sw $t0, 0x28($sp) -/* 0CF5D4 800CE9D4 1420FFF7 */ bnez $at, .L800CE9B4 -/* 0CF5D8 800CE9D8 AFAE0024 */ sw $t6, 0x24($sp) -/* 0CF5DC 800CE9DC 8FA90024 */ lw $t1, 0x24($sp) -/* 0CF5E0 800CE9E0 27AA001C */ addiu $t2, $sp, 0x1c -/* 0CF5E4 800CE9E4 89210000 */ lwl $at, ($t1) -/* 0CF5E8 800CE9E8 99210003 */ lwr $at, 3($t1) -/* 0CF5EC 800CE9EC AD410000 */ sw $at, ($t2) -/* 0CF5F0 800CE9F0 892C0004 */ lwl $t4, 4($t1) -/* 0CF5F4 800CE9F4 992C0007 */ lwr $t4, 7($t1) -/* 0CF5F8 800CE9F8 AD4C0004 */ sw $t4, 4($t2) -/* 0CF5FC 800CE9FC 93B8001E */ lbu $t8, 0x1e($sp) -/* 0CF600 800CEA00 8FAE0034 */ lw $t6, 0x34($sp) -/* 0CF604 800CEA04 330F00C0 */ andi $t7, $t8, 0xc0 -/* 0CF608 800CEA08 000F6903 */ sra $t5, $t7, 4 -/* 0CF60C 800CEA0C A1CD0003 */ sb $t5, 3($t6) -/* 0CF610 800CEA10 93B90021 */ lbu $t9, 0x21($sp) -/* 0CF614 800CEA14 93AB0020 */ lbu $t3, 0x20($sp) -/* 0CF618 800CEA18 8FA90034 */ lw $t1, 0x34($sp) -/* 0CF61C 800CEA1C 00194200 */ sll $t0, $t9, 8 -/* 0CF620 800CEA20 010B5025 */ or $t2, $t0, $t3 -/* 0CF624 800CEA24 A52A0000 */ sh $t2, ($t1) -/* 0CF628 800CEA28 8FB80034 */ lw $t8, 0x34($sp) -/* 0CF62C 800CEA2C 93AC0022 */ lbu $t4, 0x22($sp) -/* 0CF630 800CEA30 A30C0002 */ sb $t4, 2($t8) -/* 0CF634 800CEA34 8FAF0034 */ lw $t7, 0x34($sp) -/* 0CF638 800CEA38 91ED0003 */ lbu $t5, 3($t7) -/* 0CF63C 800CEA3C 11A00003 */ beqz $t5, .L800CEA4C -/* 0CF640 800CEA40 00000000 */ nop -/* 0CF644 800CEA44 10000002 */ b .L800CEA50 -/* 0CF648 800CEA48 01A01025 */ move $v0, $t5 -.L800CEA4C: -/* 0CF64C 800CEA4C 00001025 */ move $v0, $zero -.L800CEA50: -/* 0CF650 800CEA50 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CF654 800CEA54 27BD0030 */ addiu $sp, $sp, 0x30 -/* 0CF658 800CEA58 03E00008 */ jr $ra -/* 0CF65C 800CEA5C 00000000 */ nop - -glabel __ull_rshift -/* 0CF660 800CEA60 AFA40000 */ sw $a0, ($sp) -/* 0CF664 800CEA64 AFA50004 */ sw $a1, 4($sp) -/* 0CF668 800CEA68 AFA60008 */ sw $a2, 8($sp) -/* 0CF66C 800CEA6C AFA7000C */ sw $a3, 0xc($sp) -/* 0CF670 800CEA70 DFAF0008 */ ld $t7, 8($sp) -/* 0CF674 800CEA74 DFAE0000 */ ld $t6, ($sp) -/* 0CF678 800CEA78 01EE1016 */ dsrlv $v0, $t6, $t7 -/* 0CF67C 800CEA7C 0002183C */ dsll32 $v1, $v0, 0 -/* 0CF680 800CEA80 0003183F */ dsra32 $v1, $v1, 0 -/* 0CF684 800CEA84 03E00008 */ jr $ra -/* 0CF688 800CEA88 0002103F */ dsra32 $v0, $v0, 0 - -glabel __ull_rem -/* 0CF68C 800CEA8C AFA40000 */ sw $a0, ($sp) -/* 0CF690 800CEA90 AFA50004 */ sw $a1, 4($sp) -/* 0CF694 800CEA94 AFA60008 */ sw $a2, 8($sp) -/* 0CF698 800CEA98 AFA7000C */ sw $a3, 0xc($sp) -/* 0CF69C 800CEA9C DFAF0008 */ ld $t7, 8($sp) -/* 0CF6A0 800CEAA0 DFAE0000 */ ld $t6, ($sp) -/* 0CF6A4 800CEAA4 01CF001F */ ddivu $zero, $t6, $t7 -/* 0CF6A8 800CEAA8 15E00002 */ bnez $t7, .L800CEAB4 -/* 0CF6AC 800CEAAC 00000000 */ nop -/* 0CF6B0 800CEAB0 0007000D */ break 7 -.L800CEAB4: -/* 0CF6B4 800CEAB4 00001010 */ mfhi $v0 -/* 0CF6B8 800CEAB8 0002183C */ dsll32 $v1, $v0, 0 -/* 0CF6BC 800CEABC 0003183F */ dsra32 $v1, $v1, 0 -/* 0CF6C0 800CEAC0 03E00008 */ jr $ra -/* 0CF6C4 800CEAC4 0002103F */ dsra32 $v0, $v0, 0 - -glabel __ull_div -/* 0CF6C8 800CEAC8 AFA40000 */ sw $a0, ($sp) -/* 0CF6CC 800CEACC AFA50004 */ sw $a1, 4($sp) -/* 0CF6D0 800CEAD0 AFA60008 */ sw $a2, 8($sp) -/* 0CF6D4 800CEAD4 AFA7000C */ sw $a3, 0xc($sp) -/* 0CF6D8 800CEAD8 DFAF0008 */ ld $t7, 8($sp) -/* 0CF6DC 800CEADC DFAE0000 */ ld $t6, ($sp) -/* 0CF6E0 800CEAE0 01CF001F */ ddivu $zero, $t6, $t7 -/* 0CF6E4 800CEAE4 15E00002 */ bnez $t7, .L800CEAF0 -/* 0CF6E8 800CEAE8 00000000 */ nop -/* 0CF6EC 800CEAEC 0007000D */ break 7 -.L800CEAF0: -/* 0CF6F0 800CEAF0 00001012 */ mflo $v0 -/* 0CF6F4 800CEAF4 0002183C */ dsll32 $v1, $v0, 0 -/* 0CF6F8 800CEAF8 0003183F */ dsra32 $v1, $v1, 0 -/* 0CF6FC 800CEAFC 03E00008 */ jr $ra -/* 0CF700 800CEB00 0002103F */ dsra32 $v0, $v0, 0 - -glabel __ll_lshift -/* 0CF704 800CEB04 AFA40000 */ sw $a0, ($sp) -/* 0CF708 800CEB08 AFA50004 */ sw $a1, 4($sp) -/* 0CF70C 800CEB0C AFA60008 */ sw $a2, 8($sp) -/* 0CF710 800CEB10 AFA7000C */ sw $a3, 0xc($sp) -/* 0CF714 800CEB14 DFAF0008 */ ld $t7, 8($sp) -/* 0CF718 800CEB18 DFAE0000 */ ld $t6, ($sp) -/* 0CF71C 800CEB1C 01EE1014 */ dsllv $v0, $t6, $t7 -/* 0CF720 800CEB20 0002183C */ dsll32 $v1, $v0, 0 -/* 0CF724 800CEB24 0003183F */ dsra32 $v1, $v1, 0 -/* 0CF728 800CEB28 03E00008 */ jr $ra -/* 0CF72C 800CEB2C 0002103F */ dsra32 $v0, $v0, 0 - -/* 0CF730 800CEB30 AFA40000 */ sw $a0, ($sp) -/* 0CF734 800CEB34 AFA50004 */ sw $a1, 4($sp) -/* 0CF738 800CEB38 AFA60008 */ sw $a2, 8($sp) -/* 0CF73C 800CEB3C AFA7000C */ sw $a3, 0xc($sp) -/* 0CF740 800CEB40 DFAF0008 */ ld $t7, 8($sp) -/* 0CF744 800CEB44 DFAE0000 */ ld $t6, ($sp) -/* 0CF748 800CEB48 01CF001F */ ddivu $zero, $t6, $t7 -/* 0CF74C 800CEB4C 15E00002 */ bnez $t7, .L800CEB58 -/* 0CF750 800CEB50 00000000 */ nop -/* 0CF754 800CEB54 0007000D */ break 7 -.L800CEB58: -/* 0CF758 800CEB58 00001010 */ mfhi $v0 -/* 0CF75C 800CEB5C 0002183C */ dsll32 $v1, $v0, 0 -/* 0CF760 800CEB60 0003183F */ dsra32 $v1, $v1, 0 -/* 0CF764 800CEB64 03E00008 */ jr $ra -/* 0CF768 800CEB68 0002103F */ dsra32 $v0, $v0, 0 - -glabel __ll_div -/* 0CF76C 800CEB6C AFA40000 */ sw $a0, ($sp) -/* 0CF770 800CEB70 AFA50004 */ sw $a1, 4($sp) -/* 0CF774 800CEB74 AFA60008 */ sw $a2, 8($sp) -/* 0CF778 800CEB78 AFA7000C */ sw $a3, 0xc($sp) -/* 0CF77C 800CEB7C DFAF0008 */ ld $t7, 8($sp) -/* 0CF780 800CEB80 DFAE0000 */ ld $t6, ($sp) -/* 0CF784 800CEB84 01CF001E */ ddiv $zero, $t6, $t7 -/* 0CF788 800CEB88 00000000 */ nop -/* 0CF78C 800CEB8C 15E00002 */ bnez $t7, .L800CEB98 -/* 0CF790 800CEB90 00000000 */ nop -/* 0CF794 800CEB94 0007000D */ break 7 -.L800CEB98: -/* 0CF798 800CEB98 6401FFFF */ daddiu $at, $zero, -1 -/* 0CF79C 800CEB9C 15E10005 */ bne $t7, $at, .L800CEBB4 -/* 0CF7A0 800CEBA0 64010001 */ daddiu $at, $zero, 1 -/* 0CF7A4 800CEBA4 00010FFC */ dsll32 $at, $at, 0x1f -/* 0CF7A8 800CEBA8 15C10002 */ bne $t6, $at, .L800CEBB4 -/* 0CF7AC 800CEBAC 00000000 */ nop -/* 0CF7B0 800CEBB0 0006000D */ break 6 -.L800CEBB4: -/* 0CF7B4 800CEBB4 00001012 */ mflo $v0 -/* 0CF7B8 800CEBB8 0002183C */ dsll32 $v1, $v0, 0 -/* 0CF7BC 800CEBBC 0003183F */ dsra32 $v1, $v1, 0 -/* 0CF7C0 800CEBC0 03E00008 */ jr $ra -/* 0CF7C4 800CEBC4 0002103F */ dsra32 $v0, $v0, 0 - -glabel __ll_mul -/* 0CF7C8 800CEBC8 AFA40000 */ sw $a0, ($sp) -/* 0CF7CC 800CEBCC AFA50004 */ sw $a1, 4($sp) -/* 0CF7D0 800CEBD0 AFA60008 */ sw $a2, 8($sp) -/* 0CF7D4 800CEBD4 AFA7000C */ sw $a3, 0xc($sp) -/* 0CF7D8 800CEBD8 DFAF0008 */ ld $t7, 8($sp) -/* 0CF7DC 800CEBDC DFAE0000 */ ld $t6, ($sp) -/* 0CF7E0 800CEBE0 01CF001D */ dmultu $t6, $t7 -/* 0CF7E4 800CEBE4 00001012 */ mflo $v0 -/* 0CF7E8 800CEBE8 0002183C */ dsll32 $v1, $v0, 0 -/* 0CF7EC 800CEBEC 0003183F */ dsra32 $v1, $v1, 0 -/* 0CF7F0 800CEBF0 03E00008 */ jr $ra -/* 0CF7F4 800CEBF4 0002103F */ dsra32 $v0, $v0, 0 - -glabel __ull_divremi -/* 0CF7F8 800CEBF8 87AF0012 */ lh $t7, 0x12($sp) -/* 0CF7FC 800CEBFC AFA60008 */ sw $a2, 8($sp) -/* 0CF800 800CEC00 AFA7000C */ sw $a3, 0xc($sp) -/* 0CF804 800CEC04 DFAE0008 */ ld $t6, 8($sp) -/* 0CF808 800CEC08 01E0C025 */ move $t8, $t7 -/* 0CF80C 800CEC0C 0300C825 */ move $t9, $t8 -/* 0CF810 800CEC10 01D9001F */ ddivu $zero, $t6, $t9 -/* 0CF814 800CEC14 17200002 */ bnez $t9, .L800CEC20 -/* 0CF818 800CEC18 00000000 */ nop -/* 0CF81C 800CEC1C 0007000D */ break 7 -.L800CEC20: -/* 0CF820 800CEC20 00004012 */ mflo $t0 -/* 0CF824 800CEC24 FC880000 */ sd $t0, ($a0) -/* 0CF828 800CEC28 87AA0012 */ lh $t2, 0x12($sp) -/* 0CF82C 800CEC2C DFA90008 */ ld $t1, 8($sp) -/* 0CF830 800CEC30 01405825 */ move $t3, $t2 -/* 0CF834 800CEC34 01606025 */ move $t4, $t3 -/* 0CF838 800CEC38 012C001F */ ddivu $zero, $t1, $t4 -/* 0CF83C 800CEC3C 15800002 */ bnez $t4, .L800CEC48 -/* 0CF840 800CEC40 00000000 */ nop -/* 0CF844 800CEC44 0007000D */ break 7 -.L800CEC48: -/* 0CF848 800CEC48 00006810 */ mfhi $t5 -/* 0CF84C 800CEC4C FCAD0000 */ sd $t5, ($a1) -/* 0CF850 800CEC50 03E00008 */ jr $ra -/* 0CF854 800CEC54 00000000 */ nop - -/* 0CF858 800CEC58 27BDFFF8 */ addiu $sp, $sp, -8 -/* 0CF85C 800CEC5C AFA40008 */ sw $a0, 8($sp) -/* 0CF860 800CEC60 AFA5000C */ sw $a1, 0xc($sp) -/* 0CF864 800CEC64 AFA60010 */ sw $a2, 0x10($sp) -/* 0CF868 800CEC68 AFA70014 */ sw $a3, 0x14($sp) -/* 0CF86C 800CEC6C DFAF0010 */ ld $t7, 0x10($sp) -/* 0CF870 800CEC70 DFAE0008 */ ld $t6, 8($sp) -/* 0CF874 800CEC74 01CF001E */ ddiv $zero, $t6, $t7 -/* 0CF878 800CEC78 00000000 */ nop -/* 0CF87C 800CEC7C 15E00002 */ bnez $t7, .L800CEC88 -/* 0CF880 800CEC80 00000000 */ nop -/* 0CF884 800CEC84 0007000D */ break 7 -.L800CEC88: -/* 0CF888 800CEC88 6401FFFF */ daddiu $at, $zero, -1 -/* 0CF88C 800CEC8C 15E10005 */ bne $t7, $at, .L800CECA4 -/* 0CF890 800CEC90 64010001 */ daddiu $at, $zero, 1 -/* 0CF894 800CEC94 00010FFC */ dsll32 $at, $at, 0x1f -/* 0CF898 800CEC98 15C10002 */ bne $t6, $at, .L800CECA4 -/* 0CF89C 800CEC9C 00000000 */ nop -/* 0CF8A0 800CECA0 0006000D */ break 6 -.L800CECA4: -/* 0CF8A4 800CECA4 0000C010 */ mfhi $t8 -/* 0CF8A8 800CECA8 FFB80000 */ sd $t8, ($sp) -/* 0CF8AC 800CECAC 07010003 */ bgez $t8, .L800CECBC -/* 0CF8B0 800CECB0 00000000 */ nop -/* 0CF8B4 800CECB4 1DE00007 */ bgtz $t7, .L800CECD4 -/* 0CF8B8 800CECB8 00000000 */ nop -.L800CECBC: -/* 0CF8BC 800CECBC DFB90000 */ ld $t9, ($sp) -/* 0CF8C0 800CECC0 1B200008 */ blez $t9, .L800CECE4 -/* 0CF8C4 800CECC4 00000000 */ nop -/* 0CF8C8 800CECC8 DFA80010 */ ld $t0, 0x10($sp) -/* 0CF8CC 800CECCC 05010005 */ bgez $t0, .L800CECE4 -/* 0CF8D0 800CECD0 00000000 */ nop -.L800CECD4: -/* 0CF8D4 800CECD4 DFA90000 */ ld $t1, ($sp) -/* 0CF8D8 800CECD8 DFAA0010 */ ld $t2, 0x10($sp) -/* 0CF8DC 800CECDC 012A582D */ daddu $t3, $t1, $t2 -/* 0CF8E0 800CECE0 FFAB0000 */ sd $t3, ($sp) -.L800CECE4: -/* 0CF8E4 800CECE4 8FA20000 */ lw $v0, ($sp) -/* 0CF8E8 800CECE8 8FA30004 */ lw $v1, 4($sp) -/* 0CF8EC 800CECEC 03E00008 */ jr $ra -/* 0CF8F0 800CECF0 27BD0008 */ addiu $sp, $sp, 8 - -/* 0CF8F4 800CECF4 AFA40000 */ sw $a0, ($sp) -/* 0CF8F8 800CECF8 AFA50004 */ sw $a1, 4($sp) -/* 0CF8FC 800CECFC AFA60008 */ sw $a2, 8($sp) -/* 0CF900 800CED00 AFA7000C */ sw $a3, 0xc($sp) -/* 0CF904 800CED04 DFAF0008 */ ld $t7, 8($sp) -/* 0CF908 800CED08 DFAE0000 */ ld $t6, ($sp) -/* 0CF90C 800CED0C 01EE1017 */ dsrav $v0, $t6, $t7 -/* 0CF910 800CED10 0002183C */ dsll32 $v1, $v0, 0 -/* 0CF914 800CED14 0003183F */ dsra32 $v1, $v1, 0 -/* 0CF918 800CED18 03E00008 */ jr $ra -/* 0CF91C 800CED1C 0002103F */ dsra32 $v0, $v0, 0 - -glabel func_800CED20 -/* 0CF920 800CED20 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0CF924 800CED24 AFBF0014 */ sw $ra, 0x14($sp) -/* 0CF928 800CED28 AFA40020 */ sw $a0, 0x20($sp) -/* 0CF92C 800CED2C AFA50024 */ sw $a1, 0x24($sp) -/* 0CF930 800CED30 AFA60028 */ sw $a2, 0x28($sp) -/* 0CF934 800CED34 0C033594 */ jal func_800CD650 -/* 0CF938 800CED38 AFA0001C */ sw $zero, 0x1c($sp) -/* 0CF93C 800CED3C 8FA40020 */ lw $a0, 0x20($sp) -/* 0CF940 800CED40 0C033B75 */ jal func_800CEDD4 -/* 0CF944 800CED44 8FA50028 */ lw $a1, 0x28($sp) -/* 0CF948 800CED48 0C0335A5 */ jal func_800CD694 -/* 0CF94C 800CED4C AFA2001C */ sw $v0, 0x1c($sp) -/* 0CF950 800CED50 8FAE001C */ lw $t6, 0x1c($sp) -/* 0CF954 800CED54 11C00003 */ beqz $t6, .L800CED64 -/* 0CF958 800CED58 00000000 */ nop -/* 0CF95C 800CED5C 10000019 */ b .L800CEDC4 -/* 0CF960 800CED60 01C01025 */ move $v0, $t6 -.L800CED64: -/* 0CF964 800CED64 8FAF0020 */ lw $t7, 0x20($sp) -/* 0CF968 800CED68 8FB80024 */ lw $t8, 0x24($sp) -/* 0CF96C 800CED6C AF0F0004 */ sw $t7, 4($t8) -/* 0CF970 800CED70 8FA80024 */ lw $t0, 0x24($sp) -/* 0CF974 800CED74 8FB90028 */ lw $t9, 0x28($sp) -/* 0CF978 800CED78 AD190008 */ sw $t9, 8($t0) -/* 0CF97C 800CED7C 8FA90024 */ lw $t1, 0x24($sp) -/* 0CF980 800CED80 AD200000 */ sw $zero, ($t1) -/* 0CF984 800CED84 0C035659 */ jal func_800D5964 -/* 0CF988 800CED88 8FA40024 */ lw $a0, 0x24($sp) -/* 0CF98C 800CED8C AFA2001C */ sw $v0, 0x1c($sp) -/* 0CF990 800CED90 8FAA001C */ lw $t2, 0x1c($sp) -/* 0CF994 800CED94 11400003 */ beqz $t2, .L800CEDA4 -/* 0CF998 800CED98 00000000 */ nop -/* 0CF99C 800CED9C 10000009 */ b .L800CEDC4 -/* 0CF9A0 800CEDA0 01401025 */ move $v0, $t2 -.L800CEDA4: -/* 0CF9A4 800CEDA4 0C033D4C */ jal func_800CF530 -/* 0CF9A8 800CEDA8 8FA40024 */ lw $a0, 0x24($sp) -/* 0CF9AC 800CEDAC 8FAB0024 */ lw $t3, 0x24($sp) -/* 0CF9B0 800CEDB0 AFA2001C */ sw $v0, 0x1c($sp) -/* 0CF9B4 800CEDB4 8D6C0000 */ lw $t4, ($t3) -/* 0CF9B8 800CEDB8 358D0001 */ ori $t5, $t4, 1 -/* 0CF9BC 800CEDBC AD6D0000 */ sw $t5, ($t3) -/* 0CF9C0 800CEDC0 8FA2001C */ lw $v0, 0x1c($sp) -.L800CEDC4: -/* 0CF9C4 800CEDC4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CF9C8 800CEDC8 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0CF9CC 800CEDCC 03E00008 */ jr $ra -/* 0CF9D0 800CEDD0 00000000 */ nop - -glabel func_800CEDD4 -/* 0CF9D4 800CEDD4 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0CF9D8 800CEDD8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0CF9DC 800CEDDC AFA40038 */ sw $a0, 0x38($sp) -/* 0CF9E0 800CEDE0 AFA5003C */ sw $a1, 0x3c($sp) -/* 0CF9E4 800CEDE4 AFA00034 */ sw $zero, 0x34($sp) -/* 0CF9E8 800CEDE8 0C03350C */ jal func_800CD430 -/* 0CF9EC 800CEDEC 00002025 */ move $a0, $zero -/* 0CF9F0 800CEDF0 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013 -/* 0CF9F4 800CEDF4 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220 -/* 0CF9F8 800CEDF8 0C0335B0 */ jal func_800CD6C0 -/* 0CF9FC 800CEDFC 24040001 */ li $a0, 1 -/* 0CFA00 800CEE00 AFA20034 */ sw $v0, 0x34($sp) -/* 0CFA04 800CEE04 8FA40038 */ lw $a0, 0x38($sp) -/* 0CFA08 800CEE08 27A50030 */ addiu $a1, $sp, 0x30 -/* 0CFA0C 800CEE0C 0C0322EC */ jal osRecvMesg -/* 0CFA10 800CEE10 24060001 */ li $a2, 1 -/* 0CFA14 800CEE14 3C058013 */ lui $a1, %hi(D_8012CDE0) # $a1, 0x8013 -/* 0CFA18 800CEE18 24A5CDE0 */ addiu $a1, %lo(D_8012CDE0) # addiu $a1, $a1, -0x3220 -/* 0CFA1C 800CEE1C 0C0335B0 */ jal func_800CD6C0 -/* 0CFA20 800CEE20 00002025 */ move $a0, $zero -/* 0CFA24 800CEE24 AFA20034 */ sw $v0, 0x34($sp) -/* 0CFA28 800CEE28 8FA40038 */ lw $a0, 0x38($sp) -/* 0CFA2C 800CEE2C 27A50030 */ addiu $a1, $sp, 0x30 -/* 0CFA30 800CEE30 0C0322EC */ jal osRecvMesg -/* 0CFA34 800CEE34 24060001 */ li $a2, 1 -/* 0CFA38 800CEE38 27A4002F */ addiu $a0, $sp, 0x2f -/* 0CFA3C 800CEE3C 0C03354B */ jal func_800CD52C -/* 0CFA40 800CEE40 27A5001C */ addiu $a1, $sp, 0x1c -/* 0CFA44 800CEE44 8FAE003C */ lw $t6, 0x3c($sp) -/* 0CFA48 800CEE48 000E7880 */ sll $t7, $t6, 2 -/* 0CFA4C 800CEE4C 03AFC021 */ addu $t8, $sp, $t7 -/* 0CFA50 800CEE50 9318001E */ lbu $t8, 0x1e($t8) -/* 0CFA54 800CEE54 33190001 */ andi $t9, $t8, 1 -/* 0CFA58 800CEE58 13200006 */ beqz $t9, .L800CEE74 -/* 0CFA5C 800CEE5C 00000000 */ nop -/* 0CFA60 800CEE60 33080002 */ andi $t0, $t8, 2 -/* 0CFA64 800CEE64 11000003 */ beqz $t0, .L800CEE74 -/* 0CFA68 800CEE68 00000000 */ nop -/* 0CFA6C 800CEE6C 10000018 */ b .L800CEED0 -/* 0CFA70 800CEE70 24020002 */ li $v0, 2 -.L800CEE74: -/* 0CFA74 800CEE74 8FA9003C */ lw $t1, 0x3c($sp) -/* 0CFA78 800CEE78 27AB001C */ addiu $t3, $sp, 0x1c -/* 0CFA7C 800CEE7C 00095080 */ sll $t2, $t1, 2 -/* 0CFA80 800CEE80 014B6021 */ addu $t4, $t2, $t3 -/* 0CFA84 800CEE84 918D0003 */ lbu $t5, 3($t4) -/* 0CFA88 800CEE88 15A00005 */ bnez $t5, .L800CEEA0 -/* 0CFA8C 800CEE8C 00000000 */ nop -/* 0CFA90 800CEE90 918E0002 */ lbu $t6, 2($t4) -/* 0CFA94 800CEE94 31CF0001 */ andi $t7, $t6, 1 -/* 0CFA98 800CEE98 15E00003 */ bnez $t7, .L800CEEA8 -/* 0CFA9C 800CEE9C 00000000 */ nop -.L800CEEA0: -/* 0CFAA0 800CEEA0 1000000B */ b .L800CEED0 -/* 0CFAA4 800CEEA4 24020001 */ li $v0, 1 -.L800CEEA8: -/* 0CFAA8 800CEEA8 8FB9003C */ lw $t9, 0x3c($sp) -/* 0CFAAC 800CEEAC 0019C080 */ sll $t8, $t9, 2 -/* 0CFAB0 800CEEB0 03B84021 */ addu $t0, $sp, $t8 -/* 0CFAB4 800CEEB4 9108001E */ lbu $t0, 0x1e($t0) -/* 0CFAB8 800CEEB8 31090004 */ andi $t1, $t0, 4 -/* 0CFABC 800CEEBC 11200003 */ beqz $t1, .L800CEECC -/* 0CFAC0 800CEEC0 00000000 */ nop -/* 0CFAC4 800CEEC4 10000002 */ b .L800CEED0 -/* 0CFAC8 800CEEC8 24020004 */ li $v0, 4 -.L800CEECC: -/* 0CFACC 800CEECC 8FA20034 */ lw $v0, 0x34($sp) -.L800CEED0: -/* 0CFAD0 800CEED0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CFAD4 800CEED4 27BD0038 */ addiu $sp, $sp, 0x38 -/* 0CFAD8 800CEED8 03E00008 */ jr $ra -/* 0CFADC 800CEEDC 00000000 */ nop - -glabel func_800CEEE0 -/* 0CFAE0 800CEEE0 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0CFAE4 800CEEE4 AFA50024 */ sw $a1, 0x24($sp) -/* 0CFAE8 800CEEE8 AFA7002C */ sw $a3, 0x2c($sp) -/* 0CFAEC 800CEEEC 8FB8002C */ lw $t8, 0x2c($sp) -/* 0CFAF0 800CEEF0 8FAE0024 */ lw $t6, 0x24($sp) -/* 0CFAF4 800CEEF4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0CFAF8 800CEEF8 AFA40020 */ sw $a0, 0x20($sp) -/* 0CFAFC 800CEEFC AFA60028 */ sw $a2, 0x28($sp) -/* 0CFB00 800CEF00 93190000 */ lbu $t9, ($t8) -/* 0CFB04 800CEF04 91CF0000 */ lbu $t7, ($t6) -/* 0CFB08 800CEF08 11F9000E */ beq $t7, $t9, .L800CEF44 -/* 0CFB0C 800CEF0C 00000000 */ nop -/* 0CFB10 800CEF10 A1D90000 */ sb $t9, ($t6) -/* 0CFB14 800CEF14 8FA80024 */ lw $t0, 0x24($sp) -/* 0CFB18 800CEF18 8FA50028 */ lw $a1, 0x28($sp) -/* 0CFB1C 800CEF1C 8FA40020 */ lw $a0, 0x20($sp) -/* 0CFB20 800CEF20 00003025 */ move $a2, $zero -/* 0CFB24 800CEF24 0C03572F */ jal func_800D5CBC -/* 0CFB28 800CEF28 91070000 */ lbu $a3, ($t0) -/* 0CFB2C 800CEF2C AFA2001C */ sw $v0, 0x1c($sp) -/* 0CFB30 800CEF30 8FA9001C */ lw $t1, 0x1c($sp) -/* 0CFB34 800CEF34 11200003 */ beqz $t1, .L800CEF44 -/* 0CFB38 800CEF38 00000000 */ nop -/* 0CFB3C 800CEF3C 10000023 */ b .L800CEFCC -/* 0CFB40 800CEF40 01201025 */ move $v0, $t1 -.L800CEF44: -/* 0CFB44 800CEF44 8FAA002C */ lw $t2, 0x2c($sp) -/* 0CFB48 800CEF48 8FAB0028 */ lw $t3, 0x28($sp) -/* 0CFB4C 800CEF4C 914C0001 */ lbu $t4, 1($t2) -/* 0CFB50 800CEF50 000C6840 */ sll $t5, $t4, 1 -/* 0CFB54 800CEF54 016DC021 */ addu $t8, $t3, $t5 -/* 0CFB58 800CEF58 97010000 */ lhu $at, ($t8) -/* 0CFB5C 800CEF5C A5410000 */ sh $at, ($t2) -/* 0CFB60 800CEF60 8FA90020 */ lw $t1, 0x20($sp) -/* 0CFB64 800CEF64 8FAE002C */ lw $t6, 0x2c($sp) -/* 0CFB68 800CEF68 8D2C0060 */ lw $t4, 0x60($t1) -/* 0CFB6C 800CEF6C 95C80000 */ lhu $t0, ($t6) -/* 0CFB70 800CEF70 010C082A */ slt $at, $t0, $t4 -/* 0CFB74 800CEF74 1420000B */ bnez $at, .L800CEFA4 -/* 0CFB78 800CEF78 00000000 */ nop -/* 0CFB7C 800CEF7C 91CB0000 */ lbu $t3, ($t6) -/* 0CFB80 800CEF80 912D0064 */ lbu $t5, 0x64($t1) -/* 0CFB84 800CEF84 016D082A */ slt $at, $t3, $t5 -/* 0CFB88 800CEF88 10200006 */ beqz $at, .L800CEFA4 -/* 0CFB8C 800CEF8C 00000000 */ nop -/* 0CFB90 800CEF90 91CF0001 */ lbu $t7, 1($t6) -/* 0CFB94 800CEF94 19E00003 */ blez $t7, .L800CEFA4 -/* 0CFB98 800CEF98 29E10080 */ slti $at, $t7, 0x80 -/* 0CFB9C 800CEF9C 1420000A */ bnez $at, .L800CEFC8 -/* 0CFBA0 800CEFA0 00000000 */ nop -.L800CEFA4: -/* 0CFBA4 800CEFA4 8FAA002C */ lw $t2, 0x2c($sp) -/* 0CFBA8 800CEFA8 24010001 */ li $at, 1 -/* 0CFBAC 800CEFAC 95580000 */ lhu $t8, ($t2) -/* 0CFBB0 800CEFB0 17010003 */ bne $t8, $at, .L800CEFC0 -/* 0CFBB4 800CEFB4 00000000 */ nop -/* 0CFBB8 800CEFB8 10000004 */ b .L800CEFCC -/* 0CFBBC 800CEFBC 24020005 */ li $v0, 5 -.L800CEFC0: -/* 0CFBC0 800CEFC0 10000002 */ b .L800CEFCC -/* 0CFBC4 800CEFC4 24020003 */ li $v0, 3 -.L800CEFC8: -/* 0CFBC8 800CEFC8 00001025 */ move $v0, $zero -.L800CEFCC: -/* 0CFBCC 800CEFCC 8FBF0014 */ lw $ra, 0x14($sp) -/* 0CFBD0 800CEFD0 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0CFBD4 800CEFD4 03E00008 */ jr $ra -/* 0CFBD8 800CEFD8 00000000 */ nop - -glabel func_800CEFDC -/* 0CFBDC 800CEFDC 27BDFEA8 */ addiu $sp, $sp, -0x158 -/* 0CFBE0 800CEFE0 AFA40158 */ sw $a0, 0x158($sp) -/* 0CFBE4 800CEFE4 8FAF0158 */ lw $t7, 0x158($sp) -/* 0CFBE8 800CEFE8 AFA5015C */ sw $a1, 0x15c($sp) -/* 0CFBEC 800CEFEC AFBF001C */ sw $ra, 0x1c($sp) -/* 0CFBF0 800CEFF0 AFA60160 */ sw $a2, 0x160($sp) -/* 0CFBF4 800CEFF4 AFA70164 */ sw $a3, 0x164($sp) -/* 0CFBF8 800CEFF8 8FAE015C */ lw $t6, 0x15c($sp) -/* 0CFBFC 800CEFFC 8DF80050 */ lw $t8, 0x50($t7) -/* 0CFC00 800CF000 01D8082A */ slt $at, $t6, $t8 -/* 0CFC04 800CF004 10200003 */ beqz $at, .L800CF014 -/* 0CFC08 800CF008 00000000 */ nop -/* 0CFC0C 800CF00C 05C10003 */ bgez $t6, .L800CF01C -/* 0CFC10 800CF010 00000000 */ nop -.L800CF014: -/* 0CFC14 800CF014 100000ED */ b .L800CF3CC -/* 0CFC18 800CF018 24020005 */ li $v0, 5 -.L800CF01C: -/* 0CFC1C 800CF01C 8FB90168 */ lw $t9, 0x168($sp) -/* 0CFC20 800CF020 1B200004 */ blez $t9, .L800CF034 -/* 0CFC24 800CF024 00000000 */ nop -/* 0CFC28 800CF028 3328001F */ andi $t0, $t9, 0x1f -/* 0CFC2C 800CF02C 11000003 */ beqz $t0, .L800CF03C -/* 0CFC30 800CF030 00000000 */ nop -.L800CF034: -/* 0CFC34 800CF034 100000E5 */ b .L800CF3CC -/* 0CFC38 800CF038 24020005 */ li $v0, 5 -.L800CF03C: -/* 0CFC3C 800CF03C 8FA90164 */ lw $t1, 0x164($sp) -/* 0CFC40 800CF040 05200004 */ bltz $t1, .L800CF054 -/* 0CFC44 800CF044 00000000 */ nop -/* 0CFC48 800CF048 312A001F */ andi $t2, $t1, 0x1f -/* 0CFC4C 800CF04C 11400003 */ beqz $t2, .L800CF05C -/* 0CFC50 800CF050 00000000 */ nop -.L800CF054: -/* 0CFC54 800CF054 100000DD */ b .L800CF3CC -/* 0CFC58 800CF058 24020005 */ li $v0, 5 -.L800CF05C: -/* 0CFC5C 800CF05C 8FAB0158 */ lw $t3, 0x158($sp) -/* 0CFC60 800CF060 8D6C0000 */ lw $t4, ($t3) -/* 0CFC64 800CF064 318D0001 */ andi $t5, $t4, 1 -/* 0CFC68 800CF068 15A00003 */ bnez $t5, .L800CF078 -/* 0CFC6C 800CF06C 00000000 */ nop -/* 0CFC70 800CF070 100000D6 */ b .L800CF3CC -/* 0CFC74 800CF074 24020005 */ li $v0, 5 -.L800CF078: -/* 0CFC78 800CF078 0C0356F0 */ jal func_800D5BC0 -/* 0CFC7C 800CF07C 8FA40158 */ lw $a0, 0x158($sp) -/* 0CFC80 800CF080 24010002 */ li $at, 2 -/* 0CFC84 800CF084 14410003 */ bne $v0, $at, .L800CF094 -/* 0CFC88 800CF088 00000000 */ nop -/* 0CFC8C 800CF08C 100000CF */ b .L800CF3CC -/* 0CFC90 800CF090 24020002 */ li $v0, 2 -.L800CF094: -/* 0CFC94 800CF094 8FAF0158 */ lw $t7, 0x158($sp) -/* 0CFC98 800CF098 91F80065 */ lbu $t8, 0x65($t7) -/* 0CFC9C 800CF09C 1300000A */ beqz $t8, .L800CF0C8 -/* 0CFCA0 800CF0A0 00000000 */ nop -/* 0CFCA4 800CF0A4 A1E00065 */ sb $zero, 0x65($t7) -/* 0CFCA8 800CF0A8 0C0357F7 */ jal func_800D5FDC -/* 0CFCAC 800CF0AC 8FA40158 */ lw $a0, 0x158($sp) -/* 0CFCB0 800CF0B0 AFA20154 */ sw $v0, 0x154($sp) -/* 0CFCB4 800CF0B4 8FAE0154 */ lw $t6, 0x154($sp) -/* 0CFCB8 800CF0B8 11C00003 */ beqz $t6, .L800CF0C8 -/* 0CFCBC 800CF0BC 00000000 */ nop -/* 0CFCC0 800CF0C0 100000C2 */ b .L800CF3CC -/* 0CFCC4 800CF0C4 01C01025 */ move $v0, $t6 -.L800CF0C8: -/* 0CFCC8 800CF0C8 8FB90158 */ lw $t9, 0x158($sp) -/* 0CFCCC 800CF0CC 8FA9015C */ lw $t1, 0x15c($sp) -/* 0CFCD0 800CF0D0 27A70134 */ addiu $a3, $sp, 0x134 -/* 0CFCD4 800CF0D4 8F28005C */ lw $t0, 0x5c($t9) -/* 0CFCD8 800CF0D8 8F240004 */ lw $a0, 4($t9) -/* 0CFCDC 800CF0DC 8F250008 */ lw $a1, 8($t9) -/* 0CFCE0 800CF0E0 0C033728 */ jal func_800CDCA0 -/* 0CFCE4 800CF0E4 01093021 */ addu $a2, $t0, $t1 -/* 0CFCE8 800CF0E8 AFA20154 */ sw $v0, 0x154($sp) -/* 0CFCEC 800CF0EC 8FAA0154 */ lw $t2, 0x154($sp) -/* 0CFCF0 800CF0F0 11400003 */ beqz $t2, .L800CF100 -/* 0CFCF4 800CF0F4 00000000 */ nop -/* 0CFCF8 800CF0F8 100000B4 */ b .L800CF3CC -/* 0CFCFC 800CF0FC 01401025 */ move $v0, $t2 -.L800CF100: -/* 0CFD00 800CF100 8FAC0158 */ lw $t4, 0x158($sp) -/* 0CFD04 800CF104 97AB013A */ lhu $t3, 0x13a($sp) -/* 0CFD08 800CF108 8D8D0060 */ lw $t5, 0x60($t4) -/* 0CFD0C 800CF10C 016D082A */ slt $at, $t3, $t5 -/* 0CFD10 800CF110 1420000B */ bnez $at, .L800CF140 -/* 0CFD14 800CF114 00000000 */ nop -/* 0CFD18 800CF118 93B8013A */ lbu $t8, 0x13a($sp) -/* 0CFD1C 800CF11C 918F0064 */ lbu $t7, 0x64($t4) -/* 0CFD20 800CF120 030F082A */ slt $at, $t8, $t7 -/* 0CFD24 800CF124 10200006 */ beqz $at, .L800CF140 -/* 0CFD28 800CF128 00000000 */ nop -/* 0CFD2C 800CF12C 93AE013B */ lbu $t6, 0x13b($sp) -/* 0CFD30 800CF130 19C00003 */ blez $t6, .L800CF140 -/* 0CFD34 800CF134 29C10080 */ slti $at, $t6, 0x80 -/* 0CFD38 800CF138 14200009 */ bnez $at, .L800CF160 -/* 0CFD3C 800CF13C 00000000 */ nop -.L800CF140: -/* 0CFD40 800CF140 97B9013A */ lhu $t9, 0x13a($sp) -/* 0CFD44 800CF144 24010001 */ li $at, 1 -/* 0CFD48 800CF148 17210003 */ bne $t9, $at, .L800CF158 -/* 0CFD4C 800CF14C 00000000 */ nop -/* 0CFD50 800CF150 1000009E */ b .L800CF3CC -/* 0CFD54 800CF154 24020005 */ li $v0, 5 -.L800CF158: -/* 0CFD58 800CF158 1000009C */ b .L800CF3CC -/* 0CFD5C 800CF15C 24020003 */ li $v0, 3 -.L800CF160: -/* 0CFD60 800CF160 93A80163 */ lbu $t0, 0x163($sp) -/* 0CFD64 800CF164 15000007 */ bnez $t0, .L800CF184 -/* 0CFD68 800CF168 00000000 */ nop -/* 0CFD6C 800CF16C 93A9013C */ lbu $t1, 0x13c($sp) -/* 0CFD70 800CF170 312A0002 */ andi $t2, $t1, 2 -/* 0CFD74 800CF174 15400003 */ bnez $t2, .L800CF184 -/* 0CFD78 800CF178 00000000 */ nop -/* 0CFD7C 800CF17C 10000093 */ b .L800CF3CC -/* 0CFD80 800CF180 24020006 */ li $v0, 6 -.L800CF184: -/* 0CFD84 800CF184 8FAD0164 */ lw $t5, 0x164($sp) -/* 0CFD88 800CF188 97B8013A */ lhu $t8, 0x13a($sp) -/* 0CFD8C 800CF18C 240B00FF */ li $t3, 255 -/* 0CFD90 800CF190 A3AB0023 */ sb $t3, 0x23($sp) -/* 0CFD94 800CF194 05A10003 */ bgez $t5, .L800CF1A4 -/* 0CFD98 800CF198 000D6143 */ sra $t4, $t5, 5 -/* 0CFD9C 800CF19C 25A1001F */ addiu $at, $t5, 0x1f -/* 0CFDA0 800CF1A0 00016143 */ sra $t4, $at, 5 -.L800CF1A4: -/* 0CFDA4 800CF1A4 AFAC002C */ sw $t4, 0x2c($sp) -/* 0CFDA8 800CF1A8 8FAF002C */ lw $t7, 0x2c($sp) -/* 0CFDAC 800CF1AC A7B80030 */ sh $t8, 0x30($sp) -/* 0CFDB0 800CF1B0 29E10008 */ slti $at, $t7, 8 -/* 0CFDB4 800CF1B4 14200013 */ bnez $at, .L800CF204 -/* 0CFDB8 800CF1B8 00000000 */ nop -.L800CF1BC: -/* 0CFDBC 800CF1BC 8FA40158 */ lw $a0, 0x158($sp) -/* 0CFDC0 800CF1C0 27A50023 */ addiu $a1, $sp, 0x23 -/* 0CFDC4 800CF1C4 27A60034 */ addiu $a2, $sp, 0x34 -/* 0CFDC8 800CF1C8 0C033BB8 */ jal func_800CEEE0 -/* 0CFDCC 800CF1CC 27A70030 */ addiu $a3, $sp, 0x30 -/* 0CFDD0 800CF1D0 AFA20154 */ sw $v0, 0x154($sp) -/* 0CFDD4 800CF1D4 8FAE0154 */ lw $t6, 0x154($sp) -/* 0CFDD8 800CF1D8 11C00003 */ beqz $t6, .L800CF1E8 -/* 0CFDDC 800CF1DC 00000000 */ nop -/* 0CFDE0 800CF1E0 1000007A */ b .L800CF3CC -/* 0CFDE4 800CF1E4 01C01025 */ move $v0, $t6 -.L800CF1E8: -/* 0CFDE8 800CF1E8 8FB9002C */ lw $t9, 0x2c($sp) -/* 0CFDEC 800CF1EC 2728FFF8 */ addiu $t0, $t9, -8 -/* 0CFDF0 800CF1F0 AFA8002C */ sw $t0, 0x2c($sp) -/* 0CFDF4 800CF1F4 8FA9002C */ lw $t1, 0x2c($sp) -/* 0CFDF8 800CF1F8 29210008 */ slti $at, $t1, 8 -/* 0CFDFC 800CF1FC 1020FFEF */ beqz $at, .L800CF1BC -/* 0CFE00 800CF200 00000000 */ nop -.L800CF204: -/* 0CFE04 800CF204 8FAA0168 */ lw $t2, 0x168($sp) -/* 0CFE08 800CF208 8FAD016C */ lw $t5, 0x16c($sp) -/* 0CFE0C 800CF20C 05410003 */ bgez $t2, .L800CF21C -/* 0CFE10 800CF210 000A5943 */ sra $t3, $t2, 5 -/* 0CFE14 800CF214 2541001F */ addiu $at, $t2, 0x1f -/* 0CFE18 800CF218 00015943 */ sra $t3, $at, 5 -.L800CF21C: -/* 0CFE1C 800CF21C AFAB0028 */ sw $t3, 0x28($sp) -/* 0CFE20 800CF220 19600046 */ blez $t3, .L800CF33C -/* 0CFE24 800CF224 AFAD0024 */ sw $t5, 0x24($sp) -.L800CF228: -/* 0CFE28 800CF228 8FAC002C */ lw $t4, 0x2c($sp) -/* 0CFE2C 800CF22C 24010008 */ li $at, 8 -/* 0CFE30 800CF230 1581000D */ bne $t4, $at, .L800CF268 -/* 0CFE34 800CF234 00000000 */ nop -/* 0CFE38 800CF238 8FA40158 */ lw $a0, 0x158($sp) -/* 0CFE3C 800CF23C 27A50023 */ addiu $a1, $sp, 0x23 -/* 0CFE40 800CF240 27A60034 */ addiu $a2, $sp, 0x34 -/* 0CFE44 800CF244 0C033BB8 */ jal func_800CEEE0 -/* 0CFE48 800CF248 27A70030 */ addiu $a3, $sp, 0x30 -/* 0CFE4C 800CF24C AFA20154 */ sw $v0, 0x154($sp) -/* 0CFE50 800CF250 8FB80154 */ lw $t8, 0x154($sp) -/* 0CFE54 800CF254 13000003 */ beqz $t8, .L800CF264 -/* 0CFE58 800CF258 00000000 */ nop -/* 0CFE5C 800CF25C 1000005B */ b .L800CF3CC -/* 0CFE60 800CF260 03001025 */ move $v0, $t8 -.L800CF264: -/* 0CFE64 800CF264 AFA0002C */ sw $zero, 0x2c($sp) -.L800CF268: -/* 0CFE68 800CF268 8FAF0158 */ lw $t7, 0x158($sp) -/* 0CFE6C 800CF26C 93B90030 */ lbu $t9, 0x30($sp) -/* 0CFE70 800CF270 91EE0065 */ lbu $t6, 0x65($t7) -/* 0CFE74 800CF274 11D9000A */ beq $t6, $t9, .L800CF2A0 -/* 0CFE78 800CF278 00000000 */ nop -/* 0CFE7C 800CF27C A1F90065 */ sb $t9, 0x65($t7) -/* 0CFE80 800CF280 0C0357F7 */ jal func_800D5FDC -/* 0CFE84 800CF284 8FA40158 */ lw $a0, 0x158($sp) -/* 0CFE88 800CF288 AFA20154 */ sw $v0, 0x154($sp) -/* 0CFE8C 800CF28C 8FA80154 */ lw $t0, 0x154($sp) -/* 0CFE90 800CF290 11000003 */ beqz $t0, .L800CF2A0 -/* 0CFE94 800CF294 00000000 */ nop -/* 0CFE98 800CF298 1000004C */ b .L800CF3CC -/* 0CFE9C 800CF29C 01001025 */ move $v0, $t0 -.L800CF2A0: -/* 0CFEA0 800CF2A0 93A90031 */ lbu $t1, 0x31($sp) -/* 0CFEA4 800CF2A4 8FAD002C */ lw $t5, 0x2c($sp) -/* 0CFEA8 800CF2A8 93AC0163 */ lbu $t4, 0x163($sp) -/* 0CFEAC 800CF2AC 000950C0 */ sll $t2, $t1, 3 -/* 0CFEB0 800CF2B0 014D5821 */ addu $t3, $t2, $t5 -/* 0CFEB4 800CF2B4 15800009 */ bnez $t4, .L800CF2DC -/* 0CFEB8 800CF2B8 A7AB0020 */ sh $t3, 0x20($sp) -/* 0CFEBC 800CF2BC 8FB80158 */ lw $t8, 0x158($sp) -/* 0CFEC0 800CF2C0 3166FFFF */ andi $a2, $t3, 0xffff -/* 0CFEC4 800CF2C4 8FA70024 */ lw $a3, 0x24($sp) -/* 0CFEC8 800CF2C8 8F040004 */ lw $a0, 4($t8) -/* 0CFECC 800CF2CC 0C033728 */ jal func_800CDCA0 -/* 0CFED0 800CF2D0 8F050008 */ lw $a1, 8($t8) -/* 0CFED4 800CF2D4 10000009 */ b .L800CF2FC -/* 0CFED8 800CF2D8 AFA20154 */ sw $v0, 0x154($sp) -.L800CF2DC: -/* 0CFEDC 800CF2DC 8FAE0158 */ lw $t6, 0x158($sp) -/* 0CFEE0 800CF2E0 97A60020 */ lhu $a2, 0x20($sp) -/* 0CFEE4 800CF2E4 8FA70024 */ lw $a3, 0x24($sp) -/* 0CFEE8 800CF2E8 8DC40004 */ lw $a0, 4($t6) -/* 0CFEEC 800CF2EC 8DC50008 */ lw $a1, 8($t6) -/* 0CFEF0 800CF2F0 0C03363C */ jal func_800CD8F0 -/* 0CFEF4 800CF2F4 AFA00010 */ sw $zero, 0x10($sp) -/* 0CFEF8 800CF2F8 AFA20154 */ sw $v0, 0x154($sp) -.L800CF2FC: -/* 0CFEFC 800CF2FC 8FB90154 */ lw $t9, 0x154($sp) -/* 0CFF00 800CF300 13200003 */ beqz $t9, .L800CF310 -/* 0CFF04 800CF304 00000000 */ nop -/* 0CFF08 800CF308 10000030 */ b .L800CF3CC -/* 0CFF0C 800CF30C 03201025 */ move $v0, $t9 -.L800CF310: -/* 0CFF10 800CF310 8FAD0028 */ lw $t5, 0x28($sp) -/* 0CFF14 800CF314 8FAF0024 */ lw $t7, 0x24($sp) -/* 0CFF18 800CF318 8FA9002C */ lw $t1, 0x2c($sp) -/* 0CFF1C 800CF31C 25ACFFFF */ addiu $t4, $t5, -1 -/* 0CFF20 800CF320 AFAC0028 */ sw $t4, 0x28($sp) -/* 0CFF24 800CF324 8FB80028 */ lw $t8, 0x28($sp) -/* 0CFF28 800CF328 25E80020 */ addiu $t0, $t7, 0x20 -/* 0CFF2C 800CF32C 252A0001 */ addiu $t2, $t1, 1 -/* 0CFF30 800CF330 AFA80024 */ sw $t0, 0x24($sp) -/* 0CFF34 800CF334 1F00FFBC */ bgtz $t8, .L800CF228 -/* 0CFF38 800CF338 AFAA002C */ sw $t2, 0x2c($sp) -.L800CF33C: -/* 0CFF3C 800CF33C 93AB0163 */ lbu $t3, 0x163($sp) -/* 0CFF40 800CF340 24010001 */ li $at, 1 -/* 0CFF44 800CF344 15610020 */ bne $t3, $at, .L800CF3C8 -/* 0CFF48 800CF348 00000000 */ nop -/* 0CFF4C 800CF34C 93AE013C */ lbu $t6, 0x13c($sp) -/* 0CFF50 800CF350 31D90002 */ andi $t9, $t6, 2 -/* 0CFF54 800CF354 1720001C */ bnez $t9, .L800CF3C8 -/* 0CFF58 800CF358 00000000 */ nop -/* 0CFF5C 800CF35C 8FA80158 */ lw $t0, 0x158($sp) -/* 0CFF60 800CF360 35CF0002 */ ori $t7, $t6, 2 -/* 0CFF64 800CF364 A3AF013C */ sb $t7, 0x13c($sp) -/* 0CFF68 800CF368 A1000065 */ sb $zero, 0x65($t0) -/* 0CFF6C 800CF36C 0C0357F7 */ jal func_800D5FDC -/* 0CFF70 800CF370 8FA40158 */ lw $a0, 0x158($sp) -/* 0CFF74 800CF374 AFA20154 */ sw $v0, 0x154($sp) -/* 0CFF78 800CF378 8FA90154 */ lw $t1, 0x154($sp) -/* 0CFF7C 800CF37C 11200003 */ beqz $t1, .L800CF38C -/* 0CFF80 800CF380 00000000 */ nop -/* 0CFF84 800CF384 10000011 */ b .L800CF3CC -/* 0CFF88 800CF388 01201025 */ move $v0, $t1 -.L800CF38C: -/* 0CFF8C 800CF38C 8FAA0158 */ lw $t2, 0x158($sp) -/* 0CFF90 800CF390 8FAC015C */ lw $t4, 0x15c($sp) -/* 0CFF94 800CF394 27A70134 */ addiu $a3, $sp, 0x134 -/* 0CFF98 800CF398 8D4D005C */ lw $t5, 0x5c($t2) -/* 0CFF9C 800CF39C 8D440004 */ lw $a0, 4($t2) -/* 0CFFA0 800CF3A0 8D450008 */ lw $a1, 8($t2) -/* 0CFFA4 800CF3A4 AFA00010 */ sw $zero, 0x10($sp) -/* 0CFFA8 800CF3A8 0C03363C */ jal func_800CD8F0 -/* 0CFFAC 800CF3AC 01AC3021 */ addu $a2, $t5, $t4 -/* 0CFFB0 800CF3B0 AFA20154 */ sw $v0, 0x154($sp) -/* 0CFFB4 800CF3B4 8FB80154 */ lw $t8, 0x154($sp) -/* 0CFFB8 800CF3B8 13000003 */ beqz $t8, .L800CF3C8 -/* 0CFFBC 800CF3BC 00000000 */ nop -/* 0CFFC0 800CF3C0 10000002 */ b .L800CF3CC -/* 0CFFC4 800CF3C4 03001025 */ move $v0, $t8 -.L800CF3C8: -/* 0CFFC8 800CF3C8 00001025 */ move $v0, $zero -.L800CF3CC: -/* 0CFFCC 800CF3CC 8FBF001C */ lw $ra, 0x1c($sp) -/* 0CFFD0 800CF3D0 27BD0158 */ addiu $sp, $sp, 0x158 -/* 0CFFD4 800CF3D4 03E00008 */ jr $ra -/* 0CFFD8 800CF3D8 00000000 */ nop - -/* 0CFFDC 800CF3DC 00000000 */ nop diff --git a/asm/unknown_0D0130.s b/asm/unknown_0D0130.s deleted file mode 100755 index c7ce84c4..00000000 --- a/asm/unknown_0D0130.s +++ /dev/null @@ -1,1118 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_800CF530 -/* 0D0130 800CF530 27BDFB78 */ addiu $sp, $sp, -0x488 -/* 0D0134 800CF534 AFBF001C */ sw $ra, 0x1c($sp) -/* 0D0138 800CF538 AFA40488 */ sw $a0, 0x488($sp) -/* 0D013C 800CF53C AFA00034 */ sw $zero, 0x34($sp) -/* 0D0140 800CF540 0C0356F0 */ jal func_800D5BC0 -/* 0D0144 800CF544 8FA40488 */ lw $a0, 0x488($sp) -/* 0D0148 800CF548 AFA20480 */ sw $v0, 0x480($sp) -/* 0D014C 800CF54C 8FAE0480 */ lw $t6, 0x480($sp) -/* 0D0150 800CF550 24010002 */ li $at, 2 -/* 0D0154 800CF554 15C10004 */ bne $t6, $at, .L800CF568 -/* 0D0158 800CF558 00000000 */ nop -/* 0D015C 800CF55C 0C035659 */ jal func_800D5964 -/* 0D0160 800CF560 8FA40488 */ lw $a0, 0x488($sp) -/* 0D0164 800CF564 AFA20480 */ sw $v0, 0x480($sp) -.L800CF568: -/* 0D0168 800CF568 8FAF0480 */ lw $t7, 0x480($sp) -/* 0D016C 800CF56C 11E00003 */ beqz $t7, .L800CF57C -/* 0D0170 800CF570 00000000 */ nop -/* 0D0174 800CF574 1000019B */ b .L800CFBE4 -/* 0D0178 800CF578 01E01025 */ move $v0, $t7 -.L800CF57C: -/* 0D017C 800CF57C 8FA40488 */ lw $a0, 0x488($sp) -/* 0D0180 800CF580 0C033EFD */ jal func_800CFBF4 -/* 0D0184 800CF584 27A50038 */ addiu $a1, $sp, 0x38 -/* 0D0188 800CF588 AFA20480 */ sw $v0, 0x480($sp) -/* 0D018C 800CF58C 8FB80480 */ lw $t8, 0x480($sp) -/* 0D0190 800CF590 13000003 */ beqz $t8, .L800CF5A0 -/* 0D0194 800CF594 00000000 */ nop -/* 0D0198 800CF598 10000192 */ b .L800CFBE4 -/* 0D019C 800CF59C 03001025 */ move $v0, $t8 -.L800CF5A0: -/* 0D01A0 800CF5A0 8FB90488 */ lw $t9, 0x488($sp) -/* 0D01A4 800CF5A4 AFA00484 */ sw $zero, 0x484($sp) -/* 0D01A8 800CF5A8 8F280050 */ lw $t0, 0x50($t9) -/* 0D01AC 800CF5AC 190000C0 */ blez $t0, .L800CF8B0 -/* 0D01B0 800CF5B0 00000000 */ nop -.L800CF5B4: -/* 0D01B4 800CF5B4 8FA90488 */ lw $t1, 0x488($sp) -/* 0D01B8 800CF5B8 8FAB0484 */ lw $t3, 0x484($sp) -/* 0D01BC 800CF5BC 27A7025C */ addiu $a3, $sp, 0x25c -/* 0D01C0 800CF5C0 8D2A005C */ lw $t2, 0x5c($t1) -/* 0D01C4 800CF5C4 8D240004 */ lw $a0, 4($t1) -/* 0D01C8 800CF5C8 8D250008 */ lw $a1, 8($t1) -/* 0D01CC 800CF5CC 0C033728 */ jal func_800CDCA0 -/* 0D01D0 800CF5D0 014B3021 */ addu $a2, $t2, $t3 -/* 0D01D4 800CF5D4 AFA20480 */ sw $v0, 0x480($sp) -/* 0D01D8 800CF5D8 8FAC0480 */ lw $t4, 0x480($sp) -/* 0D01DC 800CF5DC 11800003 */ beqz $t4, .L800CF5EC -/* 0D01E0 800CF5E0 00000000 */ nop -/* 0D01E4 800CF5E4 1000017F */ b .L800CFBE4 -/* 0D01E8 800CF5E8 01801025 */ move $v0, $t4 -.L800CF5EC: -/* 0D01EC 800CF5EC 97AD0260 */ lhu $t5, 0x260($sp) -/* 0D01F0 800CF5F0 11A0007D */ beqz $t5, .L800CF7E8 -/* 0D01F4 800CF5F4 00000000 */ nop -/* 0D01F8 800CF5F8 8FAE025C */ lw $t6, 0x25c($sp) -/* 0D01FC 800CF5FC 11C0007A */ beqz $t6, .L800CF7E8 -/* 0D0200 800CF600 00000000 */ nop -/* 0D0204 800CF604 97AF0262 */ lhu $t7, 0x262($sp) -/* 0D0208 800CF608 8FA80488 */ lw $t0, 0x488($sp) -/* 0D020C 800CF60C 241800FF */ li $t8, 255 -/* 0D0210 800CF610 A7AF047C */ sh $t7, 0x47c($sp) -/* 0D0214 800CF614 AFA0002C */ sw $zero, 0x2c($sp) -/* 0D0218 800CF618 AFA00028 */ sw $zero, 0x28($sp) -/* 0D021C 800CF61C A3B80033 */ sb $t8, 0x33($sp) -/* 0D0220 800CF620 97B9047C */ lhu $t9, 0x47c($sp) -/* 0D0224 800CF624 8D090060 */ lw $t1, 0x60($t0) -/* 0D0228 800CF628 0329082A */ slt $at, $t9, $t1 -/* 0D022C 800CF62C 14200042 */ bnez $at, .L800CF738 -/* 0D0230 800CF630 00000000 */ nop -/* 0D0234 800CF634 93AA047C */ lbu $t2, 0x47c($sp) -/* 0D0238 800CF638 910B0064 */ lbu $t3, 0x64($t0) -/* 0D023C 800CF63C 014B082A */ slt $at, $t2, $t3 -/* 0D0240 800CF640 1020003D */ beqz $at, .L800CF738 -/* 0D0244 800CF644 00000000 */ nop -/* 0D0248 800CF648 93AC047D */ lbu $t4, 0x47d($sp) -/* 0D024C 800CF64C 1980003A */ blez $t4, .L800CF738 -/* 0D0250 800CF650 29810080 */ slti $at, $t4, 0x80 -/* 0D0254 800CF654 10200038 */ beqz $at, .L800CF738 -/* 0D0258 800CF658 00000000 */ nop -.L800CF65C: -/* 0D025C 800CF65C 93AD0033 */ lbu $t5, 0x33($sp) -/* 0D0260 800CF660 93AE047C */ lbu $t6, 0x47c($sp) -/* 0D0264 800CF664 11AE000F */ beq $t5, $t6, .L800CF6A4 -/* 0D0268 800CF668 00000000 */ nop -/* 0D026C 800CF66C A3AE0033 */ sb $t6, 0x33($sp) -/* 0D0270 800CF670 8FA40488 */ lw $a0, 0x488($sp) -/* 0D0274 800CF674 27A5027C */ addiu $a1, $sp, 0x27c -/* 0D0278 800CF678 00003025 */ move $a2, $zero -/* 0D027C 800CF67C 0C03572F */ jal func_800D5CBC -/* 0D0280 800CF680 01C03825 */ move $a3, $t6 -/* 0D0284 800CF684 AFA20480 */ sw $v0, 0x480($sp) -/* 0D0288 800CF688 8FAF0480 */ lw $t7, 0x480($sp) -/* 0D028C 800CF68C 11E00005 */ beqz $t7, .L800CF6A4 -/* 0D0290 800CF690 24010003 */ li $at, 3 -/* 0D0294 800CF694 11E10003 */ beq $t7, $at, .L800CF6A4 -/* 0D0298 800CF698 00000000 */ nop -/* 0D029C 800CF69C 10000151 */ b .L800CFBE4 -/* 0D02A0 800CF6A0 01E01025 */ move $v0, $t7 -.L800CF6A4: -/* 0D02A4 800CF6A4 97B8047C */ lhu $t8, 0x47c($sp) -/* 0D02A8 800CF6A8 8FA40488 */ lw $a0, 0x488($sp) -/* 0D02AC 800CF6AC 27A60038 */ addiu $a2, $sp, 0x38 -/* 0D02B0 800CF6B0 A7B80004 */ sh $t8, 4($sp) -/* 0D02B4 800CF6B4 0C033F6A */ jal func_800CFDA8 -/* 0D02B8 800CF6B8 8FA50004 */ lw $a1, 4($sp) -/* 0D02BC 800CF6BC 8FB90028 */ lw $t9, 0x28($sp) -/* 0D02C0 800CF6C0 00594823 */ subu $t1, $v0, $t9 -/* 0D02C4 800CF6C4 AFA9002C */ sw $t1, 0x2c($sp) -/* 0D02C8 800CF6C8 8FA8002C */ lw $t0, 0x2c($sp) -/* 0D02CC 800CF6CC 1500001A */ bnez $t0, .L800CF738 -/* 0D02D0 800CF6D0 00000000 */ nop -/* 0D02D4 800CF6D4 93AC047D */ lbu $t4, 0x47d($sp) -/* 0D02D8 800CF6D8 240A0001 */ li $t2, 1 -/* 0D02DC 800CF6DC 27AE027C */ addiu $t6, $sp, 0x27c -/* 0D02E0 800CF6E0 000C6840 */ sll $t5, $t4, 1 -/* 0D02E4 800CF6E4 AFAA0028 */ sw $t2, 0x28($sp) -/* 0D02E8 800CF6E8 01AE7821 */ addu $t7, $t5, $t6 -/* 0D02EC 800CF6EC 95E10000 */ lhu $at, ($t7) -/* 0D02F0 800CF6F0 27AB047C */ addiu $t3, $sp, 0x47c -/* 0D02F4 800CF6F4 A5610000 */ sh $at, ($t3) -/* 0D02F8 800CF6F8 8FAA0488 */ lw $t2, 0x488($sp) -/* 0D02FC 800CF6FC 97A8047C */ lhu $t0, 0x47c($sp) -/* 0D0300 800CF700 8D4C0060 */ lw $t4, 0x60($t2) -/* 0D0304 800CF704 010C082A */ slt $at, $t0, $t4 -/* 0D0308 800CF708 1420000B */ bnez $at, .L800CF738 -/* 0D030C 800CF70C 00000000 */ nop -/* 0D0310 800CF710 93AD047C */ lbu $t5, 0x47c($sp) -/* 0D0314 800CF714 914E0064 */ lbu $t6, 0x64($t2) -/* 0D0318 800CF718 01AE082A */ slt $at, $t5, $t6 -/* 0D031C 800CF71C 10200006 */ beqz $at, .L800CF738 -/* 0D0320 800CF720 00000000 */ nop -/* 0D0324 800CF724 93B9047D */ lbu $t9, 0x47d($sp) -/* 0D0328 800CF728 1B200003 */ blez $t9, .L800CF738 -/* 0D032C 800CF72C 2B210080 */ slti $at, $t9, 0x80 -/* 0D0330 800CF730 1420FFCA */ bnez $at, .L800CF65C -/* 0D0334 800CF734 00000000 */ nop -.L800CF738: -/* 0D0338 800CF738 8FB8002C */ lw $t8, 0x2c($sp) -/* 0D033C 800CF73C 17000005 */ bnez $t8, .L800CF754 -/* 0D0340 800CF740 00000000 */ nop -/* 0D0344 800CF744 97AB047C */ lhu $t3, 0x47c($sp) -/* 0D0348 800CF748 24010001 */ li $at, 1 -/* 0D034C 800CF74C 11610050 */ beq $t3, $at, .L800CF890 -/* 0D0350 800CF750 00000000 */ nop -.L800CF754: -/* 0D0354 800CF754 8FAF0488 */ lw $t7, 0x488($sp) -/* 0D0358 800CF758 A7A00260 */ sh $zero, 0x260($sp) -/* 0D035C 800CF75C AFA0025C */ sw $zero, 0x25c($sp) -/* 0D0360 800CF760 A7A00262 */ sh $zero, 0x262($sp) -/* 0D0364 800CF764 A3A00264 */ sb $zero, 0x264($sp) -/* 0D0368 800CF768 A7A00266 */ sh $zero, 0x266($sp) -/* 0D036C 800CF76C 91E90065 */ lbu $t1, 0x65($t7) -/* 0D0370 800CF770 1120000A */ beqz $t1, .L800CF79C -/* 0D0374 800CF774 00000000 */ nop -/* 0D0378 800CF778 A1E00065 */ sb $zero, 0x65($t7) -/* 0D037C 800CF77C 0C0357F7 */ jal func_800D5FDC -/* 0D0380 800CF780 8FA40488 */ lw $a0, 0x488($sp) -/* 0D0384 800CF784 AFA20480 */ sw $v0, 0x480($sp) -/* 0D0388 800CF788 8FA80480 */ lw $t0, 0x480($sp) -/* 0D038C 800CF78C 11000003 */ beqz $t0, .L800CF79C -/* 0D0390 800CF790 00000000 */ nop -/* 0D0394 800CF794 10000113 */ b .L800CFBE4 -/* 0D0398 800CF798 01001025 */ move $v0, $t0 -.L800CF79C: -/* 0D039C 800CF79C 8FAC0488 */ lw $t4, 0x488($sp) -/* 0D03A0 800CF7A0 8FAD0484 */ lw $t5, 0x484($sp) -/* 0D03A4 800CF7A4 27A7025C */ addiu $a3, $sp, 0x25c -/* 0D03A8 800CF7A8 8D8A005C */ lw $t2, 0x5c($t4) -/* 0D03AC 800CF7AC 8D840004 */ lw $a0, 4($t4) -/* 0D03B0 800CF7B0 8D850008 */ lw $a1, 8($t4) -/* 0D03B4 800CF7B4 AFA00010 */ sw $zero, 0x10($sp) -/* 0D03B8 800CF7B8 0C03363C */ jal func_800CD8F0 -/* 0D03BC 800CF7BC 014D3021 */ addu $a2, $t2, $t5 -/* 0D03C0 800CF7C0 AFA20480 */ sw $v0, 0x480($sp) -/* 0D03C4 800CF7C4 8FAE0480 */ lw $t6, 0x480($sp) -/* 0D03C8 800CF7C8 11C00003 */ beqz $t6, .L800CF7D8 -/* 0D03CC 800CF7CC 00000000 */ nop -/* 0D03D0 800CF7D0 10000104 */ b .L800CFBE4 -/* 0D03D4 800CF7D4 01C01025 */ move $v0, $t6 -.L800CF7D8: -/* 0D03D8 800CF7D8 8FB90034 */ lw $t9, 0x34($sp) -/* 0D03DC 800CF7DC 27380001 */ addiu $t8, $t9, 1 -/* 0D03E0 800CF7E0 1000002B */ b .L800CF890 -/* 0D03E4 800CF7E4 AFB80034 */ sw $t8, 0x34($sp) -.L800CF7E8: -/* 0D03E8 800CF7E8 97AB0260 */ lhu $t3, 0x260($sp) -/* 0D03EC 800CF7EC 15600004 */ bnez $t3, .L800CF800 -/* 0D03F0 800CF7F0 00000000 */ nop -/* 0D03F4 800CF7F4 8FA9025C */ lw $t1, 0x25c($sp) -/* 0D03F8 800CF7F8 11200025 */ beqz $t1, .L800CF890 -/* 0D03FC 800CF7FC 00000000 */ nop -.L800CF800: -/* 0D0400 800CF800 8FAF0488 */ lw $t7, 0x488($sp) -/* 0D0404 800CF804 A7A00260 */ sh $zero, 0x260($sp) -/* 0D0408 800CF808 AFA0025C */ sw $zero, 0x25c($sp) -/* 0D040C 800CF80C A7A00262 */ sh $zero, 0x262($sp) -/* 0D0410 800CF810 A3A00264 */ sb $zero, 0x264($sp) -/* 0D0414 800CF814 A7A00266 */ sh $zero, 0x266($sp) -/* 0D0418 800CF818 91E80065 */ lbu $t0, 0x65($t7) -/* 0D041C 800CF81C 1100000A */ beqz $t0, .L800CF848 -/* 0D0420 800CF820 00000000 */ nop -/* 0D0424 800CF824 A1E00065 */ sb $zero, 0x65($t7) -/* 0D0428 800CF828 0C0357F7 */ jal func_800D5FDC -/* 0D042C 800CF82C 8FA40488 */ lw $a0, 0x488($sp) -/* 0D0430 800CF830 AFA20480 */ sw $v0, 0x480($sp) -/* 0D0434 800CF834 8FAC0480 */ lw $t4, 0x480($sp) -/* 0D0438 800CF838 11800003 */ beqz $t4, .L800CF848 -/* 0D043C 800CF83C 00000000 */ nop -/* 0D0440 800CF840 100000E8 */ b .L800CFBE4 -/* 0D0444 800CF844 01801025 */ move $v0, $t4 -.L800CF848: -/* 0D0448 800CF848 8FAA0488 */ lw $t2, 0x488($sp) -/* 0D044C 800CF84C 8FAE0484 */ lw $t6, 0x484($sp) -/* 0D0450 800CF850 27A7025C */ addiu $a3, $sp, 0x25c -/* 0D0454 800CF854 8D4D005C */ lw $t5, 0x5c($t2) -/* 0D0458 800CF858 8D440004 */ lw $a0, 4($t2) -/* 0D045C 800CF85C 8D450008 */ lw $a1, 8($t2) -/* 0D0460 800CF860 AFA00010 */ sw $zero, 0x10($sp) -/* 0D0464 800CF864 0C03363C */ jal func_800CD8F0 -/* 0D0468 800CF868 01AE3021 */ addu $a2, $t5, $t6 -/* 0D046C 800CF86C AFA20480 */ sw $v0, 0x480($sp) -/* 0D0470 800CF870 8FB90480 */ lw $t9, 0x480($sp) -/* 0D0474 800CF874 13200003 */ beqz $t9, .L800CF884 -/* 0D0478 800CF878 00000000 */ nop -/* 0D047C 800CF87C 100000D9 */ b .L800CFBE4 -/* 0D0480 800CF880 03201025 */ move $v0, $t9 -.L800CF884: -/* 0D0484 800CF884 8FB80034 */ lw $t8, 0x34($sp) -/* 0D0488 800CF888 270B0001 */ addiu $t3, $t8, 1 -/* 0D048C 800CF88C AFAB0034 */ sw $t3, 0x34($sp) -.L800CF890: -/* 0D0490 800CF890 8FA90484 */ lw $t1, 0x484($sp) -/* 0D0494 800CF894 8FAF0488 */ lw $t7, 0x488($sp) -/* 0D0498 800CF898 25280001 */ addiu $t0, $t1, 1 -/* 0D049C 800CF89C AFA80484 */ sw $t0, 0x484($sp) -/* 0D04A0 800CF8A0 8DEC0050 */ lw $t4, 0x50($t7) -/* 0D04A4 800CF8A4 010C082A */ slt $at, $t0, $t4 -/* 0D04A8 800CF8A8 1420FF42 */ bnez $at, .L800CF5B4 -/* 0D04AC 800CF8AC 00000000 */ nop -.L800CF8B0: -/* 0D04B0 800CF8B0 8FAA0488 */ lw $t2, 0x488($sp) -/* 0D04B4 800CF8B4 AFA00484 */ sw $zero, 0x484($sp) -/* 0D04B8 800CF8B8 8D4D0050 */ lw $t5, 0x50($t2) -/* 0D04BC 800CF8BC 19A0002C */ blez $t5, .L800CF970 -/* 0D04C0 800CF8C0 00000000 */ nop -.L800CF8C4: -/* 0D04C4 800CF8C4 8FAE0488 */ lw $t6, 0x488($sp) -/* 0D04C8 800CF8C8 8FB80484 */ lw $t8, 0x484($sp) -/* 0D04CC 800CF8CC 27A7025C */ addiu $a3, $sp, 0x25c -/* 0D04D0 800CF8D0 8DD9005C */ lw $t9, 0x5c($t6) -/* 0D04D4 800CF8D4 8DC40004 */ lw $a0, 4($t6) -/* 0D04D8 800CF8D8 8DC50008 */ lw $a1, 8($t6) -/* 0D04DC 800CF8DC 0C033728 */ jal func_800CDCA0 -/* 0D04E0 800CF8E0 03383021 */ addu $a2, $t9, $t8 -/* 0D04E4 800CF8E4 AFA20480 */ sw $v0, 0x480($sp) -/* 0D04E8 800CF8E8 8FAB0480 */ lw $t3, 0x480($sp) -/* 0D04EC 800CF8EC 11600003 */ beqz $t3, .L800CF8FC -/* 0D04F0 800CF8F0 00000000 */ nop -/* 0D04F4 800CF8F4 100000BB */ b .L800CFBE4 -/* 0D04F8 800CF8F8 01601025 */ move $v0, $t3 -.L800CF8FC: -/* 0D04FC 800CF8FC 97A90260 */ lhu $t1, 0x260($sp) -/* 0D0500 800CF900 1120000F */ beqz $t1, .L800CF940 -/* 0D0504 800CF904 00000000 */ nop -/* 0D0508 800CF908 8FAF025C */ lw $t7, 0x25c($sp) -/* 0D050C 800CF90C 11E0000C */ beqz $t7, .L800CF940 -/* 0D0510 800CF910 00000000 */ nop -/* 0D0514 800CF914 8FAC0488 */ lw $t4, 0x488($sp) -/* 0D0518 800CF918 97A80262 */ lhu $t0, 0x262($sp) -/* 0D051C 800CF91C 958A0062 */ lhu $t2, 0x62($t4) -/* 0D0520 800CF920 010A082A */ slt $at, $t0, $t2 -/* 0D0524 800CF924 14200006 */ bnez $at, .L800CF940 -/* 0D0528 800CF928 00000000 */ nop -/* 0D052C 800CF92C 8FAD0484 */ lw $t5, 0x484($sp) -/* 0D0530 800CF930 000D7040 */ sll $t6, $t5, 1 -/* 0D0534 800CF934 03AEC821 */ addu $t9, $sp, $t6 -/* 0D0538 800CF938 10000005 */ b .L800CF950 -/* 0D053C 800CF93C A728023C */ sh $t0, 0x23c($t9) -.L800CF940: -/* 0D0540 800CF940 8FB80484 */ lw $t8, 0x484($sp) -/* 0D0544 800CF944 00185840 */ sll $t3, $t8, 1 -/* 0D0548 800CF948 03AB4821 */ addu $t1, $sp, $t3 -/* 0D054C 800CF94C A520023C */ sh $zero, 0x23c($t1) -.L800CF950: -/* 0D0550 800CF950 8FAF0484 */ lw $t7, 0x484($sp) -/* 0D0554 800CF954 8FAA0488 */ lw $t2, 0x488($sp) -/* 0D0558 800CF958 25EC0001 */ addiu $t4, $t7, 1 -/* 0D055C 800CF95C AFAC0484 */ sw $t4, 0x484($sp) -/* 0D0560 800CF960 8D4D0050 */ lw $t5, 0x50($t2) -/* 0D0564 800CF964 018D082A */ slt $at, $t4, $t5 -/* 0D0568 800CF968 1420FFD6 */ bnez $at, .L800CF8C4 -/* 0D056C 800CF96C 00000000 */ nop -.L800CF970: -/* 0D0570 800CF970 8FA80488 */ lw $t0, 0x488($sp) -/* 0D0574 800CF974 A3A00033 */ sb $zero, 0x33($sp) -/* 0D0578 800CF978 910E0064 */ lbu $t6, 0x64($t0) -/* 0D057C 800CF97C 19C0008B */ blez $t6, .L800CFBAC -/* 0D0580 800CF980 00000000 */ nop -.L800CF984: -/* 0D0584 800CF984 8FA40488 */ lw $a0, 0x488($sp) -/* 0D0588 800CF988 27A5027C */ addiu $a1, $sp, 0x27c -/* 0D058C 800CF98C 00003025 */ move $a2, $zero -/* 0D0590 800CF990 0C03572F */ jal func_800D5CBC -/* 0D0594 800CF994 93A70033 */ lbu $a3, 0x33($sp) -/* 0D0598 800CF998 AFA20480 */ sw $v0, 0x480($sp) -/* 0D059C 800CF99C 8FB90480 */ lw $t9, 0x480($sp) -/* 0D05A0 800CF9A0 13200005 */ beqz $t9, .L800CF9B8 -/* 0D05A4 800CF9A4 24010003 */ li $at, 3 -/* 0D05A8 800CF9A8 13210003 */ beq $t9, $at, .L800CF9B8 -/* 0D05AC 800CF9AC 00000000 */ nop -/* 0D05B0 800CF9B0 1000008C */ b .L800CFBE4 -/* 0D05B4 800CF9B4 03201025 */ move $v0, $t9 -.L800CF9B8: -/* 0D05B8 800CF9B8 93B80033 */ lbu $t8, 0x33($sp) -/* 0D05BC 800CF9BC 1B000004 */ blez $t8, .L800CF9D0 -/* 0D05C0 800CF9C0 00000000 */ nop -/* 0D05C4 800CF9C4 240B0001 */ li $t3, 1 -/* 0D05C8 800CF9C8 10000004 */ b .L800CF9DC -/* 0D05CC 800CF9CC AFAB0024 */ sw $t3, 0x24($sp) -.L800CF9D0: -/* 0D05D0 800CF9D0 8FA90488 */ lw $t1, 0x488($sp) -/* 0D05D4 800CF9D4 8D2F0060 */ lw $t7, 0x60($t1) -/* 0D05D8 800CF9D8 AFAF0024 */ sw $t7, 0x24($sp) -.L800CF9DC: -/* 0D05DC 800CF9DC 8FAA0024 */ lw $t2, 0x24($sp) -/* 0D05E0 800CF9E0 AFA00484 */ sw $zero, 0x484($sp) -/* 0D05E4 800CF9E4 1940000D */ blez $t2, .L800CFA1C -/* 0D05E8 800CF9E8 00000000 */ nop -.L800CF9EC: -/* 0D05EC 800CF9EC 8FAC0484 */ lw $t4, 0x484($sp) -/* 0D05F0 800CF9F0 000C6840 */ sll $t5, $t4, 1 -/* 0D05F4 800CF9F4 03AD4021 */ addu $t0, $sp, $t5 -/* 0D05F8 800CF9F8 9508027C */ lhu $t0, 0x27c($t0) -/* 0D05FC 800CF9FC 03AD7021 */ addu $t6, $sp, $t5 -/* 0D0600 800CFA00 A5C8037C */ sh $t0, 0x37c($t6) -/* 0D0604 800CFA04 8FB90484 */ lw $t9, 0x484($sp) -/* 0D0608 800CFA08 8FAB0024 */ lw $t3, 0x24($sp) -/* 0D060C 800CFA0C 27380001 */ addiu $t8, $t9, 1 -/* 0D0610 800CFA10 030B082A */ slt $at, $t8, $t3 -/* 0D0614 800CFA14 1420FFF5 */ bnez $at, .L800CF9EC -/* 0D0618 800CFA18 AFB80484 */ sw $t8, 0x484($sp) -.L800CFA1C: -/* 0D061C 800CFA1C 8FA90484 */ lw $t1, 0x484($sp) -/* 0D0620 800CFA20 29210080 */ slti $at, $t1, 0x80 -/* 0D0624 800CFA24 1020000B */ beqz $at, .L800CFA54 -/* 0D0628 800CFA28 00000000 */ nop -.L800CFA2C: -/* 0D062C 800CFA2C 8FAA0484 */ lw $t2, 0x484($sp) -/* 0D0630 800CFA30 240F0003 */ li $t7, 3 -/* 0D0634 800CFA34 000A6040 */ sll $t4, $t2, 1 -/* 0D0638 800CFA38 03AC4021 */ addu $t0, $sp, $t4 -/* 0D063C 800CFA3C A50F037C */ sh $t7, 0x37c($t0) -/* 0D0640 800CFA40 8FAD0484 */ lw $t5, 0x484($sp) -/* 0D0644 800CFA44 25AE0001 */ addiu $t6, $t5, 1 -/* 0D0648 800CFA48 29C10080 */ slti $at, $t6, 0x80 -/* 0D064C 800CFA4C 1420FFF7 */ bnez $at, .L800CFA2C -/* 0D0650 800CFA50 AFAE0484 */ sw $t6, 0x484($sp) -.L800CFA54: -/* 0D0654 800CFA54 8FB90488 */ lw $t9, 0x488($sp) -/* 0D0658 800CFA58 AFA00484 */ sw $zero, 0x484($sp) -/* 0D065C 800CFA5C 8F380050 */ lw $t8, 0x50($t9) -/* 0D0660 800CFA60 1B00003E */ blez $t8, .L800CFB5C -/* 0D0664 800CFA64 00000000 */ nop -.L800CFA68: -/* 0D0668 800CFA68 8FAB0484 */ lw $t3, 0x484($sp) -/* 0D066C 800CFA6C 27AA023C */ addiu $t2, $sp, 0x23c -/* 0D0670 800CFA70 93A80033 */ lbu $t0, 0x33($sp) -/* 0D0674 800CFA74 000B4840 */ sll $t1, $t3, 1 -/* 0D0678 800CFA78 012A7821 */ addu $t7, $t1, $t2 -/* 0D067C 800CFA7C 91EC0000 */ lbu $t4, ($t7) -/* 0D0680 800CFA80 1588002E */ bne $t4, $t0, .L800CFB3C -/* 0D0684 800CFA84 00000000 */ nop -/* 0D0688 800CFA88 8FAE0488 */ lw $t6, 0x488($sp) -/* 0D068C 800CFA8C 95ED0000 */ lhu $t5, ($t7) -/* 0D0690 800CFA90 95D90062 */ lhu $t9, 0x62($t6) -/* 0D0694 800CFA94 01B9082A */ slt $at, $t5, $t9 -/* 0D0698 800CFA98 14200028 */ bnez $at, .L800CFB3C -/* 0D069C 800CFA9C 00000000 */ nop -.L800CFAA0: -/* 0D06A0 800CFAA0 8FB80484 */ lw $t8, 0x484($sp) -/* 0D06A4 800CFAA4 27A8027C */ addiu $t0, $sp, 0x27c -/* 0D06A8 800CFAA8 27AA0020 */ addiu $t2, $sp, 0x20 -/* 0D06AC 800CFAAC 00185840 */ sll $t3, $t8, 1 -/* 0D06B0 800CFAB0 03AB4821 */ addu $t1, $sp, $t3 -/* 0D06B4 800CFAB4 9129023D */ lbu $t1, 0x23d($t1) -/* 0D06B8 800CFAB8 00096040 */ sll $t4, $t1, 1 -/* 0D06BC 800CFABC 01887821 */ addu $t7, $t4, $t0 -/* 0D06C0 800CFAC0 A3A90023 */ sb $t1, 0x23($sp) -/* 0D06C4 800CFAC4 95E10000 */ lhu $at, ($t7) -/* 0D06C8 800CFAC8 27A80020 */ addiu $t0, $sp, 0x20 -/* 0D06CC 800CFACC 27A9037C */ addiu $t1, $sp, 0x37c -/* 0D06D0 800CFAD0 A5410000 */ sh $at, ($t2) -/* 0D06D4 800CFAD4 93B80023 */ lbu $t8, 0x23($sp) -/* 0D06D8 800CFAD8 95010000 */ lhu $at, ($t0) -/* 0D06DC 800CFADC 00185840 */ sll $t3, $t8, 1 -/* 0D06E0 800CFAE0 01696021 */ addu $t4, $t3, $t1 -/* 0D06E4 800CFAE4 A5810000 */ sh $at, ($t4) -/* 0D06E8 800CFAE8 8FAF0484 */ lw $t7, 0x484($sp) -/* 0D06EC 800CFAEC 27A90020 */ addiu $t1, $sp, 0x20 -/* 0D06F0 800CFAF0 95210000 */ lhu $at, ($t1) -/* 0D06F4 800CFAF4 27B8023C */ addiu $t8, $sp, 0x23c -/* 0D06F8 800CFAF8 000FC840 */ sll $t9, $t7, 1 -/* 0D06FC 800CFAFC 03385821 */ addu $t3, $t9, $t8 -/* 0D0700 800CFB00 A5610000 */ sh $at, ($t3) -/* 0D0704 800CFB04 8FA80484 */ lw $t0, 0x484($sp) -/* 0D0708 800CFB08 27AF023C */ addiu $t7, $sp, 0x23c -/* 0D070C 800CFB0C 93AD0033 */ lbu $t5, 0x33($sp) -/* 0D0710 800CFB10 00085040 */ sll $t2, $t0, 1 -/* 0D0714 800CFB14 014FC821 */ addu $t9, $t2, $t7 -/* 0D0718 800CFB18 93380000 */ lbu $t8, ($t9) -/* 0D071C 800CFB1C 170D0007 */ bne $t8, $t5, .L800CFB3C -/* 0D0720 800CFB20 00000000 */ nop -/* 0D0724 800CFB24 8FAB0488 */ lw $t3, 0x488($sp) -/* 0D0728 800CFB28 972E0000 */ lhu $t6, ($t9) -/* 0D072C 800CFB2C 95690062 */ lhu $t1, 0x62($t3) -/* 0D0730 800CFB30 01C9082A */ slt $at, $t6, $t1 -/* 0D0734 800CFB34 1020FFDA */ beqz $at, .L800CFAA0 -/* 0D0738 800CFB38 00000000 */ nop -.L800CFB3C: -/* 0D073C 800CFB3C 8FAC0484 */ lw $t4, 0x484($sp) -/* 0D0740 800CFB40 8FAA0488 */ lw $t2, 0x488($sp) -/* 0D0744 800CFB44 25880001 */ addiu $t0, $t4, 1 -/* 0D0748 800CFB48 AFA80484 */ sw $t0, 0x484($sp) -/* 0D074C 800CFB4C 8D4F0050 */ lw $t7, 0x50($t2) -/* 0D0750 800CFB50 010F082A */ slt $at, $t0, $t7 -/* 0D0754 800CFB54 1420FFC4 */ bnez $at, .L800CFA68 -/* 0D0758 800CFB58 00000000 */ nop -.L800CFB5C: -/* 0D075C 800CFB5C 8FA40488 */ lw $a0, 0x488($sp) -/* 0D0760 800CFB60 27A5037C */ addiu $a1, $sp, 0x37c -/* 0D0764 800CFB64 24060001 */ li $a2, 1 -/* 0D0768 800CFB68 0C03572F */ jal func_800D5CBC -/* 0D076C 800CFB6C 93A70033 */ lbu $a3, 0x33($sp) -/* 0D0770 800CFB70 AFA20480 */ sw $v0, 0x480($sp) -/* 0D0774 800CFB74 8FB80480 */ lw $t8, 0x480($sp) -/* 0D0778 800CFB78 13000003 */ beqz $t8, .L800CFB88 -/* 0D077C 800CFB7C 00000000 */ nop -/* 0D0780 800CFB80 10000018 */ b .L800CFBE4 -/* 0D0784 800CFB84 03001025 */ move $v0, $t8 -.L800CFB88: -/* 0D0788 800CFB88 93AD0033 */ lbu $t5, 0x33($sp) -/* 0D078C 800CFB8C 8FAE0488 */ lw $t6, 0x488($sp) -/* 0D0790 800CFB90 25B90001 */ addiu $t9, $t5, 1 -/* 0D0794 800CFB94 A3B90033 */ sb $t9, 0x33($sp) -/* 0D0798 800CFB98 91C90064 */ lbu $t1, 0x64($t6) -/* 0D079C 800CFB9C 332B00FF */ andi $t3, $t9, 0xff -/* 0D07A0 800CFBA0 0169082A */ slt $at, $t3, $t1 -/* 0D07A4 800CFBA4 1420FF77 */ bnez $at, .L800CF984 -/* 0D07A8 800CFBA8 00000000 */ nop -.L800CFBAC: -/* 0D07AC 800CFBAC 8FAC0034 */ lw $t4, 0x34($sp) -/* 0D07B0 800CFBB0 11800006 */ beqz $t4, .L800CFBCC -/* 0D07B4 800CFBB4 00000000 */ nop -/* 0D07B8 800CFBB8 8FAA0488 */ lw $t2, 0x488($sp) -/* 0D07BC 800CFBBC 8D480000 */ lw $t0, ($t2) -/* 0D07C0 800CFBC0 350F0002 */ ori $t7, $t0, 2 -/* 0D07C4 800CFBC4 10000006 */ b .L800CFBE0 -/* 0D07C8 800CFBC8 AD4F0000 */ sw $t7, ($t2) -.L800CFBCC: -/* 0D07CC 800CFBCC 8FB80488 */ lw $t8, 0x488($sp) -/* 0D07D0 800CFBD0 2401FFFD */ li $at, -3 -/* 0D07D4 800CFBD4 8F0D0000 */ lw $t5, ($t8) -/* 0D07D8 800CFBD8 01A1C824 */ and $t9, $t5, $at -/* 0D07DC 800CFBDC AF190000 */ sw $t9, ($t8) -.L800CFBE0: -/* 0D07E0 800CFBE0 00001025 */ move $v0, $zero -.L800CFBE4: -/* 0D07E4 800CFBE4 8FBF001C */ lw $ra, 0x1c($sp) -/* 0D07E8 800CFBE8 27BD0488 */ addiu $sp, $sp, 0x488 -/* 0D07EC 800CFBEC 03E00008 */ jr $ra -/* 0D07F0 800CFBF0 00000000 */ nop - -glabel func_800CFBF4 -/* 0D07F4 800CFBF4 27BDFED0 */ addiu $sp, $sp, -0x130 -/* 0D07F8 800CFBF8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D07FC 800CFBFC AFA40130 */ sw $a0, 0x130($sp) -/* 0D0800 800CFC00 AFA50134 */ sw $a1, 0x134($sp) -/* 0D0804 800CFC04 AFA0012C */ sw $zero, 0x12c($sp) -.L800CFC08: -/* 0D0808 800CFC08 8FAE0134 */ lw $t6, 0x134($sp) -/* 0D080C 800CFC0C 8FAF012C */ lw $t7, 0x12c($sp) -/* 0D0810 800CFC10 01CFC021 */ addu $t8, $t6, $t7 -/* 0D0814 800CFC14 A3000101 */ sb $zero, 0x101($t8) -/* 0D0818 800CFC18 8FB9012C */ lw $t9, 0x12c($sp) -/* 0D081C 800CFC1C 27280001 */ addiu $t0, $t9, 1 -/* 0D0820 800CFC20 29010100 */ slti $at, $t0, 0x100 -/* 0D0824 800CFC24 1420FFF8 */ bnez $at, .L800CFC08 -/* 0D0828 800CFC28 AFA8012C */ sw $t0, 0x12c($sp) -/* 0D082C 800CFC2C 8FAA0134 */ lw $t2, 0x134($sp) -/* 0D0830 800CFC30 240900FF */ li $t1, 255 -/* 0D0834 800CFC34 A1490100 */ sb $t1, 0x100($t2) -/* 0D0838 800CFC38 8FAB0130 */ lw $t3, 0x130($sp) -/* 0D083C 800CFC3C A3A00123 */ sb $zero, 0x123($sp) -/* 0D0840 800CFC40 916C0064 */ lbu $t4, 0x64($t3) -/* 0D0844 800CFC44 19800053 */ blez $t4, .L800CFD94 -/* 0D0848 800CFC48 00000000 */ nop -.L800CFC4C: -/* 0D084C 800CFC4C 93AD0123 */ lbu $t5, 0x123($sp) -/* 0D0850 800CFC50 19A00004 */ blez $t5, .L800CFC64 -/* 0D0854 800CFC54 00000000 */ nop -/* 0D0858 800CFC58 240E0001 */ li $t6, 1 -/* 0D085C 800CFC5C 10000004 */ b .L800CFC70 -/* 0D0860 800CFC60 AFAE0124 */ sw $t6, 0x124($sp) -.L800CFC64: -/* 0D0864 800CFC64 8FAF0130 */ lw $t7, 0x130($sp) -/* 0D0868 800CFC68 8DF80060 */ lw $t8, 0x60($t7) -/* 0D086C 800CFC6C AFB80124 */ sw $t8, 0x124($sp) -.L800CFC70: -/* 0D0870 800CFC70 8FA40130 */ lw $a0, 0x130($sp) -/* 0D0874 800CFC74 27A50020 */ addiu $a1, $sp, 0x20 -/* 0D0878 800CFC78 00003025 */ move $a2, $zero -/* 0D087C 800CFC7C 0C03572F */ jal func_800D5CBC -/* 0D0880 800CFC80 93A70123 */ lbu $a3, 0x123($sp) -/* 0D0884 800CFC84 AFA2001C */ sw $v0, 0x1c($sp) -/* 0D0888 800CFC88 8FB9001C */ lw $t9, 0x1c($sp) -/* 0D088C 800CFC8C 13200005 */ beqz $t9, .L800CFCA4 -/* 0D0890 800CFC90 24010003 */ li $at, 3 -/* 0D0894 800CFC94 13210003 */ beq $t9, $at, .L800CFCA4 -/* 0D0898 800CFC98 00000000 */ nop -/* 0D089C 800CFC9C 1000003E */ b .L800CFD98 -/* 0D08A0 800CFCA0 03201025 */ move $v0, $t9 -.L800CFCA4: -/* 0D08A4 800CFCA4 8FA80124 */ lw $t0, 0x124($sp) -/* 0D08A8 800CFCA8 29010080 */ slti $at, $t0, 0x80 -/* 0D08AC 800CFCAC 10200030 */ beqz $at, .L800CFD70 -/* 0D08B0 800CFCB0 AFA8012C */ sw $t0, 0x12c($sp) -.L800CFCB4: -/* 0D08B4 800CFCB4 8FAA012C */ lw $t2, 0x12c($sp) -/* 0D08B8 800CFCB8 27AC0020 */ addiu $t4, $sp, 0x20 -/* 0D08BC 800CFCBC 27A90120 */ addiu $t1, $sp, 0x120 -/* 0D08C0 800CFCC0 000A5840 */ sll $t3, $t2, 1 -/* 0D08C4 800CFCC4 016C6821 */ addu $t5, $t3, $t4 -/* 0D08C8 800CFCC8 95A10000 */ lhu $at, ($t5) -/* 0D08CC 800CFCCC A5210000 */ sh $at, ($t1) -/* 0D08D0 800CFCD0 8FB90130 */ lw $t9, 0x130($sp) -/* 0D08D4 800CFCD4 97B80120 */ lhu $t8, 0x120($sp) -/* 0D08D8 800CFCD8 8F280060 */ lw $t0, 0x60($t9) -/* 0D08DC 800CFCDC 0308082A */ slt $at, $t8, $t0 -/* 0D08E0 800CFCE0 1420001E */ bnez $at, .L800CFD5C -/* 0D08E4 800CFCE4 00000000 */ nop -/* 0D08E8 800CFCE8 93AA0120 */ lbu $t2, 0x120($sp) -/* 0D08EC 800CFCEC 93AB0123 */ lbu $t3, 0x123($sp) -/* 0D08F0 800CFCF0 114B001A */ beq $t2, $t3, .L800CFD5C -/* 0D08F4 800CFCF4 00000000 */ nop -/* 0D08F8 800CFCF8 93AC0121 */ lbu $t4, 0x121($sp) -/* 0D08FC 800CFCFC 8FB90134 */ lw $t9, 0x134($sp) -/* 0D0900 800CFD00 05810003 */ bgez $t4, .L800CFD10 -/* 0D0904 800CFD04 000C7083 */ sra $t6, $t4, 2 -/* 0D0908 800CFD08 25810003 */ addiu $at, $t4, 3 -/* 0D090C 800CFD0C 00017083 */ sra $t6, $at, 2 -.L800CFD10: -/* 0D0910 800CFD10 05410004 */ bgez $t2, .L800CFD24 -/* 0D0914 800CFD14 31490007 */ andi $t1, $t2, 7 -/* 0D0918 800CFD18 11200002 */ beqz $t1, .L800CFD24 -/* 0D091C 800CFD1C 00000000 */ nop -/* 0D0920 800CFD20 2529FFF8 */ addiu $t1, $t1, -8 -.L800CFD24: -/* 0D0924 800CFD24 00096940 */ sll $t5, $t1, 5 -/* 0D0928 800CFD28 01CD7821 */ addu $t7, $t6, $t5 -/* 0D092C 800CFD2C AFAF0128 */ sw $t7, 0x128($sp) -/* 0D0930 800CFD30 032FC021 */ addu $t8, $t9, $t7 -/* 0D0934 800CFD34 93080101 */ lbu $t0, 0x101($t8) -/* 0D0938 800CFD38 05610004 */ bgez $t3, .L800CFD4C -/* 0D093C 800CFD3C 316C0007 */ andi $t4, $t3, 7 -/* 0D0940 800CFD40 11800002 */ beqz $t4, .L800CFD4C -/* 0D0944 800CFD44 00000000 */ nop -/* 0D0948 800CFD48 258CFFF8 */ addiu $t4, $t4, -8 -.L800CFD4C: -/* 0D094C 800CFD4C 240A0001 */ li $t2, 1 -/* 0D0950 800CFD50 018A4804 */ sllv $t1, $t2, $t4 -/* 0D0954 800CFD54 01097025 */ or $t6, $t0, $t1 -/* 0D0958 800CFD58 A30E0101 */ sb $t6, 0x101($t8) -.L800CFD5C: -/* 0D095C 800CFD5C 8FAD012C */ lw $t5, 0x12c($sp) -/* 0D0960 800CFD60 25B90001 */ addiu $t9, $t5, 1 -/* 0D0964 800CFD64 2B210080 */ slti $at, $t9, 0x80 -/* 0D0968 800CFD68 1420FFD2 */ bnez $at, .L800CFCB4 -/* 0D096C 800CFD6C AFB9012C */ sw $t9, 0x12c($sp) -.L800CFD70: -/* 0D0970 800CFD70 93AF0123 */ lbu $t7, 0x123($sp) -/* 0D0974 800CFD74 8FAC0130 */ lw $t4, 0x130($sp) -/* 0D0978 800CFD78 25EB0001 */ addiu $t3, $t7, 1 -/* 0D097C 800CFD7C A3AB0123 */ sb $t3, 0x123($sp) -/* 0D0980 800CFD80 91880064 */ lbu $t0, 0x64($t4) -/* 0D0984 800CFD84 316A00FF */ andi $t2, $t3, 0xff -/* 0D0988 800CFD88 0148082A */ slt $at, $t2, $t0 -/* 0D098C 800CFD8C 1420FFAF */ bnez $at, .L800CFC4C -/* 0D0990 800CFD90 00000000 */ nop -.L800CFD94: -/* 0D0994 800CFD94 00001025 */ move $v0, $zero -.L800CFD98: -/* 0D0998 800CFD98 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D099C 800CFD9C 27BD0130 */ addiu $sp, $sp, 0x130 -/* 0D09A0 800CFDA0 03E00008 */ jr $ra -/* 0D09A4 800CFDA4 00000000 */ nop - -glabel func_800CFDA8 -/* 0D09A8 800CFDA8 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0D09AC 800CFDAC AFA50034 */ sw $a1, 0x34($sp) -/* 0D09B0 800CFDB0 93B80034 */ lbu $t8, 0x34($sp) -/* 0D09B4 800CFDB4 93AE0035 */ lbu $t6, 0x35($sp) -/* 0D09B8 800CFDB8 AFA40030 */ sw $a0, 0x30($sp) -/* 0D09BC 800CFDBC 8FAA0030 */ lw $t2, 0x30($sp) -/* 0D09C0 800CFDC0 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D09C4 800CFDC4 AFA60038 */ sw $a2, 0x38($sp) -/* 0D09C8 800CFDC8 AFA00024 */ sw $zero, 0x24($sp) -/* 0D09CC 800CFDCC AFA00018 */ sw $zero, 0x18($sp) -/* 0D09D0 800CFDD0 05C10003 */ bgez $t6, .L800CFDE0 -/* 0D09D4 800CFDD4 000E7883 */ sra $t7, $t6, 2 -/* 0D09D8 800CFDD8 25C10003 */ addiu $at, $t6, 3 -/* 0D09DC 800CFDDC 00017883 */ sra $t7, $at, 2 -.L800CFDE0: -/* 0D09E0 800CFDE0 07010004 */ bgez $t8, .L800CFDF4 -/* 0D09E4 800CFDE4 33190007 */ andi $t9, $t8, 7 -/* 0D09E8 800CFDE8 13200002 */ beqz $t9, .L800CFDF4 -/* 0D09EC 800CFDEC 00000000 */ nop -/* 0D09F0 800CFDF0 2739FFF8 */ addiu $t9, $t9, -8 -.L800CFDF4: -/* 0D09F4 800CFDF4 00194140 */ sll $t0, $t9, 5 -/* 0D09F8 800CFDF8 01E84821 */ addu $t1, $t7, $t0 -/* 0D09FC 800CFDFC AFA90028 */ sw $t1, 0x28($sp) -/* 0D0A00 800CFE00 A3A00023 */ sb $zero, 0x23($sp) -/* 0D0A04 800CFE04 914B0064 */ lbu $t3, 0x64($t2) -/* 0D0A08 800CFE08 1960005C */ blez $t3, .L800CFF7C -/* 0D0A0C 800CFE0C 00000000 */ nop -.L800CFE10: -/* 0D0A10 800CFE10 93AC0023 */ lbu $t4, 0x23($sp) -/* 0D0A14 800CFE14 19800004 */ blez $t4, .L800CFE28 -/* 0D0A18 800CFE18 00000000 */ nop -/* 0D0A1C 800CFE1C 240D0001 */ li $t5, 1 -/* 0D0A20 800CFE20 10000004 */ b .L800CFE34 -/* 0D0A24 800CFE24 AFAD001C */ sw $t5, 0x1c($sp) -.L800CFE28: -/* 0D0A28 800CFE28 8FAE0030 */ lw $t6, 0x30($sp) -/* 0D0A2C 800CFE2C 8DD80060 */ lw $t8, 0x60($t6) -/* 0D0A30 800CFE30 AFB8001C */ sw $t8, 0x1c($sp) -.L800CFE34: -/* 0D0A34 800CFE34 93B90023 */ lbu $t9, 0x23($sp) -/* 0D0A38 800CFE38 93AF0034 */ lbu $t7, 0x34($sp) -/* 0D0A3C 800CFE3C 132F000F */ beq $t9, $t7, .L800CFE7C -/* 0D0A40 800CFE40 00000000 */ nop -/* 0D0A44 800CFE44 8FA80038 */ lw $t0, 0x38($sp) -/* 0D0A48 800CFE48 8FA90028 */ lw $t1, 0x28($sp) -/* 0D0A4C 800CFE4C 240D0001 */ li $t5, 1 -/* 0D0A50 800CFE50 01095021 */ addu $t2, $t0, $t1 -/* 0D0A54 800CFE54 914B0101 */ lbu $t3, 0x101($t2) -/* 0D0A58 800CFE58 07210004 */ bgez $t9, .L800CFE6C -/* 0D0A5C 800CFE5C 332C0007 */ andi $t4, $t9, 7 -/* 0D0A60 800CFE60 11800002 */ beqz $t4, .L800CFE6C -/* 0D0A64 800CFE64 00000000 */ nop -/* 0D0A68 800CFE68 258CFFF8 */ addiu $t4, $t4, -8 -.L800CFE6C: -/* 0D0A6C 800CFE6C 018D7004 */ sllv $t6, $t5, $t4 -/* 0D0A70 800CFE70 016EC024 */ and $t8, $t3, $t6 -/* 0D0A74 800CFE74 13000038 */ beqz $t8, .L800CFF58 -/* 0D0A78 800CFE78 00000000 */ nop -.L800CFE7C: -/* 0D0A7C 800CFE7C 8FA80038 */ lw $t0, 0x38($sp) -/* 0D0A80 800CFE80 93AF0023 */ lbu $t7, 0x23($sp) -/* 0D0A84 800CFE84 91090100 */ lbu $t1, 0x100($t0) -/* 0D0A88 800CFE88 11E90011 */ beq $t7, $t1, .L800CFED0 -/* 0D0A8C 800CFE8C 00000000 */ nop -/* 0D0A90 800CFE90 8FA40030 */ lw $a0, 0x30($sp) -/* 0D0A94 800CFE94 01002825 */ move $a1, $t0 -/* 0D0A98 800CFE98 00003025 */ move $a2, $zero -/* 0D0A9C 800CFE9C 0C03572F */ jal func_800D5CBC -/* 0D0AA0 800CFEA0 01E03825 */ move $a3, $t7 -/* 0D0AA4 800CFEA4 AFA20018 */ sw $v0, 0x18($sp) -/* 0D0AA8 800CFEA8 8FAA0018 */ lw $t2, 0x18($sp) -/* 0D0AAC 800CFEAC 11400005 */ beqz $t2, .L800CFEC4 -/* 0D0AB0 800CFEB0 24010003 */ li $at, 3 -/* 0D0AB4 800CFEB4 11410003 */ beq $t2, $at, .L800CFEC4 -/* 0D0AB8 800CFEB8 00000000 */ nop -/* 0D0ABC 800CFEBC 10000030 */ b .L800CFF80 -/* 0D0AC0 800CFEC0 01401025 */ move $v0, $t2 -.L800CFEC4: -/* 0D0AC4 800CFEC4 93B90023 */ lbu $t9, 0x23($sp) -/* 0D0AC8 800CFEC8 8FAD0038 */ lw $t5, 0x38($sp) -/* 0D0ACC 800CFECC A1B90100 */ sb $t9, 0x100($t5) -.L800CFED0: -/* 0D0AD0 800CFED0 8FAB0024 */ lw $t3, 0x24($sp) -/* 0D0AD4 800CFED4 8FAC001C */ lw $t4, 0x1c($sp) -/* 0D0AD8 800CFED8 29610002 */ slti $at, $t3, 2 -/* 0D0ADC 800CFEDC 10200018 */ beqz $at, .L800CFF40 -/* 0D0AE0 800CFEE0 AFAC002C */ sw $t4, 0x2c($sp) -/* 0D0AE4 800CFEE4 29810080 */ slti $at, $t4, 0x80 -/* 0D0AE8 800CFEE8 10200015 */ beqz $at, .L800CFF40 -/* 0D0AEC 800CFEEC 00000000 */ nop -.L800CFEF0: -/* 0D0AF0 800CFEF0 8FB8002C */ lw $t8, 0x2c($sp) -/* 0D0AF4 800CFEF4 8FAE0038 */ lw $t6, 0x38($sp) -/* 0D0AF8 800CFEF8 97AA0034 */ lhu $t2, 0x34($sp) -/* 0D0AFC 800CFEFC 00184840 */ sll $t1, $t8, 1 -/* 0D0B00 800CFF00 01C94021 */ addu $t0, $t6, $t1 -/* 0D0B04 800CFF04 950F0000 */ lhu $t7, ($t0) -/* 0D0B08 800CFF08 15EA0004 */ bne $t7, $t2, .L800CFF1C -/* 0D0B0C 800CFF0C 00000000 */ nop -/* 0D0B10 800CFF10 8FB90024 */ lw $t9, 0x24($sp) -/* 0D0B14 800CFF14 272D0001 */ addiu $t5, $t9, 1 -/* 0D0B18 800CFF18 AFAD0024 */ sw $t5, 0x24($sp) -.L800CFF1C: -/* 0D0B1C 800CFF1C 8FAB002C */ lw $t3, 0x2c($sp) -/* 0D0B20 800CFF20 8FB80024 */ lw $t8, 0x24($sp) -/* 0D0B24 800CFF24 256C0001 */ addiu $t4, $t3, 1 -/* 0D0B28 800CFF28 2B010002 */ slti $at, $t8, 2 -/* 0D0B2C 800CFF2C 10200004 */ beqz $at, .L800CFF40 -/* 0D0B30 800CFF30 AFAC002C */ sw $t4, 0x2c($sp) -/* 0D0B34 800CFF34 29810080 */ slti $at, $t4, 0x80 -/* 0D0B38 800CFF38 1420FFED */ bnez $at, .L800CFEF0 -/* 0D0B3C 800CFF3C 00000000 */ nop -.L800CFF40: -/* 0D0B40 800CFF40 8FAE0024 */ lw $t6, 0x24($sp) -/* 0D0B44 800CFF44 29C10002 */ slti $at, $t6, 2 -/* 0D0B48 800CFF48 14200003 */ bnez $at, .L800CFF58 -/* 0D0B4C 800CFF4C 00000000 */ nop -/* 0D0B50 800CFF50 1000000B */ b .L800CFF80 -/* 0D0B54 800CFF54 24020002 */ li $v0, 2 -.L800CFF58: -/* 0D0B58 800CFF58 93A90023 */ lbu $t1, 0x23($sp) -/* 0D0B5C 800CFF5C 8FAA0030 */ lw $t2, 0x30($sp) -/* 0D0B60 800CFF60 25280001 */ addiu $t0, $t1, 1 -/* 0D0B64 800CFF64 A3A80023 */ sb $t0, 0x23($sp) -/* 0D0B68 800CFF68 91590064 */ lbu $t9, 0x64($t2) -/* 0D0B6C 800CFF6C 310F00FF */ andi $t7, $t0, 0xff -/* 0D0B70 800CFF70 01F9082A */ slt $at, $t7, $t9 -/* 0D0B74 800CFF74 1420FFA6 */ bnez $at, .L800CFE10 -/* 0D0B78 800CFF78 00000000 */ nop -.L800CFF7C: -/* 0D0B7C 800CFF7C 8FA20024 */ lw $v0, 0x24($sp) -.L800CFF80: -/* 0D0B80 800CFF80 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D0B84 800CFF84 27BD0030 */ addiu $sp, $sp, 0x30 -/* 0D0B88 800CFF88 03E00008 */ jr $ra -/* 0D0B8C 800CFF8C 00000000 */ nop - -glabel func_800CFF90 -/* 0D0B90 800CFF90 27BDFEB0 */ addiu $sp, $sp, -0x150 -/* 0D0B94 800CFF94 AFBF001C */ sw $ra, 0x1c($sp) -/* 0D0B98 800CFF98 AFA40150 */ sw $a0, 0x150($sp) -/* 0D0B9C 800CFF9C AFA50154 */ sw $a1, 0x154($sp) -/* 0D0BA0 800CFFA0 0C033594 */ jal func_800CD650 -/* 0D0BA4 800CFFA4 AFA60158 */ sw $a2, 0x158($sp) -/* 0D0BA8 800CFFA8 8FA40154 */ lw $a0, 0x154($sp) -/* 0D0BAC 800CFFAC 0C033B75 */ jal func_800CEDD4 -/* 0D0BB0 800CFFB0 8FA50158 */ lw $a1, 0x158($sp) -/* 0D0BB4 800CFFB4 AFA20020 */ sw $v0, 0x20($sp) -/* 0D0BB8 800CFFB8 8FAE0020 */ lw $t6, 0x20($sp) -/* 0D0BBC 800CFFBC 11C00003 */ beqz $t6, .L800CFFCC -/* 0D0BC0 800CFFC0 00000000 */ nop -/* 0D0BC4 800CFFC4 100000EE */ b .L800D0380 -/* 0D0BC8 800CFFC8 01C01025 */ move $v0, $t6 -.L800CFFCC: -/* 0D0BCC 800CFFCC 8FAF0150 */ lw $t7, 0x150($sp) -/* 0D0BD0 800CFFD0 8DF80000 */ lw $t8, ($t7) -/* 0D0BD4 800CFFD4 3B190001 */ xori $t9, $t8, 1 -/* 0D0BD8 800CFFD8 ADF90000 */ sw $t9, ($t7) -/* 0D0BDC 800CFFDC 8FA90150 */ lw $t1, 0x150($sp) -/* 0D0BE0 800CFFE0 8FA80154 */ lw $t0, 0x154($sp) -/* 0D0BE4 800CFFE4 AD280004 */ sw $t0, 4($t1) -/* 0D0BE8 800CFFE8 8FAB0150 */ lw $t3, 0x150($sp) -/* 0D0BEC 800CFFEC 8FAA0158 */ lw $t2, 0x158($sp) -/* 0D0BF0 800CFFF0 0C0335A5 */ jal func_800CD694 -/* 0D0BF4 800CFFF4 AD6A0008 */ sw $t2, 8($t3) -/* 0D0BF8 800CFFF8 0C035659 */ jal func_800D5964 -/* 0D0BFC 800CFFFC 8FA40150 */ lw $a0, 0x150($sp) -/* 0D0C00 800D0000 AFA20020 */ sw $v0, 0x20($sp) -/* 0D0C04 800D0004 8FAC0020 */ lw $t4, 0x20($sp) -/* 0D0C08 800D0008 11800003 */ beqz $t4, .L800D0018 -/* 0D0C0C 800D000C 00000000 */ nop -/* 0D0C10 800D0010 100000DB */ b .L800D0380 -/* 0D0C14 800D0014 01801025 */ move $v0, $t4 -.L800D0018: -/* 0D0C18 800D0018 8FAD0150 */ lw $t5, 0x150($sp) -/* 0D0C1C 800D001C 91AE0065 */ lbu $t6, 0x65($t5) -/* 0D0C20 800D0020 11C0000A */ beqz $t6, .L800D004C -/* 0D0C24 800D0024 00000000 */ nop -/* 0D0C28 800D0028 A1A00065 */ sb $zero, 0x65($t5) -/* 0D0C2C 800D002C 0C0357F7 */ jal func_800D5FDC -/* 0D0C30 800D0030 8FA40150 */ lw $a0, 0x150($sp) -/* 0D0C34 800D0034 AFA20020 */ sw $v0, 0x20($sp) -/* 0D0C38 800D0038 8FB80020 */ lw $t8, 0x20($sp) -/* 0D0C3C 800D003C 13000003 */ beqz $t8, .L800D004C -/* 0D0C40 800D0040 00000000 */ nop -/* 0D0C44 800D0044 100000CE */ b .L800D0380 -/* 0D0C48 800D0048 03001025 */ move $v0, $t8 -.L800D004C: -/* 0D0C4C 800D004C AFA0014C */ sw $zero, 0x14c($sp) -.L800D0050: -/* 0D0C50 800D0050 8FB9014C */ lw $t9, 0x14c($sp) -/* 0D0C54 800D0054 03B97821 */ addu $t7, $sp, $t9 -/* 0D0C58 800D0058 A1E00028 */ sb $zero, 0x28($t7) -/* 0D0C5C 800D005C 8FA8014C */ lw $t0, 0x14c($sp) -/* 0D0C60 800D0060 25090001 */ addiu $t1, $t0, 1 -/* 0D0C64 800D0064 29210020 */ slti $at, $t1, 0x20 -/* 0D0C68 800D0068 1420FFF9 */ bnez $at, .L800D0050 -/* 0D0C6C 800D006C AFA9014C */ sw $t1, 0x14c($sp) -/* 0D0C70 800D0070 8FAA0150 */ lw $t2, 0x150($sp) -/* 0D0C74 800D0074 AFA0014C */ sw $zero, 0x14c($sp) -/* 0D0C78 800D0078 8D4B0050 */ lw $t3, 0x50($t2) -/* 0D0C7C 800D007C 19600018 */ blez $t3, .L800D00E0 -/* 0D0C80 800D0080 00000000 */ nop -.L800D0084: -/* 0D0C84 800D0084 8FAC0150 */ lw $t4, 0x150($sp) -/* 0D0C88 800D0088 8FAD014C */ lw $t5, 0x14c($sp) -/* 0D0C8C 800D008C 8FA40154 */ lw $a0, 0x154($sp) -/* 0D0C90 800D0090 8D8E005C */ lw $t6, 0x5c($t4) -/* 0D0C94 800D0094 AFA00010 */ sw $zero, 0x10($sp) -/* 0D0C98 800D0098 8FA50158 */ lw $a1, 0x158($sp) -/* 0D0C9C 800D009C 27A70028 */ addiu $a3, $sp, 0x28 -/* 0D0CA0 800D00A0 0C03363C */ jal func_800CD8F0 -/* 0D0CA4 800D00A4 01CD3021 */ addu $a2, $t6, $t5 -/* 0D0CA8 800D00A8 AFA20020 */ sw $v0, 0x20($sp) -/* 0D0CAC 800D00AC 8FB80020 */ lw $t8, 0x20($sp) -/* 0D0CB0 800D00B0 13000003 */ beqz $t8, .L800D00C0 -/* 0D0CB4 800D00B4 00000000 */ nop -/* 0D0CB8 800D00B8 100000B1 */ b .L800D0380 -/* 0D0CBC 800D00BC 03001025 */ move $v0, $t8 -.L800D00C0: -/* 0D0CC0 800D00C0 8FB9014C */ lw $t9, 0x14c($sp) -/* 0D0CC4 800D00C4 8FA80150 */ lw $t0, 0x150($sp) -/* 0D0CC8 800D00C8 272F0001 */ addiu $t7, $t9, 1 -/* 0D0CCC 800D00CC AFAF014C */ sw $t7, 0x14c($sp) -/* 0D0CD0 800D00D0 8D090050 */ lw $t1, 0x50($t0) -/* 0D0CD4 800D00D4 01E9082A */ slt $at, $t7, $t1 -/* 0D0CD8 800D00D8 1420FFEA */ bnez $at, .L800D0084 -/* 0D0CDC 800D00DC 00000000 */ nop -.L800D00E0: -/* 0D0CE0 800D00E0 8FAA0150 */ lw $t2, 0x150($sp) -/* 0D0CE4 800D00E4 AFA0014C */ sw $zero, 0x14c($sp) -/* 0D0CE8 800D00E8 8D4B0060 */ lw $t3, 0x60($t2) -/* 0D0CEC 800D00EC 1960000D */ blez $t3, .L800D0124 -/* 0D0CF0 800D00F0 00000000 */ nop -.L800D00F4: -/* 0D0CF4 800D00F4 8FAC014C */ lw $t4, 0x14c($sp) -/* 0D0CF8 800D00F8 000C7040 */ sll $t6, $t4, 1 -/* 0D0CFC 800D00FC 03AE6821 */ addu $t5, $sp, $t6 -/* 0D0D00 800D0100 A5A00048 */ sh $zero, 0x48($t5) -/* 0D0D04 800D0104 8FB8014C */ lw $t8, 0x14c($sp) -/* 0D0D08 800D0108 8FA80150 */ lw $t0, 0x150($sp) -/* 0D0D0C 800D010C 27190001 */ addiu $t9, $t8, 1 -/* 0D0D10 800D0110 AFB9014C */ sw $t9, 0x14c($sp) -/* 0D0D14 800D0114 8D0F0060 */ lw $t7, 0x60($t0) -/* 0D0D18 800D0118 032F082A */ slt $at, $t9, $t7 -/* 0D0D1C 800D011C 1420FFF5 */ bnez $at, .L800D00F4 -/* 0D0D20 800D0120 00000000 */ nop -.L800D0124: -/* 0D0D24 800D0124 8FA90150 */ lw $t1, 0x150($sp) -/* 0D0D28 800D0128 8D2A0060 */ lw $t2, 0x60($t1) -/* 0D0D2C 800D012C 29410080 */ slti $at, $t2, 0x80 -/* 0D0D30 800D0130 1020000B */ beqz $at, .L800D0160 -/* 0D0D34 800D0134 AFAA014C */ sw $t2, 0x14c($sp) -.L800D0138: -/* 0D0D38 800D0138 8FAC014C */ lw $t4, 0x14c($sp) -/* 0D0D3C 800D013C 240B0003 */ li $t3, 3 -/* 0D0D40 800D0140 000C7040 */ sll $t6, $t4, 1 -/* 0D0D44 800D0144 03AE6821 */ addu $t5, $sp, $t6 -/* 0D0D48 800D0148 A5AB0048 */ sh $t3, 0x48($t5) -/* 0D0D4C 800D014C 8FB8014C */ lw $t8, 0x14c($sp) -/* 0D0D50 800D0150 27080001 */ addiu $t0, $t8, 1 -/* 0D0D54 800D0154 29010080 */ slti $at, $t0, 0x80 -/* 0D0D58 800D0158 1420FFF7 */ bnez $at, .L800D0138 -/* 0D0D5C 800D015C AFA8014C */ sw $t0, 0x14c($sp) -.L800D0160: -/* 0D0D60 800D0160 8FB90150 */ lw $t9, 0x150($sp) -/* 0D0D64 800D0164 27AA0048 */ addiu $t2, $sp, 0x48 -/* 0D0D68 800D0168 8F2F0060 */ lw $t7, 0x60($t9) -/* 0D0D6C 800D016C 000F2823 */ negu $a1, $t7 -/* 0D0D70 800D0170 00056040 */ sll $t4, $a1, 1 -/* 0D0D74 800D0174 01802825 */ move $a1, $t4 -/* 0D0D78 800D0178 000F4840 */ sll $t1, $t7, 1 -/* 0D0D7C 800D017C 012A2021 */ addu $a0, $t1, $t2 -/* 0D0D80 800D0180 0C0354BC */ jal func_800D52F0 -/* 0D0D84 800D0184 24A50100 */ addiu $a1, $a1, 0x100 -/* 0D0D88 800D0188 27AB0048 */ addiu $t3, $sp, 0x48 -/* 0D0D8C 800D018C A5620000 */ sh $v0, ($t3) -/* 0D0D90 800D0190 27AE0048 */ addiu $t6, $sp, 0x48 -/* 0D0D94 800D0194 AFAE0024 */ sw $t6, 0x24($sp) -/* 0D0D98 800D0198 AFA0014C */ sw $zero, 0x14c($sp) -.L800D019C: -/* 0D0D9C 800D019C 8FAD0150 */ lw $t5, 0x150($sp) -/* 0D0DA0 800D01A0 8FA8014C */ lw $t0, 0x14c($sp) -/* 0D0DA4 800D01A4 8FA90024 */ lw $t1, 0x24($sp) -/* 0D0DA8 800D01A8 8DB80054 */ lw $t8, 0x54($t5) -/* 0D0DAC 800D01AC 0008C940 */ sll $t9, $t0, 5 -/* 0D0DB0 800D01B0 AFA00010 */ sw $zero, 0x10($sp) -/* 0D0DB4 800D01B4 8FA40154 */ lw $a0, 0x154($sp) -/* 0D0DB8 800D01B8 8FA50158 */ lw $a1, 0x158($sp) -/* 0D0DBC 800D01BC 03293821 */ addu $a3, $t9, $t1 -/* 0D0DC0 800D01C0 0C03363C */ jal func_800CD8F0 -/* 0D0DC4 800D01C4 03083021 */ addu $a2, $t8, $t0 -/* 0D0DC8 800D01C8 AFA20020 */ sw $v0, 0x20($sp) -/* 0D0DCC 800D01CC 8FAA0020 */ lw $t2, 0x20($sp) -/* 0D0DD0 800D01D0 11400003 */ beqz $t2, .L800D01E0 -/* 0D0DD4 800D01D4 00000000 */ nop -/* 0D0DD8 800D01D8 10000069 */ b .L800D0380 -/* 0D0DDC 800D01DC 01401025 */ move $v0, $t2 -.L800D01E0: -/* 0D0DE0 800D01E0 8FAF0150 */ lw $t7, 0x150($sp) -/* 0D0DE4 800D01E4 8FAB014C */ lw $t3, 0x14c($sp) -/* 0D0DE8 800D01E8 8FAD0024 */ lw $t5, 0x24($sp) -/* 0D0DEC 800D01EC 8DEC0058 */ lw $t4, 0x58($t7) -/* 0D0DF0 800D01F0 000B7140 */ sll $t6, $t3, 5 -/* 0D0DF4 800D01F4 AFA00010 */ sw $zero, 0x10($sp) -/* 0D0DF8 800D01F8 8FA40154 */ lw $a0, 0x154($sp) -/* 0D0DFC 800D01FC 8FA50158 */ lw $a1, 0x158($sp) -/* 0D0E00 800D0200 01CD3821 */ addu $a3, $t6, $t5 -/* 0D0E04 800D0204 0C03363C */ jal func_800CD8F0 -/* 0D0E08 800D0208 018B3021 */ addu $a2, $t4, $t3 -/* 0D0E0C 800D020C AFA20020 */ sw $v0, 0x20($sp) -/* 0D0E10 800D0210 8FB80020 */ lw $t8, 0x20($sp) -/* 0D0E14 800D0214 13000003 */ beqz $t8, .L800D0224 -/* 0D0E18 800D0218 00000000 */ nop -/* 0D0E1C 800D021C 10000058 */ b .L800D0380 -/* 0D0E20 800D0220 03001025 */ move $v0, $t8 -.L800D0224: -/* 0D0E24 800D0224 8FA8014C */ lw $t0, 0x14c($sp) -/* 0D0E28 800D0228 25190001 */ addiu $t9, $t0, 1 -/* 0D0E2C 800D022C 2B210008 */ slti $at, $t9, 8 -/* 0D0E30 800D0230 1420FFDA */ bnez $at, .L800D019C -/* 0D0E34 800D0234 AFB9014C */ sw $t9, 0x14c($sp) -/* 0D0E38 800D0238 8FAA0150 */ lw $t2, 0x150($sp) -/* 0D0E3C 800D023C 24090001 */ li $t1, 1 -/* 0D0E40 800D0240 AFA90148 */ sw $t1, 0x148($sp) -/* 0D0E44 800D0244 914F0064 */ lbu $t7, 0x64($t2) -/* 0D0E48 800D0248 29E10002 */ slti $at, $t7, 2 -/* 0D0E4C 800D024C 1420004B */ bnez $at, .L800D037C -/* 0D0E50 800D0250 00000000 */ nop -.L800D0254: -/* 0D0E54 800D0254 240C0001 */ li $t4, 1 -/* 0D0E58 800D0258 AFAC014C */ sw $t4, 0x14c($sp) -.L800D025C: -/* 0D0E5C 800D025C 8FAE014C */ lw $t6, 0x14c($sp) -/* 0D0E60 800D0260 240B0003 */ li $t3, 3 -/* 0D0E64 800D0264 000E6840 */ sll $t5, $t6, 1 -/* 0D0E68 800D0268 03ADC021 */ addu $t8, $sp, $t5 -/* 0D0E6C 800D026C A70B0048 */ sh $t3, 0x48($t8) -/* 0D0E70 800D0270 8FA8014C */ lw $t0, 0x14c($sp) -/* 0D0E74 800D0274 25190001 */ addiu $t9, $t0, 1 -/* 0D0E78 800D0278 2B210080 */ slti $at, $t9, 0x80 -/* 0D0E7C 800D027C 1420FFF7 */ bnez $at, .L800D025C -/* 0D0E80 800D0280 AFB9014C */ sw $t9, 0x14c($sp) -/* 0D0E84 800D0284 27A40048 */ addiu $a0, $sp, 0x48 -/* 0D0E88 800D0288 24840002 */ addiu $a0, $a0, 2 -/* 0D0E8C 800D028C 0C0354BC */ jal func_800D52F0 -/* 0D0E90 800D0290 240500FE */ li $a1, 254 -/* 0D0E94 800D0294 27A90048 */ addiu $t1, $sp, 0x48 -/* 0D0E98 800D0298 A5220000 */ sh $v0, ($t1) -/* 0D0E9C 800D029C 27AA0048 */ addiu $t2, $sp, 0x48 -/* 0D0EA0 800D02A0 AFAA0024 */ sw $t2, 0x24($sp) -/* 0D0EA4 800D02A4 AFA0014C */ sw $zero, 0x14c($sp) -.L800D02A8: -/* 0D0EA8 800D02A8 8FAF0150 */ lw $t7, 0x150($sp) -/* 0D0EAC 800D02AC 8FAE0148 */ lw $t6, 0x148($sp) -/* 0D0EB0 800D02B0 8FB8014C */ lw $t8, 0x14c($sp) -/* 0D0EB4 800D02B4 8DEC0054 */ lw $t4, 0x54($t7) -/* 0D0EB8 800D02B8 8FB90024 */ lw $t9, 0x24($sp) -/* 0D0EBC 800D02BC 000E58C0 */ sll $t3, $t6, 3 -/* 0D0EC0 800D02C0 00184140 */ sll $t0, $t8, 5 -/* 0D0EC4 800D02C4 018B6821 */ addu $t5, $t4, $t3 -/* 0D0EC8 800D02C8 AFA00010 */ sw $zero, 0x10($sp) -/* 0D0ECC 800D02CC 8FA40154 */ lw $a0, 0x154($sp) -/* 0D0ED0 800D02D0 8FA50158 */ lw $a1, 0x158($sp) -/* 0D0ED4 800D02D4 01B83021 */ addu $a2, $t5, $t8 -/* 0D0ED8 800D02D8 0C03363C */ jal func_800CD8F0 -/* 0D0EDC 800D02DC 01193821 */ addu $a3, $t0, $t9 -/* 0D0EE0 800D02E0 AFA20020 */ sw $v0, 0x20($sp) -/* 0D0EE4 800D02E4 8FA90020 */ lw $t1, 0x20($sp) -/* 0D0EE8 800D02E8 11200003 */ beqz $t1, .L800D02F8 -/* 0D0EEC 800D02EC 00000000 */ nop -/* 0D0EF0 800D02F0 10000023 */ b .L800D0380 -/* 0D0EF4 800D02F4 01201025 */ move $v0, $t1 -.L800D02F8: -/* 0D0EF8 800D02F8 8FAA0150 */ lw $t2, 0x150($sp) -/* 0D0EFC 800D02FC 8FAE0148 */ lw $t6, 0x148($sp) -/* 0D0F00 800D0300 8FAD014C */ lw $t5, 0x14c($sp) -/* 0D0F04 800D0304 8D4F0058 */ lw $t7, 0x58($t2) -/* 0D0F08 800D0308 8FA80024 */ lw $t0, 0x24($sp) -/* 0D0F0C 800D030C 000E60C0 */ sll $t4, $t6, 3 -/* 0D0F10 800D0310 000DC140 */ sll $t8, $t5, 5 -/* 0D0F14 800D0314 01EC5821 */ addu $t3, $t7, $t4 -/* 0D0F18 800D0318 AFA00010 */ sw $zero, 0x10($sp) -/* 0D0F1C 800D031C 8FA40154 */ lw $a0, 0x154($sp) -/* 0D0F20 800D0320 8FA50158 */ lw $a1, 0x158($sp) -/* 0D0F24 800D0324 016D3021 */ addu $a2, $t3, $t5 -/* 0D0F28 800D0328 0C03363C */ jal func_800CD8F0 -/* 0D0F2C 800D032C 03083821 */ addu $a3, $t8, $t0 -/* 0D0F30 800D0330 AFA20020 */ sw $v0, 0x20($sp) -/* 0D0F34 800D0334 8FB90020 */ lw $t9, 0x20($sp) -/* 0D0F38 800D0338 13200003 */ beqz $t9, .L800D0348 -/* 0D0F3C 800D033C 00000000 */ nop -/* 0D0F40 800D0340 1000000F */ b .L800D0380 -/* 0D0F44 800D0344 03201025 */ move $v0, $t9 -.L800D0348: -/* 0D0F48 800D0348 8FA9014C */ lw $t1, 0x14c($sp) -/* 0D0F4C 800D034C 252A0001 */ addiu $t2, $t1, 1 -/* 0D0F50 800D0350 29410008 */ slti $at, $t2, 8 -/* 0D0F54 800D0354 1420FFD4 */ bnez $at, .L800D02A8 -/* 0D0F58 800D0358 AFAA014C */ sw $t2, 0x14c($sp) -/* 0D0F5C 800D035C 8FAE0148 */ lw $t6, 0x148($sp) -/* 0D0F60 800D0360 8FAC0150 */ lw $t4, 0x150($sp) -/* 0D0F64 800D0364 25CF0001 */ addiu $t7, $t6, 1 -/* 0D0F68 800D0368 AFAF0148 */ sw $t7, 0x148($sp) -/* 0D0F6C 800D036C 918B0064 */ lbu $t3, 0x64($t4) -/* 0D0F70 800D0370 01EB082A */ slt $at, $t7, $t3 -/* 0D0F74 800D0374 1420FFB7 */ bnez $at, .L800D0254 -/* 0D0F78 800D0378 00000000 */ nop -.L800D037C: -/* 0D0F7C 800D037C 00001025 */ move $v0, $zero -.L800D0380: -/* 0D0F80 800D0380 8FBF001C */ lw $ra, 0x1c($sp) -/* 0D0F84 800D0384 27BD0150 */ addiu $sp, $sp, 0x150 -/* 0D0F88 800D0388 03E00008 */ jr $ra -/* 0D0F8C 800D038C 00000000 */ nop - -glabel func_800D0390 -/* 0D0F90 800D0390 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 0D0F94 800D0394 AFA40048 */ sw $a0, 0x48($sp) -/* 0D0F98 800D0398 8FAE0048 */ lw $t6, 0x48($sp) -/* 0D0F9C 800D039C AFBF0014 */ sw $ra, 0x14($sp) -/* 0D0FA0 800D03A0 AFA5004C */ sw $a1, 0x4c($sp) -/* 0D0FA4 800D03A4 AFA60050 */ sw $a2, 0x50($sp) -/* 0D0FA8 800D03A8 AFA0001C */ sw $zero, 0x1c($sp) -/* 0D0FAC 800D03AC 8DCF0000 */ lw $t7, ($t6) -/* 0D0FB0 800D03B0 31F80001 */ andi $t8, $t7, 1 -/* 0D0FB4 800D03B4 17000003 */ bnez $t8, .L800D03C4 -/* 0D0FB8 800D03B8 00000000 */ nop -/* 0D0FBC 800D03BC 10000041 */ b .L800D04C4 -/* 0D0FC0 800D03C0 24020005 */ li $v0, 5 -.L800D03C4: -/* 0D0FC4 800D03C4 0C0356F0 */ jal func_800D5BC0 -/* 0D0FC8 800D03C8 8FA40048 */ lw $a0, 0x48($sp) -/* 0D0FCC 800D03CC 24010002 */ li $at, 2 -/* 0D0FD0 800D03D0 14410003 */ bne $v0, $at, .L800D03E0 -/* 0D0FD4 800D03D4 00000000 */ nop -/* 0D0FD8 800D03D8 1000003A */ b .L800D04C4 -/* 0D0FDC 800D03DC 24020002 */ li $v0, 2 -.L800D03E0: -/* 0D0FE0 800D03E0 8FB90048 */ lw $t9, 0x48($sp) -/* 0D0FE4 800D03E4 93280065 */ lbu $t0, 0x65($t9) -/* 0D0FE8 800D03E8 1100000A */ beqz $t0, .L800D0414 -/* 0D0FEC 800D03EC 00000000 */ nop -/* 0D0FF0 800D03F0 A3200065 */ sb $zero, 0x65($t9) -/* 0D0FF4 800D03F4 0C0357F7 */ jal func_800D5FDC -/* 0D0FF8 800D03F8 8FA40048 */ lw $a0, 0x48($sp) -/* 0D0FFC 800D03FC AFA20040 */ sw $v0, 0x40($sp) -/* 0D1000 800D0400 8FA90040 */ lw $t1, 0x40($sp) -/* 0D1004 800D0404 11200003 */ beqz $t1, .L800D0414 -/* 0D1008 800D0408 00000000 */ nop -/* 0D100C 800D040C 1000002D */ b .L800D04C4 -/* 0D1010 800D0410 01201025 */ move $v0, $t1 -.L800D0414: -/* 0D1014 800D0414 8FAA0048 */ lw $t2, 0x48($sp) -/* 0D1018 800D0418 AFA00044 */ sw $zero, 0x44($sp) -/* 0D101C 800D041C 8D4B0050 */ lw $t3, 0x50($t2) -/* 0D1020 800D0420 19600020 */ blez $t3, .L800D04A4 -/* 0D1024 800D0424 00000000 */ nop -.L800D0428: -/* 0D1028 800D0428 8FAC0048 */ lw $t4, 0x48($sp) -/* 0D102C 800D042C 8FAE0044 */ lw $t6, 0x44($sp) -/* 0D1030 800D0430 27A70020 */ addiu $a3, $sp, 0x20 -/* 0D1034 800D0434 8D8D005C */ lw $t5, 0x5c($t4) -/* 0D1038 800D0438 8D840004 */ lw $a0, 4($t4) -/* 0D103C 800D043C 8D850008 */ lw $a1, 8($t4) -/* 0D1040 800D0440 0C033728 */ jal func_800CDCA0 -/* 0D1044 800D0444 01AE3021 */ addu $a2, $t5, $t6 -/* 0D1048 800D0448 AFA20040 */ sw $v0, 0x40($sp) -/* 0D104C 800D044C 8FAF0040 */ lw $t7, 0x40($sp) -/* 0D1050 800D0450 11E00003 */ beqz $t7, .L800D0460 -/* 0D1054 800D0454 00000000 */ nop -/* 0D1058 800D0458 1000001A */ b .L800D04C4 -/* 0D105C 800D045C 01E01025 */ move $v0, $t7 -.L800D0460: -/* 0D1060 800D0460 97B80024 */ lhu $t8, 0x24($sp) -/* 0D1064 800D0464 13000007 */ beqz $t8, .L800D0484 -/* 0D1068 800D0468 00000000 */ nop -/* 0D106C 800D046C 8FA80020 */ lw $t0, 0x20($sp) -/* 0D1070 800D0470 11000004 */ beqz $t0, .L800D0484 -/* 0D1074 800D0474 00000000 */ nop -/* 0D1078 800D0478 8FB9001C */ lw $t9, 0x1c($sp) -/* 0D107C 800D047C 27290001 */ addiu $t1, $t9, 1 -/* 0D1080 800D0480 AFA9001C */ sw $t1, 0x1c($sp) -.L800D0484: -/* 0D1084 800D0484 8FAA0044 */ lw $t2, 0x44($sp) -/* 0D1088 800D0488 8FAC0048 */ lw $t4, 0x48($sp) -/* 0D108C 800D048C 254B0001 */ addiu $t3, $t2, 1 -/* 0D1090 800D0490 AFAB0044 */ sw $t3, 0x44($sp) -/* 0D1094 800D0494 8D8D0050 */ lw $t5, 0x50($t4) -/* 0D1098 800D0498 016D082A */ slt $at, $t3, $t5 -/* 0D109C 800D049C 1420FFE2 */ bnez $at, .L800D0428 -/* 0D10A0 800D04A0 00000000 */ nop -.L800D04A4: -/* 0D10A4 800D04A4 8FAE001C */ lw $t6, 0x1c($sp) -/* 0D10A8 800D04A8 8FAF0050 */ lw $t7, 0x50($sp) -/* 0D10AC 800D04AC 00001025 */ move $v0, $zero -/* 0D10B0 800D04B0 ADEE0000 */ sw $t6, ($t7) -/* 0D10B4 800D04B4 8FB80048 */ lw $t8, 0x48($sp) -/* 0D10B8 800D04B8 8FB9004C */ lw $t9, 0x4c($sp) -/* 0D10BC 800D04BC 8F080050 */ lw $t0, 0x50($t8) -/* 0D10C0 800D04C0 AF280000 */ sw $t0, ($t9) -.L800D04C4: -/* 0D10C4 800D04C4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D10C8 800D04C8 27BD0048 */ addiu $sp, $sp, 0x48 -/* 0D10CC 800D04CC 03E00008 */ jr $ra -/* 0D10D0 800D04D0 00000000 */ nop - -/* 0D10D4 800D04D4 00000000 */ nop -/* 0D10D8 800D04D8 00000000 */ nop -/* 0D10DC 800D04DC 00000000 */ nop diff --git a/asm/unknown_0D1180.s b/asm/unknown_0D1180.s deleted file mode 100755 index b9032dcc..00000000 --- a/asm/unknown_0D1180.s +++ /dev/null @@ -1,645 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_800D0580 -/* 0D1180 800D0580 27BDFEB0 */ addiu $sp, $sp, -0x150 -/* 0D1184 800D0584 AFA40150 */ sw $a0, 0x150($sp) -/* 0D1188 800D0588 8FAF0150 */ lw $t7, 0x150($sp) -/* 0D118C 800D058C AFA50154 */ sw $a1, 0x154($sp) -/* 0D1190 800D0590 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D1194 800D0594 AFA60158 */ sw $a2, 0x158($sp) -/* 0D1198 800D0598 8FAE0154 */ lw $t6, 0x154($sp) -/* 0D119C 800D059C 8DF80050 */ lw $t8, 0x50($t7) -/* 0D11A0 800D05A0 01D8082A */ slt $at, $t6, $t8 -/* 0D11A4 800D05A4 10200003 */ beqz $at, .L800D05B4 -/* 0D11A8 800D05A8 00000000 */ nop -/* 0D11AC 800D05AC 05C10003 */ bgez $t6, .L800D05BC -/* 0D11B0 800D05B0 00000000 */ nop -.L800D05B4: -/* 0D11B4 800D05B4 100000AA */ b .L800D0860 -/* 0D11B8 800D05B8 24020005 */ li $v0, 5 -.L800D05BC: -/* 0D11BC 800D05BC 8FB90150 */ lw $t9, 0x150($sp) -/* 0D11C0 800D05C0 8F280000 */ lw $t0, ($t9) -/* 0D11C4 800D05C4 31090001 */ andi $t1, $t0, 1 -/* 0D11C8 800D05C8 15200003 */ bnez $t1, .L800D05D8 -/* 0D11CC 800D05CC 00000000 */ nop -/* 0D11D0 800D05D0 100000A3 */ b .L800D0860 -/* 0D11D4 800D05D4 24020005 */ li $v0, 5 -.L800D05D8: -/* 0D11D8 800D05D8 0C0356F0 */ jal func_800D5BC0 -/* 0D11DC 800D05DC 8FA40150 */ lw $a0, 0x150($sp) -/* 0D11E0 800D05E0 24010002 */ li $at, 2 -/* 0D11E4 800D05E4 14410003 */ bne $v0, $at, .L800D05F4 -/* 0D11E8 800D05E8 00000000 */ nop -/* 0D11EC 800D05EC 1000009C */ b .L800D0860 -/* 0D11F0 800D05F0 24020002 */ li $v0, 2 -.L800D05F4: -/* 0D11F4 800D05F4 8FAA0150 */ lw $t2, 0x150($sp) -/* 0D11F8 800D05F8 914B0065 */ lbu $t3, 0x65($t2) -/* 0D11FC 800D05FC 1160000A */ beqz $t3, .L800D0628 -/* 0D1200 800D0600 00000000 */ nop -/* 0D1204 800D0604 A1400065 */ sb $zero, 0x65($t2) -/* 0D1208 800D0608 0C0357F7 */ jal func_800D5FDC -/* 0D120C 800D060C 8FA40150 */ lw $a0, 0x150($sp) -/* 0D1210 800D0610 AFA2014C */ sw $v0, 0x14c($sp) -/* 0D1214 800D0614 8FAC014C */ lw $t4, 0x14c($sp) -/* 0D1218 800D0618 11800003 */ beqz $t4, .L800D0628 -/* 0D121C 800D061C 00000000 */ nop -/* 0D1220 800D0620 1000008F */ b .L800D0860 -/* 0D1224 800D0624 01801025 */ move $v0, $t4 -.L800D0628: -/* 0D1228 800D0628 8FAD0150 */ lw $t5, 0x150($sp) -/* 0D122C 800D062C 8FB80154 */ lw $t8, 0x154($sp) -/* 0D1230 800D0630 27A70028 */ addiu $a3, $sp, 0x28 -/* 0D1234 800D0634 8DAF005C */ lw $t7, 0x5c($t5) -/* 0D1238 800D0638 8DA40004 */ lw $a0, 4($t5) -/* 0D123C 800D063C 8DA50008 */ lw $a1, 8($t5) -/* 0D1240 800D0640 0C033728 */ jal func_800CDCA0 -/* 0D1244 800D0644 01F83021 */ addu $a2, $t7, $t8 -/* 0D1248 800D0648 AFA2014C */ sw $v0, 0x14c($sp) -/* 0D124C 800D064C 8FAE014C */ lw $t6, 0x14c($sp) -/* 0D1250 800D0650 11C00003 */ beqz $t6, .L800D0660 -/* 0D1254 800D0654 00000000 */ nop -/* 0D1258 800D0658 10000081 */ b .L800D0860 -/* 0D125C 800D065C 01C01025 */ move $v0, $t6 -.L800D0660: -/* 0D1260 800D0660 97B9002C */ lhu $t9, 0x2c($sp) -/* 0D1264 800D0664 13200004 */ beqz $t9, .L800D0678 -/* 0D1268 800D0668 00000000 */ nop -/* 0D126C 800D066C 8FA80028 */ lw $t0, 0x28($sp) -/* 0D1270 800D0670 15000003 */ bnez $t0, .L800D0680 -/* 0D1274 800D0674 00000000 */ nop -.L800D0678: -/* 0D1278 800D0678 10000079 */ b .L800D0860 -/* 0D127C 800D067C 24020005 */ li $v0, 5 -.L800D0680: -/* 0D1280 800D0680 8FAB0150 */ lw $t3, 0x150($sp) -/* 0D1284 800D0684 97A9002E */ lhu $t1, 0x2e($sp) -/* 0D1288 800D0688 8D6A0060 */ lw $t2, 0x60($t3) -/* 0D128C 800D068C 012A082A */ slt $at, $t1, $t2 -/* 0D1290 800D0690 10200003 */ beqz $at, .L800D06A0 -/* 0D1294 800D0694 00000000 */ nop -/* 0D1298 800D0698 10000071 */ b .L800D0860 -/* 0D129C 800D069C 24020003 */ li $v0, 3 -.L800D06A0: -/* 0D12A0 800D06A0 93AC002F */ lbu $t4, 0x2f($sp) -/* 0D12A4 800D06A4 93AD002E */ lbu $t5, 0x2e($sp) -/* 0D12A8 800D06A8 8FAF0150 */ lw $t7, 0x150($sp) -/* 0D12AC 800D06AC AFA00148 */ sw $zero, 0x148($sp) -/* 0D12B0 800D06B0 A3AC001E */ sb $t4, 0x1e($sp) -/* 0D12B4 800D06B4 A3AD001F */ sb $t5, 0x1f($sp) -/* 0D12B8 800D06B8 91F80064 */ lbu $t8, 0x64($t7) -/* 0D12BC 800D06BC 01B8082A */ slt $at, $t5, $t8 -/* 0D12C0 800D06C0 1020003E */ beqz $at, .L800D07BC -/* 0D12C4 800D06C4 00000000 */ nop -.L800D06C8: -/* 0D12C8 800D06C8 8FA40150 */ lw $a0, 0x150($sp) -/* 0D12CC 800D06CC 27A50048 */ addiu $a1, $sp, 0x48 -/* 0D12D0 800D06D0 00003025 */ move $a2, $zero -/* 0D12D4 800D06D4 0C03572F */ jal func_800D5CBC -/* 0D12D8 800D06D8 93A7001F */ lbu $a3, 0x1f($sp) -/* 0D12DC 800D06DC AFA2014C */ sw $v0, 0x14c($sp) -/* 0D12E0 800D06E0 8FAE014C */ lw $t6, 0x14c($sp) -/* 0D12E4 800D06E4 11C00003 */ beqz $t6, .L800D06F4 -/* 0D12E8 800D06E8 00000000 */ nop -/* 0D12EC 800D06EC 1000005C */ b .L800D0860 -/* 0D12F0 800D06F0 01C01025 */ move $v0, $t6 -.L800D06F4: -/* 0D12F4 800D06F4 93A8001E */ lbu $t0, 0x1e($sp) -/* 0D12F8 800D06F8 27A90048 */ addiu $t1, $sp, 0x48 -/* 0D12FC 800D06FC 27B90024 */ addiu $t9, $sp, 0x24 -/* 0D1300 800D0700 00085840 */ sll $t3, $t0, 1 -/* 0D1304 800D0704 01695021 */ addu $t2, $t3, $t1 -/* 0D1308 800D0708 95410000 */ lhu $at, ($t2) -/* 0D130C 800D070C A7210000 */ sh $at, ($t9) -/* 0D1310 800D0710 8FAD0148 */ lw $t5, 0x148($sp) -/* 0D1314 800D0714 8FA80150 */ lw $t0, 0x150($sp) -/* 0D1318 800D0718 97AE0024 */ lhu $t6, 0x24($sp) -/* 0D131C 800D071C 25B80001 */ addiu $t8, $t5, 1 -/* 0D1320 800D0720 AFB80148 */ sw $t8, 0x148($sp) -/* 0D1324 800D0724 8D0B0060 */ lw $t3, 0x60($t0) -/* 0D1328 800D0728 01CB082A */ slt $at, $t6, $t3 -/* 0D132C 800D072C 14200019 */ bnez $at, .L800D0794 -/* 0D1330 800D0730 00000000 */ nop -.L800D0734: -/* 0D1334 800D0734 8FA90148 */ lw $t1, 0x148($sp) -/* 0D1338 800D0738 93AA0025 */ lbu $t2, 0x25($sp) -/* 0D133C 800D073C 27AD0048 */ addiu $t5, $sp, 0x48 -/* 0D1340 800D0740 252C0001 */ addiu $t4, $t1, 1 -/* 0D1344 800D0744 000A7840 */ sll $t7, $t2, 1 -/* 0D1348 800D0748 AFAC0148 */ sw $t4, 0x148($sp) -/* 0D134C 800D074C 01EDC021 */ addu $t8, $t7, $t5 -/* 0D1350 800D0750 97010000 */ lhu $at, ($t8) -/* 0D1354 800D0754 27B90024 */ addiu $t9, $sp, 0x24 -/* 0D1358 800D0758 A7210000 */ sh $at, ($t9) -/* 0D135C 800D075C 93AC001F */ lbu $t4, 0x1f($sp) -/* 0D1360 800D0760 93A90024 */ lbu $t1, 0x24($sp) -/* 0D1364 800D0764 112C0005 */ beq $t1, $t4, .L800D077C -/* 0D1368 800D0768 00000000 */ nop -/* 0D136C 800D076C 93AA0025 */ lbu $t2, 0x25($sp) -/* 0D1370 800D0770 A3A9001F */ sb $t1, 0x1f($sp) -/* 0D1374 800D0774 10000007 */ b .L800D0794 -/* 0D1378 800D0778 A3AA001E */ sb $t2, 0x1e($sp) -.L800D077C: -/* 0D137C 800D077C 8FAD0150 */ lw $t5, 0x150($sp) -/* 0D1380 800D0780 97AF0024 */ lhu $t7, 0x24($sp) -/* 0D1384 800D0784 8DAE0060 */ lw $t6, 0x60($t5) -/* 0D1388 800D0788 01EE082A */ slt $at, $t7, $t6 -/* 0D138C 800D078C 1020FFE9 */ beqz $at, .L800D0734 -/* 0D1390 800D0790 00000000 */ nop -.L800D0794: -/* 0D1394 800D0794 97A80024 */ lhu $t0, 0x24($sp) -/* 0D1398 800D0798 24010001 */ li $at, 1 -/* 0D139C 800D079C 11010007 */ beq $t0, $at, .L800D07BC -/* 0D13A0 800D07A0 00000000 */ nop -/* 0D13A4 800D07A4 8FB80150 */ lw $t8, 0x150($sp) -/* 0D13A8 800D07A8 93B9001F */ lbu $t9, 0x1f($sp) -/* 0D13AC 800D07AC 930B0064 */ lbu $t3, 0x64($t8) -/* 0D13B0 800D07B0 032B082A */ slt $at, $t9, $t3 -/* 0D13B4 800D07B4 1420FFC4 */ bnez $at, .L800D06C8 -/* 0D13B8 800D07B8 00000000 */ nop -.L800D07BC: -/* 0D13BC 800D07BC 97AC0024 */ lhu $t4, 0x24($sp) -/* 0D13C0 800D07C0 24010001 */ li $at, 1 -/* 0D13C4 800D07C4 11810003 */ beq $t4, $at, .L800D07D4 -/* 0D13C8 800D07C8 00000000 */ nop -/* 0D13CC 800D07CC 10000024 */ b .L800D0860 -/* 0D13D0 800D07D0 24020003 */ li $v0, 3 -.L800D07D4: -/* 0D13D4 800D07D4 8FA90148 */ lw $t1, 0x148($sp) -/* 0D13D8 800D07D8 8FAD0158 */ lw $t5, 0x158($sp) -/* 0D13DC 800D07DC 00095200 */ sll $t2, $t1, 8 -/* 0D13E0 800D07E0 ADAA0000 */ sw $t2, ($t5) -/* 0D13E4 800D07E4 8FAE0158 */ lw $t6, 0x158($sp) -/* 0D13E8 800D07E8 97AF002C */ lhu $t7, 0x2c($sp) -/* 0D13EC 800D07EC A5CF0008 */ sh $t7, 8($t6) -/* 0D13F0 800D07F0 8FB80158 */ lw $t8, 0x158($sp) -/* 0D13F4 800D07F4 8FA80028 */ lw $t0, 0x28($sp) -/* 0D13F8 800D07F8 AF080004 */ sw $t0, 4($t8) -/* 0D13FC 800D07FC AFA00020 */ sw $zero, 0x20($sp) -.L800D0800: -/* 0D1400 800D0800 8FB90020 */ lw $t9, 0x20($sp) -/* 0D1404 800D0804 8FAC0158 */ lw $t4, 0x158($sp) -/* 0D1408 800D0808 03B95821 */ addu $t3, $sp, $t9 -/* 0D140C 800D080C 916B0038 */ lbu $t3, 0x38($t3) -/* 0D1410 800D0810 01994821 */ addu $t1, $t4, $t9 -/* 0D1414 800D0814 A12B000E */ sb $t3, 0xe($t1) -/* 0D1418 800D0818 8FAA0020 */ lw $t2, 0x20($sp) -/* 0D141C 800D081C 254D0001 */ addiu $t5, $t2, 1 -/* 0D1420 800D0820 29A10010 */ slti $at, $t5, 0x10 -/* 0D1424 800D0824 1420FFF6 */ bnez $at, .L800D0800 -/* 0D1428 800D0828 AFAD0020 */ sw $t5, 0x20($sp) -/* 0D142C 800D082C AFA00020 */ sw $zero, 0x20($sp) -.L800D0830: -/* 0D1430 800D0830 8FAF0020 */ lw $t7, 0x20($sp) -/* 0D1434 800D0834 8FA80158 */ lw $t0, 0x158($sp) -/* 0D1438 800D0838 03AF7021 */ addu $t6, $sp, $t7 -/* 0D143C 800D083C 91CE0034 */ lbu $t6, 0x34($t6) -/* 0D1440 800D0840 010FC021 */ addu $t8, $t0, $t7 -/* 0D1444 800D0844 A30E000A */ sb $t6, 0xa($t8) -/* 0D1448 800D0848 8FAC0020 */ lw $t4, 0x20($sp) -/* 0D144C 800D084C 25990001 */ addiu $t9, $t4, 1 -/* 0D1450 800D0850 2B210004 */ slti $at, $t9, 4 -/* 0D1454 800D0854 1420FFF6 */ bnez $at, .L800D0830 -/* 0D1458 800D0858 AFB90020 */ sw $t9, 0x20($sp) -/* 0D145C 800D085C 00001025 */ move $v0, $zero -.L800D0860: -/* 0D1460 800D0860 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D1464 800D0864 27BD0150 */ addiu $sp, $sp, 0x150 -/* 0D1468 800D0868 03E00008 */ jr $ra -/* 0D146C 800D086C 00000000 */ nop - -glabel func_800D0870 -/* 0D1470 800D0870 27BDFEA0 */ addiu $sp, $sp, -0x160 -/* 0D1474 800D0874 AFA50164 */ sw $a1, 0x164($sp) -/* 0D1478 800D0878 97AE0166 */ lhu $t6, 0x166($sp) -/* 0D147C 800D087C AFBF0024 */ sw $ra, 0x24($sp) -/* 0D1480 800D0880 AFA40160 */ sw $a0, 0x160($sp) -/* 0D1484 800D0884 AFA60168 */ sw $a2, 0x168($sp) -/* 0D1488 800D0888 AFA7016C */ sw $a3, 0x16c($sp) -/* 0D148C 800D088C 11C00004 */ beqz $t6, .L800D08A0 -/* 0D1490 800D0890 A7A00032 */ sh $zero, 0x32($sp) -/* 0D1494 800D0894 8FAF0168 */ lw $t7, 0x168($sp) -/* 0D1498 800D0898 15E00003 */ bnez $t7, .L800D08A8 -/* 0D149C 800D089C 00000000 */ nop -.L800D08A0: -/* 0D14A0 800D08A0 100000A7 */ b .L800D0B40 -/* 0D14A4 800D08A4 24020005 */ li $v0, 5 -.L800D08A8: -/* 0D14A8 800D08A8 8FB80160 */ lw $t8, 0x160($sp) -/* 0D14AC 800D08AC 8F190000 */ lw $t9, ($t8) -/* 0D14B0 800D08B0 33280001 */ andi $t0, $t9, 1 -/* 0D14B4 800D08B4 15000003 */ bnez $t0, .L800D08C4 -/* 0D14B8 800D08B8 00000000 */ nop -/* 0D14BC 800D08BC 100000A0 */ b .L800D0B40 -/* 0D14C0 800D08C0 24020005 */ li $v0, 5 -.L800D08C4: -/* 0D14C4 800D08C4 0C0356F0 */ jal func_800D5BC0 -/* 0D14C8 800D08C8 8FA40160 */ lw $a0, 0x160($sp) -/* 0D14CC 800D08CC 24010002 */ li $at, 2 -/* 0D14D0 800D08D0 14410003 */ bne $v0, $at, .L800D08E0 -/* 0D14D4 800D08D4 00000000 */ nop -/* 0D14D8 800D08D8 10000099 */ b .L800D0B40 -/* 0D14DC 800D08DC 24020002 */ li $v0, 2 -.L800D08E0: -/* 0D14E0 800D08E0 8FA90160 */ lw $t1, 0x160($sp) -/* 0D14E4 800D08E4 912A0065 */ lbu $t2, 0x65($t1) -/* 0D14E8 800D08E8 1140000A */ beqz $t2, .L800D0914 -/* 0D14EC 800D08EC 00000000 */ nop -/* 0D14F0 800D08F0 A1200065 */ sb $zero, 0x65($t1) -/* 0D14F4 800D08F4 0C0357F7 */ jal func_800D5FDC -/* 0D14F8 800D08F8 8FA40160 */ lw $a0, 0x160($sp) -/* 0D14FC 800D08FC AFA20154 */ sw $v0, 0x154($sp) -/* 0D1500 800D0900 8FAB0154 */ lw $t3, 0x154($sp) -/* 0D1504 800D0904 11600003 */ beqz $t3, .L800D0914 -/* 0D1508 800D0908 00000000 */ nop -/* 0D150C 800D090C 1000008C */ b .L800D0B40 -/* 0D1510 800D0910 01601025 */ move $v0, $t3 -.L800D0914: -/* 0D1514 800D0914 8FAC0170 */ lw $t4, 0x170($sp) -/* 0D1518 800D0918 27AD015C */ addiu $t5, $sp, 0x15c -/* 0D151C 800D091C AFAD0014 */ sw $t5, 0x14($sp) -/* 0D1520 800D0920 8FA40160 */ lw $a0, 0x160($sp) -/* 0D1524 800D0924 97A50166 */ lhu $a1, 0x166($sp) -/* 0D1528 800D0928 8FA60168 */ lw $a2, 0x168($sp) -/* 0D152C 800D092C 8FA7016C */ lw $a3, 0x16c($sp) -/* 0D1530 800D0930 0C0343A0 */ jal func_800D0E80 -/* 0D1534 800D0934 AFAC0010 */ sw $t4, 0x10($sp) -/* 0D1538 800D0938 AFA20154 */ sw $v0, 0x154($sp) -/* 0D153C 800D093C 8FAE0154 */ lw $t6, 0x154($sp) -/* 0D1540 800D0940 11C00003 */ beqz $t6, .L800D0950 -/* 0D1544 800D0944 00000000 */ nop -/* 0D1548 800D0948 1000007D */ b .L800D0B40 -/* 0D154C 800D094C 01C01025 */ move $v0, $t6 -.L800D0950: -/* 0D1550 800D0950 8FAF015C */ lw $t7, 0x15c($sp) -/* 0D1554 800D0954 2401FFFF */ li $at, -1 -/* 0D1558 800D0958 15E10003 */ bne $t7, $at, .L800D0968 -/* 0D155C 800D095C 00000000 */ nop -/* 0D1560 800D0960 10000077 */ b .L800D0B40 -/* 0D1564 800D0964 24020005 */ li $v0, 5 -.L800D0968: -/* 0D1568 800D0968 8FB80160 */ lw $t8, 0x160($sp) -/* 0D156C 800D096C 8FA8015C */ lw $t0, 0x15c($sp) -/* 0D1570 800D0970 27A70034 */ addiu $a3, $sp, 0x34 -/* 0D1574 800D0974 8F19005C */ lw $t9, 0x5c($t8) -/* 0D1578 800D0978 8F040004 */ lw $a0, 4($t8) -/* 0D157C 800D097C 8F050008 */ lw $a1, 8($t8) -/* 0D1580 800D0980 0C033728 */ jal func_800CDCA0 -/* 0D1584 800D0984 03283021 */ addu $a2, $t9, $t0 -/* 0D1588 800D0988 AFA20154 */ sw $v0, 0x154($sp) -/* 0D158C 800D098C 8FAA0154 */ lw $t2, 0x154($sp) -/* 0D1590 800D0990 11400003 */ beqz $t2, .L800D09A0 -/* 0D1594 800D0994 00000000 */ nop -/* 0D1598 800D0998 10000069 */ b .L800D0B40 -/* 0D159C 800D099C 01401025 */ move $v0, $t2 -.L800D09A0: -/* 0D15A0 800D09A0 93A9003B */ lbu $t1, 0x3b($sp) -/* 0D15A4 800D09A4 93AB003A */ lbu $t3, 0x3a($sp) -/* 0D15A8 800D09A8 8FAC0160 */ lw $t4, 0x160($sp) -/* 0D15AC 800D09AC A3A9002F */ sb $t1, 0x2f($sp) -/* 0D15B0 800D09B0 A3AB002E */ sb $t3, 0x2e($sp) -/* 0D15B4 800D09B4 918D0064 */ lbu $t5, 0x64($t4) -/* 0D15B8 800D09B8 016D082A */ slt $at, $t3, $t5 -/* 0D15BC 800D09BC 10200036 */ beqz $at, .L800D0A98 -/* 0D15C0 800D09C0 00000000 */ nop -.L800D09C4: -/* 0D15C4 800D09C4 8FA40160 */ lw $a0, 0x160($sp) -/* 0D15C8 800D09C8 27A50054 */ addiu $a1, $sp, 0x54 -/* 0D15CC 800D09CC 00003025 */ move $a2, $zero -/* 0D15D0 800D09D0 0C03572F */ jal func_800D5CBC -/* 0D15D4 800D09D4 93A7002E */ lbu $a3, 0x2e($sp) -/* 0D15D8 800D09D8 AFA20154 */ sw $v0, 0x154($sp) -/* 0D15DC 800D09DC 8FAE0154 */ lw $t6, 0x154($sp) -/* 0D15E0 800D09E0 11C00003 */ beqz $t6, .L800D09F0 -/* 0D15E4 800D09E4 00000000 */ nop -/* 0D15E8 800D09E8 10000055 */ b .L800D0B40 -/* 0D15EC 800D09EC 01C01025 */ move $v0, $t6 -.L800D09F0: -/* 0D15F0 800D09F0 93AF002E */ lbu $t7, 0x2e($sp) -/* 0D15F4 800D09F4 27B80030 */ addiu $t8, $sp, 0x30 -/* 0D15F8 800D09F8 24190001 */ li $t9, 1 -/* 0D15FC 800D09FC AFB90018 */ sw $t9, 0x18($sp) -/* 0D1600 800D0A00 AFB80014 */ sw $t8, 0x14($sp) -/* 0D1604 800D0A04 8FA40160 */ lw $a0, 0x160($sp) -/* 0D1608 800D0A08 27A50054 */ addiu $a1, $sp, 0x54 -/* 0D160C 800D0A0C 93A6002F */ lbu $a2, 0x2f($sp) -/* 0D1610 800D0A10 27A70032 */ addiu $a3, $sp, 0x32 -/* 0D1614 800D0A14 0C0342D4 */ jal func_800D0B50 -/* 0D1618 800D0A18 AFAF0010 */ sw $t7, 0x10($sp) -/* 0D161C 800D0A1C AFA20154 */ sw $v0, 0x154($sp) -/* 0D1620 800D0A20 8FA80154 */ lw $t0, 0x154($sp) -/* 0D1624 800D0A24 11000003 */ beqz $t0, .L800D0A34 -/* 0D1628 800D0A28 00000000 */ nop -/* 0D162C 800D0A2C 10000044 */ b .L800D0B40 -/* 0D1630 800D0A30 01001025 */ move $v0, $t0 -.L800D0A34: -/* 0D1634 800D0A34 8FA40160 */ lw $a0, 0x160($sp) -/* 0D1638 800D0A38 27A50054 */ addiu $a1, $sp, 0x54 -/* 0D163C 800D0A3C 24060001 */ li $a2, 1 -/* 0D1640 800D0A40 0C03572F */ jal func_800D5CBC -/* 0D1644 800D0A44 93A7002E */ lbu $a3, 0x2e($sp) -/* 0D1648 800D0A48 AFA20154 */ sw $v0, 0x154($sp) -/* 0D164C 800D0A4C 8FAA0154 */ lw $t2, 0x154($sp) -/* 0D1650 800D0A50 11400003 */ beqz $t2, .L800D0A60 -/* 0D1654 800D0A54 00000000 */ nop -/* 0D1658 800D0A58 10000039 */ b .L800D0B40 -/* 0D165C 800D0A5C 01401025 */ move $v0, $t2 -.L800D0A60: -/* 0D1660 800D0A60 97A90030 */ lhu $t1, 0x30($sp) -/* 0D1664 800D0A64 24010001 */ li $at, 1 -/* 0D1668 800D0A68 1121000B */ beq $t1, $at, .L800D0A98 -/* 0D166C 800D0A6C 00000000 */ nop -/* 0D1670 800D0A70 93AC0030 */ lbu $t4, 0x30($sp) -/* 0D1674 800D0A74 93AB0031 */ lbu $t3, 0x31($sp) -/* 0D1678 800D0A78 8FAE0160 */ lw $t6, 0x160($sp) -/* 0D167C 800D0A7C A3AC002E */ sb $t4, 0x2e($sp) -/* 0D1680 800D0A80 A3AB002F */ sb $t3, 0x2f($sp) -/* 0D1684 800D0A84 93AD002E */ lbu $t5, 0x2e($sp) -/* 0D1688 800D0A88 91CF0064 */ lbu $t7, 0x64($t6) -/* 0D168C 800D0A8C 01AF082A */ slt $at, $t5, $t7 -/* 0D1690 800D0A90 1420FFCC */ bnez $at, .L800D09C4 -/* 0D1694 800D0A94 00000000 */ nop -.L800D0A98: -/* 0D1698 800D0A98 8FB90160 */ lw $t9, 0x160($sp) -/* 0D169C 800D0A9C 93B8002E */ lbu $t8, 0x2e($sp) -/* 0D16A0 800D0AA0 93280064 */ lbu $t0, 0x64($t9) -/* 0D16A4 800D0AA4 0308082A */ slt $at, $t8, $t0 -/* 0D16A8 800D0AA8 14200003 */ bnez $at, .L800D0AB8 -/* 0D16AC 800D0AAC 00000000 */ nop -/* 0D16B0 800D0AB0 10000023 */ b .L800D0B40 -/* 0D16B4 800D0AB4 24020003 */ li $v0, 3 -.L800D0AB8: -/* 0D16B8 800D0AB8 AFA00034 */ sw $zero, 0x34($sp) -/* 0D16BC 800D0ABC A7A00038 */ sh $zero, 0x38($sp) -/* 0D16C0 800D0AC0 A7A0003A */ sh $zero, 0x3a($sp) -/* 0D16C4 800D0AC4 A7A0003E */ sh $zero, 0x3e($sp) -/* 0D16C8 800D0AC8 AFA00158 */ sw $zero, 0x158($sp) -.L800D0ACC: -/* 0D16CC 800D0ACC 8FAA0158 */ lw $t2, 0x158($sp) -/* 0D16D0 800D0AD0 03AA4821 */ addu $t1, $sp, $t2 -/* 0D16D4 800D0AD4 A1200044 */ sb $zero, 0x44($t1) -/* 0D16D8 800D0AD8 8FAC0158 */ lw $t4, 0x158($sp) -/* 0D16DC 800D0ADC 258B0001 */ addiu $t3, $t4, 1 -/* 0D16E0 800D0AE0 29610010 */ slti $at, $t3, 0x10 -/* 0D16E4 800D0AE4 1420FFF9 */ bnez $at, .L800D0ACC -/* 0D16E8 800D0AE8 AFAB0158 */ sw $t3, 0x158($sp) -/* 0D16EC 800D0AEC AFA00158 */ sw $zero, 0x158($sp) -.L800D0AF0: -/* 0D16F0 800D0AF0 8FAE0158 */ lw $t6, 0x158($sp) -/* 0D16F4 800D0AF4 03AE6821 */ addu $t5, $sp, $t6 -/* 0D16F8 800D0AF8 A1A00040 */ sb $zero, 0x40($t5) -/* 0D16FC 800D0AFC 8FAF0158 */ lw $t7, 0x158($sp) -/* 0D1700 800D0B00 25F90001 */ addiu $t9, $t7, 1 -/* 0D1704 800D0B04 2B210004 */ slti $at, $t9, 4 -/* 0D1708 800D0B08 1420FFF9 */ bnez $at, .L800D0AF0 -/* 0D170C 800D0B0C AFB90158 */ sw $t9, 0x158($sp) -/* 0D1710 800D0B10 8FB80160 */ lw $t8, 0x160($sp) -/* 0D1714 800D0B14 A3A0003C */ sb $zero, 0x3c($sp) -/* 0D1718 800D0B18 8FAA015C */ lw $t2, 0x15c($sp) -/* 0D171C 800D0B1C 8F08005C */ lw $t0, 0x5c($t8) -/* 0D1720 800D0B20 8F050008 */ lw $a1, 8($t8) -/* 0D1724 800D0B24 8F040004 */ lw $a0, 4($t8) -/* 0D1728 800D0B28 AFA00010 */ sw $zero, 0x10($sp) -/* 0D172C 800D0B2C 27A70034 */ addiu $a3, $sp, 0x34 -/* 0D1730 800D0B30 0C03363C */ jal func_800CD8F0 -/* 0D1734 800D0B34 010A3021 */ addu $a2, $t0, $t2 -/* 0D1738 800D0B38 AFA20154 */ sw $v0, 0x154($sp) -/* 0D173C 800D0B3C 8FA20154 */ lw $v0, 0x154($sp) -.L800D0B40: -/* 0D1740 800D0B40 8FBF0024 */ lw $ra, 0x24($sp) -/* 0D1744 800D0B44 27BD0160 */ addiu $sp, $sp, 0x160 -/* 0D1748 800D0B48 03E00008 */ jr $ra -/* 0D174C 800D0B4C 00000000 */ nop - -glabel func_800D0B50 -/* 0D1750 800D0B50 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0D1754 800D0B54 AFA60030 */ sw $a2, 0x30($sp) -/* 0D1758 800D0B58 93B80033 */ lbu $t8, 0x33($sp) -/* 0D175C 800D0B5C AFA5002C */ sw $a1, 0x2c($sp) -/* 0D1760 800D0B60 8FAF002C */ lw $t7, 0x2c($sp) -/* 0D1764 800D0B64 0018C840 */ sll $t9, $t8, 1 -/* 0D1768 800D0B68 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D176C 800D0B6C AFA40028 */ sw $a0, 0x28($sp) -/* 0D1770 800D0B70 AFA70034 */ sw $a3, 0x34($sp) -/* 0D1774 800D0B74 AFA0001C */ sw $zero, 0x1c($sp) -/* 0D1778 800D0B78 01F94021 */ addu $t0, $t7, $t9 -/* 0D177C 800D0B7C 95010000 */ lhu $at, ($t0) -/* 0D1780 800D0B80 27AE0024 */ addiu $t6, $sp, 0x24 -/* 0D1784 800D0B84 A5C10000 */ sh $at, ($t6) -/* 0D1788 800D0B88 97AC0024 */ lhu $t4, 0x24($sp) -/* 0D178C 800D0B8C 24010001 */ li $at, 1 -/* 0D1790 800D0B90 1181000B */ beq $t4, $at, .L800D0BC0 -/* 0D1794 800D0B94 00000000 */ nop -/* 0D1798 800D0B98 93AD0024 */ lbu $t5, 0x24($sp) -/* 0D179C 800D0B9C 19A00004 */ blez $t5, .L800D0BB0 -/* 0D17A0 800D0BA0 00000000 */ nop -/* 0D17A4 800D0BA4 24180001 */ li $t8, 1 -/* 0D17A8 800D0BA8 1000000E */ b .L800D0BE4 -/* 0D17AC 800D0BAC AFB80018 */ sw $t8, 0x18($sp) -.L800D0BB0: -/* 0D17B0 800D0BB0 8FAF0028 */ lw $t7, 0x28($sp) -/* 0D17B4 800D0BB4 8DF90060 */ lw $t9, 0x60($t7) -/* 0D17B8 800D0BB8 1000000A */ b .L800D0BE4 -/* 0D17BC 800D0BBC AFB90018 */ sw $t9, 0x18($sp) -.L800D0BC0: -/* 0D17C0 800D0BC0 93AA003B */ lbu $t2, 0x3b($sp) -/* 0D17C4 800D0BC4 19400004 */ blez $t2, .L800D0BD8 -/* 0D17C8 800D0BC8 00000000 */ nop -/* 0D17CC 800D0BCC 24090001 */ li $t1, 1 -/* 0D17D0 800D0BD0 10000004 */ b .L800D0BE4 -/* 0D17D4 800D0BD4 AFA90018 */ sw $t1, 0x18($sp) -.L800D0BD8: -/* 0D17D8 800D0BD8 8FAE0028 */ lw $t6, 0x28($sp) -/* 0D17DC 800D0BDC 8DC80060 */ lw $t0, 0x60($t6) -/* 0D17E0 800D0BE0 AFA80018 */ sw $t0, 0x18($sp) -.L800D0BE4: -/* 0D17E4 800D0BE4 93AB0025 */ lbu $t3, 0x25($sp) -/* 0D17E8 800D0BE8 8FAC0018 */ lw $t4, 0x18($sp) -/* 0D17EC 800D0BEC 016C082A */ slt $at, $t3, $t4 -/* 0D17F0 800D0BF0 10200007 */ beqz $at, .L800D0C10 -/* 0D17F4 800D0BF4 00000000 */ nop -/* 0D17F8 800D0BF8 97AD0024 */ lhu $t5, 0x24($sp) -/* 0D17FC 800D0BFC 24010001 */ li $at, 1 -/* 0D1800 800D0C00 11A10003 */ beq $t5, $at, .L800D0C10 -/* 0D1804 800D0C04 00000000 */ nop -/* 0D1808 800D0C08 1000005B */ b .L800D0D78 -/* 0D180C 800D0C0C 24020003 */ li $v0, 3 -.L800D0C10: -/* 0D1810 800D0C10 27AF0024 */ addiu $t7, $sp, 0x24 -/* 0D1814 800D0C14 95E10000 */ lhu $at, ($t7) -/* 0D1818 800D0C18 8FB8003C */ lw $t8, 0x3c($sp) -/* 0D181C 800D0C1C A7010000 */ sh $at, ($t8) -/* 0D1820 800D0C20 8FA90040 */ lw $t1, 0x40($sp) -/* 0D1824 800D0C24 24010001 */ li $at, 1 -/* 0D1828 800D0C28 15210007 */ bne $t1, $at, .L800D0C48 -/* 0D182C 800D0C2C 00000000 */ nop -/* 0D1830 800D0C30 93AB0033 */ lbu $t3, 0x33($sp) -/* 0D1834 800D0C34 8FA8002C */ lw $t0, 0x2c($sp) -/* 0D1838 800D0C38 240E0003 */ li $t6, 3 -/* 0D183C 800D0C3C 000B6040 */ sll $t4, $t3, 1 -/* 0D1840 800D0C40 010C6821 */ addu $t5, $t0, $t4 -/* 0D1844 800D0C44 A5AE0000 */ sh $t6, ($t5) -.L800D0C48: -/* 0D1848 800D0C48 8FA40028 */ lw $a0, 0x28($sp) -/* 0D184C 800D0C4C 93A50033 */ lbu $a1, 0x33($sp) -/* 0D1850 800D0C50 8FA60034 */ lw $a2, 0x34($sp) -/* 0D1854 800D0C54 0C034362 */ jal func_800D0D88 -/* 0D1858 800D0C58 93A7003B */ lbu $a3, 0x3b($sp) -/* 0D185C 800D0C5C AFA2001C */ sw $v0, 0x1c($sp) -/* 0D1860 800D0C60 8FB9001C */ lw $t9, 0x1c($sp) -/* 0D1864 800D0C64 13200003 */ beqz $t9, .L800D0C74 -/* 0D1868 800D0C68 00000000 */ nop -/* 0D186C 800D0C6C 10000042 */ b .L800D0D78 -/* 0D1870 800D0C70 03201025 */ move $v0, $t9 -.L800D0C74: -/* 0D1874 800D0C74 97B80024 */ lhu $t8, 0x24($sp) -/* 0D1878 800D0C78 24010001 */ li $at, 1 -/* 0D187C 800D0C7C 17010003 */ bne $t8, $at, .L800D0C8C -/* 0D1880 800D0C80 00000000 */ nop -/* 0D1884 800D0C84 1000003C */ b .L800D0D78 -/* 0D1888 800D0C88 00001025 */ move $v0, $zero -.L800D0C8C: -/* 0D188C 800D0C8C 8FAA0028 */ lw $t2, 0x28($sp) -/* 0D1890 800D0C90 97AF0024 */ lhu $t7, 0x24($sp) -/* 0D1894 800D0C94 8D490060 */ lw $t1, 0x60($t2) -/* 0D1898 800D0C98 01E9082A */ slt $at, $t7, $t1 -/* 0D189C 800D0C9C 14200025 */ bnez $at, .L800D0D34 -/* 0D18A0 800D0CA0 00000000 */ nop -.L800D0CA4: -/* 0D18A4 800D0CA4 93AE0025 */ lbu $t6, 0x25($sp) -/* 0D18A8 800D0CA8 97AB0024 */ lhu $t3, 0x24($sp) -/* 0D18AC 800D0CAC 8FAC002C */ lw $t4, 0x2c($sp) -/* 0D18B0 800D0CB0 000E6840 */ sll $t5, $t6, 1 -/* 0D18B4 800D0CB4 A7AB0020 */ sh $t3, 0x20($sp) -/* 0D18B8 800D0CB8 018DC821 */ addu $t9, $t4, $t5 -/* 0D18BC 800D0CBC 97210000 */ lhu $at, ($t9) -/* 0D18C0 800D0CC0 27A80024 */ addiu $t0, $sp, 0x24 -/* 0D18C4 800D0CC4 240F0003 */ li $t7, 3 -/* 0D18C8 800D0CC8 A5010000 */ sh $at, ($t0) -/* 0D18CC 800D0CCC 93AB0021 */ lbu $t3, 0x21($sp) -/* 0D18D0 800D0CD0 8FA9002C */ lw $t1, 0x2c($sp) -/* 0D18D4 800D0CD4 000B7040 */ sll $t6, $t3, 1 -/* 0D18D8 800D0CD8 012E6021 */ addu $t4, $t1, $t6 -/* 0D18DC 800D0CDC A58F0000 */ sh $t7, ($t4) -/* 0D18E0 800D0CE0 93A7003B */ lbu $a3, 0x3b($sp) -/* 0D18E4 800D0CE4 8FA60034 */ lw $a2, 0x34($sp) -/* 0D18E8 800D0CE8 93A50021 */ lbu $a1, 0x21($sp) -/* 0D18EC 800D0CEC 0C034362 */ jal func_800D0D88 -/* 0D18F0 800D0CF0 8FA40028 */ lw $a0, 0x28($sp) -/* 0D18F4 800D0CF4 AFA2001C */ sw $v0, 0x1c($sp) -/* 0D18F8 800D0CF8 8FAD001C */ lw $t5, 0x1c($sp) -/* 0D18FC 800D0CFC 11A00003 */ beqz $t5, .L800D0D0C -/* 0D1900 800D0D00 00000000 */ nop -/* 0D1904 800D0D04 1000001C */ b .L800D0D78 -/* 0D1908 800D0D08 01A01025 */ move $v0, $t5 -.L800D0D0C: -/* 0D190C 800D0D0C 93B80024 */ lbu $t8, 0x24($sp) -/* 0D1910 800D0D10 93A8003B */ lbu $t0, 0x3b($sp) -/* 0D1914 800D0D14 17080007 */ bne $t8, $t0, .L800D0D34 -/* 0D1918 800D0D18 00000000 */ nop -/* 0D191C 800D0D1C 8FAA0028 */ lw $t2, 0x28($sp) -/* 0D1920 800D0D20 97B90024 */ lhu $t9, 0x24($sp) -/* 0D1924 800D0D24 8D4B0060 */ lw $t3, 0x60($t2) -/* 0D1928 800D0D28 032B082A */ slt $at, $t9, $t3 -/* 0D192C 800D0D2C 1020FFDD */ beqz $at, .L800D0CA4 -/* 0D1930 800D0D30 00000000 */ nop -.L800D0D34: -/* 0D1934 800D0D34 8FAE0028 */ lw $t6, 0x28($sp) -/* 0D1938 800D0D38 97A90024 */ lhu $t1, 0x24($sp) -/* 0D193C 800D0D3C 8DCF0060 */ lw $t7, 0x60($t6) -/* 0D1940 800D0D40 012F082A */ slt $at, $t1, $t7 -/* 0D1944 800D0D44 14200007 */ bnez $at, .L800D0D64 -/* 0D1948 800D0D48 00000000 */ nop -/* 0D194C 800D0D4C 93B80025 */ lbu $t8, 0x25($sp) -/* 0D1950 800D0D50 8FAD002C */ lw $t5, 0x2c($sp) -/* 0D1954 800D0D54 240C0003 */ li $t4, 3 -/* 0D1958 800D0D58 00184040 */ sll $t0, $t8, 1 -/* 0D195C 800D0D5C 01A85021 */ addu $t2, $t5, $t0 -/* 0D1960 800D0D60 A54C0000 */ sh $t4, ($t2) -.L800D0D64: -/* 0D1964 800D0D64 27AB0024 */ addiu $t3, $sp, 0x24 -/* 0D1968 800D0D68 95610000 */ lhu $at, ($t3) -/* 0D196C 800D0D6C 8FB9003C */ lw $t9, 0x3c($sp) -/* 0D1970 800D0D70 00001025 */ move $v0, $zero -/* 0D1974 800D0D74 A7210000 */ sh $at, ($t9) -.L800D0D78: -/* 0D1978 800D0D78 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D197C 800D0D7C 27BD0028 */ addiu $sp, $sp, 0x28 -/* 0D1980 800D0D80 03E00008 */ jr $ra -/* 0D1984 800D0D84 00000000 */ nop - -glabel func_800D0D88 -/* 0D1988 800D0D88 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 0D198C 800D0D8C AFA40040 */ sw $a0, 0x40($sp) -/* 0D1990 800D0D90 AFA7004C */ sw $a3, 0x4c($sp) -/* 0D1994 800D0D94 93AE004F */ lbu $t6, 0x4f($sp) -/* 0D1998 800D0D98 8FAF0040 */ lw $t7, 0x40($sp) -/* 0D199C 800D0D9C AFBF0014 */ sw $ra, 0x14($sp) -/* 0D19A0 800D0DA0 AFA50044 */ sw $a1, 0x44($sp) -/* 0D19A4 800D0DA4 AFA60048 */ sw $a2, 0x48($sp) -/* 0D19A8 800D0DA8 AFA00038 */ sw $zero, 0x38($sp) -/* 0D19AC 800D0DAC A1EE0065 */ sb $t6, 0x65($t7) -/* 0D19B0 800D0DB0 0C0357F7 */ jal func_800D5FDC -/* 0D19B4 800D0DB4 8FA40040 */ lw $a0, 0x40($sp) -/* 0D19B8 800D0DB8 AFA20038 */ sw $v0, 0x38($sp) -/* 0D19BC 800D0DBC 8FB80038 */ lw $t8, 0x38($sp) -/* 0D19C0 800D0DC0 13000003 */ beqz $t8, .L800D0DD0 -/* 0D19C4 800D0DC4 00000000 */ nop -/* 0D19C8 800D0DC8 10000027 */ b .L800D0E68 -/* 0D19CC 800D0DCC 03001025 */ move $v0, $t8 -.L800D0DD0: -/* 0D19D0 800D0DD0 AFA0003C */ sw $zero, 0x3c($sp) -.L800D0DD4: -/* 0D19D4 800D0DD4 93A80047 */ lbu $t0, 0x47($sp) -/* 0D19D8 800D0DD8 8FB90040 */ lw $t9, 0x40($sp) -/* 0D19DC 800D0DDC 8FAA003C */ lw $t2, 0x3c($sp) -/* 0D19E0 800D0DE0 000848C0 */ sll $t1, $t0, 3 -/* 0D19E4 800D0DE4 27A70018 */ addiu $a3, $sp, 0x18 -/* 0D19E8 800D0DE8 8F240004 */ lw $a0, 4($t9) -/* 0D19EC 800D0DEC 8F250008 */ lw $a1, 8($t9) -/* 0D19F0 800D0DF0 0C033728 */ jal func_800CDCA0 -/* 0D19F4 800D0DF4 012A3021 */ addu $a2, $t1, $t2 -/* 0D19F8 800D0DF8 AFA20038 */ sw $v0, 0x38($sp) -/* 0D19FC 800D0DFC 8FAB0038 */ lw $t3, 0x38($sp) -/* 0D1A00 800D0E00 11600007 */ beqz $t3, .L800D0E20 -/* 0D1A04 800D0E04 00000000 */ nop -/* 0D1A08 800D0E08 8FAC0040 */ lw $t4, 0x40($sp) -/* 0D1A0C 800D0E0C A1800065 */ sb $zero, 0x65($t4) -/* 0D1A10 800D0E10 0C0357F7 */ jal func_800D5FDC -/* 0D1A14 800D0E14 8FA40040 */ lw $a0, 0x40($sp) -/* 0D1A18 800D0E18 10000013 */ b .L800D0E68 -/* 0D1A1C 800D0E1C 8FA20038 */ lw $v0, 0x38($sp) -.L800D0E20: -/* 0D1A20 800D0E20 27A40018 */ addiu $a0, $sp, 0x18 -/* 0D1A24 800D0E24 0C0354BC */ jal func_800D52F0 -/* 0D1A28 800D0E28 24050020 */ li $a1, 32 -/* 0D1A2C 800D0E2C 8FAD0048 */ lw $t5, 0x48($sp) -/* 0D1A30 800D0E30 95AE0000 */ lhu $t6, ($t5) -/* 0D1A34 800D0E34 004E7821 */ addu $t7, $v0, $t6 -/* 0D1A38 800D0E38 A5AF0000 */ sh $t7, ($t5) -/* 0D1A3C 800D0E3C 8FB8003C */ lw $t8, 0x3c($sp) -/* 0D1A40 800D0E40 27190001 */ addiu $t9, $t8, 1 -/* 0D1A44 800D0E44 2B210008 */ slti $at, $t9, 8 -/* 0D1A48 800D0E48 1420FFE2 */ bnez $at, .L800D0DD4 -/* 0D1A4C 800D0E4C AFB9003C */ sw $t9, 0x3c($sp) -/* 0D1A50 800D0E50 8FA80040 */ lw $t0, 0x40($sp) -/* 0D1A54 800D0E54 A1000065 */ sb $zero, 0x65($t0) -/* 0D1A58 800D0E58 0C0357F7 */ jal func_800D5FDC -/* 0D1A5C 800D0E5C 8FA40040 */ lw $a0, 0x40($sp) -/* 0D1A60 800D0E60 AFA20038 */ sw $v0, 0x38($sp) -/* 0D1A64 800D0E64 8FA20038 */ lw $v0, 0x38($sp) -.L800D0E68: -/* 0D1A68 800D0E68 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D1A6C 800D0E6C 27BD0040 */ addiu $sp, $sp, 0x40 -/* 0D1A70 800D0E70 03E00008 */ jr $ra -/* 0D1A74 800D0E74 00000000 */ nop - -/* 0D1A78 800D0E78 00000000 */ nop -/* 0D1A7C 800D0E7C 00000000 */ nop diff --git a/asm/unknown_0D2590.s b/asm/unknown_0D2590.s deleted file mode 100755 index f0abef70..00000000 --- a/asm/unknown_0D2590.s +++ /dev/null @@ -1,217 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_800D1990 -/* 0D2590 800D1990 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0D2594 800D1994 AFB00020 */ sw $s0, 0x20($sp) -/* 0D2598 800D1998 3C10800E */ lui $s0, %hi(D_800E38E0) # $s0, 0x800e -/* 0D259C 800D199C 261038E0 */ addiu $s0, %lo(D_800E38E0) # addiu $s0, $s0, 0x38e0 -/* 0D25A0 800D19A0 8E0E0000 */ lw $t6, ($s0) -/* 0D25A4 800D19A4 AFBF0024 */ sw $ra, 0x24($sp) -/* 0D25A8 800D19A8 AFA40030 */ sw $a0, 0x30($sp) -/* 0D25AC 800D19AC 55C00052 */ bnezl $t6, .L800D1AF8 -/* 0D25B0 800D19B0 8FBF0024 */ lw $ra, 0x24($sp) -/* 0D25B4 800D19B4 0C0353B0 */ jal func_800D4EC0 -/* 0D25B8 800D19B8 00000000 */ nop -/* 0D25BC 800D19BC 3C048013 */ lui $a0, %hi(D_8012D130) # $a0, 0x8013 -/* 0D25C0 800D19C0 3C058013 */ lui $a1, %hi(D_8012D148) # $a1, 0x8013 -/* 0D25C4 800D19C4 24A5D148 */ addiu $a1, %lo(D_8012D148) # addiu $a1, $a1, -0x2eb8 -/* 0D25C8 800D19C8 2484D130 */ addiu $a0, %lo(D_8012D130) # addiu $a0, $a0, -0x2ed0 -/* 0D25CC 800D19CC 0C032208 */ jal osCreateMesgQueue -/* 0D25D0 800D19D0 24060005 */ li $a2, 5 -/* 0D25D4 800D19D4 3C068013 */ lui $a2, %hi(D_8012D160) # $a2, 0x8013 -/* 0D25D8 800D19D8 3C078013 */ lui $a3, %hi(D_8012D178) # $a3, 0x8013 -/* 0D25DC 800D19DC 24E7D178 */ addiu $a3, %lo(D_8012D178) # addiu $a3, $a3, -0x2e88 -/* 0D25E0 800D19E0 24C6D160 */ addiu $a2, %lo(D_8012D160) # addiu $a2, $a2, -0x2ea0 -/* 0D25E4 800D19E4 240F000D */ li $t7, 13 -/* 0D25E8 800D19E8 2418000E */ li $t8, 14 -/* 0D25EC 800D19EC 3C058013 */ lui $a1, %hi(D_8012D130) # $a1, 0x8013 -/* 0D25F0 800D19F0 A4CF0000 */ sh $t7, ($a2) -/* 0D25F4 800D19F4 A0C00002 */ sb $zero, 2($a2) -/* 0D25F8 800D19F8 ACC00004 */ sw $zero, 4($a2) -/* 0D25FC 800D19FC A4F80000 */ sh $t8, ($a3) -/* 0D2600 800D1A00 A0E00002 */ sb $zero, 2($a3) -/* 0D2604 800D1A04 ACE00004 */ sw $zero, 4($a3) -/* 0D2608 800D1A08 24A5D130 */ addiu $a1, %lo(D_8012D130) # addiu $a1, $a1, -0x2ed0 -/* 0D260C 800D1A0C 0C0332EC */ jal osSetEventMsg -/* 0D2610 800D1A10 24040007 */ li $a0, 7 -/* 0D2614 800D1A14 3C078013 */ lui $a3, 0x8013 -/* 0D2618 800D1A18 3C058013 */ lui $a1, %hi(D_8012D130) # $a1, 0x8013 -/* 0D261C 800D1A1C 24E6D178 */ addiu $a2, $a3, -0x2e88 -/* 0D2620 800D1A20 24A5D130 */ addiu $a1, %lo(D_8012D130) # addiu $a1, $a1, -0x2ed0 -/* 0D2624 800D1A24 0C0332EC */ jal osSetEventMsg -/* 0D2628 800D1A28 24040003 */ li $a0, 3 -/* 0D262C 800D1A2C 2419FFFF */ li $t9, -1 -/* 0D2630 800D1A30 AFB90028 */ sw $t9, 0x28($sp) -/* 0D2634 800D1A34 0C034950 */ jal func_800D2540 -/* 0D2638 800D1A38 00002025 */ move $a0, $zero -/* 0D263C 800D1A3C 8FA80030 */ lw $t0, 0x30($sp) -/* 0D2640 800D1A40 00002025 */ move $a0, $zero -/* 0D2644 800D1A44 0048082A */ slt $at, $v0, $t0 -/* 0D2648 800D1A48 10200003 */ beqz $at, .L800D1A58 -/* 0D264C 800D1A4C 01002825 */ move $a1, $t0 -/* 0D2650 800D1A50 0C033210 */ jal func_800CC840 -/* 0D2654 800D1A54 AFA20028 */ sw $v0, 0x28($sp) -.L800D1A58: -/* 0D2658 800D1A58 0C034958 */ jal __osDisableInt -/* 0D265C 800D1A5C 00000000 */ nop -/* 0D2660 800D1A60 8FAB0030 */ lw $t3, 0x30($sp) -/* 0D2664 800D1A64 3C038013 */ lui $v1, %hi(D_8012D130) # $v1, 0x8013 -/* 0D2668 800D1A68 3C048013 */ lui $a0, %hi(D_8012CE80) # $a0, 0x8013 -/* 0D266C 800D1A6C 3C0A8013 */ lui $t2, %hi(D_8012D130) # $t2, 0x8013 -/* 0D2670 800D1A70 2484CE80 */ addiu $a0, %lo(D_8012CE80) # addiu $a0, $a0, -0x3180 -/* 0D2674 800D1A74 2463D130 */ addiu $v1, %lo(D_8012D130) # addiu $v1, $v1, -0x2ed0 -/* 0D2678 800D1A78 24090001 */ li $t1, 1 -/* 0D267C 800D1A7C 254AD130 */ addiu $t2, %lo(D_8012D130) # addiu $t2, $t2, -0x2ed0 -/* 0D2680 800D1A80 3C06800D */ lui $a2, %hi(D_800D1B08) # $a2, 0x800d -/* 0D2684 800D1A84 AFA2002C */ sw $v0, 0x2c($sp) -/* 0D2688 800D1A88 AE090000 */ sw $t1, ($s0) -/* 0D268C 800D1A8C AE040004 */ sw $a0, 4($s0) -/* 0D2690 800D1A90 AE030008 */ sw $v1, 8($s0) -/* 0D2694 800D1A94 AE03000C */ sw $v1, 0xc($s0) -/* 0D2698 800D1A98 AE000010 */ sw $zero, 0x10($s0) -/* 0D269C 800D1A9C AE000014 */ sw $zero, 0x14($s0) -/* 0D26A0 800D1AA0 AE000018 */ sw $zero, 0x18($s0) -/* 0D26A4 800D1AA4 24C61B08 */ addiu $a2, %lo(D_800D1B08) # addiu $a2, $a2, 0x1b08 -/* 0D26A8 800D1AA8 AFAA0010 */ sw $t2, 0x10($sp) -/* 0D26AC 800D1AAC 00002825 */ move $a1, $zero -/* 0D26B0 800D1AB0 02003825 */ move $a3, $s0 -/* 0D26B4 800D1AB4 0C032214 */ jal osCreateThread -/* 0D26B8 800D1AB8 AFAB0014 */ sw $t3, 0x14($sp) -/* 0D26BC 800D1ABC 0C034AC4 */ jal func_800D2B10 -/* 0D26C0 800D1AC0 00000000 */ nop -/* 0D26C4 800D1AC4 3C048013 */ lui $a0, %hi(D_8012CE80) # $a0, 0x8013 -/* 0D26C8 800D1AC8 0C032268 */ jal osStartThread -/* 0D26CC 800D1ACC 2484CE80 */ addiu $a0, %lo(D_8012CE80) # addiu $a0, $a0, -0x3180 -/* 0D26D0 800D1AD0 0C034960 */ jal __osRestoreInt -/* 0D26D4 800D1AD4 8FA4002C */ lw $a0, 0x2c($sp) -/* 0D26D8 800D1AD8 8FAC0028 */ lw $t4, 0x28($sp) -/* 0D26DC 800D1ADC 2401FFFF */ li $at, -1 -/* 0D26E0 800D1AE0 00002025 */ move $a0, $zero -/* 0D26E4 800D1AE4 51810004 */ beql $t4, $at, .L800D1AF8 -/* 0D26E8 800D1AE8 8FBF0024 */ lw $ra, 0x24($sp) -/* 0D26EC 800D1AEC 0C033210 */ jal func_800CC840 -/* 0D26F0 800D1AF0 01802825 */ move $a1, $t4 -/* 0D26F4 800D1AF4 8FBF0024 */ lw $ra, 0x24($sp) -.L800D1AF8: -/* 0D26F8 800D1AF8 8FB00020 */ lw $s0, 0x20($sp) -/* 0D26FC 800D1AFC 27BD0030 */ addiu $sp, $sp, 0x30 -/* 0D2700 800D1B00 03E00008 */ jr $ra -/* 0D2704 800D1B04 00000000 */ nop - -glabel D_800D1B08 -/* 0D2708 800D1B08 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 0D270C 800D1B0C AFBF0034 */ sw $ra, 0x34($sp) -/* 0D2710 800D1B10 AFB70030 */ sw $s7, 0x30($sp) -/* 0D2714 800D1B14 0080B825 */ move $s7, $a0 -/* 0D2718 800D1B18 AFB6002C */ sw $s6, 0x2c($sp) -/* 0D271C 800D1B1C AFB50028 */ sw $s5, 0x28($sp) -/* 0D2720 800D1B20 AFB40024 */ sw $s4, 0x24($sp) -/* 0D2724 800D1B24 AFB30020 */ sw $s3, 0x20($sp) -/* 0D2728 800D1B28 AFB2001C */ sw $s2, 0x1c($sp) -/* 0D272C 800D1B2C AFB10018 */ sw $s1, 0x18($sp) -/* 0D2730 800D1B30 AFB00014 */ sw $s0, 0x14($sp) -/* 0D2734 800D1B34 0C035820 */ jal func_800D6080 -/* 0D2738 800D1B38 AFA00044 */ sw $zero, 0x44($sp) -/* 0D273C 800D1B3C 94430002 */ lhu $v1, 2($v0) -/* 0D2740 800D1B40 3C018013 */ lui $at, %hi(D_8012D190) # $at, 0x8013 -/* 0D2744 800D1B44 2416000E */ li $s6, 14 -/* 0D2748 800D1B48 14600004 */ bnez $v1, .L800D1B5C -/* 0D274C 800D1B4C A423D190 */ sh $v1, %lo(D_8012D190)($at) -/* 0D2750 800D1B50 24030001 */ li $v1, 1 -/* 0D2754 800D1B54 3C018013 */ lui $at, %hi(D_8012D190) # $at, 0x8013 -/* 0D2758 800D1B58 A423D190 */ sh $v1, %lo(D_8012D190)($at) -.L800D1B5C: -/* 0D275C 800D1B5C 3C138013 */ lui $s3, %hi(D_8012D22C) # $s3, 0x8013 -/* 0D2760 800D1B60 3C128013 */ lui $s2, %hi(D_8012D228) # $s2, 0x8013 -/* 0D2764 800D1B64 3C118013 */ lui $s1, %hi(D_8012D220) # $s1, 0x8013 -/* 0D2768 800D1B68 2631D220 */ addiu $s1, %lo(D_8012D220) # addiu $s1, $s1, -0x2de0 -/* 0D276C 800D1B6C 2652D228 */ addiu $s2, %lo(D_8012D228) # addiu $s2, $s2, -0x2dd8 -/* 0D2770 800D1B70 2673D22C */ addiu $s3, %lo(D_8012D22C) # addiu $s3, $s3, -0x2dd4 -/* 0D2774 800D1B74 2415000D */ li $s5, 13 -/* 0D2778 800D1B78 27B40044 */ addiu $s4, $sp, 0x44 -.L800D1B7C: -/* 0D277C 800D1B7C 8EE4000C */ lw $a0, 0xc($s7) -.L800D1B80: -/* 0D2780 800D1B80 02802825 */ move $a1, $s4 -/* 0D2784 800D1B84 0C0322EC */ jal osRecvMesg -/* 0D2788 800D1B88 24060001 */ li $a2, 1 -/* 0D278C 800D1B8C 8FAE0044 */ lw $t6, 0x44($sp) -/* 0D2790 800D1B90 95C30000 */ lhu $v1, ($t6) -/* 0D2794 800D1B94 10750005 */ beq $v1, $s5, .L800D1BAC -/* 0D2798 800D1B98 00000000 */ nop -/* 0D279C 800D1B9C 1076002A */ beq $v1, $s6, .L800D1C48 -/* 0D27A0 800D1BA0 00000000 */ nop -/* 0D27A4 800D1BA4 1000FFF6 */ b .L800D1B80 -/* 0D27A8 800D1BA8 8EE4000C */ lw $a0, 0xc($s7) -.L800D1BAC: -/* 0D27AC 800D1BAC 0C035824 */ jal func_800D6090 -/* 0D27B0 800D1BB0 00000000 */ nop -/* 0D27B4 800D1BB4 3C038013 */ lui $v1, %hi(D_8012FFFF) # $v1, 0x8013 -/* 0D27B8 800D1BB8 9463D190 */ lhu $v1, %lo(D_8012D190)($v1) -/* 0D27BC 800D1BBC 3C018013 */ lui $at, %hi(D_8012D190) # $at, 0x8013 -/* 0D27C0 800D1BC0 2463FFFF */ addiu $v1, %lo(D_8012FFFF) # addiu $v1, $v1, -1 -/* 0D27C4 800D1BC4 306FFFFF */ andi $t7, $v1, 0xffff -/* 0D27C8 800D1BC8 15E0000E */ bnez $t7, .L800D1C04 -/* 0D27CC 800D1BCC A42FD190 */ sh $t7, %lo(D_8012D190)($at) -/* 0D27D0 800D1BD0 0C035820 */ jal func_800D6080 -/* 0D27D4 800D1BD4 00000000 */ nop -/* 0D27D8 800D1BD8 8C580010 */ lw $t8, 0x10($v0) -/* 0D27DC 800D1BDC 00408025 */ move $s0, $v0 -/* 0D27E0 800D1BE0 00003025 */ move $a2, $zero -/* 0D27E4 800D1BE4 53000005 */ beql $t8, $zero, .L800D1BFC -/* 0D27E8 800D1BE8 96030002 */ lhu $v1, 2($s0) -/* 0D27EC 800D1BEC 8C440010 */ lw $a0, 0x10($v0) -/* 0D27F0 800D1BF0 0C03238C */ jal func_800C8E30 -/* 0D27F4 800D1BF4 8C450014 */ lw $a1, 0x14($v0) -/* 0D27F8 800D1BF8 96030002 */ lhu $v1, 2($s0) -.L800D1BFC: -/* 0D27FC 800D1BFC 3C018013 */ lui $at, %hi(D_8012D190) # $at, 0x8013 -/* 0D2800 800D1C00 A423D190 */ sh $v1, %lo(D_8012D190)($at) -.L800D1C04: -/* 0D2804 800D1C04 8E790000 */ lw $t9, ($s3) -/* 0D2808 800D1C08 8E500000 */ lw $s0, ($s2) -/* 0D280C 800D1C0C 27280001 */ addiu $t0, $t9, 1 -/* 0D2810 800D1C10 0C031E34 */ jal func_800C78D0 -/* 0D2814 800D1C14 AE680000 */ sw $t0, ($s3) -/* 0D2818 800D1C18 8E2D0004 */ lw $t5, 4($s1) -/* 0D281C 800D1C1C 00508023 */ subu $s0, $v0, $s0 -/* 0D2820 800D1C20 8E2C0000 */ lw $t4, ($s1) -/* 0D2824 800D1C24 020D7821 */ addu $t7, $s0, $t5 -/* 0D2828 800D1C28 240A0000 */ li $t2, 0 -/* 0D282C 800D1C2C 01ED082B */ sltu $at, $t7, $t5 -/* 0D2830 800D1C30 002A7021 */ addu $t6, $at, $t2 -/* 0D2834 800D1C34 01CC7021 */ addu $t6, $t6, $t4 -/* 0D2838 800D1C38 AE420000 */ sw $v0, ($s2) -/* 0D283C 800D1C3C AE2E0000 */ sw $t6, ($s1) -/* 0D2840 800D1C40 1000FFCE */ b .L800D1B7C -/* 0D2844 800D1C44 AE2F0004 */ sw $t7, 4($s1) -.L800D1C48: -/* 0D2848 800D1C48 0C0353D3 */ jal func_800D4F4C -/* 0D284C 800D1C4C 00000000 */ nop -/* 0D2850 800D1C50 1000FFCB */ b .L800D1B80 -/* 0D2854 800D1C54 8EE4000C */ lw $a0, 0xc($s7) -/* 0D2858 800D1C58 00000000 */ nop -/* 0D285C 800D1C5C 00000000 */ nop -/* 0D2860 800D1C60 00000000 */ nop -/* 0D2864 800D1C64 00000000 */ nop -/* 0D2868 800D1C68 00000000 */ nop -/* 0D286C 800D1C6C 00000000 */ nop -/* 0D2870 800D1C70 8FBF0034 */ lw $ra, 0x34($sp) -/* 0D2874 800D1C74 8FB00014 */ lw $s0, 0x14($sp) -/* 0D2878 800D1C78 8FB10018 */ lw $s1, 0x18($sp) -/* 0D287C 800D1C7C 8FB2001C */ lw $s2, 0x1c($sp) -/* 0D2880 800D1C80 8FB30020 */ lw $s3, 0x20($sp) -/* 0D2884 800D1C84 8FB40024 */ lw $s4, 0x24($sp) -/* 0D2888 800D1C88 8FB50028 */ lw $s5, 0x28($sp) -/* 0D288C 800D1C8C 8FB6002C */ lw $s6, 0x2c($sp) -/* 0D2890 800D1C90 8FB70030 */ lw $s7, 0x30($sp) -/* 0D2894 800D1C94 03E00008 */ jr $ra -/* 0D2898 800D1C98 27BD0050 */ addiu $sp, $sp, 0x50 - -/* 0D289C 800D1C9C 00000000 */ nop diff --git a/asm/unknown_0D29F0.s b/asm/unknown_0D29F0.s deleted file mode 100755 index 99192cef..00000000 --- a/asm/unknown_0D29F0.s +++ /dev/null @@ -1,319 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_800D1DF0 -/* 0D29F0 800D1DF0 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0D29F4 800D1DF4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D29F8 800D1DF8 0C0358FC */ jal func_800D63F0 -/* 0D29FC 800D1DFC AFA40020 */ sw $a0, 0x20($sp) -/* 0D2A00 800D1E00 AFA2001C */ sw $v0, 0x1c($sp) -/* 0D2A04 800D1E04 8FAE001C */ lw $t6, 0x1c($sp) -/* 0D2A08 800D1E08 31CF0100 */ andi $t7, $t6, 0x100 -/* 0D2A0C 800D1E0C 11E00004 */ beqz $t7, .L800D1E20 -/* 0D2A10 800D1E10 00000000 */ nop -/* 0D2A14 800D1E14 24180001 */ li $t8, 1 -/* 0D2A18 800D1E18 10000002 */ b .L800D1E24 -/* 0D2A1C 800D1E1C AFB80018 */ sw $t8, 0x18($sp) -.L800D1E20: -/* 0D2A20 800D1E20 AFA00018 */ sw $zero, 0x18($sp) -.L800D1E24: -/* 0D2A24 800D1E24 8FB9001C */ lw $t9, 0x1c($sp) -/* 0D2A28 800D1E28 33280080 */ andi $t0, $t9, 0x80 -/* 0D2A2C 800D1E2C 1100000B */ beqz $t0, .L800D1E5C -/* 0D2A30 800D1E30 00000000 */ nop -/* 0D2A34 800D1E34 8FA90020 */ lw $t1, 0x20($sp) -/* 0D2A38 800D1E38 8FAB0018 */ lw $t3, 0x18($sp) -/* 0D2A3C 800D1E3C 2401FFFD */ li $at, -3 -/* 0D2A40 800D1E40 8D2A0004 */ lw $t2, 4($t1) -/* 0D2A44 800D1E44 014B6025 */ or $t4, $t2, $t3 -/* 0D2A48 800D1E48 AD2C0004 */ sw $t4, 4($t1) -/* 0D2A4C 800D1E4C 8FAD0020 */ lw $t5, 0x20($sp) -/* 0D2A50 800D1E50 8DAE0004 */ lw $t6, 4($t5) -/* 0D2A54 800D1E54 01C17824 */ and $t7, $t6, $at -/* 0D2A58 800D1E58 ADAF0004 */ sw $t7, 4($t5) -.L800D1E5C: -/* 0D2A5C 800D1E5C 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D2A60 800D1E60 8FA20018 */ lw $v0, 0x18($sp) -/* 0D2A64 800D1E64 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0D2A68 800D1E68 03E00008 */ jr $ra -/* 0D2A6C 800D1E6C 00000000 */ nop - -glabel func_800D1E70 -/* 0D2A70 800D1E70 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0D2A74 800D1E74 AFBF001C */ sw $ra, 0x1c($sp) -/* 0D2A78 800D1E78 0C034958 */ jal __osDisableInt -/* 0D2A7C 800D1E7C AFB00018 */ sw $s0, 0x18($sp) -/* 0D2A80 800D1E80 3C0E800E */ lui $t6, %hi(D_800E4870) # $t6, 0x800e -/* 0D2A84 800D1E84 8DCE4870 */ lw $t6, %lo(D_800E4870)($t6) -/* 0D2A88 800D1E88 00408025 */ move $s0, $v0 -/* 0D2A8C 800D1E8C 02002025 */ move $a0, $s0 -/* 0D2A90 800D1E90 8DCF0004 */ lw $t7, 4($t6) -/* 0D2A94 800D1E94 0C034960 */ jal __osRestoreInt -/* 0D2A98 800D1E98 AFAF0020 */ sw $t7, 0x20($sp) -/* 0D2A9C 800D1E9C 8FBF001C */ lw $ra, 0x1c($sp) -/* 0D2AA0 800D1EA0 8FA20020 */ lw $v0, 0x20($sp) -/* 0D2AA4 800D1EA4 8FB00018 */ lw $s0, 0x18($sp) -/* 0D2AA8 800D1EA8 03E00008 */ jr $ra -/* 0D2AAC 800D1EAC 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_800D1EB0 -/* 0D2AB0 800D1EB0 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0D2AB4 800D1EB4 AFBF001C */ sw $ra, 0x1c($sp) -/* 0D2AB8 800D1EB8 0C034958 */ jal __osDisableInt -/* 0D2ABC 800D1EBC AFB00018 */ sw $s0, 0x18($sp) -/* 0D2AC0 800D1EC0 3C0E800E */ lui $t6, %hi(D_800E4874) # $t6, 0x800e -/* 0D2AC4 800D1EC4 8DCE4874 */ lw $t6, %lo(D_800E4874)($t6) -/* 0D2AC8 800D1EC8 00408025 */ move $s0, $v0 -/* 0D2ACC 800D1ECC 02002025 */ move $a0, $s0 -/* 0D2AD0 800D1ED0 8DCF0004 */ lw $t7, 4($t6) -/* 0D2AD4 800D1ED4 0C034960 */ jal __osRestoreInt -/* 0D2AD8 800D1ED8 AFAF0020 */ sw $t7, 0x20($sp) -/* 0D2ADC 800D1EDC 8FBF001C */ lw $ra, 0x1c($sp) -/* 0D2AE0 800D1EE0 8FA20020 */ lw $v0, 0x20($sp) -/* 0D2AE4 800D1EE4 8FB00018 */ lw $s0, 0x18($sp) -/* 0D2AE8 800D1EE8 03E00008 */ jr $ra -/* 0D2AEC 800D1EEC 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_800D1EF0 -/* 0D2AF0 800D1EF0 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0D2AF4 800D1EF4 3C0E8013 */ lui $t6, %hi(D_8012D1A0) # $t6, 0x8013 -/* 0D2AF8 800D1EF8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D2AFC 800D1EFC AFA40020 */ sw $a0, 0x20($sp) -/* 0D2B00 800D1F00 25CED1A0 */ addiu $t6, %lo(D_8012D1A0) # addiu $t6, $t6, -0x2e60 -/* 0D2B04 800D1F04 AFAE001C */ sw $t6, 0x1c($sp) -/* 0D2B08 800D1F08 01C02825 */ move $a1, $t6 -/* 0D2B0C 800D1F0C 8FA40020 */ lw $a0, 0x20($sp) -/* 0D2B10 800D1F10 0C032768 */ jal bcopy -/* 0D2B14 800D1F14 24060040 */ li $a2, 64 -/* 0D2B18 800D1F18 8FAF001C */ lw $t7, 0x1c($sp) -/* 0D2B1C 800D1F1C 8DF80010 */ lw $t8, 0x10($t7) -/* 0D2B20 800D1F20 13000005 */ beqz $t8, .L800D1F38 -/* 0D2B24 800D1F24 00000000 */ nop -/* 0D2B28 800D1F28 0C03233C */ jal func_800C8CF0 -/* 0D2B2C 800D1F2C 03002025 */ move $a0, $t8 -/* 0D2B30 800D1F30 8FB9001C */ lw $t9, 0x1c($sp) -/* 0D2B34 800D1F34 AF220010 */ sw $v0, 0x10($t9) -.L800D1F38: -/* 0D2B38 800D1F38 8FA8001C */ lw $t0, 0x1c($sp) -/* 0D2B3C 800D1F3C 8D090018 */ lw $t1, 0x18($t0) -/* 0D2B40 800D1F40 11200005 */ beqz $t1, .L800D1F58 -/* 0D2B44 800D1F44 00000000 */ nop -/* 0D2B48 800D1F48 0C03233C */ jal func_800C8CF0 -/* 0D2B4C 800D1F4C 01202025 */ move $a0, $t1 -/* 0D2B50 800D1F50 8FAA001C */ lw $t2, 0x1c($sp) -/* 0D2B54 800D1F54 AD420018 */ sw $v0, 0x18($t2) -.L800D1F58: -/* 0D2B58 800D1F58 8FAB001C */ lw $t3, 0x1c($sp) -/* 0D2B5C 800D1F5C 8D6C0020 */ lw $t4, 0x20($t3) -/* 0D2B60 800D1F60 11800005 */ beqz $t4, .L800D1F78 -/* 0D2B64 800D1F64 00000000 */ nop -/* 0D2B68 800D1F68 0C03233C */ jal func_800C8CF0 -/* 0D2B6C 800D1F6C 01802025 */ move $a0, $t4 -/* 0D2B70 800D1F70 8FAD001C */ lw $t5, 0x1c($sp) -/* 0D2B74 800D1F74 ADA20020 */ sw $v0, 0x20($t5) -.L800D1F78: -/* 0D2B78 800D1F78 8FAE001C */ lw $t6, 0x1c($sp) -/* 0D2B7C 800D1F7C 8DCF0028 */ lw $t7, 0x28($t6) -/* 0D2B80 800D1F80 11E00005 */ beqz $t7, .L800D1F98 -/* 0D2B84 800D1F84 00000000 */ nop -/* 0D2B88 800D1F88 0C03233C */ jal func_800C8CF0 -/* 0D2B8C 800D1F8C 01E02025 */ move $a0, $t7 -/* 0D2B90 800D1F90 8FB8001C */ lw $t8, 0x1c($sp) -/* 0D2B94 800D1F94 AF020028 */ sw $v0, 0x28($t8) -.L800D1F98: -/* 0D2B98 800D1F98 8FB9001C */ lw $t9, 0x1c($sp) -/* 0D2B9C 800D1F9C 8F28002C */ lw $t0, 0x2c($t9) -/* 0D2BA0 800D1FA0 11000005 */ beqz $t0, .L800D1FB8 -/* 0D2BA4 800D1FA4 00000000 */ nop -/* 0D2BA8 800D1FA8 0C03233C */ jal func_800C8CF0 -/* 0D2BAC 800D1FAC 01002025 */ move $a0, $t0 -/* 0D2BB0 800D1FB0 8FA9001C */ lw $t1, 0x1c($sp) -/* 0D2BB4 800D1FB4 AD22002C */ sw $v0, 0x2c($t1) -.L800D1FB8: -/* 0D2BB8 800D1FB8 8FAA001C */ lw $t2, 0x1c($sp) -/* 0D2BBC 800D1FBC 8D4B0030 */ lw $t3, 0x30($t2) -/* 0D2BC0 800D1FC0 11600005 */ beqz $t3, .L800D1FD8 -/* 0D2BC4 800D1FC4 00000000 */ nop -/* 0D2BC8 800D1FC8 0C03233C */ jal func_800C8CF0 -/* 0D2BCC 800D1FCC 01602025 */ move $a0, $t3 -/* 0D2BD0 800D1FD0 8FAC001C */ lw $t4, 0x1c($sp) -/* 0D2BD4 800D1FD4 AD820030 */ sw $v0, 0x30($t4) -.L800D1FD8: -/* 0D2BD8 800D1FD8 8FAD001C */ lw $t5, 0x1c($sp) -/* 0D2BDC 800D1FDC 8DAE0038 */ lw $t6, 0x38($t5) -/* 0D2BE0 800D1FE0 11C00005 */ beqz $t6, .L800D1FF8 -/* 0D2BE4 800D1FE4 00000000 */ nop -/* 0D2BE8 800D1FE8 0C03233C */ jal func_800C8CF0 -/* 0D2BEC 800D1FEC 01C02025 */ move $a0, $t6 -/* 0D2BF0 800D1FF0 8FAF001C */ lw $t7, 0x1c($sp) -/* 0D2BF4 800D1FF4 ADE20038 */ sw $v0, 0x38($t7) -.L800D1FF8: -/* 0D2BF8 800D1FF8 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D2BFC 800D1FFC 8FA2001C */ lw $v0, 0x1c($sp) -/* 0D2C00 800D2000 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0D2C04 800D2004 03E00008 */ jr $ra -/* 0D2C08 800D2008 00000000 */ nop - -glabel func_800D200C -/* 0D2C0C 800D200C 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0D2C10 800D2010 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D2C14 800D2014 AFA40020 */ sw $a0, 0x20($sp) -/* 0D2C18 800D2018 0C0347BC */ jal func_800D1EF0 -/* 0D2C1C 800D201C 8FA40020 */ lw $a0, 0x20($sp) -/* 0D2C20 800D2020 AFA2001C */ sw $v0, 0x1c($sp) -/* 0D2C24 800D2024 8FAE001C */ lw $t6, 0x1c($sp) -/* 0D2C28 800D2028 8DCF0004 */ lw $t7, 4($t6) -/* 0D2C2C 800D202C 31F80001 */ andi $t8, $t7, 1 -/* 0D2C30 800D2030 1300000B */ beqz $t8, .L800D2060 -/* 0D2C34 800D2034 00000000 */ nop -/* 0D2C38 800D2038 8DD90038 */ lw $t9, 0x38($t6) -/* 0D2C3C 800D203C 2401FFFE */ li $at, -2 -/* 0D2C40 800D2040 ADD90018 */ sw $t9, 0x18($t6) -/* 0D2C44 800D2044 8FA8001C */ lw $t0, 0x1c($sp) -/* 0D2C48 800D2048 8D09003C */ lw $t1, 0x3c($t0) -/* 0D2C4C 800D204C AD09001C */ sw $t1, 0x1c($t0) -/* 0D2C50 800D2050 8FAA0020 */ lw $t2, 0x20($sp) -/* 0D2C54 800D2054 8D4B0004 */ lw $t3, 4($t2) -/* 0D2C58 800D2058 01616024 */ and $t4, $t3, $at -/* 0D2C5C 800D205C AD4C0004 */ sw $t4, 4($t2) -.L800D2060: -/* 0D2C60 800D2060 8FA4001C */ lw $a0, 0x1c($sp) -/* 0D2C64 800D2064 0C03518C */ jal func_800D4630 -/* 0D2C68 800D2068 24050040 */ li $a1, 64 -/* 0D2C6C 800D206C 0C033490 */ jal func_800CD240 -/* 0D2C70 800D2070 24042B00 */ li $a0, 11008 -/* 0D2C74 800D2074 3C040400 */ lui $a0, (0x04001000 >> 16) # lui $a0, 0x400 -/* 0D2C78 800D2078 0C035900 */ jal func_800D6400 -/* 0D2C7C 800D207C 34841000 */ ori $a0, (0x04001000 & 0xFFFF) # ori $a0, $a0, 0x1000 -/* 0D2C80 800D2080 2401FFFF */ li $at, -1 -/* 0D2C84 800D2084 14410007 */ bne $v0, $at, .L800D20A4 -/* 0D2C88 800D2088 00000000 */ nop -.L800D208C: -/* 0D2C8C 800D208C 3C040400 */ lui $a0, (0x04001000 >> 16) # lui $a0, 0x400 -/* 0D2C90 800D2090 0C035900 */ jal func_800D6400 -/* 0D2C94 800D2094 34841000 */ ori $a0, (0x04001000 & 0xFFFF) # ori $a0, $a0, 0x1000 -/* 0D2C98 800D2098 2401FFFF */ li $at, -1 -/* 0D2C9C 800D209C 1041FFFB */ beq $v0, $at, .L800D208C -/* 0D2CA0 800D20A0 00000000 */ nop -.L800D20A4: -/* 0D2CA4 800D20A4 3C050400 */ lui $a1, (0x04000FC0 >> 16) # lui $a1, 0x400 -/* 0D2CA8 800D20A8 34A50FC0 */ ori $a1, (0x04000FC0 & 0xFFFF) # ori $a1, $a1, 0xfc0 -/* 0D2CAC 800D20AC 24040001 */ li $a0, 1 -/* 0D2CB0 800D20B0 8FA6001C */ lw $a2, 0x1c($sp) -/* 0D2CB4 800D20B4 0C035910 */ jal func_800D6440 -/* 0D2CB8 800D20B8 24070040 */ li $a3, 64 -/* 0D2CBC 800D20BC 2401FFFF */ li $at, -1 -/* 0D2CC0 800D20C0 1441000A */ bne $v0, $at, .L800D20EC -/* 0D2CC4 800D20C4 00000000 */ nop -.L800D20C8: -/* 0D2CC8 800D20C8 3C050400 */ lui $a1, (0x04000FC0 >> 16) # lui $a1, 0x400 -/* 0D2CCC 800D20CC 34A50FC0 */ ori $a1, (0x04000FC0 & 0xFFFF) # ori $a1, $a1, 0xfc0 -/* 0D2CD0 800D20D0 24040001 */ li $a0, 1 -/* 0D2CD4 800D20D4 8FA6001C */ lw $a2, 0x1c($sp) -/* 0D2CD8 800D20D8 0C035910 */ jal func_800D6440 -/* 0D2CDC 800D20DC 24070040 */ li $a3, 64 -/* 0D2CE0 800D20E0 2401FFFF */ li $at, -1 -/* 0D2CE4 800D20E4 1041FFF8 */ beq $v0, $at, .L800D20C8 -/* 0D2CE8 800D20E8 00000000 */ nop -.L800D20EC: -/* 0D2CEC 800D20EC 0C035934 */ jal func_800D64D0 -/* 0D2CF0 800D20F0 00000000 */ nop -/* 0D2CF4 800D20F4 10400005 */ beqz $v0, .L800D210C -/* 0D2CF8 800D20F8 00000000 */ nop -.L800D20FC: -/* 0D2CFC 800D20FC 0C035934 */ jal func_800D64D0 -/* 0D2D00 800D2100 00000000 */ nop -/* 0D2D04 800D2104 1440FFFD */ bnez $v0, .L800D20FC -/* 0D2D08 800D2108 00000000 */ nop -.L800D210C: -/* 0D2D0C 800D210C 8FAD001C */ lw $t5, 0x1c($sp) -/* 0D2D10 800D2110 3C050400 */ lui $a1, (0x04001000 >> 16) # lui $a1, 0x400 -/* 0D2D14 800D2114 34A51000 */ ori $a1, (0x04001000 & 0xFFFF) # ori $a1, $a1, 0x1000 -/* 0D2D18 800D2118 24040001 */ li $a0, 1 -/* 0D2D1C 800D211C 8DA60008 */ lw $a2, 8($t5) -/* 0D2D20 800D2120 0C035910 */ jal func_800D6440 -/* 0D2D24 800D2124 8DA7000C */ lw $a3, 0xc($t5) -/* 0D2D28 800D2128 2401FFFF */ li $at, -1 -/* 0D2D2C 800D212C 1441000B */ bne $v0, $at, .L800D215C -/* 0D2D30 800D2130 00000000 */ nop -.L800D2134: -/* 0D2D34 800D2134 8FAF001C */ lw $t7, 0x1c($sp) -/* 0D2D38 800D2138 3C050400 */ lui $a1, (0x04001000 >> 16) # lui $a1, 0x400 -/* 0D2D3C 800D213C 34A51000 */ ori $a1, (0x04001000 & 0xFFFF) # ori $a1, $a1, 0x1000 -/* 0D2D40 800D2140 24040001 */ li $a0, 1 -/* 0D2D44 800D2144 8DE60008 */ lw $a2, 8($t7) -/* 0D2D48 800D2148 0C035910 */ jal func_800D6440 -/* 0D2D4C 800D214C 8DE7000C */ lw $a3, 0xc($t7) -/* 0D2D50 800D2150 2401FFFF */ li $at, -1 -/* 0D2D54 800D2154 1041FFF7 */ beq $v0, $at, .L800D2134 -/* 0D2D58 800D2158 00000000 */ nop -.L800D215C: -/* 0D2D5C 800D215C 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D2D60 800D2160 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0D2D64 800D2164 03E00008 */ jr $ra -/* 0D2D68 800D2168 00000000 */ nop - -glabel func_800D216C -/* 0D2D6C 800D216C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0D2D70 800D2170 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D2D74 800D2174 0C035934 */ jal func_800D64D0 -/* 0D2D78 800D2178 AFA40018 */ sw $a0, 0x18($sp) -/* 0D2D7C 800D217C 10400005 */ beqz $v0, .L800D2194 -/* 0D2D80 800D2180 00000000 */ nop -.L800D2184: -/* 0D2D84 800D2184 0C035934 */ jal func_800D64D0 -/* 0D2D88 800D2188 00000000 */ nop -/* 0D2D8C 800D218C 1440FFFD */ bnez $v0, .L800D2184 -/* 0D2D90 800D2190 00000000 */ nop -.L800D2194: -/* 0D2D94 800D2194 0C033490 */ jal func_800CD240 -/* 0D2D98 800D2198 24040125 */ li $a0, 293 -/* 0D2D9C 800D219C 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D2DA0 800D21A0 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0D2DA4 800D21A4 03E00008 */ jr $ra -/* 0D2DA8 800D21A8 00000000 */ nop - -/* 0D2DAC 800D21AC 00000000 */ nop -glabel func_800D21B0 -/* 0D2DB0 800D21B0 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0D2DB4 800D21B4 AFBF001C */ sw $ra, 0x1c($sp) -/* 0D2DB8 800D21B8 0C034958 */ jal __osDisableInt -/* 0D2DBC 800D21BC AFB00018 */ sw $s0, 0x18($sp) -/* 0D2DC0 800D21C0 0C031E34 */ jal func_800C78D0 -/* 0D2DC4 800D21C4 00408025 */ move $s0, $v0 -/* 0D2DC8 800D21C8 AFA20034 */ sw $v0, 0x34($sp) -/* 0D2DCC 800D21CC 3C0F8013 */ lui $t7, %hi(D_8012D228) # $t7, 0x8013 -/* 0D2DD0 800D21D0 8DEFD228 */ lw $t7, %lo(D_8012D228)($t7) -/* 0D2DD4 800D21D4 8FAE0034 */ lw $t6, 0x34($sp) -/* 0D2DD8 800D21D8 3C088013 */ lui $t0, %hi(D_8012D220) # $t0, 0x8013 -/* 0D2DDC 800D21DC 3C098013 */ lui $t1, %hi(D_8012D224) # $t1, 0x8013 -/* 0D2DE0 800D21E0 8D29D224 */ lw $t1, %lo(D_8012D224)($t1) -/* 0D2DE4 800D21E4 8D08D220 */ lw $t0, %lo(D_8012D220)($t0) -/* 0D2DE8 800D21E8 01CFC023 */ subu $t8, $t6, $t7 -/* 0D2DEC 800D21EC AFB80030 */ sw $t8, 0x30($sp) -/* 0D2DF0 800D21F0 02002025 */ move $a0, $s0 -/* 0D2DF4 800D21F4 AFA9002C */ sw $t1, 0x2c($sp) -/* 0D2DF8 800D21F8 0C034960 */ jal __osRestoreInt -/* 0D2DFC 800D21FC AFA80028 */ sw $t0, 0x28($sp) -/* 0D2E00 800D2200 8FB90030 */ lw $t9, 0x30($sp) -/* 0D2E04 800D2204 8FAD002C */ lw $t5, 0x2c($sp) -/* 0D2E08 800D2208 8FBF001C */ lw $ra, 0x1c($sp) -/* 0D2E0C 800D220C 03205825 */ move $t3, $t9 -/* 0D2E10 800D2210 016D1821 */ addu $v1, $t3, $t5 -/* 0D2E14 800D2214 8FAC0028 */ lw $t4, 0x28($sp) -/* 0D2E18 800D2218 240A0000 */ li $t2, 0 -/* 0D2E1C 800D221C 006D082B */ sltu $at, $v1, $t5 -/* 0D2E20 800D2220 002A1021 */ addu $v0, $at, $t2 -/* 0D2E24 800D2224 8FB00018 */ lw $s0, 0x18($sp) -/* 0D2E28 800D2228 27BD0038 */ addiu $sp, $sp, 0x38 -/* 0D2E2C 800D222C 03E00008 */ jr $ra -/* 0D2E30 800D2230 004C1021 */ addu $v0, $v0, $t4 - -/* 0D2E34 800D2234 00000000 */ nop -/* 0D2E38 800D2238 00000000 */ nop -/* 0D2E3C 800D223C 00000000 */ nop diff --git a/asm/unknown_0D3020.s b/asm/unknown_0D3020.s deleted file mode 100755 index e30893ff..00000000 --- a/asm/unknown_0D3020.s +++ /dev/null @@ -1,5854 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_800D2420 -/* 0D3020 800D2420 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0D3024 800D2424 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D3028 800D2428 0C034958 */ jal __osDisableInt -/* 0D302C 800D242C AFA40020 */ sw $a0, 0x20($sp) -/* 0D3030 800D2430 3C0F800E */ lui $t7, %hi(D_800E4874) # $t7, 0x800e -/* 0D3034 800D2434 8DEF4874 */ lw $t7, %lo(D_800E4874)($t7) -/* 0D3038 800D2438 8FAE0020 */ lw $t6, 0x20($sp) -/* 0D303C 800D243C AFA2001C */ sw $v0, 0x1c($sp) -/* 0D3040 800D2440 3C18800E */ lui $t8, %hi(D_800E4874) # $t8, 0x800e -/* 0D3044 800D2444 ADEE0004 */ sw $t6, 4($t7) -/* 0D3048 800D2448 8F184874 */ lw $t8, %lo(D_800E4874)($t8) -/* 0D304C 800D244C 97190000 */ lhu $t9, ($t8) -/* 0D3050 800D2450 37280010 */ ori $t0, $t9, 0x10 -/* 0D3054 800D2454 A7080000 */ sh $t0, ($t8) -/* 0D3058 800D2458 0C034960 */ jal __osRestoreInt -/* 0D305C 800D245C 8FA4001C */ lw $a0, 0x1c($sp) -/* 0D3060 800D2460 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D3064 800D2464 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0D3068 800D2468 03E00008 */ jr $ra -/* 0D306C 800D246C 00000000 */ nop - -glabel func_800D2470 -/* 0D3070 800D2470 3C02800E */ lui $v0, 0x800e -/* 0D3074 800D2474 03E00008 */ jr $ra -/* 0D3078 800D2478 8C42488C */ lw $v0, 0x488c($v0) - -/* 0D307C 800D247C 00000000 */ nop -glabel func_800D2480 -/* 0D3080 800D2480 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0D3084 800D2484 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D3088 800D2488 240E0001 */ li $t6, 1 -/* 0D308C 800D248C 3C01800E */ lui $at, %hi(D_800E4800) # $at, 0x800e -/* 0D3090 800D2490 3C048013 */ lui $a0, %hi(D_8012D1E8) # $a0, 0x8013 -/* 0D3094 800D2494 3C058013 */ lui $a1, %hi(D_8012D1E0) # $a1, 0x8013 -/* 0D3098 800D2498 AC2E4800 */ sw $t6, %lo(D_800E4800)($at) -/* 0D309C 800D249C 24A5D1E0 */ addiu $a1, %lo(D_8012D1E0) # addiu $a1, $a1, -0x2e20 -/* 0D30A0 800D24A0 2484D1E8 */ addiu $a0, %lo(D_8012D1E8) # addiu $a0, $a0, -0x2e18 -/* 0D30A4 800D24A4 0C032208 */ jal osCreateMesgQueue -/* 0D30A8 800D24A8 24060001 */ li $a2, 1 -/* 0D30AC 800D24AC 3C048013 */ lui $a0, %hi(D_8012D1E8) # $a0, 0x8013 -/* 0D30B0 800D24B0 2484D1E8 */ addiu $a0, %lo(D_8012D1E8) # addiu $a0, $a0, -0x2e18 -/* 0D30B4 800D24B4 00002825 */ move $a1, $zero -/* 0D30B8 800D24B8 0C03238C */ jal func_800C8E30 -/* 0D30BC 800D24BC 00003025 */ move $a2, $zero -/* 0D30C0 800D24C0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D30C4 800D24C4 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0D30C8 800D24C8 03E00008 */ jr $ra -/* 0D30CC 800D24CC 00000000 */ nop - -/* 0D30D0 800D24D0 3C0E800E */ lui $t6, %hi(D_800E4800) # $t6, 0x800e -/* 0D30D4 800D24D4 8DCE4800 */ lw $t6, %lo(D_800E4800)($t6) -/* 0D30D8 800D24D8 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0D30DC 800D24DC AFBF0014 */ sw $ra, 0x14($sp) -/* 0D30E0 800D24E0 15C00003 */ bnez $t6, .L800D24F0 -/* 0D30E4 800D24E4 00000000 */ nop -/* 0D30E8 800D24E8 0C034920 */ jal func_800D2480 -/* 0D30EC 800D24EC 00000000 */ nop -.L800D24F0: -/* 0D30F0 800D24F0 3C048013 */ lui $a0, %hi(D_8012D1E8) # $a0, 0x8013 -/* 0D30F4 800D24F4 2484D1E8 */ addiu $a0, %lo(D_8012D1E8) # addiu $a0, $a0, -0x2e18 -/* 0D30F8 800D24F8 27A5001C */ addiu $a1, $sp, 0x1c -/* 0D30FC 800D24FC 0C0322EC */ jal osRecvMesg -/* 0D3100 800D2500 24060001 */ li $a2, 1 -/* 0D3104 800D2504 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D3108 800D2508 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0D310C 800D250C 03E00008 */ jr $ra -/* 0D3110 800D2510 00000000 */ nop - -/* 0D3114 800D2514 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0D3118 800D2518 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D311C 800D251C 3C048013 */ lui $a0, %hi(D_8012D1E8) # $a0, 0x8013 -/* 0D3120 800D2520 2484D1E8 */ addiu $a0, %lo(D_8012D1E8) # addiu $a0, $a0, -0x2e18 -/* 0D3124 800D2524 00002825 */ move $a1, $zero -/* 0D3128 800D2528 0C03238C */ jal func_800C8E30 -/* 0D312C 800D252C 00003025 */ move $a2, $zero -/* 0D3130 800D2530 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D3134 800D2534 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0D3138 800D2538 03E00008 */ jr $ra -/* 0D313C 800D253C 00000000 */ nop - -glabel func_800D2540 -/* 0D3140 800D2540 14800003 */ bnez $a0, .L800D2550 -/* 0D3144 800D2544 00000000 */ nop -/* 0D3148 800D2548 3C04800E */ lui $a0, %hi(D_800E4890) # $a0, 0x800e -/* 0D314C 800D254C 8C844890 */ lw $a0, %lo(D_800E4890)($a0) -.L800D2550: -/* 0D3150 800D2550 03E00008 */ jr $ra -/* 0D3154 800D2554 8C820004 */ lw $v0, 4($a0) - -/* 0D3158 800D2558 00000000 */ nop -/* 0D315C 800D255C 00000000 */ nop -glabel __osDisableInt -/* 0D3160 800D2560 40086000 */ mfc0 $t0, $12 -/* 0D3164 800D2564 2401FFFE */ li $at, -2 -/* 0D3168 800D2568 01014824 */ and $t1, $t0, $at -/* 0D316C 800D256C 40896000 */ mtc0 $t1, $12 -/* 0D3170 800D2570 31020001 */ andi $v0, $t0, 1 -/* 0D3174 800D2574 00000000 */ nop -/* 0D3178 800D2578 03E00008 */ jr $ra -/* 0D317C 800D257C 00000000 */ nop - -glabel __osRestoreInt -/* 0D3180 800D2580 40086000 */ mfc0 $t0, $12 -/* 0D3184 800D2584 01044025 */ or $t0, $t0, $a0 -/* 0D3188 800D2588 40886000 */ mtc0 $t0, $12 -/* 0D318C 800D258C 00000000 */ nop -/* 0D3190 800D2590 00000000 */ nop -/* 0D3194 800D2594 03E00008 */ jr $ra -/* 0D3198 800D2598 00000000 */ nop - -/* 0D319C 800D259C 00000000 */ nop -glabel D_800D25A0 -/* 0D31A0 800D25A0 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0D31A4 800D25A4 AFBF001C */ sw $ra, 0x1c($sp) -/* 0D31A8 800D25A8 AFA40028 */ sw $a0, 0x28($sp) -/* 0D31AC 800D25AC AFA5002C */ sw $a1, 0x2c($sp) -/* 0D31B0 800D25B0 AFA60030 */ sw $a2, 0x30($sp) -/* 0D31B4 800D25B4 AFA70034 */ sw $a3, 0x34($sp) -/* 0D31B8 800D25B8 AFB10018 */ sw $s1, 0x18($sp) -/* 0D31BC 800D25BC AFB00014 */ sw $s0, 0x14($sp) -/* 0D31C0 800D25C0 3C0EA460 */ lui $t6, %hi(D_A4600010) # $t6, 0xa460 -/* 0D31C4 800D25C4 8DD00010 */ lw $s0, %lo(D_A4600010)($t6) -/* 0D31C8 800D25C8 320F0003 */ andi $t7, $s0, 3 -/* 0D31CC 800D25CC 11E00006 */ beqz $t7, .L800D25E8 -/* 0D31D0 800D25D0 00000000 */ nop -.L800D25D4: -/* 0D31D4 800D25D4 3C18A460 */ lui $t8, %hi(D_A4600010) # $t8, 0xa460 -/* 0D31D8 800D25D8 8F100010 */ lw $s0, %lo(D_A4600010)($t8) -/* 0D31DC 800D25DC 32190003 */ andi $t9, $s0, 3 -/* 0D31E0 800D25E0 1720FFFC */ bnez $t9, .L800D25D4 -/* 0D31E4 800D25E4 00000000 */ nop -.L800D25E8: -/* 0D31E8 800D25E8 0C03233C */ jal func_800C8CF0 -/* 0D31EC 800D25EC 8FA40030 */ lw $a0, 0x30($sp) -/* 0D31F0 800D25F0 3C08A460 */ lui $t0, 0xa460 -/* 0D31F4 800D25F4 AD020000 */ sw $v0, ($t0) -/* 0D31F8 800D25F8 3C098000 */ lui $t1, %hi(D_80000308) # $t1, 0x8000 -/* 0D31FC 800D25FC 8D290308 */ lw $t1, %lo(D_80000308)($t1) -/* 0D3200 800D2600 8FAA002C */ lw $t2, 0x2c($sp) -/* 0D3204 800D2604 3C011FFF */ lui $at, (0x1FFFFFFF >> 16) # lui $at, 0x1fff -/* 0D3208 800D2608 3421FFFF */ ori $at, (0x1FFFFFFF & 0xFFFF) # ori $at, $at, 0xffff -/* 0D320C 800D260C 012A5825 */ or $t3, $t1, $t2 -/* 0D3210 800D2610 01616024 */ and $t4, $t3, $at -/* 0D3214 800D2614 3C0DA460 */ lui $t5, %hi(D_A4600004) # $t5, 0xa460 -/* 0D3218 800D2618 ADAC0004 */ sw $t4, %lo(D_A4600004)($t5) -/* 0D321C 800D261C 8FB10028 */ lw $s1, 0x28($sp) -/* 0D3220 800D2620 12200005 */ beqz $s1, .L800D2638 -/* 0D3224 800D2624 24010001 */ li $at, 1 -/* 0D3228 800D2628 12210008 */ beq $s1, $at, .L800D264C -/* 0D322C 800D262C 00000000 */ nop -/* 0D3230 800D2630 1000000B */ b .L800D2660 -/* 0D3234 800D2634 00000000 */ nop -.L800D2638: -/* 0D3238 800D2638 8FAE0034 */ lw $t6, 0x34($sp) -/* 0D323C 800D263C 3C18A460 */ lui $t8, %hi(D_A460000C) # $t8, 0xa460 -/* 0D3240 800D2640 25CFFFFF */ addiu $t7, $t6, -1 -/* 0D3244 800D2644 10000008 */ b .L800D2668 -/* 0D3248 800D2648 AF0F000C */ sw $t7, %lo(D_A460000C)($t8) -.L800D264C: -/* 0D324C 800D264C 8FB90034 */ lw $t9, 0x34($sp) -/* 0D3250 800D2650 3C09A460 */ lui $t1, %hi(D_A4600008) # $t1, 0xa460 -/* 0D3254 800D2654 2728FFFF */ addiu $t0, $t9, -1 -/* 0D3258 800D2658 10000003 */ b .L800D2668 -/* 0D325C 800D265C AD280008 */ sw $t0, %lo(D_A4600008)($t1) -.L800D2660: -/* 0D3260 800D2660 10000002 */ b .L800D266C -/* 0D3264 800D2664 2402FFFF */ li $v0, -1 -.L800D2668: -/* 0D3268 800D2668 00001025 */ move $v0, $zero -.L800D266C: -/* 0D326C 800D266C 8FBF001C */ lw $ra, 0x1c($sp) -/* 0D3270 800D2670 8FB00014 */ lw $s0, 0x14($sp) -/* 0D3274 800D2674 8FB10018 */ lw $s1, 0x18($sp) -/* 0D3278 800D2678 03E00008 */ jr $ra -/* 0D327C 800D267C 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel D_800D2680 -/* 0D3280 800D2680 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0D3284 800D2684 AFBF001C */ sw $ra, 0x1c($sp) -/* 0D3288 800D2688 AFA40028 */ sw $a0, 0x28($sp) -/* 0D328C 800D268C AFA5002C */ sw $a1, 0x2c($sp) -/* 0D3290 800D2690 AFA60030 */ sw $a2, 0x30($sp) -/* 0D3294 800D2694 AFA70034 */ sw $a3, 0x34($sp) -/* 0D3298 800D2698 AFB10018 */ sw $s1, 0x18($sp) -/* 0D329C 800D269C AFB00014 */ sw $s0, 0x14($sp) -/* 0D32A0 800D26A0 3C0EA460 */ lui $t6, %hi(D_A4600010) # $t6, 0xa460 -/* 0D32A4 800D26A4 8DD00010 */ lw $s0, %lo(D_A4600010)($t6) -/* 0D32A8 800D26A8 320F0003 */ andi $t7, $s0, 3 -/* 0D32AC 800D26AC 11E00006 */ beqz $t7, .L800D26C8 -/* 0D32B0 800D26B0 00000000 */ nop -.L800D26B4: -/* 0D32B4 800D26B4 3C18A460 */ lui $t8, %hi(D_A4600010) # $t8, 0xa460 -/* 0D32B8 800D26B8 8F100010 */ lw $s0, %lo(D_A4600010)($t8) -/* 0D32BC 800D26BC 32190003 */ andi $t9, $s0, 3 -/* 0D32C0 800D26C0 1720FFFC */ bnez $t9, .L800D26B4 -/* 0D32C4 800D26C4 00000000 */ nop -.L800D26C8: -/* 0D32C8 800D26C8 0C03233C */ jal func_800C8CF0 -/* 0D32CC 800D26CC 8FA40034 */ lw $a0, 0x34($sp) -/* 0D32D0 800D26D0 3C08A460 */ lui $t0, 0xa460 -/* 0D32D4 800D26D4 AD020000 */ sw $v0, ($t0) -/* 0D32D8 800D26D8 8FA90028 */ lw $t1, 0x28($sp) -/* 0D32DC 800D26DC 8FAB0030 */ lw $t3, 0x30($sp) -/* 0D32E0 800D26E0 3C011FFF */ lui $at, (0x1FFFFFFF >> 16) # lui $at, 0x1fff -/* 0D32E4 800D26E4 8D2A000C */ lw $t2, 0xc($t1) -/* 0D32E8 800D26E8 3421FFFF */ ori $at, (0x1FFFFFFF & 0xFFFF) # ori $at, $at, 0xffff -/* 0D32EC 800D26EC 3C0EA460 */ lui $t6, %hi(D_A4600004) # $t6, 0xa460 -/* 0D32F0 800D26F0 014B6025 */ or $t4, $t2, $t3 -/* 0D32F4 800D26F4 01816824 */ and $t5, $t4, $at -/* 0D32F8 800D26F8 ADCD0004 */ sw $t5, %lo(D_A4600004)($t6) -/* 0D32FC 800D26FC 8FB1002C */ lw $s1, 0x2c($sp) -/* 0D3300 800D2700 12200005 */ beqz $s1, .L800D2718 -/* 0D3304 800D2704 24010001 */ li $at, 1 -/* 0D3308 800D2708 12210008 */ beq $s1, $at, .L800D272C -/* 0D330C 800D270C 00000000 */ nop -/* 0D3310 800D2710 1000000B */ b .L800D2740 -/* 0D3314 800D2714 00000000 */ nop -.L800D2718: -/* 0D3318 800D2718 8FAF0038 */ lw $t7, 0x38($sp) -/* 0D331C 800D271C 3C19A460 */ lui $t9, %hi(D_A460000C) # $t9, 0xa460 -/* 0D3320 800D2720 25F8FFFF */ addiu $t8, $t7, -1 -/* 0D3324 800D2724 10000008 */ b .L800D2748 -/* 0D3328 800D2728 AF38000C */ sw $t8, %lo(D_A460000C)($t9) -.L800D272C: -/* 0D332C 800D272C 8FA80038 */ lw $t0, 0x38($sp) -/* 0D3330 800D2730 3C0AA460 */ lui $t2, %hi(D_A4600008) # $t2, 0xa460 -/* 0D3334 800D2734 2509FFFF */ addiu $t1, $t0, -1 -/* 0D3338 800D2738 10000003 */ b .L800D2748 -/* 0D333C 800D273C AD490008 */ sw $t1, %lo(D_A4600008)($t2) -.L800D2740: -/* 0D3340 800D2740 10000002 */ b .L800D274C -/* 0D3344 800D2744 2402FFFF */ li $v0, -1 -.L800D2748: -/* 0D3348 800D2748 00001025 */ move $v0, $zero -.L800D274C: -/* 0D334C 800D274C 8FBF001C */ lw $ra, 0x1c($sp) -/* 0D3350 800D2750 8FB00014 */ lw $s0, 0x14($sp) -/* 0D3354 800D2754 8FB10018 */ lw $s1, 0x18($sp) -/* 0D3358 800D2758 03E00008 */ jr $ra -/* 0D335C 800D275C 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel D_800D2760 -/* 0D3360 800D2760 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 0D3364 800D2764 AFA40040 */ sw $a0, 0x40($sp) -/* 0D3368 800D2768 8FAE0040 */ lw $t6, 0x40($sp) -/* 0D336C 800D276C AFBF001C */ sw $ra, 0x1c($sp) -/* 0D3370 800D2770 AFA00028 */ sw $zero, 0x28($sp) -/* 0D3374 800D2774 AFA0003C */ sw $zero, 0x3c($sp) -/* 0D3378 800D2778 AFA00030 */ sw $zero, 0x30($sp) -/* 0D337C 800D277C AFAE002C */ sw $t6, 0x2c($sp) -.L800D2780: -/* 0D3380 800D2780 8FAF002C */ lw $t7, 0x2c($sp) -/* 0D3384 800D2784 27A5003C */ addiu $a1, $sp, 0x3c -/* 0D3388 800D2788 24060001 */ li $a2, 1 -/* 0D338C 800D278C 0C0322EC */ jal osRecvMesg -/* 0D3390 800D2790 8DE40008 */ lw $a0, 8($t7) -/* 0D3394 800D2794 8FB8003C */ lw $t8, 0x3c($sp) -/* 0D3398 800D2798 8F190014 */ lw $t9, 0x14($t8) -/* 0D339C 800D279C 13200065 */ beqz $t9, .L800D2934 -/* 0D33A0 800D27A0 00000000 */ nop -/* 0D33A4 800D27A4 93280004 */ lbu $t0, 4($t9) -/* 0D33A8 800D27A8 24010002 */ li $at, 2 -/* 0D33AC 800D27AC 15010061 */ bne $t0, $at, .L800D2934 -/* 0D33B0 800D27B0 00000000 */ nop -/* 0D33B4 800D27B4 8F290014 */ lw $t1, 0x14($t9) -/* 0D33B8 800D27B8 11200003 */ beqz $t1, .L800D27C8 -/* 0D33BC 800D27BC 24010001 */ li $at, 1 -/* 0D33C0 800D27C0 1521005C */ bne $t1, $at, .L800D2934 -/* 0D33C4 800D27C4 00000000 */ nop -.L800D27C8: -/* 0D33C8 800D27C8 8FAA003C */ lw $t2, 0x3c($sp) -/* 0D33CC 800D27CC 2408FFFF */ li $t0, -1 -/* 0D33D0 800D27D0 24010003 */ li $at, 3 -/* 0D33D4 800D27D4 8D4B0014 */ lw $t3, 0x14($t2) -/* 0D33D8 800D27D8 256C0014 */ addiu $t4, $t3, 0x14 -/* 0D33DC 800D27DC AFAC0020 */ sw $t4, 0x20($sp) -/* 0D33E0 800D27E0 958D0006 */ lhu $t5, 6($t4) -/* 0D33E4 800D27E4 000D70C0 */ sll $t6, $t5, 3 -/* 0D33E8 800D27E8 01CD7021 */ addu $t6, $t6, $t5 -/* 0D33EC 800D27EC 000E7080 */ sll $t6, $t6, 2 -/* 0D33F0 800D27F0 018E7821 */ addu $t7, $t4, $t6 -/* 0D33F4 800D27F4 25F80018 */ addiu $t8, $t7, 0x18 -/* 0D33F8 800D27F8 AFB80024 */ sw $t8, 0x24($sp) -/* 0D33FC 800D27FC AD880008 */ sw $t0, 8($t4) -/* 0D3400 800D2800 8FB90020 */ lw $t9, 0x20($sp) -/* 0D3404 800D2804 97290004 */ lhu $t1, 4($t9) -/* 0D3408 800D2808 11210006 */ beq $t1, $at, .L800D2824 -/* 0D340C 800D280C 00000000 */ nop -/* 0D3410 800D2810 8FAA0024 */ lw $t2, 0x24($sp) -/* 0D3414 800D2814 8D4B0004 */ lw $t3, 4($t2) -/* 0D3418 800D2818 8D4D000C */ lw $t5, 0xc($t2) -/* 0D341C 800D281C 016D7023 */ subu $t6, $t3, $t5 -/* 0D3420 800D2820 AD4E0004 */ sw $t6, 4($t2) -.L800D2824: -/* 0D3424 800D2824 8FAF0020 */ lw $t7, 0x20($sp) -/* 0D3428 800D2828 24010002 */ li $at, 2 -/* 0D342C 800D282C 95F80004 */ lhu $t8, 4($t7) -/* 0D3430 800D2830 17010009 */ bne $t8, $at, .L800D2858 -/* 0D3434 800D2834 00000000 */ nop -/* 0D3438 800D2838 8FA8003C */ lw $t0, 0x3c($sp) -/* 0D343C 800D283C 8D0C0014 */ lw $t4, 0x14($t0) -/* 0D3440 800D2840 8D990014 */ lw $t9, 0x14($t4) -/* 0D3444 800D2844 17200004 */ bnez $t9, .L800D2858 -/* 0D3448 800D2848 00000000 */ nop -/* 0D344C 800D284C 24090001 */ li $t1, 1 -/* 0D3450 800D2850 10000002 */ b .L800D285C -/* 0D3454 800D2854 AFA90028 */ sw $t1, 0x28($sp) -.L800D2858: -/* 0D3458 800D2858 AFA00028 */ sw $zero, 0x28($sp) -.L800D285C: -/* 0D345C 800D285C 8FAB002C */ lw $t3, 0x2c($sp) -/* 0D3460 800D2860 27A50034 */ addiu $a1, $sp, 0x34 -/* 0D3464 800D2864 24060001 */ li $a2, 1 -/* 0D3468 800D2868 0C0322EC */ jal osRecvMesg -/* 0D346C 800D286C 8D640010 */ lw $a0, 0x10($t3) -/* 0D3470 800D2870 3C040010 */ lui $a0, (0x00100401 >> 16) # lui $a0, 0x10 -/* 0D3474 800D2874 0C035940 */ jal func_800D6500 -/* 0D3478 800D2878 34840401 */ ori $a0, (0x00100401 & 0xFFFF) # ori $a0, $a0, 0x401 -/* 0D347C 800D287C 8FAE0020 */ lw $t6, 0x20($sp) -/* 0D3480 800D2880 8FAD003C */ lw $t5, 0x3c($sp) -/* 0D3484 800D2884 3C018000 */ lui $at, 0x8000 -/* 0D3488 800D2888 8DC60010 */ lw $a2, 0x10($t6) -/* 0D348C 800D288C 3C050500 */ lui $a1, (0x05000510 >> 16) # lui $a1, 0x500 -/* 0D3490 800D2890 34A50510 */ ori $a1, (0x05000510 & 0xFFFF) # ori $a1, $a1, 0x510 -/* 0D3494 800D2894 00C15025 */ or $t2, $a2, $at -/* 0D3498 800D2898 01403025 */ move $a2, $t2 -/* 0D349C 800D289C 0C035958 */ jal func_800D6560 -/* 0D34A0 800D28A0 8DA40014 */ lw $a0, 0x14($t5) -.L800D28A4: -/* 0D34A4 800D28A4 8FAF002C */ lw $t7, 0x2c($sp) -/* 0D34A8 800D28A8 27A50038 */ addiu $a1, $sp, 0x38 -/* 0D34AC 800D28AC 24060001 */ li $a2, 1 -/* 0D34B0 800D28B0 0C0322EC */ jal osRecvMesg -/* 0D34B4 800D28B4 8DE4000C */ lw $a0, 0xc($t7) -/* 0D34B8 800D28B8 8FB8003C */ lw $t8, 0x3c($sp) -/* 0D34BC 800D28BC 00003025 */ move $a2, $zero -/* 0D34C0 800D28C0 8F040004 */ lw $a0, 4($t8) -/* 0D34C4 800D28C4 0C03238C */ jal func_800C8E30 -/* 0D34C8 800D28C8 03002825 */ move $a1, $t8 -/* 0D34CC 800D28CC 8FA80028 */ lw $t0, 0x28($sp) -/* 0D34D0 800D28D0 24010001 */ li $at, 1 -/* 0D34D4 800D28D4 15010008 */ bne $t0, $at, .L800D28F8 -/* 0D34D8 800D28D8 00000000 */ nop -/* 0D34DC 800D28DC 8FAC003C */ lw $t4, 0x3c($sp) -/* 0D34E0 800D28E0 8D990014 */ lw $t9, 0x14($t4) -/* 0D34E4 800D28E4 8F29002C */ lw $t1, 0x2c($t9) -/* 0D34E8 800D28E8 15200003 */ bnez $t1, .L800D28F8 -/* 0D34EC 800D28EC 00000000 */ nop -/* 0D34F0 800D28F0 1000FFEC */ b .L800D28A4 -/* 0D34F4 800D28F4 AFA00028 */ sw $zero, 0x28($sp) -.L800D28F8: -/* 0D34F8 800D28F8 8FAB002C */ lw $t3, 0x2c($sp) -/* 0D34FC 800D28FC 00002825 */ move $a1, $zero -/* 0D3500 800D2900 00003025 */ move $a2, $zero -/* 0D3504 800D2904 0C03238C */ jal func_800C8E30 -/* 0D3508 800D2908 8D640010 */ lw $a0, 0x10($t3) -/* 0D350C 800D290C 8FAD003C */ lw $t5, 0x3c($sp) -/* 0D3510 800D2910 24010001 */ li $at, 1 -/* 0D3514 800D2914 8DAE0014 */ lw $t6, 0x14($t5) -/* 0D3518 800D2918 95CA001A */ lhu $t2, 0x1a($t6) -/* 0D351C 800D291C 1541FF98 */ bne $t2, $at, .L800D2780 -/* 0D3520 800D2920 00000000 */ nop -/* 0D3524 800D2924 0C03596C */ jal func_800D65B0 -/* 0D3528 800D2928 00000000 */ nop -/* 0D352C 800D292C 1000FF94 */ b .L800D2780 -/* 0D3530 800D2930 00000000 */ nop -.L800D2934: -/* 0D3534 800D2934 8FAF003C */ lw $t7, 0x3c($sp) -/* 0D3538 800D2938 95F80000 */ lhu $t8, ($t7) -/* 0D353C 800D293C 2708FFF6 */ addiu $t0, $t8, -0xa -/* 0D3540 800D2940 2D010007 */ sltiu $at, $t0, 7 -/* 0D3544 800D2944 10200052 */ beqz $at, .L800D2A90 -/* 0D3548 800D2948 00000000 */ nop -/* 0D354C 800D294C 00084080 */ sll $t0, $t0, 2 -/* 0D3550 800D2950 3C01800F */ lui $at, 0x800f -/* 0D3554 800D2954 00280821 */ addu $at, $at, $t0 -/* 0D3558 800D2958 8C289650 */ lw $t0, -0x69b0($at) -/* 0D355C 800D295C 01000008 */ jr $t0 -/* 0D3560 800D2960 00000000 */ nop -/* 0D3564 800D2964 8FAC002C */ lw $t4, 0x2c($sp) -/* 0D3568 800D2968 27A50034 */ addiu $a1, $sp, 0x34 -/* 0D356C 800D296C 24060001 */ li $a2, 1 -/* 0D3570 800D2970 0C0322EC */ jal osRecvMesg -/* 0D3574 800D2974 8D840010 */ lw $a0, 0x10($t4) -/* 0D3578 800D2978 8FB9003C */ lw $t9, 0x3c($sp) -/* 0D357C 800D297C 8FA9002C */ lw $t1, 0x2c($sp) -/* 0D3580 800D2980 00002025 */ move $a0, $zero -/* 0D3584 800D2984 8F25000C */ lw $a1, 0xc($t9) -/* 0D3588 800D2988 8F260008 */ lw $a2, 8($t9) -/* 0D358C 800D298C 8F270010 */ lw $a3, 0x10($t9) -/* 0D3590 800D2990 8D390014 */ lw $t9, 0x14($t1) -/* 0D3594 800D2994 0320F809 */ jalr $t9 -/* 0D3598 800D2998 00000000 */ nop -/* 0D359C 800D299C 1000003E */ b .L800D2A98 -/* 0D35A0 800D29A0 AFA20030 */ sw $v0, 0x30($sp) -/* 0D35A4 800D29A4 8FAB002C */ lw $t3, 0x2c($sp) -/* 0D35A8 800D29A8 27A50034 */ addiu $a1, $sp, 0x34 -/* 0D35AC 800D29AC 24060001 */ li $a2, 1 -/* 0D35B0 800D29B0 0C0322EC */ jal osRecvMesg -/* 0D35B4 800D29B4 8D640010 */ lw $a0, 0x10($t3) -/* 0D35B8 800D29B8 8FAE002C */ lw $t6, 0x2c($sp) -/* 0D35BC 800D29BC 8FAD003C */ lw $t5, 0x3c($sp) -/* 0D35C0 800D29C0 24040001 */ li $a0, 1 -/* 0D35C4 800D29C4 8DD90014 */ lw $t9, 0x14($t6) -/* 0D35C8 800D29C8 8DA5000C */ lw $a1, 0xc($t5) -/* 0D35CC 800D29CC 8DA60008 */ lw $a2, 8($t5) -/* 0D35D0 800D29D0 0320F809 */ jalr $t9 -/* 0D35D4 800D29D4 8DA70010 */ lw $a3, 0x10($t5) -/* 0D35D8 800D29D8 1000002F */ b .L800D2A98 -/* 0D35DC 800D29DC AFA20030 */ sw $v0, 0x30($sp) -/* 0D35E0 800D29E0 8FAA002C */ lw $t2, 0x2c($sp) -/* 0D35E4 800D29E4 27A50034 */ addiu $a1, $sp, 0x34 -/* 0D35E8 800D29E8 24060001 */ li $a2, 1 -/* 0D35EC 800D29EC 0C0322EC */ jal osRecvMesg -/* 0D35F0 800D29F0 8D440010 */ lw $a0, 0x10($t2) -/* 0D35F4 800D29F4 8FAF003C */ lw $t7, 0x3c($sp) -/* 0D35F8 800D29F8 8FA8002C */ lw $t0, 0x2c($sp) -/* 0D35FC 800D29FC 00002825 */ move $a1, $zero -/* 0D3600 800D2A00 8DF80010 */ lw $t8, 0x10($t7) -/* 0D3604 800D2A04 8DE40014 */ lw $a0, 0x14($t7) -/* 0D3608 800D2A08 8DE6000C */ lw $a2, 0xc($t7) -/* 0D360C 800D2A0C 8DE70008 */ lw $a3, 8($t7) -/* 0D3610 800D2A10 AFB80010 */ sw $t8, 0x10($sp) -/* 0D3614 800D2A14 8D190018 */ lw $t9, 0x18($t0) -/* 0D3618 800D2A18 0320F809 */ jalr $t9 -/* 0D361C 800D2A1C 00000000 */ nop -/* 0D3620 800D2A20 1000001D */ b .L800D2A98 -/* 0D3624 800D2A24 AFA20030 */ sw $v0, 0x30($sp) -/* 0D3628 800D2A28 8FAC002C */ lw $t4, 0x2c($sp) -/* 0D362C 800D2A2C 27A50034 */ addiu $a1, $sp, 0x34 -/* 0D3630 800D2A30 24060001 */ li $a2, 1 -/* 0D3634 800D2A34 0C0322EC */ jal osRecvMesg -/* 0D3638 800D2A38 8D840010 */ lw $a0, 0x10($t4) -/* 0D363C 800D2A3C 8FA9003C */ lw $t1, 0x3c($sp) -/* 0D3640 800D2A40 8FAD002C */ lw $t5, 0x2c($sp) -/* 0D3644 800D2A44 24050001 */ li $a1, 1 -/* 0D3648 800D2A48 8D2B0010 */ lw $t3, 0x10($t1) -/* 0D364C 800D2A4C 8D240014 */ lw $a0, 0x14($t1) -/* 0D3650 800D2A50 8D26000C */ lw $a2, 0xc($t1) -/* 0D3654 800D2A54 8D270008 */ lw $a3, 8($t1) -/* 0D3658 800D2A58 AFAB0010 */ sw $t3, 0x10($sp) -/* 0D365C 800D2A5C 8DB90018 */ lw $t9, 0x18($t5) -/* 0D3660 800D2A60 0320F809 */ jalr $t9 -/* 0D3664 800D2A64 00000000 */ nop -/* 0D3668 800D2A68 1000000B */ b .L800D2A98 -/* 0D366C 800D2A6C AFA20030 */ sw $v0, 0x30($sp) -/* 0D3670 800D2A70 8FAE003C */ lw $t6, 0x3c($sp) -/* 0D3674 800D2A74 00003025 */ move $a2, $zero -/* 0D3678 800D2A78 8DC40004 */ lw $a0, 4($t6) -/* 0D367C 800D2A7C 0C03238C */ jal func_800C8E30 -/* 0D3680 800D2A80 01C02825 */ move $a1, $t6 -/* 0D3684 800D2A84 240AFFFF */ li $t2, -1 -/* 0D3688 800D2A88 10000003 */ b .L800D2A98 -/* 0D368C 800D2A8C AFAA0030 */ sw $t2, 0x30($sp) -.L800D2A90: -/* 0D3690 800D2A90 240FFFFF */ li $t7, -1 -/* 0D3694 800D2A94 AFAF0030 */ sw $t7, 0x30($sp) -.L800D2A98: -/* 0D3698 800D2A98 8FB80030 */ lw $t8, 0x30($sp) -/* 0D369C 800D2A9C 1700FF38 */ bnez $t8, .L800D2780 -/* 0D36A0 800D2AA0 00000000 */ nop -/* 0D36A4 800D2AA4 8FA8002C */ lw $t0, 0x2c($sp) -/* 0D36A8 800D2AA8 27A50038 */ addiu $a1, $sp, 0x38 -/* 0D36AC 800D2AAC 24060001 */ li $a2, 1 -/* 0D36B0 800D2AB0 0C0322EC */ jal osRecvMesg -/* 0D36B4 800D2AB4 8D04000C */ lw $a0, 0xc($t0) -/* 0D36B8 800D2AB8 8FAC003C */ lw $t4, 0x3c($sp) -/* 0D36BC 800D2ABC 00003025 */ move $a2, $zero -/* 0D36C0 800D2AC0 8D840004 */ lw $a0, 4($t4) -/* 0D36C4 800D2AC4 0C03238C */ jal func_800C8E30 -/* 0D36C8 800D2AC8 01802825 */ move $a1, $t4 -/* 0D36CC 800D2ACC 8FA9002C */ lw $t1, 0x2c($sp) -/* 0D36D0 800D2AD0 00002825 */ move $a1, $zero -/* 0D36D4 800D2AD4 00003025 */ move $a2, $zero -/* 0D36D8 800D2AD8 0C03238C */ jal func_800C8E30 -/* 0D36DC 800D2ADC 8D240010 */ lw $a0, 0x10($t1) -/* 0D36E0 800D2AE0 1000FF27 */ b .L800D2780 -/* 0D36E4 800D2AE4 00000000 */ nop -/* 0D36E8 800D2AE8 00000000 */ nop -/* 0D36EC 800D2AEC 00000000 */ nop -/* 0D36F0 800D2AF0 00000000 */ nop -/* 0D36F4 800D2AF4 00000000 */ nop -/* 0D36F8 800D2AF8 00000000 */ nop -/* 0D36FC 800D2AFC 00000000 */ nop -/* 0D3700 800D2B00 8FBF001C */ lw $ra, 0x1c($sp) -/* 0D3704 800D2B04 27BD0040 */ addiu $sp, $sp, 0x40 -/* 0D3708 800D2B08 03E00008 */ jr $ra -/* 0D370C 800D2B0C 00000000 */ nop - -glabel func_800D2B10 -/* 0D3710 800D2B10 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0D3714 800D2B14 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D3718 800D2B18 3C04800E */ lui $a0, %hi(D_800E4810) # $a0, 0x800e -/* 0D371C 800D2B1C 24844810 */ addiu $a0, %lo(D_800E4810) # addiu $a0, $a0, 0x4810 -/* 0D3720 800D2B20 0C034138 */ jal func_800D04E0 -/* 0D3724 800D2B24 24050060 */ li $a1, 96 -/* 0D3728 800D2B28 3C0E800E */ lui $t6, %hi(D_800E4810) # $t6, 0x800e -/* 0D372C 800D2B2C 25CE4810 */ addiu $t6, %lo(D_800E4810) # addiu $t6, $t6, 0x4810 -/* 0D3730 800D2B30 3C01800E */ lui $at, %hi(D_800E4870) # $at, 0x800e -/* 0D3734 800D2B34 AC2E4870 */ sw $t6, %lo(D_800E4870)($at) -/* 0D3738 800D2B38 3C01800E */ lui $at, %hi(D_800E4874) # $at, 0x800e -/* 0D373C 800D2B3C 25CF0030 */ addiu $t7, $t6, 0x30 -/* 0D3740 800D2B40 AC2F4874 */ sw $t7, %lo(D_800E4874)($at) -/* 0D3744 800D2B44 24180001 */ li $t8, 1 -/* 0D3748 800D2B48 A5D80032 */ sh $t8, 0x32($t6) -/* 0D374C 800D2B4C 3C08800E */ lui $t0, %hi(D_800E4870) # $t0, 0x800e -/* 0D3750 800D2B50 8D084870 */ lw $t0, %lo(D_800E4870)($t0) -/* 0D3754 800D2B54 24190001 */ li $t9, 1 -/* 0D3758 800D2B58 3C098000 */ lui $t1, %hi(D_80000300) # $t1, 0x8000 -/* 0D375C 800D2B5C A5190002 */ sh $t9, 2($t0) -/* 0D3760 800D2B60 8D290300 */ lw $t1, %lo(D_80000300)($t1) -/* 0D3764 800D2B64 1520000B */ bnez $t1, .L800D2B94 -/* 0D3768 800D2B68 00000000 */ nop -/* 0D376C 800D2B6C 3C0B800E */ lui $t3, %hi(D_800E4874) # $t3, 0x800e -/* 0D3770 800D2B70 8D6B4874 */ lw $t3, %lo(D_800E4874)($t3) -/* 0D3774 800D2B74 3C0A800E */ lui $t2, %hi(D_800E4760) # $t2, 0x800e -/* 0D3778 800D2B78 254A4760 */ addiu $t2, %lo(D_800E4760) # addiu $t2, $t2, 0x4760 -/* 0D377C 800D2B7C 3C0C02F5 */ lui $t4, (0x02F5B2D2 >> 16) # lui $t4, 0x2f5 -/* 0D3780 800D2B80 358CB2D2 */ ori $t4, (0x02F5B2D2 & 0xFFFF) # ori $t4, $t4, 0xb2d2 -/* 0D3784 800D2B84 3C01800E */ lui $at, %hi(D_800E4878) # $at, 0x800e -/* 0D3788 800D2B88 AD6A0008 */ sw $t2, 8($t3) -/* 0D378C 800D2B8C 10000019 */ b .L800D2BF4 -/* 0D3790 800D2B90 AC2C4878 */ sw $t4, %lo(D_800E4878)($at) -.L800D2B94: -/* 0D3794 800D2B94 3C0D8000 */ lui $t5, %hi(D_80000300) # $t5, 0x8000 -/* 0D3798 800D2B98 8DAD0300 */ lw $t5, %lo(D_80000300)($t5) -/* 0D379C 800D2B9C 24010002 */ li $at, 2 -/* 0D37A0 800D2BA0 15A1000B */ bne $t5, $at, .L800D2BD0 -/* 0D37A4 800D2BA4 00000000 */ nop -/* 0D37A8 800D2BA8 3C18800E */ lui $t8, %hi(D_800E4874) # $t8, 0x800e -/* 0D37AC 800D2BAC 8F184874 */ lw $t8, %lo(D_800E4874)($t8) -/* 0D37B0 800D2BB0 3C0F800E */ lui $t7, %hi(D_800E47B0) # $t7, 0x800e -/* 0D37B4 800D2BB4 25EF47B0 */ addiu $t7, %lo(D_800E47B0) # addiu $t7, $t7, 0x47b0 -/* 0D37B8 800D2BB8 3C0E02E6 */ lui $t6, (0x02E6025C >> 16) # lui $t6, 0x2e6 -/* 0D37BC 800D2BBC 35CE025C */ ori $t6, (0x02E6025C & 0xFFFF) # ori $t6, $t6, 0x25c -/* 0D37C0 800D2BC0 3C01800E */ lui $at, %hi(D_800E4878) # $at, 0x800e -/* 0D37C4 800D2BC4 AF0F0008 */ sw $t7, 8($t8) -/* 0D37C8 800D2BC8 1000000A */ b .L800D2BF4 -/* 0D37CC 800D2BCC AC2E4878 */ sw $t6, %lo(D_800E4878)($at) -.L800D2BD0: -/* 0D37D0 800D2BD0 3C08800E */ lui $t0, %hi(D_800E4874) # $t0, 0x800e -/* 0D37D4 800D2BD4 8D084874 */ lw $t0, %lo(D_800E4874)($t0) -/* 0D37D8 800D2BD8 3C19800E */ lui $t9, %hi(D_800E4710) # $t9, 0x800e -/* 0D37DC 800D2BDC 27394710 */ addiu $t9, %lo(D_800E4710) # addiu $t9, $t9, 0x4710 -/* 0D37E0 800D2BE0 3C0902E6 */ lui $t1, (0x02E6D354 >> 16) # lui $t1, 0x2e6 -/* 0D37E4 800D2BE4 3529D354 */ ori $t1, (0x02E6D354 & 0xFFFF) # ori $t1, $t1, 0xd354 -/* 0D37E8 800D2BE8 3C01800E */ lui $at, %hi(D_800E4878) # $at, 0x800e -/* 0D37EC 800D2BEC AD190008 */ sw $t9, 8($t0) -/* 0D37F0 800D2BF0 AC294878 */ sw $t1, %lo(D_800E4878)($at) -.L800D2BF4: -/* 0D37F4 800D2BF4 3C0B800E */ lui $t3, %hi(D_800E4874) # $t3, 0x800e -/* 0D37F8 800D2BF8 8D6B4874 */ lw $t3, %lo(D_800E4874)($t3) -/* 0D37FC 800D2BFC 240A0020 */ li $t2, 32 -/* 0D3800 800D2C00 3C0C800E */ lui $t4, %hi(D_800E4874) # $t4, 0x800e -/* 0D3804 800D2C04 A56A0000 */ sh $t2, ($t3) -/* 0D3808 800D2C08 8D8C4874 */ lw $t4, %lo(D_800E4874)($t4) -/* 0D380C 800D2C0C 3C18A440 */ lui $t8, %hi(D_A4400010) # $t8, 0xa440 -/* 0D3810 800D2C10 8D8D0008 */ lw $t5, 8($t4) -/* 0D3814 800D2C14 8DAF0004 */ lw $t7, 4($t5) -/* 0D3818 800D2C18 AD8F000C */ sw $t7, 0xc($t4) -/* 0D381C 800D2C1C 8F0E0010 */ lw $t6, %lo(D_A4400010)($t8) -/* 0D3820 800D2C20 2DC1000B */ sltiu $at, $t6, 0xb -/* 0D3824 800D2C24 14200006 */ bnez $at, .L800D2C40 -/* 0D3828 800D2C28 00000000 */ nop -.L800D2C2C: -/* 0D382C 800D2C2C 3C19A440 */ lui $t9, %hi(D_A4400010) # $t9, 0xa440 -/* 0D3830 800D2C30 8F280010 */ lw $t0, %lo(D_A4400010)($t9) -/* 0D3834 800D2C34 2D01000B */ sltiu $at, $t0, 0xb -/* 0D3838 800D2C38 1020FFFC */ beqz $at, .L800D2C2C -/* 0D383C 800D2C3C 00000000 */ nop -.L800D2C40: -/* 0D3840 800D2C40 3C09A440 */ lui $t1, 0xa440 -/* 0D3844 800D2C44 0C035824 */ jal func_800D6090 -/* 0D3848 800D2C48 AD200000 */ sw $zero, ($t1) -/* 0D384C 800D2C4C 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D3850 800D2C50 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0D3854 800D2C54 03E00008 */ jr $ra -/* 0D3858 800D2C58 00000000 */ nop - -/* 0D385C 800D2C5C 00000000 */ nop -glabel func_800D2C60 -/* 0D3860 800D2C60 03E00008 */ jr $ra -/* 0D3864 800D2C64 AC800000 */ sw $zero, ($a0) - -/* 0D3868 800D2C68 00000000 */ nop -/* 0D386C 800D2C6C 00000000 */ nop -glabel func_800D2C70 -/* 0D3870 800D2C70 00803025 */ move $a2, $a0 -/* 0D3874 800D2C74 8CC70000 */ lw $a3, ($a2) -/* 0D3878 800D2C78 27BDFFF8 */ addiu $sp, $sp, -8 -/* 0D387C 800D2C7C 10E0000A */ beqz $a3, .L800D2CA8 -/* 0D3880 800D2C80 00000000 */ nop -.L800D2C84: -/* 0D3884 800D2C84 14E50004 */ bne $a3, $a1, .L800D2C98 -/* 0D3888 800D2C88 00000000 */ nop -/* 0D388C 800D2C8C 8CAE0000 */ lw $t6, ($a1) -/* 0D3890 800D2C90 10000005 */ b .L800D2CA8 -/* 0D3894 800D2C94 ACCE0000 */ sw $t6, ($a2) -.L800D2C98: -/* 0D3898 800D2C98 00E03025 */ move $a2, $a3 -/* 0D389C 800D2C9C 8CC70000 */ lw $a3, ($a2) -/* 0D38A0 800D2CA0 14E0FFF8 */ bnez $a3, .L800D2C84 -/* 0D38A4 800D2CA4 00000000 */ nop -.L800D2CA8: -/* 0D38A8 800D2CA8 03E00008 */ jr $ra -/* 0D38AC 800D2CAC 27BD0008 */ addiu $sp, $sp, 8 - -glabel D_800D2CB0 -/* 0D38B0 800D2CB0 3C1A800D */ lui $k0, %hi(D_800D2CC0) # $k0, 0x800d -/* 0D38B4 800D2CB4 275A2CC0 */ addiu $k0, %lo(D_800D2CC0) # addiu $k0, $k0, 0x2cc0 -/* 0D38B8 800D2CB8 03400008 */ jr $k0 -/* 0D38BC 800D2CBC 00000000 */ nop -glabel D_800D2CC0 -/* 0D38C0 800D2CC0 3C1A8013 */ lui $k0, %hi(D_8012D240) # $k0, 0x8013 -/* 0D38C4 800D2CC4 275AD240 */ addiu $k0, %lo(D_8012D240) # addiu $k0, $k0, -0x2dc0 -/* 0D38C8 800D2CC8 FF410020 */ sd $at, 0x20($k0) -/* 0D38CC 800D2CCC 401B6000 */ mfc0 $k1, $12 -/* 0D38D0 800D2CD0 AF5B0118 */ sw $k1, 0x118($k0) -/* 0D38D4 800D2CD4 2401FFFC */ li $at, -4 -/* 0D38D8 800D2CD8 0361D824 */ and $k1, $k1, $at -/* 0D38DC 800D2CDC 409B6000 */ mtc0 $k1, $12 -/* 0D38E0 800D2CE0 FF480058 */ sd $t0, 0x58($k0) -/* 0D38E4 800D2CE4 FF490060 */ sd $t1, 0x60($k0) -/* 0D38E8 800D2CE8 FF4A0068 */ sd $t2, 0x68($k0) -/* 0D38EC 800D2CEC AF400018 */ sw $zero, 0x18($k0) -/* 0D38F0 800D2CF0 40086800 */ mfc0 $t0, $13 -/* 0D38F4 800D2CF4 03404025 */ move $t0, $k0 -/* 0D38F8 800D2CF8 3C1A800E */ lui $k0, %hi(D_800E4890) # $k0, 0x800e -/* 0D38FC 800D2CFC 8F5A4890 */ lw $k0, %lo(D_800E4890)($k0) -/* 0D3900 800D2D00 DD090020 */ ld $t1, 0x20($t0) -/* 0D3904 800D2D04 FF490020 */ sd $t1, 0x20($k0) -/* 0D3908 800D2D08 DD090118 */ ld $t1, 0x118($t0) -/* 0D390C 800D2D0C FF490118 */ sd $t1, 0x118($k0) -/* 0D3910 800D2D10 DD090058 */ ld $t1, 0x58($t0) -/* 0D3914 800D2D14 FF490058 */ sd $t1, 0x58($k0) -/* 0D3918 800D2D18 DD090060 */ ld $t1, 0x60($t0) -/* 0D391C 800D2D1C FF490060 */ sd $t1, 0x60($k0) -/* 0D3920 800D2D20 DD090068 */ ld $t1, 0x68($t0) -/* 0D3924 800D2D24 FF490068 */ sd $t1, 0x68($k0) -/* 0D3928 800D2D28 8F5B0118 */ lw $k1, 0x118($k0) -/* 0D392C 800D2D2C 00004012 */ mflo $t0 -/* 0D3930 800D2D30 FF480108 */ sd $t0, 0x108($k0) -/* 0D3934 800D2D34 00004010 */ mfhi $t0 -/* 0D3938 800D2D38 3369FF00 */ andi $t1, $k1, 0xff00 -/* 0D393C 800D2D3C FF420028 */ sd $v0, 0x28($k0) -/* 0D3940 800D2D40 FF430030 */ sd $v1, 0x30($k0) -/* 0D3944 800D2D44 FF440038 */ sd $a0, 0x38($k0) -/* 0D3948 800D2D48 FF450040 */ sd $a1, 0x40($k0) -/* 0D394C 800D2D4C FF460048 */ sd $a2, 0x48($k0) -/* 0D3950 800D2D50 FF470050 */ sd $a3, 0x50($k0) -/* 0D3954 800D2D54 FF4B0070 */ sd $t3, 0x70($k0) -/* 0D3958 800D2D58 FF4C0078 */ sd $t4, 0x78($k0) -/* 0D395C 800D2D5C FF4D0080 */ sd $t5, 0x80($k0) -/* 0D3960 800D2D60 FF4E0088 */ sd $t6, 0x88($k0) -/* 0D3964 800D2D64 FF4F0090 */ sd $t7, 0x90($k0) -/* 0D3968 800D2D68 FF500098 */ sd $s0, 0x98($k0) -/* 0D396C 800D2D6C FF5100A0 */ sd $s1, 0xa0($k0) -/* 0D3970 800D2D70 FF5200A8 */ sd $s2, 0xa8($k0) -/* 0D3974 800D2D74 FF5300B0 */ sd $s3, 0xb0($k0) -/* 0D3978 800D2D78 FF5400B8 */ sd $s4, 0xb8($k0) -/* 0D397C 800D2D7C FF5500C0 */ sd $s5, 0xc0($k0) -/* 0D3980 800D2D80 FF5600C8 */ sd $s6, 0xc8($k0) -/* 0D3984 800D2D84 FF5700D0 */ sd $s7, 0xd0($k0) -/* 0D3988 800D2D88 FF5800D8 */ sd $t8, 0xd8($k0) -/* 0D398C 800D2D8C FF5900E0 */ sd $t9, 0xe0($k0) -/* 0D3990 800D2D90 FF5C00E8 */ sd $gp, 0xe8($k0) -/* 0D3994 800D2D94 FF5D00F0 */ sd $sp, 0xf0($k0) -/* 0D3998 800D2D98 FF5E00F8 */ sd $fp, 0xf8($k0) -/* 0D399C 800D2D9C FF5F0100 */ sd $ra, 0x100($k0) -/* 0D39A0 800D2DA0 1120000D */ beqz $t1, .L800D2DD8 -/* 0D39A4 800D2DA4 FF480110 */ sd $t0, 0x110($k0) -/* 0D39A8 800D2DA8 3C08800E */ lui $t0, %hi(D_800E38AC) # $t0, 0x800e -/* 0D39AC 800D2DAC 250838AC */ addiu $t0, %lo(D_800E38AC) # addiu $t0, $t0, 0x38ac -/* 0D39B0 800D2DB0 8D080000 */ lw $t0, ($t0) -/* 0D39B4 800D2DB4 2401FFFF */ li $at, -1 -/* 0D39B8 800D2DB8 01014026 */ xor $t0, $t0, $at -/* 0D39BC 800D2DBC 3C01FFFF */ lui $at, (0xFFFF00FF >> 16) # lui $at, 0xffff -/* 0D39C0 800D2DC0 3108FF00 */ andi $t0, $t0, 0xff00 -/* 0D39C4 800D2DC4 342100FF */ ori $at, (0xFFFF00FF & 0xFFFF) # ori $at, $at, 0xff -/* 0D39C8 800D2DC8 01284825 */ or $t1, $t1, $t0 -/* 0D39CC 800D2DCC 0361D824 */ and $k1, $k1, $at -/* 0D39D0 800D2DD0 0369D825 */ or $k1, $k1, $t1 -/* 0D39D4 800D2DD4 AF5B0118 */ sw $k1, 0x118($k0) -.L800D2DD8: -/* 0D39D8 800D2DD8 3C09A430 */ lui $t1, %hi(D_A430000C) # $t1, 0xa430 -/* 0D39DC 800D2DDC 8D29000C */ lw $t1, %lo(D_A430000C)($t1) -/* 0D39E0 800D2DE0 1120000B */ beqz $t1, .L800D2E10 -/* 0D39E4 800D2DE4 00000000 */ nop -/* 0D39E8 800D2DE8 3C08800E */ lui $t0, %hi(D_800E38AC) # $t0, 0x800e -/* 0D39EC 800D2DEC 250838AC */ addiu $t0, %lo(D_800E38AC) # addiu $t0, $t0, 0x38ac -/* 0D39F0 800D2DF0 8D080000 */ lw $t0, ($t0) -/* 0D39F4 800D2DF4 8F4C0128 */ lw $t4, 0x128($k0) -/* 0D39F8 800D2DF8 2401FFFF */ li $at, -1 -/* 0D39FC 800D2DFC 00084402 */ srl $t0, $t0, 0x10 -/* 0D3A00 800D2E00 01014026 */ xor $t0, $t0, $at -/* 0D3A04 800D2E04 3108003F */ andi $t0, $t0, 0x3f -/* 0D3A08 800D2E08 010C4024 */ and $t0, $t0, $t4 -/* 0D3A0C 800D2E0C 01284825 */ or $t1, $t1, $t0 -.L800D2E10: -/* 0D3A10 800D2E10 AF490128 */ sw $t1, 0x128($k0) -/* 0D3A14 800D2E14 40087000 */ mfc0 $t0, $14 -/* 0D3A18 800D2E18 AF48011C */ sw $t0, 0x11c($k0) -/* 0D3A1C 800D2E1C 8F480018 */ lw $t0, 0x18($k0) -/* 0D3A20 800D2E20 11000014 */ beqz $t0, .L800D2E74 -/* 0D3A24 800D2E24 00000000 */ nop -/* 0D3A28 800D2E28 4448F800 */ cfc1 $t0, $31 -/* 0D3A2C 800D2E2C 00000000 */ nop -/* 0D3A30 800D2E30 AF48012C */ sw $t0, 0x12c($k0) -/* 0D3A34 800D2E34 F7400130 */ sdc1 $f0, 0x130($k0) -/* 0D3A38 800D2E38 F7420138 */ sdc1 $f2, 0x138($k0) -/* 0D3A3C 800D2E3C F7440140 */ sdc1 $f4, 0x140($k0) -/* 0D3A40 800D2E40 F7460148 */ sdc1 $f6, 0x148($k0) -/* 0D3A44 800D2E44 F7480150 */ sdc1 $f8, 0x150($k0) -/* 0D3A48 800D2E48 F74A0158 */ sdc1 $f10, 0x158($k0) -/* 0D3A4C 800D2E4C F74C0160 */ sdc1 $f12, 0x160($k0) -/* 0D3A50 800D2E50 F74E0168 */ sdc1 $f14, 0x168($k0) -/* 0D3A54 800D2E54 F7500170 */ sdc1 $f16, 0x170($k0) -/* 0D3A58 800D2E58 F7520178 */ sdc1 $f18, 0x178($k0) -/* 0D3A5C 800D2E5C F7540180 */ sdc1 $f20, 0x180($k0) -/* 0D3A60 800D2E60 F7560188 */ sdc1 $f22, 0x188($k0) -/* 0D3A64 800D2E64 F7580190 */ sdc1 $f24, 0x190($k0) -/* 0D3A68 800D2E68 F75A0198 */ sdc1 $f26, 0x198($k0) -/* 0D3A6C 800D2E6C F75C01A0 */ sdc1 $f28, 0x1a0($k0) -/* 0D3A70 800D2E70 F75E01A8 */ sdc1 $f30, 0x1a8($k0) -.L800D2E74: -/* 0D3A74 800D2E74 40086800 */ mfc0 $t0, $13 -/* 0D3A78 800D2E78 AF480120 */ sw $t0, 0x120($k0) -/* 0D3A7C 800D2E7C 24090002 */ li $t1, 2 -/* 0D3A80 800D2E80 A7490010 */ sh $t1, 0x10($k0) -/* 0D3A84 800D2E84 3109007C */ andi $t1, $t0, 0x7c -/* 0D3A88 800D2E88 240A0024 */ li $t2, 36 -/* 0D3A8C 800D2E8C 112A00B0 */ beq $t1, $t2, .L800D3150 -/* 0D3A90 800D2E90 00000000 */ nop -/* 0D3A94 800D2E94 240A002C */ li $t2, 44 -/* 0D3A98 800D2E98 112A00FF */ beq $t1, $t2, .L800D3298 -/* 0D3A9C 800D2E9C 00000000 */ nop -/* 0D3AA0 800D2EA0 240A0000 */ li $t2, 0 -/* 0D3AA4 800D2EA4 152A00C3 */ bne $t1, $t2, .L800D31B4 -/* 0D3AA8 800D2EA8 00000000 */ nop -/* 0D3AAC 800D2EAC 03688024 */ and $s0, $k1, $t0 -.L800D2EB0: -/* 0D3AB0 800D2EB0 3209FF00 */ andi $t1, $s0, 0xff00 -/* 0D3AB4 800D2EB4 00095302 */ srl $t2, $t1, 0xc -/* 0D3AB8 800D2EB8 15400003 */ bnez $t2, .L800D2EC8 -/* 0D3ABC 800D2EBC 00000000 */ nop -/* 0D3AC0 800D2EC0 00095202 */ srl $t2, $t1, 8 -/* 0D3AC4 800D2EC4 214A0010 */ addi $t2, $t2, 0x10 -.L800D2EC8: -/* 0D3AC8 800D2EC8 3C01800F */ lui $at, 0x800f -/* 0D3ACC 800D2ECC 002A0821 */ addu $at, $at, $t2 -/* 0D3AD0 800D2ED0 902A9670 */ lbu $t2, -0x6990($at) -/* 0D3AD4 800D2ED4 3C01800F */ lui $at, 0x800f -/* 0D3AD8 800D2ED8 002A0821 */ addu $at, $at, $t2 -/* 0D3ADC 800D2EDC 8C2A9690 */ lw $t2, -0x6970($at) -/* 0D3AE0 800D2EE0 01400008 */ jr $t2 -/* 0D3AE4 800D2EE4 00000000 */ nop -/* 0D3AE8 800D2EE8 2401DFFF */ li $at, -8193 -/* 0D3AEC 800D2EEC 1000FFF0 */ b .L800D2EB0 -/* 0D3AF0 800D2EF0 02018024 */ and $s0, $s0, $at -/* 0D3AF4 800D2EF4 2401BFFF */ li $at, -16385 -/* 0D3AF8 800D2EF8 1000FFED */ b .L800D2EB0 -/* 0D3AFC 800D2EFC 02018024 */ and $s0, $s0, $at -/* 0D3B00 800D2F00 40095800 */ mfc0 $t1, $11 -/* 0D3B04 800D2F04 40895800 */ mtc0 $t1, $11 -/* 0D3B08 800D2F08 0C034C79 */ jal func_800D31E4 -/* 0D3B0C 800D2F0C 24040018 */ li $a0, 24 -/* 0D3B10 800D2F10 3C01FFFF */ lui $at, (0xFFFF7FFF >> 16) # lui $at, 0xffff -/* 0D3B14 800D2F14 34217FFF */ ori $at, (0xFFFF7FFF & 0xFFFF) # ori $at, $at, 0x7fff -/* 0D3B18 800D2F18 1000FFE5 */ b .L800D2EB0 -/* 0D3B1C 800D2F1C 02018024 */ and $s0, $s0, $at -/* 0D3B20 800D2F20 2401F7FF */ li $at, -2049 -/* 0D3B24 800D2F24 02018024 */ and $s0, $s0, $at -/* 0D3B28 800D2F28 240A0004 */ li $t2, 4 -/* 0D3B2C 800D2F2C 3C01800E */ lui $at, 0x800e -/* 0D3B30 800D2F30 002A0821 */ addu $at, $at, $t2 -/* 0D3B34 800D2F34 8C2A48A0 */ lw $t2, 0x48a0($at) -/* 0D3B38 800D2F38 3C1D8013 */ lui $sp, %hi(D_8012AAE0) # $sp, 0x8013 -/* 0D3B3C 800D2F3C 27BDAAE0 */ addiu $sp, %lo(D_8012AAE0) # addiu $sp, $sp, -0x5520 -/* 0D3B40 800D2F40 24040010 */ li $a0, 16 -/* 0D3B44 800D2F44 11400007 */ beqz $t2, .L800D2F64 -/* 0D3B48 800D2F48 27BD0FF0 */ addiu $sp, $sp, 0xff0 -/* 0D3B4C 800D2F4C 0140F809 */ jalr $t2 -/* 0D3B50 800D2F50 00000000 */ nop -/* 0D3B54 800D2F54 10400003 */ beqz $v0, .L800D2F64 -/* 0D3B58 800D2F58 00000000 */ nop -/* 0D3B5C 800D2F5C 10000082 */ b .L800D3168 -/* 0D3B60 800D2F60 00000000 */ nop -.L800D2F64: -/* 0D3B64 800D2F64 0C034C79 */ jal func_800D31E4 -/* 0D3B68 800D2F68 00000000 */ nop -/* 0D3B6C 800D2F6C 1000FFD0 */ b .L800D2EB0 -/* 0D3B70 800D2F70 00000000 */ nop -/* 0D3B74 800D2F74 3C08800E */ lui $t0, %hi(D_800E38AC) # $t0, 0x800e -/* 0D3B78 800D2F78 250838AC */ addiu $t0, %lo(D_800E38AC) # addiu $t0, $t0, 0x38ac -/* 0D3B7C 800D2F7C 8D080000 */ lw $t0, ($t0) -/* 0D3B80 800D2F80 3C11A430 */ lui $s1, %hi(D_A4300008) # $s1, 0xa430 -/* 0D3B84 800D2F84 8E310008 */ lw $s1, %lo(D_A4300008)($s1) -/* 0D3B88 800D2F88 00084402 */ srl $t0, $t0, 0x10 -/* 0D3B8C 800D2F8C 02288824 */ and $s1, $s1, $t0 -/* 0D3B90 800D2F90 32290001 */ andi $t1, $s1, 1 -/* 0D3B94 800D2F94 11200013 */ beqz $t1, .L800D2FE4 -/* 0D3B98 800D2F98 00000000 */ nop -/* 0D3B9C 800D2F9C 3C0CA404 */ lui $t4, %hi(D_A4040010) # $t4, 0xa404 -/* 0D3BA0 800D2FA0 8D8C0010 */ lw $t4, %lo(D_A4040010)($t4) -/* 0D3BA4 800D2FA4 24090008 */ li $t1, 8 -/* 0D3BA8 800D2FA8 3C01A404 */ lui $at, %hi(D_A4040010) # $at, 0xa404 -/* 0D3BAC 800D2FAC 318C0300 */ andi $t4, $t4, 0x300 -/* 0D3BB0 800D2FB0 3231003E */ andi $s1, $s1, 0x3e -/* 0D3BB4 800D2FB4 11800007 */ beqz $t4, .L800D2FD4 -/* 0D3BB8 800D2FB8 AC290010 */ sw $t1, %lo(D_A4040010)($at) -/* 0D3BBC 800D2FBC 0C034C79 */ jal func_800D31E4 -/* 0D3BC0 800D2FC0 24040020 */ li $a0, 32 -/* 0D3BC4 800D2FC4 12200038 */ beqz $s1, .L800D30A8 -/* 0D3BC8 800D2FC8 00000000 */ nop -/* 0D3BCC 800D2FCC 10000005 */ b .L800D2FE4 -/* 0D3BD0 800D2FD0 00000000 */ nop -.L800D2FD4: -/* 0D3BD4 800D2FD4 0C034C79 */ jal func_800D31E4 -/* 0D3BD8 800D2FD8 24040058 */ li $a0, 88 -/* 0D3BDC 800D2FDC 12200032 */ beqz $s1, .L800D30A8 -/* 0D3BE0 800D2FE0 00000000 */ nop -.L800D2FE4: -/* 0D3BE4 800D2FE4 32290008 */ andi $t1, $s1, 8 -/* 0D3BE8 800D2FE8 11200007 */ beqz $t1, .L800D3008 -/* 0D3BEC 800D2FEC 3C01A440 */ lui $at, %hi(D_A4400010) # $at, 0xa440 -/* 0D3BF0 800D2FF0 32310037 */ andi $s1, $s1, 0x37 -/* 0D3BF4 800D2FF4 AC200010 */ sw $zero, %lo(D_A4400010)($at) -/* 0D3BF8 800D2FF8 0C034C79 */ jal func_800D31E4 -/* 0D3BFC 800D2FFC 24040038 */ li $a0, 56 -/* 0D3C00 800D3000 12200029 */ beqz $s1, .L800D30A8 -/* 0D3C04 800D3004 00000000 */ nop -.L800D3008: -/* 0D3C08 800D3008 32290004 */ andi $t1, $s1, 4 -/* 0D3C0C 800D300C 11200009 */ beqz $t1, .L800D3034 -/* 0D3C10 800D3010 00000000 */ nop -/* 0D3C14 800D3014 24090001 */ li $t1, 1 -/* 0D3C18 800D3018 3C01A450 */ lui $at, %hi(D_A450000C) # $at, 0xa450 -/* 0D3C1C 800D301C 3231003B */ andi $s1, $s1, 0x3b -/* 0D3C20 800D3020 AC29000C */ sw $t1, %lo(D_A450000C)($at) -/* 0D3C24 800D3024 0C034C79 */ jal func_800D31E4 -/* 0D3C28 800D3028 24040030 */ li $a0, 48 -/* 0D3C2C 800D302C 1220001E */ beqz $s1, .L800D30A8 -/* 0D3C30 800D3030 00000000 */ nop -.L800D3034: -/* 0D3C34 800D3034 32290002 */ andi $t1, $s1, 2 -/* 0D3C38 800D3038 11200007 */ beqz $t1, .L800D3058 -/* 0D3C3C 800D303C 3C01A480 */ lui $at, %hi(D_A4800018) # $at, 0xa480 -/* 0D3C40 800D3040 3231003D */ andi $s1, $s1, 0x3d -/* 0D3C44 800D3044 AC200018 */ sw $zero, %lo(D_A4800018)($at) -/* 0D3C48 800D3048 0C034C79 */ jal func_800D31E4 -/* 0D3C4C 800D304C 24040028 */ li $a0, 40 -/* 0D3C50 800D3050 12200015 */ beqz $s1, .L800D30A8 -/* 0D3C54 800D3054 00000000 */ nop -.L800D3058: -/* 0D3C58 800D3058 32290010 */ andi $t1, $s1, 0x10 -/* 0D3C5C 800D305C 11200009 */ beqz $t1, .L800D3084 -/* 0D3C60 800D3060 00000000 */ nop -/* 0D3C64 800D3064 24090002 */ li $t1, 2 -/* 0D3C68 800D3068 3C01A460 */ lui $at, %hi(D_A4600010) # $at, 0xa460 -/* 0D3C6C 800D306C 3231002F */ andi $s1, $s1, 0x2f -/* 0D3C70 800D3070 AC290010 */ sw $t1, %lo(D_A4600010)($at) -/* 0D3C74 800D3074 0C034C79 */ jal func_800D31E4 -/* 0D3C78 800D3078 24040040 */ li $a0, 64 -/* 0D3C7C 800D307C 1220000A */ beqz $s1, .L800D30A8 -/* 0D3C80 800D3080 00000000 */ nop -.L800D3084: -/* 0D3C84 800D3084 32290020 */ andi $t1, $s1, 0x20 -/* 0D3C88 800D3088 11200007 */ beqz $t1, .L800D30A8 -/* 0D3C8C 800D308C 00000000 */ nop -/* 0D3C90 800D3090 24090800 */ li $t1, 2048 -/* 0D3C94 800D3094 3C01A430 */ lui $at, 0xa430 -/* 0D3C98 800D3098 3231001F */ andi $s1, $s1, 0x1f -/* 0D3C9C 800D309C AC290000 */ sw $t1, ($at) -/* 0D3CA0 800D30A0 0C034C79 */ jal func_800D31E4 -/* 0D3CA4 800D30A4 24040048 */ li $a0, 72 -.L800D30A8: -/* 0D3CA8 800D30A8 2401FBFF */ li $at, -1025 -/* 0D3CAC 800D30AC 1000FF80 */ b .L800D2EB0 -/* 0D3CB0 800D30B0 02018024 */ and $s0, $s0, $at -/* 0D3CB4 800D30B4 8F5B0118 */ lw $k1, 0x118($k0) -/* 0D3CB8 800D30B8 2401EFFF */ li $at, -4097 -/* 0D3CBC 800D30BC 3C09800E */ lui $t1, %hi(D_800E38A8) # $t1, 0x800e -/* 0D3CC0 800D30C0 0361D824 */ and $k1, $k1, $at -/* 0D3CC4 800D30C4 AF5B0118 */ sw $k1, 0x118($k0) -/* 0D3CC8 800D30C8 252938A8 */ addiu $t1, %lo(D_800E38A8) # addiu $t1, $t1, 0x38a8 -/* 0D3CCC 800D30CC 8D2A0000 */ lw $t2, ($t1) -/* 0D3CD0 800D30D0 11400003 */ beqz $t2, .L800D30E0 -/* 0D3CD4 800D30D4 2401EFFF */ li $at, -4097 -/* 0D3CD8 800D30D8 10000023 */ b .L800D3168 -/* 0D3CDC 800D30DC 02018024 */ and $s0, $s0, $at -.L800D30E0: -/* 0D3CE0 800D30E0 240A0001 */ li $t2, 1 -/* 0D3CE4 800D30E4 AD2A0000 */ sw $t2, ($t1) -/* 0D3CE8 800D30E8 0C034C79 */ jal func_800D31E4 -/* 0D3CEC 800D30EC 24040070 */ li $a0, 112 -/* 0D3CF0 800D30F0 3C0A800E */ lui $t2, %hi(D_800E4888) # $t2, 0x800e -/* 0D3CF4 800D30F4 8D4A4888 */ lw $t2, %lo(D_800E4888)($t2) -/* 0D3CF8 800D30F8 2401EFFF */ li $at, -4097 -/* 0D3CFC 800D30FC 02018024 */ and $s0, $s0, $at -/* 0D3D00 800D3100 8D5B0118 */ lw $k1, 0x118($t2) -/* 0D3D04 800D3104 0361D824 */ and $k1, $k1, $at -/* 0D3D08 800D3108 10000017 */ b .L800D3168 -/* 0D3D0C 800D310C AD5B0118 */ sw $k1, 0x118($t2) -/* 0D3D10 800D3110 2401FDFF */ li $at, -513 -/* 0D3D14 800D3114 01014024 */ and $t0, $t0, $at -/* 0D3D18 800D3118 40886800 */ mtc0 $t0, $13 -/* 0D3D1C 800D311C 0C034C79 */ jal func_800D31E4 -/* 0D3D20 800D3120 24040008 */ li $a0, 8 -/* 0D3D24 800D3124 2401FDFF */ li $at, -513 -/* 0D3D28 800D3128 1000FF61 */ b .L800D2EB0 -/* 0D3D2C 800D312C 02018024 */ and $s0, $s0, $at -/* 0D3D30 800D3130 2401FEFF */ li $at, -257 -/* 0D3D34 800D3134 01014024 */ and $t0, $t0, $at -/* 0D3D38 800D3138 40886800 */ mtc0 $t0, $13 -/* 0D3D3C 800D313C 0C034C79 */ jal func_800D31E4 -/* 0D3D40 800D3140 24040000 */ li $a0, 0 -/* 0D3D44 800D3144 2401FEFF */ li $at, -257 -/* 0D3D48 800D3148 1000FF59 */ b .L800D2EB0 -/* 0D3D4C 800D314C 02018024 */ and $s0, $s0, $at -.L800D3150: -/* 0D3D50 800D3150 24090001 */ li $t1, 1 -/* 0D3D54 800D3154 A7490012 */ sh $t1, 0x12($k0) -/* 0D3D58 800D3158 0C034C79 */ jal func_800D31E4 -/* 0D3D5C 800D315C 24040050 */ li $a0, 80 -/* 0D3D60 800D3160 10000001 */ b .L800D3168 -/* 0D3D64 800D3164 00000000 */ nop -.L800D3168: -/* 0D3D68 800D3168 3C0A800E */ lui $t2, %hi(D_800E4888) # $t2, 0x800e -/* 0D3D6C 800D316C 8D4A4888 */ lw $t2, %lo(D_800E4888)($t2) -/* 0D3D70 800D3170 8F490004 */ lw $t1, 4($k0) -/* 0D3D74 800D3174 8D4B0004 */ lw $t3, 4($t2) -/* 0D3D78 800D3178 012B082A */ slt $at, $t1, $t3 -/* 0D3D7C 800D317C 10200007 */ beqz $at, .L800D319C -/* 0D3D80 800D3180 00000000 */ nop -/* 0D3D84 800D3184 3C04800E */ lui $a0, %hi(D_800E4888) # $a0, 0x800e -/* 0D3D88 800D3188 03402825 */ move $a1, $k0 -/* 0D3D8C 800D318C 0C034CF3 */ jal func_800D33CC -/* 0D3D90 800D3190 24844888 */ addiu $a0, %lo(D_800E4888) # addiu $a0, $a0, 0x4888 -/* 0D3D94 800D3194 08034D09 */ j func_800D3424 -/* 0D3D98 800D3198 00000000 */ nop - -.L800D319C: -/* 0D3D9C 800D319C 3C09800E */ lui $t1, %hi(D_800E4888) # $t1, 0x800e -/* 0D3DA0 800D31A0 25294888 */ addiu $t1, %lo(D_800E4888) # addiu $t1, $t1, 0x4888 -/* 0D3DA4 800D31A4 8D2A0000 */ lw $t2, ($t1) -/* 0D3DA8 800D31A8 AF4A0000 */ sw $t2, ($k0) -/* 0D3DAC 800D31AC 08034D09 */ j func_800D3424 -/* 0D3DB0 800D31B0 AD3A0000 */ sw $k0, ($t1) - -.L800D31B4: -/* 0D3DB4 800D31B4 3C01800E */ lui $at, %hi(D_800E4894) # $at, 0x800e -/* 0D3DB8 800D31B8 AC3A4894 */ sw $k0, %lo(D_800E4894)($at) -/* 0D3DBC 800D31BC 24090001 */ li $t1, 1 -/* 0D3DC0 800D31C0 A7490010 */ sh $t1, 0x10($k0) -/* 0D3DC4 800D31C4 24090002 */ li $t1, 2 -/* 0D3DC8 800D31C8 A7490012 */ sh $t1, 0x12($k0) -/* 0D3DCC 800D31CC 400A4000 */ mfc0 $t2, $8 -/* 0D3DD0 800D31D0 AF4A0124 */ sw $t2, 0x124($k0) -/* 0D3DD4 800D31D4 0C034C79 */ jal func_800D31E4 -/* 0D3DD8 800D31D8 24040060 */ li $a0, 96 -/* 0D3DDC 800D31DC 08034D09 */ j func_800D3424 -/* 0D3DE0 800D31E0 00000000 */ nop - -glabel func_800D31E4 -/* 0D3DE4 800D31E4 3C0A8013 */ lui $t2, %hi(D_8012CCD0) # $t2, 0x8013 -/* 0D3DE8 800D31E8 254ACCD0 */ addiu $t2, %lo(D_8012CCD0) # addiu $t2, $t2, -0x3330 -/* 0D3DEC 800D31EC 01445021 */ addu $t2, $t2, $a0 -/* 0D3DF0 800D31F0 8D490000 */ lw $t1, ($t2) -/* 0D3DF4 800D31F4 03E09025 */ move $s2, $ra -/* 0D3DF8 800D31F8 11200025 */ beqz $t1, .L800D3290 -/* 0D3DFC 800D31FC 00000000 */ nop -/* 0D3E00 800D3200 8D2B0008 */ lw $t3, 8($t1) -/* 0D3E04 800D3204 8D2C0010 */ lw $t4, 0x10($t1) -/* 0D3E08 800D3208 016C082A */ slt $at, $t3, $t4 -/* 0D3E0C 800D320C 10200020 */ beqz $at, .L800D3290 -/* 0D3E10 800D3210 00000000 */ nop -/* 0D3E14 800D3214 8D2D000C */ lw $t5, 0xc($t1) -/* 0D3E18 800D3218 01AB6821 */ addu $t5, $t5, $t3 -/* 0D3E1C 800D321C 01AC001A */ div $zero, $t5, $t4 -/* 0D3E20 800D3220 15800002 */ bnez $t4, .L800D322C -/* 0D3E24 800D3224 00000000 */ nop -/* 0D3E28 800D3228 0007000D */ break 7 -.L800D322C: -/* 0D3E2C 800D322C 2401FFFF */ li $at, -1 -/* 0D3E30 800D3230 15810004 */ bne $t4, $at, .L800D3244 -/* 0D3E34 800D3234 3C018000 */ lui $at, 0x8000 -/* 0D3E38 800D3238 15A10002 */ bne $t5, $at, .L800D3244 -/* 0D3E3C 800D323C 00000000 */ nop -/* 0D3E40 800D3240 0006000D */ break 6 -.L800D3244: -/* 0D3E44 800D3244 8D2C0014 */ lw $t4, 0x14($t1) -/* 0D3E48 800D3248 00006810 */ mfhi $t5 -/* 0D3E4C 800D324C 000D6880 */ sll $t5, $t5, 2 -/* 0D3E50 800D3250 018D6021 */ addu $t4, $t4, $t5 -/* 0D3E54 800D3254 8D4D0004 */ lw $t5, 4($t2) -/* 0D3E58 800D3258 256A0001 */ addiu $t2, $t3, 1 -/* 0D3E5C 800D325C AD8D0000 */ sw $t5, ($t4) -/* 0D3E60 800D3260 AD2A0008 */ sw $t2, 8($t1) -/* 0D3E64 800D3264 8D2A0000 */ lw $t2, ($t1) -/* 0D3E68 800D3268 8D4B0000 */ lw $t3, ($t2) -/* 0D3E6C 800D326C 11600008 */ beqz $t3, .L800D3290 -/* 0D3E70 800D3270 00000000 */ nop -/* 0D3E74 800D3274 0C034D05 */ jal __osPopThread -/* 0D3E78 800D3278 01202025 */ move $a0, $t1 -/* 0D3E7C 800D327C 00405025 */ move $t2, $v0 -/* 0D3E80 800D3280 3C04800E */ lui $a0, %hi(D_800E4888) # $a0, 0x800e -/* 0D3E84 800D3284 01402825 */ move $a1, $t2 -/* 0D3E88 800D3288 0C034CF3 */ jal func_800D33CC -/* 0D3E8C 800D328C 24844888 */ addiu $a0, %lo(D_800E4888) # addiu $a0, $a0, 0x4888 -.L800D3290: -/* 0D3E90 800D3290 02400008 */ jr $s2 -/* 0D3E94 800D3294 00000000 */ nop -.L800D3298: -/* 0D3E98 800D3298 3C013000 */ lui $at, 0x3000 -/* 0D3E9C 800D329C 01014824 */ and $t1, $t0, $at -/* 0D3EA0 800D32A0 00094F02 */ srl $t1, $t1, 0x1c -/* 0D3EA4 800D32A4 240A0001 */ li $t2, 1 -/* 0D3EA8 800D32A8 152AFFC2 */ bne $t1, $t2, .L800D31B4 -/* 0D3EAC 800D32AC 00000000 */ nop -/* 0D3EB0 800D32B0 8F5B0118 */ lw $k1, 0x118($k0) -/* 0D3EB4 800D32B4 3C012000 */ lui $at, 0x2000 -/* 0D3EB8 800D32B8 24090001 */ li $t1, 1 -/* 0D3EBC 800D32BC 0361D825 */ or $k1, $k1, $at -/* 0D3EC0 800D32C0 AF490018 */ sw $t1, 0x18($k0) -/* 0D3EC4 800D32C4 1000FFB5 */ b .L800D319C -/* 0D3EC8 800D32C8 AF5B0118 */ sw $k1, 0x118($k0) -glabel __osEnqueueAndYield -/* 0D3ECC 800D32CC 3C05800E */ lui $a1, %hi(D_800E4890) # $a1, 0x800e -/* 0D3ED0 800D32D0 8CA54890 */ lw $a1, %lo(D_800E4890)($a1) -/* 0D3ED4 800D32D4 40086000 */ mfc0 $t0, $12 -/* 0D3ED8 800D32D8 8CBB0018 */ lw $k1, 0x18($a1) -/* 0D3EDC 800D32DC 35080002 */ ori $t0, $t0, 2 -/* 0D3EE0 800D32E0 ACA80118 */ sw $t0, 0x118($a1) -/* 0D3EE4 800D32E4 FCB00098 */ sd $s0, 0x98($a1) -/* 0D3EE8 800D32E8 FCB100A0 */ sd $s1, 0xa0($a1) -/* 0D3EEC 800D32EC FCB200A8 */ sd $s2, 0xa8($a1) -/* 0D3EF0 800D32F0 FCB300B0 */ sd $s3, 0xb0($a1) -/* 0D3EF4 800D32F4 FCB400B8 */ sd $s4, 0xb8($a1) -/* 0D3EF8 800D32F8 FCB500C0 */ sd $s5, 0xc0($a1) -/* 0D3EFC 800D32FC FCB600C8 */ sd $s6, 0xc8($a1) -/* 0D3F00 800D3300 FCB700D0 */ sd $s7, 0xd0($a1) -/* 0D3F04 800D3304 FCBC00E8 */ sd $gp, 0xe8($a1) -/* 0D3F08 800D3308 FCBD00F0 */ sd $sp, 0xf0($a1) -/* 0D3F0C 800D330C FCBE00F8 */ sd $fp, 0xf8($a1) -/* 0D3F10 800D3310 FCBF0100 */ sd $ra, 0x100($a1) -/* 0D3F14 800D3314 13600009 */ beqz $k1, .L800D333C -/* 0D3F18 800D3318 ACBF011C */ sw $ra, 0x11c($a1) -/* 0D3F1C 800D331C 445BF800 */ cfc1 $k1, $31 -/* 0D3F20 800D3320 F4B40180 */ sdc1 $f20, 0x180($a1) -/* 0D3F24 800D3324 F4B60188 */ sdc1 $f22, 0x188($a1) -/* 0D3F28 800D3328 F4B80190 */ sdc1 $f24, 0x190($a1) -/* 0D3F2C 800D332C F4BA0198 */ sdc1 $f26, 0x198($a1) -/* 0D3F30 800D3330 F4BC01A0 */ sdc1 $f28, 0x1a0($a1) -/* 0D3F34 800D3334 F4BE01A8 */ sdc1 $f30, 0x1a8($a1) -/* 0D3F38 800D3338 ACBB012C */ sw $k1, 0x12c($a1) -.L800D333C: -/* 0D3F3C 800D333C 8CBB0118 */ lw $k1, 0x118($a1) -/* 0D3F40 800D3340 3369FF00 */ andi $t1, $k1, 0xff00 -/* 0D3F44 800D3344 1120000D */ beqz $t1, .L800D337C -/* 0D3F48 800D3348 00000000 */ nop -/* 0D3F4C 800D334C 3C08800E */ lui $t0, %hi(D_800E38AC) # $t0, 0x800e -/* 0D3F50 800D3350 250838AC */ addiu $t0, %lo(D_800E38AC) # addiu $t0, $t0, 0x38ac -/* 0D3F54 800D3354 8D080000 */ lw $t0, ($t0) -/* 0D3F58 800D3358 2401FFFF */ li $at, -1 -/* 0D3F5C 800D335C 01014026 */ xor $t0, $t0, $at -/* 0D3F60 800D3360 3C01FFFF */ lui $at, (0xFFFF00FF >> 16) # lui $at, 0xffff -/* 0D3F64 800D3364 3108FF00 */ andi $t0, $t0, 0xff00 -/* 0D3F68 800D3368 342100FF */ ori $at, (0xFFFF00FF & 0xFFFF) # ori $at, $at, 0xff -/* 0D3F6C 800D336C 01284825 */ or $t1, $t1, $t0 -/* 0D3F70 800D3370 0361D824 */ and $k1, $k1, $at -/* 0D3F74 800D3374 0369D825 */ or $k1, $k1, $t1 -/* 0D3F78 800D3378 ACBB0118 */ sw $k1, 0x118($a1) -.L800D337C: -/* 0D3F7C 800D337C 3C1BA430 */ lui $k1, %hi(D_A430000C) # $k1, 0xa430 -/* 0D3F80 800D3380 8F7B000C */ lw $k1, %lo(D_A430000C)($k1) -/* 0D3F84 800D3384 1360000B */ beqz $k1, .L800D33B4 -/* 0D3F88 800D3388 00000000 */ nop -/* 0D3F8C 800D338C 3C1A800E */ lui $k0, %hi(D_800E38AC) # $k0, 0x800e -/* 0D3F90 800D3390 275A38AC */ addiu $k0, %lo(D_800E38AC) # addiu $k0, $k0, 0x38ac -/* 0D3F94 800D3394 8F5A0000 */ lw $k0, ($k0) -/* 0D3F98 800D3398 8CA80128 */ lw $t0, 0x128($a1) -/* 0D3F9C 800D339C 2401FFFF */ li $at, -1 -/* 0D3FA0 800D33A0 001AD402 */ srl $k0, $k0, 0x10 -/* 0D3FA4 800D33A4 0341D026 */ xor $k0, $k0, $at -/* 0D3FA8 800D33A8 335A003F */ andi $k0, $k0, 0x3f -/* 0D3FAC 800D33AC 0348D024 */ and $k0, $k0, $t0 -/* 0D3FB0 800D33B0 037AD825 */ or $k1, $k1, $k0 -.L800D33B4: -/* 0D3FB4 800D33B4 10800003 */ beqz $a0, .L800D33C4 -/* 0D3FB8 800D33B8 ACBB0128 */ sw $k1, 0x128($a1) -/* 0D3FBC 800D33BC 0C034CF3 */ jal func_800D33CC -/* 0D3FC0 800D33C0 00000000 */ nop -.L800D33C4: -/* 0D3FC4 800D33C4 08034D09 */ j func_800D3424 -/* 0D3FC8 800D33C8 00000000 */ nop - -glabel func_800D33CC -/* 0D3FCC 800D33CC 8C980000 */ lw $t8, ($a0) -/* 0D3FD0 800D33D0 8CAF0004 */ lw $t7, 4($a1) -/* 0D3FD4 800D33D4 0080C825 */ move $t9, $a0 -/* 0D3FD8 800D33D8 8F0E0004 */ lw $t6, 4($t8) -/* 0D3FDC 800D33DC 01CF082A */ slt $at, $t6, $t7 -/* 0D3FE0 800D33E0 14200007 */ bnez $at, .L800D3400 -/* 0D3FE4 800D33E4 00000000 */ nop -.L800D33E8: -/* 0D3FE8 800D33E8 0300C825 */ move $t9, $t8 -/* 0D3FEC 800D33EC 8F180000 */ lw $t8, ($t8) -/* 0D3FF0 800D33F0 8F0E0004 */ lw $t6, 4($t8) -/* 0D3FF4 800D33F4 01CF082A */ slt $at, $t6, $t7 -/* 0D3FF8 800D33F8 1020FFFB */ beqz $at, .L800D33E8 -/* 0D3FFC 800D33FC 00000000 */ nop -.L800D3400: -/* 0D4000 800D3400 8F380000 */ lw $t8, ($t9) -/* 0D4004 800D3404 ACB80000 */ sw $t8, ($a1) -/* 0D4008 800D3408 AF250000 */ sw $a1, ($t9) -/* 0D400C 800D340C 03E00008 */ jr $ra -/* 0D4010 800D3410 ACA40008 */ sw $a0, 8($a1) - -glabel __osPopThread -/* 0D4014 800D3414 8C820000 */ lw $v0, ($a0) -/* 0D4018 800D3418 8C590000 */ lw $t9, ($v0) -/* 0D401C 800D341C 03E00008 */ jr $ra -/* 0D4020 800D3420 AC990000 */ sw $t9, ($a0) - -glabel func_800D3424 -/* 0D4024 800D3424 3C04800E */ lui $a0, %hi(D_800E4888) # $a0, 0x800e -/* 0D4028 800D3428 0C034D05 */ jal __osPopThread -/* 0D402C 800D342C 24844888 */ addiu $a0, %lo(D_800E4888) # addiu $a0, $a0, 0x4888 -/* 0D4030 800D3430 3C01800E */ lui $at, %hi(D_800E4890) # $at, 0x800e -/* 0D4034 800D3434 AC224890 */ sw $v0, %lo(D_800E4890)($at) -/* 0D4038 800D3438 24080004 */ li $t0, 4 -/* 0D403C 800D343C A4480010 */ sh $t0, 0x10($v0) -/* 0D4040 800D3440 0040D025 */ move $k0, $v0 -/* 0D4044 800D3444 3C08800E */ lui $t0, %hi(D_800E38AC) # $t0, 0x800e -/* 0D4048 800D3448 8F5B0118 */ lw $k1, 0x118($k0) -/* 0D404C 800D344C 250838AC */ addiu $t0, %lo(D_800E38AC) # addiu $t0, $t0, 0x38ac -/* 0D4050 800D3450 8D080000 */ lw $t0, ($t0) -/* 0D4054 800D3454 3C01FFFF */ lui $at, (0xFFFF00FF >> 16) # lui $at, 0xffff -/* 0D4058 800D3458 3369FF00 */ andi $t1, $k1, 0xff00 -/* 0D405C 800D345C 342100FF */ ori $at, (0xFFFF00FF & 0xFFFF) # ori $at, $at, 0xff -/* 0D4060 800D3460 3108FF00 */ andi $t0, $t0, 0xff00 -/* 0D4064 800D3464 01284824 */ and $t1, $t1, $t0 -/* 0D4068 800D3468 0361D824 */ and $k1, $k1, $at -/* 0D406C 800D346C 0369D825 */ or $k1, $k1, $t1 -/* 0D4070 800D3470 409B6000 */ mtc0 $k1, $12 -/* 0D4074 800D3474 DF5B0108 */ ld $k1, 0x108($k0) -/* 0D4078 800D3478 DF410020 */ ld $at, 0x20($k0) -/* 0D407C 800D347C DF420028 */ ld $v0, 0x28($k0) -/* 0D4080 800D3480 03600013 */ mtlo $k1 -/* 0D4084 800D3484 DF5B0110 */ ld $k1, 0x110($k0) -/* 0D4088 800D3488 DF430030 */ ld $v1, 0x30($k0) -/* 0D408C 800D348C DF440038 */ ld $a0, 0x38($k0) -/* 0D4090 800D3490 DF450040 */ ld $a1, 0x40($k0) -/* 0D4094 800D3494 DF460048 */ ld $a2, 0x48($k0) -/* 0D4098 800D3498 DF470050 */ ld $a3, 0x50($k0) -/* 0D409C 800D349C DF480058 */ ld $t0, 0x58($k0) -/* 0D40A0 800D34A0 DF490060 */ ld $t1, 0x60($k0) -/* 0D40A4 800D34A4 DF4A0068 */ ld $t2, 0x68($k0) -/* 0D40A8 800D34A8 DF4B0070 */ ld $t3, 0x70($k0) -/* 0D40AC 800D34AC DF4C0078 */ ld $t4, 0x78($k0) -/* 0D40B0 800D34B0 DF4D0080 */ ld $t5, 0x80($k0) -/* 0D40B4 800D34B4 DF4E0088 */ ld $t6, 0x88($k0) -/* 0D40B8 800D34B8 DF4F0090 */ ld $t7, 0x90($k0) -/* 0D40BC 800D34BC DF500098 */ ld $s0, 0x98($k0) -/* 0D40C0 800D34C0 DF5100A0 */ ld $s1, 0xa0($k0) -/* 0D40C4 800D34C4 DF5200A8 */ ld $s2, 0xa8($k0) -/* 0D40C8 800D34C8 DF5300B0 */ ld $s3, 0xb0($k0) -/* 0D40CC 800D34CC DF5400B8 */ ld $s4, 0xb8($k0) -/* 0D40D0 800D34D0 DF5500C0 */ ld $s5, 0xc0($k0) -/* 0D40D4 800D34D4 DF5600C8 */ ld $s6, 0xc8($k0) -/* 0D40D8 800D34D8 DF5700D0 */ ld $s7, 0xd0($k0) -/* 0D40DC 800D34DC DF5800D8 */ ld $t8, 0xd8($k0) -/* 0D40E0 800D34E0 DF5900E0 */ ld $t9, 0xe0($k0) -/* 0D40E4 800D34E4 DF5C00E8 */ ld $gp, 0xe8($k0) -/* 0D40E8 800D34E8 03600011 */ mthi $k1 -/* 0D40EC 800D34EC DF5D00F0 */ ld $sp, 0xf0($k0) -/* 0D40F0 800D34F0 DF5E00F8 */ ld $fp, 0xf8($k0) -/* 0D40F4 800D34F4 DF5F0100 */ ld $ra, 0x100($k0) -/* 0D40F8 800D34F8 8F5B011C */ lw $k1, 0x11c($k0) -/* 0D40FC 800D34FC 409B7000 */ mtc0 $k1, $14 -/* 0D4100 800D3500 8F5B0018 */ lw $k1, 0x18($k0) -/* 0D4104 800D3504 13600013 */ beqz $k1, .L800D3554 -/* 0D4108 800D3508 00000000 */ nop -/* 0D410C 800D350C 8F5B012C */ lw $k1, 0x12c($k0) -/* 0D4110 800D3510 44DBF800 */ ctc1 $k1, $31 -/* 0D4114 800D3514 D7400130 */ ldc1 $f0, 0x130($k0) -/* 0D4118 800D3518 D7420138 */ ldc1 $f2, 0x138($k0) -/* 0D411C 800D351C D7440140 */ ldc1 $f4, 0x140($k0) -/* 0D4120 800D3520 D7460148 */ ldc1 $f6, 0x148($k0) -/* 0D4124 800D3524 D7480150 */ ldc1 $f8, 0x150($k0) -/* 0D4128 800D3528 D74A0158 */ ldc1 $f10, 0x158($k0) -/* 0D412C 800D352C D74C0160 */ ldc1 $f12, 0x160($k0) -/* 0D4130 800D3530 D74E0168 */ ldc1 $f14, 0x168($k0) -/* 0D4134 800D3534 D7500170 */ ldc1 $f16, 0x170($k0) -/* 0D4138 800D3538 D7520178 */ ldc1 $f18, 0x178($k0) -/* 0D413C 800D353C D7540180 */ ldc1 $f20, 0x180($k0) -/* 0D4140 800D3540 D7560188 */ ldc1 $f22, 0x188($k0) -/* 0D4144 800D3544 D7580190 */ ldc1 $f24, 0x190($k0) -/* 0D4148 800D3548 D75A0198 */ ldc1 $f26, 0x198($k0) -/* 0D414C 800D354C D75C01A0 */ ldc1 $f28, 0x1a0($k0) -/* 0D4150 800D3550 D75E01A8 */ ldc1 $f30, 0x1a8($k0) -.L800D3554: -/* 0D4154 800D3554 8F5B0128 */ lw $k1, 0x128($k0) -/* 0D4158 800D3558 3C1A800E */ lui $k0, %hi(D_800E38AC) # $k0, 0x800e -/* 0D415C 800D355C 275A38AC */ addiu $k0, %lo(D_800E38AC) # addiu $k0, $k0, 0x38ac -/* 0D4160 800D3560 8F5A0000 */ lw $k0, ($k0) -/* 0D4164 800D3564 001AD402 */ srl $k0, $k0, 0x10 -/* 0D4168 800D3568 037AD824 */ and $k1, $k1, $k0 -/* 0D416C 800D356C 001BD840 */ sll $k1, $k1, 1 -/* 0D4170 800D3570 3C1A800F */ lui $k0, %hi(D_800E94D0) # $k0, 0x800f -/* 0D4174 800D3574 275A94D0 */ addiu $k0, %lo(D_800E94D0) # addiu $k0, $k0, -0x6b30 -/* 0D4178 800D3578 037AD821 */ addu $k1, $k1, $k0 -/* 0D417C 800D357C 977B0000 */ lhu $k1, ($k1) -/* 0D4180 800D3580 3C1AA430 */ lui $k0, %hi(D_A430000C) # $k0, 0xa430 -/* 0D4184 800D3584 275A000C */ addiu $k0, %lo(D_A430000C) # addiu $k0, $k0, 0xc -/* 0D4188 800D3588 AF5B0000 */ sw $k1, ($k0) -/* 0D418C 800D358C 00000000 */ nop -/* 0D4190 800D3590 00000000 */ nop -/* 0D4194 800D3594 00000000 */ nop -/* 0D4198 800D3598 00000000 */ nop -/* 0D419C 800D359C 42000018 */ eret -glabel D_800D35A0 -/* 0D41A0 800D35A0 0C035980 */ jal func_800D6600 -/* 0D41A4 800D35A4 00002025 */ move $a0, $zero -/* 0D41A8 800D35A8 00000000 */ nop -/* 0D41AC 800D35AC 00000000 */ nop -glabel func_800D35B0 -/* 0D41B0 800D35B0 40085000 */ mfc0 $t0, $10 -/* 0D41B4 800D35B4 310900FF */ andi $t1, $t0, 0xff -/* 0D41B8 800D35B8 2401E000 */ li $at, -8192 -/* 0D41BC 800D35BC 00815024 */ and $t2, $a0, $at -/* 0D41C0 800D35C0 012A4825 */ or $t1, $t1, $t2 -/* 0D41C4 800D35C4 40895000 */ mtc0 $t1, $10 -/* 0D41C8 800D35C8 00000000 */ nop -/* 0D41CC 800D35CC 00000000 */ nop -/* 0D41D0 800D35D0 00000000 */ nop -/* 0D41D4 800D35D4 42000008 */ tlbp -/* 0D41D8 800D35D8 00000000 */ nop -/* 0D41DC 800D35DC 00000000 */ nop -/* 0D41E0 800D35E0 400B0000 */ mfc0 $t3, $0 -/* 0D41E4 800D35E4 3C018000 */ lui $at, 0x8000 -/* 0D41E8 800D35E8 01615824 */ and $t3, $t3, $at -/* 0D41EC 800D35EC 1560001A */ bnez $t3, .L800D3658 -/* 0D41F0 800D35F0 00000000 */ nop -/* 0D41F4 800D35F4 42000001 */ tlbr -/* 0D41F8 800D35F8 00000000 */ nop -/* 0D41FC 800D35FC 00000000 */ nop -/* 0D4200 800D3600 00000000 */ nop -/* 0D4204 800D3604 400B2800 */ mfc0 $t3, $5 -/* 0D4208 800D3608 216B2000 */ addi $t3, $t3, 0x2000 -/* 0D420C 800D360C 000B5842 */ srl $t3, $t3, 1 -/* 0D4210 800D3610 01646024 */ and $t4, $t3, $a0 -/* 0D4214 800D3614 15800004 */ bnez $t4, .L800D3628 -/* 0D4218 800D3618 216BFFFF */ addi $t3, $t3, -1 -/* 0D421C 800D361C 40021000 */ mfc0 $v0, $2 -/* 0D4220 800D3620 10000002 */ b .L800D362C -/* 0D4224 800D3624 00000000 */ nop -.L800D3628: -/* 0D4228 800D3628 40021800 */ mfc0 $v0, $3 -.L800D362C: -/* 0D422C 800D362C 304D0002 */ andi $t5, $v0, 2 -/* 0D4230 800D3630 11A00009 */ beqz $t5, .L800D3658 -/* 0D4234 800D3634 00000000 */ nop -/* 0D4238 800D3638 3C013FFF */ lui $at, (0x3FFFFFC0 >> 16) # lui $at, 0x3fff -/* 0D423C 800D363C 3421FFC0 */ ori $at, (0x3FFFFFC0 & 0xFFFF) # ori $at, $at, 0xffc0 -/* 0D4240 800D3640 00411024 */ and $v0, $v0, $at -/* 0D4244 800D3644 00021180 */ sll $v0, $v0, 6 -/* 0D4248 800D3648 008B6824 */ and $t5, $a0, $t3 -/* 0D424C 800D364C 004D1020 */ add $v0, $v0, $t5 -/* 0D4250 800D3650 10000002 */ b .L800D365C -/* 0D4254 800D3654 00000000 */ nop -.L800D3658: -/* 0D4258 800D3658 2402FFFF */ li $v0, -1 -.L800D365C: -/* 0D425C 800D365C 40885000 */ mtc0 $t0, $10 -/* 0D4260 800D3660 03E00008 */ jr $ra -/* 0D4264 800D3664 00000000 */ nop - -/* 0D4268 800D3668 00000000 */ nop -/* 0D426C 800D366C 00000000 */ nop -glabel func_800D3670 -/* 0D4270 800D3670 3C0EA450 */ lui $t6, %hi(D_A450000C) # $t6, 0xa450 -/* 0D4274 800D3674 8DC4000C */ lw $a0, %lo(D_A450000C)($t6) -/* 0D4278 800D3678 3C018000 */ lui $at, 0x8000 -/* 0D427C 800D367C 27BDFFF8 */ addiu $sp, $sp, -8 -/* 0D4280 800D3680 00817824 */ and $t7, $a0, $at -/* 0D4284 800D3684 11E00003 */ beqz $t7, .L800D3694 -/* 0D4288 800D3688 00000000 */ nop -/* 0D428C 800D368C 10000002 */ b .L800D3698 -/* 0D4290 800D3690 24020001 */ li $v0, 1 -.L800D3694: -/* 0D4294 800D3694 00001025 */ move $v0, $zero -.L800D3698: -/* 0D4298 800D3698 03E00008 */ jr $ra -/* 0D429C 800D369C 27BD0008 */ addiu $sp, $sp, 8 - -glabel func_800D36A0 -/* 0D42A0 800D36A0 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0D42A4 800D36A4 AFBF001C */ sw $ra, 0x1c($sp) -/* 0D42A8 800D36A8 AFA40028 */ sw $a0, 0x28($sp) -/* 0D42AC 800D36AC AFA5002C */ sw $a1, 0x2c($sp) -/* 0D42B0 800D36B0 AFA60030 */ sw $a2, 0x30($sp) -/* 0D42B4 800D36B4 AFB10018 */ sw $s1, 0x18($sp) -/* 0D42B8 800D36B8 0C034958 */ jal __osDisableInt -/* 0D42BC 800D36BC AFB00014 */ sw $s0, 0x14($sp) -/* 0D42C0 800D36C0 8FAE0028 */ lw $t6, 0x28($sp) -/* 0D42C4 800D36C4 00408025 */ move $s0, $v0 -/* 0D42C8 800D36C8 8DCF0008 */ lw $t7, 8($t6) -/* 0D42CC 800D36CC 8DD80010 */ lw $t8, 0x10($t6) -/* 0D42D0 800D36D0 01F8082A */ slt $at, $t7, $t8 -/* 0D42D4 800D36D4 14200018 */ bnez $at, .L800D3738 -/* 0D42D8 800D36D8 00000000 */ nop -.L800D36DC: -/* 0D42DC 800D36DC 8FB90030 */ lw $t9, 0x30($sp) -/* 0D42E0 800D36E0 24010001 */ li $at, 1 -/* 0D42E4 800D36E4 1721000A */ bne $t9, $at, .L800D3710 -/* 0D42E8 800D36E8 00000000 */ nop -/* 0D42EC 800D36EC 3C09800E */ lui $t1, %hi(D_800E4890) # $t1, 0x800e -/* 0D42F0 800D36F0 8D294890 */ lw $t1, %lo(D_800E4890)($t1) -/* 0D42F4 800D36F4 24080008 */ li $t0, 8 -/* 0D42F8 800D36F8 A5280010 */ sh $t0, 0x10($t1) -/* 0D42FC 800D36FC 8FA40028 */ lw $a0, 0x28($sp) -/* 0D4300 800D3700 0C034CB3 */ jal __osEnqueueAndYield -/* 0D4304 800D3704 24840004 */ addiu $a0, $a0, 4 -/* 0D4308 800D3708 10000005 */ b .L800D3720 -/* 0D430C 800D370C 00000000 */ nop -.L800D3710: -/* 0D4310 800D3710 0C034960 */ jal __osRestoreInt -/* 0D4314 800D3714 02002025 */ move $a0, $s0 -/* 0D4318 800D3718 10000030 */ b .L800D37DC -/* 0D431C 800D371C 2402FFFF */ li $v0, -1 -.L800D3720: -/* 0D4320 800D3720 8FAA0028 */ lw $t2, 0x28($sp) -/* 0D4324 800D3724 8D4B0008 */ lw $t3, 8($t2) -/* 0D4328 800D3728 8D4C0010 */ lw $t4, 0x10($t2) -/* 0D432C 800D372C 016C082A */ slt $at, $t3, $t4 -/* 0D4330 800D3730 1020FFEA */ beqz $at, .L800D36DC -/* 0D4334 800D3734 00000000 */ nop -.L800D3738: -/* 0D4338 800D3738 8FAD0028 */ lw $t5, 0x28($sp) -/* 0D433C 800D373C 8DAE000C */ lw $t6, 0xc($t5) -/* 0D4340 800D3740 8DAF0010 */ lw $t7, 0x10($t5) -/* 0D4344 800D3744 01CFC021 */ addu $t8, $t6, $t7 -/* 0D4348 800D3748 2719FFFF */ addiu $t9, $t8, -1 -/* 0D434C 800D374C 032F001A */ div $zero, $t9, $t7 -/* 0D4350 800D3750 00004010 */ mfhi $t0 -/* 0D4354 800D3754 ADA8000C */ sw $t0, 0xc($t5) -/* 0D4358 800D3758 8FAA0028 */ lw $t2, 0x28($sp) -/* 0D435C 800D375C 8FA9002C */ lw $t1, 0x2c($sp) -/* 0D4360 800D3760 15E00002 */ bnez $t7, .L800D376C -/* 0D4364 800D3764 00000000 */ nop -/* 0D4368 800D3768 0007000D */ break 7 -.L800D376C: -/* 0D436C 800D376C 2401FFFF */ li $at, -1 -/* 0D4370 800D3770 15E10004 */ bne $t7, $at, .L800D3784 -/* 0D4374 800D3774 3C018000 */ lui $at, 0x8000 -/* 0D4378 800D3778 17210002 */ bne $t9, $at, .L800D3784 -/* 0D437C 800D377C 00000000 */ nop -/* 0D4380 800D3780 0006000D */ break 6 -.L800D3784: -/* 0D4384 800D3784 8D4C000C */ lw $t4, 0xc($t2) -/* 0D4388 800D3788 8D4B0014 */ lw $t3, 0x14($t2) -/* 0D438C 800D378C 000C7080 */ sll $t6, $t4, 2 -/* 0D4390 800D3790 016EC021 */ addu $t8, $t3, $t6 -/* 0D4394 800D3794 AF090000 */ sw $t1, ($t8) -/* 0D4398 800D3798 8FB90028 */ lw $t9, 0x28($sp) -/* 0D439C 800D379C 8F2F0008 */ lw $t7, 8($t9) -/* 0D43A0 800D37A0 25E80001 */ addiu $t0, $t7, 1 -/* 0D43A4 800D37A4 AF280008 */ sw $t0, 8($t9) -/* 0D43A8 800D37A8 8FAD0028 */ lw $t5, 0x28($sp) -/* 0D43AC 800D37AC 8DAA0000 */ lw $t2, ($t5) -/* 0D43B0 800D37B0 8D4C0000 */ lw $t4, ($t2) -/* 0D43B4 800D37B4 11800006 */ beqz $t4, .L800D37D0 -/* 0D43B8 800D37B8 00000000 */ nop -/* 0D43BC 800D37BC 0C034D05 */ jal __osPopThread -/* 0D43C0 800D37C0 01A02025 */ move $a0, $t5 -/* 0D43C4 800D37C4 00408825 */ move $s1, $v0 -/* 0D43C8 800D37C8 0C032268 */ jal osStartThread -/* 0D43CC 800D37CC 02202025 */ move $a0, $s1 -.L800D37D0: -/* 0D43D0 800D37D0 0C034960 */ jal __osRestoreInt -/* 0D43D4 800D37D4 02002025 */ move $a0, $s0 -/* 0D43D8 800D37D8 00001025 */ move $v0, $zero -.L800D37DC: -/* 0D43DC 800D37DC 8FBF001C */ lw $ra, 0x1c($sp) -/* 0D43E0 800D37E0 8FB00014 */ lw $s0, 0x14($sp) -/* 0D43E4 800D37E4 8FB10018 */ lw $s1, 0x18($sp) -/* 0D43E8 800D37E8 03E00008 */ jr $ra -/* 0D43EC 800D37EC 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_800D37F0 -/* 0D43F0 800D37F0 3C0E800E */ lui $t6, %hi(D_800E3740) # $t6, 0x800e -/* 0D43F4 800D37F4 8DCE3740 */ lw $t6, %lo(D_800E3740)($t6) -/* 0D43F8 800D37F8 15C00003 */ bnez $t6, .L800D3808 -/* 0D43FC 800D37FC 00000000 */ nop -/* 0D4400 800D3800 03E00008 */ jr $ra -/* 0D4404 800D3804 00001025 */ move $v0, $zero - -.L800D3808: -/* 0D4408 800D3808 3C02800E */ lui $v0, %hi(D_800E3748) # $v0, 0x800e -/* 0D440C 800D380C 8C423748 */ lw $v0, %lo(D_800E3748)($v0) -/* 0D4410 800D3810 03E00008 */ jr $ra -/* 0D4414 800D3814 00000000 */ nop - -/* 0D4418 800D3818 00000000 */ nop -/* 0D441C 800D381C 00000000 */ nop -glabel func_800D3820 -/* 0D4420 800D3820 00801025 */ move $v0, $a0 -/* 0D4424 800D3824 00A01825 */ move $v1, $a1 -/* 0D4428 800D3828 18C00018 */ blez $a2, .L800D388C -/* 0D442C 800D382C 00003825 */ move $a3, $zero -/* 0D4430 800D3830 30C50003 */ andi $a1, $a2, 3 -/* 0D4434 800D3834 10A00009 */ beqz $a1, .L800D385C -/* 0D4438 800D3838 00A02025 */ move $a0, $a1 -.L800D383C: -/* 0D443C 800D383C 904E0000 */ lbu $t6, ($v0) -/* 0D4440 800D3840 24E70001 */ addiu $a3, $a3, 1 -/* 0D4444 800D3844 24630001 */ addiu $v1, $v1, 1 -/* 0D4448 800D3848 24420001 */ addiu $v0, $v0, 1 -/* 0D444C 800D384C 1487FFFB */ bne $a0, $a3, .L800D383C -/* 0D4450 800D3850 A06EFFFF */ sb $t6, -1($v1) -/* 0D4454 800D3854 10E6000D */ beq $a3, $a2, .L800D388C -/* 0D4458 800D3858 00000000 */ nop -.L800D385C: -/* 0D445C 800D385C 904F0000 */ lbu $t7, ($v0) -/* 0D4460 800D3860 24E70004 */ addiu $a3, $a3, 4 -/* 0D4464 800D3864 24630004 */ addiu $v1, $v1, 4 -/* 0D4468 800D3868 A06FFFFC */ sb $t7, -4($v1) -/* 0D446C 800D386C 90580001 */ lbu $t8, 1($v0) -/* 0D4470 800D3870 24420004 */ addiu $v0, $v0, 4 -/* 0D4474 800D3874 A078FFFD */ sb $t8, -3($v1) -/* 0D4478 800D3878 9059FFFE */ lbu $t9, -2($v0) -/* 0D447C 800D387C A079FFFE */ sb $t9, -2($v1) -/* 0D4480 800D3880 9048FFFF */ lbu $t0, -1($v0) -/* 0D4484 800D3884 14E6FFF5 */ bne $a3, $a2, .L800D385C -/* 0D4488 800D3888 A068FFFF */ sb $t0, -1($v1) -.L800D388C: -/* 0D448C 800D388C 03E00008 */ jr $ra -/* 0D4490 800D3890 00000000 */ nop - -/* 0D4494 800D3894 00000000 */ nop -/* 0D4498 800D3898 00000000 */ nop -/* 0D449C 800D389C 00000000 */ nop -glabel func_800D38A0 -/* 0D44A0 800D38A0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0D44A4 800D38A4 AFA50020 */ sw $a1, 0x20($sp) -/* 0D44A8 800D38A8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D44AC 800D38AC 30AE00FF */ andi $t6, $a1, 0xff -/* 0D44B0 800D38B0 29C10026 */ slti $at, $t6, 0x26 -/* 0D44B4 800D38B4 01C02825 */ move $a1, $t6 -/* 0D44B8 800D38B8 AE00000C */ sw $zero, 0xc($s0) -/* 0D44BC 800D38BC AE000010 */ sw $zero, 0x10($s0) -/* 0D44C0 800D38C0 AE000014 */ sw $zero, 0x14($s0) -/* 0D44C4 800D38C4 AE000018 */ sw $zero, 0x18($s0) -/* 0D44C8 800D38C8 AE00001C */ sw $zero, 0x1c($s0) -/* 0D44CC 800D38CC AE000020 */ sw $zero, 0x20($s0) -/* 0D44D0 800D38D0 1420000A */ bnez $at, .L800D38FC -/* 0D44D4 800D38D4 01C01825 */ move $v1, $t6 -/* 0D44D8 800D38D8 25CFFFBB */ addiu $t7, $t6, -0x45 -/* 0D44DC 800D38DC 2DE10034 */ sltiu $at, $t7, 0x34 -/* 0D44E0 800D38E0 10200181 */ beqz $at, .L800D3EE8 -/* 0D44E4 800D38E4 000F7880 */ sll $t7, $t7, 2 -/* 0D44E8 800D38E8 3C01800F */ lui $at, 0x800f -/* 0D44EC 800D38EC 002F0821 */ addu $at, $at, $t7 -/* 0D44F0 800D38F0 8C2F96E4 */ lw $t7, -0x691c($at) -/* 0D44F4 800D38F4 01E00008 */ jr $t7 -/* 0D44F8 800D38F8 00000000 */ nop -.L800D38FC: -/* 0D44FC 800D38FC 24010025 */ li $at, 37 -/* 0D4500 800D3900 50610172 */ beql $v1, $at, .L800D3ECC -/* 0D4504 800D3904 8E18000C */ lw $t8, 0xc($s0) -/* 0D4508 800D3908 10000178 */ b .L800D3EEC -/* 0D450C 800D390C 8E0E000C */ lw $t6, 0xc($s0) -/* 0D4510 800D3910 8CD80000 */ lw $t8, ($a2) -/* 0D4514 800D3914 2401FFFC */ li $at, -4 -/* 0D4518 800D3918 27190003 */ addiu $t9, $t8, 3 -/* 0D451C 800D391C 03217024 */ and $t6, $t9, $at -/* 0D4520 800D3920 25CF0004 */ addiu $t7, $t6, 4 -/* 0D4524 800D3924 ACCF0000 */ sw $t7, ($a2) -/* 0D4528 800D3928 8E0E000C */ lw $t6, 0xc($s0) -/* 0D452C 800D392C 8DF9FFFC */ lw $t9, -4($t7) -/* 0D4530 800D3930 00EE7821 */ addu $t7, $a3, $t6 -/* 0D4534 800D3934 A1F90000 */ sb $t9, ($t7) -/* 0D4538 800D3938 8E18000C */ lw $t8, 0xc($s0) -/* 0D453C 800D393C 270E0001 */ addiu $t6, $t8, 1 -/* 0D4540 800D3940 1000016F */ b .L800D3F00 -/* 0D4544 800D3944 AE0E000C */ sw $t6, 0xc($s0) -/* 0D4548 800D3948 92020034 */ lbu $v0, 0x34($s0) -/* 0D454C 800D394C 2401006C */ li $at, 108 -/* 0D4550 800D3950 5441000D */ bnel $v0, $at, .L800D3988 -/* 0D4554 800D3954 2401004C */ li $at, 76 -/* 0D4558 800D3958 8CD90000 */ lw $t9, ($a2) -/* 0D455C 800D395C 2401FFFC */ li $at, -4 -/* 0D4560 800D3960 272F0003 */ addiu $t7, $t9, 3 -/* 0D4564 800D3964 01E1C024 */ and $t8, $t7, $at -/* 0D4568 800D3968 270E0004 */ addiu $t6, $t8, 4 -/* 0D456C 800D396C ACCE0000 */ sw $t6, ($a2) -/* 0D4570 800D3970 8DCFFFFC */ lw $t7, -4($t6) -/* 0D4574 800D3974 000FC7C3 */ sra $t8, $t7, 0x1f -/* 0D4578 800D3978 AE180000 */ sw $t8, ($s0) -/* 0D457C 800D397C 10000019 */ b .L800D39E4 -/* 0D4580 800D3980 AE0F0004 */ sw $t7, 4($s0) -/* 0D4584 800D3984 2401004C */ li $at, 76 -.L800D3988: -/* 0D4588 800D3988 5441000D */ bnel $v0, $at, .L800D39C0 -/* 0D458C 800D398C 8CCF0000 */ lw $t7, ($a2) -/* 0D4590 800D3990 8CCE0000 */ lw $t6, ($a2) -/* 0D4594 800D3994 2401FFF8 */ li $at, -8 -/* 0D4598 800D3998 25CF0007 */ addiu $t7, $t6, 7 -/* 0D459C 800D399C 01E1C024 */ and $t8, $t7, $at -/* 0D45A0 800D39A0 27190008 */ addiu $t9, $t8, 8 -/* 0D45A4 800D39A4 ACD90000 */ sw $t9, ($a2) -/* 0D45A8 800D39A8 8F38FFF8 */ lw $t8, -8($t9) -/* 0D45AC 800D39AC 8F39FFFC */ lw $t9, -4($t9) -/* 0D45B0 800D39B0 AE180000 */ sw $t8, ($s0) -/* 0D45B4 800D39B4 1000000B */ b .L800D39E4 -/* 0D45B8 800D39B8 AE190004 */ sw $t9, 4($s0) -/* 0D45BC 800D39BC 8CCF0000 */ lw $t7, ($a2) -.L800D39C0: -/* 0D45C0 800D39C0 2401FFFC */ li $at, -4 -/* 0D45C4 800D39C4 25EE0003 */ addiu $t6, $t7, 3 -/* 0D45C8 800D39C8 01C1C024 */ and $t8, $t6, $at -/* 0D45CC 800D39CC 27190004 */ addiu $t9, $t8, 4 -/* 0D45D0 800D39D0 ACD90000 */ sw $t9, ($a2) -/* 0D45D4 800D39D4 8F2EFFFC */ lw $t6, -4($t9) -/* 0D45D8 800D39D8 000EC7C3 */ sra $t8, $t6, 0x1f -/* 0D45DC 800D39DC AE180000 */ sw $t8, ($s0) -/* 0D45E0 800D39E0 AE0E0004 */ sw $t6, 4($s0) -.L800D39E4: -/* 0D45E4 800D39E4 920F0034 */ lbu $t7, 0x34($s0) -/* 0D45E8 800D39E8 24010068 */ li $at, 104 -/* 0D45EC 800D39EC 55E10008 */ bnel $t7, $at, .L800D3A10 -/* 0D45F0 800D39F0 8E0E0000 */ lw $t6, ($s0) -/* 0D45F4 800D39F4 8E0F0004 */ lw $t7, 4($s0) -/* 0D45F8 800D39F8 000FCC00 */ sll $t9, $t7, 0x10 -/* 0D45FC 800D39FC 00197403 */ sra $t6, $t9, 0x10 -/* 0D4600 800D3A00 000EC7C3 */ sra $t8, $t6, 0x1f -/* 0D4604 800D3A04 AE180000 */ sw $t8, ($s0) -/* 0D4608 800D3A08 AE0E0004 */ sw $t6, 4($s0) -/* 0D460C 800D3A0C 8E0E0000 */ lw $t6, ($s0) -.L800D3A10: -/* 0D4610 800D3A10 5DC0000E */ bgtzl $t6, .L800D3A4C -/* 0D4614 800D3A14 8E020030 */ lw $v0, 0x30($s0) -/* 0D4618 800D3A18 05C20004 */ bltzl $t6, .L800D3A2C -/* 0D461C 800D3A1C 8E19000C */ lw $t9, 0xc($s0) -/* 0D4620 800D3A20 1000000A */ b .L800D3A4C -/* 0D4624 800D3A24 8E020030 */ lw $v0, 0x30($s0) -/* 0D4628 800D3A28 8E19000C */ lw $t9, 0xc($s0) -.L800D3A2C: -/* 0D462C 800D3A2C 2418002D */ li $t8, 45 -/* 0D4630 800D3A30 00F97021 */ addu $t6, $a3, $t9 -/* 0D4634 800D3A34 A1D80000 */ sb $t8, ($t6) -/* 0D4638 800D3A38 8E0F000C */ lw $t7, 0xc($s0) -/* 0D463C 800D3A3C 25F90001 */ addiu $t9, $t7, 1 -/* 0D4640 800D3A40 10000016 */ b .L800D3A9C -/* 0D4644 800D3A44 AE19000C */ sw $t9, 0xc($s0) -/* 0D4648 800D3A48 8E020030 */ lw $v0, 0x30($s0) -.L800D3A4C: -/* 0D464C 800D3A4C 30580002 */ andi $t8, $v0, 2 -/* 0D4650 800D3A50 13000009 */ beqz $t8, .L800D3A78 -/* 0D4654 800D3A54 304E0001 */ andi $t6, $v0, 1 -/* 0D4658 800D3A58 8E0F000C */ lw $t7, 0xc($s0) -/* 0D465C 800D3A5C 240E002B */ li $t6, 43 -/* 0D4660 800D3A60 00EFC821 */ addu $t9, $a3, $t7 -/* 0D4664 800D3A64 A32E0000 */ sb $t6, ($t9) -/* 0D4668 800D3A68 8E18000C */ lw $t8, 0xc($s0) -/* 0D466C 800D3A6C 270F0001 */ addiu $t7, $t8, 1 -/* 0D4670 800D3A70 1000000A */ b .L800D3A9C -/* 0D4674 800D3A74 AE0F000C */ sw $t7, 0xc($s0) -.L800D3A78: -/* 0D4678 800D3A78 51C00009 */ beql $t6, $zero, .L800D3AA0 -/* 0D467C 800D3A7C 8E19000C */ lw $t9, 0xc($s0) -/* 0D4680 800D3A80 8E18000C */ lw $t8, 0xc($s0) -/* 0D4684 800D3A84 24190020 */ li $t9, 32 -/* 0D4688 800D3A88 00F87821 */ addu $t7, $a3, $t8 -/* 0D468C 800D3A8C A1F90000 */ sb $t9, ($t7) -/* 0D4690 800D3A90 8E0E000C */ lw $t6, 0xc($s0) -/* 0D4694 800D3A94 25D80001 */ addiu $t8, $t6, 1 -/* 0D4698 800D3A98 AE18000C */ sw $t8, 0xc($s0) -.L800D3A9C: -/* 0D469C 800D3A9C 8E19000C */ lw $t9, 0xc($s0) -.L800D3AA0: -/* 0D46A0 800D3AA0 02002025 */ move $a0, $s0 -/* 0D46A4 800D3AA4 03277821 */ addu $t7, $t9, $a3 -/* 0D46A8 800D3AA8 0C0359C0 */ jal func_800D6700 -/* 0D46AC 800D3AAC AE0F0008 */ sw $t7, 8($s0) -/* 0D46B0 800D3AB0 10000114 */ b .L800D3F04 -/* 0D46B4 800D3AB4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D46B8 800D3AB8 92020034 */ lbu $v0, 0x34($s0) -/* 0D46BC 800D3ABC 2401006C */ li $at, 108 -/* 0D46C0 800D3AC0 5441000D */ bnel $v0, $at, .L800D3AF8 -/* 0D46C4 800D3AC4 2401004C */ li $at, 76 -/* 0D46C8 800D3AC8 8CCE0000 */ lw $t6, ($a2) -/* 0D46CC 800D3ACC 2401FFFC */ li $at, -4 -/* 0D46D0 800D3AD0 25D80003 */ addiu $t8, $t6, 3 -/* 0D46D4 800D3AD4 0301C824 */ and $t9, $t8, $at -/* 0D46D8 800D3AD8 272F0004 */ addiu $t7, $t9, 4 -/* 0D46DC 800D3ADC ACCF0000 */ sw $t7, ($a2) -/* 0D46E0 800D3AE0 8DF8FFFC */ lw $t8, -4($t7) -/* 0D46E4 800D3AE4 001877C3 */ sra $t6, $t8, 0x1f -/* 0D46E8 800D3AE8 AE0E0000 */ sw $t6, ($s0) -/* 0D46EC 800D3AEC 10000019 */ b .L800D3B54 -/* 0D46F0 800D3AF0 AE180004 */ sw $t8, 4($s0) -/* 0D46F4 800D3AF4 2401004C */ li $at, 76 -.L800D3AF8: -/* 0D46F8 800D3AF8 5441000D */ bnel $v0, $at, .L800D3B30 -/* 0D46FC 800D3AFC 8CCE0000 */ lw $t6, ($a2) -/* 0D4700 800D3B00 8CD90000 */ lw $t9, ($a2) -/* 0D4704 800D3B04 2401FFF8 */ li $at, -8 -/* 0D4708 800D3B08 27380007 */ addiu $t8, $t9, 7 -/* 0D470C 800D3B0C 03017024 */ and $t6, $t8, $at -/* 0D4710 800D3B10 25CF0008 */ addiu $t7, $t6, 8 -/* 0D4714 800D3B14 ACCF0000 */ sw $t7, ($a2) -/* 0D4718 800D3B18 8DF9FFFC */ lw $t9, -4($t7) -/* 0D471C 800D3B1C 8DF8FFF8 */ lw $t8, -8($t7) -/* 0D4720 800D3B20 AE190004 */ sw $t9, 4($s0) -/* 0D4724 800D3B24 1000000B */ b .L800D3B54 -/* 0D4728 800D3B28 AE180000 */ sw $t8, ($s0) -/* 0D472C 800D3B2C 8CCE0000 */ lw $t6, ($a2) -.L800D3B30: -/* 0D4730 800D3B30 2401FFFC */ li $at, -4 -/* 0D4734 800D3B34 25CF0003 */ addiu $t7, $t6, 3 -/* 0D4738 800D3B38 01E1C024 */ and $t8, $t7, $at -/* 0D473C 800D3B3C 27190004 */ addiu $t9, $t8, 4 -/* 0D4740 800D3B40 ACD90000 */ sw $t9, ($a2) -/* 0D4744 800D3B44 8F2FFFFC */ lw $t7, -4($t9) -/* 0D4748 800D3B48 000FC7C3 */ sra $t8, $t7, 0x1f -/* 0D474C 800D3B4C AE180000 */ sw $t8, ($s0) -/* 0D4750 800D3B50 AE0F0004 */ sw $t7, 4($s0) -.L800D3B54: -/* 0D4754 800D3B54 92020034 */ lbu $v0, 0x34($s0) -/* 0D4758 800D3B58 24010068 */ li $at, 104 -/* 0D475C 800D3B5C 14410007 */ bne $v0, $at, .L800D3B7C -/* 0D4760 800D3B60 00000000 */ nop -/* 0D4764 800D3B64 8E0F0004 */ lw $t7, 4($s0) -/* 0D4768 800D3B68 240E0000 */ li $t6, 0 -/* 0D476C 800D3B6C AE0E0000 */ sw $t6, ($s0) -/* 0D4770 800D3B70 31F9FFFF */ andi $t9, $t7, 0xffff -/* 0D4774 800D3B74 10000007 */ b .L800D3B94 -/* 0D4778 800D3B78 AE190004 */ sw $t9, 4($s0) -.L800D3B7C: -/* 0D477C 800D3B7C 54400006 */ bnezl $v0, .L800D3B98 -/* 0D4780 800D3B80 8E0F0030 */ lw $t7, 0x30($s0) -/* 0D4784 800D3B84 8E190004 */ lw $t9, 4($s0) -/* 0D4788 800D3B88 24180000 */ li $t8, 0 -/* 0D478C 800D3B8C AE180000 */ sw $t8, ($s0) -/* 0D4790 800D3B90 AE190004 */ sw $t9, 4($s0) -.L800D3B94: -/* 0D4794 800D3B94 8E0F0030 */ lw $t7, 0x30($s0) -.L800D3B98: -/* 0D4798 800D3B98 31EE0008 */ andi $t6, $t7, 8 -/* 0D479C 800D3B9C 51C00014 */ beql $t6, $zero, .L800D3BF0 -/* 0D47A0 800D3BA0 8E18000C */ lw $t8, 0xc($s0) -/* 0D47A4 800D3BA4 8E19000C */ lw $t9, 0xc($s0) -/* 0D47A8 800D3BA8 24180030 */ li $t8, 48 -/* 0D47AC 800D3BAC 24010078 */ li $at, 120 -/* 0D47B0 800D3BB0 00F97821 */ addu $t7, $a3, $t9 -/* 0D47B4 800D3BB4 A1F80000 */ sb $t8, ($t7) -/* 0D47B8 800D3BB8 8E0E000C */ lw $t6, 0xc($s0) -/* 0D47BC 800D3BBC 25D90001 */ addiu $t9, $t6, 1 -/* 0D47C0 800D3BC0 10610004 */ beq $v1, $at, .L800D3BD4 -/* 0D47C4 800D3BC4 AE19000C */ sw $t9, 0xc($s0) -/* 0D47C8 800D3BC8 24010058 */ li $at, 88 -/* 0D47CC 800D3BCC 54610008 */ bnel $v1, $at, .L800D3BF0 -/* 0D47D0 800D3BD0 8E18000C */ lw $t8, 0xc($s0) -.L800D3BD4: -/* 0D47D4 800D3BD4 8E18000C */ lw $t8, 0xc($s0) -/* 0D47D8 800D3BD8 00F87821 */ addu $t7, $a3, $t8 -/* 0D47DC 800D3BDC A1E50000 */ sb $a1, ($t7) -/* 0D47E0 800D3BE0 8E0E000C */ lw $t6, 0xc($s0) -/* 0D47E4 800D3BE4 25D90001 */ addiu $t9, $t6, 1 -/* 0D47E8 800D3BE8 AE19000C */ sw $t9, 0xc($s0) -/* 0D47EC 800D3BEC 8E18000C */ lw $t8, 0xc($s0) -.L800D3BF0: -/* 0D47F0 800D3BF0 02002025 */ move $a0, $s0 -/* 0D47F4 800D3BF4 03077821 */ addu $t7, $t8, $a3 -/* 0D47F8 800D3BF8 0C0359C0 */ jal func_800D6700 -/* 0D47FC 800D3BFC AE0F0008 */ sw $t7, 8($s0) -/* 0D4800 800D3C00 100000C0 */ b .L800D3F04 -/* 0D4804 800D3C04 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D4808 800D3C08 920E0034 */ lbu $t6, 0x34($s0) -/* 0D480C 800D3C0C 2401004C */ li $at, 76 -/* 0D4810 800D3C10 55C10019 */ bnel $t6, $at, .L800D3C78 -/* 0D4814 800D3C14 8CC20000 */ lw $v0, ($a2) -/* 0D4818 800D3C18 8CC20000 */ lw $v0, ($a2) -/* 0D481C 800D3C1C 30590001 */ andi $t9, $v0, 1 -/* 0D4820 800D3C20 13200005 */ beqz $t9, .L800D3C38 -/* 0D4824 800D3C24 00401825 */ move $v1, $v0 -/* 0D4828 800D3C28 24780007 */ addiu $t8, $v1, 7 -/* 0D482C 800D3C2C ACD80000 */ sw $t8, ($a2) -/* 0D4830 800D3C30 1000000D */ b .L800D3C68 -/* 0D4834 800D3C34 2702FFEA */ addiu $v0, $t8, -0x16 -.L800D3C38: -/* 0D4838 800D3C38 306F0002 */ andi $t7, $v1, 2 -/* 0D483C 800D3C3C 11E00005 */ beqz $t7, .L800D3C54 -/* 0D4840 800D3C40 24590007 */ addiu $t9, $v0, 7 -/* 0D4844 800D3C44 246E000A */ addiu $t6, $v1, 0xa -/* 0D4848 800D3C48 ACCE0000 */ sw $t6, ($a2) -/* 0D484C 800D3C4C 10000005 */ b .L800D3C64 -/* 0D4850 800D3C50 25C4FFD8 */ addiu $a0, $t6, -0x28 -.L800D3C54: -/* 0D4854 800D3C54 2401FFF8 */ li $at, -8 -/* 0D4858 800D3C58 0321C024 */ and $t8, $t9, $at -/* 0D485C 800D3C5C 27040008 */ addiu $a0, $t8, 8 -/* 0D4860 800D3C60 ACC40000 */ sw $a0, ($a2) -.L800D3C64: -/* 0D4864 800D3C64 00801025 */ move $v0, $a0 -.L800D3C68: -/* 0D4868 800D3C68 D444FFF8 */ ldc1 $f4, -8($v0) -/* 0D486C 800D3C6C 10000017 */ b .L800D3CCC -/* 0D4870 800D3C70 F6040000 */ sdc1 $f4, ($s0) -/* 0D4874 800D3C74 8CC20000 */ lw $v0, ($a2) -.L800D3C78: -/* 0D4878 800D3C78 304E0001 */ andi $t6, $v0, 1 -/* 0D487C 800D3C7C 11C00005 */ beqz $t6, .L800D3C94 -/* 0D4880 800D3C80 00401825 */ move $v1, $v0 -/* 0D4884 800D3C84 24790007 */ addiu $t9, $v1, 7 -/* 0D4888 800D3C88 ACD90000 */ sw $t9, ($a2) -/* 0D488C 800D3C8C 1000000D */ b .L800D3CC4 -/* 0D4890 800D3C90 2722FFEA */ addiu $v0, $t9, -0x16 -.L800D3C94: -/* 0D4894 800D3C94 30780002 */ andi $t8, $v1, 2 -/* 0D4898 800D3C98 13000005 */ beqz $t8, .L800D3CB0 -/* 0D489C 800D3C9C 244E0007 */ addiu $t6, $v0, 7 -/* 0D48A0 800D3CA0 246F000A */ addiu $t7, $v1, 0xa -/* 0D48A4 800D3CA4 ACCF0000 */ sw $t7, ($a2) -/* 0D48A8 800D3CA8 10000005 */ b .L800D3CC0 -/* 0D48AC 800D3CAC 25E4FFD8 */ addiu $a0, $t7, -0x28 -.L800D3CB0: -/* 0D48B0 800D3CB0 2401FFF8 */ li $at, -8 -/* 0D48B4 800D3CB4 01C1C824 */ and $t9, $t6, $at -/* 0D48B8 800D3CB8 27240008 */ addiu $a0, $t9, 8 -/* 0D48BC 800D3CBC ACC40000 */ sw $a0, ($a2) -.L800D3CC0: -/* 0D48C0 800D3CC0 00801025 */ move $v0, $a0 -.L800D3CC4: -/* 0D48C4 800D3CC4 D446FFF8 */ ldc1 $f6, -8($v0) -/* 0D48C8 800D3CC8 F6060000 */ sdc1 $f6, ($s0) -.L800D3CCC: -/* 0D48CC 800D3CCC 960F0000 */ lhu $t7, ($s0) -/* 0D48D0 800D3CD0 31EE8000 */ andi $t6, $t7, 0x8000 -/* 0D48D4 800D3CD4 51C0000A */ beql $t6, $zero, .L800D3D00 -/* 0D48D8 800D3CD8 8E020030 */ lw $v0, 0x30($s0) -/* 0D48DC 800D3CDC 8E18000C */ lw $t8, 0xc($s0) -/* 0D48E0 800D3CE0 2419002D */ li $t9, 45 -/* 0D48E4 800D3CE4 00F87821 */ addu $t7, $a3, $t8 -/* 0D48E8 800D3CE8 A1F90000 */ sb $t9, ($t7) -/* 0D48EC 800D3CEC 8E0E000C */ lw $t6, 0xc($s0) -/* 0D48F0 800D3CF0 25D80001 */ addiu $t8, $t6, 1 -/* 0D48F4 800D3CF4 10000016 */ b .L800D3D50 -/* 0D48F8 800D3CF8 AE18000C */ sw $t8, 0xc($s0) -/* 0D48FC 800D3CFC 8E020030 */ lw $v0, 0x30($s0) -.L800D3D00: -/* 0D4900 800D3D00 30590002 */ andi $t9, $v0, 2 -/* 0D4904 800D3D04 13200009 */ beqz $t9, .L800D3D2C -/* 0D4908 800D3D08 304F0001 */ andi $t7, $v0, 1 -/* 0D490C 800D3D0C 8E0E000C */ lw $t6, 0xc($s0) -/* 0D4910 800D3D10 240F002B */ li $t7, 43 -/* 0D4914 800D3D14 00EEC021 */ addu $t8, $a3, $t6 -/* 0D4918 800D3D18 A30F0000 */ sb $t7, ($t8) -/* 0D491C 800D3D1C 8E19000C */ lw $t9, 0xc($s0) -/* 0D4920 800D3D20 272E0001 */ addiu $t6, $t9, 1 -/* 0D4924 800D3D24 1000000A */ b .L800D3D50 -/* 0D4928 800D3D28 AE0E000C */ sw $t6, 0xc($s0) -.L800D3D2C: -/* 0D492C 800D3D2C 51E00009 */ beql $t7, $zero, .L800D3D54 -/* 0D4930 800D3D30 8E18000C */ lw $t8, 0xc($s0) -/* 0D4934 800D3D34 8E19000C */ lw $t9, 0xc($s0) -/* 0D4938 800D3D38 24180020 */ li $t8, 32 -/* 0D493C 800D3D3C 00F97021 */ addu $t6, $a3, $t9 -/* 0D4940 800D3D40 A1D80000 */ sb $t8, ($t6) -/* 0D4944 800D3D44 8E0F000C */ lw $t7, 0xc($s0) -/* 0D4948 800D3D48 25F90001 */ addiu $t9, $t7, 1 -/* 0D494C 800D3D4C AE19000C */ sw $t9, 0xc($s0) -.L800D3D50: -/* 0D4950 800D3D50 8E18000C */ lw $t8, 0xc($s0) -.L800D3D54: -/* 0D4954 800D3D54 02002025 */ move $a0, $s0 -/* 0D4958 800D3D58 03077021 */ addu $t6, $t8, $a3 -/* 0D495C 800D3D5C 0C035BC4 */ jal func_800D6F10 -/* 0D4960 800D3D60 AE0E0008 */ sw $t6, 8($s0) -/* 0D4964 800D3D64 10000067 */ b .L800D3F04 -/* 0D4968 800D3D68 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D496C 800D3D6C 92020034 */ lbu $v0, 0x34($s0) -/* 0D4970 800D3D70 24010068 */ li $at, 104 -/* 0D4974 800D3D74 5441000C */ bnel $v0, $at, .L800D3DA8 -/* 0D4978 800D3D78 2401006C */ li $at, 108 -/* 0D497C 800D3D7C 8CCF0000 */ lw $t7, ($a2) -/* 0D4980 800D3D80 2401FFFC */ li $at, -4 -/* 0D4984 800D3D84 25F90003 */ addiu $t9, $t7, 3 -/* 0D4988 800D3D88 0321C024 */ and $t8, $t9, $at -/* 0D498C 800D3D8C 270E0004 */ addiu $t6, $t8, 4 -/* 0D4990 800D3D90 ACCE0000 */ sw $t6, ($a2) -/* 0D4994 800D3D94 8DD9FFFC */ lw $t9, -4($t6) -/* 0D4998 800D3D98 8E0F002C */ lw $t7, 0x2c($s0) -/* 0D499C 800D3D9C 10000058 */ b .L800D3F00 -/* 0D49A0 800D3DA0 A72F0000 */ sh $t7, ($t9) -/* 0D49A4 800D3DA4 2401006C */ li $at, 108 -.L800D3DA8: -/* 0D49A8 800D3DA8 5441000C */ bnel $v0, $at, .L800D3DDC -/* 0D49AC 800D3DAC 2401004C */ li $at, 76 -/* 0D49B0 800D3DB0 8CD80000 */ lw $t8, ($a2) -/* 0D49B4 800D3DB4 2401FFFC */ li $at, -4 -/* 0D49B8 800D3DB8 270E0003 */ addiu $t6, $t8, 3 -/* 0D49BC 800D3DBC 01C17824 */ and $t7, $t6, $at -/* 0D49C0 800D3DC0 25F90004 */ addiu $t9, $t7, 4 -/* 0D49C4 800D3DC4 ACD90000 */ sw $t9, ($a2) -/* 0D49C8 800D3DC8 8F2EFFFC */ lw $t6, -4($t9) -/* 0D49CC 800D3DCC 8E18002C */ lw $t8, 0x2c($s0) -/* 0D49D0 800D3DD0 1000004B */ b .L800D3F00 -/* 0D49D4 800D3DD4 ADD80000 */ sw $t8, ($t6) -/* 0D49D8 800D3DD8 2401004C */ li $at, 76 -.L800D3DDC: -/* 0D49DC 800D3DDC 5441000E */ bnel $v0, $at, .L800D3E18 -/* 0D49E0 800D3DE0 8CCF0000 */ lw $t7, ($a2) -/* 0D49E4 800D3DE4 8CCF0000 */ lw $t7, ($a2) -/* 0D49E8 800D3DE8 2401FFFC */ li $at, -4 -/* 0D49EC 800D3DEC 25F90003 */ addiu $t9, $t7, 3 -/* 0D49F0 800D3DF0 0321C024 */ and $t8, $t9, $at -/* 0D49F4 800D3DF4 270E0004 */ addiu $t6, $t8, 4 -/* 0D49F8 800D3DF8 ACCE0000 */ sw $t6, ($a2) -/* 0D49FC 800D3DFC 8DCEFFFC */ lw $t6, -4($t6) -/* 0D4A00 800D3E00 8E0F002C */ lw $t7, 0x2c($s0) -/* 0D4A04 800D3E04 24180000 */ li $t8, 0 -/* 0D4A08 800D3E08 ADD80000 */ sw $t8, ($t6) -/* 0D4A0C 800D3E0C 1000003C */ b .L800D3F00 -/* 0D4A10 800D3E10 ADCF0004 */ sw $t7, 4($t6) -/* 0D4A14 800D3E14 8CCF0000 */ lw $t7, ($a2) -.L800D3E18: -/* 0D4A18 800D3E18 2401FFFC */ li $at, -4 -/* 0D4A1C 800D3E1C 25F80003 */ addiu $t8, $t7, 3 -/* 0D4A20 800D3E20 0301C824 */ and $t9, $t8, $at -/* 0D4A24 800D3E24 272E0004 */ addiu $t6, $t9, 4 -/* 0D4A28 800D3E28 ACCE0000 */ sw $t6, ($a2) -/* 0D4A2C 800D3E2C 8DD8FFFC */ lw $t8, -4($t6) -/* 0D4A30 800D3E30 8E0F002C */ lw $t7, 0x2c($s0) -/* 0D4A34 800D3E34 10000032 */ b .L800D3F00 -/* 0D4A38 800D3E38 AF0F0000 */ sw $t7, ($t8) -/* 0D4A3C 800D3E3C 8CD90000 */ lw $t9, ($a2) -/* 0D4A40 800D3E40 2401FFFC */ li $at, -4 -/* 0D4A44 800D3E44 02002025 */ move $a0, $s0 -/* 0D4A48 800D3E48 272E0003 */ addiu $t6, $t9, 3 -/* 0D4A4C 800D3E4C 01C17824 */ and $t7, $t6, $at -/* 0D4A50 800D3E50 25F80004 */ addiu $t8, $t7, 4 -/* 0D4A54 800D3E54 ACD80000 */ sw $t8, ($a2) -/* 0D4A58 800D3E58 8F0EFFFC */ lw $t6, -4($t8) -/* 0D4A5C 800D3E5C 8E0F000C */ lw $t7, 0xc($s0) -/* 0D4A60 800D3E60 24050078 */ li $a1, 120 -/* 0D4A64 800D3E64 000EC7C3 */ sra $t8, $t6, 0x1f -/* 0D4A68 800D3E68 AE0E0004 */ sw $t6, 4($s0) -/* 0D4A6C 800D3E6C 01E77021 */ addu $t6, $t7, $a3 -/* 0D4A70 800D3E70 AE180000 */ sw $t8, ($s0) -/* 0D4A74 800D3E74 0C0359C0 */ jal func_800D6700 -/* 0D4A78 800D3E78 AE0E0008 */ sw $t6, 8($s0) -/* 0D4A7C 800D3E7C 10000021 */ b .L800D3F04 -/* 0D4A80 800D3E80 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D4A84 800D3E84 8CD80000 */ lw $t8, ($a2) -/* 0D4A88 800D3E88 2401FFFC */ li $at, -4 -/* 0D4A8C 800D3E8C 27190003 */ addiu $t9, $t8, 3 -/* 0D4A90 800D3E90 03217824 */ and $t7, $t9, $at -/* 0D4A94 800D3E94 25EE0004 */ addiu $t6, $t7, 4 -/* 0D4A98 800D3E98 ACCE0000 */ sw $t6, ($a2) -/* 0D4A9C 800D3E9C 8DC4FFFC */ lw $a0, -4($t6) -/* 0D4AA0 800D3EA0 0C033867 */ jal strlen -/* 0D4AA4 800D3EA4 AE040008 */ sw $a0, 8($s0) -/* 0D4AA8 800D3EA8 8E030024 */ lw $v1, 0x24($s0) -/* 0D4AAC 800D3EAC AE020014 */ sw $v0, 0x14($s0) -/* 0D4AB0 800D3EB0 04600013 */ bltz $v1, .L800D3F00 -/* 0D4AB4 800D3EB4 0062082A */ slt $at, $v1, $v0 -/* 0D4AB8 800D3EB8 50200012 */ beql $at, $zero, .L800D3F04 -/* 0D4ABC 800D3EBC 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D4AC0 800D3EC0 1000000F */ b .L800D3F00 -/* 0D4AC4 800D3EC4 AE030014 */ sw $v1, 0x14($s0) -/* 0D4AC8 800D3EC8 8E18000C */ lw $t8, 0xc($s0) -.L800D3ECC: -/* 0D4ACC 800D3ECC 240E0025 */ li $t6, 37 -/* 0D4AD0 800D3ED0 00F8C821 */ addu $t9, $a3, $t8 -/* 0D4AD4 800D3ED4 A32E0000 */ sb $t6, ($t9) -/* 0D4AD8 800D3ED8 8E0F000C */ lw $t7, 0xc($s0) -/* 0D4ADC 800D3EDC 25F80001 */ addiu $t8, $t7, 1 -/* 0D4AE0 800D3EE0 10000007 */ b .L800D3F00 -/* 0D4AE4 800D3EE4 AE18000C */ sw $t8, 0xc($s0) -.L800D3EE8: -/* 0D4AE8 800D3EE8 8E0E000C */ lw $t6, 0xc($s0) -.L800D3EEC: -/* 0D4AEC 800D3EEC 00EEC821 */ addu $t9, $a3, $t6 -/* 0D4AF0 800D3EF0 A3250000 */ sb $a1, ($t9) -/* 0D4AF4 800D3EF4 8E0F000C */ lw $t7, 0xc($s0) -/* 0D4AF8 800D3EF8 25F80001 */ addiu $t8, $t7, 1 -/* 0D4AFC 800D3EFC AE18000C */ sw $t8, 0xc($s0) -.L800D3F00: -/* 0D4B00 800D3F00 8FBF0014 */ lw $ra, 0x14($sp) -.L800D3F04: -/* 0D4B04 800D3F04 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0D4B08 800D3F08 03E00008 */ jr $ra -/* 0D4B0C 800D3F0C 00000000 */ nop - -glabel func_800D3F10 -/* 0D4B10 800D3F10 27BDFF20 */ addiu $sp, $sp, -0xe0 -/* 0D4B14 800D3F14 AFB70034 */ sw $s7, 0x34($sp) -/* 0D4B18 800D3F18 AFB60030 */ sw $s6, 0x30($sp) -/* 0D4B1C 800D3F1C AFB5002C */ sw $s5, 0x2c($sp) -/* 0D4B20 800D3F20 AFBE0038 */ sw $fp, 0x38($sp) -/* 0D4B24 800D3F24 AFB40028 */ sw $s4, 0x28($sp) -/* 0D4B28 800D3F28 AFB30024 */ sw $s3, 0x24($sp) -/* 0D4B2C 800D3F2C AFA700EC */ sw $a3, 0xec($sp) -/* 0D4B30 800D3F30 3C15800E */ lui $s5, %hi(D_800E48E4) # $s5, 0x800e -/* 0D4B34 800D3F34 3C16800F */ lui $s6, %hi(D_800E96C4) # $s6, 0x800f -/* 0D4B38 800D3F38 3C17800E */ lui $s7, %hi(D_800E48C0) # $s7, 0x800e -/* 0D4B3C 800D3F3C 00C03825 */ move $a3, $a2 -/* 0D4B40 800D3F40 00A09825 */ move $s3, $a1 -/* 0D4B44 800D3F44 0080A025 */ move $s4, $a0 -/* 0D4B48 800D3F48 AFBF003C */ sw $ra, 0x3c($sp) -/* 0D4B4C 800D3F4C AFB20020 */ sw $s2, 0x20($sp) -/* 0D4B50 800D3F50 AFB1001C */ sw $s1, 0x1c($sp) -/* 0D4B54 800D3F54 AFB00018 */ sw $s0, 0x18($sp) -/* 0D4B58 800D3F58 AFA600E8 */ sw $a2, 0xe8($sp) -/* 0D4B5C 800D3F5C AFA000D4 */ sw $zero, 0xd4($sp) -/* 0D4B60 800D3F60 26F748C0 */ addiu $s7, %lo(D_800E48C0) # addiu $s7, $s7, 0x48c0 -/* 0D4B64 800D3F64 26D696C4 */ addiu $s6, %lo(D_800E96C4) # addiu $s6, $s6, -0x693c -/* 0D4B68 800D3F68 26B548E4 */ addiu $s5, %lo(D_800E48E4) # addiu $s5, $s5, 0x48e4 -/* 0D4B6C 800D3F6C 241E000A */ li $fp, 10 -.L800D3F70: -/* 0D4B70 800D3F70 90F00000 */ lbu $s0, ($a3) -/* 0D4B74 800D3F74 24F20001 */ addiu $s2, $a3, 1 -/* 0D4B78 800D3F78 24030025 */ li $v1, 37 -/* 0D4B7C 800D3F7C 1A000009 */ blez $s0, .L800D3FA4 -/* 0D4B80 800D3F80 02602025 */ move $a0, $s3 -.L800D3F84: -/* 0D4B84 800D3F84 54700004 */ bnel $v1, $s0, .L800D3F98 -/* 0D4B88 800D3F88 92500000 */ lbu $s0, ($s2) -/* 0D4B8C 800D3F8C 10000005 */ b .L800D3FA4 -/* 0D4B90 800D3F90 2652FFFF */ addiu $s2, $s2, -1 -/* 0D4B94 800D3F94 92500000 */ lbu $s0, ($s2) -.L800D3F98: -/* 0D4B98 800D3F98 26520001 */ addiu $s2, $s2, 1 -/* 0D4B9C 800D3F9C 1E00FFF9 */ bgtz $s0, .L800D3F84 -/* 0D4BA0 800D3FA0 00000000 */ nop -.L800D3FA4: -/* 0D4BA4 800D3FA4 02471023 */ subu $v0, $s2, $a3 -/* 0D4BA8 800D3FA8 1840000C */ blez $v0, .L800D3FDC -/* 0D4BAC 800D3FAC 00E02825 */ move $a1, $a3 -/* 0D4BB0 800D3FB0 00408825 */ move $s1, $v0 -/* 0D4BB4 800D3FB4 0280F809 */ jalr $s4 -/* 0D4BB8 800D3FB8 00403025 */ move $a2, $v0 -/* 0D4BBC 800D3FBC 10400005 */ beqz $v0, .L800D3FD4 -/* 0D4BC0 800D3FC0 00409825 */ move $s3, $v0 -/* 0D4BC4 800D3FC4 8FAE00D4 */ lw $t6, 0xd4($sp) -/* 0D4BC8 800D3FC8 01D17821 */ addu $t7, $t6, $s1 -/* 0D4BCC 800D3FCC 10000003 */ b .L800D3FDC -/* 0D4BD0 800D3FD0 AFAF00D4 */ sw $t7, 0xd4($sp) -.L800D3FD4: -/* 0D4BD4 800D3FD4 10000153 */ b .L800D4524 -/* 0D4BD8 800D3FD8 8FA200D4 */ lw $v0, 0xd4($sp) -.L800D3FDC: -/* 0D4BDC 800D3FDC 16000003 */ bnez $s0, .L800D3FEC -/* 0D4BE0 800D3FE0 26520001 */ addiu $s2, $s2, 1 -/* 0D4BE4 800D3FE4 1000014F */ b .L800D4524 -/* 0D4BE8 800D3FE8 8FA200D4 */ lw $v0, 0xd4($sp) -.L800D3FEC: -/* 0D4BEC 800D3FEC AFA000D8 */ sw $zero, 0xd8($sp) -/* 0D4BF0 800D3FF0 92450000 */ lbu $a1, ($s2) -/* 0D4BF4 800D3FF4 0C033871 */ jal strchr -/* 0D4BF8 800D3FF8 02C02025 */ move $a0, $s6 -/* 0D4BFC 800D3FFC 1040000F */ beqz $v0, .L800D403C -/* 0D4C00 800D4000 00408025 */ move $s0, $v0 -.L800D4004: -/* 0D4C04 800D4004 0216C823 */ subu $t9, $s0, $s6 -/* 0D4C08 800D4008 00197080 */ sll $t6, $t9, 2 -/* 0D4C0C 800D400C 3C0F800F */ lui $t7, 0x800f -/* 0D4C10 800D4010 01EE7821 */ addu $t7, $t7, $t6 -/* 0D4C14 800D4014 8DEF96CC */ lw $t7, -0x6934($t7) -/* 0D4C18 800D4018 8FB800D8 */ lw $t8, 0xd8($sp) -/* 0D4C1C 800D401C 26520001 */ addiu $s2, $s2, 1 -/* 0D4C20 800D4020 02C02025 */ move $a0, $s6 -/* 0D4C24 800D4024 030FC825 */ or $t9, $t8, $t7 -/* 0D4C28 800D4028 AFB900D8 */ sw $t9, 0xd8($sp) -/* 0D4C2C 800D402C 0C033871 */ jal strchr -/* 0D4C30 800D4030 92450000 */ lbu $a1, ($s2) -/* 0D4C34 800D4034 1440FFF3 */ bnez $v0, .L800D4004 -/* 0D4C38 800D4038 00408025 */ move $s0, $v0 -.L800D403C: -/* 0D4C3C 800D403C 924E0000 */ lbu $t6, ($s2) -/* 0D4C40 800D4040 2402002A */ li $v0, 42 -/* 0D4C44 800D4044 8FB800EC */ lw $t8, 0xec($sp) -/* 0D4C48 800D4048 144E0011 */ bne $v0, $t6, .L800D4090 -/* 0D4C4C 800D404C 3C04800F */ lui $a0, %hi(D_800E96C0) # $a0, 0x800f -/* 0D4C50 800D4050 270F0003 */ addiu $t7, $t8, 3 -/* 0D4C54 800D4054 2401FFFC */ li $at, -4 -/* 0D4C58 800D4058 01E1C824 */ and $t9, $t7, $at -/* 0D4C5C 800D405C 272E0004 */ addiu $t6, $t9, 4 -/* 0D4C60 800D4060 AFAE00EC */ sw $t6, 0xec($sp) -/* 0D4C64 800D4064 8F380000 */ lw $t8, ($t9) -/* 0D4C68 800D4068 26520001 */ addiu $s2, $s2, 1 -/* 0D4C6C 800D406C 07010006 */ bgez $t8, .L800D4088 -/* 0D4C70 800D4070 AFB800D0 */ sw $t8, 0xd0($sp) -/* 0D4C74 800D4074 8FAE00D8 */ lw $t6, 0xd8($sp) -/* 0D4C78 800D4078 00187823 */ negu $t7, $t8 -/* 0D4C7C 800D407C AFAF00D0 */ sw $t7, 0xd0($sp) -/* 0D4C80 800D4080 35D90004 */ ori $t9, $t6, 4 -/* 0D4C84 800D4084 AFB900D8 */ sw $t9, 0xd8($sp) -.L800D4088: -/* 0D4C88 800D4088 10000018 */ b .L800D40EC -/* 0D4C8C 800D408C 92450000 */ lbu $a1, ($s2) -.L800D4090: -/* 0D4C90 800D4090 AFA000D0 */ sw $zero, 0xd0($sp) -/* 0D4C94 800D4094 92450000 */ lbu $a1, ($s2) -/* 0D4C98 800D4098 28A10030 */ slti $at, $a1, 0x30 -/* 0D4C9C 800D409C 14200013 */ bnez $at, .L800D40EC -/* 0D4CA0 800D40A0 28A1003A */ slti $at, $a1, 0x3a -/* 0D4CA4 800D40A4 50200012 */ beql $at, $zero, .L800D40F0 -/* 0D4CA8 800D40A8 2401002E */ li $at, 46 -/* 0D4CAC 800D40AC 8FB800D0 */ lw $t8, 0xd0($sp) -.L800D40B0: -/* 0D4CB0 800D40B0 2B0103E7 */ slti $at, $t8, 0x3e7 -/* 0D4CB4 800D40B4 50200007 */ beql $at, $zero, .L800D40D4 -/* 0D4CB8 800D40B8 92450001 */ lbu $a1, 1($s2) -/* 0D4CBC 800D40BC 031E0019 */ multu $t8, $fp -/* 0D4CC0 800D40C0 00007812 */ mflo $t7 -/* 0D4CC4 800D40C4 00AF7021 */ addu $t6, $a1, $t7 -/* 0D4CC8 800D40C8 25D9FFD0 */ addiu $t9, $t6, -0x30 -/* 0D4CCC 800D40CC AFB900D0 */ sw $t9, 0xd0($sp) -/* 0D4CD0 800D40D0 92450001 */ lbu $a1, 1($s2) -.L800D40D4: -/* 0D4CD4 800D40D4 26520001 */ addiu $s2, $s2, 1 -/* 0D4CD8 800D40D8 28A10030 */ slti $at, $a1, 0x30 -/* 0D4CDC 800D40DC 14200003 */ bnez $at, .L800D40EC -/* 0D4CE0 800D40E0 28A1003A */ slti $at, $a1, 0x3a -/* 0D4CE4 800D40E4 5420FFF2 */ bnezl $at, .L800D40B0 -/* 0D4CE8 800D40E8 8FB800D0 */ lw $t8, 0xd0($sp) -.L800D40EC: -/* 0D4CEC 800D40EC 2401002E */ li $at, 46 -.L800D40F0: -/* 0D4CF0 800D40F0 10A10004 */ beq $a1, $at, .L800D4104 -/* 0D4CF4 800D40F4 2418FFFF */ li $t8, -1 -/* 0D4CF8 800D40F8 AFB800CC */ sw $t8, 0xcc($sp) -/* 0D4CFC 800D40FC 10000026 */ b .L800D4198 -/* 0D4D00 800D4100 92450000 */ lbu $a1, ($s2) -.L800D4104: -/* 0D4D04 800D4104 924F0001 */ lbu $t7, 1($s2) -/* 0D4D08 800D4108 8FAE00EC */ lw $t6, 0xec($sp) -/* 0D4D0C 800D410C 26520001 */ addiu $s2, $s2, 1 -/* 0D4D10 800D4110 144F000A */ bne $v0, $t7, .L800D413C -/* 0D4D14 800D4114 25D90003 */ addiu $t9, $t6, 3 -/* 0D4D18 800D4118 2401FFFC */ li $at, -4 -/* 0D4D1C 800D411C 0321C024 */ and $t8, $t9, $at -/* 0D4D20 800D4120 270F0004 */ addiu $t7, $t8, 4 -/* 0D4D24 800D4124 AFAF00EC */ sw $t7, 0xec($sp) -/* 0D4D28 800D4128 8F0E0000 */ lw $t6, ($t8) -/* 0D4D2C 800D412C 26520001 */ addiu $s2, $s2, 1 -/* 0D4D30 800D4130 AFAE00CC */ sw $t6, 0xcc($sp) -/* 0D4D34 800D4134 10000018 */ b .L800D4198 -/* 0D4D38 800D4138 92450000 */ lbu $a1, ($s2) -.L800D413C: -/* 0D4D3C 800D413C AFA000CC */ sw $zero, 0xcc($sp) -/* 0D4D40 800D4140 92450000 */ lbu $a1, ($s2) -/* 0D4D44 800D4144 28A10030 */ slti $at, $a1, 0x30 -/* 0D4D48 800D4148 14200013 */ bnez $at, .L800D4198 -/* 0D4D4C 800D414C 28A1003A */ slti $at, $a1, 0x3a -/* 0D4D50 800D4150 10200011 */ beqz $at, .L800D4198 -/* 0D4D54 800D4154 00000000 */ nop -/* 0D4D58 800D4158 8FB900CC */ lw $t9, 0xcc($sp) -.L800D415C: -/* 0D4D5C 800D415C 2B2103E7 */ slti $at, $t9, 0x3e7 -/* 0D4D60 800D4160 50200007 */ beql $at, $zero, .L800D4180 -/* 0D4D64 800D4164 92450001 */ lbu $a1, 1($s2) -/* 0D4D68 800D4168 033E0019 */ multu $t9, $fp -/* 0D4D6C 800D416C 00007812 */ mflo $t7 -/* 0D4D70 800D4170 00AFC021 */ addu $t8, $a1, $t7 -/* 0D4D74 800D4174 270EFFD0 */ addiu $t6, $t8, -0x30 -/* 0D4D78 800D4178 AFAE00CC */ sw $t6, 0xcc($sp) -/* 0D4D7C 800D417C 92450001 */ lbu $a1, 1($s2) -.L800D4180: -/* 0D4D80 800D4180 26520001 */ addiu $s2, $s2, 1 -/* 0D4D84 800D4184 28A10030 */ slti $at, $a1, 0x30 -/* 0D4D88 800D4188 14200003 */ bnez $at, .L800D4198 -/* 0D4D8C 800D418C 28A1003A */ slti $at, $a1, 0x3a -/* 0D4D90 800D4190 5420FFF2 */ bnezl $at, .L800D415C -/* 0D4D94 800D4194 8FB900CC */ lw $t9, 0xcc($sp) -.L800D4198: -/* 0D4D98 800D4198 0C033871 */ jal strchr -/* 0D4D9C 800D419C 248496C0 */ addiu $a0, %lo(D_800E96C0) # addiu $a0, $a0, -0x6940 -/* 0D4DA0 800D41A0 10400005 */ beqz $v0, .L800D41B8 -/* 0D4DA4 800D41A4 27B000A8 */ addiu $s0, $sp, 0xa8 -/* 0D4DA8 800D41A8 92590000 */ lbu $t9, ($s2) -/* 0D4DAC 800D41AC 26520001 */ addiu $s2, $s2, 1 -/* 0D4DB0 800D41B0 10000002 */ b .L800D41BC -/* 0D4DB4 800D41B4 A3B900DC */ sb $t9, 0xdc($sp) -.L800D41B8: -/* 0D4DB8 800D41B8 A3A000DC */ sb $zero, 0xdc($sp) -.L800D41BC: -/* 0D4DBC 800D41BC 93AF00DC */ lbu $t7, 0xdc($sp) -/* 0D4DC0 800D41C0 2402006C */ li $v0, 108 -/* 0D4DC4 800D41C4 27A600EC */ addiu $a2, $sp, 0xec -/* 0D4DC8 800D41C8 144F0007 */ bne $v0, $t7, .L800D41E8 -/* 0D4DCC 800D41CC 27A7007C */ addiu $a3, $sp, 0x7c -/* 0D4DD0 800D41D0 92580000 */ lbu $t8, ($s2) -/* 0D4DD4 800D41D4 240E004C */ li $t6, 76 -/* 0D4DD8 800D41D8 14580003 */ bne $v0, $t8, .L800D41E8 -/* 0D4DDC 800D41DC 00000000 */ nop -/* 0D4DE0 800D41E0 A3AE00DC */ sb $t6, 0xdc($sp) -/* 0D4DE4 800D41E4 26520001 */ addiu $s2, $s2, 1 -.L800D41E8: -/* 0D4DE8 800D41E8 0C034E28 */ jal func_800D38A0 -/* 0D4DEC 800D41EC 92450000 */ lbu $a1, ($s2) -/* 0D4DF0 800D41F0 8FB900D0 */ lw $t9, 0xd0($sp) -/* 0D4DF4 800D41F4 8FAF00B4 */ lw $t7, 0xb4($sp) -/* 0D4DF8 800D41F8 8FAE00B8 */ lw $t6, 0xb8($sp) -/* 0D4DFC 800D41FC 032FC023 */ subu $t8, $t9, $t7 -/* 0D4E00 800D4200 8FAF00BC */ lw $t7, 0xbc($sp) -/* 0D4E04 800D4204 030EC823 */ subu $t9, $t8, $t6 -/* 0D4E08 800D4208 8FAE00C0 */ lw $t6, 0xc0($sp) -/* 0D4E0C 800D420C 032FC023 */ subu $t8, $t9, $t7 -/* 0D4E10 800D4210 8FAF00C4 */ lw $t7, 0xc4($sp) -/* 0D4E14 800D4214 030EC823 */ subu $t9, $t8, $t6 -/* 0D4E18 800D4218 8FAE00C8 */ lw $t6, 0xc8($sp) -/* 0D4E1C 800D421C 032FC023 */ subu $t8, $t9, $t7 -/* 0D4E20 800D4220 8FAF00D8 */ lw $t7, 0xd8($sp) -/* 0D4E24 800D4224 030EC823 */ subu $t9, $t8, $t6 -/* 0D4E28 800D4228 AFB900D0 */ sw $t9, 0xd0($sp) -/* 0D4E2C 800D422C 31F80004 */ andi $t8, $t7, 4 -/* 0D4E30 800D4230 1700001A */ bnez $t8, .L800D429C -/* 0D4E34 800D4234 0019702A */ slt $t6, $zero, $t9 -/* 0D4E38 800D4238 51C00019 */ beql $t6, $zero, .L800D42A0 -/* 0D4E3C 800D423C 8FB900B4 */ lw $t9, 0xb4($sp) -/* 0D4E40 800D4240 11C00016 */ beqz $t6, .L800D429C -/* 0D4E44 800D4244 03208825 */ move $s1, $t9 -/* 0D4E48 800D4248 2E210021 */ sltiu $at, $s1, 0x21 -.L800D424C: -/* 0D4E4C 800D424C 14200003 */ bnez $at, .L800D425C -/* 0D4E50 800D4250 02208025 */ move $s0, $s1 -/* 0D4E54 800D4254 10000001 */ b .L800D425C -/* 0D4E58 800D4258 24100020 */ li $s0, 32 -.L800D425C: -/* 0D4E5C 800D425C 1A00000C */ blez $s0, .L800D4290 -/* 0D4E60 800D4260 02602025 */ move $a0, $s3 -/* 0D4E64 800D4264 02E02825 */ move $a1, $s7 -/* 0D4E68 800D4268 0280F809 */ jalr $s4 -/* 0D4E6C 800D426C 02003025 */ move $a2, $s0 -/* 0D4E70 800D4270 10400005 */ beqz $v0, .L800D4288 -/* 0D4E74 800D4274 00409825 */ move $s3, $v0 -/* 0D4E78 800D4278 8FAF00D4 */ lw $t7, 0xd4($sp) -/* 0D4E7C 800D427C 01F0C021 */ addu $t8, $t7, $s0 -/* 0D4E80 800D4280 10000003 */ b .L800D4290 -/* 0D4E84 800D4284 AFB800D4 */ sw $t8, 0xd4($sp) -.L800D4288: -/* 0D4E88 800D4288 100000A6 */ b .L800D4524 -/* 0D4E8C 800D428C 8FA200D4 */ lw $v0, 0xd4($sp) -.L800D4290: -/* 0D4E90 800D4290 02308823 */ subu $s1, $s1, $s0 -/* 0D4E94 800D4294 5E20FFED */ bgtzl $s1, .L800D424C -/* 0D4E98 800D4298 2E210021 */ sltiu $at, $s1, 0x21 -.L800D429C: -/* 0D4E9C 800D429C 8FB900B4 */ lw $t9, 0xb4($sp) -.L800D42A0: -/* 0D4EA0 800D42A0 02602025 */ move $a0, $s3 -/* 0D4EA4 800D42A4 27A5007C */ addiu $a1, $sp, 0x7c -/* 0D4EA8 800D42A8 5B20000D */ blezl $t9, .L800D42E0 -/* 0D4EAC 800D42AC 8FB900B8 */ lw $t9, 0xb8($sp) -/* 0D4EB0 800D42B0 0280F809 */ jalr $s4 -/* 0D4EB4 800D42B4 03203025 */ move $a2, $t9 -/* 0D4EB8 800D42B8 10400006 */ beqz $v0, .L800D42D4 -/* 0D4EBC 800D42BC 00409825 */ move $s3, $v0 -/* 0D4EC0 800D42C0 8FAE00D4 */ lw $t6, 0xd4($sp) -/* 0D4EC4 800D42C4 8FAF00B4 */ lw $t7, 0xb4($sp) -/* 0D4EC8 800D42C8 01CFC021 */ addu $t8, $t6, $t7 -/* 0D4ECC 800D42CC 10000003 */ b .L800D42DC -/* 0D4ED0 800D42D0 AFB800D4 */ sw $t8, 0xd4($sp) -.L800D42D4: -/* 0D4ED4 800D42D4 10000093 */ b .L800D4524 -/* 0D4ED8 800D42D8 8FA200D4 */ lw $v0, 0xd4($sp) -.L800D42DC: -/* 0D4EDC 800D42DC 8FB900B8 */ lw $t9, 0xb8($sp) -.L800D42E0: -/* 0D4EE0 800D42E0 0019702A */ slt $t6, $zero, $t9 -/* 0D4EE4 800D42E4 51C00019 */ beql $t6, $zero, .L800D434C -/* 0D4EE8 800D42E8 8FB900BC */ lw $t9, 0xbc($sp) -/* 0D4EEC 800D42EC 11C00016 */ beqz $t6, .L800D4348 -/* 0D4EF0 800D42F0 03208825 */ move $s1, $t9 -/* 0D4EF4 800D42F4 2E210021 */ sltiu $at, $s1, 0x21 -.L800D42F8: -/* 0D4EF8 800D42F8 14200003 */ bnez $at, .L800D4308 -/* 0D4EFC 800D42FC 02208025 */ move $s0, $s1 -/* 0D4F00 800D4300 10000001 */ b .L800D4308 -/* 0D4F04 800D4304 24100020 */ li $s0, 32 -.L800D4308: -/* 0D4F08 800D4308 1A00000C */ blez $s0, .L800D433C -/* 0D4F0C 800D430C 02602025 */ move $a0, $s3 -/* 0D4F10 800D4310 02A02825 */ move $a1, $s5 -/* 0D4F14 800D4314 0280F809 */ jalr $s4 -/* 0D4F18 800D4318 02003025 */ move $a2, $s0 -/* 0D4F1C 800D431C 10400005 */ beqz $v0, .L800D4334 -/* 0D4F20 800D4320 00409825 */ move $s3, $v0 -/* 0D4F24 800D4324 8FAF00D4 */ lw $t7, 0xd4($sp) -/* 0D4F28 800D4328 01F0C021 */ addu $t8, $t7, $s0 -/* 0D4F2C 800D432C 10000003 */ b .L800D433C -/* 0D4F30 800D4330 AFB800D4 */ sw $t8, 0xd4($sp) -.L800D4334: -/* 0D4F34 800D4334 1000007B */ b .L800D4524 -/* 0D4F38 800D4338 8FA200D4 */ lw $v0, 0xd4($sp) -.L800D433C: -/* 0D4F3C 800D433C 02308823 */ subu $s1, $s1, $s0 -/* 0D4F40 800D4340 5E20FFED */ bgtzl $s1, .L800D42F8 -/* 0D4F44 800D4344 2E210021 */ sltiu $at, $s1, 0x21 -.L800D4348: -/* 0D4F48 800D4348 8FB900BC */ lw $t9, 0xbc($sp) -.L800D434C: -/* 0D4F4C 800D434C 02602025 */ move $a0, $s3 -/* 0D4F50 800D4350 8FA500B0 */ lw $a1, 0xb0($sp) -/* 0D4F54 800D4354 5B20000D */ blezl $t9, .L800D438C -/* 0D4F58 800D4358 8FB900C0 */ lw $t9, 0xc0($sp) -/* 0D4F5C 800D435C 0280F809 */ jalr $s4 -/* 0D4F60 800D4360 03203025 */ move $a2, $t9 -/* 0D4F64 800D4364 10400006 */ beqz $v0, .L800D4380 -/* 0D4F68 800D4368 00409825 */ move $s3, $v0 -/* 0D4F6C 800D436C 8FAE00D4 */ lw $t6, 0xd4($sp) -/* 0D4F70 800D4370 8FAF00BC */ lw $t7, 0xbc($sp) -/* 0D4F74 800D4374 01CFC021 */ addu $t8, $t6, $t7 -/* 0D4F78 800D4378 10000003 */ b .L800D4388 -/* 0D4F7C 800D437C AFB800D4 */ sw $t8, 0xd4($sp) -.L800D4380: -/* 0D4F80 800D4380 10000068 */ b .L800D4524 -/* 0D4F84 800D4384 8FA200D4 */ lw $v0, 0xd4($sp) -.L800D4388: -/* 0D4F88 800D4388 8FB900C0 */ lw $t9, 0xc0($sp) -.L800D438C: -/* 0D4F8C 800D438C 0019702A */ slt $t6, $zero, $t9 -/* 0D4F90 800D4390 51C00019 */ beql $t6, $zero, .L800D43F8 -/* 0D4F94 800D4394 8FB900C4 */ lw $t9, 0xc4($sp) -/* 0D4F98 800D4398 11C00016 */ beqz $t6, .L800D43F4 -/* 0D4F9C 800D439C 03208825 */ move $s1, $t9 -/* 0D4FA0 800D43A0 2E210021 */ sltiu $at, $s1, 0x21 -.L800D43A4: -/* 0D4FA4 800D43A4 14200003 */ bnez $at, .L800D43B4 -/* 0D4FA8 800D43A8 02208025 */ move $s0, $s1 -/* 0D4FAC 800D43AC 10000001 */ b .L800D43B4 -/* 0D4FB0 800D43B0 24100020 */ li $s0, 32 -.L800D43B4: -/* 0D4FB4 800D43B4 1A00000C */ blez $s0, .L800D43E8 -/* 0D4FB8 800D43B8 02602025 */ move $a0, $s3 -/* 0D4FBC 800D43BC 02A02825 */ move $a1, $s5 -/* 0D4FC0 800D43C0 0280F809 */ jalr $s4 -/* 0D4FC4 800D43C4 02003025 */ move $a2, $s0 -/* 0D4FC8 800D43C8 10400005 */ beqz $v0, .L800D43E0 -/* 0D4FCC 800D43CC 00409825 */ move $s3, $v0 -/* 0D4FD0 800D43D0 8FAF00D4 */ lw $t7, 0xd4($sp) -/* 0D4FD4 800D43D4 01F0C021 */ addu $t8, $t7, $s0 -/* 0D4FD8 800D43D8 10000003 */ b .L800D43E8 -/* 0D4FDC 800D43DC AFB800D4 */ sw $t8, 0xd4($sp) -.L800D43E0: -/* 0D4FE0 800D43E0 10000050 */ b .L800D4524 -/* 0D4FE4 800D43E4 8FA200D4 */ lw $v0, 0xd4($sp) -.L800D43E8: -/* 0D4FE8 800D43E8 02308823 */ subu $s1, $s1, $s0 -/* 0D4FEC 800D43EC 5E20FFED */ bgtzl $s1, .L800D43A4 -/* 0D4FF0 800D43F0 2E210021 */ sltiu $at, $s1, 0x21 -.L800D43F4: -/* 0D4FF4 800D43F4 8FB900C4 */ lw $t9, 0xc4($sp) -.L800D43F8: -/* 0D4FF8 800D43F8 02602025 */ move $a0, $s3 -/* 0D4FFC 800D43FC 8FAE00B0 */ lw $t6, 0xb0($sp) -/* 0D5000 800D4400 1B20000D */ blez $t9, .L800D4438 -/* 0D5004 800D4404 8FAF00BC */ lw $t7, 0xbc($sp) -/* 0D5008 800D4408 01CF2821 */ addu $a1, $t6, $t7 -/* 0D500C 800D440C 0280F809 */ jalr $s4 -/* 0D5010 800D4410 03203025 */ move $a2, $t9 -/* 0D5014 800D4414 10400006 */ beqz $v0, .L800D4430 -/* 0D5018 800D4418 00409825 */ move $s3, $v0 -/* 0D501C 800D441C 8FB800D4 */ lw $t8, 0xd4($sp) -/* 0D5020 800D4420 8FAE00C4 */ lw $t6, 0xc4($sp) -/* 0D5024 800D4424 030E7821 */ addu $t7, $t8, $t6 -/* 0D5028 800D4428 10000003 */ b .L800D4438 -/* 0D502C 800D442C AFAF00D4 */ sw $t7, 0xd4($sp) -.L800D4430: -/* 0D5030 800D4430 1000003C */ b .L800D4524 -/* 0D5034 800D4434 8FA200D4 */ lw $v0, 0xd4($sp) -.L800D4438: -/* 0D5038 800D4438 8FB900C8 */ lw $t9, 0xc8($sp) -/* 0D503C 800D443C 0019C02A */ slt $t8, $zero, $t9 -/* 0D5040 800D4440 53000019 */ beql $t8, $zero, .L800D44A8 -/* 0D5044 800D4444 8FB900D8 */ lw $t9, 0xd8($sp) -/* 0D5048 800D4448 13000016 */ beqz $t8, .L800D44A4 -/* 0D504C 800D444C 03208825 */ move $s1, $t9 -/* 0D5050 800D4450 2E210021 */ sltiu $at, $s1, 0x21 -.L800D4454: -/* 0D5054 800D4454 14200003 */ bnez $at, .L800D4464 -/* 0D5058 800D4458 02208025 */ move $s0, $s1 -/* 0D505C 800D445C 10000001 */ b .L800D4464 -/* 0D5060 800D4460 24100020 */ li $s0, 32 -.L800D4464: -/* 0D5064 800D4464 1A00000C */ blez $s0, .L800D4498 -/* 0D5068 800D4468 02602025 */ move $a0, $s3 -/* 0D506C 800D446C 02A02825 */ move $a1, $s5 -/* 0D5070 800D4470 0280F809 */ jalr $s4 -/* 0D5074 800D4474 02003025 */ move $a2, $s0 -/* 0D5078 800D4478 10400005 */ beqz $v0, .L800D4490 -/* 0D507C 800D447C 00409825 */ move $s3, $v0 -/* 0D5080 800D4480 8FAE00D4 */ lw $t6, 0xd4($sp) -/* 0D5084 800D4484 01D07821 */ addu $t7, $t6, $s0 -/* 0D5088 800D4488 10000003 */ b .L800D4498 -/* 0D508C 800D448C AFAF00D4 */ sw $t7, 0xd4($sp) -.L800D4490: -/* 0D5090 800D4490 10000024 */ b .L800D4524 -/* 0D5094 800D4494 8FA200D4 */ lw $v0, 0xd4($sp) -.L800D4498: -/* 0D5098 800D4498 02308823 */ subu $s1, $s1, $s0 -/* 0D509C 800D449C 5E20FFED */ bgtzl $s1, .L800D4454 -/* 0D50A0 800D44A0 2E210021 */ sltiu $at, $s1, 0x21 -.L800D44A4: -/* 0D50A4 800D44A4 8FB900D8 */ lw $t9, 0xd8($sp) -.L800D44A8: -/* 0D50A8 800D44A8 8FAE00D0 */ lw $t6, 0xd0($sp) -/* 0D50AC 800D44AC 33380004 */ andi $t8, $t9, 4 -/* 0D50B0 800D44B0 1300001A */ beqz $t8, .L800D451C -/* 0D50B4 800D44B4 000E782A */ slt $t7, $zero, $t6 -/* 0D50B8 800D44B8 11E00018 */ beqz $t7, .L800D451C -/* 0D50BC 800D44BC 00000000 */ nop -/* 0D50C0 800D44C0 11E00016 */ beqz $t7, .L800D451C -/* 0D50C4 800D44C4 01C08825 */ move $s1, $t6 -/* 0D50C8 800D44C8 2E210021 */ sltiu $at, $s1, 0x21 -.L800D44CC: -/* 0D50CC 800D44CC 14200003 */ bnez $at, .L800D44DC -/* 0D50D0 800D44D0 02208025 */ move $s0, $s1 -/* 0D50D4 800D44D4 10000001 */ b .L800D44DC -/* 0D50D8 800D44D8 24100020 */ li $s0, 32 -.L800D44DC: -/* 0D50DC 800D44DC 1A00000C */ blez $s0, .L800D4510 -/* 0D50E0 800D44E0 02602025 */ move $a0, $s3 -/* 0D50E4 800D44E4 02E02825 */ move $a1, $s7 -/* 0D50E8 800D44E8 0280F809 */ jalr $s4 -/* 0D50EC 800D44EC 02003025 */ move $a2, $s0 -/* 0D50F0 800D44F0 10400005 */ beqz $v0, .L800D4508 -/* 0D50F4 800D44F4 00409825 */ move $s3, $v0 -/* 0D50F8 800D44F8 8FB900D4 */ lw $t9, 0xd4($sp) -/* 0D50FC 800D44FC 0330C021 */ addu $t8, $t9, $s0 -/* 0D5100 800D4500 10000003 */ b .L800D4510 -/* 0D5104 800D4504 AFB800D4 */ sw $t8, 0xd4($sp) -.L800D4508: -/* 0D5108 800D4508 10000006 */ b .L800D4524 -/* 0D510C 800D450C 8FA200D4 */ lw $v0, 0xd4($sp) -.L800D4510: -/* 0D5110 800D4510 02308823 */ subu $s1, $s1, $s0 -/* 0D5114 800D4514 5E20FFED */ bgtzl $s1, .L800D44CC -/* 0D5118 800D4518 2E210021 */ sltiu $at, $s1, 0x21 -.L800D451C: -/* 0D511C 800D451C 1000FE94 */ b .L800D3F70 -/* 0D5120 800D4520 26470001 */ addiu $a3, $s2, 1 -.L800D4524: -/* 0D5124 800D4524 8FBF003C */ lw $ra, 0x3c($sp) -/* 0D5128 800D4528 8FB00018 */ lw $s0, 0x18($sp) -/* 0D512C 800D452C 8FB1001C */ lw $s1, 0x1c($sp) -/* 0D5130 800D4530 8FB20020 */ lw $s2, 0x20($sp) -/* 0D5134 800D4534 8FB30024 */ lw $s3, 0x24($sp) -/* 0D5138 800D4538 8FB40028 */ lw $s4, 0x28($sp) -/* 0D513C 800D453C 8FB5002C */ lw $s5, 0x2c($sp) -/* 0D5140 800D4540 8FB60030 */ lw $s6, 0x30($sp) -/* 0D5144 800D4544 8FB70034 */ lw $s7, 0x34($sp) -/* 0D5148 800D4548 8FBE0038 */ lw $fp, 0x38($sp) -/* 0D514C 800D454C 03E00008 */ jr $ra -/* 0D5150 800D4550 27BD00E0 */ addiu $sp, $sp, 0xe0 - -/* 0D5154 800D4554 00000000 */ nop -/* 0D5158 800D4558 00000000 */ nop -/* 0D515C 800D455C 00000000 */ nop -glabel func_800D4560 -/* 0D5160 800D4560 40846000 */ mtc0 $a0, $12 -/* 0D5164 800D4564 00000000 */ nop -/* 0D5168 800D4568 03E00008 */ jr $ra -/* 0D516C 800D456C 00000000 */ nop - -glabel func_800D4570 -/* 0D5170 800D4570 40026000 */ mfc0 $v0, $12 -/* 0D5174 800D4574 03E00008 */ jr $ra -/* 0D5178 800D4578 00000000 */ nop - -/* 0D517C 800D457C 00000000 */ nop -glabel func_800D4580 -/* 0D5180 800D4580 4442F800 */ cfc1 $v0, $31 -/* 0D5184 800D4584 44C4F800 */ ctc1 $a0, $31 -/* 0D5188 800D4588 03E00008 */ jr $ra -/* 0D518C 800D458C 00000000 */ nop - -glabel func_800D4590 -/* 0D5190 800D4590 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0D5194 800D4594 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D5198 800D4598 AFA40018 */ sw $a0, 0x18($sp) -/* 0D519C 800D459C 0C0354B0 */ jal func_800D52C0 -/* 0D51A0 800D45A0 AFA5001C */ sw $a1, 0x1c($sp) -/* 0D51A4 800D45A4 10400003 */ beqz $v0, .L800D45B4 -/* 0D51A8 800D45A8 00000000 */ nop -/* 0D51AC 800D45AC 10000008 */ b .L800D45D0 -/* 0D51B0 800D45B0 2402FFFF */ li $v0, -1 -.L800D45B4: -/* 0D51B4 800D45B4 8FAE0018 */ lw $t6, 0x18($sp) -/* 0D51B8 800D45B8 3C01A000 */ lui $at, 0xa000 -/* 0D51BC 800D45BC 8FB9001C */ lw $t9, 0x1c($sp) -/* 0D51C0 800D45C0 01C17825 */ or $t7, $t6, $at -/* 0D51C4 800D45C4 8DF80000 */ lw $t8, ($t7) -/* 0D51C8 800D45C8 00001025 */ move $v0, $zero -/* 0D51CC 800D45CC AF380000 */ sw $t8, ($t9) -.L800D45D0: -/* 0D51D0 800D45D0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D51D4 800D45D4 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0D51D8 800D45D8 03E00008 */ jr $ra -/* 0D51DC 800D45DC 00000000 */ nop - -glabel func_800D45E0 -/* 0D51E0 800D45E0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0D51E4 800D45E4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D51E8 800D45E8 AFA40018 */ sw $a0, 0x18($sp) -/* 0D51EC 800D45EC 0C0354B0 */ jal func_800D52C0 -/* 0D51F0 800D45F0 AFA5001C */ sw $a1, 0x1c($sp) -/* 0D51F4 800D45F4 10400003 */ beqz $v0, .L800D4604 -/* 0D51F8 800D45F8 00000000 */ nop -/* 0D51FC 800D45FC 10000007 */ b .L800D461C -/* 0D5200 800D4600 2402FFFF */ li $v0, -1 -.L800D4604: -/* 0D5204 800D4604 8FAF0018 */ lw $t7, 0x18($sp) -/* 0D5208 800D4608 8FAE001C */ lw $t6, 0x1c($sp) -/* 0D520C 800D460C 3C01A000 */ lui $at, 0xa000 -/* 0D5210 800D4610 01E1C025 */ or $t8, $t7, $at -/* 0D5214 800D4614 00001025 */ move $v0, $zero -/* 0D5218 800D4618 AF0E0000 */ sw $t6, ($t8) -.L800D461C: -/* 0D521C 800D461C 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D5220 800D4620 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0D5224 800D4624 03E00008 */ jr $ra -/* 0D5228 800D4628 00000000 */ nop - -/* 0D522C 800D462C 00000000 */ nop -glabel func_800D4630 -/* 0D5230 800D4630 18A00011 */ blez $a1, .L800D4678 -/* 0D5234 800D4634 00000000 */ nop -/* 0D5238 800D4638 240B2000 */ li $t3, 8192 -/* 0D523C 800D463C 00AB082B */ sltu $at, $a1, $t3 -/* 0D5240 800D4640 1020000F */ beqz $at, .L800D4680 -/* 0D5244 800D4644 00000000 */ nop -/* 0D5248 800D4648 00804025 */ move $t0, $a0 -/* 0D524C 800D464C 00854821 */ addu $t1, $a0, $a1 -/* 0D5250 800D4650 0109082B */ sltu $at, $t0, $t1 -/* 0D5254 800D4654 10200008 */ beqz $at, .L800D4678 -/* 0D5258 800D4658 00000000 */ nop -/* 0D525C 800D465C 310A000F */ andi $t2, $t0, 0xf -/* 0D5260 800D4660 2529FFF0 */ addiu $t1, $t1, -0x10 -/* 0D5264 800D4664 010A4023 */ subu $t0, $t0, $t2 -.L800D4668: -/* 0D5268 800D4668 BD190000 */ cache 0x19, ($t0) -/* 0D526C 800D466C 0109082B */ sltu $at, $t0, $t1 -/* 0D5270 800D4670 1420FFFD */ bnez $at, .L800D4668 -/* 0D5274 800D4674 25080010 */ addiu $t0, $t0, 0x10 -.L800D4678: -/* 0D5278 800D4678 03E00008 */ jr $ra -/* 0D527C 800D467C 00000000 */ nop - -.L800D4680: -/* 0D5280 800D4680 3C088000 */ lui $t0, %hi(D_80000010) # $t0, 0x8000 -/* 0D5284 800D4684 010B4821 */ addu $t1, $t0, $t3 -/* 0D5288 800D4688 2529FFF0 */ addiu $t1, $t1, -0x10 -.L800D468C: -/* 0D528C 800D468C BD010000 */ cache 1, ($t0) -/* 0D5290 800D4690 0109082B */ sltu $at, $t0, $t1 -/* 0D5294 800D4694 1420FFFD */ bnez $at, .L800D468C -/* 0D5298 800D4698 25080010 */ addiu $t0, %lo(D_80000010) # addiu $t0, $t0, 0x10 -/* 0D529C 800D469C 03E00008 */ jr $ra -/* 0D52A0 800D46A0 00000000 */ nop - -/* 0D52A4 800D46A4 00000000 */ nop -/* 0D52A8 800D46A8 00000000 */ nop -/* 0D52AC 800D46AC 00000000 */ nop -glabel func_800D46B0 -/* 0D52B0 800D46B0 18A00011 */ blez $a1, .L800D46F8 -/* 0D52B4 800D46B4 00000000 */ nop -/* 0D52B8 800D46B8 240B4000 */ li $t3, 16384 -/* 0D52BC 800D46BC 00AB082B */ sltu $at, $a1, $t3 -/* 0D52C0 800D46C0 1020000F */ beqz $at, .L800D4700 -/* 0D52C4 800D46C4 00000000 */ nop -/* 0D52C8 800D46C8 00804025 */ move $t0, $a0 -/* 0D52CC 800D46CC 00854821 */ addu $t1, $a0, $a1 -/* 0D52D0 800D46D0 0109082B */ sltu $at, $t0, $t1 -/* 0D52D4 800D46D4 10200008 */ beqz $at, .L800D46F8 -/* 0D52D8 800D46D8 00000000 */ nop -/* 0D52DC 800D46DC 310A001F */ andi $t2, $t0, 0x1f -/* 0D52E0 800D46E0 2529FFE0 */ addiu $t1, $t1, -0x20 -/* 0D52E4 800D46E4 010A4023 */ subu $t0, $t0, $t2 -.L800D46E8: -/* 0D52E8 800D46E8 BD100000 */ cache 0x10, ($t0) -/* 0D52EC 800D46EC 0109082B */ sltu $at, $t0, $t1 -/* 0D52F0 800D46F0 1420FFFD */ bnez $at, .L800D46E8 -/* 0D52F4 800D46F4 25080020 */ addiu $t0, $t0, 0x20 -.L800D46F8: -/* 0D52F8 800D46F8 03E00008 */ jr $ra -/* 0D52FC 800D46FC 00000000 */ nop - -.L800D4700: -/* 0D5300 800D4700 3C088000 */ lui $t0, %hi(D_80000020) # $t0, 0x8000 -/* 0D5304 800D4704 010B4821 */ addu $t1, $t0, $t3 -/* 0D5308 800D4708 2529FFE0 */ addiu $t1, $t1, -0x20 -.L800D470C: -/* 0D530C 800D470C BD000000 */ cache 0, ($t0) -/* 0D5310 800D4710 0109082B */ sltu $at, $t0, $t1 -/* 0D5314 800D4714 1420FFFD */ bnez $at, .L800D470C -/* 0D5318 800D4718 25080020 */ addiu $t0, %lo(D_80000020) # addiu $t0, $t0, 0x20 -/* 0D531C 800D471C 03E00008 */ jr $ra -/* 0D5320 800D4720 00000000 */ nop - -/* 0D5324 800D4724 00000000 */ nop -/* 0D5328 800D4728 00000000 */ nop -/* 0D532C 800D472C 00000000 */ nop -glabel func_800D4730 -/* 0D5330 800D4730 40085000 */ mfc0 $t0, $10 -/* 0D5334 800D4734 2409001F */ li $t1, 31 -/* 0D5338 800D4738 40890000 */ mtc0 $t1, $0 -/* 0D533C 800D473C 40802800 */ mtc0 $zero, $5 -/* 0D5340 800D4740 240A0017 */ li $t2, 23 -/* 0D5344 800D4744 3C09C000 */ lui $t1, 0xc000 -/* 0D5348 800D4748 40895000 */ mtc0 $t1, $10 -/* 0D534C 800D474C 3C098000 */ lui $t1, 0x8000 -/* 0D5350 800D4750 00095982 */ srl $t3, $t1, 6 -/* 0D5354 800D4754 016A5825 */ or $t3, $t3, $t2 -/* 0D5358 800D4758 408B1000 */ mtc0 $t3, $2 -/* 0D535C 800D475C 24090001 */ li $t1, 1 -/* 0D5360 800D4760 40891800 */ mtc0 $t1, $3 -/* 0D5364 800D4764 00000000 */ nop -/* 0D5368 800D4768 42000002 */ tlbwi -/* 0D536C 800D476C 00000000 */ nop -/* 0D5370 800D4770 00000000 */ nop -/* 0D5374 800D4774 00000000 */ nop -/* 0D5378 800D4778 00000000 */ nop -/* 0D537C 800D477C 40885000 */ mtc0 $t0, $10 -/* 0D5380 800D4780 03E00008 */ jr $ra -/* 0D5384 800D4784 00000000 */ nop - -/* 0D5388 800D4788 00000000 */ nop -/* 0D538C 800D478C 00000000 */ nop -glabel func_800D4790 -/* 0D5390 800D4790 3C0EA460 */ lui $t6, %hi(D_A4600010) # $t6, 0xa460 -/* 0D5394 800D4794 8DC60010 */ lw $a2, %lo(D_A4600010)($t6) -/* 0D5398 800D4798 27BDFFF8 */ addiu $sp, $sp, -8 -/* 0D539C 800D479C 30CF0003 */ andi $t7, $a2, 3 -/* 0D53A0 800D47A0 11E00006 */ beqz $t7, .L800D47BC -/* 0D53A4 800D47A4 00000000 */ nop -.L800D47A8: -/* 0D53A8 800D47A8 3C18A460 */ lui $t8, %hi(D_A4600010) # $t8, 0xa460 -/* 0D53AC 800D47AC 8F060010 */ lw $a2, %lo(D_A4600010)($t8) -/* 0D53B0 800D47B0 30D90003 */ andi $t9, $a2, 3 -/* 0D53B4 800D47B4 1720FFFC */ bnez $t9, .L800D47A8 -/* 0D53B8 800D47B8 00000000 */ nop -.L800D47BC: -/* 0D53BC 800D47BC 3C088000 */ lui $t0, %hi(D_80000308) # $t0, 0x8000 -/* 0D53C0 800D47C0 8D080308 */ lw $t0, %lo(D_80000308)($t0) -/* 0D53C4 800D47C4 3C01A000 */ lui $at, 0xa000 -/* 0D53C8 800D47C8 00001025 */ move $v0, $zero -/* 0D53CC 800D47CC 01044825 */ or $t1, $t0, $a0 -/* 0D53D0 800D47D0 01215025 */ or $t2, $t1, $at -/* 0D53D4 800D47D4 8D4B0000 */ lw $t3, ($t2) -/* 0D53D8 800D47D8 27BD0008 */ addiu $sp, $sp, 8 -/* 0D53DC 800D47DC 03E00008 */ jr $ra -/* 0D53E0 800D47E0 ACAB0000 */ sw $t3, ($a1) - -/* 0D53E4 800D47E4 00000000 */ nop -/* 0D53E8 800D47E8 00000000 */ nop -/* 0D53EC 800D47EC 00000000 */ nop -glabel func_800D47F0 -/* 0D53F0 800D47F0 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0D53F4 800D47F4 AFBF001C */ sw $ra, 0x1c($sp) -/* 0D53F8 800D47F8 AFA40028 */ sw $a0, 0x28($sp) -/* 0D53FC 800D47FC AFA5002C */ sw $a1, 0x2c($sp) -/* 0D5400 800D4800 0C034958 */ jal __osDisableInt -/* 0D5404 800D4804 AFB00018 */ sw $s0, 0x18($sp) -/* 0D5408 800D4808 8FAF0028 */ lw $t7, 0x28($sp) -/* 0D540C 800D480C 8FAE002C */ lw $t6, 0x2c($sp) -/* 0D5410 800D4810 3C01800E */ lui $at, 0x800e -/* 0D5414 800D4814 000FC080 */ sll $t8, $t7, 2 -/* 0D5418 800D4818 00408025 */ move $s0, $v0 -/* 0D541C 800D481C 00380821 */ addu $at, $at, $t8 -/* 0D5420 800D4820 02002025 */ move $a0, $s0 -/* 0D5424 800D4824 0C034960 */ jal __osRestoreInt -/* 0D5428 800D4828 AC2E48A0 */ sw $t6, 0x48a0($at) -/* 0D542C 800D482C 8FBF001C */ lw $ra, 0x1c($sp) -/* 0D5430 800D4830 8FB00018 */ lw $s0, 0x18($sp) -/* 0D5434 800D4834 27BD0028 */ addiu $sp, $sp, 0x28 -/* 0D5438 800D4838 03E00008 */ jr $ra -/* 0D543C 800D483C 00000000 */ nop - -glabel func_800D4840 -/* 0D5440 800D4840 3C014780 */ li $at, 0x47800000 # 65536.000000 -/* 0D5444 800D4844 44810000 */ mtc1 $at, $f0 -/* 0D5448 800D4848 00A01025 */ move $v0, $a1 -/* 0D544C 800D484C 24A30020 */ addiu $v1, $a1, 0x20 -/* 0D5450 800D4850 00003025 */ move $a2, $zero -/* 0D5454 800D4854 00803825 */ move $a3, $a0 -/* 0D5458 800D4858 240C0004 */ li $t4, 4 -/* 0D545C 800D485C 240B0002 */ li $t3, 2 -/* 0D5460 800D4860 3C0AFFFF */ lui $t2, 0xffff -.L800D4864: -/* 0D5464 800D4864 00002025 */ move $a0, $zero -/* 0D5468 800D4868 00E04025 */ move $t0, $a3 -/* 0D546C 800D486C C50E0004 */ lwc1 $f14, 4($t0) -/* 0D5470 800D4870 24840001 */ addiu $a0, $a0, 1 -/* 0D5474 800D4874 C5120000 */ lwc1 $f18, ($t0) -/* 0D5478 800D4878 46007402 */ mul.s $f16, $f14, $f0 -/* 0D547C 800D487C 108B0019 */ beq $a0, $t3, .L800D48E4 -/* 0D5480 800D4880 00000000 */ nop -.L800D4884: -/* 0D5484 800D4884 46009382 */ mul.s $f14, $f18, $f0 -/* 0D5488 800D4888 24840001 */ addiu $a0, $a0, 1 -/* 0D548C 800D488C 24420004 */ addiu $v0, $v0, 4 -/* 0D5490 800D4890 24630004 */ addiu $v1, $v1, 4 -/* 0D5494 800D4894 25080008 */ addiu $t0, $t0, 8 -/* 0D5498 800D4898 4600830D */ trunc.w.s $f12, $f16 -/* 0D549C 800D489C 4600738D */ trunc.w.s $f14, $f14 -/* 0D54A0 800D48A0 44096000 */ mfc1 $t1, $f12 -/* 0D54A4 800D48A4 44057000 */ mfc1 $a1, $f14 -/* 0D54A8 800D48A8 0009CC03 */ sra $t9, $t1, 0x10 -/* 0D54AC 800D48AC 332DFFFF */ andi $t5, $t9, 0xffff -/* 0D54B0 800D48B0 00AAC024 */ and $t8, $a1, $t2 -/* 0D54B4 800D48B4 030D7025 */ or $t6, $t8, $t5 -/* 0D54B8 800D48B8 00057C00 */ sll $t7, $a1, 0x10 -/* 0D54BC 800D48BC 01EAC824 */ and $t9, $t7, $t2 -/* 0D54C0 800D48C0 AC4EFFFC */ sw $t6, -4($v0) -/* 0D54C4 800D48C4 3138FFFF */ andi $t8, $t1, 0xffff -/* 0D54C8 800D48C8 03386825 */ or $t5, $t9, $t8 -/* 0D54CC 800D48CC AC6DFFFC */ sw $t5, -4($v1) -/* 0D54D0 800D48D0 C50E0004 */ lwc1 $f14, 4($t0) -/* 0D54D4 800D48D4 C5120000 */ lwc1 $f18, ($t0) -/* 0D54D8 800D48D8 46007402 */ mul.s $f16, $f14, $f0 -/* 0D54DC 800D48DC 148BFFE9 */ bne $a0, $t3, .L800D4884 -/* 0D54E0 800D48E0 00000000 */ nop -.L800D48E4: -/* 0D54E4 800D48E4 46009382 */ mul.s $f14, $f18, $f0 -/* 0D54E8 800D48E8 25080008 */ addiu $t0, $t0, 8 -/* 0D54EC 800D48EC 24420004 */ addiu $v0, $v0, 4 -/* 0D54F0 800D48F0 24630004 */ addiu $v1, $v1, 4 -/* 0D54F4 800D48F4 4600830D */ trunc.w.s $f12, $f16 -/* 0D54F8 800D48F8 4600738D */ trunc.w.s $f14, $f14 -/* 0D54FC 800D48FC 44096000 */ mfc1 $t1, $f12 -/* 0D5500 800D4900 44057000 */ mfc1 $a1, $f14 -/* 0D5504 800D4904 0009CC03 */ sra $t9, $t1, 0x10 -/* 0D5508 800D4908 332DFFFF */ andi $t5, $t9, 0xffff -/* 0D550C 800D490C 00AAC024 */ and $t8, $a1, $t2 -/* 0D5510 800D4910 030D7025 */ or $t6, $t8, $t5 -/* 0D5514 800D4914 00057C00 */ sll $t7, $a1, 0x10 -/* 0D5518 800D4918 01EAC824 */ and $t9, $t7, $t2 -/* 0D551C 800D491C 3138FFFF */ andi $t8, $t1, 0xffff -/* 0D5520 800D4920 AC4EFFFC */ sw $t6, -4($v0) -/* 0D5524 800D4924 03386825 */ or $t5, $t9, $t8 -/* 0D5528 800D4928 AC6DFFFC */ sw $t5, -4($v1) -/* 0D552C 800D492C 24C60001 */ addiu $a2, $a2, 1 -/* 0D5530 800D4930 14CCFFCC */ bne $a2, $t4, .L800D4864 -/* 0D5534 800D4934 24E70010 */ addiu $a3, $a3, 0x10 -/* 0D5538 800D4938 03E00008 */ jr $ra -/* 0D553C 800D493C 00000000 */ nop - -glabel func_800D4940 -/* 0D5540 800D4940 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0D5544 800D4944 00801825 */ move $v1, $a0 -/* 0D5548 800D4948 44810000 */ mtc1 $at, $f0 -/* 0D554C 800D494C 44801000 */ mtc1 $zero, $f2 -/* 0D5550 800D4950 24040001 */ li $a0, 1 -/* 0D5554 800D4954 00001025 */ move $v0, $zero -/* 0D5558 800D4958 24070004 */ li $a3, 4 -/* 0D555C 800D495C 24060003 */ li $a2, 3 -/* 0D5560 800D4960 24050002 */ li $a1, 2 -.L800D4964: -/* 0D5564 800D4964 54400004 */ bnezl $v0, .L800D4978 -/* 0D5568 800D4968 E4620000 */ swc1 $f2, ($v1) -/* 0D556C 800D496C 10000002 */ b .L800D4978 -/* 0D5570 800D4970 E4600000 */ swc1 $f0, ($v1) -/* 0D5574 800D4974 E4620000 */ swc1 $f2, ($v1) -.L800D4978: -/* 0D5578 800D4978 54440004 */ bnel $v0, $a0, .L800D498C -/* 0D557C 800D497C E4620004 */ swc1 $f2, 4($v1) -/* 0D5580 800D4980 10000002 */ b .L800D498C -/* 0D5584 800D4984 E4600004 */ swc1 $f0, 4($v1) -/* 0D5588 800D4988 E4620004 */ swc1 $f2, 4($v1) -.L800D498C: -/* 0D558C 800D498C 54450004 */ bnel $v0, $a1, .L800D49A0 -/* 0D5590 800D4990 E4620008 */ swc1 $f2, 8($v1) -/* 0D5594 800D4994 10000002 */ b .L800D49A0 -/* 0D5598 800D4998 E4600008 */ swc1 $f0, 8($v1) -/* 0D559C 800D499C E4620008 */ swc1 $f2, 8($v1) -.L800D49A0: -/* 0D55A0 800D49A0 54460004 */ bnel $v0, $a2, .L800D49B4 -/* 0D55A4 800D49A4 E462000C */ swc1 $f2, 0xc($v1) -/* 0D55A8 800D49A8 10000002 */ b .L800D49B4 -/* 0D55AC 800D49AC E460000C */ swc1 $f0, 0xc($v1) -/* 0D55B0 800D49B0 E462000C */ swc1 $f2, 0xc($v1) -.L800D49B4: -/* 0D55B4 800D49B4 24420001 */ addiu $v0, $v0, 1 -/* 0D55B8 800D49B8 1447FFEA */ bne $v0, $a3, .L800D4964 -/* 0D55BC 800D49BC 24630010 */ addiu $v1, $v1, 0x10 -/* 0D55C0 800D49C0 03E00008 */ jr $ra -/* 0D55C4 800D49C4 00000000 */ nop - -/* 0D55C8 800D49C8 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 0D55CC 800D49CC AFBF0014 */ sw $ra, 0x14($sp) -/* 0D55D0 800D49D0 AFA40058 */ sw $a0, 0x58($sp) -/* 0D55D4 800D49D4 0C035250 */ jal func_800D4940 -/* 0D55D8 800D49D8 27A40018 */ addiu $a0, $sp, 0x18 -/* 0D55DC 800D49DC 27A40018 */ addiu $a0, $sp, 0x18 -/* 0D55E0 800D49E0 0C035210 */ jal func_800D4840 -/* 0D55E4 800D49E4 8FA50058 */ lw $a1, 0x58($sp) -/* 0D55E8 800D49E8 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D55EC 800D49EC 27BD0058 */ addiu $sp, $sp, 0x58 -/* 0D55F0 800D49F0 03E00008 */ jr $ra -/* 0D55F4 800D49F4 00000000 */ nop - -/* 0D55F8 800D49F8 3C014780 */ li $at, 0x47800000 # 65536.000000 -/* 0D55FC 800D49FC 44810000 */ mtc1 $at, $f0 -/* 0D5600 800D4A00 27BDFFF0 */ addiu $sp, $sp, -0x10 -/* 0D5604 800D4A04 00A01025 */ move $v0, $a1 -/* 0D5608 800D4A08 24A30020 */ addiu $v1, $a1, 0x20 -/* 0D560C 800D4A0C 00003025 */ move $a2, $zero -/* 0D5610 800D4A10 00804025 */ move $t0, $a0 -/* 0D5614 800D4A14 240C0004 */ li $t4, 4 -/* 0D5618 800D4A18 240B0002 */ li $t3, 2 -/* 0D561C 800D4A1C 3C0AFFFF */ lui $t2, 0xffff -.L800D4A20: -/* 0D5620 800D4A20 00002025 */ move $a0, $zero -/* 0D5624 800D4A24 01004825 */ move $t1, $t0 -.L800D4A28: -/* 0D5628 800D4A28 8C6E0000 */ lw $t6, ($v1) -/* 0D562C 800D4A2C 8C590000 */ lw $t9, ($v0) -/* 0D5630 800D4A30 24840001 */ addiu $a0, $a0, 1 -/* 0D5634 800D4A34 000E7C02 */ srl $t7, $t6, 0x10 -/* 0D5638 800D4A38 31F8FFFF */ andi $t8, $t7, 0xffff -/* 0D563C 800D4A3C 032A6824 */ and $t5, $t9, $t2 -/* 0D5640 800D4A40 030D7025 */ or $t6, $t8, $t5 -/* 0D5644 800D4A44 AFAE0004 */ sw $t6, 4($sp) -/* 0D5648 800D4A48 8C6F0000 */ lw $t7, ($v1) -/* 0D564C 800D4A4C 8C580000 */ lw $t8, ($v0) -/* 0D5650 800D4A50 8FA50004 */ lw $a1, 4($sp) -/* 0D5654 800D4A54 31F9FFFF */ andi $t9, $t7, 0xffff -/* 0D5658 800D4A58 00186C00 */ sll $t5, $t8, 0x10 -/* 0D565C 800D4A5C 44859000 */ mtc1 $a1, $f18 -/* 0D5660 800D4A60 01AA7024 */ and $t6, $t5, $t2 -/* 0D5664 800D4A64 032E3825 */ or $a3, $t9, $t6 -/* 0D5668 800D4A68 468094A0 */ cvt.s.w $f18, $f18 -/* 0D566C 800D4A6C 44878000 */ mtc1 $a3, $f16 -/* 0D5670 800D4A70 AFA70000 */ sw $a3, ($sp) -/* 0D5674 800D4A74 24420004 */ addiu $v0, $v0, 4 -/* 0D5678 800D4A78 24630004 */ addiu $v1, $v1, 4 -/* 0D567C 800D4A7C 46808420 */ cvt.s.w $f16, $f16 -/* 0D5680 800D4A80 25290008 */ addiu $t1, $t1, 8 -/* 0D5684 800D4A84 46009483 */ div.s $f18, $f18, $f0 -/* 0D5688 800D4A88 46008403 */ div.s $f16, $f16, $f0 -/* 0D568C 800D4A8C E532FFF8 */ swc1 $f18, -8($t1) -/* 0D5690 800D4A90 148BFFE5 */ bne $a0, $t3, .L800D4A28 -/* 0D5694 800D4A94 E530FFFC */ swc1 $f16, -4($t1) -/* 0D5698 800D4A98 24C60001 */ addiu $a2, $a2, 1 -/* 0D569C 800D4A9C 14CCFFE0 */ bne $a2, $t4, .L800D4A20 -/* 0D56A0 800D4AA0 25080010 */ addiu $t0, $t0, 0x10 -/* 0D56A4 800D4AA4 03E00008 */ jr $ra -/* 0D56A8 800D4AA8 27BD0010 */ addiu $sp, $sp, 0x10 - -/* 0D56AC 800D4AAC 00000000 */ nop -glabel cosf -/* 0D56B0 800D4AB0 E7AC0000 */ swc1 $f12, ($sp) -/* 0D56B4 800D4AB4 8FA20000 */ lw $v0, ($sp) -/* 0D56B8 800D4AB8 C7A60000 */ lwc1 $f6, ($sp) -/* 0D56BC 800D4ABC C7AA0000 */ lwc1 $f10, ($sp) -/* 0D56C0 800D4AC0 00027583 */ sra $t6, $v0, 0x16 -/* 0D56C4 800D4AC4 31CF01FF */ andi $t7, $t6, 0x1ff -/* 0D56C8 800D4AC8 29E10136 */ slti $at, $t7, 0x136 -/* 0D56CC 800D4ACC 50200049 */ beql $at, $zero, .L800D4BF4 -/* 0D56D0 800D4AD0 460A5032 */ c.eq.s $f10, $f10 -/* 0D56D4 800D4AD4 44802000 */ mtc1 $zero, $f4 -/* 0D56D8 800D4AD8 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 0D56DC 800D4ADC 44819800 */ mtc1 $at, $f19 -/* 0D56E0 800D4AE0 4606203C */ c.lt.s $f4, $f6 -/* 0D56E4 800D4AE4 C7A00000 */ lwc1 $f0, ($sp) -/* 0D56E8 800D4AE8 3C01800F */ lui $at, 0x800f -/* 0D56EC 800D4AEC 45020004 */ bc1fl .L800D4B00 -/* 0D56F0 800D4AF0 46000007 */ neg.s $f0, $f0 -/* 0D56F4 800D4AF4 10000002 */ b .L800D4B00 -/* 0D56F8 800D4AF8 46003006 */ mov.s $f0, $f6 -/* 0D56FC 800D4AFC 46000007 */ neg.s $f0, $f0 -.L800D4B00: -/* 0D5700 800D4B00 D42897E8 */ ldc1 $f8, -0x6818($at) -/* 0D5704 800D4B04 46000321 */ cvt.d.s $f12, $f0 -/* 0D5708 800D4B08 44809000 */ mtc1 $zero, $f18 -/* 0D570C 800D4B0C 46286282 */ mul.d $f10, $f12, $f8 -/* 0D5710 800D4B10 44802800 */ mtc1 $zero, $f5 -/* 0D5714 800D4B14 44802000 */ mtc1 $zero, $f4 -/* 0D5718 800D4B18 46325380 */ add.d $f14, $f10, $f18 -/* 0D571C 800D4B1C 462E203E */ c.le.d $f4, $f14 -/* 0D5720 800D4B20 00000000 */ nop -/* 0D5724 800D4B24 45020007 */ bc1fl .L800D4B44 -/* 0D5728 800D4B28 46327281 */ sub.d $f10, $f14, $f18 -/* 0D572C 800D4B2C 46327180 */ add.d $f6, $f14, $f18 -/* 0D5730 800D4B30 4620320D */ trunc.w.d $f8, $f6 -/* 0D5734 800D4B34 44024000 */ mfc1 $v0, $f8 -/* 0D5738 800D4B38 10000006 */ b .L800D4B54 -/* 0D573C 800D4B3C 44823000 */ mtc1 $v0, $f6 -/* 0D5740 800D4B40 46327281 */ sub.d $f10, $f14, $f18 -.L800D4B44: -/* 0D5744 800D4B44 4620510D */ trunc.w.d $f4, $f10 -/* 0D5748 800D4B48 44022000 */ mfc1 $v0, $f4 -/* 0D574C 800D4B4C 00000000 */ nop -/* 0D5750 800D4B50 44823000 */ mtc1 $v0, $f6 -.L800D4B54: -/* 0D5754 800D4B54 3C01800F */ lui $at, 0x800f -/* 0D5758 800D4B58 D42A97F0 */ ldc1 $f10, -0x6810($at) -/* 0D575C 800D4B5C 46803221 */ cvt.d.w $f8, $f6 -/* 0D5760 800D4B60 3C01800F */ lui $at, 0x800f -/* 0D5764 800D4B64 D42697F8 */ ldc1 $f6, -0x6808($at) -/* 0D5768 800D4B68 3C03800F */ lui $v1, %hi(D_800E97C0) # $v1, 0x800f -/* 0D576C 800D4B6C 246397C0 */ addiu $v1, %lo(D_800E97C0) # addiu $v1, $v1, -0x6840 -/* 0D5770 800D4B70 46324001 */ sub.d $f0, $f8, $f18 -/* 0D5774 800D4B74 30480001 */ andi $t0, $v0, 1 -/* 0D5778 800D4B78 462A0102 */ mul.d $f4, $f0, $f10 -/* 0D577C 800D4B7C D46A0020 */ ldc1 $f10, 0x20($v1) -/* 0D5780 800D4B80 46260202 */ mul.d $f8, $f0, $f6 -/* 0D5784 800D4B84 D4660018 */ ldc1 $f6, 0x18($v1) -/* 0D5788 800D4B88 46246081 */ sub.d $f2, $f12, $f4 -/* 0D578C 800D4B8C 46281081 */ sub.d $f2, $f2, $f8 -/* 0D5790 800D4B90 46221382 */ mul.d $f14, $f2, $f2 -/* 0D5794 800D4B94 00000000 */ nop -/* 0D5798 800D4B98 462E5102 */ mul.d $f4, $f10, $f14 -/* 0D579C 800D4B9C 46262200 */ add.d $f8, $f4, $f6 -/* 0D57A0 800D4BA0 D4640010 */ ldc1 $f4, 0x10($v1) -/* 0D57A4 800D4BA4 462E4282 */ mul.d $f10, $f8, $f14 -/* 0D57A8 800D4BA8 46245180 */ add.d $f6, $f10, $f4 -/* 0D57AC 800D4BAC D46A0008 */ ldc1 $f10, 8($v1) -/* 0D57B0 800D4BB0 462E3202 */ mul.d $f8, $f6, $f14 -/* 0D57B4 800D4BB4 15000007 */ bnez $t0, .L800D4BD4 -/* 0D57B8 800D4BB8 46285400 */ add.d $f16, $f10, $f8 -/* 0D57BC 800D4BBC 462E1102 */ mul.d $f4, $f2, $f14 -/* 0D57C0 800D4BC0 00000000 */ nop -/* 0D57C4 800D4BC4 46302182 */ mul.d $f6, $f4, $f16 -/* 0D57C8 800D4BC8 46223280 */ add.d $f10, $f6, $f2 -/* 0D57CC 800D4BCC 03E00008 */ jr $ra -/* 0D57D0 800D4BD0 46205020 */ cvt.s.d $f0, $f10 - -.L800D4BD4: -/* 0D57D4 800D4BD4 462E1202 */ mul.d $f8, $f2, $f14 -/* 0D57D8 800D4BD8 00000000 */ nop -/* 0D57DC 800D4BDC 46304102 */ mul.d $f4, $f8, $f16 -/* 0D57E0 800D4BE0 46222180 */ add.d $f6, $f4, $f2 -/* 0D57E4 800D4BE4 46203020 */ cvt.s.d $f0, $f6 -/* 0D57E8 800D4BE8 03E00008 */ jr $ra -/* 0D57EC 800D4BEC 46000007 */ neg.s $f0, $f0 - -/* 0D57F0 800D4BF0 460A5032 */ c.eq.s $f10, $f10 -.L800D4BF4: -/* 0D57F4 800D4BF4 3C01800F */ lui $at, 0x800f -/* 0D57F8 800D4BF8 45010004 */ bc1t .L800D4C0C -/* 0D57FC 800D4BFC 00000000 */ nop -/* 0D5800 800D4C00 3C01800F */ lui $at, 0x800f -/* 0D5804 800D4C04 03E00008 */ jr $ra -/* 0D5808 800D4C08 C42098C0 */ lwc1 $f0, -0x6740($at) - -.L800D4C0C: -/* 0D580C 800D4C0C C4209800 */ lwc1 $f0, -0x6800($at) -/* 0D5810 800D4C10 03E00008 */ jr $ra -/* 0D5814 800D4C14 00000000 */ nop - -/* 0D5818 800D4C18 00000000 */ nop -/* 0D581C 800D4C1C 00000000 */ nop -glabel sinf -/* 0D5820 800D4C20 E7AC0000 */ swc1 $f12, ($sp) -/* 0D5824 800D4C24 8FA20000 */ lw $v0, ($sp) -/* 0D5828 800D4C28 C7A40000 */ lwc1 $f4, ($sp) -/* 0D582C 800D4C2C 00021D83 */ sra $v1, $v0, 0x16 -/* 0D5830 800D4C30 306E01FF */ andi $t6, $v1, 0x1ff -/* 0D5834 800D4C34 29C100FF */ slti $at, $t6, 0xff -/* 0D5838 800D4C38 10200019 */ beqz $at, .L800D4CA0 -/* 0D583C 800D4C3C 01C01825 */ move $v1, $t6 -/* 0D5840 800D4C40 29C100E6 */ slti $at, $t6, 0xe6 -/* 0D5844 800D4C44 14200014 */ bnez $at, .L800D4C98 -/* 0D5848 800D4C48 460020A1 */ cvt.d.s $f2, $f4 -/* 0D584C 800D4C4C 46221302 */ mul.d $f12, $f2, $f2 -/* 0D5850 800D4C50 3C03800F */ lui $v1, %hi(D_800E9810) # $v1, 0x800f -/* 0D5854 800D4C54 24639810 */ addiu $v1, %lo(D_800E9810) # addiu $v1, $v1, -0x67f0 -/* 0D5858 800D4C58 D4660020 */ ldc1 $f6, 0x20($v1) -/* 0D585C 800D4C5C D46A0018 */ ldc1 $f10, 0x18($v1) -/* 0D5860 800D4C60 D4640010 */ ldc1 $f4, 0x10($v1) -/* 0D5864 800D4C64 462C3202 */ mul.d $f8, $f6, $f12 -/* 0D5868 800D4C68 462A4400 */ add.d $f16, $f8, $f10 -/* 0D586C 800D4C6C D46A0008 */ ldc1 $f10, 8($v1) -/* 0D5870 800D4C70 462C8482 */ mul.d $f18, $f16, $f12 -/* 0D5874 800D4C74 46249180 */ add.d $f6, $f18, $f4 -/* 0D5878 800D4C78 462C3202 */ mul.d $f8, $f6, $f12 -/* 0D587C 800D4C7C 46285380 */ add.d $f14, $f10, $f8 -/* 0D5880 800D4C80 462C1402 */ mul.d $f16, $f2, $f12 -/* 0D5884 800D4C84 00000000 */ nop -/* 0D5888 800D4C88 462E8482 */ mul.d $f18, $f16, $f14 -/* 0D588C 800D4C8C 46229100 */ add.d $f4, $f18, $f2 -/* 0D5890 800D4C90 03E00008 */ jr $ra -/* 0D5894 800D4C94 46202020 */ cvt.s.d $f0, $f4 - -.L800D4C98: -/* 0D5898 800D4C98 03E00008 */ jr $ra -/* 0D589C 800D4C9C C7A00000 */ lwc1 $f0, ($sp) - -.L800D4CA0: -/* 0D58A0 800D4CA0 28610136 */ slti $at, $v1, 0x136 -/* 0D58A4 800D4CA4 10200044 */ beqz $at, .L800D4DB8 -/* 0D58A8 800D4CA8 C7A40000 */ lwc1 $f4, ($sp) -/* 0D58AC 800D4CAC C7A60000 */ lwc1 $f6, ($sp) -/* 0D58B0 800D4CB0 3C01800F */ li $at, 0x800F0000 # -0.000000 -/* 0D58B4 800D4CB4 D42A9838 */ ldc1 $f10, -0x67c8($at) -/* 0D58B8 800D4CB8 460030A1 */ cvt.d.s $f2, $f6 -/* 0D58BC 800D4CBC 44804800 */ mtc1 $zero, $f9 -/* 0D58C0 800D4CC0 462A1002 */ mul.d $f0, $f2, $f10 -/* 0D58C4 800D4CC4 44804000 */ mtc1 $zero, $f8 -/* 0D58C8 800D4CC8 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 0D58CC 800D4CCC 4620403E */ c.le.d $f8, $f0 -/* 0D58D0 800D4CD0 00000000 */ nop -/* 0D58D4 800D4CD4 4502000B */ bc1fl .L800D4D04 -/* 0D58D8 800D4CD8 44813800 */ mtc1 $at, $f7 -/* 0D58DC 800D4CDC 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 0D58E0 800D4CE0 44818800 */ mtc1 $at, $f17 -/* 0D58E4 800D4CE4 44808000 */ mtc1 $zero, $f16 -/* 0D58E8 800D4CE8 00000000 */ nop -/* 0D58EC 800D4CEC 46300480 */ add.d $f18, $f0, $f16 -/* 0D58F0 800D4CF0 4620910D */ trunc.w.d $f4, $f18 -/* 0D58F4 800D4CF4 44022000 */ mfc1 $v0, $f4 -/* 0D58F8 800D4CF8 10000009 */ b .L800D4D20 -/* 0D58FC 800D4CFC 44828000 */ mtc1 $v0, $f16 -/* 0D5900 800D4D00 44813800 */ mtc1 $at, $f7 -.L800D4D04: -/* 0D5904 800D4D04 44803000 */ mtc1 $zero, $f6 -/* 0D5908 800D4D08 00000000 */ nop -/* 0D590C 800D4D0C 46260281 */ sub.d $f10, $f0, $f6 -/* 0D5910 800D4D10 4620520D */ trunc.w.d $f8, $f10 -/* 0D5914 800D4D14 44024000 */ mfc1 $v0, $f8 -/* 0D5918 800D4D18 00000000 */ nop -/* 0D591C 800D4D1C 44828000 */ mtc1 $v0, $f16 -.L800D4D20: -/* 0D5920 800D4D20 3C01800F */ lui $at, 0x800f -/* 0D5924 800D4D24 D4329840 */ ldc1 $f18, -0x67c0($at) -/* 0D5928 800D4D28 46808021 */ cvt.d.w $f0, $f16 -/* 0D592C 800D4D2C 3C01800F */ lui $at, 0x800f -/* 0D5930 800D4D30 D4269848 */ ldc1 $f6, -0x67b8($at) -/* 0D5934 800D4D34 3C03800F */ lui $v1, %hi(D_800E9810) # $v1, 0x800f -/* 0D5938 800D4D38 24639810 */ addiu $v1, %lo(D_800E9810) # addiu $v1, $v1, -0x67f0 -/* 0D593C 800D4D3C 46320102 */ mul.d $f4, $f0, $f18 -/* 0D5940 800D4D40 D4680020 */ ldc1 $f8, 0x20($v1) -/* 0D5944 800D4D44 D4720018 */ ldc1 $f18, 0x18($v1) -/* 0D5948 800D4D48 30590001 */ andi $t9, $v0, 1 -/* 0D594C 800D4D4C 46260282 */ mul.d $f10, $f0, $f6 -/* 0D5950 800D4D50 46241081 */ sub.d $f2, $f2, $f4 -/* 0D5954 800D4D54 462A1081 */ sub.d $f2, $f2, $f10 -/* 0D5958 800D4D58 D46A0010 */ ldc1 $f10, 0x10($v1) -/* 0D595C 800D4D5C 46221302 */ mul.d $f12, $f2, $f2 -/* 0D5960 800D4D60 00000000 */ nop -/* 0D5964 800D4D64 462C4402 */ mul.d $f16, $f8, $f12 -/* 0D5968 800D4D68 46328100 */ add.d $f4, $f16, $f18 -/* 0D596C 800D4D6C D4720008 */ ldc1 $f18, 8($v1) -/* 0D5970 800D4D70 462C2182 */ mul.d $f6, $f4, $f12 -/* 0D5974 800D4D74 462A3200 */ add.d $f8, $f6, $f10 -/* 0D5978 800D4D78 462C4402 */ mul.d $f16, $f8, $f12 -/* 0D597C 800D4D7C 17200007 */ bnez $t9, .L800D4D9C -/* 0D5980 800D4D80 46309380 */ add.d $f14, $f18, $f16 -/* 0D5984 800D4D84 462C1102 */ mul.d $f4, $f2, $f12 -/* 0D5988 800D4D88 00000000 */ nop -/* 0D598C 800D4D8C 462E2182 */ mul.d $f6, $f4, $f14 -/* 0D5990 800D4D90 46223280 */ add.d $f10, $f6, $f2 -/* 0D5994 800D4D94 03E00008 */ jr $ra -/* 0D5998 800D4D98 46205020 */ cvt.s.d $f0, $f10 - -.L800D4D9C: -/* 0D599C 800D4D9C 462C1202 */ mul.d $f8, $f2, $f12 -/* 0D59A0 800D4DA0 00000000 */ nop -/* 0D59A4 800D4DA4 462E4482 */ mul.d $f18, $f8, $f14 -/* 0D59A8 800D4DA8 46229400 */ add.d $f16, $f18, $f2 -/* 0D59AC 800D4DAC 46208020 */ cvt.s.d $f0, $f16 -/* 0D59B0 800D4DB0 03E00008 */ jr $ra -/* 0D59B4 800D4DB4 46000007 */ neg.s $f0, $f0 - -.L800D4DB8: -/* 0D59B8 800D4DB8 46042032 */ c.eq.s $f4, $f4 -/* 0D59BC 800D4DBC 3C01800F */ lui $at, 0x800f -/* 0D59C0 800D4DC0 45010004 */ bc1t .L800D4DD4 -/* 0D59C4 800D4DC4 00000000 */ nop -/* 0D59C8 800D4DC8 3C01800F */ lui $at, 0x800f -/* 0D59CC 800D4DCC 03E00008 */ jr $ra -/* 0D59D0 800D4DD0 C42098C0 */ lwc1 $f0, -0x6740($at) - -.L800D4DD4: -/* 0D59D4 800D4DD4 C4209850 */ lwc1 $f0, -0x67b0($at) -/* 0D59D8 800D4DD8 03E00008 */ jr $ra -/* 0D59DC 800D4DDC 00000000 */ nop - -glabel func_800D4DE0 -/* 0D59E0 800D4DE0 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 0D59E4 800D4DE4 AFA40020 */ sw $a0, 0x20($sp) -/* 0D59E8 800D4DE8 8FAE0020 */ lw $t6, 0x20($sp) -/* 0D59EC 800D4DEC AFBF0014 */ sw $ra, 0x14($sp) -/* 0D59F0 800D4DF0 AFA60028 */ sw $a2, 0x28($sp) -/* 0D59F4 800D4DF4 AFA7002C */ sw $a3, 0x2c($sp) -/* 0D59F8 800D4DF8 ADC00000 */ sw $zero, ($t6) -/* 0D59FC 800D4DFC 8FAF0020 */ lw $t7, 0x20($sp) -/* 0D5A00 800D4E00 ADE00004 */ sw $zero, 4($t7) -/* 0D5A04 800D4E04 8FA80020 */ lw $t0, 0x20($sp) -/* 0D5A08 800D4E08 8FB90034 */ lw $t9, 0x34($sp) -/* 0D5A0C 800D4E0C 8FB80030 */ lw $t8, 0x30($sp) -/* 0D5A10 800D4E10 AD19000C */ sw $t9, 0xc($t0) -/* 0D5A14 800D4E14 AD180008 */ sw $t8, 8($t0) -/* 0D5A18 800D4E18 8FAA0028 */ lw $t2, 0x28($sp) -/* 0D5A1C 800D4E1C 8FAB002C */ lw $t3, 0x2c($sp) -/* 0D5A20 800D4E20 15400003 */ bnez $t2, .L800D4E30 -/* 0D5A24 800D4E24 00000000 */ nop -/* 0D5A28 800D4E28 11600005 */ beqz $t3, .L800D4E40 -/* 0D5A2C 800D4E2C 00000000 */ nop -.L800D4E30: -/* 0D5A30 800D4E30 8FA90020 */ lw $t1, 0x20($sp) -/* 0D5A34 800D4E34 AD2A0010 */ sw $t2, 0x10($t1) -/* 0D5A38 800D4E38 10000006 */ b .L800D4E54 -/* 0D5A3C 800D4E3C AD2B0014 */ sw $t3, 0x14($t1) -.L800D4E40: -/* 0D5A40 800D4E40 8FAE0020 */ lw $t6, 0x20($sp) -/* 0D5A44 800D4E44 8FAC0030 */ lw $t4, 0x30($sp) -/* 0D5A48 800D4E48 8FAD0034 */ lw $t5, 0x34($sp) -/* 0D5A4C 800D4E4C ADCC0010 */ sw $t4, 0x10($t6) -/* 0D5A50 800D4E50 ADCD0014 */ sw $t5, 0x14($t6) -.L800D4E54: -/* 0D5A54 800D4E54 8FAF0038 */ lw $t7, 0x38($sp) -/* 0D5A58 800D4E58 8FB80020 */ lw $t8, 0x20($sp) -/* 0D5A5C 800D4E5C AF0F0018 */ sw $t7, 0x18($t8) -/* 0D5A60 800D4E60 8FA80020 */ lw $t0, 0x20($sp) -/* 0D5A64 800D4E64 8FB9003C */ lw $t9, 0x3c($sp) -/* 0D5A68 800D4E68 AD19001C */ sw $t9, 0x1c($t0) -/* 0D5A6C 800D4E6C 0C03544E */ jal func_800D5138 -/* 0D5A70 800D4E70 8FA40020 */ lw $a0, 0x20($sp) -/* 0D5A74 800D4E74 3C0A800E */ lui $t2, %hi(D_800E4910) # $t2, 0x800e -/* 0D5A78 800D4E78 8D4A4910 */ lw $t2, %lo(D_800E4910)($t2) -/* 0D5A7C 800D4E7C AFA20018 */ sw $v0, 0x18($sp) -/* 0D5A80 800D4E80 AFA3001C */ sw $v1, 0x1c($sp) -/* 0D5A84 800D4E84 8FA90020 */ lw $t1, 0x20($sp) -/* 0D5A88 800D4E88 8D4B0000 */ lw $t3, ($t2) -/* 0D5A8C 800D4E8C 15690004 */ bne $t3, $t1, .L800D4EA0 -/* 0D5A90 800D4E90 00000000 */ nop -/* 0D5A94 800D4E94 8FA40018 */ lw $a0, 0x18($sp) -/* 0D5A98 800D4E98 0C035431 */ jal func_800D50C4 -/* 0D5A9C 800D4E9C 8FA5001C */ lw $a1, 0x1c($sp) -.L800D4EA0: -/* 0D5AA0 800D4EA0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D5AA4 800D4EA4 27BD0020 */ addiu $sp, $sp, 0x20 -/* 0D5AA8 800D4EA8 00001025 */ move $v0, $zero -/* 0D5AAC 800D4EAC 03E00008 */ jr $ra -/* 0D5AB0 800D4EB0 00000000 */ nop - -/* 0D5AB4 800D4EB4 00000000 */ nop -/* 0D5AB8 800D4EB8 00000000 */ nop -/* 0D5ABC 800D4EBC 00000000 */ nop -glabel func_800D4EC0 -/* 0D5AC0 800D4EC0 3C018013 */ lui $at, %hi(D_8012D220) # $at, 0x8013 -/* 0D5AC4 800D4EC4 240E0000 */ li $t6, 0 -/* 0D5AC8 800D4EC8 240F0000 */ li $t7, 0 -/* 0D5ACC 800D4ECC AC2FD224 */ sw $t7, %lo(D_8012D224)($at) -/* 0D5AD0 800D4ED0 AC2ED220 */ sw $t6, %lo(D_8012D220)($at) -/* 0D5AD4 800D4ED4 3C018013 */ lui $at, %hi(D_8012D228) # $at, 0x8013 -/* 0D5AD8 800D4ED8 3C18800E */ lui $t8, %hi(D_800E4910) # $t8, 0x800e -/* 0D5ADC 800D4EDC 8F184910 */ lw $t8, %lo(D_800E4910)($t8) -/* 0D5AE0 800D4EE0 AC20D228 */ sw $zero, %lo(D_8012D228)($at) -/* 0D5AE4 800D4EE4 3C018013 */ lui $at, %hi(D_8012D22C) # $at, 0x8013 -/* 0D5AE8 800D4EE8 AC20D22C */ sw $zero, %lo(D_8012D22C)($at) -/* 0D5AEC 800D4EEC 3C19800E */ lui $t9, %hi(D_800E4910) # $t9, 0x800e -/* 0D5AF0 800D4EF0 AF180004 */ sw $t8, 4($t8) -/* 0D5AF4 800D4EF4 8F394910 */ lw $t9, %lo(D_800E4910)($t9) -/* 0D5AF8 800D4EF8 3C09800E */ lui $t1, %hi(D_800E4910) # $t1, 0x800e -/* 0D5AFC 800D4EFC 240A0000 */ li $t2, 0 -/* 0D5B00 800D4F00 8F280004 */ lw $t0, 4($t9) -/* 0D5B04 800D4F04 240B0000 */ li $t3, 0 -/* 0D5B08 800D4F08 3C0C800E */ lui $t4, %hi(D_800E4910) # $t4, 0x800e -/* 0D5B0C 800D4F0C AF280000 */ sw $t0, ($t9) -/* 0D5B10 800D4F10 8D294910 */ lw $t1, %lo(D_800E4910)($t1) -/* 0D5B14 800D4F14 3C0D800E */ lui $t5, %hi(D_800E4910) # $t5, 0x800e -/* 0D5B18 800D4F18 3C18800E */ lui $t8, %hi(D_800E4910) # $t8, 0x800e -/* 0D5B1C 800D4F1C AD2A0010 */ sw $t2, 0x10($t1) -/* 0D5B20 800D4F20 AD2B0014 */ sw $t3, 0x14($t1) -/* 0D5B24 800D4F24 8D8C4910 */ lw $t4, %lo(D_800E4910)($t4) -/* 0D5B28 800D4F28 8D8E0010 */ lw $t6, 0x10($t4) -/* 0D5B2C 800D4F2C 8D8F0014 */ lw $t7, 0x14($t4) -/* 0D5B30 800D4F30 AD8E0008 */ sw $t6, 8($t4) -/* 0D5B34 800D4F34 AD8F000C */ sw $t7, 0xc($t4) -/* 0D5B38 800D4F38 8DAD4910 */ lw $t5, %lo(D_800E4910)($t5) -/* 0D5B3C 800D4F3C ADA00018 */ sw $zero, 0x18($t5) -/* 0D5B40 800D4F40 8F184910 */ lw $t8, %lo(D_800E4910)($t8) -/* 0D5B44 800D4F44 03E00008 */ jr $ra -/* 0D5B48 800D4F48 AF00001C */ sw $zero, 0x1c($t8) - -glabel func_800D4F4C -/* 0D5B4C 800D4F4C 3C0E800E */ lui $t6, %hi(D_800E4910) # $t6, 0x800e -/* 0D5B50 800D4F50 8DCE4910 */ lw $t6, %lo(D_800E4910)($t6) -/* 0D5B54 800D4F54 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0D5B58 800D4F58 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D5B5C 800D4F5C 8DCF0000 */ lw $t7, ($t6) -/* 0D5B60 800D4F60 11EE0054 */ beq $t7, $t6, .L800D50B4 -/* 0D5B64 800D4F64 00000000 */ nop -.L800D4F68: -/* 0D5B68 800D4F68 3C18800E */ lui $t8, %hi(D_800E4910) # $t8, 0x800e -/* 0D5B6C 800D4F6C 8F184910 */ lw $t8, %lo(D_800E4910)($t8) -/* 0D5B70 800D4F70 8F190000 */ lw $t9, ($t8) -/* 0D5B74 800D4F74 17380006 */ bne $t9, $t8, .L800D4F90 -/* 0D5B78 800D4F78 AFB90024 */ sw $t9, 0x24($sp) -/* 0D5B7C 800D4F7C 0C035D18 */ jal func_800D7460 -/* 0D5B80 800D4F80 00002025 */ move $a0, $zero -/* 0D5B84 800D4F84 3C018013 */ lui $at, %hi(D_8012D230) # $at, 0x8013 -/* 0D5B88 800D4F88 1000004A */ b .L800D50B4 -/* 0D5B8C 800D4F8C AC20D230 */ sw $zero, %lo(D_8012D230)($at) -.L800D4F90: -/* 0D5B90 800D4F90 0C031E34 */ jal func_800C78D0 -/* 0D5B94 800D4F94 00000000 */ nop -/* 0D5B98 800D4F98 AFA20020 */ sw $v0, 0x20($sp) -/* 0D5B9C 800D4F9C 3C098013 */ lui $t1, %hi(D_8012D230) # $t1, 0x8013 -/* 0D5BA0 800D4FA0 8D29D230 */ lw $t1, %lo(D_8012D230)($t1) -/* 0D5BA4 800D4FA4 8FA80020 */ lw $t0, 0x20($sp) -/* 0D5BA8 800D4FA8 8FAF0024 */ lw $t7, 0x24($sp) -/* 0D5BAC 800D4FAC 3C018013 */ lui $at, %hi(D_8012D230) # $at, 0x8013 -/* 0D5BB0 800D4FB0 01095023 */ subu $t2, $t0, $t1 -/* 0D5BB4 800D4FB4 AFAA001C */ sw $t2, 0x1c($sp) -/* 0D5BB8 800D4FB8 AC28D230 */ sw $t0, %lo(D_8012D230)($at) -/* 0D5BBC 800D4FBC 8DEE0010 */ lw $t6, 0x10($t7) -/* 0D5BC0 800D4FC0 8FAB001C */ lw $t3, 0x1c($sp) -/* 0D5BC4 800D4FC4 240C0000 */ li $t4, 0 -/* 0D5BC8 800D4FC8 01E0C825 */ move $t9, $t7 -/* 0D5BCC 800D4FCC 01CC082B */ sltu $at, $t6, $t4 -/* 0D5BD0 800D4FD0 8DEF0014 */ lw $t7, 0x14($t7) -/* 0D5BD4 800D4FD4 14200016 */ bnez $at, .L800D5030 -/* 0D5BD8 800D4FD8 01606825 */ move $t5, $t3 -/* 0D5BDC 800D4FDC 018E082B */ sltu $at, $t4, $t6 -/* 0D5BE0 800D4FE0 14200003 */ bnez $at, .L800D4FF0 -/* 0D5BE4 800D4FE4 01AF082B */ sltu $at, $t5, $t7 -/* 0D5BE8 800D4FE8 10200011 */ beqz $at, .L800D5030 -/* 0D5BEC 800D4FEC 00000000 */ nop -.L800D4FF0: -/* 0D5BF0 800D4FF0 27380010 */ addiu $t8, $t9, 0x10 -/* 0D5BF4 800D4FF4 AFB80018 */ sw $t8, 0x18($sp) -/* 0D5BF8 800D4FF8 8F2B0014 */ lw $t3, 0x14($t9) -/* 0D5BFC 800D4FFC 8F2A0010 */ lw $t2, 0x10($t9) -/* 0D5C00 800D5000 016D082B */ sltu $at, $t3, $t5 -/* 0D5C04 800D5004 014C4023 */ subu $t0, $t2, $t4 -/* 0D5C08 800D5008 01014023 */ subu $t0, $t0, $at -/* 0D5C0C 800D500C 016D4823 */ subu $t1, $t3, $t5 -/* 0D5C10 800D5010 AF290014 */ sw $t1, 0x14($t9) -/* 0D5C14 800D5014 AF280010 */ sw $t0, 0x10($t9) -/* 0D5C18 800D5018 8FAE0024 */ lw $t6, 0x24($sp) -/* 0D5C1C 800D501C 8DC40010 */ lw $a0, 0x10($t6) -/* 0D5C20 800D5020 0C035431 */ jal func_800D50C4 -/* 0D5C24 800D5024 8DC50014 */ lw $a1, 0x14($t6) -/* 0D5C28 800D5028 10000022 */ b .L800D50B4 -/* 0D5C2C 800D502C 00000000 */ nop -.L800D5030: -/* 0D5C30 800D5030 8FAF0024 */ lw $t7, 0x24($sp) -/* 0D5C34 800D5034 8DF80000 */ lw $t8, ($t7) -/* 0D5C38 800D5038 8DEA0004 */ lw $t2, 4($t7) -/* 0D5C3C 800D503C AD580000 */ sw $t8, ($t2) -/* 0D5C40 800D5040 8FAB0024 */ lw $t3, 0x24($sp) -/* 0D5C44 800D5044 8D6C0004 */ lw $t4, 4($t3) -/* 0D5C48 800D5048 8D6D0000 */ lw $t5, ($t3) -/* 0D5C4C 800D504C ADAC0004 */ sw $t4, 4($t5) -/* 0D5C50 800D5050 8FA80024 */ lw $t0, 0x24($sp) -/* 0D5C54 800D5054 AD000000 */ sw $zero, ($t0) -/* 0D5C58 800D5058 8FA90024 */ lw $t1, 0x24($sp) -/* 0D5C5C 800D505C AD200004 */ sw $zero, 4($t1) -/* 0D5C60 800D5060 8FB90024 */ lw $t9, 0x24($sp) -/* 0D5C64 800D5064 8F2E0018 */ lw $t6, 0x18($t9) -/* 0D5C68 800D5068 11C00005 */ beqz $t6, .L800D5080 -/* 0D5C6C 800D506C 00000000 */ nop -/* 0D5C70 800D5070 01C02025 */ move $a0, $t6 -/* 0D5C74 800D5074 8F25001C */ lw $a1, 0x1c($t9) -/* 0D5C78 800D5078 0C03238C */ jal func_800C8E30 -/* 0D5C7C 800D507C 00003025 */ move $a2, $zero -.L800D5080: -/* 0D5C80 800D5080 8FAF0024 */ lw $t7, 0x24($sp) -/* 0D5C84 800D5084 8DF80008 */ lw $t8, 8($t7) -/* 0D5C88 800D5088 8DF9000C */ lw $t9, 0xc($t7) -/* 0D5C8C 800D508C 17000003 */ bnez $t8, .L800D509C -/* 0D5C90 800D5090 00000000 */ nop -/* 0D5C94 800D5094 1320FFB4 */ beqz $t9, .L800D4F68 -/* 0D5C98 800D5098 00000000 */ nop -.L800D509C: -/* 0D5C9C 800D509C ADF80010 */ sw $t8, 0x10($t7) -/* 0D5CA0 800D50A0 ADF90014 */ sw $t9, 0x14($t7) -/* 0D5CA4 800D50A4 0C03544E */ jal func_800D5138 -/* 0D5CA8 800D50A8 8FA40024 */ lw $a0, 0x24($sp) -/* 0D5CAC 800D50AC 1000FFAE */ b .L800D4F68 -/* 0D5CB0 800D50B0 00000000 */ nop -.L800D50B4: -/* 0D5CB4 800D50B4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D5CB8 800D50B8 27BD0028 */ addiu $sp, $sp, 0x28 -/* 0D5CBC 800D50BC 03E00008 */ jr $ra -/* 0D5CC0 800D50C0 00000000 */ nop - -glabel func_800D50C4 -/* 0D5CC4 800D50C4 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0D5CC8 800D50C8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D5CCC 800D50CC AFA40028 */ sw $a0, 0x28($sp) -/* 0D5CD0 800D50D0 0C034958 */ jal __osDisableInt -/* 0D5CD4 800D50D4 AFA5002C */ sw $a1, 0x2c($sp) -/* 0D5CD8 800D50D8 0C031E34 */ jal func_800C78D0 -/* 0D5CDC 800D50DC AFA2001C */ sw $v0, 0x1c($sp) -/* 0D5CE0 800D50E0 3C018013 */ lui $at, %hi(D_8012D230) # $at, 0x8013 -/* 0D5CE4 800D50E4 AC22D230 */ sw $v0, %lo(D_8012D230)($at) -/* 0D5CE8 800D50E8 3C0E8013 */ lui $t6, %hi(D_8012D230) # $t6, 0x8013 -/* 0D5CEC 800D50EC 8DCED230 */ lw $t6, %lo(D_8012D230)($t6) -/* 0D5CF0 800D50F0 8FA9002C */ lw $t1, 0x2c($sp) -/* 0D5CF4 800D50F4 8FA80028 */ lw $t0, 0x28($sp) -/* 0D5CF8 800D50F8 01C0C825 */ move $t9, $t6 -/* 0D5CFC 800D50FC 03295821 */ addu $t3, $t9, $t1 -/* 0D5D00 800D5100 24180000 */ li $t8, 0 -/* 0D5D04 800D5104 0169082B */ sltu $at, $t3, $t1 -/* 0D5D08 800D5108 00385021 */ addu $t2, $at, $t8 -/* 0D5D0C 800D510C 01485021 */ addu $t2, $t2, $t0 -/* 0D5D10 800D5110 AFAA0020 */ sw $t2, 0x20($sp) -/* 0D5D14 800D5114 AFAB0024 */ sw $t3, 0x24($sp) -/* 0D5D18 800D5118 0C035D18 */ jal func_800D7460 -/* 0D5D1C 800D511C 01602025 */ move $a0, $t3 -/* 0D5D20 800D5120 0C034960 */ jal __osRestoreInt -/* 0D5D24 800D5124 8FA4001C */ lw $a0, 0x1c($sp) -/* 0D5D28 800D5128 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D5D2C 800D512C 27BD0028 */ addiu $sp, $sp, 0x28 -/* 0D5D30 800D5130 03E00008 */ jr $ra -/* 0D5D34 800D5134 00000000 */ nop - -glabel func_800D5138 -/* 0D5D38 800D5138 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0D5D3C 800D513C AFBF0014 */ sw $ra, 0x14($sp) -/* 0D5D40 800D5140 0C034958 */ jal __osDisableInt -/* 0D5D44 800D5144 AFA40038 */ sw $a0, 0x38($sp) -/* 0D5D48 800D5148 3C0E800E */ lui $t6, %hi(D_800E4910) # $t6, 0x800e -/* 0D5D4C 800D514C 8DCE4910 */ lw $t6, %lo(D_800E4910)($t6) -/* 0D5D50 800D5150 AFA20024 */ sw $v0, 0x24($sp) -/* 0D5D54 800D5154 8FB80038 */ lw $t8, 0x38($sp) -/* 0D5D58 800D5158 8DCF0000 */ lw $t7, ($t6) -/* 0D5D5C 800D515C AFAF0034 */ sw $t7, 0x34($sp) -/* 0D5D60 800D5160 8F090014 */ lw $t1, 0x14($t8) -/* 0D5D64 800D5164 8F080010 */ lw $t0, 0x10($t8) -/* 0D5D68 800D5168 AFA9002C */ sw $t1, 0x2c($sp) -/* 0D5D6C 800D516C 11EE0029 */ beq $t7, $t6, .L800D5214 -/* 0D5D70 800D5170 AFA80028 */ sw $t0, 0x28($sp) -/* 0D5D74 800D5174 8DEA0010 */ lw $t2, 0x10($t7) -/* 0D5D78 800D5178 8DEB0014 */ lw $t3, 0x14($t7) -/* 0D5D7C 800D517C 010A082B */ sltu $at, $t0, $t2 -/* 0D5D80 800D5180 14200024 */ bnez $at, .L800D5214 -/* 0D5D84 800D5184 0148082B */ sltu $at, $t2, $t0 -/* 0D5D88 800D5188 14200003 */ bnez $at, .L800D5198 -/* 0D5D8C 800D518C 0169082B */ sltu $at, $t3, $t1 -/* 0D5D90 800D5190 10200020 */ beqz $at, .L800D5214 -/* 0D5D94 800D5194 00000000 */ nop -.L800D5198: -/* 0D5D98 800D5198 27B90028 */ addiu $t9, $sp, 0x28 -/* 0D5D9C 800D519C 8FB80034 */ lw $t8, 0x34($sp) -/* 0D5DA0 800D51A0 AFB90020 */ sw $t9, 0x20($sp) -/* 0D5DA4 800D51A4 8F2D0004 */ lw $t5, 4($t9) -/* 0D5DA8 800D51A8 8F2C0000 */ lw $t4, ($t9) -/* 0D5DAC 800D51AC 8F0F0014 */ lw $t7, 0x14($t8) -/* 0D5DB0 800D51B0 8F0E0010 */ lw $t6, 0x10($t8) -/* 0D5DB4 800D51B4 3C18800E */ lui $t8, %hi(D_800E4910) # $t8, 0x800e -/* 0D5DB8 800D51B8 01AF082B */ sltu $at, $t5, $t7 -/* 0D5DBC 800D51BC 018E4023 */ subu $t0, $t4, $t6 -/* 0D5DC0 800D51C0 01014023 */ subu $t0, $t0, $at -/* 0D5DC4 800D51C4 01AF4823 */ subu $t1, $t5, $t7 -/* 0D5DC8 800D51C8 AF290004 */ sw $t1, 4($t9) -/* 0D5DCC 800D51CC AF280000 */ sw $t0, ($t9) -/* 0D5DD0 800D51D0 8FAA0034 */ lw $t2, 0x34($sp) -/* 0D5DD4 800D51D4 8F184910 */ lw $t8, %lo(D_800E4910)($t8) -/* 0D5DD8 800D51D8 8D4B0000 */ lw $t3, ($t2) -/* 0D5DDC 800D51DC 1178000D */ beq $t3, $t8, .L800D5214 -/* 0D5DE0 800D51E0 AFAB0034 */ sw $t3, 0x34($sp) -/* 0D5DE4 800D51E4 8FAC0028 */ lw $t4, 0x28($sp) -/* 0D5DE8 800D51E8 8D6E0010 */ lw $t6, 0x10($t3) -/* 0D5DEC 800D51EC 8FAD002C */ lw $t5, 0x2c($sp) -/* 0D5DF0 800D51F0 8D6F0014 */ lw $t7, 0x14($t3) -/* 0D5DF4 800D51F4 01CC082B */ sltu $at, $t6, $t4 -/* 0D5DF8 800D51F8 1420FFE7 */ bnez $at, .L800D5198 -/* 0D5DFC 800D51FC 00000000 */ nop -/* 0D5E00 800D5200 018E082B */ sltu $at, $t4, $t6 -/* 0D5E04 800D5204 14200003 */ bnez $at, .L800D5214 -/* 0D5E08 800D5208 01ED082B */ sltu $at, $t7, $t5 -/* 0D5E0C 800D520C 1420FFE2 */ bnez $at, .L800D5198 -/* 0D5E10 800D5210 00000000 */ nop -.L800D5214: -/* 0D5E14 800D5214 8FB90038 */ lw $t9, 0x38($sp) -/* 0D5E18 800D5218 8FA80028 */ lw $t0, 0x28($sp) -/* 0D5E1C 800D521C 8FA9002C */ lw $t1, 0x2c($sp) -/* 0D5E20 800D5220 3C18800E */ lui $t8, %hi(D_800E4910) # $t8, 0x800e -/* 0D5E24 800D5224 AF280010 */ sw $t0, 0x10($t9) -/* 0D5E28 800D5228 AF290014 */ sw $t1, 0x14($t9) -/* 0D5E2C 800D522C 8F184910 */ lw $t8, %lo(D_800E4910)($t8) -/* 0D5E30 800D5230 8FAA0034 */ lw $t2, 0x34($sp) -/* 0D5E34 800D5234 1158000D */ beq $t2, $t8, .L800D526C -/* 0D5E38 800D5238 00000000 */ nop -/* 0D5E3C 800D523C 254B0010 */ addiu $t3, $t2, 0x10 -/* 0D5E40 800D5240 AFAB001C */ sw $t3, 0x1c($sp) -/* 0D5E44 800D5244 8D4D0014 */ lw $t5, 0x14($t2) -/* 0D5E48 800D5248 8D4C0010 */ lw $t4, 0x10($t2) -/* 0D5E4C 800D524C 8FAE0028 */ lw $t6, 0x28($sp) -/* 0D5E50 800D5250 8FAF002C */ lw $t7, 0x2c($sp) -/* 0D5E54 800D5254 018E4023 */ subu $t0, $t4, $t6 -/* 0D5E58 800D5258 01AF082B */ sltu $at, $t5, $t7 -/* 0D5E5C 800D525C 01014023 */ subu $t0, $t0, $at -/* 0D5E60 800D5260 01AF4823 */ subu $t1, $t5, $t7 -/* 0D5E64 800D5264 AD490014 */ sw $t1, 0x14($t2) -/* 0D5E68 800D5268 AD480010 */ sw $t0, 0x10($t2) -.L800D526C: -/* 0D5E6C 800D526C 8FB90034 */ lw $t9, 0x34($sp) -/* 0D5E70 800D5270 8FB80038 */ lw $t8, 0x38($sp) -/* 0D5E74 800D5274 AF190000 */ sw $t9, ($t8) -/* 0D5E78 800D5278 8FAB0034 */ lw $t3, 0x34($sp) -/* 0D5E7C 800D527C 8FAD0038 */ lw $t5, 0x38($sp) -/* 0D5E80 800D5280 8D6C0004 */ lw $t4, 4($t3) -/* 0D5E84 800D5284 ADAC0004 */ sw $t4, 4($t5) -/* 0D5E88 800D5288 8FAF0034 */ lw $t7, 0x34($sp) -/* 0D5E8C 800D528C 8FAE0038 */ lw $t6, 0x38($sp) -/* 0D5E90 800D5290 8DE80004 */ lw $t0, 4($t7) -/* 0D5E94 800D5294 AD0E0000 */ sw $t6, ($t0) -/* 0D5E98 800D5298 8FAA0034 */ lw $t2, 0x34($sp) -/* 0D5E9C 800D529C 8FA90038 */ lw $t1, 0x38($sp) -/* 0D5EA0 800D52A0 AD490004 */ sw $t1, 4($t2) -/* 0D5EA4 800D52A4 0C034960 */ jal __osRestoreInt -/* 0D5EA8 800D52A8 8FA40024 */ lw $a0, 0x24($sp) -/* 0D5EAC 800D52AC 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D5EB0 800D52B0 8FA20028 */ lw $v0, 0x28($sp) -/* 0D5EB4 800D52B4 8FA3002C */ lw $v1, 0x2c($sp) -/* 0D5EB8 800D52B8 03E00008 */ jr $ra -/* 0D5EBC 800D52BC 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_800D52C0 -/* 0D5EC0 800D52C0 3C0EA480 */ lui $t6, %hi(D_A4800018) # $t6, 0xa480 -/* 0D5EC4 800D52C4 8DC40018 */ lw $a0, %lo(D_A4800018)($t6) -/* 0D5EC8 800D52C8 27BDFFF8 */ addiu $sp, $sp, -8 -/* 0D5ECC 800D52CC 308F0003 */ andi $t7, $a0, 3 -/* 0D5ED0 800D52D0 11E00003 */ beqz $t7, .L800D52E0 -/* 0D5ED4 800D52D4 00000000 */ nop -/* 0D5ED8 800D52D8 10000002 */ b .L800D52E4 -/* 0D5EDC 800D52DC 24020001 */ li $v0, 1 -.L800D52E0: -/* 0D5EE0 800D52E0 00001025 */ move $v0, $zero -.L800D52E4: -/* 0D5EE4 800D52E4 03E00008 */ jr $ra -/* 0D5EE8 800D52E8 27BD0008 */ addiu $sp, $sp, 8 - -/* 0D5EEC 800D52EC 00000000 */ nop -glabel func_800D52F0 -/* 0D5EF0 800D52F0 27BDFFF0 */ addiu $sp, $sp, -0x10 -/* 0D5EF4 800D52F4 AFA00008 */ sw $zero, 8($sp) -/* 0D5EF8 800D52F8 AFA40004 */ sw $a0, 4($sp) -/* 0D5EFC 800D52FC 18A00010 */ blez $a1, .L800D5340 -/* 0D5F00 800D5300 AFA0000C */ sw $zero, 0xc($sp) -.L800D5304: -/* 0D5F04 800D5304 8FAF0004 */ lw $t7, 4($sp) -/* 0D5F08 800D5308 8FAE0008 */ lw $t6, 8($sp) -/* 0D5F0C 800D530C 8FAB000C */ lw $t3, 0xc($sp) -/* 0D5F10 800D5310 91F80000 */ lbu $t8, ($t7) -/* 0D5F14 800D5314 25E80001 */ addiu $t0, $t7, 1 -/* 0D5F18 800D5318 256C0001 */ addiu $t4, $t3, 1 -/* 0D5F1C 800D531C 01D8C821 */ addu $t9, $t6, $t8 -/* 0D5F20 800D5320 AFB90008 */ sw $t9, 8($sp) -/* 0D5F24 800D5324 8FA90008 */ lw $t1, 8($sp) -/* 0D5F28 800D5328 0185082A */ slt $at, $t4, $a1 -/* 0D5F2C 800D532C AFAC000C */ sw $t4, 0xc($sp) -/* 0D5F30 800D5330 312AFFFF */ andi $t2, $t1, 0xffff -/* 0D5F34 800D5334 AFA80004 */ sw $t0, 4($sp) -/* 0D5F38 800D5338 1420FFF2 */ bnez $at, .L800D5304 -/* 0D5F3C 800D533C AFAA0008 */ sw $t2, 8($sp) -.L800D5340: -/* 0D5F40 800D5340 97A2000A */ lhu $v0, 0xa($sp) -/* 0D5F44 800D5344 03E00008 */ jr $ra -/* 0D5F48 800D5348 27BD0010 */ addiu $sp, $sp, 0x10 - -glabel func_800D534C -/* 0D5F4C 800D534C 27BDFFF8 */ addiu $sp, $sp, -8 -/* 0D5F50 800D5350 A7A00006 */ sh $zero, 6($sp) -/* 0D5F54 800D5354 A4C00000 */ sh $zero, ($a2) -/* 0D5F58 800D5358 94CE0000 */ lhu $t6, ($a2) -/* 0D5F5C 800D535C A4AE0000 */ sh $t6, ($a1) -/* 0D5F60 800D5360 AFA00000 */ sw $zero, ($sp) -.L800D5364: -/* 0D5F64 800D5364 8FAF0000 */ lw $t7, ($sp) -/* 0D5F68 800D5368 008FC021 */ addu $t8, $a0, $t7 -/* 0D5F6C 800D536C 97190000 */ lhu $t9, ($t8) -/* 0D5F70 800D5370 A7B90006 */ sh $t9, 6($sp) -/* 0D5F74 800D5374 94A80000 */ lhu $t0, ($a1) -/* 0D5F78 800D5378 01194821 */ addu $t1, $t0, $t9 -/* 0D5F7C 800D537C A4A90000 */ sh $t1, ($a1) -/* 0D5F80 800D5380 97AB0006 */ lhu $t3, 6($sp) -/* 0D5F84 800D5384 94CA0000 */ lhu $t2, ($a2) -/* 0D5F88 800D5388 01606027 */ not $t4, $t3 -/* 0D5F8C 800D538C 014C6821 */ addu $t5, $t2, $t4 -/* 0D5F90 800D5390 A4CD0000 */ sh $t5, ($a2) -/* 0D5F94 800D5394 8FAE0000 */ lw $t6, ($sp) -/* 0D5F98 800D5398 25CF0002 */ addiu $t7, $t6, 2 -/* 0D5F9C 800D539C 2DE1001C */ sltiu $at, $t7, 0x1c -/* 0D5FA0 800D53A0 1420FFF0 */ bnez $at, .L800D5364 -/* 0D5FA4 800D53A4 AFAF0000 */ sw $t7, ($sp) -/* 0D5FA8 800D53A8 00001025 */ move $v0, $zero -/* 0D5FAC 800D53AC 03E00008 */ jr $ra -/* 0D5FB0 800D53B0 27BD0008 */ addiu $sp, $sp, 8 - -glabel func_800D53B4 -/* 0D5FB4 800D53B4 27BDFF88 */ addiu $sp, $sp, -0x78 -/* 0D5FB8 800D53B8 AFA40078 */ sw $a0, 0x78($sp) -/* 0D5FBC 800D53BC 8FAE0078 */ lw $t6, 0x78($sp) -/* 0D5FC0 800D53C0 AFBF001C */ sw $ra, 0x1c($sp) -/* 0D5FC4 800D53C4 AFA5007C */ sw $a1, 0x7c($sp) -/* 0D5FC8 800D53C8 AFA60080 */ sw $a2, 0x80($sp) -/* 0D5FCC 800D53CC AFA00074 */ sw $zero, 0x74($sp) -/* 0D5FD0 800D53D0 A3A00033 */ sb $zero, 0x33($sp) -/* 0D5FD4 800D53D4 91CF0065 */ lbu $t7, 0x65($t6) -/* 0D5FD8 800D53D8 11E0000A */ beqz $t7, .L800D5404 -/* 0D5FDC 800D53DC 00000000 */ nop -/* 0D5FE0 800D53E0 A1C00065 */ sb $zero, 0x65($t6) -/* 0D5FE4 800D53E4 0C0357F7 */ jal func_800D5FDC -/* 0D5FE8 800D53E8 8FA40078 */ lw $a0, 0x78($sp) -/* 0D5FEC 800D53EC AFA20074 */ sw $v0, 0x74($sp) -/* 0D5FF0 800D53F0 8FB80074 */ lw $t8, 0x74($sp) -/* 0D5FF4 800D53F4 13000003 */ beqz $t8, .L800D5404 -/* 0D5FF8 800D53F8 00000000 */ nop -/* 0D5FFC 800D53FC 100000EF */ b .L800D57BC -/* 0D6000 800D5400 03001025 */ move $v0, $t8 -.L800D5404: -/* 0D6004 800D5404 8FA80080 */ lw $t0, 0x80($sp) -/* 0D6008 800D5408 2419FFFF */ li $t9, -1 -/* 0D600C 800D540C 0C031E34 */ jal func_800C78D0 -/* 0D6010 800D5410 AD190000 */ sw $t9, ($t0) -/* 0D6014 800D5414 8FA90080 */ lw $t1, 0x80($sp) -/* 0D6018 800D5418 AD220004 */ sw $v0, 4($t1) -/* 0D601C 800D541C 8FAA007C */ lw $t2, 0x7c($sp) -/* 0D6020 800D5420 8FAB0080 */ lw $t3, 0x80($sp) -/* 0D6024 800D5424 8D4C0008 */ lw $t4, 8($t2) -/* 0D6028 800D5428 8D4D000C */ lw $t5, 0xc($t2) -/* 0D602C 800D542C AD6C0008 */ sw $t4, 8($t3) -/* 0D6030 800D5430 AD6D000C */ sw $t5, 0xc($t3) -/* 0D6034 800D5434 8FAF007C */ lw $t7, 0x7c($sp) -/* 0D6038 800D5438 8FB80080 */ lw $t8, 0x80($sp) -/* 0D603C 800D543C 8DEE0010 */ lw $t6, 0x10($t7) -/* 0D6040 800D5440 8DEF0014 */ lw $t7, 0x14($t7) -/* 0D6044 800D5444 AF0E0010 */ sw $t6, 0x10($t8) -/* 0D6048 800D5448 AF0F0014 */ sw $t7, 0x14($t8) -/* 0D604C 800D544C AFA00028 */ sw $zero, 0x28($sp) -.L800D5450: -/* 0D6050 800D5450 8FB90028 */ lw $t9, 0x28($sp) -/* 0D6054 800D5454 8FA80078 */ lw $t0, 0x78($sp) -/* 0D6058 800D5458 A1190065 */ sb $t9, 0x65($t0) -/* 0D605C 800D545C 0C0357F7 */ jal func_800D5FDC -/* 0D6060 800D5460 8FA40078 */ lw $a0, 0x78($sp) -/* 0D6064 800D5464 AFA20074 */ sw $v0, 0x74($sp) -/* 0D6068 800D5468 8FA90074 */ lw $t1, 0x74($sp) -/* 0D606C 800D546C 11200003 */ beqz $t1, .L800D547C -/* 0D6070 800D5470 00000000 */ nop -/* 0D6074 800D5474 100000D1 */ b .L800D57BC -/* 0D6078 800D5478 01201025 */ move $v0, $t1 -.L800D547C: -/* 0D607C 800D547C 8FAA0078 */ lw $t2, 0x78($sp) -/* 0D6080 800D5480 00003025 */ move $a2, $zero -/* 0D6084 800D5484 27A70054 */ addiu $a3, $sp, 0x54 -/* 0D6088 800D5488 8D440004 */ lw $a0, 4($t2) -/* 0D608C 800D548C 0C033728 */ jal func_800CDCA0 -/* 0D6090 800D5490 8D450008 */ lw $a1, 8($t2) -/* 0D6094 800D5494 AFA20074 */ sw $v0, 0x74($sp) -/* 0D6098 800D5498 8FAC0074 */ lw $t4, 0x74($sp) -/* 0D609C 800D549C 11800003 */ beqz $t4, .L800D54AC -/* 0D60A0 800D54A0 00000000 */ nop -/* 0D60A4 800D54A4 100000C5 */ b .L800D57BC -/* 0D60A8 800D54A8 01801025 */ move $v0, $t4 -.L800D54AC: -/* 0D60AC 800D54AC 8FAD0028 */ lw $t5, 0x28($sp) -/* 0D60B0 800D54B0 27AE0054 */ addiu $t6, $sp, 0x54 -/* 0D60B4 800D54B4 240F0001 */ li $t7, 1 -/* 0D60B8 800D54B8 35AB0080 */ ori $t3, $t5, 0x80 -/* 0D60BC 800D54BC A1CB0000 */ sb $t3, ($t6) -/* 0D60C0 800D54C0 AFAF002C */ sw $t7, 0x2c($sp) -.L800D54C4: -/* 0D60C4 800D54C4 8FB8002C */ lw $t8, 0x2c($sp) -/* 0D60C8 800D54C8 27B90054 */ addiu $t9, $sp, 0x54 -/* 0D60CC 800D54CC 03194021 */ addu $t0, $t8, $t9 -/* 0D60D0 800D54D0 91090000 */ lbu $t1, ($t0) -/* 0D60D4 800D54D4 01205027 */ not $t2, $t1 -/* 0D60D8 800D54D8 A10A0000 */ sb $t2, ($t0) -/* 0D60DC 800D54DC 8FAC002C */ lw $t4, 0x2c($sp) -/* 0D60E0 800D54E0 258D0001 */ addiu $t5, $t4, 1 -/* 0D60E4 800D54E4 29A10020 */ slti $at, $t5, 0x20 -/* 0D60E8 800D54E8 1420FFF6 */ bnez $at, .L800D54C4 -/* 0D60EC 800D54EC AFAD002C */ sw $t5, 0x2c($sp) -/* 0D60F0 800D54F0 8FAB0078 */ lw $t3, 0x78($sp) -/* 0D60F4 800D54F4 00003025 */ move $a2, $zero -/* 0D60F8 800D54F8 27A70054 */ addiu $a3, $sp, 0x54 -/* 0D60FC 800D54FC 8D640004 */ lw $a0, 4($t3) -/* 0D6100 800D5500 8D650008 */ lw $a1, 8($t3) -/* 0D6104 800D5504 0C03363C */ jal func_800CD8F0 -/* 0D6108 800D5508 AFA00010 */ sw $zero, 0x10($sp) -/* 0D610C 800D550C AFA20074 */ sw $v0, 0x74($sp) -/* 0D6110 800D5510 8FAE0074 */ lw $t6, 0x74($sp) -/* 0D6114 800D5514 11C00003 */ beqz $t6, .L800D5524 -/* 0D6118 800D5518 00000000 */ nop -/* 0D611C 800D551C 100000A7 */ b .L800D57BC -/* 0D6120 800D5520 01C01025 */ move $v0, $t6 -.L800D5524: -/* 0D6124 800D5524 8FAF0078 */ lw $t7, 0x78($sp) -/* 0D6128 800D5528 00003025 */ move $a2, $zero -/* 0D612C 800D552C 27A70034 */ addiu $a3, $sp, 0x34 -/* 0D6130 800D5530 8DE40004 */ lw $a0, 4($t7) -/* 0D6134 800D5534 0C033728 */ jal func_800CDCA0 -/* 0D6138 800D5538 8DE50008 */ lw $a1, 8($t7) -/* 0D613C 800D553C AFA20074 */ sw $v0, 0x74($sp) -/* 0D6140 800D5540 8FB80074 */ lw $t8, 0x74($sp) -/* 0D6144 800D5544 13000003 */ beqz $t8, .L800D5554 -/* 0D6148 800D5548 00000000 */ nop -/* 0D614C 800D554C 1000009B */ b .L800D57BC -/* 0D6150 800D5550 03001025 */ move $v0, $t8 -.L800D5554: -/* 0D6154 800D5554 AFA0002C */ sw $zero, 0x2c($sp) -.L800D5558: -/* 0D6158 800D5558 8FB9002C */ lw $t9, 0x2c($sp) -/* 0D615C 800D555C 03B94821 */ addu $t1, $sp, $t9 -/* 0D6160 800D5560 03B95021 */ addu $t2, $sp, $t9 -/* 0D6164 800D5564 914A0034 */ lbu $t2, 0x34($t2) -/* 0D6168 800D5568 91290054 */ lbu $t1, 0x54($t1) -/* 0D616C 800D556C 152A0006 */ bne $t1, $t2, .L800D5588 -/* 0D6170 800D5570 00000000 */ nop -/* 0D6174 800D5574 8FA8002C */ lw $t0, 0x2c($sp) -/* 0D6178 800D5578 250C0001 */ addiu $t4, $t0, 1 -/* 0D617C 800D557C 29810020 */ slti $at, $t4, 0x20 -/* 0D6180 800D5580 1420FFF5 */ bnez $at, .L800D5558 -/* 0D6184 800D5584 AFAC002C */ sw $t4, 0x2c($sp) -.L800D5588: -/* 0D6188 800D5588 8FAD002C */ lw $t5, 0x2c($sp) -/* 0D618C 800D558C 24010020 */ li $at, 32 -/* 0D6190 800D5590 15A10026 */ bne $t5, $at, .L800D562C -/* 0D6194 800D5594 00000000 */ nop -/* 0D6198 800D5598 8FAB0028 */ lw $t3, 0x28($sp) -/* 0D619C 800D559C 1960001C */ blez $t3, .L800D5610 -/* 0D61A0 800D55A0 00000000 */ nop -/* 0D61A4 800D55A4 8FAE0078 */ lw $t6, 0x78($sp) -/* 0D61A8 800D55A8 A1C00065 */ sb $zero, 0x65($t6) -/* 0D61AC 800D55AC 0C0357F7 */ jal func_800D5FDC -/* 0D61B0 800D55B0 8FA40078 */ lw $a0, 0x78($sp) -/* 0D61B4 800D55B4 AFA20074 */ sw $v0, 0x74($sp) -/* 0D61B8 800D55B8 8FAF0074 */ lw $t7, 0x74($sp) -/* 0D61BC 800D55BC 11E00003 */ beqz $t7, .L800D55CC -/* 0D61C0 800D55C0 00000000 */ nop -/* 0D61C4 800D55C4 1000007D */ b .L800D57BC -/* 0D61C8 800D55C8 01E01025 */ move $v0, $t7 -.L800D55CC: -/* 0D61CC 800D55CC 8FB80078 */ lw $t8, 0x78($sp) -/* 0D61D0 800D55D0 00003025 */ move $a2, $zero -/* 0D61D4 800D55D4 27A70054 */ addiu $a3, $sp, 0x54 -/* 0D61D8 800D55D8 8F040004 */ lw $a0, 4($t8) -/* 0D61DC 800D55DC 0C033728 */ jal func_800CDCA0 -/* 0D61E0 800D55E0 8F050008 */ lw $a1, 8($t8) -/* 0D61E4 800D55E4 AFA20074 */ sw $v0, 0x74($sp) -/* 0D61E8 800D55E8 8FB90074 */ lw $t9, 0x74($sp) -/* 0D61EC 800D55EC 13200003 */ beqz $t9, .L800D55FC -/* 0D61F0 800D55F0 00000000 */ nop -/* 0D61F4 800D55F4 10000071 */ b .L800D57BC -/* 0D61F8 800D55F8 03201025 */ move $v0, $t9 -.L800D55FC: -/* 0D61FC 800D55FC 27A90054 */ addiu $t1, $sp, 0x54 -/* 0D6200 800D5600 912A0000 */ lbu $t2, ($t1) -/* 0D6204 800D5604 24010080 */ li $at, 128 -/* 0D6208 800D5608 15410008 */ bne $t2, $at, .L800D562C -/* 0D620C 800D560C 00000000 */ nop -.L800D5610: -/* 0D6210 800D5610 8FA80028 */ lw $t0, 0x28($sp) -/* 0D6214 800D5614 250C0001 */ addiu $t4, $t0, 1 -/* 0D6218 800D5618 AFAC0028 */ sw $t4, 0x28($sp) -/* 0D621C 800D561C 8FAD0028 */ lw $t5, 0x28($sp) -/* 0D6220 800D5620 29A1003E */ slti $at, $t5, 0x3e -/* 0D6224 800D5624 1420FF8A */ bnez $at, .L800D5450 -/* 0D6228 800D5628 00000000 */ nop -.L800D562C: -/* 0D622C 800D562C 8FAB0078 */ lw $t3, 0x78($sp) -/* 0D6230 800D5630 A1600065 */ sb $zero, 0x65($t3) -/* 0D6234 800D5634 0C0357F7 */ jal func_800D5FDC -/* 0D6238 800D5638 8FA40078 */ lw $a0, 0x78($sp) -/* 0D623C 800D563C AFA20074 */ sw $v0, 0x74($sp) -/* 0D6240 800D5640 8FAE0074 */ lw $t6, 0x74($sp) -/* 0D6244 800D5644 11C00003 */ beqz $t6, .L800D5654 -/* 0D6248 800D5648 00000000 */ nop -/* 0D624C 800D564C 1000005B */ b .L800D57BC -/* 0D6250 800D5650 01C01025 */ move $v0, $t6 -.L800D5654: -/* 0D6254 800D5654 8FAF0028 */ lw $t7, 0x28($sp) -/* 0D6258 800D5658 19E00004 */ blez $t7, .L800D566C -/* 0D625C 800D565C 00000000 */ nop -/* 0D6260 800D5660 24180001 */ li $t8, 1 -/* 0D6264 800D5664 10000002 */ b .L800D5670 -/* 0D6268 800D5668 A3B80033 */ sb $t8, 0x33($sp) -.L800D566C: -/* 0D626C 800D566C A3A00033 */ sb $zero, 0x33($sp) -.L800D5670: -/* 0D6270 800D5670 8FB9007C */ lw $t9, 0x7c($sp) -/* 0D6274 800D5674 93A80033 */ lbu $t0, 0x33($sp) -/* 0D6278 800D5678 8FAD0080 */ lw $t5, 0x80($sp) -/* 0D627C 800D567C 97290018 */ lhu $t1, 0x18($t9) -/* 0D6280 800D5680 312AFFFE */ andi $t2, $t1, 0xfffe -/* 0D6284 800D5684 01486025 */ or $t4, $t2, $t0 -/* 0D6288 800D5688 A5AC0018 */ sh $t4, 0x18($t5) -/* 0D628C 800D568C 8FAE0080 */ lw $t6, 0x80($sp) -/* 0D6290 800D5690 8FAB0028 */ lw $t3, 0x28($sp) -/* 0D6294 800D5694 A1CB001A */ sb $t3, 0x1a($t6) -/* 0D6298 800D5698 8FAF007C */ lw $t7, 0x7c($sp) -/* 0D629C 800D569C 8FB90080 */ lw $t9, 0x80($sp) -/* 0D62A0 800D56A0 91F8001B */ lbu $t8, 0x1b($t7) -/* 0D62A4 800D56A4 A338001B */ sb $t8, 0x1b($t9) -/* 0D62A8 800D56A8 8FA90080 */ lw $t1, 0x80($sp) -/* 0D62AC 800D56AC 01202025 */ move $a0, $t1 -/* 0D62B0 800D56B0 2525001C */ addiu $a1, $t1, 0x1c -/* 0D62B4 800D56B4 0C0354D3 */ jal func_800D534C -/* 0D62B8 800D56B8 2526001E */ addiu $a2, $t1, 0x1e -/* 0D62BC 800D56BC 240A0001 */ li $t2, 1 -/* 0D62C0 800D56C0 27A80020 */ addiu $t0, $sp, 0x20 -/* 0D62C4 800D56C4 A50A0000 */ sh $t2, ($t0) -/* 0D62C8 800D56C8 240C0003 */ li $t4, 3 -/* 0D62CC 800D56CC 27AD0020 */ addiu $t5, $sp, 0x20 -/* 0D62D0 800D56D0 A5AC0002 */ sh $t4, 2($t5) -/* 0D62D4 800D56D4 240B0004 */ li $t3, 4 -/* 0D62D8 800D56D8 27AE0020 */ addiu $t6, $sp, 0x20 -/* 0D62DC 800D56DC A5CB0004 */ sh $t3, 4($t6) -/* 0D62E0 800D56E0 240F0006 */ li $t7, 6 -/* 0D62E4 800D56E4 27B80020 */ addiu $t8, $sp, 0x20 -/* 0D62E8 800D56E8 A70F0006 */ sh $t7, 6($t8) -/* 0D62EC 800D56EC AFA0002C */ sw $zero, 0x2c($sp) -.L800D56F0: -/* 0D62F0 800D56F0 8FA9002C */ lw $t1, 0x2c($sp) -/* 0D62F4 800D56F4 8FB90078 */ lw $t9, 0x78($sp) -/* 0D62F8 800D56F8 24080001 */ li $t0, 1 -/* 0D62FC 800D56FC 00095040 */ sll $t2, $t1, 1 -/* 0D6300 800D5700 03AA3021 */ addu $a2, $sp, $t2 -/* 0D6304 800D5704 94C60020 */ lhu $a2, 0x20($a2) -/* 0D6308 800D5708 8F240004 */ lw $a0, 4($t9) -/* 0D630C 800D570C 8F250008 */ lw $a1, 8($t9) -/* 0D6310 800D5710 AFA80010 */ sw $t0, 0x10($sp) -/* 0D6314 800D5714 0C03363C */ jal func_800CD8F0 -/* 0D6318 800D5718 8FA70080 */ lw $a3, 0x80($sp) -/* 0D631C 800D571C AFA20074 */ sw $v0, 0x74($sp) -/* 0D6320 800D5720 8FAC0074 */ lw $t4, 0x74($sp) -/* 0D6324 800D5724 11800003 */ beqz $t4, .L800D5734 -/* 0D6328 800D5728 00000000 */ nop -/* 0D632C 800D572C 10000023 */ b .L800D57BC -/* 0D6330 800D5730 01801025 */ move $v0, $t4 -.L800D5734: -/* 0D6334 800D5734 8FAD002C */ lw $t5, 0x2c($sp) -/* 0D6338 800D5738 25AB0001 */ addiu $t3, $t5, 1 -/* 0D633C 800D573C 29610004 */ slti $at, $t3, 4 -/* 0D6340 800D5740 1420FFEB */ bnez $at, .L800D56F0 -/* 0D6344 800D5744 AFAB002C */ sw $t3, 0x2c($sp) -/* 0D6348 800D5748 8FAE0078 */ lw $t6, 0x78($sp) -/* 0D634C 800D574C 24060001 */ li $a2, 1 -/* 0D6350 800D5750 27A70054 */ addiu $a3, $sp, 0x54 -/* 0D6354 800D5754 8DC40004 */ lw $a0, 4($t6) -/* 0D6358 800D5758 0C033728 */ jal func_800CDCA0 -/* 0D635C 800D575C 8DC50008 */ lw $a1, 8($t6) -/* 0D6360 800D5760 AFA20074 */ sw $v0, 0x74($sp) -/* 0D6364 800D5764 8FAF0074 */ lw $t7, 0x74($sp) -/* 0D6368 800D5768 11E00003 */ beqz $t7, .L800D5778 -/* 0D636C 800D576C 00000000 */ nop -/* 0D6370 800D5770 10000012 */ b .L800D57BC -/* 0D6374 800D5774 01E01025 */ move $v0, $t7 -.L800D5778: -/* 0D6378 800D5778 AFA0002C */ sw $zero, 0x2c($sp) -.L800D577C: -/* 0D637C 800D577C 8FB9002C */ lw $t9, 0x2c($sp) -/* 0D6380 800D5780 8FB80080 */ lw $t8, 0x80($sp) -/* 0D6384 800D5784 03B94021 */ addu $t0, $sp, $t9 -/* 0D6388 800D5788 03194821 */ addu $t1, $t8, $t9 -/* 0D638C 800D578C 912A0000 */ lbu $t2, ($t1) -/* 0D6390 800D5790 91080054 */ lbu $t0, 0x54($t0) -/* 0D6394 800D5794 11480003 */ beq $t2, $t0, .L800D57A4 -/* 0D6398 800D5798 00000000 */ nop -/* 0D639C 800D579C 10000007 */ b .L800D57BC -/* 0D63A0 800D57A0 2402000A */ li $v0, 10 -.L800D57A4: -/* 0D63A4 800D57A4 8FAC002C */ lw $t4, 0x2c($sp) -/* 0D63A8 800D57A8 258D0001 */ addiu $t5, $t4, 1 -/* 0D63AC 800D57AC 29A10020 */ slti $at, $t5, 0x20 -/* 0D63B0 800D57B0 1420FFF2 */ bnez $at, .L800D577C -/* 0D63B4 800D57B4 AFAD002C */ sw $t5, 0x2c($sp) -/* 0D63B8 800D57B8 00001025 */ move $v0, $zero -.L800D57BC: -/* 0D63BC 800D57BC 8FBF001C */ lw $ra, 0x1c($sp) -/* 0D63C0 800D57C0 27BD0078 */ addiu $sp, $sp, 0x78 -/* 0D63C4 800D57C4 03E00008 */ jr $ra -/* 0D63C8 800D57C8 00000000 */ nop - -glabel func_800D57CC -/* 0D63CC 800D57CC 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0D63D0 800D57D0 AFA40038 */ sw $a0, 0x38($sp) -/* 0D63D4 800D57D4 8FAE0038 */ lw $t6, 0x38($sp) -/* 0D63D8 800D57D8 AFBF001C */ sw $ra, 0x1c($sp) -/* 0D63DC 800D57DC AFA5003C */ sw $a1, 0x3c($sp) -/* 0D63E0 800D57E0 AFA0002C */ sw $zero, 0x2c($sp) -/* 0D63E4 800D57E4 91CF0065 */ lbu $t7, 0x65($t6) -/* 0D63E8 800D57E8 11E0000A */ beqz $t7, .L800D5814 -/* 0D63EC 800D57EC 00000000 */ nop -/* 0D63F0 800D57F0 A1C00065 */ sb $zero, 0x65($t6) -/* 0D63F4 800D57F4 0C0357F7 */ jal func_800D5FDC -/* 0D63F8 800D57F8 8FA40038 */ lw $a0, 0x38($sp) -/* 0D63FC 800D57FC AFA2002C */ sw $v0, 0x2c($sp) -/* 0D6400 800D5800 8FB8002C */ lw $t8, 0x2c($sp) -/* 0D6404 800D5804 13000003 */ beqz $t8, .L800D5814 -/* 0D6408 800D5808 00000000 */ nop -/* 0D640C 800D580C 10000051 */ b .L800D5954 -/* 0D6410 800D5810 03001025 */ move $v0, $t8 -.L800D5814: -/* 0D6414 800D5814 24190001 */ li $t9, 1 -/* 0D6418 800D5818 27A80030 */ addiu $t0, $sp, 0x30 -/* 0D641C 800D581C A5190000 */ sh $t9, ($t0) -/* 0D6420 800D5820 24090003 */ li $t1, 3 -/* 0D6424 800D5824 27AA0030 */ addiu $t2, $sp, 0x30 -/* 0D6428 800D5828 A5490002 */ sh $t1, 2($t2) -/* 0D642C 800D582C 240B0004 */ li $t3, 4 -/* 0D6430 800D5830 27AC0030 */ addiu $t4, $sp, 0x30 -/* 0D6434 800D5834 A58B0004 */ sh $t3, 4($t4) -/* 0D6438 800D5838 240D0006 */ li $t5, 6 -/* 0D643C 800D583C 27AF0030 */ addiu $t7, $sp, 0x30 -/* 0D6440 800D5840 A5ED0006 */ sh $t5, 6($t7) -/* 0D6444 800D5844 240E0001 */ li $t6, 1 -/* 0D6448 800D5848 AFAE0024 */ sw $t6, 0x24($sp) -.L800D584C: -/* 0D644C 800D584C 8FB90024 */ lw $t9, 0x24($sp) -/* 0D6450 800D5850 8FB80038 */ lw $t8, 0x38($sp) -/* 0D6454 800D5854 8FA7003C */ lw $a3, 0x3c($sp) -/* 0D6458 800D5858 00194040 */ sll $t0, $t9, 1 -/* 0D645C 800D585C 03A83021 */ addu $a2, $sp, $t0 -/* 0D6460 800D5860 94C60030 */ lhu $a2, 0x30($a2) -/* 0D6464 800D5864 8F040004 */ lw $a0, 4($t8) -/* 0D6468 800D5868 0C033728 */ jal func_800CDCA0 -/* 0D646C 800D586C 8F050008 */ lw $a1, 8($t8) -/* 0D6470 800D5870 AFA2002C */ sw $v0, 0x2c($sp) -/* 0D6474 800D5874 8FA9002C */ lw $t1, 0x2c($sp) -/* 0D6478 800D5878 11200003 */ beqz $t1, .L800D5888 -/* 0D647C 800D587C 00000000 */ nop -/* 0D6480 800D5880 10000034 */ b .L800D5954 -/* 0D6484 800D5884 01201025 */ move $v0, $t1 -.L800D5888: -/* 0D6488 800D5888 8FA4003C */ lw $a0, 0x3c($sp) -/* 0D648C 800D588C 27A5002A */ addiu $a1, $sp, 0x2a -/* 0D6490 800D5890 0C0354D3 */ jal func_800D534C -/* 0D6494 800D5894 27A60028 */ addiu $a2, $sp, 0x28 -/* 0D6498 800D5898 8FAA003C */ lw $t2, 0x3c($sp) -/* 0D649C 800D589C 97AC002A */ lhu $t4, 0x2a($sp) -/* 0D64A0 800D58A0 954B001C */ lhu $t3, 0x1c($t2) -/* 0D64A4 800D58A4 156C0005 */ bne $t3, $t4, .L800D58BC -/* 0D64A8 800D58A8 00000000 */ nop -/* 0D64AC 800D58AC 954D001E */ lhu $t5, 0x1e($t2) -/* 0D64B0 800D58B0 97AF0028 */ lhu $t7, 0x28($sp) -/* 0D64B4 800D58B4 11AF0006 */ beq $t5, $t7, .L800D58D0 -/* 0D64B8 800D58B8 00000000 */ nop -.L800D58BC: -/* 0D64BC 800D58BC 8FAE0024 */ lw $t6, 0x24($sp) -/* 0D64C0 800D58C0 25D80001 */ addiu $t8, $t6, 1 -/* 0D64C4 800D58C4 2B010004 */ slti $at, $t8, 4 -/* 0D64C8 800D58C8 1420FFE0 */ bnez $at, .L800D584C -/* 0D64CC 800D58CC AFB80024 */ sw $t8, 0x24($sp) -.L800D58D0: -/* 0D64D0 800D58D0 8FB90024 */ lw $t9, 0x24($sp) -/* 0D64D4 800D58D4 24010004 */ li $at, 4 -/* 0D64D8 800D58D8 17210003 */ bne $t9, $at, .L800D58E8 -/* 0D64DC 800D58DC 00000000 */ nop -/* 0D64E0 800D58E0 1000001C */ b .L800D5954 -/* 0D64E4 800D58E4 2402000A */ li $v0, 10 -.L800D58E8: -/* 0D64E8 800D58E8 AFA00020 */ sw $zero, 0x20($sp) -.L800D58EC: -/* 0D64EC 800D58EC 8FA80020 */ lw $t0, 0x20($sp) -/* 0D64F0 800D58F0 8FA90024 */ lw $t1, 0x24($sp) -/* 0D64F4 800D58F4 11090011 */ beq $t0, $t1, .L800D593C -/* 0D64F8 800D58F8 00000000 */ nop -/* 0D64FC 800D58FC 8FAB0038 */ lw $t3, 0x38($sp) -/* 0D6500 800D5900 00086040 */ sll $t4, $t0, 1 -/* 0D6504 800D5904 03AC3021 */ addu $a2, $sp, $t4 -/* 0D6508 800D5908 94C60030 */ lhu $a2, 0x30($a2) -/* 0D650C 800D590C 240A0001 */ li $t2, 1 -/* 0D6510 800D5910 8D640004 */ lw $a0, 4($t3) -/* 0D6514 800D5914 8D650008 */ lw $a1, 8($t3) -/* 0D6518 800D5918 AFAA0010 */ sw $t2, 0x10($sp) -/* 0D651C 800D591C 0C03363C */ jal func_800CD8F0 -/* 0D6520 800D5920 8FA7003C */ lw $a3, 0x3c($sp) -/* 0D6524 800D5924 AFA2002C */ sw $v0, 0x2c($sp) -/* 0D6528 800D5928 8FAD002C */ lw $t5, 0x2c($sp) -/* 0D652C 800D592C 11A00003 */ beqz $t5, .L800D593C -/* 0D6530 800D5930 00000000 */ nop -/* 0D6534 800D5934 10000007 */ b .L800D5954 -/* 0D6538 800D5938 01A01025 */ move $v0, $t5 -.L800D593C: -/* 0D653C 800D593C 8FAF0020 */ lw $t7, 0x20($sp) -/* 0D6540 800D5940 25EE0001 */ addiu $t6, $t7, 1 -/* 0D6544 800D5944 29C10004 */ slti $at, $t6, 4 -/* 0D6548 800D5948 1420FFE8 */ bnez $at, .L800D58EC -/* 0D654C 800D594C AFAE0020 */ sw $t6, 0x20($sp) -/* 0D6550 800D5950 00001025 */ move $v0, $zero -.L800D5954: -/* 0D6554 800D5954 8FBF001C */ lw $ra, 0x1c($sp) -/* 0D6558 800D5958 27BD0038 */ addiu $sp, $sp, 0x38 -/* 0D655C 800D595C 03E00008 */ jr $ra -/* 0D6560 800D5960 00000000 */ nop - -glabel func_800D5964 -/* 0D6564 800D5964 27BDFF98 */ addiu $sp, $sp, -0x68 -/* 0D6568 800D5968 AFA40068 */ sw $a0, 0x68($sp) -/* 0D656C 800D596C 8FAE0068 */ lw $t6, 0x68($sp) -/* 0D6570 800D5970 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D6574 800D5974 91CF0065 */ lbu $t7, 0x65($t6) -/* 0D6578 800D5978 11E0000A */ beqz $t7, .L800D59A4 -/* 0D657C 800D597C 00000000 */ nop -/* 0D6580 800D5980 A1C00065 */ sb $zero, 0x65($t6) -/* 0D6584 800D5984 0C0357F7 */ jal func_800D5FDC -/* 0D6588 800D5988 8FA40068 */ lw $a0, 0x68($sp) -/* 0D658C 800D598C AFA2001C */ sw $v0, 0x1c($sp) -/* 0D6590 800D5990 8FB8001C */ lw $t8, 0x1c($sp) -/* 0D6594 800D5994 13000003 */ beqz $t8, .L800D59A4 -/* 0D6598 800D5998 00000000 */ nop -/* 0D659C 800D599C 10000084 */ b .L800D5BB0 -/* 0D65A0 800D59A0 03001025 */ move $v0, $t8 -.L800D59A4: -/* 0D65A4 800D59A4 8FB90068 */ lw $t9, 0x68($sp) -/* 0D65A8 800D59A8 24060001 */ li $a2, 1 -/* 0D65AC 800D59AC 27A70040 */ addiu $a3, $sp, 0x40 -/* 0D65B0 800D59B0 8F240004 */ lw $a0, 4($t9) -/* 0D65B4 800D59B4 0C033728 */ jal func_800CDCA0 -/* 0D65B8 800D59B8 8F250008 */ lw $a1, 8($t9) -/* 0D65BC 800D59BC AFA2001C */ sw $v0, 0x1c($sp) -/* 0D65C0 800D59C0 8FA8001C */ lw $t0, 0x1c($sp) -/* 0D65C4 800D59C4 11000003 */ beqz $t0, .L800D59D4 -/* 0D65C8 800D59C8 00000000 */ nop -/* 0D65CC 800D59CC 10000078 */ b .L800D5BB0 -/* 0D65D0 800D59D0 01001025 */ move $v0, $t0 -.L800D59D4: -/* 0D65D4 800D59D4 27A40040 */ addiu $a0, $sp, 0x40 -/* 0D65D8 800D59D8 27A50062 */ addiu $a1, $sp, 0x62 -/* 0D65DC 800D59DC 0C0354D3 */ jal func_800D534C -/* 0D65E0 800D59E0 27A60060 */ addiu $a2, $sp, 0x60 -/* 0D65E4 800D59E4 27A90040 */ addiu $t1, $sp, 0x40 -/* 0D65E8 800D59E8 AFA90018 */ sw $t1, 0x18($sp) -/* 0D65EC 800D59EC 952A001C */ lhu $t2, 0x1c($t1) -/* 0D65F0 800D59F0 97AB0062 */ lhu $t3, 0x62($sp) -/* 0D65F4 800D59F4 154B0005 */ bne $t2, $t3, .L800D5A0C -/* 0D65F8 800D59F8 00000000 */ nop -/* 0D65FC 800D59FC 952C001E */ lhu $t4, 0x1e($t1) -/* 0D6600 800D5A00 97AD0060 */ lhu $t5, 0x60($sp) -/* 0D6604 800D5A04 118D001B */ beq $t4, $t5, .L800D5A74 -/* 0D6608 800D5A08 00000000 */ nop -.L800D5A0C: -/* 0D660C 800D5A0C 8FA40068 */ lw $a0, 0x68($sp) -/* 0D6610 800D5A10 0C0355F3 */ jal func_800D57CC -/* 0D6614 800D5A14 8FA50018 */ lw $a1, 0x18($sp) -/* 0D6618 800D5A18 AFA2001C */ sw $v0, 0x1c($sp) -/* 0D661C 800D5A1C 8FAF001C */ lw $t7, 0x1c($sp) -/* 0D6620 800D5A20 2401000A */ li $at, 10 -/* 0D6624 800D5A24 15E1000E */ bne $t7, $at, .L800D5A60 -/* 0D6628 800D5A28 00000000 */ nop -/* 0D662C 800D5A2C 8FA40068 */ lw $a0, 0x68($sp) -/* 0D6630 800D5A30 8FA50018 */ lw $a1, 0x18($sp) -/* 0D6634 800D5A34 0C0354ED */ jal func_800D53B4 -/* 0D6638 800D5A38 27A60020 */ addiu $a2, $sp, 0x20 -/* 0D663C 800D5A3C AFA2001C */ sw $v0, 0x1c($sp) -/* 0D6640 800D5A40 8FAE001C */ lw $t6, 0x1c($sp) -/* 0D6644 800D5A44 11C00003 */ beqz $t6, .L800D5A54 -/* 0D6648 800D5A48 00000000 */ nop -/* 0D664C 800D5A4C 10000058 */ b .L800D5BB0 -/* 0D6650 800D5A50 01C01025 */ move $v0, $t6 -.L800D5A54: -/* 0D6654 800D5A54 27B80020 */ addiu $t8, $sp, 0x20 -/* 0D6658 800D5A58 10000006 */ b .L800D5A74 -/* 0D665C 800D5A5C AFB80018 */ sw $t8, 0x18($sp) -.L800D5A60: -/* 0D6660 800D5A60 8FB9001C */ lw $t9, 0x1c($sp) -/* 0D6664 800D5A64 13200003 */ beqz $t9, .L800D5A74 -/* 0D6668 800D5A68 00000000 */ nop -/* 0D666C 800D5A6C 10000050 */ b .L800D5BB0 -/* 0D6670 800D5A70 03201025 */ move $v0, $t9 -.L800D5A74: -/* 0D6674 800D5A74 8FA80018 */ lw $t0, 0x18($sp) -/* 0D6678 800D5A78 950A0018 */ lhu $t2, 0x18($t0) -/* 0D667C 800D5A7C 314B0001 */ andi $t3, $t2, 1 -/* 0D6680 800D5A80 15600013 */ bnez $t3, .L800D5AD0 -/* 0D6684 800D5A84 00000000 */ nop -/* 0D6688 800D5A88 8FA40068 */ lw $a0, 0x68($sp) -/* 0D668C 800D5A8C 01002825 */ move $a1, $t0 -/* 0D6690 800D5A90 0C0354ED */ jal func_800D53B4 -/* 0D6694 800D5A94 27A60020 */ addiu $a2, $sp, 0x20 -/* 0D6698 800D5A98 AFA2001C */ sw $v0, 0x1c($sp) -/* 0D669C 800D5A9C 8FA9001C */ lw $t1, 0x1c($sp) -/* 0D66A0 800D5AA0 11200003 */ beqz $t1, .L800D5AB0 -/* 0D66A4 800D5AA4 00000000 */ nop -/* 0D66A8 800D5AA8 10000041 */ b .L800D5BB0 -/* 0D66AC 800D5AAC 01201025 */ move $v0, $t1 -.L800D5AB0: -/* 0D66B0 800D5AB0 27AC0020 */ addiu $t4, $sp, 0x20 -/* 0D66B4 800D5AB4 AFAC0018 */ sw $t4, 0x18($sp) -/* 0D66B8 800D5AB8 958D0018 */ lhu $t5, 0x18($t4) -/* 0D66BC 800D5ABC 31AF0001 */ andi $t7, $t5, 1 -/* 0D66C0 800D5AC0 15E00003 */ bnez $t7, .L800D5AD0 -/* 0D66C4 800D5AC4 00000000 */ nop -/* 0D66C8 800D5AC8 10000039 */ b .L800D5BB0 -/* 0D66CC 800D5ACC 2402000B */ li $v0, 11 -.L800D5AD0: -/* 0D66D0 800D5AD0 AFA00064 */ sw $zero, 0x64($sp) -.L800D5AD4: -/* 0D66D4 800D5AD4 8FAE0018 */ lw $t6, 0x18($sp) -/* 0D66D8 800D5AD8 8FB80064 */ lw $t8, 0x64($sp) -/* 0D66DC 800D5ADC 8FAB0068 */ lw $t3, 0x68($sp) -/* 0D66E0 800D5AE0 01D8C821 */ addu $t9, $t6, $t8 -/* 0D66E4 800D5AE4 932A0000 */ lbu $t2, ($t9) -/* 0D66E8 800D5AE8 01784021 */ addu $t0, $t3, $t8 -/* 0D66EC 800D5AEC A10A000C */ sb $t2, 0xc($t0) -/* 0D66F0 800D5AF0 8FA90064 */ lw $t1, 0x64($sp) -/* 0D66F4 800D5AF4 252C0001 */ addiu $t4, $t1, 1 -/* 0D66F8 800D5AF8 29810020 */ slti $at, $t4, 0x20 -/* 0D66FC 800D5AFC 1420FFF5 */ bnez $at, .L800D5AD4 -/* 0D6700 800D5B00 AFAC0064 */ sw $t4, 0x64($sp) -/* 0D6704 800D5B04 8FAD0018 */ lw $t5, 0x18($sp) -/* 0D6708 800D5B08 8FAE0068 */ lw $t6, 0x68($sp) -/* 0D670C 800D5B0C 24060007 */ li $a2, 7 -/* 0D6710 800D5B10 91AF001B */ lbu $t7, 0x1b($t5) -/* 0D6714 800D5B14 240D0010 */ li $t5, 16 -/* 0D6718 800D5B18 ADCF004C */ sw $t7, 0x4c($t6) -/* 0D671C 800D5B1C 8FB90018 */ lw $t9, 0x18($sp) -/* 0D6720 800D5B20 8FB80068 */ lw $t8, 0x68($sp) -/* 0D6724 800D5B24 240E0008 */ li $t6, 8 -/* 0D6728 800D5B28 932B001A */ lbu $t3, 0x1a($t9) -/* 0D672C 800D5B2C A30B0064 */ sb $t3, 0x64($t8) -/* 0D6730 800D5B30 8FAA0068 */ lw $t2, 0x68($sp) -/* 0D6734 800D5B34 91480064 */ lbu $t0, 0x64($t2) -/* 0D6738 800D5B38 00084840 */ sll $t1, $t0, 1 -/* 0D673C 800D5B3C 252C0003 */ addiu $t4, $t1, 3 -/* 0D6740 800D5B40 AD4C0060 */ sw $t4, 0x60($t2) -/* 0D6744 800D5B44 8FAF0068 */ lw $t7, 0x68($sp) -/* 0D6748 800D5B48 ADED0050 */ sw $t5, 0x50($t7) -/* 0D674C 800D5B4C 8FB90068 */ lw $t9, 0x68($sp) -/* 0D6750 800D5B50 AF2E0054 */ sw $t6, 0x54($t9) -/* 0D6754 800D5B54 8FAB0068 */ lw $t3, 0x68($sp) -/* 0D6758 800D5B58 91780064 */ lbu $t8, 0x64($t3) -/* 0D675C 800D5B5C 001840C0 */ sll $t0, $t8, 3 -/* 0D6760 800D5B60 25090008 */ addiu $t1, $t0, 8 -/* 0D6764 800D5B64 AD690058 */ sw $t1, 0x58($t3) -/* 0D6768 800D5B68 8FAC0068 */ lw $t4, 0x68($sp) -/* 0D676C 800D5B6C 918D0064 */ lbu $t5, 0x64($t4) -/* 0D6770 800D5B70 8D8A0058 */ lw $t2, 0x58($t4) -/* 0D6774 800D5B74 000D78C0 */ sll $t7, $t5, 3 -/* 0D6778 800D5B78 014F7021 */ addu $t6, $t2, $t7 -/* 0D677C 800D5B7C AD8E005C */ sw $t6, 0x5c($t4) -/* 0D6780 800D5B80 8FB90068 */ lw $t9, 0x68($sp) -/* 0D6784 800D5B84 8F240004 */ lw $a0, 4($t9) -/* 0D6788 800D5B88 8F250008 */ lw $a1, 8($t9) -/* 0D678C 800D5B8C 0C033728 */ jal func_800CDCA0 -/* 0D6790 800D5B90 2727002C */ addiu $a3, $t9, 0x2c -/* 0D6794 800D5B94 AFA2001C */ sw $v0, 0x1c($sp) -/* 0D6798 800D5B98 8FB8001C */ lw $t8, 0x1c($sp) -/* 0D679C 800D5B9C 13000003 */ beqz $t8, .L800D5BAC -/* 0D67A0 800D5BA0 00000000 */ nop -/* 0D67A4 800D5BA4 10000002 */ b .L800D5BB0 -/* 0D67A8 800D5BA8 03001025 */ move $v0, $t8 -.L800D5BAC: -/* 0D67AC 800D5BAC 00001025 */ move $v0, $zero -.L800D5BB0: -/* 0D67B0 800D5BB0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D67B4 800D5BB4 27BD0068 */ addiu $sp, $sp, 0x68 -/* 0D67B8 800D5BB8 03E00008 */ jr $ra -/* 0D67BC 800D5BBC 00000000 */ nop - -glabel func_800D5BC0 -/* 0D67C0 800D5BC0 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 0D67C4 800D5BC4 AFA40040 */ sw $a0, 0x40($sp) -/* 0D67C8 800D5BC8 8FAE0040 */ lw $t6, 0x40($sp) -/* 0D67CC 800D5BCC AFBF0014 */ sw $ra, 0x14($sp) -/* 0D67D0 800D5BD0 91CF0065 */ lbu $t7, 0x65($t6) -/* 0D67D4 800D5BD4 11E0000A */ beqz $t7, .L800D5C00 -/* 0D67D8 800D5BD8 00000000 */ nop -/* 0D67DC 800D5BDC A1C00065 */ sb $zero, 0x65($t6) -/* 0D67E0 800D5BE0 0C0357F7 */ jal func_800D5FDC -/* 0D67E4 800D5BE4 8FA40040 */ lw $a0, 0x40($sp) -/* 0D67E8 800D5BE8 AFA20018 */ sw $v0, 0x18($sp) -/* 0D67EC 800D5BEC 8FB80018 */ lw $t8, 0x18($sp) -/* 0D67F0 800D5BF0 13000003 */ beqz $t8, .L800D5C00 -/* 0D67F4 800D5BF4 00000000 */ nop -/* 0D67F8 800D5BF8 1000002C */ b .L800D5CAC -/* 0D67FC 800D5BFC 03001025 */ move $v0, $t8 -.L800D5C00: -/* 0D6800 800D5C00 8FB90040 */ lw $t9, 0x40($sp) -/* 0D6804 800D5C04 24060001 */ li $a2, 1 -/* 0D6808 800D5C08 27A7001C */ addiu $a3, $sp, 0x1c -/* 0D680C 800D5C0C 8F240004 */ lw $a0, 4($t9) -/* 0D6810 800D5C10 0C033728 */ jal func_800CDCA0 -/* 0D6814 800D5C14 8F250008 */ lw $a1, 8($t9) -/* 0D6818 800D5C18 AFA20018 */ sw $v0, 0x18($sp) -/* 0D681C 800D5C1C 8FA80018 */ lw $t0, 0x18($sp) -/* 0D6820 800D5C20 11000011 */ beqz $t0, .L800D5C68 -/* 0D6824 800D5C24 24010002 */ li $at, 2 -/* 0D6828 800D5C28 11010003 */ beq $t0, $at, .L800D5C38 -/* 0D682C 800D5C2C 00000000 */ nop -/* 0D6830 800D5C30 1000001E */ b .L800D5CAC -/* 0D6834 800D5C34 01001025 */ move $v0, $t0 -.L800D5C38: -/* 0D6838 800D5C38 8FA90040 */ lw $t1, 0x40($sp) -/* 0D683C 800D5C3C 24060001 */ li $a2, 1 -/* 0D6840 800D5C40 27A7001C */ addiu $a3, $sp, 0x1c -/* 0D6844 800D5C44 8D240004 */ lw $a0, 4($t1) -/* 0D6848 800D5C48 0C033728 */ jal func_800CDCA0 -/* 0D684C 800D5C4C 8D250008 */ lw $a1, 8($t1) -/* 0D6850 800D5C50 AFA20018 */ sw $v0, 0x18($sp) -/* 0D6854 800D5C54 8FAA0018 */ lw $t2, 0x18($sp) -/* 0D6858 800D5C58 11400003 */ beqz $t2, .L800D5C68 -/* 0D685C 800D5C5C 00000000 */ nop -/* 0D6860 800D5C60 10000012 */ b .L800D5CAC -/* 0D6864 800D5C64 01401025 */ move $v0, $t2 -.L800D5C68: -/* 0D6868 800D5C68 AFA0003C */ sw $zero, 0x3c($sp) -.L800D5C6C: -/* 0D686C 800D5C6C 8FAB003C */ lw $t3, 0x3c($sp) -/* 0D6870 800D5C70 8FAD0040 */ lw $t5, 0x40($sp) -/* 0D6874 800D5C74 03AB6021 */ addu $t4, $sp, $t3 -/* 0D6878 800D5C78 01AB7821 */ addu $t7, $t5, $t3 -/* 0D687C 800D5C7C 91EE000C */ lbu $t6, 0xc($t7) -/* 0D6880 800D5C80 918C001C */ lbu $t4, 0x1c($t4) -/* 0D6884 800D5C84 118E0003 */ beq $t4, $t6, .L800D5C94 -/* 0D6888 800D5C88 00000000 */ nop -/* 0D688C 800D5C8C 10000007 */ b .L800D5CAC -/* 0D6890 800D5C90 24020002 */ li $v0, 2 -.L800D5C94: -/* 0D6894 800D5C94 8FB8003C */ lw $t8, 0x3c($sp) -/* 0D6898 800D5C98 27190001 */ addiu $t9, $t8, 1 -/* 0D689C 800D5C9C 2B210020 */ slti $at, $t9, 0x20 -/* 0D68A0 800D5CA0 1420FFF2 */ bnez $at, .L800D5C6C -/* 0D68A4 800D5CA4 AFB9003C */ sw $t9, 0x3c($sp) -/* 0D68A8 800D5CA8 00001025 */ move $v0, $zero -.L800D5CAC: -/* 0D68AC 800D5CAC 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D68B0 800D5CB0 27BD0040 */ addiu $sp, $sp, 0x40 -/* 0D68B4 800D5CB4 03E00008 */ jr $ra -/* 0D68B8 800D5CB8 00000000 */ nop - -glabel func_800D5CBC -/* 0D68BC 800D5CBC 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0D68C0 800D5CC0 AFA40038 */ sw $a0, 0x38($sp) -/* 0D68C4 800D5CC4 8FAE0038 */ lw $t6, 0x38($sp) -/* 0D68C8 800D5CC8 AFBF001C */ sw $ra, 0x1c($sp) -/* 0D68CC 800D5CCC AFA5003C */ sw $a1, 0x3c($sp) -/* 0D68D0 800D5CD0 AFA60040 */ sw $a2, 0x40($sp) -/* 0D68D4 800D5CD4 AFA70044 */ sw $a3, 0x44($sp) -/* 0D68D8 800D5CD8 91CF0065 */ lbu $t7, 0x65($t6) -/* 0D68DC 800D5CDC 11E0000A */ beqz $t7, .L800D5D08 -/* 0D68E0 800D5CE0 00000000 */ nop -/* 0D68E4 800D5CE4 A1C00065 */ sb $zero, 0x65($t6) -/* 0D68E8 800D5CE8 0C0357F7 */ jal func_800D5FDC -/* 0D68EC 800D5CEC 8FA40038 */ lw $a0, 0x38($sp) -/* 0D68F0 800D5CF0 AFA2002C */ sw $v0, 0x2c($sp) -/* 0D68F4 800D5CF4 8FB8002C */ lw $t8, 0x2c($sp) -/* 0D68F8 800D5CF8 13000003 */ beqz $t8, .L800D5D08 -/* 0D68FC 800D5CFC 00000000 */ nop -/* 0D6900 800D5D00 100000B2 */ b .L800D5FCC -/* 0D6904 800D5D04 03001025 */ move $v0, $t8 -.L800D5D08: -/* 0D6908 800D5D08 93B90047 */ lbu $t9, 0x47($sp) -/* 0D690C 800D5D0C 1B200004 */ blez $t9, .L800D5D20 -/* 0D6910 800D5D10 00000000 */ nop -/* 0D6914 800D5D14 24080001 */ li $t0, 1 -/* 0D6918 800D5D18 10000004 */ b .L800D5D2C -/* 0D691C 800D5D1C AFA80028 */ sw $t0, 0x28($sp) -.L800D5D20: -/* 0D6920 800D5D20 8FA90038 */ lw $t1, 0x38($sp) -/* 0D6924 800D5D24 8D2A0060 */ lw $t2, 0x60($t1) -/* 0D6928 800D5D28 AFAA0028 */ sw $t2, 0x28($sp) -.L800D5D2C: -/* 0D692C 800D5D2C 93AB0043 */ lbu $t3, 0x43($sp) -/* 0D6930 800D5D30 24010001 */ li $at, 1 -/* 0D6934 800D5D34 1561000C */ bne $t3, $at, .L800D5D68 -/* 0D6938 800D5D38 00000000 */ nop -/* 0D693C 800D5D3C 8FAD0028 */ lw $t5, 0x28($sp) -/* 0D6940 800D5D40 8FAC003C */ lw $t4, 0x3c($sp) -/* 0D6944 800D5D44 000D2823 */ negu $a1, $t5 -/* 0D6948 800D5D48 00057040 */ sll $t6, $a1, 1 -/* 0D694C 800D5D4C 01C02825 */ move $a1, $t6 -/* 0D6950 800D5D50 000D7840 */ sll $t7, $t5, 1 -/* 0D6954 800D5D54 24A50100 */ addiu $a1, $a1, 0x100 -/* 0D6958 800D5D58 0C0354BC */ jal func_800D52F0 -/* 0D695C 800D5D5C 018F2021 */ addu $a0, $t4, $t7 -/* 0D6960 800D5D60 8FB8003C */ lw $t8, 0x3c($sp) -/* 0D6964 800D5D64 A3020001 */ sb $v0, 1($t8) -.L800D5D68: -/* 0D6968 800D5D68 AFA00030 */ sw $zero, 0x30($sp) -.L800D5D6C: -/* 0D696C 800D5D6C 8FA80030 */ lw $t0, 0x30($sp) -/* 0D6970 800D5D70 8FB9003C */ lw $t9, 0x3c($sp) -/* 0D6974 800D5D74 93AB0043 */ lbu $t3, 0x43($sp) -/* 0D6978 800D5D78 00084940 */ sll $t1, $t0, 5 -/* 0D697C 800D5D7C 24010001 */ li $at, 1 -/* 0D6980 800D5D80 03295021 */ addu $t2, $t9, $t1 -/* 0D6984 800D5D84 1561001B */ bne $t3, $at, .L800D5DF4 -/* 0D6988 800D5D88 AFAA0024 */ sw $t2, 0x24($sp) -/* 0D698C 800D5D8C 8FAC0038 */ lw $t4, 0x38($sp) -/* 0D6990 800D5D90 93AD0047 */ lbu $t5, 0x47($sp) -/* 0D6994 800D5D94 01403825 */ move $a3, $t2 -/* 0D6998 800D5D98 8D8F0054 */ lw $t7, 0x54($t4) -/* 0D699C 800D5D9C 000D70C0 */ sll $t6, $t5, 3 -/* 0D69A0 800D5DA0 8D840004 */ lw $a0, 4($t4) -/* 0D69A4 800D5DA4 8D850008 */ lw $a1, 8($t4) -/* 0D69A8 800D5DA8 01EEC021 */ addu $t8, $t7, $t6 -/* 0D69AC 800D5DAC 03083021 */ addu $a2, $t8, $t0 -/* 0D69B0 800D5DB0 0C03363C */ jal func_800CD8F0 -/* 0D69B4 800D5DB4 AFA00010 */ sw $zero, 0x10($sp) -/* 0D69B8 800D5DB8 8FB90038 */ lw $t9, 0x38($sp) -/* 0D69BC 800D5DBC 93AB0047 */ lbu $t3, 0x47($sp) -/* 0D69C0 800D5DC0 AFA2002C */ sw $v0, 0x2c($sp) -/* 0D69C4 800D5DC4 8F290058 */ lw $t1, 0x58($t9) -/* 0D69C8 800D5DC8 8FAF0030 */ lw $t7, 0x30($sp) -/* 0D69CC 800D5DCC 000B60C0 */ sll $t4, $t3, 3 -/* 0D69D0 800D5DD0 8F250008 */ lw $a1, 8($t9) -/* 0D69D4 800D5DD4 8F240004 */ lw $a0, 4($t9) -/* 0D69D8 800D5DD8 012C6821 */ addu $t5, $t1, $t4 -/* 0D69DC 800D5DDC AFA00010 */ sw $zero, 0x10($sp) -/* 0D69E0 800D5DE0 8FA70024 */ lw $a3, 0x24($sp) -/* 0D69E4 800D5DE4 0C03363C */ jal func_800CD8F0 -/* 0D69E8 800D5DE8 01AF3021 */ addu $a2, $t5, $t7 -/* 0D69EC 800D5DEC 1000000D */ b .L800D5E24 -/* 0D69F0 800D5DF0 AFA2002C */ sw $v0, 0x2c($sp) -.L800D5DF4: -/* 0D69F4 800D5DF4 8FAE0038 */ lw $t6, 0x38($sp) -/* 0D69F8 800D5DF8 93A80047 */ lbu $t0, 0x47($sp) -/* 0D69FC 800D5DFC 8FAB0030 */ lw $t3, 0x30($sp) -/* 0D6A00 800D5E00 8DD80054 */ lw $t8, 0x54($t6) -/* 0D6A04 800D5E04 000850C0 */ sll $t2, $t0, 3 -/* 0D6A08 800D5E08 8FA70024 */ lw $a3, 0x24($sp) -/* 0D6A0C 800D5E0C 030AC821 */ addu $t9, $t8, $t2 -/* 0D6A10 800D5E10 8DC40004 */ lw $a0, 4($t6) -/* 0D6A14 800D5E14 8DC50008 */ lw $a1, 8($t6) -/* 0D6A18 800D5E18 0C033728 */ jal func_800CDCA0 -/* 0D6A1C 800D5E1C 032B3021 */ addu $a2, $t9, $t3 -/* 0D6A20 800D5E20 AFA2002C */ sw $v0, 0x2c($sp) -.L800D5E24: -/* 0D6A24 800D5E24 8FA9002C */ lw $t1, 0x2c($sp) -/* 0D6A28 800D5E28 11200003 */ beqz $t1, .L800D5E38 -/* 0D6A2C 800D5E2C 00000000 */ nop -/* 0D6A30 800D5E30 10000066 */ b .L800D5FCC -/* 0D6A34 800D5E34 01201025 */ move $v0, $t1 -.L800D5E38: -/* 0D6A38 800D5E38 8FAC0030 */ lw $t4, 0x30($sp) -/* 0D6A3C 800D5E3C 258D0001 */ addiu $t5, $t4, 1 -/* 0D6A40 800D5E40 29A10008 */ slti $at, $t5, 8 -/* 0D6A44 800D5E44 1420FFC9 */ bnez $at, .L800D5D6C -/* 0D6A48 800D5E48 AFAD0030 */ sw $t5, 0x30($sp) -/* 0D6A4C 800D5E4C 93AF0043 */ lbu $t7, 0x43($sp) -/* 0D6A50 800D5E50 15E0005D */ bnez $t7, .L800D5FC8 -/* 0D6A54 800D5E54 00000000 */ nop -/* 0D6A58 800D5E58 8FA80028 */ lw $t0, 0x28($sp) -/* 0D6A5C 800D5E5C 8FAE003C */ lw $t6, 0x3c($sp) -/* 0D6A60 800D5E60 00082823 */ negu $a1, $t0 -/* 0D6A64 800D5E64 00055040 */ sll $t2, $a1, 1 -/* 0D6A68 800D5E68 01402825 */ move $a1, $t2 -/* 0D6A6C 800D5E6C 0008C040 */ sll $t8, $t0, 1 -/* 0D6A70 800D5E70 24A50100 */ addiu $a1, $a1, 0x100 -/* 0D6A74 800D5E74 0C0354BC */ jal func_800D52F0 -/* 0D6A78 800D5E78 01D82021 */ addu $a0, $t6, $t8 -/* 0D6A7C 800D5E7C 8FB9003C */ lw $t9, 0x3c($sp) -/* 0D6A80 800D5E80 A3A20037 */ sb $v0, 0x37($sp) -/* 0D6A84 800D5E84 93A90037 */ lbu $t1, 0x37($sp) -/* 0D6A88 800D5E88 932B0001 */ lbu $t3, 1($t9) -/* 0D6A8C 800D5E8C 11690037 */ beq $t3, $t1, .L800D5F6C -/* 0D6A90 800D5E90 00000000 */ nop -/* 0D6A94 800D5E94 AFA00030 */ sw $zero, 0x30($sp) -.L800D5E98: -/* 0D6A98 800D5E98 8FAD0030 */ lw $t5, 0x30($sp) -/* 0D6A9C 800D5E9C 8FAC003C */ lw $t4, 0x3c($sp) -/* 0D6AA0 800D5EA0 8FB80038 */ lw $t8, 0x38($sp) -/* 0D6AA4 800D5EA4 000D7940 */ sll $t7, $t5, 5 -/* 0D6AA8 800D5EA8 018F7021 */ addu $t6, $t4, $t7 -/* 0D6AAC 800D5EAC 93AA0047 */ lbu $t2, 0x47($sp) -/* 0D6AB0 800D5EB0 AFAE0024 */ sw $t6, 0x24($sp) -/* 0D6AB4 800D5EB4 8F080058 */ lw $t0, 0x58($t8) -/* 0D6AB8 800D5EB8 000AC8C0 */ sll $t9, $t2, 3 -/* 0D6ABC 800D5EBC 01C03825 */ move $a3, $t6 -/* 0D6AC0 800D5EC0 01195821 */ addu $t3, $t0, $t9 -/* 0D6AC4 800D5EC4 016D3021 */ addu $a2, $t3, $t5 -/* 0D6AC8 800D5EC8 8F050008 */ lw $a1, 8($t8) -/* 0D6ACC 800D5ECC 0C033728 */ jal func_800CDCA0 -/* 0D6AD0 800D5ED0 8F040004 */ lw $a0, 4($t8) -/* 0D6AD4 800D5ED4 8FA90030 */ lw $t1, 0x30($sp) -/* 0D6AD8 800D5ED8 AFA2002C */ sw $v0, 0x2c($sp) -/* 0D6ADC 800D5EDC 252C0001 */ addiu $t4, $t1, 1 -/* 0D6AE0 800D5EE0 29810008 */ slti $at, $t4, 8 -/* 0D6AE4 800D5EE4 1420FFEC */ bnez $at, .L800D5E98 -/* 0D6AE8 800D5EE8 AFAC0030 */ sw $t4, 0x30($sp) -/* 0D6AEC 800D5EEC 8FAF003C */ lw $t7, 0x3c($sp) -/* 0D6AF0 800D5EF0 93AA0037 */ lbu $t2, 0x37($sp) -/* 0D6AF4 800D5EF4 91F80001 */ lbu $t8, 1($t7) -/* 0D6AF8 800D5EF8 130A0003 */ beq $t8, $t2, .L800D5F08 -/* 0D6AFC 800D5EFC 00000000 */ nop -/* 0D6B00 800D5F00 10000032 */ b .L800D5FCC -/* 0D6B04 800D5F04 24020003 */ li $v0, 3 -.L800D5F08: -/* 0D6B08 800D5F08 AFA00030 */ sw $zero, 0x30($sp) -.L800D5F0C: -/* 0D6B0C 800D5F0C 8FB90030 */ lw $t9, 0x30($sp) -/* 0D6B10 800D5F10 8FA8003C */ lw $t0, 0x3c($sp) -/* 0D6B14 800D5F14 8FAE0038 */ lw $t6, 0x38($sp) -/* 0D6B18 800D5F18 00195940 */ sll $t3, $t9, 5 -/* 0D6B1C 800D5F1C 010B6821 */ addu $t5, $t0, $t3 -/* 0D6B20 800D5F20 93AC0047 */ lbu $t4, 0x47($sp) -/* 0D6B24 800D5F24 AFAD0024 */ sw $t5, 0x24($sp) -/* 0D6B28 800D5F28 8DC90054 */ lw $t1, 0x54($t6) -/* 0D6B2C 800D5F2C 000C78C0 */ sll $t7, $t4, 3 -/* 0D6B30 800D5F30 8DC50008 */ lw $a1, 8($t6) -/* 0D6B34 800D5F34 8DC40004 */ lw $a0, 4($t6) -/* 0D6B38 800D5F38 012FC021 */ addu $t8, $t1, $t7 -/* 0D6B3C 800D5F3C AFA00010 */ sw $zero, 0x10($sp) -/* 0D6B40 800D5F40 01A03825 */ move $a3, $t5 -/* 0D6B44 800D5F44 0C03363C */ jal func_800CD8F0 -/* 0D6B48 800D5F48 03193021 */ addu $a2, $t8, $t9 -/* 0D6B4C 800D5F4C 8FAA0030 */ lw $t2, 0x30($sp) -/* 0D6B50 800D5F50 AFA2002C */ sw $v0, 0x2c($sp) -/* 0D6B54 800D5F54 25480001 */ addiu $t0, $t2, 1 -/* 0D6B58 800D5F58 29010008 */ slti $at, $t0, 8 -/* 0D6B5C 800D5F5C 1420FFEB */ bnez $at, .L800D5F0C -/* 0D6B60 800D5F60 AFA80030 */ sw $t0, 0x30($sp) -/* 0D6B64 800D5F64 10000018 */ b .L800D5FC8 -/* 0D6B68 800D5F68 00000000 */ nop -.L800D5F6C: -/* 0D6B6C 800D5F6C AFA00030 */ sw $zero, 0x30($sp) -.L800D5F70: -/* 0D6B70 800D5F70 8FAE0030 */ lw $t6, 0x30($sp) -/* 0D6B74 800D5F74 8FAB003C */ lw $t3, 0x3c($sp) -/* 0D6B78 800D5F78 8FAF0038 */ lw $t7, 0x38($sp) -/* 0D6B7C 800D5F7C 000E6140 */ sll $t4, $t6, 5 -/* 0D6B80 800D5F80 016C4821 */ addu $t1, $t3, $t4 -/* 0D6B84 800D5F84 93B90047 */ lbu $t9, 0x47($sp) -/* 0D6B88 800D5F88 AFA90024 */ sw $t1, 0x24($sp) -/* 0D6B8C 800D5F8C 8DF80058 */ lw $t8, 0x58($t7) -/* 0D6B90 800D5F90 001968C0 */ sll $t5, $t9, 3 -/* 0D6B94 800D5F94 8DE50008 */ lw $a1, 8($t7) -/* 0D6B98 800D5F98 8DE40004 */ lw $a0, 4($t7) -/* 0D6B9C 800D5F9C 030D5021 */ addu $t2, $t8, $t5 -/* 0D6BA0 800D5FA0 AFA00010 */ sw $zero, 0x10($sp) -/* 0D6BA4 800D5FA4 01203825 */ move $a3, $t1 -/* 0D6BA8 800D5FA8 0C03363C */ jal func_800CD8F0 -/* 0D6BAC 800D5FAC 014E3021 */ addu $a2, $t2, $t6 -/* 0D6BB0 800D5FB0 8FA80030 */ lw $t0, 0x30($sp) -/* 0D6BB4 800D5FB4 AFA2002C */ sw $v0, 0x2c($sp) -/* 0D6BB8 800D5FB8 250B0001 */ addiu $t3, $t0, 1 -/* 0D6BBC 800D5FBC 29610008 */ slti $at, $t3, 8 -/* 0D6BC0 800D5FC0 1420FFEB */ bnez $at, .L800D5F70 -/* 0D6BC4 800D5FC4 AFAB0030 */ sw $t3, 0x30($sp) -.L800D5FC8: -/* 0D6BC8 800D5FC8 00001025 */ move $v0, $zero -.L800D5FCC: -/* 0D6BCC 800D5FCC 8FBF001C */ lw $ra, 0x1c($sp) -/* 0D6BD0 800D5FD0 27BD0038 */ addiu $sp, $sp, 0x38 -/* 0D6BD4 800D5FD4 03E00008 */ jr $ra -/* 0D6BD8 800D5FD8 00000000 */ nop - -glabel func_800D5FDC -/* 0D6BDC 800D5FDC 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 0D6BE0 800D5FE0 AFBF001C */ sw $ra, 0x1c($sp) -/* 0D6BE4 800D5FE4 AFA40048 */ sw $a0, 0x48($sp) -/* 0D6BE8 800D5FE8 AFA00020 */ sw $zero, 0x20($sp) -/* 0D6BEC 800D5FEC AFA00024 */ sw $zero, 0x24($sp) -.L800D5FF0: -/* 0D6BF0 800D5FF0 8FAE0048 */ lw $t6, 0x48($sp) -/* 0D6BF4 800D5FF4 8FB80024 */ lw $t8, 0x24($sp) -/* 0D6BF8 800D5FF8 91CF0065 */ lbu $t7, 0x65($t6) -/* 0D6BFC 800D5FFC 03B8C821 */ addu $t9, $sp, $t8 -/* 0D6C00 800D6000 A32F0028 */ sb $t7, 0x28($t9) -/* 0D6C04 800D6004 8FA80024 */ lw $t0, 0x24($sp) -/* 0D6C08 800D6008 25090001 */ addiu $t1, $t0, 1 -/* 0D6C0C 800D600C 29210020 */ slti $at, $t1, 0x20 -/* 0D6C10 800D6010 1420FFF7 */ bnez $at, .L800D5FF0 -/* 0D6C14 800D6014 AFA90024 */ sw $t1, 0x24($sp) -/* 0D6C18 800D6018 8FAA0048 */ lw $t2, 0x48($sp) -/* 0D6C1C 800D601C 24060400 */ li $a2, 1024 -/* 0D6C20 800D6020 27A70028 */ addiu $a3, $sp, 0x28 -/* 0D6C24 800D6024 8D440004 */ lw $a0, 4($t2) -/* 0D6C28 800D6028 8D450008 */ lw $a1, 8($t2) -/* 0D6C2C 800D602C 0C03363C */ jal func_800CD8F0 -/* 0D6C30 800D6030 AFA00010 */ sw $zero, 0x10($sp) -/* 0D6C34 800D6034 8FBF001C */ lw $ra, 0x1c($sp) -/* 0D6C38 800D6038 AFA20020 */ sw $v0, 0x20($sp) -/* 0D6C3C 800D603C 8FA20020 */ lw $v0, 0x20($sp) -/* 0D6C40 800D6040 03E00008 */ jr $ra -/* 0D6C44 800D6044 27BD0048 */ addiu $sp, $sp, 0x48 - -/* 0D6C48 800D6048 00000000 */ nop -/* 0D6C4C 800D604C 00000000 */ nop -glabel func_800D6050 -/* 0D6C50 800D6050 3C0EA410 */ lui $t6, %hi(D_A410000C) # $t6, 0xa410 -/* 0D6C54 800D6054 8DC4000C */ lw $a0, %lo(D_A410000C)($t6) -/* 0D6C58 800D6058 27BDFFF8 */ addiu $sp, $sp, -8 -/* 0D6C5C 800D605C 308F0100 */ andi $t7, $a0, 0x100 -/* 0D6C60 800D6060 11E00003 */ beqz $t7, .L800D6070 -/* 0D6C64 800D6064 00000000 */ nop -/* 0D6C68 800D6068 10000002 */ b .L800D6074 -/* 0D6C6C 800D606C 24020001 */ li $v0, 1 -.L800D6070: -/* 0D6C70 800D6070 00001025 */ move $v0, $zero -.L800D6074: -/* 0D6C74 800D6074 03E00008 */ jr $ra -/* 0D6C78 800D6078 27BD0008 */ addiu $sp, $sp, 8 - -/* 0D6C7C 800D607C 00000000 */ nop -glabel func_800D6080 -/* 0D6C80 800D6080 3C02800E */ lui $v0, 0x800e -/* 0D6C84 800D6084 03E00008 */ jr $ra -/* 0D6C88 800D6088 8C424870 */ lw $v0, 0x4870($v0) - -/* 0D6C8C 800D608C 00000000 */ nop -glabel func_800D6090 -/* 0D6C90 800D6090 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 0D6C94 800D6094 AFB1001C */ sw $s1, 0x1c($sp) -/* 0D6C98 800D6098 AFBF0024 */ sw $ra, 0x24($sp) -/* 0D6C9C 800D609C AFB20020 */ sw $s2, 0x20($sp) -/* 0D6CA0 800D60A0 AFB00018 */ sw $s0, 0x18($sp) -/* 0D6CA4 800D60A4 AFA00030 */ sw $zero, 0x30($sp) -/* 0D6CA8 800D60A8 3C11800E */ lui $s1, %hi(D_800E4874) # $s1, 0x800e -/* 0D6CAC 800D60AC 3C0EA440 */ lui $t6, %hi(D_A4400010) # $t6, 0xa440 -/* 0D6CB0 800D60B0 8E314874 */ lw $s1, %lo(D_800E4874)($s1) -/* 0D6CB4 800D60B4 8DCF0010 */ lw $t7, %lo(D_A4400010)($t6) -/* 0D6CB8 800D60B8 8E300008 */ lw $s0, 8($s1) -/* 0D6CBC 800D60BC 31F80001 */ andi $t8, $t7, 1 -/* 0D6CC0 800D60C0 AFB80030 */ sw $t8, 0x30($sp) -/* 0D6CC4 800D60C4 0C03233C */ jal func_800C8CF0 -/* 0D6CC8 800D60C8 8E240004 */ lw $a0, 4($s1) -/* 0D6CCC 800D60CC 8FB90030 */ lw $t9, 0x30($sp) -/* 0D6CD0 800D60D0 00409025 */ move $s2, $v0 -/* 0D6CD4 800D60D4 00194080 */ sll $t0, $t9, 2 -/* 0D6CD8 800D60D8 01194021 */ addu $t0, $t0, $t9 -/* 0D6CDC 800D60DC 00084080 */ sll $t0, $t0, 2 -/* 0D6CE0 800D60E0 02084821 */ addu $t1, $s0, $t0 -/* 0D6CE4 800D60E4 8D2A0028 */ lw $t2, 0x28($t1) -/* 0D6CE8 800D60E8 01525821 */ addu $t3, $t2, $s2 -/* 0D6CEC 800D60EC AFAB003C */ sw $t3, 0x3c($sp) -/* 0D6CF0 800D60F0 962C0000 */ lhu $t4, ($s1) -/* 0D6CF4 800D60F4 318D0002 */ andi $t5, $t4, 2 -/* 0D6CF8 800D60F8 11A00008 */ beqz $t5, .L800D611C -/* 0D6CFC 800D60FC 00000000 */ nop -/* 0D6D00 800D6100 8E0F0020 */ lw $t7, 0x20($s0) -/* 0D6D04 800D6104 8E2E0020 */ lw $t6, 0x20($s1) -/* 0D6D08 800D6108 2401F000 */ li $at, -4096 -/* 0D6D0C 800D610C 01E1C024 */ and $t8, $t7, $at -/* 0D6D10 800D6110 01D8C825 */ or $t9, $t6, $t8 -/* 0D6D14 800D6114 10000003 */ b .L800D6124 -/* 0D6D18 800D6118 AE390020 */ sw $t9, 0x20($s1) -.L800D611C: -/* 0D6D1C 800D611C 8E080020 */ lw $t0, 0x20($s0) -/* 0D6D20 800D6120 AE280020 */ sw $t0, 0x20($s1) -.L800D6124: -/* 0D6D24 800D6124 96290000 */ lhu $t1, ($s1) -/* 0D6D28 800D6128 312A0004 */ andi $t2, $t1, 4 -/* 0D6D2C 800D612C 11400041 */ beqz $t2, .L800D6234 -/* 0D6D30 800D6130 00000000 */ nop -/* 0D6D34 800D6134 8FAB0030 */ lw $t3, 0x30($sp) -/* 0D6D38 800D6138 000B6080 */ sll $t4, $t3, 2 -/* 0D6D3C 800D613C 018B6021 */ addu $t4, $t4, $t3 -/* 0D6D40 800D6140 000C6080 */ sll $t4, $t4, 2 -/* 0D6D44 800D6144 020C6821 */ addu $t5, $s0, $t4 -/* 0D6D48 800D6148 8DAF002C */ lw $t7, 0x2c($t5) -/* 0D6D4C 800D614C 31EE0FFF */ andi $t6, $t7, 0xfff -/* 0D6D50 800D6150 448E3000 */ mtc1 $t6, $f6 -/* 0D6D54 800D6154 AFAE0034 */ sw $t6, 0x34($sp) -/* 0D6D58 800D6158 C6240024 */ lwc1 $f4, 0x24($s1) -/* 0D6D5C 800D615C 05C10005 */ bgez $t6, .L800D6174 -/* 0D6D60 800D6160 46803220 */ cvt.s.w $f8, $f6 -/* 0D6D64 800D6164 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0D6D68 800D6168 44815000 */ mtc1 $at, $f10 -/* 0D6D6C 800D616C 00000000 */ nop -/* 0D6D70 800D6170 460A4200 */ add.s $f8, $f8, $f10 -.L800D6174: -/* 0D6D74 800D6174 46082402 */ mul.s $f16, $f4, $f8 -/* 0D6D78 800D6178 24190001 */ li $t9, 1 -/* 0D6D7C 800D617C 4458F800 */ cfc1 $t8, $31 -/* 0D6D80 800D6180 44D9F800 */ ctc1 $t9, $31 -/* 0D6D84 800D6184 00000000 */ nop -/* 0D6D88 800D6188 460084A4 */ cvt.w.s $f18, $f16 -/* 0D6D8C 800D618C 4459F800 */ cfc1 $t9, $31 -/* 0D6D90 800D6190 00000000 */ nop -/* 0D6D94 800D6194 33210004 */ andi $at, $t9, 4 -/* 0D6D98 800D6198 33390078 */ andi $t9, $t9, 0x78 -/* 0D6D9C 800D619C 13200013 */ beqz $t9, .L800D61EC -/* 0D6DA0 800D61A0 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 0D6DA4 800D61A4 44819000 */ mtc1 $at, $f18 -/* 0D6DA8 800D61A8 24190001 */ li $t9, 1 -/* 0D6DAC 800D61AC 46128481 */ sub.s $f18, $f16, $f18 -/* 0D6DB0 800D61B0 44D9F800 */ ctc1 $t9, $31 -/* 0D6DB4 800D61B4 00000000 */ nop -/* 0D6DB8 800D61B8 460094A4 */ cvt.w.s $f18, $f18 -/* 0D6DBC 800D61BC 4459F800 */ cfc1 $t9, $31 -/* 0D6DC0 800D61C0 00000000 */ nop -/* 0D6DC4 800D61C4 33210004 */ andi $at, $t9, 4 -/* 0D6DC8 800D61C8 33390078 */ andi $t9, $t9, 0x78 -/* 0D6DCC 800D61CC 17200005 */ bnez $t9, .L800D61E4 -/* 0D6DD0 800D61D0 00000000 */ nop -/* 0D6DD4 800D61D4 44199000 */ mfc1 $t9, $f18 -/* 0D6DD8 800D61D8 3C018000 */ lui $at, 0x8000 -/* 0D6DDC 800D61DC 10000007 */ b .L800D61FC -/* 0D6DE0 800D61E0 0321C825 */ or $t9, $t9, $at -.L800D61E4: -/* 0D6DE4 800D61E4 10000005 */ b .L800D61FC -/* 0D6DE8 800D61E8 2419FFFF */ li $t9, -1 -.L800D61EC: -/* 0D6DEC 800D61EC 44199000 */ mfc1 $t9, $f18 -/* 0D6DF0 800D61F0 00000000 */ nop -/* 0D6DF4 800D61F4 0720FFFB */ bltz $t9, .L800D61E4 -/* 0D6DF8 800D61F8 00000000 */ nop -.L800D61FC: -/* 0D6DFC 800D61FC AE39002C */ sw $t9, 0x2c($s1) -/* 0D6E00 800D6200 8FA90030 */ lw $t1, 0x30($sp) -/* 0D6E04 800D6204 8E28002C */ lw $t0, 0x2c($s1) -/* 0D6E08 800D6208 2401F000 */ li $at, -4096 -/* 0D6E0C 800D620C 00095080 */ sll $t2, $t1, 2 -/* 0D6E10 800D6210 01495021 */ addu $t2, $t2, $t1 -/* 0D6E14 800D6214 000A5080 */ sll $t2, $t2, 2 -/* 0D6E18 800D6218 020A5821 */ addu $t3, $s0, $t2 -/* 0D6E1C 800D621C 8D6C002C */ lw $t4, 0x2c($t3) -/* 0D6E20 800D6220 44D8F800 */ ctc1 $t8, $31 -/* 0D6E24 800D6224 01816824 */ and $t5, $t4, $at -/* 0D6E28 800D6228 010D7825 */ or $t7, $t0, $t5 -/* 0D6E2C 800D622C 10000008 */ b .L800D6250 -/* 0D6E30 800D6230 AE2F002C */ sw $t7, 0x2c($s1) -.L800D6234: -/* 0D6E34 800D6234 8FAE0030 */ lw $t6, 0x30($sp) -/* 0D6E38 800D6238 000EC080 */ sll $t8, $t6, 2 -/* 0D6E3C 800D623C 030EC021 */ addu $t8, $t8, $t6 -/* 0D6E40 800D6240 0018C080 */ sll $t8, $t8, 2 -/* 0D6E44 800D6244 0218C821 */ addu $t9, $s0, $t8 -/* 0D6E48 800D6248 8F29002C */ lw $t1, 0x2c($t9) -/* 0D6E4C 800D624C AE29002C */ sw $t1, 0x2c($s1) -.L800D6250: -/* 0D6E50 800D6250 8E0A001C */ lw $t2, 0x1c($s0) -/* 0D6E54 800D6254 AFAA0038 */ sw $t2, 0x38($sp) -/* 0D6E58 800D6258 962B0000 */ lhu $t3, ($s1) -/* 0D6E5C 800D625C 316C0020 */ andi $t4, $t3, 0x20 -/* 0D6E60 800D6260 11800002 */ beqz $t4, .L800D626C -/* 0D6E64 800D6264 00000000 */ nop -/* 0D6E68 800D6268 AFA00038 */ sw $zero, 0x38($sp) -.L800D626C: -/* 0D6E6C 800D626C 96280000 */ lhu $t0, ($s1) -/* 0D6E70 800D6270 310D0040 */ andi $t5, $t0, 0x40 -/* 0D6E74 800D6274 11A00005 */ beqz $t5, .L800D628C -/* 0D6E78 800D6278 00000000 */ nop -/* 0D6E7C 800D627C AE20002C */ sw $zero, 0x2c($s1) -/* 0D6E80 800D6280 0C03233C */ jal func_800C8CF0 -/* 0D6E84 800D6284 8E240004 */ lw $a0, 4($s1) -/* 0D6E88 800D6288 AFA2003C */ sw $v0, 0x3c($sp) -.L800D628C: -/* 0D6E8C 800D628C 962F0000 */ lhu $t7, ($s1) -/* 0D6E90 800D6290 31EE0080 */ andi $t6, $t7, 0x80 -/* 0D6E94 800D6294 11C00009 */ beqz $t6, .L800D62BC -/* 0D6E98 800D6298 00000000 */ nop -/* 0D6E9C 800D629C 96380028 */ lhu $t8, 0x28($s1) -/* 0D6EA0 800D62A0 3C0103FF */ lui $at, 0x3ff -/* 0D6EA4 800D62A4 8E240004 */ lw $a0, 4($s1) -/* 0D6EA8 800D62A8 0018CC00 */ sll $t9, $t8, 0x10 -/* 0D6EAC 800D62AC 03214824 */ and $t1, $t9, $at -/* 0D6EB0 800D62B0 0C03233C */ jal func_800C8CF0 -/* 0D6EB4 800D62B4 AE29002C */ sw $t1, 0x2c($s1) -/* 0D6EB8 800D62B8 AFA2003C */ sw $v0, 0x3c($sp) -.L800D62BC: -/* 0D6EBC 800D62BC 8FAA003C */ lw $t2, 0x3c($sp) -/* 0D6EC0 800D62C0 3C0BA440 */ lui $t3, %hi(D_A4400020) # $t3, 0xa440 -/* 0D6EC4 800D62C4 3C08A440 */ lui $t0, %hi(D_A440002C) # $t0, 0xa440 -/* 0D6EC8 800D62C8 AD6A0004 */ sw $t2, %lo(D_A4400004)($t3) -/* 0D6ECC 800D62CC 8E0C0008 */ lw $t4, 8($s0) -/* 0D6ED0 800D62D0 3C0FA440 */ lui $t7, %hi(D_A4400014) # $t7, 0xa440 -/* 0D6ED4 800D62D4 3C18A440 */ lui $t8, %hi(D_A4400018) # $t8, 0xa440 -/* 0D6ED8 800D62D8 AD0C0008 */ sw $t4, %lo(D_A4400008)($t0) -/* 0D6EDC 800D62DC 8E0D000C */ lw $t5, 0xc($s0) -/* 0D6EE0 800D62E0 3C09A440 */ lui $t1, %hi(D_A440001C) # $t1, 0xa440 -/* 0D6EE4 800D62E4 3C01800E */ lui $at, %hi(D_800E4874) # $at, 0x800e -/* 0D6EE8 800D62E8 ADED0014 */ sw $t5, %lo(D_A4400014)($t7) -/* 0D6EEC 800D62EC 8E0E0010 */ lw $t6, 0x10($s0) -/* 0D6EF0 800D62F0 AF0E0018 */ sw $t6, %lo(D_A4400018)($t8) -/* 0D6EF4 800D62F4 8E190014 */ lw $t9, 0x14($s0) -/* 0D6EF8 800D62F8 AD39001C */ sw $t9, %lo(D_A440001C)($t1) -/* 0D6EFC 800D62FC 8E0A0018 */ lw $t2, 0x18($s0) -/* 0D6F00 800D6300 3C19A440 */ lui $t9, %hi(D_A440000C) # $t9, 0xa440 -/* 0D6F04 800D6304 AD6A0020 */ sw $t2, %lo(D_A4400020)($t3) -/* 0D6F08 800D6308 8FAC0038 */ lw $t4, 0x38($sp) -/* 0D6F0C 800D630C AD0C0024 */ sw $t4, %lo(D_A4400024)($t0) -/* 0D6F10 800D6310 8FAD0030 */ lw $t5, 0x30($sp) -/* 0D6F14 800D6314 000D7880 */ sll $t7, $t5, 2 -/* 0D6F18 800D6318 01ED7821 */ addu $t7, $t7, $t5 -/* 0D6F1C 800D631C 000F7880 */ sll $t7, $t7, 2 -/* 0D6F20 800D6320 020F7021 */ addu $t6, $s0, $t7 -/* 0D6F24 800D6324 8DD80030 */ lw $t8, 0x30($t6) -/* 0D6F28 800D6328 AF380028 */ sw $t8, %lo(D_A4400028)($t9) -/* 0D6F2C 800D632C 8FA90030 */ lw $t1, 0x30($sp) -/* 0D6F30 800D6330 00095080 */ sll $t2, $t1, 2 -/* 0D6F34 800D6334 01495021 */ addu $t2, $t2, $t1 -/* 0D6F38 800D6338 000A5080 */ sll $t2, $t2, 2 -/* 0D6F3C 800D633C 020A5821 */ addu $t3, $s0, $t2 -/* 0D6F40 800D6340 8D6C0034 */ lw $t4, 0x34($t3) -/* 0D6F44 800D6344 3C0AA440 */ lui $t2, %hi(D_A4400030) # $t2, 0xa440 -/* 0D6F48 800D6348 AD0C002C */ sw $t4, %lo(D_A440002C)($t0) -/* 0D6F4C 800D634C 8FAD0030 */ lw $t5, 0x30($sp) -/* 0D6F50 800D6350 3C0CA440 */ lui $t4, %hi(D_A4400034) # $t4, 0xa440 -/* 0D6F54 800D6354 000D7880 */ sll $t7, $t5, 2 -/* 0D6F58 800D6358 01ED7821 */ addu $t7, $t7, $t5 -/* 0D6F5C 800D635C 000F7880 */ sll $t7, $t7, 2 -/* 0D6F60 800D6360 020F7021 */ addu $t6, $s0, $t7 -/* 0D6F64 800D6364 8DD80038 */ lw $t8, 0x38($t6) -/* 0D6F68 800D6368 3C0DA440 */ lui $t5, 0xa440 -/* 0D6F6C 800D636C 3C0F800E */ lui $t7, %hi(D_800E4870) # $t7, 0x800e -/* 0D6F70 800D6370 AF38000C */ sw $t8, %lo(D_A440000C)($t9) -/* 0D6F74 800D6374 8E290020 */ lw $t1, 0x20($s1) -/* 0D6F78 800D6378 3C18800E */ lui $t8, %hi(D_800E4870) # $t8, 0x800e -/* 0D6F7C 800D637C 3C0E800E */ lui $t6, %hi(D_800E4874) # $t6, 0x800e -/* 0D6F80 800D6380 AD490030 */ sw $t1, %lo(D_A4400030)($t2) -/* 0D6F84 800D6384 8E2B002C */ lw $t3, 0x2c($s1) -/* 0D6F88 800D6388 AD8B0034 */ sw $t3, %lo(D_A4400034)($t4) -/* 0D6F8C 800D638C 8E28000C */ lw $t0, 0xc($s1) -/* 0D6F90 800D6390 ADA80000 */ sw $t0, ($t5) -/* 0D6F94 800D6394 8DEF4870 */ lw $t7, %lo(D_800E4870)($t7) -/* 0D6F98 800D6398 AC2F4874 */ sw $t7, %lo(D_800E4874)($at) -/* 0D6F9C 800D639C 3C01800E */ lui $at, %hi(D_800E4870) # $at, 0x800e -/* 0D6FA0 800D63A0 AC314870 */ sw $s1, %lo(D_800E4870)($at) -/* 0D6FA4 800D63A4 8F184870 */ lw $t8, %lo(D_800E4870)($t8) -/* 0D6FA8 800D63A8 8DCE4874 */ lw $t6, %lo(D_800E4874)($t6) -/* 0D6FAC 800D63AC 270A0030 */ addiu $t2, $t8, 0x30 -.L800D63B0: -/* 0D6FB0 800D63B0 8F010000 */ lw $at, ($t8) -/* 0D6FB4 800D63B4 2718000C */ addiu $t8, $t8, 0xc -/* 0D6FB8 800D63B8 25CE000C */ addiu $t6, $t6, 0xc -/* 0D6FBC 800D63BC ADC1FFF4 */ sw $at, -0xc($t6) -/* 0D6FC0 800D63C0 8F01FFF8 */ lw $at, -8($t8) -/* 0D6FC4 800D63C4 ADC1FFF8 */ sw $at, -8($t6) -/* 0D6FC8 800D63C8 8F01FFFC */ lw $at, -4($t8) -/* 0D6FCC 800D63CC 170AFFF8 */ bne $t8, $t2, .L800D63B0 -/* 0D6FD0 800D63D0 ADC1FFFC */ sw $at, -4($t6) -/* 0D6FD4 800D63D4 8FBF0024 */ lw $ra, 0x24($sp) -/* 0D6FD8 800D63D8 8FB00018 */ lw $s0, 0x18($sp) -/* 0D6FDC 800D63DC 8FB1001C */ lw $s1, 0x1c($sp) -/* 0D6FE0 800D63E0 8FB20020 */ lw $s2, 0x20($sp) -/* 0D6FE4 800D63E4 03E00008 */ jr $ra -/* 0D6FE8 800D63E8 27BD0048 */ addiu $sp, $sp, 0x48 - -/* 0D6FEC 800D63EC 00000000 */ nop -glabel func_800D63F0 -/* 0D6FF0 800D63F0 3C0EA404 */ lui $t6, 0xa404 -/* 0D6FF4 800D63F4 03E00008 */ jr $ra -/* 0D6FF8 800D63F8 8DC20010 */ lw $v0, 0x10($t6) - -/* 0D6FFC 800D63FC 00000000 */ nop -glabel func_800D6400 -/* 0D7000 800D6400 3C0EA404 */ lui $t6, %hi(D_A4040010) # $t6, 0xa404 -/* 0D7004 800D6404 8DC50010 */ lw $a1, %lo(D_A4040010)($t6) -/* 0D7008 800D6408 27BDFFF8 */ addiu $sp, $sp, -8 -/* 0D700C 800D640C 30AF0001 */ andi $t7, $a1, 1 -/* 0D7010 800D6410 15E00003 */ bnez $t7, .L800D6420 -/* 0D7014 800D6414 00000000 */ nop -/* 0D7018 800D6418 10000004 */ b .L800D642C -/* 0D701C 800D641C 2402FFFF */ li $v0, -1 -.L800D6420: -/* 0D7020 800D6420 3C18A408 */ lui $t8, 0xa408 -/* 0D7024 800D6424 AF040000 */ sw $a0, ($t8) -/* 0D7028 800D6428 00001025 */ move $v0, $zero -.L800D642C: -/* 0D702C 800D642C 03E00008 */ jr $ra -/* 0D7030 800D6430 27BD0008 */ addiu $sp, $sp, 8 - -/* 0D7034 800D6434 00000000 */ nop -/* 0D7038 800D6438 00000000 */ nop -/* 0D703C 800D643C 00000000 */ nop -glabel func_800D6440 -/* 0D7040 800D6440 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0D7044 800D6444 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D7048 800D6448 AFA40018 */ sw $a0, 0x18($sp) -/* 0D704C 800D644C AFA5001C */ sw $a1, 0x1c($sp) -/* 0D7050 800D6450 AFA60020 */ sw $a2, 0x20($sp) -/* 0D7054 800D6454 0C035934 */ jal func_800D64D0 -/* 0D7058 800D6458 AFA70024 */ sw $a3, 0x24($sp) -/* 0D705C 800D645C 10400003 */ beqz $v0, .L800D646C -/* 0D7060 800D6460 00000000 */ nop -/* 0D7064 800D6464 10000015 */ b .L800D64BC -/* 0D7068 800D6468 2402FFFF */ li $v0, -1 -.L800D646C: -/* 0D706C 800D646C 8FAE001C */ lw $t6, 0x1c($sp) -/* 0D7070 800D6470 3C0FA404 */ lui $t7, 0xa404 -/* 0D7074 800D6474 ADEE0000 */ sw $t6, ($t7) -/* 0D7078 800D6478 0C03233C */ jal func_800C8CF0 -/* 0D707C 800D647C 8FA40020 */ lw $a0, 0x20($sp) -/* 0D7080 800D6480 3C18A404 */ lui $t8, %hi(D_A4040004) # $t8, 0xa404 -/* 0D7084 800D6484 AF020004 */ sw $v0, %lo(D_A4040004)($t8) -/* 0D7088 800D6488 8FB90018 */ lw $t9, 0x18($sp) -/* 0D708C 800D648C 17200006 */ bnez $t9, .L800D64A8 -/* 0D7090 800D6490 00000000 */ nop -/* 0D7094 800D6494 8FA80024 */ lw $t0, 0x24($sp) -/* 0D7098 800D6498 3C0AA404 */ lui $t2, %hi(D_A404000C) # $t2, 0xa404 -/* 0D709C 800D649C 2509FFFF */ addiu $t1, $t0, -1 -/* 0D70A0 800D64A0 10000005 */ b .L800D64B8 -/* 0D70A4 800D64A4 AD49000C */ sw $t1, %lo(D_A404000C)($t2) -.L800D64A8: -/* 0D70A8 800D64A8 8FAB0024 */ lw $t3, 0x24($sp) -/* 0D70AC 800D64AC 3C0DA404 */ lui $t5, %hi(D_A4040008) # $t5, 0xa404 -/* 0D70B0 800D64B0 256CFFFF */ addiu $t4, $t3, -1 -/* 0D70B4 800D64B4 ADAC0008 */ sw $t4, %lo(D_A4040008)($t5) -.L800D64B8: -/* 0D70B8 800D64B8 00001025 */ move $v0, $zero -.L800D64BC: -/* 0D70BC 800D64BC 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D70C0 800D64C0 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0D70C4 800D64C4 03E00008 */ jr $ra -/* 0D70C8 800D64C8 00000000 */ nop - -/* 0D70CC 800D64CC 00000000 */ nop -glabel func_800D64D0 -/* 0D70D0 800D64D0 3C0EA404 */ lui $t6, %hi(D_A4040010) # $t6, 0xa404 -/* 0D70D4 800D64D4 8DC40010 */ lw $a0, %lo(D_A4040010)($t6) -/* 0D70D8 800D64D8 27BDFFF8 */ addiu $sp, $sp, -8 -/* 0D70DC 800D64DC 308F001C */ andi $t7, $a0, 0x1c -/* 0D70E0 800D64E0 11E00003 */ beqz $t7, .L800D64F0 -/* 0D70E4 800D64E4 00000000 */ nop -/* 0D70E8 800D64E8 10000002 */ b .L800D64F4 -/* 0D70EC 800D64EC 24020001 */ li $v0, 1 -.L800D64F0: -/* 0D70F0 800D64F0 00001025 */ move $v0, $zero -.L800D64F4: -/* 0D70F4 800D64F4 03E00008 */ jr $ra -/* 0D70F8 800D64F8 27BD0008 */ addiu $sp, $sp, 8 - -/* 0D70FC 800D64FC 00000000 */ nop -glabel func_800D6500 -/* 0D7100 800D6500 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0D7104 800D6504 AFBF001C */ sw $ra, 0x1c($sp) -/* 0D7108 800D6508 AFA40028 */ sw $a0, 0x28($sp) -/* 0D710C 800D650C 0C034958 */ jal __osDisableInt -/* 0D7110 800D6510 AFB00018 */ sw $s0, 0x18($sp) -/* 0D7114 800D6514 8FAF0028 */ lw $t7, 0x28($sp) -/* 0D7118 800D6518 3C0E800E */ lui $t6, %hi(D_800E38AC) # $t6, 0x800e -/* 0D711C 800D651C 8DCE38AC */ lw $t6, %lo(D_800E38AC)($t6) -/* 0D7120 800D6520 2401FBFE */ li $at, -1026 -/* 0D7124 800D6524 01E1C024 */ and $t8, $t7, $at -/* 0D7128 800D6528 0300C827 */ not $t9, $t8 -/* 0D712C 800D652C 00408025 */ move $s0, $v0 -/* 0D7130 800D6530 3C01800E */ lui $at, %hi(D_800E38AC) # $at, 0x800e -/* 0D7134 800D6534 01D94024 */ and $t0, $t6, $t9 -/* 0D7138 800D6538 AC2838AC */ sw $t0, %lo(D_800E38AC)($at) -/* 0D713C 800D653C 0C034960 */ jal __osRestoreInt -/* 0D7140 800D6540 02002025 */ move $a0, $s0 -/* 0D7144 800D6544 8FBF001C */ lw $ra, 0x1c($sp) -/* 0D7148 800D6548 8FB00018 */ lw $s0, 0x18($sp) -/* 0D714C 800D654C 27BD0028 */ addiu $sp, $sp, 0x28 -/* 0D7150 800D6550 03E00008 */ jr $ra -/* 0D7154 800D6554 00000000 */ nop - -/* 0D7158 800D6558 00000000 */ nop -/* 0D715C 800D655C 00000000 */ nop -glabel func_800D6560 -/* 0D7160 800D6560 3C0EA460 */ lui $t6, %hi(D_A4600010) # $t6, 0xa460 -/* 0D7164 800D6564 8DC70010 */ lw $a3, %lo(D_A4600010)($t6) -/* 0D7168 800D6568 27BDFFF8 */ addiu $sp, $sp, -8 -/* 0D716C 800D656C 30EF0003 */ andi $t7, $a3, 3 -/* 0D7170 800D6570 11E00006 */ beqz $t7, .L800D658C -/* 0D7174 800D6574 00000000 */ nop -.L800D6578: -/* 0D7178 800D6578 3C18A460 */ lui $t8, %hi(D_A4600010) # $t8, 0xa460 -/* 0D717C 800D657C 8F070010 */ lw $a3, %lo(D_A4600010)($t8) -/* 0D7180 800D6580 30F90003 */ andi $t9, $a3, 3 -/* 0D7184 800D6584 1720FFFC */ bnez $t9, .L800D6578 -/* 0D7188 800D6588 00000000 */ nop -.L800D658C: -/* 0D718C 800D658C 8C88000C */ lw $t0, 0xc($a0) -/* 0D7190 800D6590 3C01A000 */ lui $at, 0xa000 -/* 0D7194 800D6594 27BD0008 */ addiu $sp, $sp, 8 -/* 0D7198 800D6598 01054825 */ or $t1, $t0, $a1 -/* 0D719C 800D659C 01215025 */ or $t2, $t1, $at -/* 0D71A0 800D65A0 AD460000 */ sw $a2, ($t2) -/* 0D71A4 800D65A4 03E00008 */ jr $ra -/* 0D71A8 800D65A8 00001025 */ move $v0, $zero - -/* 0D71AC 800D65AC 00000000 */ nop -glabel func_800D65B0 -/* 0D71B0 800D65B0 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0D71B4 800D65B4 AFBF001C */ sw $ra, 0x1c($sp) -/* 0D71B8 800D65B8 0C034958 */ jal __osDisableInt -/* 0D71BC 800D65BC AFB00018 */ sw $s0, 0x18($sp) -/* 0D71C0 800D65C0 3C0F800E */ lui $t7, %hi(D_800E4890) # $t7, 0x800e -/* 0D71C4 800D65C4 8DEF4890 */ lw $t7, %lo(D_800E4890)($t7) -/* 0D71C8 800D65C8 240E0002 */ li $t6, 2 -/* 0D71CC 800D65CC 3C04800E */ lui $a0, %hi(D_800E4888) # $a0, 0x800e -/* 0D71D0 800D65D0 00408025 */ move $s0, $v0 -/* 0D71D4 800D65D4 24844888 */ addiu $a0, %lo(D_800E4888) # addiu $a0, $a0, 0x4888 -/* 0D71D8 800D65D8 0C034CB3 */ jal __osEnqueueAndYield -/* 0D71DC 800D65DC A5EE0010 */ sh $t6, 0x10($t7) -/* 0D71E0 800D65E0 0C034960 */ jal __osRestoreInt -/* 0D71E4 800D65E4 02002025 */ move $a0, $s0 -/* 0D71E8 800D65E8 8FBF001C */ lw $ra, 0x1c($sp) -/* 0D71EC 800D65EC 8FB00018 */ lw $s0, 0x18($sp) -/* 0D71F0 800D65F0 27BD0028 */ addiu $sp, $sp, 0x28 -/* 0D71F4 800D65F4 03E00008 */ jr $ra -/* 0D71F8 800D65F8 00000000 */ nop - -/* 0D71FC 800D65FC 00000000 */ nop -glabel func_800D6600 -/* 0D7200 800D6600 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0D7204 800D6604 AFBF0024 */ sw $ra, 0x24($sp) -/* 0D7208 800D6608 AFA40038 */ sw $a0, 0x38($sp) -/* 0D720C 800D660C AFB20020 */ sw $s2, 0x20($sp) -/* 0D7210 800D6610 AFB1001C */ sw $s1, 0x1c($sp) -/* 0D7214 800D6614 0C034958 */ jal __osDisableInt -/* 0D7218 800D6618 AFB00018 */ sw $s0, 0x18($sp) -/* 0D721C 800D661C 8FAE0038 */ lw $t6, 0x38($sp) -/* 0D7220 800D6620 00408025 */ move $s0, $v0 -/* 0D7224 800D6624 15C00005 */ bnez $t6, .L800D663C -/* 0D7228 800D6628 00000000 */ nop -/* 0D722C 800D662C 3C0F800E */ lui $t7, %hi(D_800E4890) # $t7, 0x800e -/* 0D7230 800D6630 8DEF4890 */ lw $t7, %lo(D_800E4890)($t7) -/* 0D7234 800D6634 10000009 */ b .L800D665C -/* 0D7238 800D6638 AFAF0038 */ sw $t7, 0x38($sp) -.L800D663C: -/* 0D723C 800D663C 8FB80038 */ lw $t8, 0x38($sp) -/* 0D7240 800D6640 24010001 */ li $at, 1 -/* 0D7244 800D6644 97190010 */ lhu $t9, 0x10($t8) -/* 0D7248 800D6648 13210004 */ beq $t9, $at, .L800D665C -/* 0D724C 800D664C 00000000 */ nop -/* 0D7250 800D6650 8F040008 */ lw $a0, 8($t8) -/* 0D7254 800D6654 0C034B1C */ jal func_800D2C70 -/* 0D7258 800D6658 03002825 */ move $a1, $t8 -.L800D665C: -/* 0D725C 800D665C 3C08800E */ lui $t0, %hi(D_800E488C) # $t0, 0x800e -/* 0D7260 800D6660 8D08488C */ lw $t0, %lo(D_800E488C)($t0) -/* 0D7264 800D6664 8FA90038 */ lw $t1, 0x38($sp) -/* 0D7268 800D6668 15090005 */ bne $t0, $t1, .L800D6680 -/* 0D726C 800D666C 00000000 */ nop -/* 0D7270 800D6670 8D0A000C */ lw $t2, 0xc($t0) -/* 0D7274 800D6674 3C01800E */ lui $at, %hi(D_800E488C) # $at, 0x800e -/* 0D7278 800D6678 10000010 */ b .L800D66BC -/* 0D727C 800D667C AC2A488C */ sw $t2, %lo(D_800E488C)($at) -.L800D6680: -/* 0D7280 800D6680 3C11800E */ lui $s1, %hi(D_800E488C) # $s1, 0x800e -/* 0D7284 800D6684 8E31488C */ lw $s1, %lo(D_800E488C)($s1) -/* 0D7288 800D6688 8E32000C */ lw $s2, 0xc($s1) -/* 0D728C 800D668C 1240000B */ beqz $s2, .L800D66BC -/* 0D7290 800D6690 00000000 */ nop -.L800D6694: -/* 0D7294 800D6694 8FAB0038 */ lw $t3, 0x38($sp) -/* 0D7298 800D6698 164B0004 */ bne $s2, $t3, .L800D66AC -/* 0D729C 800D669C 00000000 */ nop -/* 0D72A0 800D66A0 8D6C000C */ lw $t4, 0xc($t3) -/* 0D72A4 800D66A4 10000005 */ b .L800D66BC -/* 0D72A8 800D66A8 AE2C000C */ sw $t4, 0xc($s1) -.L800D66AC: -/* 0D72AC 800D66AC 02408825 */ move $s1, $s2 -/* 0D72B0 800D66B0 8E32000C */ lw $s2, 0xc($s1) -/* 0D72B4 800D66B4 1640FFF7 */ bnez $s2, .L800D6694 -/* 0D72B8 800D66B8 00000000 */ nop -.L800D66BC: -/* 0D72BC 800D66BC 3C0E800E */ lui $t6, %hi(D_800E4890) # $t6, 0x800e -/* 0D72C0 800D66C0 8DCE4890 */ lw $t6, %lo(D_800E4890)($t6) -/* 0D72C4 800D66C4 8FAD0038 */ lw $t5, 0x38($sp) -/* 0D72C8 800D66C8 15AE0003 */ bne $t5, $t6, .L800D66D8 -/* 0D72CC 800D66CC 00000000 */ nop -/* 0D72D0 800D66D0 0C034D09 */ jal func_800D3424 -/* 0D72D4 800D66D4 00000000 */ nop -.L800D66D8: -/* 0D72D8 800D66D8 0C034960 */ jal __osRestoreInt -/* 0D72DC 800D66DC 02002025 */ move $a0, $s0 -/* 0D72E0 800D66E0 8FBF0024 */ lw $ra, 0x24($sp) -/* 0D72E4 800D66E4 8FB00018 */ lw $s0, 0x18($sp) -/* 0D72E8 800D66E8 8FB1001C */ lw $s1, 0x1c($sp) -/* 0D72EC 800D66EC 8FB20020 */ lw $s2, 0x20($sp) -/* 0D72F0 800D66F0 03E00008 */ jr $ra -/* 0D72F4 800D66F4 27BD0038 */ addiu $sp, $sp, 0x38 - -/* 0D72F8 800D66F8 00000000 */ nop -/* 0D72FC 800D66FC 00000000 */ nop -glabel func_800D6700 -/* 0D7300 800D6700 27BDFF70 */ addiu $sp, $sp, -0x90 -/* 0D7304 800D6704 AFB10020 */ sw $s1, 0x20($sp) -/* 0D7308 800D6708 30A200FF */ andi $v0, $a1, 0xff -/* 0D730C 800D670C 24030058 */ li $v1, 88 -/* 0D7310 800D6710 00808825 */ move $s1, $a0 -/* 0D7314 800D6714 AFBF002C */ sw $ra, 0x2c($sp) -/* 0D7318 800D6718 AFB30028 */ sw $s3, 0x28($sp) -/* 0D731C 800D671C AFB20024 */ sw $s2, 0x24($sp) -/* 0D7320 800D6720 AFB0001C */ sw $s0, 0x1c($sp) -/* 0D7324 800D6724 14620004 */ bne $v1, $v0, .L800D6738 -/* 0D7328 800D6728 AFA50094 */ sw $a1, 0x94($sp) -/* 0D732C 800D672C 3C13800E */ lui $s3, %hi(D_800E4934) # $s3, 0x800e -/* 0D7330 800D6730 10000003 */ b .L800D6740 -/* 0D7334 800D6734 26734934 */ addiu $s3, %lo(D_800E4934) # addiu $s3, $s3, 0x4934 -.L800D6738: -/* 0D7338 800D6738 3C13800E */ lui $s3, %hi(D_800E4920) # $s3, 0x800e -/* 0D733C 800D673C 26734920 */ addiu $s3, %lo(D_800E4920) # addiu $s3, $s3, 0x4920 -.L800D6740: -/* 0D7340 800D6740 2401006F */ li $at, 111 -/* 0D7344 800D6744 14410003 */ bne $v0, $at, .L800D6754 -/* 0D7348 800D6748 24100018 */ li $s0, 24 -/* 0D734C 800D674C 10000009 */ b .L800D6774 -/* 0D7350 800D6750 24090008 */ li $t1, 8 -.L800D6754: -/* 0D7354 800D6754 24010078 */ li $at, 120 -/* 0D7358 800D6758 10410005 */ beq $v0, $at, .L800D6770 -/* 0D735C 800D675C 24080010 */ li $t0, 16 -/* 0D7360 800D6760 10620003 */ beq $v1, $v0, .L800D6770 -/* 0D7364 800D6764 00000000 */ nop -/* 0D7368 800D6768 10000001 */ b .L800D6770 -/* 0D736C 800D676C 2408000A */ li $t0, 10 -.L800D6770: -/* 0D7370 800D6770 01004825 */ move $t1, $t0 -.L800D6774: -/* 0D7374 800D6774 8E380000 */ lw $t8, ($s1) -/* 0D7378 800D6778 8E390004 */ lw $t9, 4($s1) -/* 0D737C 800D677C 24010064 */ li $at, 100 -/* 0D7380 800D6780 AFB80060 */ sw $t8, 0x60($sp) -/* 0D7384 800D6784 AFB80040 */ sw $t8, 0x40($sp) -/* 0D7388 800D6788 AFB90044 */ sw $t9, 0x44($sp) -/* 0D738C 800D678C 10410004 */ beq $v0, $at, .L800D67A0 -/* 0D7390 800D6790 AFB90064 */ sw $t9, 0x64($sp) -/* 0D7394 800D6794 24010069 */ li $at, 105 -/* 0D7398 800D6798 54410010 */ bnel $v0, $at, .L800D67DC -/* 0D739C 800D679C 8FAA0060 */ lw $t2, 0x60($sp) -.L800D67A0: -/* 0D73A0 800D67A0 8FAC0040 */ lw $t4, 0x40($sp) -/* 0D73A4 800D67A4 5D80000D */ bgtzl $t4, .L800D67DC -/* 0D73A8 800D67A8 8FAA0060 */ lw $t2, 0x60($sp) -/* 0D73AC 800D67AC 05800003 */ bltz $t4, .L800D67BC -/* 0D73B0 800D67B0 8FAE0060 */ lw $t6, 0x60($sp) -/* 0D73B4 800D67B4 10000009 */ b .L800D67DC -/* 0D73B8 800D67B8 8FAA0060 */ lw $t2, 0x60($sp) -.L800D67BC: -/* 0D73BC 800D67BC 8FAF0064 */ lw $t7, 0x64($sp) -/* 0D73C0 800D67C0 01C0C027 */ not $t8, $t6 -/* 0D73C4 800D67C4 2DE10001 */ sltiu $at, $t7, 1 -/* 0D73C8 800D67C8 0301C021 */ addu $t8, $t8, $at -/* 0D73CC 800D67CC 000FC823 */ negu $t9, $t7 -/* 0D73D0 800D67D0 AFB90064 */ sw $t9, 0x64($sp) -/* 0D73D4 800D67D4 AFB80060 */ sw $t8, 0x60($sp) -/* 0D73D8 800D67D8 8FAA0060 */ lw $t2, 0x60($sp) -.L800D67DC: -/* 0D73DC 800D67DC 8FAB0064 */ lw $t3, 0x64($sp) -/* 0D73E0 800D67E0 24080017 */ li $t0, 23 -/* 0D73E4 800D67E4 15400006 */ bnez $t2, .L800D6800 -/* 0D73E8 800D67E8 8FA40060 */ lw $a0, 0x60($sp) -/* 0D73EC 800D67EC 55600005 */ bnezl $t3, .L800D6804 -/* 0D73F0 800D67F0 24100017 */ li $s0, 23 -/* 0D73F4 800D67F4 8E2C0024 */ lw $t4, 0x24($s1) -/* 0D73F8 800D67F8 51800010 */ beql $t4, $zero, .L800D683C -/* 0D73FC 800D67FC 27B20078 */ addiu $s2, $sp, 0x78 -.L800D6800: -/* 0D7400 800D6800 24100017 */ li $s0, 23 -.L800D6804: -/* 0D7404 800D6804 8FA50064 */ lw $a1, 0x64($sp) -/* 0D7408 800D6808 01203825 */ move $a3, $t1 -/* 0D740C 800D680C 000937C3 */ sra $a2, $t1, 0x1f -/* 0D7410 800D6810 AFA8004C */ sw $t0, 0x4c($sp) -/* 0D7414 800D6814 0C033AA3 */ jal __ull_rem -/* 0D7418 800D6818 AFA90070 */ sw $t1, 0x70($sp) -/* 0D741C 800D681C 8FA8004C */ lw $t0, 0x4c($sp) -/* 0D7420 800D6820 00737021 */ addu $t6, $v1, $s3 -/* 0D7424 800D6824 91CF0000 */ lbu $t7, ($t6) -/* 0D7428 800D6828 27B20078 */ addiu $s2, $sp, 0x78 -/* 0D742C 800D682C 8FA90070 */ lw $t1, 0x70($sp) -/* 0D7430 800D6830 0248C021 */ addu $t8, $s2, $t0 -/* 0D7434 800D6834 A30F0000 */ sb $t7, ($t8) -/* 0D7438 800D6838 27B20078 */ addiu $s2, $sp, 0x78 -.L800D683C: -/* 0D743C 800D683C 8FA40060 */ lw $a0, 0x60($sp) -/* 0D7440 800D6840 8FA50064 */ lw $a1, 0x64($sp) -/* 0D7444 800D6844 01203825 */ move $a3, $t1 -/* 0D7448 800D6848 000937C3 */ sra $a2, $t1, 0x1f -/* 0D744C 800D684C 0C033AB2 */ jal __ull_div -/* 0D7450 800D6850 AFA90070 */ sw $t1, 0x70($sp) -/* 0D7454 800D6854 8FA90070 */ lw $t1, 0x70($sp) -/* 0D7458 800D6858 AE230004 */ sw $v1, 4($s1) -/* 0D745C 800D685C 0440002B */ bltz $v0, .L800D690C -/* 0D7460 800D6860 AE220000 */ sw $v0, ($s1) -/* 0D7464 800D6864 1C400003 */ bgtz $v0, .L800D6874 -/* 0D7468 800D6868 00000000 */ nop -/* 0D746C 800D686C 50600028 */ beql $v1, $zero, .L800D6910 -/* 0D7470 800D6870 240C0018 */ li $t4, 24 -.L800D6874: -/* 0D7474 800D6874 1A000025 */ blez $s0, .L800D690C -/* 0D7478 800D6878 000967C3 */ sra $t4, $t1, 0x1f -/* 0D747C 800D687C 8E2A0000 */ lw $t2, ($s1) -/* 0D7480 800D6880 8E2B0004 */ lw $t3, 4($s1) -/* 0D7484 800D6884 AFA9003C */ sw $t1, 0x3c($sp) -/* 0D7488 800D6888 AFAC0038 */ sw $t4, 0x38($sp) -/* 0D748C 800D688C AFAA0040 */ sw $t2, 0x40($sp) -/* 0D7490 800D6890 AFAB0044 */ sw $t3, 0x44($sp) -/* 0D7494 800D6894 8FAE0038 */ lw $t6, 0x38($sp) -.L800D6898: -/* 0D7498 800D6898 8FAF003C */ lw $t7, 0x3c($sp) -/* 0D749C 800D689C 27A40050 */ addiu $a0, $sp, 0x50 -/* 0D74A0 800D68A0 8FA60040 */ lw $a2, 0x40($sp) -/* 0D74A4 800D68A4 8FA70044 */ lw $a3, 0x44($sp) -/* 0D74A8 800D68A8 AFAE0010 */ sw $t6, 0x10($sp) -/* 0D74AC 800D68AC 0C035D1C */ jal func_800D7470 -/* 0D74B0 800D68B0 AFAF0014 */ sw $t7, 0x14($sp) -/* 0D74B4 800D68B4 8FB80050 */ lw $t8, 0x50($sp) -/* 0D74B8 800D68B8 8FB90054 */ lw $t9, 0x54($sp) -/* 0D74BC 800D68BC 2604FFFF */ addiu $a0, $s0, -1 -/* 0D74C0 800D68C0 AE380000 */ sw $t8, ($s1) -/* 0D74C4 800D68C4 AE390004 */ sw $t9, 4($s1) -/* 0D74C8 800D68C8 8FAB005C */ lw $t3, 0x5c($sp) -/* 0D74CC 800D68CC 02447821 */ addu $t7, $s2, $a0 -/* 0D74D0 800D68D0 00808025 */ move $s0, $a0 -/* 0D74D4 800D68D4 01736821 */ addu $t5, $t3, $s3 -/* 0D74D8 800D68D8 91AE0000 */ lbu $t6, ($t5) -/* 0D74DC 800D68DC A1EE0000 */ sb $t6, ($t7) -/* 0D74E0 800D68E0 8E380000 */ lw $t8, ($s1) -/* 0D74E4 800D68E4 8E390004 */ lw $t9, 4($s1) -/* 0D74E8 800D68E8 AFB80040 */ sw $t8, 0x40($sp) -/* 0D74EC 800D68EC 07000007 */ bltz $t8, .L800D690C -/* 0D74F0 800D68F0 AFB90044 */ sw $t9, 0x44($sp) -/* 0D74F4 800D68F4 1F000003 */ bgtz $t8, .L800D6904 -/* 0D74F8 800D68F8 00000000 */ nop -/* 0D74FC 800D68FC 53200004 */ beql $t9, $zero, .L800D6910 -/* 0D7500 800D6900 240C0018 */ li $t4, 24 -.L800D6904: -/* 0D7504 800D6904 5E00FFE4 */ bgtzl $s0, .L800D6898 -/* 0D7508 800D6908 8FAE0038 */ lw $t6, 0x38($sp) -.L800D690C: -/* 0D750C 800D690C 240C0018 */ li $t4, 24 -.L800D6910: -/* 0D7510 800D6910 01903023 */ subu $a2, $t4, $s0 -/* 0D7514 800D6914 AE260014 */ sw $a2, 0x14($s1) -/* 0D7518 800D6918 8E240008 */ lw $a0, 8($s1) -/* 0D751C 800D691C 0C03385C */ jal memcpy -/* 0D7520 800D6920 02502821 */ addu $a1, $s2, $s0 -/* 0D7524 800D6924 8E250014 */ lw $a1, 0x14($s1) -/* 0D7528 800D6928 8E240024 */ lw $a0, 0x24($s1) -/* 0D752C 800D692C 00A4082A */ slt $at, $a1, $a0 -/* 0D7530 800D6930 10200002 */ beqz $at, .L800D693C -/* 0D7534 800D6934 00856823 */ subu $t5, $a0, $a1 -/* 0D7538 800D6938 AE2D0010 */ sw $t5, 0x10($s1) -.L800D693C: -/* 0D753C 800D693C 04830010 */ bgezl $a0, .L800D6980 -/* 0D7540 800D6940 8FBF002C */ lw $ra, 0x2c($sp) -/* 0D7544 800D6944 8E2E0030 */ lw $t6, 0x30($s1) -/* 0D7548 800D6948 24010010 */ li $at, 16 -/* 0D754C 800D694C 31CF0014 */ andi $t7, $t6, 0x14 -/* 0D7550 800D6950 55E1000B */ bnel $t7, $at, .L800D6980 -/* 0D7554 800D6954 8FBF002C */ lw $ra, 0x2c($sp) -/* 0D7558 800D6958 8E380028 */ lw $t8, 0x28($s1) -/* 0D755C 800D695C 8E39000C */ lw $t9, 0xc($s1) -/* 0D7560 800D6960 8E220010 */ lw $v0, 0x10($s1) -/* 0D7564 800D6964 03195023 */ subu $t2, $t8, $t9 -/* 0D7568 800D6968 01425823 */ subu $t3, $t2, $v0 -/* 0D756C 800D696C 01658023 */ subu $s0, $t3, $a1 -/* 0D7570 800D6970 1A000002 */ blez $s0, .L800D697C -/* 0D7574 800D6974 00506021 */ addu $t4, $v0, $s0 -/* 0D7578 800D6978 AE2C0010 */ sw $t4, 0x10($s1) -.L800D697C: -/* 0D757C 800D697C 8FBF002C */ lw $ra, 0x2c($sp) -.L800D6980: -/* 0D7580 800D6980 8FB0001C */ lw $s0, 0x1c($sp) -/* 0D7584 800D6984 8FB10020 */ lw $s1, 0x20($sp) -/* 0D7588 800D6988 8FB20024 */ lw $s2, 0x24($sp) -/* 0D758C 800D698C 8FB30028 */ lw $s3, 0x28($sp) -/* 0D7590 800D6990 03E00008 */ jr $ra -/* 0D7594 800D6994 27BD0090 */ addiu $sp, $sp, 0x90 - -/* 0D7598 800D6998 00000000 */ nop -/* 0D759C 800D699C 00000000 */ nop -glabel func_800D69A0 -/* 0D75A0 800D69A0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0D75A4 800D69A4 AFB20028 */ sw $s2, 0x28($sp) -/* 0D75A8 800D69A8 00127400 */ sll $t6, $s2, 0x10 -/* 0D75AC 800D69AC 000E9403 */ sra $s2, $t6, 0x10 -/* 0D75B0 800D69B0 AFB30024 */ sw $s3, 0x24($sp) -/* 0D75B4 800D69B4 0013C400 */ sll $t8, $s3, 0x10 -/* 0D75B8 800D69B8 00189C03 */ sra $s3, $t8, 0x10 -/* 0D75BC 800D69BC 328E00FF */ andi $t6, $s4, 0xff -/* 0D75C0 800D69C0 AFB4001C */ sw $s4, 0x1c($sp) -/* 0D75C4 800D69C4 01C0A025 */ move $s4, $t6 -/* 0D75C8 800D69C8 1E600004 */ bgtz $s3, .L800D69DC -/* 0D75CC 800D69CC AFBF0014 */ sw $ra, 0x14($sp) -/* 0D75D0 800D69D0 3C11800F */ lui $s1, %hi(D_800E98B0) # $s1, 0x800f -/* 0D75D4 800D69D4 263198B0 */ addiu $s1, %lo(D_800E98B0) # addiu $s1, $s1, -0x6750 -/* 0D75D8 800D69D8 24130001 */ li $s3, 1 -.L800D69DC: -/* 0D75DC 800D69DC 24020066 */ li $v0, 102 -/* 0D75E0 800D69E0 1054000C */ beq $v0, $s4, .L800D6A14 -/* 0D75E4 800D69E4 02801825 */ move $v1, $s4 -/* 0D75E8 800D69E8 24040067 */ li $a0, 103 -/* 0D75EC 800D69EC 10830002 */ beq $a0, $v1, .L800D69F8 -/* 0D75F0 800D69F0 24010047 */ li $at, 71 -/* 0D75F4 800D69F4 14610096 */ bne $v1, $at, .L800D6C50 -.L800D69F8: -/* 0D75F8 800D69F8 2A41FFFC */ slti $at, $s2, -4 -/* 0D75FC 800D69FC 14200094 */ bnez $at, .L800D6C50 -/* 0D7600 800D6A00 00000000 */ nop -/* 0D7604 800D6A04 8E0F0024 */ lw $t7, 0x24($s0) -/* 0D7608 800D6A08 024F082A */ slt $at, $s2, $t7 -/* 0D760C 800D6A0C 10200090 */ beqz $at, .L800D6C50 -/* 0D7610 800D6A10 00000000 */ nop -.L800D6A14: -/* 0D7614 800D6A14 26520001 */ addiu $s2, $s2, 1 -/* 0D7618 800D6A18 0012C400 */ sll $t8, $s2, 0x10 -/* 0D761C 800D6A1C 1043000E */ beq $v0, $v1, .L800D6A58 -/* 0D7620 800D6A20 00189403 */ sra $s2, $t8, 0x10 -/* 0D7624 800D6A24 8E0E0030 */ lw $t6, 0x30($s0) -/* 0D7628 800D6A28 8E020024 */ lw $v0, 0x24($s0) -/* 0D762C 800D6A2C 31CF0008 */ andi $t7, $t6, 8 -/* 0D7630 800D6A30 15E00005 */ bnez $t7, .L800D6A48 -/* 0D7634 800D6A34 0262082A */ slt $at, $s3, $v0 -/* 0D7638 800D6A38 50200004 */ beql $at, $zero, .L800D6A4C -/* 0D763C 800D6A3C 0052C023 */ subu $t8, $v0, $s2 -/* 0D7640 800D6A40 AE130024 */ sw $s3, 0x24($s0) -/* 0D7644 800D6A44 02601025 */ move $v0, $s3 -.L800D6A48: -/* 0D7648 800D6A48 0052C023 */ subu $t8, $v0, $s2 -.L800D6A4C: -/* 0D764C 800D6A4C 07010002 */ bgez $t8, .L800D6A58 -/* 0D7650 800D6A50 AE180024 */ sw $t8, 0x24($s0) -/* 0D7654 800D6A54 AE000024 */ sw $zero, 0x24($s0) -.L800D6A58: -/* 0D7658 800D6A58 1E400033 */ bgtz $s2, .L800D6B28 -/* 0D765C 800D6A5C 0272082A */ slt $at, $s3, $s2 -/* 0D7660 800D6A60 8E0F0008 */ lw $t7, 8($s0) -/* 0D7664 800D6A64 8E180014 */ lw $t8, 0x14($s0) -/* 0D7668 800D6A68 240E0030 */ li $t6, 48 -/* 0D766C 800D6A6C 00121823 */ negu $v1, $s2 -/* 0D7670 800D6A70 01F8C821 */ addu $t9, $t7, $t8 -/* 0D7674 800D6A74 A32E0000 */ sb $t6, ($t9) -/* 0D7678 800D6A78 8E0F0014 */ lw $t7, 0x14($s0) -/* 0D767C 800D6A7C 8E020024 */ lw $v0, 0x24($s0) -/* 0D7680 800D6A80 02202825 */ move $a1, $s1 -/* 0D7684 800D6A84 25F80001 */ addiu $t8, $t7, 1 -/* 0D7688 800D6A88 1C400005 */ bgtz $v0, .L800D6AA0 -/* 0D768C 800D6A8C AE180014 */ sw $t8, 0x14($s0) -/* 0D7690 800D6A90 8E0E0030 */ lw $t6, 0x30($s0) -/* 0D7694 800D6A94 31D90008 */ andi $t9, $t6, 8 -/* 0D7698 800D6A98 5320000B */ beql $t9, $zero, .L800D6AC8 -/* 0D769C 800D6A9C 0043082A */ slt $at, $v0, $v1 -.L800D6AA0: -/* 0D76A0 800D6AA0 8E180008 */ lw $t8, 8($s0) -/* 0D76A4 800D6AA4 8E0E0014 */ lw $t6, 0x14($s0) -/* 0D76A8 800D6AA8 240F002E */ li $t7, 46 -/* 0D76AC 800D6AAC 030EC821 */ addu $t9, $t8, $t6 -/* 0D76B0 800D6AB0 A32F0000 */ sb $t7, ($t9) -/* 0D76B4 800D6AB4 8E180014 */ lw $t8, 0x14($s0) -/* 0D76B8 800D6AB8 8E020024 */ lw $v0, 0x24($s0) -/* 0D76BC 800D6ABC 270E0001 */ addiu $t6, $t8, 1 -/* 0D76C0 800D6AC0 AE0E0014 */ sw $t6, 0x14($s0) -/* 0D76C4 800D6AC4 0043082A */ slt $at, $v0, $v1 -.L800D6AC8: -/* 0D76C8 800D6AC8 50200006 */ beql $at, $zero, .L800D6AE4 -/* 0D76CC 800D6ACC 0052C021 */ addu $t8, $v0, $s2 -/* 0D76D0 800D6AD0 00029023 */ negu $s2, $v0 -/* 0D76D4 800D6AD4 00127C00 */ sll $t7, $s2, 0x10 -/* 0D76D8 800D6AD8 000F9403 */ sra $s2, $t7, 0x10 -/* 0D76DC 800D6ADC 00121823 */ negu $v1, $s2 -/* 0D76E0 800D6AE0 0052C021 */ addu $t8, $v0, $s2 -.L800D6AE4: -/* 0D76E4 800D6AE4 0313082A */ slt $at, $t8, $s3 -/* 0D76E8 800D6AE8 AE030018 */ sw $v1, 0x18($s0) -/* 0D76EC 800D6AEC 10200004 */ beqz $at, .L800D6B00 -/* 0D76F0 800D6AF0 AE180024 */ sw $t8, 0x24($s0) -/* 0D76F4 800D6AF4 00189C00 */ sll $s3, $t8, 0x10 -/* 0D76F8 800D6AF8 00137403 */ sra $t6, $s3, 0x10 -/* 0D76FC 800D6AFC 01C09825 */ move $s3, $t6 -.L800D6B00: -/* 0D7700 800D6B00 8E0F0008 */ lw $t7, 8($s0) -/* 0D7704 800D6B04 8E190014 */ lw $t9, 0x14($s0) -/* 0D7708 800D6B08 AE13001C */ sw $s3, 0x1c($s0) -/* 0D770C 800D6B0C 02603025 */ move $a2, $s3 -/* 0D7710 800D6B10 0C03385C */ jal memcpy -/* 0D7714 800D6B14 01F92021 */ addu $a0, $t7, $t9 -/* 0D7718 800D6B18 8E180024 */ lw $t8, 0x24($s0) -/* 0D771C 800D6B1C 03137023 */ subu $t6, $t8, $s3 -/* 0D7720 800D6B20 100000E2 */ b .L800D6EAC -/* 0D7724 800D6B24 AE0E0020 */ sw $t6, 0x20($s0) -.L800D6B28: -/* 0D7728 800D6B28 1020001D */ beqz $at, .L800D6BA0 -/* 0D772C 800D6B2C 02202825 */ move $a1, $s1 -/* 0D7730 800D6B30 8E0F0008 */ lw $t7, 8($s0) -/* 0D7734 800D6B34 8E190014 */ lw $t9, 0x14($s0) -/* 0D7738 800D6B38 02202825 */ move $a1, $s1 -/* 0D773C 800D6B3C 02603025 */ move $a2, $s3 -/* 0D7740 800D6B40 0C03385C */ jal memcpy -/* 0D7744 800D6B44 01F92021 */ addu $a0, $t7, $t9 -/* 0D7748 800D6B48 8E180014 */ lw $t8, 0x14($s0) -/* 0D774C 800D6B4C 8E020024 */ lw $v0, 0x24($s0) -/* 0D7750 800D6B50 02537823 */ subu $t7, $s2, $s3 -/* 0D7754 800D6B54 03137021 */ addu $t6, $t8, $s3 -/* 0D7758 800D6B58 AE0E0014 */ sw $t6, 0x14($s0) -/* 0D775C 800D6B5C 1C400005 */ bgtz $v0, .L800D6B74 -/* 0D7760 800D6B60 AE0F0018 */ sw $t7, 0x18($s0) -/* 0D7764 800D6B64 8E190030 */ lw $t9, 0x30($s0) -/* 0D7768 800D6B68 33380008 */ andi $t8, $t9, 8 -/* 0D776C 800D6B6C 1300000A */ beqz $t8, .L800D6B98 -/* 0D7770 800D6B70 00000000 */ nop -.L800D6B74: -/* 0D7774 800D6B74 8E0F0008 */ lw $t7, 8($s0) -/* 0D7778 800D6B78 8E190014 */ lw $t9, 0x14($s0) -/* 0D777C 800D6B7C 240E002E */ li $t6, 46 -/* 0D7780 800D6B80 01F9C021 */ addu $t8, $t7, $t9 -/* 0D7784 800D6B84 A30E0000 */ sb $t6, ($t8) -/* 0D7788 800D6B88 8E0F001C */ lw $t7, 0x1c($s0) -/* 0D778C 800D6B8C 8E020024 */ lw $v0, 0x24($s0) -/* 0D7790 800D6B90 25F90001 */ addiu $t9, $t7, 1 -/* 0D7794 800D6B94 AE19001C */ sw $t9, 0x1c($s0) -.L800D6B98: -/* 0D7798 800D6B98 100000C4 */ b .L800D6EAC -/* 0D779C 800D6B9C AE020020 */ sw $v0, 0x20($s0) -.L800D6BA0: -/* 0D77A0 800D6BA0 8E0E0008 */ lw $t6, 8($s0) -/* 0D77A4 800D6BA4 8E180014 */ lw $t8, 0x14($s0) -/* 0D77A8 800D6BA8 02403025 */ move $a2, $s2 -/* 0D77AC 800D6BAC 0C03385C */ jal memcpy -/* 0D77B0 800D6BB0 01D82021 */ addu $a0, $t6, $t8 -/* 0D77B4 800D6BB4 8E0F0014 */ lw $t7, 0x14($s0) -/* 0D77B8 800D6BB8 8E020024 */ lw $v0, 0x24($s0) -/* 0D77BC 800D6BBC 02729823 */ subu $s3, $s3, $s2 -/* 0D77C0 800D6BC0 00137400 */ sll $t6, $s3, 0x10 -/* 0D77C4 800D6BC4 01F2C821 */ addu $t9, $t7, $s2 -/* 0D77C8 800D6BC8 AE190014 */ sw $t9, 0x14($s0) -/* 0D77CC 800D6BCC 1C400005 */ bgtz $v0, .L800D6BE4 -/* 0D77D0 800D6BD0 000E9C03 */ sra $s3, $t6, 0x10 -/* 0D77D4 800D6BD4 8E0F0030 */ lw $t7, 0x30($s0) -/* 0D77D8 800D6BD8 31F90008 */ andi $t9, $t7, 8 -/* 0D77DC 800D6BDC 5320000B */ beql $t9, $zero, .L800D6C0C -/* 0D77E0 800D6BE0 0053082A */ slt $at, $v0, $s3 -.L800D6BE4: -/* 0D77E4 800D6BE4 8E180008 */ lw $t8, 8($s0) -/* 0D77E8 800D6BE8 8E0F0014 */ lw $t7, 0x14($s0) -/* 0D77EC 800D6BEC 240E002E */ li $t6, 46 -/* 0D77F0 800D6BF0 030FC821 */ addu $t9, $t8, $t7 -/* 0D77F4 800D6BF4 A32E0000 */ sb $t6, ($t9) -/* 0D77F8 800D6BF8 8E180014 */ lw $t8, 0x14($s0) -/* 0D77FC 800D6BFC 8E020024 */ lw $v0, 0x24($s0) -/* 0D7800 800D6C00 270F0001 */ addiu $t7, $t8, 1 -/* 0D7804 800D6C04 AE0F0014 */ sw $t7, 0x14($s0) -/* 0D7808 800D6C08 0053082A */ slt $at, $v0, $s3 -.L800D6C0C: -/* 0D780C 800D6C0C 10200004 */ beqz $at, .L800D6C20 -/* 0D7810 800D6C10 02512821 */ addu $a1, $s2, $s1 -/* 0D7814 800D6C14 00029C00 */ sll $s3, $v0, 0x10 -/* 0D7818 800D6C18 00137403 */ sra $t6, $s3, 0x10 -/* 0D781C 800D6C1C 01C09825 */ move $s3, $t6 -.L800D6C20: -/* 0D7820 800D6C20 8E190008 */ lw $t9, 8($s0) -/* 0D7824 800D6C24 8E180014 */ lw $t8, 0x14($s0) -/* 0D7828 800D6C28 02603025 */ move $a2, $s3 -/* 0D782C 800D6C2C 0C03385C */ jal memcpy -/* 0D7830 800D6C30 03382021 */ addu $a0, $t9, $t8 -/* 0D7834 800D6C34 8E0F0014 */ lw $t7, 0x14($s0) -/* 0D7838 800D6C38 8E190024 */ lw $t9, 0x24($s0) -/* 0D783C 800D6C3C 01F37021 */ addu $t6, $t7, $s3 -/* 0D7840 800D6C40 0333C023 */ subu $t8, $t9, $s3 -/* 0D7844 800D6C44 AE0E0014 */ sw $t6, 0x14($s0) -/* 0D7848 800D6C48 10000098 */ b .L800D6EAC -/* 0D784C 800D6C4C AE180018 */ sw $t8, 0x18($s0) -.L800D6C50: -/* 0D7850 800D6C50 10830003 */ beq $a0, $v1, .L800D6C60 -/* 0D7854 800D6C54 24010047 */ li $at, 71 -/* 0D7858 800D6C58 54610011 */ bnel $v1, $at, .L800D6CA0 -/* 0D785C 800D6C5C 8E180008 */ lw $t8, 8($s0) -.L800D6C60: -/* 0D7860 800D6C60 8E020024 */ lw $v0, 0x24($s0) -/* 0D7864 800D6C64 24140045 */ li $s4, 69 -/* 0D7868 800D6C68 0262082A */ slt $at, $s3, $v0 -/* 0D786C 800D6C6C 50200004 */ beql $at, $zero, .L800D6C80 -/* 0D7870 800D6C70 244FFFFF */ addiu $t7, $v0, -1 -/* 0D7874 800D6C74 AE130024 */ sw $s3, 0x24($s0) -/* 0D7878 800D6C78 02601025 */ move $v0, $s3 -/* 0D787C 800D6C7C 244FFFFF */ addiu $t7, $v0, -1 -.L800D6C80: -/* 0D7880 800D6C80 05E10002 */ bgez $t7, .L800D6C8C -/* 0D7884 800D6C84 AE0F0024 */ sw $t7, 0x24($s0) -/* 0D7888 800D6C88 AE000024 */ sw $zero, 0x24($s0) -.L800D6C8C: -/* 0D788C 800D6C8C 14830003 */ bne $a0, $v1, .L800D6C9C -/* 0D7890 800D6C90 00000000 */ nop -/* 0D7894 800D6C94 10000001 */ b .L800D6C9C -/* 0D7898 800D6C98 24140065 */ li $s4, 101 -.L800D6C9C: -/* 0D789C 800D6C9C 8E180008 */ lw $t8, 8($s0) -.L800D6CA0: -/* 0D78A0 800D6CA0 8E0F0014 */ lw $t7, 0x14($s0) -/* 0D78A4 800D6CA4 92390000 */ lbu $t9, ($s1) -/* 0D78A8 800D6CA8 26310001 */ addiu $s1, $s1, 1 -/* 0D78AC 800D6CAC 030F7021 */ addu $t6, $t8, $t7 -/* 0D78B0 800D6CB0 A1D90000 */ sb $t9, ($t6) -/* 0D78B4 800D6CB4 8E180014 */ lw $t8, 0x14($s0) -/* 0D78B8 800D6CB8 8E020024 */ lw $v0, 0x24($s0) -/* 0D78BC 800D6CBC 270F0001 */ addiu $t7, $t8, 1 -/* 0D78C0 800D6CC0 1C400005 */ bgtz $v0, .L800D6CD8 -/* 0D78C4 800D6CC4 AE0F0014 */ sw $t7, 0x14($s0) -/* 0D78C8 800D6CC8 8E190030 */ lw $t9, 0x30($s0) -/* 0D78CC 800D6CCC 332E0008 */ andi $t6, $t9, 8 -/* 0D78D0 800D6CD0 11C0000A */ beqz $t6, .L800D6CFC -/* 0D78D4 800D6CD4 00000000 */ nop -.L800D6CD8: -/* 0D78D8 800D6CD8 8E0F0008 */ lw $t7, 8($s0) -/* 0D78DC 800D6CDC 8E190014 */ lw $t9, 0x14($s0) -/* 0D78E0 800D6CE0 2418002E */ li $t8, 46 -/* 0D78E4 800D6CE4 01F97021 */ addu $t6, $t7, $t9 -/* 0D78E8 800D6CE8 A1D80000 */ sb $t8, ($t6) -/* 0D78EC 800D6CEC 8E0F0014 */ lw $t7, 0x14($s0) -/* 0D78F0 800D6CF0 8E020024 */ lw $v0, 0x24($s0) -/* 0D78F4 800D6CF4 25F90001 */ addiu $t9, $t7, 1 -/* 0D78F8 800D6CF8 AE190014 */ sw $t9, 0x14($s0) -.L800D6CFC: -/* 0D78FC 800D6CFC 58400016 */ blezl $v0, .L800D6D58 -/* 0D7900 800D6D00 8E0E0008 */ lw $t6, 8($s0) -/* 0D7904 800D6D04 2673FFFF */ addiu $s3, $s3, -1 -/* 0D7908 800D6D08 0013C400 */ sll $t8, $s3, 0x10 -/* 0D790C 800D6D0C 00189C03 */ sra $s3, $t8, 0x10 -/* 0D7910 800D6D10 0053082A */ slt $at, $v0, $s3 -/* 0D7914 800D6D14 10200004 */ beqz $at, .L800D6D28 -/* 0D7918 800D6D18 02202825 */ move $a1, $s1 -/* 0D791C 800D6D1C 00029C00 */ sll $s3, $v0, 0x10 -/* 0D7920 800D6D20 00137C03 */ sra $t7, $s3, 0x10 -/* 0D7924 800D6D24 01E09825 */ move $s3, $t7 -.L800D6D28: -/* 0D7928 800D6D28 8E190008 */ lw $t9, 8($s0) -/* 0D792C 800D6D2C 8E180014 */ lw $t8, 0x14($s0) -/* 0D7930 800D6D30 02603025 */ move $a2, $s3 -/* 0D7934 800D6D34 0C03385C */ jal memcpy -/* 0D7938 800D6D38 03382021 */ addu $a0, $t9, $t8 -/* 0D793C 800D6D3C 8E0E0014 */ lw $t6, 0x14($s0) -/* 0D7940 800D6D40 8E190024 */ lw $t9, 0x24($s0) -/* 0D7944 800D6D44 01D37821 */ addu $t7, $t6, $s3 -/* 0D7948 800D6D48 0333C023 */ subu $t8, $t9, $s3 -/* 0D794C 800D6D4C AE0F0014 */ sw $t7, 0x14($s0) -/* 0D7950 800D6D50 AE180018 */ sw $t8, 0x18($s0) -/* 0D7954 800D6D54 8E0E0008 */ lw $t6, 8($s0) -.L800D6D58: -/* 0D7958 800D6D58 8E0F0014 */ lw $t7, 0x14($s0) -/* 0D795C 800D6D5C 01CF8821 */ addu $s1, $t6, $t7 -/* 0D7960 800D6D60 26310001 */ addiu $s1, $s1, 1 -/* 0D7964 800D6D64 06400005 */ bltz $s2, .L800D6D7C -/* 0D7968 800D6D68 A234FFFF */ sb $s4, -1($s1) -/* 0D796C 800D6D6C 2419002B */ li $t9, 43 -/* 0D7970 800D6D70 A2390000 */ sb $t9, ($s1) -/* 0D7974 800D6D74 10000008 */ b .L800D6D98 -/* 0D7978 800D6D78 26310001 */ addiu $s1, $s1, 1 -.L800D6D7C: -/* 0D797C 800D6D7C 00129023 */ negu $s2, $s2 -/* 0D7980 800D6D80 00127400 */ sll $t6, $s2, 0x10 -/* 0D7984 800D6D84 2418002D */ li $t8, 45 -/* 0D7988 800D6D88 000E7C03 */ sra $t7, $t6, 0x10 -/* 0D798C 800D6D8C A2380000 */ sb $t8, ($s1) -/* 0D7990 800D6D90 26310001 */ addiu $s1, $s1, 1 -/* 0D7994 800D6D94 01E09025 */ move $s2, $t7 -.L800D6D98: -/* 0D7998 800D6D98 2A410064 */ slti $at, $s2, 0x64 -/* 0D799C 800D6D9C 5420002A */ bnezl $at, .L800D6E48 -/* 0D79A0 800D6DA0 2402000A */ li $v0, 10 -/* 0D79A4 800D6DA4 2A4103E8 */ slti $at, $s2, 0x3e8 -/* 0D79A8 800D6DA8 14200013 */ bnez $at, .L800D6DF8 -/* 0D79AC 800D6DAC 240203E8 */ li $v0, 1000 -/* 0D79B0 800D6DB0 0242001A */ div $zero, $s2, $v0 -/* 0D79B4 800D6DB4 14400002 */ bnez $v0, .L800D6DC0 -/* 0D79B8 800D6DB8 00000000 */ nop -/* 0D79BC 800D6DBC 0007000D */ break 7 -.L800D6DC0: -/* 0D79C0 800D6DC0 2401FFFF */ li $at, -1 -/* 0D79C4 800D6DC4 14410004 */ bne $v0, $at, .L800D6DD8 -/* 0D79C8 800D6DC8 3C018000 */ lui $at, 0x8000 -/* 0D79CC 800D6DCC 16410002 */ bne $s2, $at, .L800D6DD8 -/* 0D79D0 800D6DD0 00000000 */ nop -/* 0D79D4 800D6DD4 0006000D */ break 6 -.L800D6DD8: -/* 0D79D8 800D6DD8 00009010 */ mfhi $s2 -/* 0D79DC 800D6DDC 00127400 */ sll $t6, $s2, 0x10 -/* 0D79E0 800D6DE0 0000C812 */ mflo $t9 -/* 0D79E4 800D6DE4 27380030 */ addiu $t8, $t9, 0x30 -/* 0D79E8 800D6DE8 000E7C03 */ sra $t7, $t6, 0x10 -/* 0D79EC 800D6DEC 01E09025 */ move $s2, $t7 -/* 0D79F0 800D6DF0 A2380000 */ sb $t8, ($s1) -/* 0D79F4 800D6DF4 26310001 */ addiu $s1, $s1, 1 -.L800D6DF8: -/* 0D79F8 800D6DF8 24020064 */ li $v0, 100 -/* 0D79FC 800D6DFC 0242001A */ div $zero, $s2, $v0 -/* 0D7A00 800D6E00 14400002 */ bnez $v0, .L800D6E0C -/* 0D7A04 800D6E04 00000000 */ nop -/* 0D7A08 800D6E08 0007000D */ break 7 -.L800D6E0C: -/* 0D7A0C 800D6E0C 2401FFFF */ li $at, -1 -/* 0D7A10 800D6E10 14410004 */ bne $v0, $at, .L800D6E24 -/* 0D7A14 800D6E14 3C018000 */ lui $at, 0x8000 -/* 0D7A18 800D6E18 16410002 */ bne $s2, $at, .L800D6E24 -/* 0D7A1C 800D6E1C 00000000 */ nop -/* 0D7A20 800D6E20 0006000D */ break 6 -.L800D6E24: -/* 0D7A24 800D6E24 00009010 */ mfhi $s2 -/* 0D7A28 800D6E28 00127400 */ sll $t6, $s2, 0x10 -/* 0D7A2C 800D6E2C 0000C812 */ mflo $t9 -/* 0D7A30 800D6E30 27380030 */ addiu $t8, $t9, 0x30 -/* 0D7A34 800D6E34 000E7C03 */ sra $t7, $t6, 0x10 -/* 0D7A38 800D6E38 01E09025 */ move $s2, $t7 -/* 0D7A3C 800D6E3C A2380000 */ sb $t8, ($s1) -/* 0D7A40 800D6E40 26310001 */ addiu $s1, $s1, 1 -/* 0D7A44 800D6E44 2402000A */ li $v0, 10 -.L800D6E48: -/* 0D7A48 800D6E48 0242001A */ div $zero, $s2, $v0 -/* 0D7A4C 800D6E4C 14400002 */ bnez $v0, .L800D6E58 -/* 0D7A50 800D6E50 00000000 */ nop -/* 0D7A54 800D6E54 0007000D */ break 7 -.L800D6E58: -/* 0D7A58 800D6E58 2401FFFF */ li $at, -1 -/* 0D7A5C 800D6E5C 14410004 */ bne $v0, $at, .L800D6E70 -/* 0D7A60 800D6E60 3C018000 */ lui $at, 0x8000 -/* 0D7A64 800D6E64 16410002 */ bne $s2, $at, .L800D6E70 -/* 0D7A68 800D6E68 00000000 */ nop -/* 0D7A6C 800D6E6C 0006000D */ break 6 -.L800D6E70: -/* 0D7A70 800D6E70 00009010 */ mfhi $s2 -/* 0D7A74 800D6E74 00127400 */ sll $t6, $s2, 0x10 -/* 0D7A78 800D6E78 0000C812 */ mflo $t9 -/* 0D7A7C 800D6E7C 27380030 */ addiu $t8, $t9, 0x30 -/* 0D7A80 800D6E80 000E7C03 */ sra $t7, $t6, 0x10 -/* 0D7A84 800D6E84 25F90030 */ addiu $t9, $t7, 0x30 -/* 0D7A88 800D6E88 A2380000 */ sb $t8, ($s1) -/* 0D7A8C 800D6E8C A2390001 */ sb $t9, 1($s1) -/* 0D7A90 800D6E90 8E180008 */ lw $t8, 8($s0) -/* 0D7A94 800D6E94 01E09025 */ move $s2, $t7 -/* 0D7A98 800D6E98 8E0F0014 */ lw $t7, 0x14($s0) -/* 0D7A9C 800D6E9C 26310002 */ addiu $s1, $s1, 2 -/* 0D7AA0 800D6EA0 02387023 */ subu $t6, $s1, $t8 -/* 0D7AA4 800D6EA4 01CFC823 */ subu $t9, $t6, $t7 -/* 0D7AA8 800D6EA8 AE19001C */ sw $t9, 0x1c($s0) -.L800D6EAC: -/* 0D7AAC 800D6EAC 8E180030 */ lw $t8, 0x30($s0) -/* 0D7AB0 800D6EB0 24010010 */ li $at, 16 -/* 0D7AB4 800D6EB4 330E0014 */ andi $t6, $t8, 0x14 -/* 0D7AB8 800D6EB8 55C10010 */ bnel $t6, $at, .L800D6EFC -/* 0D7ABC 800D6EBC 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D7AC0 800D6EC0 8E0F000C */ lw $t7, 0xc($s0) -/* 0D7AC4 800D6EC4 8E190014 */ lw $t9, 0x14($s0) -/* 0D7AC8 800D6EC8 8E0E0018 */ lw $t6, 0x18($s0) -/* 0D7ACC 800D6ECC 8E030028 */ lw $v1, 0x28($s0) -/* 0D7AD0 800D6ED0 01F9C021 */ addu $t8, $t7, $t9 -/* 0D7AD4 800D6ED4 8E19001C */ lw $t9, 0x1c($s0) -/* 0D7AD8 800D6ED8 030E7821 */ addu $t7, $t8, $t6 -/* 0D7ADC 800D6EDC 8E0E0020 */ lw $t6, 0x20($s0) -/* 0D7AE0 800D6EE0 01F9C021 */ addu $t8, $t7, $t9 -/* 0D7AE4 800D6EE4 030E1021 */ addu $v0, $t8, $t6 -/* 0D7AE8 800D6EE8 0043082A */ slt $at, $v0, $v1 -/* 0D7AEC 800D6EEC 10200002 */ beqz $at, .L800D6EF8 -/* 0D7AF0 800D6EF0 00627823 */ subu $t7, $v1, $v0 -/* 0D7AF4 800D6EF4 AE0F0010 */ sw $t7, 0x10($s0) -.L800D6EF8: -/* 0D7AF8 800D6EF8 8FBF0014 */ lw $ra, 0x14($sp) -.L800D6EFC: -/* 0D7AFC 800D6EFC 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0D7B00 800D6F00 03E00008 */ jr $ra -/* 0D7B04 800D6F04 00000000 */ nop - -/* 0D7B08 800D6F08 03E00008 */ jr $ra -/* 0D7B0C 800D6F0C 00000000 */ nop - -glabel func_800D6F10 -/* 0D7B10 800D6F10 27BDFF30 */ addiu $sp, $sp, -0xd0 -/* 0D7B14 800D6F14 AFBF003C */ sw $ra, 0x3c($sp) -/* 0D7B18 800D6F18 AFB50038 */ sw $s5, 0x38($sp) -/* 0D7B1C 800D6F1C AFB40034 */ sw $s4, 0x34($sp) -/* 0D7B20 800D6F20 AFB30030 */ sw $s3, 0x30($sp) -/* 0D7B24 800D6F24 AFB2002C */ sw $s2, 0x2c($sp) -/* 0D7B28 800D6F28 AFB10028 */ sw $s1, 0x28($sp) -/* 0D7B2C 800D6F2C AFB00024 */ sw $s0, 0x24($sp) -/* 0D7B30 800D6F30 F7B40018 */ sdc1 $f20, 0x18($sp) -/* 0D7B34 800D6F34 AFA400D0 */ sw $a0, 0xd0($sp) -/* 0D7B38 800D6F38 AFA500D4 */ sw $a1, 0xd4($sp) -/* 0D7B3C 800D6F3C 8C820024 */ lw $v0, 0x24($a0) -/* 0D7B40 800D6F40 27B500B0 */ addiu $s5, $sp, 0xb0 -/* 0D7B44 800D6F44 D4940000 */ ldc1 $f20, ($a0) -/* 0D7B48 800D6F48 04410003 */ bgez $v0, .L800D6F58 -/* 0D7B4C 800D6F4C 240F0006 */ li $t7, 6 -/* 0D7B50 800D6F50 1000000C */ b .L800D6F84 -/* 0D7B54 800D6F54 AC8F0024 */ sw $t7, 0x24($a0) -.L800D6F58: -/* 0D7B58 800D6F58 1440000A */ bnez $v0, .L800D6F84 -/* 0D7B5C 800D6F5C 93B800D7 */ lbu $t8, 0xd7($sp) -/* 0D7B60 800D6F60 24010067 */ li $at, 103 -/* 0D7B64 800D6F64 13010004 */ beq $t8, $at, .L800D6F78 -/* 0D7B68 800D6F68 AFB80048 */ sw $t8, 0x48($sp) -/* 0D7B6C 800D6F6C 24010047 */ li $at, 71 -/* 0D7B70 800D6F70 57010005 */ bnel $t8, $at, .L800D6F88 -/* 0D7B74 800D6F74 8FAE00D0 */ lw $t6, 0xd0($sp) -.L800D6F78: -/* 0D7B78 800D6F78 8FAF00D0 */ lw $t7, 0xd0($sp) -/* 0D7B7C 800D6F7C 24190001 */ li $t9, 1 -/* 0D7B80 800D6F80 ADF90024 */ sw $t9, 0x24($t7) -.L800D6F84: -/* 0D7B84 800D6F84 8FAE00D0 */ lw $t6, 0xd0($sp) -.L800D6F88: -/* 0D7B88 800D6F88 240107FF */ li $at, 2047 -/* 0D7B8C 800D6F8C 95C40000 */ lhu $a0, ($t6) -/* 0D7B90 800D6F90 30837FF0 */ andi $v1, $a0, 0x7ff0 -/* 0D7B94 800D6F94 0003C103 */ sra $t8, $v1, 4 -/* 0D7B98 800D6F98 0018CC00 */ sll $t9, $t8, 0x10 -/* 0D7B9C 800D6F9C 00191C03 */ sra $v1, $t9, 0x10 -/* 0D7BA0 800D6FA0 14610018 */ bne $v1, $at, .L800D7004 -/* 0D7BA4 800D6FA4 00000000 */ nop -/* 0D7BA8 800D6FA8 A7A0009A */ sh $zero, 0x9a($sp) -/* 0D7BAC 800D6FAC 95D80000 */ lhu $t8, ($t6) -/* 0D7BB0 800D6FB0 24030002 */ li $v1, 2 -/* 0D7BB4 800D6FB4 00031400 */ sll $v0, $v1, 0x10 -/* 0D7BB8 800D6FB8 3319000F */ andi $t9, $t8, 0xf -/* 0D7BBC 800D6FBC 5720000A */ bnezl $t9, .L800D6FE8 -/* 0D7BC0 800D6FC0 00027C03 */ sra $t7, $v0, 0x10 -/* 0D7BC4 800D6FC4 95CF0002 */ lhu $t7, 2($t6) -/* 0D7BC8 800D6FC8 55E00007 */ bnezl $t7, .L800D6FE8 -/* 0D7BCC 800D6FCC 00027C03 */ sra $t7, $v0, 0x10 -/* 0D7BD0 800D6FD0 95D80004 */ lhu $t8, 4($t6) -/* 0D7BD4 800D6FD4 57000004 */ bnezl $t8, .L800D6FE8 -/* 0D7BD8 800D6FD8 00027C03 */ sra $t7, $v0, 0x10 -/* 0D7BDC 800D6FDC 95D90006 */ lhu $t9, 6($t6) -/* 0D7BE0 800D6FE0 13200003 */ beqz $t9, .L800D6FF0 -/* 0D7BE4 800D6FE4 00027C03 */ sra $t7, $v0, 0x10 -.L800D6FE8: -/* 0D7BE8 800D6FE8 10000014 */ b .L800D703C -/* 0D7BEC 800D6FEC 01E01025 */ move $v0, $t7 -.L800D6FF0: -/* 0D7BF0 800D6FF0 24030001 */ li $v1, 1 -/* 0D7BF4 800D6FF4 00031400 */ sll $v0, $v1, 0x10 -/* 0D7BF8 800D6FF8 00027C03 */ sra $t7, $v0, 0x10 -/* 0D7BFC 800D6FFC 1000000F */ b .L800D703C -/* 0D7C00 800D7000 01E01025 */ move $v0, $t7 -.L800D7004: -/* 0D7C04 800D7004 18600008 */ blez $v1, .L800D7028 -/* 0D7C08 800D7008 3098800F */ andi $t8, $a0, 0x800f -/* 0D7C0C 800D700C 8FB900D0 */ lw $t9, 0xd0($sp) -/* 0D7C10 800D7010 370E3FF0 */ ori $t6, $t8, 0x3ff0 -/* 0D7C14 800D7014 246FFC02 */ addiu $t7, $v1, -0x3fe -/* 0D7C18 800D7018 A72E0000 */ sh $t6, ($t9) -/* 0D7C1C 800D701C A7AF009A */ sh $t7, 0x9a($sp) -/* 0D7C20 800D7020 10000006 */ b .L800D703C -/* 0D7C24 800D7024 2402FFFF */ li $v0, -1 -.L800D7028: -/* 0D7C28 800D7028 04610003 */ bgez $v1, .L800D7038 -/* 0D7C2C 800D702C 00001025 */ move $v0, $zero -/* 0D7C30 800D7030 10000002 */ b .L800D703C -/* 0D7C34 800D7034 24020002 */ li $v0, 2 -.L800D7038: -/* 0D7C38 800D7038 A7A0009A */ sh $zero, 0x9a($sp) -.L800D703C: -/* 0D7C3C 800D703C 18400012 */ blez $v0, .L800D7088 -/* 0D7C40 800D7040 0002C400 */ sll $t8, $v0, 0x10 -/* 0D7C44 800D7044 0002C400 */ sll $t8, $v0, 0x10 -/* 0D7C48 800D7048 00187403 */ sra $t6, $t8, 0x10 -/* 0D7C4C 800D704C 24010002 */ li $at, 2 -/* 0D7C50 800D7050 15C10004 */ bne $t6, $at, .L800D7064 -/* 0D7C54 800D7054 8FB900D0 */ lw $t9, 0xd0($sp) -/* 0D7C58 800D7058 3C05800F */ lui $a1, %hi(D_800E98A8) # $a1, 0x800f -/* 0D7C5C 800D705C 10000003 */ b .L800D706C -/* 0D7C60 800D7060 24A598A8 */ addiu $a1, %lo(D_800E98A8) # addiu $a1, $a1, -0x6758 -.L800D7064: -/* 0D7C64 800D7064 3C05800F */ lui $a1, %hi(D_800E98AC) # $a1, 0x800f -/* 0D7C68 800D7068 24A598AC */ addiu $a1, %lo(D_800E98AC) # addiu $a1, $a1, -0x6754 -.L800D706C: -/* 0D7C6C 800D706C 240F0003 */ li $t7, 3 -/* 0D7C70 800D7070 AF2F0014 */ sw $t7, 0x14($t9) -/* 0D7C74 800D7074 8F240008 */ lw $a0, 8($t9) -/* 0D7C78 800D7078 0C03385C */ jal memcpy -/* 0D7C7C 800D707C 24060003 */ li $a2, 3 -/* 0D7C80 800D7080 100000ED */ b .L800D7438 -/* 0D7C84 800D7084 8FBF003C */ lw $ra, 0x3c($sp) -.L800D7088: -/* 0D7C88 800D7088 00187403 */ sra $t6, $t8, 0x10 -/* 0D7C8C 800D708C 15C00003 */ bnez $t6, .L800D709C -/* 0D7C90 800D7090 00009825 */ move $s3, $zero -/* 0D7C94 800D7094 100000E2 */ b .L800D7420 -/* 0D7C98 800D7098 A7A0009A */ sh $zero, 0x9a($sp) -.L800D709C: -/* 0D7C9C 800D709C 44801800 */ mtc1 $zero, $f3 -/* 0D7CA0 800D70A0 44801000 */ mtc1 $zero, $f2 -/* 0D7CA4 800D70A4 93AF00D7 */ lbu $t7, 0xd7($sp) -/* 0D7CA8 800D70A8 87B9009A */ lh $t9, 0x9a($sp) -/* 0D7CAC 800D70AC 4622A03C */ c.lt.d $f20, $f2 -/* 0D7CB0 800D70B0 24017597 */ li $at, 30103 -/* 0D7CB4 800D70B4 00001825 */ move $v1, $zero -/* 0D7CB8 800D70B8 27B500B1 */ addiu $s5, $sp, 0xb1 -/* 0D7CBC 800D70BC 45000002 */ bc1f .L800D70C8 -/* 0D7CC0 800D70C0 AFAF0048 */ sw $t7, 0x48($sp) -/* 0D7CC4 800D70C4 4620A507 */ neg.d $f20, $f20 -.L800D70C8: -/* 0D7CC8 800D70C8 03210019 */ multu $t9, $at -/* 0D7CCC 800D70CC 3C010001 */ lui $at, (0x000186A0 >> 16) # lui $at, 1 -/* 0D7CD0 800D70D0 342186A0 */ ori $at, (0x000186A0 & 0xFFFF) # ori $at, $at, 0x86a0 -/* 0D7CD4 800D70D4 24050006 */ li $a1, 6 -/* 0D7CD8 800D70D8 0000C012 */ mflo $t8 -/* 0D7CDC 800D70DC 00000000 */ nop -/* 0D7CE0 800D70E0 00000000 */ nop -/* 0D7CE4 800D70E4 0301001A */ div $zero, $t8, $at -/* 0D7CE8 800D70E8 00007012 */ mflo $t6 -/* 0D7CEC 800D70EC 25CFFFFC */ addiu $t7, $t6, -4 -/* 0D7CF0 800D70F0 000FCC00 */ sll $t9, $t7, 0x10 -/* 0D7CF4 800D70F4 0019C403 */ sra $t8, $t9, 0x10 -/* 0D7CF8 800D70F8 07010019 */ bgez $t8, .L800D7160 -/* 0D7CFC 800D70FC A7AF009A */ sh $t7, 0x9a($sp) -/* 0D7D00 800D7100 000FCC00 */ sll $t9, $t7, 0x10 -/* 0D7D04 800D7104 0019C403 */ sra $t8, $t9, 0x10 -/* 0D7D08 800D7108 240E0003 */ li $t6, 3 -/* 0D7D0C 800D710C 01D82023 */ subu $a0, $t6, $t8 -/* 0D7D10 800D7110 2401FFFC */ li $at, -4 -/* 0D7D14 800D7114 00811024 */ and $v0, $a0, $at -/* 0D7D18 800D7118 0002C823 */ negu $t9, $v0 -/* 0D7D1C 800D711C 1840002C */ blez $v0, .L800D71D0 -/* 0D7D20 800D7120 A7B9009A */ sh $t9, 0x9a($sp) -/* 0D7D24 800D7124 3C04800F */ lui $a0, %hi(D_800E9860) # $a0, 0x800f -/* 0D7D28 800D7128 24849860 */ addiu $a0, %lo(D_800E9860) # addiu $a0, $a0, -0x67a0 -.L800D712C: -/* 0D7D2C 800D712C 304E0001 */ andi $t6, $v0, 1 -/* 0D7D30 800D7130 11C00006 */ beqz $t6, .L800D714C -/* 0D7D34 800D7134 0002C843 */ sra $t9, $v0, 1 -/* 0D7D38 800D7138 0003C0C0 */ sll $t8, $v1, 3 -/* 0D7D3C 800D713C 00987821 */ addu $t7, $a0, $t8 -/* 0D7D40 800D7140 D5E40000 */ ldc1 $f4, ($t7) -/* 0D7D44 800D7144 4624A502 */ mul.d $f20, $f20, $f4 -/* 0D7D48 800D7148 00000000 */ nop -.L800D714C: -/* 0D7D4C 800D714C 03201025 */ move $v0, $t9 -/* 0D7D50 800D7150 1F20FFF6 */ bgtz $t9, .L800D712C -/* 0D7D54 800D7154 24630001 */ addiu $v1, $v1, 1 -/* 0D7D58 800D7158 1000001E */ b .L800D71D4 -/* 0D7D5C 800D715C 8FAF0048 */ lw $t7, 0x48($sp) -.L800D7160: -/* 0D7D60 800D7160 87AE009A */ lh $t6, 0x9a($sp) -/* 0D7D64 800D7164 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 0D7D68 800D7168 00001825 */ move $v1, $zero -/* 0D7D6C 800D716C 19C00018 */ blez $t6, .L800D71D0 -/* 0D7D70 800D7170 31D8FFFC */ andi $t8, $t6, 0xfffc -/* 0D7D74 800D7174 00181400 */ sll $v0, $t8, 0x10 -/* 0D7D78 800D7178 0018CC00 */ sll $t9, $t8, 0x10 -/* 0D7D7C 800D717C 44810800 */ mtc1 $at, $f1 -/* 0D7D80 800D7180 44800000 */ mtc1 $zero, $f0 -/* 0D7D84 800D7184 00197403 */ sra $t6, $t9, 0x10 -/* 0D7D88 800D7188 00027C03 */ sra $t7, $v0, 0x10 -/* 0D7D8C 800D718C A7B8009A */ sh $t8, 0x9a($sp) -/* 0D7D90 800D7190 19C0000E */ blez $t6, .L800D71CC -/* 0D7D94 800D7194 01E01025 */ move $v0, $t7 -/* 0D7D98 800D7198 3C04800F */ lui $a0, %hi(D_800E9860) # $a0, 0x800f -/* 0D7D9C 800D719C 24849860 */ addiu $a0, %lo(D_800E9860) # addiu $a0, $a0, -0x67a0 -.L800D71A0: -/* 0D7DA0 800D71A0 304F0001 */ andi $t7, $v0, 1 -/* 0D7DA4 800D71A4 11E00006 */ beqz $t7, .L800D71C0 -/* 0D7DA8 800D71A8 00027043 */ sra $t6, $v0, 1 -/* 0D7DAC 800D71AC 0003C0C0 */ sll $t8, $v1, 3 -/* 0D7DB0 800D71B0 0098C821 */ addu $t9, $a0, $t8 -/* 0D7DB4 800D71B4 D7260000 */ ldc1 $f6, ($t9) -/* 0D7DB8 800D71B8 46260002 */ mul.d $f0, $f0, $f6 -/* 0D7DBC 800D71BC 00000000 */ nop -.L800D71C0: -/* 0D7DC0 800D71C0 01C01025 */ move $v0, $t6 -/* 0D7DC4 800D71C4 1DC0FFF6 */ bgtz $t6, .L800D71A0 -/* 0D7DC8 800D71C8 24630001 */ addiu $v1, $v1, 1 -.L800D71CC: -/* 0D7DCC 800D71CC 4620A503 */ div.d $f20, $f20, $f0 -.L800D71D0: -/* 0D7DD0 800D71D0 8FAF0048 */ lw $t7, 0x48($sp) -.L800D71D4: -/* 0D7DD4 800D71D4 24010066 */ li $at, 102 -/* 0D7DD8 800D71D8 8FB800D0 */ lw $t8, 0xd0($sp) -/* 0D7DDC 800D71DC 15E10004 */ bne $t7, $at, .L800D71F0 -/* 0D7DE0 800D71E0 240E0030 */ li $t6, 48 -/* 0D7DE4 800D71E4 87A5009A */ lh $a1, 0x9a($sp) -/* 0D7DE8 800D71E8 10000001 */ b .L800D71F0 -/* 0D7DEC 800D71EC 24A5000A */ addiu $a1, $a1, 0xa -.L800D71F0: -/* 0D7DF0 800D71F0 8F190024 */ lw $t9, 0x24($t8) -/* 0D7DF4 800D71F4 00B9A021 */ addu $s4, $a1, $t9 -/* 0D7DF8 800D71F8 2A810014 */ slti $at, $s4, 0x14 -/* 0D7DFC 800D71FC 14200002 */ bnez $at, .L800D7208 -/* 0D7E00 800D7200 00000000 */ nop -/* 0D7E04 800D7204 24140013 */ li $s4, 19 -.L800D7208: -/* 0D7E08 800D7208 1A800033 */ blez $s4, .L800D72D8 -/* 0D7E0C 800D720C A3AE00B0 */ sb $t6, 0xb0($sp) -/* 0D7E10 800D7210 4634103C */ c.lt.d $f2, $f20 -/* 0D7E14 800D7214 24130030 */ li $s3, 48 -/* 0D7E18 800D7218 27B20074 */ addiu $s2, $sp, 0x74 -/* 0D7E1C 800D721C 4502002F */ bc1fl .L800D72DC -/* 0D7E20 800D7220 87B8009A */ lh $t8, 0x9a($sp) -/* 0D7E24 800D7224 4620A20D */ trunc.w.d $f8, $f20 -.L800D7228: -/* 0D7E28 800D7228 2694FFF8 */ addiu $s4, $s4, -8 -/* 0D7E2C 800D722C 26B50008 */ addiu $s5, $s5, 8 -/* 0D7E30 800D7230 44114000 */ mfc1 $s1, $f8 -/* 0D7E34 800D7234 1A800008 */ blez $s4, .L800D7258 -/* 0D7E38 800D7238 00000000 */ nop -/* 0D7E3C 800D723C 44915000 */ mtc1 $s1, $f10 -/* 0D7E40 800D7240 3C01800F */ lui $at, 0x800f -/* 0D7E44 800D7244 D42898B8 */ ldc1 $f8, -0x6748($at) -/* 0D7E48 800D7248 46805121 */ cvt.d.w $f4, $f10 -/* 0D7E4C 800D724C 4624A181 */ sub.d $f6, $f20, $f4 -/* 0D7E50 800D7250 46283502 */ mul.d $f20, $f6, $f8 -/* 0D7E54 800D7254 00000000 */ nop -.L800D7258: -/* 0D7E58 800D7258 1A200011 */ blez $s1, .L800D72A0 -/* 0D7E5C 800D725C 24100008 */ li $s0, 8 -/* 0D7E60 800D7260 24100007 */ li $s0, 7 -/* 0D7E64 800D7264 0600000E */ bltz $s0, .L800D72A0 -/* 0D7E68 800D7268 02402025 */ move $a0, $s2 -.L800D726C: -/* 0D7E6C 800D726C 02202825 */ move $a1, $s1 -/* 0D7E70 800D7270 0C035D5C */ jal func_800D7570 -/* 0D7E74 800D7274 2406000A */ li $a2, 10 -/* 0D7E78 800D7278 8FB80078 */ lw $t8, 0x78($sp) -/* 0D7E7C 800D727C 26B5FFFF */ addiu $s5, $s5, -1 -/* 0D7E80 800D7280 27190030 */ addiu $t9, $t8, 0x30 -/* 0D7E84 800D7284 A2B90000 */ sb $t9, ($s5) -/* 0D7E88 800D7288 8FB10074 */ lw $s1, 0x74($sp) -/* 0D7E8C 800D728C 5A200005 */ blezl $s1, .L800D72A4 -/* 0D7E90 800D7290 44801800 */ mtc1 $zero, $f3 -/* 0D7E94 800D7294 2610FFFF */ addiu $s0, $s0, -1 -/* 0D7E98 800D7298 0603FFF4 */ bgezl $s0, .L800D726C -/* 0D7E9C 800D729C 02402025 */ move $a0, $s2 -.L800D72A0: -/* 0D7EA0 800D72A0 44801800 */ mtc1 $zero, $f3 -.L800D72A4: -/* 0D7EA4 800D72A4 44801000 */ mtc1 $zero, $f2 -/* 0D7EA8 800D72A8 2610FFFF */ addiu $s0, $s0, -1 -/* 0D7EAC 800D72AC 06000004 */ bltz $s0, .L800D72C0 -.L800D72B0: -/* 0D7EB0 800D72B0 2610FFFF */ addiu $s0, $s0, -1 -/* 0D7EB4 800D72B4 26B5FFFF */ addiu $s5, $s5, -1 -/* 0D7EB8 800D72B8 0601FFFD */ bgez $s0, .L800D72B0 -/* 0D7EBC 800D72BC A2B30000 */ sb $s3, ($s5) -.L800D72C0: -/* 0D7EC0 800D72C0 1A800005 */ blez $s4, .L800D72D8 -/* 0D7EC4 800D72C4 26B50008 */ addiu $s5, $s5, 8 -/* 0D7EC8 800D72C8 4634103C */ c.lt.d $f2, $f20 -/* 0D7ECC 800D72CC 00000000 */ nop -/* 0D7ED0 800D72D0 4503FFD5 */ bc1tl .L800D7228 -/* 0D7ED4 800D72D4 4620A20D */ trunc.w.d $f8, $f20 -.L800D72D8: -/* 0D7ED8 800D72D8 87B8009A */ lh $t8, 0x9a($sp) -.L800D72DC: -/* 0D7EDC 800D72DC 93AE00B1 */ lbu $t6, 0xb1($sp) -/* 0D7EE0 800D72E0 27AF00B0 */ addiu $t7, $sp, 0xb0 -/* 0D7EE4 800D72E4 24020030 */ li $v0, 48 -/* 0D7EE8 800D72E8 02AFA023 */ subu $s4, $s5, $t7 -/* 0D7EEC 800D72EC 27190007 */ addiu $t9, $t8, 7 -/* 0D7EF0 800D72F0 2694FFFF */ addiu $s4, $s4, -1 -/* 0D7EF4 800D72F4 A7B9009A */ sh $t9, 0x9a($sp) -/* 0D7EF8 800D72F8 144E0009 */ bne $v0, $t6, .L800D7320 -/* 0D7EFC 800D72FC 27B500B1 */ addiu $s5, $sp, 0xb1 -/* 0D7F00 800D7300 87AF009A */ lh $t7, 0x9a($sp) -.L800D7304: -/* 0D7F04 800D7304 26B50001 */ addiu $s5, $s5, 1 -/* 0D7F08 800D7308 2694FFFF */ addiu $s4, $s4, -1 -/* 0D7F0C 800D730C 25F8FFFF */ addiu $t8, $t7, -1 -/* 0D7F10 800D7310 A7B8009A */ sh $t8, 0x9a($sp) -/* 0D7F14 800D7314 92B90000 */ lbu $t9, ($s5) -/* 0D7F18 800D7318 5059FFFA */ beql $v0, $t9, .L800D7304 -/* 0D7F1C 800D731C 87AF009A */ lh $t7, 0x9a($sp) -.L800D7320: -/* 0D7F20 800D7320 8FAE0048 */ lw $t6, 0x48($sp) -/* 0D7F24 800D7324 24010066 */ li $at, 102 -/* 0D7F28 800D7328 8FB800D0 */ lw $t8, 0xd0($sp) -/* 0D7F2C 800D732C 15C10004 */ bne $t6, $at, .L800D7340 -/* 0D7F30 800D7330 8FAF0048 */ lw $t7, 0x48($sp) -/* 0D7F34 800D7334 87A5009A */ lh $a1, 0x9a($sp) -/* 0D7F38 800D7338 10000009 */ b .L800D7360 -/* 0D7F3C 800D733C 24A50001 */ addiu $a1, $a1, 1 -.L800D7340: -/* 0D7F40 800D7340 24010065 */ li $at, 101 -/* 0D7F44 800D7344 11E10003 */ beq $t7, $at, .L800D7354 -/* 0D7F48 800D7348 24010045 */ li $at, 69 -/* 0D7F4C 800D734C 15E10003 */ bne $t7, $at, .L800D735C -/* 0D7F50 800D7350 00001025 */ move $v0, $zero -.L800D7354: -/* 0D7F54 800D7354 10000001 */ b .L800D735C -/* 0D7F58 800D7358 24020001 */ li $v0, 1 -.L800D735C: -/* 0D7F5C 800D735C 00402825 */ move $a1, $v0 -.L800D7360: -/* 0D7F60 800D7360 8F190024 */ lw $t9, 0x24($t8) -/* 0D7F64 800D7364 00B99821 */ addu $s3, $a1, $t9 -/* 0D7F68 800D7368 00137400 */ sll $t6, $s3, 0x10 -/* 0D7F6C 800D736C 000E9C03 */ sra $s3, $t6, 0x10 -/* 0D7F70 800D7370 0293082A */ slt $at, $s4, $s3 -/* 0D7F74 800D7374 10200004 */ beqz $at, .L800D7388 -/* 0D7F78 800D7378 00000000 */ nop -/* 0D7F7C 800D737C 00149C00 */ sll $s3, $s4, 0x10 -/* 0D7F80 800D7380 0013C403 */ sra $t8, $s3, 0x10 -/* 0D7F84 800D7384 03009825 */ move $s3, $t8 -.L800D7388: -/* 0D7F88 800D7388 1A600025 */ blez $s3, .L800D7420 -/* 0D7F8C 800D738C 0274082A */ slt $at, $s3, $s4 -/* 0D7F90 800D7390 10200007 */ beqz $at, .L800D73B0 -/* 0D7F94 800D7394 02751021 */ addu $v0, $s3, $s5 -/* 0D7F98 800D7398 90590000 */ lbu $t9, ($v0) -/* 0D7F9C 800D739C 2B210035 */ slti $at, $t9, 0x35 -/* 0D7FA0 800D73A0 54200004 */ bnezl $at, .L800D73B4 -/* 0D7FA4 800D73A4 24050030 */ li $a1, 48 -/* 0D7FA8 800D73A8 10000003 */ b .L800D73B8 -/* 0D7FAC 800D73AC 24050039 */ li $a1, 57 -.L800D73B0: -/* 0D7FB0 800D73B0 24050030 */ li $a1, 48 -.L800D73B4: -/* 0D7FB4 800D73B4 02751021 */ addu $v0, $s3, $s5 -.L800D73B8: -/* 0D7FB8 800D73B8 904EFFFF */ lbu $t6, -1($v0) -/* 0D7FBC 800D73BC 2663FFFF */ addiu $v1, $s3, -1 -/* 0D7FC0 800D73C0 00A02025 */ move $a0, $a1 -/* 0D7FC4 800D73C4 14AE0009 */ bne $a1, $t6, .L800D73EC -/* 0D7FC8 800D73C8 24010039 */ li $at, 57 -/* 0D7FCC 800D73CC 00751021 */ addu $v0, $v1, $s5 -.L800D73D0: -/* 0D7FD0 800D73D0 9059FFFF */ lbu $t9, -1($v0) -/* 0D7FD4 800D73D4 2673FFFF */ addiu $s3, $s3, -1 -/* 0D7FD8 800D73D8 00137C00 */ sll $t7, $s3, 0x10 -/* 0D7FDC 800D73DC 2463FFFF */ addiu $v1, $v1, -1 -/* 0D7FE0 800D73E0 2442FFFF */ addiu $v0, $v0, -1 -/* 0D7FE4 800D73E4 1099FFFA */ beq $a0, $t9, .L800D73D0 -/* 0D7FE8 800D73E8 000F9C03 */ sra $s3, $t7, 0x10 -.L800D73EC: -/* 0D7FEC 800D73EC 14810004 */ bne $a0, $at, .L800D7400 -/* 0D7FF0 800D73F0 02A31021 */ addu $v0, $s5, $v1 -/* 0D7FF4 800D73F4 904E0000 */ lbu $t6, ($v0) -/* 0D7FF8 800D73F8 25CF0001 */ addiu $t7, $t6, 1 -/* 0D7FFC 800D73FC A04F0000 */ sb $t7, ($v0) -.L800D7400: -/* 0D8000 800D7400 04610007 */ bgez $v1, .L800D7420 -/* 0D8004 800D7404 87AE009A */ lh $t6, 0x9a($sp) -/* 0D8008 800D7408 26730001 */ addiu $s3, $s3, 1 -/* 0D800C 800D740C 0013C400 */ sll $t8, $s3, 0x10 -/* 0D8010 800D7410 25CF0001 */ addiu $t7, $t6, 1 -/* 0D8014 800D7414 A7AF009A */ sh $t7, 0x9a($sp) -/* 0D8018 800D7418 00189C03 */ sra $s3, $t8, 0x10 -/* 0D801C 800D741C 26B5FFFF */ addiu $s5, $s5, -1 -.L800D7420: -/* 0D8020 800D7420 8FB000D0 */ lw $s0, 0xd0($sp) -/* 0D8024 800D7424 93B400D7 */ lbu $s4, 0xd7($sp) -/* 0D8028 800D7428 02A08825 */ move $s1, $s5 -/* 0D802C 800D742C 0C035A68 */ jal func_800D69A0 -/* 0D8030 800D7430 87B2009A */ lh $s2, 0x9a($sp) -/* 0D8034 800D7434 8FBF003C */ lw $ra, 0x3c($sp) -.L800D7438: -/* 0D8038 800D7438 D7B40018 */ ldc1 $f20, 0x18($sp) -/* 0D803C 800D743C 8FB00024 */ lw $s0, 0x24($sp) -/* 0D8040 800D7440 8FB10028 */ lw $s1, 0x28($sp) -/* 0D8044 800D7444 8FB2002C */ lw $s2, 0x2c($sp) -/* 0D8048 800D7448 8FB30030 */ lw $s3, 0x30($sp) -/* 0D804C 800D744C 8FB40034 */ lw $s4, 0x34($sp) -/* 0D8050 800D7450 8FB50038 */ lw $s5, 0x38($sp) -/* 0D8054 800D7454 03E00008 */ jr $ra -/* 0D8058 800D7458 27BD00D0 */ addiu $sp, $sp, 0xd0 - -/* 0D805C 800D745C 00000000 */ nop -glabel func_800D7460 -/* 0D8060 800D7460 40845800 */ mtc0 $a0, $11 -/* 0D8064 800D7464 03E00008 */ jr $ra -/* 0D8068 800D7468 00000000 */ nop - -/* 0D806C 800D746C 00000000 */ nop -glabel func_800D7470 -/* 0D8070 800D7470 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0D8074 800D7474 AFA40030 */ sw $a0, 0x30($sp) -/* 0D8078 800D7478 AFBF0014 */ sw $ra, 0x14($sp) -/* 0D807C 800D747C AFA60038 */ sw $a2, 0x38($sp) -/* 0D8080 800D7480 AFA7003C */ sw $a3, 0x3c($sp) -/* 0D8084 800D7484 00C02025 */ move $a0, $a2 -/* 0D8088 800D7488 00E02825 */ move $a1, $a3 -/* 0D808C 800D748C 8FA70044 */ lw $a3, 0x44($sp) -/* 0D8090 800D7490 0C033ADB */ jal __ll_div -/* 0D8094 800D7494 8FA60040 */ lw $a2, 0x40($sp) -/* 0D8098 800D7498 AFA20020 */ sw $v0, 0x20($sp) -/* 0D809C 800D749C AFA30024 */ sw $v1, 0x24($sp) -/* 0D80A0 800D74A0 8FA40040 */ lw $a0, 0x40($sp) -/* 0D80A4 800D74A4 8FA50044 */ lw $a1, 0x44($sp) -/* 0D80A8 800D74A8 00403025 */ move $a2, $v0 -/* 0D80AC 800D74AC 0C033AF2 */ jal __ll_mul -/* 0D80B0 800D74B0 00603825 */ move $a3, $v1 -/* 0D80B4 800D74B4 8FAE0038 */ lw $t6, 0x38($sp) -/* 0D80B8 800D74B8 8FAF003C */ lw $t7, 0x3c($sp) -/* 0D80BC 800D74BC 8FA80020 */ lw $t0, 0x20($sp) -/* 0D80C0 800D74C0 01C2C023 */ subu $t8, $t6, $v0 -/* 0D80C4 800D74C4 01E3082B */ sltu $at, $t7, $v1 -/* 0D80C8 800D74C8 0301C023 */ subu $t8, $t8, $at -/* 0D80CC 800D74CC 01E3C823 */ subu $t9, $t7, $v1 -/* 0D80D0 800D74D0 AFB9002C */ sw $t9, 0x2c($sp) -/* 0D80D4 800D74D4 AFB80028 */ sw $t8, 0x28($sp) -/* 0D80D8 800D74D8 1D000017 */ bgtz $t0, .L800D7538 -/* 0D80DC 800D74DC 8FA90024 */ lw $t1, 0x24($sp) -/* 0D80E0 800D74E0 05000003 */ bltz $t0, .L800D74F0 -/* 0D80E4 800D74E4 00000000 */ nop -/* 0D80E8 800D74E8 10000014 */ b .L800D753C -/* 0D80EC 800D74EC 27A80020 */ addiu $t0, $sp, 0x20 -.L800D74F0: -/* 0D80F0 800D74F0 07020012 */ bltzl $t8, .L800D753C -/* 0D80F4 800D74F4 27A80020 */ addiu $t0, $sp, 0x20 -/* 0D80F8 800D74F8 1F000003 */ bgtz $t8, .L800D7508 -/* 0D80FC 800D74FC 252B0001 */ addiu $t3, $t1, 1 -/* 0D8100 800D7500 5320000E */ beql $t9, $zero, .L800D753C -/* 0D8104 800D7504 27A80020 */ addiu $t0, $sp, 0x20 -.L800D7508: -/* 0D8108 800D7508 8FAC0040 */ lw $t4, 0x40($sp) -/* 0D810C 800D750C 8FAD0044 */ lw $t5, 0x44($sp) -/* 0D8110 800D7510 2D610001 */ sltiu $at, $t3, 1 -/* 0D8114 800D7514 01015021 */ addu $t2, $t0, $at -/* 0D8118 800D7518 030C7023 */ subu $t6, $t8, $t4 -/* 0D811C 800D751C 032D082B */ sltu $at, $t9, $t5 -/* 0D8120 800D7520 01C17023 */ subu $t6, $t6, $at -/* 0D8124 800D7524 032D7823 */ subu $t7, $t9, $t5 -/* 0D8128 800D7528 AFAA0020 */ sw $t2, 0x20($sp) -/* 0D812C 800D752C AFAB0024 */ sw $t3, 0x24($sp) -/* 0D8130 800D7530 AFAF002C */ sw $t7, 0x2c($sp) -/* 0D8134 800D7534 AFAE0028 */ sw $t6, 0x28($sp) -.L800D7538: -/* 0D8138 800D7538 27A80020 */ addiu $t0, $sp, 0x20 -.L800D753C: -/* 0D813C 800D753C 8FA20030 */ lw $v0, 0x30($sp) -/* 0D8140 800D7540 8D010000 */ lw $at, ($t0) -/* 0D8144 800D7544 AC410000 */ sw $at, ($v0) -/* 0D8148 800D7548 8D0B0004 */ lw $t3, 4($t0) -/* 0D814C 800D754C AC4B0004 */ sw $t3, 4($v0) -/* 0D8150 800D7550 8D010008 */ lw $at, 8($t0) -/* 0D8154 800D7554 AC410008 */ sw $at, 8($v0) -/* 0D8158 800D7558 8D0B000C */ lw $t3, 0xc($t0) -/* 0D815C 800D755C AC4B000C */ sw $t3, 0xc($v0) -/* 0D8160 800D7560 8FBF0014 */ lw $ra, 0x14($sp) -/* 0D8164 800D7564 27BD0030 */ addiu $sp, $sp, 0x30 -/* 0D8168 800D7568 03E00008 */ jr $ra -/* 0D816C 800D756C 00000000 */ nop - -glabel func_800D7570 -/* 0D8170 800D7570 00A6001A */ div $zero, $a1, $a2 -/* 0D8174 800D7574 00001012 */ mflo $v0 -/* 0D8178 800D7578 27BDFFF8 */ addiu $sp, $sp, -8 -/* 0D817C 800D757C 14C00002 */ bnez $a2, .L800D7588 -/* 0D8180 800D7580 00000000 */ nop -/* 0D8184 800D7584 0007000D */ break 7 -.L800D7588: -/* 0D8188 800D7588 2401FFFF */ li $at, -1 -/* 0D818C 800D758C 14C10004 */ bne $a2, $at, .L800D75A0 -/* 0D8190 800D7590 3C018000 */ lui $at, 0x8000 -/* 0D8194 800D7594 14A10002 */ bne $a1, $at, .L800D75A0 -/* 0D8198 800D7598 00000000 */ nop -/* 0D819C 800D759C 0006000D */ break 6 -.L800D75A0: -/* 0D81A0 800D75A0 00C20019 */ multu $a2, $v0 -/* 0D81A4 800D75A4 AFA20000 */ sw $v0, ($sp) -/* 0D81A8 800D75A8 27AF0000 */ addiu $t7, $sp, 0 -/* 0D81AC 800D75AC 00007012 */ mflo $t6 -/* 0D81B0 800D75B0 00AE1823 */ subu $v1, $a1, $t6 -/* 0D81B4 800D75B4 04410008 */ bgez $v0, .L800D75D8 -/* 0D81B8 800D75B8 AFA30004 */ sw $v1, 4($sp) -/* 0D81BC 800D75BC AFA20000 */ sw $v0, ($sp) -/* 0D81C0 800D75C0 18600005 */ blez $v1, .L800D75D8 -/* 0D81C4 800D75C4 AFA30004 */ sw $v1, 4($sp) -/* 0D81C8 800D75C8 24420001 */ addiu $v0, $v0, 1 -/* 0D81CC 800D75CC 00661823 */ subu $v1, $v1, $a2 -/* 0D81D0 800D75D0 AFA30004 */ sw $v1, 4($sp) -/* 0D81D4 800D75D4 AFA20000 */ sw $v0, ($sp) -.L800D75D8: -/* 0D81D8 800D75D8 8DE10000 */ lw $at, ($t7) -/* 0D81DC 800D75DC 00801025 */ move $v0, $a0 -/* 0D81E0 800D75E0 AC810000 */ sw $at, ($a0) -/* 0D81E4 800D75E4 8DE80004 */ lw $t0, 4($t7) -/* 0D81E8 800D75E8 27BD0008 */ addiu $sp, $sp, 8 -/* 0D81EC 800D75EC 03E00008 */ jr $ra -/* 0D81F0 800D75F0 AC880004 */ sw $t0, 4($a0) - -/* 0D81F4 800D75F0 00000000 */ nop -/* 0D81F8 800D75F8 00000000 */ nop -/* 0D81FC 800D75FC 00000000 */ nop diff --git a/src/entrypoint_001000.c b/src/entrypoint_001000.c new file mode 100644 index 00000000..347dd9d8 --- /dev/null +++ b/src/entrypoint_001000.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x80000400 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/entrypoint_001000/EntryPoint.s") diff --git a/src/memcpy_strlen_strchr_0CED70.c b/src/memcpy_strlen_strchr_0CED70.c new file mode 100644 index 00000000..0a606a76 --- /dev/null +++ b/src/memcpy_strlen_strchr_0CED70.c @@ -0,0 +1,9 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800CE170 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/memcpy_strlen_strchr_0CED70/memcpy.s") +GLOBAL_ASM("asm/non_matchings/memcpy_strlen_strchr_0CED70/strlen.s") +GLOBAL_ASM("asm/non_matchings/memcpy_strlen_strchr_0CED70/strchr.s") diff --git a/src/osCreateThread_0C9450.c b/src/osCreateThread_0C9450.c new file mode 100644 index 00000000..dd05e20c --- /dev/null +++ b/src/osCreateThread_0C9450.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C8850 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/osCreateThread_0C9450/osCreateThread.s") diff --git a/src/osEepromRead_0CEE80.c b/src/osEepromRead_0CEE80.c new file mode 100644 index 00000000..4fbbd8fb --- /dev/null +++ b/src/osEepromRead_0CEE80.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800CE280 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/osEepromRead_0CEE80/osEepromRead.s") diff --git a/src/osEepromWrite_0CF180.c b/src/osEepromWrite_0CF180.c new file mode 100644 index 00000000..6a0a0858 --- /dev/null +++ b/src/osEepromWrite_0CF180.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800CE580 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/osEepromWrite_0CF180/osEepromWrite.s") diff --git a/src/osSetEventMsg_0CD7B0.c b/src/osSetEventMsg_0CD7B0.c new file mode 100644 index 00000000..aecc2305 --- /dev/null +++ b/src/osSetEventMsg_0CD7B0.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800CCBB0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/osSetEventMsg_0CD7B0/osSetEventMsg.s") diff --git a/src/osSetTime_0CDE60.c b/src/osSetTime_0CDE60.c new file mode 100644 index 00000000..4c00c7b5 --- /dev/null +++ b/src/osSetTime_0CDE60.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800CD260 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/osSetTime_0CDE60/osSetTime.s") diff --git a/src/osStartThread_0C95A0.c b/src/osStartThread_0C95A0.c new file mode 100644 index 00000000..aaa730cd --- /dev/null +++ b/src/osStartThread_0C95A0.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C89A0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/osStartThread_0C95A0/osStartThread.s") diff --git a/src/osViSetEventMsg_0D2980.c b/src/osViSetEventMsg_0D2980.c new file mode 100644 index 00000000..a167fc7a --- /dev/null +++ b/src/osViSetEventMsg_0D2980.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800D1D80 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/osViSetEventMsg_0D2980/osViSetEventMsg.s") diff --git a/src/unknown_032760.c b/src/unknown_032760.c new file mode 100644 index 00000000..824ec5b9 --- /dev/null +++ b/src/unknown_032760.c @@ -0,0 +1,185 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x80031B60 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80031B60.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80031BB8.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80031CAC.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80031F88.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80032398.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80032424.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80032BAC.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80032C6C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80032C7C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800337E4.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80033A14.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80033C08.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80033CC0.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80033DD0.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80033F44.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80033F60.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80034530.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800345A0.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80034844.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80034860.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80034AF0.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80034B4C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80034B68.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80034B74.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80034E70.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80034E9C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003522C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80035260.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80035640.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003564C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003572C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800357D4.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003588C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003596C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80035AE8.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80035C50.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80035E20.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80035E34.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80035EF8.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80035F6C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80036040.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80036194.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800361E0.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80036BCC.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80036C30.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800370D4.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80037578.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80037594.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80037624.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003763C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800376E0.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800377E4.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80037A18.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80037CE8.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80037D08.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80037D54.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80037D6C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80037D78.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800380F8.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003818C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800381C0.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800381E0.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80038214.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80038248.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003827C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003833C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80038710.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800387CC.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80038854.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800388D4.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800389AC.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800389B8.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80038A6C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80038A78.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80038AC8.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80038AD4.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80038B74.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80038BF4.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80038D58.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80038DC4.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80038E3C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80038F58.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80039160.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80039184.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80039190.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800391BC.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800391C8.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800391FC.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800392B8.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80039320.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80039330.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003AC3C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003ACA0.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003ACAC.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003ACBC.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003AD28.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003AD34.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003AE50.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003B058.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003B174.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003B368.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003B4BC.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003B7CC.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003B988.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003C1E0.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003C2E4.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003C644.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003C7A4.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003C9EC.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003CA68.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003CE64.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003CEA0.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003CF00.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003CF0C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003CF18.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003CF58.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003CF98.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003CFE0.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003D02C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003D038.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003D058.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003D2AC.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003D2B8.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003D3EC.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003D3FC.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003D534.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003D5A0.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003DBA0.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003DC5C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003DD14.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003DE74.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003DF08.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003DFCC.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003E140.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003E5B0.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003E5BC.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003E5C8.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003E630.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003E694.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003EC14.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003EDD8.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003F0D0.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003F0DC.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003F0F8.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003F2E8.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003FC44.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003FD68.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8003FEF4.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8004001C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800400A4.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80040148.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800403A8.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800403D8.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80040448.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8004049C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80040570.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80040800.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80040820.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8004092C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8004094C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800409A4.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800409C8.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80040C54.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80041A90.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80041E80.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80042014.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8004203C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80042090.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8004210C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80042150.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80042160.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_8004216C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80042178.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80042210.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_800422F0.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80042998.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80042A1C.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80042A90.s") +GLOBAL_ASM("asm/non_matchings/unknown_032760/func_80042CD0.s") diff --git a/src/unknown_043920.c b/src/unknown_043920.c new file mode 100644 index 00000000..063f1b52 --- /dev/null +++ b/src/unknown_043920.c @@ -0,0 +1,89 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x80042D20 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80042D20.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80043ECC.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80044170.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80044450.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8004447C.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80045128.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_800452A0.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80045C48.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80046524.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80048C7C.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80048E64.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_800494E0.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80049794.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8004C0A0.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8004C140.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8004C2B0.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8004CC20.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8004D590.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8004D95C.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8004DAB0.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8004DE38.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8004F77C.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8004F7F4.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80050754.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80050850.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80050A28.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80052188.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_800521B8.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_800521C4.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8005234C.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80052388.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8005250C.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80052988.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80052B64.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80052D7C.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80053478.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_800535C4.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80053664.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80053750.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80053E9C.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80054110.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8005492C.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80054FD0.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80055A84.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80055EC0.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80056930.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8005698C.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80056E2C.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80057048.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_800570A4.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_800570B8.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80057220.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_800575EC.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_800576E0.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_800579B0.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80057A40.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_800580B4.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_800581E8.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80058B84.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80058D5C.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80058F44.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80059080.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80059208.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80059790.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_800598D0.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80059944.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80059984.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_800599A8.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_800599B8.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80059A68.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80059B4C.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80059B7C.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80059BF0.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80059E20.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_80059E40.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8005A3B0.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8005A3C0.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8005A3D0.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8005A424.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8005A6F0.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8005B818.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8005C25C.s") +GLOBAL_ASM("asm/non_matchings/unknown_043920/func_8005C270.s") diff --git a/src/unknown_05CEF0.c b/src/unknown_05CEF0.c new file mode 100644 index 00000000..eb94431f --- /dev/null +++ b/src/unknown_05CEF0.c @@ -0,0 +1,13 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x8005C2F0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_05CEF0/func_8005C2F0.s") +GLOBAL_ASM("asm/non_matchings/unknown_05CEF0/func_8005C364.s") +GLOBAL_ASM("asm/non_matchings/unknown_05CEF0/func_8005CA78.s") +GLOBAL_ASM("asm/non_matchings/unknown_05CEF0/func_8005CA84.s") +GLOBAL_ASM("asm/non_matchings/unknown_05CEF0/func_8005CB04.s") +GLOBAL_ASM("asm/non_matchings/unknown_05CEF0/func_8005CB68.s") +GLOBAL_ASM("asm/non_matchings/unknown_05CEF0/func_8005D048.s") diff --git a/src/unknown_05DCD0.c b/src/unknown_05DCD0.c new file mode 100644 index 00000000..46f8e22d --- /dev/null +++ b/src/unknown_05DCD0.c @@ -0,0 +1,9 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x8005D0D0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_05DCD0/func_8005D0D0.s") +GLOBAL_ASM("asm/non_matchings/unknown_05DCD0/func_8005D820.s") +GLOBAL_ASM("asm/non_matchings/unknown_05DCD0/func_8005E204.s") diff --git a/src/unknown_05F0C0.c b/src/unknown_05F0C0.c new file mode 100644 index 00000000..3fbb6520 --- /dev/null +++ b/src/unknown_05F0C0.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x8005E4C0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_05F0C0/func_8005E4C0.s") diff --git a/src/unknown_05F690.c b/src/unknown_05F690.c new file mode 100644 index 00000000..31674e10 --- /dev/null +++ b/src/unknown_05F690.c @@ -0,0 +1,21 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x8005EA90 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_05F690/func_8005EA90.s") +GLOBAL_ASM("asm/non_matchings/unknown_05F690/func_8005F310.s") +GLOBAL_ASM("asm/non_matchings/unknown_05F690/func_8005F850.s") +GLOBAL_ASM("asm/non_matchings/unknown_05F690/func_8005F99C.s") +GLOBAL_ASM("asm/non_matchings/unknown_05F690/func_8005FCD0.s") +GLOBAL_ASM("asm/non_matchings/unknown_05F690/func_8005FF40.s") +GLOBAL_ASM("asm/non_matchings/unknown_05F690/func_80060058.s") +GLOBAL_ASM("asm/non_matchings/unknown_05F690/func_8006017C.s") +GLOBAL_ASM("asm/non_matchings/unknown_05F690/func_80060910.s") +GLOBAL_ASM("asm/non_matchings/unknown_05F690/func_80060AC8.s") +GLOBAL_ASM("asm/non_matchings/unknown_05F690/func_80060C58.s") +GLOBAL_ASM("asm/non_matchings/unknown_05F690/func_80060EA8.s") +GLOBAL_ASM("asm/non_matchings/unknown_05F690/func_800619F4.s") +GLOBAL_ASM("asm/non_matchings/unknown_05F690/func_80061A00.s") +GLOBAL_ASM("asm/non_matchings/unknown_05F690/func_80061C0C.s") diff --git a/src/unknown_061D30.c b/src/unknown_061D30.c new file mode 100644 index 00000000..74a05702 --- /dev/null +++ b/src/unknown_061D30.c @@ -0,0 +1,15 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x80061D30 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_061D30/func_80061D30.s") +GLOBAL_ASM("asm/non_matchings/unknown_061D30/func_80062290.s") +GLOBAL_ASM("asm/non_matchings/unknown_061D30/D_80062408.s") +GLOBAL_ASM("asm/non_matchings/unknown_061D30/func_800629CC.s") +GLOBAL_ASM("asm/non_matchings/unknown_061D30/func_80062A3C.s") +GLOBAL_ASM("asm/non_matchings/unknown_061D30/func_80062B00.s") +GLOBAL_ASM("asm/non_matchings/unknown_061D30/func_800637EC.s") +GLOBAL_ASM("asm/non_matchings/unknown_061D30/func_80063984.s") +GLOBAL_ASM("asm/non_matchings/unknown_061D30/func_80063A34.s") diff --git a/src/unknown_064690.c b/src/unknown_064690.c new file mode 100644 index 00000000..f22d14d1 --- /dev/null +++ b/src/unknown_064690.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x80063A90 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_064690/func_80063A90.s") diff --git a/src/unknown_0646F0.c b/src/unknown_0646F0.c new file mode 100644 index 00000000..f3a41dc8 --- /dev/null +++ b/src/unknown_0646F0.c @@ -0,0 +1,8 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x80063AF0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0646F0/func_80063AF0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0646F0/func_80063B44.s") diff --git a/src/unknown_0647A0.c b/src/unknown_0647A0.c new file mode 100644 index 00000000..a4977dce --- /dev/null +++ b/src/unknown_0647A0.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x80063BA0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0647A0/func_80063BA0.s") diff --git a/src/unknown_064800.c b/src/unknown_064800.c new file mode 100644 index 00000000..2bf8bcb5 --- /dev/null +++ b/src/unknown_064800.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x80063C00 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_064800/func_80063C00.s") diff --git a/src/unknown_064830.c b/src/unknown_064830.c new file mode 100644 index 00000000..c0e606b2 --- /dev/null +++ b/src/unknown_064830.c @@ -0,0 +1,23 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x80063C30 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_064830/D_80063C30.s") +GLOBAL_ASM("asm/non_matchings/unknown_064830/D_80063F94.s") +GLOBAL_ASM("asm/non_matchings/unknown_064830/D_80063FAC.s") +GLOBAL_ASM("asm/non_matchings/unknown_064830/func_80064224.s") +GLOBAL_ASM("asm/non_matchings/unknown_064830/func_800644A0.s") +GLOBAL_ASM("asm/non_matchings/unknown_064830/func_80064638.s") +GLOBAL_ASM("asm/non_matchings/unknown_064830/func_800647D0.s") +GLOBAL_ASM("asm/non_matchings/unknown_064830/func_80064884.s") +GLOBAL_ASM("asm/non_matchings/unknown_064830/func_8006492C.s") +GLOBAL_ASM("asm/non_matchings/unknown_064830/func_80064950.s") +GLOBAL_ASM("asm/non_matchings/unknown_064830/func_80064A08.s") +GLOBAL_ASM("asm/non_matchings/unknown_064830/func_80064E54.s") +GLOBAL_ASM("asm/non_matchings/unknown_064830/func_80064EF8.s") +GLOBAL_ASM("asm/non_matchings/unknown_064830/func_80064F9C.s") +GLOBAL_ASM("asm/non_matchings/unknown_064830/func_80065024.s") +GLOBAL_ASM("asm/non_matchings/unknown_064830/func_80065084.s") +GLOBAL_ASM("asm/non_matchings/unknown_064830/func_800650E4.s") diff --git a/src/unknown_065D30.c b/src/unknown_065D30.c new file mode 100644 index 00000000..01da4c60 --- /dev/null +++ b/src/unknown_065D30.c @@ -0,0 +1,15 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x80065130 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_065D30/func_80065130.s") +GLOBAL_ASM("asm/non_matchings/unknown_065D30/func_80065494.s") +GLOBAL_ASM("asm/non_matchings/unknown_065D30/func_80065668.s") +GLOBAL_ASM("asm/non_matchings/unknown_065D30/func_8006569C.s") +GLOBAL_ASM("asm/non_matchings/unknown_065D30/func_800656BC.s") +GLOBAL_ASM("asm/non_matchings/unknown_065D30/func_8006571C.s") +GLOBAL_ASM("asm/non_matchings/unknown_065D30/func_80065754.s") +GLOBAL_ASM("asm/non_matchings/unknown_065D30/func_800657C4.s") +GLOBAL_ASM("asm/non_matchings/unknown_065D30/func_800657EC.s") diff --git a/src/unknown_066460.c b/src/unknown_066460.c new file mode 100644 index 00000000..953fc8d4 --- /dev/null +++ b/src/unknown_066460.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x80065860 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_066460/func_80065860.s") diff --git a/src/unknown_066500.c b/src/unknown_066500.c new file mode 100644 index 00000000..301293cd --- /dev/null +++ b/src/unknown_066500.c @@ -0,0 +1,10 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x80065900 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_066500/D_80065900.s") +GLOBAL_ASM("asm/non_matchings/unknown_066500/D_800659D4.s") +GLOBAL_ASM("asm/non_matchings/unknown_066500/func_80065A80.s") +GLOBAL_ASM("asm/non_matchings/unknown_066500/func_80065B20.s") diff --git a/src/unknown_071730.c b/src/unknown_071730.c new file mode 100644 index 00000000..48268338 --- /dev/null +++ b/src/unknown_071730.c @@ -0,0 +1,30 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x80070B30 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_80070B30.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_80070B78.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_80070BE4.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_80070C9C.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_80070D10.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_80070D3C.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_80070E90.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_80070EF8.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_800710B0.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_80071140.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_80071198.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_80071278.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_80071440.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_80071478.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_80071538.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_800715EC.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_8007164C.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_8007178C.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_80071850.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_80071A24.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_80071D30.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_80071E58.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_80071F80.s") +GLOBAL_ASM("asm/non_matchings/unknown_071730/func_800720DC.s") diff --git a/src/unknown_072E50.c b/src/unknown_072E50.c new file mode 100644 index 00000000..dc1e0688 --- /dev/null +++ b/src/unknown_072E50.c @@ -0,0 +1,65 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x80072250 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80072250.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80072298.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80072348.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80072424.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80072578.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80072708.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80072718.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80072C54.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80072E28.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_8007306C.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_800732E8.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80073588.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_800738A4.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80073C4C.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80073C54.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80073C5C.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80073E1C.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80073F5C.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80074018.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80074148.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80074204.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_8007431C.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_800744DC.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_800745D0.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_800746F0.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_8007480C.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80074874.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_8007497C.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80074A4C.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80074AA8.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80074B1C.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80074B34.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80074EB8.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80075000.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_800753D8.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_800756D4.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_800758DC.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80075AEC.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80075B18.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80075D38.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80075DC4.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80075E60.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80076164.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80076194.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_800762C8.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80076388.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_800764E8.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80076610.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_800766D4.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80076924.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_8007698C.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80076A38.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80076AF4.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80076BA0.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80076C58.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80076E68.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80076EE8.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80076F30.s") +GLOBAL_ASM("asm/non_matchings/unknown_072E50/func_80076F78.s") diff --git a/src/unknown_077C50.c b/src/unknown_077C50.c new file mode 100644 index 00000000..50b56e17 --- /dev/null +++ b/src/unknown_077C50.c @@ -0,0 +1,8 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x80077050 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_077C50/func_80077050.s") +GLOBAL_ASM("asm/non_matchings/unknown_077C50/func_80077268.s") diff --git a/src/unknown_078050.c b/src/unknown_078050.c new file mode 100644 index 00000000..4c3fff8b --- /dev/null +++ b/src/unknown_078050.c @@ -0,0 +1,20 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x80077450 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_078050/setupOSTasks.s") +GLOBAL_ASM("asm/non_matchings/unknown_078050/func_80077A54.s") +GLOBAL_ASM("asm/non_matchings/unknown_078050/func_80077B34.s") +GLOBAL_ASM("asm/non_matchings/unknown_078050/func_80077B5C.s") +GLOBAL_ASM("asm/non_matchings/unknown_078050/func_80077B9C.s") +GLOBAL_ASM("asm/non_matchings/unknown_078050/func_80078054.s") +GLOBAL_ASM("asm/non_matchings/unknown_078050/func_800780DC.s") +GLOBAL_ASM("asm/non_matchings/unknown_078050/func_80078100.s") +GLOBAL_ASM("asm/non_matchings/unknown_078050/func_80078170.s") +GLOBAL_ASM("asm/non_matchings/unknown_078050/func_80078190.s") +GLOBAL_ASM("asm/non_matchings/unknown_078050/func_800787FC.s") +GLOBAL_ASM("asm/non_matchings/unknown_078050/func_80078AAC.s") +GLOBAL_ASM("asm/non_matchings/unknown_078050/func_80078AB8.s") +GLOBAL_ASM("asm/non_matchings/unknown_078050/func_80078D00.s") diff --git a/src/unknown_079F50.c b/src/unknown_079F50.c new file mode 100644 index 00000000..3583a059 --- /dev/null +++ b/src/unknown_079F50.c @@ -0,0 +1,22 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x80079350 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_079F50/func_80079350.s") +GLOBAL_ASM("asm/non_matchings/unknown_079F50/func_80079480.s") +GLOBAL_ASM("asm/non_matchings/unknown_079F50/func_80079574.s") +GLOBAL_ASM("asm/non_matchings/unknown_079F50/func_8007957C.s") +GLOBAL_ASM("asm/non_matchings/unknown_079F50/D_800795AC.s") +GLOBAL_ASM("asm/non_matchings/unknown_079F50/func_80079760.s") +GLOBAL_ASM("asm/non_matchings/unknown_079F50/func_80079818.s") +GLOBAL_ASM("asm/non_matchings/unknown_079F50/func_80079B44.s") +GLOBAL_ASM("asm/non_matchings/unknown_079F50/func_80079D5C.s") +GLOBAL_ASM("asm/non_matchings/unknown_079F50/func_80079DE8.s") +GLOBAL_ASM("asm/non_matchings/unknown_079F50/func_80079E40.s") +GLOBAL_ASM("asm/non_matchings/unknown_079F50/func_80079F40.s") +GLOBAL_ASM("asm/non_matchings/unknown_079F50/func_80079FA8.s") +GLOBAL_ASM("asm/non_matchings/unknown_079F50/func_8007A080.s") +GLOBAL_ASM("asm/non_matchings/unknown_079F50/func_8007A0D4.s") +GLOBAL_ASM("asm/non_matchings/unknown_079F50/func_8007A2D0.s") diff --git a/src/unknown_07AF10.c b/src/unknown_07AF10.c new file mode 100644 index 00000000..d6250047 --- /dev/null +++ b/src/unknown_07AF10.c @@ -0,0 +1,16 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x8007A310 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_07AF10/func_8007A310.s") +GLOBAL_ASM("asm/non_matchings/unknown_07AF10/func_8007A4C0.s") +GLOBAL_ASM("asm/non_matchings/unknown_07AF10/func_8007A520.s") +GLOBAL_ASM("asm/non_matchings/unknown_07AF10/func_8007A550.s") +GLOBAL_ASM("asm/non_matchings/unknown_07AF10/func_8007A7E8.s") +GLOBAL_ASM("asm/non_matchings/unknown_07AF10/func_8007A974.s") +GLOBAL_ASM("asm/non_matchings/unknown_07AF10/func_8007A98C.s") +GLOBAL_ASM("asm/non_matchings/unknown_07AF10/func_8007AB24.s") +GLOBAL_ASM("asm/non_matchings/unknown_07AF10/func_8007AB9C.s") +GLOBAL_ASM("asm/non_matchings/unknown_07AF10/func_8007ABFC.s") diff --git a/src/unknown_07B870.c b/src/unknown_07B870.c new file mode 100644 index 00000000..9e5fdc1b --- /dev/null +++ b/src/unknown_07B870.c @@ -0,0 +1,35 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x8007AC70 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007AC70.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007AE0C.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007AE28.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007AE74.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007B2BC.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007B374.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007B3D0.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007B43C.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007B454.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007B46C.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007B4C8.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007B4E8.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007BA5C.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007BF1C.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007BF34.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007C12C.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007C57C.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007C8E0.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007CA68.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007CCB0.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007CDC0.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007D0F4.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007EF64.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007EF80.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007F1E8.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007F24C.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007F414.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007F460.s") +GLOBAL_ASM("asm/non_matchings/unknown_07B870/func_8007F594.s") diff --git a/src/unknown_080240.c b/src/unknown_080240.c new file mode 100644 index 00000000..f39230a4 --- /dev/null +++ b/src/unknown_080240.c @@ -0,0 +1,8 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x8007F640 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_080240/func_8007F640.s") +GLOBAL_ASM("asm/non_matchings/unknown_080240/func_8007F714.s") diff --git a/src/unknown_09F8F0.c b/src/unknown_09F8F0.c new file mode 100644 index 00000000..10a086d5 --- /dev/null +++ b/src/unknown_09F8F0.c @@ -0,0 +1,82 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x8009ECF0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_8009ECF0.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_8009F034.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A003C.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A0190.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A01A0.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A0B74.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A0BD4.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A0DC0.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A0EB4.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A1248.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A1428.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A14F0.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A19A4.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A1C04.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A1E48.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A22F4.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A258C.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A263C.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A26C8.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A277C.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A36CC.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A3870.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A3884.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A3CE4.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A4154.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A45F0.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A47A0.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A497C.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A4C44.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A4F50.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A5A64.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A5F18.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A6254.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A6DB4.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A6E30.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A718C.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A7484.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A74EC.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A7520.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A7A60.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A7B68.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A7FBC.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A83B4.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A8458.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800A8474.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AA3EC.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AA600.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AAFD0.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AB194.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AB1AC.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AB1D4.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AB1F0.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AB308.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AB35C.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AB4A8.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800ABB34.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800ABC5C.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800ABE68.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AC0C8.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AC21C.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AC5A4.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AC880.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AC8A8.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800ACA20.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800ACF60.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800ACF98.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AD030.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AD144.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AD220.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AD2C4.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AD40C.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AD4B8.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800AD658.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800ADAB8.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800ADBC8.s") +GLOBAL_ASM("asm/non_matchings/unknown_09F8F0/func_800ADCBC.s") diff --git a/src/unknown_0B8920.c b/src/unknown_0B8920.c new file mode 100644 index 00000000..6f7bdef6 --- /dev/null +++ b/src/unknown_0B8920.c @@ -0,0 +1,111 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800B7D20 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800B7D20.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800B7EB4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800B8134.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800B82B4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800B8B8C.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800B8C04.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800B9228.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800B92F4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800B97A8.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800B9C18.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800BA288.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800BA4B8.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800BA8E4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800BB2F4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800BBDDC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800BBE08.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800BBF78.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800BC6C8.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800BCC70.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800BDC80.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800BE654.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800BEEB4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800BEFC4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800BF3E4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800BF524.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800BF634.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800BFE98.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800BFFDC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C0170.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C0180.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C018C.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C01D8.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C0494.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C05C8.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C0724.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C0780.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C0834.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C0A08.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C0B00.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C1130.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C13E4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C14DC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C15D4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C1EE8.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C2274.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C23F8.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C2548.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C2640.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C27A0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C28E8.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C29F0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C2AB4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C2AF4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C2B00.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C2D6C.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C2F1C.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C3048.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C30CC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C3140.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C314C.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C3158.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C31EC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C3400.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C3440.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C3564.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C38B4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C3C00.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C4164.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C4170.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C422C.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C42EC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C4384.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C43CC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C4440.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C45A4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C4DA0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C4EDC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C4F7C.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C4FBC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C5000.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C5050.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C5168.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C5494.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C55F4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C5620.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C56D0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C56FC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C580C.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C5AA0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C5B58.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C5F60.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C6000.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C6170.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C61AC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C61DC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C6218.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C6274.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C68C0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C69AC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C69C4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C6B90.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C6DDC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C6F34.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C7040.s") +GLOBAL_ASM("asm/non_matchings/unknown_0B8920/func_800C7090.s") diff --git a/src/unknown_0C7F40.c b/src/unknown_0C7F40.c new file mode 100644 index 00000000..6ce17ce2 --- /dev/null +++ b/src/unknown_0C7F40.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C7340 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C7F40/D_800C7340.s") diff --git a/src/unknown_0C7F50.c b/src/unknown_0C7F50.c new file mode 100644 index 00000000..17f09f81 --- /dev/null +++ b/src/unknown_0C7F50.c @@ -0,0 +1,12 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C7350 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C7F50/func_800C7350.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C7F50/func_800C73BC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C7F50/func_800C73E0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C7F50/func_800C73F0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C7F50/func_800C7458.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C7F50/D_800C74A0.s") diff --git a/src/unknown_0C8160.c b/src/unknown_0C8160.c new file mode 100644 index 00000000..35076021 --- /dev/null +++ b/src/unknown_0C8160.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C7560 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C8160/func_800C7560.s") diff --git a/src/unknown_0C81A0.c b/src/unknown_0C81A0.c new file mode 100644 index 00000000..dd4926b9 --- /dev/null +++ b/src/unknown_0C81A0.c @@ -0,0 +1,12 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C75A0 */ + +#include "types.h" +#include "macros.h" + +void dummy_800C75A0(void) {} +void dummy_800C75A8(void) {} + +GLOBAL_ASM("asm/non_matchings/unknown_0C81A0/func_800C75B0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C81A0/func_800C76A4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C81A0/func_800C77A8.s") diff --git a/src/unknown_0C83F0.c b/src/unknown_0C83F0.c new file mode 100644 index 00000000..8c75cb09 --- /dev/null +++ b/src/unknown_0C83F0.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C77F0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C83F0/func_800C77F0.s") diff --git a/src/unknown_0C8450.c b/src/unknown_0C8450.c new file mode 100644 index 00000000..5fb0d0a5 --- /dev/null +++ b/src/unknown_0C8450.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C7850 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C8450/func_800C7850.s") diff --git a/src/unknown_0C8490.c b/src/unknown_0C8490.c new file mode 100644 index 00000000..9100f3e5 --- /dev/null +++ b/src/unknown_0C8490.c @@ -0,0 +1,8 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C7890 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C8490/func_800C7890.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C8490/func_800C78D0.s") diff --git a/src/unknown_0C84E0.c b/src/unknown_0C84E0.c new file mode 100644 index 00000000..67fcdaa8 --- /dev/null +++ b/src/unknown_0C84E0.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C78E0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C84E0/func_800C78E0.s") diff --git a/src/unknown_0C8540.c b/src/unknown_0C8540.c new file mode 100644 index 00000000..9033affe --- /dev/null +++ b/src/unknown_0C8540.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C7940 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C8540/func_800C7940.s") diff --git a/src/unknown_0C85A0.c b/src/unknown_0C85A0.c new file mode 100644 index 00000000..6f4a6f05 --- /dev/null +++ b/src/unknown_0C85A0.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C79A0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C85A0/func_800C79A0.s") diff --git a/src/unknown_0C85C0.c b/src/unknown_0C85C0.c new file mode 100644 index 00000000..e55dbf48 --- /dev/null +++ b/src/unknown_0C85C0.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C79C0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C85C0/func_800C79C0.s") diff --git a/src/unknown_0C85E0.c b/src/unknown_0C85E0.c new file mode 100644 index 00000000..cfc85456 --- /dev/null +++ b/src/unknown_0C85E0.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C79E0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C85E0/func_800C79E0.s") diff --git a/src/unknown_0C8650.c b/src/unknown_0C8650.c new file mode 100644 index 00000000..ed3bc93a --- /dev/null +++ b/src/unknown_0C8650.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C7A50 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C8650/func_800C7A50.s") diff --git a/src/unknown_0C8660.c b/src/unknown_0C8660.c new file mode 100644 index 00000000..62649a45 --- /dev/null +++ b/src/unknown_0C8660.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C7A60 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C8660/func_800C7A60.s") diff --git a/src/unknown_0C86A0.c b/src/unknown_0C86A0.c new file mode 100644 index 00000000..2872c710 --- /dev/null +++ b/src/unknown_0C86A0.c @@ -0,0 +1,13 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C7AA0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C86A0/func_800C7AA0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C86A0/func_800C7B40.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C86A0/func_800C7BE0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C86A0/func_800C7CA4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C86A0/func_800C7D04.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C86A0/func_800C7FFC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C86A0/func_800C83EC.s") diff --git a/src/unknown_0C9160.c b/src/unknown_0C9160.c new file mode 100644 index 00000000..63b83cd8 --- /dev/null +++ b/src/unknown_0C9160.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C8560 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C9160/func_800C8560.s") diff --git a/src/unknown_0C91A0.c b/src/unknown_0C91A0.c new file mode 100644 index 00000000..38d430af --- /dev/null +++ b/src/unknown_0C91A0.c @@ -0,0 +1,14 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C85A0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C91A0/func_800C85A0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C91A0/func_800C85D0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C91A0/func_800C8600.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C91A0/func_800C8760.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C91A0/func_800C8790.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C91A0/func_800C87B4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C91A0/func_800C87EC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C91A0/osCreateMesgQueue.s") diff --git a/src/unknown_0C96F0.c b/src/unknown_0C96F0.c new file mode 100644 index 00000000..7d0743c4 --- /dev/null +++ b/src/unknown_0C96F0.c @@ -0,0 +1,8 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C8AF0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C96F0/func_800C8AF0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C96F0/osRecvMesg.s") diff --git a/src/unknown_0C98F0.c b/src/unknown_0C98F0.c new file mode 100644 index 00000000..8eea984b --- /dev/null +++ b/src/unknown_0C98F0.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C8CF0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C98F0/func_800C8CF0.s") diff --git a/src/unknown_0C9970.c b/src/unknown_0C9970.c new file mode 100644 index 00000000..f161b8a1 --- /dev/null +++ b/src/unknown_0C9970.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C8D70 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C9970/func_800C8D70.s") diff --git a/src/unknown_0C9A20.c b/src/unknown_0C9A20.c new file mode 100644 index 00000000..57753631 --- /dev/null +++ b/src/unknown_0C9A20.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C8E20 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C9A20/func_800C8E20.s") diff --git a/src/unknown_0C9A30.c b/src/unknown_0C9A30.c new file mode 100644 index 00000000..bab3a1ac --- /dev/null +++ b/src/unknown_0C9A30.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C8E30 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C9A30/func_800C8E30.s") diff --git a/src/unknown_0C9B80.c b/src/unknown_0C9B80.c new file mode 100644 index 00000000..4b83e79a --- /dev/null +++ b/src/unknown_0C9B80.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C8F80 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C9B80/func_800C8F80.s") diff --git a/src/unknown_0C9C90.c b/src/unknown_0C9C90.c new file mode 100644 index 00000000..25f9e0de --- /dev/null +++ b/src/unknown_0C9C90.c @@ -0,0 +1,13 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C9090 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0C9C90/func_800C9090.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C9C90/func_800C91AC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C9C90/func_800C92D0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C9C90/func_800C935C.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C9C90/func_800C93D0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C9C90/func_800C9420.s") +GLOBAL_ASM("asm/non_matchings/unknown_0C9C90/func_800C9508.s") diff --git a/src/unknown_0CA250.c b/src/unknown_0CA250.c new file mode 100644 index 00000000..262e8ddf --- /dev/null +++ b/src/unknown_0CA250.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C9650 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CA250/func_800C9650.s") diff --git a/src/unknown_0CA2F0.c b/src/unknown_0CA2F0.c new file mode 100644 index 00000000..4e85c566 --- /dev/null +++ b/src/unknown_0CA2F0.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C96F0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CA2F0/func_800C96F0.s") diff --git a/src/unknown_0CA380.c b/src/unknown_0CA380.c new file mode 100644 index 00000000..dfea8e9e --- /dev/null +++ b/src/unknown_0CA380.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C9780 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CA380/func_800C9780.s") diff --git a/src/unknown_0CA410.c b/src/unknown_0CA410.c new file mode 100644 index 00000000..d6e98280 --- /dev/null +++ b/src/unknown_0CA410.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C9810 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CA410/func_800C9810.s") diff --git a/src/unknown_0CA4B0.c b/src/unknown_0CA4B0.c new file mode 100644 index 00000000..ed2dbdc4 --- /dev/null +++ b/src/unknown_0CA4B0.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C98B0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CA4B0/func_800C98B0.s") diff --git a/src/unknown_0CA530.c b/src/unknown_0CA530.c new file mode 100644 index 00000000..3bf383b4 --- /dev/null +++ b/src/unknown_0CA530.c @@ -0,0 +1,10 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C9930 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CA530/func_800C9930.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CA530/func_800C99E0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CA530/func_800C9A30.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CA530/sqrtf.s") diff --git a/src/unknown_0CA6E0.c b/src/unknown_0CA6E0.c new file mode 100644 index 00000000..e0d228fa --- /dev/null +++ b/src/unknown_0CA6E0.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C9AE0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CA6E0/func_800C9AE0.s") diff --git a/src/unknown_0CA730.c b/src/unknown_0CA730.c new file mode 100644 index 00000000..20575f32 --- /dev/null +++ b/src/unknown_0CA730.c @@ -0,0 +1,9 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C9B30 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CA730/func_800C9B30.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CA730/func_800C9B4C.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CA730/func_800C9CBC.s") diff --git a/src/unknown_0CA940.c b/src/unknown_0CA940.c new file mode 100644 index 00000000..2035ef3b --- /dev/null +++ b/src/unknown_0CA940.c @@ -0,0 +1,8 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C9D40 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CA940/D_800C9D40.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CA940/func_800C9D54.s") diff --git a/src/unknown_0CA9A0.c b/src/unknown_0CA9A0.c new file mode 100644 index 00000000..75e27316 --- /dev/null +++ b/src/unknown_0CA9A0.c @@ -0,0 +1,19 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800C9DA0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CA9A0/bcopy.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CA9A0/func_800CA0B0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CA9A0/D_800CA0D0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CA9A0/D_800CAA7C.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CA9A0/func_800CAC5C.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CA9A0/func_800CB2D4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CA9A0/func_800CB498.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CA9A0/D_800CB540.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CA9A0/D_800CB714.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CA9A0/func_800CBAC0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CA9A0/D_800CBBEC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CA9A0/D_800CC090.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CA9A0/D_800CC17C.s") diff --git a/src/unknown_0CCF90.c b/src/unknown_0CCF90.c new file mode 100644 index 00000000..58f44d3c --- /dev/null +++ b/src/unknown_0CCF90.c @@ -0,0 +1,13 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800CC390 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CCF90/D_800CC390.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CCF90/D_800CC3C0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CCF90/D_800CC4E0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CCF90/D_800CC514.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CCF90/func_800CC5A0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CCF90/func_800CC840.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CCF90/func_800CC920.s") diff --git a/src/unknown_0CD820.c b/src/unknown_0CD820.c new file mode 100644 index 00000000..c7ca3c89 --- /dev/null +++ b/src/unknown_0CD820.c @@ -0,0 +1,12 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800CCC20 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CD820/func_800CCC20.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CD820/func_800CCE18.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CD820/func_800CCEE8.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CD820/func_800CCFE0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CD820/func_800CD0A4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CD820/func_800CD14C.s") diff --git a/src/unknown_0CDE40.c b/src/unknown_0CDE40.c new file mode 100644 index 00000000..fea9adc9 --- /dev/null +++ b/src/unknown_0CDE40.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800CD240 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CDE40/func_800CD240.s") diff --git a/src/unknown_0CDE50.c b/src/unknown_0CDE50.c new file mode 100644 index 00000000..2bdc9379 --- /dev/null +++ b/src/unknown_0CDE50.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800CD250 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CDE50/func_800CD250.s") diff --git a/src/unknown_0CDE90.c b/src/unknown_0CDE90.c new file mode 100644 index 00000000..f714179f --- /dev/null +++ b/src/unknown_0CDE90.c @@ -0,0 +1,9 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800CD290 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CDE90/func_800CD290.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CDE90/func_800CD430.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CDE90/func_800CD52C.s") diff --git a/src/unknown_0CE200.c b/src/unknown_0CE200.c new file mode 100644 index 00000000..14ad8254 --- /dev/null +++ b/src/unknown_0CE200.c @@ -0,0 +1,10 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800CD600 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CE200/func_800CD600.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CE200/func_800CD650.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CE200/func_800CD694.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CE200/func_800CD6C0.s") diff --git a/src/unknown_0CE370.c b/src/unknown_0CE370.c new file mode 100644 index 00000000..4b4c373c --- /dev/null +++ b/src/unknown_0CE370.c @@ -0,0 +1,10 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800CD770 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CE370/func_800CD770.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CE370/func_800CD820.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CE370/func_800CD8F0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CE370/func_800CDB20.s") diff --git a/src/unknown_0CE8A0.c b/src/unknown_0CE8A0.c new file mode 100644 index 00000000..3925323e --- /dev/null +++ b/src/unknown_0CE8A0.c @@ -0,0 +1,8 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800CDCA0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CE8A0/func_800CDCA0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CE8A0/func_800CDEE4.s") diff --git a/src/unknown_0CEC50.c b/src/unknown_0CEC50.c new file mode 100644 index 00000000..fb6d8dae --- /dev/null +++ b/src/unknown_0CEC50.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800CE050 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CEC50/func_800CE050.s") diff --git a/src/unknown_0CEE10.c b/src/unknown_0CEE10.c new file mode 100644 index 00000000..f59da60d --- /dev/null +++ b/src/unknown_0CEE10.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800CE210 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CEE10/func_800CE210.s") diff --git a/src/unknown_0CF070.c b/src/unknown_0CF070.c new file mode 100644 index 00000000..406a82fa --- /dev/null +++ b/src/unknown_0CF070.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800CE470 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CF070/func_800CE470.s") diff --git a/src/unknown_0CF330.c b/src/unknown_0CF330.c new file mode 100644 index 00000000..d2f419c5 --- /dev/null +++ b/src/unknown_0CF330.c @@ -0,0 +1,19 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800CE730 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CF330/func_800CE730.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CF330/func_800CE83C.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CF330/__ull_rshift.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CF330/__ull_rem.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CF330/__ull_div.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CF330/__ll_lshift.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CF330/__ll_div.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CF330/__ll_mul.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CF330/__ull_divremi.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CF330/func_800CED20.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CF330/func_800CEDD4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CF330/func_800CEEE0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0CF330/func_800CEFDC.s") diff --git a/src/unknown_0CFFE0.c b/src/unknown_0CFFE0.c new file mode 100644 index 00000000..54bb02d3 --- /dev/null +++ b/src/unknown_0CFFE0.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800CF3E0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0CFFE0/func_800CF3E0.s") diff --git a/src/unknown_0D0130.c b/src/unknown_0D0130.c new file mode 100644 index 00000000..8c0619f4 --- /dev/null +++ b/src/unknown_0D0130.c @@ -0,0 +1,11 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800CF530 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0D0130/func_800CF530.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D0130/func_800CFBF4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D0130/func_800CFDA8.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D0130/func_800CFF90.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D0130/func_800D0390.s") diff --git a/src/unknown_0D10E0.c b/src/unknown_0D10E0.c new file mode 100644 index 00000000..698ef2d5 --- /dev/null +++ b/src/unknown_0D10E0.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800D04E0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0D10E0/func_800D04E0.s") diff --git a/src/unknown_0D1180.c b/src/unknown_0D1180.c new file mode 100644 index 00000000..03d7f6cf --- /dev/null +++ b/src/unknown_0D1180.c @@ -0,0 +1,10 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800D0580 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0D1180/func_800D0580.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D1180/func_800D0870.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D1180/func_800D0B50.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D1180/func_800D0D88.s") diff --git a/src/unknown_0D1A80.c b/src/unknown_0D1A80.c new file mode 100644 index 00000000..09a11fc5 --- /dev/null +++ b/src/unknown_0D1A80.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800D0E80 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0D1A80/func_800D0E80.s") diff --git a/src/unknown_0D1C40.c b/src/unknown_0D1C40.c new file mode 100644 index 00000000..f688e78f --- /dev/null +++ b/src/unknown_0D1C40.c @@ -0,0 +1,9 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800D1040 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0D1C40/func_800D1040.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D1C40/func_800D14C4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D1C40/func_800D1728.s") diff --git a/src/unknown_0D23F0.c b/src/unknown_0D23F0.c new file mode 100644 index 00000000..bbf956ff --- /dev/null +++ b/src/unknown_0D23F0.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800D17F0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0D23F0/func_800D17F0.s") diff --git a/src/unknown_0D24A0.c b/src/unknown_0D24A0.c new file mode 100644 index 00000000..19cd7476 --- /dev/null +++ b/src/unknown_0D24A0.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800D18A0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0D24A0/func_800D18A0.s") diff --git a/src/unknown_0D24D0.c b/src/unknown_0D24D0.c new file mode 100644 index 00000000..6bc6fd78 --- /dev/null +++ b/src/unknown_0D24D0.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800D18D0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0D24D0/func_800D18D0.s") diff --git a/src/unknown_0D24E0.c b/src/unknown_0D24E0.c new file mode 100644 index 00000000..802d1a1a --- /dev/null +++ b/src/unknown_0D24E0.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800D18E0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0D24E0/func_800D18E0.s") diff --git a/src/unknown_0D2590.c b/src/unknown_0D2590.c new file mode 100644 index 00000000..eb1fc40f --- /dev/null +++ b/src/unknown_0D2590.c @@ -0,0 +1,8 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800D1990 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0D2590/func_800D1990.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D2590/D_800D1B08.s") diff --git a/src/unknown_0D28A0.c b/src/unknown_0D28A0.c new file mode 100644 index 00000000..b4922564 --- /dev/null +++ b/src/unknown_0D28A0.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800D1CA0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0D28A0/func_800D1CA0.s") diff --git a/src/unknown_0D2910.c b/src/unknown_0D2910.c new file mode 100644 index 00000000..dfff51a6 --- /dev/null +++ b/src/unknown_0D2910.c @@ -0,0 +1,7 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800D1D10 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0D2910/func_800D1D10.s") diff --git a/src/unknown_0D29F0.c b/src/unknown_0D29F0.c new file mode 100644 index 00000000..19b40534 --- /dev/null +++ b/src/unknown_0D29F0.c @@ -0,0 +1,13 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800D1DF0 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0D29F0/func_800D1DF0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D29F0/func_800D1E70.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D29F0/func_800D1EB0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D29F0/func_800D1EF0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D29F0/func_800D200C.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D29F0/func_800D216C.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D29F0/func_800D21B0.s") diff --git a/src/unknown_0D2E40.c b/src/unknown_0D2E40.c new file mode 100644 index 00000000..32e6ff71 --- /dev/null +++ b/src/unknown_0D2E40.c @@ -0,0 +1,8 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800D2240 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0D2E40/func_800D2240.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D2E40/func_800D2260.s") diff --git a/src/unknown_0D3020.c b/src/unknown_0D3020.c new file mode 100644 index 00000000..6dbfe576 --- /dev/null +++ b/src/unknown_0D3020.c @@ -0,0 +1,78 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x800D2420 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D2420.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D2470.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D2480.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D2540.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/__osDisableInt.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/__osRestoreInt.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/D_800D25A0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/D_800D2680.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/D_800D2760.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D2B10.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D2C60.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D2C70.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/D_800D2CB0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/D_800D2CC0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D31E4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/__osEnqueueAndYield.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D33CC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/__osPopThread.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D3424.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/D_800D35A0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D35B0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D3670.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D36A0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D37F0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D3820.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D38A0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D3F10.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D4560.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D4570.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D4580.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D4590.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D45E0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D4630.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D46B0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D4730.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D4790.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D47F0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D4840.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D4940.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/cosf.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/sinf.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D4DE0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D4EC0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D4F4C.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D50C4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D5138.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D52C0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D52F0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D534C.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D53B4.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D57CC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D5964.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D5BC0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D5CBC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D5FDC.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D6050.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D6080.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D6090.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D63F0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D6400.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D6440.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D64D0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D6500.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D6560.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D65B0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D6600.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D6700.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D69A0.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D6F10.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D7460.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D7470.s") +GLOBAL_ASM("asm/non_matchings/unknown_0D3020/func_800D7570.s")